@rive-app/react-native 0.2.0 → 0.2.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (36) hide show
  1. package/android/src/main/java/com/margelo/nitro/rive/HybridRiveFile.kt +13 -4
  2. package/android/src/main/java/com/margelo/nitro/rive/HybridViewModel.kt +1 -0
  3. package/android/src/main/java/com/margelo/nitro/rive/HybridViewModelColorProperty.kt +1 -1
  4. package/ios/HybridRiveFile.swift +1 -0
  5. package/ios/HybridViewModel.swift +1 -0
  6. package/lib/module/core/RiveView.js +38 -9
  7. package/lib/module/core/RiveView.js.map +1 -1
  8. package/lib/module/hooks/useRive.js +56 -38
  9. package/lib/module/hooks/useRive.js.map +1 -1
  10. package/lib/module/hooks/useRiveBoolean.js +17 -5
  11. package/lib/module/hooks/useRiveBoolean.js.map +1 -1
  12. package/lib/module/hooks/useRiveColor.js +38 -10
  13. package/lib/module/hooks/useRiveColor.js.map +1 -1
  14. package/lib/module/hooks/useRiveEnum.js +21 -9
  15. package/lib/module/hooks/useRiveEnum.js.map +1 -1
  16. package/lib/module/hooks/useRiveList.js +170 -54
  17. package/lib/module/hooks/useRiveList.js.map +1 -1
  18. package/lib/module/hooks/useRiveNumber.js +17 -5
  19. package/lib/module/hooks/useRiveNumber.js.map +1 -1
  20. package/lib/module/hooks/useRiveProperty.js +2 -2
  21. package/lib/module/hooks/useRiveProperty.js.map +1 -1
  22. package/lib/module/hooks/useRiveString.js +17 -5
  23. package/lib/module/hooks/useRiveString.js.map +1 -1
  24. package/lib/module/hooks/useRiveTrigger.js +50 -15
  25. package/lib/module/hooks/useRiveTrigger.js.map +1 -1
  26. package/lib/module/hooks/useViewModelInstance.js +97 -12
  27. package/lib/module/hooks/useViewModelInstance.js.map +1 -1
  28. package/lib/typescript/src/hooks/useRiveEnum.d.ts.map +1 -1
  29. package/lib/typescript/src/hooks/useViewModelInstance.d.ts +82 -13
  30. package/lib/typescript/src/hooks/useViewModelInstance.d.ts.map +1 -1
  31. package/lib/typescript/src/specs/RiveView.nitro.d.ts +1 -1
  32. package/lib/typescript/src/specs/RiveView.nitro.d.ts.map +1 -1
  33. package/package.json +4 -2
  34. package/src/hooks/useRiveEnum.ts +5 -4
  35. package/src/hooks/useViewModelInstance.ts +198 -35
  36. package/src/specs/RiveView.nitro.ts +1 -1
