react-native-unistyles 3.3.0 → 3.5.0

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 (216) hide show
  1. package/README.md +26 -10
  2. package/android/build.gradle +12 -1
  3. package/android/src/main/cxx/NativeUnistylesModule.cpp +8 -4
  4. package/android/src/main/cxx/NativeUnistylesModule.h +5 -1
  5. package/components/native/ActivityIndicator/package.json +1 -1
  6. package/cxx/common/UnistylesConstants.h +1 -0
  7. package/cxx/converters/TransformOriginConverter.cpp +106 -0
  8. package/cxx/core/StyleSheetRegistry.cpp +9 -9
  9. package/cxx/core/StyleSheetRegistry.h +3 -3
  10. package/cxx/core/UnistyleWrapper.h +13 -1
  11. package/cxx/core/UnistylesRegistry.cpp +226 -54
  12. package/cxx/core/UnistylesRegistry.h +64 -7
  13. package/cxx/hybridObjects/HybridShadowRegistry.cpp +128 -11
  14. package/cxx/hybridObjects/HybridShadowRegistry.h +20 -0
  15. package/cxx/hybridObjects/HybridStyleSheet.cpp +20 -12
  16. package/cxx/hybridObjects/HybridUnistylesRuntime.cpp +11 -1
  17. package/cxx/hybridObjects/HybridUnistylesRuntime.h +4 -2
  18. package/cxx/parser/Parser.cpp +30 -3
  19. package/cxx/parser/Parser.h +1 -0
  20. package/cxx/shadowTree/NativeProps.h +88 -0
  21. package/cxx/shadowTree/ShadowLeafUpdate.h +8 -0
  22. package/cxx/shadowTree/ShadowTrafficController.h +18 -35
  23. package/cxx/shadowTree/ShadowTreeDiagnostics.cpp +339 -0
  24. package/cxx/shadowTree/ShadowTreeDiagnostics.h +18 -0
  25. package/cxx/shadowTree/ShadowTreeManager.cpp +14 -148
  26. package/cxx/shadowTree/ShadowTreeManager.h +2 -6
  27. package/diagnostics/package.json +6 -0
  28. package/ios/UnistylesModuleOnLoad.mm +9 -3
  29. package/lib/commonjs/components/native/ActivityIndicator.native.js +10 -0
  30. package/lib/commonjs/components/native/ActivityIndicator.native.js.map +1 -0
  31. package/lib/commonjs/components/native/Animated.js +2 -0
  32. package/lib/commonjs/components/native/Animated.js.map +1 -1
  33. package/lib/commonjs/components/native/NativeText.js +6 -0
  34. package/lib/commonjs/components/native/NativeText.js.map +1 -1
  35. package/lib/commonjs/components/native/NativeText.native.js +17 -1
  36. package/lib/commonjs/components/native/NativeText.native.js.map +1 -1
  37. package/lib/commonjs/components/native/NativeView.js +6 -0
  38. package/lib/commonjs/components/native/NativeView.js.map +1 -1
  39. package/lib/commonjs/components/native/NativeView.native.js +22 -3
  40. package/lib/commonjs/components/native/NativeView.native.js.map +1 -1
  41. package/lib/commonjs/components/native/Pressable.js +9 -3
  42. package/lib/commonjs/components/native/Pressable.js.map +1 -1
  43. package/lib/commonjs/components/native/Pressable.native.js +2 -0
  44. package/lib/commonjs/components/native/Pressable.native.js.map +1 -1
  45. package/lib/commonjs/components/native/TouchableHighlight.native.js +10 -0
  46. package/lib/commonjs/components/native/TouchableHighlight.native.js.map +1 -0
  47. package/lib/commonjs/core/createUnistylesActivityIndicator.js +41 -0
  48. package/lib/commonjs/core/createUnistylesActivityIndicator.js.map +1 -0
  49. package/lib/commonjs/core/createUnistylesElement.js +59 -14
  50. package/lib/commonjs/core/createUnistylesElement.js.map +1 -1
  51. package/lib/commonjs/core/createUnistylesTouchableHighlight.js +58 -0
  52. package/lib/commonjs/core/createUnistylesTouchableHighlight.js.map +1 -0
  53. package/lib/commonjs/core/index.js +14 -0
  54. package/lib/commonjs/core/index.js.map +1 -1
  55. package/lib/commonjs/diagnostics/index.js +13 -0
  56. package/lib/commonjs/diagnostics/index.js.map +1 -0
  57. package/lib/commonjs/diagnostics/types.js +2 -0
  58. package/lib/commonjs/diagnostics/types.js.map +1 -0
  59. package/lib/commonjs/diagnostics/verify.js +19 -0
  60. package/lib/commonjs/diagnostics/verify.js.map +1 -0
  61. package/lib/commonjs/diagnostics/verify.native.js +12 -0
  62. package/lib/commonjs/diagnostics/verify.native.js.map +1 -0
  63. package/lib/commonjs/index.js +38 -0
  64. package/lib/commonjs/index.js.map +1 -1
  65. package/lib/commonjs/mocks.js +41 -0
  66. package/lib/commonjs/mocks.js.map +1 -1
  67. package/lib/commonjs/reanimated/variant/useUpdateVariantColor.native.js +8 -0
  68. package/lib/commonjs/reanimated/variant/useUpdateVariantColor.native.js.map +1 -1
  69. package/lib/commonjs/specs/ShadowRegistry/index.js +97 -1
  70. package/lib/commonjs/specs/ShadowRegistry/index.js.map +1 -1
  71. package/lib/commonjs/specs/StyleSheet/index.js +5 -1
  72. package/lib/commonjs/specs/StyleSheet/index.js.map +1 -1
  73. package/lib/commonjs/specs/UnistylesRuntime/index.js.map +1 -1
  74. package/lib/commonjs/web/convert/object/boxShadow.js +2 -2
  75. package/lib/commonjs/web/convert/object/boxShadow.js.map +1 -1
  76. package/lib/commonjs/web/index.js.map +1 -1
  77. package/lib/commonjs/web/registry.js +3 -0
  78. package/lib/commonjs/web/registry.js.map +1 -1
  79. package/lib/module/components/native/ActivityIndicator.native.js +6 -0
  80. package/lib/module/components/native/ActivityIndicator.native.js.map +1 -0
  81. package/lib/module/components/native/Animated.js +3 -0
  82. package/lib/module/components/native/Animated.js.map +1 -1
  83. package/lib/module/components/native/NativeText.js +1 -1
  84. package/lib/module/components/native/NativeText.js.map +1 -1
  85. package/lib/module/components/native/NativeText.native.js +15 -1
  86. package/lib/module/components/native/NativeText.native.js.map +1 -1
  87. package/lib/module/components/native/NativeView.js +1 -0
  88. package/lib/module/components/native/NativeView.js.map +1 -1
  89. package/lib/module/components/native/NativeView.native.js +19 -2
  90. package/lib/module/components/native/NativeView.native.js.map +1 -1
  91. package/lib/module/components/native/Pressable.js +9 -3
  92. package/lib/module/components/native/Pressable.js.map +1 -1
  93. package/lib/module/components/native/Pressable.native.js +2 -0
  94. package/lib/module/components/native/Pressable.native.js.map +1 -1
  95. package/lib/module/components/native/TouchableHighlight.native.js +6 -0
  96. package/lib/module/components/native/TouchableHighlight.native.js.map +1 -0
  97. package/lib/module/core/createUnistylesActivityIndicator.js +35 -0
  98. package/lib/module/core/createUnistylesActivityIndicator.js.map +1 -0
  99. package/lib/module/core/createUnistylesElement.js +58 -13
  100. package/lib/module/core/createUnistylesElement.js.map +1 -1
  101. package/lib/module/core/createUnistylesTouchableHighlight.js +52 -0
  102. package/lib/module/core/createUnistylesTouchableHighlight.js.map +1 -0
  103. package/lib/module/core/index.js +2 -0
  104. package/lib/module/core/index.js.map +1 -1
  105. package/lib/module/diagnostics/index.js +5 -0
  106. package/lib/module/diagnostics/index.js.map +1 -0
  107. package/lib/module/diagnostics/types.js +2 -0
  108. package/lib/module/diagnostics/types.js.map +1 -0
  109. package/lib/module/diagnostics/verify.js +14 -0
  110. package/lib/module/diagnostics/verify.js.map +1 -0
  111. package/lib/module/diagnostics/verify.native.js +8 -0
  112. package/lib/module/diagnostics/verify.native.js.map +1 -0
  113. package/lib/module/index.js +2 -0
  114. package/lib/module/index.js.map +1 -1
  115. package/lib/module/mocks.js +41 -0
  116. package/lib/module/mocks.js.map +1 -1
  117. package/lib/module/reanimated/variant/useUpdateVariantColor.native.js +9 -1
  118. package/lib/module/reanimated/variant/useUpdateVariantColor.native.js.map +1 -1
  119. package/lib/module/specs/ShadowRegistry/index.js +97 -1
  120. package/lib/module/specs/ShadowRegistry/index.js.map +1 -1
  121. package/lib/module/specs/StyleSheet/index.js +6 -1
  122. package/lib/module/specs/StyleSheet/index.js.map +1 -1
  123. package/lib/module/specs/UnistylesRuntime/index.js.map +1 -1
  124. package/lib/module/web/convert/object/boxShadow.js +2 -2
  125. package/lib/module/web/convert/object/boxShadow.js.map +1 -1
  126. package/lib/module/web/index.js.map +1 -1
  127. package/lib/module/web/registry.js +3 -0
  128. package/lib/module/web/registry.js.map +1 -1
  129. package/lib/typescript/src/components/native/ActivityIndicator.native.d.ts +2 -0
  130. package/lib/typescript/src/components/native/ActivityIndicator.native.d.ts.map +1 -0
  131. package/lib/typescript/src/components/native/Animated.d.ts +16 -36
  132. package/lib/typescript/src/components/native/Animated.d.ts.map +1 -1
  133. package/lib/typescript/src/components/native/NativeText.d.ts +1 -1
  134. package/lib/typescript/src/components/native/NativeText.d.ts.map +1 -1
  135. package/lib/typescript/src/components/native/NativeText.native.d.ts.map +1 -1
  136. package/lib/typescript/src/components/native/NativeView.d.ts +1 -0
  137. package/lib/typescript/src/components/native/NativeView.d.ts.map +1 -1
  138. package/lib/typescript/src/components/native/NativeView.native.d.ts +2 -2
  139. package/lib/typescript/src/components/native/NativeView.native.d.ts.map +1 -1
  140. package/lib/typescript/src/components/native/Pressable.d.ts +4 -2
  141. package/lib/typescript/src/components/native/Pressable.d.ts.map +1 -1
  142. package/lib/typescript/src/components/native/Pressable.native.d.ts +5 -2
  143. package/lib/typescript/src/components/native/Pressable.native.d.ts.map +1 -1
  144. package/lib/typescript/src/components/native/TouchableHighlight.native.d.ts +2 -0
  145. package/lib/typescript/src/components/native/TouchableHighlight.native.d.ts.map +1 -0
  146. package/lib/typescript/src/core/createUnistylesActivityIndicator.d.ts +3 -0
  147. package/lib/typescript/src/core/createUnistylesActivityIndicator.d.ts.map +1 -0
  148. package/lib/typescript/src/core/createUnistylesElement.d.ts.map +1 -1
  149. package/lib/typescript/src/core/createUnistylesTouchableHighlight.d.ts +3 -0
  150. package/lib/typescript/src/core/createUnistylesTouchableHighlight.d.ts.map +1 -0
  151. package/lib/typescript/src/core/index.d.ts +2 -0
  152. package/lib/typescript/src/core/index.d.ts.map +1 -1
  153. package/lib/typescript/src/core/useUnistyles.d.ts +1 -1
  154. package/lib/typescript/src/diagnostics/index.d.ts +3 -0
  155. package/lib/typescript/src/diagnostics/index.d.ts.map +1 -0
  156. package/lib/typescript/src/diagnostics/types.d.ts +19 -0
  157. package/lib/typescript/src/diagnostics/types.d.ts.map +1 -0
  158. package/lib/typescript/src/diagnostics/verify.d.ts +3 -0
  159. package/lib/typescript/src/diagnostics/verify.d.ts.map +1 -0
  160. package/lib/typescript/src/diagnostics/verify.native.d.ts +3 -0
  161. package/lib/typescript/src/diagnostics/verify.native.d.ts.map +1 -0
  162. package/lib/typescript/src/index.d.ts +4 -1
  163. package/lib/typescript/src/index.d.ts.map +1 -1
  164. package/lib/typescript/src/reanimated/variant/useUpdateVariantColor.native.d.ts.map +1 -1
  165. package/lib/typescript/src/specs/ShadowRegistry/index.d.ts +5 -1
  166. package/lib/typescript/src/specs/ShadowRegistry/index.d.ts.map +1 -1
  167. package/lib/typescript/src/specs/ShadowRegistry/types.d.ts +3 -0
  168. package/lib/typescript/src/specs/ShadowRegistry/types.d.ts.map +1 -1
  169. package/lib/typescript/src/specs/StyleSheet/index.d.ts +4 -1
  170. package/lib/typescript/src/specs/StyleSheet/index.d.ts.map +1 -1
  171. package/lib/typescript/src/specs/UnistylesRuntime/index.d.ts +2 -2
  172. package/lib/typescript/src/specs/UnistylesRuntime/index.d.ts.map +1 -1
  173. package/lib/typescript/src/types/breakpoints.d.ts +1 -1
  174. package/lib/typescript/src/types/breakpoints.d.ts.map +1 -1
  175. package/lib/typescript/src/types/core.d.ts +7 -2
  176. package/lib/typescript/src/types/core.d.ts.map +1 -1
  177. package/lib/typescript/src/types/stylesheet.d.ts +3 -3
  178. package/lib/typescript/src/types/stylesheet.d.ts.map +1 -1
  179. package/lib/typescript/src/web/index.d.ts.map +1 -1
  180. package/lib/typescript/src/web/registry.d.ts.map +1 -1
  181. package/nitrogen/generated/android/kotlin/com/margelo/nitro/unistyles/Func_void_UnistylesNativeMiniRuntime.kt +0 -2
  182. package/nitrogen/generated/android/kotlin/com/margelo/nitro/unistyles/Func_void_std__vector_UnistyleDependency__UnistylesNativeMiniRuntime.kt +0 -2
  183. package/nitrogen/generated/android/kotlin/com/margelo/nitro/unistyles/HybridNativePlatformSpec.kt +2 -0
  184. package/package.json +35 -26
  185. package/plugin/index.d.ts +4 -4
  186. package/plugin/index.js +21 -5
  187. package/src/components/native/ActivityIndicator.native.tsx +5 -0
  188. package/src/components/native/Animated.tsx +18 -1
  189. package/src/components/native/NativeText.native.tsx +18 -1
  190. package/src/components/native/NativeText.tsx +1 -1
  191. package/src/components/native/NativeView.native.tsx +22 -2
  192. package/src/components/native/NativeView.tsx +2 -0
  193. package/src/components/native/Pressable.native.tsx +10 -2
  194. package/src/components/native/Pressable.tsx +15 -4
  195. package/src/components/native/TouchableHighlight.native.tsx +5 -0
  196. package/src/core/createUnistylesActivityIndicator.tsx +47 -0
  197. package/src/core/createUnistylesElement.tsx +45 -14
  198. package/src/core/createUnistylesTouchableHighlight.tsx +69 -0
  199. package/src/core/index.ts +2 -0
  200. package/src/diagnostics/index.ts +3 -0
  201. package/src/diagnostics/types.ts +25 -0
  202. package/src/diagnostics/verify.native.ts +7 -0
  203. package/src/diagnostics/verify.ts +13 -0
  204. package/src/index.ts +4 -1
  205. package/src/mocks.ts +41 -0
  206. package/src/reanimated/variant/useUpdateVariantColor.native.ts +7 -1
  207. package/src/specs/ShadowRegistry/index.ts +128 -1
  208. package/src/specs/ShadowRegistry/types.ts +3 -0
  209. package/src/specs/StyleSheet/index.ts +10 -2
  210. package/src/specs/UnistylesRuntime/index.ts +7 -2
  211. package/src/types/breakpoints.ts +5 -3
  212. package/src/types/core.ts +7 -28
  213. package/src/types/stylesheet.ts +3 -3
  214. package/src/web/convert/object/boxShadow.ts +2 -2
  215. package/src/web/index.ts +2 -1
  216. package/src/web/registry.ts +3 -0
