{"version":3,"file":"swapd-fees.js","names":["define","_exports","_component","Object","defineProperty","value","default","extend","classNames","_decorators","_string","_utils","_runloop","_service","_controller","dt7948","p","dialog","inject","price","category","paymentType","membershipType","categories","w","paymentTypes","membershipTypes","showResult","showTransferFee","actions","calculateFee","this","get","_isShowLimit","set","site","mobileView","next","$","animate","scrollTop","offset","top","roundUpToCents","amount","Math","ceil","toFixed","canCalculateFee","isBlank","isNaN","parseFloat","includes","categoriesContent","map","c","id","name","I18n","t","paymentTypesContent","membershipTypesContent","cantCalculateFee","formatedPrice","_hideResult","_calculateActualFee","feeStruct","percentage","fixedFee","validUpto","actualFee","_calculateSwapdFee","getFee","minimum","applyMinimum","getApplicablePercentage","percentages","bottom","applicablePercentage","safety_concern","regular","premium","vip","diamond","millionaire","partner","swapdFee","fee","_getTransferFee","transferFee","currentUser","can_view_tickets","totalFees","finalAmount","max","_isOverLimit","popup","msg","_showLimit","exceedsLimitOA","orgAmount","oa","virtualPrice","limit","min","alert","message","observes","route","_discourse","titleToken","_templateFactory","createTemplateFactory","block","moduleName","isStrictMode"],"sources":["discourse/plugins/swapd-fees/discourse/components/fc-section.js","discourse/plugins/swapd-fees/discourse/controllers/fees.js","discourse/plugins/swapd-fees/discourse/fees-route-map.js","discourse/plugins/swapd-fees/discourse/routes/fees.js","discourse/plugins/swapd-fees/discourse/templates/components/fc-section.js","discourse/plugins/swapd-fees/discourse/templates/fees.js"],"sourcesContent":["define(\"discourse/plugins/swapd-fees/discourse/components/fc-section\", [\"exports\", \"@ember/component\"], function (_exports, _component) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n  var _default = _exports.default = _component.default.extend({\n    classNames: [\"fc-section\"]\n  });\n});","define(\"discourse/plugins/swapd-fees/discourse/controllers/fees\", [\"exports\", \"discourse-common/utils/decorators\", \"@ember/string\", \"@ember/utils\", \"@ember/runloop\", \"@ember/service\", \"@ember/controller\"], function (_exports, _decorators, _string, _utils, _runloop, _service, _controller) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n  var _default = _exports.default = _controller.default.extend(dt7948.p({\n    dialog: (0, _service.inject)(),\n    price: null,\n    category: null,\n    paymentType: null,\n    membershipType: null,\n    categories: (0, _string.w)(\"social_media domains websites shoutout trades auction other\"),\n    paymentTypes: (0, _string.w)(\"trustap_creditcard trustap_bank_wire btc eth sol trc20 erc20 usdt_usdc_solana\"),\n    membershipTypes: (0, _string.w)(\"safety_concern regular premium vip diamond millionaire partner\"),\n    showResult: false,\n    showTransferFee: true,\n    actions: {\n      calculateFee() {\n        if (!this.get(\"canCalculateFee\")) {\n          return;\n        }\n        if (this._isShowLimit()) {\n          return;\n        }\n        this.set(\"showResult\", true);\n        if (this.site.mobileView) {\n          (0, _runloop.next)(this, () => {\n            $(\"html, body\").animate({\n              scrollTop: $(\".fc-right\").offset().top - 75\n            }, 2000);\n          });\n        }\n      }\n    },\n    roundUpToCents(amount) {\n      let roundedAmount = Math.ceil(amount * 100) / 100;\n      return roundedAmount.toFixed(2);\n    },\n    canCalculateFee(price, category, paymentType, membershipType) {\n      if (category == \"trades\") return true;\n      if ((0, _utils.isBlank)(price)) return false;\n      if (isNaN(price)) return false;\n      if (parseFloat(price) < 0) return false;\n      if (price > 9999999) return false;\n      if (!this.get(\"categories\").includes(category)) return false;\n      if (!this.get(\"paymentTypes\").includes(paymentType)) return false;\n      if (!this.get(\"membershipTypes\").includes(membershipType)) return false;\n      return true;\n    },\n    categoriesContent(categories) {\n      return categories.map(c => {\n        return {\n          id: c,\n          name: I18n.t(`fee_calculator.categories.${c}`)\n        };\n      });\n    },\n    paymentTypesContent(paymentTypes) {\n      return paymentTypes.map(c => {\n        return {\n          id: c,\n          name: I18n.t(`fee_calculator.payment_types.${c}`)\n        };\n      });\n    },\n    membershipTypesContent(membershipTypes) {\n      return membershipTypes.map(c => {\n        return {\n          id: c,\n          name: I18n.t(`fee_calculator.membership_type.${c}`)\n        };\n      });\n    },\n    cantCalculateFee(canCalculateFee) {\n      return !canCalculateFee;\n    },\n    formatedPrice(price) {\n      return parseFloat(price);\n    },\n    _hideResult() {\n      this.set(\"showResult\", false);\n    },\n    _calculateActualFee(feeStruct, price) {\n      return {\n        percentage: feeStruct.percentage,\n        fixedFee: feeStruct.fixedFee,\n        validUpto: feeStruct.validUpto,\n        actualFee: feeStruct.fixedFee + feeStruct.percentage * price / 100\n      };\n    },\n    _calculateSwapdFee(price, category, membershipType, paymentType) {\n      const applyMinimum = (feeStruct, price, minimum) => {\n        const fee = price * feeStruct.percentage / 100 + feeStruct.fixedFee;\n        if (fee < minimum) {\n          if (feeStruct.percentage == 0) {\n            // if fixed fee then keep validUpto value\n            return {\n              percentage: 0,\n              fixedFee: minimum,\n              validUpto: feeStruct.validUpto\n            };\n          } else {\n            return {\n              percentage: 0,\n              fixedFee: minimum,\n              validUpto: 100 * minimum / feeStruct.percentage\n            };\n          }\n        } else {\n          return feeStruct;\n        }\n      };\n      const getFee = (price, percentage, minimum) => {\n        return this._calculateActualFee(applyMinimum({\n          percentage: percentage,\n          fixedFee: 0,\n          validUpto: 99999999\n        }, price, minimum), price);\n      };\n      function getApplicablePercentage(percentages, price, bottom) {\n        let applicablePercentage = bottom;\n        for (const percentage of percentages) {\n          if (price <= percentage.price) {\n            applicablePercentage = {\n              percentage: percentage.percentage,\n              fixedFee: 0,\n              validUpto: percentage.price\n            };\n            break;\n          }\n        }\n        return applicablePercentage;\n      }\n\n      // Trustap is independent of category\n      if (['trustap_bank_wire', 'trustap_creditcard'].includes(paymentType)) {\n        if (price < 350) {\n          return {\n            percentage: 0,\n            fixedFee: 35,\n            validUpto: 350,\n            actualFee: 35\n          };\n        } else {\n          return {\n            percentage: 7,\n            fixedFee: 0,\n            validUpto: 99999999\n          };\n        }\n      }\n      var feeStruct = {};\n      switch (category) {\n        case 'social_media':\n        case 'other':\n          if (price < 350) {\n            return {\n              percentage: 0,\n              fixedFee: 35,\n              validUpto: 350,\n              actualFee: 35\n            };\n          }\n          switch (paymentType) {\n            case 'usdc':\n            case 'usdt':\n            case 'trc20':\n            case 'erc20':\n            case \"btc\":\n            case \"eth\":\n            case \"sol\":\n            case \"usdt_usdc_solana\":\n              feeStruct = {\n                percentage: 10,\n                fixedFee: 0,\n                validUpto: 99999999\n              };\n              switch (membershipType) {\n                case 'safety_concern':\n                  feeStruct = {\n                    percentage: 10,\n                    fixedFee: 0,\n                    validUpto: 99999999\n                  };\n                  break;\n                case 'regular':\n                case 'premium':\n                  feeStruct = {\n                    percentage: 9,\n                    fixedFee: 0,\n                    validUpto: 99999999\n                  };\n                  break;\n                case 'vip':\n                  feeStruct = getApplicablePercentage([{\n                    price: 20000,\n                    percentage: 8\n                  }, {\n                    price: 40000,\n                    percentage: 7\n                  }, {\n                    price: 60000,\n                    percentage: 6\n                  }, {\n                    price: 10000000,\n                    percentage: 5\n                  }], price, 4);\n                  break;\n                case 'diamond':\n                  feeStruct = getApplicablePercentage([{\n                    price: 20000,\n                    percentage: 7\n                  }, {\n                    price: 40000,\n                    percentage: 6\n                  }, {\n                    price: 60000,\n                    percentage: 5\n                  }, {\n                    price: 10000000,\n                    percentage: 4\n                  }], price, 3);\n                  break;\n                case 'millionaire':\n                case 'partner':\n                  feeStruct = getApplicablePercentage([{\n                    price: 20000,\n                    percentage: 6\n                  }, {\n                    price: 40000,\n                    percentage: 5\n                  }, {\n                    price: 60000,\n                    percentage: 4\n                  }, {\n                    price: 10000000,\n                    percentage: 3\n                  }], price, 2);\n                  break;\n              }\n              break;\n            case 'creditcard':\n              var percentages = {\n                safety_concern: 100,\n                regular: 100,\n                premium: 100,\n                vip: 12,\n                diamond: 12,\n                millionaire: 12,\n                partner: 10\n              };\n              feeStruct = {\n                percentage: percentages[membershipType],\n                fixedFee: 0,\n                validUpto: 99999999\n              };\n              break;\n            case 'bank_wire':\n              var percentages = {\n                safety_concern: 11,\n                regular: 10,\n                premium: 10,\n                vip: 9,\n                diamond: 8,\n                millionaire: 7,\n                partner: 6\n              };\n              feeStruct = {\n                percentage: percentages[membershipType],\n                fixedFee: 0,\n                validUpto: 99999999\n              };\n              break;\n          }\n          return this._calculateActualFee(feeStruct, price);\n          // see https://support.communiteq.com/t/fee-calculator-issues/319/8\n          break;\n        case 'auction':\n          if (price < 350) {\n            return {\n              percentage: 0,\n              fixedFee: 35,\n              validUpto: 350,\n              actualFee: 35\n            };\n          }\n          var percentages = {\n            safety_concern: 11,\n            regular: 10,\n            premium: 9,\n            vip: 8,\n            diamond: 7,\n            millionaire: 6,\n            partner: 6\n          };\n          var percent = percentages[membershipType];\n          feeStruct = {\n            percentage: percent,\n            fixedFee: 0,\n            validUpto: 99999999\n          };\n          return this._calculateActualFee(feeStruct, price);\n          break;\n        case 'domains':\n          // 1% and 25 minimum\n          return getFee(price, 1, 25);\n          break;\n        case 'websites':\n          // 5% and 50 minimum\n          return getFee(price, 5, 50);\n          break;\n        case 'shoutout':\n          // 10% and 35 minimum\n          return getFee(price, 10, 35);\n        case 'trades':\n          // always 35\n          return {\n            percentage: 0,\n            fixedFee: 35,\n            validUpto: 99999999,\n            actualFee: 35\n          };\n          break;\n      }\n    },\n    swapdFee(price, category, membershipType, paymentType) {\n      const fee = this._calculateSwapdFee(price, category, membershipType, paymentType);\n      return this.roundUpToCents(price * fee.percentage / 100 + fee.fixedFee);\n    },\n    _getTransferFee(price, paymentType, category) {\n      var feeStruct = {};\n\n      // trustap is independent of the category\n      if (paymentType == \"trustap_bank_wire\") {\n        feeStruct = {\n          percentage: 1,\n          fixedFee: 0,\n          validUpto: 99999999\n        };\n        return this._calculateActualFee(feeStruct, price);\n      }\n      if (paymentType == \"trustap_creditcard\") {\n        feeStruct = {\n          percentage: 4,\n          fixedFee: 0,\n          validUpto: 99999999\n        };\n        return this._calculateActualFee(feeStruct, price);\n      }\n\n      // trade category is independent of payment type\n      if (category == \"trades\") {\n        feeStruct = {\n          percentage: 0,\n          fixedFee: 0,\n          validUpto: 99999999\n        };\n        return this._calculateActualFee(feeStruct, price);\n      }\n      switch (paymentType) {\n        case \"bank_wire\":\n          feeStruct = {\n            percentage: 0,\n            fixedFee: 35,\n            validUpto: 99999999\n          };\n          break;\n        case \"usdt\":\n        case \"usdc\":\n        case \"erc20\":\n        case \"trc20\":\n        case \"btc\":\n        case \"eth\":\n        case \"sol\":\n        case \"usdt_usdc_solana\":\n          feeStruct = {\n            percentage: 1,\n            fixedFee: 0,\n            validUpto: 99999999\n          };\n          break;\n        case \"credit_card\":\n        default:\n          feeStruct = {\n            percentage: 0,\n            fixedFee: 0,\n            validUpto: 99999999\n          };\n      }\n      return this._calculateActualFee(feeStruct, price);\n    },\n    transferFee(price, category, membershipType, paymentType) {\n      var fee = this._getTransferFee(price, paymentType, category);\n      this.set(\"showTransferFee\", fee.actualFee > 0);\n      this.set(\"showTotalFees\", fee.actualFee > 0 && this.currentUser && this.currentUser.can_view_tickets);\n      return this.roundUpToCents(fee.actualFee);\n    },\n    totalFees(transferFee, swapdFee) {\n      return this.roundUpToCents(parseFloat(transferFee) + parseFloat(swapdFee));\n    },\n    finalAmount(price, swapdFee, transferFee, category) {\n      if (category == \"trades\") return 0;\n      return this.roundUpToCents(Math.max(0, this.roundUpToCents(price - swapdFee - transferFee)));\n    },\n    _isOverLimit(price, paymentType, membershipType, category, popup) {\n      if (category == \"trades\") {\n        return false;\n      }\n      if (paymentType == \"bank_wire\") {\n        if (['partner'].includes(membershipType)) {\n          if (price > 20000) {\n            const msg = I18n.t(\"fee_calculator.payment_limit.bank_wire_partner\");\n            if (popup) {\n              this._showLimit(msg);\n            }\n            return true;\n          }\n        } else {\n          if (price > 10000) {\n            const msg = I18n.t(\"fee_calculator.payment_limit.bank_wire\");\n            if (popup) {\n              this._showLimit(msg);\n            }\n            return true;\n          }\n        }\n      }\n\n      // trustap restrictions\n      if (['trustap_bank_wire', 'trustap_creditcard'].includes(paymentType)) {\n        if (['safety_concern'].includes(membershipType)) {\n          const msg = I18n.t(\"fee_calculator.payment_limit.trustap_not_allowed\");\n          if (popup) {\n            this._showLimit(msg);\n          }\n          return true;\n        }\n      }\n      if (paymentType == \"trustap_creditcard\" && price > 2247.20) {\n        // 2247.20 equals to 2000 plus fees\n        const msg = I18n.t(\"fee_calculator.payment_limit.trustap_creditcard_limit\");\n        if (popup) {\n          this._showLimit(msg);\n        }\n        return true;\n      }\n\n      // credit card limits and restrictions\n      if (paymentType == \"creditcard\") {\n        if (['safety_concern', 'regular', 'premium'].includes(membershipType)) {\n          const msg = I18n.t(\"fee_calculator.payment_limit.creditcard_not_allowed\");\n          if (popup) {\n            this._showLimit(msg);\n          }\n          return true;\n        }\n        if (['vip'].includes(membershipType) && price > 1000) {\n          const msg = I18n.t(\"fee_calculator.payment_limit.creditcard_vip\");\n          if (popup) {\n            this._showLimit(msg);\n          }\n          return true;\n        }\n        if (['diamond', 'millionaire'].includes(membershipType) && price > 2000) {\n          const msg = I18n.t(\"fee_calculator.payment_limit.creditcard_diamond\");\n          if (popup) {\n            this._showLimit(msg);\n          }\n          return true;\n        }\n        if (['partner'].includes(membershipType) && price > 2500) {\n          const msg = I18n.t(\"fee_calculator.payment_limit.creditcard_partner\");\n          if (popup) {\n            this._showLimit(msg);\n          }\n          return true;\n        }\n      }\n      return false;\n    },\n    exceedsLimitOA(orgAmount, price, category, membershipType, paymentType) {\n      if (category == \"trades\") {\n        return true;\n      } else {\n        return this._isOverLimit(orgAmount, paymentType, membershipType, category, false);\n      }\n    },\n    orgAmount(price, category, membershipType, paymentType) {\n      var oa = 0;\n      var virtualPrice = price;\n      var transferFee, swapdFee;\n      do {\n        transferFee = this._getTransferFee(virtualPrice, paymentType, category);\n        swapdFee = this._calculateSwapdFee(virtualPrice, category, membershipType, paymentType);\n        oa = 100 * ((price + transferFee.fixedFee + swapdFee.fixedFee) / (100 - (transferFee.percentage + swapdFee.percentage)));\n        var limit = Math.min(transferFee.validUpto, swapdFee.validUpto);\n        if (oa > limit) {\n          virtualPrice = limit + 1;\n        } else {\n          break;\n        }\n      } while (true);\n      return this.roundUpToCents(oa > 0 ? oa : 0);\n    },\n    _isShowLimit() {\n      const price = this.get(\"formatedPrice\");\n      const paymentType = this.get(\"paymentType\");\n      const membershipType = this.get(\"membershipType\");\n      const category = this.get(\"category\");\n      return this._isOverLimit(price, paymentType, membershipType, category, true);\n    },\n    _showLimit(msg) {\n      this.dialog.alert({\n        message: msg\n      });\n    }\n  }, [[\"method\", \"canCalculateFee\", [(0, _decorators.default)(\"price\", \"category\", \"paymentType\", \"membershipType\")]], [\"method\", \"categoriesContent\", [(0, _decorators.default)(\"categories\")]], [\"method\", \"paymentTypesContent\", [(0, _decorators.default)(\"paymentTypes\")]], [\"method\", \"membershipTypesContent\", [(0, _decorators.default)(\"membershipTypes\")]], [\"method\", \"cantCalculateFee\", [(0, _decorators.default)(\"canCalculateFee\")]], [\"method\", \"formatedPrice\", [(0, _decorators.default)(\"price\")]], [\"method\", \"_hideResult\", [(0, _decorators.observes)(\"price\", \"category\", \"paymentType\", \"membershipType\")]], [\"method\", \"swapdFee\", [(0, _decorators.default)(\"formatedPrice\", \"category\", \"membershipType\", \"paymentType\")]], [\"method\", \"transferFee\", [(0, _decorators.default)(\"formatedPrice\", \"category\", \"membershipType\", \"paymentType\")]], [\"method\", \"totalFees\", [(0, _decorators.default)(\"transferFee\", \"swapdFee\")]], [\"method\", \"finalAmount\", [(0, _decorators.default)(\"formatedPrice\", \"swapdFee\", \"transferFee\", \"category\")]], [\"method\", \"exceedsLimitOA\", [(0, _decorators.default)(\"orgAmount\", \"formatedPrice\", \"category\", \"membershipType\", \"paymentType\")]], [\"method\", \"orgAmount\", [(0, _decorators.default)(\"formatedPrice\", \"category\", \"membershipType\", \"paymentType\")]]]));\n});","define(\"discourse/plugins/swapd-fees/discourse/fees-route-map\", [\"exports\"], function (_exports) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = _default;\n  function _default() {\n    this.route(\"fees\");\n  }\n});","define(\"discourse/plugins/swapd-fees/discourse/routes/fees\", [\"exports\", \"discourse/routes/discourse\"], function (_exports, _discourse) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n  var _default = _exports.default = _discourse.default.extend({\n    titleToken() {\n      return I18n.t(\"fee_calculator.title\");\n    }\n  });\n});","define(\"discourse/plugins/swapd-fees/discourse/templates/components/fc-section\", [\"exports\", \"@ember/template-factory\"], function (_exports, _templateFactory) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n  var _default = _exports.default = (0, _templateFactory.createTemplateFactory)(\n  /*\n    <div class=\"fc-section-help\">\n    <div class=\"fc-section-num\">\n      <span>{{this.num}}</span>\n    </div>\n  \n    <div class=\"fc-section-msg\">\n      {{html-safe this.msg}}\n    </div>\n  </div>\n  \n  <div class=\"fc-section-input\">\n    {{yield}}\n  </div>\n  \n  */\n  {\n    \"id\": \"Ob+oDLBZ\",\n    \"block\": \"[[[10,0],[14,0,\\\"fc-section-help\\\"],[12],[1,\\\"\\\\n  \\\"],[10,0],[14,0,\\\"fc-section-num\\\"],[12],[1,\\\"\\\\n    \\\"],[10,1],[12],[1,[30,0,[\\\"num\\\"]]],[13],[1,\\\"\\\\n  \\\"],[13],[1,\\\"\\\\n\\\\n  \\\"],[10,0],[14,0,\\\"fc-section-msg\\\"],[12],[1,\\\"\\\\n    \\\"],[1,[28,[35,2],[[30,0,[\\\"msg\\\"]]],null]],[1,\\\"\\\\n  \\\"],[13],[1,\\\"\\\\n\\\"],[13],[1,\\\"\\\\n\\\\n\\\"],[10,0],[14,0,\\\"fc-section-input\\\"],[12],[1,\\\"\\\\n  \\\"],[18,1,null],[1,\\\"\\\\n\\\"],[13],[1,\\\"\\\\n\\\"]],[\\\"&default\\\"],false,[\\\"div\\\",\\\"span\\\",\\\"html-safe\\\",\\\"yield\\\"]]\",\n    \"moduleName\": \"discourse/plugins/swapd-fees/discourse/templates/components/fc-section.hbs\",\n    \"isStrictMode\": false\n  });\n});","define(\"discourse/plugins/swapd-fees/discourse/templates/fees\", [\"exports\", \"@ember/template-factory\"], function (_exports, _templateFactory) {\n  \"use strict\";\n\n  Object.defineProperty(_exports, \"__esModule\", {\n    value: true\n  });\n  _exports.default = void 0;\n  var _default = _exports.default = (0, _templateFactory.createTemplateFactory)(\n  /*\n    <div class=\"fc-container\">\n    <div class=\"fee-calculator\">\n      <div class=\"fc-left\">\n        <h1>{{i18n \"fee_calculator.title\"}}</h1>\n  \n        <p class=\"fc-intro\">{{{i18n \"fee_calculator.intro\"}}}</p>\n  \n        <FcSection @msg={{i18n \"fee_calculator.price.help_msg\"}} @num=1>\n          <Input\n            placeholder={{i18n \"fee_calculator.price.placeholder\"}}\n            @value={{this.price}}\n          />\n        </FcSection>\n  \n        <FcSection @msg={{i18n \"fee_calculator.category.help_msg\"}} @num=2>\n          <ComboBox\n            @content={{this.categoriesContent}}\n            @value={{this.category}}\n            @onChange={{fn (mut this.category)}}\n            @options={{hash none=\"fee_calculator.category.placeholder\"}}\n          />\n        </FcSection>\n  \n        <FcSection @msg={{i18n \"fee_calculator.payment_type.help_msg\"}} @num=3>\n          <ComboBox\n            @content={{this.paymentTypesContent}}\n            @value={{this.paymentType}}\n            @onChange={{fn (mut this.paymentType)}}\n            @options={{hash none=\"fee_calculator.payment_type.placeholder\"}}\n          />\n        </FcSection>\n  \n        <FcSection @msg={{i18n \"fee_calculator.membership_type.help_msg\"}} @num=4>\n          <ComboBox\n            @content={{this.membershipTypesContent}}\n            @value={{this.membershipType}}\n            @onChange={{fn (mut this.membershipType)}}\n            @options={{hash none=\"fee_calculator.membership_type.placeholder\"}}\n          />\n        </FcSection>\n  \n        <FcSection>\n          <DButton\n            @action={{action \"calculateFee\"}}\n            @label=\"fee_calculator.calculate_fee\"\n            @class=\"btn-large btn-danger\"\n            @disabled={{this.cantCalculateFee}}\n          />\n        </FcSection>\n      </div>\n  \n      <div class=\"fc-right {{if this.showResult 'show-result'}}\">\n        {{#if this.showResult}}\n          <h2>{{i18n \"fee_calculator.total_profit\"}}</h2>\n  \n          <p>{{i18n \"fee_calculator.final_amount\"}}</p>\n  \n          <div class=\"fc-final-amount\">${{this.finalAmount}}</div>\n  \n          <div class=\"fc-fee-breakdown\">\n            <strong>{{i18n \"fee_calculator.fee_breakdown\"}}</strong>\n  \n            <div>{{i18n \"fee_calculator.swapd_fee\"}}: {{this.swapdFee}} USD</div>\n            {{#if this.showTransferFee}}\n              <div>{{i18n \"fee_calculator.transfer_fee\"}}: {{this.transferFee}} USD</div>\n            {{/if}}\n            {{#if this.showTotalFees}}\n              <div>{{i18n \"fee_calculator.total_fees\"}}: {{this.totalFees}} USD</div>\n            {{/if}}\n          </div>\n  \n          {{#unless this.exceedsLimitOA}}\n            <div class=\"fc-original-amount\">\n              {{html-safe (i18n \"fee_calculator.original_amount\" amount=this.orgAmount)}}\n            </div>\n          {{/unless}}\n  \n          {{#if this.paymentType}}\n            <div class=\"fc-payment-msg\">\n              {{{i18n (concat \"fee_calculator.payment_type_messages.\" this.paymentType)}}}\n            </div>\n          {{/if}}\n  \n        {{/if}}\n      </div>\n    </div>\n  \n    <div class=\"fc-disclaimer\">\n      <h3>{{i18n \"fee_calculator.disclaimer\"}}</h3>\n      <p>{{{i18n \"fee_calculator.disclaimer_msg\"}}}</p>\n    </div>\n  \n    <div class=\"fc-footer\">\n      {{{i18n \"fee_calculator.footer\"}}}\n    </div>\n  </div>\n  \n  */\n  {\n    \"id\": \"Clvo8qh3\",\n    \"block\": \"[[[10,0],[14,0,\\\"fc-container\\\"],[12],[1,\\\"\\\\n  \\\"],[10,0],[14,0,\\\"fee-calculator\\\"],[12],[1,\\\"\\\\n    \\\"],[10,0],[14,0,\\\"fc-left\\\"],[12],[1,\\\"\\\\n      \\\"],[10,\\\"h1\\\"],[12],[1,[28,[35,2],[\\\"fee_calculator.title\\\"],null]],[13],[1,\\\"\\\\n\\\\n      \\\"],[10,2],[14,0,\\\"fc-intro\\\"],[12],[2,[28,[37,2],[\\\"fee_calculator.intro\\\"],null]],[13],[1,\\\"\\\\n\\\\n      \\\"],[8,[39,4],null,[[\\\"@msg\\\",\\\"@num\\\"],[[28,[37,2],[\\\"fee_calculator.price.help_msg\\\"],null],\\\"1\\\"]],[[\\\"default\\\"],[[[[1,\\\"\\\\n        \\\"],[8,[39,5],[[16,\\\"placeholder\\\",[28,[37,2],[\\\"fee_calculator.price.placeholder\\\"],null]]],[[\\\"@value\\\"],[[30,0,[\\\"price\\\"]]]],null],[1,\\\"\\\\n      \\\"]],[]]]]],[1,\\\"\\\\n\\\\n      \\\"],[8,[39,4],null,[[\\\"@msg\\\",\\\"@num\\\"],[[28,[37,2],[\\\"fee_calculator.category.help_msg\\\"],null],\\\"2\\\"]],[[\\\"default\\\"],[[[[1,\\\"\\\\n        \\\"],[8,[39,6],null,[[\\\"@content\\\",\\\"@value\\\",\\\"@onChange\\\",\\\"@options\\\"],[[30,0,[\\\"categoriesContent\\\"]],[30,0,[\\\"category\\\"]],[28,[37,7],[[28,[37,8],[[30,0,[\\\"category\\\"]]],null]],null],[28,[37,9],null,[[\\\"none\\\"],[\\\"fee_calculator.category.placeholder\\\"]]]]],null],[1,\\\"\\\\n      \\\"]],[]]]]],[1,\\\"\\\\n\\\\n      \\\"],[8,[39,4],null,[[\\\"@msg\\\",\\\"@num\\\"],[[28,[37,2],[\\\"fee_calculator.payment_type.help_msg\\\"],null],\\\"3\\\"]],[[\\\"default\\\"],[[[[1,\\\"\\\\n        \\\"],[8,[39,6],null,[[\\\"@content\\\",\\\"@value\\\",\\\"@onChange\\\",\\\"@options\\\"],[[30,0,[\\\"paymentTypesContent\\\"]],[30,0,[\\\"paymentType\\\"]],[28,[37,7],[[28,[37,8],[[30,0,[\\\"paymentType\\\"]]],null]],null],[28,[37,9],null,[[\\\"none\\\"],[\\\"fee_calculator.payment_type.placeholder\\\"]]]]],null],[1,\\\"\\\\n      \\\"]],[]]]]],[1,\\\"\\\\n\\\\n      \\\"],[8,[39,4],null,[[\\\"@msg\\\",\\\"@num\\\"],[[28,[37,2],[\\\"fee_calculator.membership_type.help_msg\\\"],null],\\\"4\\\"]],[[\\\"default\\\"],[[[[1,\\\"\\\\n        \\\"],[8,[39,6],null,[[\\\"@content\\\",\\\"@value\\\",\\\"@onChange\\\",\\\"@options\\\"],[[30,0,[\\\"membershipTypesContent\\\"]],[30,0,[\\\"membershipType\\\"]],[28,[37,7],[[28,[37,8],[[30,0,[\\\"membershipType\\\"]]],null]],null],[28,[37,9],null,[[\\\"none\\\"],[\\\"fee_calculator.membership_type.placeholder\\\"]]]]],null],[1,\\\"\\\\n      \\\"]],[]]]]],[1,\\\"\\\\n\\\\n      \\\"],[8,[39,4],null,null,[[\\\"default\\\"],[[[[1,\\\"\\\\n        \\\"],[8,[39,10],null,[[\\\"@action\\\",\\\"@label\\\",\\\"@class\\\",\\\"@disabled\\\"],[[28,[37,11],[[30,0],\\\"calculateFee\\\"],null],\\\"fee_calculator.calculate_fee\\\",\\\"btn-large btn-danger\\\",[30,0,[\\\"cantCalculateFee\\\"]]]],null],[1,\\\"\\\\n      \\\"]],[]]]]],[1,\\\"\\\\n    \\\"],[13],[1,\\\"\\\\n\\\\n    \\\"],[10,0],[15,0,[29,[\\\"fc-right \\\",[52,[30,0,[\\\"showResult\\\"]],\\\"show-result\\\"]]]],[12],[1,\\\"\\\\n\\\"],[41,[30,0,[\\\"showResult\\\"]],[[[1,\\\"        \\\"],[10,\\\"h2\\\"],[12],[1,[28,[35,2],[\\\"fee_calculator.total_profit\\\"],null]],[13],[1,\\\"\\\\n\\\\n        \\\"],[10,2],[12],[1,[28,[35,2],[\\\"fee_calculator.final_amount\\\"],null]],[13],[1,\\\"\\\\n\\\\n        \\\"],[10,0],[14,0,\\\"fc-final-amount\\\"],[12],[1,\\\"$\\\"],[1,[30,0,[\\\"finalAmount\\\"]]],[13],[1,\\\"\\\\n\\\\n        \\\"],[10,0],[14,0,\\\"fc-fee-breakdown\\\"],[12],[1,\\\"\\\\n          \\\"],[10,\\\"strong\\\"],[12],[1,[28,[35,2],[\\\"fee_calculator.fee_breakdown\\\"],null]],[13],[1,\\\"\\\\n\\\\n          \\\"],[10,0],[12],[1,[28,[35,2],[\\\"fee_calculator.swapd_fee\\\"],null]],[1,\\\": \\\"],[1,[30,0,[\\\"swapdFee\\\"]]],[1,\\\" USD\\\"],[13],[1,\\\"\\\\n\\\"],[41,[30,0,[\\\"showTransferFee\\\"]],[[[1,\\\"            \\\"],[10,0],[12],[1,[28,[35,2],[\\\"fee_calculator.transfer_fee\\\"],null]],[1,\\\": \\\"],[1,[30,0,[\\\"transferFee\\\"]]],[1,\\\" USD\\\"],[13],[1,\\\"\\\\n\\\"]],[]],null],[41,[30,0,[\\\"showTotalFees\\\"]],[[[1,\\\"            \\\"],[10,0],[12],[1,[28,[35,2],[\\\"fee_calculator.total_fees\\\"],null]],[1,\\\": \\\"],[1,[30,0,[\\\"totalFees\\\"]]],[1,\\\" USD\\\"],[13],[1,\\\"\\\\n\\\"]],[]],null],[1,\\\"        \\\"],[13],[1,\\\"\\\\n\\\\n\\\"],[41,[51,[30,0,[\\\"exceedsLimitOA\\\"]]],[[[1,\\\"          \\\"],[10,0],[14,0,\\\"fc-original-amount\\\"],[12],[1,\\\"\\\\n            \\\"],[1,[28,[35,16],[[28,[37,2],[\\\"fee_calculator.original_amount\\\"],[[\\\"amount\\\"],[[30,0,[\\\"orgAmount\\\"]]]]]],null]],[1,\\\"\\\\n          \\\"],[13],[1,\\\"\\\\n\\\"]],[]],null],[1,\\\"\\\\n\\\"],[41,[30,0,[\\\"paymentType\\\"]],[[[1,\\\"          \\\"],[10,0],[14,0,\\\"fc-payment-msg\\\"],[12],[1,\\\"\\\\n            \\\"],[2,[28,[37,2],[[28,[37,17],[\\\"fee_calculator.payment_type_messages.\\\",[30,0,[\\\"paymentType\\\"]]],null]],null]],[1,\\\"\\\\n          \\\"],[13],[1,\\\"\\\\n\\\"]],[]],null],[1,\\\"\\\\n\\\"]],[]],null],[1,\\\"    \\\"],[13],[1,\\\"\\\\n  \\\"],[13],[1,\\\"\\\\n\\\\n  \\\"],[10,0],[14,0,\\\"fc-disclaimer\\\"],[12],[1,\\\"\\\\n    \\\"],[10,\\\"h3\\\"],[12],[1,[28,[35,2],[\\\"fee_calculator.disclaimer\\\"],null]],[13],[1,\\\"\\\\n    \\\"],[10,2],[12],[2,[28,[37,2],[\\\"fee_calculator.disclaimer_msg\\\"],null]],[13],[1,\\\"\\\\n  \\\"],[13],[1,\\\"\\\\n\\\\n  \\\"],[10,0],[14,0,\\\"fc-footer\\\"],[12],[1,\\\"\\\\n    \\\"],[2,[28,[37,2],[\\\"fee_calculator.footer\\\"],null]],[1,\\\"\\\\n  \\\"],[13],[1,\\\"\\\\n\\\"],[13],[1,\\\"\\\\n\\\"]],[],false,[\\\"div\\\",\\\"h1\\\",\\\"i18n\\\",\\\"p\\\",\\\"fc-section\\\",\\\"input\\\",\\\"combo-box\\\",\\\"fn\\\",\\\"mut\\\",\\\"hash\\\",\\\"d-button\\\",\\\"action\\\",\\\"if\\\",\\\"h2\\\",\\\"strong\\\",\\\"unless\\\",\\\"html-safe\\\",\\\"concat\\\",\\\"h3\\\"]]\",\n    \"moduleName\": \"discourse/plugins/swapd-fees/discourse/templates/fees.hbs\",\n    \"isStrictMode\": false\n  });\n});"],"mappings":"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","ignoreList":[]}