@dhis2/analytics 26.4.1 → 26.6.0
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/build/cjs/__fixtures__/fixtures.js +1 -0
- package/build/cjs/__fixtures__/json/api/analytics/outlierDetection.json +213 -0
- package/build/cjs/api/analytics/Analytics.js +7 -0
- package/build/cjs/api/analytics/AnalyticsAggregate.js +27 -1
- package/build/cjs/api/analytics/AnalyticsBase.js +32 -13
- package/build/cjs/api/analytics/AnalyticsRequest.js +33 -10
- package/build/cjs/api/analytics/AnalyticsRequestBase.js +12 -6
- package/build/cjs/api/analytics/AnalyticsRequestPropertiesMixin.js +19 -0
- package/build/cjs/api/analytics/AnalyticsResponse.js +42 -39
- package/build/cjs/api/analytics/AnalyticsTrackedEntities.js +31 -0
- package/build/cjs/api/analytics/__tests__/Analytics.spec.js +5 -0
- package/build/cjs/api/analytics/__tests__/AnalyticsAggregate.spec.js +29 -0
- package/build/cjs/api/analytics/__tests__/AnalyticsBase.spec.js +36 -2
- package/build/cjs/api/analytics/utils.js +21 -2
- package/build/cjs/components/DataDimension/DataDimension.js +31 -7
- package/build/cjs/components/DataDimension/DataTypeSelector.js +29 -8
- package/build/cjs/components/DataDimension/GroupSelector.js +7 -7
- package/build/cjs/components/DataDimension/ItemSelector.js +79 -61
- package/build/cjs/components/PeriodDimension/PeriodDimension.js +5 -2
- package/build/cjs/components/PeriodDimension/PeriodTransfer.js +64 -31
- package/build/cjs/components/PeriodDimension/__tests__/__snapshots__/PeriodDimension.spec.js.snap +1 -1
- package/build/cjs/components/PeriodDimension/__tests__/__snapshots__/PeriodSelector.spec.js.snap +1 -12
- package/build/cjs/components/VisTypeIcon.js +6 -1
- package/build/cjs/index.js +43 -1
- package/build/cjs/locales/en/translations.json +5 -1
- package/build/cjs/modules/__tests__/getAdaptedUiLayoutByType.spec.js +15 -0
- package/build/cjs/modules/axis.js +4 -0
- package/build/cjs/modules/getAdaptedUiLayoutByType.js +9 -0
- package/build/cjs/modules/layout/axisGetDimensionIds.js +1 -1
- package/build/cjs/modules/layout/dimension.js +9 -2
- package/build/cjs/modules/layout/dimensionCreate.js +3 -0
- package/build/cjs/modules/layout/dimensionGetId.js +9 -3
- package/build/cjs/modules/layout/layoutFilterDimensions.js +1 -1
- package/build/cjs/modules/layout/layoutGetAxisIdDimensionIdsObject.js +1 -1
- package/build/cjs/modules/layout/layoutGetDimensionIdItemIdsObject.js +1 -1
- package/build/cjs/modules/layout/layoutHasDynamicDimension.js +1 -1
- package/build/cjs/modules/layoutTypes.js +4 -2
- package/build/cjs/modules/layoutUiRules/__tests__/rules.spec.js +13 -1
- package/build/cjs/modules/layoutUiRules/index.js +12 -0
- package/build/cjs/modules/layoutUiRules/rules.js +22 -2
- package/build/cjs/modules/layoutUiRules/rulesHelper.js +4 -2
- package/build/cjs/modules/layoutUiRules/rulesUtils.js +7 -2
- package/build/cjs/modules/visTypeToLayoutType.js +2 -1
- package/build/cjs/modules/visTypes.js +9 -3
- package/build/es/__fixtures__/fixtures.js +1 -0
- package/build/es/__fixtures__/json/api/analytics/outlierDetection.json +213 -0
- package/build/es/api/analytics/Analytics.js +7 -0
- package/build/es/api/analytics/AnalyticsAggregate.js +27 -1
- package/build/es/api/analytics/AnalyticsBase.js +31 -13
- package/build/es/api/analytics/AnalyticsRequest.js +33 -10
- package/build/es/api/analytics/AnalyticsRequestBase.js +12 -6
- package/build/es/api/analytics/AnalyticsRequestPropertiesMixin.js +19 -0
- package/build/es/api/analytics/AnalyticsResponse.js +42 -39
- package/build/es/api/analytics/AnalyticsTrackedEntities.js +24 -0
- package/build/es/api/analytics/__tests__/Analytics.spec.js +5 -0
- package/build/es/api/analytics/__tests__/AnalyticsAggregate.spec.js +29 -0
- package/build/es/api/analytics/__tests__/AnalyticsBase.spec.js +34 -1
- package/build/es/api/analytics/utils.js +18 -1
- package/build/es/components/DataDimension/DataDimension.js +27 -6
- package/build/es/components/DataDimension/DataTypeSelector.js +30 -9
- package/build/es/components/DataDimension/GroupSelector.js +7 -7
- package/build/es/components/DataDimension/ItemSelector.js +80 -62
- package/build/es/components/PeriodDimension/PeriodDimension.js +5 -2
- package/build/es/components/PeriodDimension/PeriodTransfer.js +65 -32
- package/build/es/components/PeriodDimension/__tests__/__snapshots__/PeriodDimension.spec.js.snap +1 -1
- package/build/es/components/PeriodDimension/__tests__/__snapshots__/PeriodSelector.spec.js.snap +1 -12
- package/build/es/components/VisTypeIcon.js +8 -3
- package/build/es/index.js +4 -4
- package/build/es/locales/en/translations.json +5 -1
- package/build/es/modules/__tests__/getAdaptedUiLayoutByType.spec.js +16 -1
- package/build/es/modules/axis.js +5 -1
- package/build/es/modules/getAdaptedUiLayoutByType.js +10 -1
- package/build/es/modules/layout/axisGetDimensionIds.js +1 -1
- package/build/es/modules/layout/dimension.js +7 -1
- package/build/es/modules/layout/dimensionCreate.js +4 -1
- package/build/es/modules/layout/dimensionGetId.js +10 -4
- package/build/es/modules/layout/layoutFilterDimensions.js +1 -1
- package/build/es/modules/layout/layoutGetAxisIdDimensionIdsObject.js +1 -1
- package/build/es/modules/layout/layoutGetDimensionIdItemIdsObject.js +1 -1
- package/build/es/modules/layout/layoutHasDynamicDimension.js +1 -1
- package/build/es/modules/layoutTypes.js +2 -1
- package/build/es/modules/layoutUiRules/__tests__/rules.spec.js +14 -2
- package/build/es/modules/layoutUiRules/index.js +2 -2
- package/build/es/modules/layoutUiRules/rules.js +22 -3
- package/build/es/modules/layoutUiRules/rulesHelper.js +3 -2
- package/build/es/modules/layoutUiRules/rulesUtils.js +6 -2
- package/build/es/modules/visTypeToLayoutType.js +4 -3
- package/build/es/modules/visTypes.js +7 -3
- package/package.json +6 -3
|
@@ -1,10 +1,11 @@
|
|
|
1
1
|
import { AXIS_ID_COLUMNS, AXIS_ID_ROWS, AXIS_ID_FILTERS } from '../layout/axis.js';
|
|
2
|
-
import { DIMENSION_ID_PERIOD, DIMENSION_ID_DATA, DIMENSION_ID_ORGUNIT } from '../predefinedDimensions.js';
|
|
3
|
-
import { VIS_TYPE_COLUMN, VIS_TYPE_STACKED_COLUMN, VIS_TYPE_BAR, VIS_TYPE_STACKED_BAR, VIS_TYPE_LINE, VIS_TYPE_AREA, VIS_TYPE_STACKED_AREA, VIS_TYPE_RADAR, VIS_TYPE_GAUGE, VIS_TYPE_PIE, VIS_TYPE_SINGLE_VALUE, VIS_TYPE_YEAR_OVER_YEAR_LINE, VIS_TYPE_YEAR_OVER_YEAR_COLUMN, VIS_TYPE_PIVOT_TABLE, VIS_TYPE_SCATTER, VIS_TYPE_LINE_LIST } from '../visTypes.js';
|
|
2
|
+
import { DIMENSION_ID_PERIOD, DIMENSION_ID_DATA, DIMENSION_ID_ORGUNIT, DIMENSION_ID_ASSIGNED_CATEGORIES } from '../predefinedDimensions.js';
|
|
3
|
+
import { VIS_TYPE_COLUMN, VIS_TYPE_STACKED_COLUMN, VIS_TYPE_BAR, VIS_TYPE_STACKED_BAR, VIS_TYPE_LINE, VIS_TYPE_AREA, VIS_TYPE_STACKED_AREA, VIS_TYPE_RADAR, VIS_TYPE_GAUGE, VIS_TYPE_PIE, VIS_TYPE_SINGLE_VALUE, VIS_TYPE_YEAR_OVER_YEAR_LINE, VIS_TYPE_YEAR_OVER_YEAR_COLUMN, VIS_TYPE_PIVOT_TABLE, VIS_TYPE_SCATTER, VIS_TYPE_LINE_LIST, VIS_TYPE_OUTLIER_TABLE } from '../visTypes.js';
|
|
4
4
|
const RULE_PROP_AVAILABLE_AXES = 'availableAxes',
|
|
5
5
|
RULE_PROP_MAX_DIMS_PER_AXIS = 'maxNumberOfDimsPerAxis',
|
|
6
6
|
RULE_PROP_MIN_DIMS_PER_AXIS = 'minNumberOfDimsPerAxis',
|
|
7
7
|
RULE_PROP_MAX_ITEMS_PER_AXIS = 'maxNumberOfItemsPerAxis',
|
|
8
|
+
RULE_PROP_MAX_ITEMS_PER_DIM = 'maxNumberOfItemsPerDim',
|
|
8
9
|
RULE_PROP_DISALLOWED_DIMS = 'disallowedDims',
|
|
9
10
|
RULE_PROP_LOCKED_DIMS = 'lockedDims';
|
|
10
11
|
const defaultRules = {
|
|
@@ -82,6 +83,21 @@ const scatterRules = {
|
|
|
82
83
|
const lineListRules = {
|
|
83
84
|
[RULE_PROP_AVAILABLE_AXES]: [AXIS_ID_COLUMNS, AXIS_ID_FILTERS]
|
|
84
85
|
};
|
|
86
|
+
const outlierTableRules = {
|
|
87
|
+
[RULE_PROP_AVAILABLE_AXES]: [AXIS_ID_COLUMNS],
|
|
88
|
+
[RULE_PROP_MIN_DIMS_PER_AXIS]: {
|
|
89
|
+
[AXIS_ID_COLUMNS]: 3
|
|
90
|
+
},
|
|
91
|
+
[RULE_PROP_MAX_ITEMS_PER_DIM]: {
|
|
92
|
+
[DIMENSION_ID_PERIOD]: 1
|
|
93
|
+
},
|
|
94
|
+
[RULE_PROP_LOCKED_DIMS]: {
|
|
95
|
+
[DIMENSION_ID_DATA]: AXIS_ID_COLUMNS,
|
|
96
|
+
[DIMENSION_ID_PERIOD]: AXIS_ID_COLUMNS,
|
|
97
|
+
[DIMENSION_ID_ORGUNIT]: AXIS_ID_COLUMNS
|
|
98
|
+
},
|
|
99
|
+
[RULE_PROP_DISALLOWED_DIMS]: [DIMENSION_ID_ASSIGNED_CATEGORIES]
|
|
100
|
+
};
|
|
85
101
|
const visTypeToRules = {
|
|
86
102
|
[VIS_TYPE_COLUMN]: defaultRules,
|
|
87
103
|
[VIS_TYPE_STACKED_COLUMN]: defaultRules,
|
|
@@ -98,7 +114,8 @@ const visTypeToRules = {
|
|
|
98
114
|
[VIS_TYPE_YEAR_OVER_YEAR_COLUMN]: yearOverYearRules,
|
|
99
115
|
[VIS_TYPE_PIVOT_TABLE]: pivotTableRules,
|
|
100
116
|
[VIS_TYPE_SCATTER]: scatterRules,
|
|
101
|
-
[VIS_TYPE_LINE_LIST]: lineListRules
|
|
117
|
+
[VIS_TYPE_LINE_LIST]: lineListRules,
|
|
118
|
+
[VIS_TYPE_OUTLIER_TABLE]: outlierTableRules
|
|
102
119
|
};
|
|
103
120
|
const getRulesByVisType = visType => {
|
|
104
121
|
const rules = visTypeToRules[visType];
|
|
@@ -113,6 +130,7 @@ const getRulesByVisType = visType => {
|
|
|
113
130
|
export const getAvailableAxesByVisType = visType => getRulesByVisType(visType)[RULE_PROP_AVAILABLE_AXES] || [];
|
|
114
131
|
export const getMaxNumberOfDimsPerAxisByVisType = visType => getRulesByVisType(visType)[RULE_PROP_MAX_DIMS_PER_AXIS] || {};
|
|
115
132
|
export const getMinNumberOfDimsPerAxisByVisType = visType => getRulesByVisType(visType)[RULE_PROP_MIN_DIMS_PER_AXIS] || {};
|
|
133
|
+
export const getMaxNumberOfItemsPerDimByVisType = visType => getRulesByVisType(visType)[RULE_PROP_MAX_ITEMS_PER_DIM] || {};
|
|
116
134
|
export const getMaxNumberOfItemsPerAxisByVisType = visType => getRulesByVisType(visType)[RULE_PROP_MAX_ITEMS_PER_AXIS] || {};
|
|
117
135
|
export const getDisallowedDimsByVisType = visType => getRulesByVisType(visType)[RULE_PROP_DISALLOWED_DIMS] || [];
|
|
118
136
|
export const getLockedDimsByVisType = visType => getRulesByVisType(visType)[RULE_PROP_LOCKED_DIMS] || {};
|
|
@@ -126,6 +144,7 @@ export const testResourceAllRuleProps = {
|
|
|
126
144
|
MAX_DIMS_PER_AXIS: RULE_PROP_MAX_DIMS_PER_AXIS,
|
|
127
145
|
MIN_DIMS_PER_AXIS: RULE_PROP_MIN_DIMS_PER_AXIS,
|
|
128
146
|
MAX_ITEMS_PER_AXIS: RULE_PROP_MAX_ITEMS_PER_AXIS,
|
|
147
|
+
MAX_ITEMS_PER_DIM: RULE_PROP_MAX_ITEMS_PER_DIM,
|
|
129
148
|
DISALLOWED_DIMS: RULE_PROP_DISALLOWED_DIMS,
|
|
130
149
|
LOCKED_DIMS: RULE_PROP_LOCKED_DIMS
|
|
131
150
|
};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { getMaxNumberOfItemsPerAxisByVisType, getMaxNumberOfDimsPerAxisByVisType, getMinNumberOfDimsPerAxisByVisType, getLockedDimsByVisType } from './rules.js';
|
|
1
|
+
import { getMaxNumberOfItemsPerDimByVisType, getMaxNumberOfItemsPerAxisByVisType, getMaxNumberOfDimsPerAxisByVisType, getMinNumberOfDimsPerAxisByVisType, getLockedDimsByVisType } from './rules.js';
|
|
2
2
|
|
|
3
3
|
// Selectors
|
|
4
4
|
|
|
@@ -7,4 +7,5 @@ export const getAxisMaxNumberOfItemsByVisType = (visType, axisId) => getMaxNumbe
|
|
|
7
7
|
export const getAxisMaxNumberOfDimsByVisType = (visType, axisId) => getMaxNumberOfDimsPerAxisByVisType(visType)[axisId];
|
|
8
8
|
export const getAxisMinNumberOfDimsByVisType = (visType, axisId) => getMinNumberOfDimsPerAxisByVisType(visType)[axisId];
|
|
9
9
|
export const getAxisPerLockedDimByVisType = (visType, dimensionId) => getLockedDimsByVisType(visType)[dimensionId];
|
|
10
|
-
export const getAllLockedDimIdsByVisType = visType => Object.keys(getLockedDimsByVisType(visType));
|
|
10
|
+
export const getAllLockedDimIdsByVisType = visType => Object.keys(getLockedDimsByVisType(visType));
|
|
11
|
+
export const getDimMaxNumberOfItemsByVisType = (visType, dimensionId) => getMaxNumberOfItemsPerDimByVisType(visType)[dimensionId];
|
|
@@ -1,8 +1,12 @@
|
|
|
1
1
|
import { getLockedDimsByVisType } from './rules.js';
|
|
2
|
-
import { getAxisMaxNumberOfDimsByVisType, getAxisMaxNumberOfItemsByVisType, getAllLockedDimIdsByVisType } from './rulesHelper.js';
|
|
2
|
+
import { getAxisMaxNumberOfDimsByVisType, getAxisMaxNumberOfItemsByVisType, getDimMaxNumberOfItemsByVisType, getAllLockedDimIdsByVisType } from './rulesHelper.js';
|
|
3
3
|
export const hasAxisTooManyItemsByVisType = (visType, axisId, numberOfItems) => {
|
|
4
4
|
const maxNumberOfItemsPerAxis = getAxisMaxNumberOfItemsByVisType(visType, axisId);
|
|
5
|
-
return maxNumberOfItemsPerAxis
|
|
5
|
+
return maxNumberOfItemsPerAxis && numberOfItems > maxNumberOfItemsPerAxis;
|
|
6
|
+
};
|
|
7
|
+
export const hasDimensionTooManyItemsByVisType = (visType, dimensionId, numberOfItems) => {
|
|
8
|
+
const maxNumberOfItemsPerDimension = getDimMaxNumberOfItemsByVisType(visType, dimensionId);
|
|
9
|
+
return maxNumberOfItemsPerDimension && numberOfItems > maxNumberOfItemsPerDimension;
|
|
6
10
|
};
|
|
7
11
|
export const isDimensionLockedByVisType = (visType, dimensionId) => getAllLockedDimIdsByVisType(visType).includes(dimensionId);
|
|
8
12
|
export const isAxisFullByVisType = (visType, axisId, axisDimensionsCount) => axisDimensionsCount >= getAxisMaxNumberOfDimsByVisType(visType, axisId);
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { LAYOUT_TYPE_DEFAULT, LAYOUT_TYPE_PIE, LAYOUT_TYPE_YEAR_OVER_YEAR, LAYOUT_TYPE_PIVOT_TABLE, LAYOUT_TYPE_SCATTER, LAYOUT_TYPE_LINE_LIST } from './layoutTypes.js';
|
|
2
|
-
import { VIS_TYPE_COLUMN, VIS_TYPE_STACKED_COLUMN, VIS_TYPE_BAR, VIS_TYPE_STACKED_BAR, VIS_TYPE_LINE, VIS_TYPE_AREA, VIS_TYPE_STACKED_AREA, VIS_TYPE_PIE, VIS_TYPE_RADAR, VIS_TYPE_GAUGE, VIS_TYPE_YEAR_OVER_YEAR_LINE, VIS_TYPE_YEAR_OVER_YEAR_COLUMN, VIS_TYPE_SINGLE_VALUE, VIS_TYPE_PIVOT_TABLE, VIS_TYPE_SCATTER, VIS_TYPE_LINE_LIST } from './visTypes.js';
|
|
1
|
+
import { LAYOUT_TYPE_DEFAULT, LAYOUT_TYPE_PIE, LAYOUT_TYPE_YEAR_OVER_YEAR, LAYOUT_TYPE_PIVOT_TABLE, LAYOUT_TYPE_SCATTER, LAYOUT_TYPE_LINE_LIST, LAYOUT_TYPE_OUTLIER_TABLE } from './layoutTypes.js';
|
|
2
|
+
import { VIS_TYPE_COLUMN, VIS_TYPE_STACKED_COLUMN, VIS_TYPE_BAR, VIS_TYPE_STACKED_BAR, VIS_TYPE_LINE, VIS_TYPE_AREA, VIS_TYPE_STACKED_AREA, VIS_TYPE_PIE, VIS_TYPE_RADAR, VIS_TYPE_GAUGE, VIS_TYPE_YEAR_OVER_YEAR_LINE, VIS_TYPE_YEAR_OVER_YEAR_COLUMN, VIS_TYPE_SINGLE_VALUE, VIS_TYPE_PIVOT_TABLE, VIS_TYPE_SCATTER, VIS_TYPE_LINE_LIST, VIS_TYPE_OUTLIER_TABLE } from './visTypes.js';
|
|
3
3
|
const visTypeToLayoutType = {
|
|
4
4
|
[VIS_TYPE_COLUMN]: LAYOUT_TYPE_DEFAULT,
|
|
5
5
|
[VIS_TYPE_STACKED_COLUMN]: LAYOUT_TYPE_DEFAULT,
|
|
@@ -16,6 +16,7 @@ const visTypeToLayoutType = {
|
|
|
16
16
|
[VIS_TYPE_SINGLE_VALUE]: LAYOUT_TYPE_PIE,
|
|
17
17
|
[VIS_TYPE_PIVOT_TABLE]: LAYOUT_TYPE_PIVOT_TABLE,
|
|
18
18
|
[VIS_TYPE_SCATTER]: LAYOUT_TYPE_SCATTER,
|
|
19
|
-
[VIS_TYPE_LINE_LIST]: LAYOUT_TYPE_LINE_LIST
|
|
19
|
+
[VIS_TYPE_LINE_LIST]: LAYOUT_TYPE_LINE_LIST,
|
|
20
|
+
[VIS_TYPE_OUTLIER_TABLE]: LAYOUT_TYPE_OUTLIER_TABLE
|
|
20
21
|
};
|
|
21
22
|
export const getLayoutTypeByVisType = visType => visTypeToLayoutType[visType];
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { IconVisualizationArea24, IconVisualizationAreaStacked24, IconVisualizationBar24, IconVisualizationBarStacked24, IconVisualizationColumn24, IconVisualizationColumnMulti24, IconVisualizationColumnStacked24, IconVisualizationGauge24, IconVisualizationLine24, IconVisualizationLinelist24, IconVisualizationLineMulti24, IconVisualizationOutlierTable24, IconVisualizationPie24, IconVisualizationPivotTable24, IconVisualizationRadar24, IconVisualizationScatter24, IconVisualizationSingleValue24 } from '@dhis2/ui';
|
|
2
2
|
import i18n from '../locales/index.js';
|
|
3
3
|
export const VIS_TYPE_PIVOT_TABLE = 'PIVOT_TABLE';
|
|
4
4
|
export const VIS_TYPE_AREA = 'AREA';
|
|
@@ -19,6 +19,7 @@ export const VIS_TYPE_SINGLE_VALUE = 'SINGLE_VALUE';
|
|
|
19
19
|
export const VIS_TYPE_BUBBLE = 'BUBBLE';
|
|
20
20
|
export const VIS_TYPE_GROUP_ALL = 'ALL';
|
|
21
21
|
export const VIS_TYPE_GROUP_CHARTS = 'CHARTS';
|
|
22
|
+
export const VIS_TYPE_OUTLIER_TABLE = 'OUTLIER_TABLE';
|
|
22
23
|
export const visTypeDisplayNames = {
|
|
23
24
|
[VIS_TYPE_PIVOT_TABLE]: i18n.t('Pivot table'),
|
|
24
25
|
[VIS_TYPE_AREA]: i18n.t('Area'),
|
|
@@ -36,11 +37,12 @@ export const visTypeDisplayNames = {
|
|
|
36
37
|
[VIS_TYPE_RADAR]: i18n.t('Radar'),
|
|
37
38
|
[VIS_TYPE_SCATTER]: i18n.t('Scatter'),
|
|
38
39
|
[VIS_TYPE_SINGLE_VALUE]: i18n.t('Single value'),
|
|
40
|
+
[VIS_TYPE_OUTLIER_TABLE]: i18n.t('Outlier table'),
|
|
39
41
|
[VIS_TYPE_GROUP_ALL]: i18n.t('All types'),
|
|
40
42
|
[VIS_TYPE_GROUP_CHARTS]: i18n.t('All charts')
|
|
41
43
|
};
|
|
42
44
|
export const visTypeIcons = {
|
|
43
|
-
[VIS_TYPE_PIVOT_TABLE]:
|
|
45
|
+
[VIS_TYPE_PIVOT_TABLE]: IconVisualizationPivotTable24,
|
|
44
46
|
[VIS_TYPE_AREA]: IconVisualizationArea24,
|
|
45
47
|
[VIS_TYPE_STACKED_AREA]: IconVisualizationAreaStacked24,
|
|
46
48
|
[VIS_TYPE_BAR]: IconVisualizationBar24,
|
|
@@ -55,7 +57,8 @@ export const visTypeIcons = {
|
|
|
55
57
|
[VIS_TYPE_PIE]: IconVisualizationPie24,
|
|
56
58
|
[VIS_TYPE_RADAR]: IconVisualizationRadar24,
|
|
57
59
|
[VIS_TYPE_SCATTER]: IconVisualizationScatter24,
|
|
58
|
-
[VIS_TYPE_SINGLE_VALUE]: IconVisualizationSingleValue24
|
|
60
|
+
[VIS_TYPE_SINGLE_VALUE]: IconVisualizationSingleValue24,
|
|
61
|
+
[VIS_TYPE_OUTLIER_TABLE]: IconVisualizationOutlierTable24
|
|
59
62
|
};
|
|
60
63
|
export const getDisplayNameByVisType = visType => {
|
|
61
64
|
const displayName = visTypeDisplayNames[visType];
|
|
@@ -78,6 +81,7 @@ export const isYearOverYear = type => yearOverYearTypes.includes(type);
|
|
|
78
81
|
export const isDualAxisType = type => dualAxisTypes.includes(type);
|
|
79
82
|
export const isMultiType = type => multiTypeTypes.includes(type);
|
|
80
83
|
export const isSingleValue = type => type === VIS_TYPE_SINGLE_VALUE;
|
|
84
|
+
export const isOutlierTable = type => type === VIS_TYPE_OUTLIER_TABLE;
|
|
81
85
|
export const isTwoCategoryChartType = type => twoCategoryChartTypes.includes(type);
|
|
82
86
|
export const isVerticalType = type => verticalTypes.includes(type);
|
|
83
87
|
export const isLegendSetType = type => legendSetTypes.includes(type);
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@dhis2/analytics",
|
|
3
|
-
"version": "26.
|
|
3
|
+
"version": "26.6.0",
|
|
4
4
|
"main": "./build/cjs/index.js",
|
|
5
5
|
"module": "./build/es/index.js",
|
|
6
6
|
"exports": {
|
|
@@ -35,7 +35,7 @@
|
|
|
35
35
|
"@dhis2/cli-app-scripts": "^9.0.1",
|
|
36
36
|
"@dhis2/cli-style": "^10.4.1",
|
|
37
37
|
"@dhis2/d2-i18n": "^1.1.0",
|
|
38
|
-
"@dhis2/ui": "^
|
|
38
|
+
"@dhis2/ui": "^9.2.0",
|
|
39
39
|
"@sambego/storybook-state": "^2.0.1",
|
|
40
40
|
"@storybook/addons": "^6.5.16",
|
|
41
41
|
"@storybook/preset-create-react-app": "^3.1.7",
|
|
@@ -52,7 +52,7 @@
|
|
|
52
52
|
"peerDependencies": {
|
|
53
53
|
"@dhis2/app-runtime": "^3",
|
|
54
54
|
"@dhis2/d2-i18n": "^1.1",
|
|
55
|
-
"@dhis2/ui": "^
|
|
55
|
+
"@dhis2/ui": "^9.2.0",
|
|
56
56
|
"prop-types": "^15",
|
|
57
57
|
"react": "^16.3",
|
|
58
58
|
"react-dom": "^16.3",
|
|
@@ -75,6 +75,9 @@
|
|
|
75
75
|
"react-beautiful-dnd": "^10.1.1",
|
|
76
76
|
"resize-observer-polyfill": "^1.5.1"
|
|
77
77
|
},
|
|
78
|
+
"resolutions": {
|
|
79
|
+
"@dhis2/ui": "^9.2.0"
|
|
80
|
+
},
|
|
78
81
|
"files": [
|
|
79
82
|
"build"
|
|
80
83
|
]
|