@pagopa/io-app-design-system 1.13.0 → 1.13.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/lib/commonjs/components/layout/HeaderFirstLevel.js +9 -6
- package/lib/commonjs/components/layout/HeaderFirstLevel.js.map +1 -1
- package/lib/commonjs/components/loadingSpinner/LoadingSpinner.js +17 -5
- package/lib/commonjs/components/loadingSpinner/LoadingSpinner.js.map +1 -1
- package/lib/module/components/layout/HeaderFirstLevel.js +9 -6
- package/lib/module/components/layout/HeaderFirstLevel.js.map +1 -1
- package/lib/module/components/loadingSpinner/LoadingSpinner.js +17 -5
- package/lib/module/components/loadingSpinner/LoadingSpinner.js.map +1 -1
- package/lib/typescript/components/layout/HeaderFirstLevel.d.ts +2 -1
- package/lib/typescript/components/layout/HeaderFirstLevel.d.ts.map +1 -1
- package/lib/typescript/components/loadingSpinner/LoadingSpinner.d.ts +4 -4
- package/lib/typescript/components/loadingSpinner/LoadingSpinner.d.ts.map +1 -1
- package/package.json +1 -1
- package/src/components/layout/HeaderFirstLevel.tsx +28 -6
- package/src/components/loadingSpinner/LoadingSpinner.tsx +78 -74
|
@@ -14,7 +14,8 @@ var _buttons = require("../buttons");
|
|
|
14
14
|
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
15
15
|
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
16
16
|
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); }
|
|
17
|
-
const
|
|
17
|
+
const HEADER_BG_COLOR_LIGHT = "white";
|
|
18
|
+
const HEADER_BG_COLOR_DARK = "bluegrey";
|
|
18
19
|
const styles = _reactNative.StyleSheet.create({
|
|
19
20
|
headerInner: {
|
|
20
21
|
paddingHorizontal: _core.IOVisualCostants.appMarginDefault,
|
|
@@ -30,6 +31,7 @@ const HeaderFirstLevel = _ref => {
|
|
|
30
31
|
title,
|
|
31
32
|
type,
|
|
32
33
|
testID,
|
|
34
|
+
backgroundColor = "light",
|
|
33
35
|
firstAction,
|
|
34
36
|
secondAction,
|
|
35
37
|
thirdAction
|
|
@@ -38,7 +40,7 @@ const HeaderFirstLevel = _ref => {
|
|
|
38
40
|
return /*#__PURE__*/React.createElement(_reactNative.View, {
|
|
39
41
|
style: {
|
|
40
42
|
paddingTop: insets.top,
|
|
41
|
-
backgroundColor: _core.IOColors[
|
|
43
|
+
backgroundColor: backgroundColor === "light" ? _core.IOColors[HEADER_BG_COLOR_LIGHT] : _core.IOColors[HEADER_BG_COLOR_DARK]
|
|
42
44
|
},
|
|
43
45
|
accessibilityRole: "header",
|
|
44
46
|
testID: testID
|
|
@@ -48,21 +50,22 @@ const HeaderFirstLevel = _ref => {
|
|
|
48
50
|
style: {
|
|
49
51
|
flexShrink: 1
|
|
50
52
|
},
|
|
51
|
-
numberOfLines: 1
|
|
53
|
+
numberOfLines: 1,
|
|
54
|
+
color: backgroundColor === "dark" ? "white" : undefined
|
|
52
55
|
}, title), /*#__PURE__*/React.createElement(_reactNative.View, {
|
|
53
56
|
style: [_core.IOStyles.row, {
|
|
54
57
|
flexShrink: 0
|
|
55
58
|
}]
|
|
56
59
|
}, type === "threeActions" && /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(_buttons.IconButton, _extends({}, thirdAction, {
|
|
57
|
-
color: "neutral"
|
|
60
|
+
color: backgroundColor === "dark" ? "contrast" : "neutral"
|
|
58
61
|
})), /*#__PURE__*/React.createElement(_spacer.HSpacer, {
|
|
59
62
|
size: 16
|
|
60
63
|
})), (type === "twoActions" || type === "threeActions") && /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(_buttons.IconButton, _extends({}, secondAction, {
|
|
61
|
-
color: "neutral"
|
|
64
|
+
color: backgroundColor === "dark" ? "contrast" : "neutral"
|
|
62
65
|
})), /*#__PURE__*/React.createElement(_spacer.HSpacer, {
|
|
63
66
|
size: 16
|
|
64
67
|
})), type !== "base" && /*#__PURE__*/React.createElement(_buttons.IconButton, _extends({}, firstAction, {
|
|
65
|
-
color: "neutral"
|
|
68
|
+
color: backgroundColor === "dark" ? "contrast" : "neutral"
|
|
66
69
|
})))));
|
|
67
70
|
};
|
|
68
71
|
exports.HeaderFirstLevel = HeaderFirstLevel;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","_interopRequireWildcard","require","_reactNative","_reactNativeSafeAreaContext","_core","_typography","_spacer","_buttons","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","default","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","_extends","assign","bind","target","i","arguments","length","source","apply","
|
|
1
|
+
{"version":3,"names":["React","_interopRequireWildcard","require","_reactNative","_reactNativeSafeAreaContext","_core","_typography","_spacer","_buttons","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","default","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","_extends","assign","bind","target","i","arguments","length","source","apply","HEADER_BG_COLOR_LIGHT","HEADER_BG_COLOR_DARK","styles","StyleSheet","create","headerInner","paddingHorizontal","IOVisualCostants","appMarginDefault","height","headerHeight","width","flexDirection","alignItems","justifyContent","HeaderFirstLevel","_ref","title","type","testID","backgroundColor","firstAction","secondAction","thirdAction","insets","useSafeAreaInsets","createElement","View","style","paddingTop","top","IOColors","accessibilityRole","H3","flexShrink","numberOfLines","color","undefined","IOStyles","row","Fragment","IconButton","HSpacer","size","exports","_default"],"sourceRoot":"../../../../src","sources":["components/layout/HeaderFirstLevel.tsx"],"mappings":"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"}
|
|
@@ -15,6 +15,11 @@ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj &&
|
|
|
15
15
|
* It will be removed in the future.
|
|
16
16
|
*/
|
|
17
17
|
|
|
18
|
+
const strokeMap = {
|
|
19
|
+
24: 3,
|
|
20
|
+
48: 6,
|
|
21
|
+
76: 9
|
|
22
|
+
};
|
|
18
23
|
const startRotationAnimation = (durationMs, rotationDegree) => {
|
|
19
24
|
_reactNative.Animated.loop(_reactNative.Animated.timing(rotationDegree, {
|
|
20
25
|
toValue: 360,
|
|
@@ -26,21 +31,28 @@ const startRotationAnimation = (durationMs, rotationDegree) => {
|
|
|
26
31
|
const LoadingSpinner = _ref => {
|
|
27
32
|
let {
|
|
28
33
|
color = "blueIO-500",
|
|
29
|
-
stroke = 3,
|
|
30
34
|
size = 24,
|
|
31
|
-
durationMs = 750
|
|
35
|
+
durationMs = 750,
|
|
36
|
+
accessibilityHint,
|
|
37
|
+
accessibilityLabel,
|
|
38
|
+
testID = "LoadingSpinnerTestID"
|
|
32
39
|
} = _ref;
|
|
33
40
|
const rotationDegree = (0, _react.useRef)(new _reactNative.Animated.Value(0)).current;
|
|
41
|
+
const stroke = strokeMap[size];
|
|
34
42
|
(0, _react.useEffect)(() => {
|
|
35
43
|
startRotationAnimation(durationMs, rotationDegree);
|
|
36
44
|
}, [durationMs, rotationDegree]);
|
|
37
|
-
return /*#__PURE__*/_react.default.createElement(
|
|
45
|
+
return /*#__PURE__*/_react.default.createElement(_reactNative.View, {
|
|
38
46
|
style: {
|
|
39
47
|
width: size,
|
|
40
48
|
height: size
|
|
41
49
|
},
|
|
50
|
+
accessible: true,
|
|
42
51
|
accessibilityRole: "progressbar",
|
|
43
|
-
|
|
52
|
+
accessibilityHint: accessibilityHint,
|
|
53
|
+
accessibilityLabel: accessibilityLabel,
|
|
54
|
+
importantForAccessibility: "no-hide-descendants",
|
|
55
|
+
testID: testID
|
|
44
56
|
}, /*#__PURE__*/_react.default.createElement(_reactNative.Animated.View, {
|
|
45
57
|
testID: "LoadingSpinnerAnimatedTestID",
|
|
46
58
|
style: {
|
|
@@ -88,7 +100,7 @@ const LoadingSpinner = _ref => {
|
|
|
88
100
|
stroke: _core.IOColors[color],
|
|
89
101
|
strokeLinecap: "round",
|
|
90
102
|
d: `M ${stroke / 2} ${size / 2} A ${size / 2 - stroke / 2} ${size / 2 - stroke / 2} 0 0 1 ${stroke / 2} ${size / 2 - stroke / 4}`
|
|
91
|
-
})))))
|
|
103
|
+
})))));
|
|
92
104
|
};
|
|
93
105
|
exports.LoadingSpinner = LoadingSpinner;
|
|
94
106
|
//# sourceMappingURL=LoadingSpinner.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_react","_interopRequireWildcard","require","_reactNative","_reactNativeSvg","_core","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","default","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","startRotationAnimation","durationMs","rotationDegree","Animated","loop","timing","toValue","duration","easing","Easing","linear","useNativeDriver","start","LoadingSpinner","_ref","color","
|
|
1
|
+
{"version":3,"names":["_react","_interopRequireWildcard","require","_reactNative","_reactNativeSvg","_core","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","default","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","strokeMap","startRotationAnimation","durationMs","rotationDegree","Animated","loop","timing","toValue","duration","easing","Easing","linear","useNativeDriver","start","LoadingSpinner","_ref","color","size","accessibilityHint","accessibilityLabel","testID","useRef","Value","current","stroke","useEffect","createElement","View","style","width","height","accessible","accessibilityRole","importantForAccessibility","transform","rotateZ","interpolate","inputRange","outputRange","viewBox","fill","Defs","LinearGradient","id","Stop","offset","stopOpacity","stopColor","IOColors","G","strokeWidth","Path","d","strokeLinecap","exports"],"sourceRoot":"../../../../src","sources":["components/loadingSpinner/LoadingSpinner.tsx"],"mappings":"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"}
|
|
@@ -6,7 +6,8 @@ import { IOStyles, IOVisualCostants, IOColors } from "../../core";
|
|
|
6
6
|
import { H3 } from "../typography";
|
|
7
7
|
import { HSpacer } from "../spacer";
|
|
8
8
|
import { IconButton } from "../buttons";
|
|
9
|
-
const
|
|
9
|
+
const HEADER_BG_COLOR_LIGHT = "white";
|
|
10
|
+
const HEADER_BG_COLOR_DARK = "bluegrey";
|
|
10
11
|
const styles = StyleSheet.create({
|
|
11
12
|
headerInner: {
|
|
12
13
|
paddingHorizontal: IOVisualCostants.appMarginDefault,
|
|
@@ -22,6 +23,7 @@ export const HeaderFirstLevel = _ref => {
|
|
|
22
23
|
title,
|
|
23
24
|
type,
|
|
24
25
|
testID,
|
|
26
|
+
backgroundColor = "light",
|
|
25
27
|
firstAction,
|
|
26
28
|
secondAction,
|
|
27
29
|
thirdAction
|
|
@@ -30,7 +32,7 @@ export const HeaderFirstLevel = _ref => {
|
|
|
30
32
|
return /*#__PURE__*/React.createElement(View, {
|
|
31
33
|
style: {
|
|
32
34
|
paddingTop: insets.top,
|
|
33
|
-
backgroundColor: IOColors[
|
|
35
|
+
backgroundColor: backgroundColor === "light" ? IOColors[HEADER_BG_COLOR_LIGHT] : IOColors[HEADER_BG_COLOR_DARK]
|
|
34
36
|
},
|
|
35
37
|
accessibilityRole: "header",
|
|
36
38
|
testID: testID
|
|
@@ -40,21 +42,22 @@ export const HeaderFirstLevel = _ref => {
|
|
|
40
42
|
style: {
|
|
41
43
|
flexShrink: 1
|
|
42
44
|
},
|
|
43
|
-
numberOfLines: 1
|
|
45
|
+
numberOfLines: 1,
|
|
46
|
+
color: backgroundColor === "dark" ? "white" : undefined
|
|
44
47
|
}, title), /*#__PURE__*/React.createElement(View, {
|
|
45
48
|
style: [IOStyles.row, {
|
|
46
49
|
flexShrink: 0
|
|
47
50
|
}]
|
|
48
51
|
}, type === "threeActions" && /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(IconButton, _extends({}, thirdAction, {
|
|
49
|
-
color: "neutral"
|
|
52
|
+
color: backgroundColor === "dark" ? "contrast" : "neutral"
|
|
50
53
|
})), /*#__PURE__*/React.createElement(HSpacer, {
|
|
51
54
|
size: 16
|
|
52
55
|
})), (type === "twoActions" || type === "threeActions") && /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(IconButton, _extends({}, secondAction, {
|
|
53
|
-
color: "neutral"
|
|
56
|
+
color: backgroundColor === "dark" ? "contrast" : "neutral"
|
|
54
57
|
})), /*#__PURE__*/React.createElement(HSpacer, {
|
|
55
58
|
size: 16
|
|
56
59
|
})), type !== "base" && /*#__PURE__*/React.createElement(IconButton, _extends({}, firstAction, {
|
|
57
|
-
color: "neutral"
|
|
60
|
+
color: backgroundColor === "dark" ? "contrast" : "neutral"
|
|
58
61
|
})))));
|
|
59
62
|
};
|
|
60
63
|
export default HeaderFirstLevel;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","View","StyleSheet","useSafeAreaInsets","IOStyles","IOVisualCostants","IOColors","H3","HSpacer","IconButton","
|
|
1
|
+
{"version":3,"names":["React","View","StyleSheet","useSafeAreaInsets","IOStyles","IOVisualCostants","IOColors","H3","HSpacer","IconButton","HEADER_BG_COLOR_LIGHT","HEADER_BG_COLOR_DARK","styles","create","headerInner","paddingHorizontal","appMarginDefault","height","headerHeight","width","flexDirection","alignItems","justifyContent","HeaderFirstLevel","_ref","title","type","testID","backgroundColor","firstAction","secondAction","thirdAction","insets","createElement","style","paddingTop","top","accessibilityRole","flexShrink","numberOfLines","color","undefined","row","Fragment","_extends","size"],"sourceRoot":"../../../../src","sources":["components/layout/HeaderFirstLevel.tsx"],"mappings":"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"}
|
|
@@ -8,6 +8,11 @@ import { IOColors } from "../../core";
|
|
|
8
8
|
* It will be removed in the future.
|
|
9
9
|
*/
|
|
10
10
|
|
|
11
|
+
const strokeMap = {
|
|
12
|
+
24: 3,
|
|
13
|
+
48: 6,
|
|
14
|
+
76: 9
|
|
15
|
+
};
|
|
11
16
|
const startRotationAnimation = (durationMs, rotationDegree) => {
|
|
12
17
|
Animated.loop(Animated.timing(rotationDegree, {
|
|
13
18
|
toValue: 360,
|
|
@@ -19,21 +24,28 @@ const startRotationAnimation = (durationMs, rotationDegree) => {
|
|
|
19
24
|
export const LoadingSpinner = _ref => {
|
|
20
25
|
let {
|
|
21
26
|
color = "blueIO-500",
|
|
22
|
-
stroke = 3,
|
|
23
27
|
size = 24,
|
|
24
|
-
durationMs = 750
|
|
28
|
+
durationMs = 750,
|
|
29
|
+
accessibilityHint,
|
|
30
|
+
accessibilityLabel,
|
|
31
|
+
testID = "LoadingSpinnerTestID"
|
|
25
32
|
} = _ref;
|
|
26
33
|
const rotationDegree = useRef(new Animated.Value(0)).current;
|
|
34
|
+
const stroke = strokeMap[size];
|
|
27
35
|
useEffect(() => {
|
|
28
36
|
startRotationAnimation(durationMs, rotationDegree);
|
|
29
37
|
}, [durationMs, rotationDegree]);
|
|
30
|
-
return /*#__PURE__*/React.createElement(
|
|
38
|
+
return /*#__PURE__*/React.createElement(View, {
|
|
31
39
|
style: {
|
|
32
40
|
width: size,
|
|
33
41
|
height: size
|
|
34
42
|
},
|
|
43
|
+
accessible: true,
|
|
35
44
|
accessibilityRole: "progressbar",
|
|
36
|
-
|
|
45
|
+
accessibilityHint: accessibilityHint,
|
|
46
|
+
accessibilityLabel: accessibilityLabel,
|
|
47
|
+
importantForAccessibility: "no-hide-descendants",
|
|
48
|
+
testID: testID
|
|
37
49
|
}, /*#__PURE__*/React.createElement(Animated.View, {
|
|
38
50
|
testID: "LoadingSpinnerAnimatedTestID",
|
|
39
51
|
style: {
|
|
@@ -81,6 +93,6 @@ export const LoadingSpinner = _ref => {
|
|
|
81
93
|
stroke: IOColors[color],
|
|
82
94
|
strokeLinecap: "round",
|
|
83
95
|
d: `M ${stroke / 2} ${size / 2} A ${size / 2 - stroke / 2} ${size / 2 - stroke / 2} 0 0 1 ${stroke / 2} ${size / 2 - stroke / 4}`
|
|
84
|
-
})))))
|
|
96
|
+
})))));
|
|
85
97
|
};
|
|
86
98
|
//# sourceMappingURL=LoadingSpinner.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","useEffect","useRef","View","Animated","Easing","Svg","Defs","G","LinearGradient","Path","Stop","IOColors","startRotationAnimation","durationMs","rotationDegree","loop","timing","toValue","duration","easing","linear","useNativeDriver","start","LoadingSpinner","_ref","color","
|
|
1
|
+
{"version":3,"names":["React","useEffect","useRef","View","Animated","Easing","Svg","Defs","G","LinearGradient","Path","Stop","IOColors","strokeMap","startRotationAnimation","durationMs","rotationDegree","loop","timing","toValue","duration","easing","linear","useNativeDriver","start","LoadingSpinner","_ref","color","size","accessibilityHint","accessibilityLabel","testID","Value","current","stroke","createElement","style","width","height","accessible","accessibilityRole","importantForAccessibility","transform","rotateZ","interpolate","inputRange","outputRange","viewBox","fill","id","offset","stopOpacity","stopColor","strokeWidth","d","strokeLinecap"],"sourceRoot":"../../../../src","sources":["components/loadingSpinner/LoadingSpinner.tsx"],"mappings":"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"}
|
|
@@ -3,6 +3,7 @@ import { WithTestID } from "../../utils/types";
|
|
|
3
3
|
import { ActionProp } from "./common";
|
|
4
4
|
type CommonProps = WithTestID<{
|
|
5
5
|
title: string;
|
|
6
|
+
backgroundColor?: "light" | "dark";
|
|
6
7
|
}>;
|
|
7
8
|
interface Base extends CommonProps {
|
|
8
9
|
type: "base";
|
|
@@ -29,6 +30,6 @@ interface ThreeActions extends CommonProps {
|
|
|
29
30
|
thirdAction: ActionProp;
|
|
30
31
|
}
|
|
31
32
|
export type HeaderFirstLevel = Base | OneAction | TwoActions | ThreeActions;
|
|
32
|
-
export declare const HeaderFirstLevel: ({ title, type, testID, firstAction, secondAction, thirdAction }: HeaderFirstLevel) => React.JSX.Element;
|
|
33
|
+
export declare const HeaderFirstLevel: ({ title, type, testID, backgroundColor, firstAction, secondAction, thirdAction }: HeaderFirstLevel) => React.JSX.Element;
|
|
33
34
|
export default HeaderFirstLevel;
|
|
34
35
|
//# sourceMappingURL=HeaderFirstLevel.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"HeaderFirstLevel.d.ts","sourceRoot":"","sources":["../../../../src/components/layout/HeaderFirstLevel.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAG/B,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAK/C,OAAO,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AAEtC,KAAK,WAAW,GAAG,UAAU,CAAC;IAC5B,KAAK,EAAE,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"HeaderFirstLevel.d.ts","sourceRoot":"","sources":["../../../../src/components/layout/HeaderFirstLevel.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAG/B,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAK/C,OAAO,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AAEtC,KAAK,WAAW,GAAG,UAAU,CAAC;IAC5B,KAAK,EAAE,MAAM,CAAC;IAEd,eAAe,CAAC,EAAE,OAAO,GAAG,MAAM,CAAC;CACpC,CAAC,CAAC;AAEH,UAAU,IAAK,SAAQ,WAAW;IAChC,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,CAAC,EAAE,KAAK,CAAC;IACpB,YAAY,CAAC,EAAE,KAAK,CAAC;IACrB,WAAW,CAAC,EAAE,KAAK,CAAC;CACrB;AAED,UAAU,SAAU,SAAQ,WAAW;IACrC,IAAI,EAAE,cAAc,CAAC;IACrB,WAAW,EAAE,UAAU,CAAC;IACxB,YAAY,CAAC,EAAE,KAAK,CAAC;IACrB,WAAW,CAAC,EAAE,KAAK,CAAC;CACrB;AAED,UAAU,UAAW,SAAQ,WAAW;IACtC,IAAI,EAAE,YAAY,CAAC;IACnB,WAAW,EAAE,UAAU,CAAC;IACxB,YAAY,EAAE,UAAU,CAAC;IACzB,WAAW,CAAC,EAAE,KAAK,CAAC;CACrB;AAED,UAAU,YAAa,SAAQ,WAAW;IACxC,IAAI,EAAE,cAAc,CAAC;IACrB,WAAW,EAAE,UAAU,CAAC;IACxB,YAAY,EAAE,UAAU,CAAC;IACzB,WAAW,EAAE,UAAU,CAAC;CACzB;AAED,MAAM,MAAM,gBAAgB,GAAG,IAAI,GAAG,SAAS,GAAG,UAAU,GAAG,YAAY,CAAC;AAgB5E,eAAO,MAAM,gBAAgB,qFAQ1B,gBAAgB,sBAuDlB,CAAC;AAEF,eAAe,gBAAgB,CAAC"}
|
|
@@ -1,17 +1,17 @@
|
|
|
1
1
|
import React from "react";
|
|
2
2
|
import { WithTestID } from "../../utils/types";
|
|
3
3
|
import { IOColors } from "../../core";
|
|
4
|
-
type
|
|
4
|
+
export type LoadingSpinner = WithTestID<{
|
|
5
5
|
color?: IOColors;
|
|
6
|
-
stroke?: number;
|
|
7
6
|
size?: IOLoadingSpinnerSizeScale;
|
|
8
7
|
durationMs?: number;
|
|
8
|
+
accessibilityLabel?: string;
|
|
9
|
+
accessibilityHint?: string;
|
|
9
10
|
}>;
|
|
10
11
|
/**
|
|
11
12
|
* Size scale, 76 is kept for backward compatibility with the old design system but 48 is enough for the new one.
|
|
12
13
|
* It will be removed in the future.
|
|
13
14
|
*/
|
|
14
15
|
export type IOLoadingSpinnerSizeScale = 24 | 48 | 76;
|
|
15
|
-
export declare const LoadingSpinner: ({ color,
|
|
16
|
-
export {};
|
|
16
|
+
export declare const LoadingSpinner: ({ color, size, durationMs, accessibilityHint, accessibilityLabel, testID }: LoadingSpinner) => React.ReactElement;
|
|
17
17
|
//# sourceMappingURL=LoadingSpinner.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LoadingSpinner.d.ts","sourceRoot":"","sources":["../../../../src/components/loadingSpinner/LoadingSpinner.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA4B,MAAM,OAAO,CAAC;AAGjD,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAC/C,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAEtC,
|
|
1
|
+
{"version":3,"file":"LoadingSpinner.d.ts","sourceRoot":"","sources":["../../../../src/components/loadingSpinner/LoadingSpinner.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA4B,MAAM,OAAO,CAAC;AAGjD,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAC/C,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAEtC,MAAM,MAAM,cAAc,GAAG,UAAU,CAAC;IACtC,KAAK,CAAC,EAAE,QAAQ,CAAC;IACjB,IAAI,CAAC,EAAE,yBAAyB,CAAC;IACjC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,iBAAiB,CAAC,EAAE,MAAM,CAAC;CAC5B,CAAC,CAAC;AAEH;;;GAGG;AACH,MAAM,MAAM,yBAAyB,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC;AAsBrD,eAAO,MAAM,cAAc,+EAOxB,cAAc,KAAG,MAAM,YA6EzB,CAAC"}
|
package/package.json
CHANGED
|
@@ -10,6 +10,8 @@ import { ActionProp } from "./common";
|
|
|
10
10
|
|
|
11
11
|
type CommonProps = WithTestID<{
|
|
12
12
|
title: string;
|
|
13
|
+
// This Prop will be removed once all the screens on the first level routing will be refactored
|
|
14
|
+
backgroundColor?: "light" | "dark";
|
|
13
15
|
}>;
|
|
14
16
|
|
|
15
17
|
interface Base extends CommonProps {
|
|
@@ -42,7 +44,8 @@ interface ThreeActions extends CommonProps {
|
|
|
42
44
|
|
|
43
45
|
export type HeaderFirstLevel = Base | OneAction | TwoActions | ThreeActions;
|
|
44
46
|
|
|
45
|
-
const
|
|
47
|
+
const HEADER_BG_COLOR_LIGHT: IOColors = "white";
|
|
48
|
+
const HEADER_BG_COLOR_DARK: IOColors = "bluegrey";
|
|
46
49
|
|
|
47
50
|
const styles = StyleSheet.create({
|
|
48
51
|
headerInner: {
|
|
@@ -59,6 +62,7 @@ export const HeaderFirstLevel = ({
|
|
|
59
62
|
title,
|
|
60
63
|
type,
|
|
61
64
|
testID,
|
|
65
|
+
backgroundColor = "light",
|
|
62
66
|
firstAction,
|
|
63
67
|
secondAction,
|
|
64
68
|
thirdAction
|
|
@@ -69,19 +73,29 @@ export const HeaderFirstLevel = ({
|
|
|
69
73
|
<View
|
|
70
74
|
style={{
|
|
71
75
|
paddingTop: insets.top,
|
|
72
|
-
backgroundColor:
|
|
76
|
+
backgroundColor:
|
|
77
|
+
backgroundColor === "light"
|
|
78
|
+
? IOColors[HEADER_BG_COLOR_LIGHT]
|
|
79
|
+
: IOColors[HEADER_BG_COLOR_DARK]
|
|
73
80
|
}}
|
|
74
81
|
accessibilityRole="header"
|
|
75
82
|
testID={testID}
|
|
76
83
|
>
|
|
77
84
|
<View style={styles.headerInner}>
|
|
78
|
-
<H3
|
|
85
|
+
<H3
|
|
86
|
+
style={{ flexShrink: 1 }}
|
|
87
|
+
numberOfLines={1}
|
|
88
|
+
color={backgroundColor === "dark" ? "white" : undefined}
|
|
89
|
+
>
|
|
79
90
|
{title}
|
|
80
91
|
</H3>
|
|
81
92
|
<View style={[IOStyles.row, { flexShrink: 0 }]}>
|
|
82
93
|
{type === "threeActions" && (
|
|
83
94
|
<>
|
|
84
|
-
<IconButton
|
|
95
|
+
<IconButton
|
|
96
|
+
{...thirdAction}
|
|
97
|
+
color={backgroundColor === "dark" ? "contrast" : "neutral"}
|
|
98
|
+
/>
|
|
85
99
|
{/* Ideally, with the "gap" flex property,
|
|
86
100
|
we can get rid of these ugly constructs */}
|
|
87
101
|
<HSpacer size={16} />
|
|
@@ -89,12 +103,20 @@ export const HeaderFirstLevel = ({
|
|
|
89
103
|
)}
|
|
90
104
|
{(type === "twoActions" || type === "threeActions") && (
|
|
91
105
|
<>
|
|
92
|
-
<IconButton
|
|
106
|
+
<IconButton
|
|
107
|
+
{...secondAction}
|
|
108
|
+
color={backgroundColor === "dark" ? "contrast" : "neutral"}
|
|
109
|
+
/>
|
|
93
110
|
{/* Same as above */}
|
|
94
111
|
<HSpacer size={16} />
|
|
95
112
|
</>
|
|
96
113
|
)}
|
|
97
|
-
{type !== "base" &&
|
|
114
|
+
{type !== "base" && (
|
|
115
|
+
<IconButton
|
|
116
|
+
{...firstAction}
|
|
117
|
+
color={backgroundColor === "dark" ? "contrast" : "neutral"}
|
|
118
|
+
/>
|
|
119
|
+
)}
|
|
98
120
|
</View>
|
|
99
121
|
</View>
|
|
100
122
|
</View>
|
|
@@ -4,11 +4,12 @@ import Svg, { Defs, G, LinearGradient, Path, Stop } from "react-native-svg";
|
|
|
4
4
|
import { WithTestID } from "../../utils/types";
|
|
5
5
|
import { IOColors } from "../../core";
|
|
6
6
|
|
|
7
|
-
type
|
|
7
|
+
export type LoadingSpinner = WithTestID<{
|
|
8
8
|
color?: IOColors;
|
|
9
|
-
stroke?: number;
|
|
10
9
|
size?: IOLoadingSpinnerSizeScale;
|
|
11
10
|
durationMs?: number;
|
|
11
|
+
accessibilityLabel?: string;
|
|
12
|
+
accessibilityHint?: string;
|
|
12
13
|
}>;
|
|
13
14
|
|
|
14
15
|
/**
|
|
@@ -17,6 +18,12 @@ type Props = WithTestID<{
|
|
|
17
18
|
*/
|
|
18
19
|
export type IOLoadingSpinnerSizeScale = 24 | 48 | 76;
|
|
19
20
|
|
|
21
|
+
const strokeMap: Record<NonNullable<LoadingSpinner["size"]>, number> = {
|
|
22
|
+
24: 3,
|
|
23
|
+
48: 6,
|
|
24
|
+
76: 9
|
|
25
|
+
};
|
|
26
|
+
|
|
20
27
|
const startRotationAnimation = (
|
|
21
28
|
durationMs: number,
|
|
22
29
|
rotationDegree: Animated.Value
|
|
@@ -33,89 +40,86 @@ const startRotationAnimation = (
|
|
|
33
40
|
|
|
34
41
|
export const LoadingSpinner = ({
|
|
35
42
|
color = "blueIO-500",
|
|
36
|
-
stroke = 3,
|
|
37
43
|
size = 24,
|
|
38
|
-
durationMs = 750
|
|
39
|
-
|
|
44
|
+
durationMs = 750,
|
|
45
|
+
accessibilityHint,
|
|
46
|
+
accessibilityLabel,
|
|
47
|
+
testID = "LoadingSpinnerTestID"
|
|
48
|
+
}: LoadingSpinner): React.ReactElement => {
|
|
40
49
|
const rotationDegree = useRef(new Animated.Value(0)).current;
|
|
50
|
+
const stroke: number = strokeMap[size];
|
|
41
51
|
|
|
42
52
|
useEffect(() => {
|
|
43
53
|
startRotationAnimation(durationMs, rotationDegree);
|
|
44
54
|
}, [durationMs, rotationDegree]);
|
|
45
55
|
|
|
46
56
|
return (
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
57
|
+
<View
|
|
58
|
+
style={{ width: size, height: size }}
|
|
59
|
+
accessible={true}
|
|
60
|
+
accessibilityRole="progressbar"
|
|
61
|
+
accessibilityHint={accessibilityHint}
|
|
62
|
+
accessibilityLabel={accessibilityLabel}
|
|
63
|
+
importantForAccessibility={"no-hide-descendants"}
|
|
64
|
+
testID={testID}
|
|
65
|
+
>
|
|
66
|
+
<Animated.View
|
|
67
|
+
testID={"LoadingSpinnerAnimatedTestID"}
|
|
68
|
+
style={{
|
|
69
|
+
transform: [
|
|
70
|
+
{
|
|
71
|
+
rotateZ: rotationDegree.interpolate({
|
|
72
|
+
inputRange: [0, 360],
|
|
73
|
+
outputRange: ["0deg", "360deg"]
|
|
74
|
+
})
|
|
75
|
+
}
|
|
76
|
+
]
|
|
77
|
+
}}
|
|
52
78
|
>
|
|
53
|
-
|
|
54
|
-
testID={"LoadingSpinnerAnimatedTestID"}
|
|
55
|
-
style={{
|
|
56
|
-
transform: [
|
|
57
|
-
{
|
|
58
|
-
rotateZ: rotationDegree.interpolate({
|
|
59
|
-
inputRange: [0, 360],
|
|
60
|
-
outputRange: ["0deg", "360deg"]
|
|
61
|
-
})
|
|
62
|
-
}
|
|
63
|
-
]
|
|
64
|
-
}}
|
|
65
|
-
>
|
|
66
|
-
{/* Thanks to Ben Ilegbodu for the article on how to
|
|
79
|
+
{/* Thanks to Ben Ilegbodu for the article on how to
|
|
67
80
|
create a a SVG gradient loading spinner. Below is
|
|
68
|
-
a parameterized version of his
|
|
81
|
+
a parameterized version of his code.
|
|
69
82
|
Source: https://www.benmvp.com/blog/how-to-create-circle-svg-gradient-loading-spinner/ */}
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
<Stop offset="0%" stopOpacity="1" stopColor={IOColors[color]} />
|
|
87
|
-
<Stop
|
|
88
|
-
offset="100%"
|
|
89
|
-
stopOpacity="1"
|
|
90
|
-
stopColor={IOColors[color]}
|
|
91
|
-
/>
|
|
92
|
-
</LinearGradient>
|
|
93
|
-
</Defs>
|
|
83
|
+
<Svg
|
|
84
|
+
width={size}
|
|
85
|
+
height={size}
|
|
86
|
+
viewBox={`0 0 ${size} ${size}`}
|
|
87
|
+
fill="none"
|
|
88
|
+
>
|
|
89
|
+
<Defs>
|
|
90
|
+
<LinearGradient id="spinner-secondHalf">
|
|
91
|
+
<Stop offset="0%" stopOpacity="0" stopColor={IOColors[color]} />
|
|
92
|
+
<Stop offset="100%" stopOpacity="1" stopColor={IOColors[color]} />
|
|
93
|
+
</LinearGradient>
|
|
94
|
+
<LinearGradient id="spinner-firstHalf">
|
|
95
|
+
<Stop offset="0%" stopOpacity="1" stopColor={IOColors[color]} />
|
|
96
|
+
<Stop offset="100%" stopOpacity="1" stopColor={IOColors[color]} />
|
|
97
|
+
</LinearGradient>
|
|
98
|
+
</Defs>
|
|
94
99
|
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
</>
|
|
100
|
+
<G strokeWidth={stroke}>
|
|
101
|
+
<Path
|
|
102
|
+
stroke="url(#spinner-secondHalf)"
|
|
103
|
+
d={`M ${stroke / 2} ${size / 2} A ${size / 2 - stroke / 2} ${
|
|
104
|
+
size / 2 - stroke / 2
|
|
105
|
+
} 0 0 1 ${size - stroke / 2} ${size / 2}`}
|
|
106
|
+
/>
|
|
107
|
+
<Path
|
|
108
|
+
stroke="url(#spinner-firstHalf)"
|
|
109
|
+
d={`M ${size - stroke / 2} ${size / 2} A ${
|
|
110
|
+
size / 2 - stroke / 2
|
|
111
|
+
} ${size / 2 - stroke / 2} 0 0 1 ${stroke / 2} ${size / 2}`}
|
|
112
|
+
/>
|
|
113
|
+
<Path
|
|
114
|
+
stroke={IOColors[color]}
|
|
115
|
+
strokeLinecap="round"
|
|
116
|
+
d={`M ${stroke / 2} ${size / 2} A ${size / 2 - stroke / 2} ${
|
|
117
|
+
size / 2 - stroke / 2
|
|
118
|
+
} 0 0 1 ${stroke / 2} ${size / 2 - stroke / 4}`}
|
|
119
|
+
/>
|
|
120
|
+
</G>
|
|
121
|
+
</Svg>
|
|
122
|
+
</Animated.View>
|
|
123
|
+
</View>
|
|
120
124
|
);
|
|
121
125
|
};
|