@dhis2/analytics 26.10.2 → 26.11.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.
@@ -3,144 +3,242 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports.getRelativePeriodsOptionsById = exports.getRelativePeriodsOptions = exports.getRelativePeriodIds = void 0;
6
+ exports.getRelativePeriodsOptionsById = exports.getRelativePeriodsOptions = exports.getRelativePeriodsName = exports.getRelativePeriodsDetails = exports.getRelativePeriodIds = void 0;
7
7
  var _index = _interopRequireDefault(require("../../../locales/index.js"));
8
8
  var _index2 = require("./index.js");
9
9
  function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
10
+ /*
11
+ In getDaysPeriodType, getWeeksPeriodType, getBiWeeksPeriodType,
12
+ getBiWeeksPeriodType, getMonthsPeriodType, getBiMonthsPeriodType,
13
+ getQuartersPeriodType, getSixMonthsPeriodType,
14
+ getFinancialYearsPeriodType, and getYearsPeriodType:
15
+ - duration: The number of individual periods in the preset
16
+ (the maximum when the duration is variable).
17
+ eg: LAST_14_DAYS duration is 14
18
+ - offset: The position of the most recent individual period
19
+ relative to THIS period in the preset, earlier periods are
20
+ negative (the maximum when the offset is variable).
21
+ eg: LAST_BIMONTH offset is -1
22
+ */
23
+
10
24
  const getDaysPeriodType = () => [{
11
25
  id: 'TODAY',
12
- name: _index.default.t('Today')
26
+ name: _index.default.t('Today'),
27
+ offset: 0,
28
+ duration: 1
13
29
  }, {
14
30
  id: 'YESTERDAY',
15
- name: _index.default.t('Yesterday')
31
+ name: _index.default.t('Yesterday'),
32
+ offset: -1,
33
+ duration: 1
16
34
  }, {
17
35
  id: 'LAST_3_DAYS',
18
- name: _index.default.t('Last 3 days')
36
+ name: _index.default.t('Last 3 days'),
37
+ offset: -1,
38
+ duration: 3
19
39
  }, {
20
40
  id: 'LAST_7_DAYS',
21
- name: _index.default.t('Last 7 days')
41
+ name: _index.default.t('Last 7 days'),
42
+ offset: -1,
43
+ duration: 7
22
44
  }, {
23
45
  id: 'LAST_14_DAYS',
24
- name: _index.default.t('Last 14 days')
46
+ name: _index.default.t('Last 14 days'),
47
+ offset: -1,
48
+ duration: 14
25
49
  }, {
26
50
  id: 'LAST_30_DAYS',
27
- name: _index.default.t('Last 30 days')
51
+ name: _index.default.t('Last 30 days'),
52
+ offset: -1,
53
+ duration: 30
28
54
  }, {
29
55
  id: 'LAST_60_DAYS',
30
- name: _index.default.t('Last 60 days')
56
+ name: _index.default.t('Last 60 days'),
57
+ offset: -1,
58
+ duration: 60
31
59
  }, {
32
60
  id: 'LAST_90_DAYS',
33
- name: _index.default.t('Last 90 days')
61
+ name: _index.default.t('Last 90 days'),
62
+ offset: -1,
63
+ duration: 90
34
64
  }, {
35
65
  id: 'LAST_180_DAYS',
36
- name: _index.default.t('Last 180 days')
66
+ name: _index.default.t('Last 180 days'),
67
+ offset: -1,
68
+ duration: 180
37
69
  }];
38
70
  const getWeeksPeriodType = () => [{
39
71
  id: 'THIS_WEEK',
40
- name: _index.default.t('This week')
72
+ name: _index.default.t('This week'),
73
+ offset: 0,
74
+ duration: 1
41
75
  }, {
42
76
  id: 'LAST_WEEK',
43
- name: _index.default.t('Last week')
77
+ name: _index.default.t('Last week'),
78
+ offset: -1,
79
+ duration: 1
44
80
  }, {
45
81
  id: 'LAST_4_WEEKS',
46
- name: _index.default.t('Last 4 weeks')
82
+ name: _index.default.t('Last 4 weeks'),
83
+ offset: -1,
84
+ duration: 4
47
85
  }, {
48
86
  id: 'LAST_12_WEEKS',
49
- name: _index.default.t('Last 12 weeks')
87
+ name: _index.default.t('Last 12 weeks'),
88
+ offset: -1,
89
+ duration: 12
50
90
  }, {
51
91
  id: 'LAST_52_WEEKS',
52
- name: _index.default.t('Last 52 weeks')
92
+ name: _index.default.t('Last 52 weeks'),
93
+ offset: -1,
94
+ duration: 52
53
95
  }, {
54
96
  id: _index2.WEEKS_THIS_YEAR,
55
- name: _index.default.t('Weeks this year')
97
+ name: _index.default.t('Weeks this year'),
98
+ offset: 51,
99
+ duration: 52
56
100
  }];
