|
|
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 = 66);/******/ })/************************************************************************//******/ ({
/***/ 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, 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 functioal 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 }}
/***/ }),
/***/ 10:/***/ (function(module, exports) {
module.exports = require("element-ui/lib/input");
/***/ }),
/***/ 11:/***/ (function(module, exports) {
module.exports = require("element-ui/lib/mixins/migrating");
/***/ }),
/***/ 14:/***/ (function(module, exports) {
module.exports = require("element-ui/lib/button");
/***/ }),
/***/ 18:/***/ (function(module, exports) {
module.exports = require("element-ui/lib/checkbox");
/***/ }),
/***/ 4:/***/ (function(module, exports) {
module.exports = require("element-ui/lib/mixins/emitter");
/***/ }),
/***/ 40:/***/ (function(module, exports) {
module.exports = require("element-ui/lib/checkbox-group");
/***/ }),
/***/ 6:/***/ (function(module, exports) {
module.exports = require("element-ui/lib/mixins/locale");
/***/ }),
/***/ 66:/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";__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/transfer/src/main.vue?vue&type=template&id=5c654dd8&
var render = function() { var _vm = this var _h = _vm.$createElement var _c = _vm._self._c || _h return _c( "div", { staticClass: "el-transfer" }, [ _c( "transfer-panel", _vm._b( { ref: "leftPanel", attrs: { data: _vm.sourceData, title: _vm.titles[0] || _vm.t("el.transfer.titles.0"), "default-checked": _vm.leftDefaultChecked, placeholder: _vm.filterPlaceholder || _vm.t("el.transfer.filterPlaceholder") }, on: { "checked-change": _vm.onSourceCheckedChange } }, "transfer-panel", _vm.$props, false ), [_vm._t("left-footer")], 2 ), _c( "div", { staticClass: "el-transfer__buttons" }, [ _c( "el-button", { class: [ "el-transfer__button", _vm.hasButtonTexts ? "is-with-texts" : "" ], attrs: { type: "primary", disabled: _vm.rightChecked.length === 0 }, nativeOn: { click: function($event) { return _vm.addToLeft($event) } } }, [ _c("i", { staticClass: "el-icon-arrow-left" }), _vm.buttonTexts[0] !== undefined ? _c("span", [_vm._v(_vm._s(_vm.buttonTexts[0]))]) : _vm._e() ] ), _c( "el-button", { class: [ "el-transfer__button", _vm.hasButtonTexts ? "is-with-texts" : "" ], attrs: { type: "primary", disabled: _vm.leftChecked.length === 0 }, nativeOn: { click: function($event) { return _vm.addToRight($event) } } }, [ _vm.buttonTexts[1] !== undefined ? _c("span", [_vm._v(_vm._s(_vm.buttonTexts[1]))]) : _vm._e(), _c("i", { staticClass: "el-icon-arrow-right" }) ] ) ], 1 ), _c( "transfer-panel", _vm._b( { ref: "rightPanel", attrs: { data: _vm.targetData, title: _vm.titles[1] || _vm.t("el.transfer.titles.1"), "default-checked": _vm.rightDefaultChecked, placeholder: _vm.filterPlaceholder || _vm.t("el.transfer.filterPlaceholder") }, on: { "checked-change": _vm.onTargetCheckedChange } }, "transfer-panel", _vm.$props, false ), [_vm._t("right-footer")], 2 ) ], 1 )}var staticRenderFns = []render._withStripped = true
// CONCATENATED MODULE: ./packages/transfer/src/main.vue?vue&type=template&id=5c654dd8&
// EXTERNAL MODULE: external "element-ui/lib/button"
var button_ = __webpack_require__(14);var button_default = /*#__PURE__*/__webpack_require__.n(button_);
// EXTERNAL MODULE: external "element-ui/lib/mixins/emitter"
var emitter_ = __webpack_require__(4);var emitter_default = /*#__PURE__*/__webpack_require__.n(emitter_);
// EXTERNAL MODULE: external "element-ui/lib/mixins/locale"
var locale_ = __webpack_require__(6);var locale_default = /*#__PURE__*/__webpack_require__.n(locale_);
// CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./packages/transfer/src/transfer-panel.vue?vue&type=template&id=2ddab8bd&
var transfer_panelvue_type_template_id_2ddab8bd_render = function() { var _vm = this var _h = _vm.$createElement var _c = _vm._self._c || _h return _c("div", { staticClass: "el-transfer-panel" }, [ _c( "p", { staticClass: "el-transfer-panel__header" }, [ _c( "el-checkbox", { attrs: { indeterminate: _vm.isIndeterminate }, on: { change: _vm.handleAllCheckedChange }, model: { value: _vm.allChecked, callback: function($$v) { _vm.allChecked = $$v }, expression: "allChecked" } }, [ _vm._v("\n " + _vm._s(_vm.title) + "\n "), _c("span", [_vm._v(_vm._s(_vm.checkedSummary))]) ] ) ], 1 ), _c( "div", { class: [ "el-transfer-panel__body", _vm.hasFooter ? "is-with-footer" : "" ] }, [ _vm.filterable ? _c( "el-input", { staticClass: "el-transfer-panel__filter", attrs: { size: "small", placeholder: _vm.placeholder }, nativeOn: { mouseenter: function($event) { _vm.inputHover = true }, mouseleave: function($event) { _vm.inputHover = false } }, model: { value: _vm.query, callback: function($$v) { _vm.query = $$v }, expression: "query" } }, [ _c("i", { class: ["el-input__icon", "el-icon-" + _vm.inputIcon], attrs: { slot: "prefix" }, on: { click: _vm.clearQuery }, slot: "prefix" }) ] ) : _vm._e(), _c( "el-checkbox-group", { directives: [ { name: "show", rawName: "v-show", value: !_vm.hasNoMatch && _vm.data.length > 0, expression: "!hasNoMatch && data.length > 0" } ], staticClass: "el-transfer-panel__list", class: { "is-filterable": _vm.filterable }, model: { value: _vm.checked, callback: function($$v) { _vm.checked = $$v }, expression: "checked" } }, _vm._l(_vm.filteredData, function(item) { return _c( "el-checkbox", { key: item[_vm.keyProp], staticClass: "el-transfer-panel__item", attrs: { label: item[_vm.keyProp], disabled: item[_vm.disabledProp] } }, [_c("option-content", { attrs: { option: item } })], 1 ) }), 1 ), _c( "p", { directives: [ { name: "show", rawName: "v-show", value: _vm.hasNoMatch, expression: "hasNoMatch" } ], staticClass: "el-transfer-panel__empty" }, [_vm._v(_vm._s(_vm.t("el.transfer.noMatch")))] ), _c( "p", { directives: [ { name: "show", rawName: "v-show", value: _vm.data.length === 0 && !_vm.hasNoMatch, expression: "data.length === 0 && !hasNoMatch" } ], staticClass: "el-transfer-panel__empty" }, [_vm._v(_vm._s(_vm.t("el.transfer.noData")))] ) ], 1 ), _vm.hasFooter ? _c( "p", { staticClass: "el-transfer-panel__footer" }, [_vm._t("default")], 2 ) : _vm._e() ])}var transfer_panelvue_type_template_id_2ddab8bd_staticRenderFns = []transfer_panelvue_type_template_id_2ddab8bd_render._withStripped = true
// CONCATENATED MODULE: ./packages/transfer/src/transfer-panel.vue?vue&type=template&id=2ddab8bd&
// EXTERNAL MODULE: external "element-ui/lib/checkbox-group"
var checkbox_group_ = __webpack_require__(40);var checkbox_group_default = /*#__PURE__*/__webpack_require__.n(checkbox_group_);
// EXTERNAL MODULE: external "element-ui/lib/checkbox"
var checkbox_ = __webpack_require__(18);var checkbox_default = /*#__PURE__*/__webpack_require__.n(checkbox_);
// EXTERNAL MODULE: external "element-ui/lib/input"
var input_ = __webpack_require__(10);var input_default = /*#__PURE__*/__webpack_require__.n(input_);
// CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib??vue-loader-options!./packages/transfer/src/transfer-panel.vue?vue&type=script&lang=js&
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
/* harmony default export */ var transfer_panelvue_type_script_lang_js_ = ({ mixins: [locale_default.a],
name: 'ElTransferPanel',
componentName: 'ElTransferPanel',
components: { ElCheckboxGroup: checkbox_group_default.a, ElCheckbox: checkbox_default.a, ElInput: input_default.a, OptionContent: { props: { option: Object }, render: function render(h) { var getParent = function getParent(vm) { if (vm.$options.componentName === 'ElTransferPanel') { return vm; } else if (vm.$parent) { return getParent(vm.$parent); } else { return vm; } }; var panel = getParent(this); var transfer = panel.$parent || panel; return panel.renderContent ? panel.renderContent(h, this.option) : transfer.$scopedSlots.default ? transfer.$scopedSlots.default({ option: this.option }) : h('span', [this.option[panel.labelProp] || this.option[panel.keyProp]]); } } },
props: { data: { type: Array, default: function _default() { return []; } }, renderContent: Function, placeholder: String, title: String, filterable: Boolean, format: Object, filterMethod: Function, defaultChecked: Array, props: Object },
data: function data() { return { checked: [], allChecked: false, query: '', inputHover: false, checkChangeByUser: true }; },
watch: { checked: function checked(val, oldVal) { this.updateAllChecked(); if (this.checkChangeByUser) { var movedKeys = val.concat(oldVal).filter(function (v) { return val.indexOf(v) === -1 || oldVal.indexOf(v) === -1; }); this.$emit('checked-change', val, movedKeys); } else { this.$emit('checked-change', val); this.checkChangeByUser = true; } }, data: function data() { var _this = this;
var checked = []; var filteredDataKeys = this.filteredData.map(function (item) { return item[_this.keyProp]; }); this.checked.forEach(function (item) { if (filteredDataKeys.indexOf(item) > -1) { checked.push(item); } }); this.checkChangeByUser = false; this.checked = checked; }, checkableData: function checkableData() { this.updateAllChecked(); },
defaultChecked: { immediate: true, handler: function handler(val, oldVal) { var _this2 = this;
if (oldVal && val.length === oldVal.length && val.every(function (item) { return oldVal.indexOf(item) > -1; })) return; var checked = []; var checkableDataKeys = this.checkableData.map(function (item) { return item[_this2.keyProp]; }); val.forEach(function (item) { if (checkableDataKeys.indexOf(item) > -1) { checked.push(item); } }); this.checkChangeByUser = false; this.checked = checked; } } },
computed: { filteredData: function filteredData() { var _this3 = this;
return this.data.filter(function (item) { if (typeof _this3.filterMethod === 'function') { return _this3.filterMethod(_this3.query, item); } else { var label = item[_this3.labelProp] || item[_this3.keyProp].toString(); return label.toLowerCase().indexOf(_this3.query.toLowerCase()) > -1; } }); }, checkableData: function checkableData() { var _this4 = this;
return this.filteredData.filter(function (item) { return !item[_this4.disabledProp]; }); }, checkedSummary: function checkedSummary() { var checkedLength = this.checked.length; var dataLength = this.data.length; var _format = this.format, noChecked = _format.noChecked, hasChecked = _format.hasChecked;
if (noChecked && hasChecked) { return checkedLength > 0 ? hasChecked.replace(/\${checked}/g, checkedLength).replace(/\${total}/g, dataLength) : noChecked.replace(/\${total}/g, dataLength); } else { return checkedLength + '/' + dataLength; } }, isIndeterminate: function isIndeterminate() { var checkedLength = this.checked.length; return checkedLength > 0 && checkedLength < this.checkableData.length; }, hasNoMatch: function hasNoMatch() { return this.query.length > 0 && this.filteredData.length === 0; }, inputIcon: function inputIcon() { return this.query.length > 0 && this.inputHover ? 'circle-close' : 'search'; }, labelProp: function labelProp() { return this.props.label || 'label'; }, keyProp: function keyProp() { return this.props.key || 'key'; }, disabledProp: function disabledProp() { return this.props.disabled || 'disabled'; }, hasFooter: function hasFooter() { return !!this.$slots.default; } },
methods: { updateAllChecked: function updateAllChecked() { var _this5 = this;
var checkableDataKeys = this.checkableData.map(function (item) { return item[_this5.keyProp]; }); this.allChecked = checkableDataKeys.length > 0 && checkableDataKeys.every(function (item) { return _this5.checked.indexOf(item) > -1; }); }, handleAllCheckedChange: function handleAllCheckedChange(value) { var _this6 = this;
this.checked = value ? this.checkableData.map(function (item) { return item[_this6.keyProp]; }) : []; }, clearQuery: function clearQuery() { if (this.inputIcon === 'circle-close') { this.query = ''; } } }});// CONCATENATED MODULE: ./packages/transfer/src/transfer-panel.vue?vue&type=script&lang=js&
/* harmony default export */ var src_transfer_panelvue_type_script_lang_js_ = (transfer_panelvue_type_script_lang_js_); // EXTERNAL MODULE: ./node_modules/vue-loader/lib/runtime/componentNormalizer.js
var componentNormalizer = __webpack_require__(0);
// CONCATENATED MODULE: ./packages/transfer/src/transfer-panel.vue
/* normalize component */
var component = Object(componentNormalizer["a" /* default */])( src_transfer_panelvue_type_script_lang_js_, transfer_panelvue_type_template_id_2ddab8bd_render, transfer_panelvue_type_template_id_2ddab8bd_staticRenderFns, false, null, null, null )
/* hot reload */if (false) { var api; }component.options.__file = "packages/transfer/src/transfer-panel.vue"/* harmony default export */ var transfer_panel = (component.exports);// EXTERNAL MODULE: external "element-ui/lib/mixins/migrating"
var migrating_ = __webpack_require__(11);var migrating_default = /*#__PURE__*/__webpack_require__.n(migrating_);
// CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib??vue-loader-options!./packages/transfer/src/main.vue?vue&type=script&lang=js&
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
/* harmony default export */ var mainvue_type_script_lang_js_ = ({ name: 'ElTransfer',
mixins: [emitter_default.a, locale_default.a, migrating_default.a],
components: { TransferPanel: transfer_panel, ElButton: button_default.a },
props: { data: { type: Array, default: function _default() { return []; } }, titles: { type: Array, default: function _default() { return []; } }, buttonTexts: { type: Array, default: function _default() { return []; } }, filterPlaceholder: { type: String, default: '' }, filterMethod: Function, leftDefaultChecked: { type: Array, default: function _default() { return []; } }, rightDefaultChecked: { type: Array, default: function _default() { return []; } }, renderContent: Function, value: { type: Array, default: function _default() { return []; } }, format: { type: Object, default: function _default() { return {}; } }, filterable: Boolean, props: { type: Object, default: function _default() { return { label: 'label', key: 'key', disabled: 'disabled' }; } }, targetOrder: { type: String, default: 'original' } },
data: function data() { return { leftChecked: [], rightChecked: [] }; },
computed: { dataObj: function dataObj() { var key = this.props.key; return this.data.reduce(function (o, cur) { return (o[cur[key]] = cur) && o; }, {}); }, sourceData: function sourceData() { var _this = this;
return this.data.filter(function (item) { return _this.value.indexOf(item[_this.props.key]) === -1; }); }, targetData: function targetData() { var _this2 = this;
if (this.targetOrder === 'original') { return this.data.filter(function (item) { return _this2.value.indexOf(item[_this2.props.key]) > -1; }); } else { return this.value.reduce(function (arr, cur) { var val = _this2.dataObj[cur]; if (val) { arr.push(val); } return arr; }, []); } }, hasButtonTexts: function hasButtonTexts() { return this.buttonTexts.length === 2; } },
watch: { value: function value(val) { this.dispatch('ElFormItem', 'el.form.change', val); } },
methods: { getMigratingConfig: function getMigratingConfig() { return { props: { 'footer-format': 'footer-format is renamed to format.' } }; }, onSourceCheckedChange: function onSourceCheckedChange(val, movedKeys) { this.leftChecked = val; if (movedKeys === undefined) return; this.$emit('left-check-change', val, movedKeys); }, onTargetCheckedChange: function onTargetCheckedChange(val, movedKeys) { this.rightChecked = val; if (movedKeys === undefined) return; this.$emit('right-check-change', val, movedKeys); }, addToLeft: function addToLeft() { var currentValue = this.value.slice(); this.rightChecked.forEach(function (item) { var index = currentValue.indexOf(item); if (index > -1) { currentValue.splice(index, 1); } }); this.$emit('input', currentValue); this.$emit('change', currentValue, 'left', this.rightChecked); }, addToRight: function addToRight() { var _this3 = this;
var currentValue = this.value.slice(); var itemsToBeMoved = []; var key = this.props.key; this.data.forEach(function (item) { var itemKey = item[key]; if (_this3.leftChecked.indexOf(itemKey) > -1 && _this3.value.indexOf(itemKey) === -1) { itemsToBeMoved.push(itemKey); } }); currentValue = this.targetOrder === 'unshift' ? itemsToBeMoved.concat(currentValue) : currentValue.concat(itemsToBeMoved); this.$emit('input', currentValue); this.$emit('change', currentValue, 'right', this.leftChecked); }, clearQuery: function clearQuery(which) { if (which === 'left') { this.$refs.leftPanel.query = ''; } else if (which === 'right') { this.$refs.rightPanel.query = ''; } } }});// CONCATENATED MODULE: ./packages/transfer/src/main.vue?vue&type=script&lang=js&
/* harmony default export */ var src_mainvue_type_script_lang_js_ = (mainvue_type_script_lang_js_); // CONCATENATED MODULE: ./packages/transfer/src/main.vue
/* normalize component */
var main_component = Object(componentNormalizer["a" /* default */])( src_mainvue_type_script_lang_js_, render, staticRenderFns, false, null, null, null )
/* hot reload */if (false) { var main_api; }main_component.options.__file = "packages/transfer/src/main.vue"/* harmony default export */ var main = (main_component.exports);// CONCATENATED MODULE: ./packages/transfer/index.js
/* istanbul ignore next */main.install = function (Vue) { Vue.component(main.name, main);};
/* harmony default export */ var transfer = __webpack_exports__["default"] = (main);
/***/ })
/******/ });
|