204 lines
6.1 KiB
JavaScript
204 lines
6.1 KiB
JavaScript
// Metro module 3962 (f3963).
|
|
import _slicedToArray from "./_slicedToArray";
|
|
import { useState, useMemo, useRef, useEffect } from "react";
|
|
import { Image } from "react-native";
|
|
import { RiveFileFactory } from "./Module3945";
|
|
import { callDispose } from "./Module3942";
|
|
let env2257 = {};
|
|
export function useRiveFile(a0, r7 = {}) {
|
|
let env13758 = {
|
|
$parent: env2257
|
|
};
|
|
env13758[0] = r7;
|
|
env13758[1] = void 0;
|
|
env13758[2] = void 0;
|
|
env13758[3] = void 0;
|
|
env13758[4] = void 0;
|
|
env13758[5] = void 0;
|
|
env13758[6] = void 0;
|
|
const r14 = _slicedToArray((0, useState)({
|
|
riveFile: void 0,
|
|
isLoading: true,
|
|
error: null
|
|
}), 2);
|
|
const r15 = r14[0];
|
|
env13758[1] = r14[1];
|
|
const r20 = (0, useMemo)(() => {
|
|
const referencedAssets = env13758[0].referencedAssets;
|
|
const r1 = {};
|
|
let c24899_0 = r1;
|
|
let r8 = void 0;
|
|
if (referencedAssets !== void 0) {
|
|
Object.entries(referencedAssets).forEach((item) => {
|
|
let r42;
|
|
const [r27, image] = item;
|
|
const r33 = image !== null && typeof image === "object" && "__type" in image && image.__type === "HybridObject<RiveImage>";
|
|
L28: {
|
|
if (!r33) {
|
|
const source = image.source;
|
|
if (typeof source === "number") {
|
|
const r47 = Image.resolveAssetSource(source);
|
|
if (r47 && r47.uri) {
|
|
r42 = {
|
|
sourceAssetId: r47.uri
|
|
};
|
|
break L28;
|
|
}
|
|
throw new Error("Invalid asset source provided.");
|
|
}
|
|
const uri = source.uri;
|
|
if (typeof source === "object" && uri) {
|
|
r42 = {
|
|
sourceUrl: uri
|
|
};
|
|
break L28;
|
|
}
|
|
const { fileName, path } = source;
|
|
if (typeof source === "object" && fileName) {
|
|
const r41 = {
|
|
sourceAsset: fileName
|
|
};
|
|
r42 = r41;
|
|
if (!path) {
|
|
break L28;
|
|
}
|
|
r41.path = path;
|
|
r42 = r41;
|
|
break L28;
|
|
}
|
|
throw new Error("Invalid source provided.");
|
|
}
|
|
r42 = {
|
|
image
|
|
};
|
|
}
|
|
c24899_0[r27] = r42;
|
|
});
|
|
r8 = r1;
|
|
}
|
|
return r8;
|
|
}, [r7.referencedAssets]);
|
|
env13758[2] = r20;
|
|
env13758[3] = (0, useRef)(r20);
|
|
const r24 = a0 != null && typeof a0 === "object" && "uri" in a0 ? "uri" : "primitive";
|
|
env13758[4] = r24;
|
|
const r27 = a0 != null && typeof a0 === "object" && "uri" in a0 ? a0.uri : a0;
|
|
env13758[5] = r27;
|
|
useEffect(() => {
|
|
let env24900 = {
|
|
$parent: env13758
|
|
};
|
|
env24900[0] = null;
|
|
let c24901_0 = async () => {
|
|
let c31333_1, c31333_2;
|
|
let c31333_3 = 0;
|
|
let c31922_0;
|
|
const r11 = void 0;
|
|
L34: {
|
|
L25: {
|
|
L20: {
|
|
try {
|
|
c31333_1 = r11;
|
|
c31333_3 = 1;
|
|
const r25 = env13758[4] === "uri" ? {
|
|
uri: env13758[5]
|
|
} : env13758[5];
|
|
if (r25 == null) {
|
|
(0, env13758[1])({
|
|
riveFile: null,
|
|
isLoading: false,
|
|
error: new Error("No Rive file input provided.")
|
|
});
|
|
c31333_3 = 0;
|
|
break L34;
|
|
}
|
|
L23: {
|
|
if (typeof r25 === "string") {
|
|
c31333_1.$parent[0] = !r25.startsWith("http://") && !r25.startsWith("https://") ? await RiveFileFactory.fromResource(r25, env13758[3].current) : await RiveFileFactory.fromURL(r25, env13758[3].current);
|
|
} else {
|
|
if (typeof r25 !== "number" && !("uri" in r25)) {
|
|
if (r25 instanceof ArrayBuffer) {
|
|
c31333_1.$parent[0] = await RiveFileFactory.fromBytes(r25, env13758[3].current);
|
|
break L23;
|
|
}
|
|
(0, env13758[1])({
|
|
riveFile: c31333_1.$parent[0],
|
|
isLoading: false,
|
|
error: null
|
|
});
|
|
c31333_3 = 0;
|
|
break L20;
|
|
}
|
|
c31333_1.$parent[0] = await RiveFileFactory.fromSource(r25, env13758[3].current);
|
|
}
|
|
}
|
|
(0, env13758[1])({
|
|
riveFile: c31333_1.$parent[0],
|
|
isLoading: false,
|
|
error: null
|
|
});
|
|
c31333_3 = 0;
|
|
break L25;
|
|
} catch ($e) {
|
|
const r41 = $e;
|
|
let r7 = r41;
|
|
c31333_2 = r41;
|
|
if (c31333_3 !== 0) {
|
|
while (true) {
|
|
try {
|
|
const r229 = c31333_2;
|
|
c31333_3 = 0;
|
|
c31922_0 = r229;
|
|
console.error(c31922_0);
|
|
env13758[1]({
|
|
riveFile: null,
|
|
isLoading: false,
|
|
error: c31922_0 instanceof Error ? c31922_0 : new Error("Failed to load Rive file")
|
|
});
|
|
break L25;
|
|
} catch (r225) {
|
|
r7 = r225;
|
|
c31333_2 = r225;
|
|
if (c31333_3 === 0) {
|
|
break;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
throw r7;
|
|
}
|
|
}
|
|
return void 0;
|
|
}
|
|
return void 0;
|
|
}
|
|
};
|
|
(function loadRiveFile() {
|
|
return c24901_0.apply(this, arguments);
|
|
})();
|
|
return () => {
|
|
if (env24900[0]) {
|
|
callDispose(env24900[0]);
|
|
}
|
|
};
|
|
}, [r24, r27]);
|
|
const riveFile = r15.riveFile;
|
|
env13758[6] = riveFile;
|
|
useEffect(() => {
|
|
const r2 = env13758[3];
|
|
const current = r2.current;
|
|
const data = env13758[2];
|
|
if (current !== data && env13758[6] && data) {
|
|
env13758[6].updateReferencedAssets({
|
|
data
|
|
});
|
|
r2.current = data;
|
|
}
|
|
}, [r20, riveFile]);
|
|
return {
|
|
riveFile: r15.riveFile,
|
|
isLoading: r15.isLoading,
|
|
error: r15.error
|
|
};
|
|
}
|