@dhis2/analytics 26.3.0-alpha.3 → 999.9.9-TE-alpha.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.
- package/build/cjs/__demo__/DimensionsPanel.stories.js +0 -1
- package/build/cjs/api/analytics/Analytics.js +7 -0
- package/build/cjs/api/analytics/AnalyticsBase.js +24 -6
- package/build/cjs/api/analytics/AnalyticsRequest.js +33 -10
- package/build/cjs/api/analytics/AnalyticsRequestBase.js +3 -1
- package/build/cjs/api/analytics/AnalyticsRequestPropertiesMixin.js +19 -0
- package/build/cjs/api/analytics/AnalyticsTrackedEntities.js +31 -0
- package/build/cjs/api/analytics/utils.js +23 -2
- package/build/cjs/assets/DynamicDimensionIcon.js +38 -12
- package/build/cjs/components/DimensionsPanel/List/DimensionItem.js +32 -44
- package/build/cjs/components/DimensionsPanel/List/OptionsButton.js +6 -7
- package/build/cjs/components/DimensionsPanel/List/RecommendedIcon.js +2 -1
- package/build/cjs/components/DimensionsPanel/List/__tests__/__snapshots__/DimensionItem.spec.js.snap +361 -238
- package/build/cjs/components/DimensionsPanel/List/styles/DimensionItem.style.js +67 -5
- package/build/cjs/components/DimensionsPanel/List/styles/DimensionList.style.js +2 -2
- package/build/cjs/components/DimensionsPanel/List/styles/RecommendedIcon.style.js +4 -4
- package/build/cjs/components/DimensionsPanel/styles/DimensionsPanel.style.js +1 -1
- package/build/cjs/locales/lo/translations.json +8 -3
- package/build/cjs/modules/layout/dimension.js +9 -2
- package/build/cjs/modules/layout/dimensionCreate.js +3 -0
- package/build/es/__demo__/DimensionsPanel.stories.js +0 -1
- package/build/es/api/analytics/Analytics.js +7 -0
- package/build/es/api/analytics/AnalyticsBase.js +24 -6
- package/build/es/api/analytics/AnalyticsRequest.js +33 -10
- package/build/es/api/analytics/AnalyticsRequestBase.js +3 -1
- package/build/es/api/analytics/AnalyticsRequestPropertiesMixin.js +19 -0
- package/build/es/api/analytics/AnalyticsTrackedEntities.js +24 -0
- package/build/es/api/analytics/utils.js +20 -1
- package/build/es/assets/DynamicDimensionIcon.js +38 -12
- package/build/es/components/DimensionsPanel/List/DimensionItem.js +33 -45
- package/build/es/components/DimensionsPanel/List/OptionsButton.js +6 -7
- package/build/es/components/DimensionsPanel/List/RecommendedIcon.js +2 -1
- package/build/es/components/DimensionsPanel/List/__tests__/__snapshots__/DimensionItem.spec.js.snap +361 -238
- package/build/es/components/DimensionsPanel/List/styles/DimensionItem.style.js +66 -4
- package/build/es/components/DimensionsPanel/List/styles/DimensionList.style.js +2 -2
- package/build/es/components/DimensionsPanel/List/styles/RecommendedIcon.style.js +4 -4
- package/build/es/components/DimensionsPanel/styles/DimensionsPanel.style.js +1 -1
- package/build/es/locales/lo/translations.json +8 -3
- package/build/es/modules/layout/dimension.js +7 -1
- package/build/es/modules/layout/dimensionCreate.js +4 -1
- package/package.json +1 -1
|
@@ -1,17 +1,15 @@
|
|
|
1
|
-
import _JSXStyle from "styled-jsx/style";
|
|
2
1
|
function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
|
|
3
2
|
function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
4
3
|
function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return typeof key === "symbol" ? key : String(key); }
|
|
5
4
|
function _toPrimitive(input, hint) { if (typeof input !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (typeof res !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
|
|
6
|
-
import {
|
|
7
|
-
import cx from 'classnames';
|
|
5
|
+
import { IconLock16 } from '@dhis2/ui';
|
|
8
6
|
import PropTypes from 'prop-types';
|
|
9
7
|
import React, { Component, createRef } from 'react';
|
|
10
8
|
import DynamicDimensionIcon from '../../../assets/DynamicDimensionIcon.js';
|
|
11
9
|
import { DIMENSION_PROP_NO_ITEMS, getPredefinedDimensionProp } from '../../../modules/predefinedDimensions.js';
|
|
12
10
|
import OptionsButton from './OptionsButton.js';
|
|
13
11
|
import RecommendedIcon from './RecommendedIcon.js';
|
|
14
|
-
import styles from './styles/DimensionItem.style.js';
|
|
12
|
+
import { styles } from './styles/DimensionItem.style.js';
|
|
15
13
|
class DimensionItem extends Component {
|
|
16
14
|
constructor() {
|
|
17
15
|
super(...arguments);
|
|
@@ -32,18 +30,23 @@ class DimensionItem extends Component {
|
|
|
32
30
|
_defineProperty(this, "getDimensionIcon", () => {
|
|
33
31
|
const Icon = getPredefinedDimensionProp(this.props.id, 'icon');
|
|
34
32
|
return Icon ? /*#__PURE__*/React.createElement(Icon, {
|
|
35
|
-
|
|
33
|
+
style: styles.fixedDimensionIcon
|
|
36
34
|
}) : /*#__PURE__*/React.createElement(DynamicDimensionIcon, {
|
|
37
|
-
|
|
35
|
+
style: styles.dynamicDimensionIcon
|
|
38
36
|
});
|
|
39
37
|
});
|
|
40
38
|
_defineProperty(this, "getDimensionType", () => {
|
|
41
39
|
const {
|
|
42
40
|
id,
|
|
43
|
-
name
|
|
41
|
+
name,
|
|
42
|
+
isDeactivated
|
|
44
43
|
} = this.props;
|
|
45
44
|
return /*#__PURE__*/React.createElement("span", {
|
|
46
|
-
"data-dimensionid": id
|
|
45
|
+
"data-dimensionid": id,
|
|
46
|
+
style: {
|
|
47
|
+
...styles.text,
|
|
48
|
+
...(isDeactivated ? styles.textDeactivated : {})
|
|
49
|
+
}
|
|
47
50
|
}, name);
|
|
48
51
|
});
|
|
49
52
|
}
|
|
@@ -57,66 +60,51 @@ class DimensionItem extends Component {
|
|
|
57
60
|
onClick,
|
|
58
61
|
onOptionsClick,
|
|
59
62
|
innerRef,
|
|
63
|
+
style,
|
|
60
64
|
dataTest,
|
|
61
|
-
className,
|
|
62
65
|
...rest
|
|
63
66
|
} = this.props;
|
|
64
67
|
const Icon = this.getDimensionIcon();
|
|
65
68
|
const Label = this.getDimensionType();
|
|
69
|
+
const itemStyle = isSelected && !isDeactivated ? {
|
|
70
|
+
...styles.item,
|
|
71
|
+
...styles.selected
|
|
72
|
+
} : styles.item;
|
|
66
73
|
const optionsRef = /*#__PURE__*/createRef();
|
|
67
|
-
const LockIcon = /*#__PURE__*/React.createElement("svg", {
|
|
68
|
-
width: "7",
|
|
69
|
-
height: "9",
|
|
70
|
-
fill: "none",
|
|
71
|
-
xmlns: "http://www.w3.org/2000/svg"
|
|
72
|
-
}, /*#__PURE__*/React.createElement("path", {
|
|
73
|
-
fillRule: "evenodd",
|
|
74
|
-
clipRule: "evenodd",
|
|
75
|
-
d: "M3.5 1A1.5 1.5 0 0 0 2 2.5V3h3v-.5A1.5 1.5 0 0 0 3.5 1ZM1 2.5V3H0v6h7V3H6v-.5a2.5 2.5 0 0 0-5 0ZM1 8V4h5v4H1Zm3-1V5H3v2h1Z",
|
|
76
|
-
fill: "none"
|
|
77
|
-
}));
|
|
78
74
|
const onLabelClick = () => {
|
|
79
75
|
if (!isDeactivated && !getPredefinedDimensionProp(id, DIMENSION_PROP_NO_ITEMS)) {
|
|
80
76
|
onClick(id);
|
|
81
77
|
}
|
|
82
78
|
};
|
|
83
|
-
return /*#__PURE__*/React.createElement(
|
|
84
|
-
colors: true
|
|
85
|
-
}), /*#__PURE__*/React.createElement("li", _extends({
|
|
79
|
+
return /*#__PURE__*/React.createElement("li", _extends({
|
|
86
80
|
onMouseOver: this.onMouseOver,
|
|
87
81
|
onMouseLeave: this.onMouseExit,
|
|
88
82
|
ref: innerRef,
|
|
83
|
+
style: Object.assign({}, itemStyle, style, !isDeactivated && styles.clickable),
|
|
89
84
|
"data-test": dataTest,
|
|
90
85
|
onClick: onLabelClick
|
|
91
|
-
}, rest, {
|
|
92
|
-
className:
|
|
93
|
-
deactivated: isDeactivated,
|
|
94
|
-
selected: isSelected && !isDeactivated
|
|
95
|
-
}, className) || "")
|
|
96
|
-
}), /*#__PURE__*/React.createElement("div", {
|
|
86
|
+
}, rest), /*#__PURE__*/React.createElement("div", {
|
|
87
|
+
className: "label",
|
|
97
88
|
tabIndex: 0,
|
|
98
|
-
|
|
99
|
-
|
|
89
|
+
style: styles.label,
|
|
90
|
+
"data-test": `${dataTest}-button-${id}`
|
|
100
91
|
}, /*#__PURE__*/React.createElement("div", {
|
|
101
|
-
|
|
92
|
+
style: styles.iconWrapper
|
|
102
93
|
}, Icon), /*#__PURE__*/React.createElement("div", {
|
|
103
|
-
|
|
104
|
-
}, /*#__PURE__*/React.createElement(
|
|
105
|
-
className: `jsx-${styles.__hash}` + " " + "labelText"
|
|
106
|
-
}, Label), /*#__PURE__*/React.createElement(RecommendedIcon, {
|
|
94
|
+
style: styles.labelWrapper
|
|
95
|
+
}, Label, /*#__PURE__*/React.createElement(RecommendedIcon, {
|
|
107
96
|
isRecommended: isRecommended,
|
|
108
97
|
dataTest: `${dataTest}-recommended-icon`
|
|
109
|
-
}))
|
|
98
|
+
})), isLocked && /*#__PURE__*/React.createElement("div", {
|
|
99
|
+
style: styles.iconWrapper
|
|
100
|
+
}, /*#__PURE__*/React.createElement(IconLock16, null))), onOptionsClick ? /*#__PURE__*/React.createElement("div", {
|
|
101
|
+
style: styles.optionsWrapper,
|
|
110
102
|
ref: optionsRef,
|
|
111
|
-
"data-test": `${dataTest}-menu-${id}
|
|
112
|
-
className: `jsx-${styles.__hash}` + " " + "optionsWrapper"
|
|
103
|
+
"data-test": `${dataTest}-menu-${id}`
|
|
113
104
|
}, this.state.mouseOver && !isDeactivated && !isLocked ? /*#__PURE__*/React.createElement(OptionsButton, {
|
|
105
|
+
style: styles.optionsButton,
|
|
114
106
|
onClick: this.onOptionsClick(id, optionsRef)
|
|
115
|
-
}) : null) : null
|
|
116
|
-
className: `jsx-${styles.__hash}` + " " + "lockWrapper"
|
|
117
|
-
}, LockIcon)), /*#__PURE__*/React.createElement(_JSXStyle, {
|
|
118
|
-
id: styles.__hash
|
|
119
|
-
}, styles));
|
|
107
|
+
}) : null) : null);
|
|
120
108
|
}
|
|
121
109
|
}
|
|
122
110
|
DimensionItem.propTypes = {
|
|
@@ -124,12 +112,12 @@ DimensionItem.propTypes = {
|
|
|
124
112
|
isSelected: PropTypes.bool.isRequired,
|
|
125
113
|
// XXX
|
|
126
114
|
name: PropTypes.string.isRequired,
|
|
127
|
-
className: PropTypes.string,
|
|
128
115
|
dataTest: PropTypes.string,
|
|
129
116
|
innerRef: PropTypes.func,
|
|
130
117
|
isDeactivated: PropTypes.bool,
|
|
131
118
|
isLocked: PropTypes.bool,
|
|
132
119
|
isRecommended: PropTypes.bool,
|
|
120
|
+
style: PropTypes.object,
|
|
133
121
|
onClick: PropTypes.func,
|
|
134
122
|
onOptionsClick: PropTypes.func
|
|
135
123
|
};
|
|
@@ -1,19 +1,18 @@
|
|
|
1
|
-
import _JSXStyle from "styled-jsx/style";
|
|
2
1
|
import { IconMore16 } from '@dhis2/ui';
|
|
3
2
|
import PropTypes from 'prop-types';
|
|
4
3
|
import React from 'react';
|
|
5
4
|
const OptionsButton = _ref => {
|
|
6
5
|
let {
|
|
6
|
+
style,
|
|
7
7
|
onClick
|
|
8
8
|
} = _ref;
|
|
9
|
-
return /*#__PURE__*/React.createElement(
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
}, /*#__PURE__*/React.createElement(IconMore16, null))
|
|
13
|
-
id: "2728765288"
|
|
14
|
-
}, ["button.jsx-2728765288{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center;height:20px;width:20px;padding:0;border:none;background:none;outline:none;cursor:pointer;border-top-right-radius:2px;border-bottom-left-radius:2px;}", "button.jsx-2728765288:hover{background-color:rgba(0,0,0,0.09);}"]));
|
|
9
|
+
return /*#__PURE__*/React.createElement("button", {
|
|
10
|
+
style: style,
|
|
11
|
+
onClick: onClick
|
|
12
|
+
}, /*#__PURE__*/React.createElement(IconMore16, null));
|
|
15
13
|
};
|
|
16
14
|
OptionsButton.propTypes = {
|
|
15
|
+
style: PropTypes.object,
|
|
17
16
|
onClick: PropTypes.func
|
|
18
17
|
};
|
|
19
18
|
export default OptionsButton;
|
|
@@ -10,7 +10,8 @@ const RecommendedIcon = _ref => {
|
|
|
10
10
|
} = _ref;
|
|
11
11
|
return isRecommended ? /*#__PURE__*/React.createElement(Tooltip, {
|
|
12
12
|
content: i18n.t('Dimension recommended with selected data'),
|
|
13
|
-
placement: "bottom"
|
|
13
|
+
placement: "bottom",
|
|
14
|
+
maxWidth: 160
|
|
14
15
|
}, /*#__PURE__*/React.createElement("div", {
|
|
15
16
|
style: styles.recommendedIcon,
|
|
16
17
|
"data-test": dataTest
|