react-native-smooth-clip-view 0.4.1 → 0.4.3

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.
Files changed (47) hide show
  1. package/CHANGELOG.md +44 -0
  2. package/README.md +92 -5
  3. package/android/src/main/cpp/SmoothClipAndroid.h +2 -1
  4. package/android/src/main/cpp/SmoothClipBindings.cpp +22 -8
  5. package/android/src/main/cpp/SmoothClipRegistry.cpp +85 -10
  6. package/android/src/main/java/com/smoothclipview/ClipGeometryNormalizer.kt +23 -0
  7. package/android/src/main/java/com/smoothclipview/SmoothClipBindings.kt +8 -0
  8. package/android/src/main/java/com/smoothclipview/SmoothClipModule.kt +39 -1
  9. package/android/src/main/java/com/smoothclipview/SmoothClipView.kt +124 -32
  10. package/android/src/main/java/com/smoothclipview/SmoothClipViewManager.kt +16 -0
  11. package/cpp/SmoothClipAnimationCurve.h +21 -10
  12. package/cpp/SmoothClipRegistry.h +2 -0
  13. package/cpp/SmoothClipSharedGeometry.h +20 -0
  14. package/cpp/SmoothClipVelocityTracker.h +6 -0
  15. package/ios/SmoothClipRegistry.mm +173 -17
  16. package/ios/SmoothClipTurboModule.cpp +17 -6
  17. package/ios/SmoothClipTurboModule.h +3 -1
  18. package/ios/SmoothClipView.mm +408 -20
  19. package/lib/module/NativeSmoothClipModule.js.map +1 -1
  20. package/lib/module/SmoothClipView.ios.js +3 -0
  21. package/lib/module/SmoothClipView.ios.js.map +1 -1
  22. package/lib/module/SmoothClipViewNativeComponent.ts +5 -1
  23. package/lib/module/geometry.js +22 -2
  24. package/lib/module/geometry.js.map +1 -1
  25. package/lib/module/presentationCodec.js +5 -3
  26. package/lib/module/presentationCodec.js.map +1 -1
  27. package/lib/typescript/src/NativeSmoothClipModule.d.ts +1 -1
  28. package/lib/typescript/src/NativeSmoothClipModule.d.ts.map +1 -1
  29. package/lib/typescript/src/SmoothClipView.ios.d.ts.map +1 -1
  30. package/lib/typescript/src/SmoothClipViewNativeComponent.d.ts +3 -1
  31. package/lib/typescript/src/SmoothClipViewNativeComponent.d.ts.map +1 -1
  32. package/lib/typescript/src/controllerTypes.d.ts +5 -1
  33. package/lib/typescript/src/controllerTypes.d.ts.map +1 -1
  34. package/lib/typescript/src/geometry.d.ts +9 -0
  35. package/lib/typescript/src/geometry.d.ts.map +1 -1
  36. package/lib/typescript/src/index.d.ts +1 -1
  37. package/lib/typescript/src/index.d.ts.map +1 -1
  38. package/lib/typescript/src/presentationCodec.d.ts +1 -1
  39. package/lib/typescript/src/presentationCodec.d.ts.map +1 -1
  40. package/package.json +2 -1
  41. package/src/NativeSmoothClipModule.ts +3 -1
  42. package/src/SmoothClipView.ios.tsx +3 -0
  43. package/src/SmoothClipViewNativeComponent.ts +5 -1
  44. package/src/controllerTypes.ts +5 -1
  45. package/src/geometry.ts +35 -0
  46. package/src/index.ts +1 -0
  47. package/src/presentationCodec.ts +8 -2
