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

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.
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 g=v/4294967296*1e4&268435455;s[u++]=g>>>8&255,s[u++]=255&g,s[u++]=g>>>24&15|16,s[u++]=g>>>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:()=>k});var e,n,t=l(4212),r=l(748),o=l(3511),i=l.n(o);function a(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"}(n||(n={}));var u,s=function(){},d=(a(e={},n.NODE_CLICK,s),a(e,n.NODE_COLLAPSE,s),a(e,n.NODE_EXPAND,s),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"}(u||(u={}));var f={data:t.PropTypes.arrayOf(t.PropTypes.any).def([]),label:t.PropTypes.oneOfType([t.PropTypes.func.def(void 0),t.PropTypes.string.def("label")]),nodeKey:t.PropTypes.string.def(void 0),children:t.PropTypes.string.def("children"),indent:t.PropTypes.number.def(18),lineHeight:t.PropTypes.number.def(32),levelLine:t.PropTypes.oneOfType([t.PropTypes.bool.def(!1),t.PropTypes.func.def(void 0),t.PropTypes.string.def("1px dashed #c3cdd7")]).def(!1),virtualRender:t.PropTypes.bool.def(!1),prefixIcon:t.PropTypes.oneOfType([t.PropTypes.func.def((function(){})),t.PropTypes.bool.def(!1)]).def(!0),async:t.PropTypes.shape({callback:t.PropTypes.func.def(void 0),cache:t.PropTypes.bool.def(!0),deepAutoOpen:t.PropTypes.commonType(["once","every"],"columnType").def("once")}),offsetLeft:t.PropTypes.number.def(5),search:t.PropTypes.oneOfType([t.PropTypes.shape({value:t.PropTypes.oneOfType([t.PropTypes.number,t.PropTypes.string,t.PropTypes.bool]).def(""),match:t.PropTypes.oneOfType([t.PropTypes.commonType(["fuzzy","full"],"TreeSearchMatchType"),t.PropTypes.func]),resultType:t.PropTypes.commonType(["tree","list"],"TreeSearchResultType").def("tree"),openResultNode:t.PropTypes.bool}),t.PropTypes.string,t.PropTypes.number,t.PropTypes.bool]).def(void 0),emptyText:t.PropTypes.string.def("没有数据"),draggable:t.PropTypes.bool.def(!1),dragSort:t.PropTypes.bool.def(!1),selectable:t.PropTypes.bool.def(!0),selected:t.PropTypes.oneOfType([t.PropTypes.string,t.PropTypes.number,t.PropTypes.object]).def(null)},p=l(9911),v=l.n(p);function y(e){return y="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},y(e)}var h=l(6870);const N=function(e,n){var t=function(n){return e.schema.get(n)},r=function(e,n){var r;return null===(r=t(e[u.UUID]))||void 0===r?void 0:r[n]},o=function(e){return r(e,u.PATH)},i=function(e){return r(e,u.IS_ROOT)},l=function(e){return r(e,u.IS_OPENED)},c=function(e){return r(a({},u.UUID,e),u.PARENT_ID)},s=function(e){var n;return"object"===y(e)?l(e):"string"==typeof e&&(null===(n=t(e))||void 0===n?void 0:n[u.IS_OPENED])},d=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)},f=function(e){return d(o(a({},u.UUID,e)))};return{getSchemaVal:t,getNodeAttr:r,getNodeId:function(e){return r(e,u.UUID)},getNodeParentId:function(e){return r(e,u.PARENT_ID)},getNodeParentIdById:c,getParentNodeData:function(e){return i(a({},u.UUID,e))?a({},n.children,n.data):f(c(e))},setNodeAttr:function(n,r,o){return e.schema.set(n[u.UUID],Object.assign(Object.assign({},t(n[u.UUID])),a({},r,o)))},getNodePath:o,isRootNode:i,isNodeOpened:l,hasChildNode:function(e){return r(e,u.HAS_CHILD)},isItemOpen:s,isNodeChecked:function(e){return r(e,u.IS_CHECKED)},isNodeMatched:function(e){return r(e,u.IS_MATCH)},checkNodeIsOpen:function(e){return i(e)||s(e)||s(r(e,u.PARENT_ID))},getSourceNodeByPath:d,getSourceNodeByUID:f,deleteNodeSchema:function(n){return e.schema.delete(n)}}};function g(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 _(e){return function(e){if(Array.isArray(e))return g(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 g(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)?g(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 m=void 0,I="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:S(t,e,n,i)},S=function(e,n,t){var r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:[],o=n[t];if("string"==typeof o)return"object"===y(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(m,[e].concat(_(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 S(e,n,"label")},b=function(e,n){return e.get(n)||{}},D=function(e,n,t){var r;return null===(r=b(e,n))||void 0===r?void 0:r[t]},P=function(e,n){return{"--level-line":T(n,"levelLine",e,I,null,["tree"]),"--lineHeight":"".concat(n.lineHeight,"px"),"--indent":"".concat(n.indent,"px"),"--offset-left":"".concat(n.offsetLeft,"px")}},A=function(e,n){var t=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},r=t.schema,o=D(r,e[u.UUID],u.DEPTH);return Object.assign({"--depth":o},"function"==typeof n.levelLine?{"--level-line":T(n,"levelLine",e,I,null,["node"])}:{})},O=function(e,n,t){var r=b(n,e[u.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}},C=function(e,n){var r=b(n,e[u.UUID])||{};return a({"is-checked":r.__is_checked,"is-selected":r.__is_selected},(0,t.resolveClassName)("node-row"),!0)},U=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||{})},x=function(e){return null==e?{__IS_NULL:!0}:"string"==typeof e||"number"==typeof e||"symbol"===y(e)?a({},u.UUID,e):(Object.prototype.hasOwnProperty.call(e,u.UUID)||console.error("setNodeAction Error: node id cannot found"),e)};const L=function(e,n){var t=N(n),r=t.setNodeAttr,o=t.getNodePath,i=t.getNodeAttr,l=function(n,t){if("object"===y(n)&&null!==n){r(t,u.IS_OPENED,!0);var i=Array.isArray(n)?n:[n];return function(e,n,t,r,o){U(e,n,t,a({},r,o))}(o(t),e.data,e.children,e.children,i),Promise.resolve(n)}return Promise.reject(n)},c=function(n){if(i(n,u.IS_ASYNC)){var t=e.async||{},a=t.callback,c=void 0===a?null:a,s=t.cache,d=void 0===s||s;return r(n,u.IS_ASYNC_INIT,!0),"function"==typeof c?i(n,u.IS_CACHED)?Promise.resolve(!0):(r(n,u.IS_CACHED,d),Object.assign(n,{loading:!0}),Promise.resolve(c(n,(function(e){return l(e,n)})).then((function(e){return l(e,n)})).catch((function(e){return console.error("load remote data error:",e)})).finally((function(){U(o(n),e.data,e.children,Object.assign({loading:!1},d?{cached:!0}:{}))})))):Promise.reject("async need to set prop: asyncLoad with function wich will return promise object")}return Promise.resolve(!0)};return{asyncNodeClick:c,deepAutoOpen:function e(){var t=n.data.filter((function(e){return e.async&&e.isOpen&&!i(e,u.IS_ASYNC_INIT)}));t.length&&Promise.all(t.map((function(e){return c(e)}))).then((function(){e()})).catch((function(e){console.warn(e)}))}}};var R=l(8022),j=void 0;const w=(0,r.defineComponent)({name:"Tree",props:f,emits:d,setup:function(e,o){var l=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=[],l=0,c=new Map;function s(e,n,t,r){if(null!=e&&c.has(e)&&![u.UUID,u.PARENT_ID].includes(n)){var o=c.get(e);Object.prototype.hasOwnProperty.call(o,n)&&"function"==typeof r&&Reflect.apply(r,self,[o,n,t])&&(Object.assign(o,a({},n,t)),s(o[u.PARENT_ID],n,t,r))}}function d(n){var t=null;return"string"==typeof e.nodeKey&&(t=n[e.nodeKey]||(0,R.v4)()),t||n[u.UUID]||(0,R.v4)()}function f(e,n,r,o){var i=arguments.length>4&&void 0!==arguments[4]?arguments[4]:void 0,a=(t||[]).find((function(n){return n[u.UUID]===e})),l=void 0;return void 0===(l=a?a[o]:null===r?void 0:n[r])&&(l=i),l}function p(e,n){return f(e,n,"isOpen",u.IS_OPENED,!1)}function v(e,n){return f(e,n,"checked",u.IS_CHECKED,!1)}function h(e,n){return f(e,n,"isMatch",u.IS_MATCH,!0)}function N(e,n){return f(e,n,null,u.IS_SELECTED,!1)}function g(e,n){return f(e,n,"cached",u.IS_CACHED,!1)}function _(e,n){return f(e,n,"async",u.IS_ASYNC,!1)}function m(e){return!e[u.IS_OPENED]}function I(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,T=n.length,S=0;S<T;S++){var E=n[S];if(Array.isArray(E))I(E,t,r,f);else if("object"===y(E)&&null!==E){var b,D="".concat(d(E)),P=null!==f?"".concat(f,"-").concat(S):"".concat(S),A=!!(E[o]||[]).length,O=(a(b={},u.DEPTH,t),a(b,u.INDEX,S),a(b,u.UUID,D),a(b,u.PARENT_ID,r),a(b,u.HAS_CHILD,A),a(b,u.PATH,P),a(b,u.IS_ROOT,null===r),a(b,u.ORDER,l),a(b,u.IS_SELECTED,!!e.selectable&&N(D,E)),a(b,u.IS_MATCH,h(D,E)),a(b,u.IS_OPENED,p(D,E)),a(b,u.IS_CHECKED,v(D,E)),a(b,u.IS_CACHED,g(D,E)),a(b,u.IS_ASYNC,_(D,E)),a(b,o,null),b);Object.assign(E,a({},u.UUID,D)),c.set(D,O),l+=1,i.push(Object.assign(Object.assign({},E),a({},o,null))),(O[u.IS_OPENED]||O[u.IS_SELECTED])&&s(r,u.IS_OPENED,!0,m),Object.prototype.hasOwnProperty.call(E,o)&&I(E[o]||[],t+1,D,P)}}}return I(n||r),[i,c]},o=t(e),i=new Map,l=[],c=[],s=(0,r.reactive)({data:o[0],schema:o[1],levelLineSchema:{}}),d=(0,r.computed)((function(){return Array.from(s.schema.values())})),f=L(e,s),p=f.asyncNodeClick,v=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)};return(0,r.watch)((function(){return[e.data]}),(function(n){var r,o,a=t(e,n,d.value);s.data=a[0],s.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)&&v(),Array.from(i.keys()).forEach((function(e){var n=i.get(e);Array.isArray(n)?n.forEach((function(e){return Reflect.apply(e,j,[])})):Reflect.apply(n,j,[])}))}),{deep:!0}),e.selectable&&(0,r.watch)((function(){return e.selected}),(function(e){c.length=0,l.forEach((function(n){Reflect.apply(n,j,[e]),c.push((function(){return Reflect.apply(n,j,[e])}))})),h("afterSelectWatch",c)}),{immediate:!0}),(null===(n=e.async)||void 0===n?void 0:n.callback)&&v(),{flatData:s,schemaValues:d,asyncNodeClick:p,deepAutoOpen:v,afterDataUpdate:function(e){h("afterDataUpdate",e)},onSelected:function(e){l.push(e)}}}(e),c=l.flatData,s=l.schemaValues,d=l.onSelected,f=N(c),p=f.setNodeAttr,g=f.checkNodeIsOpen,_=f.getNodeAttr,m=f.getNodePath,I=f.isRootNode,T=f.isNodeOpened,S=f.isNodeChecked,b=f.isNodeMatched,D=f.hasChildNode,U=function(e){var n,t=(0,r.toRef)(e,"search"),o=null!==(n=e.search)&&void 0!==n?n:{},i=o.openResultNode,a=void 0!==i&&i,l=o.resultType,c=void 0===l?"tree":l,u=function(e){return["string","number","boolean"].includes(y(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,r.computed)((function(){return!1!==t.value&&(u(t.value)?"".concat(t.value).length>0:"object"===y(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),w=U.searchFn,k=U.isSearchActive,H=U.refSearch,M=U.openResultNode,V=U.isTreeUI;U.isSearchDisabled||(0,r.watch)([H],(function(){c.data.forEach((function(n){var t=w(E(n,e),n);p(n,u.IS_MATCH,t),M&&B(n,!0,!0)}))}));var q=(0,r.computed)((function(){return c.data.filter((function(e){return g(e)&&function(e){return!k.value||(_(e,u.IS_MATCH)||!!V&&s.value.some((function(n){return n[u.PATH].startsWith(m(e))&&n[u.IS_MATCH]})))}(e)}))})),K=function(e,o,i,l,c){var s=null,d=N(i),f=d.setNodeAttr,p=d.getNodePath,v=d.getSchemaVal,g=d.getNodeAttr,_=d.getNodeId,m=d.isRootNode,I=d.hasChildNode,T=d.isItemOpen,S=d.isNodeOpened,b=d.isNodeChecked,D=d.isNodeMatched,P=L(e,i),U=P.asyncNodeClick,R=P.deepAutoOpen,j=function(e){if("string"==typeof e)return e;if("object"===y(e)&&null!==e){if(e.__v_isVNode)return e;var n=e.node,t=e.className,o=e.text,i=e.style;return(0,r.h)(n,{class:t,style:i},o)}return null},w=function(n){if(o.slots.nodeAction)return o.slots.nodeAction(z(n));var t=null;return"function"==typeof e.prefixIcon&&"default"!==(t=e.prefixIcon(z(n),"node_action"))?j(t):("default"===t||"boolean"==typeof e.prefixIcon&&e.prefixIcon)&&(I(n)||n.async)?T(n)?(0,r.createVNode)(h.DownShape,null,null):(0,r.createVNode)(h.RightShape,null,null):null},k=function(n){if(o.slots.nodeType)return o.slots.nodeType(z(n));var i=null;return"function"==typeof e.prefixIcon&&"default"!==(i=e.prefixIcon(z(n),"node_type"))?j(i):"default"===i||"boolean"==typeof e.prefixIcon&&e.prefixIcon?m(n)||I(n)?function(e){return T(e)?(0,r.createVNode)(h.FolderShapeOpen,{class:(0,t.resolveClassName)("tree-icon")},null):(0,r.createVNode)(h.Folder,{class:(0,t.resolveClassName)("tree-icon")},null)}(n):(0,r.createVNode)(h.TextFile,{class:(0,t.resolveClassName)("tree-icon")},null):null},H=function(e){var n,t,i;return(null!==(i=null===(t=(n=o.slots).nodeLoading)||void 0===t?void 0:t.call(n,z(e)))&&void 0!==i?i:e.loading)?(0,r.createVNode)(h.Spinner,null,null):""},M=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null,r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null,i=!(arguments.length>3&&void 0!==arguments[3])||arguments[3],a=null===t?!T(e):!!t;if(f(e,u.IS_OPENED,a),i){var c=T(e)?n.NODE_EXPAND:n.NODE_COLLAPSE;o.emit(c,z(e),v(e[u.UUID]),r)}a||l.value.filter((function(n){return String.prototype.startsWith.call(p(n),p(e))})).forEach((function(e){return f(e,u.IS_OPENED,a)}))},V=function(e,n,t){Array.isArray(e)?e.forEach((function(e){return f(x(e),n,t)})):f(x(e),n,t)},q=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=x(n);if(!o[u.IS_NULL])if(r)if(t){if(V(o,u.IS_OPENED,t),!m(o)){e(g(o,u.PARENT_ID),!0,!0)}}else M(o,!1,null,!1);else V(o,u.IS_OPENED,t)},K=function(e,n){U(e),M(e,null,n)},X=function n(t){var o=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],i=!(arguments.length>2&&void 0!==arguments[2])||arguments[2],l=Array.isArray(t)?t:[t];if(l.length){var c=x(l[0]);c[u.IS_NULL]||(e.selectable?(null!=s&&f(a({},u.UUID,s),u.IS_SELECTED,!o),f(c,u.IS_SELECTED,o),s=_(c),i&&1===l.length&&q(c,!0,!0),g(c,u.IS_ASYNC)&&U(c).then((function(){(0,r.nextTick)((function(){l.shift(),n(l,o,i)}))}))):console.warn("props.selectable is false or undefined, please set selectable with true"))}},Y=function(n){if(!e.levelLine)return null;var t=g(n,u.DEPTH)+1;return new Array(t).fill("").map((function(e,n){return n})).filter((function(e){return function(e,n){if(m(n))return!1;var t=p(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 c.value.some((function(e){return e[u.PATH]===a}))}(e,n)})).filter((function(e){return e>0})).map((function(e){return(0,r.createVNode)("span",{class:"node-virtual-line",style:(n=t-e,{"--depth":n})},null);var n}))},z=function(e){return Object.assign(Object.assign({},e),{hasChildNode:I(e),isMatched:D(e),isChecked:b(e),isOpened:S(e),isRoot:m(e)})};return{renderTreeNode:function(a){var l,c,s,d,f;return(0,r.createVNode)("div",{"data-tree-node":_(a),class:C(a,i.schema)},[(0,r.createVNode)("div",{class:O(a,i.schema,e),style:A(a,e,i),onClick:function(e){return function(e,t){X(e,!0,!1),S(e)||K(e,t),o.emit(n.NODE_CLICK,z(e),v(e[u.UUID]),t)}(a,e)}},[(0,r.createVNode)("span",{class:(0,t.resolveClassName)("node-action"),onClick:function(e){return function(e,n){e.stopImmediatePropagation(),e.stopPropagation(),e.preventDefault(),K(n,e)}(e,a)}},[w(a)]),(0,r.createVNode)("span",{class:(0,t.resolveClassName)("node-content")},[[k(a),H(a)],(0,r.createVNode)("span",{class:(0,t.resolveClassName)("node-text")},[null!==(s=null===(c=(l=o.slots).node)||void 0===c?void 0:c.call(l,z(a)))&&void 0!==s?s:[E(a,e)]]),null===(f=(d=o.slots).nodeAppend)||void 0===f?void 0:f.call(d,z(a))]),Y(a)])])},hanldeTreeNodeClick:K,deepAutoOpen:R,asyncNodeClick:U,setNodeAction:V,setNodeOpened:M,setSelect:X,setOpen:q}}(e,o,c,q,s),X=K.renderTreeNode,Y=K.hanldeTreeNodeClick,z=K.setNodeOpened,B=K.setOpen,F=K.setNodeAction,J=K.setSelect,W=K.asyncNodeClick;d((function(e){J(e,!0,!0)})),o.expose({hanldeTreeNodeClick:Y,isNodeChecked:S,isRootNode:I,isNodeOpened:T,isNodeMatched:b,hasChildNode:D,setOpen:B,setChecked:function(e){var n=!(arguments.length>1&&void 0!==arguments[1])||arguments[1];F(x(e),u.IS_CHECKED,n)},setNodeAction:F,setNodeOpened:z,setSelect:J,asyncNodeClick:W,getData:function(){return c}});var $=(0,r.ref)(),G=function(e,n){var t=n.slots;return{renderEmpty:function(n){var o,i;return(0,r.createVNode)(v(),{scene:"part",type:n},{default:function(){return[null!==(i=null===(o=t.default)||void 0===o?void 0:o.call(t))&&void 0!==i?i:e.emptyText]}})}}}(e,o),Q=G.renderEmpty;return function(e,n,t){var o=N(t,e),i=o.getSourceNodeByUID,l=o.getNodeParentIdById,c=o.getParentNodeData,s=o.getNodeAttr,d=o.getNodePath,f=o.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=m(t,r)?"move":"none";e.dataTransfer.effectAllowed=o,e.dataTransfer.dropEffect=o},g=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?I:T,void 0,[r,o])},m=function(e,n){var t=d(a({},u.UUID,e)),r=d(a({},u.UUID,n));return l(e)===l(n)||-1===t.indexOf(r)&&-1===r.indexOf(t)},I=function(n,t){if(m(n,t)){var r=JSON.parse(JSON.stringify(i(n))),o=JSON.parse(JSON.stringify(i(t))),l=c(n),d=c(t),f=s(a({},u.UUID,n),u.INDEX),p=s(a({},u.UUID,t),u.INDEX);null==l||l[e.children].splice(f,1,o),null==d||d[e.children].splice(p,1,r)}},T=function(n,t){var r=i(n),o=i(t),c=null;if(f(a({},u.UUID,n)))c=e.data;else{var d=l(n);if(null!=d){c=i(d);var p=s(a({},u.UUID,n),u.INDEX);null==c||c[e.children].splice(p,1)}}o[e.children]||(o[e.children]=[]),o[e.children].unshift(r)};(0,r.onMounted)((function(){if(e.draggable&&n.value){var t=n.value.$el;t.addEventListener("mousedown",y),t.addEventListener("dragstart",g),t.addEventListener("dragover",h),t.addEventListener("drop",_)}})),(0,r.onUnmounted)((function(){if(e.draggable&&n.value){var t=n.value.$el;t.removeEventListener("mousedown",y),t.removeEventListener("dragstart",g),t.removeEventListener("dragover",h),t.removeEventListener("drop",_)}}))}(e,$,c),function(){return(0,r.createVNode)(i(),{class:(0,t.resolveClassName)("tree"),style:P(null,e),list:q.value,lineHeight:e.lineHeight,enabled:e.virtualRender,contentClassName:(0,t.resolveClassName)("container"),throttleDelay:0,ref:$},{default:function(e){return function(e){if(e.length)return e.map(X);var n=k.value?"search-empty":"empty";return Q(n)}(e.data||[])}})}}}),k=(0,t.withInstall)(w)})(),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 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})()));
@@ -133,6 +133,25 @@ export declare const treeProps: {
133
133
  [key: string]: any;
134
134
  });
