/* Metro module 1712; source: unknown; dependencies: [57, 1621] */ function _fun18660(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#18660, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:1839:6, offset: 0x00e92d68, size: 133 bytes, params: 8, frame: 17 const env0_0 = require; const Object = global.Object; Object.defineProperty(exports, '__esModule', {value: true}); const env0_2 = importDefault(57) /* metro dependency 57 */; object = {code: 'function validateTransformOrigin_Pnpm_processTransformOriginTs1(transformOrigin){if(transformOrigin.length!==3){throw new ReanimatedError(\'Transform origin must have exactly 3 values.\');}const[x,y,z]=transformOrigin;if(!(typeof x===\'number\'||typeof x===\'string\'&&x.endsWith(\'%\'))){throw new ReanimatedError("Transform origin x-position must be a number or a percentage string. Passed value: "+x+".");}if(!(typeof y===\'number\'||typeof y===\'string\'&&y.endsWith(\'%\'))){throw new ReanimatedError("Transform origin y-position must be a number or a percentage string. Passed value: "+y+".");}if(typeof z!==\'number\'){throw new ReanimatedError("Transform origin z-position must be a number. Passed value: "+z+".");}}'}; const env0_4 = _fun18661(); object = {code: 'function processTransformOrigin_Pnpm_processTransformOriginTs2(transformOriginIn){const{INDEX_X,INDEX_Z,INDEX_Y,__DEV__,validateTransformOrigin}=this.__closure;let transformOrigin=Array.isArray(transformOriginIn)?transformOriginIn:[\'50%\',\'50%\',0];if(typeof transformOriginIn===\'string\'){const transformOriginString=transformOriginIn;const regex=/(top|bottom|left|right|center|\\d+(?:%|px)|0)/gi;const transformOriginArray=[\'50%\',\'50%\',0];let index=INDEX_X;let matches;while(matches=regex.exec(transformOriginString)){let nextIndex=index+1;const value=matches[0];const valueLower=value.toLowerCase();switch(valueLower){case\'left\':case\'right\':{if(index!==INDEX_X){throw new ReanimatedError("Transform-origin "+value+" can only be used for x-position");}transformOriginArray[INDEX_X]=valueLower===\'left\'?0:\'100%\';break;}case\'top\':case\'bottom\':{if(index===INDEX_Z){throw new ReanimatedError("Transform-origin "+value+" can only be used for y-position");}transformOriginArray[INDEX_Y]=valueLower===\'top\'?0:\'100%\';if(index===INDEX_X){const horizontal=regex.exec(transformOriginString);if(horizontal==null){break;}switch(horizontal===null||horizontal===void 0?void 0:horizontal[0].toLowerCase()){case\'left\':transformOriginArray[INDEX_X]=0;break;case\'right\':transformOriginArray[INDEX_X]=\'100%\';break;case\'center\':transformOriginArray[INDEX_X]=\'50%\';break;default:throw new ReanimatedError("Could not parse transform-origin: "+transformOriginString);}nextIndex=INDEX_Z;}break;}case\'center\':{if(index===INDEX_Z){throw new ReanimatedError("Transform-origin value "+value+" cannot be used for z-position");}transformOriginArray[index]=\'50%\';break;}default:{if(value.endsWith(\'%\')){transformOriginArray[index]=value;}else{const numericValue=parseFloat(value);if(isNaN(numericValue)){throw new ReanimatedError("Invalid numeric value in transform-origin: "+value);}transformOriginArray[index]=numericValue;}break;}}index=nextIndex;}transformOrigin=transformOriginArray;}if(typeof transformOriginIn!==\'string\'&&!Array.isArray(transformOriginIn)){throw new ReanimatedError("Invalid transformOrigin type: "+typeof transformOriginIn);}if(__DEV__){validateTransformOrigin(transformOrigin);}return transformOrigin;}'}; exports.processTransformOrigin = _fun18663(); } function _fun18661() { // fn#18661, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:1839:840, offset: 0x00e92ded, size: 46 bytes, params: 1, frame: 2 const closure = validateTransformOrigin; closure.__closure = {}; closure.__workletHash = 6034608374885; closure.__initData = env0_3; return closure; } function _fun18663() { // fn#18663, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:1839:3830, offset: 0x00e92fb8, size: 69 bytes, params: 1, frame: 4 const closure = processTransformOrigin_18664; closure.__closure = {'INDEX_X': 0, 'INDEX_Z': 2, 'INDEX_Y': 1, '__DEV__': false, validateTransformOrigin: env0_4}; closure.__workletHash = 11541675557002; closure.__initData = env0_5; return closure; } function validateTransformOrigin(a0) { // fn#18662, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:1839:857, offset: 0x00e92e1b, size: 413 bytes, params: 2, frame: 20 var value; const ReanimatedError = (require(1621) /* metro dependency 1621 */).ReanimatedError; var value5; if (a0.length !== 3) { value = environment.__proto__; throw new ReanimatedError('Transform origin must have exactly 3 values.'); } value = environment.__proto__; const value2 = env1_2(a0, 3); const property = value2[0]; const property2 = value2[1]; const property3 = value2[2]; const value3 = typeof property; if (value3 === 'number') { value5 = typeof property2; if (value5 === 'number') { if (typeof property3 !== 'number') { value = 'Transform origin z-position must be a number. Passed value: ' + property3 + '.'; throw new ReanimatedError(); } return undefined; } if (value5 !== 'string') { value = 'Transform origin y-position must be a number or a percentage string. Passed value: ' + property2 + '.'; throw new ReanimatedError(); } if (property2.endsWith('%')) { if (typeof property3 !== 'number') { value = 'Transform origin z-position must be a number. Passed value: ' + property3 + '.'; throw new ReanimatedError(); } return undefined; } value = 'Transform origin y-position must be a number or a percentage string. Passed value: ' + property2 + '.'; throw new ReanimatedError(); } if (value3 !== 'string') { value = 'Transform origin x-position must be a number or a percentage string. Passed value: ' + property + '.'; throw new ReanimatedError(); } if (property.endsWith('%')) { value5 = typeof property2; if (value5 === 'number') { if (typeof property3 !== 'number') { value = 'Transform origin z-position must be a number. Passed value: ' + property3 + '.'; throw new ReanimatedError(); } return undefined; } if (value5 !== 'string') { value = 'Transform origin y-position must be a number or a percentage string. Passed value: ' + property2 + '.'; throw new ReanimatedError(); } if (property2.endsWith('%')) { if (typeof property3 !== 'number') { value = 'Transform origin z-position must be a number. Passed value: ' + property3 + '.'; throw new ReanimatedError(); } return undefined; } value = 'Transform origin y-position must be a number or a percentage string. Passed value: ' + property2 + '.'; throw new ReanimatedError(); } value = 'Transform origin x-position must be a number or a percentage string. Passed value: ' + property + '.'; const value4 = Object.create(ReanimatedError.prototype, {constructor: {value: ReanimatedError}}); const reanimatedError = new ReanimatedError(); throw reanimatedError instanceof Object ? reanimatedError : value4; } function processTransformOrigin_18664(a0) { // fn#18664, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:1839:3847, offset: 0x00e92ffd, size: 959 bytes, params: 2, frame: 43 var r1; var r6; var r11; var r29; var r31; var r28; var items2; var regexp; var exec; var value3; var value4; var value5; var value6; var value7; var value8; var property; var toLowerCase; var value9; var endsWith; var parseFloat; var float; var isNaN; const ReanimatedError = (require(1621) /* metro dependency 1621 */).ReanimatedError; var concat; var value12; var value13; var value14; var value17; let value = a0; let Array = global.Array; reducibleJoin2: while (true) { if (Array.isArray(value)) { r1 = value; break reducibleJoin2; } r1 = ['50%', '50%', 0]; break reducibleJoin2; } const value2 = typeof value; if (value2 === 'string') { regexp = RegExp('(top|bottom|left|right|center|\\d+(?:%|px)|0)', 'gi'); items2 = ['50%', '50%', 0]; value3 = regexp.exec(value); value4 = 0; value5 = undefined; value6 = '100%'; value7 = 2; if (value3) { r6 = value3; r11 = value4; reducibleLoop4: while (true) { value8 = r11 + 1; property = r6[value4]; toLowerCase = property.toLowerCase; value9 = Reflect.apply(toLowerCase, property, []); if (value9 !== 'left') { reducibleJoin31: while (true) { if (value9 === 'right') { break reducibleJoin31; } if (value9 !== 'top') { reducibleJoin17: while (true) { if (value9 === 'bottom') { break reducibleJoin17; } if (value9 === 'center') { if (value7 === r11) { value = environment.__proto__; concat = global.HermesInternal.concat; value = 'Transform-origin value ' + property + ' cannot be used for z-position'; throw new ReanimatedError(value); } items2[r11] = '50%'; r28 = value8; } else { endsWith = property.endsWith; if (Reflect.apply(endsWith, property, ['%'])) { items2[r11] = property; r28 = value8; } else { parseFloat = global.parseFloat; float = parseFloat(property); isNaN = global.isNaN; if (isNaN(float)) { value = environment.__proto__; concat = global.HermesInternal.concat; value = 'Invalid numeric value in transform-origin: ' + property; throw new ReanimatedError(value); } items2[r11] = float; r28 = value8; } } exec = regexp.exec; value17 = Reflect.apply(exec, regexp, [value]); if (value17) { r6 = value17; r11 = r28; continue reducibleLoop4; } r1 = items2; break reducibleLoop4; } } if (value7 === r11) { value = environment.__proto__; concat = global.HermesInternal.concat; value = 'Transform-origin ' + property + ' can only be used for y-position'; throw new ReanimatedError(value); } r29 = value9 !== 'top' ? value6 : value4; items2[1] = r29; if (value4 !== r11) { r28 = value8; } else { value12 = regexp.exec(value); reducibleJoin34: while (true) { if (value12 == null) { r28 = value8; break reducibleJoin34; } reducibleJoin23: while (true) { if (value12 == null) { r31 = value5; break reducibleJoin23; } property = value12[value4]; toLowerCase = property.toLowerCase; value13 = Reflect.apply(toLowerCase, property, []); r31 = value13; break reducibleJoin23; } if (r31 === 'left') { items2[value4] = value4; r28 = value7; break reducibleJoin34; } if (r31 === 'right') { items2[value4] = value6; r28 = value7; break reducibleJoin34; } if (r31 !== 'center') { value14 = environment.__proto__; concat = global.HermesInternal.concat; value = 'Could not parse transform-origin: ' + value; throw new ReanimatedError(value); } items2[value4] = '50%'; r28 = value7; break reducibleJoin34; } } exec = regexp.exec; value17 = Reflect.apply(exec, regexp, [value]); if (value17) { r6 = value17; r11 = r28; continue reducibleLoop4; } r1 = items2; break reducibleLoop4; } } if (value4 !== r11) { value = environment.__proto__; concat = global.HermesInternal.concat; value = 'Transform-origin ' + property + ' can only be used for x-position'; throw new ReanimatedError(value); } r29 = value9 !== 'left' ? value6 : value4; items2[value4] = r29; r28 = value8; exec = regexp.exec; value17 = Reflect.apply(exec, regexp, [value]); if (value17) { r6 = value17; r11 = r28; continue reducibleLoop4; } r1 = items2; break reducibleLoop4; } } else { r1 = items2; } } if (value2 !== 'string') { Array = global.Array; reducibleJoin38: while (true) { if (!Array.isArray(value)) { value = environment.__proto__; throw new ReanimatedError('Invalid transformOrigin type: ' + value2); } break reducibleJoin38; } } return r1; }