\n
\n
\n
\n \n \n \n\n\n\n\n\n\n\n\n\n// WEBPACK FOOTER //\n// Button.vue?3b36fc63","import Vue from 'vue'\nimport Button from './Button.vue'\n\nconst plugin = {\n install(Vue, options) {\n \tVue.component('ToggleButton', Button)\n }\n}\n\nexport default plugin\n\n\n\n// WEBPACK FOOTER //\n// ./src/index.js","exports = module.exports = require(\"../node_modules/css-loader/lib/css-base.js\")();\n// imports\n\n\n// module\nexports.push([module.id, \".vue-js-switch[data-v-25adc6c0]{display:inline-block;position:relative;overflow:hidden;vertical-align:middle;user-select:none;font-size:10px;cursor:pointer}.vue-js-switch .v-switch-input[data-v-25adc6c0]{display:none}.vue-js-switch .v-switch-label[data-v-25adc6c0]{position:absolute;top:0;font-weight:600;color:#fff}.vue-js-switch .v-switch-label.v-left[data-v-25adc6c0]{left:10px}.vue-js-switch .v-switch-label.v-right[data-v-25adc6c0]{right:10px}.vue-js-switch .v-switch-core[data-v-25adc6c0]{display:block;position:relative;box-sizing:border-box;outline:0;margin:0;transition:border-color .3s,background-color .3s;user-select:none}.vue-js-switch .v-switch-core .v-switch-button[data-v-25adc6c0]{display:block;position:absolute;overflow:hidden;top:0;left:0;transform:translate3d(3px,3px,0);border-radius:100%;background-color:#fff}.vue-js-switch.disabled[data-v-25adc6c0]{pointer-events:none;opacity:.6}\", \"\"]);\n\n// exports\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/css-loader!./~/vue-loader/lib/style-compiler?{\"id\":\"data-v-25adc6c0\",\"scoped\":true,\"hasInlineConfig\":false}!./~/sass-loader/lib/loader.js!./~/vue-loader/lib/selector.js?type=styles&index=0!./src/Button.vue\n// module id = 4\n// module chunks = 0","/*\r\n\tMIT License http://www.opensource.org/licenses/mit-license.php\r\n\tAuthor Tobias Koppers @sokra\r\n*/\r\n// css base code, injected by the css-loader\r\nmodule.exports = function() {\r\n\tvar list = [];\r\n\r\n\t// return the list of modules as css string\r\n\tlist.toString = function toString() {\r\n\t\tvar result = [];\r\n\t\tfor(var i = 0; i < this.length; i++) {\r\n\t\t\tvar item = this[i];\r\n\t\t\tif(item[2]) {\r\n\t\t\t\tresult.push(\"@media \" + item[2] + \"{\" + item[1] + \"}\");\r\n\t\t\t} else {\r\n\t\t\t\tresult.push(item[1]);\r\n\t\t\t}\r\n\t\t}\r\n\t\treturn result.join(\"\");\r\n\t};\r\n\r\n\t// import a list of modules into the list\r\n\tlist.i = function(modules, mediaQuery) {\r\n\t\tif(typeof modules === \"string\")\r\n\t\t\tmodules = [[null, modules, \"\"]];\r\n\t\tvar alreadyImportedModules = {};\r\n\t\tfor(var i = 0; i < this.length; i++) {\r\n\t\t\tvar id = this[i][0];\r\n\t\t\tif(typeof id === \"number\")\r\n\t\t\t\talreadyImportedModules[id] = true;\r\n\t\t}\r\n\t\tfor(i = 0; i < modules.length; i++) {\r\n\t\t\tvar item = modules[i];\r\n\t\t\t// skip already imported module\r\n\t\t\t// this implementation is not 100% perfect for weird media query combinations\r\n\t\t\t// when a module is imported multiple times with different media queries.\r\n\t\t\t// I hope this will never occur (Hey this way we have smaller bundles)\r\n\t\t\tif(typeof item[0] !== \"number\" || !alreadyImportedModules[item[0]]) {\r\n\t\t\t\tif(mediaQuery && !item[2]) {\r\n\t\t\t\t\titem[2] = mediaQuery;\r\n\t\t\t\t} else if(mediaQuery) {\r\n\t\t\t\t\titem[2] = \"(\" + item[2] + \") and (\" + mediaQuery + \")\";\r\n\t\t\t\t}\r\n\t\t\t\tlist.push(item);\r\n\t\t\t}\r\n\t\t}\r\n\t};\r\n\treturn list;\r\n};\r\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/css-loader/lib/css-base.js\n// module id = 5\n// module chunks = 0","// this module is a runtime utility for cleaner component module output and will\n// be included in the final webpack user bundle\n\nmodule.exports = function normalizeComponent (\n rawScriptExports,\n compiledTemplate,\n scopeId,\n cssModules\n) {\n var esModule\n var scriptExports = rawScriptExports = rawScriptExports || {}\n\n // ES6 modules interop\n var type = typeof rawScriptExports.default\n if (type === 'object' || type === 'function') {\n esModule = rawScriptExports\n scriptExports = rawScriptExports.default\n }\n\n // Vue.extend constructor export interop\n var options = typeof scriptExports === 'function'\n ? scriptExports.options\n : scriptExports\n\n // render functions\n if (compiledTemplate) {\n options.render = compiledTemplate.render\n options.staticRenderFns = compiledTemplate.staticRenderFns\n }\n\n // scopedId\n if (scopeId) {\n options._scopeId = scopeId\n }\n\n // inject cssModules\n if (cssModules) {\n var computed = Object.create(options.computed || null)\n Object.keys(cssModules).forEach(function (key) {\n var module = cssModules[key]\n computed[key] = function () { return module }\n })\n options.computed = computed\n }\n\n return {\n esModule: esModule,\n exports: scriptExports,\n options: options\n }\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/vue-loader/lib/component-normalizer.js\n// module id = 6\n// module chunks = 0","module.exports={render:function (){var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;\n return _c('label', {\n class: _vm.className,\n attrs: {\n \"role\": \"checkbox\",\n \"aria-checked\": _vm.ariaChecked\n }\n }, [_c('input', {\n staticClass: \"v-switch-input\",\n attrs: {\n \"type\": \"checkbox\",\n \"name\": _vm.name\n },\n on: {\n \"change\": function($event) {\n $event.stopPropagation();\n return _vm.toggle($event)\n }\n }\n }), _vm._v(\" \"), _c('div', {\n staticClass: \"v-switch-core\",\n style: (_vm.coreStyle)\n }, [_c('div', {\n staticClass: \"v-switch-button\",\n style: (_vm.buttonStyle)\n })]), _vm._v(\" \"), (_vm.labels) ? [(_vm.toggled) ? _c('span', {\n staticClass: \"v-switch-label v-left\",\n style: (_vm.labelStyle),\n domProps: {\n \"innerHTML\": _vm._s(_vm.labelChecked)\n }\n }) : _c('span', {\n staticClass: \"v-switch-label v-right\",\n style: (_vm.labelStyle),\n domProps: {\n \"innerHTML\": _vm._s(_vm.labelUnchecked)\n }\n })] : _vm._e()], 2)\n},staticRenderFns: []}\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/vue-loader/lib/template-compiler?{\"id\":\"data-v-25adc6c0\"}!./~/vue-loader/lib/selector.js?type=template&index=0!./src/Button.vue\n// module id = 7\n// module chunks = 0","// style-loader: Adds some css to the DOM by adding a \n","import { render, staticRenderFns } from \"./add-recommended.vue?vue&type=template&id=2e36e3d5&\"\nimport script from \"./add-recommended.vue?vue&type=script&lang=js&\"\nexport * from \"./add-recommended.vue?vue&type=script&lang=js&\"\nimport style0 from \"./add-recommended.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\ncomponent.options.__file = \"add-recommended.vue\"\nexport default component.exports","var render = function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\n \"div\",\n { attrs: { id: \"addShowPortal\" } },\n [\n _c(\n \"app-link\",\n {\n staticClass: \"btn-medusa btn-large\",\n attrs: { href: \"addShows/newShow/\", id: \"btnNewShow\" }\n },\n [\n _c(\"div\", { staticClass: \"button\" }, [\n _c(\"div\", { staticClass: \"add-list-icon-addnewshow\" })\n ]),\n _vm._v(\" \"),\n _c(\"div\", { staticClass: \"buttontext\" }, [\n _c(\"h3\", [_vm._v(\"Add New Show\")]),\n _vm._v(\" \"),\n _c(\"p\", [\n _vm._v(\n \"For shows that you haven't downloaded yet, this option finds a show on your preferred indexer, creates a directory for it's episodes, and adds it to Medusa.\"\n )\n ])\n ])\n ]\n ),\n _vm._v(\" \"),\n _c(\n \"app-link\",\n {\n staticClass: \"btn-medusa btn-large\",\n attrs: { href: \"addShows/existingShows/\", id: \"btnExistingShow\" }\n },\n [\n _c(\"div\", { staticClass: \"button\" }, [\n _c(\"div\", { staticClass: \"add-list-icon-addexistingshow\" })\n ]),\n _vm._v(\" \"),\n _c(\"div\", { staticClass: \"buttontext\" }, [\n _c(\"h3\", [_vm._v(\"Add Existing Shows\")]),\n _vm._v(\" \"),\n _c(\"p\", [\n _vm._v(\n \"Use this option to add shows that already have a folder created on your hard drive. Medusa will scan your existing metadata/episodes and add the show accordingly.\"\n )\n ])\n ])\n ]\n )\n ],\n 1\n )\n}\nvar staticRenderFns = []\nrender._withStripped = true\n\nexport { render, staticRenderFns }","
\n \n
\n \n \n
Add New Show \n
For shows that you haven't downloaded yet, this option finds a show on your preferred indexer, creates a directory for it's episodes, and adds it to Medusa.
\n
\n \n\n
\n \n \n
Add Existing Shows \n
Use this option to add shows that already have a folder created on your hard drive. Medusa will scan your existing metadata/episodes and add the show accordingly.
\n
\n \n
\n \n\n\n","import mod from \"-!../../node_modules/babel-loader/lib/index.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./add-shows.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/babel-loader/lib/index.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./add-shows.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./add-shows.vue?vue&type=template&id=6b540b82&\"\nimport script from \"./add-shows.vue?vue&type=script&lang=js&\"\nexport * from \"./add-shows.vue?vue&type=script&lang=js&\"\nimport style0 from \"./add-shows.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\ncomponent.options.__file = \"add-shows.vue\"\nexport default component.exports","var render = function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\n \"div\",\n { staticClass: \"anidb-release-group-ui-wrapper top-10 max-width\" },\n [\n _c(\"div\", { staticClass: \"row\" }, [\n _c(\"div\", { staticClass: \"col-sm-4 left-whitelist\" }, [\n _c(\"span\", [_vm._v(\"Whitelist\")]),\n _vm.showDeleteFromWhitelist\n ? _c(\"img\", {\n staticClass: \"deleteFromWhitelist\",\n attrs: { src: \"images/no16.png\" },\n on: {\n click: function($event) {\n _vm.deleteFromList(\"whitelist\")\n }\n }\n })\n : _vm._e(),\n _vm._v(\" \"),\n _c(\n \"ul\",\n [\n _vm._l(_vm.itemsWhitelist, function(release) {\n return _c(\n \"li\",\n {\n key: release.id,\n class: { active: release.toggled },\n on: {\n click: function($event) {\n release.toggled = !release.toggled\n }\n }\n },\n [_vm._v(_vm._s(release.name))]\n )\n }),\n _vm._v(\" \"),\n _c(\n \"div\",\n {\n staticClass: \"arrow\",\n on: {\n click: function($event) {\n _vm.moveToList(\"whitelist\")\n }\n }\n },\n [_c(\"img\", { attrs: { src: \"images/curved-arrow-left.png\" } })]\n )\n ],\n 2\n )\n ]),\n _vm._v(\" \"),\n _c(\"div\", { staticClass: \"col-sm-4 center-available\" }, [\n _c(\"span\", [_vm._v(\"Release groups\")]),\n _vm._v(\" \"),\n _c(\n \"ul\",\n [\n _vm._l(_vm.itemsReleaseGroups, function(release) {\n return _c(\n \"li\",\n {\n key: release.id,\n staticClass: \"initial\",\n class: { active: release.toggled },\n on: {\n click: function($event) {\n release.toggled = !release.toggled\n }\n }\n },\n [_vm._v(_vm._s(release.name))]\n )\n }),\n _vm._v(\" \"),\n _c(\n \"div\",\n {\n staticClass: \"arrow\",\n on: {\n click: function($event) {\n _vm.moveToList(\"releasegroups\")\n }\n }\n },\n [_c(\"img\", { attrs: { src: \"images/curved-arrow-left.png\" } })]\n )\n ],\n 2\n )\n ]),\n _vm._v(\" \"),\n _c(\"div\", { staticClass: \"col-sm-4 right-blacklist\" }, [\n _c(\"span\", [_vm._v(\"Blacklist\")]),\n _vm.showDeleteFromBlacklist\n ? _c(\"img\", {\n staticClass: \"deleteFromBlacklist\",\n attrs: { src: \"images/no16.png\" },\n on: {\n click: function($event) {\n _vm.deleteFromList(\"blacklist\")\n }\n }\n })\n : _vm._e(),\n _vm._v(\" \"),\n _c(\n \"ul\",\n [\n _vm._l(_vm.itemsBlacklist, function(release) {\n return _c(\n \"li\",\n {\n key: release.id,\n class: { active: release.toggled },\n on: {\n click: function($event) {\n release.toggled = !release.toggled\n }\n }\n },\n [_vm._v(_vm._s(release.name))]\n )\n }),\n _vm._v(\" \"),\n _c(\n \"div\",\n {\n staticClass: \"arrow\",\n on: {\n click: function($event) {\n _vm.moveToList(\"blacklist\")\n }\n }\n },\n [_c(\"img\", { attrs: { src: \"images/curved-arrow-left.png\" } })]\n )\n ],\n 2\n )\n ])\n ]),\n _vm._v(\" \"),\n _c(\n \"div\",\n { staticClass: \"row\", attrs: { id: \"add-new-release-group\" } },\n [\n _c(\"div\", { staticClass: \"col-md-4\" }, [\n _c(\"input\", {\n directives: [\n {\n name: \"model\",\n rawName: \"v-model\",\n value: _vm.newGroup,\n expression: \"newGroup\"\n }\n ],\n staticClass: \"form-control input-sm\",\n attrs: { type: \"text\", placeholder: \"add custom group\" },\n domProps: { value: _vm.newGroup },\n on: {\n input: function($event) {\n if ($event.target.composing) {\n return\n }\n _vm.newGroup = $event.target.value\n }\n }\n })\n ]),\n _vm._v(\" \"),\n _vm._m(0)\n ]\n )\n ]\n )\n}\nvar staticRenderFns = [\n function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\"div\", { staticClass: \"col-md-8\" }, [\n _c(\"p\", [\n _vm._v(\n \"Use the input to add custom whitelist / blacklist release groups. Click on the \"\n ),\n _c(\"img\", { attrs: { src: \"images/curved-arrow-left.png\" } }),\n _vm._v(\" to add it to the correct list.\")\n ])\n ])\n }\n]\nrender._withStripped = true\n\nexport { render, staticRenderFns }","
\n \n
\n
\n
Whitelist \n
\n {{ release.name }} \n \n
\n
\n \n
\n
\n
Release groups \n
\n {{ release.name }} \n \n
\n
\n \n
\n
\n
Blacklist \n
\n {{ release.name }} \n \n
\n
\n \n
\n
\n
\n
\n \n
\n
\n
Use the input to add custom whitelist / blacklist release groups. Click on the to add it to the correct list.
\n
\n
\n
\n \n\n\n","import mod from \"-!../../node_modules/babel-loader/lib/index.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./anidb-release-group-ui.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/babel-loader/lib/index.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./anidb-release-group-ui.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./anidb-release-group-ui.vue?vue&type=template&id=2f0b049c&scoped=true&\"\nimport script from \"./anidb-release-group-ui.vue?vue&type=script&lang=js&\"\nexport * from \"./anidb-release-group-ui.vue?vue&type=script&lang=js&\"\nimport style0 from \"./anidb-release-group-ui.vue?vue&type=style&index=0&id=2f0b049c&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 \"2f0b049c\",\n null\n \n)\n\ncomponent.options.__file = \"anidb-release-group-ui.vue\"\nexport default component.exports","var render = function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\n \"nav\",\n {\n staticClass: \"navbar navbar-default navbar-fixed-top hidden-print\",\n attrs: { role: \"navigation\" }\n },\n [\n _c(\"div\", { staticClass: \"container-fluid\" }, [\n _c(\n \"div\",\n { staticClass: \"navbar-header\" },\n [\n _c(\n \"button\",\n {\n staticClass: \"navbar-toggle collapsed\",\n attrs: {\n type: \"button\",\n \"data-toggle\": \"collapse\",\n \"data-target\": \"#main_nav\"\n }\n },\n [\n _vm.toolsBadgeCount > 0\n ? _c(\n \"span\",\n { class: \"floating-badge\" + _vm.toolsBadgeClass },\n [_vm._v(_vm._s(_vm.toolsBadgeCount))]\n )\n : _vm._e(),\n _vm._v(\" \"),\n _c(\"span\", { staticClass: \"sr-only\" }, [\n _vm._v(\"Toggle navigation\")\n ]),\n _vm._v(\" \"),\n _c(\"span\", { staticClass: \"icon-bar\" }),\n _vm._v(\" \"),\n _c(\"span\", { staticClass: \"icon-bar\" }),\n _vm._v(\" \"),\n _c(\"span\", { staticClass: \"icon-bar\" })\n ]\n ),\n _vm._v(\" \"),\n _c(\n \"app-link\",\n {\n staticClass: \"navbar-brand\",\n attrs: { href: \"home/\", title: \"Medusa\" }\n },\n [\n _c(\"img\", {\n staticClass: \"img-responsive pull-left\",\n staticStyle: { height: \"50px\" },\n attrs: { alt: \"Medusa\", src: \"images/medusa.png\" }\n })\n ]\n )\n ],\n 1\n ),\n _vm._v(\" \"),\n _vm.isAuthenticated\n ? _c(\n \"div\",\n {\n staticClass: \"collapse navbar-collapse\",\n attrs: { id: \"main_nav\" }\n },\n [\n _c(\"ul\", { staticClass: \"nav navbar-nav navbar-right\" }, [\n _c(\n \"li\",\n {\n staticClass: \"navbar-split dropdown\",\n class: { active: _vm.topMenu === \"home\" },\n attrs: { id: \"NAVhome\" }\n },\n [\n _c(\n \"app-link\",\n {\n staticClass: \"dropdown-toggle\",\n attrs: {\n href: \"home/\",\n \"aria-haspopup\": \"true\",\n \"data-toggle\": \"dropdown\",\n \"data-hover\": \"dropdown\"\n }\n },\n [\n _c(\"span\", [_vm._v(\"Shows\")]),\n _vm._v(\" \"),\n _c(\"b\", { staticClass: \"caret\" })\n ]\n ),\n _vm._v(\" \"),\n _c(\n \"ul\",\n { staticClass: \"dropdown-menu\" },\n [\n _c(\n \"li\",\n [\n _c(\"app-link\", { attrs: { href: \"home/\" } }, [\n _c(\"i\", { staticClass: \"menu-icon-home\" }),\n _vm._v(\" Show List\")\n ])\n ],\n 1\n ),\n _vm._v(\" \"),\n _c(\n \"li\",\n [\n _c(\"app-link\", { attrs: { href: \"addShows/\" } }, [\n _c(\"i\", { staticClass: \"menu-icon-addshow\" }),\n _vm._v(\" Add Shows\")\n ])\n ],\n 1\n ),\n _vm._v(\" \"),\n _c(\n \"li\",\n [\n _c(\n \"app-link\",\n { attrs: { href: \"addRecommended/\" } },\n [\n _c(\"i\", { staticClass: \"menu-icon-addshow\" }),\n _vm._v(\" Add Recommended Shows\")\n ]\n )\n ],\n 1\n ),\n _vm._v(\" \"),\n _c(\n \"li\",\n [\n _c(\n \"app-link\",\n { attrs: { href: \"home/postprocess/\" } },\n [\n _c(\"i\", {\n staticClass: \"menu-icon-postprocess\"\n }),\n _vm._v(\" Manual Post-Processing\")\n ]\n )\n ],\n 1\n ),\n _vm._v(\" \"),\n _vm.recentShows.length > 0\n ? [\n _c(\"li\", {\n staticClass: \"divider\",\n attrs: { role: \"separator\" }\n }),\n _vm._v(\" \"),\n _vm._l(_vm.recentShows, function(recentShow) {\n return _c(\n \"li\",\n { key: recentShow.link },\n [\n _c(\n \"app-link\",\n { attrs: { href: recentShow.link } },\n [\n _c(\"i\", {\n staticClass: \"menu-icon-addshow\"\n }),\n _vm._v(\n \" \" +\n _vm._s(recentShow.name) +\n \"\\n \"\n )\n ]\n )\n ],\n 1\n )\n })\n ]\n : _vm._e()\n ],\n 2\n ),\n _vm._v(\" \"),\n _c(\"div\", { staticStyle: { clear: \"both\" } })\n ],\n 1\n ),\n _vm._v(\" \"),\n _c(\n \"li\",\n {\n class: { active: _vm.topMenu === \"schedule\" },\n attrs: { id: \"NAVschedule\" }\n },\n [\n _c(\"app-link\", { attrs: { href: \"schedule/\" } }, [\n _vm._v(\"Schedule\")\n ])\n ],\n 1\n ),\n _vm._v(\" \"),\n _c(\n \"li\",\n {\n class: { active: _vm.topMenu === \"history\" },\n attrs: { id: \"NAVhistory\" }\n },\n [\n _c(\"app-link\", { attrs: { href: \"history/\" } }, [\n _vm._v(\"History\")\n ])\n ],\n 1\n ),\n _vm._v(\" \"),\n _c(\n \"li\",\n {\n staticClass: \"navbar-split dropdown\",\n class: { active: _vm.topMenu === \"manage\" },\n attrs: { id: \"NAVmanage\" }\n },\n [\n _c(\n \"app-link\",\n {\n staticClass: \"dropdown-toggle\",\n attrs: {\n href: \"manage/episodeStatuses/\",\n \"aria-haspopup\": \"true\",\n \"data-toggle\": \"dropdown\",\n \"data-hover\": \"dropdown\"\n }\n },\n [\n _c(\"span\", [_vm._v(\"Manage\")]),\n _vm._v(\" \"),\n _c(\"b\", { staticClass: \"caret\" })\n ]\n ),\n _vm._v(\" \"),\n _c(\"ul\", { staticClass: \"dropdown-menu\" }, [\n _c(\n \"li\",\n [\n _c(\"app-link\", { attrs: { href: \"manage/\" } }, [\n _c(\"i\", { staticClass: \"menu-icon-manage\" }),\n _vm._v(\" Mass Update\")\n ])\n ],\n 1\n ),\n _vm._v(\" \"),\n _c(\n \"li\",\n [\n _c(\n \"app-link\",\n { attrs: { href: \"manage/backlogOverview/\" } },\n [\n _c(\"i\", {\n staticClass: \"menu-icon-backlog-view\"\n }),\n _vm._v(\" Backlog Overview\")\n ]\n )\n ],\n 1\n ),\n _vm._v(\" \"),\n _c(\n \"li\",\n [\n _c(\n \"app-link\",\n { attrs: { href: \"manage/manageSearches/\" } },\n [\n _c(\"i\", {\n staticClass: \"menu-icon-manage-searches\"\n }),\n _vm._v(\" Manage Searches\")\n ]\n )\n ],\n 1\n ),\n _vm._v(\" \"),\n _c(\n \"li\",\n [\n _c(\n \"app-link\",\n { attrs: { href: \"manage/episodeStatuses/\" } },\n [\n _c(\"i\", { staticClass: \"menu-icon-manage2\" }),\n _vm._v(\" Episode Status Management\")\n ]\n )\n ],\n 1\n ),\n _vm._v(\" \"),\n _vm.linkVisible.plex\n ? _c(\n \"li\",\n [\n _c(\n \"app-link\",\n { attrs: { href: \"home/updatePLEX/\" } },\n [\n _c(\"i\", { staticClass: \"menu-icon-plex\" }),\n _vm._v(\" Update PLEX\")\n ]\n )\n ],\n 1\n )\n : _vm._e(),\n _vm._v(\" \"),\n _vm.linkVisible.kodi\n ? _c(\n \"li\",\n [\n _c(\n \"app-link\",\n { attrs: { href: \"home/updateKODI/\" } },\n [\n _c(\"i\", { staticClass: \"menu-icon-kodi\" }),\n _vm._v(\" Update KODI\")\n ]\n )\n ],\n 1\n )\n : _vm._e(),\n _vm._v(\" \"),\n _vm.linkVisible.emby\n ? _c(\n \"li\",\n [\n _c(\n \"app-link\",\n { attrs: { href: \"home/updateEMBY/\" } },\n [\n _c(\"i\", { staticClass: \"menu-icon-emby\" }),\n _vm._v(\" Update Emby\")\n ]\n )\n ],\n 1\n )\n : _vm._e(),\n _vm._v(\" \"),\n _vm.linkVisible.manageTorrents\n ? _c(\n \"li\",\n [\n _c(\n \"app-link\",\n {\n attrs: {\n href: \"manage/manageTorrents/\",\n target: \"_blank\"\n }\n },\n [\n _c(\"i\", {\n staticClass: \"menu-icon-bittorrent\"\n }),\n _vm._v(\" Manage Torrents\")\n ]\n )\n ],\n 1\n )\n : _vm._e(),\n _vm._v(\" \"),\n _vm.linkVisible.failedDownloads\n ? _c(\n \"li\",\n [\n _c(\n \"app-link\",\n {\n attrs: { href: \"manage/failedDownloads/\" }\n },\n [\n _c(\"i\", {\n staticClass: \"menu-icon-failed-download\"\n }),\n _vm._v(\" Failed Downloads\")\n ]\n )\n ],\n 1\n )\n : _vm._e(),\n _vm._v(\" \"),\n _vm.linkVisible.subtitleMissed\n ? _c(\n \"li\",\n [\n _c(\n \"app-link\",\n { attrs: { href: \"manage/subtitleMissed/\" } },\n [\n _c(\"i\", {\n staticClass: \"menu-icon-backlog\"\n }),\n _vm._v(\" Missed Subtitle Management\")\n ]\n )\n ],\n 1\n )\n : _vm._e(),\n _vm._v(\" \"),\n _vm.linkVisible.subtitleMissedPP\n ? _c(\n \"li\",\n [\n _c(\n \"app-link\",\n {\n attrs: { href: \"manage/subtitleMissedPP/\" }\n },\n [\n _c(\"i\", {\n staticClass: \"menu-icon-backlog\"\n }),\n _vm._v(\n \" Missed Subtitle in Post-Process folder\"\n )\n ]\n )\n ],\n 1\n )\n : _vm._e()\n ]),\n _vm._v(\" \"),\n _c(\"div\", { staticStyle: { clear: \"both\" } })\n ],\n 1\n ),\n _vm._v(\" \"),\n _c(\n \"li\",\n {\n staticClass: \"navbar-split dropdown\",\n class: { active: _vm.topMenu === \"config\" },\n attrs: { id: \"NAVconfig\" }\n },\n [\n _c(\n \"app-link\",\n {\n staticClass: \"dropdown-toggle\",\n attrs: {\n href: \"config/\",\n \"aria-haspopup\": \"true\",\n \"data-toggle\": \"dropdown\",\n \"data-hover\": \"dropdown\"\n }\n },\n [\n _c(\"span\", { staticClass: \"visible-xs-inline\" }, [\n _vm._v(\"Config\")\n ]),\n _c(\"img\", {\n staticClass: \"navbaricon hidden-xs\",\n attrs: { src: \"images/menu/system18.png\" }\n }),\n _vm._v(\" \"),\n _c(\"b\", { staticClass: \"caret\" })\n ]\n ),\n _vm._v(\" \"),\n _c(\"ul\", { staticClass: \"dropdown-menu\" }, [\n _c(\n \"li\",\n [\n _c(\"app-link\", { attrs: { href: \"config/\" } }, [\n _c(\"i\", { staticClass: \"menu-icon-help\" }),\n _vm._v(\" Help & Info\")\n ])\n ],\n 1\n ),\n _vm._v(\" \"),\n _c(\n \"li\",\n [\n _c(\n \"app-link\",\n { attrs: { href: \"config/general/\" } },\n [\n _c(\"i\", { staticClass: \"menu-icon-config\" }),\n _vm._v(\" General\")\n ]\n )\n ],\n 1\n ),\n _vm._v(\" \"),\n _c(\n \"li\",\n [\n _c(\n \"app-link\",\n { attrs: { href: \"config/backuprestore/\" } },\n [\n _c(\"i\", { staticClass: \"menu-icon-backup\" }),\n _vm._v(\" Backup & Restore\")\n ]\n )\n ],\n 1\n ),\n _vm._v(\" \"),\n _c(\n \"li\",\n [\n _c(\n \"app-link\",\n { attrs: { href: \"config/search/\" } },\n [\n _c(\"i\", {\n staticClass: \"menu-icon-manage-searches\"\n }),\n _vm._v(\" Search Settings\")\n ]\n )\n ],\n 1\n ),\n _vm._v(\" \"),\n _c(\n \"li\",\n [\n _c(\n \"app-link\",\n { attrs: { href: \"config/providers/\" } },\n [\n _c(\"i\", { staticClass: \"menu-icon-provider\" }),\n _vm._v(\" Search Providers\")\n ]\n )\n ],\n 1\n ),\n _vm._v(\" \"),\n _c(\n \"li\",\n [\n _c(\n \"app-link\",\n { attrs: { href: \"config/subtitles/\" } },\n [\n _c(\"i\", { staticClass: \"menu-icon-backlog\" }),\n _vm._v(\" Subtitles Settings\")\n ]\n )\n ],\n 1\n ),\n _vm._v(\" \"),\n _c(\n \"li\",\n [\n _c(\n \"app-link\",\n { attrs: { href: \"config/postProcessing/\" } },\n [\n _c(\"i\", {\n staticClass: \"menu-icon-postprocess\"\n }),\n _vm._v(\" Post Processing\")\n ]\n )\n ],\n 1\n ),\n _vm._v(\" \"),\n _c(\n \"li\",\n [\n _c(\n \"app-link\",\n { attrs: { href: \"config/notifications/\" } },\n [\n _c(\"i\", {\n staticClass: \"menu-icon-notification\"\n }),\n _vm._v(\" Notifications\")\n ]\n )\n ],\n 1\n ),\n _vm._v(\" \"),\n _c(\n \"li\",\n [\n _c(\n \"app-link\",\n { attrs: { href: \"config/anime/\" } },\n [\n _c(\"i\", { staticClass: \"menu-icon-anime\" }),\n _vm._v(\" Anime\")\n ]\n )\n ],\n 1\n )\n ]),\n _vm._v(\" \"),\n _c(\"div\", { staticStyle: { clear: \"both\" } })\n ],\n 1\n ),\n _vm._v(\" \"),\n _c(\n \"li\",\n {\n staticClass: \"navbar-split dropdown\",\n class: { active: _vm.topMenu === \"system\" },\n attrs: { id: \"NAVsystem\" }\n },\n [\n _c(\n \"app-link\",\n {\n staticClass: \"padding-right-15 dropdown-toggle\",\n attrs: {\n href: \"home/status/\",\n \"aria-haspopup\": \"true\",\n \"data-toggle\": \"dropdown\",\n \"data-hover\": \"dropdown\"\n }\n },\n [\n _c(\"span\", { staticClass: \"visible-xs-inline\" }, [\n _vm._v(\"Tools\")\n ]),\n _c(\"img\", {\n staticClass: \"navbaricon hidden-xs\",\n attrs: { src: \"images/menu/system18-2.png\" }\n }),\n _vm._v(\" \"),\n _vm.toolsBadgeCount > 0\n ? _c(\n \"span\",\n { class: \"badge\" + _vm.toolsBadgeClass },\n [_vm._v(_vm._s(_vm.toolsBadgeCount))]\n )\n : _vm._e(),\n _vm._v(\" \"),\n _c(\"b\", { staticClass: \"caret\" })\n ]\n ),\n _vm._v(\" \"),\n _c(\"ul\", { staticClass: \"dropdown-menu\" }, [\n _c(\n \"li\",\n [\n _c(\"app-link\", { attrs: { href: \"news/\" } }, [\n _c(\"i\", { staticClass: \"menu-icon-news\" }),\n _vm._v(\" News \"),\n _vm.config.news.unread > 0\n ? _c(\"span\", { staticClass: \"badge\" }, [\n _vm._v(_vm._s(_vm.config.news.unread))\n ])\n : _vm._e()\n ])\n ],\n 1\n ),\n _vm._v(\" \"),\n _c(\n \"li\",\n [\n _c(\"app-link\", { attrs: { href: \"IRC/\" } }, [\n _c(\"i\", { staticClass: \"menu-icon-irc\" }),\n _vm._v(\" IRC\")\n ])\n ],\n 1\n ),\n _vm._v(\" \"),\n _c(\n \"li\",\n [\n _c(\"app-link\", { attrs: { href: \"changes/\" } }, [\n _c(\"i\", { staticClass: \"menu-icon-changelog\" }),\n _vm._v(\" Changelog\")\n ])\n ],\n 1\n ),\n _vm._v(\" \"),\n _c(\n \"li\",\n [\n _c(\n \"app-link\",\n { attrs: { href: _vm.config.donationsUrl } },\n [\n _c(\"i\", { staticClass: \"menu-icon-support\" }),\n _vm._v(\" Support Medusa\")\n ]\n )\n ],\n 1\n ),\n _vm._v(\" \"),\n _c(\"li\", {\n staticClass: \"divider\",\n attrs: { role: \"separator\" }\n }),\n _vm._v(\" \"),\n _vm.config.logs.numErrors > 0\n ? _c(\n \"li\",\n [\n _c(\n \"app-link\",\n { attrs: { href: \"errorlogs/\" } },\n [\n _c(\"i\", { staticClass: \"menu-icon-error\" }),\n _vm._v(\" View Errors \"),\n _c(\n \"span\",\n { staticClass: \"badge btn-danger\" },\n [\n _vm._v(\n _vm._s(_vm.config.logs.numErrors)\n )\n ]\n )\n ]\n )\n ],\n 1\n )\n : _vm._e(),\n _vm._v(\" \"),\n _vm.config.logs.numWarnings > 0\n ? _c(\n \"li\",\n [\n _c(\n \"app-link\",\n {\n attrs: {\n href:\n \"errorlogs/?level=\" + _vm.warningLevel\n }\n },\n [\n _c(\"i\", {\n staticClass: \"menu-icon-viewlog-errors\"\n }),\n _vm._v(\" View Warnings \"),\n _c(\n \"span\",\n { staticClass: \"badge btn-warning\" },\n [\n _vm._v(\n _vm._s(_vm.config.logs.numWarnings)\n )\n ]\n )\n ]\n )\n ],\n 1\n )\n : _vm._e(),\n _vm._v(\" \"),\n _c(\n \"li\",\n [\n _c(\n \"app-link\",\n { attrs: { href: \"errorlogs/viewlog/\" } },\n [\n _c(\"i\", { staticClass: \"menu-icon-viewlog\" }),\n _vm._v(\" View Log\")\n ]\n )\n ],\n 1\n ),\n _vm._v(\" \"),\n _c(\"li\", {\n staticClass: \"divider\",\n attrs: { role: \"separator\" }\n }),\n _vm._v(\" \"),\n _c(\n \"li\",\n [\n _c(\n \"app-link\",\n {\n attrs: {\n href: \"home/updateCheck?pid=\" + _vm.config.pid\n }\n },\n [\n _c(\"i\", { staticClass: \"menu-icon-update\" }),\n _vm._v(\" Check For Updates\")\n ]\n )\n ],\n 1\n ),\n _vm._v(\" \"),\n _c(\n \"li\",\n [\n _c(\n \"app-link\",\n {\n attrs: {\n href: \"home/restart/?pid=\" + _vm.config.pid\n },\n nativeOn: {\n click: function($event) {\n $event.preventDefault()\n _vm.confirmDialog($event, \"restart\")\n }\n }\n },\n [\n _c(\"i\", { staticClass: \"menu-icon-restart\" }),\n _vm._v(\" Restart\")\n ]\n )\n ],\n 1\n ),\n _vm._v(\" \"),\n _c(\n \"li\",\n [\n _c(\n \"app-link\",\n {\n attrs: {\n href: \"home/shutdown/?pid=\" + _vm.config.pid\n },\n nativeOn: {\n click: function($event) {\n $event.preventDefault()\n _vm.confirmDialog($event, \"shutdown\")\n }\n }\n },\n [\n _c(\"i\", { staticClass: \"menu-icon-shutdown\" }),\n _vm._v(\" Shutdown\")\n ]\n )\n ],\n 1\n ),\n _vm._v(\" \"),\n _vm.username\n ? _c(\n \"li\",\n [\n _c(\n \"app-link\",\n {\n attrs: { href: \"logout\" },\n nativeOn: {\n click: function($event) {\n $event.preventDefault()\n _vm.confirmDialog($event, \"logout\")\n }\n }\n },\n [\n _c(\"i\", {\n staticClass: \"menu-icon-shutdown\"\n }),\n _vm._v(\" Logout\")\n ]\n )\n ],\n 1\n )\n : _vm._e(),\n _vm._v(\" \"),\n _c(\"li\", {\n staticClass: \"divider\",\n attrs: { role: \"separator\" }\n }),\n _vm._v(\" \"),\n _c(\n \"li\",\n [\n _c(\n \"app-link\",\n { attrs: { href: \"home/status/\" } },\n [\n _c(\"i\", { staticClass: \"menu-icon-info\" }),\n _vm._v(\" Server Status\")\n ]\n )\n ],\n 1\n )\n ]),\n _vm._v(\" \"),\n _c(\"div\", { staticStyle: { clear: \"both\" } })\n ],\n 1\n )\n ])\n ]\n )\n : _vm._e()\n ])\n ]\n )\n}\nvar staticRenderFns = []\nrender._withStripped = true\n\nexport { render, staticRenderFns }","import mod from \"-!../../node_modules/babel-loader/lib/index.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./app-header.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/babel-loader/lib/index.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./app-header.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./app-header.vue?vue&type=template&id=7c5d12e0&\"\nimport script from \"./app-header.vue?vue&type=script&lang=js&\"\nexport * from \"./app-header.vue?vue&type=script&lang=js&\"\nimport style0 from \"./app-header.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\ncomponent.options.__file = \"app-header.vue\"\nexport default component.exports","var render = function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return !_vm.link\n ? _c(\"img\", {\n class: _vm.cls,\n attrs: { src: _vm.src },\n on: {\n error: function($event) {\n _vm.error = true\n }\n }\n })\n : _c(\"app-link\", { attrs: { href: _vm.href } }, [\n _c(\"img\", {\n class: _vm.cls,\n attrs: { src: _vm.src },\n on: {\n error: function($event) {\n _vm.error = true\n }\n }\n })\n ])\n}\nvar staticRenderFns = []\nrender._withStripped = true\n\nexport { render, staticRenderFns }","import mod from \"-!../../node_modules/babel-loader/lib/index.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./asset.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/babel-loader/lib/index.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./asset.vue?vue&type=script&lang=js&\"","
\n \n \n \n \n \n\n\n","import { render, staticRenderFns } from \"./asset.vue?vue&type=template&id=58fe1dea&\"\nimport script from \"./asset.vue?vue&type=script&lang=js&\"\nexport * from \"./asset.vue?vue&type=script&lang=js&\"\nimport style0 from \"./asset.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\ncomponent.options.__file = \"asset.vue\"\nexport default component.exports","var render = function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\"div\")\n}\nvar staticRenderFns = []\nrender._withStripped = true\n\nexport { render, staticRenderFns }","import mod from \"-!../../node_modules/babel-loader/lib/index.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./backstretch.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/babel-loader/lib/index.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./backstretch.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./backstretch.vue?vue&type=template&id=630a2e1f&\"\nimport script from \"./backstretch.vue?vue&type=script&lang=js&\"\nexport * from \"./backstretch.vue?vue&type=script&lang=js&\"\nimport style0 from \"./backstretch.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\ncomponent.options.__file = \"backstretch.vue\"\nexport default component.exports","var render = function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\"div\", { attrs: { id: \"config-content\" } }, [\n _c(\n \"table\",\n {\n staticClass: \"infoTable\",\n attrs: {\n cellspacing: \"1\",\n border: \"0\",\n cellpadding: \"0\",\n width: \"100%\"\n }\n },\n [\n _c(\"tr\", [\n _vm._m(0),\n _vm._v(\" \"),\n _c(\"td\", [\n _vm._v(\"\\n Branch:\\n \"),\n _vm.config.branch\n ? _c(\n \"span\",\n [\n _c(\n \"app-link\",\n {\n attrs: {\n href:\n _vm.config.sourceUrl + \"/tree/\" + _vm.config.branch\n }\n },\n [_vm._v(_vm._s(_vm.config.branch))]\n )\n ],\n 1\n )\n : _c(\"span\", [_vm._v(\"Unknown\")]),\n _vm._v(\" \"),\n _c(\"br\"),\n _vm._v(\"\\n Commit:\\n \"),\n _vm.config.commitHash\n ? _c(\n \"span\",\n [\n _c(\n \"app-link\",\n {\n attrs: {\n href:\n _vm.config.sourceUrl +\n \"/commit/\" +\n _vm.config.commitHash\n }\n },\n [_vm._v(_vm._s(_vm.config.commitHash))]\n )\n ],\n 1\n )\n : _c(\"span\", [_vm._v(\"Unknown\")]),\n _vm._v(\" \"),\n _c(\"br\"),\n _vm._v(\"\\n Version:\\n \"),\n _vm.config.release\n ? _c(\n \"span\",\n [\n _c(\n \"app-link\",\n {\n attrs: {\n href:\n _vm.config.sourceUrl +\n \"/releases/tag/\" +\n _vm.config.release\n }\n },\n [_vm._v(_vm._s(_vm.config.release))]\n )\n ],\n 1\n )\n : _c(\"span\", [_vm._v(\"Unknown\")]),\n _vm._v(\" \"),\n _c(\"br\"),\n _vm._v(\"\\n Database:\\n \"),\n _vm.config.databaseVersion\n ? _c(\"span\", [\n _vm._v(\n _vm._s(_vm.config.databaseVersion.major) +\n \".\" +\n _vm._s(_vm.config.databaseVersion.minor)\n )\n ])\n : _c(\"span\", [_vm._v(\"Unknown\")])\n ])\n ]),\n _vm._v(\" \"),\n _c(\"tr\", [\n _vm._m(1),\n _c(\"td\", [_vm._v(_vm._s(_vm.config.pythonVersion))])\n ]),\n _vm._v(\" \"),\n _c(\"tr\", [\n _vm._m(2),\n _c(\"td\", [_vm._v(_vm._s(_vm.config.sslVersion))])\n ]),\n _vm._v(\" \"),\n _c(\"tr\", [_vm._m(3), _c(\"td\", [_vm._v(_vm._s(_vm.config.os))])]),\n _vm._v(\" \"),\n _c(\"tr\", [_vm._m(4), _c(\"td\", [_vm._v(_vm._s(_vm.config.locale))])]),\n _vm._v(\" \"),\n _vm._m(5),\n _vm._v(\" \"),\n _vm._m(6),\n _vm._v(\" \"),\n _c(\"tr\", [_vm._m(7), _c(\"td\", [_vm._v(_vm._s(_vm.config.localUser))])]),\n _vm._v(\" \"),\n _c(\"tr\", [\n _vm._m(8),\n _c(\"td\", [_vm._v(_vm._s(_vm.config.programDir))])\n ]),\n _vm._v(\" \"),\n _c(\"tr\", [\n _vm._m(9),\n _c(\"td\", [_vm._v(_vm._s(_vm.config.configFile))])\n ]),\n _vm._v(\" \"),\n _c(\"tr\", [_vm._m(10), _c(\"td\", [_vm._v(_vm._s(_vm.config.dbPath))])]),\n _vm._v(\" \"),\n _c(\"tr\", [_vm._m(11), _c(\"td\", [_vm._v(_vm._s(_vm.config.cacheDir))])]),\n _vm._v(\" \"),\n _c(\"tr\", [_vm._m(12), _c(\"td\", [_vm._v(_vm._s(_vm.config.logDir))])]),\n _vm._v(\" \"),\n _vm.config.appArgs\n ? _c(\"tr\", [\n _vm._m(13),\n _c(\"td\", [\n _c(\"pre\", [\n _vm._v(_vm._s(_vm._f(\"prettyPrintJSON\")(_vm.config.appArgs)))\n ])\n ])\n ])\n : _vm._e(),\n _vm._v(\" \"),\n _vm.config.webRoot\n ? _c(\"tr\", [\n _vm._m(14),\n _c(\"td\", [_vm._v(_vm._s(_vm.config.webRoot))])\n ])\n : _vm._e(),\n _vm._v(\" \"),\n _vm._m(15),\n _vm._v(\" \"),\n _vm._m(16),\n _vm._v(\" \"),\n _c(\"tr\", [\n _vm._m(17),\n _c(\n \"td\",\n [\n _c(\"app-link\", { attrs: { href: _vm.config.githubUrl } }, [\n _vm._v(_vm._s(_vm.config.githubUrl))\n ])\n ],\n 1\n )\n ]),\n _vm._v(\" \"),\n _c(\"tr\", [\n _vm._m(18),\n _c(\n \"td\",\n [\n _c(\"app-link\", { attrs: { href: _vm.config.wikiUrl } }, [\n _vm._v(_vm._s(_vm.config.wikiUrl))\n ])\n ],\n 1\n )\n ]),\n _vm._v(\" \"),\n _c(\"tr\", [\n _vm._m(19),\n _c(\n \"td\",\n [\n _c(\"app-link\", { attrs: { href: _vm.config.sourceUrl } }, [\n _vm._v(_vm._s(_vm.config.sourceUrl))\n ])\n ],\n 1\n )\n ]),\n _vm._v(\" \"),\n _c(\"tr\", [\n _vm._m(20),\n _c(\n \"td\",\n [\n _c(\n \"app-link\",\n { attrs: { href: \"irc://irc.freenode.net/#pymedusa\" } },\n [\n _c(\"i\", [_vm._v(\"#pymedusa\")]),\n _vm._v(\" on \"),\n _c(\"i\", [_vm._v(\"irc.freenode.net\")])\n ]\n )\n ],\n 1\n )\n ])\n ]\n )\n ])\n}\nvar staticRenderFns = [\n function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\"td\", [\n _c(\"i\", { staticClass: \"icon16-config-application\" }),\n _vm._v(\" Medusa Info:\")\n ])\n },\n function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\"td\", [\n _c(\"i\", { staticClass: \"icon16-config-python\" }),\n _vm._v(\" Python Version:\")\n ])\n },\n function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\"td\", [\n _c(\"i\", { staticClass: \"icon16-config-ssl\" }),\n _vm._v(\" SSL Version:\")\n ])\n },\n function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\"td\", [\n _c(\"i\", { staticClass: \"icon16-config-os\" }),\n _vm._v(\" OS:\")\n ])\n },\n function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\"td\", [\n _c(\"i\", { staticClass: \"icon16-config-locale\" }),\n _vm._v(\" Locale:\")\n ])\n },\n function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\"tr\", [_c(\"td\", [_vm._v(\" \")]), _c(\"td\", [_vm._v(\" \")])])\n },\n function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\"tr\", { staticClass: \"infoTableSeperator\" }, [\n _c(\"td\", [_vm._v(\" \")]),\n _c(\"td\", [_vm._v(\" \")])\n ])\n },\n function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\"td\", [\n _c(\"i\", { staticClass: \"icon16-config-user\" }),\n _vm._v(\" User:\")\n ])\n },\n function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\"td\", [\n _c(\"i\", { staticClass: \"icon16-config-dir\" }),\n _vm._v(\" Program Folder:\")\n ])\n },\n function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\"td\", [\n _c(\"i\", { staticClass: \"icon16-config-config\" }),\n _vm._v(\" Config File:\")\n ])\n },\n function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\"td\", [\n _c(\"i\", { staticClass: \"icon16-config-db\" }),\n _vm._v(\" Database File:\")\n ])\n },\n function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\"td\", [\n _c(\"i\", { staticClass: \"icon16-config-cache\" }),\n _vm._v(\" Cache Folder:\")\n ])\n },\n function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\"td\", [\n _c(\"i\", { staticClass: \"icon16-config-log\" }),\n _vm._v(\" Log Folder:\")\n ])\n },\n function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\"td\", [\n _c(\"i\", { staticClass: \"icon16-config-arguments\" }),\n _vm._v(\" Arguments:\")\n ])\n },\n function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\"td\", [\n _c(\"i\", { staticClass: \"icon16-config-folder\" }),\n _vm._v(\" Web Root:\")\n ])\n },\n function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\"tr\", [_c(\"td\", [_vm._v(\" \")]), _c(\"td\", [_vm._v(\" \")])])\n },\n function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\"tr\", { staticClass: \"infoTableSeperator\" }, [\n _c(\"td\", [_vm._v(\" \")]),\n _c(\"td\", [_vm._v(\" \")])\n ])\n },\n function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\"td\", [\n _c(\"i\", { staticClass: \"icon16-config-web\" }),\n _vm._v(\" Website:\")\n ])\n },\n function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\"td\", [\n _c(\"i\", { staticClass: \"icon16-config-wiki\" }),\n _vm._v(\" Wiki:\")\n ])\n },\n function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\"td\", [\n _c(\"i\", { staticClass: \"icon16-config-github\" }),\n _vm._v(\" Source:\")\n ])\n },\n function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\"td\", [\n _c(\"i\", { staticClass: \"icon16-config-mirc\" }),\n _vm._v(\" IRC Chat:\")\n ])\n }\n]\nrender._withStripped = true\n\nexport { render, staticRenderFns }","import mod from \"-!../../node_modules/babel-loader/lib/index.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./config.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/babel-loader/lib/index.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./config.vue?vue&type=script&lang=js&\"","
\n \n
\n \n Medusa Info: \n \n Branch:\n {{config.branch}} \n Unknown \n \n Commit:\n {{config.commitHash}} \n Unknown \n \n Version:\n {{config.release}} \n Unknown \n \n Database:\n {{config.databaseVersion.major}}.{{config.databaseVersion.minor}} \n Unknown \n \n \n Python Version:{{config.pythonVersion}} \n SSL Version:{{config.sslVersion}} \n OS:{{config.os}} \n Locale:{{config.locale}} \n \n \n User:{{config.localUser}} \n Program Folder:{{config.programDir}} \n Config File:{{config.configFile}} \n Database File:{{config.dbPath}} \n Cache Folder:{{config.cacheDir}} \n Log Folder:{{config.logDir}} \n Arguments:{{config.appArgs | prettyPrintJSON}} \n Web Root:{{config.webRoot}} \n \n \n Website:{{config.githubUrl}} \n Wiki:{{config.wikiUrl}} \n Source:{{config.sourceUrl}} \n IRC Chat:#pymedusa on irc.freenode.net \n
\n
\n \n\n\n","import { render, staticRenderFns } from \"./config.vue?vue&type=template&id=25e028eb&\"\nimport script from \"./config.vue?vue&type=script&lang=js&\"\nexport * from \"./config.vue?vue&type=script&lang=js&\"\nimport style0 from \"./config.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\ncomponent.options.__file = \"config.vue\"\nexport default component.exports","var render = function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\"div\", { attrs: { id: \"config\" } }, [\n _c(\"div\", { attrs: { id: \"config-content\" } }, [\n _c(\n \"form\",\n {\n staticClass: \"form-horizontal\",\n attrs: { id: \"configForm\" },\n on: {\n submit: function($event) {\n $event.preventDefault()\n _vm.save()\n }\n }\n },\n [\n _c(\"div\", { attrs: { id: \"config-components\" } }, [\n _c(\"ul\", [\n _c(\n \"li\",\n [\n _c(\"app-link\", { attrs: { href: \"#post-processing\" } }, [\n _vm._v(\"Post Processing\")\n ])\n ],\n 1\n ),\n _vm._v(\" \"),\n _c(\n \"li\",\n [\n _c(\"app-link\", { attrs: { href: \"#episode-naming\" } }, [\n _vm._v(\"Episode Naming\")\n ])\n ],\n 1\n ),\n _vm._v(\" \"),\n _c(\n \"li\",\n [\n _c(\"app-link\", { attrs: { href: \"#metadata\" } }, [\n _vm._v(\"Metadata\")\n ])\n ],\n 1\n )\n ]),\n _vm._v(\" \"),\n _c(\"div\", { attrs: { id: \"post-processing\" } }, [\n _c(\"div\", { staticClass: \"row component-group\" }, [\n _vm._m(0),\n _vm._v(\" \"),\n _c(\"div\", { staticClass: \"col-xs-12 col-md-10\" }, [\n _c(\"fieldset\", { staticClass: \"component-group-list\" }, [\n _c(\"div\", { staticClass: \"form-group\" }, [\n _vm._m(1),\n _vm._v(\" \"),\n _c(\n \"div\",\n { staticClass: \"col-sm-10 content\" },\n [\n _c(\"toggle-button\", {\n attrs: {\n width: 45,\n height: 22,\n id: \"process_automatically\",\n name: \"process_automatically\",\n sync: \"\"\n },\n model: {\n value: _vm.postProcessing.processAutomatically,\n callback: function($$v) {\n _vm.$set(\n _vm.postProcessing,\n \"processAutomatically\",\n $$v\n )\n },\n expression: \"postProcessing.processAutomatically\"\n }\n }),\n _vm._v(\" \"),\n _vm._m(2),\n _vm._v(\" \"),\n _vm._m(3)\n ],\n 1\n )\n ]),\n _vm._v(\" \"),\n _c(\n \"div\",\n {\n directives: [\n {\n name: \"show\",\n rawName: \"v-show\",\n value: _vm.postProcessing.processAutomatically,\n expression: \"postProcessing.processAutomatically\"\n }\n ],\n attrs: { id: \"post-process-toggle-wrapper\" }\n },\n [\n _c(\"div\", { staticClass: \"form-group\" }, [\n _vm._m(4),\n _vm._v(\" \"),\n _c(\n \"div\",\n { staticClass: \"col-sm-10 content\" },\n [\n _c(\"file-browser\", {\n attrs: {\n id: \"tv_download_dir\",\n name: \"tv_download_dir\",\n title: \"Select series download location\",\n \"initial-dir\":\n _vm.postProcessing.showDownloadDir\n },\n on: {\n update: function($event) {\n _vm.postProcessing.showDownloadDir = $event\n }\n }\n }),\n _vm._v(\" \"),\n _c(\"span\", { staticClass: \"clear-left\" }, [\n _vm._v(\n \"The folder where your download client puts the completed TV downloads.\"\n )\n ]),\n _vm._v(\" \"),\n _vm._m(5)\n ],\n 1\n )\n ]),\n _vm._v(\" \"),\n _c(\"div\", { staticClass: \"form-group\" }, [\n _vm._m(6),\n _vm._v(\" \"),\n _c(\"div\", { staticClass: \"col-sm-10 content\" }, [\n _c(\n \"select\",\n {\n directives: [\n {\n name: \"model\",\n rawName: \"v-model\",\n value: _vm.postProcessing.processMethod,\n expression: \"postProcessing.processMethod\"\n }\n ],\n staticClass: \"form-control input-sm\",\n attrs: {\n id: \"naming_multi_ep\",\n name: \"naming_multi_ep\"\n },\n on: {\n change: function($event) {\n var $$selectedVal = Array.prototype.filter\n .call($event.target.options, function(o) {\n return o.selected\n })\n .map(function(o) {\n var val =\n \"_value\" in o ? o._value : o.value\n return val\n })\n _vm.$set(\n _vm.postProcessing,\n \"processMethod\",\n $event.target.multiple\n ? $$selectedVal\n : $$selectedVal[0]\n )\n }\n }\n },\n _vm._l(_vm.processMethods, function(option) {\n return _c(\n \"option\",\n {\n key: option.value,\n domProps: { value: option.value }\n },\n [_vm._v(_vm._s(option.text))]\n )\n })\n ),\n _vm._v(\" \"),\n _c(\"span\", [\n _vm._v(\n \"What method should be used to put files into the library?\"\n )\n ]),\n _vm._v(\" \"),\n _vm._m(7),\n _vm._v(\" \"),\n _vm.postProcessing.processMethod == \"reflink\"\n ? _c(\n \"p\",\n [\n _vm._v(\"To use reference linking, the \"),\n _c(\n \"app-link\",\n {\n attrs: {\n href:\n \"http://www.dereferer.org/?https://pypi.python.org/pypi/reflink/0.1.4\"\n }\n },\n [_vm._v(\"reflink package\")]\n ),\n _vm._v(\" needs to be installed.\")\n ],\n 1\n )\n : _vm._e()\n ])\n ]),\n _vm._v(\" \"),\n _c(\"div\", { staticClass: \"form-group\" }, [\n _vm._m(8),\n _vm._v(\" \"),\n _c(\"div\", { staticClass: \"col-sm-10 content\" }, [\n _c(\"input\", {\n directives: [\n {\n name: \"model\",\n rawName: \"v-model\",\n value:\n _vm.postProcessing\n .autoPostprocessorFrequency,\n expression:\n \"postProcessing.autoPostprocessorFrequency\"\n }\n ],\n staticClass: \"form-control input-sm input75\",\n attrs: {\n type: \"number\",\n min: \"10\",\n step: \"1\",\n name: \"autopostprocessor_frequency\",\n id: \"autopostprocessor_frequency\"\n },\n domProps: {\n value:\n _vm.postProcessing.autoPostprocessorFrequency\n },\n on: {\n input: function($event) {\n if ($event.target.composing) {\n return\n }\n _vm.$set(\n _vm.postProcessing,\n \"autoPostprocessorFrequency\",\n $event.target.value\n )\n }\n }\n }),\n _vm._v(\" \"),\n _c(\"span\", [\n _vm._v(\n \"Time in minutes to check for new files to auto post-process (min 10)\"\n )\n ])\n ])\n ])\n ]\n )\n ])\n ])\n ]),\n _vm._v(\" \"),\n _c(\"div\", { staticClass: \"row component-group\" }, [\n _vm._m(9),\n _vm._v(\" \"),\n _c(\"div\", { staticClass: \"col-xs-12 col-md-10\" }, [\n _c(\"fieldset\", { staticClass: \"component-group-list\" }, [\n _c(\"div\", { staticClass: \"form-group\" }, [\n _vm._m(10),\n _vm._v(\" \"),\n _c(\n \"div\",\n { staticClass: \"col-sm-10 content\" },\n [\n _c(\"toggle-button\", {\n attrs: {\n width: 45,\n height: 22,\n id: \"postpone_if_sync_files\",\n name: \"postpone_if_sync_files\",\n sync: \"\"\n },\n model: {\n value: _vm.postProcessing.postponeIfSyncFiles,\n callback: function($$v) {\n _vm.$set(\n _vm.postProcessing,\n \"postponeIfSyncFiles\",\n $$v\n )\n },\n expression: \"postProcessing.postponeIfSyncFiles\"\n }\n }),\n _vm._v(\" \"),\n _c(\"span\", [\n _vm._v(\n \"Wait to process a folder if sync files are present.\"\n )\n ])\n ],\n 1\n )\n ]),\n _vm._v(\" \"),\n _c(\"div\", { staticClass: \"form-group\" }, [\n _vm._m(11),\n _vm._v(\" \"),\n _c(\n \"div\",\n { staticClass: \"col-sm-10 content\" },\n [\n _c(\"select-list\", {\n attrs: {\n name: \"sync_files\",\n id: \"sync_files\",\n \"csv-enabled\": \"\",\n \"list-items\": _vm.postProcessing.syncFiles\n },\n on: { change: _vm.onChangeSyncFiles }\n }),\n _vm._v(\" \"),\n _c(\"span\", [\n _vm._v(\n \"comma seperated list of extensions or filename globs Medusa ignores when Post Processing\"\n )\n ])\n ],\n 1\n )\n ]),\n _vm._v(\" \"),\n _c(\"div\", { staticClass: \"form-group\" }, [\n _vm._m(12),\n _vm._v(\" \"),\n _c(\n \"div\",\n { staticClass: \"col-sm-10 content\" },\n [\n _c(\"toggle-button\", {\n attrs: {\n width: 45,\n height: 22,\n id: \"postpone_if_no_subs\",\n name: \"postpone_if_no_subs\",\n sync: \"\"\n },\n model: {\n value: _vm.postProcessing.postponeIfNoSubs,\n callback: function($$v) {\n _vm.$set(\n _vm.postProcessing,\n \"postponeIfNoSubs\",\n $$v\n )\n },\n expression: \"postProcessing.postponeIfNoSubs\"\n }\n }),\n _vm._v(\" \"),\n _c(\"span\", [\n _vm._v(\n \"Wait to process a file until subtitles are present\"\n )\n ]),\n _c(\"br\"),\n _vm._v(\" \"),\n _c(\"span\", [\n _vm._v(\n \"Language names are allowed in subtitle filename (en.srt, pt-br.srt, ita.srt, etc.)\"\n )\n ]),\n _c(\"br\"),\n _vm._v(\" \"),\n _vm._m(13),\n _c(\"br\"),\n _vm._v(\" \"),\n _c(\"span\", [\n _vm._v(\n \"If you have any active show with subtitle search disabled, you must enable Automatic post processor.\"\n )\n ])\n ],\n 1\n )\n ]),\n _vm._v(\" \"),\n _c(\"div\", { staticClass: \"form-group\" }, [\n _vm._m(14),\n _vm._v(\" \"),\n _c(\n \"div\",\n { staticClass: \"col-sm-10 content\" },\n [\n _c(\"toggle-button\", {\n attrs: {\n width: 45,\n height: 22,\n id: \"rename_episodes\",\n name: \"rename_episodes\",\n sync: \"\"\n },\n model: {\n value: _vm.postProcessing.renameEpisodes,\n callback: function($$v) {\n _vm.$set(\n _vm.postProcessing,\n \"renameEpisodes\",\n $$v\n )\n },\n expression: \"postProcessing.renameEpisodes\"\n }\n }),\n _vm._v(\" \"),\n _c(\"span\", [\n _vm._v(\n \"Rename episode using the Episode Naming settings?\"\n )\n ])\n ],\n 1\n )\n ]),\n _vm._v(\" \"),\n _c(\"div\", { staticClass: \"form-group\" }, [\n _vm._m(15),\n _vm._v(\" \"),\n _c(\n \"div\",\n { staticClass: \"col-sm-10 content\" },\n [\n _c(\"toggle-button\", {\n attrs: {\n width: 45,\n height: 22,\n id: \"create_missing_show_dirs\",\n name: \"create_missing_show_dirs\",\n sync: \"\"\n },\n model: {\n value: _vm.postProcessing.createMissingShowDirs,\n callback: function($$v) {\n _vm.$set(\n _vm.postProcessing,\n \"createMissingShowDirs\",\n $$v\n )\n },\n expression: \"postProcessing.createMissingShowDirs\"\n }\n }),\n _vm._v(\" \"),\n _c(\"span\", [\n _vm._v(\n \"Create missing show directories when they get deleted\"\n )\n ])\n ],\n 1\n )\n ]),\n _vm._v(\" \"),\n _c(\"div\", { staticClass: \"form-group\" }, [\n _vm._m(16),\n _vm._v(\" \"),\n _c(\n \"div\",\n { staticClass: \"col-sm-10 content\" },\n [\n _c(\"toggle-button\", {\n attrs: {\n width: 45,\n height: 22,\n id: \"add_shows_wo_dir\",\n name: \"add_shows_wo_dir\",\n sync: \"\"\n },\n model: {\n value: _vm.postProcessing.addShowsWithoutDir,\n callback: function($$v) {\n _vm.$set(\n _vm.postProcessing,\n \"addShowsWithoutDir\",\n $$v\n )\n },\n expression: \"postProcessing.addShowsWithoutDir\"\n }\n }),\n _vm._v(\" \"),\n _c(\"span\", [\n _vm._v(\n \"Add shows without creating a directory (not recommended)\"\n )\n ])\n ],\n 1\n )\n ]),\n _vm._v(\" \"),\n _c(\"div\", { staticClass: \"form-group\" }, [\n _vm._m(17),\n _vm._v(\" \"),\n _c(\n \"div\",\n { staticClass: \"col-sm-10 content\" },\n [\n _c(\"toggle-button\", {\n attrs: {\n width: 45,\n height: 22,\n id: \"move_associated_files\",\n name: \"move_associated_files\",\n sync: \"\"\n },\n model: {\n value: _vm.postProcessing.moveAssociatedFiles,\n callback: function($$v) {\n _vm.$set(\n _vm.postProcessing,\n \"moveAssociatedFiles\",\n $$v\n )\n },\n expression: \"postProcessing.moveAssociatedFiles\"\n }\n }),\n _vm._v(\" \"),\n _c(\"span\", [\n _vm._v(\n \"Delete srt/srr/sfv/etc files while post processing?\"\n )\n ])\n ],\n 1\n )\n ]),\n _vm._v(\" \"),\n _c(\"div\", { staticClass: \"form-group\" }, [\n _vm._m(18),\n _vm._v(\" \"),\n _c(\n \"div\",\n { staticClass: \"col-sm-10 content\" },\n [\n _c(\"select-list\", {\n attrs: {\n name: \"allowed_extensions\",\n id: \"allowed_extensions\",\n \"csv-enabled\": \"\",\n \"list-items\": _vm.postProcessing.allowedExtensions\n },\n on: { change: _vm.onChangeAllowedExtensions }\n }),\n _vm._v(\" \"),\n _c(\"span\", [\n _vm._v(\n \"Comma seperated list of associated file extensions Medusa should keep while post processing.\"\n )\n ]),\n _c(\"br\"),\n _vm._v(\" \"),\n _c(\"span\", [\n _vm._v(\n \"Leaving it empty means all associated files will be deleted\"\n )\n ])\n ],\n 1\n )\n ]),\n _vm._v(\" \"),\n _c(\"div\", { staticClass: \"form-group\" }, [\n _vm._m(19),\n _vm._v(\" \"),\n _c(\n \"div\",\n { staticClass: \"col-sm-10 content\" },\n [\n _c(\"toggle-button\", {\n attrs: {\n width: 45,\n height: 22,\n id: \"nfo_rename\",\n name: \"nfo_rename\",\n sync: \"\"\n },\n model: {\n value: _vm.postProcessing.nfoRename,\n callback: function($$v) {\n _vm.$set(_vm.postProcessing, \"nfoRename\", $$v)\n },\n expression: \"postProcessing.nfoRename\"\n }\n }),\n _vm._v(\" \"),\n _c(\"span\", [\n _vm._v(\n \"Rename the original .nfo file to .nfo-orig to avoid conflicts?\"\n )\n ])\n ],\n 1\n )\n ]),\n _vm._v(\" \"),\n _c(\"div\", { staticClass: \"form-group\" }, [\n _vm._m(20),\n _vm._v(\" \"),\n _c(\n \"div\",\n { staticClass: \"col-sm-10 content\" },\n [\n _c(\"toggle-button\", {\n attrs: {\n width: 45,\n height: 22,\n id: \"airdate_episodes\",\n name: \"airdate_episodes\",\n sync: \"\"\n },\n model: {\n value: _vm.postProcessing.airdateEpisodes,\n callback: function($$v) {\n _vm.$set(\n _vm.postProcessing,\n \"airdateEpisodes\",\n $$v\n )\n },\n expression: \"postProcessing.airdateEpisodes\"\n }\n }),\n _vm._v(\" \"),\n _c(\"span\", [\n _vm._v(\n \"Set last modified filedate to the date that the episode aired?\"\n )\n ])\n ],\n 1\n )\n ]),\n _vm._v(\" \"),\n _c(\"div\", { staticClass: \"form-group\" }, [\n _vm._m(21),\n _vm._v(\" \"),\n _c(\"div\", { staticClass: \"col-sm-10 content\" }, [\n _c(\n \"select\",\n {\n directives: [\n {\n name: \"model\",\n rawName: \"v-model\",\n value: _vm.postProcessing.fileTimestampTimezone,\n expression:\n \"postProcessing.fileTimestampTimezone\"\n }\n ],\n staticClass: \"form-control input-sm\",\n attrs: {\n id: \"file_timestamp_timezone\",\n name: \"file_timestamp_timezone\"\n },\n on: {\n change: function($event) {\n var $$selectedVal = Array.prototype.filter\n .call($event.target.options, function(o) {\n return o.selected\n })\n .map(function(o) {\n var val = \"_value\" in o ? o._value : o.value\n return val\n })\n _vm.$set(\n _vm.postProcessing,\n \"fileTimestampTimezone\",\n $event.target.multiple\n ? $$selectedVal\n : $$selectedVal[0]\n )\n }\n }\n },\n _vm._l(_vm.timezoneOptions, function(option) {\n return _c(\n \"option\",\n {\n key: option.value,\n domProps: { value: option.value }\n },\n [_vm._v(_vm._s(option.text))]\n )\n })\n ),\n _vm._v(\" \"),\n _c(\"span\", [\n _vm._v(\n \"What timezone should be used to change File Date?\"\n )\n ])\n ])\n ]),\n _vm._v(\" \"),\n _c(\"div\", { staticClass: \"form-group\" }, [\n _vm._m(22),\n _vm._v(\" \"),\n _c(\n \"div\",\n { staticClass: \"col-sm-10 content\" },\n [\n _c(\"toggle-button\", {\n attrs: {\n width: 45,\n height: 22,\n id: \"unpack\",\n name: \"unpack\",\n sync: \"\"\n },\n model: {\n value: _vm.postProcessing.unpack,\n callback: function($$v) {\n _vm.$set(_vm.postProcessing, \"unpack\", $$v)\n },\n expression: \"postProcessing.unpack\"\n }\n }),\n _vm._v(\" \"),\n _vm._m(23),\n _c(\"br\"),\n _vm._v(\" \"),\n _vm._m(24)\n ],\n 1\n )\n ]),\n _vm._v(\" \"),\n _c(\"div\", { staticClass: \"form-group\" }, [\n _vm._m(25),\n _vm._v(\" \"),\n _c(\n \"div\",\n { staticClass: \"col-sm-10 content\" },\n [\n _c(\"toggle-button\", {\n attrs: {\n width: 45,\n height: 22,\n id: \"del_rar_contents\",\n name: \"del_rar_contents\",\n sync: \"\"\n },\n model: {\n value: _vm.postProcessing.deleteRarContent,\n callback: function($$v) {\n _vm.$set(\n _vm.postProcessing,\n \"deleteRarContent\",\n $$v\n )\n },\n expression: \"postProcessing.deleteRarContent\"\n }\n }),\n _vm._v(\" \"),\n _c(\"span\", [\n _vm._v(\n \"Delete content of RAR files, even if Process Method not set to move?\"\n )\n ])\n ],\n 1\n )\n ]),\n _vm._v(\" \"),\n _c(\"div\", { staticClass: \"form-group\" }, [\n _vm._m(26),\n _vm._v(\" \"),\n _c(\n \"div\",\n { staticClass: \"col-sm-10 content\" },\n [\n _c(\"toggle-button\", {\n attrs: {\n width: 45,\n height: 22,\n id: \"no_delete\",\n name: \"no_delete\",\n sync: \"\"\n },\n model: {\n value: _vm.postProcessing.noDelete,\n callback: function($$v) {\n _vm.$set(_vm.postProcessing, \"noDelete\", $$v)\n },\n expression: \"postProcessing.noDelete\"\n }\n }),\n _vm._v(\" \"),\n _c(\"span\", [\n _vm._v(\"Leave empty folders when Post Processing?\")\n ]),\n _c(\"br\"),\n _vm._v(\" \"),\n _vm._m(27)\n ],\n 1\n )\n ]),\n _vm._v(\" \"),\n _c(\"div\", { staticClass: \"form-group\" }, [\n _vm._m(28),\n _vm._v(\" \"),\n _c(\n \"div\",\n { staticClass: \"col-sm-10 content\" },\n [\n _c(\"select-list\", {\n attrs: {\n name: \"extra_scripts\",\n id: \"extra_scripts\",\n \"csv-enabled\": \"\",\n \"list-items\": _vm.postProcessing.extraScripts\n },\n on: { change: _vm.onChangeExtraScripts }\n }),\n _vm._v(\" \"),\n _c(\n \"span\",\n [\n _vm._v(\"See \"),\n _c(\n \"app-link\",\n {\n staticClass: \"wikie\",\n attrs: {\n href: _vm.postProcessing.extraScriptsUrl\n }\n },\n [_c(\"strong\", [_vm._v(\"Wiki\")])]\n ),\n _vm._v(\n \" for script arguments description and usage.\"\n )\n ],\n 1\n )\n ],\n 1\n )\n ])\n ]),\n _vm._v(\" \"),\n _c(\"input\", {\n staticClass: \"btn-medusa config_submitter\",\n attrs: { type: \"submit\", value: \"Save Changes\" }\n })\n ])\n ])\n ]),\n _vm._v(\" \"),\n _c(\"div\", { attrs: { id: \"episode-naming\" } }, [\n _c(\"div\", { staticClass: \"row component-group\" }, [\n _vm._m(29),\n _vm._v(\" \"),\n _c(\"div\", { staticClass: \"col-xs-12 col-md-10\" }, [\n _c(\n \"fieldset\",\n { staticClass: \"component-group-list\" },\n [\n _c(\"name-pattern\", {\n staticClass: \"component-item\",\n attrs: {\n \"naming-pattern\": _vm.postProcessing.naming.pattern,\n \"naming-presets\": _vm.presets,\n \"multi-ep-style\": _vm.postProcessing.naming.multiEp,\n \"multi-ep-styles\": _vm.multiEpStringsSelect,\n \"flag-loaded\": _vm.configLoaded\n },\n on: { change: _vm.saveNaming }\n }),\n _vm._v(\" \"),\n _c(\"name-pattern\", {\n staticClass: \"component-item\",\n attrs: {\n enabled:\n _vm.postProcessing.naming.enableCustomNamingSports,\n \"naming-pattern\":\n _vm.postProcessing.naming.patternSports,\n \"naming-presets\": _vm.presets,\n type: \"sports\",\n \"enabled-naming-custom\":\n _vm.postProcessing.naming.enableCustomNamingSports,\n \"flag-loaded\": _vm.configLoaded\n },\n on: { change: _vm.saveNamingSports }\n }),\n _vm._v(\" \"),\n _c(\"name-pattern\", {\n staticClass: \"component-item\",\n attrs: {\n enabled:\n _vm.postProcessing.naming\n .enableCustomNamingAirByDate,\n \"naming-pattern\":\n _vm.postProcessing.naming.patternAirByDate,\n \"naming-presets\": _vm.presets,\n type: \"airs by date\",\n \"enabled-naming-custom\":\n _vm.postProcessing.naming\n .enableCustomNamingAirByDate,\n \"flag-loaded\": _vm.configLoaded\n },\n on: { change: _vm.saveNamingAbd }\n }),\n _vm._v(\" \"),\n _c(\"name-pattern\", {\n staticClass: \"component-item\",\n attrs: {\n enabled:\n _vm.postProcessing.naming.enableCustomNamingAnime,\n \"naming-pattern\":\n _vm.postProcessing.naming.patternAnime,\n \"naming-presets\": _vm.presets,\n type: \"anime\",\n \"multi-ep-style\":\n _vm.postProcessing.naming.animeMultiEp,\n \"multi-ep-styles\": _vm.multiEpStringsSelect,\n \"anime-naming-type\":\n _vm.postProcessing.naming.animeNamingType,\n \"enabled-naming-custom\":\n _vm.postProcessing.naming.enableCustomNamingAnime,\n \"flag-loaded\": _vm.configLoaded\n },\n on: { change: _vm.saveNamingAnime }\n }),\n _vm._v(\" \"),\n _c(\"div\", { staticClass: \"form-group component-item\" }, [\n _vm._m(30),\n _vm._v(\" \"),\n _c(\n \"div\",\n { staticClass: \"col-sm-10 content\" },\n [\n _c(\"toggle-button\", {\n attrs: {\n width: 45,\n height: 22,\n id: \"naming_strip_year\",\n name: \"naming_strip_year\",\n sync: \"\"\n },\n model: {\n value: _vm.postProcessing.naming.stripYear,\n callback: function($$v) {\n _vm.$set(\n _vm.postProcessing.naming,\n \"stripYear\",\n $$v\n )\n },\n expression: \"postProcessing.naming.stripYear\"\n }\n }),\n _vm._v(\" \"),\n _c(\"span\", [\n _vm._v(\n \"Remove the TV show's year when renaming the file?\"\n )\n ]),\n _vm._v(\" \"),\n _c(\"p\", [\n _vm._v(\n \"Only applies to shows that have year inside parentheses\"\n )\n ])\n ],\n 1\n )\n ])\n ],\n 1\n )\n ])\n ])\n ]),\n _vm._v(\" \"),\n _c(\"div\", { attrs: { id: \"metadata\" } }, [\n _c(\"div\", { staticClass: \"row component-group\" }, [\n _vm._m(31),\n _vm._v(\" \"),\n _c(\"div\", { staticClass: \"col-xs-12 col-md-10\" }, [\n _c(\n \"fieldset\",\n { staticClass: \"component-group-list\" },\n [\n _c(\"div\", { staticClass: \"form-group\" }, [\n _vm._m(32),\n _vm._v(\" \"),\n _c(\"div\", { staticClass: \"col-sm-10 content\" }, [\n _c(\n \"select\",\n {\n directives: [\n {\n name: \"model\",\n rawName: \"v-model\",\n value: _vm.metadataProviderSelected,\n expression: \"metadataProviderSelected\"\n }\n ],\n staticClass: \"form-control input-sm\",\n attrs: {\n id: \"metadataType\",\n name: \"metadataType\"\n },\n on: {\n change: function($event) {\n var $$selectedVal = Array.prototype.filter\n .call($event.target.options, function(o) {\n return o.selected\n })\n .map(function(o) {\n var val =\n \"_value\" in o ? o._value : o.value\n return val\n })\n _vm.metadataProviderSelected = $event.target\n .multiple\n ? $$selectedVal\n : $$selectedVal[0]\n }\n }\n },\n _vm._l(_vm.metadataProviders, function(option) {\n return _c(\n \"option\",\n {\n key: option.id,\n domProps: { value: option.id }\n },\n [_vm._v(_vm._s(option.name))]\n )\n })\n ),\n _vm._v(\" \"),\n _vm._m(33)\n ])\n ]),\n _vm._v(\" \"),\n _vm._l(_vm.metadataProviders, function(provider) {\n return _c(\n \"div\",\n {\n directives: [\n {\n name: \"show\",\n rawName: \"v-show\",\n value:\n provider.id === _vm.metadataProviderSelected,\n expression:\n \"provider.id === metadataProviderSelected\"\n }\n ],\n key: provider.id,\n staticClass: \"metadataDiv\",\n attrs: { id: \"provider.id\" }\n },\n [\n _c(\n \"div\",\n { staticClass: \"metadata_options_wrapper\" },\n [\n _c(\"h4\", [_vm._v(\"Create:\")]),\n _vm._v(\" \"),\n _c(\"div\", { staticClass: \"metadata_options\" }, [\n _c(\n \"label\",\n {\n attrs: {\n for: provider.id + \"_show_metadata\"\n }\n },\n [\n _c(\"input\", {\n directives: [\n {\n name: \"model\",\n rawName: \"v-model\",\n value: provider.showMetadata,\n expression: \"provider.showMetadata\"\n }\n ],\n staticClass: \"metadata_checkbox\",\n attrs: {\n type: \"checkbox\",\n id: provider.id + \"_show_metadata\"\n },\n domProps: {\n checked: Array.isArray(\n provider.showMetadata\n )\n ? _vm._i(\n provider.showMetadata,\n null\n ) > -1\n : provider.showMetadata\n },\n on: {\n change: function($event) {\n var $$a = provider.showMetadata,\n $$el = $event.target,\n $$c = $$el.checked ? true : false\n if (Array.isArray($$a)) {\n var $$v = null,\n $$i = _vm._i($$a, $$v)\n if ($$el.checked) {\n $$i < 0 &&\n _vm.$set(\n provider,\n \"showMetadata\",\n $$a.concat([$$v])\n )\n } else {\n $$i > -1 &&\n _vm.$set(\n provider,\n \"showMetadata\",\n $$a\n .slice(0, $$i)\n .concat(\n $$a.slice($$i + 1)\n )\n )\n }\n } else {\n _vm.$set(\n provider,\n \"showMetadata\",\n $$c\n )\n }\n }\n }\n }),\n _vm._v(\" Show Metadata\")\n ]\n ),\n _vm._v(\" \"),\n _c(\n \"label\",\n {\n attrs: {\n for: provider.id + \"_episode_metadata\"\n }\n },\n [\n _c(\"input\", {\n directives: [\n {\n name: \"model\",\n rawName: \"v-model\",\n value: provider.episodeMetadata,\n expression:\n \"provider.episodeMetadata\"\n }\n ],\n staticClass: \"metadata_checkbox\",\n attrs: {\n type: \"checkbox\",\n id: provider.id + \"_episode_metadata\",\n disabled: provider.example.episodeMetadata.includes(\n \"not supported\"\n )\n },\n domProps: {\n checked: Array.isArray(\n provider.episodeMetadata\n )\n ? _vm._i(\n provider.episodeMetadata,\n null\n ) > -1\n : provider.episodeMetadata\n },\n on: {\n change: function($event) {\n var $$a = provider.episodeMetadata,\n $$el = $event.target,\n $$c = $$el.checked ? true : false\n if (Array.isArray($$a)) {\n var $$v = null,\n $$i = _vm._i($$a, $$v)\n if ($$el.checked) {\n $$i < 0 &&\n _vm.$set(\n provider,\n \"episodeMetadata\",\n $$a.concat([$$v])\n )\n } else {\n $$i > -1 &&\n _vm.$set(\n provider,\n \"episodeMetadata\",\n $$a\n .slice(0, $$i)\n .concat(\n $$a.slice($$i + 1)\n )\n )\n }\n } else {\n _vm.$set(\n provider,\n \"episodeMetadata\",\n $$c\n )\n }\n }\n }\n }),\n _vm._v(\" Episode Metadata\")\n ]\n ),\n _vm._v(\" \"),\n _c(\n \"label\",\n { attrs: { for: provider.id + \"_fanart\" } },\n [\n _c(\"input\", {\n directives: [\n {\n name: \"model\",\n rawName: \"v-model\",\n value: provider.fanart,\n expression: \"provider.fanart\"\n }\n ],\n staticClass:\n \"float-left metadata_checkbox\",\n attrs: {\n type: \"checkbox\",\n id: provider.id + \"_fanart\",\n disabled: provider.example.fanart.includes(\n \"not supported\"\n )\n },\n domProps: {\n checked: Array.isArray(\n provider.fanart\n )\n ? _vm._i(provider.fanart, null) > -1\n : provider.fanart\n },\n on: {\n change: function($event) {\n var $$a = provider.fanart,\n $$el = $event.target,\n $$c = $$el.checked ? true : false\n if (Array.isArray($$a)) {\n var $$v = null,\n $$i = _vm._i($$a, $$v)\n if ($$el.checked) {\n $$i < 0 &&\n _vm.$set(\n provider,\n \"fanart\",\n $$a.concat([$$v])\n )\n } else {\n $$i > -1 &&\n _vm.$set(\n provider,\n \"fanart\",\n $$a\n .slice(0, $$i)\n .concat(\n $$a.slice($$i + 1)\n )\n )\n }\n } else {\n _vm.$set(provider, \"fanart\", $$c)\n }\n }\n }\n }),\n _vm._v(\" Show Fanart\")\n ]\n ),\n _vm._v(\" \"),\n _c(\n \"label\",\n { attrs: { for: provider.id + \"_poster\" } },\n [\n _c(\"input\", {\n directives: [\n {\n name: \"model\",\n rawName: \"v-model\",\n value: provider.poster,\n expression: \"provider.poster\"\n }\n ],\n staticClass:\n \"float-left metadata_checkbox\",\n attrs: {\n type: \"checkbox\",\n id: provider.id + \"_poster\",\n disabled: provider.example.poster.includes(\n \"not supported\"\n )\n },\n domProps: {\n checked: Array.isArray(\n provider.poster\n )\n ? _vm._i(provider.poster, null) > -1\n : provider.poster\n },\n on: {\n change: function($event) {\n var $$a = provider.poster,\n $$el = $event.target,\n $$c = $$el.checked ? true : false\n if (Array.isArray($$a)) {\n var $$v = null,\n $$i = _vm._i($$a, $$v)\n if ($$el.checked) {\n $$i < 0 &&\n _vm.$set(\n provider,\n \"poster\",\n $$a.concat([$$v])\n )\n } else {\n $$i > -1 &&\n _vm.$set(\n provider,\n \"poster\",\n $$a\n .slice(0, $$i)\n .concat(\n $$a.slice($$i + 1)\n )\n )\n }\n } else {\n _vm.$set(provider, \"poster\", $$c)\n }\n }\n }\n }),\n _vm._v(\" Show Poster\")\n ]\n ),\n _vm._v(\" \"),\n _c(\n \"label\",\n { attrs: { for: provider.id + \"_banner\" } },\n [\n _c(\"input\", {\n directives: [\n {\n name: \"model\",\n rawName: \"v-model\",\n value: provider.banner,\n expression: \"provider.banner\"\n }\n ],\n staticClass:\n \"float-left metadata_checkbox\",\n attrs: {\n type: \"checkbox\",\n id: provider.id + \"_banner\",\n disabled: provider.example.banner.includes(\n \"not supported\"\n )\n },\n domProps: {\n checked: Array.isArray(\n provider.banner\n )\n ? _vm._i(provider.banner, null) > -1\n : provider.banner\n },\n on: {\n change: function($event) {\n var $$a = provider.banner,\n $$el = $event.target,\n $$c = $$el.checked ? true : false\n if (Array.isArray($$a)) {\n var $$v = null,\n $$i = _vm._i($$a, $$v)\n if ($$el.checked) {\n $$i < 0 &&\n _vm.$set(\n provider,\n \"banner\",\n $$a.concat([$$v])\n )\n } else {\n $$i > -1 &&\n _vm.$set(\n provider,\n \"banner\",\n $$a\n .slice(0, $$i)\n .concat(\n $$a.slice($$i + 1)\n )\n )\n }\n } else {\n _vm.$set(provider, \"banner\", $$c)\n }\n }\n }\n }),\n _vm._v(\" Show Banner\")\n ]\n ),\n _vm._v(\" \"),\n _c(\n \"label\",\n {\n attrs: {\n for: provider.id + \"_episode_thumbnails\"\n }\n },\n [\n _c(\"input\", {\n directives: [\n {\n name: \"model\",\n rawName: \"v-model\",\n value: provider.episodeThumbnails,\n expression:\n \"provider.episodeThumbnails\"\n }\n ],\n staticClass:\n \"float-left metadata_checkbox\",\n attrs: {\n type: \"checkbox\",\n id:\n provider.id + \"_episode_thumbnails\",\n disabled: provider.example.episodeThumbnails.includes(\n \"not supported\"\n )\n },\n domProps: {\n checked: Array.isArray(\n provider.episodeThumbnails\n )\n ? _vm._i(\n provider.episodeThumbnails,\n null\n ) > -1\n : provider.episodeThumbnails\n },\n on: {\n change: function($event) {\n var $$a =\n provider.episodeThumbnails,\n $$el = $event.target,\n $$c = $$el.checked ? true : false\n if (Array.isArray($$a)) {\n var $$v = null,\n $$i = _vm._i($$a, $$v)\n if ($$el.checked) {\n $$i < 0 &&\n _vm.$set(\n provider,\n \"episodeThumbnails\",\n $$a.concat([$$v])\n )\n } else {\n $$i > -1 &&\n _vm.$set(\n provider,\n \"episodeThumbnails\",\n $$a\n .slice(0, $$i)\n .concat(\n $$a.slice($$i + 1)\n )\n )\n }\n } else {\n _vm.$set(\n provider,\n \"episodeThumbnails\",\n $$c\n )\n }\n }\n }\n }),\n _vm._v(\" Episode Thumbnails\")\n ]\n ),\n _vm._v(\" \"),\n _c(\n \"label\",\n {\n attrs: {\n for: provider.id + \"_season_posters\"\n }\n },\n [\n _c(\"input\", {\n directives: [\n {\n name: \"model\",\n rawName: \"v-model\",\n value: provider.seasonPosters,\n expression: \"provider.seasonPosters\"\n }\n ],\n staticClass:\n \"float-left metadata_checkbox\",\n attrs: {\n type: \"checkbox\",\n id: provider.id + \"_season_posters\",\n disabled: provider.example.seasonPosters.includes(\n \"not supported\"\n )\n },\n domProps: {\n checked: Array.isArray(\n provider.seasonPosters\n )\n ? _vm._i(\n provider.seasonPosters,\n null\n ) > -1\n : provider.seasonPosters\n },\n on: {\n change: function($event) {\n var $$a = provider.seasonPosters,\n $$el = $event.target,\n $$c = $$el.checked ? true : false\n if (Array.isArray($$a)) {\n var $$v = null,\n $$i = _vm._i($$a, $$v)\n if ($$el.checked) {\n $$i < 0 &&\n _vm.$set(\n provider,\n \"seasonPosters\",\n $$a.concat([$$v])\n )\n } else {\n $$i > -1 &&\n _vm.$set(\n provider,\n \"seasonPosters\",\n $$a\n .slice(0, $$i)\n .concat(\n $$a.slice($$i + 1)\n )\n )\n }\n } else {\n _vm.$set(\n provider,\n \"seasonPosters\",\n $$c\n )\n }\n }\n }\n }),\n _vm._v(\" Season Posters\")\n ]\n ),\n _vm._v(\" \"),\n _c(\n \"label\",\n {\n attrs: {\n for: provider.id + \"_season_banners\"\n }\n },\n [\n _c(\"input\", {\n directives: [\n {\n name: \"model\",\n rawName: \"v-model\",\n value: provider.seasonBanners,\n expression: \"provider.seasonBanners\"\n }\n ],\n staticClass:\n \"float-left metadata_checkbox\",\n attrs: {\n type: \"checkbox\",\n id: provider.id + \"_season_banners\",\n disabled: provider.example.seasonBanners.includes(\n \"not supported\"\n )\n },\n domProps: {\n checked: Array.isArray(\n provider.seasonBanners\n )\n ? _vm._i(\n provider.seasonBanners,\n null\n ) > -1\n : provider.seasonBanners\n },\n on: {\n change: function($event) {\n var $$a = provider.seasonBanners,\n $$el = $event.target,\n $$c = $$el.checked ? true : false\n if (Array.isArray($$a)) {\n var $$v = null,\n $$i = _vm._i($$a, $$v)\n if ($$el.checked) {\n $$i < 0 &&\n _vm.$set(\n provider,\n \"seasonBanners\",\n $$a.concat([$$v])\n )\n } else {\n $$i > -1 &&\n _vm.$set(\n provider,\n \"seasonBanners\",\n $$a\n .slice(0, $$i)\n .concat(\n $$a.slice($$i + 1)\n )\n )\n }\n } else {\n _vm.$set(\n provider,\n \"seasonBanners\",\n $$c\n )\n }\n }\n }\n }),\n _vm._v(\" Season Banners\")\n ]\n ),\n _vm._v(\" \"),\n _c(\n \"label\",\n {\n attrs: {\n for: provider.id + \"_season_all_poster\"\n }\n },\n [\n _c(\"input\", {\n directives: [\n {\n name: \"model\",\n rawName: \"v-model\",\n value: provider.seasonAllPoster,\n expression:\n \"provider.seasonAllPoster\"\n }\n ],\n staticClass:\n \"float-left metadata_checkbox\",\n attrs: {\n type: \"checkbox\",\n id:\n provider.id + \"_season_all_poster\",\n disabled: provider.example.seasonAllPoster.includes(\n \"not supported\"\n )\n },\n domProps: {\n checked: Array.isArray(\n provider.seasonAllPoster\n )\n ? _vm._i(\n provider.seasonAllPoster,\n null\n ) > -1\n : provider.seasonAllPoster\n },\n on: {\n change: function($event) {\n var $$a = provider.seasonAllPoster,\n $$el = $event.target,\n $$c = $$el.checked ? true : false\n if (Array.isArray($$a)) {\n var $$v = null,\n $$i = _vm._i($$a, $$v)\n if ($$el.checked) {\n $$i < 0 &&\n _vm.$set(\n provider,\n \"seasonAllPoster\",\n $$a.concat([$$v])\n )\n } else {\n $$i > -1 &&\n _vm.$set(\n provider,\n \"seasonAllPoster\",\n $$a\n .slice(0, $$i)\n .concat(\n $$a.slice($$i + 1)\n )\n )\n }\n } else {\n _vm.$set(\n provider,\n \"seasonAllPoster\",\n $$c\n )\n }\n }\n }\n }),\n _vm._v(\" Season All Poster\")\n ]\n ),\n _vm._v(\" \"),\n _c(\n \"label\",\n {\n attrs: {\n for: provider.id + \"_season_all_banner\"\n }\n },\n [\n _c(\"input\", {\n directives: [\n {\n name: \"model\",\n rawName: \"v-model\",\n value: provider.seasonAllBanner,\n expression:\n \"provider.seasonAllBanner\"\n }\n ],\n staticClass:\n \"float-left metadata_checkbox\",\n attrs: {\n type: \"checkbox\",\n id:\n provider.id + \"_season_all_banner\",\n disabled: provider.example.seasonAllBanner.includes(\n \"not supported\"\n )\n },\n domProps: {\n checked: Array.isArray(\n provider.seasonAllBanner\n )\n ? _vm._i(\n provider.seasonAllBanner,\n null\n ) > -1\n : provider.seasonAllBanner\n },\n on: {\n change: function($event) {\n var $$a = provider.seasonAllBanner,\n $$el = $event.target,\n $$c = $$el.checked ? true : false\n if (Array.isArray($$a)) {\n var $$v = null,\n $$i = _vm._i($$a, $$v)\n if ($$el.checked) {\n $$i < 0 &&\n _vm.$set(\n provider,\n \"seasonAllBanner\",\n $$a.concat([$$v])\n )\n } else {\n $$i > -1 &&\n _vm.$set(\n provider,\n \"seasonAllBanner\",\n $$a\n .slice(0, $$i)\n .concat(\n $$a.slice($$i + 1)\n )\n )\n }\n } else {\n _vm.$set(\n provider,\n \"seasonAllBanner\",\n $$c\n )\n }\n }\n }\n }),\n _vm._v(\" Season All Banner\")\n ]\n )\n ])\n ]\n ),\n _vm._v(\" \"),\n _c(\n \"div\",\n { staticClass: \"metadata_example_wrapper\" },\n [\n _c(\"h4\", [_vm._v(\"Results:\")]),\n _vm._v(\" \"),\n _c(\"div\", { staticClass: \"metadata_example\" }, [\n _c(\n \"label\",\n {\n attrs: {\n for: provider.id + \"_show_metadata\"\n }\n },\n [\n _c(\n \"span\",\n {\n class: {\n disabled: !provider.showMetadata\n },\n attrs: {\n id:\n provider.id + \"_eg_show_metadata\"\n }\n },\n [\n _c(\"span\", {\n domProps: {\n innerHTML: _vm._s(\n \"
\" +\n provider.example\n .showMetadata +\n \" \"\n )\n }\n })\n ]\n )\n ]\n ),\n _vm._v(\" \"),\n _c(\n \"label\",\n {\n attrs: {\n for: provider.id + \"_episode_metadata\"\n }\n },\n [\n _c(\n \"span\",\n {\n class: {\n disabled: !provider.episodeMetadata\n },\n attrs: {\n id:\n provider.id +\n \"_eg_episode_metadata\"\n }\n },\n [\n _c(\"span\", {\n domProps: {\n innerHTML: _vm._s(\n \"
\" +\n provider.example\n .episodeMetadata +\n \" \"\n )\n }\n })\n ]\n )\n ]\n ),\n _vm._v(\" \"),\n _c(\n \"label\",\n { attrs: { for: provider.id + \"_fanart\" } },\n [\n _c(\n \"span\",\n {\n class: { disabled: !provider.fanart },\n attrs: {\n id: provider.id + \"_eg_fanart\"\n }\n },\n [\n _c(\"span\", {\n domProps: {\n innerHTML: _vm._s(\n \"
\" +\n provider.example.fanart +\n \" \"\n )\n }\n })\n ]\n )\n ]\n ),\n _vm._v(\" \"),\n _c(\n \"label\",\n { attrs: { for: provider.id + \"_poster\" } },\n [\n _c(\n \"span\",\n {\n class: { disabled: !provider.poster },\n attrs: {\n id: provider.id + \"_eg_poster\"\n }\n },\n [\n _c(\"span\", {\n domProps: {\n innerHTML: _vm._s(\n \"
\" +\n provider.example.poster +\n \" \"\n )\n }\n })\n ]\n )\n ]\n ),\n _vm._v(\" \"),\n _c(\n \"label\",\n { attrs: { for: provider.id + \"_banner\" } },\n [\n _c(\n \"span\",\n {\n class: { disabled: !provider.banner },\n attrs: {\n id: provider.id + \"_eg_banner\"\n }\n },\n [\n _c(\"span\", {\n domProps: {\n innerHTML: _vm._s(\n \"
\" +\n provider.example.banner +\n \" \"\n )\n }\n })\n ]\n )\n ]\n ),\n _vm._v(\" \"),\n _c(\n \"label\",\n {\n attrs: {\n for: provider.id + \"_episode_thumbnails\"\n }\n },\n [\n _c(\n \"span\",\n {\n class: {\n disabled: !provider.episodeThumbnails\n },\n attrs: {\n id:\n provider.id +\n \"_eg_episode_thumbnails\"\n }\n },\n [\n _c(\"span\", {\n domProps: {\n innerHTML: _vm._s(\n \"
\" +\n provider.example\n .episodeThumbnails +\n \" \"\n )\n }\n })\n ]\n )\n ]\n ),\n _vm._v(\" \"),\n _c(\n \"label\",\n {\n attrs: {\n for: provider.id + \"_season_posters\"\n }\n },\n [\n _c(\n \"span\",\n {\n class: {\n disabled: !provider.seasonPosters\n },\n attrs: {\n id:\n provider.id + \"_eg_season_posters\"\n }\n },\n [\n _c(\"span\", {\n domProps: {\n innerHTML: _vm._s(\n \"
\" +\n provider.example\n .seasonPosters +\n \" \"\n )\n }\n })\n ]\n )\n ]\n ),\n _vm._v(\" \"),\n _c(\n \"label\",\n {\n attrs: {\n for: provider.id + \"_season_banners\"\n }\n },\n [\n _c(\n \"span\",\n {\n class: {\n disabled: !provider.seasonBanners\n },\n attrs: {\n id:\n provider.id + \"_eg_season_banners\"\n }\n },\n [\n _c(\"span\", {\n domProps: {\n innerHTML: _vm._s(\n \"
\" +\n provider.example\n .seasonBanners +\n \" \"\n )\n }\n })\n ]\n )\n ]\n ),\n _vm._v(\" \"),\n _c(\n \"label\",\n {\n attrs: {\n for: provider.id + \"_season_all_poster\"\n }\n },\n [\n _c(\n \"span\",\n {\n class: {\n disabled: !provider.seasonAllPoster\n },\n attrs: {\n id:\n provider.id +\n \"_eg_season_all_poster\"\n }\n },\n [\n _c(\"span\", {\n domProps: {\n innerHTML: _vm._s(\n \"
\" +\n provider.example\n .seasonAllPoster +\n \" \"\n )\n }\n })\n ]\n )\n ]\n ),\n _vm._v(\" \"),\n _c(\n \"label\",\n {\n attrs: {\n for: provider.id + \"_season_all_banner\"\n }\n },\n [\n _c(\n \"span\",\n {\n class: {\n disabled: !provider.seasonAllBanner\n },\n attrs: {\n id:\n provider.id +\n \"_eg_season_all_banner\"\n }\n },\n [\n _c(\"span\", {\n domProps: {\n innerHTML: _vm._s(\n \"
\" +\n provider.example\n .seasonAllBanner +\n \" \"\n )\n }\n })\n ]\n )\n ]\n )\n ])\n ]\n )\n ]\n )\n })\n ],\n 2\n ),\n _vm._v(\" \"),\n _c(\"input\", {\n staticClass: \"btn-medusa config_submitter\",\n attrs: { type: \"submit\", value: \"Save Changes\" }\n }),\n _c(\"br\")\n ])\n ])\n ]),\n _vm._v(\" \"),\n _c(\"h6\", { staticClass: \"pull-right\" }, [\n _c(\"b\", [\n _vm._v(\"All non-absolute folder locations are relative to \"),\n _c(\"span\", { staticClass: \"path\" }, [\n _vm._v(_vm._s(_vm.config.dataDir))\n ])\n ])\n ]),\n _vm._v(\" \"),\n _c(\"input\", {\n staticClass: \"btn-medusa pull-left config_submitter button\",\n attrs: { type: \"submit\", value: \"Save Changes\" }\n })\n ])\n ]\n )\n ])\n ])\n}\nvar staticRenderFns = [\n function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\n \"div\",\n { staticClass: \"component-group-desc col-xs-12 col-md-2\" },\n [\n _c(\"h3\", [_vm._v(\"Scheduled Post-Processing\")]),\n _vm._v(\" \"),\n _c(\"p\", [\n _vm._v(\n \"Settings that dictate how Medusa should process completed downloads.\"\n )\n ]),\n _vm._v(\" \"),\n _c(\"p\", [\n _vm._v(\n \"The scheduled postprocessor will periodically scan a folder for media to process.\"\n )\n ])\n ]\n )\n },\n function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\n \"label\",\n {\n staticClass: \"col-sm-2 control-label\",\n attrs: { for: \"process_automatically\" }\n },\n [_c(\"span\", [_vm._v(\"Scheduled Postprocessor\")])]\n )\n },\n function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\"p\", [\n _vm._v(\n \"Enable the scheduled post processor to scan and process any files in your \"\n ),\n _c(\"i\", [_vm._v(\"Post Processing Dir\")]),\n _vm._v(\"?\")\n ])\n },\n function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\"div\", { staticClass: \"clear-left\" }, [\n _c(\"p\", [\n _c(\"b\", [_vm._v(\"NOTE:\")]),\n _vm._v(\" Do not use if you use an external Post Processing script\")\n ])\n ])\n },\n function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\n \"label\",\n {\n staticClass: \"col-sm-2 control-label\",\n attrs: { for: \"tv_download_dir\" }\n },\n [_c(\"span\", [_vm._v(\"Post Processing Dir\")])]\n )\n },\n function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\"div\", { staticClass: \"clear-left\" }, [\n _c(\"p\", [\n _c(\"b\", [_vm._v(\"NOTE:\")]),\n _vm._v(\n \" Please use seperate downloading and completed folders in your download client if possible.\"\n )\n ])\n ])\n },\n function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\n \"label\",\n {\n staticClass: \"col-sm-2 control-label\",\n attrs: { for: \"process_method\" }\n },\n [_c(\"span\", [_vm._v(\"Processing Method\")])]\n )\n },\n function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\"p\", [\n _c(\"b\", [_vm._v(\"NOTE:\")]),\n _vm._v(\n \" If you keep seeding torrents after they finish, please avoid the 'move' processing method to prevent errors.\"\n )\n ])\n },\n function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\n \"label\",\n {\n staticClass: \"col-sm-2 control-label\",\n attrs: { for: \"autopostprocessor_frequency\" }\n },\n [_c(\"span\", [_vm._v(\"Auto Post-Processing Frequency\")])]\n )\n },\n function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\n \"div\",\n { staticClass: \"component-group-desc col-xs-12 col-md-2\" },\n [\n _c(\"h3\", [_vm._v(\"General Post-Processing\")]),\n _vm._v(\" \"),\n _c(\"p\", [\n _vm._v(\n \"Generic postprocessing settings that apply both to the scheduled postprocessor as external scripts\"\n )\n ])\n ]\n )\n },\n function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\n \"label\",\n {\n staticClass: \"col-sm-2 control-label\",\n attrs: { for: \"postpone_if_sync_files\" }\n },\n [_c(\"span\", [_vm._v(\"Postpone post processing\")])]\n )\n },\n function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\n \"label\",\n { staticClass: \"col-sm-2 control-label\", attrs: { for: \"sync_files\" } },\n [_c(\"span\", [_vm._v(\"Sync File Extensions\")])]\n )\n },\n function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\n \"label\",\n {\n staticClass: \"col-sm-2 control-label\",\n attrs: { for: \"postpone_if_no_subs\" }\n },\n [_c(\"span\", [_vm._v(\"Postpone if no subtitle\")])]\n )\n },\n function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\"span\", [\n _c(\"b\", [_vm._v(\"NOTE:\")]),\n _vm._v(\n \" Automatic post processor should be disabled to avoid files with pending subtitles being processed over and over.\"\n )\n ])\n },\n function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\n \"label\",\n {\n staticClass: \"col-sm-2 control-label\",\n attrs: { for: \"rename_episodes\" }\n },\n [_c(\"span\", [_vm._v(\"Rename Episodes\")])]\n )\n },\n function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\n \"label\",\n {\n staticClass: \"col-sm-2 control-label\",\n attrs: { for: \"create_missing_show_dirs\" }\n },\n [_c(\"span\", [_vm._v(\"Create missing show directories\")])]\n )\n },\n function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\n \"label\",\n {\n staticClass: \"col-sm-2 control-label\",\n attrs: { for: \"add_shows_wo_dir\" }\n },\n [_c(\"span\", [_vm._v(\"Add shows without directory\")])]\n )\n },\n function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\n \"label\",\n {\n staticClass: \"col-sm-2 control-label\",\n attrs: { for: \"move_associated_files\" }\n },\n [_c(\"span\", [_vm._v(\"Delete associated files\")])]\n )\n },\n function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\"label\", { staticClass: \"col-sm-2 control-label\" }, [\n _c(\"span\", [_vm._v(\"Keep associated file extensions\")])\n ])\n },\n function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\n \"label\",\n { staticClass: \"col-sm-2 control-label\", attrs: { for: \"nfo_rename\" } },\n [_c(\"span\", [_vm._v(\"Rename .nfo file\")])]\n )\n },\n function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\n \"label\",\n {\n staticClass: \"col-sm-2 control-label\",\n attrs: { for: \"airdate_episodes\" }\n },\n [_c(\"span\", [_vm._v(\"Change File Date\")])]\n )\n },\n function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\n \"label\",\n {\n staticClass: \"col-sm-2 control-label\",\n attrs: { for: \"file_timestamp_timezone\" }\n },\n [_c(\"span\", [_vm._v(\"Timezone for File Date:\")])]\n )\n },\n function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\n \"label\",\n { staticClass: \"col-sm-2 control-label\", attrs: { for: \"unpack\" } },\n [_c(\"span\", [_vm._v(\"Unpack\")])]\n )\n },\n function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\"span\", [\n _vm._v(\"Unpack any TV releases in your \"),\n _c(\"i\", [_vm._v(\"TV Download Dir\")]),\n _vm._v(\"?\")\n ])\n },\n function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\"span\", [\n _c(\"b\", [_vm._v(\"NOTE:\")]),\n _vm._v(\" Only working with RAR archive\")\n ])\n },\n function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\n \"label\",\n {\n staticClass: \"col-sm-2 control-label\",\n attrs: { for: \"del_rar_contents\" }\n },\n [_c(\"span\", [_vm._v(\"Delete RAR contents\")])]\n )\n },\n function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\n \"label\",\n { staticClass: \"col-sm-2 control-label\", attrs: { for: \"no_delete\" } },\n [_c(\"span\", [_vm._v(\"Don't delete empty folders\")])]\n )\n },\n function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\"span\", [\n _c(\"b\", [_vm._v(\"NOTE:\")]),\n _vm._v(\" Can be overridden using manual Post Processing\")\n ])\n },\n function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\"label\", { staticClass: \"col-sm-2 control-label\" }, [\n _c(\"span\", [_vm._v(\"Extra Scripts\")])\n ])\n },\n function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\n \"div\",\n { staticClass: \"component-group-desc col-xs-12 col-md-2\" },\n [\n _c(\"h3\", [_vm._v(\"Episode Naming\")]),\n _vm._v(\" \"),\n _c(\"p\", [_vm._v(\"How Medusa will name and sort your episodes.\")])\n ]\n )\n },\n function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\n \"label\",\n {\n staticClass: \"col-sm-2 control-label\",\n attrs: { for: \"naming_strip_year\" }\n },\n [_c(\"span\", [_vm._v(\"Strip Show Year\")])]\n )\n },\n function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\n \"div\",\n { staticClass: \"component-group-desc col-xs-12 col-md-2\" },\n [\n _c(\"h3\", [_vm._v(\"Metadata\")]),\n _vm._v(\" \"),\n _c(\"p\", [\n _vm._v(\n \"The data associated to the data. These are files associated to a TV show in the form of images and text that, when supported, will enhance the viewing experience.\"\n )\n ])\n ]\n )\n },\n function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\n \"label\",\n { staticClass: \"col-sm-2 control-label\", attrs: { for: \"metadataType\" } },\n [_c(\"span\", [_vm._v(\"Metadata Type\")])]\n )\n },\n function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\"span\", { staticClass: \"d-block\" }, [\n _vm._v(\"Toggle the metadata options that you wish to be created. \"),\n _c(\"b\", [_vm._v(\"Multiple targets may be used.\")])\n ])\n }\n]\nrender._withStripped = true\n\nexport { render, staticRenderFns }","import mod from \"-!../../node_modules/babel-loader/lib/index.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./config-post-processing.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/babel-loader/lib/index.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./config-post-processing.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./config-post-processing.vue?vue&type=template&id=b6fc1fd2&\"\nimport script from \"./config-post-processing.vue?vue&type=script&lang=js&\"\nexport * from \"./config-post-processing.vue?vue&type=script&lang=js&\"\nimport style0 from \"./config-post-processing.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\ncomponent.options.__file = \"config-post-processing.vue\"\nexport default component.exports","var render = function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\"div\", { attrs: { id: \"config-textbox-content\" } }, [\n _c(\"div\", { staticClass: \"form-group\" }, [\n _c(\"div\", { staticClass: \"row\" }, [\n _c(\n \"label\",\n { staticClass: \"col-sm-2 control-label\", attrs: { for: _vm.id } },\n [_c(\"span\", [_vm._v(_vm._s(_vm.label))])]\n ),\n _vm._v(\" \"),\n _c(\n \"div\",\n { staticClass: \"col-sm-10 content\" },\n [\n _c(\n \"input\",\n _vm._b(\n {\n directives: [\n {\n name: \"model\",\n rawName: \"v-model\",\n value: _vm.localValue,\n expression: \"localValue\"\n }\n ],\n class: _vm.inputClass,\n attrs: { type: \"text\" },\n domProps: { value: _vm.localValue },\n on: {\n input: function($event) {\n if ($event.target.composing) {\n return\n }\n _vm.localValue = $event.target.value\n }\n }\n },\n \"input\",\n { id: _vm.id, name: _vm.id },\n false\n )\n ),\n _vm._v(\" \"),\n _vm._l(_vm.explanations, function(explanation, index) {\n return _c(\"p\", { key: index }, [_vm._v(_vm._s(explanation))])\n })\n ],\n 2\n )\n ])\n ])\n ])\n}\nvar staticRenderFns = []\nrender._withStripped = true\n\nexport { render, staticRenderFns }","
\n \n \n\n\n\n\n","import mod from \"-!../../node_modules/babel-loader/lib/index.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./config-textbox.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/babel-loader/lib/index.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./config-textbox.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./config-textbox.vue?vue&type=template&id=a46a5978&\"\nimport script from \"./config-textbox.vue?vue&type=script&lang=js&\"\nexport * from \"./config-textbox.vue?vue&type=script&lang=js&\"\nimport style0 from \"./config-textbox.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\ncomponent.options.__file = \"config-textbox.vue\"\nexport default component.exports","var render = function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\"div\", { attrs: { id: \"config-textbox-number-content\" } }, [\n _c(\"div\", { staticClass: \"form-group\" }, [\n _c(\"div\", { staticClass: \"row\" }, [\n _c(\n \"label\",\n { staticClass: \"col-sm-2 control-label\", attrs: { for: _vm.id } },\n [_c(\"span\", [_vm._v(_vm._s(_vm.label))])]\n ),\n _vm._v(\" \"),\n _c(\n \"div\",\n { staticClass: \"col-sm-10 content\" },\n [\n _c(\n \"input\",\n _vm._b(\n {\n class: _vm.inputClass,\n attrs: { type: \"number\", name: _vm.id },\n domProps: { value: _vm.localValue }\n },\n \"input\",\n { min: _vm.min, step: _vm.step, id: _vm.id },\n false\n )\n ),\n _vm._v(\" \"),\n _vm._l(_vm.explanations, function(explanation, index) {\n return _c(\"p\", { key: index }, [_vm._v(_vm._s(explanation))])\n })\n ],\n 2\n )\n ])\n ])\n ])\n}\nvar staticRenderFns = []\nrender._withStripped = true\n\nexport { render, staticRenderFns }","
\n \n \n\n\n\n\n","import mod from \"-!../../node_modules/babel-loader/lib/index.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./config-textbox-number.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/babel-loader/lib/index.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./config-textbox-number.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./config-textbox-number.vue?vue&type=template&id=58eed65e&\"\nimport script from \"./config-textbox-number.vue?vue&type=script&lang=js&\"\nexport * from \"./config-textbox-number.vue?vue&type=script&lang=js&\"\nimport style0 from \"./config-textbox-number.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\ncomponent.options.__file = \"config-textbox-number.vue\"\nexport default component.exports","var render = function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\"div\", { attrs: { id: \"config-toggle-slider-content\" } }, [\n _c(\"div\", { staticClass: \"form-group\" }, [\n _c(\"div\", { staticClass: \"row\" }, [\n _c(\n \"label\",\n { staticClass: \"col-sm-2 control-label\", attrs: { for: _vm.id } },\n [_c(\"span\", [_vm._v(_vm._s(_vm.label))])]\n ),\n _vm._v(\" \"),\n _c(\n \"div\",\n { staticClass: \"col-sm-10 content\" },\n [\n _c(\n \"toggle-button\",\n _vm._b(\n {\n attrs: { width: 45, height: 22, sync: \"\" },\n model: {\n value: _vm.localChecked,\n callback: function($$v) {\n _vm.localChecked = $$v\n },\n expression: \"localChecked\"\n }\n },\n \"toggle-button\",\n { id: _vm.id, name: _vm.id },\n false\n )\n ),\n _vm._v(\" \"),\n _vm._l(_vm.explanations, function(explanation, index) {\n return _c(\"p\", { key: index }, [_vm._v(_vm._s(explanation))])\n })\n ],\n 2\n )\n ])\n ])\n ])\n}\nvar staticRenderFns = []\nrender._withStripped = true\n\nexport { render, staticRenderFns }","
\n \n \n\n\n\n\n","import mod from \"-!../../node_modules/babel-loader/lib/index.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./config-toggle-slider.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/babel-loader/lib/index.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./config-toggle-slider.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./config-toggle-slider.vue?vue&type=template&id=0697d59e&\"\nimport script from \"./config-toggle-slider.vue?vue&type=script&lang=js&\"\nexport * from \"./config-toggle-slider.vue?vue&type=script&lang=js&\"\nimport style0 from \"./config-toggle-slider.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\ncomponent.options.__file = \"config-toggle-slider.vue\"\nexport default component.exports","import mod from \"-!../../node_modules/babel-loader/lib/index.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./display-show.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/babel-loader/lib/index.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./display-show.vue?vue&type=script&lang=js&\"","var render, staticRenderFns\nimport script from \"./display-show.vue?vue&type=script&lang=js&\"\nexport * from \"./display-show.vue?vue&type=script&lang=js&\"\nimport style0 from \"./display-show.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\ncomponent.options.__file = \"display-show.vue\"\nexport default component.exports","import mod from \"-!../../node_modules/babel-loader/lib/index.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./home.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/babel-loader/lib/index.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./home.vue?vue&type=script&lang=js&\"","var render, staticRenderFns\nimport script from \"./home.vue?vue&type=script&lang=js&\"\nexport * from \"./home.vue?vue&type=script&lang=js&\"\nimport style0 from \"./home.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\ncomponent.options.__file = \"home.vue\"\nexport default component.exports","var render = function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\"iframe\", {\n staticClass: \"irc-frame loading-spinner\",\n attrs: { src: _vm.frameSrc }\n })\n}\nvar staticRenderFns = []\nrender._withStripped = true\n\nexport { render, staticRenderFns }","
\n \n \n\n\n\n\n","import mod from \"-!../../node_modules/babel-loader/lib/index.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./irc.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/babel-loader/lib/index.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./irc.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./irc.vue?vue&type=template&id=60f89f30&scoped=true&\"\nimport script from \"./irc.vue?vue&type=script&lang=js&\"\nexport * from \"./irc.vue?vue&type=script&lang=js&\"\nimport style0 from \"./irc.vue?vue&type=style&index=0&id=60f89f30&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 \"60f89f30\",\n null\n \n)\n\ncomponent.options.__file = \"irc.vue\"\nexport default component.exports","var render = function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\"select\")\n}\nvar staticRenderFns = []\nrender._withStripped = true\n\nexport { render, staticRenderFns }","import mod from \"-!../../node_modules/babel-loader/lib/index.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./language-select.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/babel-loader/lib/index.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./language-select.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./language-select.vue?vue&type=template&id=6ec994bc&\"\nimport script from \"./language-select.vue?vue&type=script&lang=js&\"\nexport * from \"./language-select.vue?vue&type=script&lang=js&\"\nimport style0 from \"./language-select.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\ncomponent.options.__file = \"language-select.vue\"\nexport default component.exports","var render = function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _vm._m(0)\n}\nvar staticRenderFns = [\n function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\"div\", { staticClass: \"login\" }, [\n _c(\"form\", { attrs: { action: \"\", method: \"post\" } }, [\n _c(\"h1\", [_vm._v(\"Medusa\")]),\n _vm._v(\" \"),\n _c(\"div\", { staticClass: \"ctrlHolder\" }, [\n _c(\"input\", {\n staticClass: \"inlay\",\n attrs: {\n name: \"username\",\n type: \"text\",\n placeholder: \"Username\",\n autocomplete: \"off\"\n }\n })\n ]),\n _vm._v(\" \"),\n _c(\"div\", { staticClass: \"ctrlHolder\" }, [\n _c(\"input\", {\n staticClass: \"inlay\",\n attrs: {\n name: \"password\",\n type: \"password\",\n placeholder: \"Password\",\n autocomplete: \"off\"\n }\n })\n ]),\n _vm._v(\" \"),\n _c(\"div\", { staticClass: \"ctrlHolder\" }, [\n _c(\n \"label\",\n { staticClass: \"remember_me\", attrs: { title: \"for 30 days\" } },\n [\n _c(\"input\", {\n staticClass: \"inlay\",\n attrs: {\n id: \"remember_me\",\n name: \"remember_me\",\n type: \"checkbox\",\n value: \"1\",\n checked: \"checked\"\n }\n }),\n _vm._v(\" Remember me\")\n ]\n ),\n _vm._v(\" \"),\n _c(\"input\", {\n staticClass: \"button\",\n attrs: { name: \"submit\", type: \"submit\", value: \"Login\" }\n })\n ])\n ])\n ])\n }\n]\nrender._withStripped = true\n\nexport { render, staticRenderFns }","
\n \n \n\n\n\n\n","import mod from \"-!../../node_modules/babel-loader/lib/index.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./login.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/babel-loader/lib/index.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./login.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./login.vue?vue&type=template&id=013dd286&\"\nimport script from \"./login.vue?vue&type=script&lang=js&\"\nexport * from \"./login.vue?vue&type=script&lang=js&\"\nimport style0 from \"./login.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\ncomponent.options.__file = \"login.vue\"\nexport default component.exports","import mod from \"-!../../node_modules/babel-loader/lib/index.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./manual-post-process.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/babel-loader/lib/index.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./manual-post-process.vue?vue&type=script&lang=js&\"","var render, staticRenderFns\nimport script from \"./manual-post-process.vue?vue&type=script&lang=js&\"\nexport * from \"./manual-post-process.vue?vue&type=script&lang=js&\"\nimport style0 from \"./manual-post-process.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\ncomponent.options.__file = \"manual-post-process.vue\"\nexport default component.exports","var render = function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\"div\", { attrs: { id: \"root-dirs-wrapper\" } }, [\n _c(\"div\", { staticClass: \"root-dirs-selectbox\" }, [\n _c(\n \"select\",\n _vm._g(\n _vm._b(\n {\n directives: [\n {\n name: \"model\",\n rawName: \"v-model\",\n value: _vm.selectedRootDir,\n expression: \"selectedRootDir\"\n }\n ],\n ref: \"rootDirs\",\n attrs: { name: \"rootDir\", id: \"rootDirs\", size: \"6\" },\n on: {\n change: function($event) {\n var $$selectedVal = Array.prototype.filter\n .call($event.target.options, function(o) {\n return o.selected\n })\n .map(function(o) {\n var val = \"_value\" in o ? o._value : o.value\n return val\n })\n _vm.selectedRootDir = $event.target.multiple\n ? $$selectedVal\n : $$selectedVal[0]\n }\n }\n },\n \"select\",\n _vm.$attrs,\n false\n ),\n _vm.$listeners\n ),\n _vm._l(_vm.rootDirs, function(curDir) {\n return _c(\n \"option\",\n { key: curDir.path, domProps: { value: curDir.path } },\n [\n _vm._v(\n \"\\n \" +\n _vm._s(_vm._f(\"markDefault\")(curDir)) +\n \"\\n \"\n )\n ]\n )\n })\n )\n ]),\n _vm._v(\" \"),\n _c(\"div\", { staticClass: \"root-dirs-controls\" }, [\n _c(\n \"button\",\n {\n staticClass: \"btn-medusa\",\n attrs: { type: \"button\" },\n on: {\n click: function($event) {\n $event.preventDefault()\n return _vm.add($event)\n }\n }\n },\n [_vm._v(\"New\")]\n ),\n _vm._v(\" \"),\n _c(\n \"button\",\n {\n staticClass: \"btn-medusa\",\n attrs: { type: \"button\", disabled: !_vm.selectedRootDir },\n on: {\n click: function($event) {\n $event.preventDefault()\n return _vm.edit($event)\n }\n }\n },\n [_vm._v(\"Edit\")]\n ),\n _vm._v(\" \"),\n _c(\n \"button\",\n {\n staticClass: \"btn-medusa\",\n attrs: { type: \"button\", disabled: !_vm.selectedRootDir },\n on: {\n click: function($event) {\n $event.preventDefault()\n return _vm.remove($event)\n }\n }\n },\n [_vm._v(\"Delete\")]\n ),\n _vm._v(\" \"),\n _c(\n \"button\",\n {\n staticClass: \"btn-medusa\",\n attrs: { type: \"button\", disabled: !_vm.selectedRootDir },\n on: {\n click: function($event) {\n $event.preventDefault()\n return _vm.setDefault($event)\n }\n }\n },\n [_vm._v(\"Set as Default *\")]\n )\n ])\n ])\n}\nvar staticRenderFns = []\nrender._withStripped = true\n\nexport { render, staticRenderFns }","import mod from \"-!../../node_modules/babel-loader/lib/index.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./root-dirs.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/babel-loader/lib/index.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./root-dirs.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./root-dirs.vue?vue&type=template&id=76f972d6&\"\nimport script from \"./root-dirs.vue?vue&type=script&lang=js&\"\nexport * from \"./root-dirs.vue?vue&type=script&lang=js&\"\nimport style0 from \"./root-dirs.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\ncomponent.options.__file = \"root-dirs.vue\"\nexport default component.exports","var render = function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\"div\", { attrs: { id: \"scroll-buttons-wrapper\" } }, [\n _c(\n \"div\",\n {\n staticClass: \"scroll-wrapper top\",\n class: { show: _vm.showToTop },\n on: {\n click: function($event) {\n $event.preventDefault()\n return _vm.scrollTop($event)\n }\n }\n },\n [_vm._m(0)]\n ),\n _vm._v(\" \"),\n _c(\n \"div\",\n {\n staticClass: \"scroll-wrapper left\",\n class: { show: _vm.showLeftRight }\n },\n [\n _c(\"span\", { staticClass: \"scroll-left-inner\" }, [\n _c(\"i\", {\n staticClass: \"glyphicon glyphicon-circle-arrow-left\",\n on: {\n click: function($event) {\n $event.preventDefault()\n return _vm.scrollLeft($event)\n }\n }\n })\n ])\n ]\n ),\n _vm._v(\" \"),\n _c(\n \"div\",\n {\n staticClass: \"scroll-wrapper right\",\n class: { show: _vm.showLeftRight }\n },\n [\n _c(\"span\", { staticClass: \"scroll-right-inner\" }, [\n _c(\"i\", {\n staticClass: \"glyphicon glyphicon-circle-arrow-right\",\n on: {\n click: function($event) {\n $event.preventDefault()\n return _vm.scrollRight($event)\n }\n }\n })\n ])\n ]\n )\n ])\n}\nvar staticRenderFns = [\n function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\"span\", { staticClass: \"scroll-top-inner\" }, [\n _c(\"i\", { staticClass: \"glyphicon glyphicon-circle-arrow-up\" })\n ])\n }\n]\nrender._withStripped = true\n\nexport { render, staticRenderFns }","import mod from \"-!../../node_modules/babel-loader/lib/index.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./scroll-buttons.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/babel-loader/lib/index.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./scroll-buttons.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./scroll-buttons.vue?vue&type=template&id=bf6f6212&\"\nimport script from \"./scroll-buttons.vue?vue&type=script&lang=js&\"\nexport * from \"./scroll-buttons.vue?vue&type=script&lang=js&\"\nimport style0 from \"./scroll-buttons.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\ncomponent.options.__file = \"scroll-buttons.vue\"\nexport default component.exports","var render = function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _vm.shows.length === 0\n ? _c(\"span\", [_vm._v(\"Loading...\")])\n : _c(\"div\", { staticClass: \"show-selector form-inline hidden-print\" }, [\n _c(\n \"div\",\n { staticClass: \"select-show-group pull-left top-5 bottom-5\" },\n [\n _c(\n \"select\",\n {\n directives: [\n {\n name: \"model\",\n rawName: \"v-model\",\n value: _vm.selectedShowSlug,\n expression: \"selectedShowSlug\"\n }\n ],\n staticClass: \"select-show form-control input-sm-custom\",\n on: {\n change: function($event) {\n var $$selectedVal = Array.prototype.filter\n .call($event.target.options, function(o) {\n return o.selected\n })\n .map(function(o) {\n var val = \"_value\" in o ? o._value : o.value\n return val\n })\n _vm.selectedShowSlug = $event.target.multiple\n ? $$selectedVal\n : $$selectedVal[0]\n }\n }\n },\n [\n _vm.whichList === -1\n ? _vm._l(_vm.showLists, function(curShowList) {\n return _c(\n \"optgroup\",\n {\n key: curShowList.type,\n attrs: { label: curShowList.type }\n },\n _vm._l(curShowList.shows, function(show) {\n return _c(\n \"option\",\n {\n key: show.id.slug,\n domProps: { value: show.id.slug }\n },\n [_vm._v(_vm._s(show.title))]\n )\n })\n )\n })\n : _vm._l(_vm.showLists[_vm.whichList].shows, function(show) {\n return _c(\n \"option\",\n {\n key: show.id.slug,\n domProps: { value: show.id.slug }\n },\n [_vm._v(_vm._s(show.title))]\n )\n })\n ],\n 2\n )\n ]\n )\n ])\n}\nvar staticRenderFns = []\nrender._withStripped = true\n\nexport { render, staticRenderFns }","
\n Loading... \n \n
\n \n \n \n {{show.title}} \n \n \n \n {{show.title}} \n \n \n
\n
\n \n\n\n","import mod from \"-!../../node_modules/babel-loader/lib/index.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./show-selector.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/babel-loader/lib/index.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./show-selector.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./show-selector.vue?vue&type=template&id=d995f0f2&\"\nimport script from \"./show-selector.vue?vue&type=script&lang=js&\"\nexport * from \"./show-selector.vue?vue&type=script&lang=js&\"\nimport style0 from \"./show-selector.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\ncomponent.options.__file = \"show-selector.vue\"\nexport default component.exports","import mod from \"-!../../node_modules/babel-loader/lib/index.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./snatch-selection.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/babel-loader/lib/index.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./snatch-selection.vue?vue&type=script&lang=js&\"","var render, staticRenderFns\nimport script from \"./snatch-selection.vue?vue&type=script&lang=js&\"\nexport * from \"./snatch-selection.vue?vue&type=script&lang=js&\"\nimport style0 from \"./snatch-selection.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\ncomponent.options.__file = \"snatch-selection.vue\"\nexport default component.exports","import mod from \"-!../../node_modules/babel-loader/lib/index.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./status.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/babel-loader/lib/index.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./status.vue?vue&type=script&lang=js&\"","var render, staticRenderFns\nimport script from \"./status.vue?vue&type=script&lang=js&\"\nexport * from \"./status.vue?vue&type=script&lang=js&\"\nimport style0 from \"./status.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\ncomponent.options.__file = \"status.vue\"\nexport default component.exports","var render = function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\"div\", { staticClass: \"align-center\" }, [\n _vm._v(\"You have reached this page by accident, please check the url.\")\n ])\n}\nvar staticRenderFns = []\nrender._withStripped = true\n\nexport { render, staticRenderFns }","
\n You have reached this page by accident, please check the url.
\n \n\n\n","import mod from \"-!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./404.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./404.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./404.vue?vue&type=template&id=a851d9c2&\"\nimport script from \"./404.vue?vue&type=script&lang=js&\"\nexport * from \"./404.vue?vue&type=script&lang=js&\"\nimport style0 from \"./404.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\ncomponent.options.__file = \"404.vue\"\nexport default component.exports","export { default as AddRecommended } from './add-recommended.vue';\nexport { default as AddShows } from './add-shows.vue';\nexport { default as AnidbReleaseGroupUi } from './anidb-release-group-ui.vue';\nexport { default as AppHeader } from './app-header.vue';\nexport { default as AppLink } from './app-link.vue';\nexport { default as Asset } from './asset.vue';\nexport { default as Backstretch } from './backstretch.vue';\nexport { default as Config } from './config.vue';\nexport { default as ConfigPostProcessing } from './config-post-processing.vue';\nexport { default as ConfigTextbox } from './config-textbox.vue';\nexport { default as ConfigTextboxNumber } from './config-textbox-number.vue';\nexport { default as ConfigToggleSlider } from './config-toggle-slider.vue';\nexport { default as DisplayShow } from './display-show.vue';\nexport { default as FileBrowser } from './file-browser.vue';\nexport { default as Home } from './home.vue';\nexport { default as IRC } from './irc.vue';\nexport { default as LanguageSelect } from './language-select.vue';\nexport { default as Login } from './login.vue';\nexport { default as ManualPostProcess } from './manual-post-process.vue';\nexport { default as NamePattern } from './name-pattern.vue';\nexport { default as PlotInfo } from './plot-info.vue';\nexport { default as RootDirs } from './root-dirs.vue';\nexport { default as ScrollButtons } from './scroll-buttons.vue';\nexport { default as SelectList } from './select-list.vue';\nexport { default as ShowSelector } from './show-selector.vue';\nexport { default as SnatchSelection } from './snatch-selection.vue';\nexport { default as Status } from './status.vue';\nexport { NotFound } from './http';\n","/**\n * vuex v3.0.1\n * (c) 2017 Evan You\n * @license MIT\n */\nvar applyMixin = function (Vue) {\n var version = Number(Vue.version.split('.')[0]);\n\n if (version >= 2) {\n Vue.mixin({ beforeCreate: vuexInit });\n } else {\n // override init and inject vuex init procedure\n // for 1.x backwards compatibility.\n var _init = Vue.prototype._init;\n Vue.prototype._init = function (options) {\n if ( options === void 0 ) options = {};\n\n options.init = options.init\n ? [vuexInit].concat(options.init)\n : vuexInit;\n _init.call(this, options);\n };\n }\n\n /**\n * Vuex init hook, injected into each instances init hooks list.\n */\n\n function vuexInit () {\n var options = this.$options;\n // store injection\n if (options.store) {\n this.$store = typeof options.store === 'function'\n ? options.store()\n : options.store;\n } else if (options.parent && options.parent.$store) {\n this.$store = options.parent.$store;\n }\n }\n};\n\nvar devtoolHook =\n typeof window !== 'undefined' &&\n window.__VUE_DEVTOOLS_GLOBAL_HOOK__;\n\nfunction devtoolPlugin (store) {\n if (!devtoolHook) { return }\n\n store._devtoolHook = devtoolHook;\n\n devtoolHook.emit('vuex:init', store);\n\n devtoolHook.on('vuex:travel-to-state', function (targetState) {\n store.replaceState(targetState);\n });\n\n store.subscribe(function (mutation, state) {\n devtoolHook.emit('vuex:mutation', mutation, state);\n });\n}\n\n/**\n * Get the first item that pass the test\n * by second argument function\n *\n * @param {Array} list\n * @param {Function} f\n * @return {*}\n */\n/**\n * Deep copy the given object considering circular structure.\n * This function caches all nested objects and its copies.\n * If it detects circular structure, use cached copy to avoid infinite loop.\n *\n * @param {*} obj\n * @param {Array
} cache\n * @return {*}\n */\n\n\n/**\n * forEach for object\n */\nfunction forEachValue (obj, fn) {\n Object.keys(obj).forEach(function (key) { return fn(obj[key], key); });\n}\n\nfunction isObject (obj) {\n return obj !== null && typeof obj === 'object'\n}\n\nfunction isPromise (val) {\n return val && typeof val.then === 'function'\n}\n\nfunction assert (condition, msg) {\n if (!condition) { throw new Error((\"[vuex] \" + msg)) }\n}\n\nvar Module = function Module (rawModule, runtime) {\n this.runtime = runtime;\n this._children = Object.create(null);\n this._rawModule = rawModule;\n var rawState = rawModule.state;\n this.state = (typeof rawState === 'function' ? rawState() : rawState) || {};\n};\n\nvar prototypeAccessors$1 = { namespaced: { configurable: true } };\n\nprototypeAccessors$1.namespaced.get = function () {\n return !!this._rawModule.namespaced\n};\n\nModule.prototype.addChild = function addChild (key, module) {\n this._children[key] = module;\n};\n\nModule.prototype.removeChild = function removeChild (key) {\n delete this._children[key];\n};\n\nModule.prototype.getChild = function getChild (key) {\n return this._children[key]\n};\n\nModule.prototype.update = function update (rawModule) {\n this._rawModule.namespaced = rawModule.namespaced;\n if (rawModule.actions) {\n this._rawModule.actions = rawModule.actions;\n }\n if (rawModule.mutations) {\n this._rawModule.mutations = rawModule.mutations;\n }\n if (rawModule.getters) {\n this._rawModule.getters = rawModule.getters;\n }\n};\n\nModule.prototype.forEachChild = function forEachChild (fn) {\n forEachValue(this._children, fn);\n};\n\nModule.prototype.forEachGetter = function forEachGetter (fn) {\n if (this._rawModule.getters) {\n forEachValue(this._rawModule.getters, fn);\n }\n};\n\nModule.prototype.forEachAction = function forEachAction (fn) {\n if (this._rawModule.actions) {\n forEachValue(this._rawModule.actions, fn);\n }\n};\n\nModule.prototype.forEachMutation = function forEachMutation (fn) {\n if (this._rawModule.mutations) {\n forEachValue(this._rawModule.mutations, fn);\n }\n};\n\nObject.defineProperties( Module.prototype, prototypeAccessors$1 );\n\nvar ModuleCollection = function ModuleCollection (rawRootModule) {\n // register root module (Vuex.Store options)\n this.register([], rawRootModule, false);\n};\n\nModuleCollection.prototype.get = function get (path) {\n return path.reduce(function (module, key) {\n return module.getChild(key)\n }, this.root)\n};\n\nModuleCollection.prototype.getNamespace = function getNamespace (path) {\n var module = this.root;\n return path.reduce(function (namespace, key) {\n module = module.getChild(key);\n return namespace + (module.namespaced ? key + '/' : '')\n }, '')\n};\n\nModuleCollection.prototype.update = function update$1 (rawRootModule) {\n update([], this.root, rawRootModule);\n};\n\nModuleCollection.prototype.register = function register (path, rawModule, runtime) {\n var this$1 = this;\n if ( runtime === void 0 ) runtime = true;\n\n if (process.env.NODE_ENV !== 'production') {\n assertRawModule(path, rawModule);\n }\n\n var newModule = new Module(rawModule, runtime);\n if (path.length === 0) {\n this.root = newModule;\n } else {\n var parent = this.get(path.slice(0, -1));\n parent.addChild(path[path.length - 1], newModule);\n }\n\n // register nested modules\n if (rawModule.modules) {\n forEachValue(rawModule.modules, function (rawChildModule, key) {\n this$1.register(path.concat(key), rawChildModule, runtime);\n });\n }\n};\n\nModuleCollection.prototype.unregister = function unregister (path) {\n var parent = this.get(path.slice(0, -1));\n var key = path[path.length - 1];\n if (!parent.getChild(key).runtime) { return }\n\n parent.removeChild(key);\n};\n\nfunction update (path, targetModule, newModule) {\n if (process.env.NODE_ENV !== 'production') {\n assertRawModule(path, newModule);\n }\n\n // update target module\n targetModule.update(newModule);\n\n // update nested modules\n if (newModule.modules) {\n for (var key in newModule.modules) {\n if (!targetModule.getChild(key)) {\n if (process.env.NODE_ENV !== 'production') {\n console.warn(\n \"[vuex] trying to add a new module '\" + key + \"' on hot reloading, \" +\n 'manual reload is needed'\n );\n }\n return\n }\n update(\n path.concat(key),\n targetModule.getChild(key),\n newModule.modules[key]\n );\n }\n }\n}\n\nvar functionAssert = {\n assert: function (value) { return typeof value === 'function'; },\n expected: 'function'\n};\n\nvar objectAssert = {\n assert: function (value) { return typeof value === 'function' ||\n (typeof value === 'object' && typeof value.handler === 'function'); },\n expected: 'function or object with \"handler\" function'\n};\n\nvar assertTypes = {\n getters: functionAssert,\n mutations: functionAssert,\n actions: objectAssert\n};\n\nfunction assertRawModule (path, rawModule) {\n Object.keys(assertTypes).forEach(function (key) {\n if (!rawModule[key]) { return }\n\n var assertOptions = assertTypes[key];\n\n forEachValue(rawModule[key], function (value, type) {\n assert(\n assertOptions.assert(value),\n makeAssertionMessage(path, key, type, value, assertOptions.expected)\n );\n });\n });\n}\n\nfunction makeAssertionMessage (path, key, type, value, expected) {\n var buf = key + \" should be \" + expected + \" but \\\"\" + key + \".\" + type + \"\\\"\";\n if (path.length > 0) {\n buf += \" in module \\\"\" + (path.join('.')) + \"\\\"\";\n }\n buf += \" is \" + (JSON.stringify(value)) + \".\";\n return buf\n}\n\nvar Vue; // bind on install\n\nvar Store = function Store (options) {\n var this$1 = this;\n if ( options === void 0 ) options = {};\n\n // Auto install if it is not done yet and `window` has `Vue`.\n // To allow users to avoid auto-installation in some cases,\n // this code should be placed here. See #731\n if (!Vue && typeof window !== 'undefined' && window.Vue) {\n install(window.Vue);\n }\n\n if (process.env.NODE_ENV !== 'production') {\n assert(Vue, \"must call Vue.use(Vuex) before creating a store instance.\");\n assert(typeof Promise !== 'undefined', \"vuex requires a Promise polyfill in this browser.\");\n assert(this instanceof Store, \"Store must be called with the new operator.\");\n }\n\n var plugins = options.plugins; if ( plugins === void 0 ) plugins = [];\n var strict = options.strict; if ( strict === void 0 ) strict = false;\n\n var state = options.state; if ( state === void 0 ) state = {};\n if (typeof state === 'function') {\n state = state() || {};\n }\n\n // store internal state\n this._committing = false;\n this._actions = Object.create(null);\n this._actionSubscribers = [];\n this._mutations = Object.create(null);\n this._wrappedGetters = Object.create(null);\n this._modules = new ModuleCollection(options);\n this._modulesNamespaceMap = Object.create(null);\n this._subscribers = [];\n this._watcherVM = new Vue();\n\n // bind commit and dispatch to self\n var store = this;\n var ref = this;\n var dispatch = ref.dispatch;\n var commit = ref.commit;\n this.dispatch = function boundDispatch (type, payload) {\n return dispatch.call(store, type, payload)\n };\n this.commit = function boundCommit (type, payload, options) {\n return commit.call(store, type, payload, options)\n };\n\n // strict mode\n this.strict = strict;\n\n // init root module.\n // this also recursively registers all sub-modules\n // and collects all module getters inside this._wrappedGetters\n installModule(this, state, [], this._modules.root);\n\n // initialize the store vm, which is responsible for the reactivity\n // (also registers _wrappedGetters as computed properties)\n resetStoreVM(this, state);\n\n // apply plugins\n plugins.forEach(function (plugin) { return plugin(this$1); });\n\n if (Vue.config.devtools) {\n devtoolPlugin(this);\n }\n};\n\nvar prototypeAccessors = { state: { configurable: true } };\n\nprototypeAccessors.state.get = function () {\n return this._vm._data.$$state\n};\n\nprototypeAccessors.state.set = function (v) {\n if (process.env.NODE_ENV !== 'production') {\n assert(false, \"Use store.replaceState() to explicit replace store state.\");\n }\n};\n\nStore.prototype.commit = function commit (_type, _payload, _options) {\n var this$1 = this;\n\n // check object-style commit\n var ref = unifyObjectStyle(_type, _payload, _options);\n var type = ref.type;\n var payload = ref.payload;\n var options = ref.options;\n\n var mutation = { type: type, payload: payload };\n var entry = this._mutations[type];\n if (!entry) {\n if (process.env.NODE_ENV !== 'production') {\n console.error((\"[vuex] unknown mutation type: \" + type));\n }\n return\n }\n this._withCommit(function () {\n entry.forEach(function commitIterator (handler) {\n handler(payload);\n });\n });\n this._subscribers.forEach(function (sub) { return sub(mutation, this$1.state); });\n\n if (\n process.env.NODE_ENV !== 'production' &&\n options && options.silent\n ) {\n console.warn(\n \"[vuex] mutation type: \" + type + \". Silent option has been removed. \" +\n 'Use the filter functionality in the vue-devtools'\n );\n }\n};\n\nStore.prototype.dispatch = function dispatch (_type, _payload) {\n var this$1 = this;\n\n // check object-style dispatch\n var ref = unifyObjectStyle(_type, _payload);\n var type = ref.type;\n var payload = ref.payload;\n\n var action = { type: type, payload: payload };\n var entry = this._actions[type];\n if (!entry) {\n if (process.env.NODE_ENV !== 'production') {\n console.error((\"[vuex] unknown action type: \" + type));\n }\n return\n }\n\n this._actionSubscribers.forEach(function (sub) { return sub(action, this$1.state); });\n\n return entry.length > 1\n ? Promise.all(entry.map(function (handler) { return handler(payload); }))\n : entry[0](payload)\n};\n\nStore.prototype.subscribe = function subscribe (fn) {\n return genericSubscribe(fn, this._subscribers)\n};\n\nStore.prototype.subscribeAction = function subscribeAction (fn) {\n return genericSubscribe(fn, this._actionSubscribers)\n};\n\nStore.prototype.watch = function watch (getter, cb, options) {\n var this$1 = this;\n\n if (process.env.NODE_ENV !== 'production') {\n assert(typeof getter === 'function', \"store.watch only accepts a function.\");\n }\n return this._watcherVM.$watch(function () { return getter(this$1.state, this$1.getters); }, cb, options)\n};\n\nStore.prototype.replaceState = function replaceState (state) {\n var this$1 = this;\n\n this._withCommit(function () {\n this$1._vm._data.$$state = state;\n });\n};\n\nStore.prototype.registerModule = function registerModule (path, rawModule, options) {\n if ( options === void 0 ) options = {};\n\n if (typeof path === 'string') { path = [path]; }\n\n if (process.env.NODE_ENV !== 'production') {\n assert(Array.isArray(path), \"module path must be a string or an Array.\");\n assert(path.length > 0, 'cannot register the root module by using registerModule.');\n }\n\n this._modules.register(path, rawModule);\n installModule(this, this.state, path, this._modules.get(path), options.preserveState);\n // reset store to update getters...\n resetStoreVM(this, this.state);\n};\n\nStore.prototype.unregisterModule = function unregisterModule (path) {\n var this$1 = this;\n\n if (typeof path === 'string') { path = [path]; }\n\n if (process.env.NODE_ENV !== 'production') {\n assert(Array.isArray(path), \"module path must be a string or an Array.\");\n }\n\n this._modules.unregister(path);\n this._withCommit(function () {\n var parentState = getNestedState(this$1.state, path.slice(0, -1));\n Vue.delete(parentState, path[path.length - 1]);\n });\n resetStore(this);\n};\n\nStore.prototype.hotUpdate = function hotUpdate (newOptions) {\n this._modules.update(newOptions);\n resetStore(this, true);\n};\n\nStore.prototype._withCommit = function _withCommit (fn) {\n var committing = this._committing;\n this._committing = true;\n fn();\n this._committing = committing;\n};\n\nObject.defineProperties( Store.prototype, prototypeAccessors );\n\nfunction genericSubscribe (fn, subs) {\n if (subs.indexOf(fn) < 0) {\n subs.push(fn);\n }\n return function () {\n var i = subs.indexOf(fn);\n if (i > -1) {\n subs.splice(i, 1);\n }\n }\n}\n\nfunction resetStore (store, hot) {\n store._actions = Object.create(null);\n store._mutations = Object.create(null);\n store._wrappedGetters = Object.create(null);\n store._modulesNamespaceMap = Object.create(null);\n var state = store.state;\n // init all modules\n installModule(store, state, [], store._modules.root, true);\n // reset vm\n resetStoreVM(store, state, hot);\n}\n\nfunction resetStoreVM (store, state, hot) {\n var oldVm = store._vm;\n\n // bind store public getters\n store.getters = {};\n var wrappedGetters = store._wrappedGetters;\n var computed = {};\n forEachValue(wrappedGetters, function (fn, key) {\n // use computed to leverage its lazy-caching mechanism\n computed[key] = function () { return fn(store); };\n Object.defineProperty(store.getters, key, {\n get: function () { return store._vm[key]; },\n enumerable: true // for local getters\n });\n });\n\n // use a Vue instance to store the state tree\n // suppress warnings just in case the user has added\n // some funky global mixins\n var silent = Vue.config.silent;\n Vue.config.silent = true;\n store._vm = new Vue({\n data: {\n $$state: state\n },\n computed: computed\n });\n Vue.config.silent = silent;\n\n // enable strict mode for new vm\n if (store.strict) {\n enableStrictMode(store);\n }\n\n if (oldVm) {\n if (hot) {\n // dispatch changes in all subscribed watchers\n // to force getter re-evaluation for hot reloading.\n store._withCommit(function () {\n oldVm._data.$$state = null;\n });\n }\n Vue.nextTick(function () { return oldVm.$destroy(); });\n }\n}\n\nfunction installModule (store, rootState, path, module, hot) {\n var isRoot = !path.length;\n var namespace = store._modules.getNamespace(path);\n\n // register in namespace map\n if (module.namespaced) {\n store._modulesNamespaceMap[namespace] = module;\n }\n\n // set state\n if (!isRoot && !hot) {\n var parentState = getNestedState(rootState, path.slice(0, -1));\n var moduleName = path[path.length - 1];\n store._withCommit(function () {\n Vue.set(parentState, moduleName, module.state);\n });\n }\n\n var local = module.context = makeLocalContext(store, namespace, path);\n\n module.forEachMutation(function (mutation, key) {\n var namespacedType = namespace + key;\n registerMutation(store, namespacedType, mutation, local);\n });\n\n module.forEachAction(function (action, key) {\n var type = action.root ? key : namespace + key;\n var handler = action.handler || action;\n registerAction(store, type, handler, local);\n });\n\n module.forEachGetter(function (getter, key) {\n var namespacedType = namespace + key;\n registerGetter(store, namespacedType, getter, local);\n });\n\n module.forEachChild(function (child, key) {\n installModule(store, rootState, path.concat(key), child, hot);\n });\n}\n\n/**\n * make localized dispatch, commit, getters and state\n * if there is no namespace, just use root ones\n */\nfunction makeLocalContext (store, namespace, path) {\n var noNamespace = namespace === '';\n\n var local = {\n dispatch: noNamespace ? store.dispatch : function (_type, _payload, _options) {\n var args = unifyObjectStyle(_type, _payload, _options);\n var payload = args.payload;\n var options = args.options;\n var type = args.type;\n\n if (!options || !options.root) {\n type = namespace + type;\n if (process.env.NODE_ENV !== 'production' && !store._actions[type]) {\n console.error((\"[vuex] unknown local action type: \" + (args.type) + \", global type: \" + type));\n return\n }\n }\n\n return store.dispatch(type, payload)\n },\n\n commit: noNamespace ? store.commit : function (_type, _payload, _options) {\n var args = unifyObjectStyle(_type, _payload, _options);\n var payload = args.payload;\n var options = args.options;\n var type = args.type;\n\n if (!options || !options.root) {\n type = namespace + type;\n if (process.env.NODE_ENV !== 'production' && !store._mutations[type]) {\n console.error((\"[vuex] unknown local mutation type: \" + (args.type) + \", global type: \" + type));\n return\n }\n }\n\n store.commit(type, payload, options);\n }\n };\n\n // getters and state object must be gotten lazily\n // because they will be changed by vm update\n Object.defineProperties(local, {\n getters: {\n get: noNamespace\n ? function () { return store.getters; }\n : function () { return makeLocalGetters(store, namespace); }\n },\n state: {\n get: function () { return getNestedState(store.state, path); }\n }\n });\n\n return local\n}\n\nfunction makeLocalGetters (store, namespace) {\n var gettersProxy = {};\n\n var splitPos = namespace.length;\n Object.keys(store.getters).forEach(function (type) {\n // skip if the target getter is not match this namespace\n if (type.slice(0, splitPos) !== namespace) { return }\n\n // extract local getter type\n var localType = type.slice(splitPos);\n\n // Add a port to the getters proxy.\n // Define as getter property because\n // we do not want to evaluate the getters in this time.\n Object.defineProperty(gettersProxy, localType, {\n get: function () { return store.getters[type]; },\n enumerable: true\n });\n });\n\n return gettersProxy\n}\n\nfunction registerMutation (store, type, handler, local) {\n var entry = store._mutations[type] || (store._mutations[type] = []);\n entry.push(function wrappedMutationHandler (payload) {\n handler.call(store, local.state, payload);\n });\n}\n\nfunction registerAction (store, type, handler, local) {\n var entry = store._actions[type] || (store._actions[type] = []);\n entry.push(function wrappedActionHandler (payload, cb) {\n var res = handler.call(store, {\n dispatch: local.dispatch,\n commit: local.commit,\n getters: local.getters,\n state: local.state,\n rootGetters: store.getters,\n rootState: store.state\n }, payload, cb);\n if (!isPromise(res)) {\n res = Promise.resolve(res);\n }\n if (store._devtoolHook) {\n return res.catch(function (err) {\n store._devtoolHook.emit('vuex:error', err);\n throw err\n })\n } else {\n return res\n }\n });\n}\n\nfunction registerGetter (store, type, rawGetter, local) {\n if (store._wrappedGetters[type]) {\n if (process.env.NODE_ENV !== 'production') {\n console.error((\"[vuex] duplicate getter key: \" + type));\n }\n return\n }\n store._wrappedGetters[type] = function wrappedGetter (store) {\n return rawGetter(\n local.state, // local state\n local.getters, // local getters\n store.state, // root state\n store.getters // root getters\n )\n };\n}\n\nfunction enableStrictMode (store) {\n store._vm.$watch(function () { return this._data.$$state }, function () {\n if (process.env.NODE_ENV !== 'production') {\n assert(store._committing, \"Do not mutate vuex store state outside mutation handlers.\");\n }\n }, { deep: true, sync: true });\n}\n\nfunction getNestedState (state, path) {\n return path.length\n ? path.reduce(function (state, key) { return state[key]; }, state)\n : state\n}\n\nfunction unifyObjectStyle (type, payload, options) {\n if (isObject(type) && type.type) {\n options = payload;\n payload = type;\n type = type.type;\n }\n\n if (process.env.NODE_ENV !== 'production') {\n assert(typeof type === 'string', (\"Expects string as the type, but found \" + (typeof type) + \".\"));\n }\n\n return { type: type, payload: payload, options: options }\n}\n\nfunction install (_Vue) {\n if (Vue && _Vue === Vue) {\n if (process.env.NODE_ENV !== 'production') {\n console.error(\n '[vuex] already installed. Vue.use(Vuex) should be called only once.'\n );\n }\n return\n }\n Vue = _Vue;\n applyMixin(Vue);\n}\n\nvar mapState = normalizeNamespace(function (namespace, states) {\n var res = {};\n normalizeMap(states).forEach(function (ref) {\n var key = ref.key;\n var val = ref.val;\n\n res[key] = function mappedState () {\n var state = this.$store.state;\n var getters = this.$store.getters;\n if (namespace) {\n var module = getModuleByNamespace(this.$store, 'mapState', namespace);\n if (!module) {\n return\n }\n state = module.context.state;\n getters = module.context.getters;\n }\n return typeof val === 'function'\n ? val.call(this, state, getters)\n : state[val]\n };\n // mark vuex getter for devtools\n res[key].vuex = true;\n });\n return res\n});\n\nvar mapMutations = normalizeNamespace(function (namespace, mutations) {\n var res = {};\n normalizeMap(mutations).forEach(function (ref) {\n var key = ref.key;\n var val = ref.val;\n\n res[key] = function mappedMutation () {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n var commit = this.$store.commit;\n if (namespace) {\n var module = getModuleByNamespace(this.$store, 'mapMutations', namespace);\n if (!module) {\n return\n }\n commit = module.context.commit;\n }\n return typeof val === 'function'\n ? val.apply(this, [commit].concat(args))\n : commit.apply(this.$store, [val].concat(args))\n };\n });\n return res\n});\n\nvar mapGetters = normalizeNamespace(function (namespace, getters) {\n var res = {};\n normalizeMap(getters).forEach(function (ref) {\n var key = ref.key;\n var val = ref.val;\n\n val = namespace + val;\n res[key] = function mappedGetter () {\n if (namespace && !getModuleByNamespace(this.$store, 'mapGetters', namespace)) {\n return\n }\n if (process.env.NODE_ENV !== 'production' && !(val in this.$store.getters)) {\n console.error((\"[vuex] unknown getter: \" + val));\n return\n }\n return this.$store.getters[val]\n };\n // mark vuex getter for devtools\n res[key].vuex = true;\n });\n return res\n});\n\nvar mapActions = normalizeNamespace(function (namespace, actions) {\n var res = {};\n normalizeMap(actions).forEach(function (ref) {\n var key = ref.key;\n var val = ref.val;\n\n res[key] = function mappedAction () {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n var dispatch = this.$store.dispatch;\n if (namespace) {\n var module = getModuleByNamespace(this.$store, 'mapActions', namespace);\n if (!module) {\n return\n }\n dispatch = module.context.dispatch;\n }\n return typeof val === 'function'\n ? val.apply(this, [dispatch].concat(args))\n : dispatch.apply(this.$store, [val].concat(args))\n };\n });\n return res\n});\n\nvar createNamespacedHelpers = function (namespace) { return ({\n mapState: mapState.bind(null, namespace),\n mapGetters: mapGetters.bind(null, namespace),\n mapMutations: mapMutations.bind(null, namespace),\n mapActions: mapActions.bind(null, namespace)\n}); };\n\nfunction normalizeMap (map) {\n return Array.isArray(map)\n ? map.map(function (key) { return ({ key: key, val: key }); })\n : Object.keys(map).map(function (key) { return ({ key: key, val: map[key] }); })\n}\n\nfunction normalizeNamespace (fn) {\n return function (namespace, map) {\n if (typeof namespace !== 'string') {\n map = namespace;\n namespace = '';\n } else if (namespace.charAt(namespace.length - 1) !== '/') {\n namespace += '/';\n }\n return fn(namespace, map)\n }\n}\n\nfunction getModuleByNamespace (store, helper, namespace) {\n var module = store._modulesNamespaceMap[namespace];\n if (process.env.NODE_ENV !== 'production' && !module) {\n console.error((\"[vuex] module namespace not found in \" + helper + \"(): \" + namespace));\n }\n return module\n}\n\nvar index_esm = {\n Store: Store,\n install: install,\n version: '3.0.1',\n mapState: mapState,\n mapMutations: mapMutations,\n mapGetters: mapGetters,\n mapActions: mapActions,\n createNamespacedHelpers: createNamespacedHelpers\n};\n\nexport { Store, install, mapState, mapMutations, mapGetters, mapActions, createNamespacedHelpers };\nexport default index_esm;\n","/*\n\tMIT License http://www.opensource.org/licenses/mit-license.php\n\tAuthor Tobias Koppers @sokra\n*/\n// css base code, injected by the css-loader\nmodule.exports = function(useSourceMap) {\n\tvar list = [];\n\n\t// return the list of modules as css string\n\tlist.toString = function toString() {\n\t\treturn this.map(function (item) {\n\t\t\tvar content = cssWithMappingToString(item, useSourceMap);\n\t\t\tif(item[2]) {\n\t\t\t\treturn \"@media \" + item[2] + \"{\" + content + \"}\";\n\t\t\t} else {\n\t\t\t\treturn content;\n\t\t\t}\n\t\t}).join(\"\");\n\t};\n\n\t// import a list of modules into the list\n\tlist.i = function(modules, mediaQuery) {\n\t\tif(typeof modules === \"string\")\n\t\t\tmodules = [[null, modules, \"\"]];\n\t\tvar alreadyImportedModules = {};\n\t\tfor(var i = 0; i < this.length; i++) {\n\t\t\tvar id = this[i][0];\n\t\t\tif(typeof id === \"number\")\n\t\t\t\talreadyImportedModules[id] = true;\n\t\t}\n\t\tfor(i = 0; i < modules.length; i++) {\n\t\t\tvar item = modules[i];\n\t\t\t// skip already imported module\n\t\t\t// this implementation is not 100% perfect for weird media query combinations\n\t\t\t// when a module is imported multiple times with different media queries.\n\t\t\t// I hope this will never occur (Hey this way we have smaller bundles)\n\t\t\tif(typeof item[0] !== \"number\" || !alreadyImportedModules[item[0]]) {\n\t\t\t\tif(mediaQuery && !item[2]) {\n\t\t\t\t\titem[2] = mediaQuery;\n\t\t\t\t} else if(mediaQuery) {\n\t\t\t\t\titem[2] = \"(\" + item[2] + \") and (\" + mediaQuery + \")\";\n\t\t\t\t}\n\t\t\t\tlist.push(item);\n\t\t\t}\n\t\t}\n\t};\n\treturn list;\n};\n\nfunction cssWithMappingToString(item, useSourceMap) {\n\tvar content = item[1] || '';\n\tvar cssMapping = item[3];\n\tif (!cssMapping) {\n\t\treturn content;\n\t}\n\n\tif (useSourceMap && typeof btoa === 'function') {\n\t\tvar sourceMapping = toComment(cssMapping);\n\t\tvar sourceURLs = cssMapping.sources.map(function (source) {\n\t\t\treturn '/*# sourceURL=' + cssMapping.sourceRoot + source + ' */'\n\t\t});\n\n\t\treturn [content].concat(sourceURLs).concat([sourceMapping]).join('\\n');\n\t}\n\n\treturn [content].join('\\n');\n}\n\n// Adapted from convert-source-map (MIT)\nfunction toComment(sourceMap) {\n\t// eslint-disable-next-line no-undef\n\tvar base64 = btoa(unescape(encodeURIComponent(JSON.stringify(sourceMap))));\n\tvar data = 'sourceMappingURL=data:application/json;charset=utf-8;base64,' + base64;\n\n\treturn '/*# ' + data + ' */';\n}\n","/**\n * Translates the list format produced by css-loader into something\n * easier to manipulate.\n */\nexport default function listToStyles (parentId, list) {\n var styles = []\n var newStyles = {}\n for (var i = 0; i < list.length; i++) {\n var item = list[i]\n var id = item[0]\n var css = item[1]\n var media = item[2]\n var sourceMap = item[3]\n var part = {\n id: parentId + ':' + i,\n css: css,\n media: media,\n sourceMap: sourceMap\n }\n if (!newStyles[id]) {\n styles.push(newStyles[id] = { id: id, parts: [part] })\n } else {\n newStyles[id].parts.push(part)\n }\n }\n return styles\n}\n","/*\n MIT License http://www.opensource.org/licenses/mit-license.php\n Author Tobias Koppers @sokra\n Modified by Evan You @yyx990803\n*/\n\nimport listToStyles from './listToStyles'\n\nvar hasDocument = typeof document !== 'undefined'\n\nif (typeof DEBUG !== 'undefined' && DEBUG) {\n if (!hasDocument) {\n throw new Error(\n 'vue-style-loader cannot be used in a non-browser environment. ' +\n \"Use { target: 'node' } in your Webpack config to indicate a server-rendering environment.\"\n ) }\n}\n\n/*\ntype StyleObject = {\n id: number;\n parts: Array\n}\n\ntype StyleObjectPart = {\n css: string;\n media: string;\n sourceMap: ?string\n}\n*/\n\nvar stylesInDom = {/*\n [id: number]: {\n id: number,\n refs: number,\n parts: Array<(obj?: StyleObjectPart) => void>\n }\n*/}\n\nvar head = hasDocument && (document.head || document.getElementsByTagName('head')[0])\nvar singletonElement = null\nvar singletonCounter = 0\nvar isProduction = false\nvar noop = function () {}\nvar options = null\nvar ssrIdKey = 'data-vue-ssr-id'\n\n// Force single-tag solution on IE6-9, which has a hard limit on the # of \n","import mod from \"-!../../node_modules/babel-loader/lib/index.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./app-link.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/babel-loader/lib/index.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./app-link.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./app-link.vue?vue&type=template&id=02dcacd2&\"\nimport script from \"./app-link.vue?vue&type=script&lang=js&\"\nexport * from \"./app-link.vue?vue&type=script&lang=js&\"\nimport style0 from \"./app-link.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\ncomponent.options.__file = \"app-link.vue\"\nexport default component.exports","'use strict';\n\nvar bind = require('./helpers/bind');\nvar isBuffer = require('is-buffer');\n\n/*global toString:true*/\n\n// utils is a library of generic helper functions non-specific to axios\n\nvar toString = Object.prototype.toString;\n\n/**\n * Determine if a value is an Array\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is an Array, otherwise false\n */\nfunction isArray(val) {\n return toString.call(val) === '[object Array]';\n}\n\n/**\n * Determine if a value is an ArrayBuffer\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is an ArrayBuffer, otherwise false\n */\nfunction isArrayBuffer(val) {\n return toString.call(val) === '[object ArrayBuffer]';\n}\n\n/**\n * Determine if a value is a FormData\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is an FormData, otherwise false\n */\nfunction isFormData(val) {\n return (typeof FormData !== 'undefined') && (val instanceof FormData);\n}\n\n/**\n * Determine if a value is a view on an ArrayBuffer\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is a view on an ArrayBuffer, otherwise false\n */\nfunction isArrayBufferView(val) {\n var result;\n if ((typeof ArrayBuffer !== 'undefined') && (ArrayBuffer.isView)) {\n result = ArrayBuffer.isView(val);\n } else {\n result = (val) && (val.buffer) && (val.buffer instanceof ArrayBuffer);\n }\n return result;\n}\n\n/**\n * Determine if a value is a String\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is a String, otherwise false\n */\nfunction isString(val) {\n return typeof val === 'string';\n}\n\n/**\n * Determine if a value is a Number\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is a Number, otherwise false\n */\nfunction isNumber(val) {\n return typeof val === 'number';\n}\n\n/**\n * Determine if a value is undefined\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if the value is undefined, otherwise false\n */\nfunction isUndefined(val) {\n return typeof val === 'undefined';\n}\n\n/**\n * Determine if a value is an Object\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is an Object, otherwise false\n */\nfunction isObject(val) {\n return val !== null && typeof val === 'object';\n}\n\n/**\n * Determine if a value is a Date\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is a Date, otherwise false\n */\nfunction isDate(val) {\n return toString.call(val) === '[object Date]';\n}\n\n/**\n * Determine if a value is a File\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is a File, otherwise false\n */\nfunction isFile(val) {\n return toString.call(val) === '[object File]';\n}\n\n/**\n * Determine if a value is a Blob\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is a Blob, otherwise false\n */\nfunction isBlob(val) {\n return toString.call(val) === '[object Blob]';\n}\n\n/**\n * Determine if a value is a Function\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is a Function, otherwise false\n */\nfunction isFunction(val) {\n return toString.call(val) === '[object Function]';\n}\n\n/**\n * Determine if a value is a Stream\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is a Stream, otherwise false\n */\nfunction isStream(val) {\n return isObject(val) && isFunction(val.pipe);\n}\n\n/**\n * Determine if a value is a URLSearchParams object\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is a URLSearchParams object, otherwise false\n */\nfunction isURLSearchParams(val) {\n return typeof URLSearchParams !== 'undefined' && val instanceof URLSearchParams;\n}\n\n/**\n * Trim excess whitespace off the beginning and end of a string\n *\n * @param {String} str The String to trim\n * @returns {String} The String freed of excess whitespace\n */\nfunction trim(str) {\n return str.replace(/^\\s*/, '').replace(/\\s*$/, '');\n}\n\n/**\n * Determine if we're running in a standard browser environment\n *\n * This allows axios to run in a web worker, and react-native.\n * Both environments support XMLHttpRequest, but not fully standard globals.\n *\n * web workers:\n * typeof window -> undefined\n * typeof document -> undefined\n *\n * react-native:\n * navigator.product -> 'ReactNative'\n */\nfunction isStandardBrowserEnv() {\n if (typeof navigator !== 'undefined' && navigator.product === 'ReactNative') {\n return false;\n }\n return (\n typeof window !== 'undefined' &&\n typeof document !== 'undefined'\n );\n}\n\n/**\n * Iterate over an Array or an Object invoking a function for each item.\n *\n * If `obj` is an Array callback will be called passing\n * the value, index, and complete array for each item.\n *\n * If 'obj' is an Object callback will be called passing\n * the value, key, and complete object for each property.\n *\n * @param {Object|Array} obj The object to iterate\n * @param {Function} fn The callback to invoke for each item\n */\nfunction forEach(obj, fn) {\n // Don't bother if no value provided\n if (obj === null || typeof obj === 'undefined') {\n return;\n }\n\n // Force an array if not already something iterable\n if (typeof obj !== 'object') {\n /*eslint no-param-reassign:0*/\n obj = [obj];\n }\n\n if (isArray(obj)) {\n // Iterate over array values\n for (var i = 0, l = obj.length; i < l; i++) {\n fn.call(null, obj[i], i, obj);\n }\n } else {\n // Iterate over object keys\n for (var key in obj) {\n if (Object.prototype.hasOwnProperty.call(obj, key)) {\n fn.call(null, obj[key], key, obj);\n }\n }\n }\n}\n\n/**\n * Accepts varargs expecting each argument to be an object, then\n * immutably merges the properties of each object and returns result.\n *\n * When multiple objects contain the same key the later object in\n * the arguments list will take precedence.\n *\n * Example:\n *\n * ```js\n * var result = merge({foo: 123}, {foo: 456});\n * console.log(result.foo); // outputs 456\n * ```\n *\n * @param {Object} obj1 Object to merge\n * @returns {Object} Result of all merge properties\n */\nfunction merge(/* obj1, obj2, obj3, ... */) {\n var result = {};\n function assignValue(val, key) {\n if (typeof result[key] === 'object' && typeof val === 'object') {\n result[key] = merge(result[key], val);\n } else {\n result[key] = val;\n }\n }\n\n for (var i = 0, l = arguments.length; i < l; i++) {\n forEach(arguments[i], assignValue);\n }\n return result;\n}\n\n/**\n * Extends object a by mutably adding to it the properties of object b.\n *\n * @param {Object} a The object to be extended\n * @param {Object} b The object to copy properties from\n * @param {Object} thisArg The object to bind function to\n * @return {Object} The resulting value of object a\n */\nfunction extend(a, b, thisArg) {\n forEach(b, function assignValue(val, key) {\n if (thisArg && typeof val === 'function') {\n a[key] = bind(val, thisArg);\n } else {\n a[key] = val;\n }\n });\n return a;\n}\n\nmodule.exports = {\n isArray: isArray,\n isArrayBuffer: isArrayBuffer,\n isBuffer: isBuffer,\n isFormData: isFormData,\n isArrayBufferView: isArrayBufferView,\n isString: isString,\n isNumber: isNumber,\n isObject: isObject,\n isUndefined: isUndefined,\n isDate: isDate,\n isFile: isFile,\n isBlob: isBlob,\n isFunction: isFunction,\n isStream: isStream,\n isURLSearchParams: isURLSearchParams,\n isStandardBrowserEnv: isStandardBrowserEnv,\n forEach: forEach,\n merge: merge,\n extend: extend,\n trim: trim\n};\n","/**\n * vue-router v3.0.1\n * (c) 2017 Evan You\n * @license MIT\n */\n/* */\n\nfunction assert (condition, message) {\n if (!condition) {\n throw new Error((\"[vue-router] \" + message))\n }\n}\n\nfunction warn (condition, message) {\n if (process.env.NODE_ENV !== 'production' && !condition) {\n typeof console !== 'undefined' && console.warn((\"[vue-router] \" + message));\n }\n}\n\nfunction isError (err) {\n return Object.prototype.toString.call(err).indexOf('Error') > -1\n}\n\nvar View = {\n name: 'router-view',\n functional: true,\n props: {\n name: {\n type: String,\n default: 'default'\n }\n },\n render: function render (_, ref) {\n var props = ref.props;\n var children = ref.children;\n var parent = ref.parent;\n var data = ref.data;\n\n data.routerView = true;\n\n // directly use parent context's createElement() function\n // so that components rendered by router-view can resolve named slots\n var h = parent.$createElement;\n var name = props.name;\n var route = parent.$route;\n var cache = parent._routerViewCache || (parent._routerViewCache = {});\n\n // determine current view depth, also check to see if the tree\n // has been toggled inactive but kept-alive.\n var depth = 0;\n var inactive = false;\n while (parent && parent._routerRoot !== parent) {\n if (parent.$vnode && parent.$vnode.data.routerView) {\n depth++;\n }\n if (parent._inactive) {\n inactive = true;\n }\n parent = parent.$parent;\n }\n data.routerViewDepth = depth;\n\n // render previous view if the tree is inactive and kept-alive\n if (inactive) {\n return h(cache[name], data, children)\n }\n\n var matched = route.matched[depth];\n // render empty node if no matched route\n if (!matched) {\n cache[name] = null;\n return h()\n }\n\n var component = cache[name] = matched.components[name];\n\n // attach instance registration hook\n // this will be called in the instance's injected lifecycle hooks\n data.registerRouteInstance = function (vm, val) {\n // val could be undefined for unregistration\n var current = matched.instances[name];\n if (\n (val && current !== vm) ||\n (!val && current === vm)\n ) {\n matched.instances[name] = val;\n }\n }\n\n // also register instance in prepatch hook\n // in case the same component instance is reused across different routes\n ;(data.hook || (data.hook = {})).prepatch = function (_, vnode) {\n matched.instances[name] = vnode.componentInstance;\n };\n\n // resolve props\n var propsToPass = data.props = resolveProps(route, matched.props && matched.props[name]);\n if (propsToPass) {\n // clone to prevent mutation\n propsToPass = data.props = extend({}, propsToPass);\n // pass non-declared props as attrs\n var attrs = data.attrs = data.attrs || {};\n for (var key in propsToPass) {\n if (!component.props || !(key in component.props)) {\n attrs[key] = propsToPass[key];\n delete propsToPass[key];\n }\n }\n }\n\n return h(component, data, children)\n }\n};\n\nfunction resolveProps (route, config) {\n switch (typeof config) {\n case 'undefined':\n return\n case 'object':\n return config\n case 'function':\n return config(route)\n case 'boolean':\n return config ? route.params : undefined\n default:\n if (process.env.NODE_ENV !== 'production') {\n warn(\n false,\n \"props in \\\"\" + (route.path) + \"\\\" is a \" + (typeof config) + \", \" +\n \"expecting an object, function or boolean.\"\n );\n }\n }\n}\n\nfunction extend (to, from) {\n for (var key in from) {\n to[key] = from[key];\n }\n return to\n}\n\n/* */\n\nvar encodeReserveRE = /[!'()*]/g;\nvar encodeReserveReplacer = function (c) { return '%' + c.charCodeAt(0).toString(16); };\nvar commaRE = /%2C/g;\n\n// fixed encodeURIComponent which is more conformant to RFC3986:\n// - escapes [!'()*]\n// - preserve commas\nvar encode = function (str) { return encodeURIComponent(str)\n .replace(encodeReserveRE, encodeReserveReplacer)\n .replace(commaRE, ','); };\n\nvar decode = decodeURIComponent;\n\nfunction resolveQuery (\n query,\n extraQuery,\n _parseQuery\n) {\n if ( extraQuery === void 0 ) extraQuery = {};\n\n var parse = _parseQuery || parseQuery;\n var parsedQuery;\n try {\n parsedQuery = parse(query || '');\n } catch (e) {\n process.env.NODE_ENV !== 'production' && warn(false, e.message);\n parsedQuery = {};\n }\n for (var key in extraQuery) {\n parsedQuery[key] = extraQuery[key];\n }\n return parsedQuery\n}\n\nfunction parseQuery (query) {\n var res = {};\n\n query = query.trim().replace(/^(\\?|#|&)/, '');\n\n if (!query) {\n return res\n }\n\n query.split('&').forEach(function (param) {\n var parts = param.replace(/\\+/g, ' ').split('=');\n var key = decode(parts.shift());\n var val = parts.length > 0\n ? decode(parts.join('='))\n : null;\n\n if (res[key] === undefined) {\n res[key] = val;\n } else if (Array.isArray(res[key])) {\n res[key].push(val);\n } else {\n res[key] = [res[key], val];\n }\n });\n\n return res\n}\n\nfunction stringifyQuery (obj) {\n var res = obj ? Object.keys(obj).map(function (key) {\n var val = obj[key];\n\n if (val === undefined) {\n return ''\n }\n\n if (val === null) {\n return encode(key)\n }\n\n if (Array.isArray(val)) {\n var result = [];\n val.forEach(function (val2) {\n if (val2 === undefined) {\n return\n }\n if (val2 === null) {\n result.push(encode(key));\n } else {\n result.push(encode(key) + '=' + encode(val2));\n }\n });\n return result.join('&')\n }\n\n return encode(key) + '=' + encode(val)\n }).filter(function (x) { return x.length > 0; }).join('&') : null;\n return res ? (\"?\" + res) : ''\n}\n\n/* */\n\n\nvar trailingSlashRE = /\\/?$/;\n\nfunction createRoute (\n record,\n location,\n redirectedFrom,\n router\n) {\n var stringifyQuery$$1 = router && router.options.stringifyQuery;\n\n var query = location.query || {};\n try {\n query = clone(query);\n } catch (e) {}\n\n var route = {\n name: location.name || (record && record.name),\n meta: (record && record.meta) || {},\n path: location.path || '/',\n hash: location.hash || '',\n query: query,\n params: location.params || {},\n fullPath: getFullPath(location, stringifyQuery$$1),\n matched: record ? formatMatch(record) : []\n };\n if (redirectedFrom) {\n route.redirectedFrom = getFullPath(redirectedFrom, stringifyQuery$$1);\n }\n return Object.freeze(route)\n}\n\nfunction clone (value) {\n if (Array.isArray(value)) {\n return value.map(clone)\n } else if (value && typeof value === 'object') {\n var res = {};\n for (var key in value) {\n res[key] = clone(value[key]);\n }\n return res\n } else {\n return value\n }\n}\n\n// the starting route that represents the initial state\nvar START = createRoute(null, {\n path: '/'\n});\n\nfunction formatMatch (record) {\n var res = [];\n while (record) {\n res.unshift(record);\n record = record.parent;\n }\n return res\n}\n\nfunction getFullPath (\n ref,\n _stringifyQuery\n) {\n var path = ref.path;\n var query = ref.query; if ( query === void 0 ) query = {};\n var hash = ref.hash; if ( hash === void 0 ) hash = '';\n\n var stringify = _stringifyQuery || stringifyQuery;\n return (path || '/') + stringify(query) + hash\n}\n\nfunction isSameRoute (a, b) {\n if (b === START) {\n return a === b\n } else if (!b) {\n return false\n } else if (a.path && b.path) {\n return (\n a.path.replace(trailingSlashRE, '') === b.path.replace(trailingSlashRE, '') &&\n a.hash === b.hash &&\n isObjectEqual(a.query, b.query)\n )\n } else if (a.name && b.name) {\n return (\n a.name === b.name &&\n a.hash === b.hash &&\n isObjectEqual(a.query, b.query) &&\n isObjectEqual(a.params, b.params)\n )\n } else {\n return false\n }\n}\n\nfunction isObjectEqual (a, b) {\n if ( a === void 0 ) a = {};\n if ( b === void 0 ) b = {};\n\n // handle null value #1566\n if (!a || !b) { return a === b }\n var aKeys = Object.keys(a);\n var bKeys = Object.keys(b);\n if (aKeys.length !== bKeys.length) {\n return false\n }\n return aKeys.every(function (key) {\n var aVal = a[key];\n var bVal = b[key];\n // check nested equality\n if (typeof aVal === 'object' && typeof bVal === 'object') {\n return isObjectEqual(aVal, bVal)\n }\n return String(aVal) === String(bVal)\n })\n}\n\nfunction isIncludedRoute (current, target) {\n return (\n current.path.replace(trailingSlashRE, '/').indexOf(\n target.path.replace(trailingSlashRE, '/')\n ) === 0 &&\n (!target.hash || current.hash === target.hash) &&\n queryIncludes(current.query, target.query)\n )\n}\n\nfunction queryIncludes (current, target) {\n for (var key in target) {\n if (!(key in current)) {\n return false\n }\n }\n return true\n}\n\n/* */\n\n// work around weird flow bug\nvar toTypes = [String, Object];\nvar eventTypes = [String, Array];\n\nvar Link = {\n name: 'router-link',\n props: {\n to: {\n type: toTypes,\n required: true\n },\n tag: {\n type: String,\n default: 'a'\n },\n exact: Boolean,\n append: Boolean,\n replace: Boolean,\n activeClass: String,\n exactActiveClass: String,\n event: {\n type: eventTypes,\n default: 'click'\n }\n },\n render: function render (h) {\n var this$1 = this;\n\n var router = this.$router;\n var current = this.$route;\n var ref = router.resolve(this.to, current, this.append);\n var location = ref.location;\n var route = ref.route;\n var href = ref.href;\n\n var classes = {};\n var globalActiveClass = router.options.linkActiveClass;\n var globalExactActiveClass = router.options.linkExactActiveClass;\n // Support global empty active class\n var activeClassFallback = globalActiveClass == null\n ? 'router-link-active'\n : globalActiveClass;\n var exactActiveClassFallback = globalExactActiveClass == null\n ? 'router-link-exact-active'\n : globalExactActiveClass;\n var activeClass = this.activeClass == null\n ? activeClassFallback\n : this.activeClass;\n var exactActiveClass = this.exactActiveClass == null\n ? exactActiveClassFallback\n : this.exactActiveClass;\n var compareTarget = location.path\n ? createRoute(null, location, null, router)\n : route;\n\n classes[exactActiveClass] = isSameRoute(current, compareTarget);\n classes[activeClass] = this.exact\n ? classes[exactActiveClass]\n : isIncludedRoute(current, compareTarget);\n\n var handler = function (e) {\n if (guardEvent(e)) {\n if (this$1.replace) {\n router.replace(location);\n } else {\n router.push(location);\n }\n }\n };\n\n var on = { click: guardEvent };\n if (Array.isArray(this.event)) {\n this.event.forEach(function (e) { on[e] = handler; });\n } else {\n on[this.event] = handler;\n }\n\n var data = {\n class: classes\n };\n\n if (this.tag === 'a') {\n data.on = on;\n data.attrs = { href: href };\n } else {\n // find the first child and apply listener and href\n var a = findAnchor(this.$slots.default);\n if (a) {\n // in case the is a static node\n a.isStatic = false;\n var extend = _Vue.util.extend;\n var aData = a.data = extend({}, a.data);\n aData.on = on;\n var aAttrs = a.data.attrs = extend({}, a.data.attrs);\n aAttrs.href = href;\n } else {\n // doesn't have child, apply listener to self\n data.on = on;\n }\n }\n\n return h(this.tag, data, this.$slots.default)\n }\n};\n\nfunction guardEvent (e) {\n // don't redirect with control keys\n if (e.metaKey || e.altKey || e.ctrlKey || e.shiftKey) { return }\n // don't redirect when preventDefault called\n if (e.defaultPrevented) { return }\n // don't redirect on right click\n if (e.button !== undefined && e.button !== 0) { return }\n // don't redirect if `target=\"_blank\"`\n if (e.currentTarget && e.currentTarget.getAttribute) {\n var target = e.currentTarget.getAttribute('target');\n if (/\\b_blank\\b/i.test(target)) { return }\n }\n // this may be a Weex event which doesn't have this method\n if (e.preventDefault) {\n e.preventDefault();\n }\n return true\n}\n\nfunction findAnchor (children) {\n if (children) {\n var child;\n for (var i = 0; i < children.length; i++) {\n child = children[i];\n if (child.tag === 'a') {\n return child\n }\n if (child.children && (child = findAnchor(child.children))) {\n return child\n }\n }\n }\n}\n\nvar _Vue;\n\nfunction install (Vue) {\n if (install.installed && _Vue === Vue) { return }\n install.installed = true;\n\n _Vue = Vue;\n\n var isDef = function (v) { return v !== undefined; };\n\n var registerInstance = function (vm, callVal) {\n var i = vm.$options._parentVnode;\n if (isDef(i) && isDef(i = i.data) && isDef(i = i.registerRouteInstance)) {\n i(vm, callVal);\n }\n };\n\n Vue.mixin({\n beforeCreate: function beforeCreate () {\n if (isDef(this.$options.router)) {\n this._routerRoot = this;\n this._router = this.$options.router;\n this._router.init(this);\n Vue.util.defineReactive(this, '_route', this._router.history.current);\n } else {\n this._routerRoot = (this.$parent && this.$parent._routerRoot) || this;\n }\n registerInstance(this, this);\n },\n destroyed: function destroyed () {\n registerInstance(this);\n }\n });\n\n Object.defineProperty(Vue.prototype, '$router', {\n get: function get () { return this._routerRoot._router }\n });\n\n Object.defineProperty(Vue.prototype, '$route', {\n get: function get () { return this._routerRoot._route }\n });\n\n Vue.component('router-view', View);\n Vue.component('router-link', Link);\n\n var strats = Vue.config.optionMergeStrategies;\n // use the same hook merging strategy for route hooks\n strats.beforeRouteEnter = strats.beforeRouteLeave = strats.beforeRouteUpdate = strats.created;\n}\n\n/* */\n\nvar inBrowser = typeof window !== 'undefined';\n\n/* */\n\nfunction resolvePath (\n relative,\n base,\n append\n) {\n var firstChar = relative.charAt(0);\n if (firstChar === '/') {\n return relative\n }\n\n if (firstChar === '?' || firstChar === '#') {\n return base + relative\n }\n\n var stack = base.split('/');\n\n // remove trailing segment if:\n // - not appending\n // - appending to trailing slash (last segment is empty)\n if (!append || !stack[stack.length - 1]) {\n stack.pop();\n }\n\n // resolve relative path\n var segments = relative.replace(/^\\//, '').split('/');\n for (var i = 0; i < segments.length; i++) {\n var segment = segments[i];\n if (segment === '..') {\n stack.pop();\n } else if (segment !== '.') {\n stack.push(segment);\n }\n }\n\n // ensure leading slash\n if (stack[0] !== '') {\n stack.unshift('');\n }\n\n return stack.join('/')\n}\n\nfunction parsePath (path) {\n var hash = '';\n var query = '';\n\n var hashIndex = path.indexOf('#');\n if (hashIndex >= 0) {\n hash = path.slice(hashIndex);\n path = path.slice(0, hashIndex);\n }\n\n var queryIndex = path.indexOf('?');\n if (queryIndex >= 0) {\n query = path.slice(queryIndex + 1);\n path = path.slice(0, queryIndex);\n }\n\n return {\n path: path,\n query: query,\n hash: hash\n }\n}\n\nfunction cleanPath (path) {\n return path.replace(/\\/\\//g, '/')\n}\n\nvar isarray = Array.isArray || function (arr) {\n return Object.prototype.toString.call(arr) == '[object Array]';\n};\n\n/**\n * Expose `pathToRegexp`.\n */\nvar pathToRegexp_1 = pathToRegexp;\nvar parse_1 = parse;\nvar compile_1 = compile;\nvar tokensToFunction_1 = tokensToFunction;\nvar tokensToRegExp_1 = tokensToRegExp;\n\n/**\n * The main path matching regexp utility.\n *\n * @type {RegExp}\n */\nvar PATH_REGEXP = new RegExp([\n // Match escaped characters that would otherwise appear in future matches.\n // This allows the user to escape special characters that won't transform.\n '(\\\\\\\\.)',\n // Match Express-style parameters and un-named parameters with a prefix\n // and optional suffixes. Matches appear as:\n //\n // \"/:test(\\\\d+)?\" => [\"/\", \"test\", \"\\d+\", undefined, \"?\", undefined]\n // \"/route(\\\\d+)\" => [undefined, undefined, undefined, \"\\d+\", undefined, undefined]\n // \"/*\" => [\"/\", undefined, undefined, undefined, undefined, \"*\"]\n '([\\\\/.])?(?:(?:\\\\:(\\\\w+)(?:\\\\(((?:\\\\\\\\.|[^\\\\\\\\()])+)\\\\))?|\\\\(((?:\\\\\\\\.|[^\\\\\\\\()])+)\\\\))([+*?])?|(\\\\*))'\n].join('|'), 'g');\n\n/**\n * Parse a string for the raw tokens.\n *\n * @param {string} str\n * @param {Object=} options\n * @return {!Array}\n */\nfunction parse (str, options) {\n var tokens = [];\n var key = 0;\n var index = 0;\n var path = '';\n var defaultDelimiter = options && options.delimiter || '/';\n var res;\n\n while ((res = PATH_REGEXP.exec(str)) != null) {\n var m = res[0];\n var escaped = res[1];\n var offset = res.index;\n path += str.slice(index, offset);\n index = offset + m.length;\n\n // Ignore already escaped sequences.\n if (escaped) {\n path += escaped[1];\n continue\n }\n\n var next = str[index];\n var prefix = res[2];\n var name = res[3];\n var capture = res[4];\n var group = res[5];\n var modifier = res[6];\n var asterisk = res[7];\n\n // Push the current path onto the tokens.\n if (path) {\n tokens.push(path);\n path = '';\n }\n\n var partial = prefix != null && next != null && next !== prefix;\n var repeat = modifier === '+' || modifier === '*';\n var optional = modifier === '?' || modifier === '*';\n var delimiter = res[2] || defaultDelimiter;\n var pattern = capture || group;\n\n tokens.push({\n name: name || key++,\n prefix: prefix || '',\n delimiter: delimiter,\n optional: optional,\n repeat: repeat,\n partial: partial,\n asterisk: !!asterisk,\n pattern: pattern ? escapeGroup(pattern) : (asterisk ? '.*' : '[^' + escapeString(delimiter) + ']+?')\n });\n }\n\n // Match any characters still remaining.\n if (index < str.length) {\n path += str.substr(index);\n }\n\n // If the path exists, push it onto the end.\n if (path) {\n tokens.push(path);\n }\n\n return tokens\n}\n\n/**\n * Compile a string to a template function for the path.\n *\n * @param {string} str\n * @param {Object=} options\n * @return {!function(Object=, Object=)}\n */\nfunction compile (str, options) {\n return tokensToFunction(parse(str, options))\n}\n\n/**\n * Prettier encoding of URI path segments.\n *\n * @param {string}\n * @return {string}\n */\nfunction encodeURIComponentPretty (str) {\n return encodeURI(str).replace(/[\\/?#]/g, function (c) {\n return '%' + c.charCodeAt(0).toString(16).toUpperCase()\n })\n}\n\n/**\n * Encode the asterisk parameter. Similar to `pretty`, but allows slashes.\n *\n * @param {string}\n * @return {string}\n */\nfunction encodeAsterisk (str) {\n return encodeURI(str).replace(/[?#]/g, function (c) {\n return '%' + c.charCodeAt(0).toString(16).toUpperCase()\n })\n}\n\n/**\n * Expose a method for transforming tokens into the path function.\n */\nfunction tokensToFunction (tokens) {\n // Compile all the tokens into regexps.\n var matches = new Array(tokens.length);\n\n // Compile all the patterns before compilation.\n for (var i = 0; i < tokens.length; i++) {\n if (typeof tokens[i] === 'object') {\n matches[i] = new RegExp('^(?:' + tokens[i].pattern + ')$');\n }\n }\n\n return function (obj, opts) {\n var path = '';\n var data = obj || {};\n var options = opts || {};\n var encode = options.pretty ? encodeURIComponentPretty : encodeURIComponent;\n\n for (var i = 0; i < tokens.length; i++) {\n var token = tokens[i];\n\n if (typeof token === 'string') {\n path += token;\n\n continue\n }\n\n var value = data[token.name];\n var segment;\n\n if (value == null) {\n if (token.optional) {\n // Prepend partial segment prefixes.\n if (token.partial) {\n path += token.prefix;\n }\n\n continue\n } else {\n throw new TypeError('Expected \"' + token.name + '\" to be defined')\n }\n }\n\n if (isarray(value)) {\n if (!token.repeat) {\n throw new TypeError('Expected \"' + token.name + '\" to not repeat, but received `' + JSON.stringify(value) + '`')\n }\n\n if (value.length === 0) {\n if (token.optional) {\n continue\n } else {\n throw new TypeError('Expected \"' + token.name + '\" to not be empty')\n }\n }\n\n for (var j = 0; j < value.length; j++) {\n segment = encode(value[j]);\n\n if (!matches[i].test(segment)) {\n throw new TypeError('Expected all \"' + token.name + '\" to match \"' + token.pattern + '\", but received `' + JSON.stringify(segment) + '`')\n }\n\n path += (j === 0 ? token.prefix : token.delimiter) + segment;\n }\n\n continue\n }\n\n segment = token.asterisk ? encodeAsterisk(value) : encode(value);\n\n if (!matches[i].test(segment)) {\n throw new TypeError('Expected \"' + token.name + '\" to match \"' + token.pattern + '\", but received \"' + segment + '\"')\n }\n\n path += token.prefix + segment;\n }\n\n return path\n }\n}\n\n/**\n * Escape a regular expression string.\n *\n * @param {string} str\n * @return {string}\n */\nfunction escapeString (str) {\n return str.replace(/([.+*?=^!:${}()[\\]|\\/\\\\])/g, '\\\\$1')\n}\n\n/**\n * Escape the capturing group by escaping special characters and meaning.\n *\n * @param {string} group\n * @return {string}\n */\nfunction escapeGroup (group) {\n return group.replace(/([=!:$\\/()])/g, '\\\\$1')\n}\n\n/**\n * Attach the keys as a property of the regexp.\n *\n * @param {!RegExp} re\n * @param {Array} keys\n * @return {!RegExp}\n */\nfunction attachKeys (re, keys) {\n re.keys = keys;\n return re\n}\n\n/**\n * Get the flags for a regexp from the options.\n *\n * @param {Object} options\n * @return {string}\n */\nfunction flags (options) {\n return options.sensitive ? '' : 'i'\n}\n\n/**\n * Pull out keys from a regexp.\n *\n * @param {!RegExp} path\n * @param {!Array} keys\n * @return {!RegExp}\n */\nfunction regexpToRegexp (path, keys) {\n // Use a negative lookahead to match only capturing groups.\n var groups = path.source.match(/\\((?!\\?)/g);\n\n if (groups) {\n for (var i = 0; i < groups.length; i++) {\n keys.push({\n name: i,\n prefix: null,\n delimiter: null,\n optional: false,\n repeat: false,\n partial: false,\n asterisk: false,\n pattern: null\n });\n }\n }\n\n return attachKeys(path, keys)\n}\n\n/**\n * Transform an array into a regexp.\n *\n * @param {!Array} path\n * @param {Array} keys\n * @param {!Object} options\n * @return {!RegExp}\n */\nfunction arrayToRegexp (path, keys, options) {\n var parts = [];\n\n for (var i = 0; i < path.length; i++) {\n parts.push(pathToRegexp(path[i], keys, options).source);\n }\n\n var regexp = new RegExp('(?:' + parts.join('|') + ')', flags(options));\n\n return attachKeys(regexp, keys)\n}\n\n/**\n * Create a path regexp from string input.\n *\n * @param {string} path\n * @param {!Array} keys\n * @param {!Object} options\n * @return {!RegExp}\n */\nfunction stringToRegexp (path, keys, options) {\n return tokensToRegExp(parse(path, options), keys, options)\n}\n\n/**\n * Expose a function for taking tokens and returning a RegExp.\n *\n * @param {!Array} tokens\n * @param {(Array|Object)=} keys\n * @param {Object=} options\n * @return {!RegExp}\n */\nfunction tokensToRegExp (tokens, keys, options) {\n if (!isarray(keys)) {\n options = /** @type {!Object} */ (keys || options);\n keys = [];\n }\n\n options = options || {};\n\n var strict = options.strict;\n var end = options.end !== false;\n var route = '';\n\n // Iterate over the tokens and create our regexp string.\n for (var i = 0; i < tokens.length; i++) {\n var token = tokens[i];\n\n if (typeof token === 'string') {\n route += escapeString(token);\n } else {\n var prefix = escapeString(token.prefix);\n var capture = '(?:' + token.pattern + ')';\n\n keys.push(token);\n\n if (token.repeat) {\n capture += '(?:' + prefix + capture + ')*';\n }\n\n if (token.optional) {\n if (!token.partial) {\n capture = '(?:' + prefix + '(' + capture + '))?';\n } else {\n capture = prefix + '(' + capture + ')?';\n }\n } else {\n capture = prefix + '(' + capture + ')';\n }\n\n route += capture;\n }\n }\n\n var delimiter = escapeString(options.delimiter || '/');\n var endsWithDelimiter = route.slice(-delimiter.length) === delimiter;\n\n // In non-strict mode we allow a slash at the end of match. If the path to\n // match already ends with a slash, we remove it for consistency. The slash\n // is valid at the end of a path match, not in the middle. This is important\n // in non-ending mode, where \"/test/\" shouldn't match \"/test//route\".\n if (!strict) {\n route = (endsWithDelimiter ? route.slice(0, -delimiter.length) : route) + '(?:' + delimiter + '(?=$))?';\n }\n\n if (end) {\n route += '$';\n } else {\n // In non-ending mode, we need the capturing groups to match as much as\n // possible by using a positive lookahead to the end or next path segment.\n route += strict && endsWithDelimiter ? '' : '(?=' + delimiter + '|$)';\n }\n\n return attachKeys(new RegExp('^' + route, flags(options)), keys)\n}\n\n/**\n * Normalize the given path string, returning a regular expression.\n *\n * An empty array can be passed in for the keys, which will hold the\n * placeholder key descriptions. For example, using `/user/:id`, `keys` will\n * contain `[{ name: 'id', delimiter: '/', optional: false, repeat: false }]`.\n *\n * @param {(string|RegExp|Array)} path\n * @param {(Array|Object)=} keys\n * @param {Object=} options\n * @return {!RegExp}\n */\nfunction pathToRegexp (path, keys, options) {\n if (!isarray(keys)) {\n options = /** @type {!Object} */ (keys || options);\n keys = [];\n }\n\n options = options || {};\n\n if (path instanceof RegExp) {\n return regexpToRegexp(path, /** @type {!Array} */ (keys))\n }\n\n if (isarray(path)) {\n return arrayToRegexp(/** @type {!Array} */ (path), /** @type {!Array} */ (keys), options)\n }\n\n return stringToRegexp(/** @type {string} */ (path), /** @type {!Array} */ (keys), options)\n}\n\npathToRegexp_1.parse = parse_1;\npathToRegexp_1.compile = compile_1;\npathToRegexp_1.tokensToFunction = tokensToFunction_1;\npathToRegexp_1.tokensToRegExp = tokensToRegExp_1;\n\n/* */\n\n// $flow-disable-line\nvar regexpCompileCache = Object.create(null);\n\nfunction fillParams (\n path,\n params,\n routeMsg\n) {\n try {\n var filler =\n regexpCompileCache[path] ||\n (regexpCompileCache[path] = pathToRegexp_1.compile(path));\n return filler(params || {}, { pretty: true })\n } catch (e) {\n if (process.env.NODE_ENV !== 'production') {\n warn(false, (\"missing param for \" + routeMsg + \": \" + (e.message)));\n }\n return ''\n }\n}\n\n/* */\n\nfunction createRouteMap (\n routes,\n oldPathList,\n oldPathMap,\n oldNameMap\n) {\n // the path list is used to control path matching priority\n var pathList = oldPathList || [];\n // $flow-disable-line\n var pathMap = oldPathMap || Object.create(null);\n // $flow-disable-line\n var nameMap = oldNameMap || Object.create(null);\n\n routes.forEach(function (route) {\n addRouteRecord(pathList, pathMap, nameMap, route);\n });\n\n // ensure wildcard routes are always at the end\n for (var i = 0, l = pathList.length; i < l; i++) {\n if (pathList[i] === '*') {\n pathList.push(pathList.splice(i, 1)[0]);\n l--;\n i--;\n }\n }\n\n return {\n pathList: pathList,\n pathMap: pathMap,\n nameMap: nameMap\n }\n}\n\nfunction addRouteRecord (\n pathList,\n pathMap,\n nameMap,\n route,\n parent,\n matchAs\n) {\n var path = route.path;\n var name = route.name;\n if (process.env.NODE_ENV !== 'production') {\n assert(path != null, \"\\\"path\\\" is required in a route configuration.\");\n assert(\n typeof route.component !== 'string',\n \"route config \\\"component\\\" for path: \" + (String(path || name)) + \" cannot be a \" +\n \"string id. Use an actual component instead.\"\n );\n }\n\n var pathToRegexpOptions = route.pathToRegexpOptions || {};\n var normalizedPath = normalizePath(\n path,\n parent,\n pathToRegexpOptions.strict\n );\n\n if (typeof route.caseSensitive === 'boolean') {\n pathToRegexpOptions.sensitive = route.caseSensitive;\n }\n\n var record = {\n path: normalizedPath,\n regex: compileRouteRegex(normalizedPath, pathToRegexpOptions),\n components: route.components || { default: route.component },\n instances: {},\n name: name,\n parent: parent,\n matchAs: matchAs,\n redirect: route.redirect,\n beforeEnter: route.beforeEnter,\n meta: route.meta || {},\n props: route.props == null\n ? {}\n : route.components\n ? route.props\n : { default: route.props }\n };\n\n if (route.children) {\n // Warn if route is named, does not redirect and has a default child route.\n // If users navigate to this route by name, the default child will\n // not be rendered (GH Issue #629)\n if (process.env.NODE_ENV !== 'production') {\n if (route.name && !route.redirect && route.children.some(function (child) { return /^\\/?$/.test(child.path); })) {\n warn(\n false,\n \"Named Route '\" + (route.name) + \"' has a default child route. \" +\n \"When navigating to this named route (:to=\\\"{name: '\" + (route.name) + \"'\\\"), \" +\n \"the default child route will not be rendered. Remove the name from \" +\n \"this route and use the name of the default child route for named \" +\n \"links instead.\"\n );\n }\n }\n route.children.forEach(function (child) {\n var childMatchAs = matchAs\n ? cleanPath((matchAs + \"/\" + (child.path)))\n : undefined;\n addRouteRecord(pathList, pathMap, nameMap, child, record, childMatchAs);\n });\n }\n\n if (route.alias !== undefined) {\n var aliases = Array.isArray(route.alias)\n ? route.alias\n : [route.alias];\n\n aliases.forEach(function (alias) {\n var aliasRoute = {\n path: alias,\n children: route.children\n };\n addRouteRecord(\n pathList,\n pathMap,\n nameMap,\n aliasRoute,\n parent,\n record.path || '/' // matchAs\n );\n });\n }\n\n if (!pathMap[record.path]) {\n pathList.push(record.path);\n pathMap[record.path] = record;\n }\n\n if (name) {\n if (!nameMap[name]) {\n nameMap[name] = record;\n } else if (process.env.NODE_ENV !== 'production' && !matchAs) {\n warn(\n false,\n \"Duplicate named routes definition: \" +\n \"{ name: \\\"\" + name + \"\\\", path: \\\"\" + (record.path) + \"\\\" }\"\n );\n }\n }\n}\n\nfunction compileRouteRegex (path, pathToRegexpOptions) {\n var regex = pathToRegexp_1(path, [], pathToRegexpOptions);\n if (process.env.NODE_ENV !== 'production') {\n var keys = Object.create(null);\n regex.keys.forEach(function (key) {\n warn(!keys[key.name], (\"Duplicate param keys in route with path: \\\"\" + path + \"\\\"\"));\n keys[key.name] = true;\n });\n }\n return regex\n}\n\nfunction normalizePath (path, parent, strict) {\n if (!strict) { path = path.replace(/\\/$/, ''); }\n if (path[0] === '/') { return path }\n if (parent == null) { return path }\n return cleanPath(((parent.path) + \"/\" + path))\n}\n\n/* */\n\n\nfunction normalizeLocation (\n raw,\n current,\n append,\n router\n) {\n var next = typeof raw === 'string' ? { path: raw } : raw;\n // named target\n if (next.name || next._normalized) {\n return next\n }\n\n // relative params\n if (!next.path && next.params && current) {\n next = assign({}, next);\n next._normalized = true;\n var params = assign(assign({}, current.params), next.params);\n if (current.name) {\n next.name = current.name;\n next.params = params;\n } else if (current.matched.length) {\n var rawPath = current.matched[current.matched.length - 1].path;\n next.path = fillParams(rawPath, params, (\"path \" + (current.path)));\n } else if (process.env.NODE_ENV !== 'production') {\n warn(false, \"relative params navigation requires a current route.\");\n }\n return next\n }\n\n var parsedPath = parsePath(next.path || '');\n var basePath = (current && current.path) || '/';\n var path = parsedPath.path\n ? resolvePath(parsedPath.path, basePath, append || next.append)\n : basePath;\n\n var query = resolveQuery(\n parsedPath.query,\n next.query,\n router && router.options.parseQuery\n );\n\n var hash = next.hash || parsedPath.hash;\n if (hash && hash.charAt(0) !== '#') {\n hash = \"#\" + hash;\n }\n\n return {\n _normalized: true,\n path: path,\n query: query,\n hash: hash\n }\n}\n\nfunction assign (a, b) {\n for (var key in b) {\n a[key] = b[key];\n }\n return a\n}\n\n/* */\n\n\nfunction createMatcher (\n routes,\n router\n) {\n var ref = createRouteMap(routes);\n var pathList = ref.pathList;\n var pathMap = ref.pathMap;\n var nameMap = ref.nameMap;\n\n function addRoutes (routes) {\n createRouteMap(routes, pathList, pathMap, nameMap);\n }\n\n function match (\n raw,\n currentRoute,\n redirectedFrom\n ) {\n var location = normalizeLocation(raw, currentRoute, false, router);\n var name = location.name;\n\n if (name) {\n var record = nameMap[name];\n if (process.env.NODE_ENV !== 'production') {\n warn(record, (\"Route with name '\" + name + \"' does not exist\"));\n }\n if (!record) { return _createRoute(null, location) }\n var paramNames = record.regex.keys\n .filter(function (key) { return !key.optional; })\n .map(function (key) { return key.name; });\n\n if (typeof location.params !== 'object') {\n location.params = {};\n }\n\n if (currentRoute && typeof currentRoute.params === 'object') {\n for (var key in currentRoute.params) {\n if (!(key in location.params) && paramNames.indexOf(key) > -1) {\n location.params[key] = currentRoute.params[key];\n }\n }\n }\n\n if (record) {\n location.path = fillParams(record.path, location.params, (\"named route \\\"\" + name + \"\\\"\"));\n return _createRoute(record, location, redirectedFrom)\n }\n } else if (location.path) {\n location.params = {};\n for (var i = 0; i < pathList.length; i++) {\n var path = pathList[i];\n var record$1 = pathMap[path];\n if (matchRoute(record$1.regex, location.path, location.params)) {\n return _createRoute(record$1, location, redirectedFrom)\n }\n }\n }\n // no match\n return _createRoute(null, location)\n }\n\n function redirect (\n record,\n location\n ) {\n var originalRedirect = record.redirect;\n var redirect = typeof originalRedirect === 'function'\n ? originalRedirect(createRoute(record, location, null, router))\n : originalRedirect;\n\n if (typeof redirect === 'string') {\n redirect = { path: redirect };\n }\n\n if (!redirect || typeof redirect !== 'object') {\n if (process.env.NODE_ENV !== 'production') {\n warn(\n false, (\"invalid redirect option: \" + (JSON.stringify(redirect)))\n );\n }\n return _createRoute(null, location)\n }\n\n var re = redirect;\n var name = re.name;\n var path = re.path;\n var query = location.query;\n var hash = location.hash;\n var params = location.params;\n query = re.hasOwnProperty('query') ? re.query : query;\n hash = re.hasOwnProperty('hash') ? re.hash : hash;\n params = re.hasOwnProperty('params') ? re.params : params;\n\n if (name) {\n // resolved named direct\n var targetRecord = nameMap[name];\n if (process.env.NODE_ENV !== 'production') {\n assert(targetRecord, (\"redirect failed: named route \\\"\" + name + \"\\\" not found.\"));\n }\n return match({\n _normalized: true,\n name: name,\n query: query,\n hash: hash,\n params: params\n }, undefined, location)\n } else if (path) {\n // 1. resolve relative redirect\n var rawPath = resolveRecordPath(path, record);\n // 2. resolve params\n var resolvedPath = fillParams(rawPath, params, (\"redirect route with path \\\"\" + rawPath + \"\\\"\"));\n // 3. rematch with existing query and hash\n return match({\n _normalized: true,\n path: resolvedPath,\n query: query,\n hash: hash\n }, undefined, location)\n } else {\n if (process.env.NODE_ENV !== 'production') {\n warn(false, (\"invalid redirect option: \" + (JSON.stringify(redirect))));\n }\n return _createRoute(null, location)\n }\n }\n\n function alias (\n record,\n location,\n matchAs\n ) {\n var aliasedPath = fillParams(matchAs, location.params, (\"aliased route with path \\\"\" + matchAs + \"\\\"\"));\n var aliasedMatch = match({\n _normalized: true,\n path: aliasedPath\n });\n if (aliasedMatch) {\n var matched = aliasedMatch.matched;\n var aliasedRecord = matched[matched.length - 1];\n location.params = aliasedMatch.params;\n return _createRoute(aliasedRecord, location)\n }\n return _createRoute(null, location)\n }\n\n function _createRoute (\n record,\n location,\n redirectedFrom\n ) {\n if (record && record.redirect) {\n return redirect(record, redirectedFrom || location)\n }\n if (record && record.matchAs) {\n return alias(record, location, record.matchAs)\n }\n return createRoute(record, location, redirectedFrom, router)\n }\n\n return {\n match: match,\n addRoutes: addRoutes\n }\n}\n\nfunction matchRoute (\n regex,\n path,\n params\n) {\n var m = path.match(regex);\n\n if (!m) {\n return false\n } else if (!params) {\n return true\n }\n\n for (var i = 1, len = m.length; i < len; ++i) {\n var key = regex.keys[i - 1];\n var val = typeof m[i] === 'string' ? decodeURIComponent(m[i]) : m[i];\n if (key) {\n params[key.name] = val;\n }\n }\n\n return true\n}\n\nfunction resolveRecordPath (path, record) {\n return resolvePath(path, record.parent ? record.parent.path : '/', true)\n}\n\n/* */\n\n\nvar positionStore = Object.create(null);\n\nfunction setupScroll () {\n // Fix for #1585 for Firefox\n window.history.replaceState({ key: getStateKey() }, '');\n window.addEventListener('popstate', function (e) {\n saveScrollPosition();\n if (e.state && e.state.key) {\n setStateKey(e.state.key);\n }\n });\n}\n\nfunction handleScroll (\n router,\n to,\n from,\n isPop\n) {\n if (!router.app) {\n return\n }\n\n var behavior = router.options.scrollBehavior;\n if (!behavior) {\n return\n }\n\n if (process.env.NODE_ENV !== 'production') {\n assert(typeof behavior === 'function', \"scrollBehavior must be a function\");\n }\n\n // wait until re-render finishes before scrolling\n router.app.$nextTick(function () {\n var position = getScrollPosition();\n var shouldScroll = behavior(to, from, isPop ? position : null);\n\n if (!shouldScroll) {\n return\n }\n\n if (typeof shouldScroll.then === 'function') {\n shouldScroll.then(function (shouldScroll) {\n scrollToPosition((shouldScroll), position);\n }).catch(function (err) {\n if (process.env.NODE_ENV !== 'production') {\n assert(false, err.toString());\n }\n });\n } else {\n scrollToPosition(shouldScroll, position);\n }\n });\n}\n\nfunction saveScrollPosition () {\n var key = getStateKey();\n if (key) {\n positionStore[key] = {\n x: window.pageXOffset,\n y: window.pageYOffset\n };\n }\n}\n\nfunction getScrollPosition () {\n var key = getStateKey();\n if (key) {\n return positionStore[key]\n }\n}\n\nfunction getElementPosition (el, offset) {\n var docEl = document.documentElement;\n var docRect = docEl.getBoundingClientRect();\n var elRect = el.getBoundingClientRect();\n return {\n x: elRect.left - docRect.left - offset.x,\n y: elRect.top - docRect.top - offset.y\n }\n}\n\nfunction isValidPosition (obj) {\n return isNumber(obj.x) || isNumber(obj.y)\n}\n\nfunction normalizePosition (obj) {\n return {\n x: isNumber(obj.x) ? obj.x : window.pageXOffset,\n y: isNumber(obj.y) ? obj.y : window.pageYOffset\n }\n}\n\nfunction normalizeOffset (obj) {\n return {\n x: isNumber(obj.x) ? obj.x : 0,\n y: isNumber(obj.y) ? obj.y : 0\n }\n}\n\nfunction isNumber (v) {\n return typeof v === 'number'\n}\n\nfunction scrollToPosition (shouldScroll, position) {\n var isObject = typeof shouldScroll === 'object';\n if (isObject && typeof shouldScroll.selector === 'string') {\n var el = document.querySelector(shouldScroll.selector);\n if (el) {\n var offset = shouldScroll.offset && typeof shouldScroll.offset === 'object' ? shouldScroll.offset : {};\n offset = normalizeOffset(offset);\n position = getElementPosition(el, offset);\n } else if (isValidPosition(shouldScroll)) {\n position = normalizePosition(shouldScroll);\n }\n } else if (isObject && isValidPosition(shouldScroll)) {\n position = normalizePosition(shouldScroll);\n }\n\n if (position) {\n window.scrollTo(position.x, position.y);\n }\n}\n\n/* */\n\nvar supportsPushState = inBrowser && (function () {\n var ua = window.navigator.userAgent;\n\n if (\n (ua.indexOf('Android 2.') !== -1 || ua.indexOf('Android 4.0') !== -1) &&\n ua.indexOf('Mobile Safari') !== -1 &&\n ua.indexOf('Chrome') === -1 &&\n ua.indexOf('Windows Phone') === -1\n ) {\n return false\n }\n\n return window.history && 'pushState' in window.history\n})();\n\n// use User Timing api (if present) for more accurate key precision\nvar Time = inBrowser && window.performance && window.performance.now\n ? window.performance\n : Date;\n\nvar _key = genKey();\n\nfunction genKey () {\n return Time.now().toFixed(3)\n}\n\nfunction getStateKey () {\n return _key\n}\n\nfunction setStateKey (key) {\n _key = key;\n}\n\nfunction pushState (url, replace) {\n saveScrollPosition();\n // try...catch the pushState call to get around Safari\n // DOM Exception 18 where it limits to 100 pushState calls\n var history = window.history;\n try {\n if (replace) {\n history.replaceState({ key: _key }, '', url);\n } else {\n _key = genKey();\n history.pushState({ key: _key }, '', url);\n }\n } catch (e) {\n window.location[replace ? 'replace' : 'assign'](url);\n }\n}\n\nfunction replaceState (url) {\n pushState(url, true);\n}\n\n/* */\n\nfunction runQueue (queue, fn, cb) {\n var step = function (index) {\n if (index >= queue.length) {\n cb();\n } else {\n if (queue[index]) {\n fn(queue[index], function () {\n step(index + 1);\n });\n } else {\n step(index + 1);\n }\n }\n };\n step(0);\n}\n\n/* */\n\nfunction resolveAsyncComponents (matched) {\n return function (to, from, next) {\n var hasAsync = false;\n var pending = 0;\n var error = null;\n\n flatMapComponents(matched, function (def, _, match, key) {\n // if it's a function and doesn't have cid attached,\n // assume it's an async component resolve function.\n // we are not using Vue's default async resolving mechanism because\n // we want to halt the navigation until the incoming component has been\n // resolved.\n if (typeof def === 'function' && def.cid === undefined) {\n hasAsync = true;\n pending++;\n\n var resolve = once(function (resolvedDef) {\n if (isESModule(resolvedDef)) {\n resolvedDef = resolvedDef.default;\n }\n // save resolved on async factory in case it's used elsewhere\n def.resolved = typeof resolvedDef === 'function'\n ? resolvedDef\n : _Vue.extend(resolvedDef);\n match.components[key] = resolvedDef;\n pending--;\n if (pending <= 0) {\n next();\n }\n });\n\n var reject = once(function (reason) {\n var msg = \"Failed to resolve async component \" + key + \": \" + reason;\n process.env.NODE_ENV !== 'production' && warn(false, msg);\n if (!error) {\n error = isError(reason)\n ? reason\n : new Error(msg);\n next(error);\n }\n });\n\n var res;\n try {\n res = def(resolve, reject);\n } catch (e) {\n reject(e);\n }\n if (res) {\n if (typeof res.then === 'function') {\n res.then(resolve, reject);\n } else {\n // new syntax in Vue 2.3\n var comp = res.component;\n if (comp && typeof comp.then === 'function') {\n comp.then(resolve, reject);\n }\n }\n }\n }\n });\n\n if (!hasAsync) { next(); }\n }\n}\n\nfunction flatMapComponents (\n matched,\n fn\n) {\n return flatten(matched.map(function (m) {\n return Object.keys(m.components).map(function (key) { return fn(\n m.components[key],\n m.instances[key],\n m, key\n ); })\n }))\n}\n\nfunction flatten (arr) {\n return Array.prototype.concat.apply([], arr)\n}\n\nvar hasSymbol =\n typeof Symbol === 'function' &&\n typeof Symbol.toStringTag === 'symbol';\n\nfunction isESModule (obj) {\n return obj.__esModule || (hasSymbol && obj[Symbol.toStringTag] === 'Module')\n}\n\n// in Webpack 2, require.ensure now also returns a Promise\n// so the resolve/reject functions may get called an extra time\n// if the user uses an arrow function shorthand that happens to\n// return that Promise.\nfunction once (fn) {\n var called = false;\n return function () {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n if (called) { return }\n called = true;\n return fn.apply(this, args)\n }\n}\n\n/* */\n\nvar History = function History (router, base) {\n this.router = router;\n this.base = normalizeBase(base);\n // start with a route object that stands for \"nowhere\"\n this.current = START;\n this.pending = null;\n this.ready = false;\n this.readyCbs = [];\n this.readyErrorCbs = [];\n this.errorCbs = [];\n};\n\nHistory.prototype.listen = function listen (cb) {\n this.cb = cb;\n};\n\nHistory.prototype.onReady = function onReady (cb, errorCb) {\n if (this.ready) {\n cb();\n } else {\n this.readyCbs.push(cb);\n if (errorCb) {\n this.readyErrorCbs.push(errorCb);\n }\n }\n};\n\nHistory.prototype.onError = function onError (errorCb) {\n this.errorCbs.push(errorCb);\n};\n\nHistory.prototype.transitionTo = function transitionTo (location, onComplete, onAbort) {\n var this$1 = this;\n\n var route = this.router.match(location, this.current);\n this.confirmTransition(route, function () {\n this$1.updateRoute(route);\n onComplete && onComplete(route);\n this$1.ensureURL();\n\n // fire ready cbs once\n if (!this$1.ready) {\n this$1.ready = true;\n this$1.readyCbs.forEach(function (cb) { cb(route); });\n }\n }, function (err) {\n if (onAbort) {\n onAbort(err);\n }\n if (err && !this$1.ready) {\n this$1.ready = true;\n this$1.readyErrorCbs.forEach(function (cb) { cb(err); });\n }\n });\n};\n\nHistory.prototype.confirmTransition = function confirmTransition (route, onComplete, onAbort) {\n var this$1 = this;\n\n var current = this.current;\n var abort = function (err) {\n if (isError(err)) {\n if (this$1.errorCbs.length) {\n this$1.errorCbs.forEach(function (cb) { cb(err); });\n } else {\n warn(false, 'uncaught error during route navigation:');\n console.error(err);\n }\n }\n onAbort && onAbort(err);\n };\n if (\n isSameRoute(route, current) &&\n // in the case the route map has been dynamically appended to\n route.matched.length === current.matched.length\n ) {\n this.ensureURL();\n return abort()\n }\n\n var ref = resolveQueue(this.current.matched, route.matched);\n var updated = ref.updated;\n var deactivated = ref.deactivated;\n var activated = ref.activated;\n\n var queue = [].concat(\n // in-component leave guards\n extractLeaveGuards(deactivated),\n // global before hooks\n this.router.beforeHooks,\n // in-component update hooks\n extractUpdateHooks(updated),\n // in-config enter guards\n activated.map(function (m) { return m.beforeEnter; }),\n // async components\n resolveAsyncComponents(activated)\n );\n\n this.pending = route;\n var iterator = function (hook, next) {\n if (this$1.pending !== route) {\n return abort()\n }\n try {\n hook(route, current, function (to) {\n if (to === false || isError(to)) {\n // next(false) -> abort navigation, ensure current URL\n this$1.ensureURL(true);\n abort(to);\n } else if (\n typeof to === 'string' ||\n (typeof to === 'object' && (\n typeof to.path === 'string' ||\n typeof to.name === 'string'\n ))\n ) {\n // next('/') or next({ path: '/' }) -> redirect\n abort();\n if (typeof to === 'object' && to.replace) {\n this$1.replace(to);\n } else {\n this$1.push(to);\n }\n } else {\n // confirm transition and pass on the value\n next(to);\n }\n });\n } catch (e) {\n abort(e);\n }\n };\n\n runQueue(queue, iterator, function () {\n var postEnterCbs = [];\n var isValid = function () { return this$1.current === route; };\n // wait until async components are resolved before\n // extracting in-component enter guards\n var enterGuards = extractEnterGuards(activated, postEnterCbs, isValid);\n var queue = enterGuards.concat(this$1.router.resolveHooks);\n runQueue(queue, iterator, function () {\n if (this$1.pending !== route) {\n return abort()\n }\n this$1.pending = null;\n onComplete(route);\n if (this$1.router.app) {\n this$1.router.app.$nextTick(function () {\n postEnterCbs.forEach(function (cb) { cb(); });\n });\n }\n });\n });\n};\n\nHistory.prototype.updateRoute = function updateRoute (route) {\n var prev = this.current;\n this.current = route;\n this.cb && this.cb(route);\n this.router.afterHooks.forEach(function (hook) {\n hook && hook(route, prev);\n });\n};\n\nfunction normalizeBase (base) {\n if (!base) {\n if (inBrowser) {\n // respect tag\n var baseEl = document.querySelector('base');\n base = (baseEl && baseEl.getAttribute('href')) || '/';\n // strip full URL origin\n base = base.replace(/^https?:\\/\\/[^\\/]+/, '');\n } else {\n base = '/';\n }\n }\n // make sure there's the starting slash\n if (base.charAt(0) !== '/') {\n base = '/' + base;\n }\n // remove trailing slash\n return base.replace(/\\/$/, '')\n}\n\nfunction resolveQueue (\n current,\n next\n) {\n var i;\n var max = Math.max(current.length, next.length);\n for (i = 0; i < max; i++) {\n if (current[i] !== next[i]) {\n break\n }\n }\n return {\n updated: next.slice(0, i),\n activated: next.slice(i),\n deactivated: current.slice(i)\n }\n}\n\nfunction extractGuards (\n records,\n name,\n bind,\n reverse\n) {\n var guards = flatMapComponents(records, function (def, instance, match, key) {\n var guard = extractGuard(def, name);\n if (guard) {\n return Array.isArray(guard)\n ? guard.map(function (guard) { return bind(guard, instance, match, key); })\n : bind(guard, instance, match, key)\n }\n });\n return flatten(reverse ? guards.reverse() : guards)\n}\n\nfunction extractGuard (\n def,\n key\n) {\n if (typeof def !== 'function') {\n // extend now so that global mixins are applied.\n def = _Vue.extend(def);\n }\n return def.options[key]\n}\n\nfunction extractLeaveGuards (deactivated) {\n return extractGuards(deactivated, 'beforeRouteLeave', bindGuard, true)\n}\n\nfunction extractUpdateHooks (updated) {\n return extractGuards(updated, 'beforeRouteUpdate', bindGuard)\n}\n\nfunction bindGuard (guard, instance) {\n if (instance) {\n return function boundRouteGuard () {\n return guard.apply(instance, arguments)\n }\n }\n}\n\nfunction extractEnterGuards (\n activated,\n cbs,\n isValid\n) {\n return extractGuards(activated, 'beforeRouteEnter', function (guard, _, match, key) {\n return bindEnterGuard(guard, match, key, cbs, isValid)\n })\n}\n\nfunction bindEnterGuard (\n guard,\n match,\n key,\n cbs,\n isValid\n) {\n return function routeEnterGuard (to, from, next) {\n return guard(to, from, function (cb) {\n next(cb);\n if (typeof cb === 'function') {\n cbs.push(function () {\n // #750\n // if a router-view is wrapped with an out-in transition,\n // the instance may not have been registered at this time.\n // we will need to poll for registration until current route\n // is no longer valid.\n poll(cb, match.instances, key, isValid);\n });\n }\n })\n }\n}\n\nfunction poll (\n cb, // somehow flow cannot infer this is a function\n instances,\n key,\n isValid\n) {\n if (instances[key]) {\n cb(instances[key]);\n } else if (isValid()) {\n setTimeout(function () {\n poll(cb, instances, key, isValid);\n }, 16);\n }\n}\n\n/* */\n\n\nvar HTML5History = (function (History$$1) {\n function HTML5History (router, base) {\n var this$1 = this;\n\n History$$1.call(this, router, base);\n\n var expectScroll = router.options.scrollBehavior;\n\n if (expectScroll) {\n setupScroll();\n }\n\n var initLocation = getLocation(this.base);\n window.addEventListener('popstate', function (e) {\n var current = this$1.current;\n\n // Avoiding first `popstate` event dispatched in some browsers but first\n // history route not updated since async guard at the same time.\n var location = getLocation(this$1.base);\n if (this$1.current === START && location === initLocation) {\n return\n }\n\n this$1.transitionTo(location, function (route) {\n if (expectScroll) {\n handleScroll(router, route, current, true);\n }\n });\n });\n }\n\n if ( History$$1 ) HTML5History.__proto__ = History$$1;\n HTML5History.prototype = Object.create( History$$1 && History$$1.prototype );\n HTML5History.prototype.constructor = HTML5History;\n\n HTML5History.prototype.go = function go (n) {\n window.history.go(n);\n };\n\n HTML5History.prototype.push = function push (location, onComplete, onAbort) {\n var this$1 = this;\n\n var ref = this;\n var fromRoute = ref.current;\n this.transitionTo(location, function (route) {\n pushState(cleanPath(this$1.base + route.fullPath));\n handleScroll(this$1.router, route, fromRoute, false);\n onComplete && onComplete(route);\n }, onAbort);\n };\n\n HTML5History.prototype.replace = function replace (location, onComplete, onAbort) {\n var this$1 = this;\n\n var ref = this;\n var fromRoute = ref.current;\n this.transitionTo(location, function (route) {\n replaceState(cleanPath(this$1.base + route.fullPath));\n handleScroll(this$1.router, route, fromRoute, false);\n onComplete && onComplete(route);\n }, onAbort);\n };\n\n HTML5History.prototype.ensureURL = function ensureURL (push) {\n if (getLocation(this.base) !== this.current.fullPath) {\n var current = cleanPath(this.base + this.current.fullPath);\n push ? pushState(current) : replaceState(current);\n }\n };\n\n HTML5History.prototype.getCurrentLocation = function getCurrentLocation () {\n return getLocation(this.base)\n };\n\n return HTML5History;\n}(History));\n\nfunction getLocation (base) {\n var path = window.location.pathname;\n if (base && path.indexOf(base) === 0) {\n path = path.slice(base.length);\n }\n return (path || '/') + window.location.search + window.location.hash\n}\n\n/* */\n\n\nvar HashHistory = (function (History$$1) {\n function HashHistory (router, base, fallback) {\n History$$1.call(this, router, base);\n // check history fallback deeplinking\n if (fallback && checkFallback(this.base)) {\n return\n }\n ensureSlash();\n }\n\n if ( History$$1 ) HashHistory.__proto__ = History$$1;\n HashHistory.prototype = Object.create( History$$1 && History$$1.prototype );\n HashHistory.prototype.constructor = HashHistory;\n\n // this is delayed until the app mounts\n // to avoid the hashchange listener being fired too early\n HashHistory.prototype.setupListeners = function setupListeners () {\n var this$1 = this;\n\n var router = this.router;\n var expectScroll = router.options.scrollBehavior;\n var supportsScroll = supportsPushState && expectScroll;\n\n if (supportsScroll) {\n setupScroll();\n }\n\n window.addEventListener(supportsPushState ? 'popstate' : 'hashchange', function () {\n var current = this$1.current;\n if (!ensureSlash()) {\n return\n }\n this$1.transitionTo(getHash(), function (route) {\n if (supportsScroll) {\n handleScroll(this$1.router, route, current, true);\n }\n if (!supportsPushState) {\n replaceHash(route.fullPath);\n }\n });\n });\n };\n\n HashHistory.prototype.push = function push (location, onComplete, onAbort) {\n var this$1 = this;\n\n var ref = this;\n var fromRoute = ref.current;\n this.transitionTo(location, function (route) {\n pushHash(route.fullPath);\n handleScroll(this$1.router, route, fromRoute, false);\n onComplete && onComplete(route);\n }, onAbort);\n };\n\n HashHistory.prototype.replace = function replace (location, onComplete, onAbort) {\n var this$1 = this;\n\n var ref = this;\n var fromRoute = ref.current;\n this.transitionTo(location, function (route) {\n replaceHash(route.fullPath);\n handleScroll(this$1.router, route, fromRoute, false);\n onComplete && onComplete(route);\n }, onAbort);\n };\n\n HashHistory.prototype.go = function go (n) {\n window.history.go(n);\n };\n\n HashHistory.prototype.ensureURL = function ensureURL (push) {\n var current = this.current.fullPath;\n if (getHash() !== current) {\n push ? pushHash(current) : replaceHash(current);\n }\n };\n\n HashHistory.prototype.getCurrentLocation = function getCurrentLocation () {\n return getHash()\n };\n\n return HashHistory;\n}(History));\n\nfunction checkFallback (base) {\n var location = getLocation(base);\n if (!/^\\/#/.test(location)) {\n window.location.replace(\n cleanPath(base + '/#' + location)\n );\n return true\n }\n}\n\nfunction ensureSlash () {\n var path = getHash();\n if (path.charAt(0) === '/') {\n return true\n }\n replaceHash('/' + path);\n return false\n}\n\nfunction getHash () {\n // We can't use window.location.hash here because it's not\n // consistent across browsers - Firefox will pre-decode it!\n var href = window.location.href;\n var index = href.indexOf('#');\n return index === -1 ? '' : href.slice(index + 1)\n}\n\nfunction getUrl (path) {\n var href = window.location.href;\n var i = href.indexOf('#');\n var base = i >= 0 ? href.slice(0, i) : href;\n return (base + \"#\" + path)\n}\n\nfunction pushHash (path) {\n if (supportsPushState) {\n pushState(getUrl(path));\n } else {\n window.location.hash = path;\n }\n}\n\nfunction replaceHash (path) {\n if (supportsPushState) {\n replaceState(getUrl(path));\n } else {\n window.location.replace(getUrl(path));\n }\n}\n\n/* */\n\n\nvar AbstractHistory = (function (History$$1) {\n function AbstractHistory (router, base) {\n History$$1.call(this, router, base);\n this.stack = [];\n this.index = -1;\n }\n\n if ( History$$1 ) AbstractHistory.__proto__ = History$$1;\n AbstractHistory.prototype = Object.create( History$$1 && History$$1.prototype );\n AbstractHistory.prototype.constructor = AbstractHistory;\n\n AbstractHistory.prototype.push = function push (location, onComplete, onAbort) {\n var this$1 = this;\n\n this.transitionTo(location, function (route) {\n this$1.stack = this$1.stack.slice(0, this$1.index + 1).concat(route);\n this$1.index++;\n onComplete && onComplete(route);\n }, onAbort);\n };\n\n AbstractHistory.prototype.replace = function replace (location, onComplete, onAbort) {\n var this$1 = this;\n\n this.transitionTo(location, function (route) {\n this$1.stack = this$1.stack.slice(0, this$1.index).concat(route);\n onComplete && onComplete(route);\n }, onAbort);\n };\n\n AbstractHistory.prototype.go = function go (n) {\n var this$1 = this;\n\n var targetIndex = this.index + n;\n if (targetIndex < 0 || targetIndex >= this.stack.length) {\n return\n }\n var route = this.stack[targetIndex];\n this.confirmTransition(route, function () {\n this$1.index = targetIndex;\n this$1.updateRoute(route);\n });\n };\n\n AbstractHistory.prototype.getCurrentLocation = function getCurrentLocation () {\n var current = this.stack[this.stack.length - 1];\n return current ? current.fullPath : '/'\n };\n\n AbstractHistory.prototype.ensureURL = function ensureURL () {\n // noop\n };\n\n return AbstractHistory;\n}(History));\n\n/* */\n\nvar VueRouter = function VueRouter (options) {\n if ( options === void 0 ) options = {};\n\n this.app = null;\n this.apps = [];\n this.options = options;\n this.beforeHooks = [];\n this.resolveHooks = [];\n this.afterHooks = [];\n this.matcher = createMatcher(options.routes || [], this);\n\n var mode = options.mode || 'hash';\n this.fallback = mode === 'history' && !supportsPushState && options.fallback !== false;\n if (this.fallback) {\n mode = 'hash';\n }\n if (!inBrowser) {\n mode = 'abstract';\n }\n this.mode = mode;\n\n switch (mode) {\n case 'history':\n this.history = new HTML5History(this, options.base);\n break\n case 'hash':\n this.history = new HashHistory(this, options.base, this.fallback);\n break\n case 'abstract':\n this.history = new AbstractHistory(this, options.base);\n break\n default:\n if (process.env.NODE_ENV !== 'production') {\n assert(false, (\"invalid mode: \" + mode));\n }\n }\n};\n\nvar prototypeAccessors = { currentRoute: { configurable: true } };\n\nVueRouter.prototype.match = function match (\n raw,\n current,\n redirectedFrom\n) {\n return this.matcher.match(raw, current, redirectedFrom)\n};\n\nprototypeAccessors.currentRoute.get = function () {\n return this.history && this.history.current\n};\n\nVueRouter.prototype.init = function init (app /* Vue component instance */) {\n var this$1 = this;\n\n process.env.NODE_ENV !== 'production' && assert(\n install.installed,\n \"not installed. Make sure to call `Vue.use(VueRouter)` \" +\n \"before creating root instance.\"\n );\n\n this.apps.push(app);\n\n // main app already initialized.\n if (this.app) {\n return\n }\n\n this.app = app;\n\n var history = this.history;\n\n if (history instanceof HTML5History) {\n history.transitionTo(history.getCurrentLocation());\n } else if (history instanceof HashHistory) {\n var setupHashListener = function () {\n history.setupListeners();\n };\n history.transitionTo(\n history.getCurrentLocation(),\n setupHashListener,\n setupHashListener\n );\n }\n\n history.listen(function (route) {\n this$1.apps.forEach(function (app) {\n app._route = route;\n });\n });\n};\n\nVueRouter.prototype.beforeEach = function beforeEach (fn) {\n return registerHook(this.beforeHooks, fn)\n};\n\nVueRouter.prototype.beforeResolve = function beforeResolve (fn) {\n return registerHook(this.resolveHooks, fn)\n};\n\nVueRouter.prototype.afterEach = function afterEach (fn) {\n return registerHook(this.afterHooks, fn)\n};\n\nVueRouter.prototype.onReady = function onReady (cb, errorCb) {\n this.history.onReady(cb, errorCb);\n};\n\nVueRouter.prototype.onError = function onError (errorCb) {\n this.history.onError(errorCb);\n};\n\nVueRouter.prototype.push = function push (location, onComplete, onAbort) {\n this.history.push(location, onComplete, onAbort);\n};\n\nVueRouter.prototype.replace = function replace (location, onComplete, onAbort) {\n this.history.replace(location, onComplete, onAbort);\n};\n\nVueRouter.prototype.go = function go (n) {\n this.history.go(n);\n};\n\nVueRouter.prototype.back = function back () {\n this.go(-1);\n};\n\nVueRouter.prototype.forward = function forward () {\n this.go(1);\n};\n\nVueRouter.prototype.getMatchedComponents = function getMatchedComponents (to) {\n var route = to\n ? to.matched\n ? to\n : this.resolve(to).route\n : this.currentRoute;\n if (!route) {\n return []\n }\n return [].concat.apply([], route.matched.map(function (m) {\n return Object.keys(m.components).map(function (key) {\n return m.components[key]\n })\n }))\n};\n\nVueRouter.prototype.resolve = function resolve (\n to,\n current,\n append\n) {\n var location = normalizeLocation(\n to,\n current || this.history.current,\n append,\n this\n );\n var route = this.match(location, current);\n var fullPath = route.redirectedFrom || route.fullPath;\n var base = this.history.base;\n var href = createHref(base, fullPath, this.mode);\n return {\n location: location,\n route: route,\n href: href,\n // for backwards compat\n normalizedTo: location,\n resolved: route\n }\n};\n\nVueRouter.prototype.addRoutes = function addRoutes (routes) {\n this.matcher.addRoutes(routes);\n if (this.history.current !== START) {\n this.history.transitionTo(this.history.getCurrentLocation());\n }\n};\n\nObject.defineProperties( VueRouter.prototype, prototypeAccessors );\n\nfunction registerHook (list, fn) {\n list.push(fn);\n return function () {\n var i = list.indexOf(fn);\n if (i > -1) { list.splice(i, 1); }\n }\n}\n\nfunction createHref (base, fullPath, mode) {\n var path = mode === 'hash' ? '#' + fullPath : fullPath;\n return base ? cleanPath(base + '/' + path) : path\n}\n\nVueRouter.install = install;\nVueRouter.version = '3.0.1';\n\nif (inBrowser && window.Vue) {\n window.Vue.use(VueRouter);\n}\n\nexport default VueRouter;\n","module.exports = require('./lib/axios');","const isDevelopment = process.env.NODE_ENV === 'development';\n\nexport {\n isDevelopment\n};\n","var g;\r\n\r\n// This works in non-strict mode\r\ng = (function() {\r\n\treturn this;\r\n})();\r\n\r\ntry {\r\n\t// This works if eval is allowed (see CSP)\r\n\tg = g || Function(\"return this\")() || (1, eval)(\"this\");\r\n} catch (e) {\r\n\t// This works if the window reference is available\r\n\tif (typeof window === \"object\") g = window;\r\n}\r\n\r\n// g can still be undefined, but nothing to do about it...\r\n// We return undefined, instead of nothing here, so it's\r\n// easier to handle this case. if(!global) { ...}\r\n\r\nmodule.exports = g;\r\n","// style-loader: Adds some css to the DOM by adding a \n","// style-loader: Adds some css to the DOM by adding a \n","// style-loader: Adds some css to the DOM by adding a \n","\n \n \n\n\n","// style-loader: Adds some css to the DOM by adding a \n","// style-loader: Adds some css to the DOM by adding a \n","\n \n \n\n\n","// style-loader: Adds some css to the DOM by adding a \n","// style-loader: Adds some css to the DOM by adding a \n","// style-loader: Adds some css to the DOM by adding a \n","// style-loader: Adds some css to the DOM by adding a \n","// style-loader: Adds some css to the DOM by adding a \n","// style-loader: Adds some css to the DOM by adding a \n","// style-loader: Adds some css to the DOM by adding a \n","// style-loader: Adds some css to the DOM by adding a \n","import mod from \"-!../../node_modules/babel-loader/lib/index.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./select-list.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/babel-loader/lib/index.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./select-list.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./select-list.vue?vue&type=template&id=4bc41cee&scoped=true&\"\nimport script from \"./select-list.vue?vue&type=script&lang=js&\"\nexport * from \"./select-list.vue?vue&type=script&lang=js&\"\nimport style0 from \"./select-list.vue?vue&type=style&index=0&id=4bc41cee&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 \"4bc41cee\",\n null\n \n)\n\ncomponent.options.__file = \"select-list.vue\"\nexport default component.exports","var render = function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\"div\", { staticClass: \"file-browser max-width\" }, [\n _c(\n \"div\",\n { class: _vm.showBrowseButton ? \"input-group\" : \"input-group-no-btn\" },\n [\n _c(\"input\", {\n directives: [\n {\n name: \"model\",\n rawName: \"v-model\",\n value: _vm.currentPath,\n expression: \"currentPath\"\n }\n ],\n ref: \"locationInput\",\n staticClass: \"form-control input-sm fileBrowserField\",\n attrs: { name: _vm.name, type: \"text\" },\n domProps: { value: _vm.currentPath },\n on: {\n input: function($event) {\n if ($event.target.composing) {\n return\n }\n _vm.currentPath = $event.target.value\n }\n }\n }),\n _vm._v(\" \"),\n _vm.showBrowseButton\n ? _c(\n \"div\",\n {\n staticClass: \"input-group-btn\",\n attrs: { title: _vm.title, alt: _vm.title },\n on: {\n click: function($event) {\n $event.preventDefault()\n return _vm.openDialog($event)\n }\n }\n },\n [_vm._m(0)]\n )\n : _vm._e()\n ]\n ),\n _vm._v(\" \"),\n _c(\"div\", {\n ref: \"fileBrowserDialog\",\n staticClass: \"fileBrowserDialog\",\n staticStyle: { display: \"none\" }\n }),\n _vm._v(\" \"),\n _c(\"input\", {\n ref: \"fileBrowserSearchBox\",\n staticClass: \"form-control\",\n staticStyle: { display: \"none\" },\n attrs: { type: \"text\" },\n domProps: { value: _vm.currentPath },\n on: {\n keyup: function($event) {\n if (\n !(\"button\" in $event) &&\n _vm._k($event.keyCode, \"enter\", 13, $event.key, \"Enter\")\n ) {\n return null\n }\n _vm.browse($event.target.value)\n }\n }\n }),\n _vm._v(\" \"),\n _c(\n \"ul\",\n { ref: \"fileBrowserFileList\", staticStyle: { display: \"none\" } },\n _vm._l(_vm.files, function(file) {\n return _c(\n \"li\",\n { key: file.name, staticClass: \"ui-state-default ui-corner-all\" },\n [\n _c(\n \"a\",\n {\n on: {\n mouseover: function($event) {\n _vm.toggleFolder(file, $event)\n },\n mouseout: function($event) {\n _vm.toggleFolder(file, $event)\n },\n click: function($event) {\n _vm.fileClicked(file)\n }\n }\n },\n [\n _c(\"span\", {\n class:\n \"ui-icon \" +\n (file.isFile ? \"ui-icon-blank\" : \"ui-icon-folder-collapsed\")\n }),\n _vm._v(\" \" + _vm._s(file.name) + \"\\n \")\n ]\n )\n ]\n )\n })\n )\n ])\n}\nvar staticRenderFns = [\n function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\n \"div\",\n {\n staticClass: \"btn btn-default input-sm\",\n staticStyle: { \"font-size\": \"14px\" }\n },\n [_c(\"i\", { staticClass: \"glyphicon glyphicon-open\" })]\n )\n }\n]\nrender._withStripped = true\n\nexport { render, staticRenderFns }","import mod from \"-!../../node_modules/babel-loader/lib/index.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./file-browser.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/babel-loader/lib/index.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./file-browser.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./file-browser.vue?vue&type=template&id=1113705a&scoped=true&\"\nimport script from \"./file-browser.vue?vue&type=script&lang=js&\"\nexport * from \"./file-browser.vue?vue&type=script&lang=js&\"\nimport style0 from \"./file-browser.vue?vue&type=style&index=0&id=1113705a&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 \"1113705a\",\n null\n \n)\n\ncomponent.options.__file = \"file-browser.vue\"\nexport default component.exports","var render = function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\"div\", { attrs: { id: \"name-pattern-wrapper\" } }, [\n _vm.type\n ? _c(\"div\", { staticClass: \"form-group\" }, [\n _c(\n \"label\",\n {\n staticClass: \"col-sm-2 control-label\",\n attrs: { for: \"enable_naming_custom\" }\n },\n [_c(\"span\", [_vm._v(\"Custom \" + _vm._s(_vm.type))])]\n ),\n _vm._v(\" \"),\n _c(\n \"div\",\n { staticClass: \"col-sm-10 content\" },\n [\n _c(\"toggle-button\", {\n attrs: {\n width: 45,\n height: 22,\n id: \"enable_naming_custom\",\n name: \"enable_naming_custom\",\n sync: \"\"\n },\n on: {\n input: function($event) {\n _vm.update()\n }\n },\n model: {\n value: _vm.isEnabled,\n callback: function($$v) {\n _vm.isEnabled = $$v\n },\n expression: \"isEnabled\"\n }\n }),\n _vm._v(\" \"),\n _c(\"span\", [\n _vm._v(\n \"Name \" +\n _vm._s(_vm.type) +\n \" shows differently than regular shows?\"\n )\n ])\n ],\n 1\n )\n ])\n : _vm._e(),\n _vm._v(\" \"),\n !_vm.type || _vm.isEnabled\n ? _c(\"div\", { staticClass: \"episode-naming\" }, [\n _c(\"div\", { staticClass: \"form-group\" }, [\n _vm._m(0),\n _vm._v(\" \"),\n _c(\"div\", { staticClass: \"col-sm-10 content\" }, [\n _c(\n \"select\",\n {\n directives: [\n {\n name: \"model\",\n rawName: \"v-model\",\n value: _vm.selectedNamingPattern,\n expression: \"selectedNamingPattern\"\n }\n ],\n staticClass: \"form-control input-sm\",\n attrs: { id: \"name_presets\" },\n on: {\n change: [\n function($event) {\n var $$selectedVal = Array.prototype.filter\n .call($event.target.options, function(o) {\n return o.selected\n })\n .map(function(o) {\n var val = \"_value\" in o ? o._value : o.value\n return val\n })\n _vm.selectedNamingPattern = $event.target.multiple\n ? $$selectedVal\n : $$selectedVal[0]\n },\n _vm.updatePatternSamples\n ],\n input: function($event) {\n _vm.update()\n }\n }\n },\n _vm._l(_vm.presets, function(preset) {\n return _c(\n \"option\",\n { key: preset.pattern, attrs: { id: preset.pattern } },\n [_vm._v(_vm._s(preset.example))]\n )\n })\n )\n ])\n ]),\n _vm._v(\" \"),\n _c(\"div\", { attrs: { id: \"naming_custom\" } }, [\n _vm.isCustom\n ? _c(\n \"div\",\n {\n staticClass: \"form-group\",\n staticStyle: { \"padding-top\": \"0\" }\n },\n [\n _vm._m(1),\n _vm._v(\" \"),\n _c(\"div\", { staticClass: \"col-sm-10 content\" }, [\n _c(\"input\", {\n directives: [\n {\n name: \"model\",\n rawName: \"v-model\",\n value: _vm.customName,\n expression: \"customName\"\n }\n ],\n staticClass:\n \"form-control-inline-max input-sm max-input350\",\n attrs: {\n type: \"text\",\n name: \"naming_pattern\",\n id: \"naming_pattern\"\n },\n domProps: { value: _vm.customName },\n on: {\n change: _vm.updatePatternSamples,\n input: [\n function($event) {\n if ($event.target.composing) {\n return\n }\n _vm.customName = $event.target.value\n },\n function($event) {\n _vm.update()\n }\n ]\n }\n }),\n _vm._v(\" \"),\n _c(\"img\", {\n staticClass: \"legend\",\n attrs: {\n src: \"images/legend16.png\",\n width: \"16\",\n height: \"16\",\n alt: \"[Toggle Key]\",\n id: \"show_naming_key\",\n title: \"Toggle Naming Legend\"\n },\n on: {\n click: function($event) {\n _vm.showLegend = !_vm.showLegend\n }\n }\n })\n ])\n ]\n )\n : _vm._e(),\n _vm._v(\" \"),\n _vm.showLegend && _vm.isCustom\n ? _c(\n \"div\",\n { staticClass: \"nocheck\", attrs: { id: \"naming_key\" } },\n [\n _c(\"table\", { staticClass: \"Key\" }, [\n _vm._m(2),\n _vm._v(\" \"),\n _vm._m(3),\n _vm._v(\" \"),\n _c(\"tbody\", [\n _vm._m(4),\n _vm._v(\" \"),\n _vm._m(5),\n _vm._v(\" \"),\n _vm._m(6),\n _vm._v(\" \"),\n _vm._m(7),\n _vm._v(\" \"),\n _vm._m(8),\n _vm._v(\" \"),\n _vm._m(9),\n _vm._v(\" \"),\n _vm._m(10),\n _vm._v(\" \"),\n _vm._m(11),\n _vm._v(\" \"),\n _vm._m(12),\n _vm._v(\" \"),\n _vm._m(13),\n _vm._v(\" \"),\n _vm._m(14),\n _vm._v(\" \"),\n _vm._m(15),\n _vm._v(\" \"),\n _vm._m(16),\n _vm._v(\" \"),\n _vm._m(17),\n _vm._v(\" \"),\n _c(\"tr\", [\n _vm._m(18),\n _vm._v(\" \"),\n _c(\"td\", [_vm._v(\"%M\")]),\n _vm._v(\" \"),\n _c(\"td\", [_vm._v(_vm._s(_vm.getDateFormat(\"M\")))])\n ]),\n _vm._v(\" \"),\n _c(\"tr\", { staticClass: \"even\" }, [\n _c(\"td\", [_vm._v(\" \")]),\n _vm._v(\" \"),\n _c(\"td\", [_vm._v(\"%D\")]),\n _vm._v(\" \"),\n _c(\"td\", [_vm._v(_vm._s(_vm.getDateFormat(\"D\")))])\n ]),\n _vm._v(\" \"),\n _c(\"tr\", [\n _c(\"td\", [_vm._v(\" \")]),\n _vm._v(\" \"),\n _c(\"td\", [_vm._v(\"%Y\")]),\n _vm._v(\" \"),\n _c(\"td\", [_vm._v(_vm._s(_vm.getDateFormat(\"YY\")))])\n ]),\n _vm._v(\" \"),\n _c(\"tr\", [\n _vm._m(19),\n _vm._v(\" \"),\n _c(\"td\", [_vm._v(\"%CM\")]),\n _vm._v(\" \"),\n _c(\"td\", [_vm._v(_vm._s(_vm.getDateFormat(\"M\")))])\n ]),\n _vm._v(\" \"),\n _c(\"tr\", { staticClass: \"even\" }, [\n _c(\"td\", [_vm._v(\" \")]),\n _vm._v(\" \"),\n _c(\"td\", [_vm._v(\"%CD\")]),\n _vm._v(\" \"),\n _c(\"td\", [_vm._v(_vm._s(_vm.getDateFormat(\"D\")))])\n ]),\n _vm._v(\" \"),\n _c(\"tr\", [\n _c(\"td\", [_vm._v(\" \")]),\n _vm._v(\" \"),\n _c(\"td\", [_vm._v(\"%CY\")]),\n _vm._v(\" \"),\n _c(\"td\", [_vm._v(_vm._s(_vm.getDateFormat(\"YY\")))])\n ]),\n _vm._v(\" \"),\n _vm._m(20),\n _vm._v(\" \"),\n _vm._m(21),\n _vm._v(\" \"),\n _vm._m(22),\n _vm._v(\" \"),\n _vm._m(23),\n _vm._v(\" \"),\n _vm._m(24),\n _vm._v(\" \"),\n _vm._m(25),\n _vm._v(\" \"),\n _vm._m(26),\n _vm._v(\" \"),\n _vm._m(27),\n _vm._v(\" \"),\n _vm._m(28)\n ])\n ])\n ]\n )\n : _vm._e()\n ]),\n _vm._v(\" \"),\n _vm.selectedMultiEpStyle\n ? _c(\"div\", { staticClass: \"form-group\" }, [\n _vm._m(29),\n _vm._v(\" \"),\n _c(\"div\", { staticClass: \"col-sm-10 content\" }, [\n _c(\n \"select\",\n {\n directives: [\n {\n name: \"model\",\n rawName: \"v-model\",\n value: _vm.selectedMultiEpStyle,\n expression: \"selectedMultiEpStyle\"\n }\n ],\n staticClass: \"form-control input-sm\",\n attrs: { id: \"naming_multi_ep\", name: \"naming_multi_ep\" },\n on: {\n change: [\n function($event) {\n var $$selectedVal = Array.prototype.filter\n .call($event.target.options, function(o) {\n return o.selected\n })\n .map(function(o) {\n var val = \"_value\" in o ? o._value : o.value\n return val\n })\n _vm.selectedMultiEpStyle = $event.target.multiple\n ? $$selectedVal\n : $$selectedVal[0]\n },\n _vm.updatePatternSamples\n ],\n input: function($event) {\n _vm.update($event)\n }\n }\n },\n _vm._l(_vm.availableMultiEpStyles, function(multiEpStyle) {\n return _c(\n \"option\",\n {\n key: multiEpStyle.value,\n attrs: { id: \"multiEpStyle\" },\n domProps: { value: multiEpStyle.value }\n },\n [_vm._v(_vm._s(multiEpStyle.text))]\n )\n })\n )\n ])\n ])\n : _vm._e(),\n _vm._v(\" \"),\n _c(\"div\", { staticClass: \"form-group row\" }, [\n _c(\"h3\", { staticClass: \"col-sm-12\" }, [\n _vm._v(\"Single-EP Sample:\")\n ]),\n _vm._v(\" \"),\n _c(\"div\", { staticClass: \"example col-sm-12\" }, [\n _c(\n \"span\",\n { staticClass: \"jumbo\", attrs: { id: \"naming_example\" } },\n [_vm._v(_vm._s(_vm.namingExample))]\n )\n ])\n ]),\n _vm._v(\" \"),\n _vm.isMulti\n ? _c(\"div\", { staticClass: \"form-group row\" }, [\n _c(\"h3\", { staticClass: \"col-sm-12\" }, [\n _vm._v(\"Multi-EP sample:\")\n ]),\n _vm._v(\" \"),\n _c(\"div\", { staticClass: \"example col-sm-12\" }, [\n _c(\n \"span\",\n {\n staticClass: \"jumbo\",\n attrs: { id: \"naming_example_multi\" }\n },\n [_vm._v(_vm._s(_vm.namingExampleMulti))]\n )\n ])\n ])\n : _vm._e(),\n _vm._v(\" \"),\n _vm.animeType > 0\n ? _c(\"div\", { staticClass: \"form-group\" }, [\n _vm._m(30),\n _vm._v(\" \"),\n _c(\"div\", { staticClass: \"col-sm-10 content\" }, [\n _c(\"input\", {\n directives: [\n {\n name: \"model\",\n rawName: \"v-model\",\n value: _vm.animeType,\n expression: \"animeType\"\n }\n ],\n attrs: {\n type: \"radio\",\n name: \"naming_anime\",\n id: \"naming_anime\",\n value: \"1\"\n },\n domProps: { checked: _vm._q(_vm.animeType, \"1\") },\n on: {\n change: [\n function($event) {\n _vm.animeType = \"1\"\n },\n _vm.updatePatternSamples\n ],\n input: function($event) {\n _vm.update()\n }\n }\n }),\n _vm._v(\" \"),\n _c(\"span\", [\n _vm._v(\n \"Add the absolute number to the season/episode format?\"\n )\n ]),\n _vm._v(\" \"),\n _c(\"p\", [\n _vm._v(\n \"Only applies to animes. (e.g. S15E45 - 310 vs S15E45)\"\n )\n ])\n ])\n ])\n : _vm._e(),\n _vm._v(\" \"),\n _vm.animeType > 0\n ? _c(\"div\", { staticClass: \"form-group\" }, [\n _vm._m(31),\n _vm._v(\" \"),\n _c(\"div\", { staticClass: \"col-sm-10 content\" }, [\n _c(\"input\", {\n directives: [\n {\n name: \"model\",\n rawName: \"v-model\",\n value: _vm.animeType,\n expression: \"animeType\"\n }\n ],\n attrs: {\n type: \"radio\",\n name: \"naming_anime\",\n id: \"naming_anime_only\",\n value: \"2\"\n },\n domProps: { checked: _vm._q(_vm.animeType, \"2\") },\n on: {\n change: [\n function($event) {\n _vm.animeType = \"2\"\n },\n _vm.updatePatternSamples\n ],\n input: function($event) {\n _vm.update()\n }\n }\n }),\n _vm._v(\" \"),\n _c(\"span\", [\n _vm._v(\"Replace season/episode format with absolute number\")\n ]),\n _vm._v(\" \"),\n _c(\"p\", [_vm._v(\"Only applies to animes.\")])\n ])\n ])\n : _vm._e(),\n _vm._v(\" \"),\n _vm.animeType > 0\n ? _c(\"div\", { staticClass: \"form-group\" }, [\n _vm._m(32),\n _vm._v(\" \"),\n _c(\"div\", { staticClass: \"col-sm-10 content\" }, [\n _c(\"input\", {\n directives: [\n {\n name: \"model\",\n rawName: \"v-model\",\n value: _vm.animeType,\n expression: \"animeType\"\n }\n ],\n attrs: {\n type: \"radio\",\n name: \"naming_anime\",\n id: \"naming_anime_none\",\n value: \"3\"\n },\n domProps: { checked: _vm._q(_vm.animeType, \"3\") },\n on: {\n change: [\n function($event) {\n _vm.animeType = \"3\"\n },\n _vm.updatePatternSamples\n ],\n input: function($event) {\n _vm.update()\n }\n }\n }),\n _vm._v(\" \"),\n _c(\"span\", [_vm._v(\"Don't include the absolute number\")]),\n _vm._v(\" \"),\n _c(\"p\", [_vm._v(\"Only applies to animes.\")])\n ])\n ])\n : _vm._e()\n ])\n : _vm._e()\n ])\n}\nvar staticRenderFns = [\n function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\n \"label\",\n { staticClass: \"col-sm-2 control-label\", attrs: { for: \"name_presets\" } },\n [_c(\"span\", [_vm._v(\"Name Pattern:\")])]\n )\n },\n function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\"label\", { staticClass: \"col-sm-2 control-label\" }, [\n _c(\"span\", [_vm._v(\" \")])\n ])\n },\n function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\"thead\", [\n _c(\"tr\", [\n _c(\"th\", { staticClass: \"align-right\" }, [_vm._v(\"Meaning\")]),\n _vm._v(\" \"),\n _c(\"th\", [_vm._v(\"Pattern\")]),\n _vm._v(\" \"),\n _c(\"th\", { attrs: { width: \"60%\" } }, [_vm._v(\"Result\")])\n ])\n ])\n },\n function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\"tfoot\", [\n _c(\"tr\", [\n _c(\"th\", { attrs: { colspan: \"3\" } }, [\n _vm._v(\n \"Use lower case if you want lower case names (eg. %sn, %e.n, %q_n etc)\"\n )\n ])\n ])\n ])\n },\n function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\"tr\", [\n _c(\"td\", { staticClass: \"align-right\" }, [\n _c(\"b\", [_vm._v(\"Show Name:\")])\n ]),\n _vm._v(\" \"),\n _c(\"td\", [_vm._v(\"%SN\")]),\n _vm._v(\" \"),\n _c(\"td\", [_vm._v(\"Show Name\")])\n ])\n },\n function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\"tr\", { staticClass: \"even\" }, [\n _c(\"td\", [_vm._v(\" \")]),\n _vm._v(\" \"),\n _c(\"td\", [_vm._v(\"%S.N\")]),\n _vm._v(\" \"),\n _c(\"td\", [_vm._v(\"Show.Name\")])\n ])\n },\n function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\"tr\", [\n _c(\"td\", [_vm._v(\" \")]),\n _vm._v(\" \"),\n _c(\"td\", [_vm._v(\"%S_N\")]),\n _vm._v(\" \"),\n _c(\"td\", [_vm._v(\"Show_Name\")])\n ])\n },\n function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\"tr\", { staticClass: \"even\" }, [\n _c(\"td\", { staticClass: \"align-right\" }, [\n _c(\"b\", [_vm._v(\"Season Number:\")])\n ]),\n _vm._v(\" \"),\n _c(\"td\", [_vm._v(\"%S\")]),\n _vm._v(\" \"),\n _c(\"td\", [_vm._v(\"2\")])\n ])\n },\n function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\"tr\", [\n _c(\"td\", [_vm._v(\" \")]),\n _vm._v(\" \"),\n _c(\"td\", [_vm._v(\"%0S\")]),\n _vm._v(\" \"),\n _c(\"td\", [_vm._v(\"02\")])\n ])\n },\n function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\"tr\", { staticClass: \"even\" }, [\n _c(\"td\", { staticClass: \"align-right\" }, [\n _c(\"b\", [_vm._v(\"XEM Season Number:\")])\n ]),\n _vm._v(\" \"),\n _c(\"td\", [_vm._v(\"%XS\")]),\n _vm._v(\" \"),\n _c(\"td\", [_vm._v(\"2\")])\n ])\n },\n function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\"tr\", [\n _c(\"td\", [_vm._v(\" \")]),\n _vm._v(\" \"),\n _c(\"td\", [_vm._v(\"%0XS\")]),\n _vm._v(\" \"),\n _c(\"td\", [_vm._v(\"02\")])\n ])\n },\n function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\"tr\", { staticClass: \"even\" }, [\n _c(\"td\", { staticClass: \"align-right\" }, [\n _c(\"b\", [_vm._v(\"Episode Number:\")])\n ]),\n _vm._v(\" \"),\n _c(\"td\", [_vm._v(\"%E\")]),\n _vm._v(\" \"),\n _c(\"td\", [_vm._v(\"3\")])\n ])\n },\n function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\"tr\", [\n _c(\"td\", [_vm._v(\" \")]),\n _vm._v(\" \"),\n _c(\"td\", [_vm._v(\"%0E\")]),\n _vm._v(\" \"),\n _c(\"td\", [_vm._v(\"03\")])\n ])\n },\n function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\"tr\", { staticClass: \"even\" }, [\n _c(\"td\", { staticClass: \"align-right\" }, [\n _c(\"b\", [_vm._v(\"XEM Episode Number:\")])\n ]),\n _vm._v(\" \"),\n _c(\"td\", [_vm._v(\"%XE\")]),\n _vm._v(\" \"),\n _c(\"td\", [_vm._v(\"3\")])\n ])\n },\n function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\"tr\", [\n _c(\"td\", [_vm._v(\" \")]),\n _vm._v(\" \"),\n _c(\"td\", [_vm._v(\"%0XE\")]),\n _vm._v(\" \"),\n _c(\"td\", [_vm._v(\"03\")])\n ])\n },\n function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\"tr\", { staticClass: \"even\" }, [\n _c(\"td\", { staticClass: \"align-right\" }, [\n _c(\"b\", [_vm._v(\"Episode Name:\")])\n ]),\n _vm._v(\" \"),\n _c(\"td\", [_vm._v(\"%EN\")]),\n _vm._v(\" \"),\n _c(\"td\", [_vm._v(\"Episode Name\")])\n ])\n },\n function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\"tr\", [\n _c(\"td\", [_vm._v(\" \")]),\n _vm._v(\" \"),\n _c(\"td\", [_vm._v(\"%E.N\")]),\n _vm._v(\" \"),\n _c(\"td\", [_vm._v(\"Episode.Name\")])\n ])\n },\n function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\"tr\", { staticClass: \"even\" }, [\n _c(\"td\", [_vm._v(\" \")]),\n _vm._v(\" \"),\n _c(\"td\", [_vm._v(\"%E_N\")]),\n _vm._v(\" \"),\n _c(\"td\", [_vm._v(\"Episode_Name\")])\n ])\n },\n function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\"td\", { staticClass: \"align-right\" }, [\n _c(\"b\", [_vm._v(\"Air Date:\")])\n ])\n },\n function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\"td\", { staticClass: \"align-right\" }, [\n _c(\"b\", [_vm._v(\"Post-Processing Date:\")])\n ])\n },\n function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\"tr\", [\n _c(\"td\", { staticClass: \"align-right\" }, [_c(\"b\", [_vm._v(\"Quality:\")])]),\n _vm._v(\" \"),\n _c(\"td\", [_vm._v(\"%QN\")]),\n _vm._v(\" \"),\n _c(\"td\", [_vm._v(\"720p BluRay\")])\n ])\n },\n function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\"tr\", { staticClass: \"even\" }, [\n _c(\"td\", [_vm._v(\" \")]),\n _vm._v(\" \"),\n _c(\"td\", [_vm._v(\"%Q.N\")]),\n _vm._v(\" \"),\n _c(\"td\", [_vm._v(\"720p.BluRay\")])\n ])\n },\n function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\"tr\", [\n _c(\"td\", [_vm._v(\" \")]),\n _vm._v(\" \"),\n _c(\"td\", [_vm._v(\"%Q_N\")]),\n _vm._v(\" \"),\n _c(\"td\", [_vm._v(\"720p_BluRay\")])\n ])\n },\n function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\"tr\", [\n _c(\"td\", { staticClass: \"align-right\" }, [\n _c(\"b\", [_vm._v(\"Scene Quality:\")])\n ]),\n _vm._v(\" \"),\n _c(\"td\", [_vm._v(\"%SQN\")]),\n _vm._v(\" \"),\n _c(\"td\", [_vm._v(\"720p HDTV x264\")])\n ])\n },\n function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\"tr\", { staticClass: \"even\" }, [\n _c(\"td\", [_vm._v(\" \")]),\n _vm._v(\" \"),\n _c(\"td\", [_vm._v(\"%SQ.N\")]),\n _vm._v(\" \"),\n _c(\"td\", [_vm._v(\"720p.HDTV.x264\")])\n ])\n },\n function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\"tr\", [\n _c(\"td\", [_vm._v(\" \")]),\n _vm._v(\" \"),\n _c(\"td\", [_vm._v(\"%SQ_N\")]),\n _vm._v(\" \"),\n _c(\"td\", [_vm._v(\"720p_HDTV_x264\")])\n ])\n },\n function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\"tr\", { staticClass: \"even\" }, [\n _c(\"td\", { staticClass: \"align-right\" }, [\n _c(\"i\", {\n staticClass: \"glyphicon glyphicon-info-sign\",\n attrs: { title: \"Multi-EP style is ignored\" }\n }),\n _vm._v(\" \"),\n _c(\"b\", [_vm._v(\"Release Name:\")])\n ]),\n _vm._v(\" \"),\n _c(\"td\", [_vm._v(\"%RN\")]),\n _vm._v(\" \"),\n _c(\"td\", [_vm._v(\"Show.Name.S02E03.HDTV.x264-RLSGROUP\")])\n ])\n },\n function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\"tr\", [\n _c(\"td\", { staticClass: \"align-right\" }, [\n _c(\"i\", {\n staticClass: \"glyphicon glyphicon-info-sign\",\n attrs: {\n title:\n \"UNKNOWN_RELEASE_GROUP is used in place of RLSGROUP if it could not be properly detected\"\n }\n }),\n _vm._v(\" \"),\n _c(\"b\", [_vm._v(\"Release Group:\")])\n ]),\n _vm._v(\" \"),\n _c(\"td\", [_vm._v(\"%RG\")]),\n _vm._v(\" \"),\n _c(\"td\", [_vm._v(\"RLSGROUP\")])\n ])\n },\n function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\"tr\", { staticClass: \"even\" }, [\n _c(\"td\", { staticClass: \"align-right\" }, [\n _c(\"i\", {\n staticClass: \"glyphicon glyphicon-info-sign\",\n attrs: { title: \"If episode is proper/repack add 'proper' to name.\" }\n }),\n _vm._v(\" \"),\n _c(\"b\", [_vm._v(\"Release Type:\")])\n ]),\n _vm._v(\" \"),\n _c(\"td\", [_vm._v(\"%RT\")]),\n _vm._v(\" \"),\n _c(\"td\", [_vm._v(\"PROPER\")])\n ])\n },\n function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\n \"label\",\n {\n staticClass: \"col-sm-2 control-label\",\n attrs: { for: \"naming_multi_ep\" }\n },\n [_c(\"span\", [_vm._v(\"Multi-Episode Style:\")])]\n )\n },\n function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\n \"label\",\n { staticClass: \"col-sm-2 control-label\", attrs: { for: \"naming_anime\" } },\n [_c(\"span\", [_vm._v(\"Add Absolute Number\")])]\n )\n },\n function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\n \"label\",\n {\n staticClass: \"col-sm-2 control-label\",\n attrs: { for: \"naming_anime_only\" }\n },\n [_c(\"span\", [_vm._v(\"Only Absolute Number\")])]\n )\n },\n function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\n \"label\",\n {\n staticClass: \"col-sm-2 control-label\",\n attrs: { for: \"naming_anime_none\" }\n },\n [_c(\"span\", [_vm._v(\"No Absolute Number\")])]\n )\n }\n]\nrender._withStripped = true\n\nexport { render, staticRenderFns }","import mod from \"-!../../node_modules/babel-loader/lib/index.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./name-pattern.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/babel-loader/lib/index.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./name-pattern.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./name-pattern.vue?vue&type=template&id=0cdf1284&\"\nimport script from \"./name-pattern.vue?vue&type=script&lang=js&\"\nexport * from \"./name-pattern.vue?vue&type=script&lang=js&\"\nimport style0 from \"./name-pattern.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\ncomponent.options.__file = \"name-pattern.vue\"\nexport default component.exports","var render = function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\"img\", {\n class: _vm.plotInfoClass,\n attrs: { src: \"images/info32.png\", width: \"16\", height: \"16\", alt: \"\" }\n })\n}\nvar staticRenderFns = []\nrender._withStripped = true\n\nexport { render, staticRenderFns }","import mod from \"-!../../node_modules/babel-loader/lib/index.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./plot-info.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/babel-loader/lib/index.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./plot-info.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./plot-info.vue?vue&type=template&id=3a3c4424&\"\nimport script from \"./plot-info.vue?vue&type=script&lang=js&\"\nexport * from \"./plot-info.vue?vue&type=script&lang=js&\"\nimport style0 from \"./plot-info.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\ncomponent.options.__file = \"plot-info.vue\"\nexport default component.exports","!function(e,t){\"object\"==typeof exports&&\"object\"==typeof module?module.exports=t():\"function\"==typeof define&&define.amd?define([],t):\"object\"==typeof exports?exports.VueNativeSock=t():e.VueNativeSock=t()}(\"undefined\"!=typeof self?self:this,function(){return function(e){function t(o){if(n[o])return n[o].exports;var r=n[o]={i:o,l:!1,exports:{}};return e[o].call(r.exports,r,r.exports,t),r.l=!0,r.exports}var n={};return t.m=e,t.c=n,t.d=function(e,n,o){t.o(e,n)||Object.defineProperty(e,n,{configurable:!1,enumerable:!0,get:o})},t.n=function(e){var n=e&&e.__esModule?function(){return e.default}:function(){return e};return t.d(n,\"a\",n),n},t.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},t.p=\"\",t(t.s=1)}([function(e,t,n){\"use strict\";function o(e,t){if(!(e instanceof t))throw new TypeError(\"Cannot call a class as a function\")}Object.defineProperty(t,\"__esModule\",{value:!0});var r=function(){function e(e,t){for(var n=0;n-1)&&(o.splice(r,1),this.listeners.set(e,o),!0)}},{key:\"emit\",value:function(e){for(var t=arguments.length,n=Array(t>1?t-1:0),o=1;o2&&void 0!==arguments[2]?arguments[2]:{};if(!t)throw new Error(\"[vue-native-socket] cannot locate connection\");var o=null;n.$setInstance=function(t){e.prototype.$socket=t},n.connectManually?(e.prototype.$connect=function(){o=new i.default(t,n),e.prototype.$socket=o.WebSocket},e.prototype.$disconnect=function(){o&&o.reconnection&&(o.reconnection=!1),e.prototype.$socket&&(e.prototype.$socket.close(),delete e.prototype.$socket)}):(o=new i.default(t,n),e.prototype.$socket=o.WebSocket),e.mixin({created:function(){var e=this,t=this,n=this.$options.sockets;this.$options.sockets=new Proxy({},{set:function(e,n,o){return s.default.addListener(n,o,t),e[n]=o,!0},deleteProperty:function(e,n){return s.default.removeListener(n,t.$options.sockets[n],t),delete e.key,!0}}),n&&Object.keys(n).forEach(function(t){e.$options.sockets[t]=n[t]})},beforeDestroy:function(){var e=this,t=this.$options.sockets;t&&Object.keys(t).forEach(function(t){delete e.$options.sockets[t]})}})}}},function(e,t,n){\"use strict\";function o(e,t){if(!(e instanceof t))throw new TypeError(\"Cannot call a class as a function\")}Object.defineProperty(t,\"__esModule\",{value:!0});var r=function(){function e(e,t){for(var n=0;n1&&void 0!==arguments[1]?arguments[1]:{};o(this,e),this.format=n.format&&n.format.toLowerCase(),this.connectionUrl=t,this.opts=n,this.reconnection=this.opts.reconnection||!1,this.reconnectionAttempts=this.opts.reconnectionAttempts||1/0,this.reconnectionDelay=this.opts.reconnectionDelay||1e3,this.reconnectTimeoutId=0,this.reconnectionCount=0,this.passToStoreHandler=this.opts.passToStoreHandler||!1,this.connect(t,n),n.store&&(this.store=n.store),this.onEvent()}return r(e,[{key:\"connect\",value:function(e){var t=this,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},o=n.protocol||\"\";return this.WebSocket=n.WebSocket||(\"\"===o?new WebSocket(e):new WebSocket(e,o)),\"json\"===this.format&&(\"sendObj\"in this.WebSocket||(this.WebSocket.sendObj=function(e){return t.WebSocket.send(JSON.stringify(e))})),this.WebSocket}},{key:\"reconnect\",value:function(){var e=this;this.reconnectionCount<=this.reconnectionAttempts?(this.reconnectionCount++,clearTimeout(this.reconnectTimeoutId),this.reconnectTimeoutId=setTimeout(function(){e.store&&e.passToStore(\"SOCKET_RECONNECT\",e.reconnectionCount),e.connect(e.connectionUrl,e.opts),e.onEvent()},this.reconnectionDelay)):this.store&&this.passToStore(\"SOCKET_RECONNECT_ERROR\",!0)}},{key:\"onEvent\",value:function(){var e=this;[\"onmessage\",\"onclose\",\"onerror\",\"onopen\"].forEach(function(t){e.WebSocket[t]=function(n){c.default.emit(t,n),e.store&&e.passToStore(\"SOCKET_\"+t,n),e.reconnection&&\"onopen\"===t&&(e.opts.$setInstance(n.currentTarget),e.reconnectionCount=0),e.reconnection&&\"onclose\"===t&&e.reconnect()}})}},{key:\"passToStore\",value:function(e,t){this.passToStoreHandler?this.passToStoreHandler(e,t,this.defaultPassToStore.bind(this)):this.defaultPassToStore(e,t)}},{key:\"defaultPassToStore\",value:function(e,t){if(e.startsWith(\"SOCKET_\")){var n=\"commit\",o=e.toUpperCase(),r=t;\"json\"===this.format&&t.data&&(r=JSON.parse(t.data),r.mutation?o=[r.namespace||\"\",r.mutation].filter(function(e){return!!e}).join(\"/\"):r.action&&(n=\"dispatch\",o=[r.namespace||\"\",r.action].filter(function(e){return!!e}).join(\"/\"))),this.store[n](o,r)}}}]),e}();t.default=s}])});","var _typeof = typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; };\n\n(function (global, factory) {\n (typeof exports === 'undefined' ? 'undefined' : _typeof(exports)) === 'object' && typeof module !== 'undefined' ? module.exports = factory() : typeof define === 'function' && define.amd ? define(factory) : global.AsyncComputed = factory();\n})(this, function () {\n 'use strict';\n\n function isComputedLazy(item) {\n return item.hasOwnProperty('lazy') && item.lazy;\n }\n\n function isLazyActive(vm, key) {\n return vm[lazyActivePrefix + key];\n }\n\n var lazyActivePrefix = 'async_computed$lazy_active$',\n lazyDataPrefix = 'async_computed$lazy_data$';\n\n function initLazy(data, key) {\n data[lazyActivePrefix + key] = false;\n data[lazyDataPrefix + key] = null;\n }\n\n function makeLazyComputed(key) {\n return {\n get: function get() {\n this[lazyActivePrefix + key] = true;\n return this[lazyDataPrefix + key];\n },\n set: function set(value) {\n this[lazyDataPrefix + key] = value;\n }\n };\n }\n\n function silentSetLazy(vm, key, value) {\n vm[lazyDataPrefix + key] = value;\n }\n function silentGetLazy(vm, key) {\n return vm[lazyDataPrefix + key];\n }\n\n var prefix = '_async_computed$';\n var DidNotUpdate = typeof Symbol === 'function' ? Symbol('did-not-update') : {};\n\n var AsyncComputed = {\n install: function install(Vue, pluginOptions) {\n pluginOptions = pluginOptions || {};\n\n Vue.config.optionMergeStrategies.asyncComputed = Vue.config.optionMergeStrategies.computed;\n\n Vue.mixin({\n beforeCreate: function beforeCreate() {\n var optionData = this.$options.data;\n\n if (!this.$options.computed) this.$options.computed = {};\n\n for (var key in this.$options.asyncComputed || {}) {\n this.$options.computed[prefix + key] = getterFn(key, this.$options.asyncComputed[key]);\n }\n\n this.$options.data = function vueAsyncComputedInjectedDataFn() {\n var data = (typeof optionData === 'function' ? optionData.call(this) : optionData) || {};\n for (var _key in this.$options.asyncComputed || {}) {\n var item = this.$options.asyncComputed[_key];\n if (isComputedLazy(item)) {\n initLazy(data, _key);\n this.$options.computed[_key] = makeLazyComputed(_key);\n } else {\n data[_key] = null;\n }\n }\n return data;\n };\n },\n created: function created() {\n var _this = this;\n\n for (var key in this.$options.asyncComputed || {}) {\n var item = this.$options.asyncComputed[key],\n value = generateDefault.call(this, item, pluginOptions);\n if (isComputedLazy(item)) {\n silentSetLazy(this, key, value);\n } else {\n this[key] = value;\n }\n }\n\n var _loop = function _loop(_key2) {\n var promiseId = 0;\n _this.$watch(prefix + _key2, function (newPromise) {\n var thisPromise = ++promiseId;\n\n if (newPromise === DidNotUpdate) {\n return;\n }\n\n if (!newPromise || !newPromise.then) {\n newPromise = Promise.resolve(newPromise);\n }\n\n newPromise.then(function (value) {\n if (thisPromise !== promiseId) return;\n _this[_key2] = value;\n }).catch(function (err) {\n if (thisPromise !== promiseId) return;\n\n if (pluginOptions.errorHandler === false) return;\n\n var handler = pluginOptions.errorHandler === undefined ? console.error.bind(console, 'Error evaluating async computed property:') : pluginOptions.errorHandler;\n\n if (pluginOptions.useRawError) {\n handler(err);\n } else {\n handler(err.stack);\n }\n });\n }, { immediate: true });\n };\n\n for (var _key2 in this.$options.asyncComputed || {}) {\n _loop(_key2);\n }\n }\n });\n }\n };\n\n function getterFn(key, fn) {\n if (typeof fn === 'function') return fn;\n\n var getter = fn.get;\n\n if (fn.hasOwnProperty('watch')) {\n var previousGetter = getter;\n getter = function getter() {\n fn.watch.call(this);\n return previousGetter.call(this);\n };\n }\n\n if (fn.hasOwnProperty('shouldUpdate')) {\n var _previousGetter = getter;\n getter = function getter() {\n if (fn.shouldUpdate.call(this)) {\n return _previousGetter.call(this);\n }\n return DidNotUpdate;\n };\n }\n\n if (isComputedLazy(fn)) {\n var nonLazy = getter;\n getter = function lazyGetter() {\n if (isLazyActive(this, key)) {\n return nonLazy.call(this);\n } else {\n return silentGetLazy(this, key);\n }\n };\n }\n return getter;\n }\n\n function generateDefault(fn, pluginOptions) {\n var defaultValue = null;\n\n if ('default' in fn) {\n defaultValue = fn.default;\n } else if ('default' in pluginOptions) {\n defaultValue = pluginOptions.default;\n }\n\n if (typeof defaultValue === 'function') {\n return defaultValue.call(this);\n } else {\n return defaultValue;\n }\n }\n\n /* istanbul ignore if */\n if (typeof window !== 'undefined' && window.Vue) {\n // Auto install in dist mode\n window.Vue.use(AsyncComputed);\n }\n\n return AsyncComputed;\n});\n","(function webpackUniversalModuleDefinition(root, factory) {\n\tif(typeof exports === 'object' && typeof module === 'object')\n\t\tmodule.exports = factory(require(\"vue\"));\n\telse if(typeof define === 'function' && define.amd)\n\t\tdefine([\"vue\"], factory);\n\telse if(typeof exports === 'object')\n\t\texports[\"vue-js-toggle-button\"] = factory(require(\"vue\"));\n\telse\n\t\troot[\"vue-js-toggle-button\"] = factory(root[\"vue\"]);\n})(this, function(__WEBPACK_EXTERNAL_MODULE_1__) {\nreturn \n\n\n// WEBPACK FOOTER //\n// webpack/universalModuleDefinition"," \t// The module cache\n \tvar installedModules = {};\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// identity function for calling harmony imports with the correct context\n \t__webpack_require__.i = function(value) { return value; };\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, {\n \t\t\t\tconfigurable: false,\n \t\t\t\tenumerable: true,\n \t\t\t\tget: getter\n \t\t\t});\n \t\t}\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 = \"/dist/\";\n\n \t// Load entry module and return exports\n \treturn __webpack_require__(__webpack_require__.s = 3);\n\n\n\n// WEBPACK FOOTER //\n// webpack/bootstrap 81b0bbab2ea7705a026e","\n/* styles */\nrequire(\"!!vue-style-loader!css-loader!../node_modules/vue-loader/lib/style-compiler/index?{\\\"id\\\":\\\"data-v-25adc6c0\\\",\\\"scoped\\\":true,\\\"hasInlineConfig\\\":false}!sass-loader!../node_modules/vue-loader/lib/selector?type=styles&index=0!./Button.vue\")\n\nvar Component = require(\"!../node_modules/vue-loader/lib/component-normalizer\")(\n /* script */\n require(\"!!babel-loader!../node_modules/vue-loader/lib/selector?type=script&index=0!./Button.vue\"),\n /* template */\n require(\"!!../node_modules/vue-loader/lib/template-compiler/index?{\\\"id\\\":\\\"data-v-25adc6c0\\\"}!../node_modules/vue-loader/lib/selector?type=template&index=0!./Button.vue\"),\n /* scopeId */\n \"data-v-25adc6c0\",\n /* cssModules */\n null\n)\n\nmodule.exports = Component.exports\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/Button.vue\n// module id = 0\n// module chunks = 0","module.exports = __WEBPACK_EXTERNAL_MODULE_1__;\n\n\n//////////////////\n// WEBPACK FOOTER\n// external \"vue\"\n// module id = 1\n// module chunks = 0","\n\n \n \n
\n
\n
\n \n \n \n\n\n\n\n\n\n\n\n\n// WEBPACK FOOTER //\n// Button.vue?3b36fc63","import Vue from 'vue'\nimport Button from './Button.vue'\n\nconst plugin = {\n install(Vue, options) {\n \tVue.component('ToggleButton', Button)\n }\n}\n\nexport default plugin\n\n\n\n// WEBPACK FOOTER //\n// ./src/index.js","exports = module.exports = require(\"../node_modules/css-loader/lib/css-base.js\")();\n// imports\n\n\n// module\nexports.push([module.id, \".vue-js-switch[data-v-25adc6c0]{display:inline-block;position:relative;overflow:hidden;vertical-align:middle;user-select:none;font-size:10px;cursor:pointer}.vue-js-switch .v-switch-input[data-v-25adc6c0]{display:none}.vue-js-switch .v-switch-label[data-v-25adc6c0]{position:absolute;top:0;font-weight:600;color:#fff}.vue-js-switch .v-switch-label.v-left[data-v-25adc6c0]{left:10px}.vue-js-switch .v-switch-label.v-right[data-v-25adc6c0]{right:10px}.vue-js-switch .v-switch-core[data-v-25adc6c0]{display:block;position:relative;box-sizing:border-box;outline:0;margin:0;transition:border-color .3s,background-color .3s;user-select:none}.vue-js-switch .v-switch-core .v-switch-button[data-v-25adc6c0]{display:block;position:absolute;overflow:hidden;top:0;left:0;transform:translate3d(3px,3px,0);border-radius:100%;background-color:#fff}.vue-js-switch.disabled[data-v-25adc6c0]{pointer-events:none;opacity:.6}\", \"\"]);\n\n// exports\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/css-loader!./~/vue-loader/lib/style-compiler?{\"id\":\"data-v-25adc6c0\",\"scoped\":true,\"hasInlineConfig\":false}!./~/sass-loader/lib/loader.js!./~/vue-loader/lib/selector.js?type=styles&index=0!./src/Button.vue\n// module id = 4\n// module chunks = 0","/*\r\n\tMIT License http://www.opensource.org/licenses/mit-license.php\r\n\tAuthor Tobias Koppers @sokra\r\n*/\r\n// css base code, injected by the css-loader\r\nmodule.exports = function() {\r\n\tvar list = [];\r\n\r\n\t// return the list of modules as css string\r\n\tlist.toString = function toString() {\r\n\t\tvar result = [];\r\n\t\tfor(var i = 0; i < this.length; i++) {\r\n\t\t\tvar item = this[i];\r\n\t\t\tif(item[2]) {\r\n\t\t\t\tresult.push(\"@media \" + item[2] + \"{\" + item[1] + \"}\");\r\n\t\t\t} else {\r\n\t\t\t\tresult.push(item[1]);\r\n\t\t\t}\r\n\t\t}\r\n\t\treturn result.join(\"\");\r\n\t};\r\n\r\n\t// import a list of modules into the list\r\n\tlist.i = function(modules, mediaQuery) {\r\n\t\tif(typeof modules === \"string\")\r\n\t\t\tmodules = [[null, modules, \"\"]];\r\n\t\tvar alreadyImportedModules = {};\r\n\t\tfor(var i = 0; i < this.length; i++) {\r\n\t\t\tvar id = this[i][0];\r\n\t\t\tif(typeof id === \"number\")\r\n\t\t\t\talreadyImportedModules[id] = true;\r\n\t\t}\r\n\t\tfor(i = 0; i < modules.length; i++) {\r\n\t\t\tvar item = modules[i];\r\n\t\t\t// skip already imported module\r\n\t\t\t// this implementation is not 100% perfect for weird media query combinations\r\n\t\t\t// when a module is imported multiple times with different media queries.\r\n\t\t\t// I hope this will never occur (Hey this way we have smaller bundles)\r\n\t\t\tif(typeof item[0] !== \"number\" || !alreadyImportedModules[item[0]]) {\r\n\t\t\t\tif(mediaQuery && !item[2]) {\r\n\t\t\t\t\titem[2] = mediaQuery;\r\n\t\t\t\t} else if(mediaQuery) {\r\n\t\t\t\t\titem[2] = \"(\" + item[2] + \") and (\" + mediaQuery + \")\";\r\n\t\t\t\t}\r\n\t\t\t\tlist.push(item);\r\n\t\t\t}\r\n\t\t}\r\n\t};\r\n\treturn list;\r\n};\r\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/css-loader/lib/css-base.js\n// module id = 5\n// module chunks = 0","// this module is a runtime utility for cleaner component module output and will\n// be included in the final webpack user bundle\n\nmodule.exports = function normalizeComponent (\n rawScriptExports,\n compiledTemplate,\n scopeId,\n cssModules\n) {\n var esModule\n var scriptExports = rawScriptExports = rawScriptExports || {}\n\n // ES6 modules interop\n var type = typeof rawScriptExports.default\n if (type === 'object' || type === 'function') {\n esModule = rawScriptExports\n scriptExports = rawScriptExports.default\n }\n\n // Vue.extend constructor export interop\n var options = typeof scriptExports === 'function'\n ? scriptExports.options\n : scriptExports\n\n // render functions\n if (compiledTemplate) {\n options.render = compiledTemplate.render\n options.staticRenderFns = compiledTemplate.staticRenderFns\n }\n\n // scopedId\n if (scopeId) {\n options._scopeId = scopeId\n }\n\n // inject cssModules\n if (cssModules) {\n var computed = Object.create(options.computed || null)\n Object.keys(cssModules).forEach(function (key) {\n var module = cssModules[key]\n computed[key] = function () { return module }\n })\n options.computed = computed\n }\n\n return {\n esModule: esModule,\n exports: scriptExports,\n options: options\n }\n}\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/vue-loader/lib/component-normalizer.js\n// module id = 6\n// module chunks = 0","module.exports={render:function (){var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;\n return _c('label', {\n class: _vm.className,\n attrs: {\n \"role\": \"checkbox\",\n \"aria-checked\": _vm.ariaChecked\n }\n }, [_c('input', {\n staticClass: \"v-switch-input\",\n attrs: {\n \"type\": \"checkbox\",\n \"name\": _vm.name\n },\n on: {\n \"change\": function($event) {\n $event.stopPropagation();\n return _vm.toggle($event)\n }\n }\n }), _vm._v(\" \"), _c('div', {\n staticClass: \"v-switch-core\",\n style: (_vm.coreStyle)\n }, [_c('div', {\n staticClass: \"v-switch-button\",\n style: (_vm.buttonStyle)\n })]), _vm._v(\" \"), (_vm.labels) ? [(_vm.toggled) ? _c('span', {\n staticClass: \"v-switch-label v-left\",\n style: (_vm.labelStyle),\n domProps: {\n \"innerHTML\": _vm._s(_vm.labelChecked)\n }\n }) : _c('span', {\n staticClass: \"v-switch-label v-right\",\n style: (_vm.labelStyle),\n domProps: {\n \"innerHTML\": _vm._s(_vm.labelUnchecked)\n }\n })] : _vm._e()], 2)\n},staticRenderFns: []}\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./~/vue-loader/lib/template-compiler?{\"id\":\"data-v-25adc6c0\"}!./~/vue-loader/lib/selector.js?type=template&index=0!./src/Button.vue\n// module id = 7\n// module chunks = 0","// style-loader: Adds some css to the DOM by adding a