135
135
  };
136
+ /**
137
+ * 是否自动检查当前节点是否有子节点
138
+ * 节点前面的展开收起Icon会根据判定值做改变
139
+ * 如果需要自已控制,请设置为false
140
+ */
141
+ autoCheckChildren: import("vue-types").VueTypeValidableDef<boolean> & {
142
+ default: boolean;
143
+ } & {
144
+ default: boolean;
145
+ };
146
+ /**
147
+ * 同步当前Tree的属性(isOpen 、selected...)到原数组
148
+ * 默认Tree操作不会修改原数组属性
149
+ */
150
+ syncAction: import("vue-types").VueTypeValidableDef<boolean> & {
151
+ default: boolean;
152
+ } & {
153
+ default: boolean;
154
+ };
136
155
  };
137
156
  declare type AsyncOption = {
138
157
  callback: (item: any, cb: any) => Promise<any>;
@@ -76,6 +76,16 @@ declare const _default: import("vue").DefineComponent<{
76
76
  [key: string]: any;
77
77
  });
78
78
  };
79
+ autoCheckChildren: import("vue-types").VueTypeValidableDef<boolean> & {
80
+ default: boolean;
81
+ } & {
82
+ default: boolean;
83
+ };
84
+ syncAction: import("vue-types").VueTypeValidableDef<boolean> & {
85
+ default: boolean;
86
+ } & {
87
+ default: boolean;
88
+ };
79
89
  }, () => JSX.Element, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
