bkui-vue 0.0.1-beta.76 → 0.0.1-beta.77

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -28,7 +28,8 @@ export declare const enum NODE_ATTRIBUTES {
28
28
  IS_NULL = "__IS_NULL",
29
29
  IS_CACHED = "__is_cached",
30
30
  IS_ASYNC = "__is_async",
31
- IS_LOADING = "__is_loading"
31
+ IS_LOADING = "__is_loading",
32
+ TREE_NODE_ATTR = "__attr__"
32
33
  }
33
34
  export declare const NODE_SOURCE_ATTRS: {
34
35
  __is_open: string;
package/lib/tree/index.js CHANGED
@@ -1 +1 @@
1
- !function(e,n){if("object"==typeof exports&&"object"==typeof module)module.exports=n(require("../shared"),require("vue"),require("../virtual-render"),require("../exception"),require("../icon"));else if("function"==typeof define&&define.amd)define(["../shared","vue","../virtual-render","../exception","../icon"],n);else{var t="object"==typeof exports?n(require("../shared"),require("vue"),require("../virtual-render"),require("../exception"),require("../icon")):n(e["../shared"],e.vue,e["../virtual-render"],e["../exception"],e["../icon"]);for(var r in t)("object"==typeof exports?exports:e)[r]=t[r]}}(self,((e,n,t,r,o)=>(()=>{var i={8022:(e,n,t)=>{var r=t(4481),o=t(6426),i=o;i.v1=r,i.v4=o,e.exports=i},8725:e=>{for(var n=[],t=0;t<256;++t)n[t]=(t+256).toString(16).substr(1);e.exports=function(e,t){var r=t||0,o=n;return[o[e[r++]],o[e[r++]],o[e[r++]],o[e[r++]],"-",o[e[r++]],o[e[r++]],"-",o[e[r++]],o[e[r++]],"-",o[e[r++]],o[e[r++]],"-",o[e[r++]],o[e[r++]],o[e[r++]],o[e[r++]],o[e[r++]],o[e[r++]]].join("")}},9157:e=>{var n="undefined"!=typeof crypto&&crypto.getRandomValues&&crypto.getRandomValues.bind(crypto)||"undefined"!=typeof msCrypto&&"function"==typeof window.msCrypto.getRandomValues&&msCrypto.getRandomValues.bind(msCrypto);if(n){var t=new Uint8Array(16);e.exports=function(){return n(t),t}}else{var r=new Array(16);e.exports=function(){for(var e,n=0;n<16;n++)0==(3&n)&&(e=4294967296*Math.random()),r[n]=e>>>((3&n)<<3)&255;return r}}},4481:(e,n,t)=>{var r,o,i=t(9157),a=t(8725),l=0,c=0;e.exports=function(e,n,t){var u=n&&t||0,s=n||[],d=(e=e||{}).node||r,f=void 0!==e.clockseq?e.clockseq:o;if(null==d||null==f){var p=i();null==d&&(d=r=[1|p[0],p[1],p[2],p[3],p[4],p[5]]),null==f&&(f=o=16383&(p[6]<<8|p[7]))}var v=void 0!==e.msecs?e.msecs:(new Date).getTime(),y=void 0!==e.nsecs?e.nsecs:c+1,h=v-l+(y-c)/1e4;if(h<0&&void 0===e.clockseq&&(f=f+1&16383),(h<0||v>l)&&void 0===e.nsecs&&(y=0),y>=1e4)throw new Error("uuid.v1(): Can't create more than 10M uuids/sec");l=v,c=y,o=f;var N=(1e4*(268435455&(v+=122192928e5))+y)%4294967296;s[u++]=N>>>24&255,s[u++]=N>>>16&255,s[u++]=N>>>8&255,s[u++]=255&N;var I=v/4294967296*1e4&268435455;s[u++]=I>>>8&255,s[u++]=255&I,s[u++]=I>>>24&15|16,s[u++]=I>>>16&255,s[u++]=f>>>8|128,s[u++]=255&f;for(var _=0;_<6;++_)s[u+_]=d[_];return n||a(s)}},6426:(e,n,t)=>{var r=t(9157),o=t(8725);e.exports=function(e,n,t){var i=n&&t||0;"string"==typeof e&&(n="binary"===e?new Array(16):null,e=null);var a=(e=e||{}).random||(e.rng||r)();if(a[6]=15&a[6]|64,a[8]=63&a[8]|128,n)for(var l=0;l<16;++l)n[i+l]=a[l];return n||o(a)}},9911:e=>{"use strict";e.exports=r},6870:e=>{"use strict";e.exports=o},4212:n=>{"use strict";n.exports=e},3511:e=>{"use strict";e.exports=t},748:e=>{"use strict";e.exports=n}},a={};function l(e){var n=a[e];if(void 0!==n)return n.exports;var t=a[e]={exports:{}};return i[e](t,t.exports,l),t.exports}l.n=e=>{var n=e&&e.__esModule?()=>e.default:()=>e;return l.d(n,{a:n}),n},l.d=(e,n)=>{for(var t in n)l.o(n,t)&&!l.o(e,t)&&Object.defineProperty(e,t,{enumerable:!0,get:n[t]})},l.o=(e,n)=>Object.prototype.hasOwnProperty.call(e,n),l.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})};var c={};return(()=>{"use strict";l.r(c),l.d(c,{default:()=>V});var e,n,t,r=l(4212),o=l(748),i=l(3511),a=l.n(i);function u(e,n,t){return n in e?Object.defineProperty(e,n,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[n]=t,e}!function(e){e.NODE_CLICK="nodeClick",e.NODE_COLLAPSE="nodeCollapse",e.NODE_EXPAND="nodeExpand"}(t||(t={}));var s,d=function(){},f=(u(e={},t.NODE_CLICK,d),u(e,t.NODE_COLLAPSE,d),u(e,t.NODE_EXPAND,d),e);!function(e){e.DEPTH="__depth",e.INDEX="__index",e.UUID="__uuid",e.PARENT_ID="__parent_id",e.HAS_CHILD="__has_child",e.PATH="__path",e.IS_ROOT="__is_root",e.ORDER="__order",e.IS_OPENED="__is_open",e.IS_CHECKED="__is_checked",e.IS_SELECTED="__is_selected",e.IS_ASYNC_INIT="__is_async_init",e.IS_MATCH="__is_match",e.IS_NULL="__IS_NULL",e.IS_CACHED="__is_cached",e.IS_ASYNC="__is_async",e.IS_LOADING="__is_loading"}(s||(s={}));var p=(u(n={},s.IS_OPENED,"isOpen"),u(n,s.IS_SELECTED,"selected"),u(n,s.IS_MATCH,"isMatch"),u(n,s.HAS_CHILD,"hasChild"),u(n,s.IS_CHECKED,"checked"),u(n,s.IS_ASYNC,"async"),u(n,s.IS_LOADING,"loading"),n),v={data:r.PropTypes.arrayOf(r.PropTypes.any).def([]),label:r.PropTypes.oneOfType([r.PropTypes.func.def(void 0),r.PropTypes.string.def("label")]),nodeKey:r.PropTypes.string.def(void 0),children:r.PropTypes.string.def("children"),indent:r.PropTypes.number.def(18),lineHeight:r.PropTypes.number.def(32),levelLine:r.PropTypes.oneOfType([r.PropTypes.bool.def(!1),r.PropTypes.func.def(void 0),r.PropTypes.string.def("1px dashed #c3cdd7")]).def(!1),virtualRender:r.PropTypes.bool.def(!1),prefixIcon:r.PropTypes.oneOfType([r.PropTypes.func.def((function(){})),r.PropTypes.bool.def(!1)]).def(!0),async:r.PropTypes.shape({callback:r.PropTypes.func.def(void 0),cache:r.PropTypes.bool.def(!0),deepAutoOpen:r.PropTypes.commonType(["once","every"],"columnType").def("once")}),offsetLeft:r.PropTypes.number.def(5),search:r.PropTypes.oneOfType([r.PropTypes.shape({value:r.PropTypes.oneOfType([r.PropTypes.number,r.PropTypes.string,r.PropTypes.bool]).def(""),match:r.PropTypes.oneOfType([r.PropTypes.commonType(["fuzzy","full"],"TreeSearchMatchType"),r.PropTypes.func]),resultType:r.PropTypes.commonType(["tree","list"],"TreeSearchResultType").def("tree"),openResultNode:r.PropTypes.bool}),r.PropTypes.string,r.PropTypes.number,r.PropTypes.bool]).def(void 0),emptyText:r.PropTypes.string.def("没有数据"),draggable:r.PropTypes.bool.def(!1),dragSort:r.PropTypes.bool.def(!1),selectable:r.PropTypes.bool.def(!0),selected:r.PropTypes.oneOfType([r.PropTypes.string,r.PropTypes.number,r.PropTypes.object]).def(null),autoCheckChildren:r.PropTypes.bool.def(!0),syncAction:r.PropTypes.bool.def(!1)},y=l(9911),h=l.n(y);function N(e){return N="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},N(e)}var I=l(6870);function _(e,n){(null==n||n>e.length)&&(n=e.length);for(var t=0,r=new Array(n);t<n;t++)r[t]=e[t];return r}function g(e){return function(e){if(Array.isArray(e))return _(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||function(e,n){if(e){if("string"==typeof e)return _(e,n);var t=Object.prototype.toString.call(e).slice(8,-1);return"Object"===t&&e.constructor&&(t=e.constructor.name),"Map"===t||"Set"===t?Array.from(e):"Arguments"===t||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t)?_(e,n):void 0}}(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}var S=void 0,m="1px dashed #c3cdd7",T=function(e,n){var t=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null,r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:null,o=arguments.length>4&&void 0!==arguments[4]?arguments[4]:null,i=arguments.length>5&&void 0!==arguments[5]?arguments[5]:[],a=e[n];return"boolean"==typeof a?a?r:o:D(t,e,n,i)},D=function(e,n,t){var r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:[],o=n[t];if("string"==typeof o)return"object"===N(e)&&null!==e?(Object.prototype.hasOwnProperty.call(e,o)||console.error("cannot find node label with key ".concat(o)),e[o]):o;if("function"==typeof o){var i=o.apply(S,[e].concat(g(r)));return"string"==typeof i?i:void console.error("props label with function return value is not string, please check and return string")}},E=function(e,n){return D(e,n,"label")},A=function(e,n){return e.get(n)||{}},P=function(e,n,t){var r;return null===(r=A(e,n))||void 0===r?void 0:r[t]},O=function(e,n){return{"--level-line":T(n,"levelLine",e,m,null,["tree"]),"--lineHeight":"".concat(n.lineHeight,"px"),"--indent":"".concat(n.indent,"px"),"--offset-left":"".concat(n.offsetLeft,"px")}},b=function(e,n){var t=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},r=t.schema,o=P(r,e[s.UUID],s.DEPTH);return Object.assign({"--depth":o},"function"==typeof n.levelLine?{"--level-line":T(n,"levelLine",e,m,null,["node"])}:{})},C=function(e,n,t){var r=A(n,e[s.UUID])||{};return{"is-root":r.__is_root,"bk-tree-node":!0,"is-open":r.__is_open,"is-virtual-render":t.virtualRender,"level-line":t.levelLine}},L=function(e,n){var t=A(n,e[s.UUID])||{};return u({"is-checked":t.__is_checked,"is-selected":t.__is_selected},(0,r.resolveClassName)("node-row"),!0)},U=function(e,n,t,r,o){x(e,n,t,u({},r,o))},x=function(e,n,t,r){var o=e.split("-").reduce((function(e,n){var r=Number(n);return Array.isArray(e)?e[r]:e[t][r]}),n);Object.assign(o,r||{})},H=function(e){return null==e?{__IS_NULL:!0}:"string"==typeof e||"number"==typeof e||"symbol"===N(e)?u({},s.UUID,e):(Object.prototype.hasOwnProperty.call(e,s.UUID)||console.error("setNodeAction Error: node id cannot found"),e)};const R=function(e,n){var t=function(n){return e.schema.get(n)},r=function(e,n){var r;return null===(r=t(e[s.UUID]))||void 0===r?void 0:r[n]},o=function(r,o,a){n.syncAction&&void 0!==p[o]&&U(i(r),n.data,n.children,p[o],a),e.schema.set(r[s.UUID],Object.assign(Object.assign({},t(r[s.UUID])),u({},o,a)))},i=function(e){return r(e,s.PATH)},a=function(e){return r(e,s.UUID)},l=function(e){return r(e,s.IS_ROOT)},c=function(e){return r(e,s.IS_OPENED)},d=function(e){return r(e,s.HAS_CHILD)},f=function(e){return r(e,s.IS_MATCH)},v=function(e){return r(e,s.IS_CHECKED)},y=function(e){return r(u({},s.UUID,e),s.PARENT_ID)},h=function(e){var n;return"object"===N(e)?c(e):"string"==typeof e&&(null===(n=t(e))||void 0===n?void 0:n[s.IS_OPENED])},I=function(e){return e.split("-").reduce((function(e,t){var r=Number(t);return Array.isArray(e)?e[r]:e[n.children][r]}),n.data)},_=function(e){return I(i(u({},s.UUID,e)))};return{getSchemaVal:t,getNodeAttr:r,getNodeId:a,getNodeParentId:function(e){return r(e,s.PARENT_ID)},getNodeParentIdById:y,getParentNodeData:function(e){return l(u({},s.UUID,e))?u({},n.children,n.data):_(y(e))},setNodeAttr:o,getNodePath:i,isRootNode:l,isNodeOpened:c,hasChildNode:d,isItemOpen:h,isNodeChecked:v,isNodeMatched:f,isNodeLoading:function(e){return r(e,s.IS_LOADING)},checkNodeIsOpen:function(e){return l(e)||h(e)||h(r(e,s.PARENT_ID))},getSourceNodeByPath:I,getSourceNodeByUID:_,deleteNodeSchema:function(n){return e.schema.delete(n)},resolveScopedSlotParam:function(e){return{loading:r(e,s.IS_LOADING),hasChildNode:d(e),isMatched:f(e),isChecked:v(e),isOpened:c(e),isRoot:l(e),fullPath:r(e,s.PATH),uuid:a(e),parentId:r(e,s.PARENT_ID)}},setTreeNodeLoading:function(e,t){o(e,s.IS_LOADING,t),n.syncAction||U(i(e),n.data,n.children,s.IS_LOADING,t)}}},j=function(e,n){var t=R(n,e),r=t.setNodeAttr,o=t.getNodePath,i=t.getNodeAttr,a=t.isNodeOpened,l=t.resolveScopedSlotParam,c=t.setTreeNodeLoading,u=function(n,t){if("object"===N(n)&&null!==n){r(t,s.IS_OPENED,!0);var i=Array.isArray(n)?n:[n];return U(o(t),e.data,e.children,e.children,i),Promise.resolve(n)}return Promise.reject(n)},d=function(n){var t=e.async||{},o=t.callback,d=void 0===o?null:o,f=t.cache,p=void 0===f||f;if("function"==typeof d&&!1!==i(n,s.IS_ASYNC)){var v=i(n,s.IS_ASYNC_INIT);if(r(n,s.IS_ASYNC_INIT,!0),!i(n,s.IS_CACHED)){if(r(n,s.IS_CACHED,p),a(n)&&v)return Promise.resolve(!0);var y=l(n),h=d(n,(function(e){return u(e,n)}),y);if("object"===N(h)&&null!==h)return c(n,!0),h instanceof Promise?Promise.resolve(h.then((function(e){return u(e,n)})).catch((function(e){return console.error("load remote data error:",e)})).finally((function(){c(n,!1),r(n,s.IS_CACHED,!0)}))):(u(h,n),c(n,!1),Promise.resolve(!0))}return Promise.resolve(!0)}return Promise.resolve(!0)};return{asyncNodeClick:d,deepAutoOpen:function e(){var t=n.data.filter((function(e){return i(e,s.IS_ASYNC)&&e.isOpen&&!i(e,s.IS_ASYNC_INIT)}));t.length&&Promise.all(t.map((function(e){return d(e)}))).then((function(){e()})).catch((function(e){console.warn(e)}))}}};var k=l(8022),w=void 0;const M=(0,o.defineComponent)({name:"Tree",props:v,emits:f,setup:function(e,n){var i=function(e){var n,t=function(e){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:void 0,t=arguments.length>2&&void 0!==arguments[2]?arguments[2]:[],r=e.data,o=e.children,i=[],a=0,l=new Map;function c(e,n,t,r){if(null!=e&&l.has(e)&&![s.UUID,s.PARENT_ID].includes(n)){var o=l.get(e);Object.prototype.hasOwnProperty.call(o,n)&&"function"==typeof r&&Reflect.apply(r,self,[o,n,t])&&(Object.assign(o,u({},n,t)),c(o[s.PARENT_ID],n,t,r))}}function d(n){var t=null;return"string"==typeof e.nodeKey&&(t=n[e.nodeKey]||(0,k.v4)()),t||n[s.UUID]||(0,k.v4)()}function f(e,n,r){var o=arguments.length>3&&void 0!==arguments[3]?arguments[3]:void 0,i=p[r];if(Object.prototype.hasOwnProperty.call(n,i))return n[i];var a=(t||[]).find((function(n){return n[s.UUID]===e})),l=void 0;return a&&(l=a[r]),null==l&&(l=o),l}function v(e,n){return f(e,n,s.IS_OPENED,!1)}function y(e,n){return f(e,n,s.IS_CHECKED,!1)}function h(e,n){return f(e,n,s.IS_MATCH,!0)}function I(e,n){return f(e,n,s.IS_SELECTED,!1)}function _(e,n){return f(e,n,s.IS_CACHED,!1)}function g(e,n){return f(e,n,s.IS_ASYNC,null)}function S(e,n){return Object.prototype.hasOwnProperty.call(n,s.IS_LOADING)?n[s.IS_LOADING]:f(e,n,s.IS_LOADING,!1)}function m(e){return!e[s.IS_OPENED]}function T(n){for(var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null,f=arguments.length>3&&void 0!==arguments[3]?arguments[3]:null,p=n.length,D=0;D<p;D++){var E=n[D];if(Array.isArray(E))T(E,t,r,f);else if("object"===N(E)&&null!==E){var A,P="".concat(d(E)),O=null!==f?"".concat(f,"-").concat(D):"".concat(D),b=!!(E[o]||[]).length,C=(u(A={},s.DEPTH,t),u(A,s.INDEX,D),u(A,s.UUID,P),u(A,s.PARENT_ID,r),u(A,s.HAS_CHILD,b),u(A,s.PATH,O),u(A,s.IS_ROOT,null===r),u(A,s.ORDER,a),u(A,s.IS_SELECTED,!!e.selectable&&I(P,E)),u(A,s.IS_MATCH,h(P,E)),u(A,s.IS_OPENED,v(P,E)),u(A,s.IS_CHECKED,y(P,E)),u(A,s.IS_CACHED,_(P,E)),u(A,s.IS_ASYNC,g(P,E)),u(A,s.IS_LOADING,S(P,E)),u(A,o,null),A);Object.assign(E,u({},s.UUID,P)),l.set(P,C),a+=1,i.push(Object.assign(Object.assign({},E),u({},o,null))),(C[s.IS_OPENED]||C[s.IS_SELECTED])&&c(r,s.IS_OPENED,!0,m),Object.prototype.hasOwnProperty.call(E,o)&&T(E[o]||[],t+1,P,O)}}}return T(n||r),[i,l]},r=t(e),i=new Map,a=[],l=[],c=(0,o.reactive)({data:r[0],schema:r[1],levelLineSchema:{}}),d=(0,o.computed)((function(){return Array.from(c.schema.values())})),f=j(e,c),v=f.asyncNodeClick,y=f.deepAutoOpen,h=function(e,n){(!(arguments.length>2&&void 0!==arguments[2])||arguments[2])&&i.has(e)&&i.delete(e),i.set(e,n)},I=function(e){var n,t=function(e){return"function"==typeof e?{type:"loop",fn:e}:"object"===N(e)&&"string"==typeof e.type&&"function"==typeof e.fn?e:(console.error("loop event error",e),null)}(e);return null!==t&&Reflect.apply(t.fn,w,[]),null!==(n=null==t?void 0:t.type)&&void 0!==n?n:"once"};return(0,o.watch)((function(){return[e.data]}),(function(n){var r,o,a=t(e,n,d.value);c.data=a[0],c.schema=a[1],(null===(r=e.async)||void 0===r?void 0:r.callback)&&"every"===(null===(o=e.async)||void 0===o?void 0:o.deepAutoOpen)&&y(),Array.from(i.keys()).forEach((function(e){var n=i.get(e);if(Array.isArray(n)){var t=[];n.forEach((function(e,n){"once"===I(e)&&t.unshift(n)})),t.length&&t.forEach((function(e){return n.splice(e,1)})),0===n.length&&i.delete(e)}else"once"===I(n)&&i.delete(e)}))}),{deep:!0}),e.selectable&&(0,o.watch)((function(){return e.selected}),(function(e){l.length=0,a.forEach((function(n){Reflect.apply(n,w,[e]),l.push((function(){return Reflect.apply(n,w,[e])}))})),h("afterSelectWatch",l)}),{immediate:!0}),(null===(n=e.async)||void 0===n?void 0:n.callback)&&y(),{flatData:c,schemaValues:d,asyncNodeClick:v,deepAutoOpen:y,afterDataUpdate:function(e){h("afterDataUpdate",e)},registerNextLoop:h,onSelected:function(e){a.push(e)}}}(e),l=i.flatData,c=i.schemaValues,d=i.onSelected,f=i.registerNextLoop,v=R(l,e),y=v.setNodeAttr,_=v.checkNodeIsOpen,g=v.getNodeAttr,S=v.getNodePath,m=v.isRootNode,T=v.isNodeOpened,D=v.isNodeChecked,A=v.isNodeMatched,P=v.hasChildNode,U=function(e){var n,t=(0,o.toRef)(e,"search"),r=null!==(n=e.search)&&void 0!==n?n:{},i=r.openResultNode,a=void 0!==i&&i,l=r.resultType,c=void 0===l?"tree":l,u=function(e){return["string","number","boolean"].includes(N(e))},s=function(e,n){return e===n},d=function(e,n){return new RegExp("".concat(e),"i").test("".concat(n))},f=function(e,n){return Reflect.apply(e,void 0,n)},p=void 0===t.value||!1===t.value,v=(0,o.computed)((function(){return!1!==t.value&&(u(t.value)?"".concat(t.value).length>0:"object"===N(t.value))}));return{searchFn:function(e,n){if(p)return!0;if(u(t.value))return f(d,[t.value,e,n]);var r=t.value,o=r.value,i=void 0===o?"":o,a=r.match,l=void 0===a?"fuzzy":a,c="function"==typeof l?l:"fuzzy"===l?d:s;return 0==="".concat(i).length||f(c,[i,e,n])},refSearch:t,isSearchActive:v,isSearchDisabled:p,openResultNode:a,resultType:c,isTreeUI:"tree"===c}}(e),x=U.searchFn,M=U.isSearchActive,V=U.refSearch,q=U.openResultNode,K=U.isTreeUI;U.isSearchDisabled||(0,o.watch)([V],(function(){l.data.forEach((function(n){var t=x(E(n,e),n);y(n,s.IS_MATCH,t),q&&F(n,!0,!0)}))}));var G=(0,o.computed)((function(){return l.data.filter((function(e){return _(e)&&function(e){return!M.value||(g(e,s.IS_MATCH)||!!K&&c.value.some((function(n){return n[s.PATH].startsWith(S(e))&&n[s.IS_MATCH]})))}(e)}))})),Y=function(e,n,i,a,l,c){var d=null,f=R(i,e),p=f.setNodeAttr,v=f.getNodePath,y=f.getSchemaVal,h=f.getNodeAttr,_=f.getNodeId,g=f.isRootNode,S=f.hasChildNode,m=f.isItemOpen,T=f.isNodeOpened,D=f.isNodeLoading,A=f.resolveScopedSlotParam,P=c.registerNextLoop,O=j(e,i),U=O.asyncNodeClick,x=O.deepAutoOpen,k=function(e){if("string"==typeof e)return e;if("object"===N(e)&&null!==e){if(e.__v_isVNode)return e;var n=e.node,t=e.className,r=e.text,i=e.style;return(0,o.h)(n,{class:t,style:i},r)}return null},w=function(t){if(n.slots.nodeAction)return n.slots.nodeAction(A(t));var r=null;return D(t)?function(e){var t,r,i;return(null!==(i=null===(r=(t=n.slots).nodeLoading)||void 0===r?void 0:r.call(t,A(e)))&&void 0!==i?i:D(e))?(0,o.createVNode)(I.Spinner,null,null):""}(t):"function"==typeof e.prefixIcon&&"default"!==(r=e.prefixIcon(A(t),"node_action"))?k(r):("default"===r||"boolean"==typeof e.prefixIcon&&e.prefixIcon)&&(S(t)||t.async||!e.autoCheckChildren)?m(t)?(0,o.createVNode)(I.DownShape,null,null):(0,o.createVNode)(I.RightShape,null,null):null},M=function(t){if(n.slots.nodeType)return n.slots.nodeType(A(t));var i=null;return"function"==typeof e.prefixIcon&&"default"!==(i=e.prefixIcon(A(t),"node_type"))?k(i):"default"===i||"boolean"==typeof e.prefixIcon&&e.prefixIcon?g(t)||S(t)?function(e){return m(e)?(0,o.createVNode)(I.FolderShapeOpen,{class:(0,r.resolveClassName)("tree-icon")},null):(0,o.createVNode)(I.Folder,{class:(0,r.resolveClassName)("tree-icon")},null)}(t):(0,o.createVNode)(I.TextFile,{class:(0,r.resolveClassName)("tree-icon")},null):null},V=function(e){var r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null,o=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null,i=!(arguments.length>3&&void 0!==arguments[3])||arguments[3],l=null===r?!m(e):!!r;if(p(e,s.IS_OPENED,l),i){var c=m(e)?t.NODE_EXPAND:t.NODE_COLLAPSE;n.emit(c,e,A(e),y(e[s.UUID]),o)}l||a.value.filter((function(n){return String.prototype.startsWith.call(v(n),v(e))})).forEach((function(e){return p(e,s.IS_OPENED,l)}))},q=function(e,n,t){Array.isArray(e)?e.forEach((function(e){return p(H(e),n,t)})):p(H(e),n,t)},K=function e(n){var t=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],r=arguments.length>2&&void 0!==arguments[2]&&arguments[2],o=H(n);if(!o[s.IS_NULL])if(r)if(t){if(q(o,s.IS_OPENED,t),!g(o)){e(h(o,s.PARENT_ID),!0,!0)}}else V(o,!1,null,!1);else q(o,s.IS_OPENED,t)},G=function(e,n){var t=T(e);U(e).finally((function(){h(e,s.IS_LOADING)?P("setNodeOpenedAfterLoading",{type:"once",fn:function(){return V(e,!t,n)}}):V(e,!t,n)}))},Y=function n(t){var r=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],i=!(arguments.length>2&&void 0!==arguments[2])||arguments[2],a=Array.isArray(t)?t:[t];if(a.length){var l=H(a[0]);l[s.IS_NULL]||(e.selectable?(null!=d&&p(u({},s.UUID,d),s.IS_SELECTED,!r),p(l,s.IS_SELECTED,r),d=_(l),i&&1===a.length&&K(l,!0,!0),h(l,s.IS_ASYNC)&&U(l).then((function(){(0,o.nextTick)((function(){a.shift(),n(a,r,i)}))}))):console.warn("props.selectable is false or undefined, please set selectable with true"))}},X=function(n){if(!e.levelLine)return null;var t=h(n,s.DEPTH)+1;return new Array(t).fill("").map((function(e,n){return n})).filter((function(e){return function(e,n){if(g(n))return!1;var t=v(n),r="".concat(t).split("-").slice(0,e+1);if(r.join("-")===t)return!0;var o=r.pop(),i=parseInt(o,10);r.push("".concat(i+1));var a=r.join("-");return l.value.some((function(e){return e[s.PATH]===a}))}(e,n)})).filter((function(e){return e>0})).map((function(e){return(0,o.createVNode)("span",{class:"node-virtual-line",style:(n=t-e,{"--depth":n})},null);var n}))};return{renderTreeNode:function(a){var l,c,u,d,f;return(0,o.createVNode)("div",{"data-tree-node":_(a),class:L(a,i.schema)},[(0,o.createVNode)("div",{class:C(a,i.schema,e),style:b(a,e,i),onClick:function(e){return function(e,r){Y(e,!0,!1),T(e)||G(e,r),n.emit(t.NODE_CLICK,A(e),y(e[s.UUID]),r)}(a,e)}},[(0,o.createVNode)("span",{class:(0,r.resolveClassName)("node-action"),onClick:function(e){return function(e,n){e.stopImmediatePropagation(),e.stopPropagation(),e.preventDefault(),G(n,e)}(e,a)}},[w(a)]),(0,o.createVNode)("span",{class:(0,r.resolveClassName)("node-content")},[[M(a)],(0,o.createVNode)("span",{class:(0,r.resolveClassName)("node-text")},[null!==(u=null===(c=(l=n.slots).node)||void 0===c?void 0:c.call(l,A(a)))&&void 0!==u?u:[E(a,e)]]),null===(f=(d=n.slots).nodeAppend)||void 0===f?void 0:f.call(d,A(a))]),X(a)])])},hanldeTreeNodeClick:G,deepAutoOpen:x,asyncNodeClick:U,setNodeAction:q,setNodeOpened:V,setSelect:Y,setOpen:K}}(e,n,l,G,c,{registerNextLoop:f}),X=Y.renderTreeNode,z=Y.hanldeTreeNodeClick,B=Y.setNodeOpened,F=Y.setOpen,J=Y.setNodeAction,W=Y.setSelect,$=Y.asyncNodeClick;d((function(e){W(e,!0,!0)})),n.expose({hanldeTreeNodeClick:z,isNodeChecked:D,isRootNode:m,isNodeOpened:T,isNodeMatched:A,hasChildNode:P,setOpen:F,setChecked:function(e){var n=!(arguments.length>1&&void 0!==arguments[1])||arguments[1];J(H(e),s.IS_CHECKED,n)},setNodeAction:J,setNodeOpened:B,setSelect:W,asyncNodeClick:$,getData:function(){return l}});var Q=(0,o.ref)(),Z=function(e,n){var t=n.slots;return{renderEmpty:function(n){var r,i;return(0,o.createVNode)(h(),{scene:"part",type:n},{default:function(){return[null!==(i=null===(r=t.default)||void 0===r?void 0:r.call(t))&&void 0!==i?i:e.emptyText]}})}}}(e,n),ee=Z.renderEmpty;return function(e,n,t){var r=R(t,e),i=r.getSourceNodeByUID,a=r.getNodeParentIdById,l=r.getParentNodeData,c=r.getNodeAttr,d=r.getNodePath,f=r.isRootNode,p=function(e){return e.target.closest("[data-tree-node]")},v=function e(n){p(n).removeEventListener("mouseup",e)},y=function(e){var n=p(e);n.setAttribute("draggable","true"),n.addEventListener("mouseup",v)},h=function(e){e.preventDefault();var n=p(e),t=e.dataTransfer.getData("node-id"),r=n.getAttribute("data-tree-node"),o=_(t,r)?"move":"none";e.dataTransfer.effectAllowed=o,e.dataTransfer.dropEffect=o},N=function(e){e.dataTransfer.effectAllowed="move",e.dataTransfer.dropEffect="move";var n=p(e);e.dataTransfer.setData("text/plain",""),e.dataTransfer.setData("node-id",n.getAttribute("data-tree-node"))},I=function(n){n.preventDefault(),n.stopPropagation();var t=p(n),r=n.dataTransfer.getData("node-id"),o=t.getAttribute("data-tree-node");Reflect.apply(e.dragSort?g:S,void 0,[r,o])},_=function(e,n){var t=d(u({},s.UUID,e)),r=d(u({},s.UUID,n));return a(e)===a(n)||-1===t.indexOf(r)&&-1===r.indexOf(t)},g=function(n,t){if(_(n,t)){var r=JSON.parse(JSON.stringify(i(n))),o=JSON.parse(JSON.stringify(i(t))),a=l(n),d=l(t),f=c(u({},s.UUID,n),s.INDEX),p=c(u({},s.UUID,t),s.INDEX);null==a||a[e.children].splice(f,1,o),null==d||d[e.children].splice(p,1,r)}},S=function(n,t){var r=i(n),o=i(t),l=null;if(f(u({},s.UUID,n)))l=e.data;else{var d=a(n);if(null!=d){l=i(d);var p=c(u({},s.UUID,n),s.INDEX);null==l||l[e.children].splice(p,1)}}o[e.children]||(o[e.children]=[]),o[e.children].unshift(r)};(0,o.onMounted)((function(){if(e.draggable&&n.value){var t=n.value.$el;t.addEventListener("mousedown",y),t.addEventListener("dragstart",N),t.addEventListener("dragover",h),t.addEventListener("drop",I)}})),(0,o.onUnmounted)((function(){if(e.draggable&&n.value){var t=n.value.$el;t.removeEventListener("mousedown",y),t.removeEventListener("dragstart",N),t.removeEventListener("dragover",h),t.removeEventListener("drop",I)}}))}(e,Q,l),function(){return(0,o.createVNode)(a(),{class:(0,r.resolveClassName)("tree"),style:O(null,e),list:G.value,lineHeight:e.lineHeight,enabled:e.virtualRender,contentClassName:(0,r.resolveClassName)("container"),throttleDelay:0,ref:Q},{default:function(e){return function(e){if(e.length)return e.map(X);var n=M.value?"search-empty":"empty";return ee(n)}(e.data||[])}})}}}),V=(0,r.withInstall)(M)})(),c})()));
1
+ !function(e,n){if("object"==typeof exports&&"object"==typeof module)module.exports=n(require("../shared"),require("vue"),require("../virtual-render"),require("../exception"),require("../icon"));else if("function"==typeof define&&define.amd)define(["../shared","vue","../virtual-render","../exception","../icon"],n);else{var t="object"==typeof exports?n(require("../shared"),require("vue"),require("../virtual-render"),require("../exception"),require("../icon")):n(e["../shared"],e.vue,e["../virtual-render"],e["../exception"],e["../icon"]);for(var r in t)("object"==typeof exports?exports:e)[r]=t[r]}}(self,((e,n,t,r,o)=>(()=>{var i={8022:(e,n,t)=>{var r=t(4481),o=t(6426),i=o;i.v1=r,i.v4=o,e.exports=i},8725:e=>{for(var n=[],t=0;t<256;++t)n[t]=(t+256).toString(16).substr(1);e.exports=function(e,t){var r=t||0,o=n;return[o[e[r++]],o[e[r++]],o[e[r++]],o[e[r++]],"-",o[e[r++]],o[e[r++]],"-",o[e[r++]],o[e[r++]],"-",o[e[r++]],o[e[r++]],"-",o[e[r++]],o[e[r++]],o[e[r++]],o[e[r++]],o[e[r++]],o[e[r++]]].join("")}},9157:e=>{var n="undefined"!=typeof crypto&&crypto.getRandomValues&&crypto.getRandomValues.bind(crypto)||"undefined"!=typeof msCrypto&&"function"==typeof window.msCrypto.getRandomValues&&msCrypto.getRandomValues.bind(msCrypto);if(n){var t=new Uint8Array(16);e.exports=function(){return n(t),t}}else{var r=new Array(16);e.exports=function(){for(var e,n=0;n<16;n++)0==(3&n)&&(e=4294967296*Math.random()),r[n]=e>>>((3&n)<<3)&255;return r}}},4481:(e,n,t)=>{var r,o,i=t(9157),a=t(8725),l=0,c=0;e.exports=function(e,n,t){var u=n&&t||0,s=n||[],d=(e=e||{}).node||r,f=void 0!==e.clockseq?e.clockseq:o;if(null==d||null==f){var p=i();null==d&&(d=r=[1|p[0],p[1],p[2],p[3],p[4],p[5]]),null==f&&(f=o=16383&(p[6]<<8|p[7]))}var v=void 0!==e.msecs?e.msecs:(new Date).getTime(),y=void 0!==e.nsecs?e.nsecs:c+1,h=v-l+(y-c)/1e4;if(h<0&&void 0===e.clockseq&&(f=f+1&16383),(h<0||v>l)&&void 0===e.nsecs&&(y=0),y>=1e4)throw new Error("uuid.v1(): Can't create more than 10M uuids/sec");l=v,c=y,o=f;var N=(1e4*(268435455&(v+=122192928e5))+y)%4294967296;s[u++]=N>>>24&255,s[u++]=N>>>16&255,s[u++]=N>>>8&255,s[u++]=255&N;var _=v/4294967296*1e4&268435455;s[u++]=_>>>8&255,s[u++]=255&_,s[u++]=_>>>24&15|16,s[u++]=_>>>16&255,s[u++]=f>>>8|128,s[u++]=255&f;for(var I=0;I<6;++I)s[u+I]=d[I];return n||a(s)}},6426:(e,n,t)=>{var r=t(9157),o=t(8725);e.exports=function(e,n,t){var i=n&&t||0;"string"==typeof e&&(n="binary"===e?new Array(16):null,e=null);var a=(e=e||{}).random||(e.rng||r)();if(a[6]=15&a[6]|64,a[8]=63&a[8]|128,n)for(var l=0;l<16;++l)n[i+l]=a[l];return n||o(a)}},9911:e=>{"use strict";e.exports=r},6870:e=>{"use strict";e.exports=o},4212:n=>{"use strict";n.exports=e},3511:e=>{"use strict";e.exports=t},748:e=>{"use strict";e.exports=n}},a={};function l(e){var n=a[e];if(void 0!==n)return n.exports;var t=a[e]={exports:{}};return i[e](t,t.exports,l),t.exports}l.n=e=>{var n=e&&e.__esModule?()=>e.default:()=>e;return l.d(n,{a:n}),n},l.d=(e,n)=>{for(var t in n)l.o(n,t)&&!l.o(e,t)&&Object.defineProperty(e,t,{enumerable:!0,get:n[t]})},l.o=(e,n)=>Object.prototype.hasOwnProperty.call(e,n),l.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})};var c={};return(()=>{"use strict";l.r(c),l.d(c,{default:()=>V});var e,n,t,r=l(4212),o=l(748),i=l(3511),a=l.n(i);function u(e,n,t){return n in e?Object.defineProperty(e,n,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[n]=t,e}!function(e){e.NODE_CLICK="nodeClick",e.NODE_COLLAPSE="nodeCollapse",e.NODE_EXPAND="nodeExpand"}(t||(t={}));var s,d=function(){},f=(u(e={},t.NODE_CLICK,d),u(e,t.NODE_COLLAPSE,d),u(e,t.NODE_EXPAND,d),e);!function(e){e.DEPTH="__depth",e.INDEX="__index",e.UUID="__uuid",e.PARENT_ID="__parent_id",e.HAS_CHILD="__has_child",e.PATH="__path",e.IS_ROOT="__is_root",e.ORDER="__order",e.IS_OPENED="__is_open",e.IS_CHECKED="__is_checked",e.IS_SELECTED="__is_selected",e.IS_ASYNC_INIT="__is_async_init",e.IS_MATCH="__is_match",e.IS_NULL="__IS_NULL",e.IS_CACHED="__is_cached",e.IS_ASYNC="__is_async",e.IS_LOADING="__is_loading",e.TREE_NODE_ATTR="__attr__"}(s||(s={}));var p=(u(n={},s.IS_OPENED,"isOpen"),u(n,s.IS_SELECTED,"selected"),u(n,s.IS_MATCH,"isMatch"),u(n,s.HAS_CHILD,"hasChild"),u(n,s.IS_CHECKED,"checked"),u(n,s.IS_ASYNC,"async"),u(n,s.IS_LOADING,"loading"),n),v={data:r.PropTypes.arrayOf(r.PropTypes.any).def([]),label:r.PropTypes.oneOfType([r.PropTypes.func.def(void 0),r.PropTypes.string.def("label")]),nodeKey:r.PropTypes.string.def(void 0),children:r.PropTypes.string.def("children"),indent:r.PropTypes.number.def(18),lineHeight:r.PropTypes.number.def(32),levelLine:r.PropTypes.oneOfType([r.PropTypes.bool.def(!1),r.PropTypes.func.def(void 0),r.PropTypes.string.def("1px dashed #c3cdd7")]).def(!1),virtualRender:r.PropTypes.bool.def(!1),prefixIcon:r.PropTypes.oneOfType([r.PropTypes.func.def((function(){})),r.PropTypes.bool.def(!1)]).def(!0),async:r.PropTypes.shape({callback:r.PropTypes.func.def(void 0),cache:r.PropTypes.bool.def(!0),deepAutoOpen:r.PropTypes.commonType(["once","every"],"columnType").def("once")}),offsetLeft:r.PropTypes.number.def(5),search:r.PropTypes.oneOfType([r.PropTypes.shape({value:r.PropTypes.oneOfType([r.PropTypes.number,r.PropTypes.string,r.PropTypes.bool]).def(""),match:r.PropTypes.oneOfType([r.PropTypes.commonType(["fuzzy","full"],"TreeSearchMatchType"),r.PropTypes.func]),resultType:r.PropTypes.commonType(["tree","list"],"TreeSearchResultType").def("tree"),openResultNode:r.PropTypes.bool}),r.PropTypes.string,r.PropTypes.number,r.PropTypes.bool]).def(void 0),emptyText:r.PropTypes.string.def("没有数据"),draggable:r.PropTypes.bool.def(!1),dragSort:r.PropTypes.bool.def(!1),selectable:r.PropTypes.bool.def(!0),selected:r.PropTypes.oneOfType([r.PropTypes.string,r.PropTypes.number,r.PropTypes.object]).def(null),autoCheckChildren:r.PropTypes.bool.def(!0),syncAction:r.PropTypes.bool.def(!1)},y=l(9911),h=l.n(y);function N(e){return N="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},N(e)}var _=l(6870);function I(e,n){(null==n||n>e.length)&&(n=e.length);for(var t=0,r=new Array(n);t<n;t++)r[t]=e[t];return r}function g(e){return function(e){if(Array.isArray(e))return I(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||function(e,n){if(e){if("string"==typeof e)return I(e,n);var t=Object.prototype.toString.call(e).slice(8,-1);return"Object"===t&&e.constructor&&(t=e.constructor.name),"Map"===t||"Set"===t?Array.from(e):"Arguments"===t||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t)?I(e,n):void 0}}(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}var S=void 0,m="1px dashed #c3cdd7",T=function(e,n){var t=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null,r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:null,o=arguments.length>4&&void 0!==arguments[4]?arguments[4]:null,i=arguments.length>5&&void 0!==arguments[5]?arguments[5]:[],a=e[n];return"boolean"==typeof a?a?r:o:E(t,e,n,i)},E=function(e,n,t){var r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:[],o=n[t];if("string"==typeof o)return"object"===N(e)&&null!==e?(Object.prototype.hasOwnProperty.call(e,o)||console.error("cannot find node label with key ".concat(o)),e[o]):o;if("function"==typeof o){var i=o.apply(S,[e].concat(g(r)));return"string"==typeof i?i:void console.error("props label with function return value is not string, please check and return string")}},D=function(e,n){return E(e,n,"label")},A=function(e,n){return e.get(n)||{}},P=function(e,n,t){var r;return null===(r=A(e,n))||void 0===r?void 0:r[t]},O=function(e,n){return{"--level-line":T(n,"levelLine",e,m,null,["tree"]),"--lineHeight":"".concat(n.lineHeight,"px"),"--indent":"".concat(n.indent,"px"),"--offset-left":"".concat(n.offsetLeft,"px")}},b=function(e,n){var t=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},r=t.schema,o=P(r,e[s.UUID],s.DEPTH);return Object.assign({"--depth":o},"function"==typeof n.levelLine?{"--level-line":T(n,"levelLine",e,m,null,["node"])}:{})},C=function(e,n,t){var r=A(n,e[s.UUID])||{};return{"is-root":r.__is_root,"bk-tree-node":!0,"is-open":r.__is_open,"is-virtual-render":t.virtualRender,"level-line":t.levelLine}},L=function(e,n){var t=A(n,e[s.UUID])||{};return u({"is-checked":t.__is_checked,"is-selected":t.__is_selected},(0,r.resolveClassName)("node-row"),!0)},U=function(e,n,t,r,o){x(e,n,t,u({},r,o))},x=function(e,n,t,r){var o=e.split("-").reduce((function(e,n){var r=Number(n);return Array.isArray(e)?e[r]:e[t][r]}),n);Object.assign(o,r||{})},R=function(e){return null==e?{__IS_NULL:!0}:"string"==typeof e||"number"==typeof e||"symbol"===N(e)?u({},s.UUID,e):(Object.prototype.hasOwnProperty.call(e,s.UUID)||console.error("setNodeAction Error: node id cannot found"),e)};const H=function(e,n){var t=function(n){return e.schema.get(n)},r=function(e,n){var r;return null===(r=t(e[s.UUID]))||void 0===r?void 0:r[n]},o=function(r,o,a){n.syncAction&&void 0!==p[o]&&U(i(r),n.data,n.children,p[o],a),e.schema.set(r[s.UUID],Object.assign(Object.assign({},t(r[s.UUID])),u({},o,a)))},i=function(e){return r(e,s.PATH)},a=function(e){return r(e,s.UUID)},l=function(e){return r(e,s.IS_ROOT)},c=function(e){return r(e,s.IS_OPENED)},d=function(e){return r(e,s.HAS_CHILD)},f=function(e){return r(e,s.IS_MATCH)},v=function(e){return r(e,s.IS_CHECKED)},y=function(e){return r(u({},s.UUID,e),s.PARENT_ID)},h=function(e){var n;return"object"===N(e)?c(e):"string"==typeof e&&(null===(n=t(e))||void 0===n?void 0:n[s.IS_OPENED])},_=function(e){return e.split("-").reduce((function(e,t){var r=Number(t);return Array.isArray(e)?e[r]:e[n.children][r]}),n.data)},I=function(e){return _(i(u({},s.UUID,e)))},g=function(e){return{loading:r(e,s.IS_LOADING),hasChildNode:d(e),isMatched:f(e),isChecked:v(e),isOpened:c(e),isRoot:l(e),fullPath:r(e,s.PATH),uuid:a(e),parentId:r(e,s.PARENT_ID)}};return{getSchemaVal:t,getNodeAttr:r,getNodeId:a,getNodeParentId:function(e){return r(e,s.PARENT_ID)},getNodeParentIdById:y,getParentNodeData:function(e){return l(u({},s.UUID,e))?u({},n.children,n.data):I(y(e))},setNodeAttr:o,getNodePath:i,isRootNode:l,isNodeOpened:c,hasChildNode:d,isItemOpen:h,isNodeChecked:v,isNodeMatched:f,isNodeLoading:function(e){return r(e,s.IS_LOADING)},checkNodeIsOpen:function(e){return l(e)||h(e)||h(r(e,s.PARENT_ID))},getSourceNodeByPath:_,getSourceNodeByUID:I,deleteNodeSchema:function(n){return e.schema.delete(n)},resolveScopedSlotParam:g,setTreeNodeLoading:function(e,t){o(e,s.IS_LOADING,t),n.syncAction||U(i(e),n.data,n.children,s.IS_LOADING,t)},extendNodeAttr:function(e){return Object.assign(Object.assign({},e),u({},s.TREE_NODE_ATTR,g(e)))}}},j=function(e,n){var t=H(n,e),r=t.setNodeAttr,o=t.getNodePath,i=t.getNodeAttr,a=t.isNodeOpened,l=t.resolveScopedSlotParam,c=t.setTreeNodeLoading,u=function(n,t){if("object"===N(n)&&null!==n){r(t,s.IS_OPENED,!0);var i=Array.isArray(n)?n:[n];return U(o(t),e.data,e.children,e.children,i),Promise.resolve(n)}return Promise.resolve(n)},d=function(n){var t=e.async||{},o=t.callback,d=void 0===o?null:o,f=t.cache,p=void 0===f||f;if("function"==typeof d&&!1!==i(n,s.IS_ASYNC)){var v=i(n,s.IS_ASYNC_INIT);if(r(n,s.IS_ASYNC_INIT,!0),!i(n,s.IS_CACHED)){if(r(n,s.IS_CACHED,p),a(n)&&v)return Promise.resolve(!0);var y=l(n),h=d(n,(function(e){return u(e,n)}),y);if("object"===N(h)&&null!==h)return c(n,!0),h instanceof Promise?Promise.resolve(h.then((function(e){return u(e,n)})).catch((function(e){return console.error("load remote data error:",e)})).finally((function(){c(n,!1),r(n,s.IS_CACHED,!0)}))):(u(h,n),c(n,!1),Promise.resolve(!0))}return Promise.resolve(!0)}return Promise.resolve(!0)};return{asyncNodeClick:d,deepAutoOpen:function e(){var t=n.data.filter((function(e){return i(e,s.IS_ASYNC)&&e.isOpen&&!i(e,s.IS_ASYNC_INIT)}));t.length&&Promise.all(t.map((function(e){return d(e)}))).then((function(){e()})).catch((function(e){console.warn(e)}))}}};var k=l(8022),w=void 0;const M=(0,o.defineComponent)({name:"Tree",props:v,emits:f,setup:function(e,n){var i=function(e){var n,t=function(e){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:void 0,t=arguments.length>2&&void 0!==arguments[2]?arguments[2]:[],r=e.data,o=e.children,i=[],a=0,l=new Map;function c(e,n,t,r){if(null!=e&&l.has(e)&&![s.UUID,s.PARENT_ID].includes(n)){var o=l.get(e);Object.prototype.hasOwnProperty.call(o,n)&&"function"==typeof r&&Reflect.apply(r,self,[o,n,t])&&(Object.assign(o,u({},n,t)),c(o[s.PARENT_ID],n,t,r))}}function d(n){var t=null;return"string"==typeof e.nodeKey&&(t=n[e.nodeKey]||(0,k.v4)()),t||n[s.UUID]||(0,k.v4)()}function f(e,n,r){var o=arguments.length>3&&void 0!==arguments[3]?arguments[3]:void 0,i=p[r];if(Object.prototype.hasOwnProperty.call(n,i))return n[i];var a=(t||[]).find((function(n){return n[s.UUID]===e})),l=void 0;return a&&(l=a[r]),null==l&&(l=o),l}function v(e,n){return f(e,n,s.IS_OPENED,!1)}function y(e,n){return f(e,n,s.IS_CHECKED,!1)}function h(e,n){return f(e,n,s.IS_MATCH,!0)}function _(e,n){return f(e,n,s.IS_SELECTED,!1)}function I(e,n){return f(e,n,s.IS_CACHED,!1)}function g(e,n){return f(e,n,s.IS_ASYNC,null)}function S(e,n){return Object.prototype.hasOwnProperty.call(n,s.IS_LOADING)?n[s.IS_LOADING]:f(e,n,s.IS_LOADING,!1)}function m(e){return!e[s.IS_OPENED]}function T(n){for(var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null,f=arguments.length>3&&void 0!==arguments[3]?arguments[3]:null,p=n.length,E=0;E<p;E++){var D=n[E];if(Array.isArray(D))T(D,t,r,f);else if("object"===N(D)&&null!==D){var A,P="".concat(d(D)),O=null!==f?"".concat(f,"-").concat(E):"".concat(E),b=!!(D[o]||[]).length,C=(u(A={},s.DEPTH,t),u(A,s.INDEX,E),u(A,s.UUID,P),u(A,s.PARENT_ID,r),u(A,s.HAS_CHILD,b),u(A,s.PATH,O),u(A,s.IS_ROOT,null===r),u(A,s.ORDER,a),u(A,s.IS_SELECTED,!!e.selectable&&_(P,D)),u(A,s.IS_MATCH,h(P,D)),u(A,s.IS_OPENED,v(P,D)),u(A,s.IS_CHECKED,y(P,D)),u(A,s.IS_CACHED,I(P,D)),u(A,s.IS_ASYNC,g(P,D)),u(A,s.IS_LOADING,S(P,D)),u(A,o,null),A);Object.assign(D,u({},s.UUID,P)),l.set(P,C),a+=1,i.push(Object.assign(Object.assign({},D),u({},o,null))),(C[s.IS_OPENED]||C[s.IS_SELECTED])&&c(r,s.IS_OPENED,!0,m),Object.prototype.hasOwnProperty.call(D,o)&&T(D[o]||[],t+1,P,O)}}}return T(n||r),[i,l]},r=t(e),i=new Map,a=[],l=[],c=(0,o.reactive)({data:r[0],schema:r[1],levelLineSchema:{}}),d=(0,o.computed)((function(){return Array.from(c.schema.values())})),f=j(e,c),v=f.asyncNodeClick,y=f.deepAutoOpen,h=function(e,n){(!(arguments.length>2&&void 0!==arguments[2])||arguments[2])&&i.has(e)&&i.delete(e),i.set(e,n)},_=function(e){var n,t=function(e){return"function"==typeof e?{type:"loop",fn:e}:"object"===N(e)&&"string"==typeof e.type&&"function"==typeof e.fn?e:(console.error("loop event error",e),null)}(e);return null!==t&&Reflect.apply(t.fn,w,[]),null!==(n=null==t?void 0:t.type)&&void 0!==n?n:"once"};return(0,o.watch)((function(){return[e.data]}),(function(n){var r,o,a=t(e,n,d.value);c.data=a[0],c.schema=a[1],(null===(r=e.async)||void 0===r?void 0:r.callback)&&"every"===(null===(o=e.async)||void 0===o?void 0:o.deepAutoOpen)&&y(),Array.from(i.keys()).forEach((function(e){var n=i.get(e);if(Array.isArray(n)){var t=[];n.forEach((function(e,n){"once"===_(e)&&t.unshift(n)})),t.length&&t.forEach((function(e){return n.splice(e,1)})),0===n.length&&i.delete(e)}else"once"===_(n)&&i.delete(e)}))}),{deep:!0}),e.selectable&&(0,o.watch)((function(){return e.selected}),(function(e){l.length=0,a.forEach((function(n){Reflect.apply(n,w,[e]),l.push((function(){return Reflect.apply(n,w,[e])}))})),h("afterSelectWatch",l)}),{immediate:!0}),(null===(n=e.async)||void 0===n?void 0:n.callback)&&y(),{flatData:c,schemaValues:d,asyncNodeClick:v,deepAutoOpen:y,afterDataUpdate:function(e){h("afterDataUpdate",e)},registerNextLoop:h,onSelected:function(e){a.push(e)}}}(e),l=i.flatData,c=i.schemaValues,d=i.onSelected,f=i.registerNextLoop,v=H(l,e),y=v.setNodeAttr,I=v.checkNodeIsOpen,g=v.getNodeAttr,S=v.getNodePath,m=v.isRootNode,T=v.isNodeOpened,E=v.isNodeChecked,A=v.isNodeMatched,P=v.hasChildNode,U=function(e){var n,t=(0,o.toRef)(e,"search"),r=null!==(n=e.search)&&void 0!==n?n:{},i=r.openResultNode,a=void 0!==i&&i,l=r.resultType,c=void 0===l?"tree":l,u=function(e){return["string","number","boolean"].includes(N(e))},s=function(e,n){return e===n},d=function(e,n){return new RegExp("".concat(e),"i").test("".concat(n))},f=function(e,n){return Reflect.apply(e,void 0,n)},p=void 0===t.value||!1===t.value,v=(0,o.computed)((function(){return!1!==t.value&&(u(t.value)?"".concat(t.value).length>0:"object"===N(t.value))}));return{searchFn:function(e,n){if(p)return!0;if(u(t.value))return f(d,[t.value,e,n]);var r=t.value,o=r.value,i=void 0===o?"":o,a=r.match,l=void 0===a?"fuzzy":a,c="function"==typeof l?l:"fuzzy"===l?d:s;return 0==="".concat(i).length||f(c,[i,e,n])},refSearch:t,isSearchActive:v,isSearchDisabled:p,openResultNode:a,resultType:c,isTreeUI:"tree"===c}}(e),x=U.searchFn,M=U.isSearchActive,V=U.refSearch,q=U.openResultNode,K=U.isTreeUI;U.isSearchDisabled||(0,o.watch)([V],(function(){l.data.forEach((function(n){var t=x(D(n,e),n);y(n,s.IS_MATCH,t),q&&F(n,!0,!0)}))}));var G=(0,o.computed)((function(){return l.data.filter((function(e){return I(e)&&function(e){return!M.value||(g(e,s.IS_MATCH)||!!K&&c.value.some((function(n){return n[s.PATH].startsWith(S(e))&&n[s.IS_MATCH]})))}(e)}))})),Y=function(e,n,i,a,l,c){var d=null,f=H(i,e),p=f.setNodeAttr,v=f.getNodePath,y=f.getSchemaVal,h=f.getNodeAttr,I=f.getNodeId,g=f.isRootNode,S=f.hasChildNode,m=f.isItemOpen,T=f.isNodeOpened,E=f.isNodeLoading,A=f.resolveScopedSlotParam,P=f.extendNodeAttr,O=c.registerNextLoop,U=j(e,i),x=U.asyncNodeClick,k=U.deepAutoOpen,w=function(e){if("string"==typeof e)return e;if("object"===N(e)&&null!==e){if(e.__v_isVNode)return e;var n=e.node,t=e.className,r=e.text,i=e.style;return(0,o.h)(n,{class:t,style:i},r)}return null},M=function(t){if(n.slots.nodeAction)return n.slots.nodeAction(P(t));var r=null;return E(t)?function(e){var t,r,i;return(null!==(i=null===(r=(t=n.slots).nodeLoading)||void 0===r?void 0:r.call(t,P(e)))&&void 0!==i?i:E(e))?(0,o.createVNode)(_.Spinner,null,null):""}(t):"function"==typeof e.prefixIcon&&"default"!==(r=e.prefixIcon(P(t),"node_action"))?w(r):("default"===r||"boolean"==typeof e.prefixIcon&&e.prefixIcon)&&(S(t)||t.async||!e.autoCheckChildren)?m(t)?(0,o.createVNode)(_.DownShape,null,null):(0,o.createVNode)(_.RightShape,null,null):null},V=function(t){if(n.slots.nodeType)return n.slots.nodeType(P(t));var i=null;return"function"==typeof e.prefixIcon&&"default"!==(i=e.prefixIcon(P(t),"node_type"))?w(i):"default"===i||"boolean"==typeof e.prefixIcon&&e.prefixIcon?g(t)||S(t)?function(e){return m(e)?(0,o.createVNode)(_.FolderShapeOpen,{class:(0,r.resolveClassName)("tree-icon")},null):(0,o.createVNode)(_.Folder,{class:(0,r.resolveClassName)("tree-icon")},null)}(t):(0,o.createVNode)(_.TextFile,{class:(0,r.resolveClassName)("tree-icon")},null):null},q=function(e){var r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null,o=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null,i=!(arguments.length>3&&void 0!==arguments[3])||arguments[3],l=null===r?!m(e):!!r;if(p(e,s.IS_OPENED,l),i){var c=m(e)?t.NODE_EXPAND:t.NODE_COLLAPSE;n.emit(c,e,A(e),y(e[s.UUID]),o)}l||a.value.filter((function(n){return String.prototype.startsWith.call(v(n),v(e))})).forEach((function(e){return p(e,s.IS_OPENED,l)}))},K=function(e,n,t){Array.isArray(e)?e.forEach((function(e){return p(R(e),n,t)})):p(R(e),n,t)},G=function e(n){var t=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],r=arguments.length>2&&void 0!==arguments[2]&&arguments[2],o=R(n);if(!o[s.IS_NULL])if(r)if(t){if(K(o,s.IS_OPENED,t),!g(o)){e(h(o,s.PARENT_ID),!0,!0)}}else q(o,!1,null,!1);else K(o,s.IS_OPENED,t)},Y=function(e,n){var t=T(e);x(e).finally((function(){h(e,s.IS_LOADING)?O("setNodeOpenedAfterLoading",{type:"once",fn:function(){return q(e,!t,n)}}):q(e,!t,n)}))},X=function n(t){var r=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],i=!(arguments.length>2&&void 0!==arguments[2])||arguments[2],a=Array.isArray(t)?t:[t];if(a.length){var l=R(a[0]);l[s.IS_NULL]||(e.selectable?(null!=d&&p(u({},s.UUID,d),s.IS_SELECTED,!r),p(l,s.IS_SELECTED,r),d=I(l),i&&1===a.length&&G(l,!0,!0),h(l,s.IS_ASYNC)&&x(l).then((function(){(0,o.nextTick)((function(){a.shift(),n(a,r,i)}))}))):console.warn("props.selectable is false or undefined, please set selectable with true"))}},z=function(n){if(!e.levelLine)return null;var t=h(n,s.DEPTH)+1;return new Array(t).fill("").map((function(e,n){return n})).filter((function(e){return function(e,n){if(g(n))return!1;var t=v(n),r="".concat(t).split("-").slice(0,e+1);if(r.join("-")===t)return!0;var o=r.pop(),i=parseInt(o,10);r.push("".concat(i+1));var a=r.join("-");return l.value.some((function(e){return e[s.PATH]===a}))}(e,n)})).filter((function(e){return e>0})).map((function(e){return(0,o.createVNode)("span",{class:"node-virtual-line",style:(n=t-e,{"--depth":n})},null);var n}))};return{renderTreeNode:function(a){var l,c,u,d,f;return(0,o.createVNode)("div",{"data-tree-node":I(a),class:L(a,i.schema)},[(0,o.createVNode)("div",{class:C(a,i.schema,e),style:b(a,e,i),onClick:function(e){return function(e,r){X(e,!0,!1),T(e)||Y(e,r),n.emit(t.NODE_CLICK,e,A(e),y(e[s.UUID]),r)}(a,e)}},[(0,o.createVNode)("span",{class:(0,r.resolveClassName)("node-action"),onClick:function(e){return function(e,n){e.stopImmediatePropagation(),e.stopPropagation(),e.preventDefault(),Y(n,e)}(e,a)}},[M(a)]),(0,o.createVNode)("span",{class:(0,r.resolveClassName)("node-content")},[[V(a)],(0,o.createVNode)("span",{class:(0,r.resolveClassName)("node-text")},[null!==(u=null===(c=(l=n.slots).node)||void 0===c?void 0:c.call(l,P(a)))&&void 0!==u?u:[D(a,e)]]),null===(f=(d=n.slots).nodeAppend)||void 0===f?void 0:f.call(d,P(a))]),z(a)])])},hanldeTreeNodeClick:Y,deepAutoOpen:k,asyncNodeClick:x,setNodeAction:K,setNodeOpened:q,setSelect:X,setOpen:G}}(e,n,l,G,c,{registerNextLoop:f}),X=Y.renderTreeNode,z=Y.hanldeTreeNodeClick,B=Y.setNodeOpened,F=Y.setOpen,J=Y.setNodeAction,W=Y.setSelect,$=Y.asyncNodeClick;d((function(e){W(e,!0,!0)})),n.expose({hanldeTreeNodeClick:z,isNodeChecked:E,isRootNode:m,isNodeOpened:T,isNodeMatched:A,hasChildNode:P,setOpen:F,setChecked:function(e){var n=!(arguments.length>1&&void 0!==arguments[1])||arguments[1];J(R(e),s.IS_CHECKED,n)},setNodeAction:J,setNodeOpened:B,setSelect:W,asyncNodeClick:$,getData:function(){return l}});var Q=(0,o.ref)(),Z=function(e,n){var t=n.slots;return{renderEmpty:function(n){var r,i;return(0,o.createVNode)(h(),{scene:"part",type:n},{default:function(){return[null!==(i=null===(r=t.default)||void 0===r?void 0:r.call(t))&&void 0!==i?i:e.emptyText]}})}}}(e,n),ee=Z.renderEmpty;return function(e,n,t){var r=H(t,e),i=r.getSourceNodeByUID,a=r.getNodeParentIdById,l=r.getParentNodeData,c=r.getNodeAttr,d=r.getNodePath,f=r.isRootNode,p=function(e){return e.target.closest("[data-tree-node]")},v=function e(n){p(n).removeEventListener("mouseup",e)},y=function(e){var n=p(e);n.setAttribute("draggable","true"),n.addEventListener("mouseup",v)},h=function(e){e.preventDefault();var n=p(e),t=e.dataTransfer.getData("node-id"),r=n.getAttribute("data-tree-node"),o=I(t,r)?"move":"none";e.dataTransfer.effectAllowed=o,e.dataTransfer.dropEffect=o},N=function(e){e.dataTransfer.effectAllowed="move",e.dataTransfer.dropEffect="move";var n=p(e);e.dataTransfer.setData("text/plain",""),e.dataTransfer.setData("node-id",n.getAttribute("data-tree-node"))},_=function(n){n.preventDefault(),n.stopPropagation();var t=p(n),r=n.dataTransfer.getData("node-id"),o=t.getAttribute("data-tree-node");Reflect.apply(e.dragSort?g:S,void 0,[r,o])},I=function(e,n){var t=d(u({},s.UUID,e)),r=d(u({},s.UUID,n));return a(e)===a(n)||-1===t.indexOf(r)&&-1===r.indexOf(t)},g=function(n,t){if(I(n,t)){var r=JSON.parse(JSON.stringify(i(n))),o=JSON.parse(JSON.stringify(i(t))),a=l(n),d=l(t),f=c(u({},s.UUID,n),s.INDEX),p=c(u({},s.UUID,t),s.INDEX);null==a||a[e.children].splice(f,1,o),null==d||d[e.children].splice(p,1,r)}},S=function(n,t){var r=i(n),o=i(t),l=null;if(f(u({},s.UUID,n)))l=e.data;else{var d=a(n);if(null!=d){l=i(d);var p=c(u({},s.UUID,n),s.INDEX);null==l||l[e.children].splice(p,1)}}o[e.children]||(o[e.children]=[]),o[e.children].unshift(r)};(0,o.onMounted)((function(){if(e.draggable&&n.value){var t=n.value.$el;t.addEventListener("mousedown",y),t.addEventListener("dragstart",N),t.addEventListener("dragover",h),t.addEventListener("drop",_)}})),(0,o.onUnmounted)((function(){if(e.draggable&&n.value){var t=n.value.$el;t.removeEventListener("mousedown",y),t.removeEventListener("dragstart",N),t.removeEventListener("dragover",h),t.removeEventListener("drop",_)}}))}(e,Q,l),function(){return(0,o.createVNode)(a(),{class:(0,r.resolveClassName)("tree"),style:O(null,e),list:G.value,lineHeight:e.lineHeight,enabled:e.virtualRender,contentClassName:(0,r.resolveClassName)("container"),throttleDelay:0,ref:Q},{default:function(e){return function(e){if(e.length)return e.map(X);var n=M.value?"search-empty":"empty";return ee(n)}(e.data||[])}})}}}),V=(0,r.withInstall)(M)})(),c})()));
@@ -31,5 +31,6 @@ declare const _default: (flatData: any, props?: TreePropTypes) => {
31
31
  parentId: any;
32
32
  };
33
33
  setTreeNodeLoading: (node: any, value: boolean) => void;
34
+ extendNodeAttr: (item: any) => any;
34
35
  };
35
36
  export default _default;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "bkui-vue",
3
- "version": "0.0.1-beta.76",
3
+ "version": "0.0.1-beta.77",
4
4
  "workspaces": {
5
5
  "packages": [
6
6
  "packages/!(**.bak)*",