57
101
  const getBiWeeksPeriodType = () => [{
58
102
  id: 'THIS_BIWEEK',
59
- name: _index.default.t('This bi-week')
103
+ name: _index.default.t('This bi-week'),
104
+ offset: 0,
105
+ duration: 1
60
106
  }, {
61
107
  id: 'LAST_BIWEEK',
62
- name: _index.default.t('Last bi-week')
108
+ name: _index.default.t('Last bi-week'),
109
+ offset: -1,
110
+ duration: 1
63
111
  }, {
64
112
  id: 'LAST_4_BIWEEKS',
65
- name: _index.default.t('Last 4 bi-weeks')
113
+ name: _index.default.t('Last 4 bi-weeks'),
114
+ offset: -1,
115
+ duration: 4
66
116
  }];
67
117
  const getMonthsPeriodType = () => [{
68
118
  id: 'THIS_MONTH',
69
- name: _index.default.t('This month')
119
+ name: _index.default.t('This month'),
120
+ offset: 0,
121
+ duration: 1
70
122
  }, {
71
123
  id: 'LAST_MONTH',
72
- name: _index.default.t('Last month')
124
+ name: _index.default.t('Last month'),
125
+ offset: -1,
126
+ duration: 1
73
127
  }, {
74
128
  id: 'LAST_3_MONTHS',
75
- name: _index.default.t('Last 3 months')
129
+ name: _index.default.t('Last 3 months'),
130
+ offset: -1,
131
+ duration: 3
76
132
  }, {
77
133
  id: 'LAST_6_MONTHS',
78
- name: _index.default.t('Last 6 months')
134
+ name: _index.default.t('Last 6 months'),
135
+ offset: -1,
136
+ duration: 6
79
137
  }, {
80
138
  id: 'LAST_12_MONTHS',
81
- name: _index.default.t('Last 12 months')
139
+ name: _index.default.t('Last 12 months'),
140
+ offset: -1,
141
+ duration: 12
82
142
  }, {
83
143
  id: 'MONTHS_THIS_YEAR',
84
- name: _index.default.t('Months this year')
144
+ name: _index.default.t('Months this year'),
145
+ offset: 11,
146
+ duration: 12
85
147
  }];
86
148
  const getBiMonthsPeriodType = () => [{
87
149
  id: 'THIS_BIMONTH',
88
- name: _index.default.t('This bi-month')
150
+ name: _index.default.t('This bi-month'),
151
+ offset: 0,
152
+ duration: 1
89
153
  }, {
90
154
  id: 'LAST_BIMONTH',
91
- name: _index.default.t('Last bi-month')
155
+ name: _index.default.t('Last bi-month'),
156
+ offset: -1,
157
+ duration: 1
92
158
  }, {
93
159
  id: 'LAST_6_BIMONTHS',
94
- name: _index.default.t('Last 6 bi-months')
160
+ name: _index.default.t('Last 6 bi-months'),
161
+ offset: -1,
162
+ duration: 6
95
163
  }, {
96
164
  id: 'BIMONTHS_THIS_YEAR',
97
- name: _index.default.t('Bi-months this year')
165
+ name: _index.default.t('Bi-months this year'),
166
+ offset: 5,
167
+ duration: 6
98
168
  }];
99
169
  const getQuartersPeriodType = () => [{
100
170
  id: 'THIS_QUARTER',
101
- name: _index.default.t('This quarter')
171
+ name: _index.default.t('This quarter'),
172
+ offset: 0,
173
+ duration: 1
102
174
  }, {
103
175
  id: 'LAST_QUARTER',
104
- name: _index.default.t('Last quarter')
176
+ name: _index.default.t('Last quarter'),
177
+ offset: -1,
178
+ duration: 1
105
179
  }, {
106
180
  id: 'LAST_4_QUARTERS',
107
- name: _index.default.t('Last 4 quarters')
181
+ name: _index.default.t('Last 4 quarters'),
182
+ offset: -1,
183
+ duration: 4
108
184
  }, {
109
185
  id: 'QUARTERS_THIS_YEAR',
110
- name: _index.default.t('Quarters this year')
186
+ name: _index.default.t('Quarters this year'),
187
+ offset: 3,
188
+ duration: 4
111
189
  }];
