@cdc/map 4.25.3 → 4.25.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.idea/map.iml +12 -0
- package/.idea/modules.xml +8 -0
- package/.idea/vcs.xml +6 -0
- package/dist/cdcmap.js +31254 -32242
- package/examples/hex-colors.json +3 -3
- package/examples/m2.json +32904 -0
- package/examples/private/test.json +470 -1457
- package/examples/private/{mmr.json → wastewatermap.json} +86 -115
- package/index.html +36 -63
- package/package.json +7 -19
- package/src/CdcMap.tsx +56 -1552
- package/src/CdcMapComponent.tsx +608 -0
- package/src/_stories/CdcMap.Legend.Gradient.stories.tsx +10 -0
- package/src/_stories/CdcMap.Legend.stories.tsx +67 -0
- package/src/_stories/CdcMap.Table.stories.tsx +19 -0
- package/src/_stories/CdcMap.stories.tsx +12 -1
- package/src/_stories/UsaMap.NoData.stories.tsx +4 -4
- package/src/_stories/_mock/default-patterns.json +8 -5
- package/src/_stories/_mock/legend-bins.json +428 -0
- package/{examples/private/default-patterns.json → src/_stories/_mock/legends/legend-tests.json} +36 -131
- package/src/cdcMapComponent.styles.css +9 -0
- package/src/components/Annotation/Annotation.Draggable.tsx +27 -26
- package/src/components/Annotation/AnnotationDropdown.tsx +5 -6
- package/src/components/BubbleList.tsx +135 -49
- package/src/components/CityList.tsx +89 -87
- package/src/components/DataTable.tsx +8 -8
- package/src/components/EditorPanel/components/EditorPanel.tsx +823 -885
- package/src/components/EditorPanel/components/Error.tsx +9 -2
- package/src/components/EditorPanel/components/HexShapeSettings.tsx +127 -141
- package/src/components/EditorPanel/components/Panels/Panel.Annotate.tsx +55 -86
- package/src/components/EditorPanel/components/Panels/Panel.PatternSettings.tsx +89 -75
- package/src/components/EditorPanel/components/editorPanel.styles.css +95 -0
- package/src/components/Geo.tsx +9 -1
- package/src/components/GoogleMap/components/GoogleMap.tsx +1 -1
- package/src/components/Legend/components/Legend.tsx +92 -87
- package/src/components/Legend/components/LegendGroup/Legend.Group.tsx +128 -0
- package/src/components/Legend/components/LegendGroup/legend.group.css +27 -0
- package/src/components/Legend/components/LegendItem.Hex.tsx +4 -1
- package/src/components/Legend/components/index.scss +74 -17
- package/src/components/Modal.tsx +17 -7
- package/src/components/NavigationMenu.tsx +11 -9
- package/src/components/UsaMap/components/SingleState/SingleState.CountyOutput.tsx +12 -8
- package/src/components/UsaMap/components/SingleState/SingleState.StateOutput.tsx +4 -4
- package/src/components/UsaMap/components/TerritoriesSection.tsx +33 -10
- package/src/components/UsaMap/components/Territory/Territory.Hexagon.tsx +12 -10
- package/src/components/UsaMap/components/Territory/Territory.Rectangle.tsx +12 -14
- package/src/components/UsaMap/components/Territory/TerritoryShape.ts +2 -1
- package/src/components/UsaMap/components/UsaMap.County.tsx +138 -96
- package/src/components/UsaMap/components/UsaMap.Region.styles.css +72 -0
- package/src/components/UsaMap/components/UsaMap.Region.tsx +56 -103
- package/src/components/UsaMap/components/UsaMap.SingleState.styles.css +10 -0
- package/src/components/UsaMap/components/UsaMap.SingleState.tsx +65 -74
- package/src/components/UsaMap/components/UsaMap.State.tsx +112 -91
- package/src/components/UsaMap/helpers/map.ts +1 -1
- package/src/components/UsaMap/helpers/shapes.ts +20 -7
- package/src/components/WorldMap/WorldMap.tsx +64 -118
- package/src/components/WorldMap/worldMap.styles.css +28 -0
- package/src/components/ZoomControls.tsx +15 -13
- package/src/components/zoomControls.styles.css +53 -0
- package/src/context.ts +17 -9
- package/src/data/initial-state.js +5 -2
- package/src/helpers/addUIDs.ts +150 -0
- package/src/helpers/applyColorToLegend.ts +39 -64
- package/src/helpers/applyLegendToRow.ts +51 -0
- package/src/helpers/colorDistributions.ts +12 -0
- package/src/helpers/constants.ts +44 -0
- package/src/helpers/displayGeoName.ts +9 -2
- package/src/helpers/formatLegendLocation.ts +3 -2
- package/src/helpers/generateColorsArray.ts +2 -1
- package/src/helpers/generateRuntimeData.ts +78 -0
- package/src/helpers/generateRuntimeFilters.ts +63 -0
- package/src/helpers/generateRuntimeLegend.ts +566 -0
- package/src/helpers/generateRuntimeLegendHash.ts +16 -15
- package/src/helpers/getColumnNames.ts +19 -0
- package/src/helpers/getMapContainerClasses.ts +23 -0
- package/src/helpers/getStatePicked.ts +8 -0
- package/src/helpers/handleMapTabbing.ts +31 -0
- package/src/helpers/hashObj.ts +1 -1
- package/src/helpers/index.ts +22 -0
- package/src/helpers/navigationHandler.ts +3 -3
- package/src/helpers/resetLegendToggles.ts +13 -0
- package/src/helpers/setBinNumbers.ts +5 -0
- package/src/helpers/sortSpecialClassesLast.ts +7 -0
- package/src/helpers/tests/getColumnNames.test.ts +52 -0
- package/src/helpers/titleCase.ts +1 -1
- package/src/helpers/toggleLegendActive.ts +25 -0
- package/src/hooks/useApplyTooltipsToGeo.tsx +51 -0
- package/src/hooks/useColumnsRequiredChecker.ts +51 -0
- package/src/hooks/useGeoClickHandler.ts +45 -0
- package/src/hooks/useLegendSeparators.ts +26 -0
- package/src/hooks/useMapLayers.tsx +34 -60
- package/src/hooks/useModal.ts +22 -0
- package/src/hooks/useResizeObserver.ts +4 -5
- package/src/hooks/useStateZoom.tsx +52 -75
- package/src/hooks/useTooltip.ts +2 -3
- package/src/index.jsx +3 -9
- package/src/scss/editor-panel.scss +3 -99
- package/src/scss/main.scss +1 -19
- package/src/scss/map.scss +15 -220
- package/src/store/map.actions.ts +46 -0
- package/src/store/map.reducer.ts +96 -0
- package/src/types/Annotations.ts +24 -0
- package/src/types/MapConfig.ts +23 -3
- package/src/types/MapContext.ts +36 -35
- package/src/types/Modal.ts +1 -0
- package/src/types/RuntimeData.ts +3 -0
- package/examples/private/DEV-9644.json +0 -184
- package/examples/private/DEV-9989.json +0 -229
- package/examples/private/ardi.json +0 -180
- package/examples/private/colors 2.json +0 -416
- package/examples/private/colors.json +0 -416
- package/examples/private/colors.json.zip +0 -0
- package/examples/private/customColors.json +0 -45348
- package/examples/test.json +0 -183
- package/src/helpers/closeModal.ts +0 -9
- package/src/scss/btn.scss +0 -69
- package/src/scss/filters.scss +0 -27
- package/src/scss/variables.scss +0 -1
- /package/src/hooks/{useActiveElement.js → useActiveElement.ts} +0 -0
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
import { MapConfig, Coordinate } from '../types/MapConfig'
|
|
2
|
+
import { GeneratedLegend } from '../hooks/useGenerateRuntimeLegend'
|
|
3
|
+
import { VizFilter } from '@cdc/core/types/VizFilter'
|
|
4
|
+
import { type Action } from '@cdc/core/types/Action'
|
|
5
|
+
import { RuntimeData } from '../types/RuntimeData'
|
|
6
|
+
import { Modal } from '../types/Modal'
|
|
7
|
+
|
|
8
|
+
// Action Types
|
|
9
|
+
type SET_ACCESSIBLE_STATUS = Action<'SET_ACCESSIBLE_STATUS', string>
|
|
10
|
+
type SET_CONFIG = Action<'SET_CONFIG', MapConfig>
|
|
11
|
+
type SET_COVE_LOADED_HAS_RAN = Action<'SET_COVE_LOADED_HAS_RAN', boolean>
|
|
12
|
+
type SET_DISPLAY_PANEL = Action<'SET_DISPLAY_PANEL', boolean>
|
|
13
|
+
type SET_FILTERED_COUNTRY_CODE = Action<'SET_FILTERED_COUNTRY_CODE', string>
|
|
14
|
+
type SET_IS_DRAGGING_ANNOTATION = Action<'SET_IS_DRAGGING_ANNOTATION', boolean>
|
|
15
|
+
type SET_LOADING = Action<'SET_LOADING', boolean>
|
|
16
|
+
type SET_MODAL = Action<'SET_MODAL', Modal>
|
|
17
|
+
type SET_POSITION = Action<'SET_POSITION', { coordinates: Coordinate; zoom: number }>
|
|
18
|
+
type SET_REQUIRED_COLUMNS = Action<'SET_REQUIRED_COLUMNS', string[]>
|
|
19
|
+
type SET_RUNTIME_DATA = Action<'SET_RUNTIME_DATA', RuntimeData>
|
|
20
|
+
type SET_RUNTIME_FILTERS = Action<'SET_RUNTIME_FILTERS', VizFilter[]>
|
|
21
|
+
type SET_RUNTIME_LEGEND = Action<'SET_RUNTIME_LEGEND', GeneratedLegend | []>
|
|
22
|
+
type SET_SCALE = Action<'SET_SCALE', number>
|
|
23
|
+
type SET_STATE_TO_SHOW = Action<'SET_STATE_TO_SHOW', string>
|
|
24
|
+
type SET_TOPO_DATA = Action<'SET_TOPO_DATA', any>
|
|
25
|
+
type SET_TRANSLATE = Action<'SET_TRANSLATE', [number, number]>
|
|
26
|
+
|
|
27
|
+
export type MapActions =
|
|
28
|
+
| SET_ACCESSIBLE_STATUS
|
|
29
|
+
| SET_CONFIG
|
|
30
|
+
| SET_COVE_LOADED_HAS_RAN
|
|
31
|
+
| SET_DISPLAY_PANEL
|
|
32
|
+
| SET_FILTERED_COUNTRY_CODE
|
|
33
|
+
| SET_IS_DRAGGING_ANNOTATION
|
|
34
|
+
| SET_LOADING
|
|
35
|
+
| SET_MODAL
|
|
36
|
+
| SET_POSITION
|
|
37
|
+
| SET_REQUIRED_COLUMNS
|
|
38
|
+
| SET_RUNTIME_DATA
|
|
39
|
+
| SET_RUNTIME_FILTERS
|
|
40
|
+
| SET_RUNTIME_LEGEND
|
|
41
|
+
| SET_SCALE
|
|
42
|
+
| SET_STATE_TO_SHOW
|
|
43
|
+
| SET_TOPO_DATA
|
|
44
|
+
| SET_TRANSLATE
|
|
45
|
+
|
|
46
|
+
export default MapActions
|
|
@@ -0,0 +1,96 @@
|
|
|
1
|
+
import { MapConfig } from '../types/MapConfig'
|
|
2
|
+
import MapActions from './map.actions'
|
|
3
|
+
import defaults from './../data/initial-state'
|
|
4
|
+
import { devToolsWrapper } from '@cdc/core/helpers/withDevTools'
|
|
5
|
+
import _ from 'lodash'
|
|
6
|
+
|
|
7
|
+
export const getInitialState = (configObj = {}): MapState => {
|
|
8
|
+
return {
|
|
9
|
+
dataUrl: configObj.dataUrl || '',
|
|
10
|
+
config: _.merge({}, defaults, configObj),
|
|
11
|
+
loading: false,
|
|
12
|
+
accessibleStatus: '',
|
|
13
|
+
coveLoadedHasRan: false,
|
|
14
|
+
displayPanel: false,
|
|
15
|
+
filteredCountryCode: '',
|
|
16
|
+
isDraggingAnnotation: false,
|
|
17
|
+
topoData: null,
|
|
18
|
+
translate: [0, 0],
|
|
19
|
+
position: { coordinates: [0, 0], zoom: 1 },
|
|
20
|
+
projection: null,
|
|
21
|
+
requiredColumns: [],
|
|
22
|
+
scale: 1,
|
|
23
|
+
modal: null,
|
|
24
|
+
runtimeData: { init: true },
|
|
25
|
+
runtimeFilters: [],
|
|
26
|
+
runtimeLegend: [],
|
|
27
|
+
stateToShow: ''
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
export type MapState = {
|
|
32
|
+
config: MapConfig
|
|
33
|
+
loading: boolean
|
|
34
|
+
accessibleStatus: string
|
|
35
|
+
coveLoadedHasRan: boolean
|
|
36
|
+
displayPanel: boolean
|
|
37
|
+
filteredCountryCode: string
|
|
38
|
+
isDraggingAnnotation: boolean
|
|
39
|
+
topoData: object | null
|
|
40
|
+
translate: number[]
|
|
41
|
+
position: { coordinates: number[]; zoom: number }
|
|
42
|
+
projection: object | null
|
|
43
|
+
requiredColumns: string[]
|
|
44
|
+
scale: number
|
|
45
|
+
modal: object | null
|
|
46
|
+
runtimeData: object
|
|
47
|
+
runtimeFilters: object[]
|
|
48
|
+
runtimeLegend: object[]
|
|
49
|
+
stateToShow: string
|
|
50
|
+
dataUrl: string
|
|
51
|
+
}
|
|
52
|
+
|
|
53
|
+
const reducer = (state: MapState, action: MapActions): MapState => {
|
|
54
|
+
switch (action.type) {
|
|
55
|
+
case 'SET_CONFIG':
|
|
56
|
+
return { ...state, config: action.payload }
|
|
57
|
+
case 'SET_LOADING':
|
|
58
|
+
return { ...state, loading: action.payload }
|
|
59
|
+
case 'SET_ACCESSIBLE_STATUS':
|
|
60
|
+
return { ...state, accessibleStatus: action.payload }
|
|
61
|
+
case 'SET_COVE_LOADED_HAS_RAN':
|
|
62
|
+
return { ...state, coveLoadedHasRan: action.payload }
|
|
63
|
+
case 'SET_DISPLAY_PANEL':
|
|
64
|
+
return { ...state, displayPanel: action.payload }
|
|
65
|
+
case 'SET_FILTERED_COUNTRY_CODE':
|
|
66
|
+
return { ...state, filteredCountryCode: action.payload }
|
|
67
|
+
case 'SET_IS_DRAGGING_ANNOTATION':
|
|
68
|
+
return { ...state, isDraggingAnnotation: action.payload }
|
|
69
|
+
case 'SET_TOPO_DATA':
|
|
70
|
+
return { ...state, topoData: action.payload }
|
|
71
|
+
case 'SET_TRANSLATE':
|
|
72
|
+
return { ...state, translate: action.payload }
|
|
73
|
+
case 'SET_POSITION':
|
|
74
|
+
return { ...state, position: action.payload }
|
|
75
|
+
case 'SET_REQUIRED_COLUMNS':
|
|
76
|
+
return { ...state, requiredColumns: action.payload }
|
|
77
|
+
case 'SET_SCALE':
|
|
78
|
+
return { ...state, scale: action.payload }
|
|
79
|
+
case 'SET_MODAL':
|
|
80
|
+
return { ...state, modal: action.payload }
|
|
81
|
+
case 'SET_RUNTIME_DATA':
|
|
82
|
+
return { ...state, runtimeData: action.payload }
|
|
83
|
+
case 'SET_RUNTIME_FILTERS':
|
|
84
|
+
return { ...state, runtimeFilters: action.payload }
|
|
85
|
+
case 'SET_RUNTIME_LEGEND':
|
|
86
|
+
return { ...state, runtimeLegend: action.payload }
|
|
87
|
+
case 'SET_STATE_TO_SHOW':
|
|
88
|
+
return { ...state, stateToShow: action.payload }
|
|
89
|
+
default:
|
|
90
|
+
return state
|
|
91
|
+
}
|
|
92
|
+
}
|
|
93
|
+
|
|
94
|
+
export const mapReducer = devToolsWrapper(reducer)
|
|
95
|
+
|
|
96
|
+
export type MapReducerType<MapState, MapActions> = (state: MapState, action: MapActions) => MapState
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
type Annotation = {
|
|
2
|
+
/** The x-coordinate of the annotation */
|
|
3
|
+
x: number
|
|
4
|
+
/** The y-coordinate of the annotation */
|
|
5
|
+
y: number
|
|
6
|
+
/** The x-offset for the annotation's text */
|
|
7
|
+
dx: number
|
|
8
|
+
/** The y-offset for the annotation's text */
|
|
9
|
+
dy: number
|
|
10
|
+
/** The opacity level of the annotation */
|
|
11
|
+
opacity: number
|
|
12
|
+
/** The text content of the annotation */
|
|
13
|
+
text: string
|
|
14
|
+
/** The type of connection for the annotation */
|
|
15
|
+
connectionType: string
|
|
16
|
+
edit: {
|
|
17
|
+
/** Indicates if the label can be edited */
|
|
18
|
+
label: boolean
|
|
19
|
+
/** Indicates if the subject can be edited */
|
|
20
|
+
subject: boolean
|
|
21
|
+
}
|
|
22
|
+
/** The type of marker used for the annotation */
|
|
23
|
+
marker: 'arrow' | 'circle'
|
|
24
|
+
}
|
package/src/types/MapConfig.ts
CHANGED
|
@@ -23,7 +23,7 @@ export type MapVisualSettings = {
|
|
|
23
23
|
additionalCityStyles: [] | [{ label: string; column: string; value: string; shape: string }]
|
|
24
24
|
}
|
|
25
25
|
|
|
26
|
-
type PatternSelection = {
|
|
26
|
+
export type PatternSelection = {
|
|
27
27
|
// dropdown selection for getting the column used on a pattern
|
|
28
28
|
dataKey: string
|
|
29
29
|
// text field input to match values found in the column
|
|
@@ -68,9 +68,17 @@ export type HexMapSettings = {
|
|
|
68
68
|
|
|
69
69
|
export type Coordinate = [number, number]
|
|
70
70
|
|
|
71
|
+
export type DataRow = {
|
|
72
|
+
uid?: string // optional 'uid' property
|
|
73
|
+
[key: string]: any // allowing any additional properties with a dynamic key (e.g., for `configPrimaryName`)
|
|
74
|
+
}
|
|
75
|
+
|
|
71
76
|
export type MapConfig = Visualization & {
|
|
72
|
-
|
|
73
|
-
|
|
77
|
+
annotations: Annotation[]
|
|
78
|
+
// map color palette
|
|
79
|
+
color: string
|
|
80
|
+
// custom color palette
|
|
81
|
+
customColors: string[]
|
|
74
82
|
columns: {
|
|
75
83
|
geo: GeoColumnProperties
|
|
76
84
|
primary: PrimaryColumnProperties
|
|
@@ -80,9 +88,13 @@ export type MapConfig = Visualization & {
|
|
|
80
88
|
categorical: { name: string }
|
|
81
89
|
}
|
|
82
90
|
dataUrl: string
|
|
91
|
+
data: DataRow[]
|
|
83
92
|
runtimeDataUrl: string
|
|
84
93
|
filters: VizFilter[]
|
|
85
94
|
general: {
|
|
95
|
+
navigationTarget: '_self' | '_blank'
|
|
96
|
+
subtext: string
|
|
97
|
+
introText: string
|
|
86
98
|
allowMapZoom: boolean
|
|
87
99
|
convertFipsCodes: boolean
|
|
88
100
|
displayAsHex: boolean
|
|
@@ -90,6 +102,8 @@ export type MapConfig = Visualization & {
|
|
|
90
102
|
fullBorder: boolean
|
|
91
103
|
geoBorderColor: string
|
|
92
104
|
geoLabelOverride: string
|
|
105
|
+
// whether to use the old custom quantile scaling method or new custom quantile scaling method
|
|
106
|
+
equalNumberOptIn: boolean
|
|
93
107
|
geoType:
|
|
94
108
|
| 'us'
|
|
95
109
|
| 'us-region'
|
|
@@ -109,6 +123,8 @@ export type MapConfig = Visualization & {
|
|
|
109
123
|
isReversed: boolean
|
|
110
124
|
}
|
|
111
125
|
showDownloadMediaButton: boolean
|
|
126
|
+
showDownloadImgButton: boolean
|
|
127
|
+
showDownloadPdfButton: boolean
|
|
112
128
|
showSidebar: boolean
|
|
113
129
|
showTitle: boolean
|
|
114
130
|
statePicked: {
|
|
@@ -142,6 +158,7 @@ export type MapConfig = Visualization & {
|
|
|
142
158
|
tickRotation: string
|
|
143
159
|
hideBorder: false
|
|
144
160
|
singleColumnLegend: false
|
|
161
|
+
separators?: string
|
|
145
162
|
}
|
|
146
163
|
table: {
|
|
147
164
|
label: string
|
|
@@ -154,6 +171,7 @@ export type MapConfig = Visualization & {
|
|
|
154
171
|
forceDisplay: boolean
|
|
155
172
|
download: boolean
|
|
156
173
|
indexLabel: string
|
|
174
|
+
cellMinWidth: string
|
|
157
175
|
}
|
|
158
176
|
tooltips: {
|
|
159
177
|
appearanceType: 'hover' | 'click'
|
|
@@ -175,6 +193,8 @@ export type MapConfig = Visualization & {
|
|
|
175
193
|
filterBehavior: string
|
|
176
194
|
filterIntro: string
|
|
177
195
|
visual: MapVisualSettings
|
|
196
|
+
// visualization type
|
|
197
|
+
type: 'map'
|
|
178
198
|
// version of the map
|
|
179
199
|
version: Version
|
|
180
200
|
}
|
package/src/types/MapContext.ts
CHANGED
|
@@ -1,51 +1,52 @@
|
|
|
1
|
-
import { type MapConfig } from './MapConfig'
|
|
1
|
+
import { DataRow, type MapConfig } from './MapConfig'
|
|
2
2
|
import { type ViewPort } from '@cdc/core/types/ViewPort'
|
|
3
|
+
import { DimensionsType } from '@cdc/core/types/Dimensions'
|
|
4
|
+
import { VizFilter } from '@cdc/core/types/VizFilter'
|
|
5
|
+
import { type RefObject } from 'react'
|
|
3
6
|
|
|
4
7
|
export type MapContext = {
|
|
5
|
-
applyLegendToRow
|
|
6
|
-
applyTooltipsToGeo
|
|
7
8
|
currentViewport: ViewPort
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
9
|
+
content: { geoName: string; keyedData: Record<string, any> }
|
|
10
|
+
data: DataRow[]
|
|
11
|
+
dimensions: DimensionsType
|
|
12
|
+
displayDataAsText: string | number
|
|
13
|
+
displayGeoName: (key: string, convertFipsCodes: boolean) => string
|
|
14
|
+
filteredCountryCode: string
|
|
15
|
+
generateRuntimeData: (
|
|
16
|
+
configObj: MapConfig,
|
|
17
|
+
filters: VizFilter[],
|
|
18
|
+
hash: number,
|
|
19
|
+
test?: boolean
|
|
20
|
+
) => { [uid: string]: DataRow }
|
|
21
|
+
geoClickHandler: (geoDisplayName: string, geoData: object) => void
|
|
15
22
|
handleCircleClick: Function
|
|
16
23
|
handleDragStateChange: Function
|
|
17
24
|
isDraggingAnnotation: boolean
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
isDebug
|
|
22
|
-
isEditor
|
|
25
|
+
innerContainerRef: RefObject<HTMLDivElement>
|
|
26
|
+
isDashboard: boolean
|
|
27
|
+
isEditor: boolean
|
|
23
28
|
isFilterValueSupported: boolean
|
|
24
|
-
loadConfig
|
|
29
|
+
loadConfig: (configObj: MapConfig) => void
|
|
25
30
|
logo: string
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
31
|
+
mapId: string
|
|
32
|
+
position: 'side' | 'top' | 'bottom'
|
|
33
|
+
resetLegendToggles: Function
|
|
34
|
+
runtimeFilters: Function
|
|
35
|
+
legendMemo: Function
|
|
36
|
+
legendSpecialClassLastMemo: Function
|
|
29
37
|
runtimeLegend
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
setState: (newState: MapConfig) => MapConfig
|
|
39
|
-
state: MapConfig
|
|
40
|
-
viewport
|
|
41
|
-
setStateToShow: (string) => void
|
|
38
|
+
setParentConfig: Function
|
|
39
|
+
setRuntimeData: Function
|
|
40
|
+
setRuntimeFilters: Function
|
|
41
|
+
setRuntimeLegend: Function
|
|
42
|
+
setSharedFilterValue: Function
|
|
43
|
+
setConfig: (newState: MapConfig) => MapConfig
|
|
44
|
+
config: MapConfig
|
|
45
|
+
viewport: ViewPort
|
|
42
46
|
stateToShow: string
|
|
43
47
|
scale: number
|
|
44
48
|
translate: [number, number]
|
|
45
|
-
topoData
|
|
46
|
-
setScale: (number) => void
|
|
47
|
-
setTranslate: ([x, y]: [number, number]) => void
|
|
49
|
+
topoData: object
|
|
48
50
|
runtimeData: Object[]
|
|
49
51
|
tooltipId: string
|
|
50
|
-
setTopoData: Function
|
|
51
52
|
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export type Modal = { geoName: string; keyedData: Record<string, any>[] }
|
|
@@ -1,184 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"annotations": [],
|
|
3
|
-
"general": {
|
|
4
|
-
"geoType": "us",
|
|
5
|
-
"noStateFoundMessage": "Map Unavailable",
|
|
6
|
-
"annotationDropdownText": "Annotations",
|
|
7
|
-
"geoBorderColor": "darkGray",
|
|
8
|
-
"headerColor": "theme-blue",
|
|
9
|
-
"title": "Number, percentage, and proportion of infants born with use of assisted reproductive technology in 2022, by preterm gestational age and female patient’s reporting area of residence at time of treatment",
|
|
10
|
-
"showTitle": false,
|
|
11
|
-
"showSidebar": true,
|
|
12
|
-
"showDownloadButton": true,
|
|
13
|
-
"showDownloadMediaButton": false,
|
|
14
|
-
"displayAsHex": false,
|
|
15
|
-
"displayStateLabels": false,
|
|
16
|
-
"territoriesLabel": "Territories",
|
|
17
|
-
"territoriesAlwaysShow": false,
|
|
18
|
-
"language": "en",
|
|
19
|
-
"geoLabelOverride": "",
|
|
20
|
-
"hasRegions": false,
|
|
21
|
-
"fullBorder": false,
|
|
22
|
-
"type": "data",
|
|
23
|
-
"convertFipsCodes": true,
|
|
24
|
-
"palette": {
|
|
25
|
-
"isReversed": false
|
|
26
|
-
},
|
|
27
|
-
"allowMapZoom": true,
|
|
28
|
-
"hideGeoColumnInTooltip": false,
|
|
29
|
-
"hidePrimaryColumnInTooltip": false,
|
|
30
|
-
"statePicked": {
|
|
31
|
-
"fipsCode": "01",
|
|
32
|
-
"stateName": "Alabama"
|
|
33
|
-
},
|
|
34
|
-
"expandDataTable": false
|
|
35
|
-
},
|
|
36
|
-
"type": "map",
|
|
37
|
-
"color": "sequential-blue-2(MPX)",
|
|
38
|
-
"columns": {
|
|
39
|
-
"geo": {
|
|
40
|
-
"name": "State",
|
|
41
|
-
"label": "Location",
|
|
42
|
-
"tooltip": false,
|
|
43
|
-
"dataTable": true
|
|
44
|
-
},
|
|
45
|
-
"primary": {
|
|
46
|
-
"dataTable": true,
|
|
47
|
-
"tooltip": true,
|
|
48
|
-
"prefix": "",
|
|
49
|
-
"suffix": "",
|
|
50
|
-
"name": "Ranges",
|
|
51
|
-
"label": "",
|
|
52
|
-
"roundToPlace": "1"
|
|
53
|
-
},
|
|
54
|
-
"navigate": {
|
|
55
|
-
"name": ""
|
|
56
|
-
},
|
|
57
|
-
"latitude": {
|
|
58
|
-
"name": ""
|
|
59
|
-
},
|
|
60
|
-
"longitude": {
|
|
61
|
-
"name": ""
|
|
62
|
-
}
|
|
63
|
-
},
|
|
64
|
-
"legend": {
|
|
65
|
-
"descriptions": {
|
|
66
|
-
"0,0": [
|
|
67
|
-
"National Rate: 17.3"
|
|
68
|
-
],
|
|
69
|
-
"0,1": [
|
|
70
|
-
"National Rate: 4.3"
|
|
71
|
-
]
|
|
72
|
-
},
|
|
73
|
-
"specialClasses": [],
|
|
74
|
-
"unified": false,
|
|
75
|
-
"singleColumn": true,
|
|
76
|
-
"singleRow": false,
|
|
77
|
-
"verticalSorted": false,
|
|
78
|
-
"showSpecialClassesLast": false,
|
|
79
|
-
"dynamicDescription": true,
|
|
80
|
-
"type": "category",
|
|
81
|
-
"numberOfItems": 5,
|
|
82
|
-
"position": "side",
|
|
83
|
-
"title": "",
|
|
84
|
-
"style": "circles",
|
|
85
|
-
"subStyle": "linear blocks",
|
|
86
|
-
"tickRotation": "",
|
|
87
|
-
"singleColumnLegend": false,
|
|
88
|
-
"hideBorder": false,
|
|
89
|
-
"categoryValuesOrder": [
|
|
90
|
-
"20.6 - 23.3",
|
|
91
|
-
"23.4 - 28.3",
|
|
92
|
-
"18.5 - 20.5",
|
|
93
|
-
"10.2 - 15.5",
|
|
94
|
-
"15.6 - 18.4"
|
|
95
|
-
]
|
|
96
|
-
},
|
|
97
|
-
"filters": [
|
|
98
|
-
{
|
|
99
|
-
"order": "asc",
|
|
100
|
-
"label": "Select a Measure",
|
|
101
|
-
"columnName": "Year",
|
|
102
|
-
"values": [
|
|
103
|
-
"Percentages of preterm infants conceived through ART",
|
|
104
|
-
"Proportion of infants conceived through ART that were born preterm among all preterm births "
|
|
105
|
-
],
|
|
106
|
-
"active": "Percentages of preterm infants conceived through ART",
|
|
107
|
-
"filterStyle": "dropdown"
|
|
108
|
-
}
|
|
109
|
-
],
|
|
110
|
-
"table": {
|
|
111
|
-
"wrapColumns": false,
|
|
112
|
-
"label": "Data Table",
|
|
113
|
-
"expanded": false,
|
|
114
|
-
"limitHeight": false,
|
|
115
|
-
"height": "",
|
|
116
|
-
"caption": "",
|
|
117
|
-
"showDownloadUrl": false,
|
|
118
|
-
"showDataTableLink": false,
|
|
119
|
-
"showFullGeoNameInCSV": false,
|
|
120
|
-
"forceDisplay": true,
|
|
121
|
-
"download": true,
|
|
122
|
-
"indexLabel": ""
|
|
123
|
-
},
|
|
124
|
-
"tooltips": {
|
|
125
|
-
"appearanceType": "hover",
|
|
126
|
-
"linkLabel": "Learn More",
|
|
127
|
-
"capitalizeLabels": true,
|
|
128
|
-
"opacity": 90
|
|
129
|
-
},
|
|
130
|
-
"visual": {
|
|
131
|
-
"minBubbleSize": 1,
|
|
132
|
-
"maxBubbleSize": 20,
|
|
133
|
-
"extraBubbleBorder": false,
|
|
134
|
-
"cityStyle": "circle",
|
|
135
|
-
"cityStyleLabel": "",
|
|
136
|
-
"showBubbleZeros": false,
|
|
137
|
-
"additionalCityStyles": [],
|
|
138
|
-
"geoCodeCircleSize": 8
|
|
139
|
-
},
|
|
140
|
-
"mapPosition": {
|
|
141
|
-
"coordinates": [
|
|
142
|
-
0,
|
|
143
|
-
30
|
|
144
|
-
],
|
|
145
|
-
"zoom": 1
|
|
146
|
-
},
|
|
147
|
-
"map": {
|
|
148
|
-
"layers": [],
|
|
149
|
-
"patterns": []
|
|
150
|
-
},
|
|
151
|
-
"hexMap": {
|
|
152
|
-
"type": "",
|
|
153
|
-
"shapeGroups": [
|
|
154
|
-
{
|
|
155
|
-
"legendTitle": "",
|
|
156
|
-
"legendDescription": "",
|
|
157
|
-
"items": [
|
|
158
|
-
{
|
|
159
|
-
"key": "",
|
|
160
|
-
"shape": "Arrow Up",
|
|
161
|
-
"column": "",
|
|
162
|
-
"operator": "=",
|
|
163
|
-
"value": ""
|
|
164
|
-
}
|
|
165
|
-
]
|
|
166
|
-
}
|
|
167
|
-
]
|
|
168
|
-
},
|
|
169
|
-
"filterBehavior": "Filter Change",
|
|
170
|
-
"openModal": true,
|
|
171
|
-
"uid": "map1728585388205",
|
|
172
|
-
"dataDescription": {
|
|
173
|
-
"horizontal": false,
|
|
174
|
-
"series": false
|
|
175
|
-
},
|
|
176
|
-
"dataKey": "table - 6 dashboard.csv",
|
|
177
|
-
"version": "4.24.9",
|
|
178
|
-
"editor": {
|
|
179
|
-
"activeFilterValueForDescription": [
|
|
180
|
-
0,
|
|
181
|
-
0
|
|
182
|
-
]
|
|
183
|
-
}
|
|
184
|
-
}
|