{"version":3,"sources":["webpack:///./src/mixins/public-cancel.mixin.ts","webpack:///./src/assets/logo-white.png","webpack:///./src/components/public/view-access.component.vue?d572","webpack:///./src/components/public/view-access.component.vue","webpack:///./src/components/public/view-access.component.vue?7bf4","webpack:///./src/components/public/view-access.component.vue?80dc","webpack:///./node_modules/vue-recaptcha/dist/vue-recaptcha.es.js","webpack:///./src/mixins/public-get-tag.mixin.ts"],"names":["customerModule","registeredTagModule","PublicCancelMixin","resetStateAction","this","$router","replace","name","public","scan","module","exports","render","_vm","_h","$createElement","_c","_self","staticClass","attrs","_v","model","value","callback","$$v","acceptedTerms","expression","disableClick","on","onAcceptClick","showLoading","showAuthLoading","_e","onCancelClick","ref","siteKey","onVerify","staticRenderFns","authModule","store","ViewAccessComponent","$route","params","tagCode","errors","getAllErrorMessages","$toasted","error","join","$refs","invisibleRecaptcha","execute","onCancel","acceptTermsAction","customer","deep","components","VueRecaptcha","computed","component","_extends","Object","assign","target","i","arguments","length","source","key","prototype","hasOwnProperty","call","apply","defer","state","callbacks","resolve","val","len","then","cb","push","deferred","resolved","promise","ownProp","createRecaptcha","notify","wait","ele","options","window","grecaptcha","reset","widgetId","assertLoaded","checkRecaptchaLoad","Error","recaptcha","vueRecaptchaApiLoaded","props","sitekey","type","String","required","theme","badge","size","tabindex","loadRecaptchaScript","Boolean","recaptchaScriptId","recaptchaHost","language","beforeMount","document","getElementById","script","createElement","id","src","async","head","appendChild","mounted","_this","opts","$props","emitVerify","emitExpired","emitError","container","$slots","$el","children","$widgetId","$emit","methods","response","h","PublicGetTagMixin","code","isPublic","isTagRegisteredAction","errorResponse","doesTagExist","registered","completed","getTagByCodeAction","currentRegisteredTag","viewAccess","veterinarian","editCustomer","customerId","$bvModal","show","tagMatchAction","register","createRegistration"],"mappings":"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","file":"js/chunk-410ecd67.d0f54048.js","sourcesContent":["import { Component, Vue } from 'vue-property-decorator';\nimport CustomerModule from '@/store/modules/customer.module';\nimport RegisteredTagModule from '@/store/modules/registered-tag.module';\nimport { getModule } from 'vuex-module-decorators';\nimport store from '@/store';\nimport { routeName } from '@/constants/route.constants';\n\nconst customerModule: CustomerModule = getModule(CustomerModule, store);\n\nconst registeredTagModule: RegisteredTagModule = getModule(\n RegisteredTagModule,\n store\n);\n\n@Component\nexport default class PublicCancelMixin extends Vue {\n public async onCancel(): Promise {\n // allow these to go without awaiting\n customerModule.resetStateAction();\n registeredTagModule.resetStateAction();\n\n this.$router.replace({ name: routeName.public.scan });\n }\n}\n","module.exports = __webpack_public_path__ + \"img/logo-white.d972e702.png\";","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('b-row',{staticClass:\"pt-3 darkMode\"},[_c('b-col',[_c('b-card',{attrs:{\"text-variant\":\"white\",\"bg-variant\":\"secondary\",\"border-variant\":\"secondary\"}},[_c('img',{staticClass:\"mb-3\",attrs:{\"src\":require(\"@/assets/logo-white.png\"),\"alt\":\"Paw Finders Logo\",\"width\":\"150\"}}),_c('hr',{staticClass:\"mt-0 inverse\"}),_c('b-card-title',{staticClass:\"text-white\"},[_vm._v(\" Terms of Use \")]),_c('b-row',[_c('b-col',[_c('b-form-group',{staticClass:\"mb-4 mt-2\"},[_c('b-form-checkbox',{attrs:{\"value\":true,\"unchecked-value\":false,\"switch\":\"\"},model:{value:(_vm.acceptedTerms),callback:function ($$v) {_vm.acceptedTerms=$$v},expression:\"acceptedTerms\"}},[_c('div',{staticClass:\"font-weight-lighter\"},[_vm._v(\" I agree to use the information provided for the sole purpose of contacting the pet owner. \")])])],1),_c('div',{staticClass:\"d-flex flex-column flex-md-row justify-content-between mb-3\"},[_c('b-button',{attrs:{\"disabled\":!_vm.acceptedTerms || _vm.disableClick,\"variant\":\"outline-light\"},on:{\"click\":_vm.onAcceptClick}},[_vm._v(\" Accept Terms of Use \"),(_vm.showLoading || _vm.showAuthLoading)?_c('b-icon-arrow-clockwise',{attrs:{\"animation\":\"spin\"}}):_vm._e()],1)],1)],1)],1),_c('small',[_c('span',{staticClass:\"small\"},[_vm._v(\"Not what you expected?\")]),_c('b-link',{staticClass:\"small\",on:{\"click\":_vm.onCancelClick}},[_vm._v(\" Cancel and go back. \")])],1)],1)],1)],1),_c('VueRecaptcha',{ref:\"invisibleRecaptcha\",attrs:{\"size\":\"invisible\",\"sitekey\":_vm.siteKey},on:{\"verify\":_vm.onVerify}})],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { Component, Watch } from 'vue-property-decorator';\nimport { mixins } from 'vue-class-component';\nimport AuthenticationModule, {\n AUTHENTICATION_MODULE_NAME\n} from '@/store/modules/authentication.module';\nimport { REGISTERED_TAG_MODULE_NAME } from '@/store/modules/registered-tag.module';\nimport store from '@/store';\nimport { getModule } from 'vuex-module-decorators';\nimport PublicGetTagMixin from '@/mixins/public-get-tag.mixin';\nimport { mapState } from 'vuex';\nimport { BaseAPIErrorModel } from '@/models/DTO/base-api-error.model';\nimport VueRecaptcha from 'vue-recaptcha';\nimport PublicCancelMixin from '@/mixins/public-cancel.mixin';\nimport { routeName } from '@/constants/route.constants';\n\nconst authModule: AuthenticationModule = getModule(AuthenticationModule, store);\n\n@Component({\n components: {\n VueRecaptcha\n },\n computed: {\n ...mapState(REGISTERED_TAG_MODULE_NAME, ['showLoading', 'errorResponse']),\n ...mapState(AUTHENTICATION_MODULE_NAME, {\n showAuthLoading: 'showLoading'\n }),\n siteKey(): string {\n return process.env.VUE_APP_RECAPTCHA_SITE_KEY;\n }\n }\n})\nexport default class ViewAccessComponent extends mixins(\n PublicGetTagMixin,\n PublicCancelMixin\n) {\n public showLoading: boolean;\n public showAuthLoading: boolean;\n //public errorResponse: BaseAPIErrorModel | null;\n public acceptedTerms = true;\n public disableClick = false;\n\n public $refs: {\n invisibleRecaptcha: HTMLFormElement;\n };\n\n public get tagCode(): string {\n return this.$route.params.tagCode;\n }\n\n @Watch('errorResponse', { deep: true })\n private onErrorResponseChanged(value: BaseAPIErrorModel) {\n if (value) {\n const errors = value.getAllErrorMessages();\n return this.$toasted.error(errors.join());\n }\n }\n\n public async onAcceptClick() {\n this.$refs.invisibleRecaptcha.execute();\n }\n\n public onCancelClick() {\n this.onCancel();\n }\n\n public async onVerify() {\n this.disableClick = true;\n\n await authModule.acceptTermsAction(this.acceptedTerms);\n //await this.getTagByCode(this.tagCode);\n\n await this.$router.replace({\n name: routeName.public.customer\n });\n\n this.disableClick = false;\n }\n}\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--14-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./view-access.component.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--14-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./view-access.component.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./view-access.component.vue?vue&type=template&id=41671db2&\"\nimport script from \"./view-access.component.vue?vue&type=script&lang=ts&\"\nexport * from \"./view-access.component.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","function _extends() {\n _extends = Object.assign || function (target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i];\n\n for (var key in source) {\n if (Object.prototype.hasOwnProperty.call(source, key)) {\n target[key] = source[key];\n }\n }\n }\n\n return target;\n };\n\n return _extends.apply(this, arguments);\n}\n\nvar defer = function defer() {\n var state = false; // Resolved or not\n\n var callbacks = [];\n\n var resolve = function resolve(val) {\n if (state) {\n return;\n }\n\n state = true;\n\n for (var i = 0, len = callbacks.length; i < len; i++) {\n callbacks[i](val);\n }\n };\n\n var then = function then(cb) {\n if (!state) {\n callbacks.push(cb);\n return;\n }\n\n cb();\n };\n\n var deferred = {\n resolved: function resolved() {\n return state;\n },\n resolve: resolve,\n promise: {\n then: then\n }\n };\n return deferred;\n};\n\nvar ownProp = Object.prototype.hasOwnProperty;\nfunction createRecaptcha() {\n var deferred = defer();\n return {\n notify: function notify() {\n deferred.resolve();\n },\n wait: function wait() {\n return deferred.promise;\n },\n render: function render(ele, options, cb) {\n this.wait().then(function () {\n cb(window.grecaptcha.render(ele, options));\n });\n },\n reset: function reset(widgetId) {\n if (typeof widgetId === 'undefined') {\n return;\n }\n\n this.assertLoaded();\n this.wait().then(function () {\n return window.grecaptcha.reset(widgetId);\n });\n },\n execute: function execute(widgetId) {\n if (typeof widgetId === 'undefined') {\n return;\n }\n\n this.assertLoaded();\n this.wait().then(function () {\n return window.grecaptcha.execute(widgetId);\n });\n },\n checkRecaptchaLoad: function checkRecaptchaLoad() {\n if (ownProp.call(window, 'grecaptcha') && ownProp.call(window.grecaptcha, 'render')) {\n this.notify();\n }\n },\n assertLoaded: function assertLoaded() {\n if (!deferred.resolved()) {\n throw new Error('ReCAPTCHA has not been loaded');\n }\n }\n };\n}\nvar recaptcha = createRecaptcha();\n\nif (typeof window !== 'undefined') {\n window.vueRecaptchaApiLoaded = recaptcha.notify;\n}\n\nvar VueRecaptcha = {\n name: 'VueRecaptcha',\n props: {\n sitekey: {\n type: String,\n required: true\n },\n theme: {\n type: String\n },\n badge: {\n type: String\n },\n type: {\n type: String\n },\n size: {\n type: String\n },\n tabindex: {\n type: String\n },\n loadRecaptchaScript: {\n type: Boolean,\n \"default\": false\n },\n recaptchaScriptId: {\n type: String,\n \"default\": '__RECAPTCHA_SCRIPT'\n },\n recaptchaHost: {\n type: String,\n \"default\": 'www.google.com'\n },\n language: {\n type: String,\n \"default\": ''\n }\n },\n beforeMount: function beforeMount() {\n if (this.loadRecaptchaScript) {\n if (!document.getElementById(this.recaptchaScriptId)) {\n // Note: vueRecaptchaApiLoaded load callback name is per the latest documentation\n var script = document.createElement('script');\n script.id = this.recaptchaScriptId;\n script.src = \"https://\" + this.recaptchaHost + \"/recaptcha/api.js?onload=vueRecaptchaApiLoaded&render=explicit&hl=\" + this.language;\n script.async = true;\n script.defer = true;\n document.head.appendChild(script);\n }\n }\n },\n mounted: function mounted() {\n var _this = this;\n\n recaptcha.checkRecaptchaLoad();\n\n var opts = _extends({}, this.$props, {\n callback: this.emitVerify,\n 'expired-callback': this.emitExpired,\n 'error-callback': this.emitError\n });\n\n var container = this.$slots[\"default\"] ? this.$el.children[0] : this.$el;\n recaptcha.render(container, opts, function (id) {\n _this.$widgetId = id;\n\n _this.$emit('render', id);\n });\n },\n methods: {\n reset: function reset() {\n recaptcha.reset(this.$widgetId);\n },\n execute: function execute() {\n recaptcha.execute(this.$widgetId);\n },\n emitVerify: function emitVerify(response) {\n this.$emit('verify', response);\n },\n emitExpired: function emitExpired() {\n this.$emit('expired');\n },\n emitError: function emitError() {\n this.$emit('error');\n }\n },\n render: function render(h) {\n return h('div', {}, this.$slots[\"default\"]);\n }\n};\n\nexport default VueRecaptcha;\n","import { Component, Vue } from 'vue-property-decorator';\nimport RegisteredTagModule, {\n REGISTERED_TAG_MODULE_NAME\n} from '@/store/modules/registered-tag.module';\nimport { getModule } from 'vuex-module-decorators';\nimport store from '@/store';\nimport { mapState } from 'vuex';\nimport { BaseAPIErrorModel } from '@/models/DTO/base-api-error.model';\nimport { routeName } from '@/constants/route.constants';\nimport { CheckIfTagExistsResponse } from '@/models/DTO/registered-tag/check-if-tag-exists-response.model';\nimport { RegisteredTag } from '@/models/DTO/registered-tag/registered-tag.model';\nimport AuthenticationModule from '@/store/modules/authentication.module';\n\n@Component({\n computed: {\n ...mapState(REGISTERED_TAG_MODULE_NAME, [\n 'doesTagExist',\n 'currentRegisteredTag',\n 'errorResponse'\n ]),\n page(): string | null | undefined {\n return this.$route.name;\n }\n }\n})\nexport default class PublicGetTagMixin extends Vue {\n public doesTagExist: CheckIfTagExistsResponse | null;\n public currentRegisteredTag: RegisteredTag | null;\n public errorResponse: BaseAPIErrorModel | null;\n public page: string | null | undefined;\n\n /**\n * Used by both public and vet portal.\n * @param code\n * @param isPublic Defaults to true.\n */\n public async getTagByCode(code: string, isPublic = true): Promise {\n const registeredTagModule: RegisteredTagModule = getModule(\n RegisteredTagModule,\n store\n );\n\n const authModule: AuthenticationModule = getModule(\n AuthenticationModule,\n store\n );\n\n await registeredTagModule.isTagRegisteredAction(code);\n\n if (!this.errorResponse && this.doesTagExist) {\n if (this.doesTagExist.registered && this.doesTagExist.completed) {\n await registeredTagModule.getTagByCodeAction(code);\n\n if (\n !this.errorResponse &&\n this.currentRegisteredTag &&\n this.currentRegisteredTag.customer\n ) {\n if (isPublic) {\n this.$router.replace({\n name: routeName.public.viewAccess,\n params: {\n tagCode: code\n }\n });\n } else {\n this.$router.replace({\n name: routeName.veterinarian.editCustomer,\n params: {\n tagCode: code,\n customerId: this.currentRegisteredTag.customer?.id ?? ''\n }\n });\n }\n }\n } else if (this.doesTagExist.registered && !this.doesTagExist.completed) {\n this.$bvModal.show('modal-tag-incomplete');\n } else {\n // this.$bvModal.show('modal-no-match');\n await authModule.tagMatchAction(false);\n\n if (isPublic) {\n this.$router.replace({\n name: routeName.public.register,\n params: {\n tagCode: code\n }\n });\n } else {\n this.$router.replace({\n name: routeName.veterinarian.createRegistration,\n params: {\n tagCode: code\n }\n });\n }\n }\n }\n }\n}\n"],"sourceRoot":""}