@undp/data-viz 2.0.5 → 2.0.7
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/dist/BulletChart.cjs +1 -1
- package/dist/BulletChart.cjs.map +1 -1
- package/dist/BulletChart.d.ts +2 -0
- package/dist/BulletChart.js +515 -508
- package/dist/BulletChart.js.map +1 -1
- package/dist/ChoroplethMap.cjs +1 -1
- package/dist/ChoroplethMap.cjs.map +1 -1
- package/dist/ChoroplethMap.js +68 -68
- package/dist/ChoroplethMap.js.map +1 -1
- package/dist/GraphEl-BcKU0bG1.cjs +2 -0
- package/dist/GraphEl-BcKU0bG1.cjs.map +1 -0
- package/dist/{GraphEl-VtiYqELy.js → GraphEl-CGq1EWRn.js} +70 -8
- package/dist/GraphEl-CGq1EWRn.js.map +1 -0
- package/dist/GriddedGraphs.cjs +1 -1
- package/dist/GriddedGraphs.d.ts +6 -1
- package/dist/GriddedGraphs.js +2 -2
- package/dist/GriddedGraphsFromConfig.d.ts +6 -1
- package/dist/HybridMap.cjs +2 -0
- package/dist/HybridMap.cjs.map +1 -0
- package/dist/HybridMap.d.ts +211 -0
- package/dist/HybridMap.js +599 -0
- package/dist/HybridMap.js.map +1 -0
- package/dist/MultiGraphDashboard.d.ts +6 -1
- package/dist/MultiGraphDashboardFromConfig.d.ts +6 -1
- package/dist/PerformanceIntensiveMultiGraphDashboard.d.ts +6 -1
- package/dist/PerformanceIntensiveMultiGraphDashboardFromConfig.d.ts +6 -1
- package/dist/PerformanceIntensiveScrollStory.d.ts +6 -1
- package/dist/ScrollStory.d.ts +6 -1
- package/dist/SingleGraphDashboard.cjs +1 -1
- package/dist/SingleGraphDashboard.d.ts +6 -1
- package/dist/SingleGraphDashboard.js +2 -2
- package/dist/SingleGraphDashboardFromConfig.d.ts +6 -1
- package/dist/SingleGraphDashboardGeoHubMaps.d.ts +5 -0
- package/dist/SingleGraphDashboardGeoHubMapsFromConfig.d.ts +5 -0
- package/dist/SingleGraphDashboardThreeDGraphs.cjs +1 -1
- package/dist/SingleGraphDashboardThreeDGraphs.d.ts +5 -0
- package/dist/SingleGraphDashboardThreeDGraphs.js +1 -1
- package/dist/SingleGraphDashboardThreeDGraphsFromConfig.d.ts +5 -0
- package/dist/ThreeDGlobe.cjs.map +1 -1
- package/dist/ThreeDGlobe.d.ts +1 -1
- package/dist/ThreeDGlobe.js.map +1 -1
- package/dist/Types.d.ts +17 -1
- package/dist/getSchema.cjs +1 -1
- package/dist/getSchema.cjs.map +1 -1
- package/dist/getSchema.d.ts +3 -3
- package/dist/getSchema.js +4 -0
- package/dist/getSchema.js.map +1 -1
- package/dist/index.cjs +1 -1
- package/dist/index.d.ts +356 -221
- package/dist/index.js +163 -161
- package/dist/index.js.map +1 -1
- package/dist/transformData.cjs +1 -1
- package/dist/transformData.d.ts +1 -1
- package/dist/transformData.js +2 -2
- package/dist/{transformDataForAggregation-CE3bAlHU.js → transformDataForAggregation-CjwEAUOR.js} +62 -31
- package/dist/transformDataForAggregation-CjwEAUOR.js.map +1 -0
- package/dist/transformDataForAggregation-DAGK2BZy.cjs +2 -0
- package/dist/transformDataForAggregation-DAGK2BZy.cjs.map +1 -0
- package/dist/{transformDataForGraphFromFile-DaJHQCsL.cjs → transformDataForGraphFromFile-B1zJSPRP.cjs} +2 -2
- package/dist/{transformDataForGraphFromFile-DaJHQCsL.cjs.map → transformDataForGraphFromFile-B1zJSPRP.cjs.map} +1 -1
- package/dist/{transformDataForGraphFromFile-BExxcITV.js → transformDataForGraphFromFile-D5TMQYYd.js} +2 -2
- package/dist/{transformDataForGraphFromFile-BExxcITV.js.map → transformDataForGraphFromFile-D5TMQYYd.js.map} +1 -1
- package/dist/validateSchema.d.ts +1 -1
- package/package.json +6 -1
- package/dist/GraphEl-D5RBCD7p.cjs +0 -2
- package/dist/GraphEl-D5RBCD7p.cjs.map +0 -1
- package/dist/GraphEl-VtiYqELy.js.map +0 -1
- package/dist/transformDataForAggregation-CE3bAlHU.js.map +0 -1
- package/dist/transformDataForAggregation-KXGm6flX.cjs +0 -2
- package/dist/transformDataForAggregation-KXGm6flX.cjs.map +0 -1
package/dist/getSchema.cjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getSchema.cjs","sources":["../src/Schemas/getSchema.ts"],"sourcesContent":["import { GeoHubGraphType, GraphType, ThreeDGraphType } from '@/Types';\r\nimport { graphList } from '@/Utils/getGraphList';\r\n\r\nconst BASE_URL =\r\n 'https://raw.githubusercontent.com/UNDP-Data/undp-viz-library-schemas/refs/heads/main/';\r\n\r\nexport function getDataSchemaLink(graph: GraphType | ThreeDGraphType | GeoHubGraphType) {\r\n if (\r\n graphList\r\n .filter(el => el.geoHubMapPresentation)\r\n .map(el => el.graphID)\r\n .indexOf(graph) !== -1\r\n )\r\n return null;\r\n\r\n switch (graph) {\r\n case 'dataTable':\r\n return 'dataSchema/dataTableDataSchema.json';\r\n case 'dataCards':\r\n return 'dataSchema/dataTableDataSchema.json';\r\n case 'barChart':\r\n return 'dataSchema/barGraphDataSchema.json';\r\n case 'stackedBarChart':\r\n return 'dataSchema/stackedBarGraphDataSchema.json';\r\n case 'groupedBarChart':\r\n return 'dataSchema/groupedBarGraphDataSchema.json';\r\n case 'lineChart':\r\n return 'dataSchema/lineChartDataSchema.json';\r\n case 'dualAxisLineChart':\r\n return 'dataSchema/dualAxisLineChartDataSchema.json';\r\n case 'differenceLineChart':\r\n return 'dataSchema/differenceLineChartDataSchema.json';\r\n case 'multiLineChart':\r\n return 'dataSchema/multiLineChartDataSchema.json';\r\n case 'multiLineAltChart':\r\n return 'dataSchema/multiLineAltChartDataSchema.json';\r\n case 'stackedAreaChart':\r\n return 'dataSchema/areaChartDataSchema.json';\r\n case 'choroplethMap':\r\n return 'dataSchema/choroplethMapDataSchema.json';\r\n case 'threeDGlobe':\r\n return 'dataSchema/choroplethMapDataSchema.json';\r\n case 'bulletChart':\r\n return 'dataSchema/bulletChartDataSchema.json';\r\n case 'biVariateChoroplethMap':\r\n return 'dataSchema/biVariateChoroplethMapDataSchema.json';\r\n case 'dotDensityMap':\r\n return 'dataSchema/dotDensityMapDataSchema.json';\r\n case 'donutChart':\r\n return 'dataSchema/donutChartDataSchema.json';\r\n case 'slopeChart':\r\n return 'dataSchema/slopeChartDataSchema.json';\r\n case 'scatterPlot':\r\n return 'dataSchema/scatterPlotDataSchema.json';\r\n case 'dumbbellChart':\r\n return 'dataSchema/dumbbellChartDataSchema.json';\r\n case 'treeMap':\r\n return 'dataSchema/treeMapDataSchema.json';\r\n case 'circlePacking':\r\n return 'dataSchema/circlePackingDataSchema.json';\r\n case 'heatMap':\r\n return 'dataSchema/heatMapDataSchema.json';\r\n case 'stripChart':\r\n return 'dataSchema/stripChartDataSchema.json';\r\n case 'beeSwarmChart':\r\n return 'dataSchema/beeSwarmChartDataSchema.json';\r\n case 'butterflyChart':\r\n return 'dataSchema/butterflyChartDataSchema.json';\r\n case 'histogram':\r\n return 'dataSchema/histogramDataSchema.json';\r\n case 'sparkLine':\r\n return 'dataSchema/lineChartDataSchema.json';\r\n case 'paretoChart':\r\n return 'dataSchema/paretoChartDataSchema.json';\r\n case 'statCard':\r\n return 'dataSchema/statCardDataSchema.json';\r\n case 'unitChart':\r\n return 'dataSchema/unitChartDataSchema.json';\r\n case 'sankeyChart':\r\n return 'dataSchema/sankeyChartDataSchema.json';\r\n case 'lineChartWithConfidenceInterval':\r\n return 'dataSchema/lineChartWithConfidenceIntervalDataSchema.json';\r\n case 'radarChart':\r\n return 'dataSchema/radarChartDataSchema.json';\r\n default:\r\n console.error('Unknown chart type:', graph);\r\n return null;\r\n }\r\n}\r\n\r\nexport function getSettingsSchemaLink(\r\n graph: GraphType | ThreeDGraphType | GeoHubGraphType | 'allGraphs',\r\n) {\r\n switch (graph) {\r\n case 'barChart':\r\n return 'settingsSchema/simpleBarChartSettingsSchema.json';\r\n case 'stackedBarChart':\r\n return 'settingsSchema/stackedBarChartSettingsSchema.json';\r\n case 'groupedBarChart':\r\n return 'settingsSchema/groupedBarChartSettingsSchema.json';\r\n case 'lineChart':\r\n return 'settingsSchema/lineChartSettingsSchema.json';\r\n case 'dualAxisLineChart':\r\n return 'settingsSchema/dualAxisLineChartSettingsSchema.json';\r\n case 'multiLineChart':\r\n return 'settingsSchema/multiLineChartSettingsSchema.json';\r\n case 'multiLineAltChart':\r\n return 'settingsSchema/multiLineAltChartSettingsSchema.json';\r\n case 'differenceLineChart':\r\n return 'settingsSchema/differenceLineChartSettingsSchema.json';\r\n case 'stackedAreaChart':\r\n return 'settingsSchema/stackedAreaChartSettingsSchema.json';\r\n case 'choroplethMap':\r\n return 'settingsSchema/choroplethMapSettingsSchema.json';\r\n case 'threeDGlobe':\r\n return 'settingsSchema/threeDGlobeSettingsSchema.json';\r\n case 'bulletChart':\r\n return 'settingsSchema/bulletChartSettingsSchema.json';\r\n case 'biVariateChoroplethMap':\r\n return 'settingsSchema/biVariateChoroplethMapSettingsSchema.json';\r\n case 'dotDensityMap':\r\n return 'settingsSchema/dotDensityMapSettingsSchema.json';\r\n case 'donutChart':\r\n return 'settingsSchema/donutChartSettingsSchema.json';\r\n case 'slopeChart':\r\n return 'settingsSchema/slopeChartSettingsSchema.json';\r\n case 'scatterPlot':\r\n return 'settingsSchema/scatterPlotSettingsSchema.json';\r\n case 'dumbbellChart':\r\n return 'settingsSchema/dumbbellChartSettingsSchema.json';\r\n case 'treeMap':\r\n return 'settingsSchema/treeMapSettingsSchema.json';\r\n case 'circlePacking':\r\n return 'settingsSchema/circlePackingSettingsSchema.json';\r\n case 'heatMap':\r\n return 'settingsSchema/heatMapSettingsSchema.json';\r\n case 'stripChart':\r\n return 'settingsSchema/stripChartSettingsSchema.json';\r\n case 'beeSwarmChart':\r\n return 'settingsSchema/beeSwarmChartSettingsSchema.json';\r\n case 'butterflyChart':\r\n return 'settingsSchema/butterflyChartSettingsSchema.json';\r\n case 'histogram':\r\n return 'settingsSchema/histogramSettingsSchema.json';\r\n case 'sparkLine':\r\n return 'settingsSchema/sparkLineSettingsSchema.json';\r\n case 'paretoChart':\r\n return 'settingsSchema/paretoChartSettingsSchema.json';\r\n case 'dataTable':\r\n return 'settingsSchema/dataTableSettingsSchema.json';\r\n case 'statCard':\r\n return 'settingsSchema/statCardSettingsSchema.json';\r\n case 'geoHubCompareMap':\r\n return 'settingsSchema/geoHubCompareMapSettingsSchema.json';\r\n case 'geoHubMap':\r\n return 'settingsSchema/geoHubMapSettingsSchema.json';\r\n case 'geoHubMapWithLayerSelection':\r\n return 'settingsSchema/geoHubMapWithLayerSelectionSettingsSchema.json';\r\n case 'unitChart':\r\n return 'settingsSchema/unitChartSettingsSchema.json';\r\n case 'sankeyChart':\r\n return 'settingsSchema/sankeyChartSettingsSchema.json';\r\n case 'lineChartWithConfidenceInterval':\r\n return 'settingsSchema/lineChartWithConfidenceIntervalSettingsSchema.json';\r\n case 'dataCards':\r\n return 'settingsSchema/dataCardListSettingsSchema.json';\r\n case 'allGraphs':\r\n return 'settingsSchema/SettingsSchema.json';\r\n case 'radarChart':\r\n return 'settingsSchema/radarChartSettingsSchema.json';\r\n default:\r\n console.error('Unknown chart type:', graph);\r\n return null;\r\n }\r\n}\r\n\r\nexport async function getDataSchema(graph: GraphType) {\r\n const response = await fetch(`${BASE_URL}${getDataSchemaLink(graph)}`);\r\n if (!response.ok) {\r\n throw new Error(`Response status: ${response.status}`);\r\n }\r\n const json = await response.json();\r\n return json;\r\n}\r\n\r\nexport async function getSettingsSchema(graph: GraphType | 'allGraphs') {\r\n const response = await fetch(`${BASE_URL}${getSettingsSchemaLink(graph)}`);\r\n if (!response.ok) {\r\n throw new Error(`Response status: ${response.status}`);\r\n }\r\n const json = await response.json();\r\n return json;\r\n}\r\n\r\nexport function getGraphConfigChartConfigIdEnum(\r\n chartType?: GraphType | ThreeDGraphType | 'dashboardWideToLong' | 'dashboard',\r\n) {\r\n switch (chartType) {\r\n case 'barChart':\r\n return ['label', 'size', 'color', 'date'];\r\n case 'bulletChart':\r\n return ['label', 'size', 'target', 'qualitativeRange'];\r\n case 'treeMap':\r\n return ['label', 'size', 'color'];\r\n case 'circlePacking':\r\n return ['label', 'size', 'color'];\r\n case 'butterflyChart':\r\n return ['label', 'leftBar', 'rightBar', 'date'];\r\n case 'groupedBarChart':\r\n return ['label', 'size', 'date'];\r\n case 'stackedBarChart':\r\n return ['label', 'size', 'date'];\r\n case 'dumbbellChart':\r\n return ['x', 'label', 'date'];\r\n case 'donutChart':\r\n return ['size', 'label'];\r\n case 'histogram':\r\n return ['value'];\r\n case 'choroplethMap':\r\n return ['x', 'id', 'date'];\r\n case 'threeDGlobe':\r\n return ['x', 'id'];\r\n case 'biVariateChoroplethMap':\r\n return ['x', 'y', 'id', 'date'];\r\n case 'lineChart':\r\n return ['date', 'y'];\r\n case 'multiLineChart':\r\n return ['date', 'y'];\r\n case 'multiLineAltChart':\r\n return ['date', 'y', 'label', 'color'];\r\n case 'radarChart':\r\n return ['values', 'label', 'color'];\r\n case 'stackedAreaChart':\r\n return ['date', 'y'];\r\n case 'scatterPlot':\r\n return ['x', 'y', 'radius', 'color', 'label', 'date'];\r\n case 'dualAxisLineChart':\r\n return ['date', 'y1', 'y2'];\r\n case 'paretoChart':\r\n return ['label', 'bar', 'line'];\r\n case 'dotDensityMap':\r\n return ['lat', 'long', 'radius', 'color', 'label', 'date'];\r\n case 'slopeChart':\r\n return ['y1', 'y2', 'color', 'label'];\r\n case 'heatMap':\r\n return ['row', 'column', 'value'];\r\n case 'beeSwarmChart':\r\n return ['label', 'position', 'radius', 'color'];\r\n case 'stripChart':\r\n return ['label', 'position', 'color'];\r\n case 'statCard':\r\n return ['value'];\r\n case 'sankeyChart':\r\n return ['source', 'target', 'value'];\r\n case 'differenceLineChart':\r\n return ['date', 'y1', 'y2'];\r\n case 'unitChart':\r\n return ['label', 'value'];\r\n case 'sparkLine':\r\n return ['date', 'y'];\r\n case 'lineChartWithConfidenceInterval':\r\n return ['date', 'y', 'yMin', 'yMax'];\r\n case 'dashboardWideToLong':\r\n return ['label', 'size', 'color', 'value'];\r\n case 'dashboard':\r\n return [\r\n 'label',\r\n 'radius',\r\n 'size',\r\n 'row',\r\n 'y1',\r\n 'y',\r\n 'rightBar',\r\n 'position',\r\n 'leftBar',\r\n 'x',\r\n 'bar',\r\n 'line',\r\n 'y2',\r\n 'column',\r\n 'date',\r\n 'value',\r\n 'color',\r\n 'long',\r\n 'lat',\r\n 'id',\r\n 'source',\r\n 'target',\r\n 'yMin',\r\n 'yMax',\r\n ];\r\n default:\r\n return [\r\n 'label',\r\n 'radius',\r\n 'size',\r\n 'row',\r\n 'y1',\r\n 'y',\r\n 'rightBar',\r\n 'position',\r\n 'leftBar',\r\n 'x',\r\n 'bar',\r\n 'line',\r\n 'y2',\r\n 'column',\r\n 'date',\r\n 'value',\r\n 'color',\r\n 'long',\r\n 'lat',\r\n 'id',\r\n 'source',\r\n 'target',\r\n 'yMin',\r\n 'yMax',\r\n ];\r\n }\r\n}\r\n\r\nfunction getColumnEnum(columns?: string[]) {\r\n if (!columns || columns.length === 0) return {};\r\n return { enum: columns };\r\n}\r\nexport const getColumnsToArraySchema = (columnList?: string[]) => ({\r\n items: {\r\n properties: {\r\n column: {\r\n type: 'string',\r\n ...getColumnEnum(columnList),\r\n },\r\n delimiter: { type: 'string' },\r\n },\r\n type: 'object',\r\n required: ['column'],\r\n },\r\n type: 'array',\r\n});\r\n\r\nexport const getDataSettingsSchema = (columnList?: string[]) => ({\r\n properties: {\r\n columnsToArray: getColumnsToArraySchema(columnList),\r\n data: {},\r\n dataURL: {\r\n oneOf: [\r\n { type: 'string' },\r\n {\r\n type: 'array',\r\n items: {\r\n type: 'object',\r\n properties: {\r\n fileType: {\r\n enum: ['csv', 'json', 'api'],\r\n type: 'string',\r\n },\r\n apiHeaders: {},\r\n dataTransformation: { type: 'string' },\r\n idColumnName: { type: 'string' },\r\n dataURL: { type: 'string' },\r\n delimiter: { type: 'string' },\r\n columnsToArray: getColumnsToArraySchema(),\r\n },\r\n required: ['dataURL', 'idColumnName'],\r\n },\r\n },\r\n ],\r\n },\r\n delimiter: { type: 'string' },\r\n fileType: {\r\n enum: ['csv', 'json', 'api'],\r\n type: 'string',\r\n },\r\n apiHeaders: {},\r\n dataTransformation: { type: 'string' },\r\n idColumnTitle: { type: 'string' },\r\n },\r\n type: 'object',\r\n});\r\n\r\nexport const getReadableHeaderSchema = (columnList?: string[]) => ({\r\n type: 'array',\r\n items: {\r\n type: 'object',\r\n properties: {\r\n value: { type: 'string', ...getColumnEnum(columnList) },\r\n label: { type: 'string' },\r\n },\r\n required: ['value', 'label'],\r\n },\r\n});\r\n\r\nexport const getFiltersSchema = (columnList?: string[]) => ({\r\n items: {\r\n properties: {\r\n clearable: { type: 'boolean' },\r\n allowSelectAll: { type: 'boolean' },\r\n width: { type: 'string' },\r\n excludeValues: {\r\n items: { type: 'string' },\r\n type: 'array',\r\n },\r\n column: {\r\n type: 'string',\r\n ...getColumnEnum(columnList),\r\n },\r\n defaultValue: {\r\n anyOf: [\r\n {\r\n items: { oneOf: [{ type: 'string' }, { type: 'number' }] },\r\n type: 'array',\r\n },\r\n { type: 'string' },\r\n { type: 'number' },\r\n ],\r\n },\r\n label: { type: 'string' },\r\n ui: { type: 'string', enum: ['select', 'radio'] },\r\n singleSelect: { type: 'boolean' },\r\n },\r\n required: ['column'],\r\n type: 'object',\r\n },\r\n type: 'array',\r\n});\r\n\r\nexport const getDataSelectionSchema = async (columnList?: string[]) => {\r\n const settingsSchema = await getSettingsSchema('allGraphs');\r\n return {\r\n type: 'array',\r\n items: {\r\n type: 'object',\r\n properties: {\r\n chartConfigId: { type: 'string' },\r\n label: { type: 'string' },\r\n width: { type: 'string' },\r\n allowedColumnIds: {\r\n type: 'array',\r\n items: {\r\n type: 'object',\r\n properties: {\r\n value: { type: 'string', ...getColumnEnum(columnList) },\r\n label: { type: 'string' },\r\n graphSettings: settingsSchema,\r\n },\r\n required: ['value', 'label'],\r\n },\r\n minItems: 1,\r\n },\r\n ui: { type: 'string', enum: ['select', 'radio'] },\r\n },\r\n required: ['chartConfigId', 'allowedColumnIds'],\r\n },\r\n };\r\n};\r\n\r\nexport const getDataFiltersSchema = (columnList?: string[]) => ({\r\n type: 'array',\r\n items: {\r\n type: 'object',\r\n properties: {\r\n column: { type: 'string', ...getColumnEnum(columnList) },\r\n includeValues: {\r\n type: 'array',\r\n items: {\r\n oneOf: [{ type: 'string' }, { type: 'number' }, { type: 'boolean' }, { type: 'null' }],\r\n },\r\n },\r\n excludeValues: {\r\n type: 'array',\r\n items: {\r\n oneOf: [{ type: 'string' }, { type: 'number' }, { type: 'boolean' }, { type: 'null' }],\r\n },\r\n },\r\n },\r\n required: ['column'],\r\n },\r\n});\r\n\r\nexport const getDataTransformSchema = (columnList?: string[]) => ({\r\n type: 'object',\r\n properties: {\r\n keyColumn: { type: 'string', ...getColumnEnum(columnList) },\r\n aggregationColumnsSetting: {\r\n type: 'array',\r\n items: {\r\n type: 'object',\r\n properties: {\r\n column: { type: 'string', ...getColumnEnum(columnList) },\r\n aggregationMethod: {\r\n type: 'string',\r\n enum: ['sum', 'average', 'min', 'max'],\r\n },\r\n },\r\n required: ['column'],\r\n },\r\n },\r\n },\r\n required: ['keyColumn'],\r\n});\r\n\r\nexport const getGraphDataConfigurationSchema = (\r\n columnList?: string[],\r\n graphType?: GraphType | 'dashboard' | 'dashboardWideToLong',\r\n) => ({\r\n type: 'array',\r\n items: {\r\n type: 'object',\r\n properties: {\r\n columnId: {\r\n oneOf: [\r\n { type: 'string', ...getColumnEnum(columnList) },\r\n {\r\n type: 'array',\r\n items: { type: 'string', ...getColumnEnum(columnList) },\r\n },\r\n ],\r\n },\r\n chartConfigId: {\r\n type: 'string',\r\n ...getColumnEnum(getGraphConfigChartConfigIdEnum(graphType)),\r\n },\r\n },\r\n required: ['columnId', 'chartConfigId'],\r\n },\r\n});\r\n\r\nexport const getAdvancedDataSelectionSchema = async (\r\n columnList?: string[],\r\n graphType?: GraphType,\r\n) => {\r\n const settingsSchema = await getSettingsSchema('allGraphs');\r\n return {\r\n type: 'array',\r\n items: {\r\n type: 'object',\r\n properties: {\r\n chartConfigId: { type: 'string' },\r\n label: { type: 'string' },\r\n width: { type: 'string' },\r\n options: {\r\n type: 'array',\r\n items: {\r\n type: 'object',\r\n properties: {\r\n dataConfiguration: getGraphDataConfigurationSchema(columnList, graphType),\r\n label: { type: 'string' },\r\n graphSettings: settingsSchema,\r\n },\r\n required: ['dataConfiguration', 'label'],\r\n },\r\n minItems: 1,\r\n },\r\n defaultValue: {\r\n type: 'array',\r\n items: {\r\n type: 'object',\r\n properties: {\r\n dataConfiguration: getGraphDataConfigurationSchema(columnList, graphType),\r\n label: { type: 'string' },\r\n graphSettings: settingsSchema,\r\n },\r\n required: ['dataConfiguration', 'label'],\r\n },\r\n minItems: 1,\r\n },\r\n ui: { type: 'string', enum: ['select', 'radio'] },\r\n },\r\n required: ['chartConfigId', 'options'],\r\n },\r\n };\r\n};\r\n\r\nexport const getSingleGraphJSONSchema = async (columnList?: string[], graphType?: GraphType) => {\r\n const settingsSchema = await getSettingsSchema(graphType || 'allGraphs');\r\n if (\r\n graphType &&\r\n graphList\r\n .filter(el => el.geoHubMapPresentation)\r\n .map(el => el.graphID)\r\n .indexOf(graphType) !== -1\r\n )\r\n return {\r\n type: 'object',\r\n properties: {\r\n graphSettings: settingsSchema,\r\n graphType: {\r\n type: 'string',\r\n enum: graphList.filter(el => el.geoHubMapPresentation).map(el => el.graphID),\r\n },\r\n debugMode: { type: 'boolean' },\r\n theme: { type: 'string', enum: ['dark', 'light'] },\r\n uiMode: {\r\n type: 'string',\r\n enum: ['light', 'normal'],\r\n },\r\n classNames: { type: 'object' },\r\n highlightDataPointSettings: {\r\n type: 'object',\r\n properties: {\r\n column: { type: 'string' },\r\n label: { type: 'string' },\r\n defaultValues: {\r\n oneOf: [\r\n {\r\n type: 'array',\r\n items: { type: 'string' },\r\n },\r\n {\r\n type: 'array',\r\n items: { type: 'number' },\r\n },\r\n ],\r\n },\r\n excludeValues: {\r\n type: 'array',\r\n items: { type: 'string' },\r\n },\r\n allowSelectAll: { type: 'boolean' },\r\n width: { type: 'string' },\r\n },\r\n required: ['column'],\r\n },\r\n styles: { type: 'object' },\r\n },\r\n required: ['graphType'],\r\n };\r\n if (graphType === 'dataTable' || graphType === 'dataCards')\r\n return {\r\n type: 'object',\r\n properties: {\r\n graphSettings: settingsSchema,\r\n dataSettings: getDataSettingsSchema(columnList),\r\n filters: getFiltersSchema(columnList),\r\n noOfFiltersPerRow: { type: 'number' },\r\n graphType: {\r\n type: 'string',\r\n enum: ['dataTable', 'dataCards'],\r\n },\r\n dataTransform: getDataTransformSchema(columnList),\r\n dataFilters: getDataFiltersSchema(columnList),\r\n readableHeader: getReadableHeaderSchema(columnList),\r\n dataSelectionOptions: getDataSelectionSchema(columnList),\r\n advancedDataSelectionOptions: getAdvancedDataSelectionSchema(columnList, graphType),\r\n debugMode: { type: 'boolean' },\r\n theme: { type: 'string', enum: ['dark', 'light'] },\r\n uiMode: {\r\n type: 'string',\r\n enum: ['light', 'normal'],\r\n },\r\n classNames: { type: 'object' },\r\n highlightDataPointSettings: {\r\n type: 'object',\r\n properties: {\r\n column: { type: 'string' },\r\n label: { type: 'string' },\r\n defaultValues: {\r\n oneOf: [\r\n {\r\n type: 'array',\r\n items: { type: 'string' },\r\n },\r\n {\r\n type: 'array',\r\n items: { type: 'number' },\r\n },\r\n ],\r\n },\r\n excludeValues: {\r\n type: 'array',\r\n items: { type: 'string' },\r\n },\r\n allowSelectAll: { type: 'boolean' },\r\n width: { type: 'string' },\r\n },\r\n required: ['column'],\r\n },\r\n styles: { type: 'object' },\r\n },\r\n required: ['dataSettings', 'graphType'],\r\n };\r\n return {\r\n type: 'object',\r\n properties: {\r\n graphSettings: settingsSchema,\r\n dataSettings: getDataSettingsSchema(columnList),\r\n filters: getFiltersSchema(columnList),\r\n classNames: { type: 'object' },\r\n styles: { type: 'object' },\r\n graphType: {\r\n type: 'string',\r\n enum: graphList.map(el => el.graphID),\r\n },\r\n noOfFiltersPerRow: { type: 'number' },\r\n dataTransform: getDataTransformSchema(columnList),\r\n dataFilters: getDataFiltersSchema(columnList),\r\n graphDataConfiguration: getGraphDataConfigurationSchema(columnList, graphType),\r\n readableHeader: getReadableHeaderSchema(columnList),\r\n dataSelectionOptions: getDataSelectionSchema(columnList),\r\n advancedDataSelectionOptions: getAdvancedDataSelectionSchema(columnList, graphType),\r\n debugMode: { type: 'boolean' },\r\n theme: { type: 'string', enum: ['dark', 'light'] },\r\n highlightDataPointSettings: {\r\n type: 'object',\r\n properties: {\r\n column: { type: 'string' },\r\n label: { type: 'string' },\r\n defaultValues: {\r\n oneOf: [\r\n {\r\n type: 'array',\r\n items: { type: 'string' },\r\n },\r\n {\r\n type: 'array',\r\n items: { type: 'number' },\r\n },\r\n ],\r\n },\r\n excludeValues: {\r\n type: 'array',\r\n items: { type: 'string' },\r\n },\r\n allowSelectAll: { type: 'boolean' },\r\n width: { type: 'string' },\r\n },\r\n required: ['column'],\r\n },\r\n uiMode: {\r\n type: 'string',\r\n enum: ['light', 'normal'],\r\n },\r\n },\r\n required: !graphType ? ['graphType'] : ['dataSettings', 'graphType', 'graphDataConfiguration'],\r\n };\r\n};\r\n\r\nexport const getGriddedGraphJSONSchema = async (columnList?: string[], graphType?: GraphType) => {\r\n const settingsSchema = await getSettingsSchema(graphType || 'allGraphs');\r\n if (graphType === 'dataTable' || graphType === 'dataCards')\r\n return {\r\n type: 'object',\r\n properties: {\r\n graphSettings: settingsSchema,\r\n dataSettings: getDataSettingsSchema(columnList),\r\n filters: getFiltersSchema(columnList),\r\n classNames: { type: 'object' },\r\n styles: { type: 'object' },\r\n noOfFiltersPerRow: { type: 'number' },\r\n graphType: {\r\n type: 'string',\r\n enum: ['dataTable', 'dataCards'],\r\n },\r\n uiMode: {\r\n type: 'string',\r\n enum: ['light', 'normal'],\r\n },\r\n dataTransform: getDataTransformSchema(columnList),\r\n dataFilters: getDataFiltersSchema(columnList),\r\n noOfColumns: { type: 'number' },\r\n columnGridBy: { type: 'string' },\r\n showCommonColorScale: { type: 'boolean' },\r\n minGraphHeight: { type: 'number' },\r\n minGraphWidth: { type: 'number' },\r\n readableHeader: getReadableHeaderSchema(columnList),\r\n dataSelectionOptions: getDataSelectionSchema(columnList),\r\n advancedDataSelectionOptions: getAdvancedDataSelectionSchema(columnList, graphType),\r\n debugMode: { type: 'boolean' },\r\n theme: { type: 'string', enum: ['dark', 'light'] },\r\n },\r\n required: ['columnGridBy', 'dataSettings', 'graphType'],\r\n };\r\n return {\r\n type: 'object',\r\n properties: {\r\n graphSettings: settingsSchema,\r\n dataSettings: getDataSettingsSchema(columnList),\r\n filters: getFiltersSchema(columnList),\r\n classNames: { type: 'object' },\r\n styles: { type: 'object' },\r\n noOfFiltersPerRow: { type: 'number' },\r\n graphType: {\r\n type: 'string',\r\n enum: graphList.filter(el => el.availableInGriddedGraph !== false).map(el => el.graphID),\r\n },\r\n uiMode: {\r\n type: 'string',\r\n enum: ['light', 'normal'],\r\n },\r\n dataTransform: getDataTransformSchema(columnList),\r\n dataFilters: getDataFiltersSchema(columnList),\r\n graphDataConfiguration: getGraphDataConfigurationSchema(columnList, graphType),\r\n noOfColumns: { type: 'number' },\r\n columnGridBy: { type: 'string' },\r\n showCommonColorScale: { type: 'boolean' },\r\n minGraphHeight: { type: 'number' },\r\n minGraphWidth: { type: 'number' },\r\n readableHeader: getReadableHeaderSchema(columnList),\r\n dataSelectionOptions: getDataSelectionSchema(columnList),\r\n advancedDataSelectionOptions: getAdvancedDataSelectionSchema(columnList, graphType),\r\n debugMode: { type: 'boolean' },\r\n theme: { type: 'string', enum: ['dark', 'light'] },\r\n },\r\n required: !graphType\r\n ? ['columnGridBy', 'dataSettings', 'graphType']\r\n : ['columnGridBy', 'dataSettings', 'graphType', 'graphDataConfiguration'],\r\n };\r\n};\r\n\r\nexport const getDashboardJSONSchema = async (columnList?: string[]) => {\r\n const settingsSchema = await getSettingsSchema('allGraphs');\r\n return {\r\n properties: {\r\n dashboardID: { type: 'string' },\r\n graphClassNames: { type: 'object' },\r\n graphStyles: { type: 'object' },\r\n dashboardLayout: {\r\n properties: {\r\n backgroundColor: { type: ['string', 'boolean'] },\r\n description: { type: 'string' },\r\n language: {\r\n enum: ['ar', 'en', 'he'],\r\n type: 'string',\r\n },\r\n padding: { type: 'string' },\r\n title: { type: 'string' },\r\n rows: {\r\n items: {\r\n properties: {\r\n columns: {\r\n items: {\r\n properties: {\r\n columnWidth: { type: 'number' },\r\n dataFilters: getDataFiltersSchema(),\r\n dataTransform: getDataTransformSchema(),\r\n graphDataConfiguration: getGraphDataConfigurationSchema(\r\n undefined,\r\n 'dashboard',\r\n ),\r\n graphType: {\r\n enum: graphList.map(el => el.graphID),\r\n type: 'string',\r\n },\r\n settings: settingsSchema,\r\n dataSelectionOptions: getDataSelectionSchema(),\r\n advancedDataSelectionOptions: getAdvancedDataSelectionSchema(),\r\n attachedFilter: {\r\n type: 'string',\r\n ...getColumnEnum(columnList),\r\n },\r\n },\r\n type: 'object',\r\n required: ['graphType'],\r\n },\r\n type: 'array',\r\n },\r\n height: { type: 'number' },\r\n },\r\n type: 'object',\r\n required: ['columns'],\r\n },\r\n type: 'array',\r\n },\r\n },\r\n type: 'object',\r\n required: ['rows'],\r\n },\r\n dataSettings: getDataSettingsSchema(columnList),\r\n filters: getFiltersSchema(columnList),\r\n noOfFiltersPerRow: { type: 'number' },\r\n uiMode: {\r\n type: 'string',\r\n enum: ['light', 'normal'],\r\n },\r\n filterPosition: { type: 'string', enum: ['top', 'side'] },\r\n readableHeader: getReadableHeaderSchema(columnList),\r\n dataFilters: getDataFiltersSchema(columnList),\r\n debugMode: { type: 'boolean' },\r\n theme: { type: 'string', enum: ['dark', 'light'] },\r\n graphBackgroundColor: { oneOf: [{ type: 'string' }, { type: 'boolean' }] },\r\n },\r\n type: 'object',\r\n required: ['dashboardLayout', 'dataSettings'],\r\n };\r\n};\r\n\r\nexport const getDashboardWideToLongFormatJSONSchema = async () => {\r\n const settingsSchema = await getSettingsSchema('allGraphs');\r\n return {\r\n properties: {\r\n dashboardID: { type: 'string' },\r\n graphClassNames: { type: 'object' },\r\n graphStyles: { type: 'object' },\r\n dashboardLayout: {\r\n properties: {\r\n backgroundColor: { type: ['string', 'boolean'] },\r\n description: { type: 'string' },\r\n language: {\r\n enum: ['ar', 'en', 'he'],\r\n type: 'string',\r\n },\r\n padding: { type: 'string' },\r\n dropdownLabel: { type: 'string' },\r\n title: { type: 'string' },\r\n rows: {\r\n items: {\r\n properties: {\r\n columns: {\r\n items: {\r\n properties: {\r\n columnWidth: { type: 'number' },\r\n dataFilters: getDataFiltersSchema(),\r\n graphDataConfiguration: getGraphDataConfigurationSchema(\r\n undefined,\r\n 'dashboardWideToLong',\r\n ),\r\n graphType: {\r\n enum: graphList\r\n .filter(el => el.availableInWideToLongFormat)\r\n .map(el => el.graphID),\r\n type: 'string',\r\n },\r\n settings: settingsSchema,\r\n },\r\n type: 'object',\r\n required: ['graphType'],\r\n },\r\n type: 'array',\r\n },\r\n height: { type: 'number' },\r\n },\r\n type: 'object',\r\n required: ['columns'],\r\n },\r\n type: 'array',\r\n },\r\n },\r\n type: 'object',\r\n required: ['rows'],\r\n },\r\n dataSettings: {\r\n properties: {\r\n ...getDataSettingsSchema().properties,\r\n keyColumn: { type: 'string' },\r\n },\r\n required: ['keyColumn'],\r\n type: 'object',\r\n },\r\n uiMode: {\r\n type: 'string',\r\n enum: ['light', 'normal'],\r\n },\r\n dataFilters: getDataFiltersSchema(),\r\n readableHeader: getReadableHeaderSchema(),\r\n debugMode: { type: 'boolean' },\r\n theme: { type: 'string', enum: ['dark', 'light'] },\r\n graphBackgroundColor: { oneOf: [{ type: 'string' }, { type: 'boolean' }] },\r\n },\r\n type: 'object',\r\n required: ['dashboardLayout', 'dataSettings'],\r\n };\r\n};\r\n"],"names":["BASE_URL","getDataSchemaLink","graph","graphList","filter","el","geoHubMapPresentation","map","graphID","indexOf","console","error","getSettingsSchemaLink","getDataSchema","response","fetch","ok","Error","status","json","getSettingsSchema","getGraphConfigChartConfigIdEnum","chartType","getColumnEnum","columns","length","enum","getColumnsToArraySchema","columnList","items","properties","column","type","delimiter","required","getDataSettingsSchema","columnsToArray","data","dataURL","oneOf","fileType","apiHeaders","dataTransformation","idColumnName","idColumnTitle","getReadableHeaderSchema","value","label","getFiltersSchema","clearable","allowSelectAll","width","excludeValues","defaultValue","anyOf","ui","singleSelect","getDataSelectionSchema","settingsSchema","chartConfigId","allowedColumnIds","graphSettings","minItems","getDataFiltersSchema","includeValues","getDataTransformSchema","keyColumn","aggregationColumnsSetting","aggregationMethod","getGraphDataConfigurationSchema","graphType","columnId","getAdvancedDataSelectionSchema","options","dataConfiguration","getSingleGraphJSONSchema","debugMode","theme","uiMode","classNames","highlightDataPointSettings","defaultValues","styles","dataSettings","filters","noOfFiltersPerRow","dataTransform","dataFilters","readableHeader","dataSelectionOptions","advancedDataSelectionOptions","graphDataConfiguration","getGriddedGraphJSONSchema","noOfColumns","columnGridBy","showCommonColorScale","minGraphHeight","minGraphWidth","availableInGriddedGraph","getDashboardJSONSchema","dashboardID","graphClassNames","graphStyles","dashboardLayout","backgroundColor","description","language","padding","title","rows","columnWidth","undefined","settings","attachedFilter","height","filterPosition","graphBackgroundColor","getDashboardWideToLongFormatJSONSchema","dropdownLabel","availableInWideToLongFormat"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"getSchema.cjs","sources":["../src/Schemas/getSchema.ts"],"sourcesContent":["import { GeoHubGraphType, GraphType, ThreeDGraphType } from '@/Types';\r\nimport { graphList } from '@/Utils/getGraphList';\r\n\r\nconst BASE_URL =\r\n 'https://raw.githubusercontent.com/UNDP-Data/undp-viz-library-schemas/refs/heads/main/';\r\n\r\nexport function getDataSchemaLink(graph: GraphType | ThreeDGraphType | GeoHubGraphType) {\r\n if (\r\n graphList\r\n .filter(el => el.geoHubMapPresentation)\r\n .map(el => el.graphID)\r\n .indexOf(graph) !== -1\r\n )\r\n return null;\r\n\r\n switch (graph) {\r\n case 'dataTable':\r\n return 'dataSchema/dataTableDataSchema.json';\r\n case 'dataCards':\r\n return 'dataSchema/dataTableDataSchema.json';\r\n case 'barChart':\r\n return 'dataSchema/barGraphDataSchema.json';\r\n case 'stackedBarChart':\r\n return 'dataSchema/stackedBarGraphDataSchema.json';\r\n case 'groupedBarChart':\r\n return 'dataSchema/groupedBarGraphDataSchema.json';\r\n case 'lineChart':\r\n return 'dataSchema/lineChartDataSchema.json';\r\n case 'dualAxisLineChart':\r\n return 'dataSchema/dualAxisLineChartDataSchema.json';\r\n case 'differenceLineChart':\r\n return 'dataSchema/differenceLineChartDataSchema.json';\r\n case 'multiLineChart':\r\n return 'dataSchema/multiLineChartDataSchema.json';\r\n case 'multiLineAltChart':\r\n return 'dataSchema/multiLineAltChartDataSchema.json';\r\n case 'stackedAreaChart':\r\n return 'dataSchema/areaChartDataSchema.json';\r\n case 'choroplethMap':\r\n return 'dataSchema/choroplethMapDataSchema.json';\r\n case 'threeDGlobe':\r\n return 'dataSchema/choroplethMapDataSchema.json';\r\n case 'bulletChart':\r\n return 'dataSchema/bulletChartDataSchema.json';\r\n case 'biVariateChoroplethMap':\r\n return 'dataSchema/biVariateChoroplethMapDataSchema.json';\r\n case 'dotDensityMap':\r\n return 'dataSchema/dotDensityMapDataSchema.json';\r\n case 'donutChart':\r\n return 'dataSchema/donutChartDataSchema.json';\r\n case 'slopeChart':\r\n return 'dataSchema/slopeChartDataSchema.json';\r\n case 'scatterPlot':\r\n return 'dataSchema/scatterPlotDataSchema.json';\r\n case 'dumbbellChart':\r\n return 'dataSchema/dumbbellChartDataSchema.json';\r\n case 'treeMap':\r\n return 'dataSchema/treeMapDataSchema.json';\r\n case 'circlePacking':\r\n return 'dataSchema/circlePackingDataSchema.json';\r\n case 'heatMap':\r\n return 'dataSchema/heatMapDataSchema.json';\r\n case 'stripChart':\r\n return 'dataSchema/stripChartDataSchema.json';\r\n case 'beeSwarmChart':\r\n return 'dataSchema/beeSwarmChartDataSchema.json';\r\n case 'butterflyChart':\r\n return 'dataSchema/butterflyChartDataSchema.json';\r\n case 'histogram':\r\n return 'dataSchema/histogramDataSchema.json';\r\n case 'sparkLine':\r\n return 'dataSchema/lineChartDataSchema.json';\r\n case 'paretoChart':\r\n return 'dataSchema/paretoChartDataSchema.json';\r\n case 'statCard':\r\n return 'dataSchema/statCardDataSchema.json';\r\n case 'unitChart':\r\n return 'dataSchema/unitChartDataSchema.json';\r\n case 'sankeyChart':\r\n return 'dataSchema/sankeyChartDataSchema.json';\r\n case 'lineChartWithConfidenceInterval':\r\n return 'dataSchema/lineChartWithConfidenceIntervalDataSchema.json';\r\n case 'hybridMap':\r\n return 'dataSchema/hybridMapDataSchema.json';\r\n case 'radarChart':\r\n return 'dataSchema/radarChartDataSchema.json';\r\n default:\r\n console.error('Unknown chart type:', graph);\r\n return null;\r\n }\r\n}\r\n\r\nexport function getSettingsSchemaLink(\r\n graph: GraphType | ThreeDGraphType | GeoHubGraphType | 'allGraphs',\r\n) {\r\n switch (graph) {\r\n case 'barChart':\r\n return 'settingsSchema/simpleBarChartSettingsSchema.json';\r\n case 'stackedBarChart':\r\n return 'settingsSchema/stackedBarChartSettingsSchema.json';\r\n case 'groupedBarChart':\r\n return 'settingsSchema/groupedBarChartSettingsSchema.json';\r\n case 'lineChart':\r\n return 'settingsSchema/lineChartSettingsSchema.json';\r\n case 'dualAxisLineChart':\r\n return 'settingsSchema/dualAxisLineChartSettingsSchema.json';\r\n case 'multiLineChart':\r\n return 'settingsSchema/multiLineChartSettingsSchema.json';\r\n case 'multiLineAltChart':\r\n return 'settingsSchema/multiLineAltChartSettingsSchema.json';\r\n case 'differenceLineChart':\r\n return 'settingsSchema/differenceLineChartSettingsSchema.json';\r\n case 'stackedAreaChart':\r\n return 'settingsSchema/stackedAreaChartSettingsSchema.json';\r\n case 'choroplethMap':\r\n return 'settingsSchema/choroplethMapSettingsSchema.json';\r\n case 'threeDGlobe':\r\n return 'settingsSchema/threeDGlobeSettingsSchema.json';\r\n case 'bulletChart':\r\n return 'settingsSchema/bulletChartSettingsSchema.json';\r\n case 'biVariateChoroplethMap':\r\n return 'settingsSchema/biVariateChoroplethMapSettingsSchema.json';\r\n case 'dotDensityMap':\r\n return 'settingsSchema/dotDensityMapSettingsSchema.json';\r\n case 'donutChart':\r\n return 'settingsSchema/donutChartSettingsSchema.json';\r\n case 'slopeChart':\r\n return 'settingsSchema/slopeChartSettingsSchema.json';\r\n case 'scatterPlot':\r\n return 'settingsSchema/scatterPlotSettingsSchema.json';\r\n case 'dumbbellChart':\r\n return 'settingsSchema/dumbbellChartSettingsSchema.json';\r\n case 'treeMap':\r\n return 'settingsSchema/treeMapSettingsSchema.json';\r\n case 'circlePacking':\r\n return 'settingsSchema/circlePackingSettingsSchema.json';\r\n case 'heatMap':\r\n return 'settingsSchema/heatMapSettingsSchema.json';\r\n case 'stripChart':\r\n return 'settingsSchema/stripChartSettingsSchema.json';\r\n case 'beeSwarmChart':\r\n return 'settingsSchema/beeSwarmChartSettingsSchema.json';\r\n case 'butterflyChart':\r\n return 'settingsSchema/butterflyChartSettingsSchema.json';\r\n case 'histogram':\r\n return 'settingsSchema/histogramSettingsSchema.json';\r\n case 'sparkLine':\r\n return 'settingsSchema/sparkLineSettingsSchema.json';\r\n case 'paretoChart':\r\n return 'settingsSchema/paretoChartSettingsSchema.json';\r\n case 'dataTable':\r\n return 'settingsSchema/dataTableSettingsSchema.json';\r\n case 'statCard':\r\n return 'settingsSchema/statCardSettingsSchema.json';\r\n case 'geoHubCompareMap':\r\n return 'settingsSchema/geoHubCompareMapSettingsSchema.json';\r\n case 'geoHubMap':\r\n return 'settingsSchema/geoHubMapSettingsSchema.json';\r\n case 'geoHubMapWithLayerSelection':\r\n return 'settingsSchema/geoHubMapWithLayerSelectionSettingsSchema.json';\r\n case 'unitChart':\r\n return 'settingsSchema/unitChartSettingsSchema.json';\r\n case 'sankeyChart':\r\n return 'settingsSchema/sankeyChartSettingsSchema.json';\r\n case 'lineChartWithConfidenceInterval':\r\n return 'settingsSchema/lineChartWithConfidenceIntervalSettingsSchema.json';\r\n case 'dataCards':\r\n return 'settingsSchema/dataCardListSettingsSchema.json';\r\n case 'allGraphs':\r\n return 'settingsSchema/SettingsSchema.json';\r\n case 'radarChart':\r\n return 'settingsSchema/radarChartSettingsSchema.json';\r\n case 'hybridMap':\r\n return 'settingsSchema/hybridMapSettingsSchema.json';\r\n default:\r\n console.error('Unknown chart type:', graph);\r\n return null;\r\n }\r\n}\r\n\r\nexport async function getDataSchema(graph: GraphType) {\r\n const response = await fetch(`${BASE_URL}${getDataSchemaLink(graph)}`);\r\n if (!response.ok) {\r\n throw new Error(`Response status: ${response.status}`);\r\n }\r\n const json = await response.json();\r\n return json;\r\n}\r\n\r\nexport async function getSettingsSchema(graph: GraphType | 'allGraphs') {\r\n const response = await fetch(`${BASE_URL}${getSettingsSchemaLink(graph)}`);\r\n if (!response.ok) {\r\n throw new Error(`Response status: ${response.status}`);\r\n }\r\n const json = await response.json();\r\n return json;\r\n}\r\n\r\nexport function getGraphConfigChartConfigIdEnum(\r\n chartType?: GraphType | ThreeDGraphType | 'dashboardWideToLong' | 'dashboard',\r\n) {\r\n switch (chartType) {\r\n case 'barChart':\r\n return ['label', 'size', 'color', 'date'];\r\n case 'bulletChart':\r\n return ['label', 'size', 'target', 'qualitativeRange'];\r\n case 'treeMap':\r\n return ['label', 'size', 'color'];\r\n case 'circlePacking':\r\n return ['label', 'size', 'color'];\r\n case 'butterflyChart':\r\n return ['label', 'leftBar', 'rightBar', 'date'];\r\n case 'groupedBarChart':\r\n return ['label', 'size', 'date'];\r\n case 'stackedBarChart':\r\n return ['label', 'size', 'date'];\r\n case 'dumbbellChart':\r\n return ['x', 'label', 'date'];\r\n case 'donutChart':\r\n return ['size', 'label'];\r\n case 'histogram':\r\n return ['value'];\r\n case 'choroplethMap':\r\n return ['x', 'id', 'date'];\r\n case 'threeDGlobe':\r\n return ['x', 'id'];\r\n case 'biVariateChoroplethMap':\r\n return ['x', 'y', 'id', 'date'];\r\n case 'lineChart':\r\n return ['date', 'y'];\r\n case 'multiLineChart':\r\n return ['date', 'y'];\r\n case 'multiLineAltChart':\r\n return ['date', 'y', 'label', 'color'];\r\n case 'radarChart':\r\n return ['values', 'label', 'color'];\r\n case 'stackedAreaChart':\r\n return ['date', 'y'];\r\n case 'scatterPlot':\r\n return ['x', 'y', 'radius', 'color', 'label', 'date'];\r\n case 'dualAxisLineChart':\r\n return ['date', 'y1', 'y2'];\r\n case 'paretoChart':\r\n return ['label', 'bar', 'line'];\r\n case 'dotDensityMap':\r\n return ['lat', 'long', 'radius', 'color', 'label', 'date'];\r\n case 'slopeChart':\r\n return ['y1', 'y2', 'color', 'label'];\r\n case 'heatMap':\r\n return ['row', 'column', 'value'];\r\n case 'beeSwarmChart':\r\n return ['label', 'position', 'radius', 'color'];\r\n case 'stripChart':\r\n return ['label', 'position', 'color'];\r\n case 'statCard':\r\n return ['value'];\r\n case 'sankeyChart':\r\n return ['source', 'target', 'value'];\r\n case 'differenceLineChart':\r\n return ['date', 'y1', 'y2'];\r\n case 'unitChart':\r\n return ['label', 'value'];\r\n case 'sparkLine':\r\n return ['date', 'y'];\r\n case 'lineChartWithConfidenceInterval':\r\n return ['date', 'y', 'yMin', 'yMax'];\r\n case 'dashboardWideToLong':\r\n return ['label', 'size', 'color', 'value'];\r\n case 'dashboard':\r\n return [\r\n 'label',\r\n 'radius',\r\n 'size',\r\n 'row',\r\n 'y1',\r\n 'y',\r\n 'rightBar',\r\n 'position',\r\n 'leftBar',\r\n 'x',\r\n 'bar',\r\n 'line',\r\n 'y2',\r\n 'column',\r\n 'date',\r\n 'value',\r\n 'color',\r\n 'long',\r\n 'lat',\r\n 'id',\r\n 'source',\r\n 'target',\r\n 'yMin',\r\n 'yMax',\r\n ];\r\n default:\r\n return [\r\n 'label',\r\n 'radius',\r\n 'size',\r\n 'row',\r\n 'y1',\r\n 'y',\r\n 'rightBar',\r\n 'position',\r\n 'leftBar',\r\n 'x',\r\n 'bar',\r\n 'line',\r\n 'y2',\r\n 'column',\r\n 'date',\r\n 'value',\r\n 'color',\r\n 'long',\r\n 'lat',\r\n 'id',\r\n 'source',\r\n 'target',\r\n 'yMin',\r\n 'yMax',\r\n ];\r\n }\r\n}\r\n\r\nfunction getColumnEnum(columns?: string[]) {\r\n if (!columns || columns.length === 0) return {};\r\n return { enum: columns };\r\n}\r\nexport const getColumnsToArraySchema = (columnList?: string[]) => ({\r\n items: {\r\n properties: {\r\n column: {\r\n type: 'string',\r\n ...getColumnEnum(columnList),\r\n },\r\n delimiter: { type: 'string' },\r\n },\r\n type: 'object',\r\n required: ['column'],\r\n },\r\n type: 'array',\r\n});\r\n\r\nexport const getDataSettingsSchema = (columnList?: string[]) => ({\r\n properties: {\r\n columnsToArray: getColumnsToArraySchema(columnList),\r\n data: {},\r\n dataURL: {\r\n oneOf: [\r\n { type: 'string' },\r\n {\r\n type: 'array',\r\n items: {\r\n type: 'object',\r\n properties: {\r\n fileType: {\r\n enum: ['csv', 'json', 'api'],\r\n type: 'string',\r\n },\r\n apiHeaders: {},\r\n dataTransformation: { type: 'string' },\r\n idColumnName: { type: 'string' },\r\n dataURL: { type: 'string' },\r\n delimiter: { type: 'string' },\r\n columnsToArray: getColumnsToArraySchema(),\r\n },\r\n required: ['dataURL', 'idColumnName'],\r\n },\r\n },\r\n ],\r\n },\r\n delimiter: { type: 'string' },\r\n fileType: {\r\n enum: ['csv', 'json', 'api'],\r\n type: 'string',\r\n },\r\n apiHeaders: {},\r\n dataTransformation: { type: 'string' },\r\n idColumnTitle: { type: 'string' },\r\n },\r\n type: 'object',\r\n});\r\n\r\nexport const getReadableHeaderSchema = (columnList?: string[]) => ({\r\n type: 'array',\r\n items: {\r\n type: 'object',\r\n properties: {\r\n value: { type: 'string', ...getColumnEnum(columnList) },\r\n label: { type: 'string' },\r\n },\r\n required: ['value', 'label'],\r\n },\r\n});\r\n\r\nexport const getFiltersSchema = (columnList?: string[]) => ({\r\n items: {\r\n properties: {\r\n clearable: { type: 'boolean' },\r\n allowSelectAll: { type: 'boolean' },\r\n width: { type: 'string' },\r\n excludeValues: {\r\n items: { type: 'string' },\r\n type: 'array',\r\n },\r\n column: {\r\n type: 'string',\r\n ...getColumnEnum(columnList),\r\n },\r\n defaultValue: {\r\n anyOf: [\r\n {\r\n items: { oneOf: [{ type: 'string' }, { type: 'number' }] },\r\n type: 'array',\r\n },\r\n { type: 'string' },\r\n { type: 'number' },\r\n ],\r\n },\r\n label: { type: 'string' },\r\n ui: { type: 'string', enum: ['select', 'radio'] },\r\n singleSelect: { type: 'boolean' },\r\n },\r\n required: ['column'],\r\n type: 'object',\r\n },\r\n type: 'array',\r\n});\r\n\r\nexport const getDataSelectionSchema = async (columnList?: string[]) => {\r\n const settingsSchema = await getSettingsSchema('allGraphs');\r\n return {\r\n type: 'array',\r\n items: {\r\n type: 'object',\r\n properties: {\r\n chartConfigId: { type: 'string' },\r\n label: { type: 'string' },\r\n width: { type: 'string' },\r\n allowedColumnIds: {\r\n type: 'array',\r\n items: {\r\n type: 'object',\r\n properties: {\r\n value: { type: 'string', ...getColumnEnum(columnList) },\r\n label: { type: 'string' },\r\n graphSettings: settingsSchema,\r\n },\r\n required: ['value', 'label'],\r\n },\r\n minItems: 1,\r\n },\r\n ui: { type: 'string', enum: ['select', 'radio'] },\r\n },\r\n required: ['chartConfigId', 'allowedColumnIds'],\r\n },\r\n };\r\n};\r\n\r\nexport const getDataFiltersSchema = (columnList?: string[]) => ({\r\n type: 'array',\r\n items: {\r\n type: 'object',\r\n properties: {\r\n column: { type: 'string', ...getColumnEnum(columnList) },\r\n includeValues: {\r\n type: 'array',\r\n items: {\r\n oneOf: [{ type: 'string' }, { type: 'number' }, { type: 'boolean' }, { type: 'null' }],\r\n },\r\n },\r\n excludeValues: {\r\n type: 'array',\r\n items: {\r\n oneOf: [{ type: 'string' }, { type: 'number' }, { type: 'boolean' }, { type: 'null' }],\r\n },\r\n },\r\n },\r\n required: ['column'],\r\n },\r\n});\r\n\r\nexport const getDataTransformSchema = (columnList?: string[]) => ({\r\n type: 'object',\r\n properties: {\r\n keyColumn: { type: 'string', ...getColumnEnum(columnList) },\r\n aggregationColumnsSetting: {\r\n type: 'array',\r\n items: {\r\n type: 'object',\r\n properties: {\r\n column: { type: 'string', ...getColumnEnum(columnList) },\r\n aggregationMethod: {\r\n type: 'string',\r\n enum: ['sum', 'average', 'min', 'max'],\r\n },\r\n },\r\n required: ['column'],\r\n },\r\n },\r\n },\r\n required: ['keyColumn'],\r\n});\r\n\r\nexport const getGraphDataConfigurationSchema = (\r\n columnList?: string[],\r\n graphType?: GraphType | 'dashboard' | 'dashboardWideToLong',\r\n) => ({\r\n type: 'array',\r\n items: {\r\n type: 'object',\r\n properties: {\r\n columnId: {\r\n oneOf: [\r\n { type: 'string', ...getColumnEnum(columnList) },\r\n {\r\n type: 'array',\r\n items: { type: 'string', ...getColumnEnum(columnList) },\r\n },\r\n ],\r\n },\r\n chartConfigId: {\r\n type: 'string',\r\n ...getColumnEnum(getGraphConfigChartConfigIdEnum(graphType)),\r\n },\r\n },\r\n required: ['columnId', 'chartConfigId'],\r\n },\r\n});\r\n\r\nexport const getAdvancedDataSelectionSchema = async (\r\n columnList?: string[],\r\n graphType?: GraphType,\r\n) => {\r\n const settingsSchema = await getSettingsSchema('allGraphs');\r\n return {\r\n type: 'array',\r\n items: {\r\n type: 'object',\r\n properties: {\r\n chartConfigId: { type: 'string' },\r\n label: { type: 'string' },\r\n width: { type: 'string' },\r\n options: {\r\n type: 'array',\r\n items: {\r\n type: 'object',\r\n properties: {\r\n dataConfiguration: getGraphDataConfigurationSchema(columnList, graphType),\r\n label: { type: 'string' },\r\n graphSettings: settingsSchema,\r\n },\r\n required: ['dataConfiguration', 'label'],\r\n },\r\n minItems: 1,\r\n },\r\n defaultValue: {\r\n type: 'array',\r\n items: {\r\n type: 'object',\r\n properties: {\r\n dataConfiguration: getGraphDataConfigurationSchema(columnList, graphType),\r\n label: { type: 'string' },\r\n graphSettings: settingsSchema,\r\n },\r\n required: ['dataConfiguration', 'label'],\r\n },\r\n minItems: 1,\r\n },\r\n ui: { type: 'string', enum: ['select', 'radio'] },\r\n },\r\n required: ['chartConfigId', 'options'],\r\n },\r\n };\r\n};\r\n\r\nexport const getSingleGraphJSONSchema = async (columnList?: string[], graphType?: GraphType) => {\r\n const settingsSchema = await getSettingsSchema(graphType || 'allGraphs');\r\n if (\r\n graphType &&\r\n graphList\r\n .filter(el => el.geoHubMapPresentation)\r\n .map(el => el.graphID)\r\n .indexOf(graphType) !== -1\r\n )\r\n return {\r\n type: 'object',\r\n properties: {\r\n graphSettings: settingsSchema,\r\n graphType: {\r\n type: 'string',\r\n enum: graphList.filter(el => el.geoHubMapPresentation).map(el => el.graphID),\r\n },\r\n debugMode: { type: 'boolean' },\r\n theme: { type: 'string', enum: ['dark', 'light'] },\r\n uiMode: {\r\n type: 'string',\r\n enum: ['light', 'normal'],\r\n },\r\n classNames: { type: 'object' },\r\n highlightDataPointSettings: {\r\n type: 'object',\r\n properties: {\r\n column: { type: 'string' },\r\n label: { type: 'string' },\r\n defaultValues: {\r\n oneOf: [\r\n {\r\n type: 'array',\r\n items: { type: 'string' },\r\n },\r\n {\r\n type: 'array',\r\n items: { type: 'number' },\r\n },\r\n ],\r\n },\r\n excludeValues: {\r\n type: 'array',\r\n items: { type: 'string' },\r\n },\r\n allowSelectAll: { type: 'boolean' },\r\n width: { type: 'string' },\r\n },\r\n required: ['column'],\r\n },\r\n styles: { type: 'object' },\r\n },\r\n required: ['graphType'],\r\n };\r\n if (graphType === 'dataTable' || graphType === 'dataCards')\r\n return {\r\n type: 'object',\r\n properties: {\r\n graphSettings: settingsSchema,\r\n dataSettings: getDataSettingsSchema(columnList),\r\n filters: getFiltersSchema(columnList),\r\n noOfFiltersPerRow: { type: 'number' },\r\n graphType: {\r\n type: 'string',\r\n enum: ['dataTable', 'dataCards'],\r\n },\r\n dataTransform: getDataTransformSchema(columnList),\r\n dataFilters: getDataFiltersSchema(columnList),\r\n readableHeader: getReadableHeaderSchema(columnList),\r\n dataSelectionOptions: getDataSelectionSchema(columnList),\r\n advancedDataSelectionOptions: getAdvancedDataSelectionSchema(columnList, graphType),\r\n debugMode: { type: 'boolean' },\r\n theme: { type: 'string', enum: ['dark', 'light'] },\r\n uiMode: {\r\n type: 'string',\r\n enum: ['light', 'normal'],\r\n },\r\n classNames: { type: 'object' },\r\n highlightDataPointSettings: {\r\n type: 'object',\r\n properties: {\r\n column: { type: 'string' },\r\n label: { type: 'string' },\r\n defaultValues: {\r\n oneOf: [\r\n {\r\n type: 'array',\r\n items: { type: 'string' },\r\n },\r\n {\r\n type: 'array',\r\n items: { type: 'number' },\r\n },\r\n ],\r\n },\r\n excludeValues: {\r\n type: 'array',\r\n items: { type: 'string' },\r\n },\r\n allowSelectAll: { type: 'boolean' },\r\n width: { type: 'string' },\r\n },\r\n required: ['column'],\r\n },\r\n styles: { type: 'object' },\r\n },\r\n required: ['dataSettings', 'graphType'],\r\n };\r\n return {\r\n type: 'object',\r\n properties: {\r\n graphSettings: settingsSchema,\r\n dataSettings: getDataSettingsSchema(columnList),\r\n filters: getFiltersSchema(columnList),\r\n classNames: { type: 'object' },\r\n styles: { type: 'object' },\r\n graphType: {\r\n type: 'string',\r\n enum: graphList.map(el => el.graphID),\r\n },\r\n noOfFiltersPerRow: { type: 'number' },\r\n dataTransform: getDataTransformSchema(columnList),\r\n dataFilters: getDataFiltersSchema(columnList),\r\n graphDataConfiguration: getGraphDataConfigurationSchema(columnList, graphType),\r\n readableHeader: getReadableHeaderSchema(columnList),\r\n dataSelectionOptions: getDataSelectionSchema(columnList),\r\n advancedDataSelectionOptions: getAdvancedDataSelectionSchema(columnList, graphType),\r\n debugMode: { type: 'boolean' },\r\n theme: { type: 'string', enum: ['dark', 'light'] },\r\n highlightDataPointSettings: {\r\n type: 'object',\r\n properties: {\r\n column: { type: 'string' },\r\n label: { type: 'string' },\r\n defaultValues: {\r\n oneOf: [\r\n {\r\n type: 'array',\r\n items: { type: 'string' },\r\n },\r\n {\r\n type: 'array',\r\n items: { type: 'number' },\r\n },\r\n ],\r\n },\r\n excludeValues: {\r\n type: 'array',\r\n items: { type: 'string' },\r\n },\r\n allowSelectAll: { type: 'boolean' },\r\n width: { type: 'string' },\r\n },\r\n required: ['column'],\r\n },\r\n uiMode: {\r\n type: 'string',\r\n enum: ['light', 'normal'],\r\n },\r\n },\r\n required: !graphType ? ['graphType'] : ['dataSettings', 'graphType', 'graphDataConfiguration'],\r\n };\r\n};\r\n\r\nexport const getGriddedGraphJSONSchema = async (columnList?: string[], graphType?: GraphType) => {\r\n const settingsSchema = await getSettingsSchema(graphType || 'allGraphs');\r\n if (graphType === 'dataTable' || graphType === 'dataCards')\r\n return {\r\n type: 'object',\r\n properties: {\r\n graphSettings: settingsSchema,\r\n dataSettings: getDataSettingsSchema(columnList),\r\n filters: getFiltersSchema(columnList),\r\n classNames: { type: 'object' },\r\n styles: { type: 'object' },\r\n noOfFiltersPerRow: { type: 'number' },\r\n graphType: {\r\n type: 'string',\r\n enum: ['dataTable', 'dataCards'],\r\n },\r\n uiMode: {\r\n type: 'string',\r\n enum: ['light', 'normal'],\r\n },\r\n dataTransform: getDataTransformSchema(columnList),\r\n dataFilters: getDataFiltersSchema(columnList),\r\n noOfColumns: { type: 'number' },\r\n columnGridBy: { type: 'string' },\r\n showCommonColorScale: { type: 'boolean' },\r\n minGraphHeight: { type: 'number' },\r\n minGraphWidth: { type: 'number' },\r\n readableHeader: getReadableHeaderSchema(columnList),\r\n dataSelectionOptions: getDataSelectionSchema(columnList),\r\n advancedDataSelectionOptions: getAdvancedDataSelectionSchema(columnList, graphType),\r\n debugMode: { type: 'boolean' },\r\n theme: { type: 'string', enum: ['dark', 'light'] },\r\n },\r\n required: ['columnGridBy', 'dataSettings', 'graphType'],\r\n };\r\n return {\r\n type: 'object',\r\n properties: {\r\n graphSettings: settingsSchema,\r\n dataSettings: getDataSettingsSchema(columnList),\r\n filters: getFiltersSchema(columnList),\r\n classNames: { type: 'object' },\r\n styles: { type: 'object' },\r\n noOfFiltersPerRow: { type: 'number' },\r\n graphType: {\r\n type: 'string',\r\n enum: graphList.filter(el => el.availableInGriddedGraph !== false).map(el => el.graphID),\r\n },\r\n uiMode: {\r\n type: 'string',\r\n enum: ['light', 'normal'],\r\n },\r\n dataTransform: getDataTransformSchema(columnList),\r\n dataFilters: getDataFiltersSchema(columnList),\r\n graphDataConfiguration: getGraphDataConfigurationSchema(columnList, graphType),\r\n noOfColumns: { type: 'number' },\r\n columnGridBy: { type: 'string' },\r\n showCommonColorScale: { type: 'boolean' },\r\n minGraphHeight: { type: 'number' },\r\n minGraphWidth: { type: 'number' },\r\n readableHeader: getReadableHeaderSchema(columnList),\r\n dataSelectionOptions: getDataSelectionSchema(columnList),\r\n advancedDataSelectionOptions: getAdvancedDataSelectionSchema(columnList, graphType),\r\n debugMode: { type: 'boolean' },\r\n theme: { type: 'string', enum: ['dark', 'light'] },\r\n },\r\n required: !graphType\r\n ? ['columnGridBy', 'dataSettings', 'graphType']\r\n : ['columnGridBy', 'dataSettings', 'graphType', 'graphDataConfiguration'],\r\n };\r\n};\r\n\r\nexport const getDashboardJSONSchema = async (columnList?: string[]) => {\r\n const settingsSchema = await getSettingsSchema('allGraphs');\r\n return {\r\n properties: {\r\n dashboardID: { type: 'string' },\r\n graphClassNames: { type: 'object' },\r\n graphStyles: { type: 'object' },\r\n dashboardLayout: {\r\n properties: {\r\n backgroundColor: { type: ['string', 'boolean'] },\r\n description: { type: 'string' },\r\n language: {\r\n enum: ['ar', 'en', 'he'],\r\n type: 'string',\r\n },\r\n padding: { type: 'string' },\r\n title: { type: 'string' },\r\n rows: {\r\n items: {\r\n properties: {\r\n columns: {\r\n items: {\r\n properties: {\r\n columnWidth: { type: 'number' },\r\n dataFilters: getDataFiltersSchema(),\r\n dataTransform: getDataTransformSchema(),\r\n graphDataConfiguration: getGraphDataConfigurationSchema(\r\n undefined,\r\n 'dashboard',\r\n ),\r\n graphType: {\r\n enum: graphList.map(el => el.graphID),\r\n type: 'string',\r\n },\r\n settings: settingsSchema,\r\n dataSelectionOptions: getDataSelectionSchema(),\r\n advancedDataSelectionOptions: getAdvancedDataSelectionSchema(),\r\n attachedFilter: {\r\n type: 'string',\r\n ...getColumnEnum(columnList),\r\n },\r\n },\r\n type: 'object',\r\n required: ['graphType'],\r\n },\r\n type: 'array',\r\n },\r\n height: { type: 'number' },\r\n },\r\n type: 'object',\r\n required: ['columns'],\r\n },\r\n type: 'array',\r\n },\r\n },\r\n type: 'object',\r\n required: ['rows'],\r\n },\r\n dataSettings: getDataSettingsSchema(columnList),\r\n filters: getFiltersSchema(columnList),\r\n noOfFiltersPerRow: { type: 'number' },\r\n uiMode: {\r\n type: 'string',\r\n enum: ['light', 'normal'],\r\n },\r\n filterPosition: { type: 'string', enum: ['top', 'side'] },\r\n readableHeader: getReadableHeaderSchema(columnList),\r\n dataFilters: getDataFiltersSchema(columnList),\r\n debugMode: { type: 'boolean' },\r\n theme: { type: 'string', enum: ['dark', 'light'] },\r\n graphBackgroundColor: { oneOf: [{ type: 'string' }, { type: 'boolean' }] },\r\n },\r\n type: 'object',\r\n required: ['dashboardLayout', 'dataSettings'],\r\n };\r\n};\r\n\r\nexport const getDashboardWideToLongFormatJSONSchema = async () => {\r\n const settingsSchema = await getSettingsSchema('allGraphs');\r\n return {\r\n properties: {\r\n dashboardID: { type: 'string' },\r\n graphClassNames: { type: 'object' },\r\n graphStyles: { type: 'object' },\r\n dashboardLayout: {\r\n properties: {\r\n backgroundColor: { type: ['string', 'boolean'] },\r\n description: { type: 'string' },\r\n language: {\r\n enum: ['ar', 'en', 'he'],\r\n type: 'string',\r\n },\r\n padding: { type: 'string' },\r\n dropdownLabel: { type: 'string' },\r\n title: { type: 'string' },\r\n rows: {\r\n items: {\r\n properties: {\r\n columns: {\r\n items: {\r\n properties: {\r\n columnWidth: { type: 'number' },\r\n dataFilters: getDataFiltersSchema(),\r\n graphDataConfiguration: getGraphDataConfigurationSchema(\r\n undefined,\r\n 'dashboardWideToLong',\r\n ),\r\n graphType: {\r\n enum: graphList\r\n .filter(el => el.availableInWideToLongFormat)\r\n .map(el => el.graphID),\r\n type: 'string',\r\n },\r\n settings: settingsSchema,\r\n },\r\n type: 'object',\r\n required: ['graphType'],\r\n },\r\n type: 'array',\r\n },\r\n height: { type: 'number' },\r\n },\r\n type: 'object',\r\n required: ['columns'],\r\n },\r\n type: 'array',\r\n },\r\n },\r\n type: 'object',\r\n required: ['rows'],\r\n },\r\n dataSettings: {\r\n properties: {\r\n ...getDataSettingsSchema().properties,\r\n keyColumn: { type: 'string' },\r\n },\r\n required: ['keyColumn'],\r\n type: 'object',\r\n },\r\n uiMode: {\r\n type: 'string',\r\n enum: ['light', 'normal'],\r\n },\r\n dataFilters: getDataFiltersSchema(),\r\n readableHeader: getReadableHeaderSchema(),\r\n debugMode: { type: 'boolean' },\r\n theme: { type: 'string', enum: ['dark', 'light'] },\r\n graphBackgroundColor: { oneOf: [{ type: 'string' }, { type: 'boolean' }] },\r\n },\r\n type: 'object',\r\n required: ['dashboardLayout', 'dataSettings'],\r\n };\r\n};\r\n"],"names":["BASE_URL","getDataSchemaLink","graph","graphList","filter","el","geoHubMapPresentation","map","graphID","indexOf","console","error","getSettingsSchemaLink","getDataSchema","response","fetch","ok","Error","status","json","getSettingsSchema","getGraphConfigChartConfigIdEnum","chartType","getColumnEnum","columns","length","enum","getColumnsToArraySchema","columnList","items","properties","column","type","delimiter","required","getDataSettingsSchema","columnsToArray","data","dataURL","oneOf","fileType","apiHeaders","dataTransformation","idColumnName","idColumnTitle","getReadableHeaderSchema","value","label","getFiltersSchema","clearable","allowSelectAll","width","excludeValues","defaultValue","anyOf","ui","singleSelect","getDataSelectionSchema","settingsSchema","chartConfigId","allowedColumnIds","graphSettings","minItems","getDataFiltersSchema","includeValues","getDataTransformSchema","keyColumn","aggregationColumnsSetting","aggregationMethod","getGraphDataConfigurationSchema","graphType","columnId","getAdvancedDataSelectionSchema","options","dataConfiguration","getSingleGraphJSONSchema","debugMode","theme","uiMode","classNames","highlightDataPointSettings","defaultValues","styles","dataSettings","filters","noOfFiltersPerRow","dataTransform","dataFilters","readableHeader","dataSelectionOptions","advancedDataSelectionOptions","graphDataConfiguration","getGriddedGraphJSONSchema","noOfColumns","columnGridBy","showCommonColorScale","minGraphHeight","minGraphWidth","availableInGriddedGraph","getDashboardJSONSchema","dashboardID","graphClassNames","graphStyles","dashboardLayout","backgroundColor","description","language","padding","title","rows","columnWidth","undefined","settings","attachedFilter","height","filterPosition","graphBackgroundColor","getDashboardWideToLongFormatJSONSchema","dropdownLabel","availableInWideToLongFormat"],"mappings":"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"}
|
package/dist/getSchema.d.ts
CHANGED
|
@@ -1033,7 +1033,7 @@ export declare const getDataFiltersSchema: (columnList?: string[]) => {
|
|
|
1033
1033
|
|
|
1034
1034
|
export declare function getDataSchema(graph: GraphType): Promise<any>;
|
|
1035
1035
|
|
|
1036
|
-
export declare function getDataSchemaLink(graph: GraphType | ThreeDGraphType | GeoHubGraphType): "dataSchema/dataTableDataSchema.json" | "dataSchema/barGraphDataSchema.json" | "dataSchema/stackedBarGraphDataSchema.json" | "dataSchema/groupedBarGraphDataSchema.json" | "dataSchema/lineChartDataSchema.json" | "dataSchema/dualAxisLineChartDataSchema.json" | "dataSchema/differenceLineChartDataSchema.json" | "dataSchema/multiLineChartDataSchema.json" | "dataSchema/multiLineAltChartDataSchema.json" | "dataSchema/areaChartDataSchema.json" | "dataSchema/choroplethMapDataSchema.json" | "dataSchema/bulletChartDataSchema.json" | "dataSchema/biVariateChoroplethMapDataSchema.json" | "dataSchema/dotDensityMapDataSchema.json" | "dataSchema/donutChartDataSchema.json" | "dataSchema/slopeChartDataSchema.json" | "dataSchema/scatterPlotDataSchema.json" | "dataSchema/dumbbellChartDataSchema.json" | "dataSchema/treeMapDataSchema.json" | "dataSchema/circlePackingDataSchema.json" | "dataSchema/heatMapDataSchema.json" | "dataSchema/stripChartDataSchema.json" | "dataSchema/beeSwarmChartDataSchema.json" | "dataSchema/butterflyChartDataSchema.json" | "dataSchema/histogramDataSchema.json" | "dataSchema/paretoChartDataSchema.json" | "dataSchema/statCardDataSchema.json" | "dataSchema/unitChartDataSchema.json" | "dataSchema/sankeyChartDataSchema.json" | "dataSchema/lineChartWithConfidenceIntervalDataSchema.json" | "dataSchema/radarChartDataSchema.json" | null;
|
|
1036
|
+
export declare function getDataSchemaLink(graph: GraphType | ThreeDGraphType | GeoHubGraphType): "dataSchema/dataTableDataSchema.json" | "dataSchema/barGraphDataSchema.json" | "dataSchema/stackedBarGraphDataSchema.json" | "dataSchema/groupedBarGraphDataSchema.json" | "dataSchema/lineChartDataSchema.json" | "dataSchema/dualAxisLineChartDataSchema.json" | "dataSchema/differenceLineChartDataSchema.json" | "dataSchema/multiLineChartDataSchema.json" | "dataSchema/multiLineAltChartDataSchema.json" | "dataSchema/areaChartDataSchema.json" | "dataSchema/choroplethMapDataSchema.json" | "dataSchema/bulletChartDataSchema.json" | "dataSchema/biVariateChoroplethMapDataSchema.json" | "dataSchema/dotDensityMapDataSchema.json" | "dataSchema/donutChartDataSchema.json" | "dataSchema/slopeChartDataSchema.json" | "dataSchema/scatterPlotDataSchema.json" | "dataSchema/dumbbellChartDataSchema.json" | "dataSchema/treeMapDataSchema.json" | "dataSchema/circlePackingDataSchema.json" | "dataSchema/heatMapDataSchema.json" | "dataSchema/stripChartDataSchema.json" | "dataSchema/beeSwarmChartDataSchema.json" | "dataSchema/butterflyChartDataSchema.json" | "dataSchema/histogramDataSchema.json" | "dataSchema/paretoChartDataSchema.json" | "dataSchema/statCardDataSchema.json" | "dataSchema/unitChartDataSchema.json" | "dataSchema/sankeyChartDataSchema.json" | "dataSchema/lineChartWithConfidenceIntervalDataSchema.json" | "dataSchema/hybridMapDataSchema.json" | "dataSchema/radarChartDataSchema.json" | null;
|
|
1037
1037
|
|
|
1038
1038
|
export declare const getDataSelectionSchema: (columnList?: string[]) => Promise<{
|
|
1039
1039
|
type: string;
|
|
@@ -2232,7 +2232,7 @@ export declare const getReadableHeaderSchema: (columnList?: string[]) => {
|
|
|
2232
2232
|
|
|
2233
2233
|
export declare function getSettingsSchema(graph: GraphType | 'allGraphs'): Promise<any>;
|
|
2234
2234
|
|
|
2235
|
-
export declare function getSettingsSchemaLink(graph: GraphType | ThreeDGraphType | GeoHubGraphType | 'allGraphs'): "settingsSchema/simpleBarChartSettingsSchema.json" | "settingsSchema/stackedBarChartSettingsSchema.json" | "settingsSchema/groupedBarChartSettingsSchema.json" | "settingsSchema/lineChartSettingsSchema.json" | "settingsSchema/dualAxisLineChartSettingsSchema.json" | "settingsSchema/multiLineChartSettingsSchema.json" | "settingsSchema/multiLineAltChartSettingsSchema.json" | "settingsSchema/differenceLineChartSettingsSchema.json" | "settingsSchema/stackedAreaChartSettingsSchema.json" | "settingsSchema/choroplethMapSettingsSchema.json" | "settingsSchema/threeDGlobeSettingsSchema.json" | "settingsSchema/bulletChartSettingsSchema.json" | "settingsSchema/biVariateChoroplethMapSettingsSchema.json" | "settingsSchema/dotDensityMapSettingsSchema.json" | "settingsSchema/donutChartSettingsSchema.json" | "settingsSchema/slopeChartSettingsSchema.json" | "settingsSchema/scatterPlotSettingsSchema.json" | "settingsSchema/dumbbellChartSettingsSchema.json" | "settingsSchema/treeMapSettingsSchema.json" | "settingsSchema/circlePackingSettingsSchema.json" | "settingsSchema/heatMapSettingsSchema.json" | "settingsSchema/stripChartSettingsSchema.json" | "settingsSchema/beeSwarmChartSettingsSchema.json" | "settingsSchema/butterflyChartSettingsSchema.json" | "settingsSchema/histogramSettingsSchema.json" | "settingsSchema/sparkLineSettingsSchema.json" | "settingsSchema/paretoChartSettingsSchema.json" | "settingsSchema/dataTableSettingsSchema.json" | "settingsSchema/statCardSettingsSchema.json" | "settingsSchema/geoHubCompareMapSettingsSchema.json" | "settingsSchema/geoHubMapSettingsSchema.json" | "settingsSchema/geoHubMapWithLayerSelectionSettingsSchema.json" | "settingsSchema/unitChartSettingsSchema.json" | "settingsSchema/sankeyChartSettingsSchema.json" | "settingsSchema/lineChartWithConfidenceIntervalSettingsSchema.json" | "settingsSchema/dataCardListSettingsSchema.json" | "settingsSchema/SettingsSchema.json" | "settingsSchema/radarChartSettingsSchema.json" | null;
|
|
2235
|
+
export declare function getSettingsSchemaLink(graph: GraphType | ThreeDGraphType | GeoHubGraphType | 'allGraphs'): "settingsSchema/simpleBarChartSettingsSchema.json" | "settingsSchema/stackedBarChartSettingsSchema.json" | "settingsSchema/groupedBarChartSettingsSchema.json" | "settingsSchema/lineChartSettingsSchema.json" | "settingsSchema/dualAxisLineChartSettingsSchema.json" | "settingsSchema/multiLineChartSettingsSchema.json" | "settingsSchema/multiLineAltChartSettingsSchema.json" | "settingsSchema/differenceLineChartSettingsSchema.json" | "settingsSchema/stackedAreaChartSettingsSchema.json" | "settingsSchema/choroplethMapSettingsSchema.json" | "settingsSchema/threeDGlobeSettingsSchema.json" | "settingsSchema/bulletChartSettingsSchema.json" | "settingsSchema/biVariateChoroplethMapSettingsSchema.json" | "settingsSchema/dotDensityMapSettingsSchema.json" | "settingsSchema/donutChartSettingsSchema.json" | "settingsSchema/slopeChartSettingsSchema.json" | "settingsSchema/scatterPlotSettingsSchema.json" | "settingsSchema/dumbbellChartSettingsSchema.json" | "settingsSchema/treeMapSettingsSchema.json" | "settingsSchema/circlePackingSettingsSchema.json" | "settingsSchema/heatMapSettingsSchema.json" | "settingsSchema/stripChartSettingsSchema.json" | "settingsSchema/beeSwarmChartSettingsSchema.json" | "settingsSchema/butterflyChartSettingsSchema.json" | "settingsSchema/histogramSettingsSchema.json" | "settingsSchema/sparkLineSettingsSchema.json" | "settingsSchema/paretoChartSettingsSchema.json" | "settingsSchema/dataTableSettingsSchema.json" | "settingsSchema/statCardSettingsSchema.json" | "settingsSchema/geoHubCompareMapSettingsSchema.json" | "settingsSchema/geoHubMapSettingsSchema.json" | "settingsSchema/geoHubMapWithLayerSelectionSettingsSchema.json" | "settingsSchema/unitChartSettingsSchema.json" | "settingsSchema/sankeyChartSettingsSchema.json" | "settingsSchema/lineChartWithConfidenceIntervalSettingsSchema.json" | "settingsSchema/dataCardListSettingsSchema.json" | "settingsSchema/SettingsSchema.json" | "settingsSchema/radarChartSettingsSchema.json" | "settingsSchema/hybridMapSettingsSchema.json" | null;
|
|
2236
2236
|
|
|
2237
2237
|
export declare const getSingleGraphJSONSchema: (columnList?: string[], graphType?: GraphType) => Promise<{
|
|
2238
2238
|
type: string;
|
|
@@ -3251,7 +3251,7 @@ export declare const getSingleGraphJSONSchema: (columnList?: string[], graphType
|
|
|
3251
3251
|
|
|
3252
3252
|
declare type GraphType = GraphTypeForGriddedGraph;
|
|
3253
3253
|
|
|
3254
|
-
declare type GraphTypeForGriddedGraph = 'barChart' | 'stackedBarChart' | 'groupedBarChart' | 'lineChart' | 'dualAxisLineChart' | 'multiLineChart' | 'multiLineAltChart' | 'differenceLineChart' | 'stackedAreaChart' | 'choroplethMap' | 'biVariateChoroplethMap' | 'dotDensityMap' | 'donutChart' | 'slopeChart' | 'scatterPlot' | 'dumbbellChart' | 'treeMap' | 'circlePacking' | 'heatMap' | 'stripChart' | 'beeSwarmChart' | 'butterflyChart' | 'histogram' | 'sparkLine' | 'paretoChart' | 'dataTable' | 'statCard' | 'unitChart' | 'sankeyChart' | 'lineChartWithConfidenceInterval' | 'dataCards' | 'radarChart' | 'bulletChart';
|
|
3254
|
+
declare type GraphTypeForGriddedGraph = 'barChart' | 'stackedBarChart' | 'groupedBarChart' | 'lineChart' | 'dualAxisLineChart' | 'multiLineChart' | 'multiLineAltChart' | 'differenceLineChart' | 'stackedAreaChart' | 'choroplethMap' | 'biVariateChoroplethMap' | 'hybridMap' | 'dotDensityMap' | 'donutChart' | 'slopeChart' | 'scatterPlot' | 'dumbbellChart' | 'treeMap' | 'circlePacking' | 'heatMap' | 'stripChart' | 'beeSwarmChart' | 'butterflyChart' | 'histogram' | 'sparkLine' | 'paretoChart' | 'dataTable' | 'statCard' | 'unitChart' | 'sankeyChart' | 'lineChartWithConfidenceInterval' | 'dataCards' | 'radarChart' | 'bulletChart';
|
|
3255
3255
|
|
|
3256
3256
|
declare type ThreeDGraphType = 'threeDGlobe';
|
|
3257
3257
|
|
package/dist/getSchema.js
CHANGED
|
@@ -69,6 +69,8 @@ function S(e) {
|
|
|
69
69
|
return "dataSchema/sankeyChartDataSchema.json";
|
|
70
70
|
case "lineChartWithConfidenceInterval":
|
|
71
71
|
return "dataSchema/lineChartWithConfidenceIntervalDataSchema.json";
|
|
72
|
+
case "hybridMap":
|
|
73
|
+
return "dataSchema/hybridMapDataSchema.json";
|
|
72
74
|
case "radarChart":
|
|
73
75
|
return "dataSchema/radarChartDataSchema.json";
|
|
74
76
|
default:
|
|
@@ -153,6 +155,8 @@ function b(e) {
|
|
|
153
155
|
return "settingsSchema/SettingsSchema.json";
|
|
154
156
|
case "radarChart":
|
|
155
157
|
return "settingsSchema/radarChartSettingsSchema.json";
|
|
158
|
+
case "hybridMap":
|
|
159
|
+
return "settingsSchema/hybridMapSettingsSchema.json";
|
|
156
160
|
default:
|
|
157
161
|
return console.error("Unknown chart type:", e), null;
|
|
158
162
|
}
|