{"version":3,"sources":["webpack:///./src/Payment/PolledPaymentCompletion.vue?42bc","webpack:///./src/Payment/PolledPaymentCompletion.vue?af60","webpack:///./src/Payment/PolledPaymentCompletion.vue?9bde","webpack:///./src/Payment/PolledPaymentCompletion.vue","webpack:///./src/Payment/PolledPaymentCompletionMixin.ts","webpack:///./src/Payment/Enums.ts","webpack:///./src/Citation/Payment/CitationPaypalCompletion.vue?5901","webpack:///./src/Citation/Payment/CitationPaypalCompletion.vue?798e","webpack:///./src/Citation/Payment/CitationPaypalCompletion.vue?49e2","webpack:///./src/Citation/Payment/CitationPaypalCompletion.vue"],"names":["render","_vm","this","_h","$createElement","_c","_self","staticClass","error","_v","_s","$t","staticRenderFns","retryCount","component","LocationBasedMixin","extend","props","transactionId","type","String","required","completionRouteName","beforeMount","awaitCompletion","data","i18nPrefix","loading","computed","pollUrl","location","methods","poll","VatsAPI","get","headers","accept","params","waitCount","result","success","i","$router","push","name","responseId","components","PolledPaymentCompletion","PaymentProcessor","PaymentMethod","PaymentSource","HostedPaymentType","IFrameType","E_XactPaymentType","attrs","PolledPaymentCompletionMixin"],"mappings":"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","file":"js/chunk-1212c087.00ce8c8a.js","sourcesContent":["var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"fluid-container\"},[_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col\"},[(!_vm.error)?_c('div',{staticClass:\"wait-message\"},[_vm._v(\"\\n \"+_vm._s(_vm.$t(((this.i18nPrefix) + \".waitMessage\")))+\" \"),_c('i',{staticClass:\"fa fa-spinner fa-spin\"})]):_c('div',{staticClass:\"error-message\"},[_vm._v(\"\\n \"+_vm._s(_vm.$t(((this.i18nPrefix) + \".errorMessage\")))+\"\\n \")])])])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport mixins from 'vue-typed-mixins';\nimport LocationBasedMixin from '@/Shared/LocationBasedMixin';\nimport VatsAPI from '@/Shared/VatsAPI';\n\nconst retryCount = 3;\n\n// For dumb reasons, we must wait for PayPal's payment to be completed in our system\n// Even after the user has navigated back to our site\n// This component calls an endpoint that waits for the completion and then directs\n// us to the normal completion page.\nconst component = mixins(LocationBasedMixin).extend({\n props: {\n transactionId: {\n type: String,\n required: true,\n },\n completionRouteName: {\n type: String,\n required: true,\n }\n },\n beforeMount() {\n this.awaitCompletion();\n },\n data() {\n return {\n i18nPrefix: 'payment.paypalCompletion',\n loading: false,\n error: false,\n };\n },\n computed: {\n pollUrl(): string {\n return `${this.location}/Payments/IsCompleted`;\n }\n },\n methods: {\n async poll() {\n const result = await VatsAPI.get(this.pollUrl, {\n headers: {\n accept: 'application/json',\n },\n params: {\n transactionId: this.transactionId,\n waitCount: 20\n }\n });\n\n return result;\n },\n async awaitCompletion() {\n this.loading = true;\n let result = null;\n let success = false;\n\n for (let i = 0; i < retryCount && !success; i++) {\n try {\n result = await this.poll();\n success = true;\n }\n catch (e) {\n success = false;\n }\n }\n\n this.loading = false;\n\n if (success) {\n await this.$router.push({\n name: this.completionRouteName,\n params: { responseId: result!.data as any }\n });\n }\n else {\n this.error = true;\n }\n }\n }\n});\n\nexport default component;\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!./PolledPaymentCompletion.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!./PolledPaymentCompletion.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./PolledPaymentCompletion.vue?vue&type=template&id=5ba7abba&\"\nimport script from \"./PolledPaymentCompletion.vue?vue&type=script&lang=ts&\"\nexport * from \"./PolledPaymentCompletion.vue?vue&type=script&lang=ts&\"\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 null,\n null\n \n)\n\nexport default component.exports","\r\nimport Vue from 'vue';\r\nimport PolledPaymentCompletion from '@/Payment/PolledPaymentCompletion.vue';\r\nimport { PaymentProcessor } from '@/Payment/Enums';\r\n\r\nconst component = Vue.extend({\r\n components: {\r\n PolledPaymentCompletion\r\n },\r\n data() {\r\n return {\r\n PaymentProcessor\r\n };\r\n }\r\n});\r\n\r\nexport default component;\r\n","export enum PaymentProcessor {\r\n PAYPAL,\r\n VANTIV_HOSTED,\r\n HEARTLAND,\r\n E_XACT,\r\n VANTIV\r\n}\r\n\r\nexport enum PaymentMethod {\r\n Cash = 'CSH',\r\n Check = 'CHK',\r\n Card = 'HST',\r\n MoneyOrder = 'MON',\r\n Other = 'OTH'\r\n}\r\n\r\nexport enum PaymentSource {\r\n Online = 'ONL',\r\n WalkIn = 'WLK',\r\n CallIn = 'CAL',\r\n MailIn = 'MAI',\r\n}\r\n\r\nexport enum HostedPaymentType {\r\n Form,\r\n IFrame,\r\n UserEntry\r\n}\r\n\r\nexport enum IFrameType {\r\n Vantiv\r\n}\r\n\r\nexport enum E_XactPaymentType {\r\n Citation = 1,\r\n Other = 3\r\n}\r\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('PolledPaymentCompletion',{attrs:{\"location\":_vm.location,\"transactionId\":_vm.transactionId,\"completionRouteName\":'citationPaymentCompletion'}})}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\nimport mixins from 'vue-typed-mixins';\nimport PolledPaymentCompletionMixin from '@/Payment/PolledPaymentCompletionMixin';\nimport LocationBasedMixin from '@/Shared/LocationBasedMixin';\nimport { PaymentProcessor } from '@/Payment/Enums';\n\nconst component = mixins(LocationBasedMixin, PolledPaymentCompletionMixin).extend({\n props: {\n transactionId: {\n type: String,\n required: true\n }\n }\n});\n\nexport default component;\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!./CitationPaypalCompletion.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!./CitationPaypalCompletion.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./CitationPaypalCompletion.vue?vue&type=template&id=46b32546&\"\nimport script from \"./CitationPaypalCompletion.vue?vue&type=script&lang=ts&\"\nexport * from \"./CitationPaypalCompletion.vue?vue&type=script&lang=ts&\"\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 null,\n null\n \n)\n\nexport default component.exports"],"sourceRoot":""}