80
90
  nodeClick: () => void;
81
91
  nodeCollapse: () => void;
@@ -156,6 +166,16 @@ declare const _default: import("vue").DefineComponent<{
156
166
  [key: string]: any;
157
167
  });
158
168
  };
169
+ autoCheckChildren: import("vue-types").VueTypeValidableDef<boolean> & {
170
+ default: boolean;
171
+ } & {
172
+ default: boolean;
173
+ };
174
+ syncAction: import("vue-types").VueTypeValidableDef<boolean> & {
175
+ default: boolean;
176
+ } & {
177
+ default: boolean;
178
+ };
159
179
  }>> & {
160
180
  onNodeClick?: () => any;
161
181
  onNodeCollapse?: () => any;
@@ -178,5 +198,7 @@ declare const _default: import("vue").DefineComponent<{
178
198
  offsetLeft: number;
179
199
  dragSort: boolean;
180
200
  selectable: boolean;
201
+ autoCheckChildren: boolean;
202
+ syncAction: boolean;
181
203
  }>;
182
204
  export default _default;
@@ -1,4 +1,4 @@
1
- declare const _default: (props: any, ctx: any, flatData: any, renderData: any, schemaValues: any) => {
1
+ declare const _default: (props: any, ctx: any, flatData: any, renderData: any, schemaValues: any, initOption: any) => {
2
2
  renderTreeNode: (item: any) => JSX.Element;
3
3
  hanldeTreeNodeClick: (item: any, e: MouseEvent) => void;
4
4
  deepAutoOpen: () => void;
@@ -6,7 +6,7 @@ declare const _default: (flatData: any, props?: TreePropTypes) => {
6
6
  getNodeParentId: (node: any) => any;
7
7
  getNodeParentIdById: (id: string) => any;
8
8
  getParentNodeData: (uid: string) => any;
9
- setNodeAttr: (node: any, attr: string, val: any) => Map<string, any>;
9
+ setNodeAttr: (node: any, attr: string, val: any) => void;
10
10
  getNodePath: (node: any) => any;
11
11
  isRootNode: (node: any) => any;
12
12
  isNodeOpened: (node: any) => any;
@@ -14,9 +14,22 @@ declare const _default: (flatData: any, props?: TreePropTypes) => {
14
14
  isItemOpen: (item: any) => any;
15
15
  isNodeChecked: (node: any) => any;
16
16
  isNodeMatched: (node: any) => any;
17
+ isNodeLoading: (node: any) => any;
17
18
  checkNodeIsOpen: (node: any) => any;
18
19
  getSourceNodeByPath: (path: string) => any;
19
20
  getSourceNodeByUID: (uid: string) => any;
20
21
  deleteNodeSchema: (id: string) => boolean;
22
+ resolveScopedSlotParam: (item: any) => {
23
+ loading: any;
24
+ hasChildNode: any;
25
+ isMatched: any;
26
+ isChecked: any;
27
+ isOpened: any;
28
+ isRoot: any;
29
+ fullPath: any;
30
+ uuid: any;
31
+ parentId: any;
32
+ };
33
+ setTreeNodeLoading: (node: any, value: boolean) => void;
21
34
  };
22
35
  export default _default;
@@ -9,6 +9,7 @@ declare const _default: (props: TreePropTypes) => {
9
9
  asyncNodeClick: (item: any) => Promise<any>;
10
10
  deepAutoOpen: () => void;
11
11
  afterDataUpdate: (callFn: (d: any) => any) => void;
12
+ registerNextLoop: (key: string, event: any, reset?: boolean) => void;
12
13
  onSelected: (event: (d: any) => void) => void;
13
14
  };
14
15
  export default _default;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "bkui-vue",
3
- "version": "0.0.1-beta.73",
3
+ "version": "0.0.1-beta.76",
4
4
  "workspaces": {
5
5
  "packages": [
6
6
  "packages/!(**.bak)*",