// Metro module 1648 (f1649). import * as _Module1617 from "./Module1617"; function $mk102417() { return (a0) => typeof a0 === "number" ? !isNaN(a0) : typeof a0 === "number"; } function $mk102418() { return (a0) => Array.isArray(a0) && a0.length === 4 && a0.every((item) => typeof item === "number" ? !isNaN(item) : typeof item === "number"); } function $mk102422($env) { return (a0, a1, a2) => { const r0 = $env; return a0 + r0[0][a2] * r0[1][a2]; }; } function $mk102424($env) { return (a0, a1) => { const r0 = $env; return r0[0][a1] - r0[1][a1]; }; } function $mk102425($env) { return (a0) => a0 * $env[0]; } let isAffineMatrixFlat, isAffineMatrix, flatten, unflatten, maybeFlattenMatrix, norm3d, transposeMatrix, assertVectorsHaveEqualLengths, innerProduct, projection, subtractVectors, scaleVector, gramSchmidtAlgorithm, decomposeMatrix; const isAffineMatrixFlat2 = function isAffineMatrixFlat(a0) { return Array.isArray(a0) && a0.length === 16 && a0.every($mk102417()); }; isAffineMatrixFlat2.__closure = {}; isAffineMatrixFlat2.__workletHash = 7766400476414; isAffineMatrixFlat2.__initData = { code: "function isAffineMatrixFlat_Pnpm_matrixUtilsTsx1(x){return Array.isArray(x)&&x.length===16&&x.every(function(element){return typeof element==='number'&&!isNaN(element);});}" }; isAffineMatrixFlat = isAffineMatrixFlat2; const isAffineMatrix2 = function isAffineMatrix(a0) { return Array.isArray(a0) && a0.length === 4 && a0.every($mk102418()); }; isAffineMatrix2.__closure = {}; isAffineMatrix2.__workletHash = 3452211777657; isAffineMatrix2.__initData = { code: "function isAffineMatrix_Pnpm_matrixUtilsTsx2(x){return Array.isArray(x)&&x.length===4&&x.every(function(row){return Array.isArray(row)&&row.length===4&&row.every(function(element){return typeof element==='number'&&!isNaN(element);});});}" }; isAffineMatrix = isAffineMatrix2; const flatten2 = function flatten(a0) { return a0.flat(); }; flatten2.__closure = {}; flatten2.__workletHash = 9900628528512; flatten2.__initData = { code: "function flatten_Pnpm_matrixUtilsTsx3(matrix){return matrix.flat();}" }; flatten = flatten2; const unflatten2 = function unflatten(a0) { return [[a0[0], a0[1], a0[2], a0[3]], [a0[4], a0[5], a0[6], a0[7]], [a0[8], a0[9], a0[10], a0[11]], [a0[12], a0[13], a0[14], a0[15]]]; }; unflatten2.__closure = {}; unflatten2.__workletHash = 17503333305803; unflatten2.__initData = { code: "function unflatten_Pnpm_matrixUtilsTsx4(m){return[[m[0],m[1],m[2],m[3]],[m[4],m[5],m[6],m[7]],[m[8],m[9],m[10],m[11]],[m[12],m[13],m[14],m[15]]];}" }; unflatten = unflatten2; const maybeFlattenMatrix2 = function maybeFlattenMatrix(a0) { return Array.isArray(a0) && a0.length === 4 && a0.every($mk102418()) ? a0.flat() : a0; }; maybeFlattenMatrix2.__closure = { isAffineMatrix, flatten }; maybeFlattenMatrix2.__workletHash = 13544286880330; maybeFlattenMatrix2.__initData = { code: "function maybeFlattenMatrix_Pnpm_matrixUtilsTsx5(matrix){const{isAffineMatrix,flatten}=this.__closure;return isAffineMatrix(matrix)?flatten(matrix):matrix;}" }; maybeFlattenMatrix = maybeFlattenMatrix2; export function multiplyMatrices(a0, a1) { return [[a0[0][0] * a1[0][0] + a0[0][1] * a1[1][0] + a0[0][2] * a1[2][0] + a0[0][3] * a1[3][0], a0[0][0] * a1[0][1] + a0[0][1] * a1[1][1] + a0[0][2] * a1[2][1] + a0[0][3] * a1[3][1], a0[0][0] * a1[0][2] + a0[0][1] * a1[1][2] + a0[0][2] * a1[2][2] + a0[0][3] * a1[3][2], a0[0][0] * a1[0][3] + a0[0][1] * a1[1][3] + a0[0][2] * a1[2][3] + a0[0][3] * a1[3][3]], [a0[1][0] * a1[0][0] + a0[1][1] * a1[1][0] + a0[1][2] * a1[2][0] + a0[1][3] * a1[3][0], a0[1][0] * a1[0][1] + a0[1][1] * a1[1][1] + a0[1][2] * a1[2][1] + a0[1][3] * a1[3][1], a0[1][0] * a1[0][2] + a0[1][1] * a1[1][2] + a0[1][2] * a1[2][2] + a0[1][3] * a1[3][2], a0[1][0] * a1[0][3] + a0[1][1] * a1[1][3] + a0[1][2] * a1[2][3] + a0[1][3] * a1[3][3]], [a0[2][0] * a1[0][0] + a0[2][1] * a1[1][0] + a0[2][2] * a1[2][0] + a0[2][3] * a1[3][0], a0[2][0] * a1[0][1] + a0[2][1] * a1[1][1] + a0[2][2] * a1[2][1] + a0[2][3] * a1[3][1], a0[2][0] * a1[0][2] + a0[2][1] * a1[1][2] + a0[2][2] * a1[2][2] + a0[2][3] * a1[3][2], a0[2][0] * a1[0][3] + a0[2][1] * a1[1][3] + a0[2][2] * a1[2][3] + a0[2][3] * a1[3][3]], [a0[3][0] * a1[0][0] + a0[3][1] * a1[1][0] + a0[3][2] * a1[2][0] + a0[3][3] * a1[3][0], a0[3][0] * a1[0][1] + a0[3][1] * a1[1][1] + a0[3][2] * a1[2][1] + a0[3][3] * a1[3][1], a0[3][0] * a1[0][2] + a0[3][1] * a1[1][2] + a0[3][2] * a1[2][2] + a0[3][3] * a1[3][2], a0[3][0] * a1[0][3] + a0[3][1] * a1[1][3] + a0[3][2] * a1[2][3] + a0[3][3] * a1[3][3]]]; } multiplyMatrices.__closure = {}; multiplyMatrices.__workletHash = 4575994159882; multiplyMatrices.__initData = { code: "function multiplyMatrices_Pnpm_matrixUtilsTsx6(a,b){return[[a[0][0]*b[0][0]+a[0][1]*b[1][0]+a[0][2]*b[2][0]+a[0][3]*b[3][0],a[0][0]*b[0][1]+a[0][1]*b[1][1]+a[0][2]*b[2][1]+a[0][3]*b[3][1],a[0][0]*b[0][2]+a[0][1]*b[1][2]+a[0][2]*b[2][2]+a[0][3]*b[3][2],a[0][0]*b[0][3]+a[0][1]*b[1][3]+a[0][2]*b[2][3]+a[0][3]*b[3][3]],[a[1][0]*b[0][0]+a[1][1]*b[1][0]+a[1][2]*b[2][0]+a[1][3]*b[3][0],a[1][0]*b[0][1]+a[1][1]*b[1][1]+a[1][2]*b[2][1]+a[1][3]*b[3][1],a[1][0]*b[0][2]+a[1][1]*b[1][2]+a[1][2]*b[2][2]+a[1][3]*b[3][2],a[1][0]*b[0][3]+a[1][1]*b[1][3]+a[1][2]*b[2][3]+a[1][3]*b[3][3]],[a[2][0]*b[0][0]+a[2][1]*b[1][0]+a[2][2]*b[2][0]+a[2][3]*b[3][0],a[2][0]*b[0][1]+a[2][1]*b[1][1]+a[2][2]*b[2][1]+a[2][3]*b[3][1],a[2][0]*b[0][2]+a[2][1]*b[1][2]+a[2][2]*b[2][2]+a[2][3]*b[3][2],a[2][0]*b[0][3]+a[2][1]*b[1][3]+a[2][2]*b[2][3]+a[2][3]*b[3][3]],[a[3][0]*b[0][0]+a[3][1]*b[1][0]+a[3][2]*b[2][0]+a[3][3]*b[3][0],a[3][0]*b[0][1]+a[3][1]*b[1][1]+a[3][2]*b[2][1]+a[3][3]*b[3][1],a[3][0]*b[0][2]+a[3][1]*b[1][2]+a[3][2]*b[2][2]+a[3][3]*b[3][2],a[3][0]*b[0][3]+a[3][1]*b[1][3]+a[3][2]*b[2][3]+a[3][3]*b[3][3]]];}" }; export function subtractMatrices(a0, a1) { const r14 = Array.isArray(a0) && a0.length === 16 && a0.every($mk102417()); const r28 = Array.isArray(a0) && a0.length === 4 && a0.every($mk102418()) ? a0.flat() : a0; let c24499_0 = r28; let c24499_1 = Array.isArray(a1) && a1.length === 4 && a1.every($mk102418()) ? a1.flat() : a1; const r54 = r28.map((item, index) => c24499_0[index] - c24499_1[index]); return r14 ? r54 : [[r54[0], r54[1], r54[2], r54[3]], [r54[4], r54[5], r54[6], r54[7]], [r54[8], r54[9], r54[10], r54[11]], [r54[12], r54[13], r54[14], r54[15]]]; } subtractMatrices.__closure = { isAffineMatrixFlat, maybeFlattenMatrix, unflatten }; subtractMatrices.__workletHash = 12538691088788; subtractMatrices.__initData = { code: "function subtractMatrices_Pnpm_matrixUtilsTsx7(maybeFlatA,maybeFlatB){const{isAffineMatrixFlat,maybeFlattenMatrix,unflatten}=this.__closure;const isFlatOnStart=isAffineMatrixFlat(maybeFlatA);const a=maybeFlattenMatrix(maybeFlatA);const b=maybeFlattenMatrix(maybeFlatB);const c=a.map(function(_,i){return a[i]-b[i];});return isFlatOnStart?c:unflatten(c);}" }; export function addMatrices(a0, a1) { const r14 = Array.isArray(a0) && a0.length === 16 && a0.every($mk102417()); const r28 = Array.isArray(a0) && a0.length === 4 && a0.every($mk102418()) ? a0.flat() : a0; let c24500_0 = r28; let c24500_1 = Array.isArray(a1) && a1.length === 4 && a1.every($mk102418()) ? a1.flat() : a1; const r54 = r28.map((item, index) => c24500_0[index] + c24500_1[index]); return r14 ? r54 : [[r54[0], r54[1], r54[2], r54[3]], [r54[4], r54[5], r54[6], r54[7]], [r54[8], r54[9], r54[10], r54[11]], [r54[12], r54[13], r54[14], r54[15]]]; } addMatrices.__closure = { isAffineMatrixFlat, maybeFlattenMatrix, unflatten }; addMatrices.__workletHash = 17429737879880; addMatrices.__initData = { code: "function addMatrices_Pnpm_matrixUtilsTsx8(maybeFlatA,maybeFlatB){const{isAffineMatrixFlat,maybeFlattenMatrix,unflatten}=this.__closure;const isFlatOnStart=isAffineMatrixFlat(maybeFlatA);const a=maybeFlattenMatrix(maybeFlatA);const b=maybeFlattenMatrix(maybeFlatB);const c=a.map(function(_,i){return a[i]+b[i];});return isFlatOnStart?c:unflatten(c);}" }; export function scaleMatrix(a0, c24501_0) { const r13 = Array.isArray(a0) && a0.length === 16 && a0.every($mk102417()); const r37 = (Array.isArray(a0) && a0.length === 4 && a0.every($mk102418()) ? a0.flat() : a0).map((item) => item * c24501_0); return r13 ? r37 : [[r37[0], r37[1], r37[2], r37[3]], [r37[4], r37[5], r37[6], r37[7]], [r37[8], r37[9], r37[10], r37[11]], [r37[12], r37[13], r37[14], r37[15]]]; } scaleMatrix.__closure = { isAffineMatrixFlat, maybeFlattenMatrix, unflatten }; scaleMatrix.__workletHash = 11907224908685; scaleMatrix.__initData = { code: "function scaleMatrix_Pnpm_matrixUtilsTsx9(maybeFlatA,scalar){const{isAffineMatrixFlat,maybeFlattenMatrix,unflatten}=this.__closure;const isFlatOnStart=isAffineMatrixFlat(maybeFlatA);const a=maybeFlattenMatrix(maybeFlatA);const b=a.map(function(x){return x*scalar;});return isFlatOnStart?b:unflatten(b);}" }; export function getRotationMatrix(a0, r5 = "z") { const r7 = Math.cos(a0); const r10 = Math.sin(a0); if (r5 === "z") { return [[r7, r10, 0, 0], [-r10, r7, 0, 0], [0, 0, 1, 0], [0, 0, 0, 1]]; } if (r5 === "y") { return [[r7, 0, -r10, 0], [0, 1, 0, 0], [r10, 0, r7, 0], [0, 0, 0, 1]]; } if (r5 === "x") { return [[1, 0, 0, 0], [0, r7, r10, 0], [0, -r10, r7, 0], [0, 0, 0, 1]]; } } getRotationMatrix.__closure = {}; getRotationMatrix.__workletHash = 14367317296086; getRotationMatrix.__initData = { code: "function getRotationMatrix_Pnpm_matrixUtilsTsx10(angle,axis='z'){const cos=Math.cos(angle);const sin=Math.sin(angle);switch(axis){case'z':return[[cos,sin,0,0],[-sin,cos,0,0],[0,0,1,0],[0,0,0,1]];case'y':return[[cos,0,-sin,0],[0,1,0,0],[sin,0,cos,0],[0,0,0,1]];case'x':return[[1,0,0,0],[0,cos,sin,0],[0,-sin,cos,0],[0,0,0,1]];}}" }; const norm3d2 = function norm3d(a0, a1, a2) { return Math.sqrt(a0 * a0 + a1 * a1 + a2 * a2); }; norm3d2.__closure = {}; norm3d2.__workletHash = 3613705554848; norm3d2.__initData = { code: "function norm3d_Pnpm_matrixUtilsTsx11(x,y,z){return Math.sqrt(x*x+y*y+z*z);}" }; norm3d = norm3d2; const transposeMatrix2 = function transposeMatrix(a0) { const r2 = a0.flat(); return [[r2[0], r2[4], r2[8], r2[12]], [r2[1], r2[5], r2[9], r2[13]], [r2[2], r2[6], r2[10], r2[14]], [r2[3], r2[7], r2[11], r2[15]]]; }; transposeMatrix2.__closure = { flatten }; transposeMatrix2.__workletHash = 17306716053169; transposeMatrix2.__initData = { code: "function transposeMatrix_Pnpm_matrixUtilsTsx12(matrix){const{flatten}=this.__closure;const m=flatten(matrix);return[[m[0],m[4],m[8],m[12]],[m[1],m[5],m[9],m[13]],[m[2],m[6],m[10],m[14]],[m[3],m[7],m[11],m[15]]];}" }; transposeMatrix = transposeMatrix2; const assertVectorsHaveEqualLengths2 = function assertVectorsHaveEqualLengths(a0, a1) {}; assertVectorsHaveEqualLengths2.__closure = { __DEV__: false }; assertVectorsHaveEqualLengths2.__workletHash = 14349158134583; assertVectorsHaveEqualLengths2.__initData = { code: "function assertVectorsHaveEqualLengths_Pnpm_matrixUtilsTsx13(a,b){const{__DEV__}=this.__closure;if(__DEV__&&a.length!==b.length){throw new ReanimatedError(\"Cannot calculate inner product of two vectors of different lengths. Length of \"+a.toString()+\" is \"+a.length+\" and length of \"+b.toString()+\" is \"+b.length+\".\");}}" }; assertVectorsHaveEqualLengths = assertVectorsHaveEqualLengths2; const innerProduct2 = function innerProduct(a0, a1) { let env24502; const r1 = env24502 = {}; env24502[0] = a0; env24502[1] = a1; return a0.reduce($mk102422(r1), 0); }; innerProduct2.__closure = { assertVectorsHaveEqualLengths }; innerProduct2.__workletHash = 6022428100775; innerProduct2.__initData = { code: "function innerProduct_Pnpm_matrixUtilsTsx14(a,b){const{assertVectorsHaveEqualLengths}=this.__closure;assertVectorsHaveEqualLengths(a,b);return a.reduce(function(acc,_,i){return acc+a[i]*b[i];},0);}" }; innerProduct = innerProduct2; const projection2 = function projection(a0, a1) { let env24503; const r4 = env24503 = {}; env24503[0] = a0; env24503[1] = a1; const r16 = a0.reduce($mk102422(r4), 0); let env24504; const r19 = env24504 = {}; env24504[0] = a0; env24504[1] = a0; let c24505_0 = r16 / a0.reduce($mk102422(r19), 0); return a0.map((item) => item * c24505_0); }; projection2.__closure = { assertVectorsHaveEqualLengths, innerProduct }; projection2.__workletHash = 12191208971941; projection2.__initData = { code: "function projection_Pnpm_matrixUtilsTsx15(u,a){const{assertVectorsHaveEqualLengths,innerProduct}=this.__closure;assertVectorsHaveEqualLengths(u,a);const s=innerProduct(u,a)/innerProduct(u,u);return u.map(function(e){return e*s;});}" }; projection = projection2; const subtractVectors2 = function subtractVectors(a0, a1) { let env24506; const r0 = env24506 = {}; env24506[0] = a0; env24506[1] = a1; return a0.map($mk102424(r0)); }; subtractVectors2.__closure = { assertVectorsHaveEqualLengths }; subtractVectors2.__workletHash = 9047017498478; subtractVectors2.__initData = { code: "function subtractVectors_Pnpm_matrixUtilsTsx16(a,b){const{assertVectorsHaveEqualLengths}=this.__closure;assertVectorsHaveEqualLengths(a,b);return a.map(function(_,i){return a[i]-b[i];});}" }; subtractVectors = subtractVectors2; const scaleVector2 = function scaleVector(a0, a1) { let env24507; const r0 = env24507 = {}; env24507[0] = a1; return a0.map($mk102425(r0)); }; scaleVector2.__closure = {}; scaleVector2.__workletHash = 11236256734309; scaleVector2.__initData = { code: "function scaleVector_Pnpm_matrixUtilsTsx17(u,a){return u.map(function(e){return e*a;});}" }; scaleVector = scaleVector2; const gramSchmidtAlgorithm2 = function gramSchmidtAlgorithm(a0) { const [r9, r11, r10, r8] = a0; const r5 = projection(r9, r11); let env24508; const r20 = env24508 = {}; env24508[0] = r11; env24508[1] = r5; const r12 = r11.map($mk102424(r20)); const r25 = projection(r9, r10); let env24509; const r28 = env24509 = {}; env24509[0] = r10; env24509[1] = r25; const r14 = r10.map($mk102424(r28)); const r33 = projection(r12, r10); let env24510; const r36 = env24510 = {}; env24510[0] = r14; env24510[1] = r33; const r41 = r14.map($mk102424(r36)); const r42 = [r9, r12, r41, ,]; const r15 = projection(r9, r8); let env24511; const r45 = env24511 = {}; env24511[0] = r8; env24511[1] = r15; const r50 = r8.map($mk102424(r45)); const r51 = projection(r12, r8); let env24512; const r54 = env24512 = {}; env24512[0] = r50; env24512[1] = r51; const r59 = r50.map($mk102424(r54)); const r60 = projection(r41, r8); let env24513; const r63 = env24513 = {}; env24513[0] = r59; env24513[1] = r60; r42[3] = r59.map($mk102424(r63)); const [r73, r74, r75, r76] = r42.map((item) => { const r5 = Math; let env28933; const r11 = env28933 = {}; env28933[0] = item; env28933[1] = item; const r20 = 1 / r5.sqrt(item.reduce($mk102422(r11), 0)); let env28934; const r23 = env28934 = {}; env28934[0] = r20; return item.map($mk102425(r23)); }); const r82 = [[r73[0], r74[0], r75[0], r76[0]], [r73[1], r74[1], r75[1], r76[1]], [r73[2], r74[2], r75[2], r76[2]], [r73[3], r74[3], r75[3], r76[3]]]; let env24514; const r101 = env24514 = {}; env24514[0] = r73; env24514[1] = r9; const r108 = [r73.reduce($mk102422(r101), 0), , , ,]; let env24515; const r111 = env24515 = {}; env24515[0] = r73; env24515[1] = r11; r108[1] = r73.reduce($mk102422(r111), 0); let env24516; const r119 = env24516 = {}; env24516[0] = r73; env24516[1] = r10; r108[2] = r73.reduce($mk102422(r119), 0); let env24517; const r127 = env24517 = {}; env24517[0] = r73; env24517[1] = r8; r108[3] = r73.reduce($mk102422(r127), 0); const r133 = [r108, , , ,]; let env24518; const r136 = env24518 = {}; env24518[0] = r74; env24518[1] = r11; const r142 = [0, r74.reduce($mk102422(r136), 0), , ,]; let env24519; const r145 = env24519 = {}; env24519[0] = r74; env24519[1] = r10; r142[2] = r74.reduce($mk102422(r145), 0); let env24520; const r153 = env24520 = {}; env24520[0] = r74; env24520[1] = r8; r142[3] = r74.reduce($mk102422(r153), 0); r133[1] = r142; let env24521; const r161 = env24521 = {}; env24521[0] = r75; env24521[1] = r10; const r167 = [0, 0, r75.reduce($mk102422(r161), 0), ,]; let env24522; const r170 = env24522 = {}; env24522[0] = r75; env24522[1] = r8; r167[3] = r75.reduce($mk102422(r170), 0); r133[2] = r167; let env24523; const r178 = env24523 = {}; env24523[0] = r76; env24523[1] = r8; r133[3] = [0, 0, 0, r76.reduce($mk102422(r178), 0)]; const r192 = r82.flat(); const r220 = r133.flat(); return { rotationMatrix: [[r192[0], r192[4], r192[8], r192[12]], [r192[1], r192[5], r192[9], r192[13]], [r192[2], r192[6], r192[10], r192[14]], [r192[3], r192[7], r192[11], r192[15]]], skewMatrix: [[r220[0], r220[4], r220[8], r220[12]], [r220[1], r220[5], r220[9], r220[13]], [r220[2], r220[6], r220[10], r220[14]], [r220[3], r220[7], r220[11], r220[15]]] }; }; gramSchmidtAlgorithm2.__closure = { subtractVectors, projection, scaleVector, innerProduct, transposeMatrix }; gramSchmidtAlgorithm2.__workletHash = 1839555089531; gramSchmidtAlgorithm2.__initData = { code: "function gramSchmidtAlgorithm_Pnpm_matrixUtilsTsx18(matrix){const{subtractVectors,projection,scaleVector,innerProduct,transposeMatrix}=this.__closure;const[a0,a1,a2,a3]=matrix;const u0=a0;const u1=subtractVectors(a1,projection(u0,a1));const u2=subtractVectors(subtractVectors(a2,projection(u0,a2)),projection(u1,a2));const u3=subtractVectors(subtractVectors(subtractVectors(a3,projection(u0,a3)),projection(u1,a3)),projection(u2,a3));const[e0,e1,e2,e3]=[u0,u1,u2,u3].map(function(u){return scaleVector(u,1/Math.sqrt(innerProduct(u,u)));});const rotationMatrix=[[e0[0],e1[0],e2[0],e3[0]],[e0[1],e1[1],e2[1],e3[1]],[e0[2],e1[2],e2[2],e3[2]],[e0[3],e1[3],e2[3],e3[3]]];const skewMatrix=[[innerProduct(e0,a0),innerProduct(e0,a1),innerProduct(e0,a2),innerProduct(e0,a3)],[0,innerProduct(e1,a1),innerProduct(e1,a2),innerProduct(e1,a3)],[0,0,innerProduct(e2,a2),innerProduct(e2,a3)],[0,0,0,innerProduct(e3,a3)]];return{rotationMatrix:transposeMatrix(rotationMatrix),skewMatrix:transposeMatrix(skewMatrix)};}" }; gramSchmidtAlgorithm = gramSchmidtAlgorithm2; const decomposeMatrix2 = function decomposeMatrix(a0) { const r25 = Array.isArray(a0) && a0.length === 4 && a0.every($mk102418()) ? a0.flat() : a0; let c24524_0 = r25; if (r25[15] === 0) { throw new _Module1617.ReanimatedError("Invalid transform matrix."); } r25.forEach((item, index) => { const r5 = c24524_0[index] / c24524_0[15]; c24524_0[index] = r5; return r5; }); const translationMatrix = [[1, 0, 0, 0], [0, 1, 0, 0], [0, 0, 1, 0], [r25[12], r25[13], r25[14], 1]]; const r44 = r25[15]; const r13 = r25[0]; const r12 = r25[4]; const r45 = r25[8]; const r54 = r44 * Math.sqrt(r13 * r13 + r12 * r12 + r45 * r45); const r55 = r25[15]; const r14 = r25[1]; const r56 = r25[5]; const r57 = r25[9]; const r68 = r55 * Math.sqrt(r14 * r14 + r56 * r56 + r57 * r57); const r69 = r25[15]; const r70 = r25[2]; const r71 = r25[6]; const r72 = r25[10]; const r83 = r69 * Math.sqrt(r70 * r70 + r71 * r71 + r72 * r72); const scaleMatrix2 = [[r54, 0, 0, 0], [0, r68, 0, 0], [0, 0, r83, 0], [0, 0, 0, 1]]; const r114 = gramSchmidtAlgorithm([[r25[0] / r54, r25[1] / r54, r25[2] / r54, 0], [r25[4] / r68, r25[5] / r68, r25[6] / r68, 0], [r25[8] / r83, r25[9] / r83, r25[10] / r83, 0], [0, 0, 0, 1]]); return { translationMatrix, scaleMatrix: scaleMatrix2, rotationMatrix: r114.rotationMatrix, skewMatrix: r114.skewMatrix }; }; decomposeMatrix2.__closure = { maybeFlattenMatrix, norm3d, gramSchmidtAlgorithm }; decomposeMatrix2.__workletHash = 244684068165; decomposeMatrix2.__initData = { code: "function decomposeMatrix_Pnpm_matrixUtilsTsx19(unknownTypeMatrix){const{maybeFlattenMatrix,norm3d,gramSchmidtAlgorithm}=this.__closure;const matrix=maybeFlattenMatrix(unknownTypeMatrix);if(matrix[15]===0){throw new ReanimatedError('Invalid transform matrix.');}matrix.forEach(function(_,i){return matrix[i]/=matrix[15];});const translationMatrix=[[1,0,0,0],[0,1,0,0],[0,0,1,0],[matrix[12],matrix[13],matrix[14],1]];const sx=matrix[15]*norm3d(matrix[0],matrix[4],matrix[8]);const sy=matrix[15]*norm3d(matrix[1],matrix[5],matrix[9]);const sz=matrix[15]*norm3d(matrix[2],matrix[6],matrix[10]);const scaleMatrix=[[sx,0,0,0],[0,sy,0,0],[0,0,sz,0],[0,0,0,1]];const rotationAndSkewMatrix=[[matrix[0]/sx,matrix[1]/sx,matrix[2]/sx,0],[matrix[4]/sy,matrix[5]/sy,matrix[6]/sy,0],[matrix[8]/sz,matrix[9]/sz,matrix[10]/sz,0],[0,0,0,1]];const{rotationMatrix:rotationMatrix,skewMatrix:skewMatrix}=gramSchmidtAlgorithm(rotationAndSkewMatrix);return{translationMatrix:translationMatrix,scaleMatrix:scaleMatrix,rotationMatrix:rotationMatrix,skewMatrix:skewMatrix};}" }; decomposeMatrix = decomposeMatrix2; export function decomposeMatrixIntoMatricesAndAngles(a0) { let rx, rz; const r15 = decomposeMatrix(a0); const { scaleMatrix: scaleMatrix2, rotationMatrix, translationMatrix, skewMatrix } = r15; const r13 = -rotationMatrix[0][2]; let ry = Math.asin(r13); if (r13 !== 1 && r13 !== -1) { rz = Math.atan2(rotationMatrix[0][1], rotationMatrix[0][0]); rx = Math.atan2(rotationMatrix[1][2], rotationMatrix[2][2]); } else { rx = Math.atan2(r13 * rotationMatrix[0][1], r13 * rotationMatrix[0][2]); rz = 0; } if (!rx) { rx = 0; } if (!ry) { ry = 0; } if (!rz) { rz = 0; } return { scaleMatrix: scaleMatrix2, rotationMatrix, translationMatrix, skewMatrix, rx, ry, rz }; } decomposeMatrixIntoMatricesAndAngles.__closure = { decomposeMatrix }; decomposeMatrixIntoMatricesAndAngles.__workletHash = 633682731757; decomposeMatrixIntoMatricesAndAngles.__initData = { code: "function decomposeMatrixIntoMatricesAndAngles_Pnpm_matrixUtilsTsx20(matrix){const{decomposeMatrix}=this.__closure;const{scaleMatrix:scaleMatrix,rotationMatrix:rotationMatrix,translationMatrix:translationMatrix,skewMatrix:skewMatrix}=decomposeMatrix(matrix);const sinRy=-rotationMatrix[0][2];const ry=Math.asin(sinRy);let rx;let rz;if(sinRy===1||sinRy===-1){rz=0;rx=Math.atan2(sinRy*rotationMatrix[0][1],sinRy*rotationMatrix[0][2]);}else{rz=Math.atan2(rotationMatrix[0][1],rotationMatrix[0][0]);rx=Math.atan2(rotationMatrix[1][2],rotationMatrix[2][2]);}return{scaleMatrix:scaleMatrix,rotationMatrix:rotationMatrix,translationMatrix:translationMatrix,skewMatrix:skewMatrix,rx:rx||0,ry:ry||0,rz:rz||0};}" }; export { isAffineMatrixFlat }; export { isAffineMatrix }; export { flatten }; export { unflatten }; export { decomposeMatrix };