@@ -1 +1 @@
1
- {"version":3,"names":["TurboModuleRegistry","getEnforcing"],"sourceRoot":"../../src","sources":["NativeSmoothClipModule.ts"],"mappings":";;AACA,SAASA,mBAAmB,QAAQ,cAAc;AA+HlD,eAAeA,mBAAmB,CAACC,YAAY,CAAO,wBAAwB,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["TurboModuleRegistry","getEnforcing"],"sourceRoot":"../../src","sources":["NativeSmoothClipModule.ts"],"mappings":";;AACA,SAASA,mBAAmB,QAAQ,cAAc;AAiIlD,eAAeA,mBAAmB,CAACC,YAAY,CAAO,wBAAwB,CAAC","ignoreList":[]}
@@ -4,6 +4,7 @@
4
4
  import { forwardRef, useEffect } from 'react';
5
5
  import { StyleSheet } from 'react-native';
6
6
  import { getControllerRef, unwrapSmoothClipRef } from "./controllerInternals.js";
7
+ import { rotationRadians } from "./geometry.js";
7
8
  import NativeSmoothClipView from './SmoothClipViewNativeComponent';
8
9
  import { jsx as _jsx } from "react/jsx-runtime";
9
10
  let reportedIndependentShadow = false;
@@ -94,6 +95,8 @@ export function renderSmoothClipView({
94
95
  initialContentTranslateX: canonical.contentTranslateX,
95
96
  initialContentTranslateY: canonical.contentTranslateY,
96
97
  initialContentScale: canonical.contentScale,
98
+ initialRotation: rotationRadians(canonical.rotation),
99
+ initialOpacity: canonical.opacity,
97
100
  initialClipBoxShadowEnabled: shadow !== undefined,
98
101
  initialClipBoxShadowRed: (color >>> 24 & 0xff) / 255,
99
102
  initialClipBoxShadowGreen: (color >>> 16 & 0xff) / 255,
@@ -1 +1 @@
1
- {"version":3,"names":["forwardRef","useEffect","StyleSheet","getControllerRef","unwrapSmoothClipRef","NativeSmoothClipView","jsx","_jsx","reportedIndependentShadow","mountedControllers","WeakMap","useSingleControllerHost","controller","mounted","get","__DEV__","Error","set","current","delete","filterContainsDropShadow","filter","test","Array","isArray","some","entry","removeDropShadowFilter","remaining","replace","trim","undefined","length","sanitizeSmoothClipStyle","style","flat","flatten","hasIndependentShadow","boxShadow","shadowColor","shadowOffset","shadowOpacity","shadowRadius","elevation","console","error","sanitized","renderSmoothClipView","children","viewProps","forwardedRef","ref","initialFrame","canonical","driverId","id","clip","shadow","color","nativeProps","initialClipX","x","initialClipY","y","initialClipWidth","width","initialClipHeight","height","initialClipTopLeftRadius","topLeftRadius","initialClipTopRightRadius","topRightRadius","initialClipBottomRightRadius","bottomRightRadius","initialClipBottomLeftRadius","bottomLeftRadius","initialClipCurve","curve","initialContentTranslateX","contentTranslateX","initialContentTranslateY","contentTranslateY","initialContentScale","contentScale","initialClipBoxShadowEnabled","initialClipBoxShadowRed","initialClipBoxShadowGreen","initialClipBoxShadowBlue","initialClipBoxShadowAlpha","initialClipBoxShadowOffsetX","offsetX","initialClipBoxShadowOffsetY","offsetY","initialClipBoxShadowBlurRadius","blurRadius","initialClipBoxShadowSpreadDistance","spreadDistance","SmoothClipView","SmoothClipViewComponent","props"],"sourceRoot":"../../src","sources":["SmoothClipView.ios.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["forwardRef","useEffect","StyleSheet","getControllerRef","unwrapSmoothClipRef","rotationRadians","NativeSmoothClipView","jsx","_jsx","reportedIndependentShadow","mountedControllers","WeakMap","useSingleControllerHost","controller","mounted","get","__DEV__","Error","set","current","delete","filterContainsDropShadow","filter","test","Array","isArray","some","entry","removeDropShadowFilter","remaining","replace","trim","undefined","length","sanitizeSmoothClipStyle","style","flat","flatten","hasIndependentShadow","boxShadow","shadowColor","shadowOffset","shadowOpacity","shadowRadius","elevation","console","error","sanitized","renderSmoothClipView","children","viewProps","forwardedRef","ref","initialFrame","canonical","driverId","id","clip","shadow","color","nativeProps","initialClipX","x","initialClipY","y","initialClipWidth","width","initialClipHeight","height","initialClipTopLeftRadius","topLeftRadius","initialClipTopRightRadius","topRightRadius","initialClipBottomRightRadius","bottomRightRadius","initialClipBottomLeftRadius","bottomLeftRadius","initialClipCurve","curve","initialContentTranslateX","contentTranslateX","initialContentTranslateY","contentTranslateY","initialContentScale","contentScale","initialRotation","rotation","initialOpacity","opacity","initialClipBoxShadowEnabled","initialClipBoxShadowRed","initialClipBoxShadowGreen","initialClipBoxShadowBlue","initialClipBoxShadowAlpha","initialClipBoxShadowOffsetX","offsetX","initialClipBoxShadowOffsetY","offsetY","initialClipBoxShadowBlurRadius","blurRadius","initialClipBoxShadowSpreadDistance","spreadDistance","SmoothClipView","SmoothClipViewComponent","props"],"sourceRoot":"../../src","sources":["SmoothClipView.ios.tsx"],"mappings":"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","ignoreList":[]}
@@ -20,6 +20,8 @@ export interface NativeProps extends ViewProps {
20
20
  initialContentTranslateX: CodegenTypes.Double;
21
21
  initialContentTranslateY: CodegenTypes.Double;
22
22
  initialContentScale: CodegenTypes.Double;
23
+ initialRotation: CodegenTypes.Double;
24
+ initialOpacity?: CodegenTypes.WithDefault<CodegenTypes.Double, 1>;
23
25
  initialClipBoxShadowEnabled: boolean;
24
26
  initialClipBoxShadowRed: CodegenTypes.Double;
25
27
  initialClipBoxShadowGreen: CodegenTypes.Double;
@@ -54,7 +56,9 @@ interface NativeCommands {
54
56
  shadowOffsetX: CodegenTypes.Double,
55
57
  shadowOffsetY: CodegenTypes.Double,
56
58
  shadowBlurRadius: CodegenTypes.Double,
57
- shadowSpreadDistance: CodegenTypes.Double
59
+ shadowSpreadDistance: CodegenTypes.Double,
60
+ rotation: CodegenTypes.Double,
61
+ opacity: CodegenTypes.Double
58
62
  ) => void;
59
63
  }
60
64
 
@@ -6,6 +6,22 @@ import { processColor } from 'react-native-reanimated';
6
6
 
7
7
  /** One numeric outset shadow following React Native's `boxShadow` field names. */
8
8
 
9
+ /** Numeric native angle. Invalid input remains NaN for atomic validation. */
10
+ export function rotationRadians(rotation) {
11
+ 'worklet';
12
+
13
+ if (rotation === undefined) return 0;
14
+ if (typeof rotation !== 'string' || !/^[+-]?(?:\d+\.?\d*|\.\d+)(?:[eE][+-]?\d+)?(?:deg|rad)$/.test(rotation)) {
15
+ return NaN;
16
+ }
17
+ const value = Number(rotation.slice(0, -3));
18
+ return rotation.endsWith('deg') ? value * (Math.PI / 180) : value;
19
+ }
20
+ function resolvedOpacity(presentation) {
21
+ 'worklet';
22
+
23
+ return Math.max(0, Math.min(1, presentation.opacity ?? 1));
24
+ }
9
25
  const DEFAULT_SHADOW_COLOR = '#000000ff';
10
26
  function isClipCurve(curve) {
11
27
  'worklet';
@@ -99,12 +115,12 @@ export function isFiniteClipPresentation(presentation) {
99
115
 
100
116
  const contentScale = resolvedContentScale(presentation);
101
117
  const shadow = canonicalizeClipBoxShadow(presentation.boxShadow);
102
- return isFiniteClipGeometry(presentation.clip) && Number.isFinite(presentation.contentTranslateX) && Number.isFinite(presentation.contentTranslateY) && Number.isFinite(contentScale) && contentScale > 0 && shadow !== null;
118
+ return isFiniteClipGeometry(presentation.clip) && Number.isFinite(presentation.contentTranslateX) && Number.isFinite(presentation.contentTranslateY) && Number.isFinite(contentScale) && contentScale > 0 && Number.isFinite(rotationRadians(presentation.rotation)) && Number.isFinite(presentation.opacity ?? 1) && shadow !== null;
103
119
  }
104
120
  export function clipPresentationEquals(first, second) {
105
121
  'worklet';
106
122
 
107
- return first !== null && clipGeometryEquals(first.clip, second.clip) && first.contentTranslateX === second.contentTranslateX && first.contentTranslateY === second.contentTranslateY && resolvedContentScale(first) === resolvedContentScale(second) && clipBoxShadowEquals(first.boxShadow, second.boxShadow);
123
+ return first !== null && clipGeometryEquals(first.clip, second.clip) && first.contentTranslateX === second.contentTranslateX && first.contentTranslateY === second.contentTranslateY && resolvedContentScale(first) === resolvedContentScale(second) && rotationRadians(first.rotation) === rotationRadians(second.rotation) && resolvedOpacity(first) === resolvedOpacity(second) && clipBoxShadowEquals(first.boxShadow, second.boxShadow);
108
124
  }
109
125
  function createCanonicalClipGeometry(geometry, x, y, width, height) {
110
126
  'worklet';
@@ -169,6 +185,8 @@ export function canonicalizeClipPresentation(presentation) {
169
185
  contentTranslateX: presentation.contentTranslateX,
170
186
  contentTranslateY: presentation.contentTranslateY,
171
187
  contentScale: resolvedContentScale(presentation),
188
+ rotation: `${rotationRadians(presentation.rotation)}rad`,
189
+ opacity: resolvedOpacity(presentation),
172
190
  ...(boxShadow === undefined ? {} : {
173
191
  boxShadow
174
192
  })
@@ -200,6 +218,8 @@ export function createClipPresentation(clip, contentTranslateX = 0, contentTrans
200
218
  contentTranslateX,
201
219
  contentTranslateY,
202
220
  contentScale,
221
+ rotation: '0rad',
222
+ opacity: 1,
203
223
  ...(canonicalShadow === undefined ? {} : {
204
224
  // Match the geometry constructor's invalid-input behavior: retain the
205
225
  // bad source value so the driver's atomic validation rejects it.
@@ -1 +1 @@
1
- {"version":3,"names":["processColor","DEFAULT_SHADOW_COLOR","isClipCurve","curve","undefined","isFiniteOptionalNumber","value","Number","isFinite","canonicalizeClipBoxShadow","shadow","offsetX","offsetY","blurRadius","spreadDistance","processedColor","color","unsignedProcessedColor","Math","max","clipBoxShadowEquals","first","second","canonicalFirst","canonicalSecond","isFiniteClipGeometry","geometry","width","height","x","y","radius","topLeftRadius","topRightRadius","bottomRightRadius","bottomLeftRadius","resolvedTopLeftRadius","resolvedTopRightRadius","resolvedBottomRightRadius","resolvedBottomLeftRadius","resolvedCurve","clipGeometryEquals","resolvedContentScale","presentation","contentScale","isFiniteClipPresentation","boxShadow","clip","contentTranslateX","contentTranslateY","clipPresentationEquals","createCanonicalClipGeometry","scale","top","right","bottom","left","min","canonicalTopLeftRadius","canonicalTopRightRadius","canonicalBottomRightRadius","canonicalBottomLeftRadius","canonicalizeClipGeometry","canonicalizeClipPresentation","createClipPresentation","canonicalClip","canonicalShadow"],"sourceRoot":"../../src","sources":["geometry.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["processColor","rotationRadians","rotation","undefined","test","NaN","value","Number","slice","endsWith","Math","PI","resolvedOpacity","presentation","max","min","opacity","DEFAULT_SHADOW_COLOR","isClipCurve","curve","isFiniteOptionalNumber","isFinite","canonicalizeClipBoxShadow","shadow","offsetX","offsetY","blurRadius","spreadDistance","processedColor","color","unsignedProcessedColor","clipBoxShadowEquals","first","second","canonicalFirst","canonicalSecond","isFiniteClipGeometry","geometry","width","height","x","y","radius","topLeftRadius","topRightRadius","bottomRightRadius","bottomLeftRadius","resolvedTopLeftRadius","resolvedTopRightRadius","resolvedBottomRightRadius","resolvedBottomLeftRadius","resolvedCurve","clipGeometryEquals","resolvedContentScale","contentScale","isFiniteClipPresentation","boxShadow","clip","contentTranslateX","contentTranslateY","clipPresentationEquals","createCanonicalClipGeometry","scale","top","right","bottom","left","canonicalTopLeftRadius","canonicalTopRightRadius","canonicalBottomRightRadius","canonicalBottomLeftRadius","canonicalizeClipGeometry","canonicalizeClipPresentation","createClipPresentation","canonicalClip","canonicalShadow"],"sourceRoot":"../../src","sources":["geometry.ts"],"mappings":";;AAAA;;AAEA,SAASA,YAAY,QAAQ,yBAAyB;;AAMtD;;AAsEA;AACA,OAAO,SAASC,eAAeA,CAACC,QAAkC,EAAU;EAC1E,SAAS;;EACT,IAAIA,QAAQ,KAAKC,SAAS,EAAE,OAAO,CAAC;EACpC,IACE,OAAOD,QAAQ,KAAK,QAAQ,IAC5B,CAAC,wDAAwD,CAACE,IAAI,CAACF,QAAQ,CAAC,EACxE;IACA,OAAOG,GAAG;EACZ;EACA,MAAMC,KAAK,GAAGC,MAAM,CAACL,QAAQ,CAACM,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;EAC3C,OAAON,QAAQ,CAACO,QAAQ,CAAC,KAAK,CAAC,GAAGH,KAAK,IAAII,IAAI,CAACC,EAAE,GAAG,GAAG,CAAC,GAAGL,KAAK;AACnE;AAEA,SAASM,eAAeA,CAACC,YAAoC,EAAU;EACrE,SAAS;;EACT,OAAOH,IAAI,CAACI,GAAG,CAAC,CAAC,EAAEJ,IAAI,CAACK,GAAG,CAAC,CAAC,EAAEF,YAAY,CAACG,OAAO,IAAI,CAAC,CAAC,CAAC;AAC5D;AAEA,MAAMC,oBAAoB,GAAG,WAAW;AAExC,SAASC,WAAWA,CAACC,KAA4B,EAAW;EAC1D,SAAS;;EACT,OAAOA,KAAK,KAAKhB,SAAS,IAAIgB,KAAK,KAAK,UAAU,IAAIA,KAAK,KAAK,YAAY;AAC9E;AAEA,SAASC,sBAAsBA,CAACd,KAAyB,EAAW;EAClE,SAAS;;EACT,OAAOA,KAAK,KAAKH,SAAS,IAAII,MAAM,CAACc,QAAQ,CAACf,KAAK,CAAC;AACtD;AAEA,SAASgB,yBAAyBA,CAChCC,MAAiC,EACU;EAC3C,SAAS;;EACT,IAAIA,MAAM,KAAKpB,SAAS,EAAE,OAAOA,SAAS;EAC1C,MAAM;IAAEqB,OAAO;IAAEC;EAAQ,CAAC,GAAGF,MAAM;EACnC,MAAMG,UAAU,GAAGH,MAAM,CAACG,UAAU,IAAI,CAAC;EACzC,MAAMC,cAAc,GAAGJ,MAAM,CAACI,cAAc,IAAI,CAAC;EACjD,IACE,CAACpB,MAAM,CAACc,QAAQ,CAACG,OAAO,CAAC,IACzB,CAACjB,MAAM,CAACc,QAAQ,CAACI,OAAO,CAAC,IACzB,CAAClB,MAAM,CAACc,QAAQ,CAACK,UAAU,CAAC,IAC5B,CAACnB,MAAM,CAACc,QAAQ,CAACM,cAAc,CAAC,EAChC;IACA,OAAO,IAAI;EACb;EACA,MAAMC,cAAc,GAClBL,MAAM,CAACM,KAAK,KAAK1B,SAAS,GACtBH,YAAY,CAACiB,oBAAoB,CAAC,GAClCjB,YAAY,CAACuB,MAAM,CAACM,KAAK,CAAC;EAChC;EACA;EACA,IAAI,OAAOD,cAAc,KAAK,QAAQ,EAAE,OAAO,IAAI;EACnD,MAAME,sBAAsB,GAAGF,cAAc,KAAK,CAAC;EACnD,MAAMC,KAAK,GACT,CAAEC,sBAAsB,IAAI,CAAC,GAAKA,sBAAsB,KAAK,EAAG,MAAM,CAAC;EACzE,OAAO;IACLD,KAAK,EAAEA,KAA8B;IACrCL,OAAO;IACPC,OAAO;IACPC,UAAU,EAAEhB,IAAI,CAACI,GAAG,CAAC,CAAC,EAAEY,UAAU,CAAC;IACnCC;EACF,CAAC;AACH;AAEA,SAASI,mBAAmBA,CAC1BC,KAAgC,EAChCC,MAAiC,EACxB;EACT,SAAS;;EACT,IAAID,KAAK,KAAK7B,SAAS,IAAI8B,MAAM,KAAK9B,SAAS,EAAE,OAAO6B,KAAK,KAAKC,MAAM;EACxE,MAAMC,cAAc,GAAGZ,yBAAyB,CAACU,KAAK,CAAC;EACvD,MAAMG,eAAe,GAAGb,yBAAyB,CAACW,MAAM,CAAC;EACzD,OACEC,cAAc,KAAK,IAAI,IACvBA,cAAc,KAAK/B,SAAS,IAC5BgC,eAAe,KAAK,IAAI,IACxBA,eAAe,KAAKhC,SAAS,IAC7B+B,cAAc,CAACL,KAAK,KAAKM,eAAe,CAACN,KAAK,IAC9CK,cAAc,CAACV,OAAO,KAAKW,eAAe,CAACX,OAAO,IAClDU,cAAc,CAACT,OAAO,KAAKU,eAAe,CAACV,OAAO,IAClDS,cAAc,CAACR,UAAU,KAAKS,eAAe,CAACT,UAAU,IACxDQ,cAAc,CAACP,cAAc,KAAKQ,eAAe,CAACR,cAAc;AAEpE;AAEA,OAAO,SAASS,oBAAoBA,CAACC,QAAsB,EAAW;EACpE,SAAS;;EACT,MAAMC,KAAK,GAAG5B,IAAI,CAACI,GAAG,CAAC,CAAC,EAAEuB,QAAQ,CAACC,KAAK,CAAC;EACzC,MAAMC,MAAM,GAAG7B,IAAI,CAACI,GAAG,CAAC,CAAC,EAAEuB,QAAQ,CAACE,MAAM,CAAC;EAC3C,OACEhC,MAAM,CAACc,QAAQ,CAACgB,QAAQ,CAACG,CAAC,CAAC,IAC3BjC,MAAM,CAACc,QAAQ,CAACgB,QAAQ,CAACI,CAAC,CAAC,IAC3BlC,MAAM,CAACc,QAAQ,CAACgB,QAAQ,CAACC,KAAK,CAAC,IAC/B/B,MAAM,CAACc,QAAQ,CAACgB,QAAQ,CAACE,MAAM,CAAC,IAChChC,MAAM,CAACc,QAAQ,CAACgB,QAAQ,CAACK,MAAM,CAAC,IAChCnC,MAAM,CAACc,QAAQ,CAACgB,QAAQ,CAACG,CAAC,GAAGF,KAAK,CAAC,IACnC/B,MAAM,CAACc,QAAQ,CAACgB,QAAQ,CAACI,CAAC,GAAGF,MAAM,CAAC,IACpCnB,sBAAsB,CAACiB,QAAQ,CAACM,aAAa,CAAC,IAC9CvB,sBAAsB,CAACiB,QAAQ,CAACO,cAAc,CAAC,IAC/CxB,sBAAsB,CAACiB,QAAQ,CAACQ,iBAAiB,CAAC,IAClDzB,sBAAsB,CAACiB,QAAQ,CAACS,gBAAgB,CAAC,IACjD5B,WAAW,CAACmB,QAAQ,CAAClB,KAAK,CAAC;AAE/B;AAEA,SAAS4B,qBAAqBA,CAACV,QAAsB,EAAU;EAC7D,SAAS;;EACT,OAAOA,QAAQ,CAACM,aAAa,IAAIN,QAAQ,CAACK,MAAM;AAClD;AAEA,SAASM,sBAAsBA,CAACX,QAAsB,EAAU;EAC9D,SAAS;;EACT,OAAOA,QAAQ,CAACO,cAAc,IAAIP,QAAQ,CAACK,MAAM;AACnD;AAEA,SAASO,yBAAyBA,CAACZ,QAAsB,EAAU;EACjE,SAAS;;EACT,OAAOA,QAAQ,CAACQ,iBAAiB,IAAIR,QAAQ,CAACK,MAAM;AACtD;AAEA,SAASQ,wBAAwBA,CAACb,QAAsB,EAAU;EAChE,SAAS;;EACT,OAAOA,QAAQ,CAACS,gBAAgB,IAAIT,QAAQ,CAACK,MAAM;AACrD;AAEA,SAASS,aAAaA,CAACd,QAAsB,EAAa;EACxD,SAAS;;EACT,OAAOA,QAAQ,CAAClB,KAAK,IAAI,UAAU;AACrC;AAEA,OAAO,SAASiC,kBAAkBA,CAChCpB,KAA0B,EAC1BC,MAAoB,EACX;EACT,SAAS;;EACT,OACED,KAAK,KAAK,IAAI,IACdA,KAAK,CAACQ,CAAC,KAAKP,MAAM,CAACO,CAAC,IACpBR,KAAK,CAACS,CAAC,KAAKR,MAAM,CAACQ,CAAC,IACpBT,KAAK,CAACM,KAAK,KAAKL,MAAM,CAACK,KAAK,IAC5BN,KAAK,CAACO,MAAM,KAAKN,MAAM,CAACM,MAAM,IAC9BP,KAAK,CAACU,MAAM,KAAKT,MAAM,CAACS,MAAM,IAC9BK,qBAAqB,CAACf,KAAK,CAAC,KAAKe,qBAAqB,CAACd,MAAM,CAAC,IAC9De,sBAAsB,CAAChB,KAAK,CAAC,KAAKgB,sBAAsB,CAACf,MAAM,CAAC,IAChEgB,yBAAyB,CAACjB,KAAK,CAAC,KAAKiB,yBAAyB,CAAChB,MAAM,CAAC,IACtEiB,wBAAwB,CAAClB,KAAK,CAAC,KAAKkB,wBAAwB,CAACjB,MAAM,CAAC,IACpEkB,aAAa,CAACnB,KAAK,CAAC,KAAKmB,aAAa,CAAClB,MAAM,CAAC;AAElD;AAEA,SAASoB,oBAAoBA,CAACxC,YAAoC,EAAU;EAC1E,SAAS;;EACT,OAAOA,YAAY,CAACyC,YAAY,IAAI,CAAC;AACvC;AAEA,OAAO,SAASC,wBAAwBA,CACtC1C,YAAoC,EAC3B;EACT,SAAS;;EACT,MAAMyC,YAAY,GAAGD,oBAAoB,CAACxC,YAAY,CAAC;EACvD,MAAMU,MAAM,GAAGD,yBAAyB,CAACT,YAAY,CAAC2C,SAAS,CAAC;EAChE,OACEpB,oBAAoB,CAACvB,YAAY,CAAC4C,IAAI,CAAC,IACvClD,MAAM,CAACc,QAAQ,CAACR,YAAY,CAAC6C,iBAAiB,CAAC,IAC/CnD,MAAM,CAACc,QAAQ,CAACR,YAAY,CAAC8C,iBAAiB,CAAC,IAC/CpD,MAAM,CAACc,QAAQ,CAACiC,YAAY,CAAC,IAC7BA,YAAY,GAAG,CAAC,IAChB/C,MAAM,CAACc,QAAQ,CAACpB,eAAe,CAACY,YAAY,CAACX,QAAQ,CAAC,CAAC,IACvDK,MAAM,CAACc,QAAQ,CAACR,YAAY,CAACG,OAAO,IAAI,CAAC,CAAC,IAC1CO,MAAM,KAAK,IAAI;AAEnB;AAEA,OAAO,SAASqC,sBAAsBA,CACpC5B,KAAoC,EACpCC,MAA8B,EACrB;EACT,SAAS;;EACT,OACED,KAAK,KAAK,IAAI,IACdoB,kBAAkB,CAACpB,KAAK,CAACyB,IAAI,EAAExB,MAAM,CAACwB,IAAI,CAAC,IAC3CzB,KAAK,CAAC0B,iBAAiB,KAAKzB,MAAM,CAACyB,iBAAiB,IACpD1B,KAAK,CAAC2B,iBAAiB,KAAK1B,MAAM,CAAC0B,iBAAiB,IACpDN,oBAAoB,CAACrB,KAAK,CAAC,KAAKqB,oBAAoB,CAACpB,MAAM,CAAC,IAC5DhC,eAAe,CAAC+B,KAAK,CAAC9B,QAAQ,CAAC,KAAKD,eAAe,CAACgC,MAAM,CAAC/B,QAAQ,CAAC,IACpEU,eAAe,CAACoB,KAAK,CAAC,KAAKpB,eAAe,CAACqB,MAAM,CAAC,IAClDF,mBAAmB,CAACC,KAAK,CAACwB,SAAS,EAAEvB,MAAM,CAACuB,SAAS,CAAC;AAE1D;AAEA,SAASK,2BAA2BA,CAClCxB,QAAsB,EACtBG,CAAS,EACTC,CAAS,EACTH,KAAa,EACbC,MAAc,EACS;EACvB,SAAS;;EACT,MAAMI,aAAa,GAAGjC,IAAI,CAACI,GAAG,CAAC,CAAC,EAAEiC,qBAAqB,CAACV,QAAQ,CAAC,CAAC;EAClE,MAAMO,cAAc,GAAGlC,IAAI,CAACI,GAAG,CAAC,CAAC,EAAEkC,sBAAsB,CAACX,QAAQ,CAAC,CAAC;EACpE,MAAMQ,iBAAiB,GAAGnC,IAAI,CAACI,GAAG,CAAC,CAAC,EAAEmC,yBAAyB,CAACZ,QAAQ,CAAC,CAAC;EAC1E,MAAMS,gBAAgB,GAAGpC,IAAI,CAACI,GAAG,CAAC,CAAC,EAAEoC,wBAAwB,CAACb,QAAQ,CAAC,CAAC;;EAExE;EACA;EACA,IAAIyB,KAAK,GAAG,CAAC;EACb,MAAMC,GAAG,GAAGpB,aAAa,GAAGC,cAAc;EAC1C,MAAMoB,KAAK,GAAGpB,cAAc,GAAGC,iBAAiB;EAChD,MAAMoB,MAAM,GAAGnB,gBAAgB,GAAGD,iBAAiB;EACnD,MAAMqB,IAAI,GAAGvB,aAAa,GAAGG,gBAAgB;EAE7C,IAAIiB,GAAG,GAAG,CAAC,EAAED,KAAK,GAAGpD,IAAI,CAACK,GAAG,CAAC+C,KAAK,EAAExB,KAAK,GAAGyB,GAAG,CAAC;EACjD,IAAIC,KAAK,GAAG,CAAC,EAAEF,KAAK,GAAGpD,IAAI,CAACK,GAAG,CAAC+C,KAAK,EAAEvB,MAAM,GAAGyB,KAAK,CAAC;EACtD,IAAIC,MAAM,GAAG,CAAC,EAAEH,KAAK,GAAGpD,IAAI,CAACK,GAAG,CAAC+C,KAAK,EAAExB,KAAK,GAAG2B,MAAM,CAAC;EACvD,IAAIC,IAAI,GAAG,CAAC,EAAEJ,KAAK,GAAGpD,IAAI,CAACK,GAAG,CAAC+C,KAAK,EAAEvB,MAAM,GAAG2B,IAAI,CAAC;EACpDJ,KAAK,GAAGpD,IAAI,CAACI,GAAG,CAAC,CAAC,EAAEJ,IAAI,CAACK,GAAG,CAAC,CAAC,EAAE+C,KAAK,CAAC,CAAC;EAEvC,MAAMK,sBAAsB,GAAGxB,aAAa,GAAGmB,KAAK;EACpD,MAAMM,uBAAuB,GAAGxB,cAAc,GAAGkB,KAAK;EACtD,MAAMO,0BAA0B,GAAGxB,iBAAiB,GAAGiB,KAAK;EAC5D,MAAMQ,yBAAyB,GAAGxB,gBAAgB,GAAGgB,KAAK;EAC1D,MAAMpB,MAAM,GACVyB,sBAAsB,KAAKC,uBAAuB,IAClDA,uBAAuB,KAAKC,0BAA0B,IACtDA,0BAA0B,KAAKC,yBAAyB,GACpDH,sBAAsB,GACtB,CAAC;EAEP,OAAO;IACL3B,CAAC;IACDC,CAAC;IACDH,KAAK;IACLC,MAAM;IACNG,MAAM;IACNC,aAAa,EAAEwB,sBAAsB;IACrCvB,cAAc,EAAEwB,uBAAuB;IACvCvB,iBAAiB,EAAEwB,0BAA0B;IAC7CvB,gBAAgB,EAAEwB,yBAAyB;IAC3CnD,KAAK,EAAEgC,aAAa,CAACd,QAAQ;EAC/B,CAAC;AACH;;AAEA;AACA;AACA;AACA,OAAO,SAASkC,wBAAwBA,CACtClC,QAAsB,EACQ;EAC9B,SAAS;;EACT,IAAI,CAACD,oBAAoB,CAACC,QAAQ,CAAC,EAAE,OAAO,IAAI;EAEhD,MAAMC,KAAK,GAAG5B,IAAI,CAACI,GAAG,CAAC,CAAC,EAAEuB,QAAQ,CAACC,KAAK,CAAC;EACzC,MAAMC,MAAM,GAAG7B,IAAI,CAACI,GAAG,CAAC,CAAC,EAAEuB,QAAQ,CAACE,MAAM,CAAC;EAC3C,OAAOsB,2BAA2B,CAChCxB,QAAQ,EACRA,QAAQ,CAACG,CAAC,EACVH,QAAQ,CAACI,CAAC,EACVH,KAAK,EACLC,MACF,CAAC;AACH;AAEA,OAAO,SAASiC,4BAA4BA,CAC1C3D,YAAoC,EACI;EACxC,SAAS;;EACT,IAAI,CAAC0C,wBAAwB,CAAC1C,YAAY,CAAC,EAAE,OAAO,IAAI;EAExD,MAAM4C,IAAI,GAAGc,wBAAwB,CAAC1D,YAAY,CAAC4C,IAAI,CAAC;EACxD,IAAIA,IAAI,KAAK,IAAI,EAAE,OAAO,IAAI;EAC9B,MAAMD,SAAS,GAAGlC,yBAAyB,CAACT,YAAY,CAAC2C,SAAS,CAAC;EACnE,IAAIA,SAAS,KAAK,IAAI,EAAE,OAAO,IAAI;EAEnC,OAAO;IACLC,IAAI;IACJC,iBAAiB,EAAE7C,YAAY,CAAC6C,iBAAiB;IACjDC,iBAAiB,EAAE9C,YAAY,CAAC8C,iBAAiB;IACjDL,YAAY,EAAED,oBAAoB,CAACxC,YAAY,CAAC;IAChDX,QAAQ,EAAE,GAAGD,eAAe,CAACY,YAAY,CAACX,QAAQ,CAAC,KAAK;IACxDc,OAAO,EAAEJ,eAAe,CAACC,YAAY,CAAC;IACtC,IAAI2C,SAAS,KAAKrD,SAAS,GAAG,CAAC,CAAC,GAAG;MAAEqD;IAAU,CAAC;EAClD,CAAC;AACH;;AAEA;AACA;AACA,OAAO,SAASiB,sBAAsBA,CACpChB,IAAkB,EAClBC,iBAAiB,GAAG,CAAC,EACrBC,iBAAiB,GAAG,CAAC,EACrBL,YAAY,GAAG,CAAC,EAChBE,SAAyB,EACQ;EACjC,SAAS;;EACT,MAAMkB,aAAa,GAAGH,wBAAwB,CAACd,IAAI,CAAC;EACpD,MAAMkB,eAAe,GAAGrD,yBAAyB,CAACkC,SAAS,CAAC;EAC5D,OAAO;IACL;IACA;IACAC,IAAI,EAAEiB,aAAa,IAAI;MACrBlC,CAAC,EAAEiB,IAAI,CAACjB,CAAC;MACTC,CAAC,EAAEgB,IAAI,CAAChB,CAAC;MACTH,KAAK,EAAEmB,IAAI,CAACnB,KAAK;MACjBC,MAAM,EAAEkB,IAAI,CAAClB,MAAM;MACnBG,MAAM,EAAEe,IAAI,CAACf,MAAM;MACnBC,aAAa,EAAEI,qBAAqB,CAACU,IAAI,CAAC;MAC1Cb,cAAc,EAAEI,sBAAsB,CAACS,IAAI,CAAC;MAC5CZ,iBAAiB,EAAEI,yBAAyB,CAACQ,IAAI,CAAC;MAClDX,gBAAgB,EAAEI,wBAAwB,CAACO,IAAI,CAAC;MAChDtC,KAAK,EAAEgC,aAAa,CAACM,IAAI;IAC3B,CAAC;IACDC,iBAAiB;IACjBC,iBAAiB;IACjBL,YAAY;IACZpD,QAAQ,EAAE,MAAM;IAChBc,OAAO,EAAE,CAAC;IACV,IAAI2D,eAAe,KAAKxE,SAAS,GAC7B,CAAC,CAAC,GACF;MACE;MACA;MACAqD,SAAS,EAAGmB,eAAe,IAAInB;IACjC,CAAC;EACP,CAAC;AACH","ignoreList":[]}
@@ -6,7 +6,7 @@
6
6
  * Versionless native packet layout. Keep this as the single JS codec used by
7
7
  * drivers, groups, snapshots, and cancellation.
8
8
  */
9
- export const PRESENTATION_STRIDE = 21;
9
+ export const PRESENTATION_STRIDE = 23;
10
10
  export function appendPresentationPacket(values, presentation) {
11
11
  'worklet';
12
12
 
@@ -18,7 +18,7 @@ export function appendPresentationPacket(values, presentation) {
18
18
  boxShadow
19
19
  } = presentation;
20
20
  const color = (boxShadow?.color ?? 0x000000ff) >>> 0;
21
- values.push(clip.x, clip.y, clip.width, clip.height, clip.topLeftRadius, clip.topRightRadius, clip.bottomRightRadius, clip.bottomLeftRadius, clip.curve === 'continuous' ? 1 : 0, contentTranslateX, contentTranslateY, contentScale, boxShadow === undefined ? 0 : 1, (color >>> 24 & 0xff) / 255, (color >>> 16 & 0xff) / 255, (color >>> 8 & 0xff) / 255, (color & 0xff) / 255, boxShadow?.offsetX ?? 0, boxShadow?.offsetY ?? 0, boxShadow?.blurRadius ?? 0, boxShadow?.spreadDistance ?? 0);
21
+ values.push(clip.x, clip.y, clip.width, clip.height, clip.topLeftRadius, clip.topRightRadius, clip.bottomRightRadius, clip.bottomLeftRadius, clip.curve === 'continuous' ? 1 : 0, contentTranslateX, contentTranslateY, contentScale, boxShadow === undefined ? 0 : 1, (color >>> 24 & 0xff) / 255, (color >>> 16 & 0xff) / 255, (color >>> 8 & 0xff) / 255, (color & 0xff) / 255, boxShadow?.offsetX ?? 0, boxShadow?.offsetY ?? 0, boxShadow?.blurRadius ?? 0, boxShadow?.spreadDistance ?? 0, Number(presentation.rotation.slice(0, -3)), presentation.opacity);
22
22
  }
23
23
  export function presentationPacket(presentation) {
24
24
  'worklet';
@@ -46,7 +46,7 @@ export function presentationFromPacket(values, offset = 0) {
46
46
  const blue = values[offset + 15];
47
47
  const alpha = values[offset + 16];
48
48
  const blurRadius = values[offset + 19];
49
- if (curveCode !== 0 && curveCode !== 1 || contentScale <= 0 || shadowEnabledCode !== 0 && shadowEnabledCode !== 1 || red < 0 || red > 1 || green < 0 || green > 1 || blue < 0 || blue > 1 || alpha < 0 || alpha > 1 || blurRadius < 0) {
49
+ if (curveCode !== 0 && curveCode !== 1 || contentScale <= 0 || shadowEnabledCode !== 0 && shadowEnabledCode !== 1 || red < 0 || red > 1 || green < 0 || green > 1 || blue < 0 || blue > 1 || alpha < 0 || alpha > 1 || values[offset + 22] < 0 || values[offset + 22] > 1 || blurRadius < 0) {
50
50
  return null;
51
51
  }
52
52
  const shadowEnabled = shadowEnabledCode === 1;
@@ -67,6 +67,8 @@ export function presentationFromPacket(values, offset = 0) {
67
67
  contentTranslateX: values[offset + 9],
68
68
  contentTranslateY: values[offset + 10],
69
69
  contentScale,
70
+ rotation: `${values[offset + 21]}rad`,
71
+ opacity: values[offset + 22],
70
72
  ...(shadowEnabled ? {
71
73
  boxShadow: {
72
74
  color,
@@ -1 +1 @@
1
- {"version":3,"names":["PRESENTATION_STRIDE","appendPresentationPacket","values","presentation","clip","contentTranslateX","contentTranslateY","contentScale","boxShadow","color","push","x","y","width","height","topLeftRadius","topRightRadius","bottomRightRadius","bottomLeftRadius","curve","undefined","offsetX","offsetY","blurRadius","spreadDistance","presentationPacket","presentationFromPacket","offset","length","index","Number","isFinite","curveCode","shadowEnabledCode","red","green","blue","alpha","shadowEnabled","Math","round","radius"],"sourceRoot":"../../src","sources":["presentationCodec.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["PRESENTATION_STRIDE","appendPresentationPacket","values","presentation","clip","contentTranslateX","contentTranslateY","contentScale","boxShadow","color","push","x","y","width","height","topLeftRadius","topRightRadius","bottomRightRadius","bottomLeftRadius","curve","undefined","offsetX","offsetY","blurRadius","spreadDistance","Number","rotation","slice","opacity","presentationPacket","presentationFromPacket","offset","length","index","isFinite","curveCode","shadowEnabledCode","red","green","blue","alpha","shadowEnabled","Math","round","radius"],"sourceRoot":"../../src","sources":["presentationCodec.ts"],"mappings":";;AAAA;;AAGA;AACA;AACA;AACA;AACA,OAAO,MAAMA,mBAAmB,GAAG,EAAE;AAErC,OAAO,SAASC,wBAAwBA,CACtCC,MAAgB,EAChBC,YAA6C,EACvC;EACN,SAAS;;EACT,MAAM;IACJC,IAAI;IACJC,iBAAiB;IACjBC,iBAAiB;IACjBC,YAAY;IACZC;EACF,CAAC,GAAGL,YAAY;EAChB,MAAMM,KAAK,GAAG,CAAED,SAAS,EAAEC,KAAK,IAA0B,UAAU,MAAM,CAAC;EAC3EP,MAAM,CAACQ,IAAI,CACTN,IAAI,CAACO,CAAC,EACNP,IAAI,CAACQ,CAAC,EACNR,IAAI,CAACS,KAAK,EACVT,IAAI,CAACU,MAAM,EACXV,IAAI,CAACW,aAAa,EAClBX,IAAI,CAACY,cAAc,EACnBZ,IAAI,CAACa,iBAAiB,EACtBb,IAAI,CAACc,gBAAgB,EACrBd,IAAI,CAACe,KAAK,KAAK,YAAY,GAAG,CAAC,GAAG,CAAC,EACnCd,iBAAiB,EACjBC,iBAAiB,EACjBC,YAAY,EACZC,SAAS,KAAKY,SAAS,GAAG,CAAC,GAAG,CAAC,EAC/B,CAAEX,KAAK,KAAK,EAAE,GAAI,IAAI,IAAI,GAAG,EAC7B,CAAEA,KAAK,KAAK,EAAE,GAAI,IAAI,IAAI,GAAG,EAC7B,CAAEA,KAAK,KAAK,CAAC,GAAI,IAAI,IAAI,GAAG,EAC5B,CAACA,KAAK,GAAG,IAAI,IAAI,GAAG,EACpBD,SAAS,EAAEa,OAAO,IAAI,CAAC,EACvBb,SAAS,EAAEc,OAAO,IAAI,CAAC,EACvBd,SAAS,EAAEe,UAAU,IAAI,CAAC,EAC1Bf,SAAS,EAAEgB,cAAc,IAAI,CAAC,EAC9BC,MAAM,CAACtB,YAAY,CAACuB,QAAQ,CAACC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAC1CxB,YAAY,CAACyB,OACf,CAAC;AACH;AAEA,OAAO,SAASC,kBAAkBA,CAChC1B,YAA6C,EACnC;EACV,SAAS;;EACT,MAAMD,MAAgB,GAAG,EAAE;EAC3BD,wBAAwB,CAACC,MAAM,EAAEC,YAAY,CAAC;EAC9C,OAAOD,MAAM;AACf;AAEA,OAAO,SAAS4B,sBAAsBA,CACpC5B,MAAyB,EACzB6B,MAAM,GAAG,CAAC,EAC8B;EACxC,SAAS;;EACT,IAAI7B,MAAM,CAAC8B,MAAM,GAAGD,MAAM,GAAG/B,mBAAmB,EAAE,OAAO,IAAI;EAC7D,KAAK,IAAIiC,KAAK,GAAGF,MAAM,EAAEE,KAAK,GAAGF,MAAM,GAAG/B,mBAAmB,EAAEiC,KAAK,IAAI,CAAC,EAAE;IACzE,IAAI,CAACR,MAAM,CAACS,QAAQ,CAAChC,MAAM,CAAC+B,KAAK,CAAC,CAAC,EAAE,OAAO,IAAI;EAClD;EACA,MAAMlB,aAAa,GAAGb,MAAM,CAAC6B,MAAM,GAAG,CAAC,CAAW;EAClD,MAAMf,cAAc,GAAGd,MAAM,CAAC6B,MAAM,GAAG,CAAC,CAAW;EACnD,MAAMd,iBAAiB,GAAGf,MAAM,CAAC6B,MAAM,GAAG,CAAC,CAAW;EACtD,MAAMb,gBAAgB,GAAGhB,MAAM,CAAC6B,MAAM,GAAG,CAAC,CAAW;EACrD,MAAMI,SAAS,GAAGjC,MAAM,CAAC6B,MAAM,GAAG,CAAC,CAAW;EAC9C,MAAMxB,YAAY,GAAGL,MAAM,CAAC6B,MAAM,GAAG,EAAE,CAAW;EAClD,MAAMK,iBAAiB,GAAGlC,MAAM,CAAC6B,MAAM,GAAG,EAAE,CAAW;EACvD,MAAMM,GAAG,GAAGnC,MAAM,CAAC6B,MAAM,GAAG,EAAE,CAAW;EACzC,MAAMO,KAAK,GAAGpC,MAAM,CAAC6B,MAAM,GAAG,EAAE,CAAW;EAC3C,MAAMQ,IAAI,GAAGrC,MAAM,CAAC6B,MAAM,GAAG,EAAE,CAAW;EAC1C,MAAMS,KAAK,GAAGtC,MAAM,CAAC6B,MAAM,GAAG,EAAE,CAAW;EAC3C,MAAMR,UAAU,GAAGrB,MAAM,CAAC6B,MAAM,GAAG,EAAE,CAAW;EAChD,IACGI,SAAS,KAAK,CAAC,IAAIA,SAAS,KAAK,CAAC,IACnC5B,YAAY,IAAI,CAAC,IAChB6B,iBAAiB,KAAK,CAAC,IAAIA,iBAAiB,KAAK,CAAE,IACpDC,GAAG,GAAG,CAAC,IACPA,GAAG,GAAG,CAAC,IACPC,KAAK,GAAG,CAAC,IACTA,KAAK,GAAG,CAAC,IACTC,IAAI,GAAG,CAAC,IACRA,IAAI,GAAG,CAAC,IACRC,KAAK,GAAG,CAAC,IACTA,KAAK,GAAG,CAAC,IACRtC,MAAM,CAAC6B,MAAM,GAAG,EAAE,CAAC,GAAc,CAAC,IAClC7B,MAAM,CAAC6B,MAAM,GAAG,EAAE,CAAC,GAAc,CAAC,IACnCR,UAAU,GAAG,CAAC,EACd;IACA,OAAO,IAAI;EACb;EACA,MAAMkB,aAAa,GAAGL,iBAAiB,KAAK,CAAC;EAC7C,MAAM3B,KAAK,GACT,CAAEiC,IAAI,CAACC,KAAK,CAACN,GAAG,GAAG,GAAG,CAAC,IAAI,EAAE,GAC1BK,IAAI,CAACC,KAAK,CAACL,KAAK,GAAG,GAAG,CAAC,IAAI,EAAG,GAC9BI,IAAI,CAACC,KAAK,CAACJ,IAAI,GAAG,GAAG,CAAC,IAAI,CAAE,GAC7BG,IAAI,CAACC,KAAK,CAACH,KAAK,GAAG,GAAG,CAAC,MACzB,CAAC;EACH,OAAO;IACLpC,IAAI,EAAE;MACJO,CAAC,EAAET,MAAM,CAAC6B,MAAM,CAAW;MAC3BnB,CAAC,EAAEV,MAAM,CAAC6B,MAAM,GAAG,CAAC,CAAW;MAC/BlB,KAAK,EAAEX,MAAM,CAAC6B,MAAM,GAAG,CAAC,CAAW;MACnCjB,MAAM,EAAEZ,MAAM,CAAC6B,MAAM,GAAG,CAAC,CAAW;MACpCa,MAAM,EACJ7B,aAAa,KAAKC,cAAc,IAChCD,aAAa,KAAKE,iBAAiB,IACnCF,aAAa,KAAKG,gBAAgB,GAC9BH,aAAa,GACb,CAAC;MACPA,aAAa;MACbC,cAAc;MACdC,iBAAiB;MACjBC,gBAAgB;MAChBC,KAAK,EAAEgB,SAAS,KAAK,CAAC,GAAG,YAAY,GAAG;IAC1C,CAAC;IACD9B,iBAAiB,EAAEH,MAAM,CAAC6B,MAAM,GAAG,CAAC,CAAW;IAC/CzB,iBAAiB,EAAEJ,MAAM,CAAC6B,MAAM,GAAG,EAAE,CAAW;IAChDxB,YAAY;IACZmB,QAAQ,EAAE,GAAGxB,MAAM,CAAC6B,MAAM,GAAG,EAAE,CAAC,KAAe;IAC/CH,OAAO,EAAE1B,MAAM,CAAC6B,MAAM,GAAG,EAAE,CAAW;IACtC,IAAIU,aAAa,GACb;MACEjC,SAAS,EAAE;QACTC,KAAK;QACLY,OAAO,EAAEnB,MAAM,CAAC6B,MAAM,GAAG,EAAE,CAAW;QACtCT,OAAO,EAAEpB,MAAM,CAAC6B,MAAM,GAAG,EAAE,CAAW;QACtCR,UAAU;QACVC,cAAc,EAAEtB,MAAM,CAAC6B,MAAM,GAAG,EAAE;MACpC;IACF,CAAC,GACD,CAAC,CAAC;EACR,CAAC;AACH","ignoreList":[]}
@@ -21,7 +21,7 @@ export interface Spec extends TurboModule {
21
21
  animateSpringGroup(controllerId: CodegenTypes.Double, entries: ReadonlyArray<CodegenTypes.Double>, mass: CodegenTypes.Double, stiffness: CodegenTypes.Double, damping: CodegenTypes.Double, velocity: CodegenTypes.Double, energyThreshold: CodegenTypes.Double, reduceMotion: CodegenTypes.Int32, completionTag: CodegenTypes.Int32, startTimestamp: CodegenTypes.Double): CodegenTypes.Int32;
22
22
  cancelAnimationGroup(groupId: CodegenTypes.Int32, behavior: CodegenTypes.Int32): ReadonlyArray<CodegenTypes.Double>;
23
23
  setClipPresentation(driverId: CodegenTypes.Double, presentation: ReadonlyArray<CodegenTypes.Double>, takeOwnership: boolean, overridePendingAnimation: boolean): void;
24
- setClipFrameScalars(driverId: CodegenTypes.Double, x: CodegenTypes.Double, y: CodegenTypes.Double, width: CodegenTypes.Double, height: CodegenTypes.Double, topLeftRadius: CodegenTypes.Double, topRightRadius: CodegenTypes.Double, bottomRightRadius: CodegenTypes.Double, bottomLeftRadius: CodegenTypes.Double, curveCode: CodegenTypes.Int32, contentTranslateX: CodegenTypes.Double, contentTranslateY: CodegenTypes.Double, contentScale: CodegenTypes.Double, shadowEnabled: boolean, shadowRed: CodegenTypes.Double, shadowGreen: CodegenTypes.Double, shadowBlue: CodegenTypes.Double, shadowAlpha: CodegenTypes.Double, shadowOffsetX: CodegenTypes.Double, shadowOffsetY: CodegenTypes.Double, shadowBlurRadius: CodegenTypes.Double, shadowSpreadDistance: CodegenTypes.Double): void;
24
+ setClipFrameScalars(driverId: CodegenTypes.Double, x: CodegenTypes.Double, y: CodegenTypes.Double, width: CodegenTypes.Double, height: CodegenTypes.Double, topLeftRadius: CodegenTypes.Double, topRightRadius: CodegenTypes.Double, bottomRightRadius: CodegenTypes.Double, bottomLeftRadius: CodegenTypes.Double, curveCode: CodegenTypes.Int32, contentTranslateX: CodegenTypes.Double, contentTranslateY: CodegenTypes.Double, contentScale: CodegenTypes.Double, shadowEnabled: boolean, shadowRed: CodegenTypes.Double, shadowGreen: CodegenTypes.Double, shadowBlue: CodegenTypes.Double, shadowAlpha: CodegenTypes.Double, shadowOffsetX: CodegenTypes.Double, shadowOffsetY: CodegenTypes.Double, shadowBlurRadius: CodegenTypes.Double, shadowSpreadDistance: CodegenTypes.Double, rotation: CodegenTypes.Double, opacity: CodegenTypes.Double): void;
25
25
  beginInteraction(driverId: CodegenTypes.Double): ReadonlyArray<CodegenTypes.Double>;
26
26
  snapshotCurrent(driverId: CodegenTypes.Double): ReadonlyArray<CodegenTypes.Double>;
27
27
  animateTiming(driverId: CodegenTypes.Double, start: ReadonlyArray<CodegenTypes.Double>, target: ReadonlyArray<CodegenTypes.Double>, durationMs: CodegenTypes.Double, controlPoint1X: CodegenTypes.Double, controlPoint1Y: CodegenTypes.Double, controlPoint2X: CodegenTypes.Double, controlPoint2Y: CodegenTypes.Double, reduceMotion: CodegenTypes.Int32, completionTag: CodegenTypes.Int32): CodegenTypes.Int32;
@@ -1 +1 @@
1
- {"version":3,"file":"NativeSmoothClipModule.d.ts","sourceRoot":"","sources":["../../../src/NativeSmoothClipModule.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"NativeSmoothClipModule.d.ts","sourceRoot":"","sources":["../../../src/NativeSmoothClipModule.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"SmoothClipView.ios.d.ts","sourceRoot":"","sources":["../../../src/SmoothClipView.ios.tsx"],"names":[],"mappings":"AACA,OAAO,EAGL,KAAK,YAAY,EACjB,KAAK,YAAY,EACjB,KAAK,YAAY,EACjB,KAAK,SAAS,EACf,MAAM,OAAO,CAAC;AACf,OAAO,EAAc,KAAK,SAAS,EAAkB,MAAM,cAAc,CAAC;AAC1E,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,sBAAmB,CAAC;AAE9D,OAAO,oBAEN,MAAM,iCAAiC,CAAC;AAEzC,MAAM,MAAM,mBAAmB,GAAG,SAAS,GAAG;IAC5C,UAAU,EAAE,oBAAoB,CAAC;IACjC,QAAQ,CAAC,EAAE,SAAS,CAAC;CACtB,CAAC;AAsDF,mFAAmF;AACnF,wBAAgB,uBAAuB,CACrC,KAAK,EAAE,SAAS,CAAC,OAAO,CAAC,GACxB,SAAS,CAAC,OAAO,CAAC,CAkCpB;AAED,wBAAgB,oBAAoB,CAClC,EAAE,UAAU,EAAE,QAAQ,EAAE,KAAK,EAAE,GAAG,SAAS,EAAE,EAAE,mBAAmB,EAClE,YAAY,EAAE,YAAY,CAAC,YAAY,CAAC,OAAO,oBAAoB,CAAC,CAAC,GACpE,YAAY,CAsCd;AAED,eAAO,MAAM,cAAc;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;gBA1Ib,oBAAoB;eACrB,SAAS;mIA+IpB,CAAC"}
1
+ {"version":3,"file":"SmoothClipView.ios.d.ts","sourceRoot":"","sources":["../../../src/SmoothClipView.ios.tsx"],"names":[],"mappings":"AACA,OAAO,EAGL,KAAK,YAAY,EACjB,KAAK,YAAY,EACjB,KAAK,YAAY,EACjB,KAAK,SAAS,EACf,MAAM,OAAO,CAAC;AACf,OAAO,EAAc,KAAK,SAAS,EAAkB,MAAM,cAAc,CAAC;AAC1E,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,sBAAmB,CAAC;AAG9D,OAAO,oBAEN,MAAM,iCAAiC,CAAC;AAEzC,MAAM,MAAM,mBAAmB,GAAG,SAAS,GAAG;IAC5C,UAAU,EAAE,oBAAoB,CAAC;IACjC,QAAQ,CAAC,EAAE,SAAS,CAAC;CACtB,CAAC;AAsDF,mFAAmF;AACnF,wBAAgB,uBAAuB,CACrC,KAAK,EAAE,SAAS,CAAC,OAAO,CAAC,GACxB,SAAS,CAAC,OAAO,CAAC,CAkCpB;AAED,wBAAgB,oBAAoB,CAClC,EAAE,UAAU,EAAE,QAAQ,EAAE,KAAK,EAAE,GAAG,SAAS,EAAE,EAAE,mBAAmB,EAClE,YAAY,EAAE,YAAY,CAAC,YAAY,CAAC,OAAO,oBAAoB,CAAC,CAAC,GACpE,YAAY,CAwCd;AAED,eAAO,MAAM,cAAc;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;gBA5Ib,oBAAoB;eACrB,SAAS;mIAiJpB,CAAC"}
@@ -13,6 +13,8 @@ export interface NativeProps extends ViewProps {
13
13
  initialContentTranslateX: CodegenTypes.Double;
14
14
  initialContentTranslateY: CodegenTypes.Double;
15
15
  initialContentScale: CodegenTypes.Double;
16
+ initialRotation: CodegenTypes.Double;
17
+ initialOpacity?: CodegenTypes.WithDefault<CodegenTypes.Double, 1>;
16
18
  initialClipBoxShadowEnabled: boolean;
17
19
  initialClipBoxShadowRed: CodegenTypes.Double;
18
20
  initialClipBoxShadowGreen: CodegenTypes.Double;
@@ -24,7 +26,7 @@ export interface NativeProps extends ViewProps {
24
26
  initialClipBoxShadowSpreadDistance: CodegenTypes.Double;
25
27
  }
26
28
  interface NativeCommands {
27
- setClipPresentation: (viewRef: React.ElementRef<HostComponent<NativeProps>>, x: CodegenTypes.Double, y: CodegenTypes.Double, width: CodegenTypes.Double, height: CodegenTypes.Double, topLeftRadius: CodegenTypes.Double, topRightRadius: CodegenTypes.Double, bottomRightRadius: CodegenTypes.Double, bottomLeftRadius: CodegenTypes.Double, curveCode: CodegenTypes.Int32, contentTranslateX: CodegenTypes.Double, contentTranslateY: CodegenTypes.Double, contentScale: CodegenTypes.Double, shadowEnabled: boolean, shadowRed: CodegenTypes.Double, shadowGreen: CodegenTypes.Double, shadowBlue: CodegenTypes.Double, shadowAlpha: CodegenTypes.Double, shadowOffsetX: CodegenTypes.Double, shadowOffsetY: CodegenTypes.Double, shadowBlurRadius: CodegenTypes.Double, shadowSpreadDistance: CodegenTypes.Double) => void;
29
+ setClipPresentation: (viewRef: React.ElementRef<HostComponent<NativeProps>>, x: CodegenTypes.Double, y: CodegenTypes.Double, width: CodegenTypes.Double, height: CodegenTypes.Double, topLeftRadius: CodegenTypes.Double, topRightRadius: CodegenTypes.Double, bottomRightRadius: CodegenTypes.Double, bottomLeftRadius: CodegenTypes.Double, curveCode: CodegenTypes.Int32, contentTranslateX: CodegenTypes.Double, contentTranslateY: CodegenTypes.Double, contentScale: CodegenTypes.Double, shadowEnabled: boolean, shadowRed: CodegenTypes.Double, shadowGreen: CodegenTypes.Double, shadowBlue: CodegenTypes.Double, shadowAlpha: CodegenTypes.Double, shadowOffsetX: CodegenTypes.Double, shadowOffsetY: CodegenTypes.Double, shadowBlurRadius: CodegenTypes.Double, shadowSpreadDistance: CodegenTypes.Double, rotation: CodegenTypes.Double, opacity: CodegenTypes.Double) => void;
28
30
  }
29
31
  export declare const Commands: NativeCommands;
30
32
  declare const _default: HostComponent<NativeProps>;
@@ -1 +1 @@
1
- {"version":3,"file":"SmoothClipViewNativeComponent.d.ts","sourceRoot":"","sources":["../../../src/SmoothClipViewNativeComponent.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,KAAK,YAAY,EACjB,KAAK,aAAa,EAClB,KAAK,SAAS,EACf,MAAM,cAAc,CAAC;AAEtB,MAAM,WAAW,WAAY,SAAQ,SAAS;IAC5C,QAAQ,EAAE,YAAY,CAAC,MAAM,CAAC;IAC9B,YAAY,EAAE,YAAY,CAAC,MAAM,CAAC;IAClC,YAAY,EAAE,YAAY,CAAC,MAAM,CAAC;IAClC,gBAAgB,EAAE,YAAY,CAAC,MAAM,CAAC;IACtC,iBAAiB,EAAE,YAAY,CAAC,MAAM,CAAC;IACvC,wBAAwB,EAAE,YAAY,CAAC,MAAM,CAAC;IAC9C,yBAAyB,EAAE,YAAY,CAAC,MAAM,CAAC;IAC/C,4BAA4B,EAAE,YAAY,CAAC,MAAM,CAAC;IAClD,2BAA2B,EAAE,YAAY,CAAC,MAAM,CAAC;IACjD,gBAAgB,EAAE,YAAY,CAAC,KAAK,CAAC;IACrC,wBAAwB,EAAE,YAAY,CAAC,MAAM,CAAC;IAC9C,wBAAwB,EAAE,YAAY,CAAC,MAAM,CAAC;IAC9C,mBAAmB,EAAE,YAAY,CAAC,MAAM,CAAC;IACzC,2BAA2B,EAAE,OAAO,CAAC;IACrC,uBAAuB,EAAE,YAAY,CAAC,MAAM,CAAC;IAC7C,yBAAyB,EAAE,YAAY,CAAC,MAAM,CAAC;IAC/C,wBAAwB,EAAE,YAAY,CAAC,MAAM,CAAC;IAC9C,yBAAyB,EAAE,YAAY,CAAC,MAAM,CAAC;IAC/C,2BAA2B,EAAE,YAAY,CAAC,MAAM,CAAC;IACjD,2BAA2B,EAAE,YAAY,CAAC,MAAM,CAAC;IACjD,8BAA8B,EAAE,YAAY,CAAC,MAAM,CAAC;IACpD,kCAAkC,EAAE,YAAY,CAAC,MAAM,CAAC;CACzD;AAED,UAAU,cAAc;IACtB,mBAAmB,EAAE,CACnB,OAAO,EAAE,KAAK,CAAC,UAAU,CAAC,aAAa,CAAC,WAAW,CAAC,CAAC,EACrD,CAAC,EAAE,YAAY,CAAC,MAAM,EACtB,CAAC,EAAE,YAAY,CAAC,MAAM,EACtB,KAAK,EAAE,YAAY,CAAC,MAAM,EAC1B,MAAM,EAAE,YAAY,CAAC,MAAM,EAC3B,aAAa,EAAE,YAAY,CAAC,MAAM,EAClC,cAAc,EAAE,YAAY,CAAC,MAAM,EACnC,iBAAiB,EAAE,YAAY,CAAC,MAAM,EACtC,gBAAgB,EAAE,YAAY,CAAC,MAAM,EACrC,SAAS,EAAE,YAAY,CAAC,KAAK,EAC7B,iBAAiB,EAAE,YAAY,CAAC,MAAM,EACtC,iBAAiB,EAAE,YAAY,CAAC,MAAM,EACtC,YAAY,EAAE,YAAY,CAAC,MAAM,EACjC,aAAa,EAAE,OAAO,EACtB,SAAS,EAAE,YAAY,CAAC,MAAM,EAC9B,WAAW,EAAE,YAAY,CAAC,MAAM,EAChC,UAAU,EAAE,YAAY,CAAC,MAAM,EAC/B,WAAW,EAAE,YAAY,CAAC,MAAM,EAChC,aAAa,EAAE,YAAY,CAAC,MAAM,EAClC,aAAa,EAAE,YAAY,CAAC,MAAM,EAClC,gBAAgB,EAAE,YAAY,CAAC,MAAM,EACrC,oBAAoB,EAAE,YAAY,CAAC,MAAM,KACtC,IAAI,CAAC;CACX;AAED,eAAO,MAAM,QAAQ,EAAE,cAErB,CAAC;wBAIE,aAAa,CAAC,WAAW,CAAC;AAF/B,wBAEgC"}
1
+ {"version":3,"file":"SmoothClipViewNativeComponent.d.ts","sourceRoot":"","sources":["../../../src/SmoothClipViewNativeComponent.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,KAAK,YAAY,EACjB,KAAK,aAAa,EAClB,KAAK,SAAS,EACf,MAAM,cAAc,CAAC;AAEtB,MAAM,WAAW,WAAY,SAAQ,SAAS;IAC5C,QAAQ,EAAE,YAAY,CAAC,MAAM,CAAC;IAC9B,YAAY,EAAE,YAAY,CAAC,MAAM,CAAC;IAClC,YAAY,EAAE,YAAY,CAAC,MAAM,CAAC;IAClC,gBAAgB,EAAE,YAAY,CAAC,MAAM,CAAC;IACtC,iBAAiB,EAAE,YAAY,CAAC,MAAM,CAAC;IACvC,wBAAwB,EAAE,YAAY,CAAC,MAAM,CAAC;IAC9C,yBAAyB,EAAE,YAAY,CAAC,MAAM,CAAC;IAC/C,4BAA4B,EAAE,YAAY,CAAC,MAAM,CAAC;IAClD,2BAA2B,EAAE,YAAY,CAAC,MAAM,CAAC;IACjD,gBAAgB,EAAE,YAAY,CAAC,KAAK,CAAC;IACrC,wBAAwB,EAAE,YAAY,CAAC,MAAM,CAAC;IAC9C,wBAAwB,EAAE,YAAY,CAAC,MAAM,CAAC;IAC9C,mBAAmB,EAAE,YAAY,CAAC,MAAM,CAAC;IACzC,eAAe,EAAE,YAAY,CAAC,MAAM,CAAC;IACrC,cAAc,CAAC,EAAE,YAAY,CAAC,WAAW,CAAC,YAAY,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;IAClE,2BAA2B,EAAE,OAAO,CAAC;IACrC,uBAAuB,EAAE,YAAY,CAAC,MAAM,CAAC;IAC7C,yBAAyB,EAAE,YAAY,CAAC,MAAM,CAAC;IAC/C,wBAAwB,EAAE,YAAY,CAAC,MAAM,CAAC;IAC9C,yBAAyB,EAAE,YAAY,CAAC,MAAM,CAAC;IAC/C,2BAA2B,EAAE,YAAY,CAAC,MAAM,CAAC;IACjD,2BAA2B,EAAE,YAAY,CAAC,MAAM,CAAC;IACjD,8BAA8B,EAAE,YAAY,CAAC,MAAM,CAAC;IACpD,kCAAkC,EAAE,YAAY,CAAC,MAAM,CAAC;CACzD;AAED,UAAU,cAAc;IACtB,mBAAmB,EAAE,CACnB,OAAO,EAAE,KAAK,CAAC,UAAU,CAAC,aAAa,CAAC,WAAW,CAAC,CAAC,EACrD,CAAC,EAAE,YAAY,CAAC,MAAM,EACtB,CAAC,EAAE,YAAY,CAAC,MAAM,EACtB,KAAK,EAAE,YAAY,CAAC,MAAM,EAC1B,MAAM,EAAE,YAAY,CAAC,MAAM,EAC3B,aAAa,EAAE,YAAY,CAAC,MAAM,EAClC,cAAc,EAAE,YAAY,CAAC,MAAM,EACnC,iBAAiB,EAAE,YAAY,CAAC,MAAM,EACtC,gBAAgB,EAAE,YAAY,CAAC,MAAM,EACrC,SAAS,EAAE,YAAY,CAAC,KAAK,EAC7B,iBAAiB,EAAE,YAAY,CAAC,MAAM,EACtC,iBAAiB,EAAE,YAAY,CAAC,MAAM,EACtC,YAAY,EAAE,YAAY,CAAC,MAAM,EACjC,aAAa,EAAE,OAAO,EACtB,SAAS,EAAE,YAAY,CAAC,MAAM,EAC9B,WAAW,EAAE,YAAY,CAAC,MAAM,EAChC,UAAU,EAAE,YAAY,CAAC,MAAM,EAC/B,WAAW,EAAE,YAAY,CAAC,MAAM,EAChC,aAAa,EAAE,YAAY,CAAC,MAAM,EAClC,aAAa,EAAE,YAAY,CAAC,MAAM,EAClC,gBAAgB,EAAE,YAAY,CAAC,MAAM,EACrC,oBAAoB,EAAE,YAAY,CAAC,MAAM,EACzC,QAAQ,EAAE,YAAY,CAAC,MAAM,EAC7B,OAAO,EAAE,YAAY,CAAC,MAAM,KACzB,IAAI,CAAC;CACX;AAED,eAAO,MAAM,QAAQ,EAAE,cAErB,CAAC;wBAIE,aAAa,CAAC,WAAW,CAAC;AAF/B,wBAEgC"}
@@ -14,7 +14,11 @@ export type SpringClipAnimation = SmoothClipAnimationBase & Readonly<{
14
14
  mass?: number;
15
15
  stiffness?: number;
16
16
  damping?: number;
17
- /** Normalized progress velocity in inverse seconds. */
17
+ /**
18
+ * Initial progress velocity in inverse seconds; defaults to 0, with no
19
+ * automatic gesture-velocity inheritance. Each changing channel, including
20
+ * rotation and opacity, starts at velocity * (target - start).
21
+ */
18
22
  velocity?: number;
19
23
  /** Relative mechanical energy used to determine settlement. */
20
24
  energyThreshold?: number;
@@ -1 +1 @@
1
- {"version":3,"file":"controllerTypes.d.ts","sourceRoot":"","sources":["../../../src/controllerTypes.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"controllerTypes.d.ts","sourceRoot":"","sources":["../../../src/controllerTypes.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,5 @@
1
1
  import type { ColorValue } from 'react-native';
2
+ export type ClipRotation = `${number}deg` | `${number}rad`;
2
3
  export type ClipCurve = 'circular' | 'continuous';
3
4
  /** One numeric outset shadow following React Native's `boxShadow` field names. */
4
5
  export type ClipBoxShadow = Readonly<{
@@ -49,6 +50,10 @@ export type SmoothClipPresentation = Readonly<{
49
50
  contentTranslateY: number;
50
51
  /** Defaults to 1 when omitted. */
51
52
  contentScale?: number;
53
+ /** Clockwise rotation of aperture, content and shadow around the aperture center. */
54
+ rotation?: ClipRotation;
55
+ /** Opacity of the complete clipped object; defaults to 1. */
56
+ opacity?: number;
52
57
  boxShadow?: ClipBoxShadow;
53
58
  }>;
54
59
  export type CanonicalSmoothClipPresentation = Readonly<{
@@ -56,8 +61,12 @@ export type CanonicalSmoothClipPresentation = Readonly<{
56
61
  contentTranslateX: number;
57
62
  contentTranslateY: number;
58
63
  contentScale: number;
64
+ rotation: `${number}rad`;
65
+ opacity: number;
59
66
  boxShadow?: CanonicalClipBoxShadow;
60
67
  }>;
68
+ /** Numeric native angle. Invalid input remains NaN for atomic validation. */
69
+ export declare function rotationRadians(rotation: ClipRotation | undefined): number;
61
70
  export declare function isFiniteClipGeometry(geometry: ClipGeometry): boolean;
62
71
  export declare function clipGeometryEquals(first: ClipGeometry | null, second: ClipGeometry): boolean;
63
72
  export declare function isFiniteClipPresentation(presentation: SmoothClipPresentation): boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"geometry.d.ts","sourceRoot":"","sources":["../../../src/geometry.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"geometry.d.ts","sourceRoot":"","sources":["../../../src/geometry.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAG/C,MAAM,MAAM,YAAY,GAAG,GAAG,MAAM,KAAK,GAAG,GAAG,MAAM,KAAK,CAAC;AAE3D,MAAM,MAAM,SAAS,GAAG,UAAU,GAAG,YAAY,CAAC;AAElD,kFAAkF;AAClF,MAAM,MAAM,aAAa,GAAG,QAAQ,CAAC;IACnC,KAAK,CAAC,EAAE,UAAU,CAAC;IACnB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,2EAA2E;IAC3E,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB,CAAC,CAAC;AAEH,MAAM,MAAM,sBAAsB,GAAG,QAAQ,CAAC;IAC5C,2EAA2E;IAC3E,KAAK,EAAE,UAAU,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,MAAM,CAAC;IACnB,cAAc,EAAE,MAAM,CAAC;CACxB,CAAC,CAAC;AAEH,MAAM,MAAM,YAAY,GAAG,QAAQ,CAAC;IAClC,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;IACV,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,6DAA6D;IAC7D,MAAM,EAAE,MAAM,CAAC;IACf,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,KAAK,CAAC,EAAE,SAAS,CAAC;CACnB,CAAC,CAAC;AAEH,MAAM,MAAM,qBAAqB,GAAG,QAAQ,CAAC;IAC3C,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;IACV,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,sEAAsE;IACtE,MAAM,EAAE,MAAM,CAAC;IACf,aAAa,EAAE,MAAM,CAAC;IACtB,cAAc,EAAE,MAAM,CAAC;IACvB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,gBAAgB,EAAE,MAAM,CAAC;IACzB,KAAK,EAAE,SAAS,CAAC;CAClB,CAAC,CAAC;AAEH,MAAM,MAAM,sBAAsB,GAAG,QAAQ,CAAC;IAC5C,IAAI,EAAE,YAAY,CAAC;IACnB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,iBAAiB,EAAE,MAAM,CAAC;IAC1B,kCAAkC;IAClC,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,qFAAqF;IACrF,QAAQ,CAAC,EAAE,YAAY,CAAC;IACxB,6DAA6D;IAC7D,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,aAAa,CAAC;CAC3B,CAAC,CAAC;AAEH,MAAM,MAAM,+BAA+B,GAAG,QAAQ,CAAC;IACrD,IAAI,EAAE,qBAAqB,CAAC;IAC5B,iBAAiB,EAAE,MAAM,CAAC;IAC1B,iBAAiB,EAAE,MAAM,CAAC;IAC1B,YAAY,EAAE,MAAM,CAAC;IACrB,QAAQ,EAAE,GAAG,MAAM,KAAK,CAAC;IACzB,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,sBAAsB,CAAC;CACpC,CAAC,CAAC;AAEH,6EAA6E;AAC7E,wBAAgB,eAAe,CAAC,QAAQ,EAAE,YAAY,GAAG,SAAS,GAAG,MAAM,CAW1E;AA2ED,wBAAgB,oBAAoB,CAAC,QAAQ,EAAE,YAAY,GAAG,OAAO,CAkBpE;AA2BD,wBAAgB,kBAAkB,CAChC,KAAK,EAAE,YAAY,GAAG,IAAI,EAC1B,MAAM,EAAE,YAAY,GACnB,OAAO,CAeT;AAOD,wBAAgB,wBAAwB,CACtC,YAAY,EAAE,sBAAsB,GACnC,OAAO,CAcT;AAED,wBAAgB,sBAAsB,CACpC,KAAK,EAAE,sBAAsB,GAAG,IAAI,EACpC,MAAM,EAAE,sBAAsB,GAC7B,OAAO,CAYT;AAsDD;;GAEG;AACH,wBAAgB,wBAAwB,CACtC,QAAQ,EAAE,YAAY,GACrB,qBAAqB,GAAG,IAAI,CAa9B;AAED,wBAAgB,4BAA4B,CAC1C,YAAY,EAAE,sBAAsB,GACnC,+BAA+B,GAAG,IAAI,CAkBxC;AAID,wBAAgB,sBAAsB,CACpC,IAAI,EAAE,YAAY,EAClB,iBAAiB,SAAI,EACrB,iBAAiB,SAAI,EACrB,YAAY,SAAI,EAChB,SAAS,CAAC,EAAE,aAAa,GACxB,+BAA+B,CAgCjC"}
@@ -8,5 +8,5 @@ export type { ClipReduceMotion, SpringClipAnimation, TimingClipAnimation, Smooth
8
8
  export type { SmoothClipGroup, SmoothClipGroupFrame, SmoothClipGroupOptions, SmoothClipGroupSnapshot, SmoothClipGroupTarget, } from './groupTypes.js';
9
9
  export { ClipEasings } from './easings.js';
10
10
  export { canonicalizeClipGeometry, canonicalizeClipPresentation, createClipPresentation, } from './geometry.js';
11
- export type { CanonicalClipGeometry, CanonicalClipBoxShadow, CanonicalSmoothClipPresentation, ClipCurve, ClipGeometry, ClipBoxShadow, SmoothClipPresentation, } from './geometry.js';
11
+ export type { CanonicalClipGeometry, CanonicalClipBoxShadow, CanonicalSmoothClipPresentation, ClipCurve, ClipRotation, ClipGeometry, ClipBoxShadow, SmoothClipPresentation, } from './geometry.js';
12
12
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,YAAY,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AAC5D,OAAO,EAAE,uBAAuB,EAAE,MAAM,eAAe,CAAC;AACxD,OAAO,EAAE,kBAAkB,EAAE,MAAM,UAAU,CAAC;AAC9C,OAAO,EAAE,yBAAyB,EAAE,MAAM,gBAAgB,CAAC;AAC3D,YAAY,EAAE,sBAAsB,EAAE,MAAM,sBAAmB,CAAC;AAChE,YAAY,EACV,gBAAgB,EAChB,mBAAmB,EACnB,mBAAmB,EACnB,mBAAmB,EACnB,oBAAoB,EACpB,oBAAoB,EACpB,2BAA2B,EAC3B,yBAAyB,EACzB,sBAAsB,EACtB,sBAAsB,EACtB,kBAAkB,EAClB,aAAa,EACb,mBAAmB,GACpB,MAAM,sBAAmB,CAAC;AAC3B,YAAY,EACV,eAAe,EACf,oBAAoB,EACpB,sBAAsB,EACtB,uBAAuB,EACvB,qBAAqB,GACtB,MAAM,iBAAc,CAAC;AACtB,OAAO,EAAE,WAAW,EAAE,MAAM,cAAW,CAAC;AACxC,OAAO,EACL,wBAAwB,EACxB,4BAA4B,EAC5B,sBAAsB,GACvB,MAAM,eAAY,CAAC;AACpB,YAAY,EACV,qBAAqB,EACrB,sBAAsB,EACtB,+BAA+B,EAC/B,SAAS,EACT,YAAY,EACZ,aAAa,EACb,sBAAsB,GACvB,MAAM,eAAY,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,YAAY,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AAC5D,OAAO,EAAE,uBAAuB,EAAE,MAAM,eAAe,CAAC;AACxD,OAAO,EAAE,kBAAkB,EAAE,MAAM,UAAU,CAAC;AAC9C,OAAO,EAAE,yBAAyB,EAAE,MAAM,gBAAgB,CAAC;AAC3D,YAAY,EAAE,sBAAsB,EAAE,MAAM,sBAAmB,CAAC;AAChE,YAAY,EACV,gBAAgB,EAChB,mBAAmB,EACnB,mBAAmB,EACnB,mBAAmB,EACnB,oBAAoB,EACpB,oBAAoB,EACpB,2BAA2B,EAC3B,yBAAyB,EACzB,sBAAsB,EACtB,sBAAsB,EACtB,kBAAkB,EAClB,aAAa,EACb,mBAAmB,GACpB,MAAM,sBAAmB,CAAC;AAC3B,YAAY,EACV,eAAe,EACf,oBAAoB,EACpB,sBAAsB,EACtB,uBAAuB,EACvB,qBAAqB,GACtB,MAAM,iBAAc,CAAC;AACtB,OAAO,EAAE,WAAW,EAAE,MAAM,cAAW,CAAC;AACxC,OAAO,EACL,wBAAwB,EACxB,4BAA4B,EAC5B,sBAAsB,GACvB,MAAM,eAAY,CAAC;AACpB,YAAY,EACV,qBAAqB,EACrB,sBAAsB,EACtB,+BAA+B,EAC/B,SAAS,EACT,YAAY,EACZ,YAAY,EACZ,aAAa,EACb,sBAAsB,GACvB,MAAM,eAAY,CAAC"}
@@ -3,7 +3,7 @@ import type { CanonicalSmoothClipPresentation } from './geometry.js';
3
3
  * Versionless native packet layout. Keep this as the single JS codec used by
4
4
  * drivers, groups, snapshots, and cancellation.
5
5
  */
6
- export declare const PRESENTATION_STRIDE = 21;
6
+ export declare const PRESENTATION_STRIDE = 23;
7
7
  export declare function appendPresentationPacket(values: number[], presentation: CanonicalSmoothClipPresentation): void;
8
8
  export declare function presentationPacket(presentation: CanonicalSmoothClipPresentation): number[];
9
9
  export declare function presentationFromPacket(values: readonly number[], offset?: number): CanonicalSmoothClipPresentation | null;
@@ -1 +1 @@
1
- {"version":3,"file":"presentationCodec.d.ts","sourceRoot":"","sources":["../../../src/presentationCodec.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,+BAA+B,EAAE,MAAM,eAAY,CAAC;AAElE;;;GAGG;AACH,eAAO,MAAM,mBAAmB,KAAK,CAAC;AAEtC,wBAAgB,wBAAwB,CACtC,MAAM,EAAE,MAAM,EAAE,EAChB,YAAY,EAAE,+BAA+B,GAC5C,IAAI,CAiCN;AAED,wBAAgB,kBAAkB,CAChC,YAAY,EAAE,+BAA+B,GAC5C,MAAM,EAAE,CAKV;AAED,wBAAgB,sBAAsB,CACpC,MAAM,EAAE,SAAS,MAAM,EAAE,EACzB,MAAM,SAAI,GACT,+BAA+B,GAAG,IAAI,CA0ExC"}
1
+ {"version":3,"file":"presentationCodec.d.ts","sourceRoot":"","sources":["../../../src/presentationCodec.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,+BAA+B,EAAE,MAAM,eAAY,CAAC;AAElE;;;GAGG;AACH,eAAO,MAAM,mBAAmB,KAAK,CAAC;AAEtC,wBAAgB,wBAAwB,CACtC,MAAM,EAAE,MAAM,EAAE,EAChB,YAAY,EAAE,+BAA+B,GAC5C,IAAI,CAmCN;AAED,wBAAgB,kBAAkB,CAChC,YAAY,EAAE,+BAA+B,GAC5C,MAAM,EAAE,CAKV;AAED,wBAAgB,sBAAsB,CACpC,MAAM,EAAE,SAAS,MAAM,EAAE,EACzB,MAAM,SAAI,GACT,+BAA+B,GAAG,IAAI,CA8ExC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "react-native-smooth-clip-view",
3
- "version": "0.4.1",
3
+ "version": "0.4.3",
4
4
  "description": "Layout-free animated rounded clipping for React Native Fabric",
5
5
  "main": "./lib/module/index.js",
6
6
  "module": "./lib/module/index.js",
@@ -23,6 +23,7 @@
23
23
  "cpp",
24
24
  "SmoothClipView.podspec",
25
25
  "README.md",
26
+ "CHANGELOG.md",
26
27
  "LICENSE",
27
28
  "!ios/build",
28
29
  "!ios/tests",
@@ -85,7 +85,9 @@ export interface Spec extends TurboModule {
85
85
  shadowOffsetX: CodegenTypes.Double,
86
86
  shadowOffsetY: CodegenTypes.Double,
87
87
  shadowBlurRadius: CodegenTypes.Double,
88
- shadowSpreadDistance: CodegenTypes.Double
88
+ shadowSpreadDistance: CodegenTypes.Double,
89
+ rotation: CodegenTypes.Double,
90
+ opacity: CodegenTypes.Double
89
91
  ): void;
90
92
  beginInteraction(
91
93
  driverId: CodegenTypes.Double
@@ -10,6 +10,7 @@ import {
10
10
  import { StyleSheet, type ViewProps, type ViewStyle } from 'react-native';
11
11
  import type { SmoothClipController } from './controllerTypes';
12
12
  import { getControllerRef, unwrapSmoothClipRef } from './controllerInternals';
13
+ import { rotationRadians } from './geometry';
13
14
  import NativeSmoothClipView, {
14
15
  type NativeProps,
15
16
  } from './SmoothClipViewNativeComponent';
@@ -135,6 +136,8 @@ export function renderSmoothClipView(
135
136
  initialContentTranslateX: canonical.contentTranslateX,
136
137
  initialContentTranslateY: canonical.contentTranslateY,
137
138
  initialContentScale: canonical.contentScale,
139
+ initialRotation: rotationRadians(canonical.rotation),
140
+ initialOpacity: canonical.opacity,
138
141
  initialClipBoxShadowEnabled: shadow !== undefined,
139
142
  initialClipBoxShadowRed: ((color >>> 24) & 0xff) / 255,
140
143
  initialClipBoxShadowGreen: ((color >>> 16) & 0xff) / 255,
@@ -20,6 +20,8 @@ export interface NativeProps extends ViewProps {
20
20
  initialContentTranslateX: CodegenTypes.Double;
21
21
  initialContentTranslateY: CodegenTypes.Double;
22
22
  initialContentScale: CodegenTypes.Double;
23
+ initialRotation: CodegenTypes.Double;
24
+ initialOpacity?: CodegenTypes.WithDefault<CodegenTypes.Double, 1>;
23
25
  initialClipBoxShadowEnabled: boolean;
24
26
  initialClipBoxShadowRed: CodegenTypes.Double;
25
27
  initialClipBoxShadowGreen: CodegenTypes.Double;
@@ -54,7 +56,9 @@ interface NativeCommands {
54
56
  shadowOffsetX: CodegenTypes.Double,
55
57
  shadowOffsetY: CodegenTypes.Double,
56
58
  shadowBlurRadius: CodegenTypes.Double,
57
- shadowSpreadDistance: CodegenTypes.Double
59
+ shadowSpreadDistance: CodegenTypes.Double,
60
+ rotation: CodegenTypes.Double,
61
+ opacity: CodegenTypes.Double
58
62
  ) => void;
59
63
  }
60
64
 
@@ -24,7 +24,11 @@ export type SpringClipAnimation = SmoothClipAnimationBase &
24
24
  mass?: number;
25
25
  stiffness?: number;
26
26
  damping?: number;
27
- /** Normalized progress velocity in inverse seconds. */
27
+ /**
28
+ * Initial progress velocity in inverse seconds; defaults to 0, with no
29
+ * automatic gesture-velocity inheritance. Each changing channel, including
30
+ * rotation and opacity, starts at velocity * (target - start).
31
+ */
28
32
  velocity?: number;
29
33
  /** Relative mechanical energy used to determine settlement. */
30
34
  energyThreshold?: number;
package/src/geometry.ts CHANGED
@@ -2,6 +2,8 @@
2
2
  import type { ColorValue } from 'react-native';
3
3
  import { processColor } from 'react-native-reanimated';
4
4
 
5
+ export type ClipRotation = `${number}deg` | `${number}rad`;
6
+
5
7
  export type ClipCurve = 'circular' | 'continuous';
6
8
 
7
9
  /** One numeric outset shadow following React Native's `boxShadow` field names. */
@@ -57,6 +59,10 @@ export type SmoothClipPresentation = Readonly<{
57
59
  contentTranslateY: number;
58
60
  /** Defaults to 1 when omitted. */
59
61
  contentScale?: number;
62
+ /** Clockwise rotation of aperture, content and shadow around the aperture center. */
63
+ rotation?: ClipRotation;
64
+ /** Opacity of the complete clipped object; defaults to 1. */
65
+ opacity?: number;
60
66
  boxShadow?: ClipBoxShadow;
61
67
  }>;
62
68
 
@@ -65,9 +71,30 @@ export type CanonicalSmoothClipPresentation = Readonly<{
65
71
  contentTranslateX: number;
66
72
  contentTranslateY: number;
67
73
  contentScale: number;
74
+ rotation: `${number}rad`;
75
+ opacity: number;
68
76
  boxShadow?: CanonicalClipBoxShadow;
69
77
  }>;
70
78
 
79
+ /** Numeric native angle. Invalid input remains NaN for atomic validation. */
80
+ export function rotationRadians(rotation: ClipRotation | undefined): number {
81
+ 'worklet';
82
+ if (rotation === undefined) return 0;
83
+ if (
84
+ typeof rotation !== 'string' ||
85
+ !/^[+-]?(?:\d+\.?\d*|\.\d+)(?:[eE][+-]?\d+)?(?:deg|rad)$/.test(rotation)
86
+ ) {
87
+ return NaN;
88
+ }
89
+ const value = Number(rotation.slice(0, -3));
90
+ return rotation.endsWith('deg') ? value * (Math.PI / 180) : value;
91
+ }
92
+
93
+ function resolvedOpacity(presentation: SmoothClipPresentation): number {
94
+ 'worklet';
95
+ return Math.max(0, Math.min(1, presentation.opacity ?? 1));
96
+ }
97
+
71
98
  const DEFAULT_SHADOW_COLOR = '#000000ff';
72
99
 
73
100
  function isClipCurve(curve: ClipCurve | undefined): boolean {
@@ -218,6 +245,8 @@ export function isFiniteClipPresentation(
218
245
  Number.isFinite(presentation.contentTranslateY) &&
219
246
  Number.isFinite(contentScale) &&
220
247
  contentScale > 0 &&
248
+ Number.isFinite(rotationRadians(presentation.rotation)) &&
249
+ Number.isFinite(presentation.opacity ?? 1) &&
221
250
  shadow !== null
222
251
  );
223
252
  }
@@ -233,6 +262,8 @@ export function clipPresentationEquals(
233
262
  first.contentTranslateX === second.contentTranslateX &&
234
263
  first.contentTranslateY === second.contentTranslateY &&
235
264
  resolvedContentScale(first) === resolvedContentScale(second) &&
265
+ rotationRadians(first.rotation) === rotationRadians(second.rotation) &&
266
+ resolvedOpacity(first) === resolvedOpacity(second) &&
236
267
  clipBoxShadowEquals(first.boxShadow, second.boxShadow)
237
268
  );
238
269
  }
@@ -325,6 +356,8 @@ export function canonicalizeClipPresentation(
325
356
  contentTranslateX: presentation.contentTranslateX,
326
357
  contentTranslateY: presentation.contentTranslateY,
327
358
  contentScale: resolvedContentScale(presentation),
359
+ rotation: `${rotationRadians(presentation.rotation)}rad`,
360
+ opacity: resolvedOpacity(presentation),
328
361
  ...(boxShadow === undefined ? {} : { boxShadow }),
329
362
  };
330
363
  }
@@ -359,6 +392,8 @@ export function createClipPresentation(
359
392
  contentTranslateX,
360
393
  contentTranslateY,
361
394
  contentScale,
395
+ rotation: '0rad',
396
+ opacity: 1,
362
397
  ...(canonicalShadow === undefined
363
398
  ? {}
364
399
  : {
package/src/index.ts CHANGED
@@ -37,6 +37,7 @@ export type {
37
37
  CanonicalClipBoxShadow,
38
38
  CanonicalSmoothClipPresentation,
39
39
  ClipCurve,
40
+ ClipRotation,
40
41
  ClipGeometry,
41
42
  ClipBoxShadow,
42
43
  SmoothClipPresentation,