@@ -1,17 +1,34 @@
1
1
  "use strict";
2
2
 
3
3
  import { createElement, forwardRef } from 'react';
4
+ import * as ReactNative from 'react-native';
4
5
  import { createUnistylesElement } from '../../core';
6
+ const RN = ReactNative;
7
+ const resolveRCTView = () => {
8
+ // RN 0.83+ re-exports the host component, which at runtime is the 'RCTView' string itself
9
+ if (typeof RN.unstable_NativeView === 'string') {
10
+ return RN.unstable_NativeView;
11
+ }
12
+
13
+ // older RN has no public handle on it, but reading View evaluates the very same module
14
+ if (!RN.View) {
15
+ throw new Error('Unistyles 🦄: react-native did not expose View, unable to render NativeView');
16
+ }
17
+ return 'RCTView';
18
+ };
5
19
 
6
20
  // credits to @hirbod
7
21
  const LeanView = /*#__PURE__*/forwardRef((props, ref) => {
8
- return /*#__PURE__*/createElement('RCTView', {
22
+ return /*#__PURE__*/createElement(resolveRCTView(), {
9
23
  ...props,
10
24
  ref
11
25
  });
12
26
  });
13
27
  LeanView.displayName = 'RCTView';
14
28
 
29
+ // named export matches unstable_NativeView from react-native
30
+ export const NativeView = createUnistylesElement(LeanView);
31
+
15
32
  // this will match default export from react-native
16
- export default createUnistylesElement(LeanView);
33
+ export default NativeView;
17
34
  //# sourceMappingURL=NativeView.native.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["createElement","forwardRef","createUnistylesElement","LeanView","props","ref","displayName"],"sourceRoot":"../../../../src","sources":["components/native/NativeView.native.tsx"],"mappings":";;AAEA,SAA6BA,aAAa,EAAEC,UAAU,QAAQ,OAAO;AAErE,SAASC,sBAAsB,QAAQ,YAAY;;AAEnD;AACA,MAAMC,QAAQ,gBAAGF,UAAU,CAAC,CAACG,KAAK,EAAEC,GAAG,KAAK;EACxC,oBAAOL,aAAa,CAAC,SAAS,EAAE;IAAE,GAAGI,KAAK;IAAEC;EAAI,CAAC,CAAC;AACtD,CAAC,CAA6B;AAE9BF,QAAQ,CAACG,WAAW,GAAG,SAAS;;AAEhC;AACA,eAAeJ,sBAAsB,CAACC,QAAQ,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["createElement","forwardRef","ReactNative","createUnistylesElement","RN","resolveRCTView","unstable_NativeView","View","Error","LeanView","props","ref","displayName","NativeView"],"sourceRoot":"../../../../src","sources":["components/native/NativeView.native.tsx"],"mappings":";;AAEA,SAA6BA,aAAa,EAAEC,UAAU,QAAQ,OAAO;AACrE,OAAO,KAAKC,WAAW,MAAM,cAAc;AAE3C,SAASC,sBAAsB,QAAQ,YAAY;AAEnD,MAAMC,EAAE,GAAGF,WAAqE;AAEhF,MAAMG,cAAc,GAAGA,CAAA,KAAM;EACzB;EACA,IAAI,OAAOD,EAAE,CAACE,mBAAmB,KAAK,QAAQ,EAAE;IAC5C,OAAOF,EAAE,CAACE,mBAAmB;EACjC;;EAEA;EACA,IAAI,CAACF,EAAE,CAACG,IAAI,EAAE;IACV,MAAM,IAAIC,KAAK,CAAC,6EAA6E,CAAC;EAClG;EAEA,OAAO,SAAS;AACpB,CAAC;;AAED;AACA,MAAMC,QAAQ,gBAAGR,UAAU,CAAC,CAACS,KAAK,EAAEC,GAAG,KAAK;EACxC,oBAAOX,aAAa,CAACK,cAAc,CAAC,CAAC,EAAE;IAAE,GAAGK,KAAK;IAAEC;EAAI,CAAC,CAAC;AAC7D,CAAC,CAA6B;AAE9BF,QAAQ,CAACG,WAAW,GAAG,SAAS;;AAEhC;AACA,OAAO,MAAMC,UAAU,GAAGV,sBAAsB,CAACM,QAAQ,CAAC;;AAE1D;AACA,eAAeI,UAAU","ignoreList":[]}
@@ -5,6 +5,8 @@ import { Pressable as NativePressableReactNative } from 'react-native';
5
5
  import { getClassName } from '../../core';
6
6
  import { UnistylesShadowRegistry } from '../../specs';
7
7
  import { isServer } from '../../web/utils';
8
+
9
+ // instance type of View for both legacy and Strict TypeScript API (RN 0.87+)
8
10
  import { jsx as _jsx } from "react/jsx-runtime";
9
11
  export const Pressable = /*#__PURE__*/forwardRef(({
10
12
  style,
@@ -16,9 +18,13 @@ export const Pressable = /*#__PURE__*/forwardRef(({
16
18
  return /*#__PURE__*/_jsx(NativePressableReactNative, {
17
19
  ...props,
18
20
  ref: isServer() ? undefined : ref => {
21
+ if (!ref) {
22
+ // @ts-expect-error hidden from TS
23
+ UnistylesShadowRegistry.remove(storedRef, classNames?.[0].hash);
24
+ }
19
25
  storedRef = ref;
20
26
  // @ts-expect-error hidden from TS
21
- UnistylesShadowRegistry.add(storedRef, classNames?.hash);
27
+ UnistylesShadowRegistry.add(storedRef, classNames?.[0].hash);
22
28
  if (typeof forwardedRef === 'function') {
23
29
  return forwardedRef(ref);
24
30
  }
@@ -32,10 +38,10 @@ export const Pressable = /*#__PURE__*/forwardRef(({
32
38
  UnistylesShadowRegistry.setScopedTheme(scopedTheme);
33
39
 
34
40
  // @ts-expect-error hidden from TS
35
- UnistylesShadowRegistry.remove(storedRef, classNames?.hash);
41
+ UnistylesShadowRegistry.remove(storedRef, classNames?.[0].hash);
36
42
  classNames = getClassName(styleResult);
37
43
  // @ts-expect-error hidden from TS
38
- UnistylesShadowRegistry.add(storedRef, classNames?.hash);
44
+ UnistylesShadowRegistry.add(storedRef, classNames?.[0].hash);
39
45
  UnistylesShadowRegistry.setScopedTheme(previousScopedTheme);
40
46
  return classNames;
41
47
  }
@@ -1 +1 @@
1
- {"version":3,"names":["React","forwardRef","Pressable","NativePressableReactNative","getClassName","UnistylesShadowRegistry","isServer","jsx","_jsx","style","props","forwardedRef","scopedTheme","getScopedTheme","storedRef","classNames","undefined","ref","add","hash","current","state","styleResult","previousScopedTheme","setScopedTheme","remove"],"sourceRoot":"../../../../src","sources":["components/native/Pressable.tsx"],"mappings":";;AAEA,OAAOA,KAAK,IAAIC,UAAU,QAAQ,OAAO;AACzC,SAASC,SAAS,IAAIC,0BAA0B,QAAQ,cAAc;AAItE,SAASC,YAAY,QAAQ,YAAY;AACzC,SAASC,uBAAuB,QAAQ,aAAa;AACrD,SAASC,QAAQ,QAAQ,iBAAiB;AAAA,SAAAC,GAAA,IAAAC,IAAA;AAgB1C,OAAO,MAAMN,SAAS,gBAAGD,UAAU,CAAuB,CAAC;EAAEQ,KAAK;EAAE,GAAGC;AAAM,CAAC,EAAEC,YAAY,KAAK;EAC7F,MAAMC,WAAW,GAAGP,uBAAuB,CAACQ,cAAc,CAAC,CAAC;EAC5D,IAAIC,SAA6B,GAAG,IAAI;EACxC,IAAIC,UAAuD,GAAGC,SAAS;EAEvE,oBACIR,IAAA,CAACL,0BAA0B;IAAA,GACnBO,KAAK;IACTO,GAAG,EACCX,QAAQ,CAAC,CAAC,GACJU,SAAS,GACRC,GAAG,IAAK;MACLH,SAAS,GAAGG,GAA6B;MACzC;MACAZ,uBAAuB,CAACa,GAAG,CAACJ,SAAS,EAAEC,UAAU,EAAEI,IAAI,CAAC;MAExD,IAAI,OAAOR,YAAY,KAAK,UAAU,EAAE;QACpC,OAAOA,YAAY,CAACM,GAAG,CAAC;MAC5B;MAEA,IAAIN,YAAY,EAAE;QACdA,YAAY,CAACS,OAAO,GAAGH,GAAG;MAC9B;IACJ,CACT;IACDR,KAAK,EAAGY,KAAK,IAAK;MACd,MAAMC,WAAW,GAAG,OAAOb,KAAK,KAAK,UAAU,GAAGA,KAAK,CAACY,KAA0B,CAAC,GAAGZ,KAAK;MAC3F,MAAMc,mBAAmB,GAAGlB,uBAAuB,CAACQ,cAAc,CAAC,CAAC;MAEpER,uBAAuB,CAACmB,cAAc,CAACZ,WAAW,CAAC;;MAEnD;MACAP,uBAAuB,CAACoB,MAAM,CAACX,SAAS,EAAEC,UAAU,EAAEI,IAAI,CAAC;MAC3DJ,UAAU,GAAGX,YAAY,CAACkB,WAA8B,CAAC;MACzD;MACAjB,uBAAuB,CAACa,GAAG,CAACJ,SAAS,EAAEC,UAAU,EAAEI,IAAI,CAAC;MAExDd,uBAAuB,CAACmB,cAAc,CAACD,mBAAmB,CAAC;MAE3D,OAAOR,UAAU;IACrB;EAAE,CACL,CAAC;AAEV,CAAC,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["React","forwardRef","Pressable","NativePressableReactNative","getClassName","UnistylesShadowRegistry","isServer","jsx","_jsx","style","props","forwardedRef","scopedTheme","getScopedTheme","storedRef","classNames","undefined","ref","remove","hash","add","current","state","styleResult","previousScopedTheme","setScopedTheme"],"sourceRoot":"../../../../src","sources":["components/native/Pressable.tsx"],"mappings":";;AAEA,OAAOA,KAAK,IAAIC,UAAU,QAAQ,OAAO;AACzC,SAASC,SAAS,IAAIC,0BAA0B,QAAQ,cAAc;AAItE,SAASC,YAAY,QAAQ,YAAY;AACzC,SAASC,uBAAuB,QAAQ,aAAa;AACrD,SAASC,QAAQ,QAAQ,iBAAiB;;AAW1C;AAAA,SAAAC,GAAA,IAAAC,IAAA;AAQA,OAAO,MAAMN,SAAyF,gBAAGD,UAAU,CAGjH,CAAC;EAAEQ,KAAK;EAAE,GAAGC;AAAM,CAAC,EAAEC,YAAY,KAAK;EACrC,MAAMC,WAAW,GAAGP,uBAAuB,CAACQ,cAAc,CAAC,CAAC;EAC5D,IAAIC,SAA6B,GAAG,IAAI;EACxC,IAAIC,UAAuD,GAAGC,SAAS;EAEvE,oBACIR,IAAA,CAACL,0BAA0B;IAAA,GACnBO,KAAK;IACTO,GAAG,EACCX,QAAQ,CAAC,CAAC,GACJU,SAAS,GACRC,GAAG,IAAK;MACL,IAAI,CAACA,GAAG,EAAE;QACN;QACAZ,uBAAuB,CAACa,MAAM,CAACJ,SAAS,EAAEC,UAAU,GAAG,CAAC,CAAC,CAACI,IAAI,CAAC;MACnE;MAEAL,SAAS,GAAGG,GAA6B;MACzC;MACAZ,uBAAuB,CAACe,GAAG,CAACN,SAAS,EAAEC,UAAU,GAAG,CAAC,CAAC,CAACI,IAAI,CAAC;MAE5D,IAAI,OAAOR,YAAY,KAAK,UAAU,EAAE;QACpC,OAAOA,YAAY,CAACM,GAAG,CAAC;MAC5B;MAEA,IAAIN,YAAY,EAAE;QACdA,YAAY,CAACU,OAAO,GAAGJ,GAAG;MAC9B;IACJ,CACT;IACDR,KAAK,EAAGa,KAAK,IAAK;MACd,MAAMC,WAAW,GAAG,OAAOd,KAAK,KAAK,UAAU,GAAGA,KAAK,CAACa,KAA0B,CAAC,GAAGb,KAAK;MAC3F,MAAMe,mBAAmB,GAAGnB,uBAAuB,CAACQ,cAAc,CAAC,CAAC;MAEpER,uBAAuB,CAACoB,cAAc,CAACb,WAAW,CAAC;;MAEnD;MACAP,uBAAuB,CAACa,MAAM,CAACJ,SAAS,EAAEC,UAAU,GAAG,CAAC,CAAC,CAACI,IAAI,CAAC;MAC/DJ,UAAU,GAAGX,YAAY,CAACmB,WAA8B,CAAC;MACzD;MACAlB,uBAAuB,CAACe,GAAG,CAACN,SAAS,EAAEC,UAAU,GAAG,CAAC,CAAC,CAACI,IAAI,CAAC;MAE5Dd,uBAAuB,CAACoB,cAAc,CAACD,mBAAmB,CAAC;MAE3D,OAAOT,UAAU;IACrB;EAAE,CACL,CAAC;AAEV,CAAC,CAAC","ignoreList":[]}
@@ -4,6 +4,8 @@ import React, { forwardRef, useLayoutEffect, useRef } from 'react';
4
4
  import { Pressable as NativePressableReactNative } from 'react-native';
5
5
  import { passForwardedRef } from '../../core';
6
6
  import { UnistylesShadowRegistry } from '../../specs';
7
+
8
+ // instance type of View for both legacy and Strict TypeScript API (RN 0.87+)
7
9
  import { jsx as _jsx } from "react/jsx-runtime";
8
10
  const getStyles = (styleProps = {}) => {
9
11
  const unistyleKey = Object.keys(styleProps).find(key => key.startsWith('unistyles_'));
@@ -1 +1 @@
1
- {"version":3,"names":["React","forwardRef","useLayoutEffect","useRef","Pressable","NativePressableReactNative","passForwardedRef","UnistylesShadowRegistry","jsx","_jsx","getStyles","styleProps","unistyleKey","Object","keys","find","key","startsWith","uni__getStyles","variants","style","props","forwardedRef","storedRef","scopedTheme","getScopedTheme","current","remove","ref","isPropStyleAFunction","unistyles","call","pressed","add","state","previousScopedTheme","setScopedTheme"],"sourceRoot":"../../../../src","sources":["components/native/Pressable.native.tsx"],"mappings":";;AAEA,OAAOA,KAAK,IAAIC,UAAU,EAAEC,eAAe,EAAEC,MAAM,QAAQ,OAAO;AAClE,SAASC,SAAS,IAAIC,0BAA0B,QAAQ,cAAc;AAEtE,SAASC,gBAAgB,QAAQ,YAAY;AAC7C,SAASC,uBAAuB,QAAQ,aAAa;AAAA,SAAAC,GAAA,IAAAC,IAAA;AAMrD,MAAMC,SAAS,GAAGA,CAACC,UAA+B,GAAG,CAAC,CAAC,KAAK;EACxD,MAAMC,WAAW,GAAGC,MAAM,CAACC,IAAI,CAACH,UAAU,CAAC,CAACI,IAAI,CAAEC,GAAG,IAAKA,GAAG,CAACC,UAAU,CAAC,YAAY,CAAC,CAAC;EAEvF,IAAI,CAACL,WAAW,EAAE;IACd,OAAOD,UAAU;EACrB;EAEA,OAAO;IACH;IACA,GAAGA,UAAU,CAACC,WAAW,CAAC,CAACM,cAAc,CAAC,CAAC;IAC3C,CAACN,WAAW,GAAGD,UAAU,CAACC,WAAW;EACzC,CAAC;AACL,CAAC;AAED,OAAO,MAAMR,SAAS,gBAAGH,UAAU,CAAuB,CAAC;EAAEkB,QAAQ;EAAEC,KAAK;EAAE,GAAGC;AAAM,CAAC,EAAEC,YAAY,KAAK;EACvG,MAAMC,SAAS,GAAGpB,MAAM,CAAc,IAAI,CAAC;EAC3C,MAAMqB,WAAW,GAAGjB,uBAAuB,CAACkB,cAAc,CAAC,CAAC;EAE5DvB,eAAe,CAAC,MAAM;IAClB,OAAO,MAAM;MACT,IAAIqB,SAAS,CAACG,OAAO,EAAE;QACnB;QACAnB,uBAAuB,CAACoB,MAAM,CAACJ,SAAS,CAACG,OAAO,CAAC;MACrD;IACJ,CAAC;EACL,CAAC,EAAE,EAAE,CAAC;EAEN,oBACIjB,IAAA,CAACJ,0BAA0B;IAAA,GACnBgB,KAAK;IACTO,GAAG,EAAGA,GAAG,IAAK;MACV,MAAMC,oBAAoB,GAAG,OAAOT,KAAK,KAAK,UAAU;MACxD,MAAMU,SAAS,GAAGD,oBAAoB,GAChCT,KAAK,CAACW,IAAI,CAACX,KAAK,EAAE;QAAEY,OAAO,EAAE;MAAM,CAAC,CAAC,GACrCtB,SAAS,CAACU,KAAuC,CAAC;MAExD,IAAIQ,GAAG,EAAE;QACLL,SAAS,CAACG,OAAO,GAAGE,GAAG;MAC3B;MAEA,OAAOtB,gBAAgB,CACnBsB,GAAG,EACHN,YAAY,EACZ,MAAM;QACF;QACAf,uBAAuB,CAAC0B,GAAG,CAACL,GAAG,EAAEE,SAAS,CAAC;MAC/C,CAAC,EACD,MAAM;QACF;QACAvB,uBAAuB,CAACoB,MAAM,CAACC,GAAG,CAAC;MACvC,CACJ,CAAC;IACL,CAAE;IACFR,KAAK,EAAGc,KAAK,IAAK;MACd,MAAML,oBAAoB,GAAG,OAAOT,KAAK,KAAK,UAAU;MACxD,MAAMe,mBAAmB,GAAG5B,uBAAuB,CAACkB,cAAc,CAAC,CAAC;MAEpElB,uBAAuB,CAAC6B,cAAc,CAACZ,WAAW,CAAC;MAEnD,MAAMM,SAAS,GAAGD,oBAAoB,GAChCT,KAAK,CAACW,IAAI,CAACX,KAAK,EAAEc,KAAK,CAAC,GACxBxB,SAAS,CAACU,KAAuC,CAAC;MAExD,IAAI,CAACG,SAAS,CAACG,OAAO,EAAE;QACpB,OAAOI,SAAS;MACpB;;MAEA;MACAvB,uBAAuB,CAACoB,MAAM,CAACJ,SAAS,CAACG,OAAO,CAAC;;MAEjD;MACAnB,uBAAuB,CAAC0B,GAAG,CAACV,SAAS,CAACG,OAAO,EAAEI,SAAS,CAAC;MAEzDvB,uBAAuB,CAAC6B,cAAc,CAACD,mBAAmB,CAAC;MAE3D,OAAOL,SAAS;IACpB;EAAE,CACL,CAAC;AAEV,CAAC,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["React","forwardRef","useLayoutEffect","useRef","Pressable","NativePressableReactNative","passForwardedRef","UnistylesShadowRegistry","jsx","_jsx","getStyles","styleProps","unistyleKey","Object","keys","find","key","startsWith","uni__getStyles","variants","style","props","forwardedRef","storedRef","scopedTheme","getScopedTheme","current","remove","ref","isPropStyleAFunction","unistyles","call","pressed","add","state","previousScopedTheme","setScopedTheme"],"sourceRoot":"../../../../src","sources":["components/native/Pressable.native.tsx"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,6 @@
1
+ "use strict";
2
+
3
+ import { TouchableHighlight as NativeTouchableHighlight } from 'react-native';
4
+ import { createUnistylesTouchableHighlight } from '../../core';
5
+ export const TouchableHighlight = createUnistylesTouchableHighlight(NativeTouchableHighlight);
6
+ //# sourceMappingURL=TouchableHighlight.native.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["TouchableHighlight","NativeTouchableHighlight","createUnistylesTouchableHighlight"],"sourceRoot":"../../../../src","sources":["components/native/TouchableHighlight.native.tsx"],"mappings":";;AAAA,SAASA,kBAAkB,IAAIC,wBAAwB,QAAQ,cAAc;AAE7E,SAASC,iCAAiC,QAAQ,YAAY;AAE9D,OAAO,MAAMF,kBAAkB,GAAGE,iCAAiC,CAACD,wBAAwB,CAAC","ignoreList":[]}
@@ -0,0 +1,35 @@
1
+ "use strict";
2
+
3
+ import React from 'react';
4
+ import { isAndroid } from '../common';
5
+ import { UnistylesShadowRegistry } from '../specs';
6
+ import { copyComponentProperties } from '../utils';
7
+ import { passForwardedRef } from './passForwardRef';
8
+ import { maybeWarnAboutMultipleUnistyles } from './warn';
9
+ import { jsx as _jsx } from "react/jsx-runtime";
10
+ const getWrapperHandle = ref => {
11
+ const spinner = ref?.__internalInstanceHandle;
12
+ return {
13
+ __internalInstanceHandle: isAndroid ? spinner?.return?.return : spinner?.return
14
+ };
15
+ };
16
+ export const createUnistylesActivityIndicator = Component => {
17
+ const UnistylesActivityIndicator = props => {
18
+ return /*#__PURE__*/_jsx(Component, {
19
+ ...props,
20
+ ref: ref => {
21
+ maybeWarnAboutMultipleUnistyles(props.style, 'ActivityIndicator');
22
+ const wrapperHandle = getWrapperHandle(ref);
23
+ return passForwardedRef(ref, props.ref, () => {
24
+ // @ts-ignore this is hidden from TS
25
+ UnistylesShadowRegistry.add(wrapperHandle, props.style);
26
+ }, () => {
27
+ // @ts-ignore this is hidden from TS
28
+ UnistylesShadowRegistry.remove(wrapperHandle);
29
+ });
30
+ }
31
+ });
32
+ };
33
+ return copyComponentProperties(Component, UnistylesActivityIndicator);
34
+ };
35
+ //# sourceMappingURL=createUnistylesActivityIndicator.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["React","isAndroid","UnistylesShadowRegistry","copyComponentProperties","passForwardedRef","maybeWarnAboutMultipleUnistyles","jsx","_jsx","getWrapperHandle","ref","spinner","__internalInstanceHandle","return","createUnistylesActivityIndicator","Component","UnistylesActivityIndicator","props","style","wrapperHandle","add","remove"],"sourceRoot":"../../../src","sources":["core/createUnistylesActivityIndicator.tsx"],"mappings":";;AAEA,OAAOA,KAAK,MAAM,OAAO;AAEzB,SAASC,SAAS,QAAQ,WAAW;AACrC,SAASC,uBAAuB,QAAQ,UAAU;AAClD,SAASC,uBAAuB,QAAQ,UAAU;AAClD,SAASC,gBAAgB,QAAQ,kBAAkB;AACnD,SAASC,+BAA+B,QAAQ,QAAQ;AAAA,SAAAC,GAAA,IAAAC,IAAA;AAExD,MAAMC,gBAAgB,GAAIC,GAAQ,IAAK;EACnC,MAAMC,OAAO,GAAGD,GAAG,EAAEE,wBAAwB;EAE7C,OAAO;IACHA,wBAAwB,EAAEV,SAAS,GAAGS,OAAO,EAAEE,MAAM,EAAEA,MAAM,GAAGF,OAAO,EAAEE;EAC7E,CAAC;AACL,CAAC;AAED,OAAO,MAAMC,gCAAgC,GAAIC,SAAmC,IAAK;EACrF,MAAMC,0BAA0B,GAAIC,KAAU,IAAK;IAC/C,oBACIT,IAAA,CAACO,SAAS;MAAA,GACFE,KAAK;MACTP,GAAG,EAAGA,GAAY,IAAK;QACnBJ,+BAA+B,CAACW,KAAK,CAACC,KAAK,EAAE,mBAAmB,CAAC;QAEjE,MAAMC,aAAa,GAAGV,gBAAgB,CAACC,GAAG,CAAC;QAE3C,OAAOL,gBAAgB,CACnBK,GAAG,EACHO,KAAK,CAACP,GAAG,EACT,MAAM;UACF;UACAP,uBAAuB,CAACiB,GAAG,CAACD,aAAa,EAAEF,KAAK,CAACC,KAAK,CAAC;QAC3D,CAAC,EACD,MAAM;UACF;UACAf,uBAAuB,CAACkB,MAAM,CAACF,aAAa,CAAC;QACjD,CACJ,CAAC;MACL;IAAE,CACL,CAAC;EAEV,CAAC;EAED,OAAOf,uBAAuB,CAACW,SAAS,EAAEC,0BAA0B,CAAC;AACzE,CAAC","ignoreList":[]}
@@ -1,32 +1,77 @@
1
1
  "use strict";
2
2
 
3
- import React from 'react';
3
+ import React, { useCallback, useLayoutEffect, useRef } from 'react';
4
4
  import { copyComponentProperties } from '../utils';
5
+ import * as unistyles from '../web/services';
5
6
  import { isServer } from '../web/utils';
6
- import { createUnistylesRef } from '../web/utils/createUnistylesRef';
7
7
  import { getClassName } from './getClassname';
8
8
  import { maybeWarnAboutMultipleUnistyles } from './warn';
9
9
  import { jsx as _jsx } from "react/jsx-runtime";
10
10
  const STYLE_PROPS = ['contentContainerStyle', 'columnWrapperStyle'];
11
- const buildUnistylesProps = (Component, props, forwardedRef) => {
11
+ const buildUnistylesProps = (Component, props) => {
12
12
  const componentStyleProps = ['style', ...STYLE_PROPS.filter(styleProp => styleProp in props)];
13
- const classNames = Object.fromEntries(componentStyleProps.map(styleProp => [styleProp, getClassName(props[styleProp])]));
14
- const refs = componentStyleProps.map(styleProp => {
15
- return createUnistylesRef(classNames[styleProp], styleProp === 'style' ? forwardedRef : undefined);
16
- });
17
13
  componentStyleProps.forEach(styleProp => {
18
14
  maybeWarnAboutMultipleUnistyles(props[styleProp], Component.displayName);
19
15
  });
20
- return {
21
- ...classNames,
22
- ref: isServer() ? undefined : componentRef => refs.forEach(ref => ref?.(componentRef))
23
- };
16
+ return Object.fromEntries(componentStyleProps.map(styleProp => [styleProp, getClassName(props[styleProp])]));
17
+ };
18
+ const assignRef = (ref, value) => {
19
+ if (typeof ref === 'function') {
20
+ ref(value);
21
+ } else if (ref) {
22
+ ref.current = value;
23
+ }
24
24
  };
25
25
  export const createUnistylesElement = Component => {
26
- const UnistylesComponent = props => {
26
+ const UnistylesComponent = ({
27
+ ref,
28
+ ...props
29
+ }) => {
30
+ const classNames = buildUnistylesProps(Component, props);
31
+ const hashes = Object.values(classNames).map(className => className?.[0].hash);
32
+ const stored = useRef({
33
+ node: null,
34
+ hashes,
35
+ ref
36
+ });
37
+ // Stable for the component lifetime, as some components (e.g. ScrollView) call only the latest ref on unmount
38
+ const unistylesRef = useCallback(node => {
39
+ const {
40
+ shadowRegistry
41
+ } = unistyles.services;
42
+ stored.current.hashes.forEach(hash => node ? shadowRegistry.add(node, hash) : shadowRegistry.remove(stored.current.node, hash));
43
+ stored.current.node = node;
44
+ assignRef(stored.current.ref, node);
45
+ }, []);
46
+
47
+ // React won't call a stable ref again, so apply style and ref changes after commit
48
+ useLayoutEffect(() => {
49
+ const {
50
+ shadowRegistry
51
+ } = unistyles.services;
52
+ const {
53
+ node,
54
+ hashes: previousHashes,
55
+ ref: previousRef
56
+ } = stored.current;
57
+ if (previousHashes.join() !== hashes.join()) {
58
+ previousHashes.forEach(hash => shadowRegistry.remove(node, hash));
59
+ hashes.forEach(hash => shadowRegistry.add(node, hash));
60
+ }
61
+ if (previousRef !== ref) {
62
+ assignRef(previousRef, null);
63
+ assignRef(ref, node);
64
+ }
65
+ stored.current = {
66
+ node,
67
+ hashes,
68
+ ref
69
+ };
70
+ });
27
71
  return /*#__PURE__*/_jsx(Component, {
28
72
  ...props,
29
- ...buildUnistylesProps(Component, props, props.ref)
73
+ ...classNames,
74
+ ref: isServer() ? undefined : unistylesRef
30
75
  });
31
76
  };
32
77
  return copyComponentProperties(Component, UnistylesComponent);
@@ -1 +1 @@
1
- {"version":3,"names":["React","copyComponentProperties","isServer","createUnistylesRef","getClassName","maybeWarnAboutMultipleUnistyles","jsx","_jsx","STYLE_PROPS","buildUnistylesProps","Component","props","forwardedRef","componentStyleProps","filter","styleProp","classNames","Object","fromEntries","map","refs","undefined","forEach","displayName","ref","componentRef","createUnistylesElement","UnistylesComponent"],"sourceRoot":"../../../src","sources":["core/createUnistylesElement.tsx"],"mappings":";;AAEA,OAAOA,KAAK,MAAM,OAAO;AAIzB,SAASC,uBAAuB,QAAQ,UAAU;AAClD,SAASC,QAAQ,QAAQ,cAAc;AACvC,SAASC,kBAAkB,QAAQ,iCAAiC;AACpE,SAASC,YAAY,QAAQ,gBAAgB;AAC7C,SAASC,+BAA+B,QAAQ,QAAQ;AAAA,SAAAC,GAAA,IAAAC,IAAA;AAExD,MAAMC,WAAW,GAAG,CAAC,uBAAuB,EAAE,oBAAoB,CAAU;AAQ5E,MAAMC,mBAAmB,GAAGA,CAACC,SAAc,EAAEC,KAAqB,EAAEC,YAAyC,KAAK;EAC9G,MAAMC,mBAAmB,GAAG,CAAC,OAAO,EAAW,GAAGL,WAAW,CAACM,MAAM,CAAEC,SAAS,IAAKA,SAAS,IAAIJ,KAAK,CAAC,CAAC;EACxG,MAAMK,UAAU,GAAGC,MAAM,CAACC,WAAW,CACjCL,mBAAmB,CAACM,GAAG,CAAEJ,SAAS,IAAK,CAACA,SAAS,EAAEX,YAAY,CAACO,KAAK,CAACI,SAAS,CAAC,CAAC,CAAC,CACtF,CAAC;EACD,MAAMK,IAAI,GAAGP,mBAAmB,CAACM,GAAG,CAAEJ,SAAS,IAAK;IAChD,OAAOZ,kBAAkB,CAACa,UAAU,CAACD,SAAS,CAAC,EAAEA,SAAS,KAAK,OAAO,GAAGH,YAAY,GAAGS,SAAS,CAAC;EACtG,CAAC,CAAC;EAEFR,mBAAmB,CAACS,OAAO,CAAEP,SAAS,IAAK;IACvCV,+BAA+B,CAACM,KAAK,CAACI,SAAS,CAAC,EAAeL,SAAS,CAACa,WAAW,CAAC;EACzF,CAAC,CAAC;EAEF,OAAO;IACH,GAAGP,UAAU;IACbQ,GAAG,EAAEtB,QAAQ,CAAC,CAAC,GAAGmB,SAAS,GAAII,YAAiB,IAAKL,IAAI,CAACE,OAAO,CAAEE,GAAG,IAAKA,GAAG,GAAGC,YAAY,CAAC;EAClG,CAAC;AACL,CAAC;AAED,OAAO,MAAMC,sBAAsB,GAAIhB,SAAc,IAAK;EACtD,MAAMiB,kBAAkB,GAAIhB,KAAU,IAAK;IACvC,oBAAOJ,IAAA,CAACG,SAAS;MAAA,GAAKC,KAAK;MAAA,GAAMF,mBAAmB,CAACC,SAAS,EAAEC,KAAK,EAAEA,KAAK,CAACa,GAAG;IAAC,CAAG,CAAC;EACzF,CAAC;EAED,OAAOvB,uBAAuB,CAACS,SAAS,EAAEiB,kBAAkB,CAAC;AACjE,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["React","useCallback","useLayoutEffect","useRef","copyComponentProperties","unistyles","isServer","getClassName","maybeWarnAboutMultipleUnistyles","jsx","_jsx","STYLE_PROPS","buildUnistylesProps","Component","props","componentStyleProps","filter","styleProp","forEach","displayName","Object","fromEntries","map","assignRef","ref","value","current","createUnistylesElement","UnistylesComponent","classNames","hashes","values","className","hash","stored","node","unistylesRef","shadowRegistry","services","add","remove","previousHashes","previousRef","join","undefined"],"sourceRoot":"../../../src","sources":["core/createUnistylesElement.tsx"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,52 @@
1
+ "use strict";
2
+
3
+ import React, { useCallback, useLayoutEffect, useRef, useState } from 'react';
4
+ import { UnistylesShadowRegistry } from '../specs';
5
+ import { copyComponentProperties } from '../utils';
6
+ import { passForwardedRef } from './passForwardRef';
7
+ import { maybeWarnAboutMultipleUnistyles } from './warn';
8
+ import { jsx as _jsx } from "react/jsx-runtime";
9
+ export const createUnistylesTouchableHighlight = Component => {
10
+ const UnistylesTouchableHighlight = props => {
11
+ const relinkRef = useRef(undefined);
12
+ const [hiddenUnderlays, setHiddenUnderlays] = useState(0);
13
+ useLayoutEffect(() => {
14
+ if (hiddenUnderlays > 0) {
15
+ relinkRef.current?.();
16
+ }
17
+ }, [hiddenUnderlays]);
18
+
19
+ // new props come with a parent render, re-renders for the underlay keep the ref and the scoped theme it captured
20
+ const ref = useCallback(ref => {
21
+ maybeWarnAboutMultipleUnistyles(props.style, 'TouchableHighlight');
22
+ const scopedTheme = UnistylesShadowRegistry.getScopedTheme();
23
+ relinkRef.current = () => {
24
+ const previousScopedTheme = UnistylesShadowRegistry.getScopedTheme();
25
+ UnistylesShadowRegistry.setScopedTheme(scopedTheme);
26
+ // @ts-ignore this is hidden from TS
27
+ UnistylesShadowRegistry.remove(ref);
28
+ // @ts-ignore this is hidden from TS
29
+ UnistylesShadowRegistry.add(ref, props.style);
30
+ UnistylesShadowRegistry.setScopedTheme(previousScopedTheme);
31
+ };
32
+ return passForwardedRef(ref, props.ref, () => {
33
+ // @ts-ignore this is hidden from TS
34
+ UnistylesShadowRegistry.add(ref, props.style);
35
+ }, () => {
36
+ relinkRef.current = undefined;
37
+ // @ts-ignore this is hidden from TS
38
+ UnistylesShadowRegistry.remove(ref);
39
+ });
40
+ }, [props]);
41
+ return /*#__PURE__*/_jsx(Component, {
42
+ ...props,
43
+ ref: ref,
44
+ onHideUnderlay: () => {
45
+ setHiddenUnderlays(count => count + 1);
46
+ props.onHideUnderlay?.();
47
+ }
48
+ });
49
+ };
50
+ return copyComponentProperties(Component, UnistylesTouchableHighlight);
51
+ };
52
+ //# sourceMappingURL=createUnistylesTouchableHighlight.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["React","useCallback","useLayoutEffect","useRef","useState","UnistylesShadowRegistry","copyComponentProperties","passForwardedRef","maybeWarnAboutMultipleUnistyles","jsx","_jsx","createUnistylesTouchableHighlight","Component","UnistylesTouchableHighlight","props","relinkRef","undefined","hiddenUnderlays","setHiddenUnderlays","current","ref","style","scopedTheme","getScopedTheme","previousScopedTheme","setScopedTheme","remove","add","onHideUnderlay","count"],"sourceRoot":"../../../src","sources":["core/createUnistylesTouchableHighlight.tsx"],"mappings":";;AAEA,OAAOA,KAAK,IAAIC,WAAW,EAAEC,eAAe,EAAEC,MAAM,EAAEC,QAAQ,QAAQ,OAAO;AAE7E,SAASC,uBAAuB,QAAQ,UAAU;AAClD,SAASC,uBAAuB,QAAQ,UAAU;AAClD,SAASC,gBAAgB,QAAQ,kBAAkB;AACnD,SAASC,+BAA+B,QAAQ,QAAQ;AAAA,SAAAC,GAAA,IAAAC,IAAA;AAExD,OAAO,MAAMC,iCAAiC,GAAIC,SAAoC,IAAK;EACvF,MAAMC,2BAA2B,GAAIC,KAAU,IAAK;IAChD,MAAMC,SAAS,GAAGZ,MAAM,CAAaa,SAAS,CAAC;IAC/C,MAAM,CAACC,eAAe,EAAEC,kBAAkB,CAAC,GAAGd,QAAQ,CAAC,CAAC,CAAC;IAEzDF,eAAe,CAAC,MAAM;MAClB,IAAIe,eAAe,GAAG,CAAC,EAAE;QACrBF,SAAS,CAACI,OAAO,GAAG,CAAC;MACzB;IACJ,CAAC,EAAE,CAACF,eAAe,CAAC,CAAC;;IAErB;IACA,MAAMG,GAAG,GAAGnB,WAAW,CAClBmB,GAAY,IAAK;MACdZ,+BAA+B,CAACM,KAAK,CAACO,KAAK,EAAE,oBAAoB,CAAC;MAElE,MAAMC,WAAW,GAAGjB,uBAAuB,CAACkB,cAAc,CAAC,CAAC;MAE5DR,SAAS,CAACI,OAAO,GAAG,MAAM;QACtB,MAAMK,mBAAmB,GAAGnB,uBAAuB,CAACkB,cAAc,CAAC,CAAC;QAEpElB,uBAAuB,CAACoB,cAAc,CAACH,WAAW,CAAC;QACnD;QACAjB,uBAAuB,CAACqB,MAAM,CAACN,GAAG,CAAC;QACnC;QACAf,uBAAuB,CAACsB,GAAG,CAACP,GAAG,EAAEN,KAAK,CAACO,KAAK,CAAC;QAC7ChB,uBAAuB,CAACoB,cAAc,CAACD,mBAAmB,CAAC;MAC/D,CAAC;MAED,OAAOjB,gBAAgB,CACnBa,GAAG,EACHN,KAAK,CAACM,GAAG,EACT,MAAM;QACF;QACAf,uBAAuB,CAACsB,GAAG,CAACP,GAAG,EAAEN,KAAK,CAACO,KAAK,CAAC;MACjD,CAAC,EACD,MAAM;QACFN,SAAS,CAACI,OAAO,GAAGH,SAAS;QAC7B;QACAX,uBAAuB,CAACqB,MAAM,CAACN,GAAG,CAAC;MACvC,CACJ,CAAC;IACL,CAAC,EACD,CAACN,KAAK,CACV,CAAC;IAED,oBACIJ,IAAA,CAACE,SAAS;MAAA,GACFE,KAAK;MACTM,GAAG,EAAEA,GAAI;MACTQ,cAAc,EAAEA,CAAA,KAAM;QAClBV,kBAAkB,CAAEW,KAAK,IAAKA,KAAK,GAAG,CAAC,CAAC;QACxCf,KAAK,CAACc,cAAc,GAAG,CAAC;MAC5B;IAAE,CACL,CAAC;EAEV,CAAC;EAED,OAAOtB,uBAAuB,CAACM,SAAS,EAAEC,2BAA2B,CAAC;AAC1E,CAAC","ignoreList":[]}
@@ -1,7 +1,9 @@
1
1
  "use strict";
2
2
 
3
3
  export { createUnistylesElement } from './createUnistylesElement';
4
+ export { createUnistylesActivityIndicator } from './createUnistylesActivityIndicator';
4
5
  export { createUnistylesImageBackground } from './createUnistylesImageBackground';
6
+ export { createUnistylesTouchableHighlight } from './createUnistylesTouchableHighlight';
5
7
  export { withUnistyles } from './withUnistyles';
6
8
  export { passForwardedRef } from './passForwardRef';
7
9
  export { getClassName } from './getClassname';
@@ -1 +1 @@
1
- {"version":3,"names":["createUnistylesElement","createUnistylesImageBackground","withUnistyles","passForwardedRef","getClassName","useUnistyles"],"sourceRoot":"../../../src","sources":["core/index.ts"],"mappings":";;AAAA,SAASA,sBAAsB,QAAQ,0BAA0B;AACjE,SAASC,8BAA8B,QAAQ,kCAAkC;AACjF,SAASC,aAAa,QAAQ,iBAAiB;AAC/C,SAASC,gBAAgB,QAAQ,kBAAkB;AACnD,SAASC,YAAY,QAAQ,gBAAgB;AAC7C,SAASC,YAAY,QAAQ,gBAAgB","ignoreList":[]}
1
+ {"version":3,"names":["createUnistylesElement","createUnistylesActivityIndicator","createUnistylesImageBackground","createUnistylesTouchableHighlight","withUnistyles","passForwardedRef","getClassName","useUnistyles"],"sourceRoot":"../../../src","sources":["core/index.ts"],"mappings":";;AAAA,SAASA,sBAAsB,QAAQ,0BAA0B;AACjE,SAASC,gCAAgC,QAAQ,oCAAoC;AACrF,SAASC,8BAA8B,QAAQ,kCAAkC;AACjF,SAASC,iCAAiC,QAAQ,qCAAqC;AACvF,SAASC,aAAa,QAAQ,iBAAiB;AAC/C,SAASC,gBAAgB,QAAQ,kBAAkB;AACnD,SAASC,YAAY,QAAQ,gBAAgB;AAC7C,SAASC,YAAY,QAAQ,gBAAgB","ignoreList":[]}
@@ -0,0 +1,5 @@
1
+ "use strict";
2
+
3
+ // package exports resolve this file as is, so the platform split lives in ./verify
4
+ export { verify } from './verify';
5
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["verify"],"sourceRoot":"../../../src","sources":["diagnostics/index.ts"],"mappings":";;AAAA;AACA,SAASA,MAAM,QAAQ,UAAU","ignoreList":[]}
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":[],"sourceRoot":"../../../src","sources":["diagnostics/types.ts"],"mappings":"","ignoreList":[]}
@@ -0,0 +1,14 @@
1
+ "use strict";
2
+
3
+ // There is no shadow tree on web
4
+ export const verify = () => ({
5
+ linked: 0,
6
+ checked: 0,
7
+ detached: 0,
8
+ suspended: 0,
9
+ orphans: 0,
10
+ pendingUpdates: 0,
11
+ mismatches: [],
12
+ errors: []
13
+ });
14
+ //# sourceMappingURL=verify.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["verify","linked","checked","detached","suspended","orphans","pendingUpdates","mismatches","errors"],"sourceRoot":"../../../src","sources":["diagnostics/verify.ts"],"mappings":";;AAEA;AACA,OAAO,MAAMA,MAAM,GAAGA,CAAA,MAAqB;EACvCC,MAAM,EAAE,CAAC;EACTC,OAAO,EAAE,CAAC;EACVC,QAAQ,EAAE,CAAC;EACXC,SAAS,EAAE,CAAC;EACZC,OAAO,EAAE,CAAC;EACVC,cAAc,EAAE,CAAC;EACjBC,UAAU,EAAE,EAAE;EACdC,MAAM,EAAE;AACZ,CAAC,CAAC","ignoreList":[]}
@@ -0,0 +1,8 @@
1
+ "use strict";
2
+
3
+ import { UnistylesShadowRegistry } from '../specs';
4
+
5
+ // Compares props committed to the shadow tree with styles rebuilt for every linked node
6
+ // (its own arguments, variants and the current theme). Meant for tests, it never commits anything.
7
+ export const verify = () => UnistylesShadowRegistry.verify();
8
+ //# sourceMappingURL=verify.native.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["UnistylesShadowRegistry","verify"],"sourceRoot":"../../../src","sources":["diagnostics/verify.native.ts"],"mappings":";;AAEA,SAASA,uBAAuB,QAAQ,UAAU;;AAElD;AACA;AACA,OAAO,MAAMC,MAAM,GAAGA,CAAA,KAAoBD,uBAAuB,CAACC,MAAM,CAAC,CAAC","ignoreList":[]}
@@ -7,8 +7,10 @@ if (majorReactVersions === undefined || majorReactVersions < 19) {
7
7
  }
8
8
  export { StyleSheet, UnistylesRuntime } from './specs';
9
9
  export { UnistyleDependency } from './specs';
10
+ export { ColorScheme, Orientation, StatusBarStyle } from './specs/types';
10
11
  export { mq } from './mq';
11
12
  export { withUnistyles, useUnistyles, createUnistylesElement } from './core';
13
+ export { IOSContentSizeCategory, AndroidContentSizeCategory, WebContentSizeCategory } from './types';
12
14
  export { Display, Hide, ScopedTheme } from './components';
13
15
  export { useServerUnistyles, hydrateServerUnistyles, getServerUnistyles, resetServerUnistyles } from './server';
14
16
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["React","majorReactVersions","version","split","map","Number","parseInt","undefined","Error","StyleSheet","UnistylesRuntime","UnistyleDependency","mq","withUnistyles","useUnistyles","createUnistylesElement","Display","Hide","ScopedTheme","useServerUnistyles","hydrateServerUnistyles","getServerUnistyles","resetServerUnistyles"],"sourceRoot":"../../src","sources":["index.ts"],"mappings":";;AAAA,OAAOA,KAAK,MAAM,OAAO;AAEzB,MAAM,CAACC,kBAAkB,CAAC,GAAGD,KAAK,CAACE,OAAO,CAACC,KAAK,CAAC,GAAG,CAAC,CAACC,GAAG,CAACC,MAAM,CAACC,QAAQ,CAAC;AAE1E,IAAIL,kBAAkB,KAAKM,SAAS,IAAIN,kBAAkB,GAAG,EAAE,EAAE;EAC7D,MAAM,IAAIO,KAAK,CAAC,kFAAkF,CAAC;AACvG;AAEA,SAASC,UAAU,EAAEC,gBAAgB,QAAQ,SAAS;AACtD,SAASC,kBAAkB,QAAQ,SAAS;AAC5C,SAASC,EAAE,QAAQ,MAAM;AAEzB,SAASC,aAAa,EAAEC,YAAY,EAAEC,sBAAsB,QAAQ,QAAQ;AAE5E,SAASC,OAAO,EAAEC,IAAI,EAAEC,WAAW,QAAQ,cAAc;AACzD,SAASC,kBAAkB,EAAEC,sBAAsB,EAAEC,kBAAkB,EAAEC,oBAAoB,QAAQ,UAAU","ignoreList":[]}
1
+ {"version":3,"names":["React","majorReactVersions","version","split","map","Number","parseInt","undefined","Error","StyleSheet","UnistylesRuntime","UnistyleDependency","ColorScheme","Orientation","StatusBarStyle","mq","withUnistyles","useUnistyles","createUnistylesElement","IOSContentSizeCategory","AndroidContentSizeCategory","WebContentSizeCategory","Display","Hide","ScopedTheme","useServerUnistyles","hydrateServerUnistyles","getServerUnistyles","resetServerUnistyles"],"sourceRoot":"../../src","sources":["index.ts"],"mappings":";;AAAA,OAAOA,KAAK,MAAM,OAAO;AAEzB,MAAM,CAACC,kBAAkB,CAAC,GAAGD,KAAK,CAACE,OAAO,CAACC,KAAK,CAAC,GAAG,CAAC,CAACC,GAAG,CAACC,MAAM,CAACC,QAAQ,CAAC;AAE1E,IAAIL,kBAAkB,KAAKM,SAAS,IAAIN,kBAAkB,GAAG,EAAE,EAAE;EAC7D,MAAM,IAAIO,KAAK,CAAC,kFAAkF,CAAC;AACvG;AAEA,SAASC,UAAU,EAAEC,gBAAgB,QAAQ,SAAS;AACtD,SAASC,kBAAkB,QAAQ,SAAS;AAE5C,SAASC,WAAW,EAAEC,WAAW,EAAEC,cAAc,QAAQ,eAAe;AACxE,SAASC,EAAE,QAAQ,MAAM;AAEzB,SAASC,aAAa,EAAEC,YAAY,EAAEC,sBAAsB,QAAQ,QAAQ;AAE5E,SAASC,sBAAsB,EAAEC,0BAA0B,EAAEC,sBAAsB,QAAQ,SAAS;AACpG,SAASC,OAAO,EAAEC,IAAI,EAAEC,WAAW,QAAQ,cAAc;AACzD,SAASC,kBAAkB,EAAEC,sBAAsB,EAAEC,kBAAkB,EAAEC,oBAAoB,QAAQ,UAAU","ignoreList":[]}
@@ -136,6 +136,47 @@ jest.mock('react-native-unistyles', () => {
136
136
  return result;
137
137
  };
138
138
  return {
139
+ ColorScheme: {
140
+ Light: 'light',
141
+ Dark: 'dark',
142
+ Unspecified: 'unspecified'
143
+ },
144
+ Orientation: {
145
+ Portrait: 'portrait',
146
+ Landscape: 'landscape'
147
+ },
148
+ StatusBarStyle: {
149
+ Default: 'default',
150
+ Light: 'light',
151
+ Dark: 'dark'
152
+ },
153
+ IOSContentSizeCategory: {
154
+ AccessibilityExtraExtraExtraLarge: 'accessibilityExtraExtraExtraLarge',
155
+ AccessibilityExtraExtraLarge: 'accessibilityExtraExtraLarge',
156
+ AccessibilityExtraLarge: 'accessibilityExtraLarge',
157
+ AccessibilityLarge: 'accessibilityLarge',
158
+ AccessibilityMedium: 'accessibilityMedium',
159
+ ExtraExtraExtraLarge: 'xxxLarge',
160
+ ExtraExtraLarge: 'xxLarge',
161
+ ExtraLarge: 'xLarge',
162
+ Large: 'Large',
163
+ Medium: 'Medium',
164
+ Small: 'Small',
165
+ ExtraSmall: 'xSmall',
166
+ Unspecified: 'unspecified'
167
+ },
168
+ AndroidContentSizeCategory: {
169
+ Small: 'Small',
170
+ Default: 'Default',
171
+ Large: 'Large',
172
+ ExtraLarge: 'ExtraLarge',
173
+ Huge: 'Huge',
174
+ ExtraHuge: 'ExtraHuge',
175
+ ExtraExtraHuge: 'ExtraExtraHuge'
176
+ },
177
+ WebContentSizeCategory: {
178
+ Unspecified: 'web-unspecified'
179
+ },
139
180
  Hide: () => null,
140
181
  Display: () => null,
141
182
  ScopedTheme: () => null,
@@ -1 +1 @@
1
- {"version":3,"names":["jest","mock","NitroModules","createHybridObject","add","init","createHybridStatusBar","setStyle","createHybridNavigationBar","React","require","_REGISTRY","themes","breakpoints","miniRuntime","themeName","undefined","breakpoint","hasAdaptiveThemes","colorScheme","contentSizeCategory","insets","top","left","right","bottom","ime","pixelRatio","fontScale","rtl","isLandscape","isPortrait","navigationBar","width","height","screen","statusBar","unistylesRuntime","orientation","dispose","equals","name","setHidden","getTheme","Object","values","at","setTheme","updateTheme","setRootViewBackgroundColor","nativeSetRootViewBackgroundColor","setAdaptiveThemes","setImmersiveMode","setImmersiveModeNative","stripVariants","styleEntries","result","style","entries","args","resolved","variants","compoundVariants","rest","Array","isArray","Hide","Display","ScopedTheme","withUnistyles","Component","mapper","props","createElement","mq","only","and","useUnistyles","theme","rt","StyleSheet","absoluteFillObject","position","absoluteFill","compose","styles","flatten","create","useVariants","configure","config","jsMethods","processColor","parseBoxShadowString","hairlineWidth","addChangeListener","UnistylesRuntime","unistyles","mockedSharedValue","value","get","set","_value","useAnimatedTheme","sharedTheme","useAnimatedVariantColor","fromValue","toValue"],"sourceRoot":"../../src","sources":["mocks.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["jest","mock","NitroModules","createHybridObject","add","init","createHybridStatusBar","setStyle","createHybridNavigationBar","React","require","_REGISTRY","themes","breakpoints","miniRuntime","themeName","undefined","breakpoint","hasAdaptiveThemes","colorScheme","contentSizeCategory","insets","top","left","right","bottom","ime","pixelRatio","fontScale","rtl","isLandscape","isPortrait","navigationBar","width","height","screen","statusBar","unistylesRuntime","orientation","dispose","equals","name","setHidden","getTheme","Object","values","at","setTheme","updateTheme","setRootViewBackgroundColor","nativeSetRootViewBackgroundColor","setAdaptiveThemes","setImmersiveMode","setImmersiveModeNative","stripVariants","styleEntries","result","style","entries","args","resolved","variants","compoundVariants","rest","Array","isArray","ColorScheme","Light","Dark","Unspecified","Orientation","Portrait","Landscape","StatusBarStyle","Default","IOSContentSizeCategory","AccessibilityExtraExtraExtraLarge","AccessibilityExtraExtraLarge","AccessibilityExtraLarge","AccessibilityLarge","AccessibilityMedium","ExtraExtraExtraLarge","ExtraExtraLarge","ExtraLarge","Large","Medium","Small","ExtraSmall","AndroidContentSizeCategory","Huge","ExtraHuge","ExtraExtraHuge","WebContentSizeCategory","Hide","Display","ScopedTheme","withUnistyles","Component","mapper","props","createElement","mq","only","and","useUnistyles","theme","rt","StyleSheet","absoluteFillObject","position","absoluteFill","compose","styles","flatten","create","useVariants","configure","config","jsMethods","processColor","parseBoxShadowString","hairlineWidth","addChangeListener","UnistylesRuntime","unistyles","mockedSharedValue","value","get","set","_value","useAnimatedTheme","sharedTheme","useAnimatedVariantColor","fromValue","toValue"],"sourceRoot":"../../src","sources":["mocks.ts"],"mappings":"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","ignoreList":[]}
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
 
3
- import { useEffect, useLayoutEffect } from 'react';
3
+ import { useEffect, useLayoutEffect, useRef } from 'react';
4
4
  import { useSharedValue } from 'react-native-reanimated';
5
5
  import { StyleSheet, UnistyleDependency } from '../../specs';
6
6
  export const useUpdateVariantColor = ({
@@ -10,6 +10,7 @@ export const useUpdateVariantColor = ({
10
10
  }) => {
11
11
  const fromValue = useSharedValue(style[colorKey]);
12
12
  const toValue = useSharedValue(style[colorKey]);
13
+ const applied = useRef(undefined);
13
14
  useEffect(() => {
14
15
  const dispose = StyleSheet.addChangeListener(changedDependencies => {
15
16
  if (changedDependencies.includes(UnistyleDependency.Theme) || changedDependencies.includes(UnistyleDependency.Breakpoints)) {
@@ -22,6 +23,13 @@ export const useUpdateVariantColor = ({
22
23
  return () => dispose();
23
24
  }, [style, colorKey]);
24
25
  useLayoutEffect(() => {
26
+ if (applied.current?.style === style && applied.current.colorKey === colorKey) {
27
+ return;
28
+ }
29
+ applied.current = {
30
+ style,
31
+ colorKey
32
+ };
25
33
  fromValue.set(toValue.value);
26
34
  toValue.set(style[colorKey]);
27
35
  }, [style, colorKey]);
@@ -1 +1 @@
1
- {"version":3,"names":["useEffect","useLayoutEffect","useSharedValue","StyleSheet","UnistyleDependency","useUpdateVariantColor","colorKey","style","secretKey","fromValue","toValue","dispose","addChangeListener","changedDependencies","includes","Theme","Breakpoints","newStyles","uni__getStyles","set","value"],"sourceRoot":"../../../../src","sources":["reanimated/variant/useUpdateVariantColor.native.ts"],"mappings":";;AAAA,SAASA,SAAS,EAAEC,eAAe,QAAQ,OAAO;AAClD,SAASC,cAAc,QAAQ,yBAAyB;AAIxD,SAASC,UAAU,EAAEC,kBAAkB,QAAQ,aAAa;AAE5D,OAAO,MAAMC,qBAAqB,GAAGA,CAAgC;EACjEC,QAAQ;EACRC,KAAK;EACLC;AAC4B,CAAC,KAAK;EAClC,MAAMC,SAAS,GAAGP,cAAc,CAASK,KAAK,CAACD,QAAQ,CAAC,CAAC;EACzD,MAAMI,OAAO,GAAGR,cAAc,CAASK,KAAK,CAACD,QAAQ,CAAC,CAAC;EAEvDN,SAAS,CAAC,MAAM;IACZ,MAAMW,OAAO,GAAGR,UAAU,CAACS,iBAAiB,CAAEC,mBAAmB,IAAK;MAClE,IACIA,mBAAmB,CAACC,QAAQ,CAACV,kBAAkB,CAACW,KAAK,CAAC,IACtDF,mBAAmB,CAACC,QAAQ,CAACV,kBAAkB,CAACY,WAAW,CAAC,EAC9D;QACE;QACA,MAAMC,SAAS,GAAGV,KAAK,CAACC,SAAS,CAAC,EAAEU,cAAc,CAAC,CAAC;QAEpDT,SAAS,CAACU,GAAG,CAACT,OAAO,CAACU,KAAK,CAAC;QAC5BV,OAAO,CAACS,GAAG,CAACF,SAAS,CAACX,QAAQ,CAAC,CAAC;MACpC;IACJ,CAAC,CAAC;IAEF,OAAO,MAAMK,OAAO,CAAC,CAAC;EAC1B,CAAC,EAAE,CAACJ,KAAK,EAAED,QAAQ,CAAC,CAAC;EAErBL,eAAe,CAAC,MAAM;IAClBQ,SAAS,CAACU,GAAG,CAACT,OAAO,CAACU,KAAK,CAAC;IAC5BV,OAAO,CAACS,GAAG,CAACZ,KAAK,CAACD,QAAQ,CAAC,CAAC;EAChC,CAAC,EAAE,CAACC,KAAK,EAAED,QAAQ,CAAC,CAAC;EAErB,OAAO;IACHG,SAAS;IACTC;EACJ,CAAC;AACL,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["useEffect","useLayoutEffect","useRef","useSharedValue","StyleSheet","UnistyleDependency","useUpdateVariantColor","colorKey","style","secretKey","fromValue","toValue","applied","undefined","dispose","addChangeListener","changedDependencies","includes","Theme","Breakpoints","newStyles","uni__getStyles","set","value","current"],"sourceRoot":"../../../../src","sources":["reanimated/variant/useUpdateVariantColor.native.ts"],"mappings":";;AAAA,SAASA,SAAS,EAAEC,eAAe,EAAEC,MAAM,QAAQ,OAAO;AAC1D,SAASC,cAAc,QAAQ,yBAAyB;AAIxD,SAASC,UAAU,EAAEC,kBAAkB,QAAQ,aAAa;AAE5D,OAAO,MAAMC,qBAAqB,GAAGA,CAAgC;EACjEC,QAAQ;EACRC,KAAK;EACLC;AAC4B,CAAC,KAAK;EAClC,MAAMC,SAAS,GAAGP,cAAc,CAASK,KAAK,CAACD,QAAQ,CAAC,CAAC;EACzD,MAAMI,OAAO,GAAGR,cAAc,CAASK,KAAK,CAACD,QAAQ,CAAC,CAAC;EACvD,MAAMK,OAAO,GAAGV,MAAM,CAA0CW,SAAS,CAAC;EAE1Eb,SAAS,CAAC,MAAM;IACZ,MAAMc,OAAO,GAAGV,UAAU,CAACW,iBAAiB,CAAEC,mBAAmB,IAAK;MAClE,IACIA,mBAAmB,CAACC,QAAQ,CAACZ,kBAAkB,CAACa,KAAK,CAAC,IACtDF,mBAAmB,CAACC,QAAQ,CAACZ,kBAAkB,CAACc,WAAW,CAAC,EAC9D;QACE;QACA,MAAMC,SAAS,GAAGZ,KAAK,CAACC,SAAS,CAAC,EAAEY,cAAc,CAAC,CAAC;QAEpDX,SAAS,CAACY,GAAG,CAACX,OAAO,CAACY,KAAK,CAAC;QAC5BZ,OAAO,CAACW,GAAG,CAACF,SAAS,CAACb,QAAQ,CAAC,CAAC;MACpC;IACJ,CAAC,CAAC;IAEF,OAAO,MAAMO,OAAO,CAAC,CAAC;EAC1B,CAAC,EAAE,CAACN,KAAK,EAAED,QAAQ,CAAC,CAAC;EAErBN,eAAe,CAAC,MAAM;IAClB,IAAIW,OAAO,CAACY,OAAO,EAAEhB,KAAK,KAAKA,KAAK,IAAII,OAAO,CAACY,OAAO,CAACjB,QAAQ,KAAKA,QAAQ,EAAE;MAC3E;IACJ;IAEAK,OAAO,CAACY,OAAO,GAAG;MAAEhB,KAAK;MAAED;IAAS,CAAC;IACrCG,SAAS,CAACY,GAAG,CAACX,OAAO,CAACY,KAAK,CAAC;IAC5BZ,OAAO,CAACW,GAAG,CAACd,KAAK,CAACD,QAAQ,CAAC,CAAC;EAChC,CAAC,EAAE,CAACC,KAAK,EAAED,QAAQ,CAAC,CAAC;EAErB,OAAO;IACHG,SAAS;IACTC;EACJ,CAAC;AACL,CAAC","ignoreList":[]}