UNPKG

kingdot

Version:

A UI Components Library For Vue

502 lines (460 loc) 16.5 kB
module.exports = /******/ (function(modules) { // webpackBootstrap /******/ // The module cache /******/ var installedModules = {}; /******/ /******/ // The require function /******/ function __webpack_require__(moduleId) { /******/ /******/ // Check if module is in cache /******/ if(installedModules[moduleId]) { /******/ return installedModules[moduleId].exports; /******/ } /******/ // Create a new module (and put it into the cache) /******/ var module = installedModules[moduleId] = { /******/ i: moduleId, /******/ l: false, /******/ exports: {} /******/ }; /******/ /******/ // Execute the module function /******/ modules[moduleId].call(module.exports, module, module.exports, __webpack_require__); /******/ /******/ // Flag the module as loaded /******/ module.l = true; /******/ /******/ // Return the exports of the module /******/ return module.exports; /******/ } /******/ /******/ /******/ // expose the modules object (__webpack_modules__) /******/ __webpack_require__.m = modules; /******/ /******/ // expose the module cache /******/ __webpack_require__.c = installedModules; /******/ /******/ // define getter function for harmony exports /******/ __webpack_require__.d = function(exports, name, getter) { /******/ if(!__webpack_require__.o(exports, name)) { /******/ Object.defineProperty(exports, name, { enumerable: true, get: getter }); /******/ } /******/ }; /******/ /******/ // define __esModule on exports /******/ __webpack_require__.r = function(exports) { /******/ if(typeof Symbol !== 'undefined' && Symbol.toStringTag) { /******/ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' }); /******/ } /******/ Object.defineProperty(exports, '__esModule', { value: true }); /******/ }; /******/ /******/ // create a fake namespace object /******/ // mode & 1: value is a module id, require it /******/ // mode & 2: merge all properties of value into the ns /******/ // mode & 4: return value when already ns object /******/ // mode & 8|1: behave like require /******/ __webpack_require__.t = function(value, mode) { /******/ if(mode & 1) value = __webpack_require__(value); /******/ if(mode & 8) return value; /******/ if((mode & 4) && typeof value === 'object' && value && value.__esModule) return value; /******/ var ns = Object.create(null); /******/ __webpack_require__.r(ns); /******/ Object.defineProperty(ns, 'default', { enumerable: true, value: value }); /******/ if(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key)); /******/ return ns; /******/ }; /******/ /******/ // getDefaultExport function for compatibility with non-harmony modules /******/ __webpack_require__.n = function(module) { /******/ var getter = module && module.__esModule ? /******/ function getDefault() { return module['default']; } : /******/ function getModuleExports() { return module; }; /******/ __webpack_require__.d(getter, 'a', getter); /******/ return getter; /******/ }; /******/ /******/ // Object.prototype.hasOwnProperty.call /******/ __webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); }; /******/ /******/ // __webpack_public_path__ /******/ __webpack_require__.p = "/dist/"; /******/ /******/ /******/ // Load entry module and return exports /******/ return __webpack_require__(__webpack_require__.s = 255); /******/ }) /************************************************************************/ /******/ ({ /***/ 0: /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return normalizeComponent; }); /* globals __VUE_SSR_CONTEXT__ */ // IMPORTANT: Do NOT use ES2015 features in this file (except for modules). // This module is a runtime utility for cleaner component module output and will // be included in the final webpack user bundle. function normalizeComponent ( scriptExports, render, staticRenderFns, functionalTemplate, injectStyles, scopeId, moduleIdentifier, /* server only */ shadowMode /* vue-cli only */ ) { // Vue.extend constructor export interop var options = typeof scriptExports === 'function' ? scriptExports.options : scriptExports // render functions if (render) { options.render = render options.staticRenderFns = staticRenderFns options._compiled = true } // functional template if (functionalTemplate) { options.functional = true } // scopedId if (scopeId) { options._scopeId = 'data-v-' + scopeId } var hook if (moduleIdentifier) { // server build hook = function (context) { // 2.3 injection context = context || // cached call (this.$vnode && this.$vnode.ssrContext) || // stateful (this.parent && this.parent.$vnode && this.parent.$vnode.ssrContext) // functional // 2.2 with runInNewContext: true if (!context && typeof __VUE_SSR_CONTEXT__ !== 'undefined') { context = __VUE_SSR_CONTEXT__ } // inject component styles if (injectStyles) { injectStyles.call(this, context) } // register component module identifier for async chunk inferrence if (context && context._registeredComponents) { context._registeredComponents.add(moduleIdentifier) } } // used by ssr in case component is cached and beforeCreate // never gets called options._ssrRegister = hook } else if (injectStyles) { hook = shadowMode ? function () { injectStyles.call( this, (options.functional ? this.parent : this).$root.$options.shadowRoot ) } : injectStyles } if (hook) { if (options.functional) { // for template-only hot-reload because in that case the render fn doesn't // go through the normalizer options._injectStyles = hook // register for functional component in vue file var originalRender = options.render options.render = function renderWithStyleInjection (h, context) { hook.call(context) return originalRender(h, context) } } else { // inject component registration as beforeCreate hook var existing = options.beforeCreate options.beforeCreate = existing ? [].concat(existing, hook) : [hook] } } return { exports: scriptExports, options: options } } /***/ }), /***/ 255: /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; // ESM COMPAT FLAG __webpack_require__.r(__webpack_exports__); // CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./components/Menu/submenu.vue?vue&type=template&id=14c80ba2& var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('li',{class:_vm.classNameList},[(!_vm.isPopperMode)?_c('div',{class:_vm.classNameObj,style:([_vm.paddingStyle, _vm.styleObj]),on:{"mouseover":function($event){_vm.hover = true},"mouseout":function($event){_vm.hover = false},"click":_vm.clickSubMenu}},[_c('div',{staticClass:"kd-submenu-title-content"},[_vm._t("title")],2),_c('i',{directives:[{name:"show",rawName:"v-show",value:(!_vm.menu.collapse),expression:"!menu.collapse"}],staticClass:"kd-submenu-icon-arrow kd-icon-caret-bottom"})]):_vm._e(),(!_vm.isPopperMode)?_c('kd-transition',{attrs:{"type":"collapse"}},[_c('ul',{directives:[{name:"show",rawName:"v-show",value:(_vm.isOpened),expression:"isOpened"}],class:{ 'kd-submenu-item': true, }},[_vm._t("default")],2)]):_c('kd-tooltip',{attrs:{"placement":_vm.menu.isHorizontalMode && _vm.$parent.$options.componentName === 'KdMenu' ? 'bottom' : 'right-start',"contentClass":_vm.contentClass,"trigger":_vm.trigger,"showArrow":false,"widthLimit":false,"popperParentToTooltip":true,"popperMixins":_vm.tooltipContentMixins,"popperModifiers":_vm.popperModifiers},model:{value:(_vm.toolTipValue),callback:function ($$v) {_vm.toolTipValue=$$v},expression:"toolTipValue"}},[_c('div',{class:_vm.classNameObj,style:([_vm.paddingStyle, _vm.styleObj]),on:{"mouseover":function($event){_vm.hover = true},"mouseout":function($event){_vm.hover = false},"click":_vm.clickSubMenu}},[_c('div',{staticClass:"kd-submenu-title-content"},[_vm._t("title")],2),_c('i',{directives:[{name:"show",rawName:"v-show",value:(!_vm.menu.collapse),expression:"!menu.collapse"}],staticClass:"kd-submenu-icon-arrow kd-icon-caret-bottom"})]),_c('template',{slot:"content"},[_c('ul',{class:{ 'kd-submenu-popper-content': true, }},[_vm._t("default")],2)])],2)],1)} var staticRenderFns = [] // CONCATENATED MODULE: ./components/Menu/submenu.vue?vue&type=template&id=14c80ba2& // EXTERNAL MODULE: ./components/Menu/menu-mixin.js var menu_mixin = __webpack_require__(43); // CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib??vue-loader-options!./components/Menu/submenu.vue?vue&type=script&lang=js& // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // /* harmony default export */ var submenuvue_type_script_lang_js_ = ({ name: 'KdSubmenu', componentName: 'KdSubmenu', mixins: [menu_mixin["a" /* default */]], props: { name: { type: [String, Number] }, disabled: { type: Boolean, default: false }, trigger: { type: String, default: function _default() { return 'click'; } }, popperClass: { type: String, default: function _default() { return ''; } }, popperAppendToBody: { type: Boolean, default: function _default() { return false; } } }, data: function data() { return { hover: false, toolTipValue: false, menuItemList: new Set() }; }, computed: { isPopperMode: function isPopperMode() { return this.menu.isHorizontalMode || this.popperAppendToBody; }, classNameObj: function classNameObj() { return { 'kd-submenu-title': true, 'kd-menu-item': true, 'kd-submenu-popper-title': this.isPopperMode, 'kd-submenu-disabled': this.disabled, 'kd-submenu-title-horizontal': this.$parent.$options.componentName === 'KdMenu' && this.$parent.isHorizontalMode, 'kd-submenu-horizontal': this.menu.isHorizontalMode, 'kd-submenu-title-vertical': this.$parent.$options.componentName === 'KdMenu' && this.$parent.isVerticalMode }; }, classNameList: function classNameList() { return { 'kd-submenu': true, 'kd-submenu-active': this.isActive && this.isPopperMode, 'kd-submenu-opened': this.isOpened }; }, // 折叠收起菜单状态下高亮 highlight: function highlight() { return !this.disabled && this.menu.collapse; }, styleObj: function styleObj() { var style = {}; style.backgroundColor = this.menu.backgroundColor; style.color = this.menu.textColor; if (this.isActive && this.isPopperMode && (this.menu.activeBackgroundColor || this.menu.activeBackgroundImage)) { style.backgroundColor = this.menu.activeBackgroundColor; style.backgroundImage = this.menu.activeBackgroundImage; style.color = this.menu.activeTextColor; } if (this.hover && this.menu.hoverBackgroundColor) { style.backgroundColor = this.menu.hoverBackgroundColor; style.color = this.menu.hoverTextColor; } return style; // return { // 'backgroundColor': this.highlight ? this.menu.activeBackgroundColor : (this.hover ? this.menu.hoverBackgroundColor : this.menu.backgroundColor), // 'color': this.highlight ? this.menu.activeTextColor : (this.hover ? this.menu.hoverTextColor : this.menu.textColor), // 'cursor': this.disabled ? 'not-allowed' : 'pointer' // }; }, isActive: function isActive() { return this.menuItemList.has(this.menu.activeItem); }, isOpened: function isOpened() { return this.menu.openedSubList.includes(this.name); }, tooltipContentMixins: function tooltipContentMixins() { var menu = this.menu; var subMenu = this; return [{ provide: function provide() { return { menu: menu, subMenu: subMenu }; } }]; }, contentClass: function contentClass() { var className = 'kd-submenu-tooltip-content'; if (this.menu.isHorizontalMode) { className += ' kd-submenu-popper-horizontal'; } if (this.popperClass) { className += ' ' + this.popperClass; } return className; }, popperModifiers: function popperModifiers() { return [{ name: 'offset', options: { offset: [0, -8] } }]; } }, methods: { clickSubMenu: function clickSubMenu() { if (this.disabled) return; this.menu.$emit('toggleSubOpened', this.name); }, addMenuItem: function addMenuItem(itemName) { this.menuItemList.add(itemName); }, removeMenuItem: function removeMenuItem(itemName) { this.menuItemList.delete(itemName); }, hidePopper: function hidePopper() { this.toolTipValue = false; this.subMenu && this.subMenu.hidePopper(); this.hover = false; } } }); // CONCATENATED MODULE: ./components/Menu/submenu.vue?vue&type=script&lang=js& /* harmony default export */ var Menu_submenuvue_type_script_lang_js_ = (submenuvue_type_script_lang_js_); // EXTERNAL MODULE: ./node_modules/vue-loader/lib/runtime/componentNormalizer.js var componentNormalizer = __webpack_require__(0); // CONCATENATED MODULE: ./components/Menu/submenu.vue /* normalize component */ var component = Object(componentNormalizer["a" /* default */])( Menu_submenuvue_type_script_lang_js_, render, staticRenderFns, false, null, null, null ) /* harmony default export */ var submenu = (component.exports); // CONCATENATED MODULE: ./components/Submenu/index.js submenu.install = function (Vue) { Vue.component(submenu.name, submenu); }; /* harmony default export */ var Submenu = __webpack_exports__["default"] = (submenu); /***/ }), /***/ 43: /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; /* harmony default export */ __webpack_exports__["a"] = ({ inject: ['menu'], computed: { paddingStyle: function paddingStyle() { var padding = 24; var parent = this.$parent; if (parent.$options.componentName === 'KdMenu' && parent.isHorizontalMode) return {}; if (!this.menu.collapse && !(parent.$options.componentName === 'KdSubmenu' && parent.isPopperMode)) { while (parent && parent.$options.componentName !== 'KdMenu') { if (parent.$options.componentName === 'KdSubmenu' && parent.isPopperMode) { break; } if (parent.$options.componentName === 'KdSubmenu') { padding += 24; } parent = parent.$parent; } } return { paddingLeft: padding + 'px' }; } } }); /***/ }) /******/ })["default"];