{"version":3,"sources":["webpack:///./node_modules/core-js/modules/es.string.includes.js","webpack:///./node_modules/core-js/internals/is-regexp.js","webpack:///./src/views/Category.vue?ad62","webpack:///./src/views/Category.vue","webpack:///./src/views/Category.vue?b992","webpack:///./src/views/Category.vue?0905","webpack:///./node_modules/core-js/internals/not-a-regexp.js","webpack:///./node_modules/vue-spinner/src/PulseLoader.vue?7a53","webpack:///./src/components/foodin-products.vue?1893","webpack:///./src/components/foodin-products.vue","webpack:///./src/components/foodin-products.vue?4698","webpack:///./src/components/foodin-products.vue?9db0","webpack:///./node_modules/core-js/modules/es.array.find.js","webpack:///./node_modules/vue-spinner/src/PulseLoader.vue?c130","webpack:///node_modules/vue-spinner/src/PulseLoader.vue","webpack:///./node_modules/vue-spinner/src/PulseLoader.vue?2038","webpack:///./node_modules/vue-spinner/src/PulseLoader.vue","webpack:///./node_modules/is-mobile/index.js","webpack:///./src/components/foodin-products.vue?9c56","webpack:///./node_modules/core-js/internals/correct-is-regexp-logic.js","webpack:///./src/services/categoryService.ts","webpack:///./node_modules/core-js/modules/es.array.includes.js","webpack:///./src/views/Category.vue?a272"],"names":["$","notARegExp","requireObjectCoercible","correctIsRegExpLogic","target","proto","forced","includes","searchString","String","this","indexOf","arguments","length","undefined","isObject","classof","wellKnownSymbol","MATCH","module","exports","it","isRegExp","render","_vm","_h","$createElement","_c","_self","staticClass","attrs","loading","_v","_s","category","name","description","directives","rawName","value","expression","domProps","on","$event","type","_k","keyCode","key","onEnter","composing","input","searchProducts","_e","_l","cat","id","class","staticStyle","navigateCategory","products","isMobile","selectProduct","staticRenderFns","cookieProducts","modalShow","routeParam","$route","params","setupCategories","setupProducts","categoryId","GetProductsCategory","GetAllCategories","categories","find","c","evt","productId","$router","push","path","keyName","cookieValue","$cookies","get","favoriteProducts","JSON","parse","GetProductsByProductIds","product","newCookie","index","splice","objIndex","findIndex","obj","set","stringify","setFavorites","i","favorite","body","map","item","concat","toString","window","open","console","log","SearchProducts","components","FoodinProducts","PulseLoader","component","TypeError","$emit","hideImages","image","_f","favoriteproduct","setFavorite","$root","$children","getAllCookies","Array","required","Boolean","filters","limitLength","substring","$find","addToUnscopables","FIND","SKIPS_HOLES","callbackfn","style","spinnerStyle","spinnerDelay1","spinnerDelay2","spinnerDelay3","props","default","color","size","margin","radius","data","height","display","animationName","animationDuration","animationIterationCount","animationTimingFunction","animationFillMode","animationDelay","mobileRE","tabletRE","opts","ua","navigator","userAgent","headers","result","tablet","test","featureDetect","maxTouchPoints","METHOD_NAME","regexp","e","f","a","response","GetCategory","postCategory","post","updateCategory","put","deleteCategory","delete","hasNoProducts","getHighlightCategories","moveUpCategory","moveDownCategory","SearchCategories","$includes","el"],"mappings":"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","file":"js/chunk-3b2db39f.7132d702.js","sourcesContent":["'use strict';\nvar $ = require('../internals/export');\nvar notARegExp = require('../internals/not-a-regexp');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\nvar correctIsRegExpLogic = require('../internals/correct-is-regexp-logic');\n\n// `String.prototype.includes` method\n// https://tc39.github.io/ecma262/#sec-string.prototype.includes\n$({ target: 'String', proto: true, forced: !correctIsRegExpLogic('includes') }, {\n includes: function includes(searchString /* , position = 0 */) {\n return !!~String(requireObjectCoercible(this))\n .indexOf(notARegExp(searchString), arguments.length > 1 ? arguments[1] : undefined);\n }\n});\n","var isObject = require('../internals/is-object');\nvar classof = require('../internals/classof-raw');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar MATCH = wellKnownSymbol('match');\n\n// `IsRegExp` abstract operation\n// https://tc39.github.io/ecma262/#sec-isregexp\nmodule.exports = function (it) {\n var isRegExp;\n return isObject(it) && ((isRegExp = it[MATCH]) !== undefined ? !!isRegExp : classof(it) == 'RegExp');\n};\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"limit-width center\"},[(_vm.loading)?_c('div',[_c('pulse-loader',{attrs:{\"loading\":_vm.loading}})],1):(_vm.products)?_c('div',[(_vm.category)?_c('b-row',[_c('b-col',{attrs:{\"lg\":\"4\"}}),_c('b-col',{attrs:{\"lg\":\"4\",\"sm\":\"12\"}},[_c('h1',[_vm._v(_vm._s(_vm.category.name))]),_c('hr'),_c('p',[_vm._v(_vm._s(_vm.category.description))])]),_c('b-col',{attrs:{\"lg\":\"4\",\"sm\":\"12\"}},[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.input),expression:\"input\"}],staticClass:\"vertical-center search-input\",attrs:{\"type\":\"text\",\"placeholder\":\"Search products...\"},domProps:{\"value\":(_vm.input)},on:{\"keyup\":function($event){if(!$event.type.indexOf('key')&&_vm._k($event.keyCode,\"enter\",13,$event.key,\"Enter\")){ return null; }return _vm.onEnter($event)},\"input\":function($event){if($event.target.composing){ return; }_vm.input=$event.target.value}}}),_c('b-button',{staticClass:\"bg-foodin-primary vertical-center\",on:{\"click\":function($event){return _vm.searchProducts()}}},[_vm._v(\"Search\")])],1)],1):_vm._e(),_c('b-row',[_c('b-col',{attrs:{\"lg\":\"2\"}},_vm._l((_vm.categories),function(cat){return _c('div',{key:cat.id},[_c('b-button',{class:cat.id == _vm.category.id ? 'activeCategory' : 'bg-foodin-primary',staticStyle:{\"width\":\"100%\",\"margin-bottom\":\"10px\"},attrs:{\"disabled\":cat.id == _vm.category.id},on:{\"click\":function($event){return _vm.navigateCategory(cat.id)}}},[_vm._v(\" \"+_vm._s(cat.name)+\" \")])],1)}),0),_c('b-col',{attrs:{\"lg\":\"10\"}},[_c('foodin-products',{attrs:{\"products\":_vm.products,\"show-description\":!_vm.isMobile},on:{\"select-product\":_vm.selectProduct}})],1)],1)],1):_vm._e()])}\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\nimport { Component, Vue } from 'vue-property-decorator';\nimport ProductApi from '@/services/productService';\nimport CategoryApi from '@/services/categoryService';\nimport { Category, Product } from '@/types/types';\nimport FoodinProducts from '@/components/foodin-products.vue';\nimport PulseLoader from 'vue-spinner/src/PulseLoader.vue'\nimport mobile from 'is-mobile';\n\n@Component({\n components: {\n FoodinProducts,\n PulseLoader\n }\n})\nexport default class CategoryPage extends Vue {\n //Data\n products: Array = [];\n loading: Boolean = true;\n categories!: Category[];\n category!: Category;\n cookieProducts: Product[] = [];\n modalShow: boolean = false;\n input: string = \"\";\n //End Data\n\n //Create and Mount\n async created() {\n this.loading = true;\n\n let routeParam = this.$route.params.id;\n this.category = await this.setupCategories(routeParam);\n this.products = await this.setupProducts(routeParam);\n\n this.loading = false;\n }\n\n mounted() { }\n //Finish Create and Mount\n\n\n //Methods\n async setupProducts(categoryId: any) {\n return await ProductApi.GetProductsCategory(categoryId);\n }\n\n async setupCategories(categoryId: any) {\n this.categories = await CategoryApi.GetAllCategories();\n\n return this.categories.find(c => c.id == categoryId) as Category;\n }\n\n async selectProduct(evt: Event, productId: Number) {\n //Navigate to product\n this.$router.push({ path: `/product/${productId}` });\n }\n\n async getAllCookies() {\n let keyName = 'favorite-foodin-products';\n let cookieValue = this.$cookies.get(keyName);\n\n if (cookieValue) {\n let favoriteProducts = JSON.parse(cookieValue);\n\n if (favoriteProducts.length > 0) {\n this.cookieProducts = await ProductApi.GetProductsByProductIds(favoriteProducts);\n } else {\n this.cookieProducts = [];\n }\n }\n\n this.modalShow = !this.modalShow;\n }\n\n async setFavorite(product: Product) {\n var keyName = 'favorite-foodin-products'\n var cookieValue = this.$cookies.get(keyName);\n var newCookie = []\n\n //Check if the cookie is already set\n if (cookieValue) {\n //Remove if value was already in there\n newCookie = JSON.parse(cookieValue)\n\n var index = newCookie.indexOf(product.id);\n newCookie.splice(index, 1);\n\n let objIndex = this.cookieProducts.findIndex((obj => obj.id == product.id));\n this.cookieProducts.splice(objIndex, 1);\n }\n\n this.$cookies.set(keyName, JSON.stringify(newCookie));\n this.setFavorites();\n }\n\n async setFavorites() {\n let keyName = 'favorite-foodin-products'\n let cookieValue = this.$cookies.get(keyName);\n\n if (cookieValue) {\n let favoriteProducts = JSON.parse(cookieValue);\n\n for (var i = 0; i < this.products.length; i++) {\n if (favoriteProducts.includes(this.products[i].id)) {\n this.products[i].favorite = true;\n } else {\n this.products[i].favorite = false;\n }\n }\n }\n }\n\n navigateCategory(categoryId: Number) {\n this.$router.push({ path: `/category/${categoryId}` });\n }\n\n async sendMail() {\n let body: string;\n body = 'I would like some more information regarding the following products:';\n let products = this.cookieProducts.map(function (item) {\n return '%0D%0A' + '- [' + item['number'] + '] ' + item['name'] + ' (' + item['category']['name'] + ')';\n });\n\n body = body.concat('%0D%0A', products.toString());\n\n window.open('mailto:info@foodin.nl?subject=Information%20Request&body=' + body);\n }\n\n async searchProducts() {\n if (!this.input || this.input === \"\") {\n console.log('no input'); //eslint-disable-line no-console\n this.products = await ProductApi.GetProductsCategory(this.category.id);\n } else {\n console.log('search'); //eslint-disable-line no-console\n this.products = await ProductApi.SearchProducts(this.input);\n }\n\n console.log('this.products updated'); //eslint-disable-line no-console\n }\n\n onEnter() {\n this.searchProducts();\n }\n //End Methods\n\n //Computed\n get isMobile() {\n return mobile();\n }\n //End Computed\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!./Category.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!./Category.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./Category.vue?vue&type=template&id=52add699&scoped=true&\"\nimport script from \"./Category.vue?vue&type=script&lang=ts&\"\nexport * from \"./Category.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./Category.vue?vue&type=style&index=0&id=52add699&scoped=true&lang=css&\"\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 \"52add699\",\n null\n \n)\n\nexport default component.exports","var isRegExp = require('../internals/is-regexp');\n\nmodule.exports = function (it) {\n if (isRegExp(it)) {\n throw TypeError(\"The method doesn't accept regular expressions\");\n } return it;\n};\n","import mod from \"-!../../mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../vue-loader/lib/loaders/stylePostLoader.js!../../postcss-loader/src/index.js??ref--6-oneOf-1-2!../../cache-loader/dist/cjs.js??ref--0-0!../../vue-loader/lib/index.js??vue-loader-options!./PulseLoader.vue?vue&type=style&index=0&lang=css&\"; export default mod; export * from \"-!../../mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../vue-loader/lib/loaders/stylePostLoader.js!../../postcss-loader/src/index.js??ref--6-oneOf-1-2!../../cache-loader/dist/cjs.js??ref--0-0!../../vue-loader/lib/index.js??vue-loader-options!./PulseLoader.vue?vue&type=style&index=0&lang=css&\"","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return (_vm.products)?_c('div',{staticClass:\"row center full-width\"},_vm._l((_vm.products),function(product){return _c('b-col',{key:product.id,staticClass:\"top-bottom-padding\",attrs:{\"lg\":\"4\",\"md\":\"6\",\"sm\":\"12\"}},[_c('b-card',{staticClass:\"overflow-hidden product-card\",attrs:{\"no-body\":\"\"},on:{\"click\":function($event){return _vm.$emit('select-product', $event, product.id)}}},[_c('b-row',{attrs:{\"no-gutters\":\"\"}},[(!_vm.hideImages)?_c('b-col',{staticClass:\"card-image-container\",attrs:{\"md\":\"6\",\"sm\":\"12\"}},[(product.image)?_c('b-card-img',{staticClass:\"rounded-0\",attrs:{\"src\":product.image,\"alt\":\"Image\"}}):_vm._e()],1):_vm._e(),_c('b-col',{staticClass:\"card-text-container\",attrs:{\"md\":\"6\",\"sm\":\"12\"}},[_c('b-card-body',{attrs:{\"title\":product.name}},[(_vm.showDescription)?_c('b-card-text',[_c('p',[_vm._v(\" \"+_vm._s(_vm._f(\"limitLength\")(product.description))+\" \")])]):_vm._e()],1)],1)],1)],1),_c('font-awesome-layers',{staticClass:\"favorite-icon-stack\",staticStyle:{\"display\":\"inline-block\",\"text-align\":\"center\"},attrs:{\"title\":\"Click for more info\"}},[_c('font-awesome-icon',{staticClass:\"fa-3x surround-circle\",attrs:{\"icon\":\"circle\"}}),_c('font-awesome-icon',{staticClass:\"fa-2x favorite-icon\",class:{ favoriteproduct: product.favorite },attrs:{\"icon\":\"heart\"},on:{\"click\":function($event){return _vm.setFavorite(product)}}})],1),(product.isNew)?_c('font-awesome-layers',{staticClass:\"fa-3x new-icon-stack\",staticStyle:{\"display\":\"inline-block\",\"text-align\":\"center\"},attrs:{\"full-width\":\"\"}},[_c('font-awesome-icon',{attrs:{\"icon\":\"certificate\"}}),_c('font-awesome-layers-text',{staticClass:\"fa-inverse\",staticStyle:{\"font-weight\":\"900\"},attrs:{\"transform\":\"shrink-11.5 rotate--330\",\"value\":\"NEW\"}})],1):_vm._e()],1)}),1):_vm._e()}\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\nimport { Component, Prop, Vue } from 'vue-property-decorator';\nimport { Product } from '@/types/types';\n\n@Component({\n filters: {\n limitLength(value: any) {\n if (!value) {\n return '';\n }\n\n if (value.length > 50) {\n value = value.substring(0, 47) + '...';\n }\n\n return value\n }\n }\n})\nexport default class FoodinProducts extends Vue {\n //Props\n @Prop({ type: Array, required: true }) products!: Product[];\n @Prop({ type: Boolean, required: false }) hideImages!: Boolean;\n @Prop({ type: Boolean, required: false }) showDescription!: Boolean;\n //End Props\n\n //Data\n //localProducts: Array = [];\n //End Data\n\n //Create and Mount\n async created() {\n //this.localProducts = this.products;\n await this.setFavorites();\n }\n\n mounted() { }\n //Finish Create and Mount\n\n\n //Methods\n async setFavorite(product: Product) {\n var keyName = 'favorite-foodin-products'\n var cookieValue = this.$cookies.get(keyName);\n var newCookie = []\n\n //Check if the cookie is already set\n if (!cookieValue) {\n //If the cookie doesn't exist, add to temp list\n newCookie.push(product.id)\n } else {\n //If the cookie exists, parse values and add if not already there\n //Remove if value was already in there\n newCookie = JSON.parse(cookieValue)\n\n if (!newCookie.includes(product.id)) {\n newCookie.push(product.id)\n } else {\n var index = newCookie.indexOf(product.id);\n newCookie.splice(index, 1);\n\n let objIndex = this.products.findIndex((obj => obj.id == product.id));\n this.products[objIndex].favorite = false;\n }\n }\n\n this.$cookies.set(keyName, JSON.stringify(newCookie));\n this.setFavorites();\n (this.$root.$children[0] as any).getAllCookies();\n }\n\n async setFavorites() {\n let keyName = 'favorite-foodin-products'\n let cookieValue = this.$cookies.get(keyName);\n\n if (cookieValue) {\n let favoriteProducts = JSON.parse(cookieValue);\n\n for (var i = 0; i < this.products.length; i++) {\n if (favoriteProducts.includes(this.products[i].id)) {\n this.products[i].favorite = true;\n }\n }\n }\n }\n //End Methods\n\n\n //Filters\n //End Filters\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!./foodin-products.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!./foodin-products.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./foodin-products.vue?vue&type=template&id=301f1eda&scoped=true&\"\nimport script from \"./foodin-products.vue?vue&type=script&lang=ts&\"\nexport * from \"./foodin-products.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./foodin-products.vue?vue&type=style&index=0&id=301f1eda&scoped=true&lang=css&\"\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 \"301f1eda\",\n null\n \n)\n\nexport default component.exports","'use strict';\nvar $ = require('../internals/export');\nvar $find = require('../internals/array-iteration').find;\nvar addToUnscopables = require('../internals/add-to-unscopables');\n\nvar FIND = 'find';\nvar SKIPS_HOLES = true;\n\n// Shouldn't skip holes\nif (FIND in []) Array(1)[FIND](function () { SKIPS_HOLES = false; });\n\n// `Array.prototype.find` method\n// https://tc39.github.io/ecma262/#sec-array.prototype.find\n$({ target: 'Array', proto: true, forced: SKIPS_HOLES }, {\n find: function find(callbackfn /* , that = undefined */) {\n return $find(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined);\n }\n});\n\n// https://tc39.github.io/ecma262/#sec-array.prototype-@@unscopables\naddToUnscopables(FIND);\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.loading),expression:\"loading\"}],staticClass:\"v-spinner\"},[_c('div',{staticClass:\"v-pulse v-pulse1\",style:([_vm.spinnerStyle,_vm.spinnerDelay1])}),_c('div',{staticClass:\"v-pulse v-pulse2\",style:([_vm.spinnerStyle,_vm.spinnerDelay2])}),_c('div',{staticClass:\"v-pulse v-pulse3\",style:([_vm.spinnerStyle,_vm.spinnerDelay3])})])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n","import mod from \"-!../../cache-loader/dist/cjs.js??ref--12-0!../../thread-loader/dist/cjs.js!../../babel-loader/lib/index.js!../../cache-loader/dist/cjs.js??ref--0-0!../../vue-loader/lib/index.js??vue-loader-options!./PulseLoader.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../cache-loader/dist/cjs.js??ref--12-0!../../thread-loader/dist/cjs.js!../../babel-loader/lib/index.js!../../cache-loader/dist/cjs.js??ref--0-0!../../vue-loader/lib/index.js??vue-loader-options!./PulseLoader.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./PulseLoader.vue?vue&type=template&id=7dc0198c&\"\nimport script from \"./PulseLoader.vue?vue&type=script&lang=js&\"\nexport * from \"./PulseLoader.vue?vue&type=script&lang=js&\"\nimport style0 from \"./PulseLoader.vue?vue&type=style&index=0&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../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","'use strict'\r\n\r\nmodule.exports = isMobile\r\nmodule.exports.isMobile = isMobile\r\nmodule.exports.default = isMobile\r\n\r\nvar mobileRE = /(android|bb\\d+|meego).+mobile|avantgo|bada\\/|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od)|iris|kindle|lge |maemo|midp|mmp|mobile.+firefox|netfront|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\\/|plucker|pocket|psp|series[46]0|symbian|treo|up\\.(browser|link)|vodafone|wap|windows (ce|phone)|xda|xiino/i\r\n\r\nvar tabletRE = /(android|bb\\d+|meego).+mobile|avantgo|bada\\/|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od)|iris|kindle|lge |maemo|midp|mmp|mobile.+firefox|netfront|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\\/|plucker|pocket|psp|series[46]0|symbian|treo|up\\.(browser|link)|vodafone|wap|windows (ce|phone)|xda|xiino|android|ipad|playbook|silk/i\r\n\r\nfunction isMobile (opts) {\r\n if (!opts) opts = {}\r\n var ua = opts.ua\r\n if (!ua && typeof navigator !== 'undefined') ua = navigator.userAgent\r\n if (ua && ua.headers && typeof ua.headers['user-agent'] === 'string') {\r\n ua = ua.headers['user-agent']\r\n }\r\n if (typeof ua !== 'string') return false\r\n\r\n var result = opts.tablet ? tabletRE.test(ua) : mobileRE.test(ua)\r\n\r\n if (\r\n !result &&\r\n opts.tablet &&\r\n opts.featureDetect &&\r\n navigator &&\r\n navigator.maxTouchPoints > 1 &&\r\n ua.indexOf('Macintosh') !== -1 &&\r\n ua.indexOf('Safari') !== -1\r\n ) {\r\n result = true\r\n }\r\n\r\n return result\r\n}\r\n","import mod from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./foodin-products.vue?vue&type=style&index=0&id=301f1eda&scoped=true&lang=css&\"; export default mod; export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./foodin-products.vue?vue&type=style&index=0&id=301f1eda&scoped=true&lang=css&\"","var wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar MATCH = wellKnownSymbol('match');\n\nmodule.exports = function (METHOD_NAME) {\n var regexp = /./;\n try {\n '/./'[METHOD_NAME](regexp);\n } catch (e) {\n try {\n regexp[MATCH] = false;\n return '/./'[METHOD_NAME](regexp);\n } catch (f) { /* empty */ }\n } return false;\n};\n","import axios from 'axios'\r\nimport { Category } from '@/types/types'\r\n\r\nexport default {\r\n async GetAllCategories(): Promise {\r\n let response = await axios.get('/api/Categories');\r\n\r\n return response.data as Array;\r\n },\r\n async GetCategory(categoryId: Number): Promise {\r\n let response = await axios.get('/api/Categories/' + categoryId);\r\n return response.data as Category;\r\n },\r\n async postCategory(category: Category): Promise {\r\n let response = await axios.post('/api/Categories', category)\r\n console.log(response); //eslint-disable-line no-console\r\n return response.data;\r\n },\r\n async updateCategory(category: Category): Promise {\r\n let response = await axios.put('/api/Categories/' + category.id, category)\r\n console.log(response); //eslint-disable-line no-console\r\n return response.data;\r\n },\r\n async deleteCategory(categoryId: Number): Promise {\r\n let response = await axios.delete('/api/Categories/' + categoryId)\r\n console.log(response); //eslint-disable-line no-console\r\n return response.data;\r\n },\r\n async hasNoProducts(categoryId: Number): Promise {\r\n let response = await axios.get('/api/Categories/HasNoProducts', { params: { id: categoryId } });\r\n console.log(response); //eslint-disable-line no-console\r\n return response.data;\r\n },\r\n async getHighlightCategories(): Promise {\r\n let response = await axios.get('/api/Categories/Highlight');\r\n return response.data as Array;\r\n },\r\n async moveUpCategory(categoryId: Number): Promise {\r\n let response = await axios.get('/api/Categories/MoveUp', { params: { id: categoryId } });\r\n return response.data;\r\n },\r\n async moveDownCategory(categoryId: Number): Promise {\r\n let response = await axios.get('/api/Categories/MoveDown', { params: { id: categoryId } });\r\n return response.data;\r\n },\r\n async SearchCategories(input: string): Promise {\r\n let response = await axios.get('/api/Categories/Search/', { params: { input: input } });\r\n return response.data as Array;\r\n }\r\n}\r\n","'use strict';\nvar $ = require('../internals/export');\nvar $includes = require('../internals/array-includes').includes;\nvar addToUnscopables = require('../internals/add-to-unscopables');\n\n// `Array.prototype.includes` method\n// https://tc39.github.io/ecma262/#sec-array.prototype.includes\n$({ target: 'Array', proto: true }, {\n includes: function includes(el /* , fromIndex = 0 */) {\n return $includes(this, el, arguments.length > 1 ? arguments[1] : undefined);\n }\n});\n\n// https://tc39.github.io/ecma262/#sec-array.prototype-@@unscopables\naddToUnscopables('includes');\n","import mod from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Category.vue?vue&type=style&index=0&id=52add699&scoped=true&lang=css&\"; export default mod; export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Category.vue?vue&type=style&index=0&id=52add699&scoped=true&lang=css&\""],"sourceRoot":""}