carbon-addons-iot-react 5.9.2 → 5.10.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/es/components/Card/Card.js +18 -5
- package/es/components/CardEditor/CardEditForm/CardEditForm.js +16 -0
- package/es/components/CardEditor/CardEditForm/CardEditFormContent.js +17 -0
- package/es/components/CardEditor/CardEditForm/CardEditFormItems/DataSeriesFormItemModal.js +18 -3
- package/es/components/CardEditor/CardEditForm/CardEditFormItems/DataSeriesFormItems/DataSeriesFormContent.js +19 -2
- package/es/components/CardEditor/CardEditForm/CommonCardEditFormFields.js +17 -1
- package/es/components/CardEditor/CardEditor.js +16 -0
- package/es/components/DashboardEditor/DashboardEditor.js +19 -1
- package/es/components/DashboardEditor/DashboardEditorCardRenderer.js +4 -2
- package/es/components/ValueCard/Attribute.js +38 -2
- package/es/components/ValueCard/ValueCard.js +15 -3
- package/es/components/ValueCard/ValueContent.js +19 -2
- package/es/constants/CardPropTypes.js +2 -0
- package/es/utils/cardUtilityFunctions.js +16 -1
- package/lib/components/Card/Card.js +17 -4
- package/lib/components/CardEditor/CardEditForm/CardEditForm.js +16 -0
- package/lib/components/CardEditor/CardEditForm/CardEditFormContent.js +17 -0
- package/lib/components/CardEditor/CardEditForm/CardEditFormItems/DataSeriesFormItemModal.js +17 -2
- package/lib/components/CardEditor/CardEditForm/CardEditFormItems/DataSeriesFormItems/DataSeriesFormContent.js +19 -2
- package/lib/components/CardEditor/CardEditForm/CommonCardEditFormFields.js +17 -1
- package/lib/components/CardEditor/CardEditor.js +16 -0
- package/lib/components/DashboardEditor/DashboardEditor.js +19 -1
- package/lib/components/DashboardEditor/DashboardEditorCardRenderer.js +4 -2
- package/lib/components/ValueCard/Attribute.js +38 -2
- package/lib/components/ValueCard/ValueCard.js +15 -3
- package/lib/components/ValueCard/ValueContent.js +19 -2
- package/lib/constants/CardPropTypes.js +2 -0
- package/lib/utils/cardUtilityFunctions.js +16 -0
- package/package.json +1 -1
- package/umd/carbon-addons-iot-react.js +226 -19
|
@@ -37,7 +37,7 @@ var React__default = /*#__PURE__*/_interopDefault(React);
|
|
|
37
37
|
var update__default = /*#__PURE__*/_interopDefault(update);
|
|
38
38
|
|
|
39
39
|
var _excluded = ["style", "children"],
|
|
40
|
-
_excluded2 = ["isSelected", "availableDimensions", "i18n", "onRemove", "onDuplicate", "onCardChange", "setSelectedCardId", "renderIconByName", "onShowImageGallery", "onValidateUploadedImage", "baseClassName", "renderCardPreview", "style"];
|
|
40
|
+
_excluded2 = ["isSelected", "availableDimensions", "i18n", "onRemove", "onDuplicate", "onCardChange", "setSelectedCardId", "renderIconByName", "onShowImageGallery", "onValidateUploadedImage", "baseClassName", "renderCardPreview", "style", "shouldUseTranslatedLabels"];
|
|
41
41
|
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
42
42
|
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty__default.default(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
43
43
|
|
|
@@ -109,6 +109,7 @@ var DashboardEditorCardRenderer = /*#__PURE__*/React__default.default.memo(funct
|
|
|
109
109
|
baseClassName = _ref2.baseClassName,
|
|
110
110
|
renderCardPreview = _ref2.renderCardPreview,
|
|
111
111
|
style = _ref2.style,
|
|
112
|
+
shouldUseTranslatedLabels = _ref2.shouldUseTranslatedLabels,
|
|
112
113
|
cardConfig = _objectWithoutProperties__default.default(_ref2, _excluded2);
|
|
113
114
|
// We have to keep track of our dynamic hotspots here
|
|
114
115
|
var _useState5 = React.useState([]),
|
|
@@ -142,6 +143,7 @@ var DashboardEditorCardRenderer = /*#__PURE__*/React__default.default.memo(funct
|
|
|
142
143
|
key: cardConfig.id,
|
|
143
144
|
tooltip: cardConfig.description,
|
|
144
145
|
i18n: i18n,
|
|
146
|
+
shouldUseTranslatedLabels: shouldUseTranslatedLabels,
|
|
145
147
|
availableActions: availableActions,
|
|
146
148
|
onCardAction: handleOnCardAction,
|
|
147
149
|
renderIconByName: renderIconByName,
|
|
@@ -154,7 +156,7 @@ var DashboardEditorCardRenderer = /*#__PURE__*/React__default.default.memo(funct
|
|
|
154
156
|
onBrowseClick: cardConfig.type === LayoutConstants.CARD_TYPES.IMAGE && isNil((_cardConfig$content = cardConfig.content) === null || _cardConfig$content === void 0 ? void 0 : _cardConfig$content.src) ? onShowImageGallery : undefined,
|
|
155
157
|
validateUploadedImage: cardConfig.type === LayoutConstants.CARD_TYPES.IMAGE ? onValidateUploadedImage : undefined
|
|
156
158
|
});
|
|
157
|
-
}, [baseClassName, cardConfig, handleOnCardAction, handleOnCardKeyDown, handleOnCardMouseDown, i18n, isSelected, onShowImageGallery, onValidateUploadedImage, renderIconByName, style]);
|
|
159
|
+
}, [baseClassName, cardConfig, handleOnCardAction, handleOnCardKeyDown, handleOnCardMouseDown, i18n, isSelected, onShowImageGallery, onValidateUploadedImage, renderIconByName, shouldUseTranslatedLabels, style]);
|
|
158
160
|
React.useEffect(function () {
|
|
159
161
|
var _cardProps$values;
|
|
160
162
|
var originalDynamicHotspot = (_cardProps$values = cardProps.values) === null || _cardProps$values === void 0 || (_cardProps$values = _cardProps$values.hotspots) === null || _cardProps$values === void 0 ? void 0 : _cardProps$values.find(function (hotspot) {
|
|
@@ -13,6 +13,7 @@ var LayoutConstants = require('../../constants/LayoutConstants.js');
|
|
|
13
13
|
var CardIcon = require('../ImageCard/CardIcon.js');
|
|
14
14
|
var useMatchingThreshold = require('../../hooks/useMatchingThreshold.js');
|
|
15
15
|
var index = require('../Tooltip/index.js');
|
|
16
|
+
var cardUtilityFunctions = require('../../utils/cardUtilityFunctions.js');
|
|
16
17
|
var ValueRenderer = require('./ValueRenderer.js');
|
|
17
18
|
var UnitRenderer = require('./UnitRenderer.js');
|
|
18
19
|
var valueCardUtils = require('./valueCardUtils.js');
|
|
@@ -48,6 +49,9 @@ var propTypes = {
|
|
|
48
49
|
isEditable: PropTypes__default.default.bool,
|
|
49
50
|
layout: PropTypes__default.default.oneOf(Object.values(LayoutConstants.CARD_LAYOUTS)),
|
|
50
51
|
locale: PropTypes__default.default.string,
|
|
52
|
+
/** whether to use translated labels in cards */
|
|
53
|
+
shouldUseTranslatedLabels: PropTypes__default.default.bool,
|
|
54
|
+
i18n: PropTypes__default.default.objectOf(PropTypes__default.default.any),
|
|
51
55
|
renderIconByName: PropTypes__default.default.func,
|
|
52
56
|
/** Optional trend information */
|
|
53
57
|
secondaryValue: PropTypes__default.default.shape({
|
|
@@ -76,6 +80,8 @@ var defaultProps = {
|
|
|
76
80
|
customFormatter: null,
|
|
77
81
|
formatter: null,
|
|
78
82
|
isEditable: false,
|
|
83
|
+
shouldUseTranslatedLabels: false,
|
|
84
|
+
i18n: {},
|
|
79
85
|
testId: 'attribute',
|
|
80
86
|
onValueClick: null
|
|
81
87
|
};
|
|
@@ -102,6 +108,8 @@ var Attribute = function Attribute(_ref) {
|
|
|
102
108
|
isEditable = _ref.isEditable,
|
|
103
109
|
layout = _ref.layout,
|
|
104
110
|
locale = _ref.locale,
|
|
111
|
+
shouldUseTranslatedLabels = _ref.shouldUseTranslatedLabels,
|
|
112
|
+
i18n = _ref.i18n,
|
|
105
113
|
renderIconByName = _ref.renderIconByName,
|
|
106
114
|
secondaryValue = _ref.secondaryValue,
|
|
107
115
|
value = _ref.value,
|
|
@@ -121,6 +129,9 @@ var Attribute = function Attribute(_ref) {
|
|
|
121
129
|
// need to reduce the width size to fit multiple attributes when card layout is horizontal
|
|
122
130
|
var attributeWidthPercentage = layout === LayoutConstants.CARD_LAYOUTS.HORIZONTAL ? 100 / attributeCount : 100;
|
|
123
131
|
|
|
132
|
+
// Get translated label if shouldUseTranslatedLabels is true
|
|
133
|
+
var displayLabel = cardUtilityFunctions.getTranslatedLabel(label, shouldUseTranslatedLabels, i18n);
|
|
134
|
+
|
|
124
135
|
// Render threshold icon component
|
|
125
136
|
var renderThresholdIcon = function renderThresholdIcon() {
|
|
126
137
|
if (!(matchingThreshold !== null && matchingThreshold !== void 0 && matchingThreshold.icon)) return null;
|
|
@@ -146,10 +157,10 @@ var Attribute = function Attribute(_ref) {
|
|
|
146
157
|
}, thresholdsIconPosition === 'label' && renderThresholdIcon(), tooltip ? /*#__PURE__*/React__default.default.createElement(index.Tooltip, {
|
|
147
158
|
direction: "right",
|
|
148
159
|
showIcon: false,
|
|
149
|
-
triggerText:
|
|
160
|
+
triggerText: displayLabel
|
|
150
161
|
}, /*#__PURE__*/React__default.default.createElement("p", null, tooltip)) : /*#__PURE__*/React__default.default.createElement("span", {
|
|
151
162
|
"data-testid": "".concat(testId, "-threshold-label")
|
|
152
|
-
},
|
|
163
|
+
}, displayLabel)), /*#__PURE__*/React__default.default.createElement("div", {
|
|
153
164
|
className: "".concat(BEM_BASE)
|
|
154
165
|
}, /*#__PURE__*/React__default.default.createElement(ValueRenderer, {
|
|
155
166
|
value: value,
|
|
@@ -340,6 +351,31 @@ Attribute.__docgenInfo = {
|
|
|
340
351
|
},
|
|
341
352
|
"required": false
|
|
342
353
|
},
|
|
354
|
+
"shouldUseTranslatedLabels": {
|
|
355
|
+
"defaultValue": {
|
|
356
|
+
"value": "false",
|
|
357
|
+
"computed": false
|
|
358
|
+
},
|
|
359
|
+
"description": "whether to use translated labels in cards",
|
|
360
|
+
"type": {
|
|
361
|
+
"name": "bool"
|
|
362
|
+
},
|
|
363
|
+
"required": false
|
|
364
|
+
},
|
|
365
|
+
"i18n": {
|
|
366
|
+
"defaultValue": {
|
|
367
|
+
"value": "{}",
|
|
368
|
+
"computed": false
|
|
369
|
+
},
|
|
370
|
+
"description": "",
|
|
371
|
+
"type": {
|
|
372
|
+
"name": "objectOf",
|
|
373
|
+
"value": {
|
|
374
|
+
"name": "any"
|
|
375
|
+
}
|
|
376
|
+
},
|
|
377
|
+
"required": false
|
|
378
|
+
},
|
|
343
379
|
"testId": {
|
|
344
380
|
"defaultValue": {
|
|
345
381
|
"value": "'attribute'",
|
|
@@ -30,7 +30,7 @@ var _objectWithoutProperties__default = /*#__PURE__*/_interopDefault(_objectWith
|
|
|
30
30
|
var React__default = /*#__PURE__*/_interopDefault(React);
|
|
31
31
|
var classnames__default = /*#__PURE__*/_interopDefault(classnames);
|
|
32
32
|
|
|
33
|
-
var _excluded = ["title", "content", "size", "values", "isEditable", "isResizable", "i18n", "dataState", "id", "locale", "customFormatter", "formatter", "children", "fontSize", "isNumberValueCompact", "testID", "testId", "onAttributeClick", "className"];
|
|
33
|
+
var _excluded = ["title", "content", "size", "values", "isEditable", "isResizable", "i18n", "dataState", "id", "locale", "customFormatter", "formatter", "children", "fontSize", "isNumberValueCompact", "testID", "testId", "onAttributeClick", "className", "shouldUseTranslatedLabels"];
|
|
34
34
|
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
35
35
|
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty__default.default(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
36
36
|
|
|
@@ -60,6 +60,7 @@ var ValueCard = function ValueCard(_ref) {
|
|
|
60
60
|
testId = _ref.testId,
|
|
61
61
|
onAttributeClick = _ref.onAttributeClick,
|
|
62
62
|
className = _ref.className,
|
|
63
|
+
shouldUseTranslatedLabels = _ref.shouldUseTranslatedLabels,
|
|
63
64
|
others = _objectWithoutProperties__default.default(_ref, _excluded);
|
|
64
65
|
var availableActions = _objectSpread({
|
|
65
66
|
expand: false
|
|
@@ -84,6 +85,7 @@ var ValueCard = function ValueCard(_ref) {
|
|
|
84
85
|
isResizable: isResizable,
|
|
85
86
|
resizeHandles: resizeHandles,
|
|
86
87
|
i18n: i18n,
|
|
88
|
+
shouldUseTranslatedLabels: shouldUseTranslatedLabels,
|
|
87
89
|
locale: locale,
|
|
88
90
|
id: id,
|
|
89
91
|
className: classnames__default.default(className, _defineProperty__default.default(_defineProperty__default.default({}, "".concat(valueCardUtils.BASE_CLASS_NAME, "__horizontal"), layout === LayoutConstants.CARD_LAYOUTS.HORIZONTAL), "".concat(valueCardUtils.BASE_CLASS_NAME, "__vertical"), layout === LayoutConstants.CARD_LAYOUTS.VERTICAL))
|
|
@@ -107,7 +109,9 @@ var ValueCard = function ValueCard(_ref) {
|
|
|
107
109
|
values: values,
|
|
108
110
|
isEditable: isEditable,
|
|
109
111
|
fontSize: fontSize,
|
|
110
|
-
isNumberValueCompact: isNumberValueCompact
|
|
112
|
+
isNumberValueCompact: isNumberValueCompact,
|
|
113
|
+
i18n: i18n,
|
|
114
|
+
shouldUseTranslatedLabels: shouldUseTranslatedLabels
|
|
111
115
|
}, others)), resizeHandles);
|
|
112
116
|
};
|
|
113
117
|
ValueCard.propTypes = _objectSpread(_objectSpread({}, CardPropTypes.CardPropTypes), CardPropTypes.ValueContentPropTypes);
|
|
@@ -124,7 +128,8 @@ ValueCard.defaultProps = {
|
|
|
124
128
|
isNumberValueCompact: false,
|
|
125
129
|
// TODO: fix this default in V3, so that cards are unique not inherited from the base Card
|
|
126
130
|
testId: 'Card',
|
|
127
|
-
onAttributeClick: null
|
|
131
|
+
onAttributeClick: null,
|
|
132
|
+
shouldUseTranslatedLabels: false
|
|
128
133
|
};
|
|
129
134
|
ValueCard.__docgenInfo = {
|
|
130
135
|
"description": "This components responsibilities include:\nRendering the attribute groups\nDetermining the layout\ndetermines the data to render",
|
|
@@ -207,6 +212,13 @@ ValueCard.__docgenInfo = {
|
|
|
207
212
|
"computed": false
|
|
208
213
|
},
|
|
209
214
|
"required": false
|
|
215
|
+
},
|
|
216
|
+
"shouldUseTranslatedLabels": {
|
|
217
|
+
"defaultValue": {
|
|
218
|
+
"value": "false",
|
|
219
|
+
"computed": false
|
|
220
|
+
},
|
|
221
|
+
"required": false
|
|
210
222
|
}
|
|
211
223
|
},
|
|
212
224
|
"composes": ["../../constants/CardPropTypes"]
|
|
@@ -30,7 +30,7 @@ var React__default = /*#__PURE__*/_interopDefault(React);
|
|
|
30
30
|
var PropTypes__default = /*#__PURE__*/_interopDefault(PropTypes);
|
|
31
31
|
var classnames__default = /*#__PURE__*/_interopDefault(classnames);
|
|
32
32
|
|
|
33
|
-
var _excluded = ["id", "title", "content", "values", "layout", "dataState", "locale", "isEditable", "customFormatter", "formatter", "fontSize", "isNumberValueCompact", "testId", "onAttributeClick", "size"];
|
|
33
|
+
var _excluded = ["id", "title", "content", "values", "layout", "dataState", "locale", "isEditable", "shouldUseTranslatedLabels", "customFormatter", "formatter", "fontSize", "isNumberValueCompact", "testId", "onAttributeClick", "size"];
|
|
34
34
|
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
35
35
|
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty__default.default(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
36
36
|
var propTypes = _objectSpread({
|
|
@@ -38,7 +38,9 @@ var propTypes = _objectSpread({
|
|
|
38
38
|
title: PropTypes__default.default.string,
|
|
39
39
|
layout: PropTypes__default.default.oneOf(['HORIZONTAL', 'VERTICAL']),
|
|
40
40
|
locale: PropTypes__default.default.string,
|
|
41
|
-
isEditable: PropTypes__default.default.bool
|
|
41
|
+
isEditable: PropTypes__default.default.bool,
|
|
42
|
+
/** whether to use translated labels in cards */
|
|
43
|
+
shouldUseTranslatedLabels: PropTypes__default.default.bool
|
|
42
44
|
}, CardPropTypes.ValueContentPropTypes);
|
|
43
45
|
var defaultProps = {
|
|
44
46
|
id: 'valueContent-id',
|
|
@@ -46,6 +48,7 @@ var defaultProps = {
|
|
|
46
48
|
layout: 'VERTICAL',
|
|
47
49
|
locale: 'en',
|
|
48
50
|
isEditable: false,
|
|
51
|
+
shouldUseTranslatedLabels: false,
|
|
49
52
|
dataState: null,
|
|
50
53
|
values: null,
|
|
51
54
|
fontSize: valueCardUtils.DEFAULT_FONT_SIZE,
|
|
@@ -65,6 +68,7 @@ var ValueContent = function ValueContent(_ref) {
|
|
|
65
68
|
dataState = _ref.dataState,
|
|
66
69
|
locale = _ref.locale,
|
|
67
70
|
isEditable = _ref.isEditable,
|
|
71
|
+
shouldUseTranslatedLabels = _ref.shouldUseTranslatedLabels,
|
|
68
72
|
customFormatter = _ref.customFormatter,
|
|
69
73
|
formatter = _ref.formatter,
|
|
70
74
|
fontSize = _ref.fontSize,
|
|
@@ -85,6 +89,8 @@ var ValueContent = function ValueContent(_ref) {
|
|
|
85
89
|
locale: locale,
|
|
86
90
|
isEditable: isEditable,
|
|
87
91
|
title: title,
|
|
92
|
+
shouldUseTranslatedLabels: shouldUseTranslatedLabels,
|
|
93
|
+
i18n: others.i18n,
|
|
88
94
|
renderIconByName: others.renderIconByName,
|
|
89
95
|
value: valueCardUtils.determineValue(attribute.dataSourceId, values, attribute.dataFilter),
|
|
90
96
|
secondaryValue: attribute.secondaryValue && _objectSpread(_objectSpread({}, attribute.secondaryValue), {}, {
|
|
@@ -175,6 +181,17 @@ ValueContent.__docgenInfo = {
|
|
|
175
181
|
},
|
|
176
182
|
"required": false
|
|
177
183
|
},
|
|
184
|
+
"shouldUseTranslatedLabels": {
|
|
185
|
+
"defaultValue": {
|
|
186
|
+
"value": "false",
|
|
187
|
+
"computed": false
|
|
188
|
+
},
|
|
189
|
+
"description": "whether to use translated labels in cards",
|
|
190
|
+
"type": {
|
|
191
|
+
"name": "bool"
|
|
192
|
+
},
|
|
193
|
+
"required": false
|
|
194
|
+
},
|
|
178
195
|
"dataState": {
|
|
179
196
|
"defaultValue": {
|
|
180
197
|
"value": "null",
|
|
@@ -179,6 +179,8 @@ var TableCardPropTypes = {
|
|
|
179
179
|
defaultFilterStringPlaceholdText: PropTypes__default.default.string,
|
|
180
180
|
downloadIconDescription: PropTypes__default.default.string
|
|
181
181
|
}),
|
|
182
|
+
/** whether to use translated labels in cards */
|
|
183
|
+
shouldUseTranslatedLabels: PropTypes__default.default.bool,
|
|
182
184
|
cardVariables: PropTypes__default.default.objectOf(PropTypes__default.default.oneOfType([PropTypes__default.default.string, PropTypes__default.default.func, PropTypes__default.default.number, PropTypes__default.default.bool])),
|
|
183
185
|
/** default date format pattern that follows the dayjs formatting patterns */
|
|
184
186
|
defaultDateFormatPattern: PropTypes__default.default.string
|
|
@@ -6,6 +6,7 @@ var _typeof = require('@babel/runtime/helpers/typeof');
|
|
|
6
6
|
var _defineProperty = require('@babel/runtime/helpers/defineProperty');
|
|
7
7
|
var mapValues = require('../node_modules/lodash-es/mapValues.js');
|
|
8
8
|
var isNil = require('../node_modules/lodash-es/isNil.js');
|
|
9
|
+
var isEmpty = require('../node_modules/lodash-es/isEmpty.js');
|
|
9
10
|
require('core-js/modules/es.symbol.js');
|
|
10
11
|
require('core-js/modules/es.array.concat.js');
|
|
11
12
|
require('core-js/modules/es.array.filter.js');
|
|
@@ -584,6 +585,20 @@ var isTimeBasedCard = function isTimeBasedCard(card) {
|
|
|
584
585
|
})) || ((_card$content2 = card.content) === null || _card$content2 === void 0 ? void 0 : _card$content2.type) === LayoutConstants.BAR_CHART_TYPES.SIMPLE && ((_card$content3 = card.content) === null || _card$content3 === void 0 ? void 0 : _card$content3.timeDataSourceId) || ((_card$content4 = card.content) === null || _card$content4 === void 0 ? void 0 : _card$content4.type) === LayoutConstants.BAR_CHART_TYPES.STACKED && ((_card$content5 = card.content) === null || _card$content5 === void 0 ? void 0 : _card$content5.timeDataSourceId);
|
|
585
586
|
};
|
|
586
587
|
|
|
588
|
+
/**
|
|
589
|
+
* Get translated label or title from i18n object, fallback to original if not found
|
|
590
|
+
* @param {string} label - The label or title key to translate
|
|
591
|
+
* @param {boolean} shouldUseTranslatedLabels - Flag to determine if translation should be used
|
|
592
|
+
* @param {Object} i18n - The i18n object containing translations
|
|
593
|
+
* @returns {string} - The translated label or original label if translation not found
|
|
594
|
+
*/
|
|
595
|
+
var getTranslatedLabel = function getTranslatedLabel(label, shouldUseTranslatedLabels, i18n) {
|
|
596
|
+
if (!isEmpty(label) && shouldUseTranslatedLabels && i18n && i18n[label]) {
|
|
597
|
+
return i18n[label];
|
|
598
|
+
}
|
|
599
|
+
return label;
|
|
600
|
+
};
|
|
601
|
+
|
|
587
602
|
exports.chartValueFormatter = chartValueFormatter;
|
|
588
603
|
exports.compareGrains = compareGrains;
|
|
589
604
|
exports.determineCardRange = determineCardRange;
|
|
@@ -594,6 +609,7 @@ exports.findMatchingThresholds = findMatchingThresholds;
|
|
|
594
609
|
exports.formatNumberWithPrecision = formatNumberWithPrecision;
|
|
595
610
|
exports.getCardVariables = getCardVariables;
|
|
596
611
|
exports.getResizeHandles = getResizeHandles;
|
|
612
|
+
exports.getTranslatedLabel = getTranslatedLabel;
|
|
597
613
|
exports.getUpdatedCardSize = getUpdatedCardSize;
|
|
598
614
|
exports.getVariables = getVariables;
|
|
599
615
|
exports.handleCardVariables = handleCardVariables;
|