@fluentui-react-native/experimental-shimmer 0.10.0 → 0.10.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/CHANGELOG.json +33 -3
- package/CHANGELOG.md +18 -2
- package/lib/Shimmer.d.ts.map +1 -1
- package/lib/Shimmer.js +7 -4
- package/lib/Shimmer.js.map +1 -1
- package/lib/Shimmer.win32.d.ts.map +1 -1
- package/lib/Shimmer.win32.js +23 -7
- package/lib/Shimmer.win32.js.map +1 -1
- package/lib-commonjs/Shimmer.d.ts.map +1 -1
- package/lib-commonjs/Shimmer.js +7 -4
- package/lib-commonjs/Shimmer.js.map +1 -1
- package/lib-commonjs/Shimmer.win32.d.ts.map +1 -1
- package/lib-commonjs/Shimmer.win32.js +22 -6
- package/lib-commonjs/Shimmer.win32.js.map +1 -1
- package/package.json +1 -1
- package/src/Shimmer.tsx +7 -4
- package/src/Shimmer.win32.tsx +29 -11
package/CHANGELOG.json
CHANGED
|
@@ -2,7 +2,37 @@
|
|
|
2
2
|
"name": "@fluentui-react-native/experimental-shimmer",
|
|
3
3
|
"entries": [
|
|
4
4
|
{
|
|
5
|
-
"date": "
|
|
5
|
+
"date": "Fri, 07 Jul 2023 19:45:04 GMT",
|
|
6
|
+
"tag": "@fluentui-react-native/experimental-shimmer_v0.10.2",
|
|
7
|
+
"version": "0.10.2",
|
|
8
|
+
"comments": {
|
|
9
|
+
"patch": [
|
|
10
|
+
{
|
|
11
|
+
"author": "patboyd@microsoft.com",
|
|
12
|
+
"package": "@fluentui-react-native/experimental-shimmer",
|
|
13
|
+
"commit": "1cf1863fd9d1a93eb5c806331b9c2a589279ac3a",
|
|
14
|
+
"comment": "Add special handling for shimmer colors that use OpaqueColorValue such as PlatformColor"
|
|
15
|
+
}
|
|
16
|
+
]
|
|
17
|
+
}
|
|
18
|
+
},
|
|
19
|
+
{
|
|
20
|
+
"date": "Wed, 21 Jun 2023 22:47:32 GMT",
|
|
21
|
+
"tag": "@fluentui-react-native/experimental-shimmer_v0.10.1",
|
|
22
|
+
"version": "0.10.1",
|
|
23
|
+
"comments": {
|
|
24
|
+
"patch": [
|
|
25
|
+
{
|
|
26
|
+
"author": "joannaquu@gmail.com",
|
|
27
|
+
"package": "@fluentui-react-native/experimental-shimmer",
|
|
28
|
+
"commit": "ae6f6796fbefbb529650fe27bdac75a5ea42e251",
|
|
29
|
+
"comment": "update Shimmer direction for rtl"
|
|
30
|
+
}
|
|
31
|
+
]
|
|
32
|
+
}
|
|
33
|
+
},
|
|
34
|
+
{
|
|
35
|
+
"date": "Mon, 12 Jun 2023 17:46:43 GMT",
|
|
6
36
|
"tag": "@fluentui-react-native/experimental-shimmer_v0.10.0",
|
|
7
37
|
"version": "0.10.0",
|
|
8
38
|
"comments": {
|
|
@@ -17,13 +47,13 @@
|
|
|
17
47
|
"author": "beachball",
|
|
18
48
|
"package": "@fluentui-react-native/experimental-shimmer",
|
|
19
49
|
"comment": "Bump @fluentui-react-native/framework to v0.11.0",
|
|
20
|
-
"commit": "
|
|
50
|
+
"commit": "6530042f4f24cbb296337a8bcf5fb32a09cc6378"
|
|
21
51
|
},
|
|
22
52
|
{
|
|
23
53
|
"author": "beachball",
|
|
24
54
|
"package": "@fluentui-react-native/experimental-shimmer",
|
|
25
55
|
"comment": "Bump @fluentui-react-native/use-styling to v0.11.0",
|
|
26
|
-
"commit": "
|
|
56
|
+
"commit": "6530042f4f24cbb296337a8bcf5fb32a09cc6378"
|
|
27
57
|
}
|
|
28
58
|
]
|
|
29
59
|
}
|
package/CHANGELOG.md
CHANGED
|
@@ -1,12 +1,28 @@
|
|
|
1
1
|
# Change Log - @fluentui-react-native/experimental-shimmer
|
|
2
2
|
|
|
3
|
-
This log was last generated on
|
|
3
|
+
This log was last generated on Fri, 07 Jul 2023 19:45:04 GMT and should not be manually modified.
|
|
4
4
|
|
|
5
5
|
<!-- Start content -->
|
|
6
6
|
|
|
7
|
+
## 0.10.2
|
|
8
|
+
|
|
9
|
+
Fri, 07 Jul 2023 19:45:04 GMT
|
|
10
|
+
|
|
11
|
+
### Patches
|
|
12
|
+
|
|
13
|
+
- Add special handling for shimmer colors that use OpaqueColorValue such as PlatformColor (patboyd@microsoft.com)
|
|
14
|
+
|
|
15
|
+
## 0.10.1
|
|
16
|
+
|
|
17
|
+
Wed, 21 Jun 2023 22:47:32 GMT
|
|
18
|
+
|
|
19
|
+
### Patches
|
|
20
|
+
|
|
21
|
+
- update Shimmer direction for rtl (joannaquu@gmail.com)
|
|
22
|
+
|
|
7
23
|
## 0.10.0
|
|
8
24
|
|
|
9
|
-
Mon, 12 Jun 2023 17:
|
|
25
|
+
Mon, 12 Jun 2023 17:46:43 GMT
|
|
10
26
|
|
|
11
27
|
### Minor changes
|
|
12
28
|
|
package/lib/Shimmer.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Shimmer.d.ts","sourceRoot":"","sources":["../src/Shimmer.tsx"],"names":[],"mappings":"AAYA,OAAO,KAAK,EAAE,YAAY,EAAe,MAAM,iBAAiB,CAAC;AAIjE,eAAO,MAAM,OAAO,
|
|
1
|
+
{"version":3,"file":"Shimmer.d.ts","sourceRoot":"","sources":["../src/Shimmer.tsx"],"names":[],"mappings":"AAYA,OAAO,KAAK,EAAE,YAAY,EAAe,MAAM,iBAAiB,CAAC;AAIjE,eAAO,MAAM,OAAO,yLAuHlB,CAAC"}
|
package/lib/Shimmer.js
CHANGED
|
@@ -64,11 +64,14 @@ export var Shimmer = compose(__assign(__assign({ displayName: shimmerName }, sty
|
|
|
64
64
|
* Different angles are handled by rotating this gradient.
|
|
65
65
|
* The startValue is used to control the start position of the gradient animation, it is set as -2 to make sure it is starts off the screen for any angle.
|
|
66
66
|
* Similarly the endValue is set to 3 to make sure the gradient animation exits the entire screen for any angle.
|
|
67
|
+
* In RTL, startValue and endValue are flipped to ensure that the animation moves from right to left.
|
|
67
68
|
*/
|
|
68
|
-
var startValue =
|
|
69
|
+
var startValue = I18nManager.isRTL ? 3 : -2;
|
|
70
|
+
var endValue = I18nManager.isRTL ? -2 : 3;
|
|
71
|
+
var x1 = useRef(new Animated.Value(startValue)).current;
|
|
69
72
|
var shimmerAnimation = useCallback(function () {
|
|
70
|
-
Animated.loop(Animated.timing(
|
|
71
|
-
toValue:
|
|
73
|
+
Animated.loop(Animated.timing(x1, {
|
|
74
|
+
toValue: endValue,
|
|
72
75
|
duration: memoizedShimmerData.duration,
|
|
73
76
|
delay: memoizedShimmerData.delay,
|
|
74
77
|
useNativeDriver: true,
|
|
@@ -100,7 +103,7 @@ export var Shimmer = compose(__assign(__assign({ displayName: shimmerName }, sty
|
|
|
100
103
|
: { translateX: undefined, scaleX: undefined };
|
|
101
104
|
return (withSlots(Slots.root, __assign({}, mergedProps),
|
|
102
105
|
withSlots(Defs, null,
|
|
103
|
-
withSlots(AnimatedLinearGradient, { id: "gradient", x1:
|
|
106
|
+
withSlots(AnimatedLinearGradient, { id: "gradient", x1: x1, x2: "-1", gradientTransform: "rotate(".concat(memoizedShimmerData.angle, ")") },
|
|
104
107
|
withSlots(Stop, { offset: "10%", stopColor: memoizedShimmerData.shimmerColor, stopOpacity: memoizedShimmerData.shimmerColorOpacity }),
|
|
105
108
|
withSlots(Stop, { offset: "20%", stopColor: memoizedShimmerData.shimmerWaveColor, stopOpacity: memoizedShimmerData.shimmerWaveColorOpacity }),
|
|
106
109
|
withSlots(Stop, { offset: "30%", stopColor: memoizedShimmerData.shimmerColor, stopOpacity: memoizedShimmerData.shimmerColorOpacity })),
|
package/lib/Shimmer.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Shimmer.js","sourceRoot":"","sources":["../src/Shimmer.tsx"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"Shimmer.js","sourceRoot":"","sources":["../src/Shimmer.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Shimmer.win32.d.ts","sourceRoot":"","sources":["../src/Shimmer.win32.tsx"],"names":[],"mappings":"AAaA,OAAO,KAAK,EAAuB,YAAY,EAAE,oBAAoB,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAC1H,YAAY,EAAE,oBAAoB,EAAE,kBAAkB,EAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"Shimmer.win32.d.ts","sourceRoot":"","sources":["../src/Shimmer.win32.tsx"],"names":[],"mappings":"AAaA,OAAO,KAAK,EAAuB,YAAY,EAAE,oBAAoB,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAC1H,YAAY,EAAE,oBAAoB,EAAE,kBAAkB,EAAE,CAAC;AAmFzD,eAAO,MAAM,OAAO,wLAwElB,CAAC"}
|
package/lib/Shimmer.win32.js
CHANGED
|
@@ -22,7 +22,7 @@ var __rest = (this && this.__rest) || function (s, e) {
|
|
|
22
22
|
};
|
|
23
23
|
/** @jsxRuntime classic */
|
|
24
24
|
/** @jsx withSlots */
|
|
25
|
-
import { View } from 'react-native';
|
|
25
|
+
import { processColor, View } from 'react-native';
|
|
26
26
|
import { compose, mergeProps } from '@fluentui-react-native/framework';
|
|
27
27
|
import { withSlots } from '@fluentui-react-native/framework';
|
|
28
28
|
import { assertNever } from 'assert-never';
|
|
@@ -61,12 +61,28 @@ var wave = function (props) {
|
|
|
61
61
|
viewBox: '0 0 ' + viewBoxWidth + ' ' + viewBoxHeight,
|
|
62
62
|
preserveAspectRatio: 'xMinYMin slice',
|
|
63
63
|
};
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
64
|
+
/**
|
|
65
|
+
* React-Native-SVG doesn't process opaque color values correctly for gradients, directly invoking `processColor`
|
|
66
|
+
* and squashing in the opacity value of the color stop. This handling scheme is incompatible with OpaqueColorValue type
|
|
67
|
+
* colors e.g. PlatformColor, and will show nothing. As a short-term solution, provide alternate non-gradient handling
|
|
68
|
+
* of the wave color as a solid color.
|
|
69
|
+
*/
|
|
70
|
+
if (typeof processColor(shimmerWaveColor) !== 'object' && typeof processColor(shimmerColor) !== 'object') {
|
|
71
|
+
// The typical path where the provided shimmer colors are not OpaqueColorValues.
|
|
72
|
+
return (withSlots(Svg, __assign({}, svgProps),
|
|
73
|
+
withSlots(LinearGradient, { id: "gradient" },
|
|
74
|
+
withSlots(Stop, { stopColor: shimmerColor, stopOpacity: shimmerColorOpacity }),
|
|
75
|
+
withSlots(Stop, { offset: "20%", stopColor: shimmerWaveColor, stopOpacity: shimmerWaveColorOpacity }),
|
|
76
|
+
withSlots(Stop, { offset: "40%", stopColor: shimmerColor, stopOpacity: shimmerColorOpacity })),
|
|
77
|
+
withSlots(Rect, { width: props.shimmerWaveWidth, height: "100%", fill: "url(#gradient)" })));
|
|
78
|
+
}
|
|
79
|
+
else {
|
|
80
|
+
// The unexpected path where either of the provided shimmer colors are OpaqueColorValues.
|
|
81
|
+
// scaleX is used to mimic the gradient occupying 40% of the fill since we don't know the provided width of the
|
|
82
|
+
// shimmer wave.
|
|
83
|
+
return (withSlots(Svg, __assign({}, svgProps),
|
|
84
|
+
withSlots(Rect, { width: props.shimmerWaveWidth, height: "100%", fill: shimmerWaveColor, fillOpacity: shimmerWaveColorOpacity, scaleX: "0.4" })));
|
|
85
|
+
}
|
|
70
86
|
};
|
|
71
87
|
var waveContainer = function (props) {
|
|
72
88
|
var shimmerColor = props.shimmerColor, viewBoxHeight = props.viewBoxHeight, viewBoxWidth = props.viewBoxWidth;
|
package/lib/Shimmer.win32.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Shimmer.win32.js","sourceRoot":"","sources":["../src/Shimmer.win32.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;AAAA,0BAA0B;AAC1B,qBAAqB;AACrB,OAAO,EAAE,IAAI,EAAE,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"Shimmer.win32.js","sourceRoot":"","sources":["../src/Shimmer.win32.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Shimmer.d.ts","sourceRoot":"","sources":["../src/Shimmer.tsx"],"names":[],"mappings":"AAYA,OAAO,KAAK,EAAE,YAAY,EAAe,MAAM,iBAAiB,CAAC;AAIjE,eAAO,MAAM,OAAO,
|
|
1
|
+
{"version":3,"file":"Shimmer.d.ts","sourceRoot":"","sources":["../src/Shimmer.tsx"],"names":[],"mappings":"AAYA,OAAO,KAAK,EAAE,YAAY,EAAe,MAAM,iBAAiB,CAAC;AAIjE,eAAO,MAAM,OAAO,yLAuHlB,CAAC"}
|
package/lib-commonjs/Shimmer.js
CHANGED
|
@@ -70,11 +70,14 @@ exports.Shimmer = (0, framework_1.compose)(__assign(__assign({ displayName: Shim
|
|
|
70
70
|
* Different angles are handled by rotating this gradient.
|
|
71
71
|
* The startValue is used to control the start position of the gradient animation, it is set as -2 to make sure it is starts off the screen for any angle.
|
|
72
72
|
* Similarly the endValue is set to 3 to make sure the gradient animation exits the entire screen for any angle.
|
|
73
|
+
* In RTL, startValue and endValue are flipped to ensure that the animation moves from right to left.
|
|
73
74
|
*/
|
|
74
|
-
var startValue =
|
|
75
|
+
var startValue = react_native_1.I18nManager.isRTL ? 3 : -2;
|
|
76
|
+
var endValue = react_native_1.I18nManager.isRTL ? -2 : 3;
|
|
77
|
+
var x1 = (0, react_1.useRef)(new react_native_1.Animated.Value(startValue)).current;
|
|
75
78
|
var shimmerAnimation = (0, react_1.useCallback)(function () {
|
|
76
|
-
react_native_1.Animated.loop(react_native_1.Animated.timing(
|
|
77
|
-
toValue:
|
|
79
|
+
react_native_1.Animated.loop(react_native_1.Animated.timing(x1, {
|
|
80
|
+
toValue: endValue,
|
|
78
81
|
duration: memoizedShimmerData.duration,
|
|
79
82
|
delay: memoizedShimmerData.delay,
|
|
80
83
|
useNativeDriver: true,
|
|
@@ -106,7 +109,7 @@ exports.Shimmer = (0, framework_1.compose)(__assign(__assign({ displayName: Shim
|
|
|
106
109
|
: { translateX: undefined, scaleX: undefined };
|
|
107
110
|
return ((0, framework_1.withSlots)(Slots.root, __assign({}, mergedProps),
|
|
108
111
|
(0, framework_1.withSlots)(react_native_svg_1.Defs, null,
|
|
109
|
-
(0, framework_1.withSlots)(AnimatedLinearGradient, { id: "gradient", x1:
|
|
112
|
+
(0, framework_1.withSlots)(AnimatedLinearGradient, { id: "gradient", x1: x1, x2: "-1", gradientTransform: "rotate(".concat(memoizedShimmerData.angle, ")") },
|
|
110
113
|
(0, framework_1.withSlots)(react_native_svg_1.Stop, { offset: "10%", stopColor: memoizedShimmerData.shimmerColor, stopOpacity: memoizedShimmerData.shimmerColorOpacity }),
|
|
111
114
|
(0, framework_1.withSlots)(react_native_svg_1.Stop, { offset: "20%", stopColor: memoizedShimmerData.shimmerWaveColor, stopOpacity: memoizedShimmerData.shimmerWaveColorOpacity }),
|
|
112
115
|
(0, framework_1.withSlots)(react_native_svg_1.Stop, { offset: "30%", stopColor: memoizedShimmerData.shimmerColor, stopOpacity: memoizedShimmerData.shimmerColorOpacity })),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Shimmer.js","sourceRoot":"","sources":["../src/Shimmer.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,0BAA0B;AAC1B,qBAAqB;AACrB,+BAAgE;AAEhE,6CAAqD;AAGrD,8DAAmG;AACnG,8DAAuC;AACvC,qDAA8F;AAE9F,qDAAoD;AAEpD,iDAA8C;AAE9C,IAAM,UAAU,GAAG,IAAA,2BAAe,EAAC,iCAAe,CAAC,CAAC;AACvC,QAAA,OAAO,GAAG,IAAA,mBAAO,sBAC5B,WAAW,EAAE,2BAAW,IACrB,iCAAe,KAClB,KAAK,EAAE;QACL,IAAI,EAAE,sBAAG;KACV,EACD,SAAS,EAAE,UAAC,KAAmB,EAAE,QAA+B;QAC9D,IAAM,KAAK,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;QAC9B,KAAK,GAAG,IAAA,sBAAU,EAAC,KAAK,EAAE,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC;QAChD,IAAM,sBAAsB,GAAG,uBAAQ,CAAC,uBAAuB,CAAC,iCAAc,CAAC,CAAC;QAChF,IAAM,MAAM,GAAG,UAAU,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC;QACtC,IAAM,mBAAmB,GAAG,IAAA,eAAO,EACjC;;YAAM,OAAA,CAAC;gBACL,KAAK,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC;gBAClD,cAAc,EAAE,CAAA,MAAA,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,KAAK,0CAAG,OAAO,CAAC,EAAC,CAAC,CAAC,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,MAAM;gBACxE,eAAe,EAAE,CAAA,MAAA,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,KAAK,0CAAG,QAAQ,CAAC,EAAC,CAAC,CAAC,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,MAAM;gBAC3E,KAAK,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC;gBAClD,QAAQ,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC;gBAC9D,YAAY,EAAE,KAAK,CAAC,YAAY,CAAC,CAAC,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC,CAAC,MAAM,CAAC,cAAc,CAAC;gBAC9E,mBAAmB,EAAE,MAAM,CAAC,qBAAqB,CAAC;gBAClD,gBAAgB,EAAE,KAAK,CAAC,gBAAgB,CAAC,CAAC,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC,CAAC,MAAM,CAAC,kBAAkB,CAAC;gBAC9F,uBAAuB,EAAE,MAAM,CAAC,yBAAyB,CAAC;aAC3D,CAAC,CAAA;SAAA,EACF;YACE,KAAK,CAAC,KAAK;YACX,KAAK,CAAC,KAAK;YACX,KAAK,CAAC,QAAQ;YACd,KAAK,CAAC,YAAY;YAClB,KAAK,CAAC,mBAAmB;YACzB,KAAK,CAAC,gBAAgB;YACtB,KAAK,CAAC,uBAAuB;YAC7B,KAAK,CAAC,KAAK;SACZ,CACF,CAAC;QAEF
|
|
1
|
+
{"version":3,"file":"Shimmer.js","sourceRoot":"","sources":["../src/Shimmer.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Shimmer.win32.d.ts","sourceRoot":"","sources":["../src/Shimmer.win32.tsx"],"names":[],"mappings":"AAaA,OAAO,KAAK,EAAuB,YAAY,EAAE,oBAAoB,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAC1H,YAAY,EAAE,oBAAoB,EAAE,kBAAkB,EAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"Shimmer.win32.d.ts","sourceRoot":"","sources":["../src/Shimmer.win32.tsx"],"names":[],"mappings":"AAaA,OAAO,KAAK,EAAuB,YAAY,EAAE,oBAAoB,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAC1H,YAAY,EAAE,oBAAoB,EAAE,kBAAkB,EAAE,CAAC;AAmFzD,eAAO,MAAM,OAAO,wLAwElB,CAAC"}
|
|
@@ -64,12 +64,28 @@ var wave = function (props) {
|
|
|
64
64
|
viewBox: '0 0 ' + viewBoxWidth + ' ' + viewBoxHeight,
|
|
65
65
|
preserveAspectRatio: 'xMinYMin slice',
|
|
66
66
|
};
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
67
|
+
/**
|
|
68
|
+
* React-Native-SVG doesn't process opaque color values correctly for gradients, directly invoking `processColor`
|
|
69
|
+
* and squashing in the opacity value of the color stop. This handling scheme is incompatible with OpaqueColorValue type
|
|
70
|
+
* colors e.g. PlatformColor, and will show nothing. As a short-term solution, provide alternate non-gradient handling
|
|
71
|
+
* of the wave color as a solid color.
|
|
72
|
+
*/
|
|
73
|
+
if (typeof (0, react_native_1.processColor)(shimmerWaveColor) !== 'object' && typeof (0, react_native_1.processColor)(shimmerColor) !== 'object') {
|
|
74
|
+
// The typical path where the provided shimmer colors are not OpaqueColorValues.
|
|
75
|
+
return ((0, framework_2.withSlots)(react_native_svg_1.Svg, __assign({}, svgProps),
|
|
76
|
+
(0, framework_2.withSlots)(react_native_svg_1.LinearGradient, { id: "gradient" },
|
|
77
|
+
(0, framework_2.withSlots)(react_native_svg_1.Stop, { stopColor: shimmerColor, stopOpacity: shimmerColorOpacity }),
|
|
78
|
+
(0, framework_2.withSlots)(react_native_svg_1.Stop, { offset: "20%", stopColor: shimmerWaveColor, stopOpacity: shimmerWaveColorOpacity }),
|
|
79
|
+
(0, framework_2.withSlots)(react_native_svg_1.Stop, { offset: "40%", stopColor: shimmerColor, stopOpacity: shimmerColorOpacity })),
|
|
80
|
+
(0, framework_2.withSlots)(react_native_svg_1.Rect, { width: props.shimmerWaveWidth, height: "100%", fill: "url(#gradient)" })));
|
|
81
|
+
}
|
|
82
|
+
else {
|
|
83
|
+
// The unexpected path where either of the provided shimmer colors are OpaqueColorValues.
|
|
84
|
+
// scaleX is used to mimic the gradient occupying 40% of the fill since we don't know the provided width of the
|
|
85
|
+
// shimmer wave.
|
|
86
|
+
return ((0, framework_2.withSlots)(react_native_svg_1.Svg, __assign({}, svgProps),
|
|
87
|
+
(0, framework_2.withSlots)(react_native_svg_1.Rect, { width: props.shimmerWaveWidth, height: "100%", fill: shimmerWaveColor, fillOpacity: shimmerWaveColorOpacity, scaleX: "0.4" })));
|
|
88
|
+
}
|
|
73
89
|
};
|
|
74
90
|
var waveContainer = function (props) {
|
|
75
91
|
var shimmerColor = props.shimmerColor, viewBoxHeight = props.viewBoxHeight, viewBoxWidth = props.viewBoxWidth;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Shimmer.win32.js","sourceRoot":"","sources":["../src/Shimmer.win32.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAAA,0BAA0B;AAC1B,qBAAqB;AACrB,
|
|
1
|
+
{"version":3,"file":"Shimmer.win32.js","sourceRoot":"","sources":["../src/Shimmer.win32.tsx"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
package/src/Shimmer.tsx
CHANGED
|
@@ -53,12 +53,15 @@ export const Shimmer = compose<ShimmerType>({
|
|
|
53
53
|
* Different angles are handled by rotating this gradient.
|
|
54
54
|
* The startValue is used to control the start position of the gradient animation, it is set as -2 to make sure it is starts off the screen for any angle.
|
|
55
55
|
* Similarly the endValue is set to 3 to make sure the gradient animation exits the entire screen for any angle.
|
|
56
|
+
* In RTL, startValue and endValue are flipped to ensure that the animation moves from right to left.
|
|
56
57
|
*/
|
|
57
|
-
const startValue =
|
|
58
|
+
const startValue = I18nManager.isRTL ? 3 : -2;
|
|
59
|
+
const endValue = I18nManager.isRTL ? -2 : 3;
|
|
60
|
+
const x1 = useRef(new Animated.Value(startValue)).current;
|
|
58
61
|
const shimmerAnimation = useCallback(() => {
|
|
59
62
|
Animated.loop(
|
|
60
|
-
Animated.timing(
|
|
61
|
-
toValue:
|
|
63
|
+
Animated.timing(x1, {
|
|
64
|
+
toValue: endValue,
|
|
62
65
|
duration: memoizedShimmerData.duration,
|
|
63
66
|
delay: memoizedShimmerData.delay,
|
|
64
67
|
useNativeDriver: true,
|
|
@@ -105,7 +108,7 @@ export const Shimmer = compose<ShimmerType>({
|
|
|
105
108
|
return (
|
|
106
109
|
<Slots.root {...mergedProps}>
|
|
107
110
|
<Defs>
|
|
108
|
-
<AnimatedLinearGradient id="gradient" x1={
|
|
111
|
+
<AnimatedLinearGradient id="gradient" x1={x1} x2="-1" gradientTransform={`rotate(${memoizedShimmerData.angle})`}>
|
|
109
112
|
<Stop offset="10%" stopColor={memoizedShimmerData.shimmerColor} stopOpacity={memoizedShimmerData.shimmerColorOpacity} />
|
|
110
113
|
<Stop
|
|
111
114
|
offset="20%"
|
package/src/Shimmer.win32.tsx
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/** @jsxRuntime classic */
|
|
2
2
|
/** @jsx withSlots */
|
|
3
|
-
import { View } from 'react-native';
|
|
3
|
+
import { processColor, View } from 'react-native';
|
|
4
4
|
|
|
5
5
|
import type { UseSlots } from '@fluentui-react-native/framework';
|
|
6
6
|
import { compose, mergeProps } from '@fluentui-react-native/framework';
|
|
@@ -56,16 +56,34 @@ const wave: React.FunctionComponent<ShimmerWaveProps> = (props: ShimmerWaveProps
|
|
|
56
56
|
preserveAspectRatio: 'xMinYMin slice',
|
|
57
57
|
};
|
|
58
58
|
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
59
|
+
/**
|
|
60
|
+
* React-Native-SVG doesn't process opaque color values correctly for gradients, directly invoking `processColor`
|
|
61
|
+
* and squashing in the opacity value of the color stop. This handling scheme is incompatible with OpaqueColorValue type
|
|
62
|
+
* colors e.g. PlatformColor, and will show nothing. As a short-term solution, provide alternate non-gradient handling
|
|
63
|
+
* of the wave color as a solid color.
|
|
64
|
+
*/
|
|
65
|
+
if (typeof processColor(shimmerWaveColor) !== 'object' && typeof processColor(shimmerColor) !== 'object') {
|
|
66
|
+
// The typical path where the provided shimmer colors are not OpaqueColorValues.
|
|
67
|
+
return (
|
|
68
|
+
<Svg {...svgProps}>
|
|
69
|
+
<LinearGradient id="gradient">
|
|
70
|
+
<Stop stopColor={shimmerColor} stopOpacity={shimmerColorOpacity} />
|
|
71
|
+
<Stop offset="20%" stopColor={shimmerWaveColor} stopOpacity={shimmerWaveColorOpacity} />
|
|
72
|
+
<Stop offset="40%" stopColor={shimmerColor} stopOpacity={shimmerColorOpacity} />
|
|
73
|
+
</LinearGradient>
|
|
74
|
+
<Rect width={props.shimmerWaveWidth} height="100%" fill="url(#gradient)" />
|
|
75
|
+
</Svg>
|
|
76
|
+
);
|
|
77
|
+
} else {
|
|
78
|
+
// The unexpected path where either of the provided shimmer colors are OpaqueColorValues.
|
|
79
|
+
// scaleX is used to mimic the gradient occupying 40% of the fill since we don't know the provided width of the
|
|
80
|
+
// shimmer wave.
|
|
81
|
+
return (
|
|
82
|
+
<Svg {...svgProps}>
|
|
83
|
+
<Rect width={props.shimmerWaveWidth} height="100%" fill={shimmerWaveColor} fillOpacity={shimmerWaveColorOpacity} scaleX="0.4" />
|
|
84
|
+
</Svg>
|
|
85
|
+
);
|
|
86
|
+
}
|
|
69
87
|
};
|
|
70
88
|
|
|
71
89
|
const waveContainer: React.FunctionComponent<ShimmerWaveProps> = (props: ShimmerWaveProps) => {
|