UNPKG

@varonervar/components

Version:

> 基于[Element-UI](https://element.eleme.cn/#/zh-CN/component/quickstart) 封装常用组件,部分组件参考[vue-element-admin](https://github.com/PanJiaChen/vue-element-admin)

2,037 lines (1,799 loc) 55 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 = 28); /******/ }) /************************************************************************/ /******/ ([ /* 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 } } /***/ }), /* 1 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; /* unused harmony export typeCheck */ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "d", function() { return isExternal; }); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "c", function() { return deepClone; }); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "g", function() { return isFalse; }); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "b", function() { return changeRuleItems; }); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "e", function() { return editFormDateIsRange; }); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "f", function() { return editFormatIsArr; }); /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return ajaxDataDispose; }); /* harmony import */ var core_js_modules_es_array_includes_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(3); /* harmony import */ var core_js_modules_es_array_includes_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_includes_js__WEBPACK_IMPORTED_MODULE_0__); /** * 检测数据类型 * @param {any} target 目标数据 */ const typeCheck = target => Object.prototype.toString.call(target).slice(8, -1); /** * @param {string} path * @returns {Boolean} */ function isExternal(path) { return /^(https?:|mailto:|tel:)/.test(path); } /** * This is just a simple version of deep copy * Has a lot of edge cases bug * If you want to use a perfect deep copy, use lodash's _.cloneDeep * @param {Object} source 源对象 * @returns {Object} 克隆对象 */ function deepClone(source) { if (!['Array', 'Object'].includes(typeCheck(source))) { return source; } const targetObj = source.constructor(); Object.keys(source).forEach(keys => { if (['Array', 'Object'].includes(typeCheck(source[keys]))) { targetObj[keys] = deepClone(source[keys]); } else { targetObj[keys] = source[keys]; } }); return targetObj; } // 判断值是否不存在, 提交数据时,存在值为false或0的情况 const isFalse = data => { return data == null || data === ''; }; // 业务函数:检查组件的rule用change还是blur function changeRuleItems(type) { return ['radio', 'select', 'datePicker', 'checkbox', 'cascader', 'timePicker'].includes(type); } // 业务函数:检查时间是不是范围选择 function editFormDateIsRange(item) { return item.template === 'datePicker' && ['daterange', 'datetimerange'].includes(item.type); } // 业务函数:检查编辑组件的是否初始赋值数组 function editFormatIsArr(item) { // 如果有指定是数组,则返回数组 if (item.valIsArr) return true; const selectMul = item.template === 'select' && item.bind && item.bind.multiple; const dateMul = editFormDateIsRange(item); const timeMul = item.template === 'timePicker' && item.isRange; return ['checkbox', 'cascader'].includes(item.template) || selectMul || dateMul || timeMul; } // 业务函数:json数据处理, condition与form function ajaxDataDispose(DATA) { if (typeCheck(DATA) !== 'Object') return DATA; const result = {}; Object.keys(DATA).forEach(key => { if (key.includes(',')) { const data = DATA[key] || []; key.split(',').forEach((k, i) => { result[k] = data[i]; }); } else { result[key] = DATA[key]; } }); return result; } /***/ }), /* 2 */ /***/ (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!./packages/z-select/body/ZSelect.vue?vue&type=template&id=f8f01c5a& var render = function () { var _vm = this var _h = _vm.$createElement var _c = _vm._self._c || _h return _c( "el-select", _vm._g(_vm._b({}, "el-select", _vm.$attrs, false), _vm.$listeners), _vm._l(_vm.list, function (item) { return _c("el-option", { key: item[_vm.optionValue], attrs: { label: item[_vm.optionLabel], value: item[_vm.optionValue], disabled: _vm.disabledHandler(item), }, }) }), 1 ) } var staticRenderFns = [] render._withStripped = true // CONCATENATED MODULE: ./packages/z-select/body/ZSelect.vue?vue&type=template&id=f8f01c5a& // CONCATENATED MODULE: ./node_modules/babel-loader/lib??ref--0!./node_modules/vue-loader/lib??vue-loader-options!./packages/z-select/body/ZSelect.vue?vue&type=script&lang=js& // // // // // // // // // // // // // /* harmony default export */ var ZSelectvue_type_script_lang_js_ = ({ name: 'ZSelect', inheritAttrs: false, props: { list: { type: Array, default() { return []; } }, optionLabel: { type: String, default: 'label' }, optionValue: { type: String, default: 'value' }, data: { type: Object, default() { return {}; } } }, methods: { disabledHandler(item) { if (typeof item.disabled === 'function') { return item.disabled(this.data, item); } if (typeof item.disabled === 'boolean') { return item.disabled; } return false; } } }); // CONCATENATED MODULE: ./packages/z-select/body/ZSelect.vue?vue&type=script&lang=js& /* harmony default export */ var body_ZSelectvue_type_script_lang_js_ = (ZSelectvue_type_script_lang_js_); // EXTERNAL MODULE: ./node_modules/vue-loader/lib/runtime/componentNormalizer.js var componentNormalizer = __webpack_require__(0); // CONCATENATED MODULE: ./packages/z-select/body/ZSelect.vue /* normalize component */ var component = Object(componentNormalizer["a" /* default */])( body_ZSelectvue_type_script_lang_js_, render, staticRenderFns, false, null, null, null ) /* harmony default export */ var ZSelect = (component.exports); // CONCATENATED MODULE: ./packages/z-select/index.js /* istanbul ignore next */ ZSelect.install = function install(Vue) { Vue.component(ZSelect.name, ZSelect); }; /* harmony default export */ var z_select = __webpack_exports__["default"] = (ZSelect); /***/ }), /* 3 */ /***/ (function(module, exports) { module.exports = require("core-js/modules/es.array.includes.js"); /***/ }), /* 4 */ /***/ (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!./packages/z-cascader/body/ZCascader.vue?vue&type=template&id=246d4cc0& var render = function () { var _vm = this var _h = _vm.$createElement var _c = _vm._self._c || _h return _c( "el-cascader", _vm._g( _vm._b( { attrs: { options: _vm.list } }, "el-cascader", _vm.$attrs, false ), _vm.$listeners ) ) } var staticRenderFns = [] render._withStripped = true // CONCATENATED MODULE: ./packages/z-cascader/body/ZCascader.vue?vue&type=template&id=246d4cc0& // CONCATENATED MODULE: ./node_modules/babel-loader/lib??ref--0!./node_modules/vue-loader/lib??vue-loader-options!./packages/z-cascader/body/ZCascader.vue?vue&type=script&lang=js& // // // // // /* harmony default export */ var ZCascadervue_type_script_lang_js_ = ({ name: 'ZCascader', inheritAttrs: false, props: { list: { type: Array, default() { return []; } } } }); // CONCATENATED MODULE: ./packages/z-cascader/body/ZCascader.vue?vue&type=script&lang=js& /* harmony default export */ var body_ZCascadervue_type_script_lang_js_ = (ZCascadervue_type_script_lang_js_); // EXTERNAL MODULE: ./node_modules/vue-loader/lib/runtime/componentNormalizer.js var componentNormalizer = __webpack_require__(0); // CONCATENATED MODULE: ./packages/z-cascader/body/ZCascader.vue /* normalize component */ var component = Object(componentNormalizer["a" /* default */])( body_ZCascadervue_type_script_lang_js_, render, staticRenderFns, false, null, null, null ) /* harmony default export */ var ZCascader = (component.exports); // CONCATENATED MODULE: ./packages/z-cascader/index.js /* istanbul ignore next */ ZCascader.install = function install(Vue) { Vue.component(ZCascader.name, ZCascader); }; /* harmony default export */ var z_cascader = __webpack_exports__["default"] = (ZCascader); /***/ }), /* 5 */ /***/ (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!./packages/z-checkbox/body/ZCheckbox.vue?vue&type=template&id=112d463b& var render = function () { var _vm = this var _h = _vm.$createElement var _c = _vm._self._c || _h return _c( "el-checkbox-group", _vm._g(_vm._b({}, "el-checkbox-group", _vm.$attrs, false), _vm.$listeners), _vm._l(_vm.list, function (item) { return _c( "el-checkbox", { key: item[_vm.optionValue], staticClass: "mr-20", class: { block: _vm.block }, attrs: { label: item[_vm.optionValue], disabled: _vm.disabledHandler(item), }, }, [_vm._v(_vm._s(item[_vm.optionLabel]))] ) }), 1 ) } var staticRenderFns = [] render._withStripped = true // CONCATENATED MODULE: ./packages/z-checkbox/body/ZCheckbox.vue?vue&type=template&id=112d463b& // CONCATENATED MODULE: ./node_modules/babel-loader/lib??ref--0!./node_modules/vue-loader/lib??vue-loader-options!./packages/z-checkbox/body/ZCheckbox.vue?vue&type=script&lang=js& // // // // // // // // // // // // // // // /* harmony default export */ var ZCheckboxvue_type_script_lang_js_ = ({ name: 'ZCheckbox', inheritAttrs: false, props: { list: { type: Array, default() { return []; } }, block: { type: Boolean, default: false }, optionLabel: { type: String, default: 'label' }, optionValue: { type: String, default: 'value' }, data: { type: Object, default() { return {}; } } }, methods: { disabledHandler(item) { if (typeof item.disabled === 'function') { return item.disabled(this.data, item); } if (typeof item.disabled === 'boolean') { return item.disabled; } return false; } } }); // CONCATENATED MODULE: ./packages/z-checkbox/body/ZCheckbox.vue?vue&type=script&lang=js& /* harmony default export */ var body_ZCheckboxvue_type_script_lang_js_ = (ZCheckboxvue_type_script_lang_js_); // EXTERNAL MODULE: ./node_modules/vue-loader/lib/runtime/componentNormalizer.js var componentNormalizer = __webpack_require__(0); // CONCATENATED MODULE: ./packages/z-checkbox/body/ZCheckbox.vue /* normalize component */ var component = Object(componentNormalizer["a" /* default */])( body_ZCheckboxvue_type_script_lang_js_, render, staticRenderFns, false, null, null, null ) /* harmony default export */ var ZCheckbox = (component.exports); // CONCATENATED MODULE: ./packages/z-checkbox/index.js /* istanbul ignore next */ ZCheckbox.install = function install(Vue) { Vue.component(ZCheckbox.name, ZCheckbox); }; /* harmony default export */ var z_checkbox = __webpack_exports__["default"] = (ZCheckbox); /***/ }), /* 6 */ /***/ (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!./packages/z-radio/body/ZRadio.vue?vue&type=template&id=042a5dea& var render = function () { var _vm = this var _h = _vm.$createElement var _c = _vm._self._c || _h return _c( "el-radio-group", _vm._g(_vm._b({}, "el-radio-group", _vm.$attrs, false), _vm.$listeners), _vm._l(_vm.list, function (item) { return _c( "el-radio", { key: item[_vm.optionValue], attrs: { label: item[_vm.optionValue], disabled: _vm.disabledHandler(item), }, }, [_vm._v(_vm._s(item[_vm.optionLabel]))] ) }), 1 ) } var staticRenderFns = [] render._withStripped = true // CONCATENATED MODULE: ./packages/z-radio/body/ZRadio.vue?vue&type=template&id=042a5dea& // CONCATENATED MODULE: ./node_modules/babel-loader/lib??ref--0!./node_modules/vue-loader/lib??vue-loader-options!./packages/z-radio/body/ZRadio.vue?vue&type=script&lang=js& // // // // // // // // // // // // // /* harmony default export */ var ZRadiovue_type_script_lang_js_ = ({ name: 'ZRadio', inheritAttrs: false, props: { list: { type: Array, default() { return []; } }, optionLabel: { type: String, default: 'label' }, optionValue: { type: String, default: 'value' }, data: { type: Object, default() { return {}; } } }, methods: { disabledHandler(item) { if (typeof item.disabled === 'function') { return item.disabled(this.data, item); } if (typeof item.disabled === 'boolean') { return item.disabled; } return false; } } }); // CONCATENATED MODULE: ./packages/z-radio/body/ZRadio.vue?vue&type=script&lang=js& /* harmony default export */ var body_ZRadiovue_type_script_lang_js_ = (ZRadiovue_type_script_lang_js_); // EXTERNAL MODULE: ./node_modules/vue-loader/lib/runtime/componentNormalizer.js var componentNormalizer = __webpack_require__(0); // CONCATENATED MODULE: ./packages/z-radio/body/ZRadio.vue /* normalize component */ var component = Object(componentNormalizer["a" /* default */])( body_ZRadiovue_type_script_lang_js_, render, staticRenderFns, false, null, null, null ) /* harmony default export */ var ZRadio = (component.exports); // CONCATENATED MODULE: ./packages/z-radio/index.js /* istanbul ignore next */ ZRadio.install = function install(Vue) { Vue.component(ZRadio.name, ZRadio); }; /* harmony default export */ var z_radio = __webpack_exports__["default"] = (ZRadio); /***/ }), /* 7 */ /***/ (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!./packages/z-radio-button/body/ZRadioButton.vue?vue&type=template&id=7a7a0b50& var render = function () { var _vm = this var _h = _vm.$createElement var _c = _vm._self._c || _h return _c( "el-radio-group", _vm._g(_vm._b({}, "el-radio-group", _vm.$attrs, false), _vm.$listeners), _vm._l(_vm.list, function (item) { return _c( "el-radio-button", { key: item[_vm.optionValue], attrs: { label: item[_vm.optionValue], disabled: _vm.disabledHandler(item), }, }, [_vm._v(_vm._s(item[_vm.optionLabel]))] ) }), 1 ) } var staticRenderFns = [] render._withStripped = true // CONCATENATED MODULE: ./packages/z-radio-button/body/ZRadioButton.vue?vue&type=template&id=7a7a0b50& // CONCATENATED MODULE: ./node_modules/babel-loader/lib??ref--0!./node_modules/vue-loader/lib??vue-loader-options!./packages/z-radio-button/body/ZRadioButton.vue?vue&type=script&lang=js& // // // // // // // // // // // // // /* harmony default export */ var ZRadioButtonvue_type_script_lang_js_ = ({ name: 'ZRadio', inheritAttrs: false, props: { list: { type: Array, default() { return []; } }, optionLabel: { type: String, default: 'label' }, optionValue: { type: String, default: 'value' }, data: { type: Object, default() { return {}; } } }, methods: { disabledHandler(item) { if (typeof item.disabled === 'function') { return item.disabled(this.data, item); } if (typeof item.disabled === 'boolean') { return item.disabled; } return false; } } }); // CONCATENATED MODULE: ./packages/z-radio-button/body/ZRadioButton.vue?vue&type=script&lang=js& /* harmony default export */ var body_ZRadioButtonvue_type_script_lang_js_ = (ZRadioButtonvue_type_script_lang_js_); // EXTERNAL MODULE: ./node_modules/vue-loader/lib/runtime/componentNormalizer.js var componentNormalizer = __webpack_require__(0); // CONCATENATED MODULE: ./packages/z-radio-button/body/ZRadioButton.vue /* normalize component */ var component = Object(componentNormalizer["a" /* default */])( body_ZRadioButtonvue_type_script_lang_js_, render, staticRenderFns, false, null, null, null ) /* harmony default export */ var ZRadioButton = (component.exports); // CONCATENATED MODULE: ./packages/z-radio-button/index.js /* istanbul ignore next */ ZRadioButton.install = function install(Vue) { Vue.component(ZRadioButton.name, ZRadioButton); }; /* harmony default export */ var z_radio_button = __webpack_exports__["default"] = (ZRadioButton); /***/ }), /* 8 */ /***/ (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!./packages/z-edit-type/body/ZEditType.vue?vue&type=template&id=683e4176& var render = function () { var _vm = this var _h = _vm.$createElement var _c = _vm._self._c || _h return _vm.config.template === "static" ? _c("span", [_vm._v(_vm._s(_vm.data[_vm.config.value]))]) : _vm.config.template === "select" ? _c( "ZSelect", _vm._g( _vm._b( { attrs: { list: _vm.config.list, optionLabel: _vm.config.optionLabel, optionValue: _vm.config.optionValue, data: _vm.data, disabled: _vm.disabledHandler(_vm.config), }, model: { value: _vm.data[_vm.config.value], callback: function ($$v) { _vm.$set(_vm.data, _vm.config.value, $$v) }, expression: "data[config.value]", }, }, "ZSelect", _vm.calcConfig, false ), _vm.config.on ) ) : _vm.config.template === "cascader" ? _c( "ZCascader", _vm._g( _vm._b( { attrs: { list: _vm.config.list, disabled: _vm.disabledHandler(_vm.config), }, model: { value: _vm.data[_vm.config.value], callback: function ($$v) { _vm.$set(_vm.data, _vm.config.value, $$v) }, expression: "data[config.value]", }, }, "ZCascader", _vm.calcConfig, false ), _vm.config.on ) ) : _vm.config.template === "numberInput" ? _c( "el-input", _vm._g( _vm._b( { staticClass: "inherit", attrs: { value: _vm.data[_vm.config.value], type: "text", "auto-complete": "new-password", disabled: _vm.disabledHandler(_vm.config), }, on: { input: function ($event) { return _vm.handlerInputLimit( $event, _vm.config.value, _vm.data, _vm.config ) }, }, }, "el-input", _vm.calcConfig, false ), _vm.config.on ) ) : _vm.config.template === "textarea" ? _c( "el-input", _vm._g( _vm._b( { staticClass: "inherit", attrs: { rows: _vm.config.rows || 4, type: "textarea", disabled: _vm.disabledHandler(_vm.config), }, model: { value: _vm.data[_vm.config.value], callback: function ($$v) { _vm.$set(_vm.data, _vm.config.value, $$v) }, expression: "data[config.value]", }, }, "el-input", _vm.calcConfig, false ), _vm.config.on ) ) : _vm.config.template === "number" ? _c( "el-input-number", _vm._g( _vm._b( { attrs: { "controls-position": "right", min: _vm.config.min == null ? 1 : _vm.config.min, max: _vm.config.max, disabled: _vm.disabledHandler(_vm.config), }, model: { value: _vm.data[_vm.config.value], callback: function ($$v) { _vm.$set( _vm.data, _vm.config.value, typeof $$v === "string" ? $$v.trim() : $$v ) }, expression: "data[config.value]", }, }, "el-input-number", _vm.calcConfig, false ), _vm.config.on ) ) : _vm.config.template === "checkbox" ? _c( "ZCheckbox", _vm._g( _vm._b( { attrs: { list: _vm.config.list, optionLabel: _vm.config.optionLabel, optionValue: _vm.config.optionValue, block: _vm.config.block, data: _vm.data, disabled: _vm.disabledHandler(_vm.config), }, model: { value: _vm.data[_vm.config.value], callback: function ($$v) { _vm.$set(_vm.data, _vm.config.value, $$v) }, expression: "data[config.value]", }, }, "ZCheckbox", _vm.calcConfig, false ), _vm.config.on ) ) : _vm.config.template === "radio" ? _c( "ZRadio", _vm._g( _vm._b( { attrs: { list: _vm.config.list, optionLabel: _vm.config.optionLabel, optionValue: _vm.config.optionValue, data: _vm.data, disabled: _vm.disabledHandler(_vm.config), }, model: { value: _vm.data[_vm.config.value], callback: function ($$v) { _vm.$set(_vm.data, _vm.config.value, $$v) }, expression: "data[config.value]", }, }, "ZRadio", _vm.calcConfig, false ), _vm.config.on ) ) : _vm.config.template === "radioButton" ? _c( "ZRadioButton", _vm._g( _vm._b( { attrs: { list: _vm.config.list, optionLabel: _vm.config.optionLabel, optionValue: _vm.config.optionValue, data: _vm.data, disabled: _vm.disabledHandler(_vm.config), }, model: { value: _vm.data[_vm.config.value], callback: function ($$v) { _vm.$set(_vm.data, _vm.config.value, $$v) }, expression: "data[config.value]", }, }, "ZRadioButton", _vm.calcConfig, false ), _vm.config.on ) ) : _vm.config.template === "datePicker" ? _c( "el-date-picker", _vm._g( _vm._b( { attrs: { type: _vm.config.type ? _vm.config.type : "date", "auto-complete": "new-password", "value-format": _vm.config.valueFormat || "yyyy-MM-dd HH:mm:ss", "picker-options": _vm.handlerPickerOptions(_vm.config), "range-separator": _vm.config.rangeSeparator || "至", "start-placeholder": _vm.config.startPlaceholder || "开始日期", "end-placeholder": _vm.config.endPlaceholder || "结束日期", disabled: _vm.disabledHandler(_vm.config), }, model: { value: _vm.data[_vm.config.value], callback: function ($$v) { _vm.$set(_vm.data, _vm.config.value, $$v) }, expression: "data[config.value]", }, }, "el-date-picker", _vm.calcConfig, false ), _vm.config.on ) ) : _vm.config.template === "timeSelect" ? _c( "el-time-select", _vm._g( _vm._b( { attrs: { "auto-complete": "new-password", "value-format": _vm.config.valueFormat || "yyyy-MM-dd HH:mm:ss", "picker-options": _vm.config.pickerOptions, placeholder: _vm.config.placeholder || "选择时间", disabled: _vm.disabledHandler(_vm.config), }, model: { value: _vm.data[_vm.config.value], callback: function ($$v) { _vm.$set(_vm.data, _vm.config.value, $$v) }, expression: "data[config.value]", }, }, "el-time-select", _vm.calcConfig, false ), _vm.config.on ) ) : _vm.config.template === "timePicker" ? _c( "el-time-picker", _vm._g( _vm._b( { attrs: { "is-range": !!_vm.config.isRange, "auto-complete": "new-password", "value-format": _vm.config.valueFormat || "yyyy-MM-dd HH:mm:ss", "picker-options": _vm.handlerPickerOptions(_vm.config), "range-separator": _vm.config.rangeSeparator || "至", "start-placeholder": _vm.config.startPlaceholder || "开始时间", "end-placeholder": _vm.config.endPlaceholder || "结束时间", disabled: _vm.disabledHandler(_vm.config), }, model: { value: _vm.data[_vm.config.value], callback: function ($$v) { _vm.$set(_vm.data, _vm.config.value, $$v) }, expression: "data[config.value]", }, }, "el-time-picker", _vm.calcConfig, false ), _vm.config.on ) ) : _vm.config.template === "switch" ? _c( "el-switch", _vm._g( _vm._b( { attrs: { "active-text": _vm.config.activeText || "开启", "inactive-text": _vm.config.inactiveText || "关闭", disabled: _vm.disabledHandler(_vm.config), }, model: { value: _vm.data[_vm.config.value], callback: function ($$v) { _vm.$set(_vm.data, _vm.config.value, $$v) }, expression: "data[config.value]", }, }, "el-switch", _vm.calcConfig, false ), _vm.config.on ) ) : _vm.config.template === "slot" ? _c( "span", [ _vm._t(_vm.config.slotName, null, { data: _vm.data, config: _vm.config, }), ], 2 ) : _c( "el-input", _vm._g( _vm._b( { staticClass: "inherit", attrs: { "auto-complete": "new-password", disabled: _vm.disabledHandler(_vm.config), }, model: { value: _vm.data[_vm.config.value], callback: function ($$v) { _vm.$set(_vm.data, _vm.config.value, $$v) }, expression: "data[config.value]", }, }, "el-input", _vm.calcConfig, false ), _vm.config.on ) ) } var staticRenderFns = [] render._withStripped = true // CONCATENATED MODULE: ./packages/z-edit-type/body/ZEditType.vue?vue&type=template&id=683e4176& // EXTERNAL MODULE: external "core-js/modules/es.array.includes.js" var es_array_includes_js_ = __webpack_require__(3); // EXTERNAL MODULE: ./packages/z-select/index.js + 5 modules var z_select = __webpack_require__(2); // EXTERNAL MODULE: ./packages/z-cascader/index.js + 5 modules var z_cascader = __webpack_require__(4); // EXTERNAL MODULE: ./packages/z-checkbox/index.js + 5 modules var z_checkbox = __webpack_require__(5); // EXTERNAL MODULE: ./packages/z-radio/index.js + 5 modules var z_radio = __webpack_require__(6); // EXTERNAL MODULE: ./packages/z-radio-button/index.js + 5 modules var z_radio_button = __webpack_require__(7); // CONCATENATED MODULE: ./node_modules/babel-loader/lib??ref--0!./node_modules/vue-loader/lib??vue-loader-options!./packages/z-edit-type/body/ZEditType.vue?vue&type=script&lang=js& // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // /* harmony default export */ var ZEditTypevue_type_script_lang_js_ = ({ name: 'ZEditType', inheritAttrs: false, props: { data: { type: Object, required: true, default() { return {}; } }, config: { type: Object, required: true, default() { return {}; } }, // 控件的size size: { type: String, default: 'small' } }, methods: { handlerInputLimit(value, key, context, config) { // 限制输入框输入 if (!value) { context[key] = ''; return; } const min = Math.max(0, config.min || 0); let str = "^\\d+$"; if (config.max && config.max >= min) { str = "^\\d{".concat(min, ",").concat(config.max, "}$"); } const regExP = new RegExp(str); if (regExP.test(value)) { context[key] = value; } }, handlerPickerOptions(_ref) { let { pickerOptions, startDisabled, endDisabled } = _ref; if (!startDisabled && !endDisabled) return {}; const today = new Date().setHours(0, 0, 0, 0); const obj = { yesterday: today - 8.64e7, today, tomorrow: today + 8.64e7 }; let start = 0; let end = 0; if (startDisabled) { const val = obj[startDisabled]; // eslint-disable-next-line no-nested-ternary const S = val ? new Date(val) : Date.parse(startDisabled) ? new Date(startDisabled) : null; start = S ? S.setHours(0, 0, 0, 0) : 0; } if (endDisabled) { const val = obj[endDisabled]; // eslint-disable-next-line no-nested-ternary const E = val ? new Date(val) : Date.parse(endDisabled) ? new Date(endDisabled) : null; end = E ? E.setHours(0, 0, 0, 0) : 0; } // 如果结束时间比开始时间小 if (end && start && end < start) { ; [start, end] = [end, start]; } return { ...pickerOptions, disabledDate(time) { const T = time.getTime(); return start && T <= start || end && T >= end; } }; }, disabledHandler(item) { if (typeof item.disabled === 'function') { return !!item.disabled(this.$deepClone(this.data), this.$deepClone(item)); } if (typeof item.disabled === 'boolean') { return !!item.disabled; } return false; } }, computed: { isSelectType(_ref2) { let { config } = _ref2; return ['select', 'datePicker', 'cascader', 'timePicker'].includes(config.template); }, calcConfig(_ref3) { let { config, size, isSelectType } = _ref3; const str = isSelectType ? '请选择' : '请输入'; const obj = { size: size || config.size, style: { width: config.width || 'inherit', ...config.style }, clearable: config.clearable == null ? true : config.clearable, placeholder: config.placeholder || "".concat(str).concat(config.label || ''), ...config.bind, ...config.config }; return obj; } }, components: { ZSelect: z_select["default"], ZCheckbox: z_checkbox["default"], ZRadio: z_radio["default"], ZRadioButton: z_radio_button["default"], ZCascader: z_cascader["default"] } }); // CONCATENATED MODULE: ./packages/z-edit-type/body/ZEditType.vue?vue&type=script&lang=js& /* harmony default export */ var body_ZEditTypevue_type_script_lang_js_ = (ZEditTypevue_type_script_lang_js_); // EXTERNAL MODULE: ./node_modules/vue-loader/lib/runtime/componentNormalizer.js var componentNormalizer = __webpack_require__(0); // CONCATENATED MODULE: ./packages/z-edit-type/body/ZEditType.vue /* normalize component */ var component = Object(componentNormalizer["a" /* default */])( body_ZEditTypevue_type_script_lang_js_, render, staticRenderFns, false, null, null, null ) /* harmony default export */ var ZEditType = (component.exports); // CONCATENATED MODULE: ./packages/z-edit-type/index.js /* istanbul ignore next */ ZEditType.install = function install(Vue) { Vue.component(ZEditType.name, ZEditType); }; /* harmony default export */ var z_edit_type = __webpack_exports__["default"] = (ZEditType); /***/ }), /* 9 */ /***/ (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!./packages/z-label/body/ZLabel.vue?vue&type=template&id=5e3b583e& var render = function () { var _vm = this var _h = _vm.$createElement var _c = _vm._self._c || _h return _c( "div", { staticClass: "inline-block" }, [ _vm.type === "select" ? _c( "ZSelect", _vm._g(_vm._b({}, "ZSelect", _vm.$attrs, false), _vm.$listeners) ) : _c("label", { staticClass: "label" }, [_vm._v(_vm._s(_vm.label))]), _vm.tips ? _c( "el-tooltip", { attrs: { content: _vm.tips, placement: "top" }, scopedSlots: _vm._u( [ { key: "content", fn: function () { return _vm._l(_vm.tipArr, function (tip, i) { return _c("p", { key: i }, [_vm._v(_vm._s(tip))]) }) }, proxy: true, }, ], null, false, 2428032559 ), }, [ _c("i", { staticClass: "el-icon-warning icon ml-5", staticStyle: { color: "#409eff" }, }), ] ) : _vm._e(), ], 1 ) } var staticRenderFns = [] render._withStripped = true // CONCATENATED MODULE: ./packages/z-label/body/ZLabel.vue?vue&type=template&id=5e3b583e& // EXTERNAL MODULE: ./packages/z-select/index.js + 5 modules var z_select = __webpack_require__(2); // CONCATENATED MODULE: ./node_modules/babel-loader/lib??ref--0!./node_modules/vue-loader/lib??vue-loader-options!./packages/z-label/body/ZLabel.vue?vue&type=script&lang=js& // // // // // // // // // // // // // // /* harmony default export */ var ZLabelvue_type_script_lang_js_ = ({ name: 'ZLabel', props: { type: { type: String, default: 'static' }, label: { type: String, default: 'Label' }, tips: String }, computed: { tipArr(_ref) { let { tips } = _ref; if (!tips) return []; return tips.split(/\n|\r|\r\n/).filter(Boolean); } }, components: { ZSelect: z_select["default"] } }); // CONCATENATED MODULE: ./packages/z-label/body/ZLabel.vue?vue&type=script&lang=js& /* harmony default export */ var body_ZLabelvue_type_script_lang_js_ = (ZLabelvue_type_script_lang_js_); // EXTERNAL MODULE: ./node_modules/vue-loader/lib/runtime/componentNormalizer.js var componentNormalizer = __webpack_require__(0); // CONCATENATED MODULE: ./packages/z-label/body/ZLabel.vue /* normalize component */ var component = Object(componentNormalizer["a" /* default */])( body_ZLabelvue_type_script_lang_js_, render, staticRenderFns, false, null, null, null ) /* harmony default export */ var ZLabel = (component.exports); // CONCATENATED MODULE: ./packages/z-label/index.js /* istanbul ignore next */ ZLabel.install = function install(Vue) { Vue.component(ZLabel.name, ZLabel); }; /* harmony default export */ var z_label = __webpack_exports__["default"] = (ZLabel); /***/ }), /* 10 */, /* 11 */, /* 12 */, /* 13 */, /* 14 */, /* 15 */, /* 16 */, /* 17 */, /* 18 */, /* 19 */, /* 20 */, /* 21 */, /* 22 */, /* 23 */, /* 24 */, /* 25 */, /* 26 */, /* 27 */, /* 28 */ /***/ (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!./packages/z-conditions/body/ZConditions.vue?vue&type=template&id=015b4dc7& var render = function () { var _vm = this var _h = _vm.$createElement var _c = _vm._self._c || _h return _c( "div", { staticClass: "wl-condition-query", style: { marginLeft: "-" + _vm.itemGap }, }, [ _vm._l(_vm.conditionFormat, function (F, i) { return _c( "section", { key: i, staticClass: "wl-condition-query__section inline-block", style: { marginLeft: _vm.itemGap, marginBottom: _vm.itemMarginBottom, }, }, [ _c("ZLabel", { staticClass: "wl-condition-query__span bold", class: { required: F.required }, style: { minWidth: F.labelWidth }, attrs: { label: F.label + _vm.labelFlag, tips: F.labelTips }, }), _c("ZEditType", { attrs: { data: _vm.data, config: F, size: _vm.size }, scopedSlots: _vm._u( [ { key: F.slotName, fn: function (ref) { var d = ref.data var c = ref.config return [_vm._t(F.slotName, null, { data: d, config: c })] }, }, ], null, true ), }), ], 1 ) }), _vm._t("leftTopBtn"), _vm.$slots.rightTopBtn ? _c( "div", { staticClass: "right-wrapper ml-20" }, [_vm._t("rightTopBtn")], 2 ) : _vm._e(), ], 2 ) } var staticRenderFns = [] render._withStripped = true // CONCATENATED MODULE: ./packages/z-conditions/body/ZConditions.vue?vue&type=template&id=015b4dc7& // EXTERNAL MODULE: ./packages/z-edit-type/index.js + 5 modules var z_edit_type = __webpack_require__(8); // EXTERNAL MODULE: ./packages/z-label/index.js + 5 modules var z_label = __webpack_require__(9); // EXTERNAL MODULE: ./src/utils/index.js var utils = __webpack_require__(1); // CONCATENATED MODULE: ./node_modules/babel-loader/lib??ref--0!./node_modules/vue-loader/lib??vue-loader-options!./packages/z-conditions/body/ZConditions.vue?vue&type=script&lang=js& // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // /* harmony default export */ var ZConditionsvue_type_script_lang_js_ = ({ name: 'ZConditions', inheritAttrs: false, props: { value: Object, // 条件的格式,其实和form,table都差不多 /** * label: 控件label * value: formData中的key,数据会根据formData[F.value]来获取 * template:指定控件类型,默认是input,详情见formItem组件 * width:控件宽度 * placeholder:控件 placeholder, 默认是请输入label/请选择label * bind: 对象,绑定到控件上,属性就是element ui的属性 */ conditionFormat: { type: Array, required: true }, // 组件间的间距 itemGap: { type: String, default: '16px' }, // 距离第二排条件的底下间距 itemMarginBottom: { type: String, default: '16px' }, // 控件的size size: { type: String, default: 'small' }, // label与控件间的符号 labelFlag: { type: String, default: ':' } }, data() { return { errTarget: null, yadbdata: {}, data: {} }; }, methods: { judgeHandler() { return this.conditionFormat.some(v => { if (v.required) { const val = this.data[v.value]; if (Object(utils["g" /* isFalse */])(val)) { this.$message.error("".concat(v.label, "\u4E0D\u80FD\u4E3A\u7A7A!")); this.errTarget = { field: v.value, msg: "".concat(v.label, "\u4E0D\u80FD\u4E3A\u7A7A!") }; return true; } if (Array.isArray(val) && !val.length) { this.$message.error("".concat(v.label, "\u4E0D\u80FD\u4E3A\u7A7A!")); this.errTarget = { field: v.value, msg: "".concat(v.label, "\u4E0D\u80FD\u4E3A\u7A7A!") }; return true; } // 如果范围选择日期,且有最长选择日期 if (v.template === 'datePicker' && v.type === 'daterange' && v.max) { if (val && !val.length) { this.$message.error("".concat(v.label,