{"version":3,"file":"7329.js?id=783c67351614f00f","mappings":"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","sources":["webpack://website-js/./src/components/TonerGuide.vue?54de","webpack://website-js/./src/components/TonerGuide.vue","webpack://website-js/./src/services/TonerGuideService.ts","webpack://website-js/./src/store/modules/TonerGuideModule.ts","webpack://website-js/./src/components/TonerGuide.vue?7878","webpack://website-js/./src/components/TonerGuide.vue?d467","webpack://website-js/./src/components/TonerGuide.vue?ce9a","webpack://website-js/./src/components/TonerGuide.vue?8242"],"sourcesContent":["// Imports\nimport ___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___ from \"../../node_modules/@vue/cli-service/node_modules/css-loader/dist/runtime/noSourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../node_modules/@vue/cli-service/node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_NO_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `.divider[data-v-3f1b49ae]{height:auto;margin:0}.toner-guide button[data-v-3f1b49ae],.toner-guide input[data-v-3f1b49ae],.toner-guide select[data-v-3f1b49ae]{background:#fff;border-color:#0003!important}`, \"\"]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return (_vm.translationsReady)?_c('div',{staticClass:\"toner-guide\"},[_c('div',{staticClass:\"cbx-border uk-padding\",staticStyle:{\"background\":\"#fafafa\"}},[_c('form',{attrs:{\"uk-grid\":\"\"},on:{\"submit\":function($event){$event.preventDefault();return _vm.submit()}}},[_c('div',{staticClass:\"uk-width-3-4@s uk-flex-inline\"},[(_vm.form.brands.length > 0)?_c('select',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.form.selectedBrand),expression:\"form.selectedBrand\"}],staticClass:\"uk-select uk-width-1-2@s\",on:{\"change\":function($event){var $$selectedVal = Array.prototype.filter.call($event.target.options,function(o){return o.selected}).map(function(o){var val = \"_value\" in o ? o._value : o.value;return val}); _vm.$set(_vm.form, \"selectedBrand\", $event.target.multiple ? $$selectedVal : $$selectedVal[0])}}},[_c('option',{attrs:{\"disabled\":\"\",\"value\":\"\"},domProps:{\"selected\":!_vm.form.selectedBrand}},[_vm._v(_vm._s(_vm.$t('toner-guide.select-brand', ['Select brand'])))]),_vm._l((_vm.form.brands),function(brand,index){return _c('option',{key:index},[_vm._v(_vm._s(brand))])})],2):_vm._e(),(_vm.form.models.length)?[_c('select',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.form.selectedModel),expression:\"form.selectedModel\"}],staticClass:\"uk-select uk-width-1-2@s uk-margin-left uk-margin-right\",attrs:{\"disabled\":_vm.form.models.length <= 0},on:{\"change\":function($event){var $$selectedVal = Array.prototype.filter.call($event.target.options,function(o){return o.selected}).map(function(o){var val = \"_value\" in o ? o._value : o.value;return val}); _vm.$set(_vm.form, \"selectedModel\", $event.target.multiple ? $$selectedVal : $$selectedVal[0])}}},[_c('option',{attrs:{\"selected\":\"\",\"disabled\":\"\",\"value\":\"\"}},[_vm._v(_vm._s(_vm.$t('toner-guide.select-model', ['Select model'])))]),_vm._l((_vm.form.models),function(model,index){return _c('option',{key:index},[_vm._v(_vm._s(model))])})],2)]:_vm._e(),_c('hr',{staticClass:\"uk-divider-vertical divider\"})],2),_c('div',{staticClass:\"uk-width-1-4@s uk-flex-inline\"},[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.form.searchQuery),expression:\"form.searchQuery\"}],staticClass:\"uk-input\",attrs:{\"type\":\"text\"},domProps:{\"value\":(_vm.form.searchQuery)},on:{\"input\":function($event){if($event.target.composing)return;_vm.$set(_vm.form, \"searchQuery\", $event.target.value)}}}),_c('button',{staticClass:\"uk-button uk-button-default uk-margin-left\",attrs:{\"disabled\":!_vm.form.searchQuery}},[_vm._v(\" \"+_vm._s(_vm.$t('toner-guide.search-button', ['Search']))+\" \")])])])]),(_vm.isLoading)?_c('div',{staticClass:\"uk-width-1-1 uk-text-center\",attrs:{\"uk-spinner\":\"ratio: 2\"}}):_c('div',[_c('product-list',{attrs:{\"productIds\":_vm.form.productIds,\"full-width\":true,\"as-section\":false,\"no-results-message\":_vm.noResultsMessage}})],1)]):_vm._e()\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import axios, { AxiosResponse } from 'axios';\r\nimport { TonerGuideBrandList, TonerGuideModelList, TonerGuideModelListBySearch, TonerGuideProductList, TonerGuideProductListBySearch } from '@/models/TonerGuide';\r\n\r\nexport default class TonerGuideService {\r\n\r\n    private profileId: string = (window as any).CbxApiContextKey;\r\n    private endpoint: string;\r\n\r\n    constructor(args: any = {}) {\r\n        if (args.profileId)\r\n            this.profileId = args.profileId;\r\n        this.endpoint = `/contextapi/${this.profileId}/v1/tonerguide`;\r\n    }\r\n\r\n    public async getBrandList(): Promise<TonerGuideBrandList> {\r\n        try {\r\n            const res: AxiosResponse<TonerGuideBrandList> = await axios.get(`${this.endpoint}/getbrandlist`);\r\n            return res.data;\r\n        } catch (e) {\r\n            console.log(e);\r\n        }\r\n    }\r\n\r\n    public async getModelList(brand: string): Promise<TonerGuideModelList> {\r\n        try {\r\n            const res: AxiosResponse<TonerGuideModelList> = await axios.get(`${this.endpoint}/getmodellist?brand=${brand}`);\r\n            return res.data;\r\n        } catch (e) {\r\n            console.log(e);\r\n        }\r\n    }\r\n\r\n    public async getProductList(brand: string, model: string): Promise<TonerGuideProductList> {\r\n        try {\r\n            const res: AxiosResponse<TonerGuideProductList> = await axios.get(`${this.endpoint}/getproductlist?brand=${brand}&model=${model}`);\r\n            return res.data;\r\n        } catch (e) {\r\n            console.log(e);\r\n        }\r\n    }\r\n\r\n    public async getModelListBySearch(query: string, includeOemAndEan: boolean = false): Promise<TonerGuideModelListBySearch> {\r\n        try {\r\n            const res: AxiosResponse<TonerGuideModelListBySearch> = await axios.get(`${this.endpoint}/getmodellistbysearch?query=${query}&includeOemAndEan=${includeOemAndEan}`);\r\n            return res.data;\r\n        } catch (e) {\r\n            console.log(e);\r\n        }\r\n    }\r\n\r\n    public async getProductListBySearch(query: string, includeOemAndEan: boolean = false): Promise<TonerGuideProductListBySearch> {\r\n        try {\r\n            const res: AxiosResponse<TonerGuideProductListBySearch> = await axios.get(`${this.endpoint}/getproductlistbysearch?query=${query}&includeOemAndEan=${includeOemAndEan}`);\r\n            return res.data;\r\n        } catch (e) {\r\n            console.log(e);\r\n        }\r\n    }\r\n}\r\n","import { Module, VuexModule, Mutation, getModule, Action } from 'vuex-module-decorators';\r\nimport store from '@/store';\r\nimport TonerGuideService from '@/services/TonerGuideService';\r\nimport { TonerGuideForm, TonerGuideProductList } from '@/models/TonerGuide';\r\nimport LoadingModule from './LoadingModule';\r\n\r\n@Module({\r\n    store,\r\n    dynamic: true,\r\n    name: 'tonerguide',\r\n    namespaced: true,\r\n})\r\nclass TonerGuideModule extends VuexModule {\r\n\r\n    private tonerGuideService: TonerGuideService = new TonerGuideService();\r\n    \r\n    private form: TonerGuideForm = {\r\n        brands: [],\r\n        models: [],\r\n        productIds: [],\r\n        selectedBrand: '',\r\n        selectedModel: '',\r\n        searchQuery: ''\r\n    };\r\n\r\n    get FORM(): TonerGuideForm {\r\n        return this.form;\r\n    }\r\n\r\n    @Action({ commit: 'SET_BRANDLIST' })\r\n    public async GET_BRANDLIST() {\r\n        LoadingModule.SET_LOADING(true);\r\n        const result = await this.tonerGuideService.getBrandList();\r\n        return result.brands ?? [];\r\n    }\r\n    @Mutation\r\n    public SET_BRANDLIST(brands: string[]) {\r\n        this.form.brands = brands;\r\n        this.form.selectedBrand = '';\r\n        this.form.searchQuery = '';\r\n        LoadingModule.SET_LOADING(false);\r\n    }\r\n\r\n    @Action({ commit: 'SET_MODELS' })\r\n    public async GET_MODELS() {\r\n        if (!this.form.selectedBrand)\r\n            return [];  \r\n\r\n        LoadingModule.SET_LOADING(true);\r\n        const result = await this.tonerGuideService.getModelList(this.form.selectedBrand);\r\n        return result.models ?? [];\r\n    }\r\n    @Mutation\r\n    public SET_MODELS(models: string[]) {\r\n        this.form.models = models;\r\n        this.form.selectedModel = '';\r\n        this.form.searchQuery = '';\r\n        this.form.productIds = [];\r\n\r\n        LoadingModule.SET_LOADING(false);\r\n    }\r\n\r\n    @Action({ commit: 'SET_PRODUCTS' })\r\n    public async GET_PRODUCTS() {\r\n        if (this.form.searchQuery)\r\n            return this.form.productIds;\r\n        else if (!this.form.selectedBrand || !this.form.selectedModel)\r\n            return [];\r\n\r\n        LoadingModule.SET_LOADING(true);\r\n        const result: TonerGuideProductList = await this.tonerGuideService.getProductList(this.form.selectedBrand, this.form.selectedModel);\r\n        return result.products?.map(x => x.despecid) ?? [];\r\n    }\r\n    @Mutation\r\n    public SET_PRODUCTS(productIds: string[]) {\r\n        this.form.productIds = productIds;\r\n        LoadingModule.SET_LOADING(false);\r\n    }\r\n\r\n    @Action({ commit: 'SET_PRODUCTS' })\r\n    public async SEARCH_PRODUCTS(query: string) {\r\n        LoadingModule.SET_LOADING(true);\r\n        const result = await this.tonerGuideService.getProductListBySearch(query);\r\n        this.context.commit('CLEAR_SELECTIONS');\r\n        return result.productlist?.map(x => x.despecid) ?? [];\r\n    }\r\n    @Mutation\r\n    public CLEAR_SELECTIONS() {\r\n        this.form.selectedBrand = '';\r\n        this.form.selectedModel = '';\r\n    }\r\n}\r\n\r\nexport default getModule(TonerGuideModule);","\r\nimport { TonerGuideForm } from '@/models/TonerGuide';\r\nimport LoadingModule from '@/store/modules/LoadingModule';\r\nimport TonerGuideModule from '@/store/modules/TonerGuideModule';\r\nimport { Component, Vue, Watch } from 'vue-property-decorator';\r\n\r\n@Component({\r\n    name: 'TonerGuide',\r\n})\r\nexport default class TonerGuide extends Vue {\r\n\r\n    private noResultsMessage: any = '';\r\n\r\n    get translationsReady(): boolean {\r\n        return this.$root.$data.translationsLoaded === true;\r\n    }\r\n\r\n    get isLoading(): boolean {\r\n        return LoadingModule.IS_LOADING;\r\n    }\r\n\r\n    get form(): TonerGuideForm {\r\n        return TonerGuideModule.FORM;\r\n    }\r\n\r\n    private async created() {\r\n        // Load brands\r\n        await TonerGuideModule.GET_BRANDLIST();\r\n    }\r\n\r\n    private async submit() {\r\n        if (this.form.searchQuery)\r\n            await TonerGuideModule.SEARCH_PRODUCTS(this.form.searchQuery);\r\n        else\r\n            await TonerGuideModule.GET_PRODUCTS();\r\n    }\r\n\r\n    @Watch('form.selectedBrand')\r\n    private async onBrandChange() {\r\n        if (this.form.selectedBrand)\r\n            await TonerGuideModule.GET_MODELS();\r\n    }\r\n\r\n    @Watch('form.selectedModel')\r\n    private async onModelChange() {\r\n        if (this.form.selectedModel)\r\n            this.submit();\r\n    }\r\n\r\n    @Watch('form.productIds')\r\n    private async onProductsChange() {\r\n        const activeSearch = this.form.searchQuery || (this.form.selectedBrand && this.form.selectedModel);\r\n        if (activeSearch && !this.form.productIds.length)\r\n            this.noResultsMessage = this.$t('toner-guide.no-results-message', ['No products found']);\r\n        else\r\n            this.noResultsMessage = '';\r\n    }\r\n}\r\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??clonedRuleSet-41.use[0]!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/ts-loader/index.js??clonedRuleSet-41.use[3]!../../node_modules/cache-loader/dist/cjs.js??ruleSet[0].use[0]!../../node_modules/@vue/cli-service/lib/config/vue-loader-v15-resolve-compat/vue-loader.js??vue-loader-options!./TonerGuide.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??clonedRuleSet-41.use[0]!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/ts-loader/index.js??clonedRuleSet-41.use[3]!../../node_modules/cache-loader/dist/cjs.js??ruleSet[0].use[0]!../../node_modules/@vue/cli-service/lib/config/vue-loader-v15-resolve-compat/vue-loader.js??vue-loader-options!./TonerGuide.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./TonerGuide.vue?vue&type=template&id=3f1b49ae&scoped=true&\"\nimport script from \"./TonerGuide.vue?vue&type=script&lang=ts&\"\nexport * from \"./TonerGuide.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./TonerGuide.vue?vue&type=style&index=0&id=3f1b49ae&prod&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/@vue/cli-service/node_modules/@vue/vue-loader-v15/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  \"3f1b49ae\",\n  null\n  \n)\n\nexport default component.exports","// style-loader: Adds some css to the DOM by adding a <style> tag\n\n// load the styles\nvar content = require(\"!!../../node_modules/@vue/cli-service/node_modules/css-loader/dist/cjs.js??clonedRuleSet-22.use[1]!../../node_modules/@vue/cli-service/node_modules/@vue/vue-loader-v15/lib/loaders/stylePostLoader.js!../../node_modules/@vue/cli-service/node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-22.use[2]!../../node_modules/@vue/cli-service/node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-22.use[3]!../../node_modules/sass-loader/dist/cjs.js??clonedRuleSet-22.use[4]!../../node_modules/cache-loader/dist/cjs.js??ruleSet[0].use[0]!../../node_modules/@vue/cli-service/lib/config/vue-loader-v15-resolve-compat/vue-loader.js??vue-loader-options!./TonerGuide.vue?vue&type=style&index=0&id=3f1b49ae&prod&lang=scss&scoped=true&\");\nif(content.__esModule) content = content.default;\nif(typeof content === 'string') content = [[module.id, content, '']];\nif(content.locals) module.exports = content.locals;\n// add the styles to the DOM\nvar add = require(\"!../../node_modules/vue-style-loader/lib/addStylesClient.js\").default\nvar update = add(\"570987dc\", content, true, {\"sourceMap\":false,\"shadowMode\":false});"],"names":["___CSS_LOADER_EXPORT___","push","module","id","render","_vm","this","_c","_self","_setupProxy","translationsReady","staticClass","staticStyle","attrs","on","$event","preventDefault","submit","form","brands","length","directives","name","rawName","value","selectedBrand","expression","$$selectedVal","Array","prototype","filter","call","target","options","o","selected","map","val","_value","$set","multiple","domProps","_v","_s","$t","_l","brand","index","key","_e","models","selectedModel","model","searchQuery","composing","isLoading","productIds","noResultsMessage","staticRenderFns","TonerGuideService","constructor","args","_defineProperty","window","CbxApiContextKey","profileId","endpoint","async","res","axios","data","e","console","log","query","includeOemAndEan","TonerGuideModule","VuexModule","FORM","LoadingModule","SET_LOADING","result","tonerGuideService","getBrandList","SET_BRANDLIST","getModelList","SET_MODELS","getProductList","products","x","despecid","SET_PRODUCTS","getProductListBySearch","context","commit","productlist","CLEAR_SELECTIONS","__decorate","Action","Mutation","Module","store","dynamic","namespaced","getModule","TonerGuide","Vue","$root","$data","translationsLoaded","IS_LOADING","GET_BRANDLIST","SEARCH_PRODUCTS","GET_PRODUCTS","GET_MODELS","activeSearch","Watch","Component","component","content","__esModule","default","locals","exports","add"],"sourceRoot":""}