{"version":3,"sources":["webpack:///./src/commoncomponents/progressButton/checkIcon.svg","webpack:///./src/commoncomponents/progressButton/progressButton.vue?62b7","webpack:///./src/commoncomponents/progressButton/progressButton.ts","webpack:///./src/commoncomponents/progressButton/progressButton.vue?8a8e","webpack:///./src/commoncomponents/progressButton/progressButton.vue?8c67","webpack:///./src/commoncomponents/progressButton/progressButton.vue","webpack:///./src/commoncomponents/progressButton/progressButton.less?9cb6"],"names":["module","exports","render","_vm","this","_h","$createElement","_c","_self","staticClass","class","disableButton","style","backgroundColor","accentColor","borderColor","attrs","buttonIndex","on","e","buttonClick","itemObj","_v","_s","buttonText","marginTop","staticRenderFns","progressButtonWidth","buttonIndexReceived","obj","from","isValidation","tempDisableButton","percent","progressButtonDelay","i","interval","setInterval","progressBar","clearInterval","apiResponseCode","completeButton","handleError","updateProgress","setProgressResposeDelay","emitMethod","setProgressBeforeRespose","newBttun","document","getElementById","STYLE","COLOR","NEUTRAL_100","background","btnSpan","color","BACKGROUND_100","reSetprogressBar","element","classList","remove","add","complateButtonProgress","val","$emit","showDelay","setTimeout","default","deep","immediate","component"],"mappings":"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","file":"js/chunk-2b9245f0.87094b55.js","sourcesContent":["module.exports = __webpack_public_path__ + \"img/checkIcon.1b8f9439.svg\";","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('button',{staticClass:\"btn-primary progressDiv application-progress\",class:_vm.disableButton ? '' : 'disable',style:({ backgroundColor: _vm.accentColor, borderColor: _vm.accentColor }),attrs:{\"id\":'progressBar' + _vm.buttonIndex,\"disabled\":!_vm.disableButton},on:{\"click\":function (e) { return _vm.buttonClick(_vm.itemObj, _vm.buttonIndex, 'click'); }}},[_c('span',{staticClass:\"btnText color-white\",attrs:{\"id\":'buttonSpan' + _vm.buttonIndex}},[_vm._v(_vm._s(_vm.buttonText))]),_c('span',{staticClass:\"check\"},[_c('em',{staticClass:\"rightIcon\"},[_c('img',{style:({ marginTop: '-15px' }),attrs:{\"src\":require(\"./checkIcon.svg\"),\"alt\":\"check\"}})])])])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import APP_CONST from '@/constants/AppConst'\nimport { Vue, Component, Prop, Watch } from 'vue-property-decorator'\n\n@Component\nexport default class ProgressButton extends Vue {\n public progressButtonWidth: number = 0\n public buttonIndexReceived = ''\n\n @Prop({ default: 'Submit' })\n buttonText!: string\n\n @Prop({ default: 600 })\n progressButtonDelay!: number\n\n @Prop({ default: 0 })\n apiResponseCode!: number\n\n @Prop({ default: '' })\n itemObj: any\n\n @Prop({ default: true })\n isValidation!: boolean\n\n @Prop({ default: false })\n showDelay!: boolean\n\n @Prop({ default: '' })\n buttonIndex!: any\n\n @Prop({ default: false })\n updateProgress!: boolean\n\n @Prop({ default: true })\n disableButton!: boolean\n\n @Prop()\n accentColor!: string\n\n @Watch('apiResponseCode', { deep: true, immediate: true })\n apiResponse(val: any) {\n if (val == 200) {\n this.apiResponseCode = val\n this.completeButton()\n } else if (val == 400) {\n this.reSetprogressBar()\n }\n }\n\n @Watch('isValidation', { deep: true, immediate: true })\n checkValidations(val: any) {\n this.buttonClick('', this.buttonIndex, 'fromWatcher')\n }\n\n buttonClick = (obj: any, buttonIndex: any, from: string) => {\n if (!this.isValidation) {\n this.progressButtonWidth = 0\n this.tempDisableButton()\n this.buttonIndexReceived = buttonIndex\n\n const percent = this.progressButtonDelay / 50\n let i = 0\n\n const interval = setInterval(() => {\n i++\n /* istanbul ignore if */\n if (i >= 80) {\n this.progressBar()\n clearInterval(interval)\n if (this.apiResponseCode == 200) {\n this.completeButton()\n } else if (this.apiResponseCode == 400) {\n clearInterval(interval)\n this.handleError(interval)\n } else {\n this.progressButtonWidth = i\n if (!this.updateProgress) {\n this.setProgressResposeDelay()\n } else {\n this.progressBar()\n }\n }\n } else {\n if (this.apiResponseCode == 200) {\n clearInterval(interval)\n this.completeButton()\n } else if (this.apiResponseCode == 400) {\n clearInterval(interval)\n this.handleError(interval)\n } else {\n this.progressButtonWidth = i\n this.progressBar()\n }\n }\n }, percent)\n }\n if (from != 'fromWatcher') {\n this.emitMethod(obj)\n }\n }\n\n handleError(interval: any) {\n clearInterval(interval)\n this.reSetprogressBar()\n }\n\n emitMethod(obj: any) {\n this.$emit('submitData', obj)\n }\n\n completeButton = () => {\n this.setProgressBeforeRespose()\n }\n\n complateButtonProgress() {\n const element: any = document.getElementById('progressBar' + this.buttonIndex)\n const style = `linear-gradient(to right, ${this.accentColor}${' ' + 100 + '%'}, ${APP_CONST.STYLE.COLOR.NEUTRAL_100}${' ' + 100 + '%'})`\n if (element) {\n element.style.background = style\n element.classList.remove('disabled')\n element.classList.add('finished')\n }\n this.progressButtonWidth = 100\n if (this.showDelay) {\n setTimeout(() => {\n this.reSetprogressBar()\n this.$emit('close')\n }, 100)\n } else {\n this.reSetprogressBar()\n this.$emit('close')\n }\n }\n\n tempDisableButton() {\n const element: any = document.getElementById('progressBar' + this.buttonIndex)\n if (element) {\n element.classList.add('disabled')\n element.classList.add('btn-secondary')\n element.classList.remove('btn-primary')\n element.classList.remove('finished')\n const style = `linear-gradient(to right, ${this.accentColor}${' ' + 0 + '%'}, ${APP_CONST.STYLE.COLOR.NEUTRAL_100}${' ' + 0 + '%'})`\n if (element.style) {\n element.style.background = style\n }\n }\n }\n\n progressBar = () => {\n const newBttun: any = document.getElementById('progressBar' + this.buttonIndex)\n const style = `linear-gradient(to right, ${this.accentColor}${' ' + this.progressButtonWidth + '%'}, ${APP_CONST.STYLE.COLOR.NEUTRAL_100}${' ' + this.progressButtonWidth + '%'})`\n if (newBttun && newBttun.style) {\n newBttun.style.background = style\n }\n const btnSpan: any = document.getElementById('buttonSpan' + this.buttonIndex)\n if (btnSpan && btnSpan.style) {\n btnSpan.style.color = APP_CONST.STYLE.COLOR.BACKGROUND_100\n }\n }\n\n reSetprogressBar = () => {\n const element: any = document.getElementById('progressBar' + this.buttonIndex)\n if (element) {\n element.classList.remove('disabled')\n element.classList.remove('finished')\n element.classList.add('btn-primary')\n element.classList.remove('btn-secondary')\n let style = ''\n if (this.disableButton) {\n style = `linear-gradient(to right, ${APP_CONST.STYLE.COLOR.NEUTRAL_100}${' ' + 0 + '%'}, ${this.accentColor}${' ' + 0 + '%'})`\n }\n element.style.background = style\n const btnSpan: any = document.getElementById('buttonSpan' + this.buttonIndex)\n if (btnSpan && btnSpan.style) {\n btnSpan.style.color = APP_CONST.STYLE.COLOR.NEUTRAL_100\n }\n }\n this.progressButtonWidth = 100\n }\n\n setProgressBeforeRespose = () => {\n const interval = setInterval(() => {\n if (this.progressButtonWidth >= 100) {\n clearInterval(interval)\n this.complateButtonProgress()\n } else {\n if (this.apiResponseCode == 200) {\n this.completeButton()\n clearInterval(interval)\n this.progressButtonWidth = 100\n } else if (this.apiResponseCode == 400) {\n clearInterval(interval)\n this.handleError(interval)\n this.progressButtonWidth = 100\n } else {\n this.progressButtonWidth = this.progressButtonWidth + 5\n this.progressBar()\n }\n }\n }, 200)\n }\n\n setProgressResposeDelay = () => {\n const interval = setInterval(() => {\n if (this.progressButtonWidth >= 96) {\n if (this.apiResponseCode == 200) {\n clearInterval(interval)\n this.completeButton()\n } else if (this.apiResponseCode == 400) {\n clearInterval(interval)\n this.handleError(interval)\n } else {\n this.progressBar()\n }\n } else {\n if (this.apiResponseCode == 200) {\n clearInterval(interval)\n this.completeButton()\n } else if (this.apiResponseCode == 400) {\n clearInterval(interval)\n this.handleError(interval)\n } else {\n this.progressButtonWidth = this.progressButtonWidth + 0.5\n this.progressBar()\n }\n }\n }, 1000)\n }\n}\n","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport ProgressButton from '@/commoncomponents/progressButton/progressButton'\nexport default ProgressButton\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--13-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./progressButton.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--13-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./progressButton.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./progressButton.vue?vue&type=template&id=1192b24d&scoped=true&\"\nimport script from \"./progressButton.vue?vue&type=script&lang=ts&\"\nexport * from \"./progressButton.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./progressButton.less?vue&type=style&index=0&id=1192b24d&lang=less&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"1192b24d\",\n null\n \n)\n\nexport default component.exports","import mod from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--10-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--10-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--10-oneOf-1-2!../../../node_modules/less-loader/dist/cjs.js??ref--10-oneOf-1-3!./progressButton.less?vue&type=style&index=0&id=1192b24d&lang=less&scoped=true&\"; export default mod; export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--10-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--10-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--10-oneOf-1-2!../../../node_modules/less-loader/dist/cjs.js??ref--10-oneOf-1-3!./progressButton.less?vue&type=style&index=0&id=1192b24d&lang=less&scoped=true&\""],"sourceRoot":""}