{"version":3,"sources":["webpack:///./node_modules/core-js/modules/es.string.includes.js","webpack:///./node_modules/core-js/internals/is-regexp.js","webpack:///./src/types/types.ts","webpack:///./node_modules/core-js/internals/not-a-regexp.js","webpack:///./node_modules/vue-spinner/src/PulseLoader.vue?7a53","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:///./src/components/foodin-product.vue?954c","webpack:///./src/components/foodin-product.vue","webpack:///./src/components/foodin-product.vue?7cd4","webpack:///./src/components/foodin-product.vue?799a","webpack:///./node_modules/core-js/internals/correct-is-regexp-logic.js","webpack:///./src/components/foodin-product.vue?2c19","webpack:///./src/services/categoryService.ts","webpack:///./src/assets/logo/pdf-files.png","webpack:///./node_modules/core-js/modules/es.array.includes.js"],"names":["$","notARegExp","requireObjectCoercible","correctIsRegExpLogic","target","proto","forced","includes","searchString","String","this","indexOf","arguments","length","undefined","isObject","classof","wellKnownSymbol","MATCH","module","exports","it","isRegExp","Category","Product","TypeError","render","_vm","_h","$createElement","_c","_self","directives","name","rawName","value","expression","staticClass","style","spinnerStyle","spinnerDelay1","spinnerDelay2","spinnerDelay3","staticRenderFns","props","loading","type","Boolean","default","color","size","margin","radius","data","height","display","animationName","animationDuration","animationIterationCount","animationTimingFunction","animationFillMode","animationDelay","component","_v","_s","localProduct","number","attrs","product","staticStyle","_e","class","favoriteproduct","favorite","on","$event","setFavorite","image","description","specials","information","file","toProduct","previousProduct","id","nextProduct","console","log","loadNext","ordering","category","loadPrevious","setFavorites","categoryId","productId","$emit","keyName","cookieValue","$cookies","get","newCookie","JSON","parse","index","splice","push","set","stringify","$root","$children","getAllCookies","favoriteProducts","required","METHOD_NAME","regexp","e","f","GetAllCategories","a","response","GetCategory","postCategory","post","updateCategory","put","deleteCategory","delete","hasNoProducts","params","getHighlightCategories","moveUpCategory","moveDownCategory","SearchCategories","input","$includes","addToUnscopables","el"],"mappings":"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","file":"js/chunk-2bb76546.dcc5772f.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","export class Category {\r\n public id!: Number;\r\n public name!: String;\r\n public description!: String;\r\n public image!: String;\r\n}\r\n\r\nexport class Product {\r\n public id!: Number;\r\n public number!: String;\r\n public name!: String;\r\n public description!: String;\r\n public image!: String;\r\n public file!: String;\r\n public ordering!: Number;\r\n\r\n public information!: String;\r\n public specials!: String;\r\n public isNew!: Boolean;\r\n public favorite!: Boolean;\r\n\r\n public category!: Category;\r\n}","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 _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\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","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return (_vm.localProduct)?_c('div',{staticClass:\"center\"},[_c('b-row',{staticClass:\"fit-width margin-bottom margin-top\"},[_c('b-col',[_c('h1',{staticClass:\"center\"},[_vm._v(_vm._s(_vm.localProduct.name))]),_c('p',{staticClass:\"center\"},[_vm._v(\" \"+_vm._s(_vm.localProduct.number))])])],1),_c('hr',{staticClass:\"margin-bottom-big\"}),_c('b-row',{staticClass:\"fit-width center\"},[_c('b-col',{staticClass:\"margin-bottom-big limit-height\",attrs:{\"md\":\"6\",\"sm\":\"12\"}},[(_vm.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--30\",\"value\":\"NEW\"}})],1):_vm._e(),_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: _vm.localProduct.favorite },attrs:{\"icon\":\"heart\"},on:{\"click\":function($event){return _vm.setFavorite(_vm.localProduct)}}})],1),(_vm.localProduct.image)?_c('img',{staticClass:\"product-image rounded\",attrs:{\"src\":_vm.localProduct.image}}):_vm._e()],1),(_vm.localProduct.description)?_c('b-col',{staticClass:\"margin-bottom-big\",attrs:{\"md\":\"6\",\"sm\":\"12\"}},[_c('h2',[_vm._v(\"Description\")]),_c('p',[_vm._v(\" \"+_vm._s(_vm.localProduct.description)+\" \")]),(_vm.localProduct.specials)?_c('div',[_c('p',[_vm._v(\" \"+_vm._s(_vm.localProduct.specials)+\" \")])]):_vm._e()]):_vm._e()],1),_c('b-row',[_c('b-col',{staticClass:\"margin-bottom-big\"},[(_vm.localProduct.information)?_c('div',[_c('h2',[_vm._v(\"Product information\")]),_c('p',[_vm._v(\" \"+_vm._s(_vm.localProduct.information)+\" \")])]):_vm._e()]),(_vm.localProduct.file)?_c('b-col',{staticClass:\"margin-bottom-big\"},[_c('h2',[_vm._v(\"Specifications\")]),_c('p',[_vm._v(\"View PDF Specifications for this product by clicking on the icon below.\")]),_c('a',{attrs:{\"href\":_vm.localProduct.file,\"target\":\"_blank\"}},[_c('img',{staticClass:\"pdf-logo\",attrs:{\"src\":require('@/assets/logo/pdf-files.png'),\"alt\":\"pdf logo\"}})])]):_vm._e()],1),_c('b-row',[_c('b-col',[_c('div',{staticClass:\"float-left\"},[(_vm.previousProduct)?_c('b-button',{staticClass:\"bg-foodin-primary\",on:{\"click\":function($event){return _vm.toProduct(_vm.previousProduct.id)}}},[_vm._v(\"Previous product\")]):_vm._e()],1)]),_c('b-col',[_c('div',{staticClass:\"float-right\"},[(_vm.nextProduct)?_c('b-button',{staticClass:\"bg-foodin-primary\",on:{\"click\":function($event){return _vm.toProduct(_vm.nextProduct.id)}}},[_vm._v(\"Next product\")]):_vm._e()],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\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';\nimport ProductApi from '@/services/productService';\n\n@Component({\n})\nexport default class FoodinProduct extends Vue {\n //Props\n @Prop({ type: Product, required: true }) product!: Product;\n //End Props\n\n\n //Data\n localProduct: Product = new Product();\n nextProduct: Product = new Product();\n previousProduct: Product = new Product();\n //End Data\n\n\n //Create and Mount\n async created() {\n this.localProduct = this.product;\n\n console.log(this.localProduct); //eslint-disable-line no-console\n\n //Load Next\n this.nextProduct = await this.loadNext(this.localProduct.ordering, this.localProduct.category.id);\n\n //Load Previous\n this.previousProduct = await this.loadPrevious(this.localProduct.ordering, this.localProduct.category.id);\n\n await this.setFavorites();\n }\n\n mounted() {\n console.log('mount foodin-product'); //eslint-disable-line no-console\n }\n //Finish Create and Mount\n\n\n //Methods\n async loadNext(ordering: Number, categoryId: Number) {\n return await ProductApi.loadNext(ordering, categoryId) as Product;\n }\n\n async loadPrevious(ordering: Number, categoryId: Number) {\n return await ProductApi.loadPrevious(ordering, categoryId) as Product;\n }\n\n toProduct(productId: Number) {\n this.$emit('navigate-product', productId);\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 //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 this.localProduct.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 if (favoriteProducts.includes(this.localProduct.id)) {\n this.localProduct.favorite = true;\n }\n }\n }\n //End Methods\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-product.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-product.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./foodin-product.vue?vue&type=template&id=673e7481&scoped=true&\"\nimport script from \"./foodin-product.vue?vue&type=script&lang=ts&\"\nexport * from \"./foodin-product.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./foodin-product.vue?vue&type=style&index=0&id=673e7481&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 \"673e7481\",\n null\n \n)\n\nexport default component.exports","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 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-product.vue?vue&type=style&index=0&id=673e7481&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-product.vue?vue&type=style&index=0&id=673e7481&scoped=true&lang=css&\"","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","module.exports = \"data:image/png;base64,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\"","'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"],"sourceRoot":""}