@dhis2/analytics 23.8.0 → 23.8.1

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.
@@ -5,30 +5,44 @@ Object.defineProperty(exports, "__esModule", {
5
5
  });
6
6
  exports.defaultGroupId = defaultGroupId;
7
7
  exports.defaultGroupDetail = defaultGroupDetail;
8
- exports.DEFAULT_DATATYPE_ID = exports.dataTypes = exports.SUB_GROUP_METRIC = exports.SUB_GROUP_DETAIL = exports.DETAIL = exports.TOTALS = exports.DATA_ELEMENT_OPERAND = exports.PROGRAM_ATTRIBUTE = exports.PROGRAM_DATA_ELEMENT = exports.PROGRAM_INDICATORS = exports.EVENT_DATA_ITEMS = exports.DATA_SETS = exports.DATA_ELEMENTS = exports.INDICATORS = exports.ALL_ID = void 0;
8
+ exports.DEFAULT_DATATYPE_ID = exports.dataTypeMap = exports.SUB_GROUP_METRIC = exports.SUB_GROUP_DETAIL = exports.DETAIL = exports.TOTALS = exports.DIMENSION_TYPE_ORGANISATION_UNIT_GROUP_SET = exports.DIMENSION_TYPE_ORGANISATION_UNIT = exports.DIMENSION_TYPE_PERIOD = exports.DIMENSION_TYPE_DATA = exports.DIMENSION_TYPE_DATA_ELEMENT_GROUP_SET = exports.DIMENSION_TYPE_CATEGORY_OPTION_GROUP_SET = exports.DIMENSION_TYPE_CATEGORY = exports.DIMENSION_TYPE_DATA_ELEMENT_OPERAND = exports.DIMENSION_TYPE_PROGRAM_ATTRIBUTE = exports.DIMENSION_TYPE_PROGRAM_DATA_ELEMENT = exports.DIMENSION_TYPE_PROGRAM_INDICATOR = exports.DIMENSION_TYPE_EVENT_DATA_ITEM = exports.DIMENSION_TYPE_DATA_SET = exports.DIMENSION_TYPE_DATA_ELEMENT = exports.DIMENSION_TYPE_INDICATOR = exports.DIMENSION_TYPE_ALL = void 0;
9
9
 
10
10
  var _index = _interopRequireDefault(require("../locales/index.js"));
11
11
 
12
12
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
13
13
 
14
- const ALL_ID = 'ALL';
15
- exports.ALL_ID = ALL_ID;
16
- const INDICATORS = 'INDICATOR';
17
- exports.INDICATORS = INDICATORS;
18
- const DATA_ELEMENTS = 'DATA_ELEMENT';
19
- exports.DATA_ELEMENTS = DATA_ELEMENTS;
20
- const DATA_SETS = 'DATA_SET';
21
- exports.DATA_SETS = DATA_SETS;
22
- const EVENT_DATA_ITEMS = 'EVENT_DATA_ITEM';
23
- exports.EVENT_DATA_ITEMS = EVENT_DATA_ITEMS;
24
- const PROGRAM_INDICATORS = 'PROGRAM_INDICATOR';
25
- exports.PROGRAM_INDICATORS = PROGRAM_INDICATORS;
26
- const PROGRAM_DATA_ELEMENT = 'PROGRAM_DATA_ELEMENT';
27
- exports.PROGRAM_DATA_ELEMENT = PROGRAM_DATA_ELEMENT;
28
- const PROGRAM_ATTRIBUTE = 'PROGRAM_ATTRIBUTE';
29
- exports.PROGRAM_ATTRIBUTE = PROGRAM_ATTRIBUTE;
30
- const DATA_ELEMENT_OPERAND = 'DATA_ELEMENT_OPERAND';
31
- exports.DATA_ELEMENT_OPERAND = DATA_ELEMENT_OPERAND;
14
+ const DIMENSION_TYPE_ALL = 'ALL';
15
+ exports.DIMENSION_TYPE_ALL = DIMENSION_TYPE_ALL;
16
+ const DIMENSION_TYPE_INDICATOR = 'INDICATOR';
17
+ exports.DIMENSION_TYPE_INDICATOR = DIMENSION_TYPE_INDICATOR;
18
+ const DIMENSION_TYPE_DATA_ELEMENT = 'DATA_ELEMENT';
19
+ exports.DIMENSION_TYPE_DATA_ELEMENT = DIMENSION_TYPE_DATA_ELEMENT;
20
+ const DIMENSION_TYPE_DATA_SET = 'DATA_SET';
21
+ exports.DIMENSION_TYPE_DATA_SET = DIMENSION_TYPE_DATA_SET;
22
+ const DIMENSION_TYPE_EVENT_DATA_ITEM = 'EVENT_DATA_ITEM';
23
+ exports.DIMENSION_TYPE_EVENT_DATA_ITEM = DIMENSION_TYPE_EVENT_DATA_ITEM;
24
+ const DIMENSION_TYPE_PROGRAM_INDICATOR = 'PROGRAM_INDICATOR';
25
+ exports.DIMENSION_TYPE_PROGRAM_INDICATOR = DIMENSION_TYPE_PROGRAM_INDICATOR;
26
+ const DIMENSION_TYPE_PROGRAM_DATA_ELEMENT = 'PROGRAM_DATA_ELEMENT';
27
+ exports.DIMENSION_TYPE_PROGRAM_DATA_ELEMENT = DIMENSION_TYPE_PROGRAM_DATA_ELEMENT;
28
+ const DIMENSION_TYPE_PROGRAM_ATTRIBUTE = 'PROGRAM_ATTRIBUTE';
29
+ exports.DIMENSION_TYPE_PROGRAM_ATTRIBUTE = DIMENSION_TYPE_PROGRAM_ATTRIBUTE;
30
+ const DIMENSION_TYPE_DATA_ELEMENT_OPERAND = 'DATA_ELEMENT_OPERAND';
31
+ exports.DIMENSION_TYPE_DATA_ELEMENT_OPERAND = DIMENSION_TYPE_DATA_ELEMENT_OPERAND;
32
+ const DIMENSION_TYPE_CATEGORY = 'CATEGORY';
33
+ exports.DIMENSION_TYPE_CATEGORY = DIMENSION_TYPE_CATEGORY;
34
+ const DIMENSION_TYPE_CATEGORY_OPTION_GROUP_SET = 'CATEGORY_OPTION_GROUP_SET';
35
+ exports.DIMENSION_TYPE_CATEGORY_OPTION_GROUP_SET = DIMENSION_TYPE_CATEGORY_OPTION_GROUP_SET;
36
+ const DIMENSION_TYPE_DATA_ELEMENT_GROUP_SET = 'DATA_ELEMENT_GROUP_SET';
37
+ exports.DIMENSION_TYPE_DATA_ELEMENT_GROUP_SET = DIMENSION_TYPE_DATA_ELEMENT_GROUP_SET;
38
+ const DIMENSION_TYPE_DATA = 'DATA_X';
39
+ exports.DIMENSION_TYPE_DATA = DIMENSION_TYPE_DATA;
40
+ const DIMENSION_TYPE_PERIOD = 'PERIOD';
41
+ exports.DIMENSION_TYPE_PERIOD = DIMENSION_TYPE_PERIOD;
42
+ const DIMENSION_TYPE_ORGANISATION_UNIT = 'ORGANISATION_UNIT';
43
+ exports.DIMENSION_TYPE_ORGANISATION_UNIT = DIMENSION_TYPE_ORGANISATION_UNIT;
44
+ const DIMENSION_TYPE_ORGANISATION_UNIT_GROUP_SET = 'ORGANISATION_UNIT_GROUP_SET';
45
+ exports.DIMENSION_TYPE_ORGANISATION_UNIT_GROUP_SET = DIMENSION_TYPE_ORGANISATION_UNIT_GROUP_SET;
32
46
  const TOTALS = 'totals';
