react-native-shine 0.3.3 → 0.3.5
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/README.md
CHANGED
|
@@ -54,23 +54,12 @@ npx install-peerdeps react-native-shine
|
|
|
54
54
|
|
|
55
55
|
---
|
|
56
56
|
|
|
57
|
-
### Update Your `babel.config.js`
|
|
58
|
-
|
|
59
|
-
For this library to work, you need to add the `unplugin-typegpu/babel` plugin. It comes bundled as a dependency, so you just need to add it in your Babel config.
|
|
60
|
-
|
|
61
|
-
```js
|
|
62
|
-
plugins: ['unplugin-typegpu/babel'];
|
|
63
|
-
```
|
|
64
|
-
|
|
65
|
-
For additional instructions, please follow the [TypeGPU Unplugin docs](https://docs.swmansion.com/TypeGPU/tooling/unplugin-typegpu/).
|
|
66
|
-
|
|
67
|
-
---
|
|
68
|
-
|
|
69
57
|
## 📋 Requirements
|
|
70
58
|
|
|
71
59
|
- React Native ≥ 0.71
|
|
72
60
|
- `react-native-reanimated` ≥ 4.0.0
|
|
73
61
|
- `react-native-webgpu` ≥ 0.2.0
|
|
62
|
+
- `typegpu` ~= 0.7.1
|
|
74
63
|
- WebGPU-compatible device/emulator
|
|
75
64
|
|
|
76
65
|
> [!NOTE]
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
import { useEffect, useRef, useState } from 'react';
|
|
4
|
-
import { View, StyleSheet,
|
|
4
|
+
import { View, StyleSheet, PixelRatio } from 'react-native';
|
|
5
5
|
import ViewShot, { captureRef } from 'react-native-view-shot';
|
|
6
6
|
import { sizeFromV2d, sizeToV2d } from "../utils/size.js";
|
|
7
7
|
import { areV2dEqual, multiplyV2d, round2D } from "../utils/vector.js";
|
|
@@ -53,7 +53,7 @@ export function ShineGroup({
|
|
|
53
53
|
}, [size, children]);
|
|
54
54
|
return /*#__PURE__*/_jsxs(View, {
|
|
55
55
|
style: styles.container,
|
|
56
|
-
children: [/*#__PURE__*/_jsx(ViewShot, {
|
|
56
|
+
children: [!capturedURI && /*#__PURE__*/_jsx(ViewShot, {
|
|
57
57
|
ref: viewShotRef,
|
|
58
58
|
options: {
|
|
59
59
|
format: 'png',
|
|
@@ -64,9 +64,6 @@ export function ShineGroup({
|
|
|
64
64
|
style: styles.inner,
|
|
65
65
|
children: children
|
|
66
66
|
})
|
|
67
|
-
}), capturedURI && size && /*#__PURE__*/_jsx(Image, {
|
|
68
|
-
src: capturedURI,
|
|
69
|
-
...sizeFromV2d(size)
|
|
70
67
|
}), capturedURI && size && /*#__PURE__*/_jsx(Shine, {
|
|
71
68
|
...sizeFromV2d(size),
|
|
72
69
|
imageURI: capturedURI,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["useEffect","useRef","useState","View","StyleSheet","
|
|
1
|
+
{"version":3,"names":["useEffect","useRef","useState","View","StyleSheet","PixelRatio","ViewShot","captureRef","sizeFromV2d","sizeToV2d","areV2dEqual","multiplyV2d","round2D","Shine","jsx","_jsx","jsxs","_jsxs","ShineGroup","children","glareOptions","colorMaskOptions","maskURI","touchPosition","useTouchControl","addTextureMask","addHolo","addReverseHolo","viewShotRef","capturedURI","setCapturedURI","size","setSize","onInnerLayout","e","layoutV2d","nativeEvent","layout","current","mounted","t","setTimeout","pixel","get","uri","format","quality","err","console","warn","clearTimeout","style","styles","container","ref","options","onLayout","inner","imageURI","create","display","flexDirection","gap"],"sourceRoot":"../../../src","sources":["components/ShineGroup.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ShineGroup.d.ts","sourceRoot":"","sources":["../../../../src/components/ShineGroup.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,iBAAiB,EAA+B,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"ShineGroup.d.ts","sourceRoot":"","sources":["../../../../src/components/ShineGroup.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,iBAAiB,EAA+B,MAAM,OAAO,CAAC;AAW5E,OAAO,EAAS,KAAK,UAAU,EAAE,MAAM,SAAS,CAAC;AAEjD,KAAK,eAAe,GAAG,iBAAiB,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC;AAE9D,wBAAgB,UAAU,CAAC,EACzB,QAAQ,EACR,YAAY,EACZ,gBAAgB,EAChB,OAAO,EACP,aAAa,EACb,eAAuB,EACvB,cAAsB,EACtB,OAAe,EACf,cAAsB,GACvB,EAAE,eAAe,2CAkEjB"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "react-native-shine",
|
|
3
|
-
"version": "0.3.
|
|
3
|
+
"version": "0.3.5",
|
|
4
4
|
"description": "Fast and efficient way of adding interactive effects that are run entirely on shaders using typeGPU.",
|
|
5
5
|
"main": "./lib/module/index.js",
|
|
6
6
|
"types": "./lib/typescript/src/index.d.ts",
|
|
@@ -3,7 +3,6 @@ import {
|
|
|
3
3
|
View,
|
|
4
4
|
StyleSheet,
|
|
5
5
|
type LayoutChangeEvent,
|
|
6
|
-
Image,
|
|
7
6
|
PixelRatio,
|
|
8
7
|
} from 'react-native';
|
|
9
8
|
import ViewShot, { captureRef } from 'react-native-view-shot';
|
|
@@ -66,14 +65,12 @@ export function ShineGroup({
|
|
|
66
65
|
|
|
67
66
|
return (
|
|
68
67
|
<View style={styles.container}>
|
|
69
|
-
|
|
70
|
-
<
|
|
71
|
-
{
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
{capturedURI && size && (
|
|
76
|
-
<Image src={capturedURI} {...sizeFromV2d(size)} />
|
|
68
|
+
{!capturedURI && (
|
|
69
|
+
<ViewShot ref={viewShotRef} options={{ format: 'png', quality: 1 }}>
|
|
70
|
+
<View onLayout={onInnerLayout} style={styles.inner}>
|
|
71
|
+
{children}
|
|
72
|
+
</View>
|
|
73
|
+
</ViewShot>
|
|
77
74
|
)}
|
|
78
75
|
|
|
79
76
|
{capturedURI && size && (
|