vue-nav-tabs
Advanced tools
Comparing version 0.3.0 to 0.3.1
@@ -1,1 +0,1 @@ | ||
{"errors":[],"warnings":[],"version":"2.4.1","hash":"1aa9f7373d2eb022fe96","publicPath":"","assetsByChunkName":{"main":["vue-tabs.js","vue-tabs.min.css"]},"assets":[{"name":"vue-tabs.js","size":7047,"chunks":[0],"chunkNames":["main"],"emitted":true},{"name":"vue-tabs.min.css","size":3423,"chunks":[0],"chunkNames":["main"],"emitted":true},{"name":"stats.json","size":0,"chunks":[],"chunkNames":[]}],"entrypoints":{"main":{"chunks":[0],"assets":["vue-tabs.js","vue-tabs.min.css"]}},"chunks":[{"id":0,"rendered":true,"initial":true,"entry":true,"extraAsync":false,"size":12978,"names":["main"],"files":["vue-tabs.js","vue-tabs.min.css"],"hash":"06827f271c19a60a88ef","parents":[],"origins":[{"moduleId":5,"module":"C:\\work\\Github\\vue-tabs\\node_modules\\babel-loader\\lib\\index.js!C:\\work\\Github\\vue-tabs\\src\\index.js","moduleIdentifier":"C:\\work\\Github\\vue-tabs\\node_modules\\babel-loader\\lib\\index.js!C:\\work\\Github\\vue-tabs\\src\\index.js","moduleName":"./src/index.js","loc":"","name":"main","reasons":[]}]}],"modules":[{"id":0,"identifier":"C:\\work\\Github\\vue-tabs\\node_modules\\vue-loader\\lib\\component-normalizer.js","name":"./~/vue-loader/lib/component-normalizer.js","index":4,"index2":2,"size":1275,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"assets":[],"issuer":"C:\\work\\Github\\vue-tabs\\node_modules\\vue-loader\\index.js??ref--3!C:\\work\\Github\\vue-tabs\\src\\components\\VueTabs.vue","issuerId":2,"issuerName":"./src/components/VueTabs.vue","failed":false,"errors":0,"warnings":0,"reasons":[{"moduleId":1,"moduleIdentifier":"C:\\work\\Github\\vue-tabs\\node_modules\\vue-loader\\index.js??ref--3!C:\\work\\Github\\vue-tabs\\src\\components\\TabContent.vue","module":"./src/components/TabContent.vue","moduleName":"./src/components/TabContent.vue","type":"cjs require","userRequest":"!../../node_modules/vue-loader/lib/component-normalizer","loc":"1:16-82"},{"moduleId":2,"moduleIdentifier":"C:\\work\\Github\\vue-tabs\\node_modules\\vue-loader\\index.js??ref--3!C:\\work\\Github\\vue-tabs\\src\\components\\VueTabs.vue","module":"./src/components/VueTabs.vue","moduleName":"./src/components/VueTabs.vue","type":"cjs require","userRequest":"!../../node_modules/vue-loader/lib/component-normalizer","loc":"6:16-82"}],"usedExports":true,"providedExports":null,"depth":2,"source":"// 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"},{"id":1,"identifier":"C:\\work\\Github\\vue-tabs\\node_modules\\vue-loader\\index.js??ref--3!C:\\work\\Github\\vue-tabs\\src\\components\\TabContent.vue","name":"./src/components/TabContent.vue","index":7,"index2":8,"size":1312,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"assets":[],"issuer":"C:\\work\\Github\\vue-tabs\\node_modules\\babel-loader\\lib\\index.js!C:\\work\\Github\\vue-tabs\\src\\index.js","issuerId":5,"issuerName":"./src/index.js","failed":false,"errors":0,"warnings":0,"reasons":[{"moduleId":5,"moduleIdentifier":"C:\\work\\Github\\vue-tabs\\node_modules\\babel-loader\\lib\\index.js!C:\\work\\Github\\vue-tabs\\src\\index.js","module":"./src/index.js","moduleName":"./src/index.js","type":"harmony import","userRequest":"./components/TabContent.vue","loc":"2:0-47"}],"usedExports":["default"],"providedExports":null,"depth":1,"source":"var 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!./TabContent.vue\"),\n /* template */\n require(\"!!../../node_modules/vue-loader/lib/template-compiler/index?{\\\"id\\\":\\\"data-v-235aa9d6\\\"}!../../node_modules/vue-loader/lib/selector?type=template&index=0!./TabContent.vue\"),\n /* scopeId */\n null,\n /* cssModules */\n null\n)\nComponent.options.__file = \"C:\\\\work\\\\Github\\\\vue-tabs\\\\src\\\\components\\\\TabContent.vue\"\nif (Component.esModule && Object.keys(Component.esModule).some(function (key) {return key !== \"default\" && key !== \"__esModule\"})) {console.error(\"named exports are not supported in *.vue files.\")}\nif (Component.options.functional) {console.error(\"[vue-loader] TabContent.vue: functional components are not supported with templates, they should use render functions.\")}\n\n/* hot reload */\nif (module.hot) {(function () {\n var hotAPI = require(\"vue-hot-reload-api\")\n hotAPI.install(require(\"vue\"), false)\n if (!hotAPI.compatible) return\n module.hot.accept()\n if (!module.hot.data) {\n hotAPI.createRecord(\"data-v-235aa9d6\", Component.options)\n } else {\n hotAPI.reload(\"data-v-235aa9d6\", Component.options)\n }\n})()}\n\nmodule.exports = Component.exports\n"},{"id":2,"identifier":"C:\\work\\Github\\vue-tabs\\node_modules\\vue-loader\\index.js??ref--3!C:\\work\\Github\\vue-tabs\\src\\components\\VueTabs.vue","name":"./src/components/VueTabs.vue","index":1,"index2":5,"size":2015,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"assets":[],"issuer":"C:\\work\\Github\\vue-tabs\\node_modules\\babel-loader\\lib\\index.js!C:\\work\\Github\\vue-tabs\\src\\index.js","issuerId":5,"issuerName":"./src/index.js","failed":false,"errors":0,"warnings":0,"reasons":[{"moduleId":5,"moduleIdentifier":"C:\\work\\Github\\vue-tabs\\node_modules\\babel-loader\\lib\\index.js!C:\\work\\Github\\vue-tabs\\src\\index.js","module":"./src/index.js","moduleName":"./src/index.js","type":"harmony import","userRequest":"./components/VueTabs.vue","loc":"1:0-47"}],"usedExports":["default"],"providedExports":null,"depth":1,"source":"\n/* styles */\nrequire(\"!!../../node_modules/extract-text-webpack-plugin/loader.js?{\\\"omit\\\":0,\\\"remove\\\":true}!css-loader?{\\\"minimize\\\":true}!../../node_modules/vue-loader/lib/style-compiler/index?{\\\"id\\\":\\\"data-v-62caa6e2\\\",\\\"scoped\\\":false,\\\"hasInlineConfig\\\":false}!../../node_modules/vue-loader/lib/selector?type=styles&index=0!./VueTabs.vue\")\nrequire(\"!!../../node_modules/extract-text-webpack-plugin/loader.js?{\\\"omit\\\":0,\\\"remove\\\":true}!css-loader?{\\\"minimize\\\":true}!../../node_modules/vue-loader/lib/style-compiler/index?{\\\"id\\\":\\\"data-v-62caa6e2\\\",\\\"scoped\\\":false,\\\"hasInlineConfig\\\":false}!sass-loader?{\\\"minimize\\\":true}!../../node_modules/vue-loader/lib/selector?type=styles&index=1!./VueTabs.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!./VueTabs.vue\"),\n /* template */\n require(\"!!../../node_modules/vue-loader/lib/template-compiler/index?{\\\"id\\\":\\\"data-v-62caa6e2\\\"}!../../node_modules/vue-loader/lib/selector?type=template&index=0!./VueTabs.vue\"),\n /* scopeId */\n null,\n /* cssModules */\n null\n)\nComponent.options.__file = \"C:\\\\work\\\\Github\\\\vue-tabs\\\\src\\\\components\\\\VueTabs.vue\"\nif (Component.esModule && Object.keys(Component.esModule).some(function (key) {return key !== \"default\" && key !== \"__esModule\"})) {console.error(\"named exports are not supported in *.vue files.\")}\nif (Component.options.functional) {console.error(\"[vue-loader] VueTabs.vue: functional components are not supported with templates, they should use render functions.\")}\n\n/* hot reload */\nif (module.hot) {(function () {\n var hotAPI = require(\"vue-hot-reload-api\")\n hotAPI.install(require(\"vue\"), false)\n if (!hotAPI.compatible) return\n module.hot.accept()\n if (!module.hot.data) {\n hotAPI.createRecord(\"data-v-62caa6e2\", Component.options)\n } else {\n hotAPI.reload(\"data-v-62caa6e2\", Component.options)\n }\n})()}\n\nmodule.exports = Component.exports\n"},{"id":3,"identifier":"C:\\work\\Github\\vue-tabs\\node_modules\\babel-loader\\lib\\index.js!C:\\work\\Github\\vue-tabs\\node_modules\\vue-loader\\lib\\selector.js?type=script&index=0!C:\\work\\Github\\vue-tabs\\src\\components\\TabContent.vue","name":"./~/babel-loader/lib!./~/vue-loader/lib/selector.js?type=script&index=0!./src/components/TabContent.vue","index":8,"index2":6,"size":627,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"assets":[],"issuer":"C:\\work\\Github\\vue-tabs\\node_modules\\vue-loader\\index.js??ref--3!C:\\work\\Github\\vue-tabs\\src\\components\\TabContent.vue","issuerId":1,"issuerName":"./src/components/TabContent.vue","failed":false,"errors":0,"warnings":0,"reasons":[{"moduleId":1,"moduleIdentifier":"C:\\work\\Github\\vue-tabs\\node_modules\\vue-loader\\index.js??ref--3!C:\\work\\Github\\vue-tabs\\src\\components\\TabContent.vue","module":"./src/components/TabContent.vue","moduleName":"./src/components/TabContent.vue","type":"cjs require","userRequest":"!!babel-loader!../../node_modules/vue-loader/lib/selector?type=script&index=0!./TabContent.vue","loc":"3:2-107"}],"usedExports":true,"providedExports":["default"],"depth":2,"source":"\n\nexport default {\n name: 'v-tab',\n props: {\n title: {\n type: String,\n default: ''\n },\n icon: {\n type: String,\n default: ''\n },\n\n beforeChange: {\n type: Function\n },\n id: String,\n route: {\n type: [String, Object]\n },\n transitionName: String,\n transitionMode: String\n },\n computed: {\n isValidParent: function isValidParent() {\n return this.$parent.$options.name === 'vue-tabs';\n },\n hash: function hash() {\n return '#' + this.id;\n }\n },\n data: function data() {\n return {\n active: false,\n validationError: null\n };\n }\n};"},{"id":4,"identifier":"C:\\work\\Github\\vue-tabs\\node_modules\\babel-loader\\lib\\index.js!C:\\work\\Github\\vue-tabs\\node_modules\\vue-loader\\lib\\selector.js?type=script&index=0!C:\\work\\Github\\vue-tabs\\src\\components\\VueTabs.vue","name":"./~/babel-loader/lib!./~/vue-loader/lib/selector.js?type=script&index=0!./src/components/VueTabs.vue","index":5,"index2":3,"size":4873,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"assets":[],"issuer":"C:\\work\\Github\\vue-tabs\\node_modules\\vue-loader\\index.js??ref--3!C:\\work\\Github\\vue-tabs\\src\\components\\VueTabs.vue","issuerId":2,"issuerName":"./src/components/VueTabs.vue","failed":false,"errors":0,"warnings":0,"reasons":[{"moduleId":2,"moduleIdentifier":"C:\\work\\Github\\vue-tabs\\node_modules\\vue-loader\\index.js??ref--3!C:\\work\\Github\\vue-tabs\\src\\components\\VueTabs.vue","module":"./src/components/VueTabs.vue","moduleName":"./src/components/VueTabs.vue","type":"cjs require","userRequest":"!!babel-loader!../../node_modules/vue-loader/lib/selector?type=script&index=0!./VueTabs.vue","loc":"8:2-104"}],"usedExports":true,"providedExports":["default"],"depth":2,"source":"\n\nexport default {\n name: 'vue-tabs',\n props: {\n activeTabColor: String,\n activeTextColor: String,\n\n textPosition: {\n type: String,\n default: 'center'\n },\n\n type: {\n type: String,\n default: 'tabs'\n },\n direction: {\n type: String,\n default: 'horizontal'\n },\n\n centered: Boolean,\n\n startIndex: {\n type: Number,\n default: 0\n }\n },\n data: function data() {\n return {\n activeTabIndex: 0,\n tabs: []\n };\n },\n\n computed: {\n tabCount: function tabCount() {\n return this.tabs.length;\n },\n isTabShape: function isTabShape() {\n return this.type === 'tabs';\n },\n isStacked: function isStacked() {\n return this.direction === 'vertical';\n },\n classList: function classList() {\n var navType = this.isTabShape ? 'nav-tabs' : 'nav-pills';\n var centerClass = this.centered ? 'nav-justified' : '';\n var isStacked = this.isStacked ? 'nav-stacked' : '';\n var classes = 'nav ' + navType + ' ' + centerClass + ' ' + isStacked;\n return classes;\n },\n stackedClass: function stackedClass() {\n return this.isStacked ? 'stacked' : '';\n },\n activeTabStyle: function activeTabStyle() {\n return {\n backgroundColor: this.activeTabColor,\n color: this.activeTextColor\n };\n },\n activeTitleColor: function activeTitleColor() {\n return {\n color: this.activeTabColor\n };\n }\n },\n methods: {\n navigateToTab: function navigateToTab(index) {\n var _this = this;\n\n this.beforeTabChange(this.activeTabIndex, function () {\n _this.changeTab(_this.activeTabIndex, index);\n });\n },\n setLoading: function setLoading(value) {\n this.loading = value;\n this.$emit('on-loading', value);\n },\n setValidationError: function setValidationError(tab, error) {\n this.tabs[this.activeTabIndex].validationError = error;\n this.$emit('on-error', error);\n if (error && tab.$emit) {\n tab.$emit('on-error', error);\n }\n },\n validateBeforeChange: function validateBeforeChange(promiseFn, tab, callback) {\n var _this2 = this;\n\n this.setValidationError(tab, null);\n\n if (promiseFn.then && typeof promiseFn.then === 'function') {\n this.setLoading(true);\n promiseFn.then(function (res) {\n _this2.setLoading(false);\n var validationResult = res === true;\n _this2.executeBeforeChange(validationResult, callback);\n }).catch(function (error) {\n _this2.setLoading(false);\n _this2.setValidationError(tab, error);\n });\n } else {\n var validationResult = promiseFn === true;\n this.executeBeforeChange(validationResult, callback);\n }\n },\n executeBeforeChange: function executeBeforeChange(validationResult, callback) {\n this.$emit('on-validate', validationResult, this.activeTabIndex);\n if (validationResult) {\n callback();\n } else {\n this.tabs[this.activeTabIndex].validationError = 'error';\n }\n },\n beforeTabChange: function beforeTabChange(index, callback) {\n if (this.loading) {\n return;\n }\n var oldTab = this.tabs[index];\n if (oldTab && oldTab.beforeChange !== undefined) {\n var tabChangeRes = oldTab.beforeChange();\n this.validateBeforeChange(tabChangeRes, oldTab, callback);\n } else {\n callback();\n }\n },\n changeTab: function changeTab(oldIndex, newIndex) {\n if (newIndex < 0 || newIndex >= this.tabCount) {\n return;\n }\n var oldTab = this.tabs[oldIndex];\n var newTab = this.tabs[newIndex];\n if (oldTab) {\n oldTab.active = false;\n if (newTab) {\n newTab.active = true;\n }\n }\n this.activeTabIndex = newIndex;\n this.$emit('tab-change', newIndex, newTab, oldTab);\n this.tryChangeRoute(newTab);\n },\n tryChangeRoute: function tryChangeRoute(tab) {\n if (this.$router && tab && tab.route) {\n this.$router.push(tab.route);\n }\n }\n },\n mounted: function mounted() {\n this.tabs = this.$children.filter(function (comp) {\n return comp.$options.name === 'v-tab';\n });\n if (this.tabs.length > 0 && this.startIndex === 0) {\n var firstTab = this.tabs[this.activeTabIndex];\n firstTab.active = true;\n this.tryChangeRoute(firstTab);\n }\n if (this.startIndex < this.tabs.length) {\n var tabToActivate = this.tabs[this.startIndex];\n this.activeTabIndex = this.startIndex;\n tabToActivate.active = true;\n this.tryChangeRoute(this.tabs[this.startIndex]);\n } else {\n console.warn('Prop startIndex set to ' + this.startIndex + ' is greater than the number of tabs - ' + this.tabs.length + '. Make sure that the starting index is less than the number of tabs registered');\n }\n }\n};"},{"id":5,"identifier":"C:\\work\\Github\\vue-tabs\\node_modules\\babel-loader\\lib\\index.js!C:\\work\\Github\\vue-tabs\\src\\index.js","name":"./src/index.js","index":0,"index2":9,"size":384,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"assets":[],"issuer":null,"issuerId":null,"issuerName":null,"failed":false,"errors":0,"warnings":0,"reasons":[],"usedExports":true,"providedExports":["default"],"depth":0,"source":"import VueTabs from './components/VueTabs.vue';\nimport VTab from './components/TabContent.vue';\nvar VueTabsPlugin = {\n VueTabs: VueTabs,\n VTab: VTab,\n install: function install(Vue) {\n Vue.component('vue-tabs', VueTabs);\n Vue.component('v-tab', VTab);\n }\n};\n\nif (typeof window !== 'undefined' && window.Vue) {\n window.Vue.use(VueTabsPlugin);\n}\nexport default VueTabsPlugin;"},{"id":6,"identifier":"C:\\work\\Github\\vue-tabs\\node_modules\\extract-text-webpack-plugin\\loader.js?{\"omit\":0,\"remove\":true}!C:\\work\\Github\\vue-tabs\\node_modules\\css-loader\\index.js?{\"minimize\":true}!C:\\work\\Github\\vue-tabs\\node_modules\\vue-loader\\lib\\style-compiler\\index.js?{\"id\":\"data-v-62caa6e2\",\"scoped\":false,\"hasInlineConfig\":false}!C:\\work\\Github\\vue-tabs\\node_modules\\sass-loader\\lib\\loader.js?{\"minimize\":true}!C:\\work\\Github\\vue-tabs\\node_modules\\vue-loader\\lib\\selector.js?type=styles&index=1!C:\\work\\Github\\vue-tabs\\src\\components\\VueTabs.vue","name":"./~/extract-text-webpack-plugin/loader.js?{\"omit\":0,\"remove\":true}!./~/css-loader?{\"minimize\":true}!./~/vue-loader/lib/style-compiler?{\"id\":\"data-v-62caa6e2\",\"scoped\":false,\"hasInlineConfig\":false}!./~/sass-loader/lib/loader.js?{\"minimize\":true}!./~/vue-loader/lib/selector.js?type=styles&index=1!./src/components/VueTabs.vue","index":3,"index2":1,"size":41,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"assets":[],"issuer":"C:\\work\\Github\\vue-tabs\\node_modules\\vue-loader\\index.js??ref--3!C:\\work\\Github\\vue-tabs\\src\\components\\VueTabs.vue","issuerId":2,"issuerName":"./src/components/VueTabs.vue","failed":false,"errors":0,"warnings":0,"reasons":[{"moduleId":2,"moduleIdentifier":"C:\\work\\Github\\vue-tabs\\node_modules\\vue-loader\\index.js??ref--3!C:\\work\\Github\\vue-tabs\\src\\components\\VueTabs.vue","module":"./src/components/VueTabs.vue","moduleName":"./src/components/VueTabs.vue","type":"cjs require","userRequest":"!!../../node_modules/extract-text-webpack-plugin/loader.js?{\"omit\":0,\"remove\":true}!css-loader?{\"minimize\":true}!../../node_modules/vue-loader/lib/style-compiler/index?{\"id\":\"data-v-62caa6e2\",\"scoped\":false,\"hasInlineConfig\":false}!sass-loader?{\"minimize\":true}!../../node_modules/vue-loader/lib/selector?type=styles&index=1!./VueTabs.vue","loc":"4:0-365"}],"usedExports":true,"providedExports":null,"depth":2,"source":"// removed by extract-text-webpack-plugin"},{"id":7,"identifier":"C:\\work\\Github\\vue-tabs\\node_modules\\extract-text-webpack-plugin\\loader.js?{\"omit\":0,\"remove\":true}!C:\\work\\Github\\vue-tabs\\node_modules\\css-loader\\index.js?{\"minimize\":true}!C:\\work\\Github\\vue-tabs\\node_modules\\vue-loader\\lib\\style-compiler\\index.js?{\"id\":\"data-v-62caa6e2\",\"scoped\":false,\"hasInlineConfig\":false}!C:\\work\\Github\\vue-tabs\\node_modules\\vue-loader\\lib\\selector.js?type=styles&index=0!C:\\work\\Github\\vue-tabs\\src\\components\\VueTabs.vue","name":"./~/extract-text-webpack-plugin/loader.js?{\"omit\":0,\"remove\":true}!./~/css-loader?{\"minimize\":true}!./~/vue-loader/lib/style-compiler?{\"id\":\"data-v-62caa6e2\",\"scoped\":false,\"hasInlineConfig\":false}!./~/vue-loader/lib/selector.js?type=styles&index=0!./src/components/VueTabs.vue","index":2,"index2":0,"size":41,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"assets":[],"issuer":"C:\\work\\Github\\vue-tabs\\node_modules\\vue-loader\\index.js??ref--3!C:\\work\\Github\\vue-tabs\\src\\components\\VueTabs.vue","issuerId":2,"issuerName":"./src/components/VueTabs.vue","failed":false,"errors":0,"warnings":0,"reasons":[{"moduleId":2,"moduleIdentifier":"C:\\work\\Github\\vue-tabs\\node_modules\\vue-loader\\index.js??ref--3!C:\\work\\Github\\vue-tabs\\src\\components\\VueTabs.vue","module":"./src/components/VueTabs.vue","moduleName":"./src/components/VueTabs.vue","type":"cjs require","userRequest":"!!../../node_modules/extract-text-webpack-plugin/loader.js?{\"omit\":0,\"remove\":true}!css-loader?{\"minimize\":true}!../../node_modules/vue-loader/lib/style-compiler/index?{\"id\":\"data-v-62caa6e2\",\"scoped\":false,\"hasInlineConfig\":false}!../../node_modules/vue-loader/lib/selector?type=styles&index=0!./VueTabs.vue","loc":"3:0-333"}],"usedExports":true,"providedExports":null,"depth":2,"source":"// removed by extract-text-webpack-plugin"},{"id":8,"identifier":"C:\\work\\Github\\vue-tabs\\node_modules\\vue-loader\\lib\\template-compiler\\index.js?{\"id\":\"data-v-235aa9d6\"}!C:\\work\\Github\\vue-tabs\\node_modules\\vue-loader\\lib\\selector.js?type=template&index=0!C:\\work\\Github\\vue-tabs\\src\\components\\TabContent.vue","name":"./~/vue-loader/lib/template-compiler?{\"id\":\"data-v-235aa9d6\"}!./~/vue-loader/lib/selector.js?type=template&index=0!./src/components/TabContent.vue","index":9,"index2":7,"size":502,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"assets":[],"issuer":"C:\\work\\Github\\vue-tabs\\node_modules\\vue-loader\\index.js??ref--3!C:\\work\\Github\\vue-tabs\\src\\components\\TabContent.vue","issuerId":1,"issuerName":"./src/components/TabContent.vue","failed":false,"errors":0,"warnings":0,"reasons":[{"moduleId":1,"moduleIdentifier":"C:\\work\\Github\\vue-tabs\\node_modules\\vue-loader\\index.js??ref--3!C:\\work\\Github\\vue-tabs\\src\\components\\TabContent.vue","module":"./src/components/TabContent.vue","moduleName":"./src/components/TabContent.vue","type":"cjs require","userRequest":"!!../../node_modules/vue-loader/lib/template-compiler/index?{\"id\":\"data-v-235aa9d6\"}!../../node_modules/vue-loader/lib/selector?type=template&index=0!./TabContent.vue","loc":"5:2-183"}],"usedExports":true,"providedExports":null,"depth":2,"source":"module.exports={render:function (){var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;\n return _c('section', {\n staticClass: \"tab-container\",\n attrs: {\n \"role\": \"tabpanel\",\n \"id\": _vm.hash,\n \"aria-hidden\": !_vm.active\n }\n }, [_vm._t(\"default\")], 2)\n},staticRenderFns: []}\nmodule.exports.render._withStripped = true\nif (module.hot) {\n module.hot.accept()\n if (module.hot.data) {\n require(\"vue-hot-reload-api\").rerender(\"data-v-235aa9d6\", module.exports)\n }\n}"},{"id":9,"identifier":"C:\\work\\Github\\vue-tabs\\node_modules\\vue-loader\\lib\\template-compiler\\index.js?{\"id\":\"data-v-62caa6e2\"}!C:\\work\\Github\\vue-tabs\\node_modules\\vue-loader\\lib\\selector.js?type=template&index=0!C:\\work\\Github\\vue-tabs\\src\\components\\VueTabs.vue","name":"./~/vue-loader/lib/template-compiler?{\"id\":\"data-v-62caa6e2\"}!./~/vue-loader/lib/selector.js?type=template&index=0!./src/components/VueTabs.vue","index":6,"index2":4,"size":1908,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"assets":[],"issuer":"C:\\work\\Github\\vue-tabs\\node_modules\\vue-loader\\index.js??ref--3!C:\\work\\Github\\vue-tabs\\src\\components\\VueTabs.vue","issuerId":2,"issuerName":"./src/components/VueTabs.vue","failed":false,"errors":0,"warnings":0,"reasons":[{"moduleId":2,"moduleIdentifier":"C:\\work\\Github\\vue-tabs\\node_modules\\vue-loader\\index.js??ref--3!C:\\work\\Github\\vue-tabs\\src\\components\\VueTabs.vue","module":"./src/components/VueTabs.vue","moduleName":"./src/components/VueTabs.vue","type":"cjs require","userRequest":"!!../../node_modules/vue-loader/lib/template-compiler/index?{\"id\":\"data-v-62caa6e2\"}!../../node_modules/vue-loader/lib/selector?type=template&index=0!./VueTabs.vue","loc":"10:2-180"}],"usedExports":true,"providedExports":null,"depth":2,"source":"module.exports={render:function (){var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;\n return _c('div', {\n staticClass: \"vue-tabs\",\n class: _vm.stackedClass\n }, [_c('ul', {\n class: _vm.classList,\n attrs: {\n \"role\": \"tablist\"\n }\n }, [_vm._l((_vm.tabs), function(tab, index) {\n return _vm._t(\"tab\", [_c('li', {\n key: tab,\n staticClass: \"tab\",\n class: {\n active: tab.active\n },\n attrs: {\n \"role\": \"presentation\"\n }\n }, [(_vm.textPosition === 'top') ? _c('span', {\n staticClass: \"title title_top\",\n style: (tab.active ? _vm.activeTitleColor : {})\n }, [_vm._v(\"\\n \" + _vm._s(tab.title) + \"\\n \")]) : _vm._e(), _vm._v(\" \"), _c('a', {\n style: (tab.active ? _vm.activeTabStyle : {}),\n attrs: {\n \"href\": (\"#\" + (tab.id)),\n \"aria-selected\": tab.active,\n \"aria-controls\": (\"#\" + (tab.id)),\n \"role\": \"tab\"\n },\n on: {\n \"click\": function($event) {\n $event.preventDefault();\n _vm.navigateToTab(index)\n }\n }\n }, [_c('i', {\n class: tab.icon\n }, [(_vm.textPosition === 'center') ? _c('span', [_vm._v(\"\\n \" + _vm._s(tab.title) + \"\\n \")]) : _vm._e()])]), _vm._v(\" \"), (_vm.textPosition === 'bottom') ? _c('span', {\n staticClass: \"title title_bottom\",\n style: (tab.active ? _vm.activeTitleColor : {})\n }, [_vm._v(\"\\n \" + _vm._s(tab.title) + \"\\n \")]) : _vm._e()])], {\n tab: tab,\n index: index,\n clickHandler: _vm.navigateToTab\n })\n })], 2), _vm._v(\" \"), _c('div', {\n staticClass: \"tab-content\"\n }, [_vm._t(\"default\")], 2)])\n},staticRenderFns: []}\nmodule.exports.render._withStripped = true\nif (module.hot) {\n module.hot.accept()\n if (module.hot.data) {\n require(\"vue-hot-reload-api\").rerender(\"data-v-62caa6e2\", module.exports)\n }\n}"}],"filteredModules":0,"children":[{"errors":[],"warnings":[],"publicPath":"","assetsByChunkName":{},"assets":[],"entrypoints":{"undefined":{"chunks":[0],"assets":["extract-text-webpack-plugin-output-filename"]}},"chunks":[{"id":0,"rendered":true,"initial":true,"entry":true,"extraAsync":false,"size":1613,"names":[],"files":["extract-text-webpack-plugin-output-filename"],"hash":"642627613915e6af6c0b","parents":[],"origins":[{"moduleId":1,"module":"C:\\work\\Github\\vue-tabs\\node_modules\\css-loader\\index.js?{\"minimize\":true}!C:\\work\\Github\\vue-tabs\\node_modules\\vue-loader\\lib\\style-compiler\\index.js?{\"id\":\"data-v-62caa6e2\",\"scoped\":false,\"hasInlineConfig\":false}!C:\\work\\Github\\vue-tabs\\node_modules\\vue-loader\\lib\\selector.js?type=styles&index=0!C:\\work\\Github\\vue-tabs\\src\\components\\VueTabs.vue","moduleIdentifier":"C:\\work\\Github\\vue-tabs\\node_modules\\css-loader\\index.js?{\"minimize\":true}!C:\\work\\Github\\vue-tabs\\node_modules\\vue-loader\\lib\\style-compiler\\index.js?{\"id\":\"data-v-62caa6e2\",\"scoped\":false,\"hasInlineConfig\":false}!C:\\work\\Github\\vue-tabs\\node_modules\\vue-loader\\lib\\selector.js?type=styles&index=0!C:\\work\\Github\\vue-tabs\\src\\components\\VueTabs.vue","moduleName":"./~/css-loader?{\"minimize\":true}!./~/vue-loader/lib/style-compiler?{\"id\":\"data-v-62caa6e2\",\"scoped\":false,\"hasInlineConfig\":false}!./~/vue-loader/lib/selector.js?type=styles&index=0!./src/components/VueTabs.vue","loc":"","reasons":[]}]}],"modules":[{"id":0,"identifier":"C:\\work\\Github\\vue-tabs\\node_modules\\css-loader\\lib\\css-base.js","name":"./~/css-loader/lib/css-base.js","index":1,"index2":0,"size":1456,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"assets":[],"issuer":"C:\\work\\Github\\vue-tabs\\node_modules\\css-loader\\index.js?{\"minimize\":true}!C:\\work\\Github\\vue-tabs\\node_modules\\vue-loader\\lib\\style-compiler\\index.js?{\"id\":\"data-v-62caa6e2\",\"scoped\":false,\"hasInlineConfig\":false}!C:\\work\\Github\\vue-tabs\\node_modules\\vue-loader\\lib\\selector.js?type=styles&index=0!C:\\work\\Github\\vue-tabs\\src\\components\\VueTabs.vue","issuerId":1,"issuerName":"./~/css-loader?{\"minimize\":true}!./~/vue-loader/lib/style-compiler?{\"id\":\"data-v-62caa6e2\",\"scoped\":false,\"hasInlineConfig\":false}!./~/vue-loader/lib/selector.js?type=styles&index=0!./src/components/VueTabs.vue","failed":false,"errors":0,"warnings":0,"reasons":[{"moduleId":1,"moduleIdentifier":"C:\\work\\Github\\vue-tabs\\node_modules\\css-loader\\index.js?{\"minimize\":true}!C:\\work\\Github\\vue-tabs\\node_modules\\vue-loader\\lib\\style-compiler\\index.js?{\"id\":\"data-v-62caa6e2\",\"scoped\":false,\"hasInlineConfig\":false}!C:\\work\\Github\\vue-tabs\\node_modules\\vue-loader\\lib\\selector.js?type=styles&index=0!C:\\work\\Github\\vue-tabs\\src\\components\\VueTabs.vue","module":"./~/css-loader?{\"minimize\":true}!./~/vue-loader/lib/style-compiler?{\"id\":\"data-v-62caa6e2\",\"scoped\":false,\"hasInlineConfig\":false}!./~/vue-loader/lib/selector.js?type=styles&index=0!./src/components/VueTabs.vue","moduleName":"./~/css-loader?{\"minimize\":true}!./~/vue-loader/lib/style-compiler?{\"id\":\"data-v-62caa6e2\",\"scoped\":false,\"hasInlineConfig\":false}!./~/vue-loader/lib/selector.js?type=styles&index=0!./src/components/VueTabs.vue","type":"cjs require","userRequest":"../../node_modules/css-loader/lib/css-base.js","loc":"1:27-83"}],"usedExports":true,"providedExports":null,"depth":1,"source":"/*\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() {\n\tvar list = [];\n\n\t// return the list of modules as css string\n\tlist.toString = function toString() {\n\t\tvar result = [];\n\t\tfor(var i = 0; i < this.length; i++) {\n\t\t\tvar item = this[i];\n\t\t\tif(item[2]) {\n\t\t\t\tresult.push(\"@media \" + item[2] + \"{\" + item[1] + \"}\");\n\t\t\t} else {\n\t\t\t\tresult.push(item[1]);\n\t\t\t}\n\t\t}\n\t\treturn result.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"},{"id":1,"identifier":"C:\\work\\Github\\vue-tabs\\node_modules\\css-loader\\index.js?{\"minimize\":true}!C:\\work\\Github\\vue-tabs\\node_modules\\vue-loader\\lib\\style-compiler\\index.js?{\"id\":\"data-v-62caa6e2\",\"scoped\":false,\"hasInlineConfig\":false}!C:\\work\\Github\\vue-tabs\\node_modules\\vue-loader\\lib\\selector.js?type=styles&index=0!C:\\work\\Github\\vue-tabs\\src\\components\\VueTabs.vue","name":"./~/css-loader?{\"minimize\":true}!./~/vue-loader/lib/style-compiler?{\"id\":\"data-v-62caa6e2\",\"scoped\":false,\"hasInlineConfig\":false}!./~/vue-loader/lib/selector.js?type=styles&index=0!./src/components/VueTabs.vue","index":0,"index2":1,"size":157,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"assets":[],"issuer":null,"issuerId":null,"issuerName":null,"failed":false,"errors":0,"warnings":0,"reasons":[],"usedExports":true,"providedExports":null,"depth":0,"source":"exports = module.exports = require(\"../../node_modules/css-loader/lib/css-base.js\")();\n// imports\n\n\n// module\nexports.push([module.id, \"\", \"\"]);\n\n// exports\n"}],"filteredModules":0,"children":[],"name":"extract-text-webpack-plugin"},{"errors":[],"warnings":[],"publicPath":"","assetsByChunkName":{},"assets":[],"entrypoints":{"undefined":{"chunks":[0],"assets":["extract-text-webpack-plugin-output-filename"]}},"chunks":[{"id":0,"rendered":true,"initial":true,"entry":true,"extraAsync":false,"size":5038,"names":[],"files":["extract-text-webpack-plugin-output-filename"],"hash":"44d280a4c46fcfc2e450","parents":[],"origins":[{"moduleId":1,"module":"C:\\work\\Github\\vue-tabs\\node_modules\\css-loader\\index.js?{\"minimize\":true}!C:\\work\\Github\\vue-tabs\\node_modules\\vue-loader\\lib\\style-compiler\\index.js?{\"id\":\"data-v-62caa6e2\",\"scoped\":false,\"hasInlineConfig\":false}!C:\\work\\Github\\vue-tabs\\node_modules\\sass-loader\\lib\\loader.js?{\"minimize\":true}!C:\\work\\Github\\vue-tabs\\node_modules\\vue-loader\\lib\\selector.js?type=styles&index=1!C:\\work\\Github\\vue-tabs\\src\\components\\VueTabs.vue","moduleIdentifier":"C:\\work\\Github\\vue-tabs\\node_modules\\css-loader\\index.js?{\"minimize\":true}!C:\\work\\Github\\vue-tabs\\node_modules\\vue-loader\\lib\\style-compiler\\index.js?{\"id\":\"data-v-62caa6e2\",\"scoped\":false,\"hasInlineConfig\":false}!C:\\work\\Github\\vue-tabs\\node_modules\\sass-loader\\lib\\loader.js?{\"minimize\":true}!C:\\work\\Github\\vue-tabs\\node_modules\\vue-loader\\lib\\selector.js?type=styles&index=1!C:\\work\\Github\\vue-tabs\\src\\components\\VueTabs.vue","moduleName":"./~/css-loader?{\"minimize\":true}!./~/vue-loader/lib/style-compiler?{\"id\":\"data-v-62caa6e2\",\"scoped\":false,\"hasInlineConfig\":false}!./~/sass-loader/lib/loader.js?{\"minimize\":true}!./~/vue-loader/lib/selector.js?type=styles&index=1!./src/components/VueTabs.vue","loc":"","reasons":[]}]}],"modules":[{"id":0,"identifier":"C:\\work\\Github\\vue-tabs\\node_modules\\css-loader\\lib\\css-base.js","name":"./~/css-loader/lib/css-base.js","index":1,"index2":0,"size":1456,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"assets":[],"issuer":"C:\\work\\Github\\vue-tabs\\node_modules\\css-loader\\index.js?{\"minimize\":true}!C:\\work\\Github\\vue-tabs\\node_modules\\vue-loader\\lib\\style-compiler\\index.js?{\"id\":\"data-v-62caa6e2\",\"scoped\":false,\"hasInlineConfig\":false}!C:\\work\\Github\\vue-tabs\\node_modules\\sass-loader\\lib\\loader.js?{\"minimize\":true}!C:\\work\\Github\\vue-tabs\\node_modules\\vue-loader\\lib\\selector.js?type=styles&index=1!C:\\work\\Github\\vue-tabs\\src\\components\\VueTabs.vue","issuerId":1,"issuerName":"./~/css-loader?{\"minimize\":true}!./~/vue-loader/lib/style-compiler?{\"id\":\"data-v-62caa6e2\",\"scoped\":false,\"hasInlineConfig\":false}!./~/sass-loader/lib/loader.js?{\"minimize\":true}!./~/vue-loader/lib/selector.js?type=styles&index=1!./src/components/VueTabs.vue","failed":false,"errors":0,"warnings":0,"reasons":[{"moduleId":1,"moduleIdentifier":"C:\\work\\Github\\vue-tabs\\node_modules\\css-loader\\index.js?{\"minimize\":true}!C:\\work\\Github\\vue-tabs\\node_modules\\vue-loader\\lib\\style-compiler\\index.js?{\"id\":\"data-v-62caa6e2\",\"scoped\":false,\"hasInlineConfig\":false}!C:\\work\\Github\\vue-tabs\\node_modules\\sass-loader\\lib\\loader.js?{\"minimize\":true}!C:\\work\\Github\\vue-tabs\\node_modules\\vue-loader\\lib\\selector.js?type=styles&index=1!C:\\work\\Github\\vue-tabs\\src\\components\\VueTabs.vue","module":"./~/css-loader?{\"minimize\":true}!./~/vue-loader/lib/style-compiler?{\"id\":\"data-v-62caa6e2\",\"scoped\":false,\"hasInlineConfig\":false}!./~/sass-loader/lib/loader.js?{\"minimize\":true}!./~/vue-loader/lib/selector.js?type=styles&index=1!./src/components/VueTabs.vue","moduleName":"./~/css-loader?{\"minimize\":true}!./~/vue-loader/lib/style-compiler?{\"id\":\"data-v-62caa6e2\",\"scoped\":false,\"hasInlineConfig\":false}!./~/sass-loader/lib/loader.js?{\"minimize\":true}!./~/vue-loader/lib/selector.js?type=styles&index=1!./src/components/VueTabs.vue","type":"cjs require","userRequest":"../../node_modules/css-loader/lib/css-base.js","loc":"1:27-83"}],"usedExports":true,"providedExports":null,"depth":1,"source":"/*\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() {\n\tvar list = [];\n\n\t// return the list of modules as css string\n\tlist.toString = function toString() {\n\t\tvar result = [];\n\t\tfor(var i = 0; i < this.length; i++) {\n\t\t\tvar item = this[i];\n\t\t\tif(item[2]) {\n\t\t\t\tresult.push(\"@media \" + item[2] + \"{\" + item[1] + \"}\");\n\t\t\t} else {\n\t\t\t\tresult.push(item[1]);\n\t\t\t}\n\t\t}\n\t\treturn result.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"},{"id":1,"identifier":"C:\\work\\Github\\vue-tabs\\node_modules\\css-loader\\index.js?{\"minimize\":true}!C:\\work\\Github\\vue-tabs\\node_modules\\vue-loader\\lib\\style-compiler\\index.js?{\"id\":\"data-v-62caa6e2\",\"scoped\":false,\"hasInlineConfig\":false}!C:\\work\\Github\\vue-tabs\\node_modules\\sass-loader\\lib\\loader.js?{\"minimize\":true}!C:\\work\\Github\\vue-tabs\\node_modules\\vue-loader\\lib\\selector.js?type=styles&index=1!C:\\work\\Github\\vue-tabs\\src\\components\\VueTabs.vue","name":"./~/css-loader?{\"minimize\":true}!./~/vue-loader/lib/style-compiler?{\"id\":\"data-v-62caa6e2\",\"scoped\":false,\"hasInlineConfig\":false}!./~/sass-loader/lib/loader.js?{\"minimize\":true}!./~/vue-loader/lib/selector.js?type=styles&index=1!./src/components/VueTabs.vue","index":0,"index2":1,"size":3582,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"assets":[],"issuer":null,"issuerId":null,"issuerName":null,"failed":false,"errors":0,"warnings":0,"reasons":[],"usedExports":true,"providedExports":null,"depth":0,"source":"exports = module.exports = require(\"../../node_modules/css-loader/lib/css-base.js\")();\n// imports\n\n\n// module\nexports.push([module.id, \".vue-tabs.stacked{display:-webkit-box;display:-ms-flexbox;display:flex}.vue-tabs a{text-decoration:none;color:gray}.vue-tabs .nav{margin-bottom:0;margin-top:0;padding-left:0;list-style:none}.vue-tabs .nav:after,.vue-tabs .nav:before{content:\\\" \\\";display:table}.vue-tabs .nav:after{clear:both}.vue-tabs .nav>li,.vue-tabs .nav>li>a{position:relative;display:block}.vue-tabs .nav>li>a{padding:10px 15px}.vue-tabs .nav>li>a:focus,.vue-tabs .nav>li>a:hover{text-decoration:none;background-color:#eee}.vue-tabs .nav>li span.title{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.vue-tabs .nav>li.disabled>a{color:#777}.vue-tabs .nav>li.disabled>a:focus,.vue-tabs .nav>li.disabled>a:hover{color:#777;text-decoration:none;background-color:transparent;cursor:not-allowed}.vue-tabs .nav .nav-divider{height:1px;margin:9px 0;overflow:hidden;background-color:#e5e5e5}.vue-tabs .nav>li>a>img{max-width:none}.vue-tabs .nav-tabs{border-bottom:1px solid #ddd}.vue-tabs .nav-tabs>li{float:left;margin-bottom:-1px}.vue-tabs .nav-tabs>li>a{margin-right:2px;line-height:1.42857;border:1px solid transparent;border-radius:4px 4px 0 0}.vue-tabs .nav-tabs>li>a:hover{border-color:#eee #eee #ddd}.vue-tabs .nav-tabs>li.active>a,.vue-tabs .nav-tabs>li.active>a:focus,.vue-tabs .nav-tabs>li.active>a:hover{color:#555;background-color:#fff;border:1px solid #ddd;border-bottom-color:transparent;cursor:default}.vue-tabs .nav-pills>li{float:left}.vue-tabs .nav-pills>li>a{border-radius:4px}.vue-tabs .nav-pills>li+li{margin-left:2px}.vue-tabs .nav-pills>li.active>a,.vue-tabs .nav-pills>li.active>a:focus,.vue-tabs .nav-pills>li.active>a:hover{color:#fff;background-color:#337ab7}.vue-tabs .nav-stacked>li{float:none}.vue-tabs .nav-stacked>li+li{margin-top:2px;margin-left:0}.vue-tabs .nav-justified,.vue-tabs .nav-tabs.nav-justified{width:100%}.vue-tabs .nav-justified>li,.vue-tabs .nav-tabs.nav-justified>li{float:none}.vue-tabs .nav-justified>li>a,.vue-tabs .nav-tabs.nav-justified>li>a{text-align:center;margin-bottom:5px}.vue-tabs .nav-justified>.dropdown .dropdown-menu{top:auto;left:auto}@media (min-width:768px){.vue-tabs .nav-justified>li,.vue-tabs .nav-tabs.nav-justified>li{display:table-cell;width:1%}.vue-tabs .nav-justified>li>a,.vue-tabs .nav-tabs.nav-justified>li>a{margin-bottom:0}}.vue-tabs .nav-tabs-justified,.vue-tabs .nav-tabs.nav-justified{border-bottom:0}.vue-tabs .nav-tabs-justified>li>a,.vue-tabs .nav-tabs.nav-justified>li>a{margin-right:0;border-radius:4px}.vue-tabs .nav-tabs-justified>.active>a,.vue-tabs .nav-tabs-justified>.active>a:focus,.vue-tabs .nav-tabs-justified>.active>a:hover,.vue-tabs .nav-tabs.nav-justified>.active>a,.vue-tabs .nav-tabs.nav-justified>.active>a:focus,.vue-tabs .nav-tabs.nav-justified>.active>a:hover{border:1px solid #ddd}@media (min-width:768px){.vue-tabs .nav-tabs-justified>li>a,.vue-tabs .nav-tabs.nav-justified>li>a{border-bottom:1px solid #ddd;border-radius:4px 4px 0 0}.vue-tabs .nav-tabs-justified>.active>a,.vue-tabs .nav-tabs-justified>.active>a:focus,.vue-tabs .nav-tabs-justified>.active>a:hover,.vue-tabs .nav-tabs.nav-justified>.active>a,.vue-tabs .nav-tabs.nav-justified>.active>a:focus,.vue-tabs .nav-tabs.nav-justified>.active>a:hover{border-bottom-color:#fff}}.vue-tabs .tab-content>.tab-pane{display:none}.vue-tabs .tab-content>.active{display:block}.vue-tabs section[aria-hidden=true]{display:none}\", \"\"]);\n\n// exports\n"}],"filteredModules":0,"children":[],"name":"extract-text-webpack-plugin"}]} | ||
{"errors":[],"warnings":[],"version":"2.4.1","hash":"500f01c40791129e40eb","publicPath":"","assetsByChunkName":{"main":["vue-tabs.js","vue-tabs.min.css"]},"assets":[{"name":"vue-tabs.js","size":7118,"chunks":[0],"chunkNames":["main"],"emitted":true},{"name":"vue-tabs.min.css","size":3423,"chunks":[0],"chunkNames":["main"],"emitted":true},{"name":"stats.json","size":0,"chunks":[],"chunkNames":[]}],"entrypoints":{"main":{"chunks":[0],"assets":["vue-tabs.js","vue-tabs.min.css"]}},"chunks":[{"id":0,"rendered":true,"initial":true,"entry":true,"extraAsync":false,"size":13278,"names":["main"],"files":["vue-tabs.js","vue-tabs.min.css"],"hash":"192a81851bce0b23fda3","parents":[],"origins":[{"moduleId":5,"module":"C:\\work\\Github\\vue-tabs\\node_modules\\babel-loader\\lib\\index.js!C:\\work\\Github\\vue-tabs\\src\\index.js","moduleIdentifier":"C:\\work\\Github\\vue-tabs\\node_modules\\babel-loader\\lib\\index.js!C:\\work\\Github\\vue-tabs\\src\\index.js","moduleName":"./src/index.js","loc":"","name":"main","reasons":[]}]}],"modules":[{"id":0,"identifier":"C:\\work\\Github\\vue-tabs\\node_modules\\vue-loader\\lib\\component-normalizer.js","name":"./~/vue-loader/lib/component-normalizer.js","index":4,"index2":2,"size":1275,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"assets":[],"issuer":"C:\\work\\Github\\vue-tabs\\node_modules\\vue-loader\\index.js??ref--3!C:\\work\\Github\\vue-tabs\\src\\components\\TabContent.vue","issuerId":1,"issuerName":"./src/components/TabContent.vue","failed":false,"errors":0,"warnings":0,"reasons":[{"moduleId":1,"moduleIdentifier":"C:\\work\\Github\\vue-tabs\\node_modules\\vue-loader\\index.js??ref--3!C:\\work\\Github\\vue-tabs\\src\\components\\TabContent.vue","module":"./src/components/TabContent.vue","moduleName":"./src/components/TabContent.vue","type":"cjs require","userRequest":"!../../node_modules/vue-loader/lib/component-normalizer","loc":"1:16-82"},{"moduleId":2,"moduleIdentifier":"C:\\work\\Github\\vue-tabs\\node_modules\\vue-loader\\index.js??ref--3!C:\\work\\Github\\vue-tabs\\src\\components\\VueTabs.vue","module":"./src/components/VueTabs.vue","moduleName":"./src/components/VueTabs.vue","type":"cjs require","userRequest":"!../../node_modules/vue-loader/lib/component-normalizer","loc":"6:16-82"}],"usedExports":true,"providedExports":null,"depth":2,"source":"// 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"},{"id":1,"identifier":"C:\\work\\Github\\vue-tabs\\node_modules\\vue-loader\\index.js??ref--3!C:\\work\\Github\\vue-tabs\\src\\components\\TabContent.vue","name":"./src/components/TabContent.vue","index":7,"index2":8,"size":1312,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"assets":[],"issuer":"C:\\work\\Github\\vue-tabs\\node_modules\\babel-loader\\lib\\index.js!C:\\work\\Github\\vue-tabs\\src\\index.js","issuerId":5,"issuerName":"./src/index.js","failed":false,"errors":0,"warnings":0,"reasons":[{"moduleId":5,"moduleIdentifier":"C:\\work\\Github\\vue-tabs\\node_modules\\babel-loader\\lib\\index.js!C:\\work\\Github\\vue-tabs\\src\\index.js","module":"./src/index.js","moduleName":"./src/index.js","type":"harmony import","userRequest":"./components/TabContent.vue","loc":"2:0-47"}],"usedExports":["default"],"providedExports":null,"depth":1,"source":"var 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!./TabContent.vue\"),\n /* template */\n require(\"!!../../node_modules/vue-loader/lib/template-compiler/index?{\\\"id\\\":\\\"data-v-235aa9d6\\\"}!../../node_modules/vue-loader/lib/selector?type=template&index=0!./TabContent.vue\"),\n /* scopeId */\n null,\n /* cssModules */\n null\n)\nComponent.options.__file = \"C:\\\\work\\\\Github\\\\vue-tabs\\\\src\\\\components\\\\TabContent.vue\"\nif (Component.esModule && Object.keys(Component.esModule).some(function (key) {return key !== \"default\" && key !== \"__esModule\"})) {console.error(\"named exports are not supported in *.vue files.\")}\nif (Component.options.functional) {console.error(\"[vue-loader] TabContent.vue: functional components are not supported with templates, they should use render functions.\")}\n\n/* hot reload */\nif (module.hot) {(function () {\n var hotAPI = require(\"vue-hot-reload-api\")\n hotAPI.install(require(\"vue\"), false)\n if (!hotAPI.compatible) return\n module.hot.accept()\n if (!module.hot.data) {\n hotAPI.createRecord(\"data-v-235aa9d6\", Component.options)\n } else {\n hotAPI.reload(\"data-v-235aa9d6\", Component.options)\n }\n})()}\n\nmodule.exports = Component.exports\n"},{"id":2,"identifier":"C:\\work\\Github\\vue-tabs\\node_modules\\vue-loader\\index.js??ref--3!C:\\work\\Github\\vue-tabs\\src\\components\\VueTabs.vue","name":"./src/components/VueTabs.vue","index":1,"index2":5,"size":2015,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"assets":[],"issuer":"C:\\work\\Github\\vue-tabs\\node_modules\\babel-loader\\lib\\index.js!C:\\work\\Github\\vue-tabs\\src\\index.js","issuerId":5,"issuerName":"./src/index.js","failed":false,"errors":0,"warnings":0,"reasons":[{"moduleId":5,"moduleIdentifier":"C:\\work\\Github\\vue-tabs\\node_modules\\babel-loader\\lib\\index.js!C:\\work\\Github\\vue-tabs\\src\\index.js","module":"./src/index.js","moduleName":"./src/index.js","type":"harmony import","userRequest":"./components/VueTabs.vue","loc":"1:0-47"}],"usedExports":["default"],"providedExports":null,"depth":1,"source":"\n/* styles */\nrequire(\"!!../../node_modules/extract-text-webpack-plugin/loader.js?{\\\"omit\\\":0,\\\"remove\\\":true}!css-loader?{\\\"minimize\\\":true}!../../node_modules/vue-loader/lib/style-compiler/index?{\\\"id\\\":\\\"data-v-62caa6e2\\\",\\\"scoped\\\":false,\\\"hasInlineConfig\\\":false}!../../node_modules/vue-loader/lib/selector?type=styles&index=0!./VueTabs.vue\")\nrequire(\"!!../../node_modules/extract-text-webpack-plugin/loader.js?{\\\"omit\\\":0,\\\"remove\\\":true}!css-loader?{\\\"minimize\\\":true}!../../node_modules/vue-loader/lib/style-compiler/index?{\\\"id\\\":\\\"data-v-62caa6e2\\\",\\\"scoped\\\":false,\\\"hasInlineConfig\\\":false}!sass-loader?{\\\"minimize\\\":true}!../../node_modules/vue-loader/lib/selector?type=styles&index=1!./VueTabs.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!./VueTabs.vue\"),\n /* template */\n require(\"!!../../node_modules/vue-loader/lib/template-compiler/index?{\\\"id\\\":\\\"data-v-62caa6e2\\\"}!../../node_modules/vue-loader/lib/selector?type=template&index=0!./VueTabs.vue\"),\n /* scopeId */\n null,\n /* cssModules */\n null\n)\nComponent.options.__file = \"C:\\\\work\\\\Github\\\\vue-tabs\\\\src\\\\components\\\\VueTabs.vue\"\nif (Component.esModule && Object.keys(Component.esModule).some(function (key) {return key !== \"default\" && key !== \"__esModule\"})) {console.error(\"named exports are not supported in *.vue files.\")}\nif (Component.options.functional) {console.error(\"[vue-loader] VueTabs.vue: functional components are not supported with templates, they should use render functions.\")}\n\n/* hot reload */\nif (module.hot) {(function () {\n var hotAPI = require(\"vue-hot-reload-api\")\n hotAPI.install(require(\"vue\"), false)\n if (!hotAPI.compatible) return\n module.hot.accept()\n if (!module.hot.data) {\n hotAPI.createRecord(\"data-v-62caa6e2\", Component.options)\n } else {\n hotAPI.reload(\"data-v-62caa6e2\", Component.options)\n }\n})()}\n\nmodule.exports = Component.exports\n"},{"id":3,"identifier":"C:\\work\\Github\\vue-tabs\\node_modules\\babel-loader\\lib\\index.js!C:\\work\\Github\\vue-tabs\\node_modules\\vue-loader\\lib\\selector.js?type=script&index=0!C:\\work\\Github\\vue-tabs\\src\\components\\TabContent.vue","name":"./~/babel-loader/lib!./~/vue-loader/lib/selector.js?type=script&index=0!./src/components/TabContent.vue","index":8,"index2":6,"size":627,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"assets":[],"issuer":"C:\\work\\Github\\vue-tabs\\node_modules\\vue-loader\\index.js??ref--3!C:\\work\\Github\\vue-tabs\\src\\components\\TabContent.vue","issuerId":1,"issuerName":"./src/components/TabContent.vue","failed":false,"errors":0,"warnings":0,"reasons":[{"moduleId":1,"moduleIdentifier":"C:\\work\\Github\\vue-tabs\\node_modules\\vue-loader\\index.js??ref--3!C:\\work\\Github\\vue-tabs\\src\\components\\TabContent.vue","module":"./src/components/TabContent.vue","moduleName":"./src/components/TabContent.vue","type":"cjs require","userRequest":"!!babel-loader!../../node_modules/vue-loader/lib/selector?type=script&index=0!./TabContent.vue","loc":"3:2-107"}],"usedExports":true,"providedExports":["default"],"depth":2,"source":"\n\nexport default {\n name: 'v-tab',\n props: {\n title: {\n type: String,\n default: ''\n },\n icon: {\n type: String,\n default: ''\n },\n\n beforeChange: {\n type: Function\n },\n id: String,\n route: {\n type: [String, Object]\n },\n transitionName: String,\n transitionMode: String\n },\n computed: {\n isValidParent: function isValidParent() {\n return this.$parent.$options.name === 'vue-tabs';\n },\n hash: function hash() {\n return '#' + this.id;\n }\n },\n data: function data() {\n return {\n active: false,\n validationError: null\n };\n }\n};"},{"id":4,"identifier":"C:\\work\\Github\\vue-tabs\\node_modules\\babel-loader\\lib\\index.js!C:\\work\\Github\\vue-tabs\\node_modules\\vue-loader\\lib\\selector.js?type=script&index=0!C:\\work\\Github\\vue-tabs\\src\\components\\VueTabs.vue","name":"./~/babel-loader/lib!./~/vue-loader/lib/selector.js?type=script&index=0!./src/components/VueTabs.vue","index":5,"index2":3,"size":5143,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"assets":[],"issuer":"C:\\work\\Github\\vue-tabs\\node_modules\\vue-loader\\index.js??ref--3!C:\\work\\Github\\vue-tabs\\src\\components\\VueTabs.vue","issuerId":2,"issuerName":"./src/components/VueTabs.vue","failed":false,"errors":0,"warnings":0,"reasons":[{"moduleId":2,"moduleIdentifier":"C:\\work\\Github\\vue-tabs\\node_modules\\vue-loader\\index.js??ref--3!C:\\work\\Github\\vue-tabs\\src\\components\\VueTabs.vue","module":"./src/components/VueTabs.vue","moduleName":"./src/components/VueTabs.vue","type":"cjs require","userRequest":"!!babel-loader!../../node_modules/vue-loader/lib/selector?type=script&index=0!./VueTabs.vue","loc":"8:2-104"}],"usedExports":true,"providedExports":["default"],"depth":2,"source":"\n\nexport default {\n name: 'vue-tabs',\n props: {\n activeTabColor: String,\n activeTextColor: String,\n\n textPosition: {\n type: String,\n default: 'center'\n },\n\n type: {\n type: String,\n default: 'tabs'\n },\n direction: {\n type: String,\n default: 'horizontal'\n },\n\n centered: Boolean,\n\n startIndex: {\n type: Number,\n default: 0\n }\n },\n data: function data() {\n return {\n activeTabIndex: 0,\n tabs: []\n };\n },\n\n computed: {\n tabCount: function tabCount() {\n return this.tabs.length;\n },\n isTabShape: function isTabShape() {\n return this.type === 'tabs';\n },\n isStacked: function isStacked() {\n return this.direction === 'vertical';\n },\n classList: function classList() {\n var navType = this.isTabShape ? 'nav-tabs' : 'nav-pills';\n var centerClass = this.centered ? 'nav-justified' : '';\n var isStacked = this.isStacked ? 'nav-stacked' : '';\n var classes = 'nav ' + navType + ' ' + centerClass + ' ' + isStacked;\n return classes;\n },\n stackedClass: function stackedClass() {\n return this.isStacked ? 'stacked' : '';\n },\n activeTabStyle: function activeTabStyle() {\n return {\n backgroundColor: this.activeTabColor,\n color: this.activeTextColor\n };\n },\n activeTitleColor: function activeTitleColor() {\n return {\n color: this.activeTabColor\n };\n }\n },\n methods: {\n navigateToTab: function navigateToTab(index) {\n var _this = this;\n\n this.beforeTabChange(this.activeTabIndex, function () {\n _this.changeTab(_this.activeTabIndex, index);\n });\n },\n setLoading: function setLoading(value) {\n this.loading = value;\n this.$emit('on-loading', value);\n },\n setValidationError: function setValidationError(tab, error) {\n this.tabs[this.activeTabIndex].validationError = error;\n this.$emit('on-error', error);\n if (error && tab.$emit) {\n tab.$emit('on-error', error);\n }\n },\n validateBeforeChange: function validateBeforeChange(promiseFn, tab, callback) {\n var _this2 = this;\n\n this.setValidationError(tab, null);\n\n if (promiseFn.then && typeof promiseFn.then === 'function') {\n this.setLoading(true);\n promiseFn.then(function (res) {\n _this2.setLoading(false);\n var validationResult = res === true;\n _this2.executeBeforeChange(validationResult, callback);\n }).catch(function (error) {\n _this2.setLoading(false);\n _this2.setValidationError(tab, error);\n });\n } else {\n var validationResult = promiseFn === true;\n this.executeBeforeChange(validationResult, callback);\n }\n },\n executeBeforeChange: function executeBeforeChange(validationResult, callback) {\n this.$emit('on-validate', validationResult, this.activeTabIndex);\n if (validationResult) {\n callback();\n } else {\n this.tabs[this.activeTabIndex].validationError = 'error';\n }\n },\n beforeTabChange: function beforeTabChange(index, callback) {\n if (this.loading) {\n return;\n }\n var oldTab = this.tabs[index];\n if (oldTab && oldTab.beforeChange !== undefined) {\n var tabChangeRes = oldTab.beforeChange();\n this.validateBeforeChange(tabChangeRes, oldTab, callback);\n } else {\n callback();\n }\n },\n changeTab: function changeTab(oldIndex, newIndex) {\n if (newIndex < 0 || newIndex >= this.tabCount) {\n return;\n }\n var oldTab = this.tabs[oldIndex];\n var newTab = this.tabs[newIndex];\n if (oldTab) {\n oldTab.active = false;\n if (newTab) {\n newTab.active = true;\n }\n }\n this.activeTabIndex = newIndex;\n this.$emit('tab-change', newIndex, newTab, oldTab);\n this.tryChangeRoute(newTab);\n },\n tryChangeRoute: function tryChangeRoute(tab) {\n if (this.$router && tab && tab.route) {\n this.$router.push(tab.route);\n }\n },\n getTabs: function getTabs() {\n if (this.$slots.default) {\n return this.$slots.default.filter(function (comp) {\n return comp.componentOptions;\n }).map(function (comp) {\n return comp.componentInstance;\n });\n } else {\n return [];\n }\n },\n initTabs: function initTabs() {\n if (this.tabs.length > 0 && this.startIndex === 0) {\n var firstTab = this.tabs[this.activeTabIndex];\n firstTab.active = true;\n this.tryChangeRoute(firstTab);\n }\n if (this.startIndex < this.tabs.length) {\n var tabToActivate = this.tabs[this.startIndex];\n this.activeTabIndex = this.startIndex;\n tabToActivate.active = true;\n this.tryChangeRoute(this.tabs[this.startIndex]);\n }\n }\n },\n updated: function updated() {\n var currentTabs = this.getTabs();\n if (this.tabs.length === currentTabs.length) return;\n this.tabs = currentTabs;\n this.initTabs();\n },\n mounted: function mounted() {\n this.tabs = this.getTabs();\n this.initTabs();\n }\n};"},{"id":5,"identifier":"C:\\work\\Github\\vue-tabs\\node_modules\\babel-loader\\lib\\index.js!C:\\work\\Github\\vue-tabs\\src\\index.js","name":"./src/index.js","index":0,"index2":9,"size":384,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"assets":[],"issuer":null,"issuerId":null,"issuerName":null,"failed":false,"errors":0,"warnings":0,"reasons":[],"usedExports":true,"providedExports":["default"],"depth":0,"source":"import VueTabs from './components/VueTabs.vue';\nimport VTab from './components/TabContent.vue';\nvar VueTabsPlugin = {\n VueTabs: VueTabs,\n VTab: VTab,\n install: function install(Vue) {\n Vue.component('vue-tabs', VueTabs);\n Vue.component('v-tab', VTab);\n }\n};\n\nif (typeof window !== 'undefined' && window.Vue) {\n window.Vue.use(VueTabsPlugin);\n}\nexport default VueTabsPlugin;"},{"id":6,"identifier":"C:\\work\\Github\\vue-tabs\\node_modules\\extract-text-webpack-plugin\\loader.js?{\"omit\":0,\"remove\":true}!C:\\work\\Github\\vue-tabs\\node_modules\\css-loader\\index.js?{\"minimize\":true}!C:\\work\\Github\\vue-tabs\\node_modules\\vue-loader\\lib\\style-compiler\\index.js?{\"id\":\"data-v-62caa6e2\",\"scoped\":false,\"hasInlineConfig\":false}!C:\\work\\Github\\vue-tabs\\node_modules\\sass-loader\\lib\\loader.js?{\"minimize\":true}!C:\\work\\Github\\vue-tabs\\node_modules\\vue-loader\\lib\\selector.js?type=styles&index=1!C:\\work\\Github\\vue-tabs\\src\\components\\VueTabs.vue","name":"./~/extract-text-webpack-plugin/loader.js?{\"omit\":0,\"remove\":true}!./~/css-loader?{\"minimize\":true}!./~/vue-loader/lib/style-compiler?{\"id\":\"data-v-62caa6e2\",\"scoped\":false,\"hasInlineConfig\":false}!./~/sass-loader/lib/loader.js?{\"minimize\":true}!./~/vue-loader/lib/selector.js?type=styles&index=1!./src/components/VueTabs.vue","index":3,"index2":1,"size":41,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"assets":[],"issuer":"C:\\work\\Github\\vue-tabs\\node_modules\\vue-loader\\index.js??ref--3!C:\\work\\Github\\vue-tabs\\src\\components\\VueTabs.vue","issuerId":2,"issuerName":"./src/components/VueTabs.vue","failed":false,"errors":0,"warnings":0,"reasons":[{"moduleId":2,"moduleIdentifier":"C:\\work\\Github\\vue-tabs\\node_modules\\vue-loader\\index.js??ref--3!C:\\work\\Github\\vue-tabs\\src\\components\\VueTabs.vue","module":"./src/components/VueTabs.vue","moduleName":"./src/components/VueTabs.vue","type":"cjs require","userRequest":"!!../../node_modules/extract-text-webpack-plugin/loader.js?{\"omit\":0,\"remove\":true}!css-loader?{\"minimize\":true}!../../node_modules/vue-loader/lib/style-compiler/index?{\"id\":\"data-v-62caa6e2\",\"scoped\":false,\"hasInlineConfig\":false}!sass-loader?{\"minimize\":true}!../../node_modules/vue-loader/lib/selector?type=styles&index=1!./VueTabs.vue","loc":"4:0-365"}],"usedExports":true,"providedExports":null,"depth":2,"source":"// removed by extract-text-webpack-plugin"},{"id":7,"identifier":"C:\\work\\Github\\vue-tabs\\node_modules\\extract-text-webpack-plugin\\loader.js?{\"omit\":0,\"remove\":true}!C:\\work\\Github\\vue-tabs\\node_modules\\css-loader\\index.js?{\"minimize\":true}!C:\\work\\Github\\vue-tabs\\node_modules\\vue-loader\\lib\\style-compiler\\index.js?{\"id\":\"data-v-62caa6e2\",\"scoped\":false,\"hasInlineConfig\":false}!C:\\work\\Github\\vue-tabs\\node_modules\\vue-loader\\lib\\selector.js?type=styles&index=0!C:\\work\\Github\\vue-tabs\\src\\components\\VueTabs.vue","name":"./~/extract-text-webpack-plugin/loader.js?{\"omit\":0,\"remove\":true}!./~/css-loader?{\"minimize\":true}!./~/vue-loader/lib/style-compiler?{\"id\":\"data-v-62caa6e2\",\"scoped\":false,\"hasInlineConfig\":false}!./~/vue-loader/lib/selector.js?type=styles&index=0!./src/components/VueTabs.vue","index":2,"index2":0,"size":41,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"assets":[],"issuer":"C:\\work\\Github\\vue-tabs\\node_modules\\vue-loader\\index.js??ref--3!C:\\work\\Github\\vue-tabs\\src\\components\\VueTabs.vue","issuerId":2,"issuerName":"./src/components/VueTabs.vue","failed":false,"errors":0,"warnings":0,"reasons":[{"moduleId":2,"moduleIdentifier":"C:\\work\\Github\\vue-tabs\\node_modules\\vue-loader\\index.js??ref--3!C:\\work\\Github\\vue-tabs\\src\\components\\VueTabs.vue","module":"./src/components/VueTabs.vue","moduleName":"./src/components/VueTabs.vue","type":"cjs require","userRequest":"!!../../node_modules/extract-text-webpack-plugin/loader.js?{\"omit\":0,\"remove\":true}!css-loader?{\"minimize\":true}!../../node_modules/vue-loader/lib/style-compiler/index?{\"id\":\"data-v-62caa6e2\",\"scoped\":false,\"hasInlineConfig\":false}!../../node_modules/vue-loader/lib/selector?type=styles&index=0!./VueTabs.vue","loc":"3:0-333"}],"usedExports":true,"providedExports":null,"depth":2,"source":"// removed by extract-text-webpack-plugin"},{"id":8,"identifier":"C:\\work\\Github\\vue-tabs\\node_modules\\vue-loader\\lib\\template-compiler\\index.js?{\"id\":\"data-v-235aa9d6\"}!C:\\work\\Github\\vue-tabs\\node_modules\\vue-loader\\lib\\selector.js?type=template&index=0!C:\\work\\Github\\vue-tabs\\src\\components\\TabContent.vue","name":"./~/vue-loader/lib/template-compiler?{\"id\":\"data-v-235aa9d6\"}!./~/vue-loader/lib/selector.js?type=template&index=0!./src/components/TabContent.vue","index":9,"index2":7,"size":532,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"assets":[],"issuer":"C:\\work\\Github\\vue-tabs\\node_modules\\vue-loader\\index.js??ref--3!C:\\work\\Github\\vue-tabs\\src\\components\\TabContent.vue","issuerId":1,"issuerName":"./src/components/TabContent.vue","failed":false,"errors":0,"warnings":0,"reasons":[{"moduleId":1,"moduleIdentifier":"C:\\work\\Github\\vue-tabs\\node_modules\\vue-loader\\index.js??ref--3!C:\\work\\Github\\vue-tabs\\src\\components\\TabContent.vue","module":"./src/components/TabContent.vue","moduleName":"./src/components/TabContent.vue","type":"cjs require","userRequest":"!!../../node_modules/vue-loader/lib/template-compiler/index?{\"id\":\"data-v-235aa9d6\"}!../../node_modules/vue-loader/lib/selector?type=template&index=0!./TabContent.vue","loc":"5:2-183"}],"usedExports":true,"providedExports":null,"depth":2,"source":"module.exports={render:function (){var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;\n return _c('section', {\n staticClass: \"tab-container\",\n attrs: {\n \"role\": \"tabpanel\",\n \"id\": _vm.hash,\n \"aria-hidden\": !_vm.active\n }\n }, [_vm._t(\"title\"), _vm._v(\" \"), _vm._t(\"default\")], 2)\n},staticRenderFns: []}\nmodule.exports.render._withStripped = true\nif (module.hot) {\n module.hot.accept()\n if (module.hot.data) {\n require(\"vue-hot-reload-api\").rerender(\"data-v-235aa9d6\", module.exports)\n }\n}"},{"id":9,"identifier":"C:\\work\\Github\\vue-tabs\\node_modules\\vue-loader\\lib\\template-compiler\\index.js?{\"id\":\"data-v-62caa6e2\"}!C:\\work\\Github\\vue-tabs\\node_modules\\vue-loader\\lib\\selector.js?type=template&index=0!C:\\work\\Github\\vue-tabs\\src\\components\\VueTabs.vue","name":"./~/vue-loader/lib/template-compiler?{\"id\":\"data-v-62caa6e2\"}!./~/vue-loader/lib/selector.js?type=template&index=0!./src/components/VueTabs.vue","index":6,"index2":4,"size":1908,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"assets":[],"issuer":"C:\\work\\Github\\vue-tabs\\node_modules\\vue-loader\\index.js??ref--3!C:\\work\\Github\\vue-tabs\\src\\components\\VueTabs.vue","issuerId":2,"issuerName":"./src/components/VueTabs.vue","failed":false,"errors":0,"warnings":0,"reasons":[{"moduleId":2,"moduleIdentifier":"C:\\work\\Github\\vue-tabs\\node_modules\\vue-loader\\index.js??ref--3!C:\\work\\Github\\vue-tabs\\src\\components\\VueTabs.vue","module":"./src/components/VueTabs.vue","moduleName":"./src/components/VueTabs.vue","type":"cjs require","userRequest":"!!../../node_modules/vue-loader/lib/template-compiler/index?{\"id\":\"data-v-62caa6e2\"}!../../node_modules/vue-loader/lib/selector?type=template&index=0!./VueTabs.vue","loc":"10:2-180"}],"usedExports":true,"providedExports":null,"depth":2,"source":"module.exports={render:function (){var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;\n return _c('div', {\n staticClass: \"vue-tabs\",\n class: _vm.stackedClass\n }, [_c('ul', {\n class: _vm.classList,\n attrs: {\n \"role\": \"tablist\"\n }\n }, [_vm._l((_vm.tabs), function(tab, index) {\n return _vm._t(\"tab\", [_c('li', {\n key: tab,\n staticClass: \"tab\",\n class: {\n active: tab.active\n },\n attrs: {\n \"role\": \"presentation\"\n }\n }, [(_vm.textPosition === 'top') ? _c('span', {\n staticClass: \"title title_top\",\n style: (tab.active ? _vm.activeTitleColor : {})\n }, [_vm._v(\"\\n \" + _vm._s(tab.title) + \"\\n \")]) : _vm._e(), _vm._v(\" \"), _c('a', {\n style: (tab.active ? _vm.activeTabStyle : {}),\n attrs: {\n \"href\": (\"#\" + (tab.id)),\n \"aria-selected\": tab.active,\n \"aria-controls\": (\"#\" + (tab.id)),\n \"role\": \"tab\"\n },\n on: {\n \"click\": function($event) {\n $event.preventDefault();\n _vm.navigateToTab(index)\n }\n }\n }, [_c('i', {\n class: tab.icon\n }, [(_vm.textPosition === 'center') ? _c('span', [_vm._v(\"\\n \" + _vm._s(tab.title) + \"\\n \")]) : _vm._e()])]), _vm._v(\" \"), (_vm.textPosition === 'bottom') ? _c('span', {\n staticClass: \"title title_bottom\",\n style: (tab.active ? _vm.activeTitleColor : {})\n }, [_vm._v(\"\\n \" + _vm._s(tab.title) + \"\\n \")]) : _vm._e()])], {\n tab: tab,\n index: index,\n clickHandler: _vm.navigateToTab\n })\n })], 2), _vm._v(\" \"), _c('div', {\n staticClass: \"tab-content\"\n }, [_vm._t(\"default\")], 2)])\n},staticRenderFns: []}\nmodule.exports.render._withStripped = true\nif (module.hot) {\n module.hot.accept()\n if (module.hot.data) {\n require(\"vue-hot-reload-api\").rerender(\"data-v-62caa6e2\", module.exports)\n }\n}"}],"filteredModules":0,"children":[{"errors":[],"warnings":[],"publicPath":"","assetsByChunkName":{},"assets":[],"entrypoints":{"undefined":{"chunks":[0],"assets":["extract-text-webpack-plugin-output-filename"]}},"chunks":[{"id":0,"rendered":true,"initial":true,"entry":true,"extraAsync":false,"size":1613,"names":[],"files":["extract-text-webpack-plugin-output-filename"],"hash":"642627613915e6af6c0b","parents":[],"origins":[{"moduleId":1,"module":"C:\\work\\Github\\vue-tabs\\node_modules\\css-loader\\index.js?{\"minimize\":true}!C:\\work\\Github\\vue-tabs\\node_modules\\vue-loader\\lib\\style-compiler\\index.js?{\"id\":\"data-v-62caa6e2\",\"scoped\":false,\"hasInlineConfig\":false}!C:\\work\\Github\\vue-tabs\\node_modules\\vue-loader\\lib\\selector.js?type=styles&index=0!C:\\work\\Github\\vue-tabs\\src\\components\\VueTabs.vue","moduleIdentifier":"C:\\work\\Github\\vue-tabs\\node_modules\\css-loader\\index.js?{\"minimize\":true}!C:\\work\\Github\\vue-tabs\\node_modules\\vue-loader\\lib\\style-compiler\\index.js?{\"id\":\"data-v-62caa6e2\",\"scoped\":false,\"hasInlineConfig\":false}!C:\\work\\Github\\vue-tabs\\node_modules\\vue-loader\\lib\\selector.js?type=styles&index=0!C:\\work\\Github\\vue-tabs\\src\\components\\VueTabs.vue","moduleName":"./~/css-loader?{\"minimize\":true}!./~/vue-loader/lib/style-compiler?{\"id\":\"data-v-62caa6e2\",\"scoped\":false,\"hasInlineConfig\":false}!./~/vue-loader/lib/selector.js?type=styles&index=0!./src/components/VueTabs.vue","loc":"","reasons":[]}]}],"modules":[{"id":0,"identifier":"C:\\work\\Github\\vue-tabs\\node_modules\\css-loader\\lib\\css-base.js","name":"./~/css-loader/lib/css-base.js","index":1,"index2":0,"size":1456,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"assets":[],"issuer":"C:\\work\\Github\\vue-tabs\\node_modules\\css-loader\\index.js?{\"minimize\":true}!C:\\work\\Github\\vue-tabs\\node_modules\\vue-loader\\lib\\style-compiler\\index.js?{\"id\":\"data-v-62caa6e2\",\"scoped\":false,\"hasInlineConfig\":false}!C:\\work\\Github\\vue-tabs\\node_modules\\vue-loader\\lib\\selector.js?type=styles&index=0!C:\\work\\Github\\vue-tabs\\src\\components\\VueTabs.vue","issuerId":1,"issuerName":"./~/css-loader?{\"minimize\":true}!./~/vue-loader/lib/style-compiler?{\"id\":\"data-v-62caa6e2\",\"scoped\":false,\"hasInlineConfig\":false}!./~/vue-loader/lib/selector.js?type=styles&index=0!./src/components/VueTabs.vue","failed":false,"errors":0,"warnings":0,"reasons":[{"moduleId":1,"moduleIdentifier":"C:\\work\\Github\\vue-tabs\\node_modules\\css-loader\\index.js?{\"minimize\":true}!C:\\work\\Github\\vue-tabs\\node_modules\\vue-loader\\lib\\style-compiler\\index.js?{\"id\":\"data-v-62caa6e2\",\"scoped\":false,\"hasInlineConfig\":false}!C:\\work\\Github\\vue-tabs\\node_modules\\vue-loader\\lib\\selector.js?type=styles&index=0!C:\\work\\Github\\vue-tabs\\src\\components\\VueTabs.vue","module":"./~/css-loader?{\"minimize\":true}!./~/vue-loader/lib/style-compiler?{\"id\":\"data-v-62caa6e2\",\"scoped\":false,\"hasInlineConfig\":false}!./~/vue-loader/lib/selector.js?type=styles&index=0!./src/components/VueTabs.vue","moduleName":"./~/css-loader?{\"minimize\":true}!./~/vue-loader/lib/style-compiler?{\"id\":\"data-v-62caa6e2\",\"scoped\":false,\"hasInlineConfig\":false}!./~/vue-loader/lib/selector.js?type=styles&index=0!./src/components/VueTabs.vue","type":"cjs require","userRequest":"../../node_modules/css-loader/lib/css-base.js","loc":"1:27-83"}],"usedExports":true,"providedExports":null,"depth":1,"source":"/*\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() {\n\tvar list = [];\n\n\t// return the list of modules as css string\n\tlist.toString = function toString() {\n\t\tvar result = [];\n\t\tfor(var i = 0; i < this.length; i++) {\n\t\t\tvar item = this[i];\n\t\t\tif(item[2]) {\n\t\t\t\tresult.push(\"@media \" + item[2] + \"{\" + item[1] + \"}\");\n\t\t\t} else {\n\t\t\t\tresult.push(item[1]);\n\t\t\t}\n\t\t}\n\t\treturn result.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"},{"id":1,"identifier":"C:\\work\\Github\\vue-tabs\\node_modules\\css-loader\\index.js?{\"minimize\":true}!C:\\work\\Github\\vue-tabs\\node_modules\\vue-loader\\lib\\style-compiler\\index.js?{\"id\":\"data-v-62caa6e2\",\"scoped\":false,\"hasInlineConfig\":false}!C:\\work\\Github\\vue-tabs\\node_modules\\vue-loader\\lib\\selector.js?type=styles&index=0!C:\\work\\Github\\vue-tabs\\src\\components\\VueTabs.vue","name":"./~/css-loader?{\"minimize\":true}!./~/vue-loader/lib/style-compiler?{\"id\":\"data-v-62caa6e2\",\"scoped\":false,\"hasInlineConfig\":false}!./~/vue-loader/lib/selector.js?type=styles&index=0!./src/components/VueTabs.vue","index":0,"index2":1,"size":157,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"assets":[],"issuer":null,"issuerId":null,"issuerName":null,"failed":false,"errors":0,"warnings":0,"reasons":[],"usedExports":true,"providedExports":null,"depth":0,"source":"exports = module.exports = require(\"../../node_modules/css-loader/lib/css-base.js\")();\n// imports\n\n\n// module\nexports.push([module.id, \"\", \"\"]);\n\n// exports\n"}],"filteredModules":0,"children":[],"name":"extract-text-webpack-plugin"},{"errors":[],"warnings":[],"publicPath":"","assetsByChunkName":{},"assets":[],"entrypoints":{"undefined":{"chunks":[0],"assets":["extract-text-webpack-plugin-output-filename"]}},"chunks":[{"id":0,"rendered":true,"initial":true,"entry":true,"extraAsync":false,"size":5038,"names":[],"files":["extract-text-webpack-plugin-output-filename"],"hash":"44d280a4c46fcfc2e450","parents":[],"origins":[{"moduleId":1,"module":"C:\\work\\Github\\vue-tabs\\node_modules\\css-loader\\index.js?{\"minimize\":true}!C:\\work\\Github\\vue-tabs\\node_modules\\vue-loader\\lib\\style-compiler\\index.js?{\"id\":\"data-v-62caa6e2\",\"scoped\":false,\"hasInlineConfig\":false}!C:\\work\\Github\\vue-tabs\\node_modules\\sass-loader\\lib\\loader.js?{\"minimize\":true}!C:\\work\\Github\\vue-tabs\\node_modules\\vue-loader\\lib\\selector.js?type=styles&index=1!C:\\work\\Github\\vue-tabs\\src\\components\\VueTabs.vue","moduleIdentifier":"C:\\work\\Github\\vue-tabs\\node_modules\\css-loader\\index.js?{\"minimize\":true}!C:\\work\\Github\\vue-tabs\\node_modules\\vue-loader\\lib\\style-compiler\\index.js?{\"id\":\"data-v-62caa6e2\",\"scoped\":false,\"hasInlineConfig\":false}!C:\\work\\Github\\vue-tabs\\node_modules\\sass-loader\\lib\\loader.js?{\"minimize\":true}!C:\\work\\Github\\vue-tabs\\node_modules\\vue-loader\\lib\\selector.js?type=styles&index=1!C:\\work\\Github\\vue-tabs\\src\\components\\VueTabs.vue","moduleName":"./~/css-loader?{\"minimize\":true}!./~/vue-loader/lib/style-compiler?{\"id\":\"data-v-62caa6e2\",\"scoped\":false,\"hasInlineConfig\":false}!./~/sass-loader/lib/loader.js?{\"minimize\":true}!./~/vue-loader/lib/selector.js?type=styles&index=1!./src/components/VueTabs.vue","loc":"","reasons":[]}]}],"modules":[{"id":0,"identifier":"C:\\work\\Github\\vue-tabs\\node_modules\\css-loader\\lib\\css-base.js","name":"./~/css-loader/lib/css-base.js","index":1,"index2":0,"size":1456,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"assets":[],"issuer":"C:\\work\\Github\\vue-tabs\\node_modules\\css-loader\\index.js?{\"minimize\":true}!C:\\work\\Github\\vue-tabs\\node_modules\\vue-loader\\lib\\style-compiler\\index.js?{\"id\":\"data-v-62caa6e2\",\"scoped\":false,\"hasInlineConfig\":false}!C:\\work\\Github\\vue-tabs\\node_modules\\sass-loader\\lib\\loader.js?{\"minimize\":true}!C:\\work\\Github\\vue-tabs\\node_modules\\vue-loader\\lib\\selector.js?type=styles&index=1!C:\\work\\Github\\vue-tabs\\src\\components\\VueTabs.vue","issuerId":1,"issuerName":"./~/css-loader?{\"minimize\":true}!./~/vue-loader/lib/style-compiler?{\"id\":\"data-v-62caa6e2\",\"scoped\":false,\"hasInlineConfig\":false}!./~/sass-loader/lib/loader.js?{\"minimize\":true}!./~/vue-loader/lib/selector.js?type=styles&index=1!./src/components/VueTabs.vue","failed":false,"errors":0,"warnings":0,"reasons":[{"moduleId":1,"moduleIdentifier":"C:\\work\\Github\\vue-tabs\\node_modules\\css-loader\\index.js?{\"minimize\":true}!C:\\work\\Github\\vue-tabs\\node_modules\\vue-loader\\lib\\style-compiler\\index.js?{\"id\":\"data-v-62caa6e2\",\"scoped\":false,\"hasInlineConfig\":false}!C:\\work\\Github\\vue-tabs\\node_modules\\sass-loader\\lib\\loader.js?{\"minimize\":true}!C:\\work\\Github\\vue-tabs\\node_modules\\vue-loader\\lib\\selector.js?type=styles&index=1!C:\\work\\Github\\vue-tabs\\src\\components\\VueTabs.vue","module":"./~/css-loader?{\"minimize\":true}!./~/vue-loader/lib/style-compiler?{\"id\":\"data-v-62caa6e2\",\"scoped\":false,\"hasInlineConfig\":false}!./~/sass-loader/lib/loader.js?{\"minimize\":true}!./~/vue-loader/lib/selector.js?type=styles&index=1!./src/components/VueTabs.vue","moduleName":"./~/css-loader?{\"minimize\":true}!./~/vue-loader/lib/style-compiler?{\"id\":\"data-v-62caa6e2\",\"scoped\":false,\"hasInlineConfig\":false}!./~/sass-loader/lib/loader.js?{\"minimize\":true}!./~/vue-loader/lib/selector.js?type=styles&index=1!./src/components/VueTabs.vue","type":"cjs require","userRequest":"../../node_modules/css-loader/lib/css-base.js","loc":"1:27-83"}],"usedExports":true,"providedExports":null,"depth":1,"source":"/*\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() {\n\tvar list = [];\n\n\t// return the list of modules as css string\n\tlist.toString = function toString() {\n\t\tvar result = [];\n\t\tfor(var i = 0; i < this.length; i++) {\n\t\t\tvar item = this[i];\n\t\t\tif(item[2]) {\n\t\t\t\tresult.push(\"@media \" + item[2] + \"{\" + item[1] + \"}\");\n\t\t\t} else {\n\t\t\t\tresult.push(item[1]);\n\t\t\t}\n\t\t}\n\t\treturn result.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"},{"id":1,"identifier":"C:\\work\\Github\\vue-tabs\\node_modules\\css-loader\\index.js?{\"minimize\":true}!C:\\work\\Github\\vue-tabs\\node_modules\\vue-loader\\lib\\style-compiler\\index.js?{\"id\":\"data-v-62caa6e2\",\"scoped\":false,\"hasInlineConfig\":false}!C:\\work\\Github\\vue-tabs\\node_modules\\sass-loader\\lib\\loader.js?{\"minimize\":true}!C:\\work\\Github\\vue-tabs\\node_modules\\vue-loader\\lib\\selector.js?type=styles&index=1!C:\\work\\Github\\vue-tabs\\src\\components\\VueTabs.vue","name":"./~/css-loader?{\"minimize\":true}!./~/vue-loader/lib/style-compiler?{\"id\":\"data-v-62caa6e2\",\"scoped\":false,\"hasInlineConfig\":false}!./~/sass-loader/lib/loader.js?{\"minimize\":true}!./~/vue-loader/lib/selector.js?type=styles&index=1!./src/components/VueTabs.vue","index":0,"index2":1,"size":3582,"cacheable":true,"built":true,"optional":false,"prefetched":false,"chunks":[0],"assets":[],"issuer":null,"issuerId":null,"issuerName":null,"failed":false,"errors":0,"warnings":0,"reasons":[],"usedExports":true,"providedExports":null,"depth":0,"source":"exports = module.exports = require(\"../../node_modules/css-loader/lib/css-base.js\")();\n// imports\n\n\n// module\nexports.push([module.id, \".vue-tabs.stacked{display:-webkit-box;display:-ms-flexbox;display:flex}.vue-tabs a{text-decoration:none;color:gray}.vue-tabs .nav{margin-bottom:0;margin-top:0;padding-left:0;list-style:none}.vue-tabs .nav:after,.vue-tabs .nav:before{content:\\\" \\\";display:table}.vue-tabs .nav:after{clear:both}.vue-tabs .nav>li,.vue-tabs .nav>li>a{position:relative;display:block}.vue-tabs .nav>li>a{padding:10px 15px}.vue-tabs .nav>li>a:focus,.vue-tabs .nav>li>a:hover{text-decoration:none;background-color:#eee}.vue-tabs .nav>li span.title{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.vue-tabs .nav>li.disabled>a{color:#777}.vue-tabs .nav>li.disabled>a:focus,.vue-tabs .nav>li.disabled>a:hover{color:#777;text-decoration:none;background-color:transparent;cursor:not-allowed}.vue-tabs .nav .nav-divider{height:1px;margin:9px 0;overflow:hidden;background-color:#e5e5e5}.vue-tabs .nav>li>a>img{max-width:none}.vue-tabs .nav-tabs{border-bottom:1px solid #ddd}.vue-tabs .nav-tabs>li{float:left;margin-bottom:-1px}.vue-tabs .nav-tabs>li>a{margin-right:2px;line-height:1.42857;border:1px solid transparent;border-radius:4px 4px 0 0}.vue-tabs .nav-tabs>li>a:hover{border-color:#eee #eee #ddd}.vue-tabs .nav-tabs>li.active>a,.vue-tabs .nav-tabs>li.active>a:focus,.vue-tabs .nav-tabs>li.active>a:hover{color:#555;background-color:#fff;border:1px solid #ddd;border-bottom-color:transparent;cursor:default}.vue-tabs .nav-pills>li{float:left}.vue-tabs .nav-pills>li>a{border-radius:4px}.vue-tabs .nav-pills>li+li{margin-left:2px}.vue-tabs .nav-pills>li.active>a,.vue-tabs .nav-pills>li.active>a:focus,.vue-tabs .nav-pills>li.active>a:hover{color:#fff;background-color:#337ab7}.vue-tabs .nav-stacked>li{float:none}.vue-tabs .nav-stacked>li+li{margin-top:2px;margin-left:0}.vue-tabs .nav-justified,.vue-tabs .nav-tabs.nav-justified{width:100%}.vue-tabs .nav-justified>li,.vue-tabs .nav-tabs.nav-justified>li{float:none}.vue-tabs .nav-justified>li>a,.vue-tabs .nav-tabs.nav-justified>li>a{text-align:center;margin-bottom:5px}.vue-tabs .nav-justified>.dropdown .dropdown-menu{top:auto;left:auto}@media (min-width:768px){.vue-tabs .nav-justified>li,.vue-tabs .nav-tabs.nav-justified>li{display:table-cell;width:1%}.vue-tabs .nav-justified>li>a,.vue-tabs .nav-tabs.nav-justified>li>a{margin-bottom:0}}.vue-tabs .nav-tabs-justified,.vue-tabs .nav-tabs.nav-justified{border-bottom:0}.vue-tabs .nav-tabs-justified>li>a,.vue-tabs .nav-tabs.nav-justified>li>a{margin-right:0;border-radius:4px}.vue-tabs .nav-tabs-justified>.active>a,.vue-tabs .nav-tabs-justified>.active>a:focus,.vue-tabs .nav-tabs-justified>.active>a:hover,.vue-tabs .nav-tabs.nav-justified>.active>a,.vue-tabs .nav-tabs.nav-justified>.active>a:focus,.vue-tabs .nav-tabs.nav-justified>.active>a:hover{border:1px solid #ddd}@media (min-width:768px){.vue-tabs .nav-tabs-justified>li>a,.vue-tabs .nav-tabs.nav-justified>li>a{border-bottom:1px solid #ddd;border-radius:4px 4px 0 0}.vue-tabs .nav-tabs-justified>.active>a,.vue-tabs .nav-tabs-justified>.active>a:focus,.vue-tabs .nav-tabs-justified>.active>a:hover,.vue-tabs .nav-tabs.nav-justified>.active>a,.vue-tabs .nav-tabs.nav-justified>.active>a:focus,.vue-tabs .nav-tabs.nav-justified>.active>a:hover{border-bottom-color:#fff}}.vue-tabs .tab-content>.tab-pane{display:none}.vue-tabs .tab-content>.active{display:block}.vue-tabs section[aria-hidden=true]{display:none}\", \"\"]);\n\n// exports\n"}],"filteredModules":0,"children":[],"name":"extract-text-webpack-plugin"}]} |
@@ -1,1 +0,1 @@ | ||
!function(t,e){"object"==typeof exports&&"object"==typeof module?module.exports=e():"function"==typeof define&&define.amd?define([],e):"object"==typeof exports?exports.VueTabs=e():t.VueTabs=e()}(this,function(){return function(t){function e(i){if(n[i])return n[i].exports;var a=n[i]={i:i,l:!1,exports:{}};return t[i].call(a.exports,a,a.exports,e),a.l=!0,a.exports}var n={};return e.m=t,e.c=n,e.i=function(t){return t},e.d=function(t,n,i){e.o(t,n)||Object.defineProperty(t,n,{configurable:!1,enumerable:!0,get:i})},e.n=function(t){var n=t&&t.__esModule?function(){return t.default}:function(){return t};return e.d(n,"a",n),n},e.o=function(t,e){return Object.prototype.hasOwnProperty.call(t,e)},e.p="",e(e.s=5)}([function(t,e){t.exports=function(t,e,n,i){var a,o=t=t||{},r=typeof t.default;"object"!==r&&"function"!==r||(a=t,o=t.default);var s="function"==typeof o?o.options:o;if(e&&(s.render=e.render,s.staticRenderFns=e.staticRenderFns),n&&(s._scopeId=n),i){var u=Object.create(s.computed||null);Object.keys(i).forEach(function(t){var e=i[t];u[t]=function(){return e}}),s.computed=u}return{esModule:a,exports:o,options:s}}},function(t,e,n){var i=n(0)(n(3),n(8),null,null);i.options.__file="C:\\work\\Github\\vue-tabs\\src\\components\\TabContent.vue",i.esModule&&Object.keys(i.esModule).some(function(t){return"default"!==t&&"__esModule"!==t})&&console.error("named exports are not supported in *.vue files."),i.options.functional&&console.error("[vue-loader] TabContent.vue: functional components are not supported with templates, they should use render functions."),t.exports=i.exports},function(t,e,n){n(7),n(6);var i=n(0)(n(4),n(9),null,null);i.options.__file="C:\\work\\Github\\vue-tabs\\src\\components\\VueTabs.vue",i.esModule&&Object.keys(i.esModule).some(function(t){return"default"!==t&&"__esModule"!==t})&&console.error("named exports are not supported in *.vue files."),i.options.functional&&console.error("[vue-loader] VueTabs.vue: functional components are not supported with templates, they should use render functions."),t.exports=i.exports},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.default={name:"v-tab",props:{title:{type:String,default:""},icon:{type:String,default:""},beforeChange:{type:Function},id:String,route:{type:[String,Object]},transitionName:String,transitionMode:String},computed:{isValidParent:function(){return"vue-tabs"===this.$parent.$options.name},hash:function(){return"#"+this.id}},data:function(){return{active:!1,validationError:null}}}},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.default={name:"vue-tabs",props:{activeTabColor:String,activeTextColor:String,textPosition:{type:String,default:"center"},type:{type:String,default:"tabs"},direction:{type:String,default:"horizontal"},centered:Boolean,startIndex:{type:Number,default:0}},data:function(){return{activeTabIndex:0,tabs:[]}},computed:{tabCount:function(){return this.tabs.length},isTabShape:function(){return"tabs"===this.type},isStacked:function(){return"vertical"===this.direction},classList:function(){return"nav "+(this.isTabShape?"nav-tabs":"nav-pills")+" "+(this.centered?"nav-justified":"")+" "+(this.isStacked?"nav-stacked":"")},stackedClass:function(){return this.isStacked?"stacked":""},activeTabStyle:function(){return{backgroundColor:this.activeTabColor,color:this.activeTextColor}},activeTitleColor:function(){return{color:this.activeTabColor}}},methods:{navigateToTab:function(t){var e=this;this.beforeTabChange(this.activeTabIndex,function(){e.changeTab(e.activeTabIndex,t)})},setLoading:function(t){this.loading=t,this.$emit("on-loading",t)},setValidationError:function(t,e){this.tabs[this.activeTabIndex].validationError=e,this.$emit("on-error",e),e&&t.$emit&&t.$emit("on-error",e)},validateBeforeChange:function(t,e,n){var i=this;if(this.setValidationError(e,null),t.then&&"function"==typeof t.then)this.setLoading(!0),t.then(function(t){i.setLoading(!1);var e=!0===t;i.executeBeforeChange(e,n)}).catch(function(t){i.setLoading(!1),i.setValidationError(e,t)});else{var a=!0===t;this.executeBeforeChange(a,n)}},executeBeforeChange:function(t,e){this.$emit("on-validate",t,this.activeTabIndex),t?e():this.tabs[this.activeTabIndex].validationError="error"},beforeTabChange:function(t,e){if(!this.loading){var n=this.tabs[t];if(n&&void 0!==n.beforeChange){var i=n.beforeChange();this.validateBeforeChange(i,n,e)}else e()}},changeTab:function(t,e){if(!(e<0||e>=this.tabCount)){var n=this.tabs[t],i=this.tabs[e];n&&(n.active=!1,i&&(i.active=!0)),this.activeTabIndex=e,this.$emit("tab-change",e,i,n),this.tryChangeRoute(i)}},tryChangeRoute:function(t){this.$router&&t&&t.route&&this.$router.push(t.route)}},mounted:function(){if(this.tabs=this.$children.filter(function(t){return"v-tab"===t.$options.name}),this.tabs.length>0&&0===this.startIndex){var t=this.tabs[this.activeTabIndex];t.active=!0,this.tryChangeRoute(t)}if(this.startIndex<this.tabs.length){var e=this.tabs[this.startIndex];this.activeTabIndex=this.startIndex,e.active=!0,this.tryChangeRoute(this.tabs[this.startIndex])}else console.warn("Prop startIndex set to "+this.startIndex+" is greater than the number of tabs - "+this.tabs.length+". Make sure that the starting index is less than the number of tabs registered")}}},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(2),a=n.n(i),o=n(1),r=n.n(o),s={VueTabs:a.a,VTab:r.a,install:function(t){t.component("vue-tabs",a.a),t.component("v-tab",r.a)}};"undefined"!=typeof window&&window.Vue&&window.Vue.use(s),e.default=s},function(t,e){},function(t,e){},function(t,e,n){t.exports={render:function(){var t=this,e=t.$createElement;return(t._self._c||e)("section",{staticClass:"tab-container",attrs:{role:"tabpanel",id:t.hash,"aria-hidden":!t.active}},[t._t("default")],2)},staticRenderFns:[]},t.exports.render._withStripped=!0},function(t,e,n){t.exports={render:function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div",{staticClass:"vue-tabs",class:t.stackedClass},[n("ul",{class:t.classList,attrs:{role:"tablist"}},[t._l(t.tabs,function(e,i){return t._t("tab",[n("li",{key:e,staticClass:"tab",class:{active:e.active},attrs:{role:"presentation"}},["top"===t.textPosition?n("span",{staticClass:"title title_top",style:e.active?t.activeTitleColor:{}},[t._v("\n "+t._s(e.title)+"\n ")]):t._e(),t._v(" "),n("a",{style:e.active?t.activeTabStyle:{},attrs:{href:"#"+e.id,"aria-selected":e.active,"aria-controls":"#"+e.id,role:"tab"},on:{click:function(e){e.preventDefault(),t.navigateToTab(i)}}},[n("i",{class:e.icon},["center"===t.textPosition?n("span",[t._v("\n "+t._s(e.title)+"\n ")]):t._e()])]),t._v(" "),"bottom"===t.textPosition?n("span",{staticClass:"title title_bottom",style:e.active?t.activeTitleColor:{}},[t._v("\n "+t._s(e.title)+"\n ")]):t._e()])],{tab:e,index:i,clickHandler:t.navigateToTab})})],2),t._v(" "),n("div",{staticClass:"tab-content"},[t._t("default")],2)])},staticRenderFns:[]},t.exports.render._withStripped=!0}])}); | ||
!function(t,e){"object"==typeof exports&&"object"==typeof module?module.exports=e():"function"==typeof define&&define.amd?define([],e):"object"==typeof exports?exports.VueTabs=e():t.VueTabs=e()}(this,function(){return function(t){function e(i){if(n[i])return n[i].exports;var a=n[i]={i:i,l:!1,exports:{}};return t[i].call(a.exports,a,a.exports,e),a.l=!0,a.exports}var n={};return e.m=t,e.c=n,e.i=function(t){return t},e.d=function(t,n,i){e.o(t,n)||Object.defineProperty(t,n,{configurable:!1,enumerable:!0,get:i})},e.n=function(t){var n=t&&t.__esModule?function(){return t.default}:function(){return t};return e.d(n,"a",n),n},e.o=function(t,e){return Object.prototype.hasOwnProperty.call(t,e)},e.p="",e(e.s=5)}([function(t,e){t.exports=function(t,e,n,i){var a,o=t=t||{},s=typeof t.default;"object"!==s&&"function"!==s||(a=t,o=t.default);var r="function"==typeof o?o.options:o;if(e&&(r.render=e.render,r.staticRenderFns=e.staticRenderFns),n&&(r._scopeId=n),i){var u=Object.create(r.computed||null);Object.keys(i).forEach(function(t){var e=i[t];u[t]=function(){return e}}),r.computed=u}return{esModule:a,exports:o,options:r}}},function(t,e,n){var i=n(0)(n(3),n(8),null,null);i.options.__file="C:\\work\\Github\\vue-tabs\\src\\components\\TabContent.vue",i.esModule&&Object.keys(i.esModule).some(function(t){return"default"!==t&&"__esModule"!==t})&&console.error("named exports are not supported in *.vue files."),i.options.functional&&console.error("[vue-loader] TabContent.vue: functional components are not supported with templates, they should use render functions."),t.exports=i.exports},function(t,e,n){n(7),n(6);var i=n(0)(n(4),n(9),null,null);i.options.__file="C:\\work\\Github\\vue-tabs\\src\\components\\VueTabs.vue",i.esModule&&Object.keys(i.esModule).some(function(t){return"default"!==t&&"__esModule"!==t})&&console.error("named exports are not supported in *.vue files."),i.options.functional&&console.error("[vue-loader] VueTabs.vue: functional components are not supported with templates, they should use render functions."),t.exports=i.exports},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.default={name:"v-tab",props:{title:{type:String,default:""},icon:{type:String,default:""},beforeChange:{type:Function},id:String,route:{type:[String,Object]},transitionName:String,transitionMode:String},computed:{isValidParent:function(){return"vue-tabs"===this.$parent.$options.name},hash:function(){return"#"+this.id}},data:function(){return{active:!1,validationError:null}}}},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.default={name:"vue-tabs",props:{activeTabColor:String,activeTextColor:String,textPosition:{type:String,default:"center"},type:{type:String,default:"tabs"},direction:{type:String,default:"horizontal"},centered:Boolean,startIndex:{type:Number,default:0}},data:function(){return{activeTabIndex:0,tabs:[]}},computed:{tabCount:function(){return this.tabs.length},isTabShape:function(){return"tabs"===this.type},isStacked:function(){return"vertical"===this.direction},classList:function(){return"nav "+(this.isTabShape?"nav-tabs":"nav-pills")+" "+(this.centered?"nav-justified":"")+" "+(this.isStacked?"nav-stacked":"")},stackedClass:function(){return this.isStacked?"stacked":""},activeTabStyle:function(){return{backgroundColor:this.activeTabColor,color:this.activeTextColor}},activeTitleColor:function(){return{color:this.activeTabColor}}},methods:{navigateToTab:function(t){var e=this;this.beforeTabChange(this.activeTabIndex,function(){e.changeTab(e.activeTabIndex,t)})},setLoading:function(t){this.loading=t,this.$emit("on-loading",t)},setValidationError:function(t,e){this.tabs[this.activeTabIndex].validationError=e,this.$emit("on-error",e),e&&t.$emit&&t.$emit("on-error",e)},validateBeforeChange:function(t,e,n){var i=this;if(this.setValidationError(e,null),t.then&&"function"==typeof t.then)this.setLoading(!0),t.then(function(t){i.setLoading(!1);var e=!0===t;i.executeBeforeChange(e,n)}).catch(function(t){i.setLoading(!1),i.setValidationError(e,t)});else{var a=!0===t;this.executeBeforeChange(a,n)}},executeBeforeChange:function(t,e){this.$emit("on-validate",t,this.activeTabIndex),t?e():this.tabs[this.activeTabIndex].validationError="error"},beforeTabChange:function(t,e){if(!this.loading){var n=this.tabs[t];if(n&&void 0!==n.beforeChange){var i=n.beforeChange();this.validateBeforeChange(i,n,e)}else e()}},changeTab:function(t,e){if(!(e<0||e>=this.tabCount)){var n=this.tabs[t],i=this.tabs[e];n&&(n.active=!1,i&&(i.active=!0)),this.activeTabIndex=e,this.$emit("tab-change",e,i,n),this.tryChangeRoute(i)}},tryChangeRoute:function(t){this.$router&&t&&t.route&&this.$router.push(t.route)},getTabs:function(){return this.$slots.default?this.$slots.default.filter(function(t){return t.componentOptions}).map(function(t){return t.componentInstance}):[]},initTabs:function(){if(this.tabs.length>0&&0===this.startIndex){var t=this.tabs[this.activeTabIndex];t.active=!0,this.tryChangeRoute(t)}if(this.startIndex<this.tabs.length){var e=this.tabs[this.startIndex];this.activeTabIndex=this.startIndex,e.active=!0,this.tryChangeRoute(this.tabs[this.startIndex])}}},updated:function(){var t=this.getTabs();this.tabs.length!==t.length&&(this.tabs=t,this.initTabs())},mounted:function(){this.tabs=this.getTabs(),this.initTabs()}}},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var i=n(2),a=n.n(i),o=n(1),s=n.n(o),r={VueTabs:a.a,VTab:s.a,install:function(t){t.component("vue-tabs",a.a),t.component("v-tab",s.a)}};"undefined"!=typeof window&&window.Vue&&window.Vue.use(r),e.default=r},function(t,e){},function(t,e){},function(t,e,n){t.exports={render:function(){var t=this,e=t.$createElement;return(t._self._c||e)("section",{staticClass:"tab-container",attrs:{role:"tabpanel",id:t.hash,"aria-hidden":!t.active}},[t._t("title"),t._v(" "),t._t("default")],2)},staticRenderFns:[]},t.exports.render._withStripped=!0},function(t,e,n){t.exports={render:function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div",{staticClass:"vue-tabs",class:t.stackedClass},[n("ul",{class:t.classList,attrs:{role:"tablist"}},[t._l(t.tabs,function(e,i){return t._t("tab",[n("li",{key:e,staticClass:"tab",class:{active:e.active},attrs:{role:"presentation"}},["top"===t.textPosition?n("span",{staticClass:"title title_top",style:e.active?t.activeTitleColor:{}},[t._v("\n "+t._s(e.title)+"\n ")]):t._e(),t._v(" "),n("a",{style:e.active?t.activeTabStyle:{},attrs:{href:"#"+e.id,"aria-selected":e.active,"aria-controls":"#"+e.id,role:"tab"},on:{click:function(e){e.preventDefault(),t.navigateToTab(i)}}},[n("i",{class:e.icon},["center"===t.textPosition?n("span",[t._v("\n "+t._s(e.title)+"\n ")]):t._e()])]),t._v(" "),"bottom"===t.textPosition?n("span",{staticClass:"title title_bottom",style:e.active?t.activeTitleColor:{}},[t._v("\n "+t._s(e.title)+"\n ")]):t._e()])],{tab:e,index:i,clickHandler:t.navigateToTab})})],2),t._v(" "),n("div",{staticClass:"tab-content"},[t._t("default")],2)])},staticRenderFns:[]},t.exports.render._withStripped=!0}])}); |
{ | ||
"name": "vue-nav-tabs", | ||
"version": "0.3.0", | ||
"version": "0.3.1", | ||
"description": "A vue based tab component", | ||
@@ -5,0 +5,0 @@ "main": "dist/vue-tabs.js", |
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
No License Found
License(Experimental) License information could not be found.
Found 1 instance in 1 package
914481
67
0