112
190
  const getSixMonthsPeriodType = () => [{
113
191
  id: 'THIS_SIX_MONTH',
114
- name: _index.default.t('This six-month')
192
+ name: _index.default.t('This six-month'),
193
+ offset: 0,
194
+ duration: 1
115
195
  }, {
116
196
  id: 'LAST_SIX_MONTH',
117
- name: _index.default.t('Last six-month')
197
+ name: _index.default.t('Last six-month'),
198
+ offset: -1,
199
+ duration: 1
118
200
  }, {
119
201
  id: 'LAST_2_SIXMONTHS',
120
- name: _index.default.t('Last 2 six-month')
202
+ name: _index.default.t('Last 2 six-month'),
203
+ offset: -1,
204
+ duration: 2
121
205
  }];
122
206
  const getFinancialYearsPeriodType = () => [{
123
207
  id: 'THIS_FINANCIAL_YEAR',
124
- name: _index.default.t('This financial year')
208
+ name: _index.default.t('This financial year'),
209
+ offset: 0,
210
+ duration: 1
125
211
  }, {
126
212
  id: 'LAST_FINANCIAL_YEAR',
127
- name: _index.default.t('Last financial year')
213
+ name: _index.default.t('Last financial year'),
214
+ offset: -1,
215
+ duration: 1
128
216
  }, {
129
217
  id: 'LAST_5_FINANCIAL_YEARS',
130
- name: _index.default.t('Last 5 financial years')
218
+ name: _index.default.t('Last 5 financial years'),
219
+ offset: -1,
220
+ duration: 5
131
221
  }];
132
222
  const getYearsPeriodType = () => [{
133
223
  id: 'THIS_YEAR',
134
- name: _index.default.t('This year')
224
+ name: _index.default.t('This year'),
225
+ offset: 0,
226
+ duration: 1
135
227
  }, {
136
228
  id: 'LAST_YEAR',
137
- name: _index.default.t('Last year')
229
+ name: _index.default.t('Last year'),
230
+ offset: -1,
231
+ duration: 1
138
232
  }, {
139
233
  id: 'LAST_5_YEARS',
140
- name: _index.default.t('Last 5 years')
234
+ name: _index.default.t('Last 5 years'),
235
+ offset: -1,
236
+ duration: 5
141
237
  }, {
142
238
  id: 'LAST_10_YEARS',
143
- name: _index.default.t('Last 10 years')
239
+ name: _index.default.t('Last 10 years'),
240
+ offset: -1,
241
+ duration: 10
144
242
  }];