@@ -24,13 +24,22 @@ class HybridRiveFile : HybridRiveFileSpec() {
24
24
  get() = riveFile?.viewModelCount?.toDouble()
25
25
 
26
26
  override fun viewModelByIndex(index: Double): HybridViewModelSpec? {
27
- val vm = riveFile?.getViewModelByIndex(index.toInt()) ?: return null
28
- return HybridViewModel(vm)
27
+ if (index < 0) return null
28
+ return try {
29
+ val vm = riveFile?.getViewModelByIndex(index.toInt()) ?: return null
30
+ HybridViewModel(vm)
31
+ } catch (e: Exception) {
32
+ null
33
+ }
29
34
  }
30
35
 
31
36
  override fun viewModelByName(name: String): HybridViewModelSpec? {
32
- val vm = riveFile?.getViewModelByName(name) ?: return null
33
- return HybridViewModel(vm)
37
+ return try {
38
+ val vm = riveFile?.getViewModelByName(name) ?: return null
39
+ HybridViewModel(vm)
40
+ } catch (e: Exception) {
41
+ null
42
+ }
34
43
  }
35
44
 
36
45
  override fun defaultArtboardViewModel(artboardBy: ArtboardBy?): HybridViewModelSpec? {
@@ -16,6 +16,7 @@ class HybridViewModel(private val viewModel: ViewModel) : HybridViewModelSpec()
16
16
  get() = viewModel.name
17
17
 
18
18
  override fun createInstanceByIndex(index: Double): HybridViewModelInstanceSpec? {
19
+ if (index < 0) return null
19
20
  try {
20
21
  val vmi = viewModel.createInstanceFromIndex(index.toInt())
21
22
  return HybridViewModelInstance(vmi)
@@ -12,7 +12,7 @@ class HybridViewModelColorProperty(private val viewModelColor: ViewModelColorPro
12
12
  override var value: Double
13
13
  get() = viewModelColor.value.toDouble()
14
14
  set(value) {
15
- viewModelColor.value = value.toInt()
15
+ viewModelColor.value = value.toLong().toInt()
16
16
  }
17
17
 
18
18
  override fun addListener(onChanged: (value: Double) -> Unit): () -> Unit {
@@ -36,6 +36,7 @@ class HybridRiveFile: HybridRiveFileSpec, RiveViewSource {
36
36
  }
37
37
 
38
38
  func viewModelByIndex(index: Double) throws -> (any HybridViewModelSpec)? {
39
+ guard index >= 0 else { return nil }
39
40
  guard let vm = riveFile?.viewModel(at: UInt(index)) else { return nil }
40
41
  return HybridViewModel(viewModel: vm)
41
42
  }
@@ -14,6 +14,7 @@ class HybridViewModel: HybridViewModelSpec {
14
14
  var modelName: String { viewModel?.name ?? "" }
15
15
 
16
16
  func createInstanceByIndex(index: Double) throws -> (any HybridViewModelInstanceSpec)? {
17
+ guard index >= 0 else { return nil }
17
18
  guard let viewModel = viewModel,
18
19
  let vmi = viewModel.createInstance(fromIndex: UInt(index)) else { return nil }
19
20
  return HybridViewModelInstance(viewModelInstance: vmi)
@@ -1,5 +1,6 @@
1
1
  "use strict";
2
2
 
3
+ import { c as _c } from "react/compiler-runtime";
3
4
  import { NitroRiveView } from "./NitroRiveViewComponent.js";
4
5
  import { RiveErrorType } from "./Errors.js";
5
6
  import { jsx as _jsx } from "react/jsx-runtime";
@@ -36,16 +37,44 @@ const defaultOnError = error => console.error(`[${RiveErrorType[error.type]}] ${
36
37
  * - pause(): Pauses the Rive graphic
37
38
  */
38
39
  export function RiveView(props) {
39
- const {
40
- onError,
41
- ...rest
42
- } = props;
40
+ const $ = _c(8);
41
+ let onError;
42
+ let rest;
43
+ if ($[0] !== props) {
44
+ ({
45
+ onError,
46
+ ...rest
47
+ } = props);
48
+ $[0] = props;
49
+ $[1] = onError;
50
+ $[2] = rest;
51
+ } else {
52
+ onError = $[1];
53
+ rest = $[2];
54
+ }
43
55
  const wrappedOnError = onError ?? defaultOnError;
44
- return /*#__PURE__*/_jsx(NitroRiveView, {
45
- ...rest,
46
- onError: {
56
+ let t0;
57
+ if ($[3] !== wrappedOnError) {
58
+ t0 = {
47
59
  f: wrappedOnError
48
- }
49
- });
60
+ };
61
+ $[3] = wrappedOnError;
62
+ $[4] = t0;
63
+ } else {
64
+ t0 = $[4];
65
+ }
66
+ let t1;
67
+ if ($[5] !== rest || $[6] !== t0) {
68
+ t1 = /*#__PURE__*/_jsx(NitroRiveView, {
69
+ ...rest,
70
+ onError: t0
71
+ });
72
+ $[5] = rest;
73
+ $[6] = t0;
74
+ $[7] = t1;
75
+ } else {
76
+ t1 = $[7];
77
+ }
78
+ return t1;
50
79
  }
51
80
  //# sourceMappingURL=RiveView.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["NitroRiveView","RiveErrorType","jsx","_jsx","defaultOnError","error","console","type","message","RiveView","props","onError","rest","wrappedOnError","f"],"sourceRoot":"../../../src","sources":["core/RiveView.tsx"],"mappings":";;AACA,SAASA,aAAa,QAAQ,6BAA0B;AACxD,SAASC,aAAa,QAAwB,aAAU;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAOzD,MAAMC,cAAc,GAAIC,KAAgB,IACtCC,OAAO,CAACD,KAAK,CAAC,IAAIJ,aAAa,CAACI,KAAK,CAACE,IAAI,CAAC,KAAKF,KAAK,CAACG,OAAO,EAAE,CAAC;;AAElE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,SAASC,QAAQA,CAACC,KAAoB,EAAE;EAC7C,MAAM;IAAEC,OAAO;IAAE,GAAGC;EAAK,CAAC,GAAGF,KAAK;EAClC,MAAMG,cAAc,GAAGF,OAAO,IAAIP,cAAc;EAEhD,oBAAOD,IAAA,CAACH,aAAa;IAAA,GAAKY,IAAI;IAAED,OAAO,EAAE;MAAEG,CAAC,EAAED;IAAe;EAAE,CAAE,CAAC;AACpE","ignoreList":[]}
1
+ {"version":3,"names":["NitroRiveView","RiveErrorType","jsx","_jsx","defaultOnError","error","console","type","message","RiveView","props","$","_c","onError","rest","wrappedOnError","t0","f","t1"],"sourceRoot":"../../../src","sources":["core/RiveView.tsx"],"mappings":";;;AACA,SAASA,aAAa,QAAQ,6BAA0B;AACxD,SAASC,aAAa,QAAwB,aAAU;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAOzD,MAAMC,cAAc,GAAIC,KAAgB,IACtCC,OAAO,CAACD,KAAK,CAAC,IAAIJ,aAAa,CAACI,KAAK,CAACE,IAAI,CAAC,KAAKF,KAAK,CAACG,OAAO,EAAE,CAAC;;AAElE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,SAAAC,SAAAC,KAAA;EAAA,MAAAC,CAAA,GAAAC,EAAA;EAAA,IAAAC,OAAA;EAAA,IAAAC,IAAA;EAAA,IAAAH,CAAA,QAAAD,KAAA;IACL;MAAAG,OAAA;MAAA,GAAAC;IAAA,IAA6BJ,KAAK;IAACC,CAAA,MAAAD,KAAA;IAAAC,CAAA,MAAAE,OAAA;IAAAF,CAAA,MAAAG,IAAA;EAAA;IAAAD,OAAA,GAAAF,CAAA;IAAAG,IAAA,GAAAH,CAAA;EAAA;EACnC,MAAAI,cAAA,GAAuBF,OAAyB,IAAzBT,cAAyB;EAAC,IAAAY,EAAA;EAAA,IAAAL,CAAA,QAAAI,cAAA;IAERC,EAAA;MAAAC,CAAA,EAAKF;IAAe,CAAC;IAAAJ,CAAA,MAAAI,cAAA;IAAAJ,CAAA,MAAAK,EAAA;EAAA;IAAAA,EAAA,GAAAL,CAAA;EAAA;EAAA,IAAAO,EAAA;EAAA,IAAAP,CAAA,QAAAG,IAAA,IAAAH,CAAA,QAAAK,EAAA;IAAvDE,EAAA,gBAAAf,IAAA,CAACH,aAAa;MAAA,GAAKc,IAAI;MAAWD,OAAqB,EAArBG;IAAqB,CAAG,CAAC;IAAAL,CAAA,MAAAG,IAAA;IAAAH,CAAA,MAAAK,EAAA;IAAAL,CAAA,MAAAO,EAAA;EAAA;IAAAA,EAAA,GAAAP,CAAA;EAAA;EAAA,OAA3DO,EAA2D;AAAA","ignoreList":[]}
@@ -1,51 +1,69 @@
1
1
  "use strict";
2
2
 
3
+ import { c as _c } from "react/compiler-runtime";
3
4
  import { useRef, useCallback, useState } from 'react';
4
5
  export function useRive() {
6
+ const $ = _c(4);
5
7
  const riveRef = useRef(null);
6
8
  const [riveViewRef, setRiveViewRef] = useState(null);
7
9
  const timeoutRef = useRef(null);
8
- const setRef = useCallback(node => {
9
- if (riveRef.current !== node) {
10
- riveRef.current = node;
11
-
12
- // Clear any existing timeout
13
- if (timeoutRef.current) {
14
- clearTimeout(timeoutRef.current);
15
- }
16
- const timeout = new Promise((_, reject) => {
17
- timeoutRef.current = setTimeout(() => {
18
- reject(new Error('Rive view ready timeout'));
19
- }, 5000);
20
- });
21
-
22
- // TODO: Need to clear out the awaitViewReady promise if it times out
23
- // or add this timeout natively and return false
24
- Promise.race([node?.awaitViewReady(), timeout]).then(result => {
25
- if (result === true) {
26
- setRiveViewRef(node);
27
- } else {
28
- console.warn('Rive view ready check returned false');
29
- setRiveViewRef(null);
30
- }
31
- }).catch(error => {
32
- console.warn('Failed to initialize Rive view:', error);
33
- setRiveViewRef(null);
34
- }).finally(() => {
35
- // Clear the timeout in both success and error cases
10
+ let t0;
11
+ if ($[0] === Symbol.for("react.memo_cache_sentinel")) {
12
+ t0 = node => {
13
+ if (riveRef.current !== node) {
14
+ riveRef.current = node;
36
15
  if (timeoutRef.current) {
37
16
  clearTimeout(timeoutRef.current);
38
- timeoutRef.current = null;
39
17
  }
40
- });
41
- }
42
- }, []);
43
- return {
44
- riveRef,
45
- riveViewRef,
46
- setHybridRef: {
18
+ const timeout = new Promise((_, reject) => {
19
+ timeoutRef.current = setTimeout(() => {
20
+ reject(new Error("Rive view ready timeout"));
21
+ }, 5000);
22
+ });
23
+ Promise.race([node?.awaitViewReady(), timeout]).then(result => {
24
+ if (result === true) {
25
+ setRiveViewRef(node);
26
+ } else {
27
+ console.warn("Rive view ready check returned false");
28
+ setRiveViewRef(null);
29
+ }
30
+ }).catch(error => {
31
+ console.warn("Failed to initialize Rive view:", error);
32
+ setRiveViewRef(null);
33
+ }).finally(() => {
34
+ if (timeoutRef.current) {
35
+ clearTimeout(timeoutRef.current);
36
+ timeoutRef.current = null;
37
+ }
38
+ });
39
+ }
40
+ };
41
+ $[0] = t0;
42
+ } else {
43
+ t0 = $[0];
44
+ }
45
+ const setRef = t0;
46
+ let t1;
47
+ if ($[1] === Symbol.for("react.memo_cache_sentinel")) {
48
+ t1 = {
47
49
  f: setRef
48
- }
49
- };
50
+ };
51
+ $[1] = t1;
52
+ } else {
53
+ t1 = $[1];
54
+ }
55
+ let t2;
56
+ if ($[2] !== riveViewRef) {
57
+ t2 = {
58
+ riveRef,
59
+ riveViewRef,
60
+ setHybridRef: t1
61
+ };
62
+ $[2] = riveViewRef;
63
+ $[3] = t2;
64
+ } else {
65
+ t2 = $[3];
66
+ }
67
+ return t2;
50
68
  }
51
69
  //# sourceMappingURL=useRive.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["useRef","useCallback","useState","useRive","riveRef","riveViewRef","setRiveViewRef","timeoutRef","setRef","node","current","clearTimeout","timeout","Promise","_","reject","setTimeout","Error","race","awaitViewReady","then","result","console","warn","catch","error","finally","setHybridRef","f"],"sourceRoot":"../../../src","sources":["hooks/useRive.ts"],"mappings":";;AAAA,SAASA,MAAM,EAAEC,WAAW,EAAEC,QAAQ,QAAQ,OAAO;AAGrD,OAAO,SAASC,OAAOA,CAAA,EAAG;EACxB,MAAMC,OAAO,GAAGJ,MAAM,CAAc,IAAI,CAAC;EACzC,MAAM,CAACK,WAAW,EAAEC,cAAc,CAAC,GAAGJ,QAAQ,CAAqB,IAAI,CAAC;EACxE,MAAMK,UAAU,GAAGP,MAAM,CAAuC,IAAI,CAAC;EAErE,MAAMQ,MAAM,GAAGP,WAAW,CAAEQ,IAAwB,IAAK;IACvD,IAAIL,OAAO,CAACM,OAAO,KAAKD,IAAI,EAAE;MAC5BL,OAAO,CAACM,OAAO,GAAGD,IAAI;;MAEtB;MACA,IAAIF,UAAU,CAACG,OAAO,EAAE;QACtBC,YAAY,CAACJ,UAAU,CAACG,OAAO,CAAC;MAClC;MAEA,MAAME,OAAO,GAAG,IAAIC,OAAO,CAAC,CAACC,CAAC,EAAEC,MAAM,KAAK;QACzCR,UAAU,CAACG,OAAO,GAAGM,UAAU,CAAC,MAAM;UACpCD,MAAM,CAAC,IAAIE,KAAK,CAAC,yBAAyB,CAAC,CAAC;QAC9C,CAAC,EAAE,IAAI,CAAC;MACV,CAAC,CAAC;;MAEF;MACA;MACAJ,OAAO,CAACK,IAAI,CAAC,CAACT,IAAI,EAAEU,cAAc,CAAC,CAAC,EAAEP,OAAO,CAAC,CAAC,CAC5CQ,IAAI,CAAEC,MAAM,IAAK;QAChB,IAAIA,MAAM,KAAK,IAAI,EAAE;UACnBf,cAAc,CAACG,IAAI,CAAC;QACtB,CAAC,MAAM;UACLa,OAAO,CAACC,IAAI,CAAC,sCAAsC,CAAC;UACpDjB,cAAc,CAAC,IAAI,CAAC;QACtB;MACF,CAAC,CAAC,CACDkB,KAAK,CAAEC,KAAK,IAAK;QAChBH,OAAO,CAACC,IAAI,CAAC,iCAAiC,EAAEE,KAAK,CAAC;QACtDnB,cAAc,CAAC,IAAI,CAAC;MACtB,CAAC,CAAC,CACDoB,OAAO,CAAC,MAAM;QACb;QACA,IAAInB,UAAU,CAACG,OAAO,EAAE;UACtBC,YAAY,CAACJ,UAAU,CAACG,OAAO,CAAC;UAChCH,UAAU,CAACG,OAAO,GAAG,IAAI;QAC3B;MACF,CAAC,CAAC;IACN;EACF,CAAC,EAAE,EAAE,CAAC;EAEN,OAAO;IACLN,OAAO;IACPC,WAAW;IACXsB,YAAY,EAAE;MACZC,CAAC,EAAEpB;IACL;EACF,CAAC;AACH","ignoreList":[]}
1
+ {"version":3,"names":["useRef","useCallback","useState","useRive","$","_c","riveRef","riveViewRef","setRiveViewRef","timeoutRef","t0","Symbol","for","node","current","clearTimeout","timeout","Promise","_","reject","setTimeout","Error","race","awaitViewReady","then","result","console","warn","catch","error","finally","setRef","t1","f","t2","setHybridRef"],"sourceRoot":"../../../src","sources":["hooks/useRive.ts"],"mappings":";;;AAAA,SAASA,MAAM,EAAEC,WAAW,EAAEC,QAAQ,QAAQ,OAAO;AAGrD,OAAO,SAAAC,QAAA;EAAA,MAAAC,CAAA,GAAAC,EAAA;EACL,MAAAC,OAAA,GAAgBN,MAAM,CAAc,IAAI,CAAC;EACzC,OAAAO,WAAA,EAAAC,cAAA,IAAsCN,QAAQ,CAAqB,IAAI,CAAC;EACxE,MAAAO,UAAA,GAAmBT,MAAM,CAAuC,IAAI,CAAC;EAAC,IAAAU,EAAA;EAAA,IAAAN,CAAA,QAAAO,MAAA,CAAAC,GAAA;IAE3CF,EAAA,GAAAG,IAAA;MACzB,IAAIP,OAAO,CAAAQ,OAAQ,KAAKD,IAAI;QAC1BP,OAAO,CAAAQ,OAAA,GAAWD,IAAH;QAGf,IAAIJ,UAAU,CAAAK,OAAQ;UACpBC,YAAY,CAACN,UAAU,CAAAK,OAAQ,CAAC;QAAA;QAGlC,MAAAE,OAAA,GAAgB,IAAIC,OAAO,CAAC,CAAAC,CAAA,EAAAC,MAAA;UAC1BV,UAAU,CAAAK,OAAA,GAAWM,UAAU,CAAC;YAC9BD,MAAM,CAAC,IAAIE,KAAK,CAAC,yBAAyB,CAAC,CAAC;UAAA,CAC7C,EAAE,IAAI,CAFW;QAAA,CAGnB,CAAC;QAIFJ,OAAO,CAAAK,IAAK,CAAC,CAACT,IAAI,EAAAU,cAAkB,CAAD,CAAC,EAAEP,OAAO,CAAC,CAAC,CAAAQ,IACxC,CAACC,MAAA;UACJ,IAAIA,MAAM,KAAK,IAAI;YACjBjB,cAAc,CAACK,IAAI,CAAC;UAAA;YAEpBa,OAAO,CAAAC,IAAK,CAAC,sCAAsC,CAAC;YACpDnB,cAAc,CAAC,IAAI,CAAC;UAAA;QACrB,CACF,CAAC,CAAAoB,KACI,CAACC,KAAA;UACLH,OAAO,CAAAC,IAAK,CAAC,iCAAiC,EAAEE,KAAK,CAAC;UACtDrB,cAAc,CAAC,IAAI,CAAC;QAAA,CACrB,CAAC,CAAAsB,OACM,CAAC;UAEP,IAAIrB,UAAU,CAAAK,OAAQ;YACpBC,YAAY,CAACN,UAAU,CAAAK,OAAQ,CAAC;YAChCL,UAAU,CAAAK,OAAA,GAAW,IAAH;UAAA;QACnB,CACF,CAAC;MAAA;IACL,CACF;IAAAV,CAAA,MAAAM,EAAA;EAAA;IAAAA,EAAA,GAAAN,CAAA;EAAA;EAtCD,MAAA2B,MAAA,GAAerB,EAsCT;EAAC,IAAAsB,EAAA;EAAA,IAAA5B,CAAA,QAAAO,MAAA,CAAAC,GAAA;IAKSoB,EAAA;MAAAC,CAAA,EACTF;IACL,CAAC;IAAA3B,CAAA,MAAA4B,EAAA;EAAA;IAAAA,EAAA,GAAA5B,CAAA;EAAA;EAAA,IAAA8B,EAAA;EAAA,IAAA9B,CAAA,QAAAG,WAAA;IALI2B,EAAA;MAAA5B,OAAA;MAAAC,WAAA;MAAA4B,YAAA,EAGSH;IAGhB,CAAC;IAAA5B,CAAA,MAAAG,WAAA;IAAAH,CAAA,MAAA8B,EAAA;EAAA;IAAAA,EAAA,GAAA9B,CAAA;EAAA;EAAA,OANM8B,EAMN;AAAA","ignoreList":[]}
@@ -1,5 +1,6 @@
1
1
  "use strict";
2
2
 
3
+ import { c as _c } from "react/compiler-runtime";
3
4
  import { useRiveProperty } from "./useRiveProperty.js";
4
5
  const BOOLEAN_PROPERTY_OPTIONS = {
5
6
  getProperty: (vmi, p) => vmi.booleanProperty(p)
@@ -13,11 +14,22 @@ const BOOLEAN_PROPERTY_OPTIONS = {
13
14
  * @returns An object with the boolean value, a setter function, and an error if the property is not found
14
15
  */
15
16
  export function useRiveBoolean(path, viewModelInstance) {
17
+ const $ = _c(4);
16
18
  const [value, setValue, error] = useRiveProperty(viewModelInstance, path, BOOLEAN_PROPERTY_OPTIONS);
17
- return {
18
- value,
19
- setValue,
20
- error
21
- };
19
+ let t0;
20
+ if ($[0] !== error || $[1] !== setValue || $[2] !== value) {
21
+ t0 = {
22
+ value,
23
+ setValue,
24
+ error
25
+ };
26
+ $[0] = error;
27
+ $[1] = setValue;
28
+ $[2] = value;
29
+ $[3] = t0;
30
+ } else {
31
+ t0 = $[3];
32
+ }
33
+ return t0;
22
34
  }
23
35
  //# sourceMappingURL=useRiveBoolean.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["useRiveProperty","BOOLEAN_PROPERTY_OPTIONS","getProperty","vmi","p","booleanProperty","useRiveBoolean","path","viewModelInstance","value","setValue","error"],"sourceRoot":"../../../src","sources":["hooks/useRiveBoolean.ts"],"mappings":";;AAKA,SAASA,eAAe,QAAQ,sBAAmB;AAEnD,MAAMC,wBAAwB,GAAG;EAC/BC,WAAW,EAAEA,CAACC,GAAsB,EAAEC,CAAS,KAAKD,GAAG,CAACE,eAAe,CAACD,CAAC;AAC3E,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,SAASE,cAAcA,CAC5BC,IAAY,EACZC,iBAA4C,EACZ;EAChC,MAAM,CAACC,KAAK,EAAEC,QAAQ,EAAEC,KAAK,CAAC,GAAGX,eAAe,CAG9CQ,iBAAiB,EAAED,IAAI,EAAEN,wBAAwB,CAAC;EACpD,OAAO;IAAEQ,KAAK;IAAEC,QAAQ;IAAEC;EAAM,CAAC;AACnC","ignoreList":[]}
1
+ {"version":3,"names":["useRiveProperty","BOOLEAN_PROPERTY_OPTIONS","getProperty","vmi","p","booleanProperty","useRiveBoolean","path","viewModelInstance","$","_c","value","setValue","error","t0"],"sourceRoot":"../../../src","sources":["hooks/useRiveBoolean.ts"],"mappings":";;;AAKA,SAASA,eAAe,QAAQ,sBAAmB;AAEnD,MAAMC,wBAAwB,GAAG;EAC/BC,WAAW,EAAEA,CAACC,GAAsB,EAAEC,CAAS,KAAKD,GAAG,CAACE,eAAe,CAACD,CAAC;AAC3E,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,SAAAE,eAAAC,IAAA,EAAAC,iBAAA;EAAA,MAAAC,CAAA,GAAAC,EAAA;EAIL,OAAAC,KAAA,EAAAC,QAAA,EAAAC,KAAA,IAAiCb,eAAe,CAG9CQ,iBAAiB,EAAED,IAAI,EAAEN,wBAAwB,CAAC;EAAC,IAAAa,EAAA;EAAA,IAAAL,CAAA,QAAAI,KAAA,IAAAJ,CAAA,QAAAG,QAAA,IAAAH,CAAA,QAAAE,KAAA;IAC9CG,EAAA;MAAAH,KAAA;MAAAC,QAAA;MAAAC;IAAyB,CAAC;IAAAJ,CAAA,MAAAI,KAAA;IAAAJ,CAAA,MAAAG,QAAA;IAAAH,CAAA,MAAAE,KAAA;IAAAF,CAAA,MAAAK,EAAA;EAAA;IAAAA,EAAA,GAAAL,CAAA;EAAA;EAAA,OAA1BK,EAA0B;AAAA","ignoreList":[]}
@@ -1,5 +1,6 @@
1
1
  "use strict";
2
2
 
3
+ import { c as _c } from "react/compiler-runtime";
3
4
  import { useCallback } from 'react';
4
5
  import { useRiveProperty } from "./useRiveProperty.js";
5
6
  import { RiveColor } from "../core/RiveColor.js";
@@ -14,16 +15,43 @@ const COLOR_PROPERTY_OPTIONS = {
14
15
  * @returns An object with the color value as RGBA, a setter function that accepts either RGBA or hex string, and an error if the property is not found
15
16
  */
16
17
  export function useRiveColor(path, viewModelInstance) {
18
+ const $ = _c(8);
17
19
  const [rawValue, setRawValue, error] = useRiveProperty(viewModelInstance, path, COLOR_PROPERTY_OPTIONS);
18
- const value = rawValue !== undefined ? RiveColor.fromInt(rawValue) : undefined;
19
- const setValue = useCallback(newValue => {
20
- const color = typeof newValue === 'string' ? RiveColor.fromHexString(newValue) : newValue;
21
- setRawValue(color.toInt());
22
- }, [setRawValue]);
23
- return {
24
- value,
25
- setValue,
26
- error
27
- };
20
+ let t0;
21
+ if ($[0] !== rawValue) {
22
+ t0 = rawValue !== undefined ? RiveColor.fromInt(rawValue) : undefined;
23
+ $[0] = rawValue;
24
+ $[1] = t0;
25
+ } else {
26
+ t0 = $[1];
27
+ }
28
+ const value = t0;
29
+ let t1;
30
+ if ($[2] !== setRawValue) {
31
+ t1 = newValue => {
32
+ const color = typeof newValue === "string" ? RiveColor.fromHexString(newValue) : newValue;
33
+ setRawValue(color.toInt());
34
+ };
35
+ $[2] = setRawValue;
36
+ $[3] = t1;
37
+ } else {
38
+ t1 = $[3];
39
+ }
40
+ const setValue = t1;
41
+ let t2;
42
+ if ($[4] !== error || $[5] !== setValue || $[6] !== value) {
43
+ t2 = {
44
+ value,
45
+ setValue,
46
+ error
47
+ };
48
+ $[4] = error;
49
+ $[5] = setValue;
50
+ $[6] = value;
51
+ $[7] = t2;
52
+ } else {
53
+ t2 = $[7];
54
+ }
55
+ return t2;
28
56
  }
29
57
  //# sourceMappingURL=useRiveColor.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["useCallback","useRiveProperty","RiveColor","COLOR_PROPERTY_OPTIONS","getProperty","vmi","p","colorProperty","useRiveColor","path","viewModelInstance","rawValue","setRawValue","error","value","undefined","fromInt","setValue","newValue","color","fromHexString","toInt"],"sourceRoot":"../../../src","sources":["hooks/useRiveColor.ts"],"mappings":";;AAAA,SAASA,WAAW,QAAQ,OAAO;AAKnC,SAASC,eAAe,QAAQ,sBAAmB;AACnD,SAASC,SAAS,QAAQ,sBAAmB;AAE7C,MAAMC,sBAAsB,GAAG;EAC7BC,WAAW,EAAEA,CAACC,GAAsB,EAAEC,CAAS,KAAKD,GAAG,CAACE,aAAa,CAACD,CAAC;AACzE,CAAC;AAQD;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,SAASE,YAAYA,CAC1BC,IAAY,EACZC,iBAA4C,EACxB;EACpB,MAAM,CAACC,QAAQ,EAAEC,WAAW,EAAEC,KAAK,CAAC,GAAGZ,eAAe,CAGpDS,iBAAiB,EAAED,IAAI,EAAEN,sBAAsB,CAAC;EAElD,MAAMW,KAAK,GACTH,QAAQ,KAAKI,SAAS,GAAGb,SAAS,CAACc,OAAO,CAACL,QAAQ,CAAC,GAAGI,SAAS;EAElE,MAAME,QAAQ,GAAGjB,WAAW,CACzBkB,QAA4B,IAAK;IAChC,MAAMC,KAAK,GACT,OAAOD,QAAQ,KAAK,QAAQ,GACxBhB,SAAS,CAACkB,aAAa,CAACF,QAAQ,CAAC,GACjCA,QAAQ;IACdN,WAAW,CAACO,KAAK,CAACE,KAAK,CAAC,CAAC,CAAC;EAC5B,CAAC,EACD,CAACT,WAAW,CACd,CAAC;EAED,OAAO;IAAEE,KAAK;IAAEG,QAAQ;IAAEJ;EAAM,CAAC;AACnC","ignoreList":[]}
1
+ {"version":3,"names":["useCallback","useRiveProperty","RiveColor","COLOR_PROPERTY_OPTIONS","getProperty","vmi","p","colorProperty","useRiveColor","path","viewModelInstance","$","_c","rawValue","setRawValue","error","t0","undefined","fromInt","value","t1","newValue","color","fromHexString","toInt","setValue","t2"],"sourceRoot":"../../../src","sources":["hooks/useRiveColor.ts"],"mappings":";;;AAAA,SAASA,WAAW,QAAQ,OAAO;AAKnC,SAASC,eAAe,QAAQ,sBAAmB;AACnD,SAASC,SAAS,QAAQ,sBAAmB;AAE7C,MAAMC,sBAAsB,GAAG;EAC7BC,WAAW,EAAEA,CAACC,GAAsB,EAAEC,CAAS,KAAKD,GAAG,CAACE,aAAa,CAACD,CAAC;AACzE,CAAC;AAQD;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,SAAAE,aAAAC,IAAA,EAAAC,iBAAA;EAAA,MAAAC,CAAA,GAAAC,EAAA;EAIL,OAAAC,QAAA,EAAAC,WAAA,EAAAC,KAAA,IAAuCd,eAAe,CAGpDS,iBAAiB,EAAED,IAAI,EAAEN,sBAAsB,CAAC;EAAC,IAAAa,EAAA;EAAA,IAAAL,CAAA,QAAAE,QAAA;IAGjDG,EAAA,GAAAH,QAAQ,KAAKI,SAAmD,GAAvCf,SAAS,CAAAgB,OAAQ,CAACL,QAAoB,CAAC,GAAhEI,SAAgE;IAAAN,CAAA,MAAAE,QAAA;IAAAF,CAAA,MAAAK,EAAA;EAAA;IAAAA,EAAA,GAAAL,CAAA;EAAA;EADlE,MAAAQ,KAAA,GACEH,EAAgE;EAAC,IAAAI,EAAA;EAAA,IAAAT,CAAA,QAAAG,WAAA;IAGjEM,EAAA,GAAAC,QAAA;MACE,MAAAC,KAAA,GACE,OAAOD,QAAQ,KAAK,QAER,GADRnB,SAAS,CAAAqB,aAAc,CAACF,QACjB,CAAC,GAFZA,QAEY;MACdP,WAAW,CAACQ,KAAK,CAAAE,KAAM,CAAC,CAAC,CAAC;IAAA,CAC3B;IAAAb,CAAA,MAAAG,WAAA;IAAAH,CAAA,MAAAS,EAAA;EAAA;IAAAA,EAAA,GAAAT,CAAA;EAAA;EAPH,MAAAc,QAAA,GAAiBL,EAShB;EAAC,IAAAM,EAAA;EAAA,IAAAf,CAAA,QAAAI,KAAA,IAAAJ,CAAA,QAAAc,QAAA,IAAAd,CAAA,QAAAQ,KAAA;IAEKO,EAAA;MAAAP,KAAA;MAAAM,QAAA;MAAAV;IAAyB,CAAC;IAAAJ,CAAA,MAAAI,KAAA;IAAAJ,CAAA,MAAAc,QAAA;IAAAd,CAAA,MAAAQ,KAAA;IAAAR,CAAA,MAAAe,EAAA;EAAA;IAAAA,EAAA,GAAAf,CAAA;EAAA;EAAA,OAA1Be,EAA0B;AAAA","ignoreList":[]}
@@ -1,7 +1,10 @@
1
1
  "use strict";
2
2
 
3
- import { useCallback } from 'react';
3
+ import { c as _c } from "react/compiler-runtime";
4
4
  import { useRiveProperty } from "./useRiveProperty.js";
5
+ const ENUM_PROPERTY_OPTIONS = {
6
+ getProperty: (vmi, p) => vmi.enumProperty(p)
7
+ };
5
8
 
6
9
  /**
7
10
  * Hook for interacting with enum ViewModel instance properties.
@@ -11,13 +14,22 @@ import { useRiveProperty } from "./useRiveProperty.js";
11
14
  * @returns An object with the enum value, a setter function, and an error if the property is not found
12
15
  */
13
16
  export function useRiveEnum(path, viewModelInstance) {
14
- const [value, setValue, error] = useRiveProperty(viewModelInstance, path, {
15
- getProperty: useCallback((vmi, p) => vmi.enumProperty(p), [])
16
- });
17
- return {
18
- value,
19
- setValue,
20
- error
21
- };
17
+ const $ = _c(4);
18
+ const [value, setValue, error] = useRiveProperty(viewModelInstance, path, ENUM_PROPERTY_OPTIONS);
19
+ let t0;
20
+ if ($[0] !== error || $[1] !== setValue || $[2] !== value) {
21
+ t0 = {
22
+ value,
23
+ setValue,
24
+ error
25
+ };
26
+ $[0] = error;
27
+ $[1] = setValue;
28
+ $[2] = value;
29
+ $[3] = t0;
30
+ } else {
31
+ t0 = $[3];
32
+ }
33
+ return t0;
22
34
  }
23
35
  //# sourceMappingURL=useRiveEnum.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["useCallback","useRiveProperty","useRiveEnum","path","viewModelInstance","value","setValue","error","getProperty","vmi","p","enumProperty"],"sourceRoot":"../../../src","sources":["hooks/useRiveEnum.ts"],"mappings":";;AAAA,SAASA,WAAW,QAAQ,OAAO;AAMnC,SAASC,eAAe,QAAQ,sBAAmB;;AAEnD;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,SAASC,WAAWA,CACzBC,IAAY,EACZC,iBAA4C,EACb;EAC/B,MAAM,CAACC,KAAK,EAAEC,QAAQ,EAAEC,KAAK,CAAC,GAAGN,eAAe,CAG9CG,iBAAiB,EAAED,IAAI,EAAE;IACzBK,WAAW,EAAER,WAAW,CAAC,CAACS,GAAG,EAAEC,CAAC,KAAKD,GAAG,CAACE,YAAY,CAACD,CAAC,CAAC,EAAE,EAAE;EAC9D,CAAC,CAAC;EACF,OAAO;IAAEL,KAAK;IAAEC,QAAQ;IAAEC;EAAM,CAAC;AACnC","ignoreList":[]}
1
+ {"version":3,"names":["useRiveProperty","ENUM_PROPERTY_OPTIONS","getProperty","vmi","p","enumProperty","useRiveEnum","path","viewModelInstance","$","_c","value","setValue","error","t0"],"sourceRoot":"../../../src","sources":["hooks/useRiveEnum.ts"],"mappings":";;;AAKA,SAASA,eAAe,QAAQ,sBAAmB;AAEnD,MAAMC,qBAAqB,GAAG;EAC5BC,WAAW,EAAEA,CAACC,GAAsB,EAAEC,CAAS,KAAKD,GAAG,CAACE,YAAY,CAACD,CAAC;AACxE,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,SAAAE,YAAAC,IAAA,EAAAC,iBAAA;EAAA,MAAAC,CAAA,GAAAC,EAAA;EAIL,OAAAC,KAAA,EAAAC,QAAA,EAAAC,KAAA,IAAiCb,eAAe,CAG9CQ,iBAAiB,EAAED,IAAI,EAAEN,qBAAqB,CAAC;EAAC,IAAAa,EAAA;EAAA,IAAAL,CAAA,QAAAI,KAAA,IAAAJ,CAAA,QAAAG,QAAA,IAAAH,CAAA,QAAAE,KAAA;IAC3CG,EAAA;MAAAH,KAAA;MAAAC,QAAA;MAAAC;IAAyB,CAAC;IAAAJ,CAAA,MAAAI,KAAA;IAAAJ,CAAA,MAAAG,QAAA;IAAAH,CAAA,MAAAE,KAAA;IAAAF,CAAA,MAAAK,EAAA;EAAA;IAAAA,EAAA,GAAAL,CAAA;EAAA;EAAA,OAA1BK,EAA0B;AAAA","ignoreList":[]}