@axelor/aos-mobile-ui 8.1.1 → 8.1.2
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/lib/components/molecules/LabelText/LabelText.js +1 -0
- package/lib/components/molecules/LabelText/LabelText.js.map +1 -1
- package/lib/components/molecules/MultiValuePickerButton/MultiValuePickerButton.d.ts +2 -1
- package/lib/components/molecules/MultiValuePickerButton/MultiValuePickerButton.js +15 -8
- package/lib/components/molecules/MultiValuePickerButton/MultiValuePickerButton.js.map +1 -1
- package/lib/components/organisms/FloatingButton/FloatingActionButton.js +2 -0
- package/lib/components/organisms/FloatingButton/FloatingActionButton.js.map +1 -1
- package/lib/components/organisms/MultiValuePicker/MultiValuePicker.d.ts +2 -1
- package/lib/components/organisms/MultiValuePicker/MultiValuePicker.js +2 -2
- package/lib/components/organisms/MultiValuePicker/MultiValuePicker.js.map +1 -1
- package/lib/components/organisms/Picker/Picker.d.ts +2 -1
- package/lib/components/organisms/Picker/Picker.js +12 -5
- package/lib/components/organisms/Picker/Picker.js.map +1 -1
- package/lib/components/templates/Dashboard/Chart/BarChart.d.ts +2 -1
- package/lib/components/templates/Dashboard/Chart/BarChart.js +14 -3
- package/lib/components/templates/Dashboard/Chart/BarChart.js.map +1 -1
- package/lib/components/templates/Dashboard/Chart/ChartRender.d.ts +2 -1
- package/lib/components/templates/Dashboard/Chart/ChartRender.js +7 -7
- package/lib/components/templates/Dashboard/Chart/ChartRender.js.map +1 -1
- package/lib/components/templates/Dashboard/Chart/DetailsPopup.d.ts +9 -0
- package/lib/components/templates/Dashboard/Chart/DetailsPopup.js +37 -0
- package/lib/components/templates/Dashboard/Chart/DetailsPopup.js.map +1 -0
- package/lib/components/templates/Dashboard/Chart/IndicatorChart/IndicatorChart.d.ts +2 -1
- package/lib/components/templates/Dashboard/Chart/IndicatorChart/IndicatorChart.js +16 -5
- package/lib/components/templates/Dashboard/Chart/IndicatorChart/IndicatorChart.js.map +1 -1
- package/lib/components/templates/Dashboard/Chart/IndicatorChart/IndicatorItem.d.ts +2 -1
- package/lib/components/templates/Dashboard/Chart/IndicatorChart/IndicatorItem.js +4 -4
- package/lib/components/templates/Dashboard/Chart/IndicatorChart/IndicatorItem.js.map +1 -1
- package/lib/components/templates/Dashboard/Chart/IndicatorChart/SimpleIndicator.d.ts +2 -1
- package/lib/components/templates/Dashboard/Chart/IndicatorChart/SimpleIndicator.js +4 -4
- package/lib/components/templates/Dashboard/Chart/IndicatorChart/SimpleIndicator.js.map +1 -1
- package/lib/components/templates/Dashboard/Chart/LineChart.d.ts +2 -1
- package/lib/components/templates/Dashboard/Chart/LineChart.js +14 -3
- package/lib/components/templates/Dashboard/Chart/LineChart.js.map +1 -1
- package/lib/components/templates/Dashboard/Dashboard.d.ts +1 -1
- package/lib/components/templates/Dashboard/Dashboard.js +1 -1
- package/lib/components/templates/Dashboard/Dashboard.js.map +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LabelText.js","sourceRoot":"","sources":["../../../../src/components/molecules/LabelText/LabelText.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAC,IAAI,EAAE,UAAU,EAAC,MAAM,cAAc,CAAC;AAC9C,OAAO,EAAC,eAAe,EAAC,MAAM,wBAAwB,CAAC;AACvD,OAAO,EAAC,IAAI,EAAE,IAAI,EAAC,MAAM,aAAa,CAAC;AAevC,MAAM,SAAS,GAAG,CAAC,EACjB,KAAK,EACL,SAAS,EACT,SAAS,EACT,KAAK,EACL,KAAK,EACL,IAAI,GAAG,EAAE,EACT,QAAQ,GAAG,EAAE,EACb,KAAK,EACL,QAAQ,GAAG,IAAI,EACf,WAAW,GAAG,KAAK,GACJ,EAAE,EAAE;IACnB,OAAO,CACL,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC,CACrC;MAAA,CAAC,QAAQ,IAAI,CACX,CAAC,IAAI,CACH,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC,CAChC,IAAI,CAAC,CAAC,QAAQ,CAAC,CACf,IAAI,CAAC,CAAC,IAAI,CAAC,CACX,KAAK,CAAC,CAAC,KAAK,CAAC,EACb,CACH,CACD;MAAA,CAAC,CAAC,eAAe,CAAC,KAAK,CAAC,IAAI,CAC1B,CAAC,IAAI,CACH,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC,CACjC,QAAQ,CAAC,CAAC,QAAQ,CAAC,CACnB,aAAa,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CACtC;UAAA,CAAC,KAAK,CACR;QAAA,EAAE,IAAI,CAAC,CACR,CACD;MAAA,CAAC,CAAC,eAAe,CAAC,KAAK,CAAC,IAAI,CAC1B,CAAC,IAAI,CACH,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,UAAU,EAAE,SAAS,CAAC,CAAC,CACtC,QAAQ,CAAC,CAAC,QAAQ,CAAC,CACnB,aAAa,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CACtC;UAAA,CAAC,KAAK,CACR;QAAA,EAAE,IAAI,CAAC,CACR,CACH;IAAA,EAAE,IAAI,CAAC,CACR,CAAC;AACJ,CAAC,CAAC;AACF,MAAM,MAAM,GAAG,UAAU,CAAC,MAAM,CAAC;IAC/B,SAAS,EAAE;QACT,aAAa,EAAE,KAAK;KACrB;IACD,KAAK,EAAE;QACL,WAAW,EAAE,CAAC;KACf;IACD,UAAU,EAAE;QACV,IAAI,EAAE,CAAC;QACP,UAAU,EAAE,MAAM;KACnB;IACD,IAAI,EAAE;QACJ,WAAW,EAAE,CAAC;KACf;CACF,CAAC,CAAC;AAEH,eAAe,SAAS,CAAC"}
|
|
1
|
+
{"version":3,"file":"LabelText.js","sourceRoot":"","sources":["../../../../src/components/molecules/LabelText/LabelText.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAC,IAAI,EAAE,UAAU,EAAC,MAAM,cAAc,CAAC;AAC9C,OAAO,EAAC,eAAe,EAAC,MAAM,wBAAwB,CAAC;AACvD,OAAO,EAAC,IAAI,EAAE,IAAI,EAAC,MAAM,aAAa,CAAC;AAevC,MAAM,SAAS,GAAG,CAAC,EACjB,KAAK,EACL,SAAS,EACT,SAAS,EACT,KAAK,EACL,KAAK,EACL,IAAI,GAAG,EAAE,EACT,QAAQ,GAAG,EAAE,EACb,KAAK,EACL,QAAQ,GAAG,IAAI,EACf,WAAW,GAAG,KAAK,GACJ,EAAE,EAAE;IACnB,OAAO,CACL,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC,CACrC;MAAA,CAAC,QAAQ,IAAI,CACX,CAAC,IAAI,CACH,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC,CAChC,IAAI,CAAC,CAAC,QAAQ,CAAC,CACf,IAAI,CAAC,CAAC,IAAI,CAAC,CACX,KAAK,CAAC,CAAC,KAAK,CAAC,EACb,CACH,CACD;MAAA,CAAC,CAAC,eAAe,CAAC,KAAK,CAAC,IAAI,CAC1B,CAAC,IAAI,CACH,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC,CACjC,QAAQ,CAAC,CAAC,QAAQ,CAAC,CACnB,aAAa,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CACtC;UAAA,CAAC,KAAK,CACR;QAAA,EAAE,IAAI,CAAC,CACR,CACD;MAAA,CAAC,CAAC,eAAe,CAAC,KAAK,CAAC,IAAI,CAC1B,CAAC,IAAI,CACH,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,UAAU,EAAE,SAAS,CAAC,CAAC,CACtC,QAAQ,CAAC,CAAC,QAAQ,CAAC,CACnB,aAAa,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CACtC;UAAA,CAAC,KAAK,CACR;QAAA,EAAE,IAAI,CAAC,CACR,CACH;IAAA,EAAE,IAAI,CAAC,CACR,CAAC;AACJ,CAAC,CAAC;AACF,MAAM,MAAM,GAAG,UAAU,CAAC,MAAM,CAAC;IAC/B,SAAS,EAAE;QACT,aAAa,EAAE,KAAK;QACpB,UAAU,EAAE,QAAQ;KACrB;IACD,KAAK,EAAE;QACL,WAAW,EAAE,CAAC;KACf;IACD,UAAU,EAAE;QACV,IAAI,EAAE,CAAC;QACP,UAAU,EAAE,MAAM;KACnB;IACD,IAAI,EAAE;QACJ,WAAW,EAAE,CAAC;KACf;CACF,CAAC,CAAC;AAEH,eAAe,SAAS,CAAC"}
|
|
@@ -10,7 +10,8 @@ interface MultiValuePickerButtonProps {
|
|
|
10
10
|
onPress: () => void;
|
|
11
11
|
listItem: Item[];
|
|
12
12
|
onPressItem?: (item: Item) => void;
|
|
13
|
+
placeholder?: string;
|
|
13
14
|
readonly?: boolean;
|
|
14
15
|
}
|
|
15
|
-
declare const MultiValuePickerButton: ({ style, onPress, listItem, onPressItem, readonly, }: MultiValuePickerButtonProps) => React.JSX.Element;
|
|
16
|
+
declare const MultiValuePickerButton: ({ style, placeholder, onPress, listItem, onPressItem, readonly, }: MultiValuePickerButtonProps) => React.JSX.Element;
|
|
16
17
|
export default MultiValuePickerButton;
|
|
@@ -19,19 +19,22 @@ import React, { useMemo } from 'react';
|
|
|
19
19
|
import { StyleSheet, TouchableOpacity, View } from 'react-native';
|
|
20
20
|
import { useThemeColor } from '../../../theme';
|
|
21
21
|
import { Card, Icon, Text } from '../../atoms';
|
|
22
|
-
const MultiValuePickerButton = ({ style, onPress = () => { }, listItem, onPressItem = () => { }, readonly = false, }) => {
|
|
22
|
+
const MultiValuePickerButton = ({ style, placeholder, onPress = () => { }, listItem, onPressItem = () => { }, readonly = false, }) => {
|
|
23
23
|
const Colors = useThemeColor();
|
|
24
24
|
const styles = useMemo(() => getStyles(Colors), [Colors]);
|
|
25
25
|
return (<TouchableOpacity onPress={onPress} activeOpacity={0.9}>
|
|
26
26
|
<Card style={[styles.container, style]}>
|
|
27
27
|
<View style={styles.listItemContainer}>
|
|
28
|
-
{listItem &&
|
|
29
|
-
listItem.map((item, index) => (<TouchableOpacity onPress={() => onPressItem(item)} disabled={readonly} key={index} style={[styles.cardItem, getItemColor(item.color)]} activeOpacity={0.9}>
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
28
|
+
{listItem && listItem.length > 0
|
|
29
|
+
? listItem.map((item, index) => (<TouchableOpacity onPress={() => onPressItem(item)} disabled={readonly} key={index} style={[styles.cardItem, getItemColor(item.color)]} activeOpacity={0.9}>
|
|
30
|
+
<Text style={styles.text} fontSize={14} numberOfLines={1} textColor={item.color.foreground || Colors.primaryColor.foreground}>
|
|
31
|
+
{item.title}
|
|
32
|
+
</Text>
|
|
33
|
+
{!readonly && (<Icon name="x-lg" color={item.color.foreground} size={14}/>)}
|
|
34
|
+
</TouchableOpacity>))
|
|
35
|
+
: placeholder && (<Text textColor={Colors.placeholderTextColor} style={styles.placeHolder}>
|
|
36
|
+
{placeholder}
|
|
37
|
+
</Text>)}
|
|
35
38
|
</View>
|
|
36
39
|
<Icon name="chevron-down" color={Colors.secondaryColor_dark.background}/>
|
|
37
40
|
</Card>
|
|
@@ -50,6 +53,10 @@ const getStyles = (Colors) => StyleSheet.create({
|
|
|
50
53
|
textAlign: 'center',
|
|
51
54
|
marginRight: 5,
|
|
52
55
|
},
|
|
56
|
+
placeHolder: {
|
|
57
|
+
paddingLeft: 4,
|
|
58
|
+
fontSize: 15,
|
|
59
|
+
},
|
|
53
60
|
listItemContainer: {
|
|
54
61
|
flexDirection: 'row',
|
|
55
62
|
marginLeft: -5,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MultiValuePickerButton.js","sourceRoot":"","sources":["../../../../src/components/molecules/MultiValuePickerButton/MultiValuePickerButton.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,KAAK,EAAE,EAAC,OAAO,EAAC,MAAM,OAAO,CAAC;AACrC,OAAO,EAAC,UAAU,EAAE,gBAAgB,EAAE,IAAI,EAAC,MAAM,cAAc,CAAC;AAChE,OAAO,EAAqB,aAAa,EAAC,MAAM,gBAAgB,CAAC;AACjE,OAAO,EAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAC,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"MultiValuePickerButton.js","sourceRoot":"","sources":["../../../../src/components/molecules/MultiValuePickerButton/MultiValuePickerButton.tsx"],"names":[],"mappings":"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"}
|
|
@@ -50,7 +50,9 @@ const getStyles = (Colors) => StyleSheet.create({
|
|
|
50
50
|
justifyContent: 'center',
|
|
51
51
|
alignItems: 'center',
|
|
52
52
|
minWidth: MIN_ACTION_BUTTON_WIDTH,
|
|
53
|
+
maxWidth: '70%',
|
|
53
54
|
borderRadius: 7,
|
|
55
|
+
paddingHorizontal: 10,
|
|
54
56
|
elevation: 3,
|
|
55
57
|
shadowOpacity: 0.5,
|
|
56
58
|
shadowColor: Colors.secondaryColor.background,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FloatingActionButton.js","sourceRoot":"","sources":["../../../../src/components/organisms/FloatingButton/FloatingActionButton.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,KAAK,EAAE,EAAC,OAAO,EAAC,MAAM,OAAO,CAAC;AACrC,OAAO,EAAC,UAAU,EAAE,IAAI,EAAC,MAAM,cAAc,CAAC;AAC9C,OAAO,EAAqB,aAAa,EAAC,MAAM,gBAAgB,CAAC;AACjE,OAAO,EAAC,IAAI,EAAC,MAAM,aAAa,CAAC;AACjC,OAAO,EAAC,YAAY,EAAC,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAAC,uBAAuB,EAAC,MAAM,SAAS,CAAC;AAChD,OAAO,SAAS,MAAM,aAAa,CAAC;AAEpC,MAAM,oBAAoB,GAAG,CAAC,EAC5B,KAAK,EACL,QAAQ,EACR,KAAK,EACL,IAAI,EACJ,QAAQ,GAAG,KAAK,EAChB,SAAS,GAAG,KAAK,EACjB,OAAO,EACP,UAAU,EACV,cAAc,GAAG,KAAK,GAWvB,EAAE,EAAE;IACH,MAAM,MAAM,GAAG,aAAa,EAAE,CAAC;IAC/B,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC;IAE1D,OAAO,CACL,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,qBAAqB,CAAC,CACxC;MAAA,CAAC,YAAY,CACX,QAAQ,CAAC,CAAC,QAAQ,CAAC,CACnB,IAAI,CAAC,CAAC,IAAI,CAAC,CACX,KAAK,CAAC,CAAC,KAAK,CAAC,CACb,OAAO,CAAC,CAAC,OAAO,CAAC,CACjB,QAAQ,CAAC,CAAC,QAAQ,CAAC,CACnB,MAAM,CAAC,CAAC,CAAC,cAAc,CAAC,CACxB,KAAK,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,EAEvB;MAAA,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,SAAS,CAAC,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,EACrD;MAAA,CAAC,KAAK,IAAI,IAAI,CAAC,CAAC,CAAC,CACf,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,oBAAoB,CAAC,CACvC;UAAA,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,WAAW,CAAC,CAC5C;YAAA,CAAC,UAAU,CAAC,KAAK,CAAC,CACpB;UAAA,EAAE,IAAI,CACR;QAAA,EAAE,IAAI,CAAC,CACR,CAAC,CAAC,CAAC,IAAI,CACV;IAAA,EAAE,IAAI,CAAC,CACR,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,SAAS,GAAG,CAAC,MAAmB,EAAE,EAAE,CACxC,UAAU,CAAC,MAAM,CAAC;IAChB,qBAAqB,EAAE;QACrB,aAAa,EAAE,aAAa;KAC7B;IACD,MAAM,EAAE;QACN,cAAc,EAAE,CAAC;QACjB,SAAS,EAAE,CAAC;KACb;IACD,oBAAoB,EAAE;QACpB,eAAe,EAAE,MAAM,CAAC,eAAe;QACvC,gBAAgB,EAAE,EAAE;QACpB,cAAc,EAAE,EAAE;QAClB,cAAc,EAAE,QAAQ;QACxB,UAAU,EAAE,QAAQ;QACpB,QAAQ,EAAE,uBAAuB;QACjC,YAAY,EAAE,CAAC;QACf,SAAS,EAAE,CAAC;QACZ,aAAa,EAAE,GAAG;QAClB,WAAW,EAAE,MAAM,CAAC,cAAc,CAAC,UAAU;QAC7C,YAAY,EAAE,EAAC,KAAK,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAC;KACpC;IACD,WAAW,EAAE;QACX,SAAS,EAAE,QAAQ;KACpB;CACF,CAAC,CAAC;AAEL,eAAe,oBAAoB,CAAC"}
|
|
1
|
+
{"version":3,"file":"FloatingActionButton.js","sourceRoot":"","sources":["../../../../src/components/organisms/FloatingButton/FloatingActionButton.tsx"],"names":[],"mappings":"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"}
|
|
@@ -15,7 +15,8 @@ interface MultiValuePickerProps {
|
|
|
15
15
|
listItems: Item[];
|
|
16
16
|
readonly?: boolean;
|
|
17
17
|
required?: boolean;
|
|
18
|
+
placeholder?: string;
|
|
18
19
|
translator?: (key: string, values?: Object) => string;
|
|
19
20
|
}
|
|
20
|
-
declare const MultiValuePicker: ({ style, pickerStyle, styleTxt, title, onValueChange, defaultItems, listItems, readonly, required, translator, }: MultiValuePickerProps) => React.JSX.Element;
|
|
21
|
+
declare const MultiValuePicker: ({ style, pickerStyle, styleTxt, title, placeholder, onValueChange, defaultItems, listItems, readonly, required, translator, }: MultiValuePickerProps) => React.JSX.Element;
|
|
21
22
|
export default MultiValuePicker;
|
|
@@ -22,7 +22,7 @@ import { Text } from '../../atoms';
|
|
|
22
22
|
import { SelectionContainer, MultiValuePickerButton } from '../../molecules';
|
|
23
23
|
import { checkNullString, getCommonStyles, getItemsFromList, } from '../../../utils';
|
|
24
24
|
import { OUTSIDE_INDICATOR, useClickOutside, } from '../../../hooks/use-click-outside';
|
|
25
|
-
const MultiValuePicker = ({ style, pickerStyle, styleTxt, title, onValueChange, defaultItems = [], listItems = [], readonly = false, required = false, translator, }) => {
|
|
25
|
+
const MultiValuePicker = ({ style, pickerStyle, styleTxt, title, placeholder, onValueChange, defaultItems = [], listItems = [], readonly = false, required = false, translator, }) => {
|
|
26
26
|
const Colors = useThemeColor();
|
|
27
27
|
const [pickerIsOpen, setPickerIsOpen] = useState(false);
|
|
28
28
|
const [isFocused, setIsFocused] = useState(false);
|
|
@@ -64,7 +64,7 @@ const MultiValuePicker = ({ style, pickerStyle, styleTxt, title, onValueChange,
|
|
|
64
64
|
style,
|
|
65
65
|
]}>
|
|
66
66
|
{!checkNullString(title) && (<Text style={[styles.title, styleTxt]}>{title}</Text>)}
|
|
67
|
-
<MultiValuePickerButton onPress={togglePicker} listItem={selectedItemList} style={[
|
|
67
|
+
<MultiValuePickerButton onPress={togglePicker} listItem={selectedItemList} placeholder={placeholder} style={[
|
|
68
68
|
commonStyles.filter,
|
|
69
69
|
commonStyles.filterSize,
|
|
70
70
|
commonStyles.filterAlign,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MultiValuePicker.js","sourceRoot":"","sources":["../../../../src/components/organisms/MultiValuePicker/MultiValuePicker.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,KAAK,EAAE,EAAC,WAAW,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAC,MAAM,OAAO,CAAC;AAC/E,OAAO,EAAC,QAAQ,EAAE,UAAU,EAAE,IAAI,EAAC,MAAM,cAAc,CAAC;AACxD,OAAO,EAAqB,aAAa,EAAC,MAAM,gBAAgB,CAAC;AACjE,OAAO,EAAC,IAAI,EAAC,MAAM,aAAa,CAAC;AACjC,OAAO,EAAC,kBAAkB,EAAE,sBAAsB,EAAC,MAAM,iBAAiB,CAAC;AAC3E,OAAO,EACL,eAAe,EACf,eAAe,EACf,gBAAgB,GACjB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EACL,iBAAiB,EACjB,eAAe,GAChB,MAAM,kCAAkC,CAAC;
|
|
1
|
+
{"version":3,"file":"MultiValuePicker.js","sourceRoot":"","sources":["../../../../src/components/organisms/MultiValuePicker/MultiValuePicker.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,KAAK,EAAE,EAAC,WAAW,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAC,MAAM,OAAO,CAAC;AAC/E,OAAO,EAAC,QAAQ,EAAE,UAAU,EAAE,IAAI,EAAC,MAAM,cAAc,CAAC;AACxD,OAAO,EAAqB,aAAa,EAAC,MAAM,gBAAgB,CAAC;AACjE,OAAO,EAAC,IAAI,EAAC,MAAM,aAAa,CAAC;AACjC,OAAO,EAAC,kBAAkB,EAAE,sBAAsB,EAAC,MAAM,iBAAiB,CAAC;AAC3E,OAAO,EACL,eAAe,EACf,eAAe,EACf,gBAAgB,GACjB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EACL,iBAAiB,EACjB,eAAe,GAChB,MAAM,kCAAkC,CAAC;AAsB1C,MAAM,gBAAgB,GAAG,CAAC,EACxB,KAAK,EACL,WAAW,EACX,QAAQ,EACR,KAAK,EACL,WAAW,EACX,aAAa,EACb,YAAY,GAAG,EAAE,EACjB,SAAS,GAAG,EAAE,EACd,QAAQ,GAAG,KAAK,EAChB,QAAQ,GAAG,KAAK,EAChB,UAAU,GACY,EAAE,EAAE;IAC1B,MAAM,MAAM,GAAG,aAAa,EAAE,CAAC;IAE/B,MAAM,CAAC,YAAY,EAAE,eAAe,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IACxD,MAAM,CAAC,SAAS,EAAE,YAAY,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAElD,MAAM,UAAU,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC;IAChC,MAAM,YAAY,GAAG,eAAe,CAAC;QACnC,UAAU;KACX,CAAC,CAAC;IAEH,MAAM,CAAC,gBAAgB,EAAE,mBAAmB,CAAC,GAAG,QAAQ,CACtD,gBAAgB,CAAC,SAAS,EAAE,KAAK,EAAE,YAAY,CAAC,CACjD,CAAC;IAEF,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,YAAY,KAAK,iBAAiB,IAAI,YAAY,EAAE;YACtD,eAAe,CAAC,KAAK,CAAC,CAAC;YACvB,YAAY,CAAC,KAAK,CAAC,CAAC;SACrB;IACH,CAAC,EAAE,CAAC,YAAY,EAAE,YAAY,CAAC,CAAC,CAAC;IAEjC,MAAM,YAAY,GAAG,GAAG,EAAE;QACxB,eAAe,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC;QACrC,YAAY,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC;IACpC,CAAC,CAAC;IAEF,MAAM,iBAAiB,GAAG,WAAW,CACnC,CAAC,SAAe,EAAE,EAAE;QAClB,IAAI,SAAS,IAAI,IAAI,EAAE;YACrB,OAAO,IAAI,CAAC;SACb;QAED,IAAI,mBAAmB,GAAG,EAAE,CAAC;QAC7B,IAAI,gBAAgB,CAAC,IAAI,CAAC,CAAC,IAAU,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,KAAK,SAAS,CAAC,GAAG,CAAC,EAAE;YACrE,mBAAmB,GAAG,gBAAgB,CAAC,MAAM,CAC3C,CAAC,CAAO,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,KAAK,SAAS,CAAC,GAAG,CACrC,CAAC;SACH;aAAM;YACL,mBAAmB,GAAG,CAAC,GAAG,gBAAgB,EAAE,SAAS,CAAC,CAAC;SACxD;QACD,mBAAmB,CAAC,mBAAmB,CAAC,CAAC;QACzC,aAAa,CAAC,mBAAmB,CAAC,CAAC;IACrC,CAAC,EACD,CAAC,aAAa,EAAE,gBAAgB,CAAC,CAClC,CAAC;IAEF,MAAM,SAAS,GAAG,OAAO,CACvB,GAAG,EAAE,CACH,QAAQ,IAAI,CAAC,gBAAgB,IAAI,IAAI,IAAI,gBAAgB,EAAE,MAAM,KAAK,CAAC,CAAC,EAC1E,CAAC,QAAQ,EAAE,gBAAgB,CAAC,CAC7B,CAAC;IAEF,MAAM,YAAY,GAAG,OAAO,CAC1B,GAAG,EAAE,CAAC,eAAe,CAAC,MAAM,EAAE,SAAS,CAAC,EACxC,CAAC,MAAM,EAAE,SAAS,CAAC,CACpB,CAAC;IAEF,MAAM,MAAM,GAAG,OAAO,CACpB,GAAG,EAAE,CAAC,SAAS,CAAC,MAAM,EAAE,SAAS,CAAC,EAClC,CAAC,MAAM,EAAE,SAAS,CAAC,CACpB,CAAC;IAEF,OAAO,CACL,CAAC,IAAI,CACH,GAAG,CAAC,CAAC,UAAU,CAAC,CAChB,KAAK,CAAC,CAAC;YACL,MAAM,CAAC,SAAS;YAChB,QAAQ,CAAC,EAAE,KAAK,KAAK,IAAI,YAAY,CAAC,CAAC,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC,CAAC,IAAI;YACrE,KAAK;SACN,CAAC,CACF;MAAA,CAAC,CAAC,eAAe,CAAC,KAAK,CAAC,IAAI,CAC1B,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,IAAI,CAAC,CACtD,CACD;MAAA,CAAC,sBAAsB,CACrB,OAAO,CAAC,CAAC,YAAY,CAAC,CACtB,QAAQ,CAAC,CAAC,gBAAgB,CAAC,CAC3B,WAAW,CAAC,CAAC,WAAW,CAAC,CACzB,KAAK,CAAC,CAAC;YACL,YAAY,CAAC,MAAM;YACnB,YAAY,CAAC,UAAU;YACvB,YAAY,CAAC,WAAW;YACxB,SAAS,IAAI,YAAY,CAAC,YAAY;YACtC,MAAM,CAAC,OAAO;YACd,WAAW;SACZ,CAAC,CACF,WAAW,CAAC,CAAC,iBAAiB,CAAC,CAC/B,QAAQ,CAAC,CAAC,QAAQ,CAAC,EAErB;MAAA,CAAC,YAAY,CAAC,CAAC,CAAC,CACd,CAAC,kBAAkB,CACjB,UAAU,CAAC,CAAC,SAAS,CAAC,CACtB,QAAQ,CAAC,KAAK,CACd,YAAY,CAAC,CAAC,CAAC,IAAU,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,CACzC,YAAY,CAAC,CAAC,iBAAiB,CAAC,CAChC,QAAQ,CAAC,CAAC,IAAI,CAAC,CACf,YAAY,CAAC,CAAC,gBAAgB,CAAC,CAC/B,QAAQ,CAAC,CAAC,QAAQ,CAAC,CACnB,KAAK,CAAC,CAAC,KAAK,CAAC,CACb,UAAU,CAAC,CAAC,UAAU,CAAC,EACvB,CACH,CAAC,CAAC,CAAC,IAAI,CACV;IAAA,EAAE,IAAI,CAAC,CACR,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,SAAS,GAAG,CAAC,MAAmB,EAAE,SAAkB,EAAE,EAAE,CAC5D,UAAU,CAAC,MAAM,CAAC;IAChB,SAAS,EAAE;QACT,KAAK,EAAE,KAAK;KACb;IACD,eAAe,EAAE;QACf,MAAM,EAAE,GAAG;KACZ;IACD,KAAK,EAAE;QACL,UAAU,EAAE,EAAE;KACf;IACD,OAAO,EAAE;QACP,KAAK,EAAE,MAAM;QACb,WAAW,EAAE,SAAS;YACpB,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,UAAU;YAC9B,CAAC,CAAC,MAAM,CAAC,cAAc,CAAC,UAAU;QACpC,WAAW,EAAE,CAAC;QACd,gBAAgB,EAAE,CAAC;QACnB,SAAS,EAAE,EAAE;KACd;CACF,CAAC,CAAC;AAEL,eAAe,gBAAgB,CAAC"}
|
|
@@ -4,6 +4,7 @@ interface PickerProps {
|
|
|
4
4
|
pickerStyle?: any;
|
|
5
5
|
styleTxt?: any;
|
|
6
6
|
title?: string;
|
|
7
|
+
placeholder?: string;
|
|
7
8
|
onValueChange: (any: any) => void;
|
|
8
9
|
defaultValue?: string | number;
|
|
9
10
|
listItems: any[];
|
|
@@ -17,5 +18,5 @@ interface PickerProps {
|
|
|
17
18
|
isScrollViewContainer?: boolean;
|
|
18
19
|
translator?: (key: string, values?: Object) => string;
|
|
19
20
|
}
|
|
20
|
-
declare const Picker: ({ style, pickerStyle, styleTxt, title, onValueChange, defaultValue, listItems, displayValue, labelField, valueField, emptyValue, isValueItem, readonly, required, isScrollViewContainer, translator, }: PickerProps) => React.JSX.Element;
|
|
21
|
+
declare const Picker: ({ style, pickerStyle, styleTxt, title, placeholder, onValueChange, defaultValue, listItems, displayValue, labelField, valueField, emptyValue, isValueItem, readonly, required, isScrollViewContainer, translator, }: PickerProps) => React.JSX.Element;
|
|
21
22
|
export default Picker;
|
|
@@ -23,7 +23,7 @@ import { OUTSIDE_INDICATOR, useClickOutside, } from '../../../hooks/use-click-ou
|
|
|
23
23
|
import { Icon, Text } from '../../atoms';
|
|
24
24
|
import { FormInput, SelectionContainer, RightIconButton } from '../../molecules';
|
|
25
25
|
const ITEM_HEIGHT = 40;
|
|
26
|
-
const Picker = ({ style, pickerStyle, styleTxt, title, onValueChange, defaultValue = '', listItems, displayValue, labelField, valueField, emptyValue = true, isValueItem = false, readonly = false, required = false, isScrollViewContainer = false, translator, }) => {
|
|
26
|
+
const Picker = ({ style, pickerStyle, styleTxt, title, placeholder, onValueChange, defaultValue = '', listItems, displayValue, labelField, valueField, emptyValue = true, isValueItem = false, readonly = false, required = false, isScrollViewContainer = false, translator, }) => {
|
|
27
27
|
const Colors = useThemeColor();
|
|
28
28
|
const [isFocused, setIsFocused] = useState(false);
|
|
29
29
|
const [isOpen, setIsOpen] = useState(false);
|
|
@@ -72,7 +72,6 @@ const Picker = ({ style, pickerStyle, styleTxt, title, onValueChange, defaultVal
|
|
|
72
72
|
}, [emptyValue, isScrollViewContainer, listItems, isOpen]);
|
|
73
73
|
const _required = useMemo(() => required && selectedItem == null, [required, selectedItem]);
|
|
74
74
|
const commonStyles = useMemo(() => getCommonStyles(Colors, _required), [Colors, _required]);
|
|
75
|
-
const styles = useMemo(() => getStyles(Colors, _required, marginBottom, isOpen), [Colors, _required, marginBottom, isOpen]);
|
|
76
75
|
const _displayValue = useCallback(item => {
|
|
77
76
|
if (item == null) {
|
|
78
77
|
return '';
|
|
@@ -87,6 +86,11 @@ const Picker = ({ style, pickerStyle, styleTxt, title, onValueChange, defaultVal
|
|
|
87
86
|
return item[valueField];
|
|
88
87
|
}
|
|
89
88
|
}, [displayValue, labelField, valueField]);
|
|
89
|
+
const displayPlaceholder = useMemo(() => {
|
|
90
|
+
return (checkNullString(_displayValue(selectedItem)) &&
|
|
91
|
+
!checkNullString(placeholder));
|
|
92
|
+
}, [_displayValue, placeholder, selectedItem]);
|
|
93
|
+
const styles = useMemo(() => getStyles(Colors, _required, marginBottom, isOpen, displayPlaceholder), [Colors, _required, marginBottom, isOpen, displayPlaceholder]);
|
|
90
94
|
if (readonly) {
|
|
91
95
|
return (<FormInput style={[styles.container, style]} title={title} defaultValue={_displayValue(selectedItem)} readOnly/>);
|
|
92
96
|
}
|
|
@@ -96,7 +100,7 @@ const Picker = ({ style, pickerStyle, styleTxt, title, onValueChange, defaultVal
|
|
|
96
100
|
style,
|
|
97
101
|
]}>
|
|
98
102
|
{!checkNullString(title) && (<Text style={[styles.title, styleTxt]}>{title}</Text>)}
|
|
99
|
-
<RightIconButton onPress={togglePicker} icon={<Icon name="chevron-down" color={Colors.secondaryColor_dark.background}/>} title={_displayValue(selectedItem)} styleText={styles.textPicker} style={[
|
|
103
|
+
<RightIconButton onPress={togglePicker} icon={<Icon name="chevron-down" color={Colors.secondaryColor_dark.background}/>} title={displayPlaceholder ? placeholder : _displayValue(selectedItem)} styleText={styles.textPicker} style={[
|
|
100
104
|
commonStyles.filter,
|
|
101
105
|
commonStyles.filterSize,
|
|
102
106
|
commonStyles.filterAlign,
|
|
@@ -107,7 +111,7 @@ const Picker = ({ style, pickerStyle, styleTxt, title, onValueChange, defaultVal
|
|
|
107
111
|
{isOpen && (<SelectionContainer style={pickerStyle} emptyValue={emptyValue} objectList={listItems} keyField={valueField} displayValue={_displayValue} handleSelect={handleValueChange} isPicker={true} selectedItem={[selectedItem]} title={title} translator={translator}/>)}
|
|
108
112
|
</View>);
|
|
109
113
|
};
|
|
110
|
-
const getStyles = (Colors, _required, marginBottom, isOpen) => StyleSheet.create({
|
|
114
|
+
const getStyles = (Colors, _required, marginBottom, isOpen, displayPlaceholder) => StyleSheet.create({
|
|
111
115
|
container: {
|
|
112
116
|
width: '90%',
|
|
113
117
|
alignSelf: 'center',
|
|
@@ -124,9 +128,12 @@ const getStyles = (Colors, _required, marginBottom, isOpen) => StyleSheet.create
|
|
|
124
128
|
borderWidth: 1,
|
|
125
129
|
marginHorizontal: 0,
|
|
126
130
|
minHeight: 40,
|
|
131
|
+
paddingLeft: displayPlaceholder ? 9 : 20,
|
|
127
132
|
},
|
|
128
133
|
textPicker: {
|
|
129
|
-
left: '-20%',
|
|
134
|
+
left: displayPlaceholder ? 0 : '-20%',
|
|
135
|
+
color: displayPlaceholder ? Colors.placeholderTextColor : Colors.text,
|
|
136
|
+
fontSize: displayPlaceholder ? 15 : 16,
|
|
130
137
|
},
|
|
131
138
|
title: {
|
|
132
139
|
marginLeft: 10,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Picker.js","sourceRoot":"","sources":["../../../../src/components/organisms/Picker/Picker.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,KAAK,EAAE,EAAC,SAAS,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAC,MAAM,OAAO,CAAC;AAC/E,OAAO,EAAC,QAAQ,EAAE,UAAU,EAAE,IAAI,EAAC,MAAM,cAAc,CAAC;AACxD,OAAO,EAAc,aAAa,EAAC,MAAM,gBAAgB,CAAC;AAC1D,OAAO,EAAC,eAAe,EAAE,eAAe,EAAE,WAAW,EAAC,MAAM,gBAAgB,CAAC;AAC7E,OAAO,EACL,iBAAiB,EACjB,eAAe,GAChB,MAAM,kCAAkC,CAAC;AAC1C,OAAO,EAAC,IAAI,EAAE,IAAI,EAAC,MAAM,aAAa,CAAC;AACvC,OAAO,EAAC,SAAS,EAAE,kBAAkB,EAAE,eAAe,EAAC,MAAM,iBAAiB,CAAC;AAE/E,MAAM,WAAW,GAAG,EAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"Picker.js","sourceRoot":"","sources":["../../../../src/components/organisms/Picker/Picker.tsx"],"names":[],"mappings":"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"}
|
|
@@ -9,6 +9,7 @@ interface BarCharProps {
|
|
|
9
9
|
title?: string;
|
|
10
10
|
rotateLabel?: boolean;
|
|
11
11
|
hideCardBackground?: boolean;
|
|
12
|
+
translator: (translationKey: string) => string;
|
|
12
13
|
}
|
|
13
|
-
declare const BarChart: ({ style, widthGraph, datasets, spacing, horizontal, title, rotateLabel, hideCardBackground, }: BarCharProps) => React.JSX.Element;
|
|
14
|
+
declare const BarChart: ({ style, widthGraph, datasets, spacing, horizontal, title, rotateLabel, hideCardBackground, translator, }: BarCharProps) => React.JSX.Element;
|
|
14
15
|
export default BarChart;
|
|
@@ -15,15 +15,18 @@
|
|
|
15
15
|
* You should have received a copy of the GNU Affero General Public License
|
|
16
16
|
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|
17
17
|
*/
|
|
18
|
-
import React, { useMemo } from 'react';
|
|
18
|
+
import React, { useCallback, useMemo, useState } from 'react';
|
|
19
19
|
import { StyleSheet, Dimensions, View } from 'react-native';
|
|
20
20
|
import { BarChart as RNBarChart } from 'react-native-gifted-charts';
|
|
21
21
|
import { useThemeColor } from '../../../../theme';
|
|
22
22
|
import { Card, Text } from '../../../atoms';
|
|
23
23
|
import { checkNullString } from '../../../../utils';
|
|
24
24
|
import { MARGIN, getContainerMinWidth, getContainerWidth, initBarData, } from './chart.helper';
|
|
25
|
-
|
|
25
|
+
import DetailsPopup from './DetailsPopup';
|
|
26
|
+
const BarChart = ({ style, widthGraph = Dimensions.get('window').width * 0.6, datasets, spacing, horizontal = false, title, rotateLabel = true, hideCardBackground = false, translator, }) => {
|
|
26
27
|
const Colors = useThemeColor();
|
|
28
|
+
const [selectedBar, setSelectedBar] = useState(null);
|
|
29
|
+
const [modalVisible, setModalVisible] = useState(false);
|
|
27
30
|
const barChartData = useMemo(() => {
|
|
28
31
|
return initBarData(datasets, rotateLabel, spacing, Colors);
|
|
29
32
|
}, [Colors, datasets, rotateLabel, spacing]);
|
|
@@ -46,13 +49,21 @@ const BarChart = ({ style, widthGraph = Dimensions.get('window').width * 0.6, da
|
|
|
46
49
|
return Math.max(containerWidth / barChartData.length, 20);
|
|
47
50
|
}, [containerWidth, barChartData.length, spacing]);
|
|
48
51
|
const Container = hideCardBackground ? View : Card;
|
|
52
|
+
const handleBarPress = useCallback(barData => {
|
|
53
|
+
setSelectedBar(barData);
|
|
54
|
+
setModalVisible(true);
|
|
55
|
+
}, []);
|
|
56
|
+
const closeModal = useCallback(() => {
|
|
57
|
+
setModalVisible(false);
|
|
58
|
+
}, []);
|
|
49
59
|
return (<Container style={[
|
|
50
60
|
styles.container,
|
|
51
61
|
{ width: containerWidth, minWidth: containerMinWidth },
|
|
52
62
|
style,
|
|
53
63
|
]}>
|
|
54
|
-
<RNBarChart data={barChartData} width={_graphWidth} isAnimated={true} barBorderRadius={4} barBorderTopRightRadius={7} barBorderTopLeftRadius={7} barBorderBottomRightRadius={0} barBorderBottomLeftRadius={0} initialSpacing={_spacing / 2} spacing={_spacing} endSpacing={_spacing} horizontal={horizontal}
|
|
64
|
+
<RNBarChart data={barChartData} width={_graphWidth} isAnimated={true} barBorderRadius={4} barBorderTopRightRadius={7} barBorderTopLeftRadius={7} barBorderBottomRightRadius={0} barBorderBottomLeftRadius={0} initialSpacing={_spacing / 2} spacing={_spacing} endSpacing={_spacing} horizontal={horizontal} onPress={handleBarPress} yAxisTextStyle={{ color: Colors.secondaryColor_dark.background }} xAxisLabelTextStyle={{ color: Colors.secondaryColor_dark.background }}/>
|
|
55
65
|
{!checkNullString(title) && <Text style={styles.title}>{title}</Text>}
|
|
66
|
+
<DetailsPopup closeModal={closeModal} modalVisible={modalVisible} selectedItem={selectedBar} translator={translator}/>
|
|
56
67
|
</Container>);
|
|
57
68
|
};
|
|
58
69
|
const getStyles = rotateLabel => StyleSheet.create({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BarChart.js","sourceRoot":"","sources":["../../../../../src/components/templates/Dashboard/Chart/BarChart.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,KAAK,EAAE,EAAC,OAAO,EAAC,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"BarChart.js","sourceRoot":"","sources":["../../../../../src/components/templates/Dashboard/Chart/BarChart.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1,10 +1,11 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
2
|
import { Data } from '../dashboard.helper';
|
|
3
|
-
declare const ChartRender: ({ dataList, title, type, widthGraph, hideCardBackground, }: {
|
|
3
|
+
declare const ChartRender: ({ dataList, title, type, widthGraph, hideCardBackground, translator, }: {
|
|
4
4
|
dataList: Data[][];
|
|
5
5
|
title: string;
|
|
6
6
|
type: string;
|
|
7
7
|
widthGraph?: number;
|
|
8
8
|
hideCardBackground?: boolean;
|
|
9
|
+
translator: (translationKey: string) => string;
|
|
9
10
|
}) => React.JSX.Element;
|
|
10
11
|
export default ChartRender;
|
|
@@ -21,21 +21,21 @@ import Chart from '../chart-type';
|
|
|
21
21
|
import BarChart from './BarChart';
|
|
22
22
|
import LineChart from './LineChart';
|
|
23
23
|
import PieChart from './PieChart/PieChart';
|
|
24
|
-
const BarChartRender = (datasets, title, widthGraph, hideCardBackground) => {
|
|
25
|
-
return (<BarChart title={title} datasets={datasets} widthGraph={widthGraph} hideCardBackground={hideCardBackground}/>);
|
|
24
|
+
const BarChartRender = (datasets, title, widthGraph, hideCardBackground, translator) => {
|
|
25
|
+
return (<BarChart title={title} datasets={datasets} widthGraph={widthGraph} hideCardBackground={hideCardBackground} translator={translator}/>);
|
|
26
26
|
};
|
|
27
|
-
const LineChartRender = (datasets, title, widthGraph, hideCardBackground) => {
|
|
28
|
-
return (<LineChart title={title} datasets={datasets} widthGraph={widthGraph} hideCardBackground={hideCardBackground}/>);
|
|
27
|
+
const LineChartRender = (datasets, title, widthGraph, hideCardBackground, translator) => {
|
|
28
|
+
return (<LineChart title={title} datasets={datasets} widthGraph={widthGraph} hideCardBackground={hideCardBackground} translator={translator}/>);
|
|
29
29
|
};
|
|
30
30
|
const PieChartRender = (datasets, title, widthGraph, type) => {
|
|
31
31
|
return (<PieChart title={title} datasets={datasets[0]} widthGraph={widthGraph} donut={type === Chart.chartType.donut}/>);
|
|
32
32
|
};
|
|
33
|
-
const ChartRender = ({ dataList, title, type, widthGraph = Dimensions.get('window').width, hideCardBackground = false, }) => {
|
|
33
|
+
const ChartRender = ({ dataList, title, type, widthGraph = Dimensions.get('window').width, hideCardBackground = false, translator, }) => {
|
|
34
34
|
switch (type) {
|
|
35
35
|
case Chart.chartType.bar:
|
|
36
|
-
return BarChartRender(dataList, title, widthGraph, hideCardBackground);
|
|
36
|
+
return BarChartRender(dataList, title, widthGraph, hideCardBackground, translator);
|
|
37
37
|
case Chart.chartType.line:
|
|
38
|
-
return LineChartRender(dataList, title, widthGraph, hideCardBackground);
|
|
38
|
+
return LineChartRender(dataList, title, widthGraph, hideCardBackground, translator);
|
|
39
39
|
case Chart.chartType.pie:
|
|
40
40
|
case Chart.chartType.donut:
|
|
41
41
|
return PieChartRender(dataList, title, widthGraph, type);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ChartRender.js","sourceRoot":"","sources":["../../../../../src/components/templates/Dashboard/Chart/ChartRender.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAC,UAAU,EAAC,MAAM,cAAc,CAAC;AACxC,OAAO,KAAK,MAAM,eAAe,CAAC;AAClC,OAAO,QAAQ,MAAM,YAAY,CAAC;AAClC,OAAO,SAAS,MAAM,aAAa,CAAC;AACpC,OAAO,QAAQ,MAAM,qBAAqB,CAAC;AAG3C,MAAM,cAAc,GAAG,
|
|
1
|
+
{"version":3,"file":"ChartRender.js","sourceRoot":"","sources":["../../../../../src/components/templates/Dashboard/Chart/ChartRender.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAC,UAAU,EAAC,MAAM,cAAc,CAAC;AACxC,OAAO,KAAK,MAAM,eAAe,CAAC;AAClC,OAAO,QAAQ,MAAM,YAAY,CAAC;AAClC,OAAO,SAAS,MAAM,aAAa,CAAC;AACpC,OAAO,QAAQ,MAAM,qBAAqB,CAAC;AAG3C,MAAM,cAAc,GAAG,CACrB,QAAkB,EAClB,KAAa,EACb,UAAkB,EAClB,kBAA2B,EAC3B,UAA8C,EAC9C,EAAE;IACF,OAAO,CACL,CAAC,QAAQ,CACP,KAAK,CAAC,CAAC,KAAK,CAAC,CACb,QAAQ,CAAC,CAAC,QAAQ,CAAC,CACnB,UAAU,CAAC,CAAC,UAAU,CAAC,CACvB,kBAAkB,CAAC,CAAC,kBAAkB,CAAC,CACvC,UAAU,CAAC,CAAC,UAAU,CAAC,EACvB,CACH,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,eAAe,GAAG,CACtB,QAAkB,EAClB,KAAa,EACb,UAAkB,EAClB,kBAA2B,EAC3B,UAA8C,EAC9C,EAAE;IACF,OAAO,CACL,CAAC,SAAS,CACR,KAAK,CAAC,CAAC,KAAK,CAAC,CACb,QAAQ,CAAC,CAAC,QAAQ,CAAC,CACnB,UAAU,CAAC,CAAC,UAAU,CAAC,CACvB,kBAAkB,CAAC,CAAC,kBAAkB,CAAC,CACvC,UAAU,CAAC,CAAC,UAAU,CAAC,EACvB,CACH,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,cAAc,GAAG,CACrB,QAAkB,EAClB,KAAa,EACb,UAAkB,EAClB,IAAY,EACZ,EAAE;IACF,OAAO,CACL,CAAC,QAAQ,CACP,KAAK,CAAC,CAAC,KAAK,CAAC,CACb,QAAQ,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CACtB,UAAU,CAAC,CAAC,UAAU,CAAC,CACvB,KAAK,CAAC,CAAC,IAAI,KAAK,KAAK,CAAC,SAAS,CAAC,KAAK,CAAC,EACtC,CACH,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,WAAW,GAAG,CAAC,EACnB,QAAQ,EACR,KAAK,EACL,IAAI,EACJ,UAAU,GAAG,UAAU,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,KAAK,EAC3C,kBAAkB,GAAG,KAAK,EAC1B,UAAU,GAQX,EAAE,EAAE;IACH,QAAQ,IAAI,EAAE;QACZ,KAAK,KAAK,CAAC,SAAS,CAAC,GAAG;YACtB,OAAO,cAAc,CACnB,QAAQ,EACR,KAAK,EACL,UAAU,EACV,kBAAkB,EAClB,UAAU,CACX,CAAC;QACJ,KAAK,KAAK,CAAC,SAAS,CAAC,IAAI;YACvB,OAAO,eAAe,CACpB,QAAQ,EACR,KAAK,EACL,UAAU,EACV,kBAAkB,EAClB,UAAU,CACX,CAAC;QACJ,KAAK,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC;QACzB,KAAK,KAAK,CAAC,SAAS,CAAC,KAAK;YACxB,OAAO,cAAc,CAAC,QAAQ,EAAE,KAAK,EAAE,UAAU,EAAE,IAAI,CAAC,CAAC;QAC3D;YACE,OAAO,IAAI,CAAC;KACf;AACH,CAAC,CAAC;AAEF,eAAe,WAAW,CAAC"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
declare const DetailsPopup: ({ modalVisible, translator, closeModal, selectedItem, unit, }: {
|
|
3
|
+
modalVisible: boolean;
|
|
4
|
+
translator: (translationKey: string) => string;
|
|
5
|
+
closeModal: () => void;
|
|
6
|
+
selectedItem: any;
|
|
7
|
+
unit?: string;
|
|
8
|
+
}) => React.JSX.Element;
|
|
9
|
+
export default DetailsPopup;
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Axelor Business Solutions
|
|
3
|
+
*
|
|
4
|
+
* Copyright (C) 2024 Axelor (<http://axelor.com>).
|
|
5
|
+
*
|
|
6
|
+
* This program is free software: you can redistribute it and/or modify
|
|
7
|
+
* it under the terms of the GNU Affero General Public License, version 3,
|
|
8
|
+
* as published by the Free Software Foundation.
|
|
9
|
+
*
|
|
10
|
+
* This program is distributed in the hope that it will be useful,
|
|
11
|
+
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
12
|
+
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
13
|
+
* GNU Affero General Public License for more details.
|
|
14
|
+
*
|
|
15
|
+
* You should have received a copy of the GNU Affero General Public License
|
|
16
|
+
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|
17
|
+
*/
|
|
18
|
+
import React from 'react';
|
|
19
|
+
import { View } from 'react-native';
|
|
20
|
+
import { Text } from '../../../atoms';
|
|
21
|
+
import { Alert } from '../../../molecules';
|
|
22
|
+
import { checkNullString } from '../../../../utils';
|
|
23
|
+
const DetailsPopup = ({ modalVisible, translator, closeModal, selectedItem, unit, }) => {
|
|
24
|
+
if (selectedItem == null) {
|
|
25
|
+
return null;
|
|
26
|
+
}
|
|
27
|
+
return (<Alert visible={modalVisible} translator={translator} title={translator('Base_Details')} confirmButtonConfig={{
|
|
28
|
+
onPress: closeModal,
|
|
29
|
+
}}>
|
|
30
|
+
<View>
|
|
31
|
+
<Text>{`${translator('Base_Label')}: ${selectedItem.label || selectedItem.title}`}</Text>
|
|
32
|
+
<Text>{`${translator('Base_Value')}: ${selectedItem.value} ${checkNullString(unit) ? '' : unit}`}</Text>
|
|
33
|
+
</View>
|
|
34
|
+
</Alert>);
|
|
35
|
+
};
|
|
36
|
+
export default DetailsPopup;
|
|
37
|
+
//# sourceMappingURL=DetailsPopup.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DetailsPopup.js","sourceRoot":"","sources":["../../../../../src/components/templates/Dashboard/Chart/DetailsPopup.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAC,IAAI,EAAC,MAAM,cAAc,CAAC;AAClC,OAAO,EAAC,IAAI,EAAC,MAAM,gBAAgB,CAAC;AACpC,OAAO,EAAC,KAAK,EAAC,MAAM,oBAAoB,CAAC;AACzC,OAAO,EAAC,eAAe,EAAC,MAAM,mBAAmB,CAAC;AAElD,MAAM,YAAY,GAAG,CAAC,EACpB,YAAY,EACZ,UAAU,EACV,UAAU,EACV,YAAY,EACZ,IAAI,GAOL,EAAE,EAAE;IACH,IAAI,YAAY,IAAI,IAAI,EAAE;QACxB,OAAO,IAAI,CAAC;KACb;IAED,OAAO,CACL,CAAC,KAAK,CACJ,OAAO,CAAC,CAAC,YAAY,CAAC,CACtB,UAAU,CAAC,CAAC,UAAU,CAAC,CACvB,KAAK,CAAC,CAAC,UAAU,CAAC,cAAc,CAAC,CAAC,CAClC,mBAAmB,CAAC,CAAC;YACnB,OAAO,EAAE,UAAU;SACpB,CAAC,CACF;MAAA,CAAC,IAAI,CACH;QAAA,CAAC,IAAI,CAAC,CAAC,GAAG,UAAU,CAAC,YAAY,CAAC,KAChC,YAAY,CAAC,KAAK,IAAI,YAAY,CAAC,KACrC,EAAE,CAAC,EAAE,IAAI,CACT;QAAA,CAAC,IAAI,CAAC,CAAC,GAAG,UAAU,CAAC,YAAY,CAAC,KAAK,YAAY,CAAC,KAAK,IACvD,eAAe,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAC/B,EAAE,CAAC,EAAE,IAAI,CACX;MAAA,EAAE,IAAI,CACR;IAAA,EAAE,KAAK,CAAC,CACT,CAAC;AACJ,CAAC,CAAC;AAEF,eAAe,YAAY,CAAC"}
|
|
@@ -6,6 +6,7 @@ interface IndicatorChartProps {
|
|
|
6
6
|
datasets: Data[];
|
|
7
7
|
title?: string;
|
|
8
8
|
hideCardBackground?: boolean;
|
|
9
|
+
translator: (translationKey: string) => string;
|
|
9
10
|
}
|
|
10
|
-
declare const IndicatorChart: ({ style, widthGraph, datasets, title, hideCardBackground, }: IndicatorChartProps) => React.JSX.Element;
|
|
11
|
+
declare const IndicatorChart: ({ style, widthGraph, datasets, title, hideCardBackground, translator, }: IndicatorChartProps) => React.JSX.Element;
|
|
11
12
|
export default IndicatorChart;
|
|
@@ -15,14 +15,17 @@
|
|
|
15
15
|
* You should have received a copy of the GNU Affero General Public License
|
|
16
16
|
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|
17
17
|
*/
|
|
18
|
-
import React, { useMemo } from 'react';
|
|
18
|
+
import React, { useCallback, useMemo, useState } from 'react';
|
|
19
19
|
import { StyleSheet, Dimensions, View } from 'react-native';
|
|
20
20
|
import { Card } from '../../../../atoms';
|
|
21
21
|
import { MARGIN, getContainerMinWidth, getContainerWidth } from '../chart.helper';
|
|
22
22
|
import IndicatorItem from './IndicatorItem';
|
|
23
23
|
import SimpleIndicator from './SimpleIndicator';
|
|
24
24
|
import ChartTitle from './ChartTitle';
|
|
25
|
-
|
|
25
|
+
import DetailsPopup from '../DetailsPopup';
|
|
26
|
+
const IndicatorChart = ({ style, widthGraph = Dimensions.get('window').width, datasets, title, hideCardBackground = false, translator, }) => {
|
|
27
|
+
const [selectedIndicator, setSelectedIndicator] = useState(null);
|
|
28
|
+
const [modalVisible, setModalVisible] = useState(false);
|
|
26
29
|
const Container = useMemo(() => (hideCardBackground ? View : Card), [hideCardBackground]);
|
|
27
30
|
const containerWidth = useMemo(() => {
|
|
28
31
|
return getContainerWidth(widthGraph);
|
|
@@ -30,19 +33,26 @@ const IndicatorChart = ({ style, widthGraph = Dimensions.get('window').width, da
|
|
|
30
33
|
const containerMinWidth = useMemo(() => {
|
|
31
34
|
return getContainerMinWidth();
|
|
32
35
|
}, []);
|
|
36
|
+
const handleIndicatorPress = useCallback(indicatorData => {
|
|
37
|
+
setSelectedIndicator(indicatorData);
|
|
38
|
+
setModalVisible(true);
|
|
39
|
+
}, []);
|
|
40
|
+
const closeModal = useCallback(() => {
|
|
41
|
+
setModalVisible(false);
|
|
42
|
+
}, []);
|
|
33
43
|
const renderIndicator = useMemo(() => {
|
|
34
44
|
if (datasets?.length === 1) {
|
|
35
45
|
const data = datasets[0];
|
|
36
46
|
return (<>
|
|
37
|
-
<SimpleIndicator title={data.title} icon={data.icon} color={data.color} unit={data.unit} value={data.value}/>
|
|
47
|
+
<SimpleIndicator title={data.title} icon={data.icon} color={data.color} unit={data.unit} value={data.value} onPress={() => handleIndicatorPress(data)}/>
|
|
38
48
|
<ChartTitle title={title} align/>
|
|
39
49
|
</>);
|
|
40
50
|
}
|
|
41
51
|
return (<>
|
|
42
52
|
<ChartTitle title={title} style={styles.groupTitle}/>
|
|
43
|
-
{datasets.map((data, idx) => (<IndicatorItem key={idx} title={data.title} icon={data.icon} color={data.color} unit={data.unit} value={data.value}/>))}
|
|
53
|
+
{datasets.map((data, idx) => (<IndicatorItem key={idx} title={data.title} icon={data.icon} color={data.color} unit={data.unit} value={data.value} onPress={() => handleIndicatorPress(data)}/>))}
|
|
44
54
|
</>);
|
|
45
|
-
}, [datasets, title]);
|
|
55
|
+
}, [datasets, title, handleIndicatorPress]);
|
|
46
56
|
if (!Array.isArray(datasets) || datasets.length === 0) {
|
|
47
57
|
return null;
|
|
48
58
|
}
|
|
@@ -52,6 +62,7 @@ const IndicatorChart = ({ style, widthGraph = Dimensions.get('window').width, da
|
|
|
52
62
|
style,
|
|
53
63
|
]}>
|
|
54
64
|
{renderIndicator}
|
|
65
|
+
<DetailsPopup closeModal={closeModal} modalVisible={modalVisible} selectedItem={selectedIndicator} unit={selectedIndicator?.unit} translator={translator}/>
|
|
55
66
|
</Container>);
|
|
56
67
|
};
|
|
57
68
|
const styles = StyleSheet.create({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"IndicatorChart.js","sourceRoot":"","sources":["../../../../../../src/components/templates/Dashboard/Chart/IndicatorChart/IndicatorChart.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,KAAK,EAAE,EAAC,OAAO,EAAC,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"IndicatorChart.js","sourceRoot":"","sources":["../../../../../../src/components/templates/Dashboard/Chart/IndicatorChart/IndicatorChart.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,KAAK,EAAE,EAAC,WAAW,EAAE,OAAO,EAAE,QAAQ,EAAC,MAAM,OAAO,CAAC;AAC5D,OAAO,EAAC,UAAU,EAAE,UAAU,EAAE,IAAI,EAAC,MAAM,cAAc,CAAC;AAC1D,OAAO,EAAC,IAAI,EAAC,MAAM,mBAAmB,CAAC;AAEvC,OAAO,EAAC,MAAM,EAAE,oBAAoB,EAAE,iBAAiB,EAAC,MAAM,iBAAiB,CAAC;AAChF,OAAO,aAAa,MAAM,iBAAiB,CAAC;AAC5C,OAAO,eAAe,MAAM,mBAAmB,CAAC;AAChD,OAAO,UAAU,MAAM,cAAc,CAAC;AACtC,OAAO,YAAY,MAAM,iBAAiB,CAAC;AAW3C,MAAM,cAAc,GAAG,CAAC,EACtB,KAAK,EACL,UAAU,GAAG,UAAU,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,KAAK,EAC3C,QAAQ,EACR,KAAK,EACL,kBAAkB,GAAG,KAAK,EAC1B,UAAU,GACU,EAAE,EAAE;IACxB,MAAM,CAAC,iBAAiB,EAAE,oBAAoB,CAAC,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC;IACjE,MAAM,CAAC,YAAY,EAAE,eAAe,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAExD,MAAM,SAAS,GAAG,OAAO,CACvB,GAAG,EAAE,CAAC,CAAC,kBAAkB,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,EACxC,CAAC,kBAAkB,CAAC,CACrB,CAAC;IAEF,MAAM,cAAc,GAAG,OAAO,CAAC,GAAG,EAAE;QAClC,OAAO,iBAAiB,CAAC,UAAU,CAAC,CAAC;IACvC,CAAC,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC;IAEjB,MAAM,iBAAiB,GAAG,OAAO,CAAC,GAAG,EAAE;QACrC,OAAO,oBAAoB,EAAE,CAAC;IAChC,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,MAAM,oBAAoB,GAAG,WAAW,CAAC,aAAa,CAAC,EAAE;QACvD,oBAAoB,CAAC,aAAa,CAAC,CAAC;QACpC,eAAe,CAAC,IAAI,CAAC,CAAC;IACxB,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,MAAM,UAAU,GAAG,WAAW,CAAC,GAAG,EAAE;QAClC,eAAe,CAAC,KAAK,CAAC,CAAC;IACzB,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,MAAM,eAAe,GAAG,OAAO,CAAC,GAAG,EAAE;QACnC,IAAI,QAAQ,EAAE,MAAM,KAAK,CAAC,EAAE;YAC1B,MAAM,IAAI,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;YACzB,OAAO,CACL,EACE;UAAA,CAAC,eAAe,CACd,KAAK,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAClB,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAChB,KAAK,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAClB,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAChB,KAAK,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAClB,OAAO,CAAC,CAAC,GAAG,EAAE,CAAC,oBAAoB,CAAC,IAAI,CAAC,CAAC,EAE5C;UAAA,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC,KAAK,EACjC;QAAA,GAAG,CACJ,CAAC;SACH;QAED,OAAO,CACL,EACE;QAAA,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,EACnD;QAAA,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,GAAG,EAAE,EAAE,CAAC,CAC3B,CAAC,aAAa,CACZ,GAAG,CAAC,CAAC,GAAG,CAAC,CACT,KAAK,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAClB,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAChB,KAAK,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAClB,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAChB,KAAK,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAClB,OAAO,CAAC,CAAC,GAAG,EAAE,CAAC,oBAAoB,CAAC,IAAI,CAAC,CAAC,EAC1C,CACH,CAAC,CACJ;MAAA,GAAG,CACJ,CAAC;IACJ,CAAC,EAAE,CAAC,QAAQ,EAAE,KAAK,EAAE,oBAAoB,CAAC,CAAC,CAAC;IAE5C,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE;QACrD,OAAO,IAAI,CAAC;KACb;IAED,OAAO,CACL,CAAC,SAAS,CACR,KAAK,CAAC,CAAC;YACL,MAAM,CAAC,SAAS;YAChB,EAAC,KAAK,EAAE,cAAc,EAAE,QAAQ,EAAE,iBAAiB,EAAC;YACpD,KAAK;SACN,CAAC,CACF;MAAA,CAAC,eAAe,CAChB;MAAA,CAAC,YAAY,CACX,UAAU,CAAC,CAAC,UAAU,CAAC,CACvB,YAAY,CAAC,CAAC,YAAY,CAAC,CAC3B,YAAY,CAAC,CAAC,iBAAiB,CAAC,CAChC,IAAI,CAAC,CAAC,iBAAiB,EAAE,IAAI,CAAC,CAC9B,UAAU,CAAC,CAAC,UAAU,CAAC,EAE3B;IAAA,EAAE,SAAS,CAAC,CACb,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,MAAM,GAAG,UAAU,CAAC,MAAM,CAAC;IAC/B,SAAS,EAAE;QACT,MAAM,EAAE,MAAM;QACd,YAAY,EAAE,CAAC;QACf,WAAW,EAAE,CAAC;QACd,eAAe,EAAE,EAAE;QACnB,cAAc,EAAE,QAAQ;KACzB;IACD,UAAU,EAAE;QACV,gBAAgB,EAAE,EAAE;QACpB,YAAY,EAAE,EAAE;KACjB;CACF,CAAC,CAAC;AAEH,eAAe,cAAc,CAAC"}
|
|
@@ -5,6 +5,7 @@ interface IndicatorItemProps {
|
|
|
5
5
|
value: number;
|
|
6
6
|
unit: string;
|
|
7
7
|
title: string;
|
|
8
|
+
onPress?: () => void;
|
|
8
9
|
}
|
|
9
|
-
declare const IndicatorItem: ({ icon, color: _color, value, unit, title, }: IndicatorItemProps) => React.JSX.Element;
|
|
10
|
+
declare const IndicatorItem: ({ icon, color: _color, value, unit, title, onPress, }: IndicatorItemProps) => React.JSX.Element;
|
|
10
11
|
export default IndicatorItem;
|
|
@@ -16,12 +16,12 @@
|
|
|
16
16
|
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|
17
17
|
*/
|
|
18
18
|
import React, { useMemo } from 'react';
|
|
19
|
-
import { StyleSheet, View } from 'react-native';
|
|
19
|
+
import { StyleSheet, View, TouchableOpacity } from 'react-native';
|
|
20
20
|
import { useThemeColor } from '../../../../../theme';
|
|
21
21
|
import { Icon, Text } from '../../../../atoms';
|
|
22
22
|
import { TextUnit } from '../../../../molecules';
|
|
23
23
|
import { checkNullString, getCommonStyles, hexToRgb } from '../../../../../utils';
|
|
24
|
-
const IndicatorItem = ({ icon, color: _color, value, unit, title, }) => {
|
|
24
|
+
const IndicatorItem = ({ icon, color: _color, value, unit, title, onPress, }) => {
|
|
25
25
|
const Colors = useThemeColor();
|
|
26
26
|
const commonStyles = useMemo(() => getCommonStyles(Colors), [Colors]);
|
|
27
27
|
const isIcon = useMemo(() => !checkNullString(icon), [icon]);
|
|
@@ -35,7 +35,7 @@ const IndicatorItem = ({ icon, color: _color, value, unit, title, }) => {
|
|
|
35
35
|
}
|
|
36
36
|
return Colors.primaryColor;
|
|
37
37
|
}, [Colors, _color]);
|
|
38
|
-
return (<
|
|
38
|
+
return (<TouchableOpacity onPress={onPress} style={[
|
|
39
39
|
commonStyles.button,
|
|
40
40
|
styles.container,
|
|
41
41
|
{
|
|
@@ -52,7 +52,7 @@ const IndicatorItem = ({ icon, color: _color, value, unit, title, }) => {
|
|
|
52
52
|
<View style={styles.unit}>
|
|
53
53
|
<TextUnit unit={unit} value={value} fontSize={16} numberOfLines={2} defaultColor={true}/>
|
|
54
54
|
</View>
|
|
55
|
-
</
|
|
55
|
+
</TouchableOpacity>);
|
|
56
56
|
};
|
|
57
57
|
const styles = StyleSheet.create({
|
|
58
58
|
container: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"IndicatorItem.js","sourceRoot":"","sources":["../../../../../../src/components/templates/Dashboard/Chart/IndicatorChart/IndicatorItem.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,KAAK,EAAE,EAAC,OAAO,EAAC,MAAM,OAAO,CAAC;AACrC,OAAO,EAAC,UAAU,EAAE,IAAI,EAAC,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"IndicatorItem.js","sourceRoot":"","sources":["../../../../../../src/components/templates/Dashboard/Chart/IndicatorChart/IndicatorItem.tsx"],"names":[],"mappings":"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"}
|
|
@@ -5,6 +5,7 @@ interface SimpleIndicatorProps {
|
|
|
5
5
|
value: number;
|
|
6
6
|
unit: string;
|
|
7
7
|
title: string;
|
|
8
|
+
onPress?: () => void;
|
|
8
9
|
}
|
|
9
|
-
declare const SimpleIndicator: ({ icon, color: _color, value, unit, title, }: SimpleIndicatorProps) => React.JSX.Element;
|
|
10
|
+
declare const SimpleIndicator: ({ icon, color: _color, value, unit, title, onPress, }: SimpleIndicatorProps) => React.JSX.Element;
|
|
10
11
|
export default SimpleIndicator;
|
|
@@ -16,12 +16,12 @@
|
|
|
16
16
|
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|
17
17
|
*/
|
|
18
18
|
import React, { useMemo } from 'react';
|
|
19
|
-
import { StyleSheet, View } from 'react-native';
|
|
19
|
+
import { StyleSheet, TouchableOpacity, View } from 'react-native';
|
|
20
20
|
import { useThemeColor } from '../../../../../theme';
|
|
21
21
|
import { Icon, Text } from '../../../../atoms';
|
|
22
22
|
import { TextUnit } from '../../../../molecules';
|
|
23
23
|
import { checkNullString, hexToRgb } from '../../../../../utils';
|
|
24
|
-
const SimpleIndicator = ({ icon, color: _color, value, unit, title, }) => {
|
|
24
|
+
const SimpleIndicator = ({ icon, color: _color, value, unit, title, onPress, }) => {
|
|
25
25
|
const Colors = useThemeColor();
|
|
26
26
|
const isIcon = useMemo(() => !checkNullString(icon), [icon]);
|
|
27
27
|
const color = useMemo(() => {
|
|
@@ -34,7 +34,7 @@ const SimpleIndicator = ({ icon, color: _color, value, unit, title, }) => {
|
|
|
34
34
|
}
|
|
35
35
|
return Colors.primaryColor;
|
|
36
36
|
}, [Colors, _color]);
|
|
37
|
-
return (<
|
|
37
|
+
return (<TouchableOpacity onPress={onPress} style={styles.container}>
|
|
38
38
|
<Icon size={30} name={icon} visible={isIcon}/>
|
|
39
39
|
<View style={[
|
|
40
40
|
styles.titleContainer,
|
|
@@ -45,7 +45,7 @@ const SimpleIndicator = ({ icon, color: _color, value, unit, title, }) => {
|
|
|
45
45
|
{title}
|
|
46
46
|
</Text>
|
|
47
47
|
</View>
|
|
48
|
-
</
|
|
48
|
+
</TouchableOpacity>);
|
|
49
49
|
};
|
|
50
50
|
const styles = StyleSheet.create({
|
|
51
51
|
container: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SimpleIndicator.js","sourceRoot":"","sources":["../../../../../../src/components/templates/Dashboard/Chart/IndicatorChart/SimpleIndicator.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,KAAK,EAAE,EAAC,OAAO,EAAC,MAAM,OAAO,CAAC;AACrC,OAAO,EAAC,UAAU,EAAE,IAAI,EAAC,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"SimpleIndicator.js","sourceRoot":"","sources":["../../../../../../src/components/templates/Dashboard/Chart/IndicatorChart/SimpleIndicator.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,KAAK,EAAE,EAAC,OAAO,EAAC,MAAM,OAAO,CAAC;AACrC,OAAO,EAAC,UAAU,EAAE,gBAAgB,EAAE,IAAI,EAAC,MAAM,cAAc,CAAC;AAChE,OAAO,EAAQ,aAAa,EAAC,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAAC,IAAI,EAAE,IAAI,EAAC,MAAM,mBAAmB,CAAC;AAC7C,OAAO,EAAC,QAAQ,EAAC,MAAM,uBAAuB,CAAC;AAC/C,OAAO,EAAC,eAAe,EAAE,QAAQ,EAAC,MAAM,sBAAsB,CAAC;AAW/D,MAAM,eAAe,GAAG,CAAC,EACvB,IAAI,EACJ,KAAK,EAAE,MAAM,EACb,KAAK,EACL,IAAI,EACJ,KAAK,EACL,OAAO,GACc,EAAE,EAAE;IACzB,MAAM,MAAM,GAAG,aAAa,EAAE,CAAC;IAE/B,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC,eAAe,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC;IAC7D,MAAM,KAAK,GAAU,OAAO,CAAC,GAAG,EAAE;QAChC,IAAI,MAAM,IAAI,IAAI,EAAE;YAClB,OAAO;gBACL,UAAU,EAAE,MAAM;gBAClB,gBAAgB,EAAE,QAAQ,QAAQ,CAAC,MAAM,CAAC,QAAQ;gBAClD,UAAU,EAAE,MAAM,CAAC,IAAI;aACxB,CAAC;SACH;QAED,OAAO,MAAM,CAAC,YAAY,CAAC;IAC7B,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;IAErB,OAAO,CACL,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,CAC1D;MAAA,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,EAC5C;MAAA,CAAC,IAAI,CACH,KAAK,CAAC,CAAC;YACL,MAAM,CAAC,cAAc;YACrB,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK;SACxC,CAAC,CACF;QAAA,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,EACjD;QAAA,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,IAAI,MAAM,CAAC,SAAS,CAAC,CACzD;UAAA,CAAC,KAAK,CACR;QAAA,EAAE,IAAI,CACR;MAAA,EAAE,IAAI,CACR;IAAA,EAAE,gBAAgB,CAAC,CACpB,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,MAAM,GAAG,UAAU,CAAC,MAAM,CAAC;IAC/B,SAAS,EAAE;QACT,aAAa,EAAE,KAAK;QACpB,cAAc,EAAE,cAAc;KAC/B;IACD,cAAc,EAAE;QACd,aAAa,EAAE,QAAQ;QACvB,SAAS,EAAE,QAAQ;KACpB;IACD,KAAK,EAAE;QACL,UAAU,EAAE,QAAQ;KACrB;IACD,QAAQ,EAAE;QACR,KAAK,EAAE,KAAK;QACZ,WAAW,EAAE,CAAC;KACf;IACD,SAAS,EAAE;QACT,SAAS,EAAE,QAAQ;KACpB;CACF,CAAC,CAAC;AAEH,eAAe,eAAe,CAAC"}
|
|
@@ -9,6 +9,7 @@ interface LineChartProps {
|
|
|
9
9
|
rotateLabel?: boolean;
|
|
10
10
|
title?: string;
|
|
11
11
|
hideCardBackground?: boolean;
|
|
12
|
+
translator: (translationKey: string) => string;
|
|
12
13
|
}
|
|
13
|
-
declare const LineChart: ({ style, widthGraph, datasets, spacing, backgroundColor, title, rotateLabel, hideCardBackground, }: LineChartProps) => React.JSX.Element;
|
|
14
|
+
declare const LineChart: ({ style, widthGraph, datasets, spacing, backgroundColor, title, rotateLabel, hideCardBackground, translator, }: LineChartProps) => React.JSX.Element;
|
|
14
15
|
export default LineChart;
|
|
@@ -15,15 +15,18 @@
|
|
|
15
15
|
* You should have received a copy of the GNU Affero General Public License
|
|
16
16
|
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|
17
17
|
*/
|
|
18
|
-
import React, { useMemo } from 'react';
|
|
18
|
+
import React, { useCallback, useMemo, useState } from 'react';
|
|
19
19
|
import { StyleSheet, View } from 'react-native';
|
|
20
20
|
import { LineChart as RNLineChart } from 'react-native-gifted-charts';
|
|
21
21
|
import { useThemeColor } from '../../../../theme';
|
|
22
22
|
import { Card, Text } from '../../../atoms';
|
|
23
23
|
import { checkNullString } from '../../../../utils';
|
|
24
24
|
import { MARGIN, getContainerMinWidth, getContainerWidth, initLineData, } from './chart.helper';
|
|
25
|
-
|
|
25
|
+
import DetailsPopup from './DetailsPopup';
|
|
26
|
+
const LineChart = ({ style, widthGraph, datasets, spacing, backgroundColor, title, rotateLabel = true, hideCardBackground = false, translator, }) => {
|
|
26
27
|
const Colors = useThemeColor();
|
|
28
|
+
const [selectedPoint, setSelectedPoint] = useState(null);
|
|
29
|
+
const [modalVisible, setModalVisible] = useState(false);
|
|
27
30
|
const chartProps = useMemo(() => {
|
|
28
31
|
return initLineData(datasets, rotateLabel, spacing, Colors);
|
|
29
32
|
}, [Colors, datasets, rotateLabel, spacing]);
|
|
@@ -46,6 +49,13 @@ const LineChart = ({ style, widthGraph, datasets, spacing, backgroundColor, titl
|
|
|
46
49
|
return Math.max(containerWidth / datasets?.[0]?.length, 20);
|
|
47
50
|
}, [containerWidth, datasets, spacing]);
|
|
48
51
|
const Container = hideCardBackground ? View : Card;
|
|
52
|
+
const handlePointPress = useCallback(pointData => {
|
|
53
|
+
setSelectedPoint(pointData);
|
|
54
|
+
setModalVisible(true);
|
|
55
|
+
}, []);
|
|
56
|
+
const closeModal = useCallback(() => {
|
|
57
|
+
setModalVisible(false);
|
|
58
|
+
}, []);
|
|
49
59
|
return (<Container style={[
|
|
50
60
|
styles.container,
|
|
51
61
|
{ width: containerWidth, minWidth: containerMinWidth },
|
|
@@ -53,8 +63,9 @@ const LineChart = ({ style, widthGraph, datasets, spacing, backgroundColor, titl
|
|
|
53
63
|
]}>
|
|
54
64
|
<RNLineChart width={_graphWidth} yAxisTextStyle={{
|
|
55
65
|
color: Colors.secondaryColor_dark.background,
|
|
56
|
-
}} xAxisLabelTextStyle={{ color: Colors.secondaryColor_dark.background }} initialSpacing={_spacing / 2} spacing={_spacing} endSpacing={_spacing} isAnimated={true} backgroundColor={backgroundColor} {...chartProps}/>
|
|
66
|
+
}} xAxisLabelTextStyle={{ color: Colors.secondaryColor_dark.background }} initialSpacing={_spacing / 2} spacing={_spacing} endSpacing={_spacing} isAnimated={true} backgroundColor={backgroundColor} {...chartProps} onPress={handlePointPress}/>
|
|
57
67
|
{!checkNullString(title) && <Text style={styles.title}>{title}</Text>}
|
|
68
|
+
<DetailsPopup closeModal={closeModal} modalVisible={modalVisible} selectedItem={selectedPoint} translator={translator}/>
|
|
58
69
|
</Container>);
|
|
59
70
|
};
|
|
60
71
|
const getStyles = rotateLabel => StyleSheet.create({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LineChart.js","sourceRoot":"","sources":["../../../../../src/components/templates/Dashboard/Chart/LineChart.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,KAAK,EAAE,EAAC,OAAO,EAAC,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"LineChart.js","sourceRoot":"","sources":["../../../../../src/components/templates/Dashboard/Chart/LineChart.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,KAAK,EAAE,EAAC,WAAW,EAAE,OAAO,EAAE,QAAQ,EAAC,MAAM,OAAO,CAAC;AAC5D,OAAO,EAAC,UAAU,EAAE,IAAI,EAAC,MAAM,cAAc,CAAC;AAC9C,OAAO,EAAC,SAAS,IAAI,WAAW,EAAC,MAAM,4BAA4B,CAAC;AACpE,OAAO,EAAC,aAAa,EAAC,MAAM,mBAAmB,CAAC;AAChD,OAAO,EAAC,IAAI,EAAE,IAAI,EAAC,MAAM,gBAAgB,CAAC;AAC1C,OAAO,EAAC,eAAe,EAAC,MAAM,mBAAmB,CAAC;AAElD,OAAO,EACL,MAAM,EACN,oBAAoB,EACpB,iBAAiB,EACjB,YAAY,GACb,MAAM,gBAAgB,CAAC;AACxB,OAAO,YAAY,MAAM,gBAAgB,CAAC;AAc1C,MAAM,SAAS,GAAG,CAAC,EACjB,KAAK,EACL,UAAU,EACV,QAAQ,EACR,OAAO,EACP,eAAe,EACf,KAAK,EACL,WAAW,GAAG,IAAI,EAClB,kBAAkB,GAAG,KAAK,EAC1B,UAAU,GACK,EAAE,EAAE;IACnB,MAAM,MAAM,GAAG,aAAa,EAAE,CAAC;IAE/B,MAAM,CAAC,aAAa,EAAE,gBAAgB,CAAC,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC;IACzD,MAAM,CAAC,YAAY,EAAE,eAAe,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAExD,MAAM,UAAU,GAAG,OAAO,CAAC,GAAG,EAAE;QAC9B,OAAO,YAAY,CAAC,QAAQ,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;IAC9D,CAAC,EAAE,CAAC,MAAM,EAAE,QAAQ,EAAE,WAAW,EAAE,OAAO,CAAC,CAAC,CAAC;IAE7C,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,EAAE;QAC1B,OAAO,SAAS,CAAC,WAAW,CAAC,CAAC;IAChC,CAAC,EAAE,CAAC,WAAW,CAAC,CAAC,CAAC;IAElB,MAAM,cAAc,GAAG,OAAO,CAAC,GAAG,EAAE;QAClC,OAAO,iBAAiB,CAAC,UAAU,CAAC,CAAC;IACvC,CAAC,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC;IAEjB,MAAM,iBAAiB,GAAG,OAAO,CAAC,GAAG,EAAE;QACrC,OAAO,oBAAoB,EAAE,CAAC;IAChC,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,MAAM,WAAW,GAAG,OAAO,CAAC,GAAG,EAAE;QAC/B,OAAO,cAAc,GAAG,EAAE,CAAC;IAC7B,CAAC,EAAE,CAAC,cAAc,CAAC,CAAC,CAAC;IAErB,MAAM,QAAQ,GAAG,OAAO,CAAC,GAAG,EAAE;QAC5B,IAAI,OAAO,IAAI,IAAI,EAAE;YACnB,OAAO,OAAO,CAAC;SAChB;QAED,OAAO,IAAI,CAAC,GAAG,CAAC,cAAc,GAAG,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,EAAE,CAAC,CAAC;IAC9D,CAAC,EAAE,CAAC,cAAc,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC,CAAC;IAExC,MAAM,SAAS,GAAG,kBAAkB,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC;IAEnD,MAAM,gBAAgB,GAAG,WAAW,CAAC,SAAS,CAAC,EAAE;QAC/C,gBAAgB,CAAC,SAAS,CAAC,CAAC;QAC5B,eAAe,CAAC,IAAI,CAAC,CAAC;IACxB,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,MAAM,UAAU,GAAG,WAAW,CAAC,GAAG,EAAE;QAClC,eAAe,CAAC,KAAK,CAAC,CAAC;IACzB,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,OAAO,CACL,CAAC,SAAS,CACR,KAAK,CAAC,CAAC;YACL,MAAM,CAAC,SAAS;YAChB,EAAC,KAAK,EAAE,cAAc,EAAE,QAAQ,EAAE,iBAAiB,EAAC;YACpD,KAAK;SACN,CAAC,CACF;MAAA,CAAC,WAAW,CACV,KAAK,CAAC,CAAC,WAAW,CAAC,CACnB,cAAc,CAAC,CAAC;YACd,KAAK,EAAE,MAAM,CAAC,mBAAmB,CAAC,UAAU;SAC7C,CAAC,CACF,mBAAmB,CAAC,CAAC,EAAC,KAAK,EAAE,MAAM,CAAC,mBAAmB,CAAC,UAAU,EAAC,CAAC,CACpE,cAAc,CAAC,CAAC,QAAQ,GAAG,CAAC,CAAC,CAC7B,OAAO,CAAC,CAAC,QAAQ,CAAC,CAClB,UAAU,CAAC,CAAC,QAAQ,CAAC,CACrB,UAAU,CAAC,CAAC,IAAI,CAAC,CACjB,eAAe,CAAC,CAAC,eAAe,CAAC,CACjC,IAAI,UAAU,CAAC,CACf,OAAO,CAAC,CAAC,gBAAgB,CAAC,EAE5B;MAAA,CAAC,CAAC,eAAe,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,IAAI,CAAC,CACrE;MAAA,CAAC,YAAY,CACX,UAAU,CAAC,CAAC,UAAU,CAAC,CACvB,YAAY,CAAC,CAAC,YAAY,CAAC,CAC3B,YAAY,CAAC,CAAC,aAAa,CAAC,CAC5B,UAAU,CAAC,CAAC,UAAU,CAAC,EAE3B;IAAA,EAAE,SAAS,CAAC,CACb,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,SAAS,GAAG,WAAW,CAAC,EAAE,CAC9B,UAAU,CAAC,MAAM,CAAC;IAChB,SAAS,EAAE;QACT,MAAM,EAAE,MAAM;QACd,iBAAiB,EAAE,CAAC;QACpB,YAAY,EAAE,CAAC;QACf,eAAe,EAAE,EAAE;QACnB,QAAQ,EAAE,QAAQ;KACnB;IACD,KAAK,EAAE;QACL,SAAS,EAAE,WAAW,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;QAC/B,SAAS,EAAE,QAAQ;QACnB,SAAS,EAAE,QAAQ;KACpB;CACF,CAAC,CAAC;AAEL,eAAe,SAAS,CAAC"}
|
|
@@ -16,7 +16,7 @@ interface DashboardProps {
|
|
|
16
16
|
hideCardBackground?: boolean;
|
|
17
17
|
/** Formatted last update date */
|
|
18
18
|
lastUpdate?: Date;
|
|
19
|
-
translator
|
|
19
|
+
translator: (translationKey: string) => string;
|
|
20
20
|
displayLastUpdate?: boolean;
|
|
21
21
|
chartWidth?: number;
|
|
22
22
|
}
|
|
@@ -49,7 +49,7 @@ const Dashboard = ({ style, lineList, hideCardBackground = false, translator, la
|
|
|
49
49
|
widthGraph,
|
|
50
50
|
});
|
|
51
51
|
}
|
|
52
|
-
return (<ChartRender key={indexGraph} dataList={dataList} title={title} type={type} widthGraph={widthGraph} hideCardBackground={hideCardBackground}/>);
|
|
52
|
+
return (<ChartRender key={indexGraph} dataList={dataList} title={title} type={type} widthGraph={widthGraph} hideCardBackground={hideCardBackground} translator={translator}/>);
|
|
53
53
|
})}
|
|
54
54
|
</View>);
|
|
55
55
|
})}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Dashboard.js","sourceRoot":"","sources":["../../../../src/components/templates/Dashboard/Dashboard.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,KAAqB,MAAM,OAAO,CAAC;AAC1C,OAAO,EAAC,UAAU,EAAE,UAAU,EAAE,IAAI,EAAC,MAAM,cAAc,CAAC;AAC1D,OAAO,EAAC,UAAU,EAAE,IAAI,EAAC,MAAM,aAAa,CAAC;AAE7C,OAAO,EAEL,qBAAqB,IAAI,kBAAkB,GAC5C,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAC,WAAW,EAAC,MAAM,SAAS,CAAC;AAwBpC,MAAM,aAAa,GAAG,CAAC,UAAkB,EAAE,aAAqB,EAAE,EAAE;IAClE,IAAI,UAAU,EAAE;QACd,OAAO,UAAU,CAAC;KACnB;SAAM,IAAI,aAAa,KAAK,CAAC,EAAE;QAC9B,OAAO,UAAU,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,KAAK,CAAC;KACvC;SAAM,IAAI,UAAU,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,KAAK,GAAG,GAAG,EAAE;QAC/C,OAAO,UAAU,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC;KAC3C;SAAM;QACL,OAAO,UAAU,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,KAAK,GAAG,aAAa,CAAC;KACvD;AACH,CAAC,CAAC;AAEF,MAAM,SAAS,GAAG,CAAC,EACjB,KAAK,EACL,QAAQ,EACR,kBAAkB,GAAG,KAAK,EAC1B,UAAU,EACV,UAAU,EACV,iBAAiB,GAAG,KAAK,EACzB,UAAU,GAAG,IAAI,GACF,EAAE,EAAE;IACnB,OAAO,CACL,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC,CAC3C;MAAA,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC,IAAI,EAAE,SAAS,EAAE,EAAE;YACjC,MAAM,WAAW,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,CACvC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,MAAM,GAAG,CAAC,IAAI,KAAK,CAAC,WAAW,IAAI,IAAI,CACtE,CAAC;YACF,MAAM,aAAa,GAAG,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,MAAM,EAAE,kBAAkB,CAAC,CAAC;YACvE,MAAM,UAAU,GAAG,aAAa,CAAC,UAAU,EAAE,aAAa,CAAC,CAAC;YAE5D,MAAM,gBAAgB,GAAG,WAAW,EAAE,KAAK,CAAC,CAAC,EAAE,aAAa,CAAC,CAAC;YAE9D,OAAO,CACL,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,GAAG,CAAC,CAAC,SAAS,CAAC,CAChD;YAAA,CAAC,gBAAgB,EAAE,GAAG,CACpB,CAAC,EAAC,WAAW,EAAE,QAAQ,EAAE,KAAK,EAAE,IAAI,EAAC,EAAE,UAAU,EAAE,EAAE;oBACnD,IAAI,WAAW,IAAI,IAAI,EAAE;wBACvB,OAAO,KAAK,CAAC,YAAY,CAAC,WAAW,EAAE;4BACrC,GAAG,EAAE,UAAU;4BACf,UAAU;yBACX,CAAC,CAAC;qBACJ;oBAED,OAAO,CACL,CAAC,WAAW,CACV,GAAG,CAAC,CAAC,UAAU,CAAC,CAChB,QAAQ,CAAC,CAAC,QAAQ,CAAC,CACnB,KAAK,CAAC,CAAC,KAAK,CAAC,CACb,IAAI,CAAC,CAAC,IAAI,CAAC,CACX,UAAU,CAAC,CAAC,UAAU,CAAC,CACvB,kBAAkB,CAAC,CAAC,kBAAkB,CAAC,
|
|
1
|
+
{"version":3,"file":"Dashboard.js","sourceRoot":"","sources":["../../../../src/components/templates/Dashboard/Dashboard.tsx"],"names":[],"mappings":"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"}
|