145
243
  const getOptions = () => [{
146
244
  id: _index2.DAILY,
@@ -184,4 +282,20 @@ exports.getRelativePeriodsOptionsById = getRelativePeriodsOptionsById;
184
282
  const getRelativePeriodsOptions = () => getOptions();
185
283
  exports.getRelativePeriodsOptions = getRelativePeriodsOptions;
186
284
  const getRelativePeriodIds = () => Object.values(getOptions()).map(option => option.getPeriods().map(period => period.id)).flat();
187
- exports.getRelativePeriodIds = getRelativePeriodIds;
285
+ exports.getRelativePeriodIds = getRelativePeriodIds;
286
+ const getRelativePeriodsDetails = () => Object.values(getOptions()).map(option => option.getPeriods().map(period => ({
287
+ id: period.id,
288
+ name: period.name,
289
+ offset: period.offset,
290
+ duration: period.duration,
291
+ type: option.id
292
+ }))).flat().reduce((acc, period) => {
293
+ acc[period.id] = period;
294
+ return acc;
295
+ }, {});
296
+ exports.getRelativePeriodsDetails = getRelativePeriodsDetails;
297
+ const getRelativePeriodsName = () => Object.values(getOptions()).map(option => option.getPeriods()).flat().reduce((acc, period) => {
298
+ acc[period.id] = period.name;
299
+ return acc;
300
+ }, {});
301
+ exports.getRelativePeriodsName = getRelativePeriodsName;
@@ -242,7 +242,10 @@ var _exportNames = {
242
242
  FYJUL: true,
243
243
  FYAPR: true,
244
244
  getRelativePeriodsOptionsById: true,
245
+ getRelativePeriodsName: true,
246
+ getRelativePeriodsDetails: true,
245
247
  getFixedPeriodsOptionsById: true,
248
+ PERIOD_TYPE_REGEX: true,
246
249
  VisualizationOptions: true,
247
250
  DIMENSION_TYPE_INDICATOR: true,
248
251
  DIMENSION_TYPE_DATA_ELEMENT: true,
@@ -839,6 +842,12 @@ Object.defineProperty(exports, "OrgUnitDimension", {
839
842
  return _OrgUnitDimension.default;
840
843
  }
841
844
  });
845
+ Object.defineProperty(exports, "PERIOD_TYPE_REGEX", {
846
+ enumerable: true,
847
+ get: function () {
848
+ return _fixedPeriods.PERIOD_TYPE_REGEX;
849
+ }
850
+ });
842
851
  Object.defineProperty(exports, "PeriodDimension", {
843
852
  enumerable: true,
844
853
  get: function () {
@@ -1565,6 +1574,18 @@ Object.defineProperty(exports, "getPredefinedDimensions", {
1565
1574
  return _predefinedDimensions.getPredefinedDimensions;
1566
1575
  }
1567
1576
  });
1577
+ Object.defineProperty(exports, "getRelativePeriodsDetails", {
1578
+ enumerable: true,
1579
+ get: function () {
1580
+ return _relativePeriods.getRelativePeriodsDetails;
1581
+ }
1582
+ });
1583
+ Object.defineProperty(exports, "getRelativePeriodsName", {
1584
+ enumerable: true,
1585
+ get: function () {
1586
+ return _relativePeriods.getRelativePeriodsName;
1587
+ }
1588
+ });
1568
1589
  Object.defineProperty(exports, "getRelativePeriodsOptionsById", {
1569
1590
  enumerable: true,
1570
1591
  get: function () {
@@ -17,7 +17,8 @@ const PeriodDimension = _ref => {
17
17
  selectedPeriods,
18
18
  rightFooter,
19
19
  excludedPeriodTypes,
20
- infoBoxMessage
20
+ infoBoxMessage,
21
+ height
21
22
  } = _ref;
22
23
  const {
23
24
  systemInfo
@@ -50,12 +51,14 @@ const PeriodDimension = _ref => {
50
51
  rightFooter: rightFooter,
51
52
  dataTest: 'period-dimension',
52
53
  excludedPeriodTypes: excludedPeriodTypes,
53
- periodsSettings: periodsSettings
54
+ periodsSettings: periodsSettings,
55
+ height: height
54
56
  });
55
57
  };
56
58
  PeriodDimension.propTypes = {
57
59
  onSelect: PropTypes.func.isRequired,
58
60
  excludedPeriodTypes: PropTypes.arrayOf(PropTypes.string),
61
+ height: PropTypes.string,
59
62
  infoBoxMessage: PropTypes.string,
60
63
  rightFooter: PropTypes.node,
61
64
  selectedPeriods: PropTypes.array
@@ -41,7 +41,8 @@ const PeriodTransfer = _ref2 => {
41
41
  rightFooter,
42
42
  excludedPeriodTypes,
43
43
  periodsSettings,
44
- infoBoxMessage
44
+ infoBoxMessage,
45
+ height = TRANSFER_HEIGHT
45
46
  } = _ref2;
46
47
  const defaultRelativePeriodType = excludedPeriodTypes.includes(MONTHLY) ? getRelativePeriodsOptionsById(QUARTERLY) : getRelativePeriodsOptionsById(MONTHLY);
47
48
  const defaultFixedPeriodType = excludedPeriodTypes.includes(MONTHLY) ? getFixedPeriodsOptionsById(QUARTERLY, periodsSettings) : getFixedPeriodsOptionsById(MONTHLY, periodsSettings);
@@ -142,7 +143,7 @@ const PeriodTransfer = _ref2 => {
142
143
  selected: selectedItems.map(period => period.id),
143
144
  leftHeader: renderLeftHeader(),
144
145
  enableOrderChange: true,
145
- height: TRANSFER_HEIGHT,
146
+ height: height,
146
147
  optionsWidth: TRANSFER_OPTIONS_WIDTH,
147
148
  selectedWidth: TRANSFER_SELECTED_WIDTH,
148
149
  selectedEmptyComponent: renderEmptySelection(),
@@ -187,6 +188,7 @@ PeriodTransfer.propTypes = {
187
188
  onSelect: PropTypes.func.isRequired,
188
189
  dataTest: PropTypes.string,
189
190
  excludedPeriodTypes: PropTypes.arrayOf(PropTypes.string),
191
+ height: PropTypes.string,
190
192
  infoBoxMessage: PropTypes.string,
191
193
  periodsSettings: PropTypes.shape({
192
194
  calendar: PropTypes.string,