33
47
  exports.TOTALS = TOTALS;
34
48
  const DETAIL = 'detail';
@@ -42,25 +56,25 @@ const getProgramText = () => _index.default.t('Program');
42
56
 
43
57
  const getSelectProgramText = () => _index.default.t('Select a program');
44
58
 
45
- const dataTypes = {
46
- [INDICATORS]: {
47
- id: INDICATORS,
59
+ const dataTypeMap = {
60
+ [DIMENSION_TYPE_INDICATOR]: {
61
+ id: DIMENSION_TYPE_INDICATOR,
48
62
  getName: () => _index.default.t('Indicators'),
49
63
  getGroupLabel: () => _index.default.t('Indicator group'),
50
64
  defaultGroup: {
51
- id: ALL_ID,
65
+ id: DIMENSION_TYPE_ALL,
52
66
  getName: () => _index.default.t('All groups')
53
67
  },
54
68
  getItemName: () => _index.default.t('Indicator'),
55
69
  getGroupEmptyLabel: () => _index.default.t('No indicator groups found'),
56
70
  getGroupLoadingLabel: () => _index.default.t('Loading indicator groups')
57
71
  },
58
- [DATA_ELEMENTS]: {
59
- id: DATA_ELEMENTS,
72
+ [DIMENSION_TYPE_DATA_ELEMENT]: {
73
+ id: DIMENSION_TYPE_DATA_ELEMENT,
60
74
  getName: () => _index.default.t('Data elements'),
61
75
  getGroupLabel: () => _index.default.t('Data element group'),
62
76
  defaultGroup: {
63
- id: ALL_ID,
77
+ id: DIMENSION_TYPE_ALL,
64
78
  getName: () => _index.default.t('All groups')
65
79
  },
66
80
  subGroup: SUB_GROUP_DETAIL,
@@ -68,12 +82,12 @@ const dataTypes = {
68
82
  getGroupEmptyLabel: () => _index.default.t('No data element groups found'),
69
83
  getGroupLoadingLabel: () => _index.default.t('Loading data element groups')
70
84
  },
71
- [DATA_SETS]: {
72
- id: DATA_SETS,
85
+ [DIMENSION_TYPE_DATA_SET]: {
86
+ id: DIMENSION_TYPE_DATA_SET,
73
87
  getName: () => _index.default.t('Data sets'),
74
88
  getGroupLabel: () => _index.default.t('Data set'),
75
89
  defaultGroup: {
76
- id: ALL_ID,
90
+ id: DIMENSION_TYPE_ALL,
77
91
  getName: () => _index.default.t('All data sets')
78
92
  },
79
93
  subGroup: SUB_GROUP_METRIC,
@@ -81,26 +95,26 @@ const dataTypes = {
81
95
  getGroupEmptyLabel: () => _index.default.t('No data sets found'),
82
96
  getGroupLoadingLabel: () => _index.default.t('Loading data sets')
83
97
  },
84
- [EVENT_DATA_ITEMS]: {
85
- id: EVENT_DATA_ITEMS,
98
+ [DIMENSION_TYPE_EVENT_DATA_ITEM]: {
99
+ id: DIMENSION_TYPE_EVENT_DATA_ITEM,
86
100
  getName: () => _index.default.t('Event data items'),
87
101
  getGroupLabel: getProgramText,
88
102
  getPlaceholder: getSelectProgramText,
89
103
  defaultGroup: {
90
- id: ALL_ID,
104
+ id: DIMENSION_TYPE_ALL,
91
105
  getName: () => _index.default.t('All programs')
92
106
  },
93
107
  getItemName: () => _index.default.t('Event data item'),
94
108
  getGroupEmptyLabel: () => _index.default.t('No programs found'),
95
109
  getGroupLoadingLabel: () => _index.default.t('Loading programs')
96
110
  },
97
- [PROGRAM_INDICATORS]: {
98
- id: PROGRAM_INDICATORS,
111
+ [DIMENSION_TYPE_PROGRAM_INDICATOR]: {
112
+ id: DIMENSION_TYPE_PROGRAM_INDICATOR,
99
113
  getName: () => _index.default.t('Program indicators'),
100
114
  getGroupLabel: getProgramText,
101
115
  getPlaceholder: getSelectProgramText,
102
116
  defaultGroup: {
103
- id: ALL_ID,
117
+ id: DIMENSION_TYPE_ALL,
104
118
  getName: () => _index.default.t('All programs')
105
119
  },
106
120
  getItemName: () => _index.default.t('Program indicator'),
@@ -108,15 +122,15 @@ const dataTypes = {
108
122
  getGroupLoadingLabel: () => _index.default.t('Loading programs')
109
123
  }
110
124
  };
111
- exports.dataTypes = dataTypes;
125
+ exports.dataTypeMap = dataTypeMap;
112
126
 
113
127
  function defaultGroupId(dataType) {
114
- return dataTypes[dataType].defaultGroup ? dataTypes[dataType].defaultGroup.id : '';
128
+ return dataTypeMap[dataType].defaultGroup ? dataTypeMap[dataType].defaultGroup.id : '';
115
129
  }
116
130
 
117
131
  function defaultGroupDetail(dataType) {
118
- return dataTypes[dataType].groupDetail ? dataTypes[dataType].groupDetail.default : '';
132
+ return dataTypeMap[dataType].groupDetail ? dataTypeMap[dataType].groupDetail.default : '';
119
133
  }
120
134
 
121
- const DEFAULT_DATATYPE_ID = INDICATORS;
135
+ const DEFAULT_DATATYPE_ID = DIMENSION_TYPE_INDICATOR;
122
136
  exports.DEFAULT_DATATYPE_ID = DEFAULT_DATATYPE_ID;
@@ -7,6 +7,8 @@ exports.PivotTableEngine = void 0;
7
7
 
8
8
  var _times = _interopRequireDefault(require("lodash/times"));
9
9
 
10
+ var _dataTypes = require("../dataTypes.js");
11
+
10
12
  var _predefinedDimensions = require("../predefinedDimensions.js");
11
13
 
12
14
  var _renderValue = require("../renderValue.js");
@@ -39,7 +41,7 @@ const defaultVisualizationProps = {
39
41
  displayDensity: _pivotTableConstants.DISPLAY_DENSITY_OPTION_NORMAL
40
42
  };
41
43
 
42
- const isDxDimension = dimensionItem => [_pivotTableConstants.DIMENSION_TYPE_DATA, _pivotTableConstants.DIMENSION_TYPE_DATA_ELEMENT_GROUP_SET].includes(dimensionItem.dimensionType);
44
+ const isDxDimension = dimensionItem => [_dataTypes.DIMENSION_TYPE_DATA, _dataTypes.DIMENSION_TYPE_DATA_ELEMENT_GROUP_SET].includes(dimensionItem.dimensionType);
43
45
 
44
46
  const countFromDisaggregates = list => {
45
47
  let count = 1;
@@ -266,8 +268,8 @@ class PivotTableEngine {
266
268
  column
267
269
  });
268
270
  const headers = [...this.getRawRowHeader(row), ...this.getRawColumnHeader(column)];
269
- const peId = (_headers$find = headers.find(header => (header === null || header === void 0 ? void 0 : header.dimensionItemType) === _pivotTableConstants.DIMENSION_TYPE_PERIOD)) === null || _headers$find === void 0 ? void 0 : _headers$find.uid;
270
- const ouId = (_headers$find2 = headers.find(header => (header === null || header === void 0 ? void 0 : header.dimensionItemType) === _pivotTableConstants.DIMENSION_TYPE_ORGUNIT)) === null || _headers$find2 === void 0 ? void 0 : _headers$find2.uid;
271
+ const peId = (_headers$find = headers.find(header => (header === null || header === void 0 ? void 0 : header.dimensionItemType) === _dataTypes.DIMENSION_TYPE_PERIOD)) === null || _headers$find === void 0 ? void 0 : _headers$find.uid;
272
+ const ouId = (_headers$find2 = headers.find(header => (header === null || header === void 0 ? void 0 : header.dimensionItemType) === _dataTypes.DIMENSION_TYPE_ORGANISATION_UNIT)) === null || _headers$find2 === void 0 ? void 0 : _headers$find2.uid;
271
273
 
272
274
  if (!this.data[row] || !this.data[row][column]) {
273
275
  return {
@@ -3,7 +3,7 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports.DIMENSION_TYPE_ORGUNIT = exports.DIMENSION_TYPE_PERIOD = exports.DIMENSION_TYPE_DATA = exports.DIMENSION_TYPE_DATA_ELEMENT_GROUP_SET = exports.CLIPPED_AXIS_PARTITION_SIZE_PX = exports.WRAPPED_TEXT_LINE_HEIGHT = exports.WRAPPED_TEXT_JUSTIFY_BUFFER = exports.CLIPPED_CELL_MIN_SIZE = exports.CLIPPED_CELL_MAX_SIZE = exports.DISPLAY_DENSITY_PADDING_COMFORTABLE = exports.DISPLAY_DENSITY_OPTION_COMFORTABLE = exports.DISPLAY_DENSITY_PADDING_NORMAL = exports.DISPLAY_DENSITY_OPTION_NORMAL = exports.DISPLAY_DENSITY_PADDING_COMPACT = exports.DISPLAY_DENSITY_OPTION_COMPACT = exports.FONT_SIZE_LARGE = exports.FONT_SIZE_OPTION_LARGE = exports.FONT_SIZE_NORMAL = exports.FONT_SIZE_OPTION_NORMAL = exports.FONT_SIZE_SMALL = exports.FONT_SIZE_OPTION_SMALL = exports.BORDER_COLOR = exports.NUMBER_TYPE_COLUMN_PERCENTAGE = exports.NUMBER_TYPE_ROW_PERCENTAGE = exports.NUMBER_TYPE_VALUE = exports.AGGREGATE_TYPE_NA = exports.AGGREGATE_TYPE_AVERAGE = exports.AGGREGATE_TYPE_SUM = exports.CELL_TYPE_TOTAL = exports.CELL_TYPE_SUBTOTAL = exports.CELL_TYPE_VALUE = exports.SORT_ORDER_DESCENDING = exports.SORT_ORDER_ASCENDING = void 0;
6
+ exports.CLIPPED_AXIS_PARTITION_SIZE_PX = exports.WRAPPED_TEXT_LINE_HEIGHT = exports.WRAPPED_TEXT_JUSTIFY_BUFFER = exports.CLIPPED_CELL_MIN_SIZE = exports.CLIPPED_CELL_MAX_SIZE = exports.DISPLAY_DENSITY_PADDING_COMFORTABLE = exports.DISPLAY_DENSITY_OPTION_COMFORTABLE = exports.DISPLAY_DENSITY_PADDING_NORMAL = exports.DISPLAY_DENSITY_OPTION_NORMAL = exports.DISPLAY_DENSITY_PADDING_COMPACT = exports.DISPLAY_DENSITY_OPTION_COMPACT = exports.FONT_SIZE_LARGE = exports.FONT_SIZE_OPTION_LARGE = exports.FONT_SIZE_NORMAL = exports.FONT_SIZE_OPTION_NORMAL = exports.FONT_SIZE_SMALL = exports.FONT_SIZE_OPTION_SMALL = exports.BORDER_COLOR = exports.NUMBER_TYPE_COLUMN_PERCENTAGE = exports.NUMBER_TYPE_ROW_PERCENTAGE = exports.NUMBER_TYPE_VALUE = exports.AGGREGATE_TYPE_NA = exports.AGGREGATE_TYPE_AVERAGE = exports.AGGREGATE_TYPE_SUM = exports.CELL_TYPE_TOTAL = exports.CELL_TYPE_SUBTOTAL = exports.CELL_TYPE_VALUE = exports.SORT_ORDER_DESCENDING = exports.SORT_ORDER_ASCENDING = void 0;
7
7
  const SORT_ORDER_ASCENDING = 1;
8
8
  exports.SORT_ORDER_ASCENDING = SORT_ORDER_ASCENDING;
9
9
  const SORT_ORDER_DESCENDING = -1;
@@ -61,12 +61,4 @@ exports.WRAPPED_TEXT_JUSTIFY_BUFFER = WRAPPED_TEXT_JUSTIFY_BUFFER;
61
61
  const WRAPPED_TEXT_LINE_HEIGHT = 1.0;
62
62
  exports.WRAPPED_TEXT_LINE_HEIGHT = WRAPPED_TEXT_LINE_HEIGHT;
63
63
  const CLIPPED_AXIS_PARTITION_SIZE_PX = 1000;
64
- exports.CLIPPED_AXIS_PARTITION_SIZE_PX = CLIPPED_AXIS_PARTITION_SIZE_PX;
65
- const DIMENSION_TYPE_DATA_ELEMENT_GROUP_SET = 'DATA_ELEMENT_GROUP_SET';
66
- exports.DIMENSION_TYPE_DATA_ELEMENT_GROUP_SET = DIMENSION_TYPE_DATA_ELEMENT_GROUP_SET;
67
- const DIMENSION_TYPE_DATA = 'DATA_X';
68
- exports.DIMENSION_TYPE_DATA = DIMENSION_TYPE_DATA;
69
- const DIMENSION_TYPE_PERIOD = 'PERIOD';
70
- exports.DIMENSION_TYPE_PERIOD = DIMENSION_TYPE_PERIOD;
71
- const DIMENSION_TYPE_ORGUNIT = 'ORGANISATION_UNIT';
72
- exports.DIMENSION_TYPE_ORGUNIT = DIMENSION_TYPE_ORGUNIT;
64
+ exports.CLIPPED_AXIS_PARTITION_SIZE_PX = CLIPPED_AXIS_PARTITION_SIZE_PX;
@@ -1,5 +1,5 @@
1
1
  import objectClean from 'd2-utilizr/lib/objectClean';
2
- import { ALL_ID, INDICATORS, DATA_ELEMENTS, DATA_SETS, PROGRAM_INDICATORS, EVENT_DATA_ITEMS, PROGRAM_DATA_ELEMENT, PROGRAM_ATTRIBUTE, TOTALS } from '../modules/dataTypes.js';
2
+ import { DIMENSION_TYPE_ALL, DIMENSION_TYPE_INDICATOR, DIMENSION_TYPE_DATA_ELEMENT, DIMENSION_TYPE_DATA_SET, DIMENSION_TYPE_PROGRAM_INDICATOR, DIMENSION_TYPE_EVENT_DATA_ITEM, DIMENSION_TYPE_PROGRAM_DATA_ELEMENT, DIMENSION_TYPE_PROGRAM_ATTRIBUTE, TOTALS } from '../modules/dataTypes.js';
3
3
  import { onError } from './index.js'; // Query definitions
4
4
 
5
5
  export const dimensionsQuery = {
@@ -44,13 +44,13 @@ export const dataItemsQuery = {
44
44
  }) => {
45
45
  const filters = []; // TODO: Extract all of this logic out of the query?
46
46
 
47
- if ((filter === null || filter === void 0 ? void 0 : filter.dataType) === EVENT_DATA_ITEMS) {
48
- filters.push("dimensionItemType:in:[".concat(PROGRAM_DATA_ELEMENT, ",").concat(PROGRAM_ATTRIBUTE, "]"));
49
- } else if (filter !== null && filter !== void 0 && filter.dataType && filter.dataType !== ALL_ID) {
47
+ if ((filter === null || filter === void 0 ? void 0 : filter.dataType) === DIMENSION_TYPE_EVENT_DATA_ITEM) {
48
+ filters.push("dimensionItemType:in:[".concat(DIMENSION_TYPE_PROGRAM_DATA_ELEMENT, ",").concat(DIMENSION_TYPE_PROGRAM_ATTRIBUTE, "]"));
49
+ } else if (filter !== null && filter !== void 0 && filter.dataType && filter.dataType !== DIMENSION_TYPE_ALL) {
50
50
  filters.push("dimensionItemType:eq:".concat(filter.dataType));
51
51
  }
52
52
 
53
- if (filter !== null && filter !== void 0 && filter.group && filter.group !== ALL_ID && [EVENT_DATA_ITEMS, PROGRAM_INDICATORS].includes(filter.dataType)) {
53
+ if (filter !== null && filter !== void 0 && filter.group && filter.group !== DIMENSION_TYPE_ALL && [DIMENSION_TYPE_EVENT_DATA_ITEM, DIMENSION_TYPE_PROGRAM_INDICATOR].includes(filter.dataType)) {
54
54
  filters.push("programId:eq:".concat(filter.group));
55
55
  }
56
56
 
@@ -77,7 +77,7 @@ export const indicatorsQuery = {
77
77
  }) => {
78
78
  const filters = [];
79
79
 
80
- if (filter !== null && filter !== void 0 && filter.group && filter.group !== ALL_ID) {
80
+ if (filter !== null && filter !== void 0 && filter.group && filter.group !== DIMENSION_TYPE_ALL) {
81
81
  filters.push("indicatorGroups.id:eq:".concat(filter.group));
82
82
  }
83
83
 
@@ -112,10 +112,10 @@ export const dataElementsQuery = {
112
112
  searchTerm,
113
113
  page
114
114
  }) => {
115
- const idField = (filter === null || filter === void 0 ? void 0 : filter.group) === ALL_ID ? 'id' : 'dimensionItem~rename(id)';
115
+ const idField = (filter === null || filter === void 0 ? void 0 : filter.group) === DIMENSION_TYPE_ALL ? 'id' : 'dimensionItem~rename(id)';
116
116
  const filters = ['domainType:eq:AGGREGATE'];
117
117
 
118
- if (filter !== null && filter !== void 0 && filter.group && filter.group !== ALL_ID) {
118
+ if (filter !== null && filter !== void 0 && filter.group && filter.group !== DIMENSION_TYPE_ALL) {
119
119
  filters.push("dataElementGroups.id:eq:".concat(filter.group));
120
120
  }
121
121
 
@@ -175,10 +175,10 @@ export const dataElementOperandsQuery = {
175
175
  searchTerm,
176
176
  page
177
177
  }) => {
178
- const idField = (filter === null || filter === void 0 ? void 0 : filter.group) === ALL_ID ? 'id' : 'dimensionItem~rename(id)';
178
+ const idField = (filter === null || filter === void 0 ? void 0 : filter.group) === DIMENSION_TYPE_ALL ? 'id' : 'dimensionItem~rename(id)';
179
179
  const filters = [];
180
180
 
181
- if (filter !== null && filter !== void 0 && filter.group && filter.group !== ALL_ID) {
181
+ if (filter !== null && filter !== void 0 && filter.group && filter.group !== DIMENSION_TYPE_ALL) {
182
182
  filters.push("dataElement.dataElementGroups.id:eq:".concat(filter.group));
183
183
  }
184
184
 
@@ -209,7 +209,7 @@ export const dataSetsQuery = {
209
209
  filters.push("".concat(nameProp, ":ilike:").concat(searchTerm));
210
210
  }
211
211
 
212
- if (filter !== null && filter !== void 0 && filter.group && filter.group !== ALL_ID) {
212
+ if (filter !== null && filter !== void 0 && filter.group && filter.group !== DIMENSION_TYPE_ALL) {
213
213
  filters.push("id:eq:".concat(filter.group));
214
214
  }
215
215
 
@@ -270,7 +270,7 @@ export const apiFetchOptions = ({
270
270
  page
271
271
  }) => {
272
272
  switch (filter === null || filter === void 0 ? void 0 : filter.dataType) {
273
- case INDICATORS:
273
+ case DIMENSION_TYPE_INDICATOR:
274
274
  {
275
275
  return fetchIndicators({
276
276
  dataEngine,
@@ -281,7 +281,7 @@ export const apiFetchOptions = ({
281
281
  });
282
282
  }
283
283
 
284
- case DATA_ELEMENTS:
284
+ case DIMENSION_TYPE_DATA_ELEMENT:
285
285
  {
286
286
  if (filter.subGroup === TOTALS) {
287
287
  return fetchDataElements({
@@ -302,7 +302,7 @@ export const apiFetchOptions = ({
302
302
  }
303
303
  }
304
304
 
305
- case DATA_SETS:
305
+ case DIMENSION_TYPE_DATA_SET:
306
306
  {
307
307
  return fetchDataSets({
308
308
  dataEngine,
@@ -325,10 +325,10 @@ export const apiFetchOptions = ({
325
325
  };
326
326
  export const apiFetchGroups = async (dataEngine, dataType, nameProp) => {
327
327
  // indicatorGroups does not support shortName
328
- const name = dataType === INDICATORS ? 'displayName' : nameProp;
328
+ const name = dataType === DIMENSION_TYPE_INDICATOR ? 'displayName' : nameProp;
329
329
 
330
330
  switch (dataType) {
331
- case INDICATORS:
331
+ case DIMENSION_TYPE_INDICATOR:
332
332
  {
333
333
  const indicatorGroupsData = await dataEngine.query({
334
334
  indicatorGroups: indicatorGroupsQuery
@@ -341,7 +341,7 @@ export const apiFetchGroups = async (dataEngine, dataType, nameProp) => {
341
341
  return indicatorGroupsData.indicatorGroups.indicatorGroups;
342
342
  }
343
343
 
344
- case DATA_ELEMENTS:
344
+ case DIMENSION_TYPE_DATA_ELEMENT:
345
345
  {
346
346
  const dataElementGroupsData = await dataEngine.query({
347
347
  dataElementGroups: dataElementGroupsQuery
@@ -354,7 +354,7 @@ export const apiFetchGroups = async (dataEngine, dataType, nameProp) => {
354
354
  return dataElementGroupsData.dataElementGroups.dataElementGroups;
355
355
  }
356
356
 
357
- case DATA_SETS:
357
+ case DIMENSION_TYPE_DATA_SET:
358
358
  {
359
359
  const response = await dataEngine.query({
360
360
  data: dataSetsQuery
@@ -367,8 +367,8 @@ export const apiFetchGroups = async (dataEngine, dataType, nameProp) => {
367
367
  return response.data.dataSets;
368
368
  }
369
369
 
370
- case EVENT_DATA_ITEMS:
371
- case PROGRAM_INDICATORS:
370
+ case DIMENSION_TYPE_EVENT_DATA_ITEM:
371
+ case DIMENSION_TYPE_PROGRAM_INDICATOR:
372
372
  {
373
373
  const programsData = await dataEngine.query({
374
374
  programs: programsQuery
@@ -3,10 +3,10 @@ import { SingleSelectField, SingleSelectOption } from '@dhis2/ui';
3
3
  import PropTypes from 'prop-types';
4
4
  import React from 'react';
5
5
  import i18n from '../../locales/index.js';
6
- import { ALL_ID, dataTypes } from '../../modules/dataTypes.js';
7
- import styles from './styles/DataTypesSelector.style.js';
6
+ import { DIMENSION_TYPE_ALL, dataTypeMap as dataTypes } from '../../modules/dataTypes.js';
7
+ import styles from './styles/DataTypeSelector.style.js';
8
8
 
9
- const DataTypes = ({
9
+ const DataTypeSelector = ({
10
10
  currentDataType,
11
11
  onChange,
12
12
  dataTest
@@ -18,12 +18,12 @@ const DataTypes = ({
18
18
  }, /*#__PURE__*/React.createElement(SingleSelectField, {
19
19
  label: i18n.t('Data Type'),
20
20
  dataTest: dataTest,
21
- selected: ((_dataTypes$currentDat = dataTypes[currentDataType]) === null || _dataTypes$currentDat === void 0 ? void 0 : _dataTypes$currentDat.id) || ALL_ID,
21
+ selected: ((_dataTypes$currentDat = dataTypes[currentDataType]) === null || _dataTypes$currentDat === void 0 ? void 0 : _dataTypes$currentDat.id) || DIMENSION_TYPE_ALL,
22
22
  onChange: ref => onChange(ref.selected),
23
23
  dense: true
24
24
  }, /*#__PURE__*/React.createElement(SingleSelectOption, {
25
- value: ALL_ID,
26
- key: ALL_ID,
25
+ value: DIMENSION_TYPE_ALL,
26
+ key: DIMENSION_TYPE_ALL,
27
27
  label: i18n.t('All types'),
28
28
  dataTest: "".concat(dataTest, "-option-all")
29
29
  }), Object.values(dataTypes).map(type => /*#__PURE__*/React.createElement(SingleSelectOption, {
@@ -36,9 +36,9 @@ const DataTypes = ({
36
36
  }, styles));
37
37
  };
38
38
 
39
- DataTypes.propTypes = {
39
+ DataTypeSelector.propTypes = {
40
40
  currentDataType: PropTypes.string.isRequired,
41
41
  onChange: PropTypes.func.isRequired,
42
42
  dataTest: PropTypes.string
43
43
  };
44
- export default DataTypes;
44
+ export default DataTypeSelector;
@@ -5,12 +5,12 @@ import PropTypes from 'prop-types';
5
5
  import React, { useEffect, useState } from 'react';
6
6
  import { apiFetchGroups } from '../../api/dimensions.js';
7
7
  import i18n from '../../locales/index.js';
8
- import { dataTypes, SUB_GROUP_DETAIL, SUB_GROUP_METRIC } from '../../modules/dataTypes.js';
8
+ import { dataTypeMap as dataTypes, SUB_GROUP_DETAIL, SUB_GROUP_METRIC } from '../../modules/dataTypes.js';
9
9
  import { DetailSelector } from './DetailSelector.js';
10
10
  import { MetricSelector } from './MetricSelector.js';
11
11
  import styles from './styles/GroupSelector.style.js';
12
12
 
13
- const GroupsSelector = ({
13
+ const GroupSelector = ({
14
14
  dataType,
15
15
  currentGroup,
16
16
  onGroupChange,
@@ -74,7 +74,7 @@ const GroupsSelector = ({
74
74
  }));
75
75
  };
76
76
 
77
- GroupsSelector.propTypes = {
77
+ GroupSelector.propTypes = {
78
78
  dataType: PropTypes.string.isRequired,
79
79
  displayNameProp: PropTypes.string.isRequired,
80
80
  onGroupChange: PropTypes.func.isRequired,
@@ -83,4 +83,4 @@ GroupsSelector.propTypes = {
83
83
  currentSubGroup: PropTypes.string,
84
84
  dataTest: PropTypes.string
85
85
  };
86
- export default GroupsSelector;
86
+ export default GroupSelector;
@@ -11,12 +11,12 @@ import DataElementIcon from '../../assets/DimensionItemIcons/DataElementIcon.js'
11
11
  import GenericIcon from '../../assets/DimensionItemIcons/GenericIcon.js';
12
12
  import i18n from '../../locales/index.js';
13
13
  import { DATA_SETS_CONSTANTS, REPORTING_RATE } from '../../modules/dataSets.js';
14
- import { ALL_ID, dataTypes, DATA_ELEMENTS, DATA_ELEMENT_OPERAND, DATA_SETS, EVENT_DATA_ITEMS, PROGRAM_INDICATORS, INDICATORS, TOTALS, PROGRAM_DATA_ELEMENT, PROGRAM_ATTRIBUTE } from '../../modules/dataTypes.js';
14
+ import { dataTypeMap as dataTypes, DIMENSION_TYPE_ALL, DIMENSION_TYPE_DATA_ELEMENT, DIMENSION_TYPE_DATA_ELEMENT_OPERAND, DIMENSION_TYPE_DATA_SET, DIMENSION_TYPE_EVENT_DATA_ITEM, DIMENSION_TYPE_PROGRAM_INDICATOR, DIMENSION_TYPE_INDICATOR, TOTALS, DIMENSION_TYPE_PROGRAM_DATA_ELEMENT, DIMENSION_TYPE_PROGRAM_ATTRIBUTE } from '../../modules/dataTypes.js';
15
15
  import { TRANSFER_HEIGHT, TRANSFER_OPTIONS_WIDTH, TRANSFER_SELECTED_WIDTH } from '../../modules/dimensionSelectorHelper.js';
16
16
  import { useDebounce, useDidUpdateEffect } from '../../modules/utils.js';
17
17
  import styles from '../styles/DimensionSelector.style.js';
18
18
  import { TransferOption } from '../TransferOption.js';
19
- import DataTypeSelector from './DataTypesSelector.js';
19
+ import DataTypeSelector from './DataTypeSelector.js';
20
20
  import GroupSelector from './GroupSelector.js';
21
21
 
22
22
  const LeftHeader = ({
@@ -110,23 +110,23 @@ const SourceEmptyPlaceholder = ({
110
110
  message = noItemsMessage;
111
111
  } else {
112
112
  switch (dataType) {
113
- case INDICATORS:
113
+ case DIMENSION_TYPE_INDICATOR:
114
114
  message = i18n.t('No indicators found');
115
115
  break;
116
116
 
117
- case DATA_ELEMENTS:
117
+ case DIMENSION_TYPE_DATA_ELEMENT:
118
118
  message = i18n.t('No data elements found');
119
119
  break;
120
120
 
121
- case DATA_SETS:
121
+ case DIMENSION_TYPE_DATA_SET:
122
122
  message = i18n.t('No data sets found');
123
123
  break;
124
124
 
125
- case EVENT_DATA_ITEMS:
125
+ case DIMENSION_TYPE_EVENT_DATA_ITEM:
126
126
  message = i18n.t('No event data items found');
127
127
  break;
128
128
 
129
- case PROGRAM_INDICATORS:
129
+ case DIMENSION_TYPE_PROGRAM_INDICATOR:
130
130
  message = i18n.t('No program indicators found');
131
131
  break;
132
132
 
@@ -137,31 +137,31 @@ const SourceEmptyPlaceholder = ({
137
137
  }
138
138
  } else if (!loading && !options.length && searchTerm) {
139
139
  switch (dataType) {
140
- case INDICATORS:
140
+ case DIMENSION_TYPE_INDICATOR:
141
141
  message = i18n.t('No indicators found for "{{- searchTerm}}"', {
142
142
  searchTerm: searchTerm
143
143
  });
144
144
  break;
145
145
 
146
- case DATA_ELEMENTS:
146
+ case DIMENSION_TYPE_DATA_ELEMENT:
147
147
  message = i18n.t('No data elements found for "{{- searchTerm}}"', {
148
148
  searchTerm: searchTerm
149
149
  });
150
150
  break;
151
151
 
152
- case DATA_SETS:
152
+ case DIMENSION_TYPE_DATA_SET:
153
153
  message = i18n.t('No data sets found for "{{- searchTerm}}"', {
154
154
  searchTerm: searchTerm
155
155
  });
156
156
  break;
157
157
 
158
- case EVENT_DATA_ITEMS:
158
+ case DIMENSION_TYPE_EVENT_DATA_ITEM:
159
159
  message = i18n.t('No event data items found for "{{- searchTerm}}"', {
160
160
  searchTerm: searchTerm
161
161
  });
162
162
  break;
163
163
 
164
- case PROGRAM_INDICATORS:
164
+ case DIMENSION_TYPE_PROGRAM_INDICATOR:
165
165
  message = i18n.t('No program indicators found for "{{- searchTerm}}"', {
166
166
  searchTerm: searchTerm
167
167
  });
@@ -204,7 +204,7 @@ const ItemSelector = ({
204
204
  const [state, setState] = useState({
205
205
  searchTerm: '',
206
206
  filter: {
207
- dataType: ALL_ID
207
+ dataType: DIMENSION_TYPE_ALL
208
208
  },
209
209
  options: [],
210
210
  loading: true,
@@ -238,7 +238,7 @@ const ItemSelector = ({
238
238
  const newOptions = [];
239
239
  (_result$dimensionItem = result.dimensionItems) === null || _result$dimensionItem === void 0 ? void 0 : _result$dimensionItem.forEach(item => {
240
240
  if (item.dimensionItemType === REPORTING_RATE) {
241
- if (state.filter.subGroup && state.filter.subGroup !== ALL_ID) {
241
+ if (state.filter.subGroup && state.filter.subGroup !== DIMENSION_TYPE_ALL) {
242
242
  const metric = DATA_SETS_CONSTANTS.find(item => item.id === state.filter.subGroup);
243
243
  newOptions.push({
244
244
  label: "".concat(item.name, " - ").concat(metric.getName()),
@@ -325,15 +325,15 @@ const ItemSelector = ({
325
325
  var _dataTypes$itemType;
326
326
 
327
327
  switch (itemType) {
328
- case DATA_ELEMENT_OPERAND:
329
- return dataTypes[DATA_ELEMENTS].getItemName();
328
+ case DIMENSION_TYPE_DATA_ELEMENT_OPERAND:
329
+ return dataTypes[DIMENSION_TYPE_DATA_ELEMENT].getItemName();
330
330
 
331
331
  case REPORTING_RATE:
332
- return dataTypes[DATA_SETS].getItemName();
332
+ return dataTypes[DIMENSION_TYPE_DATA_SET].getItemName();
333
333
 
334
- case PROGRAM_DATA_ELEMENT:
335
- case PROGRAM_ATTRIBUTE:
336
- return dataTypes[EVENT_DATA_ITEMS].getItemName();
334
+ case DIMENSION_TYPE_PROGRAM_DATA_ELEMENT:
335
+ case DIMENSION_TYPE_PROGRAM_ATTRIBUTE:
336
+ return dataTypes[DIMENSION_TYPE_EVENT_DATA_ITEM].getItemName();
337
337
 
338
338
  default:
339
339
  return (_dataTypes$itemType = dataTypes[itemType]) === null || _dataTypes$itemType === void 0 ? void 0 : _dataTypes$itemType.getItemName();
@@ -342,22 +342,22 @@ const ItemSelector = ({
342
342
 
343
343
  const getIcon = itemType => {
344
344
  switch (itemType) {
345
- case INDICATORS:
345
+ case DIMENSION_TYPE_INDICATOR:
346
346
  return /*#__PURE__*/React.createElement(IconDimensionIndicator16, null);
347
347
 
348
- case DATA_ELEMENT_OPERAND:
349
- case DATA_ELEMENTS:
348
+ case DIMENSION_TYPE_DATA_ELEMENT_OPERAND:
349
+ case DIMENSION_TYPE_DATA_ELEMENT:
350
350
  return DataElementIcon;
351
351
 
352
352
  case REPORTING_RATE:
353
353
  return /*#__PURE__*/React.createElement(IconDimensionDataSet16, null);
354
354
 
355
- case EVENT_DATA_ITEMS:
356
- case PROGRAM_DATA_ELEMENT:
357
- case PROGRAM_ATTRIBUTE:
355
+ case DIMENSION_TYPE_EVENT_DATA_ITEM:
356
+ case DIMENSION_TYPE_PROGRAM_DATA_ELEMENT:
357
+ case DIMENSION_TYPE_PROGRAM_ATTRIBUTE:
358
358
  return /*#__PURE__*/React.createElement(IconDimensionEventDataItem16, null);
359
359
 
360
- case PROGRAM_INDICATORS:
360
+ case DIMENSION_TYPE_PROGRAM_INDICATOR:
361
361
  return /*#__PURE__*/React.createElement(IconDimensionProgramIndicator16, null);
362
362
 
363
363
  default:
@@ -388,7 +388,7 @@ const ItemSelector = ({
388
388
  setFilter({ ...state.filter,
389
389
  dataType,
390
390
  group: null,
391
- subGroup: dataType === DATA_ELEMENTS ? TOTALS : null
391
+ subGroup: dataType === DIMENSION_TYPE_DATA_ELEMENT ? TOTALS : null
392
392
  });
393
393
  },
394
394
  group: state.filter.group,
@@ -424,7 +424,7 @@ const ItemSelector = ({
424
424
  icon: getIcon(getItemType(props.value
425
425
  /* eslint-disable-line react/prop-types */
426
426
  )),
427
- tooltipText: state.filter.dataType === ALL_ID ? getTooltipText(getItemType(props.value
427
+ tooltipText: state.filter.dataType === DIMENSION_TYPE_ALL ? getTooltipText(getItemType(props.value
428
428
  /* eslint-disable-line react/prop-types */
429
429
  )) : undefined,
430
430
  dataTest: "".concat(dataTest, "-transfer-option")
@@ -4,7 +4,7 @@ import PropTypes from 'prop-types';
4
4
  import React from 'react';
5
5
  import i18n from '../../locales/index.js';
6
6
  import { DATA_SETS_CONSTANTS } from '../../modules/dataSets.js';
7
- import { ALL_ID } from '../../modules/dataTypes.js';
7
+ import { DIMENSION_TYPE_ALL } from '../../modules/dataTypes.js';
8
8
  import styles from './styles/MetricSelector.style.js';
9
9
  export const MetricSelector = ({
10
10
  currentValue,
@@ -15,15 +15,15 @@ export const MetricSelector = ({
15
15
  className: "jsx-".concat(styles.__hash) + " " + "metric-container"
16
16
  }, /*#__PURE__*/React.createElement(SingleSelectField, {
17
17
  label: i18n.t('Metric type'),
18
- selected: currentValue || ALL_ID,
18
+ selected: currentValue || DIMENSION_TYPE_ALL,
19
19
  onChange: ref => onChange(ref.selected),
20
20
  dense: true,
21
21
  dataTest: dataTest
22
22
  }, /*#__PURE__*/React.createElement(SingleSelectOption, {
23
- value: ALL_ID,
24
- key: ALL_ID,
23
+ value: DIMENSION_TYPE_ALL,
24
+ key: DIMENSION_TYPE_ALL,
25
25
  label: i18n.t('All metrics'),
26
- dataTest: "".concat(dataTest, "-option-").concat(ALL_ID)
26
+ dataTest: "".concat(dataTest, "-option-").concat(DIMENSION_TYPE_ALL)
27
27
  }), DATA_SETS_CONSTANTS.map(option => /*#__PURE__*/React.createElement(SingleSelectOption, {
28
28
  value: option.id,
29
29
  key: option.id,
package/build/es/index.js CHANGED
@@ -90,4 +90,5 @@ export { COLOR_SET_DEFAULT, COLOR_SET_BRIGHT, COLOR_SET_DARK, COLOR_SET_GRAY, CO
90
90
  export { DAILY, WEEKLY, WEEKLYWED, WEEKLYTHU, WEEKLYSAT, WEEKLYSUN, BIWEEKLY, MONTHLY, BIMONTHLY, QUARTERLY, SIXMONTHLY, SIXMONTHLYAPR, YEARLY, FINANCIAL, FYNOV, FYOCT, FYJUL, FYAPR } from './components/PeriodDimension/utils/index.js';
91
91
  export { getRelativePeriodsOptionsById } from './components/PeriodDimension/utils/relativePeriods.js';
92
92
  export { getFixedPeriodsOptionsById } from './components/PeriodDimension/utils/fixedPeriods.js';
93
- export { default as VisualizationOptions } from './components/Options/VisualizationOptions.js';
93
+ export { default as VisualizationOptions } from './components/Options/VisualizationOptions.js';
94
+ export { DIMENSION_TYPE_INDICATOR, DIMENSION_TYPE_DATA_ELEMENT, DIMENSION_TYPE_DATA_SET, DIMENSION_TYPE_EVENT_DATA_ITEM, DIMENSION_TYPE_PROGRAM_INDICATOR, DIMENSION_TYPE_PROGRAM_DATA_ELEMENT, DIMENSION_TYPE_PROGRAM_ATTRIBUTE, DIMENSION_TYPE_DATA_ELEMENT_OPERAND, DIMENSION_TYPE_CATEGORY, DIMENSION_TYPE_CATEGORY_OPTION_GROUP_SET, DIMENSION_TYPE_ALL, DIMENSION_TYPE_DATA, DIMENSION_TYPE_DATA_ELEMENT_GROUP_SET, DIMENSION_TYPE_ORGANISATION_UNIT, DIMENSION_TYPE_PERIOD, DIMENSION_TYPE_ORGANISATION_UNIT_GROUP_SET } from './modules/dataTypes.js';