/* Metro module 3812; source: modules/premium/PremiumSubscriptionInvoiceItem.tsx; dependencies: [22, 2] */ function _fun29497(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#29497, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:3939:6, offset: 0x00fc3686, size: 110 bytes, params: 8, frame: 17 const Object = global.Object; Object.defineProperty(exports, '__esModule', {value: true}); (require(2) /* metro dependency 2 */).fileFinishedImporting('modules/premium/PremiumSubscriptionInvoiceItem.tsx'); exports.coalesceInvoiceItems = function(a0) { var Set = global.Set; var env0_1 = new Set(); a0.map(_fun29499); return [].map(_fun29500); }; exports.createInvoiceItemFromServer = function(a0) { return {id: a0.id, subscriptionPlanId: a0.subscription_plan_id, subscriptionPlanPrice: a0.subscription_plan_price, amount: a0.amount, quantity: a0.quantity, discounts: a0.discounts, unitPrice: a0.unit_price, tax: a0.tax, taxCode: a0.tax_code, nominalTaxRate: a0.nominal_tax_rate}; }; } function coalesceInvoiceItems(a0) { // fn#29498, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:3939:199, offset: 0x00fc36f4, size: 77 bytes, params: 2, frame: 13 const Set = global.Set; const set = new Set(); a0.map(_fun29499); return [].map(_fun29500); } function _fun29499(a0) { // fn#29499, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:3939:265, offset: 0x00fc3741, size: 213 bytes, params: 2, frame: 21 var r11; var r5; var property; var subscriptionPlanId; var subscriptionPlanId2; var subscriptionPlanPrice; var subscriptionPlanPrice2; var amount; var amount2; var defaultImport; var isEqual; var discounts; var discounts2; var value4; var push; var object2; let binding = env0_0; let length = binding.length; const value2 = 0; if (value2 < length) { r5 = value2; reducibleLoop1: while (true) { property = binding[r5]; subscriptionPlanId = property.subscriptionPlanId; subscriptionPlanId2 = a0.subscriptionPlanId; if (subscriptionPlanId === subscriptionPlanId2) { subscriptionPlanPrice = property.subscriptionPlanPrice; subscriptionPlanPrice2 = a0.subscriptionPlanPrice; reducibleJoin5: while (true) { if (subscriptionPlanPrice !== subscriptionPlanPrice2) { break reducibleJoin5; } amount = property.amount; amount2 = a0.amount; if (amount !== amount2) { break reducibleJoin5; } defaultImport = importDefault(dependencyMap[value2]); isEqual = defaultImport.isEqual; discounts = property.discounts; discounts2 = a0.discounts; if (Reflect.apply(isEqual, defaultImport, [discounts, discounts2])) { binding = env0_1; binding.add(property.subscriptionPlanId); property.quantity = property.quantity + a0.quantity; return undefined; } r11 = defaultImport; break reducibleJoin5; } } value4 = typeof r5 === 'bigint' ? r5 + 1n : +r5 + 1; length = binding.length; if (!(value4 < length)) { binding = env0_0; push = binding.push; object2 = {}; copyDataProperties(object2, a0, r11); Reflect.apply(push, binding, [object2]); return undefined; } r5 = value4; continue reducibleLoop1; } } binding = env0_0; push = binding.push; object2 = {}; copyDataProperties(object2, a0, r11); Reflect.apply(push, binding, [object2]); } function _fun29500(a0) { // fn#29500, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:3939:578, offset: 0x00fc3816, size: 132 bytes, params: 2, frame: 14 const object2 = {}; copyDataProperties(object2, a0, undefined); const binding = env0_1; if (binding.has(a0.subscriptionPlanId)) { object2.amount = object2.amount * object2.quantity; object2.discounts = object2.discounts.map(_fun29501); if (object2.tax != null) { object2.tax = object2.tax * object2.quantity; } } return object2; } function _fun29501(a0) { // fn#29501, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:3939:690, offset: 0x00fc389a, size: 49 bytes, params: 2, frame: 12 const object2 = {}; copyDataProperties(object2, a0, undefined); object2['amount'] = a0.amount * env0_0.quantity; return object2; }