{"version":3,"file":"range_controller-B0O4p2zD.js","sources":["../../../app/javascript/controllers/payments/range_controller.js"],"sourcesContent":["import ApplicationController from '@/controllers/application_controller'\n\nimport { useNumberHelpers } from '@/controllers/mixins/useNumberHelpers'\n\nexport default class extends ApplicationController {\n static values = {\n range: Number,\n min: { type: Number, default: 500 },\n max: { type: Number, default: 500000 },\n dynamic: { type: Boolean, default: false },\n step: { type: Number, default: 2500 },\n }\n\n static targets = [\n 'minButton',\n 'maxButton',\n 'included',\n 'count',\n 'input',\n ]\n\n connect() {\n useNumberHelpers(this)\n super.connect()\n }\n\n onRangeChange(dispatch = true) {\n this.rangeValue = parseInt(this.inputTarget.value)\n this.countTarget.innerText = this.numberWithDelimiter(this.rangeValue)\n\n this.dispatch('change', {\n detail: this.rangeValue,\n })\n }\n\n moveToMin(dispatch = true) {\n this.inputTarget.value = this.minValue\n this.onRangeChange(dispatch)\n }\n\n moveToMax() {\n this.inputTarget.value = this.maxValue\n this.onRangeChange()\n }\n\n updateLimits({ detail: newMin }) {\n this.minValue = newMin\n this.minButtonTarget.innerText = this.numberWithDelimiter(newMin)\n\n this.inputTarget.min = newMin\n this.moveToMin(false)\n }\n\n rangeValueChanged() {\n if(this.rangeValue === this.minValue) {\n this.show(this.includedTarget)\n } else {\n this.hide(this.includedTarget)\n }\n\n if(!this.dynamicValue) return\n\n const percentage = this.rangeValue / this.maxValue\n\n if(percentage < 0.33) {\n this.stepValue = 2500\n } else if(percentage < 0.66) {\n this.stepValue = 5000\n } else {\n this.stepValue = 10000\n }\n }\n\n stepValueChanged() {\n this.inputTarget.step = this.stepValue\n }\n}\n"],"names":["range_controller","ApplicationController","useNumberHelpers","dispatch","newMin","percentage","__publicField"],"mappings":"8NAIe,MAAKA,UAASC,CAAsB,CAiBjD,SAAU,CACRC,EAAiB,IAAI,EACrB,MAAM,QAAO,CACjB,CAEE,cAAcC,EAAW,GAAM,CAC7B,KAAK,WAAa,SAAS,KAAK,YAAY,KAAK,EACjD,KAAK,YAAY,UAAY,KAAK,oBAAoB,KAAK,UAAU,EAErE,KAAK,SAAS,SAAU,CACtB,OAAQ,KAAK,UACd,CAAA,CACL,CAEE,UAAUA,EAAW,GAAM,CACzB,KAAK,YAAY,MAAQ,KAAK,SAC9B,KAAK,cAAcA,CAAQ,CAC/B,CAEE,WAAY,CACV,KAAK,YAAY,MAAQ,KAAK,SAC9B,KAAK,cAAa,CACtB,CAEE,aAAa,CAAE,OAAQC,GAAU,CAC/B,KAAK,SAAWA,EAChB,KAAK,gBAAgB,UAAY,KAAK,oBAAoBA,CAAM,EAEhE,KAAK,YAAY,IAAMA,EACvB,KAAK,UAAU,EAAK,CACxB,CAEE,mBAAoB,CAOlB,GANG,KAAK,aAAe,KAAK,SAC1B,KAAK,KAAK,KAAK,cAAc,EAE7B,KAAK,KAAK,KAAK,cAAc,EAG5B,CAAC,KAAK,aAAc,OAEvB,MAAMC,EAAa,KAAK,WAAa,KAAK,SAEvCA,EAAa,IACd,KAAK,UAAY,KACTA,EAAa,IACrB,KAAK,UAAY,IAEjB,KAAK,UAAY,GAEvB,CAEE,kBAAmB,CACjB,KAAK,YAAY,KAAO,KAAK,SACjC,CACA,CAvEEC,EADkBN,EACX,SAAS,CACd,MAAO,OACP,IAAK,CAAE,KAAM,OAAQ,QAAS,GAAK,EACnC,IAAK,CAAE,KAAM,OAAQ,QAAS,GAAQ,EACtC,QAAS,CAAE,KAAM,QAAS,QAAS,EAAO,EAC1C,KAAM,CAAE,KAAM,OAAQ,QAAS,IAAM,CACzC,GAEEM,EATkBN,EASX,UAAU,CACf,YACA,YACA,WACA,QACA,OACJ"}