1 line
42 KiB
Plaintext
1 line
42 KiB
Plaintext
{"version":3,"sources":["webpack:///webpack/bootstrap","webpack:///./src/App.vue?7e02","webpack:///./src/components/RecipeItem.vue?a689","webpack:///./src/App.vue?80da","webpack:///./src/components/layout/Header.vue?ef48","webpack:///src/components/layout/Header.vue","webpack:///./src/components/layout/Header.vue?2022","webpack:///./src/components/layout/Header.vue","webpack:///./src/components/Recipes.vue?0493","webpack:///./src/components/RecipeItem.vue?76eb","webpack:///src/components/RecipeItem.vue","webpack:///./src/components/RecipeItem.vue?6647","webpack:///./src/components/RecipeItem.vue","webpack:///src/components/Recipes.vue","webpack:///./src/components/Recipes.vue?73ed","webpack:///./src/components/Recipes.vue","webpack:///./src/components/Editor.vue?ecfc","webpack:///src/components/Editor.vue","webpack:///./src/components/Editor.vue?145f","webpack:///./src/components/Editor.vue","webpack:///src/App.vue","webpack:///./src/App.vue?1160","webpack:///./src/App.vue","webpack:///./src/store/modules/recipes.js","webpack:///./src/store/index.js","webpack:///./src/main.js"],"names":["webpackJsonpCallback","data","moduleId","chunkId","chunkIds","moreModules","executeModules","i","resolves","length","Object","prototype","hasOwnProperty","call","installedChunks","push","modules","parentJsonpFunction","shift","deferredModules","apply","checkDeferredModules","result","deferredModule","fulfilled","j","depId","splice","__webpack_require__","s","installedModules","exports","module","l","m","c","d","name","getter","o","defineProperty","enumerable","get","r","Symbol","toStringTag","value","t","mode","__esModule","ns","create","key","bind","n","object","property","p","jsonpArray","window","oldJsonpFunction","slice","_vm","this","_h","$createElement","_c","_self","attrs","staticRenderFns","staticClass","_v","on","$event","newRecipe","component","_l","item","_id","_s","mealtype","_e","class","meatClass","meatText","editRecipe","hash","editMode","directives","rawName","editorItem","expression","domProps","target","composing","$set","$$selectedVal","Array","filter","options","selected","map","val","_value","multiple","closeEditor","saveRecipe","url","state","recipes","currentItem","md","meat","short","lastused","getters","allRecipes","actions","fetchRecipes","commit","axios","response","console","log","post","put","changes","msg","updatedList","mutations","setRecipes","setCurrentItem","recipe","setEditMode","Vue","use","Vuex","Store","config","productionTip","store","render","h","App","$mount"],"mappings":"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","file":"js/app.1be9a2fa.js","sourcesContent":[" \t// install a JSONP callback for chunk loading\n \tfunction webpackJsonpCallback(data) {\n \t\tvar chunkIds = data[0];\n \t\tvar moreModules = data[1];\n \t\tvar executeModules = data[2];\n\n \t\t// add \"moreModules\" to the modules object,\n \t\t// then flag all \"chunkIds\" as loaded and fire callback\n \t\tvar moduleId, chunkId, i = 0, resolves = [];\n \t\tfor(;i < chunkIds.length; i++) {\n \t\t\tchunkId = chunkIds[i];\n \t\t\tif(Object.prototype.hasOwnProperty.call(installedChunks, chunkId) && installedChunks[chunkId]) {\n \t\t\t\tresolves.push(installedChunks[chunkId][0]);\n \t\t\t}\n \t\t\tinstalledChunks[chunkId] = 0;\n \t\t}\n \t\tfor(moduleId in moreModules) {\n \t\t\tif(Object.prototype.hasOwnProperty.call(moreModules, moduleId)) {\n \t\t\t\tmodules[moduleId] = moreModules[moduleId];\n \t\t\t}\n \t\t}\n \t\tif(parentJsonpFunction) parentJsonpFunction(data);\n\n \t\twhile(resolves.length) {\n \t\t\tresolves.shift()();\n \t\t}\n\n \t\t// add entry modules from loaded chunk to deferred list\n \t\tdeferredModules.push.apply(deferredModules, executeModules || []);\n\n \t\t// run deferred modules when all chunks ready\n \t\treturn checkDeferredModules();\n \t};\n \tfunction checkDeferredModules() {\n \t\tvar result;\n \t\tfor(var i = 0; i < deferredModules.length; i++) {\n \t\t\tvar deferredModule = deferredModules[i];\n \t\t\tvar fulfilled = true;\n \t\t\tfor(var j = 1; j < deferredModule.length; j++) {\n \t\t\t\tvar depId = deferredModule[j];\n \t\t\t\tif(installedChunks[depId] !== 0) fulfilled = false;\n \t\t\t}\n \t\t\tif(fulfilled) {\n \t\t\t\tdeferredModules.splice(i--, 1);\n \t\t\t\tresult = __webpack_require__(__webpack_require__.s = deferredModule[0]);\n \t\t\t}\n \t\t}\n\n \t\treturn result;\n \t}\n\n \t// The module cache\n \tvar installedModules = {};\n\n \t// object to store loaded and loading chunks\n \t// undefined = chunk not loaded, null = chunk preloaded/prefetched\n \t// Promise = chunk loading, 0 = chunk loaded\n \tvar installedChunks = {\n \t\t\"app\": 0\n \t};\n\n \tvar deferredModules = [];\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n \t\t}\n \t};\n\n \t// define __esModule on exports\n \t__webpack_require__.r = function(exports) {\n \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n \t\t}\n \t\tObject.defineProperty(exports, '__esModule', { value: true });\n \t};\n\n \t// create a fake namespace object\n \t// mode & 1: value is a module id, require it\n \t// mode & 2: merge all properties of value into the ns\n \t// mode & 4: return value when already ns object\n \t// mode & 8|1: behave like require\n \t__webpack_require__.t = function(value, mode) {\n \t\tif(mode & 1) value = __webpack_require__(value);\n \t\tif(mode & 8) return value;\n \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n \t\tvar ns = Object.create(null);\n \t\t__webpack_require__.r(ns);\n \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n \t\treturn ns;\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"/\";\n\n \tvar jsonpArray = window[\"webpackJsonp\"] = window[\"webpackJsonp\"] || [];\n \tvar oldJsonpFunction = jsonpArray.push.bind(jsonpArray);\n \tjsonpArray.push = webpackJsonpCallback;\n \tjsonpArray = jsonpArray.slice();\n \tfor(var i = 0; i < jsonpArray.length; i++) webpackJsonpCallback(jsonpArray[i]);\n \tvar parentJsonpFunction = oldJsonpFunction;\n\n\n \t// add entry module to deferred list\n \tdeferredModules.push([0,\"chunk-vendors\"]);\n \t// run deferred modules when ready\n \treturn checkDeferredModules();\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!./App.vue?vue&type=style&index=0&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!./App.vue?vue&type=style&index=0&lang=css&\"","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!./RecipeItem.vue?vue&type=style&index=0&id=ee115b5a&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!./RecipeItem.vue?vue&type=style&index=0&id=ee115b5a&scoped=true&lang=css&\"","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{attrs:{\"id\":\"app\"}},[_c('Header'),_c('Editor'),_c('Recipes')],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('header',{staticClass:\"navbar bg-primary\"},[_c('h2',[_vm._v(\" Recipes \")]),_c('ul',[_c('li',[_c('button',{staticClass:\"btn btn-sm\",attrs:{\"type\":\"button\"},on:{\"click\":function($event){return _vm.newRecipe()}}},[_vm._v(\"New Recipe\")])])])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <header class=\"navbar bg-primary\">\n <h2>\n Recipes\n </h2>\n <ul>\n <li>\n <button class=\"btn btn-sm\" @click=\"newRecipe()\" type=\"button\">New Recipe</button>\n </li>\n </ul>\n </header>\n\n</template>\n\n<script>\n import { mapActions} from 'vuex';\n export default {\n name: \"Header\",\n methods: {\n ...mapActions(['newRecipe']),\n }\n }\n</script>\n\n<style scoped>\n\n</style>\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Header.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Header.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Header.vue?vue&type=template&id=e8f9515a&scoped=true&\"\nimport script from \"./Header.vue?vue&type=script&lang=js&\"\nexport * from \"./Header.vue?vue&type=script&lang=js&\"\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 \"e8f9515a\",\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 _c('div',{staticClass:\"container \"},_vm._l((_vm.allRecipes),function(item){return _c('div',{key:item._id},[_c('RecipeItem',{attrs:{\"item\":item}})],1)}),0)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"recipeItem\"},[_c('div',{staticClass:\"listItemSix\"},[_vm._v(_vm._s(_vm.item.name))]),_c('div',{staticClass:\"listItemThree\"},[(_vm.item.mealtype === 2)?_c('span',{staticClass:\"badge badge-light\"},[_vm._v(\"Soup\")]):_vm._e(),_c('span',{staticClass:\"badge\",class:_vm.meatClass},[_vm._v(_vm._s(_vm.meatText))])]),_c('div',{staticClass:\"listItemThree all-center\"},[_c('button',{staticClass:\"btn btn-primary btn-sm\",attrs:{\"type\":\"button\"},on:{\"click\":function($event){return _vm.editRecipe(_vm.item.hash)}}},[_vm._v(\"Edit\")])])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <div class=\"recipeItem\">\n <div class=\"listItemSix\">{{item.name}}</div>\n <div class=\"listItemThree\">\n <span v-if=\"item.mealtype === 2\" class=\"badge badge-light\">Soup</span>\n <span class=\"badge\" v-bind:class=\"meatClass\">{{meatText}}</span>\n </div>\n <div class=\"listItemThree all-center\">\n <button class=\"btn btn-primary btn-sm\" type=\"button\" @click=\"editRecipe(item.hash)\">Edit</button>\n </div>\n\n </div>\n</template>\n\n<script>\n\n import {mapActions} from 'vuex';\n\n const meats = ['x', 'Chicken', 'Beef', 'Pork', 'Fish', 'Egg', 'Vegetable'];\n export default {\n name: \"RecipeItem\",\n props: ['item'],\n computed: {\n meatText: function () {\n return meats[this.item.meat];\n },\n meatClass: function () {\n return meats[this.item.meat].toLowerCase();\n }\n },\n methods: {\n ...mapActions(['editRecipe']),\n },\n }\n</script>\n\n<style scoped>\n\n .recipeItem {\n display: flex;\n padding:0.1rem;\n border-bottom:1px #ccc dotted;\n }\n\n .recipeItem:nth-of-type(odd){\n background-color: rgba(0,0,0,0.04);\n }\n\n\n .listItemSix {\n\n flex: 6;\n }\n\n .listItemThree {\n\n flex: 3;\n }\n\n .chicken {\n background: #8e5241;\n color: #fff;\n }\n\n .beef {\n background: #d72414;\n color: #fff;\n }\n\n .pork {\n background: #ef96d9;\n color: #fff;\n }\n\n .fish {\n background: #005ba0;\n color: #fff;\n }\n\n .egg {\n background: #fbc003;\n color: #000;\n }\n\n .vegetable {\n background: #00903e;\n color: #fff;\n }\n</style>\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./RecipeItem.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./RecipeItem.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./RecipeItem.vue?vue&type=template&id=ee115b5a&scoped=true&\"\nimport script from \"./RecipeItem.vue?vue&type=script&lang=js&\"\nexport * from \"./RecipeItem.vue?vue&type=script&lang=js&\"\nimport style0 from \"./RecipeItem.vue?vue&type=style&index=0&id=ee115b5a&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 \"ee115b5a\",\n null\n \n)\n\nexport default component.exports","<template>\n <div class=\"container \">\n <div v-bind:key=\"item._id\" v-for=\"item in allRecipes\">\n <RecipeItem v-bind:item=\"item\"/>\n </div>\n </div>\n</template>\n\n<script>\n import {mapGetters, mapActions} from 'vuex';\n\n import RecipeItem from \"./RecipeItem\";\n\n export default {\n name: \"Recipes\",\n computed: mapGetters(['allRecipes']),\n components: {RecipeItem},\n methods: {\n ...mapActions(['fetchRecipes']),\n },\n\n created() {\n this.fetchRecipes();\n }\n }\n</script>\n\n<style scoped>\n\n\n</style>\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Recipes.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Recipes.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Recipes.vue?vue&type=template&id=3a37b154&scoped=true&\"\nimport script from \"./Recipes.vue?vue&type=script&lang=js&\"\nexport * from \"./Recipes.vue?vue&type=script&lang=js&\"\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 \"3a37b154\",\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 _c('div',{staticClass:\"container \"},[(_vm.editMode===true)?_c('form',{attrs:{\"autocomplete\":\"off\"}},[_c('label',{attrs:{\"for\":\"name\"}},[_vm._v(\"Name:\")]),_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.editorItem.name),expression:\"editorItem.name\"}],attrs:{\"type\":\"text\",\"name\":\"name\",\"id\":\"name\",\"value\":\"\",\"required\":\"\"},domProps:{\"value\":(_vm.editorItem.name)},on:{\"input\":function($event){if($event.target.composing){ return; }_vm.$set(_vm.editorItem, \"name\", $event.target.value)}}}),_c('label',{attrs:{\"for\":\"url\"}},[_vm._v(\"Url:\")]),_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.editorItem.url),expression:\"editorItem.url\"}],attrs:{\"type\":\"text\",\"name\":\"url\",\"id\":\"url\",\"value\":\"\",\"required\":\"\"},domProps:{\"value\":(_vm.editorItem.url)},on:{\"input\":function($event){if($event.target.composing){ return; }_vm.$set(_vm.editorItem, \"url\", $event.target.value)}}}),_c('label',{attrs:{\"for\":\"md\"}},[_vm._v(\"Markdown:\")]),_c('textarea',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.editorItem.md),expression:\"editorItem.md\"}],attrs:{\"id\":\"md\",\"name\":\"md\",\"cols\":\"50\",\"rows\":\"10\"},domProps:{\"value\":(_vm.editorItem.md)},on:{\"input\":function($event){if($event.target.composing){ return; }_vm.$set(_vm.editorItem, \"md\", $event.target.value)}}}),_c('label',{attrs:{\"for\":\"meat\"}},[_vm._v(\"Meat\")]),_c('select',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.editorItem.meat),expression:\"editorItem.meat\"}],attrs:{\"id\":\"meat\",\"name\":\"meat\",\"required\":\"\"},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.editorItem, \"meat\", $event.target.multiple ? $$selectedVal : $$selectedVal[0])}}},[_c('option'),_c('option',{attrs:{\"value\":\"1\"}},[_vm._v(\"Chicken\")]),_c('option',{attrs:{\"value\":\"2\"}},[_vm._v(\"Beef\")]),_c('option',{attrs:{\"value\":\"3\"}},[_vm._v(\"Pork\")]),_c('option',{attrs:{\"value\":\"4\"}},[_vm._v(\"Fish\")]),_c('option',{attrs:{\"value\":\"5\"}},[_vm._v(\"Egg\")]),_c('option',{attrs:{\"value\":\"6\"}},[_vm._v(\"Vegetable\")])]),_c('label',{attrs:{\"for\":\"mealtype\"}},[_vm._v(\"Meal type\")]),_c('select',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.editorItem.mealtype),expression:\"editorItem.mealtype\"}],attrs:{\"id\":\"mealtype\",\"name\":\"mealtype\",\"required\":\"\"},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.editorItem, \"mealtype\", $event.target.multiple ? $$selectedVal : $$selectedVal[0])}}},[_c('option'),_c('option',{attrs:{\"value\":\"1\"}},[_vm._v(\"Main\")]),_c('option',{attrs:{\"value\":\"2\"}},[_vm._v(\"Soup\")])]),_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.editorItem._id),expression:\"editorItem._id\"}],attrs:{\"id\":\"_id\",\"name\":\"id\",\"type\":\"hidden\",\"value\":\"\",\"disabled\":\"\"},domProps:{\"value\":(_vm.editorItem._id)},on:{\"input\":function($event){if($event.target.composing){ return; }_vm.$set(_vm.editorItem, \"_id\", $event.target.value)}}}),_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.editorItem.short),expression:\"editorItem.short\"}],attrs:{\"type\":\"hidden\",\"id\":\"short\",\"name\":\"short\",\"value\":\"\",\"disabled\":\"\"},domProps:{\"value\":(_vm.editorItem.short)},on:{\"input\":function($event){if($event.target.composing){ return; }_vm.$set(_vm.editorItem, \"short\", $event.target.value)}}}),_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.editorItem.hash),expression:\"editorItem.hash\"}],attrs:{\"type\":\"hidden\",\"id\":\"hash\",\"name\":\"hash\",\"value\":\"\",\"disabled\":\"\"},domProps:{\"value\":(_vm.editorItem.hash)},on:{\"input\":function($event){if($event.target.composing){ return; }_vm.$set(_vm.editorItem, \"hash\", $event.target.value)}}}),_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.editorItem.lastused),expression:\"editorItem.lastused\"}],attrs:{\"type\":\"hidden\",\"id\":\"lastused\",\"name\":\"lastused\",\"value\":\"\",\"disabled\":\"\"},domProps:{\"value\":(_vm.editorItem.lastused)},on:{\"input\":function($event){if($event.target.composing){ return; }_vm.$set(_vm.editorItem, \"lastused\", $event.target.value)}}}),_c('div',{staticClass:\"my text-right\"},[_c('button',{staticClass:\"btn btn-danger btn-sm\",attrs:{\"id\":\"delete\",\"type\":\"button\"}},[_vm._v(\"Delete\")]),_c('button',{staticClass:\"btn btn-sm\",attrs:{\"type\":\"button\"},on:{\"click\":_vm.closeEditor}},[_vm._v(\"Close\")]),_c('button',{staticClass:\"btn btn-primary btn-sm\",attrs:{\"id\":\"save\",\"type\":\"button\"},on:{\"click\":function($event){return _vm.saveRecipe(_vm.editorItem)}}},[_vm._v(\"Save\")])])]):_vm._e()])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<template>\n <div class=\"container \">\n <form autocomplete=\"off\" v-if=\"editMode===true\">\n\n <label for=\"name\">Name:</label>\n <input type=\"text\" v-model=\"editorItem.name\" name=\"name\" id=\"name\" value=\"\" required/>\n\n <label for=\"url\">Url:</label>\n <input type=\"text\" v-model=\"editorItem.url\" name=\"url\" id=\"url\" value=\"\" required/>\n\n <label for=\"md\">Markdown:</label>\n <textarea id=\"md\" name=\"md\" cols=\"50\" rows=\"10\" v-model=\"editorItem.md\"></textarea>\n\n <label for=\"meat\">Meat</label>\n <select v-model=\"editorItem.meat\" id=\"meat\" name=\"meat\" required>\n <option></option>\n <option value=\"1\">Chicken</option>\n <option value=\"2\">Beef</option>\n <option value=\"3\">Pork</option>\n <option value=\"4\">Fish</option>\n <option value=\"5\">Egg</option>\n <option value=\"6\">Vegetable</option>\n\n </select>\n\n <label for=\"mealtype\">Meal type</label>\n <select v-model=\"editorItem.mealtype\" id=\"mealtype\" name=\"mealtype\" required>\n <option></option>\n <option value=\"1\">Main</option>\n <option value=\"2\">Soup</option>\n </select>\n\n <input v-model=\"editorItem._id\" id=\"_id\" name=\"id\" type=\"hidden\" value=\"\" disabled/>\n <input v-model=\"editorItem.short\" type=\"hidden\" id=\"short\" name=\"short\" value=\"\" disabled/>\n <input v-model=\"editorItem.hash\" type=\"hidden\" id=\"hash\" name=\"hash\" value=\"\" disabled/>\n <input v-model=\"editorItem.lastused\" type=\"hidden\" id=\"lastused\" name=\"lastused\" value=\"\" disabled/>\n\n <div class=\"my text-right\">\n\n <button class=\"btn btn-danger btn-sm\" id=\"delete\" type=\"button\">Delete</button>\n <button class=\"btn btn-sm\" @click=\"closeEditor\" type=\"button\">Close</button>\n <button class=\"btn btn-primary btn-sm\" @click=\"saveRecipe(editorItem)\" id=\"save\" type=\"button\">Save</button>\n\n </div>\n </form>\n </div>\n</template>\n\n<script>\n import {mapGetters, mapActions} from 'vuex';\n\n export default {\n name: \"Editor\",\n computed: {\n ...mapGetters(['editMode', 'editorItem'])\n },\n data() {\n return {\n\n name: \"\",\n recipe: mapGetters(['editorItem'])\n }\n },\n methods: {\n\n ...mapActions(['closeEditor','saveRecipe']),\n }\n }\n</script>\n\n<style scoped>\n\n</style>\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Editor.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Editor.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Editor.vue?vue&type=template&id=1e02a592&scoped=true&\"\nimport script from \"./Editor.vue?vue&type=script&lang=js&\"\nexport * from \"./Editor.vue?vue&type=script&lang=js&\"\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 \"1e02a592\",\n null\n \n)\n\nexport default component.exports","<template>\n <div id=\"app\">\n <Header />\n <Editor />\n <Recipes/>\n </div>\n</template>\n\n<script>\n\n\n import Header from \"./components/layout/Header\";\n import Recipes from './components/Recipes';\n import Editor from \"./components/Editor\";\n\n export default {\n name: 'App',\n data() {\n return {}\n },\n components: {\n Header,\n Editor,\n Recipes\n\n }, methods: {\n\n }\n }\n</script>\n\n<style>\n @import './css/app.css';\n @import './css/custom.css';\n</style>\n","import mod from \"-!../node_modules/cache-loader/dist/cjs.js??ref--12-0!../node_modules/thread-loader/dist/cjs.js!../node_modules/babel-loader/lib/index.js!../node_modules/cache-loader/dist/cjs.js??ref--0-0!../node_modules/vue-loader/lib/index.js??vue-loader-options!./App.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../node_modules/cache-loader/dist/cjs.js??ref--12-0!../node_modules/thread-loader/dist/cjs.js!../node_modules/babel-loader/lib/index.js!../node_modules/cache-loader/dist/cjs.js??ref--0-0!../node_modules/vue-loader/lib/index.js??vue-loader-options!./App.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./App.vue?vue&type=template&id=5f0966cb&\"\nimport script from \"./App.vue?vue&type=script&lang=js&\"\nexport * from \"./App.vue?vue&type=script&lang=js&\"\nimport style0 from \"./App.vue?vue&type=style&index=0&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 null,\n null\n \n)\n\nexport default component.exports","import axios from 'axios';\n\n// const url = 'http://localhost:3000/recipes';\nconst url = 'https://menu.silvrtree.co.uk/recipes';\n\nconst state = {\n recipes: [],\n currentItem: {\n name: \"\",\n url: \"\",\n md: \"\",\n meat: \"\",\n mealtype: \"\",\n _id: \"\",\n short: \"\",\n hash: \"\",\n lastused: \"\"\n },\n editMode: false\n};\n\nconst getters = {\n allRecipes: (state) => state.recipes,\n editorItem: (state) => state.currentItem,\n editMode: (state) => state.editMode\n};\n\nconst actions = {\n\n async fetchRecipes({commit}) {\n const response = await axios.get(url);\n commit('setRecipes', response.data);\n },\n\n async editRecipe({commit}, hash) {\n console.log(hash);\n console.log(commit);\n\n const response = await axios.get(`${url}/${hash}`);\n\n console.log(response.data);\n\n commit('setCurrentItem', response.data);\n\n commit('setEditMode', true);\n },\n async newRecipe({commit}) {\n\n commit('setCurrentItem', {\n name: \"\",\n url: \"\",\n md: \"\",\n meat: \"\",\n mealtype: \"\",\n _id: \"\",\n short: \"\",\n hash: \"\",\n lastused: \"\"\n });\n\n commit('setEditMode', true);\n },\n async closeEditor({commit}) {\n\n commit('setCurrentItem', {\n name: \"\",\n url: \"\",\n md: \"\",\n meat: \"\",\n mealtype: \"\",\n _id: \"\",\n short: \"\",\n hash: \"\",\n lastused: \"\"\n });\n\n commit('setEditMode', false);\n },\n async saveRecipe({commit}, newRecipe) {\n const data = {...newRecipe};\n\n let response;\n\n if (data.hash === '') {\n console.log('Create new');\n response = await axios.post(`${url}`, data);\n } else\n {\n console.log('Update existing');\n response = await axios.put(`${url}/${data.hash}`, data);\n }\n\n if (response.data.changes > 0 || response.data.msg === \"Row inserted\") {\n commit('setEditMode', false);\n\n commit('setCurrentItem', {\n name: \"\",\n url: \"\",\n md: \"\",\n meat: \"\",\n mealtype: \"\",\n _id: \"\",\n short: \"\",\n hash: \"\",\n lastused: \"\"\n });\n\n const updatedList = await axios.get(url);\n commit('setRecipes', updatedList.data);\n }\n\n }\n};\n\nconst mutations = {\n setRecipes: (state, recipes) => (state.recipes = recipes),\n setCurrentItem: (state, recipe) => (state.currentItem = recipe),\n setEditMode: (state, mode) => (state.editMode = mode),\n};\n\nexport default {\n state,\n getters,\n actions,\n mutations\n}\n","import Vue from 'vue'\nimport Vuex from 'vuex'\n\nimport recipes from \"./modules/recipes\";\nVue.use(Vuex)\n\nexport default new Vuex.Store({\n state: {\n },\n mutations: {\n },\n actions: {\n },\n modules: {\n recipes\n }\n})\n","import Vue from 'vue'\nimport App from './App.vue'\nimport store from './store'\n\nVue.config.productionTip = false\n\nnew Vue({\n store,\n render: h => h(App)\n}).$mount('#app')\n"],"sourceRoot":""} |