@hisptz/dhis2-analytics 1.0.9 → 1.0.11

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.
Files changed (162) hide show
  1. package/build/cjs/components/ChartAnalytics/ChartAnalytics.stories.js +6 -6
  2. package/build/cjs/components/ChartAnalytics/components/DownloadMenu/index.js +2 -4
  3. package/build/cjs/components/ChartAnalytics/index.js +25 -17
  4. package/build/cjs/components/CircularProgressDashboard/CircularProgressIndicator.stories.js +1 -1
  5. package/build/cjs/components/Map/Map.stories.js +1 -1
  6. package/build/cjs/components/Map/components/EarthEngineLayerConfiguration/EarthEngineLayerConfigModal.stories.js +1 -1
  7. package/build/cjs/components/Map/components/EarthEngineLayerConfiguration/EarthEngineLayerConfiguration.stories.js +1 -1
  8. package/build/cjs/components/Map/components/MapLayer/components/GoogleEngineLayer/services/engine.js +3 -12
  9. package/build/cjs/components/Map/components/MapProvider/components/MapLayerProvider/hooks/index.js +8 -1
  10. package/build/cjs/components/Map/components/ThematicLayerConfiguration/ThematicLayerConfigModal.stories.js +1 -1
  11. package/build/cjs/components/Map/components/ThematicLayerConfiguration/ThematicLayerConfiguration.stories.js +1 -1
  12. package/build/cjs/components/PivotTable/PivotTable.stories.js +277 -0
  13. package/build/cjs/components/PivotTable/components/AssignedCategoriesIcon/index.js +32 -0
  14. package/build/cjs/components/PivotTable/components/PivotTable.js +60 -0
  15. package/build/cjs/components/PivotTable/components/PivotTableBody.js +41 -0
  16. package/build/cjs/components/PivotTable/components/PivotTableCell.js +40 -0
  17. package/build/cjs/components/PivotTable/components/PivotTableClippedAxis.js +26 -0
  18. package/build/cjs/components/PivotTable/components/PivotTableColumnHeaderCell.js +71 -0
  19. package/build/cjs/components/PivotTable/components/PivotTableColumnHeaders.js +60 -0
  20. package/build/cjs/components/PivotTable/components/PivotTableContainer.js +33 -0
  21. package/build/cjs/components/PivotTable/components/PivotTableDimensionLabelCell.js +77 -0
  22. package/build/cjs/components/PivotTable/components/PivotTableEmptyCell.js +22 -0
  23. package/build/cjs/components/PivotTable/components/PivotTableEmptyRow.js +33 -0
  24. package/build/cjs/components/PivotTable/components/PivotTableEngineContext.js +25 -0
  25. package/build/cjs/components/PivotTable/components/PivotTableHead.js +35 -0
  26. package/build/cjs/components/PivotTable/components/PivotTableHeaderCell.js +37 -0
  27. package/build/cjs/components/PivotTable/components/PivotTableRow.js +65 -0
  28. package/build/cjs/components/PivotTable/components/PivotTableRowHeaderCell.js +49 -0
  29. package/build/cjs/components/PivotTable/components/PivotTableTitleRow.js +52 -0
  30. package/build/cjs/components/PivotTable/components/PivotTableTitleRows.js +46 -0
  31. package/build/cjs/components/PivotTable/components/PivotTableValueCell.js +69 -0
  32. package/build/cjs/components/PivotTable/constants/dataTypes.js +129 -0
  33. package/build/cjs/components/PivotTable/constants/pivotTable.js +64 -0
  34. package/build/cjs/components/PivotTable/constants/predefinedDimensions.js +62 -0
  35. package/build/cjs/components/PivotTable/constants/valueTypes.js +55 -0
  36. package/build/cjs/components/PivotTable/data/column-data.json +210 -0
  37. package/build/cjs/components/PivotTable/hooks/useParentSize.js +41 -0
  38. package/build/cjs/components/PivotTable/hooks/useScrollPosition.js +38 -0
  39. package/build/cjs/components/PivotTable/hooks/useSortableColumns.js +34 -0
  40. package/build/cjs/components/PivotTable/hooks/useTableClipping.js +53 -0
  41. package/build/cjs/components/PivotTable/index.js +47 -0
  42. package/build/cjs/components/PivotTable/interfaces/index.js +1 -0
  43. package/build/cjs/components/PivotTable/services/adaptiveClippingController.js +197 -0
  44. package/build/cjs/components/PivotTable/services/engine.js +901 -0
  45. package/build/cjs/components/PivotTable/utils/getOuLevelAndGroupText.js +71 -0
  46. package/build/cjs/components/PivotTable/utils/index.js +322 -0
  47. package/build/cjs/components/PivotTable/utils/isColorBright.js +29 -0
  48. package/build/cjs/components/PivotTable/utils/layout/dimension.js +61 -0
  49. package/build/cjs/components/PivotTable/utils/layout/dimensionGetId.js +12 -0
  50. package/build/cjs/components/PivotTable/utils/layout/dimensionGetItems.js +12 -0
  51. package/build/cjs/components/PivotTable/utils/layout/dimensionIs.js +9 -0
  52. package/build/cjs/components/PivotTable/utils/layout/dimensionIsEmpty.js +9 -0
  53. package/build/cjs/components/PivotTable/utils/layout/dimensionIsValid.js +25 -0
  54. package/build/cjs/components/PivotTable/utils/legend.js +40 -0
  55. package/build/cjs/components/PivotTable/utils/ouIdHelper/index.js +27 -0
  56. package/build/cjs/components/SingleValueContainer/SingleValueContainer.stories.js +1 -1
  57. package/build/cjs/index.js +11 -0
  58. package/build/cjs/locales/en/translations.json +33 -0
  59. package/build/es/components/ChartAnalytics/ChartAnalytics.stories.js +3 -3
  60. package/build/es/components/ChartAnalytics/components/DownloadMenu/index.js +2 -3
  61. package/build/es/components/ChartAnalytics/index.js +2 -3
  62. package/build/es/components/CircularProgressDashboard/CircularProgressIndicator.stories.js +1 -1
  63. package/build/es/components/Map/Map.stories.js +1 -1
  64. package/build/es/components/Map/components/EarthEngineLayerConfiguration/EarthEngineLayerConfigModal.stories.js +1 -1
  65. package/build/es/components/Map/components/EarthEngineLayerConfiguration/EarthEngineLayerConfiguration.stories.js +1 -1
  66. package/build/es/components/Map/components/MapLayer/components/GoogleEngineLayer/services/engine.js +9 -8
  67. package/build/es/components/Map/components/MapProvider/components/MapLayerProvider/hooks/index.js +8 -1
  68. package/build/es/components/Map/components/ThematicLayerConfiguration/ThematicLayerConfigModal.stories.js +1 -1
  69. package/build/es/components/Map/components/ThematicLayerConfiguration/ThematicLayerConfiguration.stories.js +1 -1
  70. package/build/es/components/PivotTable/PivotTable.stories.js +268 -0
  71. package/build/es/components/PivotTable/components/AssignedCategoriesIcon/index.js +24 -0
  72. package/build/es/components/PivotTable/components/PivotTable.js +51 -0
  73. package/build/es/components/PivotTable/components/PivotTableBody.js +33 -0
  74. package/build/es/components/PivotTable/components/PivotTableCell.js +32 -0
  75. package/build/es/components/PivotTable/components/PivotTableClippedAxis.js +18 -0
  76. package/build/es/components/PivotTable/components/PivotTableColumnHeaderCell.js +62 -0
  77. package/build/es/components/PivotTable/components/PivotTableColumnHeaders.js +52 -0
  78. package/build/es/components/PivotTable/components/PivotTableContainer.js +25 -0
  79. package/build/es/components/PivotTable/components/PivotTableDimensionLabelCell.js +68 -0
  80. package/build/es/components/PivotTable/components/PivotTableEmptyCell.js +14 -0
  81. package/build/es/components/PivotTable/components/PivotTableEmptyRow.js +25 -0
  82. package/build/es/components/PivotTable/components/PivotTableEngineContext.js +14 -0
  83. package/build/es/components/PivotTable/components/PivotTableHead.js +27 -0
  84. package/build/es/components/PivotTable/components/PivotTableHeaderCell.js +29 -0
  85. package/build/es/components/PivotTable/components/PivotTableRow.js +57 -0
  86. package/build/es/components/PivotTable/components/PivotTableRowHeaderCell.js +41 -0
  87. package/build/es/components/PivotTable/components/PivotTableTitleRow.js +42 -0
  88. package/build/es/components/PivotTable/components/PivotTableTitleRows.js +37 -0
  89. package/build/es/components/PivotTable/components/PivotTableValueCell.js +60 -0
  90. package/build/es/components/PivotTable/constants/dataTypes.js +98 -0
  91. package/build/es/components/PivotTable/constants/pivotTable.js +29 -0
  92. package/build/es/components/PivotTable/constants/predefinedDimensions.js +44 -0
  93. package/build/es/components/PivotTable/constants/valueTypes.js +27 -0
  94. package/build/es/components/PivotTable/data/column-data.json +210 -0
  95. package/build/es/components/PivotTable/hooks/useParentSize.js +33 -0
  96. package/build/es/components/PivotTable/hooks/useScrollPosition.js +30 -0
  97. package/build/es/components/PivotTable/hooks/useSortableColumns.js +27 -0
  98. package/build/es/components/PivotTable/hooks/useTableClipping.js +46 -0
  99. package/build/es/components/PivotTable/index.js +26 -0
  100. package/build/es/components/PivotTable/interfaces/index.js +1 -0
  101. package/build/es/components/PivotTable/services/adaptiveClippingController.js +191 -0
  102. package/build/es/components/PivotTable/services/engine.js +894 -0
  103. package/build/es/components/PivotTable/utils/getOuLevelAndGroupText.js +63 -0
  104. package/build/es/components/PivotTable/utils/index.js +309 -0
  105. package/build/es/components/PivotTable/utils/isColorBright.js +22 -0
  106. package/build/es/components/PivotTable/utils/layout/dimension.js +48 -0
  107. package/build/es/components/PivotTable/utils/layout/dimensionGetId.js +5 -0
  108. package/build/es/components/PivotTable/utils/layout/dimensionGetItems.js +5 -0
  109. package/build/es/components/PivotTable/utils/layout/dimensionIs.js +2 -0
  110. package/build/es/components/PivotTable/utils/layout/dimensionIsEmpty.js +2 -0
  111. package/build/es/components/PivotTable/utils/layout/dimensionIsValid.js +18 -0
  112. package/build/es/components/PivotTable/utils/legend.js +27 -0
  113. package/build/es/components/PivotTable/utils/ouIdHelper/index.js +17 -0
  114. package/build/es/components/SingleValueContainer/SingleValueContainer.stories.js +1 -1
  115. package/build/es/index.js +1 -0
  116. package/build/es/locales/en/translations.json +33 -0
  117. package/build/types/components/ChartAnalytics/components/DownloadMenu/index.d.ts +1 -2
  118. package/build/types/components/ChartAnalytics/index.d.ts +3 -3
  119. package/build/types/components/PivotTable/components/AssignedCategoriesIcon/index.d.ts +3 -0
  120. package/build/types/components/PivotTable/components/PivotTable.d.ts +12 -0
  121. package/build/types/components/PivotTable/components/PivotTableBody.d.ts +7 -0
  122. package/build/types/components/PivotTable/components/PivotTableCell.d.ts +17 -0
  123. package/build/types/components/PivotTable/components/PivotTableClippedAxis.d.ts +7 -0
  124. package/build/types/components/PivotTable/components/PivotTableColumnHeaderCell.d.ts +13 -0
  125. package/build/types/components/PivotTable/components/PivotTableColumnHeaders.d.ts +11 -0
  126. package/build/types/components/PivotTable/components/PivotTableContainer.d.ts +8 -0
  127. package/build/types/components/PivotTable/components/PivotTableDimensionLabelCell.d.ts +13 -0
  128. package/build/types/components/PivotTable/components/PivotTableEmptyCell.d.ts +7 -0
  129. package/build/types/components/PivotTable/components/PivotTableEmptyRow.d.ts +5 -0
  130. package/build/types/components/PivotTable/components/PivotTableEngineContext.d.ts +8 -0
  131. package/build/types/components/PivotTable/components/PivotTableHead.d.ts +21 -0
  132. package/build/types/components/PivotTable/components/PivotTableHeaderCell.d.ts +22 -0
  133. package/build/types/components/PivotTable/components/PivotTableRow.d.ts +19 -0
  134. package/build/types/components/PivotTable/components/PivotTableRowHeaderCell.d.ts +8 -0
  135. package/build/types/components/PivotTable/components/PivotTableTitleRow.d.ts +21 -0
  136. package/build/types/components/PivotTable/components/PivotTableTitleRows.d.ts +12 -0
  137. package/build/types/components/PivotTable/components/PivotTableValueCell.d.ts +8 -0
  138. package/build/types/components/PivotTable/constants/dataTypes.d.ts +90 -0
  139. package/build/types/components/PivotTable/constants/pivotTable.d.ts +29 -0
  140. package/build/types/components/PivotTable/constants/predefinedDimensions.d.ts +80 -0
  141. package/build/types/components/PivotTable/constants/valueTypes.d.ts +22 -0
  142. package/build/types/components/PivotTable/hooks/useParentSize.d.ts +8 -0
  143. package/build/types/components/PivotTable/hooks/useScrollPosition.d.ts +5 -0
  144. package/build/types/components/PivotTable/hooks/useSortableColumns.d.ts +8 -0
  145. package/build/types/components/PivotTable/hooks/useTableClipping.d.ts +24 -0
  146. package/build/types/components/PivotTable/index.d.ts +26 -0
  147. package/build/types/components/PivotTable/interfaces/index.d.ts +72 -0
  148. package/build/types/components/PivotTable/services/adaptiveClippingController.d.ts +44 -0
  149. package/build/types/components/PivotTable/services/engine.d.ts +252 -0
  150. package/build/types/components/PivotTable/utils/getOuLevelAndGroupText.d.ts +1 -0
  151. package/build/types/components/PivotTable/utils/index.d.ts +38 -0
  152. package/build/types/components/PivotTable/utils/isColorBright.d.ts +1 -0
  153. package/build/types/components/PivotTable/utils/layout/dimension.d.ts +35 -0
  154. package/build/types/components/PivotTable/utils/layout/dimensionGetId.d.ts +3 -0
  155. package/build/types/components/PivotTable/utils/layout/dimensionGetItems.d.ts +3 -0
  156. package/build/types/components/PivotTable/utils/layout/dimensionIs.d.ts +1 -0
  157. package/build/types/components/PivotTable/utils/layout/dimensionIsEmpty.d.ts +3 -0
  158. package/build/types/components/PivotTable/utils/layout/dimensionIsValid.d.ts +5 -0
  159. package/build/types/components/PivotTable/utils/legend.d.ts +11 -0
  160. package/build/types/components/PivotTable/utils/ouIdHelper/index.d.ts +10 -0
  161. package/build/types/index.d.ts +1 -0
  162. package/package.json +6 -3
