diff --git a/packages/chart/index.html b/packages/chart/index.html index b5e2f508b..37128876b 100644 --- a/packages/chart/index.html +++ b/packages/chart/index.html @@ -68,12 +68,12 @@ -
+ - + diff --git a/packages/chart/src/CdcChart.tsx b/packages/chart/src/CdcChart.tsx index 6231d7165..c9a3802e4 100644 --- a/packages/chart/src/CdcChart.tsx +++ b/packages/chart/src/CdcChart.tsx @@ -1,24 +1,33 @@ -import React, { useState, useEffect, useCallback, useRef, useId, useMemo } from 'react' +import React, { useState, useEffect, useCallback, useRef, useId } from 'react' // IE11 import ResizeObserver from 'resize-observer-polyfill' import 'whatwg-fetch' -import * as d3 from 'd3-array' +// Core components import Layout from '@cdc/core/components/Layout' -import Button from '@cdc/core/components/elements/Button' - +import Confirm from '@cdc/core/components/elements/Confirm' +import Error from '@cdc/core/components/elements/Error' +import SkipTo from '@cdc/core/components/elements/SkipTo' +import Title from '@cdc/core/components/ui/Title' +import DataTable from '@cdc/core/components/DataTable' +// Local Components +import LegendWrapper from './components/LegendWrapper' //types import { DimensionsType } from '@cdc/core/types/Dimensions' import { type DashboardConfig } from '@cdc/dashboard/src/types/DashboardConfig' - +import type { TableConfig } from '@cdc/core/components/DataTable/types/TableConfig' +import { AllChartsConfig, ChartConfig } from './types/ChartConfig' +import { type ViewportSize } from './types/ChartConfig' +import { Pivot } from '@cdc/core/types/Table' +import { Runtime } from '@cdc/core/types/Runtime' +import { Label } from './types/Label' // External Libraries -import { scaleOrdinal } from '@visx/scale' import ParentSize from '@visx/responsive/lib/components/ParentSize' import { timeParse, timeFormat } from 'd3-time-format' import Papa from 'papaparse' import parse from 'html-react-parser' import 'react-tooltip/dist/react-tooltip.css' - +import _ from 'lodash' // Primary Components import ConfigContext from './ConfigContext' import PieChart from './components/PieChart' @@ -34,7 +43,7 @@ import defaults from './data/initial-state' import EditorPanel from './components/EditorPanel' import { abbreviateNumber } from './helpers/abbreviateNumber' import { handleChartTabbing } from './helpers/handleChartTabbing' -import { getQuartiles } from './helpers/getQuartiles' + import { handleChartAriaLabels } from './helpers/handleChartAriaLabels' import { lineOptions } from './helpers/lineOptions' import { handleLineType } from './helpers/handleLineType' @@ -44,36 +53,29 @@ import Loading from '@cdc/core/components/Loading' import Filters from '@cdc/core/components/Filters' import MediaControls from '@cdc/core/components/MediaControls' import Annotation from './components/Annotations' - -// Helpers +// Core Helpers +import { DataTransform } from '@cdc/core/helpers/DataTransform' +import { isLegendWrapViewport } from '@cdc/core/helpers/viewports' +import { missingRequiredSections } from '@cdc/core/helpers/missingRequiredSections' +import { filterVizData } from '@cdc/core/helpers/filterVizData' +import { getFileExtension } from '@cdc/core/helpers/getFileExtension' +import { addValuesToFilters } from '@cdc/core/helpers/addValuesToFilters' import { publish, subscribe, unsubscribe } from '@cdc/core/helpers/events' +import { isSolrCsv, isSolrJson } from '@cdc/core/helpers/isSolr' import useDataVizClasses from '@cdc/core/helpers/useDataVizClasses' import numberFromString from '@cdc/core/helpers/numberFromString' import getViewport from '@cdc/core/helpers/getViewport' -import { DataTransform } from '@cdc/core/helpers/DataTransform' import cacheBustingString from '@cdc/core/helpers/cacheBustingString' import isNumber from '@cdc/core/helpers/isNumber' import coveUpdateWorker from '@cdc/core/helpers/coveUpdateWorker' +// Local helpers import { isConvertLineToBarGraph } from './helpers/isConvertLineToBarGraph' -import { isLegendWrapViewport } from '@cdc/core/helpers/viewports' - +import { getBoxPlotConfig } from './helpers/getBoxPlotConfig' +import { getComboChartConfig } from './helpers/getComboChartConfig' +import { getExcludedData } from './helpers/getExcludedData' +import { getColorScale } from './helpers/getColorScale' +// styles import './scss/main.scss' -// load both then config below determines which to use -import DataTable from '@cdc/core/components/DataTable' -import type { TableConfig } from '@cdc/core/components/DataTable/types/TableConfig' -import { getFileExtension } from '@cdc/core/helpers/getFileExtension' -import Title from '@cdc/core/components/ui/Title' -import { AllChartsConfig, ChartConfig } from './types/ChartConfig' -import { Label } from './types/Label' -import { type ViewportSize } from './types/ChartConfig' -import { isSolrCsv, isSolrJson } from '@cdc/core/helpers/isSolr' -import SkipTo from '@cdc/core/components/elements/SkipTo' -import { filterVizData } from '@cdc/core/helpers/filterVizData' -import LegendWrapper from './components/LegendWrapper' -import _ from 'lodash' -import { addValuesToFilters } from '@cdc/core/helpers/addValuesToFilters' -import { Runtime } from '@cdc/core/types/Runtime' -import { Pivot } from '@cdc/core/types/Table' interface CdcChartProps { configUrl?: string @@ -97,7 +99,6 @@ const CdcChart = ({ isDashboard = false, setConfig: setParentConfig, setEditing, - hostname, link, setSharedFilter, setSharedFilterValue, @@ -159,6 +160,33 @@ const CdcChart = ({ return isConvertLineToBarGraph(config.visualizationType, filteredData, config.allowLineToBarGraph) } + const loadConfig = async (configObj: ChartConfig, configUrl: string): PromiseSet all required options to the left and confirm below to display a preview of the chart.
- -{config.runtime.editorErrorMessage}
-Set all required options to the left and confirm below to display a preview of the chart.
+ +{errorMessage}
+