{"version":3,"sources":["assets/images/plotter_logo.png","assets/images/avatar/user.png","assets/images/home/acp-layouts.png","views/Test/trading-view/key.js","assets/images/auth/demo.png","assets/images/chart/PyramidColumn.svg","assets/images/chart/OHLC.svg","assets/images/chart/HLC.png","assets/images/chart/Candlestick.svg","assets/images/chart/HeikinAshi.svg","assets/images/chart/HollowCandle.svg","assets/images/error/notfound-bg.jpg","store/services/LocalStorageService.js","shared/utilities/common.js","store/slices/SearchSlice.js","store/slices/EodDataSlice.js","components/layout/header/Search.js","components/layout/header/MainHeader.js","store/slices/AppLayoutSlice.js","components/common/Base/StyledTooltip.js","components/layout/sidebar/sources/useStyles.js","components/icons/DefaultDataSetLogo.js","components/layout/sidebar/sources/Details/ListItem.js","components/common/LoadingOverlay.js","components/layout/sidebar/sources/StockSource.js","components/layout/sidebar/sources/StockDatabaseCodes.js","components/layout/sidebar/sources/StockProductCodes.js","components/layout/sidebar/sources/StockSections.js","components/layout/sidebar/sources/index.js","components/layout/sidebar/polygon/index.js","components/layout/sidebar/qa/useStyles.js","components/layout/sidebar/qa/Details/ListItem.js","components/layout/sidebar/qa/Details/QLink.js","store/slices/FrontendQA.js","hooks/SearchQA.js","shared/utilities/dateHelpers.ts","components/layout/sidebar/qa/StockSource.js","hooks/RunIndividualQA.js","components/layout/sidebar/qa/ProductCode/TimeLine.js","components/layout/sidebar/qa/ProductCode/IndividualResultDialog.js","views/qa/PieChart.js","views/qa/components/SuccessCheck.js","components/layout/sidebar/qa/Details/ProgressPopupDialog.js","hooks/FetchQAResults.js","components/layout/sidebar/qa/ProductCode/StockProductCodes.js","components/layout/sidebar/qa/StockSections.js","hooks/RunFeedSourceDatabaseCodesQA.js","components/layout/sidebar/qa/DatabaseCode/StockDatabaseCodesQA.js","components/layout/sidebar/qa/DatabaseCode/StockDatabaseCodes.js","components/layout/sidebar/qa/DatabaseCode/index.js","hooks/FetchQAReports.js","components/layout/sidebar/qa/SavedIndividual.js","components/common/Base/CustomTextField.js","components/layout/sidebar/qa/Details/SearchBox.js","hooks/RunDatabaseCodesQA.js","components/layout/sidebar/qa/Details/DatabaseCodesQADialog.js","components/layout/sidebar/qa/index.js","components/layout/sidebar/categories/CategoryOptions.js","store/slices/UserSlice.js","components/common/Base/CustomTreeView.jsx","components/icons/Edit.js","components/icons/Delete.js","components/layout/sidebar/tags/FavDisplay.js","components/layout/sidebar/tags/FavGroupFolder.js","components/layout/sidebar/tags/index.js","components/icons/Dashboard.js","components/icons/DashboardSelected.js","components/icons/Tag.js","components/icons/TagSelected.js","components/layout/sidebar/useStyles.js","components/icons/MarketIcon.js","components/icons/NonMarketIcon.js","components/layout/sidebar/StepSidebar.js","layouts/Default.js","layouts/AuthLayout.js","components/common/Breadcrumb.js","views/home/DetailView/DataFeeds.js","views/home/index.js","store/Api.js","shared/system/error/ErrorBoundary.js","views/summary/containers/UrlOption/index.js","views/Test/trading-view/Dashboard.js","views/Test/trading-view/index.js","views/Test/index.js","shared/system/notifications/store/reducers.js","components/common/FirebaseAuth.js","views/auth/Login.js","views/auth/Demo.js","components/common/Fusion/TimeSeriesChart.js","components/common/Fusion/Pie3dChart.js","components/common/Fusion/Column2dChart.js","components/common/Fusion/PlottedSeriesChart.js","components/common/Fusion/ChartContainer.js","components/common/Fusion/theme/TestTheme.js","components/common/Fusion/TimeSeriesLineChart.js","components/common/Fusion/TimeSeriesColumnChart.js","components/common/Fusion/TimeSeriesAreaChart.js","components/common/Fusion/TimeSeriesDashedLineChart.js","components/common/Fusion/TimeSeriesStepLineChart.js","components/common/Fusion/TimeSeriesCandelChart.js","components/common/Fusion/TimeSeriesCandelOhlcChart.js","components/common/Fusion/TestChart.js","components/common/Fusion/TimeSeriesStockEventsChart.js","views/Category.js","views/SearchResult.js","libs/rrag/lib/utils/noop.js","libs/rrag/lib/utils/identity.js","libs/rrag/lib/utils/rebind.js","libs/rrag/lib/utils/zipper.js","libs/rrag/lib/utils/merge.js","libs/rrag/lib/utils/slidingWindow.js","libs/rrag/lib/utils/shallowEqual.js","libs/rrag/lib/utils/mappedSlidingWindow.js","libs/rrag/lib/utils/PureComponent.js","libs/rrag/lib/utils/barWidth.js","libs/rrag/lib/utils/strokeDasharray.js","libs/rrag/lib/utils/index.js","libs/rrag/lib/GenericComponent.js","libs/rrag/lib/GenericChartComponent.js","libs/rrag/lib/axes/AxisZoomCapture.js","libs/rrag/lib/axes/Axis.js","libs/rrag/lib/axes/XAxis.js","libs/rrag/lib/axes/YAxis.js","libs/rrag/lib/series/LineSeries.js","libs/rrag/lib/series/AreaOnlySeries.js","libs/rrag/lib/series/AreaSeries.js","libs/rrag/lib/series/SVGComponent.js","libs/rrag/lib/series/AlternatingFillAreaSeries.js","libs/rrag/lib/series/ScatterSeries.js","libs/rrag/lib/series/CircleMarker.js","libs/rrag/lib/series/TriangleMarker.js","libs/rrag/lib/series/SquareMarker.js","libs/rrag/lib/series/CandlestickSeries.js","libs/rrag/lib/series/OHLCSeries.js","libs/rrag/lib/series/StackedBarSeries.js","libs/rrag/lib/series/BarSeries.js","libs/rrag/lib/series/GroupedBarSeries.js","libs/rrag/lib/series/KagiSeries.js","libs/rrag/lib/series/PointAndFigureSeries.js","libs/rrag/lib/series/RenkoSeries.js","libs/rrag/lib/series/StraightLine.js","libs/rrag/lib/series/MACDSeries.js","libs/rrag/lib/series/BollingerSeries.js","libs/rrag/lib/series/RSISeries.js","libs/rrag/lib/series/StochasticSeries.js","libs/rrag/lib/series/OverlayBarSeries.js","libs/rrag/lib/series/ElderRaySeries.js","libs/rrag/lib/series/VolumeProfileSeries.js","libs/rrag/lib/utils/accumulatingWindow.js","libs/rrag/lib/series/SARSeries.js","libs/rrag/lib/coordinates/EdgeCoordinateV3.js","libs/rrag/lib/coordinates/EdgeIndicator.js","libs/rrag/lib/coordinates/CurrentCoordinate.js","libs/rrag/lib/coordinates/MouseCoordinateX.js","libs/rrag/lib/coordinates/MouseCoordinateXV2.js","libs/rrag/lib/coordinates/MouseCoordinateY.js","libs/rrag/lib/coordinates/CrossHairCursor.js","libs/rrag/lib/coordinates/PriceCoordinate.js","libs/rrag/lib/tooltip/displayValuesFor.js","libs/rrag/lib/tooltip/ToolTipText.js","libs/rrag/lib/tooltip/ToolTipTSpanLabel.js","libs/rrag/lib/tooltip/MACDTooltip.js","libs/rrag/lib/tooltip/OHLCTooltip.js","libs/rrag/lib/tooltip/SingleValueTooltip.js","libs/rrag/lib/tooltip/MovingAverageTooltip.js","libs/rrag/lib/tooltip/BollingerBandTooltip.js","libs/rrag/lib/tooltip/RSITooltip.js","libs/rrag/lib/tooltip/StochasticTooltip.js","libs/rrag/lib/tooltip/HoverTooltip.js","libs/rrag/lib/tooltip/GroupTooltip.js","libs/rrag/lib/calculator/defaultOptionsForComputation.js","libs/rrag/lib/indicator/defaultOptionsForAppearance.js","libs/rrag/lib/calculator/ema.js","libs/rrag/lib/calculator/sma.js","libs/rrag/lib/calculator/atr.js","libs/rrag/lib/calculator/pointAndFigure.js","libs/rrag/lib/calculator/sto.js","libs/rrag/lib/calculator/forceIndex.js","libs/rrag/lib/calculator/sar.js","libs/rrag/lib/indicator/baseIndicator.js","libs/rrag/lib/indicator/ema.js","libs/rrag/lib/indicator/wma.js","libs/rrag/lib/calculator/wma.js","libs/rrag/lib/indicator/tma.js","libs/rrag/lib/calculator/tma.js","libs/rrag/lib/indicator/bollingerBand.js","libs/rrag/lib/calculator/bollingerband.js","libs/rrag/lib/indicator/heikinAshi.js","libs/rrag/lib/calculator/heikinAshi.js","libs/rrag/lib/indicator/kagi.js","libs/rrag/lib/calculator/kagi.js","libs/rrag/lib/indicator/renko.js","libs/rrag/lib/calculator/renko.js","libs/rrag/lib/indicator/macd.js","libs/rrag/lib/calculator/macd.js","libs/rrag/lib/indicator/rsi.js","libs/rrag/lib/calculator/rsi.js","libs/rrag/lib/indicator/stochasticOscillator.js","libs/rrag/lib/indicator/elderRay.js","libs/rrag/lib/calculator/elderRay.js","libs/rrag/lib/indicator/change.js","libs/rrag/lib/calculator/change.js","libs/rrag/lib/indicator/elderImpulse.js","components/common/Rrag/partials/series/index.js","components/common/Base/CustomFormInput.js","components/common/Rrag/partials/interactives/CoordinateDialog.js","components/common/Rrag/partials/interactives/TextDialog.js","libs/rrag/lib/Chart.js","libs/rrag/lib/utils/ChartDataUtil.js","libs/rrag/lib/EventCapture.js","libs/rrag/lib/CanvasContainer.js","libs/rrag/lib/scale/evaluator.js","libs/rrag/lib/ChartCanvas.js","libs/rrag/lib/utils/zoomBehavior.js","libs/rrag/lib/BackgroundText.js","libs/rrag/lib/ZoomButtons.js","libs/rrag/lib/helper/TypeChooser.js","libs/rrag/lib/helper/fitWidth.js","libs/rrag/lib/scale/levels.js","libs/rrag/lib/scale/financeDiscontinuousScale.js","libs/rrag/lib/scale/discontinuousTimeScaleProvider.js","libs/rrag/lib/interactive/utils.js","libs/rrag/lib/interactive/components/StraightLine.js","libs/rrag/lib/interactive/components/ClickableCircle.js","libs/rrag/lib/interactive/components/HoverTextNearMouse.js","libs/rrag/lib/interactive/wrapper/EachTrendLine.js","libs/rrag/lib/interactive/components/MouseLocationIndicator.js","libs/rrag/lib/interactive/TrendLine.js","libs/rrag/lib/interactive/components/Text.js","libs/rrag/lib/interactive/wrapper/EachFibRetracement.js","libs/rrag/lib/interactive/FibonacciRetracement.js","libs/rrag/lib/interactive/components/ChannelWithArea.js","libs/rrag/lib/interactive/wrapper/EachEquidistantChannel.js","libs/rrag/lib/interactive/EquidistantChannel.js","libs/rrag/lib/interactive/components/LinearRegressionChannelWithArea.js","libs/rrag/lib/interactive/wrapper/EachLinearRegressionChannel.js","libs/rrag/lib/interactive/StandardDeviationChannel.js","libs/rrag/lib/interactive/components/GannFan.js","libs/rrag/lib/interactive/wrapper/EachGannFan.js","libs/rrag/lib/interactive/GannFan.js","libs/rrag/lib/interactive/ClickCallback.js","libs/rrag/lib/interactive/Brush.js","libs/rrag/lib/interactive/components/InteractiveText.js","libs/rrag/lib/interactive/wrapper/EachText.js","libs/rrag/lib/interactive/InteractiveText.js","libs/rrag/lib/interactive/components/ClickableShape.js","libs/rrag/lib/interactive/components/InteractiveYCoordinate.js","libs/rrag/lib/interactive/wrapper/EachInteractiveYCoordinate.js","libs/rrag/lib/interactive/InteractiveYCoordinate.js","libs/rrag/lib/interactive/DrawingObjectSelector.js","components/common/Rrag/partials/indicators/AtrIndicator.js","components/common/Rrag/partials/indicators/BollingerBands.js","components/common/Rrag/partials/indicators/EdgeIndicator.js","components/common/Rrag/partials/indicators/FiIndicator.js","components/common/Rrag/partials/indicators/FiEMAIndicator.js","components/common/Rrag/partials/indicators/MacdIndicator.js","components/common/Rrag/partials/indicators/MovingAverage.js","components/common/Rrag/partials/indicators/RsiIndicator.js","components/common/Rrag/partials/indicators/StoIndicator.js","components/common/Rrag/utils/calculator.js","libs/rrag/lib/indicator/sma.js","libs/rrag/lib/indicator/atr.js","libs/rrag/lib/indicator/sar.js","libs/rrag/lib/indicator/forceIndex.js","components/common/Rrag/utils/index.js","libs/rrag/lib/annotation/Annotate.js","libs/rrag/lib/annotation/AnnotateCustom.js","libs/rrag/lib/annotation/LabelAnnotation.js","libs/rrag/lib/annotation/SvgPathAnnotation.js","libs/rrag/lib/annotation/SvgPathAnnotationCustom.js","libs/rrag/lib/annotation/CustomAnnotation.js","libs/rrag/lib/annotation/Label.js","libs/rrag/lib/annotation/index.js","components/common/Rrag/utils/interactiveUtils.js","libs/rrag/lib/algorithm/index.js","components/common/Rrag/index.js","libs/rrag/lib/indicator/pointAndFigure.js","components/common/High/DepthChart.js","components/common/High/Themes/DefaultOpts.js","components/common/High/Themes/DefaultChart.js","components/common/High/Themes/ThemeOpts.js","components/common/High/Themes/AvocadoChart.js","components/common/High/Themes/BrandDarkChart.js","components/common/High/Themes/BrandLightChart.js","components/common/High/Themes/DarkBlueChart.js","components/common/High/Themes/DarkGreenChart.js","components/common/High/Themes/DarkUnicaChart.js","components/common/High/Themes/GrayChart.js","components/common/High/Themes/GridChart.js","components/common/High/Themes/GridLightChart.js","components/common/High/Themes/HighContrastDarkChart .js","components/common/High/Themes/HighContrastLightChart.js","components/common/High/Themes/SandSignikaChart.js","components/common/High/Themes/SkiesChart.js","components/common/High/Themes/SunsetChart.js","components/common/High/OfficalChart.js","views/product-module/containers/Components/ChartTimeRanger.js","components/common/TradingView/LightWeight/Series/MainSeries.js","components/common/TradingView/Utils/indicators.js","components/common/TradingView/LightWeight/index.js","components/common/TradingView/TradingViewEmbedder.js","views/product-module/containers/Graph/Market/index.js","components/common/Base/Alert.js","store/slices/ChartDataSlice.js","components/common/Favorites/FavoriteButton.js","views/product-module/containers/Table/DetailView/FilterBar.js","shared/utilities/tableUtils.js","store/slices/ComponentSlice.js","components/common/PlotterDateFilter.js","components/common/PlotterDatumFilter.js","providers/product/ProductContext.js","components/common/DataTableColumnFilterPopover.js","views/product-module/containers/Table/DetailView/ColumnSetting.js","views/product-module/containers/Table/DetailView/Preview/Line.js","views/product-module/containers/Table/DetailView/ChartSetting.js","views/product-module/containers/Table/DetailView/Preview/TestChart.js","views/product-module/containers/Table/DetailView/DataLogistic.js","views/product-module/containers/Table/DetailView/index.js","components/common/CollapsableTextWrap.js","views/product-module/containers/Analyze/index.js","store/selectors/ProductData.js","views/product-module/containers/Table/Transform/DataTableOptionsDialog.js","views/product-module/containers/Table/Transform/TransformTable.js","views/product-module/containers/Table/Transform/TransformContainer.js","views/product-module/containers/Table/Transform/BEADataTableView1/index.js","views/product-module/containers/Table/index.js","components/common/Rrag/NonMarketChart.js","components/common/Base/CustomAutocomplete.js","components/common/High/NonMarket/AreaRange.js","components/common/Base/CustomFormSelect.js","components/common/High/NonMarket/Column.js","views/product-module/containers/Graph/Components/ChartSettingDialog/Preview/TestChart.js","views/product-module/containers/Graph/Components/ChartSettingDialog/index.js","components/common/High/NonMarket/Line.js","store/selectors/HighChart.js","components/common/High/NonMarket/index.js","views/product-module/containers/Graph/NonMarket/index.js","views/product-module/containers/Graph/BigqueryNonMarket/Chart.js","views/product-module/containers/Graph/BigqueryNonMarket/index.js","shared/utilities/product.js","views/product-module/containers/Graph/NonMarket/settings.js","store/slices/HighChartDataSlice.js","views/product-module/containers/Graph/Components/ChartConfigDialog/index.js","views/product-module/containers/Graph/Components/BEAChartConfigDialog/index.js","views/product-module/containers/Graph/index.js","components/common/Base/CustomMuiDataTable.js","views/product-module/containers/Table/Transform/utils.js","views/product-module/containers/Table/Transform/IODataTableView/index.js","views/product-module/containers/Table/Transform/NIPA/index.js","views/product-module/containers/Table/Transform/Regional/index.js","views/product-module/containers/Table/Transform/MNETableView/index.js","views/product-module/containers/index.js","views/product/hooks/useFetchBigQueryData.ts","views/product/hooks/useFetchCloudStorageData.ts","providers/product/ProductProvider.js","views/product/details/ProductHeader.js","components/common/Base/MaterialUiDataTable.js","views/product/details/TimeFramesBox.js","views/product/details/DrawerLayout.tsx","components/common/Product/DropdownSelect.tsx","views/product/non-market/data-panel/Pie.js","views/product/details/series/SeriesAccordion.tsx","views/product/non-market/data-panel/Default.js","views/product/non-market/data-panel/index.js","components/common/Product/FilterSelect.tsx","views/product/non-market/filter-panel/Default.js","views/product/non-market/filter-panel/index.js","views/product/details/data/Table/DetailView/FilterBar.js","views/product/details/data/Table/DetailView/ColumnSetting.js","views/product/details/data/Table/DetailView/index.js","views/product/details/data/Table/index.js","views/product/details/TimeIncrementsBox.js","views/product/details/SidebarHeader.js","views/product/CustomizedTooltip.js","views/product/details/ChartSidebar.js","views/product/non-market/ChartPanel.js","components/common/Base/ExpandablePanelBox.js","views/product/details/customize/features/Text.js","components/common/ColorPicker.js","components/common/Product/CustomizeItem.tsx","views/product/details/customize/features/Appearance.js","views/product/details/BaseAccordion.tsx","components/common/Product/DropdownSelectWithInput.tsx","views/product/details/BpCheckbox.js","views/product/details/customize/features/HorizontalAxis.js","views/product/details/customize/features/VerticalAxis.js","views/product/details/customize/features/Tooltip.js","views/product/details/customize/features/Legend.js","views/product/details/customize/features/DataLabels.js","views/product/details/customize/features/AnnotationTextLabels.js","views/product/details/customize/features/AnnotationHighlights.js","views/product/details/customize/features/SeriesSpecificType.js","views/product/details/customize/features/AnnotationLines.js","views/product/details/customize/BasicCustomizePanel.js","views/product/non-market/CustomizePanel.js","views/product/details/chart/StockHighChart.js","views/product/market/chart/chart-types/DefaultChart.js","views/product/details/StockPrice.js","views/product/details/SaveChartBtn.js","views/product/market/chart/index.js","views/product/details/chart/NonMarketHighChart.js","views/product/non-market/chart/chart-types/LineChart.js","views/product/non-market/chart/chart-types/PieChart.js","views/product/non-market/chart/index.js","views/product/details/ChartContainer.js","views/product/non-market/index.js","views/product/details/series/OhlcSeriesAccordion.tsx","views/product/details/series/RangeSeriesAccordion.tsx","views/product/market/DataPanel.js","views/product/market/ChartPanel.js","views/product/market/AdvancedCustomizePanel.js","views/product/market/CustomizePanel.js","views/product/market/index.js","views/product/index.js","views/qa/Dialog.js","views/qa/RightSideDrawer.js","views/qa/Form.js","views/qa/QAResultsTable.js","views/qa/components/SearchIndividual.js","views/qa/components/SkipConfirmationDialog.js","views/qa/components/ErrorMark.js","views/qa/StartQADialog.js","views/qa/components/ResumeDialog.js","views/qa/QAReportTable.js","views/qa/index.js","views/covid/CovidView.js","views/statistic/Chart.js","views/statistic/index.js","views/statistic/utils.js","views/Test/rrag/interactiveutils.js","views/Test/rrag/Chart.js","views/Test/rrag/utils.js","views/Test/rrag/index.js","views/auth/QALogin.js","views/bea-mne/steps/InvestmentStep.js","views/bea-mne/steps/SeriesStep.js","views/bea-mne/steps/ClassificationStep.js","views/bea-mne/steps/VisualizationStep.js","views/bea-mne/index.js","views/mockup/details/ReportStatusArea.js","views/mockup/details/StartQADialog.js","views/mockup/index.js","views/mockup/details/ResultStatusArea.js","hooks/QARange.js","views/mockup/QAResultsTable.js","routes.js","withTracker.js","themeConfig.js","views/error/NotFound.js","components/common/Base/CustomSnackbar.jsx","components/common/Base/CustomAlertDialog.jsx","providers/AuthProvider.js","App.js","serviceWorker.js","store/middlewares/LocalStorage.js","store/slices/AuthenticationSlice.js","store/middlewares/RejectionHandler.js","store/slices/AppMessageSlice.js","store/slices/RragChartDataSlice.js","store/slices/LightWeightChartDataSlice.js","store/slices/SummaryDataSlice.js","store/slices/News.js","store/store.js","index.js","store/slices/StockProductSlice.js","shared/utilities/helpers.js","assets/images/chart/Line.svg","assets/images/chart/Area.svg","assets/images/chart/ColumnRange.svg","assets/images/chart/PointMarker.svg","assets/images/chart/AreaRange.svg","assets/images/chart/ScatterLine.svg","assets/images/chart/HorizontalBar.svg","store/UrlConstants.js","store/slices/MessagesSystemSlice.js","assets/images/chart/DepthChart.svg","store/services/AxiosService.js","assets/videos/Plotter_MP4.mp4","assets/images/chart/preview/PreviewChart1.png","store/UrlUtils.js"],"names":["module","exports","CRYPTO_COMPARE","GLASSNODE","LocalStorageService","_service","getAuth","serializedAuth","localStorage","getItem","JSON","parse","error","setAuth","authData","setItem","stringify","clearAuth","removeItem","getService","this","setState","state","serializedState","getState","clearState","setDefaultGoogleUser","token","getDefaultGoogleUser","clearDefaultGoogleUser","setPlotterUID","plotterUID","getPlotterUID","clearPlotterUID","setAccessToken","accessToken","getAccessToken","clearAccessToken","addLogCount","_logCount","getLogCount","clearLogCount","setRememberedPath","path","getRememberedPath","clearRememberedPath","removeObjectProperties","Intl","NumberFormat","style","currency","minimumFractionDigits","obj","props","i","length","hasOwnProperty","getRandomColor","red","Math","floor","random","green","blue","concat","_regeneratorRuntime","e","t","r","Object","prototype","n","o","defineProperty","value","Symbol","a","iterator","c","asyncIterator","u","toStringTag","define","enumerable","configurable","writable","wrap","Generator","create","Context","makeInvokeMethod","tryCatch","type","arg","call","h","f","s","y","GeneratorFunction","GeneratorFunctionPrototype","p","d","getPrototypeOf","v","values","g","defineIteratorMethods","forEach","_invoke","AsyncIterator","invoke","resolve","__await","then","callInvokeWithMethodAndArg","Error","done","method","delegate","maybeInvokeDelegate","sent","_sent","dispatchException","abrupt","return","TypeError","resultName","next","nextLoc","pushTryEntry","tryLoc","catchLoc","finallyLoc","afterLoc","tryEntries","push","resetTryEntry","completion","reset","isNaN","displayName","isGeneratorFunction","constructor","name","mark","setPrototypeOf","__proto__","awrap","async","Promise","keys","reverse","pop","prev","charAt","slice","stop","rval","handle","complete","finish","catch","delegateYield","fetchSearchDataSource","CancelToken","axios","createEntityAdapter","fetchSuggestionData","createAsyncThunk","EOD_SEARCH_SUGGESTIONS","_ref","_asyncToGenerator","_callee","params","url","_yield$API$get","suggestions","_context","API","get","data","_x","apply","arguments","fetchSearchData","EOD_SEARCH","_ref2","_callee2","_params$global","global","response","_context2","cancel","source","cancelToken","_x2","searchSlice","createSlice","initialState","searchSuggestions","loadingInProgress","loadingSearch","searchResults","reducers","cancleSearchStock","action","extraReducers","_extraReducers","_defineProperty","pending","fulfilled","payload","news","rejected","_action$payload","formatted","element","label","feed_source","database_code","product_code","actions","fetchFeedDatabaseCodeSource","fetchFeedSectionSource","fetchProductCodeSource","sources","databaseCodes","isDatabaseCodesFull","filterDatabaseCodes","isFilterDatabaseCodesFull","sections","filteredSections","stockProducts","isStockProductsFull","eodData","feedSource","undefined","feedDatabaseCode","feedProductCode","feedSectionName","loadingFeedSources","loadingDatabaseCodes","loadingSections","topSearchWord","searchWords","databaseCode","productCode","qaSearchWords","qaSearchRows","filteredWords","step2Index","fetchFeedSources","EOD_FETCH_FEED_SOURCES","fetchFeedDatabaseCodes","thunkAPI","_response$data","rows","qaRows","EOD_FETCH_FEED_GROUPS","paramsToQueryParam","search","searchWord","t0","console","log","rejectWithValue","fetchFeedSections","_ref3","_callee3","_context3","EOD_FETCH_FEED_SECTIONS","_x3","_x4","fetchStockProducts","_ref4","_callee4","_context4","EOD_FETCH_STOCK_PRODUCTS","_objectSpread","_x5","_x6","eodDataSlice","setFeedPath","setFeedSource","setFeedDatabaseCode","setFeedProductCode","setFeedSectionName","setProductData","productName","timeIncrements","valid_times","setTopSearchWord","setSearchWord","field","setQaSearchWord","_action$payload2","setFilteredWord","_action$payload3","clearStockProducts","clearDatabaseCodes","_action$payload4","flag","clearSections","_action$payload5","changeStep2Index","_action$payload6","_sources","sort","_toConsumableArray","_action$payload7","_action$payload7$data","_action$payload7$qaRo","_action$payload8","_action$payload8$data","Array","isArray","_products","_eodDataSlice$actions","useStyles","makeStyles","Autocomplete","borderRadius","Txt","color","fontSize","TextField","paddingTop","paddingBottom","paddingRight","border","display","padding","SearchLocker","borderLeft","alignItems","justifyContent","minWidth","transform","cursor","StyledPopper","styled","Popper","autocompleteClasses","listbox","boxSizing","margin","sleep","delay","setTimeout","Search","history","useHistory","classes","dispatch","useDispatch","useSelector","_useSelector","_useState","useState","redirect","_useState2","_slicedToArray","_useState3","_useState4","_useState5","_useState6","loading","setLoading","useCallback","handleSearch","event","key","_useState7","_useState8","open","setOpen","useEffect","React","createElement","Fragment","sx","width","background","onOpen","PopperComponent","onClose","filterOptions","x","onInputChange","reason","suggest","onChange","encodeURIComponent","onKeyPress","isOptionEqualToValue","option","className","options","renderInput","assign","placeholder","InputProps","startAdornment","InputAdornment","position","SearchIcon","endAdornment","firebaseConfig","apiKey","authDomain","projectId","storageBucket","messagingSenderId","appId","initializeApp","auth","root","PlotterLogo","SearchBox","flex","marginRight","SearchBoxInner","NavigationBox","flexGrow","NavigationList","NavItem","height","transition","NavItemPic","ListItem","MainHeader","anchorEl","setAnchorEl","Boolean","id","Box","marginTop","Link","to","src","alt","SearchComponent","onClick","currentTarget","UserAvatar","Popover","anchorOrigin","vertical","horizontal","transformOrigin","List","ListItemButton","ListItemText","primary","Divider","signOut","appLayouSlice","isStep2Shown","step2Sidebar","step1Sidebar","setVisibleStep2","selectStep2Sidebar","selectStep1Sidebar","_appLayouSlice$action","StyledTooltip","_objectWithoutProperties","_excluded","Tooltip","arrow","popper","theme","tooltipClasses","tooltip","backgroundColor","maxWidth","typography","pxToRem","boxShadow","ListBox","flexDirection","gap","DefaultDataSetLogoIcon","SvgIcon","viewBox","fill","x1","y1","x2","y2","gradientUnits","stopColor","offset","ListItemDivider","Selected","_props$showDefaultLog","showDefaultLogo","_props$logo","logo","selected","marginLeft","children","loader","textIndent","animationDelay","animationFillMode","animation","content","top","left","loaderWrap","noDisplay","LoadingOverlay","isLoading","StockSource","feedSources","filteredFeedSources","useMemo","_feedSource","filter","item","_item$feed_source","_item$human_readable_","toLowerCase","indexOf","human_readable_name","b","aName","bName","localeCompare","map","index","logo_path","ListItemComponent","_item$name","active","clickHandler","setSelected","setHovered","onMouseEnter","onMouseLeave","Lists","_props$databaseCodes","items","_useParams","useParams","pFeedSource","pDatabaseCode","appLayout","setCursor","hovered","not_have_product","section_count","pressedKeys","keyDownHandler","keyCode","prevState","keyUpHandler","openStock","window","addEventListener","removeEventListener","_item$database_code","toLocaleLowerCase","DatabaseCodeBox","triggerFetchDatabaseCodes","isFull","ref","useRef","scrollHandler","current","scrollTop","clientHeight","scrollHeight","startIndex","loadMore","overflow","SearchResultBox","isFilterFull","StockDatabaseCodes","_props$searchWord","_item$title","_item$title2","lineHeight","title","replace","whiteSpace","textOverflow","productCodes","innerProductPath","handleProductCode","series_type","selectedProductName","productData","_item$product_code","StockProductCodes","mProductCode","mDatabaseCode","mFeedSource","isSearching","setIsSearching","sectionName","stepIndex","_useState9","_useState10","setProductCode","_useState11","_useState12","setResults","start_index","section_name","loadingMoreStyle","textAlign","marginBottom","_props$sections","FeedSectionBox","StockSections","triggerFetchFeedSections","HeaderLabel","fontStyle","fontWeight","letterSpacing","BreadcrumbItem","palette","smartGreen","main","fontFamily","BreadCrumbDivider","SelectedBreadcrumbItem","SwipeableViewsContainer","minHeight","SwipeableViewsInner","labelTxt","StepSourceContainer","wrapStyle","results","handelStep2Index","val","updates","renderBreadCrumb","Typography","SwipeableViews","axis","dir","PolygonContainer","QualityAnaylicCap","QualityAnaylicProgress","QLink","inProgress","Autorenew","storageService","frontendQAResource","fetchSearchQAReportSource","fetchSearchQADataSource","fetchFrontendQAReports","EOD_FETCH_FRONTEND_QA_REPORTS","getQaDataApi","EOD_GET_QA_DATA","_yield$API$get2","getQaResultsApi","EOD_GET_QA_RESULT","_yield$API$get3","saveQAReportApi","EOD_SAVE_QA_REPORT","thunkApi","_yield$axios","showSnackbarMessage","message","severity","deleteQAReportApi","EOD_DELETE_QA_REPORT","_ref5","_callee5","_yield$API$get4","_context5","_x7","getQaReportDataApi","EOD_GET_QA_REPORT_DATA","_ref6","_callee6","qaReportId","_yield$API$get5","_context6","_x8","getQARangesApi","EOD_GET_QA_RANGES","_ref7","_callee7","_yield$API$get6","_context7","_x9","initQARangeApi","EOD_INIT_QA_RANGE","_ref8","_callee8","_yield$axios2","_context8","_x10","_x11","retryQARangeApi","EOD_RETRY_QA_RANGE","_ref9","_callee9","_yield$API$get7","_context9","_x12","saveQARangeApi","EOD_SAVE_QA_RANGE","_ref10","_callee10","_yield$axios3","_context10","_x13","_x14","saveQaResultApi","EOD_SAVE_QA_RESULT","_ref11","_callee11","_yield$axios4","_context11","_x15","_x16","saveIndividualQareportApi","EOD_SAVE_INDIVIDUAL_QA_REPORT","_ref12","_callee12","_yield$axios5","_context12","_x17","_x18","updateFrontendQABatch","EOD_UPDATE_FRONTEND_QA_BATCH","_ref13","_callee13","_yield$axios6","_context13","_x19","_x20","checkFrontendQAReport","EOD_CHECK_FRONTEND_QA_REPORT","_ref14","_callee14","_context14","_x21","_x22","triggerFrontendQAReport","EOD_CHECK_FRONTEND_QA_BATCH","_ref15","_callee15","_context15","_x23","_x24","EOD_DELETE_FRONTEND_QA_BATCH_GROUP","_ref16","_callee16","_context16","_x25","_x26","EOD_SKIP_FRONTEND_QA_BATCH","_ref17","_callee17","_context17","_x27","_x28","START_FRONTEND_QA_REPORT","_ref18","_callee18","_yield$API$post","_context18","post","headers","Authorization","_x29","_x30","triggerFrontendProductQA","START_FRONTEND_PROUDCT_RUN_QA","_ref19","_callee19","requestBody","res","_context19","onDownloadProgress","isCancel","status","_x31","_x32","fetchFrontendQAResults","EOD_UPDATE_FRONTEND_QA_BATCH_GROUP","_ref20","_callee20","_yield$API$post2","_context20","_x33","_x34","EOD_FETCH_FRONTEND_QA_RESULTS","_ref21","_callee21","_yield$API$get8","_context21","_x35","fetchFrontendQAProducts","EOD_FETCH_FRONTEND_QA_PRODUCTS","_ref22","_callee22","_yield$API$get9","_context22","_x36","TEST_TRIGGER","_ref23","_callee23","_yield$API$get10","_context23","_x37","_ref24","_callee24","_context24","_x38","fetchSearchQAData","EOD_SEARCH_FRONTEND_QA_REPORT","_ref25","_callee25","_context25","_x39","EOD_SEARCH_QA_DATA","_ref26","_callee26","_context26","_x40","deleteFrontendQAReport","EOD_DELETE_FRONTEND_QA_REPORT","_ref27","_callee27","_yield$API$get11","_context27","_x41","_x42","getFeedSourceDatabaseCodesQA","EOD_GET_FEED_SOURCE_DATABASE_CODES_QA","_ref28","_callee28","_yield$API$get12","_context28","_x43","_x44","getDatabaseCodesQA","EOD_GET_DATABASE_CODES_QA","_ref29","_callee29","_yield$API$get13","_context29","_x45","_x46","stopFrontendQAProcess","_ref30","_callee30","_context30","_x47","_x48","frontendQASlice","reports","reportResults","products","endPercentage","loadingProducts","inProgressOfQA","inDeleting","currentQaBatch","batchesInProgress","inProgressOfBatch","_action$payload$batch","batches","errorMsg","useSearchQAData","setIsLoading","_r$payload2","errorBlock","parseDateToLocalFormat","date","moment","isValid","format","parseDateAndTimeLocal","_useSearchQAData","_useSearchQAData2","_useSearchQAData2$","_useSearchQAData2$$re","_feedSources","textTransform","stopPropagation","idx","borderBottom","last_frontend_qa_date","useRunIndividualQA","callback","qaResults","setQAResults","_yield$dispatch","_yield$dispatch$paylo","qaRange","productUid","newResults","newScore","scoreResults","sum","_yield$dispatch2","qaReport","cluster","process","reportId","isIndividual","score","reduce","acc","moveNext","HighchartsTimeline","Highcharts","Select","convertToSeconds","milliseconds","round","TimeLineChart","initialData","series","hasCloudStorage","_series","_initialData$","initial_load_seconds","metadata_load_seconds","description","loading_source","split","join","toUpperCase","time_increment","blob_load_seconds","time_to_draw_seconds","configStock","chart","xAxis","visible","navigator","enabled","yAxis","text","dataLabels","allowOverlap","connectorColor","connectorWidth","marker","symbol","useHTML","LocalizationProvider","dateLibInstance","dateAdapter","AdapterDateFns","ReactHighcharts","highcharts","containerProps","DialogContent","productStaticBarButton","hover","TableCap","Table","TableTitle","TableRow","Transition","forwardRef","Slide","direction","showMiliSeconds","_seconds","getPercentageOfTotal","total","time","toFixed","IndividualResultDialog","handleClose","_React$useState","_React$useState2","blobOpt","setBlobOpt","_React$useState3","_React$useState4","setTimeIncrements","_React$useState5","_React$useState6","selectedInc","setSelectedInc","_React$useState7","_React$useState8","setShowMiliSeconds","_React$useState9","_React$useState10","showTimePercentage","setShowTimePercentage","_React$useState11","_React$useState12","filteredResults","timeLineData","_timeIncrements","Dialog","TransitionComponent","keepMounted","aria-describedby","TableContainer","mr","FormControlLabel","control","Switch","checked","size","target","aria-label","TableHead","TableCell","align","TableBody","component","scope","last_error","trim","Chip","category","total_seconds","colSpan","DialogActions","Button","Circle","colour","pct","circ","PI","strokePct","cx","cy","stroke","strokeWidth","strokeDasharray","strokeDashoffset","strokeLinecap","Text","percentage","dominantBaseline","textAnchor","Pie","_ref3$time","Number","isFinite","cleanPercentage","zIndex","right","SuccessCheck","loadingBox","highlight","secondary","lighten","light","dark","BorderedBox","flexFlow","maxHeight","selectedLine","InputField","BatchConfirmBox","BatchconfirmBoxText","formatTimeDifference","timeDifference","totalDiff","hours","restMinutes","minutes","ProgressPopupDialog","_props$expectTime","expectTime","initExpectTime","_props$apiRequest","apiRequest","progressVal","setProgressVal","consumedTime","setConsumedTime","_interConsumedTime","intervalId","setInterval","newProgress","clearInterval","startClock","Grid","container","spacing","lg","md","xs","variant","useFetchQAResults","fetchQaResults","reject","clickQaHandler","_ref$inProgressOfQA","pass_count","fail_count","productCodeInQA","setProductCodeInQa","showQAProgress","setShowQAProgress","showQAResult","setShowQAResult","_useState13","_useState14","setExpectTime","_useState15","_useState16","qaResultType","setQaResultType","_useRunIndividualQA","_useRunIndividualQA2","triggerIndividualQA","_useRunIndividualQA2$","inMeasuring","_useRunIndividualQA2$2","newQaResults","_useFetchQAResults","_useFetchQAResults2","_useFetchQAResults2$","storedQaResults","report_id","_expectTime","memory_size","config","averageLoadCapacity","_useState17","_useState18","_useState19","_useState20","_useState21","_useState22","search_word","isQa","useRunFeedSourceDatabaseCodesQA","qaResult","setQAResult","qaData","QAItem","QAItemLabel","QAItemValue","StockDatabaseCodeQA","_useRunFeedSourceData","_useRunFeedSourceData2","triggerDatabaseCodeQA","_useRunFeedSourceData3","rowCount","executionTime","product_count","StockDatabaseCodeContainer","useFetchQAReports","setQaData","qaReports","setQaReports","qaReportData","setQaReportData","totalScore","setTotalScore","fetchQaReports","deleteQAReport","_prev$qaReports","_prev$statusRows","statusRows","qa_report_id","getQaData","saveQAReport","_qaReportData","row","getQaReportData","_qaReportId","average_score","SavedIndividual","currentStepIndex","swipeIndex","productInQA","setProductInQa","_useFetchQAReports","_useFetchQAReports$st","loadingReports","alertDialog","messagesSystem","dialogAction","clickedButton","resetAlertDialog","product","wordBreak","IconButton","showAlertDialog","buttonLabel","batchGroupId","batch_group_id","Delete","CustomTextField","_props","emptyChoice","select","inputProps","SelectProps","InputLabelProps","emptyChoiceDisabled","denseListItems","showHelpButtons","inputPropsStyle","inputPropsClassName","SelectPropsStyle","SelectPropsClassName","InputLabelPropsStyle","InputLabelPropsClassName","disabled","labelText","fullWidth","inputFontSize","inputBackgroundColor","inputColor","clsx","inputClasses","labelFontSize","labelColor","labelClasses","shrink","required","MenuItem","dense","inputHelpText","searchField","_searchWord","CircularProgress","edge","CloseIcon","useRunDatabaseCodesQA","DatabaseCodesQADialog","_useRunDatabaseCodesQ","_useRunDatabaseCodesQ2","_useRunDatabaseCodesQ3","_useRunDatabaseCodesQ4","isStep2Qa","setIsStep2Qa","openDatabaseCodesQADialog","setOpenDatabaseCodesQADialog","individual","mt","mb","CategoryOptions","_React$Component","_inherits","_super","_createSuper","_this","_classCallCheck","_createClass","href","Component","fetchUserFavorites","USER_FAVORITES","deleteUserFavorite","group","delete","USER_FAVORITE_GROUP","deleteUserFavoriteConfig","group_id","favorite","config_id","groupName","updateUserFavorite","groupToChange","favorites","put","deleteGroupFromFavorites","favKeys","splice","favs","addFavGroup","userSlice","user","favsLoading","setUserData","appendFavoriteGroup","appendToFav","includes","fav","favGroup","configuration","configurations","meta","_userSlice$actions","CustomTreeView","renderTree","nodes","TreeItem","nodeId","node","TreeView","defaultCollapseIcon","ExpandMoreIcon","defaultExpanded","defaultExpandIcon","ChevronRightIcon","overflowY","EditIcon","strokeLinejoin","DeleteIcon","TagGroupParent","TagGroupParentInner","paddingLeft","TagGroupItem","TagGroupItemInner","TagGroupHeader","TagItem","TagItemTxt","TagItemIconButton","DialogTitleTxt","fontFeatureSettings","SaveBtn","FavDisplay","isFavsLoading","favGroups","parentFolderId","setSelectedParentFolderId","subFolderId","setSelectedSubFolderId","openEditGroup","setOpenEditGroup","setGroupName","previousGroupName","newGroupName","saveFav","keysOfGroupToChange","_iterator","_step","_newGroupName","startsWith","_createForOfIteratorHelper","t1","onClickTagGroup","_step2","_iterator2","groupToDelete","err","TagGroupFolder","hasChildren","TagSubFolder","formattedFavs","_treeTemplates","_loop","_item","groupId","itemTemplate","_defaultItemTemplate","isDefault","DialogTitle","startIcon","FilterListIcon","TagGroupInner","DeleteConfigIcon","AccordionSummary","FavGroupFolder","selectedFav","setSelectedFav","selectedConfiguration","openPop","newFavorites","Accordion","expanded","panel","newExpanded","aria-controls","AccordionDetails","cIdx","disablePadding","kye","queries","line","timeIncrement","bgcolor","BackIconButton","outline","StepTagsContainer","initialFavs","_treeFormats","subFolderid","_fav","_groupName","_spliceIdx","parentId","substring","_subFolderIdx","findIndex","_subFolder","_initialFavs","_favorites","_initialFavs$state$pa","_initialFavs2","_configurations","_initialFavs$state$pa2","overflowX","onUpdateBookmark","newVal","DashboardIcon","TagIcon","TagSelectedIcon","stepSidebar","transitionProperty","transitionDuration","transitionTimingFunction","borderright","borderBottomColor","minimizedStepSidebar","borderColor","gold","stepSidebar2","stepSidebarInner","navList","navItem","textDecoration","step2SidebarInner","MarketIcon","version","fillRule","NonMarketIcon","StepSidebar","activeAllStep1Sidebar","setActiveAllStep1Sidebar","logCount","menuVisible","minimizedSidebar","firstChoice","mounted","useLayoutEffect","handleStep2Visible","choice","_step1Sidebar","setIsShown","toggleSidebar","StyledTooltipProps","enterDelay","placement","DoubleArrowRightIcon","DashboardSelectedIcon","Troubleshoot","DoubleArrowLeftIcon","StepQaContainer","openedMixin","transitions","easing","sharp","duration","enteringScreen","closedMixin","leavingScreen","drawPaper","Drawer","MuiDrawer","shouldForwardProp","prop","DefaultLayout","navOpen","selectedSItem","Container","fluid","Row","noNavbar","MainNavbar","toggleMenu","toggleNav","navOpened","navOpt","Col","tag","defaultProps","noFooter","AuthLayout","StyledBreadcrumb","withStyles","grey","fontWeightRegular","shadows","emphasize","useTabPanelStyles","borderTop","TabPanel","other","role","hidden","aria-labelledby","useProductListStyle","listStyle","listItem","borderTopWidth","PrductList","paper","productSearchBar","compose","withRouter","connect","feed","feedReducer","_props$feed","groups","setValue","AppBar","Tabs","newValue","indicatorColor","textColor","scrollButtons","Tab","a11yProps","avatar","Avatar","clickable","section1","SearchBar","homeBannerImg","Home","Breadcrumbs","icon","HomeIcon","AcpLayoutImg","apiUrl","location","host","origin","baseURL","ErrorBoundary","hasError","errorInfo","prevProps","identifier","_this$state","Alert","AlertTitle","toString","componentStack","Item","Paper","body2","TextFieldItem","AddDataSet","backgroundImage","UrlModule","dataset_url","dataset_name","sub_table","table_name","dataset","setDataset","sendDataSet","split_by","code","ml","elevation","formatter","Dashboard","times","high","low","chartData","query","leaderboard","addressData","loadChartData","bulkData","dataArray","fetch","json","Data","transaction_count","average_transaction_value","handleInputChange","_this2","input","TradingViewEmbed","widgetType","TICKER_TAPE","widgetConfig","showSymbolLogo","isTransparent","displayMode","colorTheme","autosize","symbols","proName","ADVANCED_CHART","interval","studies","HoverHint","FlexibleXYPlot","VerticalBarSeries","opacity","onNearestX","datapoint","Date","toLocaleDateString","price","VerticalGridLines","HorizontalGridLines","XAxis","tickFormat","tickValues","ticks","YAxis","TECHNICAL_ANALYSIS","COMPANY_PROFILE","Chart","active_addresses","TradingViewWrapper","LiveUpdate","start","chartRef","alignLabels","timeScale","rightOffset","barSpacing","fixLeftEdge","lockVisibleTimeRangeOnResize","rightBarStaysOnScroll","borderVisible","timeVisible","secondsVisible","close","candlestickSeries","autoWidth","reducer","googleProvider","GoogleAuthProvider","GoogleLogin","signInWithPopup","result","_result$user","uid","_rememberedPath","pathname","setCustomParameters","login_hint","Login","isVideoLoading","renderView","bind","_assertThisInitialized","NavLink","muted","autoPlay","PlotterVideo","preload","onLoadedData","userState","notifyError","ui","validation","Demo","DemoPage","ReactFC","fcRoot","FusionCharts","TimeSeries","license","creditLabel","jsonify","dataFetch","schemaFetch","Charts","FusionTheme","GammelTheme","CandyTheme","ZuneTheme","OceanTheme","CarbonTheme","UmberTheme","Pie3dChart","_this$props","chartConfigs","dataFormat","dataSource","caption","bgColor","subCaption","xAxisName","yAxisName","numberPrefix","subcaption","plot","HoverColor","trendlines","startvalue","valueOnRight","displayvalue","Column2dChart","showlegend","yaxis","suffix","register","base","usePlotGradientColor","showPlotBorder","paletteColors","showShadow","showHoverEffect","plotHoverEffect","plotFillHoverAlpha","columnHoverAlpha","barHoverAlpha","plotBorderHoverThickness","showBorder","showCanvasBorder","bgAlpha","canvasBgAlpha","captionPadding","labelPadding","yAxisValuesPadding","xAxisNamePadding","yAxisNamePadding","showAlternateHGridColor","showAlternateVGridColor","divLineAlpha","divLineColor","divLineThickness","vDivLineColor","vDivLineThickness","vDivLineAlpha","transposeAxis","crossLineColor","crossLineAnimation","crossLineAlpha","drawCrossLineOnTop","trendlineColor","trendlineThickness","vtrendlineColor","vtrendlineThickness","baseFont","outCnvBaseFont","baseFontSize","outCnvBaseFontSize","baseFontColor","outCnvBaseFontColor","labelFontColor","captionFontBold","captionFontSize","captionFont","captionFontColor","subCaptionFontBold","subCaptionFontSize","subCaptionFont","subCaptionFontColor","valueFontColor","valueFontBold","valueFontSize","valueFont","xAxisNameFontSize","xAxisNameFontBold","xAxisNameFont","xAxisNameFontColor","yAxisNameFontSize","yAxisNameFontBold","yAxisNameFont","yAxisNameFontColor","sYAxisNameFontSize","sYAxisNameFontBold","sYAxisNameFont","sYAxisNameFontColor","showValues","toolTipColor","toolTipBgColor","toolTipBorderAlpha","toolTipBgAlpha","toolTipPadding","toolTipBorderRadius","drawCustomLegendIcon","legendShadow","legendBorderAlpha","legendBorderThickness","legendItemFont","legendItemFontColor","legendIconBorderThickness","legendBgAlpha","legendItemFontSize","legendItemFontBold","legendCaptionFont","legendCaptionFontColor","legendCaptionFontSize","legendCaptionFontBold","legendScrollBgColor","column2d","column3d","canvasBaseDepth","canvasBaseColor","anchorBgColor","drawCrossLine","setAdaptiveYMin","lineThickness","drawAnchors","anchorRadius","anchorHoverRadius","anchorBorderHoverThickness","anchorBgHoverColor","anchorBorderHoverColor","anchorBgHoverAlpha","area2d","plotFillAlpha","bar2d","bar3d","pie2d","showZeroPies","use3DLighting","showPercentValues","showPercentInTooltip","useDataPlotColorForLabels","showLegend","legendIconSides","labelFontBold","labelFont","enableMultiSlicing","isSmartLineSlanted","smartLineColor","smartLineThickness","smartLabelClearance","pie3d","showPercentInToolTip","pieYScale","pieSliceDepth","doughnut2d","centerLabelFont","centerLabelBold","doughnut3d","pareto2d","lineColor","pareto3d","mscolumn2d","mscolumn3d","msline","msbar2d","msbar3d","msarea","marimekko","showSum","valueBgColor","valueBgAlpha","plotBorderColor","plotBorderThickness","plotBorderAlpha","zoomline","crossLineValueFont","flatScrollBars","scrollShowButtons","scrollColor","scrollheight","crossLineThickness","zoomlinedy","stackedcolumn2d","stackedcolumn3d","stackedbar2d","stackedbar3d","stackedarea2d","msstackedcolumn2d","mscombi2d","mscombi3d","mscolumnline3d","stackedcolumn2dline","stackedcolumn3dline","mscombidy2d","mscolumn3dlinedy","stackedcolumn3dlinedy","msstackedcolumn2dlinedy","scatter","regressionLineColor","regressionLineThickness","bubble","quadrantLineThickness","quadrantLineColor","quadrantLineAlpha","setAdaptiveXMin","zoomscatter","drawLine","anchorBorderThickness","anchorAlpha","hoverColor","regressionLineAlpha","scrollcolumn2d","scrollline2d","scrollarea2d","scrollstackedcolumn2d","scrollcombi2d","scrollcombidy2d","angulargauge","setAdaptiveMin","adjustTM","tickvaluedistance","placeTicksInside","autoAlignTickValues","showGaugeBorder","minortmnumber","minortmHeight","majorTMHeight","majortmthickness","minortmthickness","minorTMAlpha","gaugeFillMix","pivotbgcolor","pivotfillmix","showpivotborder","pivotBorderColor","showValue","valueBelowPivot","dials","dial","borderThickness","bulb","is3D","placeValuesInside","cylinder","cylRadius","cylYScale","cylFillColor","majorTMColor","tickValueDistance","hled","hlineargauge","pointerOnTop","valueAbovePointer","pointerRadius","pointerBgAlpha","pointerBgColor","pointerBorderColor","showPointerShadow","thermometer","manageResize","autoScale","thmFillColor","gaugeBorderColor","gaugeBorderAlpha","gaugeBorderThickness","vled","realtimearea","showRealTimeValue","realtimecolumn","realtimeline","realtimestackedarea","realtimestackedcolumn","realtimelinedy","sparkline","plotFillColor","highColor","lowColor","showOpenAnchor","showCloseAnchor","showOpenValue","showCloseValue","showHighLowValue","periodColor","periodAlpha","chartLeftMargin","chartRightMargin","sparkcolumn","sparkwinloss","winColor","lossColor","drawColor","scoreLessColor","hbullet","colorRangeFillMix","targetCapStyle","targetColor","vbullet","funnel","is2D","streamlinedData","useSameSlantAngle","alignCaptionWithCanvas","pyramid","use3dlighting","gantt","taskBarFillMix","gridBorderAlpha","gridBorderColor","ganttLineColor","ganttLineAlpha","taskBarRoundRadius","showCategoryHoverBand","categoryHoverBandAlpha","showGanttPaneVerticalHoverBand","showProcessHoverBand","processHoverBandAlpha","showGanttPaneHorizontalHoverBand","showConnectorHoverEffect","connectorHoverAlpha","showTaskHoverEffect","taskHoverFillAlpha","slackHoverFillAlpha","categories","fontcolor","fontsize","hoverBandAlpha","showGanttPaneHoverBand","headerbgAlpha","showHoverBand","tasks","task","processes","isanimated","headerbgcolor","headerfontcolor","datatable","datacolumn","connectors","hoverThickness","connector","milestones","milestone","logmscolumn2d","logmsline","spline","splinearea","msspline","mssplinearea","errorbar2d","errorBarColor","errorBarThickness","errorline","errorscatter","inversemsarea","inversemscolumn2d","inversemsline","dragcolumn2d","fontItalic","allowDrag","alpha","dragline","dashed","dragarea","treemap","parentLabelLineHeight","showParent","showNavigationBar","labelGlow","btnBackChartTooltext","btnResetChartTooltext","legendScaleLineThickness","legendaxisborderalpha","toolbarButtonScale","legendPointerColor","legendpointerbordercolor","legendPointerAlpha","defaultParentBgColor","fillColor","radar","anchorBgAlpha","radarBorderColor","radarBorderThickness","radarSpikeColor","radarSpikeThickness","radarSpikeAlpha","radarFillColor","heatmap","tlFontColor","tlFont","tlFontSize","trFontColor","trFont","trFontSize","blFontColor","blFont","blFontSize","brFontColor","brFont","brFontSize","colorrange","gradient","boxandwhisker2d","showDetailedLegend","showAllOutliers","outlierIconShape","outlierIconRadius","outlierIconSides","outlierIconColor","outlierIconAlpha","upperWhiskerColor","upperWhiskerAlpha","upperWhiskerThickness","lowerWhiskerColor","lowerWhiskerAlpha","lowerWhiskerThickness","medianColor","medianThickness","medianAlpha","meanIconShape","meanIconSides","meanIconColor","meanIconAlpha","meanIconRadius","SDIconColor","SDIconAlpha","MDIconColor","MDIconAlpha","QDIconColor","QSDIconAlpha","connectNullData","candlestick","showVPlotBorder","bearFillColor","bullFillColor","plotLineThickness","plotLineAlpha","divLineDashed","showVolumeChart","trendLineColor","trendLineThickness","trendValueAlpha","rollOverBandAlpha","rollOverBandColor","trendlineAlpha","showTrendlinesOnTop","verticalLineColor","verticalLineThickness","verticalLineAlpha","vTRendlines","dragnode","strength","msstepline","multiaxisline","vdivLineAlpha","vDivLineDashed","checkBoxColor","multilevelpie","useHoverColor","hoverFillColor","selectscatter","waterfall2d","positiveColor","negativeColor","showConnectors","connectorDashed","connectorThickness","connectorAlpha","kagi","rallyThickness","declineThickness","rallyColor","declineColor","geo","showLabels","showEntityHoverEffect","entityFillHoverAlpha","markerBorderHoverAlpha","nullEntityColor","nullEntityAlpha","entityFillHoverColor","overlappedcolumn2d","overlappedbar2d","scrollbar2d","scrollWidth","scrollstackedbar2d","scrollmsstackedcolumn2d","scrollmsstackedcolumn2dlinedy","stackedcolumn2dlinedy","stackedarea2dlinedy","mscombidy3d","sankey","nodeLabelFontSize","nodeLabelFontColor","nodeLabelPosition","nodeAlpha","linkAlpha","nodeHoverAlpha","linkHoverAlpha","enableDrag","plothighlighteffect","linkColor","sunburst","unfocussedAlpha","hoverFillAlpha","chord","legendPosition","nodeThickness","nodeLabelColor","nodeLinkPadding","nodeBorderColor","nodeBorderThickness","linkBorderAlpha","timeseries","multiCanvasTooltip","canvas","header","body","scrollbar","button","track","scroller","mask","crossline","extensions","standardRangeSelector","separator","customRangeSelector","legend","xaxis","timemarker","plotconfig","column","anchor","area","bear","bull","ohlc","schema","TimeSeriesColumnChart","onFetchData","timeseriesDs","renderAt","snapshot","plotType","stockValues","reading_date","stock_val","fusionTable","DataStore","createDataTable","patternColor","palettecolors","TimeSeriesAreaChart","TimeSeriesDashedLineChart","styledefinition","areaplot","TimeSeriesStepLineChart","all","plottype","TimeSeriesCandelChart","candelType","prefix","TimeSeriesCandelOhlcChart","timeformat","TimeSeriesStockEventsChart","Category","renderChart","_this$props$chartConf","chartConfig","chartType","timeseriesPatternColor","useKeyPress","stockChart","targetKey","keyPressed","setKeyPressed","downHandler","upHandler","SearchResult","downPress","upPress","enterPress","createReboundMethod","_len","args","_key","rebind","_len2","names","_key2","_i","_names","zipper","combine","identity","zip","m","min","d3_zipLength","zips","j","algorithm","skipUndefined","merge","noop","mergeCompute","datum","indicator","isNotDefined","sourcePath","misc","undefinedValue","windowSize","accumulator","skipInitial","slidingWindow","sourceFunction","functor","windowData","accumulatorIdx","undef","shift","isDate","shallowEqual","val1","val2","numKeysA","numKeysB","getTime","mappedSlidingWindow","mapped","PureComponent","nextProps","nextState","nextContext","context","plotDataLengthBarWidth","moreProps","widthRatio","xScale","_xScale$range","range","_xScale$range2","l","totalWidth","abs","invert","_xScale$domain","domain","_xScale$domain2","dl","dr","getStrokeDasharray","getLogger","sign","loc","defaultValue","isDefined","find","list","predicate","d3Window","ownerDocument","defaultView","document","MOUSEMOVE","MOUSEUP","TOUCHMOVE","TOUCHEND","getTouchProps","touch","pageX","pageY","clientX","clientY","getClosestItemIndexes","array","accessor","lo","hi","mid","valueOf","getClosestItem","_getClosestItemIndexe","closest","overlayColors","scaleOrdinal","schemeCategory10","head","first","last","touchPosition","rect","getBoundingClientRect","clientLeft","clientTop","mousePosition","defaultRect","clearCanvas","canvasList","ratio","each","setTransform","clearRect","scale","hexToRGBA","inputHex","hex","multiplier","parseInt","mapObject","object","iteratee","aliases","mouseleave","panend","pinchzoom","mousedown","click","contextmenu","dblclick","dragstart","dragend","dragcancel","GenericComponent","_Component","drawOnCanvas","getMoreProps","listener","draw","updateMoreProps","evaluateType","isHover","preCanvasDraw","postCanvasDraw","getPanConditions","shouldTypeProceed","preEvaluate","generateSubscriptionId","suscriberId","updateCount","evaluationInProgress","newType","drawOn","hovering","onUnHover","onContextMenu","onContextMenuWhenHover","onMouseDown","onClickWhenHover","onClickOutside","prevHover","_this$context","amIOnTop","setCursorClass","onHover","iSetTheCursorClass","interactiveCursorClass","onMouseMove","onDoubleClick","onDoubleClickWhenHover","onPan","onPanEnd","draggable","dragInProgress","onDragStart","someDragInProgress","onDrag","onDragComplete","enableDragOnHover","panEnabled","disablePan","force","trigger","proceed","chartCanvasType","canvasDraw","_this$context2","subscribe","chartId","clip","edgeClip","componentWillReceiveProps","unsubscribe","componentDidUpdate","_this$props2","plotData","getMutableState","debug","_this$context3","morePropsDecorator","xAccessor","displayXAccessor","_this$context4","fullData","_this$props3","canvasToDraw","getCanvasContexts","ctx","_this$context5","_this$props4","svgDraw","contexts","mouseCoord","contextTypes","PropTypes","number","isRequired","oneOfType","string","func","getAxisCanvas","axes","getMouseCanvas","ALWAYS_TRUE_TYPES","GenericChartComponent","_GenericComponent","_get","_getPrototypeOf","save","canvasOriginX","canvasOriginY","_moreProps$chartConfi","beginPath","translate","restore","chartConfigList","_this$moreProps$chart","ox","oy","mouseXY","_moreProps$mouseXY","startPos","_moreProps$startPos","currentCharts","propTypes","AxisZoomCapture","handleDragStartMouse","handleDragStartTouch","handleDrag","handleDragEnd","handleRightClick","saveNode","startPosition","preventDefault","on","contextMenuClicked","mouseInteraction","startScale","getScale","dragHappened","startXY","touches","getMouseDelta","inverted","diff","mouse","center","mean","tempRange","newDomain","axisZoomCallback","clicked","d3Event","bg","zoomCursorClassName","w","onTouchStart","Axis","renderSVG","showDomain","showTicks","orient","outerTickSize","lineWidth","strokeStyle","moveTo","lineTo","drawAxisLine","tickStroke","tickStrokeOpacity","tickLabelFill","showTickLabel","fillStyle","tick","tickStrokeWidth","tickStrokeDasharray","setLineDash","drawEachTick","font","canvas_dy","fillText","labelX","labelY","drawEachTickLabel","drawTicks","tickHelper","dy","Tick","axisTicksSVG","domainClassName","axisLineSVG","zoomEnabled","_this$props5","zoomCapture","innerTickSize","tickPadding","flexTicks","tickArguments","tickValuesProp","tickInterval","tickIntervalFunction","_scale$domain","_scale$domain2","max","baseTickValues","d3Range","baseFormat","tickSpacing","fy","origX","simulation","forceSimulation","forceX","forceCollide","shapeRendering","newXDomain","xAxisZoom","axisLocation","axisAt","xZoomHeight","_context$chartConfig","getXScale","helper","trueRange","trueDomain","copy","newYDomain","yAxisZoom","_helper","yZoomWidth","getYScale","yPan","yScale","flipYScale","LineSeries","highlightOnHover","yAccessor","hoverTolerance","currentItem","_mouseXY","radius","pow","desiredY","strokeOpacity","hoverStrokeWidth","defined","interpolation","canvasClip","connectNulls","dataSeries","d3Line","curve","_this$props6","hoverProps","AreaOnlySeries","canvasGradient","newBase","areaSeries","d3Area","y0","newClassName","AreaSeries","baseAt","hoverHighlight","SVGComponent","AlternatingFillAreaSeries","renderClip","topClip","bottomClip","id1","String","clipPathId1","id2","clipPathId2","fillOpacity","style1","style2","bottom","ScatterSeries","points","markerProps","d3Nest","entries","fillGroup","fillKey","fillValues","strokeGroup","point","Marker","markerProvider","mProps","drawOnCanvasWithNoStateChange","arc","Triangle","rotation","getRotationInDegrees","Function","getFillColor","strokeColor","getStrokeColor","_getTrianglePoints","getTrianglePoints","innerOpposite","innerHypotenuse","_getTrianglePoints2","rotationDeg","rotate","cos","tan","directionVal","Square","CandlestickSeries","candleStrokeWidth","candleData","getCandleData","nest","wick","outer","fillRect","y3","y4","strokeKey","strokeValues","inner","strokeRect","wickClassName","candleClassName","getWicksSVG","getCandlesSVG","wickStroke","classNames","fillProp","strokeProp","trueOffset","widthFunctor","candles","OHLCSeries","barData","bars","wickNest","openX1","openY","openX2","closeX1","closeY","closeX2","getOHLCBars","classNamesProp","strokeFunc","classNameFunc","barWidth","absoluteChange","StackedBarSeries","drawOnCanvasHelper","d3Stack","svgHelper","identityStack","stack","arrays","stackFn","defaultPostAction","postRotateAction","rotateXY","doStuff","drawOnCanvas2","convertToArray","getBarsSVG2","swapScales","after","_props$spaceBetweenBa","spaceBetweenBar","getClassName","getFill","getBase","eachBarWidth","ds","appearance","eachYAccessor","_","newData","groupOffset","groupWidth","bar","getBars","BarSeries","yValue","GroupedBarSeries","postProcessor","KagiSeries","currentValueStroke","paths","begin","prevX","lastPlot","curveStepBefore","kagiLine","startAs","changeTo","changePoint","added","reverseAt","yang","yin","PointAndFigureSeries","columns","getColumns","col","_col$offset","offsetX","offsetY","boxes","box","up","columnWidth","down","boxHeight","rx","ry","ellipse","anyBox","xOffset","RenkoSeries","renko","closePath","getRenko","candleWidth","fullyFormed","partial","StraightLine","xValue","_getLineCoordinates","getLineCoordinates","lineCoordinates","MACDSeries","yAccessorForMACD","yAccessorForSignal","yAccessorForDivergence","yAccessorForDivergenceBase","macd","signal","divergence","divergenceStroke","zeroLineStroke","zeroLineOpacity","BollingerSeries","yAccessorForTop","yAccessorForMiddle","yAccessorForBottom","yAccessorForScalledBottom","middle","areaClassName","RSISeries","topAndBottomClip","mainClip","overSold","overBought","insideThreshold","outsideThreshold","StochasticSeries","yAccessorForD","yAccessorForK","D","K","refLineOpacity","dLine","kLine","OverlayBarSeries","innerBars","ElderRaySeries","fillForEachBar","yAccessorTop","yAccessorBullTop","yAccessorBearTop","yAccessorBullBottom","yAccessorBearBottom","yAccessorForBarBase","bullPower","bearPower","yAccessorNumber","bullPowerFill","bearPowerFill","straightLineStroke","straightLineOpacity","VolumeProfileSeries","rects","sessionBg","sessionBackGround","sessionBackGroundOpacity","showSessionBackground","w1","w2","stroke1","stroke2","fill1","fill2","_helper2","sessionBgSvg","realXScale","sessionStart","bySession","partialStartOK","partialEndOK","bins","maxProfileWidthPercent","volume","sessionBuilder","accumulateTill","discardTillStart","discardTillEnd","accumulatingWindow","accumulatedWindow","dx","allRects","session","sessionWidth","histogram2","d3Histogram","thresholds","rollup","sortKeys","descending","ascending","leaves","volumeInBins","arr","volumeValues","end","scaleLinear","totalVolumes","volumes","totalVolume","totalVolumeX","ws","_ref6$","x0","getMonth","SARSeries","currentY","centerX","centerY","falling","rising","coordinateBase","coordinate","_edge$coordinateBase","rectWidth","rectHeight","arrowWidth","edgeXRect","edgeYRect","edgeXText","edgeYText","textFill","displayCoordinate","show","edgeAt","hideLine","lineStrokeDasharray","lineStroke","lineOpacity","rectRadius","textBaseline","measureText","dashArray","_edge$coordinateBase2","halfHeight","quadraticCurveTo","roundRect","EdgeIndicator","itemType","edgeType","displayFormat","yAxisPad","edgeX","getEdge","CurrentCoordinate","circle","MouseCoordinateX","customX","at","_customX","snapX","xPosition","drawCoordinate","shape","textWidth","_props$bg","_props$text","halfWidth","pad","MouseCoordinateXV2","getXCoordinateInfo","MouseCoordinateY","getYCoordinate","displayValue","CrossHairCursor","lines","originX","originY","rest","line1","PriceCoordinate","_yScale$domain","_yScale$domain2","lowerYValue","upperYValue","displayValuesFor","ToolTipText","ToolTipTSpanLabel","MACDTooltip","labelFill","macdValue","_origin","_origin2","slow","fast","OHLCTooltip","displayDate","percent","xDisplayFormat","volumeFormat","ohlcFormat","percentFormat","displayTexts","na","itemsToDisplay","timeFormat","SingleValueTooltip","yDisplayFormat","xLabel","yLabel","xDisplayValue","yDisplayValue","SingleMAToolTip","handleClick","forChart","MovingAverageTooltip","_Component2","_super2","originProp","_config$origin","tooltipLabel","BollingerBandTooltip","movingAverageType","tooltipValue","RSITooltip","rsi","StochasticTooltip","stochastic","kWindowSize","dWindowSize","HoverTooltip","pointer","bgFill","bgOpacity","backgroundShapeCanvas","tooltipCanvas","pointWidth","bgSize","backgroundShapeSVG","tooltipSVG","bgheight","bgwidth","bgShape","fontFill","tspans","startY","textY","X","chartIndex","normalizeX","normalizeY","calculateTooltipSize","getContext","str","_content$y$map$reduce","sizes","sumSizes","tooltipContent","SingleTooltip","valueFill","withShape","comp","layout","renderValueNextToLabel","renderValueBeneathToLabel","renderInline","GroupTooltip","xyPos","verticalSize","_this$getPosition","getPosition","xPos","yPos","singleTooltip","BollingerBand","ATR","ForceIndex","volumePath","Change","ElderRay","SAR","accelerationFactor","maxAccelerationFactor","MACD","FullStochasticOscillator","RSI","EMA","SMA","WMA","TMA","Kagi","reversalType","reversal","Renko","fixedBrickSize","PointAndFigure","boxSize","themes","ElderImpulse","neutral","defaultOptions","calculator","previous","_options","initialAccumulator","skip","initialValue","nextValue","undefinedLength","average","prevATR","trueRangeAlgorithm","tr","atr","atrAlgorithm","createBox","dateAccessor","dateMutator","fromDate","toDate","startOfYear","startOfQuarter","startOfMonth","startOfWeek","rawData","pricingMethod","columnData","upwardMovement","downwardMovement","noOfBoxes","prevBoxClose","eachBox","updateColumns","kWindow","highestHigh","lowestLow","kSmoothed","dWindow","stoAlgorithm","kData","_options2","curr","forceIndexCalulator","stops","risingSar","risingEp","fallingSar","fallingEp","af","now","_calc","calc","use","sar","echo","baseIndicator","ema","underlyingAlgorithm","mergedAlgorithm","wma","weight","waverage","tma","triaverage","meanAlgorithm","avg","stdDev","deviation","bollingerBandAlgorithm","bollingerband","bollingerBand","ha","heikinAshi","reversalThreshold","atrCalculator","prevPeak","prevTrough","kagiData","from","priceMovement","nextChangePoint","nextChangeTo","nextLineOpen","brickSize","renkoData","prevBrickClose","prevBrickOpen","brick","prevCloseToHigh","prevCloseToLow","prevOpenToHigh","prevOpenToLow","noOfBricks","newBrick","appearanceOptions","fastEMA","slowEMA","signalEMA","macdArray","macdCalculator","signalArray","prevAvgGain","prevAvgLoss","avgGain","gain","avgLoss","loss","rsiAlgorithm","tuple","change","gainsAndLossesCalculator","sto","elderRay","percentChange","algo","macdSource","emaSource","prevMACDDivergence","currMACDDivergence","prevEMA","currEMA","elderImpulse","grd","createLinearGradient","addColorStop","LineChart","AreaChart","strokes","stopOpacity","curveMonotoneX","CandlestickChart","candlesAppearance","BarChart","GroupedBarChart","fills","StackedBarChart","KagiChart","PointAndFigureChart","RenkoChart","ScatterAshiChart","scatterSeriesMarker","CircleMarker","SquareMarker","TriangleMarker","Label","Input","CustomFormInput","fieldName","_props$placeholder","_props$className","inputType","handleChange","CoordinateDialog","alert","handleSave","onSave","onDeleteAlert","TextDialog","MailOutline","Close","_PureComponent","_this3","yPanEnabled","childContextTypes","getDimensions","chartProps","availableHeight","isObject","isArraySize2AndNumber","yExtentsProp","_yExtentsProp","getNewChartConfig","innerDimension","existingChartConfig","Children","yExtents","yScaleProp","yExtentsCalculator","_getDimensions","prevChartConfig","originalYExtentsProp","_yExtentsProp2","getCurrentCharts","eachConfig","getChartConfigWithUpdatedYScales","xDomain","chartsToPan","yDomains","realYDomain","yValues","eachExtent","allYValues","flattenDeep","extent","set","yDomainFromYExtents","yDomainDY","prevYDomain","_config$yPanEnabled","another","newYScale","rangeRoundPoints","rangeRound","setRange","getCurrentItem","getXValue","EventCapture","handleEnter","handleLeave","handleWheel","handleMouseMove","handleMouseDown","handlePanEnd","handlePan","handleTouchStart","handleTouchMove","handlePinchZoom","handlePinchZoomEnd","shouldPan","canPan","mouseInside","panInProgress","focus","componentDidMount","win","zoom","onZoom","yZoom","deltaY","deltaX","_this$state$panStart","panStart","panStartXScale","lastNewPos","panHappened","dxdy","panOrigin","queuePanEnd","panEndTimeout","clearTimeout","mouseMove","_this$state$panStart2","dragStartPosition","getAllPanConditions","initialPanEnabled","pan","_getAllPanConditions$","returnObj","somethingSelected","_this$canPan","_this$props7","_this$state$panStart3","_this$props8","_this$state$panStart4","_this$props9","_this$props10","touchXY","touch1Pos","touch2Pos","pinchZoomStart","_touches","_touches2","_this$props11","onPinchZoom","_this$state$pinchZoom","initialPinch","_this$props12","onPinchZoomEnd","_this$state$pinchZoom2","_excluded2","cursorOverrideClass","_this$props13","disableInteraction","useCrossHairStyleCursor","interactionProps","onWheel","onTouchMove","panSpeedMultiplier","CanvasContainer","setDrawCanvas","drawCanvas","getNewEnd","fallbackEnd","initialXScale","lastItem","lastItemX","lastItemXValue","_initialXScale$range","_initialXScale$range2","rangeStart","canShowTheseManyPeriods","arrayLength","maxThreshold","minThreshold","threshold","ceil","showMinThreshold","showMaxThreshold","showMax","getFilteredResponse","newLeftIndex","newRightIndex","useWholeData","clamp","pointsPerPxThreshold","minPointsPerPxThreshold","flipXScale","filterData","inputDomain","currentPlotData","currentDomain","fallbackStart","clampedDomain","filteredData","realInputDomain","chartWidth","newEnd","newXScale","newWidth","extentsWrapper","CANDIDATES_FOR_RESET","getXScaleDirection","calculateFullData","plotFull","evaluator","resetChart","calculateState","initialPlotData","postCalculator","dimensions","inputXAccesor","xExtentsProp","xExtents","d3Extent","_calculateFullData","updatedXScale","setXRange","_filterData","pinchCoordinates","pinch","topLeft","bottomRight","ChartCanvas","getDataInfo","handleMouseEnter","handleMouseLeave","handleZoom","handleDoubleClick","handleContextMenu","handleDragStart","panHelper","pinchZoomHelper","resetYDomain","calculateStateForDomain","redraw","subscriptions","saveEventCaptureNode","saveCanvasContainerNode","interactiveState","mutableState","lastSubscriptionId","eventCaptureNode","canvasContainerNode","canvases","_rest$getPanCondition","dragableComponents","triggerEvent","_this$state2","initialChartConfig","_filterData2","beforePlotData","updatedScale","finalPinch","initialPinchXScale","_this$state3","_pinchCoordinates","iTL","iBR","_pinchCoordinates2","fTL","fBR","xDash","yDash","_filterData3","cancelDrag","waitingForPinchZoomAnimationFrame","requestAnimationFrame","clearBothCanvas","clearThreeCanvas","firstItem","onLoadMore","zoomDirection","_this$state4","zoomMultiplier","zoomAnchor","_this$calculateStateF","_this$calculateStateF2","_this$state5","_filterData4","hackyWayToStopPanBeyondBounds__plotData","hackyWayToStopPanBeyondBounds__domain","_this4","waitingForPanAnimationFrame","_this5","_this6","waitingForMouseMoveAnimationFrame","_this$state6","prevMouseXY","clearMouseCanvas","_this7","_this$state7","_this8","_this9","_resetChart","newState","thisProps","every","shouldResetChart","interaction","isInteractionEnabled","_this$state$xScale$do","_this$state$xScale$do2","prevLastItem","calculatedState","lastItemWasVisible","_initialXScale$domain","_initialXScale$domain2","maintainPointsPerPixelOnResize","rangeEnd","_updatedXScale$range","_updatedXScale$range2","newRangeStart","newRangeEnd","newStart","_initialXScale$range$","_initialXScale$range$2","updateChart","_newState","changed","newChartConfig","defaultFocus","mouseMoveEvent","panEvent","zoomEvent","onSelect","_this$state8","cursorStyle","arrayOf","yExtentsProvider","mouseCoordinates","oneOf","ohlcv","BackgroundText","getText","strokeText","ZoomButtons","handleZoomOut","handleZoomIn","_xScale$range$map$map","_xScale$range$map$map2","interpolateNumber","foo","heightFromBase","textStrokeWidth","onReset","_size","resetX","zoomOut","d3Path","zoomOutX","zoomIn","zoomInX","zoomBtnStyle","textDy","TypeChooser","handleTypeChange","getDisplayName","Series","fitWidth","WrappedComponent","withRef","ResponsiveComponent","handleWindowResize","getWrappedInstance","setTestCanvas","testCanvas","devicePixelRatio","webkitBackingStorePixelRatio","mozBackingStorePixelRatio","msBackingStorePixelRatio","oBackingStorePixelRatio","backingStorePixelRatio","getRatio","el","_window$getComputedSt","getComputedStyle","parentNode","parseFloat","defaultFormatters","yearFormat","quarterFormat","monthFormat","weekFormat","dayFormat","hourFormat","minuteFormat","secondFormat","milliSecondFormat","levelDefinition","getFullYear","startOfDay","startOfHalfDay","startOfQuarterDay","startOfEighthOfADay","startOfHour","getHours","startOf30Minutes","startOf15Minutes","startOf5Minutes","startOfMinute","startOf30Seconds","MAX_LEVEL","evaluateLevel","formatters","eachLevel","level","discontinuousIndexCalculatorLocalTime","initialIndex","prevDate","nowDate","getSeconds","getMinutes","getDay","realDateAccessor","inputDateAccessor","calculate","discontinuousTimeScaleProviderBuilder","withIndex","indexAccessor","indexMutator","currentFormatters","discontinuousTimeScaleProvider","inputIndex","financeDiscontinuousScale","futureProvider","backingLinearScale","interpolate","backingTicks","ticksMap","_backingLinearScale$d","_backingLinearScale$d2","domainStart","domainEnd","desiredTickCount","ticksAtLevel","temp","unsortedTicks","ticksSet","distance","remove","_index$Math$floor","nice","mergedData","utc","offsetInMillis","getTimezoneOffset","setLocale","locale","timeFormatDefaultLocale","indexCalculator","getValueFromOverride","override","terminate","saveNodeType","isHoverForInteractiveType","interactiveType","selecedNodes","getMorePropsForChart","getMouseXY","tolerance","x1Value","x2Value","y1Value","y2Value","isHovering","isHovering2","mouseX","mouseY","getSlope","getYIntercept","generateLine","modLine","xBegin","xFinish","yBegin","yFinish","getXLineCoordinates","_xScale$domain3","_xScale$domain4","_yScale$domain3","_yScale$domain4","getRayCoordinates","_start","_end","onEdge1Drag","onEdge2Drag","edgeStrokeWidth","edgeStroke","edgeFill","withEdge","ClickableCircle","mx","my","_helper3","_helper4","_helper5","_helper6","xyProvider","onMove","HoverTextNearMouse","textHeight","updateTextSize","textNode","bgWidth","bgHeight","_textNode$getBBox","getBBox","textMetaData","mouseInsideCanvas","PADDING","getBgWidth","getBgHeight","alignmentBaseline","EachTrendLine","handleEdge1Drag","handleEdge2Drag","handleLineDragStart","handleLineDrag","handleEdge1DragStart","handleEdge2DragStart","handleDragComplete","handleHover","dragStart","_this$dragStart","_getNewXY","getNewXY","_getNewXY2","_getNewXY3","_getNewXY4","edgeInteractiveCursor","lineInteractiveCursor","hoverText","hoverTextEnabled","enable","hoverTextSelected","selectedText","hoverTextUnselected","restHoverTextProps","_yScale$domain$slice$","d3Ascending","_yScale$domain$slice$2","small","big","onUnSelect","MouseLocationIndicator","handleMousePosChange","xy","pos","snap","shouldDisableSnap","snapTo","inputValue","currentValue","diff1","diff2","getClosestValue","mousXY","_this$mutableState","_this$mutableState2","TrendLine","handleStart","handleEnd","handleDrawLine","handleDragLine","handleDragLineComplete","getSelectionState","newXYValue","newTrends","trends","onComplete","xyValue","mouseMoved","onStart","currentPositionRadius","currentPositionStroke","currentPositionstrokeOpacity","currentPositionStrokeWidth","tempLine","noHover","eachAppearance","hoverTextWithDefault","shiftKey","_xyProvider","_xyProvider2","_xyProvider3","_xyProvider4","EachFibRetracement","handleLineNSResizeTop","handleLineNSResizeBottom","handleLineMove","_getNewXY5","_getNewXY7","interactive","nsEdgeFill","lineType","firstOrLast","interactiveEdgeCursorClass","dragHandler","edge1DragHandler","edge2DragHandler","hoverHandler","_generateLine","FibonacciRetracement","handleDrawRetracement","origXYValue","retracements","newRetracements","currentPositionOpacity","overrideIndex","hoverTextWidthDefault","currentRetracement","eachHoverText","ChannelWithArea","line2","line1Hovering","line2Hovering","line2Y1","line2Y2","getPath","endXY","getLines","EachEquidistantChannel","handleLine1Edge1Drag","handleLine1Edge2Drag","handleChannelDrag","handleChannelHeightChange","getEdgeCircle","newX1Value","newY1Value","_this$dragStart2","edgeFill2","line1Edge","line2Edge","EquidistantChannel","handleDrawChannel","handleDragChannel","handleDragChannelComplete","channels","newChannels","tempChannel","LinearRegressionChannelWithArea","edge2Provider","endIndex","ys","xys","xSquareds","newy1","newy2","EachLinearRegressionChannel","StandardDeviationChannel","eachDefaultAppearance","hoverTextDefault","GannFan","pairs","pairsOfLines","endX","endY","_startXY","_endXY","halfY","oneThirdY","oneFourthY","oneEighthY","halfX","oneThirdX","oneFourthX","EachGannFan","handleFanDrag","handleDrawFan","handleDragFan","handleDragFanComplete","fans","newfans","xyValyue","ClickCallback","Brush","handleZoomStart","handleDrawSquare","handleZoomComplete","zoomHappening","x1y1","strokeDashArray","_this$state$x1y","onBrush","InteractiveText","calculateTextWidth","bgStrokeWidth","bgStroke","_position","EachText","textCX","textCY","_this$dragStartPositi","handleDraw","newTextList","textList","defaultText","onChoosePosition","defaultHoverText","ClickableShape","closeIcon","textBox","_this$closeIcon","start2","end2","InteractiveYCoordinate","getStrokeDasharrayCanvas","newEdge","xxxyyy","EachInteractiveYCoordinate","handleCloseIconHover","handleDelete","closeIconHover","onDelete","dragProps","newAlertList","yCoordinateList","draggedAlert","defaultPriceCoordinate","DrawingObjectSelector","getInteraction","allSelected","interactives","objects","getSelected","getInteractiveNodes","drawingObjectMap","valueArray","morePropsForChart","AtrIndicator","toolTipApperance","BollingerBands","bb","EdgeIndicatorContainer","maIndicatorEdges","edgeCalculator","FiIndicator","fiCalc","FiEMAIndicator","fiEMACalc","MacdIndicator","_indicator$macd","_indicator$macd2","_indicator$signal","_indicator$signal2","_indicator$fill","_indicator$fill2","macdAppearance","seriesApperance","MovingAverage","maToolTipOptions","edgeName","RsiIndicator","_indicator$stroke","_indicator$stroke2","_props$seriesApperanc","_props$seriesApperanc2","_props$seriesApperanc3","_props$seriesApperanc4","_props$seriesApperanc5","_props$seriesApperanc6","rsiAppearance","StoIndicator","stoAppearance","getMAIndicatorEdge","edgeConfig","edgeVal","sma","getMacdIndicator","getRsiIndicator","getAtrIndicator","getStoIndicator","stoConfig","_stoConfig$slow","_stoConfig$slow2","_stoConfig$fast","_stoConfig$fast2","_stoConfig$full","_stoConfig$full2","_stoConfig$full3","slowSTO","stochasticOscillator","fastSTO","fullSTO","full","getSarCalc","getForceIndexCalc","fi","forceIndex","fiEMA","dateFormat","numberFormat","timeParse","getTooltipContent","isStock","defautlY","Annotate","usingProps","Annotation","with","when","renderSVG1","stroke-width","stroke-linecap","stroke-linejoin","stroke-dasharray","LabelAnnotation","xFunc","yFunc","SvgPathAnnotation","radians","selectCanvas","buyPath","sellPath","saveInteractiveNode","saveInteractiveNodes","interactiveNodes","ChartContainer","renderChartSeries","returnContainerConfig","handleReset","handleDownloadMore","drawChartTheme","saveCanvasNode","handleBrush","handleSelection","handleInteractiveCoordinateChoosePosition","handleDoubleClickAlert","handleInteractiveCoordinateDialogClose","handleChangeAlert","handleDeleteAlert","onGannFanDrawComplete","onStandardChannelDrawComplete","onEquidistantChannelDrawComplete","onFibComplete","onDrawTrendLineComplete","onDrawInteractiveText","handleInteractiveTextDialogClose","handleInteractiveTextChange","handleInteractiveChoosePosition","brushEnabled","enableInteractiveObject","showInteractiveCoordinateDialog","alertToEdit","standardDeviationChannels","equidistantChannels","fibonacciRetracements","interactiveText","showInteractiveTextDialog","canvasNode","interactiveTool","rragChartData","independentCharts","newText","precision","newAlert","shortid","generate","originalAlertList","_this$setState","_this$setState2","alertDragged","yCoordinate","enableFib","allButLast","lastText","which","seriesProps","_this$props$rragChart","features","scatterLineMarker","scatterLineWidth","scatterLineStroke","scatterLineFill","calculators","macdIndicator","rsiIndicator","atrIndicator","stoIndicator","elderImpulseIndicator","sarIndicator","forceIndexIndicator","_this$props$rragChart2","indicatorOpts","scaleXType","emptyD","dividend","isMaVisible","isMacdVisible","isElderImpulseVisible","isVolumeProfile","isForceIndexVisible","buySell","prevKey","nowKey","mergeAs","defaultAlgorithm","prevShortTerm","prevLongTerm","nowShortTerm","nowLongTerm","longShort","elder","changeCalculator","kagiCalculator","pAndF","pointAndFigure","renkoCalculator","scaleTime","_xScaleProvider","xScaleProvider","seriesName","brushCoords","isRsiVisible","isAtrVisible","indicatorId","indicatorOpt","edges","maEdge","edgeCalc","_indicatorOpt$macd","_indicatorOpt$macd2","_indicatorOpt$signal","_indicatorOpt$stroke","themeBg","themeProps","MacdSeries","RsiSeries","chart1","chart3","chart4","chart5","chart6","_this$props$rragChart3","volumeType","annotation","grid","priceCoordinate","gridProps","isEdgeVisible","isBbVisible","isElderVisible","isStoVisible","isSarVisible","_indicatorOpt$macd3","_indicatorOpt$macd4","_indicatorOpt$signal2","_indicatorOpt$stroke2","_indicatorOpt$fiEMA","_getForceIndexCalc","elderH","macdH","rsiH","atrH","stoSlowH","stoFastH","stoFullH","fiH","fiEMAH","chartHeight","maYExtents","consumedH","tooltipYs","annotationProps","onMouseOver","_this$drawChartTheme","xAixProps","yAixProps","CandlestickSeriesProps","ElderRaySeriesProps","MacdSeriesProps","RsiSeriesProps","chart1Props","chart1SeriesProps","chart2","gridWidth","showGrid","yGrid","xGrid","defaultAnnotationProps","longAnnotationProps","shortAnnotationProps","chart1YScale","AnnotateCustom","CustomAnnotation","dDate","aDate","toDateString","yAccessorKey","InteractiveTextDialog","InteractiveCoordinateDialog","highchartsMore","constructorType","zoomType","minPadding","maxPadding","plotLines","gridLineWidth","tickWidth","tickLength","tickPosition","labels","opposite","linkedTo","plotOptions","step","headerFormat","valueDecimals","StockData","DragPane","IndicatorsAll","StockTools","AnnotationsAdvanced","PriceIndicator","FullScreen","HighchartAccessibility","Heikinashi","HollowCandlestick","Gantt","HistogramBellCurve","HighchartsMore","HighchartsExporting","HighchartsExportData","HighChartWrapper","HighchartsReact","AvocadoTheme","colors","colorAxis","maxColor","minColor","nullColor","maskFill","BrandDarkTheme","linearGradient","subtitle","credits","borderWidth","shadow","itemStyle","itemHoverStyle","boxplot","upColor","upLineColor","errorbar","dumbbell","drilldown","activeAxisLabelStyle","activeDataLabelStyle","drillUpButton","gridLineColor","minorGridLineColor","tickColor","mapNavigation","buttonOptions","states","verticalAlign","rangeSelector","buttonTheme","inputBoxBorderColor","inputStyle","labelStyle","handles","outlineColor","barBackgroundColor","barBorderColor","buttonArrowColor","buttonBackgroundColor","buttonBorderColor","rifleColor","trackBackgroundColor","trackBorderColor","BrandLightTheme","navigation","symbolStroke","DarkBlueTheme","plotBackgroundColor","plotBorderWidth","minorTickInterval","itemHiddenStyle","DarkGreenTheme","DarkUnicaTheme","GrayTheme","plotShadow","alternateGridColor","GridLightTheme","GridTheme","HighContrastDarkTheme","HighContrastLightTheme","SandSignikaTheme","SkiesTheme","plotBackgroundImage","SunsetTheme","DefaultOpts","setOptions","themeModule","themeName","highChartData","plotBands","xPlotBands","yPlotBands","xPlotLines","yPlotLines","_useData","defaultSeries","duelSeries","_dateField","isDuelYAxis","_valueFields","pointDate","seriesPoint","duelPoint","default","useData","seriesData","initialChartType","dashStyle","initialZones","zones","scatterEnabled","scatterRadius","useOhlcData","_data","seriesList","stockSeries","dataGrouping","lineWidthPlus","volumeSeries","baseSeries","intervals","pointsInInterval","accessibility","exposeAsGroupOnly","initialSeries","oSeries","getOptions","hSeries","lSeries","cSeries","useSeries","resize","crosshair","useYAxis","useXAxis","stacking","pointDataLabelEnabled","columnDataLabelEnabled","showInNavigator","gapSize","allowPointSelect","flags","columnpyramid","pointFormat","usePlotOptions","DepthChart","alignTicks","events","stockTools","gui","buttons","definitions","typeChange","bindings","toValue","chartX","chartY","userOptions","customColorIndex","addAnnotation","langKey","zoneIndex","drag","newZones","update","typeOptions","shared","count","responsive","rules","condition","chartOptions","AvocadoChart","BrandDarkChart","BrandLightChart","DarkBlueChart","DarkGreenChart","DarkUnicaChart","GrayChart","GridChart","GridLightChart","HighContrastDarkChart","HighContrastLightChart","SandSignikaChart","SkiesChart","SunsetChart","DefaultChart","borderRight","borderTopRightRadius","borderTopLeftRadius","setTimeRange","timeRange","SeriesTypes","histogram","MainSeries","_props$data","_props$layoutOptions","layoutOptions","_props$chartType","_props$ma","ma","mainSeries","setMainSeries","setVolumeSeries","macdSeries","setMacdSeries","setSeriesData","getSeriesItem","_ref$options","_seriesType","seriesType","_mainSeries","_volumeSeries","priceFormat","overlay","scaleMargins","_macdSeries","edgeId","_edgeData","period","d1","d2","emptyArray","d3","smaInc","emaInc","wmaInc","_seriesItem","_seriesData","TradingViewDrawer","lightWeightChartData","_useSelector$indicato","_useSelector$indicato2","setData","chartLayoutOptions","formatData","TradingViewEmbedder","configs","setConfigs","decodeURIComponent","TradingViewWidget","MarketContainer","chartLibrary","ChartTimeRanger","RragChartContainer","HighChartContainer","MuiAlert","chartDataSlice","feedSourceType","loadedFeedSourceType","entityField","tableEntityId","tooltips","setChartOpt","setPath","setChartLibrary","setFeedSourceType","setLoadedFeedSourceType","initiTimeseriesData","_chartDataSlice$actio","FavoriteButton","bookmarkList","CURRENT_LOCATION","shouldShow","setShouldShow","setInputValue","setPending","setDone","statusTxt","setStatusTxt","createGroup","closeDialog","DialogContentText","disablePortal","freeSolo","newInputValue","ListItemIcon","TurnedIn","isBeaDatabaseCode","selectedChartTimeIncrement","selectedChartLine","selectedBlobTimeIncrement","SaveFav","BookmarkIcon","useToolbarStyles","Toolbar","SavedFilters","FiltersList","flexWrap","FilterItem","FilterDelete","filters","handleClearFilter","fKey","fItem","ClearIcon","descendingComparator","orderBy","getComparator","order","stableSort","comparator","stabilizedThis","ComponentSlice","datumFilterOptions","selectedDatumFilterOptions","setDatumFilterOptions","selectDatumFilterOptions","_ComponentSlice$actio","operator","inputAction","inputControl","inputIcon","distinctGroup","FieldSet","CheckboxControl","PlotterDatumFilter","checkedItems","setCheckedItems","setItems","componentData","toLocaleString","allCheck","setAllCheck","allCleared","setAllCleared","currentIndex","newChecked","handleItemCheck","CheckIcon","FormControl","Checkbox","indeterminate","htmlFor","goBack","ProductContext","createContext","_catalogs","catalogs","sorting","bold","italic","underline","swipIndex","setSwipIndex","swipName","setSwipName","handleSwipChange","sIndex","sName","headCell","handleSortClick","filterValues","_props$hasFilter","hasFilter","SortByAlphaIcon","DatumFilter","distincts","Buttons","filterWrap","FormGroup","FormLabel","ColumnSetting","headCells","hiddenColumns","setHiddenColumns","handleColumnChange","colIndex","newSelected","newArr","HighchartsAccessibility","_initialSeries","_yAxis","pointPadding","PreviewBox","PreviewTitle","popoverInner","Section","SectionTitle","SubSection","CategoryRadio","CategoryEntity","ChartItem","formulas","chartTypes","svg","LineChartSvg","DonutLargeIcon","AreaChartSvg","AreaRangeChartSvg","BarChartIcon","HorizontalBarChart","ColumnRangeSvg","PointMarkerSvg","ScatterLineChart","ChartSetting","_props$fields","fields","initialFields","setFields","setChartType","setXAxis","formula","setFormula","setYAxis","categoryBy","setCategorBy","groupBy","setGroupBy","entities","setEntities","entityType","setEntityType","selectedEntity","setSelectedEntity","_fields","splittedData","_entities","SettingsIcon","getOptionLabel","RadioGroup","_entityType","_selectedEntity","Radio","multiple","autoFocus","TestChart","html","showInLegend","MdDialogContent","ViewModeBtn","SelectedIcon","ChartPreivewSlot","SideIconBtn","barChartTypes","lineChartTypes","areaChartTypes","donutChartTypes","PieChartIcon","DataLogistic","_useState23","_useState24","viewMode","setViewMode","_useState25","_useState26","settingViewMode","setSettingViewMode","_useState27","_useState28","measureAnchorEl","setMeasureAnchorEl","handleMeasureClick","openMeasurePop","_useState29","_useState30","newMeasureAnchorEl","setNewMeasureAnchorEl","handleNewMeasureClick","openNewMeasurePop","_useState31","_useState32","newGroupAnchorEl","setNewGroupAnchorEl","handleNewGroupClick","openNewGroupPop","_useState33","_useState34","tabValue","setTabValue","_useState35","_useState36","openEdit","setOpenEdit","ButtonGroup","ArrowDropDown","Add","SignalCellularAlt","TableRows","TableContainerRoot","stickyHeader","table","centered","PreviewChart1","EqualizerIcon","Toc","FormatPaint","South","North","Edit","Filter","VisibilityOff","FilterBox","FilterBoxHeader","FilterBoxHeaderTxt","FilterBoxBody","NewFilterItem","FilterItemHeader","FilterItemName","FilterItemBody","visuallyHidden","highlightCell","NoRecord","tableId","setColumns","_columns","page","setPage","rowsPerPage","setRowsPerPage","hAnchorEl","setHAnchorEl","fAnchorEl","setFAchorEl","openFilterPop","openedColumn","setOpenedColumn","filterPop","columnSort","setColumnSort","columnFilterValues","setColumnFilterValues","openhighlightCell","emptyRows","visibleColumns","openTooltip","setOpenTooltip","handleTooltipClose","handleTooltipOpen","showFilterBox","setShowFilterBox","records","_rows","groupedData","filterDatumOptions","disableFocusListener","disableHoverListener","disableTouchListener","PopperProps","TooltipContent","FilterBar","_columnFilterValues","FilterAltIcon","TableCellFilter","tabIndex","c_index","FilterBoxHeaderAction","ClickAwayListener","onClickAway","FilterAction","TablePagination","rowsPerPageOptions","onPageChange","newPage","onRowsPerPageChange","ColumnSettingPanel","innerText","DataTableColumnFilterPopover","collapsedTxt","ShowMoreLink","cellTxt","muiDataTable","selectProductDataByRawPath","createSelector","_state$productData","loadedProductData","blob","_data$loadedProductDa","_data$timeIncrements","matchingData","selectBEAProductDataByPath","years","areas","transformColumns","transformRows","selectTimeIncrements","InputLabel","DataTableOptionsDialog","initialOptions","handleOptions","frequencyLabels","onChangeOptions","frequency","handleChangeMultiple","opts","inputName","Settings","native","year","formattedLabel","borderCollapse","TableRoot","th","td","stickTD","TransformTable","_getHeaderRows","headerRows","allColumns","updateParentColSpan","cell","columnLength","parentColIdx","depth","parentCol","processColumns","cols","rowSpan","sticky","_col$columns","_column","render","_rawData$tableData","_rawData$tableData$pa","tableData","childRows","getHeaderRows","MaterialTable","paging","toolbar","parentChildData","components","Header","colIdx","makeColumnOfYear","fr","_prefix","monthsArray","makeColumnOfArea","isTotal","itemId","itemLabel","_totalColumn","child","_step3","_iterator3","_yearColumn","TransformContainer","_props$productCode","openModifyDialog","handleMidifyDialog","productResource","dateField","selectedLines","selectedYears","selectedSeries","selectedRows","selectedColumns","selectedFrequencies","selectedAreas","_years","_productResource$year","areaIds","formattedAreas","_productResource$area","_productResource$area2","createHierarchy","_step4","_iterator4","_step5","_iterator5","_step6","_iterator6","serie","newOptions","setSelectedFrequencies","setSelectedLines","setSelectedYears","setSelectedSeries","setSelectedColumns","setSelectedRows","setSelectedAreas","customizeData","_newItem","Set","time_period_start","getUTCFullYear","sortData","aChar","bChar","numA","numB","BEADataTableView1","_useParams$productCod","displaySchemas","isInitialized","setIsInitialized","setProductResource","customizeDataMemoized","_formattedData","_lines","schemaKey","displaySchema","_attribute$type","attribute","ID","parents","_customizeDataMemoize","rYears","_customizeData","DataTableView","setRows","TableView","parseDate","NonMarektChartComponent","parseData","xAxisValue","momentDate","record_date","tItem","ch","_this$props$chartData","accessors","barYAcessors","accs","areaStorkes","yMousePointerRectWidth","yField","chYAcessor","handleBrush1","entityLists","NonMarektChart","CheckBoxOutlineBlankIcon","checkedIcon","CheckBoxIcon","CustomAutocomplete","_props$multiple","_props$checkboxOption","checkboxOption","disableCloseOnSelect","valuesList","renderOption","_option","_selected","PatternFill","AreaRangeChart","_props$configs","minimumField","maximumField","groupByField","_seriesData1","_seriesData2","seriesData1","seriesData2","_configStock","crosshairs","xDateFormat","connectorAllowed","pointStart","UTC","pointInterval","patternIndex","CustomFormSelect","valueKey","labelKey","renderOpt","ColumnChart","periodType","setPeriodType","periodValue","setPeriodValue","_categories","_from","_to","enableDoubleClickZoom","enableMouseWheelZoom","enableTouchZoom","mouseWheelSensitivity","labelId","DesktopDatePicker","inputFormat","views","ChartSettingDialog","yAxisFields","chartLines","chartLinesData","openSettingDialog","setOpenSettingDialog","_dateVal","chartLineId","chartLine","selectConfigByPath","fieldConfigs","NonMarketChartContainer","timeSeriesChartType","configData","selectedChartLines","selectedLinesData","nonMarket","RragNonMarketChart","HighNonMarketChart","MenuProps","_item$label","NonMarketContainer","require","parsableFormats","utils","getFieldType","getSafe","fn","replaceSpace","newKey","isEmpty","evaluateDefaultSetting","defaultField","opt","RegExp","test","attributeTransformer","fieldType","minTimestamp","maxTimestamp","checkIfDateSensible","parsePotentialData","fDate","potential","parsingFunction","chartSettings","bls","ap","bd","bp","cc","cd","ce","cf","ec","fiscal_data","entity","bea","nipa","niunderlyingdetail","fixedassets","amne","gdpbyindustry","ita","iip","inputoutput","underlyinggdpbyindustry","intlservtrade","regional","econoday","quandl","sge","fred","bing_covid19_data","git","covidtracking_all_states_history","covidtracking_historic_values_all_states","nyt_live_us_states","senate_polls","covidtracking_historic_us","jhu_csse_covid19_dailyreports_us","nyt_excess_deaths","start_date","month","day","defaultDate","nyt_live_us_counties","owid_covid","generic_congressional_ballot_polls","gubernatorial_polls","house_polls","presidential_general_polls","presidential_approval_polls","presidential_primary_polls","highChartDataSlice","arearange","setTimeSeriesChartType","setChartTheme","setScatterEnabled","setScatterRadius","setStepEnabled","setShadowEnabled","setSplineEnabled","setPointDataLabelEnabled","setDashStyle","setSeriesZones","setPlotBands","setPlotLines","setAreaRangeConfig","setColumnConfig","setFieldConfig","_highChartDataSlice$a","selectedAxis","ChartConfigDialog","xAxisFields","onUpdate","selectedPopField","setSelectedPopField","handleFieldClick","BEAChartConfigDialog","selectedTimeIncrement","setSelectedTimeIncrement","TIMESEARIES_SOURCES","deDuplicate","deDuplicated","formatToChartable","_value","getDate","accountForCommonFields","Year","sDate","formatStock","timestamp","ChartGraphView","productDataContext","useContext","useLocation","searchParams","URLSearchParams","bookmarkedXAxis","bookmarkedYAxis","bookmarkedTimeIncrement","bookmarkedChartLine","selectedDataOpt","formattedStocks","setFormattedStocks","loadDefaultSettings","settings","extraConfiguration","defaultSettings","hasDefault","defaultX","xType","xConfiguration","xConfig","yConfig","defaultY","entityConfig","defaultEntityField","evaluateSettings","updateSettings","_xAxis","defaultEntityVal","formatNonMarket","initials","_record","customizedDate","customized","formatBeaMarket","_productData$selected","_productData$selected2","_selectedYears","q","_record2","_record3","_record4","verifiedX","verifiedY","_loadDefaultSettings","yDivider","isEvaluated","_utils$attributeTrans","nId","timeperiod","_d$timeperiod$split","_d$timeperiod$split2","_d$timeperiod$split3","_d$timeperiod$split4","quater","_readOnlyError","setXAxisFields","setYAxisFields","_productResource$sele","_productResource$sele2","setSelectedChartLines","setSelectedChartTimeIncrement","renderGraph","xAxisKey","today","startDateTime","setDate","setMonth","setFullYear","BigQueryNonMarketContainer","_selectedChartLines","_selectedChartTimeIncrement","additionalSortKey","IODataTableView","_lineLabel","_line","_lineLabel$toLocaleLo","_lineLabel$toLocaleLo2","_lineKey","_lineParents","NIPATableView","_props$dateColumn","dateColumn","RegionalTableView","MNETableView","NDL_SOURCES","StockDetailComponent","_productData$timeIncr","_productData$timeIncr2","bookMarkedTimeIncrement","qaMode","setQaMode","loadedStocks","notification","cachedItems","setSelectedDataOpt","setOpenModifyDialog","_identifier","beaDatabaseCode","_feedSourceType","fetchProductData","_timeIncrement","bgTables","_params","clearStockProductData","bg_table_location","fetchStockProductOfBigQuery","fetchStockProductData","executeDataTransformLogic","_args4","signedUrls","fetchStockProductSignedUrl","dataBlobLocations","loadedData","hierarchyColumn","labelColumn","fetchStockProductDataForTransform","fetchBQDataForTransform","hasYears","_qa","setSelectedBlobTimeIncrement","initProductMetaData","fetchProductSQL","initialFetchingData","closeNotification","clickBlobHandler","clickMeasurePerformance","renderTable","setProductOpt","productContainer","productHeader","ProductCodeHeaderTxt","disableElevation","inc","data-time-increment","RefreshSharp","DataSwitcher","SelectedDataSwitchOpt","TrendingUpIcon","productBody","productStaticBar","loadingStockData","Snackbar","autoHideDuration","DataSwitchOpt","qaMetricItemLabel","useFetchBigQueryData","blobPath","currentPage","isLoaded","fetchProducts","timeframe","pageSize","date_field","getProductColumns","useFetchCloudStorageData","useProductContext","ProductProvider","initialized","setInitialized","previousViewMode","isDataSettingsLoaded","selectedChart","_useSelector$charts","charts","innerChart","globalChart","xAxisType","setXAxisType","defaultChart","setDefaultChart","isNDLSource","fetchCloudStorageProduct","initProduct","bigquery_table_locations","initFetchingData","_loadedProductData$id","clearAllSeries","totalRecords","fetchProductColumns","currentData","initChartConfigs","innerXAxisType","innerXAxis","_xAxisFields$filter$","innerFeedSourceType","innerFields","_innerXAxis","innerDefaultChart","dateXAxis","xAxisIdx","requiredId","some","initialChart","innerChartConfigs","setInitialChartConfigs","globalChartConfigs","defaultHighlights","yAxisField","endIdx","fromY","toY","fromX","toX","Provider","addChartColors","_chartSettings$colors","colorLength","ProductHeader","formattedProductName","MaterialUiDataTable","hasPagination","paginationProps","triggerChange","onCellCliks","customHeadLabelRender","rowInd","cellVal","autoIncrement","onChangePage","onChangeRowsPerPage","TimeFramesBox","timeframes","timeframeData","parseDateLocalizedHours","Main","easeOut","LayoutHeader","mixins","DrawerHeader","DrawerBody","DrawLayoutBody","DrawerLayout","drawerHeaderNode","drawerBodyNode","layoutBodyNode","_ref6$open","onSidebarChange","useTheme","isValidElement","CssBaseline","flexShrink","heigh","DropdownSelect","_ref$selectedValue","selectedValue","selectedOption","_item$id","PieDataPanel","categoryField","updateSeries","SeriesAccordion","_seriesItem$value","_ref$isExpanded","isExpanded","_ref$seriesItem","seriesItem","_ref$seriesLabel","seriesLabel","onUpdateSerie","_ref$onChange","expandIcon","deleteSeries","DefaultPanel","expandedPanel","setExpandedPanel","usedFields","AddCircleIcon","addSeries","DataPanel","_series$idx","FilterSelect","_ref$column","_ref$checkedOptions","checkedOptions","_objectDestructuringEmpty","loadingColumnItems","setIsfull","setChecked","hasUpdated","setHasUpdated","loadColumnItems","getColumnItems","column_name","innerOptions","handleToggle","disableRestoreFocus","onScroll","itemValue","disableRipple","ChevronRight","_Object$keys","loadingProductColumns","gutterBottom","removeFilterOpt","FilterPanel","_useProductContext","loadingTableData","fetchBigQueryProduct","hasValidId","TimeIncrementsBox","SidebarHeader","hasBigQuery","locations","SourceIcon","SettingIcon","CustomizedTooltip","chartList","ChartSidebar","selectedChartType","onSelectChartType","ChartPanel","_xAxisFields$2","_xAxisFields$","_fields$","onChangeChartType","PanelHeader","PanelHeaderLabel","PanelHeaderIconButton","PanelBody","ExpandablePanelBox","isCollapsable","headerIcon1","headerIcon2","collapsed","setCollapsed","KeyboardArrowRightIcon","KeyboardArrowDownIcon","TextFeature","_chartSettings$title","_chartSettings$subtit","_chartSettings$captio","swatch","popover","ColorPicker","pickerLable","defaultColor","innerColors","unshift","styles","reactCSS","TwitterPicker","StartNode","EndNode","FieldItem","CustomizeItem","startNode","endNode","ParagraphLabel","bgColors","Appearance","_Object$entries","_chartSettings$chart","_chartSettings$chart2","_chartSettings$chart3","_chartSettings$chart4","deleteChartColors","BaseAccordion","_ref$seriesSubLabel","seriesSubLabel","DropdownSelectWithInput","_ref$selectValue","selectValue","_ref$inputValue","_ref$onSelectChange","onSelectChange","_ref$onInputChange","BpIcon","mode","outlineOffset","BpCheckedIcon","BpCheckbox","AccordionItem","HorizontalAxis","_axes$horizontal","_axes$horizontal2","_axes$horizontal3","_axes$horizontal4","_axes$horizontal5","_axes$horizontal5$sty","_axes$horizontal7","_axes$horizontal7$sty","_axes$horizontal9","_axes$horizontal9$sty","isLabelStyleOpened","setIsLabelStyleOpened","modified","labelPlacement","reversed","_axes$horizontal6","_axes$horizontal6$sty","_axes$horizontal8","_axes$horizontal8$sty","VerticalAxis","_axes$vertical","_axes$vertical2","_axes$vertical3","_axes$vertical4","_axes$vertical5","_axes$vertical5$style","_axes$vertical7","_axes$vertical7$style","_axes$vertical9","_axes$vertical9$style","_axes$vertical6","_axes$vertical6$style","_axes$vertical8","_axes$vertical8$style","TooltipFeature","_state$productData$ch","marketChartType","tooltipFormatData","tempDataField","setTempDataField","applyTo","setApplyTo","selectedTooltip","onAddFormat","pointFormatBody","toLocaleUpperCase","innerList","addInformationData","pointFormatHeader","LegendFeature","_legend$itemStyle","_legend$itemStyle3","_legend$itemStyle5","isPlacementOpened","setIsPlacementOpened","NorthWest","SouthWest","NorthEast","SouthEast","columnCount","_position$split","_position$split2","onAlignPlacement","_legend$itemStyle2","_legend$itemStyle4","DataLabelsFeature","_selectedDataLabel$st","_selectedDataLabel$st3","_selectedDataLabel$st5","dataLabelsData","selectedDataLabel","onChangeVisibility","_selectedDataLabel$st2","_selectedDataLabel$st4","AnnotationTextLabels","annotations","selectedTextId","setSelectedTextId","textOptions","isFresh","selectedTextOption","onChangeTextOption","deleteAnnotation","DeleteOutline","AnnotationHighlights","_selectedHighlight$la","_selectedHighlight$la2","_selectedHighlight$la3","_selectedHighlight$la4","_selectedHighlight$la5","_selectedHighlight$la6","_useSelector$plotHigh","plotHighlights","selectedId","setSelectedId","_item$label2","_item$label3","selectedHighlight","onChangeBand","addPlotHighlights","deletePlotHighlights","SeriesSpecificType","marketChartTypes","nonMarketChartTypes","serieItem","_serieItem$marker","colorByPoint","BasicCustomizePanel","CustomizePanel","TabContext","TabList","Annotations","boxRef","observer","ResizeObserver","reflow","observe","unobserve","exporting","pathAttribute","_chartSettings$axes","_chartSettings$axes2","_data$default","activeChartAnchor","dragging","draggingAxis","draggingId","clickX","clickY","translateX","translateY","plotBandBar","plotResizeHandlerRef","plotBandAnchor","plotBandResizeHandler","onAddAnnotation","that","_that$svgElem","_that$svgElement","_that$svgElem2","_that$svgElement2","layerX","layerY","svgElem","svgElement","_field$marker","_field$marker2","_field$marker3","duelKey","lower","higher","_seriesData$default","_ref$tooltip","_ref$dataLabels","formatBody","stockTooltip","volumeTooltip","endOnTick","resizePath","currentD","increasingWidth","moves","newD","x3","x4","_plotResizeHandlerRef","innerXPlotBands","plotLinesAndBands","innerYPlotBands","destroy","renderer","attr","add","plotBand","bbox","leftMiddle","rightMiddle","yPosition","leftIcon","toFront","rightIcon","topMiddle","bottomMiddle","topIcon","bottomIcon","load","onmousemove","_dragging$current","plotLeft","bBox","resizeHandlers","querySelectorAll","leftHandlerX","rightHandlerX","setAttribute","_dragging$current$svg","currentWidth","currentHeight","newBandD","leftHandlerY","rightHandlerY","_dragging$current$svg2","innerTranslateX","innerTranslateY","onmouseup","currentDraggingIdx","_chart$xAxis$0$plotLi","_chart$container$getB","plotBandX","plotBandX2","x1Date","x2Date","updatePlotHighlights","_chart$yAxis$0$plotLi","_chart$container$getB2","plotBandY","plotBandY2","y1Val","y2Val","selection","extremesObject","barEnd","barStart","barTop","plotTop","barHeight","barLength","seriesMapping","StockHighChart","StockPrice","_priceData$lastDate","_priceData$lastDate2","priceData","setPriceData","fetchStockPrice","_payload$data","_payload$data2","success","lastPrice","priceChange","percentageChange","ArrowUpwardIcon","ArrowDownwardIcon","lastDate","chartOpt","SaveChartBtn","nonMarketChartType","_useSelector$selected","showSidebar","_useSelector$loadingS","loadingSaveChart","anchorRef","contains","onClickChartNav","saveChartConfig","isGlobal","innerIsGlobal","saveChart","_r$payload","LoadingButton","aria-expanded","aria-haspopup","prevOpen","ArrowDropDownIcon","TransitionProps","Grow","MenuList","autoFocusItem","MarketChart","validatedXAxis","seriesMessage","errors","NonMarketHighChart","defaultConfigs","changeAmount","chartMinWidth","scrollPositionX","_chartLine$marker","_chartLine$marker2","_chartLine$marker3","scrollablePlotArea","PieChart","setSelection","innerData","serieKey","valueSuffix","dataLabels1","textOutline","property","NonMarketChart","xAxisField","alertMessage","verticalAxesSetting","horizontalAxesSetting","selectedTimeFrame","setSelectedTimeFrame","NonMarket","OhlcSeriesAccordion","_ref$canDelete","canDelete","RangeSeriesAccordion","_seriesItem$lower","_seriesItem$higher","onPanelChange","timeseriesTypes","PyramidColumnSvg","OHLCChartSvg","HLCChartPng","HeikinAshiChart","HollowCandleChart","defaultSeriesIdx","seriesPayload","ParagraphHeader","AdvancedCustomizePanel","rootErrorMsg","MarketComponent","NonMarketComponent","drawer","opened","innerOverlay","drawerContent","closeButton","DrawerHeaderAction","DrawerHeaderTitle","outlineWidth","inset","ColorCap","TableSubTitle","createData","fat","carbs","protein","warning","borderBottomWidth","alertBox","FormRoot","CovidView","covidStates","_componentDidMount","BubbleChart","unsortedData","income","population","region","scaleLog","lifeExpectancy","Statistic","showModal","sell","buy","CandleStickChartWithInteractiveYCoordinate","_React$Component2","handleChoosePosition","handleDialogClose","yCoordinateList_1","yCoordinateList_3","_iteratee","_iteratee2","toObject","_this$setState4","calculatedData","CandleStickChart","ChartComponent","tsvParse","QALogin","setIsVideoLoading","email","setEmail","password","setPassword","noValidate","autoComplete","authentication","signInWithEmailAndPassword","InvestmentStep","selectedInvestment","selectedDirection","onChangeDirection","investments","beaMneInvestments","directions","beaMneDirections","onValueChange","onDirectionValueChange","investment","SeriesStep","seriesArr","beaMneSeries","fetchBeaMneSeries","ClassificationStep","selectedClassification","classifications","beaMneClassifications","fetchBeaMneClassifications","classification","VisualizationStep","loadingBeaMne","fetchBeaMneProductData","valueField","TrendingUp","ProductName","customProductInput","steps","BeaMne","activeStep","setActiveStep","setSelectedInvestment","setSelectedDirection","setSelectedClassification","fetchBeaMneInvestments","fetchBeaMneDirections","handleNext","inValid","prevActiveStep","onChangeInvestment","onChangeSeries","onChangeClassification","Stepper","labelProps","Step","StepLabel","pt","BorderLinearProgress","LinearProgress","linearProgressClasses","colorPrimary","ResultStatusArea","_ref3$rows","statusData","countPerRange","total_products","range_percentage","progressedPercentage","progressed_count","count_per_range","progressed_percentage","run_type","created_at","hour","minute","second","updated_at","range_index","note","paused_product","SelectField","StartQADialog","_props$totalProducts","totalProducts","_props$onClickSave","onClickSave","runType","setRunType","setPercentage","maximumSeconds","setMaximumSeconds","rangeProducts","_field","rangePercentage","UpperCase","QAReportTable","_useFetchQAReports$st2","reportData","_useFetchQAReports$st3","opend","setOpend","ReportStatusArea","_r$average_score","last_qa_date","passed_range_num","maximum_sec","_payload","retryLink","selectedRangeId","completedCount","ongoingQACount","onClickConfirm","onClickRange","onClickRetry","onClickResume","anchorRangeId","setAnchorRangeId","completedPercentage","completedProducts","count_of_good","count_of_average","count_of_below_average","neededToConfirm","start_product","Stack","useQaRange","qaRanges","setQARanges","getQARanges","getQaResults","qaRangeId","initQARange","_yield$dispatch2$payl","_qaRanges","retryQARange","_yield$dispatch3","saveQARange","_yield$dispatch4","_yield$dispatch4$payl","nextRange","thresholdConfigs","MAX_AL","secs","dangerF","warnF","MAX_MDL","MAX_BDL","MAX_TDT","TOTAL","QAResultsTable","totalProgress","setTotalProgress","progress","cCountAvg","bCountAvg","cCountBelowAvg","bCountBelowAvg","cCountGood","bCountGood","cCountFail","bCountFail","cCountPass","bCountPass","currentRange","setCurrentRange","setSelectedRangeId","qaProcessLoading","setQaProcessLoading","keepQaRef","qaProcessRef","rangeId","productId","onOpenFilterPop","_useQaRange","_useQaRange$state","loadingQARanges","productCountsPerRange","rangeCount","rangeRows","_startRange","_endRange","_items","end_product","sortedResults","evaluateThreshold","thresholdType","thresholdVal","_maxThresHold","initCurrentRange","_currentRange","retryWith503Handling","_retryWith503Handling","maxRetries","errorCallBack","retries","_errorType","runQA","qaProcess","rangeIndex","processType","pre","_totalScore","nextTable","modifiedRange","nextProduct","_r$payload$results","errorResults","_nextProduct","_yield$dispatch$paylo2","_newResults","_yield$saveQARange","_yield$saveQARange$ra","_nextRange","_qIdx","_args3","lastError","countFail","endProduct","totalRange","progressedCount","b_pass_count","c_pass_count","b_fail_count","c_fail_count","b_count_of_good","c_count_of_good","b_count_of_average","c_count_of_average","b_count_of_below_average","c_count_of_below_average","startAutomatic","_initRangeIndex","_ranges","rangeProduct","_totalProgress","_args5","returns","prevRange","startManualInterval","retryQA","rType","_yield$retryQARange","errorProducts","_yield$qaProcess","rangeResults","_currentResults","_loop2","_r$payload$results2","_newResults2","t2","resumeQA","_yield$saveQARange2","newRange","rIdx","pausedProduct","handleBeforeUnload","returnValue","Reply","newRangeId","authRoutes","navigationOptions","defaultRoutes","exact","MockupPage","MockupQAResultsTable","Test","statistic","TestRrrag","ProductModule","ProductPageComponent","withTracker","HOC","mapDispatchToProps","createTheme","moneyGreen","wallStreetWhite","gammaGrey","brokerBlack","notFound","notFoundH","h1","NotFoundBg","backgroundSize","backgroundPosition","h2","img","info","NotFound","CustomSnackbar","snackbar","hideSnackbarMessage","dialogTitle","AlertDialog","buttonId","hideAlertDialog","AuthContext","AuthProvider","currentUser","setCurrentUser","onAuthStateChanged","App","mainPaths","authPaths","Router","ThemeProvider","StyledEngineProvider","injectFirst","Route","route","CustomAlertDialog","CustomSnack","hostname","match","store","login","pass","LOGIN","Username","Password","logout","LOGOUT","fetchLoggedUserData","EMP_LOGGED","authenticationSlice","bootstrapLogin","setSessionExpired","expiredSession","setRefreshingToken","refreshingToken","setReloadLocale","reloadLocale","manualLogout","loadInProgress","loggedUserData","_authenticationSlice$","employeId","endsWith","getInitialState","messages","msgId","chg","appMessageSlice","showMessage","showDialog","hideMessage","_appMessageSlice$acti","rragChartDataSlice","coordinateY","force_index","setChartFeature","_features","setCoordinateY","setInteractiveTool","setThemeBg","setGridOption","setVolumeType","setIndicatorVisible","_indicatorOpts","setIndicatorOption","_indicatorOpt","addIndicatorEdge","updateIndicatorEdge","edgeKey","edgeUpdateVal","edgeIndex","deleteIndicatorEdge","_annotation","updateAnnotation","_state","_state$annotation","_annotationIdx","$set","_rragChartDataSlice$a","LightWeightChartDataSlice","_LightWeightChartData","fetchSummaryDataSet","EOD_FETCH_SUMMARY_DATASET","fetchSummaryDataTable","EOD_FETCH_SUMMARY_DATA_TABLE","fetchEodDataDatatableFilters","EOD_FETCH_DATATABLE_FILTERS","saveEodDataDatatableFilters","EOD_SAVE_DATATABLE_FILTERS","deleteEodDataDatatableFilters","EOD_DELETE_DATATABLE_FILTERS","SummaryDataSlice","datasetName","addOptional","subTable","tableName","sizeOrder","columnsOrder","rowsOrder","lastReadRowsOrder","updatedOrder","loadTimeInSecondsOrder","dataTableFilters","setSummaryDataTableFilters","datatableFilterIndex","fetchNewsData","EOD_FETCH_PRODUCT_NEWS","signedUrl","_yield$axios$get","dataString","replaceAll","newsSlice","ignoredPaths","configureStore","messagesSystemReducer","authenticationReducer","AppLayoutReducer","EodDataReducer","ChartDataReducer","RragChartDataReducer","LightWeightChartDataReducer","HighChartDataReducer","StockProductReducer","NewsReducer","summaryData","SummaryDataReducer","UserReducer","ComponentReducer","SearchReducer","frontendQA","FrontendQAReducer","middleware","getDefaultMiddleware","serializableCheck","immutableCheck","rejectionHandler","getElementById","createRoot","serviceWorker","ready","registration","unregister","fetchProductSQLSource","fetchColumnItemsSource","EOD_FETCH_PRODUCT_SQL","EOD_FETCH_LAST_PRICE","_response$response","EOD_FETCH_BG_STOCK_PRODUCT","EOD_GET_PRODUCT_COLUMNS","_response$response2","EOD_GET_COLUMN_ITEMS","_fileResponse","fileResponse","_dataPoints","fileResponseData","dataPoints","_fileResponse2","_fileResponse2$respon","EOD_FETCH_PRODUCT_DATA","responseType","buffer","Buffer","pako","ungzip","EOD_FETCH_CS_DATA_FOR_TRANSFORM","EOD_FETCH_BQ_DATA_FOR_TRANSFORM","EOD_FETCH_BEA_MNE_INVESTMENTS","EOD_FETCH_BEA_MNE_DIRECTIONS","EOD_FETCH_BEA_MNE_SERIES","EOD_FETCH_BEA_MNE_CLASSIFICATIONS","EOD_FETCH_BEA_MNE_PRODUCT_DATA","EOD_SAVE_CHART","initialProductData","feedSourceName","databaseCodeName","stockProductSlice","_state$chartSettings","_state$chartSettings$","clearSeries","setLoadedProductData","loadedProductCode","_action$payload6$char","_product$titles","titles","_product$valid_times","_product$display_sche","display_schemas","from_dates","to_dates","last_updates","last_load_attempts","first_addeds","_title","from_date","to_date","last_update","last_load_attempt","first_added","_loadedProductData","_action$payload9","_action$payload10","_action$payload11","_action$payload12","pagination","totalRows","_action$payload13","_action$payload14","_action$payload15","_products$","_products$$titles","_products$$valid_time","_products$$display_sc","_stockProductSlice$ac","QA_API","DOCUMENT_API","PY_USER_API","AUTHENTICATION","messagesSystemSlice","_messagesSystemSlice$","axiosRetry","retryDelay","retryCount","retryCondition","_retryCondition","_auth$currentUser","idToken","getIdToken","onRetry","interceptors","request","_request$url","uId","Cancel","_error$response","listToQueryParam","paramName","queryString","_Object$entries$_i"],"mappings":"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ElB,SAAW,GAEf,QAAW,CACP,SAAW,EACX,KAAQ,qCACR,SAAY,CACR,MAAS,QACT,GAAM,GACN,cAAiB,SACjB,GAAM,GAEV,MAAS,CACL,OAAU,UACV,MAAS,UACT,SAAY,OAEhB,KAAQ,kBAEZ,UAAa,CACT,OAAU,GACV,gBAAmB,EACnB,mBAAsB,EACtB,OAAU,GACV,SAAY,EACZ,UAAY,EACZ,KAAQ,GACR,OAAU,EACV,mBAAsB,UACtB,eAAkB,EAClB,eAAkB,UAClB,iBAAoB,UACpB,sBAAyB,UACzB,kBAAqB,UACrB,kBAAqB,EACrB,WAAc,UACd,qBAAwB,UACxB,iBAAoB,UACpB,iBAAoB,GAExB,UAAa,CACT,OAAU,GACV,OAAU,GACV,YAAc,EACd,QAAW,CACP,MAAS,EACT,OAAU,GACV,QAAW,CACP,mBACA,oBAEJ,SAAW,EACX,UAAa,EACb,gBAAmB,UACnB,YAAe,WAEnB,SAAY,wBACZ,aAAgB,UAChB,aAAgB,EAChB,OAAU,CACN,KAAQ,aACR,YAAe,IACf,UAAa,EACb,QAAW,KACX,aAAgB,CACZ,cAAiB,UACjB,SAAW,EACX,gBAAmB,EACnB,YAAe,aACf,OAAU,SACV,WAAc,YACd,MAAS,CACL,CACI,cACA,CACI,EACA,EACA,EACA,GACA,GACA,GACA,GACA,IACA,IACA,MAGR,CACI,SACA,CACI,EACA,EACA,EACA,GACA,GACA,KAGR,CACI,SACA,CACI,EACA,EACA,EACA,GACA,GACA,KAGR,CACI,OACA,CACI,EACA,EACA,EACA,EACA,EACA,EACA,KAGR,CACI,MACA,CACI,EACA,EACA,EACA,IAGR,CACI,OACA,CACI,EACA,EACA,IAGR,CACI,QACA,CACI,EACA,EACA,IAGR,CACI,OACA,QAIZ,WAAc,CACV,SAAW,EACX,OAAU,GAEd,GAAM,8BACN,UAAa,8BACb,UAAa,KACb,OAAU,CACN,SAAW,GAEf,UAAa,MAEjB,MAAS,CACL,WAAc,EACd,UAAa,6BACb,WAAc,EACd,UAAa,EACb,cAAiB,UACjB,cAAiB,EACjB,kBAAqB,IACrB,OAAU,CACN,MAAS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","file":"static/js/main.f5cb363f.chunk.js","sourcesContent":["module.exports = __webpack_public_path__ + \"static/media/plotter_logo.2f183b4e.png\";","module.exports = \"data:image/png;base64,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\"","module.exports = __webpack_public_path__ + \"static/media/acp-layouts.7af855bb.png\";","module.exports = {\r\n CRYPTO_COMPARE:\r\n \"54c69a67adfc783963d3589c5a08a40a5d619b0f22b94b1c79df9acc9129c5ff\",\r\n GLASSNODE: \"1pzEImQbuhq9Qj0LynC5b4oqQog\"\r\n };","module.exports = __webpack_public_path__ + \"static/media/demo.e16611cf.png\";","module.exports = __webpack_public_path__ + \"static/media/PyramidColumn.3e513c79.svg\";","module.exports = __webpack_public_path__ + \"static/media/OHLC.c1735d8a.svg\";","module.exports = \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAIAAAACACAMAAAD04JH5AAAAolBMVEVEREAAAABEREBEREBLs0v1QjjvQjhIrVH1PzZJnUhNsU1KqVFJrlDxQzXXRDhMr0/yQzdLsE7yQjZLr0/0QjVMrlBKq070QzRMr0/0QjbtQjbzQTZMrk7zQjVMr0/yQzZLr0/0QjZMr09LrE70QjXvQjVMr09LrE70QjZMrlD0QjVLrlD0QzXvQzXzQjZMr1BLrk9LrE/0QzbzQzbwQzbvQzaBw6QLAAAAL3RSTlMAAAUGGxsbHBwgJCUmJipTU1RUqamrq6utra/G5ubn5+zs7e3t7fDw8PHx8vLy/vyL+cgAAAKGSURBVHja7dvfSsMwFMfxEz1sQ7FjzE1Fn0Hw/Z/Cd5DduK6DdjqnLt5UbafUJP2dHJB4ZyD91v79ECkf272hxo89MkQRx1i5T6zcJ1buEyv3Wzug0W/uAGC7w2z+ucG3vHx2mcvQ/vXZ94YvTxc7h7mMPK7Zd5+MycrcYS4jz+u82SeaLB3mMvK64lafTlzmssi1bgwRkXWZy4J96zKXlfvEyn3Lyv09K/cNK/eJlfvEyn1i5T7WhAF9rAkD+mgTevfBJvTvY0140DfRTXjQN9FNaH/ck5FNGNDHmjCgjzXh4TMxmfC2/r0o17omnOzXyiacPiib0CibsOuZyFH6FGrC4Xg2qLfxkleVQL/bhMOb7OsYjq7X21d8v9uE46x5DrMsD+1ToAlnzb6157m/Cf98JnaacNDq04m/Cev+so8Jv/ohJqr7ZQ8T9unfA0zY6+8HmNCrL2BCvz7ehJ59vAkj9P82YY8+xIR9+ggT9uoD1gkD7mvoOmHIfQ1dJ4zQdzehUN/ZhFJ913VCsb7jOmH9TFZbJ3R9J0itEzq/k4TWCd3fiTLrhH1MhFgnFO4nEyYTJhMmEyYTJhMmEyYTJhMmEyYTJhMmE/4zE+4Grf5TdBMWF613UhHdhNVo3OiXm+gm3GzL+aDuvyw3z/FN+L5a+f7fF21C7zFW7oNNGDAGNaHUNyaSfawJZb4xke2DTSjwjYl0H2vCkDFW7suZ0HVMyoTOY14mvKuPyWNZwPbJz4T1OZnuC9gx4YC+pdkD7JxwSB95TbBy39uE8HvC04T4e5KV+90m3I7kn4mdJiyu5J/JnSasisnv/cdIJqy2uyn/1i9jmfBtsUjfHafvjqXHWLlPH4tgdg2CehOiAAAAAElFTkSuQmCC\"","module.exports = __webpack_public_path__ + \"static/media/Candlestick.c534fc91.svg\";","module.exports = __webpack_public_path__ + \"static/media/HeikinAshi.ff07a207.svg\";","module.exports = __webpack_public_path__ + \"static/media/HollowCandle.140a7499.svg\";","module.exports = __webpack_public_path__ + \"static/media/notfound-bg.e3f4b380.jpg\";","const LocalStorageService = (function () {\r\n let _service;\r\n\r\n function _getService() {\r\n if (!_service) {\r\n _service = this;\r\n return _service\r\n }\r\n return _service\r\n }\r\n\r\n // State -------------------------------------------------------------------------------------//\r\n\r\n function _saveState(state) {\r\n try {\r\n const serializedState = JSON.stringify(state);\r\n localStorage.setItem('state', serializedState);\r\n } catch (error) {\r\n // Ignore write errors\r\n }\r\n }\r\n\r\n function _getState() {\r\n try {\r\n const serializedState = localStorage.getItem('state');\r\n if (serializedState === null) {\r\n return undefined;\r\n }\r\n return JSON.parse(serializedState);\r\n } catch (error) {\r\n return undefined;\r\n }\r\n }\r\n function _clearState() {\r\n localStorage.setItem('state')\r\n }\r\n\r\n // Token -------------------------------------------------------------------------------------//\r\n function _setDefaultGoogleUser(token) {\r\n localStorage.setItem('defaultGoogleUser', token);\r\n }\r\n\r\n function _getDefaultGoogleUser() {\r\n return localStorage.getItem('defaultGoogleUser');\r\n }\r\n\r\n function _clearDefaultGoogleUser() {\r\n localStorage.removeItem('defaultGoogleUser');\r\n }\r\n\r\n // PlotterUID --------------------------------------------------------------------------------//\r\n function _setPlotterUID(plotterUID) {\r\n localStorage.setItem('plotterUID', plotterUID);\r\n }\r\n\r\n function _getPlotterUID() {\r\n return localStorage.getItem('plotterUID');\r\n }\r\n\r\n function _clearPlotterUID() {\r\n localStorage.removeItem('plotterUID');\r\n }\r\n // Plotter Access Token --------------------------------------------------------------------------------//\r\n function _setAccessToken(accessToken) {\r\n localStorage.setItem('accessToken', accessToken);\r\n }\r\n\r\n function _getAccessToken() {\r\n return localStorage.getItem('accessToken');\r\n }\r\n\r\n function _clearAccessToken() {\r\n localStorage.removeItem('accessToken');\r\n }\r\n\r\n // Firebase Auth --------------------------------------------------------------------------------//\r\n function _setAuth(authData) {\r\n localStorage.setItem('authData', JSON.stringify(authData));\r\n }\r\n\r\n function _getAuth() {try {\r\n const serializedAuth = localStorage.getItem('authData');\r\n if (serializedAuth === null) {\r\n return undefined;\r\n }\r\n return JSON.parse(serializedAuth);\r\n } catch (error) {\r\n return undefined;\r\n }\r\n }\r\n\r\n function _clearAuth() {\r\n localStorage.removeItem('authData');\r\n }\r\n\r\n \r\n // Firebase Auth --------------------------------------------------------------------------------//\r\n function _addLogCount() {\r\n const _logCount = localStorage.getItem('logCount') || 0\r\n localStorage.setItem('logCount', _logCount * 1 + 1);\r\n }\r\n\r\n function _getLogCount() {\r\n return localStorage.getItem('logCount') || 0\r\n }\r\n\r\n function _clearLogCount() {\r\n localStorage.removeItem('logCount');\r\n }\r\n\r\n function _setRememberedPath(path) {\r\n localStorage.setItem('rememberedPath', path)\r\n }\r\n function _getRememberedPath(){\r\n return localStorage.getItem('rememberedPath')\r\n }\r\n function _clearRememberedPath(){\r\n return localStorage.removeItem('rememberedPath')\r\n }\r\n\r\n\r\n return {\r\n getAuth: _getAuth,\r\n setAuth: _setAuth,\r\n clearAuth: _clearAuth,\r\n getService: _getService,\r\n setState: _saveState,\r\n getState: _getState,\r\n clearState: _clearState,\r\n setDefaultGoogleUser: _setDefaultGoogleUser,\r\n getDefaultGoogleUser: _getDefaultGoogleUser,\r\n clearDefaultGoogleUser: _clearDefaultGoogleUser,\r\n setPlotterUID: _setPlotterUID,\r\n getPlotterUID: _getPlotterUID,\r\n clearPlotterUID: _clearPlotterUID,\r\n setAccessToken: _setAccessToken,\r\n getAccessToken: _getAccessToken,\r\n clearAccessToken: _clearAccessToken,\r\n addLogCount: _addLogCount,\r\n getLogCount: _getLogCount,\r\n clearLogCount: _clearLogCount,\r\n setRememberedPath: _setRememberedPath,\r\n getRememberedPath: _getRememberedPath,\r\n clearRememberedPath: _clearRememberedPath,\r\n }\r\n })();\r\n\r\n export default LocalStorageService;\r\n","import Numeral from 'numeral'\r\nexport const toK = num => {\r\n return Numeral(num).format('0.[00]a')\r\n}\r\nvar priceFormatter = new Intl.NumberFormat('en-US', {\r\n style: 'currency',\r\n currency: 'USD',\r\n minimumFractionDigits: 2\r\n})\r\nconst Common = {\r\n // Common.formatNumber(123456789.12345, 2, ',', '.') outputs 123,456,789.12\r\n formatNumber: function (number, decimal, comma, point) { //n, c, d, t\r\n decimal = isNaN(decimal = Math.abs(decimal)) ? 0 : decimal;\r\n point = point === undefined ? \".\" : point;\r\n comma = comma === undefined ? \",\" : comma;\r\n let s = number < 0 ? \"-\" : \"\",\r\n i = String(parseInt(number = Math.abs(Number(number) || 0).toFixed(decimal))),\r\n j = i.length;\r\n j = (j = i.length) > 3 ? j % 3 : 0;\r\n return s + (j ? i.substr(0, j) + comma : \"\") + i.substr(j)\r\n .replace(/(\\d{3})(?=\\d)/g, \"$1\" + comma) + (decimal ? point + Math.abs(number - i).toFixed(decimal).slice(2) : \"\");\r\n }\r\n};\r\n\r\nCommon.utcToLocal = (utcDate) => {\r\n const timezoneOffsetStamp = new Date().getTimezoneOffset() * 60 * 1000;\r\n return new Date(new Date(utcDate).getTime() + timezoneOffsetStamp);\r\n};\r\n\r\nCommon.localToUtc = (date) => {\r\n const timezoneOffsetStamp = new Date().getTimezoneOffset() * 60 * 1000;\r\n return new Date(new Date(date).getTime() - timezoneOffsetStamp);\r\n};\r\n\r\nCommon.formattedNum = (number, usd = false, acceptNegatives = false) => {\r\n if (isNaN(number) || number === '' || number === undefined) {\r\n return usd ? '$0' : 0\r\n }\r\n let num = parseFloat(number)\r\n\r\n if (num > 500000000) {\r\n return (usd ? '$' : '') + toK(num.toFixed(0), true)\r\n }\r\n\r\n if (num === 0) {\r\n if (usd) {\r\n return '$0'\r\n }\r\n return 0\r\n }\r\n\r\n if (num < 0.0001 && num > 0) {\r\n return usd ? '< $0.0001' : '< 0.0001'\r\n }\r\n\r\n if (num > 1000) {\r\n return usd\r\n ? '$' + Number(parseFloat(num).toFixed(0)).toLocaleString()\r\n : '' + Number(parseFloat(num).toFixed(0)).toLocaleString()\r\n }\r\n\r\n if (usd) {\r\n if (num < 0.1) {\r\n return '$' + Number(parseFloat(num).toFixed(4))\r\n } else {\r\n let usdString = priceFormatter.format(num)\r\n return '$' + usdString.slice(1, usdString.length)\r\n }\r\n }\r\n\r\n return Number(parseFloat(num).toFixed(5))\r\n}\r\n\r\nexport const removeObjectProperties = function (obj, props) {\r\n if (typeof obj === 'undefined' || obj === null)\r\n return;\r\n\r\n for (let i = 0; i < props.length; i++) {\r\n if (obj.hasOwnProperty(props[i])) {\r\n delete obj[props[i]];\r\n }\r\n }\r\n};\r\n\r\nexport const getRandomColor = () => {\r\n // Generate random values for red, green, and blue channels\r\n const red = Math.floor(Math.random() * 256);\r\n const green = Math.floor(Math.random() * 256);\r\n const blue = Math.floor(Math.random() * 256);\r\n\r\n // Combine the channels into a CSS color string\r\n return `rgb(${red}, ${green}, ${blue})`;\r\n}\r\n\r\nexport default Common;\r\n","import { createSlice, createAsyncThunk, createEntityAdapter } from '@reduxjs/toolkit'\r\nimport API from 'store/services/AxiosService';\r\nimport { EOD_SEARCH, EOD_SEARCH_SUGGESTIONS } from 'store/UrlConstants'\r\nimport axios from 'axios'\r\nimport { removeObjectProperties } from 'shared/utilities/common';\r\n\r\nvar CancelToken = axios.CancelToken;\r\nlet fetchSearchDataSource;\r\n\r\ncreateEntityAdapter()\r\n\r\nexport const fetchSuggestionData = createAsyncThunk(EOD_SEARCH_SUGGESTIONS, async (params) => {\r\n let url = EOD_SEARCH_SUGGESTIONS\r\n const { data: suggestions } = await API.get(url, { params })\r\n return suggestions\r\n})\r\n\r\nexport const fetchSearchData = createAsyncThunk(EOD_SEARCH, async (params) => {\r\n if (fetchSearchDataSource) {\r\n fetchSearchDataSource.cancel()\r\n }\r\n fetchSearchDataSource = CancelToken.source();\r\n let url = EOD_SEARCH\r\n const { global = true } = params\r\n removeObjectProperties(params, ['global'])\r\n const response = await API.get(\r\n url, {\r\n params: params,\r\n cancelToken: fetchSearchDataSource.token\r\n })\r\n const { data: suggestions } = response\r\n return {\r\n suggestions,\r\n global\r\n }\r\n})\r\n\r\nconst initialState = {\r\n searchSuggestions: [],\r\n loadingInProgress: true,\r\n loadingSearch: false,\r\n searchResults: [],\r\n}\r\n\r\nconst searchSlice = createSlice({\r\n name: 'Search',\r\n initialState,\r\n reducers: {\r\n cancleSearchStock(state, action) {\r\n if (fetchSearchDataSource) {\r\n fetchSearchDataSource.cancel()\r\n }\r\n },\r\n },\r\n extraReducers: {\r\n [fetchSuggestionData.pending]: (state, action) => {\r\n state.loadingInProgress = true\r\n },\r\n [fetchSuggestionData.fulfilled]: (state, action) => {\r\n if (action.payload) {\r\n state.news = action.payload\r\n }\r\n state.loadingInProgress = false\r\n },\r\n [fetchSuggestionData.rejected]: (state, action) => {\r\n state.loadingInProgress = false\r\n },\r\n [fetchSearchData.pending]: (state, action) => {\r\n state.loadingSearch = true\r\n },\r\n [fetchSearchData.fulfilled]: (state, action) => {\r\n const { suggestions, global } = action.payload\r\n if (suggestions) {\r\n let formatted = []\r\n suggestions.forEach(element => {\r\n let label = element.value.feed_source + '/' + element.value.database_code + '/' + element.value.product_code\r\n element.value.label = label\r\n formatted.push(element.value)\r\n })\r\n state.searchResults = formatted\r\n }\r\n state.loadingSearch = false\r\n },\r\n [fetchSearchData.rejected]: (state, action) => {\r\n state.loadingSearch = false\r\n },\r\n },\r\n})\r\nexport const {\r\n cancleSearchStock\r\n} = searchSlice.actions\r\nexport const prepareSelector = state => state.Search\r\nexport default searchSlice.reducer\r\n","import { createSlice, createAsyncThunk, createEntityAdapter } from '@reduxjs/toolkit';\r\nimport { paramsToQueryParam } from 'store/UrlUtils';\r\nimport API from 'store/services/AxiosService'\r\nimport axios from 'axios';\r\nimport {\r\n EOD_FETCH_FEED_SOURCES,\r\n EOD_FETCH_FEED_GROUPS,\r\n EOD_FETCH_STOCK_PRODUCTS,\r\n EOD_FETCH_FEED_SECTIONS\r\n} from 'store/UrlConstants';\r\nvar CancelToken = axios.CancelToken;\r\nlet fetchFeedDatabaseCodeSource;\r\nlet fetchFeedSectionSource;\r\nlet fetchProductCodeSource;\r\n\r\nconst initialState = {\r\n sources: [],\r\n databaseCodes: [],\r\n isDatabaseCodesFull: false,\r\n filterDatabaseCodes: [],\r\n isFilterDatabaseCodesFull: false,\r\n sections: [],\r\n filteredSections: [],\r\n stockProducts: [],\r\n isStockProductsFull: false,\r\n eodData: [],\r\n feedSource: undefined,\r\n feedDatabaseCode: '',\r\n feedProductCode: '',\r\n feedSectionName: '',\r\n loadingInProgress: false,\r\n loadingFeedSources: false,\r\n loadingDatabaseCodes: false,\r\n loadingSections: false,\r\n topSearchWord: '',\r\n searchWords: {\r\n feedSource: '',\r\n databaseCode: '',\r\n productCode: ''\r\n },\r\n qaSearchWords: {\r\n feedSource: '',\r\n databaseCode: '',\r\n productCode: ''\r\n },\r\n qaSearchRows: [],\r\n filteredWords: {\r\n databaseCode: '',\r\n productCode: '',\r\n },\r\n step2Index: 0,\r\n};\r\n\r\nexport const fetchFeedSources = createAsyncThunk('eod/fetch_feed_sources', async () => {\r\n const response = await API.get(EOD_FETCH_FEED_SOURCES);\r\n return response.data;\r\n});\r\nexport const fetchFeedDatabaseCodes = createAsyncThunk('eod/fetch_feed_groups', async (params, thunkAPI) => {\r\n if (fetchFeedDatabaseCodeSource) {\r\n fetchFeedDatabaseCodeSource.cancel()\r\n }\r\n fetchFeedDatabaseCodeSource = CancelToken.source();\r\n try {\r\n const response = await API.get(EOD_FETCH_FEED_GROUPS + paramsToQueryParam(params), {\r\n cancelToken: fetchFeedDatabaseCodeSource.token\r\n });\r\n const { rows, search: { qaRows } } = response.data\r\n return {\r\n data: rows,\r\n searchWord: params?.searchWord || '',\r\n isDatabaseCodesFull: rows.length > 0 ? false : true,\r\n qaRows: qaRows,\r\n };\r\n } catch (e) {\r\n console.log(e, 'errr')\r\n return thunkAPI.rejectWithValue(e)\r\n }\r\n});\r\nexport const fetchFeedSections = createAsyncThunk('eod/fetch_feed_sections', async (params, thunkAPI) => {\r\n if (fetchFeedSectionSource) {\r\n fetchFeedSectionSource.cancel()\r\n }\r\n fetchFeedSectionSource = CancelToken.source();\r\n try {\r\n const response = await API.get(EOD_FETCH_FEED_SECTIONS + paramsToQueryParam(params), {\r\n cancelToken: fetchFeedSectionSource.token\r\n });\r\n return {\r\n data: response.data,\r\n searchWord: params?.searchWord || ''\r\n };\r\n } catch (e) {\r\n console.log(e, 'errr')\r\n return thunkAPI.rejectWithValue(e)\r\n }\r\n});\r\nexport const fetchStockProducts = createAsyncThunk('eod/fetch_stock_products', async (params, thunkAPI) => {\r\n if (fetchProductCodeSource) {\r\n fetchProductCodeSource.cancel()\r\n }\r\n fetchProductCodeSource = CancelToken.source();\r\n try {\r\n const response = await API.get(EOD_FETCH_STOCK_PRODUCTS + paramsToQueryParam(params), {\r\n cancelToken: fetchProductCodeSource.token\r\n });\r\n return {\r\n ...params,\r\n data: response.data\r\n };\r\n } catch (e) {\r\n return thunkAPI.rejectWithValue(e)\r\n }\r\n});\r\n\r\nconst eodDataSlice = createSlice({\r\n name: 'eodData',\r\n initialState,\r\n reducers: {\r\n setFeedPath(state, action){\r\n state = {\r\n ...state,\r\n ...action.payload\r\n }\r\n },\r\n setFeedSource(state, action) {\r\n state.feedSource = action.payload\r\n },\r\n setFeedDatabaseCode(state, action) {\r\n state.feedDatabaseCode = action.payload\r\n },\r\n setFeedProductCode(state, action) {\r\n state.feedProductCode = action.payload\r\n },\r\n setFeedSectionName(state, action) {\r\n state.feedSectionName = action.payload\r\n },\r\n setProductData(state, action) {\r\n state.productName = action.product_code;\r\n state.timeIncrements = action.valid_times;\r\n },\r\n setTopSearchWord(state, action) {\r\n state.topSearchWord = action.payload\r\n },\r\n setSearchWord: (state, action) => {\r\n const { field, value } = action.payload;\r\n state.searchWords[field] = value\r\n },\r\n setQaSearchWord: (state, action) => {\r\n const { field, value } = action.payload;\r\n state.qaSearchWords[field] = value\r\n },\r\n setFilteredWord: (state, action) => {\r\n const { field, value } = action.payload;\r\n state.filteredWords[field] = value\r\n },\r\n clearStockProducts(state, action) {\r\n state.stockProducts = []\r\n state.isStockProductsFull = false\r\n },\r\n clearDatabaseCodes(state, action) {\r\n if (action?.payload?.flag === 'search') {\r\n state.filterDatabaseCodes = [];\r\n state.isFilterDatabaseCodesFull = false\r\n state.filteredWords.databaseCode = ''\r\n } else {\r\n state.databaseCodes = []\r\n state.isDatabaseCodesFull = false\r\n }\r\n },\r\n clearSections(state, action) {\r\n if (action?.payload?.flag === 'search') {\r\n state.filteredSections = [];\r\n } else {\r\n state.sections = []\r\n }\r\n },\r\n changeStep2Index(state, action) {\r\n state.step2Index = action.payload\r\n },\r\n },\r\n extraReducers: {\r\n [fetchFeedSources.pending]: (state, action) => {\r\n state.loadingFeedSources = true;\r\n },\r\n [fetchFeedSources.fulfilled]: (state, action) => {\r\n if (action.payload) {\r\n const _sources = action.payload?.sort()\r\n state.sources = [..._sources]\r\n }\r\n state.loadingFeedSources = false\r\n },\r\n [fetchFeedDatabaseCodes.pending]: (state, action) => {\r\n state.loadingDatabaseCodes = true;\r\n },\r\n [fetchFeedDatabaseCodes.fulfilled]: (state, action) => {\r\n const { data = [], qaRows = [], searchWord, isDatabaseCodesFull } = action.payload\r\n if (searchWord !== '') {\r\n if (isDatabaseCodesFull) {\r\n state.isFilterDatabaseCodesFull = isDatabaseCodesFull\r\n } else {\r\n if (searchWord === state.filteredWords.databaseCode) {\r\n state.filterDatabaseCodes = [...state.filterDatabaseCodes.concat([...data])]\r\n } else {\r\n state.filterDatabaseCodes = [...data]\r\n state.filteredWords.databaseCode = searchWord\r\n }\r\n }\r\n state.qaSearchRows = qaRows\r\n } else {\r\n if (isDatabaseCodesFull) {\r\n state.isDatabaseCodesFull = isDatabaseCodesFull\r\n } else {\r\n state.databaseCodes = [...state.databaseCodes.concat([...data])]\r\n }\r\n }\r\n state.loadingDatabaseCodes = false\r\n },\r\n [fetchFeedDatabaseCodes.rejected]: (state, action) => {\r\n state.loadingDatabaseCodes = false\r\n },\r\n [fetchFeedSections.pending]: (state, action) => {\r\n state.loadingSections = true;\r\n },\r\n [fetchFeedSections.fulfilled]: (state, action) => {\r\n const { data = [], searchWord } = action.payload\r\n if (searchWord && searchWord !== '') {\r\n state.filteredSections = [...data]\r\n } else {\r\n state.sections = [...data]\r\n }\r\n state.loadingSections = false\r\n },\r\n [fetchFeedSections.rejected]: (state, action) => {\r\n state.loadingSections = false\r\n },\r\n [fetchStockProducts.pending]: (state, action) => {\r\n state.loadingInProgress = true\r\n },\r\n [fetchStockProducts.fulfilled]: (state, action) => {\r\n const { data } = action.payload\r\n if(action.payload.feed_source === state.feedSource && action.payload.database_code === state.feedDatabaseCode){\r\n if (data && Array.isArray(data)) {\r\n if (data.length < 1) {\r\n state.isStockProductsFull = true\r\n } else {\r\n const _products = [...state.stockProducts]\r\n state.stockProducts = [..._products.concat([...data])]\r\n }\r\n }\r\n }\r\n state.loadingInProgress = false\r\n },\r\n [fetchStockProducts.rejected]: (state, action) => {\r\n state.loadingInProgress = false\r\n }\r\n },\r\n});\r\n\r\nexport const prepareSelector = state => state.eodData;\r\n\r\nexport const {\r\n setFeedSource,\r\n setFeedDatabaseCode,\r\n setFeedProductCode,\r\n setProductData,\r\n setTopSearchWord,\r\n setSearchWord,\r\n setQaSearchWord,\r\n clearStockProducts,\r\n clearDatabaseCodes,\r\n clearSections,\r\n changeStep2Index,\r\n setFeedPath,\r\n setFeedSectionName\r\n} = eodDataSlice.actions\r\nexport default eodDataSlice.reducer;\r\n","import React, { useState, useEffect, useCallback } from \"react\"\r\nimport { useSelector, useDispatch } from 'react-redux'\r\nimport { useHistory } from \"react-router-dom\"\r\nimport { Box, IconButton, styled } from '@mui/material'\r\nimport { makeStyles } from \"@mui/styles\";\r\nimport { InputAdornment, Popper } from \"@mui/material\"\r\nimport TextField from '@mui/material/TextField'\r\nimport Autocomplete, { autocompleteClasses } from '@mui/material/Autocomplete'\r\nimport CircularProgress from '@mui/material/CircularProgress'\r\nimport {\r\n Lock,\r\n LockOpen,\r\n Search as SearchIcon\r\n} from '@mui/icons-material';\r\n\r\nimport { cancleSearchStock, fetchSearchData } from \"store/slices/SearchSlice\"\r\nimport { setSearchWord, setTopSearchWord } from \"store/slices/EodDataSlice\"\r\nimport API from 'store/services/AxiosService'\r\nimport { paramsToQueryParam } from \"store/UrlUtils\";\r\n\r\nconst useStyles = makeStyles(() => ({\r\n Autocomplete: {\r\n borderRadius: 20\r\n },\r\n Txt: {\r\n color: 'black',\r\n fontSize: '13px'\r\n },\r\n TextField: {\r\n '& .MuiInputBase-root': {\r\n paddingTop: '0 !important',\r\n paddingBottom: '0 !important',\r\n paddingRight: '16px !important',\r\n '& fieldset': {\r\n border: '0 !important'\r\n },\r\n '& .MuiIconButton-root:not(.SearchLocker-Btn)': {\r\n display: 'none'\r\n },\r\n '& .SearchLocker-Btn': {\r\n padding: 0\r\n }\r\n }\r\n },\r\n SearchLocker: {\r\n borderLeft: 'solid 1px #c9c9c9',\r\n padding: '4px 11px',\r\n display: 'flex',\r\n alignItems: 'center',\r\n justifyContent: 'space-between',\r\n minWidth: '62px',\r\n transform: 'translate(16px, 0)',\r\n cursor: 'pointer'\r\n }\r\n}))\r\n\r\nconst StyledPopper = styled(Popper)({\r\n [`& .${autocompleteClasses.listbox}`]: {\r\n boxSizing: 'border-box',\r\n '& ul': {\r\n padding: 0,\r\n margin: 0,\r\n },\r\n },\r\n})\r\n\r\n/* Home component */\r\nfunction sleep(delay = 0) {\r\n return new Promise((resolve) => {\r\n setTimeout(resolve, delay)\r\n })\r\n}\r\n\r\nconst Search = (props) => {\r\n const history = useHistory()\r\n const classes = useStyles()\r\n const dispatch = useDispatch()\r\n const step2Index = useSelector(state => state.eodData.step2Index)\r\n const searchResults = useSelector(state => state.search.searchResults)\r\n const { feedSource, feedDatabaseCode } = useSelector(state => state.eodData);\r\n\r\n let suggestions = []\r\n const [state, setState] = useState({\r\n searchWord: null,\r\n redirect: false\r\n })\r\n const [isLocked, setIsLocked] = useState(false)\r\n const [loading, setLoading] = useState(false)\r\n\r\n // const handleClick = useCallback(() => {\r\n // dispatch(cancleSearchStock())\r\n // if(step2Index === 1){\r\n // dispatch(setSearchWord({\r\n // field: 'databaseCode',\r\n // value: state.searchWord\r\n // }))\r\n // }else if(step2Index === 2){\r\n // dispatch(setSearchWord({\r\n // field: 'productCode',\r\n // value: state.searchWord\r\n // }))\r\n // }\r\n // }, [\r\n // step2Index,\r\n // state.searchWord\r\n // ]);\r\n\r\n async function findSuggestions(value) {\r\n try {\r\n const response = await API.get('/eod/search_suggestions' + paramsToQueryParam({ \"suggestion\": value }))\r\n if (response) {\r\n response.data.forEach(element => suggestions.push(element[0]))\r\n // setOptions(suggestions)\r\n setLoading(false)\r\n }\r\n } catch (error) {\r\n console.error(error)\r\n }\r\n }\r\n\r\n const search = useCallback(async (value) => {\r\n try {\r\n let results = []\r\n if (value) {\r\n setLoading(true)\r\n const params = {\r\n search: value,\r\n global: true\r\n }\r\n if (feedSource && feedSource !== '') {\r\n params.global = false;\r\n params.feed_source = feedSource\r\n }\r\n if (feedDatabaseCode && feedDatabaseCode !== '') {\r\n params.database_code = feedDatabaseCode\r\n }\r\n await dispatch(\r\n fetchSearchData(params)\r\n )\r\n setLoading(false)\r\n }\r\n } catch (error) {\r\n setLoading(false)\r\n console.error(error)\r\n }\r\n }, [\r\n feedSource,\r\n feedDatabaseCode,\r\n dispatch,\r\n setLoading\r\n ])\r\n\r\n function suggest(value) {\r\n if (value === '') {\r\n return ''\r\n }\r\n search(value)\r\n setState({\r\n ...state, searchWord: value\r\n })\r\n }\r\n\r\n const change = (event, value, reason) => {\r\n if (reason === \"selectOption\") {\r\n const url = `/product/detail/${encodeURIComponent(value.feed_source)}/${encodeURIComponent(value.database_code)}/${encodeURIComponent(value.product_code)}`\r\n history.push(url)\r\n }\r\n }\r\n const handleSearch = async (event) => {\r\n if (event.key === 'Enter') {\r\n if (state.searchWord !== '') {\r\n await search(state.searchWord)\r\n dispatch(setTopSearchWord(state.searchWord))\r\n }\r\n }\r\n }\r\n\r\n const [open, setOpen] = useState(false)\r\n\r\n\r\n useEffect(() => {\r\n let active = true\r\n\r\n if (!loading) {\r\n return undefined\r\n }\r\n\r\n (async () => {\r\n await sleep(1e3) // For demo purposes.\r\n })()\r\n\r\n return () => {\r\n active = false\r\n }\r\n }, [loading])\r\n\r\n useEffect(() => {\r\n if (!open) {\r\n // setOptions([])\r\n }\r\n }, [open])\r\n \r\n return (\r\n <>\r\n {\r\n setOpen(true)\r\n }}\r\n PopperComponent={StyledPopper}\r\n onClose={() => {\r\n setOpen(false)\r\n }}\r\n value={state.searchWord}\r\n filterOptions={(x) => x}\r\n onInputChange={\r\n (event, value, reason) => {\r\n suggest(value)\r\n }}\r\n onChange={change}\r\n onKeyPress={handleSearch}\r\n isOptionEqualToValue={(option, value) => option.label === value}\r\n className={classes.Autocomplete}\r\n options={searchResults}\r\n loading={loading}\r\n renderInput={(params) => (\r\n \r\n \r\n \r\n \r\n {params.InputProps.endAdornment}\r\n \r\n ),\r\n // endAdornment: (\r\n // \r\n // {loading && (\r\n // \r\n // )}\r\n // {params.InputProps.endAdornment}\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\nexport default Search\r\n","import React, { useState } from \"react\";\r\nimport { Link } from \"react-router-dom\";\r\n\r\nimport { getAuth, signOut } from \"firebase/auth\"\r\nimport { initializeApp } from \"firebase/app\"\r\n\r\nimport { Box, Divider, List, ListItem, ListItemText, Popover, ListItemButton } from \"@mui/material\";\r\nimport { makeStyles } from \"@mui/styles\";\r\nimport SearchComponent from \"components/layout/header/Search\";\r\n\r\nimport PlotterLogo from 'assets/images/plotter_logo.png';\r\nimport UserAvatar from 'assets/images/avatar/user.png';\r\n\r\nlet firebaseConfig = null\r\n// console.log(process.env.REACT_APP_IS_DEV, 'hi???')\r\nif (process.env.REACT_APP_IS_DEV !== 'False') {\r\n // console.log(\"Hi??\")\r\n firebaseConfig = {\r\n apiKey: \"AIzaSyADoj1zqULSVKjdxa5LOh3Opp3jyxDITpw\",\r\n authDomain: \"plotter-development.firebaseapp.com\",\r\n projectId: \"plotter-development\",\r\n storageBucket: \"plotter-development.appspot.com\",\r\n messagingSenderId: \"473093143182\",\r\n appId: \"1:473093143182:web:7344e0f679c90f29eee7df\"\r\n }\r\n} else {\r\n firebaseConfig = {\r\n apiKey: \"AIzaSyCrMFrMnzCzNV9KxQleJScNkayhrp1H9Bk\",\r\n authDomain: \"celestial-smile-235321.firebaseapp.com\",\r\n projectId: \"celestial-smile-235321\",\r\n storageBucket: \"celestial-smile-235321.appspot.com\",\r\n messagingSenderId: \"1012059516846\",\r\n appId: \"1:1012059516846:web:eb29254b263ed1fbde623f\"\r\n }\r\n}\r\nconst app = initializeApp(firebaseConfig)\r\n\r\nconst auth = getAuth();\r\nconst useStyles = makeStyles(() => ({\r\n root: {},\r\n PlotterLogo: {\r\n width: '111px',\r\n display: 'flex',\r\n alignItems: 'center',\r\n justifyContent: 'center',\r\n paddingRight: '18px',\r\n '& a': {\r\n color: '#00acac',\r\n '& img': {\r\n width: '56px',\r\n },\r\n '& svg': {\r\n fontSize: '29px',\r\n }\r\n }\r\n },\r\n SearchBox: {\r\n // flexGrow: 1,\r\n // width: '390px',\r\n // maxWidth: '390px'\r\n flex: 1,\r\n marginRight: '27px'\r\n },\r\n SearchBoxInner: {\r\n width: '100%',\r\n // maxWidth: '700px',\r\n margin: '0 auto'\r\n },\r\n NavigationBox: {\r\n flexGrow: 'initial'\r\n },\r\n NavigationList: {\r\n alignItems: 'center'\r\n },\r\n NavItem: {\r\n cursor: 'pointer',\r\n borderRadius: '50%',\r\n background: 'white',\r\n height: '40px',\r\n width: '40px',\r\n position: 'relative',\r\n display: 'flex',\r\n alignItems: 'center',\r\n justifyContent: 'center',\r\n border: 'solid 1px white',\r\n marginRight: 10,\r\n padding: '0 !important',\r\n transition: 'all ease-out .3s',\r\n '&:hover': {\r\n transform: 'scale(1.03)'\r\n },\r\n '& svg': {\r\n width: '20px',\r\n height: '20px'\r\n }\r\n },\r\n NavItemPic: {\r\n width: '100%',\r\n height: '100%',\r\n display: 'flex',\r\n justifyContent: 'center',\r\n alignItems: 'center',\r\n borderRadius: '50%',\r\n '& img': {\r\n width: '100%',\r\n borderRadius: '50%',\r\n }\r\n },\r\n ListItem: {\r\n padding: 0,\r\n width: 200,\r\n }\r\n}))\r\n\r\n/* Home component */\r\nexport default function MainHeader(props) {\r\n const classes = useStyles()\r\n\r\n const logout = () => {\r\n signOut(auth).then(() => {\r\n // Sign-out successful.\r\n }).catch((error) => {\r\n // An error happened.\r\n })\r\n }\r\n const [anchorEl, setAnchorEl] = useState(null);\r\n\r\n const handleClick = (event) => {\r\n setAnchorEl(event.currentTarget);\r\n };\r\n\r\n const handleClose = () => {\r\n setAnchorEl(null);\r\n };\r\n\r\n const open = Boolean(anchorEl);\r\n const id = open ? 'simple-popover' : undefined;\r\n\r\n return (\r\n \r\n )\r\n}\r\n","import { createSlice } from '@reduxjs/toolkit';\r\n\r\nconst initialState = {\r\n isStep2Shown: true,\r\n step2Sidebar: 'source',\r\n step1Sidebar: 'data',\r\n};\r\n\r\nconst appLayouSlice = createSlice({\r\n name: 'appLayout',\r\n initialState,\r\n reducers: {\r\n setVisibleStep2: (state, action) => {\r\n state.isStep2Shown = action.payload\r\n },\r\n selectStep2Sidebar: (state, action) => {\r\n state.step2Sidebar = action.payload\r\n },\r\n selectStep1Sidebar: (state, action) => {\r\n state.step1Sidebar = action.payload\r\n },\r\n },\r\n extraReducers: {},\r\n});\r\n\r\nexport const prepareSelector = state => state.appLayout;\r\nexport const {\r\n setVisibleStep2,\r\n selectStep2Sidebar,\r\n selectStep1Sidebar\r\n} = appLayouSlice.actions\r\n\r\nexport default appLayouSlice.reducer;\r\n","import React, { useState, useEffect } from \"react\";\r\nimport {\r\n Tooltip,\r\n styled,\r\n} from \"@mui/material\";\r\nimport { tooltipClasses } from '@mui/material/Tooltip';\r\n\r\nconst StyledTooltip = styled(({ className, ...props }) => {\r\n const [open, setOpen] = useState(false)\r\n useEffect(() => {\r\n setOpen(props.open)\r\n }, [props.open])\r\n return setOpen(true)}\r\n onClose={() => setOpen(false)}\r\n arrow\r\n classes={{ popper: className }}\r\n />\r\n})(({ theme }) => ({\r\n [`& .${tooltipClasses.tooltip}`]: {\r\n backgroundColor: 'white',\r\n color: 'rgba(0, 0, 0, 0.87)',\r\n maxWidth: 320,\r\n fontSize: theme.typography.pxToRem(12),\r\n // border: '1px solid #dadde9',\r\n transform: 'translateX(-35px) !important',\r\n padding: '12px 10px',\r\n borderRadius: '7px',\r\n boxShadow: '1px 1px 9px -3px #717171'\r\n },\r\n [`& .${tooltipClasses.arrow}`]: {\r\n color: 'white',\r\n // border: '1px solid #dadde9',\r\n },\r\n}));\r\n\r\nexport default StyledTooltip","import {makeStyles} from \"@mui/styles\";\r\n\r\nconst useStyles = makeStyles(() => ({\r\n ListBox: {\r\n flexDirection: 'row',\r\n justifyContent: 'center',\r\n alignItems: 'center',\r\n gap: 12\r\n }\r\n}))\r\n\r\nexport default useStyles","import React from 'react'\r\nimport { SvgIcon } from \"@mui/material\";\r\n\r\nconst DefaultDataSetLogoIcon = (props) => {\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n // fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\"\r\n );\r\n};\r\n\r\nexport default DefaultDataSetLogoIcon;\r\n","import React from 'react';\r\nimport {makeStyles} from \"@mui/styles\";\r\nimport { setFeedSource } from 'store/slices/EodDataSlice'\r\nimport { useDispatch } from 'react-redux';\r\nimport {\r\n Box, Divider,\r\n} from \"@mui/material\"\r\nimport DefaultDataSetLogoIcon from 'components/icons/DefaultDataSetLogo';\r\n\r\nconst useStyles = makeStyles((theme) => ({\r\n ListItem: {\r\n padding: 12,\r\n gap: 12,\r\n background: '#F5F8FF',\r\n display: 'flex',\r\n flexDirection: 'row',\r\n alignItems: 'center',\r\n cursor: 'pointer'\r\n },\r\n ListItemDivider: {\r\n background: '#E5ECFA'\r\n },\r\n Selected: {\r\n background: 'white'\r\n }\r\n}));\r\n\r\nexport default function ListItem(props) {\r\n const dispatch = useDispatch()\r\n const classes = useStyles();\r\n const { showDefaultLogo = false, logo = '' } = props\r\n\r\n return (\r\n <>\r\n {\r\n if(props.onClick) props.onClick()\r\n }}>\r\n {\r\n logo && logo !== '' ? (\r\n feed-logo\r\n ) : showDefaultLogo ? (\r\n \r\n \r\n \r\n ) : <>\r\n }\r\n \r\n {props.children}\r\n \r\n \r\n \r\n \r\n );\r\n}","import React from 'react';\r\nimport {makeStyles} from \"@mui/styles\";\r\nimport { Box } from '@mui/material';\r\n\r\nconst useStyles = makeStyles(() => ({\r\n root: {\r\n position: 'relative',\r\n height: '100%'\r\n },\r\n loader: {\r\n color: '#1976d2',\r\n fontSize: '7px',\r\n position: 'relative',\r\n textIndent: '-9999em',\r\n transform: 'translateZ(0) translateY(7em)',\r\n animationDelay: '-0.16s',\r\n borderRadius: '50%',\r\n width: '2.5em',\r\n height: '2.5em',\r\n animationFillMode: 'both',\r\n animation: '$bblfadinout 1.8s infinite ease-in-out',\r\n \"&::before, &::after\": {\r\n content: \"''\",\r\n position: 'absolute',\r\n top: 0,\r\n borderRadius: '50%',\r\n width: '2.5em',\r\n height: '2.5em',\r\n animationFillMode: 'both',\r\n animation: '$bblfadinout 1.8s infinite ease-in-out',\r\n },\r\n \"&::before\": {\r\n left: '-3.5em',\r\n animationDelay: '-0.32s',\r\n },\r\n \"&::after\": {\r\n left: '3.5em',\r\n }\r\n },\r\n \"@keyframes bblfadinout\": {\r\n \"0%, 80%, 100%\": {\r\n boxShadow: '0 2.5em 0 -1.3em'\r\n },\r\n \"40%\": {\r\n boxShadow: '0 2.5em 0 0'\r\n }\r\n },\r\n loaderWrap: {\r\n display: 'flex',\r\n justifyContent: 'center',\r\n // alignItems: 'center',\r\n position: 'absolute',\r\n height: '100%',\r\n width: '100%',\r\n background: '#a3a3a314',\r\n },\r\n noDisplay: {\r\n display: 'none'\r\n }\r\n}))\r\n\r\nexport default function LoadingOverlay(props) {\r\n const classes = useStyles();\r\n\r\n return (\r\n <>\r\n \r\n {\r\n props.isLoading && (\r\n \r\n \r\n \r\n )\r\n }\r\n {props.children}\r\n \r\n \r\n );\r\n}","import React, { useMemo } from 'react';\r\nimport {\r\n Box,\r\n} from \"@mui/material\"\r\n\r\nimport useStyles from './useStyles'\r\nimport ListItem from './Details/ListItem';\r\nimport LoadingOverlay from 'components/common/LoadingOverlay';\r\nimport { useSelector } from 'react-redux';\r\n\r\nexport default function StockSource({\r\n searchWord,\r\n changeStep2Index\r\n}) {\r\n const classes = useStyles();\r\n const isLoading = useSelector(state => state.eodData.loadingFeedSources)\r\n const feedSources = useSelector(state => state.eodData.sources)\r\n\r\n const filteredFeedSources = useMemo(() => {\r\n let _feedSource = [...feedSources]\r\n if (searchWord && searchWord !== '') {\r\n _feedSource = feedSources.filter(item => item.feed_source?.toLowerCase().indexOf(searchWord.toLowerCase()) > -1 || item.human_readable_name?.toLowerCase().indexOf(searchWord) > -1)\r\n }\r\n _feedSource = _feedSource.sort((a, b) => {\r\n // Use human_readable_name if available, otherwise use feed_source\r\n const aName = a?.human_readable_name || a?.feed_source;\r\n const bName = b?.human_readable_name || b?.feed_source;\r\n\r\n // Compare the names alphabetically\r\n // return aName - bName\r\n return aName.localeCompare(bName);\r\n })\r\n return _feedSource\r\n\r\n }, [\r\n feedSources,\r\n searchWord\r\n ])\r\n\r\n return (\r\n \r\n \r\n {\r\n filteredFeedSources && filteredFeedSources.length < 1 && !isLoading ? (\r\n
There is no Feed Source
\r\n ) : (\r\n \r\n {\r\n filteredFeedSources?.map((item, index) => {\r\n return {\r\n changeStep2Index(1, item.feed_source);\r\n }}\r\n key={index}\r\n logo={item.logo_path}\r\n showDefaultLogo={true}\r\n >\r\n {item.human_readable_name || item.feed_source}\r\n \r\n })\r\n }\r\n \r\n )\r\n }\r\n
\r\n
\r\n );\r\n}","import React, { useCallback, useEffect, useRef, useState } from 'react';\r\nimport {useParams} from \"react-router-dom\"\r\nimport { useHistory } from \"react-router-dom\"\r\nimport { clearDatabaseCodes, fetchFeedDatabaseCodes } from 'store/slices/EodDataSlice';\r\nimport { useDispatch, useSelector } from 'react-redux';\r\nimport { Box } from \"@mui/material\";\r\nimport ListItem from './Details/ListItem';\r\nimport LoadingOverlay from 'components/common/LoadingOverlay';\r\n\r\n// const productPath = '/product/detail'\r\nconst productPath = '/product'\r\n\r\nconst ListItemComponent = ({item, active, clickHandler, setSelected, setHovered}) => (\r\n clickHandler(item)}\r\n onMouseEnter={() => setSelected(item)}\r\n onMouseLeave={() => setHovered(undefined)}\r\n >\r\n \r\n {item.name ?? item.database_code}\r\n \r\n \r\n)\r\n\r\nconst Lists = (props) => {\r\n const { databaseCodes: items = [] } = props;\r\n const history = useHistory()\r\n const { feedSource: pFeedSource, databaseCode: pDatabaseCode } = useParams()\r\n const step1Sidebar = useSelector(state => state.appLayout.step1Sidebar)\r\n const [selected, setSelected] = useState(undefined)\r\n const [cursor, setCursor] = useState(0)\r\n const [hovered, setHovered] = useState(undefined)\r\n const {feedSource} = props\r\n const openStock = (item) => {\r\n if (item !== undefined) {\r\n if (feedSource === '' || item.database_code === '') {\r\n return\r\n }\r\n if(feedSource == 'BEA' && item.database_code === \"MNE\"){\r\n // history.push(`/bea_mne`)\r\n }\r\n if(item.not_have_product){\r\n // if(feedSource === 'ZILLOW' && item.databaseCode === 'DATA'){\r\n // props.changeStep2Index(2, item.database_code) \r\n // }else{\r\n // history.push(`${productPath}/${encodeURIComponent(feedSource)}/${encodeURIComponent(item.database_code)}/${encodeURIComponent('')}`)\r\n // }\r\n }\r\n }\r\n }\r\n\r\n useEffect(() => {\r\n if (items.length && hovered) {\r\n setCursor(items.indexOf(hovered))\r\n }\r\n }, [hovered])\r\n\r\n const clickHandler = (item) => {\r\n if (feedSource === '' || item.database_code === '') {\r\n return\r\n }\r\n if(step1Sidebar === 'qa'){\r\n history.push(`/qa/${feedSource}/${item.database_code}`)\r\n return\r\n }\r\n if(item.feed_source == 'BEA' && item.database_code === \"MNE\"){\r\n history.push(`/bea_mne`)\r\n return;\r\n }\r\n if(item.not_have_product){\r\n // if(feedSource === 'ZILLOW' && item.databaseCode === 'DATA'){\r\n // props.changeStep2Index(2, item.database_code) \r\n // }else{\r\n history.push(`${productPath}/${encodeURIComponent(feedSource)}/${encodeURIComponent(item.database_code)}/${encodeURIComponent('')}`)\r\n // }\r\n }else{\r\n if(item.section_count && item.section_count > 0){\r\n props.changeStep2Index(2, item.database_code)\r\n }else{\r\n props.changeStep2Index(3, item.database_code, 'databaseCode')\r\n }\r\n }\r\n setCursor(items.indexOf(item))\r\n }\r\n\r\n let pressedKeys = {}\r\n\r\n //When use press key\r\n function keyDownHandler(e) {\r\n pressedKeys[e.keyCode] = true\r\n if (items.length) {\r\n if (e.key === 'ArrowDown') {\r\n setCursor(prevState => {\r\n return prevState < items.length - 1 ? cursor + 1 : cursor\r\n })\r\n } else if (e.key === 'ArrowUp') {\r\n setCursor(prevState => {\r\n return prevState > 0 ? prevState - 1 : prevState\r\n })\r\n }\r\n }\r\n }\r\n\r\n //When user release key pressing\r\n function keyUpHandler(e) {\r\n pressedKeys[e.keyCode] = false\r\n const item = items[cursor]\r\n openStock(item)\r\n }\r\n\r\n React.useEffect(() => {\r\n window.addEventListener(\"keydown\", keyDownHandler)\r\n window.addEventListener(\"keyup\", keyUpHandler)\r\n return () => {\r\n if(window && window.removeEventListener){\r\n window.removeEventListener(\"keydown\", keyDownHandler)\r\n window.removeEventListener(\"keyup\", keyUpHandler)\r\n }\r\n }\r\n })\r\n\r\n return (\r\n <>\r\n {items.map((item, i) => (\r\n \r\n ))}\r\n \r\n )\r\n}\r\n\r\nconst DatabaseCodeBox = (props) => {\r\n const { isLoading, triggerFetchDatabaseCodes } = props;\r\n\r\n const databaseCodes = useSelector(state => state.eodData.databaseCodes)\r\n const isFull = useSelector(state => state.eodData.isDatabaseCodesFull)\r\n\r\n const ref = useRef(null)\r\n\r\n \r\n const loadMore = () => {\r\n const params = {}\r\n if(isFull || isLoading) return\r\n params.startIndex = databaseCodes?.length\r\n triggerFetchDatabaseCodes({\r\n ...params\r\n })\r\n }\r\n \r\n const scrollHandler = useCallback(() => {\r\n if (\r\n ref.current &&\r\n databaseCodes.length > 0 &&\r\n ref.current.scrollTop + ref.current.clientHeight >=\r\n ref.current.scrollHeight\r\n ) {\r\n if (isFull) return false\r\n loadMore()\r\n }\r\n }, [\r\n databaseCodes,\r\n isFull,\r\n ])\r\n \r\n useEffect(() => {\r\n if(ref.current){\r\n ref.current.addEventListener(\"scroll\", scrollHandler)\r\n }\r\n return () => {\r\n if(ref.current && ref.current.removeEventListener){\r\n ref.current.removeEventListener('scroll', scrollHandler)\r\n }\r\n }\r\n }, [\r\n ref,\r\n databaseCodes\r\n ]);\r\n return \r\n {\r\n databaseCodes?.length > 0 ? (\r\n \r\n ) : !isLoading ? (\r\n There is no Database Codes\r\n ) : <>\r\n }\r\n \r\n}\r\nconst SearchResultBox = (props) => {\r\n const { isLoading, triggerFetchDatabaseCodes, searchWord } = props;\r\n const databaseCodes = useSelector(state => state.eodData.filterDatabaseCodes)\r\n const isFilterFull = useSelector(state => state.eodData.isFilterDatabaseCodesFull)\r\n\r\n const ref = useRef(null);\r\n\r\n const loadMore = () => {\r\n const params = {}\r\n if(isFilterFull || isLoading) return \r\n params.startIndex = databaseCodes?.length\r\n params.searchWord = searchWord\r\n triggerFetchDatabaseCodes({\r\n ...params\r\n })\r\n }\r\n \r\n const scrollHandler = useCallback(() => {\r\n if (\r\n ref.current &&\r\n databaseCodes.length > 0 &&\r\n ref.current.scrollTop + ref.current.clientHeight >=\r\n ref.current.scrollHeight\r\n ) {\r\n if (isFilterFull) return false\r\n loadMore()\r\n }\r\n }, [\r\n searchWord,\r\n databaseCodes,\r\n isFilterFull\r\n ])\r\n \r\n useEffect(() => { \r\n if(ref.current){\r\n ref.current.addEventListener(\"scroll\", scrollHandler)\r\n }\r\n return () => {\r\n if(ref.current && ref.current.removeEventListener){\r\n ref.current.removeEventListener('scroll', scrollHandler)\r\n }\r\n }\r\n }, [\r\n ref,\r\n databaseCodes\r\n ]);\r\n \r\n return \r\n {\r\n databaseCodes?.length > 0 ? (\r\n \r\n ) : !isLoading ? (\r\n There is no Database Codes\r\n ) : <>\r\n }\r\n \r\n}\r\n\r\nexport default function StockDatabaseCodes(props) {\r\n const { feedSource, searchWord = '' } = props\r\n const dispatch = useDispatch();\r\n \r\n const isLoading = useSelector(state => state.eodData.loadingDatabaseCodes)\r\n \r\n \r\n const triggerFetchDatabaseCodes = (params = {}) => {\r\n if(feedSource && feedSource !== ''){\r\n dispatch(fetchFeedDatabaseCodes({\r\n feedSource: feedSource,\r\n ...params\r\n }))\r\n }\r\n }\r\n useEffect(() => {\r\n if(feedSource && feedSource !== ''){\r\n if(!searchWord || searchWord === ''){\r\n dispatch(clearDatabaseCodes())\r\n triggerFetchDatabaseCodes()\r\n }else{\r\n dispatch(clearDatabaseCodes({ flag: 'search' }))\r\n triggerFetchDatabaseCodes({\r\n searchWord\r\n })\r\n }\r\n }\r\n }, [\r\n feedSource,\r\n searchWord\r\n ])\r\n \r\n return (\r\n \r\n \r\n {\r\n searchWord === '' ? (\r\n \r\n ) : (\r\n \r\n )\r\n }\r\n \r\n \r\n );\r\n}","import React, { useEffect, useState, useRef, useCallback } from 'react'\r\nimport { useDispatch, useSelector } from \"react-redux\"\r\nimport { useParams, useHistory } from 'react-router-dom'\r\nimport {\r\n Box\r\n} from \"@mui/material\"\r\n\r\nimport ListItem from './Details/ListItem';\r\n\r\nimport { fetchStockProducts, clearStockProducts } from \"store/slices/EodDataSlice\";\r\nimport { fetchSearchData } from 'store/slices/SearchSlice';\r\n\r\n// const productPath = '/product/detail'\r\nconst productPath = '/product'\r\n\r\nconst ListItemComponent = ({feedSource, item, active, clickHandler, setSelected, setHovered }) => (\r\n clickHandler(item)}\r\n onMouseEnter={() => setSelected(item)}\r\n onMouseLeave={() => setHovered(undefined)}\r\n >\r\n \r\n \r\n {\r\n item.product_code\r\n }\r\n \r\n \r\n {\r\n item.title ? ` ${item?.title?.replace('EOD/', '')}` : ''\r\n }\r\n \r\n {/* {\r\n ['Barchart', 'ALPACA'].indexOf(feedSource) > -1 ? item.product_code : (item.title ? item.title : item.product_code).replace('EOD/', '') \r\n } */}\r\n \r\n \r\n)\r\n\r\nconst Lists = (props) => {\r\n const history = useHistory();\r\n const [selected, setSelected] = useState(undefined)\r\n const [cursor, setCursor] = useState(0)\r\n const [hovered, setHovered] = useState(undefined)\r\n const items = props.productCodes\r\n const { feedSource, feedDatabaseCode } = props\r\n const openStock = (item) => {\r\n if (item !== undefined && item.product_code !== undefined && item.series_type !== undefined) {\r\n if (feedSource === '' || feedDatabaseCode === '' || item.product_code === '') {\r\n return\r\n }\r\n // dispatch(setProductData(item))\r\n history.push(`${productPath}/${encodeURIComponent(feedSource)}/${encodeURIComponent(feedDatabaseCode)}/${encodeURIComponent(item.product_code)}`)\r\n }\r\n }\r\n\r\n useEffect(() => {\r\n if (items.length && hovered) {\r\n setCursor(items.indexOf(hovered))\r\n }\r\n }, [hovered])\r\n\r\n const clickHandler = (item) => {\r\n console.log(feedSource, feedDatabaseCode, item.product_code)\r\n if (feedSource === '' || feedDatabaseCode === '') {\r\n return\r\n }\r\n let innerProductPath = productPath\r\n if(feedSource === 'BEA'){\r\n innerProductPath += '/detail'\r\n }\r\n if(item.product_code === ''){\r\n history.push(`${innerProductPath}/${encodeURIComponent(feedSource)}/${encodeURIComponent(feedDatabaseCode)}/${encodeURIComponent('')}`)\r\n }else{\r\n props.handleProductCode(item.product_code)\r\n history.push(`${innerProductPath}/${encodeURIComponent(feedSource)}/${encodeURIComponent(feedDatabaseCode)}/${encodeURIComponent(item.product_code)}`)\r\n // dispatch(setProductData(item))\r\n }\r\n setCursor(items.indexOf(item))\r\n }\r\n\r\n let pressedKeys = {}\r\n\r\n //When use press key\r\n function keyDownHandler(e) {\r\n pressedKeys[e.keyCode] = true\r\n if (items.length) {\r\n if (e.key === 'ArrowDown') {\r\n setCursor(prevState => {\r\n return prevState < items.length - 1 ? cursor + 1 : cursor\r\n })\r\n } else if (e.key === 'ArrowUp') {\r\n setCursor(prevState => {\r\n return prevState > 0 ? prevState - 1 : prevState\r\n })\r\n }\r\n }\r\n }\r\n\r\n //When user release key pressing\r\n function keyUpHandler(e) {\r\n pressedKeys[e.keyCode] = false\r\n const item = items[cursor]\r\n openStock(item)\r\n }\r\n\r\n React.useEffect(() => {\r\n window.addEventListener(\"keydown\", keyDownHandler)\r\n window.addEventListener(\"keyup\", keyUpHandler)\r\n return () => {\r\n if (window && window.removeEventListener) {\r\n window.removeEventListener(\"keydown\", keyDownHandler)\r\n window.removeEventListener(\"keyup\", keyUpHandler)\r\n }\r\n }\r\n })\r\n const selectedProductName = useSelector(state => state.productData.productName)\r\n\r\n return (\r\n <>\r\n {items.map((item, i) => (\r\n \r\n ))}\r\n \r\n )\r\n}\r\n\r\nconst StockProductCodes = (props) => {\r\n const dispatch = useDispatch();\r\n const history = useHistory()\r\n const {\r\n productCode: mProductCode,\r\n databaseCode: mDatabaseCode,\r\n feedSource: mFeedSource,\r\n } = useParams()\r\n const ref = useRef(null)\r\n const isLoading = useSelector(state => state.eodData.loadingInProgress)\r\n const [isSearching, setIsSearching] = useState(false)\r\n const stockProducts = useSelector(state => state.eodData.stockProducts)\r\n const isFull = useSelector(state => state.eodData.isStockProductsFull)\r\n const { feedSource, feedDatabaseCode, sectionName, searchWord, value: stepIndex } = props\r\n const [productCode, setProductCode] = useState('')\r\n const [searchResults, setResults] = useState([])\r\n const scrollHandler = useCallback(() => {\r\n if (\r\n stockProducts.length > 0 &&\r\n ref.current.scrollTop + ref.current.clientHeight >=\r\n ref.current.scrollHeight\r\n ) {\r\n if (!isFull && !isLoading && !isSearching) {\r\n dispatch(fetchStockProducts({\r\n feed_source: feedSource,\r\n database_code: feedDatabaseCode,\r\n start_index: stockProducts?.length,\r\n section_name: sectionName\r\n }))\r\n }\r\n }\r\n }, [\r\n feedSource,\r\n feedDatabaseCode,\r\n sectionName,\r\n stockProducts,\r\n isFull\r\n ])\r\n useEffect(() => {\r\n if (mProductCode && mDatabaseCode === feedDatabaseCode && mFeedSource === feedSource) {\r\n setProductCode(mProductCode)\r\n }\r\n if (ref.current) {\r\n ref.current.addEventListener(\"scroll\", scrollHandler)\r\n }\r\n return () => {\r\n if (ref.current && ref.current.removeEventListener) {\r\n ref.current.removeEventListener('scroll', scrollHandler)\r\n }\r\n setProductCode('')\r\n }\r\n }, [\r\n ref,\r\n mProductCode,\r\n mDatabaseCode,\r\n mFeedSource,\r\n stockProducts,\r\n isFull\r\n ]);\r\n useEffect(() => {\r\n if (feedSource && feedDatabaseCode && stepIndex === 3) {\r\n if (searchWord === '') {\r\n // this.props.clearStockProducts()\r\n dispatch(clearStockProducts())\r\n dispatch(fetchStockProducts({\r\n feed_source: feedSource,\r\n database_code: feedDatabaseCode,\r\n section_name: sectionName,\r\n searchWord\r\n }))\r\n setResults([])\r\n } else {\r\n const params = {\r\n search: searchWord,\r\n global: false\r\n }\r\n if (feedSource !== '') {\r\n params.feed_source = feedSource\r\n }\r\n if (feedDatabaseCode !== '') {\r\n params.database_code = feedDatabaseCode\r\n }\r\n // if (sectionName && sectionName !== '') {\r\n // params.section_name = sectionName\r\n // }\r\n setIsSearching(true)\r\n try{\r\n dispatch(fetchSearchData(params)).then(r => {\r\n if (r.payload) {\r\n const { suggestions } = r.payload\r\n if (Array.isArray(suggestions)) {\r\n setResults([...suggestions]);\r\n }\r\n setIsSearching(false)\r\n }\r\n })\r\n }catch(e){\r\n setIsSearching(false)\r\n }\r\n }\r\n }\r\n }, [\r\n feedSource,\r\n feedDatabaseCode,\r\n sectionName,\r\n searchWord,\r\n stepIndex\r\n ])\r\n const loadingMoreStyle = {\r\n textAlign: 'center',\r\n marginTop: '10px',\r\n marginBottom: '20px'\r\n }\r\n\r\n return (\r\n \r\n {\r\n searchWord !== '' ? (\r\n isSearching ? (\r\n Loading...\r\n ) : searchResults.length < 1 ? (\r\n
There is no match
\r\n ) : (\r\n <>\r\n {\r\n searchResults?.map((item, index) => {\r\n return {\r\n const url = `${productPath}/${encodeURIComponent(item.value.feed_source)}/${encodeURIComponent(item.value.database_code)}/${encodeURIComponent(item.value.product_code)}`\r\n history.push(url)\r\n }}\r\n key={index}\r\n >\r\n {item.value.feed_source}/{item.value.database_code}/{item.value.product_code}\r\n \r\n })\r\n }\r\n \r\n )\r\n ) : (\r\n <>\r\n {\r\n isLoading ? Loading... : ''\r\n }\r\n \r\n )\r\n }\r\n
\r\n )\r\n}\r\n\r\nexport default StockProductCodes\r\n","import React, { useEffect, useState } from 'react';\r\nimport {useParams} from \"react-router-dom\"\r\nimport { clearSections, fetchFeedSections } from 'store/slices/EodDataSlice';\r\nimport { useDispatch, useSelector } from 'react-redux';\r\nimport { Box } from \"@mui/material\";\r\nimport ListItem from './Details/ListItem';\r\nimport LoadingOverlay from 'components/common/LoadingOverlay';\r\n\r\nconst ListItemComponent = ({item, active, clickHandler, setHovered}) => (\r\n clickHandler(item)}\r\n onMouseLeave={() => setHovered(undefined)}\r\n >\r\n \r\n {item.section_name} \r\n \r\n \r\n)\r\n\r\nconst Lists = (props) => {\r\n const { sections: items = [] } = props;\r\n const { feedSource: pFeedSource } = useParams()\r\n const [cursor, setCursor] = useState(0)\r\n const [hovered, setHovered] = useState(undefined)\r\n const {feedSource} = props\r\n\r\n useEffect(() => {\r\n if (items.length && hovered) {\r\n setCursor(items.indexOf(hovered))\r\n }\r\n }, [hovered])\r\n\r\n const clickHandler = (item) => {\r\n if (feedSource === '' || item.section_name === '') {\r\n return\r\n }\r\n props.changeStep2Index(3, item.section_name)\r\n setCursor(items.indexOf(item))\r\n }\r\n\r\n return (\r\n <>\r\n {items.map((item, i) => (\r\n \r\n ))}\r\n \r\n )\r\n}\r\n\r\nconst FeedSectionBox = (props) => {\r\n const { isLoading } = props;\r\n\r\n const sections = useSelector(state => state.eodData.sections)\r\n \r\n return \r\n {\r\n sections?.length > 0 ? (\r\n \r\n ) : !isLoading ? (\r\n There is no Section\r\n ) : <>\r\n }\r\n \r\n}\r\n\r\nexport default function StockSections(props) {\r\n const { feedSource, feedDatabaseCode: databaseCode, searchWord = '' } = props\r\n const dispatch = useDispatch();\r\n \r\n const isLoading = useSelector(state => state.eodData.loadingSections)\r\n \r\n \r\n const triggerFetchFeedSections = (params = {}) => {\r\n if(feedSource && feedSource !== ''){\r\n dispatch(fetchFeedSections({\r\n feedSource,\r\n databaseCode,\r\n ...params\r\n })).then(r => {\r\n console.log(r, 'r')\r\n })\r\n }\r\n }\r\n useEffect(() => {\r\n if(feedSource && feedSource !== '' && databaseCode && databaseCode !== ''){\r\n if(!searchWord || searchWord === ''){\r\n dispatch(clearSections())\r\n triggerFetchFeedSections()\r\n }else{\r\n dispatch(clearSections({ flag: 'search' }))\r\n triggerFetchFeedSections({searchWord})\r\n }\r\n }\r\n }, [\r\n feedSource,\r\n databaseCode,\r\n searchWord\r\n ])\r\n \r\n return (\r\n \r\n \r\n \r\n \r\n \r\n );\r\n}","import React, { useCallback, useMemo, useState } from \"react\";\r\nimport { useDispatch, useSelector } from \"react-redux\";\r\nimport { useHistory } from \"react-router-dom\"\r\nimport SwipeableViews from \"react-swipeable-views\";\r\n\r\nimport {\r\n Typography,\r\n Box,\r\n Divider,\r\n} from \"@mui/material\";\r\nimport { makeStyles } from \"@mui/styles\";\r\n\r\nimport StockSource from \"./StockSource\";\r\nimport StockDatabaseCodes from \"./StockDatabaseCodes\";\r\nimport StockProductCodes from \"./StockProductCodes\";\r\n\r\nimport {\r\n changeStep2Index,\r\n setFeedDatabaseCode,\r\n setFeedSource,\r\n clearStockProducts,\r\n setFeedProductCode,\r\n setFeedSectionName\r\n} from \"store/slices/EodDataSlice\"\r\n\r\nimport ListItem from \"./Details/ListItem\";\r\nimport StockSections from \"./StockSections\";\r\n// import SearchBox from \"./Details/SearchBox\";\r\n\r\nconst useStyles = makeStyles((theme) => ({\r\n root: {\r\n display: 'flex',\r\n flexDirection: 'column',\r\n height: '100%',\r\n position: 'absolute',\r\n width: '100%'\r\n },\r\n padding: {\r\n padding: '12px 12px 0 12px',\r\n },\r\n HeaderLabel: {\r\n fontStyle: 'normal',\r\n fontWeight: '600',\r\n fontSize: '20px',\r\n lineHeight: '28px',\r\n letterSpacing: '-0.02em',\r\n color: '#374151',\r\n marginBottom: 8,\r\n },\r\n BreadcrumbItem: {\r\n // display: 'inline-flex',\r\n flexDirection: 'column',\r\n justifyContent: 'center',\r\n alignItems: 'center',\r\n padding: '0px 8px',\r\n gap: '8px',\r\n height: '20px',\r\n background: theme.palette.smartGreen.main,\r\n borderRadius: '24px',\r\n color: 'white',\r\n fontFamily: 'Inter',\r\n fontStyle: 'normal',\r\n fontWeight: '500',\r\n fontSize: '12px',\r\n lineHeight: '20px',\r\n marginRight: 6,\r\n cursor: 'pointer',\r\n overflow: 'hidden',\r\n display: 'inline-block',\r\n textOverflow: 'ellipsis',\r\n whiteSpace: 'nowrap',\r\n textAlign: 'center',\r\n maxWidth: '250px',\r\n },\r\n BreadCrumbDivider: {\r\n background: '#E5ECFA',\r\n marginBottom: 12,\r\n },\r\n SelectedBreadcrumbItem: {\r\n background: theme.palette.smartGreen.main,\r\n cursor: 'initial'\r\n },\r\n SwipeableViewsContainer: {\r\n flex: '1 0 0',\r\n minHeight: 0,\r\n // overflow: 'auto',\r\n '&::-webkit-scrollbar': {\r\n width: 9,\r\n },\r\n /* Track */\r\n '&::-webkit-scrollbar-track': {\r\n background: '#e4e5e9',\r\n borderRadius: 4,\r\n },\r\n /* Handle */\r\n '&::-webkit-scrollbar-thumb': {\r\n background: '#b0b3bd',\r\n borderRadius: 4,\r\n },\r\n /* Handle on hover */\r\n '&::-webkit-scrollbar-thumb:hover': {\r\n background: '#9e1e1e',\r\n },\r\n },\r\n SwipeableViewsInner: {\r\n overflow: 'hidden',\r\n height: '100%',\r\n position: 'relative',\r\n '& .react-swipeable-view-container': {\r\n position: 'relative',\r\n height: '100%'\r\n },\r\n '& [data-swipeable=\"true\"]': {\r\n // overflow: 'initial !important',\r\n height: '100%'\r\n }\r\n }\r\n}))\r\n\r\nconst BreadcrumbItem = (props) => {\r\n const classes = useStyles()\r\n return {\r\n if (props.onClick) props.onClick()\r\n }}\r\n title={props.labelTxt}\r\n >\r\n {props.labelTxt}\r\n \r\n}\r\n\r\n/* Step2Sidebar's Source Container */\r\nconst StepSourceContainer = ({ wrapStyle }) => {\r\n const dispatch = useDispatch()\r\n const history = useHistory()\r\n const classes = useStyles()\r\n\r\n // const step1Sidebar = useSelector(state => state.appLayout.step1Sidebar)\r\n const step2Sidebar = useSelector(state => state.appLayout.step2Sidebar);\r\n const searchWords = useSelector(state => state.eodData.searchWords)\r\n const step2Index = useSelector(state => state.eodData.step2Index)\r\n const feedSource = useSelector(state => state.eodData.feedSource)\r\n const feedDatabaseCode = useSelector(state => state.eodData.feedDatabaseCode)\r\n const feedProductCode = useSelector(state => state.eodData.feedProductCode)\r\n const feedSectionName = useSelector(state => state.eodData.feedSectionName)\r\n const [results] = useState(null)\r\n\r\n const handelStep2Index = useCallback((index, val, flag = null) => {\r\n let updates = {\r\n feedSource, feedDatabaseCode, feedProductCode, feedSectionName\r\n };\r\n if (index === 1) {\r\n if (val !== undefined) {\r\n dispatch(setFeedSource(val))\r\n }\r\n updates.feedSource = val;\r\n updates.feedDatabaseCode = '';\r\n updates.feedSectionName = null;\r\n updates.feedProductCode = '';\r\n } else if (index === 2) {\r\n updates.feedDatabaseCode = val;\r\n if (val !== undefined) {\r\n dispatch(setFeedDatabaseCode(val))\r\n }\r\n updates.feedSectionName = null;\r\n updates.feedProductCode = '';\r\n } else if (index === 3) {\r\n if (flag === 'databaseCode') {\r\n updates.feedSectionName = ''\r\n updates.feedDatabaseCode = val\r\n } else {\r\n updates.feedSectionName = val;\r\n }\r\n updates.feedProductCode = '';\r\n // if (val !== undefined) {\r\n // dispatch(setFeedDatabaseCode(val))\r\n // }\r\n } else if (index === 0) {\r\n updates.feedSource = ''\r\n updates.feedDatabaseCode = '';\r\n updates.feedSectionName = null;\r\n updates.feedProductCode = '';\r\n }\r\n dispatch(clearStockProducts())\r\n dispatch(changeStep2Index(index))\r\n dispatch(setFeedSource(updates.feedSource))\r\n dispatch(setFeedDatabaseCode(updates.feedDatabaseCode))\r\n dispatch(setFeedProductCode(updates.feedProductCode))\r\n dispatch(setFeedSectionName(updates.feedSectionName))\r\n }, [\r\n feedSource,\r\n feedDatabaseCode,\r\n feedProductCode,\r\n feedSectionName\r\n ])\r\n\r\n const renderBreadCrumb = useMemo(() => {\r\n return \r\n \r\n {\r\n step2Index > 0 && (\r\n { handelStep2Index(0) }} />\r\n )\r\n }\r\n {\r\n step2Index >= 1 && (\r\n {\r\n if (step2Index > 1) handelStep2Index(1, feedSource)\r\n }}\r\n />\r\n )\r\n }\r\n {\r\n step2Index >= 2 && (\r\n {\r\n if (step2Index > 2) handelStep2Index(2, feedDatabaseCode)\r\n }}\r\n />\r\n )\r\n }\r\n \r\n }, [\r\n feedSource,\r\n feedDatabaseCode,\r\n step2Index\r\n ])\r\n const handleProductCode = (val) => {\r\n dispatch(setFeedProductCode(val))\r\n }\r\n const searchResults = useMemo(() => {\r\n // if(searchWord && searchWord !== ''){\r\n return results\r\n // }\r\n // return null\r\n }, [\r\n results,\r\n // searchWord\r\n ])\r\n // const searchWord = useMemo(() => {\r\n // if (step2Index === 0) {\r\n // return searchWords?.feedSource || ''\r\n // } else if (step2Index === 1) {\r\n // return searchWords?.databaseCode || ''\r\n // } else if (step2Index === 2) {\r\n // return searchWords?.productCode || ''\r\n // }\r\n // return ''\r\n // }, [\r\n // searchWords,\r\n // step2Index\r\n // ])\r\n return (\r\n \r\n \r\n \r\n Feed Source\r\n \r\n {renderBreadCrumb}\r\n {/* \r\n {\r\n const param = {value: newStr}\r\n if(step2Index === 0){\r\n param.field = 'feedSource'\r\n }else if(step2Index === 1){\r\n param.field = 'databaseCode'\r\n }else if(step2Index === 2){\r\n param.field = 'productCode'\r\n }\r\n dispatch(setSearchWord(param))\r\n }}\r\n />\r\n */}\r\n \r\n {\r\n Array.isArray(searchResults) ? (\r\n searchResults.length < 1 ? (\r\n
There is no match
\r\n ) : (\r\n \r\n {\r\n searchResults?.map((item, index) => {\r\n return {\r\n const url = `/product/${encodeURIComponent(item.value.feed_source)}/${encodeURIComponent(item.value.database_code)}/${encodeURIComponent(item.value.product_code)}`\r\n history.push(url)\r\n }}\r\n key={index}\r\n >\r\n {item.value.feed_source}/{item.value.database_code}/{item.value.product_code}\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\nexport default StepSourceContainer;","import React, {useCallback, useEffect, useMemo, useState} from \"react\";\r\nimport { useDispatch, useSelector } from \"react-redux\";\r\nimport { useHistory } from \"react-router-dom\"\r\nimport SwipeableViews from \"react-swipeable-views\";\r\n\r\nimport {\r\n Typography,\r\n Box,\r\n Divider,\r\n} from \"@mui/material\";\r\nimport { makeStyles } from \"@mui/styles\";\r\n\r\nimport StockDatabaseCodes from \"../sources/StockDatabaseCodes\";\r\nimport StockProductCodes from \"../sources/StockProductCodes\";\r\n\r\nimport {\r\n changeStep2Index,\r\n setFeedDatabaseCode,\r\n setFeedSource,\r\n clearStockProducts,\r\n setFeedProductCode,\r\n setFeedSectionName\r\n} from \"store/slices/EodDataSlice\"\r\n\r\nimport ListItem from \"../sources/Details/ListItem\";\r\nimport StockSections from \"../sources/StockSections\";\r\n// import SearchBox from \"./Details/SearchBox\";\r\n\r\nconst useStyles = makeStyles((theme) => ({\r\n root: {\r\n display: 'flex',\r\n flexDirection: 'column',\r\n height: '100%',\r\n position: 'absolute',\r\n width: '100%'\r\n },\r\n padding: {\r\n padding: '12px 12px 0 12px',\r\n },\r\n HeaderLabel: {\r\n fontStyle: 'normal',\r\n fontWeight: '600',\r\n fontSize: '20px',\r\n lineHeight: '28px',\r\n letterSpacing: '-0.02em',\r\n color: '#374151',\r\n marginBottom: 8,\r\n },\r\n BreadcrumbItem: {\r\n // display: 'inline-flex',\r\n flexDirection: 'column',\r\n justifyContent: 'center',\r\n alignItems: 'center',\r\n padding: '0px 8px',\r\n gap: '8px',\r\n height: '20px',\r\n background: theme.palette.smartGreen.main,\r\n borderRadius: '24px',\r\n color: 'white',\r\n fontFamily: 'Inter',\r\n fontStyle: 'normal',\r\n fontWeight: '500',\r\n fontSize: '12px',\r\n lineHeight: '20px',\r\n marginRight: 6,\r\n cursor: 'pointer',\r\n overflow: 'hidden',\r\n display: 'inline-block',\r\n textOverflow: 'ellipsis',\r\n whiteSpace: 'nowrap',\r\n textAlign: 'center',\r\n maxWidth: '250px',\r\n },\r\n BreadCrumbDivider: {\r\n background: '#E5ECFA',\r\n marginBottom: 12,\r\n },\r\n SelectedBreadcrumbItem: {\r\n background: theme.palette.smartGreen.main,\r\n cursor: 'initial'\r\n },\r\n SwipeableViewsContainer: {\r\n flex: '1 0 0',\r\n minHeight: 0,\r\n // overflow: 'auto',\r\n '&::-webkit-scrollbar': {\r\n width: 9,\r\n },\r\n /* Track */\r\n '&::-webkit-scrollbar-track': {\r\n background: '#e4e5e9',\r\n borderRadius: 4,\r\n },\r\n /* Handle */\r\n '&::-webkit-scrollbar-thumb': {\r\n background: '#b0b3bd',\r\n borderRadius: 4,\r\n },\r\n /* Handle on hover */\r\n '&::-webkit-scrollbar-thumb:hover': {\r\n background: '#9e1e1e',\r\n },\r\n },\r\n SwipeableViewsInner: {\r\n overflow: 'hidden',\r\n height: '100%',\r\n position: 'relative',\r\n '& .react-swipeable-view-container': {\r\n position: 'relative',\r\n height: '100%'\r\n },\r\n '& [data-swipeable=\"true\"]': {\r\n // overflow: 'initial !important',\r\n height: '100%'\r\n }\r\n }\r\n}))\r\n\r\nconst BreadcrumbItem = (props) => {\r\n const classes = useStyles()\r\n return {\r\n if (props.onClick) props.onClick()\r\n }}\r\n title={props.labelTxt}\r\n >\r\n {props.labelTxt}\r\n \r\n}\r\n\r\n/* Step2Sidebar's Polygon Container */\r\nconst PolygonContainer = ({ wrapStyle }) => {\r\n const dispatch = useDispatch()\r\n const history = useHistory()\r\n const classes = useStyles()\r\n\r\n // const step1Sidebar = useSelector(state => state.appLayout.step1Sidebar)\r\n const step2Sidebar = useSelector(state => state.appLayout.step2Sidebar);\r\n const searchWords = useSelector(state => state.eodData.searchWords)\r\n const step2Index = useSelector(state => state.eodData.step2Index)\r\n const feedSource = 'POLYGON'\r\n const feedDatabaseCode = useSelector(state => state.eodData.feedDatabaseCode)\r\n const feedProductCode = useSelector(state => state.eodData.feedProductCode)\r\n const feedSectionName = useSelector(state => state.eodData.feedSectionName)\r\n const [results] = useState(null)\r\n\r\n const handelStep2Index = useCallback((index, val = null, flag = null) => {\r\n let updates = {\r\n feedSource, feedDatabaseCode, feedProductCode, feedSectionName\r\n };\r\n if (index === 1) {\r\n if (val !== undefined) {\r\n dispatch(setFeedSource(val))\r\n }\r\n updates.feedSource = val;\r\n updates.feedDatabaseCode = '';\r\n updates.feedSectionName = null;\r\n updates.feedProductCode = '';\r\n } else if (index === 2) {\r\n updates.feedDatabaseCode = val;\r\n if (val !== undefined) {\r\n dispatch(setFeedDatabaseCode(val))\r\n }\r\n updates.feedSectionName = null;\r\n updates.feedProductCode = '';\r\n } else if (index === 3) {\r\n if (flag === 'databaseCode') {\r\n updates.feedSectionName = ''\r\n updates.feedDatabaseCode = val\r\n } else {\r\n updates.feedSectionName = val;\r\n }\r\n updates.feedProductCode = '';\r\n // if (val !== undefined) {\r\n // dispatch(setFeedDatabaseCode(val))\r\n // }\r\n } else if (index === 0) {\r\n updates.feedSource = 'POLYGON'\r\n updates.feedDatabaseCode = '';\r\n updates.feedSectionName = null;\r\n updates.feedProductCode = '';\r\n }\r\n dispatch(clearStockProducts())\r\n dispatch(changeStep2Index(index))\r\n dispatch(setFeedSource(updates.feedSource))\r\n dispatch(setFeedDatabaseCode(updates.feedDatabaseCode))\r\n dispatch(setFeedProductCode(updates.feedProductCode))\r\n dispatch(setFeedSectionName(updates.feedSectionName))\r\n }, [\r\n feedSource,\r\n feedDatabaseCode,\r\n feedProductCode,\r\n feedSectionName\r\n ])\r\n\r\n useEffect(() => {\r\n handelStep2Index(1)\r\n }, []);\r\n\r\n const renderBreadCrumb = useMemo(() => {\r\n return \r\n \r\n {\r\n step2Index >= 1 && (\r\n {\r\n if (step2Index > 1) handelStep2Index(1, feedSource)\r\n }}\r\n />\r\n )\r\n }\r\n {\r\n step2Index >= 2 && (\r\n {\r\n if (step2Index > 2) handelStep2Index(2, feedDatabaseCode)\r\n }}\r\n />\r\n )\r\n }\r\n \r\n }, [\r\n feedSource,\r\n feedDatabaseCode,\r\n step2Index\r\n ])\r\n const handleProductCode = (val) => {\r\n dispatch(setFeedProductCode(val))\r\n }\r\n const searchResults = useMemo(() => {\r\n // if(searchWord && searchWord !== ''){\r\n return results\r\n // }\r\n // return null\r\n }, [\r\n results,\r\n // searchWord\r\n ])\r\n return (\r\n \r\n \r\n \r\n Polygon\r\n \r\n {renderBreadCrumb}\r\n {/* \r\n {\r\n const param = {value: newStr}\r\n if(step2Index === 0){\r\n param.field = 'feedSource'\r\n }else if(step2Index === 1){\r\n param.field = 'databaseCode'\r\n }else if(step2Index === 2){\r\n param.field = 'productCode'\r\n }\r\n dispatch(setSearchWord(param))\r\n }}\r\n />\r\n */}\r\n \r\n {\r\n Array.isArray(searchResults) ? (\r\n searchResults.length < 1 ? (\r\n
There is no match
\r\n ) : (\r\n \r\n {\r\n searchResults?.map((item, index) => {\r\n return {\r\n const url = `/product/${encodeURIComponent(item.value.feed_source)}/${encodeURIComponent(item.value.database_code)}/${encodeURIComponent(item.value.product_code)}`\r\n history.push(url)\r\n }}\r\n key={index}\r\n >\r\n {item.value.feed_source}/{item.value.database_code}/{item.value.product_code}\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\nexport default PolygonContainer;","import {makeStyles} from \"@mui/styles\";\r\n\r\nconst useStyles = makeStyles(() => ({\r\n ListBox: {\r\n flexDirection: 'row',\r\n justifyContent: 'center',\r\n alignItems: 'center',\r\n gap: 12\r\n }\r\n}))\r\n\r\nexport default useStyles","import React from 'react';\r\nimport {makeStyles} from \"@mui/styles\";\r\nimport { setFeedSource } from 'store/slices/EodDataSlice'\r\nimport { useDispatch } from 'react-redux';\r\nimport {\r\n Box, Divider,\r\n} from \"@mui/material\"\r\nimport DefaultDataSetLogoIcon from 'components/icons/DefaultDataSetLogo';\r\n\r\nconst useStyles = makeStyles((theme) => ({\r\n ListItem: {\r\n padding: 12,\r\n gap: 12,\r\n background: '#F5F8FF',\r\n display: 'flex',\r\n flexDirection: 'row',\r\n alignItems: 'center',\r\n cursor: 'pointer'\r\n },\r\n ListItemDivider: {\r\n background: '#E5ECFA'\r\n },\r\n Selected: {\r\n background: 'white'\r\n }\r\n}));\r\n\r\nexport default function ListItem(props) {\r\n const dispatch = useDispatch()\r\n const classes = useStyles();\r\n\r\n return (\r\n <>\r\n {\r\n if(props.onClick) props.onClick()\r\n }}>\r\n \r\n \r\n \r\n \r\n {props.children}\r\n \r\n \r\n \r\n \r\n );\r\n}","import React from 'react';\r\nimport {\r\n Typography,\r\n} from \"@mui/material\"\r\n\r\nimport { makeStyles } from '@mui/styles';\r\nimport { Autorenew } from '@mui/icons-material';\r\n\r\nconst useStyles = makeStyles(() => ({\r\n QualityAnaylicCap: {\r\n // fontSize: '34px',\r\n padding: '5px 9px',\r\n lineHeight: 1,\r\n fontSize: '17px',\r\n border: 'solid 1px #cfc7c7',\r\n borderRadius: '3px',\r\n transition: 'all ease-in .3s',\r\n cursor: 'pointer',\r\n \"&:hover\": {\r\n background: 'white'\r\n }\r\n },\r\n '@keyframes rotate-circle': {\r\n \"0%\": {\r\n transform: \"rotate(0deg)\",\r\n },\r\n \"100%\": {\r\n transform: \"rotate(360deg)\",\r\n },\r\n },\r\n QualityAnaylicProgress: {\r\n // fontSize: '39px !important',\r\n // padding: 0,\r\n fontSize: '27px !important',\r\n margin: '3px !important',\r\n animation: '$rotate-circle 2s linear infinite',\r\n }\r\n}))\r\n\r\nexport default function QLink(props) {\r\n const classes = useStyles();\r\n\r\n return (\r\n <>\r\n {\r\n props.inProgress ? \r\n :\r\n Q\r\n }\r\n \r\n );\r\n}","import { createSlice, createAsyncThunk, createEntityAdapter } from '@reduxjs/toolkit'\r\nimport API from 'store/services/AxiosService';\r\nimport {\r\n EOD_CHECK_FRONTEND_QA_BATCH,\r\n EOD_CHECK_FRONTEND_QA_REPORT,\r\n EOD_DELETE_FRONTEND_QA_BATCH_GROUP,\r\n EOD_DELETE_FRONTEND_QA_REPORT,\r\n EOD_DELETE_QA_REPORT,\r\n EOD_FETCH_FRONTEND_QA_PRODUCTS,\r\n EOD_FETCH_FRONTEND_QA_REPORTS,\r\n EOD_FETCH_FRONTEND_QA_RESULTS,\r\n EOD_GET_DATABASE_CODES_QA,\r\n EOD_GET_FEED_SOURCE_DATABASE_CODES_QA,\r\n EOD_GET_QA_DATA,\r\n EOD_GET_QA_RANGES,\r\n EOD_GET_QA_REPORT_DATA,\r\n EOD_GET_QA_RESULT,\r\n EOD_INIT_QA_RANGE,\r\n EOD_RETRY_QA_RANGE,\r\n EOD_SAVE_INDIVIDUAL_QA_REPORT,\r\n EOD_SAVE_QA_RANGE,\r\n EOD_SAVE_QA_REPORT,\r\n EOD_SAVE_QA_RESULT,\r\n EOD_SEARCH,\r\n EOD_SEARCH_FRONTEND_QA_REPORT,\r\n EOD_SEARCH_QA_DATA,\r\n EOD_SKIP_FRONTEND_QA_BATCH,\r\n EOD_UPDATE_FRONTEND_QA_BATCH,\r\n EOD_UPDATE_FRONTEND_QA_BATCH_GROUP,\r\n START_FRONTEND_PROUDCT_RUN_QA,\r\n START_FRONTEND_QA_REPORT,\r\n TEST_TRIGGER\r\n} from 'store/UrlConstants'\r\nimport axios from 'axios'\r\nimport { paramsToQueryParam } from 'store/UrlUtils';\r\nimport LocalStorageService from 'store/services/LocalStorageService';\r\nimport { showSnackbarMessage } from './MessagesSystemSlice';\r\nconst storageService = LocalStorageService.getService()\r\ncreateEntityAdapter()\r\n\r\n\r\nvar CancelToken = axios.CancelToken;\r\nlet frontendQAResource;\r\nlet fetchSearchDataSource;\r\nlet fetchSearchQAReportSource;\r\nlet fetchSearchQADataSource;\r\n\r\nexport const fetchFrontendQAReports = createAsyncThunk(EOD_FETCH_FRONTEND_QA_REPORTS, async (params) => {\r\n // if (frontendQAResource) {\r\n // frontendQAResource.cancel()\r\n // }\r\n frontendQAResource = CancelToken.source();\r\n const { data } = await API.get(EOD_FETCH_FRONTEND_QA_REPORTS + paramsToQueryParam(params), {\r\n cancelToken: frontendQAResource.token\r\n });\r\n return data\r\n})\r\n\r\nexport const getQaDataApi = createAsyncThunk(EOD_GET_QA_DATA, async (params) => {\r\n const { data } = await API.get(EOD_GET_QA_DATA + paramsToQueryParam(params));\r\n return data\r\n})\r\n\r\nexport const getQaResultsApi = createAsyncThunk(EOD_GET_QA_RESULT, async (params) => {\r\n const { data } = await API.get(EOD_GET_QA_RESULT + paramsToQueryParam(params));\r\n return data\r\n})\r\n\r\nexport const saveQAReportApi = createAsyncThunk(EOD_SAVE_QA_REPORT, async (params, thunkApi) => {\r\n \r\n if (frontendQAResource) {\r\n frontendQAResource.cancel()\r\n }\r\n frontendQAResource = CancelToken.source();\r\n \r\n try{\r\n const { data } = await axios({\r\n method: 'post',\r\n url: EOD_SAVE_QA_REPORT,\r\n cancelToken: frontendQAResource.token,\r\n data: { ...params }\r\n });\r\n return data; \r\n }catch(e){\r\n thunkApi.dispatch(showSnackbarMessage({\r\n message: `Something went wrong, please try again later`,\r\n severity: 'error'\r\n }))\r\n return;\r\n }\r\n})\r\n\r\nexport const deleteQAReportApi = createAsyncThunk(EOD_DELETE_QA_REPORT, async (params, thunkAPI) => {\r\n const { data } = await API.get(EOD_DELETE_QA_REPORT + paramsToQueryParam(params));\r\n\r\n if (data) {\r\n return {\r\n data,\r\n params\r\n }\r\n } else {\r\n thunkAPI.dispatch(showSnackbarMessage({\r\n message: `Something went wrong in deleting QA report. Please kindly try again later`,\r\n severity: 'error'\r\n }))\r\n }\r\n})\r\n\r\nexport const getQaReportDataApi = createAsyncThunk(EOD_GET_QA_REPORT_DATA, async (qaReportId) => {\r\n const { data } = await API.get(EOD_GET_QA_REPORT_DATA + paramsToQueryParam({ qaReportId }));\r\n return data\r\n})\r\n\r\nexport const getQARangesApi = createAsyncThunk(EOD_GET_QA_RANGES, async (qaReportId) => {\r\n const { data } = await API.get(EOD_GET_QA_RANGES + paramsToQueryParam({qaReportId}));\r\n return data\r\n})\r\n\r\nexport const initQARangeApi = createAsyncThunk(EOD_INIT_QA_RANGE, async (params, thunkApi) => {\r\n try{\r\n const { data } = await axios({\r\n method: 'post',\r\n url: EOD_INIT_QA_RANGE,\r\n data: { ...params }\r\n });\r\n return data; \r\n }catch(e){\r\n thunkApi.dispatch(showSnackbarMessage({\r\n message: `Something went wrong, please try again later`,\r\n severity: 'error'\r\n }))\r\n return;\r\n }\r\n})\r\n\r\nexport const retryQARangeApi = createAsyncThunk(EOD_RETRY_QA_RANGE, async (params) => {\r\n const { data } = await API.get(EOD_RETRY_QA_RANGE + paramsToQueryParam(params));\r\n return data\r\n})\r\n\r\nexport const saveQARangeApi = createAsyncThunk(EOD_SAVE_QA_RANGE, async (params, thunkApi) => {\r\n try{\r\n const { data } = await axios({\r\n method: 'post',\r\n url: EOD_SAVE_QA_RANGE,\r\n data: { ...params }\r\n });\r\n return data; \r\n }catch(e){\r\n thunkApi.dispatch(showSnackbarMessage({\r\n message: `Something went wrong, please try again later`,\r\n severity: 'error'\r\n }))\r\n return;\r\n }\r\n})\r\n\r\n\r\nexport const saveQaResultApi = createAsyncThunk(EOD_SAVE_QA_RESULT, async (params, thunkApi) => {\r\n try{\r\n const { data } = await axios({\r\n method: 'post',\r\n url: EOD_SAVE_QA_RESULT,\r\n data: { ...params }\r\n });\r\n return data; \r\n }catch(e){\r\n thunkApi.dispatch(showSnackbarMessage({\r\n message: `Something went wrong, please try again later`,\r\n severity: 'error'\r\n }))\r\n return;\r\n }\r\n})\r\n\r\nexport const saveIndividualQareportApi = createAsyncThunk(EOD_SAVE_INDIVIDUAL_QA_REPORT, async (params, thunkApi) => {\r\n try{\r\n const { data } = await axios({\r\n method: 'post',\r\n url: EOD_SAVE_INDIVIDUAL_QA_REPORT,\r\n data: { ...params }\r\n });\r\n return data; \r\n }catch(e){\r\n thunkApi.dispatch(showSnackbarMessage({\r\n message: `Something went wrong, please try again later`,\r\n severity: 'error'\r\n }))\r\n return;\r\n }\r\n})\r\n\r\nexport const updateFrontendQABatch = createAsyncThunk(EOD_UPDATE_FRONTEND_QA_BATCH, async (params, thunkApi) => {\r\n \r\n if (frontendQAResource) {\r\n frontendQAResource.cancel()\r\n }\r\n frontendQAResource = CancelToken.source();\r\n \r\n try{\r\n const { data } = await axios({\r\n method: 'post',\r\n url: EOD_UPDATE_FRONTEND_QA_BATCH,\r\n cancelToken: frontendQAResource.token,\r\n data: { ...params }\r\n });\r\n return data; \r\n }catch(e){\r\n thunkApi.dispatch(showSnackbarMessage({\r\n message: `Something went wrong in Updateing the separate-batch`,\r\n severity: 'error'\r\n }))\r\n return;\r\n }\r\n })\r\n \r\n export const checkFrontendQAReport = createAsyncThunk(EOD_CHECK_FRONTEND_QA_REPORT, async (params, thunkApi) => {\r\n \r\n // if (frontendQAResource) {\r\n // frontendQAResource.cancel()\r\n // }\r\n // frontendQAResource = CancelToken.source();\r\n \r\n try{\r\n const response = await API.get(EOD_CHECK_FRONTEND_QA_REPORT + paramsToQueryParam(params), {\r\n // cancelToken: frontendQAResource.token\r\n });\r\n return response.data;\r\n }catch(e){\r\n thunkApi.dispatch(showSnackbarMessage({\r\n message: `Something went wrong in checking error report. Please kindly try again later`,\r\n severity: 'error'\r\n }))\r\n return false\r\n }\r\n })\r\n export const checkFrontendQABatch = createAsyncThunk(EOD_CHECK_FRONTEND_QA_BATCH, async (params, thunkApi) => {\r\n \r\n // if (frontendQAResource) {\r\n // frontendQAResource.cancel()\r\n // }\r\n // frontendQAResource = CancelToken.source();\r\n \r\n try{\r\n const response = await API.get(EOD_CHECK_FRONTEND_QA_BATCH + paramsToQueryParam(params), {\r\n // cancelToken: frontendQAResource.token\r\n });\r\n return response.data;\r\n }catch(e){\r\n thunkApi.dispatch(showSnackbarMessage({\r\n message: `Something went wrong in checking on-going batch. Please kindly try again later`,\r\n severity: 'error'\r\n }))\r\n return false\r\n }\r\n })\r\n\r\n export const deleteFrontendQABatchGroup = createAsyncThunk(EOD_DELETE_FRONTEND_QA_BATCH_GROUP, async (params, thunkApi) => {\r\n if (frontendQAResource) {\r\n frontendQAResource.cancel()\r\n }\r\n frontendQAResource = CancelToken.source();\r\n try{\r\n const response = await API.get(EOD_DELETE_FRONTEND_QA_BATCH_GROUP + paramsToQueryParam(params));\r\n return response.data;\r\n }catch(e){\r\n thunkApi.dispatch(showSnackbarMessage({\r\n message: `Something went wrong in resetting Batch. Please kindly try again later`,\r\n severity: 'error'\r\n }))\r\n return false\r\n }\r\n })\r\n \r\n export const skipFrontendQABatch = createAsyncThunk(EOD_SKIP_FRONTEND_QA_BATCH, async (params, thunkApi) => {\r\n \r\n if (frontendQAResource) {\r\n frontendQAResource.cancel()\r\n }\r\n frontendQAResource = CancelToken.source();\r\n \r\n try{\r\n const response = await API.get(EOD_SKIP_FRONTEND_QA_BATCH + paramsToQueryParam(params), {\r\n cancelToken: frontendQAResource.token\r\n });\r\n return response.data;\r\n }catch(e){\r\n thunkApi.dispatch(showSnackbarMessage({\r\n message: `Something went wrong in skipping Batch. Please kindly try again later`,\r\n severity: 'error'\r\n }))\r\n return false\r\n }\r\n })\r\n\r\n\r\nexport const triggerFrontendQAReport = createAsyncThunk(START_FRONTEND_QA_REPORT, async (payload, thunkAPI) => {\r\n const token = storageService.getAccessToken()\r\n const { data } = await API.post(START_FRONTEND_QA_REPORT, payload, {\r\n headers: {\r\n 'Content-Type': 'application/json',\r\n Authorization: `Bearer ${token}`\r\n }\r\n });\r\n if (data) {\r\n // thunkAPI.dispatch(showSnackbarMessage(\r\n // {\r\n // message: \"Successfully Done\",\r\n // severity: \"info\",\r\n // }\r\n // ))\r\n } else {\r\n thunkAPI.dispatch(showSnackbarMessage({\r\n message: `Something went wrong in running QA process. Please kindly try again later`,\r\n severity: 'error'\r\n }))\r\n }\r\n return data\r\n})\r\nexport const triggerFrontendProductQA = createAsyncThunk(START_FRONTEND_PROUDCT_RUN_QA, async (requestBody, thunkAPI) => {\r\n try {\r\n if (frontendQAResource) {\r\n frontendQAResource.cancel()\r\n }\r\n frontendQAResource = CancelToken.source();\r\n const token = storageService.getAccessToken()\r\n // console.log(requestBody.onDownloadProgress, 'requestBody.onDownloadProgress')\r\n const res = await API.post(START_FRONTEND_PROUDCT_RUN_QA, requestBody.payload, {\r\n headers: {\r\n 'Content-Type': 'application/json',\r\n Authorization: `Bearer ${token}`\r\n },\r\n cancelToken: frontendQAResource.token,\r\n onDownloadProgress: requestBody.onDownloadProgress\r\n })\r\n // .then(a => {\r\n // console.log(a, 'a')\r\n // }).catch(e => {\r\n // console.log(e, 'catch e')\r\n // })\r\n if (res.data) {\r\n // thunkAPI.dispatch(showSnackbarMessage(\r\n // {\r\n // message: \"Successfully Done\",\r\n // severity: \"info\",\r\n // }\r\n // ))\r\n return res.data\r\n } else {\r\n // console.log(res, 'res')\r\n }\r\n } catch (e) {\r\n // thunkAPI.dispatch(showSnackbarMessage({\r\n // message: `Something went wrong. Please kindly try again later`,\r\n // severity: 'error'\r\n // }))\r\n console.log(e, 'e')\r\n // Axios.cancel(e)\r\n // console.log(e.request, 'e.request')\r\n console.log(e.response, 'e.resposne')\r\n // console.log(e.response.status, 'e.resposne.status')\r\n if(axios.isCancel(e)){\r\n console.log('cancelled')\r\n return {\r\n payload: {\r\n status: 'cancelled'\r\n }\r\n }\r\n }\r\n return e.response\r\n // console.log(res.status, 'res')\r\n // return res\r\n }\r\n})\r\nexport const updateFrontendQABatchGroup = createAsyncThunk(EOD_UPDATE_FRONTEND_QA_BATCH_GROUP, async (payload, thunkAPI) => {\r\n \r\n const { data } = await API.post(EOD_UPDATE_FRONTEND_QA_BATCH_GROUP, payload);\r\n if (data) {\r\n } else {\r\n thunkAPI.dispatch(showSnackbarMessage({\r\n message: `Something went wrong in modifying the Batch Metadata. Please kindly try again later`,\r\n severity: 'error'\r\n }))\r\n }\r\n return data\r\n})\r\n\r\nexport const fetchFrontendQAResults = createAsyncThunk(EOD_FETCH_FRONTEND_QA_RESULTS, async (params) => {\r\n const { data } = await API.get(EOD_FETCH_FRONTEND_QA_RESULTS + paramsToQueryParam(params));\r\n return data\r\n})\r\nexport const fetchFrontendQAProducts = createAsyncThunk(EOD_FETCH_FRONTEND_QA_PRODUCTS, async (params) => {\r\n const { data } = await API.get(EOD_FETCH_FRONTEND_QA_PRODUCTS + paramsToQueryParam(params));\r\n return data\r\n})\r\nexport const testTrigger = createAsyncThunk(TEST_TRIGGER, async (params) => {\r\n const { data } = await API.get(TEST_TRIGGER + paramsToQueryParam(params));\r\n return data\r\n})\r\n\r\nexport const fetchSearchData = createAsyncThunk(EOD_SEARCH, async (params) => {\r\n if (fetchSearchDataSource) {\r\n fetchSearchDataSource.cancel()\r\n }\r\n fetchSearchDataSource = CancelToken.source();\r\n let url = EOD_SEARCH\r\n const response = await API.get(\r\n url, {\r\n params: params,\r\n cancelToken: fetchSearchDataSource.token\r\n })\r\n const { data: suggestions } = response\r\n return {\r\n suggestions\r\n }\r\n})\r\n\r\nexport const fetchSearchQAReport = createAsyncThunk(EOD_SEARCH_FRONTEND_QA_REPORT, async (params) => {\r\n if (fetchSearchQAReportSource) {\r\n fetchSearchQAReportSource.cancel()\r\n }\r\n fetchSearchQAReportSource = CancelToken.source();\r\n let url = EOD_SEARCH_FRONTEND_QA_REPORT\r\n const response = await API.get(\r\n url, {\r\n params: params,\r\n cancelToken: fetchSearchQAReportSource.token\r\n })\r\n const { data: suggestions } = response\r\n return {\r\n suggestions\r\n }\r\n})\r\n\r\n\r\nexport const fetchSearchQAData = createAsyncThunk(EOD_SEARCH_QA_DATA, async (params) => {\r\n if (fetchSearchQADataSource) {\r\n fetchSearchQADataSource.cancel()\r\n }\r\n fetchSearchQADataSource = CancelToken.source();\r\n let url = EOD_SEARCH_QA_DATA\r\n const response = await API.get(\r\n url, {\r\n params: params,\r\n cancelToken: fetchSearchQADataSource.token\r\n })\r\n const { data } = response\r\n return {\r\n data\r\n }\r\n})\r\n\r\nexport const deleteFrontendQAReport = createAsyncThunk(EOD_DELETE_FRONTEND_QA_REPORT, async (params, thunkAPI) => {\r\n if (frontendQAResource) {\r\n frontendQAResource.cancel()\r\n }\r\n frontendQAResource = CancelToken.source();\r\n const { data } = await API.get(EOD_DELETE_FRONTEND_QA_REPORT + paramsToQueryParam(params), {\r\n cancelToken: frontendQAResource.token\r\n });\r\n\r\n if (data) {\r\n return {\r\n data,\r\n params\r\n }\r\n } else {\r\n thunkAPI.dispatch(showSnackbarMessage({\r\n message: `Something went wrong in deleting QA report. Please kindly try again later`,\r\n severity: 'error'\r\n }))\r\n }\r\n})\r\n\r\nexport const getFeedSourceDatabaseCodesQA = createAsyncThunk(EOD_GET_FEED_SOURCE_DATABASE_CODES_QA, async (params, thunkAPI) => {\r\n if (frontendQAResource) {\r\n frontendQAResource.cancel()\r\n }\r\n frontendQAResource = CancelToken.source();\r\n const { data } = await API.get(EOD_GET_FEED_SOURCE_DATABASE_CODES_QA + paramsToQueryParam(params), {\r\n cancelToken: frontendQAResource.token\r\n });\r\n\r\n if (data) {\r\n return data\r\n } else {\r\n thunkAPI.dispatch(showSnackbarMessage({\r\n message: `Something went wrong in fetching Databases QA report of Feed Source. Please kindly try again later`,\r\n severity: 'error'\r\n }))\r\n }\r\n})\r\nexport const getDatabaseCodesQA = createAsyncThunk(EOD_GET_DATABASE_CODES_QA, async (params, thunkAPI) => {\r\n const { data } = await API.get(EOD_GET_DATABASE_CODES_QA);\r\n if (data) {\r\n return data\r\n } else {\r\n thunkAPI.dispatch(showSnackbarMessage({\r\n message: `Something went wrong in fetching Databases QA report. Please kindly try again later`,\r\n severity: 'error'\r\n }))\r\n }\r\n})\r\n\r\nexport const stopFrontendQAProcess = createAsyncThunk('eod/frontend_qa/stop_process', async (params, thunkAPI) => {\r\n if (frontendQAResource) {\r\n frontendQAResource.cancel()\r\n }\r\n})\r\n\r\nconst initialState = {\r\n reports: {},\r\n reportResults: [],\r\n products: [],\r\n endPercentage: 0,\r\n searchResults: [],\r\n loadingProducts: false,\r\n inProgressOfQA: false,\r\n loadingSearch: false,\r\n inDeleting: false,\r\n\r\n currentQaBatch: {},\r\n batchesInProgress: [],\r\n inProgressOfBatch: false\r\n}\r\n\r\nconst frontendQASlice = createSlice({\r\n name: 'FrontendQA',\r\n initialState,\r\n reducers: {},\r\n extraReducers: {\r\n [fetchFrontendQAProducts.pending]: (state, action) => {\r\n state.loadingProducts = true\r\n state.products = []\r\n state.endPercentage = 0\r\n },\r\n [fetchFrontendQAProducts.fulfilled]: (state, action) => {\r\n if (action.payload) {\r\n const { products, endPercentage } = action.payload\r\n state.products = products\r\n state.endPercentage = endPercentage\r\n }\r\n state.loadingProducts = false\r\n },\r\n [fetchFrontendQAProducts.rejected]: (state, action) => {\r\n state.loadingProducts = false\r\n },\r\n [triggerFrontendQAReport.pending]: (state, action) => {\r\n state.inProgressOfQA = true\r\n // state.reports = {}\r\n },\r\n [triggerFrontendQAReport.fulfilled]: (state, action) => {\r\n if (action.payload) {\r\n state.reports = action.payload\r\n }\r\n state.inProgressOfQA = false\r\n },\r\n [triggerFrontendQAReport.rejected]: (state, action) => {\r\n state.inProgressOfQA = false\r\n },\r\n [fetchSearchData.pending]: (state, action) => {\r\n state.loadingSearch = true\r\n },\r\n [fetchSearchData.fulfilled]: (state, action) => {\r\n const { suggestions } = action.payload\r\n if (suggestions) {\r\n let formatted = []\r\n suggestions.forEach(element => {\r\n let label = element.value.product_code\r\n // element.value.label = label\r\n formatted.push({\r\n ...element.value,\r\n label: label\r\n })\r\n })\r\n console.log(formatted, 'formatted')\r\n state.searchResults = formatted\r\n }\r\n state.loadingSearch = false\r\n },\r\n [fetchSearchData.rejected]: (state, action) => {\r\n state.loadingSearch = false\r\n },\r\n [deleteFrontendQAReport.pending]: (state, action) => {\r\n state.inDeleting = true\r\n // state.reports = {}\r\n },\r\n [deleteFrontendQAReport.fulfilled]: (state, action) => {\r\n // if (action.payload) {\r\n // const { data, params } = action.payload\r\n // if (data.status) {\r\n // const _reports = state.reports.filter(item => item.id !== params.id)\r\n // state.reports = _reports\r\n // }\r\n // }\r\n state.inDeleting = false\r\n },\r\n [deleteFrontendQAReport.rejected]: (state, action) => {\r\n state.inDeleting = false\r\n },\r\n\r\n [checkFrontendQAReport.pending]: (state, action) => {\r\n state.inProgressOfBatch = true\r\n state.batchesInProgress = []\r\n },\r\n [checkFrontendQAReport.fulfilled]: (state, action) => {\r\n if (action.payload) {\r\n const { batches = [] } = action.payload\r\n state.batchesInProgress = batches\r\n }\r\n state.inProgressOfBatch = false\r\n },\r\n [checkFrontendQAReport.rejected]: (state, action) => {\r\n state.inProgressOfBatch = false\r\n state.batchesInProgress = []\r\n state.errorMsg = action.payload\r\n },\r\n [updateFrontendQABatch.pending]: (state, action) => {\r\n state.inProgressOfBatch = true\r\n state.currentQaBatch = {}\r\n },\r\n [updateFrontendQABatch.fulfilled]: (state, action) => {\r\n if (action.payload) {\r\n state.currentQaBatch = action.payload\r\n }\r\n state.inProgressOfBatch = false\r\n },\r\n [updateFrontendQABatch.rejected]: (state, action) => {\r\n state.inProgressOfBatch = false\r\n state.errorMsg = action.payload\r\n },\r\n },\r\n})\r\n\r\nexport const prepareSelector = state => state.frontendQA\r\nexport default frontendQASlice.reducer\r\n","import { useState } from 'react';\r\nimport { fetchSearchQAReport, fetchSearchQAData } from 'store/slices/FrontendQA';\r\nimport { showSnackbarMessage } from 'store/slices/MessagesSystemSlice';\r\n\r\nexport const useSearchQAReport = (dispatch) => {\r\n const [isLoading, setIsLoading] = useState(false);\r\n const [qaReports, setQAReports] = useState([])\r\n\r\n const errorBlock = (error) => {\r\n setIsLoading(false)\r\n setQAReports([])\r\n dispatch(showSnackbarMessage({\r\n message: `Something went wrong. Please kindly try again later`,\r\n severity: 'error'\r\n }))\r\n console.log(error, 'in the search report in qa sidebar')\r\n }\r\n\r\n const triggerRequest = async (searchWord) => {\r\n if (isLoading) return\r\n setIsLoading(true)\r\n setQAReports([])\r\n const r = await dispatch(fetchSearchQAReport({\r\n searchWord\r\n }))\r\n \r\n if (r && r.payload) {\r\n // console.log(r.payload, 'r.payload')\r\n setQAReports(r?.payload?.suggestions || [])\r\n // setShowQAResult(true)\r\n setIsLoading(false);\r\n return r;\r\n } else {\r\n errorBlock()\r\n }\r\n \r\n // Axios.get('https://plotter-frontend-qa-runtime-service-ycyfoaj6aa-uc.a.run.app/search?q=hello222???????', {\r\n // Axios.get('http://localhost:8080/search?q=ok???', {\r\n // headers: {\r\n // Authorization: `Bearer ${token}`\r\n // }\r\n // })\r\n };\r\n\r\n return [triggerRequest, {\r\n isLoading,\r\n qaReports\r\n }];\r\n};\r\n\r\n\r\nexport const useSearchQAData = (dispatch) => {\r\n const [isLoading, setIsLoading] = useState(false);\r\n const [results, setResults] = useState([])\r\n\r\n const errorBlock = (error) => {\r\n setIsLoading(false)\r\n setResults([])\r\n dispatch(showSnackbarMessage({\r\n message: `Something went wrong. Please kindly try again later`,\r\n severity: 'error'\r\n }))\r\n console.log(error, 'in the search report in qa sidebar')\r\n }\r\n\r\n const triggerRequest = async (params) => {\r\n if (isLoading) return\r\n setIsLoading(true)\r\n setResults([])\r\n const r = await dispatch(fetchSearchQAData(params))\r\n \r\n if (r && r?.payload?.data) {\r\n console.log(r?.payload.data, 'r.payload')\r\n setResults(r?.payload.data || [])\r\n // setShowQAResult(true)\r\n setIsLoading(false);\r\n return r;\r\n } else {\r\n errorBlock()\r\n }\r\n \r\n // Axios.get('https://plotter-frontend-qa-runtime-service-ycyfoaj6aa-uc.a.run.app/search?q=hello222???????', {\r\n // Axios.get('http://localhost:8080/search?q=ok???', {\r\n // headers: {\r\n // Authorization: `Bearer ${token}`\r\n // }\r\n // })\r\n };\r\n\r\n return [triggerRequest, {\r\n isLoading,\r\n results\r\n }];\r\n};\r\n\r\nexport default useSearchQAData;","import moment from 'moment';\r\n\r\n\r\n/**\r\n * @param date\r\n * @returns 2020-06-01\r\n */\r\nexport function parseDateForNoteFeed(date: string | Date | undefined) {\r\n if(date && moment(date).isValid()) {\r\n return moment(date).format('DD MMMM YYYY');\r\n }\r\n}\r\n\r\n/**\r\n * @param date\r\n * @returns 2020-06-01\r\n */\r\nexport function parseDateToLocalFormat(date: string | Date | undefined) {\r\n if(date && moment(date).isValid()) {\r\n return moment(date).format('MM/DD/YYYY');\r\n }\r\n}\r\n\r\n/**\r\n * @param date\r\n * @returns \"Sunday, February 14th 2010, 3:25:50 pm\"\r\n */\r\nexport function parseDateAndTimeLocal(date: string | Date | undefined) {\r\n if(date && moment(date).isValid()) {\r\n return moment(date).format('dddd, MMMM Do YYYY, h:mm:ss a');\r\n }\r\n}\r\n\r\n/**\r\n * @param date\r\n * @returns \"04/09/1986 8:30:00 PM\"\r\n */\r\nexport function parseDateLocalizedHoursAndSeconds(date: string | Date | undefined) {\r\n if(date && moment(date).isValid()) {\r\n return moment(date).format('DD/MM/YYYY LTS');\r\n }\r\n}\r\n\r\n/**\r\n * @param date\r\n * @returns \"04/09/1986 8:30:00 PM\"\r\n */\r\nexport function parseDateLocalizedHours(date: string | Date | undefined) {\r\n if(date && moment(date).isValid()) {\r\n return moment(date).format('DD/MM/YYYY LT');\r\n }\r\n}\r\n\r\nexport function timeAgo(date: Date) {\r\n const now = new Date();\r\n const seconds = Math.floor((now.getTime() - date.getTime()) / 1000);\r\n let interval = Math.floor(seconds / 31536000);\r\n\r\n if (interval >= 1) {\r\n if(interval > 1){\r\n return `${interval} ${ interval > 1 ? 'years' : 'year' } ago`;\r\n }\r\n }\r\n interval = Math.floor(seconds / 2592000);\r\n if (interval >= 1) {\r\n return `${interval} ${ interval > 1 ? 'months' : 'month' } ago`;\r\n }\r\n interval = Math.floor(seconds / 86400);\r\n if (interval >= 1) {\r\n return `${interval} ${ interval > 1 ? 'days' : 'day' } ago`;\r\n }\r\n interval = Math.floor(seconds / 3600);\r\n if (interval >= 1) {\r\n return `${interval} ${ interval > 1 ? 'hours' : 'hour' } ago`;\r\n }\r\n interval = Math.floor(seconds / 60);\r\n if (interval >= 1) {\r\n return `${interval} ${ interval > 1 ? 'minutes' : 'minute' } ago`;\r\n }\r\n return `${Math.floor(seconds)} seconds ago`;\r\n}","import React, { useEffect, useMemo } from 'react';\r\nimport {\r\n Box, Typography,\r\n} from \"@mui/material\"\r\n\r\nimport useStyles from './useStyles'\r\nimport ListItem from './Details/ListItem';\r\nimport LoadingOverlay from 'components/common/LoadingOverlay';\r\nimport { useDispatch, useSelector } from 'react-redux';\r\nimport QLink from './Details/QLink';\r\nimport useSearchQAData from 'hooks/SearchQA';\r\nimport { parseDateToLocalFormat } from 'shared/utilities/dateHelpers';\r\n\r\nexport default function StockSource({\r\n searchWord,\r\n changeStep2Index\r\n}) {\r\n const classes = useStyles();\r\n const dispatch = useDispatch();\r\n const isLoading = useSelector(state => state.eodData.loadingFeedSources)\r\n const feedSources = useSelector(state => state.eodData.sources)\r\n\r\n const [\r\n searchQA,\r\n {\r\n results = [],\r\n loading: searchLoading\r\n }\r\n ] = useSearchQAData(dispatch)\r\n\r\n useEffect(() => {\r\n // if(searchWord !== ''){\r\n // searchQA({\r\n // searchWord\r\n // })\r\n // }\r\n }, [\r\n searchWord\r\n ])\r\n\r\n const filteredFeedSources = useMemo(() => {\r\n let _feedSources = [...feedSources]\r\n if (searchWord && searchWord !== '') {\r\n _feedSources = feedSources.filter(item => item.feed_source?.toLowerCase().indexOf(searchWord.toLowerCase()) > -1 || item.human_readable_name?.toLowerCase().indexOf(searchWord) > -1)\r\n }\r\n _feedSources = _feedSources.sort((a, b) => {\r\n // Use human_readable_name if available, otherwise use feed_source\r\n const aName = a?.human_readable_name || a?.feed_source;\r\n const bName = b?.human_readable_name || b?.feed_source;\r\n\r\n // Compare the names alphabetically\r\n // return aName - bName\r\n return aName.localeCompare(bName);\r\n })\r\n return _feedSources\r\n\r\n }, [\r\n feedSources,\r\n searchWord\r\n ])\r\n\r\n return (\r\n \r\n \r\n {\r\n filteredFeedSources?.length > 0 || (searchWord !== '' && results.length > 0) ? (\r\n \r\n {\r\n changeStep2Index(4);\r\n }}\r\n >\r\n Individual Tables\r\n \r\n {\r\n filteredFeedSources?.map((item, index) => {\r\n return {\r\n changeStep2Index(1, item.feed_source);\r\n }}\r\n key={index}\r\n >\r\n \r\n {item.human_readable_name || item.feed_source}\r\n {\r\n e.stopPropagation();\r\n changeStep2Index(1, item.feed_source, null, true);\r\n }}/>\r\n \r\n \r\n })\r\n }\r\n {\r\n results.length > 0 && searchWord !== '' && (\r\n results.map((item, idx) => (\r\n \r\n {item.feed_source}/{item.database_code}\r\n {parseDateToLocalFormat(item.last_frontend_qa_date)}\r\n \r\n ))\r\n )\r\n }\r\n \r\n ) : (\r\n
There is no Feed Source
\r\n )\r\n }\r\n
\r\n
\r\n );\r\n}","import { useState } from 'react';\r\nimport { saveIndividualQareportApi, saveQARangeApi, triggerFrontendProductQA, updateFrontendQABatch } from 'store/slices/FrontendQA';\r\nimport { showSnackbarMessage } from 'store/slices/MessagesSystemSlice';\r\nconst cluster = process.env.REACT_APP_QA_CLUSTER\r\n\r\nconst useRunIndividualQA = (dispatch, callback) => {\r\n const [isLoading, setIsLoading] = useState(false);\r\n const [qaResults, setQAResults] = useState([])\r\n\r\n const errorBlock = (error) => {\r\n setIsLoading(false)\r\n setQAResults([])\r\n // dispatch(showSnackbarMessage({\r\n // message: `Something went wrong. Please kindly try again later`,\r\n // severity: 'error'\r\n // }))\r\n console.log(error, 'in the run individual qa hook')\r\n }\r\n\r\n const triggerRequest = async ({\r\n feedSource,\r\n databaseCode,\r\n productCode\r\n }) => {\r\n if (isLoading) return\r\n setIsLoading(true)\r\n const { payload: { qaRange, qaReport, productUid } } = await dispatch(saveIndividualQareportApi({\r\n feedSource,\r\n databaseCode,\r\n productCode\r\n }))\r\n if(qaRange){\r\n try {\r\n const r = await dispatch(triggerFrontendProductQA({\r\n payload: {\r\n cluster,\r\n productUid,\r\n reportId: qaRange.id,\r\n isIndividual: 1\r\n }\r\n }))\r\n if (r && r.payload && Array.isArray(r.payload)) {\r\n const newResults = r.payload\r\n setQAResults(newResults)\r\n console.log(newResults, 'newResults')\r\n let newScore = 0\r\n const scoreResults = newResults.filter(item => item.score && item.score > 0)\r\n if (scoreResults.length > 0) {\r\n const sum = scoreResults.reduce((acc, obj) => acc + obj.score, 0);\r\n newScore = sum / scoreResults.length\r\n }\r\n if(newScore){\r\n const { payload } = await dispatch(saveQARangeApi({\r\n id: qaRange.id,\r\n score: newScore,\r\n moveNext: 0\r\n }))\r\n }\r\n setIsLoading(false);\r\n callback()\r\n return r;\r\n } else {\r\n let _errorType = 400\r\n if ((r.payload && r.payload.status == 503) || !r.payload) {\r\n dispatch(showSnackbarMessage({\r\n message: `503 error happened in running QA process. Please kindly try again later`,\r\n severity: 'error'\r\n }))\r\n _errorType = 503\r\n } else if (r.payload.status == 500) {\r\n dispatch(showSnackbarMessage({\r\n message: `500 error happened in running QA process. Please kindly try again later`,\r\n severity: 'error'\r\n }))\r\n _errorType = 500\r\n return\r\n } else if (r.payload.status === \"cancelled\") {\r\n return\r\n }\r\n errorBlock()\r\n }\r\n } catch (error) {\r\n errorBlock(error)\r\n }\r\n }\r\n setIsLoading(false)\r\n setQAResults([])\r\n };\r\n\r\n return [triggerRequest, {\r\n isLoading,\r\n qaResults\r\n }];\r\n};\r\n\r\nexport default useRunIndividualQA;","import React, { useEffect, useMemo, useState } from \"react\";\r\n// import { useSelector } from 'react-redux'\r\n\r\nimport 'highcharts/css/stocktools/gui.scss'\r\nimport 'highcharts/css/annotations/popup.scss'\r\n\r\nimport { makeStyles } from \"@mui/styles\";\r\nimport moment from 'moment'\r\nimport _ from 'underscore'\r\nimport { AdapterDateFns } from '@mui/x-date-pickers/AdapterDateFns';\r\nimport { LocalizationProvider } from '@mui/x-date-pickers/LocalizationProvider';\r\n\r\nimport Highcharts from 'highcharts/highcharts'\r\nimport HighchartsTimeline from 'highcharts/modules/timeline';\r\nimport ReactHighcharts from 'highcharts-react-official'\r\nimport { Box } from \"@mui/system\";\r\nHighchartsTimeline(Highcharts)\r\n\r\nconst useStyles = makeStyles(() => ({\r\n Select: {\r\n height: '400px'\r\n },\r\n}))\r\nconst convertToSeconds = (milliseconds) => {\r\n return Math.round(milliseconds / 1000 * 100) / 100;\r\n}\r\n\r\n\r\nfunction TimeLineChart(props) {\r\n const classes = useStyles()\r\n const { data: initialData, timeIncrements, hasCloudStorage } = props\r\n // console.log(initialData, 'initialData')\r\n // const [timeIncrement, setTimeIncrement] = useState(null)\r\n const dataOpts = [{\r\n 'id': 'cloud-storage',\r\n 'label': 'C'\r\n }, {\r\n 'id': 'big-query',\r\n 'label': 'B'\r\n }]\r\n // const initialData = [\r\n // {\r\n // \"time_increment\": \"A\",\r\n // \"loading_source\": \"cloud-storage\",\r\n // \"blob_load_seconds\": 1325,\r\n // \"time_to_draw_seconds\": 30,\r\n // \"last_error\": \" \",\r\n // \"feed_source\": \"BEA\",\r\n // \"database_code\": \"NIPA\",\r\n // \"product_code\": \"T10105\",\r\n // \"metadata_load_seconds\": 1759,\r\n // \"initial_load_seconds\": 1978\r\n // },\r\n // {\r\n // \"time_increment\": \"A\",\r\n // \"loading_source\": \"big-query\",\r\n // \"blob_load_seconds\": 2319,\r\n // \"time_to_draw_seconds\": 30,\r\n // \"last_error\": \" \",\r\n // \"feed_source\": \"BEA\",\r\n // \"database_code\": \"NIPA\",\r\n // \"product_code\": \"T10105\",\r\n // \"metadata_load_seconds\": 1759,\r\n // \"initial_load_seconds\": 1978\r\n // },\r\n // {\r\n // \"time_increment\": \"Q\",\r\n // \"loading_source\": \"cloud-storage\",\r\n // \"blob_load_seconds\": 597,\r\n // \"time_to_draw_seconds\": 32,\r\n // \"last_error\": \" \",\r\n // \"feed_source\": \"BEA\",\r\n // \"database_code\": \"NIPA\",\r\n // \"product_code\": \"T10105\",\r\n // \"metadata_load_seconds\": 1759,\r\n // \"initial_load_seconds\": 1978\r\n // },\r\n // {\r\n // \"time_increment\": \"Q\",\r\n // \"loading_source\": \"big-query\",\r\n // \"blob_load_seconds\": 299,\r\n // \"time_to_draw_seconds\": 72,\r\n // \"last_error\": \" \",\r\n // \"feed_source\": \"BEA\",\r\n // \"database_code\": \"NIPA\",\r\n // \"product_code\": \"T10105\",\r\n // \"metadata_load_seconds\": 1759,\r\n // \"initial_load_seconds\": 1978\r\n // }\r\n // ]\r\n // useEffect(() => {\r\n // if(timeIncrements.length > 0 && timeIncrements[0] !== ''){\r\n // setTimeIncrement(timeIncrements[0])\r\n // }\r\n // }, [\r\n // timeIncrements,\r\n // hasCloudStorage\r\n // ])\r\n // {\r\n // name: 'First dogs \\uf1b0',\r\n // label: '1951: First dogs in space',\r\n // description: '22 July 1951 First dogs in space (Dezik and Tsygan) '\r\n // }, {\r\n // useHTML: true,\r\n // name: 'Sputnik 1 \\uf135',\r\n // description: '4 October 1957 First artificial satellite. First signals from space.'\r\n // }, {\r\n // name: 'First human spaceflight \\uf183',\r\n // label: '1961: First human spaceflight (Yuri Gagarin)',\r\n // description: 'First human spaceflight (Yuri Gagarin), and the first human-crewed orbital flight'\r\n // }, {\r\n // name: 'First human on the Moon \\uf186',\r\n // label: '1969: First human on the Moon',\r\n // description: 'First human on the Moon, and first space launch from a celestial body other than the Earth. First sample return from the Moon.'\r\n // }\r\n const series = useMemo(() => {\r\n const _series = []\r\n if (initialData[0]) {\r\n const { initial_load_seconds, metadata_load_seconds } = initialData[0]\r\n _series.push({\r\n name: 'Initial Load Time',\r\n label: `${convertToSeconds(initial_load_seconds)}s (${initial_load_seconds}) ms`,\r\n description: 'This includes the time it takes to load JavaScript and CSS assets, images, and other resources'\r\n })\r\n _series.push({\r\n name: 'Product Table Metadata Load Time',\r\n label: `${convertToSeconds(metadata_load_seconds)}s (${metadata_load_seconds}) ms`,\r\n description: `\"Product Table Metadata Load Time\" refers to the duration it takes to load the essential product information displayed in the product table.`\r\n })\r\n let _data = [...initialData];\r\n _data.map(item => {\r\n _series.push({\r\n name: `Blob Load Seconds of ${item.loading_source.split('-').join(' ').toUpperCase()} ${item.time_increment ? ('-' + item.time_increment) : ''}`,\r\n label: `${convertToSeconds(item.blob_load_seconds)}s (${item.blob_load_seconds}) ms`,\r\n description: \"Duration it to load blob\"\r\n })\r\n _series.push({\r\n name: `Time to draw Seconds of ${item.loading_source.split('-').join(' ').toUpperCase()} ${item.time_increment ? ('-' + item.time_increment) : ''}`,\r\n label: `${convertToSeconds(item.time_to_draw_seconds)}s (${item.time_to_draw_seconds}) ms`,\r\n description: \"Duration it takes to draw the chart with loaded blob\"\r\n })\r\n })\r\n console.log(_series, '_series')\r\n }\r\n return _series\r\n }, [\r\n initialData,\r\n ])\r\n const data = []\r\n\r\n const configStock = useMemo(() => {\r\n return {\r\n\r\n chart: {\r\n type: 'timeline'\r\n },\r\n\r\n xAxis: {\r\n type: 'datetime',\r\n visible: false\r\n },\r\n navigator: {\r\n enabled: false\r\n },\r\n yAxis: {\r\n visible: false\r\n },\r\n\r\n title: {\r\n text: 'Timeline of Page Loading',\r\n // useHTML: true,\r\n // text: ``\r\n },\r\n\r\n series: [{\r\n dataLabels: {\r\n allowOverlap: false,\r\n connectorColor: 'silver',\r\n connectorWidth: 2\r\n },\r\n marker: {\r\n symbol: 'circle'\r\n },\r\n useHTML: true,\r\n data: [...series]\r\n }]\r\n }\r\n }, [series])\r\n\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n )\r\n}\r\n\r\nexport default TimeLineChart","import React, { useState, forwardRef, useMemo, useEffect } from 'react';\r\nimport { makeStyles } from \"@mui/styles\";\r\n\r\nimport {\r\n Dialog,\r\n DialogActions,\r\n DialogContent,\r\n Button,\r\n Slide,\r\n Box,\r\n TableContainer,\r\n Typography,\r\n Tooltip,\r\n FormControlLabel,\r\n Switch,\r\n TableCell,\r\n TableRow,\r\n Chip,\r\n Table,\r\n TableHead,\r\n TableBody,\r\n} from \"@mui/material\";\r\nimport TimeLineChart from './TimeLine';\r\n\r\nconst useStyles = makeStyles((theme) => ({\r\n root: {\r\n padding: 0\r\n },\r\n DialogContent: {\r\n '& .MuiDialog-paper': {\r\n width: '500px',\r\n maxWidth: '100rem',\r\n }\r\n },\r\n productStaticBarButton: {\r\n color: '#4e4b4b',\r\n cursor: 'pointer',\r\n margin: '0 3px',\r\n position: 'relative',\r\n boxShadow: '0 0 1px 1px #e5e5f1',\r\n transition: 'all ease-in .2s',\r\n borderRadius: '4px',\r\n height: '37px',\r\n width: '37px',\r\n fontSize: '13px',\r\n textAlign: 'center',\r\n '&.selected': {\r\n boxShadow: '0 0 1px 1px #646467'\r\n },\r\n '&:hover': {\r\n background: '#ececec'\r\n },\r\n '&.selectedViewMode': {\r\n background: theme.palette.smartGreen.main,\r\n color: 'white',\r\n '&:hover': {\r\n background: theme.palette.smartGreen.hover\r\n },\r\n },\r\n '& svg': {\r\n display: 'block',\r\n margin: '0 auto',\r\n fontSize: '35px'\r\n },\r\n // '&::after': {\r\n // content: '\"\"',\r\n // position: 'absolute',\r\n // height: '1px',\r\n // borderTop: 'solid 1px #e2dcdc',\r\n // bottom: '-6px',\r\n // width: 'calc(100% - 6px)'\r\n // },\r\n // '&:last-child': {\r\n // '&::after': {\r\n // content: 'initial'\r\n // }\r\n // }\r\n },\r\n \r\n TableCap: {\r\n padding: '13px',\r\n alignItems: 'center',\r\n background: 'white',\r\n boxShadow: '14px 6px 4px -21px rgba(0,0,0,0.2), 0px -4px 2px 0px rgba(0,0,0,0.14), 0px 1px 3px 0px rgba(0,0,0,0.12)',\r\n },\r\n Table: {\r\n marginTop: '11px',\r\n background: 'white'\r\n },\r\n TableTitle: {\r\n textOverflow: 'ellipsis',\r\n whiteSpace: 'nowrap',\r\n overflow: 'hidden',\r\n lineHeight: '140%',\r\n margin: '0px',\r\n fontSize: '14px',\r\n letterSpacing: '-0.006em',\r\n fontWeight: '600',\r\n color: 'rgb(67, 74, 84)',\r\n marginRight: '10px'\r\n },\r\n TableRow: {\r\n cursor: 'pointer',\r\n \"&.selected\": {\r\n background: theme.palette.primary.main,\r\n '& td': {\r\n color: 'white'\r\n }\r\n }\r\n }\r\n}));\r\n\r\nconst Transition = forwardRef(function Transition(\r\n props,\r\n ref,\r\n) {\r\n return ;\r\n});\r\n\r\n\r\nconst convertToSeconds = (milliseconds, showMiliSeconds = true) => {\r\n if (!milliseconds) return ''\r\n const _seconds = Math.round(milliseconds / 1000 * 100) / 100;\r\n if (!showMiliSeconds) {\r\n return `${_seconds}s`\r\n }\r\n return `${milliseconds}ms`\r\n}\r\n\r\nconst getPercentageOfTotal = (total, time) => {\r\n return time > 0 ? `${(time / total * 100).toFixed(2)}%` : 'N/A'\r\n}\r\n\r\nconst IndividualResultDialog = (props) => {\r\n const {\r\n open,\r\n handleClose,\r\n qaResults,\r\n feedSource,\r\n databaseCode,\r\n productCode,\r\n } = props\r\n const classes = useStyles();\r\n\r\n const [blobOpt, setBlobOpt] = React.useState('cloud-storage')\r\n const [timeIncrements, setTimeIncrements] = React.useState([])\r\n const [selectedInc, setSelectedInc] = React.useState('')\r\n const [showMiliSeconds, setShowMiliSeconds] = React.useState(false)\r\n const [showTimePercentage, setShowTimePercentage] = React.useState(false)\r\n const [sortOption, setSortOption] = React.useState(null)\r\n\r\n const filteredResults = useMemo(() => {\r\n if(qaResults){\r\n return qaResults.filter(item => item.loading_source === blobOpt)\r\n }\r\n return []\r\n }, [\r\n blobOpt,\r\n qaResults,\r\n selectedInc\r\n ])\r\n const timeLineData = useMemo(() => {\r\n if(qaResults){\r\n return qaResults.filter(item => item.loading_source === blobOpt && item.time_increment === selectedInc)\r\n }\r\n return []\r\n }, [\r\n blobOpt,\r\n qaResults,\r\n selectedInc\r\n ])\r\n useEffect(() => {\r\n const _results = qaResults.filter(item => item.loading_source === blobOpt)\r\n const _timeIncrements = _results.map(item => item.time_increment)\r\n setTimeIncrements([..._timeIncrements])\r\n if(_timeIncrements.length > 0){\r\n setSelectedInc(_timeIncrements[0])\r\n }else{\r\n setSelectedInc('')\r\n }\r\n }, [\r\n qaResults,\r\n blobOpt\r\n ])\r\n return (\r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n {`${feedSource}/${databaseCode}${productCode !== '' ? '/' + productCode : ''}`}\r\n \r\n {/* */}\r\n \r\n \r\n \r\n setBlobOpt('cloud-storage')}\r\n >CS\r\n \r\n \r\n setBlobOpt('big-query')}\r\n >BG\r\n \r\n \r\n \r\n { setShowMiliSeconds(e.target.checked) }} name=\"showms\" />\r\n }\r\n className='m-0'\r\n label=\"Show MS\"\r\n />\r\n \r\n \r\n { setShowTimePercentage(e.target.checked) }} name=\"showtimePercentage\" />\r\n }\r\n className='m-0'\r\n label=\"Show %\"\r\n />\r\n \r\n \r\n \r\n {/* {subTitle} */}\r\n \r\n \r\n \r\n \r\n Product Code\r\n \r\n \r\n Status\r\n \r\n \r\n TimeIncrement\r\n Asset Load Time\r\n Meta Data Load Time\r\n Blob Load Time\r\n Draw Time\r\n Total Time\r\n \r\n \r\n Score\r\n \r\n \r\n \r\n \r\n \r\n {\r\n filteredResults.length > 0 ? (\r\n <>\r\n {filteredResults.map((item, idx) => (\r\n // row.items?.map((item, iIdx) => (\r\n {\r\n setSelectedInc(item.time_increment)\r\n }}\r\n >\r\n \r\n {item.product_code}\r\n \r\n \r\n {\r\n item.last_error && item.last_error.trim() !== '' ?\r\n \r\n : (\r\n item.category === 'good' ? :\r\n item.category === 'average' ? :\r\n \r\n )\r\n }\r\n {/* // row.staging === 0 ? :\r\n // row.staging === -1 ? :\r\n // */}\r\n \r\n {item.time_increment}\r\n \r\n \r\n \r\n {\r\n showTimePercentage ?\r\n getPercentageOfTotal(item.total_seconds, item.initial_load_seconds) : convertToSeconds(item.initial_load_seconds, showMiliSeconds)\r\n }\r\n \r\n \r\n \r\n \r\n \r\n \r\n {showTimePercentage ? getPercentageOfTotal(item.total_seconds, item.metadata_load_seconds) : convertToSeconds(item.metadata_load_seconds, showMiliSeconds)}\r\n \r\n \r\n \r\n \r\n \r\n \r\n {showTimePercentage ? getPercentageOfTotal(item.total_seconds, item.blob_load_seconds) : convertToSeconds(item.blob_load_seconds, showMiliSeconds)}\r\n \r\n \r\n \r\n \r\n \r\n \r\n {showTimePercentage ? getPercentageOfTotal(item.total_seconds, item.time_to_draw_seconds) : convertToSeconds(item.time_to_draw_seconds, showMiliSeconds)}\r\n \r\n \r\n \r\n \r\n \r\n {convertToSeconds(item.total_seconds, showMiliSeconds)}\r\n \r\n \r\n \r\n {\r\n !(item.last_error && item.last_error.trim() !== '') && (\r\n \r\n {item.score > 0 ? item.score.toFixed(2) : ''}\r\n \r\n )\r\n }\r\n \r\n \r\n // ))\r\n ))}\r\n \r\n ) : (\r\n \r\n There is no Data\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\nIndividualResultDialog.propTypes = {\r\n};\r\n\r\nexport default IndividualResultDialog","import React from \"react\";\r\n\r\nconst cleanPercentage = (percentage) => {\r\n const tooLow = !Number.isFinite(+percentage) || percentage < 0;\r\n const tooHigh = percentage > 100;\r\n return tooLow ? 0 : tooHigh ? 100 : +percentage;\r\n};\r\n\r\nconst Circle = ({ colour, pct }) => {\r\n const r = 70;\r\n const circ = 2 * Math.PI * r;\r\n const strokePct = ((100 - pct) * circ) / 100;\r\n return (\r\n \r\n );\r\n};\r\n\r\nconst Text = ({ percentage, time }) => {\r\n return (\r\n <>\r\n \r\n {percentage.toFixed(0)}%\r\n \r\n \r\n \r\n {time}\r\n \r\n \r\n );\r\n};\r\n\r\nconst Pie = ({ percentage, colour, time = '' }) => {\r\n const pct = cleanPercentage(percentage);\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n );\r\n};\r\n\r\nexport default Pie;\r\n","import React from \"react\";\r\nimport { makeStyles } from \"@mui/styles\";\r\nconst useStyles = makeStyles((theme) => ({\r\n\"success-checkmark\": {\r\n width: '80px',\r\n height: '115px',\r\n margin: '0 auto',\r\n},\r\n\"check-icon\": {\r\n width: '80px',\r\n height: '80px',\r\n position: 'relative',\r\n borderRadius: '50%',\r\n boxSizing: 'content-box',\r\n border: '4px solid #4CAF50',\r\n \r\n \"&::before\": {\r\n top: '3px',\r\n left: -'2px',\r\n width: '30px',\r\n transformOrigin: '100% 50%',\r\n borderRadius: \"100px 0 0 100px\",\r\n },\r\n \r\n \"&::after\": {\r\n top: 0,\r\n left: '30px',\r\n width: '60px',\r\n transformOrigin: '0 50%',\r\n borderRadius: '0 100px 100px 0',\r\n animation: '$rotate-circle 4.25s ease-in',\r\n },\r\n \r\n \"&::before, &::after\": {\r\n content: \"''\",\r\n height: '100px',\r\n position: 'absolute',\r\n background: '#FFFFFF',\r\n transform: 'rotate(-45deg)',\r\n },\r\n},\r\n\r\n\"icon-line\": {\r\n height: '5px',\r\n backgroundColor: '#4CAF50',\r\n display: 'block',\r\n borderRadius: '2px',\r\n position: 'absolute',\r\n zIndex: 10,\r\n \r\n \"&.line-tip\": {\r\n top: '46px',\r\n left: '14px',\r\n width: '25px',\r\n transform: 'rotate(45deg)',\r\n animation: '$icon-line-tip 0.75s',\r\n },\r\n \r\n \"&.line-long\": {\r\n top: '38px',\r\n right: '8px',\r\n width: '47px',\r\n transform: 'rotate(-45deg)',\r\n animation: '$icon-line-long 0.75s',\r\n }\r\n},\r\n\r\n\"icon-circle\": {\r\n top: '-4px',\r\n left: '-4px',\r\n zIndex: 10,\r\n width: '80px',\r\n height: '80px',\r\n borderRadius: '50%',\r\n position: 'absolute',\r\n boxSizing: 'content-box',\r\n border: '4px solid rgba(76, 175, 80, .5)',\r\n},\r\n\r\n\"icon-fix\": {\r\n top: '8px',\r\n width: '5px',\r\n left: '26px',\r\n zIndex: 1,\r\n height: '85px',\r\n position: 'absolute',\r\n transform: 'rotate(-45deg)',\r\n backgroundColor: '#FFFFFF',\r\n},\r\n\r\n'@keyframes rotate-circle': {\r\n \"0%\": {\r\n transform: \"rotate(-45deg)\",\r\n },\r\n \"5%\": {\r\n transform: \"rotate(-45deg)\",\r\n },\r\n \"12%\": {\r\n transform: \"rotate(-405deg)\",\r\n },\r\n \"100%\": {\r\n transform: \"rotate(-405deg)\",\r\n },\r\n},\r\n\r\n\"@keyframes icon-line-tip\": {\r\n \"0%\": {\r\n width: '0',\r\n left: '1px',\r\n top: '19px',\r\n },\r\n \"54%\": {\r\n width: '0',\r\n left: '1px',\r\n top: '19px',\r\n },\r\n \"70%\": {\r\n width: '50px',\r\n left: '-8px',\r\n top: '37px',\r\n },\r\n \"84%\": {\r\n width: '17px',\r\n left: '21px',\r\n top: '48px',\r\n },\r\n \"100%\": {\r\n width: '25px',\r\n left: '14px',\r\n top: '45px',\r\n },\r\n},\r\n\r\n\"@keyframes icon-line-long\": {\r\n \"0%\": {\r\n width: '0',\r\n right: '46px',\r\n top: '54px',\r\n },\r\n \"65%\": {\r\n width: '0',\r\n right: '46px',\r\n top: '54px',\r\n },\r\n \"84%\": {\r\n width: '55px',\r\n right: '0px',\r\n top: '35px',\r\n },\r\n \"100%\": {\r\n width: '47px',\r\n right: '8px',\r\n top: '38px',\r\n },\r\n}\r\n}))\r\nconst SuccessCheck = () => {\r\n const classes = useStyles()\r\n return (\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n );\r\n};\r\n\r\nexport default SuccessCheck;\r\n","import React, { useEffect, useState } from 'react';\r\nimport { makeStyles } from \"@mui/styles\";\r\n\r\nimport {\r\n Dialog,\r\n DialogActions,\r\n DialogContent,\r\n lighten,\r\n Grid,\r\n Button,\r\n Box,\r\n} from \"@mui/material\";\r\nimport { useDispatch } from 'react-redux';\r\nimport {\r\n stopFrontendQAProcess,\r\n} from 'store/slices/FrontendQA';\r\nimport { Typography } from 'antd';\r\nimport LoadingOverlay from 'components/common/LoadingOverlay';\r\nimport Pie from 'views/qa/PieChart';\r\nimport SuccessCheck from 'views/qa/components/SuccessCheck';\r\n\r\nconst useStyles = makeStyles((theme) => ({\r\n root: {\r\n // padding: 0,\r\n position: 'relative',\r\n height: '200px',\r\n },\r\n loadingBox: {\r\n position: 'absolute',\r\n width: '100%',\r\n height: '100%',\r\n zIndex: 1000,\r\n top: 0,\r\n display: 'flex',\r\n justifyContent: 'center',\r\n alignItems: 'center',\r\n // background: \"#8080800a\"\r\n background: \"white\"\r\n },\r\n DialogContent: {\r\n '& .MuiDialog-paper': {\r\n width: '500px',\r\n maxWidth: '100rem',\r\n }\r\n },\r\n Txt: {\r\n color: 'black'\r\n },\r\n highlight:\r\n theme.palette.type === 'light'\r\n ? {\r\n color: theme.palette.secondary.main,\r\n backgroundColor: lighten(theme.palette.secondary.light, 0.85),\r\n }\r\n : {\r\n color: theme.palette.text.primary,\r\n backgroundColor: theme.palette.secondary.dark,\r\n },\r\n BorderedBox: {\r\n display: 'flex',\r\n flexFlow: 'column',\r\n border: '1px solid #e0e0e0',\r\n borderRadius: 4,\r\n minHeight: '100px',\r\n height: '100%',\r\n padding: '10px',\r\n maxHeight: '500px',\r\n overflow: 'auto',\r\n paddingBottom: '35px'\r\n },\r\n ListItemText: {\r\n fontSize: 14\r\n },\r\n ListItemButton: {\r\n padding: '5px 11px'\r\n },\r\n selectedLine: {\r\n background: '#dfdfdf'\r\n },\r\n\r\n InputField: {\r\n // width: 'auto',\r\n '& input': {\r\n fontSize: '12px',\r\n // width: '182px',\r\n padding: '6px',\r\n marginBottom: 0\r\n }\r\n },\r\n score: {\r\n fontSize: '20px'\r\n },\r\n LoadingOverlay: {\r\n '& > div': {\r\n zIndex: 1000\r\n }\r\n },\r\n BatchConfirmBox: {\r\n position: 'absolute',\r\n width: '100%',\r\n height: '100%',\r\n background: '#ffffffed',\r\n display: 'flex',\r\n alignItems: 'center',\r\n justifyContent: 'center',\r\n flexFlow: 'column'\r\n },\r\n BatchconfirmBoxText: {\r\n fontSize: '18px',\r\n marginBottom: '27px'\r\n }\r\n}));\r\n\r\nconst formatTimeDifference = (timeDifference) => {\r\n // Convert to hours and minutes\r\n const totalDiff = timeDifference / 1000\r\n const hours = Math.floor(totalDiff / 3600);\r\n const restMinutes = Math.floor((totalDiff % 3600) / 60);\r\n\r\n if (hours > 0) {\r\n if (restMinutes > 0) {\r\n return `${hours}:${restMinutes} h`\r\n }\r\n return `${hours} h`\r\n } else {\r\n const minutes = Math.round((totalDiff / 60));\r\n if (minutes > 0) {\r\n return `${minutes} mins`\r\n }\r\n }\r\n return '0h'\r\n}\r\n\r\n// const formatTimeDifference = (timeDifference) => {\r\n// // Convert to hours and minutes\r\n// var hours = Math.floor((timeDifference / 1000) / 3600);\r\n// var minutes = Math.round(((timeDifference / 1000) / 60));\r\n// var secs = Math.round(((timeDifference / 1000)));\r\n// console.log(hours, minutes, secs, 'secs')\r\n\r\n// if(hours > 0){\r\n// if(minutes > 0){\r\n// return `${hours}:${minutes} h`\r\n// }\r\n// return `${hours} h`\r\n// }else{\r\n// if(minutes > 0){\r\n// return `${minutes} mins`\r\n// }\r\n// }\r\n// return '0h'\r\n// }\r\n\r\nconst ProgressPopupDialog = (props) => {\r\n const {\r\n open,\r\n handleClose,\r\n expectTime: initExpectTime = 0,\r\n apiRequest = () => {}\r\n } = props\r\n\r\n const classes = useStyles();\r\n const dispatch = useDispatch()\r\n const [loading, setLoading] = useState(false)\r\n const [score, setScore] = useState(0)\r\n\r\n const onClose = () => {\r\n if (loading) return;\r\n handleClose()\r\n }\r\n const [progressVal, setProgressVal] = useState(0)\r\n const [consumedTime, setConsumedTime] = useState(0)\r\n const [expectTime, setInitExpectTime] = useState(initExpectTime)\r\n\r\n const startClock = () => {\r\n setLoading(true);\r\n let _interConsumedTime = 0;\r\n const intervalId = setInterval(() => {\r\n _interConsumedTime += 1000\r\n setConsumedTime(_interConsumedTime);\r\n // Calculate progress based on consumed time and expect time\r\n const newProgress = (_interConsumedTime / expectTime) * 100;\r\n if(newProgress + 100 < _interConsumedTime){\r\n setProgressVal(newProgress); \r\n }\r\n console.log(_interConsumedTime)\r\n console.log(newProgress, 'newProgress')\r\n \r\n // Check if consumed time exceeds expect time\r\n if (_interConsumedTime > (expectTime + 100)) {\r\n clearInterval(intervalId);\r\n // setLoading(false);\r\n // Handle completion or timeout\r\n }\r\n }, 1000); // Update every second\r\n };\r\n useEffect(() => {\r\n startClock()\r\n apiRequest().then(r => {\r\n clearInterval();\r\n handleClose()\r\n })\r\n .catch(e => {\r\n console.log(e, 'e')\r\n })\r\n return () => {\r\n // Clear any ongoing intervals when the component unmounts\r\n clearInterval();\r\n };\r\n }, [\r\n ])\r\n\r\n\r\n return (\r\n <>\r\n \r\n \r\n \r\n \r\n \r\n \r\n {\r\n loading && (\r\n \r\n \r\n \r\n \r\n \r\n )\r\n }\r\n {\r\n (!loading && score > 0) && (\r\n \r\n \r\n \r\n {/* Successfully Done! */}\r\n {score} Score\r\n {\r\n score >= 90 ? \"The product code performance is good.\" :\r\n score >= 70 ? \"The product code performance is average.\" :\r\n \"The product code performance needs improvement.\"\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 loading && \r\n }\r\n \r\n \r\n \r\n );\r\n};\r\n\r\nProgressPopupDialog.propTypes = {\r\n};\r\n\r\nexport default ProgressPopupDialog","import { useState } from 'react';\r\nimport { fetchFrontendQAResults } from 'store/slices/FrontendQA';\r\nimport { showSnackbarMessage } from 'store/slices/MessagesSystemSlice';\r\n\r\nconst useFetchQAResults = (dispatch, callback = () => {}) => {\r\n const [qaResults, setQAResults] = useState([])\r\n const [loading, setLoading] = useState(false)\r\n\r\n const fetchQaResults = (params) => {\r\n return new Promise((resolve, reject) => {\r\n setLoading(true)\r\n dispatch(fetchFrontendQAResults({...params})).then((r) => {\r\n if(r.payload){\r\n setQAResults(r.payload)\r\n callback()\r\n setLoading(false)\r\n }\r\n resolve(r)\r\n }).catch((e) => {\r\n setLoading(false)\r\n reject(e)\r\n })\r\n })\r\n }\r\n\r\n return [fetchQaResults, {\r\n qaResults,\r\n loading\r\n }];\r\n};\r\n\r\nexport default useFetchQAResults;","import React, { useEffect, useState, useRef, useCallback, useMemo } from 'react'\r\nimport { useDispatch, useSelector } from \"react-redux\"\r\nimport { useParams, useHistory } from 'react-router-dom'\r\nimport {\r\n Box, Chip, Typography\r\n} from \"@mui/material\"\r\n\r\nimport ListItem from '../Details/ListItem';\r\n\r\nimport { fetchStockProducts, clearStockProducts } from \"store/slices/EodDataSlice\";\r\nimport { fetchSearchData } from 'store/slices/SearchSlice';\r\nimport QLink from '../Details/QLink';\r\nimport useRunIndividualQA from 'hooks/RunIndividualQA';\r\nimport IndividualResultDialog from './IndividualResultDialog';\r\nimport ProgressPopupDialog from '../Details/ProgressPopupDialog';\r\nimport config from 'config.json'\r\nimport { parseDateToLocalFormat } from 'shared/utilities/dateHelpers';\r\nimport useFetchQAResults from 'hooks/FetchQAResults';\r\nimport { updateFrontendQABatch } from 'store/slices/FrontendQA';\r\n\r\nconst ListItemComponent = ({ feedSource, item, active, clickHandler, clickQaHandler, setSelected, setHovered, inProgressOfQA = false }) => (\r\n clickHandler(item)}\r\n onMouseEnter={() => setSelected(item)}\r\n onMouseLeave={() => setHovered(undefined)}\r\n >\r\n \r\n \r\n \r\n {\r\n ['Barchart', 'ALPACA'].indexOf(feedSource) > -1 ? item.product_code : (item.title ? item.title : item.product_code).replace('EOD/', '')\r\n }\r\n \r\n \r\n \r\n {\r\n item.pass_count && item.pass_count > 0 && \r\n }\r\n {\r\n item.fail_count && item.fail_count > 0 && \r\n }\r\n \r\n {item.last_frontend_qa_date ? parseDateToLocalFormat(item.last_frontend_qa_date) : ''}\r\n {\r\n e.stopPropagation();\r\n clickQaHandler(item)\r\n }}\r\n />\r\n \r\n \r\n \r\n \r\n \r\n)\r\n\r\nconst Lists = (props) => {\r\n const history = useHistory();\r\n const dispatch = useDispatch()\r\n const [selected, setSelected] = useState(undefined)\r\n const [cursor, setCursor] = useState(0)\r\n const [hovered, setHovered] = useState(undefined)\r\n const [productCodeInQA, setProductCodeInQa] = useState(null)\r\n const [showQAProgress, setShowQAProgress] = useState(false);\r\n const [showQAResult, setShowQAResult] = useState(false)\r\n const [expectTime, setExpectTime] = useState(0);\r\n const items = props.productCodes\r\n const { feedSource, feedDatabaseCode } = props\r\n const [qaResultType, setQaResultType] = useState('stored')\r\n\r\n const [triggerIndividualQA, {\r\n isLoading: inMeasuring,\r\n qaResults: newQaResults = []\r\n }] = useRunIndividualQA(dispatch, () => {\r\n setShowQAResult(true)\r\n });\r\n const [fetchQaResults, {\r\n qaResults: storedQaResults,\r\n loading: loadingQAResults\r\n }] = useFetchQAResults(dispatch)\r\n\r\n const qaResults = useMemo(() => {\r\n if(qaResultType === 'stored'){\r\n return storedQaResults\r\n }\r\n return newQaResults\r\n }, [\r\n qaResultType,\r\n newQaResults,\r\n storedQaResults\r\n ])\r\n const openStock = (item) => {\r\n if (item !== undefined && item.product_code !== undefined && item.series_type !== undefined) {\r\n if (feedSource === '' || feedDatabaseCode === '' || item.product_code === '') {\r\n return\r\n }\r\n // dispatch(setProductData(item))\r\n history.push(`/product/detail/${encodeURIComponent(feedSource)}/${encodeURIComponent(feedDatabaseCode)}/${encodeURIComponent(item.product_code)}`)\r\n }\r\n }\r\n\r\n useEffect(() => {\r\n if (items.length && hovered) {\r\n setCursor(items.indexOf(hovered))\r\n }\r\n }, [hovered])\r\n\r\n const clickHandler = (item) => {\r\n if(item.report_id){\r\n setProductCodeInQa(item.product_code)\r\n fetchQaResults({\r\n reportId: item.report_id,\r\n blobOpt: 'all',\r\n feedSource,\r\n databaseCode: feedDatabaseCode,\r\n productCode: item.product_code\r\n }).then(r => {\r\n if (r && r.payload) {\r\n setShowQAResult(true)\r\n }\r\n })\r\n }\r\n return\r\n }\r\n const clickQaHandler = (item) => {\r\n if(inMeasuring) return;\r\n const _expectTime= item.memory_size / config.averageLoadCapacity * 1 + 5000\r\n setExpectTime(_expectTime)\r\n setProductCodeInQa(item.product_code)\r\n setShowQAProgress(true);\r\n }\r\n\r\n const qaRequest = (productCode) => {\r\n return new Promise((resolve, reject) => {\r\n triggerIndividualQA({\r\n feedSource,\r\n databaseCode: feedDatabaseCode,\r\n productCode: productCode\r\n }).then((r) => {\r\n resolve(r)\r\n }).catch(e => {\r\n console.log(e, 'e???')\r\n reject(e)\r\n })\r\n })\r\n }\r\n\r\n let pressedKeys = {}\r\n\r\n //When use press key\r\n function keyDownHandler(e) {\r\n pressedKeys[e.keyCode] = true\r\n if (items.length) {\r\n if (e.key === 'ArrowDown') {\r\n setCursor(prevState => {\r\n return prevState < items.length - 1 ? cursor + 1 : cursor\r\n })\r\n } else if (e.key === 'ArrowUp') {\r\n setCursor(prevState => {\r\n return prevState > 0 ? prevState - 1 : prevState\r\n })\r\n }\r\n }\r\n }\r\n\r\n //When user release key pressing\r\n function keyUpHandler(e) {\r\n pressedKeys[e.keyCode] = false\r\n const item = items[cursor]\r\n openStock(item)\r\n }\r\n\r\n React.useEffect(() => {\r\n window.addEventListener(\"keydown\", keyDownHandler)\r\n window.addEventListener(\"keyup\", keyUpHandler)\r\n return () => {\r\n if (window && window.removeEventListener) {\r\n window.removeEventListener(\"keydown\", keyDownHandler)\r\n window.removeEventListener(\"keyup\", keyUpHandler)\r\n }\r\n }\r\n })\r\n const selectedProductName = useSelector(state => state.productData.productName)\r\n\r\n return (\r\n <>\r\n {items.map((item, i) => (\r\n \r\n ))}\r\n {\r\n showQAResult && {\r\n setShowQAResult(false)\r\n setProductCodeInQa(null)\r\n setQaResultType('stored')\r\n }}\r\n feedSource={feedSource}\r\n databaseCode={feedDatabaseCode}\r\n productCode={productCodeInQA}\r\n qaResults={qaResults}\r\n />\r\n }\r\n {\r\n showQAProgress && productCodeInQA && {\r\n setShowQAProgress(false)\r\n setQaResultType('run')\r\n }}\r\n expectTime={expectTime}\r\n open={showQAProgress}\r\n apiRequest={() => qaRequest(productCodeInQA)}\r\n />\r\n }\r\n \r\n )\r\n}\r\n\r\nconst StockProductCodes = (props) => {\r\n const dispatch = useDispatch();\r\n const history = useHistory()\r\n const {\r\n productCode: mProductCode,\r\n databaseCode: mDatabaseCode,\r\n feedSource: mFeedSource,\r\n } = useParams()\r\n const ref = useRef(null)\r\n const isLoading = useSelector(state => state.eodData.loadingInProgress)\r\n const [isSearching, setIsSearching] = useState(false)\r\n const stockProducts = useSelector(state => state.eodData.stockProducts)\r\n const isFull = useSelector(state => state.eodData.isStockProductsFull)\r\n const { feedSource, feedDatabaseCode, sectionName, searchWord, value: stepIndex } = props\r\n const [productCode, setProductCode] = useState('')\r\n const [searchResults, setResults] = useState([])\r\n const scrollHandler = useCallback(() => {\r\n if (\r\n stockProducts.length > 0 &&\r\n ref.current.scrollTop + ref.current.clientHeight >=\r\n ref.current.scrollHeight\r\n ) {\r\n if (!isFull && !isLoading && !isSearching) {\r\n dispatch(fetchStockProducts({\r\n feed_source: feedSource,\r\n database_code: feedDatabaseCode,\r\n start_index: stockProducts?.length,\r\n section_name: sectionName\r\n }))\r\n }\r\n }\r\n }, [\r\n feedSource,\r\n feedDatabaseCode,\r\n sectionName,\r\n stockProducts,\r\n isFull\r\n ])\r\n useEffect(() => {\r\n if (mProductCode && mDatabaseCode === feedDatabaseCode && mFeedSource === feedSource) {\r\n setProductCode(mProductCode)\r\n }\r\n if (ref.current) {\r\n ref.current.addEventListener(\"scroll\", scrollHandler)\r\n }\r\n return () => {\r\n if (ref.current && ref.current.removeEventListener) {\r\n ref.current.removeEventListener('scroll', scrollHandler)\r\n }\r\n setProductCode('')\r\n }\r\n }, [\r\n ref,\r\n mProductCode,\r\n mDatabaseCode,\r\n mFeedSource,\r\n stockProducts,\r\n isFull\r\n ]);\r\n useEffect(() => {\r\n if (feedSource && feedDatabaseCode && stepIndex === 3) {\r\n // if (searchWord === '') {\r\n // this.props.clearStockProducts()\r\n dispatch(clearStockProducts())\r\n dispatch(fetchStockProducts({\r\n feed_source: feedSource,\r\n database_code: feedDatabaseCode,\r\n section_name: sectionName,\r\n search_word: searchWord,\r\n isQa: 1\r\n }))\r\n // } else {\r\n // const params = {\r\n // search: searchWord,\r\n // global: false\r\n // }\r\n // if (feedSource !== '') {\r\n // params.feed_source = feedSource\r\n // }\r\n // if (feedDatabaseCode !== '') {\r\n // params.database_code = feedDatabaseCode\r\n // }\r\n // // if (sectionName && sectionName !== '') {\r\n // // params.section_name = sectionName\r\n // // }\r\n // setIsSearching(true)\r\n // try {\r\n // dispatch(fetchSearchData(params)).then(r => {\r\n // if (r.payload) {\r\n // const { suggestions } = r.payload\r\n // if (Array.isArray(suggestions)) {\r\n // setResults([...suggestions]);\r\n // }\r\n // setIsSearching(false)\r\n // }\r\n // })\r\n // } catch (e) {\r\n // setIsSearching(false)\r\n // }\r\n // }\r\n }\r\n }, [\r\n feedSource,\r\n feedDatabaseCode,\r\n sectionName,\r\n searchWord,\r\n stepIndex\r\n ])\r\n const loadingMoreStyle = {\r\n textAlign: 'center',\r\n marginTop: '10px',\r\n marginBottom: '20px'\r\n }\r\n\r\n const onClickQa = () => {\r\n\r\n }\r\n\r\n return (\r\n \r\n {\r\n isLoading ? Loading... : ''\r\n }\r\n \r\n \r\n )\r\n}\r\n\r\nexport default StockProductCodes\r\n","import React, { useEffect, useState } from 'react';\r\nimport {useParams} from \"react-router-dom\"\r\nimport { clearSections, fetchFeedSections } from 'store/slices/EodDataSlice';\r\nimport { useDispatch, useSelector } from 'react-redux';\r\nimport { Box } from \"@mui/material\";\r\nimport ListItem from './Details/ListItem';\r\nimport LoadingOverlay from 'components/common/LoadingOverlay';\r\n\r\nconst ListItemComponent = ({item, active, clickHandler, setHovered}) => (\r\n clickHandler(item)}\r\n onMouseLeave={() => setHovered(undefined)}\r\n >\r\n \r\n {item.section_name} \r\n \r\n \r\n)\r\n\r\nconst Lists = (props) => {\r\n const { sections: items = [] } = props;\r\n const { feedSource: pFeedSource } = useParams()\r\n const [cursor, setCursor] = useState(0)\r\n const [hovered, setHovered] = useState(undefined)\r\n const {feedSource} = props\r\n\r\n useEffect(() => {\r\n if (items.length && hovered) {\r\n setCursor(items.indexOf(hovered))\r\n }\r\n }, [hovered])\r\n\r\n const clickHandler = (item) => {\r\n if (feedSource === '' || item.section_name === '') {\r\n return\r\n }\r\n props.changeStep2Index(3, item.section_name)\r\n setCursor(items.indexOf(item))\r\n }\r\n\r\n return (\r\n <>\r\n {items.map((item, i) => (\r\n \r\n ))}\r\n \r\n )\r\n}\r\n\r\nconst FeedSectionBox = (props) => {\r\n const { isLoading } = props;\r\n\r\n const sections = useSelector(state => state.eodData.sections)\r\n \r\n return \r\n {\r\n sections?.length > 0 ? (\r\n \r\n ) : !isLoading ? (\r\n There is no Section\r\n ) : <>\r\n }\r\n \r\n}\r\n\r\nexport default function StockSections(props) {\r\n const { feedSource, feedDatabaseCode: databaseCode, searchWord = '' } = props\r\n const dispatch = useDispatch();\r\n \r\n const isLoading = useSelector(state => state.eodData.loadingSections)\r\n \r\n \r\n const triggerFetchFeedSections = (params = {}) => {\r\n if(feedSource && feedSource !== ''){\r\n dispatch(fetchFeedSections({\r\n feedSource,\r\n databaseCode,\r\n ...params\r\n })).then(r => {\r\n console.log(r, 'r')\r\n })\r\n }\r\n }\r\n useEffect(() => {\r\n if(feedSource && feedSource !== '' && databaseCode && databaseCode !== ''){\r\n if(!searchWord || searchWord === ''){\r\n dispatch(clearSections())\r\n triggerFetchFeedSections()\r\n }else{\r\n dispatch(clearSections({ flag: 'search' }))\r\n triggerFetchFeedSections({searchWord})\r\n }\r\n }\r\n }, [\r\n feedSource,\r\n databaseCode,\r\n searchWord\r\n ])\r\n \r\n return (\r\n \r\n \r\n \r\n \r\n \r\n );\r\n}","import { useState } from 'react';\r\nimport { getFeedSourceDatabaseCodesQA } from 'store/slices/FrontendQA';\r\nimport { showSnackbarMessage } from 'store/slices/MessagesSystemSlice';\r\n\r\nconst useRunFeedSourceDatabaseCodesQA = (dispatch, callback) => {\r\n const [isLoading, setIsLoading] = useState(false);\r\n const [qaResult, setQAResult] = useState({})\r\n\r\n const errorBlock = (error) => {\r\n dispatch(showSnackbarMessage({\r\n message: 'Error is happened in running Database Codes QA process',\r\n severity: 'error'\r\n }))\r\n setQAResult({})\r\n console.log(error, 'in the run databasecodes qa hook')\r\n }\r\n\r\n const triggerRequest = async (feedSource) => {\r\n if (isLoading) return\r\n setIsLoading(true)\r\n const { payload: qaData } = await dispatch(getFeedSourceDatabaseCodesQA({feedSource}))\r\n setIsLoading(false)\r\n console.log(qaData, 'qaData')\r\n if (!(qaData)) {\r\n errorBlock()\r\n return\r\n };\r\n setQAResult(qaData)\r\n };\r\n\r\n return [triggerRequest, {\r\n isLoading,\r\n qaResult,\r\n }];\r\n};\r\n\r\nexport default useRunFeedSourceDatabaseCodesQA;","import React, { useEffect } from 'react';\r\nimport { useDispatch } from 'react-redux';\r\nimport { Box } from \"@mui/material\";\r\nimport { makeStyles } from \"@mui/styles\";\r\nimport LoadingOverlay from 'components/common/LoadingOverlay';\r\nimport useRunFeedSourceDatabaseCodesQA from 'hooks/RunFeedSourceDatabaseCodesQA';\r\n\r\nconst useStyles = makeStyles(() => ({\r\n root: {\r\n display: 'flex',\r\n flexDirection: 'column',\r\n height: '100%',\r\n position: 'absolute',\r\n width: '100%',\r\n padding: '14px 12px',\r\n },\r\n QAItem: {\r\n display: 'flex'\r\n },\r\n QAItemLabel: {\r\n fontWeight: 'bold',\r\n textTransform: 'uppercase',\r\n marginRight: '18px',\r\n width: 150\r\n },\r\n QAItemValue: {\r\n }\r\n}));\r\n\r\nconst convertToSeconds = (milliseconds, showMiliSeconds = true) => {\r\n if (!milliseconds) return ''\r\n const _seconds = Math.round(milliseconds / 1000 * 100) / 100;\r\n if (!showMiliSeconds) {\r\n return `${_seconds}s`\r\n }\r\n return `${milliseconds}ms`\r\n}\r\nexport default function StockDatabaseCodeQA(props) {\r\n const classes = useStyles();\r\n const { feedSource } = props\r\n const dispatch = useDispatch();\r\n const [triggerDatabaseCodeQA, { isLoading, qaResult }] = useRunFeedSourceDatabaseCodesQA(dispatch);\r\n\r\n useEffect(() => {\r\n triggerDatabaseCodeQA(feedSource)\r\n }, [\r\n feedSource\r\n ])\r\n \r\n return (\r\n \r\n \r\n \r\n Database Counts:\r\n {qaResult.rowCount}\r\n \r\n \r\n Execution Time:\r\n { (qaResult.executionTime/1000).toFixed(2)}s ({qaResult.executionTime}ms)\r\n \r\n \r\n \r\n );\r\n}","import React, { useCallback, useEffect, useRef, useState } from 'react';\r\nimport { useParams } from \"react-router-dom\"\r\nimport { useHistory } from \"react-router-dom\"\r\nimport { clearDatabaseCodes, fetchFeedDatabaseCodes } from 'store/slices/EodDataSlice';\r\nimport { useDispatch, useSelector } from 'react-redux';\r\nimport { Box, Typography } from \"@mui/material\";\r\nimport ListItem from '../Details/ListItem';\r\nimport LoadingOverlay from 'components/common/LoadingOverlay';\r\nimport QLink from '../Details/QLink';\r\nimport { parseDateToLocalFormat } from 'shared/utilities/dateHelpers';\r\n\r\nconst ListItemComponent = ({ item, active, clickHandler, clickQaHandler, setSelected, setHovered }) => (\r\n clickHandler(item)}\r\n onMouseEnter={() => setSelected(item)}\r\n onMouseLeave={() => setHovered(undefined)}\r\n >\r\n \r\n \r\n {item.title ?? item.database_code} { `(${ item.product_count || 0 })` } \r\n \r\n {item.last_frontend_qa_date ? parseDateToLocalFormat(item.last_frontend_qa_date) : ''}\r\n \r\n \r\n \r\n\r\n \r\n \r\n)\r\n\r\nconst Lists = (props) => {\r\n const { databaseCodes: items = [] } = props;\r\n const history = useHistory()\r\n const { feedSource: pFeedSource, databaseCode: pDatabaseCode } = useParams()\r\n const step1Sidebar = useSelector(state => state.appLayout.step1Sidebar)\r\n const [selected, setSelected] = useState(undefined)\r\n const [cursor, setCursor] = useState(0)\r\n const [hovered, setHovered] = useState(undefined)\r\n const { feedSource } = props\r\n const openStock = (item) => {\r\n if (item !== undefined) {\r\n if (feedSource === '' || item.database_code === '') {\r\n return\r\n }\r\n if (feedSource == 'BEA' && item.database_code === \"MNE\") {\r\n // history.push(`/bea_mne`)\r\n }\r\n if (item.not_have_product) {\r\n // if(feedSource === 'ZILLOW' && item.databaseCode === 'DATA'){\r\n // props.changeStep2Index(2, item.database_code) \r\n // }else{\r\n // history.push(`/product/detail/${encodeURIComponent(feedSource)}/${encodeURIComponent(item.database_code)}/${encodeURIComponent('')}`)\r\n // }\r\n }\r\n }\r\n }\r\n\r\n useEffect(() => {\r\n if (items.length && hovered) {\r\n setCursor(items.indexOf(hovered))\r\n }\r\n }, [hovered])\r\n\r\n const clickHandler = (item) => {\r\n if (feedSource === '' || item.database_code === '') {\r\n return\r\n }\r\n if (item.feed_source == 'BEA' && item.database_code === \"MNE\") {\r\n history.push(`/bea_mne`)\r\n return;\r\n }\r\n if (item.not_have_product) {\r\n // if(feedSource === 'ZILLOW' && item.databaseCode === 'DATA'){\r\n props.changeStep2Index(2, item.database_code) \r\n // }else{\r\n // history.push(`/product/detail/${encodeURIComponent(feedSource)}/${encodeURIComponent(item.database_code)}/${encodeURIComponent('')}`)\r\n // }\r\n } else {\r\n if (item.section_count && item.section_count > 0) {\r\n props.changeStep2Index(2, item.database_code)\r\n } else {\r\n props.changeStep2Index(3, item.database_code, 'databaseCode')\r\n }\r\n }\r\n setCursor(items.indexOf(item))\r\n }\r\n\r\n let pressedKeys = {}\r\n\r\n //When use press key\r\n function keyDownHandler(e) {\r\n pressedKeys[e.keyCode] = true\r\n if (items.length) {\r\n if (e.key === 'ArrowDown') {\r\n setCursor(prevState => {\r\n return prevState < items.length - 1 ? cursor + 1 : cursor\r\n })\r\n } else if (e.key === 'ArrowUp') {\r\n setCursor(prevState => {\r\n return prevState > 0 ? prevState - 1 : prevState\r\n })\r\n }\r\n }\r\n }\r\n\r\n //When user release key pressing\r\n function keyUpHandler(e) {\r\n pressedKeys[e.keyCode] = false\r\n const item = items[cursor]\r\n openStock(item)\r\n }\r\n\r\n React.useEffect(() => {\r\n window.addEventListener(\"keydown\", keyDownHandler)\r\n window.addEventListener(\"keyup\", keyUpHandler)\r\n return () => {\r\n if (window && window.removeEventListener) {\r\n window.removeEventListener(\"keydown\", keyDownHandler)\r\n window.removeEventListener(\"keyup\", keyUpHandler)\r\n }\r\n }\r\n })\r\n\r\n return (\r\n <>\r\n {items.map((item, i) => (\r\n {\r\n e.stopPropagation();\r\n // changeStep2Index(1, item.feed_source, null, true);\r\n history.push(`/qa/${feedSource}/${item.database_code}`)\r\n console.log(item, 'item')\r\n }}\r\n setHovered={setHovered}\r\n />\r\n ))}\r\n \r\n )\r\n}\r\n\r\nconst DatabaseCodeBox = (props) => {\r\n const { isLoading, triggerFetchDatabaseCodes } = props;\r\n\r\n const databaseCodes = useSelector(state => state.eodData.databaseCodes)\r\n const isFull = useSelector(state => state.eodData.isDatabaseCodesFull)\r\n\r\n const ref = useRef(null)\r\n\r\n\r\n const loadMore = () => {\r\n const params = {}\r\n if (isFull || isLoading) return\r\n params.startIndex = databaseCodes?.length\r\n triggerFetchDatabaseCodes({\r\n ...params\r\n })\r\n }\r\n\r\n const scrollHandler = useCallback(() => {\r\n if (\r\n ref.current &&\r\n databaseCodes.length > 0 &&\r\n ref.current.scrollTop + ref.current.clientHeight >=\r\n ref.current.scrollHeight\r\n ) {\r\n if (isFull) return false\r\n loadMore()\r\n }\r\n }, [\r\n databaseCodes,\r\n isFull,\r\n ])\r\n\r\n useEffect(() => {\r\n if (ref.current) {\r\n ref.current.addEventListener(\"scroll\", scrollHandler)\r\n }\r\n return () => {\r\n if (ref.current && ref.current.removeEventListener) {\r\n ref.current.removeEventListener('scroll', scrollHandler)\r\n }\r\n }\r\n }, [\r\n ref,\r\n databaseCodes\r\n ]);\r\n return \r\n {\r\n databaseCodes?.length > 0 ? (\r\n \r\n ) : !isLoading ? (\r\n There is no Database Codes\r\n ) : <>\r\n }\r\n \r\n}\r\nconst SearchResultBox = (props) => {\r\n const { isLoading, triggerFetchDatabaseCodes, searchWord } = props;\r\n const databaseCodes = useSelector(state => state.eodData.filterDatabaseCodes)\r\n const isFilterFull = useSelector(state => state.eodData.isFilterDatabaseCodesFull)\r\n\r\n const ref = useRef(null);\r\n\r\n const loadMore = () => {\r\n const params = {}\r\n if (isFilterFull || isLoading) return\r\n params.startIndex = databaseCodes?.length\r\n params.searchWord = searchWord\r\n triggerFetchDatabaseCodes({\r\n ...params\r\n })\r\n }\r\n\r\n const scrollHandler = useCallback(() => {\r\n if (\r\n ref.current &&\r\n databaseCodes.length > 0 &&\r\n ref.current.scrollTop + ref.current.clientHeight >=\r\n ref.current.scrollHeight\r\n ) {\r\n if (isFilterFull) return false\r\n loadMore()\r\n }\r\n }, [\r\n searchWord,\r\n databaseCodes,\r\n isFilterFull\r\n ])\r\n\r\n useEffect(() => {\r\n if (ref.current) {\r\n ref.current.addEventListener(\"scroll\", scrollHandler)\r\n }\r\n return () => {\r\n if (ref.current && ref.current.removeEventListener) {\r\n ref.current.removeEventListener('scroll', scrollHandler)\r\n }\r\n }\r\n }, [\r\n ref,\r\n databaseCodes\r\n ]);\r\n\r\n return \r\n {\r\n databaseCodes?.length > 0 ? (\r\n \r\n ) : !isLoading ? (\r\n There is no Database Codes\r\n ) : <>\r\n }\r\n \r\n}\r\n\r\nexport default function StockDatabaseCodes(props) {\r\n const { feedSource, searchWord = '', stepIndex } = props\r\n const dispatch = useDispatch();\r\n\r\n const isLoading = useSelector(state => state.eodData.loadingDatabaseCodes)\r\n const step2Index = useSelector(state => state.eodData.step2Index)\r\n\r\n\r\n const triggerFetchDatabaseCodes = (params = {}) => {\r\n if (feedSource && feedSource !== '') {\r\n dispatch(fetchFeedDatabaseCodes({\r\n feedSource: feedSource,\r\n isQa: 1,\r\n ...params\r\n }))\r\n }\r\n }\r\n useEffect(() => {\r\n if (feedSource && feedSource !== '') {\r\n if (!searchWord || searchWord === '') {\r\n dispatch(clearDatabaseCodes())\r\n triggerFetchDatabaseCodes()\r\n } else {\r\n dispatch(clearDatabaseCodes({ flag: 'search' }))\r\n triggerFetchDatabaseCodes({\r\n searchWord\r\n })\r\n }\r\n }\r\n }, [\r\n feedSource,\r\n step2Index,\r\n searchWord\r\n ])\r\n\r\n return (\r\n \r\n \r\n {\r\n searchWord === '' ? (\r\n \r\n ) : (\r\n \r\n )\r\n }\r\n \r\n \r\n );\r\n}","import React, { useCallback, useEffect, useRef, useState } from 'react';\r\n// import {useParams} from \"react-router-dom\"\r\n// import { useHistory } from \"react-router-dom\"\r\n// import { clearDatabaseCodes, fetchFeedDatabaseCodes } from 'store/slices/EodDataSlice';\r\nimport { useDispatch, useSelector } from 'react-redux';\r\n// import { Box, Typography } from \"@mui/material\";\r\n// import ListItem from './Details/ListItem';\r\nimport StockDatabaseCodeQA from './StockDatabaseCodesQA';\r\nimport StockDatabaseCodes from './StockDatabaseCodes';\r\n\r\nexport default function StockDatabaseCodeContainer({\r\n feedSource,\r\n searchWord,\r\n step2Index,\r\n changeStep2Index,\r\n isQa\r\n}) {\r\n const dispatch = useDispatch();\r\n \r\n \r\n return (\r\n <>\r\n {\r\n !isQa ? \r\n : \r\n {\r\n // changeStep2Index()\r\n }}\r\n feedSource={feedSource}\r\n searchWord={searchWord}\r\n />\r\n }\r\n \r\n );\r\n}","import { useState } from 'react';\r\nimport { deleteFrontendQAReport, deleteQAReportApi, fetchFrontendQAReports, getQaDataApi, getQaReportDataApi, saveQAReportApi } from 'store/slices/FrontendQA';\r\nimport { showSnackbarMessage } from 'store/slices/MessagesSystemSlice';\r\n\r\nconst useFetchQAReports = (dispatch, callback = () => {}) => {\r\n const [qaData, setQaData] = useState({})\r\n const [qaReports, setQaReports] = useState([])\r\n const [qaReportData, setQaReportData] = useState({})\r\n const [loading, setLoading] = useState(false)\r\n const [totalScore, setTotalScore] = useState(0)\r\n\r\n const fetchQaReports = (params) => {\r\n setLoading(true)\r\n dispatch(fetchFrontendQAReports(params)).then(r => {\r\n if(r.payload){\r\n setQaReports(r.payload)\r\n callback()\r\n }\r\n setLoading(false)\r\n })\r\n }\r\n\r\n const deleteQAReport = (params) => {\r\n dispatch(deleteQAReportApi(params)).then(r => {\r\n if (r.payload) {\r\n const { data: { status } } = r.payload\r\n // const { data } = r.payload\r\n if (status) {\r\n setQaData((prev) => ({\r\n ...prev,\r\n qaReports: prev?.qaReports?.filter(item => item.id !== params.id),\r\n statusRows: prev?.statusRows?.filter(item => item.qa_report_id !== params.id)\r\n }))\r\n }\r\n }\r\n })\r\n }\r\n\r\n const getQaData = (params) => {\r\n setLoading(true)\r\n dispatch(getQaDataApi(params)).then(r => {\r\n if(r.payload){\r\n setQaData(r.payload)\r\n callback()\r\n }\r\n setLoading(false)\r\n })\r\n }\r\n\r\n const saveQAReport = async (payload) => {\r\n if (loading) return\r\n setLoading(true)\r\n const { payload: { status, row: _qaReportData } } = await dispatch(saveQAReportApi(payload))\r\n setLoading(false)\r\n if (!(_qaReportData && _qaReportData.id !== '')) {\r\n dispatch(showSnackbarMessage({\r\n message: 'Error happened in QA report',\r\n severity: 'error'\r\n }))\r\n return\r\n };\r\n return _qaReportData\r\n }\r\n\r\n const getQaReportData = (_qaReportId) => {\r\n setLoading(true)\r\n dispatch(getQaReportDataApi(_qaReportId)).then(r => {\r\n if(r.payload){\r\n setQaReportData(r.payload)\r\n setTotalScore(r.payload.average_score ? r.payload.average_score.toFixed(2) : 0)\r\n callback()\r\n }\r\n setLoading(false)\r\n })\r\n }\r\n\r\n return {\r\n getQaData,\r\n getQaReportData,\r\n fetchQaReports,\r\n deleteQAReport,\r\n saveQAReport,\r\n setTotalScore,\r\n state: {\r\n qaData,\r\n qaReports,\r\n qaReportData,\r\n loading,\r\n totalScore,\r\n }\r\n };\r\n};\r\n\r\nexport default useFetchQAReports;","import React, { useEffect, useState } from 'react';\r\nimport { useDispatch, useSelector } from 'react-redux';\r\nimport { Box, Chip, IconButton, Typography } from \"@mui/material\";\r\nimport ListItem from './Details/ListItem';\r\nimport useFetchQAReports from 'hooks/FetchQAReports';\r\nimport useFetchQAResults from 'hooks/FetchQAResults';\r\nimport IndividualResultDialog from './ProductCode/IndividualResultDialog';\r\nimport { Delete } from '@mui/icons-material';\r\nimport { resetAlertDialog, showAlertDialog } from 'store/slices/MessagesSystemSlice';\r\nimport { parseDateToLocalFormat } from 'shared/utilities/dateHelpers';\r\n\r\nconst loadingMoreStyle = {\r\n textAlign: 'center',\r\n marginTop: '10px',\r\n marginBottom: '20px'\r\n}\r\n\r\nexport default function SavedIndividual(props) {\r\n const { searchWord = '', value: currentStepIndex, index: swipeIndex } = props\r\n const dispatch = useDispatch();\r\n\r\n const [productInQA, setProductInQa] = useState(null)\r\n const [showQAResult, setShowQAResult] = useState(false)\r\n\r\n const {\r\n fetchQaReports,\r\n deleteQAReport,\r\n state: {\r\n qaReports: reports,\r\n loading: loadingReports\r\n }\r\n } = useFetchQAReports(dispatch)\r\n const [fetchQaResults, {\r\n qaResults: results,\r\n loading: loadingResults\r\n }] = useFetchQAResults(dispatch)\r\n\r\n\r\n useEffect(() => {\r\n if(currentStepIndex === swipeIndex){\r\n fetchQaReports({\r\n type: 2,\r\n searchWord\r\n })\r\n }\r\n }, [\r\n currentStepIndex,\r\n swipeIndex,\r\n searchWord\r\n ])\r\n \r\n const alertDialog = useSelector(state => state.messagesSystem.alertDialog)\r\n useEffect(() => {\r\n const { dialogAction, clickedButton, data } = alertDialog;\r\n if (clickedButton === \"alertDialogButtonLeft\") {\r\n if (dialogAction === 'deleteQAReport') {\r\n deleteQAReport(data)\r\n }\r\n }\r\n dispatch(resetAlertDialog());\r\n }, [alertDialog.clickedButton]);\r\n\r\n const onClickProduct = (product) => {\r\n setProductInQa({ ...product })\r\n fetchQaResults({\r\n reportId: product.id,\r\n blobOpt: 'all',\r\n }).then(r => {\r\n if (r && r.payload) {\r\n setShowQAResult(true)\r\n }\r\n })\r\n }\r\n\r\n return (\r\n \r\n {\r\n loadingReports ? Loading... : (\r\n reports?.map((item, idx) => (\r\n onClickProduct(item)}>\r\n \r\n \r\n {item.feed_source}/{item.database_code}/{item.product_code} \r\n {item.last_frontend_qa_date ? parseDateToLocalFormat(item.last_frontend_qa_date) : ''}\r\n \r\n \r\n {\r\n item.pass_count && item.pass_count > 0 && \r\n }\r\n {\r\n item.fail_count && item.fail_count > 0 && \r\n }\r\n {\r\n e.stopPropagation()\r\n dispatch(showAlertDialog({\r\n title: \"Confirmation\",\r\n message: \"Are you sure you want to delete?\",\r\n buttonLabel: { left: \"Ok\", right: \"Cancel\" },\r\n dialogAction: \"deleteQAReport\",\r\n data: {\r\n id: item.id,\r\n batchGroupId: item.batch_group_id\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 showQAResult && {\r\n setShowQAResult(false)\r\n }}\r\n feedSource={productInQA.feed_source}\r\n databaseCode={productInQA.database_code}\r\n productCode={productInQA.product_code}\r\n qaResults={results}\r\n />\r\n }\r\n \r\n );\r\n}","import React from \"react\";\r\nimport {removeObjectProperties} from \"shared/utilities/common\";\r\nimport clsx from \"clsx\";\r\nimport LabelIcon from '@mui/icons-material/Label';\r\nimport TextFieldsIcon from '@mui/icons-material/TextFields';\r\nimport ContactSupportIcon from '@mui/icons-material/ContactSupport';\r\nimport {\r\n TextField,\r\n IconButton,\r\n MenuItem,\r\n Badge,\r\n Grid,\r\n} from \"@mui/material\";\r\nimport {makeStyles} from \"@mui/styles\";\r\n\r\nconst useStyles = makeStyles(() => ({\r\n TextField: {\r\n '& .MuiInputBase-root': {\r\n background: 'white'\r\n },\r\n \"& .MuiOutlinedInput-notchedOutline legend\": { display: \"none\", }\r\n }\r\n}))\r\n\r\nexport default function CustomTextField(_props) {\r\n const classes = useStyles()\r\n const props = {..._props};\r\n let { emptyChoice, select, value, inputProps, SelectProps, InputLabelProps, emptyChoiceDisabled, denseListItems, showHelpButtons } = props;\r\n removeObjectProperties(props, ['emptyChoice', 'value', 'inputProps', 'SelectProps', 'InputLabelProps', 'emptyChoiceDisabled', 'denseListItems', showHelpButtons])\r\n\r\n let {style: inputPropsStyle, className: inputPropsClassName} = inputProps ?? {};\r\n removeObjectProperties(inputProps, [ 'style', 'className' ]);\r\n \r\n let {style: SelectPropsStyle, className: SelectPropsClassName} = SelectProps ?? {};\r\n removeObjectProperties(SelectProps, [ 'style', 'className' ]);\r\n\r\n let {style: InputLabelPropsStyle, className: InputLabelPropsClassName} = InputLabelProps ?? {};\r\n removeObjectProperties(InputLabelProps, [ 'style', 'className' ]);\r\n\r\n // Default values initialization\r\n let inputBackgroundColor;\r\n let inputColor;\r\n let inputVisible = true;\r\n let inputFontSize = null;\r\n let required = false;\r\n let disabled = false;\r\n let inputHelpText;\r\n let inputClasses;\r\n let values = [];\r\n\r\n let labelColor;\r\n let labelVisible = true;\r\n let labelFontSize = null;\r\n let labelText = props.label;\r\n let labelHelpText;\r\n let labelClasses;\r\n \r\n if(!select && value === null) value = '';\r\n\r\n if(props.disabled) {\r\n disabled = props.disabled;\r\n }\r\n \r\n return (\r\n <>\r\n { inputVisible &&\r\n \r\n \r\n \r\n { emptyChoice && { emptyChoice ? emptyChoice : \" \" } }\r\n\r\n { values.length > 0 &&\r\n values.map((value) => ( {value.value} ))\r\n }\r\n\r\n { values.length === 0 &&\r\n props.children\r\n }\r\n
\r\n \r\n { showHelpButtons && ( labelHelpText || inputHelpText) &&\r\n \r\n } >\r\n { labelHelpText && {}}> }\r\n { inputHelpText && {}}> }\r\n \r\n \r\n }\r\n \r\n }\r\n \r\n );\r\n}","import React, { useState, useMemo } from 'react';\r\nimport { useDispatch } from 'react-redux';\r\nimport {\r\n InputAdornment,\r\n CircularProgress,\r\n IconButton,\r\n} from \"@mui/material\"\r\nimport {\r\n Search as SearchIcon,\r\n Close as CloseIcon,\r\n} from '@mui/icons-material';\r\nimport CustomTextField from 'components/common/Base/CustomTextField';\r\nimport { setQaSearchWord } from 'store/slices/EodDataSlice';\r\n\r\nexport default function SearchBox(props) {\r\n const dispatch = useDispatch()\r\n const { step2Index, searchWord } = props\r\n // const [searchWord, setSearchWord] = useState(props.searchWord)\r\n const [loading, setLoading] = useState(false)\r\n\r\n const searchField = useMemo(() => {\r\n if (step2Index === 0) {\r\n return 'feedSource'\r\n } else if (step2Index === 1) {\r\n return 'databaseCode'\r\n } else if (step2Index === 3) {\r\n return 'productCode'\r\n } else if (step2Index === 4) {\r\n return 'individual'\r\n }\r\n }, [\r\n step2Index\r\n ])\r\n\r\n const handleSearchWord = (e) => {\r\n const _searchWord = e.target.value\r\n // setSearchWord(_searchWord)\r\n console.log(searchField, 'searchField')\r\n console.log(step2Index, 'step2Index')\r\n dispatch(setQaSearchWord({\r\n field: searchField,\r\n value: _searchWord\r\n }))\r\n }\r\n\r\n\r\n return (\r\n <>\r\n \r\n \r\n ,\r\n endAdornment: \r\n {\r\n searchWord && searchWord !== '' && (\r\n loading ? (\r\n \r\n ) : (\r\n {\r\n dispatch(setQaSearchWord({\r\n field: searchField,\r\n value: ''\r\n }))\r\n }}>\r\n \r\n \r\n )\r\n )\r\n }\r\n \r\n }}\r\n />\r\n \r\n );\r\n}","import { useState } from 'react';\r\nimport { getDatabaseCodesQA } from 'store/slices/FrontendQA';\r\nimport { showSnackbarMessage } from 'store/slices/MessagesSystemSlice';\r\n\r\nconst useRunDatabaseCodesQA = (dispatch, callback) => {\r\n const [isLoading, setIsLoading] = useState(false);\r\n const [qaResults, setQAResults] = useState([])\r\n\r\n const errorBlock = (error) => {\r\n setIsLoading(false)\r\n setQAResults({})\r\n dispatch(showSnackbarMessage({\r\n message: `Something went wrong. Please kindly try again later`,\r\n severity: 'error'\r\n }))\r\n console.log(error, 'in the run individual qa hook')\r\n }\r\n\r\n const triggerRequest = async () => {\r\n if (isLoading) return\r\n setIsLoading(true)\r\n const { payload: qaData } = await dispatch(getDatabaseCodesQA())\r\n setIsLoading(false)\r\n console.log(qaData, 'qaData')\r\n if (!(qaData)) {\r\n dispatch(showSnackbarMessage({\r\n message: 'Error is happened in running Database Codes QA process',\r\n severity: 'error'\r\n }))\r\n return\r\n };\r\n setQAResults(qaData.results)\r\n };\r\n\r\n return [triggerRequest, {\r\n isLoading,\r\n qaResults\r\n }];\r\n};\r\n\r\nexport default useRunDatabaseCodesQA;","import React, { useState, forwardRef, useMemo, useEffect } from 'react';\r\nimport { makeStyles } from \"@mui/styles\";\r\n\r\nimport {\r\n Dialog,\r\n DialogActions,\r\n DialogContent,\r\n Button,\r\n Slide,\r\n Box,\r\n TableContainer,\r\n Tooltip,\r\n FormControlLabel,\r\n Switch,\r\n TableCell,\r\n TableRow,\r\n Chip,\r\n Table,\r\n TableHead,\r\n TableBody,\r\n} from \"@mui/material\";\r\nimport { useDispatch } from 'react-redux';\r\nimport useRunDatabaseCodesQA from 'hooks/RunDatabaseCodesQA';\r\n\r\nconst useStyles = makeStyles((theme) => ({\r\n root: {\r\n padding: 0\r\n },\r\n DialogContent: {\r\n '& .MuiDialog-paper': {\r\n width: '500px',\r\n maxWidth: '100rem',\r\n }\r\n },\r\n productStaticBarButton: {\r\n color: '#4e4b4b',\r\n cursor: 'pointer',\r\n margin: '0 3px',\r\n position: 'relative',\r\n boxShadow: '0 0 1px 1px #e5e5f1',\r\n transition: 'all ease-in .2s',\r\n borderRadius: '4px',\r\n height: '37px',\r\n width: '37px',\r\n fontSize: '13px',\r\n textAlign: 'center',\r\n '&.selected': {\r\n boxShadow: '0 0 1px 1px #646467'\r\n },\r\n '&:hover': {\r\n background: '#ececec'\r\n },\r\n '&.selectedViewMode': {\r\n background: theme.palette.smartGreen.main,\r\n color: 'white',\r\n '&:hover': {\r\n background: theme.palette.smartGreen.hover\r\n },\r\n },\r\n '& svg': {\r\n display: 'block',\r\n margin: '0 auto',\r\n fontSize: '35px'\r\n },\r\n // '&::after': {\r\n // content: '\"\"',\r\n // position: 'absolute',\r\n // height: '1px',\r\n // borderTop: 'solid 1px #e2dcdc',\r\n // bottom: '-6px',\r\n // width: 'calc(100% - 6px)'\r\n // },\r\n // '&:last-child': {\r\n // '&::after': {\r\n // content: 'initial'\r\n // }\r\n // }\r\n },\r\n \r\n TableCap: {\r\n padding: '13px',\r\n alignItems: 'center',\r\n background: 'white',\r\n boxShadow: '14px 6px 4px -21px rgba(0,0,0,0.2), 0px -4px 2px 0px rgba(0,0,0,0.14), 0px 1px 3px 0px rgba(0,0,0,0.12)',\r\n },\r\n Table: {\r\n marginTop: '11px',\r\n background: 'white'\r\n },\r\n TableTitle: {\r\n textOverflow: 'ellipsis',\r\n whiteSpace: 'nowrap',\r\n overflow: 'hidden',\r\n lineHeight: '140%',\r\n margin: '0px',\r\n fontSize: '14px',\r\n letterSpacing: '-0.006em',\r\n fontWeight: '600',\r\n color: 'rgb(67, 74, 84)',\r\n marginRight: '10px'\r\n },\r\n TableRow: {\r\n cursor: 'pointer',\r\n \"&.selected\": {\r\n background: theme.palette.primary.main,\r\n '& td': {\r\n color: 'white'\r\n }\r\n }\r\n }\r\n}));\r\n\r\nconst Transition = forwardRef(function Transition(\r\n props,\r\n ref,\r\n) {\r\n return ;\r\n});\r\n\r\n\r\nconst convertToSeconds = (milliseconds, showMiliSeconds = true) => {\r\n if (!milliseconds) return ''\r\n const _seconds = Math.round(milliseconds / 1000 * 100) / 100;\r\n if (!showMiliSeconds) {\r\n return `${_seconds}s`\r\n }\r\n return `${milliseconds}ms`\r\n}\r\n\r\nconst getPercentageOfTotal = (total, time) => {\r\n return time > 0 ? `${(time / total * 100).toFixed(2)}%` : 'N/A'\r\n}\r\n\r\nconst DatabaseCodesQADialog = (props) => {\r\n const {\r\n open,\r\n handleClose,\r\n } = props\r\n const classes = useStyles();\r\n const dispatch = useDispatch()\r\n const [timeIncrements, setTimeIncrements] = React.useState([])\r\n const [selectedInc, setSelectedInc] = React.useState('')\r\n const [showMiliSeconds, setShowMiliSeconds] = React.useState(false)\r\n const [showTimePercentage, setShowTimePercentage] = React.useState(false)\r\n\r\n \r\n const [triggerDatabaseCodeQA, { isLoading, qaResults = [] }] = useRunDatabaseCodesQA(dispatch);\r\n useEffect(() => {\r\n triggerDatabaseCodeQA()\r\n }, [\r\n ])\r\n console.log(qaResults, 'qaResults')\r\n \r\n return (\r\n \r\n\r\n \r\n \r\n \r\n \r\n {/* */}\r\n \r\n \r\n { setShowMiliSeconds(e.target.checked) }} name=\"showms\" />\r\n }\r\n className='m-0'\r\n label=\"Show MS\"\r\n />\r\n \r\n {/* \r\n { setShowTimePercentage(e.target.checked) }} name=\"showtimePercentage\" />\r\n }\r\n className='m-0'\r\n label=\"Show %\"\r\n />\r\n */}\r\n \r\n \r\n {/* {subTitle} */}\r\n \r\n \r\n \r\n \r\n Feed Source\r\n Count of Database codes\r\n Execution Time\r\n \r\n \r\n \r\n {\r\n !isLoading ? (\r\n qaResults.length > 0 ? (\r\n <>\r\n {qaResults.map((item, idx) => (\r\n // row.items?.map((item, iIdx) => (\r\n \r\n \r\n {item.feedSource.human_readable_name || item.feedSource.feed_source}\r\n \r\n \r\n {item.rowCount}\r\n \r\n \r\n \r\n \r\n {\r\n convertToSeconds(item.executionTime, showMiliSeconds)\r\n }\r\n \r\n \r\n \r\n \r\n // ))\r\n ))}\r\n \r\n ) : (\r\n \r\n There is no Data\r\n \r\n )\r\n ) : (\r\n \r\n Loading...\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\nDatabaseCodesQADialog.propTypes = {\r\n};\r\n\r\nexport default DatabaseCodesQADialog","import React, { useCallback, useMemo, useState } from \"react\";\r\nimport { useDispatch, useSelector } from \"react-redux\";\r\nimport { useHistory } from \"react-router-dom\"\r\nimport SwipeableViews from \"react-swipeable-views\";\r\n\r\nimport {\r\n Typography,\r\n Box,\r\n InputAdornment,\r\n Divider,\r\n} from \"@mui/material\";\r\nimport { makeStyles } from \"@mui/styles\";\r\n\r\nimport StockSource from \"./StockSource\";\r\n// import StockDatabaseCodes from \"./StockDatabaseCodes\";\r\nimport StockProductCodes from \"./ProductCode/StockProductCodes\";\r\n\r\nimport {\r\n changeStep2Index,\r\n setFeedDatabaseCode,\r\n setFeedSource,\r\n clearStockProducts,\r\n setFeedProductCode,\r\n setFeedSectionName\r\n} from \"store/slices/EodDataSlice\"\r\n\r\nimport ListItem from \"./Details/ListItem\";\r\nimport StockSections from \"./StockSections\";\r\n// import StockDatabaseCodeQA from \"./StockDatabaseCodesQA\";\r\nimport StockDatabaseCodeContainer from \"./DatabaseCode\";\r\nimport SavedIndividual from \"./SavedIndividual\";\r\nimport SearchBox from \"./Details/SearchBox\";\r\nimport QLink from \"./Details/QLink\";\r\nimport DatabaseCodesQADialog from \"./Details/DatabaseCodesQADialog\";\r\n\r\nconst useStyles = makeStyles((theme) => ({\r\n root: {\r\n display: 'flex',\r\n flexDirection: 'column',\r\n height: '100%',\r\n position: 'absolute',\r\n width: '100%'\r\n },\r\n padding: {\r\n padding: '12px 12px 0 12px',\r\n },\r\n HeaderLabel: {\r\n fontStyle: 'normal',\r\n fontWeight: '600',\r\n fontSize: '20px',\r\n lineHeight: '28px',\r\n letterSpacing: '-0.02em',\r\n color: '#374151',\r\n },\r\n BreadcrumbItem: {\r\n // display: 'inline-flex',\r\n flexDirection: 'column',\r\n justifyContent: 'center',\r\n alignItems: 'center',\r\n padding: '0px 8px',\r\n gap: '8px',\r\n height: '20px',\r\n background: theme.palette.smartGreen.main,\r\n borderRadius: '24px',\r\n color: 'white',\r\n fontFamily: 'Inter',\r\n fontStyle: 'normal',\r\n fontWeight: '500',\r\n fontSize: '12px',\r\n lineHeight: '20px',\r\n marginRight: 6,\r\n cursor: 'pointer',\r\n overflow: 'hidden',\r\n display: 'inline-block',\r\n textOverflow: 'ellipsis',\r\n whiteSpace: 'nowrap',\r\n textAlign: 'center',\r\n maxWidth: '250px',\r\n },\r\n BreadCrumbDivider: {\r\n background: '#E5ECFA',\r\n marginBottom: 12,\r\n },\r\n SelectedBreadcrumbItem: {\r\n background: '#2255C3',\r\n cursor: 'initial'\r\n },\r\n SwipeableViewsContainer: {\r\n flex: '1 0 0',\r\n minHeight: 0,\r\n // overflow: 'auto',\r\n '&::-webkit-scrollbar': {\r\n width: 9,\r\n },\r\n /* Track */\r\n '&::-webkit-scrollbar-track': {\r\n background: '#e4e5e9',\r\n borderRadius: 4,\r\n },\r\n /* Handle */\r\n '&::-webkit-scrollbar-thumb': {\r\n background: '#b0b3bd',\r\n borderRadius: 4,\r\n },\r\n /* Handle on hover */\r\n '&::-webkit-scrollbar-thumb:hover': {\r\n background: '#9e1e1e',\r\n },\r\n },\r\n SwipeableViewsInner: {\r\n overflow: 'hidden',\r\n height: '100%',\r\n position: 'relative',\r\n '& .react-swipeable-view-container': {\r\n position: 'relative',\r\n height: '100%'\r\n },\r\n '& [data-swipeable=\"true\"]': {\r\n // overflow: 'initial !important',\r\n height: '100%'\r\n }\r\n }\r\n}))\r\n\r\nconst BreadcrumbItem = (props) => {\r\n const classes = useStyles()\r\n return {\r\n if (props.onClick) props.onClick()\r\n }}\r\n title={props.labelTxt}\r\n >\r\n {props.labelTxt}\r\n \r\n}\r\n\r\n/* Step2Sidebar's Source Container */\r\nconst StepSourceContainer = ({ wrapStyle }) => {\r\n const dispatch = useDispatch()\r\n const history = useHistory()\r\n const classes = useStyles()\r\n\r\n const step1Sidebar = useSelector(state => state.appLayout.step1Sidebar)\r\n const step2Sidebar = useSelector(state => state.appLayout.step2Sidebar);\r\n const searchWords = useSelector(state => state.eodData.qaSearchWords)\r\n const step2Index = useSelector(state => state.eodData.step2Index)\r\n const feedSource = useSelector(state => state.eodData.feedSource)\r\n const feedDatabaseCode = useSelector(state => state.eodData.feedDatabaseCode)\r\n const feedProductCode = useSelector(state => state.eodData.feedProductCode)\r\n const feedSectionName = useSelector(state => state.eodData.feedSectionName)\r\n\r\n const [results, setResults] = useState(null)\r\n const [isStep2Qa, setIsStep2Qa] = useState(false)\r\n const [openDatabaseCodesQADialog, setOpenDatabaseCodesQADialog] = useState(false)\r\n\r\n const handelStep2Index = useCallback((index, val = '', flag = null, isQa = false) => {\r\n let updates = {\r\n feedSource, feedDatabaseCode, feedProductCode, feedSectionName\r\n };\r\n if (index === 1) {\r\n if (val !== undefined) {\r\n dispatch(setFeedSource(val))\r\n }\r\n updates.feedSource = val;\r\n updates.feedDatabaseCode = '';\r\n updates.feedSectionName = null;\r\n updates.feedProductCode = '';\r\n } else if (index === 2) {\r\n updates.feedDatabaseCode = val;\r\n if (val !== undefined) {\r\n dispatch(setFeedDatabaseCode(val))\r\n }\r\n updates.feedSectionName = null;\r\n updates.feedProductCode = '';\r\n } else if (index === 3) {\r\n if (flag == 'databaseCode') {\r\n updates.feedSectionName = ''\r\n updates.feedDatabaseCode = val\r\n } else {\r\n updates.feedSectionName = val;\r\n }\r\n updates.feedProductCode = '';\r\n // if (val !== undefined) {\r\n // dispatch(setFeedDatabaseCode(val))\r\n // }\r\n } else if (index === 4) {\r\n updates.feedSource = ''\r\n updates.feedDatabaseCode = '';\r\n updates.feedSectionName = null;\r\n updates.feedProductCode = '';\r\n } else if (index === 0) {\r\n updates.feedSource = ''\r\n updates.feedDatabaseCode = '';\r\n updates.feedSectionName = null;\r\n updates.feedProductCode = '';\r\n }\r\n dispatch(clearStockProducts())\r\n dispatch(changeStep2Index(index))\r\n dispatch(setFeedSource(updates.feedSource))\r\n dispatch(setFeedDatabaseCode(updates.feedDatabaseCode))\r\n dispatch(setFeedProductCode(updates.feedProductCode))\r\n dispatch(setFeedSectionName(updates.feedSectionName))\r\n setIsStep2Qa(isQa)\r\n }, [\r\n feedSource,\r\n feedDatabaseCode,\r\n feedProductCode,\r\n feedSectionName\r\n ])\r\n\r\n const renderBreadCrumb = useMemo(() => {\r\n return \r\n \r\n {\r\n step2Index > 0 && (\r\n { handelStep2Index(0) }} />\r\n )\r\n }\r\n {\r\n step2Index < 4 && (\r\n <>\r\n {\r\n step2Index >= 1 && (\r\n {\r\n if (step2Index > 1) handelStep2Index(1, feedSource)\r\n }}\r\n />\r\n )\r\n }\r\n {\r\n step2Index >= 2 && (\r\n {\r\n if (step2Index > 2) handelStep2Index(2, feedDatabaseCode)\r\n }}\r\n />\r\n )\r\n }\r\n \r\n )\r\n }\r\n \r\n }, [\r\n feedSource,\r\n feedDatabaseCode,\r\n step2Index\r\n ])\r\n const handleProductCode = (val) => {\r\n dispatch(setFeedProductCode(val))\r\n }\r\n const searchResults = useMemo(() => {\r\n // if(searchWord && searchWord !== ''){\r\n return results\r\n // }\r\n // return null\r\n }, [\r\n results,\r\n // searchWord\r\n ])\r\n const searchWord = useMemo(() => {\r\n if (step2Index === 0) {\r\n return searchWords?.feedSource || ''\r\n } else if (step2Index === 1) {\r\n return searchWords?.databaseCode || ''\r\n } else if (step2Index === 3) {\r\n return searchWords?.productCode || ''\r\n } else if (step2Index === 4) {\r\n return searchWords?.individual || ''\r\n }\r\n return ''\r\n }, [\r\n searchWords,\r\n step2Index\r\n ])\r\n return (\r\n \r\n \r\n \r\n \r\n Quality Analytic\r\n \r\n \r\n {\r\n e.stopPropagation();\r\n setOpenDatabaseCodesQADialog(true)\r\n }} />\r\n \r\n \r\n \r\n \r\n \r\n {renderBreadCrumb}\r\n \r\n {\r\n Array.isArray(searchResults) ? (\r\n searchResults.length < 1 ? (\r\n
There is no match
\r\n ) : (\r\n \r\n {\r\n searchResults?.map((item, index) => {\r\n return {\r\n const url = `/product/detail/${encodeURIComponent(item.value.feed_source)}/${encodeURIComponent(item.value.database_code)}/${encodeURIComponent(item.value.product_code)}`\r\n history.push(url)\r\n }}\r\n key={index}\r\n >\r\n {item.value.feed_source}/{item.value.database_code}/{item.value.product_code}\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 openDatabaseCodesQADialog && (\r\n setOpenDatabaseCodesQADialog(false)}\r\n />\r\n )\r\n }\r\n
\r\n );\r\n}\r\n\r\nexport default StepSourceContainer;","import React from 'react';\r\n\r\nclass CategoryOptions extends React.Component{\r\n constructor(props) {\r\n super(props);\r\n this.state = {};\r\n }\r\n\r\n render() {\r\n return (\r\n <>\r\n
Categories
\r\n
\r\n \r\n
\r\n \r\n );\r\n }\r\n}\r\n\r\nexport default CategoryOptions;","import {createSlice, createAsyncThunk, createEntityAdapter} from '@reduxjs/toolkit'\r\nimport API from 'store/services/AxiosService'\r\nimport {USER_FAVORITE_CONFIG, USER_FAVORITE_GROUP, USER_FAVORITES} from 'store/UrlConstants'\r\nimport axios from \"store/services/AxiosService\"\r\n\r\n\r\n\r\nconst initialState = {\r\n user: {},\r\n loadingInProgress: false,\r\n favs: {},\r\n favKeys: [],\r\n favsLoading: false,\r\n}\r\n\r\nexport const fetchUserFavorites = createAsyncThunk('user/favorites/fetch', async () => {\r\n const response = await API.get(USER_FAVORITES)\r\n return response.data\r\n})\r\n\r\nexport const deleteUserFavorite = createAsyncThunk('user/favorites/delete', async (group) => {\r\n await API.delete(USER_FAVORITE_GROUP(group.id))\r\n return group\r\n})\r\n\r\nexport const deleteUserFavoriteConfig = createAsyncThunk('user/favorites/config/delete', async ({\r\n group_id,\r\n favorite,\r\n config_id,\r\n groupName\r\n}) => {\r\n // console.log(config_id, 'config_id')\r\n // const res = await API.put(USER_FAVORITE_CONFIG(group_id), {\r\n // favorite: 'asdfa', config_id\r\n // })\r\n return {\r\n // res,\r\n groupName,\r\n group_id,\r\n favorite,\r\n config_id\r\n }\r\n})\r\n\r\nexport const updateUserFavorite = createAsyncThunk('user/favorites/update',\r\n async ({groupToChange, name, favorites}) => {\r\n return axios.put(USER_FAVORITE_GROUP(groupToChange.id), {'group_name': name, 'favorites': favorites})\r\n })\r\n\r\nfunction deleteGroupFromFavorites(state, name) {\r\n const index = state.favKeys.indexOf(name)\r\n if (index > -1) {\r\n state.favKeys.splice(index, 1)\r\n }\r\n delete state.favs[name]\r\n}\r\n\r\nfunction addFavGroup(state, group){\r\n state.favs[group.groupName] = group\r\n state.favKeys.push(group.groupName)\r\n}\r\n\r\nconst userSlice = createSlice({\r\n name: 'user',\r\n initialState,\r\n reducers: {\r\n setUserData: (state, action) => {\r\n state.user = action.payload\r\n },\r\n appendFavoriteGroup: (state, action) => {\r\n addFavGroup(state, action.payload)\r\n },\r\n appendToFav: (state, action) => {\r\n if (!state.favs[action.payload.groupName]['favorites'].includes(action.payload.fav))\r\n state.favs[action.payload.groupName]['favorites'].push(action.payload.fav)\r\n }\r\n },\r\n extraReducers: {\r\n [fetchUserFavorites.pending]: (state, action) => {\r\n state.favsLoading = true\r\n },\r\n [fetchUserFavorites.fulfilled]: (state, action) => {\r\n state.favs = {}\r\n state.favKeys = []\r\n if(action.payload){\r\n action.payload.forEach(element => {\r\n state.favs[element.groupName] = element\r\n state.favKeys.push(element.groupName)\r\n })\r\n }\r\n state.favsLoading = false\r\n },\r\n [fetchUserFavorites.rejected]: (state, action) => {\r\n state.favsLoading = false\r\n },\r\n [deleteUserFavorite.fulfilled]: (state, action) => {\r\n deleteGroupFromFavorites(state, action.payload.groupName)\r\n },\r\n [deleteUserFavoriteConfig.fulfilled]: (state, action) => {\r\n console.log('hi?')\r\n console.log(action.payload)\r\n const {\r\n group_id,\r\n favorite,\r\n config_id,\r\n groupName\r\n } = action.payload\r\n const favGroup = state.favs[groupName]\r\n if(favGroup && favGroup.configuration){\r\n const configurations = (favGroup.configuration[favorite] || []).filter(config => config.id !== config_id)\r\n console.log(favGroup.configuration[favorite], 'favGroup.configuration[favorite]')\r\n state.favs[groupName].configuration[favorite] = configurations\r\n }\r\n // deleteGroupFromFavorites(state, action.payload.groupName)\r\n },\r\n [updateUserFavorite.pending]: (state, action) => {\r\n state.favsLoading = true\r\n },\r\n [updateUserFavorite.fulfilled]: (state, action) => {\r\n console.log(action)\r\n const oldName = action.meta.arg.groupToChange.groupName\r\n deleteGroupFromFavorites(state, oldName)\r\n addFavGroup(state, action.payload.data)\r\n state.favsLoading = false\r\n },\r\n },\r\n})\r\n\r\nexport const prepareSelector = state => state.chartData\r\nexport const {setUserData, appendFavoriteGroup, appendToFav} = userSlice.actions\r\nexport default userSlice.reducer\r\n","import * as React from 'react';\r\nimport {\r\n TreeView,\r\n TreeItem\r\n} from '@mui/lab';\r\nimport {\r\n ExpandMore as ExpandMoreIcon,\r\n ChevronRight as ChevronRightIcon\r\n} from '@mui/icons-material'\r\n\r\nexport default function CustomTreeView(props) {\r\n const {data} = props\r\n const renderTree = (nodes) => (\r\n \r\n {Array.isArray(nodes.children) && nodes.children.length > 0\r\n ? nodes.children.map((node) => renderTree(node))\r\n : null}\r\n \r\n );\r\n\r\n return (\r\n }\r\n defaultExpanded={['root']}\r\n defaultExpandIcon={}\r\n sx={{ height: 110, flexGrow: 1, maxWidth: 400, overflowY: 'auto' }}\r\n className={props.className}\r\n >\r\n {\r\n Array.isArray(data) ? (\r\n data.map(item => renderTree(item))\r\n ) : (\r\n renderTree(data)\r\n )\r\n }\r\n \r\n );\r\n}","import React from 'react'\r\nimport { SvgIcon } from \"@mui/material\";\r\n\r\nconst EditIcon = (props) => {\r\n return (\r\n \r\n \r\n \r\n );\r\n};\r\n\r\nexport default EditIcon;\r\n","import React from 'react'\r\nimport { SvgIcon } from \"@mui/material\";\r\n\r\nconst DeleteIcon = (props) => {\r\n return (\r\n \r\n \r\n \r\n );\r\n};\r\n\r\nexport default DeleteIcon;\r\n","import React, {\r\n useEffect,\r\n useMemo, useState,\r\n} from 'react'\r\nimport { useDispatch, useSelector } from \"react-redux\"\r\nimport { useHistory } from \"react-router-dom\"\r\nimport {\r\n Box,\r\n Button,\r\n Dialog,\r\n DialogActions,\r\n DialogContent,\r\n DialogTitle,\r\n Grid,\r\n Typography,\r\n CircularProgress,\r\n IconButton\r\n} from \"@mui/material\"\r\nimport { makeStyles } from \"@mui/styles\";\r\nimport {\r\n Grain as GridIcon,\r\n GraphicEq as GraphicEqIcon,\r\n FilterList as FilterListIcon,\r\n Close as CloseIcon,\r\n} from \"@mui/icons-material\"\r\n\r\nimport CustomTreeView from 'components/common/Base/CustomTreeView'\r\nimport { deleteUserFavorite, updateUserFavorite } from 'store/slices/UserSlice';\r\nimport CustomTextField from 'components/common/Base/CustomTextField';\r\nimport { resetAlertDialog, showAlertDialog } from 'store/slices/MessagesSystemSlice';\r\nimport EditIcon from 'components/icons/Edit'\r\nimport DeleteIcon from 'components/icons/Delete'\r\n\r\nconst useStyles = makeStyles(() => ({\r\n root: {\r\n display: 'flex',\r\n flexDirection: 'column',\r\n height: '100%',\r\n position: 'absolute',\r\n width: '100%',\r\n '& .MuiTreeItem-content': {\r\n \"&:hover\": {\r\n backgroundColor: 'transparent'\r\n }\r\n },\r\n '& .MuiTreeItem-content.Mui-selected': {\r\n backgroundColor: 'transparent'\r\n },\r\n \"& .MuiTreeItem-root[selected=true]\": {\r\n backgroundColor: 'rgba(25, 118, 210, 0.08)'\r\n }\r\n },\r\n IconButton: {\r\n color: 'white',\r\n padding: 3,\r\n '& .MuiSvgIcon-root': {\r\n fontSize: 19\r\n }\r\n },\r\n TreeView: {\r\n height: '100%',\r\n '& .MuiTreeItem-group': {\r\n margin: 0,\r\n }\r\n },\r\n TagGroupParent: {\r\n '& > .MuiTreeItem-content': {\r\n padding: '10px 5px',\r\n '& .MuiTreeItem-label': {\r\n backgroundColor: 'transparent !important',\r\n },\r\n '& .MuiTreeItem-label:hover': {\r\n backgroundColor: 'transparent'\r\n },\r\n '&:hover': {\r\n backgroundColor: 'rgba(0, 0, 0, 0.04)'\r\n },\r\n },\r\n '&.Mui-selected:not(.hasChildren) > .MuiTreeItem-content': {\r\n backgroundColor: '#2378c5',\r\n '& .MuiTreeItem-content .MuiTreeItem-label': {\r\n background: 'transparent'\r\n },\r\n '& .TagGroupItemTxt': {\r\n color: 'white'\r\n },\r\n '& .TagGroupItemIcon': {\r\n color: 'white'\r\n }\r\n }\r\n },\r\n TagGroupParentInner: {\r\n display: 'flex',\r\n width: '100%',\r\n '.MuiTreeItem-root &': {\r\n paddingLeft: '5px',\r\n }\r\n },\r\n TagGroupItem: {\r\n width: '100%',\r\n padding: '10px 0',\r\n '& .MuiTreeItem-label:hover': {\r\n backgroundColor: 'transparent'\r\n },\r\n '&:hover': {\r\n backgroundColor: 'rgba(0, 0, 0, 0.04)'\r\n },\r\n '&.Mui-selected': {\r\n background: '#2378c5',\r\n '& .MuiTreeItem-content .MuiTreeItem-label': {\r\n background: 'transparent'\r\n },\r\n '& .TagGroupItemTxt': {\r\n color: 'white'\r\n },\r\n '& .TagGroupItemIcon': {\r\n color: 'white'\r\n }\r\n },\r\n '& .MuiTreeItem-iconContainer': {\r\n display: 'none'\r\n },\r\n '& .MuiTreeItem-label': {\r\n padding: 0\r\n }\r\n },\r\n\r\n TagGroupItemInner: {\r\n display: 'flex',\r\n width: '100%',\r\n '.MuiTreeItem-root &': {\r\n paddingLeft: '25px',\r\n }\r\n },\r\n TagGroupHeader: {\r\n display: 'flex',\r\n alignItems: 'center',\r\n padding: '13px 4px 12px 12px',\r\n borderBottom: 'solid 1px #bebfbf',\r\n },\r\n TagItem: {\r\n paddingBottom: '20px',\r\n borderBottom: 'solid 1px #c4c4c4',\r\n marginLeft: '34px',\r\n paddingTop: '11px',\r\n display: 'flex',\r\n // alignItems: 'center',\r\n paddingRight: 15\r\n },\r\n TagItemTxt: {\r\n color: 'black',\r\n flex: 1\r\n },\r\n TagItemIconButton: {\r\n color: 'white',\r\n padding: 5,\r\n '& .MuiSvgIcon-root': {\r\n fontSize: 17,\r\n }\r\n },\r\n DialogTitleTxt: {\r\n flex: 1,\r\n fontStyle: 'normal',\r\n fontWeight: '500',\r\n fontSize: '18px',\r\n lineHeight: '28px',\r\n display: 'flex',\r\n alignItems: 'center',\r\n fontFeatureSettings: `'salt' on`,\r\n color: '#374151',\r\n },\r\n DialogContent: {\r\n width: 512\r\n },\r\n TextField: {\r\n backgroundColor: '#F3F4F6',\r\n border: 'none'\r\n },\r\n SaveBtn: {\r\n color: 'white',\r\n backgroundColor: '#6790e3',\r\n padding: '6px 15px',\r\n \"&:hover\": {\r\n backgroundColor: '#C3D6FD'\r\n }\r\n }\r\n}));\r\n\r\nexport default function FavDisplay(props) {\r\n const history = useHistory()\r\n const dispatch = useDispatch()\r\n const classes = useStyles()\r\n\r\n const isFavsLoading = useSelector(state => state.user.favsLoading)\r\n const favs = useSelector(state => state.user.favs) || {}\r\n const { favGroups } = props\r\n // console.log(favs, 'favs')\r\n\r\n const [parentFolderId, setSelectedParentFolderId] = useState(null)\r\n const [subFolderId, setSelectedSubFolderId] = useState(null)\r\n const [openEditGroup, setOpenEditGroup] = useState(false)\r\n const [groupName, setGroupName] = useState(null)\r\n\r\n useEffect(() => {\r\n if (subFolderId) {\r\n setGroupName(subFolderId)\r\n } else if (parentFolderId) {\r\n setGroupName(parentFolderId)\r\n }\r\n }, [parentFolderId, subFolderId])\r\n\r\n const previousGroupName = useMemo(() => {\r\n if (parentFolderId) {\r\n if (subFolderId) {\r\n return `${parentFolderId}/${subFolderId}`\r\n }\r\n return parentFolderId\r\n }\r\n return ''\r\n }, [\r\n parentFolderId,\r\n subFolderId,\r\n ])\r\n const newGroupName = useMemo(() => {\r\n if (parentFolderId) {\r\n if (subFolderId) {\r\n return `${parentFolderId}/${groupName}`\r\n }\r\n return groupName\r\n }\r\n }, [\r\n parentFolderId,\r\n subFolderId,\r\n groupName,\r\n ])\r\n\r\n const saveFav = async () => {\r\n const keysOfGroupToChange = Object.keys(favs).filter(item => item.startsWith(previousGroupName))\r\n try {\r\n for (let key of keysOfGroupToChange) {\r\n const groupToChange = favs[key]\r\n const _newGroupName = key.replace(previousGroupName, newGroupName)\r\n await dispatch(updateUserFavorite({ groupToChange, name: _newGroupName }))\r\n }\r\n setOpenEditGroup(false)\r\n } catch (e) {\r\n setOpenEditGroup(false)\r\n }\r\n }\r\n const handleClose = () => {\r\n setOpenEditGroup(false)\r\n if (subFolderId) {\r\n setGroupName(subFolderId)\r\n } else if (parentFolderId) {\r\n setGroupName(parentFolderId)\r\n }\r\n setSelectedSubFolderId(null)\r\n setSelectedParentFolderId(null)\r\n }\r\n\r\n const onClickTagGroup = ({ parentFolderId, subFolderId }) => {\r\n // setOpenTagPopover(true)\r\n // setTagAnchorEl(e.currentTarget)\r\n props.changeStep2Index(1, parentFolderId, subFolderId)\r\n }\r\n\r\n const alertDialog = useSelector(state => state.messagesSystem.alertDialog)\r\n useEffect(() => {\r\n const { dialogAction, clickedButton, data } = alertDialog;\r\n if (dialogAction === \"deleteFav\" && clickedButton === \"alertDialogButtonLeft\") {\r\n if (data.flag === 'group') {\r\n const keysOfGroupToChange = Object.keys(favs).filter(item => item.startsWith(previousGroupName))\r\n for (let key of keysOfGroupToChange) {\r\n const groupToDelete = favs[key]\r\n dispatch(deleteUserFavorite(groupToDelete)).then(r => {\r\n console.log(r, 'r')\r\n })\r\n }\r\n }\r\n }\r\n dispatch(resetAlertDialog());\r\n }, [alertDialog.clickedButton]);\r\n\r\n const TagGroupFolder = (_props) => {\r\n return {\r\n if (!_props.hasChildren) onClickTagGroup({ parentFolderId: _props.id })\r\n }}>\r\n \r\n \r\n {/* {\r\n _props.hasChildren ? (\r\n \r\n ) : (\r\n \r\n )\r\n } */}\r\n \r\n {_props.label}\r\n \r\n \r\n {\r\n e.stopPropagation()\r\n setOpenEditGroup(true)\r\n setSelectedParentFolderId(_props.id)\r\n }}\r\n >\r\n \r\n \r\n {\r\n e.stopPropagation()\r\n setSelectedParentFolderId(_props.id)\r\n dispatch(showAlertDialog({\r\n title: \"Confirmation\",\r\n message: \"Are you sure you want to delete?\",\r\n buttonLabel: { left: \"Ok\", right: \"Cancel\" },\r\n dialogAction: \"deleteFav\",\r\n data: {\r\n flag: 'group'\r\n }\r\n }));\r\n }}\r\n >\r\n \r\n \r\n \r\n \r\n }\r\n\r\n const TagSubFolder = (_props) => {\r\n return onClickTagGroup({\r\n parentFolderId: _props.parentFolderId,\r\n subFolderId: _props.subFolderId\r\n })}>\r\n \r\n {/* \r\n \r\n */}\r\n {_props.label}\r\n \r\n \r\n {\r\n e.stopPropagation()\r\n setOpenEditGroup(true)\r\n setSelectedParentFolderId(_props.parentFolderId)\r\n setSelectedSubFolderId(_props.subFolderId)\r\n }}\r\n >\r\n \r\n \r\n {\r\n e.stopPropagation()\r\n setSelectedParentFolderId(_props.parentFolderId)\r\n setSelectedSubFolderId(_props.subFolderId)\r\n dispatch(showAlertDialog({\r\n title: \"Confirmation\",\r\n message: \"Are you sure you want to delete?\",\r\n buttonLabel: { left: \"Ok\", right: \"Cancel\" },\r\n dialogAction: \"deleteFav\",\r\n data: {\r\n flag: 'group'\r\n }\r\n }));\r\n }}\r\n >\r\n \r\n \r\n \r\n \r\n }\r\n\r\n const formattedFavs = useMemo(() => {\r\n const _treeTemplates = []\r\n if (Object.keys(favGroups)) {\r\n for (let groupId in favGroups) {\r\n const _item = favGroups[groupId]\r\n const itemTemplate = {\r\n id: _item.id,\r\n label: ,\r\n className: `${classes.TagGroupParent}`,\r\n children: []\r\n }\r\n if (Array.isArray(_item.children)) {\r\n // console.log(_item, 'item')\r\n // if (_item.favs) {\r\n // itemTemplate.children.push({\r\n // id: _item.id,\r\n // label: 'hi',\r\n // className: classes.TagGroupItem\r\n // })\r\n // }\r\n if (_item.children) {\r\n const _defaultItemTemplate = { ...itemTemplate }\r\n delete _defaultItemTemplate['children']\r\n _defaultItemTemplate.label = \r\n _treeTemplates.push(_defaultItemTemplate)\r\n }\r\n _item.children.map(s => {\r\n itemTemplate.children.push({\r\n id: s.id,\r\n label: ,\r\n className: classes.TagGroupItem\r\n })\r\n })\r\n }\r\n _treeTemplates.push(itemTemplate)\r\n }\r\n }\r\n return _treeTemplates\r\n }, [favGroups])\r\n\r\n return (\r\n \r\n \r\n {\r\n isFavsLoading ? (\r\n <>\r\n Loading...\r\n \r\n ) : (\r\n // \r\n \r\n )\r\n }\r\n \r\n \r\n \r\n \r\n Bookmark\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {\r\n setGroupName(e.target.value)\r\n }}\r\n margin=\"dense\"\r\n />\r\n \r\n \r\n \r\n \r\n \r\n Cancel\r\n \r\n ) : }\r\n >\r\n Save\r\n \r\n \r\n \r\n \r\n )\r\n}\r\n","import React, {\r\n useEffect,\r\n useMemo,\r\n useState,\r\n} from 'react'\r\nimport { useDispatch, useSelector } from \"react-redux\"\r\nimport { useHistory } from \"react-router-dom\"\r\nimport {\r\n IconButton,\r\n Box,\r\n Grid,\r\n Typography,\r\n Popover,\r\n Divider,\r\n ListItem,\r\n ListItemButton,\r\n ListItemText,\r\n List,\r\n Accordion,\r\n AccordionSummary,\r\n AccordionDetails,\r\n} from \"@mui/material\"\r\nimport { makeStyles } from \"@mui/styles\";\r\n\r\nimport { deleteUserFavoriteConfig, updateUserFavorite } from \"store/slices/UserSlice\"\r\nimport { showAlertDialog, resetAlertDialog } from 'store/slices/MessagesSystemSlice'\r\nimport DeleteIcon from 'components/icons/Delete'\r\nimport { Delete } from '@mui/icons-material';\r\n\r\nconst useStyles = makeStyles(() => ({\r\n root: {\r\n display: 'flex',\r\n flexDirection: 'column',\r\n height: '100%',\r\n position: 'absolute',\r\n width: '100%'\r\n },\r\n padding: {\r\n padding: '12px 12px 0 12px',\r\n },\r\n IconButton: {\r\n color: 'white',\r\n padding: 3,\r\n '& .MuiSvgIcon-root': {\r\n fontSize: 19\r\n }\r\n },\r\n TagGroupInner: {\r\n },\r\n TagItem: {\r\n borderBottom: 'solid 1px #c4c4c4',\r\n display: 'flex',\r\n alignItems: 'flex-start',\r\n marginTop: 10,\r\n },\r\n TagItemTxt: {\r\n paddingBottom: '20px',\r\n paddingTop: '11px',\r\n color: 'black',\r\n flex: 1,\r\n cursor: 'pointer',\r\n paddingLeft: '13px',\r\n wordBreak: 'break-all'\r\n },\r\n TagItemIconButton: {\r\n color: 'white',\r\n padding: 5,\r\n marginTop: 9,\r\n '& .MuiSvgIcon-root': {\r\n fontSize: 17,\r\n }\r\n },\r\n\r\n\r\n ListItemText: {\r\n fontSize: 14\r\n },\r\n ListItemButton: {\r\n padding: '5px 11px'\r\n },\r\n DeleteConfigIcon: {\r\n '& svg': {\r\n color: 'white',\r\n fontSize: '16px'\r\n }\r\n },\r\n AccordionSummary: {\r\n background: 'rgba(0, 0, 0, 0.03)',\r\n border: 'solid 1px #e3e3e3'\r\n }\r\n}));\r\n\r\nexport default function FavGroupFolder(props) {\r\n const classes = useStyles()\r\n const history = useHistory()\r\n const dispatch = useDispatch()\r\n\r\n const favs = useSelector(state => state.user.favs) || {}\r\n\r\n const { wrapStyle, favorites, configurations, parentFolderId, subFolderId } = props\r\n\r\n // console.log(parentFolderId, 'parentFolderId')\r\n // console.log(subFolderId, 'subFolderId')\r\n\r\n const [anchorEl, setAnchorEl] = useState(null);\r\n const [selectedFav, setSelectedFav] = useState(null)\r\n\r\n const selectedConfiguration = useMemo(() => {\r\n return configurations[selectedFav] || []\r\n }, [\r\n selectedFav,\r\n configurations\r\n ])\r\n\r\n const handleFavClick = (event) => {\r\n // setSelectedPopField(field)\r\n setAnchorEl(event.currentTarget);\r\n };\r\n const handlePopoverClose = () => {\r\n setAnchorEl(null);\r\n };\r\n const openPop = Boolean(anchorEl);\r\n\r\n const previousGroupName = useMemo(() => {\r\n if (parentFolderId) {\r\n if (subFolderId) {\r\n return `${parentFolderId}/${subFolderId}`\r\n }\r\n return parentFolderId\r\n }\r\n return ''\r\n }, [\r\n parentFolderId,\r\n subFolderId,\r\n ])\r\n\r\n useEffect(() => {\r\n // console.log(favorites, 'favorites')\r\n if(!selectedFav && favorites[0]){\r\n setSelectedFav(favorites[0])\r\n }\r\n }, [\r\n favorites\r\n ])\r\n\r\n const alertDialog = useSelector(state => state.messagesSystem.alertDialog)\r\n useEffect(() => {\r\n const { dialogAction, clickedButton, data } = alertDialog;\r\n if (clickedButton === \"alertDialogButtonLeft\") {\r\n if (dialogAction === \"deleteFav\") {\r\n let groupToDelete = favs[previousGroupName]\r\n if (data.flag === 'item') {\r\n let newFavorites = [...groupToDelete.favorites]\r\n const index = newFavorites.indexOf(data.item)\r\n if (index > -1) {\r\n newFavorites.splice(index, 1)\r\n }\r\n console.log(groupToDelete, 'groupToDelete')\r\n dispatch(updateUserFavorite({ groupToChange: groupToDelete, favorites: newFavorites }))\r\n }\r\n } else if (dialogAction === 'deleteFavConfig') {\r\n let groupToDelete = favs[previousGroupName]\r\n // let newFavorites = [...groupToDelete.favorites]\r\n // const index = newFavorites.indexOf(data.item)\r\n // if (index > -1) {\r\n // newFavorites.splice(index, 1)\r\n // }\r\n console.log(groupToDelete, 'groupToDelete.groupName')\r\n dispatch(deleteUserFavoriteConfig({ group_id: groupToDelete.id, groupName: groupToDelete.groupName, favorite: data.favorite, config_id: data.config_id }))\r\n }\r\n }\r\n dispatch(resetAlertDialog());\r\n }, [alertDialog.clickedButton]);\r\n\r\n\r\n // const [expanded, setExpanded] = React.useState('panel1');\r\n\r\n const handleChange = (panel) => (event, newExpanded) => {\r\n // setExpanded(newExpanded ? panel : false);\r\n setSelectedFav(newExpanded ? panel : null)\r\n };\r\n return (\r\n <>\r\n \r\n {\r\n favorites.map((item, idx) => (\r\n \r\n \r\n {item}\r\n \r\n \r\n {\r\n selectedConfiguration.map((config, cIdx) => {\r\n return \r\n {\r\n // setSelectedLine(item.id)\r\n // setAnchorEl(null)\r\n // setSelectedPopField(null)\r\n let queries = []\r\n if (config.line) queries.push(`line=${config.line}`)\r\n if (config.xAxis) queries.push(`xAxis=${config.xAxis}`)\r\n if (config.yAxis) queries.push(`yAxis=${config.yAxis}`)\r\n if (config.timeIncrement) queries.push(`timeIncrement=${config.timeIncrement}`)\r\n history.push(`/product/detail/${selectedFav}?${queries.join('&')}`)\r\n }}\r\n >\r\n \r\n \r\n {\r\n config.line ? (\r\n \r\n ) : (\r\n \r\n )\r\n }\r\n \r\n {\r\n e.stopPropagation()\r\n dispatch(showAlertDialog({\r\n title: \"Confirmation\",\r\n message: \"Are you sure you want to delete?\",\r\n buttonLabel: { left: \"Ok\", right: \"Cancel\" },\r\n dialogAction: \"deleteFavConfig\",\r\n data: {\r\n flag: 'config',\r\n favorite: selectedFav,\r\n config_id: config.id\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 1 === 2 && (\r\n \r\n \r\n {\r\n favorites.map((item, idx) => (\r\n \r\n {\r\n handleFavClick(e)\r\n setSelectedFav(item)\r\n }}\r\n >{item}\r\n \r\n {/* \r\n \r\n */}\r\n {\r\n dispatch(showAlertDialog({\r\n title: \"Confirmation\",\r\n message: \"Are you sure you want to delete?\",\r\n buttonLabel: { left: \"Ok\", right: \"Cancel\" },\r\n dialogAction: \"deleteFav\",\r\n data: {\r\n flag: 'item',\r\n item: item\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 BEA/GDPbyIndustry/Percent Changes in Chain-Type Quantity Indexes for Value Added by Industry (A) (Q)\r\n \r\n \r\n \r\n \r\n \r\n \r\n )\r\n}\r\n","import React, { useMemo, useState, useEffect } from \"react\";\r\nimport { useDispatch, useSelector } from \"react-redux\";\r\n\r\nimport { deleteUserFavorite, fetchUserFavorites, updateUserFavorite } from \"store/slices/UserSlice\"\r\nimport SwipeableViews from \"react-swipeable-views\";\r\n\r\nimport {\r\n Typography,\r\n Box,\r\n Grid,\r\n IconButton,\r\n Divider\r\n} from \"@mui/material\";\r\nimport { makeStyles } from \"@mui/styles\";\r\nimport {\r\n ChevronLeft as ChevronLeftIcon,\r\n Home as HomeIcon\r\n} from '@mui/icons-material';\r\n\r\nimport FavDisplay from \"./FavDisplay\";\r\nimport FavGroupFolder from \"./FavGroupFolder\";\r\n\r\nconst useStyles = makeStyles((theme) => ({\r\n root: {\r\n display: 'flex',\r\n flexDirection: 'column',\r\n width: '100%',\r\n height: '100%',\r\n position: 'absolute',\r\n },\r\n padding: {\r\n padding: '12px 12px 0 12px',\r\n },\r\n HeaderLabel: {\r\n fontStyle: 'normal',\r\n fontWeight: '600',\r\n fontSize: '20px',\r\n lineHeight: '28px',\r\n letterSpacing: '-0.02em',\r\n color: '#374151',\r\n marginBottom: 8,\r\n },\r\n SwipeableViewsContainer: {\r\n flex: 1,\r\n overflow: 'auto',\r\n '&::-webkit-scrollbar': {\r\n width: 9,\r\n },\r\n /* Track */\r\n '&::-webkit-scrollbar-track': {\r\n background: '#e4e5e9',\r\n borderRadius: 4,\r\n },\r\n /* Handle */\r\n '&::-webkit-scrollbar-thumb': {\r\n background: '#b0b3bd',\r\n borderRadius: 4,\r\n },\r\n /* Handle on hover */\r\n '&::-webkit-scrollbar-thumb:hover': {\r\n background: '#9e1e1e',\r\n },\r\n },\r\n BackIconButton: {\r\n boxShadow: '0px 0px 6px 0px black',\r\n padding: '5px',\r\n display: 'flex',\r\n justifyContent: 'center',\r\n \"&:focus\": {\r\n outline: 'none'\r\n }\r\n },\r\n BreadcrumbItem: {\r\n display: 'inline-flex',\r\n flexDirection: 'column',\r\n justifyContent: 'center',\r\n alignItems: 'center',\r\n padding: '0px 8px',\r\n gap: '8px',\r\n height: '20px',\r\n background: theme.palette.smartGreen.main,\r\n borderRadius: '24px',\r\n color: 'white',\r\n fontFamily: 'Inter',\r\n fontStyle: 'normal',\r\n fontWeight: '500',\r\n fontSize: '12px',\r\n lineHeight: '20px',\r\n marginRight: 6,\r\n cursor: 'pointer'\r\n },\r\n BreadCrumbDivider: {\r\n background: '#E5ECFA',\r\n marginBottom: 12,\r\n },\r\n SelectedBreadcrumbItem: {\r\n background: theme.palette.smartGreen.main,\r\n cursor: 'initial'\r\n },\r\n}))\r\n\r\nconst BreadcrumbItem = (props) => {\r\n const classes = useStyles()\r\n return {\r\n if (props.onClick) props.onClick()\r\n }}\r\n >\r\n {props.labelTxt}\r\n \r\n}\r\n\r\n/* Step2Sidebar's Source Container */\r\nconst StepTagsContainer = ({ wrapStyle }) => {\r\n const dispatch = useDispatch()\r\n const classes = useStyles()\r\n\r\n const appLayout = useSelector(state => state.appLayout);\r\n const initialFavs = useSelector(state => state.user.favs) || {}\r\n // console.log(initialFavs, 'initialFavs')\r\n\r\n const [state, setState] = useState({\r\n step2Index: 0,\r\n feedSource: '',\r\n parentFolderId: null,\r\n subFolderId: null\r\n })\r\n const handelStep2Index = (index, parentFolderId, subFolderId) => {\r\n let updates = {\r\n ...state,\r\n step2Index: index,\r\n parentFolderId,\r\n subFolderId\r\n };\r\n setState({ ...updates })\r\n }\r\n useEffect(() => {\r\n if (Object.keys(initialFavs).length < 1) {\r\n dispatch(fetchUserFavorites())\r\n }\r\n }, [])\r\n\r\n const favGroups = useMemo(() => {\r\n const _treeFormats = {}\r\n if (Object.keys(initialFavs).length > 0) {\r\n for (let _groupName in initialFavs) {\r\n const _fav = initialFavs[_groupName]\r\n const _spliceIdx = _groupName.indexOf('/')\r\n let parentId = _groupName, subFolderid\r\n if (_spliceIdx > -1) {\r\n parentId = _groupName.substring(0, _spliceIdx)\r\n subFolderid = _groupName.substring(_spliceIdx + 1)\r\n }\r\n if (_treeFormats[parentId] === undefined) {\r\n _treeFormats[parentId] = {\r\n id: parentId,\r\n label: parentId,\r\n }\r\n }\r\n if (subFolderid) {\r\n if (_treeFormats[parentId].children === undefined) {\r\n _treeFormats[parentId].children = []\r\n }\r\n const _subFolderIdx = _treeFormats[parentId].children.findIndex(item => item.id == subFolderid)\r\n if (_subFolderIdx < 0) {\r\n _treeFormats[parentId].children.push({\r\n id: subFolderid,\r\n label: subFolderid,\r\n favs: _fav.favorites\r\n })\r\n } else {\r\n const _subFolder = _treeFormats[parentId].children[_subFolderIdx]\r\n _treeFormats[parentId].children[_subFolderIdx].favs = _subFolder.favs.concat(_fav.favorites)\r\n }\r\n } else {\r\n if (_treeFormats[parentId].favs === undefined) {\r\n _treeFormats[parentId].favs = []\r\n }\r\n // if(_fav.favorites){\r\n // _treeFormats[parentId].children.unshift({\r\n // id: parentId, label: parentId, favs: _fav.favorites, isDefault: true\r\n // })\r\n // }\r\n _treeFormats[parentId].favs = _treeFormats[parentId].favs.concat(_fav.favorites)\r\n }\r\n }\r\n }\r\n // console.log(_treeFormats, '_treeFormats')\r\n return _treeFormats\r\n }, [initialFavs])\r\n\r\n const favorites = useMemo(() => {\r\n let _favorites = []\r\n if (state.parentFolderId && state.subFolderId) {\r\n _favorites = initialFavs[`${state.parentFolderId}/${state.subFolderId}`]?.favorites || []\r\n } else if (state.parentFolderId) {\r\n _favorites = initialFavs[state.parentFolderId]?.favorites || []\r\n }\r\n return _favorites\r\n }, [\r\n initialFavs,\r\n state.parentFolderId,\r\n state.subFolderId\r\n ])\r\n const configurations = useMemo(() => {\r\n let _configurations = []\r\n if (state.parentFolderId && state.subFolderId) {\r\n _configurations = initialFavs[`${state.parentFolderId}/${state.subFolderId}`]?.configuration || []\r\n } else if (state.parentFolderId) {\r\n _configurations = initialFavs[state.parentFolderId]?.configuration || []\r\n }\r\n return _configurations\r\n }, [\r\n initialFavs,\r\n state.parentFolderId,\r\n state.subFolderId\r\n ])\r\n\r\n const renderBreadCrumb = useMemo(() => {\r\n return \r\n \r\n {\r\n state.step2Index > 0 && (\r\n { handelStep2Index(0) }} />\r\n )\r\n }\r\n {\r\n state.step2Index >= 1 && (\r\n <>\r\n {\r\n state.parentFolderId && (\r\n {\r\n if (state.subFolderId) handelStep2Index(0)\r\n }}\r\n />\r\n )\r\n }\r\n {\r\n state.subFolderId && (\r\n { }}\r\n />\r\n )\r\n }\r\n \r\n )\r\n }\r\n \r\n }, [\r\n state.parentFolderId,\r\n state.subFolderId,\r\n state.step2Index\r\n ])\r\n\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n Bookmarks\r\n \r\n {renderBreadCrumb}\r\n \r\n {/* {\r\n state.step2Index > 0 && (\r\n handelStep2Index(0)} className={classes.BackIconButton}>\r\n \r\n \r\n )\r\n } */}\r\n \r\n \r\n \r\n \r\n \r\n {\r\n if (state.subFolderId) {\r\n setState({\r\n ...state, subFolderId: newVal\r\n })\r\n } else if (state.parentFolderId) {\r\n setState({\r\n ...state, parentFolderId: newVal\r\n })\r\n }\r\n }}\r\n index={1}\r\n favorites={favorites}\r\n configurations={configurations}\r\n parentFolderId={state.parentFolderId}\r\n subFolderId={state.subFolderId}\r\n dir={'rtl'} />\r\n \r\n \r\n \r\n );\r\n}\r\n\r\nexport default StepTagsContainer;\r\n","import React from 'react'\r\nimport { SvgIcon } from \"@mui/material\";\r\n\r\nconst DashboardIcon = (props) => {\r\n return (\r\n \r\n \r\n \r\n // fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\"\r\n );\r\n};\r\n\r\nexport default DashboardIcon;\r\n","import React from 'react'\r\nimport { SvgIcon } from \"@mui/material\";\r\n\r\nconst DashboardIcon = (props) => {\r\n return (\r\n \r\n \r\n \r\n // fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\"\r\n );\r\n};\r\n\r\nexport default DashboardIcon;\r\n","import React from 'react'\r\nimport { SvgIcon } from \"@mui/material\";\r\n\r\nconst TagIcon = (props) => {\r\n return (\r\n \r\n \r\n \r\n \r\n // fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\"\r\n );\r\n};\r\n\r\nexport default TagIcon;\r\n","import React from 'react'\r\nimport { SvgIcon } from \"@mui/material\";\r\n\r\nconst TagSelectedIcon = (props) => {\r\n return (\r\n \r\n \r\n \r\n \r\n // fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\"\r\n );\r\n};\r\n\r\nexport default TagSelectedIcon;\r\n","import {makeStyles} from \"@mui/styles\";\r\nexport const useStyles = makeStyles((theme) => ({\r\n root: {\r\n display: 'flex'\r\n },\r\n noDisplay: {\r\n display: 'none',\r\n },\r\n stepSidebar: {\r\n position: 'relative',\r\n width: 390,\r\n maxWidth: 390,\r\n boxShadow: 'rgba(0, 0, 0, 0.1) 0 2px 22px 0, rgba(0, 0, 0, 0.15) 0 4px 20px 0',\r\n transitionProperty: 'top, bottom, width',\r\n transitionDuration: '0.2s, 0.2s, 0.35s',\r\n transitionTimingFunction: 'linear, linear, ease',\r\n transition: 'all ease .3s',\r\n backgroundColor: '#F5F8FF',\r\n marginLeft: 20,\r\n borderRadius: 6,\r\n height: '100vh',\r\n maxHeight: 'calc(100vh - 100px)',\r\n zIndex: 1030,\r\n '&::before': {\r\n content: \"\",\r\n position: 'absolute',\r\n top: '-5px',\r\n left: '40px',\r\n transform: 'translate(-50%)',\r\n borderLeft: '5px solid transparent',\r\n borderright: '5px solid transparent',\r\n borderBottomColor: 'rgb(255, 141, 114)',\r\n },\r\n },\r\n minimizedStepSidebar: {\r\n width: 100,\r\n maxWidth: 100,\r\n minWidth: 100,\r\n border: 'solid 2px',\r\n borderColor: theme.palette.gold.main\r\n },\r\n stepSidebar2: {\r\n background: '#f5f8ff',\r\n border: 'solid 2px',\r\n borderColor: theme.palette.gold.main\r\n },\r\n stepSidebarInner: {\r\n height: '100%',\r\n /* Track */\r\n '&::-webkit-scrollbar-track': {\r\n background: '#0a0a0aed',\r\n border: 'solid 1px white',\r\n borderRadius: 4,\r\n },\r\n /* Handle */\r\n '&::-webkit-scrollbar-thumb': {\r\n background: '#f30000',\r\n borderRadius: 4,\r\n },\r\n /* Handle on hover */\r\n '&::-webkit-scrollbar-thumb:hover': {\r\n background: '#9e1e1e',\r\n },\r\n },\r\n navList: {\r\n marginTop: 20,\r\n display: 'block',\r\n },\r\n navItem: { \r\n // color: '#707071',\r\n display: 'block',\r\n position: 'relative',\r\n textTransform: 'uppercase',\r\n cursor: 'pointer',\r\n fontSize: '0.85475rem',\r\n fontWeight: '400',\r\n lineHeight: '1.625rem',\r\n margin: 0,\r\n textDecoration: 'none',\r\n padding: '14px 0 14px 37px',\r\n '&.selected': {\r\n background: theme.palette.smartGreen.main,\r\n '& .mui-icon': {\r\n color: 'white'\r\n }\r\n }\r\n },\r\n step2SidebarInner: {\r\n width: '100%',\r\n minHeight: '100%',\r\n maxHeight: '100%',\r\n zIndex: 4,\r\n position: 'relative',\r\n overflow: 'auto',\r\n }\r\n}))","import React from 'react'\r\nimport {SvgIcon} from \"@mui/material\";\r\n\r\nconst MarketIcon = (props) => {\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n // fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\"\r\n )\r\n};\r\n\r\nexport default MarketIcon;\r\n","import React from 'react'\r\nimport {SvgIcon} from \"@mui/material\";\r\n\r\nconst NonMarketIcon = (props) => {\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n \r\n // fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\"\r\n );\r\n};\r\n\r\nexport default NonMarketIcon;\r\n","import React, { useEffect, useLayoutEffect, useMemo, useRef, useState } from \"react\";\r\nimport { useHistory } from \"react-router-dom\"\r\nimport { useDispatch, useSelector } from \"react-redux\";\r\n\r\nimport SwipeableViews from \"react-swipeable-views\";\r\n\r\nimport { getAuth, signOut } from \"firebase/auth\"\r\nimport {\r\n Box,\r\n} from \"@mui/material\";\r\nimport {\r\n FolderCopy as FolderCopyIcon,\r\n Troubleshoot\r\n} from '@mui/icons-material';\r\nimport DoubleArrowRightIcon from '@mui/icons-material/KeyboardDoubleArrowRight';\r\nimport DoubleArrowLeftIcon from '@mui/icons-material/KeyboardDoubleArrowLeft';\r\n\r\nimport {\r\n setVisibleStep2,\r\n selectStep2Sidebar,\r\n selectStep1Sidebar\r\n} from \"store/slices/AppLayoutSlice\";\r\n\r\nimport StyledTooltip from \"components/common/Base/StyledTooltip\";\r\nimport StepSourceContainer from \"./sources\";\r\nimport PolygonContainer from \"./polygon\";\r\nimport StepQaContainer from \"./qa\";\r\n\r\nimport 'styles/custom/theme/step_sidebar.scss';\r\n// import ChartOptions from \"./chartOptions/index\";\r\nimport CategoryOptions from \"./categories/CategoryOptions\";\r\nimport FavDisplay from \"components/layout/sidebar/tags\"\r\n\r\nimport { changeStep2Index, fetchFeedSources } from \"store/slices/EodDataSlice\";\r\nimport LocalStorageService from \"store/services/LocalStorageService\";\r\n\r\n\r\nimport DashboardIcon from 'components/icons/Dashboard'\r\nimport DashboardSelectedIcon from 'components/icons/DashboardSelected'\r\n// import ChartFeatureIcon from \"components/icons/ChartFeature\";\r\n// import ChartFeatureSelectedIcon from \"components/icons/ChartFeatureSelected\";\r\nimport TagIcon from \"components/icons/Tag\";\r\nimport TagSelectedIcon from \"components/icons/TagSelected\";\r\n\r\nimport { useStyles } from \"./useStyles\";\r\nimport MarketIcon from \"components/icons/MarketIcon\";\r\nimport NonMarketIcon from \"components/icons/NonMarketIcon\";\r\n\r\nconst storageService = LocalStorageService.getService()\r\nconst auth = getAuth();\r\n\r\n/* Main Sidebar */\r\n/*Tip 1: You can change the color of the sidebar using: data-color=\"blue | green | orange | red\"*/\r\nconst StepSidebar = () => {\r\n const classes = useStyles();\r\n const history = useHistory()\r\n const dispatch = useDispatch();\r\n const appLayout = useSelector(state => state.appLayout)\r\n const step1Sidebar = useSelector(state => state.appLayout.step1Sidebar)\r\n const [activeAllStep1Sidebar, setActiveAllStep1Sidebar] = useState(false)\r\n const logCount = storageService.getLogCount()\r\n const [state, setState] = React.useState({\r\n menuVisible: false,\r\n minimizedSidebar: true,\r\n firstChoice: 'source',\r\n })\r\n\r\n const mounted = useRef(false);\r\n useEffect(() => {\r\n mounted.current = true;\r\n\r\n return () => {\r\n mounted.current = false;\r\n };\r\n }, []);\r\n\r\n useLayoutEffect(() => {\r\n if (mounted) {\r\n dispatch(fetchFeedSources())\r\n // fetchSources();\r\n // fetchGroups();\r\n }\r\n }, [\r\n mounted\r\n ])\r\n useLayoutEffect(() => {\r\n if (mounted && logCount < 3) {\r\n setActiveAllStep1Sidebar(true)\r\n }\r\n }, [\r\n mounted,\r\n logCount\r\n ])\r\n useLayoutEffect(() => {\r\n if (activeAllStep1Sidebar) {\r\n setTimeout(() => {\r\n setActiveAllStep1Sidebar(false)\r\n }, 3000)\r\n }\r\n }, [\r\n activeAllStep1Sidebar\r\n ])\r\n\r\n const toggleShow = () => {\r\n state.menuVisible = !state.menuVisible\r\n setState({ ...state })\r\n };\r\n const handleStep2Visible = (visible, choice, _step1Sidebar = '') => {\r\n let isStep2Shown = !appLayout.isStep2Shown;\r\n if (visible !== undefined) {\r\n if (appLayout.step1Sidebar === _step1Sidebar && choice !== '' && choice === appLayout.step2Sidebar && visible === appLayout.isStep2Shown) {\r\n isStep2Shown = !appLayout.isStep2Shown;\r\n } else {\r\n isStep2Shown = visible;\r\n }\r\n }\r\n if (isStep2Shown !== appLayout.isStep2Shown) {\r\n dispatch(setVisibleStep2(isStep2Shown));\r\n }\r\n if (choice !== appLayout.step2Sidebar) {\r\n dispatch(selectStep2Sidebar(choice))\r\n }\r\n }\r\n const setIsShown = (value) => {\r\n state.minimizedSidebar = value\r\n setState({ ...state })\r\n }\r\n\r\n const onClickLogOut = () => {\r\n signOut(auth).then(() => {\r\n // Sign-out successful.\r\n }).catch((error) => {\r\n // An error happened.\r\n })\r\n }\r\n\r\n const toggleSidebar = () => {\r\n if (appLayout.isStep2Shown) {\r\n dispatch(setVisibleStep2(false));\r\n }else{\r\n dispatch(setVisibleStep2(true));\r\n }\r\n }\r\n\r\n const renderSwipeableViews = () => {\r\n return \r\n {/* \r\n {\r\n dispatch(setVisibleStep2(false));\r\n }}>\r\n \r\n \r\n */}\r\n {\r\n appLayout.step1Sidebar === 'data' && \r\n }\r\n {\r\n appLayout.step1Sidebar === 'market' && \r\n }\r\n \r\n {/* */}\r\n {\r\n ['dashboard'].indexOf(appLayout.step1Sidebar) > -1 &&\r\n
\r\n

{appLayout.step2Sidebar.toUpperCase()}

\r\n
\r\n }\r\n {\r\n appLayout.step1Sidebar === 'qa' && \r\n }\r\n \r\n \r\n \r\n \r\n }\r\n\r\n const StyledTooltipProps = useMemo(() => {\r\n return {\r\n open: activeAllStep1Sidebar,\r\n enterDelay: logCount > 3 ? 2000 : 100,\r\n arrow: true,\r\n placement: 'left'\r\n }\r\n }, [activeAllStep1Sidebar, logCount])\r\n return (\r\n <>\r\n \r\n setIsShown(false)}\r\n onMouseLeave={() => setIsShown(true)}\r\n >\r\n \r\n \r\n \r\n \r\n {\r\n appLayout.isStep2Shown ? : \r\n }\r\n \r\n \r\n {\r\n if (appLayout.step1Sidebar !== 'data') {\r\n dispatch(setVisibleStep2(true));\r\n dispatch(selectStep2Sidebar('source'))\r\n } else {\r\n if (appLayout.isStep2Shown) {\r\n dispatch(setVisibleStep2(false));\r\n }else{\r\n dispatch(setVisibleStep2(true));\r\n }\r\n }\r\n dispatch(selectStep1Sidebar('data'))\r\n if(step1Sidebar !== 'data'){\r\n dispatch(changeStep2Index(0))\r\n }\r\n }}\r\n \r\n >\r\n \r\n {\r\n // step1Sidebar === 'data' ? (\r\n // \r\n // ) : (\r\n // \r\n // )\r\n }\r\n \r\n \r\n \r\n {\r\n if (appLayout.step1Sidebar !== 'market') {\r\n dispatch(setVisibleStep2(true));\r\n dispatch(selectStep2Sidebar('market'))\r\n } else {\r\n if (appLayout.isStep2Shown) {\r\n dispatch(setVisibleStep2(false));\r\n }else{\r\n dispatch(setVisibleStep2(true));\r\n }\r\n }\r\n dispatch(selectStep1Sidebar('market'))\r\n if(step1Sidebar !== 'market'){\r\n dispatch(changeStep2Index(0))\r\n }\r\n }}\r\n\r\n >\r\n \r\n {\r\n // step1Sidebar === 'data' ? (\r\n // \r\n // ) : (\r\n // \r\n // )\r\n }\r\n \r\n \r\n {/* \r\n {\r\n handleStep2Visible(true, 'features')\r\n dispatch(selectStep1Sidebar('features'))\r\n }}\r\n >\r\n {\r\n step1Sidebar === 'features' ? (\r\n \r\n ) : (\r\n \r\n )\r\n }\r\n \r\n */}\r\n \r\n {\r\n handleStep2Visible(true, 'tags')\r\n dispatch(selectStep1Sidebar('tags'))\r\n }}\r\n >\r\n {\r\n step1Sidebar === 'tags' ? (\r\n \r\n ) : (\r\n \r\n )\r\n }\r\n \r\n \r\n \r\n {\r\n history.push('/home')\r\n dispatch(selectStep1Sidebar('dashboard'))\r\n }}\r\n >\r\n {\r\n step1Sidebar === 'dashboard' ? (\r\n \r\n ) : (\r\n \r\n )\r\n }\r\n \r\n \r\n \r\n {\r\n handleStep2Visible(true, 'source', 'qa')\r\n dispatch(selectStep1Sidebar('qa'))\r\n if(step1Sidebar !== 'qa'){\r\n dispatch(changeStep2Index(0))\r\n }\r\n }}\r\n >\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {\r\n appLayout.step2Sidebar !== '' &&\r\n \r\n \r\n \r\n \r\n {renderSwipeableViews()}\r\n {/* \r\n This is the 3rd step\r\n */}\r\n \r\n }\r\n \r\n \r\n\r\n );\r\n}\r\nexport default StepSidebar;\r\n","import React, { useState } from \"react\";\r\nimport PropTypes from \"prop-types\";\r\nimport {useSelector} from \"react-redux\";\r\nimport {Col, Container, Row} from \"shards-react\";\r\n\r\nimport MainNavbar from \"../components/layout/header/MainHeader\";\r\n\r\nimport StepSidebar from \"../components/layout/sidebar/StepSidebar\";\r\nimport { styled } from '@mui/material/styles';\r\nimport MuiDrawer from '@mui/material/Drawer';\r\n\r\nconst drawerWidth = 510;\r\n\r\nconst openedMixin = (theme) => ({\r\n width: drawerWidth,\r\n transition: theme.transitions.create('width', {\r\n easing: theme.transitions.easing.sharp,\r\n duration: theme.transitions.duration.enteringScreen,\r\n }),\r\n overflowX: 'hidden',\r\n});\r\n\r\nconst closedMixin = (theme) => ({\r\n transition: theme.transitions.create('width', {\r\n easing: theme.transitions.easing.sharp,\r\n duration: theme.transitions.duration.leavingScreen,\r\n }),\r\n overflowX: 'hidden',\r\n width: '120px'\r\n // width: `calc(${theme.spacing(7)} + 1px)`,\r\n // [theme.breakpoints.up('sm')]: {\r\n // width: `calc(${theme.spacing(8)} + 1px)`,\r\n // },\r\n});\r\n\r\nconst drawPaper = {\r\n top: '82px',\r\n height: 'calc(100% - 82px)',\r\n border: 'none !important',\r\n boxShadow: 'none',\r\n position: 'absolute',\r\n background: 'transparent',\r\n}\r\nconst Drawer = styled(MuiDrawer, { shouldForwardProp: (prop) => prop !== 'open' })(\r\n ({ theme, open }) => ({\r\n width: drawerWidth,\r\n // flexShrink: 0,\r\n // whiteSpace: 'nowrap',\r\n // boxSizing: 'border-box',\r\n ...(open && {\r\n ...openedMixin(theme),\r\n '& .MuiDrawer-paper': {\r\n ...drawPaper,\r\n ...openedMixin(theme)\r\n },\r\n }),\r\n ...(!open && {\r\n ...closedMixin(theme),\r\n '& .MuiDrawer-paper': {\r\n ...drawPaper,\r\n ...closedMixin(theme)\r\n },\r\n }),\r\n }),\r\n);\r\n\r\nconst DefaultLayout = (props) => {\r\n const [state, setState] = useState({\r\n menuVisible: false,\r\n navOpen: false,\r\n isStep2Shown: true,\r\n selectedSItem: 'features'\r\n })\r\n const toggleMenu = () => {\r\n setState({\r\n ...state,\r\n menuVisible: !state.menuVisible\r\n })\r\n }\r\n\r\n const toggleNav = () => {\r\n setState({\r\n ...state,\r\n navOpen: !state.navOpen\r\n })\r\n }\r\n const isStep2Shown = useSelector(state => state.appLayout.isStep2Shown)\r\n return (\r\n <>\r\n \r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n {\r\n !props.noNavbar &&\r\n \r\n }\r\n \r\n \r\n \r\n \r\n
\r\n {props.children}\r\n
\r\n {/*{!this.props.noFooter && }*/}\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n )\r\n}\r\n\r\n/*const DefaultLayout = ({ children, noNavbar, noFooter }) => (\r\n\r\n);*/\r\n\r\nDefaultLayout.propTypes = {\r\n /**\r\n * Whether to display the navbar, or not.\r\n */\r\n noNavbar: PropTypes.bool,\r\n /**\r\n * Whether to display the footer, or not.\r\n */\r\n noFooter: PropTypes.bool\r\n};\r\n\r\nDefaultLayout.defaultProps = {\r\n noNavbar: false,\r\n noFooter: false\r\n};\r\n\r\nexport default DefaultLayout;\r\n","import React from \"react\";\r\n\r\nclass AuthLayout extends React.Component {\r\n constructor(props) {\r\n super(props);\r\n }\r\n\r\n render() {\r\n return (\r\n \r\n
\r\n { this.props.children}\r\n
\r\n \r\n )\r\n }\r\n}\r\n\r\nexport default AuthLayout;\r\n","import { Chip, emphasize } from '@mui/material';\r\nimport { withStyles } from '@mui/styles';\r\n\r\nexport const StyledBreadcrumb = withStyles((theme) => ({\r\n root: {\r\n backgroundColor: theme.palette.grey[100],\r\n height: theme.spacing(3),\r\n color: theme.palette.grey[800],\r\n fontWeight: theme.typography.fontWeightRegular,\r\n '&:hover, &:focus': {\r\n backgroundColor: theme.palette.grey[300],\r\n },\r\n '&:active': {\r\n boxShadow: theme.shadows[1],\r\n backgroundColor: emphasize(theme.palette.grey[300], 0.12),\r\n },\r\n },\r\n }))(Chip); // TypeScript only: need a type cast here because https://github.com/Microsoft/TypeScript/issues/26591","import React from \"react\";\r\nimport PropTypes from 'prop-types';\r\n\r\nimport {compose} from \"recompose\";\r\nimport {connect} from \"react-redux\";\r\nimport {withRouter} from \"react-router\";\r\n\r\nimport {makeStyles} from \"@mui/styles\";\r\n\r\nimport {\r\n Button,\r\n AppBar,\r\n Tabs,\r\n Tab,\r\n Typography,\r\n Box,\r\n Chip,\r\n Avatar\r\n} from \"@mui/material\";\r\nimport SearchIcon from '@mui/icons-material/Search';\r\n\r\n\r\n\r\nconst useTabPanelStyles = makeStyles(theme => ({\r\n root: {\r\n minHeight: '400px',\r\n border: 'solid 1px #dedede',\r\n borderTop: 'none'\r\n }\r\n}))\r\nfunction TabPanel(props) {\r\n const classes = useTabPanelStyles()\r\n const { children, value, index, ...other } = props;\r\n \r\n return (\r\n
\r\n\t);\r\n}\r\n/* eslint-enable react/prop-types */\r\n\r\n\r\nfunction drawAxisLine(ctx, props, range) {\r\n\t// props = { ...AxisLine.defaultProps, ...props };\r\n\r\n\tconst { orient, outerTickSize, stroke, strokeWidth, opacity } = props;\r\n\r\n\tconst sign = orient === \"top\" || orient === \"left\" ? -1 : 1;\r\n\tconst xAxis = (orient === \"bottom\" || orient === \"top\");\r\n\r\n\t// var range = d3_scaleRange(xAxis ? xScale : yScale);\r\n\r\n\tctx.lineWidth = strokeWidth;\r\n\tctx.strokeStyle = hexToRGBA(stroke, opacity);\r\n\r\n\tctx.beginPath();\r\n\r\n\tif (xAxis) {\r\n\t\tctx.moveTo(first(range), sign * outerTickSize);\r\n\t\tctx.lineTo(first(range), 0);\r\n\t\tctx.lineTo(last(range), 0);\r\n\t\tctx.lineTo(last(range), sign * outerTickSize);\r\n\t} else {\r\n\t\tctx.moveTo(sign * outerTickSize, first(range));\r\n\t\tctx.lineTo(0, first(range));\r\n\t\tctx.lineTo(0, last(range));\r\n\t\tctx.lineTo(sign * outerTickSize, last(range));\r\n\t}\r\n\tctx.stroke();\r\n}\r\n\r\nfunction Tick(props) {\r\n\tconst { tickLabelFill, tickStroke, tickStrokeOpacity, tickStrokeDasharray, tickStrokeWidth, textAnchor, fontSize, fontFamily, fontWeight } = props;\r\n\tconst { x1, y1, x2, y2, labelX, labelY, dy } = props;\r\n\treturn (\r\n\t\t\r\n\t\t\t\r\n\t\t\t\r\n\t\t\t\t{props.children}\r\n\t\t\t\r\n\t\t\r\n\t);\r\n}\r\n\r\nTick.propTypes = {\r\n\tchildren: PropTypes.string.isRequired,\r\n\tx1: PropTypes.number.isRequired,\r\n\ty1: PropTypes.number.isRequired,\r\n\tx2: PropTypes.number.isRequired,\r\n\ty2: PropTypes.number.isRequired,\r\n\tlabelX: PropTypes.number.isRequired,\r\n\tlabelY: PropTypes.number.isRequired,\r\n\tdy: PropTypes.string.isRequired,\r\n\ttickStroke: PropTypes.string,\r\n\ttickLabelFill: PropTypes.string,\r\n\ttickStrokeWidth: PropTypes.number,\r\n\ttickStrokeOpacity: PropTypes.number,\r\n\ttickStrokeDasharray: PropTypes.oneOf(strokeDashTypes),\r\n\ttextAnchor: PropTypes.string,\r\n\tfontSize: PropTypes.number,\r\n\tfontFamily: PropTypes.string,\r\n\tfontWeight: PropTypes.oneOfType([\r\n\t PropTypes.string,\r\n\t PropTypes.number\r\n\t]),\r\n};\r\n\r\nfunction axisTicksSVG(props, scale) {\r\n\tconst result = tickHelper(props, scale);\r\n\r\n\tconst { tickLabelFill, tickStroke, tickStrokeOpacity, tickStrokeWidth, tickStrokeDasharray, textAnchor } = result;\r\n\tconst { fontSize, fontFamily, fontWeight, ticks, format } = result;\r\n\r\n\tconst { dy } = result;\r\n\r\n\treturn (\r\n\t\t\r\n\t\t\t{ticks.map((tick, idx) => {\r\n\t\t\t\treturn (\r\n\t\t\t\t\t{format(tick.value)}\r\n\t\t\t\t);\r\n\t\t\t})}\r\n\t\t\r\n\t);\r\n}\r\n\r\nfunction drawTicks(ctx, result) {\r\n\r\n\tconst { tickStroke, tickStrokeOpacity, tickLabelFill } = result;\r\n\tconst { textAnchor, fontSize, fontFamily, fontWeight, ticks, showTickLabel } = result;\r\n\r\n\tctx.strokeStyle = hexToRGBA(tickStroke, tickStrokeOpacity);\r\n\r\n\tctx.fillStyle = tickStroke;\r\n\t// ctx.textBaseline = 'middle';\r\n\r\n\tticks.forEach((tick) => {\r\n\t\tdrawEachTick(ctx, tick, result);\r\n\t});\r\n\r\n\tctx.font = `${fontWeight} ${fontSize}px ${fontFamily}`;\r\n\tctx.fillStyle = tickLabelFill;\r\n\tctx.textAlign = textAnchor === \"middle\" ? \"center\" : textAnchor;\r\n\r\n\tif (showTickLabel) {\r\n\t\tticks.forEach((tick) => {\r\n\t\t\tdrawEachTickLabel(ctx, tick, result);\r\n\t\t});\r\n\t}\r\n}\r\n\r\nfunction drawEachTick(ctx, tick, result) {\r\n\tconst { tickStrokeWidth, tickStrokeDasharray } = result;\r\n\r\n\tctx.beginPath();\r\n\r\n\tctx.moveTo(tick.x1, tick.y1);\r\n\tctx.lineTo(tick.x2, tick.y2);\r\n\tctx.lineWidth = tickStrokeWidth;\r\n\tctx.setLineDash(getStrokeDasharray(tickStrokeDasharray).split(\",\"));\r\n\tctx.stroke();\r\n}\r\n\r\nfunction drawEachTickLabel(ctx, tick, result) {\r\n\tconst { canvas_dy, format } = result;\r\n\r\n\tctx.beginPath();\r\n\tctx.fillText(format(tick.value), tick.labelX, tick.labelY + canvas_dy);\r\n}\r\n\r\nexport default Axis;\r\n","\r\n\r\nimport React, { Component } from \"react\";\r\nimport PropTypes from \"prop-types\";\r\nimport Axis from \"./Axis\";\r\n\r\nclass XAxis extends Component {\r\n\tconstructor(props, context) {\r\n\t\tsuper(props, context);\r\n\t\tthis.axisZoomCallback = this.axisZoomCallback.bind(this);\r\n\t}\r\n\taxisZoomCallback(newXDomain) {\r\n\t\tconst { xAxisZoom } = this.context;\r\n\t\txAxisZoom(newXDomain);\r\n\t}\r\n\trender() {\r\n\t\tconst { showTicks } = this.props;\r\n\t\tconst moreProps = helper(this.props, this.context);\r\n\r\n\t\treturn ;\r\n\t}\r\n}\r\n\r\nXAxis.propTypes = {\r\n\taxisAt: PropTypes.oneOfType([\r\n\t\tPropTypes.oneOf([\"top\", \"bottom\", \"middle\"]),\r\n\t\tPropTypes.number\r\n\t]).isRequired,\r\n\torient: PropTypes.oneOf([\"top\", \"bottom\"]).isRequired,\r\n\tinnerTickSize: PropTypes.number,\r\n\touterTickSize: PropTypes.number,\r\n\ttickFormat: PropTypes.func,\r\n\ttickPadding: PropTypes.number,\r\n\ttickSize: PropTypes.number,\r\n\tticks: PropTypes.number,\r\n\ttickValues: PropTypes.array,\r\n\tshowTicks: PropTypes.bool,\r\n\tclassName: PropTypes.string,\r\n\tzoomEnabled: PropTypes.bool,\r\n\tonContextMenu: PropTypes.func,\r\n\tonDoubleClick: PropTypes.func,\r\n};\r\n\r\nXAxis.defaultProps = {\r\n\tshowTicks: true,\r\n\tshowTickLabel: true,\r\n\tshowDomain: true,\r\n\tclassName: \"react-stockcharts-x-axis\",\r\n\tticks: 10,\r\n\touterTickSize: 0,\r\n\tfill: \"none\",\r\n\tstroke: \"#000000\", // x axis stroke color\r\n\tstrokeWidth: 1,\r\n\topacity: 1, // x axis opacity\r\n\tdomainClassName: \"react-stockcharts-axis-domain\",\r\n\tinnerTickSize: 5,\r\n\ttickPadding: 6,\r\n\ttickStroke: \"#000000\", // tick/grid stroke\r\n\ttickLabelFill: \"#000000\", // tick Label\r\n\tfontFamily: \"Helvetica Neue, Helvetica, Arial, sans-serif\",\r\n\tfontSize: 12,\r\n\tfontWeight: 400,\r\n\txZoomHeight: 25,\r\n\tzoomEnabled: true,\r\n\tgetMouseDelta: (startXY, mouseXY) => startXY[0] - mouseXY[0],\r\n};\r\n\r\nXAxis.contextTypes = {\r\n\tchartConfig: PropTypes.object.isRequired,\r\n\txAxisZoom: PropTypes.func.isRequired,\r\n};\r\n\r\nfunction helper(props, context) {\r\n\tconst { axisAt, xZoomHeight, orient } = props;\r\n\tconst { chartConfig: { width, height } } = context;\r\n\r\n\tlet axisLocation;\r\n\tconst x = 0, w = width, h = xZoomHeight;\r\n\r\n\tif (axisAt === \"top\") axisLocation = 0;\r\n\telse if (axisAt === \"bottom\") axisLocation = height;\r\n\telse if (axisAt === \"middle\") axisLocation = (height) / 2;\r\n\telse axisLocation = axisAt;\r\n\r\n\tconst y = (orient === \"top\") ? -xZoomHeight : 0;\r\n\r\n\treturn {\r\n\t\ttransform: [0, axisLocation],\r\n\t\trange: [0, width],\r\n\t\tgetScale: getXScale,\r\n\t\tbg: { x, y, h, w },\r\n\t};\r\n}\r\n\r\nfunction getXScale(moreProps) {\r\n\tconst { xScale: scale, width } = moreProps;\r\n\r\n\tif (scale.invert) {\r\n\t\tconst trueRange = [0, width];\r\n\t\tconst trueDomain = trueRange.map(scale.invert);\r\n\t\treturn scale.copy()\r\n\t\t\t.domain(trueDomain)\r\n\t\t\t.range(trueRange);\r\n\t}\r\n\r\n\treturn scale;\r\n}\r\n\r\n\r\nexport default XAxis;\r\n","\r\n\r\nimport React, { Component } from \"react\";\r\nimport PropTypes from \"prop-types\";\r\nimport Axis from \"./Axis\";\r\n\r\nclass YAxis extends Component {\r\n\tconstructor(props, context) {\r\n\t\tsuper(props, context);\r\n\t\tthis.axisZoomCallback = this.axisZoomCallback.bind(this);\r\n\t}\r\n\taxisZoomCallback(newYDomain) {\r\n\t\tconst { chartId, yAxisZoom } = this.context;\r\n\t\tyAxisZoom(chartId, newYDomain);\r\n\t}\r\n\trender() {\r\n\t\tconst { zoomEnabled, ...moreProps } = helper(this.props, this.context);\r\n\t\treturn ;\r\n\t}\r\n}\r\n\r\nYAxis.propTypes = {\r\n\taxisAt: PropTypes.oneOfType([\r\n\t\tPropTypes.oneOf([\"left\", \"right\", \"middle\"]),\r\n\t\tPropTypes.number\r\n\t]).isRequired,\r\n\torient: PropTypes.oneOf([\"left\", \"right\"]).isRequired,\r\n\tinnerTickSize: PropTypes.number,\r\n\touterTickSize: PropTypes.number,\r\n\ttickFormat: PropTypes.func,\r\n\ttickPadding: PropTypes.number,\r\n\ttickSize: PropTypes.number,\r\n\tticks: PropTypes.number,\r\n\tyZoomWidth: PropTypes.number,\r\n\ttickValues: PropTypes.array,\r\n\tshowTicks: PropTypes.bool,\r\n\tclassName: PropTypes.string,\r\n\tzoomEnabled: PropTypes.bool,\r\n\tonContextMenu: PropTypes.func,\r\n\tonDoubleClick: PropTypes.func,\r\n};\r\n\r\nYAxis.defaultProps = {\r\n\tshowTicks: true,\r\n\tshowTickLabel: true,\r\n\tshowDomain: true,\r\n\tclassName: \"react-stockcharts-y-axis\",\r\n\tticks: 10,\r\n\touterTickSize: 0,\r\n\tdomainClassName: \"react-stockcharts-axis-domain\",\r\n\tfill: \"none\",\r\n\tstroke: \"#FFFFFF\",\r\n\tstrokeWidth: 1,\r\n\topacity: 1,\r\n\tinnerTickSize: 5,\r\n\ttickPadding: 6,\r\n\ttickStroke: \"#000000\",\r\n\ttickLabelFill: \"#000000\",\r\n\ttickStrokeOpacity: 1,\r\n\tfontFamily: \"Helvetica Neue, Helvetica, Arial, sans-serif\",\r\n\tfontSize: 12,\r\n\tfontWeight: 400,\r\n\tyZoomWidth: 40,\r\n\tzoomEnabled: true,\r\n\tgetMouseDelta: (startXY, mouseXY) => startXY[1] - mouseXY[1],\r\n};\r\n\r\nYAxis.contextTypes = {\r\n\tyAxisZoom: PropTypes.func.isRequired,\r\n\tchartId: PropTypes.oneOfType([PropTypes.number, PropTypes.string]).isRequired,\r\n\tchartConfig: PropTypes.object.isRequired,\r\n};\r\n\r\nfunction helper(props, context) {\r\n\tconst { axisAt, yZoomWidth, orient } = props;\r\n\tconst { chartConfig: { width, height } } = context;\r\n\r\n\tlet axisLocation;\r\n\tconst y = 0, w = yZoomWidth, h = height;\r\n\r\n\tif (axisAt === \"left\") {\r\n\t\taxisLocation = 0;\r\n\t} else if (axisAt === \"right\") {\r\n\t\taxisLocation = width;\r\n\t} else if (axisAt === \"middle\") {\r\n\t\taxisLocation = (width) / 2;\r\n\t} else {\r\n\t\taxisLocation = axisAt;\r\n\t}\r\n\r\n\tconst x = (orient === \"left\") ? -yZoomWidth : 0;\r\n\r\n\treturn {\r\n\t\ttransform: [axisLocation, 0],\r\n\t\trange: [0, height],\r\n\t\tgetScale: getYScale,\r\n\t\tbg: { x, y, h, w },\r\n\t\tzoomEnabled: context.chartConfig.yPan,\r\n\t};\r\n}\r\n\r\nfunction getYScale(moreProps) {\r\n\tconst { yScale: scale, flipYScale, height } = moreProps.chartConfig;\r\n\tif (scale.invert) {\r\n\t\tconst trueRange = flipYScale ? [0, height] : [height, 0];\r\n\t\tconst trueDomain = trueRange.map(scale.invert);\r\n\t\treturn scale.copy()\r\n\t\t\t.domain(trueDomain)\r\n\t\t\t.range(trueRange);\r\n\t}\r\n\treturn scale;\r\n}\r\n\r\nexport default YAxis;\r\n","\r\n\r\nimport React, { Component } from \"react\";\r\nimport PropTypes from \"prop-types\";\r\nimport { line as d3Line } from \"d3-shape\";\r\n\r\nimport GenericChartComponent from \"../GenericChartComponent\";\r\nimport { getAxisCanvas, getMouseCanvas } from \"../GenericComponent\";\r\n\r\nimport {\r\n\tisDefined,\r\n\tgetClosestItemIndexes,\r\n\tstrokeDashTypes,\r\n\tgetStrokeDasharray,\r\n\thexToRGBA,\r\n} from \"../utils\";\r\n\r\nclass LineSeries extends Component {\r\n\tconstructor(props) {\r\n\t\tsuper(props);\r\n\t\tthis.renderSVG = this.renderSVG.bind(this);\r\n\t\tthis.drawOnCanvas = this.drawOnCanvas.bind(this);\r\n\t\tthis.isHover = this.isHover.bind(this);\r\n\t}\r\n\tisHover(moreProps) {\r\n\t\t// console.log(\"HERE\")\r\n\t\tconst { highlightOnHover, yAccessor, hoverTolerance } = this.props;\r\n\r\n\t\tif (!highlightOnHover) return false;\r\n\r\n\t\tconst { mouseXY, currentItem, xScale, plotData } = moreProps;\r\n\t\tconst { chartConfig: { yScale, origin } } = moreProps;\r\n\r\n\t\tconst { xAccessor } = moreProps;\r\n\r\n\t\tconst [x, y] = mouseXY;\r\n\t\tconst radius = hoverTolerance;\r\n\r\n\t\tconst { left, right } = getClosestItemIndexes(plotData, xScale.invert(x), xAccessor);\r\n\t\tif (left === right) {\r\n\t\t\tconst cy = yScale(yAccessor(currentItem)) + origin[1];\r\n\t\t\tconst cx = xScale(xAccessor(currentItem)) + origin[0];\r\n\r\n\t\t\tconst hovering1 = Math.pow(x - cx, 2) + Math.pow(y - cy, 2) < Math.pow(radius, 2);\r\n\r\n\t\t\treturn hovering1;\r\n\t\t} else {\r\n\t\t\tconst l = plotData[left];\r\n\t\t\tconst r = plotData[right];\r\n\t\t\tconst x1 = xScale(xAccessor(l)) + origin[0];\r\n\t\t\tconst y1 = yScale(yAccessor(l)) + origin[1];\r\n\t\t\tconst x2 = xScale(xAccessor(r)) + origin[0];\r\n\t\t\tconst y2 = yScale(yAccessor(r)) + origin[1];\r\n\r\n\t\t\t// y = m * x + b\r\n\t\t\tconst m /* slope */ = (y2 - y1) / (x2 - x1);\r\n\t\t\tconst b /* y intercept */ = -1 * m * x1 + y1;\r\n\r\n\t\t\tconst desiredY = Math.round(m * x + b);\r\n\r\n\t\t\tconst hovering2 = y >= desiredY - radius && y <= desiredY + radius;\r\n\r\n\t\t\treturn hovering2;\r\n\t\t}\r\n\t}\r\n\tdrawOnCanvas(ctx, moreProps) {\r\n\t\tconst {\r\n\t\t\tyAccessor,\r\n\t\t\tstroke,\r\n\t\t\tstrokeOpacity,\r\n\t\t\tstrokeWidth,\r\n\t\t\thoverStrokeWidth,\r\n\t\t\tdefined,\r\n\t\t\tstrokeDasharray,\r\n\t\t\tinterpolation,\r\n\t\t\tcanvasClip,\r\n\t\t} = this.props;\r\n\r\n\t\tconst { connectNulls } = this.props;\r\n\r\n\t\tconst { xAccessor } = moreProps;\r\n\t\tconst { xScale, chartConfig: { yScale }, plotData, hovering } = moreProps;\r\n\r\n\t\tif (canvasClip) {\r\n\t\t\tctx.save();\r\n\t\t\tcanvasClip(ctx, moreProps);\r\n\t\t}\r\n\r\n\t\tctx.lineWidth = hovering ? hoverStrokeWidth : strokeWidth;\r\n\r\n\t\tctx.strokeStyle = hexToRGBA(stroke, strokeOpacity);\r\n\t\tctx.setLineDash(getStrokeDasharray(strokeDasharray).split(\",\"));\r\n\r\n\t\tconst dataSeries = d3Line()\r\n\t\t\t.x(d => Math.round(xScale(xAccessor(d))))\r\n\t\t\t.y(d => Math.round(yScale(yAccessor(d))));\r\n\r\n\t\tif (isDefined(interpolation)) {\r\n\t\t\tdataSeries.curve(interpolation);\r\n\t\t}\r\n\t\tif (!connectNulls) {\r\n\t\t\tdataSeries.defined(d => defined(yAccessor(d)));\r\n\t\t}\r\n\r\n\t\tctx.beginPath();\r\n\t\tdataSeries.context(ctx)(plotData);\r\n\t\tctx.stroke();\r\n\r\n\t\tif (canvasClip) {\r\n\t\t\tctx.restore();\r\n\t\t}\r\n\t}\r\n\trenderSVG(moreProps) {\r\n\t\tconst { yAccessor, stroke, strokeOpacity, strokeWidth, hoverStrokeWidth, defined, strokeDasharray } = this.props;\r\n\t\tconst { connectNulls } = this.props;\r\n\t\tconst { interpolation, style } = this.props;\r\n\t\tconst { xAccessor, chartConfig } = moreProps;\r\n\r\n\t\tconst { xScale, plotData, hovering } = moreProps;\r\n\r\n\t\tconst { yScale } = chartConfig;\r\n\t\tconst dataSeries = d3Line()\r\n\t\t\t.x(d => Math.round(xScale(xAccessor(d))))\r\n\t\t\t.y(d => Math.round(yScale(yAccessor(d))));\r\n\r\n\t\tif (isDefined(interpolation)) {\r\n\t\t\tdataSeries.curve(interpolation);\r\n\t\t}\r\n\t\tif (!connectNulls) {\r\n\t\t\tdataSeries.defined(d => defined(yAccessor(d)));\r\n\t\t}\r\n\t\tconst d = dataSeries(plotData);\r\n\r\n\t\tconst { fill, className } = this.props;\r\n\r\n\t\treturn (\r\n\t\t\t\r\n\t\t);\r\n\t}\r\n\trender() {\r\n\t\tconst { highlightOnHover, onHover, onUnHover } = this.props;\r\n\t\tconst hoverProps = (highlightOnHover || onHover || onUnHover)\r\n\t\t\t? {\r\n\t\t\t\tisHover: this.isHover,\r\n\t\t\t\tdrawOn: [\"mousemove\", \"pan\"],\r\n\t\t\t\tcanvasToDraw: getMouseCanvas\r\n\t\t\t}\r\n\t\t\t: {\r\n\t\t\t\tdrawOn: [\"pan\"],\r\n\t\t\t\tcanvasToDraw: getAxisCanvas\r\n\t\t\t};\r\n\r\n\t\treturn ;\r\n\t}\r\n}\r\n\r\n/*\r\nfunction segment(points, ctx) {\r\n\tctx.beginPath();\r\n\r\n\tconst [x, y] = first(points);\r\n\tctx.moveTo(x, y);\r\n\tfor (let i = 1; i < points.length; i++) {\r\n\t\tconst [x1, y1] = points[i];\r\n\t\tctx.lineTo(x1, y1);\r\n\t}\r\n\r\n\tctx.stroke();\r\n}\r\n*/\r\n\r\nLineSeries.propTypes = {\r\n\tclassName: PropTypes.string,\r\n\tstrokeWidth: PropTypes.number,\r\n\tstrokeOpacity: PropTypes.number,\r\n\tstroke: PropTypes.string,\r\n\thoverStrokeWidth: PropTypes.number,\r\n\tfill: PropTypes.string,\r\n\tdefined: PropTypes.func,\r\n\thoverTolerance: PropTypes.number,\r\n\tstrokeDasharray: PropTypes.oneOf(strokeDashTypes),\r\n\thighlightOnHover: PropTypes.bool,\r\n\tonClick: PropTypes.func,\r\n\tonDoubleClick: PropTypes.func,\r\n\tonHover: PropTypes.func,\r\n\tonUnHover: PropTypes.func,\r\n\tonContextMenu: PropTypes.func,\r\n\tyAccessor: PropTypes.func,\r\n\tconnectNulls: PropTypes.bool,\r\n\tinterpolation: PropTypes.func,\r\n\tcanvasClip: PropTypes.func,\r\n\tstyle: PropTypes.object,\r\n};\r\n\r\nLineSeries.defaultProps = {\r\n\tclassName: \"line \",\r\n\tstrokeWidth: 1,\r\n\tstrokeOpacity: 1,\r\n\thoverStrokeWidth: 4,\r\n\tfill: \"none\",\r\n\tstroke: \"#4682B4\",\r\n\tstrokeDasharray: \"Solid\",\r\n\tdefined: d => !isNaN(d),\r\n\thoverTolerance: 6,\r\n\thighlightOnHover: false,\r\n\tconnectNulls: false,\r\n\tonClick: function(e) { console.log(\"Click\", e); },\r\n\tonDoubleClick: function(e) { console.log(\"Double Click\", e); },\r\n\tonContextMenu: function(e) { console.log(\"Right Click\", e); },\r\n};\r\n\r\nexport default LineSeries;\r\n","\r\n\r\nimport React, { Component } from \"react\";\r\nimport PropTypes from \"prop-types\";\r\nimport { area as d3Area } from \"d3-shape\";\r\n\r\nimport GenericChartComponent from \"../GenericChartComponent\";\r\nimport { getAxisCanvas } from \"../GenericComponent\";\r\n\r\nimport { hexToRGBA, isDefined, first, functor } from \"../utils\";\r\n\r\nclass AreaOnlySeries extends Component {\r\n\tconstructor(props) {\r\n\t\tsuper(props);\r\n\t\tthis.renderSVG = this.renderSVG.bind(this);\r\n\t\tthis.drawOnCanvas = this.drawOnCanvas.bind(this);\r\n\t}\r\n\tdrawOnCanvas(ctx, moreProps) {\r\n\t\tconst { yAccessor, defined, base, canvasGradient } = this.props;\r\n\t\tconst { fill, stroke, opacity, interpolation, canvasClip } = this.props;\r\n\r\n\t\tconst { xScale, chartConfig: { yScale }, plotData, xAccessor } = moreProps;\r\n\r\n\t\tif (canvasClip) {\r\n\t\t\tctx.save();\r\n\t\t\tcanvasClip(ctx, moreProps);\r\n\t\t}\r\n\r\n\t\tif (canvasGradient != null) {\r\n\t\t\tctx.fillStyle = canvasGradient(moreProps, ctx);\r\n\t\t} else {\r\n\t\t\tctx.fillStyle = hexToRGBA(fill, opacity);\r\n\t\t}\r\n\t\tctx.strokeStyle = stroke;\r\n\r\n\t\tctx.beginPath();\r\n\t\tconst newBase = functor(base);\r\n\t\tconst areaSeries = d3Area()\r\n\t\t\t.defined(d => defined(yAccessor(d)))\r\n\t\t\t.x((d) => Math.round(xScale(xAccessor(d))))\r\n\t\t\t.y0((d) => newBase(yScale, d, moreProps))\r\n\t\t\t.y1((d) => Math.round(yScale(yAccessor(d))))\r\n\t\t\t.context(ctx);\r\n\r\n\t\tif (isDefined(interpolation)) {\r\n\t\t\tareaSeries.curve(interpolation);\r\n\t\t}\r\n\t\tareaSeries(plotData);\r\n\t\tctx.fill();\r\n\r\n\t\tif (canvasClip) {\r\n\t\t\tctx.restore();\r\n\t\t}\r\n\t}\r\n\trenderSVG(moreProps) {\r\n\t\tconst { yAccessor, defined, base, style } = this.props;\r\n\t\tconst { stroke, fill, className, opacity, interpolation } = this.props;\r\n\r\n\t\tconst { xScale, chartConfig: { yScale }, plotData, xAccessor } = moreProps;\r\n\r\n\t\tconst newBase = functor(base);\r\n\t\tconst areaSeries = d3Area()\r\n\t\t\t.defined(d => defined(yAccessor(d)))\r\n\t\t\t.x((d) => Math.round(xScale(xAccessor(d))))\r\n\t\t\t.y0((d) => newBase(yScale, d, moreProps))\r\n\t\t\t.y1((d) => Math.round(yScale(yAccessor(d))));\r\n\r\n\t\tif (isDefined(interpolation)) {\r\n\t\t\tareaSeries.curve(interpolation);\r\n\t\t}\r\n\r\n\t\tconst d = areaSeries(plotData);\r\n\t\tconst newClassName = className.concat(isDefined(stroke) ? \"\" : \" line-stroke\");\r\n\t\treturn (\r\n\t\t\t\r\n\t\t);\r\n\t}\r\n\trender() {\r\n\t\treturn (\r\n\t\t\t\r\n\t\t);\r\n\t}\r\n}\r\n\r\nAreaOnlySeries.propTypes = {\r\n\tclassName: PropTypes.string,\r\n\tyAccessor: PropTypes.func.isRequired,\r\n\tstroke: PropTypes.string,\r\n\tfill: PropTypes.string,\r\n\topacity: PropTypes.number,\r\n\tdefined: PropTypes.func,\r\n\tbase: PropTypes.oneOfType([\r\n\t\tPropTypes.func, PropTypes.number\r\n\t]),\r\n\tinterpolation: PropTypes.func,\r\n\tcanvasClip: PropTypes.func,\r\n\tstyle: PropTypes.object,\r\n\tcanvasGradient: PropTypes.func,\r\n};\r\n\r\nAreaOnlySeries.defaultProps = {\r\n\tclassName: \"line \",\r\n\tfill: \"none\",\r\n\topacity: 1,\r\n\tdefined: d => !isNaN(d),\r\n\tbase: (yScale /* , d, moreProps */) => first(yScale.range()),\r\n};\r\n\r\nexport default AreaOnlySeries;\r\n","\r\nimport React from \"react\";\r\nimport PropTypes from \"prop-types\";\r\n\r\nimport LineSeries from \"./LineSeries\";\r\nimport AreaOnlySeries from \"./AreaOnlySeries\";\r\nimport { strokeDashTypes } from \"../utils\";\r\n\r\nfunction AreaSeries(props) {\r\n\tconst { yAccessor, baseAt } = props;\r\n\tconst {\r\n\t\tclassName,\r\n\t\topacity,\r\n\t\tstroke,\r\n\t\tstrokeWidth,\r\n\t\tstrokeOpacity,\r\n\t\tstrokeDasharray,\r\n\t\tcanvasGradient,\r\n\t\tfill,\r\n\t\tinterpolation,\r\n\t\tstyle,\r\n\t\tcanvasClip,\r\n\t} = props;\r\n\r\n\treturn (\r\n\t\t\r\n\t\t\t\r\n\t\t\t\r\n\t\t\r\n\t);\r\n}\r\n\r\nAreaSeries.propTypes = {\r\n\tstroke: PropTypes.string,\r\n\tstrokeWidth: PropTypes.number,\r\n\tcanvasGradient: PropTypes.func,\r\n\tfill: PropTypes.string.isRequired,\r\n\tstrokeOpacity: PropTypes.number.isRequired,\r\n\topacity: PropTypes.number.isRequired,\r\n\tclassName: PropTypes.string,\r\n\tyAccessor: PropTypes.func.isRequired,\r\n\tbaseAt: PropTypes.func,\r\n\tinterpolation: PropTypes.func,\r\n\tcanvasClip: PropTypes.func,\r\n\tstyle: PropTypes.object,\r\n\tstrokeDasharray: PropTypes.oneOf(strokeDashTypes),\r\n};\r\n\r\nAreaSeries.defaultProps = {\r\n\tstroke: \"#4682B4\",\r\n\tstrokeWidth: 1,\r\n\tstrokeOpacity: 1,\r\n\tstrokeDasharray: \"Solid\",\r\n\topacity: 0.5,\r\n\tfill: \"#4682B4\",\r\n\tclassName: \"react-stockcharts-area\",\r\n};\r\n\r\nexport default AreaSeries;\r\n","\r\nimport React, { Component } from \"react\";\r\nimport PropTypes from \"prop-types\";\r\n\r\nimport GenericChartComponent from \"../GenericChartComponent\";\r\n\r\nclass SVGComponent extends Component {\r\n\trender() {\r\n\t\tconst { children } = this.props;\r\n\t\treturn ;\r\n\t}\r\n}\r\n\r\nSVGComponent.propTypes = {\r\n\tchildren: PropTypes.func.isRequired,\r\n};\r\n\r\nexport default SVGComponent;\r\n","\r\nimport React, { Component } from \"react\";\r\nimport PropTypes from \"prop-types\";\r\n\r\nimport AreaSeries from \"./AreaSeries\";\r\nimport SVGComponent from \"./SVGComponent\";\r\nimport { strokeDashTypes } from \"../utils\";\r\n\r\nclass AlternatingFillAreaSeries extends Component {\r\n\tconstructor(props) {\r\n\t\tsuper(props);\r\n\t\tthis.renderClip = this.renderClip.bind(this);\r\n\t\tthis.topClip = this.topClip.bind(this);\r\n\t\tthis.bottomClip = this.bottomClip.bind(this);\r\n\t\tthis.baseAt = this.baseAt.bind(this);\r\n\r\n\t\tconst id1 = String(Math.round(Math.random() * 10000 * 10000));\r\n\t\tthis.clipPathId1 = `alternating-area-clip-${id1}`;\r\n\r\n\t\tconst id2 = String(Math.round(Math.random() * 10000 * 10000));\r\n\t\tthis.clipPathId2 = `alternating-area-clip-${id2}`;\r\n\t}\r\n\ttopClip(ctx, moreProps) {\r\n\t\tconst { chartConfig } = moreProps;\r\n\t\tconst { baseAt } = this.props;\r\n\t\tconst { yScale, width } = chartConfig;\r\n\r\n\t\tctx.beginPath();\r\n\t\tctx.rect(\r\n\t\t\t0,\r\n\t\t\t0,\r\n\t\t\twidth,\r\n\t\t\tyScale(baseAt)\r\n\t\t);\r\n\t\tctx.clip();\r\n\t}\r\n\tbottomClip(ctx, moreProps) {\r\n\t\tconst { chartConfig } = moreProps;\r\n\t\tconst { baseAt } = this.props;\r\n\t\tconst { yScale, width, height } = chartConfig;\r\n\r\n\t\tctx.beginPath();\r\n\t\tctx.rect(\r\n\t\t\t0,\r\n\t\t\tyScale(baseAt),\r\n\t\t\twidth,\r\n\t\t\theight - yScale(baseAt)\r\n\t\t);\r\n\t\tctx.clip();\r\n\t}\r\n\trenderClip(moreProps) {\r\n\t\tconst { chartConfig } = moreProps;\r\n\t\tconst { baseAt } = this.props;\r\n\t\tconst { yScale, width, height } = chartConfig;\r\n\r\n\t\treturn (\r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\r\n\t\t);\r\n\t}\r\n\tbaseAt(yScale) {\r\n\t\treturn yScale(this.props.baseAt);\r\n\t}\r\n\trender() {\r\n\t\tconst { className, yAccessor, interpolation } = this.props;\r\n\t\tconst {\r\n\t\t\tstroke,\r\n\t\t\tstrokeWidth,\r\n\t\t\tstrokeOpacity,\r\n\t\t\tstrokeDasharray,\r\n\r\n\t\t\tfill,\r\n\t\t\tfillOpacity,\r\n\t\t} = this.props;\r\n\r\n\t\tconst style1 = { \"clipPath\": `url(#${this.clipPathId1})` };\r\n\t\tconst style2 = { \"clipPath\": `url(#${this.clipPathId2})` };\r\n\r\n\t\treturn (\r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t{this.renderClip}\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\r\n\t\t);\r\n\t}\r\n}\r\n\r\nAlternatingFillAreaSeries.propTypes = {\r\n\tstroke: PropTypes.shape({\r\n\t\ttop: PropTypes.string,\r\n\t\tbottom: PropTypes.string,\r\n\t}),\r\n\r\n\tstrokeWidth: PropTypes.shape({\r\n\t\ttop: PropTypes.number,\r\n\t\tbottom: PropTypes.number,\r\n\t}),\r\n\tstrokeOpacity: PropTypes.shape({\r\n\t\ttop: PropTypes.number,\r\n\t\tbottom: PropTypes.number,\r\n\t}),\r\n\tfill: PropTypes.shape({\r\n\t\ttop: PropTypes.string,\r\n\t\tbottom: PropTypes.string,\r\n\t}),\r\n\tfillOpacity: PropTypes.shape({\r\n\t\ttop: PropTypes.number,\r\n\t\tbottom: PropTypes.number,\r\n\t}),\r\n\tstrokeDasharray: PropTypes.shape({\r\n\t\ttop: PropTypes.oneOf(strokeDashTypes),\r\n\t\tbottom: PropTypes.oneOf(strokeDashTypes),\r\n\t}).isRequired,\r\n\r\n\tclassName: PropTypes.string,\r\n\tyAccessor: PropTypes.func.isRequired,\r\n\r\n\tbaseAt: PropTypes.number.isRequired,\r\n\r\n\tinterpolation: PropTypes.func,\r\n};\r\n\r\nAlternatingFillAreaSeries.defaultProps = {\r\n\tstroke: {\r\n\t\ttop: \"#38C172\",\r\n\t\tbottom: \"#E3342F\"\r\n\t},\r\n\tstrokeWidth: {\r\n\t\ttop: 2,\r\n\t\tbottom: 2,\r\n\t},\r\n\tstrokeOpacity: {\r\n\t\ttop: 1,\r\n\t\tbottom: 1,\r\n\t},\r\n\tfill: {\r\n\t\ttop: \"#A2F5BF\",\r\n\t\tbottom: \"#EF5753\",\r\n\t},\r\n\tfillOpacity: {\r\n\t\ttop: 0.5,\r\n\t\tbottom: 0.5,\r\n\t},\r\n\tstrokeDasharray: {\r\n\t\ttop: \"Solid\",\r\n\t\tbottom: \"Solid\",\r\n\t},\r\n\tclassName: \"react-stockcharts-alternating-area\",\r\n};\r\n\r\nexport default AlternatingFillAreaSeries;\r\n","\r\n\r\nimport React, { Component } from \"react\";\r\nimport PropTypes from \"prop-types\";\r\nimport { nest as d3Nest } from \"d3-collection\";\r\n\r\nimport GenericChartComponent from \"../GenericChartComponent\";\r\nimport { getAxisCanvas } from \"../GenericComponent\";\r\n\r\nimport { hexToRGBA, functor } from \"../utils\";\r\n\r\nclass ScatterSeries extends Component {\r\n\tconstructor(props) {\r\n\t\tsuper(props);\r\n\t\tthis.renderSVG = this.renderSVG.bind(this);\r\n\t\tthis.drawOnCanvas = this.drawOnCanvas.bind(this);\r\n\t}\r\n\tdrawOnCanvas(ctx, moreProps) {\r\n\t\tconst { xAccessor } = moreProps;\r\n\r\n\t\tconst points = helper(this.props, moreProps, xAccessor);\r\n\r\n\t\tdrawOnCanvas(ctx, this.props, points);\r\n\t}\r\n\trenderSVG(moreProps) {\r\n\t\tconst { className, markerProps } = this.props;\r\n\t\tconst { xAccessor } = moreProps;\r\n\r\n\t\tconst points = helper(this.props, moreProps, xAccessor);\r\n\r\n\t\treturn \r\n\t\t\t{points.map((point, idx) => {\r\n\t\t\t\tconst { marker: Marker } = point;\r\n\t\t\t\treturn ;\r\n\t\t\t})}\r\n\t\t;\r\n\t}\r\n\trender() {\r\n\t\treturn ;\r\n\t}\r\n}\r\n\r\nScatterSeries.propTypes = {\r\n\tclassName: PropTypes.string,\r\n\tyAccessor: PropTypes.func.isRequired,\r\n\tmarker: PropTypes.func,\r\n\tmarkerProvider: PropTypes.func,\r\n\tmarkerProps: PropTypes.object,\r\n};\r\n\r\nScatterSeries.defaultProps = {\r\n\tclassName: \"react-stockcharts-scatter\",\r\n};\r\n\r\nfunction helper(props, moreProps, xAccessor) {\r\n\tconst { yAccessor, markerProvider, markerProps } = props;\r\n\tlet { marker: Marker } = props;\r\n\tconst { xScale, chartConfig: { yScale }, plotData } = moreProps;\r\n\r\n\tif (!(markerProvider || Marker)) throw new Error(\"required prop, either marker or markerProvider missing\");\r\n\r\n\treturn plotData.map(d => {\r\n\r\n\t\tif (markerProvider) Marker = markerProvider(d);\r\n\r\n\t\tconst mProps = { ...Marker.defaultProps, ...markerProps };\r\n\r\n\t\tconst fill = functor(mProps.fill);\r\n\t\tconst stroke = functor(mProps.stroke);\r\n\r\n\t\treturn {\r\n\t\t\tx: xScale(xAccessor(d)),\r\n\t\t\ty: yScale(yAccessor(d)),\r\n\t\t\tfill: hexToRGBA(fill(d), mProps.opacity),\r\n\t\t\tstroke: stroke(d),\r\n\t\t\tdatum: d,\r\n\t\t\tmarker: Marker,\r\n\t\t};\r\n\t});\r\n}\r\n\r\nfunction drawOnCanvas(ctx, props, points) {\r\n\r\n\tconst { markerProps } = props;\r\n\r\n\tconst nest = d3Nest()\r\n\t\t.key(d => d.fill)\r\n\t\t.key(d => d.stroke)\r\n\t\t.entries(points);\r\n\r\n\tnest.forEach(fillGroup => {\r\n\t\tconst { key: fillKey, values: fillValues } = fillGroup;\r\n\r\n\t\tif (fillKey !== \"none\") {\r\n\t\t\tctx.fillStyle = fillKey;\r\n\t\t}\r\n\r\n\t\tfillValues.forEach(strokeGroup => {\r\n\t\t\t// var { key: strokeKey, values: strokeValues } = strokeGroup;\r\n\t\t\tconst { values: strokeValues } = strokeGroup;\r\n\r\n\t\t\tstrokeValues.forEach(point => {\r\n\t\t\t\tconst { marker } = point;\r\n\t\t\t\tmarker.drawOnCanvas({ ...marker.defaultProps, ...markerProps, fill: fillKey }, point, ctx);\r\n\t\t\t});\r\n\t\t});\r\n\t});\r\n}\r\n\r\nexport default ScatterSeries;\r\n","\r\nimport React from \"react\";\r\nimport PropTypes from \"prop-types\";\r\n\r\nimport { hexToRGBA, functor } from \"../utils\";\r\n\r\nfunction Circle(props) {\r\n\tconst { className, stroke, strokeWidth, opacity, fill, point, r } = props;\r\n\tconst radius = functor(r)(point.datum);\r\n\treturn (\r\n\t\t\r\n\t);\r\n}\r\n\r\nCircle.propTypes = {\r\n\tstroke: PropTypes.string,\r\n\tfill: PropTypes.string.isRequired,\r\n\topacity: PropTypes.number.isRequired,\r\n\tpoint: PropTypes.shape({\r\n\t\tx: PropTypes.number.isRequired,\r\n\t\ty: PropTypes.number.isRequired,\r\n\t\tdatum: PropTypes.object.isRequired,\r\n\t}).isRequired,\r\n\tclassName: PropTypes.string,\r\n\tstrokeWidth: PropTypes.number,\r\n\tr: PropTypes.oneOfType([\r\n\t\tPropTypes.number,\r\n\t\tPropTypes.func\r\n\t]).isRequired\r\n};\r\n\r\nCircle.defaultProps = {\r\n\tstroke: \"#4682B4\",\r\n\tstrokeWidth: 1,\r\n\topacity: 0.5,\r\n\tfill: \"#4682B4\",\r\n\tclassName: \"react-stockcharts-marker-circle\",\r\n};\r\n\r\nCircle.drawOnCanvas = (props, point, ctx) => {\r\n\r\n\tconst { stroke, fill, opacity, strokeWidth } = props;\r\n\r\n\tctx.strokeStyle = stroke;\r\n\tctx.lineWidth = strokeWidth;\r\n\r\n\tif (fill !== \"none\") {\r\n\t\tctx.fillStyle = hexToRGBA(fill, opacity);\r\n\t}\r\n\r\n\tCircle.drawOnCanvasWithNoStateChange(props, point, ctx);\r\n};\r\n\r\n\r\nCircle.drawOnCanvasWithNoStateChange = (props, point, ctx) => {\r\n\r\n\tconst { r } = props;\r\n\tconst radius = functor(r)(point.datum);\r\n\r\n\tctx.moveTo(point.x, point.y);\r\n\tctx.beginPath();\r\n\tctx.arc(point.x, point.y, radius, 0, 2 * Math.PI, false);\r\n\tctx.stroke();\r\n\tctx.fill();\r\n};\r\n\r\nexport default Circle;\r\n","import React from \"react\";\r\nimport PropTypes from \"prop-types\";\r\nimport { hexToRGBA, functor } from \"../utils\";\r\n\r\nfunction Triangle(props) {\r\n\r\n\tconst {\r\n\t\tclassName, strokeWidth,\r\n\t\topacity, point, width\r\n\t} = props;\r\n\r\n\tconst rotation = getRotationInDegrees(props, point);\r\n\tif (rotation == null) return null;\r\n\r\n\tconst fillColor = getFillColor(props);\r\n\tconst strokeColor = getStrokeColor(props);\r\n\r\n\tconst w = functor(width)(point.datum);\r\n\tconst { x, y } = point;\r\n\tconst { innerOpposite, innerHypotenuse } = getTrianglePoints(w);\r\n\tconst points = `\r\n\t\t${x} ${y - innerHypotenuse},\r\n\t\t${x + (w / 2)} ${y + innerOpposite},\r\n\t\t${x - (w / 2)} ${y + innerOpposite}\r\n\t`;\r\n\r\n\treturn (\r\n\t\t\r\n\t);\r\n}\r\nTriangle.propTypes = {\r\n\tdirection: PropTypes.oneOfType( [\r\n\t\tPropTypes.oneOf( [\r\n\t\t\t\"top\",\r\n\t\t\t\"bottom\",\r\n\t\t\t\"left\",\r\n\t\t\t\"right\",\r\n\t\t\t\"hide\"] ),\r\n\t\tPropTypes.func\r\n\t] ).isRequired,\r\n\tstroke: PropTypes.oneOfType( [\r\n\t\tPropTypes.string,\r\n\t\tPropTypes.func\r\n\t] ).isRequired,\r\n\tfill: PropTypes.oneOfType( [\r\n\t\tPropTypes.string,\r\n\t\tPropTypes.func\r\n\t] ).isRequired,\r\n\topacity: PropTypes.number.isRequired,\r\n\tpoint: PropTypes.shape({\r\n\t\tx: PropTypes.number.isRequired,\r\n\t\ty: PropTypes.number.isRequired,\r\n\t\tdatum: PropTypes.object.isRequired,\r\n\t}).isRequired,\r\n\tclassName: PropTypes.string,\r\n\tstrokeWidth: PropTypes.number,\r\n\twidth: PropTypes.oneOfType([\r\n\t\tPropTypes.number,\r\n\t\tPropTypes.func\r\n\t]).isRequired\r\n};\r\nTriangle.defaultProps = {\r\n\tdirection: \"top\",\r\n\tstroke: \"#4682B4\",\r\n\tstrokeWidth: 1,\r\n\topacity: 0.5,\r\n\tfill: \"#4682B4\",\r\n\tclassName: \"react-stockcharts-marker-triangle\",\r\n};\r\nTriangle.drawOnCanvas = (props, point, ctx) => {\r\n\tconst { stroke, fill, opacity, strokeWidth } = props;\r\n\tctx.strokeStyle = stroke;\r\n\tctx.lineWidth = strokeWidth;\r\n\tif (fill !== \"none\") {\r\n\t\tctx.fillStyle = hexToRGBA(fill, opacity);\r\n\t}\r\n\tTriangle.drawOnCanvasWithNoStateChange(props, point, ctx);\r\n};\r\nTriangle.drawOnCanvasWithNoStateChange = (props, point, ctx) => {\r\n\r\n\tconst { width } = props;\r\n\tconst w = functor(width)(point.datum);\r\n\tconst { x, y } = point;\r\n\tconst { innerOpposite, innerHypotenuse } = getTrianglePoints(w);\r\n\tconst rotationDeg = getRotationInDegrees(props, point);\r\n\r\n\tctx.beginPath();\r\n\tctx.moveTo(x, y - innerHypotenuse);\r\n\tctx.lineTo(x + (w / 2), y + innerOpposite);\r\n\tctx.lineTo(x - (w / 2), y + innerOpposite);\r\n\tctx.stroke();\r\n\r\n\t// TODO: rotation does not work\r\n\t// example: https://gist.github.com/geoffb/6392450\r\n\tif ( rotationDeg !== null && rotationDeg !== 0 ) {\r\n\t\tctx.save();\r\n\t\tctx.translate(x, y);\r\n\t\tctx.rotate(rotationDeg * Math.PI / 180); // 45 degrees\r\n\t\tctx.fill();\r\n\t\tctx.restore();\r\n\t}\r\n\tctx.fill();\r\n};\r\nexport default Triangle;\r\n\r\nfunction getTrianglePoints(width) {\r\n\tconst innerHypotenuse = (width / 2) * (1 / Math.cos(30 * Math.PI / 180));\r\n\tconst innerOpposite = (width / 2) * (1 / Math.tan(60 * Math.PI / 180));\r\n\treturn {\r\n\t\tinnerOpposite,\r\n\t\tinnerHypotenuse\r\n\t};\r\n}\r\n\r\nfunction getFillColor( props ) {\r\n\tconst { fill, point } = props;\r\n\treturn fill instanceof Function ? fill( point.datum ) : fill;\r\n}\r\n\r\nfunction getStrokeColor( props ) {\r\n\tconst { stroke, point } = props;\r\n\treturn stroke instanceof Function ? stroke( point.datum ) : stroke;\r\n}\r\n\r\nfunction getRotationInDegrees( props, point ) {\r\n\tconst { direction } = props;\r\n\tconst directionVal = direction instanceof Function ? direction( point.datum ) : direction;\r\n\tif ( directionVal === \"hide\" ) return null;\r\n\r\n\tlet rotate = 0;\r\n\tswitch ( directionVal ) {\r\n\t\tcase \"bottom\":\r\n\t\t\trotate = 180;\r\n\t\t\tbreak;\r\n\t\tcase \"left\":\r\n\t\t\trotate = -90;\r\n\t\t\tbreak;\r\n\t\tcase \"right\":\r\n\t\t\trotate = 90;\r\n\t\t\tbreak;\r\n\t}\r\n\treturn rotate;\r\n}\r\n","\r\nimport React from \"react\";\r\nimport PropTypes from \"prop-types\";\r\nimport { hexToRGBA, functor } from \"../utils\";\r\n\r\nfunction Square(props) {\r\n\tconst {\r\n\t\tclassName, stroke, strokeWidth,\r\n\t\topacity, fill, point, width\r\n\t} = props;\r\n\tconst w = functor(width)(point.datum);\r\n\tconst x = point.x - (w / 2);\r\n\tconst y = point.y - (w / 2);\r\n\treturn (\r\n\t\t\r\n\t);\r\n}\r\nSquare.propTypes = {\r\n\tstroke: PropTypes.string,\r\n\tfill: PropTypes.string.isRequired,\r\n\topacity: PropTypes.number.isRequired,\r\n\tpoint: PropTypes.shape({\r\n\t\tx: PropTypes.number.isRequired,\r\n\t\ty: PropTypes.number.isRequired,\r\n\t\tdatum: PropTypes.object.isRequired,\r\n\t}).isRequired,\r\n\tclassName: PropTypes.string,\r\n\tstrokeWidth: PropTypes.number,\r\n\twidth: PropTypes.oneOfType([\r\n\t\tPropTypes.number,\r\n\t\tPropTypes.func\r\n\t]).isRequired\r\n};\r\nSquare.defaultProps = {\r\n\tstroke: \"#4682B4\",\r\n\tstrokeWidth: 1,\r\n\topacity: 0.5,\r\n\tfill: \"#4682B4\",\r\n\tclassName: \"react-stockcharts-marker-rect\",\r\n};\r\nSquare.drawOnCanvas = (props, point, ctx) => {\r\n\tconst { stroke, fill, opacity, strokeWidth } = props;\r\n\tctx.strokeStyle = stroke;\r\n\tctx.lineWidth = strokeWidth;\r\n\tif (fill !== \"none\") {\r\n\t\tctx.fillStyle = hexToRGBA(fill, opacity);\r\n\t}\r\n\tSquare.drawOnCanvasWithNoStateChange(props, point, ctx);\r\n};\r\nSquare.drawOnCanvasWithNoStateChange = (props, point, ctx) => {\r\n\tconst { width } = props;\r\n\tconst w = functor(width)(point.datum);\r\n\tconst x = point.x - (w / 2);\r\n\tconst y = point.y - (w / 2);\r\n\tctx.beginPath();\r\n\tctx.rect(x, y, w, w);\r\n\tctx.stroke();\r\n\tctx.fill();\r\n};\r\nexport default Square;\r\n","\r\n\r\nimport { nest } from \"d3-collection\";\r\n\r\nimport React, { Component } from \"react\";\r\nimport PropTypes from \"prop-types\";\r\n\r\nimport GenericChartComponent from \"../GenericChartComponent\";\r\nimport { getAxisCanvas } from \"../GenericComponent\";\r\n\r\nimport {\r\n\thexToRGBA, isDefined, functor, plotDataLengthBarWidth, head\r\n} from \"../utils\";\r\n\r\nclass CandlestickSeries extends Component {\r\n\tconstructor(props) {\r\n\t\tsuper(props);\r\n\t\tthis.renderSVG = this.renderSVG.bind(this);\r\n\t\tthis.drawOnCanvas = this.drawOnCanvas.bind(this);\r\n\t}\r\n\tdrawOnCanvas(ctx, moreProps) {\r\n\t\tdrawOnCanvas(ctx, this.props, moreProps);\r\n\t}\r\n\trenderSVG(moreProps) {\r\n\t\tconst { className, wickClassName, candleClassName } = this.props;\r\n\t\tconst { xScale, chartConfig: { yScale }, plotData, xAccessor } = moreProps;\r\n\r\n\t\tconst candleData = getCandleData(this.props, xAccessor, xScale, yScale, plotData);\r\n\r\n\t\treturn \r\n\t\t\t\r\n\t\t\t\t{getWicksSVG(candleData)}\r\n\t\t\t\r\n\t\t\t\r\n\t\t\t\t{getCandlesSVG(this.props, candleData)}\r\n\t\t\t\r\n\t\t;\r\n\t}\r\n\r\n\trender() {\r\n\t\tconst { clip } = this.props;\r\n\t\treturn ;\r\n\t}\r\n}\r\n\r\nCandlestickSeries.propTypes = {\r\n\tclassName: PropTypes.string,\r\n\twickClassName: PropTypes.string,\r\n\tcandleClassName: PropTypes.string,\r\n\twidthRatio: PropTypes.number,\r\n\twidth: PropTypes.oneOfType([\r\n\t\tPropTypes.number,\r\n\t\tPropTypes.func\r\n\t]),\r\n\tclassNames: PropTypes.oneOfType([\r\n\t\tPropTypes.func,\r\n\t\tPropTypes.string\r\n\t]),\r\n\tfill: PropTypes.oneOfType([\r\n\t\tPropTypes.func,\r\n\t\tPropTypes.string\r\n\t]),\r\n\tstroke: PropTypes.oneOfType([\r\n\t\tPropTypes.func,\r\n\t\tPropTypes.string\r\n\t]),\r\n\twickStroke: PropTypes.oneOfType([\r\n\t\tPropTypes.func,\r\n\t\tPropTypes.string\r\n\t]),\r\n\tyAccessor: PropTypes.func,\r\n\tclip: PropTypes.bool,\r\n};\r\n\r\nCandlestickSeries.defaultProps = {\r\n\tclassName: \"react-stockcharts-candlestick\",\r\n\twickClassName: \"react-stockcharts-candlestick-wick\",\r\n\tcandleClassName: \"react-stockcharts-candlestick-candle\",\r\n\tyAccessor: d => ({ open: d.open, high: d.high, low: d.low, close: d.close }),\r\n\tclassNames: d => d.close > d.open ? \"up\" : \"down\",\r\n\twidth: plotDataLengthBarWidth,\r\n\twickStroke: \"#000000\",\r\n\t// wickStroke: d => d.close > d.open ? \"#6BA583\" : \"#FF0000\",\r\n\tfill: d => d.close > d.open ? \"#6BA583\" : \"#FF0000\",\r\n\t// stroke: d => d.close > d.open ? \"#6BA583\" : \"#FF0000\",\r\n\tstroke: \"#000000\",\r\n\tcandleStrokeWidth: 0.5,\r\n\t// stroke: \"none\",\r\n\twidthRatio: 0.8,\r\n\topacity: 0.5,\r\n\tclip: true,\r\n};\r\n\r\nfunction getWicksSVG(candleData) {\r\n\r\n\tconst wicks = candleData\r\n\t\t.map((each, idx) => {\r\n\t\t\tconst d = each.wick;\r\n\t\t\treturn ;\r\n\t\t});\r\n\r\n\treturn wicks;\r\n}\r\n\r\nfunction getCandlesSVG(props, candleData) {\r\n\r\n\t/* eslint-disable react/prop-types */\r\n\tconst { opacity, candleStrokeWidth } = props;\r\n\t/* eslint-enable react/prop-types */\r\n\r\n\tconst candles = candleData.map((d, idx) => {\r\n\t\tif (d.width <= 1)\r\n\t\t\treturn (\r\n\t\t\t\t\r\n\t\t\t);\r\n\t\telse if (d.height === 0)\r\n\t\t\treturn (\r\n\t\t\t\t\r\n\t\t\t);\r\n\t\treturn (\r\n\t\t\t\r\n\t\t);\r\n\t});\r\n\treturn candles;\r\n}\r\n\r\nfunction drawOnCanvas(ctx, props, moreProps) {\r\n\tconst { opacity, candleStrokeWidth } = props;\r\n\tconst { xScale, chartConfig: { yScale }, plotData, xAccessor } = moreProps;\r\n\r\n\t// const wickData = getWickData(props, xAccessor, xScale, yScale, plotData);\r\n\tconst candleData = getCandleData(props, xAccessor, xScale, yScale, plotData);\r\n\r\n\tconst wickNest = nest()\r\n\t\t.key(d => d.wick.stroke)\r\n\t\t.entries(candleData);\r\n\r\n\twickNest.forEach(outer => {\r\n\t\tconst { key, values } = outer;\r\n\t\tctx.strokeStyle = key;\r\n\t\tctx.fillStyle = key;\r\n\t\tvalues.forEach(each => {\r\n\t\t\t/*\r\n\t\t\tctx.moveTo(d.x, d.y1);\r\n\t\t\tctx.lineTo(d.x, d.y2);\r\n\r\n\t\t\tctx.beginPath();\r\n\t\t\tctx.moveTo(d.x, d.y3);\r\n\t\t\tctx.lineTo(d.x, d.y4);\r\n\t\t\tctx.stroke(); */\r\n\t\t\tconst d = each.wick;\r\n\r\n\t\t\tctx.fillRect(d.x - 0.5, d.y1, 1, d.y2 - d.y1);\r\n\t\t\tctx.fillRect(d.x - 0.5, d.y3, 1, d.y4 - d.y3);\r\n\t\t});\r\n\t});\r\n\r\n\t// const candleData = getCandleData(props, xAccessor, xScale, yScale, plotData);\r\n\r\n\tconst candleNest = nest()\r\n\t\t.key(d => d.stroke)\r\n\t\t.key(d => d.fill)\r\n\t\t.entries(candleData);\r\n\r\n\r\n\tcandleNest.forEach(outer => {\r\n\t\tconst { key: strokeKey, values: strokeValues } = outer;\r\n\t\tif (strokeKey !== \"none\") {\r\n\t\t\tctx.strokeStyle = strokeKey;\r\n\t\t\tctx.lineWidth = candleStrokeWidth;\r\n\t\t}\r\n\t\tstrokeValues.forEach(inner => {\r\n\t\t\tconst { key, values } = inner;\r\n\t\t\tconst fillStyle = head(values).width <= 1\r\n\t\t\t\t? key\r\n\t\t\t\t: hexToRGBA(key, opacity);\r\n\t\t\tctx.fillStyle = fillStyle;\r\n\r\n\t\t\tvalues.forEach(d => {\r\n\t\t\t\tif (d.width <= 1) {\r\n\t\t\t\t\t// \r\n\t\t\t\t\t/*\r\n\t\t\t\t\tctx.beginPath();\r\n\t\t\t\t\tctx.moveTo(d.x, d.y);\r\n\t\t\t\t\tctx.lineTo(d.x, d.y + d.height);\r\n\t\t\t\t\tctx.stroke();\r\n\t\t\t\t\t*/\r\n\t\t\t\t\tctx.fillRect(d.x - 0.5, d.y, 1, d.height);\r\n\t\t\t\t} else if (d.height === 0) {\r\n\t\t\t\t\t// \r\n\t\t\t\t\t/*\r\n\t\t\t\t\tctx.beginPath();\r\n\t\t\t\t\tctx.moveTo(d.x, d.y);\r\n\t\t\t\t\tctx.lineTo(d.x + d.width, d.y + d.height);\r\n\t\t\t\t\tctx.stroke();\r\n\t\t\t\t\t*/\r\n\t\t\t\t\tctx.fillRect(d.x, d.y - 0.5, d.width, 1);\r\n\t\t\t\t} else {\r\n\t\t\t\t\t/*\r\n\t\t\t\t\tctx.beginPath();\r\n\t\t\t\t\tctx.rect(d.x, d.y, d.width, d.height);\r\n\t\t\t\t\tctx.closePath();\r\n\t\t\t\t\tctx.fill();\r\n\t\t\t\t\tif (strokeKey !== \"none\") ctx.stroke();\r\n\t\t\t\t\t*/\r\n\t\t\t\t\tctx.fillRect(d.x, d.y, d.width, d.height);\r\n\t\t\t\t\tif (strokeKey !== \"none\") ctx.strokeRect(d.x, d.y, d.width, d.height);\r\n\t\t\t\t}\r\n\t\t\t});\r\n\t\t});\r\n\t});\r\n}\r\n/*\r\nfunction getWickData(props, xAccessor, xScale, yScale, plotData) {\r\n\r\n\tconst { classNames: classNameProp, wickStroke: wickStrokeProp, yAccessor } = props;\r\n\tconst wickStroke = functor(wickStrokeProp);\r\n\tconst className = functor(classNameProp);\r\n\tconst wickData = plotData\r\n\t\t\t.filter(d => isDefined(yAccessor(d).close))\r\n\t\t\t.map(d => {\r\n\t\t\t\t// console.log(yAccessor);\r\n\t\t\t\tconst ohlc = yAccessor(d);\r\n\r\n\t\t\t\tconst x = Math.round(xScale(xAccessor(d))),\r\n\t\t\t\t\ty1 = yScale(ohlc.high),\r\n\t\t\t\t\ty2 = yScale(Math.max(ohlc.open, ohlc.close)),\r\n\t\t\t\t\ty3 = yScale(Math.min(ohlc.open, ohlc.close)),\r\n\t\t\t\t\ty4 = yScale(ohlc.low);\r\n\r\n\t\t\t\treturn {\r\n\t\t\t\t\tx,\r\n\t\t\t\t\ty1,\r\n\t\t\t\t\ty2,\r\n\t\t\t\t\ty3,\r\n\t\t\t\t\ty4,\r\n\t\t\t\t\tclassName: className(ohlc),\r\n\t\t\t\t\tdirection: (ohlc.close - ohlc.open),\r\n\t\t\t\t\tstroke: wickStroke(ohlc),\r\n\t\t\t\t};\r\n\t\t\t});\r\n\treturn wickData;\r\n}\r\n*/\r\n\r\nfunction getCandleData(props, xAccessor, xScale, yScale, plotData) {\r\n\r\n\tconst { wickStroke: wickStrokeProp } = props;\r\n\tconst wickStroke = functor(wickStrokeProp);\r\n\r\n\tconst { classNames, fill: fillProp, stroke: strokeProp, yAccessor } = props;\r\n\tconst className = functor(classNames);\r\n\r\n\tconst fill = functor(fillProp);\r\n\tconst stroke = functor(strokeProp);\r\n\r\n\tconst widthFunctor = functor(props.width);\r\n\tconst width = widthFunctor(props, {\r\n\t\txScale,\r\n\t\txAccessor,\r\n\t\tplotData\r\n\t});\r\n\r\n\t/*\r\n\tconst candleWidth = Math.round(width);\r\n\tconst offset = Math.round(candleWidth === 1 ? 0 : 0.5 * width);\r\n\t*/\r\n\tconst trueOffset = 0.5 * width;\r\n\tconst offset = trueOffset > 0.7\r\n\t\t? Math.round(trueOffset)\r\n\t\t: Math.floor(trueOffset);\r\n\r\n\t// eslint-disable-next-line prefer-const\r\n\tlet candles = [];\r\n\r\n\tfor (let i = 0; i < plotData.length; i++) {\r\n\t\tconst d = plotData[i];\r\n\t\tif (isDefined(yAccessor(d).close)) {\r\n\t\t\tconst x = Math.round(xScale(xAccessor(d)));\r\n\t\t\t// const x = Math.round(xScale(xAccessor(d)) - offset);\r\n\r\n\t\t\tconst ohlc = yAccessor(d);\r\n\t\t\tconst y = Math.round(yScale(Math.max(ohlc.open, ohlc.close)));\r\n\t\t\tconst height = Math.round(Math.abs(yScale(ohlc.open) - yScale(ohlc.close)));\r\n\r\n\t\t\tcandles.push({\r\n\t\t\t\t// type: \"line\"\r\n\t\t\t\tx: x - offset,\r\n\t\t\t\ty: y,\r\n\t\t\t\twick: {\r\n\t\t\t\t\tstroke: wickStroke(ohlc),\r\n\t\t\t\t\tx: x,\r\n\t\t\t\t\ty1: Math.round(yScale(ohlc.high)),\r\n\t\t\t\t\ty2: y,\r\n\t\t\t\t\ty3: y + height, // Math.round(yScale(Math.min(ohlc.open, ohlc.close))),\r\n\t\t\t\t\ty4: Math.round(yScale(ohlc.low)),\r\n\t\t\t\t},\r\n\t\t\t\theight: height,\r\n\t\t\t\twidth: offset * 2,\r\n\t\t\t\tclassName: className(ohlc),\r\n\t\t\t\tfill: fill(ohlc),\r\n\t\t\t\tstroke: stroke(ohlc),\r\n\t\t\t\tdirection: (ohlc.close - ohlc.open),\r\n\t\t\t});\r\n\t\t}\r\n\t}\r\n\r\n\treturn candles;\r\n}\r\n\r\nexport default CandlestickSeries;\r\n","\r\n\r\nimport { nest } from \"d3-collection\";\r\nimport React, { Component } from \"react\";\r\nimport PropTypes from \"prop-types\";\r\nimport GenericChartComponent from \"../GenericChartComponent\";\r\nimport { getAxisCanvas } from \"../GenericComponent\";\r\n\r\nimport { isDefined, functor } from \"../utils\";\r\n\r\nclass OHLCSeries extends Component {\r\n\tconstructor(props) {\r\n\t\tsuper(props);\r\n\t\tthis.renderSVG = this.renderSVG.bind(this);\r\n\t\tthis.drawOnCanvas = this.drawOnCanvas.bind(this);\r\n\t}\r\n\tdrawOnCanvas(ctx, moreProps) {\r\n\t\tconst { yAccessor } = this.props;\r\n\t\tconst { xAccessor } = moreProps;\r\n\t\tconst { xScale, chartConfig: { yScale }, plotData } = moreProps;\r\n\r\n\t\tconst barData = getOHLCBars(this.props, xAccessor, yAccessor, xScale, yScale, plotData);\r\n\t\tdrawOnCanvas(ctx, barData);\r\n\t}\r\n\trender() {\r\n\t\tconst { clip } = this.props;\r\n\r\n\t\treturn ;\r\n\t}\r\n\trenderSVG(moreProps) {\r\n\t\tconst { className, yAccessor } = this.props;\r\n\t\tconst { xAccessor } = moreProps;\r\n\t\tconst { xScale, chartConfig: { yScale }, plotData } = moreProps;\r\n\r\n\r\n\t\tconst barData = getOHLCBars(this.props, xAccessor, yAccessor, xScale, yScale, plotData);\r\n\r\n\t\tconst { strokeWidth, bars } = barData;\r\n\r\n\t\treturn \r\n\t\t\t{bars.map((d, idx) => )}\r\n\t\t;\r\n\t}\r\n}\r\n\r\nOHLCSeries.propTypes = {\r\n\tclassName: PropTypes.string,\r\n\tclassNames: PropTypes.oneOfType([\r\n\t\tPropTypes.func,\r\n\t\tPropTypes.string\r\n\t]).isRequired,\r\n\tstroke: PropTypes.oneOfType([\r\n\t\tPropTypes.func,\r\n\t\tPropTypes.string\r\n\t]).isRequired,\r\n\tyAccessor: PropTypes.func.isRequired,\r\n\tclip: PropTypes.bool.isRequired,\r\n};\r\n\r\nOHLCSeries.defaultProps = {\r\n\tclassName: \"react-stockcharts-ohlc\",\r\n\tyAccessor: (d) => ({ open: d.open, high: d.high, low: d.low, close: d.close }),\r\n\tclassNames: d => isDefined(d.absoluteChange) ? (d.absoluteChange > 0 ? \"up\" : \"down\") : \"firstbar\",\r\n\tstroke: d => isDefined(d.absoluteChange) ? (d.absoluteChange > 0 ? \"#6BA583\" : \"#FF0000\") : \"#000000\",\r\n\tclip: true,\r\n};\r\n\r\nfunction drawOnCanvas(ctx, barData) {\r\n\r\n\tconst { strokeWidth, bars } = barData;\r\n\r\n\tconst wickNest = nest()\r\n\t\t.key(d => d.stroke)\r\n\t\t.entries(bars);\r\n\r\n\tctx.lineWidth = strokeWidth;\r\n\r\n\twickNest.forEach(outer => {\r\n\t\tconst { key, values } = outer;\r\n\t\tctx.strokeStyle = key;\r\n\t\tvalues.forEach(d => {\r\n\t\t\tctx.beginPath();\r\n\t\t\tctx.moveTo(d.x, d.y1);\r\n\t\t\tctx.lineTo(d.x, d.y2);\r\n\r\n\t\t\tctx.moveTo(d.openX1, d.openY);\r\n\t\t\tctx.lineTo(d.openX2, d.openY);\r\n\r\n\t\t\tctx.moveTo(d.closeX1, d.closeY);\r\n\t\t\tctx.lineTo(d.closeX2, d.closeY);\r\n\r\n\t\t\tctx.stroke();\r\n\t\t});\r\n\t});\r\n}\r\n\r\nfunction getOHLCBars(props, xAccessor, yAccessor, xScale, yScale, plotData) {\r\n\tconst { classNames: classNamesProp, stroke: strokeProp } = props;\r\n\r\n\tconst strokeFunc = functor(strokeProp);\r\n\tconst classNameFunc = functor(classNamesProp);\r\n\r\n\tconst width = xScale(xAccessor(plotData[plotData.length - 1]))\r\n\t\t- xScale(xAccessor(plotData[0]));\r\n\r\n\tconst barWidth = Math.max(1, Math.round(width / (plotData.length - 1) / 2) - 1.5);\r\n\tconst strokeWidth = Math.min(barWidth, 6);\r\n\r\n\tconst bars = plotData\r\n\t\t.filter(d => isDefined(yAccessor(d).close))\r\n\t\t.map(d => {\r\n\t\t\tconst ohlc = yAccessor(d),\r\n\t\t\t\tx = Math.round(xScale(xAccessor(d))),\r\n\t\t\t\ty1 = yScale(ohlc.high),\r\n\t\t\t\ty2 = yScale(ohlc.low),\r\n\t\t\t\topenX1 = x - barWidth,\r\n\t\t\t\topenX2 = x + strokeWidth / 2,\r\n\t\t\t\topenY = yScale(ohlc.open),\r\n\t\t\t\tcloseX1 = x - strokeWidth / 2,\r\n\t\t\t\tcloseX2 = x + barWidth,\r\n\t\t\t\tcloseY = yScale(ohlc.close),\r\n\t\t\t\tclassName = classNameFunc(d),\r\n\t\t\t\tstroke = strokeFunc(d);\r\n\r\n\t\t\treturn { x, y1, y2, openX1, openX2, openY, closeX1, closeX2, closeY, stroke, className };\r\n\t\t});\r\n\treturn { barWidth, strokeWidth, bars };\r\n}\r\n\r\nexport default OHLCSeries;\r\n","\r\n\r\nimport React, { Component } from \"react\";\r\nimport PropTypes from \"prop-types\";\r\n\r\nimport { nest as d3Nest } from \"d3-collection\";\r\nimport { merge } from \"d3-array\";\r\nimport { stack as d3Stack } from \"d3-shape\";\r\n\r\nimport GenericChartComponent from \"../GenericChartComponent\";\r\nimport { getAxisCanvas } from \"../GenericComponent\";\r\n\r\nimport { identity, hexToRGBA, head, functor, plotDataLengthBarWidth } from \"../utils\";\r\n\r\nclass StackedBarSeries extends Component {\r\n\tconstructor(props) {\r\n\t\tsuper(props);\r\n\t\tthis.renderSVG = this.renderSVG.bind(this);\r\n\t\tthis.drawOnCanvas = this.drawOnCanvas.bind(this);\r\n\t}\r\n\tdrawOnCanvas(ctx, moreProps) {\r\n\t\tconst { xAccessor } = moreProps;\r\n\t\t// var { xScale, chartConfig: { yScale }, plotData } = moreProps;\r\n\r\n\t\tdrawOnCanvasHelper(ctx, this.props, moreProps, xAccessor, d3Stack);\r\n\t}\r\n\trenderSVG(moreProps) {\r\n\t\tconst { xAccessor } = moreProps;\r\n\r\n\t\treturn {svgHelper(this.props, moreProps, xAccessor, d3Stack)};\r\n\t}\r\n\trender() {\r\n\t\tconst { clip } = this.props;\r\n\r\n\t\treturn ;\r\n\t}\r\n}\r\n\r\nStackedBarSeries.propTypes = {\r\n\tbaseAt: PropTypes.oneOfType([\r\n\t\tPropTypes.number,\r\n\t\tPropTypes.func,\r\n\t]).isRequired,\r\n\tdirection: PropTypes.oneOf([\"up\", \"down\"]).isRequired,\r\n\tstroke: PropTypes.bool.isRequired,\r\n\twidth: PropTypes.oneOfType([\r\n\t\tPropTypes.number,\r\n\t\tPropTypes.func\r\n\t]).isRequired,\r\n\topacity: PropTypes.number.isRequired,\r\n\tfill: PropTypes.oneOfType([\r\n\t\tPropTypes.func, PropTypes.string\r\n\t]).isRequired,\r\n\tclassName: PropTypes.oneOfType([\r\n\t\tPropTypes.func, PropTypes.string\r\n\t]).isRequired,\r\n\tclip: PropTypes.bool.isRequired,\r\n};\r\n\r\nStackedBarSeries.defaultProps = {\r\n\tbaseAt: (xScale, yScale/* , d*/) => head(yScale.range()),\r\n\tdirection: \"up\",\r\n\tclassName: \"bar\",\r\n\tstroke: true,\r\n\tfill: \"#4682B4\",\r\n\topacity: 0.5,\r\n\twidth: plotDataLengthBarWidth,\r\n\twidthRatio: 0.8,\r\n\tclip: true,\r\n\tswapScales: false,\r\n};\r\n\r\nexport function identityStack() {\r\n\tlet keys = [];\r\n\tfunction stack(data) {\r\n\t\tconst response = keys.map((key, i) => {\r\n\t\t\t// eslint-disable-next-line prefer-const\r\n\t\t\tlet arrays = data.map(d => {\r\n\t\t\t\t// eslint-disable-next-line prefer-const\r\n\t\t\t\tlet array = [0, d[key]];\r\n\t\t\t\tarray.data = d;\r\n\t\t\t\treturn array;\r\n\t\t\t});\r\n\t\t\tarrays.key = key;\r\n\t\t\tarrays.index = i;\r\n\t\t\treturn arrays;\r\n\t\t});\r\n\t\treturn response;\r\n\t}\r\n\tstack.keys = function(x) {\r\n\t\tif (!arguments.length) {\r\n\t\t\treturn keys;\r\n\t\t}\r\n\t\tkeys = x;\r\n\t\treturn stack;\r\n\t};\r\n\treturn stack;\r\n}\r\n\r\n\r\nexport function drawOnCanvasHelper(ctx, props, moreProps, xAccessor, stackFn, defaultPostAction = identity, postRotateAction = rotateXY) {\r\n\tconst { xScale, chartConfig: { yScale }, plotData } = moreProps;\r\n\r\n\tconst bars = doStuff(props, xAccessor, plotData, xScale, yScale, stackFn, postRotateAction, defaultPostAction);\r\n\r\n\tdrawOnCanvas2(props, ctx, bars);\r\n}\r\n\r\nfunction convertToArray(item) {\r\n\treturn Array.isArray(item) ? item : [item];\r\n}\r\n\r\nexport function svgHelper(props, moreProps, xAccessor, stackFn, defaultPostAction = identity, postRotateAction = rotateXY) {\r\n\tconst { xScale, chartConfig: { yScale }, plotData } = moreProps;\r\n\tconst bars = doStuff(props, xAccessor, plotData, xScale, yScale, stackFn, postRotateAction, defaultPostAction);\r\n\treturn getBarsSVG2(props, bars);\r\n}\r\n\r\nfunction doStuff(props, xAccessor, plotData, xScale, yScale, stackFn, postRotateAction, defaultPostAction) {\r\n\tconst { yAccessor, swapScales } = props;\r\n\r\n\tconst modifiedYAccessor = swapScales ? convertToArray(props.xAccessor) : convertToArray(yAccessor);\r\n\tconst modifiedXAccessor = swapScales ? yAccessor : xAccessor;\r\n\r\n\tconst modifiedXScale = swapScales ? yScale : xScale;\r\n\tconst modifiedYScale = swapScales ? xScale : yScale;\r\n\r\n\tconst postProcessor = swapScales ? postRotateAction : defaultPostAction;\r\n\r\n\tconst bars = getBars(props, modifiedXAccessor, modifiedYAccessor, modifiedXScale, modifiedYScale, plotData, stackFn, postProcessor);\r\n\r\n\treturn bars;\r\n}\r\n\r\nexport const rotateXY = (array) => array.map(each => {\r\n\treturn {\r\n\t\t...each,\r\n\t\tx: each.y,\r\n\t\ty: each.x,\r\n\t\theight: each.width,\r\n\t\twidth: each.height\r\n\t};\r\n});\r\n\r\nexport function getBarsSVG2(props, bars) {\r\n\t/* eslint-disable react/prop-types */\r\n\tconst { opacity } = props;\r\n\t/* eslint-enable react/prop-types */\r\n\r\n\treturn bars.map((d, idx) => {\r\n\t\tif (d.width <= 1) {\r\n\t\t\treturn ;\r\n\t\t}\r\n\t\treturn ;\r\n\t});\r\n}\r\n\r\nexport function drawOnCanvas2(props, ctx, bars) {\r\n\tconst { stroke } = props;\r\n\r\n\tconst nest = d3Nest()\r\n\t\t.key(d => d.fill)\r\n\t\t.entries(bars);\r\n\r\n\tnest.forEach(outer => {\r\n\t\tconst { key, values } = outer;\r\n\t\tif (head(values).width > 1) {\r\n\t\t\tctx.strokeStyle = key;\r\n\t\t}\r\n\t\tconst fillStyle = head(values).width <= 1\r\n\t\t\t? key\r\n\t\t\t: hexToRGBA(key, props.opacity);\r\n\t\tctx.fillStyle = fillStyle;\r\n\r\n\t\tvalues.forEach(d => {\r\n\t\t\tif (d.width <= 1) {\r\n\t\t\t\t/* */\r\n\t\t\t\t/*\r\n\t\t\t\tctx.beginPath();\r\n\t\t\t\tctx.moveTo(d.x, d.y);\r\n\t\t\t\tctx.lineTo(d.x, d.y + d.height);\r\n\t\t\t\tctx.stroke();\r\n\t\t\t\t*/\r\n\t\t\t\tctx.fillRect(d.x - 0.5, d.y, 1, d.height);\r\n\t\t\t} else {\r\n\t\t\t\t/* */\r\n\t\t\t\t/*\r\n\t\t\t\tctx.beginPath();\r\n\t\t\t\tctx.rect(d.x, d.y, d.width, d.height);\r\n\t\t\t\tctx.fill();\r\n\t\t\t\t*/\r\n\t\t\t\tctx.fillRect(d.x, d.y, d.width, d.height);\r\n\t\t\t\tif (stroke) ctx.strokeRect(d.x, d.y, d.width, d.height);\r\n\t\t\t}\r\n\r\n\t\t});\r\n\t});\r\n}\r\n\r\nexport function getBars(props, xAccessor, yAccessor, xScale, yScale, plotData, stack = identityStack, after = identity) {\r\n\tconst { baseAt, className, fill, stroke, spaceBetweenBar = 0 } = props;\r\n\r\n\tconst getClassName = functor(className);\r\n\tconst getFill = functor(fill);\r\n\tconst getBase = functor(baseAt);\r\n\r\n\tconst widthFunctor = functor(props.width);\r\n\tconst width = widthFunctor(props, {\r\n\t\txScale,\r\n\t\txAccessor,\r\n\t\tplotData\r\n\t});\r\n\r\n\tconst barWidth = Math.round(width);\r\n\r\n\tconst eachBarWidth = (barWidth - spaceBetweenBar * (yAccessor.length - 1)) / yAccessor.length;\r\n\r\n\tconst offset = (barWidth === 1 ? 0 : 0.5 * width);\r\n\r\n\tconst ds = plotData\r\n\t\t.map(each => {\r\n\t\t\t// eslint-disable-next-line prefer-const\r\n\t\t\tlet d = {\r\n\t\t\t\tappearance: {\r\n\t\t\t\t},\r\n\t\t\t\tx: xAccessor(each),\r\n\t\t\t};\r\n\t\t\tyAccessor.forEach((eachYAccessor, i) => {\r\n\t\t\t\tconst key = `y${i}`;\r\n\t\t\t\td[key] = eachYAccessor(each);\r\n\t\t\t\tconst appearance = {\r\n\t\t\t\t\tclassName: getClassName(each, i),\r\n\t\t\t\t\tstroke: stroke ? getFill(each, i) : \"none\",\r\n\t\t\t\t\tfill: getFill(each, i),\r\n\t\t\t\t};\r\n\t\t\t\td.appearance[key] = appearance;\r\n\t\t\t});\r\n\t\t\treturn d;\r\n\t\t});\r\n\r\n\tconst keys = yAccessor.map((_, i) => `y${i}`);\r\n\r\n\t// console.log(ds);\r\n\r\n\tconst data = stack().keys(keys)(ds);\r\n\r\n\t// console.log(data);\r\n\r\n\tconst newData = data.map((each, i) => {\r\n\t\tconst key = each.key;\r\n\t\treturn each.map((d) => {\r\n\t\t\t// eslint-disable-next-line prefer-const\r\n\t\t\tlet array = [d[0], d[1]];\r\n\t\t\tarray.data = {\r\n\t\t\t\tx: d.data.x,\r\n\t\t\t\ti,\r\n\t\t\t\tappearance: d.data.appearance[key]\r\n\t\t\t};\r\n\t\t\treturn array;\r\n\t\t});\r\n\t});\r\n\t// console.log(newData);\r\n\t// console.log(merge(newData));\r\n\r\n\tconst bars = merge(newData)\r\n\t\t// .filter(d => isDefined(d.y))\r\n\t\t.map(d => {\r\n\t\t\t// let baseValue = yScale.invert(getBase(xScale, yScale, d.datum));\r\n\t\t\tlet y = yScale(d[1]);\r\n\t\t\t/* let h = isDefined(d.y0) && d.y0 !== 0 && !isNaN(d.y0)\r\n\t\t\t\t\t? yScale(d.y0) - y\r\n\t\t\t\t\t: getBase(xScale, yScale, d.datum) - yScale(d.y)*/\r\n\t\t\tlet h = getBase(xScale, yScale, d.data) - yScale(d[1] - d[0]);\r\n\t\t\t// console.log(d.y, yScale.domain(), yScale.range())\r\n\t\t\t// let h = ;\r\n\t\t\t// if (d.y < 0) h = -h;\r\n\t\t\t// console.log(d, y, h)\r\n\t\t\tif (h < 0) {\r\n\t\t\t\ty = y + h;\r\n\t\t\t\th = -h;\r\n\t\t\t}\r\n\t\t\t// console.log(d.data.i, Math.round(offset - (d.data.i > 0 ? (eachBarWidth + spaceBetweenBar) * d.data.i : 0)))\r\n\t\t\t/* console.log(d.series, d.datum.date, d.x,\r\n\t\t\t\t\tgetBase(xScale, yScale, d.datum), `d.y=${d.y}, d.y0=${d.y0}, y=${y}, h=${h}`)*/\r\n\t\t\treturn {\r\n\t\t\t\t...d.data.appearance,\r\n\t\t\t\t// series: d.series,\r\n\t\t\t\t// i: d.x,\r\n\t\t\t\tx: Math.round(xScale(d.data.x) - width / 2),\r\n\t\t\t\ty: y,\r\n\t\t\t\tgroupOffset: Math.round(offset - (d.data.i > 0 ? (eachBarWidth + spaceBetweenBar) * d.data.i : 0)),\r\n\t\t\t\tgroupWidth: Math.round(eachBarWidth),\r\n\t\t\t\toffset: Math.round(offset),\r\n\t\t\t\theight: h,\r\n\t\t\t\twidth: barWidth,\r\n\t\t\t};\r\n\t\t})\r\n\t\t.filter(bar => !isNaN(bar.y));\r\n\r\n\treturn after(bars);\r\n}\r\n\r\nexport default StackedBarSeries;\r\n","\r\n\r\nimport React, { Component } from \"react\";\r\nimport PropTypes from \"prop-types\";\r\n\r\nimport GenericChartComponent from \"../GenericChartComponent\";\r\nimport { getAxisCanvas } from \"../GenericComponent\";\r\n\r\nimport StackedBarSeries, {\r\n\tdrawOnCanvasHelper,\r\n\tdrawOnCanvas2,\r\n\tgetBarsSVG2,\r\n\tsvgHelper,\r\n\tidentityStack\r\n} from \"./StackedBarSeries\";\r\n\r\nimport { functor, isDefined } from \"../utils\";\r\n\r\nclass BarSeries extends Component {\r\n\tconstructor(props) {\r\n\t\tsuper(props);\r\n\t\tthis.renderSVG = this.renderSVG.bind(this);\r\n\t\tthis.drawOnCanvas = this.drawOnCanvas.bind(this);\r\n\t}\r\n\tdrawOnCanvas(ctx, moreProps) {\r\n\t\tif (this.props.swapScales) {\r\n\t\t\tconst { xAccessor } = moreProps;\r\n\t\t\tdrawOnCanvasHelper(ctx, this.props, moreProps, xAccessor, identityStack);\r\n\t\t} else {\r\n\t\t\tconst bars = getBars(this.props, moreProps);\r\n\t\t\tdrawOnCanvas2(this.props, ctx, bars);\r\n\t\t}\r\n\r\n\t}\r\n\trenderSVG(moreProps) {\r\n\t\tif (this.props.swapScales) {\r\n\t\t\tconst { xAccessor } = moreProps;\r\n\t\t\treturn {svgHelper(this.props, moreProps, xAccessor, identityStack)};\r\n\t\t} else {\r\n\t\t\tconst bars = getBars(this.props, moreProps);\r\n\t\t\treturn {getBarsSVG2(this.props, bars)};\r\n\t\t}\r\n\r\n\t}\r\n\trender() {\r\n\t\tconst { clip } = this.props;\r\n\r\n\t\treturn (\r\n\t\t\t\r\n\t\t);\r\n\t}\r\n}\r\n\r\nBarSeries.propTypes = {\r\n\tbaseAt: PropTypes.oneOfType([\r\n\t\tPropTypes.number,\r\n\t\tPropTypes.func,\r\n\t]),\r\n\tstroke: PropTypes.bool,\r\n\twidth: PropTypes.oneOfType([\r\n\t\tPropTypes.number,\r\n\t\tPropTypes.func\r\n\t]),\r\n\tyAccessor: PropTypes.func.isRequired,\r\n\topacity: PropTypes.number,\r\n\tfill: PropTypes.oneOfType([\r\n\t\tPropTypes.func, PropTypes.string\r\n\t]),\r\n\tclassName: PropTypes.oneOfType([\r\n\t\tPropTypes.func, PropTypes.string\r\n\t]),\r\n\tclip: PropTypes.bool,\r\n\tswapScales: PropTypes.bool,\r\n};\r\n\r\n\r\nBarSeries.defaultProps = StackedBarSeries.defaultProps;\r\n\r\nexport default BarSeries;\r\n\r\n/*\r\n Initially, this program was using StackedBarSeries.getBars\r\n to benefit from code reuse and having a single place that\r\n contains the logic for drawing all types of bar charts\r\n simple, grouped, horizontal, but turnes out\r\n making it highly cuztimizable also made it slow for the\r\n most simple case, a regular bar chart.\r\n This function contains just the necessary logic\r\n to create bars\r\n*/\r\nfunction getBars(props, moreProps) {\r\n\tconst { baseAt, fill, stroke, yAccessor } = props;\r\n\tconst { xScale, xAccessor, plotData, chartConfig: { yScale } } = moreProps;\r\n\r\n\tconst getFill = functor(fill);\r\n\tconst getBase = functor(baseAt);\r\n\r\n\tconst widthFunctor = functor(props.width);\r\n\r\n\tconst width = widthFunctor(props, {\r\n\t\txScale,\r\n\t\txAccessor,\r\n\t\tplotData\r\n\t});\r\n\t/*\r\n\tconst barWidth = Math.round(width);\r\n\tconst offset = Math.round(barWidth === 1 ? 0 : 0.5 * barWidth);\r\n\t*/\r\n\tconst offset = Math.floor(0.5 * width);\r\n\r\n\tconst bars = plotData\r\n\t\t.filter(d => isDefined(yAccessor(d)))\r\n\t\t.map(d => {\r\n\t\t\tconst yValue = yAccessor(d);\r\n\t\t\tlet y = yScale(yValue);\r\n\r\n\t\t\tconst x = Math.round(xScale(xAccessor(d))) - offset;\r\n\t\t\tlet h = getBase(xScale, yScale, d) - yScale(yValue);\r\n\r\n\t\t\tif (h < 0) {\r\n\t\t\t\ty = y + h;\r\n\t\t\t\th = -h;\r\n\t\t\t}\r\n\r\n\t\t\treturn {\r\n\t\t\t\t// type: \"line\"\r\n\t\t\t\tx,\r\n\t\t\t\ty: Math.round(y),\r\n\t\t\t\theight: Math.round(h),\r\n\t\t\t\twidth: offset * 2,\r\n\t\t\t\tfill: getFill(d, 0),\r\n\t\t\t\tstroke: stroke ? getFill(d, 0) : \"none\",\r\n\t\t\t};\r\n\t\t});\r\n\r\n\treturn bars;\r\n}\r\n","\r\n\r\nimport React, { Component } from \"react\";\r\nimport PropTypes from \"prop-types\";\r\n\r\nimport GenericChartComponent from \"../GenericChartComponent\";\r\nimport { getAxisCanvas } from \"../GenericComponent\";\r\nimport StackedBarSeries, { drawOnCanvasHelper, svgHelper, identityStack } from \"./StackedBarSeries\";\r\n\r\nclass GroupedBarSeries extends Component {\r\n\tconstructor(props) {\r\n\t\tsuper(props);\r\n\t\tthis.renderSVG = this.renderSVG.bind(this);\r\n\t\tthis.drawOnCanvas = this.drawOnCanvas.bind(this);\r\n\t}\r\n\tdrawOnCanvas(ctx, moreProps) {\r\n\t\tconst { xAccessor } = moreProps;\r\n\r\n\t\tdrawOnCanvasHelper(ctx, this.props, moreProps, xAccessor, identityStack, postProcessor);\r\n\t}\r\n\trenderSVG(moreProps) {\r\n\t\tconst { xAccessor } = moreProps;\r\n\r\n\t\treturn \r\n\t\t\t{svgHelper(this.props, moreProps, xAccessor, identityStack, postProcessor)}\r\n\t\t;\r\n\t}\r\n\trender() {\r\n\t\treturn ;\r\n\t}\r\n}\r\n\r\nGroupedBarSeries.propTypes = {\r\n\tbaseAt: PropTypes.oneOfType([\r\n\t\tPropTypes.number,\r\n\t\tPropTypes.func,\r\n\t]).isRequired,\r\n\tdirection: PropTypes.oneOf([\"up\", \"down\"]).isRequired,\r\n\tstroke: PropTypes.bool.isRequired,\r\n\twidthRatio: PropTypes.number.isRequired,\r\n\topacity: PropTypes.number.isRequired,\r\n\tfill: PropTypes.oneOfType([\r\n\t\tPropTypes.func, PropTypes.string\r\n\t]).isRequired,\r\n\tclassName: PropTypes.oneOfType([\r\n\t\tPropTypes.func, PropTypes.string\r\n\t]).isRequired,\r\n\tyAccessor: PropTypes.arrayOf(PropTypes.func),\r\n};\r\n\r\nGroupedBarSeries.defaultProps = {\r\n\t...StackedBarSeries.defaultProps,\r\n\twidthRatio: 0.8,\r\n\tspaceBetweenBar: 5,\r\n};\r\n\r\nfunction postProcessor(array) {\r\n\treturn array.map(each => {\r\n\t\treturn {\r\n\t\t\t...each,\r\n\t\t\tx: each.x + each.offset - each.groupOffset,\r\n\t\t\twidth: each.groupWidth,\r\n\t\t};\r\n\t});\r\n}\r\n\r\nexport default GroupedBarSeries;\r\n","\r\n\r\nimport React, { Component } from \"react\";\r\nimport PropTypes from \"prop-types\";\r\nimport { line, curveStepBefore } from \"d3-shape\";\r\n\r\nimport GenericChartComponent from \"../GenericChartComponent\";\r\nimport { getAxisCanvas } from \"../GenericComponent\";\r\nimport { isDefined, isNotDefined } from \"../utils\";\r\n\r\nclass KagiSeries extends Component {\r\n\tconstructor(props) {\r\n\t\tsuper(props);\r\n\t\tthis.renderSVG = this.renderSVG.bind(this);\r\n\t\tthis.drawOnCanvas = this.drawOnCanvas.bind(this);\r\n\t}\r\n\tdrawOnCanvas(ctx, moreProps) {\r\n\t\tconst { xAccessor } = moreProps;\r\n\r\n\t\tdrawOnCanvas(ctx, this.props, moreProps, xAccessor);\r\n\t}\r\n\trender() {\r\n\t\treturn ;\r\n\t}\r\n\trenderSVG(moreProps) {\r\n\t\tconst { xAccessor } = moreProps;\r\n\t\tconst { xScale, chartConfig: { yScale }, plotData } = moreProps;\r\n\r\n\t\tconst { className, stroke, fill, strokeWidth } = this.props;\r\n\r\n\t\tconst paths = helper(plotData, xAccessor).map((each, i) => {\r\n\t\t\tconst dataSeries = line()\r\n\t\t\t\t.x((item) => xScale(item[0]))\r\n\t\t\t\t.y((item) => yScale(item[1]))\r\n\t\t\t\t.curve(curveStepBefore);\r\n\r\n\t\t\tdataSeries(each.plot);\r\n\r\n\t\t\treturn ();\r\n\t\t});\r\n\t\treturn (\r\n\t\t\t\r\n\t\t\t\t{paths}\r\n\t\t\t\r\n\t\t);\r\n\t}\r\n}\r\nKagiSeries.propTypes = {\r\n\tclassName: PropTypes.string,\r\n\tstroke: PropTypes.object,\r\n\tfill: PropTypes.object,\r\n\tstrokeWidth: PropTypes.number.isRequired,\r\n};\r\n\r\nKagiSeries.defaultProps = {\r\n\tclassName: \"react-stockcharts-kagi\",\r\n\tstrokeWidth: 2,\r\n\tstroke: {\r\n\t\tyang: \"#6BA583\",\r\n\t\tyin: \"#E60000\"\r\n\t},\r\n\tfill: {\r\n\t\tyang: \"none\",\r\n\t\tyin: \"none\"\r\n\t},\r\n\tcurrentValueStroke: \"#000000\",\r\n};\r\n\r\nfunction drawOnCanvas(ctx, props, moreProps, xAccessor) {\r\n\tconst { stroke, strokeWidth, currentValueStroke } = props;\r\n\tconst { xScale, chartConfig: { yScale }, plotData } = moreProps;\r\n\r\n\tconst paths = helper(plotData, xAccessor);\r\n\r\n\tlet begin = true;\r\n\r\n\tpaths.forEach((each) => {\r\n\t\tctx.strokeStyle = stroke[each.type];\r\n\t\tctx.lineWidth = strokeWidth;\r\n\r\n\t\tctx.beginPath();\r\n\t\tlet prevX;\r\n\t\teach.plot.forEach(d => {\r\n\t\t\tconst [x, y] = [xScale(d[0]), yScale(d[1])];\r\n\t\t\tif (begin) {\r\n\t\t\t\tctx.moveTo(x, y);\r\n\t\t\t\tbegin = false;\r\n\t\t\t} else {\r\n\t\t\t\tif (isDefined(prevX)) {\r\n\t\t\t\t\tctx.lineTo(prevX, y);\r\n\t\t\t\t}\r\n\t\t\t\tctx.lineTo(x, y);\r\n\t\t\t}\r\n\t\t\tprevX = x;\r\n\t\t\t// console.log(d);\r\n\r\n\t\t});\r\n\t\tctx.stroke();\r\n\t});\r\n\tconst lastPlot = paths[paths.length - 1].plot;\r\n\tconst last = lastPlot[lastPlot.length - 1];\r\n\tctx.beginPath();\r\n\t// ctx.strokeStyle = \"black\";\r\n\tctx.lineWidth = 1;\r\n\r\n\tconst [x, y1, y2] = [xScale(last[0]), yScale(last[2]), yScale(last[3])];\r\n\t// console.log(last, x, y);\r\n\tctx.moveTo(x, y1);\r\n\tctx.lineTo(x + 10, y1);\r\n\tctx.stroke();\r\n\r\n\tctx.beginPath();\r\n\tctx.strokeStyle = currentValueStroke;\r\n\tctx.moveTo(x - 10, y2);\r\n\tctx.lineTo(x, y2);\r\n\tctx.stroke();\r\n}\r\n\r\nfunction helper(plotData, xAccessor) {\r\n\tconst kagiLine = [];\r\n\tlet kagi = {};\r\n\tlet d = plotData[0];\r\n\tlet idx = xAccessor(d);\r\n\r\n\tfor (let i = 0; i < plotData.length; i++) {\r\n\t\td = plotData[i];\r\n\r\n\t\tif (isNotDefined(d.close)) continue;\r\n\t\tif (isNotDefined(kagi.type)) kagi.type = d.startAs;\r\n\t\tif (isNotDefined(kagi.plot)) kagi.plot = [];\r\n\r\n\t\tidx = xAccessor(d);\r\n\t\tkagi.plot.push([idx, d.open]);\r\n\r\n\t\tif (isDefined(d.changeTo)) {\r\n\t\t\tkagi.plot.push([idx, d.changePoint]);\r\n\t\t\tkagi.added = true;\r\n\t\t\tkagiLine.push(kagi);\r\n\r\n\t\t\tkagi = {\r\n\t\t\t\ttype: d.changeTo,\r\n\t\t\t\tplot: [],\r\n\t\t\t\tadded: false,\r\n\t\t\t};\r\n\t\t\tkagi.plot.push([idx, d.changePoint]);\r\n\t\t}\r\n\t}\r\n\r\n\tif (!kagi.added && kagi.plot) {\r\n\t\tkagi.plot.push([idx, d.close, d.current, d.reverseAt]);\r\n\t\tkagiLine.push(kagi);\r\n\t}\r\n\r\n\t// console.log(d.reverseAt);\r\n\r\n\treturn kagiLine;\r\n}\r\n\r\nexport default KagiSeries;\r\n","\r\n\r\nimport React, { Component } from \"react\";\r\nimport PropTypes from \"prop-types\";\r\nimport GenericChartComponent from \"../GenericChartComponent\";\r\nimport { getAxisCanvas } from \"../GenericComponent\";\r\n\r\nimport { isDefined, isNotDefined } from \"../utils\";\r\n\r\nclass PointAndFigureSeries extends Component {\r\n\tconstructor(props) {\r\n\t\tsuper(props);\r\n\t\tthis.renderSVG = this.renderSVG.bind(this);\r\n\t\tthis.drawOnCanvas = this.drawOnCanvas.bind(this);\r\n\t}\r\n\tdrawOnCanvas(ctx, moreProps) {\r\n\t\tconst { xAccessor } = moreProps;\r\n\t\tconst { xScale, chartConfig: { yScale }, plotData } = moreProps;\r\n\t\tconst columns = getColumns(xScale, xAccessor, yScale, plotData);\r\n\r\n\t\tdrawOnCanvas(ctx, this.props, columns);\r\n\t}\r\n\trender() {\r\n\t\tconst { clip } = this.props;\r\n\r\n\t\treturn ;\r\n\t}\r\n\trenderSVG(moreProps) {\r\n\t\tconst { xAccessor } = moreProps;\r\n\t\tconst { xScale, chartConfig: { yScale }, plotData } = moreProps;\r\n\r\n\t\tconst { stroke, fill, strokeWidth, className } = this.props;\r\n\r\n\t\tconst columns = getColumns(xScale, xAccessor, yScale, plotData);\r\n\r\n\t\treturn (\r\n\t\t\t\r\n\t\t\t\t{columns.map((col, idx) => (\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t{col.boxes.map((box, i) => {\r\n\t\t\t\t\t\t\tif (col.direction > 0) {\r\n\t\t\t\t\t\t\t\treturn (\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t);\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\treturn (\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t);\r\n\t\t\t\t\t\t})}\r\n\t\t\t\t\t\r\n\t\t\t\t))}\r\n\t\t\t\r\n\t\t);\r\n\t}\r\n}\r\n\r\nPointAndFigureSeries.propTypes = {\r\n\tclassName: PropTypes.string,\r\n\tstrokeWidth: PropTypes.number.isRequired,\r\n\tstroke: PropTypes.object.isRequired,\r\n\tfill: PropTypes.object.isRequired,\r\n\tclip: PropTypes.bool.isRequired,\r\n};\r\n\r\nPointAndFigureSeries.defaultProps = {\r\n\tclassName: \"react-stockcharts-point-and-figure\",\r\n\tstrokeWidth: 1,\r\n\tstroke: {\r\n\t\tup: \"#6BA583\",\r\n\t\tdown: \"#FF0000\"\r\n\t},\r\n\tfill: {\r\n\t\tup: \"none\",\r\n\t\tdown: \"none\"\r\n\t},\r\n\tclip: true,\r\n};\r\n\r\nfunction drawOnCanvas(ctx, props, columns) {\r\n\tconst { stroke, fill, strokeWidth } = props;\r\n\r\n\tctx.lineWidth = strokeWidth;\r\n\r\n\tcolumns.forEach(col => {\r\n\t\tconst [offsetX, offsetY] = col.offset;\r\n\t\tcol.boxes.forEach(box => {\r\n\t\t\tif (col.direction > 0) {\r\n\t\t\t\tctx.fillStyle = fill.up;\r\n\t\t\t\tctx.strokeStyle = stroke.up;\r\n\r\n\t\t\t\tctx.beginPath();\r\n\r\n\t\t\t\tctx.moveTo(offsetX, offsetY + box.open);\r\n\t\t\t\tctx.lineTo(offsetX + box.columnWidth, offsetY + box.close);\r\n\t\t\t\tctx.moveTo(offsetX, offsetY + box.close);\r\n\t\t\t\tctx.lineTo(offsetX + box.columnWidth, offsetY + box.open);\r\n\r\n\t\t\t\tctx.stroke();\r\n\t\t\t} else {\r\n\t\t\t\tctx.fillStyle = fill.down;\r\n\t\t\t\tctx.strokeStyle = stroke.down;\r\n\r\n\t\t\t\tctx.beginPath();\r\n\r\n\t\t\t\tconst [x, y] = [offsetX + box.columnWidth / 2, offsetY + box.open + box.boxHeight / 2];\r\n\t\t\t\tconst [rx, ry] = [box.columnWidth / 2, box.boxHeight / 2];\r\n\r\n\t\t\t\tctx.ellipse(x, y, rx, ry, 0, 0, 2 * Math.PI);\r\n\t\t\t\tctx.stroke();\r\n\t\t\t}\r\n\t\t});\r\n\t});\r\n\r\n\tctx.stroke();\r\n}\r\n\r\nfunction getColumns(xScale, xAccessor, yScale, plotData) {\r\n\r\n\tconst width = xScale(xAccessor(plotData[plotData.length - 1]))\r\n\t\t- xScale(xAccessor(plotData[0]));\r\n\r\n\tconst columnWidth = (width / (plotData.length - 1));\r\n\r\n\tlet anyBox, j = 0;\r\n\twhile (isNotDefined(anyBox)) {\r\n\t\tif (isDefined(plotData[j]) && isDefined(plotData[j].close) && isDefined(plotData[j].boxes[0])) {\r\n\t\t\tanyBox = plotData[j].boxes[0];\r\n\t\t} else {\r\n\t\t\tbreak;\r\n\t\t}\r\n\t\tj++;\r\n\t}\r\n\r\n\t\r\n\tconst boxHeight = anyBox ? Math.abs(yScale(anyBox.open) - yScale(anyBox.close)) : 0;\r\n\r\n\tconst columns = plotData\r\n\t\t.filter(d => isDefined(d.close))\r\n\t\t.map(d => {\r\n\t\t\tconst boxes = d.boxes.map((box) => ({\r\n\t\t\t\tcolumnWidth: columnWidth,\r\n\t\t\t\tboxHeight: boxHeight,\r\n\t\t\t\topen: yScale(box.open),\r\n\t\t\t\tclose: yScale(box.close),\r\n\t\t\t}));\r\n\r\n\t\t\tconst xOffset = (xScale(xAccessor(d)) - (columnWidth / 2));\r\n\t\t\treturn {\r\n\t\t\t\tboxes: boxes,\r\n\t\t\t\tdirection: d.direction,\r\n\t\t\t\toffset: [xOffset, 0],\r\n\t\t\t};\r\n\t\t});\r\n\treturn columns;\r\n}\r\n\r\nexport default PointAndFigureSeries;\r\n","\r\n\r\nimport React, { Component } from \"react\";\r\nimport PropTypes from \"prop-types\";\r\nimport GenericChartComponent from \"../GenericChartComponent\";\r\nimport { getAxisCanvas } from \"../GenericComponent\";\r\n\r\nimport { isDefined } from \"../utils\";\r\n\r\nclass RenkoSeries extends Component {\r\n\tconstructor(props) {\r\n\t\tsuper(props);\r\n\t\tthis.renderSVG = this.renderSVG.bind(this);\r\n\t\tthis.drawOnCanvas = this.drawOnCanvas.bind(this);\r\n\t}\r\n\tdrawOnCanvas(ctx, moreProps) {\r\n\t\tconst { xAccessor } = moreProps;\r\n\t\tconst { xScale, chartConfig: { yScale }, plotData } = moreProps;\r\n\r\n\t\tconst { yAccessor } = this.props;\r\n\r\n\t\tconst candles = getRenko(this.props, plotData, xScale, xAccessor, yScale, yAccessor);\r\n\r\n\t\tdrawOnCanvas(ctx, candles);\r\n\t}\r\n\trender() {\r\n\t\tconst { clip } = this.props;\r\n\r\n\t\treturn ;\r\n\t}\r\n\trenderSVG(moreProps) {\r\n\t\tconst { xAccessor } = moreProps;\r\n\t\tconst { xScale, chartConfig: { yScale }, plotData } = moreProps;\r\n\r\n\t\tconst { yAccessor } = this.props;\r\n\r\n\t\tconst candles = getRenko(this.props, plotData, xScale, xAccessor, yScale, yAccessor)\r\n\t\t\t.map((each, idx) => ());\r\n\r\n\t\treturn (\r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t{candles}\r\n\t\t\t\t\r\n\t\t\t\r\n\t\t);\r\n\t}\r\n}\r\n\r\nRenkoSeries.propTypes = {\r\n\tclassNames: PropTypes.shape({\r\n\t\tup: PropTypes.string,\r\n\t\tdown: PropTypes.string\r\n\t}),\r\n\tstroke: PropTypes.shape({\r\n\t\tup: PropTypes.string,\r\n\t\tdown: PropTypes.string\r\n\t}),\r\n\tfill: PropTypes.shape({\r\n\t\tup: PropTypes.string,\r\n\t\tdown: PropTypes.string,\r\n\t\tpartial: PropTypes.string\r\n\t}),\r\n\tyAccessor: PropTypes.func.isRequired,\r\n\tclip: PropTypes.bool.isRequired,\r\n};\r\n\r\nRenkoSeries.defaultProps = {\r\n\tclassNames: {\r\n\t\tup: \"up\",\r\n\t\tdown: \"down\"\r\n\t},\r\n\tstroke: {\r\n\t\tup: \"none\",\r\n\t\tdown: \"none\"\r\n\t},\r\n\tfill: {\r\n\t\tup: \"#6BA583\",\r\n\t\tdown: \"#E60000\",\r\n\t\tpartial: \"#4682B4\",\r\n\t},\r\n\tyAccessor: d => ({ open: d.open, high: d.high, low: d.low, close: d.close }),\r\n\tclip: true,\r\n};\r\n\r\nfunction drawOnCanvas(ctx, renko) {\r\n\trenko.forEach(d => {\r\n\t\tctx.beginPath();\r\n\r\n\t\tctx.strokeStyle = d.stroke;\r\n\t\tctx.fillStyle = d.fill;\r\n\r\n\t\tctx.rect(d.x, d.y, d.width, d.height);\r\n\t\tctx.closePath();\r\n\t\tctx.fill();\r\n\t});\r\n}\r\n\r\nfunction getRenko(props, plotData, xScale, xAccessor, yScale, yAccessor) {\r\n\tconst { classNames, fill } = props;\r\n\tconst width = xScale(xAccessor(plotData[plotData.length - 1]))\r\n\t\t- xScale(xAccessor(plotData[0]));\r\n\r\n\tconst candleWidth = (width / (plotData.length - 1));\r\n\tconst candles = plotData\r\n\t\t.filter(d => isDefined(yAccessor(d).close))\r\n\t\t.map(d => {\r\n\t\t\tconst ohlc = yAccessor(d);\r\n\t\t\tconst x = xScale(xAccessor(d)) - 0.5 * candleWidth,\r\n\t\t\t\ty = yScale(Math.max(ohlc.open, ohlc.close)),\r\n\t\t\t\theight = Math.abs(yScale(ohlc.open) - yScale(ohlc.close)),\r\n\t\t\t\tclassName = (ohlc.open <= ohlc.close) ? classNames.up : classNames.down;\r\n\r\n\t\t\tconst svgfill = d.fullyFormed\r\n\t\t\t\t? (ohlc.open <= ohlc.close ? fill.up : fill.down)\r\n\t\t\t\t: fill.partial;\r\n\r\n\t\t\treturn {\r\n\t\t\t\tclassName: className,\r\n\t\t\t\tfill: svgfill,\r\n\t\t\t\tx: x,\r\n\t\t\t\ty: y,\r\n\t\t\t\theight: height,\r\n\t\t\t\twidth: candleWidth,\r\n\t\t\t};\r\n\t\t});\r\n\treturn candles;\r\n}\r\n\r\nexport default RenkoSeries;\r\n","\r\n\r\nimport React, { Component } from \"react\";\r\nimport PropTypes from \"prop-types\";\r\n\r\nimport { hexToRGBA, isDefined, isNotDefined, strokeDashTypes, getStrokeDasharray } from \"../utils\";\r\n\r\nimport GenericChartComponent from \"../GenericChartComponent\";\r\nimport { getAxisCanvas } from \"../GenericComponent\";\r\n\r\nclass StraightLine extends Component {\r\n\tconstructor(props) {\r\n\t\tsuper(props);\r\n\t\tthis.renderSVG = this.renderSVG.bind(this);\r\n\t\tthis.drawOnCanvas = this.drawOnCanvas.bind(this);\r\n\t}\r\n\tdrawOnCanvas(ctx, moreProps) {\r\n\t\tconst { type, stroke, strokeWidth, opacity, strokeDasharray } = this.props;\r\n\t\tconst { yValue, xValue } = this.props;\r\n\t\tconst { xScale } = moreProps;\r\n\t\tconst { chartConfig: { yScale, width, height } } = moreProps;\r\n\r\n\t\tctx.beginPath();\r\n\r\n\t\tctx.strokeStyle = hexToRGBA(stroke, opacity);\r\n\t\tctx.lineWidth = strokeWidth;\r\n\r\n\t\tconst { x1, y1, x2, y2 } = getLineCoordinates(type, xScale, yScale, xValue, yValue, width, height);\r\n\r\n\t\tctx.setLineDash(getStrokeDasharray(strokeDasharray).split(\",\"));\r\n\t\tctx.moveTo(x1, y1);\r\n\t\tctx.lineTo(x2, y2);\r\n\t\tctx.stroke();\r\n\t}\r\n\trender() {\r\n\t\treturn ;\r\n\t}\r\n\trenderSVG(moreProps) {\r\n\t\tconst { width, height } = moreProps;\r\n\t\tconst { xScale, chartConfig: { yScale } } = moreProps;\r\n\r\n\t\tconst { className } = this.props;\r\n\t\tconst { type, stroke, strokeWidth, opacity, strokeDasharray } = this.props;\r\n\t\tconst { yValue, xValue } = this.props;\r\n\r\n\t\tconst lineCoordinates = getLineCoordinates(type, xScale, yScale, xValue, yValue, width, height);\r\n\r\n\t\treturn (\r\n\t\t\t\r\n\t\t);\r\n\t}\r\n}\r\n\r\nfunction getLineCoordinates(type, xScale, yScale, xValue, yValue, width, height) {\r\n\treturn type === \"horizontal\"\r\n\t\t? { x1: 0, y1: Math.round(yScale(yValue)), x2: width, y2: Math.round(yScale(yValue)) }\r\n\t\t: { x1: Math.round(xScale(xValue)), y1: 0, x2: Math.round(xScale(xValue)), y2: height };\r\n}\r\n\r\nStraightLine.propTypes = {\r\n\tclassName: PropTypes.string,\r\n\ttype: PropTypes.oneOf([\"vertical\", \"horizontal\"]),\r\n\tstroke: PropTypes.string,\r\n\tstrokeWidth: PropTypes.number,\r\n\tstrokeDasharray: PropTypes.oneOf(strokeDashTypes),\r\n\topacity: PropTypes.number.isRequired,\r\n\tyValue: function(props, propName/* , componentName */) {\r\n\t\tif (props.type === \"vertical\" && isDefined(props[propName])) return new Error(\"Do not define `yValue` when type is `vertical`, define the `xValue` prop\");\r\n\t\tif (props.type === \"horizontal\" && isNotDefined(props[propName])) return new Error(\"when type = `horizontal` `yValue` is required\");\r\n\t\t// if (isDefined(props[propName]) && typeof props[propName] !== \"number\") return new Error(\"prop `yValue` accepts a number\");\r\n\t},\r\n\txValue: function(props, propName/* , componentName */) {\r\n\t\tif (props.type === \"horizontal\" && isDefined(props[propName])) return new Error(\"Do not define `xValue` when type is `horizontal`, define the `yValue` prop\");\r\n\t\tif (props.type === \"vertical\" && isNotDefined(props[propName])) return new Error(\"when type = `vertical` `xValue` is required\");\r\n\t\t// if (isDefined(props[propName]) && typeof props[propName] !== \"number\") return new Error(\"prop `xValue` accepts a number\");\r\n\t},\r\n};\r\n\r\nStraightLine.defaultProps = {\r\n\tclassName: \"line \",\r\n\ttype: \"horizontal\",\r\n\tstroke: \"#000000\",\r\n\topacity: 0.5,\r\n\tstrokeWidth: 1,\r\n\tstrokeDasharray: \"Solid\",\r\n};\r\n\r\nexport default StraightLine;\r\n","\r\n\r\nimport React, { Component } from \"react\";\r\nimport PropTypes from \"prop-types\";\r\n\r\nimport BarSeries from \"./BarSeries\";\r\nimport LineSeries from \"./LineSeries\";\r\nimport StraightLine from \"./StraightLine\";\r\n\r\nclass MACDSeries extends Component {\r\n\tconstructor(props) {\r\n\t\tsuper(props);\r\n\t\tthis.yAccessorForMACD = this.yAccessorForMACD.bind(this);\r\n\t\tthis.yAccessorForSignal = this.yAccessorForSignal.bind(this);\r\n\t\tthis.yAccessorForDivergence = this.yAccessorForDivergence.bind(this);\r\n\t\tthis.yAccessorForDivergenceBase = this.yAccessorForDivergenceBase.bind(this);\r\n\t}\r\n\tyAccessorForMACD(d) {\r\n\t\tconst { yAccessor } = this.props;\r\n\t\treturn yAccessor(d) && yAccessor(d).macd;\r\n\t}\r\n\tyAccessorForSignal(d) {\r\n\t\tconst { yAccessor } = this.props;\r\n\t\treturn yAccessor(d) && yAccessor(d).signal;\r\n\t}\r\n\tyAccessorForDivergence(d) {\r\n\t\tconst { yAccessor } = this.props;\r\n\t\treturn yAccessor(d) && yAccessor(d).divergence;\r\n\t}\r\n\tyAccessorForDivergenceBase(xScale, yScale/* , d */) {\r\n\t\treturn yScale(0);\r\n\t}\r\n\trender() {\r\n\t\tconst { className, opacity, divergenceStroke, widthRatio, width } = this.props;\r\n\t\tconst { stroke, fill } = this.props;\r\n\r\n\t\tconst { clip } = this.props;\r\n\t\tconst { zeroLineStroke, zeroLineOpacity } = this.props;\r\n\r\n\t\treturn (\r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\r\n\t\t);\r\n\t}\r\n}\r\n\r\nMACDSeries.propTypes = {\r\n\tclassName: PropTypes.string,\r\n\tyAccessor: PropTypes.func.isRequired,\r\n\topacity: PropTypes.number,\r\n\tdivergenceStroke: PropTypes.bool,\r\n\tzeroLineStroke: PropTypes.string,\r\n\tzeroLineOpacity: PropTypes.number,\r\n\tclip: PropTypes.bool.isRequired,\r\n\tstroke: PropTypes.shape({\r\n\t\tmacd: PropTypes.string.isRequired,\r\n\t\tsignal: PropTypes.string.isRequired,\r\n\t}).isRequired,\r\n\tfill: PropTypes.shape({\r\n\t\tdivergence: PropTypes.oneOfType([PropTypes.string, PropTypes.func]).isRequired,\r\n\t}).isRequired,\r\n\twidthRatio: PropTypes.number,\r\n\twidth: BarSeries.propTypes.width,\r\n};\r\n\r\nMACDSeries.defaultProps = {\r\n\tclassName: \"react-stockcharts-macd-series\",\r\n\tzeroLineStroke: \"#000000\",\r\n\tzeroLineOpacity: 0.3,\r\n\topacity: 0.6,\r\n\tdivergenceStroke: false,\r\n\tclip: true,\r\n\twidthRatio: 0.5,\r\n\twidth: BarSeries.defaultProps.width,\r\n};\r\n\r\nexport default MACDSeries;\r\n","\r\n\r\nimport React, { Component } from \"react\";\r\nimport PropTypes from \"prop-types\";\r\n\r\nimport LineSeries from \"./LineSeries\";\r\nimport AreaOnlySeries from \"./AreaOnlySeries\";\r\n\r\nclass BollingerSeries extends Component {\r\n\tconstructor(props) {\r\n\t\tsuper(props);\r\n\t\tthis.yAccessorForTop = this.yAccessorForTop.bind(this);\r\n\t\tthis.yAccessorForMiddle = this.yAccessorForMiddle.bind(this);\r\n\t\tthis.yAccessorForBottom = this.yAccessorForBottom.bind(this);\r\n\t\tthis.yAccessorForScalledBottom = this.yAccessorForScalledBottom.bind(this);\r\n\t}\r\n\tyAccessorForTop(d) {\r\n\t\tconst { yAccessor } = this.props;\r\n\t\treturn yAccessor(d) && yAccessor(d).top;\r\n\t}\r\n\tyAccessorForMiddle(d) {\r\n\t\tconst { yAccessor } = this.props;\r\n\t\treturn yAccessor(d) && yAccessor(d).middle;\r\n\t}\r\n\tyAccessorForBottom(d) {\r\n\t\tconst { yAccessor } = this.props;\r\n\t\treturn yAccessor(d) && yAccessor(d).bottom;\r\n\t}\r\n\tyAccessorForScalledBottom(scale, d) {\r\n\t\tconst { yAccessor } = this.props;\r\n\t\treturn scale(yAccessor(d) && yAccessor(d).bottom);\r\n\t}\r\n\trender() {\r\n\t\tconst { areaClassName, className, opacity } = this.props;\r\n\t\tconst { stroke, fill } = this.props;\r\n\r\n\t\treturn (\r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\r\n\t\t);\r\n\t}\r\n}\r\n\r\nBollingerSeries.propTypes = {\r\n\tyAccessor: PropTypes.func.isRequired,\r\n\tclassName: PropTypes.string,\r\n\tareaClassName: PropTypes.string,\r\n\topacity: PropTypes.number,\r\n\ttype: PropTypes.string,\r\n\tstroke: PropTypes.shape({\r\n\t\ttop: PropTypes.string.isRequired,\r\n\t\tmiddle: PropTypes.string.isRequired,\r\n\t\tbottom: PropTypes.string.isRequired,\r\n\t}).isRequired,\r\n\tfill: PropTypes.string.isRequired,\r\n};\r\n\r\nBollingerSeries.defaultProps = {\r\n\tclassName: \"react-stockcharts-bollinger-band-series\",\r\n\tareaClassName: \"react-stockcharts-bollinger-band-series-area\",\r\n\topacity: 0.2\r\n};\r\n\r\nexport default BollingerSeries;\r\n","import React, { Component } from \"react\";\r\nimport PropTypes from \"prop-types\";\r\nimport LineSeries from \"./LineSeries\";\r\n// import AreaSeries from \"./AreaSeries\";\r\nimport StraightLine from \"./StraightLine\";\r\nimport SVGComponent from \"./SVGComponent\";\r\nimport {\r\n\tstrokeDashTypes,\r\n} from \"../utils\";\r\n\r\nclass RSISeries extends Component {\r\n\tconstructor(props) {\r\n\t\tsuper(props);\r\n\t\tthis.renderClip = this.renderClip.bind(this);\r\n\t\tthis.topAndBottomClip = this.topAndBottomClip.bind(this);\r\n\t\tthis.mainClip = this.mainClip.bind(this);\r\n\r\n\t\tconst id1 = String(Math.round(Math.random() * 10000 * 10000));\r\n\t\tthis.clipPathId1 = `rsi-clip-${id1}`;\r\n\r\n\t\tconst id2 = String(Math.round(Math.random() * 10000 * 10000));\r\n\t\tthis.clipPathId2 = `rsi-clip-${id2}`;\r\n\t}\r\n\ttopAndBottomClip(ctx, moreProps) {\r\n\t\tconst { chartConfig } = moreProps;\r\n\t\tconst { overSold, overBought } = this.props;\r\n\t\tconst { yScale, width } = chartConfig;\r\n\r\n\t\tctx.beginPath();\r\n\t\tctx.rect(\r\n\t\t\t0,\r\n\t\t\tyScale(overSold),\r\n\t\t\twidth,\r\n\t\t\tyScale(overBought) - yScale(overSold)\r\n\t\t);\r\n\t\tctx.clip();\r\n\t}\r\n\tmainClip(ctx, moreProps) {\r\n\t\tconst { chartConfig } = moreProps;\r\n\t\tconst { overSold, overBought } = this.props;\r\n\t\tconst { yScale, width, height } = chartConfig;\r\n\r\n\t\tctx.beginPath();\r\n\t\tctx.rect(\r\n\t\t\t0,\r\n\t\t\t0,\r\n\t\t\twidth,\r\n\t\t\tyScale(overSold)\r\n\t\t);\r\n\t\tctx.rect(\r\n\t\t\t0,\r\n\t\t\tyScale(overBought),\r\n\t\t\twidth,\r\n\t\t\theight - yScale(overBought)\r\n\t\t);\r\n\t\tctx.clip();\r\n\t}\r\n\trenderClip(moreProps) {\r\n\t\tconst { chartConfig } = moreProps;\r\n\t\tconst { overSold, overBought } = this.props;\r\n\t\tconst { yScale, width, height } = chartConfig;\r\n\r\n\t\treturn (\r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\r\n\t\t);\r\n\t}\r\n\trender() {\r\n\t\tconst { className, stroke, opacity, strokeDasharray, strokeWidth } = this.props;\r\n\t\tconst { yAccessor } = this.props;\r\n\t\tconst { overSold, middle, overBought } = this.props;\r\n\r\n\t\tconst style1 = { \"clipPath\": `url(#${this.clipPathId1})` };\r\n\t\tconst style2 = { \"clipPath\": `url(#${this.clipPathId2})` };\r\n\r\n\t\treturn (\r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t{this.renderClip}\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t yScale(middle)} */\r\n\t\t\t\t\tclassName={className}\r\n\t\t\t\t\tyAccessor={yAccessor}\r\n\t\t\t\t\tstroke={stroke.outsideThreshold || stroke.line}\r\n\t\t\t\t\tstrokeWidth={strokeWidth.outsideThreshold}\r\n\t\t\t\t\tstrokeDasharray={strokeDasharray.line}\r\n\t\t\t\t\t/* fill={stroke.outsideThreshold || stroke.line} */\r\n\t\t\t\t/>\r\n\t\t\t\r\n\t\t);\r\n\t}\r\n}\r\n\r\nRSISeries.propTypes = {\r\n\tclassName: PropTypes.string,\r\n\tyAccessor: PropTypes.func.isRequired,\r\n\tstroke: PropTypes.shape({\r\n\t\ttop: PropTypes.string.isRequired,\r\n\t\tmiddle: PropTypes.string.isRequired,\r\n\t\tbottom: PropTypes.string.isRequired,\r\n\t\toutsideThreshold: PropTypes.string.isRequired,\r\n\t\tinsideThreshold: PropTypes.string.isRequired,\r\n\t}).isRequired,\r\n\topacity: PropTypes.shape({\r\n\t\ttop: PropTypes.number.isRequired,\r\n\t\tmiddle: PropTypes.number.isRequired,\r\n\t\tbottom: PropTypes.number.isRequired,\r\n\t}).isRequired,\r\n\tstrokeDasharray: PropTypes.shape({\r\n\t\tline: PropTypes.oneOf(strokeDashTypes),\r\n\t\ttop: PropTypes.oneOf(strokeDashTypes),\r\n\t\tmiddle: PropTypes.oneOf(strokeDashTypes),\r\n\t\tbottom: PropTypes.oneOf(strokeDashTypes),\r\n\t}).isRequired,\r\n\tstrokeWidth: PropTypes.shape({\r\n\t\toutsideThreshold: PropTypes.number.isRequired,\r\n\t\tinsideThreshold: PropTypes.number.isRequired,\r\n\t\ttop: PropTypes.number.isRequired,\r\n\t\tmiddle: PropTypes.number.isRequired,\r\n\t\tbottom: PropTypes.number.isRequired,\r\n\t}).isRequired,\r\n\toverSold: PropTypes.number.isRequired,\r\n\tmiddle: PropTypes.number.isRequired,\r\n\toverBought: PropTypes.number.isRequired,\r\n};\r\n\r\nRSISeries.defaultProps = {\r\n\tclassName: \"react-stockcharts-rsi-series\",\r\n\tstroke: {\r\n\t\tline: \"#000000\",\r\n\t\ttop: \"#B8C2CC\",\r\n\t\tmiddle: \"#8795A1\",\r\n\t\tbottom: \"#B8C2CC\",\r\n\t\toutsideThreshold: \"#b300b3\",\r\n\t\tinsideThreshold: \"#ffccff\",\r\n\t},\r\n\topacity: {\r\n\t\ttop: 1,\r\n\t\tmiddle: 1,\r\n\t\tbottom: 1\r\n\t},\r\n\tstrokeDasharray: {\r\n\t\tline: \"Solid\",\r\n\t\ttop: \"ShortDash\",\r\n\t\tmiddle: \"ShortDash\",\r\n\t\tbottom: \"ShortDash\",\r\n\t},\r\n\tstrokeWidth: {\r\n\t\toutsideThreshold: 1,\r\n\t\tinsideThreshold: 1,\r\n\t\ttop: 1,\r\n\t\tmiddle: 1,\r\n\t\tbottom: 1,\r\n\t},\r\n\toverSold: 70,\r\n\tmiddle: 50,\r\n\toverBought: 30,\r\n};\r\n\r\nexport default RSISeries;\r\n","\r\n\r\nimport React, { Component } from \"react\";\r\nimport PropTypes from \"prop-types\";\r\n\r\nimport LineSeries from \"./LineSeries\";\r\nimport StraightLine from \"./StraightLine\";\r\n\r\nclass StochasticSeries extends Component {\r\n\tconstructor(props) {\r\n\t\tsuper(props);\r\n\t\tthis.yAccessorForD = this.yAccessorForD.bind(this);\r\n\t\tthis.yAccessorForK = this.yAccessorForK.bind(this);\r\n\t}\r\n\tyAccessorForD(d) {\r\n\t\tconst { yAccessor } = this.props;\r\n\t\treturn yAccessor(d) && yAccessor(d).D;\r\n\t}\r\n\tyAccessorForK(d) {\r\n\t\tconst { yAccessor } = this.props;\r\n\t\treturn yAccessor(d) && yAccessor(d).K;\r\n\t}\r\n\trender() {\r\n\t\tconst { className, stroke, refLineOpacity } = this.props;\r\n\t\tconst { overSold, middle, overBought } = this.props;\r\n\t\treturn (\r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\r\n\t\t);\r\n\t}\r\n}\r\n\r\nStochasticSeries.propTypes = {\r\n\tclassName: PropTypes.string,\r\n\tyAccessor: PropTypes.func.isRequired,\r\n\tstroke: PropTypes.shape({\r\n\t\ttop: PropTypes.string.isRequired,\r\n\t\tmiddle: PropTypes.string.isRequired,\r\n\t\tbottom: PropTypes.string.isRequired,\r\n\t\tdLine: PropTypes.string.isRequired,\r\n\t\tkLine: PropTypes.string.isRequired,\r\n\t}).isRequired,\r\n\toverSold: PropTypes.number.isRequired,\r\n\tmiddle: PropTypes.number.isRequired,\r\n\toverBought: PropTypes.number.isRequired,\r\n\trefLineOpacity: PropTypes.number.isRequired,\r\n};\r\n\r\nStochasticSeries.defaultProps = {\r\n\tclassName: \"react-stockcharts-stochastic-series\",\r\n\tstroke: {\r\n\t\ttop: \"#964B00\",\r\n\t\tmiddle: \"#000000\",\r\n\t\tbottom: \"#964B00\",\r\n\t\tdLine: \"#EA2BFF\",\r\n\t\tkLine: \"#74D400\",\r\n\t},\r\n\toverSold: 80,\r\n\tmiddle: 50,\r\n\toverBought: 20,\r\n\trefLineOpacity: 0.3,\r\n};\r\n\r\nexport default StochasticSeries;\r\n","\r\n\r\nimport { merge } from \"d3-array\";\r\n\r\nimport React, { Component } from \"react\";\r\nimport PropTypes from \"prop-types\";\r\n\r\nimport GenericChartComponent from \"../GenericChartComponent\";\r\nimport { getAxisCanvas } from \"../GenericComponent\";\r\n\r\nimport { drawOnCanvas2, getBarsSVG2 } from \"./StackedBarSeries\";\r\nimport { isDefined, isNotDefined, first, functor, plotDataLengthBarWidth } from \"../utils\";\r\n\r\nclass OverlayBarSeries extends Component {\r\n\tconstructor(props) {\r\n\t\tsuper(props);\r\n\t\tthis.renderSVG = this.renderSVG.bind(this);\r\n\t\tthis.drawOnCanvas = this.drawOnCanvas.bind(this);\r\n\t}\r\n\tdrawOnCanvas(ctx, moreProps) {\r\n\t\tconst { yAccessor } = this.props;\r\n\t\tconst bars = getBars(this.props, moreProps, yAccessor);\r\n\r\n\t\tdrawOnCanvas2(this.props, ctx, bars);\r\n\t}\r\n\trenderSVG(moreProps) {\r\n\t\tconst { yAccessor } = this.props;\r\n\r\n\t\tconst bars = getBars(this.props, moreProps, yAccessor);\r\n\t\treturn \r\n\t\t\t{getBarsSVG2(this.props, bars)}\r\n\t\t;\r\n\t}\r\n\trender() {\r\n\t\tconst { clip } = this.props;\r\n\r\n\t\treturn ;\r\n\t}\r\n}\r\n\r\nOverlayBarSeries.propTypes = {\r\n\tbaseAt: PropTypes.oneOfType([\r\n\t\tPropTypes.number,\r\n\t\tPropTypes.func,\r\n\t]).isRequired,\r\n\tdirection: PropTypes.oneOf([\"up\", \"down\"]).isRequired,\r\n\tstroke: PropTypes.bool.isRequired,\r\n\twidthRatio: PropTypes.number.isRequired,\r\n\topacity: PropTypes.number.isRequired,\r\n\tfill: PropTypes.oneOfType([\r\n\t\tPropTypes.func, PropTypes.string\r\n\t]).isRequired,\r\n\tclassName: PropTypes.oneOfType([\r\n\t\tPropTypes.func, PropTypes.string\r\n\t]).isRequired,\r\n\txAccessor: PropTypes.func,\r\n\tyAccessor: PropTypes.arrayOf(PropTypes.func),\r\n\txScale: PropTypes.func,\r\n\tyScale: PropTypes.func,\r\n\tplotData: PropTypes.array,\r\n\tclip: PropTypes.bool.isRequired,\r\n};\r\n\r\nOverlayBarSeries.defaultProps = {\r\n\tbaseAt: (xScale, yScale/* , d*/) => first(yScale.range()),\r\n\tdirection: \"up\",\r\n\tclassName: \"bar\",\r\n\tstroke: false,\r\n\tfill: \"#4682B4\",\r\n\topacity: 1,\r\n\twidthRatio: 0.5,\r\n\twidth: plotDataLengthBarWidth,\r\n\tclip: true,\r\n};\r\n\r\nfunction getBars(props, moreProps, yAccessor) {\r\n\tconst { xScale, xAccessor, chartConfig: { yScale }, plotData } = moreProps;\r\n\tconst { baseAt, className, fill, stroke } = props;\r\n\r\n\tconst getClassName = functor(className);\r\n\tconst getFill = functor(fill);\r\n\tconst getBase = functor(baseAt);\r\n\tconst widthFunctor = functor(props.width);\r\n\r\n\tconst width = widthFunctor(props, moreProps);\r\n\tconst offset = Math.floor(0.5 * width);\r\n\r\n\t// console.log(xScale.domain(), yScale.domain());\r\n\r\n\tconst bars = plotData\r\n\t\t.map(d => {\r\n\t\t\t// eslint-disable-next-line prefer-const\r\n\t\t\tlet innerBars = yAccessor.map((eachYAccessor, i) => {\r\n\t\t\t\tconst yValue = eachYAccessor(d);\r\n\t\t\t\tif (isNotDefined(yValue)) return undefined;\r\n\r\n\t\t\t\tconst xValue = xAccessor(d);\r\n\t\t\t\tconst x = Math.round(xScale(xValue)) - offset;\r\n\t\t\t\tconst y = yScale(yValue);\r\n\t\t\t\t// console.log(yValue, y, xValue, x)\r\n\t\t\t\treturn {\r\n\t\t\t\t\twidth: offset * 2,\r\n\t\t\t\t\tx: x,\r\n\t\t\t\t\ty: y,\r\n\t\t\t\t\tclassName: getClassName(d, i),\r\n\t\t\t\t\tstroke: stroke ? getFill(d, i) : \"none\",\r\n\t\t\t\t\tfill: getFill(d, i),\r\n\t\t\t\t\ti,\r\n\t\t\t\t};\r\n\t\t\t}).filter(yValue => isDefined(yValue));\r\n\r\n\t\t\tlet b = getBase(xScale, yScale, d);\r\n\t\t\tlet h;\r\n\t\t\tfor (let i = innerBars.length - 1; i >= 0; i--) {\r\n\t\t\t\th = b - innerBars[i].y;\r\n\t\t\t\tif (h < 0) {\r\n\t\t\t\t\tinnerBars[i].y = b;\r\n\t\t\t\t\th = -1 * h;\r\n\t\t\t\t}\r\n\t\t\t\tinnerBars[i].height = h;\r\n\t\t\t\tb = innerBars[i].y;\r\n\t\t\t}\r\n\t\t\treturn innerBars;\r\n\t\t});\r\n\r\n\treturn merge(bars);\r\n}\r\n\r\nexport default OverlayBarSeries;\r\n","\r\n\r\nimport React, { Component } from \"react\";\r\nimport PropTypes from \"prop-types\";\r\n\r\nimport OverlayBarSeries from \"./OverlayBarSeries\";\r\nimport StraightLine from \"./StraightLine\";\r\n\r\nclass ElderRaySeries extends Component {\r\n\tconstructor(props) {\r\n\t\tsuper(props);\r\n\t\tthis.fillForEachBar = this.fillForEachBar.bind(this);\r\n\t\tthis.yAccessorTop = this.yAccessorTop.bind(this);\r\n\t\tthis.yAccessorBullTop = this.yAccessorBullTop.bind(this);\r\n\t\tthis.yAccessorBearTop = this.yAccessorBearTop.bind(this);\r\n\t\tthis.yAccessorBullBottom = this.yAccessorBullBottom.bind(this);\r\n\t\tthis.yAccessorBearBottom = this.yAccessorBearBottom.bind(this);\r\n\t\tthis.yAccessorForBarBase = this.yAccessorForBarBase.bind(this);\r\n\t}\r\n\tyAccessorTop(d) {\r\n\t\tconst { yAccessor } = this.props;\r\n\t\treturn yAccessor(d) && Math.max(yAccessor(d).bullPower, 0);\r\n\t}\r\n\tyAccessorBullTop(d) {\r\n\t\tconst { yAccessor } = this.props;\r\n\t\treturn yAccessor(d) && (yAccessor(d).bullPower > 0 ? yAccessor(d).bullPower : undefined);\r\n\t}\r\n\tyAccessorBearTop(d) {\r\n\t\tconst { yAccessor } = this.props;\r\n\t\treturn yAccessor(d) && (yAccessor(d).bearPower > 0 ? yAccessor(d).bearPower : undefined);\r\n\t}\r\n\tyAccessorBullBottom(d) {\r\n\t\tconst { yAccessor } = this.props;\r\n\t\treturn yAccessor(d) && (yAccessor(d).bullPower < 0 ? 0 : undefined);\r\n\t}\r\n\tyAccessorBearBottom(d) {\r\n\t\tconst { yAccessor } = this.props;\r\n\t\treturn yAccessor(d) && (yAccessor(d).bullPower < 0\r\n\t\t\t\t|| yAccessor(d).bullPower * yAccessor(d).bearPower < 0 // bullPower is +ve and bearPower is -ve\r\n\t\t\t? Math.min(0, yAccessor(d).bullPower) : undefined);\r\n\t}\r\n\tyAccessorForBarBase(xScale, yScale, d) {\r\n\t\tconst { yAccessor } = this.props;\r\n\t\tconst y = yAccessor(d) && Math.min(yAccessor(d).bearPower, 0);\r\n\t\treturn yScale(y);\r\n\t}\r\n\tfillForEachBar(d, yAccessorNumber) {\r\n\t\tconst { bullPowerFill, bearPowerFill } = this.props;\r\n\t\treturn yAccessorNumber % 2 === 0 ? bullPowerFill : bearPowerFill;\r\n\t}\r\n\trender() {\r\n\t\tconst { className, opacity, stroke,\r\n\t\t\tstraightLineStroke,\r\n\t\t\tstraightLineOpacity,\r\n\t\t\twidthRatio\r\n\t\t} = this.props;\r\n\t\tconst { clip } = this.props;\r\n\r\n\t\treturn (\r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\r\n\t\t);\r\n\t}\r\n}\r\n\r\nElderRaySeries.propTypes = {\r\n\tclassName: PropTypes.string,\r\n\tyAccessor: PropTypes.func,\r\n\topacity: PropTypes.number,\r\n\tstroke: PropTypes.bool,\r\n\tbullPowerFill: PropTypes.string,\r\n\tbearPowerFill: PropTypes.string,\r\n\tstraightLineStroke: PropTypes.string,\r\n\tstraightLineOpacity: PropTypes.number,\r\n\twidthRatio: PropTypes.number,\r\n\tclip: PropTypes.bool.isRequired,\r\n};\r\n\r\nElderRaySeries.defaultProps = {\r\n\tclassName: \"react-stockcharts-elderray-series\",\r\n\tstraightLineStroke: \"#000000\",\r\n\tstraightLineOpacity: 0.3,\r\n\topacity: 0.5,\r\n\tstroke: true,\r\n\tbullPowerFill: \"#6BA583\",\r\n\tbearPowerFill: \"#FF0000\",\r\n\twidthRatio: 0.8,\r\n\tclip: true,\r\n};\r\n\r\nexport default ElderRaySeries;\r\n","\r\n\r\nimport React, { Component } from \"react\";\r\nimport PropTypes from \"prop-types\";\r\n\r\nimport { ascending, descending, sum, max, merge, zip, histogram as d3Histogram } from \"d3-array\";\r\nimport { nest } from \"d3-collection\";\r\nimport { scaleLinear } from \"d3-scale\";\r\n\r\nimport GenericChartComponent from \"../GenericChartComponent\";\r\nimport { getAxisCanvas } from \"../GenericComponent\";\r\n\r\nimport { head, last, hexToRGBA, accumulatingWindow, identity, functor } from \"../utils\";\r\n\r\nclass VolumeProfileSeries extends Component {\r\n\tconstructor(props) {\r\n\t\tsuper(props);\r\n\t\tthis.renderSVG = this.renderSVG.bind(this);\r\n\t\tthis.drawOnCanvas = this.drawOnCanvas.bind(this);\r\n\t}\r\n\tdrawOnCanvas(ctx, moreProps) {\r\n\t\tconst { xAccessor, width } = moreProps;\r\n\t\tconst { rects, sessionBg } = helper(this.props, moreProps, xAccessor, width);\r\n\r\n\t\tdrawOnCanvas(ctx, this.props, rects, sessionBg);\r\n\t}\r\n\trender() {\r\n\t\treturn ;\r\n\t}\r\n\trenderSVG(moreProps) {\r\n\t\tconst { className, opacity } = this.props;\r\n\t\tconst { showSessionBackground, sessionBackGround, sessionBackGroundOpacity } = this.props;\r\n\r\n\t\tconst { xAccessor, width } = moreProps;\r\n\t\tconst { rects, sessionBg } = helper(this.props, moreProps, xAccessor, width);\r\n\r\n\t\tconst sessionBgSvg = showSessionBackground\r\n\t\t\t? sessionBg.map((d, idx) => )\r\n\t\t\t: null;\r\n\r\n\t\treturn \r\n\t\t\t{sessionBgSvg}\r\n\t\t\t{rects.map((d, i) => \r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t)}\r\n\t\t;\r\n\t}\r\n}\r\n\r\nVolumeProfileSeries.propTypes = {\r\n\tclassName: PropTypes.string,\r\n\topacity: PropTypes.number,\r\n\tshowSessionBackground: PropTypes.bool,\r\n\tsessionBackGround: PropTypes.string,\r\n\tsessionBackGroundOpacity: PropTypes.number,\r\n};\r\n\r\n\r\nVolumeProfileSeries.defaultProps = {\r\n\tclassName: \"line \",\r\n\tbins: 20,\r\n\topacity: 0.5,\r\n\tmaxProfileWidthPercent: 50,\r\n\tfill: ({ type }) => type === \"up\" ? \"#6BA583\" : \"#FF0000\",\r\n\tstroke: \"#FFFFFF\",\r\n\tshowSessionBackground: false,\r\n\tsessionBackGround: \"#4682B4\",\r\n\tsessionBackGroundOpacity: 0.3,\r\n\r\n\tsource: d => d.close,\r\n\tvolume: d => d.volume,\r\n\tabsoluteChange: d => d.absoluteChange,\r\n\tbySession: false,\r\n\t/* eslint-disable no-unused-vars */\r\n\tsessionStart: ({ d, i, plotData }) => i > 0 && plotData[i - 1].date.getMonth() !== d.date.getMonth(),\r\n\t/* eslint-enable no-unused-vars */\r\n\torient: \"left\",\r\n\t// // fill: ({ type }) => { var c = type === \"up\" ? \"#6BA583\" : \"#FF0000\"; console.log(type, c); return c },\r\n\t// stroke: ({ type }) => type === \"up\" ? \"#6BA583\" : \"#FF0000\",\r\n\t// stroke: \"none\",\r\n\tpartialStartOK: true,\r\n\tpartialEndOK: true,\r\n};\r\n\r\nfunction helper(props, moreProps, xAccessor, width) {\r\n\tconst { xScale: realXScale, chartConfig: { yScale }, plotData } = moreProps;\r\n\r\n\tconst { sessionStart, bySession, partialStartOK, partialEndOK } = props;\r\n\tconst { bins, maxProfileWidthPercent, source, volume, absoluteChange, orient, fill, stroke } = props;\r\n\r\n\tconst sessionBuilder = accumulatingWindow()\r\n\t\t.discardTillStart(!partialStartOK)\r\n\t\t.discardTillEnd(!partialEndOK)\r\n\t\t.accumulateTill((d, i) => {\r\n\t\t\treturn sessionStart({ d, i, ...moreProps });\r\n\t\t})\r\n\t\t.accumulator(identity);\r\n\r\n\tconst dx = plotData.length > 1 ? realXScale(xAccessor(plotData[1])) - realXScale(xAccessor(head(plotData))) : 0;\r\n\r\n\tconst sessions = bySession ? sessionBuilder(plotData) : [plotData];\r\n\r\n\tconst allRects = sessions.map(session => {\r\n\r\n\t\tconst begin = bySession ? realXScale(xAccessor(head(session))) : 0;\r\n\t\tconst finish = bySession ? realXScale(xAccessor(last(session))) : width;\r\n\t\tconst sessionWidth = finish - begin + dx;\r\n\r\n\t\t// console.log(session)\r\n\r\n\t\t/* var histogram = d3.layout.histogram()\r\n\t\t\t\t.value(source)\r\n\t\t\t\t.bins(bins);*/\r\n\r\n\t\tconst histogram2 = d3Histogram()\r\n\t\t\t// .domain(xScale.domain())\r\n\t\t\t.value(source)\r\n\t\t\t.thresholds(bins);\r\n\r\n\t\t// console.log(bins, histogram(session))\r\n\t\t// console.log(bins, histogram2(session))\r\n\t\tconst rollup = nest()\r\n\t\t\t.key(d => d.direction)\r\n\t\t\t.sortKeys(orient === \"right\" ? descending : ascending)\r\n\t\t\t.rollup(leaves => sum(leaves, d => d.volume));\r\n\r\n\t\tconst values = histogram2(session);\r\n\t\t// console.log(\"values\", values)\r\n\r\n\t\tconst volumeInBins = values\r\n\t\t\t.map(arr => arr.map(d => absoluteChange(d) > 0 ? { direction: \"up\", volume: volume(d) } : { direction: \"down\", volume: volume(d) }))\r\n\t\t\t.map(arr => rollup.entries(arr));\r\n\r\n\t\t// console.log(\"volumeInBins\", volumeInBins)\r\n\t\tconst volumeValues = volumeInBins\r\n\t\t\t.map(each => sum(each.map(d => d.value)));\r\n\r\n\t\t// console.log(\"volumeValues\", volumeValues)\r\n\t\tconst base = xScale => head(xScale.range());\r\n\r\n\t\tconst [start, end] = orient === \"right\"\r\n\t\t\t? [begin, begin + sessionWidth * maxProfileWidthPercent / 100]\r\n\t\t\t: [finish, finish - sessionWidth * (100 - maxProfileWidthPercent) / 100];\r\n\r\n\t\tconst xScale = scaleLinear()\r\n\t\t\t.domain([0, max(volumeValues)])\r\n\t\t\t.range([start, end]);\r\n\r\n\t\t// console.log(xScale.domain())\r\n\r\n\t\tconst totalVolumes = volumeInBins.map(volumes => {\r\n\r\n\t\t\tconst totalVolume = sum(volumes, d => d.value);\r\n\t\t\tconst totalVolumeX = xScale(totalVolume);\r\n\t\t\tconst width = base(xScale) - totalVolumeX;\r\n\t\t\tconst x = width < 0 ? totalVolumeX + width : totalVolumeX;\r\n\r\n\t\t\tconst ws = volumes.map(d => {\r\n\t\t\t\treturn {\r\n\t\t\t\t\ttype: d.key,\r\n\t\t\t\t\twidth: d.value * Math.abs(width) / totalVolume,\r\n\t\t\t\t};\r\n\t\t\t});\r\n\r\n\t\t\treturn { x, ws, totalVolumeX };\r\n\t\t});\r\n\t\t// console.log(\"totalVolumes\", totalVolumes)\r\n\r\n\t\tconst rects = zip(values, totalVolumes)\r\n\t\t\t.map(([d, { x, ws }]) => {\r\n\t\t\t\tconst w1 = ws[0] || { type: \"up\", width: 0 };\r\n\t\t\t\tconst w2 = ws[1] || { type: \"down\", width: 0 };\r\n\r\n\t\t\t\treturn {\r\n\t\t\t\t\t// y: yScale(d.x + d.dx),\r\n\t\t\t\t\ty: yScale(d.x1),\r\n\t\t\t\t\t// height: yScale(d.x - d.dx) - yScale(d.x),\r\n\t\t\t\t\theight: yScale(d.x1) - yScale(d.x0),\r\n\t\t\t\t\tx,\r\n\t\t\t\t\twidth,\r\n\t\t\t\t\tw1: w1.width,\r\n\t\t\t\t\tw2: w2.width,\r\n\t\t\t\t\tstroke1: functor(stroke)(w1),\r\n\t\t\t\t\tstroke2: functor(stroke)(w2),\r\n\t\t\t\t\tfill1: functor(fill)(w1),\r\n\t\t\t\t\tfill2: functor(fill)(w2),\r\n\t\t\t\t};\r\n\t\t\t});\r\n\r\n\t\t// console.log(\"rects\", rects)\r\n\r\n\t\tconst sessionBg = {\r\n\t\t\tx: begin,\r\n\t\t\ty: last(rects).y,\r\n\t\t\theight: head(rects).y - last(rects).y + head(rects).height,\r\n\t\t\twidth: sessionWidth,\r\n\t\t};\r\n\r\n\t\treturn { rects, sessionBg };\r\n\t});\r\n\r\n\treturn {\r\n\t\trects: merge(allRects.map(d => d.rects)),\r\n\t\tsessionBg: allRects.map(d => d.sessionBg),\r\n\t};\r\n}\r\n\r\n\r\nfunction drawOnCanvas(ctx, props, rects, sessionBg) {\r\n\tconst { opacity, sessionBackGround, sessionBackGroundOpacity, showSessionBackground } = props;\r\n\r\n\t// var { rects, sessionBg } = helper(props, xScale, yScale, plotData);\r\n\r\n\tif (showSessionBackground) {\r\n\t\tctx.fillStyle = hexToRGBA(sessionBackGround, sessionBackGroundOpacity);\r\n\r\n\t\tsessionBg.forEach(each => {\r\n\t\t\tconst { x, y, height, width } = each;\r\n\r\n\t\t\tctx.beginPath();\r\n\t\t\tctx.rect(x, y, width, height);\r\n\t\t\tctx.closePath();\r\n\t\t\tctx.fill();\r\n\t\t});\r\n\t}\r\n\r\n\trects.forEach(each => {\r\n\t\tconst { x, y, height, w1, w2, stroke1, stroke2, fill1, fill2 } = each;\r\n\r\n\r\n\t\tif (w1 > 0) {\r\n\t\t\tctx.fillStyle = hexToRGBA(fill1, opacity);\r\n\t\t\tif (stroke1 !== \"none\") ctx.strokeStyle = stroke1;\r\n\r\n\t\t\tctx.beginPath();\r\n\t\t\tctx.rect(x, y, w1, height);\r\n\t\t\tctx.closePath();\r\n\t\t\tctx.fill();\r\n\r\n\t\t\tif (stroke1 !== \"none\") ctx.stroke();\r\n\t\t}\r\n\r\n\t\tif (w2 > 0) {\r\n\t\t\tctx.fillStyle = hexToRGBA(fill2, opacity);\r\n\t\t\tif (stroke2 !== \"none\") ctx.strokeStyle = stroke2;\r\n\r\n\t\t\tctx.beginPath();\r\n\t\t\tctx.rect(x + w1, y, w2, height);\r\n\t\t\tctx.closePath();\r\n\t\t\tctx.fill();\r\n\r\n\t\t\tif (stroke2 !== \"none\") ctx.stroke();\r\n\t\t}\r\n\r\n\t});\r\n}\r\n\r\nexport default VolumeProfileSeries;\r\n","\r\n\r\n/*\r\n\r\nTaken from https://github.com/ScottLogic/d3fc/blob/master/src/indicator/algorithm/calculator/slidingWindow.js\r\n\r\nThe MIT License (MIT)\r\n\r\nCopyright (c) 2014-2015 Scott Logic Ltd.\r\n\r\nPermission is hereby granted, free of charge, to any person obtaining a copy\r\nof this software and associated documentation files (the \"Software\"), to deal\r\nin the Software without restriction, including without limitation the rights\r\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\r\ncopies of the Software, and to permit persons to whom the Software is\r\nfurnished to do so, subject to the following conditions:\r\n\r\nThe above copyright notice and this permission notice shall be included in\r\nall copies or substantial portions of the Software.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\r\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\r\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\r\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\r\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\r\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\r\nTHE SOFTWARE.\r\n\r\n*/\r\n\r\nimport noop from \"./noop\";\r\nimport identity from \"./identity\";\r\nimport { functor } from \"./index\";\r\n\r\nexport default function() {\r\n\r\n\tlet accumulateTill = functor(false),\r\n\t\taccumulator = noop,\r\n\t\tvalue = identity,\r\n\t\tdiscardTillStart = false,\r\n\t\tdiscardTillEnd = false;\r\n\r\n\t// eslint-disable-next-line prefer-const\r\n\tlet accumulatingWindow = function(data) {\r\n\t\tlet accumulatedWindow = discardTillStart ? undefined : [];\r\n\t\tconst response = [];\r\n\t\tlet accumulatorIdx = 0;\r\n\t\tlet i = 0;\r\n\t\tfor (i = 0; i < data.length; i++) {\r\n\t\t\tconst d = data[i];\r\n\t\t\t// console.log(d, accumulateTill(d));\r\n\t\t\tif (accumulateTill(d, i, (accumulatedWindow || []))) {\r\n\t\t\t\tif (accumulatedWindow && accumulatedWindow.length > 0) response.push(accumulator(accumulatedWindow, i, accumulatorIdx++));\r\n\t\t\t\taccumulatedWindow = [value(d)];\r\n\t\t\t} else {\r\n\t\t\t\tif (accumulatedWindow) accumulatedWindow.push(value(d));\r\n\t\t\t}\r\n\t\t}\r\n\t\tif (!discardTillEnd) response.push(accumulator(accumulatedWindow, i, accumulatorIdx));\r\n\t\treturn response;\r\n\t};\r\n\r\n\taccumulatingWindow.accumulateTill = function(x) {\r\n\t\tif (!arguments.length) {\r\n\t\t\treturn accumulateTill;\r\n\t\t}\r\n\t\taccumulateTill = functor(x);\r\n\t\treturn accumulatingWindow;\r\n\t};\r\n\taccumulatingWindow.accumulator = function(x) {\r\n\t\tif (!arguments.length) {\r\n\t\t\treturn accumulator;\r\n\t\t}\r\n\t\taccumulator = x;\r\n\t\treturn accumulatingWindow;\r\n\t};\r\n\taccumulatingWindow.value = function(x) {\r\n\t\tif (!arguments.length) {\r\n\t\t\treturn value;\r\n\t\t}\r\n\t\tvalue = x;\r\n\t\treturn accumulatingWindow;\r\n\t};\r\n\taccumulatingWindow.discardTillStart = function(x) {\r\n\t\tif (!arguments.length) {\r\n\t\t\treturn discardTillStart;\r\n\t\t}\r\n\t\tdiscardTillStart = x;\r\n\t\treturn accumulatingWindow;\r\n\t};\r\n\taccumulatingWindow.discardTillEnd = function(x) {\r\n\t\tif (!arguments.length) {\r\n\t\t\treturn discardTillEnd;\r\n\t\t}\r\n\t\tdiscardTillEnd = x;\r\n\t\treturn accumulatingWindow;\r\n\t};\r\n\treturn accumulatingWindow;\r\n}","\r\n\r\nimport React, { Component } from \"react\";\r\nimport PropTypes from \"prop-types\";\r\n\r\nimport GenericChartComponent from \"../GenericChartComponent\";\r\nimport { getAxisCanvas, getMouseCanvas } from \"../GenericComponent\";\r\n\r\nimport { isDefined, first, last, hexToRGBA } from \"../utils\";\r\n\r\nclass SARSeries extends Component {\r\n\tconstructor(props) {\r\n\t\tsuper(props);\r\n\t\tthis.renderSVG = this.renderSVG.bind(this);\r\n\t\tthis.drawOnCanvas = this.drawOnCanvas.bind(this);\r\n\t\tthis.isHover = this.isHover.bind(this);\r\n\t}\r\n\tisHover(moreProps) {\r\n\t\tconst { mouseXY, currentItem, chartConfig: { yScale } } = moreProps;\r\n\t\tconst { yAccessor } = this.props;\r\n\t\tconst y = mouseXY[1];\r\n\t\tconst currentY = yScale(yAccessor(currentItem));\r\n\t\treturn y < currentY + 5 && y > currentY - 5;\r\n\t}\r\n\tdrawOnCanvas(ctx, moreProps) {\r\n\t\tconst { yAccessor, fill, opacity } = this.props;\r\n\t\tconst { xAccessor, plotData, xScale, chartConfig: { yScale }, hovering } = moreProps;\r\n\r\n\t\tconst width = xScale(xAccessor(last(plotData))) - xScale(xAccessor(first(plotData)));\r\n\r\n\t\tconst d = (width / plotData.length) * 0.5 / 2;\r\n\t\tconst radius = Math.min(2, Math.max(0.5, d)) + (hovering ? 2 : 0);\r\n\r\n\t\tplotData.forEach(each => {\r\n\t\t\tconst centerX = xScale(xAccessor(each));\r\n\t\t\tconst centerY = yScale(yAccessor(each));\r\n\t\t\tconst color = yAccessor(each) > each.close\r\n\t\t\t\t? fill.falling\r\n\t\t\t\t: fill.rising;\r\n\r\n\t\t\tctx.fillStyle = hexToRGBA(color, opacity);\r\n\t\t\tctx.strokeStyle = color;\r\n\r\n\t\t\tctx.beginPath();\r\n\t\t\tctx.ellipse(centerX, centerY, radius, radius, 0, 0, 2 * Math.PI);\r\n\t\t\tctx.closePath();\r\n\t\t\tctx.fill();\r\n\t\t\tctx.stroke();\r\n\t\t});\r\n\t}\r\n\trenderSVG(moreProps) {\r\n\t\tconst { className, yAccessor } = this.props;\r\n\t\tconst { xAccessor, plotData, xScale, chartConfig: { yScale } } = moreProps;\r\n\t\t// console.log(moreProps);\r\n\r\n\t\treturn \r\n\t\t\t{plotData\r\n\t\t\t\t.filter(each => isDefined(yAccessor(each)))\r\n\t\t\t\t.map((each, idx) => {\r\n\t\t\t\t\treturn ;\r\n\t\t\t\t})}\r\n\t\t;\r\n\t}\r\n\r\n\trender() {\r\n\t\tconst { highlightOnHover } = this.props;\r\n\t\tconst hoverProps = highlightOnHover\r\n\t\t\t? {\r\n\t\t\t\tisHover: this.isHover,\r\n\t\t\t\tdrawOn: [\"mousemove\", \"pan\"],\r\n\t\t\t\tcanvasToDraw: getMouseCanvas\r\n\t\t\t}\r\n\t\t\t: {\r\n\t\t\t\tdrawOn: [\"pan\"],\r\n\t\t\t\tcanvasToDraw: getAxisCanvas\r\n\t\t\t};\r\n\r\n\t\treturn ;\r\n\t}\r\n}\r\n\r\nSARSeries.propTypes = {\r\n\tclassName: PropTypes.string,\r\n\tfill: PropTypes.object.isRequired,\r\n\tyAccessor: PropTypes.func.isRequired,\r\n\topacity: PropTypes.number.isRequired,\r\n\tonClick: PropTypes.func,\r\n\tonDoubleClick: PropTypes.func,\r\n\tonContextMenu: PropTypes.func,\r\n\thighlightOnHover: PropTypes.bool,\r\n};\r\n\r\nSARSeries.defaultProps = {\r\n\tclassName: \"react-stockcharts-sar\",\r\n\tfill: {\r\n\t\tfalling: \"#4682B4\",\r\n\t\trising: \"#15EC2E\",\r\n\t},\r\n\thighlightOnHover: true,\r\n\topacity: 0.2,\r\n\tonClick: function(e) { console.log(\"Click\", e); },\r\n\tonDoubleClick: function(e) { console.log(\"Double Click\", e); },\r\n\tonContextMenu: function(e) { console.log(\"Right Click\", e); },\r\n};\r\n\r\nexport default SARSeries;\r\n","\r\n\r\nimport React from \"react\";\r\n\r\nimport { hexToRGBA, isDefined, getStrokeDasharray } from \"../utils\";\r\n\r\n/* eslint-disable react/prop-types */\r\nexport function renderSVG(props) {\r\n\tconst { className } = props;\r\n\r\n\tconst edge = helper(props);\r\n\tif (edge === null) return null;\r\n\tlet line, coordinateBase, coordinate;\r\n\r\n\tif (isDefined(edge.line)) {\r\n\t\tline = (\r\n\t\t\t\r\n\t\t);\r\n\t}\r\n\tif (isDefined(edge.coordinateBase)) {\r\n\t\tconst { rectWidth, rectHeight, arrowWidth } = edge.coordinateBase;\r\n\r\n\t\tconst path =\r\n\t\t\tedge.orient === \"left\"\r\n\t\t\t\t? `M0,0L0,${rectHeight}L${rectWidth},${rectHeight}L${rectWidth +\r\n\t\t\t\t\t arrowWidth},10L${rectWidth},0L0,0L0,0`\r\n\t\t\t\t: `M0,${arrowWidth}L${arrowWidth},${rectHeight}L${rectWidth +\r\n\t\t\t\t\t arrowWidth},${rectHeight}L${rectWidth +\r\n\t\t\t\t\t arrowWidth},0L${arrowWidth},0L0,${arrowWidth}`;\r\n\r\n\t\tcoordinateBase =\r\n\t\t\tedge.orient === \"left\" || edge.orient === \"right\" ? (\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t) : (\r\n\t\t\t\t\r\n\t\t\t);\r\n\r\n\t\tcoordinate = (\r\n\t\t\t\r\n\t\t\t\t{edge.coordinate.displayCoordinate}\r\n\t\t\t\r\n\t\t);\r\n\t}\r\n\treturn (\r\n\t\t\r\n\t\t\t{line}\r\n\t\t\t{coordinateBase}\r\n\t\t\t{coordinate}\r\n\t\t\r\n\t);\r\n}\r\n/* eslint-enable react/prop-types */\r\n\r\nfunction helper(props) {\r\n\tconst {\r\n\t\tcoordinate: displayCoordinate,\r\n\t\tshow,\r\n\t\ttype,\r\n\t\torient,\r\n\t\tedgeAt,\r\n\t\thideLine,\r\n\t\tlineStrokeDasharray\r\n\t} = props;\r\n\tconst {\r\n\t\tfill,\r\n\t\topacity,\r\n\t\tfontFamily,\r\n\t\tfontSize,\r\n\t\ttextFill,\r\n\t\tlineStroke,\r\n\t\tlineOpacity\r\n\t} = props;\r\n\tconst { stroke, strokeOpacity, strokeWidth } = props;\r\n\tconst { arrowWidth, rectWidth, rectHeight, rectRadius } = props;\r\n\tconst { x1, y1, x2, y2, dx } = props;\r\n\r\n\tif (!show) return null;\r\n\r\n\tlet coordinateBase, coordinate;\r\n\tif (isDefined(displayCoordinate)) {\r\n\t\tconst textAnchor = \"middle\"; // TODO: Below it is necessary to implement logic for the possibility of alignment from the right or from the left.\r\n\r\n\t\tlet edgeXRect, edgeYRect, edgeXText, edgeYText;\r\n\r\n\t\tif (type === \"horizontal\") {\r\n\t\t\tedgeXRect =\r\n\t\t\t\tdx + (orient === \"right\" ? edgeAt + 1 : edgeAt - rectWidth - 1);\r\n\t\t\tedgeYRect = y1 - rectHeight / 2 - strokeWidth;\r\n\t\t\tedgeXText =\r\n\t\t\t\tdx +\r\n\t\t\t\t(orient === \"right\"\r\n\t\t\t\t\t? edgeAt + rectWidth / 2\r\n\t\t\t\t\t: edgeAt - rectWidth / 2);\r\n\t\t\tedgeYText = y1;\r\n\t\t} else {\r\n\t\t\tconst dy = orient === \"bottom\" ? strokeWidth - 1 : -strokeWidth + 1;\r\n\t\t\tedgeXRect = x1 - rectWidth / 2;\r\n\t\t\tedgeYRect =\r\n\t\t\t\t(orient === \"bottom\" ? edgeAt : edgeAt - rectHeight) + dy;\r\n\t\t\tedgeXText = x1;\r\n\t\t\tedgeYText =\r\n\t\t\t\t(orient === \"bottom\"\r\n\t\t\t\t\t? edgeAt + rectHeight / 2\r\n\t\t\t\t\t: edgeAt - rectHeight / 2) + dy;\r\n\t\t}\r\n\r\n\t\tcoordinateBase = {\r\n\t\t\tedgeXRect,\r\n\t\t\tedgeYRect,\r\n\t\t\trectHeight: rectHeight + strokeWidth,\r\n\t\t\trectWidth,\r\n\t\t\trectRadius,\r\n\t\t\tfill,\r\n\t\t\topacity,\r\n\t\t\tarrowWidth,\r\n\t\t\tstroke,\r\n\t\t\tstrokeOpacity,\r\n\t\t\tstrokeWidth\r\n\t\t};\r\n\t\tcoordinate = {\r\n\t\t\tedgeXText,\r\n\t\t\tedgeYText,\r\n\t\t\ttextAnchor,\r\n\t\t\tfontFamily,\r\n\t\t\tfontSize,\r\n\t\t\ttextFill,\r\n\t\t\tdisplayCoordinate\r\n\t\t};\r\n\t}\r\n\r\n\tconst line = hideLine\r\n\t\t? undefined\r\n\t\t: {\r\n\t\t\topacity: lineOpacity,\r\n\t\t\tstroke: lineStroke,\r\n\t\t\tstrokeDasharray: lineStrokeDasharray,\r\n\t\t\tx1,\r\n\t\t\ty1,\r\n\t\t\tx2,\r\n\t\t\ty2\r\n\t\t};\r\n\r\n\treturn {\r\n\t\tcoordinateBase,\r\n\t\tcoordinate,\r\n\t\tline,\r\n\t\torient\r\n\t};\r\n}\r\n\r\nexport function drawOnCanvas(ctx, props) {\r\n\tconst { fontSize, fontFamily } = props;\r\n\r\n\tctx.font = `${fontSize}px ${fontFamily}`;\r\n\tctx.textBaseline = \"middle\";\r\n\tconst width = Math.round(ctx.measureText(props.coordinate).width + 10);\r\n\r\n\tconst edge = helper({ ...props, rectWidth: width });\r\n\r\n\tif (edge === null) return;\r\n\r\n\tif (isDefined(edge.line)) {\r\n\t\tconst dashArray = getStrokeDasharray(edge.line.strokeDasharray)\r\n\t\t\t.split(\",\")\r\n\t\t\t.map(d => +d);\r\n\t\tctx.setLineDash(dashArray);\r\n\t\tctx.strokeStyle = hexToRGBA(edge.line.stroke, edge.line.opacity);\r\n\t\tctx.lineWidth = 1;\r\n\t\tctx.beginPath();\r\n\t\tctx.moveTo(edge.line.x1, edge.line.y1);\r\n\t\tctx.lineTo(edge.line.x2, edge.line.y2);\r\n\t\tctx.stroke();\r\n\t}\r\n\r\n\tctx.setLineDash([]);\r\n\tif (isDefined(edge.coordinateBase)) {\r\n\t\tconst {\r\n\t\t\trectWidth,\r\n\t\t\trectHeight,\r\n\t\t\trectRadius,\r\n\t\t\tarrowWidth\r\n\t\t} = edge.coordinateBase;\r\n\r\n\t\tctx.fillStyle = hexToRGBA(\r\n\t\t\tedge.coordinateBase.fill,\r\n\t\t\tedge.coordinateBase.opacity\r\n\t\t);\r\n\t\tif (isDefined(edge.coordinateBase.stroke)) {\r\n\t\t\tctx.strokeStyle = hexToRGBA(\r\n\t\t\t\tedge.coordinateBase.stroke,\r\n\t\t\t\tedge.coordinateBase.strokeOpacity\r\n\t\t\t);\r\n\t\t\tctx.lineWidth = edge.coordinateBase.strokeWidth;\r\n\t\t}\r\n\r\n\t\tlet x = edge.coordinateBase.edgeXRect;\r\n\t\tconst y = edge.coordinateBase.edgeYRect;\r\n\t\tconst halfHeight = rectHeight / 2;\r\n\r\n\t\tctx.beginPath();\r\n\t\tif (edge.orient === \"right\") {\r\n\t\t\tx -= arrowWidth;\r\n\t\t\tctx.moveTo(x, y + halfHeight);\r\n\t\t\tctx.lineTo(x + arrowWidth, y);\r\n\t\t\tctx.lineTo(x + rectWidth + arrowWidth, y);\r\n\t\t\tctx.lineTo(x + rectWidth + arrowWidth, y + rectHeight);\r\n\t\t\tctx.lineTo(x + arrowWidth, y + rectHeight);\r\n\t\t\tctx.closePath();\r\n\t\t} else if (edge.orient === \"left\") {\r\n\t\t\t// x += arrowWidth;\r\n\t\t\tctx.moveTo(x, y);\r\n\t\t\tctx.lineTo(x + rectWidth, y);\r\n\t\t\tctx.lineTo(x + rectWidth + arrowWidth, y + halfHeight);\r\n\t\t\tctx.lineTo(x + rectWidth, y + rectHeight);\r\n\t\t\tctx.lineTo(x, y + rectHeight);\r\n\t\t\tctx.closePath();\r\n\t\t} else {\r\n\t\t\t// console.error(x, y, rectWidth, rectHeight)\r\n\t\t\tif (rectRadius) {\r\n\t\t\t\troundRect(ctx, x, y, rectWidth, rectHeight, 3);\r\n\t\t\t} else {\r\n\t\t\t\tctx.rect(x, y, rectWidth, rectHeight);\r\n\t\t\t}\r\n\t\t}\r\n\t\tctx.fill();\r\n\r\n\t\tif (isDefined(edge.coordinateBase.stroke)) {\r\n\t\t\tctx.stroke();\r\n\t\t}\r\n\r\n\t\tctx.fillStyle = edge.coordinate.textFill;\r\n\t\tctx.textAlign =\r\n\t\t\tedge.coordinate.textAnchor === \"middle\"\r\n\t\t\t\t? \"center\"\r\n\t\t\t\t: edge.coordinate.textAnchor;\r\n\t\tctx.fillText(\r\n\t\t\tedge.coordinate.displayCoordinate,\r\n\t\t\tedge.coordinate.edgeXText,\r\n\t\t\tedge.coordinate.edgeYText\r\n\t\t);\r\n\t}\r\n}\r\n\r\nfunction roundRect(ctx, x, y, width, height, radius) {\r\n\tctx.beginPath();\r\n\tctx.moveTo(x + radius, y);\r\n\tctx.lineTo(x + width - radius, y);\r\n\tctx.quadraticCurveTo(x + width, y, x + width, y + radius);\r\n\tctx.lineTo(x + width, y + height - radius);\r\n\tctx.quadraticCurveTo(x + width, y + height, x + width - radius, y + height);\r\n\tctx.lineTo(x + radius, y + height);\r\n\tctx.quadraticCurveTo(x, y + height, x, y + height - radius);\r\n\tctx.lineTo(x, y + radius);\r\n\tctx.quadraticCurveTo(x, y, x + radius, y);\r\n\tctx.closePath();\r\n}\r\n\r\n// export default EdgeCoordinate;\r\n","\r\n\r\nimport React, { Component } from \"react\";\r\nimport PropTypes from \"prop-types\";\r\nimport { format } from \"d3-format\";\r\n\r\nimport { drawOnCanvas, renderSVG } from \"./EdgeCoordinateV3\";\r\nimport GenericChartComponent from \"../GenericChartComponent\";\r\nimport { getAxisCanvas } from \"../GenericComponent\";\r\n\r\nimport { first, last, isDefined, functor, noop, strokeDashTypes } from \"../utils\";\r\n\r\nclass EdgeIndicator extends Component {\r\n\tconstructor(props) {\r\n\t\tsuper(props);\r\n\t\tthis.renderSVG = this.renderSVG.bind(this);\r\n\t\tthis.drawOnCanvas = this.drawOnCanvas.bind(this);\r\n\t}\r\n\tdrawOnCanvas(ctx, moreProps) {\r\n\t\tconst edge = helper(this.props, moreProps);\r\n\t\tconst props = {\r\n\t\t\t...this.props,\r\n\t\t\t...edge,\r\n\t\t};\r\n\t\tdrawOnCanvas(ctx, props);\r\n\t}\r\n\trenderSVG(moreProps) {\r\n\t\tconst edge = helper(this.props, moreProps);\r\n\t\tconst props = {\r\n\t\t\t...this.props,\r\n\t\t\t...edge,\r\n\t\t};\r\n\t\treturn renderSVG(props);\r\n\t}\r\n\trender() {\r\n\t\treturn ;\r\n\t}\r\n}\r\n\r\nEdgeIndicator.propTypes = {\r\n\tyAccessor: PropTypes.func,\r\n\r\n\ttype: PropTypes.oneOf([\"horizontal\"]),\r\n\tclassName: PropTypes.string,\r\n\tfill: PropTypes.oneOfType([\r\n\t\tPropTypes.string,\r\n\t\tPropTypes.func,\r\n\t]),\r\n\tlineStroke: PropTypes.oneOfType([\r\n\t\tPropTypes.string,\r\n\t\tPropTypes.func,\r\n\t]),\r\n\ttextFill: PropTypes.oneOfType([\r\n\t\tPropTypes.string,\r\n\t\tPropTypes.func,\r\n\t]),\r\n\titemType: PropTypes.oneOf([\"first\", \"last\"]).isRequired,\r\n\torient: PropTypes.oneOf([\"left\", \"right\"]),\r\n\tedgeAt: PropTypes.oneOf([\"left\", \"right\"]),\r\n\tdisplayFormat: PropTypes.func,\r\n\trectHeight: PropTypes.number,\r\n\trectWidth: PropTypes.number,\r\n\tarrowWidth: PropTypes.number,\r\n\tlineStrokeDasharray: PropTypes.oneOf(strokeDashTypes),\r\n};\r\n\r\nEdgeIndicator.defaultProps = {\r\n\tclassName: \"react-stockcharts-edgeindicator\",\r\n\r\n\ttype: \"horizontal\",\r\n\torient: \"left\",\r\n\tedgeAt: \"left\",\r\n\ttextFill: \"#FFFFFF\",\r\n\tdisplayFormat: format(\".2f\"),\r\n\tyAxisPad: 0,\r\n\trectHeight: 20,\r\n\trectWidth: 50,\r\n\tarrowWidth: 10,\r\n\tfontFamily: \"Helvetica Neue, Helvetica, Arial, sans-serif\",\r\n\tfontSize: 13,\r\n\tdx: 0,\r\n\thideLine: false,\r\n\tfill: \"#8a8a8a\",\r\n\topacity: 1,\r\n\r\n\tstroke: noop,\r\n\tstrokeOpacity: 1,\r\n\tstrokeWidth: 3,\r\n\tlineStroke: \"#000000\",\r\n\tlineOpacity: 0.3,\r\n\tlineStrokeDasharray: \"ShortDash\",\r\n};\r\n\r\nfunction helper(props, moreProps) {\r\n\tconst { itemType, yAccessor } = props;\r\n\tconst { plotData } = moreProps;\r\n\r\n\tconst item = itemType === \"first\"\r\n\t\t? first(plotData, yAccessor)\r\n\t\t: last(plotData, yAccessor);\r\n\r\n\t// var currentItem = ChartDataUtil.getCurrentItemForChartNew(currentItems, forChart);\r\n\tconst edge = isDefined(item)\r\n\t\t? getEdge(props, moreProps, item)\r\n\t\t: null;\r\n\r\n\treturn edge;\r\n}\r\n\r\nfunction getEdge(props, moreProps, item) {\r\n\tconst { type: edgeType, displayFormat, edgeAt, yAxisPad, orient, lineStroke } = props;\r\n\r\n\tconst { yAccessor, fill, textFill, rectHeight, rectWidth, arrowWidth } = props;\r\n\tconst { fontFamily, fontSize } = props;\r\n\tconst { stroke } = props;\r\n\r\n\tconst { xScale, chartConfig: { yScale }, xAccessor, width } = moreProps;\r\n\r\n\tconst yValue = yAccessor(item),\r\n\t\txValue = xAccessor(item);\r\n\r\n\tconst x1 = Math.round(xScale(xValue)),\r\n\t\ty1 = Math.round(yScale(yValue));\r\n\r\n\tconst [left, right] = [0, width];\r\n\tconst edgeX = edgeAt === \"left\"\r\n\t\t? left - yAxisPad\r\n\t\t: right + yAxisPad;\r\n\r\n\treturn {\r\n\t\t// ...props,\r\n\t\tcoordinate: displayFormat(yValue),\r\n\t\tshow: true,\r\n\t\ttype: edgeType,\r\n\t\torient,\r\n\t\tedgeAt: edgeX,\r\n\t\tfill: functor(fill)(item),\r\n\t\tlineStroke: functor(lineStroke)(item),\r\n\t\tstroke: functor(stroke)(item),\r\n\t\tfontFamily, fontSize,\r\n\t\ttextFill: functor(textFill)(item),\r\n\t\trectHeight, rectWidth, arrowWidth,\r\n\t\tx1,\r\n\t\ty1,\r\n\t\tx2: right,\r\n\t\ty2: y1,\r\n\t};\r\n}\r\n\r\nexport default EdgeIndicator;\r\n","\r\n\r\nimport React, { Component } from \"react\";\r\nimport PropTypes from \"prop-types\";\r\n\r\nimport GenericChartComponent from \"../GenericChartComponent\";\r\nimport { isNotDefined } from \"../utils\";\r\nimport { getMouseCanvas } from \"../GenericComponent\";\r\n\r\nclass CurrentCoordinate extends Component {\r\n\tconstructor(props) {\r\n\t\tsuper(props);\r\n\t\tthis.renderSVG = this.renderSVG.bind(this);\r\n\t\tthis.drawOnCanvas = this.drawOnCanvas.bind(this);\r\n\t}\r\n\tdrawOnCanvas(ctx, moreProps) {\r\n\t\tconst circle = helper(this.props, moreProps);\r\n\t\tif (!circle) return null;\r\n\r\n\t\tctx.fillStyle = circle.fill;\r\n\t\tctx.beginPath();\r\n\t\tctx.arc(circle.x, circle.y, circle.r, 0, 2 * Math.PI, false);\r\n\t\tctx.fill();\r\n\t}\r\n\trenderSVG(moreProps) {\r\n\t\tconst { className } = this.props;\r\n\r\n\t\tconst circle = helper(this.props, moreProps);\r\n\t\tif (!circle) return null;\r\n\r\n\t\tconst fillColor = circle.fill instanceof Function ? circle.fill(moreProps.currentItem) : circle.fill;\r\n\r\n\t\treturn (\r\n\t\t\t\r\n\t\t);\r\n\t}\r\n\trender() {\r\n\t\treturn ;\r\n\t}\r\n}\r\n\r\nCurrentCoordinate.propTypes = {\r\n\tyAccessor: PropTypes.func,\r\n\tr: PropTypes.number.isRequired,\r\n\tclassName: PropTypes.string,\r\n};\r\n\r\n\r\nCurrentCoordinate.defaultProps = {\r\n\tr: 3,\r\n\tclassName: \"react-stockcharts-current-coordinate\",\r\n};\r\n\r\nfunction helper(props, moreProps) {\r\n\tconst { fill, yAccessor, r } = props;\r\n\r\n\tconst { show, xScale, chartConfig: { yScale }, currentItem, xAccessor } = moreProps;\r\n\r\n\t// console.log(show);\r\n\tif (!show || isNotDefined(currentItem)) return null;\r\n\r\n\tconst xValue = xAccessor(currentItem);\r\n\tconst yValue = yAccessor(currentItem);\r\n\r\n\tif (isNotDefined(yValue)) return null;\r\n\r\n\t// console.log(chartConfig);\r\n\tconst x = Math.round(xScale(xValue));\r\n\tconst y = Math.round(yScale(yValue));\r\n\r\n\treturn { x, y, r, fill };\r\n}\r\n\r\nexport default CurrentCoordinate;\r\n","\r\n\r\nimport React, { Component } from \"react\";\r\nimport PropTypes from \"prop-types\";\r\n\r\nimport { drawOnCanvas, renderSVG } from \"./EdgeCoordinateV3\";\r\nimport GenericChartComponent from \"../GenericChartComponent\";\r\nimport { getMouseCanvas } from \"../GenericComponent\";\r\n\r\nimport { isNotDefined } from \"../utils\";\r\n\r\nclass MouseCoordinateX extends Component {\r\n\tconstructor(props) {\r\n\t\tsuper(props);\r\n\t\tthis.renderSVG = this.renderSVG.bind(this);\r\n\t\tthis.drawOnCanvas = this.drawOnCanvas.bind(this);\r\n\t}\r\n\tdrawOnCanvas(ctx, moreProps) {\r\n\t\tconst props = helper(this.props, moreProps);\r\n\t\tif (isNotDefined(props)) return null;\r\n\r\n\t\tdrawOnCanvas(ctx, props);\r\n\t}\r\n\trenderSVG(moreProps) {\r\n\t\tconst props = helper(this.props, moreProps);\r\n\t\tif (isNotDefined(props)) return null;\r\n\r\n\t\treturn renderSVG(props);\r\n\t}\r\n\trender() {\r\n\t\treturn ;\r\n\t}\r\n}\r\n\r\nMouseCoordinateX.propTypes = {\r\n\tdisplayFormat: PropTypes.func.isRequired,\r\n\tyAxisPad: PropTypes.number,\r\n\trectWidth: PropTypes.number,\r\n\trectHeight: PropTypes.number,\r\n\torient: PropTypes.oneOf([\"bottom\", \"top\", \"left\", \"right\"]),\r\n\tat: PropTypes.oneOf([\"bottom\", \"top\", \"left\", \"right\"]),\r\n\tfill: PropTypes.string,\r\n\topacity: PropTypes.number,\r\n\tfontFamily: PropTypes.string,\r\n\tfontSize: PropTypes.number,\r\n\ttextFill: PropTypes.string,\r\n\tsnapX: PropTypes.bool\r\n};\r\n\r\nfunction customX(props, moreProps) {\r\n\tconst { xScale, xAccessor, currentItem, mouseXY } = moreProps;\r\n\tconst { snapX } = props;\r\n\tconst x = snapX\r\n\t\t? xScale(xAccessor(currentItem))\r\n\t\t: mouseXY[0];\r\n\r\n\tconst { displayXAccessor } = moreProps;\r\n\tconst { displayFormat } = props;\r\n\tconst coordinate = snapX\r\n\t\t? displayFormat(displayXAccessor(currentItem))\r\n\t\t: displayFormat(xScale.invert(x));\r\n\treturn { x, coordinate };\r\n}\r\n\r\nMouseCoordinateX.defaultProps = {\r\n\tyAxisPad: 0,\r\n\trectWidth: 80,\r\n\trectHeight: 20,\r\n\r\n\t// rectRadius: 5,\r\n\t// stroke: \"#684F1D\",\r\n\tstrokeOpacity: 1,\r\n\tstrokeWidth: 1,\r\n\r\n\torient: \"bottom\",\r\n\tat: \"bottom\",\r\n\r\n\tfill: \"#525252\",\r\n\topacity: 1,\r\n\tfontFamily: \"Helvetica Neue, Helvetica, Arial, sans-serif\",\r\n\tfontSize: 13,\r\n\ttextFill: \"#FFFFFF\",\r\n\tsnapX: true,\r\n\tcustomX: customX,\r\n};\r\n\r\nfunction helper(props, moreProps) {\r\n\tconst { show, currentItem } = moreProps;\r\n\tconst { chartConfig: { height } } = moreProps;\r\n\r\n\tif (isNotDefined(currentItem)) return null;\r\n\r\n\tconst { customX } = props;\r\n\r\n\tconst { orient, at } = props;\r\n\tconst { stroke, strokeOpacity, strokeWidth } = props;\r\n\tconst { rectRadius, rectWidth, rectHeight } = props;\r\n\tconst { fill, opacity, fontFamily, fontSize, textFill } = props;\r\n\r\n\tconst edgeAt = (at === \"bottom\")\r\n\t\t? height\r\n\t\t: 0;\r\n\r\n\tconst {\r\n\t\tx,\r\n\t\tcoordinate\r\n\t } = customX(props, moreProps);\r\n\r\n\tconst type = \"vertical\";\r\n\tconst y1 = 0, y2 = height;\r\n\tconst hideLine = true;\r\n\r\n\tconst coordinateProps = {\r\n\t\tcoordinate,\r\n\t\tshow,\r\n\t\ttype,\r\n\t\torient,\r\n\t\tedgeAt,\r\n\t\thideLine,\r\n\t\tfill, opacity, fontFamily, fontSize, textFill,\r\n\t\tstroke, strokeOpacity, strokeWidth,\r\n\t\trectWidth,\r\n\t\trectHeight,\r\n\t\trectRadius,\r\n\t\tarrowWidth: 0,\r\n\t\tx1: x,\r\n\t\tx2: x,\r\n\t\ty1,\r\n\t\ty2\r\n\t};\r\n\treturn coordinateProps;\r\n}\r\n\r\nexport default MouseCoordinateX;\r\n","\r\n\r\nimport React, { Component } from \"react\";\r\nimport PropTypes from \"prop-types\";\r\n\r\nimport GenericChartComponent from \"../GenericChartComponent\";\r\nimport { getMouseCanvas } from \"../GenericComponent\";\r\n\r\n\r\nconst propTypes = {\r\n\txPosition: PropTypes.func,\r\n\tdrawCoordinate: PropTypes.func,\r\n\tdisplayFormat: PropTypes.func.isRequired,\r\n\tat: PropTypes.oneOf([\"bottom\", \"top\"]),\r\n\torient: PropTypes.oneOf([\"bottom\", \"top\"]),\r\n\ttext: PropTypes.shape({\r\n\t\tfontStyle: PropTypes.string,\r\n\t\tfontWeight: PropTypes.string,\r\n\t\tfontFamily: PropTypes.string,\r\n\t\tfontSize: PropTypes.number,\r\n\t\tfill: PropTypes.oneOfType([PropTypes.func, PropTypes.string]),\r\n\t}),\r\n\tbg: PropTypes.shape({\r\n\t\tfill: PropTypes.oneOfType([PropTypes.func, PropTypes.string]),\r\n\t\tstroke: PropTypes.string,\r\n\t\tstrokeWidth: PropTypes.number,\r\n\t\tpadding: PropTypes.shape({\r\n\t\t\tleft: PropTypes.number,\r\n\t\t\tright: PropTypes.number,\r\n\t\t\ttop: PropTypes.number,\r\n\t\t\tbottom: PropTypes.number\r\n\t\t}),\r\n\t}),\r\n\tdx: PropTypes.number,\r\n\tdy: PropTypes.number\r\n};\r\n\r\nconst defaultProps = {\r\n\txPosition,\r\n\tdrawCoordinate,\r\n\tat: \"bottom\",\r\n\torient: \"bottom\",\r\n\r\n\ttext: {\r\n\t\tfontStyle: \"\",\r\n\t\tfontWeight: \"\",\r\n\t\tfontFamily: \"Helvetica Neue, Helvetica, Arial, sans-serif\",\r\n\t\tfontSize: 13,\r\n\t\tfill: \"rgb(35, 35, 35)\"\r\n\t},\r\n\tbg: {\r\n\t\tfill: \"rgb(255, 255, 255)\",\r\n\t\tstroke: \"rgb(35, 35, 35)\",\r\n\t\tstrokeWidth: 1,\r\n\t\tpadding: {\r\n\t\t\tleft: 7,\r\n\t\t\tright: 7,\r\n\t\t\ttop: 4,\r\n\t\t\tbottom: 4\r\n\t\t}\r\n\t},\r\n\tdx: 7,\r\n\tdy: 7\r\n};\r\n\r\nclass MouseCoordinateXV2 extends Component {\r\n\tconstructor(props) {\r\n\t\tsuper(props);\r\n\t\tthis.drawOnCanvas = this.drawOnCanvas.bind(this);\r\n\t}\r\n\tdrawOnCanvas(ctx, moreProps) {\r\n\t\tconst { show, currentItem } = moreProps;\r\n\t\tconst { drawCoordinate } = this.props;\r\n\r\n\t\tif (show && currentItem != null) {\r\n\t\t\tconst shape = getXCoordinateInfo(ctx, this.props, moreProps);\r\n\t\t\tdrawCoordinate(ctx, shape, this.props, moreProps);\r\n\t\t}\r\n\t}\r\n\trender() {\r\n\t\treturn (\r\n\t\t\t\r\n\t\t);\r\n\t}\r\n}\r\n\r\nMouseCoordinateXV2.defaultProps = defaultProps;\r\nMouseCoordinateXV2.propTypes = propTypes;\r\n\r\n\r\nfunction xPosition(props, moreProps) {\r\n\tconst { currentItem, xAccessor } = moreProps;\r\n\treturn xAccessor(currentItem);\r\n}\r\nfunction getXCoordinateInfo(ctx, props, moreProps) {\r\n\tconst { xPosition } = props;\r\n\tconst xValue = xPosition(props, moreProps);\r\n\tconst { at, displayFormat } = props;\r\n\tconst { text } = props;\r\n\tconst { xScale, chartConfig: { height } } = moreProps;\r\n\tctx.font = `${text.fontStyle} ${text.fontWeight} ${text.fontSize}px ${text.fontFamily}`;\r\n\r\n\tconst t = displayFormat(xValue);\r\n\tconst textWidth = ctx.measureText(t).width;\r\n\r\n\tconst y = at === \"bottom\" ? height : 0;\r\n\tconst x = Math.round(xScale(xValue));\r\n\r\n\treturn {\r\n\t\tx,\r\n\t\ty,\r\n\t\ttextWidth,\r\n\t\ttext: t\r\n\t};\r\n}\r\n\r\nfunction drawCoordinate(\r\n\tctx,\r\n\tshape,\r\n\tprops,\r\n\tmoreProps\r\n) {\r\n\tconst { x, y, textWidth, text } = shape;\r\n\tconst { orient, dx, dy } = props;\r\n\r\n\tconst {\r\n\t\tbg: { padding, fill, stroke, strokeWidth },\r\n\t\ttext: { fontSize, fill: textFill }\r\n\t} = props;\r\n\r\n\tctx.textAlign = \"center\";\r\n\r\n\tconst sign = orient === \"top\" ? -1 : 1;\r\n\tconst halfWidth = Math.round(textWidth / 2 + padding.right);\r\n\tconst height = Math.round(fontSize + padding.top + padding.bottom);\r\n\r\n\tctx.strokeStyle = typeof stroke === \"function\" ? stroke(moreProps, ctx) : stroke;\r\n\tctx.fillStyle = typeof fill === \"function\" ? fill(moreProps, ctx) : fill;\r\n\tctx.lineWidth = typeof strokeWidth === \"function\" ? strokeWidth(moreProps) : strokeWidth;\r\n\r\n\tctx.beginPath();\r\n\r\n\tctx.moveTo(x, y);\r\n\tctx.lineTo(x + dx, y + sign * dy);\r\n\tctx.lineTo(x + halfWidth, y + sign * dy);\r\n\tctx.lineTo(x + halfWidth, y + sign * (dy + height));\r\n\tctx.lineTo(x - halfWidth, y + sign * (dy + height));\r\n\tctx.lineTo(x - halfWidth, y + sign * dy);\r\n\tctx.lineTo(x - dx, y + sign * dy);\r\n\tctx.closePath();\r\n\tctx.stroke();\r\n\tctx.fill();\r\n\r\n\tctx.beginPath();\r\n\tctx.fillStyle = typeof textFill === \"function\" ? textFill(moreProps, ctx) : textFill;\r\n\r\n\tctx.textBaseline = orient === \"top\" ? \"alphabetic\" : \"hanging\";\r\n\tconst pad = orient === \"top\" ? padding.bottom : padding.top;\r\n\r\n\tctx.fillText(text, x, y + sign * (dy + pad + 2));\r\n}\r\n\r\nexport default MouseCoordinateXV2;","\r\n\r\nimport React, { Component } from \"react\";\r\nimport PropTypes from \"prop-types\";\r\n\r\nimport { drawOnCanvas, renderSVG } from \"./EdgeCoordinateV3\";\r\nimport GenericChartComponent from \"../GenericChartComponent\";\r\nimport { getMouseCanvas } from \"../GenericComponent\";\r\n\r\nimport { isNotDefined } from \"../utils\";\r\n\r\nclass MouseCoordinateY extends Component {\r\n\tconstructor(props) {\r\n\t\tsuper(props);\r\n\t\tthis.renderSVG = this.renderSVG.bind(this);\r\n\t\tthis.drawOnCanvas = this.drawOnCanvas.bind(this);\r\n\t}\r\n\tdrawOnCanvas(ctx, moreProps) {\r\n\t\tconst props = helper(this.props, moreProps);\r\n\t\tif (isNotDefined(props)) return null;\r\n\r\n\t\tdrawOnCanvas(ctx, props);\r\n\t}\r\n\trenderSVG(moreProps) {\r\n\t\tconst props = helper(this.props, moreProps);\r\n\t\tif (isNotDefined(props)) return null;\r\n\r\n\t\treturn renderSVG(props);\r\n\t}\r\n\trender() {\r\n\t\treturn ;\r\n\t}\r\n}\r\n\r\nMouseCoordinateY.propTypes = {\r\n\tdisplayFormat: PropTypes.func.isRequired,\r\n\tyAxisPad: PropTypes.number,\r\n\trectWidth: PropTypes.number,\r\n\trectHeight: PropTypes.number,\r\n\torient: PropTypes.oneOf([\"bottom\", \"top\", \"left\", \"right\"]),\r\n\tat: PropTypes.oneOf([\"bottom\", \"top\", \"left\", \"right\"]),\r\n\tdx: PropTypes.number,\r\n\tfill: PropTypes.string,\r\n\topacity: PropTypes.number,\r\n\tfontFamily: PropTypes.string,\r\n\tfontSize: PropTypes.number,\r\n\ttextFill: PropTypes.string,\r\n};\r\n\r\nMouseCoordinateY.defaultProps = {\r\n\tyAxisPad: 0,\r\n\trectWidth: 50,\r\n\trectHeight: 20,\r\n\torient: \"left\",\r\n\tat: \"left\",\r\n\tdx: 0,\r\n\tarrowWidth: 10,\r\n\tfill: \"#525252\",\r\n\topacity: 1,\r\n\tfontFamily: \"Helvetica Neue, Helvetica, Arial, sans-serif\",\r\n\tfontSize: 13,\r\n\ttextFill: \"#FFFFFF\",\r\n\r\n\t// stroke: \"#684F1D\",\r\n\tstrokeOpacity: 1,\r\n\tstrokeWidth: 1,\r\n};\r\n\r\nfunction helper(props, moreProps) {\r\n\tconst { chartId } = moreProps;\r\n\tconst { currentCharts, mouseXY } = moreProps;\r\n\r\n\tif (isNotDefined(mouseXY)) return null;\r\n\tif (currentCharts.indexOf(chartId) < 0) return null;\r\n\r\n\tconst { show } = moreProps;\r\n\tif (!show) return null;\r\n\r\n\tconst y = mouseXY[1];\r\n\tconst { chartConfig: { yScale } } = moreProps;\r\n\tconst { displayFormat } = props;\r\n\r\n\tconst coordinate = displayFormat(yScale.invert(y));\r\n\r\n\treturn getYCoordinate(y, coordinate, props, moreProps);\r\n}\r\n\r\nexport function getYCoordinate(y, displayValue, props, moreProps) {\r\n\tconst { width } = moreProps;\r\n\r\n\tconst { orient, at, rectWidth, rectHeight, dx } = props;\r\n\tconst { fill, opacity, fontFamily, fontSize, textFill, arrowWidth } = props;\r\n\tconst { stroke, strokeOpacity, strokeWidth } = props;\r\n\r\n\tconst x1 = 0, x2 = width;\r\n\tconst edgeAt = (at === \"right\")\r\n\t\t? width\r\n\t\t: 0;\r\n\r\n\tconst type = \"horizontal\";\r\n\tconst hideLine = true;\r\n\r\n\tconst coordinateProps = {\r\n\t\tcoordinate: displayValue,\r\n\t\tshow: true,\r\n\t\ttype,\r\n\t\torient,\r\n\t\tedgeAt,\r\n\t\thideLine,\r\n\t\tfill,\r\n\t\topacity,\r\n\r\n\t\tfontFamily,\r\n\t\tfontSize,\r\n\t\ttextFill,\r\n\r\n\t\tstroke,\r\n\t\tstrokeOpacity,\r\n\t\tstrokeWidth,\r\n\r\n\t\trectWidth,\r\n\t\trectHeight,\r\n\r\n\t\tarrowWidth,\r\n\t\tdx,\r\n\t\tx1,\r\n\t\tx2,\r\n\t\ty1: y,\r\n\t\ty2: y,\r\n\t};\r\n\treturn coordinateProps;\r\n}\r\n\r\nexport default MouseCoordinateY;\r\n","\r\n\r\nimport React, { Component } from \"react\";\r\nimport PropTypes from \"prop-types\";\r\nimport GenericComponent, { getMouseCanvas } from \"../GenericComponent\";\r\n\r\nimport { hexToRGBA, isDefined, isNotDefined, strokeDashTypes, getStrokeDasharray } from \"../utils\";\r\n\r\nclass CrossHairCursor extends Component {\r\n\tconstructor(props) {\r\n\t\tsuper(props);\r\n\t\tthis.renderSVG = this.renderSVG.bind(this);\r\n\t\tthis.drawOnCanvas = this.drawOnCanvas.bind(this);\r\n\t}\r\n\tdrawOnCanvas(ctx, moreProps) {\r\n\t\tconst lines = helper(this.props, moreProps);\r\n\r\n\t\tif (isDefined(lines)) {\r\n\r\n\t\t\tconst { margin, ratio } = this.context;\r\n\t\t\tconst originX = 0.5 * ratio + margin.left;\r\n\t\t\tconst originY = 0.5 * ratio + margin.top;\r\n\r\n\t\t\tctx.save();\r\n\t\t\tctx.setTransform(1, 0, 0, 1, 0, 0);\r\n\t\t\tctx.scale(ratio, ratio);\r\n\r\n\t\t\tctx.translate(originX, originY);\r\n\r\n\t\t\tlines.forEach(line => {\r\n\t\t\t\tconst dashArray = getStrokeDasharray(line.strokeDasharray).split(\",\").map(d => +d);\r\n\r\n\t\t\t\tctx.strokeStyle = hexToRGBA(line.stroke, line.opacity);\r\n\t\t\t\tctx.setLineDash(dashArray);\r\n\t\t\t\tctx.beginPath();\r\n\t\t\t\tctx.moveTo(line.x1, line.y1);\r\n\t\t\t\tctx.lineTo(line.x2, line.y2);\r\n\t\t\t\tctx.stroke();\r\n\t\t\t});\r\n\r\n\t\t\tctx.restore();\r\n\t\t}\r\n\t}\r\n\trenderSVG(moreProps) {\r\n\t\tconst { className } = this.props;\r\n\t\tconst lines = helper(this.props, moreProps);\r\n\r\n\t\tif (isNotDefined(lines)) return null;\r\n\r\n\t\treturn (\r\n\t\t\t\r\n\t\t\t\t{lines.map(({ strokeDasharray, ...rest }, idx) =>\r\n\t\t\t\t\t)}\r\n\t\t\t\r\n\t\t);\r\n\t}\r\n\trender() {\r\n\t\treturn ;\r\n\t}\r\n}\r\n\r\nCrossHairCursor.propTypes = {\r\n\tclassName: PropTypes.string,\r\n\tstrokeDasharray: PropTypes.oneOf(strokeDashTypes),\r\n};\r\n\r\nCrossHairCursor.contextTypes = {\r\n\tmargin: PropTypes.object.isRequired,\r\n\tratio: PropTypes.number.isRequired,\r\n\t// xScale for getting update event upon pan end, this is needed to get past the PureComponent shouldComponentUpdate\r\n\t// xScale: PropTypes.func.isRequired,\r\n};\r\n\r\nfunction customX(props, moreProps) {\r\n\tconst { xScale, xAccessor, currentItem, mouseXY } = moreProps;\r\n\tconst { snapX } = props;\r\n\tconst x = snapX\r\n\t\t? Math.round(xScale(xAccessor(currentItem)))\r\n\t\t: mouseXY[0];\r\n\treturn x;\r\n}\r\n\r\n\r\nCrossHairCursor.defaultProps = {\r\n\tstroke: \"#000000\",\r\n\topacity: 0.3,\r\n\tstrokeDasharray: \"ShortDash\",\r\n\tsnapX: true,\r\n\tcustomX,\r\n};\r\n\r\nfunction helper(props, moreProps) {\r\n\tconst {\r\n\t\tmouseXY, currentItem, show, height, width\r\n\t} = moreProps;\r\n\r\n\tconst { customX, stroke, opacity, strokeDasharray } = props;\r\n\r\n\tif (!show || isNotDefined(currentItem)) return null;\r\n\r\n\tconst line1 = {\r\n\t\tx1: 0,\r\n\t\tx2: width,\r\n\t\ty1: mouseXY[1],\r\n\t\ty2: mouseXY[1],\r\n\t\tstroke, strokeDasharray, opacity,\r\n\t};\r\n\tconst x = customX(props, moreProps);\r\n\r\n\tconst line2 = {\r\n\t\tx1: x,\r\n\t\tx2: x,\r\n\t\ty1: 0,\r\n\t\ty2: height,\r\n\t\tstroke, strokeDasharray, opacity,\r\n\t};\r\n\treturn [line1, line2];\r\n}\r\n\r\nexport default CrossHairCursor;\r\n","\r\n\r\nimport React, { Component } from \"react\";\r\nimport PropTypes from \"prop-types\";\r\n\r\nimport { drawOnCanvas, renderSVG } from \"./EdgeCoordinateV3\";\r\nimport GenericChartComponent from \"../GenericChartComponent\";\r\nimport { getAxisCanvas } from \"../GenericComponent\";\r\nimport { functor, strokeDashTypes } from \"../utils\";\r\n\r\nclass PriceCoordinate extends Component {\r\n\tconstructor(props) {\r\n\t\tsuper(props);\r\n\t\tthis.renderSVG = this.renderSVG.bind(this);\r\n\t\tthis.drawOnCanvas = this.drawOnCanvas.bind(this);\r\n\t}\r\n\tdrawOnCanvas(ctx, moreProps) {\r\n\t\tconst props = helper(this.props, moreProps);\r\n\t\tdrawOnCanvas(ctx, props);\r\n\t}\r\n\trenderSVG(moreProps) {\r\n\t\tconst props = helper(this.props, moreProps);\r\n\t\treturn renderSVG(props);\r\n\t}\r\n\trender() {\r\n\t\treturn ;\r\n\t}\r\n}\r\n\r\nPriceCoordinate.propTypes = {\r\n\tdisplayFormat: PropTypes.func.isRequired,\r\n\tyAxisPad: PropTypes.number,\r\n\trectWidth: PropTypes.number,\r\n\trectHeight: PropTypes.number,\r\n\torient: PropTypes.oneOf([\"bottom\", \"top\", \"left\", \"right\"]),\r\n\tat: PropTypes.oneOf([\"bottom\", \"top\", \"left\", \"right\"]),\r\n\tprice: PropTypes.number,\r\n\tdx: PropTypes.number,\r\n\tarrowWidth: PropTypes.number,\r\n\topacity: PropTypes.number,\r\n\tlineOpacity: PropTypes.number,\r\n\tlineStroke: PropTypes.string,\r\n\tfontFamily: PropTypes.string,\r\n\tfontSize: PropTypes.number,\r\n\tfill: PropTypes.oneOfType([\r\n\t\tPropTypes.string,\r\n\t\tPropTypes.func,\r\n\t]),\r\n\tstrokeDasharray: PropTypes.oneOf(strokeDashTypes),\r\n\tstroke: PropTypes.string,\r\n\tstrokeOpacity: PropTypes.number,\r\n\tstrokeWidth: PropTypes.number,\r\n\ttextFill: PropTypes.oneOfType([\r\n\t\tPropTypes.string,\r\n\t\tPropTypes.func,\r\n\t]),\r\n};\r\n\r\nPriceCoordinate.defaultProps = {\r\n\tyAxisPad: 0,\r\n\trectWidth: 50,\r\n\trectHeight: 20,\r\n\torient: \"left\",\r\n\tat: \"left\",\r\n\tprice: 0,\r\n\tdx: 0,\r\n\tarrowWidth: 0,\r\n\tfill: \"#BAB8b8\",\r\n\topacity: 1,\r\n\tlineOpacity: 0.2,\r\n\tlineStroke: \"#000000\",\r\n\tfontFamily: \"Helvetica Neue, Helvetica, Arial, sans-serif\",\r\n\tfontSize: 13,\r\n\ttextFill: \"#FFFFFF\",\r\n\tstrokeOpacity: 1,\r\n\tstrokeWidth: 1,\r\n\tstrokeDasharray: \"Solid\",\r\n};\r\n\r\nfunction helper(props, moreProps) {\r\n\tconst { width } = moreProps;\r\n\tconst { chartConfig: { yScale } } = moreProps;\r\n\tconst [lowerYValue, upperYValue] = yScale.domain();\r\n\r\n\tconst { price, stroke, strokeDasharray, strokeOpacity, strokeWidth } = props;\r\n\tconst { orient, at, rectWidth, rectHeight, displayFormat, dx } = props;\r\n\tconst { fill, opacity, fontFamily, fontSize, textFill, arrowWidth, lineOpacity, lineStroke } = props;\r\n\r\n\tconst x1 = 0, x2 = width;\r\n\tconst edgeAt = (at === \"right\")\r\n\t\t? width\r\n\t\t: 0;\r\n\r\n\tconst type = \"horizontal\";\r\n\r\n\tconst y = yScale(price);\r\n\tconst show = (price <= upperYValue && price >= lowerYValue);\r\n\r\n\tconst coordinate = displayFormat(yScale.invert(y));\r\n\tconst hideLine = false;\r\n\r\n\tconst coordinateProps = {\r\n\t\tcoordinate,\r\n\t\tshow,\r\n\t\ttype,\r\n\t\torient,\r\n\t\tedgeAt,\r\n\t\thideLine,\r\n\t\tlineOpacity,\r\n\t\tlineStroke,\r\n\t\tlineStrokeDasharray: strokeDasharray,\r\n\t\tstroke,\r\n\t\tstrokeOpacity,\r\n\t\tstrokeWidth,\r\n\t\tfill: functor(fill)(price),\r\n\t\ttextFill: functor(textFill)(price),\r\n\t\topacity, fontFamily, fontSize,\r\n\t\trectWidth,\r\n\t\trectHeight,\r\n\t\tarrowWidth,\r\n\t\tdx,\r\n\t\tx1,\r\n\t\tx2,\r\n\t\ty1: y,\r\n\t\ty2: y,\r\n\t};\r\n\treturn coordinateProps;\r\n}\r\n\r\nexport default PriceCoordinate;\r\n","export default function displayValuesFor(props, moreProps) {\r\n\tconst { currentItem } = moreProps;\r\n\treturn currentItem;\r\n}\r\n","\r\n\r\nimport React, { Component } from \"react\";\r\nimport PropTypes from \"prop-types\";\r\n\r\nclass ToolTipText extends Component {\r\n\trender() {\r\n\t\treturn {this.props.children};\r\n\t}\r\n}\r\n\r\nToolTipText.propTypes = {\r\n\tfontFamily: PropTypes.string.isRequired,\r\n\tfontSize: PropTypes.number.isRequired,\r\n\tchildren: PropTypes.node.isRequired,\r\n};\r\n\r\nToolTipText.defaultProps = {\r\n\tfontFamily: \"Helvetica Neue, Helvetica, Arial, sans-serif\",\r\n\tfontSize: 11,\r\n};\r\n\r\nexport default ToolTipText;\r\n","\r\n\r\nimport React from \"react\";\r\nimport PropTypes from \"prop-types\";\r\n\r\nfunction ToolTipTSpanLabel(props) {\r\n\treturn {props.children};\r\n}\r\n\r\nToolTipTSpanLabel.propTypes = {\r\n\tchildren: PropTypes.node.isRequired,\r\n\tfill: PropTypes.string.isRequired,\r\n};\r\n\r\nToolTipTSpanLabel.defaultProps = {\r\n\tfill: \"#4682B4\"\r\n};\r\n\r\nexport default ToolTipTSpanLabel;\r\n","\r\n\r\nimport { format } from \"d3-format\";\r\nimport React, { Component } from \"react\";\r\nimport PropTypes from \"prop-types\";\r\n\r\nimport displayValuesFor from \"./displayValuesFor\";\r\nimport GenericChartComponent from \"../GenericChartComponent\";\r\n\r\nimport ToolTipText from \"./ToolTipText\";\r\nimport ToolTipTSpanLabel from \"./ToolTipTSpanLabel\";\r\nimport { functor } from \"../utils\";\r\n\r\nclass MACDTooltip extends Component {\r\n\tconstructor(props) {\r\n\t\tsuper(props);\r\n\t\tthis.renderSVG = this.renderSVG.bind(this);\r\n\t}\r\n\trenderSVG(moreProps) {\r\n\t\tconst { onClick, fontFamily, fontSize, displayFormat, className } = this.props;\r\n\t\tconst { yAccessor, options, appearance, labelFill } = this.props;\r\n\t\tconst { displayValuesFor } = this.props;\r\n\r\n\t\tconst { chartConfig: { width, height } } = moreProps;\r\n\r\n\t\tconst currentItem = displayValuesFor(this.props, moreProps);\r\n\t\tconst macdValue = currentItem && yAccessor(currentItem);\r\n\r\n\t\tconst macd = (macdValue && macdValue.macd && displayFormat(macdValue.macd)) || \"n/a\";\r\n\t\tconst signal = (macdValue && macdValue.signal && displayFormat(macdValue.signal)) || \"n/a\";\r\n\t\tconst divergence = (macdValue && macdValue.divergence && displayFormat(macdValue.divergence)) || \"n/a\";\r\n\r\n\t\tconst { origin: originProp } = this.props;\r\n\t\tconst origin = functor(originProp);\r\n\t\tconst [x, y] = origin(width, height);\r\n\r\n\t\treturn (\r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\tMACD (\r\n\t\t\t\t\t{options.slow}\r\n\t\t\t\t\t, \r\n\t\t\t\t\t{options.fast}\r\n\t\t\t\t\t): \r\n\t\t\t\t\t{macd}\r\n\t\t\t\t\t Signal (\r\n\t\t\t\t\t{options.signal}\r\n\t\t\t\t\t): \r\n\t\t\t\t\t{signal}\r\n\t\t\t\t\t Divergence: \r\n\t\t\t\t\t{divergence}\r\n\t\t\t\t\r\n\t\t\t\r\n\t\t);\r\n\t}\r\n\trender() {\r\n\t\treturn ;\r\n\t}\r\n}\r\n\r\nMACDTooltip.propTypes = {\r\n\torigin: PropTypes.oneOfType([\r\n\t\tPropTypes.array,\r\n\t\tPropTypes.func\r\n\t]).isRequired,\r\n\tclassName: PropTypes.string,\r\n\tfontFamily: PropTypes.string,\r\n\tfontSize: PropTypes.number,\r\n\tlabelFill: PropTypes.string,\r\n\r\n\tyAccessor: PropTypes.func.isRequired,\r\n\toptions: PropTypes.shape({\r\n\t\tslow: PropTypes.number.isRequired,\r\n\t\tfast: PropTypes.number.isRequired,\r\n\t\tsignal: PropTypes.number.isRequired,\r\n\t}).isRequired,\r\n\tappearance: PropTypes.shape({\r\n\t\tstroke: {\r\n\t\t\tmacd: PropTypes.string.isRequired,\r\n\t\t\tsignal: PropTypes.string.isRequired,\r\n\t\t}.isRequired,\r\n\t\tfill: PropTypes.shape({\r\n\t\t\tdivergence: PropTypes.string.isRequired,\r\n\t\t}).isRequired,\r\n\t}).isRequired,\r\n\tdisplayFormat: PropTypes.func.isRequired,\r\n\tdisplayValuesFor: PropTypes.func,\r\n\tonClick: PropTypes.func,\r\n};\r\n\r\nMACDTooltip.defaultProps = {\r\n\torigin: [0, 0],\r\n\tdisplayFormat: format(\".2f\"),\r\n\tdisplayValuesFor: displayValuesFor,\r\n\tclassName: \"react-stockcharts-tooltip\",\r\n};\r\n\r\nexport default MACDTooltip;\r\n// export default MACDTooltip;\r\n","\r\n\r\nimport React, { Component } from \"react\";\r\nimport PropTypes from \"prop-types\";\r\nimport { format } from \"d3-format\";\r\nimport { timeFormat } from \"d3-time-format\";\r\nimport displayValuesFor from \"./displayValuesFor\";\r\nimport GenericChartComponent from \"../GenericChartComponent\";\r\n\r\nimport { isDefined, functor } from \"../utils\";\r\nimport ToolTipText from \"./ToolTipText\";\r\nimport ToolTipTSpanLabel from \"./ToolTipTSpanLabel\";\r\n\r\nclass OHLCTooltip extends Component {\r\n\tconstructor(props) {\r\n\t\tsuper(props);\r\n\t\tthis.renderSVG = this.renderSVG.bind(this);\r\n\t}\r\n\trenderSVG(moreProps) {\r\n\t\tconst { displayValuesFor } = this.props;\r\n\t\tconst {\r\n\t\t\txDisplayFormat,\r\n\t\t\taccessor,\r\n\t\t\tvolumeFormat,\r\n\t\t\tohlcFormat,\r\n\t\t\tpercentFormat,\r\n\t\t\tdisplayTexts\r\n\t\t} = this.props;\r\n\r\n\t\tconst { chartConfig: { width, height } } = moreProps;\r\n\t\tconst { displayXAccessor } = moreProps;\r\n\r\n\t\tconst currentItem = displayValuesFor(this.props, moreProps);\r\n\r\n\t\tlet displayDate, open, high, low, close, volume, percent;\r\n\t\tdisplayDate = open = high = low = close = volume = percent = displayTexts.na;\r\n\r\n\t\tif (isDefined(currentItem) && isDefined(accessor(currentItem))) {\r\n\t\t\tconst item = accessor(currentItem);\r\n\t\t\tvolume = isDefined(item.volume) ? volumeFormat(item.volume) : displayTexts.na;\r\n\r\n\t\t\tdisplayDate = xDisplayFormat(displayXAccessor(item));\r\n\t\t\topen = ohlcFormat(item.open);\r\n\t\t\thigh = ohlcFormat(item.high);\r\n\t\t\tlow = ohlcFormat(item.low);\r\n\t\t\tclose = ohlcFormat(item.close);\r\n\t\t\tpercent = percentFormat((item.close - item.open) / item.open);\r\n\t\t}\r\n\r\n\t\tconst { origin: originProp } = this.props;\r\n\t\tconst origin = functor(originProp);\r\n\t\tconst [x, y] = origin(width, height);\r\n\r\n\t\tconst itemsToDisplay = {\r\n\t\t\tdisplayDate,\r\n\t\t\topen,\r\n\t\t\thigh,\r\n\t\t\tlow,\r\n\t\t\tclose,\r\n\t\t\tpercent,\r\n\t\t\tvolume,\r\n\t\t\tx,\r\n\t\t\ty\r\n\t\t};\r\n\t\treturn this.props.children(this.props, moreProps, itemsToDisplay);\r\n\t}\r\n\trender() {\r\n\t\treturn (\r\n\t\t\t\r\n\t\t);\r\n\t}\r\n}\r\n\r\nOHLCTooltip.propTypes = {\r\n\tclassName: PropTypes.string,\r\n\taccessor: PropTypes.func,\r\n\txDisplayFormat: PropTypes.func,\r\n\tchildren: PropTypes.func,\r\n\tvolumeFormat: PropTypes.func,\r\n\tpercentFormat: PropTypes.func,\r\n\tohlcFormat: PropTypes.func,\r\n\torigin: PropTypes.oneOfType([PropTypes.array, PropTypes.func]),\r\n\tfontFamily: PropTypes.string,\r\n\tfontSize: PropTypes.number,\r\n\tonClick: PropTypes.func,\r\n\tdisplayValuesFor: PropTypes.func,\r\n\ttextFill: PropTypes.string,\r\n\tlabelFill: PropTypes.string,\r\n\tdisplayTexts: PropTypes.object,\r\n};\r\n\r\nconst displayTextsDefault = {\r\n\td: \"Date: \",\r\n\to: \" O: \",\r\n\th: \" H: \",\r\n\tl: \" L: \",\r\n\tc: \" C: \",\r\n\tv: \" Vol: \",\r\n\tna: \"n/a\"\r\n};\r\n\r\nOHLCTooltip.defaultProps = {\r\n\taccessor: d => {\r\n\t\treturn {\r\n\t\t\tdate: d.date,\r\n\t\t\topen: d.open,\r\n\t\t\thigh: d.high,\r\n\t\t\tlow: d.low,\r\n\t\t\tclose: d.close,\r\n\t\t\tvolume: d.volume\r\n\t\t};\r\n\t},\r\n\txDisplayFormat: timeFormat(\"%Y-%m-%d\"),\r\n\tvolumeFormat: format(\".4s\"),\r\n\tpercentFormat: format(\".2%\"),\r\n\tohlcFormat: format(\".2f\"),\r\n\tdisplayValuesFor: displayValuesFor,\r\n\torigin: [0, 0],\r\n\tchildren: defaultDisplay,\r\n\tdisplayTexts: displayTextsDefault,\r\n};\r\n\r\nfunction defaultDisplay(props, moreProps, itemsToDisplay) {\r\n\r\n\t/* eslint-disable */\r\n\tconst {\r\n\t\tclassName,\r\n\t\ttextFill,\r\n\t\tlabelFill,\r\n\t\tonClick,\r\n\t\tfontFamily,\r\n\t\tfontSize,\r\n\t\tdisplayTexts\r\n\t} = props;\r\n\t/* eslint-enable */\r\n\r\n\tconst {\r\n\t\tdisplayDate,\r\n\t\topen,\r\n\t\thigh,\r\n\t\tlow,\r\n\t\tclose,\r\n\t\tvolume,\r\n\t\tx,\r\n\t\ty\r\n\t} = itemsToDisplay;\r\n\treturn (\r\n\t\t\r\n\t\t\t\r\n\t\t\t\t{displayTexts.d}\r\n\t\t\t\t{displayDate}\r\n\t\t\t\t{displayTexts.o}\r\n\t\t\t\t{open}\r\n\t\t\t\t{displayTexts.h}\r\n\t\t\t\t{high}\r\n\t\t\t\t{displayTexts.l}\r\n\t\t\t\t{low}\r\n\t\t\t\t{displayTexts.c}\r\n\t\t\t\t{close}\r\n\t\t\t\t{displayTexts.v}\r\n\t\t\t\t{volume}\r\n\t\t\t\r\n\t\t\r\n\t);\r\n}\r\n\r\nexport default OHLCTooltip;\r\n","\r\n\r\nimport React, { Component } from \"react\";\r\nimport PropTypes from \"prop-types\";\r\nimport { format } from \"d3-format\";\r\nimport displayValuesFor from \"./displayValuesFor\";\r\nimport GenericChartComponent from \"../GenericChartComponent\";\r\n\r\nimport ToolTipText from \"./ToolTipText\";\r\nimport ToolTipTSpanLabel from \"./ToolTipTSpanLabel\";\r\nimport { isDefined, identity, noop, functor } from \"../utils\";\r\n\r\nclass SingleValueTooltip extends Component {\r\n\tconstructor(props) {\r\n\t\tsuper(props);\r\n\t\tthis.renderSVG = this.renderSVG.bind(this);\r\n\t}\r\n\trenderSVG(moreProps) {\r\n\r\n\t\tconst { onClick, fontFamily, fontSize, labelFill, textFill, className } = this.props;\r\n\t\tconst { xDisplayFormat, yDisplayFormat, xLabel, yLabel, xAccessor, yAccessor } = this.props;\r\n\t\tconst { displayValuesFor } = this.props;\r\n\r\n\t\tconst { chartConfig: { width, height } } = moreProps;\r\n\t\tconst currentItem = displayValuesFor(this.props, moreProps);\r\n\r\n\t\tconst xDisplayValue = isDefined(currentItem) && isDefined(xAccessor(currentItem)) ? xDisplayFormat(xAccessor(currentItem)) : \"n/a\";\r\n\t\tconst yDisplayValue = isDefined(currentItem) && isDefined(yAccessor(currentItem)) ? yDisplayFormat(yAccessor(currentItem)) : \"n/a\";\r\n\r\n\t\tconst { origin: originProp } = this.props;\r\n\t\tconst origin = functor(originProp);\r\n\t\tconst [x, y] = origin(width, height);\r\n\r\n\t\treturn (\r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t{ xLabel ? {`${xLabel}: `} : null}\r\n\t\t\t\t\t{ xLabel ? {`${xDisplayValue} `} : null}\r\n\t\t\t\t\t{`${yLabel}: `}\r\n\t\t\t\t\t{yDisplayValue}\r\n\t\t\t\t\r\n\t\t\t\r\n\t\t);\r\n\t}\r\n\trender() {\r\n\t\treturn ;\r\n\t}\r\n}\r\n\r\nSingleValueTooltip.propTypes = {\r\n\txDisplayFormat: PropTypes.func,\r\n\tyDisplayFormat: PropTypes.func.isRequired,\r\n\txLabel: PropTypes.string,\r\n\tyLabel: PropTypes.oneOfType([\r\n\t\tPropTypes.string,\r\n\t\tPropTypes.func\r\n\t]).isRequired,\r\n\tlabelFill: PropTypes.string.isRequired,\r\n\ttextFill: PropTypes.string,\r\n\torigin: PropTypes.oneOfType([\r\n\t\tPropTypes.array,\r\n\t\tPropTypes.func\r\n\t]).isRequired,\r\n\tclassName: PropTypes.string,\r\n\tfontFamily: PropTypes.string,\r\n\tfontSize: PropTypes.number,\r\n\tonClick: PropTypes.func,\r\n\tdisplayValuesFor: PropTypes.func,\r\n\txAccessor: PropTypes.func,\r\n\tyAccessor: PropTypes.func,\r\n};\r\n\r\nSingleValueTooltip.defaultProps = {\r\n\torigin: [0, 0],\r\n\tlabelFill: \"#4682B4\",\r\n\ttextFill: \"#000000\",\r\n\tyDisplayFormat: format(\".2f\"),\r\n\tdisplayValuesFor: displayValuesFor,\r\n\txAccessor: noop,\r\n\tyAccessor: identity,\r\n\tclassName: \"react-stockcharts-tooltip\",\r\n};\r\n\r\nexport default SingleValueTooltip;\r\n","\r\n\r\nimport React, { Component } from \"react\";\r\nimport PropTypes from \"prop-types\";\r\nimport { format } from \"d3-format\";\r\nimport displayValuesFor from \"./displayValuesFor\";\r\nimport GenericChartComponent from \"../GenericChartComponent\";\r\n\r\nimport ToolTipText from \"./ToolTipText\";\r\nimport ToolTipTSpanLabel from \"./ToolTipTSpanLabel\";\r\n\r\nimport { functor } from \"../utils\";\r\n\r\nclass SingleMAToolTip extends Component {\r\n\tconstructor(props) {\r\n\t\tsuper(props);\r\n\t\tthis.handleClick = this.handleClick.bind(this);\r\n\t}\r\n\thandleClick(e) {\r\n\t\tconst { onClick, forChart, options } = this.props;\r\n\t\tonClick({ chartId: forChart, ...options }, e);\r\n\t}\r\n\trender() {\r\n\t\tconst { textFill, labelFill } = this.props;\r\n\t\tconst translate = \"translate(\" + this.props.origin[0] + \", \" + this.props.origin[1] + \")\";\r\n\t\treturn (\r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t{this.props.displayName}\r\n\t\t\t\t\t{this.props.value}\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\r\n\t\t);\r\n\t}\r\n}\r\n\r\nSingleMAToolTip.propTypes = {\r\n\torigin: PropTypes.array.isRequired,\r\n\tcolor: PropTypes.string.isRequired,\r\n\tdisplayName: PropTypes.string.isRequired,\r\n\tvalue: PropTypes.string.isRequired,\r\n\tonClick: PropTypes.func,\r\n\tfontFamily: PropTypes.string,\r\n\ttextFill: PropTypes.string,\r\n\tlabelFill: PropTypes.string,\r\n\tfontSize: PropTypes.number,\r\n\tforChart: PropTypes.oneOfType([PropTypes.number, PropTypes.string]).isRequired,\r\n\toptions: PropTypes.object.isRequired,\r\n};\r\n\r\nclass MovingAverageTooltip extends Component {\r\n\tconstructor(props) {\r\n\t\tsuper(props);\r\n\t\tthis.renderSVG = this.renderSVG.bind(this);\r\n\t}\r\n\trenderSVG(moreProps) {\r\n\t\tconst { displayValuesFor } = this.props;\r\n\r\n\t\tconst { chartId } = moreProps;\r\n\t\tconst { chartConfig } = moreProps;\r\n\r\n\t\tconst { className, onClick, width, fontFamily, fontSize, textFill, labelFill } = this.props;\r\n\t\tconst { origin: originProp, displayFormat, options } = this.props;\r\n\t\tconst { chartConfig: { height } } = moreProps;\r\n\r\n\t\tconst currentItem = displayValuesFor(this.props, moreProps);\r\n\t\tconst config = chartConfig;\r\n\r\n\t\tconst origin = functor(originProp);\r\n\t\tconst [x, y] = origin(width, height);\r\n\t\tconst [ox, oy] = config.origin;\r\n\r\n\t\treturn (\r\n\t\t\t\r\n\t\t\t\t{options\r\n\t\t\t\t\t.map((each, idx) => {\r\n\t\t\t\t\t\tconst yValue = currentItem && each.yAccessor(currentItem);\r\n\r\n\t\t\t\t\t\tconst tooltipLabel = `${each.type} (${each.windowSize})`;\r\n\t\t\t\t\t\tconst yDisplayValue = yValue ? displayFormat(yValue) : \"n/a\";\r\n\t\t\t\t\t\treturn ;\r\n\t\t\t\t\t})}\r\n\t\t\t\r\n\t\t);\r\n\t}\r\n\trender() {\r\n\t\treturn ;\r\n\t}\r\n}\r\n\r\nMovingAverageTooltip.propTypes = {\r\n\tclassName: PropTypes.string,\r\n\tdisplayFormat: PropTypes.func.isRequired,\r\n\torigin: PropTypes.array.isRequired,\r\n\tdisplayValuesFor: PropTypes.func,\r\n\tonClick: PropTypes.func,\r\n\ttextFill: PropTypes.string,\r\n\tlabelFill: PropTypes.string,\r\n\tfontFamily: PropTypes.string,\r\n\tfontSize: PropTypes.number,\r\n\twidth: PropTypes.number,\r\n\toptions: PropTypes.arrayOf(PropTypes.shape({\r\n\t\tyAccessor: PropTypes.func.isRequired,\r\n\t\ttype: PropTypes.string.isRequired,\r\n\t\tstroke: PropTypes.string.isRequired,\r\n\t\twindowSize: PropTypes.number.isRequired,\r\n\t\techo: PropTypes.any,\r\n\t})),\r\n};\r\n\r\nMovingAverageTooltip.defaultProps = {\r\n\tclassName: \"react-stockcharts-tooltip react-stockcharts-moving-average-tooltip\",\r\n\tdisplayFormat: format(\".2f\"),\r\n\tdisplayValuesFor: displayValuesFor,\r\n\torigin: [0, 10],\r\n\twidth: 65,\r\n};\r\n\r\nexport default MovingAverageTooltip;\r\n","\r\n\r\nimport React, { Component } from \"react\";\r\nimport PropTypes from \"prop-types\";\r\nimport { format } from \"d3-format\";\r\nimport displayValuesFor from \"./displayValuesFor\";\r\nimport GenericChartComponent from \"../GenericChartComponent\";\r\n\r\nimport { isDefined, functor } from \"../utils\";\r\nimport ToolTipText from \"./ToolTipText\";\r\nimport ToolTipTSpanLabel from \"./ToolTipTSpanLabel\";\r\n\r\nclass BollingerBandTooltip extends Component {\r\n\tconstructor(props) {\r\n\t\tsuper(props);\r\n\t\tthis.renderSVG = this.renderSVG.bind(this);\r\n\t}\r\n\trenderSVG(moreProps) {\r\n\t\tconst { onClick, displayFormat, yAccessor, options, textFill, labelFill } = this.props;\r\n\t\tconst { displayValuesFor } = this.props;\r\n\r\n\t\tconst { chartConfig: { width, height } } = moreProps;\r\n\r\n\t\tconst currentItem = displayValuesFor(this.props, moreProps);\r\n\r\n\t\tlet top, middle, bottom;\r\n\t\ttop = middle = bottom = \"n/a\";\r\n\r\n\t\tif (isDefined(currentItem)\r\n\t\t\t\t&& isDefined(yAccessor(currentItem))) {\r\n\t\t\tconst item = yAccessor(currentItem);\r\n\t\t\ttop = displayFormat(item.top);\r\n\t\t\tmiddle = displayFormat(item.middle);\r\n\t\t\tbottom = displayFormat(item.bottom);\r\n\t\t}\r\n\r\n\t\tconst { origin: originProp } = this.props;\r\n\t\tconst origin = functor(originProp);\r\n\t\tconst [x, y] = origin(width, height);\r\n\r\n\t\tconst { sourcePath, windowSize, multiplier, movingAverageType } = options;\r\n\t\tconst tooltipLabel = `BB(${sourcePath}, ${windowSize}, ${multiplier}, ${movingAverageType}): `;\r\n\t\tconst tooltipValue = `${top}, ${middle}, ${bottom}`;\r\n\t\treturn (\r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t{tooltipLabel}\r\n\t\t\t\t\t{tooltipValue}\r\n\t\t\t\t\r\n\t\t\t\r\n\t\t);\r\n\t}\r\n\trender() {\r\n\t\treturn ;\r\n\t}\r\n}\r\n\r\nBollingerBandTooltip.propTypes = {\r\n\tclassName: PropTypes.string,\r\n\tyAccessor: PropTypes.func.isRequired,\r\n\tdisplayValuesFor: PropTypes.func,\r\n\tdisplayFormat: PropTypes.func.isRequired,\r\n\torigin: PropTypes.array.isRequired,\r\n\tonClick: PropTypes.func,\r\n\toptions: PropTypes.shape({\r\n\t\tsourcePath: PropTypes.string.isRequired,\r\n\t\twindowSize: PropTypes.number.isRequired,\r\n\t\tmultiplier: PropTypes.number.isRequired,\r\n\t\tmovingAverageType: PropTypes.string.isRequired,\r\n\t}).isRequired,\r\n\ttextFill: PropTypes.string,\r\n\tlabelFill: PropTypes.string,\r\n\tfontFamily: PropTypes.string,\r\n\tfontSize: PropTypes.number,\r\n};\r\n\r\nBollingerBandTooltip.defaultProps = {\r\n\tclassName: \"react-stockcharts-tooltip react-stockcharts-bollingerband-tooltip\",\r\n\tdisplayFormat: format(\".2f\"),\r\n\tdisplayValuesFor: displayValuesFor,\r\n\torigin: [0, 10],\r\n};\r\n\r\nexport default BollingerBandTooltip;\r\n","\r\n\r\nimport { format } from \"d3-format\";\r\nimport React, { Component } from \"react\";\r\nimport PropTypes from \"prop-types\";\r\nimport displayValuesFor from \"./displayValuesFor\";\r\nimport GenericChartComponent from \"../GenericChartComponent\";\r\n\r\nimport { isDefined, functor } from \"../utils\";\r\nimport ToolTipText from \"./ToolTipText\";\r\nimport ToolTipTSpanLabel from \"./ToolTipTSpanLabel\";\r\n\r\nclass RSITooltip extends Component {\r\n\tconstructor(props) {\r\n\t\tsuper(props);\r\n\t\tthis.renderSVG = this.renderSVG.bind(this);\r\n\t}\r\n\trenderSVG(moreProps) {\r\n\t\tconst { onClick, fontFamily, fontSize, yAccessor, displayFormat, className } = this.props;\r\n\t\tconst { options, labelFill, textFill } = this.props;\r\n\t\tconst { displayValuesFor } = this.props;\r\n\t\tconst { chartConfig: { width, height } } = moreProps;\r\n\r\n\t\tconst currentItem = displayValuesFor(this.props, moreProps);\r\n\t\tconst rsi = isDefined(currentItem) && yAccessor(currentItem);\r\n\t\tconst value = (rsi && displayFormat(rsi)) || \"n/a\";\r\n\r\n\t\tconst { origin: originProp } = this.props;\r\n\t\tconst origin = functor(originProp);\r\n\t\tconst [x, y] = origin(width, height);\r\n\r\n\t\tconst tooltipLabel = `RSI (${options.windowSize}): `;\r\n\t\treturn (\r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t{tooltipLabel}\r\n\t\t\t\t\t{value}\r\n\t\t\t\t\r\n\t\t\t\r\n\t\t);\r\n\t}\r\n\trender() {\r\n\t\treturn ;\r\n\t}\r\n}\r\n\r\nRSITooltip.propTypes = {\r\n\torigin: PropTypes.oneOfType([\r\n\t\tPropTypes.array,\r\n\t\tPropTypes.func\r\n\t]).isRequired,\r\n\toptions: PropTypes.shape({\r\n\t\twindowSize: PropTypes.number.isRequired,\r\n\t}).isRequired,\r\n\tclassName: PropTypes.string,\r\n\tfontFamily: PropTypes.string,\r\n\tfontSize: PropTypes.number,\r\n\tonClick: PropTypes.func,\r\n\tyAccessor: PropTypes.func.isRequired,\r\n\tdisplayFormat: PropTypes.func.isRequired,\r\n\tdisplayValuesFor: PropTypes.func,\r\n\ttextFill: PropTypes.string,\r\n\tlabelFill: PropTypes.string,\r\n};\r\n\r\nRSITooltip.defaultProps = {\r\n\tdisplayFormat: format(\".2f\"),\r\n\tdisplayValuesFor: displayValuesFor,\r\n\torigin: [0, 0],\r\n\tclassName: \"react-stockcharts-tooltip\",\r\n};\r\n\r\nexport default RSITooltip;","\r\n\r\nimport { format } from \"d3-format\";\r\nimport React, { Component } from \"react\";\r\nimport PropTypes from \"prop-types\";\r\nimport displayValuesFor from \"./displayValuesFor\";\r\nimport GenericChartComponent from \"../GenericChartComponent\";\r\n\r\nimport { functor } from \"../utils\";\r\n\r\nimport ToolTipText from \"./ToolTipText\";\r\nimport ToolTipTSpanLabel from \"./ToolTipTSpanLabel\";\r\n\r\nclass StochasticTooltip extends Component {\r\n\tconstructor(props) {\r\n\t\tsuper(props);\r\n\t\tthis.renderSVG = this.renderSVG.bind(this);\r\n\t}\r\n\trenderSVG(moreProps) {\r\n\t\tconst { onClick, fontFamily, fontSize, yAccessor, displayFormat, label } = this.props;\r\n\t\tconst { className, options, appearance, labelFill } = this.props;\r\n\t\tconst { displayValuesFor } = this.props;\r\n\t\tconst { chartConfig: { width, height } } = moreProps;\r\n\r\n\t\tconst currentItem = displayValuesFor(this.props, moreProps);\r\n\t\tconst { stroke } = appearance;\r\n\t\tconst stochastic = currentItem && yAccessor(currentItem);\r\n\r\n\t\tconst K = (stochastic && stochastic.K && displayFormat(stochastic.K)) || \"n/a\";\r\n\t\tconst D = (stochastic && stochastic.D && displayFormat(stochastic.D)) || \"n/a\";\r\n\r\n\t\tconst { origin: originProp } = this.props;\r\n\t\tconst origin = functor(originProp);\r\n\t\tconst [x, y] = origin(width, height);\r\n\r\n\t\treturn (\r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t{`${ label } %K(`}\r\n\t\t\t\t\t{`${options.windowSize}, ${options.kWindowSize}`}\r\n\t\t\t\t\t): \r\n\t\t\t\t\t{K}\r\n\t\t\t\t\t %D (\r\n\t\t\t\t\t{options.dWindowSize}\r\n\t\t\t\t\t): \r\n\t\t\t\t\t{D}\r\n\t\t\t\t\r\n\t\t\t\r\n\t\t);\r\n\t}\r\n\trender() {\r\n\t\treturn ;\r\n\t}\r\n}\r\n\r\nStochasticTooltip.propTypes = {\r\n\torigin: PropTypes.oneOfType([\r\n\t\tPropTypes.array,\r\n\t\tPropTypes.func\r\n\t]).isRequired,\r\n\tclassName: PropTypes.string,\r\n\tfontFamily: PropTypes.string,\r\n\tfontSize: PropTypes.number,\r\n\tlabelFill: PropTypes.string,\r\n\r\n\tonClick: PropTypes.func,\r\n\tyAccessor: PropTypes.func.isRequired,\r\n\toptions: PropTypes.shape({\r\n\t\twindowSize: PropTypes.number.isRequired,\r\n\t\tkWindowSize: PropTypes.number.isRequired,\r\n\t\tdWindowSize: PropTypes.number.isRequired,\r\n\t}).isRequired,\r\n\tappearance: PropTypes.shape({\r\n\t\tstroke: {\r\n\t\t\tdLine: PropTypes.string.isRequired,\r\n\t\t\tkLine: PropTypes.string.isRequired,\r\n\t\t}.isRequired,\r\n\t}).isRequired,\r\n\tdisplayFormat: PropTypes.func.isRequired,\r\n\tdisplayValuesFor: PropTypes.func,\r\n\tlabel: PropTypes.string.isRequired,\r\n};\r\n\r\nStochasticTooltip.defaultProps = {\r\n\tdisplayFormat: format(\".2f\"),\r\n\tdisplayValuesFor: displayValuesFor,\r\n\torigin: [0, 0],\r\n\tclassName: \"react-stockcharts-tooltip\",\r\n\tlabel: \"STO\",\r\n};\r\n\r\nexport default StochasticTooltip;\r\n","\r\n\r\nimport React, { Component } from \"react\";\r\nimport PropTypes from \"prop-types\";\r\nimport GenericComponent from \"../GenericComponent\";\r\nimport { sum } from \"d3-array\";\r\n\r\nimport { first, last, isNotDefined, isDefined, hexToRGBA } from \"../utils\";\r\n\r\nclass HoverTooltip extends Component {\r\n\tconstructor(props) {\r\n\t\tsuper(props);\r\n\t\tthis.renderSVG = this.renderSVG.bind(this);\r\n\t\tthis.drawOnCanvas = this.drawOnCanvas.bind(this);\r\n\t}\r\n\tdrawOnCanvas(ctx, moreProps) {\r\n\t\tconst pointer = helper(this.props, moreProps, ctx);\r\n\t\tconst { height } = moreProps;\r\n\r\n\t\tif (isNotDefined(pointer)) return null;\r\n\t\tdrawOnCanvas(ctx, this.props, this.context, pointer, height, moreProps);\r\n\t}\r\n\trender() {\r\n\t\treturn ;\r\n\t}\r\n\trenderSVG(moreProps) {\r\n\t\tconst pointer = helper(this.props, moreProps);\r\n\r\n\t\tif (isNotDefined(pointer)) return null;\r\n\r\n\t\tconst { bgFill, bgOpacity, backgroundShapeSVG, tooltipSVG } = this.props;\r\n\t\tconst { bgheight, bgwidth } = this.props;\r\n\t\tconst { height } = moreProps;\r\n\r\n\t\tconst { x, y, content, centerX, pointWidth, bgSize } = pointer;\r\n\r\n\t\tconst bgShape = isDefined(bgwidth) && isDefined(bgheight)\r\n\t\t\t? { width: bgwidth, height: bgheight }\r\n\t\t\t: bgSize;\r\n\r\n\t\treturn (\r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t{backgroundShapeSVG(this.props, bgShape)}\r\n\t\t\t\t\t{tooltipSVG(this.props, content)}\r\n\t\t\t\t\r\n\t\t\t\r\n\t\t);\r\n\t}\r\n}\r\n\r\nHoverTooltip.propTypes = {\r\n\tchartId: PropTypes.oneOfType([PropTypes.number, PropTypes.string]),\r\n\tyAccessor: PropTypes.func,\r\n\ttooltipSVG: PropTypes.func,\r\n\tbackgroundShapeSVG: PropTypes.func,\r\n\tbgwidth: PropTypes.number,\r\n\tbgheight: PropTypes.number,\r\n\tbgFill: PropTypes.string.isRequired,\r\n\tbgOpacity: PropTypes.number.isRequired,\r\n\ttooltipContent: PropTypes.func.isRequired,\r\n\torigin: PropTypes.oneOfType([\r\n\t\tPropTypes.array,\r\n\t\tPropTypes.func\r\n\t]).isRequired,\r\n\tfontFamily: PropTypes.string,\r\n\tfontSize: PropTypes.number,\r\n};\r\n\r\nHoverTooltip.contextTypes = {\r\n\tmargin: PropTypes.object.isRequired,\r\n\tratio: PropTypes.number.isRequired,\r\n};\r\n\r\nHoverTooltip.defaultProps = {\r\n\t// bgwidth: 150,\r\n\t// bgheight: 50,\r\n\ttooltipSVG: tooltipSVG,\r\n\ttooltipCanvas: tooltipCanvas,\r\n\torigin: origin,\r\n\tfill: \"#D4E2FD\",\r\n\tbgFill: \"#D4E2FD\",\r\n\tbgOpacity: 0.5,\r\n\tstroke: \"#9B9BFF\",\r\n\tfontFill: \"#000000\",\r\n\topacity: 0.8,\r\n\tbackgroundShapeSVG: backgroundShapeSVG,\r\n\tbackgroundShapeCanvas: backgroundShapeCanvas,\r\n\tfontFamily: \"Helvetica Neue, Helvetica, Arial, sans-serif\",\r\n\tfontSize: 12,\r\n};\r\n\r\nconst PADDING = 5;\r\nconst X = 10;\r\nconst Y = 10;\r\n\r\n\r\n/* eslint-disable react/prop-types */\r\nfunction backgroundShapeSVG({ fill, stroke, opacity }, { height, width }) {\r\n\treturn ;\r\n}\r\n\r\nfunction tooltipSVG({ fontFamily, fontSize, fontFill }, content) {\r\n\tconst tspans = [];\r\n\tconst startY = Y + fontSize * 0.9;\r\n\r\n\tfor (let i = 0; i < content.y.length; i++) {\r\n\t\tconst y = content.y[i];\r\n\t\tconst textY = startY + (fontSize * (i + 1));\r\n\t\ttspans.push({y.label});\r\n\t\ttspans.push(: );\r\n\t\ttspans.push({y.value});\r\n\t}\r\n\treturn \r\n\t\t{content.x}\r\n\t\t{tspans}\r\n\t;\r\n}\r\n/* eslint-enable react/prop-types */\r\n\r\nfunction backgroundShapeCanvas(props, { width, height }, ctx) {\r\n\tconst { fill, stroke, opacity } = props;\r\n\r\n\tctx.fillStyle = hexToRGBA(fill, opacity);\r\n\tctx.strokeStyle = stroke;\r\n\tctx.beginPath();\r\n\tctx.rect(0, 0, width, height);\r\n\tctx.fill();\r\n\tctx.stroke();\r\n}\r\n\r\nfunction tooltipCanvas({ fontFamily, fontSize, fontFill }, content, ctx) {\r\n\tconst startY = Y + fontSize * 0.9;\r\n\tctx.font = `${fontSize}px ${fontFamily}`;\r\n\tctx.fillStyle = fontFill;\r\n\tctx.textAlign = \"left\";\r\n\tctx.fillText(content.x, X, startY);\r\n\r\n\tfor (let i = 0; i < content.y.length; i++) {\r\n\t\tconst y = content.y[i];\r\n\t\tconst textY = startY + (fontSize * (i + 1));\r\n\t\tctx.fillStyle = y.stroke || fontFill;\r\n\t\tctx.fillText(y.label, X, textY);\r\n\r\n\t\tctx.fillStyle = fontFill;\r\n\t\tctx.fillText(\": \" + y.value, X + ctx.measureText(y.label).width, textY);\r\n\t}\r\n}\r\n\r\nfunction drawOnCanvas(ctx, props, context, pointer, height) {\r\n\r\n\tconst { margin, ratio } = context;\r\n\tconst { bgFill, bgOpacity } = props;\r\n\tconst { backgroundShapeCanvas, tooltipCanvas } = props;\r\n\r\n\tconst originX = 0.5 * ratio + margin.left;\r\n\tconst originY = 0.5 * ratio + margin.top;\r\n\r\n\tctx.save();\r\n\r\n\tctx.setTransform(1, 0, 0, 1, 0, 0);\r\n\tctx.scale(ratio, ratio);\r\n\r\n\tctx.translate(originX, originY);\r\n\r\n\tconst { x, y, content, centerX, pointWidth, bgSize } = pointer;\r\n\r\n\tctx.fillStyle = hexToRGBA(bgFill, bgOpacity);\r\n\tctx.beginPath();\r\n\tctx.rect(centerX - pointWidth / 2, 0, pointWidth, height);\r\n\tctx.fill();\r\n\r\n\tctx.translate(x, y);\r\n\tbackgroundShapeCanvas(props, bgSize, ctx);\r\n\ttooltipCanvas(props, content, ctx);\r\n\r\n\tctx.restore();\r\n}\r\n\r\nfunction calculateTooltipSize({ fontFamily, fontSize, fontFill }, content, ctx) {\r\n\tif (isNotDefined(ctx)) {\r\n\t\tconst canvas = document.createElement(\"canvas\");\r\n\t\tctx = canvas.getContext(\"2d\");\r\n\t}\r\n\r\n\tctx.font = `${fontSize}px ${fontFamily}`;\r\n\tctx.fillStyle = fontFill;\r\n\tctx.textAlign = \"left\";\r\n\r\n\tconst measureText = str => ({\r\n\t\twidth: ctx.measureText(str).width,\r\n\t\theight: fontSize,\r\n\t});\r\n\r\n\tconst { width, height } = content.y\r\n\t\t.map(({ label, value }) => measureText(`${label}: ${value}`))\r\n\t\t// Sum all y and x sizes (begin with x label size)\r\n\t\t.reduce((res, size) => sumSizes(res, size), measureText(String(content.x)))\r\n\t;\r\n\r\n\treturn {\r\n\t\twidth: width + 2 * X,\r\n\t\theight: height + 2 * Y\r\n\t};\r\n}\r\n\r\nfunction sumSizes(...sizes) {\r\n\treturn {\r\n\t\twidth: Math.max(...sizes.map(size => size.width)),\r\n\t\theight: sum(sizes, d => d.height),\r\n\t};\r\n}\r\n\r\nfunction normalizeX(x, bgSize, pointWidth, width) {\r\n\t// return x - bgSize.width - pointWidth / 2 - PADDING * 2 < 0\r\n\treturn x < width / 2\r\n\t\t? x + pointWidth / 2 + PADDING\r\n\t\t: x - bgSize.width - pointWidth / 2 - PADDING;\r\n}\r\n\r\nfunction normalizeY(y, bgSize) {\r\n\treturn y - bgSize.height <= 0\r\n\t\t? y + PADDING\r\n\t\t: y - bgSize.height - PADDING;\r\n}\r\n\r\nfunction origin(props, moreProps, bgSize, pointWidth) {\r\n\tconst { chartId, yAccessor } = props;\r\n\tconst { mouseXY, xAccessor, currentItem, xScale, chartConfig, width } = moreProps;\r\n\tlet y = last(mouseXY);\r\n\r\n\tconst xValue = xAccessor(currentItem);\r\n\tlet x = Math.round(xScale(xValue));\r\n\r\n\tif (isDefined(chartId) && isDefined(yAccessor)\r\n\t\t\t&& isDefined(chartConfig) && isDefined(chartConfig.findIndex)) {\r\n\t\tconst yValue = yAccessor(currentItem);\r\n\t\tconst chartIndex = chartConfig.findIndex(x => x.id === chartId);\r\n\r\n\t\ty = Math.round(chartConfig[chartIndex].yScale(yValue));\r\n\t}\r\n\r\n\tx = normalizeX(x, bgSize, pointWidth, width);\r\n\ty = normalizeY(y, bgSize);\r\n\r\n\treturn [x, y];\r\n}\r\n\r\nfunction helper(props, moreProps, ctx) {\r\n\tconst { show, xScale, currentItem, plotData } = moreProps;\r\n\tconst { origin, tooltipContent } = props;\r\n\tconst { xAccessor, displayXAccessor } = moreProps;\r\n\r\n\tif (!show || isNotDefined(currentItem)) return;\r\n\r\n\tconst xValue = xAccessor(currentItem);\r\n\r\n\tif (!show || isNotDefined(xValue)) return;\r\n\r\n\tconst content = tooltipContent({ currentItem, xAccessor: displayXAccessor });\r\n\tconst centerX = xScale(xValue);\r\n\tconst pointWidth = Math.abs(xScale(xAccessor(last(plotData))) - xScale(xAccessor(first(plotData)))) / (plotData.length - 1);\r\n\r\n\tconst bgSize = calculateTooltipSize(props, content, ctx);\r\n\r\n\tconst [x, y] = origin(props, moreProps, bgSize, pointWidth);\r\n\r\n\treturn { x, y, content, centerX, pointWidth, bgSize };\r\n}\r\n\r\nexport default HoverTooltip;\r\n","import React, { Component } from \"react\";\r\nimport PropTypes from \"prop-types\";\r\nimport { format } from \"d3-format\";\r\nimport displayValuesFor from \"./displayValuesFor\";\r\nimport GenericChartComponent from \"../GenericChartComponent\";\r\nimport ToolTipText from \"./ToolTipText\";\r\nimport ToolTipTSpanLabel from \"./ToolTipTSpanLabel\";\r\n\r\nconst VALID_LAYOUTS = [\r\n\t\"horizontal\",\r\n\t\"horizontalRows\",\r\n\t\"horizontalInline\",\r\n\t\"vertical\",\r\n\t\"verticalRows\"\r\n];\r\n\r\nclass SingleTooltip extends Component {\r\n\r\n\tconstructor( props ) {\r\n\t\tsuper( props );\r\n\t\tthis.handleClick = this.handleClick.bind( this );\r\n\t}\r\n\r\n\thandleClick( e ) {\r\n\t\tconst { onClick, forChart, options } = this.props;\r\n\t\tonClick( { chartId: forChart, ...options }, e );\r\n\t}\r\n\r\n\t/**\r\n\t * Renders the value next to the label.\r\n\t */\r\n\trenderValueNextToLabel() {\r\n\t\tconst { origin, yLabel, yValue, labelFill, valueFill, withShape, fontSize, fontFamily } = this.props;\r\n\r\n\t\treturn (\r\n\t\t\t\r\n\t\t\t\t{withShape ? : null}\r\n\t\t\t\t\r\n\t\t\t\t\t{yLabel}: \r\n\t\t\t\t\t{yValue}\r\n\t\t\t\t\r\n\t\t\t\r\n\t\t);\r\n\t}\r\n\r\n\t/**\r\n\t * Renders the value beneath the label.\r\n\t */\r\n\trenderValueBeneathToLabel() {\r\n\t\tconst { origin, yLabel, yValue, labelFill, valueFill, withShape, fontSize, fontFamily } = this.props;\r\n\r\n\t\treturn (\r\n\t\t\t\r\n\t\t\t\t{withShape ? : null}\r\n\t\t\t\t\r\n\t\t\t\t\t{yLabel}\r\n\t\t\t\t\t{yValue}\r\n\t\t\t\t\r\n\t\t\t\r\n\t\t);\r\n\t}\r\n\r\n\t/**\r\n\t * Renders the value next to the label.\r\n\t * The parent component must have a \"text\"-element.\r\n\t */\r\n\trenderInline() {\r\n\t\tconst { yLabel, yValue, labelFill, valueFill, fontSize, fontFamily } = this.props;\r\n\r\n\t\treturn (\r\n\t\t\t\r\n\t\t\t\t{yLabel}: \r\n\t\t\t\t{yValue}  \r\n\t\t\t\r\n\t\t);\r\n\t}\r\n\r\n\trender() {\r\n\r\n\t\tconst { layout } = this.props;\r\n\t\tlet comp = null;\r\n\r\n\t\tswitch ( layout ) {\r\n\t\t\tcase \"horizontal\":\r\n\t\t\t\tcomp = this.renderValueNextToLabel();\r\n\t\t\t\tbreak;\r\n\t\t\tcase \"horizontalRows\":\r\n\t\t\t\tcomp = this.renderValueBeneathToLabel();\r\n\t\t\t\tbreak;\r\n\t\t\tcase \"horizontalInline\":\r\n\t\t\t\tcomp = this.renderInline();\r\n\t\t\t\tbreak;\r\n\t\t\tcase \"vertical\":\r\n\t\t\t\tcomp = this.renderValueNextToLabel();\r\n\t\t\t\tbreak;\r\n\t\t\tcase \"verticalRows\":\r\n\t\t\t\tcomp = this.renderValueBeneathToLabel();\r\n\t\t\t\tbreak;\r\n\t\t\tdefault:\r\n\t\t\t\tcomp = this.renderValueNextToLabel();\r\n\t\t}\r\n\r\n\t\treturn comp;\r\n\t}\r\n}\r\n\r\nSingleTooltip.propTypes = {\r\n\torigin: PropTypes.array.isRequired,\r\n\tyLabel: PropTypes.string.isRequired,\r\n\tyValue: PropTypes.string.isRequired,\r\n\tonClick: PropTypes.func,\r\n\tfontFamily: PropTypes.string,\r\n\tlabelFill: PropTypes.string.isRequired,\r\n\tvalueFill: PropTypes.string.isRequired,\r\n\tfontSize: PropTypes.number,\r\n\twithShape: PropTypes.bool,\r\n\tforChart: PropTypes.oneOfType( [PropTypes.number, PropTypes.string] ).isRequired,\r\n\toptions: PropTypes.object.isRequired,\r\n\tlayout: PropTypes.oneOf(VALID_LAYOUTS).isRequired,\r\n};\r\n\r\nSingleTooltip.defaultProps = {\r\n\tlabelFill: \"#4682B4\",\r\n\tvalueFill: \"#000000\",\r\n\twithShape: false,\r\n};\r\n\r\nclass GroupTooltip extends Component {\r\n\tconstructor( props ) {\r\n\t\tsuper( props );\r\n\t\tthis.renderSVG = this.renderSVG.bind( this );\r\n\t}\r\n\r\n\tgetPosition(moreProps) {\r\n\t\tconst { position } = this.props;\r\n\t\tconst { height, width } = moreProps.chartConfig;\r\n\r\n\t\tconst dx = 20;\r\n\t\tconst dy = 40;\r\n\t\tlet textAnchor = null;\r\n\t\tlet xyPos = null;\r\n\r\n\t\tif (position !== undefined) {\r\n\t\t\tswitch ( position ) {\r\n\t\t\t\tcase \"topRight\":\r\n\t\t\t\t\txyPos = [width - dx, null];\r\n\t\t\t\t\ttextAnchor = \"end\";\r\n\t\t\t\t\tbreak;\r\n\t\t\t\tcase \"bottomLeft\":\r\n\t\t\t\t\txyPos = [null, height - dy];\r\n\t\t\t\t\tbreak;\r\n\t\t\t\tcase \"bottomRight\":\r\n\t\t\t\t\txyPos = [width - dx, height - dy];\r\n\t\t\t\t\ttextAnchor = \"end\";\r\n\t\t\t\t\tbreak;\r\n\t\t\t\tdefault:\r\n\t\t\t\t\txyPos = [null, null];\r\n\t\t\t}\r\n\t\t} else {\r\n\t\t\txyPos = [null, null];\r\n\t\t}\r\n\r\n\t\treturn { xyPos, textAnchor };\r\n\t}\r\n\r\n\r\n\trenderSVG( moreProps ) {\r\n\r\n\t\tconst { displayValuesFor } = this.props;\r\n\t\tconst { chartId } = moreProps;\r\n\r\n\t\tconst { className, onClick, width, verticalSize, fontFamily, fontSize, layout } = this.props;\r\n\t\tconst { origin, displayFormat, options } = this.props;\r\n\t\tconst currentItem = displayValuesFor( this.props, moreProps );\r\n\t\tconst { xyPos, textAnchor } = this.getPosition(moreProps);\r\n\r\n\t\tconst xPos = xyPos != null && xyPos[0] != null ? xyPos[0] : origin[0];\r\n\t\tconst yPos = xyPos != null && xyPos[1] != null ? xyPos[1] : origin[1];\r\n\r\n\t\tconst singleTooltip = options.map( ( each, idx ) => {\r\n\r\n\t\t\tconst yValue = currentItem && each.yAccessor( currentItem );\r\n\t\t\tconst yDisplayValue = yValue ? displayFormat( yValue ) : \"n/a\";\r\n\r\n\t\t\tconst orig = () => {\r\n\t\t\t\tif ( layout === \"horizontal\" || layout === \"horizontalRows\" ) {\r\n\t\t\t\t\treturn [width * idx, 0];\r\n\t\t\t\t}\r\n\t\t\t\tif ( layout === \"vertical\" ) {\r\n\t\t\t\t\treturn [0, verticalSize * idx];\r\n\t\t\t\t}\r\n\t\t\t\tif ( layout === \"verticalRows\" ) {\r\n\t\t\t\t\treturn [0, verticalSize * 2.3 * idx];\r\n\t\t\t\t}\r\n\t\t\t\treturn [0, 0];\r\n\t\t\t};\r\n\r\n\t\t\treturn ;\r\n\t\t} );\r\n\r\n\t\treturn (\r\n\t\t\t\r\n\t\t\t\t{layout === \"horizontalInline\"\r\n\t\t\t\t\t? {singleTooltip}\r\n\t\t\t\t\t: singleTooltip\r\n\t\t\t\t}\r\n\t\t\t\r\n\t\t);\r\n\t}\r\n\trender() {\r\n\t\treturn ;\r\n\t}\r\n}\r\n\r\n\r\nGroupTooltip.propTypes = {\r\n\tclassName: PropTypes.string,\r\n\tlayout: PropTypes.oneOf(VALID_LAYOUTS).isRequired,\r\n\tposition: PropTypes.oneOf( [\r\n\t\t\"topRight\",\r\n\t\t\"bottomLeft\",\r\n\t\t\"bottomRight\"] ),\r\n\tdisplayFormat: PropTypes.func.isRequired,\r\n\torigin: PropTypes.array.isRequired,\r\n\tdisplayValuesFor: PropTypes.func,\r\n\tonClick: PropTypes.func,\r\n\tfontFamily: PropTypes.string,\r\n\tfontSize: PropTypes.number,\r\n\twidth: PropTypes.number, // \"width\" only be used, if layout is \"horizontal\" or \"horizontalRows\".\r\n\tverticalSize: PropTypes.number, // \"verticalSize\" only be used, if layout is \"vertical\", \"verticalRows\".\r\n\toptions: PropTypes.arrayOf( PropTypes.shape( {\r\n\t\tyLabel: PropTypes.oneOfType( [\r\n\t\t\tPropTypes.string,\r\n\t\t\tPropTypes.func] ).isRequired,\r\n\t\tyAccessor: PropTypes.func.isRequired,\r\n\t\tlabelFill: PropTypes.string,\r\n\t\tvalueFill: PropTypes.string,\r\n\t\twithShape: PropTypes.bool, // \"withShape\" is ignored, if layout is \"horizontalInline\" or \"vertical\".\r\n\t} ) ),\r\n};\r\n\r\nGroupTooltip.defaultProps = {\r\n\tclassName: \"react-stockcharts-tooltip react-stockcharts-group-tooltip\",\r\n\tlayout: \"horizontal\",\r\n\tdisplayFormat: format( \".2f\" ),\r\n\tdisplayValuesFor: displayValuesFor,\r\n\torigin: [0, 0],\r\n\twidth: 60,\r\n\tverticalSize: 13,\r\n};\r\n\r\nexport default GroupTooltip;\r\n","\r\n\r\nexport const BollingerBand = {\r\n\twindowSize: 20,\r\n\t// source: d => d.close, // \"high\", \"low\", \"open\", \"close\"\r\n\tsourcePath: \"close\",\r\n\tmultiplier: 2,\r\n\tmovingAverageType: \"sma\"\r\n};\r\n\r\nexport const ATR = {\r\n\twindowSize: 14,\r\n};\r\n\r\nexport const ForceIndex = {\r\n\tsourcePath: \"close\", // \"high\", \"low\", \"open\", \"close\"\r\n\tvolumePath: \"volume\",\r\n};\r\nexport const SmoothedForceIndex = {\r\n\tsourcePath: \"close\", // \"high\", \"low\", \"open\", \"close\"\r\n\tvolumePath: \"volume\",\r\n\tsmoothingType: \"ema\",\r\n\tsmoothingWindow: 13,\r\n};\r\nexport const Change = {\r\n\tsourcePath: \"close\", // \"high\", \"low\", \"open\", \"close\"\r\n};\r\nexport const Compare = {\r\n\tbasePath: \"close\",\r\n\tmainKeys: [\"open\", \"high\", \"low\", \"close\"],\r\n\tcompareKeys: [],\r\n};\r\n\r\nexport const ElderRay = {\r\n\twindowSize: 13,\r\n\t// source: d => d.close, // \"high\", \"low\", \"open\", \"close\"\r\n\tsourcePath: \"close\", // \"high\", \"low\", \"open\", \"close\"\r\n\tmovingAverageType: \"sma\",\r\n};\r\n\r\nexport const ElderImpulse = {\r\n\tsourcePath: \"close\", // \"high\", \"low\", \"open\", \"close\"\r\n};\r\n\r\nexport const SAR = {\r\n\taccelerationFactor: 0.02,\r\n\tmaxAccelerationFactor: 0.2,\r\n};\r\n\r\nexport const MACD = {\r\n\tfast: 12,\r\n\tslow: 26,\r\n\tsignal: 9,\r\n\t// source: d => d.close, // \"high\", \"low\", \"open\", \"close\"\r\n\tsourcePath: \"close\",\r\n};\r\n\r\nexport const FullStochasticOscillator = {\r\n\twindowSize: 12,\r\n\tkWindowSize: 3,\r\n\tdWindowSize: 3,\r\n};\r\n\r\nexport const RSI = {\r\n\twindowSize: 14,\r\n\t// source: d => d.close, // \"high\", \"low\", \"open\", \"close\"\r\n\tsourcePath: \"close\", // \"high\", \"low\", \"open\", \"close\"\r\n};\r\n\r\nexport const EMA = {\r\n\t// source: d => d.close, // \"high\", \"low\", \"open\", \"close\"\r\n\tsourcePath: \"close\",\r\n\twindowSize: 10,\r\n};\r\n\r\nexport const SMA = {\r\n\t// source: d => d.close, // \"high\", \"low\", \"open\", \"close\"\r\n\tsourcePath: \"close\",\r\n\twindowSize: 10,\r\n};\r\n\r\nexport const WMA = {\r\n\t// source: d => d.close, // \"high\", \"low\", \"open\", \"close\"\r\n\tsourcePath: \"close\",\r\n\twindowSize: 10,\r\n};\r\n\r\nexport const TMA = {\r\n\t// source: d => d.close, // \"high\", \"low\", \"open\", \"close\"\r\n\tsourcePath: \"close\",\r\n\twindowSize: 10,\r\n};\r\n\r\nexport const Kagi = {\r\n\treversalType: \"ATR\", // \"ATR\", \"FIXED\"\r\n\twindowSize: 14,\r\n\treversal: 2,\r\n\tsourcePath: \"close\", // \"high\", \"low\", \"open\", \"close\"\r\n\t/* dateAccessor: d => d.date,\r\n\tdateMutator: (d, date) => { d.date = date; }, */\r\n};\r\n\r\nexport const Renko = {\r\n\treversalType: \"ATR\", // \"ATR\", \"FIXED\"\r\n\twindowSize: 14,\r\n\tfixedBrickSize: 2,\r\n\tsourcePath: \"high/low\", // \"close\", \"high/low\"\r\n\t/* source: d => ({ high: d.high, low: d.low }),\r\n\tdateAccessor: d => d.date,\r\n\tdateMutator: (d, date) => { d.date = date; }, */\r\n};\r\n\r\nexport const PointAndFigure = {\r\n\tboxSize: 0.5,\r\n\treversal: 3,\r\n\tsourcePath: \"high/low\", // \"close\", \"high/low\"\r\n\r\n\t/* source: d => ({ high: d.high, low: d.low }), // \"close\", \"hi/lo\"\r\n\tdateAccessor: d => d.date,\r\n\tdateMutator: (d, date) => { d.date = date; }, */\r\n};\r\n","\r\n\r\nexport const themes = {\r\n\tlight: {\r\n\t\tBollingerBand: {\r\n\t\t\tstroke: {\r\n\t\t\t\ttop: \"#964B00\",\r\n\t\t\t\tmiddle: \"#000000\",\r\n\t\t\t\tbottom: \"#964B00\",\r\n\t\t\t},\r\n\t\t\tfill: \"#4682B4\",\r\n\t\t},\r\n\t\tElderImpulse: {\r\n\t\t\tstroke: {\r\n\t\t\t\tup: \"#6BA583\",\r\n\t\t\t\tdown: \"#FF0000\",\r\n\t\t\t\tneutral: \"#0000FF\",\r\n\t\t\t}\r\n\t\t},\r\n\t\tMACD: {\r\n\t\t\tfill: {\r\n\t\t\t\tdivergence: \"#4682B4\"\r\n\t\t\t},\r\n\t\t\tstroke: {\r\n\t\t\t\tmacd: \"#FF0000\",\r\n\t\t\t\tsignal: \"#00F300\",\r\n\t\t\t},\r\n\t\t},\r\n\t\tFullStochasticOscillator: {\r\n\t\t\tstroke: {\r\n\t\t\t\ttop: \"#37a600\",\r\n\t\t\t\tmiddle: \"#b8ab00\",\r\n\t\t\t\tbottom: \"#37a600\",\r\n\t\t\t\tdLine: \"#17becf\",\r\n\t\t\t\tkLine: \"#ff7f0e\",\r\n\t\t\t},\r\n\t\t},\r\n\t},\r\n\tdark: {\r\n\t\tBollingerBand: {\r\n\t\t\tstroke: {\r\n\t\t\t\ttop: \"#964B00\",\r\n\t\t\t\tmiddle: \"#FF6600\",\r\n\t\t\t\tbottom: \"#964B00\",\r\n\t\t\t},\r\n\t\t\tfill: \"#4682B4\",\r\n\t\t},\r\n\t\tElderImpulse: {\r\n\t\t\tstroke: {\r\n\t\t\t\tup: \"#6BA583\",\r\n\t\t\t\tdown: \"#FF0000\",\r\n\t\t\t\tneutral: \"#0000FF\",\r\n\t\t\t}\r\n\t\t},\r\n\t\tMACD: {\r\n\t\t\tfill: {\r\n\t\t\t\tdivergence: \"#FF6600\"\r\n\t\t\t},\r\n\t\t\tstroke: {\r\n\t\t\t\tmacd: \"#ea2bff\",\r\n\t\t\t\tsignal: \"#74d400\",\r\n\t\t\t},\r\n\t\t},\r\n\t\tFullStochasticOscillator: {\r\n\t\t\tstroke: {\r\n\t\t\t\ttop: \"#37a600\",\r\n\t\t\t\tmiddle: \"#b8ab00\",\r\n\t\t\t\tbottom: \"#37a600\",\r\n\t\t\t\tdLine: \"#ea2bff\",\r\n\t\t\t\tkLine: \"#74d400\"\r\n\t\t\t}\r\n\t\t},\r\n\t}\r\n};\r\n\r\nexport const BollingerBand = themes.light.BollingerBand;\r\nexport const ElderImpulse = themes.light.ElderImpulse;\r\nexport const MACD = themes.light.MACD;\r\nexport const FullStochasticOscillator = themes.light.FullStochasticOscillator;\r\n","\r\n\r\n/*\r\nhttps://github.com/ScottLogic/d3fc/blob/master/src/indicator/algorithm/calculator/exponentialMovingAverage.js\r\n\r\nThe MIT License (MIT)\r\n\r\nCopyright (c) 2014-2015 Scott Logic Ltd.\r\n\r\nPermission is hereby granted, free of charge, to any person obtaining a copy\r\nof this software and associated documentation files (the \"Software\"), to deal\r\nin the Software without restriction, including without limitation the rights\r\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\r\ncopies of the Software, and to permit persons to whom the Software is\r\nfurnished to do so, subject to the following conditions:\r\n\r\nThe above copyright notice and this permission notice shall be included in\r\nall copies or substantial portions of the Software.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\r\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\r\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\r\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\r\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\r\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\r\nTHE SOFTWARE.\r\n*/\r\n\r\nimport { isNotDefined, path } from \"../utils\";\r\nimport { EMA as defaultOptions } from \"./defaultOptionsForComputation\";\r\n\r\nexport default function() {\r\n\r\n\tlet options = defaultOptions;\r\n\r\n\tfunction calculator(data) {\r\n\t\tconst { windowSize, sourcePath } = options;\r\n\r\n\t\tconst source = path(sourcePath);\r\n\t\tconst alpha = 2 / (windowSize + 1);\r\n\t\tlet previous;\r\n\t\tlet initialAccumulator = 0;\r\n\t\tlet skip = 0;\r\n\r\n\t\treturn data.map(function(d, i) {\r\n\t\t\tconst v = source(d, i);\r\n\t\t\tif (isNotDefined(previous) && isNotDefined(v)) {\r\n\t\t\t\tskip++;\r\n\t\t\t\treturn undefined;\r\n\t\t\t} else if (i < windowSize + skip - 1) {\r\n\t\t\t\tinitialAccumulator += v;\r\n\t\t\t\treturn undefined;\r\n\t\t\t} else if (i === windowSize + skip - 1) {\r\n\t\t\t\tinitialAccumulator += v;\r\n\t\t\t\tconst initialValue = initialAccumulator / windowSize;\r\n\t\t\t\tprevious = initialValue;\r\n\t\t\t\treturn initialValue;\r\n\t\t\t} else {\r\n\t\t\t\tconst nextValue = v * alpha + (1 - alpha) * previous;\r\n\t\t\t\tprevious = nextValue;\r\n\t\t\t\treturn nextValue;\r\n\t\t\t}\r\n\t\t});\r\n\t}\r\n\tcalculator.undefinedLength = function() {\r\n\t\tconst { windowSize } = options;\r\n\t\treturn windowSize - 1;\r\n\t};\r\n\tcalculator.options = function(x) {\r\n\t\tif (!arguments.length) {\r\n\t\t\treturn options;\r\n\t\t}\r\n\t\toptions = { ...defaultOptions, ...x };\r\n\t\treturn calculator;\r\n\t};\r\n\r\n\treturn calculator;\r\n}\r\n","\r\n\r\nimport { mean } from \"d3-array\";\r\n\r\nimport { slidingWindow } from \"../utils\";\r\nimport { SMA as defaultOptions } from \"./defaultOptionsForComputation\";\r\n\r\nexport default function() {\r\n\r\n\tlet options = defaultOptions;\r\n\r\n\tfunction calculator(data) {\r\n\t\tconst { windowSize, sourcePath } = options;\r\n\r\n\t\tconst average = slidingWindow()\r\n\t\t\t.windowSize(windowSize)\r\n\t\t\t.sourcePath(sourcePath)\r\n\t\t\t.accumulator(values => mean(values));\r\n\r\n\t\treturn average(data);\r\n\t}\r\n\tcalculator.undefinedLength = function() {\r\n\t\tconst { windowSize } = options;\r\n\t\treturn windowSize - 1;\r\n\t};\r\n\tcalculator.options = function(x) {\r\n\t\tif (!arguments.length) {\r\n\t\t\treturn options;\r\n\t\t}\r\n\t\toptions = { ...defaultOptions, ...x };\r\n\t\treturn calculator;\r\n\t};\r\n\r\n\treturn calculator;\r\n}\r\n","\r\n\r\nimport { sum } from \"d3-array\";\r\n\r\nimport { ATR as defaultOptions } from \"./defaultOptionsForComputation\";\r\nimport { slidingWindow, last, isDefined } from \"../utils\";\r\n\r\nexport default function() {\r\n\r\n\tlet options = defaultOptions;\r\n\tlet source = d => ({ open: d.open, high: d.high, low: d.low, close: d.close });\r\n\r\n\tfunction calculator(data) {\r\n\t\tconst { windowSize } = options;\r\n\r\n\t\tconst trueRangeAlgorithm = slidingWindow()\r\n\t\t\t.windowSize(2)\r\n\t\t\t.source(source)\r\n\t\t\t.undefinedValue(d => d.high - d.low) // the first TR value is simply the High minus the Low\r\n\t\t\t.accumulator(values => {\r\n\t\t\t\tconst prev = values[0];\r\n\t\t\t\tconst d = values[1];\r\n\t\t\t\treturn Math.max(d.high - d.low,\r\n\t\t\t\t\td.high - prev.close,\r\n\t\t\t\t\td.low - prev.close);\r\n\t\t\t});\r\n\r\n\t\tlet prevATR;\r\n\r\n\t\tconst atrAlgorithm = slidingWindow()\r\n\t\t\t.skipInitial(1) // trueRange starts from index 1 so ATR starts from 1\r\n\t\t\t.windowSize(windowSize)\r\n\t\t\t.accumulator(values => {\r\n\t\t\t\tconst tr = last(values);\r\n\t\t\t\tconst atr = isDefined(prevATR)\r\n\t\t\t\t\t? ((prevATR * (windowSize - 1)) + tr) / windowSize\r\n\t\t\t\t\t: sum(values) / windowSize;\r\n\r\n\t\t\t\tprevATR = atr;\r\n\t\t\t\treturn atr;\r\n\t\t\t});\r\n\r\n\t\tconst newData = atrAlgorithm(trueRangeAlgorithm(data));\r\n\r\n\t\treturn newData;\r\n\t}\r\n\tcalculator.undefinedLength = function() {\r\n\t\tconst { windowSize } = options;\r\n\t\treturn windowSize - 1;\r\n\t};\r\n\tcalculator.options = function(x) {\r\n\t\tif (!arguments.length) {\r\n\t\t\treturn options;\r\n\t\t}\r\n\t\toptions = { ...defaultOptions, ...x };\r\n\t\treturn calculator;\r\n\t};\r\n\r\n\tcalculator.source = function(x) {\r\n\t\tif (!arguments.length) {\r\n\t\t\treturn source;\r\n\t\t}\r\n\t\tsource = x;\r\n\t\treturn calculator;\r\n\t};\r\n\r\n\treturn calculator;\r\n}\r\n","\r\n\r\nimport { isNotDefined } from \"../utils\";\r\nimport { PointAndFigure as defaultOptions } from \"./defaultOptionsForComputation\";\r\n\r\nfunction createBox(d, dateAccessor, dateMutator) {\r\n\tconst box = {\r\n\t\topen: d.open,\r\n\t\tfromDate: dateAccessor(d),\r\n\t\ttoDate: dateAccessor(d),\r\n\t\tstartOfYear: d.startOfYear,\r\n\t\tstartOfQuarter: d.startOfQuarter,\r\n\t\tstartOfMonth: d.startOfMonth,\r\n\t\tstartOfWeek: d.startOfWeek\r\n\t};\r\n\tdateMutator(box, dateAccessor(d));\r\n\treturn box;\r\n}\r\n\r\nfunction updateColumns(columnData, dateAccessor, dateMutator) {\r\n\tcolumnData.forEach(function(d) {\r\n\t\t// var lastBox = d.boxes[d.boxes.length - 1];\r\n\r\n\t\td.startOfYear = false;\r\n\t\td.startOfQuarter = false;\r\n\t\td.startOfMonth = false;\r\n\t\td.startOfWeek = false;\r\n\r\n\t\td.boxes.forEach(function(eachBox) {\r\n\t\t\tif (isNotDefined(d.open)) d.open = eachBox.open;\r\n\t\t\td.close = eachBox.close;\r\n\t\t\td.high = Math.max(d.open, d.close);\r\n\t\t\td.low = Math.min(d.open, d.close);\r\n\r\n\t\t\tif (isNotDefined(d.fromDate)) d.fromDate = eachBox.fromDate;\r\n\t\t\tif (isNotDefined(d.date)) d.date = eachBox.date;\r\n\t\t\td.toDate = eachBox.toDate;\r\n\r\n\t\t\tif (eachBox.startOfYear) {\r\n\t\t\t\td.startOfYear = d.startOfYear || eachBox.startOfYear;\r\n\t\t\t\td.startOfQuarter = eachBox.startOfQuarter;\r\n\t\t\t\td.startOfMonth = eachBox.startOfMonth;\r\n\t\t\t\td.startOfWeek = eachBox.startOfWeek;\r\n\r\n\t\t\t\tdateMutator(d, dateAccessor(eachBox));\r\n\t\t\t}\r\n\t\t\tif (d.startOfQuarter !== true && eachBox.startOfQuarter) {\r\n\t\t\t\td.startOfQuarter = eachBox.startOfQuarter;\r\n\t\t\t\td.startOfMonth = eachBox.startOfMonth;\r\n\t\t\t\td.startOfWeek = eachBox.startOfWeek;\r\n\t\t\t\t// d.displayDate = eachBox.displayDate;\r\n\t\t\t\tdateMutator(d, dateAccessor(eachBox));\r\n\t\t\t}\r\n\t\t\tif (d.startOfMonth !== true && eachBox.startOfMonth) {\r\n\t\t\t\td.startOfMonth = eachBox.startOfMonth;\r\n\t\t\t\td.startOfWeek = eachBox.startOfWeek;\r\n\t\t\t\t// d.displayDate = eachBox.displayDate;\r\n\t\t\t\tdateMutator(d, dateAccessor(eachBox));\r\n\t\t\t}\r\n\t\t\tif (d.startOfWeek !== true && eachBox.startOfWeek) {\r\n\t\t\t\td.startOfWeek = eachBox.startOfWeek;\r\n\t\t\t\t// d.displayDate = eachBox.displayDate;\r\n\t\t\t\tdateMutator(d, dateAccessor(eachBox));\r\n\t\t\t}\r\n\t\t});\r\n\r\n\t});\r\n\r\n\t// console.table(columnData);\r\n\t// console.table(rawData);\r\n\treturn columnData;\r\n}\r\n\r\n\r\nexport default function() {\r\n\tlet options = defaultOptions;\r\n\tlet dateAccessor = d => d.date;\r\n\tlet dateMutator = (d, date) => { d.date = date; };\r\n\r\n\tfunction calculator(rawData) {\r\n\t\tconst { reversal, boxSize, sourcePath } = options;\r\n\r\n\t\tconst source = sourcePath === \"high/low\"\r\n\t\t\t? d => { return { high: d.high, low: d.low }; }\r\n\t\t\t: d => { return { high: d.close, low: d.close }; };\r\n\r\n\r\n\t\tconst pricingMethod = source;\r\n\t\tconst columnData = [];\r\n\r\n\t\tlet column = {\r\n\t\t\t\tboxes: [],\r\n\t\t\t\topen: rawData[0].open\r\n\t\t\t}, box = createBox(rawData[0], dateAccessor, dateMutator);\r\n\r\n\t\tcolumnData.push(column);\r\n\r\n\t\trawData.forEach(function(d) {\r\n\t\t\tcolumn.volume = (column.volume || 0) + d.volume;\r\n\r\n\t\t\tif (!box.startOfYear) {\r\n\t\t\t\tbox.startOfYear = d.startOfYear;\r\n\t\t\t\tif (box.startOfYear) {\r\n\t\t\t\t\tdateMutator(box, dateAccessor(d));\r\n\t\t\t\t\t// box.displayDate = d.displayDate;\r\n\t\t\t\t}\r\n\t\t\t}\r\n\r\n\t\t\tif (!box.startOfYear && !box.startOfQuarter) {\r\n\t\t\t\tbox.startOfQuarter = d.startOfQuarter;\r\n\t\t\t\tif (box.startOfQuarter && !box.startOfYear) {\r\n\t\t\t\t\tdateMutator(box, dateAccessor(d));\r\n\t\t\t\t\t// box.displayDate = d.displayDate;\r\n\t\t\t\t}\r\n\t\t\t}\r\n\r\n\t\t\tif (!box.startOfQuarter && !box.startOfMonth) {\r\n\t\t\t\tbox.startOfMonth = d.startOfMonth;\r\n\t\t\t\tif (box.startOfMonth && !box.startOfQuarter) {\r\n\t\t\t\t\tdateMutator(box, dateAccessor(d));\r\n\t\t\t\t\t// box.displayDate = d.displayDate;\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t\tif (!box.startOfMonth && !box.startOfWeek) {\r\n\t\t\t\tbox.startOfWeek = d.startOfWeek;\r\n\t\t\t\tif (box.startOfWeek && !box.startOfMonth) {\r\n\t\t\t\t\tdateMutator(box, dateAccessor(d));\r\n\t\t\t\t\t// box.displayDate = d.displayDate;\r\n\t\t\t\t}\r\n\t\t\t}\r\n\r\n\t\t\tif (columnData.length === 1 && column.boxes.length === 0) {\r\n\t\t\t\tconst upwardMovement = (Math.max((pricingMethod(d).high - column.open), 0)); // upward movement\r\n\t\t\t\tconst downwardMovement = Math.abs(Math.min((column.open - pricingMethod(d).low), 0)); // downward movement\r\n\t\t\t\tcolumn.direction = upwardMovement > downwardMovement ? 1 : -1;\r\n\t\t\t\tif (boxSize * reversal < upwardMovement\r\n\t\t\t\t\t|| boxSize * reversal < downwardMovement) {\r\n\t\t\t\t\t// enough movement to trigger a reversal\r\n\t\t\t\t\tbox.toDate = dateAccessor(d);\r\n\t\t\t\t\tbox.open = column.open;\r\n\t\t\t\t\tconst noOfBoxes = column.direction > 0\r\n\t\t\t\t\t\t? Math.floor(upwardMovement / boxSize)\r\n\t\t\t\t\t\t: Math.floor(downwardMovement / boxSize);\r\n\t\t\t\t\tfor (let i = 0; i < noOfBoxes; i++) {\r\n\t\t\t\t\t\tbox.close = box.open + column.direction * boxSize;\r\n\t\t\t\t\t\tconst prevBoxClose = box.close;\r\n\t\t\t\t\t\tcolumn.boxes.push(box);\r\n\t\t\t\t\t\tbox = createBox(box, dateAccessor, dateMutator);\r\n\t\t\t\t\t\t// box = cloneMe(box);\r\n\t\t\t\t\t\tbox.open = prevBoxClose;\r\n\t\t\t\t\t}\r\n\t\t\t\t\tbox.fromDate = dateAccessor(d);\r\n\t\t\t\t\tbox.date = dateAccessor(d);\r\n\t\t\t\t}\r\n\t\t\t} else {\r\n\t\t\t\t// one or more boxes already formed in the current column\r\n\t\t\t\tconst upwardMovement = (Math.max((pricingMethod(d).high - box.open), 0)); // upward movement\r\n\t\t\t\tconst downwardMovement = Math.abs(Math.min((pricingMethod(d).low - box.open), 0)); // downward movement\r\n\r\n\t\t\t\tif ((column.direction > 0 && upwardMovement > boxSize) /* rising column AND box can be formed */\r\n\t\t\t\t\t\t|| (column.direction < 0 && downwardMovement > boxSize) /* falling column AND box can be formed */ ) {\r\n\t\t\t\t\t// form another box\r\n\t\t\t\t\tbox.close = box.open + column.direction * boxSize;\r\n\t\t\t\t\tbox.toDate = dateAccessor(d);\r\n\t\t\t\t\tconst prevBoxClose = box.close;\r\n\t\t\t\t\tcolumn.boxes.push(box);\r\n\t\t\t\t\tbox = createBox(d, dateAccessor, dateMutator);\r\n\t\t\t\t\tbox.open = prevBoxClose;\r\n\t\t\t\t\tbox.fromDate = dateAccessor(d);\r\n\t\t\t\t\tdateMutator(box, dateAccessor(d));\r\n\t\t\t\t} else if ((column.direction > 0 && downwardMovement > boxSize * reversal) /* rising column and there is downward movement to trigger a reversal */\r\n\t\t\t\t\t\t|| (column.direction < 0 && upwardMovement > boxSize * reversal)/* falling column and there is downward movement to trigger a reversal */) {\r\n\t\t\t\t\t// reversal\r\n\r\n\t\t\t\t\tbox.open = box.open + -1 * column.direction * boxSize;\r\n\t\t\t\t\tbox.toDate = dateAccessor(d);\r\n\t\t\t\t\t// box.displayDate = d.displayDate;\r\n\t\t\t\t\tdateMutator(box, dateAccessor(d));\r\n\t\t\t\t\t// box.startOfYear = d.startOfYear;\r\n\t\t\t\t\t// box.startOfQuarter = d.startOfQuarter;\r\n\t\t\t\t\t// box.startOfMonth = d.startOfMonth;\r\n\t\t\t\t\t// box.startOfWeek = d.startOfWeek;\r\n\t\t\t\t\t// console.table(column.boxes);\r\n\t\t\t\t\t// var idx = index + 1;\r\n\t\t\t\t\tcolumn = {\r\n\t\t\t\t\t\tboxes: [],\r\n\t\t\t\t\t\tvolume: 0,\r\n\t\t\t\t\t\tdirection: -1 * column.direction\r\n\t\t\t\t\t};\r\n\t\t\t\t\tconst noOfBoxes = column.direction > 0\r\n\t\t\t\t\t\t? Math.floor(upwardMovement / boxSize)\r\n\t\t\t\t\t\t: Math.floor(downwardMovement / boxSize);\r\n\t\t\t\t\tfor (let i = 0; i < noOfBoxes; i++) {\r\n\t\t\t\t\t\tbox.close = box.open + column.direction * boxSize;\r\n\t\t\t\t\t\tconst prevBoxClose = box.close;\r\n\t\t\t\t\t\tcolumn.boxes.push(box);\r\n\t\t\t\t\t\tbox = createBox(d, dateAccessor, dateMutator);\r\n\t\t\t\t\t\tbox.open = prevBoxClose;\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\tcolumnData.push(column);\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t});\r\n\t\tupdateColumns(columnData, dateAccessor, dateMutator);\r\n\r\n\t\treturn columnData;\r\n\t}\r\n\tcalculator.options = function(x) {\r\n\t\tif (!arguments.length) {\r\n\t\t\treturn options;\r\n\t\t}\r\n\t\toptions = { ...defaultOptions, ...x };\r\n\t\treturn calculator;\r\n\t};\r\n\tcalculator.dateMutator = function(x) {\r\n\t\tif (!arguments.length) return dateMutator;\r\n\t\tdateMutator = x;\r\n\t\treturn calculator;\r\n\t};\r\n\tcalculator.dateAccessor = function(x) {\r\n\t\tif (!arguments.length) return dateAccessor;\r\n\t\tdateAccessor = x;\r\n\t\treturn calculator;\r\n\t};\r\n\r\n\treturn calculator;\r\n}\r\n","\r\n\r\n/*\r\nhttps://github.com/ScottLogic/d3fc/blob/master/src/indicator/algorithm/calculator/stochasticOscillator.js\r\n\r\nThe MIT License (MIT)\r\n\r\nCopyright (c) 2014-2015 Scott Logic Ltd.\r\n\r\nPermission is hereby granted, free of charge, to any person obtaining a copy\r\nof this software and associated documentation files (the \"Software\"), to deal\r\nin the Software without restriction, including without limitation the rights\r\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\r\ncopies of the Software, and to permit persons to whom the Software is\r\nfurnished to do so, subject to the following conditions:\r\n\r\nThe above copyright notice and this permission notice shall be included in\r\nall copies or substantial portions of the Software.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\r\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\r\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\r\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\r\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\r\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\r\nTHE SOFTWARE.\r\n*/\r\n\r\nimport { max, min, mean } from \"d3-array\";\r\n\r\nimport { last, slidingWindow, zipper } from \"../utils\";\r\nimport { FullStochasticOscillator as defaultOptions } from \"./defaultOptionsForComputation\";\r\n\r\nexport default function() {\r\n\r\n\tlet options = defaultOptions;\r\n\r\n\tlet source = d => ({ open: d.open, high: d.high, low: d.low, close: d.close });\r\n\r\n\tfunction calculator(data) {\r\n\t\tconst { windowSize, kWindowSize, dWindowSize } = options;\r\n\r\n\t\tconst high = d => source(d).high,\r\n\t\t\tlow = d => source(d).low,\r\n\t\t\tclose = d => source(d).close;\r\n\r\n\t\tconst kWindow = slidingWindow()\r\n\t\t\t.windowSize(windowSize)\r\n\t\t\t.accumulator(values => {\r\n\r\n\t\t\t\tconst highestHigh = max(values, high);\r\n\t\t\t\tconst lowestLow = min(values, low);\r\n\r\n\t\t\t\tconst currentClose = close(last(values));\r\n\t\t\t\tconst k = (currentClose - lowestLow) / (highestHigh - lowestLow) * 100;\r\n\r\n\t\t\t\treturn k;\r\n\t\t\t});\r\n\r\n\t\tconst kSmoothed = slidingWindow()\r\n\t\t\t.skipInitial(windowSize - 1)\r\n\t\t\t.windowSize(kWindowSize)\r\n\t\t\t.accumulator(values => mean(values));\r\n\r\n\t\tconst dWindow = slidingWindow()\r\n\t\t\t.skipInitial(windowSize - 1 + kWindowSize - 1)\r\n\t\t\t.windowSize(dWindowSize)\r\n\t\t\t.accumulator(values => mean(values));\r\n\r\n\t\tconst stoAlgorithm = zipper()\r\n\t\t\t.combine((K, D) => ({ K, D }));\r\n\r\n\t\tconst kData = kSmoothed(kWindow(data));\r\n\t\tconst dData = dWindow(kData);\r\n\r\n\t\tconst indicatorData = stoAlgorithm(kData, dData);\r\n\r\n\t\treturn indicatorData;\r\n\t}\r\n\tcalculator.undefinedLength = function() {\r\n\t\tconst { windowSize, kWindowSize, dWindowSize } = options;\r\n\t\treturn windowSize + kWindowSize + dWindowSize;\r\n\t};\r\n\tcalculator.source = function(x) {\r\n\t\tif (!arguments.length) {\r\n\t\t\treturn source;\r\n\t\t}\r\n\t\tsource = x;\r\n\t\treturn calculator;\r\n\t};\r\n\tcalculator.options = function(x) {\r\n\t\tif (!arguments.length) {\r\n\t\t\treturn options;\r\n\t\t}\r\n\t\toptions = { ...defaultOptions, ...x };\r\n\t\treturn calculator;\r\n\t};\r\n\r\n\treturn calculator;\r\n}\r\n","\r\n\r\nimport { slidingWindow, path } from \"../utils\";\r\nimport { ForceIndex as defaultOptions } from \"./defaultOptionsForComputation\";\r\n\r\nexport default function() {\r\n\r\n\tlet options = defaultOptions;\r\n\r\n\tfunction calculator(data) {\r\n\t\tconst { sourcePath, volumePath } = options;\r\n\r\n\t\tconst source = path(sourcePath);\r\n\t\tconst volume = path(volumePath);\r\n\r\n\t\tconst forceIndexCalulator = slidingWindow()\r\n\t\t\t.windowSize(2)\r\n\t\t\t.accumulator(([prev, curr]) => (source(curr) - source(prev)) * volume(curr));\r\n\r\n\t\tconst forceIndex = forceIndexCalulator(data);\r\n\r\n\t\treturn forceIndex;\r\n\t}\r\n\tcalculator.undefinedLength = function() {\r\n\t\treturn 2;\r\n\t};\r\n\tcalculator.options = function(x) {\r\n\t\tif (!arguments.length) {\r\n\t\t\treturn options;\r\n\t\t}\r\n\t\toptions = { ...defaultOptions, ...x };\r\n\t\treturn calculator;\r\n\t};\r\n\r\n\treturn calculator;\r\n}\r\n","\r\n\r\nimport { mappedSlidingWindow, isNotDefined, isDefined } from \"../utils\";\r\nimport { SAR as defaultOptions } from \"./defaultOptionsForComputation\";\r\n\r\nfunction calc(prev, now) {\r\n\tconst risingSar = prev.risingSar\r\n\t\t+ prev.af * (prev.risingEp - prev.risingSar);\r\n\r\n\tconst fallingSar = prev.fallingSar\r\n\t\t- prev.af * (prev.fallingSar - prev.fallingEp);\r\n\r\n\tconst risingEp = Math.max(prev.risingEp, now.high);\r\n\tconst fallingEp = Math.min(prev.fallingEp, now.low);\r\n\r\n\treturn {\r\n\t\trisingSar,\r\n\t\tfallingSar,\r\n\t\trisingEp,\r\n\t\tfallingEp,\r\n\t};\r\n}\r\n\r\nexport default function() {\r\n\r\n\tlet options = defaultOptions;\r\n\r\n\tfunction calculator(data) {\r\n\t\tconst { accelerationFactor, maxAccelerationFactor } = options;\r\n\r\n\t\tconst algorithm = mappedSlidingWindow()\r\n\t\t\t.windowSize(2)\r\n\t\t\t.undefinedValue(({ high, low }) => {\r\n\t\t\t\treturn {\r\n\t\t\t\t\trisingSar: low,\r\n\t\t\t\t\trisingEp: high,\r\n\t\t\t\t\tfallingSar: high,\r\n\t\t\t\t\tfallingEp: low,\r\n\t\t\t\t\taf: accelerationFactor,\r\n\t\t\t\t};\r\n\t\t\t})\r\n\t\t\t.accumulator(([prev, now]) => {\r\n\r\n\t\t\t\tconst {\r\n\t\t\t\t\trisingSar,\r\n\t\t\t\t\tfallingSar,\r\n\t\t\t\t\trisingEp,\r\n\t\t\t\t\tfallingEp,\r\n\t\t\t\t} = calc(prev, now);\r\n\r\n\t\t\t\tif (isNotDefined(prev.use)\r\n\t\t\t\t\t\t&& risingSar > now.low\r\n\t\t\t\t\t\t&& fallingSar < now.high) {\r\n\t\t\t\t\treturn {\r\n\t\t\t\t\t\trisingSar,\r\n\t\t\t\t\t\tfallingSar,\r\n\t\t\t\t\t\trisingEp,\r\n\t\t\t\t\t\tfallingEp,\r\n\t\t\t\t\t};\r\n\t\t\t\t}\r\n\r\n\t\t\t\tconst use = isDefined(prev.use)\r\n\t\t\t\t\t? prev.use === \"rising\"\r\n\t\t\t\t\t\t? risingSar > now.low ? \"falling\" : \"rising\"\r\n\t\t\t\t\t\t: fallingSar < now.high ? \"rising\" : \"falling\"\r\n\t\t\t\t\t: risingSar > now.low\r\n\t\t\t\t\t\t? \"falling\"\r\n\t\t\t\t\t\t: \"rising\";\r\n\r\n\t\t\t\tconst current = prev.use === use\r\n\t\t\t\t\t? {\r\n\t\t\t\t\t\taf: Math.min(maxAccelerationFactor, prev.af + accelerationFactor),\r\n\t\t\t\t\t\tfallingEp,\r\n\t\t\t\t\t\trisingEp,\r\n\t\t\t\t\t\tfallingSar,\r\n\t\t\t\t\t\trisingSar,\r\n\t\t\t\t\t}\r\n\t\t\t\t\t: {\r\n\t\t\t\t\t\taf: accelerationFactor,\r\n\t\t\t\t\t\tfallingEp: now.low,\r\n\t\t\t\t\t\trisingEp: now.high,\r\n\t\t\t\t\t\tfallingSar: Math.max(prev.risingEp, now.high),\r\n\t\t\t\t\t\trisingSar: Math.min(prev.fallingEp, now.low),\r\n\t\t\t\t\t};\r\n\r\n\t\t\t\tconst { date, high, low } = now;\r\n\t\t\t\treturn {\r\n\t\t\t\t\tdate,\r\n\t\t\t\t\thigh,\r\n\t\t\t\t\tlow,\r\n\t\t\t\t\t...current,\r\n\t\t\t\t\tuse,\r\n\t\t\t\t\tsar: use === \"falling\" ? current.fallingSar : current.risingSar,\r\n\t\t\t\t};\r\n\t\t\t});\r\n\r\n\t\tconst calculatedData = algorithm(data).map(d => d.sar);\r\n\t\t// console.log(calculatedData);\r\n\r\n\t\treturn calculatedData;\r\n\t}\r\n\tcalculator.undefinedLength = function() {\r\n\t\treturn 1;\r\n\t};\r\n\tcalculator.options = function(x) {\r\n\t\tif (!arguments.length) {\r\n\t\t\treturn options;\r\n\t\t}\r\n\t\toptions = { ...defaultOptions, ...x };\r\n\t\treturn calculator;\r\n\t};\r\n\r\n\treturn calculator;\r\n}\r\n","\r\n\r\nimport { overlayColors } from \"../utils\";\r\n\r\nlet i = 0;\r\n\r\nexport default function() {\r\n\r\n\tlet id = i++, accessor, stroke, fill, echo, type, strokeWidth;\r\n\r\n\tfunction baseIndicator() {\r\n\t}\r\n\r\n\tbaseIndicator.id = function(x) {\r\n\t\tif (!arguments.length) return id;\r\n\t\tid = x;\r\n\t\treturn baseIndicator;\r\n\t};\r\n\tbaseIndicator.accessor = function(x) {\r\n\t\tif (!arguments.length) return accessor;\r\n\t\taccessor = x;\r\n\t\treturn baseIndicator;\r\n\t};\r\n\tbaseIndicator.stroke = function(x) {\r\n\t\tif (!arguments.length) return !stroke ? stroke = overlayColors(id) : stroke;\r\n\t\tstroke = x;\r\n\t\treturn baseIndicator;\r\n\t};\r\n\tbaseIndicator.strokeWidth = function(x) {\r\n\t\tif (!arguments.length) return strokeWidth;\r\n\t\tstrokeWidth = x;\r\n\t\treturn baseIndicator;\r\n\t};\r\n\tbaseIndicator.fill = function(x) {\r\n\t\tif (!arguments.length) return !fill ? fill = overlayColors(id) : fill;\r\n\t\tfill = x;\r\n\t\treturn baseIndicator;\r\n\t};\r\n\tbaseIndicator.echo = function(x) {\r\n\t\tif (!arguments.length) return echo;\r\n\t\techo = x;\r\n\t\treturn baseIndicator;\r\n\t};\r\n\tbaseIndicator.type = function(x) {\r\n\t\tif (!arguments.length) return type;\r\n\t\ttype = x;\r\n\t\treturn baseIndicator;\r\n\t};\r\n\treturn baseIndicator;\r\n}","\r\n\r\nimport { rebind, merge } from \"../utils\";\r\n\r\nimport { ema } from \"../calculator\";\r\nimport baseIndicator from \"./baseIndicator\";\r\n\r\nconst ALGORITHM_TYPE = \"EMA\";\r\n\r\nexport default function() {\r\n\r\n\tconst base = baseIndicator()\r\n\t\t.type(ALGORITHM_TYPE)\r\n\t\t.accessor(d => d.ema);\r\n\r\n\tconst underlyingAlgorithm = ema();\r\n\r\n\tconst mergedAlgorithm = merge()\r\n\t\t.algorithm(underlyingAlgorithm)\r\n\t\t.merge((datum, indicator) => { datum.ema = indicator; });\r\n\r\n\tconst indicator = function(data, options = { merge: true }) {\r\n\t\tif (options.merge) {\r\n\t\t\tif (!base.accessor()) throw new Error(`Set an accessor to ${ALGORITHM_TYPE} before calculating`);\r\n\t\t\treturn mergedAlgorithm(data);\r\n\t\t}\r\n\t\treturn underlyingAlgorithm(data);\r\n\t};\r\n\r\n\trebind(indicator, base, \"id\", \"accessor\", \"stroke\", \"fill\", \"echo\", \"type\", \"strokeWidth\");\r\n\trebind(indicator, underlyingAlgorithm, \"options\", \"undefinedLength\");\r\n\trebind(indicator, mergedAlgorithm, \"merge\", \"skipUndefined\");\r\n\r\n\treturn indicator;\r\n}\r\n","\r\n\r\nimport { rebind, merge } from \"../utils\";\r\n\r\nimport { wma } from \"../calculator\";\r\n\r\nimport baseIndicator from \"./baseIndicator\";\r\n\r\nconst ALGORITHM_TYPE = \"WMA\";\r\n\r\nexport default function() {\r\n\r\n\tconst base = baseIndicator()\r\n\t\t.type(ALGORITHM_TYPE)\r\n\t\t.accessor(d => d.wma);\r\n\r\n\tconst underlyingAlgorithm = wma();\r\n\r\n\tconst mergedAlgorithm = merge()\r\n\t\t.algorithm(underlyingAlgorithm)\r\n\t\t.merge((datum, indicator) => { datum.wma = indicator; });\r\n\r\n\tconst indicator = function(data, options = { merge: true }) {\r\n\t\tif (options.merge) {\r\n\t\t\tif (!base.accessor()) throw new Error(`Set an accessor to ${ALGORITHM_TYPE} before calculating`);\r\n\t\t\treturn mergedAlgorithm(data);\r\n\t\t}\r\n\t\treturn underlyingAlgorithm(data);\r\n\t};\r\n\r\n\trebind(indicator, base, \"id\", \"accessor\", \"stroke\", \"fill\", \"echo\", \"type\");\r\n\trebind(indicator, underlyingAlgorithm, \"undefinedLength\");\r\n\trebind(indicator, underlyingAlgorithm, \"options\");\r\n\trebind(indicator, mergedAlgorithm, \"merge\", \"skipUndefined\");\r\n\r\n\r\n\treturn indicator;\r\n}\r\n","\r\n\r\nimport { sum } from \"d3-array\";\r\n\r\nimport { slidingWindow } from \"../utils\";\r\nimport { WMA as defaultOptions } from \"./defaultOptionsForComputation\";\r\n\r\nexport default function() {\r\n\r\n\tlet options = defaultOptions;\r\n\r\n\tfunction calculator(data) {\r\n\t\tconst { windowSize, sourcePath } = options;\r\n\r\n\t\tconst weight = windowSize * (windowSize + 1) / 2;\r\n\r\n\t\tconst waverage = slidingWindow()\r\n\t\t\t.windowSize(windowSize)\r\n\t\t\t.sourcePath(sourcePath)\r\n\t\t\t.accumulator(values => {\r\n\t\t\t\tconst total = sum(values, (v, i) => {\r\n\t\t\t\t\treturn (i + 1) * v;\r\n\t\t\t\t});\r\n\t\t\t\treturn total / weight;\r\n\t\t\t});\r\n\r\n\t\treturn waverage(data);\r\n\t}\r\n\tcalculator.undefinedLength = function() {\r\n\t\tconst { windowSize } = options;\r\n\r\n\t\treturn windowSize - 1;\r\n\t};\r\n\tcalculator.options = function(x) {\r\n\t\tif (!arguments.length) {\r\n\t\t\treturn options;\r\n\t\t}\r\n\t\toptions = { ...defaultOptions, ...x };\r\n\t\treturn calculator;\r\n\t};\r\n\r\n\treturn calculator;\r\n}\r\n","\r\n\r\nimport { rebind, merge } from \"../utils\";\r\n\r\nimport { tma } from \"../calculator\";\r\n\r\nimport baseIndicator from \"./baseIndicator\";\r\n\r\nconst ALGORITHM_TYPE = \"TMA\";\r\n\r\nexport default function() {\r\n\r\n\tconst base = baseIndicator()\r\n\t\t.type(ALGORITHM_TYPE)\r\n\t\t.accessor(d => d.tma);\r\n\r\n\tconst underlyingAlgorithm = tma();\r\n\r\n\tconst mergedAlgorithm = merge()\r\n\t\t.algorithm(underlyingAlgorithm)\r\n\t\t.merge((datum, indicator) => { datum.tma = indicator; });\r\n\r\n\tconst indicator = function(data, options = { merge: true }) {\r\n\t\tif (options.merge) {\r\n\t\t\tif (!base.accessor()) throw new Error(`Set an accessor to ${ALGORITHM_TYPE} before calculating`);\r\n\t\t\treturn mergedAlgorithm(data);\r\n\t\t}\r\n\t\treturn underlyingAlgorithm(data);\r\n\t};\r\n\trebind(indicator, base, \"id\", \"accessor\", \"stroke\", \"fill\", \"echo\", \"type\");\r\n\trebind(indicator, underlyingAlgorithm, \"undefinedLength\");\r\n\trebind(indicator, underlyingAlgorithm, \"options\");\r\n\trebind(indicator, mergedAlgorithm, \"merge\", \"skipUndefined\");\r\n\r\n\treturn indicator;\r\n}\r\n","\r\n\r\n/*\r\n TRIMA (Triangular Moving Average).\r\n\r\n The Triangular Moving Average can be used like any other Moving Average, to obtain a smoother representation of the underlying data.\r\n It is important to note that the Triangular Moving Average is typically much smoother than other moving averages.\r\n\r\n Triangular moving averages give greater weight to prices at the centre of the chosen period andi it is calculated as double smoothed SMA (simple moving average).\r\n\r\n Examples:\r\n For TimeSerie={a,b,c,d,e,f...} ('a' is the older price)\r\n\r\n 1st value for TMA 4-Period is: ((1*a)+(2*b)+(2*c)+(1*d)) / 6\r\n 2nd value for TMA 4-Period is: ((1*b)+(2*c)+(2*d)+(1*e)) / 6\r\n\r\n 1st value for TMA 5-Period is: ((1*a)+(2*b)+(3*c)+(2*d)+(1*e)) / 9\r\n 2nd value for TMA 5-Period is: ((1*b)+(2*c)+(3*d)+(2*e)+(1*f)) / 9\r\n\r\n Using algebra, it can be demonstrated that the TMA is equivalent to\r\n doing a SMA of a SMA. The following explain the rules:\r\n\r\n (1) When the period is even, TMA(x,period)=SMA(SMA(x,period/2),(period/2)+1)\r\n (2) When the period is odd, TMA(x,period)=SMA(SMA(x,(period+1)/2),(period+1)/2)\r\n\r\n In other word:\r\n (1) A period of 4 becomes TMA(x,4) = SMA( SMA( x, 2), 3 )\r\n (2) A period of 5 becomes TMA(x,5) = SMA( SMA( x, 3), 3 )\r\n\r\n The SMA of a SMA is the algorithm generally found in books.\r\n*/\r\n\r\nimport { sum } from \"d3-array\";\r\n\r\nimport { slidingWindow } from \"../utils\";\r\nimport { TMA as defaultOptions } from \"./defaultOptionsForComputation\";\r\n\r\nexport default function() {\r\n\tlet options = defaultOptions;\r\n\r\n\tfunction calculator(data) {\r\n\t\tconst { windowSize, sourcePath } = options;\r\n\r\n\t\tconst n = Math.floor(windowSize / 2);\r\n\t\tconst weight = (windowSize % 2) === 0\r\n\t\t\t? n * (n + 1)\r\n\t\t\t: (n + 1) * (n + 1);\r\n\r\n\t\tconst triaverage = slidingWindow()\r\n\t\t\t.windowSize(windowSize)\r\n\t\t\t.sourcePath(sourcePath)\r\n\t\t\t.accumulator(values => {\r\n\t\t\t\tconst total = sum(values, (v, i) => {\r\n\t\t\t\t\treturn i < n\r\n\t\t\t\t\t\t? (i + 1) * v\r\n\t\t\t\t\t\t: (windowSize - i) * v;\r\n\t\t\t\t});\r\n\t\t\t\treturn total / weight;\r\n\t\t\t});\r\n\r\n\t\treturn triaverage(data);\r\n\r\n\t}\r\n\tcalculator.undefinedLength = function() {\r\n\t\tconst { windowSize } = options;\r\n\t\treturn windowSize - 1;\r\n\t};\r\n\tcalculator.options = function(x) {\r\n\t\tif (!arguments.length) {\r\n\t\t\treturn options;\r\n\t\t}\r\n\t\toptions = { ...defaultOptions, ...x };\r\n\t\treturn calculator;\r\n\t};\r\n\r\n\treturn calculator;\r\n}\r\n","\r\n\r\nimport { rebind, merge } from \"../utils\";\r\n\r\nimport baseIndicator from \"./baseIndicator\";\r\nimport { bollingerband } from \"../calculator\";\r\n\r\nconst ALGORITHM_TYPE = \"BollingerBand\";\r\n\r\nexport default function() {\r\n\r\n\tconst base = baseIndicator()\r\n\t\t.type(ALGORITHM_TYPE);\r\n\r\n\tconst underlyingAlgorithm = bollingerband();\r\n\r\n\tconst mergedAlgorithm = merge()\r\n\t\t.algorithm(underlyingAlgorithm)\r\n\t\t.merge((datum, indicator) => { datum.bollingerBand = indicator; });\r\n\r\n\tconst indicator = function(data, options = { merge: true }) {\r\n\t\tif (options.merge) {\r\n\t\t\tif (!base.accessor()) throw new Error(`Set an accessor to ${ALGORITHM_TYPE} before calculating`);\r\n\t\t\treturn mergedAlgorithm(data);\r\n\t\t}\r\n\t\treturn underlyingAlgorithm(data);\r\n\t};\r\n\r\n\trebind(indicator, base, \"id\", \"accessor\", \"stroke\", \"fill\", \"echo\", \"type\");\r\n\trebind(indicator, underlyingAlgorithm, \"options\");\r\n\trebind(indicator, mergedAlgorithm, \"merge\", \"skipUndefined\");\r\n\r\n\treturn indicator;\r\n}\r\n","\r\n\r\n/*\r\nhttps://github.com/ScottLogic/d3fc/blob/master/src/indicator/algorithm/calculator/bollingerBands.js\r\n\r\nThe MIT License (MIT)\r\n\r\nCopyright (c) 2014-2015 Scott Logic Ltd.\r\n\r\nPermission is hereby granted, free of charge, to any person obtaining a copy\r\nof this software and associated documentation files (the \"Software\"), to deal\r\nin the Software without restriction, including without limitation the rights\r\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\r\ncopies of the Software, and to permit persons to whom the Software is\r\nfurnished to do so, subject to the following conditions:\r\n\r\nThe above copyright notice and this permission notice shall be included in\r\nall copies or substantial portions of the Software.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\r\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\r\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\r\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\r\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\r\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\r\nTHE SOFTWARE.\r\n*/\r\n\r\nimport { mean, deviation } from \"d3-array\";\r\n\r\nimport ema from \"./ema\";\r\nimport { last, slidingWindow, zipper, path } from \"../utils\";\r\n\r\nimport { BollingerBand as defaultOptions } from \"./defaultOptionsForComputation\";\r\n\r\nexport default function() {\r\n\tlet options = defaultOptions;\r\n\r\n\tfunction calculator(data) {\r\n\t\tconst { windowSize, multiplier, movingAverageType, sourcePath } = options;\r\n\r\n\t\tconst source = path(sourcePath);\r\n\t\tconst meanAlgorithm = movingAverageType === \"ema\"\r\n\t\t\t? ema().options({ windowSize, sourcePath })\r\n\t\t\t: slidingWindow().windowSize(windowSize)\r\n\t\t\t\t.accumulator(values => mean(values)).sourcePath(sourcePath);\r\n\r\n\t\tconst bollingerBandAlgorithm = slidingWindow()\r\n\t\t\t.windowSize(windowSize)\r\n\t\t\t.accumulator((values) => {\r\n\t\t\t\tconst avg = last(values).mean;\r\n\t\t\t\tconst stdDev = deviation(values, (each) => source(each.datum));\r\n\t\t\t\treturn {\r\n\t\t\t\t\ttop: avg + multiplier * stdDev,\r\n\t\t\t\t\tmiddle: avg,\r\n\t\t\t\t\tbottom: avg - multiplier * stdDev\r\n\t\t\t\t};\r\n\t\t\t});\r\n\r\n\t\tconst zip = zipper()\r\n\t\t\t.combine((datum, mean) => ({ datum, mean }));\r\n\r\n\t\tconst tuples = zip(data, meanAlgorithm(data));\r\n\t\treturn bollingerBandAlgorithm(tuples);\r\n\t}\r\n\tcalculator.undefinedLength = function() {\r\n\t\tconst { windowSize } = options;\r\n\t\treturn windowSize - 1;\r\n\t};\r\n\tcalculator.options = function(x) {\r\n\t\tif (!arguments.length) {\r\n\t\t\treturn options;\r\n\t\t}\r\n\t\toptions = { ...defaultOptions, ...x };\r\n\t\treturn calculator;\r\n\t};\r\n\r\n\r\n\treturn calculator;\r\n}\r\n","\r\n\r\nimport { heikinAshi } from \"../calculator\";\r\nimport baseIndicator from \"./baseIndicator\";\r\n\r\nimport { rebind, merge } from \"../utils\";\r\n\r\nconst ALGORITHM_TYPE = \"HeikinAshi\";\r\n\r\nexport default function() {\r\n\r\n\tconst base = baseIndicator()\r\n\t\t.type(ALGORITHM_TYPE)\r\n\t\t.accessor(d => d.ha);\r\n\r\n\tconst underlyingAlgorithm = heikinAshi();\r\n\r\n\tconst mergedAlgorithm = merge()\r\n\t\t.algorithm(underlyingAlgorithm)\r\n\t\t.merge((datum, indicator) => {\r\n\t\t\treturn { ...datum, ...indicator };\r\n\t\t});\r\n\r\n\tconst indicator = function(data, options = { merge: true }) {\r\n\t\tif (options.merge) {\r\n\t\t\tif (!base.accessor()) throw new Error(`Set an accessor to ${ALGORITHM_TYPE} before calculating`);\r\n\t\t\treturn mergedAlgorithm(data);\r\n\t\t}\r\n\t\treturn underlyingAlgorithm(data);\r\n\t};\r\n\r\n\trebind(indicator, base, \"accessor\", \"stroke\", \"fill\", \"echo\", \"type\");\r\n\t// rebind(indicator, underlyingAlgorithm, \"windowSize\", \"source\");\r\n\trebind(indicator, mergedAlgorithm, \"merge\");\r\n\r\n\treturn indicator;\r\n}\r\n","\r\n\r\nimport { mappedSlidingWindow, identity } from \"../utils\";\r\n\r\nexport default function() {\r\n\r\n\tlet source = identity;\r\n\r\n\tfunction calculator(data) {\r\n\t\tconst algorithm = mappedSlidingWindow()\r\n\t\t\t.windowSize(2)\r\n\t\t\t.undefinedValue(({ open, high, low, close }) => {\r\n\t\t\t\tclose = (open + high + low + close) / 4;\r\n\t\t\t\treturn { open, high, low, close };\r\n\t\t\t})\r\n\t\t\t.accumulator(([prev, now]) => {\r\n\t\t\t\t// console.log(prev, now);\r\n\t\t\t\tconst { date, volume } = now;\r\n\t\t\t\tconst close = (now.open + now.high + now.low + now.close) / 4;\r\n\t\t\t\tconst open = (prev.open + prev.close) / 2;\r\n\t\t\t\tconst high = Math.max(open, now.high, close);\r\n\t\t\t\tconst low = Math.min(open, now.low, close);\r\n\t\t\t\treturn { date, open, high, low, close, volume };\r\n\t\t\t});\r\n\r\n\t\treturn algorithm(data);\r\n\t}\r\n\tcalculator.source = function(x) {\r\n\t\tif (!arguments.length) {\r\n\t\t\treturn source;\r\n\t\t}\r\n\t\tsource = x;\r\n\t\treturn calculator;\r\n\t};\r\n\r\n\treturn calculator;\r\n}","\r\n\r\nimport { rebind } from \"../utils\";\r\n\r\nimport { kagi } from \"../calculator\";\r\nimport baseIndicator from \"./baseIndicator\";\r\n\r\nconst ALGORITHM_TYPE = \"Kagi\";\r\n\r\nexport default function() {\r\n\r\n\tconst base = baseIndicator()\r\n\t\t.type(ALGORITHM_TYPE);\r\n\r\n\tconst underlyingAlgorithm = kagi();\r\n\r\n\tconst indicator = underlyingAlgorithm;\r\n\r\n\trebind(indicator, base, \"id\", \"stroke\", \"fill\", \"echo\", \"type\");\r\n\trebind(indicator, underlyingAlgorithm, \"dateAccessor\", \"dateMutator\");\r\n\trebind(indicator, underlyingAlgorithm, \"options\");\r\n\r\n\treturn indicator;\r\n}\r\n","\r\n\r\nimport { merge, isNotDefined, path, functor } from \"../utils\";\r\nimport atr from \"./atr\";\r\n\r\nimport { Kagi as defaultOptions } from \"./defaultOptionsForComputation\";\r\n\r\nexport default function() {\r\n\r\n\tlet options = defaultOptions;\r\n\tlet dateAccessor = d => d.date;\r\n\tlet dateMutator = (d, date) => { d.date = date; };\r\n\r\n\tfunction calculator(data) {\r\n\t\tconst { reversalType, windowSize, reversal, sourcePath } = options;\r\n\r\n\t\tconst source = path(sourcePath);\r\n\t\tlet reversalThreshold;\r\n\r\n\t\tif (reversalType === \"ATR\") {\r\n\t\t\t// calculateATR(rawData, period);\r\n\t\t\tconst atrAlgorithm = atr().options({ windowSize });\r\n\r\n\t\t\tconst atrCalculator = merge()\r\n\t\t\t\t.algorithm(atrAlgorithm)\r\n\t\t\t\t.merge((d, c) => { d[\"atr\" + windowSize] = c; } );\r\n\r\n\t\t\tatrCalculator(data);\r\n\t\t\treversalThreshold = d => d[\"atr\" + windowSize];\r\n\t\t} else {\r\n\t\t\treversalThreshold = functor(reversal);\r\n\t\t}\r\n\r\n\t\tconst kagiData = [];\r\n\r\n\t\tlet prevPeak, prevTrough, direction;\r\n\t\tlet line = {};\r\n\r\n\t\tdata.forEach(function(d) {\r\n\t\t\tif (isNotDefined(line.from)) {\r\n\t\t\t\tdateMutator(line, dateAccessor(d));\r\n\t\t\t\tline.from = dateAccessor(d);\r\n\r\n\t\t\t\tif (!line.open) line.open = d.open;\r\n\t\t\t\tline.high = d.high;\r\n\t\t\t\tline.low = d.low;\r\n\t\t\t\tif (!line.close) line.close = source(d);\r\n\t\t\t\tline.startOfYear = d.startOfYear;\r\n\t\t\t\tline.startOfQuarter = d.startOfQuarter;\r\n\t\t\t\tline.startOfMonth = d.startOfMonth;\r\n\t\t\t\tline.startOfWeek = d.startOfWeek;\r\n\t\t\t}\r\n\r\n\t\t\tif (!line.startOfYear) {\r\n\t\t\t\tline.startOfYear = d.startOfYear;\r\n\t\t\t\tif (line.startOfYear) {\r\n\t\t\t\t\tline.date = d.date;\r\n\t\t\t\t\t// line.displayDate = d.displayDate;\r\n\t\t\t\t}\r\n\t\t\t}\r\n\r\n\t\t\tif (!line.startOfQuarter) {\r\n\t\t\t\tline.startOfQuarter = d.startOfQuarter;\r\n\t\t\t\tif (line.startOfQuarter && !line.startOfYear) {\r\n\t\t\t\t\tline.date = d.date;\r\n\t\t\t\t\t// line.displayDate = d.displayDate;\r\n\t\t\t\t}\r\n\t\t\t}\r\n\r\n\t\t\tif (!line.startOfMonth) {\r\n\t\t\t\tline.startOfMonth = d.startOfMonth;\r\n\t\t\t\tif (line.startOfMonth && !line.startOfQuarter) {\r\n\t\t\t\t\tline.date = d.date;\r\n\t\t\t\t\t// line.displayDate = d.displayDate;\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t\tif (!line.startOfWeek) {\r\n\t\t\t\tline.startOfWeek = d.startOfWeek;\r\n\t\t\t\tif (line.startOfWeek && !line.startOfMonth) {\r\n\t\t\t\t\tline.date = d.date;\r\n\t\t\t\t\t// line.displayDate = d.displayDate;\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t\tline.volume = (line.volume || 0) + d.volume;\r\n\t\t\tline.high = Math.max(line.high, d.high);\r\n\t\t\tline.low = Math.min(line.low, d.low);\r\n\t\t\tline.to = dateAccessor(d);\r\n\r\n\t\t\tconst priceMovement = (source(d) - line.close);\r\n\r\n\t\t\t// console.log(source(d), priceMovement)\r\n\t\t\tif ((line.close >= line.open /* going up */ && priceMovement > 0 /* and moving in same direction */)\r\n\t\t\t\t\t|| (line.close < line.open /* going down */ && priceMovement < 0 /* and moving in same direction */)) {\r\n\t\t\t\tline.close = source(d);\r\n\t\t\t\tif (prevTrough && line.close < prevTrough) {\r\n\t\t\t\t\t// going below the prevTrough, so change from yang to yin\r\n\t\t\t\t\t// A yin line forms when a Kagi line breaks below the prior trough.\r\n\t\t\t\t\tline.changePoint = prevTrough;\r\n\t\t\t\t\tif (line.startAs !== \"yin\") {\r\n\t\t\t\t\t\tline.changeTo = \"yin\";\r\n\t\t\t\t\t\t// line.startAs = \"yang\";\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t\tif (prevPeak && line.close > prevPeak) {\r\n\t\t\t\t\t// going above the prevPeak, so change from yin to yang\r\n\t\t\t\t\t// A yang line forms when a Kagi line breaks above the prior peak\r\n\t\t\t\t\tline.changePoint = prevPeak;\r\n\t\t\t\t\tif (line.startAs !== \"yang\") {\r\n\t\t\t\t\t\tline.changeTo = \"yang\";\r\n\t\t\t\t\t\t// line.startAs = \"yin\";\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t} else if ((line.close >= line.open /* going up */\r\n\t\t\t\t\t\t\t&& priceMovement < 0 /* and moving in other direction */\r\n\t\t\t\t\t\t\t&& Math.abs(priceMovement) > reversalThreshold(d) /* and the movement is big enough for reversal */)\r\n\t\t\t\t\t|| (line.close < line.open /* going down */\r\n\t\t\t\t\t\t\t&& priceMovement > 0 /* and moving in other direction */\r\n\t\t\t\t\t\t\t&& Math.abs(priceMovement) > reversalThreshold(d) /* and the movement is big enough for reversal */)) {\r\n\t\t\t\t// reverse direction\r\n\t\t\t\tconst nextLineOpen = line.close;\r\n\r\n\t\t\t\tdirection = (line.close - line.open) / Math.abs(line.close - line.open);\r\n\r\n\t\t\t\tlet nextChangePoint, nextChangeTo;\r\n\t\t\t\tif (direction < 0 /* if direction so far has been -ve*/) {\r\n\t\t\t\t\t// compare with line.close becomes prevTrough\r\n\t\t\t\t\tif (isNotDefined(prevPeak)) prevPeak = line.open;\r\n\t\t\t\t\tprevTrough = line.close;\r\n\t\t\t\t\tif (source(d) > prevPeak) {\r\n\t\t\t\t\t\tnextChangePoint = prevPeak;\r\n\t\t\t\t\t\tnextChangeTo = \"yang\";\r\n\t\t\t\t\t}\r\n\t\t\t\t} else {\r\n\t\t\t\t\tif (isNotDefined(prevTrough)) prevTrough = line.open;\r\n\t\t\t\t\tprevPeak = line.close;\r\n\t\t\t\t\tif (source(d) < prevTrough) {\r\n\t\t\t\t\t\tnextChangePoint = prevTrough;\r\n\t\t\t\t\t\tnextChangeTo = \"yin\";\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t\tif (isNotDefined(line.startAs)) {\r\n\t\t\t\t\tline.startAs = direction > 0 ? \"yang\" : \"yin\";\r\n\t\t\t\t}\r\n\r\n\t\t\t\tconst startAs = line.changeTo || line.startAs;\r\n\t\t\t\tline.added = true;\r\n\t\t\t\tkagiData.push(line);\r\n\t\t\t\tdirection = -1 * direction; // direction is reversed\r\n\r\n\t\t\t\tline = { ...line };\r\n\t\t\t\tline.open = nextLineOpen;\r\n\t\t\t\tline.close = source(d);\r\n\t\t\t\tline.startAs = startAs;\r\n\t\t\t\tline.changePoint = nextChangePoint;\r\n\t\t\t\tline.changeTo = nextChangeTo;\r\n\t\t\t\tline.added = false;\r\n\t\t\t\tline.from = undefined;\r\n\t\t\t\tline.volume = 0;\r\n\t\t\t} else {\r\n\t\t\t\t// console.log(\"MOVING IN REV DIR BUT..\", line.open, line.close, source(d));\r\n\t\t\t}\r\n\t\t\tline.current = source(d);\r\n\t\t\tlet dir = line.close - line.open;\r\n\t\t\tdir = dir === 0 ? 1 : dir / Math.abs(dir);\r\n\t\t\tline.reverseAt = dir > 0 ? line.close - reversalThreshold(d) : line.open - reversalThreshold(d);\r\n\t\t});\r\n\t\tif (!line.added) kagiData.push(line);\r\n\r\n\t\treturn kagiData;\r\n\t}\r\n\tcalculator.options = function(x) {\r\n\t\tif (!arguments.length) {\r\n\t\t\treturn options;\r\n\t\t}\r\n\t\toptions = { ...defaultOptions, ...x };\r\n\t\treturn calculator;\r\n\t};\r\n\tcalculator.dateMutator = function(x) {\r\n\t\tif (!arguments.length) return dateMutator;\r\n\t\tdateMutator = x;\r\n\t\treturn calculator;\r\n\t};\r\n\tcalculator.dateAccessor = function(x) {\r\n\t\tif (!arguments.length) return dateAccessor;\r\n\t\tdateAccessor = x;\r\n\t\treturn calculator;\r\n\t};\r\n\treturn calculator;\r\n}\r\n","\r\n\r\nimport { rebind } from \"../utils\";\r\n\r\nimport { renko } from \"../calculator\";\r\nimport baseIndicator from \"./baseIndicator\";\r\n\r\nconst ALGORITHM_TYPE = \"Renko\";\r\n\r\nexport default function() {\r\n\r\n\tconst base = baseIndicator()\r\n\t\t.type(ALGORITHM_TYPE);\r\n\r\n\tconst underlyingAlgorithm = renko();\r\n\r\n\tconst indicator = underlyingAlgorithm;\r\n\r\n\trebind(indicator, base, \"id\", \"stroke\", \"fill\", \"echo\", \"type\");\r\n\trebind(indicator, underlyingAlgorithm, \"dateAccessor\", \"dateMutator\");\r\n\trebind(indicator, underlyingAlgorithm, \"options\");\r\n\r\n\treturn indicator;\r\n}","\r\n\r\nimport { merge, isNotDefined, functor } from \"../utils\";\r\n\r\nimport atr from \"./atr\";\r\n\r\nimport { Renko as defaultOptions } from \"./defaultOptionsForComputation\";\r\n\r\nexport default function() {\r\n\tlet options = defaultOptions;\r\n\r\n\tlet dateAccessor = d => d.date;\r\n\tlet dateMutator = (d, date) => { d.date = date; };\r\n\r\n\tfunction calculator(rawData) {\r\n\t\tconst { reversalType, fixedBrickSize, sourcePath, windowSize } = options;\r\n\r\n\t\tconst source = sourcePath === \"high/low\"\r\n\t\t\t? d => { return { high: d.high, low: d.low }; }\r\n\t\t\t: d => { return { high: d.close, low: d.close }; };\r\n\r\n\t\tconst pricingMethod = source;\r\n\t\tlet brickSize;\r\n\r\n\t\tif (reversalType === \"ATR\") {\r\n\t\t\t// calculateATR(rawData, period);\r\n\t\t\tconst atrAlgorithm = atr().options({ windowSize });\r\n\r\n\t\t\tconst atrCalculator = merge()\r\n\t\t\t\t.algorithm(atrAlgorithm)\r\n\t\t\t\t.merge((d, c) => { d[\"atr\" + windowSize] = c; } );\r\n\r\n\t\t\tatrCalculator(rawData);\r\n\t\t\tbrickSize = d => d[\"atr\" + windowSize];\r\n\t\t} else {\r\n\t\t\tbrickSize = functor(fixedBrickSize);\r\n\t\t}\r\n\r\n\t\tconst renkoData = [];\r\n\r\n\t\tlet index = 0, prevBrickClose = rawData[index].open, prevBrickOpen = rawData[index].open;\r\n\t\tlet brick = {}, direction = 0;\r\n\r\n\t\trawData.forEach(function(d, idx) {\r\n\t\t\tif (isNotDefined(brick.from)) {\r\n\t\t\t\tbrick.high = d.high;\r\n\t\t\t\tbrick.low = d.low;\r\n\t\t\t\tbrick.startOfYear = d.startOfYear;\r\n\t\t\t\tbrick.startOfQuarter = d.startOfQuarter;\r\n\t\t\t\tbrick.startOfMonth = d.startOfMonth;\r\n\t\t\t\tbrick.startOfWeek = d.startOfWeek;\r\n\r\n\t\t\t\tbrick.from = idx;\r\n\t\t\t\tbrick.fromDate = dateAccessor(d);\r\n\t\t\t\t// indexMutator(brick, index++);\r\n\t\t\t\tdateMutator(brick, dateAccessor(d));\r\n\t\t\t}\r\n\t\t\tbrick.volume = (brick.volume || 0) + d.volume;\r\n\r\n\t\t\tconst prevCloseToHigh = (prevBrickClose - pricingMethod(d).high),\r\n\t\t\t\tprevCloseToLow = (prevBrickClose - pricingMethod(d).low),\r\n\t\t\t\tprevOpenToHigh = (prevBrickOpen - pricingMethod(d).high),\r\n\t\t\t\tprevOpenToLow = (prevBrickOpen - pricingMethod(d).low),\r\n\t\t\t\tpriceMovement = Math.min(\r\n\t\t\t\t\tMath.abs(prevCloseToHigh),\r\n\t\t\t\t\tMath.abs(prevCloseToLow),\r\n\t\t\t\t\tMath.abs(prevOpenToHigh),\r\n\t\t\t\t\tMath.abs(prevOpenToLow));\r\n\r\n\r\n\t\t\tbrick.high = Math.max(brick.high, d.high);\r\n\t\t\tbrick.low = Math.min(brick.low, d.low);\r\n\r\n\t\t\tif (!brick.startOfYear) {\r\n\t\t\t\tbrick.startOfYear = d.startOfYear;\r\n\t\t\t\tif (brick.startOfYear) {\r\n\t\t\t\t\tdateMutator(brick, dateAccessor(d));\r\n\t\t\t\t\t// brick.displayDate = d.displayDate;\r\n\t\t\t\t}\r\n\t\t\t}\r\n\r\n\t\t\tif (!brick.startOfQuarter) {\r\n\t\t\t\tbrick.startOfQuarter = d.startOfQuarter;\r\n\t\t\t\tif (brick.startOfQuarter && !brick.startOfYear) {\r\n\t\t\t\t\tdateMutator(brick, dateAccessor(d));\r\n\t\t\t\t\t// brick.displayDate = d.displayDate;\r\n\t\t\t\t}\r\n\t\t\t}\r\n\r\n\t\t\tif (!brick.startOfMonth) {\r\n\t\t\t\tbrick.startOfMonth = d.startOfMonth;\r\n\t\t\t\tif (brick.startOfMonth && !brick.startOfQuarter) {\r\n\t\t\t\t\tdateMutator(brick, dateAccessor(d));\r\n\t\t\t\t\t// brick.displayDate = d.displayDate;\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t\tif (!brick.startOfWeek) {\r\n\t\t\t\tbrick.startOfWeek = d.startOfWeek;\r\n\t\t\t\tif (brick.startOfWeek && !brick.startOfMonth) {\r\n\t\t\t\t\tdateMutator(brick, dateAccessor(d));\r\n\t\t\t\t\t// brick.displayDate = d.displayDate;\r\n\t\t\t\t}\r\n\t\t\t}\r\n\r\n\t\t\t// d.brick = JSON.stringify(brick);\r\n\t\t\tif (brickSize(d)) {\r\n\t\t\t\tconst noOfBricks = Math.floor(priceMovement / brickSize(d));\r\n\r\n\t\t\t\tbrick.open = (Math.abs(prevCloseToHigh) < Math.abs(prevOpenToHigh)\r\n\t\t\t\t\t|| Math.abs(prevCloseToLow) < Math.abs(prevOpenToLow))\r\n\t\t\t\t\t? prevBrickClose\r\n\t\t\t\t\t: prevBrickOpen;\r\n\r\n\t\t\t\tif (noOfBricks >= 1) {\r\n\t\t\t\t\tlet j = 0;\r\n\t\t\t\t\tfor (j = 0; j < noOfBricks; j++) {\r\n\t\t\t\t\t\tbrick.close = (brick.open < pricingMethod(d).high)\r\n\t\t\t\t\t\t\t// if brick open is less than current price it means it is green/hollow brick\r\n\t\t\t\t\t\t\t? brick.open + brickSize(d)\r\n\t\t\t\t\t\t\t: brick.open - brickSize(d);\r\n\t\t\t\t\t\tdirection = brick.close > brick.open ? 1 : -1;\r\n\t\t\t\t\t\tbrick.direction = direction;\r\n\t\t\t\t\t\tbrick.to = idx;\r\n\t\t\t\t\t\tbrick.toDate = dateAccessor(d);\r\n\t\t\t\t\t\t// brick.diff = brick.open - brick.close;\r\n\t\t\t\t\t\t// brick.atr = d.atr;\r\n\t\t\t\t\t\tbrick.fullyFormed = true;\r\n\t\t\t\t\t\trenkoData.push(brick);\r\n\r\n\t\t\t\t\t\tprevBrickClose = brick.close;\r\n\t\t\t\t\t\tprevBrickOpen = brick.open;\r\n\r\n\t\t\t\t\t\tconst newBrick = {\r\n\t\t\t\t\t\t\thigh: brick.high,\r\n\t\t\t\t\t\t\tlow: brick.low,\r\n\t\t\t\t\t\t\topen: brick.close,\r\n\t\t\t\t\t\t\tstartOfYear: false,\r\n\t\t\t\t\t\t\tstartOfMonth: false,\r\n\t\t\t\t\t\t\tstartOfQuarter: false,\r\n\t\t\t\t\t\t\tstartOfWeek: false\r\n\t\t\t\t\t\t};\r\n\t\t\t\t\t\tbrick = newBrick;\r\n\t\t\t\t\t\tbrick.from = idx;\r\n\t\t\t\t\t\tbrick.fromDate = dateAccessor(d);\r\n\t\t\t\t\t\t// indexMutator(brick, index + j);\r\n\t\t\t\t\t\tdateMutator(brick, dateAccessor(d));\r\n\t\t\t\t\t\tbrick.volume = (brick.volume || 0) + d.volume;\r\n\t\t\t\t\t}\r\n\t\t\t\t\tindex = index + j - 1;\r\n\t\t\t\t\tbrick = {};\r\n\t\t\t\t} else {\r\n\t\t\t\t\tif (idx === rawData.length - 1) {\r\n\t\t\t\t\t\tbrick.close = direction > 0 ? pricingMethod(d).high : pricingMethod(d).low;\r\n\t\t\t\t\t\tbrick.to = idx;\r\n\t\t\t\t\t\tbrick.toDate = dateAccessor(d);\r\n\t\t\t\t\t\tdateMutator(brick, dateAccessor(d));\r\n\t\t\t\t\t\tbrick.fullyFormed = false;\r\n\t\t\t\t\t\trenkoData.push(brick);\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t}\r\n\r\n\t\t});\r\n\t\treturn renkoData;\r\n\r\n\t}\r\n\tcalculator.options = function(x) {\r\n\t\tif (!arguments.length) {\r\n\t\t\treturn options;\r\n\t\t}\r\n\t\toptions = { ...defaultOptions, ...x };\r\n\t\treturn calculator;\r\n\t};\r\n\r\n\tcalculator.dateMutator = function(x) {\r\n\t\tif (!arguments.length) return dateMutator;\r\n\t\tdateMutator = x;\r\n\t\treturn calculator;\r\n\t};\r\n\tcalculator.dateAccessor = function(x) {\r\n\t\tif (!arguments.length) return dateAccessor;\r\n\t\tdateAccessor = x;\r\n\t\treturn calculator;\r\n\t};\r\n\r\n\treturn calculator;\r\n}\r\n","\r\n\r\nimport { rebind, merge } from \"../utils\";\r\n\r\nimport { macd } from \"../calculator\";\r\n\r\nimport baseIndicator from \"./baseIndicator\";\r\nimport { MACD as appearanceOptions } from \"./defaultOptionsForAppearance\";\r\n\r\nconst ALGORITHM_TYPE = \"MACD\";\r\n\r\nexport default function() {\r\n\r\n\tconst base = baseIndicator()\r\n\t\t.type(ALGORITHM_TYPE)\r\n\t\t.fill(appearanceOptions.fill)\r\n\t\t.stroke(appearanceOptions.stroke)\r\n\t\t.accessor(d => d.macd);\r\n\r\n\tconst underlyingAlgorithm = macd();\r\n\r\n\tconst mergedAlgorithm = merge()\r\n\t\t.algorithm(underlyingAlgorithm)\r\n\t\t.merge((datum, indicator) => { datum.macd = indicator; });\r\n\r\n\tconst indicator = function(data, options = { merge: true }) {\r\n\t\tif (options.merge) {\r\n\t\t\tif (!base.accessor()) throw new Error(`Set an accessor to ${ALGORITHM_TYPE} before calculating`);\r\n\t\t\treturn mergedAlgorithm(data);\r\n\t\t}\r\n\t\treturn underlyingAlgorithm(data);\r\n\t};\r\n\r\n\trebind(indicator, base, \"id\", \"accessor\", \"stroke\", \"fill\", \"echo\", \"type\");\r\n\trebind(indicator, underlyingAlgorithm, \"options\", \"undefinedLength\");\r\n\trebind(indicator, mergedAlgorithm, \"merge\", \"skipUndefined\");\r\n\r\n\treturn indicator;\r\n}\r\n","\r\n\r\n/*\r\nhttps://github.com/ScottLogic/d3fc/blob/master/src/indicator/algorithm/calculator/macd.js\r\n\r\nThe MIT License (MIT)\r\n\r\nCopyright (c) 2014-2015 Scott Logic Ltd.\r\n\r\nPermission is hereby granted, free of charge, to any person obtaining a copy\r\nof this software and associated documentation files (the \"Software\"), to deal\r\nin the Software without restriction, including without limitation the rights\r\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\r\ncopies of the Software, and to permit persons to whom the Software is\r\nfurnished to do so, subject to the following conditions:\r\n\r\nThe above copyright notice and this permission notice shall be included in\r\nall copies or substantial portions of the Software.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\r\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\r\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\r\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\r\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\r\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\r\nTHE SOFTWARE.\r\n*/\r\n\r\nimport ema from \"./ema\";\r\n\r\nimport { isDefined, zipper } from \"../utils\";\r\nimport { MACD as defaultOptions } from \"./defaultOptionsForComputation\";\r\n\r\nexport default function() {\r\n\tlet options = defaultOptions;\r\n\r\n\tfunction calculator(data) {\r\n\t\tconst { fast, slow, signal, sourcePath } = options;\r\n\r\n\t\tconst fastEMA = ema()\r\n\t\t\t.options({ windowSize: fast, sourcePath });\r\n\r\n\t\tconst slowEMA = ema()\r\n\t\t\t.options({ windowSize: slow, sourcePath });\r\n\r\n\t\tconst signalEMA = ema()\r\n\t\t\t.options({ windowSize: signal, sourcePath: undefined });\r\n\r\n\t\tconst macdCalculator = zipper()\r\n\t\t\t.combine((fastEMA, slowEMA) => (isDefined(fastEMA) && isDefined(slowEMA)) ? fastEMA - slowEMA : undefined);\r\n\r\n\t\tconst macdArray = macdCalculator(fastEMA(data), slowEMA(data));\r\n\r\n\t\tconst undefinedArray = new Array(slow);\r\n\t\tconst signalArray = undefinedArray.concat(signalEMA(macdArray.slice(slow)));\r\n\r\n\t\tconst zip = zipper()\r\n\t\t\t.combine((macd, signal) => ({\r\n\t\t\t\tmacd,\r\n\t\t\t\tsignal,\r\n\t\t\t\tdivergence: (isDefined(macd) && isDefined(signal)) ? macd - signal : undefined,\r\n\t\t\t}));\r\n\r\n\t\tconst macd = zip(macdArray, signalArray);\r\n\r\n\t\treturn macd;\r\n\t}\r\n\r\n\tcalculator.undefinedLength = function() {\r\n\t\tconst { slow, signal } = options;\r\n\t\treturn slow + signal - 1;\r\n\t};\r\n\tcalculator.options = function(x) {\r\n\t\tif (!arguments.length) {\r\n\t\t\treturn options;\r\n\t\t}\r\n\t\toptions = { ...defaultOptions, ...x };\r\n\t\treturn calculator;\r\n\t};\r\n\r\n\treturn calculator;\r\n}\r\n","\r\n\r\nimport { rebind, merge } from \"../utils\";\r\n\r\nimport { rsi } from \"../calculator\";\r\n\r\nimport baseIndicator from \"./baseIndicator\";\r\n\r\nconst ALGORITHM_TYPE = \"RSI\";\r\n\r\nexport default function() {\r\n\tconst base = baseIndicator()\r\n\t\t.type(ALGORITHM_TYPE)\r\n\t\t.accessor(d => d.rsi);\r\n\r\n\tconst underlyingAlgorithm = rsi();\r\n\r\n\tconst mergedAlgorithm = merge()\r\n\t\t.algorithm(underlyingAlgorithm)\r\n\t\t.merge((datum, indicator) => { datum.rsi = indicator; });\r\n\r\n\tconst indicator = function(data, options = { merge: true }) {\r\n\t\tif (options.merge) {\r\n\t\t\tif (!base.accessor()) throw new Error(`Set an accessor to ${ALGORITHM_TYPE} before calculating`);\r\n\t\t\treturn mergedAlgorithm(data);\r\n\t\t}\r\n\t\treturn underlyingAlgorithm(data);\r\n\t};\r\n\r\n\trebind(indicator, base, \"id\", \"accessor\", \"stroke\", \"fill\", \"echo\", \"type\");\r\n\trebind(indicator, underlyingAlgorithm, \"options\", \"undefinedLength\");\r\n\trebind(indicator, mergedAlgorithm, \"merge\", \"skipUndefined\");\r\n\r\n\treturn indicator;\r\n}\r\n","\r\n\r\n/*\r\nhttps://github.com/ScottLogic/d3fc/blob/master/src/indicator/algorithm/calculator/relativeStrengthIndex.js\r\n\r\nThe MIT License (MIT)\r\n\r\nCopyright (c) 2014-2015 Scott Logic Ltd.\r\n\r\nPermission is hereby granted, free of charge, to any person obtaining a copy\r\nof this software and associated documentation files (the \"Software\"), to deal\r\nin the Software without restriction, including without limitation the rights\r\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\r\ncopies of the Software, and to permit persons to whom the Software is\r\nfurnished to do so, subject to the following conditions:\r\n\r\nThe above copyright notice and this permission notice shall be included in\r\nall copies or substantial portions of the Software.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\r\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\r\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\r\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\r\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\r\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\r\nTHE SOFTWARE.\r\n*/\r\n\r\nimport { mean } from \"d3-array\";\r\n\r\nimport { isDefined, last, slidingWindow, path } from \"../utils\";\r\nimport { RSI as defaultOptions } from \"./defaultOptionsForComputation\";\r\n\r\nexport default function() {\r\n\r\n\tlet options = defaultOptions;\r\n\r\n\tfunction calculator(data) {\r\n\t\tconst { windowSize, sourcePath } = options;\r\n\r\n\t\tconst source = path(sourcePath);\r\n\t\tlet prevAvgGain, prevAvgLoss;\r\n\t\tconst rsiAlgorithm = slidingWindow()\r\n\t\t\t.windowSize(windowSize)\r\n\t\t\t.accumulator((values) => {\r\n\r\n\t\t\t\tconst avgGain = isDefined(prevAvgGain)\r\n\t\t\t\t\t? (prevAvgGain * (windowSize - 1) + last(values).gain) / windowSize\r\n\t\t\t\t\t: mean(values, (each) => each.gain);\r\n\r\n\t\t\t\tconst avgLoss = isDefined(prevAvgLoss)\r\n\t\t\t\t\t? (prevAvgLoss * (windowSize - 1) + last(values).loss) / windowSize\r\n\t\t\t\t\t: mean(values, (each) => each.loss);\r\n\r\n\t\t\t\tconst relativeStrength = avgGain / avgLoss;\r\n\t\t\t\tconst rsi = 100 - (100 / (1 + relativeStrength));\r\n\r\n\t\t\t\tprevAvgGain = avgGain;\r\n\t\t\t\tprevAvgLoss = avgLoss;\r\n\r\n\t\t\t\treturn rsi;\r\n\t\t\t});\r\n\r\n\t\tconst gainsAndLossesCalculator = slidingWindow()\r\n\t\t\t.windowSize(2)\r\n\t\t\t.undefinedValue(() => [0, 0])\r\n\t\t\t.accumulator(tuple => {\r\n\t\t\t\tconst prev = tuple[0];\r\n\t\t\t\tconst now = tuple[1];\r\n\t\t\t\tconst change = source(now) - source(prev);\r\n\t\t\t\treturn {\r\n\t\t\t\t\tgain: Math.max(change, 0),\r\n\t\t\t\t\tloss: Math.abs(Math.min(change, 0)),\r\n\t\t\t\t};\r\n\t\t\t});\r\n\r\n\t\tconst gainsAndLosses = gainsAndLossesCalculator(data);\r\n\r\n\t\tconst rsiData = rsiAlgorithm(gainsAndLosses);\r\n\r\n\t\treturn rsiData;\r\n\t}\r\n\tcalculator.undefinedLength = function() {\r\n\t\tconst { windowSize } = options;\r\n\r\n\t\treturn windowSize - 1;\r\n\t};\r\n\tcalculator.options = function(x) {\r\n\t\tif (!arguments.length) {\r\n\t\t\treturn options;\r\n\t\t}\r\n\t\toptions = { ...defaultOptions, ...x };\r\n\t\treturn calculator;\r\n\t};\r\n\r\n\treturn calculator;\r\n}\r\n","\r\n\r\nimport { rebind, merge } from \"../utils\";\r\n\r\nimport { sto } from \"../calculator\";\r\n\r\nimport baseIndicator from \"./baseIndicator\";\r\n\r\nconst ALGORITHM_TYPE = \"STO\";\r\n\r\nexport default function() {\r\n\tconst base = baseIndicator()\r\n\t\t.type(ALGORITHM_TYPE);\r\n\r\n\tconst underlyingAlgorithm = sto();\r\n\r\n\tconst mergedAlgorithm = merge()\r\n\t\t.algorithm(underlyingAlgorithm)\r\n\t\t.merge((datum, indicator) => { datum.sto = indicator; });\r\n\r\n\tconst indicator = function(data, options = { merge: true }) {\r\n\t\tif (options.merge) {\r\n\t\t\tif (!base.accessor()) throw new Error(`Set an accessor to ${ALGORITHM_TYPE} before calculating`);\r\n\t\t\treturn mergedAlgorithm(data);\r\n\t\t}\r\n\t\treturn underlyingAlgorithm(data);\r\n\t};\r\n\r\n\trebind(indicator, base, \"id\", \"accessor\", \"stroke\", \"fill\", \"echo\", \"type\");\r\n\trebind(indicator, underlyingAlgorithm, \"options\", \"undefinedLength\");\r\n\trebind(indicator, mergedAlgorithm, \"merge\", \"skipUndefined\");\r\n\r\n\treturn indicator;\r\n}\r\n","\r\n\r\nimport { rebind, merge } from \"../utils\";\r\nimport { elderRay } from \"../calculator\";\r\n\r\nimport baseIndicator from \"./baseIndicator\";\r\n\r\nconst ALGORITHM_TYPE = \"ElderRay\";\r\n\r\nexport default function() {\r\n\r\n\tconst base = baseIndicator()\r\n\t\t.type(ALGORITHM_TYPE)\r\n\t\t.accessor(d => d.elderRay);\r\n\r\n\tconst underlyingAlgorithm = elderRay();\r\n\r\n\tconst mergedAlgorithm = merge()\r\n\t\t.algorithm(underlyingAlgorithm)\r\n\t\t.merge((datum, indicator) => { datum.elderRay = indicator; });\r\n\r\n\tconst indicator = function(data, options = { merge: true }) {\r\n\t\tif (options.merge) {\r\n\t\t\tif (!base.accessor()) throw new Error(`Set an accessor to ${ALGORITHM_TYPE} before calculating`);\r\n\t\t\treturn mergedAlgorithm(data);\r\n\t\t}\r\n\t\treturn underlyingAlgorithm(data);\r\n\t};\r\n\r\n\trebind(indicator, base, \"id\", \"accessor\", \"stroke\", \"fill\", \"echo\", \"type\");\r\n\trebind(indicator, underlyingAlgorithm, \"options\");\r\n\trebind(indicator, mergedAlgorithm, \"merge\", \"skipUndefined\");\r\n\r\n\treturn indicator;\r\n}\r\n","\r\n\r\n/*\r\nhttps://github.com/ScottLogic/d3fc/blob/master/src/indicator/algorithm/calculator/elderRay.js\r\n\r\nThe MIT License (MIT)\r\n\r\nCopyright (c) 2014-2015 Scott Logic Ltd.\r\n\r\nPermission is hereby granted, free of charge, to any person obtaining a copy\r\nof this software and associated documentation files (the \"Software\"), to deal\r\nin the Software without restriction, including without limitation the rights\r\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\r\ncopies of the Software, and to permit persons to whom the Software is\r\nfurnished to do so, subject to the following conditions:\r\n\r\nThe above copyright notice and this permission notice shall be included in\r\nall copies or substantial portions of the Software.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\r\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\r\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\r\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\r\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\r\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\r\nTHE SOFTWARE.\r\n*/\r\n\r\nimport { mean } from \"d3-array\";\r\n\r\nimport ema from \"./ema\";\r\n\r\nimport { ElderRay as defaultOptions } from \"./defaultOptionsForComputation\";\r\nimport { isDefined, zipper, slidingWindow } from \"../utils\";\r\n\r\nexport default function() {\r\n\r\n\tlet options = defaultOptions;\r\n\tlet ohlc = d => ({ open: d.open, high: d.high, low: d.low, close: d.close });\r\n\r\n\tfunction calculator(data) {\r\n\t\tconst { windowSize, sourcePath, movingAverageType } = options;\r\n\r\n\t\tconst meanAlgorithm = movingAverageType === \"ema\"\r\n\t\t\t? ema().options({ windowSize, sourcePath })\r\n\t\t\t: slidingWindow().windowSize(windowSize).accumulator(values => mean(values)).sourcePath(sourcePath);\r\n\r\n\t\tconst zip = zipper()\r\n\t\t\t.combine((datum, mean) => {\r\n\t\t\t\tconst bullPower = isDefined(mean) ? ohlc(datum).high - mean : undefined;\r\n\t\t\t\tconst bearPower = isDefined(mean) ? ohlc(datum).low - mean : undefined;\r\n\t\t\t\treturn { bullPower, bearPower };\r\n\t\t\t});\r\n\r\n\t\tconst newData = zip(data, meanAlgorithm(data));\r\n\t\treturn newData;\r\n\t}\r\n\tcalculator.undefinedLength = function() {\r\n\t\tconst { windowSize } = options;\r\n\t\treturn windowSize - 1;\r\n\t};\r\n\tcalculator.ohlc = function(x) {\r\n\t\tif (!arguments.length) {\r\n\t\t\treturn ohlc;\r\n\t\t}\r\n\t\tohlc = x;\r\n\t\treturn calculator;\r\n\t};\r\n\tcalculator.options = function(x) {\r\n\t\tif (!arguments.length) {\r\n\t\t\treturn options;\r\n\t\t}\r\n\t\toptions = { ...defaultOptions, ...x };\r\n\t\treturn calculator;\r\n\t};\r\n\r\n\treturn calculator;\r\n}\r\n","\r\n\r\nimport { rebind, merge } from \"../utils\";\r\n\r\nimport { change } from \"../calculator\";\r\n\r\nimport baseIndicator from \"./baseIndicator\";\r\n\r\nconst ALGORITHM_TYPE = \"Change\";\r\n\r\nexport default function() {\r\n\r\n\tconst base = baseIndicator()\r\n\t\t.type(ALGORITHM_TYPE);\r\n\r\n\tconst underlyingAlgorithm = change();\r\n\r\n\tconst mergedAlgorithm = merge()\r\n\t\t.algorithm(underlyingAlgorithm)\r\n\t\t.merge((datum, indicator) => {\r\n\t\t\tdatum.absoluteChange = indicator.absoluteChange;\r\n\t\t\tdatum.percentChange = indicator.percentChange;\r\n\t\t});\r\n\r\n\tconst indicator = function(data, options = { merge: true }) {\r\n\t\tif (options.merge) {\r\n\t\t\treturn mergedAlgorithm(data);\r\n\t\t}\r\n\t\treturn underlyingAlgorithm(data);\r\n\t};\r\n\trebind(indicator, base, \"id\", \"accessor\", \"stroke\", \"fill\", \"echo\", \"type\");\r\n\trebind(indicator, underlyingAlgorithm, \"options\");\r\n\trebind(indicator, mergedAlgorithm, \"merge\", \"skipUndefined\");\r\n\r\n\treturn indicator;\r\n}\r\n","\r\n\r\nimport { slidingWindow } from \"../utils\";\r\nimport { Change as defaultOptions } from \"./defaultOptionsForComputation\";\r\n\r\nexport default function() {\r\n\tlet options = defaultOptions;\r\n\r\n\tfunction calculator(data) {\r\n\t\tconst { sourcePath } = options;\r\n\r\n\t\tconst algo = slidingWindow()\r\n\t\t\t.windowSize(2)\r\n\t\t\t.sourcePath(sourcePath)\r\n\t\t\t.accumulator(([prev, curr]) => {\r\n\t\t\t\tconst absoluteChange = curr - prev;\r\n\t\t\t\tconst percentChange = absoluteChange * 100 / prev;\r\n\t\t\t\treturn { absoluteChange, percentChange };\r\n\t\t\t});\r\n\r\n\t\tconst newData = algo(data);\r\n\r\n\t\treturn newData;\r\n\t}\r\n\tcalculator.undefinedLength = function() {\r\n\t\treturn 1;\r\n\t};\r\n\tcalculator.options = function(x) {\r\n\t\tif (!arguments.length) {\r\n\t\t\treturn options;\r\n\t\t}\r\n\t\toptions = { ...defaultOptions, ...x };\r\n\t\treturn calculator;\r\n\t};\r\n\r\n\treturn calculator;\r\n}\r\n","\r\n\r\nimport { rebind, isDefined, isNotDefined, merge, slidingWindow } from \"../utils\";\r\n\r\nimport { ElderImpulse as appearanceOptions } from \"./defaultOptionsForAppearance\";\r\nimport baseIndicator from \"./baseIndicator\";\r\n\r\nconst ALGORITHM_TYPE = \"ElderImpulse\";\r\n\r\nexport default function() {\r\n\r\n\tlet macdSource, emaSource;\r\n\r\n\tconst base = baseIndicator()\r\n\t\t.type(ALGORITHM_TYPE)\r\n\t\t// .stroke(d => stroke[d.elderImpulse])\r\n\t\t.stroke(appearanceOptions.stroke)\r\n\t\t.fill(undefined);\r\n\r\n\tconst underlyingAlgorithm = slidingWindow()\r\n\t\t.windowSize(2)\r\n\t\t.undefinedValue(\"neutral\")\r\n\t\t.accumulator(([prev, curr]) => {\r\n\t\t\tif (isNotDefined(macdSource)) throw new Error(`macdSource not defined for ${ALGORITHM_TYPE} calculator`);\r\n\t\t\tif (isNotDefined(emaSource)) throw new Error(`emaSource not defined for ${ALGORITHM_TYPE} calculator`);\r\n\r\n\t\t\tif (isDefined(macdSource(prev)) && isDefined(emaSource(prev))) {\r\n\t\t\t\tconst prevMACDDivergence = macdSource(prev).divergence;\r\n\t\t\t\tconst currMACDDivergence = macdSource(curr).divergence;\r\n\r\n\t\t\t\tconst prevEMA = emaSource(prev);\r\n\t\t\t\tconst currEMA = emaSource(curr);\r\n\r\n\t\t\t\tif (currMACDDivergence >= prevMACDDivergence\r\n\t\t\t\t\t&& currEMA >= prevEMA) return \"up\";\r\n\r\n\t\t\t\tif (currMACDDivergence <= prevMACDDivergence\r\n\t\t\t\t\t&& currEMA <= prevEMA) return \"down\";\r\n\t\t\t}\r\n\t\t\treturn \"neutral\";\r\n\t\t});\r\n\r\n\tconst mergedAlgorithm = merge()\r\n\t\t.algorithm(underlyingAlgorithm)\r\n\t\t.merge((datum, indicator) => { datum.elderImpulse = indicator; });\r\n\r\n\t// eslint-disable-next-line prefer-const\r\n\tlet indicator = function(data, options = { merge: true }) {\r\n\t\tconst newData = options.merge\r\n\t\t\t? mergedAlgorithm(data)\r\n\t\t\t: underlyingAlgorithm(data);\r\n\r\n\t\treturn newData;\r\n\t};\r\n\tindicator.macdSource = function(x) {\r\n\t\tif (!arguments.length) return macdSource;\r\n\t\tmacdSource = x;\r\n\t\treturn indicator;\r\n\t};\r\n\tindicator.emaSource = function(x) {\r\n\t\tif (!arguments.length) return emaSource;\r\n\t\temaSource = x;\r\n\t\treturn indicator;\r\n\t};\r\n\trebind(indicator, base, \"id\", \"echo\", \"type\", \"stroke\");\r\n\t// rebind(indicator, underlyingAlgorithm, \"windowSize\", \"movingAverageType\", \"multiplier\", \"source\");\r\n\trebind(indicator, mergedAlgorithm, \"merge\", \"skipUndefined\");\r\n\r\n\treturn indicator;\r\n}\r\n","import React from \"react\";\r\n\r\nimport { curveMonotoneX } from \"d3-shape\";\r\nimport {createVerticalLinearGradient, hexToRGBA} from \"libs/rrag/lib/utils\";\r\nimport {\r\n LineSeries, AreaSeries, CandlestickSeries, BarSeries, GroupedBarSeries, StackedBarSeries, KagiSeries,\r\n PointAndFigureSeries,\r\n RenkoSeries,\r\n\tScatterSeries, CircleMarker, SquareMarker, TriangleMarker\r\n} from \"libs/rrag/lib/series\";\r\n// import {\r\n// \tSquareMarker,\r\n// \tTriangleMarker,\r\n// } from \"react-stockcharts/lib/series\";\r\n\r\n\r\nimport {\r\n EdgeIndicator,\r\n CurrentCoordinate\r\n} from \"libs/rrag/lib/coordinates\";\r\n\r\nimport {\r\n OHLCTooltip,\r\n MovingAverageTooltip,\r\n} from \"libs/rrag/lib/tooltip\";\r\n\r\nimport { ema } from \"libs/rrag/lib/indicator\";\r\nconst canvasGradient = createVerticalLinearGradient([\r\n { stop: 0, color: hexToRGBA(\"#b5d0ff\", 0.2) },\r\n { stop: 0.7, color: hexToRGBA(\"#6fa4fc\", 0.4) },\r\n { stop: 1, color: hexToRGBA(\"#4286f4\", 0.8) },\r\n]);\r\n\r\nexport function LineChart(props) {\r\n const { yAccessor, stroke, highlightOnHover } = props; \r\n\r\n return (\r\n <>\r\n d.open)}\r\n fill=\"url(#MyGradient)\"\r\n strokeWidth={2}\r\n stroke={stroke || '#4682B4'}\r\n highlightOnHover={highlightOnHover}\r\n /*yAccessor={ema20.accessor()} stroke={ema20.stroke()}*//>\r\n \r\n )\r\n}\r\n\r\nexport function MultipleLineChart(props) {\r\n const ema20 = ema()\r\n .id(0)\r\n .options({ windowSize: 20 })\r\n .merge((d, c) => { d.ema20 = c; })\r\n .accessor(d => d.ema20);\r\n\r\n const ema50 = ema()\r\n .id(2)\r\n .options({ windowSize: 50 })\r\n .merge((d, c) => { d.ema50 = c; })\r\n .accessor(d => d.ema50);\r\n\r\n return (\r\n <>\r\n \r\n \r\n \r\n\r\n \r\n \r\n\r\n \r\n \r\n d.open} fill={d => d.close > d.open ? \"#6BA583\" : \"#FF0000\"}/>\r\n \r\n \r\n d.open} fill={d => d.close > d.open ? \"#6BA583\" : \"#FF0000\"}/>\r\n\r\n \r\n {}}\r\n origin={[-38, 15]}\r\n options={[\r\n {\r\n yAccessor: ema20.accessor(),\r\n type: \"EMA\",\r\n stroke: ema20.stroke(),\r\n windowSize: ema20.options().windowSize,\r\n },\r\n {\r\n yAccessor: ema50.accessor(),\r\n type: \"EMA\",\r\n stroke: ema50.stroke(),\r\n windowSize: ema50.options().windowSize,\r\n },\r\n ]}\r\n />\r\n \r\n )\r\n}\r\n\r\nexport function AreaChart(props) {\r\n const { yAccessor, strokes, highlightOnHover } = props; \r\n return (\r\n <>\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n d.open)}\r\n fill=\"url(#MyGradient)\"\r\n strokeWidth={2}\r\n stroke={strokes && strokes[2] ? strokes[2] : '#4682B4'}\r\n interpolation={curveMonotoneX}\r\n canvasGradient={canvasGradient}\r\n />\r\n \r\n )\r\n}\r\n\r\nexport function CandlestickChart(props) {\r\n let candlesAppearance = {\r\n ...props.appearance,\r\n opacity: 1\r\n }\r\n const { type } = props\r\n if (type === 'hollow-candle'){\r\n candlesAppearance = {\r\n wickStroke: \"#225437\",\r\n fill: function fill(d) {\r\n // return d.close > d.open ? \"#ff6960\" : \"rgba(196, 205, 211, 0.8)\";\r\n return d.close > d.open ? \"#FF0000\" : \"#6BA583\" ;\r\n },\r\n stroke: \"#225437\",\r\n candleStrokeWidth: 1,\r\n widthRatio: 0.8,\r\n opacity: 1,\r\n }\r\n }\r\n return (\r\n <>\r\n \r\n \r\n )\r\n}\r\n\r\nexport function BarChart(props) {\r\n const { yAccessor, fill, highlightOnHover } = props; \r\n return (\r\n <>\r\n d.open)} fill={fill || (d => d.close > d.open ? \"#6BA583\" : \"#FF0000\")} opacity={1} />\r\n \r\n )\r\n}\r\n\r\n\r\nexport function GroupedBarChart(props) {\r\n const { yAccessor } = props;\r\n const fills = ['#d44444','#2121ca', '#43d643','#9c27b0', '#e4e63e']\r\n const fill = (d, i) => {\r\n return fills[i]\r\n }\r\n return (\r\n <>\r\n d.volume, d => d.close, d => d.open, d => d.high, d => d.low]}\r\n fill={fill}\r\n spaceBetweenBar={3}/>\r\n \r\n )\r\n}\r\n\r\nexport function StackedBarChart(props) {\r\n const { yAccessor } = props;\r\n const fills = ['#d44444','#2121ca', '#43d643','#9c27b0', '#e4e63e']\r\n const fill = (d, i) => {\r\n return fills[i]\r\n }\r\n return (\r\n <>\r\n d.volume, d => d.close, d => d.open, d => d.high, d => d.low]}\r\n fill={fill}\r\n spaceBetweenBar={3}/>\r\n \r\n )\r\n}\r\n\r\nexport function HorizontalBarChart(props) {\r\n return (\r\n <>\r\n d.date} xAccessor={d => d.open} swapScales />\r\n \r\n )\r\n}\r\n\r\n\r\nexport function HorizontalStackedBarChart(props) {\r\n return (\r\n <>\r\n d.date} xAccessor={d => d.open} swapScales />\r\n \r\n )\r\n}\r\n\r\nexport function KagiChart(props) {\r\n return (\r\n <>\r\n \r\n \r\n )\r\n}\r\n\r\nexport function PointAndFigureChart(props) {\r\n return (\r\n <>\r\n \r\n \r\n )\r\n}\r\n\r\nexport function RenkoChart(props) {\r\n return (\r\n <>\r\n \r\n \r\n )\r\n}\r\n\r\nexport function ScatterAshiChart(props) {\r\n const { marker, width, fill, stroke } = props\r\n let scatterSeriesMarker = CircleMarker\r\n let markerProps = { fill: '#2ca02c', stroke: '#2ca02c', width: 6}\r\n if(fill && fill !== '') markerProps.fill = fill\r\n if(stroke && stroke !== '') markerProps.stroke = stroke\r\n if(width && width !== '') markerProps.width = width\r\n if(marker === 'square'){\r\n scatterSeriesMarker = SquareMarker\r\n }else if(marker === 'triangle'){\r\n scatterSeriesMarker = TriangleMarker\r\n }else if(marker === 'circle'){\r\n markerProps.r = width\r\n }\r\n return (\r\n <>\r\n d.close}\r\n stroke={markerProps.stroke}\r\n strokeDasharray=\"LongDash\" />\r\n d.close}\r\n marker={scatterSeriesMarker}\r\n markerProps={markerProps} \r\n />\r\n \r\n )\r\n}","import React from \"react\";\r\n\r\nimport {makeStyles} from \"@mui/styles\";\r\nimport { useDispatch } from \"react-redux\";\r\n\r\nconst useStyles = makeStyles(() => ({\r\n root: {\r\n width: '100%',\r\n position: 'relative',\r\n marginRight: '3px',\r\n },\r\n Label: {\r\n marginBottom: '3px',\r\n fontSize: '.75rem'\r\n },\r\n Input: {\r\n color: '#849095',\r\n padding: '0.4rem',\r\n fontFamily: 'Poppins',\r\n // textTransform: 'uppercase',\r\n // cursor: 'pointer',\r\n background: 'transparent',\r\n width: '100%',\r\n borderRadius: '4px !important',\r\n backgroundColor: 'rgb(255, 255, 255)',\r\n border: '1px solid #d8dde6',\r\n fontSize: '13px',\r\n lineHeight: '1.25rem',\r\n '&:focus': {\r\n outline: 'none',\r\n boxShadow: '0 0 5px -1px #3d91ff'\r\n },\r\n '&.custom-form-small': {\r\n padding: '3px',\r\n fontSize: '13px'\r\n }\r\n },\r\n}));\r\n\r\nexport default function CustomFormInput(_props) {\r\n const classes = useStyles();\r\n\r\n const { label, value, fieldName, name, select, options, placeholder = '', className = '', ...rest} = _props\r\n // Default values initialization\r\n let size = _props.size || ''\r\n let inputType = _props.type || 'text'\r\n\r\n const renderOpt = (_option) => {\r\n if (typeof _option === 'object') {\r\n return \r\n } else {\r\n return \r\n }\r\n }\r\n const handleChange = (e) => {\r\n _props.onChange(fieldName ? fieldName : 'field', e.target.value)\r\n }\r\n return (\r\n <>\r\n
\r\n {\r\n label && label !== '' &&\r\n \r\n }\r\n {\r\n select ? (\r\n \r\n \r\n {\r\n options?.map((item, idx) => (\r\n \r\n ))\r\n }\r\n \r\n ) : inputType === 'textarea' ? (\r\n \r\n ) : (\r\n \r\n )\r\n }\r\n
\r\n \r\n );\r\n}","import React from \"react\";\r\n\r\nimport {\r\n Dialog,\r\n DialogTitle,\r\n DialogContent,\r\n DialogActions,\r\n Button\r\n} from \"@mui/material\";\r\nimport CustomFormInput from 'components/common/Base/CustomFormInput'\r\n\r\n\r\nclass CoordinateDialog extends React.Component {\r\n\tconstructor(props) {\r\n\t\tsuper(props);\r\n\t\tthis.state = {\r\n\t\t\talert: props.alert,\r\n\t\t};\r\n\t\tthis.handleChange = this.handleChange.bind(this);\r\n\t\tthis.handleSave = this.handleSave.bind(this);\r\n\t}\r\n\tcomponentWillReceiveProps(nextProps) {\r\n\t\tthis.setState({\r\n\t\t\talert: nextProps.alert,\r\n\t\t});\r\n\t}\r\n\thandleChange(field, value) {\r\n\t\tconst { alert } = this.state;\r\n\t\tthis.setState({\r\n\t\t\talert: {\r\n\t\t\t\t...alert,\r\n\t\t\t\tdraggable: true,\r\n\t\t\t\tyValue: Number(value),\r\n\t\t\t}\r\n\t\t});\r\n\t}\r\n\thandleSave() {\r\n\t\tthis.props.onSave(this.state.alert, this.props.chartId);\r\n\t}\r\n\trender() {\r\n\t\tconst {\r\n\t\t\topen,\r\n\t\t\tonClose,\r\n\t\t\tonDeleteAlert,\r\n\t\t} = this.props;\r\n\t\tconst { alert } = this.state;\r\n\r\n\t\tif (!open) return null;\r\n\t\treturn (\r\n\t\t\t<>\r\n\t\t\t\t\r\n\t\t\t\t\tEdit Alert\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\tDelete Alert\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\r\n\t\t);\r\n\t}\r\n}\r\n\r\nexport default CoordinateDialog;\r\n","\r\nimport React from \"react\";\r\nimport {\r\n Dialog,\r\n DialogTitle,\r\n DialogContent,\r\n DialogActions,\r\n Button,\r\n Chip\r\n} from \"@mui/material\";\r\nimport { Close, MailOutline } from '@mui/icons-material';\r\nimport CustomFormInput from \"components/common/Base/CustomFormInput\";\r\n\r\nclass TextDialog extends React.Component {\r\n\tconstructor(props) {\r\n\t\tsuper(props);\r\n\t\tthis.state = {\r\n\t\t\ttext: props.text,\r\n\t\t};\r\n\t\tthis.handleChange = this.handleChange.bind(this);\r\n\t\tthis.handleSave = this.handleSave.bind(this);\r\n\t}\r\n\tcomponentWillReceiveProps(nextProps) {\r\n\t\tthis.setState({\r\n\t\t\ttext: nextProps.text,\r\n\t\t});\r\n\t}\r\n\thandleChange(field, value) {\r\n\t\tthis.setState({\r\n\t\t\ttext: value\r\n\t\t});\r\n\t}\r\n\thandleSave() {\r\n\t\tthis.props.onSave(this.state.text);\r\n\t}\r\n\trender() {\r\n\t\tconst {\r\n\t\t\topen,\r\n\t\t\tonClose,\r\n\t\t} = this.props;\r\n\t\tconst { text } = this.state;\r\n\r\n\t\treturn (\r\n\t\t\t<>\r\n\t\t\t\t\r\n\t\t\t\t\tInteractive Text\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\tSave\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\r\n\t\t);\r\n\t}\r\n}\r\n\r\nexport default TextDialog","\r\nimport React from \"react\";\r\nimport PropTypes from \"prop-types\";\r\nimport { scaleLinear } from \"d3-scale\";\r\n\r\nimport PureComponent from \"./utils/PureComponent\";\r\nimport {\r\n\tisNotDefined,\r\n\tnoop,\r\n\tfind,\r\n} from \"./utils\";\r\n\r\nclass Chart extends PureComponent {\r\n\tconstructor(props, context) {\r\n\t\tsuper(props, context);\r\n\t\tthis.yScale = this.yScale.bind(this);\r\n\t\tthis.listener = this.listener.bind(this);\r\n\t}\r\n\tcomponentWillMount() {\r\n\t\tconst { id } = this.props;\r\n\t\tconst { subscribe } = this.context;\r\n\t\tsubscribe(\"chart_\" + id,\r\n\t\t\t{\r\n\t\t\t\tlistener: this.listener,\r\n\t\t\t}\r\n\t\t);\r\n\t}\r\n\tcomponentWillUnmount() {\r\n\t\tconst { id } = this.props;\r\n\t\tconst { unsubscribe } = this.context;\r\n\t\tunsubscribe(\"chart_\" + id);\r\n\t}\r\n\tlistener(type, moreProps, state, e) {\r\n\t\tconst { id, onContextMenu } = this.props;\r\n\r\n\t\tif (type === \"contextmenu\") {\r\n\t\t\tconst { currentCharts } = moreProps;\r\n\t\t\tif (currentCharts.indexOf(id) > -1) {\r\n\t\t\t\tonContextMenu(moreProps, e);\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n\tyScale() {\r\n\t\tconst chartConfig = find(this.context.chartConfig, each => each.id === this.props.id);\r\n\t\treturn chartConfig.yScale.copy();\r\n\t}\r\n\tgetChildContext() {\r\n\t\tconst { id: chartId } = this.props;\r\n\t\tconst chartConfig = find(this.context.chartConfig, each => each.id === chartId);\r\n\r\n\t\treturn {\r\n\t\t\tchartId,\r\n\t\t\tchartConfig,\r\n\t\t};\r\n\t}\r\n\trender() {\r\n\t\tconst { origin } = find(this.context.chartConfig, each => each.id === this.props.id);\r\n\t\tconst [x, y] = origin;\r\n\r\n\t\treturn {this.props.children};\r\n\t}\r\n}\r\n\r\nChart.propTypes = {\r\n\theight: PropTypes.number,\r\n\torigin: PropTypes.oneOfType([\r\n\t\tPropTypes.array,\r\n\t\tPropTypes.func\r\n\t]),\r\n\tid: PropTypes.oneOfType([PropTypes.number, PropTypes.string]).isRequired,\r\n\tyExtents: PropTypes.oneOfType([\r\n\t\tPropTypes.array,\r\n\t\tPropTypes.func\r\n\t]),\r\n\tyExtentsCalculator: function(props, propName, componentName) {\r\n\t\tif (isNotDefined(props.yExtents) && typeof props.yExtentsCalculator !== \"function\")\r\n\t\t\treturn new Error(\"yExtents or yExtentsCalculator must\"\r\n\t\t\t\t+ ` be present on ${componentName}. Validation failed.`);\r\n\t},\r\n\tonContextMenu: PropTypes.func,\r\n\tyScale: PropTypes.func,\r\n\r\n\tflipYScale: PropTypes.bool,\r\n\tpadding: PropTypes.oneOfType([\r\n\t\tPropTypes.number,\r\n\t\tPropTypes.shape({\r\n\t\t\ttop: PropTypes.number,\r\n\t\t\tbottom: PropTypes.number,\r\n\t\t})\r\n\t]),\r\n\tchildren: PropTypes.node,\r\n};\r\n\r\nChart.defaultProps = {\r\n\tid: 0,\r\n\torigin: [0, 0],\r\n\tpadding: 0,\r\n\tyScale: scaleLinear(),\r\n\tflipYScale: false,\r\n\tyPan: true,\r\n\tyPanEnabled: false,\r\n\tonContextMenu: noop,\r\n};\r\n\r\nChart.contextTypes = {\r\n\tchartConfig: PropTypes.array,\r\n\tsubscribe: PropTypes.func.isRequired,\r\n\tunsubscribe: PropTypes.func.isRequired,\r\n};\r\n\r\nChart.childContextTypes = {\r\n\tchartConfig: PropTypes.object.isRequired,\r\n\tchartId: PropTypes.oneOfType([PropTypes.number, PropTypes.string]).isRequired,\r\n};\r\n\r\nexport default Chart;\r\n","\r\n\r\nimport React from \"react\";\r\nimport { extent } from \"d3-array\";\r\nimport { set } from \"d3-collection\";\r\nimport { flattenDeep } from \"lodash\";\r\n\r\nimport Chart from \"../Chart\";\r\n\r\nimport {\r\n\tlast,\r\n\tisObject,\r\n\tgetClosestItem,\r\n\tzipper,\r\n\tisDefined,\r\n\tisNotDefined,\r\n\tfunctor,\r\n\tmapObject,\r\n\tfind,\r\n\tshallowEqual\r\n} from \"./index\";\r\n\r\nexport function getChartOrigin(origin, contextWidth, contextHeight) {\r\n\tconst originCoordinates = typeof origin === \"function\"\r\n\t\t? origin(contextWidth, contextHeight)\r\n\t\t: origin;\r\n\treturn originCoordinates;\r\n}\r\n\r\nexport function getDimensions({ width, height }, chartProps) {\r\n\r\n\tconst chartHeight = (chartProps.height || height);\r\n\r\n\treturn {\r\n\t\tavailableHeight: height,\r\n\t\twidth,\r\n\t\theight: chartHeight\r\n\t};\r\n}\r\n\r\nfunction values(func) {\r\n\treturn (d) => {\r\n\t\tconst obj = func(d);\r\n\t\tif (isObject(obj)) {\r\n\t\t\treturn mapObject(obj);\r\n\t\t}\r\n\t\treturn obj;\r\n\t};\r\n}\r\n\r\nfunction isArraySize2AndNumber(yExtentsProp) {\r\n\tif (Array.isArray(yExtentsProp) && yExtentsProp.length === 2) {\r\n\t\tconst [a, b] = yExtentsProp;\r\n\t\treturn (typeof a == \"number\" && typeof b == \"number\");\r\n\t}\r\n\treturn false;\r\n}\r\n\r\nexport function getNewChartConfig(innerDimension, children, existingChartConfig = []) {\r\n\treturn React.Children.map(children, (each) => {\r\n\t\tif (each && each.type.toString() === Chart.toString()) {\r\n\t\t\tconst chartProps = {\r\n\t\t\t\t...Chart.defaultProps,\r\n\t\t\t\t...each.props\r\n\t\t\t};\r\n\t\t\tconst {\r\n\t\t\t\tid,\r\n\t\t\t\torigin,\r\n\t\t\t\tpadding,\r\n\t\t\t\tyExtents: yExtentsProp,\r\n\t\t\t\tyScale: yScaleProp,\r\n\t\t\t\tflipYScale,\r\n\t\t\t\tyExtentsCalculator\r\n\t\t\t} = chartProps;\r\n\r\n\t\t\tconst yScale = yScaleProp.copy();\r\n\t\t\tconst {\r\n\t\t\t\twidth, height, availableHeight\r\n\t\t\t} = getDimensions(innerDimension, chartProps);\r\n\r\n\t\t\tconst { yPan } = chartProps;\r\n\t\t\tlet { yPanEnabled } = chartProps;\r\n\t\t\t// var { yMousePointerRectWidth: rectWidth, yMousePointerRectHeight: rectHeight, yMousePointerArrowWidth: arrowWidth } = each.props;\r\n\t\t\t// var mouseCoordinates = { at, yDisplayFormat, rectHeight, rectWidth, arrowWidth };\r\n\t\t\tconst yExtents = isDefined(yExtentsProp)\r\n\t\t\t\t? (Array.isArray(yExtentsProp) ? yExtentsProp : [yExtentsProp]).map(functor)\r\n\t\t\t\t: undefined;\r\n\r\n\t\t\tconst prevChartConfig = find(existingChartConfig, d => d.id === id);\r\n\r\n\t\t\tif (isArraySize2AndNumber(yExtentsProp)) {\r\n\t\t\t\tif (\r\n\t\t\t\t\tisDefined(prevChartConfig)\r\n\t\t\t\t\t&& prevChartConfig.yPan\r\n\t\t\t\t\t&& prevChartConfig.yPanEnabled\r\n\t\t\t\t\t&& yPan\r\n\t\t\t\t\t&& yPanEnabled\r\n\t\t\t\t\t&& shallowEqual(prevChartConfig.originalYExtentsProp, yExtentsProp)\r\n\t\t\t\t) {\r\n\t\t\t\t\t// console.log(prevChartConfig.originalYExtentsProp, yExtentsProp)\r\n\t\t\t\t\t// console.log(prevChartConfig.yScale.domain())\r\n\t\t\t\t\tyScale.domain(prevChartConfig.yScale.domain());\r\n\t\t\t\t} else {\r\n\t\t\t\t\tconst [a, b] = yExtentsProp;\r\n\t\t\t\t\tyScale.domain([a, b]);\r\n\t\t\t\t}\r\n\t\t\t} else if (isDefined(prevChartConfig) && prevChartConfig.yPanEnabled) {\r\n\t\t\t\tif (isArraySize2AndNumber(prevChartConfig.originalYExtentsProp)) {\r\n\t\t\t\t\t// do nothing\r\n\t\t\t\t} else {\r\n\t\t\t\t\tyScale.domain(prevChartConfig.yScale.domain());\r\n\t\t\t\t\tyPanEnabled = true;\r\n\t\t\t\t}\r\n\t\t\t}\r\n\r\n\t\t\treturn {\r\n\t\t\t\tid,\r\n\t\t\t\torigin: functor(origin)(width, availableHeight),\r\n\t\t\t\tpadding,\r\n\t\t\t\toriginalYExtentsProp: yExtentsProp,\r\n\t\t\t\tyExtents,\r\n\t\t\t\tyExtentsCalculator,\r\n\t\t\t\tflipYScale,\r\n\t\t\t\t// yScale: setRange(yScale.copy(), height, padding, flipYScale),\r\n\t\t\t\tyScale: yScale,\r\n\t\t\t\tyPan,\r\n\t\t\t\tyPanEnabled,\r\n\t\t\t\t// mouseCoordinates,\r\n\t\t\t\twidth,\r\n\t\t\t\theight\r\n\t\t\t};\r\n\t\t}\r\n\t\treturn undefined;\r\n\t}).filter(each => isDefined(each));\r\n}\r\nexport function getCurrentCharts(chartConfig, mouseXY) {\r\n\tconst currentCharts = chartConfig.filter(eachConfig => {\r\n\t\tconst top = eachConfig.origin[1];\r\n\t\tconst bottom = top + eachConfig.height;\r\n\t\treturn (mouseXY[1] > top && mouseXY[1] < bottom);\r\n\t}).map(config => config.id);\r\n\r\n\treturn currentCharts;\r\n}\r\n\r\nfunction setRange(scale, height, padding, flipYScale) {\r\n\tif (scale.rangeRoundPoints || isNotDefined(scale.invert)) {\r\n\t\tif (isNaN(padding)) throw new Error(\"padding has to be a number for ordinal scale\");\r\n\t\tif (scale.rangeRoundPoints) scale.rangeRoundPoints(flipYScale ? [0, height] : [height, 0], padding);\r\n\t\tif (scale.rangeRound) scale.range(flipYScale ? [0, height] : [height, 0]).padding(padding);\r\n\t} else {\r\n\t\tconst { top, bottom } = isNaN(padding)\r\n\t\t\t? padding\r\n\t\t\t: { top: padding, bottom: padding };\r\n\r\n\t\tscale.range(flipYScale ? [top, height - bottom] : [height - bottom, top]);\r\n\t}\r\n\treturn scale;\r\n}\r\n\r\nfunction yDomainFromYExtents(yExtents, yScale, plotData) {\r\n\tconst yValues = yExtents.map(eachExtent =>\r\n\t\tplotData.map(values(eachExtent)));\r\n\r\n\tconst allYValues = flattenDeep(yValues);\r\n\t// console.log(allYValues)\r\n\tconst realYDomain = (yScale.invert)\r\n\t\t? extent(allYValues)\r\n\t\t: set(allYValues).values();\r\n\r\n\treturn realYDomain;\r\n}\r\n\r\n\r\nexport function getChartConfigWithUpdatedYScales(\r\n\tchartConfig,\r\n\t{ plotData, xAccessor, displayXAccessor, fullData },\r\n\txDomain,\r\n\tdy,\r\n\tchartsToPan\r\n) {\r\n\tconst yDomains = chartConfig\r\n\t\t.map(({ yExtentsCalculator, yExtents, yScale }) => {\r\n\r\n\t\t\tconst realYDomain = isDefined(yExtentsCalculator)\r\n\t\t\t\t? yExtentsCalculator({ plotData, xDomain, xAccessor, displayXAccessor, fullData })\r\n\t\t\t\t: yDomainFromYExtents(yExtents, yScale, plotData);\r\n\r\n\t\t\t// console.log(\"yScale.domain() ->\", yScale.domain())\r\n\r\n\t\t\tconst yDomainDY = isDefined(dy)\r\n\t\t\t\t? yScale.range().map(each => each - dy).map(yScale.invert)\r\n\t\t\t\t: yScale.domain();\r\n\t\t\treturn {\r\n\t\t\t\trealYDomain,\r\n\t\t\t\tyDomainDY,\r\n\t\t\t\tprevYDomain: yScale.domain(),\r\n\t\t\t};\r\n\t\t});\r\n\r\n\tconst combine = zipper()\r\n\t\t.combine((config, { realYDomain, yDomainDY, prevYDomain }) => {\r\n\t\t\tconst { id, padding, height, yScale, yPan, flipYScale, yPanEnabled = false } = config;\r\n\r\n\t\t\tconst another = isDefined(chartsToPan)\r\n\t\t\t\t? chartsToPan.indexOf(id) > -1\r\n\t\t\t\t: true;\r\n\t\t\tconst domain = yPan && yPanEnabled\r\n\t\t\t\t? another ? yDomainDY : prevYDomain\r\n\t\t\t\t: realYDomain;\r\n\r\n\t\t\t// console.log(id, yPan, yPanEnabled, another);\r\n\t\t\t// console.log(domain, realYDomain, prevYDomain);\r\n\t\t\tconst newYScale = setRange(\r\n\t\t\t\tyScale.copy().domain(domain), height, padding, flipYScale\r\n\t\t\t);\r\n\t\t\treturn {\r\n\t\t\t\t...config,\r\n\t\t\t\tyScale: newYScale,\r\n\t\t\t\trealYDomain: realYDomain,\r\n\t\t\t};\r\n\t\t\t// return { ...config, yScale: yScale.copy().domain(domain).range([height - padding, padding]) };\r\n\t\t});\r\n\r\n\tconst updatedChartConfig = combine(chartConfig, yDomains);\r\n\t// console.error(yDomains, dy, chartsToPan, updatedChartConfig.map(d => d.yScale.domain()));\r\n\t// console.log(updatedChartConfig.map(d => ({ id: d.id, domain: d.yScale.domain() })))\r\n\r\n\treturn updatedChartConfig;\r\n}\r\n\r\nexport function getCurrentItem(xScale, xAccessor, mouseXY, plotData) {\r\n\tlet xValue, item;\r\n\tif (xScale.invert) {\r\n\t\txValue = xScale.invert(mouseXY[0]);\r\n\t\titem = getClosestItem(plotData, xValue, xAccessor);\r\n\t} else {\r\n\t\tconst d = xScale.range().map((d, idx) => ({ x: Math.abs(d - mouseXY[0]), idx })).reduce((a, b) => a.x < b.x ? a : b);\r\n\t\titem = isDefined(d) ? plotData[d.idx] : plotData[0];\r\n\t\t// console.log(d, item);\r\n\t}\r\n\treturn item;\r\n}\r\n\r\nexport function getXValue(xScale, xAccessor, mouseXY, plotData) {\r\n\r\n\tlet xValue, item;\r\n\tif (xScale.invert) {\r\n\t\txValue = xScale.invert(mouseXY[0]);\r\n\t\tif (xValue > xAccessor(last(plotData)) && xScale.value) {\r\n\t\t\treturn Math.round(xValue);\r\n\t\t} else {\r\n\t\t\titem = getClosestItem(plotData, xValue, xAccessor);\r\n\t\t}\r\n\t} else {\r\n\t\tconst d = xScale.range().map((d, idx) => ({ x: Math.abs(d - mouseXY[0]), idx })).reduce((a, b) => a.x < b.x ? a : b);\r\n\t\titem = isDefined(d) ? plotData[d.idx] : plotData[0];\r\n\t\t// console.log(d, item);\r\n\t}\r\n\treturn xAccessor(item);\r\n}\r\n","\r\n\r\nimport React, { Component } from \"react\";\r\nimport PropTypes from \"prop-types\";\r\nimport { select, event as d3Event, mouse, touches } from \"d3-selection\";\r\n\r\nimport {\r\n\tisDefined, mousePosition, touchPosition, getTouchProps,\r\n\td3Window,\r\n\tMOUSEMOVE, MOUSEUP,\r\n\tMOUSEENTER, MOUSELEAVE,\r\n\tTOUCHMOVE, TOUCHEND,\r\n\tnoop\r\n} from \"./utils\";\r\nimport { getCurrentCharts } from \"./utils/ChartDataUtil\";\r\n// import { clearTimeout, setTimeout } from \"timers\";\r\n\r\nclass EventCapture extends Component {\r\n\tconstructor(props) {\r\n\t\tsuper(props);\r\n\t\tthis.handleEnter = this.handleEnter.bind(this);\r\n\t\tthis.handleLeave = this.handleLeave.bind(this);\r\n\t\tthis.handleWheel = this.handleWheel.bind(this);\r\n\t\tthis.handleMouseMove = this.handleMouseMove.bind(this);\r\n\t\tthis.handleMouseDown = this.handleMouseDown.bind(this);\r\n\t\tthis.handlePanEnd = this.handlePanEnd.bind(this);\r\n\t\tthis.handlePan = this.handlePan.bind(this);\r\n\t\tthis.handleTouchStart = this.handleTouchStart.bind(this);\r\n\t\tthis.handleTouchMove = this.handleTouchMove.bind(this);\r\n\t\tthis.handlePinchZoom = this.handlePinchZoom.bind(this);\r\n\t\tthis.handlePinchZoomEnd = this.handlePinchZoomEnd.bind(this);\r\n\r\n\t\tthis.handleClick = this.handleClick.bind(this);\r\n\r\n\t\tthis.handleRightClick = this.handleRightClick.bind(this);\r\n\t\tthis.handleDrag = this.handleDrag.bind(this);\r\n\t\tthis.handleDragEnd = this.handleDragEnd.bind(this);\r\n\r\n\t\tthis.shouldPan = this.shouldPan.bind(this);\r\n\t\tthis.canPan = this.canPan.bind(this);\r\n\r\n\t\tthis.setCursorClass = this.setCursorClass.bind(this);\r\n\t\tthis.saveNode = this.saveNode.bind(this);\r\n\r\n\t\tthis.mouseInside = false;\r\n\r\n\t\tthis.mouseInteraction = true;\r\n\t\tthis.state = {\r\n\t\t\tpanInProgress: false,\r\n\t\t};\r\n\t}\r\n\tsaveNode(node) {\r\n\t\tthis.node = node;\r\n\t}\r\n\tcomponentWillMount() {\r\n\t\tthis.focus = this.props.focus;\r\n\t}\r\n\tcomponentDidMount() {\r\n\t\tif (this.node) {\r\n\t\t\tselect(this.node)\r\n\t\t\t\t.on(MOUSEENTER, this.handleEnter)\r\n\t\t\t\t.on(MOUSELEAVE, this.handleLeave);\r\n\t\t}\r\n\t}\r\n\tcomponentDidUpdate() {\r\n\t\tthis.componentDidMount();\r\n\t}\r\n\tcomponentWillUnmount() {\r\n\t\tif (this.node) {\r\n\t\t\tselect(this.node)\r\n\t\t\t\t.on(MOUSEENTER, null)\r\n\t\t\t\t.on(MOUSELEAVE, null);\r\n\t\t\tconst win = d3Window(this.node);\r\n\t\t\tselect(win)\r\n\t\t\t\t.on(MOUSEMOVE, null);\r\n\t\t}\r\n\t}\r\n\thandleEnter() {\r\n\t\tconst e = d3Event;\r\n\r\n\t\tconst { onMouseEnter } = this.props;\r\n\t\tthis.mouseInside = true;\r\n\t\tif (!this.state.panInProgress\r\n\t\t\t\t&& !this.state.dragInProgress) {\r\n\t\t\tconst win = d3Window(this.node);\r\n\t\t\tselect(win)\r\n\t\t\t\t.on(MOUSEMOVE, this.handleMouseMove);\r\n\t\t}\r\n\t\tonMouseEnter(e);\r\n\t}\r\n\thandleLeave(e) {\r\n\t\tconst { onMouseLeave } = this.props;\r\n\t\tthis.mouseInside = false;\r\n\t\tif (!this.state.panInProgress\r\n\t\t\t\t&& !this.state.dragInProgress) {\r\n\t\t\tconst win = d3Window(this.node);\r\n\t\t\tselect(win)\r\n\t\t\t\t.on(MOUSEMOVE, null);\r\n\t\t}\r\n\t\tonMouseLeave(e);\r\n\t}\r\n\thandleWheel(e) {\r\n\t\tconst { zoom, onZoom } = this.props;\r\n\t\tconst { panInProgress } = this.state;\r\n\r\n\t\tconst yZoom = Math.abs(e.deltaY) > Math.abs(e.deltaX) && Math.abs(e.deltaY) > 0;\r\n\t\t// const xPan = Math.abs(e.deltaY) < Math.abs(e.deltaX) && Math.abs(e.deltaX) > 0;\r\n\t\tconst mouseXY = mousePosition(e);\r\n\t\te.preventDefault();\r\n\r\n\t\tif (zoom && this.focus && yZoom && !panInProgress) {\r\n\t\t\tconst zoomDir = e.deltaY > 0 ? 1 : -1;\r\n\r\n\t\t\tonZoom(zoomDir, mouseXY, e);\r\n\t\t} else if (this.focus) {\r\n\t\t\tif (this.shouldPan()) {\r\n\t\t\t\t// console.log(\"Do pan now...\")\r\n\t\t\t\t// pan already in progress\r\n\t\t\t\tconst {\r\n\t\t\t\t\tpanStartXScale,\r\n\t\t\t\t\tchartsToPan\r\n\t\t\t\t} = this.state.panStart;\r\n\t\t\t\tthis.lastNewPos = mouseXY;\r\n\t\t\t\tthis.panHappened = true;\r\n\r\n\t\t\t\tthis.dx += e.deltaX;\r\n\t\t\t\tthis.dy += e.deltaY;\r\n\t\t\t\tconst dxdy = { dx: this.dx, dy: this.dy };\r\n\r\n\t\t\t\tthis.props.onPan(mouseXY, panStartXScale, dxdy, chartsToPan, e);\r\n\t\t\t} else {\r\n\t\t\t\t// console.log(\"Pan start...\")\r\n\t\t\t\t// pan start\r\n\r\n\t\t\t\tconst { xScale, chartConfig } = this.props;\r\n\t\t\t\tconst currentCharts = getCurrentCharts(chartConfig, mouseXY);\r\n\r\n\t\t\t\tthis.dx = 0;\r\n\t\t\t\tthis.dy = 0;\r\n\t\t\t\tthis.setState({\r\n\t\t\t\t\tpanInProgress: true,\r\n\t\t\t\t\tpanStart: {\r\n\t\t\t\t\t\tpanStartXScale: xScale,\r\n\t\t\t\t\t\tpanOrigin: mouseXY,\r\n\t\t\t\t\t\tchartsToPan: currentCharts\r\n\t\t\t\t\t},\r\n\t\t\t\t});\r\n\t\t\t}\r\n\t\t\tthis.queuePanEnd();\r\n\t\t}\r\n\t}\r\n\tqueuePanEnd() {\r\n\t\tif (isDefined(this.panEndTimeout)) {\r\n\t\t\tclearTimeout(this.panEndTimeout);\r\n\t\t}\r\n\t\tthis.panEndTimeout = setTimeout(() => {\r\n\t\t\tthis.handlePanEnd();\r\n\t\t}, 100);\r\n\t}\r\n\thandleMouseMove() {\r\n\t\tconst e = d3Event;\r\n\r\n\t\tconst { onMouseMove, mouseMove } = this.props;\r\n\r\n\t\tif (this.mouseInteraction\r\n\t\t\t\t&& mouseMove\r\n\t\t\t\t&& !this.state.panInProgress) {\r\n\r\n\t\t\tconst newPos = mouse(this.node);\r\n\r\n\t\t\tonMouseMove(newPos, \"mouse\", e);\r\n\t\t}\r\n\t}\r\n\thandleClick(e) {\r\n\t\tconst mouseXY = mousePosition(e);\r\n\t\tconst { onClick, onDoubleClick } = this.props;\r\n\r\n\t\tif (!this.panHappened && !this.dragHappened) {\r\n\t\t\tif (this.clicked) {\r\n\t\t\t\tonDoubleClick(mouseXY, e);\r\n\t\t\t\tthis.clicked = false;\r\n\t\t\t} else {\r\n\t\t\t\tonClick(mouseXY, e);\r\n\t\t\t\tthis.clicked = true;\r\n\t\t\t\tsetTimeout(() => {\r\n\t\t\t\t\tif (this.clicked) {\r\n\t\t\t\t\t\tthis.clicked = false;\r\n\t\t\t\t\t}\r\n\t\t\t\t}, 400);\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n\thandleRightClick(e) {\r\n\t\te.stopPropagation();\r\n\t\te.preventDefault();\r\n\t\tconst { onContextMenu, onPanEnd } = this.props;\r\n\r\n\t\tconst mouseXY = mousePosition(e, this.node.getBoundingClientRect());\r\n\r\n\t\tif (isDefined(this.state.panStart)) {\r\n\t\t\tconst { panStartXScale, panOrigin, chartsToPan } = this.state.panStart;\r\n\t\t\tif (this.panHappened) {\r\n\t\t\t\tonPanEnd(mouseXY, panStartXScale, panOrigin, chartsToPan, e);\r\n\t\t\t}\r\n\t\t\tconst win = d3Window(this.node);\r\n\t\t\tselect(win)\r\n\t\t\t\t.on(MOUSEMOVE, null)\r\n\t\t\t\t.on(MOUSEUP, null);\r\n\r\n\t\t\tthis.setState({\r\n\t\t\t\tpanInProgress: false,\r\n\t\t\t\tpanStart: null,\r\n\t\t\t});\r\n\t\t}\r\n\r\n\t\tonContextMenu(mouseXY, e);\r\n\t}\r\n\r\n\thandleDrag() {\r\n\t\tconst e = d3Event;\r\n\t\tif (this.props.onDrag) {\r\n\t\t\tthis.dragHappened = true;\r\n\t\t\tconst mouseXY = mouse(this.node);\r\n\t\t\tthis.props.onDrag({\r\n\t\t\t\tstartPos: this.state.dragStartPosition,\r\n\t\t\t\tmouseXY\r\n\t\t\t}, e);\r\n\t\t}\r\n\t}\r\n\tcancelDrag() {\r\n\t\tconst win = d3Window(this.node);\r\n\t\tselect(win)\r\n\t\t\t.on(MOUSEMOVE, this.mouseInside ? this.handleMouseMove : null)\r\n\t\t\t.on(MOUSEUP, null);\r\n\r\n\t\tthis.setState({\r\n\t\t\tdragInProgress: false,\r\n\t\t});\r\n\t\tthis.mouseInteraction = true;\r\n\t}\r\n\thandleDragEnd() {\r\n\t\tconst e = d3Event;\r\n\t\tconst mouseXY = mouse(this.node);\r\n\r\n\t\tconst win = d3Window(this.node);\r\n\t\tselect(win)\r\n\t\t\t.on(MOUSEMOVE, this.mouseInside ? this.handleMouseMove : null)\r\n\t\t\t.on(MOUSEUP, null);\r\n\r\n\t\tif (this.dragHappened) {\r\n\t\t\tthis.props.onDragComplete({\r\n\t\t\t\tmouseXY\r\n\t\t\t}, e);\r\n\t\t}\r\n\r\n\t\tthis.setState({\r\n\t\t\tdragInProgress: false,\r\n\t\t});\r\n\t\tthis.mouseInteraction = true;\r\n\t}\r\n\tcanPan() {\r\n\t\tconst { getAllPanConditions } = this.props;\r\n\t\tconst { pan: initialPanEnabled } = this.props;\r\n\r\n\t\tconst {\r\n\t\t\tpanEnabled,\r\n\t\t\tdraggable: somethingSelected\r\n\t\t} = getAllPanConditions()\r\n\t\t\t.reduce((returnObj, a) => {\r\n\t\t\t\treturn {\r\n\t\t\t\t\tdraggable: returnObj.draggable || a.draggable,\r\n\t\t\t\t\tpanEnabled: returnObj.panEnabled && a.panEnabled,\r\n\t\t\t\t};\r\n\t\t\t}, {\r\n\t\t\t\tdraggable: false,\r\n\t\t\t\tpanEnabled: initialPanEnabled,\r\n\t\t\t});\r\n\r\n\t\treturn {\r\n\t\t\tpanEnabled,\r\n\t\t\tsomethingSelected\r\n\t\t};\r\n\t}\r\n\thandleMouseDown(e) {\r\n\t\tif (e.button !== 0) {\r\n\t\t\treturn;\r\n\t\t}\r\n\t\tconst { xScale, chartConfig, onMouseDown } = this.props;\r\n\r\n\t\tthis.panHappened = false;\r\n\t\tthis.dragHappened = false;\r\n\t\tthis.focus = true;\r\n\r\n\t\tif (!this.state.panInProgress\r\n\t\t\t&& this.mouseInteraction\r\n\t\t) {\r\n\r\n\t\t\tconst mouseXY = mousePosition(e);\r\n\t\t\tconst currentCharts = getCurrentCharts(chartConfig, mouseXY);\r\n\t\t\tconst {\r\n\t\t\t\tpanEnabled, somethingSelected\r\n\t\t\t} = this.canPan();\r\n\t\t\tconst pan = panEnabled && !somethingSelected;\r\n\r\n\t\t\tif (pan) {\r\n\t\t\t\tthis.setState({\r\n\t\t\t\t\tpanInProgress: pan,\r\n\t\t\t\t\tpanStart: {\r\n\t\t\t\t\t\tpanStartXScale: xScale,\r\n\t\t\t\t\t\tpanOrigin: mouseXY,\r\n\t\t\t\t\t\tchartsToPan: currentCharts\r\n\t\t\t\t\t},\r\n\t\t\t\t});\r\n\r\n\t\t\t\tconst win = d3Window(this.node);\r\n\t\t\t\tselect(win)\r\n\t\t\t\t\t.on(MOUSEMOVE, this.handlePan)\r\n\t\t\t\t\t.on(MOUSEUP, this.handlePanEnd);\r\n\r\n\t\t\t} else if (somethingSelected) {\r\n\t\t\t\tthis.setState({\r\n\t\t\t\t\tpanInProgress: false,\r\n\t\t\t\t\tdragInProgress: true,\r\n\t\t\t\t\tpanStart: null,\r\n\t\t\t\t\tdragStartPosition: mouseXY,\r\n\t\t\t\t});\r\n\t\t\t\tthis.props.onDragStart({ startPos: mouseXY }, e);\r\n\t\t\t\t// this.mouseInteraction = false;\r\n\r\n\t\t\t\tconst win = d3Window(this.node);\r\n\t\t\t\tselect(win)\r\n\t\t\t\t\t.on(MOUSEMOVE, this.handleDrag)\r\n\t\t\t\t\t.on(MOUSEUP, this.handleDragEnd);\r\n\t\t\t}\r\n\r\n\t\t\tonMouseDown(mouseXY, currentCharts, e);\r\n\t\t}\r\n\t\te.preventDefault();\r\n\t}\r\n\tshouldPan() {\r\n\t\tconst { pan: panEnabled, onPan } = this.props;\r\n\t\treturn panEnabled\r\n\t\t\t&& onPan\r\n\t\t\t&& isDefined(this.state.panStart);\r\n\t}\r\n\thandlePan() {\r\n\t\tconst e = d3Event;\r\n\r\n\t\tif (this.shouldPan()) {\r\n\t\t\tthis.panHappened = true;\r\n\r\n\t\t\tconst { panStartXScale, panOrigin, chartsToPan } = this.state.panStart;\r\n\r\n\t\t\tconst mouseXY = this.mouseInteraction\r\n\t\t\t\t? mouse(this.node)\r\n\t\t\t\t: touches(this.node)[0];\r\n\r\n\t\t\tthis.lastNewPos = mouseXY;\r\n\t\t\tconst dx = mouseXY[0] - panOrigin[0];\r\n\t\t\tconst dy = mouseXY[1] - panOrigin[1];\r\n\r\n\t\t\tthis.dx = dx;\r\n\t\t\tthis.dy = dy;\r\n\r\n\t\t\tthis.props.onPan(\r\n\t\t\t\tmouseXY, panStartXScale, { dx, dy }, chartsToPan, e\r\n\t\t\t);\r\n\t\t}\r\n\t}\r\n\thandlePanEnd() {\r\n\t\tconst e = d3Event;\r\n\t\tconst { pan: panEnabled, onPanEnd } = this.props;\r\n\r\n\t\tif (isDefined(this.state.panStart)) {\r\n\t\t\tconst { panStartXScale, chartsToPan } = this.state.panStart;\r\n\r\n\t\t\tconst win = d3Window(this.node);\r\n\t\t\tselect(win)\r\n\t\t\t\t.on(MOUSEMOVE, this.mouseInside ? this.handleMouseMove : null)\r\n\t\t\t\t.on(MOUSEUP, null)\r\n\t\t\t\t.on(TOUCHMOVE, null)\r\n\t\t\t\t.on(TOUCHEND, null);\r\n\r\n\t\t\tif (this.panHappened\r\n\t\t\t\t\t// && !this.contextMenuClicked\r\n\t\t\t\t\t&& panEnabled\r\n\t\t\t\t\t&& onPanEnd) {\r\n\t\t\t\tconst { dx, dy } = this;\r\n\r\n\t\t\t\t// console.log(dx, dy)\r\n\t\t\t\tdelete this.dx;\r\n\t\t\t\tdelete this.dy;\r\n\t\t\t\tonPanEnd(this.lastNewPos, panStartXScale, { dx, dy }, chartsToPan, e);\r\n\t\t\t}\r\n\r\n\t\t\tthis.setState({\r\n\t\t\t\tpanInProgress: false,\r\n\t\t\t\tpanStart: null,\r\n\t\t\t});\r\n\t\t}\r\n\t}\r\n\thandleTouchMove(e) {\r\n\t\tconst { onMouseMove } = this.props;\r\n\t\tconst touchXY = touchPosition(getTouchProps(e.touches[0]), e);\r\n\t\tonMouseMove(touchXY, \"touch\", e);\r\n\t}\r\n\thandleTouchStart(e) {\r\n\t\tthis.mouseInteraction = false;\r\n\r\n\t\tconst { pan: panEnabled, chartConfig, onMouseMove } = this.props;\r\n\t\tconst { xScale, onPanEnd } = this.props;\r\n\r\n\t\tif (e.touches.length === 1) {\r\n\r\n\t\t\tthis.panHappened = false;\r\n\t\t\tconst touchXY = touchPosition(getTouchProps(e.touches[0]), e);\r\n\t\t\tonMouseMove(touchXY, \"touch\", e);\r\n\r\n\t\t\tif (panEnabled) {\r\n\t\t\t\tconst currentCharts = getCurrentCharts(chartConfig, touchXY);\r\n\r\n\t\t\t\tthis.setState({\r\n\t\t\t\t\tpanInProgress: true,\r\n\t\t\t\t\tpanStart: {\r\n\t\t\t\t\t\tpanStartXScale: xScale,\r\n\t\t\t\t\t\tpanOrigin: touchXY,\r\n\t\t\t\t\t\tchartsToPan: currentCharts,\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\r\n\t\t\t\tconst win = d3Window(this.node);\r\n\t\t\t\tselect(win)\r\n\t\t\t\t\t.on(TOUCHMOVE, this.handlePan, false)\r\n\t\t\t\t\t.on(TOUCHEND, this.handlePanEnd, false);\r\n\r\n\t\t\t}\r\n\t\t} else if (e.touches.length === 2) {\r\n\t\t\t// pinch zoom begin\r\n\t\t\t// do nothing pinch zoom is handled in handleTouchMove\r\n\t\t\tconst { panInProgress, panStart } = this.state;\r\n\r\n\t\t\tif (panInProgress && panEnabled && onPanEnd) {\r\n\t\t\t\tconst { panStartXScale, panOrigin, chartsToPan } = panStart;\r\n\r\n\t\t\t\tconst win = d3Window(this.node);\r\n\t\t\t\tselect(win)\r\n\t\t\t\t\t.on(MOUSEMOVE, this.mouseInside ? this.handleMouseMove : null)\r\n\t\t\t\t\t.on(MOUSEUP, null)\r\n\t\t\t\t\t.on(TOUCHMOVE, this.handlePinchZoom, false)\r\n\t\t\t\t\t.on(TOUCHEND, this.handlePinchZoomEnd, false);\r\n\r\n\t\t\t\tconst touch1Pos = touchPosition(getTouchProps(e.touches[0]), e);\r\n\t\t\t\tconst touch2Pos = touchPosition(getTouchProps(e.touches[1]), e);\r\n\r\n\t\t\t\tif (this.panHappened\r\n\t\t\t\t\t\t// && !this.contextMenuClicked\r\n\t\t\t\t\t\t&& panEnabled\r\n\t\t\t\t\t\t&& onPanEnd) {\r\n\r\n\t\t\t\t\tonPanEnd(this.lastNewPos, panStartXScale, panOrigin, chartsToPan, e);\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis.setState({\r\n\t\t\t\t\tpanInProgress: false,\r\n\t\t\t\t\tpinchZoomStart: {\r\n\t\t\t\t\t\txScale,\r\n\t\t\t\t\t\ttouch1Pos,\r\n\t\t\t\t\t\ttouch2Pos,\r\n\t\t\t\t\t\trange: xScale.range(),\r\n\t\t\t\t\t\tchartsToPan,\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n\thandlePinchZoom() {\r\n\t\tconst e = d3Event;\r\n\t\tconst [touch1Pos, touch2Pos] = touches(this.node);\r\n\t\tconst { xScale, zoom: zoomEnabled, onPinchZoom } = this.props;\r\n\r\n\t\t// eslint-disable-next-line no-unused-vars\r\n\t\tconst { chartsToPan, ...initialPinch } = this.state.pinchZoomStart;\r\n\r\n\t\tif (zoomEnabled && onPinchZoom) {\r\n\t\t\tonPinchZoom(initialPinch, {\r\n\t\t\t\ttouch1Pos,\r\n\t\t\t\ttouch2Pos,\r\n\t\t\t\txScale,\r\n\t\t\t}, e);\r\n\t\t}\r\n\t}\r\n\thandlePinchZoomEnd() {\r\n\t\tconst e = d3Event;\r\n\r\n\t\tconst win = d3Window(this.node);\r\n\t\tselect(win)\r\n\t\t\t.on(TOUCHMOVE, null)\r\n\t\t\t.on(TOUCHEND, null);\r\n\r\n\t\tconst { zoom: zoomEnabled, onPinchZoomEnd } = this.props;\r\n\r\n\t\t// eslint-disable-next-line no-unused-vars\r\n\t\tconst { chartsToPan, ...initialPinch } = this.state.pinchZoomStart;\r\n\r\n\t\tif (zoomEnabled && onPinchZoomEnd) {\r\n\t\t\tonPinchZoomEnd(initialPinch, e);\r\n\t\t}\r\n\r\n\t\tthis.setState({\r\n\t\t\tpinchZoomStart: null\r\n\t\t});\r\n\t}\r\n\tsetCursorClass(cursorOverrideClass) {\r\n\t\tif (cursorOverrideClass !== this.state.cursorOverrideClass) {\r\n\t\t\tthis.setState({\r\n\t\t\t\tcursorOverrideClass\r\n\t\t\t});\r\n\t\t}\r\n\t}\r\n\trender() {\r\n\t\tconst { height, width, disableInteraction, useCrossHairStyleCursor } = this.props;\r\n\t\tconst className = this.state.cursorOverrideClass != null\r\n\t\t\t? this.state.cursorOverrideClass\r\n\t\t\t: !useCrossHairStyleCursor ? \"\" : this.state.panInProgress\r\n\t\t\t\t? \"react-stockcharts-grabbing-cursor\"\r\n\t\t\t\t: \"react-stockcharts-crosshair-cursor\";\r\n\r\n\t\tconst interactionProps = disableInteraction || {\r\n\t\t\tonWheel: this.handleWheel,\r\n\t\t\tonMouseDown: this.handleMouseDown,\r\n\t\t\tonClick: this.handleClick,\r\n\t\t\tonContextMenu: this.handleRightClick,\r\n\t\t\tonTouchStart: this.handleTouchStart,\r\n\t\t\tonTouchMove: this.handleTouchMove,\r\n\t\t};\r\n\r\n\t\treturn (\r\n\t\t\t\r\n\t\t);\r\n\t}\r\n}\r\n\r\n// \t\t\t\tonMouseEnter={this.handleEnter}\r\n//\t\t\t\tonMouseLeave={this.handleLeave}\r\n\r\n\r\nEventCapture.propTypes = {\r\n\tmouseMove: PropTypes.bool.isRequired,\r\n\tzoom: PropTypes.bool.isRequired,\r\n\tpan: PropTypes.bool.isRequired,\r\n\tpanSpeedMultiplier: PropTypes.number.isRequired,\r\n\tfocus: PropTypes.bool.isRequired,\r\n\tuseCrossHairStyleCursor: PropTypes.bool.isRequired,\r\n\r\n\twidth: PropTypes.number.isRequired,\r\n\theight: PropTypes.number.isRequired,\r\n\tchartConfig: PropTypes.array,\r\n\txScale: PropTypes.func.isRequired,\r\n\txAccessor: PropTypes.func.isRequired,\r\n\tdisableInteraction: PropTypes.bool.isRequired,\r\n\r\n\tgetAllPanConditions: PropTypes.func.isRequired,\r\n\r\n\tonMouseMove: PropTypes.func,\r\n\tonMouseEnter: PropTypes.func,\r\n\tonMouseLeave: PropTypes.func,\r\n\tonZoom: PropTypes.func,\r\n\tonPinchZoom: PropTypes.func,\r\n\tonPinchZoomEnd: PropTypes.func.isRequired,\r\n\tonPan: PropTypes.func,\r\n\tonPanEnd: PropTypes.func,\r\n\tonDragStart: PropTypes.func,\r\n\tonDrag: PropTypes.func,\r\n\tonDragComplete: PropTypes.func,\r\n\r\n\tonClick: PropTypes.func,\r\n\tonDoubleClick: PropTypes.func,\r\n\tonContextMenu: PropTypes.func,\r\n\tonMouseDown: PropTypes.func,\r\n\tchildren: PropTypes.node,\r\n};\r\n\r\nEventCapture.defaultProps = {\r\n\tmouseMove: false,\r\n\tzoom: false,\r\n\tpan: false,\r\n\tpanSpeedMultiplier: 1,\r\n\tfocus: false,\r\n\tonDragComplete: noop,\r\n\tdisableInteraction: false,\r\n};\r\n\r\nexport default EventCapture;\r\n","\r\n\r\nimport React, { Component } from \"react\";\r\nimport PropTypes from \"prop-types\";\r\n\r\nimport { isDefined, getLogger } from \"./utils\";\r\n\r\nconst log = getLogger(\"CanvasContainer\");\r\n\r\nclass CanvasContainer extends Component {\r\n\tconstructor(props) {\r\n\t\tsuper(props);\r\n\t\tthis.setDrawCanvas = this.setDrawCanvas.bind(this);\r\n\t\tthis.drawCanvas = {};\r\n\t}\r\n\tsetDrawCanvas(node) {\r\n\t\tif (isDefined(node))\r\n\t\t\tthis.drawCanvas[node.id] = node.getContext(\"2d\");\r\n\t\telse\r\n\t\t\tthis.drawCanvas = {};\r\n\t}\r\n\tgetCanvasContexts() {\r\n\t\tif (isDefined(this.drawCanvas.axes)) {\r\n\t\t\treturn this.drawCanvas;\r\n\t\t}\r\n\t}\r\n\trender() {\r\n\t\tconst { height, width, type, zIndex, ratio } = this.props;\r\n\t\tif (type === \"svg\") return null;\r\n\r\n\t\tlog(\"using ratio \", ratio);\r\n\r\n\t\treturn (\r\n\t\t\t
\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t
\r\n\t\t);\r\n\t}\r\n}\r\n/*\r\n\t\t\t\t\r\n*/\r\nCanvasContainer.propTypes = {\r\n\twidth: PropTypes.number.isRequired,\r\n\theight: PropTypes.number.isRequired,\r\n\ttype: PropTypes.string.isRequired,\r\n\tzIndex: PropTypes.number,\r\n\tratio: PropTypes.number.isRequired,\r\n};\r\n\r\nexport default CanvasContainer;\r\n","\r\n\r\nimport {\r\n\thead,\r\n\tlast,\r\n\tgetClosestItemIndexes,\r\n\tisDefined,\r\n\tisNotDefined,\r\n\tgetLogger,\r\n} from \"../utils\";\r\n\r\nconst log = getLogger(\"evaluator\");\r\n\r\nfunction getNewEnd(fallbackEnd, xAccessor, initialXScale, start) {\r\n\tconst {\r\n\t\tlastItem, lastItemX\r\n\t} = fallbackEnd;\r\n\tconst lastItemXValue = xAccessor(lastItem);\r\n\tconst [rangeStart, rangeEnd] = initialXScale.range();\r\n\r\n\tconst newEnd = (rangeEnd - rangeStart) / (lastItemX - rangeStart) * (lastItemXValue - start) + start;\r\n\treturn newEnd;\r\n}\r\n\r\nfunction extentsWrapper(useWholeData, clamp, pointsPerPxThreshold, minPointsPerPxThreshold, flipXScale) {\r\n\tfunction filterData(\r\n\t\tdata, inputDomain, xAccessor, initialXScale,\r\n\t\t{ currentPlotData, currentDomain, fallbackStart, fallbackEnd } = {}\r\n\t) {\r\n\t\tif (useWholeData) {\r\n\t\t\treturn { plotData: data, domain: inputDomain };\r\n\t\t}\r\n\r\n\t\tlet left = head(inputDomain);\r\n\t\tlet right = last(inputDomain);\r\n\t\tlet clampedDomain = inputDomain;\r\n\r\n\t\tlet filteredData = getFilteredResponse(data, left, right, xAccessor);\r\n\r\n\t\tif (filteredData.length === 1 && isDefined(fallbackStart)) {\r\n\t\t\tleft = fallbackStart;\r\n\t\t\tright = getNewEnd(fallbackEnd, xAccessor, initialXScale, left);\r\n\r\n\t\t\tclampedDomain = [\r\n\t\t\t\tleft,\r\n\t\t\t\tright,\r\n\t\t\t];\r\n\t\t\tfilteredData = getFilteredResponse(data, left, right, xAccessor);\r\n\t\t}\r\n\r\n\t\tif (typeof clamp === \"function\") {\r\n\t\t\tclampedDomain = clamp(clampedDomain, [xAccessor(head(data)), xAccessor(last(data))]);\r\n\t\t} else {\r\n\t\t\tif (clamp === \"left\" || clamp === \"both\" || clamp === true) {\r\n\t\t\t\tclampedDomain = [\r\n\t\t\t\t\tMath.max(left, xAccessor(head(data))),\r\n\t\t\t\t\tclampedDomain[1]\r\n\t\t\t\t];\r\n\t\t\t}\r\n\r\n\t\t\tif (clamp === \"right\" || clamp === \"both\" || clamp === true) {\r\n\t\t\t\tclampedDomain = [\r\n\t\t\t\t\tclampedDomain[0],\r\n\t\t\t\t\tMath.min(right, xAccessor(last(data)))\r\n\t\t\t\t];\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\tif (clampedDomain !== inputDomain) {\r\n\t\t\tfilteredData = getFilteredResponse(data, clampedDomain[0], clampedDomain[1], xAccessor);\r\n\t\t}\r\n\r\n\t\tconst realInputDomain = clampedDomain;\r\n\t\t// [xAccessor(head(filteredData)), xAccessor(last(filteredData))];\r\n\r\n\t\tconst xScale = initialXScale.copy().domain(realInputDomain);\r\n\r\n\t\tlet width = Math.floor(xScale(xAccessor(last(filteredData)))\r\n\t\t\t- xScale(xAccessor(head(filteredData))));\r\n\r\n\t\t// prevent negative width when flipXScale\r\n\t\tif (flipXScale && width < 0) {\r\n\t\t\twidth = width * -1;\r\n\t\t}\r\n\r\n\t\tlet plotData, domain;\r\n\r\n\t\tconst chartWidth = last(xScale.range()) - head(xScale.range());\r\n\r\n\t\tlog(`Trying to show ${filteredData.length} points in ${width}px,`\r\n\t\t\t+ ` I can show up to ${showMaxThreshold(width, pointsPerPxThreshold) - 1} points in that width. `\r\n\t\t\t+ `Also FYI the entire chart width is ${chartWidth}px and pointsPerPxThreshold is ${pointsPerPxThreshold}`);\r\n\r\n\t\tif (canShowTheseManyPeriods(width, filteredData.length, pointsPerPxThreshold, minPointsPerPxThreshold)) {\r\n\t\t\tplotData = filteredData;\r\n\t\t\tdomain = realInputDomain;\r\n\t\t\tlog(\"AND IT WORKED\");\r\n\t\t} else {\r\n\t\t\tif (chartWidth > showMaxThreshold(width, pointsPerPxThreshold) && isDefined(fallbackEnd)) {\r\n\t\t\t\tplotData = filteredData;\r\n\t\t\t\tconst newEnd = getNewEnd(fallbackEnd, xAccessor, initialXScale, head(realInputDomain));\r\n\t\t\t\tdomain = [\r\n\t\t\t\t\thead(realInputDomain),\r\n\t\t\t\t\tnewEnd\r\n\t\t\t\t];\r\n\t\t\t\t// plotData = currentPlotData || filteredData.slice(filteredData.length - showMax(width, pointsPerPxThreshold));\r\n\t\t\t\t// domain = currentDomain || [xAccessor(head(plotData)), xAccessor(last(plotData))];\r\n\r\n\t\t\t\tconst newXScale = xScale.copy().domain(domain);\r\n\t\t\t\tconst newWidth = Math.floor(newXScale(xAccessor(last(plotData)))\r\n\t\t\t\t\t- newXScale(xAccessor(head(plotData))));\r\n\r\n\t\t\t\tlog(`and ouch, that is too much, so instead showing ${plotData.length} in ${newWidth}px`);\r\n\t\t\t} else {\r\n\t\t\t\tplotData = currentPlotData || filteredData.slice(filteredData.length - showMax(width, pointsPerPxThreshold));\r\n\t\t\t\tdomain = currentDomain || [xAccessor(head(plotData)), xAccessor(last(plotData))];\r\n\r\n\t\t\t\tconst newXScale = xScale.copy().domain(domain);\r\n\t\t\t\tconst newWidth = Math.floor(newXScale(xAccessor(last(plotData)))\r\n\t\t\t\t\t- newXScale(xAccessor(head(plotData))));\r\n\r\n\t\t\t\tlog(`and ouch, that is too much, so instead showing ${plotData.length} in ${newWidth}px`);\r\n\t\t\t}\r\n\t\t}\r\n\t\treturn { plotData, domain };\r\n\t}\r\n\treturn { filterData };\r\n}\r\n\r\nfunction canShowTheseManyPeriods(width, arrayLength, maxThreshold, minThreshold) {\r\n\treturn arrayLength > showMinThreshold(width, minThreshold) && arrayLength < showMaxThreshold(width, maxThreshold);\r\n}\r\n\r\nfunction showMinThreshold(width, threshold) {\r\n\treturn Math.max(1, Math.ceil(width * threshold));\r\n}\r\n\r\nfunction showMaxThreshold(width, threshold) {\r\n\treturn Math.floor(width * threshold);\r\n}\r\n\r\nfunction showMax(width, threshold) {\r\n\treturn Math.floor(showMaxThreshold(width, threshold) * 0.97);\r\n}\r\n\r\nfunction getFilteredResponse(data, left, right, xAccessor) {\r\n\tconst newLeftIndex = getClosestItemIndexes(data, left, xAccessor).right;\r\n\tconst newRightIndex = getClosestItemIndexes(data, right, xAccessor).left;\r\n\r\n\tconst filteredData = data.slice(newLeftIndex, newRightIndex + 1);\r\n\t// console.log(right, newRightIndex, dataForInterval.length);\r\n\r\n\treturn filteredData;\r\n}\r\n\r\nexport default function({\r\n\txScale, useWholeData, clamp,\r\n\tpointsPerPxThreshold, minPointsPerPxThreshold,\r\n\tflipXScale\r\n}) {\r\n\treturn extentsWrapper(\r\n\t\tuseWholeData || isNotDefined(xScale.invert),\r\n\t\tclamp,\r\n\t\tpointsPerPxThreshold,\r\n\t\tminPointsPerPxThreshold,\r\n\t\tflipXScale\r\n\t);\r\n}\r\n","\r\n\r\nimport React, { Component } from \"react\";\r\nimport PropTypes from \"prop-types\";\r\nimport { extent as d3Extent, min, max } from \"d3-array\";\r\n\r\nimport {\r\n\thead,\r\n\tlast,\r\n\tisDefined,\r\n\tisNotDefined,\r\n\tclearCanvas,\r\n\tshallowEqual,\r\n\tidentity,\r\n\tnoop,\r\n\tfunctor,\r\n\tgetLogger,\r\n} from \"./utils\";\r\n\r\n/* eslint-disable no-unused-vars */\r\nimport {\r\n\tmouseBasedZoomAnchor,\r\n\tlastVisibleItemBasedZoomAnchor,\r\n\trightDomainBasedZoomAnchor,\r\n} from \"./utils/zoomBehavior\";\r\n/* eslint-enable no-unused-vars */\r\n\r\nimport { getNewChartConfig, getChartConfigWithUpdatedYScales, getCurrentCharts, getCurrentItem } from \"./utils/ChartDataUtil\";\r\n\r\nimport EventCapture from \"./EventCapture\";\r\n\r\nimport CanvasContainer from \"./CanvasContainer\";\r\nimport evaluator from \"./scale/evaluator\";\r\n\r\nconst log = getLogger(\"ChartCanvas\");\r\n\r\nconst CANDIDATES_FOR_RESET = [\r\n\t\"seriesName\",\r\n\t/* \"data\",*/\r\n\t/* \"xAccessor\",*/\r\n];\r\n\r\nfunction shouldResetChart(thisProps, nextProps) {\r\n\treturn !CANDIDATES_FOR_RESET.every(key => {\r\n\t\tconst result = shallowEqual(thisProps[key], nextProps[key]);\r\n\t\treturn result;\r\n\t});\r\n}\r\n\r\nfunction getCursorStyle() {\r\n\tconst tooltipStyle = `\r\n\t.react-stockcharts-grabbing-cursor {\r\n\t\tpointer-events: all;\r\n\t\tcursor: -moz-grabbing;\r\n\t\tcursor: -webkit-grabbing;\r\n\t\tcursor: grabbing;\r\n\t}\r\n\t.react-stockcharts-crosshair-cursor {\r\n\t\tpointer-events: all;\r\n\t\tcursor: crosshair;\r\n\t}\r\n\t.react-stockcharts-tooltip-hover {\r\n\t\tpointer-events: all;\r\n\t\tcursor: pointer;\r\n\t}\r\n\t.react-stockcharts-avoid-interaction {\r\n\t\tpointer-events: none;\r\n\t}\r\n\t.react-stockcharts-enable-interaction {\r\n\t\tpointer-events: all;\r\n\t}\r\n\t.react-stockcharts-tooltip {\r\n\t\tpointer-events: all;\r\n\t\tcursor: pointer;\r\n\t}\r\n\t.react-stockcharts-default-cursor {\r\n\t\tcursor: default;\r\n\t}\r\n\t.react-stockcharts-move-cursor {\r\n\t\tcursor: move;\r\n\t}\r\n\t.react-stockcharts-pointer-cursor {\r\n\t\tcursor: pointer;\r\n\t}\r\n\t.react-stockcharts-ns-resize-cursor {\r\n\t\tcursor: ns-resize;\r\n\t}\r\n\t.react-stockcharts-ew-resize-cursor {\r\n\t\tcursor: ew-resize;\r\n\t}`;\r\n\treturn ();\r\n}\r\n\r\nfunction getDimensions(props) {\r\n\treturn {\r\n\t\theight: props.height - props.margin.top - props.margin.bottom,\r\n\t\twidth: props.width - props.margin.left - props.margin.right,\r\n\t};\r\n}\r\n\r\nfunction getXScaleDirection(flipXScale) {\r\n\treturn flipXScale ? -1 : 1;\r\n}\r\n\r\nfunction calculateFullData(props) {\r\n\tconst { data: fullData, plotFull, xScale, clamp, pointsPerPxThreshold, flipXScale } = props;\r\n\tconst { xAccessor, displayXAccessor, minPointsPerPxThreshold } = props;\r\n\r\n\tconst useWholeData = isDefined(plotFull)\r\n\t\t? plotFull\r\n\t\t: xAccessor === identity;\r\n\r\n\tconst { filterData } = evaluator({\r\n\t\txScale,\r\n\t\tuseWholeData,\r\n\t\tclamp,\r\n\t\tpointsPerPxThreshold,\r\n\t\tminPointsPerPxThreshold,\r\n\t\tflipXScale,\r\n\t});\r\n\r\n\treturn {\r\n\t\txAccessor,\r\n\t\tdisplayXAccessor: displayXAccessor || xAccessor,\r\n\t\txScale: xScale.copy(),\r\n\t\tfullData,\r\n\t\tfilterData\r\n\t};\r\n}\r\nfunction resetChart(props, firstCalculation = false) {\r\n\tif (process.env.NODE_ENV !== \"production\") {\r\n\t\tif (!firstCalculation) log(\"CHART RESET\");\r\n\t}\r\n\r\n\tconst state = calculateState(props);\r\n\tconst { xAccessor, displayXAccessor, fullData } = state;\r\n\tconst { plotData: initialPlotData, xScale } = state;\r\n\tconst { postCalculator, children } = props;\r\n\r\n\tconst plotData = postCalculator(initialPlotData);\r\n\r\n\tconst dimensions = getDimensions(props);\r\n\tconst chartConfig = getChartConfigWithUpdatedYScales(\r\n\t\tgetNewChartConfig(dimensions, children),\r\n\t\t{ plotData, xAccessor, displayXAccessor, fullData },\r\n\t\txScale.domain()\r\n\t);\r\n\r\n\treturn {\r\n\t\t...state,\r\n\t\txScale,\r\n\t\tplotData,\r\n\t\tchartConfig,\r\n\t};\r\n}\r\n\r\nfunction updateChart(\r\n\tnewState,\r\n\tinitialXScale,\r\n\tprops,\r\n\tlastItemWasVisible,\r\n\tinitialChartConfig,\r\n) {\r\n\r\n\tconst { fullData, xScale, xAccessor, displayXAccessor, filterData } = newState;\r\n\r\n\tconst lastItem = last(fullData);\r\n\tconst [start, end] = initialXScale.domain();\r\n\r\n\tif (process.env.NODE_ENV !== \"production\") {\r\n\t\tlog(\"TRIVIAL CHANGE\");\r\n\t}\r\n\r\n\tconst { postCalculator, children, padding, flipXScale } = props;\r\n\tconst { maintainPointsPerPixelOnResize } = props;\r\n\tconst direction = getXScaleDirection(flipXScale);\r\n\tconst dimensions = getDimensions(props);\r\n\r\n\tconst updatedXScale = setXRange(xScale, dimensions, padding, direction);\r\n\r\n\tlet initialPlotData;\r\n\tif (!lastItemWasVisible || end >= xAccessor(lastItem)) {\r\n\t\t// resize comes here...\r\n\t\t// get plotData between [start, end] and do not change the domain\r\n\t\tconst [rangeStart, rangeEnd] = initialXScale.range();\r\n\t\tconst [newRangeStart, newRangeEnd] = updatedXScale.range();\r\n\t\tconst newDomainExtent = ((newRangeEnd - newRangeStart) / (rangeEnd - rangeStart)) * (end - start);\r\n\t\tconst newStart = maintainPointsPerPixelOnResize\r\n\t\t\t? end - newDomainExtent\r\n\t\t\t: start;\r\n\r\n\t\tconst lastItemX = initialXScale(xAccessor(lastItem));\r\n\t\tconst response = filterData(\r\n\t\t\tfullData, [newStart, end], xAccessor, updatedXScale,\r\n\t\t\t{ fallbackStart: start, fallbackEnd: { lastItem, lastItemX } }\r\n\t\t);\r\n\t\tinitialPlotData = response.plotData;\r\n\t\tupdatedXScale.domain(response.domain);\r\n\t} else if (lastItemWasVisible\r\n\t\t\t&& end < xAccessor(lastItem)) {\r\n\t\t// this is when a new item is added and last item was visible\r\n\t\t// so slide over and show the new item also\r\n\r\n\t\t// get plotData between [xAccessor(l) - (end - start), xAccessor(l)] and DO change the domain\r\n\t\tconst dx = initialXScale(xAccessor(lastItem)) - initialXScale.range()[1];\r\n\t\tconst [newStart, newEnd] = initialXScale.range().map(x => x + dx).map(initialXScale.invert);\r\n\r\n\r\n\t\tconst response = filterData(fullData, [newStart, newEnd], xAccessor, updatedXScale);\r\n\t\tinitialPlotData = response.plotData;\r\n\t\tupdatedXScale.domain(response.domain);\t\t// if last item was visible, then shift\r\n\t}\r\n\t// plotData = getDataOfLength(fullData, showingInterval, plotData.length)\r\n\tconst plotData = postCalculator(initialPlotData);\r\n\tconst chartConfig = getChartConfigWithUpdatedYScales(\r\n\t\tgetNewChartConfig(dimensions, children, initialChartConfig),\r\n\t\t{ plotData, xAccessor, displayXAccessor, fullData },\r\n\t\tupdatedXScale.domain()\r\n\t);\r\n\r\n\treturn {\r\n\t\txScale: updatedXScale,\r\n\t\txAccessor,\r\n\t\tchartConfig,\r\n\t\tplotData,\r\n\t\tfullData,\r\n\t\tfilterData,\r\n\t};\r\n}\r\n\r\nfunction calculateState(props) {\r\n\r\n\tconst {\r\n\t\txAccessor: inputXAccesor, xExtents: xExtentsProp, data, padding, flipXScale\r\n\t} = props;\r\n\r\n\tif (process.env.NODE_ENV !== \"production\" && isDefined(props.xScale.invert)) {\r\n\t\tfor (let i = 1; i < data.length; i++) {\r\n\t\t\tconst prev = data[i - 1];\r\n\t\t\tconst curr = data[i];\r\n\t\t\tif (inputXAccesor(prev) > inputXAccesor(curr)) {\r\n\t\t\t\tthrow new Error(\"'data' is not sorted on 'xAccessor', send 'data' sorted in ascending order of 'xAccessor'\");\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n\r\n\tconst direction = getXScaleDirection(flipXScale);\r\n\tconst dimensions = getDimensions(props);\r\n\r\n\tconst extent = typeof xExtentsProp === \"function\"\r\n\t\t? xExtentsProp(data)\r\n\t\t: d3Extent(xExtentsProp.map(d => functor(d)).map(each => each(data, inputXAccesor)));\r\n\r\n\tconst { xAccessor, displayXAccessor, xScale, fullData, filterData } = calculateFullData(props);\r\n\tconst updatedXScale = setXRange(xScale, dimensions, padding, direction);\r\n\r\n\tconst { plotData, domain } = filterData(fullData, extent, inputXAccesor, updatedXScale);\r\n\r\n\tif (process.env.NODE_ENV !== \"production\" && plotData.length <= 1) {\r\n\t\t// throw new Error(`Showing ${plotData.length} datapoints, review the 'xExtents' prop of ChartCanvas`);\r\n\t}\r\n\treturn {\r\n\t\tplotData,\r\n\t\txScale: updatedXScale.domain(domain),\r\n\t\txAccessor,\r\n\t\tdisplayXAccessor,\r\n\t\tfullData,\r\n\t\tfilterData,\r\n\t};\r\n}\r\n\r\nfunction setXRange(xScale, dimensions, padding, direction = 1) {\r\n\tif (xScale.rangeRoundPoints) {\r\n\t\tif (isNaN(padding)) throw new Error(\"padding has to be a number for ordinal scale\");\r\n\t\txScale.rangeRoundPoints([0, dimensions.width], padding);\r\n\t} else if (xScale.padding) {\r\n\t\tif (isNaN(padding)) throw new Error(\"padding has to be a number for ordinal scale\");\r\n\t\txScale.range([0, dimensions.width]);\r\n\t\txScale.padding(padding / 2);\r\n\t} else {\r\n\t\tconst { left, right } = isNaN(padding)\r\n\t\t\t? padding\r\n\t\t\t: { left: padding, right: padding };\r\n\t\tif (direction > 0) {\r\n\t\t\txScale.range([left, dimensions.width - right]);\r\n\t\t} else {\r\n\t\t\txScale.range([dimensions.width - right, left]);\r\n\t\t}\r\n\t}\r\n\treturn xScale;\r\n}\r\n\r\nfunction pinchCoordinates(pinch) {\r\n\tconst { touch1Pos, touch2Pos } = pinch;\r\n\r\n\treturn {\r\n\t\ttopLeft: [Math.min(touch1Pos[0], touch2Pos[0]), Math.min(touch1Pos[1], touch2Pos[1])],\r\n\t\tbottomRight: [Math.max(touch1Pos[0], touch2Pos[0]), Math.max(touch1Pos[1], touch2Pos[1])]\r\n\t};\r\n}\r\n\r\n\r\nclass ChartCanvas extends Component {\r\n\tconstructor() {\r\n\t\tsuper();\r\n\t\tthis.getDataInfo = this.getDataInfo.bind(this);\r\n\t\tthis.getCanvasContexts = this.getCanvasContexts.bind(this);\r\n\r\n\t\tthis.handleMouseMove = this.handleMouseMove.bind(this);\r\n\t\tthis.handleMouseEnter = this.handleMouseEnter.bind(this);\r\n\t\tthis.handleMouseLeave = this.handleMouseLeave.bind(this);\r\n\t\tthis.handleZoom = this.handleZoom.bind(this);\r\n\t\tthis.handlePinchZoom = this.handlePinchZoom.bind(this);\r\n\t\tthis.handlePinchZoomEnd = this.handlePinchZoomEnd.bind(this);\r\n\t\tthis.handlePan = this.handlePan.bind(this);\r\n\t\tthis.handlePanEnd = this.handlePanEnd.bind(this);\r\n\t\tthis.handleClick = this.handleClick.bind(this);\r\n\t\tthis.handleMouseDown = this.handleMouseDown.bind(this);\r\n\t\tthis.handleDoubleClick = this.handleDoubleClick.bind(this);\r\n\t\tthis.handleContextMenu = this.handleContextMenu.bind(this);\r\n\t\tthis.handleDragStart = this.handleDragStart.bind(this);\r\n\t\tthis.handleDrag = this.handleDrag.bind(this);\r\n\t\tthis.handleDragEnd = this.handleDragEnd.bind(this);\r\n\r\n\t\tthis.panHelper = this.panHelper.bind(this);\r\n\t\tthis.pinchZoomHelper = this.pinchZoomHelper.bind(this);\r\n\t\tthis.xAxisZoom = this.xAxisZoom.bind(this);\r\n\t\tthis.yAxisZoom = this.yAxisZoom.bind(this);\r\n\t\tthis.resetYDomain = this.resetYDomain.bind(this);\r\n\t\tthis.calculateStateForDomain = this.calculateStateForDomain.bind(this);\r\n\t\tthis.generateSubscriptionId = this.generateSubscriptionId.bind(this);\r\n\t\tthis.draw = this.draw.bind(this);\r\n\t\tthis.redraw = this.redraw.bind(this);\r\n\t\tthis.getAllPanConditions = this.getAllPanConditions.bind(this);\r\n\r\n\t\tthis.subscriptions = [];\r\n\t\tthis.subscribe = this.subscribe.bind(this);\r\n\t\tthis.unsubscribe = this.unsubscribe.bind(this);\r\n\t\tthis.amIOnTop = this.amIOnTop.bind(this);\r\n\t\tthis.saveEventCaptureNode = this.saveEventCaptureNode.bind(this);\r\n\t\tthis.saveCanvasContainerNode = this.saveCanvasContainerNode.bind(this);\r\n\t\tthis.setCursorClass = this.setCursorClass.bind(this);\r\n\t\tthis.getMutableState = this.getMutableState.bind(this);\r\n\t\t// this.canvasDrawCallbackList = [];\r\n\t\tthis.interactiveState = [];\r\n\t\tthis.panInProgress = false;\r\n\r\n\t\tthis.state = {};\r\n\t\tthis.mutableState = {};\r\n\t\tthis.lastSubscriptionId = 0;\r\n\t}\r\n\tsaveEventCaptureNode(node) {\r\n\t\tthis.eventCaptureNode = node;\r\n\t}\r\n\tsaveCanvasContainerNode(node) {\r\n\t\tthis.canvasContainerNode = node;\r\n\t}\r\n\tgetMutableState() {\r\n\t\treturn this.mutableState;\r\n\t}\r\n\tgetDataInfo() {\r\n\t\treturn {\r\n\t\t\t...this.state,\r\n\t\t\tfullData: this.fullData,\r\n\t\t};\r\n\t}\r\n\tgetCanvasContexts() {\r\n\t\tif (this.canvasContainerNode) {\r\n\t\t\treturn this.canvasContainerNode.getCanvasContexts();\r\n\t\t}\r\n\t}\r\n\tgenerateSubscriptionId() {\r\n\t\tthis.lastSubscriptionId++;\r\n\t\treturn this.lastSubscriptionId;\r\n\t}\r\n\tclearBothCanvas() {\r\n\t\tconst canvases = this.getCanvasContexts();\r\n\t\tif (canvases && canvases.axes) {\r\n\t\t\tclearCanvas([\r\n\t\t\t\tcanvases.axes,\r\n\t\t\t\t// canvases.hover,\r\n\t\t\t\tcanvases.mouseCoord\r\n\t\t\t], this.props.ratio);\r\n\t\t}\r\n\t}\r\n\tclearMouseCanvas() {\r\n\t\tconst canvases = this.getCanvasContexts();\r\n\t\tif (canvases && canvases.mouseCoord) {\r\n\t\t\tclearCanvas([\r\n\t\t\t\tcanvases.mouseCoord,\r\n\t\t\t\t// canvases.hover,\r\n\t\t\t], this.props.ratio);\r\n\t\t}\r\n\t}\r\n\tclearThreeCanvas() {\r\n\t\tconst canvases = this.getCanvasContexts();\r\n\t\tif (canvases && canvases.axes) {\r\n\t\t\tclearCanvas([\r\n\t\t\t\tcanvases.axes,\r\n\t\t\t\t// canvases.hover,\r\n\t\t\t\tcanvases.mouseCoord,\r\n\t\t\t\tcanvases.bg\r\n\t\t\t], this.props.ratio);\r\n\t\t}\r\n\t}\r\n\tsubscribe(id, rest) {\r\n\t\tconst { getPanConditions = functor({\r\n\t\t\tdraggable: false,\r\n\t\t\tpanEnabled: true,\r\n\t\t}) } = rest;\r\n\t\tthis.subscriptions = this.subscriptions.concat({\r\n\t\t\tid,\r\n\t\t\t...rest,\r\n\t\t\tgetPanConditions,\r\n\t\t});\r\n\t}\r\n\tunsubscribe(id) {\r\n\t\tthis.subscriptions = this.subscriptions.filter(each => each.id !== id);\r\n\t}\r\n\tgetAllPanConditions() {\r\n\t\treturn this.subscriptions\r\n\t\t\t.map(each => each.getPanConditions());\r\n\t}\r\n\tsetCursorClass(className) {\r\n\t\tif (this.eventCaptureNode != null) {\r\n\t\t\tthis.eventCaptureNode.setCursorClass(className);\r\n\t\t}\r\n\t}\r\n\tamIOnTop(id) {\r\n\t\tconst dragableComponents = this.subscriptions\r\n\t\t\t.filter(each => each.getPanConditions().draggable);\r\n\r\n\t\treturn dragableComponents.length > 0\r\n\t\t\t&& last(dragableComponents).id === id;\r\n\t}\r\n\thandleContextMenu(mouseXY, e) {\r\n\t\tconst { xAccessor, chartConfig, plotData, xScale } = this.state;\r\n\r\n\t\tconst currentCharts = getCurrentCharts(chartConfig, mouseXY);\r\n\t\tconst currentItem = getCurrentItem(xScale, xAccessor, mouseXY, plotData);\r\n\r\n\t\tthis.triggerEvent(\"contextmenu\", {\r\n\t\t\tmouseXY,\r\n\t\t\tcurrentItem,\r\n\t\t\tcurrentCharts,\r\n\t\t}, e);\r\n\t}\r\n\tcalculateStateForDomain(newDomain) {\r\n\t\tconst {\r\n\t\t\txAccessor,\r\n\t\t\tdisplayXAccessor,\r\n\t\t\txScale: initialXScale,\r\n\t\t\tchartConfig: initialChartConfig,\r\n\t\t\tplotData: initialPlotData\r\n\t\t} = this.state;\r\n\t\tconst { filterData } = this.state;\r\n\t\tconst { fullData } = this;\r\n\t\tconst { postCalculator } = this.props;\r\n\r\n\t\tconst { plotData: beforePlotData, domain } = filterData(\r\n\t\t\tfullData,\r\n\t\t\tnewDomain,\r\n\t\t\txAccessor,\r\n\t\t\tinitialXScale,\r\n\t\t\t{\r\n\t\t\t\tcurrentPlotData: initialPlotData,\r\n\t\t\t\tcurrentDomain: initialXScale.domain()\r\n\t\t\t}\r\n\t\t);\r\n\r\n\t\tconst plotData = postCalculator(beforePlotData);\r\n\t\tconst updatedScale = initialXScale.copy().domain(domain);\r\n\t\tconst chartConfig = getChartConfigWithUpdatedYScales(\r\n\t\t\tinitialChartConfig,\r\n\t\t\t{ plotData, xAccessor, displayXAccessor, fullData },\r\n\t\t\tupdatedScale.domain()\r\n\t\t);\r\n\r\n\t\treturn {\r\n\t\t\txScale: updatedScale,\r\n\t\t\tplotData,\r\n\t\t\tchartConfig,\r\n\t\t};\r\n\t}\r\n\tpinchZoomHelper(initialPinch, finalPinch) {\r\n\t\tconst { xScale: initialPinchXScale } = initialPinch;\r\n\r\n\t\tconst {\r\n\t\t\txScale: initialXScale,\r\n\t\t\tchartConfig: initialChartConfig,\r\n\t\t\tplotData: initialPlotData,\r\n\t\t\txAccessor,\r\n\t\t\tdisplayXAccessor,\r\n\t\t} = this.state;\r\n\t\tconst { filterData } = this.state;\r\n\t\tconst { fullData } = this;\r\n\t\tconst { postCalculator } = this.props;\r\n\r\n\t\tconst { topLeft: iTL, bottomRight: iBR } = pinchCoordinates(initialPinch);\r\n\t\tconst { topLeft: fTL, bottomRight: fBR } = pinchCoordinates(finalPinch);\r\n\r\n\t\tconst e = initialPinchXScale.range()[1];\r\n\r\n\t\tconst xDash = Math.round(-(iBR[0] * fTL[0] - iTL[0] * fBR[0]) / (iTL[0] - iBR[0]));\r\n\t\tconst yDash = Math.round(e + ((e - iBR[0]) * (e - fTL[0]) - (e - iTL[0]) * (e - fBR[0])) / ((e - iTL[0]) - (e - iBR[0])));\r\n\r\n\t\tconst x = Math.round(-xDash * iTL[0] / (-xDash + fTL[0]));\r\n\t\tconst y = Math.round(e - (yDash - e) * (e - iTL[0]) / (yDash + (e - fTL[0])));\r\n\r\n\t\tconst newDomain = [x, y].map(initialPinchXScale.invert);\r\n\t\t// var domainR = initial.right + right;\r\n\r\n\t\tconst { plotData: beforePlotData, domain } = filterData(\r\n\t\t\tfullData,\r\n\t\t\tnewDomain,\r\n\t\t\txAccessor,\r\n\t\t\tinitialPinchXScale,\r\n\t\t\t{\r\n\t\t\t\tcurrentPlotData: initialPlotData,\r\n\t\t\t\tcurrentDomain: initialXScale.domain()\r\n\t\t\t}\r\n\t\t);\r\n\r\n\t\tconst plotData = postCalculator(beforePlotData);\r\n\t\tconst updatedScale = initialXScale.copy().domain(domain);\r\n\r\n\t\tconst mouseXY = finalPinch.touch1Pos;\r\n\t\tconst chartConfig = getChartConfigWithUpdatedYScales(\r\n\t\t\tinitialChartConfig,\r\n\t\t\t{ plotData, xAccessor, displayXAccessor, fullData },\r\n\t\t\tupdatedScale.domain()\r\n\t\t);\r\n\t\tconst currentItem = getCurrentItem(updatedScale, xAccessor, mouseXY, plotData);\r\n\r\n\t\treturn {\r\n\t\t\tchartConfig,\r\n\t\t\txScale: updatedScale,\r\n\t\t\tplotData,\r\n\t\t\tmouseXY,\r\n\t\t\tcurrentItem,\r\n\t\t};\r\n\t}\r\n\tcancelDrag() {\r\n\t\tthis.eventCaptureNode.cancelDrag();\r\n\t\tthis.triggerEvent(\"dragcancel\");\r\n\t}\r\n\thandlePinchZoom(initialPinch, finalPinch, e) {\r\n\t\tif (!this.waitingForPinchZoomAnimationFrame) {\r\n\t\t\tthis.waitingForPinchZoomAnimationFrame = true;\r\n\t\t\tconst state = this.pinchZoomHelper(initialPinch, finalPinch);\r\n\r\n\t\t\tthis.triggerEvent(\"pinchzoom\", state, e);\r\n\r\n\t\t\tthis.finalPinch = finalPinch;\r\n\r\n\t\t\trequestAnimationFrame(() => {\r\n\t\t\t\tthis.clearBothCanvas();\r\n\t\t\t\tthis.draw({ trigger: \"pinchzoom\" });\r\n\t\t\t\tthis.waitingForPinchZoomAnimationFrame = false;\r\n\t\t\t});\r\n\t\t}\r\n\t}\r\n\thandlePinchZoomEnd(initialPinch, e) {\r\n\t\tconst { xAccessor } = this.state;\r\n\r\n\t\tif (this.finalPinch) {\r\n\t\t\tconst state = this.pinchZoomHelper(initialPinch, this.finalPinch);\r\n\t\t\tconst { xScale } = state;\r\n\t\t\tthis.triggerEvent(\"pinchzoom\", state, e);\r\n\r\n\t\t\tthis.finalPinch = null;\r\n\r\n\t\t\tthis.clearThreeCanvas();\r\n\r\n\t\t\tconst { fullData } = this;\r\n\t\t\tconst firstItem = head(fullData);\r\n\r\n\t\t\tconst start = head(xScale.domain());\r\n\t\t\tconst end = xAccessor(firstItem);\r\n\t\t\tconst { onLoadMore } = this.props;\r\n\r\n\t\t\tthis.setState(state, () => {\r\n\t\t\t\tif (start < end) {\r\n\t\t\t\t\tonLoadMore(start, end);\r\n\t\t\t\t}\r\n\t\t\t});\r\n\t\t}\r\n\t}\r\n\thandleZoom(zoomDirection, mouseXY, e) {\r\n\t\tif (this.panInProgress)\r\n\t\t\treturn;\r\n\t\tconst { xAccessor, xScale: initialXScale, plotData: initialPlotData } = this.state;\r\n\t\tconst { zoomMultiplier, zoomAnchor } = this.props;\r\n\t\tconst { fullData } = this;\r\n\t\tconst item = zoomAnchor({\r\n\t\t\txScale: initialXScale,\r\n\t\t\txAccessor,\r\n\t\t\tmouseXY,\r\n\t\t\tplotData: initialPlotData,\r\n\t\t\tfullData,\r\n\t\t});\r\n\r\n\t\tconst cx = initialXScale(item);\r\n\t\tconst c = zoomDirection > 0 ? 1 * zoomMultiplier : 1 / zoomMultiplier;\r\n\t\tconst newDomain = initialXScale.range().map(x => cx + (x - cx) * c).map(initialXScale.invert);\r\n\r\n\t\tconst { xScale, plotData, chartConfig } = this.calculateStateForDomain(newDomain);\r\n\r\n\t\tconst currentItem = getCurrentItem(xScale, xAccessor, mouseXY, plotData);\r\n\t\tconst currentCharts = getCurrentCharts(chartConfig, mouseXY);\r\n\r\n\t\tthis.clearThreeCanvas();\r\n\r\n\t\tconst firstItem = head(fullData);\r\n\r\n\t\tconst start = head(xScale.domain());\r\n\t\tconst end = xAccessor(firstItem);\r\n\t\tconst { onLoadMore } = this.props;\r\n\r\n\t\tthis.mutableState = {\r\n\t\t\tmouseXY: mouseXY,\r\n\t\t\tcurrentItem: currentItem,\r\n\t\t\tcurrentCharts: currentCharts,\r\n\t\t};\r\n\r\n\t\tthis.triggerEvent(\"zoom\", {\r\n\t\t\txScale,\r\n\t\t\tplotData,\r\n\t\t\tchartConfig,\r\n\t\t\tmouseXY,\r\n\t\t\tcurrentCharts,\r\n\t\t\tcurrentItem,\r\n\t\t\tshow: true,\r\n\t\t}, e);\r\n\r\n\t\tthis.setState({\r\n\t\t\txScale,\r\n\t\t\tplotData,\r\n\t\t\tchartConfig,\r\n\t\t}, () => {\r\n\t\t\tif (start < end) {\r\n\t\t\t\tonLoadMore(start, end);\r\n\t\t\t}\r\n\t\t});\r\n\t}\r\n\txAxisZoom(newDomain) {\r\n\t\tconst { xScale, plotData, chartConfig } = this.calculateStateForDomain(newDomain);\r\n\t\tthis.clearThreeCanvas();\r\n\r\n\t\tconst { xAccessor } = this.state;\r\n\t\tconst { fullData } = this;\r\n\t\tconst firstItem = head(fullData);\r\n\t\tconst start = head(xScale.domain());\r\n\t\tconst end = xAccessor(firstItem);\r\n\t\tconst { onLoadMore } = this.props;\r\n\r\n\t\tthis.setState({\r\n\t\t\txScale,\r\n\t\t\tplotData,\r\n\t\t\tchartConfig,\r\n\t\t}, () => {\r\n\t\t\tif (start < end) onLoadMore(start, end);\r\n\t\t});\r\n\t}\r\n\tyAxisZoom(chartId, newDomain) {\r\n\t\tthis.clearThreeCanvas();\r\n\t\tconst { chartConfig: initialChartConfig } = this.state;\r\n\t\tconst chartConfig = initialChartConfig\r\n\t\t\t.map(each => {\r\n\t\t\t\tif (each.id === chartId) {\r\n\t\t\t\t\tconst { yScale } = each;\r\n\t\t\t\t\treturn {\r\n\t\t\t\t\t\t...each,\r\n\t\t\t\t\t\tyScale: yScale.copy().domain(newDomain),\r\n\t\t\t\t\t\tyPanEnabled: true,\r\n\t\t\t\t\t};\r\n\t\t\t\t} else {\r\n\t\t\t\t\treturn each;\r\n\t\t\t\t}\r\n\t\t\t});\r\n\r\n\t\tthis.setState({\r\n\t\t\tchartConfig,\r\n\t\t});\r\n\t}\r\n\ttriggerEvent(type, props, e) {\r\n\r\n\t\tthis.subscriptions.forEach(each => {\r\n\t\t\tconst state = {\r\n\t\t\t\t...this.state,\r\n\t\t\t\tfullData: this.fullData,\r\n\t\t\t\tsubscriptions: this.subscriptions,\r\n\t\t\t};\r\n\t\t\teach.listener(type, props, state, e);\r\n\t\t});\r\n\t}\r\n\tdraw(props) {\r\n\t\tthis.subscriptions.forEach(each => {\r\n\t\t\tif (isDefined(each.draw))\r\n\t\t\t\teach.draw(props);\r\n\t\t});\r\n\t}\r\n\tredraw() {\r\n\t\tthis.clearThreeCanvas();\r\n\t\tthis.draw({ force: true });\r\n\t}\r\n\tpanHelper(mouseXY, initialXScale, { dx, dy }, chartsToPan) {\r\n\t\tconst { xAccessor, displayXAccessor, chartConfig: initialChartConfig } = this.state;\r\n\t\tconst { filterData } = this.state;\r\n\t\tconst { fullData } = this;\r\n\t\tconst { postCalculator } = this.props;\r\n\r\n\t\tif (isNotDefined(initialXScale.invert))\r\n\t\t\tthrow new Error(\"xScale provided does not have an invert() method.\"\r\n\t\t\t\t+ \"You are likely using an ordinal scale. This scale does not support zoom, pan\");\r\n\r\n\t\tconst newDomain = initialXScale.range().map(x => x - dx).map(initialXScale.invert);\r\n\r\n\t\tconst { plotData: beforePlotData, domain } = filterData(\r\n\t\t\tfullData,\r\n\t\t\tnewDomain,\r\n\t\t\txAccessor,\r\n\t\t\tinitialXScale,\r\n\t\t\t{\r\n\t\t\t\tcurrentPlotData: this.hackyWayToStopPanBeyondBounds__plotData,\r\n\t\t\t\tcurrentDomain: this.hackyWayToStopPanBeyondBounds__domain\r\n\t\t\t}\r\n\t\t);\r\n\r\n\t\tconst updatedScale = initialXScale.copy().domain(domain);\r\n\t\tconst plotData = postCalculator(beforePlotData);\r\n\r\n\t\tconst currentItem = getCurrentItem(updatedScale, xAccessor, mouseXY, plotData);\r\n\t\tconst chartConfig = getChartConfigWithUpdatedYScales(\r\n\t\t\tinitialChartConfig,\r\n\t\t\t{ plotData, xAccessor, displayXAccessor, fullData },\r\n\t\t\tupdatedScale.domain(),\r\n\t\t\tdy,\r\n\t\t\tchartsToPan\r\n\t\t);\r\n\t\tconst currentCharts = getCurrentCharts(chartConfig, mouseXY);\r\n\r\n\t\treturn {\r\n\t\t\txScale: updatedScale,\r\n\t\t\tplotData,\r\n\t\t\tchartConfig,\r\n\t\t\tmouseXY,\r\n\t\t\tcurrentCharts,\r\n\t\t\tcurrentItem,\r\n\t\t};\r\n\t}\r\n\thandlePan(mousePosition, panStartXScale, dxdy, chartsToPan, e) {\r\n\t\tif (!this.waitingForPanAnimationFrame) {\r\n\t\t\tthis.waitingForPanAnimationFrame = true;\r\n\r\n\t\t\tthis.hackyWayToStopPanBeyondBounds__plotData = this.hackyWayToStopPanBeyondBounds__plotData || this.state.plotData;\r\n\t\t\tthis.hackyWayToStopPanBeyondBounds__domain = this.hackyWayToStopPanBeyondBounds__domain || this.state.xScale.domain();\r\n\r\n\t\t\tconst state = this.panHelper(mousePosition, panStartXScale, dxdy, chartsToPan);\r\n\r\n\t\t\tthis.hackyWayToStopPanBeyondBounds__plotData = state.plotData;\r\n\t\t\tthis.hackyWayToStopPanBeyondBounds__domain = state.xScale.domain();\r\n\r\n\t\t\tthis.panInProgress = true;\r\n\r\n\t\t\tthis.triggerEvent(\"pan\", state, e);\r\n\r\n\t\t\tthis.mutableState = {\r\n\t\t\t\tmouseXY: state.mouseXY,\r\n\t\t\t\tcurrentItem: state.currentItem,\r\n\t\t\t\tcurrentCharts: state.currentCharts,\r\n\t\t\t};\r\n\t\t\trequestAnimationFrame(() => {\r\n\t\t\t\tthis.waitingForPanAnimationFrame = false;\r\n\t\t\t\tthis.clearBothCanvas();\r\n\t\t\t\tthis.draw({ trigger: \"pan\" });\r\n\t\t\t});\r\n\t\t}\r\n\t}\r\n\thandlePanEnd(mousePosition, panStartXScale, dxdy, chartsToPan, e) {\r\n\t\tconst state = this.panHelper(mousePosition, panStartXScale, dxdy, chartsToPan);\r\n\t\tthis.hackyWayToStopPanBeyondBounds__plotData = null;\r\n\t\tthis.hackyWayToStopPanBeyondBounds__domain = null;\r\n\r\n\t\tthis.panInProgress = false;\r\n\r\n\t\tconst {\r\n\t\t\txScale,\r\n\t\t\tplotData,\r\n\t\t\tchartConfig,\r\n\t\t} = state;\r\n\r\n\t\tthis.triggerEvent(\"panend\", state, e);\r\n\r\n\t\trequestAnimationFrame(() => {\r\n\t\t\tconst { xAccessor } = this.state;\r\n\t\t\tconst { fullData } = this;\r\n\r\n\t\t\tconst firstItem = head(fullData);\r\n\t\t\tconst start = head(xScale.domain());\r\n\t\t\tconst end = xAccessor(firstItem);\r\n\r\n\t\t\tconst { onLoadMore } = this.props;\r\n\r\n\t\t\tthis.clearThreeCanvas();\r\n\r\n\t\t\tthis.setState({\r\n\t\t\t\txScale,\r\n\t\t\t\tplotData,\r\n\t\t\t\tchartConfig,\r\n\t\t\t}, () => {\r\n\t\t\t\tif (start < end) onLoadMore(start, end);\r\n\t\t\t});\r\n\t\t});\r\n\t}\r\n\thandleMouseDown(mousePosition, currentCharts, e) {\r\n\t\tthis.triggerEvent(\"mousedown\", this.mutableState, e);\r\n\t}\r\n\thandleMouseEnter(e) {\r\n\t\tthis.triggerEvent(\"mouseenter\", {\r\n\t\t\tshow: true,\r\n\t\t}, e);\r\n\t}\r\n\thandleMouseMove(mouseXY, inputType, e) {\r\n\t\tif (!this.waitingForMouseMoveAnimationFrame) {\r\n\t\t\tthis.waitingForMouseMoveAnimationFrame = true;\r\n\r\n\t\t\tconst { chartConfig, plotData, xScale, xAccessor } = this.state;\r\n\t\t\tconst currentCharts = getCurrentCharts(chartConfig, mouseXY);\r\n\t\t\tconst currentItem = getCurrentItem(xScale, xAccessor, mouseXY, plotData);\r\n\t\t\tthis.triggerEvent(\"mousemove\", {\r\n\t\t\t\tshow: true,\r\n\t\t\t\tmouseXY,\r\n\t\t\t\t// prevMouseXY is used in interactive components\r\n\t\t\t\tprevMouseXY: this.prevMouseXY,\r\n\t\t\t\tcurrentItem,\r\n\t\t\t\tcurrentCharts,\r\n\t\t\t}, e);\r\n\r\n\t\t\tthis.prevMouseXY = mouseXY;\r\n\t\t\tthis.mutableState = {\r\n\t\t\t\tmouseXY,\r\n\t\t\t\tcurrentItem,\r\n\t\t\t\tcurrentCharts,\r\n\t\t\t};\r\n\r\n\t\t\trequestAnimationFrame(() => {\r\n\t\t\t\tthis.clearMouseCanvas();\r\n\t\t\t\tthis.draw({ trigger: \"mousemove\" });\r\n\t\t\t\tthis.waitingForMouseMoveAnimationFrame = false;\r\n\t\t\t});\r\n\t\t}\r\n\t}\r\n\thandleMouseLeave(e) {\r\n\t\tthis.triggerEvent(\"mouseleave\", { show: false }, e);\r\n\t\tthis.clearMouseCanvas();\r\n\t\tthis.draw({ trigger: \"mouseleave\" });\r\n\t}\r\n\thandleDragStart({ startPos }, e) {\r\n\t\tthis.triggerEvent(\"dragstart\", { startPos }, e);\r\n\t}\r\n\thandleDrag({ startPos, mouseXY }, e) {\r\n\t\tconst { chartConfig, plotData, xScale, xAccessor } = this.state;\r\n\t\tconst currentCharts = getCurrentCharts(chartConfig, mouseXY);\r\n\t\tconst currentItem = getCurrentItem(xScale, xAccessor, mouseXY, plotData);\r\n\r\n\t\tthis.triggerEvent(\"drag\", {\r\n\t\t\tstartPos,\r\n\t\t\tmouseXY,\r\n\t\t\tcurrentItem,\r\n\t\t\tcurrentCharts,\r\n\t\t}, e);\r\n\r\n\t\tthis.mutableState = {\r\n\t\t\tmouseXY,\r\n\t\t\tcurrentItem,\r\n\t\t\tcurrentCharts,\r\n\t\t};\r\n\r\n\t\trequestAnimationFrame(() => {\r\n\t\t\tthis.clearMouseCanvas();\r\n\t\t\tthis.draw({ trigger: \"drag\" });\r\n\t\t});\r\n\t}\r\n\thandleDragEnd({ mouseXY }, e) {\r\n\t\tthis.triggerEvent(\"dragend\", { mouseXY }, e);\r\n\r\n\t\trequestAnimationFrame(() => {\r\n\t\t\tthis.clearMouseCanvas();\r\n\t\t\tthis.draw({ trigger: \"dragend\" });\r\n\t\t});\r\n\t}\r\n\thandleClick(mousePosition, e) {\r\n\t\tthis.triggerEvent(\"click\", this.mutableState, e);\r\n\r\n\t\trequestAnimationFrame(() => {\r\n\t\t\tthis.clearMouseCanvas();\r\n\t\t\tthis.draw({ trigger: \"click\" });\r\n\t\t});\r\n\t}\r\n\thandleDoubleClick(mousePosition, e) {\r\n\t\tthis.triggerEvent(\"dblclick\", {}, e);\r\n\t}\r\n\tgetChildContext() {\r\n\t\tconst dimensions = getDimensions(this.props);\r\n\t\treturn {\r\n\t\t\tfullData: this.fullData,\r\n\t\t\tplotData: this.state.plotData,\r\n\t\t\twidth: dimensions.width,\r\n\t\t\theight: dimensions.height,\r\n\t\t\tchartConfig: this.state.chartConfig,\r\n\t\t\txScale: this.state.xScale,\r\n\t\t\txAccessor: this.state.xAccessor,\r\n\t\t\tdisplayXAccessor: this.state.displayXAccessor,\r\n\t\t\tchartCanvasType: this.props.type,\r\n\t\t\tmargin: this.props.margin,\r\n\t\t\tratio: this.props.ratio,\r\n\t\t\txAxisZoom: this.xAxisZoom,\r\n\t\t\tyAxisZoom: this.yAxisZoom,\r\n\t\t\tgetCanvasContexts: this.getCanvasContexts,\r\n\t\t\tredraw: this.redraw,\r\n\t\t\tsubscribe: this.subscribe,\r\n\t\t\tunsubscribe: this.unsubscribe,\r\n\t\t\tgenerateSubscriptionId: this.generateSubscriptionId,\r\n\t\t\tgetMutableState: this.getMutableState,\r\n\t\t\tamIOnTop: this.amIOnTop,\r\n\t\t\tsetCursorClass: this.setCursorClass,\r\n\t\t};\r\n\t}\r\n\tcomponentWillMount() {\r\n\t\tconst { fullData, ...state } = resetChart(this.props, true);\r\n\t\tthis.setState(state);\r\n\t\tthis.fullData = fullData;\r\n\t}\r\n\tcomponentWillReceiveProps(nextProps) {\r\n\t\tconst reset = shouldResetChart(this.props, nextProps);\r\n\r\n\t\tconst interaction = isInteractionEnabled(this.state.xScale, this.state.xAccessor, this.state.plotData);\r\n\t\tconst { chartConfig: initialChartConfig } = this.state;\r\n\r\n\t\tlet newState;\r\n\t\tif (!interaction || reset || !shallowEqual(this.props.xExtents, nextProps.xExtents)) {\r\n\t\t\tif (process.env.NODE_ENV !== \"production\") {\r\n\t\t\t\tif (!interaction)\r\n\t\t\t\t\tlog(\"RESET CHART, changes to a non interactive chart\");\r\n\t\t\t\telse if (reset)\r\n\t\t\t\t\tlog(\"RESET CHART, one or more of these props changed\", CANDIDATES_FOR_RESET);\r\n\t\t\t\telse\r\n\t\t\t\t\tlog(\"xExtents changed\");\r\n\t\t\t}\r\n\t\t\t// do reset\r\n\t\t\tnewState = resetChart(nextProps);\r\n\t\t\tthis.mutableState = {};\r\n\t\t} else {\r\n\r\n\t\t\tconst [start, end] = this.state.xScale.domain();\r\n\t\t\tconst prevLastItem = last(this.fullData);\r\n\r\n\t\t\tconst calculatedState = calculateFullData(nextProps);\r\n\t\t\tconst { xAccessor } = calculatedState;\r\n\t\t\tconst lastItemWasVisible = xAccessor(prevLastItem) <= end && xAccessor(prevLastItem) >= start;\r\n\r\n\t\t\tif (process.env.NODE_ENV !== \"production\") {\r\n\t\t\t\tif (this.props.data !== nextProps.data)\r\n\t\t\t\t\tlog(\"data is changed but seriesName did not, change the seriesName if you wish to reset the chart and lastItemWasVisible = \", lastItemWasVisible);\r\n\t\t\t\telse\r\n\t\t\t\t\tlog(\"Trivial change, may be width/height or type changed, but that does not matter\");\r\n\t\t\t}\r\n\r\n\t\t\tnewState = updateChart(\r\n\t\t\t\tcalculatedState,\r\n\t\t\t\tthis.state.xScale,\r\n\t\t\t\tnextProps,\r\n\t\t\t\tlastItemWasVisible,\r\n\t\t\t\tinitialChartConfig,\r\n\t\t\t);\r\n\t\t}\r\n\r\n\t\tconst { fullData, ...state } = newState;\r\n\r\n\t\tif (this.panInProgress) {\r\n\t\t\tif (process.env.NODE_ENV !== \"production\") {\r\n\t\t\t\tlog(\"Pan is in progress\");\r\n\t\t\t}\r\n\t\t} else {\r\n\t\t\t/*\r\n\t\t\tif (!reset) {\r\n\t\t\t\tstate.chartConfig\r\n\t\t\t\t\t.forEach((each) => {\r\n\t\t\t\t\t\t// const sourceChartConfig = initialChartConfig.filter(d => d.id === each.id);\r\n\t\t\t\t\t\tconst prevChartConfig = find(initialChartConfig, d => d.id === each.id);\r\n\t\t\t\t\t\tif (isDefined(prevChartConfig) && prevChartConfig.yPanEnabled) {\r\n\t\t\t\t\t\t\teach.yScale.domain(prevChartConfig.yScale.domain());\r\n\t\t\t\t\t\t\teach.yPanEnabled = prevChartConfig.yPanEnabled;\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t});\r\n\t\t\t}\r\n\t\t\t*/\r\n\t\t\tthis.clearThreeCanvas();\r\n\r\n\t\t\tthis.setState(state);\r\n\t\t}\r\n\t\tthis.fullData = fullData;\r\n\t}\r\n\t/*\r\n\tcomponentDidUpdate(prevProps, prevState) {\r\n\t\tconsole.error(this.state.chartConfig, this.state.chartConfig.map(d => d.yScale.domain()));\r\n\t}\r\n\t*/\r\n\tresetYDomain(chartId) {\r\n\t\tconst { chartConfig } = this.state;\r\n\t\tlet changed = false;\r\n\t\tconst newChartConfig = chartConfig\r\n\t\t\t.map(each => {\r\n\t\t\t\tif ((isNotDefined(chartId) || each.id === chartId)\r\n\t\t\t\t\t\t&& !shallowEqual(each.yScale.domain(), each.realYDomain)) {\r\n\t\t\t\t\tchanged = true;\r\n\t\t\t\t\treturn {\r\n\t\t\t\t\t\t...each,\r\n\t\t\t\t\t\tyScale: each.yScale.domain(each.realYDomain),\r\n\t\t\t\t\t\tyPanEnabled: false,\r\n\t\t\t\t\t};\r\n\t\t\t\t}\r\n\t\t\t\treturn each;\r\n\t\t\t});\r\n\r\n\t\tif (changed) {\r\n\t\t\tthis.clearThreeCanvas();\r\n\t\t\tthis.setState({\r\n\t\t\t\tchartConfig: newChartConfig\r\n\t\t\t});\r\n\t\t}\r\n\t}\r\n\tshouldComponentUpdate() {\r\n\t\treturn !this.panInProgress;\r\n\t}\r\n\trender() {\r\n\r\n\t\tconst { type, height, width, bg, margin, className, zIndex, defaultFocus, ratio, mouseMoveEvent, panEvent, zoomEvent } = this.props;\r\n\t\tconst { useCrossHairStyleCursor, onSelect } = this.props;\r\n\r\n\t\tconst { plotData, xScale, xAccessor, chartConfig } = this.state;\r\n\t\tconst dimensions = getDimensions(this.props);\r\n\r\n\t\tconst interaction = isInteractionEnabled(xScale, xAccessor, plotData);\r\n\r\n\t\tconst cursorStyle = useCrossHairStyleCursor && interaction;\r\n\t\tconst cursor = getCursorStyle();\r\n\t\treturn (\r\n\t\t\t
\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t{cursor}\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t{chartConfig\r\n\t\t\t\t\t\t\t.map((each, idx) => \r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t)}\r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t{this.props.children}\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t
\r\n\t\t);\r\n\t}\r\n}\r\n\r\nfunction isInteractionEnabled(xScale, xAccessor, data) {\r\n\tconst interaction = !isNaN(xScale(xAccessor(head(data)))) && isDefined(xScale.invert);\r\n\treturn interaction;\r\n}\r\n\r\nChartCanvas.propTypes = {\r\n\twidth: PropTypes.number.isRequired,\r\n\theight: PropTypes.number.isRequired,\r\n\tbg: PropTypes.string,\r\n\tmargin: PropTypes.object,\r\n\tratio: PropTypes.number.isRequired,\r\n\t// interval: PropTypes.oneOf([\"D\", \"W\", \"M\"]), // ,\"m1\", \"m5\", \"m15\", \"W\", \"M\"\r\n\ttype: PropTypes.oneOf([\"svg\", \"hybrid\"]),\r\n\tpointsPerPxThreshold: PropTypes.number,\r\n\tminPointsPerPxThreshold: PropTypes.number,\r\n\tdata: PropTypes.array.isRequired,\r\n\t// initialDisplay: PropTypes.number,\r\n\txAccessor: PropTypes.func,\r\n\txExtents: PropTypes.oneOfType([\r\n\t\tPropTypes.array,\r\n\t\tPropTypes.func\r\n\t]),\r\n\tzoomAnchor: PropTypes.func,\r\n\r\n\tclassName: PropTypes.string,\r\n\tseriesName: PropTypes.string.isRequired,\r\n\tzIndex: PropTypes.number,\r\n\tchildren: PropTypes.node.isRequired,\r\n\txScale: PropTypes.func.isRequired,\r\n\tpostCalculator: PropTypes.func,\r\n\tflipXScale: PropTypes.bool,\r\n\tuseCrossHairStyleCursor: PropTypes.bool,\r\n\tpadding: PropTypes.oneOfType([\r\n\t\tPropTypes.number,\r\n\t\tPropTypes.shape({\r\n\t\t\tleft: PropTypes.number,\r\n\t\t\tright: PropTypes.number,\r\n\t\t})\r\n\t]),\r\n\tdefaultFocus: PropTypes.bool,\r\n\tzoomMultiplier: PropTypes.number,\r\n\tonLoadMore: PropTypes.func,\r\n\tdisplayXAccessor: function(props, propName/* , componentName */) {\r\n\t\tif (isNotDefined(props[propName])) {\r\n\t\t\tconsole.warn(\"`displayXAccessor` is not defined,\"\r\n\t\t\t\t+ \" will use the value from `xAccessor` as `displayXAccessor`.\"\r\n\t\t\t\t+ \" This might be ok if you do not use a discontinuous scale\"\r\n\t\t\t\t+ \" but if you do, provide a `displayXAccessor` prop to `ChartCanvas`\");\r\n\t\t} else if (typeof props[propName] !== \"function\") {\r\n\t\t\treturn new Error(\"displayXAccessor has to be a function\");\r\n\t\t}\r\n\t},\r\n\tmouseMoveEvent: PropTypes.bool,\r\n\tpanEvent: PropTypes.bool,\r\n\tclamp: PropTypes.oneOfType([PropTypes.string, PropTypes.bool, PropTypes.func]),\r\n\tzoomEvent: PropTypes.bool,\r\n\tonSelect: PropTypes.func,\r\n\tmaintainPointsPerPixelOnResize: PropTypes.bool,\r\n\tdisableInteraction: PropTypes.bool,\r\n};\r\n\r\nChartCanvas.defaultProps = {\r\n\tmargin: { top: 20, right: 30, bottom: 30, left: 80 },\r\n\ttype: \"hybrid\",\r\n\tpointsPerPxThreshold: 2,\r\n\tminPointsPerPxThreshold: 1 / 100,\r\n\tclassName: \"react-stockchart\",\r\n\tzIndex: 1,\r\n\txExtents: [min, max],\r\n\tpostCalculator: identity,\r\n\tpadding: 0,\r\n\txAccessor: identity,\r\n\tflipXScale: false,\r\n\tuseCrossHairStyleCursor: true,\r\n\tdefaultFocus: true,\r\n\tonLoadMore: noop,\r\n\tonSelect: noop,\r\n\tmouseMoveEvent: true,\r\n\tpanEvent: true,\r\n\tzoomEvent: true,\r\n\tzoomMultiplier: 1.1,\r\n\tclamp: false,\r\n\tzoomAnchor: mouseBasedZoomAnchor,\r\n\tmaintainPointsPerPixelOnResize: true,\r\n\t// ratio: 2,\r\n\tdisableInteraction: false,\r\n\tbg: 'white'\r\n};\r\n\r\nChartCanvas.childContextTypes = {\r\n\tplotData: PropTypes.array,\r\n\tfullData: PropTypes.array,\r\n\tchartConfig: PropTypes.arrayOf(\r\n\t\tPropTypes.shape({\r\n\t\t\tid: PropTypes.oneOfType([PropTypes.number, PropTypes.string]).isRequired,\r\n\t\t\torigin: PropTypes.arrayOf(PropTypes.number).isRequired,\r\n\t\t\tpadding: PropTypes.oneOfType([\r\n\t\t\t\tPropTypes.number,\r\n\t\t\t\tPropTypes.shape({\r\n\t\t\t\t\ttop: PropTypes.number,\r\n\t\t\t\t\tbottom: PropTypes.number,\r\n\t\t\t\t})\r\n\t\t\t]),\r\n\t\t\tyExtents: PropTypes.arrayOf(PropTypes.func),\r\n\t\t\tyExtentsProvider: PropTypes.func,\r\n\t\t\tyScale: PropTypes.func.isRequired,\r\n\t\t\tmouseCoordinates: PropTypes.shape({\r\n\t\t\t\tat: PropTypes.string,\r\n\t\t\t\tformat: PropTypes.func\r\n\t\t\t}),\r\n\t\t\twidth: PropTypes.number.isRequired,\r\n\t\t\theight: PropTypes.number.isRequired,\r\n\t\t})\r\n\t).isRequired,\r\n\txScale: PropTypes.func.isRequired,\r\n\txAccessor: PropTypes.func.isRequired,\r\n\tdisplayXAccessor: PropTypes.func.isRequired,\r\n\twidth: PropTypes.number.isRequired,\r\n\theight: PropTypes.number.isRequired,\r\n\tchartCanvasType: PropTypes.oneOf([\"svg\", \"hybrid\"]).isRequired,\r\n\tmargin: PropTypes.object.isRequired,\r\n\tratio: PropTypes.number.isRequired,\r\n\tgetCanvasContexts: PropTypes.func,\r\n\txAxisZoom: PropTypes.func,\r\n\tyAxisZoom: PropTypes.func,\r\n\tamIOnTop: PropTypes.func,\r\n\tredraw: PropTypes.func,\r\n\tsubscribe: PropTypes.func,\r\n\tunsubscribe: PropTypes.func,\r\n\tsetCursorClass: PropTypes.func,\r\n\tgenerateSubscriptionId: PropTypes.func,\r\n\tgetMutableState: PropTypes.func,\r\n};\r\n\r\nChartCanvas.ohlcv = d => ({ date: d.date, open: d.open, high: d.high, low: d.low, close: d.close, volume: d.volume });\r\n\r\nexport default ChartCanvas;\r\n","import {\r\n\tgetCurrentItem\r\n} from \"./ChartDataUtil\";\r\n\r\nimport {\r\n\tlast\r\n} from \"./index\";\r\n/* eslint-disable no-unused-vars */\r\n\r\nexport function mouseBasedZoomAnchor({\r\n\txScale,\r\n\txAccessor,\r\n\tmouseXY,\r\n\tplotData,\r\n\tfullData,\r\n}) {\r\n\tconst currentItem = getCurrentItem(xScale, xAccessor, mouseXY, plotData);\r\n\treturn xAccessor(currentItem);\r\n}\r\n\r\nexport function lastVisibleItemBasedZoomAnchor({\r\n\txScale,\r\n\txAccessor,\r\n\tmouseXY,\r\n\tplotData,\r\n\tfullData,\r\n}) {\r\n\tconst lastItem = last(plotData);\r\n\treturn xAccessor(lastItem);\r\n}\r\n\r\nexport function rightDomainBasedZoomAnchor({\r\n\txScale,\r\n\txAccessor,\r\n\tmouseXY,\r\n\tplotData,\r\n\tfullData,\r\n}) {\r\n\tconst [, end] = xScale.domain();\r\n\treturn end;\r\n}\r\n/* eslint-enable no-unused-vars */\r\n","import React from \"react\";\r\nimport PropTypes from \"prop-types\";\r\nimport PureComponent from \"./utils/PureComponent\";\r\n\r\nimport { hexToRGBA, isDefined } from \"./utils\";\r\n\r\nclass BackgroundText extends PureComponent {\r\n\tcomponentDidMount() {\r\n\t\tif (this.context.chartCanvasType !== \"svg\" && isDefined(this.context.getCanvasContexts)) {\r\n\t\t\tconst contexts = this.context.getCanvasContexts();\r\n\t\t\tif (contexts) BackgroundText.drawOnCanvas(contexts.bg, this.props, this.context, this.props.children);\r\n\t\t}\r\n\t}\r\n\tcomponentDidUpdate() {\r\n\t\tthis.componentDidMount();\r\n\t}\r\n\trender() {\r\n\t\tconst { chartCanvasType } = this.context;\r\n\r\n\t\tif (chartCanvasType !== \"svg\") return null;\r\n\r\n\t\tconst { x, y, fill, opacity, stroke, strokeOpacity, fontFamily, fontSize, textAnchor } = this.props;\r\n\t\tconst props = { x, y, fill, opacity, stroke, strokeOpacity, fontFamily, fontSize, textAnchor };\r\n\t\treturn (\r\n\t\t\tthis.props.children(interval)\r\n\t\t);\r\n\t}\r\n}\r\n\r\nBackgroundText.drawOnCanvas = (ctx, props, { interval }, getText) => {\r\n\tctx.clearRect(-1, -1, ctx.canvas.width + 2, ctx.canvas.height + 2);\r\n\tctx.save();\r\n\r\n\tctx.setTransform(1, 0, 0, 1, 0, 0);\r\n\tctx.translate(0.5, 0.5);\r\n\r\n\tconst { x, y, fill, opacity, stroke, strokeOpacity, fontFamily, fontSize, textAnchor } = props;\r\n\r\n\tconst text = getText(interval);\r\n\r\n\tctx.strokeStyle = hexToRGBA(stroke, strokeOpacity);\r\n\r\n\tctx.font = `${ fontSize }px ${ fontFamily }`;\r\n\tctx.fillStyle = hexToRGBA(fill, opacity);\r\n\tctx.textAlign = textAnchor === \"middle\" ? \"center\" : textAnchor;\r\n\r\n\tif (stroke !== \"none\") ctx.strokeText(text, x, y);\r\n\tctx.fillText(text, x, y);\r\n\r\n\tctx.restore();\r\n};\r\n\r\nBackgroundText.propTypes = {\r\n\tx: PropTypes.number.isRequired,\r\n\ty: PropTypes.number.isRequired,\r\n\tfontFamily: PropTypes.string,\r\n\tfontSize: PropTypes.number.isRequired,\r\n\tfill: PropTypes.string,\r\n\tstroke: PropTypes.string,\r\n\topacity: PropTypes.number,\r\n\tstrokeOpacity: PropTypes.number,\r\n\ttextAnchor: PropTypes.string,\r\n\tchildren: PropTypes.func,\r\n};\r\n\r\nBackgroundText.defaultProps = {\r\n\topacity: 0.3,\r\n\tfill: \"#9E7523\",\r\n\tstroke: \"#9E7523\",\r\n\tstrokeOpacity: 1,\r\n\tfontFamily: \"Helvetica Neue, Helvetica, Arial, sans-serif\",\r\n\tfontSize: 12,\r\n\ttextAnchor: \"middle\",\r\n};\r\n\r\nBackgroundText.contextTypes = {\r\n\tinterval: PropTypes.string.isRequired,\r\n\tgetCanvasContexts: PropTypes.func,\r\n\tchartCanvasType: PropTypes.string,\r\n};\r\n\r\nexport default BackgroundText;","import React, { Component } from \"react\";\r\nimport PropTypes from \"prop-types\";\r\n// import { mean } from \"d3-array\";\r\n\r\nimport { path as d3Path } from \"d3-path\";\r\nimport { interpolateNumber } from \"d3-interpolate\";\r\n\r\nimport { last, noop } from \"./utils\";\r\n\r\nclass ZoomButtons extends Component {\r\n\tconstructor(props) {\r\n\t\tsuper(props);\r\n\t\tthis.handleZoomOut = this.handleZoomOut.bind(this);\r\n\t\tthis.handleZoomIn = this.handleZoomIn.bind(this);\r\n\t\tthis.zoom = this.zoom.bind(this);\r\n\t}\r\n\tzoom(direction) {\r\n\t\tconst { xAxisZoom, xScale, plotData, xAccessor } = this.context;\r\n\t\tconst cx = xScale(xAccessor(last(plotData)));\r\n\t\t// mean(xScale.range());\r\n\t\tconst { zoomMultiplier } = this.props;\r\n\r\n\t\tconst c = direction > 0 ? 1 * zoomMultiplier : 1 / zoomMultiplier;\r\n\r\n\t\tconst [start, end] = xScale.domain();\r\n\t\tconst [newStart, newEnd] = xScale.range()\r\n\t\t\t.map(x => cx + (x - cx) * c)\r\n\t\t\t.map(xScale.invert);\r\n\r\n\t\tconst left = interpolateNumber(start, newStart);\r\n\t\tconst right = interpolateNumber(end, newEnd);\r\n\r\n\t\tconst foo = [0.25, 0.3, 0.5, 0.6, 0.75, 1].map(i => {\r\n\t\t\treturn [left(i), right(i)];\r\n\t\t});\r\n\r\n\t\tthis.interval = setInterval(() => {\r\n\t\t\txAxisZoom(foo.shift());\r\n\t\t\tif (foo.length === 0) {\r\n\t\t\t\tclearInterval(this.interval);\r\n\t\t\t\tdelete this.interval;\r\n\t\t\t}\r\n\t\t}, 10);\r\n\t}\r\n\thandleZoomOut() {\r\n\t\tif (this.interval) return;\r\n\t\tthis.zoom(1);\r\n\t}\r\n\thandleZoomIn() {\r\n\t\tif (this.interval) return;\r\n\t\tthis.zoom(-1);\r\n\t}\r\n\trender() {\r\n\t\tconst { chartConfig } = this.context;\r\n\t\tconst { width, height } = chartConfig;\r\n\t\tconst { size, heightFromBase, rx, ry } = this.props;\r\n\t\tconst { stroke, strokeOpacity, fill, strokeWidth, fillOpacity } = this.props;\r\n\t\tconst { textFill, textStrokeWidth } = this.props;\r\n\t\tconst { onReset } = this.props;\r\n\t\tconst centerX = Math.round(width / 2);\r\n\t\tconst y = height - heightFromBase;\r\n\r\n\t\tconst [w, h] = size;\r\n\t\tconst hLength = 5;\r\n\t\tconst wLength = 6;\r\n\r\n\t\tconst textY = Math.round(y + h / 2);\r\n\r\n\t\t// const resetX = centerX; -> original\r\n\t\tconst resetX = width - w * 2 - 2 * strokeWidth - 4;\r\n\r\n\t\tconst zoomOut = d3Path();\r\n\t\t// const zoomOutX = centerX - w - 2 * strokeWidth; -> original\r\n\t\tconst zoomOutX = width - w * 3 - 2 * strokeWidth - 8;\r\n\t\tzoomOut.moveTo(zoomOutX - wLength, textY);\r\n\t\tzoomOut.lineTo(zoomOutX + wLength, textY);\r\n\t\tzoomOut.closePath();\r\n\r\n\t\tconst zoomIn = d3Path();\r\n\t\t// const zoomInX = centerX + w + 2 * strokeWidth; -> original\r\n\t\tconst zoomInX = width - w - 2 * strokeWidth;\r\n\r\n\t\tzoomIn.moveTo(zoomInX - wLength, textY);\r\n\t\tzoomIn.lineTo(zoomInX + wLength, textY);\r\n\r\n\t\tzoomIn.moveTo(zoomInX, textY - hLength);\r\n\t\tzoomIn.lineTo(zoomInX, textY + hLength);\r\n\t\t// zoomIn.closePath();\r\n\r\n\t\tconst zoomBtnStyle = {\r\n\t\t\t// '-webkit-filter': 'drop-shadow( 1px 1px 3px rgba(165, 165, 165, .7))',\r\n\t\t\t'filter': 'drop-shadow( 1px 1px 3px rgba(165, 165, 165, .7))'\r\n\t\t}\r\n\t\treturn (\r\n\t\t\t<>\r\n\t\t\t\t\r\n\t\t\t\t\ta\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\tb\r\n\t\t\t\t\r\n\t\t\t\r\n\t\t);\r\n\t}\r\n}\r\n\r\nZoomButtons.propTypes = {\r\n\tzoomMultiplier: PropTypes.number.isRequired,\r\n\tsize: PropTypes.array.isRequired,\r\n\theightFromBase: PropTypes.number.isRequired,\r\n\trx: PropTypes.number.isRequired,\r\n\try: PropTypes.number.isRequired,\r\n\tstroke: PropTypes.string.isRequired,\r\n\tstrokeWidth: PropTypes.number.isRequired,\r\n\tstrokeOpacity: PropTypes.number.isRequired,\r\n\tfill: PropTypes.string.isRequired,\r\n\tfillOpacity: PropTypes.number.isRequired,\r\n\tfontSize: PropTypes.number.isRequired,\r\n\ttextDy: PropTypes.string.isRequired,\r\n\ttextFill: PropTypes.string.isRequired,\r\n\ttextStrokeWidth: PropTypes.number.isRequired,\r\n\tonReset: PropTypes.func,\r\n};\r\n\r\nZoomButtons.defaultProps = {\r\n\tsize: [30, 24],\r\n\theightFromBase: 50,\r\n\trx: 3,\r\n\try: 3,\r\n\tstroke: \"#000000\",\r\n\tstrokeOpacity: 0.3,\r\n\tstrokeWidth: 1,\r\n\tfill: \"#D6D6D6\",\r\n\tfillOpacity: 0.4,\r\n\tfontSize: 16,\r\n\ttextDy: \".3em\",\r\n\ttextFill: \"#000000\",\r\n\ttextStrokeWidth: 2,\r\n\tzoomMultiplier: 1.5,\r\n\tonReset: noop,\r\n};\r\n\r\nZoomButtons.contextTypes = {\r\n\txScale: PropTypes.func.isRequired,\r\n\tchartConfig: PropTypes.object.isRequired,\r\n\tplotData: PropTypes.array.isRequired,\r\n\txAccessor: PropTypes.func.isRequired,\r\n\txAxisZoom: PropTypes.func.isRequired,\r\n};\r\n\r\nexport default ZoomButtons;\r\n","\r\n\r\nimport React, { Component } from \"react\";\r\nimport PropTypes from \"prop-types\";\r\n\r\nclass TypeChooser extends Component {\r\n\tconstructor(props) {\r\n\t\tsuper(props);\r\n\t\tthis.state = {\r\n\t\t\ttype: this.props.type\r\n\t\t};\r\n\t\tthis.handleTypeChange = this.handleTypeChange.bind(this);\r\n\t}\r\n\thandleTypeChange(e) {\r\n\t\t// console.log(e.target.value);\r\n\t\tthis.setState({\r\n\t\t\ttype: e.target.value\r\n\t\t});\r\n\t}\r\n\trender() {\r\n\t\treturn (\r\n\t\t\t
\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t
\r\n\t\t\t\t\t{this.props.children(this.state.type)}\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t);\r\n\t}\r\n}\r\n\r\nTypeChooser.propTypes = {\r\n\ttype: PropTypes.oneOf([\"svg\", \"hybrid\"]),\r\n\tchildren: PropTypes.func.isRequired,\r\n\tstyle: PropTypes.object.isRequired,\r\n};\r\n\r\nTypeChooser.defaultProps = {\r\n\ttype: \"hybrid\",\r\n\tstyle: {},\r\n};\r\n\r\nexport default TypeChooser;\r\n","import React, { Component } from \"react\";\r\n// import ReactDOM from \"react-dom\";\r\n\r\nimport { isDefined } from \"../utils\";\r\n\r\nfunction getDisplayName(Series) {\r\n\tconst name = Series.displayName || Series.name || \"Series\";\r\n\treturn name;\r\n}\r\n\r\nexport default function fitWidth(WrappedComponent, withRef = true, minWidth = 100) {\r\n\tclass ResponsiveComponent extends Component {\r\n\t\tconstructor(props) {\r\n\t\t\tsuper(props);\r\n\t\t\tthis.handleWindowResize = this.handleWindowResize.bind(this);\r\n\t\t\tthis.getWrappedInstance = this.getWrappedInstance.bind(this);\r\n\t\t\tthis.saveNode = this.saveNode.bind(this);\r\n\t\t\tthis.setTestCanvas = this.setTestCanvas.bind(this);\r\n\t\t\tthis.state = {};\r\n\t\t}\r\n\t\tsaveNode(node) {\r\n\t\t\tthis.node = node;\r\n\t\t}\r\n\t\tsetTestCanvas(node) {\r\n\t\t\tthis.testCanvas = node;\r\n\t\t}\r\n\t\tgetRatio() {\r\n\t\t\tif (isDefined(this.testCanvas)) {\r\n\t\t\t\tconst context = this.testCanvas.getContext(\"2d\");\r\n\r\n\t\t\t\tconst devicePixelRatio = window.devicePixelRatio || 1;\r\n\t\t\t\tconst backingStoreRatio = context.webkitBackingStorePixelRatio ||\r\n\t\t\t\t\tcontext.mozBackingStorePixelRatio ||\r\n\t\t\t\t\tcontext.msBackingStorePixelRatio ||\r\n\t\t\t\t\tcontext.oBackingStorePixelRatio ||\r\n\t\t\t\t\tcontext.backingStorePixelRatio || 1;\r\n\r\n\t\t\t\tconst ratio = devicePixelRatio / backingStoreRatio;\r\n\t\t\t\t// console.log(\"ratio = \", ratio);\r\n\t\t\t\treturn ratio;\r\n\t\t\t}\r\n\t\t\treturn 1;\r\n\t\t}\r\n\t\tcomponentDidMount() {\r\n\t\t\twindow.addEventListener(\"resize\", this.handleWindowResize);\r\n\t\t\tthis.handleWindowResize();\r\n\t\t\t/* eslint-disable react/no-did-mount-set-state */\r\n\t\t\tthis.setState({\r\n\t\t\t\tratio: this.getRatio(),\r\n\t\t\t});\r\n\t\t\t/* eslint-enable react/no-did-mount-set-state */\r\n\t\t}\r\n\t\tcomponentWillUnmount() {\r\n\t\t\twindow.removeEventListener(\"resize\", this.handleWindowResize);\r\n\t\t}\r\n\t\thandleWindowResize() {\r\n\t\t\tthis.setState({\r\n\t\t\t\twidth: 0\r\n\t\t\t}, () => {\r\n\t\t\t\tconst el = this.node;\r\n\t\t\t\tconst { width, paddingLeft, paddingRight } = window.getComputedStyle(el.parentNode);\r\n\r\n\t\t\t\tconst w = parseFloat(width) - (parseFloat(paddingLeft) + parseFloat(paddingRight));\r\n\r\n\t\t\t\tthis.setState({\r\n\t\t\t\t\twidth: Math.round(Math.max(w, minWidth))\r\n\t\t\t\t});\r\n\t\t\t});\r\n\t\t}\r\n\t\tgetWrappedInstance() {\r\n\t\t\treturn this.node;\r\n\t\t}\r\n\t\trender() {\r\n\t\t\tconst ref = withRef ? { ref: this.saveNode } : {};\r\n\r\n\t\t\tif (this.state.width) {\r\n\t\t\t\treturn ;\r\n\t\t\t} else {\r\n\t\t\t\treturn
\r\n\t\t\t\t\t\r\n\t\t\t\t
;\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n\r\n\tResponsiveComponent.displayName = `fitWidth(${ getDisplayName(WrappedComponent) })`;\r\n\r\n\treturn ResponsiveComponent;\r\n}\r\n\r\n","export const defaultFormatters = {\r\n\tyearFormat: \"%Y\",\r\n\tquarterFormat: \"%b %Y\",\r\n\tmonthFormat: \"%b\",\r\n\tweekFormat: \"%d %b\",\r\n\tdayFormat: \"%a %d\",\r\n\thourFormat: \"%_I %p\",\r\n\tminuteFormat: \"%I:%M %p\",\r\n\tsecondFormat: \"%I:%M:%S %p\",\r\n\tmilliSecondFormat: \"%L\",\r\n};\r\n\r\nexport const levelDefinition = [\r\n\t/* eslint-disable no-unused-vars */\r\n\t/* 19 */(d, date, i) => d.startOfYear && date.getFullYear() % 12 === 0 && \"yearFormat\",\r\n\t/* 18 */(d, date, i) => d.startOfYear && date.getFullYear() % 4 === 0 && \"yearFormat\",\r\n\t/* 17 */(d, date, i) => d.startOfYear && date.getFullYear() % 2 === 0 && \"yearFormat\",\r\n\t/* 16 */(d, date, i) => d.startOfYear && \"yearFormat\",\r\n\t/* 15 */(d, date, i) => d.startOfQuarter && \"quarterFormat\",\r\n\t/* 14 */(d, date, i) => d.startOfMonth && \"monthFormat\",\r\n\t/* 13 */(d, date, i) => d.startOfWeek && \"weekFormat\",\r\n\t/* 12 */(d, date, i) => d.startOfDay && i % 2 === 0 && \"dayFormat\",\r\n\t/* 11 */(d, date, i) => d.startOfDay && \"dayFormat\",\r\n\t/* 10 */(d, date, i) => d.startOfHalfDay && \"hourFormat\", // 12h\r\n\t/* 9 */(d, date, i) => d.startOfQuarterDay && \"hourFormat\", // 6h\r\n\t/* 8 */(d, date, i) => d.startOfEighthOfADay && \"hourFormat\", // 3h\r\n\t/* 7 */(d, date, i) => d.startOfHour && date.getHours() % 2 === 0 && \"hourFormat\", // 2h -- REMOVE THIS\r\n\t/* 6 */(d, date, i) => d.startOfHour && \"hourFormat\", // 1h\r\n\t/* 5 */(d, date, i) => d.startOf30Minutes && \"minuteFormat\",\r\n\t/* 4 */(d, date, i) => d.startOf15Minutes && \"minuteFormat\",\r\n\t/* 3 */(d, date, i) => d.startOf5Minutes && \"minuteFormat\",\r\n\t/* 2 */(d, date, i) => d.startOfMinute && \"minuteFormat\",\r\n\t/* 1 */(d, date, i) => d.startOf30Seconds && \"secondFormat\",\r\n\t/* 0 */(d, date, i) => \"secondFormat\",\r\n\t/* eslint-enable no-unused-vars */\r\n];\r\n","\r\n\r\nimport { set, map } from \"d3-collection\";\r\nimport { ascending } from \"d3-array\";\r\nimport { scaleLinear } from \"d3-scale\";\r\n\r\nimport { isDefined, isNotDefined, head, last } from \"../utils\";\r\nimport { levelDefinition } from \"./levels\";\r\n\r\nconst MAX_LEVEL = levelDefinition.length - 1;\r\n\r\nexport default function financeDiscontinuousScale(\r\n\tindex,\r\n\tfutureProvider,\r\n\tbackingLinearScale = scaleLinear()\r\n) {\r\n\r\n\tif (isNotDefined(index))\r\n\t\tthrow new Error(\"Use the discontinuousTimeScaleProvider to create financeDiscontinuousScale\");\r\n\r\n\tfunction scale(x) {\r\n\t\treturn backingLinearScale(x);\r\n\t}\r\n\tscale.invert = function(x) {\r\n\t\tconst inverted = backingLinearScale.invert(x);\r\n\t\treturn Math.round(inverted * 10000) / 10000;\r\n\t};\r\n\tscale.domain = function(x) {\r\n\t\tif (!arguments.length) return backingLinearScale.domain();\r\n\t\tbackingLinearScale.domain(x);\r\n\t\treturn scale;\r\n\t};\r\n\tscale.range = function(x) {\r\n\t\tif (!arguments.length) return backingLinearScale.range();\r\n\t\tbackingLinearScale.range(x);\r\n\t\treturn scale;\r\n\t};\r\n\tscale.rangeRound = function(x) {\r\n\t\treturn backingLinearScale.range(x);\r\n\t};\r\n\tscale.clamp = function(x) {\r\n\t\tif (!arguments.length) return backingLinearScale.clamp();\r\n\t\tbackingLinearScale.clamp(x);\r\n\t\treturn scale;\r\n\t};\r\n\tscale.interpolate = function(x) {\r\n\t\tif (!arguments.length) return backingLinearScale.interpolate();\r\n\t\tbackingLinearScale.interpolate(x);\r\n\t\treturn scale;\r\n\t};\r\n\tscale.ticks = function(m, flexTicks) {\r\n\t\tconst backingTicks = backingLinearScale.ticks(m);\r\n\t\tconst ticksMap = map();\r\n\r\n\t\tconst [domainStart, domainEnd] = backingLinearScale.domain();\r\n\r\n\t\tconst start = head(index) ? Math.max(Math.ceil(domainStart), head(index).index) + Math.abs(head(index).index) : 0;\r\n\t\tconst end = last(index) ? Math.min(Math.floor(domainEnd), last(index).index) + Math.abs(head(index).index) : 0;\r\n\r\n\t\tif (Math.floor(domainEnd) > end) {\r\n\t\t\t// console.log(end, domainEnd, index);\r\n\t\t}\r\n\r\n\t\tconst desiredTickCount = Math.ceil((end - start) / (domainEnd - domainStart) * backingTicks.length);\r\n\r\n\t\tfor (let i = MAX_LEVEL; i >= 0; i--) {\r\n\t\t\tconst ticksAtLevel = ticksMap.get(i);\r\n\t\t\tconst temp = isNotDefined(ticksAtLevel)\r\n\t\t\t\t? []\r\n\t\t\t\t: ticksAtLevel.slice();\r\n\r\n\t\t\tfor (let j = start; j <= end; j++) {\r\n\t\t\t\tif (isDefined(index[j]) && index[j].level === i) {\r\n\t\t\t\t\ttemp.push(index[j]);\r\n\t\t\t\t}\r\n\t\t\t}\r\n\r\n\t\t\tticksMap.set(i, temp);\r\n\t\t}\r\n\r\n\t\tlet unsortedTicks = [];\r\n\t\tfor (let i = MAX_LEVEL; i >= 0; i--) {\r\n\t\t\tif ((ticksMap.get(i).length + unsortedTicks.length) > desiredTickCount * 1.5) break;\r\n\t\t\tunsortedTicks = unsortedTicks.concat(ticksMap.get(i).map(d => d.index));\r\n\t\t}\r\n\r\n\t\tconst ticks = unsortedTicks.sort(ascending);\r\n\r\n\t\t// console.log(backingTicks.length, desiredTickCount, ticks, ticksMap);\r\n\r\n\t\tif (!flexTicks && end - start > ticks.length) {\r\n\t\t\tconst ticksSet = set(ticks);\r\n\r\n\t\t\tconst d = Math.abs(head(index).index);\r\n\r\n\t\t\t// ignore ticks within this distance\r\n\t\t\tconst distance = Math.ceil(\r\n\t\t\t\t(backingTicks.length > 0\r\n\t\t\t\t\t? (last(backingTicks) - head(backingTicks)) / (backingTicks.length) / 4\r\n\t\t\t\t\t: 1) * 1.5);\r\n\r\n\t\t\tfor (let i = 0; i < ticks.length - 1; i++) {\r\n\t\t\t\tfor (let j = i + 1; j < ticks.length; j++) {\r\n\t\t\t\t\tif (ticks[j] - ticks[i] <= distance) {\r\n\t\t\t\t\t\tticksSet.remove(index[ticks[i] + d].level >= index[ticks[j] + d].level ? ticks[j] : ticks[i]);\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t}\r\n\r\n\t\t\tconst tickValues = ticksSet.values().map(d => parseInt(d, 10));\r\n\r\n\t\t\t// console.log(ticks.length, tickValues, level);\r\n\t\t\t// console.log(ticks, tickValues, distance);\r\n\r\n\t\t\treturn tickValues;\r\n\t\t}\r\n\r\n\t\treturn ticks;\r\n\t};\r\n\tscale.tickFormat = function() {\r\n\t\treturn function(x) {\r\n\t\t\tconst d = Math.abs(head(index).index);\r\n\t\t\tconst { format, date } = index[Math.floor(x + d)];\r\n\t\t\treturn format(date);\r\n\t\t};\r\n\t};\r\n\tscale.value = function(x) {\r\n\t\tconst d = Math.abs(head(index).index);\r\n\t\tif (isDefined(index[Math.floor(x + d)])) {\r\n\t\t\tconst { date } = index[Math.floor(x + d)];\r\n\t\t\treturn date;\r\n\t\t}\r\n\t};\r\n\tscale.nice = function(m) {\r\n\t\tbackingLinearScale.nice(m);\r\n\t\treturn scale;\r\n\t};\r\n\tscale.index = function(x) {\r\n\t\tif (!arguments.length) return index;\r\n\t\tindex = x;\r\n\t\treturn scale;\r\n\t};\r\n\tscale.copy = function() {\r\n\t\treturn financeDiscontinuousScale(index, futureProvider, backingLinearScale.copy());\r\n\t};\r\n\treturn scale;\r\n}","\r\n\r\nimport { timeFormat, timeFormatDefaultLocale } from \"d3-time-format\";\r\n// import { map as d3Map } from \"d3-collection\";\r\n\r\nimport financeDiscontinuousScale from \"./financeDiscontinuousScale\";\r\nimport { slidingWindow, zipper, identity, isNotDefined } from \"../utils\";\r\nimport { defaultFormatters, levelDefinition } from \"./levels\";\r\n\r\nfunction evaluateLevel(d, date, i, formatters) {\r\n\treturn levelDefinition\r\n\t\t.map((eachLevel, idx) => {\r\n\t\t\treturn {\r\n\t\t\t\tlevel: levelDefinition.length - idx - 1,\r\n\t\t\t\tformat: formatters[eachLevel(d, date, i)]\r\n\t\t\t};\r\n\t\t})\r\n\t\t.find(l => !!l.format);\r\n}\r\n\r\nconst discontinuousIndexCalculator = slidingWindow()\r\n\t.windowSize(2)\r\n\t.undefinedValue((d, idx, { initialIndex, formatters }) => {\r\n\t\tconst i = initialIndex;\r\n\t\tconst row = {\r\n\t\t\tdate: d.getTime(),\r\n\t\t\tstartOf30Seconds: false,\r\n\t\t\tstartOfMinute: false,\r\n\t\t\tstartOf5Minutes: false,\r\n\t\t\tstartOf15Minutes: false,\r\n\t\t\tstartOf30Minutes: false,\r\n\t\t\tstartOfHour: false,\r\n\t\t\tstartOfEighthOfADay: false,\r\n\t\t\tstartOfQuarterDay: false,\r\n\t\t\tstartOfHalfDay: false,\r\n\t\t\tstartOfDay: true,\r\n\t\t\tstartOfWeek: false,\r\n\t\t\tstartOfMonth: false,\r\n\t\t\tstartOfQuarter: false,\r\n\t\t\tstartOfYear: false,\r\n\t\t};\r\n\t\tconst level = evaluateLevel(row, d, i, formatters);\r\n\t\treturn { ...row, index: i, ...level };\r\n\t});\r\n\r\nconst discontinuousIndexCalculatorLocalTime = discontinuousIndexCalculator\r\n\t.accumulator(([prevDate, nowDate], i, idx, { initialIndex, formatters }) => {\r\n\t\tconst startOf30Seconds = nowDate.getSeconds() % 30 === 0;\r\n\r\n\t\tconst startOfMinute = nowDate.getMinutes() !== prevDate.getMinutes();\r\n\t\tconst startOf5Minutes = startOfMinute && nowDate.getMinutes() % 5 <= prevDate.getMinutes() % 5;\r\n\t\tconst startOf15Minutes = startOfMinute && nowDate.getMinutes() % 15 <= prevDate.getMinutes() % 15;\r\n\t\tconst startOf30Minutes = startOfMinute && nowDate.getMinutes() % 30 <= prevDate.getMinutes() % 30;\r\n\r\n\t\tconst startOfHour = nowDate.getHours() !== prevDate.getHours();\r\n\r\n\t\tconst startOfEighthOfADay = startOfHour && nowDate.getHours() % 3 === 0;\r\n\t\tconst startOfQuarterDay = startOfHour && nowDate.getHours() % 6 === 0;\r\n\t\tconst startOfHalfDay = startOfHour && nowDate.getHours() % 12 === 0;\r\n\r\n\t\tconst startOfDay = nowDate.getDay() !== prevDate.getDay();\r\n\t\t// According to ISO calendar\r\n\t\t// Sunday = 0, Monday = 1, ... Saturday = 6\r\n\t\t// day of week of today < day of week of yesterday then today is start of week\r\n\t\tconst startOfWeek = nowDate.getDay() < prevDate.getDay();\r\n\t\t// month of today != month of yesterday then today is start of month\r\n\t\tconst startOfMonth = nowDate.getMonth() !== prevDate.getMonth();\r\n\t\t// if start of month and month % 3 === 0 then it is start of quarter\r\n\t\tconst startOfQuarter = startOfMonth && (nowDate.getMonth() % 3 <= prevDate.getMonth() % 3);\r\n\t\t// year of today != year of yesterday then today is start of year\r\n\t\tconst startOfYear = nowDate.getFullYear() !== prevDate.getFullYear();\r\n\r\n\t\tconst row = {\r\n\t\t\tdate: nowDate.getTime(),\r\n\t\t\tstartOf30Seconds,\r\n\t\t\tstartOfMinute,\r\n\t\t\tstartOf5Minutes,\r\n\t\t\tstartOf15Minutes,\r\n\t\t\tstartOf30Minutes,\r\n\t\t\tstartOfHour,\r\n\t\t\tstartOfEighthOfADay,\r\n\t\t\tstartOfQuarterDay,\r\n\t\t\tstartOfHalfDay,\r\n\t\t\tstartOfDay,\r\n\t\t\tstartOfWeek,\r\n\t\t\tstartOfMonth,\r\n\t\t\tstartOfQuarter,\r\n\t\t\tstartOfYear,\r\n\t\t};\r\n\t\tconst level = evaluateLevel(row, nowDate, i, formatters);\r\n\t\tif (level == null) {\r\n\t\t\tconsole.log(row);\r\n\t\t}\r\n\t\treturn { ...row, index: i + initialIndex, ...level };\r\n\t});\r\n\r\nfunction doStuff(realDateAccessor, inputDateAccessor, initialIndex, formatters) {\r\n\treturn function(data) {\r\n\t\tconst dateAccessor = realDateAccessor(inputDateAccessor);\r\n\t\tconst calculate = discontinuousIndexCalculatorLocalTime\r\n\t\t\t.source(dateAccessor)\r\n\t\t\t.misc({ initialIndex, formatters });\r\n\r\n\t\tconst index = calculate(data).map(each => {\r\n\t\t\tconst { format } = each;\r\n\t\t\treturn {\r\n\t\t\t\t// ...each,\r\n\t\t\t\tindex: each.index,\r\n\t\t\t\tlevel: each.level,\r\n\t\t\t\tdate: new Date(each.date),\r\n\t\t\t\tformat: timeFormat(format),\r\n\t\t\t};\r\n\t\t});\r\n\t\t/*\r\n\t\tvar map = d3Map();\r\n\t\tfor (var i = 0; i < data.length - 1; i++) {\r\n\r\n\t\t\tvar nextDate = dateAccessor(data[i + 1]);\r\n\t\t\tvar nowDate = dateAccessor(data[i]);\r\n\t\t\tvar diff = nextDate - nowDate;\r\n\r\n\t\t\tif (map.has(diff)) {\r\n\t\t\t\tvar count = parseInt(map.get(diff), 10) + 1;\r\n\t\t\t\tmap.set(diff, count);\r\n\t\t\t} else {\r\n\t\t\t\tmap.set(diff, 1);\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\tvar entries = map.entries().sort((a, b) => a.value < b.value);\r\n\r\n\t\t// For Renko/p&f\r\n\r\n\t\tvar interval = entries[0].value === 1\r\n\t\t\t? Math.round((dateAccessor(last(data)) - dateAccessor(head(data))) / data.length)\r\n\t\t\t: parseInt(entries[0].key, 10); */\r\n\r\n\t\t// return { index, interval };\r\n\t\treturn { index };\r\n\t};\r\n}\r\n\r\nexport function discontinuousTimeScaleProviderBuilder() {\r\n\tlet initialIndex = 0, realDateAccessor = identity;\r\n\tlet inputDateAccessor = d => d.date,\r\n\t\tindexAccessor = d => d.idx,\r\n\t\tindexMutator = (d, idx) => ({ ...d, idx }),\r\n\t\twithIndex;\r\n\r\n\tlet currentFormatters = defaultFormatters;\r\n\r\n\t// eslint-disable-next-line prefer-const\r\n\tlet discontinuousTimeScaleProvider = function(data) {\r\n\t\t/*\r\n\t\tconsole.warn(\"Are you sure you want to use a discontinuousTimeScale?\"\r\n\t\t\t+ \" Use this only if you have discontinuous data which\"\r\n\t\t\t+ \" needs to be displayed as continuous.\"\r\n\t\t\t+ \" If you have continuous data use a d3 scale like\"\r\n\t\t\t+ \" `d3.scaleTime`\"\r\n\t\t);\r\n\t\t*/\r\n\r\n\t\tlet index = withIndex;\r\n\r\n\t\tif (isNotDefined(index)) {\r\n\t\t\tconst response = doStuff(\r\n\t\t\t\trealDateAccessor,\r\n\t\t\t\tinputDateAccessor,\r\n\t\t\t\tinitialIndex,\r\n\t\t\t\tcurrentFormatters\r\n\t\t\t)(data);\r\n\r\n\t\t\tindex = response.index;\r\n\t\t}\r\n\t\t// console.log(interval, entries[0].key);\r\n\r\n\t\tconst inputIndex = index;\r\n\t\tconst xScale = financeDiscontinuousScale(\r\n\t\t\tinputIndex,\r\n\t\t);\r\n\r\n\t\tconst mergedData = zipper()\r\n\t\t\t.combine(indexMutator);\r\n\r\n\t\tconst finalData = mergedData(data, inputIndex);\r\n\r\n\t\treturn {\r\n\t\t\tdata: finalData,\r\n\t\t\txScale,\r\n\t\t\txAccessor: d => d && indexAccessor(d).index,\r\n\t\t\tdisplayXAccessor: realDateAccessor(inputDateAccessor),\r\n\t\t};\r\n\t};\r\n\r\n\tdiscontinuousTimeScaleProvider.initialIndex = function(x) {\r\n\t\tif (!arguments.length) {\r\n\t\t\treturn initialIndex;\r\n\t\t}\r\n\t\tinitialIndex = x;\r\n\t\treturn discontinuousTimeScaleProvider;\r\n\t};\r\n\tdiscontinuousTimeScaleProvider.inputDateAccessor = function(x) {\r\n\t\tif (!arguments.length) {\r\n\t\t\treturn inputDateAccessor;\r\n\t\t}\r\n\t\tinputDateAccessor = x;\r\n\t\treturn discontinuousTimeScaleProvider;\r\n\t};\r\n\tdiscontinuousTimeScaleProvider.indexAccessor = function(x) {\r\n\t\tif (!arguments.length) {\r\n\t\t\treturn indexAccessor;\r\n\t\t}\r\n\t\tindexAccessor = x;\r\n\t\treturn discontinuousTimeScaleProvider;\r\n\t};\r\n\tdiscontinuousTimeScaleProvider.indexMutator = function(x) {\r\n\t\tif (!arguments.length) {\r\n\t\t\treturn indexMutator;\r\n\t\t}\r\n\t\tindexMutator = x;\r\n\t\treturn discontinuousTimeScaleProvider;\r\n\t};\r\n\tdiscontinuousTimeScaleProvider.withIndex = function(x) {\r\n\t\tif (!arguments.length) {\r\n\t\t\treturn withIndex;\r\n\t\t}\r\n\t\twithIndex = x;\r\n\t\treturn discontinuousTimeScaleProvider;\r\n\t};\r\n\tdiscontinuousTimeScaleProvider.utc = function() {\r\n\t\trealDateAccessor = dateAccessor => d => {\r\n\t\t\tconst date = dateAccessor(d);\r\n\t\t\t// The getTimezoneOffset() method returns the time-zone offset from UTC, in minutes, for the current locale.\r\n\t\t\tconst offsetInMillis = date.getTimezoneOffset() * 60 * 1000;\r\n\t\t\treturn new Date(date.getTime() + offsetInMillis);\r\n\t\t};\r\n\t\treturn discontinuousTimeScaleProvider;\r\n\t};\r\n\tdiscontinuousTimeScaleProvider.setLocale = function(locale, formatters = null) {\r\n\t\tif (locale) {\r\n\t\t\ttimeFormatDefaultLocale(locale);\r\n\t\t}\r\n\t\tif (formatters) {\r\n\t\t\tcurrentFormatters = formatters;\r\n\t\t}\r\n\t\treturn discontinuousTimeScaleProvider;\r\n\t};\r\n\r\n\tdiscontinuousTimeScaleProvider.indexCalculator = function() {\r\n\t\treturn doStuff(realDateAccessor, inputDateAccessor, initialIndex, currentFormatters);\r\n\t};\r\n\r\n\treturn discontinuousTimeScaleProvider;\r\n}\r\n\r\n\r\n\r\n/* discontinuousTimeScaleProvider.utc = function(data,\r\n\t\tdateAccessor,\r\n\t\tindexAccessor,\r\n\t\tindexMutator) {\r\n\tvar utcDateAccessor = d => {\r\n\t\tvar date = dateAccessor(d);\r\n\t\t// The getTimezoneOffset() method returns the time-zone offset from UTC, in minutes, for the current locale.\r\n\t\tvar offsetInMillis = date.getTimezoneOffset() * 60 * 1000;\r\n\t\treturn new Date(date.getTime() + offsetInMillis);\r\n\t};\r\n\treturn discontinuousTimeScaleProvider(data, utcDateAccessor, indexAccessor, indexMutator);\r\n};*/\r\n\r\nexport default discontinuousTimeScaleProviderBuilder();\r\n","import {\r\n\tisNotDefined,\r\n\tisDefined,\r\n\tmapObject,\r\n\tfind,\r\n} from \"../utils\";\r\n\r\nexport function getValueFromOverride(override, index, key, defaultValue) {\r\n\tif (isDefined(override) && override.index === index)\r\n\t\treturn override[key];\r\n\treturn defaultValue;\r\n}\r\n\r\nexport function terminate() {\r\n\tthis.setState({\r\n\t\tcurrent: null,\r\n\t\toverride: null,\r\n\t});\r\n}\r\n\r\nexport function saveNodeType(type) {\r\n\treturn node => {\r\n\t\tif (isNotDefined(node) && isDefined(this.nodes[type])) {\r\n\t\t\tdelete this.nodes[type];\r\n\t\t} else {\r\n\t\t\tthis.nodes[type] = node;\r\n\t\t}\r\n\t\t// console.error(this.nodes)\r\n\t};\r\n}\r\nexport function isHoverForInteractiveType(interactiveType) {\r\n\treturn function(moreProps) { // this has to be function as it is bound to this\r\n\r\n\t\tif (isDefined(this.nodes)) {\r\n\t\t\tconst selecedNodes = this.nodes\r\n\t\t\t\t.map(node => node.isHover(moreProps));\r\n\t\t\tconst interactive = this.props[interactiveType].map((t, idx) => {\r\n\t\t\t\treturn {\r\n\t\t\t\t\t...t,\r\n\t\t\t\t\tselected: selecedNodes[idx]\r\n\t\t\t\t};\r\n\t\t\t});\r\n\t\t\treturn interactive;\r\n\t\t}\r\n\t};\r\n}\r\n\r\nexport function isHover(moreProps) {\r\n\tconst hovering = mapObject(this.nodes, node => node.isHover(moreProps))\r\n\t\t.reduce((a, b) => {\r\n\t\t\treturn a || b;\r\n\t\t});\r\n\treturn hovering;\r\n}\r\n\r\nfunction getMouseXY(moreProps, [ox, oy]) {\r\n\tif (Array.isArray(moreProps.mouseXY)) {\r\n\t\tconst { mouseXY: [x, y] } = moreProps;\r\n\t\tconst mouseXY = [\r\n\t\t\tx - ox,\r\n\t\t\ty - oy\r\n\t\t];\r\n\t\treturn mouseXY;\r\n\t}\r\n\treturn moreProps.mouseXY;\r\n}\r\n\r\nexport function getMorePropsForChart(moreProps, chartId) {\r\n\tconst { chartConfig: chartConfigList } = moreProps;\r\n\tconst chartConfig = find(chartConfigList, each => each.id === chartId);\r\n\r\n\tconst { origin } = chartConfig;\r\n\tconst mouseXY = getMouseXY(moreProps, origin);\r\n\treturn {\r\n\t\t...moreProps,\r\n\t\tchartConfig,\r\n\t\tmouseXY,\r\n\t};\r\n}\r\n\r\nexport function getSelected(interactives) {\r\n\tconst selected = interactives\r\n\t\t.map(each => {\r\n\t\t\tconst objects = each.objects.filter(obj => {\r\n\t\t\t\treturn obj.selected;\r\n\t\t\t});\r\n\t\t\treturn {\r\n\t\t\t\t...each,\r\n\t\t\t\tobjects,\r\n\t\t\t};\r\n\t\t})\r\n\t\t.filter(each => each.objects.length > 0);\r\n\treturn selected;\r\n}\r\n","import React, { Component } from \"react\";\r\nimport PropTypes from \"prop-types\";\r\n\r\nimport GenericChartComponent from \"../../GenericChartComponent\";\r\nimport { getMouseCanvas } from \"../../GenericComponent\";\r\n\r\nimport {\r\n\tisDefined,\r\n\tnoop,\r\n\thexToRGBA,\r\n\tgetStrokeDasharray,\r\n\tstrokeDashTypes,\r\n} from \"../../utils\";\r\n\r\nclass StraightLine extends Component {\r\n\tconstructor(props) {\r\n\t\tsuper(props);\r\n\r\n\t\tthis.renderSVG = this.renderSVG.bind(this);\r\n\t\tthis.drawOnCanvas = this.drawOnCanvas.bind(this);\r\n\t\tthis.isHover = this.isHover.bind(this);\r\n\t}\r\n\tisHover(moreProps) {\r\n\t\tconst { tolerance, onHover } = this.props;\r\n\r\n\t\tif (isDefined(onHover)) {\r\n\t\t\tconst { x1Value, x2Value, y1Value, y2Value, type } = this.props;\r\n\t\t\tconst { mouseXY, xScale } = moreProps;\r\n\t\t\tconst { chartConfig: { yScale } } = moreProps;\r\n\r\n\t\t\tconst hovering = isHovering({\r\n\t\t\t\tx1Value, y1Value,\r\n\t\t\t\tx2Value, y2Value,\r\n\t\t\t\tmouseXY,\r\n\t\t\t\ttype,\r\n\t\t\t\ttolerance,\r\n\t\t\t\txScale,\r\n\t\t\t\tyScale,\r\n\t\t\t});\r\n\r\n\t\t\t// console.log(\"hovering ->\", hovering);\r\n\r\n\t\t\treturn hovering;\r\n\t\t}\r\n\t\treturn false;\r\n\t}\r\n\tdrawOnCanvas(ctx, moreProps) {\r\n\t\tconst { stroke, strokeWidth, strokeOpacity, strokeDasharray } = this.props;\r\n\t\tconst { x1, y1, x2, y2 } = helper(this.props, moreProps);\r\n\r\n\t\tctx.lineWidth = strokeWidth;\r\n\t\tctx.strokeStyle = hexToRGBA(stroke, strokeOpacity);\r\n\t\tctx.setLineDash(getStrokeDasharray(strokeDasharray).split(\",\"));\r\n\r\n\t\tctx.beginPath();\r\n\t\tctx.moveTo(x1, y1);\r\n\t\tctx.lineTo(x2, y2);\r\n\t\tctx.stroke();\r\n\t}\r\n\trenderSVG(moreProps) {\r\n\t\tconst { stroke, strokeWidth, strokeOpacity, strokeDasharray } = this.props;\r\n\r\n\t\tconst lineWidth = strokeWidth;\r\n\r\n\t\tconst { x1, y1, x2, y2 } = helper(this.props, moreProps);\r\n\t\treturn (\r\n\t\t\t\r\n\t\t);\r\n\t}\r\n\trender() {\r\n\t\tconst { selected, interactiveCursorClass } = this.props;\r\n\t\tconst { onDragStart, onDrag, onDragComplete, onHover, onUnHover } = this.props;\r\n\r\n\t\treturn ;\r\n\t}\r\n}\r\n\r\nexport function isHovering2(start, end, [mouseX, mouseY], tolerance) {\r\n\tconst m = getSlope(start, end);\r\n\r\n\tif (isDefined(m)) {\r\n\t\tconst b = getYIntercept(m, end);\r\n\t\tconst y = m * mouseX + b;\r\n\t\treturn (mouseY < y + tolerance)\r\n\t\t\t&& mouseY > (y - tolerance)\r\n\t\t\t&& mouseX > Math.min(start[0], end[0]) - tolerance\r\n\t\t\t&& mouseX < Math.max(start[0], end[0]) + tolerance;\r\n\t} else {\r\n\t\treturn mouseY >= Math.min(start[1], end[1])\r\n\t\t\t&& mouseY <= Math.max(start[1], end[1])\r\n\t\t\t&& mouseX < start[0] + tolerance\r\n\t\t\t&& mouseX > start[0] - tolerance;\r\n\t}\r\n}\r\n\r\nexport function isHovering({\r\n\tx1Value, y1Value,\r\n\tx2Value, y2Value,\r\n\tmouseXY,\r\n\ttype,\r\n\ttolerance,\r\n\txScale,\r\n\tyScale,\r\n}) {\r\n\r\n\tconst line = generateLine({\r\n\t\ttype,\r\n\t\tstart: [x1Value, y1Value],\r\n\t\tend: [x2Value, y2Value],\r\n\t\txScale,\r\n\t\tyScale,\r\n\t});\r\n\r\n\tconst start = [xScale(line.x1), yScale(line.y1)];\r\n\tconst end = [xScale(line.x2), yScale(line.y2)];\r\n\r\n\tconst m = getSlope(start, end);\r\n\tconst [mouseX, mouseY] = mouseXY;\r\n\r\n\tif (isDefined(m)) {\r\n\t\tconst b = getYIntercept(m, end);\r\n\t\tconst y = m * mouseX + b;\r\n\r\n\t\treturn mouseY < (y + tolerance)\r\n\t\t\t&& mouseY > (y - tolerance)\r\n\t\t\t&& mouseX > Math.min(start[0], end[0]) - tolerance\r\n\t\t\t&& mouseX < Math.max(start[0], end[0]) + tolerance;\r\n\t} else {\r\n\t\treturn mouseY >= Math.min(start[1], end[1])\r\n\t\t\t&& mouseY <= Math.max(start[1], end[1])\r\n\t\t\t&& mouseX < start[0] + tolerance\r\n\t\t\t&& mouseX > start[0] - tolerance;\r\n\t}\r\n}\r\n\r\nfunction helper(props, moreProps) {\r\n\tconst { x1Value, x2Value, y1Value, y2Value, type } = props;\r\n\r\n\tconst { xScale, chartConfig: { yScale } } = moreProps;\r\n\r\n\tconst modLine = generateLine({\r\n\t\ttype,\r\n\t\tstart: [x1Value, y1Value],\r\n\t\tend: [x2Value, y2Value],\r\n\t\txScale,\r\n\t\tyScale,\r\n\t});\r\n\r\n\tconst x1 = xScale(modLine.x1);\r\n\tconst y1 = yScale(modLine.y1);\r\n\tconst x2 = xScale(modLine.x2);\r\n\tconst y2 = yScale(modLine.y2);\r\n\r\n\treturn {\r\n\t\tx1, y1, x2, y2\r\n\t};\r\n}\r\n\r\nexport function getSlope(start, end) {\r\n\tconst m /* slope */ = end[0] === start[0]\r\n\t\t? undefined\r\n\t\t: (end[1] - start[1]) / (end[0] - start[0]);\r\n\treturn m;\r\n}\r\nexport function getYIntercept(m, end) {\r\n\tconst b /* y intercept */ = -1 * m * end[0] + end[1];\r\n\treturn b;\r\n}\r\n\r\nexport function generateLine({\r\n\ttype, start, end, xScale, yScale\r\n}) {\r\n\tconst m /* slope */ = getSlope(start, end);\r\n\t// console.log(end[0] - start[0], m)\r\n\tconst b /* y intercept */ = getYIntercept(m, start);\r\n\r\n\tswitch (type) {\r\n\t\tcase \"XLINE\":\r\n\t\t\treturn getXLineCoordinates({\r\n\t\t\t\ttype, start, end, xScale, yScale, m, b\r\n\t\t\t});\r\n\t\tcase \"RAY\":\r\n\t\t\treturn getRayCoordinates({\r\n\t\t\t\ttype, start, end, xScale, yScale, m, b\r\n\t\t\t});\r\n\t\tcase \"LINE\":\r\n\t\t\treturn getLineCoordinates({\r\n\t\t\t\ttype, start, end, xScale, yScale, m, b\r\n\t\t\t});\r\n\t}\r\n}\r\n\r\nfunction getXLineCoordinates({\r\n\tstart, end, xScale, yScale, m, b\r\n}) {\r\n\tconst [xBegin, xFinish] = xScale.domain();\r\n\tconst [yBegin, yFinish] = yScale.domain();\r\n\r\n\tif (end[0] === start[0]) {\r\n\t\treturn {\r\n\t\t\tx1: end[0], y1: yBegin,\r\n\t\t\tx2: end[0], y2: yFinish,\r\n\t\t};\r\n\t}\r\n\tconst [x1, x2] = end[0] > start[0]\r\n\t\t? [xBegin, xFinish]\r\n\t\t: [xFinish, xBegin];\r\n\r\n\treturn {\r\n\t\tx1, y1: m * x1 + b,\r\n\t\tx2, y2: m * x2 + b\r\n\t};\r\n}\r\n\r\nfunction getRayCoordinates({\r\n\tstart, end, xScale, yScale, m, b\r\n}) {\r\n\tconst [xBegin, xFinish] = xScale.domain();\r\n\tconst [yBegin, yFinish] = yScale.domain();\r\n\r\n\tconst x1 = start[0];\r\n\tif (end[0] === start[0]) {\r\n\t\treturn {\r\n\t\t\tx1,\r\n\t\t\ty1: start[1],\r\n\t\t\tx2: x1,\r\n\t\t\ty2: end[1] > start[1] ? yFinish : yBegin,\r\n\t\t};\r\n\t}\r\n\r\n\tconst x2 = end[0] > start[0]\r\n\t\t? xFinish\r\n\t\t: xBegin;\r\n\r\n\treturn {\r\n\t\tx1, y1: m * x1 + b,\r\n\t\tx2, y2: m * x2 + b\r\n\t};\r\n}\r\n\r\nfunction getLineCoordinates({\r\n\tstart, end\r\n}) {\r\n\r\n\tconst [x1, y1] = start;\r\n\tconst [x2, y2] = end;\r\n\tif (end[0] === start[0]) {\r\n\t\treturn {\r\n\t\t\tx1,\r\n\t\t\ty1: start[1],\r\n\t\t\tx2: x1,\r\n\t\t\ty2: end[1],\r\n\t\t};\r\n\t}\r\n\r\n\treturn {\r\n\t\tx1, y1,\r\n\t\tx2, y2,\r\n\t};\r\n}\r\n\r\nStraightLine.propTypes = {\r\n\tx1Value: PropTypes.any.isRequired,\r\n\tx2Value: PropTypes.any.isRequired,\r\n\ty1Value: PropTypes.any.isRequired,\r\n\ty2Value: PropTypes.any.isRequired,\r\n\r\n\tinteractiveCursorClass: PropTypes.string,\r\n\tstroke: PropTypes.string.isRequired,\r\n\tstrokeWidth: PropTypes.number.isRequired,\r\n\tstrokeOpacity: PropTypes.number.isRequired,\r\n\tstrokeDasharray: PropTypes.oneOf(strokeDashTypes),\r\n\r\n\ttype: PropTypes.oneOf([\r\n\t\t\"XLINE\", // extends from -Infinity to +Infinity\r\n\t\t\"RAY\", // extends to +/-Infinity in one direction\r\n\t\t\"LINE\", // extends between the set bounds\r\n\t]).isRequired,\r\n\r\n\tonEdge1Drag: PropTypes.func.isRequired,\r\n\tonEdge2Drag: PropTypes.func.isRequired,\r\n\tonDragStart: PropTypes.func.isRequired,\r\n\tonDrag: PropTypes.func.isRequired,\r\n\tonDragComplete: PropTypes.func.isRequired,\r\n\tonHover: PropTypes.func,\r\n\tonUnHover: PropTypes.func,\r\n\r\n\tdefaultClassName: PropTypes.string,\r\n\r\n\tr: PropTypes.number.isRequired,\r\n\tedgeFill: PropTypes.string.isRequired,\r\n\tedgeStroke: PropTypes.string.isRequired,\r\n\tedgeStrokeWidth: PropTypes.number.isRequired,\r\n\twithEdge: PropTypes.bool.isRequired,\r\n\tchildren: PropTypes.func.isRequired,\r\n\ttolerance: PropTypes.number.isRequired,\r\n\tselected: PropTypes.bool.isRequired,\r\n};\r\n\r\nStraightLine.defaultProps = {\r\n\tonEdge1Drag: noop,\r\n\tonEdge2Drag: noop,\r\n\tonDragStart: noop,\r\n\tonDrag: noop,\r\n\tonDragComplete: noop,\r\n\r\n\tedgeStrokeWidth: 3,\r\n\tedgeStroke: \"#000000\",\r\n\tedgeFill: \"#FFFFFF\",\r\n\tr: 10,\r\n\twithEdge: false,\r\n\tstrokeWidth: 1,\r\n\tstrokeDasharray: \"Solid\",\r\n\tchildren: noop,\r\n\ttolerance: 7,\r\n\tselected: false,\r\n};\r\n\r\nexport default StraightLine;\r\n","import React, { Component } from \"react\";\r\nimport PropTypes from \"prop-types\";\r\n\r\nimport GenericChartComponent from \"../../GenericChartComponent\";\r\nimport { getMouseCanvas } from \"../../GenericComponent\";\r\n\r\nimport { isDefined, noop, hexToRGBA } from \"../../utils\";\r\n\r\nclass ClickableCircle extends Component {\r\n\tconstructor(props) {\r\n\t\tsuper(props);\r\n\t\tthis.saveNode = this.saveNode.bind(this);\r\n\t\tthis.renderSVG = this.renderSVG.bind(this);\r\n\t\tthis.drawOnCanvas = this.drawOnCanvas.bind(this);\r\n\t\tthis.isHover = this.isHover.bind(this);\r\n\t}\r\n\tsaveNode(node) {\r\n\t\tthis.node = node;\r\n\t}\r\n\tisHover(moreProps) {\r\n\t\tconst { mouseXY } = moreProps;\r\n\t\t// const { r } = this.props;\r\n\t\tconst r = this.props.r + 7;\r\n\t\tconst [x, y] = helper(this.props, moreProps);\r\n\r\n\t\tconst [mx, my] = mouseXY;\r\n\t\tconst hover = (x - r) < mx && mx < (x + r)\r\n\t\t\t&& (y - r) < my && my < (y + r);\r\n\r\n\t\t// console.log(\"hover->\", hover);\r\n\t\treturn hover;\r\n\t}\r\n\tdrawOnCanvas(ctx, moreProps) {\r\n\t\tconst { stroke, strokeWidth, fill } = this.props;\r\n\t\tconst { fillOpacity, strokeOpacity } = this.props;\r\n\t\tconst { r } = this.props;\r\n\r\n\t\tconst [x, y] = helper(this.props, moreProps);\r\n\r\n\t\tctx.lineWidth = strokeWidth;\r\n\t\tctx.fillStyle = hexToRGBA(fill, fillOpacity);\r\n\t\tctx.strokeStyle = hexToRGBA(stroke, strokeOpacity);\r\n\r\n\t\tctx.beginPath();\r\n\t\tctx.arc(x, y, r, 0, 2 * Math.PI, false);\r\n\t\tctx.fill();\r\n\t\tctx.stroke();\r\n\t}\r\n\trenderSVG(moreProps) {\r\n\t\tconst { stroke, strokeWidth, fill } = this.props;\r\n\t\tconst { fillOpacity, strokeOpacity } = this.props;\r\n\t\tconst { r } = this.props;\r\n\r\n\t\tconst [x, y] = helper(this.props, moreProps);\r\n\r\n\t\treturn ;\r\n\t}\r\n\trender() {\r\n\t\tconst { interactiveCursorClass } = this.props;\r\n\t\tconst { show } = this.props;\r\n\t\tconst { onDragStart, onDrag, onDragComplete } = this.props;\r\n\r\n\t\treturn show\r\n\t\t\t? \r\n\t\t\t: null;\r\n\t}\r\n}\r\n\r\nfunction helper(props, moreProps) {\r\n\tconst { xyProvider, cx, cy } = props;\r\n\r\n\tif (isDefined(xyProvider)) {\r\n\t\treturn xyProvider(moreProps);\r\n\t}\r\n\r\n\tconst { xScale, chartConfig: { yScale } } = moreProps;\r\n\r\n\tconst x = xScale(cx);\r\n\tconst y = yScale(cy);\r\n\treturn [x, y];\r\n\r\n}\r\nClickableCircle.propTypes = {\r\n\txyProvider: PropTypes.func,\r\n\r\n\tonDragStart: PropTypes.func.isRequired,\r\n\tonDrag: PropTypes.func.isRequired,\r\n\tonDragComplete: PropTypes.func.isRequired,\r\n\tstrokeWidth: PropTypes.number.isRequired,\r\n\tstroke: PropTypes.string.isRequired,\r\n\tfill: PropTypes.string.isRequired,\r\n\tr: PropTypes.number.isRequired,\r\n\r\n\tcx: PropTypes.number,\r\n\tcy: PropTypes.number,\r\n\r\n\tclassName: PropTypes.string.isRequired,\r\n\tshow: PropTypes.bool.isRequired,\r\n\tstrokeOpacity: PropTypes.number.isRequired,\r\n\tfillOpacity: PropTypes.number.isRequired,\r\n\tinteractiveCursorClass: PropTypes.string,\r\n};\r\n\r\n\r\nClickableCircle.defaultProps = {\r\n\tclassName: \"react-stockcharts-interactive-line-edge\",\r\n\tonDragStart: noop,\r\n\tonDrag: noop,\r\n\tonDragComplete: noop,\r\n\tonMove: noop,\r\n\tshow: false,\r\n\tfillOpacity: 1,\r\n\tstrokeOpacity: 1,\r\n};\r\n\r\nexport default ClickableCircle;\r\n","import React, { Component } from \"react\";\r\nimport PropTypes from \"prop-types\";\r\n\r\nimport GenericChartComponent from \"../../GenericChartComponent\";\r\nimport { isDefined } from \"../../utils\";\r\n\r\nconst PADDING = 10;\r\nconst MIN_WIDTH = PADDING;\r\n\r\nclass HoverTextNearMouse extends Component {\r\n\tconstructor(props) {\r\n\t\tsuper(props);\r\n\r\n\t\tthis.state = {\r\n\t\t\ttextWidth: undefined,\r\n\t\t\ttextHeight: undefined,\r\n\t\t};\r\n\r\n\t\tthis.saveNode = this.saveNode.bind(this);\r\n\t\tthis.updateTextSize = this.updateTextSize.bind(this);\r\n\t\tthis.renderSVG = this.renderSVG.bind(this);\r\n\t}\r\n\tsaveNode(node) {\r\n\t\tthis.textNode = node;\r\n\t}\r\n\r\n\tupdateTextSize() {\r\n\t\tconst { bgWidth, bgHeight } = this.props;\r\n\t\tif (bgWidth === \"auto\" || bgHeight === \"auto\") {\r\n\t\t\tconst textNode = this.textNode;\r\n\t\t\tif (textNode) {\r\n\t\t\t\tconst { width, height } = textNode.getBBox();\r\n\t\t\t\tif (this.state.textWidth !== width || this.state.textHeight !== height) {\r\n\t\t\t\t\tthis.setState({\r\n\t\t\t\t\t\ttextWidth: width,\r\n\t\t\t\t\t\ttextHeight: height\r\n\t\t\t\t\t});\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n\r\n\tcomponentDidMount() {\r\n\t\tthis.updateTextSize();\r\n\t}\r\n\r\n\tcomponentDidUpdate() {\r\n\t\tthis.updateTextSize();\r\n\t}\r\n\r\n\tgetBgWidth() {\r\n\t\tconst { bgWidth } = this.props;\r\n\t\tconst { textWidth } = this.state;\r\n\r\n\t\tif (bgWidth !== \"auto\") {\r\n\t\t\treturn bgWidth;\r\n\t\t} else if (textWidth !== undefined) {\r\n\t\t\treturn textWidth + PADDING;\r\n\t\t} else {\r\n\t\t\treturn MIN_WIDTH;\r\n\t\t}\r\n\t}\r\n\r\n\tgetBgHeight() {\r\n\t\tconst { bgHeight } = this.props;\r\n\t\tconst { textHeight } = this.state;\r\n\r\n\t\tif (bgHeight !== \"auto\") {\r\n\t\t\treturn bgHeight;\r\n\t\t} else if (textHeight !== undefined) {\r\n\t\t\treturn textHeight + PADDING;\r\n\t\t} else {\r\n\t\t\treturn MIN_WIDTH;\r\n\t\t}\r\n\t}\r\n\r\n\trenderSVG(moreProps) {\r\n\t\tconst {\r\n\t\t\tfontFamily,\r\n\t\t\tfontSize,\r\n\t\t\tfill,\r\n\t\t\tbgFill,\r\n\t\t\tbgOpacity,\r\n\t\t} = this.props;\r\n\r\n\t\t// console.log(moreProps)\r\n\t\tconst textMetaData = helper({\r\n\t\t\t...this.props,\r\n\t\t\tbgWidth: this.getBgWidth(),\r\n\t\t\tbgHeight: this.getBgHeight()\r\n\t\t}, moreProps);\r\n\r\n\t\tif (isDefined(textMetaData)) {\r\n\t\t\tconst { rect, text } = textMetaData;\r\n\t\t\treturn (\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t{text.text}\r\n\t\t\t\t\r\n\t\t\t);\r\n\t\t}\r\n\t}\r\n\trender() {\r\n\t\tconst { text } = this.props;\r\n\t\tif (text) {\r\n\t\t\treturn ;\r\n\t\t} else {\r\n\t\t\treturn null;\r\n\t\t}\r\n\t}\r\n}\r\n\r\nconst numberOrString = PropTypes.oneOfType([\r\n\tPropTypes.number,\r\n\tPropTypes.oneOf([\"auto\"]),\r\n]);\r\n\r\nHoverTextNearMouse.propTypes = {\r\n\tfontFamily: PropTypes.string.isRequired,\r\n\tfontSize: PropTypes.number.isRequired,\r\n\tfill: PropTypes.string.isRequired,\r\n\ttext: PropTypes.string.isRequired,\r\n\tbgFill: PropTypes.string.isRequired,\r\n\tbgOpacity: PropTypes.number.isRequired,\r\n\tbgWidth: numberOrString.isRequired,\r\n\tbgHeight: numberOrString.isRequired,\r\n\tshow: PropTypes.bool.isRequired,\r\n};\r\n\r\nHoverTextNearMouse.defaultProps = {\r\n\tfontFamily: \"Helvetica Neue, Helvetica, Arial, sans-serif\",\r\n\tfontSize: 12,\r\n\tfill: \"#000000\",\r\n\tbgFill: \"#FA9325\",\r\n\tbgOpacity: 0.5,\r\n};\r\n\r\nfunction helper(props, moreProps) {\r\n\tconst {\r\n\t\tshow,\r\n\t\tbgWidth,\r\n\t\tbgHeight,\r\n\t} = props;\r\n\r\n\tconst {\r\n\t\tmouseXY,\r\n\t\tchartConfig: { height, width },\r\n\t\tshow: mouseInsideCanvas\r\n\t} = moreProps;\r\n\r\n\tif (show && mouseInsideCanvas) {\r\n\t\tconst [x, y] = mouseXY;\r\n\r\n\t\tconst cx = x < width / 2\r\n\t\t\t? x + PADDING\r\n\t\t\t: x - bgWidth - PADDING;\r\n\r\n\t\tconst cy = y < height / 2\r\n\t\t\t? y + PADDING\r\n\t\t\t: y - bgHeight - PADDING;\r\n\r\n\t\tconst rect = {\r\n\t\t\tx: cx,\r\n\t\t\ty: cy,\r\n\t\t\twidth: bgWidth,\r\n\t\t\theight: bgHeight,\r\n\t\t};\r\n\r\n\t\tconst text = {\r\n\t\t\ttext: props.text,\r\n\t\t\tx: cx + PADDING / 2,\r\n\t\t\ty: cy + bgHeight / 2,\r\n\t\t};\r\n\r\n\t\treturn {\r\n\t\t\trect,\r\n\t\t\ttext\r\n\t\t};\r\n\t}\r\n}\r\n\r\nexport default HoverTextNearMouse;\r\n","import React, { Component } from \"react\";\r\nimport PropTypes from \"prop-types\";\r\n\r\nimport { ascending as d3Ascending } from \"d3-array\";\r\nimport { noop, strokeDashTypes } from \"../../utils\";\r\nimport { saveNodeType, isHover } from \"../utils\";\r\nimport { getXValue } from \"../../utils/ChartDataUtil\";\r\n\r\nimport StraightLine from \"../components/StraightLine\";\r\nimport ClickableCircle from \"../components/ClickableCircle\";\r\nimport HoverTextNearMouse from \"../components/HoverTextNearMouse\";\r\n\r\nclass EachTrendLine extends Component {\r\n\tconstructor(props) {\r\n\t\tsuper(props);\r\n\r\n\t\tthis.handleEdge1Drag = this.handleEdge1Drag.bind(this);\r\n\t\tthis.handleEdge2Drag = this.handleEdge2Drag.bind(this);\r\n\t\tthis.handleLineDragStart = this.handleLineDragStart.bind(this);\r\n\t\tthis.handleLineDrag = this.handleLineDrag.bind(this);\r\n\r\n\t\tthis.handleEdge1DragStart = this.handleEdge1DragStart.bind(this);\r\n\t\tthis.handleEdge2DragStart = this.handleEdge2DragStart.bind(this);\r\n\r\n\t\tthis.handleDragComplete = this.handleDragComplete.bind(this);\r\n\r\n\t\tthis.handleHover = this.handleHover.bind(this);\r\n\r\n\t\tthis.isHover = isHover.bind(this);\r\n\t\tthis.saveNodeType = saveNodeType.bind(this);\r\n\t\tthis.nodes = {};\r\n\r\n\t\tthis.state = {\r\n\t\t\thover: false,\r\n\t\t};\r\n\t}\r\n\thandleLineDragStart() {\r\n\t\tconst {\r\n\t\t\tx1Value, y1Value,\r\n\t\t\tx2Value, y2Value,\r\n\t\t} = this.props;\r\n\r\n\t\tthis.dragStart = {\r\n\t\t\tx1Value, y1Value,\r\n\t\t\tx2Value, y2Value,\r\n\t\t};\r\n\t}\r\n\thandleLineDrag(moreProps) {\r\n\t\tconst { index, onDrag } = this.props;\r\n\r\n\t\tconst {\r\n\t\t\tx1Value, y1Value,\r\n\t\t\tx2Value, y2Value,\r\n\t\t} = this.dragStart;\r\n\r\n\t\tconst { xScale, chartConfig: { yScale }, xAccessor, fullData } = moreProps;\r\n\t\tconst { startPos, mouseXY } = moreProps;\r\n\r\n\t\tconst x1 = xScale(x1Value);\r\n\t\tconst y1 = yScale(y1Value);\r\n\t\tconst x2 = xScale(x2Value);\r\n\t\tconst y2 = yScale(y2Value);\r\n\r\n\t\tconst dx = startPos[0] - mouseXY[0];\r\n\t\tconst dy = startPos[1] - mouseXY[1];\r\n\r\n\t\tconst newX1Value = getXValue(xScale, xAccessor, [x1 - dx, y1 - dy], fullData);\r\n\t\tconst newY1Value = yScale.invert(y1 - dy);\r\n\t\tconst newX2Value = getXValue(xScale, xAccessor, [x2 - dx, y2 - dy], fullData);\r\n\t\tconst newY2Value = yScale.invert(y2 - dy);\r\n\r\n\t\tonDrag(index, {\r\n\t\t\tx1Value: newX1Value,\r\n\t\t\ty1Value: newY1Value,\r\n\t\t\tx2Value: newX2Value,\r\n\t\t\ty2Value: newY2Value,\r\n\t\t});\r\n\t}\r\n\thandleEdge1DragStart() {\r\n\t\tthis.setState({\r\n\t\t\tanchor: \"edge2\"\r\n\t\t});\r\n\t}\r\n\thandleEdge2DragStart() {\r\n\t\tthis.setState({\r\n\t\t\tanchor: \"edge1\"\r\n\t\t});\r\n\t}\r\n\thandleDragComplete(...rest) {\r\n\t\tthis.setState({\r\n\t\t\tanchor: undefined\r\n\t\t});\r\n\t\tthis.props.onDragComplete(...rest);\r\n\t}\r\n\thandleEdge1Drag(moreProps) {\r\n\t\tconst { index, onDrag } = this.props;\r\n\t\tconst {\r\n\t\t\tx2Value, y2Value,\r\n\t\t} = this.props;\r\n\r\n\t\tconst [x1Value, y1Value] = getNewXY(moreProps);\r\n\r\n\t\tonDrag(index, {\r\n\t\t\tx1Value,\r\n\t\t\ty1Value,\r\n\t\t\tx2Value,\r\n\t\t\ty2Value,\r\n\t\t});\r\n\t}\r\n\thandleEdge2Drag(moreProps) {\r\n\t\tconst { index, onDrag } = this.props;\r\n\t\tconst {\r\n\t\t\tx1Value, y1Value,\r\n\t\t} = this.props;\r\n\r\n\t\tconst [x2Value, y2Value] = getNewXY(moreProps);\r\n\r\n\t\tonDrag(index, {\r\n\t\t\tx1Value,\r\n\t\t\ty1Value,\r\n\t\t\tx2Value,\r\n\t\t\ty2Value,\r\n\t\t});\r\n\t}\r\n\thandleHover(moreProps) {\r\n\t\tif (this.state.hover !== moreProps.hovering) {\r\n\t\t\tthis.setState({\r\n\t\t\t\thover: moreProps.hovering\r\n\t\t\t});\r\n\t\t}\r\n\t}\r\n\trender() {\r\n\t\tconst {\r\n\t\t\tx1Value,\r\n\t\t\ty1Value,\r\n\t\t\tx2Value,\r\n\t\t\ty2Value,\r\n\t\t\ttype,\r\n\t\t\tstroke,\r\n\t\t\tstrokeWidth,\r\n\t\t\tstrokeOpacity,\r\n\t\t\tstrokeDasharray,\r\n\t\t\tr,\r\n\t\t\tedgeStrokeWidth,\r\n\t\t\tedgeFill,\r\n\t\t\tedgeStroke,\r\n\t\t\tedgeInteractiveCursor,\r\n\t\t\tlineInteractiveCursor,\r\n\t\t\thoverText,\r\n\t\t\tselected,\r\n\r\n\t\t\tonDragComplete,\r\n\t\t} = this.props;\r\n\r\n\t\tconst {\r\n\t\t\tenable: hoverTextEnabled,\r\n\t\t\tselectedText: hoverTextSelected,\r\n\t\t\ttext: hoverTextUnselected,\r\n\t\t\t...restHoverTextProps\r\n\t\t} = hoverText;\r\n\r\n\t\tconst { hover, anchor } = this.state;\r\n\r\n\t\treturn \r\n\t\t\t\r\n\t\t\t\r\n\t\t\t\r\n\t\t\t\r\n\t\t;\r\n\t}\r\n}\r\n\r\nexport function getNewXY(moreProps) {\r\n\tconst { xScale, chartConfig: { yScale }, xAccessor, plotData, mouseXY } = moreProps;\r\n\tconst mouseY = mouseXY[1];\r\n\r\n\tconst x = getXValue(xScale, xAccessor, mouseXY, plotData);\r\n\r\n\tconst [small, big] = yScale.domain().slice().sort(d3Ascending);\r\n\tconst y = yScale.invert(mouseY);\r\n\tconst newY = Math.min(Math.max(y, small), big);\r\n\r\n\treturn [x, newY];\r\n}\r\n\r\nEachTrendLine.propTypes = {\r\n\tx1Value: PropTypes.any.isRequired,\r\n\tx2Value: PropTypes.any.isRequired,\r\n\ty1Value: PropTypes.any.isRequired,\r\n\ty2Value: PropTypes.any.isRequired,\r\n\r\n\tindex: PropTypes.number,\r\n\r\n\ttype: PropTypes.oneOf([\r\n\t\t\"XLINE\", // extends from -Infinity to +Infinity\r\n\t\t\"RAY\", // extends to +/-Infinity in one direction\r\n\t\t\"LINE\", // extends between the set bounds\r\n\t]).isRequired,\r\n\r\n\tonDrag: PropTypes.func.isRequired,\r\n\tonEdge1Drag: PropTypes.func.isRequired,\r\n\tonEdge2Drag: PropTypes.func.isRequired,\r\n\tonDragComplete: PropTypes.func.isRequired,\r\n\tonSelect: PropTypes.func.isRequired,\r\n\tonUnSelect: PropTypes.func.isRequired,\r\n\r\n\tr: PropTypes.number.isRequired,\r\n\tstrokeOpacity: PropTypes.number.isRequired,\r\n\tdefaultClassName: PropTypes.string,\r\n\r\n\tselected: PropTypes.bool,\r\n\r\n\tstroke: PropTypes.string.isRequired,\r\n\tstrokeWidth: PropTypes.number.isRequired,\r\n\tstrokeDasharray: PropTypes.oneOf(strokeDashTypes),\r\n\r\n\tedgeStrokeWidth: PropTypes.number.isRequired,\r\n\tedgeStroke: PropTypes.string.isRequired,\r\n\tedgeInteractiveCursor: PropTypes.string.isRequired,\r\n\tlineInteractiveCursor: PropTypes.string.isRequired,\r\n\tedgeFill: PropTypes.string.isRequired,\r\n\thoverText: PropTypes.object.isRequired,\r\n};\r\n\r\nEachTrendLine.defaultProps = {\r\n\tonDrag: noop,\r\n\tonEdge1Drag: noop,\r\n\tonEdge2Drag: noop,\r\n\tonDragComplete: noop,\r\n\tonSelect: noop,\r\n\tonUnSelect: noop,\r\n\r\n\tselected: false,\r\n\r\n\tedgeStroke: \"#000000\",\r\n\tedgeFill: \"#FFFFFF\",\r\n\tedgeStrokeWidth: 2,\r\n\tr: 5,\r\n\tstrokeWidth: 1,\r\n\tstrokeOpacity: 1,\r\n\tstrokeDasharray: \"Solid\",\r\n\thoverText: {\r\n\t\tenable: false,\r\n\t}\r\n};\r\n\r\nexport default EachTrendLine;","import React, { Component } from \"react\";\r\nimport PropTypes from \"prop-types\";\r\n\r\nimport GenericChartComponent from \"../../GenericChartComponent\";\r\nimport { getMouseCanvas } from \"../../GenericComponent\";\r\n\r\nimport { isDefined, getClosestValue, noop, shallowEqual, functor } from \"../../utils\";\r\nimport { getXValue } from \"../../utils/ChartDataUtil\";\r\n\r\nclass MouseLocationIndicator extends Component {\r\n\tconstructor(props) {\r\n\t\tsuper(props);\r\n\t\tthis.renderSVG = this.renderSVG.bind(this);\r\n\t\tthis.drawOnCanvas = this.drawOnCanvas.bind(this);\r\n\r\n\t\tthis.handleMousePosChange = this.handleMousePosChange.bind(this);\r\n\t\tthis.handleMouseDown = this.handleMouseDown.bind(this);\r\n\t\tthis.handleClick = this.handleClick.bind(this);\r\n\t\tthis.xy = this.xy.bind(this);\r\n\r\n\t\tthis.mutableState = {};\r\n\t}\r\n\thandleMouseDown(moreProps, e) {\r\n\t\tconst pos = this.xy(moreProps, e);\r\n\t\tif (isDefined(pos)) {\r\n\t\t\tconst { xValue, yValue, x, y } = pos;\r\n\t\t\tthis.mutableState = { x, y };\r\n\t\t\tthis.props.onMouseDown([xValue, yValue], moreProps, e);\r\n\t\t}\r\n\t}\r\n\thandleClick(moreProps, e) {\r\n\t\tconst pos = this.xy(moreProps, e);\r\n\t\tif (isDefined(pos)) {\r\n\t\t\tconst { xValue, yValue, x, y } = pos;\r\n\t\t\tthis.mutableState = { x, y };\r\n\t\t\tthis.props.onClick([xValue, yValue], moreProps, e);\r\n\t\t}\r\n\t}\r\n\txy(moreProps, e) {\r\n\t\tconst { xAccessor, plotData } = moreProps;\r\n\t\tconst { mouseXY, currentItem, xScale, chartConfig: { yScale } } = moreProps;\r\n\t\tconst { enabled, snap, shouldDisableSnap, snapTo } = this.props;\r\n\r\n\t\tif (enabled && isDefined(currentItem) && isDefined(e)) {\r\n\t\t\tconst xValue = snap && !shouldDisableSnap(e)\r\n\t\t\t\t? xAccessor(currentItem)\r\n\t\t\t\t: getXValue(xScale, xAccessor, mouseXY, plotData);\r\n\t\t\tconst yValue = snap && !shouldDisableSnap(e)\r\n\t\t\t\t? getClosestValue(snapTo(currentItem), yScale.invert(mouseXY[1]))\r\n\t\t\t\t: yScale.invert(mouseXY[1]);\r\n\r\n\t\t\tconst x = xScale(xValue);\r\n\t\t\tconst y = yScale(yValue);\r\n\r\n\t\t\treturn { xValue, yValue, x, y };\r\n\t\t}\r\n\t}\r\n\thandleMousePosChange(moreProps, e) {\r\n\t\tif (!shallowEqual(moreProps.mousXY, moreProps.prevMouseXY)) {\r\n\t\t\tconst pos = this.xy(moreProps, e);\r\n\t\t\tif (isDefined(pos)) {\r\n\t\t\t\tconst { xValue, yValue, x, y } = pos;\r\n\t\t\t\tthis.mutableState = { x, y };\r\n\t\t\t\tthis.props.onMouseMove([xValue, yValue], e);\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n\tdrawOnCanvas(ctx, moreProps) {\r\n\t\tconst { enabled, r, stroke, strokeWidth } = this.props;\r\n\t\tconst { x, y } = this.mutableState;\r\n\t\tconst { show } = moreProps;\r\n\t\t// console.log(show)\r\n\t\tif (enabled && show && isDefined(x)) {\r\n\t\t\tctx.lineWidth = strokeWidth;\r\n\t\t\tctx.strokeStyle = stroke;\r\n\t\t\tctx.moveTo(x, y);\r\n\t\t\tctx.beginPath();\r\n\t\t\tctx.arc(x, y, r, 0, 2 * Math.PI, false);\r\n\t\t\tctx.stroke();\r\n\t\t\t// ctx.fill();\r\n\t\t}\r\n\t}\r\n\trenderSVG(moreProps) {\r\n\t\tconst { enabled, r, stroke, strokeWidth, opacity } = this.props;\r\n\t\tconst { x, y } = this.mutableState;\r\n\t\tconst { show } = moreProps;\r\n\r\n\t\t// console.log(\"HERE\")\r\n\t\t// console.log(stroke, strokeWidth, opacity)\r\n\r\n\t\treturn enabled && show && isDefined(x)\r\n\t\t\t? \r\n\t\t\t: null;\r\n\r\n\t}\r\n\trender() {\r\n\t\tconst { enabled, disablePan } = this.props;\r\n\t\treturn ;\r\n\t}\r\n}\r\n\r\nMouseLocationIndicator.propTypes = {\r\n\tenabled: PropTypes.bool.isRequired,\r\n\tsnap: PropTypes.bool.isRequired,\r\n\tshouldDisableSnap: PropTypes.func.isRequired,\r\n\tsnapTo: PropTypes.func,\r\n\r\n\tonMouseMove: PropTypes.func.isRequired,\r\n\tonMouseDown: PropTypes.func.isRequired,\r\n\tonClick: PropTypes.func.isRequired,\r\n\tr: PropTypes.number.isRequired,\r\n\tstroke: PropTypes.string.isRequired,\r\n\tstrokeWidth: PropTypes.number.isRequired,\r\n\topacity: PropTypes.number.isRequired,\r\n\tdisablePan: PropTypes.bool.isRequired,\r\n};\r\n\r\nMouseLocationIndicator.defaultProps = {\r\n\tonMouseMove: noop,\r\n\tonMouseDown: noop,\r\n\tonClick: noop,\r\n\tshouldDisableSnap: functor(false),\r\n\tstroke: \"#000000\",\r\n\tstrokeWidth: 1,\r\n\topacity: 1,\r\n\tdisablePan: true,\r\n};\r\n\r\nexport default MouseLocationIndicator;","\r\n\r\nimport React, { Component } from \"react\";\r\nimport PropTypes from \"prop-types\";\r\n\r\nimport { isDefined, isNotDefined, noop, strokeDashTypes } from \"../utils\";\r\n\r\nimport {\r\n\tgetValueFromOverride,\r\n\tterminate,\r\n\tsaveNodeType,\r\n\tisHoverForInteractiveType,\r\n} from \"./utils\";\r\n\r\nimport EachTrendLine from \"./wrapper/EachTrendLine\";\r\nimport StraightLine from \"./components/StraightLine\";\r\nimport MouseLocationIndicator from \"./components/MouseLocationIndicator\";\r\nimport HoverTextNearMouse from \"./components/HoverTextNearMouse\";\r\n\r\nclass TrendLine extends Component {\r\n\tconstructor(props) {\r\n\t\tsuper(props);\r\n\r\n\t\tthis.handleStart = this.handleStart.bind(this);\r\n\t\tthis.handleEnd = this.handleEnd.bind(this);\r\n\t\tthis.handleDrawLine = this.handleDrawLine.bind(this);\r\n\t\tthis.handleDragLine = this.handleDragLine.bind(this);\r\n\t\tthis.handleDragLineComplete = this.handleDragLineComplete.bind(this);\r\n\r\n\t\tthis.terminate = terminate.bind(this);\r\n\t\tthis.saveNodeType = saveNodeType.bind(this);\r\n\r\n\t\tthis.getSelectionState = isHoverForInteractiveType(\"trends\")\r\n\t\t\t.bind(this);\r\n\r\n\t\tthis.state = {\r\n\t\t};\r\n\t\tthis.nodes = [];\r\n\t}\r\n\thandleDragLine(index, newXYValue) {\r\n\t\tthis.setState({\r\n\t\t\toverride: {\r\n\t\t\t\tindex,\r\n\t\t\t\t...newXYValue\r\n\t\t\t}\r\n\t\t});\r\n\t}\r\n\thandleDragLineComplete(moreProps) {\r\n\t\tconst { override } = this.state;\r\n\t\tif (isDefined(override)) {\r\n\t\t\tconst { trends } = this.props;\r\n\t\t\tconst newTrends = trends\r\n\t\t\t\t.map((each, idx) => idx === override.index\r\n\t\t\t\t\t? {\r\n\t\t\t\t\t\t...each,\r\n\t\t\t\t\t\tstart: [override.x1Value, override.y1Value],\r\n\t\t\t\t\t\tend: [override.x2Value, override.y2Value],\r\n\t\t\t\t\t\tselected: true,\r\n\t\t\t\t\t}\r\n\t\t\t\t\t: {\r\n\t\t\t\t\t\t...each,\r\n\t\t\t\t\t\tselected: false,\r\n\t\t\t\t\t});\r\n\r\n\t\t\tthis.setState({\r\n\t\t\t\toverride: null,\r\n\t\t\t}, () => {\r\n\t\t\t\tthis.props.onComplete(newTrends, moreProps);\r\n\t\t\t});\r\n\t\t}\r\n\t}\r\n\thandleDrawLine(xyValue) {\r\n\t\tconst { current } = this.state;\r\n\t\tif (isDefined(current) && isDefined(current.start)) {\r\n\t\t\tthis.mouseMoved = true;\r\n\t\t\tthis.setState({\r\n\t\t\t\tcurrent: {\r\n\t\t\t\t\tstart: current.start,\r\n\t\t\t\t\tend: xyValue,\r\n\t\t\t\t}\r\n\t\t\t});\r\n\t\t}\r\n\t}\r\n\thandleStart(xyValue, moreProps, e) {\r\n\t\tconst { current } = this.state;\r\n\r\n\t\tif (isNotDefined(current) || isNotDefined(current.start)) {\r\n\t\t\tthis.mouseMoved = false;\r\n\r\n\t\t\tthis.setState({\r\n\t\t\t\tcurrent: {\r\n\t\t\t\t\tstart: xyValue,\r\n\t\t\t\t\tend: null,\r\n\t\t\t\t},\r\n\t\t\t}, () => {\r\n\t\t\t\tthis.props.onStart(moreProps, e);\r\n\t\t\t});\r\n\t\t}\r\n\t}\r\n\thandleEnd(xyValue, moreProps, e) {\r\n\t\tconst { current } = this.state;\r\n\t\tconst { trends, appearance, type } = this.props;\r\n\r\n\t\tif (this.mouseMoved\r\n\t\t\t&& isDefined(current)\r\n\t\t\t&& isDefined(current.start)\r\n\t\t) {\r\n\t\t\tconst newTrends = [\r\n\t\t\t\t...trends.map(d => ({ ...d, selected: false })),\r\n\t\t\t\t{\r\n\t\t\t\t\tstart: current.start,\r\n\t\t\t\t\tend: xyValue,\r\n\t\t\t\t\tselected: true,\r\n\t\t\t\t\tappearance,\r\n\t\t\t\t\ttype,\r\n\t\t\t\t}\r\n\t\t\t];\r\n\t\t\tthis.setState({\r\n\t\t\t\tcurrent: null,\r\n\t\t\t\ttrends: newTrends\r\n\t\t\t}, () => {\r\n\t\t\t\tthis.props.onComplete(newTrends, moreProps, e);\r\n\t\t\t});\r\n\t\t}\r\n\t}\r\n\trender() {\r\n\t\tconst { appearance } = this.props;\r\n\t\tconst { enabled, snap, shouldDisableSnap, snapTo, type } = this.props;\r\n\t\tconst { currentPositionRadius, currentPositionStroke } = this.props;\r\n\t\tconst { currentPositionstrokeOpacity, currentPositionStrokeWidth } = this.props;\r\n\t\tconst { hoverText, trends } = this.props;\r\n\t\tconst { current, override } = this.state;\r\n\r\n\t\tconst tempLine = isDefined(current) && isDefined(current.end)\r\n\t\t\t? \r\n\t\t\t: null;\r\n\r\n\t\treturn \r\n\t\t\t{trends.map((each, idx) => {\r\n\t\t\t\tconst eachAppearance = isDefined(each.appearance)\r\n\t\t\t\t\t? { ...appearance, ...each.appearance }\r\n\t\t\t\t\t: appearance;\r\n\r\n\t\t\t\tconst hoverTextWithDefault = {\r\n\t\t\t\t\t...TrendLine.defaultProps.hoverText,\r\n\t\t\t\t\t...hoverText\r\n\t\t\t\t};\r\n\r\n\t\t\t\treturn ;\r\n\t\t\t})}\r\n\t\t\t{tempLine}\r\n\t\t\t\r\n\t\t;\r\n\t}\r\n}\r\n\r\n\r\nTrendLine.propTypes = {\r\n\tsnap: PropTypes.bool.isRequired,\r\n\tenabled: PropTypes.bool.isRequired,\r\n\tsnapTo: PropTypes.func,\r\n\tshouldDisableSnap: PropTypes.func.isRequired,\r\n\r\n\tonStart: PropTypes.func.isRequired,\r\n\tonComplete: PropTypes.func.isRequired,\r\n\tonSelect: PropTypes.func,\r\n\r\n\tcurrentPositionStroke: PropTypes.string,\r\n\tcurrentPositionStrokeWidth: PropTypes.number,\r\n\tcurrentPositionstrokeOpacity: PropTypes.number,\r\n\tcurrentPositionRadius: PropTypes.number,\r\n\ttype: PropTypes.oneOf([\r\n\t\t\"XLINE\", // extends from -Infinity to +Infinity\r\n\t\t\"RAY\", // extends to +/-Infinity in one direction\r\n\t\t\"LINE\", // extends between the set bounds\r\n\t]),\r\n\thoverText: PropTypes.object.isRequired,\r\n\r\n\ttrends: PropTypes.array.isRequired,\r\n\r\n\tappearance: PropTypes.shape({\r\n\t\tstroke: PropTypes.string.isRequired,\r\n\t\tstrokeOpacity: PropTypes.number.isRequired,\r\n\t\tstrokeWidth: PropTypes.number.isRequired,\r\n\t\tstrokeDasharray: PropTypes.oneOf(strokeDashTypes),\r\n\t\tedgeStrokeWidth: PropTypes.number.isRequired,\r\n\t\tedgeFill: PropTypes.string.isRequired,\r\n\t\tedgeStroke: PropTypes.string.isRequired,\r\n\t}).isRequired\r\n};\r\n\r\nTrendLine.defaultProps = {\r\n\ttype: \"XLINE\",\r\n\r\n\tonStart: noop,\r\n\tonComplete: noop,\r\n\tonSelect: noop,\r\n\r\n\tcurrentPositionStroke: \"#000000\",\r\n\tcurrentPositionstrokeOpacity: 1,\r\n\tcurrentPositionStrokeWidth: 3,\r\n\tcurrentPositionRadius: 0,\r\n\r\n\tshouldDisableSnap: e => (e.button === 2 || e.shiftKey),\r\n\thoverText: {\r\n\t\t...HoverTextNearMouse.defaultProps,\r\n\t\tenable: true,\r\n\t\tbgHeight: \"auto\",\r\n\t\tbgWidth: \"auto\",\r\n\t\ttext: \"Click to select object\",\r\n\t\tselectedText: \"\",\r\n\t},\r\n\ttrends: [],\r\n\r\n\tappearance: {\r\n\t\tstroke: \"#000000\",\r\n\t\tstrokeOpacity: 1,\r\n\t\tstrokeWidth: 1,\r\n\t\tstrokeDasharray: \"Solid\",\r\n\t\tedgeStrokeWidth: 1,\r\n\t\tedgeFill: \"#FFFFFF\",\r\n\t\tedgeStroke: \"#000000\",\r\n\t\tr: 6,\r\n\t}\r\n};\r\n\r\nexport default TrendLine;\r\n","import React, { Component } from \"react\";\r\nimport PropTypes from \"prop-types\";\r\n\r\nimport GenericChartComponent from \"../../GenericChartComponent\";\r\nimport { getMouseCanvas } from \"../../GenericComponent\";\r\n\r\nclass Text extends Component {\r\n\tconstructor(props) {\r\n\t\tsuper(props);\r\n\t\tthis.renderSVG = this.renderSVG.bind(this);\r\n\t\tthis.drawOnCanvas = this.drawOnCanvas.bind(this);\r\n\t\tthis.isHover = this.isHover.bind(this);\r\n\t}\r\n\tisHover() {\r\n\t\treturn false;\r\n\t}\r\n\tdrawOnCanvas(ctx, moreProps) {\r\n\t\tconst {\r\n\t\t\txyProvider,\r\n\t\t\tfontFamily,\r\n\t\t\tfontSize,\r\n\t\t\tfill,\r\n\t\t\tchildren,\r\n\t\t} = this.props;\r\n\t\tconst [x, y] = xyProvider(moreProps);\r\n\r\n\t\tctx.font = `${ fontSize }px ${fontFamily}`;\r\n\t\tctx.fillStyle = fill;\r\n\r\n\t\tctx.beginPath();\r\n\t\tctx.fillText(children, x, y);\r\n\t}\r\n\trenderSVG(moreProps) {\r\n\t\tconst {\r\n\t\t\txyProvider,\r\n\t\t\tfontFamily,\r\n\t\t\tfontSize,\r\n\t\t\tfill,\r\n\t\t\tchildren,\r\n\t\t} = this.props;\r\n\t\tconst [x, y] = xyProvider(moreProps);\r\n\r\n\t\treturn {children};\r\n\t}\r\n\trender() {\r\n\t\tconst { selected } = this.props;\r\n\r\n\t\treturn ;\r\n\t}\r\n}\r\n\r\nText.propTypes = {\r\n\txyProvider: PropTypes.func.isRequired,\r\n\tfontFamily: PropTypes.string.isRequired,\r\n\tfontSize: PropTypes.number.isRequired,\r\n\tfill: PropTypes.string.isRequired,\r\n\tchildren: PropTypes.string.isRequired,\r\n\tselected: PropTypes.bool.isRequired,\r\n};\r\n\r\nText.defaultProps = {\r\n\tselected: false,\r\n};\r\n\r\nexport default Text;\r\n","import React, { Component } from \"react\";\r\nimport PropTypes from \"prop-types\";\r\n\r\nimport { head, last, noop } from \"../../utils\";\r\nimport { getXValue } from \"../../utils/ChartDataUtil\";\r\nimport { saveNodeType, isHover } from \"../utils\";\r\n\r\nimport { getNewXY } from \"./EachTrendLine\";\r\nimport StraightLine, { generateLine } from \"../components/StraightLine\";\r\nimport ClickableCircle from \"../components/ClickableCircle\";\r\nimport HoverTextNearMouse from \"../components/HoverTextNearMouse\";\r\nimport Text from \"../components/Text\";\r\n\r\nclass EachFibRetracement extends Component {\r\n\tconstructor(props) {\r\n\t\tsuper(props);\r\n\r\n\t\tthis.handleEdge1Drag = this.handleEdge1Drag.bind(this);\r\n\t\tthis.handleEdge2Drag = this.handleEdge2Drag.bind(this);\r\n\r\n\t\tthis.handleLineNSResizeTop = this.handleLineNSResizeTop.bind(this);\r\n\t\tthis.handleLineNSResizeBottom = this.handleLineNSResizeBottom.bind(this);\r\n\t\tthis.handleLineMove = this.handleLineMove.bind(this);\r\n\r\n\t\tthis.handleLineDragStart = this.handleLineDragStart.bind(this);\r\n\r\n\t\tthis.handleHover = this.handleHover.bind(this);\r\n\r\n\t\tthis.isHover = isHover.bind(this);\r\n\t\tthis.saveNodeType = saveNodeType.bind(this);\r\n\t\tthis.nodes = {};\r\n\r\n\t\tthis.state = {\r\n\t\t\thover: false,\r\n\t\t};\r\n\t}\r\n\thandleHover(moreProps) {\r\n\t\tif (this.state.hover !== moreProps.hovering) {\r\n\t\t\tthis.setState({\r\n\t\t\t\thover: moreProps.hovering\r\n\t\t\t});\r\n\t\t}\r\n\t}\r\n\thandleLineDragStart() {\r\n\t\tconst {\r\n\t\t\tx1, y1, x2, y2,\r\n\t\t} = this.props;\r\n\r\n\t\tthis.dragStart = {\r\n\t\t\tx1, y1, x2, y2,\r\n\t\t};\r\n\t}\r\n\thandleLineMove(moreProps) {\r\n\t\tconst { index, onDrag } = this.props;\r\n\r\n\t\tconst {\r\n\t\t\tx1: x1Value, y1: y1Value, x2: x2Value, y2: y2Value,\r\n\t\t} = this.dragStart;\r\n\r\n\t\tconst { xScale, chartConfig: { yScale }, xAccessor, fullData } = moreProps;\r\n\t\tconst { startPos, mouseXY } = moreProps;\r\n\r\n\t\tconst x1 = xScale(x1Value);\r\n\t\tconst y1 = yScale(y1Value);\r\n\t\tconst x2 = xScale(x2Value);\r\n\t\tconst y2 = yScale(y2Value);\r\n\r\n\t\tconst dx = startPos[0] - mouseXY[0];\r\n\t\tconst dy = startPos[1] - mouseXY[1];\r\n\r\n\t\tconst newX1Value = getXValue(xScale, xAccessor, [x1 - dx, y1 - dy], fullData);\r\n\t\tconst newY1Value = yScale.invert(y1 - dy);\r\n\t\tconst newX2Value = getXValue(xScale, xAccessor, [x2 - dx, y2 - dy], fullData);\r\n\t\tconst newY2Value = yScale.invert(y2 - dy);\r\n\r\n\t\tonDrag(index, {\r\n\t\t\tx1: newX1Value,\r\n\t\t\ty1: newY1Value,\r\n\t\t\tx2: newX2Value,\r\n\t\t\ty2: newY2Value,\r\n\t\t});\r\n\t}\r\n\thandleLineNSResizeTop(moreProps) {\r\n\t\tconst { index, onDrag } = this.props;\r\n\t\tconst {\r\n\t\t\tx1, x2, y2,\r\n\t\t} = this.props;\r\n\r\n\t\tconst [, y1] = getNewXY(moreProps);\r\n\r\n\t\tonDrag(index, {\r\n\t\t\tx1,\r\n\t\t\ty1,\r\n\t\t\tx2,\r\n\t\t\ty2,\r\n\t\t});\r\n\t}\r\n\thandleLineNSResizeBottom(moreProps) {\r\n\t\tconst { index, onDrag } = this.props;\r\n\t\tconst {\r\n\t\t\tx1, y1, x2,\r\n\t\t} = this.props;\r\n\r\n\t\tconst [, y2] = getNewXY(moreProps);\r\n\r\n\t\tonDrag(index, {\r\n\t\t\tx1,\r\n\t\t\ty1,\r\n\t\t\tx2,\r\n\t\t\ty2,\r\n\t\t});\r\n\t}\r\n\thandleEdge1Drag(moreProps) {\r\n\t\tconst { index, onDrag } = this.props;\r\n\t\tconst {\r\n\t\t\ty1, x2, y2,\r\n\t\t} = this.props;\r\n\r\n\t\tconst [x1] = getNewXY(moreProps);\r\n\r\n\t\tonDrag(index, {\r\n\t\t\tx1,\r\n\t\t\ty1,\r\n\t\t\tx2,\r\n\t\t\ty2,\r\n\t\t});\r\n\t}\r\n\thandleEdge2Drag(moreProps) {\r\n\t\tconst { index, onDrag } = this.props;\r\n\t\tconst {\r\n\t\t\tx1, y1, y2,\r\n\t\t} = this.props;\r\n\r\n\t\tconst [x2] = getNewXY(moreProps);\r\n\r\n\t\tonDrag(index, {\r\n\t\t\tx1,\r\n\t\t\ty1,\r\n\t\t\tx2,\r\n\t\t\ty2,\r\n\t\t});\r\n\t}\r\n\trender() {\r\n\t\tconst { x1, x2, y1, y2 } = this.props;\r\n\t\tconst { interactive, yDisplayFormat, type, appearance } = this.props;\r\n\t\tconst { stroke, strokeWidth, strokeOpacity } = appearance;\r\n\t\tconst { fontFamily, fontSize, fontFill } = appearance;\r\n\t\tconst { edgeStroke, edgeFill, nsEdgeFill, edgeStrokeWidth, r } = appearance;\r\n\t\tconst { hoverText, selected } = this.props;\r\n\t\tconst { hover } = this.state;\r\n\t\tconst { onDragComplete } = this.props;\r\n\t\tconst lines = helper({ x1, x2, y1, y2 });\r\n\r\n\t\tconst {\r\n\t\t\tenable: hoverTextEnabled,\r\n\t\t\tselectedText: hoverTextSelected,\r\n\t\t\ttext: hoverTextUnselected,\r\n\t\t\t...restHoverTextProps\r\n\t\t} = hoverText;\r\n\r\n\t\tconst lineType = type === \"EXTEND\" ? \"XLINE\" : type === \"BOUND\" ? \"LINE\" : type;\r\n\t\tconst dir = head(lines).y1 > last(lines).y1 ? 3 : -1.3;\r\n\r\n\t\treturn (\r\n\t\t\t\r\n\t\t\t\t{lines.map((line, j) => {\r\n\t\t\t\t\tconst text = `${yDisplayFormat(line.y)} (${line.percent.toFixed(2)}%)`;\r\n\r\n\t\t\t\t\tconst xyProvider = ({ xScale, chartConfig }) => {\r\n\t\t\t\t\t\tconst { yScale } = chartConfig;\r\n\t\t\t\t\t\tconst { x1, y1, x2 } = generateLine({\r\n\t\t\t\t\t\t\ttype: lineType,\r\n\t\t\t\t\t\t\tstart: [line.x1, line.y],\r\n\t\t\t\t\t\t\tend: [line.x2, line.y],\r\n\t\t\t\t\t\t\txScale,\r\n\t\t\t\t\t\t\tyScale,\r\n\t\t\t\t\t\t});\r\n\r\n\t\t\t\t\t\tconst x = xScale(Math.min(x1, x2)) + 10;\r\n\t\t\t\t\t\tconst y = yScale(y1) + dir * 4;\r\n\t\t\t\t\t\treturn [x, y];\r\n\t\t\t\t\t};\r\n\r\n\t\t\t\t\tconst firstOrLast = (j === 0) || (j === lines.length - 1);\r\n\r\n\t\t\t\t\tconst interactiveCursorClass = firstOrLast\r\n\t\t\t\t\t\t? \"react-stockcharts-ns-resize-cursor\"\r\n\t\t\t\t\t\t: \"react-stockcharts-move-cursor\";\r\n\r\n\t\t\t\t\tconst interactiveEdgeCursorClass = firstOrLast\r\n\t\t\t\t\t\t? \"react-stockcharts-ns-resize-cursor\"\r\n\t\t\t\t\t\t: \"react-stockcharts-ew-resize-cursor\";\r\n\r\n\t\t\t\t\tconst dragHandler = j === 0\r\n\t\t\t\t\t\t? this.handleLineNSResizeTop\r\n\t\t\t\t\t\t: j === lines.length - 1\r\n\t\t\t\t\t\t\t? this.handleLineNSResizeBottom\r\n\t\t\t\t\t\t\t: this.handleLineMove;\r\n\r\n\t\t\t\t\tconst edge1DragHandler = j === 0\r\n\t\t\t\t\t\t? this.handleLineNSResizeTop\r\n\t\t\t\t\t\t: j === lines.length - 1\r\n\t\t\t\t\t\t\t? this.handleLineNSResizeBottom\r\n\t\t\t\t\t\t\t: this.handleEdge1Drag;\r\n\t\t\t\t\tconst edge2DragHandler = j === 0\r\n\t\t\t\t\t\t? this.handleLineNSResizeTop\r\n\t\t\t\t\t\t: j === lines.length - 1\r\n\t\t\t\t\t\t\t? this.handleLineNSResizeBottom\r\n\t\t\t\t\t\t\t: this.handleEdge2Drag;\r\n\r\n\t\t\t\t\tconst hoverHandler = interactive\r\n\t\t\t\t\t\t? { onHover: this.handleHover, onUnHover: this.handleHover }\r\n\t\t\t\t\t\t: {};\r\n\t\t\t\t\treturn \r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t{text}\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t;\r\n\t\t\t\t})}\r\n\t\t\t\t\r\n\t\t\t\r\n\t\t);\r\n\t}\r\n}\r\n\r\n\r\nfunction helper({ x1, y1, x2, y2 }) {\r\n\tconst dy = y2 - y1;\r\n\tconst retracements = [100, 61.8, 50, 38.2, 23.6, 0]\r\n\t\t.map(each => ({\r\n\t\t\tpercent: each,\r\n\t\t\tx1,\r\n\t\t\tx2,\r\n\t\t\ty: (y2 - (each / 100) * dy),\r\n\t\t}));\r\n\r\n\treturn retracements;\r\n}\r\n\r\nEachFibRetracement.propTypes = {\r\n\tx1: PropTypes.any.isRequired,\r\n\tx2: PropTypes.any.isRequired,\r\n\ty1: PropTypes.number.isRequired,\r\n\ty2: PropTypes.number.isRequired,\r\n\r\n\tyDisplayFormat: PropTypes.func.isRequired,\r\n\ttype: PropTypes.string.isRequired,\r\n\tselected: PropTypes.bool.isRequired,\r\n\r\n\tappearance: PropTypes.shape({\r\n\t\tstroke: PropTypes.string.isRequired,\r\n\t\tstrokeWidth: PropTypes.number.isRequired,\r\n\t\tstrokeOpacity: PropTypes.number.isRequired,\r\n\t\tfontFamily: PropTypes.string.isRequired,\r\n\t\tfontSize: PropTypes.number.isRequired,\r\n\t\tfontFill: PropTypes.string.isRequired,\r\n\t\tedgeStroke: PropTypes.string.isRequired,\r\n\t\tedgeFill: PropTypes.string.isRequired,\r\n\t\tnsEdgeFill: PropTypes.string.isRequired,\r\n\t\tedgeStrokeWidth: PropTypes.number.isRequired,\r\n\t\tr: PropTypes.number.isRequired,\r\n\t}).isRequired,\r\n\r\n\tinteractive: PropTypes.bool.isRequired,\r\n\thoverText: PropTypes.object.isRequired,\r\n\r\n\tindex: PropTypes.number,\r\n\tonDrag: PropTypes.func.isRequired,\r\n\tonDragComplete: PropTypes.func.isRequired,\r\n};\r\n\r\nEachFibRetracement.defaultProps = {\r\n\tyDisplayFormat: d => d.toFixed(2),\r\n\tinteractive: true,\r\n\r\n\tappearance: {\r\n\t\tstroke: \"#000000\",\r\n\t\tstrokeWidth: 1,\r\n\t\tstrokeOpacity: 1,\r\n\t\tfontFamily: \"Helvetica Neue, Helvetica, Arial, sans-serif\",\r\n\t\tfontSize: 10,\r\n\t\tfontFill: \"#000000\",\r\n\t\tedgeStroke: \"#000000\",\r\n\t\tedgeFill: \"#FFFFFF\",\r\n\t\tnsEdgeFill: \"#000000\",\r\n\t\tedgeStrokeWidth: 1,\r\n\t\tr: 5,\r\n\t},\r\n\tselected: false,\r\n\r\n\tonDrag: noop,\r\n\tonDragComplete: noop,\r\n\r\n\thoverText: {\r\n\t\tenable: false,\r\n\t}\r\n};\r\n\r\nexport default EachFibRetracement;\r\n","\r\n\r\nimport React, { Component } from \"react\";\r\nimport PropTypes from \"prop-types\";\r\n\r\nimport { isDefined, isNotDefined, noop } from \"../utils\";\r\nimport {\r\n\tterminate,\r\n\tsaveNodeType,\r\n\tisHoverForInteractiveType,\r\n} from \"./utils\";\r\nimport EachFibRetracement from \"./wrapper/EachFibRetracement\";\r\nimport MouseLocationIndicator from \"./components/MouseLocationIndicator\";\r\nimport HoverTextNearMouse from \"./components/HoverTextNearMouse\";\r\n\r\nclass FibonacciRetracement extends Component {\r\n\tconstructor(props) {\r\n\t\tsuper(props);\r\n\r\n\t\tthis.handleStart = this.handleStart.bind(this);\r\n\t\tthis.handleEnd = this.handleEnd.bind(this);\r\n\t\tthis.handleDrawRetracement = this.handleDrawRetracement.bind(this);\r\n\r\n\t\tthis.handleEdge1Drag = this.handleEdge1Drag.bind(this);\r\n\t\tthis.handleEdge2Drag = this.handleEdge2Drag.bind(this);\r\n\r\n\t\tthis.handleDrag = this.handleDrag.bind(this);\r\n\t\tthis.handleDragComplete = this.handleDragComplete.bind(this);\r\n\r\n\t\tthis.terminate = terminate.bind(this);\r\n\t\tthis.getSelectionState = isHoverForInteractiveType(\"retracements\")\r\n\t\t\t.bind(this);\r\n\r\n\t\tthis.saveNodeType = saveNodeType.bind(this);\r\n\t\tthis.nodes = [];\r\n\r\n\t\tthis.state = {\r\n\t\t};\r\n\t}\r\n\thandleDrawRetracement(xyValue) {\r\n\t\tconst { current } = this.state;\r\n\t\tif (isDefined(current) && isDefined(current.x1)) {\r\n\t\t\tthis.mouseMoved = true;\r\n\t\t\tthis.setState({\r\n\t\t\t\tcurrent: {\r\n\t\t\t\t\t...current,\r\n\t\t\t\t\tx2: xyValue[0],\r\n\t\t\t\t\ty2: xyValue[1]\r\n\t\t\t\t}\r\n\t\t\t});\r\n\t\t}\r\n\t}\r\n\thandleDrag(index, xy) {\r\n\t\tthis.setState({\r\n\t\t\toverride: {\r\n\t\t\t\tindex,\r\n\t\t\t\t...xy\r\n\t\t\t}\r\n\t\t});\r\n\t}\r\n\thandleEdge1Drag(echo, newXYValue, origXYValue) {\r\n\t\tconst { retracements } = this.props;\r\n\t\tconst { index } = echo;\r\n\r\n\t\tconst dx = origXYValue.x1Value - newXYValue.x1Value;\r\n\r\n\t\tthis.setState({\r\n\t\t\toverride: {\r\n\t\t\t\tindex,\r\n\t\t\t\tx1: retracements[index].x1 - dx,\r\n\t\t\t\ty1: retracements[index].y1,\r\n\t\t\t\tx2: retracements[index].x2,\r\n\t\t\t\ty2: retracements[index].y2\r\n\t\t\t}\r\n\t\t});\r\n\t}\r\n\thandleEdge2Drag(echo, newXYValue, origXYValue) {\r\n\t\tconst { retracements } = this.props;\r\n\t\tconst { index } = echo;\r\n\r\n\t\tconst dx = origXYValue.x2Value - newXYValue.x2Value;\r\n\r\n\t\tthis.setState({\r\n\t\t\toverride: {\r\n\t\t\t\tindex,\r\n\t\t\t\tx1: retracements[index].x1,\r\n\t\t\t\ty1: retracements[index].y1,\r\n\t\t\t\tx2: retracements[index].x2 - dx,\r\n\t\t\t\ty2: retracements[index].y2\r\n\t\t\t}\r\n\t\t});\r\n\t}\r\n\thandleDragComplete(moreProps) {\r\n\t\tconst { retracements } = this.props;\r\n\t\tconst { override } = this.state;\r\n\t\tif (isDefined(override)) {\r\n\t\t\tconst { index, ...rest } = override;\r\n\r\n\t\t\tconst newRetracements = retracements.map(\r\n\t\t\t\t(each, idx) =>\r\n\t\t\t\t\t(idx === index\r\n\t\t\t\t\t\t? { ...each, ...rest, selected: true }\r\n\t\t\t\t\t\t: each)\r\n\t\t\t);\r\n\t\t\tthis.setState(\r\n\t\t\t\t{\r\n\t\t\t\t\toverride: null,\r\n\t\t\t\t},\r\n\t\t\t\t() => {\r\n\t\t\t\t\tthis.props.onComplete(newRetracements, moreProps);\r\n\t\t\t\t}\r\n\t\t\t);\r\n\t\t}\r\n\t}\r\n\thandleStart(xyValue, moreProps) {\r\n\t\tconst { current } = this.state;\r\n\t\tif (isNotDefined(current) || isNotDefined(current.x1)) {\r\n\t\t\tthis.mouseMoved = false;\r\n\t\t\tthis.setState(\r\n\t\t\t\t{\r\n\t\t\t\t\tcurrent: {\r\n\t\t\t\t\t\tx1: xyValue[0],\r\n\t\t\t\t\t\ty1: xyValue[1],\r\n\t\t\t\t\t\tx2: null,\r\n\t\t\t\t\t\ty2: null\r\n\t\t\t\t\t}\r\n\t\t\t\t},\r\n\t\t\t\t() => {\r\n\t\t\t\t\tthis.props.onStart(moreProps);\r\n\t\t\t\t}\r\n\t\t\t);\r\n\t\t}\r\n\t}\r\n\thandleEnd(xyValue, moreProps, e) {\r\n\t\tconst { retracements, appearance, type } = this.props;\r\n\t\tconst { current } = this.state;\r\n\r\n\t\tif (this.mouseMoved && isDefined(current) && isDefined(current.x1)) {\r\n\t\t\tconst newRetracements = retracements.concat({\r\n\t\t\t\t...current,\r\n\t\t\t\tx2: xyValue[0],\r\n\t\t\t\ty2: xyValue[1],\r\n\t\t\t\tselected: true,\r\n\t\t\t\tappearance,\r\n\t\t\t\ttype,\r\n\t\t\t});\r\n\r\n\t\t\tthis.setState(\r\n\t\t\t\t{\r\n\t\t\t\t\tcurrent: null,\r\n\t\t\t\t},\r\n\t\t\t\t() => {\r\n\t\t\t\t\tthis.props.onComplete(newRetracements, moreProps, e);\r\n\t\t\t\t}\r\n\t\t\t);\r\n\t\t}\r\n\t}\r\n\trender() {\r\n\t\tconst { current, override } = this.state;\r\n\t\tconst { retracements } = this.props;\r\n\r\n\t\tconst {\r\n\t\t\tappearance,\r\n\t\t\ttype\r\n\t\t} = this.props;\r\n\t\tconst {\r\n\t\t\tcurrentPositionStroke,\r\n\t\t\tcurrentPositionOpacity,\r\n\t\t\tcurrentPositionStrokeWidth,\r\n\t\t\tcurrentPositionRadius\r\n\t\t} = this.props;\r\n\r\n\t\tconst { enabled, hoverText } = this.props;\r\n\t\tconst overrideIndex = isDefined(override) ? override.index : null;\r\n\t\tconst hoverTextWidthDefault = {\r\n\t\t\t...FibonacciRetracement.defaultProps.hoverText,\r\n\t\t\t...hoverText\r\n\t\t};\r\n\r\n\t\tconst currentRetracement = isDefined(current) && isDefined(current.x2)\r\n\t\t\t? \r\n\t\t\t: null;\r\n\t\treturn (\r\n\t\t\t\r\n\t\t\t\t{retracements.map((each, idx) => {\r\n\t\t\t\t\tconst eachAppearance = isDefined(each.appearance)\r\n\t\t\t\t\t\t? { ...appearance, ...each.appearance }\r\n\t\t\t\t\t\t: appearance;\r\n\r\n\t\t\t\t\tconst eachHoverText = isDefined(each.hoverText)\r\n\t\t\t\t\t\t? { ...hoverTextWidthDefault, ...each.hoverText }\r\n\t\t\t\t\t\t: hoverTextWidthDefault;\r\n\r\n\t\t\t\t\treturn (\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t);\r\n\t\t\t\t})}\r\n\t\t\t\t{currentRetracement}\r\n\t\t\t\t\r\n\t\t\t\r\n\t\t);\r\n\t}\r\n}\r\n\r\n// onClick={this.handleClick}\r\n\r\nFibonacciRetracement.propTypes = {\r\n\tenabled: PropTypes.bool.isRequired,\r\n\twidth: PropTypes.number,\r\n\r\n\tonStart: PropTypes.func,\r\n\tonComplete: PropTypes.func,\r\n\tonSelect: PropTypes.func,\r\n\r\n\ttype: PropTypes.oneOf([\r\n\t\t\"EXTEND\", // extends from -Infinity to +Infinity\r\n\t\t\"RAY\", // extends to +/-Infinity in one direction\r\n\t\t\"BOUND\" // extends between the set bounds\r\n\t]).isRequired,\r\n\thoverText: PropTypes.object.isRequired,\r\n\r\n\tcurrentPositionStroke: PropTypes.string,\r\n\tcurrentPositionStrokeWidth: PropTypes.number,\r\n\tcurrentPositionOpacity: PropTypes.number,\r\n\tcurrentPositionRadius: PropTypes.number,\r\n\r\n\tretracements: PropTypes.array.isRequired,\r\n\r\n\tappearance: PropTypes.shape({\r\n\t\tstroke: PropTypes.string.isRequired,\r\n\t\tstrokeWidth: PropTypes.number.isRequired,\r\n\t\tstrokeOpacity: PropTypes.number.isRequired,\r\n\t\tfontFamily: PropTypes.string.isRequired,\r\n\t\tfontSize: PropTypes.number.isRequired,\r\n\t\tfontFill: PropTypes.string.isRequired,\r\n\t\tedgeStroke: PropTypes.string.isRequired,\r\n\t\tedgeFill: PropTypes.string.isRequired,\r\n\t\tnsEdgeFill: PropTypes.string.isRequired,\r\n\t\tedgeStrokeWidth: PropTypes.number.isRequired,\r\n\t\tr: PropTypes.number.isRequired,\r\n\t}).isRequired\r\n};\r\n\r\nFibonacciRetracement.defaultProps = {\r\n\tenabled: true,\r\n\ttype: \"RAY\",\r\n\tretracements: [],\r\n\r\n\tonStart: noop,\r\n\tonComplete: noop,\r\n\tonSelect: noop,\r\n\r\n\thoverText: {\r\n\t\t...HoverTextNearMouse.defaultProps,\r\n\t\tenable: true,\r\n\t\tbgHeight: \"auto\",\r\n\t\tbgWidth: \"auto\",\r\n\t\ttext: \"Click to select object\",\r\n\t\tselectedText: \"\",\r\n\t},\r\n\tcurrentPositionStroke: \"#000000\",\r\n\tcurrentPositionOpacity: 1,\r\n\tcurrentPositionStrokeWidth: 3,\r\n\tcurrentPositionRadius: 4,\r\n\r\n\tappearance: {\r\n\t\tstroke: \"#000000\",\r\n\t\tstrokeWidth: 1,\r\n\t\tstrokeOpacity: 1,\r\n\t\tfontFamily: \"Helvetica Neue, Helvetica, Arial, sans-serif\",\r\n\t\tfontSize: 11,\r\n\t\tfontFill: \"#000000\",\r\n\t\tedgeStroke: \"#000000\",\r\n\t\tedgeFill: \"#FFFFFF\",\r\n\t\tnsEdgeFill: \"#000000\",\r\n\t\tedgeStrokeWidth: 1,\r\n\t\tr: 5,\r\n\t}\r\n};\r\n\r\nexport default FibonacciRetracement;\r\n","import React, { Component } from \"react\";\r\nimport PropTypes from \"prop-types\";\r\n\r\nimport { path as d3Path } from \"d3-path\";\r\n\r\nimport GenericChartComponent from \"../../GenericChartComponent\";\r\nimport { getMouseCanvas } from \"../../GenericComponent\";\r\nimport { generateLine, isHovering } from \"./StraightLine\";\r\n\r\nimport { isDefined, isNotDefined, noop, hexToRGBA } from \"../../utils\";\r\n\r\nclass ChannelWithArea extends Component {\r\n\tconstructor(props) {\r\n\t\tsuper(props);\r\n\r\n\t\tthis.renderSVG = this.renderSVG.bind(this);\r\n\t\tthis.drawOnCanvas = this.drawOnCanvas.bind(this);\r\n\t\tthis.isHover = this.isHover.bind(this);\r\n\t}\r\n\tisHover(moreProps) {\r\n\t\tconst { tolerance, onHover } = this.props;\r\n\r\n\t\tif (isDefined(onHover)) {\r\n\r\n\t\t\tconst { lines, line1, line2 } = helper(this.props, moreProps);\r\n\r\n\t\t\tif (isDefined(line1) && isDefined(line2)) {\r\n\t\t\t\tconst { mouseXY, xScale, chartConfig: { yScale } } = moreProps;\r\n\r\n\t\t\t\tconst line1Hovering = isHovering({\r\n\t\t\t\t\tx1Value: lines.line1.x1,\r\n\t\t\t\t\ty1Value: lines.line1.y1,\r\n\t\t\t\t\tx2Value: lines.line1.x2,\r\n\t\t\t\t\ty2Value: lines.line1.y2,\r\n\t\t\t\t\ttype: \"LINE\",\r\n\t\t\t\t\tmouseXY,\r\n\t\t\t\t\ttolerance,\r\n\t\t\t\t\txScale,\r\n\t\t\t\t\tyScale,\r\n\t\t\t\t});\r\n\t\t\t\tconst line2Hovering = isHovering({\r\n\t\t\t\t\tx1Value: lines.line2.x1,\r\n\t\t\t\t\ty1Value: lines.line2.y1,\r\n\t\t\t\t\tx2Value: lines.line2.x2,\r\n\t\t\t\t\ty2Value: lines.line2.y2,\r\n\t\t\t\t\ttype: \"LINE\",\r\n\t\t\t\t\tmouseXY,\r\n\t\t\t\t\ttolerance,\r\n\t\t\t\t\txScale,\r\n\t\t\t\t\tyScale,\r\n\t\t\t\t});\r\n\r\n\t\t\t\treturn line1Hovering || line2Hovering;\r\n\t\t\t}\r\n\t\t}\r\n\t\treturn false;\r\n\t}\r\n\tdrawOnCanvas(ctx, moreProps) {\r\n\t\tconst { stroke, strokeWidth, fillOpacity, strokeOpacity, fill } = this.props;\r\n\t\tconst { line1, line2 } = helper(this.props, moreProps);\r\n\r\n\t\tif (isDefined(line1)) {\r\n\t\t\tconst { x1, y1, x2, y2 } = line1;\r\n\r\n\t\t\tctx.lineWidth = strokeWidth;\r\n\t\t\tctx.strokeStyle = hexToRGBA(stroke, strokeOpacity);\r\n\r\n\t\t\tctx.beginPath();\r\n\t\t\tctx.moveTo(x1, y1);\r\n\t\t\tctx.lineTo(x2, y2);\r\n\t\t\tctx.stroke();\r\n\t\t\tif (isDefined(line2)) {\r\n\t\t\t\tconst {\r\n\t\t\t\t\ty1: line2Y1,\r\n\t\t\t\t\ty2: line2Y2\r\n\t\t\t\t} = line2;\r\n\r\n\t\t\t\tctx.beginPath();\r\n\t\t\t\tctx.moveTo(x1, line2Y1);\r\n\t\t\t\tctx.lineTo(x2, line2Y2);\r\n\t\t\t\tctx.stroke();\r\n\r\n\t\t\t\tctx.fillStyle = hexToRGBA(fill, fillOpacity);\r\n\t\t\t\tctx.beginPath();\r\n\t\t\t\tctx.moveTo(x1, y1);\r\n\r\n\t\t\t\tctx.lineTo(x2, y2);\r\n\t\t\t\tctx.lineTo(x2, line2Y2);\r\n\t\t\t\tctx.lineTo(x1, line2Y1);\r\n\r\n\t\t\t\tctx.closePath();\r\n\t\t\t\tctx.fill();\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n\trenderSVG(moreProps) {\r\n\t\tconst { stroke, strokeWidth, fillOpacity, fill, strokeOpacity } = this.props;\r\n\t\tconst { line1, line2 } = helper(this.props, moreProps);\r\n\r\n\t\tif (isDefined(line1)) {\r\n\t\t\tconst { x1, y1, x2, y2 } = line1;\r\n\t\t\tconst line = isDefined(line2)\r\n\t\t\t\t? \r\n\t\t\t\t: null;\r\n\t\t\tconst area = isDefined(line2)\r\n\t\t\t\t? \r\n\t\t\t\t: null;\r\n\r\n\t\t\treturn (\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t{line}\r\n\t\t\t\t\t{area}\r\n\t\t\t\t\r\n\t\t\t);\r\n\t\t}\r\n\t}\r\n\trender() {\r\n\t\tconst { selected, interactiveCursorClass } = this.props;\r\n\t\tconst { onDragStart, onDrag, onDragComplete, onHover, onUnHover } = this.props;\r\n\r\n\t\treturn ;\r\n\t}\r\n}\r\nfunction getPath(line1, line2) {\r\n\tconst ctx = d3Path();\r\n\tctx.moveTo(line1.x1, line1.y1);\r\n\tctx.lineTo(line1.x2, line1.y2);\r\n\tctx.lineTo(line1.x2, line2.y2);\r\n\tctx.lineTo(line1.x1, line2.y1);\r\n\r\n\tctx.closePath();\r\n\treturn ctx.toString();\r\n}\r\n\r\nfunction getLines(props, moreProps) {\r\n\tconst { startXY, endXY, dy, type } = props;\r\n\tconst { xScale } = moreProps;\r\n\r\n\tif (isNotDefined(startXY) || isNotDefined(endXY)) {\r\n\t\treturn {};\r\n\t}\r\n\tconst line1 = generateLine({\r\n\t\ttype,\r\n\t\tstart: startXY,\r\n\t\tend: endXY,\r\n\t\txScale,\r\n\t});\r\n\tconst line2 = isDefined(dy)\r\n\t\t? {\r\n\t\t\t...line1,\r\n\t\t\ty1: line1.y1 + dy,\r\n\t\t\ty2: line1.y2 + dy,\r\n\t\t}\r\n\t\t: undefined;\r\n\r\n\r\n\treturn {\r\n\t\tline1,\r\n\t\tline2,\r\n\t};\r\n}\r\n\r\nfunction helper(props, moreProps) {\r\n\tconst lines = getLines(props, moreProps);\r\n\tconst { xScale, chartConfig: { yScale } } = moreProps;\r\n\r\n\tconst x1 = xScale(lines.line1.x1);\r\n\tconst y1 = yScale(lines.line1.y1);\r\n\tconst x2 = xScale(lines.line1.x2);\r\n\tconst y2 = yScale(lines.line1.y2);\r\n\r\n\tconst line2 = isDefined(lines.line2)\r\n\t\t? {\r\n\t\t\tx1,\r\n\t\t\ty1: yScale(lines.line2.y1),\r\n\t\t\tx2,\r\n\t\t\ty2: yScale(lines.line2.y2),\r\n\t\t}\r\n\t\t: undefined;\r\n\r\n\treturn {\r\n\t\tlines,\r\n\t\tline1: {\r\n\t\t\tx1, y1, x2, y2\r\n\t\t},\r\n\t\tline2\r\n\t};\r\n}\r\n\r\nChannelWithArea.propTypes = {\r\n\tinteractiveCursorClass: PropTypes.string,\r\n\tstroke: PropTypes.string.isRequired,\r\n\tstrokeWidth: PropTypes.number.isRequired,\r\n\tfill: PropTypes.string.isRequired,\r\n\tfillOpacity: PropTypes.number.isRequired,\r\n\tstrokeOpacity: PropTypes.number.isRequired,\r\n\r\n\ttype: PropTypes.oneOf([\r\n\t\t\"XLINE\", // extends from -Infinity to +Infinity\r\n\t\t\"RAY\", // extends to +/-Infinity in one direction\r\n\t\t\"LINE\", // extends between the set bounds\r\n\t]).isRequired,\r\n\r\n\tonDragStart: PropTypes.func.isRequired,\r\n\tonDrag: PropTypes.func.isRequired,\r\n\tonDragComplete: PropTypes.func.isRequired,\r\n\tonHover: PropTypes.func,\r\n\tonUnHover: PropTypes.func,\r\n\r\n\tdefaultClassName: PropTypes.string,\r\n\r\n\ttolerance: PropTypes.number.isRequired,\r\n\tselected: PropTypes.bool.isRequired,\r\n};\r\n\r\nChannelWithArea.defaultProps = {\r\n\tonDragStart: noop,\r\n\tonDrag: noop,\r\n\tonDragComplete: noop,\r\n\ttype: \"LINE\",\r\n\r\n\tstrokeWidth: 1,\r\n\ttolerance: 4,\r\n\tselected: false,\r\n};\r\n\r\nexport default ChannelWithArea;","import React, { Component } from \"react\";\r\nimport PropTypes from \"prop-types\";\r\n\r\nimport { isDefined, noop } from \"../../utils\";\r\nimport { getXValue } from \"../../utils/ChartDataUtil\";\r\nimport { saveNodeType, isHover } from \"../utils\";\r\n\r\nimport ClickableCircle from \"../components/ClickableCircle\";\r\nimport ChannelWithArea from \"../components/ChannelWithArea\";\r\nimport HoverTextNearMouse from \"../components/HoverTextNearMouse\";\r\n\r\nclass EachEquidistantChannel extends Component {\r\n\tconstructor(props) {\r\n\t\tsuper(props);\r\n\r\n\t\tthis.handleLine1Edge1Drag = this.handleLine1Edge1Drag.bind(this);\r\n\t\tthis.handleLine1Edge2Drag = this.handleLine1Edge2Drag.bind(this);\r\n\r\n\t\tthis.handleDragStart = this.handleDragStart.bind(this);\r\n\t\tthis.handleChannelDrag = this.handleChannelDrag.bind(this);\r\n\r\n\t\tthis.handleChannelHeightChange = this.handleChannelHeightChange.bind(this);\r\n\r\n\t\tthis.getEdgeCircle = this.getEdgeCircle.bind(this);\r\n\t\tthis.handleHover = this.handleHover.bind(this);\r\n\r\n\t\tthis.isHover = isHover.bind(this);\r\n\t\tthis.saveNodeType = saveNodeType.bind(this);\r\n\t\tthis.nodes = {};\r\n\r\n\t\tthis.state = {\r\n\t\t\thover: false,\r\n\t\t};\r\n\t}\r\n\thandleHover(moreProps) {\r\n\t\tif (this.state.hover !== moreProps.hovering) {\r\n\t\t\tthis.setState({\r\n\t\t\t\thover: moreProps.hovering\r\n\t\t\t});\r\n\t\t}\r\n\t}\r\n\thandleDragStart() {\r\n\t\tconst {\r\n\t\t\tstartXY, endXY, dy,\r\n\t\t} = this.props;\r\n\r\n\t\tthis.dragStart = {\r\n\t\t\tstartXY, endXY, dy,\r\n\t\t};\r\n\t}\r\n\thandleChannelDrag(moreProps) {\r\n\t\tconst { index, onDrag } = this.props;\r\n\r\n\t\tconst {\r\n\t\t\tstartXY, endXY,\r\n\t\t} = this.dragStart;\r\n\r\n\t\tconst { xScale, chartConfig: { yScale }, xAccessor, fullData } = moreProps;\r\n\t\tconst { startPos, mouseXY } = moreProps;\r\n\r\n\t\tconst x1 = xScale(startXY[0]);\r\n\t\tconst y1 = yScale(startXY[1]);\r\n\t\tconst x2 = xScale(endXY[0]);\r\n\t\tconst y2 = yScale(endXY[1]);\r\n\r\n\t\tconst dx = startPos[0] - mouseXY[0];\r\n\t\tconst dy = startPos[1] - mouseXY[1];\r\n\r\n\t\tconst newX1Value = getXValue(xScale, xAccessor, [x1 - dx, y1 - dy], fullData);\r\n\t\tconst newY1Value = yScale.invert(y1 - dy);\r\n\t\tconst newX2Value = getXValue(xScale, xAccessor, [x2 - dx, y2 - dy], fullData);\r\n\t\tconst newY2Value = yScale.invert(y2 - dy);\r\n\r\n\t\t// const newDy = newY2Value - endXY[1] + this.dragStart.dy;\r\n\r\n\t\tonDrag(index, {\r\n\t\t\tstartXY: [newX1Value, newY1Value],\r\n\t\t\tendXY: [newX2Value, newY2Value],\r\n\t\t\tdy: this.dragStart.dy,\r\n\t\t});\r\n\t}\r\n\thandleLine1Edge1Drag(moreProps) {\r\n\t\tconst { index, onDrag } = this.props;\r\n\t\tconst {\r\n\t\t\tstartXY,\r\n\t\t} = this.dragStart;\r\n\r\n\t\tconst {\r\n\t\t\tstartPos, mouseXY, xAccessor,\r\n\t\t\txScale, fullData,\r\n\t\t\tchartConfig: { yScale }\r\n\t\t} = moreProps;\r\n\r\n\t\tconst dx = startPos[0] - mouseXY[0];\r\n\t\tconst dy = startPos[1] - mouseXY[1];\r\n\r\n\t\tconst x1 = xScale(startXY[0]);\r\n\t\tconst y1 = yScale(startXY[1]);\r\n\r\n\t\tconst newX1Value = getXValue(xScale, xAccessor, [x1 - dx, y1 - dy], fullData);\r\n\t\tconst newY1Value = yScale.invert(y1 - dy);\r\n\r\n\t\tonDrag(index, {\r\n\t\t\tstartXY: [newX1Value, newY1Value],\r\n\t\t\tendXY: this.dragStart.endXY,\r\n\t\t\tdy: this.dragStart.dy,\r\n\t\t});\r\n\t}\r\n\thandleLine1Edge2Drag(moreProps) {\r\n\t\tconst { index, onDrag } = this.props;\r\n\t\tconst {\r\n\t\t\tendXY,\r\n\t\t} = this.dragStart;\r\n\r\n\t\tconst {\r\n\t\t\tstartPos, mouseXY, xAccessor,\r\n\t\t\txScale, fullData,\r\n\t\t\tchartConfig: { yScale }\r\n\t\t} = moreProps;\r\n\r\n\t\tconst dx = startPos[0] - mouseXY[0];\r\n\t\tconst dy = startPos[1] - mouseXY[1];\r\n\r\n\t\tconst x1 = xScale(endXY[0]);\r\n\t\tconst y1 = yScale(endXY[1]);\r\n\r\n\t\tconst newX1Value = getXValue(xScale, xAccessor, [x1 - dx, y1 - dy], fullData);\r\n\t\tconst newY1Value = yScale.invert(y1 - dy);\r\n\r\n\t\tonDrag(index, {\r\n\t\t\tstartXY: this.dragStart.startXY,\r\n\t\t\tendXY: [newX1Value, newY1Value],\r\n\t\t\tdy: this.dragStart.dy,\r\n\t\t});\r\n\t}\r\n\thandleChannelHeightChange(moreProps) {\r\n\t\tconst { index, onDrag } = this.props;\r\n\r\n\t\tconst {\r\n\t\t\tstartXY, endXY,\r\n\t\t} = this.dragStart;\r\n\r\n\t\tconst { chartConfig: { yScale } } = moreProps;\r\n\t\tconst { startPos, mouseXY } = moreProps;\r\n\r\n\t\tconst y2 = yScale(endXY[1]);\r\n\r\n\t\tconst dy = startPos[1] - mouseXY[1];\r\n\r\n\t\tconst newY2Value = yScale.invert(y2 - dy);\r\n\r\n\t\tconst newDy = newY2Value - endXY[1] + this.dragStart.dy;\r\n\r\n\t\tonDrag(index, {\r\n\t\t\tstartXY,\r\n\t\t\tendXY,\r\n\t\t\tdy: newDy,\r\n\t\t});\r\n\t}\r\n\tgetEdgeCircle({ xy, dragHandler, cursor, fill, edge }) {\r\n\t\tconst { hover } = this.state;\r\n\t\tconst { appearance } = this.props;\r\n\t\tconst { edgeStroke, edgeStrokeWidth, r } = appearance;\r\n\t\tconst { selected } = this.props;\r\n\t\tconst { onDragComplete } = this.props;\r\n\r\n\t\treturn ;\r\n\t}\r\n\trender() {\r\n\t\tconst { startXY, endXY, dy } = this.props;\r\n\t\tconst { interactive, hoverText, appearance } = this.props;\r\n\t\tconst {\r\n\t\t\tedgeFill, edgeFill2,\r\n\t\t\tstroke, strokeWidth, strokeOpacity,\r\n\t\t\tfill, fillOpacity,\r\n\t\t} = appearance;\r\n\t\tconst { selected } = this.props;\r\n\t\tconst { onDragComplete } = this.props;\r\n\t\tconst { hover } = this.state;\r\n\t\tconst { enable: hoverTextEnabled, ...restHoverTextProps } = hoverText;\r\n\r\n\t\tconst hoverHandler = interactive\r\n\t\t\t? { onHover: this.handleHover, onUnHover: this.handleHover }\r\n\t\t\t: {};\r\n\r\n\t\tconst line1Edge = isDefined(startXY) && isDefined(endXY)\r\n\t\t\t? \r\n\t\t\t\t{this.getEdgeCircle({\r\n\t\t\t\t\txy: startXY,\r\n\t\t\t\t\tdragHandler: this.handleLine1Edge1Drag,\r\n\t\t\t\t\tcursor: \"react-stockcharts-move-cursor\",\r\n\t\t\t\t\tfill: edgeFill,\r\n\t\t\t\t\tedge: \"line1edge1\",\r\n\t\t\t\t})}\r\n\t\t\t\t{this.getEdgeCircle({\r\n\t\t\t\t\txy: endXY,\r\n\t\t\t\t\tdragHandler: this.handleLine1Edge2Drag,\r\n\t\t\t\t\tcursor: \"react-stockcharts-move-cursor\",\r\n\t\t\t\t\tfill: edgeFill,\r\n\t\t\t\t\tedge: \"line1edge2\",\r\n\t\t\t\t})}\r\n\t\t\t\r\n\t\t\t: null;\r\n\t\tconst line2Edge = isDefined(dy)\r\n\t\t\t? \r\n\t\t\t\t{this.getEdgeCircle({\r\n\t\t\t\t\txy: [startXY[0], startXY[1] + dy],\r\n\t\t\t\t\tdragHandler: this.handleChannelHeightChange,\r\n\t\t\t\t\tcursor: \"react-stockcharts-ns-resize-cursor\",\r\n\t\t\t\t\tfill: edgeFill2,\r\n\t\t\t\t\tedge: \"line2edge1\",\r\n\t\t\t\t})}\r\n\t\t\t\t{this.getEdgeCircle({\r\n\t\t\t\t\txy: [endXY[0], endXY[1] + dy],\r\n\t\t\t\t\tdragHandler: this.handleChannelHeightChange,\r\n\t\t\t\t\tcursor: \"react-stockcharts-ns-resize-cursor\",\r\n\t\t\t\t\tfill: edgeFill2,\r\n\t\t\t\t\tedge: \"line2edge2\",\r\n\t\t\t\t})}\r\n\t\t\t\r\n\t\t\t: null;\r\n\r\n\t\treturn \r\n\t\t\t\r\n\t\t\t{line1Edge}\r\n\t\t\t{line2Edge}\r\n\t\t\t\r\n\t\t;\r\n\t}\r\n}\r\n\r\nEachEquidistantChannel.propTypes = {\r\n\tstartXY: PropTypes.arrayOf(PropTypes.number).isRequired,\r\n\tendXY: PropTypes.arrayOf(PropTypes.number).isRequired,\r\n\tdy: PropTypes.number,\r\n\r\n\tinteractive: PropTypes.bool.isRequired,\r\n\tselected: PropTypes.bool.isRequired,\r\n\thoverText: PropTypes.object.isRequired,\r\n\r\n\tappearance: PropTypes.shape({\r\n\t\tstroke: PropTypes.string.isRequired,\r\n\t\tfillOpacity: PropTypes.number.isRequired,\r\n\t\tstrokeOpacity: PropTypes.number.isRequired,\r\n\t\tstrokeWidth: PropTypes.number.isRequired,\r\n\t\tfill: PropTypes.string.isRequired,\r\n\t\tedgeStroke: PropTypes.string.isRequired,\r\n\t\tedgeFill: PropTypes.string.isRequired,\r\n\t\tedgeFill2: PropTypes.string.isRequired,\r\n\t\tedgeStrokeWidth: PropTypes.number.isRequired,\r\n\t\tr: PropTypes.number.isRequired,\r\n\t}).isRequired,\r\n\r\n\tindex: PropTypes.number,\r\n\tonDrag: PropTypes.func.isRequired,\r\n\tonDragComplete: PropTypes.func.isRequired,\r\n};\r\n\r\nEachEquidistantChannel.defaultProps = {\r\n\tyDisplayFormat: d => d.toFixed(2),\r\n\tinteractive: true,\r\n\tselected: false,\r\n\r\n\tonDrag: noop,\r\n\tonDragComplete: noop,\r\n\thoverText: {\r\n\t\tenable: false,\r\n\t}\r\n};\r\n\r\nexport default EachEquidistantChannel;","\r\n\r\nimport React, { Component } from \"react\";\r\nimport PropTypes from \"prop-types\";\r\n\r\nimport { isDefined, isNotDefined, noop } from \"../utils\";\r\nimport {\r\n\tterminate,\r\n\tsaveNodeType,\r\n\tisHoverForInteractiveType,\r\n} from \"./utils\";\r\nimport EachEquidistantChannel from \"./wrapper/EachEquidistantChannel\";\r\nimport { getSlope, getYIntercept } from \"./components/StraightLine\";\r\nimport MouseLocationIndicator from \"./components/MouseLocationIndicator\";\r\nimport HoverTextNearMouse from \"./components/HoverTextNearMouse\";\r\n\r\nclass EquidistantChannel extends Component {\r\n\tconstructor(props) {\r\n\t\tsuper(props);\r\n\r\n\t\tthis.handleStart = this.handleStart.bind(this);\r\n\t\tthis.handleEnd = this.handleEnd.bind(this);\r\n\t\tthis.handleDrawChannel = this.handleDrawChannel.bind(this);\r\n\t\tthis.handleDragChannel = this.handleDragChannel.bind(this);\r\n\t\tthis.handleDragChannelComplete = this.handleDragChannelComplete.bind(this);\r\n\r\n\t\tthis.terminate = terminate.bind(this);\r\n\t\tthis.saveNodeType = saveNodeType.bind(this);\r\n\r\n\t\tthis.getSelectionState = isHoverForInteractiveType(\"channels\")\r\n\t\t\t.bind(this);\r\n\r\n\t\tthis.nodes = [];\r\n\t\tthis.state = {\r\n\t\t};\r\n\t}\r\n\thandleDragChannel(index, newXYValue) {\r\n\t\tthis.setState({\r\n\t\t\toverride: {\r\n\t\t\t\tindex,\r\n\t\t\t\t...newXYValue\r\n\t\t\t}\r\n\t\t});\r\n\t}\r\n\thandleDragChannelComplete(moreProps) {\r\n\t\tconst { override } = this.state;\r\n\t\tconst { channels } = this.props;\r\n\r\n\t\tif (isDefined(override)) {\r\n\t\t\tconst { index, ...rest } = override;\r\n\t\t\tconst newChannels = channels\r\n\t\t\t\t.map((each, idx) => idx === index\r\n\t\t\t\t\t? { ...each, ...rest, selected: true }\r\n\t\t\t\t\t: each);\r\n\t\t\tthis.setState({\r\n\t\t\t\toverride: null,\r\n\t\t\t}, () => {\r\n\t\t\t\tthis.props.onComplete(newChannels, moreProps);\r\n\t\t\t});\r\n\t\t}\r\n\t}\r\n\thandleDrawChannel(xyValue) {\r\n\t\tconst { current } = this.state;\r\n\r\n\t\tif (isDefined(current)\r\n\t\t\t\t&& isDefined(current.startXY)) {\r\n\t\t\tthis.mouseMoved = true;\r\n\t\t\tif (isNotDefined(current.dy)) {\r\n\t\t\t\tthis.setState({\r\n\t\t\t\t\tcurrent: {\r\n\t\t\t\t\t\tstartXY: current.startXY,\r\n\t\t\t\t\t\tendXY: xyValue,\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t\t} else {\r\n\t\t\t\tconst m = getSlope(current.startXY, current.endXY);\r\n\t\t\t\tconst b = getYIntercept(m, current.endXY);\r\n\t\t\t\tconst y = m * xyValue[0] + b;\r\n\t\t\t\tconst dy = xyValue[1] - y;\r\n\r\n\t\t\t\tthis.setState({\r\n\t\t\t\t\tcurrent: {\r\n\t\t\t\t\t\t...current,\r\n\t\t\t\t\t\tdy,\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n\thandleStart(xyValue) {\r\n\t\tconst { current } = this.state;\r\n\r\n\t\tif (isNotDefined(current) || isNotDefined(current.startXY)) {\r\n\t\t\tthis.mouseMoved = false;\r\n\t\t\tthis.setState({\r\n\t\t\t\tcurrent: {\r\n\t\t\t\t\tstartXY: xyValue,\r\n\t\t\t\t\tendXY: null,\r\n\t\t\t\t}\r\n\t\t\t}, () => {\r\n\t\t\t\tthis.props.onStart();\r\n\t\t\t});\r\n\t\t}\r\n\t}\r\n\thandleEnd(xyValue, moreProps, e) {\r\n\t\tconst { current } = this.state;\r\n\t\tconst { channels, appearance } = this.props;\r\n\r\n\t\tif (this.mouseMoved\r\n\t\t\t&& isDefined(current)\r\n\t\t\t&& isDefined(current.startXY)\r\n\t\t) {\r\n\r\n\t\t\tif (isNotDefined(current.dy)) {\r\n\t\t\t\tthis.setState({\r\n\t\t\t\t\tcurrent: {\r\n\t\t\t\t\t\t...current,\r\n\t\t\t\t\t\tdy: 0\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t\t} else {\r\n\t\t\t\tconst newChannels = [\r\n\t\t\t\t\t...channels.map(d => ({ ...d, selected: false })),\r\n\t\t\t\t\t{\r\n\t\t\t\t\t\t...current, selected: true,\r\n\t\t\t\t\t\tappearance,\r\n\t\t\t\t\t}\r\n\t\t\t\t];\r\n\r\n\t\t\t\tthis.setState({\r\n\t\t\t\t\tcurrent: null,\r\n\t\t\t\t}, () => {\r\n\r\n\t\t\t\t\tthis.props.onComplete(newChannels, moreProps, e);\r\n\t\t\t\t});\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n\trender() {\r\n\t\tconst { appearance } = this.props;\r\n\t\tconst { enabled } = this.props;\r\n\t\tconst { currentPositionRadius, currentPositionStroke } = this.props;\r\n\t\tconst { currentPositionOpacity, currentPositionStrokeWidth } = this.props;\r\n\t\tconst { channels, hoverText } = this.props;\r\n\t\tconst { current, override } = this.state;\r\n\t\tconst overrideIndex = isDefined(override) ? override.index : null;\r\n\r\n\t\tconst tempChannel = isDefined(current) && isDefined(current.endXY)\r\n\t\t\t? \r\n\t\t\t: null;\r\n\r\n\t\treturn \r\n\t\t\t{channels.map((each, idx) => {\r\n\t\t\t\tconst eachAppearance = isDefined(each.appearance)\r\n\t\t\t\t\t? { ...appearance, ...each.appearance }\r\n\t\t\t\t\t: appearance;\r\n\r\n\t\t\t\treturn ;\r\n\t\t\t})}\r\n\t\t\t{tempChannel}\r\n\t\t\t\r\n\t\t;\r\n\t}\r\n}\r\n\r\n\r\nEquidistantChannel.propTypes = {\r\n\tenabled: PropTypes.bool.isRequired,\r\n\r\n\tonStart: PropTypes.func.isRequired,\r\n\tonComplete: PropTypes.func.isRequired,\r\n\tonSelect: PropTypes.func.isRequired,\r\n\r\n\tcurrentPositionStroke: PropTypes.string,\r\n\tcurrentPositionStrokeWidth: PropTypes.number,\r\n\tcurrentPositionOpacity: PropTypes.number,\r\n\tcurrentPositionRadius: PropTypes.number,\r\n\r\n\thoverText: PropTypes.object.isRequired,\r\n\tchannels: PropTypes.array.isRequired,\r\n\r\n\tappearance: PropTypes.shape({\r\n\t\tstroke: PropTypes.string.isRequired,\r\n\t\tstrokeOpacity: PropTypes.number.isRequired,\r\n\t\tstrokeWidth: PropTypes.number.isRequired,\r\n\t\tfill: PropTypes.string.isRequired,\r\n\t\tfillOpacity: PropTypes.number.isRequired,\r\n\t\tedgeStroke: PropTypes.string.isRequired,\r\n\t\tedgeFill: PropTypes.string.isRequired,\r\n\t\tedgeFill2: PropTypes.string.isRequired,\r\n\t\tedgeStrokeWidth: PropTypes.number.isRequired,\r\n\t\tr: PropTypes.number.isRequired,\r\n\t}).isRequired\r\n};\r\n\r\nEquidistantChannel.defaultProps = {\r\n\tonStart: noop,\r\n\tonComplete: noop,\r\n\tonSelect: noop,\r\n\r\n\tcurrentPositionStroke: \"#000000\",\r\n\tcurrentPositionOpacity: 1,\r\n\tcurrentPositionStrokeWidth: 3,\r\n\tcurrentPositionRadius: 4,\r\n\r\n\thoverText: {\r\n\t\t...HoverTextNearMouse.defaultProps,\r\n\t\tenable: true,\r\n\t\tbgHeight: 18,\r\n\t\tbgWidth: 120,\r\n\t\ttext: \"Click to select object\",\r\n\t},\r\n\tchannels: [],\r\n\tappearance: {\r\n\t\tstroke: \"#000000\",\r\n\t\tstrokeOpacity: 1,\r\n\t\tstrokeWidth: 1,\r\n\t\tfill: \"#8AAFE2\",\r\n\t\tfillOpacity: 0.7,\r\n\t\tedgeStroke: \"#000000\",\r\n\t\tedgeFill: \"#FFFFFF\",\r\n\t\tedgeFill2: \"#250B98\",\r\n\t\tedgeStrokeWidth: 1,\r\n\t\tr: 5,\r\n\t}\r\n};\r\n\r\nexport default EquidistantChannel;\r\n","import React, { Component } from \"react\";\r\nimport PropTypes from \"prop-types\";\r\nimport { sum, deviation } from \"d3-array\";\r\nimport { path as d3Path } from \"d3-path\";\r\n\r\nimport GenericChartComponent from \"../../GenericChartComponent\";\r\nimport { getMouseCanvas } from \"../../GenericComponent\";\r\nimport { isHovering2 } from \"./StraightLine\";\r\n\r\nimport { isDefined, getClosestItemIndexes, noop, zipper, hexToRGBA } from \"../../utils\";\r\n\r\nclass LinearRegressionChannelWithArea extends Component {\r\n\tconstructor(props) {\r\n\t\tsuper(props);\r\n\r\n\t\tthis.renderSVG = this.renderSVG.bind(this);\r\n\t\tthis.drawOnCanvas = this.drawOnCanvas.bind(this);\r\n\t\tthis.isHover = this.isHover.bind(this);\r\n\t}\r\n\tisHover(moreProps) {\r\n\t\tconst { tolerance, onHover } = this.props;\r\n\r\n\t\tif (isDefined(onHover)) {\r\n\t\t\tconst { mouseXY } = moreProps;\r\n\r\n\t\t\tconst { x1, y1, x2, y2, dy } = helper(this.props, moreProps);\r\n\t\t\tconst yDiffs = [-dy, 0, dy];\r\n\r\n\t\t\tconst hovering = yDiffs.reduce((result, diff) => result || isHovering2(\r\n\t\t\t\t[x1, y1 + diff], [x2, y2 + diff], mouseXY, tolerance\r\n\t\t\t), false);\r\n\t\t\treturn hovering;\r\n\t\t}\r\n\t\treturn false;\r\n\t}\r\n\tdrawOnCanvas(ctx, moreProps) {\r\n\t\tconst { stroke, strokeWidth, fillOpacity, strokeOpacity, fill } = this.props;\r\n\t\tconst { x1, y1, x2, y2, dy } = helper(this.props, moreProps);\r\n\r\n\t\tctx.lineWidth = strokeWidth;\r\n\t\tctx.strokeStyle = hexToRGBA(stroke, strokeOpacity);\r\n\t\tctx.fillStyle = hexToRGBA(fill, fillOpacity);\r\n\r\n\t\tctx.beginPath();\r\n\t\tctx.moveTo(x1, y1 - dy);\r\n\t\tctx.lineTo(x2, y2 - dy);\r\n\t\tctx.stroke();\r\n\r\n\t\tctx.beginPath();\r\n\t\tctx.moveTo(x2, y2 + dy);\r\n\t\tctx.lineTo(x1, y1 + dy);\r\n\t\tctx.stroke();\r\n\r\n\t\tctx.beginPath();\r\n\t\tctx.moveTo(x1, y1 - dy);\r\n\t\tctx.lineTo(x2, y2 - dy);\r\n\t\tctx.lineTo(x2, y2 + dy);\r\n\t\tctx.lineTo(x1, y1 + dy);\r\n\t\tctx.closePath();\r\n\t\tctx.fill();\r\n\r\n\t\tctx.beginPath();\r\n\t\tctx.moveTo(x2, y2);\r\n\t\tctx.lineTo(x1, y1);\r\n\t\tctx.stroke();\r\n\t}\r\n\trenderSVG(moreProps) {\r\n\t\tconst { stroke, strokeWidth, fillOpacity, strokeOpacity, fill } = this.props;\r\n\t\tconst { x1, y1, x2, y2, dy } = helper(this.props, moreProps);\r\n\t\tconst line = {\r\n\t\t\tstrokeWidth,\r\n\t\t\tstroke,\r\n\t\t\tstrokeOpacity,\r\n\t\t};\r\n\t\tconst ctx = d3Path();\r\n\t\tctx.moveTo(x1, y1 - dy);\r\n\t\tctx.lineTo(x2, y2 - dy);\r\n\t\tctx.lineTo(x2, y2 + dy);\r\n\t\tctx.lineTo(x1, y1 + dy);\r\n\t\tctx.closePath();\r\n\t\treturn (\r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\r\n\t\t);\r\n\t}\r\n\trender() {\r\n\t\tconst { selected, interactiveCursorClass } = this.props;\r\n\t\tconst { onHover, onUnHover } = this.props;\r\n\r\n\t\treturn ;\r\n\t}\r\n}\r\n\r\nexport function edge1Provider(props) {\r\n\treturn function(moreProps) {\r\n\t\tconst { x1, y1 } = helper(props, moreProps);\r\n\t\treturn [x1, y1];\r\n\t};\r\n}\r\n\r\nexport function edge2Provider(props) {\r\n\treturn function(moreProps) {\r\n\t\tconst { x2, y2 } = helper(props, moreProps);\r\n\t\treturn [x2, y2];\r\n\t};\r\n}\r\n\r\n\r\nfunction helper(props, moreProps) {\r\n\tconst { x1Value, x2Value, type } = props;\r\n\r\n\tconst { xScale, chartConfig: { yScale }, fullData } = moreProps;\r\n\tconst { xAccessor } = moreProps;\r\n\r\n\t/*\r\n\thttp://www.metastock.com/Customer/Resources/TAAZ/?p=65\r\n\ty = a + bx\r\n\tn = length of array\r\n\tb = (n * sum(x*y) - sum(xs) * sum(ys)) / (n * sum(xSquareds) - (sum(xs) ^ 2))\r\n\ta = (sum of closes)\r\n\t*/\r\n\r\n\tconst { left } = getClosestItemIndexes(fullData, x1Value, xAccessor);\r\n\tconst { right } = getClosestItemIndexes(fullData, x2Value, xAccessor);\r\n\r\n\tconst startIndex = Math.min(left, right);\r\n\tconst endIndex = Math.max(left, right) + 1;\r\n\r\n\tconst array = fullData.slice(startIndex, endIndex);\r\n\r\n\tconst xs = array.map(d => xAccessor(d).valueOf());\r\n\tconst ys = array.map(d => d.close);\r\n\tconst n = array.length;\r\n\r\n\tconst combine = zipper()\r\n\t\t.combine((x, y) => x * y);\r\n\r\n\tconst xys = combine(xs, ys);\r\n\tconst xSquareds = xs.map(x => Math.pow(x, 2));\r\n\r\n\tconst b = (n * sum(xys) - sum(xs) * sum(ys)) / (n * sum(xSquareds) - Math.pow(sum(xs), 2));\r\n\tconst a = (sum(ys) - b * sum(xs)) / n;\r\n\r\n\tconst newy1 = a + b * x1Value;\r\n\tconst newy2 = a + b * x2Value;\r\n\r\n\tconst x1 = xScale(x1Value);\r\n\tconst y1 = yScale(newy1);\r\n\tconst x2 = xScale(x2Value);\r\n\tconst y2 = yScale(newy2);\r\n\r\n\tconst stdDev = type === \"SD\"\r\n\t\t? deviation(array, d => d.close)\r\n\t\t: 0;\r\n\r\n\tconst dy = yScale(newy1 - stdDev) - y1;\r\n\r\n\treturn {\r\n\t\tx1, y1, x2, y2, dy\r\n\t};\r\n}\r\n\r\nLinearRegressionChannelWithArea.propTypes = {\r\n\tx1Value: PropTypes.any.isRequired,\r\n\tx2Value: PropTypes.any.isRequired,\r\n\r\n\ttype: PropTypes.oneOf([\r\n\t\t\"SD\", // standard deviation channel\r\n\t\t\"Raff\", // Raff Regression Channel\r\n\t]).isRequired,\r\n\r\n\tinteractiveCursorClass: PropTypes.string,\r\n\tstroke: PropTypes.string.isRequired,\r\n\tstrokeWidth: PropTypes.number.isRequired,\r\n\tfill: PropTypes.string.isRequired,\r\n\tfillOpacity: PropTypes.number.isRequired,\r\n\tstrokeOpacity: PropTypes.number.isRequired,\r\n\r\n\tonDragStart: PropTypes.func.isRequired,\r\n\tonDrag: PropTypes.func.isRequired,\r\n\tonDragComplete: PropTypes.func.isRequired,\r\n\r\n\tonHover: PropTypes.func,\r\n\tonUnHover: PropTypes.func,\r\n\r\n\tdefaultClassName: PropTypes.string,\r\n\r\n\ttolerance: PropTypes.number.isRequired,\r\n\tselected: PropTypes.bool.isRequired,\r\n};\r\n\r\nLinearRegressionChannelWithArea.defaultProps = {\r\n\tonDragStart: noop,\r\n\tonDrag: noop,\r\n\tonDragComplete: noop,\r\n\r\n\ttype: \"SD\", // standard dev\r\n\r\n\tstrokeWidth: 1,\r\n\ttolerance: 4,\r\n\tselected: false,\r\n};\r\n\r\nexport default LinearRegressionChannelWithArea;","import React, { Component } from \"react\";\r\nimport PropTypes from \"prop-types\";\r\n\r\nimport { noop } from \"../../utils\";\r\nimport { getCurrentItem } from \"../../utils/ChartDataUtil\";\r\nimport { saveNodeType, isHover } from \"../utils\";\r\n\r\nimport HoverTextNearMouse from \"../components/HoverTextNearMouse\";\r\nimport {\r\n\tdefault as LinearRegressionChannelWithArea,\r\n\tedge1Provider,\r\n\tedge2Provider\r\n} from \"../components/LinearRegressionChannelWithArea\";\r\n\r\nimport ClickableCircle from \"../components/ClickableCircle\";\r\n\r\nclass EachLinearRegressionChannel extends Component {\r\n\tconstructor(props) {\r\n\t\tsuper(props);\r\n\r\n\t\tthis.handleEdge1Drag = this.handleEdge1Drag.bind(this);\r\n\t\tthis.handleEdge2Drag = this.handleEdge2Drag.bind(this);\r\n\r\n\t\tthis.handleHover = this.handleHover.bind(this);\r\n\r\n\t\tthis.isHover = isHover.bind(this);\r\n\t\tthis.saveNodeType = saveNodeType.bind(this);\r\n\t\tthis.nodes = {};\r\n\r\n\t\tthis.state = {\r\n\t\t\thover: false,\r\n\t\t};\r\n\t}\r\n\thandleEdge1Drag(moreProps) {\r\n\t\tconst { index, onDrag, snapTo } = this.props;\r\n\t\tconst {\r\n\t\t\tx2Value,\r\n\t\t} = this.props;\r\n\r\n\t\tconst [x1Value] = getNewXY(moreProps, snapTo);\r\n\r\n\t\tonDrag(index, {\r\n\t\t\tx1Value,\r\n\t\t\tx2Value,\r\n\t\t});\r\n\t}\r\n\thandleEdge2Drag(moreProps) {\r\n\t\tconst { index, onDrag, snapTo } = this.props;\r\n\t\tconst {\r\n\t\t\tx1Value,\r\n\t\t} = this.props;\r\n\r\n\t\tconst [x2Value] = getNewXY(moreProps, snapTo);\r\n\r\n\t\tonDrag(index, {\r\n\t\t\tx1Value,\r\n\t\t\tx2Value,\r\n\t\t});\r\n\t}\r\n\thandleHover(moreProps) {\r\n\t\tif (this.state.hover !== moreProps.hovering) {\r\n\t\t\tthis.setState({\r\n\t\t\t\thover: moreProps.hovering\r\n\t\t\t});\r\n\t\t}\r\n\t}\r\n\trender() {\r\n\t\tconst {\r\n\t\t\tx1Value,\r\n\t\t\tx2Value,\r\n\t\t\tappearance,\r\n\t\t\tedgeInteractiveCursor,\r\n\t\t\thoverText,\r\n\t\t\tinteractive,\r\n\t\t\tselected,\r\n\t\t\tonDragComplete,\r\n\t\t} = this.props;\r\n\t\tconst {\r\n\t\t\tstroke,\r\n\t\t\tstrokeWidth,\r\n\t\t\tstrokeOpacity,\r\n\t\t\tfill,\r\n\t\t\tfillOpacity,\r\n\t\t\tr,\r\n\t\t\tedgeStrokeWidth,\r\n\t\t\tedgeFill,\r\n\t\t\tedgeStroke,\r\n\t\t} = appearance;\r\n\t\tconst { hover } = this.state;\r\n\r\n\t\tconst hoverHandler = interactive\r\n\t\t\t? { onHover: this.handleHover, onUnHover: this.handleHover }\r\n\t\t\t: {};\r\n\r\n\t\tconst {\r\n\t\t\tenable: hoverTextEnabled,\r\n\t\t\tselectedText: hoverTextSelected,\r\n\t\t\ttext: hoverTextUnselected,\r\n\t\t\t...restHoverTextProps\r\n\t\t} = hoverText;\r\n\r\n\t\treturn \r\n\t\t\t\r\n\t\t\t\r\n\t\t\t\r\n\t\t\t\r\n\t\t;\r\n\t}\r\n}\r\n\r\nexport function getNewXY(moreProps, snapTo) {\r\n\tconst { xScale, xAccessor, plotData, mouseXY } = moreProps;\r\n\r\n\tconst currentItem = getCurrentItem(xScale, xAccessor, mouseXY, plotData);\r\n\tconst x = xAccessor(currentItem);\r\n\tconst y = snapTo(currentItem);\r\n\r\n\treturn [x, y];\r\n}\r\n\r\nEachLinearRegressionChannel.propTypes = {\r\n\tdefaultClassName: PropTypes.string,\r\n\r\n\tx1Value: PropTypes.any.isRequired,\r\n\tx2Value: PropTypes.any.isRequired,\r\n\r\n\tindex: PropTypes.number,\r\n\r\n\tappearance: PropTypes.shape({\r\n\t\tstroke: PropTypes.string.isRequired,\r\n\t\tfillOpacity: PropTypes.number.isRequired,\r\n\t\tstrokeOpacity: PropTypes.number.isRequired,\r\n\t\tstrokeWidth: PropTypes.number.isRequired,\r\n\t\tfill: PropTypes.string.isRequired,\r\n\t\tedgeStrokeWidth: PropTypes.number.isRequired,\r\n\t\tedgeStroke: PropTypes.string.isRequired,\r\n\t\tedgeFill: PropTypes.string.isRequired,\r\n\t\tr: PropTypes.number.isRequired,\r\n\t}).isRequired,\r\n\r\n\tedgeInteractiveCursor: PropTypes.string,\r\n\tonDrag: PropTypes.func.isRequired,\r\n\tonDragComplete: PropTypes.func.isRequired,\r\n\tsnapTo: PropTypes.func,\r\n\tinteractive: PropTypes.bool.isRequired,\r\n\tselected: PropTypes.bool.isRequired,\r\n\r\n\thoverText: PropTypes.object.isRequired,\r\n};\r\n\r\nEachLinearRegressionChannel.defaultProps = {\r\n\tonDrag: noop,\r\n\tonDragComplete: noop,\r\n\r\n\tappearance: {\r\n\t\tstroke: \"#000000\",\r\n\t\tfillOpacity: 0.7,\r\n\t\tstrokeOpacity: 1,\r\n\t\tstrokeWidth: 1,\r\n\t\tfill: \"#8AAFE2\",\r\n\t\tedgeStrokeWidth: 2,\r\n\t\tedgeStroke: \"#000000\",\r\n\t\tedgeFill: \"#FFFFFF\",\r\n\t\tr: 5,\r\n\t},\r\n\tinteractive: true,\r\n\tselected: false,\r\n\thoverText: {\r\n\t\t...HoverTextNearMouse.defaultProps,\r\n\t\tenable: true,\r\n\t\tbgHeight: 18,\r\n\t\tbgWidth: 175,\r\n\t\ttext: \"Click and drag the edge circles\",\r\n\t}\r\n};\r\n\r\nexport default EachLinearRegressionChannel;","\r\n\r\nimport React, { Component } from \"react\";\r\nimport PropTypes from \"prop-types\";\r\n\r\nimport { isDefined, isNotDefined, noop } from \"../utils\";\r\n\r\nimport {\r\n\tgetValueFromOverride,\r\n\tterminate,\r\n\tsaveNodeType,\r\n\tisHoverForInteractiveType,\r\n} from \"./utils\";\r\n\r\nimport EachLinearRegressionChannel from \"./wrapper/EachLinearRegressionChannel\";\r\nimport MouseLocationIndicator from \"./components/MouseLocationIndicator\";\r\nimport HoverTextNearMouse from \"./components/HoverTextNearMouse\";\r\n\r\nclass StandardDeviationChannel extends Component {\r\n\tconstructor(props) {\r\n\t\tsuper(props);\r\n\r\n\t\tthis.handleStart = this.handleStart.bind(this);\r\n\t\tthis.handleEnd = this.handleEnd.bind(this);\r\n\t\tthis.handleDrawLine = this.handleDrawLine.bind(this);\r\n\t\tthis.handleDragLine = this.handleDragLine.bind(this);\r\n\t\tthis.handleDragLineComplete = this.handleDragLineComplete.bind(this);\r\n\r\n\t\tthis.terminate = terminate.bind(this);\r\n\t\tthis.saveNodeType = saveNodeType.bind(this);\r\n\r\n\t\tthis.getSelectionState = isHoverForInteractiveType(\"channels\")\r\n\t\t\t.bind(this);\r\n\r\n\t\tthis.nodes = [];\r\n\t\tthis.state = {};\r\n\t}\r\n\thandleDragLine(index, newXYValue) {\r\n\t\tthis.setState({\r\n\t\t\toverride: {\r\n\t\t\t\tindex,\r\n\t\t\t\t...newXYValue\r\n\t\t\t}\r\n\t\t});\r\n\t}\r\n\thandleDragLineComplete(moreProps) {\r\n\t\tconst { override } = this.state;\r\n\t\tconst { channels } = this.props;\r\n\t\tif (isDefined(override)) {\r\n\r\n\t\t\tconst newChannels = channels\r\n\t\t\t\t.map((each, idx) => idx === override.index\r\n\t\t\t\t\t? {\r\n\t\t\t\t\t\t...each,\r\n\t\t\t\t\t\tstart: [override.x1Value, override.y1Value],\r\n\t\t\t\t\t\tend: [override.x2Value, override.y2Value],\r\n\t\t\t\t\t\tselected: true,\r\n\t\t\t\t\t}\r\n\t\t\t\t\t: each);\r\n\t\t\tthis.setState({\r\n\t\t\t\toverride: null,\r\n\t\t\t}, () => {\r\n\t\t\t\tthis.props.onComplete(newChannels, moreProps);\r\n\t\t\t});\r\n\t\t}\r\n\t}\r\n\thandleDrawLine(xyValue) {\r\n\t\tconst { current } = this.state;\r\n\r\n\t\tif (isDefined(current) && isDefined(current.start)) {\r\n\t\t\tthis.mouseMoved = true;\r\n\t\t\tthis.setState({\r\n\t\t\t\tcurrent: {\r\n\t\t\t\t\tstart: current.start,\r\n\t\t\t\t\tend: xyValue,\r\n\t\t\t\t}\r\n\t\t\t});\r\n\t\t}\r\n\t}\r\n\thandleStart(xyValue) {\r\n\t\tconst { current } = this.state;\r\n\r\n\t\tif (isNotDefined(current) || isNotDefined(current.start)) {\r\n\t\t\tthis.mouseMoved = false;\r\n\r\n\t\t\tthis.setState({\r\n\t\t\t\tcurrent: {\r\n\t\t\t\t\tstart: xyValue,\r\n\t\t\t\t\tend: null,\r\n\t\t\t\t}\r\n\t\t\t}, () => {\r\n\t\t\t\tthis.props.onStart();\r\n\t\t\t});\r\n\t\t}\r\n\t}\r\n\thandleEnd(xyValue, moreProps, e) {\r\n\t\tconst { current } = this.state;\r\n\t\tconst { appearance, channels } = this.props;\r\n\r\n\t\tif (this.mouseMoved\r\n\t\t\t&& isDefined(current)\r\n\t\t\t&& isDefined(current.start)\r\n\t\t) {\r\n\t\t\tconst newChannels = [\r\n\t\t\t\t...channels.map(d => ({ ...d, selected: false })),\r\n\t\t\t\t{\r\n\t\t\t\t\tstart: current.start,\r\n\t\t\t\t\tend: xyValue,\r\n\t\t\t\t\tselected: true,\r\n\t\t\t\t\tappearance,\r\n\t\t\t\t}\r\n\t\t\t];\r\n\r\n\t\t\tthis.setState({\r\n\t\t\t\tcurrent: null,\r\n\t\t\t}, () => {\r\n\t\t\t\tthis.props.onComplete(newChannels, moreProps, e);\r\n\t\t\t});\r\n\t\t}\r\n\t}\r\n\trender() {\r\n\t\tconst { appearance } = this.props;\r\n\t\tconst { enabled, snapTo } = this.props;\r\n\t\tconst { currentPositionRadius, currentPositionStroke } = this.props;\r\n\t\tconst { currentPositionOpacity, currentPositionStrokeWidth } = this.props;\r\n\t\tconst { hoverText, channels } = this.props;\r\n\t\tconst { current, override } = this.state;\r\n\r\n\t\tconst eachDefaultAppearance = {\r\n\t\t\t...StandardDeviationChannel.defaultProps.appearance,\r\n\t\t\t...appearance\r\n\t\t};\r\n\r\n\t\tconst hoverTextDefault = {\r\n\t\t\t...StandardDeviationChannel.defaultProps.hoverText,\r\n\t\t\t...hoverText\r\n\t\t};\r\n\r\n\t\tconst tempLine = isDefined(current) && isDefined(current.end)\r\n\t\t\t? \r\n\t\t\t: null;\r\n\r\n\t\treturn \r\n\t\t\t{channels.map((each, idx) => {\r\n\t\t\t\tconst eachAppearance = isDefined(each.appearance)\r\n\t\t\t\t\t? { ...eachDefaultAppearance, ...each.appearance }\r\n\t\t\t\t\t: eachDefaultAppearance;\r\n\r\n\t\t\t\tconst eachHoverText = isDefined(each.hoverText)\r\n\t\t\t\t\t? { ...hoverTextDefault, ...each.hoverText }\r\n\t\t\t\t\t: hoverTextDefault;\r\n\r\n\t\t\t\treturn ;\r\n\t\t\t})}\r\n\t\t\t{tempLine}\r\n\t\t\t\r\n\t\t;\r\n\t}\r\n}\r\n\r\nStandardDeviationChannel.propTypes = {\r\n\tenabled: PropTypes.bool.isRequired,\r\n\tsnapTo: PropTypes.func,\r\n\r\n\tonStart: PropTypes.func,\r\n\tonComplete: PropTypes.func.isRequired,\r\n\tonSelect: PropTypes.func,\r\n\r\n\tcurrentPositionStroke: PropTypes.string,\r\n\tcurrentPositionStrokeWidth: PropTypes.number,\r\n\tcurrentPositionOpacity: PropTypes.number,\r\n\tcurrentPositionRadius: PropTypes.number,\r\n\r\n\tappearance: PropTypes.shape({\r\n\t\tstroke: PropTypes.string,\r\n\t\tstrokeOpacity: PropTypes.number,\r\n\t\tstrokeWidth: PropTypes.number,\r\n\t\tfill: PropTypes.string,\r\n\t\tfillOpacity: PropTypes.number,\r\n\t\tedgeStrokeWidth: PropTypes.number,\r\n\t\tedgeStroke: PropTypes.string,\r\n\t\tedgeFill: PropTypes.string,\r\n\t\tr: PropTypes.number,\r\n\t}).isRequired,\r\n\r\n\thoverText: PropTypes.object,\r\n\tchannels: PropTypes.array.isRequired,\r\n};\r\n\r\nStandardDeviationChannel.defaultProps = {\r\n\tsnapTo: d => d.close,\r\n\tappearance: {\r\n\t\tstroke: \"#000000\",\r\n\t\tfillOpacity: 0.2,\r\n\t\tstrokeOpacity: 1,\r\n\t\tstrokeWidth: 1,\r\n\t\tfill: \"#8AAFE2\",\r\n\t\tedgeStrokeWidth: 2,\r\n\t\tedgeStroke: \"#000000\",\r\n\t\tedgeFill: \"#FFFFFF\",\r\n\t\tr: 5,\r\n\t},\r\n\r\n\tonStart: noop,\r\n\tonComplete: noop,\r\n\tonSelect: noop,\r\n\r\n\tcurrentPositionStroke: \"#000000\",\r\n\tcurrentPositionOpacity: 1,\r\n\tcurrentPositionStrokeWidth: 3,\r\n\tcurrentPositionRadius: 4,\r\n\r\n\thoverText: {\r\n\t\t...HoverTextNearMouse.defaultProps,\r\n\t\tenable: true,\r\n\t\tbgHeight: \"auto\",\r\n\t\tbgWidth: \"auto\",\r\n\t\ttext: \"Click and drag the edge circles\",\r\n\t\tselectedText: \"\"\r\n\t},\r\n\tchannels: [],\r\n};\r\n\r\nexport default StandardDeviationChannel;\r\n","import React, { Component } from \"react\";\r\nimport PropTypes from \"prop-types\";\r\n\r\nimport { pairs } from \"d3-array\";\r\nimport { path as d3Path } from \"d3-path\";\r\n\r\nimport GenericChartComponent from \"../../GenericChartComponent\";\r\nimport { getMouseCanvas } from \"../../GenericComponent\";\r\nimport { generateLine, isHovering2 } from \"./StraightLine\";\r\n\r\nimport {\r\n\tisDefined, isNotDefined,\r\n\tnoop, hexToRGBA,\r\n} from \"../../utils\";\r\n\r\nclass GannFan extends Component {\r\n\tconstructor(props) {\r\n\t\tsuper(props);\r\n\r\n\t\tthis.renderSVG = this.renderSVG.bind(this);\r\n\t\tthis.drawOnCanvas = this.drawOnCanvas.bind(this);\r\n\t\tthis.isHover = this.isHover.bind(this);\r\n\t}\r\n\tisHover(moreProps) {\r\n\t\tconst { tolerance, onHover } = this.props;\r\n\t\tconst { mouseXY } = moreProps;\r\n\t\tconst [mouseX, mouseY] = mouseXY;\r\n\r\n\t\tlet hovering = false;\r\n\t\tif (isDefined(onHover)) {\r\n\r\n\t\t\tconst lines = helper(this.props, moreProps);\r\n\r\n\t\t\tfor (let i = 0; i < lines.length; i++) {\r\n\t\t\t\tconst line1 = lines[i];\r\n\r\n\t\t\t\tconst left = Math.min(line1.x1, line1.x2);\r\n\t\t\t\tconst right = Math.max(line1.x1, line1.x2);\r\n\t\t\t\tconst top = Math.min(line1.y1, line1.y2);\r\n\t\t\t\tconst bottom = Math.max(line1.y1, line1.y2);\r\n\r\n\t\t\t\tconst isWithinLineBounds = mouseX >= left && mouseX <= right\r\n\t\t\t\t\t&& mouseY >= top && mouseY <= bottom;\r\n\r\n\t\t\t\thovering = isWithinLineBounds\r\n\t\t\t\t\t&& isHovering2(\r\n\t\t\t\t\t\t[line1.x1, line1.y1],\r\n\t\t\t\t\t\t[line1.x2, line1.y2],\r\n\t\t\t\t\t\tmouseXY,\r\n\t\t\t\t\t\ttolerance);\r\n\r\n\t\t\t\tif (hovering) break;\r\n\t\t\t}\r\n\t\t}\r\n\t\treturn hovering;\r\n\t}\r\n\tdrawOnCanvas(ctx, moreProps) {\r\n\t\tconst {\r\n\t\t\tstroke, strokeWidth, strokeOpacity,\r\n\t\t\tfill, fillOpacity,\r\n\t\t\tfontFamily, fontSize, fontFill\r\n\t\t} = this.props;\r\n\r\n\r\n\t\tconst lines = helper(this.props, moreProps);\r\n\r\n\t\tctx.lineWidth = strokeWidth;\r\n\t\tctx.strokeStyle = hexToRGBA(stroke, strokeOpacity);\r\n\r\n\t\tctx.font = `${ fontSize }px ${fontFamily}`;\r\n\t\tctx.fillStyle = fontFill;\r\n\r\n\t\tlines.forEach(line => {\r\n\t\t\tconst {\r\n\t\t\t\tx1, y1, x2, y2, label\r\n\t\t\t} = line;\r\n\r\n\t\t\tctx.beginPath();\r\n\t\t\tctx.moveTo(x1, y1);\r\n\t\t\tctx.lineTo(x2, y2);\r\n\t\t\tctx.stroke();\r\n\t\t\tctx.beginPath();\r\n\t\t\tctx.fillText(label.text, label.x, label.y);\r\n\t\t});\r\n\t\tconst pairsOfLines = pairs(lines);\r\n\r\n\t\tpairsOfLines.forEach(([line1, line2], idx) => {\r\n\t\t\tctx.fillStyle = hexToRGBA(fill[idx], fillOpacity);\r\n\r\n\t\t\tctx.beginPath();\r\n\t\t\tctx.moveTo(line1.x1, line1.y1);\r\n\t\t\tctx.lineTo(line1.x2, line1.y2);\r\n\t\t\tctx.lineTo(line2.x2, line2.y2);\r\n\t\t\tctx.closePath();\r\n\t\t\tctx.fill();\r\n\t\t});\r\n\t}\r\n\trenderSVG(moreProps) {\r\n\t\tconst { stroke, strokeWidth, fillOpacity, fill, strokeOpacity } = this.props;\r\n\r\n\t\tconst lines = helper(this.props, moreProps);\r\n\t\tconst pairsOfLines = pairs(lines);\r\n\r\n\t\treturn (\r\n\t\t\t\r\n\t\t\t\t{lines.map((each, idx) => {\r\n\t\t\t\t\tconst { x1, y1, x2, y2 } = each;\r\n\t\t\t\t\treturn (\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t);\r\n\t\t\t\t})}\r\n\t\t\t\t{pairsOfLines.map(([line1, line2], idx) => {\r\n\t\t\t\t\tconst ctx = d3Path();\r\n\t\t\t\t\tctx.moveTo(line1.x1, line1.y1);\r\n\t\t\t\t\tctx.lineTo(line1.x2, line1.y2);\r\n\t\t\t\t\tctx.lineTo(line2.x2, line2.y2);\r\n\t\t\t\t\tctx.closePath();\r\n\t\t\t\t\treturn (\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t);\r\n\t\t\t\t})}\r\n\t\t\t\r\n\t\t);\r\n\t}\r\n\trender() {\r\n\t\tconst { selected, interactiveCursorClass } = this.props;\r\n\t\tconst { onDragStart, onDrag, onDragComplete, onHover, onUnHover } = this.props;\r\n\r\n\t\treturn ;\r\n\t}\r\n}\r\n\r\nfunction getLineCoordinates(start, endX, endY, text) {\r\n\tconst end = [\r\n\t\tendX,\r\n\t\tendY\r\n\t];\r\n\treturn {\r\n\t\tstart, end, text\r\n\t};\r\n}\r\n\r\nfunction helper(props, moreProps) {\r\n\tconst { startXY, endXY } = props;\r\n\r\n\tconst {\r\n\t\txScale,\r\n\t\tchartConfig: { yScale }\r\n\t} = moreProps;\r\n\tif (isNotDefined(startXY) || isNotDefined(endXY)) {\r\n\t\treturn [];\r\n\t}\r\n\tconst [x1, y1] = startXY;\r\n\tconst [x2, y2] = endXY;\r\n\r\n\tconst dx = x2 - x1;\r\n\tconst dy = y2 - y1;\r\n\r\n\tif (dx !== 0 && dy !== 0) {\r\n\t\t// console.log(\"modLine ->\", startXY, modLine, dx1, dy1)\r\n\t\tconst halfY = getLineCoordinates(\r\n\t\t\tstartXY,\r\n\t\t\tx2,\r\n\t\t\ty1 + dy / 2,\r\n\t\t\t\"2/1\"\r\n\t\t);\r\n\t\tconst oneThirdY = getLineCoordinates(\r\n\t\t\tstartXY,\r\n\t\t\tx2,\r\n\t\t\ty1 + dy / 3,\r\n\t\t\t\"3/1\"\r\n\t\t);\r\n\t\tconst oneFourthY = getLineCoordinates(\r\n\t\t\tstartXY,\r\n\t\t\tx2,\r\n\t\t\ty1 + dy / 4,\r\n\t\t\t\"4/1\"\r\n\t\t);\r\n\t\tconst oneEighthY = getLineCoordinates(\r\n\t\t\tstartXY,\r\n\t\t\tx2,\r\n\t\t\ty1 + dy / 8,\r\n\t\t\t\"8/1\"\r\n\t\t);\r\n\t\tconst halfX = getLineCoordinates(\r\n\t\t\tstartXY,\r\n\t\t\tx1 + dx / 2,\r\n\t\t\ty2,\r\n\t\t\t\"1/2\"\r\n\t\t);\r\n\t\tconst oneThirdX = getLineCoordinates(\r\n\t\t\tstartXY,\r\n\t\t\tx1 + dx / 3,\r\n\t\t\ty2,\r\n\t\t\t\"1/3\"\r\n\t\t);\r\n\t\tconst oneFourthX = getLineCoordinates(\r\n\t\t\tstartXY,\r\n\t\t\tx1 + dx / 4,\r\n\t\t\ty2,\r\n\t\t\t\"1/4\"\r\n\t\t);\r\n\t\tconst oneEighthX = getLineCoordinates(\r\n\t\t\tstartXY,\r\n\t\t\tx1 + dx / 8,\r\n\t\t\ty2,\r\n\t\t\t\"1/8\"\r\n\t\t);\r\n\t\tconst lines = [\r\n\t\t\toneEighthX,\r\n\t\t\toneFourthX,\r\n\t\t\toneThirdX,\r\n\t\t\thalfX,\r\n\t\t\t{ start: startXY, end: endXY, text: \"1/1\" },\r\n\t\t\thalfY,\r\n\t\t\toneThirdY,\r\n\t\t\toneFourthY,\r\n\t\t\toneEighthY,\r\n\t\t];\r\n\t\tconst lineCoods = lines.map(line => {\r\n\t\t\tconst { x1, y1, x2, y2 } = generateLine({\r\n\t\t\t\ttype: \"RAY\",\r\n\t\t\t\tstart: line.start,\r\n\t\t\t\tend: line.end,\r\n\t\t\t\txScale,\r\n\t\t\t\tyScale,\r\n\t\t\t});\r\n\t\t\treturn {\r\n\t\t\t\tx1: xScale(x1),\r\n\t\t\t\ty1: yScale(y1),\r\n\t\t\t\tx2: xScale(x2),\r\n\t\t\t\ty2: yScale(y2),\r\n\t\t\t\tlabel: {\r\n\t\t\t\t\tx: xScale(line.end[0]),\r\n\t\t\t\t\ty: yScale(line.end[1]),\r\n\t\t\t\t\ttext: line.text\r\n\t\t\t\t}\r\n\t\t\t};\r\n\t\t});\r\n\t\treturn lineCoods;\r\n\t}\r\n\treturn [];\r\n}\r\n\r\n\r\nGannFan.propTypes = {\r\n\tinteractiveCursorClass: PropTypes.string,\r\n\tstroke: PropTypes.string.isRequired,\r\n\tstrokeWidth: PropTypes.number.isRequired,\r\n\tfill: PropTypes.arrayOf(PropTypes.string).isRequired,\r\n\tstrokeOpacity: PropTypes.number.isRequired,\r\n\tfillOpacity: PropTypes.number.isRequired,\r\n\r\n\tfontFamily: PropTypes.string.isRequired,\r\n\tfontSize: PropTypes.number.isRequired,\r\n\tfontFill: PropTypes.string.isRequired,\r\n\r\n\tonDragStart: PropTypes.func.isRequired,\r\n\tonDrag: PropTypes.func.isRequired,\r\n\tonDragComplete: PropTypes.func.isRequired,\r\n\tonHover: PropTypes.func,\r\n\tonUnHover: PropTypes.func,\r\n\r\n\tdefaultClassName: PropTypes.string,\r\n\r\n\ttolerance: PropTypes.number.isRequired,\r\n\tselected: PropTypes.bool.isRequired,\r\n};\r\n\r\nGannFan.defaultProps = {\r\n\tonDragStart: noop,\r\n\tonDrag: noop,\r\n\tonDragComplete: noop,\r\n\r\n\tstrokeWidth: 1,\r\n\ttolerance: 4,\r\n\tselected: false,\r\n};\r\n\r\nexport default GannFan;\r\n","import React, { Component } from \"react\";\r\nimport PropTypes from \"prop-types\";\r\n\r\nimport { isDefined, noop } from \"../../utils\";\r\nimport { getXValue } from \"../../utils/ChartDataUtil\";\r\nimport { saveNodeType, isHover } from \"../utils\";\r\n\r\nimport ClickableCircle from \"../components/ClickableCircle\";\r\nimport GannFan from \"../components/GannFan\";\r\nimport HoverTextNearMouse from \"../components/HoverTextNearMouse\";\r\n\r\nclass EachGannFan extends Component {\r\n\tconstructor(props) {\r\n\t\tsuper(props);\r\n\r\n\t\tthis.handleLine1Edge1Drag = this.handleLine1Edge1Drag.bind(this);\r\n\t\tthis.handleLine1Edge2Drag = this.handleLine1Edge2Drag.bind(this);\r\n\r\n\t\tthis.handleDragStart = this.handleDragStart.bind(this);\r\n\t\tthis.handleFanDrag = this.handleFanDrag.bind(this);\r\n\r\n\t\tthis.handleChannelHeightChange = this.handleChannelHeightChange.bind(this);\r\n\r\n\t\tthis.handleHover = this.handleHover.bind(this);\r\n\t\tthis.getEdgeCircle = this.getEdgeCircle.bind(this);\r\n\r\n\t\tthis.isHover = isHover.bind(this);\r\n\t\tthis.saveNodeType = saveNodeType.bind(this);\r\n\t\tthis.nodes = {};\r\n\r\n\t\tthis.state = {\r\n\t\t\thover: false,\r\n\t\t};\r\n\t}\r\n\thandleHover(moreProps) {\r\n\t\tif (this.state.hover !== moreProps.hovering) {\r\n\t\t\tthis.setState({\r\n\t\t\t\thover: moreProps.hovering\r\n\t\t\t});\r\n\t\t}\r\n\t}\r\n\thandleDragStart() {\r\n\t\tconst {\r\n\t\t\tstartXY, endXY, dy,\r\n\t\t} = this.props;\r\n\r\n\t\tthis.dragStart = {\r\n\t\t\tstartXY, endXY, dy,\r\n\t\t};\r\n\t}\r\n\thandleFanDrag(moreProps) {\r\n\t\tconst { index, onDrag } = this.props;\r\n\r\n\t\tconst {\r\n\t\t\tstartXY, endXY,\r\n\t\t} = this.dragStart;\r\n\r\n\t\tconst { xScale, chartConfig: { yScale }, xAccessor, fullData } = moreProps;\r\n\t\tconst { startPos, mouseXY } = moreProps;\r\n\r\n\t\tconst x1 = xScale(startXY[0]);\r\n\t\tconst y1 = yScale(startXY[1]);\r\n\t\tconst x2 = xScale(endXY[0]);\r\n\t\tconst y2 = yScale(endXY[1]);\r\n\r\n\t\tconst dx = startPos[0] - mouseXY[0];\r\n\t\tconst dy = startPos[1] - mouseXY[1];\r\n\r\n\t\tconst newX1Value = getXValue(xScale, xAccessor, [x1 - dx, y1 - dy], fullData);\r\n\t\tconst newY1Value = yScale.invert(y1 - dy);\r\n\t\tconst newX2Value = getXValue(xScale, xAccessor, [x2 - dx, y2 - dy], fullData);\r\n\t\tconst newY2Value = yScale.invert(y2 - dy);\r\n\r\n\t\t// const newDy = newY2Value - endXY[1] + this.dragStart.dy;\r\n\r\n\t\tonDrag(index, {\r\n\t\t\tstartXY: [newX1Value, newY1Value],\r\n\t\t\tendXY: [newX2Value, newY2Value],\r\n\t\t\tdy: this.dragStart.dy,\r\n\t\t});\r\n\t}\r\n\thandleLine1Edge1Drag(moreProps) {\r\n\t\tconst { index, onDrag } = this.props;\r\n\t\tconst {\r\n\t\t\tstartXY,\r\n\t\t} = this.dragStart;\r\n\r\n\t\tconst {\r\n\t\t\tstartPos, mouseXY, xAccessor,\r\n\t\t\txScale, fullData,\r\n\t\t\tchartConfig: { yScale }\r\n\t\t} = moreProps;\r\n\r\n\t\tconst dx = startPos[0] - mouseXY[0];\r\n\t\tconst dy = startPos[1] - mouseXY[1];\r\n\r\n\t\tconst x1 = xScale(startXY[0]);\r\n\t\tconst y1 = yScale(startXY[1]);\r\n\r\n\t\tconst newX1Value = getXValue(xScale, xAccessor, [x1 - dx, y1 - dy], fullData);\r\n\t\tconst newY1Value = yScale.invert(y1 - dy);\r\n\r\n\t\tonDrag(index, {\r\n\t\t\tstartXY: [newX1Value, newY1Value],\r\n\t\t\tendXY: this.dragStart.endXY,\r\n\t\t\tdy: this.dragStart.dy,\r\n\t\t});\r\n\t}\r\n\thandleLine1Edge2Drag(moreProps) {\r\n\t\tconst { index, onDrag } = this.props;\r\n\t\tconst {\r\n\t\t\tendXY,\r\n\t\t} = this.dragStart;\r\n\r\n\t\tconst {\r\n\t\t\tstartPos, mouseXY, xAccessor,\r\n\t\t\txScale, fullData,\r\n\t\t\tchartConfig: { yScale }\r\n\t\t} = moreProps;\r\n\r\n\t\tconst dx = startPos[0] - mouseXY[0];\r\n\t\tconst dy = startPos[1] - mouseXY[1];\r\n\r\n\t\tconst x1 = xScale(endXY[0]);\r\n\t\tconst y1 = yScale(endXY[1]);\r\n\r\n\t\tconst newX1Value = getXValue(xScale, xAccessor, [x1 - dx, y1 - dy], fullData);\r\n\t\tconst newY1Value = yScale.invert(y1 - dy);\r\n\r\n\t\tonDrag(index, {\r\n\t\t\tstartXY: this.dragStart.startXY,\r\n\t\t\tendXY: [newX1Value, newY1Value],\r\n\t\t\tdy: this.dragStart.dy,\r\n\t\t});\r\n\t}\r\n\thandleChannelHeightChange(moreProps) {\r\n\t\tconst { index, onDrag } = this.props;\r\n\r\n\t\tconst {\r\n\t\t\tstartXY, endXY,\r\n\t\t} = this.dragStart;\r\n\r\n\t\tconst { chartConfig: { yScale } } = moreProps;\r\n\t\tconst { startPos, mouseXY } = moreProps;\r\n\r\n\t\tconst y2 = yScale(endXY[1]);\r\n\r\n\t\tconst dy = startPos[1] - mouseXY[1];\r\n\r\n\t\tconst newY2Value = yScale.invert(y2 - dy);\r\n\r\n\t\tconst newDy = newY2Value - endXY[1] + this.dragStart.dy;\r\n\r\n\t\tonDrag(index, {\r\n\t\t\tstartXY,\r\n\t\t\tendXY,\r\n\t\t\tdy: newDy,\r\n\t\t});\r\n\t}\r\n\tgetEdgeCircle({ xy, dragHandler, cursor, fill, edge }) {\r\n\t\tconst { hover } = this.state;\r\n\t\tconst { selected, appearance } = this.props;\r\n\t\tconst { edgeStroke, edgeStrokeWidth, r } = appearance;\r\n\t\tconst { onDragComplete } = this.props;\r\n\r\n\t\treturn ;\r\n\t}\r\n\trender() {\r\n\t\tconst { startXY, endXY } = this.props;\r\n\t\tconst { interactive, appearance } = this.props;\r\n\t\tconst {\r\n\t\t\tedgeFill,\r\n\t\t\tstroke, strokeWidth, strokeOpacity,\r\n\t\t\tfill, fillOpacity\r\n\t\t} = appearance;\r\n\t\tconst { fontFamily, fontSize, fontFill } = appearance;\r\n\t\tconst { hoverText, selected } = this.props;\r\n\t\tconst { onDragComplete } = this.props;\r\n\t\tconst { hover } = this.state;\r\n\t\tconst { enable: hoverTextEnabled, ...restHoverTextProps } = hoverText;\r\n\r\n\t\tconst hoverHandler = interactive\r\n\t\t\t? { onHover: this.handleHover, onUnHover: this.handleHover }\r\n\t\t\t: {};\r\n\r\n\t\tconst line1Edge = isDefined(startXY) && isDefined(endXY)\r\n\t\t\t? \r\n\t\t\t\t{this.getEdgeCircle({\r\n\t\t\t\t\txy: startXY,\r\n\t\t\t\t\tdragHandler: this.handleLine1Edge1Drag,\r\n\t\t\t\t\tcursor: \"react-stockcharts-move-cursor\",\r\n\t\t\t\t\tfill: edgeFill,\r\n\t\t\t\t\tedge: \"edge1\"\r\n\t\t\t\t})}\r\n\t\t\t\t{this.getEdgeCircle({\r\n\t\t\t\t\txy: endXY,\r\n\t\t\t\t\tdragHandler: this.handleLine1Edge2Drag,\r\n\t\t\t\t\tcursor: \"react-stockcharts-move-cursor\",\r\n\t\t\t\t\tfill: edgeFill,\r\n\t\t\t\t\tedge: \"edge2\"\r\n\t\t\t\t})}\r\n\t\t\t\r\n\t\t\t: null;\r\n\r\n\t\treturn (\r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t{line1Edge}\r\n\t\t\t\t\r\n\t\t\t\r\n\t\t);\r\n\t}\r\n}\r\n\r\nEachGannFan.propTypes = {\r\n\tstartXY: PropTypes.arrayOf(PropTypes.number).isRequired,\r\n\tendXY: PropTypes.arrayOf(PropTypes.number).isRequired,\r\n\tdy: PropTypes.number,\r\n\r\n\tinteractive: PropTypes.bool.isRequired,\r\n\tselected: PropTypes.bool.isRequired,\r\n\r\n\tappearance: PropTypes.shape({\r\n\t\tstroke: PropTypes.string.isRequired,\r\n\t\tstrokeOpacity: PropTypes.number.isRequired,\r\n\t\tfillOpacity: PropTypes.number.isRequired,\r\n\t\tstrokeWidth: PropTypes.number.isRequired,\r\n\t\tedgeStroke: PropTypes.string.isRequired,\r\n\t\tedgeFill: PropTypes.string.isRequired,\r\n\t\tedgeStrokeWidth: PropTypes.number.isRequired,\r\n\t\tr: PropTypes.number.isRequired,\r\n\t\tfill: PropTypes.arrayOf(PropTypes.string).isRequired,\r\n\t\tfontFamily: PropTypes.string.isRequired,\r\n\t\tfontSize: PropTypes.number.isRequired,\r\n\t\tfontFill: PropTypes.string.isRequired,\r\n\t}).isRequired,\r\n\thoverText: PropTypes.object.isRequired,\r\n\r\n\tindex: PropTypes.number,\r\n\tonDrag: PropTypes.func.isRequired,\r\n\tonDragComplete: PropTypes.func.isRequired,\r\n};\r\n\r\nEachGannFan.defaultProps = {\r\n\tyDisplayFormat: d => d.toFixed(2),\r\n\tinteractive: true,\r\n\tselected: false,\r\n\r\n\tappearance: {\r\n\t\tstroke: \"#000000\",\r\n\t\tfillOpacity: 0.2,\r\n\t\tstrokeOpacity: 1,\r\n\t\tstrokeWidth: 1,\r\n\t\tedgeStroke: \"#000000\",\r\n\t\tedgeFill: \"#FFFFFF\",\r\n\t\tedgeStrokeWidth: 1,\r\n\t\tr: 5,\r\n\t\tfill: [\r\n\t\t\t\"#1f77b4\",\r\n\t\t\t\"#ff7f0e\",\r\n\t\t\t\"#2ca02c\",\r\n\t\t\t\"#d62728\",\r\n\t\t\t\"#9467bd\",\r\n\t\t\t\"#8c564b\",\r\n\t\t\t\"#e377c2\",\r\n\t\t\t\"#7f7f7f\",\r\n\t\t],\r\n\t\tfontFamily: \"Helvetica Neue, Helvetica, Arial, sans-serif\",\r\n\t\tfontSize: 10,\r\n\t\tfontFill: \"#000000\",\r\n\t},\r\n\r\n\tonDrag: noop,\r\n\tonDragComplete: noop,\r\n\r\n\thoverText: {\r\n\t\t...HoverTextNearMouse.defaultProps,\r\n\t\tenable: true,\r\n\t\tbgHeight: 18,\r\n\t\tbgWidth: 120,\r\n\t\ttext: \"Click to select object\",\r\n\t}\r\n};\r\n\r\nexport default EachGannFan;","\r\n\r\nimport React, { Component } from \"react\";\r\nimport PropTypes from \"prop-types\";\r\n\r\nimport { isDefined, isNotDefined, noop } from \"../utils\";\r\nimport {\r\n\tterminate,\r\n\tsaveNodeType,\r\n\tisHoverForInteractiveType,\r\n} from \"./utils\";\r\nimport EachGannFan from \"./wrapper/EachGannFan\";\r\nimport MouseLocationIndicator from \"./components/MouseLocationIndicator\";\r\nimport HoverTextNearMouse from \"./components/HoverTextNearMouse\";\r\n\r\nclass GannFan extends Component {\r\n\tconstructor(props) {\r\n\t\tsuper(props);\r\n\r\n\t\tthis.handleStart = this.handleStart.bind(this);\r\n\t\tthis.handleEnd = this.handleEnd.bind(this);\r\n\t\tthis.handleDrawFan = this.handleDrawFan.bind(this);\r\n\t\tthis.handleDragFan = this.handleDragFan.bind(this);\r\n\t\tthis.handleDragFanComplete = this.handleDragFanComplete.bind(this);\r\n\r\n\t\tthis.terminate = terminate.bind(this);\r\n\t\tthis.saveNodeType = saveNodeType.bind(this);\r\n\r\n\t\tthis.getSelectionState = isHoverForInteractiveType(\"fans\")\r\n\t\t\t.bind(this);\r\n\r\n\t\tthis.nodes = [];\r\n\t\tthis.state = {};\r\n\t}\r\n\thandleDragFan(index, newXYValue) {\r\n\t\tthis.setState({\r\n\t\t\toverride: {\r\n\t\t\t\tindex,\r\n\t\t\t\t...newXYValue\r\n\t\t\t}\r\n\t\t});\r\n\t}\r\n\thandleDragFanComplete(moreProps) {\r\n\t\tconst { override } = this.state;\r\n\t\tconst { fans } = this.props;\r\n\r\n\t\tif (isDefined(override)) {\r\n\t\t\tconst { index, ...rest } = override;\r\n\t\t\tconst newfans = fans\r\n\t\t\t\t.map((each, idx) => idx === index\r\n\t\t\t\t\t? { ...each, ...rest, selected: true }\r\n\t\t\t\t\t: each);\r\n\t\t\tthis.setState({\r\n\t\t\t\toverride: null,\r\n\t\t\t}, () => {\r\n\t\t\t\tthis.props.onComplete(newfans, moreProps);\r\n\t\t\t});\r\n\t\t}\r\n\t}\r\n\thandleDrawFan(xyValue) {\r\n\t\tconst { current } = this.state;\r\n\r\n\t\tif (isDefined(current) && isDefined(current.startXY)) {\r\n\t\t\tthis.mouseMoved = true;\r\n\r\n\t\t\tthis.setState({\r\n\t\t\t\tcurrent: {\r\n\t\t\t\t\tstartXY: current.startXY,\r\n\t\t\t\t\tendXY: xyValue,\r\n\t\t\t\t}\r\n\t\t\t});\r\n\t\t}\r\n\t}\r\n\thandleStart(xyValue) {\r\n\t\tconst { current } = this.state;\r\n\r\n\t\tif (isNotDefined(current) || isNotDefined(current.startXY)) {\r\n\t\t\tthis.mouseMoved = false;\r\n\r\n\t\t\tthis.setState({\r\n\t\t\t\tcurrent: {\r\n\t\t\t\t\tstartXY: xyValue,\r\n\t\t\t\t\tendXY: null,\r\n\t\t\t\t}\r\n\t\t\t}, () => {\r\n\t\t\t\tthis.props.onStart();\r\n\t\t\t});\r\n\t\t}\r\n\t}\r\n\thandleEnd(xyValyue, moreProps, e) {\r\n\t\tconst { current } = this.state;\r\n\t\tconst { fans, appearance } = this.props;\r\n\r\n\t\tif (this.mouseMoved\r\n\t\t\t&& isDefined(current)\r\n\t\t\t&& isDefined(current.startXY)\r\n\t\t) {\r\n\t\t\tconst newfans = [\r\n\t\t\t\t...fans.map(d => ({ ...d, selected: false })),\r\n\t\t\t\t{ ...current, selected: true, appearance }\r\n\t\t\t];\r\n\t\t\tthis.setState({\r\n\t\t\t\tcurrent: null,\r\n\t\t\t}, () => {\r\n\t\t\t\tthis.props.onComplete(newfans, moreProps, e);\r\n\t\t\t});\r\n\t\t}\r\n\t}\r\n\trender() {\r\n\t\tconst { enabled, appearance } = this.props;\r\n\t\tconst { currentPositionRadius, currentPositionStroke } = this.props;\r\n\t\tconst { currentPositionOpacity, currentPositionStrokeWidth } = this.props;\r\n\t\tconst { hoverText, fans } = this.props;\r\n\t\tconst { current, override } = this.state;\r\n\t\tconst overrideIndex = isDefined(override) ? override.index : null;\r\n\r\n\t\tconst tempChannel = isDefined(current) && isDefined(current.endXY)\r\n\t\t\t? \r\n\t\t\t: null;\r\n\r\n\t\treturn \r\n\t\t\t{fans.map((each, idx) => {\r\n\t\t\t\tconst eachAppearance = isDefined(each.appearance)\r\n\t\t\t\t\t? { ...appearance, ...each.appearance }\r\n\t\t\t\t\t: appearance;\r\n\r\n\t\t\t\treturn ;\r\n\t\t\t})}\r\n\t\t\t{tempChannel}\r\n\t\t\t\r\n\t\t;\r\n\t}\r\n}\r\n\r\n\r\nGannFan.propTypes = {\r\n\tenabled: PropTypes.bool.isRequired,\r\n\r\n\tonStart: PropTypes.func.isRequired,\r\n\tonComplete: PropTypes.func.isRequired,\r\n\tonSelect: PropTypes.func,\r\n\r\n\tcurrentPositionStroke: PropTypes.string,\r\n\tcurrentPositionStrokeWidth: PropTypes.number,\r\n\tcurrentPositionOpacity: PropTypes.number,\r\n\tcurrentPositionRadius: PropTypes.number,\r\n\r\n\tappearance: PropTypes.shape({\r\n\t\tstroke: PropTypes.string.isRequired,\r\n\t\tstrokeOpacity: PropTypes.number.isRequired,\r\n\t\tfillOpacity: PropTypes.number.isRequired,\r\n\t\tstrokeWidth: PropTypes.number.isRequired,\r\n\t\tedgeStroke: PropTypes.string.isRequired,\r\n\t\tedgeFill: PropTypes.string.isRequired,\r\n\t\tedgeStrokeWidth: PropTypes.number.isRequired,\r\n\t\tr: PropTypes.number.isRequired,\r\n\t\tfill: PropTypes.arrayOf(PropTypes.string).isRequired,\r\n\t\tfontFamily: PropTypes.string.isRequired,\r\n\t\tfontSize: PropTypes.number.isRequired,\r\n\t\tfontFill: PropTypes.string.isRequired,\r\n\t}).isRequired,\r\n\thoverText: PropTypes.object.isRequired,\r\n\r\n\tfans: PropTypes.array.isRequired,\r\n};\r\n\r\nGannFan.defaultProps = {\r\n\tappearance: {\r\n\t\tstroke: \"#000000\",\r\n\t\tfillOpacity: 0.2,\r\n\t\tstrokeOpacity: 1,\r\n\t\tstrokeWidth: 1,\r\n\t\tedgeStroke: \"#000000\",\r\n\t\tedgeFill: \"#FFFFFF\",\r\n\t\tedgeStrokeWidth: 1,\r\n\t\tr: 5,\r\n\t\tfill: [\r\n\t\t\t\"#e41a1c\",\r\n\t\t\t\"#377eb8\",\r\n\t\t\t\"#4daf4a\",\r\n\t\t\t\"#984ea3\",\r\n\t\t\t\"#ff7f00\",\r\n\t\t\t\"#ffff33\",\r\n\t\t\t\"#a65628\",\r\n\t\t\t\"#f781bf\",\r\n\t\t],\r\n\t\tfontFamily: \"Helvetica Neue, Helvetica, Arial, sans-serif\",\r\n\t\tfontSize: 12,\r\n\t\tfontFill: \"#000000\",\r\n\t},\r\n\r\n\tonStart: noop,\r\n\tonComplete: noop,\r\n\tonSelect: noop,\r\n\r\n\tcurrentPositionStroke: \"#000000\",\r\n\tcurrentPositionOpacity: 1,\r\n\tcurrentPositionStrokeWidth: 3,\r\n\tcurrentPositionRadius: 4,\r\n\r\n\thoverText: {\r\n\t\t...HoverTextNearMouse.defaultProps,\r\n\t\tenable: true,\r\n\t\tbgHeight: 18,\r\n\t\tbgWidth: 120,\r\n\t\ttext: \"Click to select object\",\r\n\t},\r\n\tfans: [],\r\n};\r\n\r\nexport default GannFan;\r\n","\r\n\r\nimport React, { Component } from \"react\";\r\nimport PropTypes from \"prop-types\";\r\n\r\nimport { noop } from \"../utils\";\r\nimport GenericChartComponent from \"../GenericChartComponent\";\r\nimport { getMouseCanvas } from \"../GenericComponent\";\r\n\r\nclass ClickCallback extends Component {\r\n\trender() {\r\n\t\tconst {\r\n\t\t\tonMouseDown,\r\n\t\t\tonClick,\r\n\t\t\tonDoubleClick,\r\n\t\t\tonContextMenu,\r\n\t\t\tonMouseMove,\r\n\t\t\tonPan,\r\n\t\t\tonPanEnd,\r\n\t\t} = this.props;\r\n\r\n\t\treturn ;\r\n\t}\r\n}\r\n\r\nClickCallback.propTypes = {\r\n\tdisablePan: PropTypes.bool.isRequired,\r\n\tonMouseDown: PropTypes.func,\r\n\tonClick: PropTypes.func,\r\n\tonDoubleClick: PropTypes.func,\r\n\tonContextMenu: PropTypes.func,\r\n\tonMouseMove: PropTypes.func,\r\n\tonPan: PropTypes.func,\r\n\tonPanEnd: PropTypes.func,\r\n};\r\n\r\nClickCallback.defaultProps = {\r\n\tdisablePan: false,\r\n};\r\n\r\nexport default ClickCallback;\r\n","\r\n\r\nimport React, { Component } from \"react\";\r\nimport PropTypes from \"prop-types\";\r\n\r\nimport {\r\n\tisDefined,\r\n\tnoop,\r\n\tgetStrokeDasharray,\r\n\thexToRGBA,\r\n} from \"../utils\";\r\nimport GenericChartComponent from \"../GenericChartComponent\";\r\nimport { getMouseCanvas } from \"../GenericComponent\";\r\n\r\nclass Brush extends Component {\r\n\tconstructor(props, context) {\r\n\t\tsuper(props, context);\r\n\t\tthis.handleZoomStart = this.handleZoomStart.bind(this);\r\n\t\tthis.handleDrawSquare = this.handleDrawSquare.bind(this);\r\n\t\tthis.handleZoomComplete = this.handleZoomComplete.bind(this);\r\n\r\n\t\tthis.drawOnCanvas = this.drawOnCanvas.bind(this);\r\n\t\tthis.renderSVG = this.renderSVG.bind(this);\r\n\t\tthis.saveNode = this.saveNode.bind(this);\r\n\t\tthis.terminate = this.terminate.bind(this);\r\n\t\tthis.state = {\r\n\t\t\trect: null,\r\n\t\t};\r\n\t}\r\n\tterminate() {\r\n\t\tthis.zoomHappening = false;\r\n\t\tthis.setState({\r\n\t\t\tx1y1: null,\r\n\t\t\tstart: null,\r\n\t\t\tend: null,\r\n\t\t\trect: null,\r\n\t\t});\r\n\t}\r\n\tsaveNode(node) {\r\n\t\tthis.node = node;\r\n\t}\r\n\tdrawOnCanvas(ctx) {\r\n\t\tconst { rect } = this.state;\r\n\t\tif (isDefined(rect)) {\r\n\t\t\tconst { x, y, height, width } = rect;\r\n\t\t\tconst { stroke, fill, strokeDashArray } = this.props;\r\n\t\t\tconst { strokeOpacity, fillOpacity } = this.props;\r\n\r\n\t\t\tconst dashArray = getStrokeDasharray(strokeDashArray)\r\n\t\t\t\t.split(\",\")\r\n\t\t\t\t.map(d => +d);\r\n\r\n\t\t\tctx.strokeStyle = hexToRGBA(stroke, strokeOpacity);\r\n\t\t\tctx.fillStyle = hexToRGBA(fill, fillOpacity);\r\n\t\t\tctx.setLineDash(dashArray);\r\n\t\t\tctx.beginPath();\r\n\t\t\tctx.fillRect(x, y, width, height);\r\n\t\t\tctx.strokeRect(x, y, width, height);\r\n\t\t}\r\n\t}\r\n\trenderSVG() {\r\n\t\tconst { rect } = this.state;\r\n\t\tif (isDefined(rect)) {\r\n\t\t\tconst { x, y, height, width } = rect;\r\n\t\t\tconst { stroke, strokeDashArray } = this.props;\r\n\t\t\tconst { strokeOpacity, fillOpacity } = this.props;\r\n\r\n\t\t\tconst dashArray = getStrokeDasharray(strokeDashArray)\r\n\t\t\t\t.split(\",\")\r\n\t\t\t\t.map(d => +d);\r\n\r\n\t\t\treturn (\r\n\t\t\t\t\r\n\t\t\t);\r\n\t\t}\r\n\t}\r\n\thandleZoomStart(moreProps) {\r\n\t\tthis.zoomHappening = false;\r\n\t\tconst {\r\n\t\t\tmouseXY: [, mouseY],\r\n\t\t\tcurrentItem,\r\n\t\t\tchartConfig: { yScale },\r\n\t\t\txAccessor,\r\n\t\t\txScale,\r\n\t\t} = moreProps;\r\n\r\n\t\tconst x1y1 = [\r\n\t\t\txScale(xAccessor(currentItem)),\r\n\t\t\tmouseY\r\n\t\t];\r\n\r\n\t\tthis.setState({\r\n\t\t\tselected: true,\r\n\t\t\tx1y1,\r\n\t\t\tstart: {\r\n\t\t\t\titem: currentItem,\r\n\t\t\t\txValue: xAccessor(currentItem),\r\n\t\t\t\tyValue: yScale.invert(mouseY),\r\n\t\t\t},\r\n\t\t});\r\n\t}\r\n\thandleDrawSquare(moreProps) {\r\n\t\tif (this.state.x1y1 == null) return;\r\n\r\n\t\tthis.zoomHappening = true;\r\n\r\n\t\tconst {\r\n\t\t\tmouseXY: [, mouseY],\r\n\t\t\tcurrentItem,\r\n\t\t\tchartConfig: { yScale },\r\n\t\t\txAccessor,\r\n\t\t\txScale,\r\n\t\t} = moreProps;\r\n\r\n\t\tconst [x2, y2] = [\r\n\t\t\txScale(xAccessor(currentItem)),\r\n\t\t\tmouseY\r\n\t\t];\r\n\r\n\t\tconst { x1y1: [x1, y1] } = this.state;\r\n\r\n\t\tconst x = Math.min(x1, x2);\r\n\t\tconst y = Math.min(y1, y2);\r\n\t\tconst height = Math.abs(y2 - y1);\r\n\t\tconst width = Math.abs(x2 - x1);\r\n\r\n\t\tthis.setState({\r\n\t\t\tselected: true,\r\n\t\t\tend: {\r\n\t\t\t\titem: currentItem,\r\n\t\t\t\txValue: xAccessor(currentItem),\r\n\t\t\t\tyValue: yScale.invert(mouseY),\r\n\t\t\t},\r\n\t\t\trect: {\r\n\t\t\t\tx, y, height, width\r\n\t\t\t},\r\n\t\t});\r\n\t}\r\n\thandleZoomComplete(moreProps) {\r\n\t\tif (this.zoomHappening) {\r\n\t\t\tconst { onBrush } = this.props;\r\n\t\t\tconst { start, end } = this.state;\r\n\t\t\tonBrush({ start, end }, moreProps);\r\n\t\t}\r\n\t\tthis.setState({\r\n\t\t\tselected: false,\r\n\t\t\trect: null,\r\n\t\t});\r\n\t}\r\n\trender() {\r\n\t\tconst { enabled } = this.props;\r\n\t\tif (!enabled) return null;\r\n\r\n\t\treturn (\r\n\t\t\t\r\n\t\t);\r\n\t}\r\n}\r\n\r\nBrush.propTypes = {\r\n\tenabled: PropTypes.bool.isRequired,\r\n\tonStart: PropTypes.func.isRequired,\r\n\tonBrush: PropTypes.func.isRequired,\r\n\r\n\ttype: PropTypes.oneOf([\"1D\", \"2D\"]),\r\n\tstroke: PropTypes.string,\r\n\tfill: PropTypes.string,\r\n\tstrokeOpacity: PropTypes.number,\r\n\tfillOpacity: PropTypes.number,\r\n\tinteractiveState: PropTypes.object,\r\n\tstrokeDashArray: PropTypes.string,\r\n};\r\n\r\nBrush.defaultProps = {\r\n\ttype: \"2D\",\r\n\tstroke: \"#000000\",\r\n\tfillOpacity: 0.3,\r\n\tstrokeOpacity: 1,\r\n\tfill: \"#3h3h3h\",\r\n\tonBrush: noop,\r\n\tonStart: noop,\r\n\tstrokeDashArray: \"ShortDash\",\r\n};\r\n\r\nexport default Brush;\r\n","import React, { Component } from \"react\";\r\nimport PropTypes from \"prop-types\";\r\n\r\nimport GenericChartComponent from \"../../GenericChartComponent\";\r\nimport { getMouseCanvas } from \"../../GenericComponent\";\r\n\r\nimport { isDefined, noop, hexToRGBA } from \"../../utils\";\r\n\r\nclass InteractiveText extends Component {\r\n\tconstructor(props) {\r\n\t\tsuper(props);\r\n\r\n\t\tthis.calculateTextWidth = true;\r\n\r\n\t\tthis.renderSVG = this.renderSVG.bind(this);\r\n\t\tthis.drawOnCanvas = this.drawOnCanvas.bind(this);\r\n\t\tthis.isHover = this.isHover.bind(this);\r\n\t}\r\n\tisHover(moreProps) {\r\n\t\tconst { onHover } = this.props;\r\n\r\n\t\tif (\r\n\t\t\tisDefined(onHover)\r\n\t\t\t&& isDefined(this.textWidth)\r\n\t\t\t&& !this.calculateTextWidth\r\n\t\t) {\r\n\t\t\tconst { rect } = helper(this.props, moreProps, this.textWidth);\r\n\t\t\tconst { mouseXY: [x, y] } = moreProps;\r\n\r\n\t\t\tif (\r\n\t\t\t\tx >= rect.x\r\n\t\t\t\t&& y >= rect.y\r\n\t\t\t\t&& x <= rect.x + rect.width\r\n\t\t\t\t&& y <= rect.y + rect.height\r\n\t\t\t) {\r\n\t\t\t\treturn true;\r\n\t\t\t}\r\n\t\t}\r\n\t\treturn false;\r\n\t}\r\n\tcomponentWillReceiveProps(nextProps) {\r\n\t\tthis.calculateTextWidth = (\r\n\t\t\tnextProps.text !== this.props.text\r\n\t\t\t|| nextProps.fontStyle !== this.props.fontStyle\r\n\t\t\t|| nextProps.fontWeight !== this.props.fontWeight\r\n\t\t\t|| nextProps.fontSize !== this.props.fontSize\r\n\t\t\t|| nextProps.fontFamily !== this.props.fontFamily\r\n\t\t);\r\n\t}\r\n\tdrawOnCanvas(ctx, moreProps) {\r\n\t\tconst {\r\n\t\t\tbgFill,\r\n\t\t\tbgOpacity,\r\n\t\t\tbgStrokeWidth,\r\n\t\t\tbgStroke,\r\n\t\t\ttextFill,\r\n\t\t\tfontFamily,\r\n\t\t\tfontSize,\r\n\t\t\tfontStyle,\r\n\t\t\tfontWeight,\r\n\t\t\ttext,\r\n\t\t} = this.props;\r\n\r\n\t\tif (this.calculateTextWidth) {\r\n\t\t\tctx.font = `${fontStyle} ${fontWeight} ${fontSize}px ${fontFamily}`;\r\n\t\t\tconst { width } = ctx.measureText(text);\r\n\t\t\tthis.textWidth = width;\r\n\t\t\tthis.calculateTextWidth = false;\r\n\t\t}\r\n\r\n\t\tconst { selected } = this.props;\r\n\r\n\t\tconst { x, y, rect } = helper(this.props, moreProps, this.textWidth);\r\n\r\n\t\tctx.fillStyle = hexToRGBA(bgFill, bgOpacity);\r\n\r\n\t\tctx.beginPath();\r\n\t\tctx.fillRect(rect.x, rect.y, rect.width, rect.height);\r\n\r\n\t\tif (selected) {\r\n\t\t\tctx.strokeStyle = bgStroke;\r\n\t\t\tctx.lineWidth = bgStrokeWidth;\r\n\t\t\tctx.strokeRect(rect.x, rect.y, rect.width, rect.height);\r\n\t\t}\r\n\r\n\t\tctx.fillStyle = textFill;\r\n\t\tctx.textBaseline = \"middle\";\r\n\t\tctx.textAlign = \"center\";\r\n\t\tctx.font = `${fontStyle} ${fontWeight} ${fontSize}px ${fontFamily}`;\r\n\r\n\t\tctx.beginPath();\r\n\t\tctx.fillText(text, x, y);\r\n\t}\r\n\trenderSVG() {\r\n\t\tthrow new Error(\"svg not implemented\");\r\n\t}\r\n\trender() {\r\n\t\tconst { selected, interactiveCursorClass } = this.props;\r\n\t\tconst { onHover, onUnHover } = this.props;\r\n\t\tconst { onDragStart, onDrag, onDragComplete } = this.props;\r\n\r\n\t\treturn ;\r\n\t}\r\n}\r\n\r\nfunction helper(props, moreProps, textWidth) {\r\n\tconst { position, fontSize } = props;\r\n\r\n\tconst { xScale, chartConfig: { yScale } } = moreProps;\r\n\r\n\tconst [xValue, yValue] = position;\r\n\tconst x = xScale(xValue);\r\n\tconst y = yScale(yValue);\r\n\r\n\tconst rect = {\r\n\t\tx: x - textWidth / 2 - fontSize,\r\n\t\ty: y - fontSize,\r\n\t\twidth: textWidth + fontSize * 2,\r\n\t\theight: fontSize * 2,\r\n\t};\r\n\r\n\treturn {\r\n\t\tx, y, rect\r\n\t};\r\n}\r\n\r\nInteractiveText.propTypes = {\r\n\tbgFill: PropTypes.string.isRequired,\r\n\tbgOpacity: PropTypes.number.isRequired,\r\n\tbgStrokeWidth: PropTypes.number.isRequired,\r\n\tbgStroke: PropTypes.string.isRequired,\r\n\r\n\ttextFill: PropTypes.string.isRequired,\r\n\tfontFamily: PropTypes.string.isRequired,\r\n\tfontSize: PropTypes.number.isRequired,\r\n\tfontWeight: PropTypes.oneOfType([\r\n\t\tPropTypes.number,\r\n\t\tPropTypes.string,\r\n\t]).isRequired,\r\n\tfontStyle: PropTypes.string.isRequired,\r\n\r\n\ttext: PropTypes.string.isRequired,\r\n\r\n\tonDragStart: PropTypes.func.isRequired,\r\n\tonDrag: PropTypes.func.isRequired,\r\n\tonDragComplete: PropTypes.func.isRequired,\r\n\tonHover: PropTypes.func,\r\n\tonUnHover: PropTypes.func,\r\n\r\n\tdefaultClassName: PropTypes.string,\r\n\tinteractiveCursorClass: PropTypes.string,\r\n\r\n\ttolerance: PropTypes.number.isRequired,\r\n\tselected: PropTypes.bool.isRequired,\r\n};\r\n\r\nInteractiveText.defaultProps = {\r\n\tonDragStart: noop,\r\n\tonDrag: noop,\r\n\tonDragComplete: noop,\r\n\r\n\ttype: \"SD\", // standard dev\r\n\tfontWeight: \"normal\", // standard dev\r\n\r\n\ttolerance: 4,\r\n\tselected: false,\r\n};\r\n\r\nexport default InteractiveText;","import React, { Component } from \"react\";\r\nimport PropTypes from \"prop-types\";\r\n\r\nimport { noop } from \"../../utils\";\r\nimport { saveNodeType, isHover } from \"../utils\";\r\nimport { getXValue } from \"../../utils/ChartDataUtil\";\r\n\r\nimport HoverTextNearMouse from \"../components/HoverTextNearMouse\";\r\nimport InteractiveText from \"../components/InteractiveText\";\r\n\r\nclass EachText extends Component {\r\n\tconstructor(props) {\r\n\t\tsuper(props);\r\n\r\n\t\tthis.handleHover = this.handleHover.bind(this);\r\n\r\n\t\tthis.handleDragStart = this.handleDragStart.bind(this);\r\n\t\tthis.handleDrag = this.handleDrag.bind(this);\r\n\r\n\t\tthis.isHover = isHover.bind(this);\r\n\t\tthis.saveNodeType = saveNodeType.bind(this);\r\n\t\tthis.nodes = {};\r\n\r\n\t\tthis.state = {\r\n\t\t\thover: false,\r\n\t\t};\r\n\t}\r\n\thandleDragStart(moreProps) {\r\n\t\tconst {\r\n\t\t\tposition,\r\n\t\t} = this.props;\r\n\t\tconst { mouseXY } = moreProps;\r\n\t\tconst { chartConfig: { yScale }, xScale } = moreProps;\r\n\t\tconst [mouseX, mouseY] = mouseXY;\r\n\r\n\t\tconst [textCX, textCY] = position;\r\n\t\tconst dx = mouseX - xScale(textCX);\r\n\t\tconst dy = mouseY - yScale(textCY);\r\n\r\n\t\tthis.dragStartPosition = {\r\n\t\t\tposition, dx, dy\r\n\t\t};\r\n\t}\r\n\thandleDrag(moreProps) {\r\n\t\tconst { index, onDrag } = this.props;\r\n\t\tconst {\r\n\t\t\tmouseXY: [, mouseY],\r\n\t\t\tchartConfig: { yScale },\r\n\t\t\txAccessor,\r\n\t\t\tmouseXY,\r\n\t\t\tplotData,\r\n\t\t\txScale,\r\n\t\t} = moreProps;\r\n\r\n\t\tconst { dx, dy } = this.dragStartPosition;\r\n\t\tconst xValue = xScale.invert(\r\n\t\t\txScale(getXValue(xScale, xAccessor, mouseXY, plotData)) - dx\r\n\t\t);\r\n\t\t// xScale.invert(xScale(xAccessor(currentItem)) - dx);\r\n\t\tconst xyValue = [\r\n\t\t\txValue,\r\n\t\t\tyScale.invert(mouseY - dy)\r\n\t\t];\r\n\r\n\t\tonDrag(index, xyValue);\r\n\t}\r\n\thandleHover(moreProps) {\r\n\t\tif (this.state.hover !== moreProps.hovering) {\r\n\t\t\tthis.setState({\r\n\t\t\t\thover: moreProps.hovering\r\n\t\t\t});\r\n\t\t}\r\n\t}\r\n\trender() {\r\n\t\tconst {\r\n\t\t\tposition,\r\n\t\t\tbgFill,\r\n\t\t\tbgOpacity,\r\n\t\t\tbgStroke,\r\n\t\t\tbgStrokeWidth,\r\n\t\t\ttextFill,\r\n\t\t\tfontFamily,\r\n\t\t\tfontSize,\r\n\t\t\tfontWeight,\r\n\t\t\tfontStyle,\r\n\t\t\ttext,\r\n\t\t\thoverText,\r\n\t\t\tselected,\r\n\t\t\tonDragComplete,\r\n\t\t} = this.props;\r\n\t\tconst { hover } = this.state;\r\n\r\n\t\tconst hoverHandler = {\r\n\t\t\tonHover: this.handleHover,\r\n\t\t\tonUnHover: this.handleHover\r\n\t\t};\r\n\r\n\t\tconst {\r\n\t\t\tenable: hoverTextEnabled,\r\n\t\t\tselectedText: hoverTextSelected,\r\n\t\t\ttext: hoverTextUnselected,\r\n\t\t\t...restHoverTextProps\r\n\t\t} = hoverText;\r\n\r\n\t\treturn \r\n\t\t\t\r\n\t\t\t\r\n\t\t;\r\n\t}\r\n}\r\n/*\r\nexport function getNewXY(moreProps, snapTo) {\r\n\tconst { xScale, xAccessor, plotData, mouseXY } = moreProps;\r\n\r\n\tconst currentItem = getCurrentItem(xScale, xAccessor, mouseXY, plotData);\r\n\tconst x = xAccessor(currentItem);\r\n\tconst y = snapTo(currentItem);\r\n\r\n\treturn [x, y];\r\n}\r\n */\r\nEachText.propTypes = {\r\n\tindex: PropTypes.number,\r\n\r\n\tposition: PropTypes.array.isRequired,\r\n\tbgFill: PropTypes.string.isRequired,\r\n\tbgOpacity: PropTypes.number.isRequired,\r\n\tbgStrokeWidth: PropTypes.number.isRequired,\r\n\tbgStroke: PropTypes.string,\r\n\ttextFill: PropTypes.string.isRequired,\r\n\r\n\tfontWeight: PropTypes.string.isRequired,\r\n\tfontFamily: PropTypes.string.isRequired,\r\n\tfontStyle: PropTypes.string.isRequired,\r\n\tfontSize: PropTypes.number.isRequired,\r\n\r\n\ttext: PropTypes.string.isRequired,\r\n\tselected: PropTypes.bool.isRequired,\r\n\r\n\tonDrag: PropTypes.func.isRequired,\r\n\tonDragComplete: PropTypes.func.isRequired,\r\n\r\n\thoverText: PropTypes.object.isRequired,\r\n};\r\n\r\nEachText.defaultProps = {\r\n\tonDrag: noop,\r\n\tonDragComplete: noop,\r\n\tbgOpacity: 1,\r\n\tbgStrokeWidth: 1,\r\n\tselected: false,\r\n\tfill: \"#8AAFE2\",\r\n\thoverText: {\r\n\t\t...HoverTextNearMouse.defaultProps,\r\n\t\tenable: true,\r\n\t\tbgHeight: \"auto\",\r\n\t\tbgWidth: \"auto\",\r\n\t\ttext: \"Click to select object\",\r\n\t}\r\n};\r\n\r\nexport default EachText;","\r\n\r\nimport React, { Component } from \"react\";\r\nimport PropTypes from \"prop-types\";\r\n\r\nimport { isDefined, noop } from \"../utils\";\r\n\r\nimport {\r\n\tgetValueFromOverride,\r\n\tterminate,\r\n\tsaveNodeType,\r\n\tisHoverForInteractiveType,\r\n} from \"./utils\";\r\nimport EachText from \"./wrapper/EachText\";\r\nimport HoverTextNearMouse from \"./components/HoverTextNearMouse\";\r\nimport GenericChartComponent from \"../GenericChartComponent\";\r\nimport { getMouseCanvas } from \"../GenericComponent\";\r\n\r\nclass InteractiveText extends Component {\r\n\tconstructor(props) {\r\n\t\tsuper(props);\r\n\r\n\t\tthis.handleDraw = this.handleDraw.bind(this);\r\n\t\tthis.handleDrag = this.handleDrag.bind(this);\r\n\t\tthis.handleDragComplete = this.handleDragComplete.bind(this);\r\n\t\tthis.terminate = terminate.bind(this);\r\n\r\n\t\tthis.saveNodeType = saveNodeType.bind(this);\r\n\t\tthis.getSelectionState = isHoverForInteractiveType(\"textList\")\r\n\t\t\t.bind(this);\r\n\r\n\t\tthis.nodes = [];\r\n\t\tthis.state = {};\r\n\t}\r\n\thandleDrag(index, position) {\r\n\t\tthis.setState({\r\n\t\t\toverride: {\r\n\t\t\t\tindex,\r\n\t\t\t\tposition,\r\n\t\t\t}\r\n\t\t});\r\n\t}\r\n\thandleDragComplete(moreProps) {\r\n\t\tconst { override } = this.state;\r\n\t\tif (isDefined(override)) {\r\n\t\t\tconst { textList } = this.props;\r\n\t\t\tconst newTextList = textList\r\n\t\t\t\t.map((each, idx) => {\r\n\t\t\t\t\tconst selected = (idx === override.index);\r\n\t\t\t\t\treturn selected\r\n\t\t\t\t\t\t? {\r\n\t\t\t\t\t\t\t...each,\r\n\t\t\t\t\t\t\tposition: override.position,\r\n\t\t\t\t\t\t\tselected,\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t\t: {\r\n\t\t\t\t\t\t\t...each,\r\n\t\t\t\t\t\t\tselected\r\n\t\t\t\t\t\t};\r\n\t\t\t\t});\r\n\t\t\tthis.setState({\r\n\t\t\t\toverride: null,\r\n\t\t\t}, () => {\r\n\t\t\t\tthis.props.onDragComplete(newTextList, moreProps);\r\n\t\t\t});\r\n\t\t}\r\n\t}\r\n\thandleDrawLine(xyValue) {\r\n\t\tconst { current } = this.state;\r\n\r\n\t\tif (isDefined(current) && isDefined(current.start)) {\r\n\t\t\tthis.setState({\r\n\t\t\t\tcurrent: {\r\n\t\t\t\t\tstart: current.start,\r\n\t\t\t\t\tend: xyValue,\r\n\t\t\t\t}\r\n\t\t\t});\r\n\t\t}\r\n\t}\r\n\thandleDraw(moreProps, e) {\r\n\t\tconst { enabled } = this.props;\r\n\t\tif (enabled) {\r\n\t\t\tconst {\r\n\t\t\t\tmouseXY: [, mouseY],\r\n\t\t\t\tchartConfig: { yScale },\r\n\t\t\t\txAccessor,\r\n\t\t\t\tcurrentItem,\r\n\t\t\t} = moreProps;\r\n\r\n\t\t\tconst xyValue = [xAccessor(currentItem), yScale.invert(mouseY)];\r\n\r\n\t\t\tconst { defaultText, onChoosePosition } = this.props;\r\n\r\n\t\t\tconst newText = {\r\n\t\t\t\t...defaultText,\r\n\t\t\t\tposition: xyValue,\r\n\t\t\t};\r\n\t\t\tonChoosePosition(newText, moreProps, e);\r\n\t\t}/* else {\r\n\t\t\tthis.handleClick(moreProps, e);\r\n\t\t} */\r\n\t}\r\n\trender() {\r\n\t\tconst { textList, defaultText, hoverText } = this.props;\r\n\t\tconst { override } = this.state;\r\n\t\treturn \r\n\t\t\t{textList.map((each, idx) => {\r\n\t\t\t\tconst defaultHoverText = InteractiveText.defaultProps.hoverText;\r\n\t\t\t\tconst props = {\r\n\t\t\t\t\t...defaultText,\r\n\t\t\t\t\t...each,\r\n\t\t\t\t\thoverText: {\r\n\t\t\t\t\t\t...defaultHoverText,\r\n\t\t\t\t\t\t...hoverText,\r\n\t\t\t\t\t\t...(each.hoverText || {})\r\n\t\t\t\t\t},\r\n\t\t\t\t};\r\n\t\t\t\treturn ;\r\n\t\t\t})}\r\n\t\t\t;\r\n\t\t;\r\n\t}\r\n}\r\n\r\nInteractiveText.propTypes = {\r\n\tonChoosePosition: PropTypes.func.isRequired,\r\n\tonDragComplete: PropTypes.func.isRequired,\r\n\tonSelect: PropTypes.func,\r\n\r\n\tdefaultText: PropTypes.shape({\r\n\t\tbgFill: PropTypes.string.isRequired,\r\n\t\tbgOpacity: PropTypes.number.isRequired,\r\n\t\tbgStrokeWidth: PropTypes.number,\r\n\t\tbgStroke: PropTypes.string,\r\n\t\ttextFill: PropTypes.string.isRequired,\r\n\t\tfontFamily: PropTypes.string.isRequired,\r\n\t\tfontWeight: PropTypes.string.isRequired,\r\n\t\tfontStyle: PropTypes.string.isRequired,\r\n\t\tfontSize: PropTypes.number.isRequired,\r\n\t\ttext: PropTypes.string.isRequired,\r\n\t}).isRequired,\r\n\r\n\thoverText: PropTypes.object.isRequired,\r\n\ttextList: PropTypes.array.isRequired,\r\n\tenabled: PropTypes.bool.isRequired,\r\n};\r\n\r\nInteractiveText.defaultProps = {\r\n\tonChoosePosition: noop,\r\n\tonDragComplete: noop,\r\n\tonSelect: noop,\r\n\r\n\tdefaultText: {\r\n\t\tbgFill: \"#D3D3D3\",\r\n\t\tbgOpacity: 1,\r\n\t\tbgStrokeWidth: 1,\r\n\t\ttextFill: \"#F10040\",\r\n\t\tfontFamily: \"Helvetica Neue, Helvetica, Arial, sans-serif\",\r\n\t\tfontSize: 12,\r\n\t\tfontStyle: \"normal\",\r\n\t\tfontWeight: \"normal\",\r\n\t\ttext: \"Lorem ipsum...\"\r\n\t},\r\n\thoverText: {\r\n\t\t...HoverTextNearMouse.defaultProps,\r\n\t\tenable: true,\r\n\t\tbgHeight: \"auto\",\r\n\t\tbgWidth: \"auto\",\r\n\t\ttext: \"Click to select object\",\r\n\t\tselectedText: \"\",\r\n\t},\r\n\ttextList: [],\r\n};\r\n\r\nInteractiveText.contextTypes = {\r\n\tsubscribe: PropTypes.func.isRequired,\r\n\tunsubscribe: PropTypes.func.isRequired,\r\n\tgenerateSubscriptionId: PropTypes.func.isRequired,\r\n\tchartId: PropTypes.oneOfType([PropTypes.number, PropTypes.string]).isRequired,\r\n};\r\n\r\nexport default InteractiveText;\r\n","import React, { Component } from \"react\";\r\nimport PropTypes from \"prop-types\";\r\n\r\nimport GenericChartComponent from \"../../GenericChartComponent\";\r\nimport { getMouseCanvas } from \"../../GenericComponent\";\r\n\r\nimport { isHovering2 } from \"./StraightLine\";\r\nimport { hexToRGBA } from \"../../utils\";\r\n\r\nclass ClickableShape extends Component {\r\n\tconstructor(props) {\r\n\t\tsuper(props);\r\n\t\tthis.saveNode = this.saveNode.bind(this);\r\n\t\tthis.drawOnCanvas = this.drawOnCanvas.bind(this);\r\n\t\tthis.isHover = this.isHover.bind(this);\r\n\t}\r\n\tsaveNode(node) {\r\n\t\tthis.node = node;\r\n\t}\r\n\tisHover(moreProps) {\r\n\t\tconst { mouseXY } = moreProps;\r\n\t\tif (this.closeIcon) {\r\n\t\t\tconst { textBox } = this.props;\r\n\t\t\tconst { x, y } = this.closeIcon;\r\n\t\t\tconst halfWidth = textBox.closeIcon.width / 2;\r\n\r\n\t\t\tconst start1 = [x - halfWidth, y - halfWidth];\r\n\t\t\tconst end1 = [x + halfWidth, y + halfWidth];\r\n\t\t\tconst start2 = [x - halfWidth, y + halfWidth];\r\n\t\t\tconst end2 = [x + halfWidth, y - halfWidth];\r\n\r\n\t\t\tif (isHovering2(start1, end1, mouseXY, 3) || isHovering2(start2, end2, mouseXY, 3)) {\r\n\t\t\t\treturn true;\r\n\t\t\t}\r\n\t\t}\r\n\t\treturn false;\r\n\t}\r\n\tdrawOnCanvas(ctx, moreProps) {\r\n\t\tconst { stroke, strokeWidth, strokeOpacity, hovering, textBox } = this.props;\r\n\r\n\t\tconst [x, y] = helper(this.props, moreProps, ctx);\r\n\r\n\t\tthis.closeIcon = { x, y };\r\n\t\tctx.beginPath();\r\n\r\n\t\tctx.lineWidth = hovering ? strokeWidth + 1 : strokeWidth;\r\n\t\tctx.strokeStyle = hexToRGBA(stroke, strokeOpacity);\r\n\t\tconst halfWidth = textBox.closeIcon.width / 2;\r\n\t\tctx.moveTo(x - halfWidth, y - halfWidth);\r\n\t\tctx.lineTo(x + halfWidth, y + halfWidth);\r\n\t\tctx.moveTo(x - halfWidth, y + halfWidth);\r\n\t\tctx.lineTo(x + halfWidth, y - halfWidth);\r\n\t\tctx.stroke();\r\n\t}\r\n\trenderSVG() {\r\n\t\tthrow new Error(\"svg not implemented\");\r\n\t}\r\n\trender() {\r\n\t\tconst { interactiveCursorClass } = this.props;\r\n\t\tconst { show } = this.props;\r\n\t\tconst { onHover, onUnHover, onClick } = this.props;\r\n\r\n\t\treturn show\r\n\t\t\t? \r\n\t\t\t: null;\r\n\t}\r\n}\r\n\r\nfunction helper(props, moreProps, ctx) {\r\n\tconst { yValue, text, textBox } = props;\r\n\tconst { fontFamily, fontStyle, fontWeight, fontSize } = props;\r\n\tctx.font = `${fontStyle} ${fontWeight} ${fontSize}px ${fontFamily}`;\r\n\r\n\tconst { chartConfig: { yScale } } = moreProps;\r\n\r\n\tconst x = textBox.left\r\n\t\t+ textBox.padding.left\r\n\t\t+ ctx.measureText(text).width\r\n\t\t+ textBox.padding.right\r\n\t\t+ textBox.closeIcon.padding.left\r\n\t\t+ textBox.closeIcon.width / 2;\r\n\r\n\tconst y = yScale(yValue);\r\n\r\n\treturn [x, y];\r\n\r\n}\r\n\r\nClickableShape.propTypes = {\r\n\tstroke: PropTypes.string.isRequired,\r\n\tstrokeOpacity: PropTypes.number.isRequired,\r\n\tstrokeWidth: PropTypes.number.isRequired,\r\n\ttextBox: PropTypes.object.isRequired,\r\n\thovering: PropTypes.bool,\r\n\tinteractiveCursorClass: PropTypes.string,\r\n\tshow: PropTypes.bool,\r\n\tonHover: PropTypes.func,\r\n\tonUnHover: PropTypes.func,\r\n\tonClick: PropTypes.func,\r\n};\r\n\r\n\r\nClickableShape.defaultProps = {\r\n\tshow: false,\r\n\tfillOpacity: 1,\r\n\tstrokeOpacity: 1,\r\n\tstrokeWidth: 1,\r\n};\r\n\r\nexport default ClickableShape;\r\n","import React, { Component } from \"react\";\r\nimport PropTypes from \"prop-types\";\r\n\r\nimport GenericChartComponent from \"../../GenericChartComponent\";\r\nimport { getMouseCanvas } from \"../../GenericComponent\";\r\nimport { isDefined, noop, hexToRGBA, getStrokeDasharrayCanvas } from \"../../utils\";\r\nimport { drawOnCanvas } from \"../../coordinates/EdgeCoordinateV3\";\r\nimport { getYCoordinate } from \"../../coordinates/MouseCoordinateY\";\r\n\r\nclass InteractiveYCoordinate extends Component {\r\n\tconstructor(props) {\r\n\t\tsuper(props);\r\n\r\n\t\tthis.renderSVG = this.renderSVG.bind(this);\r\n\t\tthis.drawOnCanvas = this.drawOnCanvas.bind(this);\r\n\t\tthis.isHover = this.isHover.bind(this);\r\n\t}\r\n\tisHover(moreProps) {\r\n\t\tconst { onHover } = this.props;\r\n\r\n\t\tif (isDefined(onHover)) {\r\n\t\t\tconst values = helper(this.props, moreProps);\r\n\t\t\tif (values == null) return false;\r\n\r\n\t\t\tconst { x1, x2, y, rect } = values;\r\n\t\t\tconst { mouseXY: [mouseX, mouseY] } = moreProps;\r\n\r\n\t\t\tif (\r\n\t\t\t\tmouseX >= rect.x\r\n\t\t\t\t&& mouseX <= rect.x + this.width\r\n\t\t\t\t&& mouseY >= rect.y\r\n\t\t\t\t&& mouseY <= rect.y + rect.height\r\n\t\t\t) {\r\n\t\t\t\treturn true;\r\n\t\t\t}\r\n\t\t\tif (\r\n\t\t\t\tx1 <= mouseX\r\n\t\t\t\t&& x2 >= mouseX\r\n\t\t\t\t&& Math.abs(mouseY - y) < 4\r\n\t\t\t) {\r\n\t\t\t\treturn true;\r\n\t\t\t}\r\n\t\t}\r\n\t\treturn false;\r\n\t}\r\n\tdrawOnCanvas(ctx, moreProps) {\r\n\t\tconst {\r\n\t\t\tbgFill,\r\n\t\t\tbgOpacity,\r\n\r\n\t\t\ttextFill,\r\n\t\t\tfontFamily,\r\n\t\t\tfontSize,\r\n\r\n\t\t\tfontStyle,\r\n\t\t\tfontWeight,\r\n\t\t\tstroke,\r\n\t\t\tstrokeWidth,\r\n\t\t\tstrokeOpacity,\r\n\t\t\tstrokeDasharray,\r\n\t\t\ttext,\r\n\t\t\ttextBox,\r\n\t\t\tedge,\r\n\t\t} = this.props;\r\n\r\n\t\tconst { selected, hovering } = this.props;\r\n\r\n\t\tconst values = helper(this.props, moreProps);\r\n\t\tif (values == null) return;\r\n\r\n\t\tconst { x1, x2, y, rect } = values;\r\n\r\n\t\tctx.strokeStyle = hexToRGBA(stroke, strokeOpacity);\r\n\r\n\t\tctx.beginPath();\r\n\t\tif (selected || hovering) {\r\n\t\t\tctx.lineWidth = strokeWidth + 1;\r\n\t\t} else {\r\n\t\t\tctx.lineWidth = strokeWidth;\r\n\t\t}\r\n\t\tctx.textBaseline = \"middle\";\r\n\t\tctx.textAlign = \"start\";\r\n\t\tctx.font = `${fontStyle} ${fontWeight} ${fontSize}px ${fontFamily}`;\r\n\r\n\t\tthis.width = textBox.padding.left\r\n\t\t\t+ ctx.measureText(text).width\r\n\t\t\t+ textBox.padding.right\r\n\t\t\t+ textBox.closeIcon.padding.left\r\n\t\t\t+ textBox.closeIcon.width\r\n\t\t\t+ textBox.closeIcon.padding.right;\r\n\r\n\t\tctx.setLineDash(getStrokeDasharrayCanvas(strokeDasharray));\r\n\t\tctx.moveTo(x1, y);\r\n\t\tctx.lineTo(rect.x, y);\r\n\r\n\t\tctx.moveTo(rect.x + this.width, y);\r\n\t\tctx.lineTo(x2, y);\r\n\t\tctx.stroke();\r\n\r\n\t\tctx.setLineDash([]);\r\n\r\n\r\n\t\tctx.fillStyle = hexToRGBA(bgFill, bgOpacity);\r\n\r\n\t\tctx.fillRect(rect.x, rect.y, this.width, rect.height);\r\n\t\tctx.strokeRect(rect.x, rect.y, this.width, rect.height);\r\n\r\n\t\tctx.fillStyle = textFill;\r\n\r\n\t\tctx.beginPath();\r\n\t\tctx.fillText(text, rect.x + 10, y);\r\n\t\tconst newEdge = {\r\n\t\t\t...edge,\r\n\t\t\ttextFill,\r\n\t\t\tfontFamily,\r\n\t\t\tfontSize,\r\n\t\t\topacity: bgOpacity\r\n\t\t};\r\n\t\tconst yValue = edge.displayFormat(this.props.yValue);\r\n\t\tconst yCoord = getYCoordinate(y, yValue, newEdge, moreProps);\r\n\t\tdrawOnCanvas(ctx, yCoord);\r\n\t}\r\n\trenderSVG() {\r\n\t\tthrow new Error(\"svg not implemented\");\r\n\t}\r\n\trender() {\r\n\t\tconst { interactiveCursorClass } = this.props;\r\n\t\tconst { onHover, onUnHover } = this.props;\r\n\t\tconst { onDragStart, onDrag, onDragComplete } = this.props;\r\n\r\n\t\treturn (\r\n\t\t\t\r\n\t\t);\r\n\t}\r\n}\r\n\r\nfunction helper(props, moreProps) {\r\n\tconst { yValue, textBox } = props;\r\n\r\n\tconst { chartConfig: { width, yScale, height } } = moreProps;\r\n\r\n\tconst y = Math.round(yScale(yValue));\r\n\r\n\tif (y >= 0 && y <= height) {\r\n\t\tconst rect = {\r\n\t\t\tx: textBox.left,\r\n\t\t\ty: y - textBox.height / 2,\r\n\t\t\theight: textBox.height,\r\n\t\t};\r\n\t\treturn {\r\n\t\t\tx1: 0,\r\n\t\t\tx2: width,\r\n\t\t\ty,\r\n\t\t\trect,\r\n\t\t};\r\n\t}\r\n\r\n}\r\n\r\nInteractiveYCoordinate.propTypes = {\r\n\tbgFill: PropTypes.string.isRequired,\r\n\tbgOpacity: PropTypes.number.isRequired,\r\n\r\n\tstroke: PropTypes.string.isRequired,\r\n\tstrokeWidth: PropTypes.number.isRequired,\r\n\tstrokeOpacity: PropTypes.number.isRequired,\r\n\tstrokeDasharray: PropTypes.string.isRequired,\r\n\r\n\ttextFill: PropTypes.string.isRequired,\r\n\tfontFamily: PropTypes.string.isRequired,\r\n\tfontSize: PropTypes.number.isRequired,\r\n\tfontWeight: PropTypes.oneOfType([\r\n\t\tPropTypes.number,\r\n\t\tPropTypes.string,\r\n\t]).isRequired,\r\n\tfontStyle: PropTypes.string.isRequired,\r\n\r\n\ttext: PropTypes.string.isRequired,\r\n\tedge: PropTypes.object.isRequired,\r\n\ttextBox: PropTypes.object.isRequired,\r\n\tyValue: PropTypes.number.isRequired,\r\n\r\n\tonDragStart: PropTypes.func.isRequired,\r\n\tonDrag: PropTypes.func.isRequired,\r\n\tonDragComplete: PropTypes.func.isRequired,\r\n\tonHover: PropTypes.func,\r\n\tonUnHover: PropTypes.func,\r\n\r\n\tdefaultClassName: PropTypes.string,\r\n\tinteractiveCursorClass: PropTypes.string,\r\n\r\n\ttolerance: PropTypes.number.isRequired,\r\n\tselected: PropTypes.bool.isRequired,\r\n\thovering: PropTypes.bool.isRequired,\r\n};\r\n\r\nInteractiveYCoordinate.defaultProps = {\r\n\tonDragStart: noop,\r\n\tonDrag: noop,\r\n\tonDragComplete: noop,\r\n\r\n\tfontWeight: \"normal\", // standard dev\r\n\r\n\tstrokeWidth: 1,\r\n\ttolerance: 4,\r\n\tselected: false,\r\n\thovering: false,\r\n};\r\n\r\nexport default InteractiveYCoordinate;","import React, { Component } from \"react\";\r\nimport PropTypes from \"prop-types\";\r\n\r\nimport { noop } from \"../../utils\";\r\nimport { saveNodeType, isHover } from \"../utils\";\r\n\r\nimport ClickableShape from \"../components/ClickableShape\";\r\nimport InteractiveYCoordinate from \"../components/InteractiveYCoordinate\";\r\n\r\nclass EachInteractiveYCoordinate extends Component {\r\n\tconstructor(props) {\r\n\t\tsuper(props);\r\n\r\n\t\tthis.handleHover = this.handleHover.bind(this);\r\n\t\tthis.handleCloseIconHover = this.handleCloseIconHover.bind(this);\r\n\r\n\t\tthis.handleDragStart = this.handleDragStart.bind(this);\r\n\t\tthis.handleDrag = this.handleDrag.bind(this);\r\n\r\n\t\tthis.handleDelete = this.handleDelete.bind(this);\r\n\r\n\t\tthis.isHover = isHover.bind(this);\r\n\t\tthis.saveNodeType = saveNodeType.bind(this);\r\n\t\tthis.nodes = {};\r\n\r\n\t\tthis.state = {\r\n\t\t\thover: false,\r\n\t\t\tcloseIconHover: false,\r\n\t\t};\r\n\t}\r\n\thandleDragStart(moreProps) {\r\n\t\tconst {\r\n\t\t\tyValue,\r\n\t\t} = this.props;\r\n\t\tconst { mouseXY } = moreProps;\r\n\t\tconst { chartConfig: { yScale } } = moreProps;\r\n\t\tconst [, mouseY] = mouseXY;\r\n\r\n\t\tconst dy = mouseY - yScale(yValue);\r\n\r\n\t\tthis.dragStartPosition = {\r\n\t\t\tyValue, dy\r\n\t\t};\r\n\t}\r\n\thandleDrag(moreProps) {\r\n\t\tconst { index, onDrag } = this.props;\r\n\t\tconst {\r\n\t\t\tmouseXY: [, mouseY],\r\n\t\t\tchartConfig: { yScale },\r\n\t\t} = moreProps;\r\n\r\n\t\tconst { dy } = this.dragStartPosition;\r\n\r\n\t\tconst newYValue = yScale.invert(mouseY - dy);\r\n\r\n\t\tonDrag(index, newYValue);\r\n\t}\r\n\thandleDelete(moreProps) {\r\n\t\tconst { index, onDelete } = this.props;\r\n\t\tonDelete(index, moreProps);\r\n\t}\r\n\thandleHover(moreProps) {\r\n\t\tif (this.state.hover !== moreProps.hovering) {\r\n\t\t\tthis.setState({\r\n\t\t\t\thover: moreProps.hovering,\r\n\t\t\t\tcloseIconHover: moreProps.hovering ? this.state.closeIconHover : false\r\n\t\t\t});\r\n\t\t}\r\n\t}\r\n\thandleCloseIconHover(moreProps) {\r\n\t\tif (this.state.closeIconHover !== moreProps.hovering) {\r\n\t\t\tthis.setState({\r\n\t\t\t\tcloseIconHover: moreProps.hovering\r\n\t\t\t});\r\n\t\t}\r\n\t}\r\n\trender() {\r\n\t\tconst {\r\n\t\t\tyValue,\r\n\t\t\tbgFill,\r\n\t\t\tbgOpacity,\r\n\t\t\ttextFill,\r\n\t\t\tfontFamily,\r\n\t\t\tfontSize,\r\n\t\t\tfontWeight,\r\n\t\t\tfontStyle,\r\n\t\t\ttext,\r\n\t\t\t// hoverText,\r\n\t\t\tselected,\r\n\t\t\tonDragComplete,\r\n\t\t\tstroke,\r\n\t\t\tstrokeOpacity,\r\n\t\t\tstrokeDasharray,\r\n\t\t\tstrokeWidth,\r\n\t\t\tedge,\r\n\t\t\ttextBox,\r\n\t\t\tdraggable,\r\n\t\t} = this.props;\r\n\t\tconst { hover, closeIconHover } = this.state;\r\n\r\n\t\tconst hoverHandler = {\r\n\t\t\tonHover: this.handleHover,\r\n\t\t\tonUnHover: this.handleHover\r\n\t\t};\r\n\r\n\t\tconst dragProps = draggable\r\n\t\t\t? {\r\n\t\t\t\tonDragStart: this.handleDragStart,\r\n\t\t\t\tonDrag: this.handleDrag,\r\n\t\t\t\tonDragComplete: onDragComplete,\r\n\t\t\t}\r\n\t\t\t: {};\r\n\t\treturn (\r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t{/* */}\r\n\t\t\t\r\n\t\t);\r\n\t}\r\n}\r\n\r\nEachInteractiveYCoordinate.propTypes = {\r\n\tindex: PropTypes.number,\r\n\r\n\tdraggable: PropTypes.bool.isRequired,\r\n\tyValue: PropTypes.number.isRequired,\r\n\r\n\tbgFill: PropTypes.string.isRequired,\r\n\tbgOpacity: PropTypes.number.isRequired,\r\n\tstroke: PropTypes.string.isRequired,\r\n\tstrokeWidth: PropTypes.number.isRequired,\r\n\tstrokeOpacity: PropTypes.number.isRequired,\r\n\tstrokeDasharray: PropTypes.string.isRequired,\r\n\ttextFill: PropTypes.string.isRequired,\r\n\r\n\tfontWeight: PropTypes.string.isRequired,\r\n\tfontFamily: PropTypes.string.isRequired,\r\n\tfontStyle: PropTypes.string.isRequired,\r\n\tfontSize: PropTypes.number.isRequired,\r\n\r\n\ttext: PropTypes.string.isRequired,\r\n\tselected: PropTypes.bool.isRequired,\r\n\r\n\tedge: PropTypes.object.isRequired,\r\n\ttextBox: PropTypes.object.isRequired,\r\n\r\n\tonDrag: PropTypes.func.isRequired,\r\n\tonDragComplete: PropTypes.func.isRequired,\r\n\tonDelete: PropTypes.func.isRequired,\r\n};\r\n\r\nEachInteractiveYCoordinate.defaultProps = {\r\n\tonDrag: noop,\r\n\tonDragComplete: noop,\r\n\r\n\tstrokeWidth: 1,\r\n\topacity: 1,\r\n\tselected: false,\r\n\tfill: \"#FFFFFF\",\r\n\tdraggable: false,\r\n};\r\n\r\nexport default EachInteractiveYCoordinate;","\r\n\r\nimport React, { Component } from \"react\";\r\nimport PropTypes from \"prop-types\";\r\n\r\nimport { format } from \"d3-format\";\r\nimport { isDefined, noop, strokeDashTypes } from \"../utils\";\r\n\r\nimport {\r\n\tgetValueFromOverride,\r\n\tterminate,\r\n\tsaveNodeType,\r\n\tisHoverForInteractiveType,\r\n} from \"./utils\";\r\nimport EachInteractiveYCoordinate from \"./wrapper/EachInteractiveYCoordinate\";\r\nimport HoverTextNearMouse from \"./components/HoverTextNearMouse\";\r\n\r\nclass InteractiveYCoordinate extends Component {\r\n\tconstructor(props) {\r\n\t\tsuper(props);\r\n\r\n\t\tthis.handleDrag = this.handleDrag.bind(this);\r\n\t\tthis.handleDragComplete = this.handleDragComplete.bind(this);\r\n\t\tthis.handleDelete = this.handleDelete.bind(this);\r\n\t\tthis.terminate = terminate.bind(this);\r\n\r\n\t\tthis.saveNodeType = saveNodeType.bind(this);\r\n\t\tthis.getSelectionState = isHoverForInteractiveType(\"yCoordinateList\")\r\n\t\t\t.bind(this);\r\n\r\n\t\tthis.nodes = [];\r\n\t\tthis.state = {};\r\n\t}\r\n\thandleDrag(index, yValue) {\r\n\t\tthis.setState({\r\n\t\t\toverride: {\r\n\t\t\t\tindex,\r\n\t\t\t\tyValue,\r\n\t\t\t}\r\n\t\t});\r\n\t}\r\n\thandleDragComplete(moreProps) {\r\n\t\tconst { override } = this.state;\r\n\t\tif (isDefined(override)) {\r\n\t\t\tconst { yCoordinateList } = this.props;\r\n\t\t\tconst newAlertList = yCoordinateList\r\n\t\t\t\t.map((each, idx) => {\r\n\t\t\t\t\tconst selected = (idx === override.index);\r\n\t\t\t\t\treturn selected\r\n\t\t\t\t\t\t? {\r\n\t\t\t\t\t\t\t...each,\r\n\t\t\t\t\t\t\tyValue: override.yValue,\r\n\t\t\t\t\t\t\tselected,\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t\t: {\r\n\t\t\t\t\t\t\t...each,\r\n\t\t\t\t\t\t\tselected\r\n\t\t\t\t\t\t};\r\n\t\t\t\t});\r\n\t\t\tconst draggedAlert = newAlertList[override.index];\r\n\t\t\tthis.setState({\r\n\t\t\t\toverride: null,\r\n\t\t\t}, () => {\r\n\t\t\t\tthis.props.onDragComplete(newAlertList, moreProps, draggedAlert);\r\n\t\t\t});\r\n\t\t}\r\n\t}\r\n\thandleDrawLine(xyValue) {\r\n\t\tconst { current } = this.state;\r\n\r\n\t\tif (isDefined(current) && isDefined(current.start)) {\r\n\t\t\tthis.setState({\r\n\t\t\t\tcurrent: {\r\n\t\t\t\t\tstart: current.start,\r\n\t\t\t\t\tend: xyValue,\r\n\t\t\t\t}\r\n\t\t\t});\r\n\t\t}\r\n\t}\r\n\thandleDelete(index, moreProps) {\r\n\t\tconst { onDelete, yCoordinateList } = this.props;\r\n\t\tonDelete(yCoordinateList[index], moreProps);\r\n\t}\r\n\trender() {\r\n\t\tconst { yCoordinateList } = this.props;\r\n\t\tconst { override } = this.state;\r\n\t\treturn (\r\n\t\t\t\r\n\t\t\t\t{yCoordinateList.map((each, idx) => {\r\n\t\t\t\t\tconst props = each;\r\n\t\t\t\t\treturn (\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t);\r\n\t\t\t\t})}\r\n\t\t\t\r\n\t\t);\r\n\t}\r\n}\r\n\r\nInteractiveYCoordinate.propTypes = {\r\n\tonChoosePosition: PropTypes.func.isRequired,\r\n\tonDragComplete: PropTypes.func.isRequired,\r\n\tonSelect: PropTypes.func,\r\n\tonDelete: PropTypes.func,\r\n\r\n\tdefaultPriceCoordinate: PropTypes.shape({\r\n\t\tbgFill: PropTypes.string.isRequired,\r\n\t\tbgOpacity: PropTypes.number.isRequired,\r\n\r\n\t\tstroke: PropTypes.string.isRequired,\r\n\t\tstrokeDasharray: PropTypes.oneOf(strokeDashTypes).isRequired,\r\n\t\tstrokeOpacity: PropTypes.number.isRequired,\r\n\t\tstrokeWidth: PropTypes.number.isRequired,\r\n\r\n\t\ttextFill: PropTypes.string.isRequired,\r\n\t\tfontFamily: PropTypes.string.isRequired,\r\n\t\tfontWeight: PropTypes.string.isRequired,\r\n\t\tfontStyle: PropTypes.string.isRequired,\r\n\t\tfontSize: PropTypes.number.isRequired,\r\n\t\ttext: PropTypes.string.isRequired,\r\n\r\n\t\ttextBox: PropTypes.shape({\r\n\t\t\theight: PropTypes.number.isRequired,\r\n\t\t\tleft: PropTypes.number.isRequired,\r\n\t\t\tpadding: PropTypes.shape({\r\n\t\t\t\tleft: PropTypes.number.isRequired,\r\n\t\t\t\tright: PropTypes.number.isRequired,\r\n\t\t\t}),\r\n\t\t\tcloseIcon: PropTypes.shape({\r\n\t\t\t\tpadding: PropTypes.shape({\r\n\t\t\t\t\tleft: PropTypes.number.isRequired,\r\n\t\t\t\t\tright: PropTypes.number.isRequired,\r\n\t\t\t\t}),\r\n\t\t\t\twidth: PropTypes.number.isRequired,\r\n\t\t\t})\r\n\t\t}).isRequired,\r\n\t\tedge: PropTypes.shape({\r\n\t\t\tstroke: PropTypes.string.isRequired,\r\n\t\t\tstrokeOpacity: PropTypes.number.isRequired,\r\n\t\t\tstrokeWidth: PropTypes.number.isRequired,\r\n\r\n\t\t\tfill: PropTypes.string.isRequired,\r\n\t\t\tfillOpacity: PropTypes.number.isRequired,\r\n\t\t})\r\n\t}).isRequired,\r\n\r\n\thoverText: PropTypes.object.isRequired,\r\n\tyCoordinateList: PropTypes.array.isRequired,\r\n\tenabled: PropTypes.bool.isRequired,\r\n};\r\n\r\nInteractiveYCoordinate.defaultProps = {\r\n\tonChoosePosition: noop,\r\n\tonDragComplete: noop,\r\n\tonSelect: noop,\r\n\tonDelete: noop,\r\n\r\n\tdefaultPriceCoordinate: {\r\n\t\tbgFill: \"#FFFFFF\",\r\n\t\tbgOpacity: 1,\r\n\r\n\t\tstroke: \"#6574CD\",\r\n\t\tstrokeOpacity: 1,\r\n\t\tstrokeDasharray: \"ShortDash2\",\r\n\t\tstrokeWidth: 1,\r\n\r\n\t\ttextFill: \"#6574CD\",\r\n\t\tfontFamily: \"Helvetica Neue, Helvetica, Arial, sans-serif\",\r\n\t\tfontSize: 12,\r\n\t\tfontStyle: \"normal\",\r\n\t\tfontWeight: \"normal\",\r\n\t\ttext: \"Alert\",\r\n\t\ttextBox: {\r\n\t\t\theight: 24,\r\n\t\t\tleft: 20,\r\n\t\t\tpadding: { left: 10, right: 5 },\r\n\t\t\tcloseIcon: {\r\n\t\t\t\tpadding: { left: 5, right: 8 },\r\n\t\t\t\twidth: 8,\r\n\t\t\t}\r\n\t\t},\r\n\t\tedge: {\r\n\t\t\tstroke: \"#6574CD\",\r\n\t\t\tstrokeOpacity: 1,\r\n\t\t\tstrokeWidth: 1,\r\n\r\n\t\t\tfill: \"#FFFFFF\",\r\n\t\t\tfillOpacity: 1,\r\n\t\t\torient: \"right\",\r\n\t\t\tat: \"right\",\r\n\t\t\tarrowWidth: 10,\r\n\t\t\tdx: 0,\r\n\t\t\trectWidth: 50,\r\n\t\t\trectHeight: 20,\r\n\t\t\tdisplayFormat: format(\".2f\"),\r\n\t\t}\r\n\t},\r\n\thoverText: {\r\n\t\t...HoverTextNearMouse.defaultProps,\r\n\t\tenable: true,\r\n\t\tbgHeight: 18,\r\n\t\tbgWidth: 175,\r\n\t\ttext: \"Click and drag the edge circles\",\r\n\t},\r\n\tyCoordinateList: [],\r\n};\r\n\r\nInteractiveYCoordinate.contextTypes = {\r\n\tsubscribe: PropTypes.func.isRequired,\r\n\tunsubscribe: PropTypes.func.isRequired,\r\n\tgenerateSubscriptionId: PropTypes.func.isRequired,\r\n\tchartId: PropTypes.oneOfType([PropTypes.number, PropTypes.string]).isRequired,\r\n};\r\n\r\nexport default InteractiveYCoordinate;\r\n","\r\n\r\nimport React, { Component } from \"react\";\r\nimport PropTypes from \"prop-types\";\r\n\r\nimport { isDefined, noop, mapObject, head } from \"../utils\";\r\nimport { getMorePropsForChart, getSelected } from \"./utils\";\r\n\r\nimport GenericComponent, { getMouseCanvas } from \"../GenericComponent\";\r\n\r\nclass DrawingObjectSelector extends Component {\r\n\tconstructor(props) {\r\n\t\tsuper(props);\r\n\t\tthis.handleClick = this.handleClick.bind(this);\r\n\t\tthis.handleDoubleClick = this.handleDoubleClick.bind(this);\r\n\t\tthis.getInteraction = this.getInteraction.bind(this);\r\n\t}\r\n\thandleDoubleClick(moreProps, e) {\r\n\t\te.preventDefault();\r\n\t\tconst { onDoubleClick } = this.props;\r\n\t\tconst { enabled } = this.props;\r\n\t\tif (!enabled) return;\r\n\r\n\t\tconst interactives = this.getInteraction(moreProps);\r\n\t\tconst allSelected = getSelected(interactives);\r\n\r\n\t\t// console.log(selected, interactives)\r\n\t\tif (allSelected.length > 0) {\r\n\t\t\tconst selected = head(allSelected);\r\n\t\t\tconst item = {\r\n\t\t\t\ttype: selected.type,\r\n\t\t\t\tchartId: selected.chartId,\r\n\t\t\t\tobject: head(selected.objects)\r\n\t\t\t};\r\n\t\t\tconst morePropsForChart = getMorePropsForChart(\r\n\t\t\t\tmoreProps, selected.chartId\r\n\t\t\t);\r\n\t\t\tonDoubleClick(item, morePropsForChart);\r\n\t\t}\r\n\t}\r\n\thandleClick(moreProps, e) {\r\n\t\te.preventDefault();\r\n\t\tconst { onSelect } = this.props;\r\n\t\tconst { enabled } = this.props;\r\n\t\tif (!enabled) return;\r\n\r\n\t\tconst interactives = this.getInteraction(moreProps);\r\n\r\n\t\tonSelect(interactives, moreProps);\r\n\t}\r\n\tgetInteraction(moreProps) {\r\n\t\tconst { getInteractiveNodes, drawingObjectMap } = this.props;\r\n\t\tconst interactiveNodes = getInteractiveNodes();\r\n\t\tconst interactives = mapObject(interactiveNodes, each => {\r\n\t\t\tconst key = drawingObjectMap[each.type];\r\n\r\n\t\t\tconst valueArray = isDefined(key)\r\n\t\t\t\t? each.node.props[key]\r\n\t\t\t\t: undefined;\r\n\r\n\t\t\tconst valuePresent = isDefined(valueArray)\r\n\t\t\t\t&& Array.isArray(valueArray)\r\n\t\t\t\t&& valueArray.length > 0;\r\n\t\t\tif (valuePresent) {\r\n\t\t\t\t// console.log(\"Value present for \", each.type, each.chartId);\r\n\t\t\t\tconst morePropsForChart = getMorePropsForChart(\r\n\t\t\t\t\tmoreProps, each.chartId\r\n\t\t\t\t);\r\n\r\n\t\t\t\tconst objects = each.node.getSelectionState(morePropsForChart);\r\n\r\n\t\t\t\treturn {\r\n\t\t\t\t\ttype: each.type,\r\n\t\t\t\t\tchartId: each.chartId,\r\n\t\t\t\t\tobjects,\r\n\t\t\t\t};\r\n\t\t\t}\r\n\t\t\treturn {\r\n\t\t\t\ttype: each.type,\r\n\t\t\t\tchartId: each.chartId,\r\n\t\t\t\tobjects: [],\r\n\t\t\t};\r\n\t\t});\r\n\r\n\t\treturn interactives;\r\n\t}\r\n\r\n\trender() {\r\n\t\treturn (\r\n\t\t\t\r\n\t\t);\r\n\t}\r\n}\r\n\r\n\r\nDrawingObjectSelector.propTypes = {\r\n\tgetInteractiveNodes: PropTypes.func.isRequired,\r\n\tonSelect: PropTypes.func.isRequired,\r\n\tonDoubleClick: PropTypes.func.isRequired,\r\n\tdrawingObjectMap: PropTypes.object.isRequired,\r\n\tenabled: PropTypes.bool.isRequired,\r\n};\r\n\r\nDrawingObjectSelector.defaultProps = {\r\n\tenabled: true,\r\n\tonDoubleClick: noop,\r\n};\r\n\r\nexport default DrawingObjectSelector;\r\n","import React from \"react\";\r\n\r\nimport {format} from \"d3-format\";\r\nimport {\r\n LineSeries\r\n} from \"../../../../../libs/rrag/lib/series\";\r\nimport {\r\n SingleValueTooltip\r\n} from \"../../../../../libs/rrag/lib/tooltip\";\r\n\r\nexport default function AtrIndicator(props) {\r\n const {indicator} = props\r\n\r\n return (\r\n <>\r\n \r\n \r\n \r\n );\r\n}","import React from \"react\";\r\n\r\nimport {\r\n BollingerSeries\r\n} from \"../../../../../libs/rrag/lib/series\";\r\n\r\nimport {\r\n BollingerBandTooltip\r\n} from \"../../../../../libs/rrag/lib/tooltip\";\r\n\r\n\r\nexport default function BollingerBands(props) {\r\n const { bb } = props\r\n const bbStroke = {\r\n top: \"#964B00\",\r\n middle: \"#000000\",\r\n bottom: \"#964B00\",\r\n };\r\n const bbFill = \"#4682B4\";\r\n return (\r\n <>\r\n d.bb}\r\n stroke={bbStroke}\r\n fill={bbFill} />\r\n d.bb}\r\n options={bb.options()}\r\n {...props.appearance}\r\n />\r\n \r\n );\r\n}","import React from \"react\";\r\n\r\nimport {\r\n\tEdgeIndicator\r\n} from \"../../../../../libs/rrag/lib/coordinates\";\r\nimport {\r\n LineSeries,\r\n} from \"../../../../../libs/rrag/lib/series\";\r\nimport {\r\n CurrentCoordinate\r\n} from \"../../../../../libs/rrag/lib/coordinates\";\r\n\r\nexport default function EdgeIndicatorContainer(props) {\r\n return (\r\n <>\r\n {\r\n props.maIndicatorEdges.map(edge => {\r\n const edgeCalculator = edge['edgeCalc']\r\n return <>\r\n \r\n \r\n \r\n \r\n \r\n }) \r\n }\r\n d.close} fill={d => d.close > d.open ? \"#6BA583\" : \"#FF0000\"} {...props.appearance}/>\r\n d.close} fill={d => d.close > d.open ? \"#6BA583\" : \"#FF0000\"} {...props.appearance}/>\r\n \r\n );\r\n}","import React from \"react\";\r\n\r\nimport {format} from \"d3-format\";\r\n\r\nimport {\r\n AreaSeries, StraightLine, AlternatingFillAreaSeries\r\n} from \"../../../../../libs/rrag/lib/series\";\r\nimport {\r\n SingleValueTooltip\r\n} from \"../../../../../libs/rrag/lib/tooltip\";\r\n\r\nexport default function FiIndicator(props) {\r\n const {fiCalc} = props.indicator\r\n\r\n return (\r\n <>\r\n scale(0)} yAccessor={fiCalc.accessor()} />\r\n \r\n\r\n \r\n \r\n );\r\n}","import React from \"react\";\r\n\r\nimport {format} from \"d3-format\";\r\nimport {timeFormat} from \"d3-time-format\";\r\nimport {\r\n AreaSeries, StraightLine, AlternatingFillAreaSeries\r\n} from \"../../../../../libs/rrag/lib/series\";\r\n\r\nimport { Chart } from \"../../../../../libs/rrag\";\r\nimport {XAxis, YAxis} from \"../../../../../libs/rrag/lib/axes\";\r\nimport {MouseCoordinateY, MouseCoordinateX} from \"../../../../../libs/rrag/lib/coordinates\";\r\nimport {\r\n SingleValueTooltip\r\n} from \"../../../../../libs/rrag/lib/tooltip\";\r\n\r\nexport default function FiEMAIndicator(props) {\r\n const {fiEMACalc} = props.indicator\r\n\r\n return (\r\n <>\r\n {/* scale(0)} yAccessor={fiEMACalc.accessor()} /> */}\r\n \r\n \r\n\r\n \r\n \r\n );\r\n}","import React from \"react\";\r\n\r\nimport {\r\n MACDSeries\r\n} from \"../../../../../libs/rrag/lib/series\";\r\n\r\nimport {\r\n MACDTooltip\r\n} from \"../../../../../libs/rrag/lib/tooltip\";\r\nimport {Chart} from \"../../../../../libs/rrag\";\r\n\r\n\r\nexport default function MacdIndicator(props) {\r\n const { indicator } = props\r\n const macdAppearance = {\r\n ...props.seriesApperance,\r\n stroke: {\r\n macd: indicator?.macd?.stroke ? indicator?.macd?.stroke : \"#FF0000\",\r\n signal: indicator?.signal?.stroke ? indicator?.signal?.stroke : \"#00F300\",\r\n },\r\n fill: {\r\n divergence: indicator?.fill?.divergence ? indicator?.fill?.divergence : \"#4682B4\"\r\n }\r\n };\r\n return (\r\n <>\r\n d.macd}\r\n {...macdAppearance} />\r\n d.macd}\r\n options={indicator['calc'].options()}\r\n appearance={macdAppearance}\r\n />\r\n \r\n );\r\n}","import React from \"react\";\r\n\r\nimport {\r\n LineSeries,\r\n} from \"libs/rrag/lib/series\";\r\nimport {\r\n CurrentCoordinate\r\n} from \"libs/rrag/lib/coordinates\";\r\nimport {\r\n MovingAverageTooltip,\r\n} from \"libs/rrag/lib/tooltip\";\r\n\r\nexport default function MovingAverage(props) {\r\n let maToolTipOptions = [];\r\n props.maIndicatorEdges.map(edge => {\r\n const edgeCalculator = edge['edgeCalc']\r\n maToolTipOptions.push({\r\n yAccessor: edgeCalculator.accessor(),\r\n type: edge.edgeName,\r\n stroke: edgeCalculator.stroke(),\r\n windowSize: edgeCalculator.options().windowSize,\r\n echo: \"some echo here\",\r\n })\r\n })\r\n return (\r\n <>\r\n {\r\n props.maIndicatorEdges.map((edge, index) => {\r\n const edgeCalculator = edge['edgeCalc']\r\n return <>\r\n \r\n \r\n \r\n })\r\n }\r\n {}}\r\n origin={[2, 15]}\r\n options={maToolTipOptions}\r\n {...props.appearance}\r\n />\r\n \r\n );\r\n}","import React from \"react\";\r\n\r\nimport {\r\n RSISeries\r\n} from \"../../../../../libs/rrag/lib/series\";\r\nimport {\r\n RSITooltip\r\n} from \"../../../../../libs/rrag/lib/tooltip\";\r\n\r\nexport default function RsiIndicator(props) {\r\n const {indicator} = props\r\n\r\n const rsiAppearance = {\r\n ...props.seriesApperance,\r\n stroke: {\r\n line: indicator?.stroke?.line ? indicator?.stroke?.line : \"#FF0000\",\r\n top: props.seriesApperance?.stroke?.top || \"black\",\r\n middle: props.seriesApperance?.stroke?.middle || \"black\",\r\n bottom: props.seriesApperance?.stroke?.bottom || \"black\",\r\n outsideThreshold: \"#b300b3\",\r\n insideThreshold: \"#ffccff\",\r\n },\r\n strokeWidth: {\r\n outsideThreshold: 2,\r\n insideThreshold: 2,\r\n top: 1,\r\n middle: 1,\r\n bottom: 1,\r\n }\r\n };\r\n return (\r\n <>\r\n d.rsi} {...rsiAppearance}/>\r\n\r\n d.rsi}\r\n options={indicator['calc'].options()} {...props.toolTipApperance} />\r\n \r\n );\r\n}","import React from \"react\";\r\n\r\nimport {\r\n StochasticSeries\r\n} from \"../../../../../libs/rrag/lib/series\";\r\nimport {\r\n StochasticTooltip\r\n} from \"../../../../../libs/rrag/lib/tooltip\";\r\n\r\nexport default function StoIndicator(props) {\r\n const {label, yAccessor, indicator, toolTipApperance, stoAppearance} = props;\r\n const appearance = {...stoAppearance, stroke: {\r\n dLine: indicator?.stroke?.line,\r\n kLine: indicator?.stroke?.line,\r\n }};\r\n return (\r\n <>\r\n \r\n \r\n \r\n );\r\n}","import {ema, sma, tma, wma, bollingerBand, macd, rsi, atr, compare, stochasticOscillator, sar, forceIndex} from \"../../../../libs/rrag/lib/indicator\";\r\n\r\nexport function getMAIndicatorEdge(edgeConfig) {\r\n let edge;\r\n switch (edgeConfig.edgeName){\r\n case 'ema':\r\n edge = ema()\r\n .options({\r\n windowSize: edgeConfig.edgeVal * 1, // optional will default to 10\r\n sourcePath: \"close\", // optional will default to close as the source\r\n })\r\n .skipUndefined(true) // defaults to true\r\n .merge((d, c) => {d['ema' + edgeConfig.edgeVal] = c;}) // Required, if not provided, log a error\r\n .accessor(d => d['ema' + edgeConfig.edgeVal]) // Required, if not provided, log an error during calculation\r\n .stroke(edgeConfig.lineColor); // Optional\r\n break; \r\n case 'sma':\r\n edge = sma()\r\n .options({ windowSize: edgeConfig.edgeVal * 1})\r\n .merge((d, c) => {d['sma' + edgeConfig.edgeVal] = c;})\r\n .accessor(d => d['sma' + edgeConfig.edgeVal])\r\n .stroke(edgeConfig.lineColor);\r\n break; \r\n case 'wma':\r\n edge = wma()\r\n .options({ windowSize: edgeConfig.edgeVal * 1 })\r\n .merge((d, c) => {d['wma' + edgeConfig.edgeVal] = c;})\r\n .accessor(d => d['wma' + edgeConfig.edgeVal])\r\n .stroke(edgeConfig.lineColor);\r\n break;\r\n case 'tma':\r\n edge = tma()\r\n .options({ windowSize: edgeConfig.edgeVal * 1 })\r\n .merge((d, c) => {d['tma' + edgeConfig.edgeVal] = c;})\r\n .accessor(d => d['tma' + edgeConfig.edgeVal])\r\n .stroke(edgeConfig.lineColor);\r\n break;\r\n \r\n }\r\n return edge;\r\n}\r\n\r\nexport function getBBIndicator() {\r\n const bb = bollingerBand()\r\n .merge((d, c) => {d.bb = c;})\r\n .accessor(d => d.bb);\r\n return bb;\r\n}\r\nexport function getMacdIndicator(fast, slow, signal) {\r\n const macdCalculator = macd()\r\n .options({\r\n fast: fast? fast * 1 : 12,\r\n slow: slow? slow * 1 : 26,\r\n signal: signal? signal * 1 : 9\r\n })\r\n .merge((d, c) => {d.macd = c;})\r\n .accessor(d => d.macd);\r\n return macdCalculator;\r\n}\r\n\r\n\r\nexport function getRsiIndicator(windowSize) {\r\n const rsiCalculator = rsi()\r\n .options({ windowSize: windowSize ? windowSize : 14, stroke: 'red' })\r\n .merge((d, c) => {d.rsi = c;})\r\n .accessor(d => d.rsi);\r\n return rsiCalculator\r\n}\r\nexport function getAtrIndicator(windowSize, stroke) {\r\n let w = windowSize ? windowSize : 14;\r\n return atr()\r\n .options({ windowSize: w})\r\n .merge((d, c) => {d['atr' + w] = c;})\r\n .accessor(d => d['atr' + w])\r\n .stroke(stroke ? stroke: '#fd5d93');\r\n}\r\n\r\nexport function getCompareIndicator(){\r\n const compareCalculator = compare()\r\n .options({\r\n basePath: \"close\",\r\n mainKeys: [\"open\", \"high\", \"low\", \"close\"],\r\n compareKeys: [\"AAPLClose\", \"SP500Close\"],\r\n })\r\n .accessor(d => d.compare)\r\n .merge((d, c) => { d.compare = c; });\r\n return compareCalculator;\r\n}\r\n\r\n\r\nexport function getStoIndicator(stoConfig){\r\n const slowSTO = stochasticOscillator()\r\n .options({ windowSize: stoConfig?.slow?.windowSize || 0, kWindowSize: stoConfig?.slow?.kWindowSize || 0 })\r\n .merge((d, c) => {d.slowSTO = c;})\r\n .accessor(d => d.slowSTO);\r\n const fastSTO = stochasticOscillator()\r\n .options({ windowSize: stoConfig?.fast?.windowSize || 0, kWindowSize: stoConfig?.fast?.kWindowSize || 0 })\r\n .merge((d, c) => {d.fastSTO = c;})\r\n .accessor(d => d.fastSTO);\r\n const fullSTO = stochasticOscillator()\r\n .options({ \r\n windowSize: stoConfig?.full?.windowSize || 0, \r\n kWindowSize: stoConfig?.full?.kWindowSize || 0, \r\n dWindowSize: stoConfig?.full?.dWindowSize || 0 \r\n })\r\n .merge((d, c) => {d.fullSTO = c;})\r\n .accessor(d => d.fullSTO);\r\n return {\r\n slowSTO,\r\n fastSTO,\r\n fullSTO\r\n };\r\n}\r\n\r\nexport function getSarCalc(indicator) {\r\n const accelerationFactor = indicator?.accelerationFactor || 0.02;\r\n const maxAccelerationFactor = indicator?.maxAccelerationFactor || 0.2;\r\n return sar()\r\n\t\t\t.options({\r\n\t\t\t\taccelerationFactor, maxAccelerationFactor\r\n\t\t\t})\r\n\t\t\t.merge((d, c) => {d.sar = c;})\r\n\t\t\t.accessor(d => d.sar);\r\n}\r\n\r\n\r\nexport function getForceIndexCalc(windowSize) {\r\n const fi = forceIndex()\r\n\t\t\t.merge((d, c) => {d.fi = c;})\r\n\t\t\t.accessor(d => d.fi);\r\n\r\n const fiEMA = ema()\r\n .id(1)\r\n .options({ windowSize: windowSize || 1, sourcePath: \"fi\" })\r\n .merge((d, c) => {d[`fiEMA${windowSize || 1}`] = c;})\r\n .accessor(d => d[`fiEMA${windowSize || 1}`]);\r\n return {\r\n fi, fiEMA\r\n }\r\n}","\r\n\r\nimport { rebind, merge } from \"../utils\";\r\n\r\nimport { sma } from \"../calculator\";\r\nimport baseIndicator from \"./baseIndicator\";\r\n\r\nconst ALGORITHM_TYPE = \"SMA\";\r\n\r\nexport default function() {\r\n\r\n\tconst base = baseIndicator()\r\n\t\t.type(ALGORITHM_TYPE)\r\n\t\t.accessor(d => d.sma);\r\n\r\n\tconst underlyingAlgorithm = sma();\r\n\r\n\tconst mergedAlgorithm = merge()\r\n\t\t.algorithm(underlyingAlgorithm)\r\n\t\t.merge((datum, indicator) => { datum.sma = indicator; });\r\n\r\n\tconst indicator = function(data, options = { merge: true }) {\r\n\t\tif (options.merge) {\r\n\t\t\tif (!base.accessor()) throw new Error(`Set an accessor to ${ALGORITHM_TYPE} before calculating`);\r\n\t\t\treturn mergedAlgorithm(data);\r\n\t\t}\r\n\t\treturn underlyingAlgorithm(data);\r\n\t};\r\n\trebind(indicator, base, \"id\", \"accessor\", \"stroke\", \"fill\", \"echo\", \"type\");\r\n\trebind(indicator, underlyingAlgorithm, \"undefinedLength\");\r\n\trebind(indicator, underlyingAlgorithm, \"options\");\r\n\trebind(indicator, mergedAlgorithm, \"merge\", \"skipUndefined\");\r\n\r\n\r\n\treturn indicator;\r\n}\r\n","\r\n\r\nimport { rebind, merge } from \"../utils\";\r\nimport { atr } from \"../calculator\";\r\n\r\nimport baseIndicator from \"./baseIndicator\";\r\n\r\nconst ALGORITHM_TYPE = \"ATR\";\r\n\r\nexport default function() {\r\n\r\n\tconst base = baseIndicator()\r\n\t\t.type(ALGORITHM_TYPE);\r\n\r\n\tconst underlyingAlgorithm = atr();\r\n\r\n\tconst mergedAlgorithm = merge()\r\n\t\t.algorithm(underlyingAlgorithm)\r\n\t\t.merge((datum, indicator) => { datum.atr = indicator; });\r\n\r\n\tconst indicator = function(data, options = { merge: true }) {\r\n\t\tif (options.merge) {\r\n\t\t\tif (!base.accessor()) throw new Error(`Set an accessor to ${ALGORITHM_TYPE} before calculating`);\r\n\t\t\treturn mergedAlgorithm(data);\r\n\t\t}\r\n\t\treturn underlyingAlgorithm(data);\r\n\t};\r\n\r\n\trebind(indicator, base, \"id\", \"accessor\", \"stroke\", \"fill\", \"echo\", \"type\");\r\n\trebind(indicator, underlyingAlgorithm, \"options\");\r\n\trebind(indicator, mergedAlgorithm, \"merge\", \"skipUndefined\");\r\n\r\n\treturn indicator;\r\n}\r\n","\r\n\r\nimport { rebind, merge } from \"../utils\";\r\n\r\nimport { sar } from \"../calculator\";\r\n\r\nimport baseIndicator from \"./baseIndicator\";\r\n\r\nconst ALGORITHM_TYPE = \"SMA\";\r\n\r\nexport default function() {\r\n\r\n\tconst base = baseIndicator()\r\n\t\t.type(ALGORITHM_TYPE)\r\n\t\t.accessor(d => d.sar);\r\n\r\n\tconst underlyingAlgorithm = sar();\r\n\r\n\tconst mergedAlgorithm = merge()\r\n\t\t.algorithm(underlyingAlgorithm)\r\n\t\t.merge((datum, indicator) => { datum.sar = indicator; });\r\n\r\n\tconst indicator = function(data, options = { merge: true }) {\r\n\t\tif (options.merge) {\r\n\t\t\tif (!base.accessor()) throw new Error(`Set an accessor to ${ALGORITHM_TYPE} before calculating`);\r\n\t\t\treturn mergedAlgorithm(data);\r\n\t\t}\r\n\t\treturn underlyingAlgorithm(data);\r\n\t};\r\n\r\n\trebind(indicator, base, \"id\", \"accessor\", \"stroke\", \"echo\", \"type\");\r\n\trebind(indicator, underlyingAlgorithm, \"undefinedLength\");\r\n\trebind(indicator, underlyingAlgorithm, \"options\");\r\n\trebind(indicator, mergedAlgorithm, \"merge\");\r\n\r\n\treturn indicator;\r\n}\r\n","\r\n\r\nimport { rebind, merge } from \"../utils\";\r\n\r\nimport { forceIndex } from \"../calculator\";\r\n\r\nimport baseIndicator from \"./baseIndicator\";\r\n\r\nconst ALGORITHM_TYPE = \"ForceIndex\";\r\n\r\nexport default function() {\r\n\r\n\tconst base = baseIndicator()\r\n\t\t.type(ALGORITHM_TYPE)\r\n\t\t.accessor(d => d.forceIndex);\r\n\r\n\tconst underlyingAlgorithm = forceIndex();\r\n\r\n\tconst mergedAlgorithm = merge()\r\n\t\t.algorithm(underlyingAlgorithm)\r\n\t\t.merge((datum, indicator) => { datum.forceIndex = indicator; });\r\n\r\n\tconst indicator = function(data, options = { merge: true }) {\r\n\t\tif (options.merge) {\r\n\t\t\tif (!base.accessor()) throw new Error(`Set an accessor to ${ALGORITHM_TYPE} before calculating`);\r\n\t\t\treturn mergedAlgorithm(data);\r\n\t\t}\r\n\t\treturn underlyingAlgorithm(data);\r\n\t};\r\n\r\n\trebind(indicator, base, \"id\", \"accessor\", \"stroke\", \"fill\", \"echo\", \"type\");\r\n\trebind(indicator, underlyingAlgorithm, \"options\");\r\n\trebind(indicator, mergedAlgorithm, \"merge\", \"skipUndefined\");\r\n\r\n\treturn indicator;\r\n}\r\n","import { tsvParse, csvParse } from \"d3-dsv\";\r\nimport {format} from \"d3-format\";\r\nimport { timeParse, timeFormat } from \"d3-time-format\";\r\n\r\nconst dateFormat = timeFormat(\"%Y-%m-%d\");\r\nconst numberFormat = format(\".2f\");\r\n\r\nfunction parseData(parse) {\r\n return function(d) {\r\n d.date = parse(d.date);\r\n d.open = +d.open;\r\n d.high = +d.high;\r\n d.low = +d.low;\r\n d.close = +d.close;\r\n d.volume = +d.volume;\r\n\r\n return d;\r\n };\r\n}\r\n\r\nconst parseDate = timeParse(\"%Y-%m-%d\");\r\n\r\nexport function getDataFromTSV() {\r\n const promiseMSFT = fetch(\"https://cdn.rawgit.com/rrag/react-stockcharts/master/docs/data/MSFT.tsv\")\r\n .then(response => response.text())\r\n .then(data => tsvParse(data, parseData(parseDate)))\r\n return promiseMSFT;\r\n}\r\n\r\nexport function getIntervalNumber(d, days) {\r\n // Copy date so don't modify original\r\n d = new Date(Date.UTC(d.getFullYear(), d.getMonth(), d.getDate()));\r\n // Set to nearest Thursday: current date + 4 - current day number\r\n // Make Sunday's day number 7\r\n // d.setUTCDate(d.getUTCDate() + 4 - (d.getUTCDay()|| days));\r\n // Get first day of year\r\n var yearStart = new Date(Date.UTC(d.getUTCFullYear(),0,1));\r\n // Calculate full weeks to nearest Thursday\r\n var weekNo = Math.ceil(( ( (d - yearStart) / 86400000) + 1)/days);\r\n // Return array of year and week number\r\n return [d.getUTCFullYear(), weekNo];\r\n}\r\n\r\nexport function getTooltipContent(ys, isStock = true) {\r\n\tlet defautlY = [];\r\n\treturn ({ currentItem, xAccessor }) => {\r\n\t\tif(isStock){\r\n\t\t\tdefautlY = [\r\n\t\t\t\t{\r\n\t\t\t\t\tlabel: \"open\",\r\n\t\t\t\t\tvalue: currentItem.open && numberFormat(currentItem.open)\r\n\t\t\t\t},\r\n\t\t\t\t{\r\n\t\t\t\t\tlabel: \"high\",\r\n\t\t\t\t\tvalue: currentItem.high && numberFormat(currentItem.high)\r\n\t\t\t\t},\r\n\t\t\t\t{\r\n\t\t\t\t\tlabel: \"low\",\r\n\t\t\t\t\tvalue: currentItem.low && numberFormat(currentItem.low)\r\n\t\t\t\t},\r\n\t\t\t\t{\r\n\t\t\t\t\tlabel: \"close\",\r\n\t\t\t\t\tvalue: currentItem.close && numberFormat(currentItem.close)\r\n\t\t\t\t}\r\n\t\t\t]\r\n\t\t}\r\n\t\treturn {\r\n\t\t\tx: dateFormat(xAccessor(currentItem)),\r\n\t\t\ty: defautlY.concat(\r\n\t\t\t\t\tys.map(each => ({\r\n\t\t\t\t\t\tlabel: each.label,\r\n\t\t\t\t\t\tvalue: each.value(currentItem),\r\n\t\t\t\t\t\tstroke: each.stroke\r\n\t\t\t\t\t}))\r\n\t\t\t\t)\r\n\t\t\t\t.filter(line => line.value)\r\n\t\t};\r\n\t};\r\n}","import React, { Component } from \"react\";\r\nimport PropTypes from \"prop-types\";\r\n\r\nimport GenericChartComponent from \"../GenericChartComponent\";\r\n\r\nclass Annotate extends Component {\r\n\tconstructor(props) {\r\n\t\tsuper(props);\r\n\t\tthis.renderSVG = this.renderSVG.bind(this);\r\n\t}\r\n\trender() {\r\n\t\treturn ;\r\n\t}\r\n\trenderSVG(moreProps) {\r\n\t\tconst { xAccessor } = moreProps;\r\n\t\tconst { xScale, chartConfig: { yScale }, plotData } = moreProps;\r\n\r\n\t\tconst { className, usingProps, with: Annotation } = this.props;\r\n\t\tconst data = helper(this.props, plotData);\r\n\r\n\t\treturn (\r\n\t\t\t\r\n\t\t\t\t{data.map((d, idx) => )}\r\n\t\t\t\r\n\t\t);\r\n\t}\r\n}\r\n\r\nAnnotate.propTypes = {\r\n\tclassName: PropTypes.string,\r\n\twith: PropTypes.func,\r\n\twhen: PropTypes.func,\r\n\tusingProps: PropTypes.object,\r\n};\r\n\r\nAnnotate.defaultProps = {\r\n\tclassName: \"react-stockcharts-annotate react-stockcharts-default-cursor\",\r\n};\r\n\r\nfunction helper({ when }, plotData) {\r\n\treturn plotData.filter(when);\r\n}\r\n\r\nexport default Annotate;","\r\n\r\nimport React, { Component } from \"react\";\r\nimport PropTypes from \"prop-types\";\r\n\r\nimport GenericChartComponent from \"../GenericChartComponent\";\r\n\r\nimport {format} from \"d3-format\";\r\nimport {timeFormat} from \"d3-time-format\";\r\nimport { HoverTooltip } from \"../tooltip\";\r\nconst dateFormat = timeFormat(\"%Y-%m-%d\");\r\nconst numberFormat = format(\".2f\");\r\n\r\nfunction tooltipContent(ys) {\r\n\treturn ({ currentItem, xAccessor }) => {\r\n\t\treturn {\r\n\t\t\tx: dateFormat(xAccessor(currentItem)),\r\n\t\t\ty: [\r\n\t\t\t\t{\r\n\t\t\t\t\tlabel: \"open\",\r\n\t\t\t\t\tvalue: currentItem.open && numberFormat(currentItem.open)\r\n\t\t\t\t},\r\n\t\t\t\t{\r\n\t\t\t\t\tlabel: \"high\",\r\n\t\t\t\t\tvalue: currentItem.high && numberFormat(currentItem.high)\r\n\t\t\t\t},\r\n\t\t\t\t{\r\n\t\t\t\t\tlabel: \"low\",\r\n\t\t\t\t\tvalue: currentItem.low && numberFormat(currentItem.low)\r\n\t\t\t\t},\r\n\t\t\t\t{\r\n\t\t\t\t\tlabel: \"close\",\r\n\t\t\t\t\tvalue: currentItem.close && numberFormat(currentItem.close)\r\n\t\t\t\t}\r\n\t\t\t]\r\n\t\t\t\t.concat(\r\n\t\t\t\t\tys.map(each => ({\r\n\t\t\t\t\t\tlabel: each.label,\r\n\t\t\t\t\t\tvalue: each.value(currentItem),\r\n\t\t\t\t\t\tstroke: each.stroke\r\n\t\t\t\t\t}))\r\n\t\t\t\t)\r\n\t\t\t\t.filter(line => line.value)\r\n\t\t};\r\n\t};\r\n}\r\n\r\nclass Annotate extends Component {\r\n\tconstructor(props) {\r\n\t\tsuper(props);\r\n\t\tthis.renderSVG = this.renderSVG.bind(this);\r\n\t\tthis.renderSVG1 = this.renderSVG1.bind(this);\r\n\t}\r\n\trender() {\r\n\t\treturn <> \r\n\t\t\t{/* 'd',\r\n\t\t\t\t\t\tstroke: 'red'\r\n\t\t\t\t\t}\r\n\t\t\t\t])}\r\n\t\t\t\tfontSize={15}\r\n\t\t\t/> */}\r\n\t\t\t{/* */}\r\n\t\t\t\r\n\t\t\r\n\t}\r\n\trenderSVG1(){\r\n\t\treturn (\r\n\t\t\t<>\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\r\n\t\t)\r\n\t}\r\n\trenderSVG(moreProps) {\r\n\t\tconst { xAccessor } = moreProps;\r\n\t\t// console.log(moreProps, 'more props')\r\n\t\tconst { xScale, chartConfig: { yScale }, plotData } = moreProps;\r\n\r\n\t\tconst { className, usingProps, with: Annotation } = this.props;\r\n\t\tconst data = helper(this.props, plotData);\r\n\r\n\t\treturn (\r\n\t\t\t\r\n\t\t\t\t{data.map((d, idx) => )}\r\n\t\t\t\r\n\t\t);\r\n\t}\r\n}\r\n\r\nAnnotate.propTypes = {\r\n\tclassName: PropTypes.string,\r\n\twith: PropTypes.func,\r\n\twhen: PropTypes.func,\r\n\tusingProps: PropTypes.object,\r\n};\r\n\r\nAnnotate.defaultProps = {\r\n\tclassName: \"react-stockcharts-annotate react-stockcharts-default-cursor\",\r\n};\r\n\r\nfunction helper({ when }, plotData) {\r\n\treturn plotData.filter(when);\r\n}\r\n\r\nexport default Annotate;\r\n","\r\n\r\nimport React, { Component } from \"react\";\r\nimport PropTypes from \"prop-types\";\r\nimport { functor } from \"../utils\";\r\n\r\nclass LabelAnnotation extends Component {\r\n\tconstructor(props) {\r\n\t\tsuper(props);\r\n\t\tthis.handleClick = this.handleClick.bind(this);\r\n\t}\r\n\thandleClick(e) {\r\n\t\tconst { onClick } = this.props;\r\n\r\n\t\tif (onClick) {\r\n\t\t\tconst { xScale, yScale, datum } = this.props;\r\n\t\t\tonClick({ xScale, yScale, datum }, e);\r\n\t\t}\r\n\t}\r\n\trender() {\r\n\t\tconst { className, textAnchor, fontFamily, fontSize, opacity, rotate } = this.props;\r\n\t\tconst { xAccessor, xScale, yScale } = this.props;\r\n\r\n\t\tconst { xPos, yPos, fill, text, tooltip } = helper(this.props, xAccessor, xScale, yScale);\r\n\r\n\t\treturn (\r\n\t\t\t{tooltip}\r\n\t\t\t{text}\r\n\t\t);\r\n\t}\r\n}\r\n\r\nexport function helper(props, xAccessor, xScale, yScale) {\r\n\tconst { x, y, datum, fill, text, tooltip, plotData } = props;\r\n\r\n\tconst xFunc = functor(x);\r\n\tconst yFunc = functor(y);\r\n\r\n\tconst [xPos, yPos] = [xFunc({ xScale, xAccessor, datum, plotData }), yFunc({ yScale, datum, plotData })];\r\n\r\n\treturn {\r\n\t\txPos,\r\n\t\tyPos,\r\n\t\ttext: functor(text)(datum),\r\n\t\tfill: functor(fill)(datum),\r\n\t\ttooltip: functor(tooltip)(datum),\r\n\t};\r\n}\r\n\r\nLabelAnnotation.propTypes = {\r\n\tclassName: PropTypes.string,\r\n\ttext: PropTypes.oneOfType([\r\n\t\tPropTypes.string,\r\n\t\tPropTypes.func\r\n\t]),\r\n\ttextAnchor: PropTypes.string,\r\n\tfontFamily: PropTypes.string,\r\n\tfontSize: PropTypes.number,\r\n\topacity: PropTypes.number,\r\n\trotate: PropTypes.number,\r\n\tonClick: PropTypes.func,\r\n\txAccessor: PropTypes.func,\r\n\txScale: PropTypes.func,\r\n\tyScale: PropTypes.func,\r\n\tdatum: PropTypes.object,\r\n\tx: PropTypes.oneOfType([\r\n\t\tPropTypes.number,\r\n\t\tPropTypes.func\r\n\t]),\r\n\ty: PropTypes.oneOfType([\r\n\t\tPropTypes.number,\r\n\t\tPropTypes.func\r\n\t])\r\n};\r\n\r\nexport const defaultProps = {\r\n\ttextAnchor: \"middle\",\r\n\tfontFamily: \"Helvetica Neue, Helvetica, Arial, sans-serif\",\r\n\tfontSize: 12,\r\n\tfill: \"#000000\",\r\n\topacity: 1,\r\n\trotate: 0,\r\n\tx: ({ xScale, xAccessor, datum }) => xScale(xAccessor(datum)),\r\n};\r\n\r\nLabelAnnotation.defaultProps = {\r\n\t...defaultProps,\r\n\tclassName: \"react-stockcharts-labelannotation\",\r\n};\r\n\r\nexport default LabelAnnotation;\r\n","import React, { Component } from \"react\";\r\nimport PropTypes from \"prop-types\";\r\nimport { functor } from \"../utils\";\r\n\r\nclass SvgPathAnnotation extends Component {\r\n\tconstructor(props) {\r\n\t\tsuper(props);\r\n\t\tthis.handleClick = this.handleClick.bind(this);\r\n\t}\r\n\thandleClick(e) {\r\n\t\tconst { onClick } = this.props;\r\n\r\n\t\tif (onClick) {\r\n\t\t\tconst { xScale, yScale, datum } = this.props;\r\n\t\t\tonClick({ xScale, yScale, datum }, e);\r\n\t\t}\r\n\t}\r\n\trender() {\r\n\t\tconst { className, stroke, opacity } = this.props;\r\n\t\tconst { xAccessor, xScale, yScale, path } = this.props;\r\n\r\n\t\tconst { x, y, fill, tooltip } = helper(this.props, xAccessor, xScale, yScale);\r\n\r\n\t\treturn (\r\n\t\t\t{tooltip}\r\n\t\t\t\r\n\t\t);\r\n\t}\r\n}\r\n\r\nfunction helper(props, xAccessor, xScale, yScale) {\r\n\tconst { x, y, datum, fill, tooltip, plotData } = props;\r\n\r\n\tconst xFunc = functor(x);\r\n\tconst yFunc = functor(y);\r\n\r\n\tconst [xPos, yPos] = [xFunc({ xScale, xAccessor, datum, plotData }), yFunc({ yScale, datum, plotData })];\r\n\r\n\treturn {\r\n\t\tx: xPos,\r\n\t\ty: yPos,\r\n\t\tfill: functor(fill)(datum),\r\n\t\ttooltip: functor(tooltip)(datum),\r\n\t};\r\n}\r\n\r\nSvgPathAnnotation.propTypes = {\r\n\tclassName: PropTypes.string,\r\n\tpath: PropTypes.func.isRequired,\r\n\tonClick: PropTypes.func,\r\n\txAccessor: PropTypes.func,\r\n\txScale: PropTypes.func,\r\n\tyScale: PropTypes.func,\r\n\tdatum: PropTypes.object,\r\n\tstroke: PropTypes.string,\r\n\tfill: PropTypes.string,\r\n\topacity: PropTypes.number,\r\n};\r\n\r\nSvgPathAnnotation.defaultProps = {\r\n\tclassName: \"react-stockcharts-svgpathannotation\",\r\n\topacity: 1,\r\n\tx: ({ xScale, xAccessor, datum }) => xScale(xAccessor(datum)),\r\n};\r\n\r\nexport default SvgPathAnnotation;","\r\n\r\nimport React, { Component } from \"react\";\r\nimport PropTypes from \"prop-types\";\r\nimport { functor } from \"../utils\";\r\n\r\nclass SvgPathAnnotation extends Component {\r\n\tconstructor(props) {\r\n\t\tsuper(props);\r\n\t\tthis.handleClick = this.handleClick.bind(this);\r\n\t}\r\n\thandleClick(e) {\r\n\t\tconst { onClick } = this.props;\r\n\r\n\t\tif (onClick) {\r\n\t\t\tconst { xScale, yScale, datum } = this.props;\r\n\t\t\tonClick({ xScale, yScale, datum }, e);\r\n\t\t}\r\n\t}\r\n\trender() {\r\n\t\tconst { className, stroke, opacity } = this.props;\r\n\t\tconst { xAccessor, xScale, yScale, path } = this.props;\r\n\r\n\t\tconst { x, y, fill, tooltip } = helper(this.props, xAccessor, xScale, yScale);\r\n\r\n\t\treturn (\r\n\t\t\t{tooltip}\r\n\t\t\t\r\n\t\t);\r\n\t}\r\n}\r\n\r\nfunction helper(props, xAccessor, xScale, yScale) {\r\n\tconst { x, y, datum, fill, tooltip, plotData } = props;\r\n\r\n\tconst xFunc = functor(x);\r\n\tconst yFunc = functor(y);\r\n\r\n\tconst [xPos, yPos] = [xFunc({ xScale, xAccessor, datum, plotData }), yFunc({ yScale, datum, plotData })];\r\n\r\n\treturn {\r\n\t\tx: xPos,\r\n\t\ty: yPos,\r\n\t\tfill: functor(fill)(datum),\r\n\t\ttooltip: functor(tooltip)(datum),\r\n\t};\r\n}\r\n\r\nSvgPathAnnotation.propTypes = {\r\n\tclassName: PropTypes.string,\r\n\tpath: PropTypes.func.isRequired,\r\n\tonClick: PropTypes.func,\r\n\txAccessor: PropTypes.func,\r\n\txScale: PropTypes.func,\r\n\tyScale: PropTypes.func,\r\n\tdatum: PropTypes.object,\r\n\tstroke: PropTypes.string,\r\n\tfill: PropTypes.string,\r\n\topacity: PropTypes.number,\r\n};\r\n\r\nSvgPathAnnotation.defaultProps = {\r\n\tclassName: \"react-stockcharts-svgpathannotation\",\r\n\topacity: 1,\r\n\tx: ({ xScale, xAccessor, datum }) => xScale(xAccessor(datum)),\r\n};\r\n\r\nexport default SvgPathAnnotation;","\r\n\r\nimport React, { Component } from \"react\";\r\nimport PropTypes from \"prop-types\";\r\nimport { functor } from \"../utils\";\r\n\r\nclass LabelAnnotation extends Component {\r\n\tconstructor(props) {\r\n\t\tsuper(props);\r\n\t\tthis.handleClick = this.handleClick.bind(this);\r\n\t}\r\n\thandleClick(e) {\r\n\t\tconst { onClick } = this.props;\r\n\t\tif (onClick) {\r\n\t\t\tconst { xScale, yScale, datum } = this.props;\r\n\t\t\tonClick({ xScale, yScale, datum }, e);\r\n\t\t}\r\n\t}\r\n\trender() {\r\n\t\tconst { className, textAnchor, fontFamily, fontSize, opacity, rotate } = this.props;\r\n\t\tconst { xAccessor, xScale, yScale } = this.props;\r\n\r\n\t\tconst { xPos, yPos, fill, text, tooltip } = helper(this.props, xAccessor, xScale, yScale);\r\n\t\t\r\n\t\treturn (\r\n\t\t\t{tooltip}\r\n\t\t\t\r\n\t\t\t{text}\r\n\t\t\t{/* {text} */}\r\n\t\t);\r\n\t}\r\n}\r\n\r\nexport function helper(props, xAccessor, xScale, yScale) {\r\n\tconst { x, y, datum, fill, text, tooltip, plotData } = props;\r\n\r\n\tconst xFunc = functor(x);\r\n\tconst yFunc = functor(y);\r\n\r\n\tconst [xPos, yPos] = [xFunc({ xScale, xAccessor, datum, plotData }), yFunc({ yScale, datum, plotData })];\r\n\r\n\treturn {\r\n\t\txPos,\r\n\t\tyPos,\r\n\t\ttext: functor(text)(datum),\r\n\t\tfill: functor(fill)(datum),\r\n\t\ttooltip: functor(tooltip)(datum),\r\n\t};\r\n}\r\n\r\nLabelAnnotation.propTypes = {\r\n\tclassName: PropTypes.string,\r\n\ttext: PropTypes.oneOfType([\r\n\t\tPropTypes.string,\r\n\t\tPropTypes.func\r\n\t]),\r\n\ttextAnchor: PropTypes.string,\r\n\tfontFamily: PropTypes.string,\r\n\tfontSize: PropTypes.number,\r\n\topacity: PropTypes.number,\r\n\trotate: PropTypes.number,\r\n\tonClick: PropTypes.func,\r\n\txAccessor: PropTypes.func,\r\n\txScale: PropTypes.func,\r\n\tyScale: PropTypes.func,\r\n\tdatum: PropTypes.object,\r\n\tx: PropTypes.oneOfType([\r\n\t\tPropTypes.number,\r\n\t\tPropTypes.func\r\n\t]),\r\n\ty: PropTypes.oneOfType([\r\n\t\tPropTypes.number,\r\n\t\tPropTypes.func\r\n\t])\r\n};\r\n\r\nexport const defaultProps = {\r\n\ttextAnchor: \"middle\",\r\n\tfontFamily: \"Helvetica Neue, Helvetica, Arial, sans-serif\",\r\n\tfontSize: 12,\r\n\tfill: \"#000000\",\r\n\topacity: 1,\r\n\trotate: 0,\r\n\tx: ({ xScale, xAccessor, datum }) => xScale(xAccessor(datum)),\r\n};\r\n\r\nLabelAnnotation.defaultProps = {\r\n\t...defaultProps,\r\n\tclassName: \"react-stockcharts-labelannotation\",\r\n};\r\n\r\nexport default LabelAnnotation;\r\n","\r\n\r\nimport React, { Component } from \"react\";\r\nimport PropTypes from \"prop-types\";\r\nimport GenericComponent from \"../GenericComponent\";\r\n\r\nimport { isDefined, hexToRGBA, functor } from \"../utils\";\r\nimport LabelAnnotation, { defaultProps, helper } from \"./LabelAnnotation\";\r\n\r\nclass Label extends Component {\r\n\tconstructor(props) {\r\n\t\tsuper(props);\r\n\t\tthis.renderSVG = this.renderSVG.bind(this);\r\n\t\tthis.drawOnCanvas = this.drawOnCanvas.bind(this);\r\n\t}\r\n\tdrawOnCanvas(ctx, moreProps) {\r\n\t\tdrawOnCanvas2(ctx, this.props, this.context, moreProps);\r\n\t}\r\n\trender() {\r\n\t\treturn ;\r\n\t}\r\n\trenderSVG(moreProps) {\r\n\t\tconst { chartConfig } = moreProps;\r\n\r\n\t\treturn ;\r\n\t}\r\n}\r\n\r\nfunction getText(props) {\r\n\treturn functor(props.text)(props);\r\n}\r\n\r\nfunction getYScale(chartConfig) {\r\n\treturn Array.isArray(chartConfig) ? undefined : chartConfig.yScale;\r\n}\r\n\r\nLabel.propTypes = {\r\n\tclassName: PropTypes.string,\r\n\tselectCanvas: PropTypes.func,\r\n\ttext: PropTypes.oneOfType([\r\n\t\tPropTypes.string,\r\n\t\tPropTypes.func\r\n\t]).isRequired,\r\n\ttextAnchor: PropTypes.string,\r\n\tfontFamily: PropTypes.string,\r\n\tfontSize: PropTypes.number,\r\n\topacity: PropTypes.number,\r\n\trotate: PropTypes.number,\r\n\tonClick: PropTypes.func,\r\n\txAccessor: PropTypes.func,\r\n\txScale: PropTypes.func,\r\n\tyScale: PropTypes.func,\r\n\tdatum: PropTypes.object,\r\n\tx: PropTypes.oneOfType([\r\n\t\tPropTypes.number,\r\n\t\tPropTypes.func\r\n\t]),\r\n\ty: PropTypes.oneOfType([\r\n\t\tPropTypes.number,\r\n\t\tPropTypes.func\r\n\t])\r\n};\r\n\r\nLabel.contextTypes = {\r\n\tcanvasOriginX: PropTypes.number,\r\n\tcanvasOriginY: PropTypes.number,\r\n\r\n\tmargin: PropTypes.object.isRequired,\r\n\tratio: PropTypes.number.isRequired,\r\n};\r\n\r\nLabel.defaultProps = {\r\n\t...defaultProps,\r\n\tselectCanvas: canvases => canvases.bg,\r\n};\r\n\r\nfunction drawOnCanvas2(ctx, props, context, moreProps) {\r\n\tctx.save();\r\n\r\n\tconst { canvasOriginX, canvasOriginY, margin, ratio } = context;\r\n\tctx.setTransform(1, 0, 0, 1, 0, 0);\r\n\tctx.scale(ratio, ratio);\r\n\r\n\r\n\tif (isDefined(canvasOriginX))\r\n\t\tctx.translate(canvasOriginX, canvasOriginY);\r\n\telse\r\n\t\tctx.translate(margin.left + (0.5 * ratio), margin.top + (0.5 * ratio));\r\n\r\n\tdrawOnCanvas(ctx, props, moreProps);\r\n\r\n\tctx.restore();\r\n\r\n}\r\n\r\nfunction drawOnCanvas(ctx, props, moreProps) {\r\n\tconst { textAnchor, fontFamily, fontSize, opacity, rotate } = props;\r\n\tconst { xScale, chartConfig, xAccessor } = moreProps;\r\n\r\n\tconst { xPos, yPos, fill, text } = helper(props, xAccessor, xScale, getYScale(chartConfig));\r\n\r\n\tconst radians = (rotate / 180) * Math.PI;\r\n\tctx.save();\r\n\tctx.translate(xPos, yPos);\r\n\tctx.rotate(radians);\r\n\r\n\tctx.font = `${ fontSize }px ${ fontFamily }`;\r\n\tctx.fillStyle = hexToRGBA(fill, opacity);\r\n\tctx.textAlign = textAnchor === \"middle\" ? \"center\" : textAnchor;\r\n\r\n\tctx.beginPath();\r\n\tctx.fillText(text, 0, 0);\r\n\tctx.restore();\r\n}\r\n\r\n\r\nexport default Label;\r\n","\r\n\r\n\r\nexport { default as Annotate } from \"./Annotate\";\r\nexport { default as AnnotateCustom } from \"./AnnotateCustom\";\r\nexport { default as LabelAnnotation } from \"./LabelAnnotation\";\r\nexport { default as SvgPathAnnotation } from \"./SvgPathAnnotation\";\r\nexport { default as SvgPathAnnotationCustom } from \"./SvgPathAnnotationCustom\";\r\nexport { default as CustomAnnotation } from \"./CustomAnnotation\";\r\nexport { default as Label } from \"./Label\";\r\n\r\nconst halfWidth = 10;\r\nconst bottomWidth = 3;\r\nconst height = 20;\r\n\r\nexport function buyPath({ x, y }) {\r\n\treturn `M${x} ${y} `\r\n\t\t+ `L${x + halfWidth} ${y + halfWidth} `\r\n\t\t+ `L${x + bottomWidth} ${y + halfWidth} `\r\n\t\t+ `L${x + bottomWidth} ${y + height} `\r\n\t\t+ `L${x - bottomWidth} ${y + height} `\r\n\t\t+ `L${x - bottomWidth} ${y + halfWidth} `\r\n\t\t+ `L${x - halfWidth} ${y + halfWidth} `\r\n\t\t+ \"Z\";\r\n}\r\n\r\nexport function sellPath({ x, y }) {\r\n\treturn `M${x} ${y} `\r\n\t\t+ `L${x + halfWidth} ${y - halfWidth} `\r\n\t\t+ `L${x + bottomWidth} ${y - halfWidth} `\r\n\t\t+ `L${x + bottomWidth} ${y - height} `\r\n\t\t+ `L${x - bottomWidth} ${y - height} `\r\n\t\t+ `L${x - bottomWidth} ${y - halfWidth} `\r\n\t\t+ `L${x - halfWidth} ${y - halfWidth} `\r\n\t\t+ \"Z\";\r\n}\r\n","import { isNotDefined, isDefined } from \"libs/rrag/lib/utils\";\r\n\r\nexport function saveInteractiveNode(chartId) {\r\n\treturn node => {\r\n\t\tthis[`node_${chartId}`] = node;\r\n\t};\r\n}\r\n\r\nexport function handleSelection(type, chartId) {\r\n\treturn selectionArray => {\r\n\t\tconst key = `${type}_${chartId}`;\r\n\t\tconst interactive = this.state[key].map((each, idx) => {\r\n\t\t\treturn {\r\n\t\t\t\t...each,\r\n\t\t\t\tselected: selectionArray[idx]\r\n\t\t\t};\r\n\t\t});\r\n\t\tthis.setState({\r\n\t\t\t[key]: interactive\r\n\t\t});\r\n\t};\r\n}\r\n\r\nexport function saveInteractiveNodes(type, chartId) {\r\n\treturn node => {\r\n\t\tif (isNotDefined(this.interactiveNodes)) {\r\n\t\t\tthis.interactiveNodes = {};\r\n\t\t}\r\n\t\tconst key = `${type}_${chartId}`;\r\n\t\tif (isDefined(node) || isDefined(this.interactiveNodes[key])) {\r\n\t\t\tthis.interactiveNodes = {\r\n\t\t\t\t...this.interactiveNodes,\r\n\t\t\t\t[key]: { type, chartId, node },\r\n\t\t\t};\r\n\t\t}\r\n\t};\r\n}\r\n\r\nexport function getInteractiveNodes() {\r\n\treturn this.interactiveNodes;\r\n}","\r\n\r\nimport { merge, slidingWindow, identity } from \"../utils\";\r\n\r\nexport default function() {\r\n\r\n\tlet windowSize = 1,\r\n\t\taccumulator = identity,\r\n\t\tmergeAs = identity;\r\n\r\n\tfunction algorithm(data) {\r\n\r\n\t\tconst defaultAlgorithm = slidingWindow()\r\n\t\t\t.windowSize(windowSize)\r\n\t\t\t.accumulator(accumulator);\r\n\r\n\t\tconst calculator = merge()\r\n\t\t\t.algorithm(defaultAlgorithm)\r\n\t\t\t.merge(mergeAs);\r\n\r\n\t\tconst newData = calculator(data);\r\n\r\n\t\treturn newData;\r\n\t}\r\n\r\n\talgorithm.accumulator = function(x) {\r\n\t\tif (!arguments.length) {\r\n\t\t\treturn accumulator;\r\n\t\t}\r\n\t\taccumulator = x;\r\n\t\treturn algorithm;\r\n\t};\r\n\r\n\talgorithm.windowSize = function(x) {\r\n\t\tif (!arguments.length) {\r\n\t\t\treturn windowSize;\r\n\t\t}\r\n\t\twindowSize = x;\r\n\t\treturn algorithm;\r\n\t};\r\n\talgorithm.merge = function(x) {\r\n\t\tif (!arguments.length) {\r\n\t\t\treturn mergeAs;\r\n\t\t}\r\n\t\tmergeAs = x;\r\n\t\treturn algorithm;\r\n\t};\r\n\r\n\treturn algorithm;\r\n}","\r\nimport React from \"react\";\r\nimport PropTypes from \"prop-types\";\r\n\r\nimport {compose} from \"recompose\";\r\nimport {connect} from \"react-redux\";\r\nimport {withRouter} from \"react-router\";\r\n\r\nimport { scaleTime } from \"d3-scale\";\r\nimport {format} from \"d3-format\";\r\nimport {timeFormat} from \"d3-time-format\";\r\nimport moment from \"moment\";\r\nimport shortid from \"shortid\";\r\n\r\nimport {XAxis, YAxis} from \"libs/rrag/lib/axes\";\r\nimport { BarSeries, ElderRaySeries, OHLCSeries, SARSeries, VolumeProfileSeries } from \"libs/rrag/lib/series\";\r\nimport { \r\n LineChart, AreaChart, CandlestickChart, BarChart, GroupedBarChart, StackedBarChart, KagiChart,\r\n PointAndFigureChart, RenkoChart, ScatterAshiChart\r\n} from \"./partials/series\"\r\nimport InteractiveCoordinateDialog from './partials/interactives/CoordinateDialog'\r\nimport InteractiveTextDialog from './partials/interactives/TextDialog'\r\n\r\nimport { ChartCanvas, Chart, ZoomButtons } from \"libs/rrag\";\r\nimport { fitWidth } from \"libs/rrag/lib/helper\";\r\nimport { discontinuousTimeScaleProvider, discontinuousTimeScaleProviderBuilder} from \"libs/rrag/lib/scale\";\r\nimport { head, last, toObject } from \"libs/rrag/lib/utils\";\r\n\r\nimport {MouseCoordinateY, CrossHairCursor, MouseCoordinateX, PriceCoordinate} from \"libs/rrag/lib/coordinates\";\r\n\r\nimport { heikinAshi, change, elderRay, kagi, pointAndFigure, renko, elderImpulse } from \"libs/rrag/lib/indicator\";\r\nimport { Brush, ClickCallback } from \"libs/rrag/lib/interactive\";\r\nimport {InteractiveYCoordinate, DrawingObjectSelector, GannFan, StandardDeviationChannel, EquidistantChannel, FibonacciRetracement, TrendLine, InteractiveText} from \"libs/rrag/lib/interactive\";\r\nimport { getMorePropsForChart } from \"libs/rrag/lib/interactive/utils\";\r\nimport { isNotDefined, isDefined } from \"libs/rrag/lib/utils\";\r\nimport {\r\n MovingAverage, BollingerBands, MacdIndicator, RsiIndicator, AtrIndicator, FiIndicator, FiEMAIndicator, EdgeIndicatorContainer, StoIndicator\r\n} from \"./partials/indicators\";\r\n\r\n\r\nimport {\r\n getMAIndicatorEdge, getBBIndicator, getMacdIndicator, getRsiIndicator, getAtrIndicator,\r\n getStoIndicator,\r\n getSarCalc, getForceIndexCalc\r\n} from \"./utils/calculator\";\r\n\r\nimport {\r\n getTooltipContent, getIntervalNumber\r\n} from \"./utils\";\r\n\r\nimport {OHLCTooltip, HoverTooltip} from \"libs/rrag/lib/tooltip\";\r\n\r\nimport { CustomAnnotation, Annotate, AnnotateCustom, SvgPathAnnotation, SvgPathAnnotationCustom, buyPath, sellPath } from \"libs/rrag/lib/annotation\";\r\nimport { saveInteractiveNode, getInteractiveNodes, saveInteractiveNodes } from './utils/interactiveUtils'\r\nimport algo from \"libs/rrag/lib/algorithm\";\r\n\r\nconst bb = getBBIndicator()\r\nconst numberFormat = format(\".2f\");\r\n\r\nfunction round(number, precision = 0) {\r\n\tconst d = Math.pow(10, precision);\r\n\treturn Math.round(number * d) / d;\r\n}\r\n\r\nfunction getMaxUndefined(calculators) {\r\n\treturn calculators.map(each => each.undefinedLength()).reduce((a, b) => Math.max(a, b));\r\n}\r\n\r\nclass ChartContainer extends React.Component {\r\n constructor(props) {\r\n super(props);\r\n this.renderChartSeries = this.renderChartSeries.bind(this);\r\n this.returnContainerConfig = this.returnContainerConfig.bind(this);\r\n this.handleReset = this.handleReset.bind(this);\r\n // this.handleProps = this.handleProps.bind(this);\r\n this.handleDownloadMore = this.handleDownloadMore.bind(this);\r\n this.drawChartTheme = this.drawChartTheme.bind(this);\r\n this.saveCanvasNode = this.saveCanvasNode.bind(this);\r\n //Brush\r\n this.handleBrush = this.handleBrush.bind(this)\r\n\t\t// this.saveInteractiveNode = saveInteractiveNode.bind(this);\r\n\r\n this.handleSelection = this.handleSelection.bind(this);\r\n this.saveInteractiveNodes = saveInteractiveNodes.bind(this)\r\n\t\tthis.getInteractiveNodes = getInteractiveNodes.bind(this);\r\n //Coordinate - Y\r\n\t\tthis.onDragComplete = this.onDragComplete.bind(this);\r\n this.handleInteractiveCoordinateChoosePosition = this.handleInteractiveCoordinateChoosePosition.bind(this)\r\n this.handleDoubleClickAlert = this.handleDoubleClickAlert.bind(this)\r\n this.onDelete = this.onDelete.bind(this)\r\n this.handleInteractiveCoordinateDialogClose = this.handleInteractiveCoordinateDialogClose.bind(this)\r\n this.handleChangeAlert = this.handleChangeAlert.bind(this)\r\n this.handleDeleteAlert = this.handleDeleteAlert.bind(this)\r\n \r\n //Gan Fan\r\n this.onGannFanDrawComplete = this.onGannFanDrawComplete.bind(this)\r\n\r\n //Channel\r\n this.onStandardChannelDrawComplete = this.onStandardChannelDrawComplete.bind(this)\r\n this.onEquidistantChannelDrawComplete = this.onEquidistantChannelDrawComplete.bind(this)\r\n\r\n //Fibonacci\r\n this.onFibComplete = this.onFibComplete.bind(this)\r\n\r\n //TrendLine\r\n this.onDrawTrendLineComplete = this.onDrawTrendLineComplete.bind(this)\r\n\r\n //Interactive Text\r\n this.onDrawInteractiveText = this.onDrawInteractiveText.bind(this)\r\n this.handleInteractiveTextDialogClose = this.handleInteractiveTextDialogClose.bind(this)\r\n this.handleInteractiveTextChange = this.handleInteractiveTextChange.bind(this)\r\n this.handleInteractiveChoosePosition = this.handleInteractiveChoosePosition.bind(this)\r\n\r\n this.state = {\r\n\t\t\txExtents:[],\r\n\t\t\tbrushEnabled: true,\r\n\r\n enableInteractiveObject: true,\r\n //coordinate - y\r\n\t\t\tyCoordinateList: [],\r\n\t\t\tshowInteractiveCoordinateDialog: false,\r\n\t\t\talertToEdit: {},\r\n\r\n fans: [],\r\n\r\n standardDeviationChannels: [],\r\n equidistantChannels: [],\r\n\r\n fibonacciRetracements: [],\r\n\r\n trends: [],\r\n\r\n textList: [],\r\n interactiveText: '',\r\n showInteractiveTextDialog: false\r\n\t\t};\r\n }\r\n componentWillMount() {\r\n this.setState({\r\n suffix: 1\r\n });\r\n }\r\n \r\n\tcomponentDidMount() {\r\n\t\t// document.addEventListener(\"keyup\", this.onKeyPress);\r\n\t}\r\n\tcomponentWillUnmount() {\r\n\t\t// document.removeEventListener(\"keyup\", this.onKeyPress);\r\n\t}\r\n saveCanvasNode(node) {\r\n\t\tthis.canvasNode = node;\r\n\t}\r\n /** Interactive Tools */\r\n handleSelection(interactives, moreProps, e) {\r\n const { interactiveTool } = this.props.rragChartData\r\n const { enableInteractiveObject } = this.state\r\n if(interactiveTool === 'interactive-text'){\r\n if (enableInteractiveObject) {\r\n const independentCharts = moreProps.currentCharts\r\n if (independentCharts.length > 0) {\r\n const first = head(independentCharts);\r\n \r\n const morePropsForChart = getMorePropsForChart(moreProps, first)\r\n const {\r\n mouseXY: [, mouseY],\r\n rragChartData: { yScale },\r\n xAccessor,\r\n currentItem,\r\n } = morePropsForChart;\r\n \r\n const position = [xAccessor(currentItem), yScale.invert(mouseY)];\r\n const newText = {\r\n ...InteractiveText.defaultProps.defaultText,\r\n position,\r\n };\r\n this.handleInteractiveChoosePosition(newText, e);\r\n }\r\n } else {\r\n // const state = toObject(interactives, each => {\r\n // return [\r\n // `textList`,\r\n // each.objects,\r\n // ];\r\n // });\r\n // this.setState(state);\r\n }\r\n }else if(interactiveTool === 'interactive-y-coordinate'){\r\n if (enableInteractiveObject) {\r\n const independentCharts = moreProps.currentCharts;\r\n if (independentCharts.length > 0) {\r\n const first = head(independentCharts);\r\n \r\n const morePropsForChart = getMorePropsForChart(moreProps, first);\r\n const {\r\n mouseXY: [, mouseY],\r\n rragChartData: { yScale },\r\n } = morePropsForChart;\r\n \r\n const yValue = round(yScale.invert(mouseY), 2);\r\n const newAlert = {\r\n ...InteractiveYCoordinate.defaultProps.defaultPriceCoordinate,\r\n yValue,\r\n id: shortid.generate()\r\n };\r\n this.handleInteractiveCoordinateChoosePosition(newAlert, morePropsForChart, e);\r\n }\r\n } else {\r\n // const state = toObject(interactives, each => {\r\n // return [\r\n // `yCoordinateList`,\r\n // each.objects,\r\n // ];\r\n // });\r\n // this.setState(state);\r\n }\r\n \r\n }\r\n\r\n /**GannFan */\r\n // const state = toObject(interactives, each => {\r\n\t\t// \treturn [\r\n\t\t// \t\t\"fans\",\r\n\t\t// \t\teach.objects,\r\n\t\t// \t];\r\n\t\t// });\r\n\t\t// this.setState(state);\r\n\r\n /**Channel */\r\n // const state = toObject(interactives, each => {\r\n\t\t// \treturn [\r\n\t\t// \t\t`channels_${each.chartId}`,\r\n\t\t// \t\teach.objects,\r\n\t\t// \t];\r\n\t\t// });\r\n\t\t// this.setState(state);\r\n\r\n /** Finbonacci */\r\n // const state = toObject(interactives, each => {\r\n\t\t// \treturn [\r\n\t\t// \t\t`retracements_${each.chartId}`,\r\n\t\t// \t\teach.objects,\r\n\t\t// \t];\r\n\t\t// });\r\n\t\t// this.setState(state);\r\n \r\n /** Trend Line */\r\n // const state = toObject(interactives, each => {\r\n\t\t// \treturn [\r\n\t\t// \t\t`trends`,\r\n\t\t// \t\teach.objects,\r\n\t\t// \t];\r\n\t\t// });\r\n\t\t// this.setState(state);\r\n\t}\r\n\r\n /** Start Handle of Coordinate - y */\r\n handleInteractiveCoordinateDialogClose(){\r\n\t\tthis.setState(state => {\r\n\t\t\tconst { originalAlertList, alertToEdit } = state;\r\n\t\t\tconst key = `yCoordinateList`;\r\n\t\t\tconst list = originalAlertList || state[key];\r\n\t\t\treturn {\r\n\t\t\t\tshowInteractiveCoordinateDialog: false,\r\n\t\t\t\t[key]: list,\r\n\t\t\t};\r\n\t\t});\r\n }\r\n handleChangeAlert(alert){\r\n const yCoordinateList = this.state[`yCoordinateList`];\r\n\t\tconst newAlertList = yCoordinateList.map(d => {\r\n\t\t\treturn d.id === alert.id ? alert : d;\r\n\t\t});\r\n\r\n\t\tthis.setState({\r\n\t\t\t[`yCoordinateList`]: newAlertList,\r\n\t\t\tshowInteractiveCoordinateDialog: false,\r\n\t\t\tenableInteractiveObject: false,\r\n\t\t});\r\n }\r\n onDragComplete(yCoordinateList, moreProps, draggedAlert) {\r\n // this gets called on drag complete of drawing object\r\n\r\n\t\tconst key = `yCoordinateList`;\r\n\t\tconst alertDragged = draggedAlert != null;\r\n\r\n\t\tthis.setState({\r\n\t\t\tenableInteractiveObject: false,\r\n\t\t\t[key]: yCoordinateList,\r\n\t\t\tshowInteractiveCoordinateDialog: alertDragged,\r\n\t\t\talertToEdit: {\r\n\t\t\t\talert: draggedAlert\r\n\t\t\t},\r\n\t\t\toriginalAlertList: this.state[key],\r\n\t\t});\r\n\t}\r\n\thandleInteractiveCoordinateChoosePosition(alert, moreProps) {\r\n this.setState({\r\n\t\t\tyCoordinateList: [\r\n\t\t\t\t...this.state.yCoordinateList,\r\n\t\t\t\talert\r\n\t\t\t],\r\n\t\t\tshowInteractiveCoordinateDialog: true,\r\n alertToEdit: {\r\n alert\r\n },\r\n\t\t\tenableInteractiveObject: false,\r\n\t\t});\r\n\t}\r\n\thandleDoubleClickAlert(item) {\r\n this.setState({\r\n\t\t\tshowInteractiveCoordinateDialog: true,\r\n\t\t\talertToEdit: {\r\n\t\t\t\talert: item.object\r\n\t\t\t},\r\n\t\t});\r\n\t}\r\n onDelete(yCoordinate, moreProps) {\r\n this.setState(state => {\r\n\t\t\tconst key = `yCoordinateList`;\r\n\r\n\t\t\tconst list = state[key];\r\n\t\t\treturn {\r\n\t\t\t\t[key]: list.filter(d => d.id !== yCoordinate.id)\r\n\t\t\t};\r\n\t\t});\r\n\t}\r\n handleDeleteAlert() {\r\n const { alertToEdit } = this.state;\r\n\t\tconst key = `yCoordinateList`;\r\n\t\tconst yCoordinateList = this.state[key].filter(d => {\r\n\t\t\treturn d.id !== alertToEdit.alert.id;\r\n\t\t});\r\n\t\tthis.setState({\r\n\t\t\tshowInteractiveCoordinateDialog: false,\r\n\t\t\talertToEdit: {},\r\n\t\t\t[key]: yCoordinateList\r\n\t\t});\r\n\t}\r\n /** End Handle of Coordinate - y */\r\n\r\n /** Start Handle of Gan Fan */\r\n\tonGannFanDrawComplete(fans) {\r\n\t\t// this gets called on\r\n\t\t// 1. draw complete of drawing object\r\n\t\t// 2. drag complete of drawing object\r\n\t\tthis.setState({\r\n\t\t\tenableInteractiveObject: false,\r\n\t\t\tfans\r\n\t\t});\r\n\t}\r\n /** End Handle of Gan Fan */\r\n\r\n /** Start handle of Channel */\r\n onStandardChannelDrawComplete(channels) {\r\n\t\t// this gets called on\r\n\t\t// 1. draw complete of drawing object\r\n\t\t// 2. drag complete of drawing object\r\n\t\tthis.setState({\r\n\t\t\tenableInteractiveObject: false,\r\n\t\t\tstandardDeviationChannels: channels\r\n\t\t});\r\n\t}\r\n onEquidistantChannelDrawComplete(channels) {\r\n\t\t// this gets called on\r\n\t\t// 1. draw complete of drawing object\r\n\t\t// 2. drag complete of drawing object\r\n\t\tthis.setState({\r\n\t\t\tenableInteractiveObject: false,\r\n\t\t\tequidistantChannels: channels\r\n\t\t});\r\n\t}\r\n /** End handle of Channel */\r\n\r\n /** Start handle of Fibonacci */\r\n onFibComplete(retracements) {\r\n\t\tthis.setState({\r\n\t\t\tfibonacciRetracements: retracements,\r\n\t\t\tenableFib: false\r\n\t\t});\r\n\t}\r\n /** End handle of Fibonacci */\r\n \r\n /** Start handle of TrendLine */\r\n onDrawTrendLineComplete(trends){\r\n this.setState({\r\n\t\t\tenableInteractiveObject: false,\r\n\t\t\ttrends\r\n\t\t});\r\n }\r\n /** End Handle of TrendLine */\r\n\r\n /** Start handle of Interactive Text */\r\n onDrawInteractiveText(textList, moreProps) {\r\n\t\t// this gets called on\r\n\t\t// 1. draw complete of drawing object\r\n\t\t// 2. drag complete of drawing object\r\n\t\tthis.setState({\r\n\t\t\tenableInteractiveObject: false,\r\n\t\t\ttextList: textList,\r\n\t\t});\r\n\t}\r\n handleInteractiveTextDialogClose(){\r\n this.setState({\r\n\t\t\tshowInteractiveTextDialog: false,\r\n\t\t});\r\n\t\t// this.componentDidMount();\r\n }\r\n handleInteractiveTextChange(text){\r\n const textList = this.state.textList;\r\n\t\tconst allButLast = textList\r\n\t\t\t.slice(0, textList.length - 1);\r\n\r\n\t\tconst lastText = {\r\n\t\t\t...last(textList),\r\n\t\t\ttext: text,\r\n\t\t};\r\n\t\tthis.setState({\r\n\t\t\ttextList: [\r\n\t\t\t\t...allButLast,\r\n\t\t\t\tlastText\r\n\t\t\t],\r\n\t\t\tshowInteractiveTextDialog: false,\r\n\t\t\tenableInteractiveObject: false,\r\n\t\t});\r\n\t\t// this.componentDidMount();\r\n }\r\n handleInteractiveChoosePosition(text) {\r\n\t\t// this.componentWillUnmount();\r\n\r\n\t\tthis.setState({\r\n\t\t\ttextList: [\r\n\t\t\t\t...this.state.textList,\r\n\t\t\t\ttext\r\n\t\t\t],\r\n\t\t\tshowInteractiveTextDialog: true,\r\n\t\t\tinteractiveText: text.text,\r\n\t\t});\r\n\t}\r\n /** End Handle of Interactive Text */\r\n\r\n\tonKeyPress(e) {\r\n\t\tconst keyCode = e.which;\r\n\t\tswitch (keyCode) {\r\n\t\tcase 46: { // DEL\r\n\t\t\tconst fans = this.state.fans\r\n\t\t\t\t.filter(each => !each.selected);\r\n\r\n\t\t\tthis.canvasNode.cancelDrag();\r\n\t\t\tthis.setState({\r\n\t\t\t\tfans,\r\n\t\t\t});\r\n\r\n\t\t\tbreak;\r\n\t\t}\r\n\t\tcase 27: { // ESC\r\n\t\t\tthis.node.terminate();\r\n\t\t\tthis.canvasNode.cancelDrag();\r\n\t\t\tthis.setState({\r\n\t\t\t\tenableInteractiveObject: false\r\n\t\t\t});\r\n\t\t\tbreak;\r\n\t\t}\r\n\t\tcase 68: // D - Draw drawing object\r\n\t\tcase 69: { // E - Enable drawing object\r\n\t\t\tthis.setState({\r\n\t\t\t\tenableInteractiveObject: true\r\n\t\t\t});\r\n\t\t\tbreak;\r\n\t\t}\r\n\t\t}\r\n\t}\r\n\r\n handleReset() {\r\n this.setState({\r\n suffix: this.state.suffix + 1\r\n });\r\n }\r\n renderChartSeries(seriesProps){\r\n const { chartType, features } = this.props.rragChartData;\r\n let series =

{ chartType }

\r\n switch (chartType) {\r\n case 'line':\r\n series = \r\n break;\r\n case 'kagi':\r\n series = \r\n break;\r\n case 'point-figure':\r\n series = \r\n break;\r\n case 'area':\r\n series = \r\n break;\r\n case 'candlestick':\r\n series = \r\n break;\r\n case 'hollow-candle':\r\n series = \r\n break;\r\n case 'heikinAshi':\r\n series = \r\n break;\r\n case 'bar':\r\n series = \r\n break;\r\n case 'grouped-bar':\r\n series = \r\n break;\r\n case 'stacked-bar':\r\n series = \r\n break;\r\n case 'renko':\r\n series = \r\n break;\r\n case 'scatter-ashi':\r\n series = \r\n break;\r\n default:\r\n series = ;\r\n break;\r\n \r\n }\r\n return series;\r\n }\r\n returnContainerConfig(calculators){\r\n const {maIndicatorEdges, macdIndicator, rsiIndicator, atrIndicator, stoIndicator, elderImpulseIndicator, sarIndicator, forceIndexIndicator} = calculators;\r\n // const {maIndicatorEdges, macdIndicator, rsiIndicator, atrIndicator} = this.state;\r\n const { type, width, ratio } = this.props;\r\n const { chartType, scaleXType, indicatorOpts } = this.props.rragChartData;\r\n let initialData = this.props.data\r\n // let initialData = this.props.data;\r\n const emptyD = {\r\n date: new Date(),\r\n close: 0,\r\n open: 0,\r\n high: 0,\r\n low: 0,\r\n volume: 0,\r\n absoluteChange: \"\",\r\n dividend: \"\",\r\n percentChange: \"\",\r\n split: \"\"\r\n }\r\n if(initialData.length <= 1){\r\n initialData.push(emptyD);\r\n }\r\n \r\n const isMaVisible = indicatorOpts['ma'] && indicatorOpts['ma'].visible\r\n const isMacdVisible = indicatorOpts['macd'] && indicatorOpts['macd'].visible;\r\n const isElderImpulseVisible = indicatorOpts['elder_impulse'] && indicatorOpts['elder_impulse'].visible && isMaVisible && isMacdVisible;\r\n const isVolumeProfile = indicatorOpts['volume_profile'] && indicatorOpts['volume_profile'].visible;\r\n const isForceIndexVisible = indicatorOpts['force_index'] && indicatorOpts['force_index'].visible;\r\n let buySell = null\r\n if(isMaVisible){\r\n // const {ema20, sma20, wma20, tma20, ema50, smaVolume50} = this.state.maIndicators;\r\n // calculatedData = ema20(sma20(wma20(tma20(ema50(smaVolume50(initialData))))));\r\n maIndicatorEdges.map(edge => {\r\n initialData = edge['edgeCalc'](initialData); \r\n })\r\n if(maIndicatorEdges.length > 1){\r\n const prevKey = maIndicatorEdges[0].edgeName + maIndicatorEdges[0].edgeVal\r\n const nowKey = maIndicatorEdges[1].edgeName + maIndicatorEdges[1].edgeVal\r\n buySell = algo()\r\n .windowSize(2)\r\n .accumulator(([prev, now]) => {\r\n const { [prevKey]: prevShortTerm, [nowKey]: prevLongTerm } = prev;\r\n const { [prevKey]: nowShortTerm, [nowKey]: nowLongTerm } = now;\r\n if (prevShortTerm < prevLongTerm && nowShortTerm > nowLongTerm) return \"LONG\";\r\n if (prevShortTerm > prevLongTerm && nowShortTerm < nowLongTerm) return \"SHORT\";\r\n })\r\n .merge((d, c) => { d.longShort = c; });\r\n }\r\n }else if(indicatorOpts['edge'] && indicatorOpts['edge']['visible']){\r\n maIndicatorEdges.map(edge => {\r\n initialData = edge['edgeCalc'](initialData); \r\n })\r\n }\r\n if(indicatorOpts['bb'] && indicatorOpts['bb']['visible']){\r\n initialData = bb(initialData); \r\n }\r\n if(indicatorOpts['elder_ray'] && indicatorOpts['elder_ray']['visible']){\r\n const elder = elderRay();\r\n const changeCalculator = change();\r\n initialData = changeCalculator(elder(initialData)); \r\n }\r\n if(isMacdVisible){\r\n initialData = macdIndicator.calc(initialData); \r\n }\r\n if(indicatorOpts['atr'] && indicatorOpts['atr']['visible']){\r\n initialData = atrIndicator['calc'](initialData);\r\n }\r\n if(indicatorOpts['rsi'] && indicatorOpts['rsi']['visible']){\r\n initialData = rsiIndicator['calc'](initialData); \r\n }\r\n \r\n if(indicatorOpts['sto'] && indicatorOpts['sto']['visible']){\r\n initialData = stoIndicator['slow']['calc'](initialData); \r\n initialData = stoIndicator['fast']['calc'](initialData); \r\n initialData = stoIndicator['full']['calc'](initialData); \r\n }\r\n if(indicatorOpts['sar'] && indicatorOpts['sar']['visible']){\r\n initialData = sarIndicator['calc'](initialData);\r\n }\r\n if(isForceIndexVisible){\r\n initialData = forceIndexIndicator['fiCalc'](initialData)\r\n initialData = forceIndexIndicator['fiEMACalc'](initialData)\r\n }\r\n if(isVolumeProfile){\r\n const changeCalculator = change();\r\n initialData = changeCalculator(initialData); \r\n }\r\n if(isElderImpulseVisible && elderImpulseIndicator.calc){\r\n initialData = elderImpulseIndicator['calc'](initialData)\r\n }\r\n if(chartType === 'kagi'){\r\n const kagiCalculator = kagi();\r\n initialData = kagiCalculator(initialData);\r\n }else if(chartType === 'point-figure'){\r\n const pAndF = pointAndFigure();\r\n initialData = pAndF(initialData);\r\n if(initialData.length <= 1){\r\n initialData.push({\r\n \"date\": new Date(),\r\n \"close\": 0,\r\n \"open\": 0,\r\n })\r\n }\r\n initialData.map(item => {\r\n item.date = new Date(item.date)\r\n })\r\n }else if(chartType === 'heikinAshi'){\r\n const ha = heikinAshi();\r\n initialData = ha(initialData);\r\n }else if(chartType === 'renko'){\r\n const renkoCalculator = renko();\r\n initialData = renkoCalculator(initialData);\r\n }\r\n if(buySell){\r\n initialData = buySell(initialData)\r\n }\r\n\r\n if(initialData.length <= 1){\r\n // initialData = [\r\n // {\r\n // \"boxes\": [],\r\n // \"close\": 0,\r\n // \"open\": 0,\r\n // \"date\": \"2010-01-03T23:00:00.000Z\",\r\n // },\r\n // ]\r\n }\r\n let data = initialData;\r\n let xAccessor = d => d.date;\r\n let displayXAccessor = null;\r\n let xScale = scaleTime();\r\n // if(scaleXType === 'discontinous'){\r\n const xScaleProvider = discontinuousTimeScaleProvider\r\n .inputDateAccessor(d => d.date);\r\n ({\r\n data,\r\n xScale,\r\n xAccessor,\r\n displayXAccessor,\r\n } = xScaleProvider(initialData));\r\n // }\r\n this.state.xExtents = [\r\n xAccessor(last(data)),\r\n xAccessor(data[data.length - (data.length > 100 ? 100 : data.length)])\r\n ] \r\n let config = {\r\n ratio: 1,\r\n width: width,\r\n // height: 400,\r\n margin: { left: 50, right: 50, top: 10, bottom: 30 },\r\n // seriesName: 'MSFT',\r\n data: data,\r\n type: isVolumeProfile ? 'hybrid' : type,\r\n mouseMoveEvent: true,\r\n panEvent: true,\r\n zoomEvent: true,\r\n clamp: false,\r\n seriesName: `MSFT_${this.state.suffix}`,\r\n xScale: xScale,\r\n xAccessor: xAccessor,\r\n displayXAccessor: displayXAccessor\r\n }\r\n switch (chartType) {\r\n case 'line':\r\n // const ha = heikinAshi();\r\n // const calculatedData = ha(calculatedData);\r\n // const lineXScaleData = xScaleProvider(calculatedData);\r\n this.state.xExtents = [config.xAccessor(last(data)), config.xAccessor(data[Math.max(0, data.length - (data.length > 150 ? 150 : data.length))])]\r\n break;\r\n case 'grouped-bar':\r\n this.state.xExtents = [\r\n xAccessor(last(data)),\r\n xAccessor(data[data.length - (data.length > 20 ? 20 : data.length)])\r\n ];\r\n break;\r\n }\r\n return config\r\n }\r\n\thandleDownloadMore(maIndicatorEdges, start, end) {\r\n\t\tif (Math.ceil(start) === end) return;\r\n // console.log(maIndicatorEdges, start, end)\r\n return\r\n\t\t// console.log(\"rows to download\", rowsToDownload, start, end)\r\n\t\tconst { data: prevData, ema26, ema12, macdCalculator, smaVolume50 } = this.state;\r\n\t\tconst { data: inputData } = this.props;\r\n\r\n\r\n\t\tif (inputData.length === prevData.length) return;\r\n\r\n\t\tconst rowsToDownload = end - Math.ceil(start);\r\n\r\n\t\tconst maxWindowSize = getMaxUndefined([ema26,\r\n\t\t\tema12,\r\n\t\t\tmacdCalculator,\r\n\t\t\tsmaVolume50\r\n\t\t]);\r\n\r\n\t\t/* SERVER - START */\r\n\t\tconst dataToCalculate = inputData\r\n\t\t\t.slice(-rowsToDownload - maxWindowSize - prevData.length, - prevData.length);\r\n\r\n\t\tconst calculatedData = ema26(ema12(macdCalculator(smaVolume50(dataToCalculate))));\r\n\t\tconst indexCalculator = discontinuousTimeScaleProviderBuilder()\r\n\t\t\t.initialIndex(Math.ceil(start))\r\n\t\t\t.indexCalculator();\r\n\t\tconst { index } = indexCalculator(\r\n\t\t\tcalculatedData\r\n\t\t\t\t.slice(-rowsToDownload)\r\n\t\t\t\t.concat(prevData));\r\n\t\t/* SERVER - END */\r\n\r\n\t\tconst xScaleProvider = discontinuousTimeScaleProviderBuilder()\r\n\t\t\t.initialIndex(Math.ceil(start))\r\n\t\t\t.withIndex(index);\r\n\r\n\t\tconst { data: linearData, xScale, xAccessor, displayXAccessor } = xScaleProvider(calculatedData.slice(-rowsToDownload).concat(prevData));\r\n\r\n\t\t// console.log(linearData.length)\r\n\t\tsetTimeout(() => {\r\n\t\t\t// simulate a lag for ajax\r\n\t\t\tthis.setState({\r\n\t\t\t\tdata: linearData,\r\n\t\t\t\txScale,\r\n\t\t\t\txAccessor,\r\n\t\t\t\tdisplayXAccessor,\r\n\t\t\t});\r\n\t\t}, 300);\r\n\t}\r\n handleBrush(brushCoords, moreProps) {\r\n\t\tconst { start, end } = brushCoords;\r\n\t\tconst left = Math.min(start.xValue, end.xValue);\r\n\t\tconst right = Math.max(start.xValue, end.xValue);\r\n\r\n\t\tconst low = Math.min(start.yValue, end.yValue);\r\n\t\tconst high = Math.max(start.yValue, end.yValue);\r\n\r\n\t\t// uncomment the line below to make the brush to zoom\r\n\t\tthis.setState({\r\n\t\t\txExtents: [left, right],\r\n\t\t\tbrushEnabled: false,\r\n\t\t});\r\n\t}\r\n handleProps(){\r\n const { indicatorOpts } = this.props.rragChartData;\r\n let maIndicatorEdges = [];\r\n let macdIndicator = {}, rsiIndicator = {}, atrIndicator;\r\n\r\n const isMaVisible = indicatorOpts['ma'] && indicatorOpts['ma'].visible || false\r\n const isMacdVisible = indicatorOpts['macd'] && indicatorOpts['macd'].visible || false\r\n const isRsiVisible = indicatorOpts['rsi'] && indicatorOpts['rsi'].visible || false\r\n const isAtrVisible = indicatorOpts['atr'] && indicatorOpts['atr'].visible || false\r\n for(let indicatorId in indicatorOpts){\r\n let indicatorOpt = indicatorOpts[indicatorId]\r\n if(isMaVisible && indicatorId === 'ma'){\r\n indicatorOpt.edges.map(item => {\r\n const maEdge = getMAIndicatorEdge(item)\r\n maIndicatorEdges.push({\r\n ...item,\r\n edgeCalc: maEdge\r\n })\r\n })\r\n }else if(isMacdVisible && indicatorId === 'macd'){\r\n macdIndicator = indicatorOpt;\r\n macdIndicator.calc = getMacdIndicator(indicatorOpt?.macd?.fast, indicatorOpt?.macd?.slow, indicatorOpt?.signal?.val);\r\n // macdIndicator.elderImpulseCalc = \r\n }else if(isRsiVisible && indicatorId === 'rsi'){\r\n rsiIndicator = indicatorOpt;\r\n rsiIndicator.calc = getRsiIndicator(indicatorOpt?.val)\r\n }else if(isAtrVisible && indicatorId === 'atr'){\r\n atrIndicator = indicatorOpt;\r\n atrIndicator.calc = getAtrIndicator(indicatorOpt?.val, indicatorOpt?.stroke?.line)\r\n }\r\n }\r\n this.setState({\r\n maIndicatorEdges: maIndicatorEdges,\r\n macdIndicator: macdIndicator,\r\n rsiIndicator: rsiIndicator,\r\n atrIndicator: atrIndicator\r\n })\r\n }\r\n drawChartTheme(){\r\n const { themeBg } = this.props.rragChartData\r\n const themeProps = {\r\n XAxis:{ tickStrokeOpacity: 0.5},\r\n YAxis: { tickStrokeOpacity: 0.5, tickStroke:\"black\", stroke: \"black\" }, \r\n\r\n toolTipApperance: {},\r\n\r\n CandlestickSeries: {},\r\n ElderRaySeries: {}, \r\n MacdSeries: {},\r\n RsiSeries: {},\r\n chart1: {\r\n EdgeIndicator: {}\r\n },\r\n chart3: {},\r\n chart4: {},\r\n chart5: {},\r\n chart6: {},\r\n }\r\n if(themeBg?.name !== undefined){\r\n switch(themeBg.name){\r\n case 'white':\r\n break;\r\n // case 'dark':\r\n default:\r\n const chart1 = {\r\n EdgeIndicator: {lineStroke: '#fff'}\r\n }\r\n themeProps.XAxis = { tickStrokeOpacity: 0.5, tickLabelFill:'#fff', stroke: \"#fff\" };\r\n themeProps.YAxis = { tickStrokeOpacity: 0.5, tickLabelFill:'#fff', stroke: \"#fff\" };\r\n themeProps.CandlestickSeries = { wickStroke: \"white\"}\r\n themeProps.ElderRaySeries = { straightLineStroke: '#fff' }\r\n themeProps.MacdSeries = { zeroLineStroke: '#fff' };\r\n themeProps.RsiSeries = { \r\n stroke: {\r\n top: \"#fff\",\r\n middle: \"#fff\",\r\n bottom: \"#fff\"\r\n }\r\n };\r\n themeProps.toolTipApperance = { labelFill: '#7698ce', textFill: '#a5a2a2' }\r\n themeProps.chart1 = chart1\r\n break\r\n }\r\n }\r\n return themeProps\r\n }\r\n render() {\r\n const { chartType, volumeType, indicatorOpts, annotation, themeBg, grid, features, interactiveTool } = this.props.rragChartData;\r\n const { priceCoordinate } = features\r\n const { width, gridProps, data } = this.props;\r\n const isMaVisible = indicatorOpts['ma'] && indicatorOpts['ma'].visible || false\r\n const isEdgeVisible = indicatorOpts['edge'] && indicatorOpts['edge'].visible || false\r\n const isBbVisible = indicatorOpts['bb'] && indicatorOpts['bb'].visible || false\r\n const isElderVisible = indicatorOpts['elder_ray'] && indicatorOpts['elder_ray'].visible || false; \r\n const isMacdVisible = indicatorOpts['macd'] && indicatorOpts['macd'].visible || false;\r\n const isRsiVisible = indicatorOpts['rsi'] && indicatorOpts['rsi'].visible || false;\r\n const isAtrVisible = indicatorOpts['atr'] && indicatorOpts['atr'].visible || false;\r\n const isStoVisible = indicatorOpts['sto'] && indicatorOpts['sto'].visible || false;\r\n const isElderImpulseVisible = isMaVisible && isMacdVisible && indicatorOpts['elder_impulse'] && indicatorOpts['elder_impulse'].visible || false;\r\n const isSarVisible = indicatorOpts['sar'] && indicatorOpts['sar'].visible || false;\r\n const isVolumeProfile = indicatorOpts['volume_profile'] && indicatorOpts['volume_profile'].visible || false;\r\n const isForceIndexVisible = indicatorOpts['force_index'] && indicatorOpts['force_index'].visible || false\r\n let maIndicatorEdges = [];\r\n let stoIndicator = [];\r\n let macdIndicator = {}, rsiIndicator = {}, atrIndicator, elderImpulseIndicator, sarIndicator, forceIndexIndicator;\r\n for(let indicatorId in indicatorOpts){\r\n let indicatorOpt = JSON.parse(JSON.stringify(indicatorOpts[indicatorId]))\r\n if(isMaVisible && indicatorId === 'ma'){\r\n indicatorOpt.edges.map(item => {\r\n const maEdge = getMAIndicatorEdge(item)\r\n maIndicatorEdges.push({\r\n ...item,\r\n edgeCalc: maEdge\r\n })\r\n })\r\n }else if(isMacdVisible && indicatorId === 'macd'){\r\n macdIndicator = indicatorOpt;\r\n macdIndicator.calc = getMacdIndicator(indicatorOpt?.macd?.fast, indicatorOpt?.macd?.slow, indicatorOpt?.signal?.val)\r\n }else if(isRsiVisible && indicatorId === 'rsi'){\r\n rsiIndicator = indicatorOpt;\r\n rsiIndicator.calc = getRsiIndicator(indicatorOpt?.val)\r\n }else if(isAtrVisible && indicatorId === 'atr'){\r\n atrIndicator = indicatorOpt;\r\n atrIndicator.calc = getAtrIndicator(indicatorOpt?.val, indicatorOpt?.stroke?.line)\r\n }else if(isStoVisible && indicatorId === 'sto'){\r\n stoIndicator = indicatorOpt;\r\n if(stoIndicator.slow === undefined) stoIndicator.slow = {}\r\n if(stoIndicator.fast === undefined) stoIndicator.fast = {}\r\n if(stoIndicator.full === undefined) stoIndicator.full = {}\r\n const calc = getStoIndicator(indicatorOpt);\r\n stoIndicator.slow.calc = calc['slowSTO']\r\n stoIndicator.fast.calc = calc['fastSTO']\r\n stoIndicator.full.calc = calc['fullSTO']\r\n }else if(isElderImpulseVisible && indicatorId === 'elder_impulse'){\r\n elderImpulseIndicator = indicatorOpt;\r\n if(maIndicatorEdges?.length > 0){\r\n elderImpulseIndicator.calc = elderImpulse()\r\n .macdSource(macdIndicator['calc'].accessor());\r\n maIndicatorEdges.map(item => {\r\n elderImpulseIndicator.calc = elderImpulseIndicator['calc'].emaSource(item.edgeCalc.accessor())\r\n })\r\n }\r\n }else if(isSarVisible && indicatorId === 'sar'){\r\n sarIndicator = indicatorOpt;\r\n sarIndicator.calc = getSarCalc(sarIndicator)\r\n }else if(isForceIndexVisible && indicatorId === 'force_index'){\r\n forceIndexIndicator = indicatorOpt;\r\n const {fi, fiEMA} = getForceIndexCalc(indicatorOpt?.fiEMA?.windowSize)\r\n forceIndexIndicator.fiCalc = fi;\r\n forceIndexIndicator.fiEMACalc = fiEMA;\r\n }\r\n }\r\n // this.handleProps();\r\n // const {maIndicatorEdges, macdIndicator, rsiIndicator, atrIndicator} = this.state;\r\n const calculators = {\r\n maIndicatorEdges, macdIndicator, rsiIndicator, atrIndicator, stoIndicator, elderImpulseIndicator, sarIndicator, forceIndexIndicator\r\n }\r\n const config = this.returnContainerConfig(calculators)\r\n \r\n let chartHeight = 420, maYExtents= [d => d.open], consumedH = 330, elder, elderH, macdH, rsiH, atrH,\r\n stoSlowH, stoFastH, stoFullH, fiH, fiEMAH;\r\n \r\n const tooltipYs = [];\r\n const tooltipProps = {\r\n fontSize: 13,\r\n fill: 'white',\r\n opacity: 1,\r\n stroke: 'grey'\r\n }\r\n let chart1YScale;\r\n if(chartType === 'stacked-bar'){\r\n maYExtents = [0, d => [d.high + d.low + d.close + d.volume + d.open]]\r\n }else if(['candlestick', 'hollow-candle', 'heikinAshi'].indexOf(chartType) > -1){\r\n maYExtents = [d => [d.high, d.low]]\r\n }\r\n if(isVolumeProfile){\r\n maYExtents = maYExtents.concat([d => [d.high, d.low]])\r\n }\r\n if(isMaVisible){\r\n // const {ema20, sma20, wma20, tma20, ema50} = this.state.maIndicators\r\n // maYExtents = [d => [d.high, d.low], sma20.accessor(), wma20.accessor(), tma20.accessor(), ema20.accessor(), ema50.accessor()]\r\n // maYExtents = [d => [d.high, d.low]];\r\n maIndicatorEdges.map(edge => {\r\n maYExtents.push(edge['edgeCalc'].accessor())\r\n tooltipYs.push({\r\n label: `${edge['edgeCalc'].type()}(${edge['edgeCalc'].options()\r\n .windowSize})`,\r\n value: d => numberFormat(edge['edgeCalc'].accessor()(d)),\r\n stroke: edge['edgeCalc'].stroke()\r\n })\r\n })\r\n }\r\n if(isElderVisible){\r\n elder = elderRay();\r\n elderH = consumedH + 75\r\n consumedH += 75\r\n chartHeight += 75\r\n }\r\n if(isMacdVisible){\r\n macdH = consumedH + 75\r\n consumedH += 85\r\n chartHeight += 85\r\n }\r\n if(isRsiVisible){\r\n rsiH = consumedH + 75\r\n consumedH += 75\r\n chartHeight += 75\r\n }\r\n if(isAtrVisible){\r\n atrH = consumedH + 75\r\n consumedH += 85\r\n chartHeight += 85\r\n }\r\n if(isStoVisible){\r\n stoSlowH = consumedH + 75\r\n consumedH += 85\r\n chartHeight += 85\r\n\r\n stoFastH = consumedH + 75\r\n consumedH += 85\r\n chartHeight += 85\r\n\r\n stoFullH = consumedH + 75\r\n consumedH += 85\r\n chartHeight += 85\r\n }\r\n if(isForceIndexVisible){\r\n fiH = consumedH + 75\r\n consumedH += 85\r\n chartHeight += 85\r\n\r\n fiEMAH = consumedH + 75\r\n consumedH += 85\r\n chartHeight += 85\r\n }\r\n const volumeBarH = consumedH + 100\r\n\r\n const annotationProps = {\r\n\t\t\tfontFamily: \"Glyphicons Halflings\",\r\n\t\t\tfill: \"#060F8F\",\r\n\t\t\topacity: 0.8,\r\n\t\t\ttext: \"H\",\r\n\t\t\ty: ({ yScale }) => yScale.range()[0],\r\n\t\t\tonClick: console.log.bind(console),\r\n\t\t\t// tooltip: d => timeFormat(\"%B\")(d.date),\r\n\t\t\ttooltip: d => d.close,\r\n // tooltip: d => {\r\n // // timeFormat(\"%B\")(d.date)\r\n // return d.description\r\n // },\r\n\t\t\tonMouseOver: () => {\r\n },\r\n\t\t};\r\n const annotationWhen = (d) => {\r\n \r\n const index = annotation?.items.findIndex(item => {\r\n const dDate = new Date(d.date);\r\n const aDate = new Date(item.date);\r\n // console.log(item.date, dDate.toDateString(), aDate.toDateString)\r\n return dDate.toDateString() === aDate.toDateString()\r\n })\r\n // console.log(index, 'here?')\r\n return index > -1 ? true : false\r\n }\r\n\r\n\r\n // const margin = { left: 70, right: 70, top: 20, bottom: 30 };\r\n\r\n const { \r\n XAxis: xAixProps, YAxis: yAixProps,\r\n CandlestickSeries: CandlestickSeriesProps, ElderRaySeries: ElderRaySeriesProps, MacdSeries: MacdSeriesProps, RsiSeries: RsiSeriesProps,\r\n toolTipApperance,\r\n chart1: chart1Props, chart2, chart3, chart4, chart5, chart6} = this.drawChartTheme();\r\n\r\n const chart1SeriesProps = ['candlestick', 'hollow-candle','heikinAshi'].indexOf(chartType) > -1 ? CandlestickSeriesProps : {};\r\n\r\n \r\n\t\tconst height = 300;\r\n\t\tconst gridHeight = height;\r\n\t\tconst gridWidth = width - config.margin.left - config.margin.right;\r\n\r\n\t\tconst showGrid = grid?.show || false;\r\n\t\tconst yGrid = showGrid ? { innerTickSize: -1 * gridWidth } : {};\r\n\t\tconst xGrid = showGrid ? { innerTickSize: -1 * gridHeight } : {};\r\n xAixProps.tickStroke = grid?.tickStroke\r\n yAixProps.tickStroke = grid?.tickStroke\r\n \r\n const BRUSH_TYPE = \"2D\";\r\n const { \r\n xExtents, enableInteractiveObject, fans, \r\n showInteractiveTextDialog, interactiveText,\r\n showInteractiveCoordinateDialog, alertToEdit \r\n } = this.state\r\n\r\n const defaultAnnotationProps = {\r\n\t\t\tonClick: console.log.bind(console),\r\n\t\t};\r\n const longAnnotationProps = {\r\n\t\t\t...defaultAnnotationProps,\r\n\t\t\ty: ({ yScale, datum }) => yScale(datum.low),\r\n\t\t\tfill: \"#006517\",\r\n\t\t\tpath: buyPath,\r\n\t\t\ttooltip: \"Go long\",\r\n\t\t};\r\n\r\n\t\tconst shortAnnotationProps = {\r\n\t\t\t...defaultAnnotationProps,\r\n\t\t\ty: ({ yScale, datum }) => yScale(datum.high),\r\n\t\t\tfill: \"#FF0000\",\r\n\t\t\tpath: sellPath,\r\n\t\t\ttooltip: \"Go short\",\r\n\t\t};\r\n\r\n return (\r\n <>\r\n {\r\n this.handleDownloadMore(maIndicatorEdges, start, end)\r\n }}\r\n ref={this.saveCanvasNode}\r\n >\r\n [d.high, d.low]}\r\n yScale={chart1YScale}\r\n height={300}>\r\n \r\n \r\n \r\n {this.renderChartSeries(chart1SeriesProps)}\r\n \r\n \r\n { \r\n isMaVisible && \r\n }\r\n {\r\n isBbVisible && \r\n }\r\n {\r\n isEdgeVisible && \r\n }\r\n {\r\n isElderImpulseVisible && elderImpulseIndicator['calc'] && (\r\n elderImpulseIndicator['calc'].stroke()[d.elderImpulse]} />\r\n )\r\n }\r\n {\r\n isSarVisible && d.sar}/>\r\n }\r\n {\r\n isVolumeProfile && \r\n }\r\n {/* */}\r\n \r\n\r\n \r\n d.longShort === \"LONG\"}\r\n usingProps={longAnnotationProps} />\r\n d.longShort === \"SHORT\"}\r\n usingProps={shortAnnotationProps} />\r\n\r\n maYExtents}\r\n tooltipContent={getTooltipContent(tooltipYs)}\r\n {...tooltipProps}\r\n />\r\n {/* */}\r\n { console.log(\"onMouseMove\", moreProps, e); } }\r\n // onMouseDown={ (moreProps, e) => { console.log(\"onMouseDown\", moreProps, e); } }\r\n onClick={ (moreProps, e) => { \r\n // console.log(\"onClick\", moreProps, e);\r\n // console.log(this.state.yCoordinateList, 'this.state.yCoordinatelist')\r\n // if(interactiveTool !== 'interactive-y-coordinate'){\r\n this.setState({\r\n enableInteractiveObject: true\r\n });\r\n // } \r\n }}\r\n // onDoubleClick={ (moreProps, e) => { console.log(\"onDoubleClick\", moreProps, e); } }\r\n // onContextMenu={ (moreProps, e) => { console.log(\"onContextMenu\", moreProps, e); } }\r\n // onPan={ (moreProps, e) => { console.log(\"onPan\", moreProps, e); } }\r\n // onPanEnd={ (moreProps, e) => { console.log(\"onPanEnd\", moreProps, e); } }\r\n />\r\n \r\n\r\n console.log(\"START\")}\r\n onComplete={this.onGannFanDrawComplete}\r\n fans={fans}\r\n />\r\n\r\n console.log(\"START\")}\r\n onComplete={this.onStandardChannelDrawComplete}\r\n channels={this.state.standardDeviationChannels}\r\n />\r\n\r\n console.log(\"START\")}\r\n onComplete={this.onEquidistantChannelDrawComplete}\r\n channels={this.state.equidistantChannels}\r\n />\r\n\r\n \r\n\r\n [d.high, d.low]}\r\n onSelect={(e) => {\r\n console.log(e, 'trendline selected')\r\n }}\r\n onStart={() => console.log(\"onStart trendline\")}\r\n onComplete={this.onDrawTrendLineComplete}\r\n trends={this.state.trends}\r\n />\r\n\r\n \r\n \r\n [0, 150]} height={150} yExtents={d => d.volume}>\r\n \r\n \r\n d.volume} fill={(d) => d.close > d.open ? \"#6BA583\" : \"red\"} />\r\n \r\n d.open} height={50}\r\n origin={(w, h) => [0, 320]}>\r\n \r\n \r\n \r\n {volumeType === 'line' ? : }\r\n \r\n {\r\n isElderVisible && \r\n [0, elderH]}\r\n padding={{ top: 10, bottom: 10 }}\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 isMacdVisible && [0, macdH]} padding={{ top: 10, bottom: 10 }}\r\n >\r\n \r\n \r\n \r\n \r\n }\r\n {\r\n isRsiVisible && [0, rsiH]}\r\n >\r\n \r\n \r\n \r\n \r\n \r\n }\r\n {\r\n isAtrVisible && \r\n [0, atrH]} padding={{ top: 10, bottom: 10 }}\r\n >\r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n }\r\n {\r\n isStoVisible &&\r\n [0, stoSlowH]} padding={{ top: 10, bottom: 10 }}\r\n >\r\n \r\n \r\n\r\n \r\n d.slowSTO}\r\n stoAppearance={{}}\r\n label={'Slow STO'}\r\n />\r\n \r\n }\r\n {\r\n isStoVisible && \r\n [0, stoFastH]} padding={{ top: 10, bottom: 10 }}\r\n >\r\n \r\n \r\n\r\n \r\n d.fastSTO}\r\n stoAppearance={{}}\r\n label={'Fast STO'}\r\n />\r\n \r\n }\r\n {\r\n isStoVisible && \r\n [0, stoFullH]} padding={{ top: 10, bottom: 10 }}\r\n >\r\n \r\n \r\n\r\n \r\n d.fullSTO}\r\n stoAppearance={{}}\r\n label={'Full STO'}\r\n />\r\n \r\n }\r\n {\r\n isForceIndexVisible && [0, fiH]}\r\n padding={{ top: 10, right: 0, bottom: 10, left: 0 }}\r\n >\r\n \r\n \r\n \r\n \r\n \r\n }\r\n {\r\n isForceIndexVisible && [0, fiEMAH]}\r\n padding={{ top: 10, right: 0, bottom: 10, left: 0 }}\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\nChartContainer.propTypes = {\r\n data: PropTypes.array.isRequired,\r\n width: PropTypes.number.isRequired,\r\n ratio: PropTypes.number.isRequired,\r\n type: PropTypes.oneOf([\"svg\", \"hybrid\"]).isRequired,\r\n};\r\n\r\nChartContainer.defaultProps = {\r\n type: \"svg\",\r\n chartType: 'line'\r\n};\r\nChartContainer = fitWidth(ChartContainer);\r\n\r\nconst mapStateToProps = (state) => ({\r\n rragChartData: state.rragChartData\r\n});\r\n\r\nconst mapDispatchToProps = (dispatch) => ({});\r\n\r\nexport default compose(\r\n withRouter,\r\n connect(mapStateToProps, mapDispatchToProps),\r\n)(ChartContainer);","\r\n\r\nimport { rebind } from \"../utils\";\r\n\r\nimport { pointAndFigure } from \"../calculator\";\r\nimport baseIndicator from \"./baseIndicator\";\r\n\r\nconst ALGORITHM_TYPE = \"PointAndFigure\";\r\n\r\nexport default function() {\r\n\r\n\tconst base = baseIndicator()\r\n\t\t.type(ALGORITHM_TYPE);\r\n\r\n\tconst underlyingAlgorithm = pointAndFigure();\r\n\r\n\tconst indicator = underlyingAlgorithm;\r\n\r\n\trebind(indicator, base, \"id\", \"stroke\", \"fill\", \"echo\", \"type\");\r\n\trebind(indicator, underlyingAlgorithm, \"dateAccessor\", \"dateMutator\");\r\n\trebind(indicator, underlyingAlgorithm, \"options\");\r\n\t// rebind(indicator, mergedAlgorithm, \"merge\"/*, \"skipUndefined\"*/);\r\n\r\n\treturn indicator;\r\n}","import React from \"react\";\r\nimport { useSelector } from 'react-redux'\r\n\r\nimport Highcharts from 'highcharts/highstock'\r\nimport highchartsMore from 'highcharts/highcharts-more'; \r\n\r\nimport ReactHighcharts from 'highcharts-react-official'\r\nimport moment from 'moment'\r\n\r\nhighchartsMore(Highcharts);\r\n\r\nfunction ChartContainer(props) {\r\n // const highChartData = useSelector(state => state.highChartData) || {}\r\n // const {\r\n // scatterEnabled, scatterRadius, step, shadow, spline\r\n // } = highChartData\r\n // let { chartType } = highChartData\r\n // if(chartType === 'scatter-line'){\r\n // chartType = 'line'\r\n // }\r\n // if(chartType === 'line' && spline){\r\n // chartType = 'spline'\r\n // }else if(chartType === 'area' && spline){\r\n // chartType = 'areaspline'\r\n // }\r\n // let data = [], volume = []\r\n // for (let d of initialData) {\r\n // const t = new Date(d.date)\r\n // data.push([\r\n // d.date,\r\n // d.open,\r\n // d.high,\r\n // d.low,\r\n // d.close,\r\n // ])\r\n // volume.push([\r\n // d.date, d.volume\r\n // ])\r\n // }\r\n // const options = { style: 'currency', currency: 'USD' };\r\n // const numberFormat = new Intl.NumberFormat('en-US', options);\r\n const configStock = {\r\n chart: {\r\n type: 'area',\r\n zoomType: 'xy'\r\n },\r\n title: {\r\n text: 'ETH-BTC Market Depth'\r\n },\r\n xAxis: {\r\n minPadding: 0,\r\n maxPadding: 0,\r\n plotLines: [{\r\n color: '#888',\r\n value: 0.1523,\r\n width: 1,\r\n label: {\r\n text: 'Actual price',\r\n rotation: 90\r\n }\r\n }],\r\n title: {\r\n text: 'Price'\r\n }\r\n },\r\n yAxis: [{\r\n lineWidth: 1,\r\n gridLineWidth: 1,\r\n title: null,\r\n tickWidth: 1,\r\n tickLength: 5,\r\n tickPosition: 'inside',\r\n labels: {\r\n align: 'left',\r\n x: 8\r\n }\r\n }, {\r\n opposite: true,\r\n linkedTo: 0,\r\n lineWidth: 1,\r\n gridLineWidth: 0,\r\n title: null,\r\n tickWidth: 1,\r\n tickLength: 5,\r\n tickPosition: 'inside',\r\n labels: {\r\n align: 'right',\r\n x: -8\r\n }\r\n }],\r\n legend: {\r\n enabled: false\r\n },\r\n plotOptions: {\r\n area: {\r\n fillOpacity: 0.2,\r\n lineWidth: 1,\r\n step: 'center'\r\n }\r\n },\r\n tooltip: {\r\n headerFormat: 'Price: {point.key}
',\r\n valueDecimals: 2\r\n },\r\n series: [{\r\n name: 'Bids',\r\n data: [\r\n [\r\n 0.1524,\r\n 0.948665\r\n ],\r\n [\r\n 0.1539,\r\n 35.510715\r\n ],\r\n [\r\n 0.154,\r\n 39.883437\r\n ],\r\n [\r\n 0.1541,\r\n 40.499661\r\n ],\r\n [\r\n 0.1545,\r\n 43.262994000000006\r\n ],\r\n [\r\n 0.1547,\r\n 60.14799400000001\r\n ],\r\n [\r\n 0.1553,\r\n 60.30799400000001\r\n ],\r\n [\r\n 0.1558,\r\n 60.55018100000001\r\n ],\r\n [\r\n 0.1564,\r\n 68.381696\r\n ],\r\n [\r\n 0.1567,\r\n 69.46518400000001\r\n ],\r\n [\r\n 0.1569,\r\n 69.621464\r\n ],\r\n [\r\n 0.157,\r\n 70.398015\r\n ],\r\n [\r\n 0.1574,\r\n 70.400197\r\n ],\r\n [\r\n 0.1575,\r\n 73.199217\r\n ],\r\n [\r\n 0.158,\r\n 77.700017\r\n ],\r\n [\r\n 0.1583,\r\n 79.449017\r\n ],\r\n [\r\n 0.1588,\r\n 79.584064\r\n ],\r\n [\r\n 0.159,\r\n 80.584064\r\n ],\r\n [\r\n 0.16,\r\n 81.58156\r\n ],\r\n [\r\n 0.1608,\r\n 83.38156\r\n ]\r\n ],\r\n color: '#03a7a8'\r\n }, {\r\n name: 'Asks',\r\n data: [\r\n [\r\n 0.1435,\r\n 242.521842\r\n ],\r\n [\r\n 0.1436,\r\n 206.49862099999999\r\n ],\r\n [\r\n 0.1437,\r\n 205.823735\r\n ],\r\n [\r\n 0.1438,\r\n 197.33275\r\n ],\r\n [\r\n 0.1439,\r\n 153.677454\r\n ],\r\n [\r\n 0.144,\r\n 146.007722\r\n ],\r\n [\r\n 0.1442,\r\n 82.55212900000001\r\n ],\r\n [\r\n 0.1443,\r\n 59.152814000000006\r\n ],\r\n [\r\n 0.1444,\r\n 57.942260000000005\r\n ],\r\n [\r\n 0.1445,\r\n 57.483850000000004\r\n ],\r\n [\r\n 0.1446,\r\n 52.39210800000001\r\n ],\r\n [\r\n 0.1447,\r\n 51.867208000000005\r\n ],\r\n [\r\n 0.1448,\r\n 44.104697\r\n ],\r\n [\r\n 0.1449,\r\n 40.131217\r\n ],\r\n [\r\n 0.145,\r\n 31.878217\r\n ],\r\n [\r\n 0.1451,\r\n 22.794916999999998\r\n ],\r\n [\r\n 0.1453,\r\n 12.345828999999998\r\n ],\r\n [\r\n 0.1454,\r\n 10.035642\r\n ],\r\n [\r\n 0.148,\r\n 9.326642\r\n ],\r\n [\r\n 0.1522,\r\n 3.76317\r\n ]\r\n ],\r\n color: '#fc5857'\r\n }]\r\n };\r\n return (\r\n
\r\n \r\n
\r\n )\r\n}\r\n\r\nexport default ChartContainer","export const theme = {\r\n \"colors\": [\r\n \"#7cb5ec\",\r\n \"#434348\",\r\n \"#90ed7d\",\r\n \"#f7a35c\",\r\n \"#8085e9\",\r\n \"#f15c80\",\r\n \"#e4d354\",\r\n \"#2b908f\",\r\n \"#f45b5b\",\r\n \"#91e8e1\"\r\n ],\r\n \"symbols\": [\r\n \"circle\",\r\n \"diamond\",\r\n \"square\",\r\n \"triangle\",\r\n \"triangle-down\"\r\n ],\r\n \"lang\": {\r\n \"viewFullscreen\": \"View in full screen\",\r\n \"exitFullscreen\": \"Exit from full screen\",\r\n \"printChart\": \"Print chart\",\r\n \"downloadPNG\": \"Download PNG image\",\r\n \"downloadJPEG\": \"Download JPEG image\",\r\n \"downloadPDF\": \"Download PDF document\",\r\n \"downloadSVG\": \"Download SVG vector image\",\r\n \"contextButtonTitle\": \"Chart context menu\",\r\n \"loading\": \"Loading...\",\r\n \"months\": [\r\n \"January\",\r\n \"February\",\r\n \"March\",\r\n \"April\",\r\n \"May\",\r\n \"June\",\r\n \"July\",\r\n \"August\",\r\n \"September\",\r\n \"October\",\r\n \"November\",\r\n \"December\"\r\n ],\r\n \"shortMonths\": [\r\n \"Jan\",\r\n \"Feb\",\r\n \"Mar\",\r\n \"Apr\",\r\n \"May\",\r\n \"Jun\",\r\n \"Jul\",\r\n \"Aug\",\r\n \"Sep\",\r\n \"Oct\",\r\n \"Nov\",\r\n \"Dec\"\r\n ],\r\n \"weekdays\": [\r\n \"Sunday\",\r\n \"Monday\",\r\n \"Tuesday\",\r\n \"Wednesday\",\r\n \"Thursday\",\r\n \"Friday\",\r\n \"Saturday\"\r\n ],\r\n \"decimalPoint\": \".\",\r\n \"numericSymbols\": [\r\n \"k\",\r\n \"M\",\r\n \"G\",\r\n \"T\",\r\n \"P\",\r\n \"E\"\r\n ],\r\n \"resetZoom\": \"Reset zoom\",\r\n \"resetZoomTitle\": \"Reset zoom level 1:1\",\r\n \"thousandsSep\": \" \",\r\n \"rangeSelectorZoom\": \"Zoom\",\r\n \"rangeSelectorFrom\": \"\",\r\n \"rangeSelectorTo\": \"→\",\r\n \"navigation\": {\r\n \"popup\": {\r\n \"simpleShapes\": \"Simple shapes\",\r\n \"lines\": \"Lines\",\r\n \"circle\": \"Circle\",\r\n \"ellipse\": \"Ellipse\",\r\n \"rectangle\": \"Rectangle\",\r\n \"label\": \"Label\",\r\n \"shapeOptions\": \"Shape options\",\r\n \"typeOptions\": \"Details\",\r\n \"fill\": \"Fill\",\r\n \"format\": \"Text\",\r\n \"strokeWidth\": \"Line width\",\r\n \"stroke\": \"Line color\",\r\n \"title\": \"Title\",\r\n \"name\": \"Name\",\r\n \"labelOptions\": \"Label options\",\r\n \"labels\": \"Labels\",\r\n \"backgroundColor\": \"Background color\",\r\n \"backgroundColors\": \"Background colors\",\r\n \"borderColor\": \"Border color\",\r\n \"borderRadius\": \"Border radius\",\r\n \"borderWidth\": \"Border width\",\r\n \"style\": \"Style\",\r\n \"padding\": \"Padding\",\r\n \"fontSize\": \"Font size\",\r\n \"color\": \"Color\",\r\n \"height\": \"Height\",\r\n \"shapes\": \"Shape options\",\r\n \"segment\": \"Segment\",\r\n \"arrowSegment\": \"Arrow segment\",\r\n \"ray\": \"Ray\",\r\n \"arrowRay\": \"Arrow ray\",\r\n \"line\": \"Line\",\r\n \"arrowInfinityLine\": \"Arrow line\",\r\n \"horizontalLine\": \"Horizontal line\",\r\n \"verticalLine\": \"Vertical line\",\r\n \"crooked3\": \"Crooked 3 line\",\r\n \"crooked5\": \"Crooked 5 line\",\r\n \"elliott3\": \"Elliott 3 line\",\r\n \"elliott5\": \"Elliott 5 line\",\r\n \"verticalCounter\": \"Vertical counter\",\r\n \"verticalLabel\": \"Vertical label\",\r\n \"verticalArrow\": \"Vertical arrow\",\r\n \"fibonacci\": \"Fibonacci\",\r\n \"fibonacciTimeZones\": \"Fibonacci Time Zones\",\r\n \"pitchfork\": \"Pitchfork\",\r\n \"parallelChannel\": \"Parallel channel\",\r\n \"infinityLine\": \"Infinity line\",\r\n \"measure\": \"Measure\",\r\n \"measureXY\": \"Measure XY\",\r\n \"measureX\": \"Measure X\",\r\n \"measureY\": \"Measure Y\",\r\n \"timeCycles\": \"Time Cycles\",\r\n \"flags\": \"Flags\",\r\n \"addButton\": \"add\",\r\n \"saveButton\": \"save\",\r\n \"editButton\": \"edit\",\r\n \"removeButton\": \"remove\",\r\n \"series\": \"Series\",\r\n \"volume\": \"Volume\",\r\n \"connector\": \"Connector\",\r\n \"innerBackground\": \"Inner background\",\r\n \"outerBackground\": \"Outer background\",\r\n \"crosshairX\": \"Crosshair X\",\r\n \"crosshairY\": \"Crosshair Y\",\r\n \"tunnel\": \"Tunnel\",\r\n \"background\": \"Background\",\r\n \"noFilterMatch\": \"No match\",\r\n \"searchIndicators\": \"Search Indicators\",\r\n \"clearFilter\": \"✕ clear filter\",\r\n \"index\": \"Index\",\r\n \"period\": \"Period\",\r\n \"periods\": \"Periods\",\r\n \"standardDeviation\": \"Standard deviation\",\r\n \"periodTenkan\": \"Tenkan period\",\r\n \"periodSenkouSpanB\": \"Senkou Span B period\",\r\n \"periodATR\": \"ATR period\",\r\n \"multiplierATR\": \"ATR multiplier\",\r\n \"shortPeriod\": \"Short period\",\r\n \"longPeriod\": \"Long period\",\r\n \"signalPeriod\": \"Signal period\",\r\n \"decimals\": \"Decimals\",\r\n \"algorithm\": \"Algorithm\",\r\n \"topBand\": \"Top band\",\r\n \"bottomBand\": \"Bottom band\",\r\n \"initialAccelerationFactor\": \"Initial acceleration factor\",\r\n \"maxAccelerationFactor\": \"Max acceleration factor\",\r\n \"increment\": \"Increment\",\r\n \"multiplier\": \"Multiplier\",\r\n \"ranges\": \"Ranges\",\r\n \"highIndex\": \"High index\",\r\n \"lowIndex\": \"Low index\",\r\n \"deviation\": \"Deviation\",\r\n \"xAxisUnit\": \"x-axis unit\",\r\n \"factor\": \"Factor\",\r\n \"fastAvgPeriod\": \"Fast average period\",\r\n \"slowAvgPeriod\": \"Slow average period\",\r\n \"average\": \"Average\",\r\n \"indicatorAliases\": {\r\n \"abands\": [\r\n \"Acceleration Bands\"\r\n ],\r\n \"bb\": [\r\n \"Bollinger Bands\"\r\n ],\r\n \"dema\": [\r\n \"Double Exponential Moving Average\"\r\n ],\r\n \"ema\": [\r\n \"Exponential Moving Average\"\r\n ],\r\n \"ikh\": [\r\n \"Ichimoku Kinko Hyo\"\r\n ],\r\n \"keltnerchannels\": [\r\n \"Keltner Channels\"\r\n ],\r\n \"linearRegression\": [\r\n \"Linear Regression\"\r\n ],\r\n \"pivotpoints\": [\r\n \"Pivot Points\"\r\n ],\r\n \"pc\": [\r\n \"Price Channel\"\r\n ],\r\n \"priceenvelopes\": [\r\n \"Price Envelopes\"\r\n ],\r\n \"psar\": [\r\n \"Parabolic SAR\"\r\n ],\r\n \"sma\": [\r\n \"Simple Moving Average\"\r\n ],\r\n \"supertrend\": [\r\n \"Super Trend\"\r\n ],\r\n \"tema\": [\r\n \"Triple Exponential Moving Average\"\r\n ],\r\n \"vbp\": [\r\n \"Volume by Price\"\r\n ],\r\n \"vwap\": [\r\n \"Volume Weighted Moving Average\"\r\n ],\r\n \"wma\": [\r\n \"Weighted Moving Average\"\r\n ],\r\n \"zigzag\": [\r\n \"Zig Zag\"\r\n ],\r\n \"apo\": [\r\n \"Absolute price indicator\"\r\n ],\r\n \"ad\": [\r\n \"Accumulation/Distribution\"\r\n ],\r\n \"aroon\": [\r\n \"Aroon\"\r\n ],\r\n \"aroonoscillator\": [\r\n \"Aroon oscillator\"\r\n ],\r\n \"atr\": [\r\n \"Average True Range\"\r\n ],\r\n \"ao\": [\r\n \"Awesome oscillator\"\r\n ],\r\n \"cci\": [\r\n \"Commodity Channel Index\"\r\n ],\r\n \"chaikin\": [\r\n \"Chaikin\"\r\n ],\r\n \"cmf\": [\r\n \"Chaikin Money Flow\"\r\n ],\r\n \"cmo\": [\r\n \"Chande Momentum Oscillator\"\r\n ],\r\n \"disparityindex\": [\r\n \"Disparity Index\"\r\n ],\r\n \"dmi\": [\r\n \"Directional Movement Index\"\r\n ],\r\n \"dpo\": [\r\n \"Detrended price oscillator\"\r\n ],\r\n \"klinger\": [\r\n \"Klinger Oscillator\"\r\n ],\r\n \"linearRegressionAngle\": [\r\n \"Linear Regression Angle\"\r\n ],\r\n \"linearRegressionIntercept\": [\r\n \"Linear Regression Intercept\"\r\n ],\r\n \"linearRegressionSlope\": [\r\n \"Linear Regression Slope\"\r\n ],\r\n \"macd\": [\r\n \"Moving Average Convergence Divergence\"\r\n ],\r\n \"mfi\": [\r\n \"Money Flow Index\"\r\n ],\r\n \"momentum\": [\r\n \"Momentum\"\r\n ],\r\n \"natr\": [\r\n \"Normalized Average True Range\"\r\n ],\r\n \"obv\": [\r\n \"On-Balance Volume\"\r\n ],\r\n \"ppo\": [\r\n \"Percentage Price oscillator\"\r\n ],\r\n \"roc\": [\r\n \"Rate of Change\"\r\n ],\r\n \"rsi\": [\r\n \"Relative Strength Index\"\r\n ],\r\n \"slowstochastic\": [\r\n \"Slow Stochastic\"\r\n ],\r\n \"stochastic\": [\r\n \"Stochastic\"\r\n ],\r\n \"trix\": [\r\n \"TRIX\"\r\n ],\r\n \"williamsr\": [\r\n \"Williams %R\"\r\n ]\r\n }\r\n }\r\n },\r\n \"stockTools\": {\r\n \"gui\": {\r\n \"simpleShapes\": \"Simple shapes\",\r\n \"lines\": \"Lines\",\r\n \"crookedLines\": \"Crooked lines\",\r\n \"measure\": \"Measure\",\r\n \"advanced\": \"Advanced\",\r\n \"toggleAnnotations\": \"Toggle annotations\",\r\n \"verticalLabels\": \"Vertical labels\",\r\n \"flags\": \"Flags\",\r\n \"zoomChange\": \"Zoom change\",\r\n \"typeChange\": \"Type change\",\r\n \"saveChart\": \"Save chart\",\r\n \"indicators\": \"Indicators\",\r\n \"currentPriceIndicator\": \"Current Price Indicators\",\r\n \"zoomX\": \"Zoom X\",\r\n \"zoomY\": \"Zoom Y\",\r\n \"zoomXY\": \"Zooom XY\",\r\n \"fullScreen\": \"Fullscreen\",\r\n \"typeOHLC\": \"OHLC\",\r\n \"typeLine\": \"Line\",\r\n \"typeCandlestick\": \"Candlestick\",\r\n \"typeHLC\": \"HLC\",\r\n \"typeHollowCandlestick\": \"Hollow Candlestick\",\r\n \"typeHeikinAshi\": \"Heikin Ashi\",\r\n \"circle\": \"Circle\",\r\n \"ellipse\": \"Ellipse\",\r\n \"label\": \"Label\",\r\n \"rectangle\": \"Rectangle\",\r\n \"flagCirclepin\": \"Flag circle\",\r\n \"flagDiamondpin\": \"Flag diamond\",\r\n \"flagSquarepin\": \"Flag square\",\r\n \"flagSimplepin\": \"Flag simple\",\r\n \"measureXY\": \"Measure XY\",\r\n \"measureX\": \"Measure X\",\r\n \"measureY\": \"Measure Y\",\r\n \"segment\": \"Segment\",\r\n \"arrowSegment\": \"Arrow segment\",\r\n \"ray\": \"Ray\",\r\n \"arrowRay\": \"Arrow ray\",\r\n \"line\": \"Line\",\r\n \"arrowInfinityLine\": \"Arrow line\",\r\n \"horizontalLine\": \"Horizontal line\",\r\n \"verticalLine\": \"Vertical line\",\r\n \"infinityLine\": \"Infinity line\",\r\n \"crooked3\": \"Crooked 3 line\",\r\n \"crooked5\": \"Crooked 5 line\",\r\n \"elliott3\": \"Elliott 3 line\",\r\n \"elliott5\": \"Elliott 5 line\",\r\n \"verticalCounter\": \"Vertical counter\",\r\n \"verticalLabel\": \"Vertical label\",\r\n \"verticalArrow\": \"Vertical arrow\",\r\n \"fibonacci\": \"Fibonacci\",\r\n \"fibonacciTimeZones\": \"Fibonacci Time Zones\",\r\n \"pitchfork\": \"Pitchfork\",\r\n \"parallelChannel\": \"Parallel channel\",\r\n \"timeCycles\": \"Time Cycles\"\r\n }\r\n },\r\n \"accessibility\": {\r\n \"defaultChartTitle\": \"Chart\",\r\n \"chartContainerLabel\": \"{title}. Highcharts interactive chart.\",\r\n \"svgContainerLabel\": \"Interactive chart\",\r\n \"drillUpButton\": \"{buttonText}\",\r\n \"credits\": \"Chart credits: {creditsStr}\",\r\n \"thousandsSep\": \",\",\r\n \"svgContainerTitle\": \"\",\r\n \"graphicContainerLabel\": \"\",\r\n \"screenReaderSection\": {\r\n \"beforeRegionLabel\": \"Chart screen reader information, {chartTitle}.\",\r\n \"afterRegionLabel\": \"\",\r\n \"annotations\": {\r\n \"heading\": \"Chart annotations summary\",\r\n \"descriptionSinglePoint\": \"{annotationText}. Related to {annotationPoint}\",\r\n \"descriptionMultiplePoints\": \"{annotationText}. Related to {annotationPoint}{ Also related to, #each(additionalAnnotationPoints)}\",\r\n \"descriptionNoPoints\": \"{annotationText}\"\r\n },\r\n \"endOfChartMarker\": \"End of interactive chart.\"\r\n },\r\n \"sonification\": {\r\n \"playAsSoundButtonText\": \"Play as sound, {chartTitle}\",\r\n \"playAsSoundClickAnnouncement\": \"Play\"\r\n },\r\n \"legend\": {\r\n \"legendLabelNoTitle\": \"Toggle series visibility, {chartTitle}\",\r\n \"legendLabel\": \"Chart legend: {legendTitle}\",\r\n \"legendItem\": \"Show {itemName}\"\r\n },\r\n \"zoom\": {\r\n \"mapZoomIn\": \"Zoom chart\",\r\n \"mapZoomOut\": \"Zoom out chart\",\r\n \"resetZoomButton\": \"Reset zoom\"\r\n },\r\n \"rangeSelector\": {\r\n \"dropdownLabel\": \"{rangeTitle}\",\r\n \"minInputLabel\": \"Select start date.\",\r\n \"maxInputLabel\": \"Select end date.\",\r\n \"clickButtonAnnouncement\": \"Viewing {axisRangeDescription}\"\r\n },\r\n \"table\": {\r\n \"viewAsDataTableButtonText\": \"View as data table, {chartTitle}\",\r\n \"tableSummary\": \"Table representation of chart.\"\r\n },\r\n \"announceNewData\": {\r\n \"newDataAnnounce\": \"Updated data for chart {chartTitle}\",\r\n \"newSeriesAnnounceSingle\": \"New data series: {seriesDesc}\",\r\n \"newPointAnnounceSingle\": \"New data point: {pointDesc}\",\r\n \"newSeriesAnnounceMultiple\": \"New data series in chart {chartTitle}: {seriesDesc}\",\r\n \"newPointAnnounceMultiple\": \"New data point in chart {chartTitle}: {pointDesc}\"\r\n },\r\n \"seriesTypeDescriptions\": {\r\n \"boxplot\": \"Box plot charts are typically used to display groups of statistical data. Each data point in the chart can have up to 5 values: minimum, lower quartile, median, upper quartile, and maximum.\",\r\n \"arearange\": \"Arearange charts are line charts displaying a range between a lower and higher value for each point.\",\r\n \"areasplinerange\": \"These charts are line charts displaying a range between a lower and higher value for each point.\",\r\n \"bubble\": \"Bubble charts are scatter charts where each data point also has a size value.\",\r\n \"columnrange\": \"Columnrange charts are column charts displaying a range between a lower and higher value for each point.\",\r\n \"errorbar\": \"Errorbar series are used to display the variability of the data.\",\r\n \"funnel\": \"Funnel charts are used to display reduction of data in stages.\",\r\n \"pyramid\": \"Pyramid charts consist of a single pyramid with item heights corresponding to each point value.\",\r\n \"waterfall\": \"A waterfall chart is a column chart where each column contributes towards a total end value.\"\r\n },\r\n \"chartTypes\": {\r\n \"emptyChart\": \"Empty chart\",\r\n \"mapTypeDescription\": \"Map of {mapTitle} with {numSeries} data series.\",\r\n \"unknownMap\": \"Map of unspecified region with {numSeries} data series.\",\r\n \"combinationChart\": \"Combination chart with {numSeries} data series.\",\r\n \"defaultSingle\": \"Chart with {numPoints} data {#plural(numPoints, points, point)}.\",\r\n \"defaultMultiple\": \"Chart with {numSeries} data series.\",\r\n \"splineSingle\": \"Line chart with {numPoints} data {#plural(numPoints, points, point)}.\",\r\n \"splineMultiple\": \"Line chart with {numSeries} lines.\",\r\n \"lineSingle\": \"Line chart with {numPoints} data {#plural(numPoints, points, point)}.\",\r\n \"lineMultiple\": \"Line chart with {numSeries} lines.\",\r\n \"columnSingle\": \"Bar chart with {numPoints} {#plural(numPoints, bars, bar)}.\",\r\n \"columnMultiple\": \"Bar chart with {numSeries} data series.\",\r\n \"barSingle\": \"Bar chart with {numPoints} {#plural(numPoints, bars, bar)}.\",\r\n \"barMultiple\": \"Bar chart with {numSeries} data series.\",\r\n \"pieSingle\": \"Pie chart with {numPoints} {#plural(numPoints, slices, slice)}.\",\r\n \"pieMultiple\": \"Pie chart with {numSeries} pies.\",\r\n \"scatterSingle\": \"Scatter chart with {numPoints} {#plural(numPoints, points, point)}.\",\r\n \"scatterMultiple\": \"Scatter chart with {numSeries} data series.\",\r\n \"boxplotSingle\": \"Boxplot with {numPoints} {#plural(numPoints, boxes, box)}.\",\r\n \"boxplotMultiple\": \"Boxplot with {numSeries} data series.\",\r\n \"bubbleSingle\": \"Bubble chart with {numPoints} {#plural(numPoints, bubbles, bubble)}.\",\r\n \"bubbleMultiple\": \"Bubble chart with {numSeries} data series.\"\r\n },\r\n \"axis\": {\r\n \"xAxisDescriptionSingular\": \"The chart has 1 X axis displaying {names[0]}. {ranges[0]}\",\r\n \"xAxisDescriptionPlural\": \"The chart has {numAxes} X axes displaying {#each(names, -1) }and {names[-1]}.\",\r\n \"yAxisDescriptionSingular\": \"The chart has 1 Y axis displaying {names[0]}. {ranges[0]}\",\r\n \"yAxisDescriptionPlural\": \"The chart has {numAxes} Y axes displaying {#each(names, -1) }and {names[-1]}.\",\r\n \"timeRangeDays\": \"Range: {range} days.\",\r\n \"timeRangeHours\": \"Range: {range} hours.\",\r\n \"timeRangeMinutes\": \"Range: {range} minutes.\",\r\n \"timeRangeSeconds\": \"Range: {range} seconds.\",\r\n \"rangeFromTo\": \"Range: {rangeFrom} to {rangeTo}.\",\r\n \"rangeCategories\": \"Range: {numCategories} categories.\"\r\n },\r\n \"exporting\": {\r\n \"chartMenuLabel\": \"Chart menu\",\r\n \"menuButtonLabel\": \"View chart menu, {chartTitle}\"\r\n },\r\n \"series\": {\r\n \"summary\": {\r\n \"default\": \"{name}, series {ix} of {numSeries} with {numPoints} data {#plural(numPoints, points, point)}.\",\r\n \"defaultCombination\": \"{name}, series {ix} of {numSeries} with {numPoints} data {#plural(numPoints, points, point)}.\",\r\n \"line\": \"{name}, line {ix} of {numSeries} with {numPoints} data {#plural(numPoints, points, point)}.\",\r\n \"lineCombination\": \"{name}, series {ix} of {numSeries}. Line with {numPoints} data {#plural(numPoints, points, point)}.\",\r\n \"spline\": \"{name}, line {ix} of {numSeries} with {numPoints} data {#plural(numPoints, points, point)}.\",\r\n \"splineCombination\": \"{name}, series {ix} of {numSeries}. Line with {numPoints} data {#plural(numPoints, points, point)}.\",\r\n \"column\": \"{name}, bar series {ix} of {numSeries} with {numPoints} {#plural(numPoints, bars, bar)}.\",\r\n \"columnCombination\": \"{name}, series {ix} of {numSeries}. Bar series with {numPoints} {#plural(numPoints, bars, bar)}.\",\r\n \"bar\": \"{name}, bar series {ix} of {numSeries} with {numPoints} {#plural(numPoints, bars, bar)}.\",\r\n \"barCombination\": \"{name}, series {ix} of {numSeries}. Bar series with {numPoints} {#plural(numPoints, bars, bar)}.\",\r\n \"pie\": \"{name}, pie {ix} of {numSeries} with {numPoints} {#plural(numPoints, slices, slice)}.\",\r\n \"pieCombination\": \"{name}, series {ix} of {numSeries}. Pie with {numPoints} {#plural(numPoints, slices, slice)}.\",\r\n \"scatter\": \"{name}, scatter plot {ix} of {numSeries} with {numPoints} {#plural(numPoints, points, point)}.\",\r\n \"scatterCombination\": \"{name}, series {ix} of {numSeries}, scatter plot with {numPoints} {#plural(numPoints, points, point)}.\",\r\n \"boxplot\": \"{name}, boxplot {ix} of {numSeries} with {numPoints} {#plural(numPoints, boxes, box)}.\",\r\n \"boxplotCombination\": \"{name}, series {ix} of {numSeries}. Boxplot with {numPoints} {#plural(numPoints, boxes, box)}.\",\r\n \"bubble\": \"{name}, bubble series {ix} of {numSeries} with {numPoints} {#plural(numPoints, bubbles, bubble)}.\",\r\n \"bubbleCombination\": \"{name}, series {ix} of {numSeries}. Bubble series with {numPoints} {#plural(numPoints, bubbles, bubble)}.\",\r\n \"map\": \"{name}, map {ix} of {numSeries} with {numPoints} {#plural(numPoints, areas, area)}.\",\r\n \"mapCombination\": \"{name}, series {ix} of {numSeries}. Map with {numPoints} {#plural(numPoints, areas, area)}.\",\r\n \"mapline\": \"{name}, line {ix} of {numSeries} with {numPoints} data {#plural(numPoints, points, point)}.\",\r\n \"maplineCombination\": \"{name}, series {ix} of {numSeries}. Line with {numPoints} data {#plural(numPoints, points, point)}.\",\r\n \"mapbubble\": \"{name}, bubble series {ix} of {numSeries} with {numPoints} {#plural(numPoints, bubbles, bubble)}.\",\r\n \"mapbubbleCombination\": \"{name}, series {ix} of {numSeries}. Bubble series with {numPoints} {#plural(numPoints, bubbles, bubble)}.\"\r\n },\r\n \"description\": \"{description}\",\r\n \"xAxisDescription\": \"X axis, {name}\",\r\n \"yAxisDescription\": \"Y axis, {name}\",\r\n \"nullPointValue\": \"No value\",\r\n \"pointAnnotationsDescription\": \"{Annotation: #each(annotations). }\"\r\n }\r\n },\r\n \"downloadCSV\": \"Download CSV\",\r\n \"downloadXLS\": \"Download XLS\",\r\n \"exportData\": {\r\n \"annotationHeader\": \"Annotations\",\r\n \"categoryHeader\": \"Category\",\r\n \"categoryDatetimeHeader\": \"DateTime\"\r\n },\r\n \"viewData\": \"View data table\",\r\n \"hideData\": \"Hide data table\"\r\n },\r\n \"global\": {},\r\n \"time\": {\r\n \"timezoneOffset\": 0,\r\n \"useUTC\": true\r\n },\r\n \"chart\": {\r\n \"panning\": {\r\n \"enabled\": false,\r\n \"type\": \"x\"\r\n },\r\n \"styledMode\": false,\r\n \"borderRadius\": 0,\r\n \"colorCount\": 10,\r\n \"defaultSeriesType\": \"line\",\r\n \"ignoreHiddenSeries\": true,\r\n \"spacing\": [\r\n 10,\r\n 10,\r\n 15,\r\n 10\r\n ],\r\n \"resetZoomButton\": {\r\n \"theme\": {\r\n \"zIndex\": 6\r\n },\r\n \"position\": {\r\n \"align\": \"right\",\r\n \"x\": -10,\r\n \"y\": 10\r\n }\r\n },\r\n \"zoomBySingleTouch\": false,\r\n \"width\": null,\r\n \"height\": null,\r\n \"borderColor\": \"#335cad\",\r\n \"backgroundColor\": \"#ffffff\",\r\n \"plotBorderColor\": \"#cccccc\"\r\n },\r\n \"title\": {\r\n \"text\": \"Chart title\",\r\n \"align\": \"center\",\r\n \"margin\": 15,\r\n \"widthAdjust\": -44\r\n },\r\n \"subtitle\": {\r\n \"text\": \"\",\r\n \"align\": \"center\",\r\n \"widthAdjust\": -44\r\n },\r\n \"caption\": {\r\n \"margin\": 15,\r\n \"text\": \"\",\r\n \"align\": \"left\",\r\n \"verticalAlign\": \"bottom\"\r\n },\r\n \"plotOptions\": {\r\n \"line\": {\r\n \"lineWidth\": 2,\r\n \"allowPointSelect\": false,\r\n \"crisp\": true,\r\n \"showCheckbox\": false,\r\n \"animation\": {\r\n \"duration\": 1000\r\n },\r\n \"events\": {},\r\n \"marker\": {\r\n \"enabledThreshold\": 2,\r\n \"lineColor\": \"#ffffff\",\r\n \"lineWidth\": 0,\r\n \"radius\": 4,\r\n \"states\": {\r\n \"normal\": {\r\n \"animation\": true\r\n },\r\n \"hover\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"enabled\": true,\r\n \"radiusPlus\": 2,\r\n \"lineWidthPlus\": 1\r\n },\r\n \"select\": {\r\n \"fillColor\": \"#cccccc\",\r\n \"lineColor\": \"#000000\",\r\n \"lineWidth\": 2\r\n }\r\n }\r\n },\r\n \"point\": {\r\n \"events\": {}\r\n },\r\n \"dataLabels\": {\r\n \"animation\": {},\r\n \"align\": \"center\",\r\n \"defer\": true,\r\n \"padding\": 5,\r\n \"style\": {\r\n \"fontSize\": \"11px\",\r\n \"fontWeight\": \"bold\",\r\n \"color\": \"contrast\",\r\n \"textOutline\": \"1px contrast\"\r\n },\r\n \"verticalAlign\": \"bottom\",\r\n \"x\": 0,\r\n \"y\": 0\r\n },\r\n \"cropThreshold\": 300,\r\n \"opacity\": 1,\r\n \"pointRange\": 0,\r\n \"softThreshold\": true,\r\n \"states\": {\r\n \"normal\": {\r\n \"animation\": true\r\n },\r\n \"hover\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"lineWidthPlus\": 1,\r\n \"marker\": {},\r\n \"halo\": {\r\n \"size\": 10,\r\n \"opacity\": 0.25\r\n }\r\n },\r\n \"select\": {\r\n \"animation\": {\r\n \"duration\": 0\r\n }\r\n },\r\n \"inactive\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"opacity\": 0.2\r\n }\r\n },\r\n \"stickyTracking\": true,\r\n \"turboThreshold\": 1000,\r\n \"findNearestPointBy\": \"x\"\r\n },\r\n \"area\": {\r\n \"lineWidth\": 2,\r\n \"allowPointSelect\": false,\r\n \"crisp\": true,\r\n \"showCheckbox\": false,\r\n \"animation\": {\r\n \"duration\": 1000\r\n },\r\n \"events\": {},\r\n \"marker\": {\r\n \"enabledThreshold\": 2,\r\n \"lineColor\": \"#ffffff\",\r\n \"lineWidth\": 0,\r\n \"radius\": 4,\r\n \"states\": {\r\n \"normal\": {\r\n \"animation\": true\r\n },\r\n \"hover\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"enabled\": true,\r\n \"radiusPlus\": 2,\r\n \"lineWidthPlus\": 1\r\n },\r\n \"select\": {\r\n \"fillColor\": \"#cccccc\",\r\n \"lineColor\": \"#000000\",\r\n \"lineWidth\": 2\r\n }\r\n }\r\n },\r\n \"point\": {\r\n \"events\": {}\r\n },\r\n \"dataLabels\": {\r\n \"animation\": {},\r\n \"align\": \"center\",\r\n \"defer\": true,\r\n \"padding\": 5,\r\n \"style\": {\r\n \"fontSize\": \"11px\",\r\n \"fontWeight\": \"bold\",\r\n \"color\": \"contrast\",\r\n \"textOutline\": \"1px contrast\"\r\n },\r\n \"verticalAlign\": \"bottom\",\r\n \"x\": 0,\r\n \"y\": 0\r\n },\r\n \"cropThreshold\": 300,\r\n \"opacity\": 1,\r\n \"pointRange\": 0,\r\n \"softThreshold\": true,\r\n \"states\": {\r\n \"normal\": {\r\n \"animation\": true\r\n },\r\n \"hover\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"lineWidthPlus\": 1,\r\n \"marker\": {},\r\n \"halo\": {\r\n \"size\": 10,\r\n \"opacity\": 0.25\r\n }\r\n },\r\n \"select\": {\r\n \"animation\": {\r\n \"duration\": 0\r\n }\r\n },\r\n \"inactive\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"opacity\": 0.2\r\n }\r\n },\r\n \"stickyTracking\": true,\r\n \"turboThreshold\": 1000,\r\n \"findNearestPointBy\": \"x\",\r\n \"threshold\": 0\r\n },\r\n \"spline\": {\r\n \"lineWidth\": 2,\r\n \"allowPointSelect\": false,\r\n \"crisp\": true,\r\n \"showCheckbox\": false,\r\n \"animation\": {\r\n \"duration\": 1000\r\n },\r\n \"events\": {},\r\n \"marker\": {\r\n \"enabledThreshold\": 2,\r\n \"lineColor\": \"#ffffff\",\r\n \"lineWidth\": 0,\r\n \"radius\": 4,\r\n \"states\": {\r\n \"normal\": {\r\n \"animation\": true\r\n },\r\n \"hover\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"enabled\": true,\r\n \"radiusPlus\": 2,\r\n \"lineWidthPlus\": 1\r\n },\r\n \"select\": {\r\n \"fillColor\": \"#cccccc\",\r\n \"lineColor\": \"#000000\",\r\n \"lineWidth\": 2\r\n }\r\n }\r\n },\r\n \"point\": {\r\n \"events\": {}\r\n },\r\n \"dataLabels\": {\r\n \"animation\": {},\r\n \"align\": \"center\",\r\n \"defer\": true,\r\n \"padding\": 5,\r\n \"style\": {\r\n \"fontSize\": \"11px\",\r\n \"fontWeight\": \"bold\",\r\n \"color\": \"contrast\",\r\n \"textOutline\": \"1px contrast\"\r\n },\r\n \"verticalAlign\": \"bottom\",\r\n \"x\": 0,\r\n \"y\": 0\r\n },\r\n \"cropThreshold\": 300,\r\n \"opacity\": 1,\r\n \"pointRange\": 0,\r\n \"softThreshold\": true,\r\n \"states\": {\r\n \"normal\": {\r\n \"animation\": true\r\n },\r\n \"hover\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"lineWidthPlus\": 1,\r\n \"marker\": {},\r\n \"halo\": {\r\n \"size\": 10,\r\n \"opacity\": 0.25\r\n }\r\n },\r\n \"select\": {\r\n \"animation\": {\r\n \"duration\": 0\r\n }\r\n },\r\n \"inactive\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"opacity\": 0.2\r\n }\r\n },\r\n \"stickyTracking\": true,\r\n \"turboThreshold\": 1000,\r\n \"findNearestPointBy\": \"x\"\r\n },\r\n \"areaspline\": {\r\n \"lineWidth\": 2,\r\n \"allowPointSelect\": false,\r\n \"crisp\": true,\r\n \"showCheckbox\": false,\r\n \"animation\": {\r\n \"duration\": 1000\r\n },\r\n \"events\": {},\r\n \"marker\": {\r\n \"enabledThreshold\": 2,\r\n \"lineColor\": \"#ffffff\",\r\n \"lineWidth\": 0,\r\n \"radius\": 4,\r\n \"states\": {\r\n \"normal\": {\r\n \"animation\": true\r\n },\r\n \"hover\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"enabled\": true,\r\n \"radiusPlus\": 2,\r\n \"lineWidthPlus\": 1\r\n },\r\n \"select\": {\r\n \"fillColor\": \"#cccccc\",\r\n \"lineColor\": \"#000000\",\r\n \"lineWidth\": 2\r\n }\r\n }\r\n },\r\n \"point\": {\r\n \"events\": {}\r\n },\r\n \"dataLabels\": {\r\n \"animation\": {},\r\n \"align\": \"center\",\r\n \"defer\": true,\r\n \"padding\": 5,\r\n \"style\": {\r\n \"fontSize\": \"11px\",\r\n \"fontWeight\": \"bold\",\r\n \"color\": \"contrast\",\r\n \"textOutline\": \"1px contrast\"\r\n },\r\n \"verticalAlign\": \"bottom\",\r\n \"x\": 0,\r\n \"y\": 0\r\n },\r\n \"cropThreshold\": 300,\r\n \"opacity\": 1,\r\n \"pointRange\": 0,\r\n \"softThreshold\": true,\r\n \"states\": {\r\n \"normal\": {\r\n \"animation\": true\r\n },\r\n \"hover\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"lineWidthPlus\": 1,\r\n \"marker\": {},\r\n \"halo\": {\r\n \"size\": 10,\r\n \"opacity\": 0.25\r\n }\r\n },\r\n \"select\": {\r\n \"animation\": {\r\n \"duration\": 0\r\n }\r\n },\r\n \"inactive\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"opacity\": 0.2\r\n }\r\n },\r\n \"stickyTracking\": true,\r\n \"turboThreshold\": 1000,\r\n \"findNearestPointBy\": \"x\",\r\n \"threshold\": 0\r\n },\r\n \"column\": {\r\n \"lineWidth\": 2,\r\n \"allowPointSelect\": false,\r\n \"crisp\": true,\r\n \"showCheckbox\": false,\r\n \"animation\": {\r\n \"duration\": 1000\r\n },\r\n \"events\": {},\r\n \"marker\": null,\r\n \"point\": {\r\n \"events\": {}\r\n },\r\n \"dataLabels\": {\r\n \"animation\": {},\r\n \"defer\": true,\r\n \"padding\": 5,\r\n \"style\": {\r\n \"fontSize\": \"11px\",\r\n \"fontWeight\": \"bold\",\r\n \"color\": \"contrast\",\r\n \"textOutline\": \"1px contrast\"\r\n },\r\n \"x\": 0\r\n },\r\n \"cropThreshold\": 50,\r\n \"opacity\": 1,\r\n \"pointRange\": null,\r\n \"softThreshold\": true,\r\n \"states\": {\r\n \"normal\": {\r\n \"animation\": true\r\n },\r\n \"hover\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"lineWidthPlus\": 1,\r\n \"marker\": {},\r\n \"halo\": false,\r\n \"brightness\": 0.1\r\n },\r\n \"select\": {\r\n \"animation\": {\r\n \"duration\": 0\r\n },\r\n \"color\": \"#cccccc\",\r\n \"borderColor\": \"#000000\"\r\n },\r\n \"inactive\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"opacity\": 0.2\r\n }\r\n },\r\n \"stickyTracking\": false,\r\n \"turboThreshold\": 1000,\r\n \"findNearestPointBy\": \"x\",\r\n \"borderRadius\": 0,\r\n \"centerInCategory\": false,\r\n \"groupPadding\": 0.2,\r\n \"pointPadding\": 0.1,\r\n \"minPointLength\": 0,\r\n \"startFromThreshold\": true,\r\n \"tooltip\": {\r\n \"distance\": 6\r\n },\r\n \"threshold\": 0,\r\n \"borderColor\": \"#ffffff\"\r\n },\r\n \"bar\": {\r\n \"lineWidth\": 2,\r\n \"allowPointSelect\": false,\r\n \"crisp\": true,\r\n \"showCheckbox\": false,\r\n \"animation\": {\r\n \"duration\": 1000\r\n },\r\n \"events\": {},\r\n \"marker\": null,\r\n \"point\": {\r\n \"events\": {}\r\n },\r\n \"dataLabels\": {\r\n \"animation\": {},\r\n \"defer\": true,\r\n \"padding\": 5,\r\n \"style\": {\r\n \"fontSize\": \"11px\",\r\n \"fontWeight\": \"bold\",\r\n \"color\": \"contrast\",\r\n \"textOutline\": \"1px contrast\"\r\n },\r\n \"x\": 0\r\n },\r\n \"cropThreshold\": 50,\r\n \"opacity\": 1,\r\n \"pointRange\": null,\r\n \"softThreshold\": true,\r\n \"states\": {\r\n \"normal\": {\r\n \"animation\": true\r\n },\r\n \"hover\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"lineWidthPlus\": 1,\r\n \"marker\": {},\r\n \"halo\": false,\r\n \"brightness\": 0.1\r\n },\r\n \"select\": {\r\n \"animation\": {\r\n \"duration\": 0\r\n },\r\n \"color\": \"#cccccc\",\r\n \"borderColor\": \"#000000\"\r\n },\r\n \"inactive\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"opacity\": 0.2\r\n }\r\n },\r\n \"stickyTracking\": false,\r\n \"turboThreshold\": 1000,\r\n \"findNearestPointBy\": \"x\",\r\n \"borderRadius\": 0,\r\n \"centerInCategory\": false,\r\n \"groupPadding\": 0.2,\r\n \"pointPadding\": 0.1,\r\n \"minPointLength\": 0,\r\n \"startFromThreshold\": true,\r\n \"tooltip\": {\r\n \"distance\": 6\r\n },\r\n \"threshold\": 0,\r\n \"borderColor\": \"#ffffff\"\r\n },\r\n \"scatter\": {\r\n \"lineWidth\": 0,\r\n \"allowPointSelect\": false,\r\n \"crisp\": true,\r\n \"showCheckbox\": false,\r\n \"animation\": {\r\n \"duration\": 1000\r\n },\r\n \"events\": {},\r\n \"marker\": {\r\n \"enabledThreshold\": 2,\r\n \"lineColor\": \"#ffffff\",\r\n \"lineWidth\": 0,\r\n \"radius\": 4,\r\n \"states\": {\r\n \"normal\": {\r\n \"animation\": true\r\n },\r\n \"hover\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"enabled\": true,\r\n \"radiusPlus\": 2,\r\n \"lineWidthPlus\": 1\r\n },\r\n \"select\": {\r\n \"fillColor\": \"#cccccc\",\r\n \"lineColor\": \"#000000\",\r\n \"lineWidth\": 2\r\n }\r\n },\r\n \"enabled\": true\r\n },\r\n \"point\": {\r\n \"events\": {}\r\n },\r\n \"dataLabels\": {\r\n \"animation\": {},\r\n \"align\": \"center\",\r\n \"defer\": true,\r\n \"padding\": 5,\r\n \"style\": {\r\n \"fontSize\": \"11px\",\r\n \"fontWeight\": \"bold\",\r\n \"color\": \"contrast\",\r\n \"textOutline\": \"1px contrast\"\r\n },\r\n \"verticalAlign\": \"bottom\",\r\n \"x\": 0,\r\n \"y\": 0\r\n },\r\n \"cropThreshold\": 300,\r\n \"opacity\": 1,\r\n \"pointRange\": 0,\r\n \"softThreshold\": true,\r\n \"states\": {\r\n \"normal\": {\r\n \"animation\": true\r\n },\r\n \"hover\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"lineWidthPlus\": 1,\r\n \"marker\": {},\r\n \"halo\": {\r\n \"size\": 10,\r\n \"opacity\": 0.25\r\n }\r\n },\r\n \"select\": {\r\n \"animation\": {\r\n \"duration\": 0\r\n }\r\n },\r\n \"inactive\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"opacity\": 0.2\r\n }\r\n },\r\n \"stickyTracking\": true,\r\n \"turboThreshold\": 1000,\r\n \"findNearestPointBy\": \"xy\",\r\n \"jitter\": {\r\n \"x\": 0,\r\n \"y\": 0\r\n },\r\n \"tooltip\": {\r\n \"headerFormat\": \" {series.name}
\",\r\n \"pointFormat\": \"x: {point.x}
y: {point.y}
\"\r\n }\r\n },\r\n \"pie\": {\r\n \"allowPointSelect\": false,\r\n \"crisp\": true,\r\n \"showCheckbox\": false,\r\n \"animation\": {\r\n \"duration\": 1000\r\n },\r\n \"events\": {},\r\n \"marker\": null,\r\n \"point\": {\r\n \"events\": {}\r\n },\r\n \"dataLabels\": {\r\n \"animation\": {},\r\n \"align\": \"center\",\r\n \"defer\": true,\r\n \"padding\": 5,\r\n \"style\": {\r\n \"fontSize\": \"11px\",\r\n \"fontWeight\": \"bold\",\r\n \"color\": \"contrast\",\r\n \"textOutline\": \"1px contrast\"\r\n },\r\n \"verticalAlign\": \"bottom\",\r\n \"x\": 0,\r\n \"y\": 0,\r\n \"allowOverlap\": true,\r\n \"connectorPadding\": 5,\r\n \"connectorShape\": \"fixedOffset\",\r\n \"crookDistance\": \"70%\",\r\n \"distance\": 30,\r\n \"enabled\": true,\r\n \"softConnector\": true\r\n },\r\n \"cropThreshold\": 300,\r\n \"opacity\": 1,\r\n \"pointRange\": 0,\r\n \"softThreshold\": true,\r\n \"states\": {\r\n \"normal\": {\r\n \"animation\": true\r\n },\r\n \"hover\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"lineWidthPlus\": 1,\r\n \"marker\": {},\r\n \"halo\": {\r\n \"size\": 10,\r\n \"opacity\": 0.25\r\n },\r\n \"brightness\": 0.1\r\n },\r\n \"select\": {\r\n \"animation\": {\r\n \"duration\": 0\r\n }\r\n },\r\n \"inactive\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"opacity\": 0.2\r\n }\r\n },\r\n \"stickyTracking\": false,\r\n \"turboThreshold\": 1000,\r\n \"findNearestPointBy\": \"x\",\r\n \"center\": [\r\n null,\r\n null\r\n ],\r\n \"clip\": false,\r\n \"colorByPoint\": true,\r\n \"ignoreHiddenPoint\": true,\r\n \"inactiveOtherPoints\": true,\r\n \"legendType\": \"point\",\r\n \"size\": null,\r\n \"showInLegend\": false,\r\n \"slicedOffset\": 10,\r\n \"tooltip\": {\r\n \"followPointer\": true\r\n },\r\n \"borderColor\": \"#ffffff\",\r\n \"borderWidth\": 1\r\n },\r\n \"hlc\": {\r\n \"lineWidth\": 1,\r\n \"allowPointSelect\": false,\r\n \"crisp\": true,\r\n \"showCheckbox\": false,\r\n \"animation\": {\r\n \"duration\": 1000\r\n },\r\n \"events\": {},\r\n \"marker\": null,\r\n \"point\": {\r\n \"events\": {}\r\n },\r\n \"dataLabels\": {\r\n \"animation\": {},\r\n \"defer\": true,\r\n \"padding\": 5,\r\n \"style\": {\r\n \"fontSize\": \"11px\",\r\n \"fontWeight\": \"bold\",\r\n \"color\": \"contrast\",\r\n \"textOutline\": \"1px contrast\"\r\n },\r\n \"x\": 0\r\n },\r\n \"cropThreshold\": 50,\r\n \"opacity\": 1,\r\n \"pointRange\": null,\r\n \"softThreshold\": true,\r\n \"states\": {\r\n \"normal\": {\r\n \"animation\": true\r\n },\r\n \"hover\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"lineWidthPlus\": 1,\r\n \"marker\": {},\r\n \"halo\": false,\r\n \"brightness\": 0.1,\r\n \"lineWidth\": 3\r\n },\r\n \"select\": {\r\n \"animation\": {\r\n \"duration\": 0\r\n },\r\n \"color\": \"#cccccc\",\r\n \"borderColor\": \"#000000\"\r\n },\r\n \"inactive\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"opacity\": 0.2\r\n }\r\n },\r\n \"stickyTracking\": true,\r\n \"turboThreshold\": 1000,\r\n \"findNearestPointBy\": \"x\",\r\n \"borderRadius\": 0,\r\n \"centerInCategory\": false,\r\n \"groupPadding\": 0.2,\r\n \"pointPadding\": 0.1,\r\n \"minPointLength\": 0,\r\n \"startFromThreshold\": true,\r\n \"tooltip\": {\r\n \"distance\": 6,\r\n \"pointFormat\": \" {series.name}
High: {point.high}
Low: {point.low}
Close: {point.close}
\"\r\n },\r\n \"threshold\": null,\r\n \"borderColor\": \"#ffffff\"\r\n },\r\n \"ohlc\": {\r\n \"lineWidth\": 1,\r\n \"allowPointSelect\": false,\r\n \"crisp\": true,\r\n \"showCheckbox\": false,\r\n \"animation\": {\r\n \"duration\": 1000\r\n },\r\n \"events\": {},\r\n \"marker\": null,\r\n \"point\": {\r\n \"events\": {}\r\n },\r\n \"dataLabels\": {\r\n \"animation\": {},\r\n \"defer\": true,\r\n \"padding\": 5,\r\n \"style\": {\r\n \"fontSize\": \"11px\",\r\n \"fontWeight\": \"bold\",\r\n \"color\": \"contrast\",\r\n \"textOutline\": \"1px contrast\"\r\n },\r\n \"x\": 0\r\n },\r\n \"cropThreshold\": 50,\r\n \"opacity\": 1,\r\n \"pointRange\": null,\r\n \"softThreshold\": true,\r\n \"states\": {\r\n \"normal\": {\r\n \"animation\": true\r\n },\r\n \"hover\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"lineWidthPlus\": 1,\r\n \"marker\": {},\r\n \"halo\": false,\r\n \"brightness\": 0.1,\r\n \"lineWidth\": 3\r\n },\r\n \"select\": {\r\n \"animation\": {\r\n \"duration\": 0\r\n },\r\n \"color\": \"#cccccc\",\r\n \"borderColor\": \"#000000\"\r\n },\r\n \"inactive\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"opacity\": 0.2\r\n }\r\n },\r\n \"stickyTracking\": true,\r\n \"turboThreshold\": 1000,\r\n \"findNearestPointBy\": \"x\",\r\n \"borderRadius\": 0,\r\n \"centerInCategory\": false,\r\n \"groupPadding\": 0.2,\r\n \"pointPadding\": 0.1,\r\n \"minPointLength\": 0,\r\n \"startFromThreshold\": true,\r\n \"tooltip\": {\r\n \"distance\": 6,\r\n \"pointFormat\": \" {series.name}
Open: {point.open}
High: {point.high}
Low: {point.low}
Close: {point.close}
\"\r\n },\r\n \"threshold\": null,\r\n \"borderColor\": \"#ffffff\"\r\n },\r\n \"candlestick\": {\r\n \"lineWidth\": 1,\r\n \"allowPointSelect\": false,\r\n \"crisp\": true,\r\n \"showCheckbox\": false,\r\n \"animation\": {\r\n \"duration\": 1000\r\n },\r\n \"events\": {},\r\n \"marker\": null,\r\n \"point\": {\r\n \"events\": {}\r\n },\r\n \"dataLabels\": {\r\n \"animation\": {},\r\n \"defer\": true,\r\n \"padding\": 5,\r\n \"style\": {\r\n \"fontSize\": \"11px\",\r\n \"fontWeight\": \"bold\",\r\n \"color\": \"contrast\",\r\n \"textOutline\": \"1px contrast\"\r\n },\r\n \"x\": 0\r\n },\r\n \"cropThreshold\": 50,\r\n \"opacity\": 1,\r\n \"pointRange\": null,\r\n \"softThreshold\": true,\r\n \"states\": {\r\n \"normal\": {\r\n \"animation\": true\r\n },\r\n \"hover\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"lineWidthPlus\": 1,\r\n \"marker\": {},\r\n \"halo\": false,\r\n \"brightness\": 0.1,\r\n \"lineWidth\": 2\r\n },\r\n \"select\": {\r\n \"animation\": {\r\n \"duration\": 0\r\n },\r\n \"color\": \"#cccccc\",\r\n \"borderColor\": \"#000000\"\r\n },\r\n \"inactive\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"opacity\": 0.2\r\n }\r\n },\r\n \"stickyTracking\": true,\r\n \"turboThreshold\": 1000,\r\n \"findNearestPointBy\": \"x\",\r\n \"borderRadius\": 0,\r\n \"centerInCategory\": false,\r\n \"groupPadding\": 0.2,\r\n \"pointPadding\": 0.1,\r\n \"minPointLength\": 0,\r\n \"startFromThreshold\": true,\r\n \"tooltip\": {\r\n \"distance\": 6,\r\n \"pointFormat\": \" {series.name}
Open: {point.open}
High: {point.high}
Low: {point.low}
Close: {point.close}
\"\r\n },\r\n \"threshold\": null,\r\n \"borderColor\": \"#ffffff\",\r\n \"line\": {\r\n \"lineWidth\": 2,\r\n \"allowPointSelect\": false,\r\n \"crisp\": true,\r\n \"showCheckbox\": false,\r\n \"animation\": {\r\n \"duration\": 1000\r\n },\r\n \"events\": {},\r\n \"marker\": {\r\n \"enabledThreshold\": 2,\r\n \"lineColor\": \"#ffffff\",\r\n \"lineWidth\": 0,\r\n \"radius\": 4,\r\n \"states\": {\r\n \"normal\": {\r\n \"animation\": true\r\n },\r\n \"hover\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"enabled\": true,\r\n \"radiusPlus\": 2,\r\n \"lineWidthPlus\": 1\r\n },\r\n \"select\": {\r\n \"fillColor\": \"#cccccc\",\r\n \"lineColor\": \"#000000\",\r\n \"lineWidth\": 2\r\n }\r\n }\r\n },\r\n \"point\": {\r\n \"events\": {}\r\n },\r\n \"dataLabels\": {\r\n \"animation\": {},\r\n \"align\": \"center\",\r\n \"defer\": true,\r\n \"padding\": 5,\r\n \"style\": {\r\n \"fontSize\": \"11px\",\r\n \"fontWeight\": \"bold\",\r\n \"color\": \"contrast\",\r\n \"textOutline\": \"1px contrast\"\r\n },\r\n \"verticalAlign\": \"bottom\",\r\n \"x\": 0,\r\n \"y\": 0\r\n },\r\n \"cropThreshold\": 300,\r\n \"opacity\": 1,\r\n \"pointRange\": 0,\r\n \"softThreshold\": true,\r\n \"states\": {\r\n \"normal\": {\r\n \"animation\": true\r\n },\r\n \"hover\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"lineWidthPlus\": 1,\r\n \"marker\": {},\r\n \"halo\": {\r\n \"size\": 10,\r\n \"opacity\": 0.25\r\n }\r\n },\r\n \"select\": {\r\n \"animation\": {\r\n \"duration\": 0\r\n }\r\n },\r\n \"inactive\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"opacity\": 0.2\r\n }\r\n },\r\n \"stickyTracking\": true,\r\n \"turboThreshold\": 1000,\r\n \"findNearestPointBy\": \"x\"\r\n },\r\n \"area\": {\r\n \"lineWidth\": 2,\r\n \"allowPointSelect\": false,\r\n \"crisp\": true,\r\n \"showCheckbox\": false,\r\n \"animation\": {\r\n \"duration\": 1000\r\n },\r\n \"events\": {},\r\n \"marker\": {\r\n \"enabledThreshold\": 2,\r\n \"lineColor\": \"#ffffff\",\r\n \"lineWidth\": 0,\r\n \"radius\": 4,\r\n \"states\": {\r\n \"normal\": {\r\n \"animation\": true\r\n },\r\n \"hover\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"enabled\": true,\r\n \"radiusPlus\": 2,\r\n \"lineWidthPlus\": 1\r\n },\r\n \"select\": {\r\n \"fillColor\": \"#cccccc\",\r\n \"lineColor\": \"#000000\",\r\n \"lineWidth\": 2\r\n }\r\n }\r\n },\r\n \"point\": {\r\n \"events\": {}\r\n },\r\n \"dataLabels\": {\r\n \"animation\": {},\r\n \"align\": \"center\",\r\n \"defer\": true,\r\n \"padding\": 5,\r\n \"style\": {\r\n \"fontSize\": \"11px\",\r\n \"fontWeight\": \"bold\",\r\n \"color\": \"contrast\",\r\n \"textOutline\": \"1px contrast\"\r\n },\r\n \"verticalAlign\": \"bottom\",\r\n \"x\": 0,\r\n \"y\": 0\r\n },\r\n \"cropThreshold\": 300,\r\n \"opacity\": 1,\r\n \"pointRange\": 0,\r\n \"softThreshold\": true,\r\n \"states\": {\r\n \"normal\": {\r\n \"animation\": true\r\n },\r\n \"hover\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"lineWidthPlus\": 1,\r\n \"marker\": {},\r\n \"halo\": {\r\n \"size\": 10,\r\n \"opacity\": 0.25\r\n }\r\n },\r\n \"select\": {\r\n \"animation\": {\r\n \"duration\": 0\r\n }\r\n },\r\n \"inactive\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"opacity\": 0.2\r\n }\r\n },\r\n \"stickyTracking\": true,\r\n \"turboThreshold\": 1000,\r\n \"findNearestPointBy\": \"x\",\r\n \"threshold\": 0\r\n },\r\n \"spline\": {\r\n \"lineWidth\": 2,\r\n \"allowPointSelect\": false,\r\n \"crisp\": true,\r\n \"showCheckbox\": false,\r\n \"animation\": {\r\n \"duration\": 1000\r\n },\r\n \"events\": {},\r\n \"marker\": {\r\n \"enabledThreshold\": 2,\r\n \"lineColor\": \"#ffffff\",\r\n \"lineWidth\": 0,\r\n \"radius\": 4,\r\n \"states\": {\r\n \"normal\": {\r\n \"animation\": true\r\n },\r\n \"hover\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"enabled\": true,\r\n \"radiusPlus\": 2,\r\n \"lineWidthPlus\": 1\r\n },\r\n \"select\": {\r\n \"fillColor\": \"#cccccc\",\r\n \"lineColor\": \"#000000\",\r\n \"lineWidth\": 2\r\n }\r\n }\r\n },\r\n \"point\": {\r\n \"events\": {}\r\n },\r\n \"dataLabels\": {\r\n \"animation\": {},\r\n \"align\": \"center\",\r\n \"defer\": true,\r\n \"padding\": 5,\r\n \"style\": {\r\n \"fontSize\": \"11px\",\r\n \"fontWeight\": \"bold\",\r\n \"color\": \"contrast\",\r\n \"textOutline\": \"1px contrast\"\r\n },\r\n \"verticalAlign\": \"bottom\",\r\n \"x\": 0,\r\n \"y\": 0\r\n },\r\n \"cropThreshold\": 300,\r\n \"opacity\": 1,\r\n \"pointRange\": 0,\r\n \"softThreshold\": true,\r\n \"states\": {\r\n \"normal\": {\r\n \"animation\": true\r\n },\r\n \"hover\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"lineWidthPlus\": 1,\r\n \"marker\": {},\r\n \"halo\": {\r\n \"size\": 10,\r\n \"opacity\": 0.25\r\n }\r\n },\r\n \"select\": {\r\n \"animation\": {\r\n \"duration\": 0\r\n }\r\n },\r\n \"inactive\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"opacity\": 0.2\r\n }\r\n },\r\n \"stickyTracking\": true,\r\n \"turboThreshold\": 1000,\r\n \"findNearestPointBy\": \"x\"\r\n },\r\n \"areaspline\": {\r\n \"lineWidth\": 2,\r\n \"allowPointSelect\": false,\r\n \"crisp\": true,\r\n \"showCheckbox\": false,\r\n \"animation\": {\r\n \"duration\": 1000\r\n },\r\n \"events\": {},\r\n \"marker\": {\r\n \"enabledThreshold\": 2,\r\n \"lineColor\": \"#ffffff\",\r\n \"lineWidth\": 0,\r\n \"radius\": 4,\r\n \"states\": {\r\n \"normal\": {\r\n \"animation\": true\r\n },\r\n \"hover\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"enabled\": true,\r\n \"radiusPlus\": 2,\r\n \"lineWidthPlus\": 1\r\n },\r\n \"select\": {\r\n \"fillColor\": \"#cccccc\",\r\n \"lineColor\": \"#000000\",\r\n \"lineWidth\": 2\r\n }\r\n }\r\n },\r\n \"point\": {\r\n \"events\": {}\r\n },\r\n \"dataLabels\": {\r\n \"animation\": {},\r\n \"align\": \"center\",\r\n \"defer\": true,\r\n \"padding\": 5,\r\n \"style\": {\r\n \"fontSize\": \"11px\",\r\n \"fontWeight\": \"bold\",\r\n \"color\": \"contrast\",\r\n \"textOutline\": \"1px contrast\"\r\n },\r\n \"verticalAlign\": \"bottom\",\r\n \"x\": 0,\r\n \"y\": 0\r\n },\r\n \"cropThreshold\": 300,\r\n \"opacity\": 1,\r\n \"pointRange\": 0,\r\n \"softThreshold\": true,\r\n \"states\": {\r\n \"normal\": {\r\n \"animation\": true\r\n },\r\n \"hover\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"lineWidthPlus\": 1,\r\n \"marker\": {},\r\n \"halo\": {\r\n \"size\": 10,\r\n \"opacity\": 0.25\r\n }\r\n },\r\n \"select\": {\r\n \"animation\": {\r\n \"duration\": 0\r\n }\r\n },\r\n \"inactive\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"opacity\": 0.2\r\n }\r\n },\r\n \"stickyTracking\": true,\r\n \"turboThreshold\": 1000,\r\n \"findNearestPointBy\": \"x\",\r\n \"threshold\": 0\r\n },\r\n \"column\": {\r\n \"lineWidth\": 2,\r\n \"allowPointSelect\": false,\r\n \"crisp\": true,\r\n \"showCheckbox\": false,\r\n \"animation\": {\r\n \"duration\": 1000\r\n },\r\n \"events\": {},\r\n \"marker\": null,\r\n \"point\": {\r\n \"events\": {}\r\n },\r\n \"dataLabels\": {\r\n \"animation\": {},\r\n \"defer\": true,\r\n \"padding\": 5,\r\n \"style\": {\r\n \"fontSize\": \"11px\",\r\n \"fontWeight\": \"bold\",\r\n \"color\": \"contrast\",\r\n \"textOutline\": \"1px contrast\"\r\n },\r\n \"x\": 0\r\n },\r\n \"cropThreshold\": 50,\r\n \"opacity\": 1,\r\n \"pointRange\": null,\r\n \"softThreshold\": true,\r\n \"states\": {\r\n \"normal\": {\r\n \"animation\": true\r\n },\r\n \"hover\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"lineWidthPlus\": 1,\r\n \"marker\": {},\r\n \"halo\": false,\r\n \"brightness\": 0.1\r\n },\r\n \"select\": {\r\n \"animation\": {\r\n \"duration\": 0\r\n },\r\n \"color\": \"#cccccc\",\r\n \"borderColor\": \"#000000\"\r\n },\r\n \"inactive\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"opacity\": 0.2\r\n }\r\n },\r\n \"stickyTracking\": false,\r\n \"turboThreshold\": 1000,\r\n \"findNearestPointBy\": \"x\",\r\n \"borderRadius\": 0,\r\n \"centerInCategory\": false,\r\n \"groupPadding\": 0.2,\r\n \"pointPadding\": 0.1,\r\n \"minPointLength\": 0,\r\n \"startFromThreshold\": true,\r\n \"tooltip\": {\r\n \"distance\": 6\r\n },\r\n \"threshold\": 0,\r\n \"borderColor\": \"#ffffff\"\r\n },\r\n \"bar\": {\r\n \"lineWidth\": 2,\r\n \"allowPointSelect\": false,\r\n \"crisp\": true,\r\n \"showCheckbox\": false,\r\n \"animation\": {\r\n \"duration\": 1000\r\n },\r\n \"events\": {},\r\n \"marker\": null,\r\n \"point\": {\r\n \"events\": {}\r\n },\r\n \"dataLabels\": {\r\n \"animation\": {},\r\n \"defer\": true,\r\n \"padding\": 5,\r\n \"style\": {\r\n \"fontSize\": \"11px\",\r\n \"fontWeight\": \"bold\",\r\n \"color\": \"contrast\",\r\n \"textOutline\": \"1px contrast\"\r\n },\r\n \"x\": 0\r\n },\r\n \"cropThreshold\": 50,\r\n \"opacity\": 1,\r\n \"pointRange\": null,\r\n \"softThreshold\": true,\r\n \"states\": {\r\n \"normal\": {\r\n \"animation\": true\r\n },\r\n \"hover\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"lineWidthPlus\": 1,\r\n \"marker\": {},\r\n \"halo\": false,\r\n \"brightness\": 0.1\r\n },\r\n \"select\": {\r\n \"animation\": {\r\n \"duration\": 0\r\n },\r\n \"color\": \"#cccccc\",\r\n \"borderColor\": \"#000000\"\r\n },\r\n \"inactive\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"opacity\": 0.2\r\n }\r\n },\r\n \"stickyTracking\": false,\r\n \"turboThreshold\": 1000,\r\n \"findNearestPointBy\": \"x\",\r\n \"borderRadius\": 0,\r\n \"centerInCategory\": false,\r\n \"groupPadding\": 0.2,\r\n \"pointPadding\": 0.1,\r\n \"minPointLength\": 0,\r\n \"startFromThreshold\": true,\r\n \"tooltip\": {\r\n \"distance\": 6\r\n },\r\n \"threshold\": 0,\r\n \"borderColor\": \"#ffffff\"\r\n },\r\n \"scatter\": {\r\n \"lineWidth\": 0,\r\n \"allowPointSelect\": false,\r\n \"crisp\": true,\r\n \"showCheckbox\": false,\r\n \"animation\": {\r\n \"duration\": 1000\r\n },\r\n \"events\": {},\r\n \"marker\": {\r\n \"enabledThreshold\": 2,\r\n \"lineColor\": \"#ffffff\",\r\n \"lineWidth\": 0,\r\n \"radius\": 4,\r\n \"states\": {\r\n \"normal\": {\r\n \"animation\": true\r\n },\r\n \"hover\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"enabled\": true,\r\n \"radiusPlus\": 2,\r\n \"lineWidthPlus\": 1\r\n },\r\n \"select\": {\r\n \"fillColor\": \"#cccccc\",\r\n \"lineColor\": \"#000000\",\r\n \"lineWidth\": 2\r\n }\r\n },\r\n \"enabled\": true\r\n },\r\n \"point\": {\r\n \"events\": {}\r\n },\r\n \"dataLabels\": {\r\n \"animation\": {},\r\n \"align\": \"center\",\r\n \"defer\": true,\r\n \"padding\": 5,\r\n \"style\": {\r\n \"fontSize\": \"11px\",\r\n \"fontWeight\": \"bold\",\r\n \"color\": \"contrast\",\r\n \"textOutline\": \"1px contrast\"\r\n },\r\n \"verticalAlign\": \"bottom\",\r\n \"x\": 0,\r\n \"y\": 0\r\n },\r\n \"cropThreshold\": 300,\r\n \"opacity\": 1,\r\n \"pointRange\": 0,\r\n \"softThreshold\": true,\r\n \"states\": {\r\n \"normal\": {\r\n \"animation\": true\r\n },\r\n \"hover\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"lineWidthPlus\": 1,\r\n \"marker\": {},\r\n \"halo\": {\r\n \"size\": 10,\r\n \"opacity\": 0.25\r\n }\r\n },\r\n \"select\": {\r\n \"animation\": {\r\n \"duration\": 0\r\n }\r\n },\r\n \"inactive\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"opacity\": 0.2\r\n }\r\n },\r\n \"stickyTracking\": true,\r\n \"turboThreshold\": 1000,\r\n \"findNearestPointBy\": \"xy\",\r\n \"jitter\": {\r\n \"x\": 0,\r\n \"y\": 0\r\n },\r\n \"tooltip\": {\r\n \"headerFormat\": \" {series.name}
\",\r\n \"pointFormat\": \"x: {point.x}
y: {point.y}
\"\r\n }\r\n },\r\n \"pie\": {\r\n \"allowPointSelect\": false,\r\n \"crisp\": true,\r\n \"showCheckbox\": false,\r\n \"animation\": {\r\n \"duration\": 1000\r\n },\r\n \"events\": {},\r\n \"marker\": null,\r\n \"point\": {\r\n \"events\": {}\r\n },\r\n \"dataLabels\": {\r\n \"animation\": {},\r\n \"align\": \"center\",\r\n \"defer\": true,\r\n \"padding\": 5,\r\n \"style\": {\r\n \"fontSize\": \"11px\",\r\n \"fontWeight\": \"bold\",\r\n \"color\": \"contrast\",\r\n \"textOutline\": \"1px contrast\"\r\n },\r\n \"verticalAlign\": \"bottom\",\r\n \"x\": 0,\r\n \"y\": 0,\r\n \"allowOverlap\": true,\r\n \"connectorPadding\": 5,\r\n \"connectorShape\": \"fixedOffset\",\r\n \"crookDistance\": \"70%\",\r\n \"distance\": 30,\r\n \"enabled\": true,\r\n \"softConnector\": true\r\n },\r\n \"cropThreshold\": 300,\r\n \"opacity\": 1,\r\n \"pointRange\": 0,\r\n \"softThreshold\": true,\r\n \"states\": {\r\n \"normal\": {\r\n \"animation\": true\r\n },\r\n \"hover\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"lineWidthPlus\": 1,\r\n \"marker\": {},\r\n \"halo\": {\r\n \"size\": 10,\r\n \"opacity\": 0.25\r\n },\r\n \"brightness\": 0.1\r\n },\r\n \"select\": {\r\n \"animation\": {\r\n \"duration\": 0\r\n }\r\n },\r\n \"inactive\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"opacity\": 0.2\r\n }\r\n },\r\n \"stickyTracking\": false,\r\n \"turboThreshold\": 1000,\r\n \"findNearestPointBy\": \"x\",\r\n \"center\": [\r\n null,\r\n null\r\n ],\r\n \"clip\": false,\r\n \"colorByPoint\": true,\r\n \"ignoreHiddenPoint\": true,\r\n \"inactiveOtherPoints\": true,\r\n \"legendType\": \"point\",\r\n \"size\": null,\r\n \"showInLegend\": false,\r\n \"slicedOffset\": 10,\r\n \"tooltip\": {\r\n \"followPointer\": true\r\n },\r\n \"borderColor\": \"#ffffff\",\r\n \"borderWidth\": 1\r\n },\r\n \"hlc\": {\r\n \"lineWidth\": 1,\r\n \"allowPointSelect\": false,\r\n \"crisp\": true,\r\n \"showCheckbox\": false,\r\n \"animation\": {\r\n \"duration\": 1000\r\n },\r\n \"events\": {},\r\n \"marker\": null,\r\n \"point\": {\r\n \"events\": {}\r\n },\r\n \"dataLabels\": {\r\n \"animation\": {},\r\n \"defer\": true,\r\n \"padding\": 5,\r\n \"style\": {\r\n \"fontSize\": \"11px\",\r\n \"fontWeight\": \"bold\",\r\n \"color\": \"contrast\",\r\n \"textOutline\": \"1px contrast\"\r\n },\r\n \"x\": 0\r\n },\r\n \"cropThreshold\": 50,\r\n \"opacity\": 1,\r\n \"pointRange\": null,\r\n \"softThreshold\": true,\r\n \"states\": {\r\n \"normal\": {\r\n \"animation\": true\r\n },\r\n \"hover\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"lineWidthPlus\": 1,\r\n \"marker\": {},\r\n \"halo\": false,\r\n \"brightness\": 0.1,\r\n \"lineWidth\": 3\r\n },\r\n \"select\": {\r\n \"animation\": {\r\n \"duration\": 0\r\n },\r\n \"color\": \"#cccccc\",\r\n \"borderColor\": \"#000000\"\r\n },\r\n \"inactive\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"opacity\": 0.2\r\n }\r\n },\r\n \"stickyTracking\": true,\r\n \"turboThreshold\": 1000,\r\n \"findNearestPointBy\": \"x\",\r\n \"borderRadius\": 0,\r\n \"centerInCategory\": false,\r\n \"groupPadding\": 0.2,\r\n \"pointPadding\": 0.1,\r\n \"minPointLength\": 0,\r\n \"startFromThreshold\": true,\r\n \"tooltip\": {\r\n \"distance\": 6,\r\n \"pointFormat\": \" {series.name}
High: {point.high}
Low: {point.low}
Close: {point.close}
\"\r\n },\r\n \"threshold\": null,\r\n \"borderColor\": \"#ffffff\"\r\n },\r\n \"ohlc\": {\r\n \"lineWidth\": 1,\r\n \"allowPointSelect\": false,\r\n \"crisp\": true,\r\n \"showCheckbox\": false,\r\n \"animation\": {\r\n \"duration\": 1000\r\n },\r\n \"events\": {},\r\n \"marker\": null,\r\n \"point\": {\r\n \"events\": {}\r\n },\r\n \"dataLabels\": {\r\n \"animation\": {},\r\n \"defer\": true,\r\n \"padding\": 5,\r\n \"style\": {\r\n \"fontSize\": \"11px\",\r\n \"fontWeight\": \"bold\",\r\n \"color\": \"contrast\",\r\n \"textOutline\": \"1px contrast\"\r\n },\r\n \"x\": 0\r\n },\r\n \"cropThreshold\": 50,\r\n \"opacity\": 1,\r\n \"pointRange\": null,\r\n \"softThreshold\": true,\r\n \"states\": {\r\n \"normal\": {\r\n \"animation\": true\r\n },\r\n \"hover\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"lineWidthPlus\": 1,\r\n \"marker\": {},\r\n \"halo\": false,\r\n \"brightness\": 0.1,\r\n \"lineWidth\": 3\r\n },\r\n \"select\": {\r\n \"animation\": {\r\n \"duration\": 0\r\n },\r\n \"color\": \"#cccccc\",\r\n \"borderColor\": \"#000000\"\r\n },\r\n \"inactive\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"opacity\": 0.2\r\n }\r\n },\r\n \"stickyTracking\": true,\r\n \"turboThreshold\": 1000,\r\n \"findNearestPointBy\": \"x\",\r\n \"borderRadius\": 0,\r\n \"centerInCategory\": false,\r\n \"groupPadding\": 0.2,\r\n \"pointPadding\": 0.1,\r\n \"minPointLength\": 0,\r\n \"startFromThreshold\": true,\r\n \"tooltip\": {\r\n \"distance\": 6,\r\n \"pointFormat\": \" {series.name}
Open: {point.open}
High: {point.high}
Low: {point.low}
Close: {point.close}
\"\r\n },\r\n \"threshold\": null,\r\n \"borderColor\": \"#ffffff\"\r\n },\r\n \"lineColor\": \"#000000\",\r\n \"upColor\": \"#ffffff\"\r\n },\r\n \"flags\": {\r\n \"lineWidth\": 1,\r\n \"allowPointSelect\": false,\r\n \"crisp\": true,\r\n \"showCheckbox\": false,\r\n \"animation\": {\r\n \"duration\": 1000\r\n },\r\n \"events\": {},\r\n \"marker\": null,\r\n \"point\": {\r\n \"events\": {}\r\n },\r\n \"dataLabels\": {\r\n \"animation\": {},\r\n \"defer\": true,\r\n \"padding\": 5,\r\n \"style\": {\r\n \"fontSize\": \"11px\",\r\n \"fontWeight\": \"bold\",\r\n \"color\": \"contrast\",\r\n \"textOutline\": \"1px contrast\"\r\n },\r\n \"x\": 0\r\n },\r\n \"cropThreshold\": 50,\r\n \"opacity\": 1,\r\n \"pointRange\": 0,\r\n \"softThreshold\": true,\r\n \"states\": {\r\n \"normal\": {\r\n \"animation\": true\r\n },\r\n \"hover\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"lineWidthPlus\": 1,\r\n \"marker\": {},\r\n \"halo\": false,\r\n \"brightness\": 0.1,\r\n \"lineColor\": \"#000000\",\r\n \"fillColor\": \"#ccd6eb\"\r\n },\r\n \"select\": {\r\n \"animation\": {\r\n \"duration\": 0\r\n },\r\n \"color\": \"#cccccc\",\r\n \"borderColor\": \"#000000\"\r\n },\r\n \"inactive\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"opacity\": 0.2\r\n }\r\n },\r\n \"stickyTracking\": false,\r\n \"turboThreshold\": 1000,\r\n \"findNearestPointBy\": \"x\",\r\n \"borderRadius\": 0,\r\n \"centerInCategory\": false,\r\n \"groupPadding\": 0.2,\r\n \"pointPadding\": 0.1,\r\n \"minPointLength\": 0,\r\n \"startFromThreshold\": true,\r\n \"tooltip\": {\r\n \"distance\": 6,\r\n \"pointFormat\": \"{point.text}\"\r\n },\r\n \"threshold\": null,\r\n \"borderColor\": \"#ffffff\",\r\n \"allowOverlapX\": false,\r\n \"shape\": \"flag\",\r\n \"stackDistance\": 12,\r\n \"textAlign\": \"center\",\r\n \"y\": -30,\r\n \"fillColor\": \"#ffffff\",\r\n \"style\": {\r\n \"fontSize\": \"11px\",\r\n \"fontWeight\": \"bold\"\r\n }\r\n },\r\n \"arearange\": {\r\n \"lineWidth\": 1,\r\n \"allowPointSelect\": false,\r\n \"crisp\": true,\r\n \"showCheckbox\": false,\r\n \"animation\": {\r\n \"duration\": 1000\r\n },\r\n \"events\": {},\r\n \"marker\": {\r\n \"enabledThreshold\": 2,\r\n \"lineColor\": \"#ffffff\",\r\n \"lineWidth\": 0,\r\n \"radius\": 4,\r\n \"states\": {\r\n \"normal\": {\r\n \"animation\": true\r\n },\r\n \"hover\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"enabled\": true,\r\n \"radiusPlus\": 2,\r\n \"lineWidthPlus\": 1\r\n },\r\n \"select\": {\r\n \"fillColor\": \"#cccccc\",\r\n \"lineColor\": \"#000000\",\r\n \"lineWidth\": 2\r\n }\r\n }\r\n },\r\n \"point\": {\r\n \"events\": {}\r\n },\r\n \"dataLabels\": {\r\n \"animation\": {},\r\n \"defer\": true,\r\n \"padding\": 5,\r\n \"style\": {\r\n \"fontSize\": \"11px\",\r\n \"fontWeight\": \"bold\",\r\n \"color\": \"contrast\",\r\n \"textOutline\": \"1px contrast\"\r\n },\r\n \"x\": 0,\r\n \"y\": 0,\r\n \"xLow\": 0,\r\n \"xHigh\": 0,\r\n \"yLow\": 0,\r\n \"yHigh\": 0\r\n },\r\n \"cropThreshold\": 300,\r\n \"opacity\": 1,\r\n \"pointRange\": 0,\r\n \"softThreshold\": true,\r\n \"states\": {\r\n \"normal\": {\r\n \"animation\": true\r\n },\r\n \"hover\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"lineWidthPlus\": 1,\r\n \"marker\": {},\r\n \"halo\": {\r\n \"size\": 10,\r\n \"opacity\": 0.25\r\n }\r\n },\r\n \"select\": {\r\n \"animation\": {\r\n \"duration\": 0\r\n }\r\n },\r\n \"inactive\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"opacity\": 0.2\r\n }\r\n },\r\n \"stickyTracking\": true,\r\n \"turboThreshold\": 1000,\r\n \"findNearestPointBy\": \"x\",\r\n \"threshold\": null,\r\n \"tooltip\": {\r\n \"pointFormat\": \" {series.name}: {point.low} - {point.high}
\"\r\n },\r\n \"trackByArea\": true\r\n },\r\n \"areasplinerange\": {\r\n \"lineWidth\": 1,\r\n \"allowPointSelect\": false,\r\n \"crisp\": true,\r\n \"showCheckbox\": false,\r\n \"animation\": {\r\n \"duration\": 1000\r\n },\r\n \"events\": {},\r\n \"marker\": {\r\n \"enabledThreshold\": 2,\r\n \"lineColor\": \"#ffffff\",\r\n \"lineWidth\": 0,\r\n \"radius\": 4,\r\n \"states\": {\r\n \"normal\": {\r\n \"animation\": true\r\n },\r\n \"hover\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"enabled\": true,\r\n \"radiusPlus\": 2,\r\n \"lineWidthPlus\": 1\r\n },\r\n \"select\": {\r\n \"fillColor\": \"#cccccc\",\r\n \"lineColor\": \"#000000\",\r\n \"lineWidth\": 2\r\n }\r\n }\r\n },\r\n \"point\": {\r\n \"events\": {}\r\n },\r\n \"dataLabels\": {\r\n \"animation\": {},\r\n \"defer\": true,\r\n \"padding\": 5,\r\n \"style\": {\r\n \"fontSize\": \"11px\",\r\n \"fontWeight\": \"bold\",\r\n \"color\": \"contrast\",\r\n \"textOutline\": \"1px contrast\"\r\n },\r\n \"x\": 0,\r\n \"y\": 0,\r\n \"xLow\": 0,\r\n \"xHigh\": 0,\r\n \"yLow\": 0,\r\n \"yHigh\": 0\r\n },\r\n \"cropThreshold\": 300,\r\n \"opacity\": 1,\r\n \"pointRange\": 0,\r\n \"softThreshold\": true,\r\n \"states\": {\r\n \"normal\": {\r\n \"animation\": true\r\n },\r\n \"hover\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"lineWidthPlus\": 1,\r\n \"marker\": {},\r\n \"halo\": {\r\n \"size\": 10,\r\n \"opacity\": 0.25\r\n }\r\n },\r\n \"select\": {\r\n \"animation\": {\r\n \"duration\": 0\r\n }\r\n },\r\n \"inactive\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"opacity\": 0.2\r\n }\r\n },\r\n \"stickyTracking\": true,\r\n \"turboThreshold\": 1000,\r\n \"findNearestPointBy\": \"x\",\r\n \"threshold\": null,\r\n \"tooltip\": {\r\n \"pointFormat\": \" {series.name}: {point.low} - {point.high}
\"\r\n },\r\n \"trackByArea\": true\r\n },\r\n \"boxplot\": {\r\n \"lineWidth\": 1,\r\n \"allowPointSelect\": false,\r\n \"crisp\": true,\r\n \"showCheckbox\": false,\r\n \"animation\": {\r\n \"duration\": 1000\r\n },\r\n \"events\": {},\r\n \"marker\": null,\r\n \"point\": {\r\n \"events\": {}\r\n },\r\n \"dataLabels\": {\r\n \"animation\": {},\r\n \"defer\": true,\r\n \"padding\": 5,\r\n \"style\": {\r\n \"fontSize\": \"11px\",\r\n \"fontWeight\": \"bold\",\r\n \"color\": \"contrast\",\r\n \"textOutline\": \"1px contrast\"\r\n },\r\n \"x\": 0\r\n },\r\n \"cropThreshold\": 50,\r\n \"opacity\": 1,\r\n \"pointRange\": null,\r\n \"softThreshold\": true,\r\n \"states\": {\r\n \"normal\": {\r\n \"animation\": true\r\n },\r\n \"hover\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"lineWidthPlus\": 1,\r\n \"marker\": {},\r\n \"halo\": false,\r\n \"brightness\": 0.1\r\n },\r\n \"select\": {\r\n \"animation\": {\r\n \"duration\": 0\r\n },\r\n \"color\": \"#cccccc\",\r\n \"borderColor\": \"#000000\"\r\n },\r\n \"inactive\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"opacity\": 0.2\r\n }\r\n },\r\n \"stickyTracking\": false,\r\n \"turboThreshold\": 1000,\r\n \"findNearestPointBy\": \"x\",\r\n \"borderRadius\": 0,\r\n \"centerInCategory\": false,\r\n \"groupPadding\": 0.2,\r\n \"pointPadding\": 0.1,\r\n \"minPointLength\": 0,\r\n \"startFromThreshold\": true,\r\n \"tooltip\": {\r\n \"distance\": 6,\r\n \"pointFormat\": \" {series.name}
Maximum: {point.high}
Upper quartile: {point.q3}
Median: {point.median}
Lower quartile: {point.q1}
Minimum: {point.low}
\"\r\n },\r\n \"threshold\": null,\r\n \"borderColor\": \"#ffffff\",\r\n \"whiskerLength\": \"50%\",\r\n \"fillColor\": \"#ffffff\",\r\n \"medianWidth\": 2,\r\n \"whiskerWidth\": 2\r\n },\r\n \"bubble\": {\r\n \"lineWidth\": 0,\r\n \"allowPointSelect\": false,\r\n \"crisp\": true,\r\n \"showCheckbox\": false,\r\n \"animation\": {\r\n \"duration\": 1000\r\n },\r\n \"events\": {},\r\n \"marker\": {\r\n \"enabledThreshold\": 2,\r\n \"lineColor\": null,\r\n \"lineWidth\": 1,\r\n \"radius\": null,\r\n \"states\": {\r\n \"normal\": {\r\n \"animation\": true\r\n },\r\n \"hover\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"enabled\": true,\r\n \"radiusPlus\": 0,\r\n \"lineWidthPlus\": 1\r\n },\r\n \"select\": {\r\n \"fillColor\": \"#cccccc\",\r\n \"lineColor\": \"#000000\",\r\n \"lineWidth\": 2\r\n }\r\n },\r\n \"enabled\": true,\r\n \"fillOpacity\": 0.5,\r\n \"symbol\": \"circle\"\r\n },\r\n \"point\": {\r\n \"events\": {}\r\n },\r\n \"dataLabels\": {\r\n \"animation\": {},\r\n \"align\": \"center\",\r\n \"defer\": true,\r\n \"padding\": 5,\r\n \"style\": {\r\n \"fontSize\": \"11px\",\r\n \"fontWeight\": \"bold\",\r\n \"color\": \"contrast\",\r\n \"textOutline\": \"1px contrast\"\r\n },\r\n \"verticalAlign\": \"middle\",\r\n \"x\": 0,\r\n \"y\": 0,\r\n \"inside\": true\r\n },\r\n \"cropThreshold\": 300,\r\n \"opacity\": 1,\r\n \"pointRange\": 0,\r\n \"softThreshold\": false,\r\n \"states\": {\r\n \"normal\": {\r\n \"animation\": true\r\n },\r\n \"hover\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"lineWidthPlus\": 1,\r\n \"marker\": {},\r\n \"halo\": {\r\n \"size\": 5,\r\n \"opacity\": 0.25\r\n }\r\n },\r\n \"select\": {\r\n \"animation\": {\r\n \"duration\": 0\r\n }\r\n },\r\n \"inactive\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"opacity\": 0.2\r\n }\r\n },\r\n \"stickyTracking\": true,\r\n \"turboThreshold\": 0,\r\n \"findNearestPointBy\": \"xy\",\r\n \"jitter\": {\r\n \"x\": 0,\r\n \"y\": 0\r\n },\r\n \"tooltip\": {\r\n \"headerFormat\": \" {series.name}
\",\r\n \"pointFormat\": \"({point.x}, {point.y}), Size: {point.z}\"\r\n },\r\n \"animationLimit\": 250,\r\n \"minSize\": 8,\r\n \"maxSize\": \"20%\",\r\n \"zThreshold\": 0,\r\n \"zoneAxis\": \"z\"\r\n },\r\n \"columnrange\": {\r\n \"lineWidth\": 1,\r\n \"allowPointSelect\": false,\r\n \"crisp\": true,\r\n \"showCheckbox\": false,\r\n \"animation\": {\r\n \"duration\": 1000\r\n },\r\n \"events\": {},\r\n \"marker\": null,\r\n \"point\": {\r\n \"events\": {}\r\n },\r\n \"dataLabels\": {\r\n \"animation\": {},\r\n \"defer\": true,\r\n \"padding\": 5,\r\n \"style\": {\r\n \"fontSize\": \"11px\",\r\n \"fontWeight\": \"bold\",\r\n \"color\": \"contrast\",\r\n \"textOutline\": \"1px contrast\"\r\n },\r\n \"x\": 0,\r\n \"y\": 0,\r\n \"xLow\": 0,\r\n \"xHigh\": 0,\r\n \"yLow\": 0,\r\n \"yHigh\": 0\r\n },\r\n \"cropThreshold\": 300,\r\n \"opacity\": 1,\r\n \"pointRange\": null,\r\n \"softThreshold\": true,\r\n \"states\": {\r\n \"normal\": {\r\n \"animation\": true\r\n },\r\n \"hover\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"lineWidthPlus\": 1,\r\n \"marker\": {},\r\n \"halo\": false,\r\n \"brightness\": 0.1\r\n },\r\n \"select\": {\r\n \"animation\": {\r\n \"duration\": 0\r\n },\r\n \"color\": \"#cccccc\",\r\n \"borderColor\": \"#000000\"\r\n },\r\n \"inactive\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"opacity\": 0.2\r\n }\r\n },\r\n \"stickyTracking\": true,\r\n \"turboThreshold\": 1000,\r\n \"findNearestPointBy\": \"x\",\r\n \"borderRadius\": 0,\r\n \"centerInCategory\": false,\r\n \"groupPadding\": 0.2,\r\n \"pointPadding\": 0.1,\r\n \"minPointLength\": 0,\r\n \"startFromThreshold\": true,\r\n \"tooltip\": {\r\n \"distance\": 6,\r\n \"pointFormat\": \" {series.name}: {point.low} - {point.high}
\"\r\n },\r\n \"threshold\": null,\r\n \"borderColor\": \"#ffffff\",\r\n \"trackByArea\": true\r\n },\r\n \"columnpyramid\": {\r\n \"lineWidth\": 2,\r\n \"allowPointSelect\": false,\r\n \"crisp\": true,\r\n \"showCheckbox\": false,\r\n \"animation\": {\r\n \"duration\": 1000\r\n },\r\n \"events\": {},\r\n \"marker\": null,\r\n \"point\": {\r\n \"events\": {}\r\n },\r\n \"dataLabels\": {\r\n \"animation\": {},\r\n \"defer\": true,\r\n \"padding\": 5,\r\n \"style\": {\r\n \"fontSize\": \"11px\",\r\n \"fontWeight\": \"bold\",\r\n \"color\": \"contrast\",\r\n \"textOutline\": \"1px contrast\"\r\n },\r\n \"x\": 0\r\n },\r\n \"cropThreshold\": 50,\r\n \"opacity\": 1,\r\n \"pointRange\": null,\r\n \"softThreshold\": true,\r\n \"states\": {\r\n \"normal\": {\r\n \"animation\": true\r\n },\r\n \"hover\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"lineWidthPlus\": 1,\r\n \"marker\": {},\r\n \"halo\": false,\r\n \"brightness\": 0.1\r\n },\r\n \"select\": {\r\n \"animation\": {\r\n \"duration\": 0\r\n },\r\n \"color\": \"#cccccc\",\r\n \"borderColor\": \"#000000\"\r\n },\r\n \"inactive\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"opacity\": 0.2\r\n }\r\n },\r\n \"stickyTracking\": false,\r\n \"turboThreshold\": 1000,\r\n \"findNearestPointBy\": \"x\",\r\n \"borderRadius\": 0,\r\n \"centerInCategory\": false,\r\n \"groupPadding\": 0.2,\r\n \"pointPadding\": 0.1,\r\n \"minPointLength\": 0,\r\n \"startFromThreshold\": true,\r\n \"tooltip\": {\r\n \"distance\": 6\r\n },\r\n \"threshold\": 0,\r\n \"borderColor\": \"#ffffff\"\r\n },\r\n \"errorbar\": {\r\n \"lineWidth\": 1,\r\n \"allowPointSelect\": false,\r\n \"crisp\": true,\r\n \"showCheckbox\": false,\r\n \"animation\": {\r\n \"duration\": 1000\r\n },\r\n \"events\": {},\r\n \"marker\": null,\r\n \"point\": {\r\n \"events\": {}\r\n },\r\n \"dataLabels\": {\r\n \"animation\": {},\r\n \"defer\": true,\r\n \"padding\": 5,\r\n \"style\": {\r\n \"fontSize\": \"11px\",\r\n \"fontWeight\": \"bold\",\r\n \"color\": \"contrast\",\r\n \"textOutline\": \"1px contrast\"\r\n },\r\n \"x\": 0\r\n },\r\n \"cropThreshold\": 50,\r\n \"opacity\": 1,\r\n \"pointRange\": null,\r\n \"softThreshold\": true,\r\n \"states\": {\r\n \"normal\": {\r\n \"animation\": true\r\n },\r\n \"hover\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"lineWidthPlus\": 1,\r\n \"marker\": {},\r\n \"halo\": false,\r\n \"brightness\": 0.1\r\n },\r\n \"select\": {\r\n \"animation\": {\r\n \"duration\": 0\r\n },\r\n \"color\": \"#cccccc\",\r\n \"borderColor\": \"#000000\"\r\n },\r\n \"inactive\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"opacity\": 0.2\r\n }\r\n },\r\n \"stickyTracking\": false,\r\n \"turboThreshold\": 1000,\r\n \"findNearestPointBy\": \"x\",\r\n \"borderRadius\": 0,\r\n \"centerInCategory\": false,\r\n \"groupPadding\": 0.2,\r\n \"pointPadding\": 0.1,\r\n \"minPointLength\": 0,\r\n \"startFromThreshold\": true,\r\n \"tooltip\": {\r\n \"distance\": 6,\r\n \"pointFormat\": \" {series.name}: {point.low} - {point.high}
\"\r\n },\r\n \"threshold\": null,\r\n \"borderColor\": \"#ffffff\",\r\n \"whiskerLength\": \"50%\",\r\n \"fillColor\": \"#ffffff\",\r\n \"medianWidth\": 2,\r\n \"whiskerWidth\": null,\r\n \"color\": \"#000000\",\r\n \"grouping\": false,\r\n \"linkedTo\": \":previous\"\r\n },\r\n \"gauge\": {\r\n \"lineWidth\": 2,\r\n \"allowPointSelect\": false,\r\n \"crisp\": true,\r\n \"showCheckbox\": false,\r\n \"animation\": {\r\n \"duration\": 1000\r\n },\r\n \"events\": {},\r\n \"marker\": {\r\n \"enabledThreshold\": 2,\r\n \"lineColor\": \"#ffffff\",\r\n \"lineWidth\": 0,\r\n \"radius\": 4,\r\n \"states\": {\r\n \"normal\": {\r\n \"animation\": true\r\n },\r\n \"hover\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"enabled\": true,\r\n \"radiusPlus\": 2,\r\n \"lineWidthPlus\": 1\r\n },\r\n \"select\": {\r\n \"fillColor\": \"#cccccc\",\r\n \"lineColor\": \"#000000\",\r\n \"lineWidth\": 2\r\n }\r\n }\r\n },\r\n \"point\": {\r\n \"events\": {}\r\n },\r\n \"dataLabels\": {\r\n \"animation\": {},\r\n \"align\": \"center\",\r\n \"defer\": false,\r\n \"padding\": 5,\r\n \"style\": {\r\n \"fontSize\": \"11px\",\r\n \"fontWeight\": \"bold\",\r\n \"color\": \"contrast\",\r\n \"textOutline\": \"1px contrast\"\r\n },\r\n \"verticalAlign\": \"top\",\r\n \"x\": 0,\r\n \"y\": 15,\r\n \"borderColor\": \"#cccccc\",\r\n \"borderRadius\": 3,\r\n \"borderWidth\": 1,\r\n \"crop\": false,\r\n \"enabled\": true,\r\n \"zIndex\": 2\r\n },\r\n \"cropThreshold\": 300,\r\n \"opacity\": 1,\r\n \"pointRange\": 0,\r\n \"softThreshold\": true,\r\n \"states\": {\r\n \"normal\": {\r\n \"animation\": true\r\n },\r\n \"hover\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"lineWidthPlus\": 1,\r\n \"marker\": {},\r\n \"halo\": {\r\n \"size\": 10,\r\n \"opacity\": 0.25\r\n }\r\n },\r\n \"select\": {\r\n \"animation\": {\r\n \"duration\": 0\r\n }\r\n },\r\n \"inactive\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"opacity\": 0.2\r\n }\r\n },\r\n \"stickyTracking\": true,\r\n \"turboThreshold\": 1000,\r\n \"findNearestPointBy\": \"x\",\r\n \"dial\": {},\r\n \"pivot\": {},\r\n \"tooltip\": {\r\n \"headerFormat\": \"\"\r\n },\r\n \"showInLegend\": false\r\n },\r\n \"packedbubble\": {\r\n \"lineWidth\": 0,\r\n \"allowPointSelect\": false,\r\n \"crisp\": false,\r\n \"showCheckbox\": false,\r\n \"animation\": {\r\n \"duration\": 1000\r\n },\r\n \"events\": {},\r\n \"marker\": {\r\n \"enabledThreshold\": 2,\r\n \"lineColor\": null,\r\n \"lineWidth\": 1,\r\n \"radius\": null,\r\n \"states\": {\r\n \"normal\": {\r\n \"animation\": true\r\n },\r\n \"hover\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"enabled\": true,\r\n \"radiusPlus\": 0,\r\n \"lineWidthPlus\": 1\r\n },\r\n \"select\": {\r\n \"fillColor\": \"#cccccc\",\r\n \"lineColor\": \"#000000\",\r\n \"lineWidth\": 2\r\n }\r\n },\r\n \"enabled\": true,\r\n \"fillOpacity\": 0.5,\r\n \"symbol\": \"circle\"\r\n },\r\n \"point\": {\r\n \"events\": {}\r\n },\r\n \"dataLabels\": {\r\n \"animation\": {},\r\n \"align\": \"center\",\r\n \"defer\": true,\r\n \"padding\": 0,\r\n \"style\": {\r\n \"fontSize\": \"11px\",\r\n \"fontWeight\": \"bold\",\r\n \"color\": \"contrast\",\r\n \"textOutline\": \"1px contrast\",\r\n \"transition\": \"opacity 2000ms\"\r\n },\r\n \"verticalAlign\": \"middle\",\r\n \"x\": 0,\r\n \"y\": 0,\r\n \"inside\": true,\r\n \"parentNodeTextPath\": {\r\n \"enabled\": true\r\n }\r\n },\r\n \"cropThreshold\": 300,\r\n \"opacity\": 1,\r\n \"pointRange\": 0,\r\n \"softThreshold\": false,\r\n \"states\": {\r\n \"normal\": {\r\n \"animation\": true\r\n },\r\n \"hover\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"lineWidthPlus\": 1,\r\n \"marker\": {},\r\n \"halo\": {\r\n \"size\": 5,\r\n \"opacity\": 0.25\r\n }\r\n },\r\n \"select\": {\r\n \"animation\": {\r\n \"duration\": 0\r\n }\r\n },\r\n \"inactive\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"opacity\": 0.2\r\n }\r\n },\r\n \"stickyTracking\": true,\r\n \"turboThreshold\": 0,\r\n \"findNearestPointBy\": \"xy\",\r\n \"jitter\": {\r\n \"x\": 0,\r\n \"y\": 0\r\n },\r\n \"tooltip\": {\r\n \"headerFormat\": \" {series.name}
\",\r\n \"pointFormat\": \"Value: {point.value}\"\r\n },\r\n \"animationLimit\": 250,\r\n \"minSize\": \"10%\",\r\n \"maxSize\": \"50%\",\r\n \"zThreshold\": 0,\r\n \"zoneAxis\": \"y\",\r\n \"sizeBy\": \"area\",\r\n \"draggable\": true,\r\n \"useSimulation\": true,\r\n \"parentNode\": {\r\n \"allowPointSelect\": false\r\n },\r\n \"layoutAlgorithm\": {\r\n \"initialPositions\": \"circle\",\r\n \"initialPositionRadius\": 20,\r\n \"bubblePadding\": 5,\r\n \"parentNodeLimit\": false,\r\n \"seriesInteraction\": true,\r\n \"dragBetweenSeries\": false,\r\n \"parentNodeOptions\": {\r\n \"maxIterations\": 400,\r\n \"gravitationalConstant\": 0.03,\r\n \"maxSpeed\": 50,\r\n \"initialPositionRadius\": 100,\r\n \"seriesInteraction\": true,\r\n \"marker\": {\r\n \"fillColor\": null,\r\n \"fillOpacity\": 1,\r\n \"lineWidth\": null,\r\n \"lineColor\": null,\r\n \"symbol\": \"circle\"\r\n }\r\n },\r\n \"enableSimulation\": true,\r\n \"type\": \"packedbubble\",\r\n \"integration\": \"packedbubble\",\r\n \"maxIterations\": 1000,\r\n \"splitSeries\": false,\r\n \"maxSpeed\": 5,\r\n \"gravitationalConstant\": 0.01,\r\n \"friction\": -0.981\r\n }\r\n },\r\n \"polygon\": {\r\n \"lineWidth\": 0,\r\n \"allowPointSelect\": false,\r\n \"crisp\": true,\r\n \"showCheckbox\": false,\r\n \"animation\": {\r\n \"duration\": 1000\r\n },\r\n \"events\": {},\r\n \"marker\": {\r\n \"enabledThreshold\": 2,\r\n \"lineColor\": \"#ffffff\",\r\n \"lineWidth\": 0,\r\n \"radius\": 4,\r\n \"states\": {\r\n \"normal\": {\r\n \"animation\": true\r\n },\r\n \"hover\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"enabled\": false,\r\n \"radiusPlus\": 2,\r\n \"lineWidthPlus\": 1\r\n },\r\n \"select\": {\r\n \"fillColor\": \"#cccccc\",\r\n \"lineColor\": \"#000000\",\r\n \"lineWidth\": 2\r\n }\r\n },\r\n \"enabled\": false\r\n },\r\n \"point\": {\r\n \"events\": {}\r\n },\r\n \"dataLabels\": {\r\n \"animation\": {},\r\n \"align\": \"center\",\r\n \"defer\": true,\r\n \"padding\": 5,\r\n \"style\": {\r\n \"fontSize\": \"11px\",\r\n \"fontWeight\": \"bold\",\r\n \"color\": \"contrast\",\r\n \"textOutline\": \"1px contrast\"\r\n },\r\n \"verticalAlign\": \"bottom\",\r\n \"x\": 0,\r\n \"y\": 0\r\n },\r\n \"cropThreshold\": 300,\r\n \"opacity\": 1,\r\n \"pointRange\": 0,\r\n \"softThreshold\": true,\r\n \"states\": {\r\n \"normal\": {\r\n \"animation\": true\r\n },\r\n \"hover\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"lineWidthPlus\": 1,\r\n \"marker\": {},\r\n \"halo\": {\r\n \"size\": 10,\r\n \"opacity\": 0.25\r\n }\r\n },\r\n \"select\": {\r\n \"animation\": {\r\n \"duration\": 0\r\n }\r\n },\r\n \"inactive\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"opacity\": 0.2\r\n }\r\n },\r\n \"stickyTracking\": false,\r\n \"turboThreshold\": 1000,\r\n \"findNearestPointBy\": \"xy\",\r\n \"jitter\": {\r\n \"x\": 0,\r\n \"y\": 0\r\n },\r\n \"tooltip\": {\r\n \"headerFormat\": \" {series.name}
\",\r\n \"pointFormat\": \"\",\r\n \"followPointer\": true\r\n },\r\n \"trackByArea\": true\r\n },\r\n \"waterfall\": {\r\n \"lineWidth\": 1,\r\n \"allowPointSelect\": false,\r\n \"crisp\": true,\r\n \"showCheckbox\": false,\r\n \"animation\": {\r\n \"duration\": 1000\r\n },\r\n \"events\": {},\r\n \"marker\": null,\r\n \"point\": {\r\n \"events\": {}\r\n },\r\n \"dataLabels\": {\r\n \"animation\": {},\r\n \"defer\": true,\r\n \"padding\": 5,\r\n \"style\": {\r\n \"fontSize\": \"11px\",\r\n \"fontWeight\": \"bold\",\r\n \"color\": \"contrast\",\r\n \"textOutline\": \"1px contrast\"\r\n },\r\n \"x\": 0,\r\n \"inside\": true\r\n },\r\n \"cropThreshold\": 50,\r\n \"opacity\": 1,\r\n \"pointRange\": null,\r\n \"softThreshold\": true,\r\n \"states\": {\r\n \"normal\": {\r\n \"animation\": true\r\n },\r\n \"hover\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"lineWidthPlus\": 0,\r\n \"marker\": {},\r\n \"halo\": false,\r\n \"brightness\": 0.1\r\n },\r\n \"select\": {\r\n \"animation\": {\r\n \"duration\": 0\r\n },\r\n \"color\": \"#cccccc\",\r\n \"borderColor\": \"#000000\"\r\n },\r\n \"inactive\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"opacity\": 0.2\r\n }\r\n },\r\n \"stickyTracking\": false,\r\n \"turboThreshold\": 1000,\r\n \"findNearestPointBy\": \"x\",\r\n \"borderRadius\": 0,\r\n \"centerInCategory\": false,\r\n \"groupPadding\": 0.2,\r\n \"pointPadding\": 0.1,\r\n \"minPointLength\": 0,\r\n \"startFromThreshold\": true,\r\n \"tooltip\": {\r\n \"distance\": 6\r\n },\r\n \"threshold\": 0,\r\n \"borderColor\": \"#333333\",\r\n \"lineColor\": \"#333333\",\r\n \"dashStyle\": \"Dot\"\r\n },\r\n \"sma\": {\r\n \"lineWidth\": 2,\r\n \"allowPointSelect\": false,\r\n \"crisp\": true,\r\n \"showCheckbox\": false,\r\n \"animation\": {\r\n \"duration\": 1000\r\n },\r\n \"events\": {},\r\n \"marker\": {\r\n \"enabledThreshold\": 2,\r\n \"lineColor\": \"#ffffff\",\r\n \"lineWidth\": 0,\r\n \"radius\": 4,\r\n \"states\": {\r\n \"normal\": {\r\n \"animation\": true\r\n },\r\n \"hover\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"enabled\": true,\r\n \"radiusPlus\": 2,\r\n \"lineWidthPlus\": 1\r\n },\r\n \"select\": {\r\n \"fillColor\": \"#cccccc\",\r\n \"lineColor\": \"#000000\",\r\n \"lineWidth\": 2\r\n }\r\n }\r\n },\r\n \"point\": {\r\n \"events\": {}\r\n },\r\n \"dataLabels\": {\r\n \"animation\": {},\r\n \"align\": \"center\",\r\n \"defer\": true,\r\n \"padding\": 5,\r\n \"style\": {\r\n \"fontSize\": \"11px\",\r\n \"fontWeight\": \"bold\",\r\n \"color\": \"contrast\",\r\n \"textOutline\": \"1px contrast\"\r\n },\r\n \"verticalAlign\": \"bottom\",\r\n \"x\": 0,\r\n \"y\": 0\r\n },\r\n \"cropThreshold\": 300,\r\n \"opacity\": 1,\r\n \"pointRange\": 0,\r\n \"softThreshold\": true,\r\n \"states\": {\r\n \"normal\": {\r\n \"animation\": true\r\n },\r\n \"hover\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"lineWidthPlus\": 1,\r\n \"marker\": {},\r\n \"halo\": {\r\n \"size\": 10,\r\n \"opacity\": 0.25\r\n }\r\n },\r\n \"select\": {\r\n \"animation\": {\r\n \"duration\": 0\r\n }\r\n },\r\n \"inactive\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"opacity\": 0.2\r\n }\r\n },\r\n \"stickyTracking\": true,\r\n \"turboThreshold\": 1000,\r\n \"findNearestPointBy\": \"x\",\r\n \"tooltip\": {\r\n \"valueDecimals\": 4\r\n },\r\n \"compareToMain\": false,\r\n \"params\": {\r\n \"index\": 3,\r\n \"period\": 14\r\n }\r\n },\r\n \"ema\": {\r\n \"lineWidth\": 2,\r\n \"allowPointSelect\": false,\r\n \"crisp\": true,\r\n \"showCheckbox\": false,\r\n \"animation\": {\r\n \"duration\": 1000\r\n },\r\n \"events\": {},\r\n \"marker\": {\r\n \"enabledThreshold\": 2,\r\n \"lineColor\": \"#ffffff\",\r\n \"lineWidth\": 0,\r\n \"radius\": 4,\r\n \"states\": {\r\n \"normal\": {\r\n \"animation\": true\r\n },\r\n \"hover\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"enabled\": true,\r\n \"radiusPlus\": 2,\r\n \"lineWidthPlus\": 1\r\n },\r\n \"select\": {\r\n \"fillColor\": \"#cccccc\",\r\n \"lineColor\": \"#000000\",\r\n \"lineWidth\": 2\r\n }\r\n }\r\n },\r\n \"point\": {\r\n \"events\": {}\r\n },\r\n \"dataLabels\": {\r\n \"animation\": {},\r\n \"align\": \"center\",\r\n \"defer\": true,\r\n \"padding\": 5,\r\n \"style\": {\r\n \"fontSize\": \"11px\",\r\n \"fontWeight\": \"bold\",\r\n \"color\": \"contrast\",\r\n \"textOutline\": \"1px contrast\"\r\n },\r\n \"verticalAlign\": \"bottom\",\r\n \"x\": 0,\r\n \"y\": 0\r\n },\r\n \"cropThreshold\": 300,\r\n \"opacity\": 1,\r\n \"pointRange\": 0,\r\n \"softThreshold\": true,\r\n \"states\": {\r\n \"normal\": {\r\n \"animation\": true\r\n },\r\n \"hover\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"lineWidthPlus\": 1,\r\n \"marker\": {},\r\n \"halo\": {\r\n \"size\": 10,\r\n \"opacity\": 0.25\r\n }\r\n },\r\n \"select\": {\r\n \"animation\": {\r\n \"duration\": 0\r\n }\r\n },\r\n \"inactive\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"opacity\": 0.2\r\n }\r\n },\r\n \"stickyTracking\": true,\r\n \"turboThreshold\": 1000,\r\n \"findNearestPointBy\": \"x\",\r\n \"tooltip\": {\r\n \"valueDecimals\": 4\r\n },\r\n \"compareToMain\": false,\r\n \"params\": {\r\n \"index\": 3,\r\n \"period\": 9\r\n }\r\n },\r\n \"ad\": {\r\n \"lineWidth\": 2,\r\n \"allowPointSelect\": false,\r\n \"crisp\": true,\r\n \"showCheckbox\": false,\r\n \"animation\": {\r\n \"duration\": 1000\r\n },\r\n \"events\": {},\r\n \"marker\": {\r\n \"enabledThreshold\": 2,\r\n \"lineColor\": \"#ffffff\",\r\n \"lineWidth\": 0,\r\n \"radius\": 4,\r\n \"states\": {\r\n \"normal\": {\r\n \"animation\": true\r\n },\r\n \"hover\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"enabled\": true,\r\n \"radiusPlus\": 2,\r\n \"lineWidthPlus\": 1\r\n },\r\n \"select\": {\r\n \"fillColor\": \"#cccccc\",\r\n \"lineColor\": \"#000000\",\r\n \"lineWidth\": 2\r\n }\r\n }\r\n },\r\n \"point\": {\r\n \"events\": {}\r\n },\r\n \"dataLabels\": {\r\n \"animation\": {},\r\n \"align\": \"center\",\r\n \"defer\": true,\r\n \"padding\": 5,\r\n \"style\": {\r\n \"fontSize\": \"11px\",\r\n \"fontWeight\": \"bold\",\r\n \"color\": \"contrast\",\r\n \"textOutline\": \"1px contrast\"\r\n },\r\n \"verticalAlign\": \"bottom\",\r\n \"x\": 0,\r\n \"y\": 0\r\n },\r\n \"cropThreshold\": 300,\r\n \"opacity\": 1,\r\n \"pointRange\": 0,\r\n \"softThreshold\": true,\r\n \"states\": {\r\n \"normal\": {\r\n \"animation\": true\r\n },\r\n \"hover\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"lineWidthPlus\": 1,\r\n \"marker\": {},\r\n \"halo\": {\r\n \"size\": 10,\r\n \"opacity\": 0.25\r\n }\r\n },\r\n \"select\": {\r\n \"animation\": {\r\n \"duration\": 0\r\n }\r\n },\r\n \"inactive\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"opacity\": 0.2\r\n }\r\n },\r\n \"stickyTracking\": true,\r\n \"turboThreshold\": 1000,\r\n \"findNearestPointBy\": \"x\",\r\n \"tooltip\": {\r\n \"valueDecimals\": 4\r\n },\r\n \"compareToMain\": false,\r\n \"params\": {\r\n \"period\": 14,\r\n \"volumeSeriesID\": \"volume\"\r\n }\r\n },\r\n \"ao\": {\r\n \"lineWidth\": 2,\r\n \"allowPointSelect\": false,\r\n \"crisp\": false,\r\n \"showCheckbox\": false,\r\n \"animation\": {\r\n \"duration\": 1000\r\n },\r\n \"events\": {},\r\n \"marker\": {\r\n \"enabledThreshold\": 2,\r\n \"lineColor\": \"#ffffff\",\r\n \"lineWidth\": 0,\r\n \"radius\": 4,\r\n \"states\": {\r\n \"normal\": {\r\n \"animation\": true\r\n },\r\n \"hover\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"enabled\": true,\r\n \"radiusPlus\": 2,\r\n \"lineWidthPlus\": 1\r\n },\r\n \"select\": {\r\n \"fillColor\": \"#cccccc\",\r\n \"lineColor\": \"#000000\",\r\n \"lineWidth\": 2\r\n }\r\n }\r\n },\r\n \"point\": {\r\n \"events\": {}\r\n },\r\n \"dataLabels\": {\r\n \"animation\": {},\r\n \"align\": \"center\",\r\n \"defer\": true,\r\n \"padding\": 5,\r\n \"style\": {\r\n \"fontSize\": \"11px\",\r\n \"fontWeight\": \"bold\",\r\n \"color\": \"contrast\",\r\n \"textOutline\": \"1px contrast\"\r\n },\r\n \"verticalAlign\": \"bottom\",\r\n \"x\": 0,\r\n \"y\": 0\r\n },\r\n \"cropThreshold\": 300,\r\n \"opacity\": 1,\r\n \"pointRange\": 0,\r\n \"softThreshold\": true,\r\n \"states\": {\r\n \"normal\": {\r\n \"animation\": true\r\n },\r\n \"hover\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"lineWidthPlus\": 1,\r\n \"marker\": {},\r\n \"halo\": {\r\n \"size\": 0,\r\n \"opacity\": 0.25\r\n }\r\n },\r\n \"select\": {\r\n \"animation\": {\r\n \"duration\": 0\r\n }\r\n },\r\n \"inactive\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"opacity\": 0.2\r\n }\r\n },\r\n \"stickyTracking\": true,\r\n \"turboThreshold\": 1000,\r\n \"findNearestPointBy\": \"x\",\r\n \"tooltip\": {\r\n \"valueDecimals\": 4\r\n },\r\n \"compareToMain\": false,\r\n \"params\": {},\r\n \"greaterBarColor\": \"#06b535\",\r\n \"lowerBarColor\": \"#f21313\",\r\n \"threshold\": 0,\r\n \"groupPadding\": 0.2,\r\n \"pointPadding\": 0.2\r\n },\r\n \"aroon\": {\r\n \"lineWidth\": 2,\r\n \"allowPointSelect\": false,\r\n \"crisp\": true,\r\n \"showCheckbox\": false,\r\n \"animation\": {\r\n \"duration\": 1000\r\n },\r\n \"events\": {},\r\n \"marker\": {\r\n \"enabledThreshold\": 2,\r\n \"lineColor\": \"#ffffff\",\r\n \"lineWidth\": 0,\r\n \"radius\": 4,\r\n \"states\": {\r\n \"normal\": {\r\n \"animation\": true\r\n },\r\n \"hover\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"enabled\": true,\r\n \"radiusPlus\": 2,\r\n \"lineWidthPlus\": 1\r\n },\r\n \"select\": {\r\n \"fillColor\": \"#cccccc\",\r\n \"lineColor\": \"#000000\",\r\n \"lineWidth\": 2\r\n }\r\n },\r\n \"enabled\": false\r\n },\r\n \"point\": {\r\n \"events\": {}\r\n },\r\n \"dataLabels\": {\r\n \"animation\": {},\r\n \"align\": \"center\",\r\n \"defer\": true,\r\n \"padding\": 5,\r\n \"style\": {\r\n \"fontSize\": \"11px\",\r\n \"fontWeight\": \"bold\",\r\n \"color\": \"contrast\",\r\n \"textOutline\": \"1px contrast\"\r\n },\r\n \"verticalAlign\": \"bottom\",\r\n \"x\": 0,\r\n \"y\": 0\r\n },\r\n \"cropThreshold\": 300,\r\n \"opacity\": 1,\r\n \"pointRange\": 0,\r\n \"softThreshold\": true,\r\n \"states\": {\r\n \"normal\": {\r\n \"animation\": true\r\n },\r\n \"hover\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"lineWidthPlus\": 1,\r\n \"marker\": {},\r\n \"halo\": {\r\n \"size\": 10,\r\n \"opacity\": 0.25\r\n }\r\n },\r\n \"select\": {\r\n \"animation\": {\r\n \"duration\": 0\r\n }\r\n },\r\n \"inactive\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"opacity\": 0.2\r\n }\r\n },\r\n \"stickyTracking\": true,\r\n \"turboThreshold\": 1000,\r\n \"findNearestPointBy\": \"x\",\r\n \"tooltip\": {\r\n \"valueDecimals\": 4,\r\n \"pointFormat\": \" {series.name}
Aroon Up: {point.y}
Aroon Down: {point.aroonDown}
\"\r\n },\r\n \"compareToMain\": false,\r\n \"params\": {\r\n \"period\": 25\r\n },\r\n \"aroonDown\": {\r\n \"styles\": {\r\n \"lineWidth\": 1\r\n }\r\n },\r\n \"dataGrouping\": {\r\n \"approximation\": \"averages\"\r\n }\r\n },\r\n \"aroonoscillator\": {\r\n \"lineWidth\": 2,\r\n \"allowPointSelect\": false,\r\n \"crisp\": true,\r\n \"showCheckbox\": false,\r\n \"animation\": {\r\n \"duration\": 1000\r\n },\r\n \"events\": {},\r\n \"marker\": {\r\n \"enabledThreshold\": 2,\r\n \"lineColor\": \"#ffffff\",\r\n \"lineWidth\": 0,\r\n \"radius\": 4,\r\n \"states\": {\r\n \"normal\": {\r\n \"animation\": true\r\n },\r\n \"hover\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"enabled\": true,\r\n \"radiusPlus\": 2,\r\n \"lineWidthPlus\": 1\r\n },\r\n \"select\": {\r\n \"fillColor\": \"#cccccc\",\r\n \"lineColor\": \"#000000\",\r\n \"lineWidth\": 2\r\n }\r\n },\r\n \"enabled\": false\r\n },\r\n \"point\": {\r\n \"events\": {}\r\n },\r\n \"dataLabels\": {\r\n \"animation\": {},\r\n \"align\": \"center\",\r\n \"defer\": true,\r\n \"padding\": 5,\r\n \"style\": {\r\n \"fontSize\": \"11px\",\r\n \"fontWeight\": \"bold\",\r\n \"color\": \"contrast\",\r\n \"textOutline\": \"1px contrast\"\r\n },\r\n \"verticalAlign\": \"bottom\",\r\n \"x\": 0,\r\n \"y\": 0\r\n },\r\n \"cropThreshold\": 300,\r\n \"opacity\": 1,\r\n \"pointRange\": 0,\r\n \"softThreshold\": true,\r\n \"states\": {\r\n \"normal\": {\r\n \"animation\": true\r\n },\r\n \"hover\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"lineWidthPlus\": 1,\r\n \"marker\": {},\r\n \"halo\": {\r\n \"size\": 10,\r\n \"opacity\": 0.25\r\n }\r\n },\r\n \"select\": {\r\n \"animation\": {\r\n \"duration\": 0\r\n }\r\n },\r\n \"inactive\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"opacity\": 0.2\r\n }\r\n },\r\n \"stickyTracking\": true,\r\n \"turboThreshold\": 1000,\r\n \"findNearestPointBy\": \"x\",\r\n \"tooltip\": {\r\n \"valueDecimals\": 4,\r\n \"pointFormat\": \" {series.name}: {point.y}\"\r\n },\r\n \"compareToMain\": false,\r\n \"params\": {\r\n \"period\": 25\r\n },\r\n \"aroonDown\": {\r\n \"styles\": {\r\n \"lineWidth\": 1\r\n }\r\n },\r\n \"dataGrouping\": {\r\n \"approximation\": \"averages\"\r\n }\r\n },\r\n \"atr\": {\r\n \"lineWidth\": 2,\r\n \"allowPointSelect\": false,\r\n \"crisp\": true,\r\n \"showCheckbox\": false,\r\n \"animation\": {\r\n \"duration\": 1000\r\n },\r\n \"events\": {},\r\n \"marker\": {\r\n \"enabledThreshold\": 2,\r\n \"lineColor\": \"#ffffff\",\r\n \"lineWidth\": 0,\r\n \"radius\": 4,\r\n \"states\": {\r\n \"normal\": {\r\n \"animation\": true\r\n },\r\n \"hover\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"enabled\": true,\r\n \"radiusPlus\": 2,\r\n \"lineWidthPlus\": 1\r\n },\r\n \"select\": {\r\n \"fillColor\": \"#cccccc\",\r\n \"lineColor\": \"#000000\",\r\n \"lineWidth\": 2\r\n }\r\n }\r\n },\r\n \"point\": {\r\n \"events\": {}\r\n },\r\n \"dataLabels\": {\r\n \"animation\": {},\r\n \"align\": \"center\",\r\n \"defer\": true,\r\n \"padding\": 5,\r\n \"style\": {\r\n \"fontSize\": \"11px\",\r\n \"fontWeight\": \"bold\",\r\n \"color\": \"contrast\",\r\n \"textOutline\": \"1px contrast\"\r\n },\r\n \"verticalAlign\": \"bottom\",\r\n \"x\": 0,\r\n \"y\": 0\r\n },\r\n \"cropThreshold\": 300,\r\n \"opacity\": 1,\r\n \"pointRange\": 0,\r\n \"softThreshold\": true,\r\n \"states\": {\r\n \"normal\": {\r\n \"animation\": true\r\n },\r\n \"hover\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"lineWidthPlus\": 1,\r\n \"marker\": {},\r\n \"halo\": {\r\n \"size\": 10,\r\n \"opacity\": 0.25\r\n }\r\n },\r\n \"select\": {\r\n \"animation\": {\r\n \"duration\": 0\r\n }\r\n },\r\n \"inactive\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"opacity\": 0.2\r\n }\r\n },\r\n \"stickyTracking\": true,\r\n \"turboThreshold\": 1000,\r\n \"findNearestPointBy\": \"x\",\r\n \"tooltip\": {\r\n \"valueDecimals\": 4\r\n },\r\n \"compareToMain\": false,\r\n \"params\": {\r\n \"period\": 14\r\n }\r\n },\r\n \"bb\": {\r\n \"lineWidth\": 2,\r\n \"allowPointSelect\": false,\r\n \"crisp\": true,\r\n \"showCheckbox\": false,\r\n \"animation\": {\r\n \"duration\": 1000\r\n },\r\n \"events\": {},\r\n \"marker\": {\r\n \"enabledThreshold\": 2,\r\n \"lineColor\": \"#ffffff\",\r\n \"lineWidth\": 0,\r\n \"radius\": 4,\r\n \"states\": {\r\n \"normal\": {\r\n \"animation\": true\r\n },\r\n \"hover\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"enabled\": true,\r\n \"radiusPlus\": 2,\r\n \"lineWidthPlus\": 1\r\n },\r\n \"select\": {\r\n \"fillColor\": \"#cccccc\",\r\n \"lineColor\": \"#000000\",\r\n \"lineWidth\": 2\r\n }\r\n },\r\n \"enabled\": false\r\n },\r\n \"point\": {\r\n \"events\": {}\r\n },\r\n \"dataLabels\": {\r\n \"animation\": {},\r\n \"align\": \"center\",\r\n \"defer\": true,\r\n \"padding\": 5,\r\n \"style\": {\r\n \"fontSize\": \"11px\",\r\n \"fontWeight\": \"bold\",\r\n \"color\": \"contrast\",\r\n \"textOutline\": \"1px contrast\"\r\n },\r\n \"verticalAlign\": \"bottom\",\r\n \"x\": 0,\r\n \"y\": 0\r\n },\r\n \"cropThreshold\": 300,\r\n \"opacity\": 1,\r\n \"pointRange\": 0,\r\n \"softThreshold\": true,\r\n \"states\": {\r\n \"normal\": {\r\n \"animation\": true\r\n },\r\n \"hover\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"lineWidthPlus\": 1,\r\n \"marker\": {},\r\n \"halo\": {\r\n \"size\": 10,\r\n \"opacity\": 0.25\r\n }\r\n },\r\n \"select\": {\r\n \"animation\": {\r\n \"duration\": 0\r\n }\r\n },\r\n \"inactive\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"opacity\": 0.2\r\n }\r\n },\r\n \"stickyTracking\": true,\r\n \"turboThreshold\": 1000,\r\n \"findNearestPointBy\": \"x\",\r\n \"tooltip\": {\r\n \"valueDecimals\": 4,\r\n \"pointFormat\": \" {series.name}
Top: {point.top}
Middle: {point.middle}
Bottom: {point.bottom}
\"\r\n },\r\n \"compareToMain\": false,\r\n \"params\": {\r\n \"index\": 3,\r\n \"period\": 20,\r\n \"standardDeviation\": 2\r\n },\r\n \"bottomLine\": {\r\n \"styles\": {\r\n \"lineWidth\": 1\r\n }\r\n },\r\n \"topLine\": {\r\n \"styles\": {\r\n \"lineWidth\": 1\r\n }\r\n },\r\n \"dataGrouping\": {\r\n \"approximation\": \"averages\"\r\n }\r\n },\r\n \"cci\": {\r\n \"lineWidth\": 2,\r\n \"allowPointSelect\": false,\r\n \"crisp\": true,\r\n \"showCheckbox\": false,\r\n \"animation\": {\r\n \"duration\": 1000\r\n },\r\n \"events\": {},\r\n \"marker\": {\r\n \"enabledThreshold\": 2,\r\n \"lineColor\": \"#ffffff\",\r\n \"lineWidth\": 0,\r\n \"radius\": 4,\r\n \"states\": {\r\n \"normal\": {\r\n \"animation\": true\r\n },\r\n \"hover\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"enabled\": true,\r\n \"radiusPlus\": 2,\r\n \"lineWidthPlus\": 1\r\n },\r\n \"select\": {\r\n \"fillColor\": \"#cccccc\",\r\n \"lineColor\": \"#000000\",\r\n \"lineWidth\": 2\r\n }\r\n }\r\n },\r\n \"point\": {\r\n \"events\": {}\r\n },\r\n \"dataLabels\": {\r\n \"animation\": {},\r\n \"align\": \"center\",\r\n \"defer\": true,\r\n \"padding\": 5,\r\n \"style\": {\r\n \"fontSize\": \"11px\",\r\n \"fontWeight\": \"bold\",\r\n \"color\": \"contrast\",\r\n \"textOutline\": \"1px contrast\"\r\n },\r\n \"verticalAlign\": \"bottom\",\r\n \"x\": 0,\r\n \"y\": 0\r\n },\r\n \"cropThreshold\": 300,\r\n \"opacity\": 1,\r\n \"pointRange\": 0,\r\n \"softThreshold\": true,\r\n \"states\": {\r\n \"normal\": {\r\n \"animation\": true\r\n },\r\n \"hover\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"lineWidthPlus\": 1,\r\n \"marker\": {},\r\n \"halo\": {\r\n \"size\": 10,\r\n \"opacity\": 0.25\r\n }\r\n },\r\n \"select\": {\r\n \"animation\": {\r\n \"duration\": 0\r\n }\r\n },\r\n \"inactive\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"opacity\": 0.2\r\n }\r\n },\r\n \"stickyTracking\": true,\r\n \"turboThreshold\": 1000,\r\n \"findNearestPointBy\": \"x\",\r\n \"tooltip\": {\r\n \"valueDecimals\": 4\r\n },\r\n \"compareToMain\": false,\r\n \"params\": {\r\n \"period\": 14\r\n }\r\n },\r\n \"cmf\": {\r\n \"lineWidth\": 2,\r\n \"allowPointSelect\": false,\r\n \"crisp\": true,\r\n \"showCheckbox\": false,\r\n \"animation\": {\r\n \"duration\": 1000\r\n },\r\n \"events\": {},\r\n \"marker\": {\r\n \"enabledThreshold\": 2,\r\n \"lineColor\": \"#ffffff\",\r\n \"lineWidth\": 0,\r\n \"radius\": 4,\r\n \"states\": {\r\n \"normal\": {\r\n \"animation\": true\r\n },\r\n \"hover\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"enabled\": true,\r\n \"radiusPlus\": 2,\r\n \"lineWidthPlus\": 1\r\n },\r\n \"select\": {\r\n \"fillColor\": \"#cccccc\",\r\n \"lineColor\": \"#000000\",\r\n \"lineWidth\": 2\r\n }\r\n }\r\n },\r\n \"point\": {\r\n \"events\": {}\r\n },\r\n \"dataLabels\": {\r\n \"animation\": {},\r\n \"align\": \"center\",\r\n \"defer\": true,\r\n \"padding\": 5,\r\n \"style\": {\r\n \"fontSize\": \"11px\",\r\n \"fontWeight\": \"bold\",\r\n \"color\": \"contrast\",\r\n \"textOutline\": \"1px contrast\"\r\n },\r\n \"verticalAlign\": \"bottom\",\r\n \"x\": 0,\r\n \"y\": 0\r\n },\r\n \"cropThreshold\": 300,\r\n \"opacity\": 1,\r\n \"pointRange\": 0,\r\n \"softThreshold\": true,\r\n \"states\": {\r\n \"normal\": {\r\n \"animation\": true\r\n },\r\n \"hover\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"lineWidthPlus\": 1,\r\n \"marker\": {},\r\n \"halo\": {\r\n \"size\": 10,\r\n \"opacity\": 0.25\r\n }\r\n },\r\n \"select\": {\r\n \"animation\": {\r\n \"duration\": 0\r\n }\r\n },\r\n \"inactive\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"opacity\": 0.2\r\n }\r\n },\r\n \"stickyTracking\": true,\r\n \"turboThreshold\": 1000,\r\n \"findNearestPointBy\": \"x\",\r\n \"tooltip\": {\r\n \"valueDecimals\": 4\r\n },\r\n \"compareToMain\": false,\r\n \"params\": {\r\n \"period\": 14,\r\n \"volumeSeriesID\": \"volume\"\r\n }\r\n },\r\n \"dmi\": {\r\n \"lineWidth\": 2,\r\n \"allowPointSelect\": false,\r\n \"crisp\": true,\r\n \"showCheckbox\": false,\r\n \"animation\": {\r\n \"duration\": 1000\r\n },\r\n \"events\": {},\r\n \"marker\": {\r\n \"enabledThreshold\": 2,\r\n \"lineColor\": \"#ffffff\",\r\n \"lineWidth\": 0,\r\n \"radius\": 4,\r\n \"states\": {\r\n \"normal\": {\r\n \"animation\": true\r\n },\r\n \"hover\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"enabled\": true,\r\n \"radiusPlus\": 2,\r\n \"lineWidthPlus\": 1\r\n },\r\n \"select\": {\r\n \"fillColor\": \"#cccccc\",\r\n \"lineColor\": \"#000000\",\r\n \"lineWidth\": 2\r\n }\r\n },\r\n \"enabled\": false\r\n },\r\n \"point\": {\r\n \"events\": {}\r\n },\r\n \"dataLabels\": {\r\n \"animation\": {},\r\n \"align\": \"center\",\r\n \"defer\": true,\r\n \"padding\": 5,\r\n \"style\": {\r\n \"fontSize\": \"11px\",\r\n \"fontWeight\": \"bold\",\r\n \"color\": \"contrast\",\r\n \"textOutline\": \"1px contrast\"\r\n },\r\n \"verticalAlign\": \"bottom\",\r\n \"x\": 0,\r\n \"y\": 0\r\n },\r\n \"cropThreshold\": 300,\r\n \"opacity\": 1,\r\n \"pointRange\": 0,\r\n \"softThreshold\": true,\r\n \"states\": {\r\n \"normal\": {\r\n \"animation\": true\r\n },\r\n \"hover\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"lineWidthPlus\": 1,\r\n \"marker\": {},\r\n \"halo\": {\r\n \"size\": 10,\r\n \"opacity\": 0.25\r\n }\r\n },\r\n \"select\": {\r\n \"animation\": {\r\n \"duration\": 0\r\n }\r\n },\r\n \"inactive\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"opacity\": 0.2\r\n }\r\n },\r\n \"stickyTracking\": true,\r\n \"turboThreshold\": 1000,\r\n \"findNearestPointBy\": \"x\",\r\n \"tooltip\": {\r\n \"valueDecimals\": 4,\r\n \"pointFormat\": \" {series.name}
DX: {point.y}
+DI: {point.plusDI}
-DI: {point.minusDI}
\"\r\n },\r\n \"compareToMain\": false,\r\n \"params\": {\r\n \"period\": 14\r\n },\r\n \"plusDILine\": {\r\n \"styles\": {\r\n \"lineWidth\": 1,\r\n \"lineColor\": \"#06b535\"\r\n }\r\n },\r\n \"minusDILine\": {\r\n \"styles\": {\r\n \"lineWidth\": 1,\r\n \"lineColor\": \"#f21313\"\r\n }\r\n },\r\n \"dataGrouping\": {\r\n \"approximation\": \"averages\"\r\n }\r\n },\r\n \"dpo\": {\r\n \"lineWidth\": 2,\r\n \"allowPointSelect\": false,\r\n \"crisp\": true,\r\n \"showCheckbox\": false,\r\n \"animation\": {\r\n \"duration\": 1000\r\n },\r\n \"events\": {},\r\n \"marker\": {\r\n \"enabledThreshold\": 2,\r\n \"lineColor\": \"#ffffff\",\r\n \"lineWidth\": 0,\r\n \"radius\": 4,\r\n \"states\": {\r\n \"normal\": {\r\n \"animation\": true\r\n },\r\n \"hover\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"enabled\": true,\r\n \"radiusPlus\": 2,\r\n \"lineWidthPlus\": 1\r\n },\r\n \"select\": {\r\n \"fillColor\": \"#cccccc\",\r\n \"lineColor\": \"#000000\",\r\n \"lineWidth\": 2\r\n }\r\n }\r\n },\r\n \"point\": {\r\n \"events\": {}\r\n },\r\n \"dataLabels\": {\r\n \"animation\": {},\r\n \"align\": \"center\",\r\n \"defer\": true,\r\n \"padding\": 5,\r\n \"style\": {\r\n \"fontSize\": \"11px\",\r\n \"fontWeight\": \"bold\",\r\n \"color\": \"contrast\",\r\n \"textOutline\": \"1px contrast\"\r\n },\r\n \"verticalAlign\": \"bottom\",\r\n \"x\": 0,\r\n \"y\": 0\r\n },\r\n \"cropThreshold\": 300,\r\n \"opacity\": 1,\r\n \"pointRange\": 0,\r\n \"softThreshold\": true,\r\n \"states\": {\r\n \"normal\": {\r\n \"animation\": true\r\n },\r\n \"hover\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"lineWidthPlus\": 1,\r\n \"marker\": {},\r\n \"halo\": {\r\n \"size\": 10,\r\n \"opacity\": 0.25\r\n }\r\n },\r\n \"select\": {\r\n \"animation\": {\r\n \"duration\": 0\r\n }\r\n },\r\n \"inactive\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"opacity\": 0.2\r\n }\r\n },\r\n \"stickyTracking\": true,\r\n \"turboThreshold\": 1000,\r\n \"findNearestPointBy\": \"x\",\r\n \"tooltip\": {\r\n \"valueDecimals\": 4\r\n },\r\n \"compareToMain\": false,\r\n \"params\": {\r\n \"index\": 0,\r\n \"period\": 21\r\n }\r\n },\r\n \"chaikin\": {\r\n \"lineWidth\": 2,\r\n \"allowPointSelect\": false,\r\n \"crisp\": true,\r\n \"showCheckbox\": false,\r\n \"animation\": {\r\n \"duration\": 1000\r\n },\r\n \"events\": {},\r\n \"marker\": {\r\n \"enabledThreshold\": 2,\r\n \"lineColor\": \"#ffffff\",\r\n \"lineWidth\": 0,\r\n \"radius\": 4,\r\n \"states\": {\r\n \"normal\": {\r\n \"animation\": true\r\n },\r\n \"hover\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"enabled\": true,\r\n \"radiusPlus\": 2,\r\n \"lineWidthPlus\": 1\r\n },\r\n \"select\": {\r\n \"fillColor\": \"#cccccc\",\r\n \"lineColor\": \"#000000\",\r\n \"lineWidth\": 2\r\n }\r\n }\r\n },\r\n \"point\": {\r\n \"events\": {}\r\n },\r\n \"dataLabels\": {\r\n \"animation\": {},\r\n \"align\": \"center\",\r\n \"defer\": true,\r\n \"padding\": 5,\r\n \"style\": {\r\n \"fontSize\": \"11px\",\r\n \"fontWeight\": \"bold\",\r\n \"color\": \"contrast\",\r\n \"textOutline\": \"1px contrast\"\r\n },\r\n \"verticalAlign\": \"bottom\",\r\n \"x\": 0,\r\n \"y\": 0\r\n },\r\n \"cropThreshold\": 300,\r\n \"opacity\": 1,\r\n \"pointRange\": 0,\r\n \"softThreshold\": true,\r\n \"states\": {\r\n \"normal\": {\r\n \"animation\": true\r\n },\r\n \"hover\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"lineWidthPlus\": 1,\r\n \"marker\": {},\r\n \"halo\": {\r\n \"size\": 10,\r\n \"opacity\": 0.25\r\n }\r\n },\r\n \"select\": {\r\n \"animation\": {\r\n \"duration\": 0\r\n }\r\n },\r\n \"inactive\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"opacity\": 0.2\r\n }\r\n },\r\n \"stickyTracking\": true,\r\n \"turboThreshold\": 1000,\r\n \"findNearestPointBy\": \"x\",\r\n \"tooltip\": {\r\n \"valueDecimals\": 4\r\n },\r\n \"compareToMain\": false,\r\n \"params\": {\r\n \"period\": 9,\r\n \"volumeSeriesID\": \"volume\",\r\n \"periods\": [\r\n 3,\r\n 10\r\n ]\r\n }\r\n },\r\n \"cmo\": {\r\n \"lineWidth\": 2,\r\n \"allowPointSelect\": false,\r\n \"crisp\": true,\r\n \"showCheckbox\": false,\r\n \"animation\": {\r\n \"duration\": 1000\r\n },\r\n \"events\": {},\r\n \"marker\": {\r\n \"enabledThreshold\": 2,\r\n \"lineColor\": \"#ffffff\",\r\n \"lineWidth\": 0,\r\n \"radius\": 4,\r\n \"states\": {\r\n \"normal\": {\r\n \"animation\": true\r\n },\r\n \"hover\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"enabled\": true,\r\n \"radiusPlus\": 2,\r\n \"lineWidthPlus\": 1\r\n },\r\n \"select\": {\r\n \"fillColor\": \"#cccccc\",\r\n \"lineColor\": \"#000000\",\r\n \"lineWidth\": 2\r\n }\r\n }\r\n },\r\n \"point\": {\r\n \"events\": {}\r\n },\r\n \"dataLabels\": {\r\n \"animation\": {},\r\n \"align\": \"center\",\r\n \"defer\": true,\r\n \"padding\": 5,\r\n \"style\": {\r\n \"fontSize\": \"11px\",\r\n \"fontWeight\": \"bold\",\r\n \"color\": \"contrast\",\r\n \"textOutline\": \"1px contrast\"\r\n },\r\n \"verticalAlign\": \"bottom\",\r\n \"x\": 0,\r\n \"y\": 0\r\n },\r\n \"cropThreshold\": 300,\r\n \"opacity\": 1,\r\n \"pointRange\": 0,\r\n \"softThreshold\": true,\r\n \"states\": {\r\n \"normal\": {\r\n \"animation\": true\r\n },\r\n \"hover\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"lineWidthPlus\": 1,\r\n \"marker\": {},\r\n \"halo\": {\r\n \"size\": 10,\r\n \"opacity\": 0.25\r\n }\r\n },\r\n \"select\": {\r\n \"animation\": {\r\n \"duration\": 0\r\n }\r\n },\r\n \"inactive\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"opacity\": 0.2\r\n }\r\n },\r\n \"stickyTracking\": true,\r\n \"turboThreshold\": 1000,\r\n \"findNearestPointBy\": \"x\",\r\n \"tooltip\": {\r\n \"valueDecimals\": 4\r\n },\r\n \"compareToMain\": false,\r\n \"params\": {\r\n \"index\": 3,\r\n \"period\": 20\r\n }\r\n },\r\n \"dema\": {\r\n \"lineWidth\": 2,\r\n \"allowPointSelect\": false,\r\n \"crisp\": true,\r\n \"showCheckbox\": false,\r\n \"animation\": {\r\n \"duration\": 1000\r\n },\r\n \"events\": {},\r\n \"marker\": {\r\n \"enabledThreshold\": 2,\r\n \"lineColor\": \"#ffffff\",\r\n \"lineWidth\": 0,\r\n \"radius\": 4,\r\n \"states\": {\r\n \"normal\": {\r\n \"animation\": true\r\n },\r\n \"hover\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"enabled\": true,\r\n \"radiusPlus\": 2,\r\n \"lineWidthPlus\": 1\r\n },\r\n \"select\": {\r\n \"fillColor\": \"#cccccc\",\r\n \"lineColor\": \"#000000\",\r\n \"lineWidth\": 2\r\n }\r\n }\r\n },\r\n \"point\": {\r\n \"events\": {}\r\n },\r\n \"dataLabels\": {\r\n \"animation\": {},\r\n \"align\": \"center\",\r\n \"defer\": true,\r\n \"padding\": 5,\r\n \"style\": {\r\n \"fontSize\": \"11px\",\r\n \"fontWeight\": \"bold\",\r\n \"color\": \"contrast\",\r\n \"textOutline\": \"1px contrast\"\r\n },\r\n \"verticalAlign\": \"bottom\",\r\n \"x\": 0,\r\n \"y\": 0\r\n },\r\n \"cropThreshold\": 300,\r\n \"opacity\": 1,\r\n \"pointRange\": 0,\r\n \"softThreshold\": true,\r\n \"states\": {\r\n \"normal\": {\r\n \"animation\": true\r\n },\r\n \"hover\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"lineWidthPlus\": 1,\r\n \"marker\": {},\r\n \"halo\": {\r\n \"size\": 10,\r\n \"opacity\": 0.25\r\n }\r\n },\r\n \"select\": {\r\n \"animation\": {\r\n \"duration\": 0\r\n }\r\n },\r\n \"inactive\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"opacity\": 0.2\r\n }\r\n },\r\n \"stickyTracking\": true,\r\n \"turboThreshold\": 1000,\r\n \"findNearestPointBy\": \"x\",\r\n \"tooltip\": {\r\n \"valueDecimals\": 4\r\n },\r\n \"compareToMain\": false,\r\n \"params\": {\r\n \"index\": 3,\r\n \"period\": 9\r\n }\r\n },\r\n \"tema\": {\r\n \"lineWidth\": 2,\r\n \"allowPointSelect\": false,\r\n \"crisp\": true,\r\n \"showCheckbox\": false,\r\n \"animation\": {\r\n \"duration\": 1000\r\n },\r\n \"events\": {},\r\n \"marker\": {\r\n \"enabledThreshold\": 2,\r\n \"lineColor\": \"#ffffff\",\r\n \"lineWidth\": 0,\r\n \"radius\": 4,\r\n \"states\": {\r\n \"normal\": {\r\n \"animation\": true\r\n },\r\n \"hover\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"enabled\": true,\r\n \"radiusPlus\": 2,\r\n \"lineWidthPlus\": 1\r\n },\r\n \"select\": {\r\n \"fillColor\": \"#cccccc\",\r\n \"lineColor\": \"#000000\",\r\n \"lineWidth\": 2\r\n }\r\n }\r\n },\r\n \"point\": {\r\n \"events\": {}\r\n },\r\n \"dataLabels\": {\r\n \"animation\": {},\r\n \"align\": \"center\",\r\n \"defer\": true,\r\n \"padding\": 5,\r\n \"style\": {\r\n \"fontSize\": \"11px\",\r\n \"fontWeight\": \"bold\",\r\n \"color\": \"contrast\",\r\n \"textOutline\": \"1px contrast\"\r\n },\r\n \"verticalAlign\": \"bottom\",\r\n \"x\": 0,\r\n \"y\": 0\r\n },\r\n \"cropThreshold\": 300,\r\n \"opacity\": 1,\r\n \"pointRange\": 0,\r\n \"softThreshold\": true,\r\n \"states\": {\r\n \"normal\": {\r\n \"animation\": true\r\n },\r\n \"hover\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"lineWidthPlus\": 1,\r\n \"marker\": {},\r\n \"halo\": {\r\n \"size\": 10,\r\n \"opacity\": 0.25\r\n }\r\n },\r\n \"select\": {\r\n \"animation\": {\r\n \"duration\": 0\r\n }\r\n },\r\n \"inactive\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"opacity\": 0.2\r\n }\r\n },\r\n \"stickyTracking\": true,\r\n \"turboThreshold\": 1000,\r\n \"findNearestPointBy\": \"x\",\r\n \"tooltip\": {\r\n \"valueDecimals\": 4\r\n },\r\n \"compareToMain\": false,\r\n \"params\": {\r\n \"index\": 3,\r\n \"period\": 9\r\n }\r\n },\r\n \"trix\": {\r\n \"lineWidth\": 2,\r\n \"allowPointSelect\": false,\r\n \"crisp\": true,\r\n \"showCheckbox\": false,\r\n \"animation\": {\r\n \"duration\": 1000\r\n },\r\n \"events\": {},\r\n \"marker\": {\r\n \"enabledThreshold\": 2,\r\n \"lineColor\": \"#ffffff\",\r\n \"lineWidth\": 0,\r\n \"radius\": 4,\r\n \"states\": {\r\n \"normal\": {\r\n \"animation\": true\r\n },\r\n \"hover\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"enabled\": true,\r\n \"radiusPlus\": 2,\r\n \"lineWidthPlus\": 1\r\n },\r\n \"select\": {\r\n \"fillColor\": \"#cccccc\",\r\n \"lineColor\": \"#000000\",\r\n \"lineWidth\": 2\r\n }\r\n }\r\n },\r\n \"point\": {\r\n \"events\": {}\r\n },\r\n \"dataLabels\": {\r\n \"animation\": {},\r\n \"align\": \"center\",\r\n \"defer\": true,\r\n \"padding\": 5,\r\n \"style\": {\r\n \"fontSize\": \"11px\",\r\n \"fontWeight\": \"bold\",\r\n \"color\": \"contrast\",\r\n \"textOutline\": \"1px contrast\"\r\n },\r\n \"verticalAlign\": \"bottom\",\r\n \"x\": 0,\r\n \"y\": 0\r\n },\r\n \"cropThreshold\": 300,\r\n \"opacity\": 1,\r\n \"pointRange\": 0,\r\n \"softThreshold\": true,\r\n \"states\": {\r\n \"normal\": {\r\n \"animation\": true\r\n },\r\n \"hover\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"lineWidthPlus\": 1,\r\n \"marker\": {},\r\n \"halo\": {\r\n \"size\": 10,\r\n \"opacity\": 0.25\r\n }\r\n },\r\n \"select\": {\r\n \"animation\": {\r\n \"duration\": 0\r\n }\r\n },\r\n \"inactive\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"opacity\": 0.2\r\n }\r\n },\r\n \"stickyTracking\": true,\r\n \"turboThreshold\": 1000,\r\n \"findNearestPointBy\": \"x\",\r\n \"tooltip\": {\r\n \"valueDecimals\": 4\r\n },\r\n \"compareToMain\": false,\r\n \"params\": {\r\n \"index\": 3,\r\n \"period\": 9\r\n }\r\n },\r\n \"apo\": {\r\n \"lineWidth\": 2,\r\n \"allowPointSelect\": false,\r\n \"crisp\": true,\r\n \"showCheckbox\": false,\r\n \"animation\": {\r\n \"duration\": 1000\r\n },\r\n \"events\": {},\r\n \"marker\": {\r\n \"enabledThreshold\": 2,\r\n \"lineColor\": \"#ffffff\",\r\n \"lineWidth\": 0,\r\n \"radius\": 4,\r\n \"states\": {\r\n \"normal\": {\r\n \"animation\": true\r\n },\r\n \"hover\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"enabled\": true,\r\n \"radiusPlus\": 2,\r\n \"lineWidthPlus\": 1\r\n },\r\n \"select\": {\r\n \"fillColor\": \"#cccccc\",\r\n \"lineColor\": \"#000000\",\r\n \"lineWidth\": 2\r\n }\r\n }\r\n },\r\n \"point\": {\r\n \"events\": {}\r\n },\r\n \"dataLabels\": {\r\n \"animation\": {},\r\n \"align\": \"center\",\r\n \"defer\": true,\r\n \"padding\": 5,\r\n \"style\": {\r\n \"fontSize\": \"11px\",\r\n \"fontWeight\": \"bold\",\r\n \"color\": \"contrast\",\r\n \"textOutline\": \"1px contrast\"\r\n },\r\n \"verticalAlign\": \"bottom\",\r\n \"x\": 0,\r\n \"y\": 0\r\n },\r\n \"cropThreshold\": 300,\r\n \"opacity\": 1,\r\n \"pointRange\": 0,\r\n \"softThreshold\": true,\r\n \"states\": {\r\n \"normal\": {\r\n \"animation\": true\r\n },\r\n \"hover\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"lineWidthPlus\": 1,\r\n \"marker\": {},\r\n \"halo\": {\r\n \"size\": 10,\r\n \"opacity\": 0.25\r\n }\r\n },\r\n \"select\": {\r\n \"animation\": {\r\n \"duration\": 0\r\n }\r\n },\r\n \"inactive\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"opacity\": 0.2\r\n }\r\n },\r\n \"stickyTracking\": true,\r\n \"turboThreshold\": 1000,\r\n \"findNearestPointBy\": \"x\",\r\n \"tooltip\": {\r\n \"valueDecimals\": 4\r\n },\r\n \"compareToMain\": false,\r\n \"params\": {\r\n \"index\": 3,\r\n \"periods\": [\r\n 10,\r\n 20\r\n ]\r\n }\r\n },\r\n \"ikh\": {\r\n \"lineWidth\": 2,\r\n \"allowPointSelect\": false,\r\n \"crisp\": true,\r\n \"showCheckbox\": false,\r\n \"animation\": {\r\n \"duration\": 1000\r\n },\r\n \"events\": {},\r\n \"marker\": {\r\n \"enabledThreshold\": 2,\r\n \"lineColor\": \"#ffffff\",\r\n \"lineWidth\": 0,\r\n \"radius\": 4,\r\n \"states\": {\r\n \"normal\": {\r\n \"animation\": true\r\n },\r\n \"hover\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"enabled\": true,\r\n \"radiusPlus\": 2,\r\n \"lineWidthPlus\": 1\r\n },\r\n \"select\": {\r\n \"fillColor\": \"#cccccc\",\r\n \"lineColor\": \"#000000\",\r\n \"lineWidth\": 2\r\n }\r\n },\r\n \"enabled\": false\r\n },\r\n \"point\": {\r\n \"events\": {}\r\n },\r\n \"dataLabels\": {\r\n \"animation\": {},\r\n \"align\": \"center\",\r\n \"defer\": true,\r\n \"padding\": 5,\r\n \"style\": {\r\n \"fontSize\": \"11px\",\r\n \"fontWeight\": \"bold\",\r\n \"color\": \"contrast\",\r\n \"textOutline\": \"1px contrast\"\r\n },\r\n \"verticalAlign\": \"bottom\",\r\n \"x\": 0,\r\n \"y\": 0\r\n },\r\n \"cropThreshold\": 300,\r\n \"opacity\": 1,\r\n \"pointRange\": 0,\r\n \"softThreshold\": true,\r\n \"states\": {\r\n \"normal\": {\r\n \"animation\": true\r\n },\r\n \"hover\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"lineWidthPlus\": 1,\r\n \"marker\": {},\r\n \"halo\": {\r\n \"size\": 10,\r\n \"opacity\": 0.25\r\n }\r\n },\r\n \"select\": {\r\n \"animation\": {\r\n \"duration\": 0\r\n }\r\n },\r\n \"inactive\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"opacity\": 0.2\r\n }\r\n },\r\n \"stickyTracking\": true,\r\n \"turboThreshold\": 1000,\r\n \"findNearestPointBy\": \"x\",\r\n \"tooltip\": {\r\n \"valueDecimals\": 4,\r\n \"pointFormat\": \" {series.name}
TENKAN SEN: {point.tenkanSen:.3f}
KIJUN SEN: {point.kijunSen:.3f}
CHIKOU SPAN: {point.chikouSpan:.3f}
SENKOU SPAN A: {point.senkouSpanA:.3f}
SENKOU SPAN B: {point.senkouSpanB:.3f}
\"\r\n },\r\n \"compareToMain\": false,\r\n \"params\": {\r\n \"period\": 26,\r\n \"periodTenkan\": 9,\r\n \"periodSenkouSpanB\": 52\r\n },\r\n \"tenkanLine\": {\r\n \"styles\": {\r\n \"lineWidth\": 1\r\n }\r\n },\r\n \"kijunLine\": {\r\n \"styles\": {\r\n \"lineWidth\": 1\r\n }\r\n },\r\n \"chikouLine\": {\r\n \"styles\": {\r\n \"lineWidth\": 1\r\n }\r\n },\r\n \"senkouSpanA\": {\r\n \"styles\": {\r\n \"lineWidth\": 1\r\n }\r\n },\r\n \"senkouSpanB\": {\r\n \"styles\": {\r\n \"lineWidth\": 1\r\n }\r\n },\r\n \"senkouSpan\": {\r\n \"styles\": {\r\n \"fill\": \"rgba(255, 0, 0, 0.5)\"\r\n }\r\n },\r\n \"dataGrouping\": {\r\n \"approximation\": \"ichimoku-averages\"\r\n }\r\n },\r\n \"keltnerchannels\": {\r\n \"lineWidth\": 1,\r\n \"allowPointSelect\": false,\r\n \"crisp\": true,\r\n \"showCheckbox\": false,\r\n \"animation\": {\r\n \"duration\": 1000\r\n },\r\n \"events\": {},\r\n \"marker\": {\r\n \"enabledThreshold\": 2,\r\n \"lineColor\": \"#ffffff\",\r\n \"lineWidth\": 0,\r\n \"radius\": 4,\r\n \"states\": {\r\n \"normal\": {\r\n \"animation\": true\r\n },\r\n \"hover\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"enabled\": true,\r\n \"radiusPlus\": 2,\r\n \"lineWidthPlus\": 1\r\n },\r\n \"select\": {\r\n \"fillColor\": \"#cccccc\",\r\n \"lineColor\": \"#000000\",\r\n \"lineWidth\": 2\r\n }\r\n },\r\n \"enabled\": false\r\n },\r\n \"point\": {\r\n \"events\": {}\r\n },\r\n \"dataLabels\": {\r\n \"animation\": {},\r\n \"align\": \"center\",\r\n \"defer\": true,\r\n \"padding\": 5,\r\n \"style\": {\r\n \"fontSize\": \"11px\",\r\n \"fontWeight\": \"bold\",\r\n \"color\": \"contrast\",\r\n \"textOutline\": \"1px contrast\"\r\n },\r\n \"verticalAlign\": \"bottom\",\r\n \"x\": 0,\r\n \"y\": 0\r\n },\r\n \"cropThreshold\": 300,\r\n \"opacity\": 1,\r\n \"pointRange\": 0,\r\n \"softThreshold\": true,\r\n \"states\": {\r\n \"normal\": {\r\n \"animation\": true\r\n },\r\n \"hover\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"lineWidthPlus\": 1,\r\n \"marker\": {},\r\n \"halo\": {\r\n \"size\": 10,\r\n \"opacity\": 0.25\r\n }\r\n },\r\n \"select\": {\r\n \"animation\": {\r\n \"duration\": 0\r\n }\r\n },\r\n \"inactive\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"opacity\": 0.2\r\n }\r\n },\r\n \"stickyTracking\": true,\r\n \"turboThreshold\": 1000,\r\n \"findNearestPointBy\": \"x\",\r\n \"tooltip\": {\r\n \"valueDecimals\": 4,\r\n \"pointFormat\": \" {series.name}
Upper Channel: {point.top}
EMA({series.options.params.period}): {point.middle}
Lower Channel: {point.bottom}
\"\r\n },\r\n \"compareToMain\": false,\r\n \"params\": {\r\n \"index\": 0,\r\n \"period\": 20,\r\n \"periodATR\": 10,\r\n \"multiplierATR\": 2\r\n },\r\n \"bottomLine\": {\r\n \"styles\": {\r\n \"lineWidth\": 1\r\n }\r\n },\r\n \"topLine\": {\r\n \"styles\": {\r\n \"lineWidth\": 1\r\n }\r\n },\r\n \"dataGrouping\": {\r\n \"approximation\": \"averages\"\r\n }\r\n },\r\n \"klinger\": {\r\n \"lineWidth\": 2,\r\n \"allowPointSelect\": false,\r\n \"crisp\": true,\r\n \"showCheckbox\": false,\r\n \"animation\": {\r\n \"duration\": 1000\r\n },\r\n \"events\": {},\r\n \"marker\": {\r\n \"enabledThreshold\": 2,\r\n \"lineColor\": \"#ffffff\",\r\n \"lineWidth\": 0,\r\n \"radius\": 4,\r\n \"states\": {\r\n \"normal\": {\r\n \"animation\": true\r\n },\r\n \"hover\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"enabled\": true,\r\n \"radiusPlus\": 2,\r\n \"lineWidthPlus\": 1\r\n },\r\n \"select\": {\r\n \"fillColor\": \"#cccccc\",\r\n \"lineColor\": \"#000000\",\r\n \"lineWidth\": 2\r\n }\r\n }\r\n },\r\n \"point\": {\r\n \"events\": {}\r\n },\r\n \"dataLabels\": {\r\n \"animation\": {},\r\n \"align\": \"center\",\r\n \"defer\": true,\r\n \"padding\": 5,\r\n \"style\": {\r\n \"fontSize\": \"11px\",\r\n \"fontWeight\": \"bold\",\r\n \"color\": \"contrast\",\r\n \"textOutline\": \"1px contrast\"\r\n },\r\n \"verticalAlign\": \"bottom\",\r\n \"x\": 0,\r\n \"y\": 0\r\n },\r\n \"cropThreshold\": 300,\r\n \"opacity\": 1,\r\n \"pointRange\": 0,\r\n \"softThreshold\": true,\r\n \"states\": {\r\n \"normal\": {\r\n \"animation\": true\r\n },\r\n \"hover\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"lineWidthPlus\": 1,\r\n \"marker\": {},\r\n \"halo\": {\r\n \"size\": 10,\r\n \"opacity\": 0.25\r\n }\r\n },\r\n \"select\": {\r\n \"animation\": {\r\n \"duration\": 0\r\n }\r\n },\r\n \"inactive\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"opacity\": 0.2\r\n }\r\n },\r\n \"stickyTracking\": true,\r\n \"turboThreshold\": 1000,\r\n \"findNearestPointBy\": \"x\",\r\n \"tooltip\": {\r\n \"valueDecimals\": 4,\r\n \"pointFormat\": \" {series.name}
Klinger: {point.y}
Signal: {point.signal}
\"\r\n },\r\n \"compareToMain\": false,\r\n \"params\": {\r\n \"index\": 3,\r\n \"period\": 14,\r\n \"fastAvgPeriod\": 34,\r\n \"slowAvgPeriod\": 55,\r\n \"signalPeriod\": 13,\r\n \"volumeSeriesID\": \"volume\"\r\n },\r\n \"signalLine\": {\r\n \"styles\": {\r\n \"lineWidth\": 1,\r\n \"lineColor\": \"#ff0000\"\r\n }\r\n },\r\n \"dataGrouping\": {\r\n \"approximation\": \"averages\"\r\n }\r\n },\r\n \"macd\": {\r\n \"lineWidth\": 2,\r\n \"allowPointSelect\": false,\r\n \"crisp\": false,\r\n \"showCheckbox\": false,\r\n \"animation\": {\r\n \"duration\": 1000\r\n },\r\n \"events\": {},\r\n \"marker\": {\r\n \"enabledThreshold\": 2,\r\n \"lineColor\": \"#ffffff\",\r\n \"lineWidth\": 0,\r\n \"radius\": 4,\r\n \"states\": {\r\n \"normal\": {\r\n \"animation\": true\r\n },\r\n \"hover\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"enabled\": true,\r\n \"radiusPlus\": 2,\r\n \"lineWidthPlus\": 1\r\n },\r\n \"select\": {\r\n \"fillColor\": \"#cccccc\",\r\n \"lineColor\": \"#000000\",\r\n \"lineWidth\": 2\r\n }\r\n }\r\n },\r\n \"point\": {\r\n \"events\": {}\r\n },\r\n \"dataLabels\": {\r\n \"animation\": {},\r\n \"align\": \"center\",\r\n \"defer\": true,\r\n \"padding\": 5,\r\n \"style\": {\r\n \"fontSize\": \"11px\",\r\n \"fontWeight\": \"bold\",\r\n \"color\": \"contrast\",\r\n \"textOutline\": \"1px contrast\"\r\n },\r\n \"verticalAlign\": \"bottom\",\r\n \"x\": 0,\r\n \"y\": 0\r\n },\r\n \"cropThreshold\": 300,\r\n \"opacity\": 1,\r\n \"pointRange\": 0,\r\n \"softThreshold\": true,\r\n \"states\": {\r\n \"normal\": {\r\n \"animation\": true\r\n },\r\n \"hover\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"lineWidthPlus\": 1,\r\n \"marker\": {},\r\n \"halo\": {\r\n \"size\": 0,\r\n \"opacity\": 0.25\r\n }\r\n },\r\n \"select\": {\r\n \"animation\": {\r\n \"duration\": 0\r\n }\r\n },\r\n \"inactive\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"opacity\": 0.2\r\n }\r\n },\r\n \"stickyTracking\": true,\r\n \"turboThreshold\": 1000,\r\n \"findNearestPointBy\": \"x\",\r\n \"tooltip\": {\r\n \"valueDecimals\": 4,\r\n \"pointFormat\": \" {series.name}
Value: {point.MACD}
Signal: {point.signal}
Histogram: {point.y}
\"\r\n },\r\n \"compareToMain\": false,\r\n \"params\": {\r\n \"index\": 3,\r\n \"period\": 26,\r\n \"shortPeriod\": 12,\r\n \"longPeriod\": 26,\r\n \"signalPeriod\": 9\r\n },\r\n \"signalLine\": {\r\n \"zones\": [],\r\n \"styles\": {\r\n \"lineWidth\": 1\r\n }\r\n },\r\n \"macdLine\": {\r\n \"zones\": [],\r\n \"styles\": {\r\n \"lineWidth\": 1\r\n }\r\n },\r\n \"threshold\": 0,\r\n \"groupPadding\": 0.1,\r\n \"pointPadding\": 0.1,\r\n \"dataGrouping\": {\r\n \"approximation\": \"averages\"\r\n },\r\n \"minPointLength\": 0\r\n },\r\n \"mfi\": {\r\n \"lineWidth\": 2,\r\n \"allowPointSelect\": false,\r\n \"crisp\": true,\r\n \"showCheckbox\": false,\r\n \"animation\": {\r\n \"duration\": 1000\r\n },\r\n \"events\": {},\r\n \"marker\": {\r\n \"enabledThreshold\": 2,\r\n \"lineColor\": \"#ffffff\",\r\n \"lineWidth\": 0,\r\n \"radius\": 4,\r\n \"states\": {\r\n \"normal\": {\r\n \"animation\": true\r\n },\r\n \"hover\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"enabled\": true,\r\n \"radiusPlus\": 2,\r\n \"lineWidthPlus\": 1\r\n },\r\n \"select\": {\r\n \"fillColor\": \"#cccccc\",\r\n \"lineColor\": \"#000000\",\r\n \"lineWidth\": 2\r\n }\r\n }\r\n },\r\n \"point\": {\r\n \"events\": {}\r\n },\r\n \"dataLabels\": {\r\n \"animation\": {},\r\n \"align\": \"center\",\r\n \"defer\": true,\r\n \"padding\": 5,\r\n \"style\": {\r\n \"fontSize\": \"11px\",\r\n \"fontWeight\": \"bold\",\r\n \"color\": \"contrast\",\r\n \"textOutline\": \"1px contrast\"\r\n },\r\n \"verticalAlign\": \"bottom\",\r\n \"x\": 0,\r\n \"y\": 0\r\n },\r\n \"cropThreshold\": 300,\r\n \"opacity\": 1,\r\n \"pointRange\": 0,\r\n \"softThreshold\": true,\r\n \"states\": {\r\n \"normal\": {\r\n \"animation\": true\r\n },\r\n \"hover\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"lineWidthPlus\": 1,\r\n \"marker\": {},\r\n \"halo\": {\r\n \"size\": 10,\r\n \"opacity\": 0.25\r\n }\r\n },\r\n \"select\": {\r\n \"animation\": {\r\n \"duration\": 0\r\n }\r\n },\r\n \"inactive\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"opacity\": 0.2\r\n }\r\n },\r\n \"stickyTracking\": true,\r\n \"turboThreshold\": 1000,\r\n \"findNearestPointBy\": \"x\",\r\n \"tooltip\": {\r\n \"valueDecimals\": 4\r\n },\r\n \"compareToMain\": false,\r\n \"params\": {\r\n \"period\": 14,\r\n \"volumeSeriesID\": \"volume\",\r\n \"decimals\": 4\r\n }\r\n },\r\n \"momentum\": {\r\n \"lineWidth\": 2,\r\n \"allowPointSelect\": false,\r\n \"crisp\": true,\r\n \"showCheckbox\": false,\r\n \"animation\": {\r\n \"duration\": 1000\r\n },\r\n \"events\": {},\r\n \"marker\": {\r\n \"enabledThreshold\": 2,\r\n \"lineColor\": \"#ffffff\",\r\n \"lineWidth\": 0,\r\n \"radius\": 4,\r\n \"states\": {\r\n \"normal\": {\r\n \"animation\": true\r\n },\r\n \"hover\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"enabled\": true,\r\n \"radiusPlus\": 2,\r\n \"lineWidthPlus\": 1\r\n },\r\n \"select\": {\r\n \"fillColor\": \"#cccccc\",\r\n \"lineColor\": \"#000000\",\r\n \"lineWidth\": 2\r\n }\r\n }\r\n },\r\n \"point\": {\r\n \"events\": {}\r\n },\r\n \"dataLabels\": {\r\n \"animation\": {},\r\n \"align\": \"center\",\r\n \"defer\": true,\r\n \"padding\": 5,\r\n \"style\": {\r\n \"fontSize\": \"11px\",\r\n \"fontWeight\": \"bold\",\r\n \"color\": \"contrast\",\r\n \"textOutline\": \"1px contrast\"\r\n },\r\n \"verticalAlign\": \"bottom\",\r\n \"x\": 0,\r\n \"y\": 0\r\n },\r\n \"cropThreshold\": 300,\r\n \"opacity\": 1,\r\n \"pointRange\": 0,\r\n \"softThreshold\": true,\r\n \"states\": {\r\n \"normal\": {\r\n \"animation\": true\r\n },\r\n \"hover\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"lineWidthPlus\": 1,\r\n \"marker\": {},\r\n \"halo\": {\r\n \"size\": 10,\r\n \"opacity\": 0.25\r\n }\r\n },\r\n \"select\": {\r\n \"animation\": {\r\n \"duration\": 0\r\n }\r\n },\r\n \"inactive\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"opacity\": 0.2\r\n }\r\n },\r\n \"stickyTracking\": true,\r\n \"turboThreshold\": 1000,\r\n \"findNearestPointBy\": \"x\",\r\n \"tooltip\": {\r\n \"valueDecimals\": 4\r\n },\r\n \"compareToMain\": false,\r\n \"params\": {\r\n \"index\": 3,\r\n \"period\": 14\r\n }\r\n },\r\n \"natr\": {\r\n \"lineWidth\": 2,\r\n \"allowPointSelect\": false,\r\n \"crisp\": true,\r\n \"showCheckbox\": false,\r\n \"animation\": {\r\n \"duration\": 1000\r\n },\r\n \"events\": {},\r\n \"marker\": {\r\n \"enabledThreshold\": 2,\r\n \"lineColor\": \"#ffffff\",\r\n \"lineWidth\": 0,\r\n \"radius\": 4,\r\n \"states\": {\r\n \"normal\": {\r\n \"animation\": true\r\n },\r\n \"hover\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"enabled\": true,\r\n \"radiusPlus\": 2,\r\n \"lineWidthPlus\": 1\r\n },\r\n \"select\": {\r\n \"fillColor\": \"#cccccc\",\r\n \"lineColor\": \"#000000\",\r\n \"lineWidth\": 2\r\n }\r\n }\r\n },\r\n \"point\": {\r\n \"events\": {}\r\n },\r\n \"dataLabels\": {\r\n \"animation\": {},\r\n \"align\": \"center\",\r\n \"defer\": true,\r\n \"padding\": 5,\r\n \"style\": {\r\n \"fontSize\": \"11px\",\r\n \"fontWeight\": \"bold\",\r\n \"color\": \"contrast\",\r\n \"textOutline\": \"1px contrast\"\r\n },\r\n \"verticalAlign\": \"bottom\",\r\n \"x\": 0,\r\n \"y\": 0\r\n },\r\n \"cropThreshold\": 300,\r\n \"opacity\": 1,\r\n \"pointRange\": 0,\r\n \"softThreshold\": true,\r\n \"states\": {\r\n \"normal\": {\r\n \"animation\": true\r\n },\r\n \"hover\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"lineWidthPlus\": 1,\r\n \"marker\": {},\r\n \"halo\": {\r\n \"size\": 10,\r\n \"opacity\": 0.25\r\n }\r\n },\r\n \"select\": {\r\n \"animation\": {\r\n \"duration\": 0\r\n }\r\n },\r\n \"inactive\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"opacity\": 0.2\r\n }\r\n },\r\n \"stickyTracking\": true,\r\n \"turboThreshold\": 1000,\r\n \"findNearestPointBy\": \"x\",\r\n \"tooltip\": {\r\n \"valueDecimals\": 4,\r\n \"valueSuffix\": \"%\"\r\n },\r\n \"compareToMain\": false,\r\n \"params\": {\r\n \"period\": 14\r\n }\r\n },\r\n \"obv\": {\r\n \"lineWidth\": 2,\r\n \"allowPointSelect\": false,\r\n \"crisp\": true,\r\n \"showCheckbox\": false,\r\n \"animation\": {\r\n \"duration\": 1000\r\n },\r\n \"events\": {},\r\n \"marker\": {\r\n \"enabledThreshold\": 2,\r\n \"lineColor\": \"#ffffff\",\r\n \"lineWidth\": 0,\r\n \"radius\": 4,\r\n \"states\": {\r\n \"normal\": {\r\n \"animation\": true\r\n },\r\n \"hover\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"enabled\": true,\r\n \"radiusPlus\": 2,\r\n \"lineWidthPlus\": 1\r\n },\r\n \"select\": {\r\n \"fillColor\": \"#cccccc\",\r\n \"lineColor\": \"#000000\",\r\n \"lineWidth\": 2\r\n }\r\n },\r\n \"enabled\": false\r\n },\r\n \"point\": {\r\n \"events\": {}\r\n },\r\n \"dataLabels\": {\r\n \"animation\": {},\r\n \"align\": \"center\",\r\n \"defer\": true,\r\n \"padding\": 5,\r\n \"style\": {\r\n \"fontSize\": \"11px\",\r\n \"fontWeight\": \"bold\",\r\n \"color\": \"contrast\",\r\n \"textOutline\": \"1px contrast\"\r\n },\r\n \"verticalAlign\": \"bottom\",\r\n \"x\": 0,\r\n \"y\": 0\r\n },\r\n \"cropThreshold\": 300,\r\n \"opacity\": 1,\r\n \"pointRange\": 0,\r\n \"softThreshold\": true,\r\n \"states\": {\r\n \"normal\": {\r\n \"animation\": true\r\n },\r\n \"hover\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"lineWidthPlus\": 1,\r\n \"marker\": {},\r\n \"halo\": {\r\n \"size\": 10,\r\n \"opacity\": 0.25\r\n }\r\n },\r\n \"select\": {\r\n \"animation\": {\r\n \"duration\": 0\r\n }\r\n },\r\n \"inactive\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"opacity\": 0.2\r\n }\r\n },\r\n \"stickyTracking\": true,\r\n \"turboThreshold\": 1000,\r\n \"findNearestPointBy\": \"x\",\r\n \"tooltip\": {\r\n \"valueDecimals\": 0\r\n },\r\n \"compareToMain\": false,\r\n \"params\": {\r\n \"volumeSeriesID\": \"volume\"\r\n }\r\n },\r\n \"pivotpoints\": {\r\n \"lineWidth\": 2,\r\n \"allowPointSelect\": false,\r\n \"crisp\": true,\r\n \"showCheckbox\": false,\r\n \"animation\": {\r\n \"duration\": 1000\r\n },\r\n \"events\": {},\r\n \"marker\": {\r\n \"enabledThreshold\": 2,\r\n \"lineColor\": \"#ffffff\",\r\n \"lineWidth\": 0,\r\n \"radius\": 4,\r\n \"states\": {\r\n \"normal\": {\r\n \"animation\": true\r\n },\r\n \"hover\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"enabled\": true,\r\n \"radiusPlus\": 2,\r\n \"lineWidthPlus\": 1\r\n },\r\n \"select\": {\r\n \"fillColor\": \"#cccccc\",\r\n \"lineColor\": \"#000000\",\r\n \"lineWidth\": 2\r\n }\r\n },\r\n \"enabled\": false\r\n },\r\n \"point\": {\r\n \"events\": {}\r\n },\r\n \"dataLabels\": {\r\n \"animation\": {},\r\n \"align\": \"center\",\r\n \"defer\": true,\r\n \"padding\": 5,\r\n \"style\": {\r\n \"fontSize\": \"11px\",\r\n \"fontWeight\": \"bold\",\r\n \"color\": \"contrast\",\r\n \"textOutline\": \"1px contrast\"\r\n },\r\n \"verticalAlign\": \"bottom\",\r\n \"x\": 0,\r\n \"y\": 0,\r\n \"enabled\": true,\r\n \"format\": \"{point.pivotLine}\"\r\n },\r\n \"cropThreshold\": 300,\r\n \"opacity\": 1,\r\n \"pointRange\": 0,\r\n \"softThreshold\": true,\r\n \"states\": {\r\n \"normal\": {\r\n \"animation\": true\r\n },\r\n \"hover\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"lineWidthPlus\": 1,\r\n \"marker\": {},\r\n \"halo\": {\r\n \"size\": 10,\r\n \"opacity\": 0.25\r\n }\r\n },\r\n \"select\": {\r\n \"animation\": {\r\n \"duration\": 0\r\n }\r\n },\r\n \"inactive\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"opacity\": 0.2\r\n }\r\n },\r\n \"stickyTracking\": true,\r\n \"turboThreshold\": 1000,\r\n \"findNearestPointBy\": \"x\",\r\n \"tooltip\": {\r\n \"valueDecimals\": 4\r\n },\r\n \"compareToMain\": false,\r\n \"params\": {\r\n \"period\": 28,\r\n \"algorithm\": \"standard\"\r\n },\r\n \"enableMouseTracking\": false,\r\n \"dataGrouping\": {\r\n \"approximation\": \"averages\"\r\n }\r\n },\r\n \"ppo\": {\r\n \"lineWidth\": 2,\r\n \"allowPointSelect\": false,\r\n \"crisp\": true,\r\n \"showCheckbox\": false,\r\n \"animation\": {\r\n \"duration\": 1000\r\n },\r\n \"events\": {},\r\n \"marker\": {\r\n \"enabledThreshold\": 2,\r\n \"lineColor\": \"#ffffff\",\r\n \"lineWidth\": 0,\r\n \"radius\": 4,\r\n \"states\": {\r\n \"normal\": {\r\n \"animation\": true\r\n },\r\n \"hover\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"enabled\": true,\r\n \"radiusPlus\": 2,\r\n \"lineWidthPlus\": 1\r\n },\r\n \"select\": {\r\n \"fillColor\": \"#cccccc\",\r\n \"lineColor\": \"#000000\",\r\n \"lineWidth\": 2\r\n }\r\n }\r\n },\r\n \"point\": {\r\n \"events\": {}\r\n },\r\n \"dataLabels\": {\r\n \"animation\": {},\r\n \"align\": \"center\",\r\n \"defer\": true,\r\n \"padding\": 5,\r\n \"style\": {\r\n \"fontSize\": \"11px\",\r\n \"fontWeight\": \"bold\",\r\n \"color\": \"contrast\",\r\n \"textOutline\": \"1px contrast\"\r\n },\r\n \"verticalAlign\": \"bottom\",\r\n \"x\": 0,\r\n \"y\": 0\r\n },\r\n \"cropThreshold\": 300,\r\n \"opacity\": 1,\r\n \"pointRange\": 0,\r\n \"softThreshold\": true,\r\n \"states\": {\r\n \"normal\": {\r\n \"animation\": true\r\n },\r\n \"hover\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"lineWidthPlus\": 1,\r\n \"marker\": {},\r\n \"halo\": {\r\n \"size\": 10,\r\n \"opacity\": 0.25\r\n }\r\n },\r\n \"select\": {\r\n \"animation\": {\r\n \"duration\": 0\r\n }\r\n },\r\n \"inactive\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"opacity\": 0.2\r\n }\r\n },\r\n \"stickyTracking\": true,\r\n \"turboThreshold\": 1000,\r\n \"findNearestPointBy\": \"x\",\r\n \"tooltip\": {\r\n \"valueDecimals\": 4\r\n },\r\n \"compareToMain\": false,\r\n \"params\": {\r\n \"index\": 3,\r\n \"periods\": [\r\n 12,\r\n 26\r\n ]\r\n }\r\n },\r\n \"pc\": {\r\n \"lineWidth\": 1,\r\n \"allowPointSelect\": false,\r\n \"crisp\": true,\r\n \"showCheckbox\": false,\r\n \"animation\": {\r\n \"duration\": 1000\r\n },\r\n \"events\": {},\r\n \"marker\": {\r\n \"enabledThreshold\": 2,\r\n \"lineColor\": \"#ffffff\",\r\n \"lineWidth\": 0,\r\n \"radius\": 4,\r\n \"states\": {\r\n \"normal\": {\r\n \"animation\": true\r\n },\r\n \"hover\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"enabled\": true,\r\n \"radiusPlus\": 2,\r\n \"lineWidthPlus\": 1\r\n },\r\n \"select\": {\r\n \"fillColor\": \"#cccccc\",\r\n \"lineColor\": \"#000000\",\r\n \"lineWidth\": 2\r\n }\r\n }\r\n },\r\n \"point\": {\r\n \"events\": {}\r\n },\r\n \"dataLabels\": {\r\n \"animation\": {},\r\n \"align\": \"center\",\r\n \"defer\": true,\r\n \"padding\": 5,\r\n \"style\": {\r\n \"fontSize\": \"11px\",\r\n \"fontWeight\": \"bold\",\r\n \"color\": \"contrast\",\r\n \"textOutline\": \"1px contrast\"\r\n },\r\n \"verticalAlign\": \"bottom\",\r\n \"x\": 0,\r\n \"y\": 0\r\n },\r\n \"cropThreshold\": 300,\r\n \"opacity\": 1,\r\n \"pointRange\": 0,\r\n \"softThreshold\": true,\r\n \"states\": {\r\n \"normal\": {\r\n \"animation\": true\r\n },\r\n \"hover\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"lineWidthPlus\": 1,\r\n \"marker\": {},\r\n \"halo\": {\r\n \"size\": 10,\r\n \"opacity\": 0.25\r\n }\r\n },\r\n \"select\": {\r\n \"animation\": {\r\n \"duration\": 0\r\n }\r\n },\r\n \"inactive\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"opacity\": 0.2\r\n }\r\n },\r\n \"stickyTracking\": true,\r\n \"turboThreshold\": 1000,\r\n \"findNearestPointBy\": \"x\",\r\n \"tooltip\": {\r\n \"valueDecimals\": 4\r\n },\r\n \"compareToMain\": false,\r\n \"params\": {\r\n \"period\": 20\r\n },\r\n \"topLine\": {\r\n \"styles\": {\r\n \"lineColor\": \"#90ed7d\",\r\n \"lineWidth\": 1\r\n }\r\n },\r\n \"bottomLine\": {\r\n \"styles\": {\r\n \"lineColor\": \"#f45b5b\",\r\n \"lineWidth\": 1\r\n }\r\n },\r\n \"dataGrouping\": {\r\n \"approximation\": \"averages\"\r\n }\r\n },\r\n \"priceenvelopes\": {\r\n \"lineWidth\": 2,\r\n \"allowPointSelect\": false,\r\n \"crisp\": true,\r\n \"showCheckbox\": false,\r\n \"animation\": {\r\n \"duration\": 1000\r\n },\r\n \"events\": {},\r\n \"marker\": {\r\n \"enabledThreshold\": 2,\r\n \"lineColor\": \"#ffffff\",\r\n \"lineWidth\": 0,\r\n \"radius\": 4,\r\n \"states\": {\r\n \"normal\": {\r\n \"animation\": true\r\n },\r\n \"hover\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"enabled\": true,\r\n \"radiusPlus\": 2,\r\n \"lineWidthPlus\": 1\r\n },\r\n \"select\": {\r\n \"fillColor\": \"#cccccc\",\r\n \"lineColor\": \"#000000\",\r\n \"lineWidth\": 2\r\n }\r\n },\r\n \"enabled\": false\r\n },\r\n \"point\": {\r\n \"events\": {}\r\n },\r\n \"dataLabels\": {\r\n \"animation\": {},\r\n \"align\": \"center\",\r\n \"defer\": true,\r\n \"padding\": 5,\r\n \"style\": {\r\n \"fontSize\": \"11px\",\r\n \"fontWeight\": \"bold\",\r\n \"color\": \"contrast\",\r\n \"textOutline\": \"1px contrast\"\r\n },\r\n \"verticalAlign\": \"bottom\",\r\n \"x\": 0,\r\n \"y\": 0\r\n },\r\n \"cropThreshold\": 300,\r\n \"opacity\": 1,\r\n \"pointRange\": 0,\r\n \"softThreshold\": true,\r\n \"states\": {\r\n \"normal\": {\r\n \"animation\": true\r\n },\r\n \"hover\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"lineWidthPlus\": 1,\r\n \"marker\": {},\r\n \"halo\": {\r\n \"size\": 10,\r\n \"opacity\": 0.25\r\n }\r\n },\r\n \"select\": {\r\n \"animation\": {\r\n \"duration\": 0\r\n }\r\n },\r\n \"inactive\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"opacity\": 0.2\r\n }\r\n },\r\n \"stickyTracking\": true,\r\n \"turboThreshold\": 1000,\r\n \"findNearestPointBy\": \"x\",\r\n \"tooltip\": {\r\n \"valueDecimals\": 4,\r\n \"pointFormat\": \" {series.name}
Top: {point.top}
Middle: {point.middle}
Bottom: {point.bottom}
\"\r\n },\r\n \"compareToMain\": false,\r\n \"params\": {\r\n \"index\": 3,\r\n \"period\": 20,\r\n \"topBand\": 0.1,\r\n \"bottomBand\": 0.1\r\n },\r\n \"bottomLine\": {\r\n \"styles\": {\r\n \"lineWidth\": 1\r\n }\r\n },\r\n \"topLine\": {\r\n \"styles\": {\r\n \"lineWidth\": 1\r\n }\r\n },\r\n \"dataGrouping\": {\r\n \"approximation\": \"averages\"\r\n }\r\n },\r\n \"psar\": {\r\n \"lineWidth\": 0,\r\n \"allowPointSelect\": false,\r\n \"crisp\": true,\r\n \"showCheckbox\": false,\r\n \"animation\": {\r\n \"duration\": 1000\r\n },\r\n \"events\": {},\r\n \"marker\": {\r\n \"enabledThreshold\": 2,\r\n \"lineColor\": \"#ffffff\",\r\n \"lineWidth\": 0,\r\n \"radius\": 4,\r\n \"states\": {\r\n \"normal\": {\r\n \"animation\": true\r\n },\r\n \"hover\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"enabled\": true,\r\n \"radiusPlus\": 2,\r\n \"lineWidthPlus\": 1\r\n },\r\n \"select\": {\r\n \"fillColor\": \"#cccccc\",\r\n \"lineColor\": \"#000000\",\r\n \"lineWidth\": 2\r\n }\r\n },\r\n \"enabled\": true\r\n },\r\n \"point\": {\r\n \"events\": {}\r\n },\r\n \"dataLabels\": {\r\n \"animation\": {},\r\n \"align\": \"center\",\r\n \"defer\": true,\r\n \"padding\": 5,\r\n \"style\": {\r\n \"fontSize\": \"11px\",\r\n \"fontWeight\": \"bold\",\r\n \"color\": \"contrast\",\r\n \"textOutline\": \"1px contrast\"\r\n },\r\n \"verticalAlign\": \"bottom\",\r\n \"x\": 0,\r\n \"y\": 0\r\n },\r\n \"cropThreshold\": 300,\r\n \"opacity\": 1,\r\n \"pointRange\": 0,\r\n \"softThreshold\": true,\r\n \"states\": {\r\n \"normal\": {\r\n \"animation\": true\r\n },\r\n \"hover\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"lineWidthPlus\": 0,\r\n \"marker\": {},\r\n \"halo\": {\r\n \"size\": 10,\r\n \"opacity\": 0.25\r\n }\r\n },\r\n \"select\": {\r\n \"animation\": {\r\n \"duration\": 0\r\n }\r\n },\r\n \"inactive\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"opacity\": 0.2\r\n }\r\n },\r\n \"stickyTracking\": true,\r\n \"turboThreshold\": 1000,\r\n \"findNearestPointBy\": \"x\",\r\n \"tooltip\": {\r\n \"valueDecimals\": 4\r\n },\r\n \"compareToMain\": false,\r\n \"params\": {\r\n \"index\": 2,\r\n \"initialAccelerationFactor\": 0.02,\r\n \"maxAccelerationFactor\": 0.2,\r\n \"increment\": 0.02,\r\n \"decimals\": 4\r\n }\r\n },\r\n \"roc\": {\r\n \"lineWidth\": 2,\r\n \"allowPointSelect\": false,\r\n \"crisp\": true,\r\n \"showCheckbox\": false,\r\n \"animation\": {\r\n \"duration\": 1000\r\n },\r\n \"events\": {},\r\n \"marker\": {\r\n \"enabledThreshold\": 2,\r\n \"lineColor\": \"#ffffff\",\r\n \"lineWidth\": 0,\r\n \"radius\": 4,\r\n \"states\": {\r\n \"normal\": {\r\n \"animation\": true\r\n },\r\n \"hover\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"enabled\": true,\r\n \"radiusPlus\": 2,\r\n \"lineWidthPlus\": 1\r\n },\r\n \"select\": {\r\n \"fillColor\": \"#cccccc\",\r\n \"lineColor\": \"#000000\",\r\n \"lineWidth\": 2\r\n }\r\n }\r\n },\r\n \"point\": {\r\n \"events\": {}\r\n },\r\n \"dataLabels\": {\r\n \"animation\": {},\r\n \"align\": \"center\",\r\n \"defer\": true,\r\n \"padding\": 5,\r\n \"style\": {\r\n \"fontSize\": \"11px\",\r\n \"fontWeight\": \"bold\",\r\n \"color\": \"contrast\",\r\n \"textOutline\": \"1px contrast\"\r\n },\r\n \"verticalAlign\": \"bottom\",\r\n \"x\": 0,\r\n \"y\": 0\r\n },\r\n \"cropThreshold\": 300,\r\n \"opacity\": 1,\r\n \"pointRange\": 0,\r\n \"softThreshold\": true,\r\n \"states\": {\r\n \"normal\": {\r\n \"animation\": true\r\n },\r\n \"hover\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"lineWidthPlus\": 1,\r\n \"marker\": {},\r\n \"halo\": {\r\n \"size\": 10,\r\n \"opacity\": 0.25\r\n }\r\n },\r\n \"select\": {\r\n \"animation\": {\r\n \"duration\": 0\r\n }\r\n },\r\n \"inactive\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"opacity\": 0.2\r\n }\r\n },\r\n \"stickyTracking\": true,\r\n \"turboThreshold\": 1000,\r\n \"findNearestPointBy\": \"x\",\r\n \"tooltip\": {\r\n \"valueDecimals\": 4\r\n },\r\n \"compareToMain\": false,\r\n \"params\": {\r\n \"index\": 3,\r\n \"period\": 9\r\n }\r\n },\r\n \"rsi\": {\r\n \"lineWidth\": 2,\r\n \"allowPointSelect\": false,\r\n \"crisp\": true,\r\n \"showCheckbox\": false,\r\n \"animation\": {\r\n \"duration\": 1000\r\n },\r\n \"events\": {},\r\n \"marker\": {\r\n \"enabledThreshold\": 2,\r\n \"lineColor\": \"#ffffff\",\r\n \"lineWidth\": 0,\r\n \"radius\": 4,\r\n \"states\": {\r\n \"normal\": {\r\n \"animation\": true\r\n },\r\n \"hover\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"enabled\": true,\r\n \"radiusPlus\": 2,\r\n \"lineWidthPlus\": 1\r\n },\r\n \"select\": {\r\n \"fillColor\": \"#cccccc\",\r\n \"lineColor\": \"#000000\",\r\n \"lineWidth\": 2\r\n }\r\n }\r\n },\r\n \"point\": {\r\n \"events\": {}\r\n },\r\n \"dataLabels\": {\r\n \"animation\": {},\r\n \"align\": \"center\",\r\n \"defer\": true,\r\n \"padding\": 5,\r\n \"style\": {\r\n \"fontSize\": \"11px\",\r\n \"fontWeight\": \"bold\",\r\n \"color\": \"contrast\",\r\n \"textOutline\": \"1px contrast\"\r\n },\r\n \"verticalAlign\": \"bottom\",\r\n \"x\": 0,\r\n \"y\": 0\r\n },\r\n \"cropThreshold\": 300,\r\n \"opacity\": 1,\r\n \"pointRange\": 0,\r\n \"softThreshold\": true,\r\n \"states\": {\r\n \"normal\": {\r\n \"animation\": true\r\n },\r\n \"hover\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"lineWidthPlus\": 1,\r\n \"marker\": {},\r\n \"halo\": {\r\n \"size\": 10,\r\n \"opacity\": 0.25\r\n }\r\n },\r\n \"select\": {\r\n \"animation\": {\r\n \"duration\": 0\r\n }\r\n },\r\n \"inactive\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"opacity\": 0.2\r\n }\r\n },\r\n \"stickyTracking\": true,\r\n \"turboThreshold\": 1000,\r\n \"findNearestPointBy\": \"x\",\r\n \"tooltip\": {\r\n \"valueDecimals\": 4\r\n },\r\n \"compareToMain\": false,\r\n \"params\": {\r\n \"index\": 3,\r\n \"period\": 14,\r\n \"decimals\": 4\r\n }\r\n },\r\n \"stochastic\": {\r\n \"lineWidth\": 2,\r\n \"allowPointSelect\": false,\r\n \"crisp\": true,\r\n \"showCheckbox\": false,\r\n \"animation\": {\r\n \"duration\": 1000\r\n },\r\n \"events\": {},\r\n \"marker\": {\r\n \"enabledThreshold\": 2,\r\n \"lineColor\": \"#ffffff\",\r\n \"lineWidth\": 0,\r\n \"radius\": 4,\r\n \"states\": {\r\n \"normal\": {\r\n \"animation\": true\r\n },\r\n \"hover\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"enabled\": true,\r\n \"radiusPlus\": 2,\r\n \"lineWidthPlus\": 1\r\n },\r\n \"select\": {\r\n \"fillColor\": \"#cccccc\",\r\n \"lineColor\": \"#000000\",\r\n \"lineWidth\": 2\r\n }\r\n },\r\n \"enabled\": false\r\n },\r\n \"point\": {\r\n \"events\": {}\r\n },\r\n \"dataLabels\": {\r\n \"animation\": {},\r\n \"align\": \"center\",\r\n \"defer\": true,\r\n \"padding\": 5,\r\n \"style\": {\r\n \"fontSize\": \"11px\",\r\n \"fontWeight\": \"bold\",\r\n \"color\": \"contrast\",\r\n \"textOutline\": \"1px contrast\"\r\n },\r\n \"verticalAlign\": \"bottom\",\r\n \"x\": 0,\r\n \"y\": 0\r\n },\r\n \"cropThreshold\": 300,\r\n \"opacity\": 1,\r\n \"pointRange\": 0,\r\n \"softThreshold\": true,\r\n \"states\": {\r\n \"normal\": {\r\n \"animation\": true\r\n },\r\n \"hover\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"lineWidthPlus\": 1,\r\n \"marker\": {},\r\n \"halo\": {\r\n \"size\": 10,\r\n \"opacity\": 0.25\r\n }\r\n },\r\n \"select\": {\r\n \"animation\": {\r\n \"duration\": 0\r\n }\r\n },\r\n \"inactive\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"opacity\": 0.2\r\n }\r\n },\r\n \"stickyTracking\": true,\r\n \"turboThreshold\": 1000,\r\n \"findNearestPointBy\": \"x\",\r\n \"tooltip\": {\r\n \"valueDecimals\": 4,\r\n \"pointFormat\": \" {series.name}
%K: {point.y}
%D: {point.smoothed}
\"\r\n },\r\n \"compareToMain\": false,\r\n \"params\": {\r\n \"periods\": [\r\n 14,\r\n 3\r\n ]\r\n },\r\n \"smoothedLine\": {\r\n \"styles\": {\r\n \"lineWidth\": 1\r\n }\r\n },\r\n \"dataGrouping\": {\r\n \"approximation\": \"averages\"\r\n }\r\n },\r\n \"slowstochastic\": {\r\n \"lineWidth\": 2,\r\n \"allowPointSelect\": false,\r\n \"crisp\": true,\r\n \"showCheckbox\": false,\r\n \"animation\": {\r\n \"duration\": 1000\r\n },\r\n \"events\": {},\r\n \"marker\": {\r\n \"enabledThreshold\": 2,\r\n \"lineColor\": \"#ffffff\",\r\n \"lineWidth\": 0,\r\n \"radius\": 4,\r\n \"states\": {\r\n \"normal\": {\r\n \"animation\": true\r\n },\r\n \"hover\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"enabled\": true,\r\n \"radiusPlus\": 2,\r\n \"lineWidthPlus\": 1\r\n },\r\n \"select\": {\r\n \"fillColor\": \"#cccccc\",\r\n \"lineColor\": \"#000000\",\r\n \"lineWidth\": 2\r\n }\r\n },\r\n \"enabled\": false\r\n },\r\n \"point\": {\r\n \"events\": {}\r\n },\r\n \"dataLabels\": {\r\n \"animation\": {},\r\n \"align\": \"center\",\r\n \"defer\": true,\r\n \"padding\": 5,\r\n \"style\": {\r\n \"fontSize\": \"11px\",\r\n \"fontWeight\": \"bold\",\r\n \"color\": \"contrast\",\r\n \"textOutline\": \"1px contrast\"\r\n },\r\n \"verticalAlign\": \"bottom\",\r\n \"x\": 0,\r\n \"y\": 0\r\n },\r\n \"cropThreshold\": 300,\r\n \"opacity\": 1,\r\n \"pointRange\": 0,\r\n \"softThreshold\": true,\r\n \"states\": {\r\n \"normal\": {\r\n \"animation\": true\r\n },\r\n \"hover\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"lineWidthPlus\": 1,\r\n \"marker\": {},\r\n \"halo\": {\r\n \"size\": 10,\r\n \"opacity\": 0.25\r\n }\r\n },\r\n \"select\": {\r\n \"animation\": {\r\n \"duration\": 0\r\n }\r\n },\r\n \"inactive\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"opacity\": 0.2\r\n }\r\n },\r\n \"stickyTracking\": true,\r\n \"turboThreshold\": 1000,\r\n \"findNearestPointBy\": \"x\",\r\n \"tooltip\": {\r\n \"valueDecimals\": 4,\r\n \"pointFormat\": \" {series.name}
%K: {point.y}
%D: {point.smoothed}
\"\r\n },\r\n \"compareToMain\": false,\r\n \"params\": {\r\n \"periods\": [\r\n 14,\r\n 3,\r\n 3\r\n ]\r\n },\r\n \"smoothedLine\": {\r\n \"styles\": {\r\n \"lineWidth\": 1\r\n }\r\n },\r\n \"dataGrouping\": {\r\n \"approximation\": \"averages\"\r\n }\r\n },\r\n \"supertrend\": {\r\n \"lineWidth\": 2,\r\n \"allowPointSelect\": false,\r\n \"crisp\": true,\r\n \"showCheckbox\": false,\r\n \"animation\": {\r\n \"duration\": 1000\r\n },\r\n \"events\": {},\r\n \"marker\": {\r\n \"enabledThreshold\": 2,\r\n \"lineColor\": \"#ffffff\",\r\n \"lineWidth\": 0,\r\n \"radius\": 4,\r\n \"states\": {\r\n \"normal\": {\r\n \"animation\": true\r\n },\r\n \"hover\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"enabled\": true,\r\n \"radiusPlus\": 2,\r\n \"lineWidthPlus\": 1\r\n },\r\n \"select\": {\r\n \"fillColor\": \"#cccccc\",\r\n \"lineColor\": \"#000000\",\r\n \"lineWidth\": 2\r\n }\r\n }\r\n },\r\n \"point\": {\r\n \"events\": {}\r\n },\r\n \"dataLabels\": {\r\n \"animation\": {},\r\n \"align\": \"center\",\r\n \"defer\": true,\r\n \"padding\": 5,\r\n \"style\": {\r\n \"fontSize\": \"11px\",\r\n \"fontWeight\": \"bold\",\r\n \"color\": \"contrast\",\r\n \"textOutline\": \"1px contrast\"\r\n },\r\n \"verticalAlign\": \"bottom\",\r\n \"x\": 0,\r\n \"y\": 0\r\n },\r\n \"cropThreshold\": 300,\r\n \"opacity\": 1,\r\n \"pointRange\": 0,\r\n \"softThreshold\": true,\r\n \"states\": {\r\n \"normal\": {\r\n \"animation\": true\r\n },\r\n \"hover\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"lineWidthPlus\": 1,\r\n \"marker\": {},\r\n \"halo\": {\r\n \"size\": 10,\r\n \"opacity\": 0.25\r\n }\r\n },\r\n \"select\": {\r\n \"animation\": {\r\n \"duration\": 0\r\n }\r\n },\r\n \"inactive\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"opacity\": 0.2\r\n }\r\n },\r\n \"stickyTracking\": true,\r\n \"turboThreshold\": 1000,\r\n \"findNearestPointBy\": \"x\",\r\n \"tooltip\": {\r\n \"valueDecimals\": 4\r\n },\r\n \"compareToMain\": false,\r\n \"params\": {\r\n \"period\": 10,\r\n \"multiplier\": 3\r\n },\r\n \"risingTrendColor\": \"#06b535\",\r\n \"fallingTrendColor\": \"#f21313\",\r\n \"changeTrendLine\": {\r\n \"styles\": {\r\n \"lineWidth\": 1,\r\n \"lineColor\": \"#333333\",\r\n \"dashStyle\": \"LongDash\"\r\n }\r\n }\r\n },\r\n \"vbp\": {\r\n \"lineWidth\": 2,\r\n \"allowPointSelect\": false,\r\n \"crisp\": true,\r\n \"showCheckbox\": false,\r\n \"animation\": {\r\n \"duration\": 1000\r\n },\r\n \"events\": {},\r\n \"marker\": {\r\n \"enabledThreshold\": 2,\r\n \"lineColor\": \"#ffffff\",\r\n \"lineWidth\": 0,\r\n \"radius\": 4,\r\n \"states\": {\r\n \"normal\": {\r\n \"animation\": true\r\n },\r\n \"hover\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"enabled\": true,\r\n \"radiusPlus\": 2,\r\n \"lineWidthPlus\": 1\r\n },\r\n \"select\": {\r\n \"fillColor\": \"#cccccc\",\r\n \"lineColor\": \"#000000\",\r\n \"lineWidth\": 2\r\n }\r\n }\r\n },\r\n \"point\": {\r\n \"events\": {}\r\n },\r\n \"dataLabels\": {\r\n \"animation\": {},\r\n \"align\": \"center\",\r\n \"defer\": true,\r\n \"padding\": 0,\r\n \"style\": {\r\n \"fontSize\": \"7px\",\r\n \"fontWeight\": \"bold\",\r\n \"color\": \"contrast\",\r\n \"textOutline\": \"1px contrast\"\r\n },\r\n \"verticalAlign\": \"top\",\r\n \"x\": 0,\r\n \"y\": 0,\r\n \"allowOverlap\": true,\r\n \"enabled\": true,\r\n \"format\": \"P: {point.volumePos:.2f} | N: {point.volumeNeg:.2f}\"\r\n },\r\n \"cropThreshold\": 300,\r\n \"opacity\": 1,\r\n \"pointRange\": 0,\r\n \"softThreshold\": true,\r\n \"states\": {\r\n \"normal\": {\r\n \"animation\": true\r\n },\r\n \"hover\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"lineWidthPlus\": 1,\r\n \"marker\": {},\r\n \"halo\": {\r\n \"size\": 10,\r\n \"opacity\": 0.25\r\n }\r\n },\r\n \"select\": {\r\n \"animation\": {\r\n \"duration\": 0\r\n }\r\n },\r\n \"inactive\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"opacity\": 0.2\r\n }\r\n },\r\n \"stickyTracking\": true,\r\n \"turboThreshold\": 1000,\r\n \"findNearestPointBy\": \"x\",\r\n \"tooltip\": {\r\n \"valueDecimals\": 4\r\n },\r\n \"compareToMain\": false,\r\n \"params\": {\r\n \"ranges\": 12,\r\n \"volumeSeriesID\": \"volume\"\r\n },\r\n \"zoneLines\": {\r\n \"enabled\": true,\r\n \"styles\": {\r\n \"color\": \"#0A9AC9\",\r\n \"dashStyle\": \"LongDash\",\r\n \"lineWidth\": 1\r\n }\r\n },\r\n \"volumeDivision\": {\r\n \"enabled\": true,\r\n \"styles\": {\r\n \"positiveColor\": \"rgba(144, 237, 125, 0.8)\",\r\n \"negativeColor\": \"rgba(244, 91, 91, 0.8)\"\r\n }\r\n },\r\n \"animationLimit\": 1000,\r\n \"enableMouseTracking\": false,\r\n \"pointPadding\": 0,\r\n \"zIndex\": -1,\r\n \"dataGrouping\": {\r\n \"enabled\": false\r\n }\r\n },\r\n \"vwap\": {\r\n \"lineWidth\": 2,\r\n \"allowPointSelect\": false,\r\n \"crisp\": true,\r\n \"showCheckbox\": false,\r\n \"animation\": {\r\n \"duration\": 1000\r\n },\r\n \"events\": {},\r\n \"marker\": {\r\n \"enabledThreshold\": 2,\r\n \"lineColor\": \"#ffffff\",\r\n \"lineWidth\": 0,\r\n \"radius\": 4,\r\n \"states\": {\r\n \"normal\": {\r\n \"animation\": true\r\n },\r\n \"hover\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"enabled\": true,\r\n \"radiusPlus\": 2,\r\n \"lineWidthPlus\": 1\r\n },\r\n \"select\": {\r\n \"fillColor\": \"#cccccc\",\r\n \"lineColor\": \"#000000\",\r\n \"lineWidth\": 2\r\n }\r\n }\r\n },\r\n \"point\": {\r\n \"events\": {}\r\n },\r\n \"dataLabels\": {\r\n \"animation\": {},\r\n \"align\": \"center\",\r\n \"defer\": true,\r\n \"padding\": 5,\r\n \"style\": {\r\n \"fontSize\": \"11px\",\r\n \"fontWeight\": \"bold\",\r\n \"color\": \"contrast\",\r\n \"textOutline\": \"1px contrast\"\r\n },\r\n \"verticalAlign\": \"bottom\",\r\n \"x\": 0,\r\n \"y\": 0\r\n },\r\n \"cropThreshold\": 300,\r\n \"opacity\": 1,\r\n \"pointRange\": 0,\r\n \"softThreshold\": true,\r\n \"states\": {\r\n \"normal\": {\r\n \"animation\": true\r\n },\r\n \"hover\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"lineWidthPlus\": 1,\r\n \"marker\": {},\r\n \"halo\": {\r\n \"size\": 10,\r\n \"opacity\": 0.25\r\n }\r\n },\r\n \"select\": {\r\n \"animation\": {\r\n \"duration\": 0\r\n }\r\n },\r\n \"inactive\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"opacity\": 0.2\r\n }\r\n },\r\n \"stickyTracking\": true,\r\n \"turboThreshold\": 1000,\r\n \"findNearestPointBy\": \"x\",\r\n \"tooltip\": {\r\n \"valueDecimals\": 4\r\n },\r\n \"compareToMain\": false,\r\n \"params\": {\r\n \"period\": 30,\r\n \"volumeSeriesID\": \"volume\"\r\n }\r\n },\r\n \"williamsr\": {\r\n \"lineWidth\": 2,\r\n \"allowPointSelect\": false,\r\n \"crisp\": true,\r\n \"showCheckbox\": false,\r\n \"animation\": {\r\n \"duration\": 1000\r\n },\r\n \"events\": {},\r\n \"marker\": {\r\n \"enabledThreshold\": 2,\r\n \"lineColor\": \"#ffffff\",\r\n \"lineWidth\": 0,\r\n \"radius\": 4,\r\n \"states\": {\r\n \"normal\": {\r\n \"animation\": true\r\n },\r\n \"hover\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"enabled\": true,\r\n \"radiusPlus\": 2,\r\n \"lineWidthPlus\": 1\r\n },\r\n \"select\": {\r\n \"fillColor\": \"#cccccc\",\r\n \"lineColor\": \"#000000\",\r\n \"lineWidth\": 2\r\n }\r\n }\r\n },\r\n \"point\": {\r\n \"events\": {}\r\n },\r\n \"dataLabels\": {\r\n \"animation\": {},\r\n \"align\": \"center\",\r\n \"defer\": true,\r\n \"padding\": 5,\r\n \"style\": {\r\n \"fontSize\": \"11px\",\r\n \"fontWeight\": \"bold\",\r\n \"color\": \"contrast\",\r\n \"textOutline\": \"1px contrast\"\r\n },\r\n \"verticalAlign\": \"bottom\",\r\n \"x\": 0,\r\n \"y\": 0\r\n },\r\n \"cropThreshold\": 300,\r\n \"opacity\": 1,\r\n \"pointRange\": 0,\r\n \"softThreshold\": true,\r\n \"states\": {\r\n \"normal\": {\r\n \"animation\": true\r\n },\r\n \"hover\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"lineWidthPlus\": 1,\r\n \"marker\": {},\r\n \"halo\": {\r\n \"size\": 10,\r\n \"opacity\": 0.25\r\n }\r\n },\r\n \"select\": {\r\n \"animation\": {\r\n \"duration\": 0\r\n }\r\n },\r\n \"inactive\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"opacity\": 0.2\r\n }\r\n },\r\n \"stickyTracking\": true,\r\n \"turboThreshold\": 1000,\r\n \"findNearestPointBy\": \"x\",\r\n \"tooltip\": {\r\n \"valueDecimals\": 4\r\n },\r\n \"compareToMain\": false,\r\n \"params\": {\r\n \"period\": 14\r\n }\r\n },\r\n \"wma\": {\r\n \"lineWidth\": 2,\r\n \"allowPointSelect\": false,\r\n \"crisp\": true,\r\n \"showCheckbox\": false,\r\n \"animation\": {\r\n \"duration\": 1000\r\n },\r\n \"events\": {},\r\n \"marker\": {\r\n \"enabledThreshold\": 2,\r\n \"lineColor\": \"#ffffff\",\r\n \"lineWidth\": 0,\r\n \"radius\": 4,\r\n \"states\": {\r\n \"normal\": {\r\n \"animation\": true\r\n },\r\n \"hover\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"enabled\": true,\r\n \"radiusPlus\": 2,\r\n \"lineWidthPlus\": 1\r\n },\r\n \"select\": {\r\n \"fillColor\": \"#cccccc\",\r\n \"lineColor\": \"#000000\",\r\n \"lineWidth\": 2\r\n }\r\n }\r\n },\r\n \"point\": {\r\n \"events\": {}\r\n },\r\n \"dataLabels\": {\r\n \"animation\": {},\r\n \"align\": \"center\",\r\n \"defer\": true,\r\n \"padding\": 5,\r\n \"style\": {\r\n \"fontSize\": \"11px\",\r\n \"fontWeight\": \"bold\",\r\n \"color\": \"contrast\",\r\n \"textOutline\": \"1px contrast\"\r\n },\r\n \"verticalAlign\": \"bottom\",\r\n \"x\": 0,\r\n \"y\": 0\r\n },\r\n \"cropThreshold\": 300,\r\n \"opacity\": 1,\r\n \"pointRange\": 0,\r\n \"softThreshold\": true,\r\n \"states\": {\r\n \"normal\": {\r\n \"animation\": true\r\n },\r\n \"hover\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"lineWidthPlus\": 1,\r\n \"marker\": {},\r\n \"halo\": {\r\n \"size\": 10,\r\n \"opacity\": 0.25\r\n }\r\n },\r\n \"select\": {\r\n \"animation\": {\r\n \"duration\": 0\r\n }\r\n },\r\n \"inactive\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"opacity\": 0.2\r\n }\r\n },\r\n \"stickyTracking\": true,\r\n \"turboThreshold\": 1000,\r\n \"findNearestPointBy\": \"x\",\r\n \"tooltip\": {\r\n \"valueDecimals\": 4\r\n },\r\n \"compareToMain\": false,\r\n \"params\": {\r\n \"index\": 3,\r\n \"period\": 9\r\n }\r\n },\r\n \"zigzag\": {\r\n \"lineWidth\": 2,\r\n \"allowPointSelect\": false,\r\n \"crisp\": true,\r\n \"showCheckbox\": false,\r\n \"animation\": {\r\n \"duration\": 1000\r\n },\r\n \"events\": {},\r\n \"marker\": {\r\n \"enabledThreshold\": 2,\r\n \"lineColor\": \"#ffffff\",\r\n \"lineWidth\": 0,\r\n \"radius\": 4,\r\n \"states\": {\r\n \"normal\": {\r\n \"animation\": true\r\n },\r\n \"hover\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"enabled\": true,\r\n \"radiusPlus\": 2,\r\n \"lineWidthPlus\": 1\r\n },\r\n \"select\": {\r\n \"fillColor\": \"#cccccc\",\r\n \"lineColor\": \"#000000\",\r\n \"lineWidth\": 2\r\n }\r\n }\r\n },\r\n \"point\": {\r\n \"events\": {}\r\n },\r\n \"dataLabels\": {\r\n \"animation\": {},\r\n \"align\": \"center\",\r\n \"defer\": true,\r\n \"padding\": 5,\r\n \"style\": {\r\n \"fontSize\": \"11px\",\r\n \"fontWeight\": \"bold\",\r\n \"color\": \"contrast\",\r\n \"textOutline\": \"1px contrast\"\r\n },\r\n \"verticalAlign\": \"bottom\",\r\n \"x\": 0,\r\n \"y\": 0\r\n },\r\n \"cropThreshold\": 300,\r\n \"opacity\": 1,\r\n \"pointRange\": 0,\r\n \"softThreshold\": true,\r\n \"states\": {\r\n \"normal\": {\r\n \"animation\": true\r\n },\r\n \"hover\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"lineWidthPlus\": 1,\r\n \"marker\": {},\r\n \"halo\": {\r\n \"size\": 10,\r\n \"opacity\": 0.25\r\n }\r\n },\r\n \"select\": {\r\n \"animation\": {\r\n \"duration\": 0\r\n }\r\n },\r\n \"inactive\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"opacity\": 0.2\r\n }\r\n },\r\n \"stickyTracking\": true,\r\n \"turboThreshold\": 1000,\r\n \"findNearestPointBy\": \"x\",\r\n \"tooltip\": {\r\n \"valueDecimals\": 4\r\n },\r\n \"compareToMain\": false,\r\n \"params\": {\r\n \"lowIndex\": 2,\r\n \"highIndex\": 1,\r\n \"deviation\": 1\r\n }\r\n },\r\n \"linearRegression\": {\r\n \"lineWidth\": 2,\r\n \"allowPointSelect\": false,\r\n \"crisp\": true,\r\n \"showCheckbox\": false,\r\n \"animation\": {\r\n \"duration\": 1000\r\n },\r\n \"events\": {},\r\n \"marker\": {\r\n \"enabledThreshold\": 2,\r\n \"lineColor\": \"#ffffff\",\r\n \"lineWidth\": 0,\r\n \"radius\": 4,\r\n \"states\": {\r\n \"normal\": {\r\n \"animation\": true\r\n },\r\n \"hover\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"enabled\": true,\r\n \"radiusPlus\": 2,\r\n \"lineWidthPlus\": 1\r\n },\r\n \"select\": {\r\n \"fillColor\": \"#cccccc\",\r\n \"lineColor\": \"#000000\",\r\n \"lineWidth\": 2\r\n }\r\n }\r\n },\r\n \"point\": {\r\n \"events\": {}\r\n },\r\n \"dataLabels\": {\r\n \"animation\": {},\r\n \"align\": \"center\",\r\n \"defer\": true,\r\n \"padding\": 5,\r\n \"style\": {\r\n \"fontSize\": \"11px\",\r\n \"fontWeight\": \"bold\",\r\n \"color\": \"contrast\",\r\n \"textOutline\": \"1px contrast\"\r\n },\r\n \"verticalAlign\": \"bottom\",\r\n \"x\": 0,\r\n \"y\": 0\r\n },\r\n \"cropThreshold\": 300,\r\n \"opacity\": 1,\r\n \"pointRange\": 0,\r\n \"softThreshold\": true,\r\n \"states\": {\r\n \"normal\": {\r\n \"animation\": true\r\n },\r\n \"hover\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"lineWidthPlus\": 1,\r\n \"marker\": {},\r\n \"halo\": {\r\n \"size\": 10,\r\n \"opacity\": 0.25\r\n }\r\n },\r\n \"select\": {\r\n \"animation\": {\r\n \"duration\": 0\r\n }\r\n },\r\n \"inactive\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"opacity\": 0.2\r\n }\r\n },\r\n \"stickyTracking\": true,\r\n \"turboThreshold\": 1000,\r\n \"findNearestPointBy\": \"x\",\r\n \"tooltip\": {\r\n \"valueDecimals\": 4\r\n },\r\n \"compareToMain\": false,\r\n \"params\": {\r\n \"index\": 3,\r\n \"period\": 14,\r\n \"xAxisUnit\": null\r\n }\r\n },\r\n \"linearRegressionSlope\": {\r\n \"lineWidth\": 2,\r\n \"allowPointSelect\": false,\r\n \"crisp\": true,\r\n \"showCheckbox\": false,\r\n \"animation\": {\r\n \"duration\": 1000\r\n },\r\n \"events\": {},\r\n \"marker\": {\r\n \"enabledThreshold\": 2,\r\n \"lineColor\": \"#ffffff\",\r\n \"lineWidth\": 0,\r\n \"radius\": 4,\r\n \"states\": {\r\n \"normal\": {\r\n \"animation\": true\r\n },\r\n \"hover\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"enabled\": true,\r\n \"radiusPlus\": 2,\r\n \"lineWidthPlus\": 1\r\n },\r\n \"select\": {\r\n \"fillColor\": \"#cccccc\",\r\n \"lineColor\": \"#000000\",\r\n \"lineWidth\": 2\r\n }\r\n }\r\n },\r\n \"point\": {\r\n \"events\": {}\r\n },\r\n \"dataLabels\": {\r\n \"animation\": {},\r\n \"align\": \"center\",\r\n \"defer\": true,\r\n \"padding\": 5,\r\n \"style\": {\r\n \"fontSize\": \"11px\",\r\n \"fontWeight\": \"bold\",\r\n \"color\": \"contrast\",\r\n \"textOutline\": \"1px contrast\"\r\n },\r\n \"verticalAlign\": \"bottom\",\r\n \"x\": 0,\r\n \"y\": 0\r\n },\r\n \"cropThreshold\": 300,\r\n \"opacity\": 1,\r\n \"pointRange\": 0,\r\n \"softThreshold\": true,\r\n \"states\": {\r\n \"normal\": {\r\n \"animation\": true\r\n },\r\n \"hover\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"lineWidthPlus\": 1,\r\n \"marker\": {},\r\n \"halo\": {\r\n \"size\": 10,\r\n \"opacity\": 0.25\r\n }\r\n },\r\n \"select\": {\r\n \"animation\": {\r\n \"duration\": 0\r\n }\r\n },\r\n \"inactive\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"opacity\": 0.2\r\n }\r\n },\r\n \"stickyTracking\": true,\r\n \"turboThreshold\": 1000,\r\n \"findNearestPointBy\": \"x\",\r\n \"tooltip\": {\r\n \"valueDecimals\": 4\r\n },\r\n \"compareToMain\": false,\r\n \"params\": {\r\n \"index\": 3,\r\n \"period\": 14,\r\n \"xAxisUnit\": null\r\n }\r\n },\r\n \"linearRegressionIntercept\": {\r\n \"lineWidth\": 2,\r\n \"allowPointSelect\": false,\r\n \"crisp\": true,\r\n \"showCheckbox\": false,\r\n \"animation\": {\r\n \"duration\": 1000\r\n },\r\n \"events\": {},\r\n \"marker\": {\r\n \"enabledThreshold\": 2,\r\n \"lineColor\": \"#ffffff\",\r\n \"lineWidth\": 0,\r\n \"radius\": 4,\r\n \"states\": {\r\n \"normal\": {\r\n \"animation\": true\r\n },\r\n \"hover\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"enabled\": true,\r\n \"radiusPlus\": 2,\r\n \"lineWidthPlus\": 1\r\n },\r\n \"select\": {\r\n \"fillColor\": \"#cccccc\",\r\n \"lineColor\": \"#000000\",\r\n \"lineWidth\": 2\r\n }\r\n }\r\n },\r\n \"point\": {\r\n \"events\": {}\r\n },\r\n \"dataLabels\": {\r\n \"animation\": {},\r\n \"align\": \"center\",\r\n \"defer\": true,\r\n \"padding\": 5,\r\n \"style\": {\r\n \"fontSize\": \"11px\",\r\n \"fontWeight\": \"bold\",\r\n \"color\": \"contrast\",\r\n \"textOutline\": \"1px contrast\"\r\n },\r\n \"verticalAlign\": \"bottom\",\r\n \"x\": 0,\r\n \"y\": 0\r\n },\r\n \"cropThreshold\": 300,\r\n \"opacity\": 1,\r\n \"pointRange\": 0,\r\n \"softThreshold\": true,\r\n \"states\": {\r\n \"normal\": {\r\n \"animation\": true\r\n },\r\n \"hover\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"lineWidthPlus\": 1,\r\n \"marker\": {},\r\n \"halo\": {\r\n \"size\": 10,\r\n \"opacity\": 0.25\r\n }\r\n },\r\n \"select\": {\r\n \"animation\": {\r\n \"duration\": 0\r\n }\r\n },\r\n \"inactive\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"opacity\": 0.2\r\n }\r\n },\r\n \"stickyTracking\": true,\r\n \"turboThreshold\": 1000,\r\n \"findNearestPointBy\": \"x\",\r\n \"tooltip\": {\r\n \"valueDecimals\": 4\r\n },\r\n \"compareToMain\": false,\r\n \"params\": {\r\n \"index\": 3,\r\n \"period\": 14,\r\n \"xAxisUnit\": null\r\n }\r\n },\r\n \"linearRegressionAngle\": {\r\n \"lineWidth\": 2,\r\n \"allowPointSelect\": false,\r\n \"crisp\": true,\r\n \"showCheckbox\": false,\r\n \"animation\": {\r\n \"duration\": 1000\r\n },\r\n \"events\": {},\r\n \"marker\": {\r\n \"enabledThreshold\": 2,\r\n \"lineColor\": \"#ffffff\",\r\n \"lineWidth\": 0,\r\n \"radius\": 4,\r\n \"states\": {\r\n \"normal\": {\r\n \"animation\": true\r\n },\r\n \"hover\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"enabled\": true,\r\n \"radiusPlus\": 2,\r\n \"lineWidthPlus\": 1\r\n },\r\n \"select\": {\r\n \"fillColor\": \"#cccccc\",\r\n \"lineColor\": \"#000000\",\r\n \"lineWidth\": 2\r\n }\r\n }\r\n },\r\n \"point\": {\r\n \"events\": {}\r\n },\r\n \"dataLabels\": {\r\n \"animation\": {},\r\n \"align\": \"center\",\r\n \"defer\": true,\r\n \"padding\": 5,\r\n \"style\": {\r\n \"fontSize\": \"11px\",\r\n \"fontWeight\": \"bold\",\r\n \"color\": \"contrast\",\r\n \"textOutline\": \"1px contrast\"\r\n },\r\n \"verticalAlign\": \"bottom\",\r\n \"x\": 0,\r\n \"y\": 0\r\n },\r\n \"cropThreshold\": 300,\r\n \"opacity\": 1,\r\n \"pointRange\": 0,\r\n \"softThreshold\": true,\r\n \"states\": {\r\n \"normal\": {\r\n \"animation\": true\r\n },\r\n \"hover\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"lineWidthPlus\": 1,\r\n \"marker\": {},\r\n \"halo\": {\r\n \"size\": 10,\r\n \"opacity\": 0.25\r\n }\r\n },\r\n \"select\": {\r\n \"animation\": {\r\n \"duration\": 0\r\n }\r\n },\r\n \"inactive\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"opacity\": 0.2\r\n }\r\n },\r\n \"stickyTracking\": true,\r\n \"turboThreshold\": 1000,\r\n \"findNearestPointBy\": \"x\",\r\n \"tooltip\": {\r\n \"valueDecimals\": 4,\r\n \"pointFormat\": \"{series.name}: {point.y}°
\"\r\n },\r\n \"compareToMain\": false,\r\n \"params\": {\r\n \"index\": 3,\r\n \"period\": 14,\r\n \"xAxisUnit\": null\r\n }\r\n },\r\n \"abands\": {\r\n \"lineWidth\": 1,\r\n \"allowPointSelect\": false,\r\n \"crisp\": true,\r\n \"showCheckbox\": false,\r\n \"animation\": {\r\n \"duration\": 1000\r\n },\r\n \"events\": {},\r\n \"marker\": {\r\n \"enabledThreshold\": 2,\r\n \"lineColor\": \"#ffffff\",\r\n \"lineWidth\": 0,\r\n \"radius\": 4,\r\n \"states\": {\r\n \"normal\": {\r\n \"animation\": true\r\n },\r\n \"hover\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"enabled\": true,\r\n \"radiusPlus\": 2,\r\n \"lineWidthPlus\": 1\r\n },\r\n \"select\": {\r\n \"fillColor\": \"#cccccc\",\r\n \"lineColor\": \"#000000\",\r\n \"lineWidth\": 2\r\n }\r\n }\r\n },\r\n \"point\": {\r\n \"events\": {}\r\n },\r\n \"dataLabels\": {\r\n \"animation\": {},\r\n \"align\": \"center\",\r\n \"defer\": true,\r\n \"padding\": 5,\r\n \"style\": {\r\n \"fontSize\": \"11px\",\r\n \"fontWeight\": \"bold\",\r\n \"color\": \"contrast\",\r\n \"textOutline\": \"1px contrast\"\r\n },\r\n \"verticalAlign\": \"bottom\",\r\n \"x\": 0,\r\n \"y\": 0\r\n },\r\n \"cropThreshold\": 300,\r\n \"opacity\": 1,\r\n \"pointRange\": 0,\r\n \"softThreshold\": true,\r\n \"states\": {\r\n \"normal\": {\r\n \"animation\": true\r\n },\r\n \"hover\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"lineWidthPlus\": 1,\r\n \"marker\": {},\r\n \"halo\": {\r\n \"size\": 10,\r\n \"opacity\": 0.25\r\n }\r\n },\r\n \"select\": {\r\n \"animation\": {\r\n \"duration\": 0\r\n }\r\n },\r\n \"inactive\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"opacity\": 0.2\r\n }\r\n },\r\n \"stickyTracking\": true,\r\n \"turboThreshold\": 1000,\r\n \"findNearestPointBy\": \"x\",\r\n \"tooltip\": {\r\n \"valueDecimals\": 4\r\n },\r\n \"compareToMain\": false,\r\n \"params\": {\r\n \"index\": 3,\r\n \"period\": 20,\r\n \"factor\": 0.001\r\n },\r\n \"topLine\": {\r\n \"styles\": {\r\n \"lineWidth\": 1\r\n }\r\n },\r\n \"bottomLine\": {\r\n \"styles\": {\r\n \"lineWidth\": 1\r\n }\r\n },\r\n \"dataGrouping\": {\r\n \"approximation\": \"averages\"\r\n }\r\n },\r\n \"trendline\": {\r\n \"lineWidth\": 2,\r\n \"allowPointSelect\": false,\r\n \"crisp\": true,\r\n \"showCheckbox\": false,\r\n \"animation\": {\r\n \"duration\": 1000\r\n },\r\n \"events\": {},\r\n \"marker\": {\r\n \"enabledThreshold\": 2,\r\n \"lineColor\": \"#ffffff\",\r\n \"lineWidth\": 0,\r\n \"radius\": 4,\r\n \"states\": {\r\n \"normal\": {\r\n \"animation\": true\r\n },\r\n \"hover\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"enabled\": true,\r\n \"radiusPlus\": 2,\r\n \"lineWidthPlus\": 1\r\n },\r\n \"select\": {\r\n \"fillColor\": \"#cccccc\",\r\n \"lineColor\": \"#000000\",\r\n \"lineWidth\": 2\r\n }\r\n }\r\n },\r\n \"point\": {\r\n \"events\": {}\r\n },\r\n \"dataLabels\": {\r\n \"animation\": {},\r\n \"align\": \"center\",\r\n \"defer\": true,\r\n \"padding\": 5,\r\n \"style\": {\r\n \"fontSize\": \"11px\",\r\n \"fontWeight\": \"bold\",\r\n \"color\": \"contrast\",\r\n \"textOutline\": \"1px contrast\"\r\n },\r\n \"verticalAlign\": \"bottom\",\r\n \"x\": 0,\r\n \"y\": 0\r\n },\r\n \"cropThreshold\": 300,\r\n \"opacity\": 1,\r\n \"pointRange\": 0,\r\n \"softThreshold\": true,\r\n \"states\": {\r\n \"normal\": {\r\n \"animation\": true\r\n },\r\n \"hover\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"lineWidthPlus\": 1,\r\n \"marker\": {},\r\n \"halo\": {\r\n \"size\": 10,\r\n \"opacity\": 0.25\r\n }\r\n },\r\n \"select\": {\r\n \"animation\": {\r\n \"duration\": 0\r\n }\r\n },\r\n \"inactive\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"opacity\": 0.2\r\n }\r\n },\r\n \"stickyTracking\": true,\r\n \"turboThreshold\": 1000,\r\n \"findNearestPointBy\": \"x\",\r\n \"tooltip\": {\r\n \"valueDecimals\": 4\r\n },\r\n \"compareToMain\": false,\r\n \"params\": {\r\n \"index\": 3\r\n }\r\n },\r\n \"disparityindex\": {\r\n \"lineWidth\": 2,\r\n \"allowPointSelect\": false,\r\n \"crisp\": true,\r\n \"showCheckbox\": false,\r\n \"animation\": {\r\n \"duration\": 1000\r\n },\r\n \"events\": {},\r\n \"marker\": {\r\n \"enabledThreshold\": 2,\r\n \"lineColor\": \"#ffffff\",\r\n \"lineWidth\": 0,\r\n \"radius\": 4,\r\n \"states\": {\r\n \"normal\": {\r\n \"animation\": true\r\n },\r\n \"hover\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"enabled\": true,\r\n \"radiusPlus\": 2,\r\n \"lineWidthPlus\": 1\r\n },\r\n \"select\": {\r\n \"fillColor\": \"#cccccc\",\r\n \"lineColor\": \"#000000\",\r\n \"lineWidth\": 2\r\n }\r\n },\r\n \"enabled\": false\r\n },\r\n \"point\": {\r\n \"events\": {}\r\n },\r\n \"dataLabels\": {\r\n \"animation\": {},\r\n \"align\": \"center\",\r\n \"defer\": true,\r\n \"padding\": 5,\r\n \"style\": {\r\n \"fontSize\": \"11px\",\r\n \"fontWeight\": \"bold\",\r\n \"color\": \"contrast\",\r\n \"textOutline\": \"1px contrast\"\r\n },\r\n \"verticalAlign\": \"bottom\",\r\n \"x\": 0,\r\n \"y\": 0\r\n },\r\n \"cropThreshold\": 300,\r\n \"opacity\": 1,\r\n \"pointRange\": 0,\r\n \"softThreshold\": true,\r\n \"states\": {\r\n \"normal\": {\r\n \"animation\": true\r\n },\r\n \"hover\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"lineWidthPlus\": 1,\r\n \"marker\": {},\r\n \"halo\": {\r\n \"size\": 10,\r\n \"opacity\": 0.25\r\n }\r\n },\r\n \"select\": {\r\n \"animation\": {\r\n \"duration\": 0\r\n }\r\n },\r\n \"inactive\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"opacity\": 0.2\r\n }\r\n },\r\n \"stickyTracking\": true,\r\n \"turboThreshold\": 1000,\r\n \"findNearestPointBy\": \"x\",\r\n \"tooltip\": {\r\n \"valueDecimals\": 4\r\n },\r\n \"compareToMain\": false,\r\n \"params\": {\r\n \"index\": 3,\r\n \"period\": 14,\r\n \"average\": \"sma\"\r\n },\r\n \"dataGrouping\": {\r\n \"approximation\": \"averages\"\r\n }\r\n },\r\n \"heikinashi\": {\r\n \"lineWidth\": 1,\r\n \"allowPointSelect\": false,\r\n \"crisp\": true,\r\n \"showCheckbox\": false,\r\n \"animation\": {\r\n \"duration\": 1000\r\n },\r\n \"events\": {},\r\n \"marker\": null,\r\n \"point\": {\r\n \"events\": {}\r\n },\r\n \"dataLabels\": {\r\n \"animation\": {},\r\n \"defer\": true,\r\n \"padding\": 5,\r\n \"style\": {\r\n \"fontSize\": \"11px\",\r\n \"fontWeight\": \"bold\",\r\n \"color\": \"contrast\",\r\n \"textOutline\": \"1px contrast\"\r\n },\r\n \"x\": 0\r\n },\r\n \"cropThreshold\": 50,\r\n \"opacity\": 1,\r\n \"pointRange\": null,\r\n \"softThreshold\": true,\r\n \"states\": {\r\n \"normal\": {\r\n \"animation\": true\r\n },\r\n \"hover\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"lineWidthPlus\": 1,\r\n \"marker\": {},\r\n \"halo\": false,\r\n \"brightness\": 0.1,\r\n \"lineWidth\": 2\r\n },\r\n \"select\": {\r\n \"animation\": {\r\n \"duration\": 0\r\n },\r\n \"color\": \"#cccccc\",\r\n \"borderColor\": \"#000000\"\r\n },\r\n \"inactive\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"opacity\": 0.2\r\n }\r\n },\r\n \"stickyTracking\": true,\r\n \"turboThreshold\": 1000,\r\n \"findNearestPointBy\": \"x\",\r\n \"borderRadius\": 0,\r\n \"centerInCategory\": false,\r\n \"groupPadding\": 0.2,\r\n \"pointPadding\": 0.1,\r\n \"minPointLength\": 0,\r\n \"startFromThreshold\": true,\r\n \"tooltip\": {\r\n \"distance\": 6,\r\n \"pointFormat\": \" {series.name}
Open: {point.open}
High: {point.high}
Low: {point.low}
Close: {point.close}
\"\r\n },\r\n \"threshold\": null,\r\n \"borderColor\": \"#ffffff\",\r\n \"line\": {\r\n \"lineWidth\": 2,\r\n \"allowPointSelect\": false,\r\n \"crisp\": true,\r\n \"showCheckbox\": false,\r\n \"animation\": {\r\n \"duration\": 1000\r\n },\r\n \"events\": {},\r\n \"marker\": {\r\n \"enabledThreshold\": 2,\r\n \"lineColor\": \"#ffffff\",\r\n \"lineWidth\": 0,\r\n \"radius\": 4,\r\n \"states\": {\r\n \"normal\": {\r\n \"animation\": true\r\n },\r\n \"hover\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"enabled\": true,\r\n \"radiusPlus\": 2,\r\n \"lineWidthPlus\": 1\r\n },\r\n \"select\": {\r\n \"fillColor\": \"#cccccc\",\r\n \"lineColor\": \"#000000\",\r\n \"lineWidth\": 2\r\n }\r\n }\r\n },\r\n \"point\": {\r\n \"events\": {}\r\n },\r\n \"dataLabels\": {\r\n \"animation\": {},\r\n \"align\": \"center\",\r\n \"defer\": true,\r\n \"padding\": 5,\r\n \"style\": {\r\n \"fontSize\": \"11px\",\r\n \"fontWeight\": \"bold\",\r\n \"color\": \"contrast\",\r\n \"textOutline\": \"1px contrast\"\r\n },\r\n \"verticalAlign\": \"bottom\",\r\n \"x\": 0,\r\n \"y\": 0\r\n },\r\n \"cropThreshold\": 300,\r\n \"opacity\": 1,\r\n \"pointRange\": 0,\r\n \"softThreshold\": true,\r\n \"states\": {\r\n \"normal\": {\r\n \"animation\": true\r\n },\r\n \"hover\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"lineWidthPlus\": 1,\r\n \"marker\": {},\r\n \"halo\": {\r\n \"size\": 10,\r\n \"opacity\": 0.25\r\n }\r\n },\r\n \"select\": {\r\n \"animation\": {\r\n \"duration\": 0\r\n }\r\n },\r\n \"inactive\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"opacity\": 0.2\r\n }\r\n },\r\n \"stickyTracking\": true,\r\n \"turboThreshold\": 1000,\r\n \"findNearestPointBy\": \"x\"\r\n },\r\n \"area\": {\r\n \"lineWidth\": 2,\r\n \"allowPointSelect\": false,\r\n \"crisp\": true,\r\n \"showCheckbox\": false,\r\n \"animation\": {\r\n \"duration\": 1000\r\n },\r\n \"events\": {},\r\n \"marker\": {\r\n \"enabledThreshold\": 2,\r\n \"lineColor\": \"#ffffff\",\r\n \"lineWidth\": 0,\r\n \"radius\": 4,\r\n \"states\": {\r\n \"normal\": {\r\n \"animation\": true\r\n },\r\n \"hover\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"enabled\": true,\r\n \"radiusPlus\": 2,\r\n \"lineWidthPlus\": 1\r\n },\r\n \"select\": {\r\n \"fillColor\": \"#cccccc\",\r\n \"lineColor\": \"#000000\",\r\n \"lineWidth\": 2\r\n }\r\n }\r\n },\r\n \"point\": {\r\n \"events\": {}\r\n },\r\n \"dataLabels\": {\r\n \"animation\": {},\r\n \"align\": \"center\",\r\n \"defer\": true,\r\n \"padding\": 5,\r\n \"style\": {\r\n \"fontSize\": \"11px\",\r\n \"fontWeight\": \"bold\",\r\n \"color\": \"contrast\",\r\n \"textOutline\": \"1px contrast\"\r\n },\r\n \"verticalAlign\": \"bottom\",\r\n \"x\": 0,\r\n \"y\": 0\r\n },\r\n \"cropThreshold\": 300,\r\n \"opacity\": 1,\r\n \"pointRange\": 0,\r\n \"softThreshold\": true,\r\n \"states\": {\r\n \"normal\": {\r\n \"animation\": true\r\n },\r\n \"hover\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"lineWidthPlus\": 1,\r\n \"marker\": {},\r\n \"halo\": {\r\n \"size\": 10,\r\n \"opacity\": 0.25\r\n }\r\n },\r\n \"select\": {\r\n \"animation\": {\r\n \"duration\": 0\r\n }\r\n },\r\n \"inactive\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"opacity\": 0.2\r\n }\r\n },\r\n \"stickyTracking\": true,\r\n \"turboThreshold\": 1000,\r\n \"findNearestPointBy\": \"x\",\r\n \"threshold\": 0\r\n },\r\n \"spline\": {\r\n \"lineWidth\": 2,\r\n \"allowPointSelect\": false,\r\n \"crisp\": true,\r\n \"showCheckbox\": false,\r\n \"animation\": {\r\n \"duration\": 1000\r\n },\r\n \"events\": {},\r\n \"marker\": {\r\n \"enabledThreshold\": 2,\r\n \"lineColor\": \"#ffffff\",\r\n \"lineWidth\": 0,\r\n \"radius\": 4,\r\n \"states\": {\r\n \"normal\": {\r\n \"animation\": true\r\n },\r\n \"hover\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"enabled\": true,\r\n \"radiusPlus\": 2,\r\n \"lineWidthPlus\": 1\r\n },\r\n \"select\": {\r\n \"fillColor\": \"#cccccc\",\r\n \"lineColor\": \"#000000\",\r\n \"lineWidth\": 2\r\n }\r\n }\r\n },\r\n \"point\": {\r\n \"events\": {}\r\n },\r\n \"dataLabels\": {\r\n \"animation\": {},\r\n \"align\": \"center\",\r\n \"defer\": true,\r\n \"padding\": 5,\r\n \"style\": {\r\n \"fontSize\": \"11px\",\r\n \"fontWeight\": \"bold\",\r\n \"color\": \"contrast\",\r\n \"textOutline\": \"1px contrast\"\r\n },\r\n \"verticalAlign\": \"bottom\",\r\n \"x\": 0,\r\n \"y\": 0\r\n },\r\n \"cropThreshold\": 300,\r\n \"opacity\": 1,\r\n \"pointRange\": 0,\r\n \"softThreshold\": true,\r\n \"states\": {\r\n \"normal\": {\r\n \"animation\": true\r\n },\r\n \"hover\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"lineWidthPlus\": 1,\r\n \"marker\": {},\r\n \"halo\": {\r\n \"size\": 10,\r\n \"opacity\": 0.25\r\n }\r\n },\r\n \"select\": {\r\n \"animation\": {\r\n \"duration\": 0\r\n }\r\n },\r\n \"inactive\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"opacity\": 0.2\r\n }\r\n },\r\n \"stickyTracking\": true,\r\n \"turboThreshold\": 1000,\r\n \"findNearestPointBy\": \"x\"\r\n },\r\n \"areaspline\": {\r\n \"lineWidth\": 2,\r\n \"allowPointSelect\": false,\r\n \"crisp\": true,\r\n \"showCheckbox\": false,\r\n \"animation\": {\r\n \"duration\": 1000\r\n },\r\n \"events\": {},\r\n \"marker\": {\r\n \"enabledThreshold\": 2,\r\n \"lineColor\": \"#ffffff\",\r\n \"lineWidth\": 0,\r\n \"radius\": 4,\r\n \"states\": {\r\n \"normal\": {\r\n \"animation\": true\r\n },\r\n \"hover\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"enabled\": true,\r\n \"radiusPlus\": 2,\r\n \"lineWidthPlus\": 1\r\n },\r\n \"select\": {\r\n \"fillColor\": \"#cccccc\",\r\n \"lineColor\": \"#000000\",\r\n \"lineWidth\": 2\r\n }\r\n }\r\n },\r\n \"point\": {\r\n \"events\": {}\r\n },\r\n \"dataLabels\": {\r\n \"animation\": {},\r\n \"align\": \"center\",\r\n \"defer\": true,\r\n \"padding\": 5,\r\n \"style\": {\r\n \"fontSize\": \"11px\",\r\n \"fontWeight\": \"bold\",\r\n \"color\": \"contrast\",\r\n \"textOutline\": \"1px contrast\"\r\n },\r\n \"verticalAlign\": \"bottom\",\r\n \"x\": 0,\r\n \"y\": 0\r\n },\r\n \"cropThreshold\": 300,\r\n \"opacity\": 1,\r\n \"pointRange\": 0,\r\n \"softThreshold\": true,\r\n \"states\": {\r\n \"normal\": {\r\n \"animation\": true\r\n },\r\n \"hover\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"lineWidthPlus\": 1,\r\n \"marker\": {},\r\n \"halo\": {\r\n \"size\": 10,\r\n \"opacity\": 0.25\r\n }\r\n },\r\n \"select\": {\r\n \"animation\": {\r\n \"duration\": 0\r\n }\r\n },\r\n \"inactive\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"opacity\": 0.2\r\n }\r\n },\r\n \"stickyTracking\": true,\r\n \"turboThreshold\": 1000,\r\n \"findNearestPointBy\": \"x\",\r\n \"threshold\": 0\r\n },\r\n \"column\": {\r\n \"lineWidth\": 2,\r\n \"allowPointSelect\": false,\r\n \"crisp\": true,\r\n \"showCheckbox\": false,\r\n \"animation\": {\r\n \"duration\": 1000\r\n },\r\n \"events\": {},\r\n \"marker\": null,\r\n \"point\": {\r\n \"events\": {}\r\n },\r\n \"dataLabels\": {\r\n \"animation\": {},\r\n \"defer\": true,\r\n \"padding\": 5,\r\n \"style\": {\r\n \"fontSize\": \"11px\",\r\n \"fontWeight\": \"bold\",\r\n \"color\": \"contrast\",\r\n \"textOutline\": \"1px contrast\"\r\n },\r\n \"x\": 0\r\n },\r\n \"cropThreshold\": 50,\r\n \"opacity\": 1,\r\n \"pointRange\": null,\r\n \"softThreshold\": true,\r\n \"states\": {\r\n \"normal\": {\r\n \"animation\": true\r\n },\r\n \"hover\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"lineWidthPlus\": 1,\r\n \"marker\": {},\r\n \"halo\": false,\r\n \"brightness\": 0.1\r\n },\r\n \"select\": {\r\n \"animation\": {\r\n \"duration\": 0\r\n },\r\n \"color\": \"#cccccc\",\r\n \"borderColor\": \"#000000\"\r\n },\r\n \"inactive\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"opacity\": 0.2\r\n }\r\n },\r\n \"stickyTracking\": false,\r\n \"turboThreshold\": 1000,\r\n \"findNearestPointBy\": \"x\",\r\n \"borderRadius\": 0,\r\n \"centerInCategory\": false,\r\n \"groupPadding\": 0.2,\r\n \"pointPadding\": 0.1,\r\n \"minPointLength\": 0,\r\n \"startFromThreshold\": true,\r\n \"tooltip\": {\r\n \"distance\": 6\r\n },\r\n \"threshold\": 0,\r\n \"borderColor\": \"#ffffff\"\r\n },\r\n \"bar\": {\r\n \"lineWidth\": 2,\r\n \"allowPointSelect\": false,\r\n \"crisp\": true,\r\n \"showCheckbox\": false,\r\n \"animation\": {\r\n \"duration\": 1000\r\n },\r\n \"events\": {},\r\n \"marker\": null,\r\n \"point\": {\r\n \"events\": {}\r\n },\r\n \"dataLabels\": {\r\n \"animation\": {},\r\n \"defer\": true,\r\n \"padding\": 5,\r\n \"style\": {\r\n \"fontSize\": \"11px\",\r\n \"fontWeight\": \"bold\",\r\n \"color\": \"contrast\",\r\n \"textOutline\": \"1px contrast\"\r\n },\r\n \"x\": 0\r\n },\r\n \"cropThreshold\": 50,\r\n \"opacity\": 1,\r\n \"pointRange\": null,\r\n \"softThreshold\": true,\r\n \"states\": {\r\n \"normal\": {\r\n \"animation\": true\r\n },\r\n \"hover\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"lineWidthPlus\": 1,\r\n \"marker\": {},\r\n \"halo\": false,\r\n \"brightness\": 0.1\r\n },\r\n \"select\": {\r\n \"animation\": {\r\n \"duration\": 0\r\n },\r\n \"color\": \"#cccccc\",\r\n \"borderColor\": \"#000000\"\r\n },\r\n \"inactive\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"opacity\": 0.2\r\n }\r\n },\r\n \"stickyTracking\": false,\r\n \"turboThreshold\": 1000,\r\n \"findNearestPointBy\": \"x\",\r\n \"borderRadius\": 0,\r\n \"centerInCategory\": false,\r\n \"groupPadding\": 0.2,\r\n \"pointPadding\": 0.1,\r\n \"minPointLength\": 0,\r\n \"startFromThreshold\": true,\r\n \"tooltip\": {\r\n \"distance\": 6\r\n },\r\n \"threshold\": 0,\r\n \"borderColor\": \"#ffffff\"\r\n },\r\n \"scatter\": {\r\n \"lineWidth\": 0,\r\n \"allowPointSelect\": false,\r\n \"crisp\": true,\r\n \"showCheckbox\": false,\r\n \"animation\": {\r\n \"duration\": 1000\r\n },\r\n \"events\": {},\r\n \"marker\": {\r\n \"enabledThreshold\": 2,\r\n \"lineColor\": \"#ffffff\",\r\n \"lineWidth\": 0,\r\n \"radius\": 4,\r\n \"states\": {\r\n \"normal\": {\r\n \"animation\": true\r\n },\r\n \"hover\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"enabled\": true,\r\n \"radiusPlus\": 2,\r\n \"lineWidthPlus\": 1\r\n },\r\n \"select\": {\r\n \"fillColor\": \"#cccccc\",\r\n \"lineColor\": \"#000000\",\r\n \"lineWidth\": 2\r\n }\r\n },\r\n \"enabled\": true\r\n },\r\n \"point\": {\r\n \"events\": {}\r\n },\r\n \"dataLabels\": {\r\n \"animation\": {},\r\n \"align\": \"center\",\r\n \"defer\": true,\r\n \"padding\": 5,\r\n \"style\": {\r\n \"fontSize\": \"11px\",\r\n \"fontWeight\": \"bold\",\r\n \"color\": \"contrast\",\r\n \"textOutline\": \"1px contrast\"\r\n },\r\n \"verticalAlign\": \"bottom\",\r\n \"x\": 0,\r\n \"y\": 0\r\n },\r\n \"cropThreshold\": 300,\r\n \"opacity\": 1,\r\n \"pointRange\": 0,\r\n \"softThreshold\": true,\r\n \"states\": {\r\n \"normal\": {\r\n \"animation\": true\r\n },\r\n \"hover\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"lineWidthPlus\": 1,\r\n \"marker\": {},\r\n \"halo\": {\r\n \"size\": 10,\r\n \"opacity\": 0.25\r\n }\r\n },\r\n \"select\": {\r\n \"animation\": {\r\n \"duration\": 0\r\n }\r\n },\r\n \"inactive\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"opacity\": 0.2\r\n }\r\n },\r\n \"stickyTracking\": true,\r\n \"turboThreshold\": 1000,\r\n \"findNearestPointBy\": \"xy\",\r\n \"jitter\": {\r\n \"x\": 0,\r\n \"y\": 0\r\n },\r\n \"tooltip\": {\r\n \"headerFormat\": \" {series.name}
\",\r\n \"pointFormat\": \"x: {point.x}
y: {point.y}
\"\r\n }\r\n },\r\n \"pie\": {\r\n \"allowPointSelect\": false,\r\n \"crisp\": true,\r\n \"showCheckbox\": false,\r\n \"animation\": {\r\n \"duration\": 1000\r\n },\r\n \"events\": {},\r\n \"marker\": null,\r\n \"point\": {\r\n \"events\": {}\r\n },\r\n \"dataLabels\": {\r\n \"animation\": {},\r\n \"align\": \"center\",\r\n \"defer\": true,\r\n \"padding\": 5,\r\n \"style\": {\r\n \"fontSize\": \"11px\",\r\n \"fontWeight\": \"bold\",\r\n \"color\": \"contrast\",\r\n \"textOutline\": \"1px contrast\"\r\n },\r\n \"verticalAlign\": \"bottom\",\r\n \"x\": 0,\r\n \"y\": 0,\r\n \"allowOverlap\": true,\r\n \"connectorPadding\": 5,\r\n \"connectorShape\": \"fixedOffset\",\r\n \"crookDistance\": \"70%\",\r\n \"distance\": 30,\r\n \"enabled\": true,\r\n \"softConnector\": true\r\n },\r\n \"cropThreshold\": 300,\r\n \"opacity\": 1,\r\n \"pointRange\": 0,\r\n \"softThreshold\": true,\r\n \"states\": {\r\n \"normal\": {\r\n \"animation\": true\r\n },\r\n \"hover\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"lineWidthPlus\": 1,\r\n \"marker\": {},\r\n \"halo\": {\r\n \"size\": 10,\r\n \"opacity\": 0.25\r\n },\r\n \"brightness\": 0.1\r\n },\r\n \"select\": {\r\n \"animation\": {\r\n \"duration\": 0\r\n }\r\n },\r\n \"inactive\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"opacity\": 0.2\r\n }\r\n },\r\n \"stickyTracking\": false,\r\n \"turboThreshold\": 1000,\r\n \"findNearestPointBy\": \"x\",\r\n \"center\": [\r\n null,\r\n null\r\n ],\r\n \"clip\": false,\r\n \"colorByPoint\": true,\r\n \"ignoreHiddenPoint\": true,\r\n \"inactiveOtherPoints\": true,\r\n \"legendType\": \"point\",\r\n \"size\": null,\r\n \"showInLegend\": false,\r\n \"slicedOffset\": 10,\r\n \"tooltip\": {\r\n \"followPointer\": true\r\n },\r\n \"borderColor\": \"#ffffff\",\r\n \"borderWidth\": 1\r\n },\r\n \"hlc\": {\r\n \"lineWidth\": 1,\r\n \"allowPointSelect\": false,\r\n \"crisp\": true,\r\n \"showCheckbox\": false,\r\n \"animation\": {\r\n \"duration\": 1000\r\n },\r\n \"events\": {},\r\n \"marker\": null,\r\n \"point\": {\r\n \"events\": {}\r\n },\r\n \"dataLabels\": {\r\n \"animation\": {},\r\n \"defer\": true,\r\n \"padding\": 5,\r\n \"style\": {\r\n \"fontSize\": \"11px\",\r\n \"fontWeight\": \"bold\",\r\n \"color\": \"contrast\",\r\n \"textOutline\": \"1px contrast\"\r\n },\r\n \"x\": 0\r\n },\r\n \"cropThreshold\": 50,\r\n \"opacity\": 1,\r\n \"pointRange\": null,\r\n \"softThreshold\": true,\r\n \"states\": {\r\n \"normal\": {\r\n \"animation\": true\r\n },\r\n \"hover\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"lineWidthPlus\": 1,\r\n \"marker\": {},\r\n \"halo\": false,\r\n \"brightness\": 0.1,\r\n \"lineWidth\": 3\r\n },\r\n \"select\": {\r\n \"animation\": {\r\n \"duration\": 0\r\n },\r\n \"color\": \"#cccccc\",\r\n \"borderColor\": \"#000000\"\r\n },\r\n \"inactive\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"opacity\": 0.2\r\n }\r\n },\r\n \"stickyTracking\": true,\r\n \"turboThreshold\": 1000,\r\n \"findNearestPointBy\": \"x\",\r\n \"borderRadius\": 0,\r\n \"centerInCategory\": false,\r\n \"groupPadding\": 0.2,\r\n \"pointPadding\": 0.1,\r\n \"minPointLength\": 0,\r\n \"startFromThreshold\": true,\r\n \"tooltip\": {\r\n \"distance\": 6,\r\n \"pointFormat\": \" {series.name}
High: {point.high}
Low: {point.low}
Close: {point.close}
\"\r\n },\r\n \"threshold\": null,\r\n \"borderColor\": \"#ffffff\"\r\n },\r\n \"ohlc\": {\r\n \"lineWidth\": 1,\r\n \"allowPointSelect\": false,\r\n \"crisp\": true,\r\n \"showCheckbox\": false,\r\n \"animation\": {\r\n \"duration\": 1000\r\n },\r\n \"events\": {},\r\n \"marker\": null,\r\n \"point\": {\r\n \"events\": {}\r\n },\r\n \"dataLabels\": {\r\n \"animation\": {},\r\n \"defer\": true,\r\n \"padding\": 5,\r\n \"style\": {\r\n \"fontSize\": \"11px\",\r\n \"fontWeight\": \"bold\",\r\n \"color\": \"contrast\",\r\n \"textOutline\": \"1px contrast\"\r\n },\r\n \"x\": 0\r\n },\r\n \"cropThreshold\": 50,\r\n \"opacity\": 1,\r\n \"pointRange\": null,\r\n \"softThreshold\": true,\r\n \"states\": {\r\n \"normal\": {\r\n \"animation\": true\r\n },\r\n \"hover\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"lineWidthPlus\": 1,\r\n \"marker\": {},\r\n \"halo\": false,\r\n \"brightness\": 0.1,\r\n \"lineWidth\": 3\r\n },\r\n \"select\": {\r\n \"animation\": {\r\n \"duration\": 0\r\n },\r\n \"color\": \"#cccccc\",\r\n \"borderColor\": \"#000000\"\r\n },\r\n \"inactive\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"opacity\": 0.2\r\n }\r\n },\r\n \"stickyTracking\": true,\r\n \"turboThreshold\": 1000,\r\n \"findNearestPointBy\": \"x\",\r\n \"borderRadius\": 0,\r\n \"centerInCategory\": false,\r\n \"groupPadding\": 0.2,\r\n \"pointPadding\": 0.1,\r\n \"minPointLength\": 0,\r\n \"startFromThreshold\": true,\r\n \"tooltip\": {\r\n \"distance\": 6,\r\n \"pointFormat\": \" {series.name}
Open: {point.open}
High: {point.high}
Low: {point.low}
Close: {point.close}
\"\r\n },\r\n \"threshold\": null,\r\n \"borderColor\": \"#ffffff\"\r\n },\r\n \"lineColor\": \"#000000\",\r\n \"upColor\": \"#ffffff\",\r\n \"dataGrouping\": {\r\n \"groupAll\": true\r\n }\r\n },\r\n \"hollowcandlestick\": {\r\n \"lineWidth\": 1,\r\n \"allowPointSelect\": false,\r\n \"crisp\": true,\r\n \"showCheckbox\": false,\r\n \"animation\": {\r\n \"duration\": 1000\r\n },\r\n \"events\": {},\r\n \"marker\": null,\r\n \"point\": {\r\n \"events\": {}\r\n },\r\n \"dataLabels\": {\r\n \"animation\": {},\r\n \"defer\": true,\r\n \"padding\": 5,\r\n \"style\": {\r\n \"fontSize\": \"11px\",\r\n \"fontWeight\": \"bold\",\r\n \"color\": \"contrast\",\r\n \"textOutline\": \"1px contrast\"\r\n },\r\n \"x\": 0\r\n },\r\n \"cropThreshold\": 50,\r\n \"opacity\": 1,\r\n \"pointRange\": null,\r\n \"softThreshold\": true,\r\n \"states\": {\r\n \"normal\": {\r\n \"animation\": true\r\n },\r\n \"hover\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"lineWidthPlus\": 1,\r\n \"marker\": {},\r\n \"halo\": false,\r\n \"brightness\": 0.1,\r\n \"lineWidth\": 2\r\n },\r\n \"select\": {\r\n \"animation\": {\r\n \"duration\": 0\r\n },\r\n \"color\": \"#cccccc\",\r\n \"borderColor\": \"#000000\"\r\n },\r\n \"inactive\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"opacity\": 0.2\r\n }\r\n },\r\n \"stickyTracking\": true,\r\n \"turboThreshold\": 1000,\r\n \"findNearestPointBy\": \"x\",\r\n \"borderRadius\": 0,\r\n \"centerInCategory\": false,\r\n \"groupPadding\": 0.2,\r\n \"pointPadding\": 0.1,\r\n \"minPointLength\": 0,\r\n \"startFromThreshold\": true,\r\n \"tooltip\": {\r\n \"distance\": 6,\r\n \"pointFormat\": \" {series.name}
Open: {point.open}
High: {point.high}
Low: {point.low}
Close: {point.close}
\"\r\n },\r\n \"threshold\": null,\r\n \"borderColor\": \"#ffffff\",\r\n \"line\": {\r\n \"lineWidth\": 2,\r\n \"allowPointSelect\": false,\r\n \"crisp\": true,\r\n \"showCheckbox\": false,\r\n \"animation\": {\r\n \"duration\": 1000\r\n },\r\n \"events\": {},\r\n \"marker\": {\r\n \"enabledThreshold\": 2,\r\n \"lineColor\": \"#ffffff\",\r\n \"lineWidth\": 0,\r\n \"radius\": 4,\r\n \"states\": {\r\n \"normal\": {\r\n \"animation\": true\r\n },\r\n \"hover\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"enabled\": true,\r\n \"radiusPlus\": 2,\r\n \"lineWidthPlus\": 1\r\n },\r\n \"select\": {\r\n \"fillColor\": \"#cccccc\",\r\n \"lineColor\": \"#000000\",\r\n \"lineWidth\": 2\r\n }\r\n }\r\n },\r\n \"point\": {\r\n \"events\": {}\r\n },\r\n \"dataLabels\": {\r\n \"animation\": {},\r\n \"align\": \"center\",\r\n \"defer\": true,\r\n \"padding\": 5,\r\n \"style\": {\r\n \"fontSize\": \"11px\",\r\n \"fontWeight\": \"bold\",\r\n \"color\": \"contrast\",\r\n \"textOutline\": \"1px contrast\"\r\n },\r\n \"verticalAlign\": \"bottom\",\r\n \"x\": 0,\r\n \"y\": 0\r\n },\r\n \"cropThreshold\": 300,\r\n \"opacity\": 1,\r\n \"pointRange\": 0,\r\n \"softThreshold\": true,\r\n \"states\": {\r\n \"normal\": {\r\n \"animation\": true\r\n },\r\n \"hover\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"lineWidthPlus\": 1,\r\n \"marker\": {},\r\n \"halo\": {\r\n \"size\": 10,\r\n \"opacity\": 0.25\r\n }\r\n },\r\n \"select\": {\r\n \"animation\": {\r\n \"duration\": 0\r\n }\r\n },\r\n \"inactive\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"opacity\": 0.2\r\n }\r\n },\r\n \"stickyTracking\": true,\r\n \"turboThreshold\": 1000,\r\n \"findNearestPointBy\": \"x\"\r\n },\r\n \"area\": {\r\n \"lineWidth\": 2,\r\n \"allowPointSelect\": false,\r\n \"crisp\": true,\r\n \"showCheckbox\": false,\r\n \"animation\": {\r\n \"duration\": 1000\r\n },\r\n \"events\": {},\r\n \"marker\": {\r\n \"enabledThreshold\": 2,\r\n \"lineColor\": \"#ffffff\",\r\n \"lineWidth\": 0,\r\n \"radius\": 4,\r\n \"states\": {\r\n \"normal\": {\r\n \"animation\": true\r\n },\r\n \"hover\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"enabled\": true,\r\n \"radiusPlus\": 2,\r\n \"lineWidthPlus\": 1\r\n },\r\n \"select\": {\r\n \"fillColor\": \"#cccccc\",\r\n \"lineColor\": \"#000000\",\r\n \"lineWidth\": 2\r\n }\r\n }\r\n },\r\n \"point\": {\r\n \"events\": {}\r\n },\r\n \"dataLabels\": {\r\n \"animation\": {},\r\n \"align\": \"center\",\r\n \"defer\": true,\r\n \"padding\": 5,\r\n \"style\": {\r\n \"fontSize\": \"11px\",\r\n \"fontWeight\": \"bold\",\r\n \"color\": \"contrast\",\r\n \"textOutline\": \"1px contrast\"\r\n },\r\n \"verticalAlign\": \"bottom\",\r\n \"x\": 0,\r\n \"y\": 0\r\n },\r\n \"cropThreshold\": 300,\r\n \"opacity\": 1,\r\n \"pointRange\": 0,\r\n \"softThreshold\": true,\r\n \"states\": {\r\n \"normal\": {\r\n \"animation\": true\r\n },\r\n \"hover\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"lineWidthPlus\": 1,\r\n \"marker\": {},\r\n \"halo\": {\r\n \"size\": 10,\r\n \"opacity\": 0.25\r\n }\r\n },\r\n \"select\": {\r\n \"animation\": {\r\n \"duration\": 0\r\n }\r\n },\r\n \"inactive\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"opacity\": 0.2\r\n }\r\n },\r\n \"stickyTracking\": true,\r\n \"turboThreshold\": 1000,\r\n \"findNearestPointBy\": \"x\",\r\n \"threshold\": 0\r\n },\r\n \"spline\": {\r\n \"lineWidth\": 2,\r\n \"allowPointSelect\": false,\r\n \"crisp\": true,\r\n \"showCheckbox\": false,\r\n \"animation\": {\r\n \"duration\": 1000\r\n },\r\n \"events\": {},\r\n \"marker\": {\r\n \"enabledThreshold\": 2,\r\n \"lineColor\": \"#ffffff\",\r\n \"lineWidth\": 0,\r\n \"radius\": 4,\r\n \"states\": {\r\n \"normal\": {\r\n \"animation\": true\r\n },\r\n \"hover\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"enabled\": true,\r\n \"radiusPlus\": 2,\r\n \"lineWidthPlus\": 1\r\n },\r\n \"select\": {\r\n \"fillColor\": \"#cccccc\",\r\n \"lineColor\": \"#000000\",\r\n \"lineWidth\": 2\r\n }\r\n }\r\n },\r\n \"point\": {\r\n \"events\": {}\r\n },\r\n \"dataLabels\": {\r\n \"animation\": {},\r\n \"align\": \"center\",\r\n \"defer\": true,\r\n \"padding\": 5,\r\n \"style\": {\r\n \"fontSize\": \"11px\",\r\n \"fontWeight\": \"bold\",\r\n \"color\": \"contrast\",\r\n \"textOutline\": \"1px contrast\"\r\n },\r\n \"verticalAlign\": \"bottom\",\r\n \"x\": 0,\r\n \"y\": 0\r\n },\r\n \"cropThreshold\": 300,\r\n \"opacity\": 1,\r\n \"pointRange\": 0,\r\n \"softThreshold\": true,\r\n \"states\": {\r\n \"normal\": {\r\n \"animation\": true\r\n },\r\n \"hover\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"lineWidthPlus\": 1,\r\n \"marker\": {},\r\n \"halo\": {\r\n \"size\": 10,\r\n \"opacity\": 0.25\r\n }\r\n },\r\n \"select\": {\r\n \"animation\": {\r\n \"duration\": 0\r\n }\r\n },\r\n \"inactive\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"opacity\": 0.2\r\n }\r\n },\r\n \"stickyTracking\": true,\r\n \"turboThreshold\": 1000,\r\n \"findNearestPointBy\": \"x\"\r\n },\r\n \"areaspline\": {\r\n \"lineWidth\": 2,\r\n \"allowPointSelect\": false,\r\n \"crisp\": true,\r\n \"showCheckbox\": false,\r\n \"animation\": {\r\n \"duration\": 1000\r\n },\r\n \"events\": {},\r\n \"marker\": {\r\n \"enabledThreshold\": 2,\r\n \"lineColor\": \"#ffffff\",\r\n \"lineWidth\": 0,\r\n \"radius\": 4,\r\n \"states\": {\r\n \"normal\": {\r\n \"animation\": true\r\n },\r\n \"hover\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"enabled\": true,\r\n \"radiusPlus\": 2,\r\n \"lineWidthPlus\": 1\r\n },\r\n \"select\": {\r\n \"fillColor\": \"#cccccc\",\r\n \"lineColor\": \"#000000\",\r\n \"lineWidth\": 2\r\n }\r\n }\r\n },\r\n \"point\": {\r\n \"events\": {}\r\n },\r\n \"dataLabels\": {\r\n \"animation\": {},\r\n \"align\": \"center\",\r\n \"defer\": true,\r\n \"padding\": 5,\r\n \"style\": {\r\n \"fontSize\": \"11px\",\r\n \"fontWeight\": \"bold\",\r\n \"color\": \"contrast\",\r\n \"textOutline\": \"1px contrast\"\r\n },\r\n \"verticalAlign\": \"bottom\",\r\n \"x\": 0,\r\n \"y\": 0\r\n },\r\n \"cropThreshold\": 300,\r\n \"opacity\": 1,\r\n \"pointRange\": 0,\r\n \"softThreshold\": true,\r\n \"states\": {\r\n \"normal\": {\r\n \"animation\": true\r\n },\r\n \"hover\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"lineWidthPlus\": 1,\r\n \"marker\": {},\r\n \"halo\": {\r\n \"size\": 10,\r\n \"opacity\": 0.25\r\n }\r\n },\r\n \"select\": {\r\n \"animation\": {\r\n \"duration\": 0\r\n }\r\n },\r\n \"inactive\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"opacity\": 0.2\r\n }\r\n },\r\n \"stickyTracking\": true,\r\n \"turboThreshold\": 1000,\r\n \"findNearestPointBy\": \"x\",\r\n \"threshold\": 0\r\n },\r\n \"column\": {\r\n \"lineWidth\": 2,\r\n \"allowPointSelect\": false,\r\n \"crisp\": true,\r\n \"showCheckbox\": false,\r\n \"animation\": {\r\n \"duration\": 1000\r\n },\r\n \"events\": {},\r\n \"marker\": null,\r\n \"point\": {\r\n \"events\": {}\r\n },\r\n \"dataLabels\": {\r\n \"animation\": {},\r\n \"defer\": true,\r\n \"padding\": 5,\r\n \"style\": {\r\n \"fontSize\": \"11px\",\r\n \"fontWeight\": \"bold\",\r\n \"color\": \"contrast\",\r\n \"textOutline\": \"1px contrast\"\r\n },\r\n \"x\": 0\r\n },\r\n \"cropThreshold\": 50,\r\n \"opacity\": 1,\r\n \"pointRange\": null,\r\n \"softThreshold\": true,\r\n \"states\": {\r\n \"normal\": {\r\n \"animation\": true\r\n },\r\n \"hover\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"lineWidthPlus\": 1,\r\n \"marker\": {},\r\n \"halo\": false,\r\n \"brightness\": 0.1\r\n },\r\n \"select\": {\r\n \"animation\": {\r\n \"duration\": 0\r\n },\r\n \"color\": \"#cccccc\",\r\n \"borderColor\": \"#000000\"\r\n },\r\n \"inactive\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"opacity\": 0.2\r\n }\r\n },\r\n \"stickyTracking\": false,\r\n \"turboThreshold\": 1000,\r\n \"findNearestPointBy\": \"x\",\r\n \"borderRadius\": 0,\r\n \"centerInCategory\": false,\r\n \"groupPadding\": 0.2,\r\n \"pointPadding\": 0.1,\r\n \"minPointLength\": 0,\r\n \"startFromThreshold\": true,\r\n \"tooltip\": {\r\n \"distance\": 6\r\n },\r\n \"threshold\": 0,\r\n \"borderColor\": \"#ffffff\"\r\n },\r\n \"bar\": {\r\n \"lineWidth\": 2,\r\n \"allowPointSelect\": false,\r\n \"crisp\": true,\r\n \"showCheckbox\": false,\r\n \"animation\": {\r\n \"duration\": 1000\r\n },\r\n \"events\": {},\r\n \"marker\": null,\r\n \"point\": {\r\n \"events\": {}\r\n },\r\n \"dataLabels\": {\r\n \"animation\": {},\r\n \"defer\": true,\r\n \"padding\": 5,\r\n \"style\": {\r\n \"fontSize\": \"11px\",\r\n \"fontWeight\": \"bold\",\r\n \"color\": \"contrast\",\r\n \"textOutline\": \"1px contrast\"\r\n },\r\n \"x\": 0\r\n },\r\n \"cropThreshold\": 50,\r\n \"opacity\": 1,\r\n \"pointRange\": null,\r\n \"softThreshold\": true,\r\n \"states\": {\r\n \"normal\": {\r\n \"animation\": true\r\n },\r\n \"hover\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"lineWidthPlus\": 1,\r\n \"marker\": {},\r\n \"halo\": false,\r\n \"brightness\": 0.1\r\n },\r\n \"select\": {\r\n \"animation\": {\r\n \"duration\": 0\r\n },\r\n \"color\": \"#cccccc\",\r\n \"borderColor\": \"#000000\"\r\n },\r\n \"inactive\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"opacity\": 0.2\r\n }\r\n },\r\n \"stickyTracking\": false,\r\n \"turboThreshold\": 1000,\r\n \"findNearestPointBy\": \"x\",\r\n \"borderRadius\": 0,\r\n \"centerInCategory\": false,\r\n \"groupPadding\": 0.2,\r\n \"pointPadding\": 0.1,\r\n \"minPointLength\": 0,\r\n \"startFromThreshold\": true,\r\n \"tooltip\": {\r\n \"distance\": 6\r\n },\r\n \"threshold\": 0,\r\n \"borderColor\": \"#ffffff\"\r\n },\r\n \"scatter\": {\r\n \"lineWidth\": 0,\r\n \"allowPointSelect\": false,\r\n \"crisp\": true,\r\n \"showCheckbox\": false,\r\n \"animation\": {\r\n \"duration\": 1000\r\n },\r\n \"events\": {},\r\n \"marker\": {\r\n \"enabledThreshold\": 2,\r\n \"lineColor\": \"#ffffff\",\r\n \"lineWidth\": 0,\r\n \"radius\": 4,\r\n \"states\": {\r\n \"normal\": {\r\n \"animation\": true\r\n },\r\n \"hover\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"enabled\": true,\r\n \"radiusPlus\": 2,\r\n \"lineWidthPlus\": 1\r\n },\r\n \"select\": {\r\n \"fillColor\": \"#cccccc\",\r\n \"lineColor\": \"#000000\",\r\n \"lineWidth\": 2\r\n }\r\n },\r\n \"enabled\": true\r\n },\r\n \"point\": {\r\n \"events\": {}\r\n },\r\n \"dataLabels\": {\r\n \"animation\": {},\r\n \"align\": \"center\",\r\n \"defer\": true,\r\n \"padding\": 5,\r\n \"style\": {\r\n \"fontSize\": \"11px\",\r\n \"fontWeight\": \"bold\",\r\n \"color\": \"contrast\",\r\n \"textOutline\": \"1px contrast\"\r\n },\r\n \"verticalAlign\": \"bottom\",\r\n \"x\": 0,\r\n \"y\": 0\r\n },\r\n \"cropThreshold\": 300,\r\n \"opacity\": 1,\r\n \"pointRange\": 0,\r\n \"softThreshold\": true,\r\n \"states\": {\r\n \"normal\": {\r\n \"animation\": true\r\n },\r\n \"hover\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"lineWidthPlus\": 1,\r\n \"marker\": {},\r\n \"halo\": {\r\n \"size\": 10,\r\n \"opacity\": 0.25\r\n }\r\n },\r\n \"select\": {\r\n \"animation\": {\r\n \"duration\": 0\r\n }\r\n },\r\n \"inactive\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"opacity\": 0.2\r\n }\r\n },\r\n \"stickyTracking\": true,\r\n \"turboThreshold\": 1000,\r\n \"findNearestPointBy\": \"xy\",\r\n \"jitter\": {\r\n \"x\": 0,\r\n \"y\": 0\r\n },\r\n \"tooltip\": {\r\n \"headerFormat\": \" {series.name}
\",\r\n \"pointFormat\": \"x: {point.x}
y: {point.y}
\"\r\n }\r\n },\r\n \"pie\": {\r\n \"allowPointSelect\": false,\r\n \"crisp\": true,\r\n \"showCheckbox\": false,\r\n \"animation\": {\r\n \"duration\": 1000\r\n },\r\n \"events\": {},\r\n \"marker\": null,\r\n \"point\": {\r\n \"events\": {}\r\n },\r\n \"dataLabels\": {\r\n \"animation\": {},\r\n \"align\": \"center\",\r\n \"defer\": true,\r\n \"padding\": 5,\r\n \"style\": {\r\n \"fontSize\": \"11px\",\r\n \"fontWeight\": \"bold\",\r\n \"color\": \"contrast\",\r\n \"textOutline\": \"1px contrast\"\r\n },\r\n \"verticalAlign\": \"bottom\",\r\n \"x\": 0,\r\n \"y\": 0,\r\n \"allowOverlap\": true,\r\n \"connectorPadding\": 5,\r\n \"connectorShape\": \"fixedOffset\",\r\n \"crookDistance\": \"70%\",\r\n \"distance\": 30,\r\n \"enabled\": true,\r\n \"softConnector\": true\r\n },\r\n \"cropThreshold\": 300,\r\n \"opacity\": 1,\r\n \"pointRange\": 0,\r\n \"softThreshold\": true,\r\n \"states\": {\r\n \"normal\": {\r\n \"animation\": true\r\n },\r\n \"hover\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"lineWidthPlus\": 1,\r\n \"marker\": {},\r\n \"halo\": {\r\n \"size\": 10,\r\n \"opacity\": 0.25\r\n },\r\n \"brightness\": 0.1\r\n },\r\n \"select\": {\r\n \"animation\": {\r\n \"duration\": 0\r\n }\r\n },\r\n \"inactive\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"opacity\": 0.2\r\n }\r\n },\r\n \"stickyTracking\": false,\r\n \"turboThreshold\": 1000,\r\n \"findNearestPointBy\": \"x\",\r\n \"center\": [\r\n null,\r\n null\r\n ],\r\n \"clip\": false,\r\n \"colorByPoint\": true,\r\n \"ignoreHiddenPoint\": true,\r\n \"inactiveOtherPoints\": true,\r\n \"legendType\": \"point\",\r\n \"size\": null,\r\n \"showInLegend\": false,\r\n \"slicedOffset\": 10,\r\n \"tooltip\": {\r\n \"followPointer\": true\r\n },\r\n \"borderColor\": \"#ffffff\",\r\n \"borderWidth\": 1\r\n },\r\n \"hlc\": {\r\n \"lineWidth\": 1,\r\n \"allowPointSelect\": false,\r\n \"crisp\": true,\r\n \"showCheckbox\": false,\r\n \"animation\": {\r\n \"duration\": 1000\r\n },\r\n \"events\": {},\r\n \"marker\": null,\r\n \"point\": {\r\n \"events\": {}\r\n },\r\n \"dataLabels\": {\r\n \"animation\": {},\r\n \"defer\": true,\r\n \"padding\": 5,\r\n \"style\": {\r\n \"fontSize\": \"11px\",\r\n \"fontWeight\": \"bold\",\r\n \"color\": \"contrast\",\r\n \"textOutline\": \"1px contrast\"\r\n },\r\n \"x\": 0\r\n },\r\n \"cropThreshold\": 50,\r\n \"opacity\": 1,\r\n \"pointRange\": null,\r\n \"softThreshold\": true,\r\n \"states\": {\r\n \"normal\": {\r\n \"animation\": true\r\n },\r\n \"hover\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"lineWidthPlus\": 1,\r\n \"marker\": {},\r\n \"halo\": false,\r\n \"brightness\": 0.1,\r\n \"lineWidth\": 3\r\n },\r\n \"select\": {\r\n \"animation\": {\r\n \"duration\": 0\r\n },\r\n \"color\": \"#cccccc\",\r\n \"borderColor\": \"#000000\"\r\n },\r\n \"inactive\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"opacity\": 0.2\r\n }\r\n },\r\n \"stickyTracking\": true,\r\n \"turboThreshold\": 1000,\r\n \"findNearestPointBy\": \"x\",\r\n \"borderRadius\": 0,\r\n \"centerInCategory\": false,\r\n \"groupPadding\": 0.2,\r\n \"pointPadding\": 0.1,\r\n \"minPointLength\": 0,\r\n \"startFromThreshold\": true,\r\n \"tooltip\": {\r\n \"distance\": 6,\r\n \"pointFormat\": \" {series.name}
High: {point.high}
Low: {point.low}
Close: {point.close}
\"\r\n },\r\n \"threshold\": null,\r\n \"borderColor\": \"#ffffff\"\r\n },\r\n \"ohlc\": {\r\n \"lineWidth\": 1,\r\n \"allowPointSelect\": false,\r\n \"crisp\": true,\r\n \"showCheckbox\": false,\r\n \"animation\": {\r\n \"duration\": 1000\r\n },\r\n \"events\": {},\r\n \"marker\": null,\r\n \"point\": {\r\n \"events\": {}\r\n },\r\n \"dataLabels\": {\r\n \"animation\": {},\r\n \"defer\": true,\r\n \"padding\": 5,\r\n \"style\": {\r\n \"fontSize\": \"11px\",\r\n \"fontWeight\": \"bold\",\r\n \"color\": \"contrast\",\r\n \"textOutline\": \"1px contrast\"\r\n },\r\n \"x\": 0\r\n },\r\n \"cropThreshold\": 50,\r\n \"opacity\": 1,\r\n \"pointRange\": null,\r\n \"softThreshold\": true,\r\n \"states\": {\r\n \"normal\": {\r\n \"animation\": true\r\n },\r\n \"hover\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"lineWidthPlus\": 1,\r\n \"marker\": {},\r\n \"halo\": false,\r\n \"brightness\": 0.1,\r\n \"lineWidth\": 3\r\n },\r\n \"select\": {\r\n \"animation\": {\r\n \"duration\": 0\r\n },\r\n \"color\": \"#cccccc\",\r\n \"borderColor\": \"#000000\"\r\n },\r\n \"inactive\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"opacity\": 0.2\r\n }\r\n },\r\n \"stickyTracking\": true,\r\n \"turboThreshold\": 1000,\r\n \"findNearestPointBy\": \"x\",\r\n \"borderRadius\": 0,\r\n \"centerInCategory\": false,\r\n \"groupPadding\": 0.2,\r\n \"pointPadding\": 0.1,\r\n \"minPointLength\": 0,\r\n \"startFromThreshold\": true,\r\n \"tooltip\": {\r\n \"distance\": 6,\r\n \"pointFormat\": \" {series.name}
Open: {point.open}
High: {point.high}
Low: {point.low}
Close: {point.close}
\"\r\n },\r\n \"threshold\": null,\r\n \"borderColor\": \"#ffffff\"\r\n },\r\n \"lineColor\": \"#f21313\",\r\n \"upColor\": \"#06b535\",\r\n \"color\": \"#f21313\",\r\n \"dataGrouping\": {\r\n \"groupAll\": true,\r\n \"groupPixelWidth\": 10\r\n },\r\n \"upLineColor\": \"#06b535\"\r\n },\r\n \"xrange\": {\r\n \"lineWidth\": 2,\r\n \"allowPointSelect\": false,\r\n \"crisp\": true,\r\n \"showCheckbox\": false,\r\n \"animation\": {\r\n \"duration\": 1000\r\n },\r\n \"events\": {},\r\n \"marker\": null,\r\n \"point\": {\r\n \"events\": {}\r\n },\r\n \"dataLabels\": {\r\n \"animation\": {},\r\n \"defer\": true,\r\n \"padding\": 5,\r\n \"style\": {\r\n \"fontSize\": \"11px\",\r\n \"fontWeight\": \"bold\",\r\n \"color\": \"contrast\",\r\n \"textOutline\": \"1px contrast\"\r\n },\r\n \"verticalAlign\": \"middle\",\r\n \"x\": 0,\r\n \"inside\": true\r\n },\r\n \"cropThreshold\": 50,\r\n \"opacity\": 1,\r\n \"pointRange\": 0,\r\n \"softThreshold\": true,\r\n \"states\": {\r\n \"normal\": {\r\n \"animation\": true\r\n },\r\n \"hover\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"lineWidthPlus\": 1,\r\n \"marker\": {},\r\n \"halo\": false,\r\n \"brightness\": 0.1\r\n },\r\n \"select\": {\r\n \"animation\": {\r\n \"duration\": 0\r\n },\r\n \"color\": \"#cccccc\",\r\n \"borderColor\": \"#000000\"\r\n },\r\n \"inactive\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"opacity\": 0.2\r\n }\r\n },\r\n \"stickyTracking\": false,\r\n \"turboThreshold\": 1000,\r\n \"findNearestPointBy\": \"x\",\r\n \"borderRadius\": 3,\r\n \"centerInCategory\": false,\r\n \"groupPadding\": 0.2,\r\n \"pointPadding\": 0.1,\r\n \"minPointLength\": 0,\r\n \"startFromThreshold\": true,\r\n \"tooltip\": {\r\n \"distance\": 6,\r\n \"headerFormat\": \"{point.x} - {point.x2}
\",\r\n \"pointFormat\": \" {series.name}: {point.yCategory}
\"\r\n },\r\n \"threshold\": 0,\r\n \"borderColor\": \"#ffffff\",\r\n \"colorByPoint\": true\r\n },\r\n \"gantt\": {\r\n \"lineWidth\": 2,\r\n \"allowPointSelect\": false,\r\n \"crisp\": true,\r\n \"showCheckbox\": false,\r\n \"animation\": {\r\n \"duration\": 1000\r\n },\r\n \"events\": {},\r\n \"marker\": null,\r\n \"point\": {\r\n \"events\": {}\r\n },\r\n \"dataLabels\": {\r\n \"animation\": {},\r\n \"defer\": true,\r\n \"padding\": 5,\r\n \"style\": {\r\n \"fontSize\": \"11px\",\r\n \"fontWeight\": \"bold\",\r\n \"color\": \"contrast\",\r\n \"textOutline\": \"1px contrast\"\r\n },\r\n \"verticalAlign\": \"middle\",\r\n \"x\": 0,\r\n \"inside\": true,\r\n \"enabled\": true\r\n },\r\n \"cropThreshold\": 50,\r\n \"opacity\": 1,\r\n \"pointRange\": 0,\r\n \"softThreshold\": true,\r\n \"states\": {\r\n \"normal\": {\r\n \"animation\": true\r\n },\r\n \"hover\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"lineWidthPlus\": 1,\r\n \"marker\": {},\r\n \"halo\": false,\r\n \"brightness\": 0.1\r\n },\r\n \"select\": {\r\n \"animation\": {\r\n \"duration\": 0\r\n },\r\n \"color\": \"#cccccc\",\r\n \"borderColor\": \"#000000\"\r\n },\r\n \"inactive\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"opacity\": 0.2\r\n }\r\n },\r\n \"stickyTracking\": false,\r\n \"turboThreshold\": 1000,\r\n \"findNearestPointBy\": \"x\",\r\n \"borderRadius\": 3,\r\n \"centerInCategory\": false,\r\n \"groupPadding\": 0.2,\r\n \"pointPadding\": 0.1,\r\n \"minPointLength\": 0,\r\n \"startFromThreshold\": true,\r\n \"tooltip\": {\r\n \"distance\": 6,\r\n \"headerFormat\": \"{series.name}
\",\r\n \"pointFormat\": null\r\n },\r\n \"threshold\": 0,\r\n \"borderColor\": \"#ffffff\",\r\n \"colorByPoint\": true,\r\n \"grouping\": false,\r\n \"connectors\": {\r\n \"type\": \"simpleConnect\",\r\n \"animation\": {\r\n \"reversed\": true\r\n },\r\n \"startMarker\": {\r\n \"enabled\": true,\r\n \"symbol\": \"arrow-filled\",\r\n \"radius\": 4,\r\n \"fill\": \"#fa0\",\r\n \"align\": \"left\"\r\n },\r\n \"endMarker\": {\r\n \"enabled\": false,\r\n \"align\": \"right\"\r\n }\r\n }\r\n },\r\n \"histogram\": {\r\n \"lineWidth\": 2,\r\n \"allowPointSelect\": false,\r\n \"crisp\": true,\r\n \"showCheckbox\": false,\r\n \"animation\": {\r\n \"duration\": 1000\r\n },\r\n \"events\": {},\r\n \"marker\": null,\r\n \"point\": {\r\n \"events\": {}\r\n },\r\n \"dataLabels\": {\r\n \"animation\": {},\r\n \"defer\": true,\r\n \"padding\": 5,\r\n \"style\": {\r\n \"fontSize\": \"11px\",\r\n \"fontWeight\": \"bold\",\r\n \"color\": \"contrast\",\r\n \"textOutline\": \"1px contrast\"\r\n },\r\n \"x\": 0\r\n },\r\n \"cropThreshold\": 50,\r\n \"opacity\": 1,\r\n \"pointRange\": null,\r\n \"softThreshold\": true,\r\n \"states\": {\r\n \"normal\": {\r\n \"animation\": true\r\n },\r\n \"hover\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"lineWidthPlus\": 1,\r\n \"marker\": {},\r\n \"halo\": false,\r\n \"brightness\": 0.1\r\n },\r\n \"select\": {\r\n \"animation\": {\r\n \"duration\": 0\r\n },\r\n \"color\": \"#cccccc\",\r\n \"borderColor\": \"#000000\"\r\n },\r\n \"inactive\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"opacity\": 0.2\r\n }\r\n },\r\n \"stickyTracking\": false,\r\n \"turboThreshold\": 1000,\r\n \"findNearestPointBy\": \"x\",\r\n \"borderRadius\": 0,\r\n \"centerInCategory\": false,\r\n \"groupPadding\": 0,\r\n \"pointPadding\": 0,\r\n \"minPointLength\": 0,\r\n \"startFromThreshold\": true,\r\n \"tooltip\": {\r\n \"distance\": 6,\r\n \"headerFormat\": \"\",\r\n \"pointFormat\": \"{point.x} - {point.x2}
{series.name} {point.y}
\"\r\n },\r\n \"threshold\": 0,\r\n \"borderColor\": \"#ffffff\",\r\n \"binsNumber\": \"square-root\",\r\n \"grouping\": false,\r\n \"pointPlacement\": \"between\"\r\n },\r\n \"bellcurve\": {\r\n \"lineWidth\": 2,\r\n \"allowPointSelect\": false,\r\n \"crisp\": true,\r\n \"showCheckbox\": false,\r\n \"animation\": {\r\n \"duration\": 1000\r\n },\r\n \"events\": {},\r\n \"marker\": {\r\n \"enabledThreshold\": 2,\r\n \"lineColor\": \"#ffffff\",\r\n \"lineWidth\": 0,\r\n \"radius\": 4,\r\n \"states\": {\r\n \"normal\": {\r\n \"animation\": true\r\n },\r\n \"hover\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"enabled\": true,\r\n \"radiusPlus\": 2,\r\n \"lineWidthPlus\": 1\r\n },\r\n \"select\": {\r\n \"fillColor\": \"#cccccc\",\r\n \"lineColor\": \"#000000\",\r\n \"lineWidth\": 2\r\n }\r\n },\r\n \"enabled\": false\r\n },\r\n \"point\": {\r\n \"events\": {}\r\n },\r\n \"dataLabels\": {\r\n \"animation\": {},\r\n \"align\": \"center\",\r\n \"defer\": true,\r\n \"padding\": 5,\r\n \"style\": {\r\n \"fontSize\": \"11px\",\r\n \"fontWeight\": \"bold\",\r\n \"color\": \"contrast\",\r\n \"textOutline\": \"1px contrast\"\r\n },\r\n \"verticalAlign\": \"bottom\",\r\n \"x\": 0,\r\n \"y\": 0\r\n },\r\n \"cropThreshold\": 300,\r\n \"opacity\": 1,\r\n \"pointRange\": 0,\r\n \"softThreshold\": true,\r\n \"states\": {\r\n \"normal\": {\r\n \"animation\": true\r\n },\r\n \"hover\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"lineWidthPlus\": 1,\r\n \"marker\": {},\r\n \"halo\": {\r\n \"size\": 10,\r\n \"opacity\": 0.25\r\n }\r\n },\r\n \"select\": {\r\n \"animation\": {\r\n \"duration\": 0\r\n }\r\n },\r\n \"inactive\": {\r\n \"animation\": {\r\n \"duration\": 50\r\n },\r\n \"opacity\": 0.2\r\n }\r\n },\r\n \"stickyTracking\": true,\r\n \"turboThreshold\": 1000,\r\n \"findNearestPointBy\": \"x\",\r\n \"threshold\": 0,\r\n \"intervals\": 3,\r\n \"pointsInInterval\": 3\r\n }\r\n },\r\n \"labels\": {\r\n \"style\": {\r\n \"position\": \"absolute\",\r\n \"color\": \"#333333\"\r\n }\r\n },\r\n \"legend\": {\r\n \"enabled\": true,\r\n \"align\": \"center\",\r\n \"alignColumns\": true,\r\n \"className\": \"highcharts-no-tooltip\",\r\n \"layout\": \"horizontal\",\r\n \"borderColor\": \"#999999\",\r\n \"borderRadius\": 0,\r\n \"navigation\": {\r\n \"activeColor\": \"#003399\",\r\n \"inactiveColor\": \"#cccccc\"\r\n },\r\n \"itemStyle\": {\r\n \"color\": \"#333333\",\r\n \"cursor\": \"pointer\",\r\n \"fontSize\": \"12px\",\r\n \"fontWeight\": \"bold\",\r\n \"textOverflow\": \"ellipsis\"\r\n },\r\n \"itemHoverStyle\": {\r\n \"color\": \"#000000\"\r\n },\r\n \"itemHiddenStyle\": {\r\n \"color\": \"#cccccc\"\r\n },\r\n \"shadow\": false,\r\n \"itemCheckboxStyle\": {\r\n \"position\": \"absolute\",\r\n \"width\": \"13px\",\r\n \"height\": \"13px\"\r\n },\r\n \"squareSymbol\": true,\r\n \"symbolPadding\": 5,\r\n \"verticalAlign\": \"bottom\",\r\n \"x\": 0,\r\n \"y\": 0,\r\n \"title\": {\r\n \"style\": {\r\n \"fontWeight\": \"bold\"\r\n }\r\n },\r\n \"bubbleLegend\": {\r\n \"borderWidth\": 2,\r\n \"connectorDistance\": 60,\r\n \"connectorWidth\": 1,\r\n \"enabled\": false,\r\n \"labels\": {\r\n \"allowOverlap\": false,\r\n \"format\": \"\",\r\n \"align\": \"right\",\r\n \"style\": {\r\n \"fontSize\": \"10px\",\r\n \"color\": \"#000000\"\r\n },\r\n \"x\": 0,\r\n \"y\": 0\r\n },\r\n \"maxSize\": 60,\r\n \"minSize\": 10,\r\n \"legendIndex\": 0,\r\n \"ranges\": {},\r\n \"sizeBy\": \"area\",\r\n \"sizeByAbsoluteValue\": false,\r\n \"zIndex\": 1,\r\n \"zThreshold\": 0\r\n },\r\n \"accessibility\": {\r\n \"enabled\": true,\r\n \"keyboardNavigation\": {\r\n \"enabled\": true\r\n }\r\n }\r\n },\r\n \"loading\": {\r\n \"labelStyle\": {\r\n \"fontWeight\": \"bold\",\r\n \"position\": \"relative\",\r\n \"top\": \"45%\"\r\n },\r\n \"style\": {\r\n \"position\": \"absolute\",\r\n \"backgroundColor\": \"#ffffff\",\r\n \"opacity\": 0.5,\r\n \"textAlign\": \"center\"\r\n }\r\n },\r\n \"tooltip\": {\r\n \"enabled\": true,\r\n \"animation\": true,\r\n \"borderRadius\": 3,\r\n \"dateTimeLabelFormats\": {\r\n \"millisecond\": \"%A, %b %e, %H:%M:%S.%L\",\r\n \"second\": \"%A, %b %e, %H:%M:%S\",\r\n \"minute\": \"%A, %b %e, %H:%M\",\r\n \"hour\": \"%A, %b %e, %H:%M\",\r\n \"day\": \"%A, %b %e, %Y\",\r\n \"week\": \"Week from %A, %b %e, %Y\",\r\n \"month\": \"%B %Y\",\r\n \"year\": \"%Y\"\r\n },\r\n \"footerFormat\": \"\",\r\n \"headerShape\": \"callout\",\r\n \"hideDelay\": 500,\r\n \"padding\": 8,\r\n \"shape\": \"callout\",\r\n \"shared\": false,\r\n \"snap\": 10,\r\n \"headerFormat\": \"{point.key}
\",\r\n \"pointFormat\": \" {series.name}: {point.y}
\",\r\n \"backgroundColor\": \"rgba(247,247,247,0.85)\",\r\n \"borderWidth\": 1,\r\n \"shadow\": true,\r\n \"stickOnContact\": false,\r\n \"style\": {\r\n \"color\": \"#333333\",\r\n \"cursor\": \"default\",\r\n \"fontSize\": \"12px\",\r\n \"whiteSpace\": \"nowrap\"\r\n },\r\n \"useHTML\": false\r\n },\r\n \"credits\": {\r\n \"enabled\": true,\r\n \"href\": \"https://www.highcharts.com?credits\",\r\n \"position\": {\r\n \"align\": \"right\",\r\n \"x\": -10,\r\n \"verticalAlign\": \"bottom\",\r\n \"y\": -5\r\n },\r\n \"style\": {\r\n \"cursor\": \"pointer\",\r\n \"color\": \"#999999\",\r\n \"fontSize\": \"9px\"\r\n },\r\n \"text\": \"Highcharts.com\"\r\n },\r\n \"scrollbar\": {\r\n \"height\": 14,\r\n \"barBorderRadius\": 0,\r\n \"buttonBorderRadius\": 0,\r\n \"margin\": 10,\r\n \"minWidth\": 6,\r\n \"opposite\": true,\r\n \"step\": 0.2,\r\n \"zIndex\": 3,\r\n \"barBackgroundColor\": \"#cccccc\",\r\n \"barBorderWidth\": 1,\r\n \"barBorderColor\": \"#cccccc\",\r\n \"buttonArrowColor\": \"#333333\",\r\n \"buttonBackgroundColor\": \"#e6e6e6\",\r\n \"buttonBorderColor\": \"#cccccc\",\r\n \"buttonBorderWidth\": 1,\r\n \"rifleColor\": \"#333333\",\r\n \"trackBackgroundColor\": \"#f2f2f2\",\r\n \"trackBorderColor\": \"#f2f2f2\",\r\n \"trackBorderWidth\": 1\r\n },\r\n \"navigator\": {\r\n \"height\": 40,\r\n \"margin\": 25,\r\n \"maskInside\": true,\r\n \"handles\": {\r\n \"width\": 7,\r\n \"height\": 15,\r\n \"symbols\": [\r\n \"navigator-handle\",\r\n \"navigator-handle\"\r\n ],\r\n \"enabled\": true,\r\n \"lineWidth\": 1,\r\n \"backgroundColor\": \"#f2f2f2\",\r\n \"borderColor\": \"#999999\"\r\n },\r\n \"maskFill\": \"rgba(102,133,194,0.3)\",\r\n \"outlineColor\": \"#cccccc\",\r\n \"outlineWidth\": 1,\r\n \"series\": {\r\n \"type\": \"areaspline\",\r\n \"fillOpacity\": 0.05,\r\n \"lineWidth\": 1,\r\n \"compare\": null,\r\n \"dataGrouping\": {\r\n \"approximation\": \"average\",\r\n \"enabled\": true,\r\n \"groupPixelWidth\": 2,\r\n \"firstAnchor\": \"firstPoint\",\r\n \"anchor\": \"middle\",\r\n \"lastAnchor\": \"lastPoint\",\r\n \"units\": [\r\n [\r\n \"millisecond\",\r\n [\r\n 1,\r\n 2,\r\n 5,\r\n 10,\r\n 20,\r\n 25,\r\n 50,\r\n 100,\r\n 200,\r\n 500\r\n ]\r\n ],\r\n [\r\n \"second\",\r\n [\r\n 1,\r\n 2,\r\n 5,\r\n 10,\r\n 15,\r\n 30\r\n ]\r\n ],\r\n [\r\n \"minute\",\r\n [\r\n 1,\r\n 2,\r\n 5,\r\n 10,\r\n 15,\r\n 30\r\n ]\r\n ],\r\n [\r\n \"hour\",\r\n [\r\n 1,\r\n 2,\r\n 3,\r\n 4,\r\n 6,\r\n 8,\r\n 12\r\n ]\r\n ],\r\n [\r\n \"day\",\r\n [\r\n 1,\r\n 2,\r\n 3,\r\n 4\r\n ]\r\n ],\r\n [\r\n \"week\",\r\n [\r\n 1,\r\n 2,\r\n 3\r\n ]\r\n ],\r\n [\r\n \"month\",\r\n [\r\n 1,\r\n 3,\r\n 6\r\n ]\r\n ],\r\n [\r\n \"year\",\r\n null\r\n ]\r\n ]\r\n },\r\n \"dataLabels\": {\r\n \"enabled\": false,\r\n \"zIndex\": 2\r\n },\r\n \"id\": \"highcharts-navigator-series\",\r\n \"className\": \"highcharts-navigator-series\",\r\n \"lineColor\": null,\r\n \"marker\": {\r\n \"enabled\": false\r\n },\r\n \"threshold\": null\r\n },\r\n \"xAxis\": {\r\n \"overscroll\": 0,\r\n \"className\": \"highcharts-navigator-xaxis\",\r\n \"tickLength\": 0,\r\n \"lineWidth\": 0,\r\n \"gridLineColor\": \"#e6e6e6\",\r\n \"gridLineWidth\": 1,\r\n \"tickPixelInterval\": 200,\r\n \"labels\": {\r\n \"align\": \"left\",\r\n \"style\": {\r\n \"color\": \"#999999\"\r\n },\r\n \"x\": 3,\r\n \"y\": -4\r\n },\r\n \"crosshair\": false\r\n },\r\n \"yAxis\": {\r\n \"className\": \"highcharts-navigator-yaxis\",\r\n \"gridLineWidth\": 0,\r\n \"startOnTick\": false,\r\n \"endOnTick\": false,\r\n \"minPadding\": 0.1,\r\n \"maxPadding\": 0.1,\r\n \"labels\": {\r\n \"enabled\": false\r\n },\r\n \"crosshair\": false,\r\n \"title\": {\r\n \"text\": null\r\n },\r\n \"tickLength\": 0,\r\n \"tickWidth\": 0\r\n }\r\n },\r\n \"rangeSelector\": {\r\n \"allButtonsEnabled\": false,\r\n \"buttonSpacing\": 5,\r\n \"dropdown\": \"responsive\",\r\n \"verticalAlign\": \"top\",\r\n \"buttonTheme\": {\r\n \"width\": 28,\r\n \"height\": 18,\r\n \"padding\": 2,\r\n \"zIndex\": 7\r\n },\r\n \"floating\": false,\r\n \"x\": 0,\r\n \"y\": 0,\r\n \"inputBoxBorderColor\": \"none\",\r\n \"inputBoxHeight\": 17,\r\n \"inputDateFormat\": \"%b %e, %Y\",\r\n \"inputEditDateFormat\": \"%Y-%m-%d\",\r\n \"inputEnabled\": true,\r\n \"inputPosition\": {\r\n \"align\": \"right\",\r\n \"x\": 0,\r\n \"y\": 0\r\n },\r\n \"inputSpacing\": 5,\r\n \"buttonPosition\": {\r\n \"align\": \"left\",\r\n \"x\": 0,\r\n \"y\": 0\r\n },\r\n \"inputStyle\": {\r\n \"color\": \"#335cad\",\r\n \"cursor\": \"pointer\"\r\n },\r\n \"labelStyle\": {\r\n \"color\": \"#666666\"\r\n }\r\n },\r\n \"navigation\": {\r\n \"buttonOptions\": {\r\n \"symbolSize\": 14,\r\n \"symbolX\": 12.5,\r\n \"symbolY\": 10.5,\r\n \"align\": \"right\",\r\n \"buttonSpacing\": 3,\r\n \"height\": 22,\r\n \"verticalAlign\": \"top\",\r\n \"width\": 24,\r\n \"symbolFill\": \"#666666\",\r\n \"symbolStroke\": \"#666666\",\r\n \"symbolStrokeWidth\": 3,\r\n \"theme\": {\r\n \"padding\": 5\r\n }\r\n },\r\n \"menuStyle\": {\r\n \"border\": \"1px solid #999999\",\r\n \"background\": \"#ffffff\",\r\n \"padding\": \"5px 0\"\r\n },\r\n \"menuItemStyle\": {\r\n \"padding\": \"0.5em 1em\",\r\n \"color\": \"#333333\",\r\n \"background\": \"none\",\r\n \"fontSize\": \"11px\",\r\n \"transition\": \"background 250ms, color 250ms\"\r\n },\r\n \"menuItemHoverStyle\": {\r\n \"background\": \"#335cad\",\r\n \"color\": \"#ffffff\"\r\n },\r\n \"bindingsClassName\": \"highcharts-bindings-container\",\r\n \"bindings\": {\r\n \"circleAnnotation\": {\r\n \"className\": \"highcharts-circle-annotation\",\r\n \"steps\": [\r\n null\r\n ]\r\n },\r\n \"ellipseAnnotation\": {\r\n \"className\": \"highcharts-ellipse-annotation\",\r\n \"steps\": [\r\n null,\r\n null\r\n ]\r\n },\r\n \"rectangleAnnotation\": {\r\n \"className\": \"highcharts-rectangle-annotation\",\r\n \"steps\": [\r\n null\r\n ]\r\n },\r\n \"labelAnnotation\": {\r\n \"className\": \"highcharts-label-annotation\"\r\n },\r\n \"segment\": {\r\n \"className\": \"highcharts-segment\",\r\n \"steps\": [\r\n null\r\n ]\r\n },\r\n \"arrowSegment\": {\r\n \"className\": \"highcharts-arrow-segment\",\r\n \"steps\": [\r\n null\r\n ]\r\n },\r\n \"ray\": {\r\n \"className\": \"highcharts-ray\",\r\n \"steps\": [\r\n null\r\n ]\r\n },\r\n \"arrowRay\": {\r\n \"className\": \"highcharts-arrow-ray\",\r\n \"steps\": [\r\n null\r\n ]\r\n },\r\n \"infinityLine\": {\r\n \"className\": \"highcharts-infinity-line\",\r\n \"steps\": [\r\n null\r\n ]\r\n },\r\n \"arrowInfinityLine\": {\r\n \"className\": \"highcharts-arrow-infinity-line\",\r\n \"steps\": [\r\n null\r\n ]\r\n },\r\n \"horizontalLine\": {\r\n \"className\": \"highcharts-horizontal-line\"\r\n },\r\n \"verticalLine\": {\r\n \"className\": \"highcharts-vertical-line\"\r\n },\r\n \"crooked3\": {\r\n \"className\": \"highcharts-crooked3\",\r\n \"steps\": [\r\n null,\r\n null\r\n ]\r\n },\r\n \"crooked5\": {\r\n \"className\": \"highcharts-crooked5\",\r\n \"steps\": [\r\n null,\r\n null,\r\n null,\r\n null\r\n ]\r\n },\r\n \"elliott3\": {\r\n \"className\": \"highcharts-elliott3\",\r\n \"steps\": [\r\n null,\r\n null,\r\n null\r\n ]\r\n },\r\n \"elliott5\": {\r\n \"className\": \"highcharts-elliott5\",\r\n \"steps\": [\r\n null,\r\n null,\r\n null,\r\n null,\r\n null\r\n ]\r\n },\r\n \"measureX\": {\r\n \"className\": \"highcharts-measure-x\",\r\n \"steps\": [\r\n null\r\n ]\r\n },\r\n \"measureY\": {\r\n \"className\": \"highcharts-measure-y\",\r\n \"steps\": [\r\n null\r\n ]\r\n },\r\n \"measureXY\": {\r\n \"className\": \"highcharts-measure-xy\",\r\n \"steps\": [\r\n null\r\n ]\r\n },\r\n \"fibonacci\": {\r\n \"className\": \"highcharts-fibonacci\",\r\n \"steps\": [\r\n null,\r\n null\r\n ]\r\n },\r\n \"parallelChannel\": {\r\n \"className\": \"highcharts-parallel-channel\",\r\n \"steps\": [\r\n null,\r\n null\r\n ]\r\n },\r\n \"pitchfork\": {\r\n \"className\": \"highcharts-pitchfork\",\r\n \"steps\": [\r\n null,\r\n null\r\n ]\r\n },\r\n \"verticalCounter\": {\r\n \"className\": \"highcharts-vertical-counter\"\r\n },\r\n \"timeCycles\": {\r\n \"className\": \"highcharts-time-cycles\",\r\n \"steps\": [\r\n null\r\n ]\r\n },\r\n \"verticalLabel\": {\r\n \"className\": \"highcharts-vertical-label\"\r\n },\r\n \"verticalArrow\": {\r\n \"className\": \"highcharts-vertical-arrow\"\r\n },\r\n \"fibonacciTimeZones\": {\r\n \"className\": \"highcharts-fibonacci-time-zones\",\r\n \"steps\": [\r\n null\r\n ]\r\n },\r\n \"flagCirclepin\": {\r\n \"className\": \"highcharts-flag-circlepin\"\r\n },\r\n \"flagDiamondpin\": {\r\n \"className\": \"highcharts-flag-diamondpin\"\r\n },\r\n \"flagSquarepin\": {\r\n \"className\": \"highcharts-flag-squarepin\"\r\n },\r\n \"flagSimplepin\": {\r\n \"className\": \"highcharts-flag-simplepin\"\r\n },\r\n \"zoomX\": {\r\n \"className\": \"highcharts-zoom-x\"\r\n },\r\n \"zoomY\": {\r\n \"className\": \"highcharts-zoom-y\"\r\n },\r\n \"zoomXY\": {\r\n \"className\": \"highcharts-zoom-xy\"\r\n },\r\n \"seriesTypeLine\": {\r\n \"className\": \"highcharts-series-type-line\"\r\n },\r\n \"seriesTypeOhlc\": {\r\n \"className\": \"highcharts-series-type-ohlc\"\r\n },\r\n \"seriesTypeCandlestick\": {\r\n \"className\": \"highcharts-series-type-candlestick\"\r\n },\r\n \"seriesTypeHeikinAshi\": {\r\n \"className\": \"highcharts-series-type-heikinashi\"\r\n },\r\n \"seriesTypeHLC\": {\r\n \"className\": \"highcharts-series-type-hlc\"\r\n },\r\n \"seriesTypeHollowCandlestick\": {\r\n \"className\": \"highcharts-series-type-hollowcandlestick\"\r\n },\r\n \"fullScreen\": {\r\n \"className\": \"highcharts-full-screen\",\r\n \"noDataState\": \"normal\"\r\n },\r\n \"currentPriceIndicator\": {\r\n \"className\": \"highcharts-current-price-indicator\"\r\n },\r\n \"indicators\": {\r\n \"className\": \"highcharts-indicators\"\r\n },\r\n \"toggleAnnotations\": {\r\n \"className\": \"highcharts-toggle-annotations\"\r\n },\r\n \"saveChart\": {\r\n \"className\": \"highcharts-save-chart\",\r\n \"noDataState\": \"normal\"\r\n }\r\n },\r\n \"events\": {},\r\n \"annotationsOptions\": {\r\n \"animation\": {\r\n \"defer\": 0\r\n }\r\n }\r\n },\r\n \"stockTools\": {\r\n \"gui\": {\r\n \"enabled\": true,\r\n \"className\": \"highcharts-bindings-wrapper\",\r\n \"toolbarClassName\": \"stocktools-toolbar\",\r\n \"buttons\": [\r\n \"indicators\",\r\n \"separator\",\r\n \"simpleShapes\",\r\n \"lines\",\r\n \"crookedLines\",\r\n \"measure\",\r\n \"advanced\",\r\n \"toggleAnnotations\",\r\n \"separator\",\r\n \"verticalLabels\",\r\n \"flags\",\r\n \"separator\",\r\n \"zoomChange\",\r\n \"fullScreen\",\r\n \"typeChange\",\r\n \"separator\",\r\n \"currentPriceIndicator\",\r\n \"saveChart\"\r\n ],\r\n \"definitions\": {\r\n \"separator\": {\r\n \"symbol\": \"separator.svg\"\r\n },\r\n \"simpleShapes\": {\r\n \"items\": [\r\n \"label\",\r\n \"circle\",\r\n \"ellipse\",\r\n \"rectangle\"\r\n ],\r\n \"circle\": {\r\n \"symbol\": \"circle.svg\"\r\n },\r\n \"ellipse\": {\r\n \"symbol\": \"ellipse.svg\"\r\n },\r\n \"rectangle\": {\r\n \"symbol\": \"rectangle.svg\"\r\n },\r\n \"label\": {\r\n \"symbol\": \"label.svg\"\r\n }\r\n },\r\n \"flags\": {\r\n \"items\": [\r\n \"flagCirclepin\",\r\n \"flagDiamondpin\",\r\n \"flagSquarepin\",\r\n \"flagSimplepin\"\r\n ],\r\n \"flagSimplepin\": {\r\n \"symbol\": \"flag-basic.svg\"\r\n },\r\n \"flagDiamondpin\": {\r\n \"symbol\": \"flag-diamond.svg\"\r\n },\r\n \"flagSquarepin\": {\r\n \"symbol\": \"flag-trapeze.svg\"\r\n },\r\n \"flagCirclepin\": {\r\n \"symbol\": \"flag-elipse.svg\"\r\n }\r\n },\r\n \"lines\": {\r\n \"items\": [\r\n \"segment\",\r\n \"arrowSegment\",\r\n \"ray\",\r\n \"arrowRay\",\r\n \"line\",\r\n \"arrowInfinityLine\",\r\n \"horizontalLine\",\r\n \"verticalLine\"\r\n ],\r\n \"segment\": {\r\n \"symbol\": \"segment.svg\"\r\n },\r\n \"arrowSegment\": {\r\n \"symbol\": \"arrow-segment.svg\"\r\n },\r\n \"ray\": {\r\n \"symbol\": \"ray.svg\"\r\n },\r\n \"arrowRay\": {\r\n \"symbol\": \"arrow-ray.svg\"\r\n },\r\n \"line\": {\r\n \"symbol\": \"line.svg\"\r\n },\r\n \"arrowInfinityLine\": {\r\n \"symbol\": \"arrow-line.svg\"\r\n },\r\n \"verticalLine\": {\r\n \"symbol\": \"vertical-line.svg\"\r\n },\r\n \"horizontalLine\": {\r\n \"symbol\": \"horizontal-line.svg\"\r\n }\r\n },\r\n \"crookedLines\": {\r\n \"items\": [\r\n \"elliott3\",\r\n \"elliott5\",\r\n \"crooked3\",\r\n \"crooked5\"\r\n ],\r\n \"crooked3\": {\r\n \"symbol\": \"crooked-3.svg\"\r\n },\r\n \"crooked5\": {\r\n \"symbol\": \"crooked-5.svg\"\r\n },\r\n \"elliott3\": {\r\n \"symbol\": \"elliott-3.svg\"\r\n },\r\n \"elliott5\": {\r\n \"symbol\": \"elliott-5.svg\"\r\n }\r\n },\r\n \"verticalLabels\": {\r\n \"items\": [\r\n \"verticalCounter\",\r\n \"verticalLabel\",\r\n \"verticalArrow\"\r\n ],\r\n \"verticalCounter\": {\r\n \"symbol\": \"vertical-counter.svg\"\r\n },\r\n \"verticalLabel\": {\r\n \"symbol\": \"vertical-label.svg\"\r\n },\r\n \"verticalArrow\": {\r\n \"symbol\": \"vertical-arrow.svg\"\r\n }\r\n },\r\n \"advanced\": {\r\n \"items\": [\r\n \"fibonacci\",\r\n \"fibonacciTimeZones\",\r\n \"pitchfork\",\r\n \"parallelChannel\",\r\n \"timeCycles\"\r\n ],\r\n \"pitchfork\": {\r\n \"symbol\": \"pitchfork.svg\"\r\n },\r\n \"fibonacci\": {\r\n \"symbol\": \"fibonacci.svg\"\r\n },\r\n \"fibonacciTimeZones\": {\r\n \"symbol\": \"fibonacci-timezone.svg\"\r\n },\r\n \"parallelChannel\": {\r\n \"symbol\": \"parallel-channel.svg\"\r\n },\r\n \"timeCycles\": {\r\n \"symbol\": \"time-cycles.svg\"\r\n }\r\n },\r\n \"measure\": {\r\n \"items\": [\r\n \"measureXY\",\r\n \"measureX\",\r\n \"measureY\"\r\n ],\r\n \"measureX\": {\r\n \"symbol\": \"measure-x.svg\"\r\n },\r\n \"measureY\": {\r\n \"symbol\": \"measure-y.svg\"\r\n },\r\n \"measureXY\": {\r\n \"symbol\": \"measure-xy.svg\"\r\n }\r\n },\r\n \"toggleAnnotations\": {\r\n \"symbol\": \"annotations-visible.svg\"\r\n },\r\n \"currentPriceIndicator\": {\r\n \"symbol\": \"current-price-show.svg\"\r\n },\r\n \"indicators\": {\r\n \"symbol\": \"indicators.svg\"\r\n },\r\n \"zoomChange\": {\r\n \"items\": [\r\n \"zoomX\",\r\n \"zoomY\",\r\n \"zoomXY\"\r\n ],\r\n \"zoomX\": {\r\n \"symbol\": \"zoom-x.svg\"\r\n },\r\n \"zoomY\": {\r\n \"symbol\": \"zoom-y.svg\"\r\n },\r\n \"zoomXY\": {\r\n \"symbol\": \"zoom-xy.svg\"\r\n }\r\n },\r\n \"typeChange\": {\r\n \"items\": [\r\n \"typeOHLC\",\r\n \"typeLine\",\r\n \"typeCandlestick\",\r\n \"typeHollowCandlestick\",\r\n \"typeHLC\",\r\n \"typeHeikinAshi\"\r\n ],\r\n \"typeOHLC\": {\r\n \"symbol\": \"series-ohlc.svg\"\r\n },\r\n \"typeLine\": {\r\n \"symbol\": \"series-line.svg\"\r\n },\r\n \"typeCandlestick\": {\r\n \"symbol\": \"series-candlestick.svg\"\r\n },\r\n \"typeHLC\": {\r\n \"symbol\": \"series-hlc.svg\"\r\n },\r\n \"typeHeikinAshi\": {\r\n \"symbol\": \"series-heikin-ashi.svg\"\r\n },\r\n \"typeHollowCandlestick\": {\r\n \"symbol\": \"series-hollow-candlestick.svg\"\r\n }\r\n },\r\n \"fullScreen\": {\r\n \"symbol\": \"fullscreen.svg\"\r\n },\r\n \"saveChart\": {\r\n \"symbol\": \"save-chart.svg\"\r\n }\r\n }\r\n }\r\n },\r\n \"accessibility\": {\r\n \"enabled\": true,\r\n \"screenReaderSection\": {\r\n \"beforeChartFormat\": \"<{headingTagName}>{chartTitle}
{typeDescription}
{chartSubtitle}
{chartLongdesc}
{playAsSoundButton}
{viewTableButton}
{xAxisDescription}
{yAxisDescription}
{annotationsTitle}{annotationsList}
\",\r\n \"afterChartFormat\": \"{endOfChartMarker}\",\r\n \"axisRangeDateFormat\": \"%Y-%m-%d %H:%M:%S\"\r\n },\r\n \"series\": {\r\n \"describeSingleSeries\": false,\r\n \"pointDescriptionEnabledThreshold\": 200\r\n },\r\n \"point\": {\r\n \"valueDescriptionFormat\": \"{index}. {xDescription}{separator}{value}.\"\r\n },\r\n \"landmarkVerbosity\": \"all\",\r\n \"linkedDescription\": \"*[data-highcharts-chart=\\\"{index}\\\"] + .highcharts-description\",\r\n \"keyboardNavigation\": {\r\n \"enabled\": true,\r\n \"focusBorder\": {\r\n \"enabled\": true,\r\n \"hideBrowserFocusOutline\": true,\r\n \"style\": {\r\n \"color\": \"#335cad\",\r\n \"lineWidth\": 2,\r\n \"borderRadius\": 3\r\n },\r\n \"margin\": 2\r\n },\r\n \"order\": [\r\n \"series\",\r\n \"zoom\",\r\n \"rangeSelector\",\r\n \"legend\",\r\n \"chartMenu\"\r\n ],\r\n \"wrapAround\": true,\r\n \"seriesNavigation\": {\r\n \"skipNullPoints\": true,\r\n \"pointNavigationEnabledThreshold\": false\r\n }\r\n },\r\n \"announceNewData\": {\r\n \"enabled\": false,\r\n \"minAnnounceInterval\": 5000,\r\n \"interruptUser\": false\r\n },\r\n \"highContrastTheme\": {\r\n \"chart\": {\r\n \"backgroundColor\": \"window\"\r\n },\r\n \"title\": {\r\n \"style\": {\r\n \"color\": \"windowText\"\r\n }\r\n },\r\n \"subtitle\": {\r\n \"style\": {\r\n \"color\": \"windowText\"\r\n }\r\n },\r\n \"colorAxis\": {\r\n \"minColor\": \"windowText\",\r\n \"maxColor\": \"windowText\",\r\n \"stops\": []\r\n },\r\n \"colors\": [\r\n \"windowText\"\r\n ],\r\n \"xAxis\": {\r\n \"gridLineColor\": \"windowText\",\r\n \"labels\": {\r\n \"style\": {\r\n \"color\": \"windowText\"\r\n }\r\n },\r\n \"lineColor\": \"windowText\",\r\n \"minorGridLineColor\": \"windowText\",\r\n \"tickColor\": \"windowText\",\r\n \"title\": {\r\n \"style\": {\r\n \"color\": \"windowText\"\r\n }\r\n }\r\n },\r\n \"yAxis\": {\r\n \"gridLineColor\": \"windowText\",\r\n \"labels\": {\r\n \"style\": {\r\n \"color\": \"windowText\"\r\n }\r\n },\r\n \"lineColor\": \"windowText\",\r\n \"minorGridLineColor\": \"windowText\",\r\n \"tickColor\": \"windowText\",\r\n \"title\": {\r\n \"style\": {\r\n \"color\": \"windowText\"\r\n }\r\n }\r\n },\r\n \"tooltip\": {\r\n \"backgroundColor\": \"window\",\r\n \"borderColor\": \"windowText\",\r\n \"style\": {\r\n \"color\": \"windowText\"\r\n }\r\n },\r\n \"plotOptions\": {\r\n \"series\": {\r\n \"lineColor\": \"windowText\",\r\n \"fillColor\": \"window\",\r\n \"borderColor\": \"windowText\",\r\n \"edgeColor\": \"windowText\",\r\n \"borderWidth\": 1,\r\n \"dataLabels\": {\r\n \"connectorColor\": \"windowText\",\r\n \"color\": \"windowText\",\r\n \"style\": {\r\n \"color\": \"windowText\",\r\n \"textOutline\": \"none\"\r\n }\r\n },\r\n \"marker\": {\r\n \"lineColor\": \"windowText\",\r\n \"fillColor\": \"windowText\"\r\n }\r\n },\r\n \"pie\": {\r\n \"color\": \"window\",\r\n \"colors\": [\r\n \"window\"\r\n ],\r\n \"borderColor\": \"windowText\",\r\n \"borderWidth\": 1\r\n },\r\n \"boxplot\": {\r\n \"fillColor\": \"window\"\r\n },\r\n \"candlestick\": {\r\n \"lineColor\": \"windowText\",\r\n \"fillColor\": \"window\"\r\n },\r\n \"errorbar\": {\r\n \"fillColor\": \"window\"\r\n }\r\n },\r\n \"legend\": {\r\n \"backgroundColor\": \"window\",\r\n \"itemStyle\": {\r\n \"color\": \"windowText\"\r\n },\r\n \"itemHoverStyle\": {\r\n \"color\": \"windowText\"\r\n },\r\n \"itemHiddenStyle\": {\r\n \"color\": \"#555\"\r\n },\r\n \"title\": {\r\n \"style\": {\r\n \"color\": \"windowText\"\r\n }\r\n }\r\n },\r\n \"credits\": {\r\n \"style\": {\r\n \"color\": \"windowText\"\r\n }\r\n },\r\n \"labels\": {\r\n \"style\": {\r\n \"color\": \"windowText\"\r\n }\r\n },\r\n \"drilldown\": {\r\n \"activeAxisLabelStyle\": {\r\n \"color\": \"windowText\"\r\n },\r\n \"activeDataLabelStyle\": {\r\n \"color\": \"windowText\"\r\n }\r\n },\r\n \"navigation\": {\r\n \"buttonOptions\": {\r\n \"symbolStroke\": \"windowText\",\r\n \"theme\": {\r\n \"fill\": \"window\"\r\n }\r\n }\r\n },\r\n \"rangeSelector\": {\r\n \"buttonTheme\": {\r\n \"fill\": \"window\",\r\n \"stroke\": \"windowText\",\r\n \"style\": {\r\n \"color\": \"windowText\"\r\n },\r\n \"states\": {\r\n \"hover\": {\r\n \"fill\": \"window\",\r\n \"stroke\": \"windowText\",\r\n \"style\": {\r\n \"color\": \"windowText\"\r\n }\r\n },\r\n \"select\": {\r\n \"fill\": \"#444\",\r\n \"stroke\": \"windowText\",\r\n \"style\": {\r\n \"color\": \"windowText\"\r\n }\r\n }\r\n }\r\n },\r\n \"inputBoxBorderColor\": \"windowText\",\r\n \"inputStyle\": {\r\n \"backgroundColor\": \"window\",\r\n \"color\": \"windowText\"\r\n },\r\n \"labelStyle\": {\r\n \"color\": \"windowText\"\r\n }\r\n },\r\n \"navigator\": {\r\n \"handles\": {\r\n \"backgroundColor\": \"window\",\r\n \"borderColor\": \"windowText\"\r\n },\r\n \"outlineColor\": \"windowText\",\r\n \"maskFill\": \"transparent\",\r\n \"series\": {\r\n \"color\": \"windowText\",\r\n \"lineColor\": \"windowText\"\r\n },\r\n \"xAxis\": {\r\n \"gridLineColor\": \"windowText\"\r\n }\r\n },\r\n \"scrollbar\": {\r\n \"barBackgroundColor\": \"#444\",\r\n \"barBorderColor\": \"windowText\",\r\n \"buttonArrowColor\": \"windowText\",\r\n \"buttonBackgroundColor\": \"window\",\r\n \"buttonBorderColor\": \"windowText\",\r\n \"rifleColor\": \"windowText\",\r\n \"trackBackgroundColor\": \"window\",\r\n \"trackBorderColor\": \"windowText\"\r\n }\r\n }\r\n },\r\n \"exporting\": {\r\n \"type\": \"image/png\",\r\n \"url\": \"https://export.highcharts.com/\",\r\n \"printMaxWidth\": 780,\r\n \"scale\": 2,\r\n \"buttons\": {\r\n \"contextButton\": {\r\n \"className\": \"highcharts-contextbutton\",\r\n \"menuClassName\": \"highcharts-contextmenu\",\r\n \"symbol\": \"menu\",\r\n \"titleKey\": \"contextButtonTitle\",\r\n \"menuItems\": [\r\n \"viewFullscreen\",\r\n \"printChart\",\r\n \"separator\",\r\n \"downloadPNG\",\r\n \"downloadJPEG\",\r\n \"downloadPDF\",\r\n \"downloadSVG\",\r\n \"separator\",\r\n \"downloadCSV\",\r\n \"downloadXLS\",\r\n \"viewData\"\r\n ]\r\n }\r\n },\r\n \"menuItemDefinitions\": {\r\n \"viewFullscreen\": {\r\n \"textKey\": \"viewFullscreen\"\r\n },\r\n \"printChart\": {\r\n \"textKey\": \"printChart\"\r\n },\r\n \"separator\": {\r\n \"separator\": true\r\n },\r\n \"downloadPNG\": {\r\n \"textKey\": \"downloadPNG\"\r\n },\r\n \"downloadJPEG\": {\r\n \"textKey\": \"downloadJPEG\"\r\n },\r\n \"downloadPDF\": {\r\n \"textKey\": \"downloadPDF\"\r\n },\r\n \"downloadSVG\": {\r\n \"textKey\": \"downloadSVG\"\r\n },\r\n \"downloadCSV\": {\r\n \"textKey\": \"downloadCSV\"\r\n },\r\n \"downloadXLS\": {\r\n \"textKey\": \"downloadXLS\"\r\n },\r\n \"viewData\": {\r\n \"textKey\": \"viewData\"\r\n }\r\n },\r\n \"accessibility\": {\r\n \"enabled\": true\r\n },\r\n \"csv\": {\r\n \"annotations\": {\r\n \"itemDelimiter\": \"; \",\r\n \"join\": false\r\n },\r\n \"columnHeaderFormatter\": null,\r\n \"dateFormat\": \"%Y-%m-%d %H:%M:%S\",\r\n \"decimalPoint\": null,\r\n \"itemDelimiter\": null,\r\n \"lineDelimiter\": \"\\n\"\r\n },\r\n \"showTable\": false,\r\n \"useMultiLevelHeaders\": true,\r\n \"useRowspanHeaders\": true\r\n },\r\n \"connectors\": {\r\n \"type\": \"straight\",\r\n \"lineWidth\": 1,\r\n \"marker\": {\r\n \"enabled\": false,\r\n \"align\": \"center\",\r\n \"verticalAlign\": \"middle\",\r\n \"inside\": false,\r\n \"lineWidth\": 1\r\n },\r\n \"startMarker\": {\r\n \"symbol\": \"diamond\"\r\n },\r\n \"endMarker\": {\r\n \"symbol\": \"arrow-filled\"\r\n }\r\n }\r\n}","import React, { useRef, useState, useEffect } from 'react'\r\nimport HighchartsReact from 'highcharts-react-official'\r\nimport Highcharts from 'highcharts/highstock'\r\nimport Highcharts3D from 'highcharts/highcharts-3d'\r\nimport IndicatorsAll from 'highcharts/indicators/indicators-all'\r\n\r\nimport 'highcharts/css/stocktools/gui.scss'\r\nimport 'highcharts/css/annotations/popup.scss'\r\n\r\nimport StockData from 'highcharts/modules/data'\r\nimport HighchartAccessibility from 'highcharts/modules/accessibility'\r\nimport HighchartsExporting from 'highcharts/modules/exporting';\r\nimport HighchartsExportData from 'highcharts/modules/export-data';\r\nimport DragPane from 'highcharts/modules/drag-panes'\r\nimport AnnotationsAdvanced from 'highcharts/modules/annotations-advanced'\r\nimport PriceIndicator from 'highcharts/modules/price-indicator'\r\nimport FullScreen from 'highcharts/modules/full-screen'\r\nimport StockTools from 'highcharts/modules/stock-tools'\r\nimport Heikinashi from 'highcharts/modules/heikinashi'\r\nimport HollowCandlestick from 'highcharts/modules/hollowcandlestick'\r\nimport HistogramBellCurve from 'highcharts/modules/histogram-bellcurve'\r\nimport Gantt from 'highcharts/modules/gantt'\r\n\r\nimport HighchartsMore from 'highcharts/highcharts-more';\r\nimport TestChart from 'highcharts/themes/brand-light';\r\nimport { theme as DefaultOpts } from './DefaultOpts'\r\n\r\n// Highcharts3D(Highcharts)\r\nStockData(Highcharts)\r\nDragPane(Highcharts)\r\nIndicatorsAll(Highcharts)\r\nStockTools(Highcharts)\r\nAnnotationsAdvanced(Highcharts)\r\nPriceIndicator(Highcharts)\r\nFullScreen(Highcharts)\r\nHighchartAccessibility(Highcharts)\r\n\r\nHeikinashi(Highcharts)\r\nHollowCandlestick(Highcharts)\r\nGantt(Highcharts)\r\nHistogramBellCurve(Highcharts)\r\n\r\nHighchartsMore(Highcharts);\r\nHighchartsExporting(Highcharts);\r\nHighchartsExportData(Highcharts);\r\n\r\nconst HighChartWrapper = ({options, constructorType}) => {\r\n // Highcharts.theme = {...DefaultOpts}\r\n // Highcharts.setOptions(Highcharts.theme)\r\n // TestChart(Highcharts)\r\n return(\r\n \r\n );\r\n}\r\n\r\nexport default HighChartWrapper;","const textBright = '#F0F0F3';\r\nexport const AvocadoTheme = {\r\n colors: ['#F3E796', '#95C471', '#35729E', '#251735'],\r\n colorAxis: {\r\n maxColor: '#05426E',\r\n minColor: '#F3E796'\r\n },\r\n plotOptions: {\r\n map: {\r\n nullColor: '#FCFEFE'\r\n }\r\n },\r\n navigator: {\r\n maskFill: 'rgba(170, 205, 170, 0.5)',\r\n series: {\r\n color: '#95C471',\r\n lineColor: '#35729E'\r\n }\r\n }\r\n}\r\nexport const BrandDarkTheme = {\r\n colors: ['#8087E8', '#A3EDBA', '#F19E53', '#6699A1',\r\n '#E1D369', '#87B4E7', '#DA6D85', '#BBBAC5'],\r\n chart: {\r\n backgroundColor: {\r\n linearGradient: { x1: 0, y1: 0, x2: 0, y2: 1 },\r\n stops: [\r\n [0, '#1f1836'],\r\n [1, '#45445d']\r\n ]\r\n },\r\n style: {\r\n fontFamily: 'IBM Plex Sans, sans-serif'\r\n }\r\n },\r\n title: {\r\n style: {\r\n fontSize: '22px',\r\n fontWeight: '500',\r\n color: '#fff'\r\n }\r\n },\r\n subtitle: {\r\n style: {\r\n fontSize: '16px',\r\n fontWeight: '400',\r\n color: '#fff'\r\n }\r\n },\r\n credits: {\r\n style: {\r\n color: '#f0f0f0'\r\n }\r\n },\r\n caption: {\r\n style: {\r\n color: '#f0f0f0'\r\n }\r\n },\r\n tooltip: {\r\n borderWidth: 0,\r\n backgroundColor: '#f0f0f0',\r\n shadow: true\r\n },\r\n legend: {\r\n backgroundColor: 'transparent',\r\n itemStyle: {\r\n fontWeight: '400',\r\n fontSize: '12px',\r\n color: '#fff'\r\n },\r\n itemHoverStyle: {\r\n fontWeight: '700',\r\n color: '#fff'\r\n }\r\n },\r\n labels: {\r\n style: {\r\n color: '#707073'\r\n }\r\n },\r\n plotOptions: {\r\n series: {\r\n dataLabels: {\r\n color: '#46465C',\r\n style: {\r\n fontSize: '13px'\r\n }\r\n },\r\n marker: {\r\n lineColor: '#333'\r\n }\r\n },\r\n boxplot: {\r\n fillColor: '#505053'\r\n },\r\n candlestick: {\r\n lineColor: null,\r\n upColor: '#DA6D85',\r\n upLineColor: '#DA6D85'\r\n },\r\n errorbar: {\r\n color: 'white'\r\n },\r\n dumbbell: {\r\n lowColor: '#f0f0f0'\r\n },\r\n map: {\r\n borderColor: 'rgba(200, 200, 200, 1)',\r\n nullColor: '#78758C'\r\n }\r\n },\r\n drilldown: {\r\n activeAxisLabelStyle: {\r\n color: '#F0F0F3'\r\n },\r\n activeDataLabelStyle: {\r\n color: '#F0F0F3'\r\n },\r\n drillUpButton: {\r\n theme: {\r\n fill: '#fff'\r\n }\r\n }\r\n },\r\n xAxis: {\r\n gridLineColor: '#707073',\r\n labels: {\r\n style: {\r\n color: '#fff',\r\n fontSize: '12px'\r\n }\r\n },\r\n lineColor: '#707073',\r\n minorGridLineColor: '#505053',\r\n tickColor: '#707073',\r\n title: {\r\n style: {\r\n color: '#fff'\r\n }\r\n }\r\n },\r\n yAxis: {\r\n gridLineColor: '#707073',\r\n labels: {\r\n style: {\r\n color: '#fff',\r\n fontSize: '12px'\r\n }\r\n },\r\n lineColor: '#707073',\r\n minorGridLineColor: '#505053',\r\n tickColor: '#707073',\r\n tickWidth: 1,\r\n title: {\r\n style: {\r\n color: '#fff',\r\n fontWeight: '300'\r\n }\r\n }\r\n },\r\n mapNavigation: {\r\n enabled: true,\r\n buttonOptions: {\r\n theme: {\r\n fill: '#46465C',\r\n 'stroke-width': 1,\r\n stroke: '#BBBAC5',\r\n r: 2,\r\n style: {\r\n color: '#fff'\r\n },\r\n states: {\r\n hover: {\r\n fill: '#000',\r\n 'stroke-width': 1,\r\n stroke: '#f0f0f0',\r\n style: {\r\n color: '#fff'\r\n }\r\n },\r\n select: {\r\n fill: '#000',\r\n 'stroke-width': 1,\r\n stroke: '#f0f0f0',\r\n style: {\r\n color: '#fff'\r\n }\r\n }\r\n }\r\n },\r\n verticalAlign: 'bottom'\r\n }\r\n },\r\n // scroll charts\r\n rangeSelector: {\r\n buttonTheme: {\r\n fill: '#46465C',\r\n stroke: '#BBBAC5',\r\n 'stroke-width': 1,\r\n style: {\r\n color: '#fff'\r\n },\r\n states: {\r\n hover: {\r\n fill: '#1f1836',\r\n style: {\r\n color: '#fff'\r\n },\r\n 'stroke-width': 1,\r\n stroke: 'white'\r\n },\r\n select: {\r\n fill: '#1f1836',\r\n style: {\r\n color: '#fff'\r\n },\r\n 'stroke-width': 1,\r\n stroke: 'white'\r\n }\r\n }\r\n },\r\n inputBoxBorderColor: '#BBBAC5',\r\n inputStyle: {\r\n backgroundColor: '#2F2B38',\r\n color: '#fff'\r\n },\r\n labelStyle: {\r\n color: '#fff'\r\n }\r\n },\r\n navigator: {\r\n handles: {\r\n backgroundColor: '#BBBAC5',\r\n borderColor: '#2F2B38'\r\n },\r\n outlineColor: '#CCC',\r\n maskFill: 'rgba(255,255,255,0.1)',\r\n series: {\r\n color: '#A3EDBA',\r\n lineColor: '#A3EDBA'\r\n },\r\n xAxis: {\r\n gridLineColor: '#505053'\r\n }\r\n },\r\n scrollbar: {\r\n barBackgroundColor: '#BBBAC5',\r\n barBorderColor: '#808083',\r\n buttonArrowColor: '#2F2B38',\r\n buttonBackgroundColor: '#BBBAC5',\r\n buttonBorderColor: '#2F2B38',\r\n rifleColor: '#2F2B38',\r\n trackBackgroundColor: '#78758C',\r\n trackBorderColor: '#2F2B38'\r\n }\r\n}\r\nexport const BrandLightTheme = {\r\n colors: ['#8087E8', '#A3EDBA', '#F19E53', '#6699A1',\r\n '#E1D369', '#87B4E7', '#DA6D85', '#BBBAC5'],\r\n chart: {\r\n backgroundColor: '#f0f0f0',\r\n style: {\r\n fontFamily: 'IBM Plex Sans, sans-serif'\r\n }\r\n },\r\n title: {\r\n style: {\r\n fontSize: '22px',\r\n fontWeight: '500',\r\n color: '#2F2B38'\r\n }\r\n },\r\n subtitle: {\r\n style: {\r\n fontSize: '16px',\r\n fontWeight: '400',\r\n color: '#2F2B38'\r\n }\r\n },\r\n tooltip: {\r\n borderWidth: 0,\r\n backgroundColor: '#46465C',\r\n style: {\r\n color: '#f0f0f0'\r\n },\r\n shadow: true\r\n },\r\n legend: {\r\n backgroundColor: '#f0f0f0',\r\n borderColor: '#BBBAC5',\r\n borderWidth: 1,\r\n borderRadius: 2,\r\n itemStyle: {\r\n fontWeight: '400',\r\n fontSize: '12px',\r\n color: '#2F2B38'\r\n },\r\n itemHoverStyle: {\r\n fontWeight: '700',\r\n color: '#46465C'\r\n }\r\n },\r\n navigation: {\r\n buttonOptions: {\r\n symbolStroke: '#2F2B38',\r\n theme: {\r\n fill: '#fff',\r\n states: {\r\n hover: {\r\n stroke: '#46465C',\r\n fill: '#fff'\r\n },\r\n select: {\r\n stroke: '#46465C',\r\n fill: '#fff'\r\n }\r\n }\r\n }\r\n }\r\n },\r\n labels: {\r\n style: {\r\n color: '#46465C'\r\n }\r\n },\r\n credits: {\r\n style: {\r\n color: '#46465C'\r\n }\r\n },\r\n drilldown: {\r\n activeAxisLabelStyle: {\r\n color: '#2F2B38'\r\n },\r\n activeDataLabelStyle: {\r\n color: '#2F2B38'\r\n },\r\n drillUpButton: {\r\n theme: {\r\n fill: '#2F2B38',\r\n style: {\r\n color: '#fff'\r\n }\r\n }\r\n }\r\n },\r\n xAxis: {\r\n gridLineColor: '#ccc',\r\n labels: {\r\n style: {\r\n color: '#46465C',\r\n fontSize: '12px'\r\n }\r\n },\r\n lineColor: '#ccc',\r\n minorGridLineColor: '#ebebeb',\r\n tickColor: '#ccc',\r\n title: {\r\n style: {\r\n color: '#2F2B38'\r\n }\r\n }\r\n },\r\n yAxis: {\r\n gridLineColor: '#ccc',\r\n labels: {\r\n style: {\r\n color: '#46465C',\r\n fontSize: '12px'\r\n }\r\n },\r\n lineColor: '#ccc',\r\n minorGridLineColor: '#ebebeb',\r\n tickColor: '#ccc',\r\n tickWidth: 1,\r\n title: {\r\n style: {\r\n color: '#2F2B38',\r\n fontWeight: '300'\r\n }\r\n }\r\n },\r\n // scroll charts\r\n rangeSelector: {\r\n buttonTheme: {\r\n fill: '#fff',\r\n style: {\r\n color: '#46465C',\r\n stroke: 'transparent'\r\n },\r\n states: {\r\n hover: {\r\n fill: '#fff',\r\n style: {\r\n color: '#46465C'\r\n },\r\n 'stroke-width': 1,\r\n stroke: '#46465C'\r\n },\r\n select: {\r\n fill: '#fff',\r\n style: {\r\n color: '#46465C'\r\n },\r\n 'stroke-width': 1,\r\n stroke: '#46465C'\r\n }\r\n }\r\n },\r\n inputBoxBorderColor: '#BBBAC5',\r\n inputStyle: {\r\n backgroundColor: '#fff',\r\n color: '#46465C'\r\n },\r\n labelStyle: {\r\n color: '#46465C'\r\n }\r\n },\r\n scrollbar: {\r\n barBackgroundColor: '#BBBAC5',\r\n barBorderColor: '#808083',\r\n buttonArrowColor: '#fff',\r\n buttonBackgroundColor: '#BBBAC5',\r\n buttonBorderColor: '#46465C',\r\n rifleColor: '#FFF',\r\n trackBackgroundColor: '#dedede',\r\n trackBorderColor: '#BBBAC5'\r\n },\r\n plotOptions: {\r\n series: {\r\n borderWidth: 1,\r\n borderColor: '#BBBAC5',\r\n dataLabels: {\r\n color: '#46465C',\r\n style: {\r\n fontSize: '13px'\r\n }\r\n },\r\n marker: {\r\n lineColor: '#46465C'\r\n }\r\n },\r\n boxplot: {\r\n fillColor: '#505053'\r\n },\r\n candlestick: {\r\n lineColor: null,\r\n upColor: '#DA6D85',\r\n upLineColor: '#DA6D85'\r\n },\r\n errorbar: {\r\n color: 'white'\r\n },\r\n map: {\r\n borderColor: 'rgba(200, 200, 200, 0.3)',\r\n nullColor: 'rgba(200, 200, 200, 0.3)'\r\n }\r\n }\r\n};\r\nexport const DarkBlueTheme = {\r\n colors: ['#DDDF0D', '#55BF3B', '#DF5353', '#7798BF', '#aaeeee',\r\n '#ff0066', '#eeaaee', '#55BF3B', '#DF5353', '#7798BF', '#aaeeee'],\r\n chart: {\r\n backgroundColor: {\r\n linearGradient: { x1: 0, y1: 0, x2: 1, y2: 1 },\r\n stops: [\r\n [0, 'rgb(48, 48, 96)'],\r\n [1, 'rgb(0, 0, 0)']\r\n ]\r\n },\r\n borderColor: '#000000',\r\n borderWidth: 2,\r\n className: 'dark-container',\r\n plotBackgroundColor: 'rgba(255, 255, 255, .1)',\r\n plotBorderColor: '#CCCCCC',\r\n plotBorderWidth: 1\r\n },\r\n title: {\r\n style: {\r\n color: '#C0C0C0',\r\n font: 'bold 16px \"Trebuchet MS\", Verdana, sans-serif'\r\n }\r\n },\r\n subtitle: {\r\n style: {\r\n color: '#666666',\r\n font: 'bold 12px \"Trebuchet MS\", Verdana, sans-serif'\r\n }\r\n },\r\n xAxis: {\r\n gridLineColor: '#333333',\r\n gridLineWidth: 1,\r\n labels: {\r\n style: {\r\n color: '#A0A0A0'\r\n }\r\n },\r\n lineColor: '#A0A0A0',\r\n tickColor: '#A0A0A0',\r\n title: {\r\n style: {\r\n color: '#CCC',\r\n fontWeight: 'bold',\r\n fontSize: '12px',\r\n fontFamily: 'Trebuchet MS, Verdana, sans-serif'\r\n }\r\n }\r\n },\r\n yAxis: {\r\n gridLineColor: '#333333',\r\n labels: {\r\n style: {\r\n color: '#A0A0A0'\r\n }\r\n },\r\n lineColor: '#A0A0A0',\r\n minorTickInterval: null,\r\n tickColor: '#A0A0A0',\r\n tickWidth: 1,\r\n title: {\r\n style: {\r\n color: '#CCC',\r\n fontWeight: 'bold',\r\n fontSize: '12px',\r\n fontFamily: 'Trebuchet MS, Verdana, sans-serif'\r\n }\r\n }\r\n },\r\n tooltip: {\r\n backgroundColor: 'rgba(0, 0, 0, 0.75)',\r\n style: {\r\n color: '#F0F0F0'\r\n }\r\n },\r\n plotOptions: {\r\n line: {\r\n dataLabels: {\r\n color: '#CCC'\r\n },\r\n marker: {\r\n lineColor: '#333'\r\n }\r\n },\r\n spline: {\r\n marker: {\r\n lineColor: '#333'\r\n }\r\n },\r\n scatter: {\r\n marker: {\r\n lineColor: '#333'\r\n }\r\n },\r\n candlestick: {\r\n lineColor: 'white'\r\n }\r\n },\r\n legend: {\r\n backgroundColor: 'rgba(0, 0, 0, 0.5)',\r\n itemStyle: {\r\n font: '9pt Trebuchet MS, Verdana, sans-serif',\r\n color: '#A0A0A0'\r\n },\r\n itemHoverStyle: {\r\n color: '#FFF'\r\n },\r\n itemHiddenStyle: {\r\n color: '#444'\r\n },\r\n title: {\r\n style: {\r\n color: '#C0C0C0'\r\n }\r\n }\r\n },\r\n credits: {\r\n style: {\r\n color: '#666'\r\n }\r\n },\r\n labels: {\r\n style: {\r\n color: '#CCC'\r\n }\r\n },\r\n navigation: {\r\n buttonOptions: {\r\n symbolStroke: '#DDDDDD',\r\n theme: {\r\n fill: {\r\n linearGradient: { x1: 0, y1: 0, x2: 0, y2: 1 },\r\n stops: [\r\n [0.4, '#606060'],\r\n [0.6, '#333333']\r\n ]\r\n },\r\n stroke: '#000000'\r\n }\r\n }\r\n },\r\n // scroll charts\r\n rangeSelector: {\r\n buttonTheme: {\r\n fill: {\r\n linearGradient: { x1: 0, y1: 0, x2: 0, y2: 1 },\r\n stops: [\r\n [0.4, '#888'],\r\n [0.6, '#555']\r\n ]\r\n },\r\n stroke: '#000000',\r\n style: {\r\n color: '#CCC',\r\n fontWeight: 'bold'\r\n },\r\n states: {\r\n hover: {\r\n fill: {\r\n linearGradient: { x1: 0, y1: 0, x2: 0, y2: 1 },\r\n stops: [\r\n [0.4, '#BBB'],\r\n [0.6, '#888']\r\n ]\r\n },\r\n stroke: '#000000',\r\n style: {\r\n color: 'white'\r\n }\r\n },\r\n select: {\r\n fill: {\r\n linearGradient: { x1: 0, y1: 0, x2: 0, y2: 1 },\r\n stops: [\r\n [0.1, '#000'],\r\n [0.3, '#333']\r\n ]\r\n },\r\n stroke: '#000000',\r\n style: {\r\n color: 'yellow'\r\n }\r\n }\r\n }\r\n },\r\n inputStyle: {\r\n backgroundColor: '#333',\r\n color: 'silver'\r\n },\r\n labelStyle: {\r\n color: 'silver'\r\n }\r\n },\r\n navigator: {\r\n handles: {\r\n backgroundColor: '#666',\r\n borderColor: '#AAA'\r\n },\r\n outlineColor: '#CCC',\r\n maskFill: 'rgba(16, 16, 16, 0.5)',\r\n series: {\r\n color: '#7798BF',\r\n lineColor: '#A6C7ED'\r\n }\r\n },\r\n scrollbar: {\r\n barBackgroundColor: {\r\n linearGradient: { x1: 0, y1: 0, x2: 0, y2: 1 },\r\n stops: [\r\n [0.4, '#888'],\r\n [0.6, '#555']\r\n ]\r\n },\r\n barBorderColor: '#CCC',\r\n buttonArrowColor: '#CCC',\r\n buttonBackgroundColor: {\r\n linearGradient: { x1: 0, y1: 0, x2: 0, y2: 1 },\r\n stops: [\r\n [0.4, '#888'],\r\n [0.6, '#555']\r\n ]\r\n },\r\n buttonBorderColor: '#CCC',\r\n rifleColor: '#FFF',\r\n trackBackgroundColor: {\r\n linearGradient: { x1: 0, y1: 0, x2: 0, y2: 1 },\r\n stops: [\r\n [0, '#000'],\r\n [1, '#333']\r\n ]\r\n },\r\n trackBorderColor: '#666'\r\n }\r\n};\r\nexport const DarkGreenTheme = {\r\n colors: ['#DDDF0D', '#55BF3B', '#DF5353', '#7798BF', '#aaeeee',\r\n '#ff0066', '#eeaaee', '#55BF3B', '#DF5353', '#7798BF', '#aaeeee'],\r\n chart: {\r\n backgroundColor: {\r\n linearGradient: { x1: 0, y1: 0, x2: 1, y2: 1 },\r\n stops: [\r\n [0, 'rgb(48, 96, 48)'],\r\n [1, 'rgb(0, 0, 0)']\r\n ]\r\n },\r\n borderColor: '#000000',\r\n borderWidth: 2,\r\n className: 'dark-container',\r\n plotBackgroundColor: 'rgba(255, 255, 255, .1)',\r\n plotBorderColor: '#CCCCCC',\r\n plotBorderWidth: 1\r\n },\r\n title: {\r\n style: {\r\n color: '#C0C0C0',\r\n font: 'bold 16px \"Trebuchet MS\", Verdana, sans-serif'\r\n }\r\n },\r\n subtitle: {\r\n style: {\r\n color: '#666666',\r\n font: 'bold 12px \"Trebuchet MS\", Verdana, sans-serif'\r\n }\r\n },\r\n xAxis: {\r\n gridLineColor: '#333333',\r\n gridLineWidth: 1,\r\n labels: {\r\n style: {\r\n color: '#A0A0A0'\r\n }\r\n },\r\n lineColor: '#A0A0A0',\r\n tickColor: '#A0A0A0',\r\n title: {\r\n style: {\r\n color: '#CCC',\r\n fontWeight: 'bold',\r\n fontSize: '12px',\r\n fontFamily: 'Trebuchet MS, Verdana, sans-serif'\r\n }\r\n }\r\n },\r\n yAxis: {\r\n gridLineColor: '#333333',\r\n labels: {\r\n style: {\r\n color: '#A0A0A0'\r\n }\r\n },\r\n lineColor: '#A0A0A0',\r\n minorTickInterval: null,\r\n tickColor: '#A0A0A0',\r\n tickWidth: 1,\r\n title: {\r\n style: {\r\n color: '#CCC',\r\n fontWeight: 'bold',\r\n fontSize: '12px',\r\n fontFamily: 'Trebuchet MS, Verdana, sans-serif'\r\n }\r\n }\r\n },\r\n tooltip: {\r\n backgroundColor: 'rgba(0, 0, 0, 0.75)',\r\n style: {\r\n color: '#F0F0F0'\r\n }\r\n },\r\n plotOptions: {\r\n line: {\r\n dataLabels: {\r\n color: '#CCC'\r\n },\r\n marker: {\r\n lineColor: '#333'\r\n }\r\n },\r\n spline: {\r\n marker: {\r\n lineColor: '#333'\r\n }\r\n },\r\n scatter: {\r\n marker: {\r\n lineColor: '#333'\r\n }\r\n },\r\n candlestick: {\r\n lineColor: 'white'\r\n }\r\n },\r\n legend: {\r\n backgroundColor: 'rgba(0, 0, 0, 0.5)',\r\n itemStyle: {\r\n font: '9pt Trebuchet MS, Verdana, sans-serif',\r\n color: '#A0A0A0'\r\n },\r\n itemHoverStyle: {\r\n color: '#FFF'\r\n },\r\n itemHiddenStyle: {\r\n color: '#444'\r\n },\r\n title: {\r\n style: {\r\n color: '#C0C0C0'\r\n }\r\n }\r\n },\r\n credits: {\r\n style: {\r\n color: '#666'\r\n }\r\n },\r\n labels: {\r\n style: {\r\n color: '#CCC'\r\n }\r\n },\r\n navigation: {\r\n buttonOptions: {\r\n symbolStroke: '#DDDDDD',\r\n theme: {\r\n fill: {\r\n linearGradient: { x1: 0, y1: 0, x2: 0, y2: 1 },\r\n stops: [\r\n [0.4, '#606060'],\r\n [0.6, '#333333']\r\n ]\r\n },\r\n stroke: '#000000'\r\n }\r\n }\r\n },\r\n // scroll charts\r\n rangeSelector: {\r\n buttonTheme: {\r\n fill: {\r\n linearGradient: { x1: 0, y1: 0, x2: 0, y2: 1 },\r\n stops: [\r\n [0.4, '#888'],\r\n [0.6, '#555']\r\n ]\r\n },\r\n stroke: '#000000',\r\n style: {\r\n color: '#CCC',\r\n fontWeight: 'bold'\r\n },\r\n states: {\r\n hover: {\r\n fill: {\r\n linearGradient: { x1: 0, y1: 0, x2: 0, y2: 1 },\r\n stops: [\r\n [0.4, '#BBB'],\r\n [0.6, '#888']\r\n ]\r\n },\r\n stroke: '#000000',\r\n style: {\r\n color: 'white'\r\n }\r\n },\r\n select: {\r\n fill: {\r\n linearGradient: { x1: 0, y1: 0, x2: 0, y2: 1 },\r\n stops: [\r\n [0.1, '#000'],\r\n [0.3, '#333']\r\n ]\r\n },\r\n stroke: '#000000',\r\n style: {\r\n color: 'yellow'\r\n }\r\n }\r\n }\r\n },\r\n inputStyle: {\r\n backgroundColor: '#333',\r\n color: 'silver'\r\n },\r\n labelStyle: {\r\n color: 'silver'\r\n }\r\n },\r\n navigator: {\r\n handles: {\r\n backgroundColor: '#666',\r\n borderColor: '#AAA'\r\n },\r\n outlineColor: '#CCC',\r\n maskFill: 'rgba(16, 16, 16, 0.5)',\r\n series: {\r\n color: '#7798BF',\r\n lineColor: '#A6C7ED'\r\n }\r\n },\r\n scrollbar: {\r\n barBackgroundColor: {\r\n linearGradient: { x1: 0, y1: 0, x2: 0, y2: 1 },\r\n stops: [\r\n [0.4, '#888'],\r\n [0.6, '#555']\r\n ]\r\n },\r\n barBorderColor: '#CCC',\r\n buttonArrowColor: '#CCC',\r\n buttonBackgroundColor: {\r\n linearGradient: { x1: 0, y1: 0, x2: 0, y2: 1 },\r\n stops: [\r\n [0.4, '#888'],\r\n [0.6, '#555']\r\n ]\r\n },\r\n buttonBorderColor: '#CCC',\r\n rifleColor: '#FFF',\r\n trackBackgroundColor: {\r\n linearGradient: { x1: 0, y1: 0, x2: 0, y2: 1 },\r\n stops: [\r\n [0, '#000'],\r\n [1, '#333']\r\n ]\r\n },\r\n trackBorderColor: '#666'\r\n }\r\n};\r\nexport const DarkUnicaTheme = {\r\n colors: [\r\n '#2b908f', '#90ee7e', '#f45b5b', '#7798BF', '#aaeeee', '#ff0066',\r\n '#eeaaee', '#55BF3B', '#DF5353', '#7798BF', '#aaeeee'\r\n ],\r\n chart: {\r\n backgroundColor: {\r\n linearGradient: { x1: 0, y1: 0, x2: 1, y2: 1 },\r\n stops: [\r\n [0, '#2a2a2b'],\r\n [1, '#3e3e40']\r\n ]\r\n },\r\n style: {\r\n fontFamily: '\\'Unica One\\', sans-serif'\r\n },\r\n plotBorderColor: '#606063'\r\n },\r\n title: {\r\n style: {\r\n color: '#E0E0E3',\r\n textTransform: 'uppercase',\r\n fontSize: '20px'\r\n }\r\n },\r\n subtitle: {\r\n style: {\r\n color: '#E0E0E3',\r\n textTransform: 'uppercase'\r\n }\r\n },\r\n xAxis: {\r\n gridLineColor: '#707073',\r\n labels: {\r\n style: {\r\n color: '#E0E0E3'\r\n }\r\n },\r\n lineColor: '#707073',\r\n minorGridLineColor: '#505053',\r\n tickColor: '#707073',\r\n title: {\r\n style: {\r\n color: '#A0A0A3'\r\n }\r\n }\r\n },\r\n yAxis: {\r\n gridLineColor: '#707073',\r\n labels: {\r\n style: {\r\n color: '#E0E0E3'\r\n }\r\n },\r\n lineColor: '#707073',\r\n minorGridLineColor: '#505053',\r\n tickColor: '#707073',\r\n tickWidth: 1,\r\n title: {\r\n style: {\r\n color: '#A0A0A3'\r\n }\r\n }\r\n },\r\n tooltip: {\r\n backgroundColor: 'rgba(0, 0, 0, 0.85)',\r\n style: {\r\n color: '#F0F0F0'\r\n }\r\n },\r\n plotOptions: {\r\n series: {\r\n dataLabels: {\r\n color: '#F0F0F3',\r\n style: {\r\n fontSize: '13px'\r\n }\r\n },\r\n marker: {\r\n lineColor: '#333'\r\n }\r\n },\r\n boxplot: {\r\n fillColor: '#505053'\r\n },\r\n candlestick: {\r\n lineColor: 'white'\r\n },\r\n errorbar: {\r\n color: 'white'\r\n }\r\n },\r\n legend: {\r\n backgroundColor: 'rgba(0, 0, 0, 0.5)',\r\n itemStyle: {\r\n color: '#E0E0E3'\r\n },\r\n itemHoverStyle: {\r\n color: '#FFF'\r\n },\r\n itemHiddenStyle: {\r\n color: '#606063'\r\n },\r\n title: {\r\n style: {\r\n color: '#C0C0C0'\r\n }\r\n }\r\n },\r\n credits: {\r\n style: {\r\n color: '#666'\r\n }\r\n },\r\n labels: {\r\n style: {\r\n color: '#707073'\r\n }\r\n },\r\n drilldown: {\r\n activeAxisLabelStyle: {\r\n color: '#F0F0F3'\r\n },\r\n activeDataLabelStyle: {\r\n color: '#F0F0F3'\r\n }\r\n },\r\n navigation: {\r\n buttonOptions: {\r\n symbolStroke: '#DDDDDD',\r\n theme: {\r\n fill: '#505053'\r\n }\r\n }\r\n },\r\n // scroll charts\r\n rangeSelector: {\r\n buttonTheme: {\r\n fill: '#505053',\r\n stroke: '#000000',\r\n style: {\r\n color: '#CCC'\r\n },\r\n states: {\r\n hover: {\r\n fill: '#707073',\r\n stroke: '#000000',\r\n style: {\r\n color: 'white'\r\n }\r\n },\r\n select: {\r\n fill: '#000003',\r\n stroke: '#000000',\r\n style: {\r\n color: 'white'\r\n }\r\n }\r\n }\r\n },\r\n inputBoxBorderColor: '#505053',\r\n inputStyle: {\r\n backgroundColor: '#333',\r\n color: 'silver'\r\n },\r\n labelStyle: {\r\n color: 'silver'\r\n }\r\n },\r\n navigator: {\r\n handles: {\r\n backgroundColor: '#666',\r\n borderColor: '#AAA'\r\n },\r\n outlineColor: '#CCC',\r\n maskFill: 'rgba(255,255,255,0.1)',\r\n series: {\r\n color: '#7798BF',\r\n lineColor: '#A6C7ED'\r\n },\r\n xAxis: {\r\n gridLineColor: '#505053'\r\n }\r\n },\r\n scrollbar: {\r\n barBackgroundColor: '#808083',\r\n barBorderColor: '#808083',\r\n buttonArrowColor: '#CCC',\r\n buttonBackgroundColor: '#606063',\r\n buttonBorderColor: '#606063',\r\n rifleColor: '#FFF',\r\n trackBackgroundColor: '#404043',\r\n trackBorderColor: '#404043'\r\n }\r\n};\r\nexport const GrayTheme = {\r\n colors: ['#DDDF0D', '#7798BF', '#55BF3B', '#DF5353', '#aaeeee',\r\n '#ff0066', '#eeaaee', '#55BF3B', '#DF5353', '#7798BF', '#aaeeee'],\r\n chart: {\r\n backgroundColor: {\r\n linearGradient: { x1: 0, y1: 0, x2: 0, y2: 1 },\r\n stops: [\r\n [0, 'rgb(96, 96, 96)'],\r\n [1, 'rgb(16, 16, 16)']\r\n ]\r\n },\r\n borderWidth: 0,\r\n borderRadius: 0,\r\n plotBackgroundColor: null,\r\n plotShadow: false,\r\n plotBorderWidth: 0\r\n },\r\n title: {\r\n style: {\r\n color: '#FFF',\r\n font: '16px Lucida Grande, Lucida Sans Unicode,' +\r\n ' Verdana, Arial, Helvetica, sans-serif'\r\n }\r\n },\r\n subtitle: {\r\n style: {\r\n color: '#DDD',\r\n font: '12px Lucida Grande, Lucida Sans Unicode,' +\r\n ' Verdana, Arial, Helvetica, sans-serif'\r\n }\r\n },\r\n xAxis: {\r\n gridLineWidth: 0,\r\n lineColor: '#999',\r\n tickColor: '#999',\r\n labels: {\r\n style: {\r\n color: '#999',\r\n fontWeight: 'bold'\r\n }\r\n },\r\n title: {\r\n style: {\r\n color: '#AAA',\r\n font: 'bold 12px Lucida Grande, Lucida Sans Unicode,' +\r\n ' Verdana, Arial, Helvetica, sans-serif'\r\n }\r\n }\r\n },\r\n yAxis: {\r\n alternateGridColor: null,\r\n minorTickInterval: null,\r\n gridLineColor: 'rgba(255, 255, 255, .1)',\r\n minorGridLineColor: 'rgba(255,255,255,0.07)',\r\n lineWidth: 0,\r\n tickWidth: 0,\r\n labels: {\r\n style: {\r\n color: '#999',\r\n fontWeight: 'bold'\r\n }\r\n },\r\n title: {\r\n style: {\r\n color: '#AAA',\r\n font: 'bold 12px Lucida Grande, Lucida Sans Unicode,' +\r\n ' Verdana, Arial, Helvetica, sans-serif'\r\n }\r\n }\r\n },\r\n legend: {\r\n backgroundColor: 'rgba(48, 48, 48, 0.8)',\r\n itemStyle: {\r\n color: '#CCC'\r\n },\r\n itemHoverStyle: {\r\n color: '#FFF'\r\n },\r\n itemHiddenStyle: {\r\n color: '#333'\r\n },\r\n title: {\r\n style: {\r\n color: '#E0E0E0'\r\n }\r\n }\r\n },\r\n labels: {\r\n style: {\r\n color: '#CCC'\r\n }\r\n },\r\n tooltip: {\r\n backgroundColor: {\r\n linearGradient: { x1: 0, y1: 0, x2: 0, y2: 1 },\r\n stops: [\r\n [0, 'rgba(96, 96, 96, .8)'],\r\n [1, 'rgba(16, 16, 16, .8)']\r\n ]\r\n },\r\n borderWidth: 0,\r\n style: {\r\n color: '#FFF'\r\n }\r\n },\r\n plotOptions: {\r\n series: {\r\n dataLabels: {\r\n color: '#444'\r\n },\r\n nullColor: '#444444'\r\n },\r\n line: {\r\n dataLabels: {\r\n color: '#CCC'\r\n },\r\n marker: {\r\n lineColor: '#333'\r\n }\r\n },\r\n spline: {\r\n marker: {\r\n lineColor: '#333'\r\n }\r\n },\r\n scatter: {\r\n marker: {\r\n lineColor: '#333'\r\n }\r\n },\r\n candlestick: {\r\n lineColor: 'white'\r\n }\r\n },\r\n navigation: {\r\n buttonOptions: {\r\n symbolStroke: '#DDDDDD',\r\n theme: {\r\n fill: {\r\n linearGradient: { x1: 0, y1: 0, x2: 0, y2: 1 },\r\n stops: [\r\n [0.4, '#606060'],\r\n [0.6, '#333333']\r\n ]\r\n },\r\n stroke: '#000000'\r\n }\r\n }\r\n },\r\n // scroll charts\r\n rangeSelector: {\r\n buttonTheme: {\r\n fill: {\r\n linearGradient: { x1: 0, y1: 0, x2: 0, y2: 1 },\r\n stops: [\r\n [0.4, '#888'],\r\n [0.6, '#555']\r\n ]\r\n },\r\n stroke: '#000000',\r\n style: {\r\n color: '#CCC',\r\n fontWeight: 'bold'\r\n },\r\n states: {\r\n hover: {\r\n fill: {\r\n linearGradient: { x1: 0, y1: 0, x2: 0, y2: 1 },\r\n stops: [\r\n [0.4, '#BBB'],\r\n [0.6, '#888']\r\n ]\r\n },\r\n stroke: '#000000',\r\n style: {\r\n color: 'white'\r\n }\r\n },\r\n select: {\r\n fill: {\r\n linearGradient: { x1: 0, y1: 0, x2: 0, y2: 1 },\r\n stops: [\r\n [0.1, '#000'],\r\n [0.3, '#333']\r\n ]\r\n },\r\n stroke: '#000000',\r\n style: {\r\n color: 'yellow'\r\n }\r\n }\r\n }\r\n },\r\n inputStyle: {\r\n backgroundColor: '#333',\r\n color: 'silver'\r\n },\r\n labelStyle: {\r\n color: 'silver'\r\n }\r\n },\r\n navigator: {\r\n handles: {\r\n backgroundColor: '#666',\r\n borderColor: '#AAA'\r\n },\r\n outlineColor: '#CCC',\r\n maskFill: 'rgba(16, 16, 16, 0.5)',\r\n series: {\r\n color: '#7798BF',\r\n lineColor: '#A6C7ED'\r\n }\r\n },\r\n scrollbar: {\r\n barBackgroundColor: {\r\n linearGradient: { x1: 0, y1: 0, x2: 0, y2: 1 },\r\n stops: [\r\n [0.4, '#888'],\r\n [0.6, '#555']\r\n ]\r\n },\r\n barBorderColor: '#CCC',\r\n buttonArrowColor: '#CCC',\r\n buttonBackgroundColor: {\r\n linearGradient: { x1: 0, y1: 0, x2: 0, y2: 1 },\r\n stops: [\r\n [0.4, '#888'],\r\n [0.6, '#555']\r\n ]\r\n },\r\n buttonBorderColor: '#CCC',\r\n rifleColor: '#FFF',\r\n trackBackgroundColor: {\r\n linearGradient: { x1: 0, y1: 0, x2: 0, y2: 1 },\r\n stops: [\r\n [0, '#000'],\r\n [1, '#333']\r\n ]\r\n },\r\n trackBorderColor: '#666'\r\n }\r\n};\r\nexport const GridLightTheme = {\r\n colors: [\r\n '#7cb5ec', '#f7a35c', '#90ee7e', '#7798BF', '#aaeeee', '#ff0066',\r\n '#eeaaee', '#55BF3B', '#DF5353', '#7798BF', '#aaeeee'\r\n ],\r\n chart: {\r\n backgroundColor: null,\r\n style: {\r\n fontFamily: 'Dosis, sans-serif'\r\n }\r\n },\r\n title: {\r\n style: {\r\n fontSize: '16px',\r\n fontWeight: 'bold',\r\n textTransform: 'uppercase'\r\n }\r\n },\r\n tooltip: {\r\n borderWidth: 0,\r\n backgroundColor: 'rgba(219,219,216,0.8)',\r\n shadow: false\r\n },\r\n legend: {\r\n backgroundColor: '#F0F0EA',\r\n itemStyle: {\r\n fontWeight: 'bold',\r\n fontSize: '13px'\r\n }\r\n },\r\n xAxis: {\r\n gridLineWidth: 1,\r\n labels: {\r\n style: {\r\n fontSize: '12px'\r\n }\r\n }\r\n },\r\n yAxis: {\r\n minorTickInterval: 'auto',\r\n title: {\r\n style: {\r\n textTransform: 'uppercase'\r\n }\r\n },\r\n labels: {\r\n style: {\r\n fontSize: '12px'\r\n }\r\n }\r\n },\r\n plotOptions: {\r\n candlestick: {\r\n lineColor: '#404048'\r\n }\r\n }\r\n};\r\nexport const GridTheme = {\r\n colors: [\r\n '#058DC7', '#50B432', '#ED561B', '#DDDF00', '#24CBE5', '#64E572',\r\n '#FF9655', '#FFF263', '#6AF9C4'\r\n ],\r\n chart: {\r\n backgroundColor: {\r\n linearGradient: { x1: 0, y1: 0, x2: 1, y2: 1 },\r\n stops: [\r\n [0, 'rgb(255, 255, 255)'],\r\n [1, 'rgb(240, 240, 255)']\r\n ]\r\n },\r\n borderWidth: 2,\r\n plotBackgroundColor: 'rgba(255, 255, 255, .9)',\r\n plotShadow: true,\r\n plotBorderWidth: 1\r\n },\r\n title: {\r\n style: {\r\n color: '#000',\r\n font: 'bold 16px \"Trebuchet MS\", Verdana, sans-serif'\r\n }\r\n },\r\n subtitle: {\r\n style: {\r\n color: '#666666',\r\n font: 'bold 12px \"Trebuchet MS\", Verdana, sans-serif'\r\n }\r\n },\r\n xAxis: {\r\n gridLineWidth: 1,\r\n lineColor: '#000',\r\n tickColor: '#000',\r\n labels: {\r\n style: {\r\n color: '#000',\r\n font: '11px Trebuchet MS, Verdana, sans-serif'\r\n }\r\n },\r\n title: {\r\n style: {\r\n color: '#333',\r\n fontWeight: 'bold',\r\n fontSize: '12px',\r\n fontFamily: 'Trebuchet MS, Verdana, sans-serif'\r\n }\r\n }\r\n },\r\n yAxis: {\r\n minorTickInterval: 'auto',\r\n lineColor: '#000',\r\n lineWidth: 1,\r\n tickWidth: 1,\r\n tickColor: '#000',\r\n labels: {\r\n style: {\r\n color: '#000',\r\n font: '11px Trebuchet MS, Verdana, sans-serif'\r\n }\r\n },\r\n title: {\r\n style: {\r\n color: '#333',\r\n fontWeight: 'bold',\r\n fontSize: '12px',\r\n fontFamily: 'Trebuchet MS, Verdana, sans-serif'\r\n }\r\n }\r\n },\r\n legend: {\r\n itemStyle: {\r\n font: '9pt Trebuchet MS, Verdana, sans-serif',\r\n color: 'black'\r\n },\r\n itemHoverStyle: {\r\n color: '#039'\r\n },\r\n itemHiddenStyle: {\r\n color: 'gray'\r\n }\r\n },\r\n labels: {\r\n style: {\r\n color: '#99b'\r\n }\r\n },\r\n navigation: {\r\n buttonOptions: {\r\n theme: {\r\n stroke: '#CCCCCC'\r\n }\r\n }\r\n }\r\n};\r\nexport const HighContrastDarkTheme = {\r\n colors: [\r\n '#a6f0ff',\r\n '#70d49e',\r\n '#e898a5',\r\n '#007faa',\r\n '#f9db72',\r\n '#f45b5b',\r\n '#1e824c',\r\n '#e7934c',\r\n '#dadfe1',\r\n '#a0618b'\r\n ],\r\n chart: {\r\n backgroundColor: '#1f1f20',\r\n plotBorderColor: '#606063'\r\n },\r\n title: {\r\n style: {\r\n color: textBright\r\n }\r\n },\r\n subtitle: {\r\n style: {\r\n color: textBright\r\n }\r\n },\r\n xAxis: {\r\n gridLineColor: '#707073',\r\n labels: {\r\n style: {\r\n color: textBright\r\n }\r\n },\r\n lineColor: '#707073',\r\n minorGridLineColor: '#505053',\r\n tickColor: '#707073',\r\n title: {\r\n style: {\r\n color: textBright\r\n }\r\n }\r\n },\r\n yAxis: {\r\n gridLineColor: '#707073',\r\n labels: {\r\n style: {\r\n color: textBright\r\n }\r\n },\r\n lineColor: '#707073',\r\n minorGridLineColor: '#505053',\r\n tickColor: '#707073',\r\n title: {\r\n style: {\r\n color: textBright\r\n }\r\n }\r\n },\r\n tooltip: {\r\n backgroundColor: 'rgba(0, 0, 0, 0.85)',\r\n style: {\r\n color: textBright\r\n }\r\n },\r\n plotOptions: {\r\n series: {\r\n dataLabels: {\r\n color: textBright\r\n },\r\n marker: {\r\n lineColor: '#333'\r\n }\r\n },\r\n boxplot: {\r\n fillColor: '#505053'\r\n },\r\n candlestick: {\r\n lineColor: 'white'\r\n },\r\n errorbar: {\r\n color: 'white'\r\n },\r\n map: {\r\n nullColor: '#353535'\r\n }\r\n },\r\n legend: {\r\n backgroundColor: 'transparent',\r\n itemStyle: {\r\n color: textBright\r\n },\r\n itemHoverStyle: {\r\n color: '#FFF'\r\n },\r\n itemHiddenStyle: {\r\n color: '#606063'\r\n },\r\n title: {\r\n style: {\r\n color: '#D0D0D0'\r\n }\r\n }\r\n },\r\n credits: {\r\n style: {\r\n color: textBright\r\n }\r\n },\r\n labels: {\r\n style: {\r\n color: '#707073'\r\n }\r\n },\r\n drilldown: {\r\n activeAxisLabelStyle: {\r\n color: textBright\r\n },\r\n activeDataLabelStyle: {\r\n color: textBright\r\n }\r\n },\r\n navigation: {\r\n buttonOptions: {\r\n symbolStroke: '#DDDDDD',\r\n theme: {\r\n fill: '#505053'\r\n }\r\n }\r\n },\r\n rangeSelector: {\r\n buttonTheme: {\r\n fill: '#505053',\r\n stroke: '#000000',\r\n style: {\r\n color: '#eee'\r\n },\r\n states: {\r\n hover: {\r\n fill: '#707073',\r\n stroke: '#000000',\r\n style: {\r\n color: textBright\r\n }\r\n },\r\n select: {\r\n fill: '#303030',\r\n stroke: '#101010',\r\n style: {\r\n color: textBright\r\n }\r\n }\r\n }\r\n },\r\n inputBoxBorderColor: '#505053',\r\n inputStyle: {\r\n backgroundColor: '#333',\r\n color: textBright\r\n },\r\n labelStyle: {\r\n color: textBright\r\n }\r\n },\r\n navigator: {\r\n handles: {\r\n backgroundColor: '#666',\r\n borderColor: '#AAA'\r\n },\r\n outlineColor: '#CCC',\r\n maskFill: 'rgba(180,180,255,0.2)',\r\n series: {\r\n color: '#7798BF',\r\n lineColor: '#A6C7ED'\r\n },\r\n xAxis: {\r\n gridLineColor: '#505053'\r\n }\r\n },\r\n scrollbar: {\r\n barBackgroundColor: '#808083',\r\n barBorderColor: '#808083',\r\n buttonArrowColor: '#CCC',\r\n buttonBackgroundColor: '#606063',\r\n buttonBorderColor: '#606063',\r\n rifleColor: '#FFF',\r\n trackBackgroundColor: '#404043',\r\n trackBorderColor: '#404043'\r\n }\r\n};\r\nexport const HighContrastLightTheme = {\r\n colors: [\r\n '#5f98cf',\r\n '#434348',\r\n '#49a65e',\r\n '#f45b5b',\r\n '#708090',\r\n '#b68c51',\r\n '#397550',\r\n '#c0493d',\r\n '#4f4a7a',\r\n '#b381b3'\r\n ],\r\n navigator: {\r\n series: {\r\n color: '#5f98cf',\r\n lineColor: '#5f98cf'\r\n }\r\n }\r\n};\r\nexport const SandSignikaTheme = {\r\n colors: ['#f45b5b', '#8085e9', '#8d4654', '#7798BF', '#aaeeee',\r\n '#ff0066', '#eeaaee', '#55BF3B', '#DF5353', '#7798BF', '#aaeeee'],\r\n chart: {\r\n backgroundColor: null,\r\n style: {\r\n fontFamily: 'Signika, serif'\r\n }\r\n },\r\n title: {\r\n style: {\r\n color: 'black',\r\n fontSize: '16px',\r\n fontWeight: 'bold'\r\n }\r\n },\r\n subtitle: {\r\n style: {\r\n color: 'black'\r\n }\r\n },\r\n tooltip: {\r\n borderWidth: 0\r\n },\r\n labels: {\r\n style: {\r\n color: '#6e6e70'\r\n }\r\n },\r\n legend: {\r\n backgroundColor: '#E0E0E8',\r\n itemStyle: {\r\n fontWeight: 'bold',\r\n fontSize: '13px'\r\n }\r\n },\r\n xAxis: {\r\n labels: {\r\n style: {\r\n color: '#6e6e70'\r\n }\r\n }\r\n },\r\n yAxis: {\r\n labels: {\r\n style: {\r\n color: '#6e6e70'\r\n }\r\n }\r\n },\r\n plotOptions: {\r\n series: {\r\n shadow: true\r\n },\r\n candlestick: {\r\n lineColor: '#404048'\r\n },\r\n map: {\r\n shadow: false\r\n }\r\n },\r\n // Highcharts Stock specific\r\n navigator: {\r\n xAxis: {\r\n gridLineColor: '#D0D0D8'\r\n }\r\n },\r\n rangeSelector: {\r\n buttonTheme: {\r\n fill: 'white',\r\n stroke: '#C0C0C8',\r\n 'stroke-width': 1,\r\n states: {\r\n select: {\r\n fill: '#D0D0D8'\r\n }\r\n }\r\n }\r\n },\r\n scrollbar: {\r\n trackBorderColor: '#C0C0C8'\r\n }\r\n};\r\nexport const SkiesTheme = {\r\n colors: ['#514F78', '#42A07B', '#9B5E4A', '#72727F', '#1F949A',\r\n '#82914E', '#86777F', '#42A07B'],\r\n chart: {\r\n className: 'skies',\r\n borderWidth: 0,\r\n plotShadow: true,\r\n plotBackgroundImage: 'https://www.highcharts.com/samples/graphics/skies.jpg',\r\n plotBackgroundColor: {\r\n linearGradient: { x1: 0, y1: 0, x2: 1, y2: 1 },\r\n stops: [\r\n [0, 'rgba(255, 255, 255, 1)'],\r\n [1, 'rgba(255, 255, 255, 0)']\r\n ]\r\n },\r\n plotBorderWidth: 1\r\n },\r\n title: {\r\n style: {\r\n color: '#3E576F',\r\n font: '16px Lucida Grande, Lucida Sans Unicode,' +\r\n ' Verdana, Arial, Helvetica, sans-serif'\r\n }\r\n },\r\n subtitle: {\r\n style: {\r\n color: '#6D869F',\r\n font: '12px Lucida Grande, Lucida Sans Unicode,' +\r\n ' Verdana, Arial, Helvetica, sans-serif'\r\n }\r\n },\r\n xAxis: {\r\n gridLineWidth: 0,\r\n lineColor: '#C0D0E0',\r\n tickColor: '#C0D0E0',\r\n labels: {\r\n style: {\r\n color: '#666',\r\n fontWeight: 'bold'\r\n }\r\n },\r\n title: {\r\n style: {\r\n color: '#666',\r\n font: '12px Lucida Grande, Lucida Sans Unicode,' +\r\n ' Verdana, Arial, Helvetica, sans-serif'\r\n }\r\n }\r\n },\r\n yAxis: {\r\n alternateGridColor: 'rgba(255, 255, 255, .5)',\r\n lineColor: '#C0D0E0',\r\n tickColor: '#C0D0E0',\r\n tickWidth: 1,\r\n labels: {\r\n style: {\r\n color: '#666',\r\n fontWeight: 'bold'\r\n }\r\n },\r\n title: {\r\n style: {\r\n color: '#666',\r\n font: '12px Lucida Grande, Lucida Sans Unicode,' +\r\n ' Verdana, Arial, Helvetica, sans-serif'\r\n }\r\n }\r\n },\r\n legend: {\r\n itemStyle: {\r\n font: '9pt Trebuchet MS, Verdana, sans-serif',\r\n color: '#3E576F'\r\n },\r\n itemHoverStyle: {\r\n color: 'black'\r\n },\r\n itemHiddenStyle: {\r\n color: 'silver'\r\n }\r\n },\r\n labels: {\r\n style: {\r\n color: '#3E576F'\r\n }\r\n }\r\n};\r\nexport const SunsetTheme = {\r\n colors: ['#FDD089', '#FF7F79', '#A0446E', '#251535'],\r\n colorAxis: {\r\n maxColor: '#60042E',\r\n minColor: '#FDD089'\r\n },\r\n plotOptions: {\r\n map: {\r\n nullColor: '#fefefc'\r\n }\r\n },\r\n navigator: {\r\n series: {\r\n color: '#FF7F79',\r\n lineColor: '#A0446E'\r\n }\r\n }\r\n};","import React from 'react'\r\nimport HighchartsReact from 'highcharts-react-official'\r\nimport Highcharts from 'highcharts/highstock'\r\nimport Highcharts3D from 'highcharts/highcharts-3d'\r\nimport IndicatorsAll from 'highcharts/indicators/indicators-all'\r\n\r\nimport 'highcharts/css/stocktools/gui.scss'\r\nimport 'highcharts/css/annotations/popup.scss'\r\n\r\nimport StockData from 'highcharts/modules/data'\r\nimport HighchartAccessibility from 'highcharts/modules/accessibility'\r\nimport HighchartsExporting from 'highcharts/modules/exporting';\r\nimport HighchartsExportData from 'highcharts/modules/export-data';\r\nimport DragPane from 'highcharts/modules/drag-panes'\r\nimport AnnotationsAdvanced from 'highcharts/modules/annotations-advanced'\r\nimport PriceIndicator from 'highcharts/modules/price-indicator'\r\nimport FullScreen from 'highcharts/modules/full-screen'\r\nimport StockTools from 'highcharts/modules/stock-tools'\r\nimport Heikinashi from 'highcharts/modules/heikinashi'\r\nimport HollowCandlestick from 'highcharts/modules/hollowcandlestick'\r\nimport HistogramBellCurve from 'highcharts/modules/histogram-bellcurve'\r\nimport Gantt from 'highcharts/modules/gantt'\r\n\r\nimport HighchartsMore from 'highcharts/highcharts-more';\r\nimport { AvocadoTheme } from './ThemeOpts'\r\nimport { theme as DefaultOpts } from './DefaultOpts'\r\n\r\n// Highcharts3D(Highcharts)\r\nStockData(Highcharts)\r\nDragPane(Highcharts)\r\nIndicatorsAll(Highcharts)\r\nStockTools(Highcharts)\r\nAnnotationsAdvanced(Highcharts)\r\nPriceIndicator(Highcharts)\r\nFullScreen(Highcharts)\r\nHighchartAccessibility(Highcharts)\r\n\r\nHeikinashi(Highcharts)\r\nHollowCandlestick(Highcharts)\r\nGantt(Highcharts)\r\nHistogramBellCurve(Highcharts)\r\n\r\nHighchartsMore(Highcharts);\r\nHighchartsExporting(Highcharts);\r\nHighchartsExportData(Highcharts);\r\n\r\nconst HighChartWrapper = ({options, constructorType}) => {\r\n Highcharts.theme = {...DefaultOpts, ...AvocadoTheme}\r\n Highcharts.setOptions(Highcharts.theme)\r\n return(\r\n \r\n );\r\n}\r\n\r\nexport default HighChartWrapper;","import React from 'react'\r\nimport HighchartsReact from 'highcharts-react-official'\r\nimport Highcharts from 'highcharts/highstock'\r\nimport Highcharts3D from 'highcharts/highcharts-3d'\r\nimport IndicatorsAll from 'highcharts/indicators/indicators-all'\r\n\r\nimport 'highcharts/css/stocktools/gui.scss'\r\nimport 'highcharts/css/annotations/popup.scss'\r\n\r\nimport StockData from 'highcharts/modules/data'\r\nimport HighchartAccessibility from 'highcharts/modules/accessibility'\r\nimport HighchartsExporting from 'highcharts/modules/exporting';\r\nimport HighchartsExportData from 'highcharts/modules/export-data';\r\nimport DragPane from 'highcharts/modules/drag-panes'\r\nimport AnnotationsAdvanced from 'highcharts/modules/annotations-advanced'\r\nimport PriceIndicator from 'highcharts/modules/price-indicator'\r\nimport FullScreen from 'highcharts/modules/full-screen'\r\nimport StockTools from 'highcharts/modules/stock-tools'\r\nimport Heikinashi from 'highcharts/modules/heikinashi'\r\nimport HollowCandlestick from 'highcharts/modules/hollowcandlestick'\r\nimport HistogramBellCurve from 'highcharts/modules/histogram-bellcurve'\r\nimport Gantt from 'highcharts/modules/gantt'\r\n\r\nimport HighchartsMore from 'highcharts/highcharts-more';\r\nimport { theme as DefaultOpts } from './DefaultOpts'\r\nimport { BrandDarkTheme } from './ThemeOpts'\r\n\r\n// Highcharts3D(Highcharts)\r\nStockData(Highcharts)\r\nDragPane(Highcharts)\r\nIndicatorsAll(Highcharts)\r\nStockTools(Highcharts)\r\nAnnotationsAdvanced(Highcharts)\r\nPriceIndicator(Highcharts)\r\nFullScreen(Highcharts)\r\nHighchartAccessibility(Highcharts)\r\n\r\nHeikinashi(Highcharts)\r\nHollowCandlestick(Highcharts)\r\nGantt(Highcharts)\r\nHistogramBellCurve(Highcharts)\r\n\r\nHighchartsMore(Highcharts);\r\nHighchartsExporting(Highcharts);\r\nHighchartsExportData(Highcharts);\r\n\r\nconst HighChartWrapper = ({options, constructorType, themeModule, themeName}) => {\r\n Highcharts.theme = {...DefaultOpts, ...BrandDarkTheme}\r\n Highcharts.setOptions(Highcharts.theme)\r\n\r\n return(\r\n \r\n );\r\n}\r\n\r\nexport default HighChartWrapper;","import React from 'react'\r\nimport HighchartsReact from 'highcharts-react-official'\r\nimport Highcharts from 'highcharts/highstock'\r\nimport Highcharts3D from 'highcharts/highcharts-3d'\r\nimport IndicatorsAll from 'highcharts/indicators/indicators-all'\r\n\r\nimport 'highcharts/css/stocktools/gui.scss'\r\nimport 'highcharts/css/annotations/popup.scss'\r\n\r\nimport StockData from 'highcharts/modules/data'\r\nimport HighchartAccessibility from 'highcharts/modules/accessibility'\r\nimport HighchartsExporting from 'highcharts/modules/exporting';\r\nimport HighchartsExportData from 'highcharts/modules/export-data';\r\nimport DragPane from 'highcharts/modules/drag-panes'\r\nimport AnnotationsAdvanced from 'highcharts/modules/annotations-advanced'\r\nimport PriceIndicator from 'highcharts/modules/price-indicator'\r\nimport FullScreen from 'highcharts/modules/full-screen'\r\nimport StockTools from 'highcharts/modules/stock-tools'\r\nimport Heikinashi from 'highcharts/modules/heikinashi'\r\nimport HollowCandlestick from 'highcharts/modules/hollowcandlestick'\r\nimport HistogramBellCurve from 'highcharts/modules/histogram-bellcurve'\r\nimport Gantt from 'highcharts/modules/gantt'\r\n\r\nimport HighchartsMore from 'highcharts/highcharts-more';\r\nimport { theme as DefaultOpts } from './DefaultOpts'\r\nimport { BrandLightTheme } from './ThemeOpts'\r\n\r\n// Highcharts3D(Highcharts)\r\nStockData(Highcharts)\r\nDragPane(Highcharts)\r\nIndicatorsAll(Highcharts)\r\nStockTools(Highcharts)\r\nAnnotationsAdvanced(Highcharts)\r\nPriceIndicator(Highcharts)\r\nFullScreen(Highcharts)\r\nHighchartAccessibility(Highcharts)\r\n\r\nHeikinashi(Highcharts)\r\nHollowCandlestick(Highcharts)\r\nGantt(Highcharts)\r\nHistogramBellCurve(Highcharts)\r\n\r\nHighchartsMore(Highcharts);\r\nHighchartsExporting(Highcharts);\r\nHighchartsExportData(Highcharts);\r\n\r\nconst HighChartWrapper = ({options, constructorType, themeModule, themeName}) => {\r\n Highcharts.theme = {...DefaultOpts, ...BrandLightTheme}\r\n Highcharts.setOptions(Highcharts.theme)\r\n\r\n return(\r\n \r\n );\r\n}\r\n\r\nexport default HighChartWrapper;","import React from 'react'\r\nimport HighchartsReact from 'highcharts-react-official'\r\nimport Highcharts from 'highcharts/highstock'\r\nimport Highcharts3D from 'highcharts/highcharts-3d'\r\nimport IndicatorsAll from 'highcharts/indicators/indicators-all'\r\n\r\nimport 'highcharts/css/stocktools/gui.scss'\r\nimport 'highcharts/css/annotations/popup.scss'\r\n\r\nimport StockData from 'highcharts/modules/data'\r\nimport HighchartAccessibility from 'highcharts/modules/accessibility'\r\nimport HighchartsExporting from 'highcharts/modules/exporting';\r\nimport HighchartsExportData from 'highcharts/modules/export-data';\r\nimport DragPane from 'highcharts/modules/drag-panes'\r\nimport AnnotationsAdvanced from 'highcharts/modules/annotations-advanced'\r\nimport PriceIndicator from 'highcharts/modules/price-indicator'\r\nimport FullScreen from 'highcharts/modules/full-screen'\r\nimport StockTools from 'highcharts/modules/stock-tools'\r\nimport Heikinashi from 'highcharts/modules/heikinashi'\r\nimport HollowCandlestick from 'highcharts/modules/hollowcandlestick'\r\nimport HistogramBellCurve from 'highcharts/modules/histogram-bellcurve'\r\nimport Gantt from 'highcharts/modules/gantt'\r\n\r\nimport HighchartsMore from 'highcharts/highcharts-more';\r\nimport { theme as DefaultOpts } from './DefaultOpts'\r\nimport { DarkBlueTheme } from './ThemeOpts'\r\n\r\n// Highcharts3D(Highcharts)\r\nStockData(Highcharts)\r\nDragPane(Highcharts)\r\nIndicatorsAll(Highcharts)\r\nStockTools(Highcharts)\r\nAnnotationsAdvanced(Highcharts)\r\nPriceIndicator(Highcharts)\r\nFullScreen(Highcharts)\r\nHighchartAccessibility(Highcharts)\r\n\r\nHeikinashi(Highcharts)\r\nHollowCandlestick(Highcharts)\r\nGantt(Highcharts)\r\nHistogramBellCurve(Highcharts)\r\n\r\nHighchartsMore(Highcharts);\r\nHighchartsExporting(Highcharts);\r\nHighchartsExportData(Highcharts);\r\n\r\nconst HighChartWrapper = ({options, constructorType, themeModule, themeName}) => {\r\n Highcharts.theme = {...DefaultOpts, ...DarkBlueTheme}\r\n Highcharts.setOptions(Highcharts.theme)\r\n\r\n return(\r\n \r\n );\r\n}\r\n\r\nexport default HighChartWrapper;","import React from 'react'\r\nimport HighchartsReact from 'highcharts-react-official'\r\nimport Highcharts from 'highcharts/highstock'\r\nimport Highcharts3D from 'highcharts/highcharts-3d'\r\nimport IndicatorsAll from 'highcharts/indicators/indicators-all'\r\n\r\nimport 'highcharts/css/stocktools/gui.scss'\r\nimport 'highcharts/css/annotations/popup.scss'\r\n\r\nimport StockData from 'highcharts/modules/data'\r\nimport HighchartAccessibility from 'highcharts/modules/accessibility'\r\nimport HighchartsExporting from 'highcharts/modules/exporting';\r\nimport HighchartsExportData from 'highcharts/modules/export-data';\r\nimport DragPane from 'highcharts/modules/drag-panes'\r\nimport AnnotationsAdvanced from 'highcharts/modules/annotations-advanced'\r\nimport PriceIndicator from 'highcharts/modules/price-indicator'\r\nimport FullScreen from 'highcharts/modules/full-screen'\r\nimport StockTools from 'highcharts/modules/stock-tools'\r\nimport Heikinashi from 'highcharts/modules/heikinashi'\r\nimport HollowCandlestick from 'highcharts/modules/hollowcandlestick'\r\nimport HistogramBellCurve from 'highcharts/modules/histogram-bellcurve'\r\nimport Gantt from 'highcharts/modules/gantt'\r\n\r\nimport HighchartsMore from 'highcharts/highcharts-more';\r\nimport { theme as DefaultOpts } from './DefaultOpts'\r\nimport { DarkGreenTheme } from './ThemeOpts'\r\n\r\n// Highcharts3D(Highcharts)\r\nStockData(Highcharts)\r\nDragPane(Highcharts)\r\nIndicatorsAll(Highcharts)\r\nStockTools(Highcharts)\r\nAnnotationsAdvanced(Highcharts)\r\nPriceIndicator(Highcharts)\r\nFullScreen(Highcharts)\r\nHighchartAccessibility(Highcharts)\r\n\r\nHeikinashi(Highcharts)\r\nHollowCandlestick(Highcharts)\r\nGantt(Highcharts)\r\nHistogramBellCurve(Highcharts)\r\n\r\nHighchartsMore(Highcharts);\r\nHighchartsExporting(Highcharts);\r\nHighchartsExportData(Highcharts);\r\n\r\nconst HighChartWrapper = ({options, constructorType, themeModule, themeName}) => {\r\n Highcharts.theme = {...DefaultOpts, ...DarkGreenTheme}\r\n Highcharts.setOptions(Highcharts.theme)\r\n\r\n return(\r\n \r\n );\r\n}\r\n\r\nexport default HighChartWrapper;","import React from 'react'\r\nimport HighchartsReact from 'highcharts-react-official'\r\nimport Highcharts from 'highcharts/highstock'\r\nimport Highcharts3D from 'highcharts/highcharts-3d'\r\nimport IndicatorsAll from 'highcharts/indicators/indicators-all'\r\n\r\nimport 'highcharts/css/stocktools/gui.scss'\r\nimport 'highcharts/css/annotations/popup.scss'\r\n\r\nimport StockData from 'highcharts/modules/data'\r\nimport HighchartAccessibility from 'highcharts/modules/accessibility'\r\nimport HighchartsExporting from 'highcharts/modules/exporting';\r\nimport HighchartsExportData from 'highcharts/modules/export-data';\r\nimport DragPane from 'highcharts/modules/drag-panes'\r\nimport AnnotationsAdvanced from 'highcharts/modules/annotations-advanced'\r\nimport PriceIndicator from 'highcharts/modules/price-indicator'\r\nimport FullScreen from 'highcharts/modules/full-screen'\r\nimport StockTools from 'highcharts/modules/stock-tools'\r\nimport Heikinashi from 'highcharts/modules/heikinashi'\r\nimport HollowCandlestick from 'highcharts/modules/hollowcandlestick'\r\nimport HistogramBellCurve from 'highcharts/modules/histogram-bellcurve'\r\nimport Gantt from 'highcharts/modules/gantt'\r\n\r\nimport HighchartsMore from 'highcharts/highcharts-more';\r\nimport { theme as DefaultOpts } from './DefaultOpts'\r\nimport { DarkUnicaTheme } from './ThemeOpts'\r\n\r\n// Highcharts3D(Highcharts)\r\nStockData(Highcharts)\r\nDragPane(Highcharts)\r\nIndicatorsAll(Highcharts)\r\nStockTools(Highcharts)\r\nAnnotationsAdvanced(Highcharts)\r\nPriceIndicator(Highcharts)\r\nFullScreen(Highcharts)\r\nHighchartAccessibility(Highcharts)\r\n\r\nHeikinashi(Highcharts)\r\nHollowCandlestick(Highcharts)\r\nGantt(Highcharts)\r\nHistogramBellCurve(Highcharts)\r\n\r\nHighchartsMore(Highcharts);\r\nHighchartsExporting(Highcharts);\r\nHighchartsExportData(Highcharts);\r\n\r\nconst HighChartWrapper = ({options, constructorType, themeModule, themeName}) => {\r\n Highcharts.theme = {...DefaultOpts, ...DarkUnicaTheme}\r\n Highcharts.setOptions(Highcharts.theme)\r\n\r\n return(\r\n \r\n );\r\n}\r\n\r\nexport default HighChartWrapper;","import React from 'react'\r\nimport HighchartsReact from 'highcharts-react-official'\r\nimport Highcharts from 'highcharts/highstock'\r\nimport Highcharts3D from 'highcharts/highcharts-3d'\r\nimport IndicatorsAll from 'highcharts/indicators/indicators-all'\r\n\r\nimport 'highcharts/css/stocktools/gui.scss'\r\nimport 'highcharts/css/annotations/popup.scss'\r\n\r\nimport StockData from 'highcharts/modules/data'\r\nimport HighchartAccessibility from 'highcharts/modules/accessibility'\r\nimport HighchartsExporting from 'highcharts/modules/exporting';\r\nimport HighchartsExportData from 'highcharts/modules/export-data';\r\nimport DragPane from 'highcharts/modules/drag-panes'\r\nimport AnnotationsAdvanced from 'highcharts/modules/annotations-advanced'\r\nimport PriceIndicator from 'highcharts/modules/price-indicator'\r\nimport FullScreen from 'highcharts/modules/full-screen'\r\nimport StockTools from 'highcharts/modules/stock-tools'\r\nimport Heikinashi from 'highcharts/modules/heikinashi'\r\nimport HollowCandlestick from 'highcharts/modules/hollowcandlestick'\r\nimport HistogramBellCurve from 'highcharts/modules/histogram-bellcurve'\r\nimport Gantt from 'highcharts/modules/gantt'\r\n\r\nimport HighchartsMore from 'highcharts/highcharts-more';\r\nimport { theme as DefaultOpts } from './DefaultOpts'\r\nimport { GrayTheme } from './ThemeOpts'\r\n\r\n// Highcharts3D(Highcharts)\r\nStockData(Highcharts)\r\nDragPane(Highcharts)\r\nIndicatorsAll(Highcharts)\r\nStockTools(Highcharts)\r\nAnnotationsAdvanced(Highcharts)\r\nPriceIndicator(Highcharts)\r\nFullScreen(Highcharts)\r\nHighchartAccessibility(Highcharts)\r\n\r\nHeikinashi(Highcharts)\r\nHollowCandlestick(Highcharts)\r\nGantt(Highcharts)\r\nHistogramBellCurve(Highcharts)\r\n\r\nHighchartsMore(Highcharts);\r\nHighchartsExporting(Highcharts);\r\nHighchartsExportData(Highcharts);\r\n\r\nconst HighChartWrapper = ({options, constructorType, themeModule, themeName}) => {\r\n Highcharts.theme = {...DefaultOpts, ...GrayTheme}\r\n Highcharts.setOptions(Highcharts.theme)\r\n\r\n return(\r\n \r\n );\r\n}\r\n\r\nexport default HighChartWrapper;","import React from 'react'\r\nimport HighchartsReact from 'highcharts-react-official'\r\nimport Highcharts from 'highcharts/highstock'\r\nimport Highcharts3D from 'highcharts/highcharts-3d'\r\nimport IndicatorsAll from 'highcharts/indicators/indicators-all'\r\n\r\nimport 'highcharts/css/stocktools/gui.scss'\r\nimport 'highcharts/css/annotations/popup.scss'\r\n\r\nimport StockData from 'highcharts/modules/data'\r\nimport HighchartAccessibility from 'highcharts/modules/accessibility'\r\nimport HighchartsExporting from 'highcharts/modules/exporting';\r\nimport HighchartsExportData from 'highcharts/modules/export-data';\r\nimport DragPane from 'highcharts/modules/drag-panes'\r\nimport AnnotationsAdvanced from 'highcharts/modules/annotations-advanced'\r\nimport PriceIndicator from 'highcharts/modules/price-indicator'\r\nimport FullScreen from 'highcharts/modules/full-screen'\r\nimport StockTools from 'highcharts/modules/stock-tools'\r\nimport Heikinashi from 'highcharts/modules/heikinashi'\r\nimport HollowCandlestick from 'highcharts/modules/hollowcandlestick'\r\nimport HistogramBellCurve from 'highcharts/modules/histogram-bellcurve'\r\nimport Gantt from 'highcharts/modules/gantt'\r\n\r\nimport HighchartsMore from 'highcharts/highcharts-more';\r\nimport { theme as DefaultOpts } from './DefaultOpts'\r\nimport { GridTheme } from './ThemeOpts'\r\n\r\n// Highcharts3D(Highcharts)\r\nStockData(Highcharts)\r\nDragPane(Highcharts)\r\nIndicatorsAll(Highcharts)\r\nStockTools(Highcharts)\r\nAnnotationsAdvanced(Highcharts)\r\nPriceIndicator(Highcharts)\r\nFullScreen(Highcharts)\r\nHighchartAccessibility(Highcharts)\r\n\r\nHeikinashi(Highcharts)\r\nHollowCandlestick(Highcharts)\r\nGantt(Highcharts)\r\nHistogramBellCurve(Highcharts)\r\n\r\nHighchartsMore(Highcharts);\r\nHighchartsExporting(Highcharts);\r\nHighchartsExportData(Highcharts);\r\n\r\nconst HighChartWrapper = ({options, constructorType, themeModule, themeName}) => {\r\n Highcharts.theme = {...DefaultOpts, ...GridTheme}\r\n Highcharts.setOptions(Highcharts.theme)\r\n\r\n return(\r\n \r\n );\r\n}\r\n\r\nexport default HighChartWrapper;","import React from 'react'\r\nimport HighchartsReact from 'highcharts-react-official'\r\nimport Highcharts from 'highcharts/highstock'\r\nimport Highcharts3D from 'highcharts/highcharts-3d'\r\nimport IndicatorsAll from 'highcharts/indicators/indicators-all'\r\n\r\nimport 'highcharts/css/stocktools/gui.scss'\r\nimport 'highcharts/css/annotations/popup.scss'\r\n\r\nimport StockData from 'highcharts/modules/data'\r\nimport HighchartAccessibility from 'highcharts/modules/accessibility'\r\nimport HighchartsExporting from 'highcharts/modules/exporting';\r\nimport HighchartsExportData from 'highcharts/modules/export-data';\r\nimport DragPane from 'highcharts/modules/drag-panes'\r\nimport AnnotationsAdvanced from 'highcharts/modules/annotations-advanced'\r\nimport PriceIndicator from 'highcharts/modules/price-indicator'\r\nimport FullScreen from 'highcharts/modules/full-screen'\r\nimport StockTools from 'highcharts/modules/stock-tools'\r\nimport Heikinashi from 'highcharts/modules/heikinashi'\r\nimport HollowCandlestick from 'highcharts/modules/hollowcandlestick'\r\nimport HistogramBellCurve from 'highcharts/modules/histogram-bellcurve'\r\nimport Gantt from 'highcharts/modules/gantt'\r\n\r\nimport HighchartsMore from 'highcharts/highcharts-more';\r\nimport { theme as DefaultOpts } from './DefaultOpts'\r\nimport { GridLightTheme\r\n } from './ThemeOpts'\r\n\r\n// Highcharts3D(Highcharts)\r\nStockData(Highcharts)\r\nDragPane(Highcharts)\r\nIndicatorsAll(Highcharts)\r\nStockTools(Highcharts)\r\nAnnotationsAdvanced(Highcharts)\r\nPriceIndicator(Highcharts)\r\nFullScreen(Highcharts)\r\nHighchartAccessibility(Highcharts)\r\n\r\nHeikinashi(Highcharts)\r\nHollowCandlestick(Highcharts)\r\nGantt(Highcharts)\r\nHistogramBellCurve(Highcharts)\r\n\r\nHighchartsMore(Highcharts);\r\nHighchartsExporting(Highcharts);\r\nHighchartsExportData(Highcharts);\r\n\r\nconst HighChartWrapper = ({options, constructorType, themeModule, themeName}) => {\r\n Highcharts.theme = {...DefaultOpts, ...GridLightTheme\r\n }\r\n Highcharts.setOptions(Highcharts.theme)\r\n\r\n return(\r\n \r\n );\r\n}\r\n\r\nexport default HighChartWrapper;","import React from 'react'\r\nimport HighchartsReact from 'highcharts-react-official'\r\nimport Highcharts from 'highcharts/highstock'\r\nimport Highcharts3D from 'highcharts/highcharts-3d'\r\nimport IndicatorsAll from 'highcharts/indicators/indicators-all'\r\n\r\nimport 'highcharts/css/stocktools/gui.scss'\r\nimport 'highcharts/css/annotations/popup.scss'\r\n\r\nimport StockData from 'highcharts/modules/data'\r\nimport HighchartAccessibility from 'highcharts/modules/accessibility'\r\nimport HighchartsExporting from 'highcharts/modules/exporting';\r\nimport HighchartsExportData from 'highcharts/modules/export-data';\r\nimport DragPane from 'highcharts/modules/drag-panes'\r\nimport AnnotationsAdvanced from 'highcharts/modules/annotations-advanced'\r\nimport PriceIndicator from 'highcharts/modules/price-indicator'\r\nimport FullScreen from 'highcharts/modules/full-screen'\r\nimport StockTools from 'highcharts/modules/stock-tools'\r\nimport Heikinashi from 'highcharts/modules/heikinashi'\r\nimport HollowCandlestick from 'highcharts/modules/hollowcandlestick'\r\nimport HistogramBellCurve from 'highcharts/modules/histogram-bellcurve'\r\nimport Gantt from 'highcharts/modules/gantt'\r\n\r\nimport HighchartsMore from 'highcharts/highcharts-more';\r\nimport { theme as DefaultOpts } from './DefaultOpts'\r\nimport { HighContrastDarkTheme\r\n } from './ThemeOpts'\r\n\r\n// Highcharts3D(Highcharts)\r\nStockData(Highcharts)\r\nDragPane(Highcharts)\r\nIndicatorsAll(Highcharts)\r\nStockTools(Highcharts)\r\nAnnotationsAdvanced(Highcharts)\r\nPriceIndicator(Highcharts)\r\nFullScreen(Highcharts)\r\nHighchartAccessibility(Highcharts)\r\n\r\nHeikinashi(Highcharts)\r\nHollowCandlestick(Highcharts)\r\nGantt(Highcharts)\r\nHistogramBellCurve(Highcharts)\r\n\r\nHighchartsMore(Highcharts);\r\nHighchartsExporting(Highcharts);\r\nHighchartsExportData(Highcharts);\r\n\r\nconst HighChartWrapper = ({options, constructorType, themeModule, themeName}) => {\r\n Highcharts.theme = {...DefaultOpts, ...HighContrastDarkTheme\r\n }\r\n Highcharts.setOptions(Highcharts.theme)\r\n\r\n return(\r\n \r\n );\r\n}\r\n\r\nexport default HighChartWrapper;","import React from 'react'\r\nimport HighchartsReact from 'highcharts-react-official'\r\nimport Highcharts from 'highcharts/highstock'\r\nimport Highcharts3D from 'highcharts/highcharts-3d'\r\nimport IndicatorsAll from 'highcharts/indicators/indicators-all'\r\n\r\nimport 'highcharts/css/stocktools/gui.scss'\r\nimport 'highcharts/css/annotations/popup.scss'\r\n\r\nimport StockData from 'highcharts/modules/data'\r\nimport HighchartAccessibility from 'highcharts/modules/accessibility'\r\nimport HighchartsExporting from 'highcharts/modules/exporting';\r\nimport HighchartsExportData from 'highcharts/modules/export-data';\r\nimport DragPane from 'highcharts/modules/drag-panes'\r\nimport AnnotationsAdvanced from 'highcharts/modules/annotations-advanced'\r\nimport PriceIndicator from 'highcharts/modules/price-indicator'\r\nimport FullScreen from 'highcharts/modules/full-screen'\r\nimport StockTools from 'highcharts/modules/stock-tools'\r\nimport Heikinashi from 'highcharts/modules/heikinashi'\r\nimport HollowCandlestick from 'highcharts/modules/hollowcandlestick'\r\nimport HistogramBellCurve from 'highcharts/modules/histogram-bellcurve'\r\nimport Gantt from 'highcharts/modules/gantt'\r\n\r\nimport HighchartsMore from 'highcharts/highcharts-more';\r\nimport { theme as DefaultOpts } from './DefaultOpts'\r\nimport { HighContrastLightTheme\r\n } from './ThemeOpts'\r\n\r\n// Highcharts3D(Highcharts)\r\nStockData(Highcharts)\r\nDragPane(Highcharts)\r\nIndicatorsAll(Highcharts)\r\nStockTools(Highcharts)\r\nAnnotationsAdvanced(Highcharts)\r\nPriceIndicator(Highcharts)\r\nFullScreen(Highcharts)\r\nHighchartAccessibility(Highcharts)\r\n\r\nHeikinashi(Highcharts)\r\nHollowCandlestick(Highcharts)\r\nGantt(Highcharts)\r\nHistogramBellCurve(Highcharts)\r\n\r\nHighchartsMore(Highcharts);\r\nHighchartsExporting(Highcharts);\r\nHighchartsExportData(Highcharts);\r\n\r\nconst HighChartWrapper = ({options, constructorType, themeModule, themeName}) => {\r\n Highcharts.theme = {...DefaultOpts, ...HighContrastLightTheme\r\n }\r\n Highcharts.setOptions(Highcharts.theme)\r\n\r\n return(\r\n \r\n );\r\n}\r\n\r\nexport default HighChartWrapper;","import React from 'react'\r\nimport HighchartsReact from 'highcharts-react-official'\r\nimport Highcharts from 'highcharts/highstock'\r\nimport Highcharts3D from 'highcharts/highcharts-3d'\r\nimport IndicatorsAll from 'highcharts/indicators/indicators-all'\r\n\r\nimport 'highcharts/css/stocktools/gui.scss'\r\nimport 'highcharts/css/annotations/popup.scss'\r\n\r\nimport StockData from 'highcharts/modules/data'\r\nimport HighchartAccessibility from 'highcharts/modules/accessibility'\r\nimport HighchartsExporting from 'highcharts/modules/exporting';\r\nimport HighchartsExportData from 'highcharts/modules/export-data';\r\nimport DragPane from 'highcharts/modules/drag-panes'\r\nimport AnnotationsAdvanced from 'highcharts/modules/annotations-advanced'\r\nimport PriceIndicator from 'highcharts/modules/price-indicator'\r\nimport FullScreen from 'highcharts/modules/full-screen'\r\nimport StockTools from 'highcharts/modules/stock-tools'\r\nimport Heikinashi from 'highcharts/modules/heikinashi'\r\nimport HollowCandlestick from 'highcharts/modules/hollowcandlestick'\r\nimport HistogramBellCurve from 'highcharts/modules/histogram-bellcurve'\r\nimport Gantt from 'highcharts/modules/gantt'\r\n\r\nimport HighchartsMore from 'highcharts/highcharts-more';\r\nimport { theme as DefaultOpts } from './DefaultOpts'\r\nimport { SandSignikaTheme\r\n } from './ThemeOpts'\r\n\r\n// Highcharts3D(Highcharts)\r\nStockData(Highcharts)\r\nDragPane(Highcharts)\r\nIndicatorsAll(Highcharts)\r\nStockTools(Highcharts)\r\nAnnotationsAdvanced(Highcharts)\r\nPriceIndicator(Highcharts)\r\nFullScreen(Highcharts)\r\nHighchartAccessibility(Highcharts)\r\n\r\nHeikinashi(Highcharts)\r\nHollowCandlestick(Highcharts)\r\nGantt(Highcharts)\r\nHistogramBellCurve(Highcharts)\r\n\r\nHighchartsMore(Highcharts);\r\nHighchartsExporting(Highcharts);\r\nHighchartsExportData(Highcharts);\r\n\r\nconst HighChartWrapper = ({options, constructorType, themeModule, themeName}) => {\r\n Highcharts.theme = {...DefaultOpts, ...SandSignikaTheme\r\n }\r\n Highcharts.setOptions(Highcharts.theme)\r\n\r\n return(\r\n \r\n );\r\n}\r\n\r\nexport default HighChartWrapper;","import React from 'react'\r\nimport HighchartsReact from 'highcharts-react-official'\r\nimport Highcharts from 'highcharts/highstock'\r\nimport Highcharts3D from 'highcharts/highcharts-3d'\r\nimport IndicatorsAll from 'highcharts/indicators/indicators-all'\r\n\r\nimport 'highcharts/css/stocktools/gui.scss'\r\nimport 'highcharts/css/annotations/popup.scss'\r\n\r\nimport StockData from 'highcharts/modules/data'\r\nimport HighchartAccessibility from 'highcharts/modules/accessibility'\r\nimport HighchartsExporting from 'highcharts/modules/exporting';\r\nimport HighchartsExportData from 'highcharts/modules/export-data';\r\nimport DragPane from 'highcharts/modules/drag-panes'\r\nimport AnnotationsAdvanced from 'highcharts/modules/annotations-advanced'\r\nimport PriceIndicator from 'highcharts/modules/price-indicator'\r\nimport FullScreen from 'highcharts/modules/full-screen'\r\nimport StockTools from 'highcharts/modules/stock-tools'\r\nimport Heikinashi from 'highcharts/modules/heikinashi'\r\nimport HollowCandlestick from 'highcharts/modules/hollowcandlestick'\r\nimport HistogramBellCurve from 'highcharts/modules/histogram-bellcurve'\r\nimport Gantt from 'highcharts/modules/gantt'\r\n\r\nimport HighchartsMore from 'highcharts/highcharts-more';\r\nimport { theme as DefaultOpts } from './DefaultOpts'\r\nimport { SkiesTheme\r\n } from './ThemeOpts'\r\n\r\n// Highcharts3D(Highcharts)\r\nStockData(Highcharts)\r\nDragPane(Highcharts)\r\nIndicatorsAll(Highcharts)\r\nStockTools(Highcharts)\r\nAnnotationsAdvanced(Highcharts)\r\nPriceIndicator(Highcharts)\r\nFullScreen(Highcharts)\r\nHighchartAccessibility(Highcharts)\r\n\r\nHeikinashi(Highcharts)\r\nHollowCandlestick(Highcharts)\r\nGantt(Highcharts)\r\nHistogramBellCurve(Highcharts)\r\n\r\nHighchartsMore(Highcharts);\r\nHighchartsExporting(Highcharts);\r\nHighchartsExportData(Highcharts);\r\n\r\nconst HighChartWrapper = ({options, constructorType, themeModule, themeName}) => {\r\n Highcharts.theme = {...DefaultOpts, ...SkiesTheme\r\n }\r\n Highcharts.setOptions(Highcharts.theme)\r\n\r\n return(\r\n \r\n );\r\n}\r\n\r\nexport default HighChartWrapper;","import React from 'react'\r\nimport HighchartsReact from 'highcharts-react-official'\r\nimport Highcharts from 'highcharts/highstock'\r\nimport Highcharts3D from 'highcharts/highcharts-3d'\r\nimport IndicatorsAll from 'highcharts/indicators/indicators-all'\r\n\r\nimport 'highcharts/css/stocktools/gui.scss'\r\nimport 'highcharts/css/annotations/popup.scss'\r\n\r\nimport StockData from 'highcharts/modules/data'\r\nimport HighchartAccessibility from 'highcharts/modules/accessibility'\r\nimport HighchartsExporting from 'highcharts/modules/exporting';\r\nimport HighchartsExportData from 'highcharts/modules/export-data';\r\nimport DragPane from 'highcharts/modules/drag-panes'\r\nimport AnnotationsAdvanced from 'highcharts/modules/annotations-advanced'\r\nimport PriceIndicator from 'highcharts/modules/price-indicator'\r\nimport FullScreen from 'highcharts/modules/full-screen'\r\nimport StockTools from 'highcharts/modules/stock-tools'\r\nimport Heikinashi from 'highcharts/modules/heikinashi'\r\nimport HollowCandlestick from 'highcharts/modules/hollowcandlestick'\r\nimport HistogramBellCurve from 'highcharts/modules/histogram-bellcurve'\r\nimport Gantt from 'highcharts/modules/gantt'\r\n\r\nimport HighchartsMore from 'highcharts/highcharts-more';\r\nimport { theme as DefaultOpts } from './DefaultOpts'\r\nimport { SunsetTheme } from './ThemeOpts'\r\n\r\n// Highcharts3D(Highcharts)\r\nStockData(Highcharts)\r\nDragPane(Highcharts)\r\nIndicatorsAll(Highcharts)\r\nStockTools(Highcharts)\r\nAnnotationsAdvanced(Highcharts)\r\nPriceIndicator(Highcharts)\r\nFullScreen(Highcharts)\r\nHighchartAccessibility(Highcharts)\r\n\r\nHeikinashi(Highcharts)\r\nHollowCandlestick(Highcharts)\r\nGantt(Highcharts)\r\nHistogramBellCurve(Highcharts)\r\n\r\nHighchartsMore(Highcharts);\r\nHighchartsExporting(Highcharts);\r\nHighchartsExportData(Highcharts);\r\n\r\nconst HighChartWrapper = ({options, constructorType, themeModule, themeName}) => {\r\n Highcharts.theme = {...DefaultOpts, ...SunsetTheme }\r\n Highcharts.setOptions(Highcharts.theme)\r\n\r\n return(\r\n \r\n );\r\n}\r\n\r\nexport default HighChartWrapper;","import React, { useState, useEffect, useRef } from \"react\";\r\nimport { useSelector } from 'react-redux'\r\n\r\nimport DepthChart from './DepthChart'\r\n\r\nimport Highcharts from 'highcharts/highstock'\r\n// import ReactHighcharts from 'highcharts-react-official'\r\n\r\nimport moment from 'moment'\r\n\r\nimport DefaultChart from './Themes/DefaultChart'\r\nimport AvocadoChart from './Themes/AvocadoChart';\r\nimport BrandDarkChart from \"./Themes/BrandDarkChart\";\r\nimport BrandLightChart from \"./Themes/BrandLightChart\";\r\nimport DarkBlueChart from \"./Themes/DarkBlueChart\";\r\nimport DarkGreenChart from \"./Themes/DarkGreenChart\";\r\nimport DarkUnicaChart from \"./Themes/DarkUnicaChart\";\r\nimport GrayChart from \"./Themes/GrayChart\";\r\nimport GridChart from \"./Themes/GridChart\";\r\nimport GridLightChart from \"./Themes/GridLightChart\";\r\nimport HighContrastDarkChart from \"./Themes/HighContrastDarkChart \";\r\nimport HighContrastLightChart from \"./Themes/HighContrastLightChart\";\r\nimport SandSignikaChart from \"./Themes/SandSignikaChart\";\r\nimport SkiesChart from \"./Themes/SkiesChart\";\r\nimport SunsetChart from \"./Themes/SunsetChart\";\r\n\r\nfunction getRandomColor() {\r\n // Generate random values for red, green, and blue channels\r\n const red = Math.floor(Math.random() * 256);\r\n const green = Math.floor(Math.random() * 256);\r\n const blue = Math.floor(Math.random() * 256);\r\n\r\n // Combine the channels into a CSS color string\r\n const color = `rgb(${red}, ${green}, ${blue})`;\r\n\r\n return color;\r\n}\r\n\r\nconst useData = (initialData, xAxis = null, yAxis = null) => {\r\n let defaultSeries = [], volume = [], duelSeries = {}\r\n const _dateField = xAxis || 'date'\r\n const isDuelYAxis = yAxis && yAxis.length > 0\r\n const _valueFields = yAxis && yAxis.length > 0 ? yAxis : ['open', 'high', 'low', 'close']\r\n for (let d of initialData) {\r\n const t = new Date(d[_dateField])\r\n const pointDate = t.getTime();\r\n let seriesPoint = [\r\n pointDate\r\n ]\r\n _valueFields.map(field => {\r\n if (isDuelYAxis) {\r\n if (duelSeries[field] === undefined) {\r\n duelSeries[field] = {\r\n name: field.toUpperCase(),\r\n color: getRandomColor(),\r\n data: []\r\n }\r\n }\r\n const duelPoint = [pointDate, d[field]]\r\n duelSeries[field].data.push(duelPoint)\r\n }\r\n seriesPoint.push(d[field])\r\n })\r\n defaultSeries.push(seriesPoint)\r\n volume.push([\r\n pointDate, d.volume\r\n ])\r\n }\r\n let data = []\r\n if (isDuelYAxis) {\r\n data = duelSeries\r\n data.default = defaultSeries\r\n } else {\r\n data = defaultSeries\r\n }\r\n return {\r\n data, volume\r\n }\r\n}\r\nconst useSeries = ({ data: seriesData, volume, config }) => {\r\n if (!seriesData) return []\r\n const {\r\n chartType: initialChartType, step, spline, dashStyle, zones: initialZones\r\n } = config\r\n let { scatterEnabled, scatterRadius, shadow } = config\r\n let chartType = initialChartType\r\n let useOhlcData = false, groupingUnits = [\r\n [\r\n 'week', // unit name\r\n [1] // allowed multiples\r\n ], [\r\n 'month',\r\n [1, 2, 3, 4, 6]\r\n ]\r\n ], lineWidth = 2\r\n if (initialChartType === 'scatter-line') {\r\n chartType = 'line'\r\n }\r\n if (initialChartType === 'line' && spline) {\r\n chartType = 'spline'\r\n } else if (initialChartType === 'area' && spline) {\r\n chartType = 'areaspline'\r\n } else if (initialChartType === 'arearange' && spline) {\r\n chartType = 'areasplinerange'\r\n } else if (initialChartType === 'bellcurve') {\r\n chartType = 'scatter'\r\n } else if (initialChartType === 'point-marker') {\r\n chartType = 'line'\r\n lineWidth = 0\r\n scatterEnabled = true\r\n scatterRadius = 2\r\n shadow = false\r\n } else if (initialChartType === 'ohlc') {\r\n useOhlcData = true\r\n } else if (initialChartType === 'grouped-bar' || initialChartType === 'stacked-bar') {\r\n chartType = 'column'\r\n } else if (initialChartType === 'columnpyramid-stack' || initialChartType === 'columnpyramid-grouped') {\r\n chartType = 'columnpyramid'\r\n } else if (initialChartType === 'percent-area') {\r\n chartType = 'area'\r\n }\r\n const _data = seriesData.default ? seriesData.default : seriesData;\r\n let seriesList = []\r\n if (seriesData.default) {\r\n delete seriesData.default\r\n seriesList = Object.values(seriesData)\r\n }\r\n let stockSeries = {\r\n name: 'Stock',\r\n type: chartType,\r\n id: 'stockseries',\r\n // type: 'gantt',\r\n marker: {\r\n enabled: scatterEnabled,\r\n radius: scatterRadius\r\n },\r\n lineWidth: lineWidth,\r\n shadow: shadow,\r\n step: step,\r\n data: _data,\r\n tooltip: {\r\n valueDecimals: 2\r\n },\r\n dataGrouping: {\r\n // units: groupingUnits\r\n },\r\n states: {\r\n hover: {\r\n lineWidthPlus: 0\r\n }\r\n },\r\n dashStyle: dashStyle,\r\n zones: [...initialZones],\r\n useOhlcData: useOhlcData\r\n },\r\n volumeSeries = {\r\n type: 'column',\r\n name: 'Volume',\r\n data: volume,\r\n yAxis: 1,\r\n dataGrouping: {\r\n // units: groupingUnits\r\n }\r\n }\r\n if (initialChartType === 'bellcurve') {\r\n return [\r\n {\r\n name: '',\r\n type: 'bellcurve',\r\n xAxis: 0,\r\n yAxis: 0,\r\n baseSeries: 'stockseries',\r\n zIndex: -1,\r\n intervals: 4,\r\n pointsInInterval: 5\r\n },\r\n {\r\n ...stockSeries,\r\n accessibility: {\r\n exposeAsGroupOnly: true\r\n },\r\n marker: {\r\n radius: 1.5\r\n }\r\n },\r\n volumeSeries\r\n ]\r\n } else if (['grouped-bar', 'stacked-bar', 'columnpyramid-stack', 'columnpyramid-grouped', 'percent-area'].indexOf(initialChartType) > -1) {\r\n const initialSeries = { ...stockSeries, id: undefined, data: [] }\r\n const oSeries = { ...initialSeries, id: 'stockseries', name: 'Open', color: Highcharts.getOptions().colors[0] },\r\n hSeries = { ...initialSeries, name: 'High', color: Highcharts.getOptions().colors[1] },\r\n lSeries = { ...initialSeries, name: 'Low', color: Highcharts.getOptions().colors[2] },\r\n cSeries = { ...initialSeries, name: 'Close', color: Highcharts.getOptions().colors[3] }\r\n for (let d of seriesData) {\r\n oSeries.data.push([d[0], d[1]])\r\n hSeries.data.push([d[0], d[2]])\r\n lSeries.data.push([d[0], d[3]])\r\n cSeries.data.push([d[0], d[4]])\r\n }\r\n return [oSeries, hSeries, lSeries, cSeries, volumeSeries]\r\n }\r\n return [stockSeries, volumeSeries, ...seriesList]\r\n}\r\nconst useYAxis = ({ chartType, yPlotBands, yPlotLines }) => {\r\n const yAxis = [{\r\n labels: {\r\n align: 'right',\r\n x: -3\r\n },\r\n title: {\r\n text: 'Stock'\r\n },\r\n height: '60%',\r\n lineWidth: 2,\r\n resize: {\r\n enabled: true\r\n },\r\n crosshair: true,\r\n plotBands: [...yPlotBands],\r\n plotLines: [...yPlotLines],\r\n }]\r\n // if(chartType === 'bellcurve'){\r\n // yAxis.push({\r\n // title: { text: 'Bell curve' },\r\n // opposite: true\r\n // })\r\n // }else{\r\n yAxis.push({\r\n labels: {\r\n align: 'right',\r\n x: -3\r\n },\r\n title: {\r\n text: 'Volume'\r\n },\r\n top: '65%',\r\n height: '35%',\r\n offset: 0,\r\n lineWidth: 2\r\n })\r\n // }\r\n return yAxis\r\n}\r\nconst useXAxis = ({ chartType, xPlotBands, xPlotLines }) => {\r\n const xAxis = [{\r\n // type: 'datetime',\r\n crosshair: true,\r\n plotBands: [...xPlotBands],\r\n plotLines: [...xPlotLines]\r\n }]\r\n // if(chartType === 'bellcurve'){\r\n // xAxis.push({\r\n // title: {\r\n // text: 'Bell Curve'\r\n // },\r\n // alignTicks: false,\r\n // opposite: true\r\n // })\r\n // }\r\n return xAxis\r\n}\r\nconst usePlotOptions = ({ chartType, config }) => {\r\n let {\r\n pointDataLabelEnabled\r\n } = config\r\n let stacking, columnDataLabelEnabled = false\r\n if (['stacked-bar', 'columnpyramid-stack'].indexOf(chartType) > -1) {\r\n stacking = 'normal'\r\n columnDataLabelEnabled = true\r\n } else if (['percent-area'].indexOf(chartType) > -1) {\r\n stacking = 'percent'\r\n }\r\n return {\r\n series: {\r\n showInNavigator: true,\r\n gapSize: 6,\r\n allowPointSelect: true,\r\n // compare: 'value',\r\n // cumulative: true,\r\n enabled: pointDataLabelEnabled,\r\n dataLabels: {\r\n enabled: columnDataLabelEnabled\r\n }\r\n },\r\n flags: {\r\n color: Highcharts.getOptions().colors[0], // same as onSeries\r\n fillColor: Highcharts.getOptions().colors[0],\r\n // width: 16,\r\n style: { // text style\r\n color: 'white'\r\n },\r\n states: {\r\n hover: {\r\n fillColor: '#395C84' // darker\r\n }\r\n },\r\n textAlign: 'center'\r\n },\r\n line: {\r\n },\r\n column: {\r\n stacking: stacking,\r\n dataLabels: {\r\n enabled: columnDataLabelEnabled\r\n }\r\n // depth: 25\r\n },\r\n columnpyramid: {\r\n stacking: stacking,\r\n dataLabels: {\r\n enabled: columnDataLabelEnabled\r\n }\r\n },\r\n area: {\r\n stacking: stacking,\r\n lineColor: '#666666',\r\n lineWidth: 1,\r\n marker: {\r\n lineWidth: 1,\r\n lineColor: '#666666'\r\n }\r\n },\r\n scatter: {\r\n marker: {\r\n radius: 5,\r\n states: {\r\n hover: {\r\n enabled: true,\r\n lineColor: 'rgb(100,100,100)'\r\n }\r\n }\r\n },\r\n states: {\r\n hover: {\r\n marker: {\r\n enabled: false\r\n }\r\n }\r\n },\r\n tooltip: {\r\n headerFormat: '{series.name}
',\r\n pointFormat: '{point.x} cm, {point.y} kg'\r\n }\r\n }\r\n }\r\n}\r\n\r\nfunction ChartContainer(props) {\r\n const chartComponent = useRef(null);\r\n const { data: initialData } = props\r\n const highChartData = useSelector(state => state.highChartData) || {}\r\n const {\r\n chartType, plotBands, plotLines, theme\r\n } = highChartData\r\n const xPlotBands = plotBands.filter(item => item.axis = 'x')\r\n const yPlotBands = plotBands.filter(item => item.axis = 'y')\r\n const xPlotLines = plotLines.filter(item => item.axis = 'x')\r\n const yPlotLines = plotLines.filter(item => item.axis = 'y')\r\n\r\n const { data, volume } = useData(initialData, props.xAxis, props.yAxis)\r\n const series = useSeries({\r\n config: highChartData, data, volume\r\n })\r\n const yAxis = useYAxis({ chartType, yPlotBands, yPlotLines })\r\n const xAxis = useXAxis({ chartType, xPlotBands, xPlotLines })\r\n const plotOptions = usePlotOptions({ chartType, config: highChartData })\r\n const [chart, setChart] = useState(null)\r\n const { id: themeName, color: themeColor } = theme || {}\r\n\r\n if (chartType === 'depth-chart') {\r\n return \r\n }\r\n\r\n // const options = { style: 'currency', currency: 'USD' };\r\n // const numberFormat = new Intl.NumberFormat('en-US', options);\r\n const configStock = {\r\n chart: {\r\n height: 600,\r\n alignTicks: true,\r\n zoomType: 'x',\r\n // options3d: {\r\n // enabled: true,\r\n // alpha: 15,\r\n // beta: 15,\r\n // depth: 50,\r\n // viewDistance: 25\r\n // }\r\n events: {\r\n // addSeries: function(event) {\r\n // // Function which saves the new background color.\r\n // console.log(event, 'event')\r\n // console.log(this.chart, 'this.chart')\r\n // if(event.options.type === 'flags'){\r\n // event.preventDefault()\r\n // // console.log(this.chart, 'this.chart.series')\r\n // event.target.options.series.push(event.options.data[0])\r\n // // event.target.series.redraw()\r\n // }\r\n // }\r\n }\r\n },\r\n stockTools: {\r\n enabled: false,\r\n gui: {\r\n buttons: [\r\n // 'typeChange',\r\n // 'separator',\r\n\r\n // 'thresholds',\r\n // 'separator',\r\n // 'indicators',\r\n // 'separator',\r\n // 'simpleShapes',\r\n // 'lines',\r\n // 'crookedLines',\r\n // 'measure',\r\n // 'advanced',\r\n // 'toggleAnnotations',\r\n // 'separator',\r\n // 'verticalLabels',\r\n // 'flags',\r\n // 'separator',\r\n // 'zoomChange',\r\n // 'fullScreen',\r\n // 'separator',\r\n // 'currentPriceIndicator',\r\n // 'saveChart'\r\n ],\r\n definitions: {\r\n thresholds: {\r\n className: 'highcharts-threshold-annotation',\r\n symbol: 'horizontal-line.svg'\r\n },\r\n typeChange: {\r\n items: ['typeOHLC', 'typeLine']\r\n },\r\n flags: {\r\n items: ['flagCirclepin', 'flagDiamondpin', 'flagSquarepin', 'flagSimplepin']\r\n }\r\n }\r\n }\r\n },\r\n navigation: {\r\n bindings: {\r\n thresholds: {\r\n className: 'highcharts-threshold-annotation',\r\n start: function (event) {\r\n var chart = this.chart,\r\n x = chart.xAxis[0].toValue(event.chartX),\r\n y = chart.yAxis[0].toValue(event.chartY),\r\n colors = chart.options.colors,\r\n series = chart.series[0],\r\n zones = series.userOptions.zones || [];\r\n\r\n chart.customColorIndex = chart.customColorIndex || 1;\r\n\r\n chart.customColorIndex++;\r\n\r\n if (\r\n chart.customColorIndex === colors.length\r\n ) {\r\n chart.customColorIndex = 1;\r\n }\r\n\r\n zones.push({\r\n color: colors[chart.customColorIndex],\r\n value: y\r\n });\r\n\r\n chart.addAnnotation({\r\n langKey: 'thresholds',\r\n zoneIndex: zones.length - 1,\r\n type: 'infinityLine',\r\n draggable: 'y',\r\n events: {\r\n drag: function (e) {\r\n var newZones = series.userOptions.zones;\r\n\r\n newZones[this.userOptions.zoneIndex].value =\r\n chart.yAxis[0].toValue(e.chartY);\r\n\r\n chart.series[0].update({\r\n zones: newZones\r\n });\r\n }\r\n },\r\n typeOptions: {\r\n type: 'horizontalLine',\r\n points: [{\r\n x: x,\r\n y: y\r\n }]\r\n }\r\n });\r\n\r\n chart.series[0].update({\r\n zones: zones\r\n });\r\n }\r\n }\r\n }\r\n },\r\n yAxis: yAxis,\r\n navigator: {\r\n series: {\r\n color: 'red'\r\n }\r\n },\r\n tooltip: {\r\n shared: true,\r\n formatter: function () {\r\n return this.y + '
' + moment(this.x).format('MMMM Do YYYY, h:mm')\r\n },\r\n split: true,\r\n },\r\n plotOptions: plotOptions,\r\n title: {\r\n // text: `High Chart Stock`\r\n },\r\n\r\n credits: {\r\n enabled: false\r\n },\r\n\r\n legend: {\r\n enabled: true\r\n },\r\n xAxis: xAxis,\r\n rangeSelector: {\r\n buttons: [{\r\n type: 'day',\r\n count: 1,\r\n text: '1d',\r\n }, {\r\n type: 'day',\r\n count: 7,\r\n text: '7d'\r\n }, {\r\n type: 'month',\r\n count: 1,\r\n text: '1m'\r\n }, {\r\n type: 'month',\r\n count: 3,\r\n text: '3m'\r\n },\r\n {\r\n type: 'all',\r\n text: 'All'\r\n }],\r\n selected: 4\r\n },\r\n series: series,\r\n responsive: {\r\n rules: [{\r\n condition: {\r\n minWidth: 600\r\n },\r\n chartOptions: {\r\n yAxis: [{\r\n labels: {\r\n align: 'left'\r\n }\r\n }, {\r\n labels: {\r\n align: 'left'\r\n }\r\n }]\r\n }\r\n }]\r\n }\r\n };\r\n const params = {\r\n constructorType: \"stockChart\",\r\n options: configStock\r\n }\r\n return (\r\n
\r\n {\r\n themeName === 'avocado' ?\r\n :\r\n themeName === 'brand-dark' ?\r\n :\r\n themeName === 'brand-light' ?\r\n :\r\n themeName === 'dark-blue' ?\r\n :\r\n themeName === 'dark-green' ?\r\n :\r\n themeName === 'dark-unica' ?\r\n :\r\n themeName === 'gray' ?\r\n :\r\n themeName === 'grid' ?\r\n :\r\n themeName === 'grid-light' ?\r\n :\r\n themeName === 'high-contrast-dark' ?\r\n :\r\n themeName === 'high-contrast-light' ?\r\n :\r\n themeName === 'sand-signika' ?\r\n :\r\n themeName === 'skies' ?\r\n :\r\n themeName === 'sunset' ?\r\n :\r\n \r\n }\r\n
\r\n )\r\n}\r\n\r\nexport default ChartContainer","import React, { useState } from 'react';\r\nimport clsx from 'clsx';\r\n\r\nimport _ from \"underscore\";\r\nimport {compose} from \"recompose\";\r\nimport {connect} from \"react-redux\";\r\nimport {withRouter} from \"react-router\";\r\nimport {makeStyles} from \"@mui/styles\";\r\n\r\nimport {\r\n MenuItem\r\n} from \"@mui/material\";\r\nimport Draggable from 'react-draggable';\r\nimport MuiAlert from '@mui/lab/Alert';\r\n\r\nimport { setTimeRange } from 'store/slices/StockProductSlice'\r\nimport { blue } from '@mui/material/colors';\r\n\r\n\r\nconst useStyles = makeStyles((theme) => ({\r\n root:{\r\n listStyle: 'none',\r\n display: 'flex',\r\n margin: '0',\r\n position: 'absolute',\r\n top: '0',\r\n left: '-11px',\r\n zIndex: '1000',\r\n '& > li': {\r\n cursor: 'pointer',\r\n fontSize: '15px',\r\n borderRight: 'solid 1px #756c7c',\r\n padding: '0 15px',\r\n lineHeight: 1,\r\n fontWeight: 300,\r\n '&:last-child': {\r\n borderRight: 0\r\n },\r\n '&.selected':{\r\n color: 'blue',\r\n position: 'relative',\r\n '&::before': {\r\n width: '80%',\r\n bottom: '-8px',\r\n left: 'calc(20%/2)',\r\n height: '3px',\r\n content: '\"\"',\r\n position: 'absolute',\r\n background: '#1d8cf8',\r\n borderTopRightRadius: '3px',\r\n borderTopLeftRadius: '3px'\r\n }\r\n }\r\n }\r\n }\r\n}))\r\nconst ChartTimeRanger = (props) => {\r\n const {\r\n timeRange\r\n } = props\r\n const classes = useStyles()\r\n const rangers = ['1d', '5d', '1m', '6m', 'ytd','1y', '5y', 'max']\r\n const handleRangeClick = (newVal) => {\r\n props.setTimeRange(newVal)\r\n }\r\n return (\r\n
    \r\n {\r\n rangers.map((r, i) => (\r\n
  • handleRangeClick(r)} className={timeRange === r ? 'selected': ''}>{r.toUpperCase()}
  • \r\n ))\r\n }\r\n
\r\n );\r\n };\r\n\r\nconst mapStateToProps = (state) => ({\r\n user: state.user.user,\r\n productData: state.productData\r\n});\r\n\r\nconst mapDispatchToProps = (dispatch) => ({\r\n setTimeRange: (payload) => dispatch(setTimeRange(payload))\r\n});\r\n\r\nexport default compose(\r\n withRouter,\r\n connect(mapStateToProps, mapDispatchToProps),\r\n)(ChartTimeRanger);","import React, { useEffect, useState, useMemo, useCallback, useRef } from 'react'\r\nimport Chart from 'kaktana-react-lightweight-charts'\r\nimport { smaInc, emaInc, wmaInc } from '../../Utils/indicators'\r\n\r\nconst SeriesTypes = {\r\n line: 'lineSeries',\r\n area: 'areaSeries',\r\n 'base-line': 'baseSeries',\r\n histogram: 'histogramSeries',\r\n bar: 'barSeries',\r\n candlestick: 'candlestickSeries'\r\n}\r\n\r\nconst usePrevious = (value) => {\r\n\t// The ref object is a generic container whose current property is mutable ...\r\n\t// ... and can hold any value, similar to an instance property on a class\r\n\tconst ref = useRef();\r\n\t// Store current value in ref\r\n\tuseEffect(() => {\r\n\t ref.current = value;\r\n\t}, [value]); // Only re-run if value changes\r\n\treturn ref.current;\r\n}\r\n\r\nconst MainSeries = (props) => {\r\n const {\r\n data = [],\r\n layoutOptions = {},\r\n chartType = 'line',\r\n ma = {}\r\n } = props\r\n\r\n const [options, setOptions] = useState({})\r\n const [mainSeries, setMainSeries] = useState({})\r\n const [volumeSeries, setVolumeSeries] = useState({})\r\n const [macdSeries, setMacdSeries] = useState([])\r\n const [seriesData, setSeriesData] = useState({})\r\n \r\n // const ref = useRef();\r\n // useEffect(() => {\r\n // ref.current = seriesArr;\r\n // }, [seriesArr]); // Only re-run if value changes\r\n\r\n const getSeriesItem = useCallback(({\r\n type, options = {}, data: initialData\r\n }) => {\r\n let _data = []\r\n let _seriesType = SeriesTypes[type]\r\n let _options = options\r\n if(Array.isArray(initialData)){\r\n _data = initialData\r\n }else{\r\n if(['line', 'area', 'base-line', 'histogram'].indexOf(type) > -1){\r\n _data = data.map(item => ({\r\n time: item.time,\r\n value: item.open\r\n }))\r\n }else{\r\n _data = [...data]\r\n }\r\n }\r\n const _seriesItem = {\r\n data: [..._data],\r\n options: _options,\r\n seriesType: _seriesType\r\n }\r\n return _seriesItem\r\n }, [data])\r\n\r\n \r\n useEffect(() => {\r\n setOptions({...layoutOptions})\r\n }, [layoutOptions])\r\n useEffect(() => {\r\n const _mainSeries = getSeriesItem({\r\n type: chartType,\r\n })\r\n setMainSeries({..._mainSeries})\r\n }, [chartType])\r\n useEffect(() => {\r\n const _data = data.map(item => ({\r\n time: item.time,\r\n value: item.close\r\n }))\r\n const _volumeSeries = getSeriesItem({\r\n type: 'histogram',\r\n data: _data,\r\n options: {\r\n color: '#dfd6d6',\r\n lineWidth: 2,\r\n priceFormat: {\r\n type: 'volume',\r\n },\r\n overlay: true,\r\n scaleMargins: {\r\n top: 0.8,\r\n bottom: 0,\r\n },\r\n }\r\n })\r\n setVolumeSeries({..._volumeSeries})\r\n }, [data])\r\n useEffect(() => {\r\n const _macdSeries = []\r\n console.log(ma, 'ma')\r\n if(ma.visible){\r\n ma.edges.map((edge, idx) => {\r\n if(edge.edgeVal > 0){\r\n const _series = {\r\n type: 'line',\r\n }\r\n if(edge.edgeId === 'sma'){\r\n let _edgeData = smaInc(data, edge.edgeVal)\r\n _edgeData = _edgeData.map(item => ({\r\n time: item.time,\r\n value: item.sma\r\n }))\r\n _series.data = _edgeData\r\n _series.options = {\r\n title: 'SMA',\r\n color: edge.lineColor\r\n }\r\n } else if(edge.edgeId === 'ema'){\r\n let _edgeData = emaInc(data, edge.edgeVal)\r\n _edgeData = _edgeData.map(item => ({\r\n time: item.time,\r\n value: item.ema\r\n }))\r\n _series.data = _edgeData\r\n _series.options = {\r\n title: 'EMA',\r\n color: edge.lineColor\r\n }\r\n } else if(edge.edgeId === 'wma'){\r\n let _edgeData = wmaInc(data, edge.edgeVal)\r\n _edgeData = _edgeData.map(item => ({\r\n time: item.time,\r\n value: item.wma\r\n }))\r\n _series.data = _edgeData\r\n _series.options = {\r\n title: 'WMA',\r\n color: edge.lineColor\r\n }\r\n }\r\n const _seriesItem = getSeriesItem({..._series})\r\n _macdSeries.push(_seriesItem) \r\n }\r\n })\r\n }\r\n setMacdSeries([..._macdSeries])\r\n }, [data, ma])\r\n \r\n useEffect(() => {\r\n const _seriesData = {}\r\n const _seriesArr = macdSeries.concat([\r\n mainSeries, volumeSeries\r\n ])\r\n _seriesArr.map(s => {\r\n if(_seriesData[s.seriesType] === undefined){\r\n _seriesData[s.seriesType] = []\r\n }\r\n _seriesData[s.seriesType].push(s)\r\n })\r\n setSeriesData({..._seriesData})\r\n }, [mainSeries, volumeSeries, macdSeries])\r\n \r\n return (\r\n \r\n )\r\n}\r\n\r\nexport default MainSeries","import { SMA, EMA, WMA, MACD } from 'technicalindicators'\r\n\r\nexport const smaInc = (data, period = 0) => {\r\n const d1 = data.map((d) => d.close);\r\n const results = SMA.calculate({\r\n period,\r\n values: d1\r\n })\r\n const d2 = results;\r\n const diff = data.length - d2.length;\r\n const emptyArray = [...(new Array(diff))].map((d) => '');\r\n const d3 = [...emptyArray, ...d2];\r\n data = data.map((d, i) => ({ ...d, sma: d3[i] }));\r\n return data;\r\n};\r\n\r\nexport const emaInc = (data, period = 0) => {\r\n const d1 = data.map((d) => d.close);\r\n const results = EMA.calculate({\r\n period,\r\n values: d1\r\n })\r\n const d2 = results;\r\n const diff = data.length - d2.length;\r\n const emptyArray = [...(new Array(diff))].map((d) => '');\r\n const d3 = [...emptyArray, ...d2];\r\n data = data.map((d, i) => ({ ...d, ema: d3[i] }));\r\n return data;\r\n};\r\n\r\n\r\nexport const wmaInc = (data, period = 0) => {\r\n const d1 = data.map((d) => d.close);\r\n const results = WMA.calculate({\r\n period,\r\n values: d1\r\n })\r\n const d2 = results;\r\n const diff = data.length - d2.length;\r\n const emptyArray = [...(new Array(diff))].map((d) => '');\r\n const d3 = [...emptyArray, ...d2];\r\n data = data.map((d, i) => ({ ...d, wma: d3[i] }));\r\n return data;\r\n};\r\n\r\n\r\nexport const macdInc = (data, period = 0) => {\r\n const d1 = data.map((d) => d.close);\r\n const results = MACD.calculate({\r\n period,\r\n values: d1\r\n })\r\n const d2 = results;\r\n const diff = data.length - d2.length;\r\n const emptyArray = [...(new Array(diff))].map((d) => '');\r\n const d3 = [...emptyArray, ...d2];\r\n data = data.map((d, i) => ({ ...d, macd: d3[i] }));\r\n return data;\r\n};","import React, { useCallback, useState, useEffect } from 'react'\r\nimport { useSelector } from 'react-redux'\r\n\r\nimport Chart from 'kaktana-react-lightweight-charts'\r\nimport moment from 'moment'\r\n\r\nimport MainSeries from './Series/MainSeries'\r\n\r\nconst TradingViewDrawer = (props) => {\r\n const {\r\n chartType,\r\n indicatorOpts: {\r\n ma = {},\r\n macd = {},\r\n },\r\n } = useSelector(state => state.lightWeightChartData)\r\n\r\n const { data: initialData } = props\r\n const [data, setData] = useState([])\r\n const [chartLayoutOptions, setChartLayoutOptions] = useState({\r\n alignLabels: true,\r\n timeScale: {\r\n rightOffset: 12,\r\n barSpacing: 3,\r\n fixLeftEdge: true,\r\n lockVisibleTimeRangeOnResize: true,\r\n rightBarStaysOnScroll: true,\r\n borderVisible: false,\r\n borderColor: \"#fff000\",\r\n visible: true,\r\n timeVisible: true,\r\n secondsVisible: false\r\n }\r\n })\r\n\r\n const formatData = useCallback(() => {\r\n let _data = initialData?.map(item => {\r\n return {\r\n time: moment(item.reading_date).format('YYYY-MM-DD'),\r\n open: parseFloat(item.open),\r\n low: parseFloat(item.low),\r\n close: parseFloat(item.close),\r\n high: parseFloat(item.high),\r\n volume: parseFloat(item.volume)\r\n }\r\n })\r\n setData([..._data])\r\n }, [initialData])\r\n\r\n useEffect(() => {\r\n formatData(initialData)\r\n }, [formatData])\r\n \r\n return (\r\n <>\r\n {\r\n data.length > 0 && (\r\n \r\n )\r\n }\r\n \r\n )\r\n}\r\n\r\nexport default TradingViewDrawer","import React, {useEffect, useState } from \"react\";\r\n\r\n\r\nimport { Box } from \"@mui/material\"\r\nimport Chart from 'kaktana-react-lightweight-charts'\r\nimport TradingViewWidget from 'react-tradingview-widget';\r\n\r\nconst TradingViewEmbedder = (props) => {\r\n const [configs, setConfigs] = useState({\r\n \"autosize\": true,\r\n \"symbol\": null,\r\n \"interval\": \"D\",\r\n \"timezone\": \"Etc/UTC\",\r\n \"theme\": \"Light\",\r\n \"style\": \"1\",\r\n \"locale\": \"en\",\r\n \"toolbar_bg\": \"#f1f3f6\",\r\n \"enable_publishing\": false,\r\n \"withdateranges\": true,\r\n \"hide_side_toolbar\": false,\r\n \"allow_symbol_change\": false,\r\n })\r\n useEffect(() => {\r\n setConfigs({\r\n ...configs, symbol: `${decodeURIComponent(props.feedSource)}/${decodeURIComponent(props.databaseCode)}/${decodeURIComponent(props.productCode)}`\r\n })\r\n }, [\r\n props.feedSource,\r\n props.databaseCode,\r\n props.productCode,\r\n ])\r\n \r\n return <>\r\n {\r\n configs.symbol == null ? (\r\n <>\r\n ) : (\r\n \r\n \r\n \r\n )\r\n }\r\n \r\n\r\n}\r\n\r\nexport default TradingViewEmbedder","/* eslint no-restricted-globals:0 */\r\nimport React from \"react\";\r\n\r\nimport { makeStyles } from \"@mui/styles\";\r\n\r\n/*Rrag Chart Importing*/\r\nimport RragChartContainer from 'components/common/Rrag';\r\nimport { TypeChooser } from \"libs/rrag/lib/helper\";\r\n/** High Chart */\r\n// import HighChartContainer from 'components/common/High'\r\n// import HighChartContainer from 'components/common/High/DepthChart'\r\nimport HighChartContainer from 'components/common/High/OfficalChart'\r\n// import HighChartContainer from 'components/common/High/ChartComponent'\r\n\r\nimport ChartTimeRanger from \"../../Components/ChartTimeRanger\";\r\n// import TradingViewDrawer from \"components/common/TradingView/TradingViewDrawer\";\r\nimport TradingViewDrawer from \"components/common/TradingView/LightWeight\";\r\nimport TradingViewEmbedder from \"components/common/TradingView/TradingViewEmbedder\";\r\nimport { useDispatch } from \"react-redux\";\r\n\r\nconst useStyles = makeStyles((theme) => ({\r\n root: {\r\n position: 'relative',\r\n paddingTop: '10px',\r\n // marginTop: '20px',\r\n }\r\n}));\r\nfunction MarketContainer(props) {\r\n const classes = useStyles();\r\n const dispatch = useDispatch()\r\n const {\r\n chartLibrary,\r\n data,\r\n timeRange,\r\n feedSource,\r\n databaseCode,\r\n productCode,\r\n xAxis,\r\n yAxis\r\n } = props\r\n return (\r\n
\r\n \r\n {\r\n chartLibrary === 'rrag' && ()\r\n }\r\n {\r\n chartLibrary === 'rrag' ? (\r\n \r\n {type => }\r\n \r\n ) : chartLibrary === 'tradingview-widget' ? (\r\n \r\n ) : chartLibrary === 'light-weight' ? (\r\n \r\n ) : (\r\n \r\n )\r\n }\r\n\r\n \r\n
\r\n )\r\n};\r\n\r\nexport default MarketContainer;","import React from \"react\";\r\nimport MuiAlert from '@mui/material/Alert';\r\nexport default function Alert(props) {\r\n return ;\r\n}","import {createSlice,createAsyncThunk,createEntityAdapter} from '@reduxjs/toolkit';\r\nimport { setPath } from 'shared/utilities/helpers'\r\n\r\n\r\n\r\nconst initialState = {\r\n // chartLibrary: 'light-weight',\r\n // chartLibrary: 'tradingview-widget',\r\n chartLibrary: 'highchart',\r\n feedSourceType: 'stock',\r\n loadedFeedSourceType: 'stock',\r\n \r\n timeseries: {\r\n entityField: null,\r\n checked: [],\r\n tableEntityId: null,\r\n\r\n chartType: 'line',\r\n xAxis: null,\r\n yAxis: null,\r\n tooltips: []\r\n },\r\n};\r\n\r\nconst chartDataSlice = createSlice({\r\n name: 'chartData',\r\n initialState,\r\n reducers: {\r\n setChartOpt: (state, action) => {\r\n const {path, value} = action.payload\r\n setPath(state, path, value)\r\n },\r\n setChartLibrary: (state, action) => {\r\n state.chartLibrary = action.payload\r\n },\r\n setFeedSourceType: (state, action) => {\r\n state.feedSourceType = action.payload\r\n },\r\n setLoadedFeedSourceType: (state, action) => {\r\n state.loadedFeedSourceType = action.payload\r\n },\r\n initiTimeseriesData: (state, action) => {\r\n state.timeseries = {\r\n ...state.timeseries,\r\n checked: [],\r\n tooltips: [],\r\n xAxis: null,\r\n yAxis: null,\r\n }\r\n }\r\n },\r\n extraReducers: {},\r\n});\r\n\r\nexport const prepareSelector = state => state.chartData;\r\nexport const {\r\n setChartOpt,\r\n setChartLibrary, \r\n setFeedSourceType,\r\n setLoadedFeedSourceType,\r\n initiTimeseriesData\r\n} = chartDataSlice.actions\r\nexport default chartDataSlice.reducer;\r\n","import React, { useEffect, useState, useMemo } from 'react'\r\nimport {\r\n Button,\r\n CircularProgress,\r\n Dialog,\r\n DialogActions,\r\n DialogContent,\r\n DialogContentText,\r\n DialogTitle, TextField,\r\n Typography,\r\n Box,\r\n IconButton,\r\n Tooltip,\r\n List,\r\n ListItem,\r\n ListItemButton,\r\n ListItemIcon,\r\n ListItemText,\r\n Divider\r\n} from \"@mui/material\"\r\nimport { makeStyles } from \"@mui/styles\";\r\nimport {\r\n BookmarkBorder as BookmarkIcon,\r\n Close as CloseIcon,\r\n TurnedIn\r\n} from '@mui/icons-material'\r\nimport axios from 'axios'\r\nimport { Autocomplete } from \"@mui/lab\"\r\nimport { useDispatch, useSelector } from \"react-redux\"\r\nimport { useParams } from \"react-router-dom\"\r\nimport { USER_FAVORITE_GROUP, USER_FAVORITES } from \"store/UrlConstants\"\r\nimport { appendFavoriteGroup, appendToFav, fetchUserFavorites } from \"store/slices/UserSlice\"\r\n\r\nconst useStyles = makeStyles(() => ({\r\n FavoriteButton: {\r\n cursor: 'pointer',\r\n position: 'relative',\r\n transition: 'all ease-in .2s',\r\n borderRadius: '4px',\r\n marginRight: '7px',\r\n boxShadow: '0 0 1px 1px #e5e5f1',\r\n display: 'flex',\r\n flexFlow: 'column',\r\n color: '#4e4b4b',\r\n padding: '8px',\r\n '& svg': {\r\n display: 'block',\r\n margin: '0 auto',\r\n },\r\n },\r\n DialogTitleTxt: {\r\n flex: 1,\r\n fontStyle: 'normal',\r\n fontWeight: '500',\r\n fontSize: '18px',\r\n lineHeight: '28px',\r\n display: 'flex',\r\n alignItems: 'center',\r\n fontFeatureSettings: `'salt' on`,\r\n color: '#374151',\r\n },\r\n DialogContent: {\r\n width: 512,\r\n minHeight: 200,\r\n },\r\n TextField: {\r\n backgroundColor: '#F3F4F6',\r\n border: 'none'\r\n },\r\n SaveBtn: {\r\n color: 'white',\r\n backgroundColor: '#6790e3',\r\n padding: '6px 15px',\r\n \"&:hover\": {\r\n backgroundColor: '#C3D6FD'\r\n }\r\n },\r\n bookmarkList: {\r\n width: '100%',\r\n bgcolor: 'background.paper',\r\n maxHeight: '300px',\r\n overflow: 'auto',\r\n marginTop: '10px',\r\n marginBottom: '10px',\r\n '&::-webkit-scrollbar': {\r\n width: '10px',\r\n height: '11px'\r\n },\r\n /* Track */\r\n '&::-webkit-scrollbar-track': {\r\n background: '#f1f1f1'\r\n },\r\n\r\n /* Handle */\r\n '&::-webkit-scrollbar-thumb': {\r\n background: '#888'\r\n },\r\n\r\n /* Handle on hover */\r\n '&::-webkit-scrollbar-thumb:hover': {\r\n background: '#555'\r\n },\r\n }\r\n}));\r\n\r\nconst FavoriteButton = (props, feedSourceType) => {\r\n const classes = useStyles()\r\n const dispatch = useDispatch()\r\n const productData = useSelector(state => state.productData)\r\n\r\n const favs = useSelector(state => state.user.favs) || {}\r\n const favKeys = useSelector(state => state.user.favKeys) || []\r\n const { feedSource, databaseCode, productCode } = useParams()\r\n const CURRENT_LOCATION = useMemo(() => {\r\n return `${feedSource}/${databaseCode}/${productCode}`\r\n }, [feedSource, databaseCode, productCode])\r\n const DEFAULT_TEXT = null\r\n const [shouldShow, setShouldShow] = useState(false)\r\n const [inputValue, setInputValue] = useState('')\r\n const [pending, setPending] = useState(false)\r\n const [done, setDone] = useState(false)\r\n const [statusTxt, setStatusTxt] = useState(DEFAULT_TEXT)\r\n\r\n useEffect(() => {\r\n if (Object.keys(favs).length < 1) {\r\n dispatch(fetchUserFavorites())\r\n }\r\n }, [])\r\n\r\n\r\n function createGroup(groupName, configuration) {\r\n axios.put(USER_FAVORITES, {\r\n 'favorite': CURRENT_LOCATION,\r\n 'group_name': groupName,\r\n 'configurationItem': configuration\r\n })\r\n .then((response) => {\r\n dispatch(appendFavoriteGroup(response.data))\r\n setPending(false)\r\n setStatusTxt('Done!')\r\n setDone(true)\r\n })\r\n .catch((error) => {\r\n setPending(false)\r\n setStatusTxt('Something went wrong...')\r\n setDone(true)\r\n })\r\n }\r\n\r\n function appendToGroup(groupName) {\r\n axios.post(USER_FAVORITE_GROUP(favs[groupName].id), { 'favorite': CURRENT_LOCATION })\r\n .then((response) => {\r\n dispatch(appendToFav({ groupName, fav: CURRENT_LOCATION }))\r\n setPending(false)\r\n setStatusTxt('Done!')\r\n setDone(true)\r\n })\r\n .catch((error) => {\r\n setPending(false)\r\n setStatusTxt('Something went wrong...')\r\n setDone(true)\r\n })\r\n }\r\n\r\n function SaveFav() {\r\n if (props.isBeaDatabaseCode) {\r\n if (!(productData.selectedChartTimeIncrement && productData.selectedChartLine)) return\r\n\r\n setPending(true)\r\n setStatusTxt('Loading...')\r\n createGroup(inputValue, {\r\n line: productData.selectedChartLine,\r\n timeIncrement: productData.selectedChartTimeIncrement\r\n })\r\n } else {\r\n if (feedSourceType === 'timeseries') {\r\n if (!(productData.xAxis && productData.yAxis)) return\r\n }\r\n setPending(true)\r\n setStatusTxt('Loading...')\r\n createGroup(inputValue, {\r\n xAxis: productData.xAxis,\r\n yAxis: productData.yAxis,\r\n timeIncrement: productData.selectedBlobTimeIncrement\r\n })\r\n }\r\n\r\n // if (favKeys.includes(inputValue)) {\r\n // appendToGroup(inputValue)\r\n // } else {\r\n // }\r\n }\r\n\r\n function closeDialog() {\r\n setStatusTxt(DEFAULT_TEXT)\r\n setShouldShow(false)\r\n setDone(false)\r\n }\r\n\r\n // console.log(favKeys, 'favKeys')\r\n return (\r\n
\r\n \r\n \r\n \r\n Bookmark\r\n \r\n \r\n \r\n \r\n \r\n \r\n {\r\n statusTxt && statusTxt !== '' && (\r\n \r\n {statusTxt}\r\n \r\n )\r\n }\r\n {!pending && !done && (\r\n {\r\n setInputValue(newInputValue)\r\n }}\r\n options={favKeys}\r\n // sx={{ width: 300 }}\r\n renderInput={(params) => }\r\n />)\r\n }\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {\r\n !pending && (\r\n \r\n )\r\n }\r\n {\r\n !done && (\r\n SaveFav()}\r\n className={classes.SaveBtn}\r\n >\r\n {pending && ()}\r\n {!pending && (
Save
)}\r\n \r\n )\r\n }\r\n
\r\n \r\n \r\n \r\n setShouldShow(true)}\r\n >\r\n \r\n \r\n \r\n \r\n
\r\n )\r\n}\r\n\r\nexport default FavoriteButton\r\n","import React from 'react';\r\n\r\nimport { compose } from \"recompose\";\r\nimport { connect } from \"react-redux\";\r\nimport { withRouter } from \"react-router\";\r\nimport { Box, Typography } from '@mui/material';\r\nimport { makeStyles } from \"@mui/styles\";\r\n\r\nimport {\r\n IconButton,\r\n} from \"@mui/material\";\r\n\r\nimport ClearIcon from '@mui/icons-material/Clear';\r\n\r\nconst useToolbarStyles = makeStyles((theme) => ({\r\n Toolbar: {\r\n display: 'flex',\r\n // alignItems: 'center',\r\n padding: '17px'\r\n },\r\n SavedFilters: {\r\n flex: 1,\r\n marginRight: '10px'\r\n },\r\n FiltersList: {\r\n display: 'flex',\r\n flexWrap: 'wrap',\r\n marginTop: '10px'\r\n },\r\n FilterItem: {\r\n borderRadius: '20px',\r\n padding: '2px 9px',\r\n background: '#8965e047',\r\n marginRight: '4px',\r\n marginBottom: '4px',\r\n display: 'flex',\r\n alignItems: 'center',\r\n '& > span': {\r\n color: '#5a5a5a',\r\n fontSize: '12px',\r\n '& > b': {\r\n fontWeight: '500',\r\n fontSize: '13px'\r\n }\r\n }\r\n },\r\n FilterDelete: {\r\n color: '#5a5a5a',\r\n padding: '2px',\r\n marginLeft: '2px',\r\n '& svg': {\r\n fontSize: '17px'\r\n }\r\n }\r\n}));\r\n\r\nconst FilterPop = (props) => {\r\n const {\r\n filters,\r\n handleClearFilter\r\n } = props\r\n const classes = useToolbarStyles();\r\n \r\n return (\r\n \r\n \r\n \r\n {\r\n Object.keys(filters).map(fKey => {\r\n const fItem = filters[fKey] || []\r\n return \r\n \r\n {fKey}:\r\n \r\n {\r\n fItem.join(', ')\r\n }\r\n \r\n \r\n handleClearFilter(fKey)}\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\nconst mapStateToProps = (state) => ({\r\n user: state.user.user\r\n});\r\n\r\nconst mapDispatchToProps = (dispatch) => ({\r\n});\r\n\r\nexport default compose(\r\n withRouter,\r\n connect(mapStateToProps, mapDispatchToProps),\r\n)(FilterPop);","export const descendingComparator = (a, b, orderBy) => {\r\n if (b[orderBy] < a[orderBy]) {\r\n return -1;\r\n }\r\n if (b[orderBy] > a[orderBy]) {\r\n return 1;\r\n }\r\n return 0;\r\n}\r\n \r\nexport const getComparator = (order, orderBy) => {\r\n return order === 'desc'\r\n ? (a, b) => descendingComparator(a, b, orderBy)\r\n : (a, b) => -descendingComparator(a, b, orderBy);\r\n}\r\n \r\nexport const stableSort = (array, comparator) => {\r\n const stabilizedThis = array.map((el, index) => [el, index]);\r\n stabilizedThis.sort((a, b) => {\r\n const order = comparator(a[0], b[0]);\r\n if (order !== 0) return order;\r\n return a[1] - b[1];\r\n });\r\n return stabilizedThis.map((el) => el[0]);\r\n}","import { createSlice } from '@reduxjs/toolkit';\r\n\r\n\r\nconst initialState = {\r\n datumFilterOptions: [],\r\n selectedDatumFilterOptions: []\r\n};\r\n\r\nconst ComponentSlice = createSlice({\r\n name: 'componentData',\r\n initialState,\r\n reducers: {\r\n setDatumFilterOptions: (state, action) => {\r\n state.datumFilterOptions = [...action.payload]\r\n },\r\n selectDatumFilterOptions: (state, action) => {\r\n state.selectedDatumFilterOptions = [...action.payload]\r\n },\r\n },\r\n});\r\n\r\nexport const prepareSelector = state => state.chartData;\r\nexport const { setDatumFilterOptions, selectDatumFilterOptions } = ComponentSlice.actions\r\nexport default ComponentSlice.reducer;\r\n","import React, { useState } from 'react';\r\nimport {makeStyles} from \"@mui/styles\";\r\nimport {\r\n Button\r\n} from \"@mui/material\";\r\n\r\nimport { DateRange, Calendar } from 'react-date-range';\r\n\r\nimport 'react-date-range/dist/styles.css'; // main style file\r\nimport 'react-date-range/dist/theme/default.css'; // theme css file\r\n\r\nconst useStyles = makeStyles((theme) => ({\r\n root: {\r\n padding: '13px'\r\n },\r\n operator: {\r\n width: '100%',\r\n '& > select': {\r\n fontFamily: 'Poppins',\r\n textTransform: 'uppercase',\r\n cursor: 'pointer',\r\n background: 'transparent',\r\n width: '100%',\r\n color: '#849095',\r\n borderRadius: '4px',\r\n backgroundColor: 'rgb(255, 255, 255)',\r\n boxShadow: '0 0px 4px 0 rgb(35 57 66 / 21%)',\r\n border: '1px solid transparent',\r\n marginBottom: '10px',\r\n padding: '9px 11px',\r\n fontSize: '13px',\r\n lineHeight: 1,\r\n '&:focus': {\r\n outline: 'none',\r\n boxShadow: '0 0 5px -1px #3d91ff'\r\n }\r\n }\r\n },\r\n inputAction: {\r\n display: 'flex',\r\n justifyContent: 'flex-end',\r\n '& > label': {\r\n marginLeft: '4px'\r\n },\r\n '& .MuiButton-root.Mui-disabled': {\r\n color: 'white',\r\n boxShadow: 'none',\r\n background: '#6979ce',\r\n cursor: 'not-allowed',\r\n }\r\n }\r\n }));\r\n \r\nexport default function PlotterDateFilter(props) {\r\n const classes = useStyles()\r\n const [range, setRange] = useState([\r\n {\r\n startDate: new Date(),\r\n endDate: null,\r\n key: 'selection'\r\n }\r\n ]);\r\n const [equalDate, setEqualDate] = useState(null)\r\n const [operator, setOperator] = useState('equal')\r\n return (\r\n
\r\n
\r\n \r\n
\r\n {\r\n operator === 'equal' ? \r\n setEqualDate(item)}\r\n date={equalDate} /> :\r\n operator === 'between' ?\r\n setRange([item.selection])}\r\n moveRangeOnFirstSelection={false}\r\n ranges={range}\r\n /> : \r\n ''\r\n }\r\n
\r\n \r\n \r\n
\r\n
\r\n );\r\n}","import React, { useState, useEffect } from 'react';\r\nimport { useSelector} from \"react-redux\";\r\nimport {makeStyles} from \"@mui/styles\";\r\nimport {\r\n Button,\r\n FormControl,\r\n FormControlLabel,\r\n Checkbox\r\n} from \"@mui/material\";\r\nimport SearchIcon from '@mui/icons-material/Search';\r\nimport CheckIcon from '@mui/icons-material/Check';\r\n\r\nconst useStyles = makeStyles((theme) => ({\r\n root: {\r\n padding: '13px'\r\n },\r\n inputControl: {\r\n width: '100%',\r\n position: 'relative',\r\n '& > select, & > input': {\r\n fontFamily: 'Poppins',\r\n // textTransform: 'uppercase',\r\n // cursor: 'pointer',\r\n background: 'transparent',\r\n width: '100%',\r\n color: '#849095',\r\n borderRadius: '4px',\r\n backgroundColor: 'rgb(255, 255, 255)',\r\n boxShadow: '0 0px 4px 0 rgb(35 57 66 / 21%)',\r\n border: '1px solid transparent',\r\n marginBottom: '10px',\r\n padding: '9px 11px',\r\n fontSize: '13px',\r\n lineHeight: 1,\r\n '&:focus': {\r\n outline: 'none',\r\n boxShadow: '0 0 5px -1px #3d91ff'\r\n }\r\n }\r\n },\r\n inputIcon: {\r\n position: 'absolute',\r\n right: '5px',\r\n zIndex: '1',\r\n top: '9px',\r\n color: '#6f6868'\r\n },\r\n distinctGroup: {\r\n '& > ul': {\r\n listStyle: 'none',\r\n padding: 0,\r\n maxHeight: '115px',\r\n overflow: 'auto',\r\n '&::-webkit-scrollbar': {\r\n width: '10px'\r\n },\r\n \r\n /* Track */\r\n '&::-webkit-scrollbar-track': {\r\n background: '#f1f1f1'\r\n },\r\n \r\n /* Handle */\r\n '&::-webkit-scrollbar-thumb': {\r\n background: '#888'\r\n },\r\n \r\n /* Handle on hover */\r\n '&::-webkit-scrollbar-thumb:hover': {\r\n background: '#555'\r\n },\r\n '& > li': {\r\n padding: '0',\r\n margin: '6px 0',\r\n display: 'flex',\r\n alignItems: 'center',\r\n cursor: 'pointer',\r\n paddingLeft: '17px',\r\n position: 'relative',\r\n fontSize: '13px',\r\n fontFamily: 'sans-serif',\r\n '& svg': {\r\n position: 'absolute',\r\n left: 0,\r\n color: '#6f6868'\r\n },\r\n '& > span': {\r\n marginLeft: '10px',\r\n color: '#6f6868'\r\n }\r\n }\r\n }\r\n },\r\n inputAction: {\r\n display: 'flex',\r\n borderTop: 'solid 1px #d1d4d6',\r\n paddingTop: '10px',\r\n '& > label': {\r\n marginLeft: '4px'\r\n },\r\n '& .MuiButton-root.Mui-disabled': {\r\n color: 'white',\r\n boxShadow: 'none',\r\n background: '#6979ce',\r\n cursor: 'not-allowed',\r\n }\r\n },\r\n FieldSet: {\r\n flex: 1\r\n },\r\n CheckboxControl: {\r\n margin: 0,\r\n '& .MuiCheckbox-root': {\r\n padding: '3px'\r\n },\r\n '& span':{\r\n fontSize: '12px'\r\n }\r\n }\r\n}));\r\n \r\nfunction PlotterDatumFilter(props) {\r\n const classes = useStyles()\r\n\r\n const [checkedItems, setCheckedItems] = useState(props.selected || [])\r\n const [items, setItems] = useState([])\r\n const [searchWord, setSearchWord] = useState('')\r\n \r\n const { onSelect } = props\r\n const datumFilterOptions = useSelector(state => state.componentData.datumFilterOptions)\r\n\r\n useEffect(() => {\r\n let arr = [...datumFilterOptions]\r\n if(searchWord !== ''){\r\n arr = datumFilterOptions.filter(item => (item.toLocaleString().toLowerCase()).indexOf(searchWord.toLowerCase()) > -1)\r\n setCheckedItems([...arr])\r\n }\r\n setItems([...arr])\r\n }, [searchWord, datumFilterOptions])\r\n\r\n const handleItemCheck = (value) => {\r\n const currentIndex = checkedItems.indexOf(value);\r\n const newChecked = [...checkedItems];\r\n if (currentIndex === -1) {\r\n newChecked.push(value);\r\n } else {\r\n newChecked.splice(currentIndex, 1);\r\n }\r\n setAllCheck(false)\r\n setCheckedItems(newChecked)\r\n }\r\n\r\n const [allCheck, setAllCheck] = React.useState(false)\r\n const [allCleared, setAllCleared] = React.useState(false)\r\n\r\n const clearAll = () => {\r\n setCheckedItems([])\r\n setSearchWord('')\r\n setAllCheck(false);\r\n }\r\n const selectAll = (e) => {\r\n if(e.target.checked){\r\n setCheckedItems([...items])\r\n setAllCheck(true);\r\n setAllCleared(false);\r\n }else{\r\n setCheckedItems([])\r\n setAllCheck(false);\r\n }\r\n }\r\n\r\n const handleClickUpdate = () => {\r\n onSelect(checkedItems)\r\n }\r\n return (\r\n
\r\n
\r\n {\r\n setSearchWord(e.target.value)\r\n }} placeholder='Enter Filter Value'/>\r\n
\r\n \r\n
\r\n
\r\n
\r\n
    \r\n {\r\n items.map((d, i) => (\r\n
  • {\r\n handleItemCheck(d)\r\n }}>\r\n {\r\n (checkedItems.indexOf(d) > -1) && \r\n }\r\n {d}\r\n
  • \r\n ))\r\n }\r\n
\r\n
\r\n
\r\n \r\n }\r\n label={'Select All'}\r\n />\r\n 0}\r\n />\r\n }\r\n label={'Clear All'}\r\n />\r\n \r\n \r\n \r\n
\r\n
\r\n );\r\n}\r\n\r\nexport default PlotterDatumFilter","import React from \"react\";\r\n\r\nexport const ProductContext = React.createContext()","import React, { useMemo, useState } from \"react\";\r\n\r\nimport { compose } from \"recompose\";\r\nimport { connect } from \"react-redux\";\r\nimport { withRouter } from \"react-router\";\r\n\r\nimport { makeStyles } from \"@mui/styles\";\r\nimport clsx from 'clsx';\r\nimport { useDispatch, useSelector } from \"react-redux\";\r\n\r\n// import { removeObjectProperties, propValue, isPropEquals } from \"../../../Utils/CommonFunctions\";\r\n\r\nimport {\r\n IconButton,\r\n Popover\r\n} from \"@mui/material\";\r\nimport SortByAlphaIcon from '@mui/icons-material/SortByAlpha';\r\nimport FilterListIcon from '@mui/icons-material/FilterList';\r\n\r\nimport SwipeableViews from \"react-swipeable-views\";\r\nimport _ from 'underscore'\r\n\r\nimport DateFilter from 'components/common/PlotterDateFilter'\r\nimport DatumFilter from 'components/common/PlotterDatumFilter'\r\n\r\nimport { ProductContext } from 'providers/product/ProductContext';\r\n\r\n\r\nconst useStyles = makeStyles(theme => ({\r\n root: {\r\n maxWidth: '357px',\r\n '& >*': {\r\n color: 'black'\r\n }\r\n },\r\n catalogs: {\r\n listStyle: 'none',\r\n padding: 0,\r\n margin: 0,\r\n padding: '17px',\r\n '& > li': {\r\n cursor: 'pointer',\r\n padding: '10px 0',\r\n borderBottom: 'solid 1px #d5d5d5',\r\n '&:last-child': {\r\n borderBottom: 'none'\r\n },\r\n '& > span': {\r\n paddingLeft: '10px'\r\n },\r\n '& > svg': {\r\n position: 'relative',\r\n bottom: '1px'\r\n }\r\n }\r\n },\r\n sorting: {\r\n color: '#9e9e9e',\r\n '&.active': {\r\n color: 'black'\r\n }\r\n },\r\n typography: {\r\n padding: theme.spacing(2),\r\n },\r\n bold: { fontWeight: \"bold\" },\r\n italic: { fontStyle: \"italic\" },\r\n underline: { textDecoration: \"underline\" }\r\n}));\r\n\r\nfunction DataTableColumnFilterPopover(_props) {\r\n const dispatch = useDispatch();\r\n const classes = useStyles();\r\n const props = { ..._props };\r\n\r\n const [swipIndex, setSwipIndex] = useState(0)\r\n const [swipName, setSwipName] = useState('catalog')\r\n\r\n const handleSwipChange = (sIndex, sName) => {\r\n setSwipIndex(sIndex)\r\n setSwipName(sName)\r\n }\r\n const {\r\n open,\r\n anchorEl,\r\n headCell,\r\n order,\r\n handleClose,\r\n handleSelection,\r\n direction,\r\n handleSortClick,\r\n filterValues,\r\n hasFilter = true\r\n } = props\r\n\r\n let distincts = ['(Blanks)'];\r\n\r\n return (\r\n <>\r\n \r\n {\r\n
\r\n \r\n
    \r\n
  • \r\n \r\n {\r\n handleSortClick('asc')\r\n }}>Ascending,\r\n {\r\n handleSortClick('desc')\r\n }}>Descending\r\n
  • \r\n {\r\n hasFilter && (\r\n
  • {\r\n handleSwipChange(1, 'filter')\r\n }}>\r\n \r\n Filter\r\n
  • \r\n )\r\n }\r\n
\r\n {\r\n swipName === 'filter' ?\r\n {\r\n handleSelection(checkedItems)\r\n }}\r\n selected={filterValues}\r\n {...props}\r\n /> :\r\n swipName === 'test' ?\r\n
\r\n

Ascending, Descending

\r\n
:\r\n

Other

\r\n }\r\n \r\n
\r\n }\r\n \r\n \r\n );\r\n}\r\n\r\nconst mapStateToProps = (state) => ({\r\n});\r\n\r\nconst mapDispatchToProps = (dispatch) => ({});\r\n\r\nexport default compose(\r\n withRouter,\r\n connect(mapStateToProps, mapDispatchToProps),\r\n)(DataTableColumnFilterPopover);","import React from 'react';\r\nimport { lighten} from '@mui/material';\r\nimport { makeStyles } from \"@mui/styles\";\r\n\r\nimport {\r\n FormControl,\r\n FormGroup,\r\n FormControlLabel,\r\n Checkbox,\r\n Box,\r\n} from \"@mui/material\";\r\n\r\nconst useStyles = makeStyles((theme) => ({\r\n root:{\r\n overflow: 'auto',\r\n padding: '10px',\r\n display: 'flex',\r\n flexFlow: 'column'\r\n },\r\n Buttons:{\r\n display: 'flex',\r\n flexDirection: 'initial',\r\n borderBottom: 'solid 1px #f1f1f1',\r\n marginBottom: '3px',\r\n '& > button': {\r\n fontSize: '12px',\r\n padding: '3px 4px',\r\n marginRight: '2px'\r\n }\r\n },\r\n FieldSet: {\r\n margin: 0,\r\n flex: 1,\r\n overflow: 'auto'\r\n },\r\n filterWrap: {\r\n padding: '17px'\r\n // display: 'flex',\r\n // '& > div': {\r\n // flex: 1\r\n // }\r\n },\r\n FormGroup: {\r\n marginBottom: '10px'\r\n },\r\n FormLabel: {\r\n display: 'block',\r\n marginBottom: '3px',\r\n fontFamily: 'system-ui',\r\n textTransform: 'uppercase'\r\n },\r\n FormControl: {\r\n width: '100%',\r\n padding: '5px 4px',\r\n borderRadius: '4px',\r\n border: 'solid 1px #a8a8a8',\r\n '&:focus': {\r\n outline: 'none',\r\n boxShadow: '0 0 4px -1px #2bffc6'\r\n }\r\n },\r\n CheckboxControl:{\r\n marginBottom: '0',\r\n '& span': {\r\n fontSize: '13px'\r\n }\r\n }\r\n}));\r\n \r\nconst ColumnSetting = (props) => {\r\n const { \r\n headCells, \r\n hiddenColumns, setHiddenColumns, \r\n } = props\r\n const classes = useStyles();\r\n\r\n const handleColumnChange = (event) => {\r\n const col = event.target.name\r\n const colIndex = hiddenColumns.indexOf(col);\r\n let newSelected = [];\r\n \r\n if (colIndex === -1) {\r\n newSelected = newSelected.concat(hiddenColumns, col);\r\n } else if (colIndex === 0) {\r\n newSelected = newSelected.concat(hiddenColumns.slice(1));\r\n } else if (colIndex === hiddenColumns.length - 1) {\r\n newSelected = newSelected.concat(hiddenColumns.slice(0, -1));\r\n } else if (colIndex > 0) {\r\n newSelected = newSelected.concat(\r\n hiddenColumns.slice(0, colIndex),\r\n hiddenColumns.slice(colIndex + 1),\r\n );\r\n }\r\n setHiddenColumns(newSelected);\r\n }\r\n \r\n const [anchorEl, setAnchorEl] = React.useState({\r\n columns: null\r\n });\r\n\r\n const handleClick = type => (event) => {\r\n setAnchorEl({ ...anchorEl, [type]: event.currentTarget });\r\n };\r\n \r\n const handleClose = () => {\r\n setAnchorEl({\r\n columns: null\r\n });\r\n };\r\n \r\n const openColumn = Boolean(anchorEl.columns);\r\n\r\n const columnPopid = openColumn ? 'column-popover' : undefined;\r\n\r\n const handleChange1 = (event) => {\r\n setHiddenColumns([event.target.checked, event.target.checked]);\r\n };\r\n\r\n const [allCheck, setAllCheck] = React.useState(false)\r\n const [allCleared, setAllCleared] = React.useState(false)\r\n\r\n const clearAll = () => {\r\n setHiddenColumns([])\r\n setAllCheck(false);\r\n }\r\n const selectAll = () => {\r\n const newArr = []\r\n headCells.map(h => {\r\n newArr.push(h.id)\r\n })\r\n setHiddenColumns(newArr)\r\n setAllCheck(true);\r\n setAllCleared(false);\r\n }\r\n return (\r\n \r\n \r\n }\r\n label={'Select All'}\r\n />\r\n 0}\r\n />\r\n }\r\n label={'Clear All'}\r\n />\r\n \r\n \r\n {/* Assign responsibility */}\r\n \r\n {\r\n headCells?.map((h, i) => (\r\n -1} onChange={handleColumnChange} name={h.id} />}\r\n label={h.label}\r\n />\r\n ))\r\n }\r\n \r\n \r\n \r\n );\r\n };\r\n \r\nColumnSetting.propTypes = {\r\n};\r\n\r\nexport default ColumnSetting","import React, { useMemo } from \"react\";\r\n\r\nimport 'highcharts/css/stocktools/gui.scss'\r\nimport 'highcharts/css/annotations/popup.scss'\r\n\r\nimport moment from 'moment'\r\nimport _ from 'underscore'\r\nimport { AdapterDateFns } from '@mui/x-date-pickers/AdapterDateFns';\r\nimport { LocalizationProvider } from '@mui/x-date-pickers/LocalizationProvider';\r\n\r\nimport Highcharts from 'highcharts/highcharts'\r\nimport HighchartsExporting from 'highcharts/modules/exporting';\r\nimport HighchartsExportData from 'highcharts/modules/export-data';\r\nimport HighchartsAccessibility from 'highcharts/modules/accessibility';\r\nimport ReactHighcharts from 'highcharts-react-official'\r\nimport { Box } from \"@mui/system\";\r\nHighchartsExporting(Highcharts);\r\nHighchartsExportData(Highcharts);\r\nHighchartsAccessibility(Highcharts);\r\n\r\nfunction LineChart(props) {\r\n const {\r\n data: initialData,\r\n xAxis,\r\n yAxis,\r\n } = props\r\n \r\n const series = useMemo(() => {\r\n const _initialSeries = []\r\n const _yAxis = Array.isArray(yAxis) && yAxis[0] !== undefined ? yAxis[0] : yAxis\r\n \r\n console.log(_yAxis, yAxis, '_yAxis')\r\n initialData.sort((a, b) => {\r\n if(a[xAxis] && b[xAxis]){\r\n return new Date(a[xAxis]).getTime() - new Date(b[xAxis]).getTime()\r\n }\r\n return 1;\r\n })\r\n .map(item => {\r\n let _x = new Date(item[xAxis]).getTime()\r\n if(!isNaN(item[_yAxis] * 1) && item[_yAxis] !== null){\r\n _initialSeries.push({\r\n x: _x,\r\n y: isNaN(item[_yAxis] * 1) ? null : item[_yAxis] * 1,\r\n })\r\n }\r\n })\r\n console.log(_yAxis, xAxis, _initialSeries, '_initialSeries')\r\n return [{\r\n data: _initialSeries\r\n }]\r\n }, [\r\n initialData,\r\n yAxis,\r\n xAxis,\r\n ])\r\n const configStock = useMemo(() => {\r\n return {\r\n chart: {\r\n type: 'line',\r\n zoomType: 'x',\r\n },\r\n title: {\r\n text: ''\r\n },\r\n xAxis: {\r\n crosshair: true,\r\n type: \"datetime\",\r\n labels: {\r\n formatter: function() {\r\n return Highcharts.dateFormat('%b/%e/%Y', this.value);\r\n }\r\n } \r\n },\r\n yAxis: {\r\n min: 0,\r\n title: {\r\n text: yAxis ? yAxis.split('_').join(\" \") : ''\r\n },\r\n },\r\n plotOptions: {\r\n line: {\r\n pointPadding: 0.2,\r\n borderWidth: 0\r\n }\r\n },\r\n series: series\r\n }\r\n }, [series, yAxis])\r\n \r\n return (\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n )\r\n}\r\n\r\nexport default LineChart","import React, { useEffect, useState } from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport clsx from 'clsx';\r\nimport { makeStyles } from \"@mui/styles\";\r\nimport _ from 'underscore'\r\n\r\nimport {\r\n Dialog,\r\n DialogActions,\r\n DialogContent,\r\n DialogTitle,\r\n lighten,\r\n IconButton,\r\n Tooltip,\r\n Grid,\r\n Box,\r\n FormControl,\r\n FormLabel,\r\n FormGroup,\r\n FormControlLabel,\r\n Checkbox,\r\n Popover,\r\n Button,\r\n Typography,\r\n RadioGroup,\r\n Radio,\r\n Autocomplete,\r\n TextField\r\n} from \"@mui/material\";\r\nimport SettingsIcon from '@mui/icons-material/Settings';\r\nimport DonutLargeIcon from '@mui/icons-material/DonutLarge';\r\nimport CustomFormInput from 'components/common/Base/CustomFormInput';\r\nimport LineChart from './Preview/Line';\r\n\r\nimport BarChartIcon from '@mui/icons-material/BarChart';\r\nimport LineChartSvg from 'assets/images/chart/Line.svg'\r\nimport PointMarkerSvg from 'assets/images/chart/PointMarker.svg'\r\nimport ColumnRangeSvg from 'assets/images/chart/ColumnRange.svg'\r\nimport AreaChartSvg from 'assets/images/chart/Area.svg'\r\nimport AreaRangeChartSvg from 'assets/images/chart/AreaRange.svg'\r\nimport HorizontalBarChart from 'assets/images/chart/HorizontalBar.svg'\r\nimport ScatterLineChart from 'assets/images/chart/ScatterLine.svg'\r\nimport DepthChart from 'assets/images/chart/DepthChart.svg'\r\n\r\nconst useStyles = makeStyles((theme) => ({\r\n root: {\r\n padding: 0\r\n },\r\n DialogContent: {\r\n '& .MuiDialog-paper': {\r\n width: '90%',\r\n maxWidth: '60rem',\r\n }\r\n },\r\n IconButton: {\r\n padding: 0,\r\n marginLeft: '10px'\r\n },\r\n highlight:\r\n theme.palette.type === 'light'\r\n ? {\r\n color: theme.palette.secondary.main,\r\n backgroundColor: lighten(theme.palette.secondary.light, 0.85),\r\n }\r\n : {\r\n color: theme.palette.text.primary,\r\n backgroundColor: theme.palette.secondary.dark,\r\n },\r\n title: {\r\n flex: '1 1 100%',\r\n },\r\n BorderedBox: {\r\n display: 'flex',\r\n flexFlow: 'column',\r\n border: '1px solid #e0e0e0',\r\n borderRadius: 4,\r\n minHeight: '100px',\r\n height: '100%',\r\n padding: '10px',\r\n maxHeight: '500px',\r\n overflow: 'auto',\r\n },\r\n PreviewBox: {\r\n backgroundColor: '#eef1f6'\r\n },\r\n PreviewTitle: {\r\n color: 'black',\r\n fontSize: '.75rem'\r\n },\r\n popoverInner:{\r\n height: 400,\r\n overflow: 'auto',\r\n padding: '10px',\r\n display: 'flex',\r\n flexFlow: 'column'\r\n },\r\n Buttons:{\r\n display: 'flex',\r\n flexDirection: 'initial',\r\n borderBottom: 'solid 1px #f1f1f1',\r\n marginBottom: '3px',\r\n '& > button': {\r\n fontSize: '12px',\r\n padding: '3px 4px',\r\n marginRight: '2px'\r\n }\r\n },\r\n FieldSet: {\r\n margin: 0,\r\n flex: 1,\r\n overflow: 'auto'\r\n },\r\n filterWrap: {\r\n padding: '17px'\r\n // display: 'flex',\r\n // '& > div': {\r\n // flex: 1\r\n // }\r\n },\r\n FormGroup: {\r\n marginBottom: '10px'\r\n },\r\n FormLabel: {\r\n display: 'block',\r\n marginBottom: '3px',\r\n fontFamily: 'system-ui',\r\n textTransform: 'uppercase'\r\n },\r\n FormControl: {\r\n width: '100%',\r\n padding: '5px 4px',\r\n borderRadius: '4px',\r\n border: 'solid 1px #a8a8a8',\r\n '&:focus': {\r\n outline: 'none',\r\n boxShadow: '0 0 4px -1px #2bffc6'\r\n }\r\n },\r\n CheckboxControl:{\r\n marginBottom: '0',\r\n '& span': {\r\n fontSize: '13px'\r\n }\r\n },\r\n Section: {\r\n position: 'relative',\r\n borderBottom: 'solid 1px #ede2e2',\r\n paddingBottom: '11px',\r\n marginBottom: 10,\r\n '&::before': {\r\n content: \"''\",\r\n top: 24,\r\n left: '0',\r\n height: 'calc(100% - 24px)',\r\n position: 'absolute',\r\n background: '#ede2e2',\r\n width: '1px',\r\n },\r\n },\r\n SectionTitle: {\r\n color: 'black',\r\n fontSize: 13,\r\n paddingLeft: 19\r\n },\r\n SubSection: {\r\n position: 'relative',\r\n paddingLeft: '20px',\r\n paddingTop: '4px',\r\n '&::before': {\r\n content: \"''\",\r\n top: '15px',\r\n left: '1px',\r\n width: '13px',\r\n height: '1px',\r\n position: 'absolute',\r\n background: '#ede2e2',\r\n },\r\n },\r\n CategoryRadio: {\r\n '& .MuiFormControlLabel-root': {\r\n margin: 0,\r\n marginBottom: 6,\r\n '& .MuiRadio-root': {\r\n padding: 0,\r\n transform: 'scale(0.8)'\r\n },\r\n '& .MuiFormControlLabel-label': {\r\n fontSize: '0.75rem'\r\n }\r\n }\r\n },\r\n Text: {\r\n fontSize: '.75rem',\r\n color: 'black'\r\n },\r\n CategoryEntity: {\r\n paddingTop: '7px',\r\n paddingLeft: '24px',\r\n },\r\n ChartItem: {\r\n cursor: 'pointer',\r\n margin: '3px 2px',\r\n width: '40px',\r\n height: '40px',\r\n fontSize: '13px',\r\n paddingTop: '0.25rem',\r\n paddingBottom: '0.25rem',\r\n backgroundColor: '#eef1f6',\r\n display: 'flex',\r\n alignItems: 'center',\r\n justifyContent: 'center',\r\n '& a': {\r\n color: 'black'\r\n },\r\n '&.selected': {\r\n boxShadow: '0px 0px 3px -1px black',\r\n background: '#2196f3',\r\n '& a': {\r\n color: 'white'\r\n }\r\n },\r\n '& > img': {\r\n width: '23px',\r\n '&.Rotated90Deg': {\r\n transform: 'rotate(90deg)'\r\n }\r\n }\r\n },\r\n}));\r\n \r\nconst formulas = [\r\n { label: 'Sum', value: 'sum' },\r\n { label: 'Avg', value: 'avg' },\r\n { label: 'Maximum', value: 'Maximum' },\r\n { label: 'Minimum', value: 'Minimum' },\r\n { label: 'Count of Rows', value: 'count' },\r\n]\r\nconst chartTypes = [\r\n { val: 'line', label: 'Line', svg: LineChartSvg},\r\n { val: 'donut', label: 'Donut', icon: () => },\r\n { val: 'area', label: 'Area', svg: AreaChartSvg},\r\n { val: 'arearange', label: 'Area Range', svg: AreaRangeChartSvg},\r\n { val: 'column', label: 'Column', icon: () => },\r\n { val: 'bar', label: 'Bar', svg: HorizontalBarChart },\r\n { val: 'columnrange', label: 'Column Range', svg: ColumnRangeSvg},\r\n { val: 'point-marker', label: 'Point Marker', svg: PointMarkerSvg},\r\n { val: 'scatter-line', label: 'Scatter Marker Line', svg: ScatterLineChart},\r\n { val: 'depth-chart', label: 'Depth Chart', svg: DepthChart},\r\n];\r\n\r\nconst ChartSetting = (props) => {\r\n const { \r\n data,\r\n fields: initialFields = [],\r\n } = props\r\n const classes = useStyles();\r\n const [fields, setFields] = useState([])\r\n const [open, setOpen] = useState(false)\r\n const [chartType, setChartType] = useState('line')\r\n const [xAxis, setXAxis] = useState('year')\r\n const [formula, setFormula] = useState('sum')\r\n const [yAxis, setYAxis] = useState('actual')\r\n const [categoryBy, setCategorBy] = useState('uid')\r\n const [groupBy, setGroupBy] = useState('uid')\r\n const [entities, setEntities] = useState([])\r\n const [entityType, setEntityType] = useState('multiple')\r\n const [selectedEntity, setSelectedEntity] = useState([])\r\n \r\n useEffect(() => {\r\n const _fields = []\r\n initialFields.map(f => {\r\n _fields.push({\r\n label: f.id,\r\n value: f.id\r\n })\r\n })\r\n setFields([..._fields])\r\n }, [initialFields])\r\n\r\n useEffect(() => {\r\n let splittedData = []\r\n if(categoryBy && Array.isArray(data)){\r\n splittedData = _.groupBy(data, function(i){ return i[categoryBy] });\r\n const _entities = _.keys(splittedData).map(item => {\r\n return { label: item, value: item }\r\n });\r\n setEntities([..._entities])\r\n }\r\n }, [\r\n data, categoryBy\r\n ])\r\n \r\n const handleClose = () => {\r\n setOpen(false)\r\n }\r\n return (\r\n <>\r\n \r\n {\r\n setOpen(true)\r\n }}>\r\n \r\n \r\n \r\n \r\n \r\n {\"Chart Settings\"}\r\n \r\n \r\n \r\n \r\n \r\n \r\n {\r\n chartTypes.map((item,index) => {\r\n return {\r\n setChartType(item.val)\r\n }}>\r\n \r\n {\r\n item.svg ? \r\n :\r\n item.icon ?\r\n item.icon() :\r\n item.label\r\n }\r\n \r\n \r\n })\r\n }\r\n \r\n {\r\n chartType === 'donut' ? (\r\n <>\r\n \r\n Split By\r\n \r\n { setCategorBy(val) }}\r\n />\r\n \r\n \r\n \r\n option.label}\r\n defaultValue={null}\r\n // defaultValue={[]}\r\n renderInput={(params) => (\r\n \r\n //
\r\n // \r\n //
\r\n )}\r\n onChange={(e, newValue) => {\r\n // if(entityType === 'single'){\r\n // setSelectedEntity([newValue.value])\r\n // }else{\r\n // setSelectedEntity(newValue.map(item => item.value)) \r\n // }\r\n }}\r\n />\r\n
\r\n
\r\n \r\n Segment By\r\n \r\n { setCategorBy(val) }}\r\n />\r\n \r\n \r\n \r\n Segment Size\r\n \r\n { setFormula(val) }}\r\n />\r\n \r\n \r\n \r\n ) : (\r\n <>\r\n \r\n Split By\r\n \r\n { setCategorBy(val) }}\r\n />\r\n \r\n \r\n \r\n {\r\n const _entityType = e.target.value\r\n let _selectedEntity = []\r\n if(_entityType === 'single'){\r\n if(Array.isArray(selectedEntity) && selectedEntity.length > 0){\r\n _selectedEntity = selectedEntity[0]\r\n }\r\n }\r\n if(_selectedEntity !== undefined){\r\n setSelectedEntity(_selectedEntity)\r\n }\r\n setEntityType(_entityType)\r\n }}>\r\n } label=\"None\" />\r\n } label=\"Single Selection\" />\r\n } label=\"Multiple Selection\" />\r\n \r\n \r\n \r\n \r\n \r\n option.label}\r\n defaultValue={entityType === 'single' ? (selectedEntity[0] || null) : selectedEntity}\r\n // defaultValue={[]}\r\n multiple={entityType === 'multiple'}\r\n renderInput={(params) => (\r\n \r\n //
\r\n // \r\n //
\r\n )}\r\n onChange={(e, newValue) => {\r\n if(entityType === 'single'){\r\n setSelectedEntity([newValue.value])\r\n }else{\r\n setSelectedEntity(newValue.map(item => item.value)) \r\n }\r\n }}\r\n />\r\n
\r\n
\r\n \r\n Y Axis\r\n \r\n { setGroupBy(val) }}\r\n />\r\n \r\n \r\n { setYAxis(val) }}\r\n />\r\n \r\n \r\n { setFormula(val) }}\r\n />\r\n \r\n \r\n \r\n X Axis\r\n \r\n { setXAxis(val) }}\r\n />\r\n \r\n \r\n \r\n )\r\n }\r\n
\r\n
\r\n \r\n \r\n Preview\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\nChartSetting.propTypes = {\r\n};\r\n\r\nexport default ChartSetting","import React, { useMemo } from \"react\";\r\n\r\nimport 'highcharts/css/stocktools/gui.scss'\r\nimport 'highcharts/css/annotations/popup.scss'\r\n\r\nimport moment from 'moment'\r\nimport _ from 'underscore'\r\nimport { AdapterDateFns } from '@mui/x-date-pickers/AdapterDateFns';\r\nimport { LocalizationProvider } from '@mui/x-date-pickers/LocalizationProvider';\r\n\r\nimport Highcharts from 'highcharts/highcharts'\r\nimport HighchartsExporting from 'highcharts/modules/exporting';\r\nimport HighchartsExportData from 'highcharts/modules/export-data';\r\nimport HighchartsAccessibility from 'highcharts/modules/accessibility';\r\nimport ReactHighcharts from 'highcharts-react-official'\r\nimport { Box } from \"@mui/system\";\r\nHighchartsExporting(Highcharts);\r\nHighchartsExportData(Highcharts);\r\nHighchartsAccessibility(Highcharts);\r\n\r\nfunction TestChart(props) {\r\n const configStock = useMemo(() => {\r\n return {\r\n title: {\r\n text: 'Test Chart for view'\r\n },\r\n xAxis: {\r\n categories: ['Jet fuel', 'Duty-free diesel', 'Petrol', 'Diesel', 'Gas oil']\r\n },\r\n yAxis: {\r\n title: {\r\n text: 'Million liter'\r\n }\r\n },\r\n labels: {\r\n items: [{\r\n html: 'Total liter',\r\n style: {\r\n left: '50px',\r\n top: '18px',\r\n color: ( // theme\r\n Highcharts.defaultOptions.title.style &&\r\n Highcharts.defaultOptions.title.style.color\r\n ) || 'black'\r\n }\r\n }]\r\n },\r\n series: [{\r\n type: 'column',\r\n name: '2020',\r\n data: [59, 83, 65, 228, 184]\r\n }, {\r\n type: 'column',\r\n name: '2021',\r\n data: [24, 79, 72, 240, 167]\r\n }, {\r\n type: 'column',\r\n name: '2022',\r\n data: [58, 88, 75, 250, 176]\r\n }, {\r\n type: 'spline',\r\n name: 'Average',\r\n data: [47, 83.33, 70.66, 239.33, 175.66],\r\n marker: {\r\n lineWidth: 2,\r\n lineColor: Highcharts.getOptions().colors[3],\r\n fillColor: 'white'\r\n }\r\n }, {\r\n type: 'pie',\r\n name: 'Liter',\r\n data: [{\r\n name: '2020',\r\n y: 619,\r\n color: Highcharts.getOptions().colors[0] // 2020 color\r\n }, {\r\n name: '2021',\r\n y: 586,\r\n color: Highcharts.getOptions().colors[1] // 2021 color\r\n }, {\r\n name: '2022',\r\n y: 647,\r\n color: Highcharts.getOptions().colors[2] // 2022 color\r\n }],\r\n center: [100, 80],\r\n size: 100,\r\n showInLegend: false,\r\n dataLabels: {\r\n enabled: false\r\n }\r\n }]\r\n }\r\n }, [])\r\n \r\n return (\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n )\r\n}\r\n\r\nexport default TestChart","import React, { useEffect, useState } from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport clsx from 'clsx';\r\nimport { makeStyles } from \"@mui/styles\";\r\nimport _ from 'underscore'\r\n\r\nimport {\r\n Dialog,\r\n DialogActions,\r\n DialogContent,\r\n DialogTitle,\r\n lighten,\r\n IconButton,\r\n Tooltip,\r\n Grid,\r\n Box,\r\n FormControl,\r\n FormLabel,\r\n FormGroup,\r\n FormControlLabel,\r\n Checkbox,\r\n Popover,\r\n Button,\r\n Typography,\r\n RadioGroup,\r\n Radio,\r\n Autocomplete,\r\n TextField,\r\n ButtonGroup,\r\n List,\r\n ListItem,\r\n ListItemButton,\r\n ListItemIcon,\r\n ListItemText,\r\n Divider,\r\n TableContainer,\r\n TableHead,\r\n TableRow,\r\n TableCell,\r\n TableBody,\r\n Table,\r\n Tabs,\r\n Tab\r\n} from \"@mui/material\";\r\nimport SettingsIcon from '@mui/icons-material/Settings';\r\nimport DonutLargeIcon from '@mui/icons-material/DonutLarge';\r\nimport PieChartIcon from '@mui/icons-material/PieChart';\r\nimport CustomFormInput from 'components/common/Base/CustomFormInput';\r\nimport LineChart from './Preview/Line';\r\n\r\nimport BarChartIcon from '@mui/icons-material/BarChart';\r\nimport LineChartSvg from 'assets/images/chart/Line.svg'\r\nimport PointMarkerSvg from 'assets/images/chart/PointMarker.svg'\r\nimport ColumnRangeSvg from 'assets/images/chart/ColumnRange.svg'\r\nimport AreaChartSvg from 'assets/images/chart/Area.svg'\r\nimport AreaRangeChartSvg from 'assets/images/chart/AreaRange.svg'\r\nimport HorizontalBarChart from 'assets/images/chart/HorizontalBar.svg'\r\nimport ScatterLineChart from 'assets/images/chart/ScatterLine.svg'\r\nimport DepthChart from 'assets/images/chart/DepthChart.svg'\r\nimport { Add, ArrowDropDown, Delete, Edit, Filter, North, SignalCellularAlt, South, TableRows, VisibilityOff, Equalizer as EqualizerIcon, Toc, FormatPaint } from '@mui/icons-material';\r\nimport TestChart from './Preview/TestChart';\r\nimport PreviewChart1 from 'assets/images/chart/preview/PreviewChart1.png'\r\n\r\nconst useStyles = makeStyles((theme) => ({\r\n root: {\r\n padding: 0\r\n },\r\n DialogContent: {\r\n '& .MuiDialog-paper': {\r\n width: '90%',\r\n maxWidth: '100rem',\r\n }\r\n },\r\n MdDialogContent: {\r\n '& .MuiDialog-paper': {\r\n width: '90%',\r\n maxWidth: '500px',\r\n }\r\n },\r\n IconButton: {\r\n padding: 0,\r\n marginLeft: '10px'\r\n },\r\n Txt:{\r\n color: 'black'\r\n },\r\n highlight:\r\n theme.palette.type === 'light'\r\n ? {\r\n color: theme.palette.secondary.main,\r\n backgroundColor: lighten(theme.palette.secondary.light, 0.85),\r\n }\r\n : {\r\n color: theme.palette.text.primary,\r\n backgroundColor: theme.palette.secondary.dark,\r\n },\r\n title: {\r\n flex: '1 1 100%',\r\n },\r\n BorderedBox: {\r\n display: 'flex',\r\n flexFlow: 'column',\r\n border: '1px solid #e0e0e0',\r\n borderRadius: 4,\r\n minHeight: '100px',\r\n height: '100%',\r\n padding: '10px',\r\n maxHeight: '500px',\r\n overflow: 'auto',\r\n },\r\n PreviewBox: {\r\n backgroundColor: '#eef1f6'\r\n },\r\n PreviewTitle: {\r\n color: 'black',\r\n fontSize: '.75rem'\r\n },\r\n popoverInner:{\r\n height: 400,\r\n overflow: 'auto',\r\n padding: '10px',\r\n display: 'flex',\r\n flexFlow: 'column'\r\n },\r\n Buttons:{\r\n display: 'flex',\r\n flexDirection: 'initial',\r\n borderBottom: 'solid 1px #f1f1f1',\r\n marginBottom: '3px',\r\n '& > button': {\r\n fontSize: '12px',\r\n padding: '3px 4px',\r\n marginRight: '2px'\r\n }\r\n },\r\n FieldSet: {\r\n margin: 0,\r\n flex: 1,\r\n overflow: 'auto'\r\n },\r\n filterWrap: {\r\n padding: '17px'\r\n // display: 'flex',\r\n // '& > div': {\r\n // flex: 1\r\n // }\r\n },\r\n FormGroup: {\r\n marginBottom: '10px'\r\n },\r\n FormLabel: {\r\n display: 'block',\r\n marginBottom: '3px',\r\n fontFamily: 'system-ui',\r\n textTransform: 'uppercase'\r\n },\r\n FormControl: {\r\n width: '100%',\r\n padding: '5px 4px',\r\n borderRadius: '4px',\r\n border: 'solid 1px #a8a8a8',\r\n '&:focus': {\r\n outline: 'none',\r\n boxShadow: '0 0 4px -1px #2bffc6'\r\n }\r\n },\r\n CheckboxControl:{\r\n marginBottom: '0',\r\n '& span': {\r\n fontSize: '13px'\r\n }\r\n },\r\n Section: {\r\n position: 'relative',\r\n borderBottom: 'solid 1px #ede2e2',\r\n paddingBottom: '11px',\r\n marginBottom: 10,\r\n '&::before': {\r\n content: \"''\",\r\n top: 24,\r\n left: '0',\r\n height: 'calc(100% - 24px)',\r\n position: 'absolute',\r\n background: '#ede2e2',\r\n width: '1px',\r\n },\r\n },\r\n SectionTitle: {\r\n color: 'black',\r\n fontSize: 13,\r\n paddingLeft: 19\r\n },\r\n SubSection: {\r\n position: 'relative',\r\n paddingLeft: '20px',\r\n paddingTop: '4px',\r\n '&::before': {\r\n content: \"''\",\r\n top: '15px',\r\n left: '1px',\r\n width: '13px',\r\n height: '1px',\r\n position: 'absolute',\r\n background: '#ede2e2',\r\n },\r\n },\r\n CategoryRadio: {\r\n '& .MuiFormControlLabel-root': {\r\n margin: 0,\r\n marginBottom: 6,\r\n '& .MuiRadio-root': {\r\n padding: 0,\r\n transform: 'scale(0.8)'\r\n },\r\n '& .MuiFormControlLabel-label': {\r\n fontSize: '0.75rem'\r\n }\r\n }\r\n },\r\n Text: {\r\n fontSize: '.75rem',\r\n color: 'black'\r\n },\r\n CategoryEntity: {\r\n paddingTop: '7px',\r\n paddingLeft: '24px',\r\n },\r\n ChartItem: {\r\n cursor: 'pointer',\r\n margin: '3px 2px',\r\n width: '40px',\r\n height: '40px',\r\n fontSize: '13px',\r\n paddingTop: '0.25rem',\r\n paddingBottom: '0.25rem',\r\n backgroundColor: '#eef1f6',\r\n display: 'flex',\r\n alignItems: 'center',\r\n justifyContent: 'center',\r\n '& a': {\r\n color: 'black'\r\n },\r\n '&.selected': {\r\n boxShadow: '0px 0px 3px -1px black',\r\n background: '#2196f3',\r\n '& a': {\r\n color: 'white'\r\n }\r\n },\r\n '& > img': {\r\n width: '23px',\r\n '&.Rotated90Deg': {\r\n transform: 'rotate(90deg)'\r\n }\r\n }\r\n },\r\n ListItemText: {\r\n fontSize: 14\r\n },\r\n ListItemButton: {\r\n padding: '5px 11px'\r\n },\r\n ListItemIcon: {\r\n minWidth: 40,\r\n },\r\n ViewModeBtn: {\r\n border: 'solid 1px #acb8c5',\r\n borderRadius: '5px',\r\n marginLeft: '8px',\r\n marginBottom: '9px',\r\n '&.selected': {\r\n background: '#1976d2',\r\n borderColor: '#1976d2',\r\n color: 'white',\r\n }\r\n },\r\n SelectedIcon: {\r\n color: '#1976d2',\r\n },\r\n Tabs: {\r\n borderBottom: 'solid 1px #e3e8ed'\r\n },\r\n ChartPreivewSlot: {\r\n width: '100%',\r\n border: 'solid 1px #c1a5a5',\r\n minHeight: '100px',\r\n background: '#eef1f6',\r\n display: 'flex',\r\n alignItems: 'center',\r\n justifyContent: 'center',\r\n marginTop: '10px',\r\n borderRadius: '2px',\r\n },\r\n SideIconBtn: {\r\n margin: '10px 0'\r\n }\r\n}));\r\n \r\nconst formulas = [\r\n { label: 'Sum', value: 'sum' },\r\n { label: 'Avg', value: 'avg' },\r\n { label: 'Maximum', value: 'Maximum' },\r\n { label: 'Minimum', value: 'Minimum' },\r\n { label: 'Count of Rows', value: 'count' },\r\n]\r\nconst chartTypes = [\r\n { val: 'line', label: 'Line', svg: LineChartSvg},\r\n { val: 'donut', label: 'Donut', icon: () => },\r\n { val: 'area', label: 'Area', svg: AreaChartSvg},\r\n { val: 'arearange', label: 'Area Range', svg: AreaRangeChartSvg},\r\n { val: 'column', label: 'Column', icon: () => },\r\n { val: 'bar', label: 'Bar', svg: HorizontalBarChart },\r\n { val: 'columnrange', label: 'Column Range', svg: ColumnRangeSvg},\r\n { val: 'point-marker', label: 'Point Marker', svg: PointMarkerSvg},\r\n { val: 'scatter-line', label: 'Scatter Marker Line', svg: ScatterLineChart},\r\n { val: 'depth-chart', label: 'Depth Chart', svg: DepthChart},\r\n];\r\nconst barChartTypes = [\r\n { val: 'column', label: 'Column', icon: () => },\r\n { val: 'bar', label: 'Bar', svg: HorizontalBarChart },\r\n { val: 'columnrange', label: 'Column Range', svg: ColumnRangeSvg},\r\n { val: 'depth-chart', label: 'Depth Chart', svg: DepthChart},\r\n];\r\nconst lineChartTypes = [\r\n { val: 'line', label: 'Line', svg: LineChartSvg},\r\n { val: 'point-marker', label: 'Point Marker', svg: PointMarkerSvg},\r\n { val: 'scatter-line', label: 'Scatter Marker Line', svg: ScatterLineChart},\r\n];\r\nconst areaChartTypes = [\r\n { val: 'area', label: 'Area', svg: AreaChartSvg},\r\n { val: 'arearange', label: 'Area Range', svg: AreaRangeChartSvg},\r\n];\r\nconst donutChartTypes = [\r\n { val: 'donut', label: 'Donut', icon: () => },\r\n { val: 'pie', label: 'Pie', icon: () => },\r\n];\r\n\r\nconst DataLogistic = (props) => {\r\n const { \r\n data,\r\n fields: initialFields = [],\r\n } = props\r\n const classes = useStyles();\r\n const [fields, setFields] = useState([])\r\n const [open, setOpen] = useState(false)\r\n const [chartType, setChartType] = useState('line')\r\n const [xAxis, setXAxis] = useState('year')\r\n const [formula, setFormula] = useState('sum')\r\n const [yAxis, setYAxis] = useState('actual')\r\n const [categoryBy, setCategorBy] = useState('uid')\r\n const [groupBy, setGroupBy] = useState('uid')\r\n const [entities, setEntities] = useState([])\r\n const [entityType, setEntityType] = useState('multiple')\r\n const [selectedEntity, setSelectedEntity] = useState([])\r\n const [viewMode, setViewMode] = useState('table')\r\n const [settingViewMode, setSettingViewMode] = useState(null)\r\n \r\n\r\n const [measureAnchorEl, setMeasureAnchorEl] = useState(null);\r\n const handleMeasureClick = (event) => {\r\n setMeasureAnchorEl(event.currentTarget);\r\n };\r\n const handleMeasurePopoverClose = () => {\r\n setMeasureAnchorEl(null);\r\n };\r\n const openMeasurePop = Boolean(measureAnchorEl);\r\n\r\n const [newMeasureAnchorEl, setNewMeasureAnchorEl] = useState(null);\r\n const handleNewMeasureClick = (event) => {\r\n setNewMeasureAnchorEl(event.currentTarget);\r\n };\r\n const handleNewMeasurePopoverClose = () => {\r\n setNewMeasureAnchorEl(null);\r\n };\r\n const openNewMeasurePop = Boolean(newMeasureAnchorEl);\r\n\r\n \r\n const [newGroupAnchorEl, setNewGroupAnchorEl] = useState(null);\r\n const handleNewGroupClick = (event) => {\r\n setNewGroupAnchorEl(event.currentTarget);\r\n };\r\n const handleNewGroupPopoverClose = () => {\r\n setNewGroupAnchorEl(null);\r\n };\r\n const openNewGroupPop = Boolean(newGroupAnchorEl);\r\n\r\n const [tabValue, setTabValue] = useState(0);\r\n\r\n const handleTabeChange = (event, newValue) => {\r\n setTabValue(newValue);\r\n };\r\n\r\n const [openEdit, setOpenEdit] = useState(false)\r\n const handleEditClose = () => {\r\n setOpenEdit(false)\r\n }\r\n\r\n useEffect(() => {\r\n const _fields = []\r\n initialFields.map(f => {\r\n _fields.push({\r\n label: f.id,\r\n value: f.id\r\n })\r\n })\r\n setFields([..._fields])\r\n }, [initialFields])\r\n\r\n useEffect(() => {\r\n let splittedData = []\r\n if(categoryBy && Array.isArray(data)){\r\n splittedData = _.groupBy(data, function(i){ return i[categoryBy] });\r\n const _entities = _.keys(splittedData).map(item => {\r\n return { label: item, value: item }\r\n });\r\n setEntities([..._entities])\r\n }\r\n }, [\r\n data, categoryBy\r\n ])\r\n \r\n const handleClose = () => {\r\n setOpen(false)\r\n }\r\n return (\r\n <>\r\n \r\n {\r\n setOpen(true)\r\n }}>\r\n \r\n \r\n \r\n \r\n \r\n {\"FORMAT DATA\"}\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 viewMode === 'chart' ? (\r\n <>\r\n \r\n Y Axis\r\n \r\n \r\n \r\n Sum of DataValue\r\n \r\n \r\n \r\n \r\n \r\n \r\n Maximum of DataValue\r\n \r\n \r\n \r\n \r\n }\r\n variant=\"outlined\"\r\n sx={{ width: '100%' }}\r\n onClick={handleNewMeasureClick}\r\n >\r\n Add Y Axis\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n X Axis\r\n \r\n \r\n \r\n Record Date\r\n \r\n \r\n \r\n \r\n }\r\n variant=\"outlined\"\r\n sx={{ width: '100%' }}\r\n onClick={handleNewGroupClick}\r\n >\r\n Add\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n Segment By\r\n \r\n \r\n \r\n Average\r\n \r\n \r\n \r\n \r\n \r\n ) : (\r\n <>\r\n \r\n Measures\r\n \r\n \r\n \r\n Sum of DataValue\r\n \r\n \r\n \r\n \r\n \r\n \r\n Maximum of DataValue\r\n \r\n \r\n \r\n \r\n }\r\n variant=\"outlined\"\r\n sx={{ width: '100%' }}\r\n onClick={handleNewMeasureClick}\r\n >\r\n Add Measure\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n Group By\r\n \r\n \r\n \r\n Record Date\r\n \r\n \r\n \r\n \r\n }\r\n variant=\"outlined\"\r\n sx={{ width: '100%' }}\r\n onClick={handleNewGroupClick}\r\n >\r\n Add\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 {setViewMode('chart')}}>\r\n \r\n \r\n \r\n \r\n {setViewMode('table')}}>\r\n \r\n \r\n \r\n \r\n \r\n \r\n {\r\n viewMode === 'chart' ? (\r\n <>\r\n \r\n \r\n ) : (\r\n \r\n \r\n \r\n \r\n Record Date\r\n Sum of Data Value\r\n Maximum of Data Value\r\n \r\n \r\n \r\n \r\n 2022-02\r\n 10,086,457\r\n 11,086,457\r\n \r\n \r\n 2022-03\r\n 9,086,457\r\n 9,186,457\r\n \r\n \r\n 2022-04\r\n 6,086,457\r\n 9,186,457\r\n \r\n \r\n 2022-04\r\n 6,006,457\r\n 7,186,457\r\n \r\n \r\n \r\n \r\n )\r\n }\r\n \r\n \r\n \r\n {\r\n settingViewMode !== null && (\r\n settingViewMode === 'chart' ? (\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {\r\n tabValue == 0 ? (\r\n <>\r\n \r\n Bar\r\n \r\n {\r\n barChartTypes.map((item,index) => {\r\n return {\r\n setChartType(item.val)\r\n }}>\r\n \r\n {\r\n item.svg ? \r\n :\r\n item.icon ?\r\n item.icon() :\r\n item.label\r\n }\r\n \r\n \r\n })\r\n }\r\n \r\n \r\n \r\n Line\r\n \r\n {\r\n lineChartTypes.map((item,index) => {\r\n return {\r\n setChartType(item.val)\r\n }}>\r\n \r\n {\r\n item.svg ? \r\n :\r\n item.icon ?\r\n item.icon() :\r\n item.label\r\n }\r\n \r\n \r\n })\r\n }\r\n \r\n \r\n \r\n Area\r\n \r\n {\r\n areaChartTypes.map((item,index) => {\r\n return {\r\n setChartType(item.val)\r\n }}>\r\n \r\n {\r\n item.svg ? \r\n :\r\n item.icon ?\r\n item.icon() :\r\n item.label\r\n }\r\n \r\n \r\n })\r\n }\r\n \r\n \r\n \r\n Donut & Pie\r\n \r\n {\r\n donutChartTypes.map((item,index) => {\r\n return {\r\n setChartType(item.val)\r\n }}>\r\n \r\n {\r\n item.svg ? \r\n :\r\n item.icon ?\r\n item.icon() :\r\n item.label\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 Chart Preview element 2\r\n \r\n \r\n Chart Preview element 3\r\n \r\n \r\n )\r\n }\r\n \r\n \r\n ) : settingViewMode === 'format' ? (\r\n \r\n Legend\r\n \r\n Grid\r\n \r\n Tooltip\r\n \r\n \r\n ) : (\r\n \r\n Table Formation Types\r\n \r\n )\r\n )\r\n }\r\n \r\n \r\n {\r\n if(settingViewMode === 'chart'){\r\n setSettingViewMode(null)\r\n }else{\r\n setSettingViewMode('chart')\r\n }\r\n }}>\r\n \r\n \r\n \r\n \r\n {\r\n if(settingViewMode === 'table'){\r\n setSettingViewMode(null)\r\n }else{\r\n setSettingViewMode('table')\r\n }\r\n }}>\r\n \r\n \r\n \r\n \r\n \r\n {\r\n if(settingViewMode === 'format'){\r\n setSettingViewMode(null)\r\n }else{\r\n setSettingViewMode('format')\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 { setFormula(val) }}\r\n />\r\n { setFormula(val) }}\r\n />\r\n \r\n \r\n \r\n \r\n { setFormula(val) }}\r\n />\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {\"Edit Measure\"}\r\n \r\n \r\n \r\n Label\r\n \r\n \r\n {/* */}\r\n \r\n Calculation\r\n \r\n \r\n \r\n Formula\r\n \r\n \r\n \r\n \r\n \r\n );\r\n };\r\n \r\nDataLogistic.propTypes = {\r\n};\r\n\r\nexport default DataLogistic","import React, { useEffect, useMemo, useState } from 'react'\r\nimport { compose } from \"recompose\"\r\nimport { connect, useDispatch } from \"react-redux\"\r\nimport { withRouter } from \"react-router\"\r\nimport _ from \"underscore\"\r\n\r\nimport { makeStyles } from \"@mui/styles\";\r\nimport {\r\n Box,\r\n Table,\r\n TableBody,\r\n TableCell,\r\n TableContainer,\r\n TablePagination,\r\n TableRow,\r\n Paper,\r\n Popover,\r\n Button,\r\n IconButton,\r\n TableHead,\r\n Typography,\r\n ClickAwayListener,\r\n Tabs,\r\n Tab\r\n} from \"@mui/material\"\r\nimport ExpandMoreIcon from '@mui/icons-material/ExpandMore'\r\nimport FilterAltIcon from '@mui/icons-material/FilterAlt';\r\n\r\nimport FilterBar from './FilterBar'\r\n\r\nimport { stableSort, getComparator } from 'shared/utilities/tableUtils'\r\nimport { setDatumFilterOptions } from \"store/slices/ComponentSlice\"\r\nimport DataTableColumnFilterPopover from 'components/common/DataTableColumnFilterPopover'\r\nimport ColumnSettingPanel from './ColumnSetting'\r\nimport ChartSetting from './ChartSetting'\r\nimport Close from '@mui/icons-material/Close'\r\nimport StyledTooltip from 'components/common/Base/StyledTooltip'\r\nimport CustomFormInput from 'components/common/Base/CustomFormInput'\r\nimport DataLogistic from './DataLogistic'\r\n// import IndexedDBService from 'shared/system/indexedDB/indexedDB.service'\r\n\r\nconst useStyles = makeStyles((theme) => ({\r\n paper: {\r\n width: '100%',\r\n display: 'flex',\r\n flexFlow: 'column',\r\n height: '100%'\r\n },\r\n IconButton: {\r\n padding: 0,\r\n marginLeft: '10px'\r\n },\r\n TableContainer: {\r\n flex: 1,\r\n overflow: 'auto',\r\n // maxHeight: '300px'\r\n '& th': {\r\n textOverflow: 'ellipsis',\r\n whiteSpace: 'nowrap',\r\n overflow: 'hidden',\r\n maxWidth: '230px',\r\n '& span': {\r\n cursor: 'pointer'\r\n }\r\n },\r\n '&::-webkit-scrollbar': {\r\n width: '10px',\r\n height: '11px'\r\n },\r\n /* Track */\r\n '&::-webkit-scrollbar-track': {\r\n background: '#f1f1f1'\r\n },\r\n\r\n /* Handle */\r\n '&::-webkit-scrollbar-thumb': {\r\n background: '#888'\r\n },\r\n\r\n /* Handle on hover */\r\n '&::-webkit-scrollbar-thumb:hover': {\r\n background: '#555'\r\n },\r\n },\r\n TableContainerRoot: {\r\n overflowX: \"initial\",\r\n },\r\n table: {\r\n minWidth: 750,\r\n },\r\n FilterBox: {\r\n width: '248px',\r\n border: 'solid 1px #aba8a8',\r\n boxShadow: '0 2px 4px 0 rgb(0 0 0 / 40%)'\r\n },\r\n FilterBoxHeader: {\r\n display: 'flex',\r\n padding: '0.75rem',\r\n alignItems: 'center',\r\n borderBottom: 'solid 1px rgb(0 0 0 / 10%)',\r\n paddingBottom: '0.4rem',\r\n },\r\n FilterBoxHeaderTxt: {\r\n flex: 1,\r\n },\r\n FilterBoxBody: {\r\n padding: '0.75rem',\r\n },\r\n FilterItem: {\r\n marginBottom: '10px',\r\n border: 'solid 1px rgb(0 0 0 / 10%)',\r\n borderRadius: '4px',\r\n padding: '12px',\r\n cursor: 'pointer'\r\n },\r\n NewFilterItem: {\r\n background: '#f1e9002e'\r\n },\r\n FilterItemHeader: {\r\n display: 'flex',\r\n alignItems: 'center',\r\n '& button': {\r\n padding: 0,\r\n\r\n },\r\n '& svg': {\r\n fontSize: '20px'\r\n }\r\n },\r\n FilterItemName: {\r\n flex: 1,\r\n fontSize: '12px'\r\n },\r\n FilterItemBody: {\r\n '& p': {\r\n fontSize: '12px'\r\n }\r\n },\r\n visuallyHidden: {\r\n border: 0,\r\n clip: 'rect(0 0 0 0)',\r\n height: 1,\r\n margin: -1,\r\n overflow: 'hidden',\r\n padding: 0,\r\n position: 'absolute',\r\n top: 20,\r\n width: 1,\r\n },\r\n highlightCell: {\r\n padding: '10px',\r\n maxWidth: '400px',\r\n maxHeight: '300px'\r\n },\r\n NoRecord: {\r\n width: '100%',\r\n textAlign: 'center',\r\n padding: 12,\r\n color: 'rgba(0, 0, 0, 0.6) !important'\r\n }\r\n}))\r\n\r\nfunction TabPanel(props) {\r\n const { children, value, index, ...other } = props;\r\n\r\n return (\r\n