UNPKG

bin-tree-org

Version:

vue属性组织结构组件

1,737 lines (1,434 loc) 176 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 = "/lib/"; /******/ /******/ /******/ // Load entry module and return exports /******/ return __webpack_require__(__webpack_require__.s = 87); /******/ }) /************************************************************************/ /******/ ([ /* 0 */ /***/ (function(module, exports, __webpack_require__) { var path = __webpack_require__(12); var has = __webpack_require__(6); var wrappedWellKnownSymbolModule = __webpack_require__(56); var defineProperty = __webpack_require__(9).f; module.exports = function (NAME) { var Symbol = path.Symbol || (path.Symbol = {}); if (!has(Symbol, NAME)) defineProperty(Symbol, NAME, { value: wrappedWellKnownSymbolModule.f(NAME) }); }; /***/ }), /* 1 */ /***/ (function(module, exports, __webpack_require__) { /* WEBPACK VAR INJECTION */(function(global) {var check = function (it) { return it && it.Math == Math && it; }; // https://github.com/zloirock/core-js/issues/86#issuecomment-115759028 module.exports = // eslint-disable-next-line no-undef check(typeof globalThis == 'object' && globalThis) || check(typeof window == 'object' && window) || check(typeof self == 'object' && self) || check(typeof global == 'object' && global) || // eslint-disable-next-line no-new-func Function('return this')(); /* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(91))) /***/ }), /* 2 */ /***/ (function(module, exports, __webpack_require__) { var global = __webpack_require__(1); var shared = __webpack_require__(24); var has = __webpack_require__(6); var uid = __webpack_require__(45); var NATIVE_SYMBOL = __webpack_require__(47); var USE_SYMBOL_AS_UID = __webpack_require__(69); var WellKnownSymbolsStore = shared('wks'); var Symbol = global.Symbol; var createWellKnownSymbol = USE_SYMBOL_AS_UID ? Symbol : uid; module.exports = function (name) { if (!has(WellKnownSymbolsStore, name)) { if (NATIVE_SYMBOL && has(Symbol, name)) WellKnownSymbolsStore[name] = Symbol[name]; else WellKnownSymbolsStore[name] = createWellKnownSymbol('Symbol.' + name); } return WellKnownSymbolsStore[name]; }; /***/ }), /* 3 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; var global = __webpack_require__(1); var getOwnPropertyDescriptor = __webpack_require__(41).f; var isForced = __webpack_require__(64); var path = __webpack_require__(12); var bind = __webpack_require__(28); var createNonEnumerableProperty = __webpack_require__(7); var has = __webpack_require__(6); var wrapConstructor = function (NativeConstructor) { var Wrapper = function (a, b, c) { if (this instanceof NativeConstructor) { switch (arguments.length) { case 0: return new NativeConstructor(); case 1: return new NativeConstructor(a); case 2: return new NativeConstructor(a, b); } return new NativeConstructor(a, b, c); } return NativeConstructor.apply(this, arguments); }; Wrapper.prototype = NativeConstructor.prototype; return Wrapper; }; /* options.target - name of the target object options.global - target is the global object options.stat - export as static methods of target options.proto - export as prototype methods of target options.real - real prototype method for the `pure` version options.forced - export even if the native feature is available options.bind - bind methods to the target, required for the `pure` version options.wrap - wrap constructors to preventing global pollution, required for the `pure` version options.unsafe - use the simple assignment of property instead of delete + defineProperty options.sham - add a flag to not completely full polyfills options.enumerable - export as enumerable property options.noTargetGet - prevent calling a getter on target */ module.exports = function (options, source) { var TARGET = options.target; var GLOBAL = options.global; var STATIC = options.stat; var PROTO = options.proto; var nativeSource = GLOBAL ? global : STATIC ? global[TARGET] : (global[TARGET] || {}).prototype; var target = GLOBAL ? path : path[TARGET] || (path[TARGET] = {}); var targetPrototype = target.prototype; var FORCED, USE_NATIVE, VIRTUAL_PROTOTYPE; var key, sourceProperty, targetProperty, nativeProperty, resultProperty, descriptor; for (key in source) { FORCED = isForced(GLOBAL ? key : TARGET + (STATIC ? '.' : '#') + key, options.forced); // contains in native USE_NATIVE = !FORCED && nativeSource && has(nativeSource, key); targetProperty = target[key]; if (USE_NATIVE) if (options.noTargetGet) { descriptor = getOwnPropertyDescriptor(nativeSource, key); nativeProperty = descriptor && descriptor.value; } else nativeProperty = nativeSource[key]; // export native or implementation sourceProperty = (USE_NATIVE && nativeProperty) ? nativeProperty : source[key]; if (USE_NATIVE && typeof targetProperty === typeof sourceProperty) continue; // bind timers to global for call from export context if (options.bind && USE_NATIVE) resultProperty = bind(sourceProperty, global); // wrap global constructors for prevent changs in this version else if (options.wrap && USE_NATIVE) resultProperty = wrapConstructor(sourceProperty); // make static versions for prototype methods else if (PROTO && typeof sourceProperty == 'function') resultProperty = bind(Function.call, sourceProperty); // default case else resultProperty = sourceProperty; // add a flag to not completely full polyfills if (options.sham || (sourceProperty && sourceProperty.sham) || (targetProperty && targetProperty.sham)) { createNonEnumerableProperty(resultProperty, 'sham', true); } target[key] = resultProperty; if (PROTO) { VIRTUAL_PROTOTYPE = TARGET + 'Prototype'; if (!has(path, VIRTUAL_PROTOTYPE)) { createNonEnumerableProperty(path, VIRTUAL_PROTOTYPE, {}); } // export virtual prototype methods path[VIRTUAL_PROTOTYPE][key] = sourceProperty; // export real prototype methods if (options.real && targetPrototype && !targetPrototype[key]) { createNonEnumerableProperty(targetPrototype, key, sourceProperty); } } } }; /***/ }), /* 4 */ /***/ (function(module, exports) { module.exports = function (exec) { try { return !!exec(); } catch (error) { return true; } }; /***/ }), /* 5 */ /***/ (function(module, exports) { module.exports = function (it) { return typeof it === 'object' ? it !== null : typeof it === 'function'; }; /***/ }), /* 6 */ /***/ (function(module, exports) { var hasOwnProperty = {}.hasOwnProperty; module.exports = function (it, key) { return hasOwnProperty.call(it, key); }; /***/ }), /* 7 */ /***/ (function(module, exports, __webpack_require__) { var DESCRIPTORS = __webpack_require__(8); var definePropertyModule = __webpack_require__(9); var createPropertyDescriptor = __webpack_require__(16); module.exports = DESCRIPTORS ? function (object, key, value) { return definePropertyModule.f(object, key, createPropertyDescriptor(1, value)); } : function (object, key, value) { object[key] = value; return object; }; /***/ }), /* 8 */ /***/ (function(module, exports, __webpack_require__) { var fails = __webpack_require__(4); // Thank's IE8 for his funny defineProperty module.exports = !fails(function () { return Object.defineProperty({}, 'a', { get: function () { return 7; } }).a != 7; }); /***/ }), /* 9 */ /***/ (function(module, exports, __webpack_require__) { var DESCRIPTORS = __webpack_require__(8); var IE8_DOM_DEFINE = __webpack_require__(63); var anObject = __webpack_require__(10); var toPrimitive = __webpack_require__(27); var nativeDefineProperty = Object.defineProperty; // `Object.defineProperty` method // https://tc39.github.io/ecma262/#sec-object.defineproperty exports.f = DESCRIPTORS ? nativeDefineProperty : function defineProperty(O, P, Attributes) { anObject(O); P = toPrimitive(P, true); anObject(Attributes); if (IE8_DOM_DEFINE) try { return nativeDefineProperty(O, P, Attributes); } catch (error) { /* empty */ } if ('get' in Attributes || 'set' in Attributes) throw TypeError('Accessors not supported'); if ('value' in Attributes) O[P] = Attributes.value; return O; }; /***/ }), /* 10 */ /***/ (function(module, exports, __webpack_require__) { var isObject = __webpack_require__(5); module.exports = function (it) { if (!isObject(it)) { throw TypeError(String(it) + ' is not an object'); } return it; }; /***/ }), /* 11 */ /***/ (function(module, exports, __webpack_require__) { module.exports = __webpack_require__(145); /***/ }), /* 12 */ /***/ (function(module, exports) { module.exports = {}; /***/ }), /* 13 */ /***/ (function(module, exports, __webpack_require__) { module.exports = __webpack_require__(88); /***/ }), /* 14 */ /***/ (function(module, exports, __webpack_require__) { var path = __webpack_require__(12); var global = __webpack_require__(1); var aFunction = function (variable) { return typeof variable == 'function' ? variable : undefined; }; module.exports = function (namespace, method) { return arguments.length < 2 ? aFunction(path[namespace]) || aFunction(global[namespace]) : path[namespace] && path[namespace][method] || global[namespace] && global[namespace][method]; }; /***/ }), /* 15 */ /***/ (function(module, exports) { function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } module.exports = _interopRequireDefault; /***/ }), /* 16 */ /***/ (function(module, exports) { module.exports = function (bitmap, value) { return { enumerable: !(bitmap & 1), configurable: !(bitmap & 2), writable: !(bitmap & 4), value: value }; }; /***/ }), /* 17 */ /***/ (function(module, exports, __webpack_require__) { // toObject with fallback for non-array-like ES3 strings var IndexedObject = __webpack_require__(62); var requireObjectCoercible = __webpack_require__(42); module.exports = function (it) { return IndexedObject(requireObjectCoercible(it)); }; /***/ }), /* 18 */ /***/ (function(module, exports) { var toString = {}.toString; module.exports = function (it) { return toString.call(it).slice(8, -1); }; /***/ }), /* 19 */ /***/ (function(module, exports) { module.exports = function (it) { if (typeof it != 'function') { throw TypeError(String(it) + ' is not a function'); } return it; }; /***/ }), /* 20 */ /***/ (function(module, exports) { module.exports = {}; /***/ }), /* 21 */ /***/ (function(module, exports) { module.exports = true; /***/ }), /* 22 */ /***/ (function(module, exports, __webpack_require__) { var TO_STRING_TAG_SUPPORT = __webpack_require__(51); var defineProperty = __webpack_require__(9).f; var createNonEnumerableProperty = __webpack_require__(7); var has = __webpack_require__(6); var toString = __webpack_require__(104); var wellKnownSymbol = __webpack_require__(2); var TO_STRING_TAG = wellKnownSymbol('toStringTag'); module.exports = function (it, TAG, STATIC, SET_METHOD) { if (it) { var target = STATIC ? it : it.prototype; if (!has(target, TO_STRING_TAG)) { defineProperty(target, TO_STRING_TAG, { configurable: true, value: TAG }); } if (SET_METHOD && !TO_STRING_TAG_SUPPORT) { createNonEnumerableProperty(target, 'toString', toString); } } }; /***/ }), /* 23 */ /***/ (function(module, exports, __webpack_require__) { var NATIVE_WEAK_MAP = __webpack_require__(95); var global = __webpack_require__(1); var isObject = __webpack_require__(5); var createNonEnumerableProperty = __webpack_require__(7); var objectHas = __webpack_require__(6); var sharedKey = __webpack_require__(29); var hiddenKeys = __webpack_require__(30); var WeakMap = global.WeakMap; var set, get, has; var enforce = function (it) { return has(it) ? get(it) : set(it, {}); }; var getterFor = function (TYPE) { return function (it) { var state; if (!isObject(it) || (state = get(it)).type !== TYPE) { throw TypeError('Incompatible receiver, ' + TYPE + ' required'); } return state; }; }; if (NATIVE_WEAK_MAP) { var store = new WeakMap(); var wmget = store.get; var wmhas = store.has; var wmset = store.set; set = function (it, metadata) { wmset.call(store, it, metadata); return metadata; }; get = function (it) { return wmget.call(store, it) || {}; }; has = function (it) { return wmhas.call(store, it); }; } else { var STATE = sharedKey('state'); hiddenKeys[STATE] = true; set = function (it, metadata) { createNonEnumerableProperty(it, STATE, metadata); return metadata; }; get = function (it) { return objectHas(it, STATE) ? it[STATE] : {}; }; has = function (it) { return objectHas(it, STATE); }; } module.exports = { set: set, get: get, has: has, enforce: enforce, getterFor: getterFor }; /***/ }), /* 24 */ /***/ (function(module, exports, __webpack_require__) { var IS_PURE = __webpack_require__(21); var store = __webpack_require__(97); (module.exports = function (key, value) { return store[key] || (store[key] = value !== undefined ? value : {}); })('versions', []).push({ version: '3.4.4', mode: IS_PURE ? 'pure' : 'global', copyright: '© 2019 Denis Pushkarev (zloirock.ru)' }); /***/ }), /* 25 */ /***/ (function(module, exports, __webpack_require__) { var createNonEnumerableProperty = __webpack_require__(7); module.exports = function (target, key, value, options) { if (options && options.enumerable) target[key] = value; else createNonEnumerableProperty(target, key, value); }; /***/ }), /* 26 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; var aFunction = __webpack_require__(19); var PromiseCapability = function (C) { var resolve, reject; this.promise = new C(function ($$resolve, $$reject) { if (resolve !== undefined || reject !== undefined) throw TypeError('Bad Promise constructor'); resolve = $$resolve; reject = $$reject; }); this.resolve = aFunction(resolve); this.reject = aFunction(reject); }; // 25.4.1.5 NewPromiseCapability(C) module.exports.f = function (C) { return new PromiseCapability(C); }; /***/ }), /* 27 */ /***/ (function(module, exports, __webpack_require__) { var isObject = __webpack_require__(5); // `ToPrimitive` abstract operation // https://tc39.github.io/ecma262/#sec-toprimitive // instead of the ES6 spec version, we didn't implement @@toPrimitive case // and the second argument - flag - preferred type is a string module.exports = function (input, PREFERRED_STRING) { if (!isObject(input)) return input; var fn, val; if (PREFERRED_STRING && typeof (fn = input.toString) == 'function' && !isObject(val = fn.call(input))) return val; if (typeof (fn = input.valueOf) == 'function' && !isObject(val = fn.call(input))) return val; if (!PREFERRED_STRING && typeof (fn = input.toString) == 'function' && !isObject(val = fn.call(input))) return val; throw TypeError("Can't convert object to primitive value"); }; /***/ }), /* 28 */ /***/ (function(module, exports, __webpack_require__) { var aFunction = __webpack_require__(19); // optional / simple context binding module.exports = function (fn, that, length) { aFunction(fn); if (that === undefined) return fn; switch (length) { case 0: return function () { return fn.call(that); }; case 1: return function (a) { return fn.call(that, a); }; case 2: return function (a, b) { return fn.call(that, a, b); }; case 3: return function (a, b, c) { return fn.call(that, a, b, c); }; } return function (/* ...args */) { return fn.apply(that, arguments); }; }; /***/ }), /* 29 */ /***/ (function(module, exports, __webpack_require__) { var shared = __webpack_require__(24); var uid = __webpack_require__(45); var keys = shared('keys'); module.exports = function (key) { return keys[key] || (keys[key] = uid(key)); }; /***/ }), /* 30 */ /***/ (function(module, exports) { module.exports = {}; /***/ }), /* 31 */ /***/ (function(module, exports, __webpack_require__) { var requireObjectCoercible = __webpack_require__(42); // `ToObject` abstract operation // https://tc39.github.io/ecma262/#sec-toobject module.exports = function (argument) { return Object(requireObjectCoercible(argument)); }; /***/ }), /* 32 */ /***/ (function(module, exports, __webpack_require__) { var toInteger = __webpack_require__(49); var min = Math.min; // `ToLength` abstract operation // https://tc39.github.io/ecma262/#sec-tolength module.exports = function (argument) { return argument > 0 ? min(toInteger(argument), 0x1FFFFFFFFFFFFF) : 0; // 2 ** 53 - 1 == 9007199254740991 }; /***/ }), /* 33 */ /***/ (function(module, exports, __webpack_require__) { var classof = __webpack_require__(18); // `IsArray` abstract operation // https://tc39.github.io/ecma262/#sec-isarray module.exports = Array.isArray || function isArray(arg) { return classof(arg) == 'Array'; }; /***/ }), /* 34 */ /***/ (function(module, exports, __webpack_require__) { var anObject = __webpack_require__(10); var isArrayIteratorMethod = __webpack_require__(123); var toLength = __webpack_require__(32); var bind = __webpack_require__(28); var getIteratorMethod = __webpack_require__(124); var callWithSafeIterationClosing = __webpack_require__(125); var Result = function (stopped, result) { this.stopped = stopped; this.result = result; }; var iterate = module.exports = function (iterable, fn, that, AS_ENTRIES, IS_ITERATOR) { var boundFunction = bind(fn, that, AS_ENTRIES ? 2 : 1); var iterator, iterFn, index, length, result, next, step; if (IS_ITERATOR) { iterator = iterable; } else { iterFn = getIteratorMethod(iterable); if (typeof iterFn != 'function') throw TypeError('Target is not iterable'); // optimisation for array iterators if (isArrayIteratorMethod(iterFn)) { for (index = 0, length = toLength(iterable.length); length > index; index++) { result = AS_ENTRIES ? boundFunction(anObject(step = iterable[index])[0], step[1]) : boundFunction(iterable[index]); if (result && result instanceof Result) return result; } return new Result(false); } iterator = iterFn.call(iterable); } next = iterator.next; while (!(step = next.call(iterator)).done) { result = callWithSafeIterationClosing(iterator, boundFunction, step.value, AS_ENTRIES); if (typeof result == 'object' && result && result instanceof Result) return result; } return new Result(false); }; iterate.stop = function (result) { return new Result(true, result); }; /***/ }), /* 35 */ /***/ (function(module, exports) { module.exports = function (exec) { try { return { error: false, value: exec() }; } catch (error) { return { error: true, value: error }; } }; /***/ }), /* 36 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony import */ var _node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_index_js_vue_loader_options_tree_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(37); /* harmony import */ var _node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_index_js_vue_loader_options_tree_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_index_js_vue_loader_options_tree_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__); /* harmony reexport (unknown) */ for(var __WEBPACK_IMPORT_KEY__ in _node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_index_js_vue_loader_options_tree_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__) if(__WEBPACK_IMPORT_KEY__ !== 'default') (function(key) { __webpack_require__.d(__webpack_exports__, key, function() { return _node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_index_js_vue_loader_options_tree_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__[key]; }) }(__WEBPACK_IMPORT_KEY__)); /* harmony default export */ __webpack_exports__["default"] = (_node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_index_js_vue_loader_options_tree_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0___default.a); /***/ }), /* 37 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; var _interopRequireDefault = __webpack_require__(15); var _Object$defineProperty = __webpack_require__(13); _Object$defineProperty(exports, "__esModule", { value: true }); exports.default = void 0; var _forEach = _interopRequireDefault(__webpack_require__(65)); var _node = _interopRequireDefault(__webpack_require__(172)); // // // // // // // // // // // // // // // var _default = { name: 'BTreeOrg', components: { TreeNode: _node.default }, provide: function provide() { return { TreeInstance: this }; }, props: { data: { type: Object, required: true }, childrenKey: { type: String, default: 'children' }, render: Function, horizontal: Boolean, collapsable: { type: Boolean, default: true }, labelStyle: Object, defaultExpand: Boolean, // 默认展开状态 labelClassName: String }, data: function data() { return { stateTree: this.data, flatState: [] }; }, created: function created() { this.flatState = this.compileFlatState(); }, watch: { data: { deep: true, handler: function handler() { this.stateTree = this.data; this.flatState = this.compileFlatState(); } } }, methods: { compileFlatState: function compileFlatState() { var _this = this; // 每个结点都有一个关系父结点/子结点 var keyCounter = 0; var childrenKey = this.childrenKey, defaultExpand = this.defaultExpand; var flatTree = []; var flattenChildren = function flattenChildren(node, parent) { _this.$set(node, 'nodeKey', keyCounter++); if (typeof node.expand === 'undefined') { _this.$set(node, 'expand', defaultExpand); } flatTree[node.nodeKey] = { node: node, nodeKey: node.nodeKey }; if (typeof parent !== 'undefined') { flatTree[node.nodeKey].parent = parent.nodeKey; flatTree[parent.nodeKey][childrenKey].push(node.nodeKey); } if (node[childrenKey]) { var _context; flatTree[node.nodeKey][childrenKey] = []; (0, _forEach.default)(_context = node[childrenKey]).call(_context, function (child) { return flattenChildren(child, node); }); } }; flattenChildren(this.data); return flatTree; }, handleClick: function handleClick(nodeKey) { var node = this.flatState[nodeKey].node; this.$emit('node-click', node); }, toggleExpand: function toggleExpand(node, expand) { this.$emit('toggle-expand', node, expand); }, /* public API 折叠所有 */ collapseAll: function collapseAll() { var _context2; (0, _forEach.default)(_context2 = this.flatState).call(_context2, function (node) { node.node.expand = false; }); }, /* public API 展开所有 */ expandAll: function expandAll() { var _context3; (0, _forEach.default)(_context3 = this.flatState).call(_context3, function (node) { node.node.expand = true; }); } } }; exports.default = _default; /***/ }), /* 38 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony import */ var _node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_index_js_vue_loader_options_node_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(39); /* harmony import */ var _node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_index_js_vue_loader_options_node_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_index_js_vue_loader_options_node_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__); /* harmony reexport (unknown) */ for(var __WEBPACK_IMPORT_KEY__ in _node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_index_js_vue_loader_options_node_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__) if(__WEBPACK_IMPORT_KEY__ !== 'default') (function(key) { __webpack_require__.d(__webpack_exports__, key, function() { return _node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_index_js_vue_loader_options_node_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__[key]; }) }(__WEBPACK_IMPORT_KEY__)); /* harmony default export */ __webpack_exports__["default"] = (_node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_index_js_vue_loader_options_node_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0___default.a); /***/ }), /* 39 */ /***/ (function(module, exports, __webpack_require__) { "use strict"; var _interopRequireDefault = __webpack_require__(15); var _Object$defineProperty = __webpack_require__(13); _Object$defineProperty(exports, "__esModule", { value: true }); exports.default = void 0; var _find = _interopRequireDefault(__webpack_require__(173)); var _isArray = _interopRequireDefault(__webpack_require__(178)); var _render = _interopRequireDefault(__webpack_require__(182)); // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // // var prefixCls = 'bin-tree-org'; var _default2 = { name: 'TreeNode', components: { Render: _render.default }, inject: ['TreeInstance'], props: { data: { type: Object, default: function _default() { return {}; } }, childrenKey: { type: String, default: 'children' }, horizontal: Boolean, collapsable: Boolean, labelStyle: Object, labelClassName: String }, data: function data() { return { prefixCls: prefixCls }; }, computed: { isLeaf: function isLeaf() { return !((0, _isArray.default)(this.data[this.childrenKey]) && this.data[this.childrenKey].length > 0); }, classes: function classes() { return ["".concat(prefixCls, "-node"), { 'is-leaf': this.isLeaf }, { 'collapsed': !this.isLeaf && this.collapsable && !this.data['expand'] }]; }, labelClasses: function labelClasses() { return ["".concat(prefixCls, "-node-label-inner"), this.labelClassName]; }, labelStyles: function labelStyles() { return this.data['style'] ? this.data['style'] : this.labelStyle; }, isParentRender: function isParentRender() { var Tree = this.TreeInstance; return Tree && Tree.render; }, parentRender: function parentRender() { var Tree = this.TreeInstance; if (Tree && Tree.render) { return Tree.render; } else { return null; } }, node: function node() { var _this = this; var Tree = this.TreeInstance; if (Tree) { var _context; // 将所有的 node(即flatState)和当前 node 都传递 return [Tree.flatState, (0, _find.default)(_context = Tree.flatState).call(_context, function (item) { return item.nodeKey === _this.data.nodeKey; })]; } else { return []; } } }, methods: { handleClick: function handleClick() { this.TreeInstance.handleClick(this.data.nodeKey); }, handleExpand: function handleExpand() { var item = this.data; if (item.disabled) return; if (item.isLeaf) return; if (item[this.childrenKey] && item[this.childrenKey].length) { this.$set(this.data, 'expand', !this.data.expand); this.TreeInstance.toggleExpand(this.data, this.data.expand); } } } }; exports.default = _default2; /***/ }), /* 40 */ /***/ (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 } } /***/ }), /* 41 */ /***/ (function(module, exports, __webpack_require__) { var DESCRIPTORS = __webpack_require__(8); var propertyIsEnumerableModule = __webpack_require__(61); var createPropertyDescriptor = __webpack_require__(16); var toIndexedObject = __webpack_require__(17); var toPrimitive = __webpack_require__(27); var has = __webpack_require__(6); var IE8_DOM_DEFINE = __webpack_require__(63); var nativeGetOwnPropertyDescriptor = Object.getOwnPropertyDescriptor; // `Object.getOwnPropertyDescriptor` method // https://tc39.github.io/ecma262/#sec-object.getownpropertydescriptor exports.f = DESCRIPTORS ? nativeGetOwnPropertyDescriptor : function getOwnPropertyDescriptor(O, P) { O = toIndexedObject(O); P = toPrimitive(P, true); if (IE8_DOM_DEFINE) try { return nativeGetOwnPropertyDescriptor(O, P); } catch (error) { /* empty */ } if (has(O, P)) return createPropertyDescriptor(!propertyIsEnumerableModule.f.call(O, P), O[P]); }; /***/ }), /* 42 */ /***/ (function(module, exports) { // `RequireObjectCoercible` abstract operation // https://tc39.github.io/ecma262/#sec-requireobjectcoercible module.exports = function (it) { if (it == undefined) throw TypeError("Can't call method on " + it); return it; }; /***/ }), /* 43 */ /***/ (function(module, exports, __webpack_require__) { var global = __webpack_require__(1); var isObject = __webpack_require__(5); var document = global.document; // typeof document.createElement is 'object' in old IE var EXISTS = isObject(document) && isObject(document.createElement); module.exports = function (it) { return EXISTS ? document.createElement(it) : {}; }; /***/ }), /* 44 */ /***/ (function(module, exports, __webpack_require__) { __webpack_require__(94); var DOMIterables = __webpack_require__(106); var global = __webpack_require__(1); var createNonEnumerableProperty = __webpack_require__(7); var Iterators = __webpack_require__(20); var wellKnownSymbol = __webpack_require__(2); var TO_STRING_TAG = wellKnownSymbol('toStringTag'); for (var COLLECTION_NAME in DOMIterables) { var Collection = global[COLLECTION_NAME]; var CollectionPrototype = Collection && Collection.prototype; if (CollectionPrototype && !CollectionPrototype[TO_STRING_TAG]) { createNonEnumerableProperty(CollectionPrototype, TO_STRING_TAG, COLLECTION_NAME); } Iterators[COLLECTION_NAME] = Iterators.Array; } /***/ }), /* 45 */ /***/ (function(module, exports) { var id = 0; var postfix = Math.random(); module.exports = function (key) { return 'Symbol(' + String(key === undefined ? '' : key) + ')_' + (++id + postfix).toString(36); }; /***/ }), /* 46 */ /***/ (function(module, exports, __webpack_require__) { var has = __webpack_require__(6); var toObject = __webpack_require__(31); var sharedKey = __webpack_require__(29); var CORRECT_PROTOTYPE_GETTER = __webpack_require__(100); var IE_PROTO = sharedKey('IE_PROTO'); var ObjectPrototype = Object.prototype; // `Object.getPrototypeOf` method // https://tc39.github.io/ecma262/#sec-object.getprototypeof module.exports = CORRECT_PROTOTYPE_GETTER ? Object.getPrototypeOf : function (O) { O = toObject(O); if (has(O, IE_PROTO)) return O[IE_PROTO]; if (typeof O.constructor == 'function' && O instanceof O.constructor) { return O.constructor.prototype; } return O instanceof Object ? ObjectPrototype : null; }; /***/ }), /* 47 */ /***/ (function(module, exports, __webpack_require__) { var fails = __webpack_require__(4); module.exports = !!Object.getOwnPropertySymbols && !fails(function () { // Chrome 38 Symbol has incorrect toString conversion // eslint-disable-next-line no-undef return !String(Symbol()); }); /***/ }), /* 48 */ /***/ (function(module, exports, __webpack_require__) { var anObject = __webpack_require__(10); var defineProperties = __webpack_require__(101); var enumBugKeys = __webpack_require__(50); var hiddenKeys = __webpack_require__(30); var html = __webpack_require__(72); var documentCreateElement = __webpack_require__(43); var sharedKey = __webpack_require__(29); var IE_PROTO = sharedKey('IE_PROTO'); var PROTOTYPE = 'prototype'; var Empty = function () { /* empty */ }; // Create object with fake `null` prototype: use iframe Object with cleared prototype var createDict = function () { // Thrash, waste and sodomy: IE GC bug var iframe = documentCreateElement('iframe'); var length = enumBugKeys.length; var lt = '<'; var script = 'script'; var gt = '>'; var js = 'java' + script + ':'; var iframeDocument; iframe.style.display = 'none'; html.appendChild(iframe); iframe.src = String(js); iframeDocument = iframe.contentWindow.document; iframeDocument.open(); iframeDocument.write(lt + script + gt + 'document.F=Object' + lt + '/' + script + gt); iframeDocument.close(); createDict = iframeDocument.F; while (length--) delete createDict[PROTOTYPE][enumBugKeys[length]]; return createDict(); }; // `Object.create` method // https://tc39.github.io/ecma262/#sec-object.create module.exports = Object.create || function create(O, Properties) { var result; if (O !== null) { Empty[PROTOTYPE] = anObject(O); result = new Empty(); Empty[PROTOTYPE] = null; // add "__proto__" for Object.getPrototypeOf polyfill result[IE_PROTO] = O; } else result = createDict(); return Properties === undefined ? result : defineProperties(result, Properties); }; hiddenKeys[IE_PROTO] = true; /***/ }), /* 49 */ /***/ (function(module, exports) { var ceil = Math.ceil; var floor = Math.floor; // `ToInteger` abstract operation // https://tc39.github.io/ecma262/#sec-tointeger module.exports = function (argument) { return isNaN(argument = +argument) ? 0 : (argument > 0 ? floor : ceil)(argument); }; /***/ }), /* 50 */ /***/ (function(module, exports) { // IE8- don't enum bug keys module.exports = [ 'constructor', 'hasOwnProperty', 'isPrototypeOf', 'propertyIsEnumerable', 'toLocaleString', 'toString', 'valueOf' ]; /***/ }), /* 51 */ /***/ (function(module, exports, __webpack_require__) { var wellKnownSymbol = __webpack_require__(2); var TO_STRING_TAG = wellKnownSymbol('toStringTag'); var test = {}; test[TO_STRING_TAG] = 'z'; module.exports = String(test) === '[object z]'; /***/ }), /* 52 */ /***/ (function(module, exports, __webpack_require__) { var TO_STRING_TAG_SUPPORT = __webpack_require__(51); var classofRaw = __webpack_require__(18); var wellKnownSymbol = __webpack_require__(2); var TO_STRING_TAG = wellKnownSymbol('toStringTag'); // ES3 wrong here var CORRECT_ARGUMENTS = classofRaw(function () { return arguments; }()) == 'Arguments'; // fallback for IE11 Script Access Denied error var tryGet = function (it, key) { try { return it[key]; } catch (error) { /* empty */ } }; // getting tag from ES6+ `Object.prototype.toString` module.exports = TO_STRING_TAG_SUPPORT ? classofRaw : function (it) { var O, tag, result; return it === undefined ? 'Undefined' : it === null ? 'Null' // @@toStringTag case : typeof (tag = tryGet(O = Object(it), TO_STRING_TAG)) == 'string' ? tag // builtinTag case : CORRECT_ARGUMENTS ? classofRaw(O) // ES3 arguments fallback : (result = classofRaw(O)) == 'Object' && typeof O.callee == 'function' ? 'Arguments' : result; }; /***/ }), /* 53 */ /***/ (function(module, exports, __webpack_require__) { var bind = __webpack_require__(28); var IndexedObject = __webpack_require__(62); var toObject = __webpack_require__(31); var toLength = __webpack_require__(32); var arraySpeciesCreate = __webpack_require__(74); var push = [].push; // `Array.prototype.{ forEach, map, filter, some, every, find, findIndex }` methods implementation var createMethod = function (TYPE) { var IS_MAP = TYPE == 1; var IS_FILTER = TYPE == 2; var IS_SOME = TYPE == 3; var IS_EVERY = TYPE == 4; var IS_FIND_INDEX = TYPE == 6; var NO_HOLES = TYPE == 5 || IS_FIND_INDEX; return function ($this, callbackfn, that, specificCreate) { var O = toObject($this); var self = IndexedObject(O); var boundFunction = bind(callbackfn, that, 3); var length = toLength(self.length); var index = 0; var create = specificCreate || arraySpeciesCreate; var target = IS_MAP ? create($this, length) : IS_FILTER ? create($this, 0) : undefined; var value, result; for (;length > index; index++) if (NO_HOLES || index in self) { value = self[index]; result = boundFunction(value, index, O); if (TYPE) { if (IS_MAP) target[index] = result; // map else if (result) switch (TYPE) { case 3: return true; // some case 5: return value; // find case 6: return index; // findIndex case 2: push.call(target, value); // filter } else if (IS_EVERY) return false; // every } } return IS_FIND_INDEX ? -1 : IS_SOME || IS_EVERY ? IS_EVERY : target; }; }; module.exports = { // `Array.prototype.forEach` method // https://tc39.github.io/ecma262/#sec-array.prototype.foreach forEach: createMethod(0), // `Array.prototype.map` method // https://tc39.github.io/ecma262/#sec-array.prototype.map map: createMethod(1), // `Array.prototype.filter` method // https://tc39.github.io/ecma262/#sec-array.prototype.filter filter: createMethod(2), // `Array.prototype.some` method // https://tc39.github.io/ecma262/#sec-array.prototype.some some: createMethod(3), // `Array.prototype.every` method // https://tc39.github.io/ecma262/#sec-array.prototype.every every: createMethod(4), // `Array.prototype.find` method // https://tc39.github.io/ecma262/#sec-array.prototype.find find: createMethod(5), // `Array.prototype.findIndex` method // https://tc39.github.io/ecma262/#sec-array.prototype.findIndex findIndex: createMethod(6) }; /***/ }), /* 54 */ /***/ (function(module, exports, __webpack_require__) { var path = __webpack_require__(12); module.exports = function (CONSTRUCTOR) { return path[CONSTRUCTOR + 'Prototype']; }; /***/ }), /* 55 */ /***/ (function(module, exports, __webpack_require__) { var global = __webpack_require__(1); var userAgent = __webpack_require__(81); var process = global.process; var versions = process && process.versions; var v8 = versions && versions.v8; var match, version; if (v8) { match = v8.split('.'); version = match[0] + match[1]; } else if (userAgent) { match = userAgent.match(/Edge\/(\d+)/); if (!match || match[1] >= 74) { match = userAgent.match(/Chrome\/(\d+)/); if (match) version = match[1]; } } module.exports = version && +version; /***/ }), /* 56 */ /***/ (function(module, exports, __webpack_require__) { var wellKnownSymbol = __webpack_require__(2); exports.f = wellKnownSymbol; /***/ }), /* 57 */ /***/ (function(module, exports, __webpack_require__) { module.exports = __webpack_require__(116); /***/ }), /* 58 */ /***/ (function(module, exports, __webpack_require__) { module.exports = __webpack_require__(143); /***/ }), /* 59 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; // CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./src/components/tree/tree.vue?vue&type=template&id=610b47e2& var render = function() { var _vm = this var _h = _vm.$createElement var _c = _vm._self._c || _h return _c("div", { staticClass: "bin-tree-org-wrap" }, [ _c( "div", { staticClass: "bin-tree-org", class: { horizontal: _vm.horizontal, collapsable: _vm.collapsable } }, [ _c("tree-node", { attrs: { data: _vm.data, "children-key": _vm.childrenKey, horizontal: _vm.horizontal, "label-style": _vm.labelStyle, collapsable: _vm.collapsable, "label-class-name": _vm.labelClassName } }) ], 1 ) ]) } var staticRenderFns = [] render._withStripped = true // CONCATENATED MODULE: ./src/components/tree/tree.vue?vue&type=template&id=610b47e2& /* concated harmony reexport render */__webpack_require__.d(__webpack_exports__, "a", function() { return render; }); /* concated harmony reexport staticRenderFns */__webpack_require__.d(__webpack_exports__, "b", function() { return staticRenderFns; }); /***/ }), /* 60 */ /***/ (function(module, __webpack_exports__, __webpack_require__) { "use strict"; // CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./src/components/tree/node.vue?vue&type=template&id=8068771a& var render = function() { var _vm = this var _h = _vm.$createElement var _c = _vm._self._c || _h return _c( "div", { class: _vm.classes }, [ _c("div", { staticClass: "bin-tree-org-node-label" }, [ _vm.data.render ? _c( "div", { class: _vm.labelClasses, style: _vm.labelStyles, on: { click: _vm.handleClick } }, [ _c("render", { attrs: { render: _vm.data.render, data: _vm.data, node: _vm.node } }) ], 1 ) : _vm.isParentRender ? _c( "div", { class: _vm.labelClasses, style: _vm.labelStyles, on: { click: _vm.handleClick } }, [ _c("render", { attrs: { render: _vm.parentRender, data: _vm.data, node: _vm.node } }) ], 1 ) : _c( "div", { class: _vm.labelClasses, style: _vm.labelStyles, on: { click: _vm.handleClick } }, [_vm._v(_vm._s(_vm.data.label))] ), _vm._v(" "), _vm.collapsable && !_vm.isLeaf ? _c("span", { staticClass: "bin-tree-org-node-btn", class: { expand: _vm.data.expand }, on: { click: function($event) { $event.stopPropagation() $event.preventDefault() return _vm.handleExpand($event) } } }) : _vm._e() ]), _vm._v(" "), _vm.data[_vm.childrenKey] && _vm.data[_vm.childrenKey].length ? [ !_vm.collapsable || _vm.data.expand ? _c( "div", { staticClass: "bin-tree-org-node-children" }, _vm._l(_vm.data[_vm.childrenKey], function(item, i) { return _c("tree-node", { key: i, attrs: { data: item, "children-key": _vm.childrenKey, horizontal: _vm.horizontal, "label-style": _vm.labelStyle, collapsable: _vm.collapsable, "label-class-name": _vm.labelClassName } })