@@ -0,0 +1,46 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.PivotTableTitleRows = void 0;
7
+ var _propTypes = _interopRequireDefault(require("prop-types"));
8
+ var _react = _interopRequireDefault(require("react"));
9
+ var _utils = require("../utils");
10
+ var _PivotTableEngineContext = require("./PivotTableEngineContext");
11
+ var _PivotTableTitleRow = require("./PivotTableTitleRow.js");
12
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
13
+ // @ts-nocheck
14
+
15
+ const PivotTableTitleRows = _ref => {
16
+ var _engine$visualization, _engine$visualization2, _engine$visualization3;
17
+ let {
18
+ clippingResult,
19
+ width
20
+ } = _ref;
21
+ const engine = (0, _PivotTableEngineContext.usePivotTableEngine)();
22
+ if (!engine) {
23
+ return null;
24
+ }
25
+ return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, engine.options.title ? /*#__PURE__*/_react.default.createElement(_PivotTableTitleRow.PivotTableTitleRow, {
26
+ title: engine.options.title,
27
+ scrollPosition: clippingResult.scrollPosition,
28
+ containerWidth: width,
29
+ totalWidth: engine.adaptiveClippingController.columns.totalSize + engine.adaptiveClippingController.columns.headerSize
30
+ }) : null, engine.options.subtitle ? /*#__PURE__*/_react.default.createElement(_PivotTableTitleRow.PivotTableTitleRow, {
31
+ title: engine.options.subtitle,
32
+ scrollPosition: clippingResult.scrollPosition,
33
+ containerWidth: width,
34
+ totalWidth: engine.adaptiveClippingController.columns.totalSize + engine.adaptiveClippingController.columns.headerSize
35
+ }) : null, (_engine$visualization = engine.visualization) !== null && _engine$visualization !== void 0 && (_engine$visualization2 = _engine$visualization.filters) !== null && _engine$visualization2 !== void 0 && _engine$visualization2.length ? /*#__PURE__*/_react.default.createElement(_PivotTableTitleRow.PivotTableTitleRow, {
36
+ title: (0, _utils.getFilterText)((_engine$visualization3 = engine.visualization) === null || _engine$visualization3 === void 0 ? void 0 : _engine$visualization3.filters, engine.rawData.metaData),
37
+ scrollPosition: clippingResult.scrollPosition,
38
+ containerWidth: width,
39
+ totalWidth: engine.adaptiveClippingController.columns.totalSize + engine.adaptiveClippingController.columns.headerSize
40
+ }) : null);
41
+ };
42
+ exports.PivotTableTitleRows = PivotTableTitleRows;
43
+ PivotTableTitleRows.propTypes = {
44
+ clippingResult: _propTypes.default.object.isRequired,
45
+ width: _propTypes.default.number.isRequired
46
+ };
@@ -0,0 +1,69 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.PivotTableValueCell = void 0;
7
+ var _react = _interopRequireWildcard(require("react"));
8
+ var _utils = require("../utils");
9
+ var _pivotTable = require("../constants/pivotTable");
10
+ var _valueTypes = require("../constants/valueTypes.js");
11
+ var _PivotTableCell = require("./PivotTableCell.js");
12
+ var _PivotTableEmptyCell = require("./PivotTableEmptyCell");
13
+ var _PivotTableEngineContext = require("./PivotTableEngineContext.js");
14
+ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
15
+ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
16
+ const PivotTableValueCell = _ref => {
17
+ var _cellContent$rendered;
18
+ let {
19
+ row,
20
+ column,
21
+ onToggleContextualMenu
22
+ } = _ref;
23
+ const engine = (0, _PivotTableEngineContext.usePivotTableEngine)();
24
+ const cellRef = (0, _react.useRef)(null);
25
+ if (!engine) {
26
+ return null;
27
+ }
28
+ const cellContent = engine.get({
29
+ row,
30
+ column
31
+ });
32
+ const isClickable = !!cellContent && onToggleContextualMenu && cellContent.cellType === _pivotTable.CELL_TYPE_VALUE && cellContent.ouId;
33
+ const classes = !!cellContent ? [cellContent.cellType, cellContent.valueType, isClickable && 'clickable'] : [];
34
+ const onClick = () => {
35
+ if (onToggleContextualMenu) {
36
+ onToggleContextualMenu(cellRef.current, {
37
+ ouId: cellContent === null || cellContent === void 0 ? void 0 : cellContent.ouId
38
+ });
39
+ }
40
+ };
41
+ if (!cellContent || cellContent.empty) {
42
+ return /*#__PURE__*/_react.default.createElement(_PivotTableEmptyCell.PivotTableEmptyCell, {
43
+ onClick: isClickable ? onClick : undefined,
44
+ ref: cellRef,
45
+ classes: [cellContent === null || cellContent === void 0 ? void 0 : cellContent.cellType, isClickable && 'clickable']
46
+ });
47
+ }
48
+
49
+ // TODO: Add support for 'INTEGER' type (requires server changes)
50
+ const legendStyle = cellContent.cellType === _pivotTable.CELL_TYPE_VALUE && cellContent.valueType === _valueTypes.VALUE_TYPE_NUMBER ? (0, _utils.applyLegendSet)(cellContent.rawValue, cellContent.dxDimension, engine) : undefined;
51
+ const width = engine.adaptiveClippingController.columns.sizes[engine.columnMap[column]].size;
52
+ const height = engine.adaptiveClippingController.rows.sizes[engine.rowMap[row]].size;
53
+ const style = {
54
+ ...legendStyle,
55
+ width,
56
+ height,
57
+ whiteSpace: 'pre-line'
58
+ };
59
+ return /*#__PURE__*/_react.default.createElement(_PivotTableCell.PivotTableCell, {
60
+ key: column,
61
+ classes: classes,
62
+ title: cellContent.renderedValue,
63
+ style: style,
64
+ onClick: isClickable ? onClick : undefined,
65
+ ref: cellRef,
66
+ dataTest: 'visualization-value-cell'
67
+ }, (_cellContent$rendered = cellContent.renderedValue) !== null && _cellContent$rendered !== void 0 ? _cellContent$rendered : null);
68
+ };
69
+ exports.PivotTableValueCell = PivotTableValueCell;
@@ -0,0 +1,129 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.dataTypeMap = exports.TOTALS = exports.SUB_GROUP_METRIC = exports.SUB_GROUP_DETAIL = exports.DIMENSION_TYPE_PROGRAM_INDICATOR = exports.DIMENSION_TYPE_PROGRAM_DATA_ELEMENT = exports.DIMENSION_TYPE_PROGRAM_ATTRIBUTE = exports.DIMENSION_TYPE_PERIOD = exports.DIMENSION_TYPE_ORGANISATION_UNIT_GROUP_SET = exports.DIMENSION_TYPE_ORGANISATION_UNIT = exports.DIMENSION_TYPE_INDICATOR = exports.DIMENSION_TYPE_EVENT_DATA_ITEM = exports.DIMENSION_TYPE_DATA_SET = exports.DIMENSION_TYPE_DATA_ELEMENT_OPERAND = exports.DIMENSION_TYPE_DATA_ELEMENT_GROUP_SET = exports.DIMENSION_TYPE_DATA_ELEMENT = exports.DIMENSION_TYPE_DATA = exports.DIMENSION_TYPE_CATEGORY_OPTION_GROUP_SET = exports.DIMENSION_TYPE_CATEGORY = exports.DIMENSION_TYPE_ALL = exports.DETAIL = exports.DEFAULT_DATATYPE_ID = void 0;
7
+ exports.defaultGroupDetail = defaultGroupDetail;
8
+ exports.defaultGroupId = defaultGroupId;
9
+ var _d2I18n = _interopRequireDefault(require("@dhis2/d2-i18n"));
10
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
11
+ // @ts-nocheck
12
+
13
+ const DIMENSION_TYPE_ALL = 'ALL';
14
+ exports.DIMENSION_TYPE_ALL = DIMENSION_TYPE_ALL;
15
+ const DIMENSION_TYPE_INDICATOR = 'INDICATOR';
16
+ exports.DIMENSION_TYPE_INDICATOR = DIMENSION_TYPE_INDICATOR;
17
+ const DIMENSION_TYPE_DATA_ELEMENT = 'DATA_ELEMENT';
18
+ exports.DIMENSION_TYPE_DATA_ELEMENT = DIMENSION_TYPE_DATA_ELEMENT;
19
+ const DIMENSION_TYPE_DATA_SET = 'DATA_SET';
20
+ exports.DIMENSION_TYPE_DATA_SET = DIMENSION_TYPE_DATA_SET;
21
+ const DIMENSION_TYPE_EVENT_DATA_ITEM = 'EVENT_DATA_ITEM';
22
+ exports.DIMENSION_TYPE_EVENT_DATA_ITEM = DIMENSION_TYPE_EVENT_DATA_ITEM;
23
+ const DIMENSION_TYPE_PROGRAM_INDICATOR = 'PROGRAM_INDICATOR';
24
+ exports.DIMENSION_TYPE_PROGRAM_INDICATOR = DIMENSION_TYPE_PROGRAM_INDICATOR;
25
+ const DIMENSION_TYPE_PROGRAM_DATA_ELEMENT = 'PROGRAM_DATA_ELEMENT';
26
+ exports.DIMENSION_TYPE_PROGRAM_DATA_ELEMENT = DIMENSION_TYPE_PROGRAM_DATA_ELEMENT;
27
+ const DIMENSION_TYPE_PROGRAM_ATTRIBUTE = 'PROGRAM_ATTRIBUTE';
28
+ exports.DIMENSION_TYPE_PROGRAM_ATTRIBUTE = DIMENSION_TYPE_PROGRAM_ATTRIBUTE;
29
+ const DIMENSION_TYPE_DATA_ELEMENT_OPERAND = 'DATA_ELEMENT_OPERAND';
30
+ exports.DIMENSION_TYPE_DATA_ELEMENT_OPERAND = DIMENSION_TYPE_DATA_ELEMENT_OPERAND;
31
+ const DIMENSION_TYPE_CATEGORY = 'CATEGORY';
32
+ exports.DIMENSION_TYPE_CATEGORY = DIMENSION_TYPE_CATEGORY;
33
+ const DIMENSION_TYPE_CATEGORY_OPTION_GROUP_SET = 'CATEGORY_OPTION_GROUP_SET';
34
+ exports.DIMENSION_TYPE_CATEGORY_OPTION_GROUP_SET = DIMENSION_TYPE_CATEGORY_OPTION_GROUP_SET;
35
+ const DIMENSION_TYPE_DATA_ELEMENT_GROUP_SET = 'DATA_ELEMENT_GROUP_SET';
36
+ exports.DIMENSION_TYPE_DATA_ELEMENT_GROUP_SET = DIMENSION_TYPE_DATA_ELEMENT_GROUP_SET;
37
+ const DIMENSION_TYPE_DATA = 'DATA_X';
38
+ exports.DIMENSION_TYPE_DATA = DIMENSION_TYPE_DATA;
39
+ const DIMENSION_TYPE_PERIOD = 'PERIOD';
40
+ exports.DIMENSION_TYPE_PERIOD = DIMENSION_TYPE_PERIOD;
41
+ const DIMENSION_TYPE_ORGANISATION_UNIT = 'ORGANISATION_UNIT';
42
+ exports.DIMENSION_TYPE_ORGANISATION_UNIT = DIMENSION_TYPE_ORGANISATION_UNIT;
43
+ const DIMENSION_TYPE_ORGANISATION_UNIT_GROUP_SET = 'ORGANISATION_UNIT_GROUP_SET';
44
+ exports.DIMENSION_TYPE_ORGANISATION_UNIT_GROUP_SET = DIMENSION_TYPE_ORGANISATION_UNIT_GROUP_SET;
45
+ const TOTALS = 'totals';
46
+ exports.TOTALS = TOTALS;
47
+ const DETAIL = 'detail';
48
+ exports.DETAIL = DETAIL;
49
+ const SUB_GROUP_DETAIL = 'DETAIL';
50
+ exports.SUB_GROUP_DETAIL = SUB_GROUP_DETAIL;
51
+ const SUB_GROUP_METRIC = 'METRIC';
52
+ exports.SUB_GROUP_METRIC = SUB_GROUP_METRIC;
53
+ const getProgramText = () => _d2I18n.default.t('Program');
54
+ const getSelectProgramText = () => _d2I18n.default.t('Select a program');
55
+ const dataTypeMap = {
56
+ [DIMENSION_TYPE_INDICATOR]: {
57
+ id: DIMENSION_TYPE_INDICATOR,
58
+ getName: () => _d2I18n.default.t('Indicators'),
59
+ getGroupLabel: () => _d2I18n.default.t('Indicator group'),
60
+ defaultGroup: {
61
+ id: DIMENSION_TYPE_ALL,
62
+ getName: () => _d2I18n.default.t('All groups')
63
+ },
64
+ getItemName: () => _d2I18n.default.t('Indicator'),
65
+ getGroupEmptyLabel: () => _d2I18n.default.t('No indicator groups found'),
66
+ getGroupLoadingLabel: () => _d2I18n.default.t('Loading indicator groups')
67
+ },
68
+ [DIMENSION_TYPE_DATA_ELEMENT]: {
69
+ id: DIMENSION_TYPE_DATA_ELEMENT,
70
+ getName: () => _d2I18n.default.t('Data elements'),
71
+ getGroupLabel: () => _d2I18n.default.t('Data element group'),
72
+ defaultGroup: {
73
+ id: DIMENSION_TYPE_ALL,
74
+ getName: () => _d2I18n.default.t('All groups')
75
+ },
76
+ subGroup: SUB_GROUP_DETAIL,
77
+ getItemName: () => _d2I18n.default.t('Data element'),
78
+ getGroupEmptyLabel: () => _d2I18n.default.t('No data element groups found'),
79
+ getGroupLoadingLabel: () => _d2I18n.default.t('Loading data element groups')
80
+ },
81
+ [DIMENSION_TYPE_DATA_SET]: {
82
+ id: DIMENSION_TYPE_DATA_SET,
83
+ getName: () => _d2I18n.default.t('Data sets'),
84
+ getGroupLabel: () => _d2I18n.default.t('Data set'),
85
+ defaultGroup: {
86
+ id: DIMENSION_TYPE_ALL,
87
+ getName: () => _d2I18n.default.t('All data sets')
88
+ },
89
+ subGroup: SUB_GROUP_METRIC,
90
+ getItemName: () => _d2I18n.default.t('Data set'),
91
+ getGroupEmptyLabel: () => _d2I18n.default.t('No data sets found'),
92
+ getGroupLoadingLabel: () => _d2I18n.default.t('Loading data sets')
93
+ },
94
+ [DIMENSION_TYPE_EVENT_DATA_ITEM]: {
95
+ id: DIMENSION_TYPE_EVENT_DATA_ITEM,
96
+ getName: () => _d2I18n.default.t('Event data items'),
97
+ getGroupLabel: getProgramText,
98
+ getPlaceholder: getSelectProgramText,
99
+ defaultGroup: {
100
+ id: DIMENSION_TYPE_ALL,
101
+ getName: () => _d2I18n.default.t('All programs')
102
+ },
103
+ getItemName: () => _d2I18n.default.t('Event data item'),
104
+ getGroupEmptyLabel: () => _d2I18n.default.t('No programs found'),
105
+ getGroupLoadingLabel: () => _d2I18n.default.t('Loading programs')
106
+ },
107
+ [DIMENSION_TYPE_PROGRAM_INDICATOR]: {
108
+ id: DIMENSION_TYPE_PROGRAM_INDICATOR,
109
+ getName: () => _d2I18n.default.t('Program indicators'),
110
+ getGroupLabel: getProgramText,
111
+ getPlaceholder: getSelectProgramText,
112
+ defaultGroup: {
113
+ id: DIMENSION_TYPE_ALL,
114
+ getName: () => _d2I18n.default.t('All programs')
115
+ },
116
+ getItemName: () => _d2I18n.default.t('Program indicator'),
117
+ getGroupEmptyLabel: () => _d2I18n.default.t('No programs found'),
118
+ getGroupLoadingLabel: () => _d2I18n.default.t('Loading programs')
119
+ }
120
+ };
121
+ exports.dataTypeMap = dataTypeMap;
122
+ function defaultGroupId(dataType) {
123
+ return dataTypeMap[dataType].defaultGroup ? dataTypeMap[dataType].defaultGroup.id : '';
124
+ }
125
+ function defaultGroupDetail(dataType) {
126
+ return dataTypeMap[dataType].groupDetail ? dataTypeMap[dataType].groupDetail.default : '';
127
+ }
128
+ const DEFAULT_DATATYPE_ID = DIMENSION_TYPE_INDICATOR;
129
+ exports.DEFAULT_DATATYPE_ID = DEFAULT_DATATYPE_ID;
@@ -0,0 +1,64 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.WRAPPED_TEXT_LINE_HEIGHT = exports.WRAPPED_TEXT_JUSTIFY_BUFFER = exports.SORT_ORDER_DESCENDING = exports.SORT_ORDER_ASCENDING = exports.NUMBER_TYPE_VALUE = exports.NUMBER_TYPE_ROW_PERCENTAGE = exports.NUMBER_TYPE_COLUMN_PERCENTAGE = exports.FONT_SIZE_SMALL = exports.FONT_SIZE_OPTION_SMALL = exports.FONT_SIZE_OPTION_NORMAL = exports.FONT_SIZE_OPTION_LARGE = exports.FONT_SIZE_NORMAL = exports.FONT_SIZE_LARGE = exports.DISPLAY_DENSITY_PADDING_NORMAL = exports.DISPLAY_DENSITY_PADDING_COMPACT = exports.DISPLAY_DENSITY_PADDING_COMFORTABLE = exports.DISPLAY_DENSITY_OPTION_NORMAL = exports.DISPLAY_DENSITY_OPTION_COMPACT = exports.DISPLAY_DENSITY_OPTION_COMFORTABLE = exports.CLIPPED_CELL_MIN_SIZE = exports.CLIPPED_CELL_MAX_SIZE = exports.CLIPPED_AXIS_PARTITION_SIZE_PX = exports.CELL_TYPE_VALUE = exports.CELL_TYPE_TOTAL = exports.CELL_TYPE_SUBTOTAL = exports.BORDER_COLOR = exports.AGGREGATE_TYPE_SUM = exports.AGGREGATE_TYPE_NA = exports.AGGREGATE_TYPE_AVERAGE = void 0;
7
+ const SORT_ORDER_ASCENDING = 1;
8
+ exports.SORT_ORDER_ASCENDING = SORT_ORDER_ASCENDING;
9
+ const SORT_ORDER_DESCENDING = -1;
10
+ exports.SORT_ORDER_DESCENDING = SORT_ORDER_DESCENDING;
11
+ const CELL_TYPE_VALUE = 'value';
12
+ exports.CELL_TYPE_VALUE = CELL_TYPE_VALUE;
13
+ const CELL_TYPE_SUBTOTAL = 'subtotal';
14
+ exports.CELL_TYPE_SUBTOTAL = CELL_TYPE_SUBTOTAL;
15
+ const CELL_TYPE_TOTAL = 'total';
16
+ exports.CELL_TYPE_TOTAL = CELL_TYPE_TOTAL;
17
+ const AGGREGATE_TYPE_SUM = 'SUM';
18
+ exports.AGGREGATE_TYPE_SUM = AGGREGATE_TYPE_SUM;
19
+ const AGGREGATE_TYPE_AVERAGE = 'AVERAGE';
20
+ exports.AGGREGATE_TYPE_AVERAGE = AGGREGATE_TYPE_AVERAGE;
21
+ const AGGREGATE_TYPE_NA = 'N/A';
22
+ exports.AGGREGATE_TYPE_NA = AGGREGATE_TYPE_NA;
23
+ const NUMBER_TYPE_VALUE = 'VALUE';
24
+ exports.NUMBER_TYPE_VALUE = NUMBER_TYPE_VALUE;
25
+ const NUMBER_TYPE_ROW_PERCENTAGE = 'ROW_PERCENTAGE';
26
+ exports.NUMBER_TYPE_ROW_PERCENTAGE = NUMBER_TYPE_ROW_PERCENTAGE;
27
+ const NUMBER_TYPE_COLUMN_PERCENTAGE = 'COLUMN_PERCENTAGE';
28
+ exports.NUMBER_TYPE_COLUMN_PERCENTAGE = NUMBER_TYPE_COLUMN_PERCENTAGE;
29
+ const BORDER_COLOR = '#b2b2b2';
30
+ exports.BORDER_COLOR = BORDER_COLOR;
31
+ const FONT_SIZE_OPTION_SMALL = 'SMALL';
32
+ exports.FONT_SIZE_OPTION_SMALL = FONT_SIZE_OPTION_SMALL;
33
+ const FONT_SIZE_SMALL = 10;
34
+ exports.FONT_SIZE_SMALL = FONT_SIZE_SMALL;
35
+ const FONT_SIZE_OPTION_NORMAL = 'NORMAL';
36
+ exports.FONT_SIZE_OPTION_NORMAL = FONT_SIZE_OPTION_NORMAL;
37
+ const FONT_SIZE_NORMAL = 11;
38
+ exports.FONT_SIZE_NORMAL = FONT_SIZE_NORMAL;
39
+ const FONT_SIZE_OPTION_LARGE = 'LARGE';
40
+ exports.FONT_SIZE_OPTION_LARGE = FONT_SIZE_OPTION_LARGE;
41
+ const FONT_SIZE_LARGE = 13;
42
+ exports.FONT_SIZE_LARGE = FONT_SIZE_LARGE;
43
+ const DISPLAY_DENSITY_OPTION_COMPACT = 'COMPACT';
44
+ exports.DISPLAY_DENSITY_OPTION_COMPACT = DISPLAY_DENSITY_OPTION_COMPACT;
45
+ const DISPLAY_DENSITY_PADDING_COMPACT = 4;
46
+ exports.DISPLAY_DENSITY_PADDING_COMPACT = DISPLAY_DENSITY_PADDING_COMPACT;
47
+ const DISPLAY_DENSITY_OPTION_NORMAL = 'NORMAL';
48
+ exports.DISPLAY_DENSITY_OPTION_NORMAL = DISPLAY_DENSITY_OPTION_NORMAL;
49
+ const DISPLAY_DENSITY_PADDING_NORMAL = 5;
50
+ exports.DISPLAY_DENSITY_PADDING_NORMAL = DISPLAY_DENSITY_PADDING_NORMAL;
51
+ const DISPLAY_DENSITY_OPTION_COMFORTABLE = 'COMFORTABLE';
52
+ exports.DISPLAY_DENSITY_OPTION_COMFORTABLE = DISPLAY_DENSITY_OPTION_COMFORTABLE;
53
+ const DISPLAY_DENSITY_PADDING_COMFORTABLE = 7;
54
+ exports.DISPLAY_DENSITY_PADDING_COMFORTABLE = DISPLAY_DENSITY_PADDING_COMFORTABLE;
55
+ const CLIPPED_CELL_MAX_SIZE = 360;
56
+ exports.CLIPPED_CELL_MAX_SIZE = CLIPPED_CELL_MAX_SIZE;
57
+ const CLIPPED_CELL_MIN_SIZE = 36;
58
+ exports.CLIPPED_CELL_MIN_SIZE = CLIPPED_CELL_MIN_SIZE;
59
+ const WRAPPED_TEXT_JUSTIFY_BUFFER = 25;
60
+ exports.WRAPPED_TEXT_JUSTIFY_BUFFER = WRAPPED_TEXT_JUSTIFY_BUFFER;
61
+ const WRAPPED_TEXT_LINE_HEIGHT = 1.0;
62
+ exports.WRAPPED_TEXT_LINE_HEIGHT = WRAPPED_TEXT_LINE_HEIGHT;
63
+ const CLIPPED_AXIS_PARTITION_SIZE_PX = 1000;
64
+ exports.CLIPPED_AXIS_PARTITION_SIZE_PX = CLIPPED_AXIS_PARTITION_SIZE_PX;
@@ -0,0 +1,62 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.getPredefinedDimensions = exports.getPredefinedDimensionProp = exports.getFixedDimensions = exports.getDynamicDimensions = exports.getDimensionById = exports.filterOutPredefinedDimensions = exports.DIMENSION_PROP_NO_ITEMS = exports.DIMENSION_ID_PERIOD = exports.DIMENSION_ID_ORGUNIT = exports.DIMENSION_ID_DATA = exports.DIMENSION_ID_ASSIGNED_CATEGORIES = void 0;
7
+ var _ui = require("@dhis2/ui");
8
+ var _d2I18n = _interopRequireDefault(require("@dhis2/d2-i18n"));
9
+ var _AssignedCategoriesIcon = _interopRequireDefault(require("../components/AssignedCategoriesIcon"));
10
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
11
+ const DIMENSION_ID_DATA = 'dx';
12
+ exports.DIMENSION_ID_DATA = DIMENSION_ID_DATA;
13
+ const DIMENSION_ID_PERIOD = 'pe';
14
+ exports.DIMENSION_ID_PERIOD = DIMENSION_ID_PERIOD;
15
+ const DIMENSION_ID_ORGUNIT = 'ou';
16
+ exports.DIMENSION_ID_ORGUNIT = DIMENSION_ID_ORGUNIT;
17
+ const DIMENSION_ID_ASSIGNED_CATEGORIES = 'co';
18
+ exports.DIMENSION_ID_ASSIGNED_CATEGORIES = DIMENSION_ID_ASSIGNED_CATEGORIES;
19
+ const DIMENSION_PROP_NO_ITEMS = 'noItems';
20
+ exports.DIMENSION_PROP_NO_ITEMS = DIMENSION_PROP_NO_ITEMS;
21
+ const getFixedDimensions = () => ({
22
+ [DIMENSION_ID_DATA]: {
23
+ id: DIMENSION_ID_DATA,
24
+ name: _d2I18n.default.t('Data'),
25
+ iconName: 'DataIcon',
26
+ icon: _ui.IconDimensionData16
27
+ },
28
+ [DIMENSION_ID_PERIOD]: {
29
+ id: DIMENSION_ID_PERIOD,
30
+ name: _d2I18n.default.t('Period'),
31
+ iconName: 'PeriodIcon',
32
+ icon: _ui.IconClock16
33
+ },
34
+ [DIMENSION_ID_ORGUNIT]: {
35
+ id: DIMENSION_ID_ORGUNIT,
36
+ name: _d2I18n.default.t('Organisation unit'),
37
+ iconName: 'OrgUnitIcon',
38
+ icon: _ui.IconDimensionOrgUnit16
39
+ }
40
+ });
41
+ exports.getFixedDimensions = getFixedDimensions;
42
+ const getDynamicDimensions = () => ({
43
+ [DIMENSION_ID_ASSIGNED_CATEGORIES]: {
44
+ id: DIMENSION_ID_ASSIGNED_CATEGORIES,
45
+ name: _d2I18n.default.t('Assigned Categories'),
46
+ iconName: 'AssignedCategoriesIcon',
47
+ icon: _AssignedCategoriesIcon.default,
48
+ [DIMENSION_PROP_NO_ITEMS]: true
49
+ }
50
+ });
51
+ exports.getDynamicDimensions = getDynamicDimensions;
52
+ const getPredefinedDimensions = () => ({
53
+ ...getFixedDimensions(),
54
+ ...getDynamicDimensions()
55
+ });
56
+ exports.getPredefinedDimensions = getPredefinedDimensions;
57
+ const filterOutPredefinedDimensions = dimensionIds => dimensionIds.filter(dimensionId => !Object.keys(getPredefinedDimensions()).includes(dimensionId));
58
+ exports.filterOutPredefinedDimensions = filterOutPredefinedDimensions;
59
+ const getPredefinedDimensionProp = (dimensionId, propName) => (getPredefinedDimensions()[dimensionId] || {})[propName];
60
+ exports.getPredefinedDimensionProp = getPredefinedDimensionProp;
61
+ const getDimensionById = dimensionId => getPredefinedDimensions()[dimensionId];
62
+ exports.getDimensionById = getDimensionById;
@@ -0,0 +1,55 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.isNumericValueType = exports.VALUE_TYPE_USERNAME = exports.VALUE_TYPE_URL = exports.VALUE_TYPE_UNIT_INTERVAL = exports.VALUE_TYPE_TRUE_ONLY = exports.VALUE_TYPE_TIME = exports.VALUE_TYPE_TEXT = exports.VALUE_TYPE_PHONE_NUMBER = exports.VALUE_TYPE_PERCENTAGE = exports.VALUE_TYPE_ORGANISATION_UNIT = exports.VALUE_TYPE_NUMBER = exports.VALUE_TYPE_LONG_TEXT = exports.VALUE_TYPE_LETTER = exports.VALUE_TYPE_INTEGER_ZERO_OR_POSITIVE = exports.VALUE_TYPE_INTEGER_POSITIVE = exports.VALUE_TYPE_INTEGER_NEGATIVE = exports.VALUE_TYPE_INTEGER = exports.VALUE_TYPE_EMAIL = exports.VALUE_TYPE_DATETIME = exports.VALUE_TYPE_DATE = exports.VALUE_TYPE_BOOLEAN = exports.VALUE_TYPE_AGE = void 0;
7
+ /* These types match the types in the backend
8
+ https://github.com/dhis2/dhis2-core/blob/master/dhis-2/dhis-api/src/main/java/org/hisp/dhis/common/ValueType.java
9
+ */
10
+
11
+ const VALUE_TYPE_NUMBER = 'NUMBER';
12
+ exports.VALUE_TYPE_NUMBER = VALUE_TYPE_NUMBER;
13
+ const VALUE_TYPE_UNIT_INTERVAL = 'UNIT_INTERVAL';
14
+ exports.VALUE_TYPE_UNIT_INTERVAL = VALUE_TYPE_UNIT_INTERVAL;
15
+ const VALUE_TYPE_PERCENTAGE = 'PERCENTAGE';
16
+ exports.VALUE_TYPE_PERCENTAGE = VALUE_TYPE_PERCENTAGE;
17
+ const VALUE_TYPE_INTEGER = 'INTEGER';
18
+ exports.VALUE_TYPE_INTEGER = VALUE_TYPE_INTEGER;
19
+ const VALUE_TYPE_INTEGER_POSITIVE = 'INTEGER_POSITIVE';
20
+ exports.VALUE_TYPE_INTEGER_POSITIVE = VALUE_TYPE_INTEGER_POSITIVE;
21
+ const VALUE_TYPE_INTEGER_NEGATIVE = 'INTEGER_NEGATIVE';
22
+ exports.VALUE_TYPE_INTEGER_NEGATIVE = VALUE_TYPE_INTEGER_NEGATIVE;
23
+ const VALUE_TYPE_INTEGER_ZERO_OR_POSITIVE = 'INTEGER_ZERO_OR_POSITIVE';
24
+ exports.VALUE_TYPE_INTEGER_ZERO_OR_POSITIVE = VALUE_TYPE_INTEGER_ZERO_OR_POSITIVE;
25
+ const VALUE_TYPE_TEXT = 'TEXT';
26
+ exports.VALUE_TYPE_TEXT = VALUE_TYPE_TEXT;
27
+ const VALUE_TYPE_LONG_TEXT = 'LONG_TEXT';
28
+ exports.VALUE_TYPE_LONG_TEXT = VALUE_TYPE_LONG_TEXT;
29
+ const VALUE_TYPE_LETTER = 'LETTER';
30
+ exports.VALUE_TYPE_LETTER = VALUE_TYPE_LETTER;
31
+ const VALUE_TYPE_PHONE_NUMBER = 'PHONE_NUMBER';
32
+ exports.VALUE_TYPE_PHONE_NUMBER = VALUE_TYPE_PHONE_NUMBER;
33
+ const VALUE_TYPE_EMAIL = 'EMAIL';
34
+ exports.VALUE_TYPE_EMAIL = VALUE_TYPE_EMAIL;
35
+ const VALUE_TYPE_USERNAME = 'USERNAME';
36
+ exports.VALUE_TYPE_USERNAME = VALUE_TYPE_USERNAME;
37
+ const VALUE_TYPE_URL = 'URL';
38
+ exports.VALUE_TYPE_URL = VALUE_TYPE_URL;
39
+ const VALUE_TYPE_BOOLEAN = 'BOOLEAN';
40
+ exports.VALUE_TYPE_BOOLEAN = VALUE_TYPE_BOOLEAN;
41
+ const VALUE_TYPE_TRUE_ONLY = 'TRUE_ONLY';
42
+ exports.VALUE_TYPE_TRUE_ONLY = VALUE_TYPE_TRUE_ONLY;
43
+ const VALUE_TYPE_DATE = 'DATE';
44
+ exports.VALUE_TYPE_DATE = VALUE_TYPE_DATE;
45
+ const VALUE_TYPE_TIME = 'TIME';
46
+ exports.VALUE_TYPE_TIME = VALUE_TYPE_TIME;
47
+ const VALUE_TYPE_DATETIME = 'DATETIME';
48
+ exports.VALUE_TYPE_DATETIME = VALUE_TYPE_DATETIME;
49
+ const VALUE_TYPE_ORGANISATION_UNIT = 'ORGANISATION_UNIT';
50
+ exports.VALUE_TYPE_ORGANISATION_UNIT = VALUE_TYPE_ORGANISATION_UNIT;
51
+ const VALUE_TYPE_AGE = 'AGE';
52
+ exports.VALUE_TYPE_AGE = VALUE_TYPE_AGE;
53
+ const NUMERIC_VALUE_TYPES = [VALUE_TYPE_NUMBER, VALUE_TYPE_UNIT_INTERVAL, VALUE_TYPE_PERCENTAGE, VALUE_TYPE_INTEGER, VALUE_TYPE_INTEGER_POSITIVE, VALUE_TYPE_INTEGER_NEGATIVE, VALUE_TYPE_INTEGER_ZERO_OR_POSITIVE];
54
+ const isNumericValueType = type => NUMERIC_VALUE_TYPES.includes(type);
55
+ exports.isNumericValueType = isNumericValueType;
@@ -0,0 +1,210 @@
1
+ {
2
+ "headers": [
3
+ {
4
+ "name": "dx",
5
+ "column": "Data",
6
+ "valueType": "TEXT",
7
+ "type": "java.lang.String",
8
+ "hidden": false,
9
+ "meta": true
10
+ },
11
+ {
12
+ "name": "ou",
13
+ "column": "Organisation unit",
14
+ "valueType": "TEXT",
15
+ "type": "java.lang.String",
16
+ "hidden": false,
17
+ "meta": true
18
+ },
19
+ {
20
+ "name": "value",
21
+ "column": "Value",
22
+ "valueType": "NUMBER",
23
+ "type": "java.lang.Double",
24
+ "hidden": false,
25
+ "meta": false
26
+ }
27
+ ],
28
+ "metaData": {
29
+ "items": {
30
+ "2022": {
31
+ "name": "2022"
32
+ },
33
+ "KctpIIucige": {
34
+ "name": "Selenga"
35
+ },
36
+ "YmmeuGbqOwR": {
37
+ "name": "Gbo"
38
+ },
39
+ "daJPPxtIrQn": {
40
+ "name": "Jaiama Bongor"
41
+ },
42
+ "tTUf91fCytl": {
43
+ "uid": "tTUf91fCytl",
44
+ "name": "Chiefdom"
45
+ },
46
+ "ou": {
47
+ "name": "Organisation unit"
48
+ },
49
+ "sxRd2XOzFbz": {
50
+ "name": "Tikonko"
51
+ },
52
+ "THIS_YEAR": {
53
+ "name": "This year"
54
+ },
55
+ "O6uvpzGd5pu": {
56
+ "uid": "O6uvpzGd5pu",
57
+ "code": "OU_264",
58
+ "name": "Bo"
59
+ },
60
+ "U6Kr7Gtpidn": {
61
+ "name": "Kakua"
62
+ },
63
+ "YuQRtpLP10I": {
64
+ "name": "Badjia"
65
+ },
66
+ "zFDYIgyGmXG": {
67
+ "name": "Bargbo"
68
+ },
69
+ "I4jWcnFmgEC": {
70
+ "name": "Niawa Lenga"
71
+ },
72
+ "dx": {
73
+ "name": "Data"
74
+ },
75
+ "BGGmAwx33dj": {
76
+ "name": "Bumpe Ngao"
77
+ },
78
+ "pe": {
79
+ "name": "Period"
80
+ },
81
+ "Uvn6LCg7dVU": {
82
+ "name": "ANC 1 Coverage"
83
+ },
84
+ "ARZ4y5i4reU": {
85
+ "name": "Wonde"
86
+ },
87
+ "JdhagCUEMbj": {
88
+ "name": "Komboya"
89
+ },
90
+ "vWbkYPRmKyS": {
91
+ "name": "Baoma"
92
+ },
93
+ "dGheVylzol6": {
94
+ "name": "Bargbe"
95
+ },
96
+ "kU8vhUkAGaT": {
97
+ "name": "Lugbu"
98
+ },
99
+ "npWGUj37qDe": {
100
+ "name": "Valunia"
101
+ }
102
+ },
103
+ "dimensions": {
104
+ "dx": [
105
+ "Uvn6LCg7dVU"
106
+ ],
107
+ "pe": [
108
+ "2022"
109
+ ],
110
+ "ou": [
111
+ "YuQRtpLP10I",
112
+ "vWbkYPRmKyS",
113
+ "dGheVylzol6",
114
+ "zFDYIgyGmXG",
115
+ "BGGmAwx33dj",
116
+ "YmmeuGbqOwR",
117
+ "daJPPxtIrQn",
118
+ "U6Kr7Gtpidn",
119
+ "JdhagCUEMbj",
120
+ "kU8vhUkAGaT",
121
+ "I4jWcnFmgEC",
122
+ "KctpIIucige",
123
+ "sxRd2XOzFbz",
124
+ "npWGUj37qDe",
125
+ "ARZ4y5i4reU"
126
+ ],
127
+ "co": []
128
+ }
129
+ },
130
+ "rows": [
131
+ [
132
+ "Uvn6LCg7dVU",
133
+ "YuQRtpLP10I",
134
+ "304.1"
135
+ ],
136
+ [
137
+ "Uvn6LCg7dVU",
138
+ "vWbkYPRmKyS",
139
+ "213.7"
140
+ ],
141
+ [
142
+ "Uvn6LCg7dVU",
143
+ "dGheVylzol6",
144
+ "126.5"
145
+ ],
146
+ [
147
+ "Uvn6LCg7dVU",
148
+ "zFDYIgyGmXG",
149
+ "206.4"
150
+ ],
151
+ [
152
+ "Uvn6LCg7dVU",
153
+ "BGGmAwx33dj",
154
+ "120.9"
155
+ ],
156
+ [
157
+ "Uvn6LCg7dVU",
158
+ "YmmeuGbqOwR",
159
+ "203.1"
160
+ ],
161
+ [
162
+ "Uvn6LCg7dVU",
163
+ "daJPPxtIrQn",
164
+ "89.3"
165
+ ],
166
+ [
167
+ "Uvn6LCg7dVU",
168
+ "U6Kr7Gtpidn",
169
+ "104.4"
170
+ ],
171
+ [
172
+ "Uvn6LCg7dVU",
173
+ "JdhagCUEMbj",
174
+ "187.1"
175
+ ],
176
+ [
177
+ "Uvn6LCg7dVU",
178
+ "kU8vhUkAGaT",
179
+ "96.1"
180
+ ],
181
+ [
182
+ "Uvn6LCg7dVU",
183
+ "I4jWcnFmgEC",
184
+ "147.9"
185
+ ],
186
+ [
187
+ "Uvn6LCg7dVU",
188
+ "KctpIIucige",
189
+ "91.1"
190
+ ],
191
+ [
192
+ "Uvn6LCg7dVU",
193
+ "sxRd2XOzFbz",
194
+ "203.2"
195
+ ],
196
+ [
197
+ "Uvn6LCg7dVU",
198
+ "npWGUj37qDe",
199
+ "95.7"
200
+ ],
201
+ [
202
+ "Uvn6LCg7dVU",
203
+ "ARZ4y5i4reU",
204
+ "84.3"
205
+ ]
206
+ ],
207
+ "height": 15,
208
+ "width": 3,
209
+ "headerWidth": 3
210
+ }
@@ -0,0 +1,41 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.useParentSize = void 0;
7
+ var _react = require("react");
8
+ var _resizeObserverPolyfill = _interopRequireDefault(require("resize-observer-polyfill"));
9
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
10
+ const initialState = {
11
+ width: 0,
12
+ height: 0
13
+ };
14
+ const useParentSize = function (elementRef, renderCounter) {
15
+ let initialSize = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : initialState;
16
+ const [size, setSize] = (0, _react.useState)({
17
+ width: initialSize.width || 0,
18
+ height: initialSize.height || 0
19
+ });
20
+ (0, _react.useEffect)(() => {
21
+ const el = elementRef.current && elementRef.current.parentElement;
22
+ if (!el) {
23
+ return;
24
+ }
25
+ const onResize = () => {
26
+ setSize({
27
+ width: el.clientWidth,
28
+ height: el.clientHeight
29
+ });
30
+ };
31
+ onResize();
32
+ if (renderCounter) {
33
+ setSize(initialState);
34
+ }
35
+ const observer = new _resizeObserverPolyfill.default(onResize);
36
+ observer.observe(el);
37
+ return () => observer.disconnect();
38
+ }, [elementRef, renderCounter]);
39
+ return size;
40
+ };
41
+ exports.useParentSize = useParentSize;