@nocobase/plugin-block-tree 2.1.0-alpha.14 → 2.1.0-alpha.15

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.
@@ -21,5 +21,6 @@ export interface TreeProps<T extends BasicDataNode = DataNode> extends AntdTreeP
21
21
  onSearch?: (value: string) => void;
22
22
  loading?: boolean;
23
23
  FilterComponent?: React.ComponentType<FilterComponentProps>;
24
+ renderNodeTitle?: (value: any, node: T) => React.ReactNode;
24
25
  }
25
26
  export declare const Tree: FC<TreeProps>;
@@ -7,4 +7,4 @@
7
7
  * For more information, please refer to: https://www.nocobase.com/agreement.
8
8
  */
9
9
 
10
- !function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t(require("react-i18next"),require("ahooks"),require("react"),require("antd"),require("@nocobase/client"),require("@formily/react"),require("@ant-design/icons"),require("@nocobase/utils/client"),require("lodash")):"function"==typeof define&&define.amd?define("@nocobase/plugin-block-tree",["react-i18next","ahooks","react","antd","@nocobase/client","@formily/react","@ant-design/icons","@nocobase/utils/client","lodash"],t):"object"==typeof exports?exports["@nocobase/plugin-block-tree"]=t(require("react-i18next"),require("ahooks"),require("react"),require("antd"),require("@nocobase/client"),require("@formily/react"),require("@ant-design/icons"),require("@nocobase/utils/client"),require("lodash")):e["@nocobase/plugin-block-tree"]=t(e["react-i18next"],e.ahooks,e.react,e.antd,e["@nocobase/client"],e["@formily/react"],e["@ant-design/icons"],e["@nocobase/utils/client"],e.lodash)}(self,function(e,t,n,r,o,a,i,l,c){return function(){"use strict";var u={375:function(e){e.exports=i},230:function(e){e.exports=a},342:function(e){e.exports=o},768:function(e){e.exports=l},625:function(e){e.exports=t},59:function(e){e.exports=r},773:function(e){e.exports=c},155:function(e){e.exports=n},953:function(t){t.exports=e}},s={};function p(e){var t=s[e];if(void 0!==t)return t.exports;var n=s[e]={exports:{}};return u[e](n,n.exports,p),n.exports}p.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return p.d(t,{a:t}),t},p.d=function(e,t){for(var n in t)p.o(t,n)&&!p.o(e,n)&&Object.defineProperty(e,n,{enumerable:!0,get:t[n]})},p.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||Function("return this")()}catch(e){if("object"==typeof window)return window}}(),p.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},p.r=function(e){"u">typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},p.g.importScripts&&(f=p.g.location+"");var f,d=p.g.document;if(!f&&d&&(d.currentScript&&"SCRIPT"===d.currentScript.tagName.toUpperCase()&&(f=d.currentScript.src),!f)){var m=d.getElementsByTagName("script");if(m.length)for(var b=m.length-1;b>-1&&(!f||!/^http(s?):/.test(f));)f=m[b--].src}if(!f)throw Error("Automatic publicPath is not supported in this browser");p.p=f.replace(/^blob:/,"").replace(/#.*$/,"").replace(/\?.*$/,"").replace(/\/[^\/]+$/,"/");var y={};return!function(){var e="",t="u">typeof document?document.currentScript:null;if(t&&t.src&&(e=t.src.replace(/^blob:/,"").replace(/#.*$/,"").replace(/\?.*$/,"").replace(/\/[^\/]+$/,"/")),!e){var n=window.__webpack_public_path__||"";n&&("/"!==n.charAt(n.length-1)&&(n+="/"),e=n+"static/plugins/@nocobase/plugin-block-tree/dist/client/")}if(!e){if(!(e=window.__nocobase_public_path__||"")&&window.location&&window.location.pathname){var r=window.location.pathname||"/",o=r.indexOf("/v2/");e=o>=0?r.slice(0,o+1):"/"}e&&(e=e.replace(/\/v2\/?$/,"/")),e||(e="/"),"/"!==e.charAt(e.length-1)&&(e+="/"),e+="static/plugins/@nocobase/plugin-block-tree/dist/client/"}p.p=e}(),!function(){p.r(y),p.d(y,{PluginBlockTreeClient:function(){return U},Tree:function(){return B},default:function(){return z}});var e=p(342),t=p(155),n=p.n(t),r=p(768),o="Tree",a="tree",i=p(230),l=p(953),c=JSON.parse('{"UU":"@nocobase/plugin-block-tree"}');function u(){return(0,l.useTranslation)([c.UU,"client"],{nsMode:"fallback"})}function s(e){return"{{t('".concat(e,"', { ns: '").concat(c.UU,"', nsMode: 'fallback' })}}")}var f=(0,e.createSwitchSettingsItem)({title:s("Expand all"),name:"expandAll",schemaKey:"x-decorator-props.tree.defaultExpandAll",defaultValue:!1}),d=(0,e.createSelectSchemaSettingsItem)({name:"recordsCount",title:s("Root records per page"),options:[{label:"10",value:10},{label:"20",value:20},{label:"50",value:50},{label:"100",value:100},{label:"200",value:200},{label:"500",value:500}],schemaKey:"x-decorator-props.params.pageSize",defaultValue:200}),m=(0,e.createSwitchSettingsItem)({name:"searchable",title:s("Searchable"),schemaKey:"x-decorator-props.tree.searchable",defaultValue:!0}),b=(0,e.createSelectSchemaSettingsItem)({name:"titleField",title:"{{t('".concat("Title field","')}}"),useOptions:function(){var t=(0,e.useCollection)(),n=(0,e.useCompile)();return t.getFields(function(e){return t.isTitleField(e)}).map(function(e){var t;return{label:(null==(t=e.uiSchema)?void 0:t.title)?n(e.uiSchema.title):e.name,value:e.name}})},schemaKey:"x-decorator-props.tree.fieldNames.title",useDefaultValue:S}),v=new e.SchemaSettings({name:"blockSettings:".concat(a),items:[{name:"editBlockTitle",Component:e.SchemaSettingsBlockTitleItem},{name:"setTheBlockHeight",Component:e.SchemaSettingsBlockHeightItem},{name:"blockLinkageRules",Component:e.SchemaSettingsLinkageRules,useComponentProps:function(){return{title:(0,(0,l.useTranslation)().t)("Block Linkage rules",{ns:"client"}),category:e.LinkageRuleCategory.block}}},e.setDefaultSortingRulesSchemaSettingsItem,e.setTheDataScopeSchemaSettingsItem,m,f,b,d,{name:"ConnectDataBlocks",Component:e.SchemaSettingsConnectDataBlocks,useComponentProps:function(){var t=(0,l.useTranslation)().t;return{type:e.FilterBlockType.TREE,emptyDescription:t("No blocks to connect")}}},{type:"divider",name:"divider-1"},{name:"ConvertReferenceToDuplicate",Component:e.SchemaSettingsTemplate,useComponentProps:function(){var t,n,r=(0,e.useCollection)(),o=(0,i.useFieldSchema)(),a=(0,e.useBlockTemplateContext)().componentNamePrefix,l=(null==o||null==(t=o["x-decorator-props"])?void 0:t.resource)||(null==o||null==(n=o["x-decorator-props"])?void 0:n.association);return{componentName:"".concat(a,"Tree"),useTranslationHooks:u,collectionName:r.name,resourceName:l}}},{type:"divider",name:"divider-2"},{name:"remove",type:"remove",componentProps:{removeParentsIfNoChildren:!0,breakRemoveOn:{"x-component":"Grid"}}}]});function h(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function g(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{},r=Object.keys(n);"function"==typeof Object.getOwnPropertySymbols&&(r=r.concat(Object.getOwnPropertySymbols(n).filter(function(e){return Object.getOwnPropertyDescriptor(n,e).enumerable}))),r.forEach(function(t){h(e,t,n[t])})}return e}function S(){return(0,e.useCollection)().filterTargetKey}function O(){var o,a,i=(0,e.useDataBlockRequest)(),l=i.data,c=i.run,u=i.loading,s=(0,e.useDataBlockProps)(),p=s.tree,f=s.params,d=(0,e.useCollection)(),m=S(),b=(0,e.useApp)(),y=d.titleField||m,v=(0,e.useFilterAPI)(),O=v.isConnected,x=v.doFilter,k=(0,e.useDataBlockHeight)({removeBlockHeaderHeight:!0,innerExtraHeight:90}),w=(0,t.useMemo)(function(){return g({key:m,title:y},null==p?void 0:p.fieldNames)},[m,d,null==p?void 0:p.fieldNames]),P=(0,t.useMemo)(function(){return d.getField(w.title)},[w.title,d]),j=(0,t.useMemo)(function(){var e=P.interface;return e?b.dataSourceManager.collectionFieldInterfaceManager.getFieldInterface(e):null},[P]),E=(0,t.useMemo)(function(){var e,t;return null==j||null==(t=j.filterable)||null==(e=t.operators)?void 0:e[0]},[j]),C=(0,t.useRef)(),T=(0,t.useCallback)(function(t){C.current=t;var n=""===t||void 0==t?{}:{$and:[h({},w.title,h({},(null==E?void 0:E.value)||"$eq",t))]};c({filter:(0,e.mergeFilter)([null==f?void 0:f.filter,n])})},[w.title,JSON.stringify(null==f?void 0:f.filter),null==E?void 0:E.value,c]);(0,t.useEffect)(function(){T(C.current)},[JSON.stringify(null==f?void 0:f.filter)]);var I=(0,t.useCallback)(function(e){O&&(0===e.length?x(null):x(function(t,n,o){if(null==t?void 0:t.field){var a=n.collection.getField(t.field),i=(0,r.treeFind)(null==l?void 0:l.data,function(t){return t[m]===e[0]});return null==i?void 0:i[o||a.name]}return e[0]},function(e){return(null==e?void 0:e.field)||m}))},[O,x,null==l?void 0:l.data,m]),D=(0,t.useMemo)(function(){return g({},null==P?void 0:P.uiSchema,null==E?void 0:E.schema)},[E]),M=(0,t.useCallback)(function(t){var r=t.value,o=t.onChange;return n().createElement(e.FilterContext.Provider,{value:{}},n().createElement(e.FilterDynamicComponent,{value:r,schema:D,collectionField:P,onChange:o,style:{width:"100%"},componentProps:{allowClear:!0}}))},[D,P]);return o=g({},p),a=a={height:k,loading:u,fieldNames:w,treeData:null==l?void 0:l.data,onSearch:T,onSelect:I,FilterComponent:M},Object.getOwnPropertyDescriptors?Object.defineProperties(o,Object.getOwnPropertyDescriptors(a)):(function(e){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t.push.apply(t,n)}return t})(Object(a)).forEach(function(e){Object.defineProperty(o,e,Object.getOwnPropertyDescriptor(a,e))}),o}var x=p(625),k=p(59),w=p(773);function P(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=Array(t);n<t;n++)r[n]=e[n];return r}function j(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function E(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n,r,o=null==e?null:"u">typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=o){var a=[],i=!0,l=!1;try{for(o=o.call(e);!(i=(n=o.next()).done)&&(a.push(n.value),!t||a.length!==t);i=!0);}catch(e){l=!0,r=e}finally{try{i||null==o.return||o.return()}finally{if(l)throw r}}return a}}(e,t)||T(e,t)||function(){throw TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function C(e){return function(e){if(Array.isArray(e))return P(e)}(e)||function(e){if("u">typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||T(e)||function(){throw TypeError("Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function T(e,t){if(e){if("string"==typeof e)return P(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);if("Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n)return Array.from(n);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return P(e,t)}}var I=function(e,t,n){for(var r,o=(null==n?void 0:n.key)||"key",a=(null==n?void 0:n.children)||"children",i=0;i<t.length;i++){var l=t[i];l[a]&&(l[a].some(function(t){return t[o]===e})?r=l[o]:I(e,l[a],n)&&(r=I(e,l[a],n)))}return r},D=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],t=arguments.length>1?arguments[1]:void 0,n=(null==t?void 0:t.children)||"children";return e.reduce(function(e,t){var r=t[n],o=r?D(r):[];return C(e).concat([t],C(o))},[])},M=function(e){e.value;var t=e.onChange,r=u().t;return n().createElement(k.Input,{allowClear:!0,placeholder:r("Search"),onChange:function(e){return t(e.target.value)}})},B=(0,e.withDynamicSchemaProps)(function(r){var o,a,i=r.searchable,l=void 0===i||i,c=r.onSearch,u=r.treeData,s=r.loading,p=r.fieldNames,f=r.defaultExpandAll,d=r.onExpand,m=r.FilterComponent,b=r.defaultExpandedKeys,y=r.expandedKeys,v=r.autoExpandParent,h=function(e,t){if(null==e)return{};var n,r,o,a={};if("u">typeof Reflect&&Reflect.ownKeys){for(o=0,n=Reflect.ownKeys(Object(e));o<n.length;o++)r=n[o],!(t.indexOf(r)>=0)&&Object.prototype.propertyIsEnumerable.call(e,r)&&(a[r]=e[r]);return a}if(a=function(e,t){if(null==e)return{};var n,r,o={},a=Object.getOwnPropertyNames(e);for(r=0;r<a.length;r++)n=a[r],!(t.indexOf(n)>=0)&&Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n]);return o}(e,t),Object.getOwnPropertySymbols)for(o=0,n=Object.getOwnPropertySymbols(e);o<n.length;o++)r=n[o],!(t.indexOf(r)>=0)&&Object.prototype.propertyIsEnumerable.call(e,r)&&(a[r]=e[r]);return a}(r,["searchable","onSearch","treeData","loading","fieldNames","defaultExpandAll","onExpand","FilterComponent","defaultExpandedKeys","expandedKeys","autoExpandParent"]),g=(0,t.useMemo)(function(){return(0,w.cloneDeep)(u)},[u]),S=(0,e.useCompile)(),O=(0,t.useMemo)(function(){return(null==p?void 0:p.key)||"key"},[null==p?void 0:p.key]),P=(0,t.useMemo)(function(){return(null==p?void 0:p.children)||"children"},[null==p?void 0:p.children]),C=(0,t.useMemo)(function(){return(null==p?void 0:p.title)||"title"},[null==p?void 0:p.title]),T=(0,t.useMemo)(function(){return l||f?D(g,p):null},[g]),B=(0,t.useMemo)(function(){return null==T?void 0:T.map(function(e){return e[O]})},[T,O]),_=E((0,t.useState)(y),2),F=_[0],A=_[1],N=E((0,t.useState)(""),2),q=N[0],R=N[1],K=E((0,t.useState)(void 0===v||v),2),$=K[0],U=K[1],z=k.theme.useToken().token,H=(0,t.useMemo)(function(){var e=function(t){return t.map(function(t){var r,o,a=String(S(t[C])),i=a.indexOf(String(q)),l=a.substring(0,i),c=a.slice(i+String(q).length),u=i>-1?n().createElement("span",null,l,n().createElement("span",{style:{color:z.colorPrimary}},q),c):n().createElement("span",null,a);return t[P]?(j(r={},C,u),j(r,O,t[O]),j(r,P,e((0,w.cloneDeep)(t[P]))),r):(j(o={},C,u),j(o,O,t[O]),o)})};return e(g||[])},[q,g,C,O,P]),L=(0,t.useCallback)(function(e,t){A(e),U(!1),null==d||d(e,t)},[d]),V=(0,x.useDebounceFn)(function(e){R(e),null==c||c(e)},{wait:400});return(0,t.useEffect)(function(){q?A(T.map(function(e){return String(e[C]).indexOf(q)>-1?I(e[O],u,p):null}).filter(function(e,t,n){return!!(e&&n.indexOf(e)===t)})):f?A(B):A(y||b),U(!0)},[q,u,C,O,P,T,f,B,y,b]),n().createElement("div",null,l&&n().createElement("div",{style:{marginBottom:z.marginXS}},n().createElement(void 0===m?M:m,{value:q,onChange:V.run})),s?n().createElement("div",{style:{height:200,marginTop:z.margin,textAlign:"center"}},n().createElement(k.Spin,null)):H.length?n().createElement(k.Tree,(o=function(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{},r=Object.keys(n);"function"==typeof Object.getOwnPropertySymbols&&(r=r.concat(Object.getOwnPropertySymbols(n).filter(function(e){return Object.getOwnPropertyDescriptor(n,e).enumerable}))),r.forEach(function(t){j(e,t,n[t])})}return e}({},h),a=a={onExpand:L,fieldNames:p,expandedKeys:F,autoExpandParent:$,treeData:H},Object.getOwnPropertyDescriptors?Object.defineProperties(o,Object.getOwnPropertyDescriptors(a)):(function(e){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t.push.apply(t,n)}return t})(Object(a)).forEach(function(e){Object.defineProperty(o,e,Object.getOwnPropertyDescriptor(a,e))}),o)):n().createElement(k.Empty,{image:k.Empty.PRESENTED_IMAGE_SIMPLE}))},{displayName:o}),_=p(375),F={type:"item",name:a,Component:"DataBlockInitializer",useComponentProps:function(){var t=(0,e.useSchemaInitializer)().insert,r=u().t,a=(0,e.useApp)();return{title:r("Tree"),icon:n().createElement(_.MenuOutlined,null),componentType:o,onCreateBlockSchema:function(e){var n,r,i,l,c,u,s,p,f=e.item;f.name&&t((r=(n={dataSource:f.dataSource,collection:f.name,isTreeCollection:(null==(p=a.getCollectionManager(f.dataSource))||null==(s=p.getCollection(f.name))?void 0:s.template)==="tree"}).dataSource,i=n.collection,l=n.isTreeCollection,{type:"void","x-decorator":"DataBlockProvider","x-decorator-props":{dataSource:r,collection:i,action:"list",params:{pageSize:200,tree:!!l||void 0},tree:void 0===(c=n.props)?{}:c},"x-component":"CardItem","x-component-props":void 0===(u=n.cardProps)?{}:u,"x-settings":v.name,"x-toolbar":"BlockSchemaToolbar","x-filter-targets":[],properties:{tree:{type:"void","x-component":o,"x-use-component-props":"useTreeProps"}}}))}}}};function A(e,t,n,r,o,a,i){try{var l=e[a](i),c=l.value}catch(e){n(e);return}l.done?t(c):Promise.resolve(c).then(r,o)}function N(e,t,n){return(N=$()?Reflect.construct:function(e,t,n){var r=[null];r.push.apply(r,t);var o=new(Function.bind.apply(e,r));return n&&R(o,n.prototype),o}).apply(null,arguments)}function q(e){return(q=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}function R(e,t){return(R=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function K(e){var t="function"==typeof Map?new Map:void 0;return(K=function(e){if(null===e||-1===Function.toString.call(e).indexOf("[native code]"))return e;if("function"!=typeof e)throw TypeError("Super expression must either be null or a function");if(void 0!==t){if(t.has(e))return t.get(e);t.set(e,n)}function n(){return N(e,arguments,q(this).constructor)}return n.prototype=Object.create(e.prototype,{constructor:{value:n,enumerable:!1,writable:!0,configurable:!0}}),R(n,e)})(e)}function $(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch(e){}return($=function(){return!!e})()}var U=function(e){var t;if("function"!=typeof e&&null!==e)throw TypeError("Super expression must either be null or a function");function n(){var e,t;if(!(this instanceof n))throw TypeError("Cannot call a class as a function");return e=n,t=arguments,e=q(e),function(e,t){var n;if(t&&("object"==((n=t)&&"u">typeof Symbol&&n.constructor===Symbol?"symbol":typeof n)||"function"==typeof t))return t;if(void 0===e)throw ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(this,$()?Reflect.construct(e,t||[],q(this).constructor):e.apply(this,t))}return n.prototype=Object.create(e&&e.prototype,{constructor:{value:n,writable:!0,configurable:!0}}),e&&R(n,e),t=[{key:"load",value:function(){var e;return(e=function(){return function(e,t){var n,r,o,a={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]},i=Object.create(("function"==typeof Iterator?Iterator:Object).prototype),l=Object.defineProperty;return l(i,"next",{value:c(0)}),l(i,"throw",{value:c(1)}),l(i,"return",{value:c(2)}),"function"==typeof Symbol&&l(i,Symbol.iterator,{value:function(){return this}}),i;function c(l){return function(c){var u=[l,c];if(n)throw TypeError("Generator is already executing.");for(;i&&(i=0,u[0]&&(a=0)),a;)try{if(n=1,r&&(o=2&u[0]?r.return:u[0]?r.throw||((o=r.return)&&o.call(r),0):r.next)&&!(o=o.call(r,u[1])).done)return o;switch(r=0,o&&(u=[2&u[0],o.value]),u[0]){case 0:case 1:o=u;break;case 4:return a.label++,{value:u[1],done:!1};case 5:a.label++,r=u[1],u=[0];continue;case 7:u=a.ops.pop(),a.trys.pop();continue;default:if(!(o=(o=a.trys).length>0&&o[o.length-1])&&(6===u[0]||2===u[0])){a=0;continue}if(3===u[0]&&(!o||u[1]>o[0]&&u[1]<o[3])){a.label=u[1];break}if(6===u[0]&&a.label<o[1]){a.label=o[1],o=u;break}if(o&&a.label<o[2]){a.label=o[2],a.ops.push(u);break}o[2]&&a.ops.pop(),a.trys.pop();continue}u=t.call(e,a)}catch(e){u=[6,e],r=0}finally{n=o=0}if(5&u[0])throw u[1];return{value:u[0]?u[1]:void 0,done:!0}}}}(this,function(e){return this.app.addComponents({Tree:B}),this.app.schemaSettingsManager.add(v),this.app.addScopes({useTreeProps:O}),this.app.schemaInitializerManager.addItem("page:addBlock","filterBlocks.".concat(F.name),F),this.app.schemaInitializerManager.addItem("popup:common:addBlock","filterBlocks.".concat(F.name),F),this.app.schemaInitializerManager.addItem("popup:tableSelector:addBlock","filterBlocks.".concat(F.name),F),[2]})},function(){var t=this,n=arguments;return new Promise(function(r,o){var a=e.apply(t,n);function i(e){A(a,r,o,i,l,"next",e)}function l(e){A(a,r,o,i,l,"throw",e)}i(void 0)})}).call(this)}}],function(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}(n.prototype,t),n}(K(e.Plugin)),z=U}(),y}()});
10
+ !function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t(require("react-i18next"),require("@formily/reactive"),require("@formily/react"),require("@ant-design/icons"),require("@nocobase/flow-engine"),require("ahooks"),require("react"),require("antd"),require("@nocobase/client"),require("@nocobase/utils/client"),require("lodash")):"function"==typeof define&&define.amd?define("@nocobase/plugin-block-tree",["react-i18next","@formily/reactive","@formily/react","@ant-design/icons","@nocobase/flow-engine","ahooks","react","antd","@nocobase/client","@nocobase/utils/client","lodash"],t):"object"==typeof exports?exports["@nocobase/plugin-block-tree"]=t(require("react-i18next"),require("@formily/reactive"),require("@formily/react"),require("@ant-design/icons"),require("@nocobase/flow-engine"),require("ahooks"),require("react"),require("antd"),require("@nocobase/client"),require("@nocobase/utils/client"),require("lodash")):e["@nocobase/plugin-block-tree"]=t(e["react-i18next"],e["@formily/reactive"],e["@formily/react"],e["@ant-design/icons"],e["@nocobase/flow-engine"],e.ahooks,e.react,e.antd,e["@nocobase/client"],e["@nocobase/utils/client"],e.lodash)}(self,function(e,t,n,r,o,l,i,a,u,c,s){return function(){"use strict";var f={375:function(e){e.exports=r},230:function(e){e.exports=n},992:function(e){e.exports=t},342:function(e){e.exports=u},694:function(e){e.exports=o},768:function(e){e.exports=c},625:function(e){e.exports=l},59:function(e){e.exports=a},773:function(e){e.exports=s},155:function(e){e.exports=i},953:function(t){t.exports=e}},d={};function p(e){var t=d[e];if(void 0!==t)return t.exports;var n=d[e]={exports:{}};return f[e](n,n.exports,p),n.exports}p.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return p.d(t,{a:t}),t},p.d=function(e,t){for(var n in t)p.o(t,n)&&!p.o(e,n)&&Object.defineProperty(e,n,{enumerable:!0,get:t[n]})},p.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||Function("return this")()}catch(e){if("object"==typeof window)return window}}(),p.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},p.r=function(e){"u">typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},p.g.importScripts&&(v=p.g.location+"");var v,y=p.g.document;if(!v&&y&&(y.currentScript&&"SCRIPT"===y.currentScript.tagName.toUpperCase()&&(v=y.currentScript.src),!v)){var m=y.getElementsByTagName("script");if(m.length)for(var h=m.length-1;h>-1&&(!v||!/^http(s?):/.test(v));)v=m[h--].src}if(!v)throw Error("Automatic publicPath is not supported in this browser");p.p=v.replace(/^blob:/,"").replace(/#.*$/,"").replace(/\?.*$/,"").replace(/\/[^\/]+$/,"/");var b={};return!function(){var e="",t="u">typeof document?document.currentScript:null;if(t&&t.src&&(e=t.src.replace(/^blob:/,"").replace(/#.*$/,"").replace(/\?.*$/,"").replace(/\/[^\/]+$/,"/")),!e){var n=window.__webpack_public_path__||"";n&&("/"!==n.charAt(n.length-1)&&(n+="/"),e=n+"static/plugins/@nocobase/plugin-block-tree/dist/client/")}if(!e){if(!(e=window.__nocobase_public_path__||"")&&window.location&&window.location.pathname){var r=window.location.pathname||"/",o=r.indexOf("/v2/");e=o>=0?r.slice(0,o+1):"/"}e&&(e=e.replace(/\/v2\/?$/,"/")),e||(e="/"),"/"!==e.charAt(e.length-1)&&(e+="/"),e+="static/plugins/@nocobase/plugin-block-tree/dist/client/"}p.p=e}(),!function(){p.r(b),p.d(b,{PluginBlockTreeClient:function(){return eK},Tree:function(){return N},default:function(){return eq}});var e,t,n=p(342),r=p(155),o=p.n(r),l=p(768),i="Tree",a="tree",u=p(230),c=p(953),s=p(694),f=JSON.parse('{"UU":"@nocobase/plugin-block-tree"}');function d(){return(0,c.useTranslation)([f.UU,"client"],{nsMode:"fallback"})}function v(e){return(0,s.tExpr)(e,{ns:[f.UU,"client"]})}function y(e){return"{{t('".concat(e,"', { ns: '").concat(f.UU,"', nsMode: 'fallback' })}}")}var m=(0,n.createSwitchSettingsItem)({title:y("Expand all"),name:"expandAll",schemaKey:"x-decorator-props.tree.defaultExpandAll",defaultValue:!1}),h=(0,n.createSelectSchemaSettingsItem)({name:"recordsCount",title:y("Root records per page"),options:[{label:"10",value:10},{label:"20",value:20},{label:"50",value:50},{label:"100",value:100},{label:"200",value:200},{label:"500",value:500}],schemaKey:"x-decorator-props.params.pageSize",defaultValue:200}),g=(0,n.createSwitchSettingsItem)({name:"searchable",title:y("Searchable"),schemaKey:"x-decorator-props.tree.searchable",defaultValue:!0}),S=(0,n.createSelectSchemaSettingsItem)({name:"titleField",title:"{{t('".concat("Title field","')}}"),useOptions:function(){var e=(0,n.useCollection)(),t=(0,n.useCompile)();return e.getFields(function(t){return e.isTitleField(t)}).map(function(e){var n;return{label:(null==(n=e.uiSchema)?void 0:n.title)?t(e.uiSchema.title):e.name,value:e.name}})},schemaKey:"x-decorator-props.tree.fieldNames.title",useDefaultValue:k}),w=new n.SchemaSettings({name:"blockSettings:".concat(a),items:[{name:"editBlockTitle",Component:n.SchemaSettingsBlockTitleItem},{name:"setTheBlockHeight",Component:n.SchemaSettingsBlockHeightItem},{name:"blockLinkageRules",Component:n.SchemaSettingsLinkageRules,useComponentProps:function(){return{title:(0,(0,c.useTranslation)().t)("Block Linkage rules",{ns:"client"}),category:n.LinkageRuleCategory.block}}},n.setDefaultSortingRulesSchemaSettingsItem,n.setTheDataScopeSchemaSettingsItem,g,m,S,h,{name:"ConnectDataBlocks",Component:n.SchemaSettingsConnectDataBlocks,useComponentProps:function(){var e=(0,c.useTranslation)().t;return{type:n.FilterBlockType.TREE,emptyDescription:e("No blocks to connect")}}},{type:"divider",name:"divider-1"},{name:"ConvertReferenceToDuplicate",Component:n.SchemaSettingsTemplate,useComponentProps:function(){var e,t,r=(0,n.useCollection)(),o=(0,u.useFieldSchema)(),l=(0,n.useBlockTemplateContext)().componentNamePrefix,i=(null==o||null==(e=o["x-decorator-props"])?void 0:e.resource)||(null==o||null==(t=o["x-decorator-props"])?void 0:t.association);return{componentName:"".concat(l,"Tree"),useTranslationHooks:d,collectionName:r.name,resourceName:i}}},{type:"divider",name:"divider-2"},{name:"remove",type:"remove",componentProps:{removeParentsIfNoChildren:!0,breakRemoveOn:{"x-component":"Grid"}}}]});function O(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function P(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{},r=Object.keys(n);"function"==typeof Object.getOwnPropertySymbols&&(r=r.concat(Object.getOwnPropertySymbols(n).filter(function(e){return Object.getOwnPropertyDescriptor(n,e).enumerable}))),r.forEach(function(t){O(e,t,n[t])})}return e}function k(){return(0,n.useCollection)().filterTargetKey}function x(){var e,t,i=(0,n.useDataBlockRequest)(),a=i.data,u=i.run,c=i.loading,s=(0,n.useDataBlockProps)(),f=s.tree,d=s.params,p=(0,n.useCollection)(),v=k(),y=(0,n.useApp)(),m=p.titleField||v,h=(0,n.useFilterAPI)(),b=h.isConnected,g=h.doFilter,S=(0,n.useDataBlockHeight)({removeBlockHeaderHeight:!0,innerExtraHeight:90}),w=(0,r.useMemo)(function(){return P({key:v,title:m},null==f?void 0:f.fieldNames)},[v,p,null==f?void 0:f.fieldNames]),x=(0,r.useMemo)(function(){return p.getField(w.title)},[w.title,p]),j=(0,r.useMemo)(function(){var e=x.interface;return e?y.dataSourceManager.collectionFieldInterfaceManager.getFieldInterface(e):null},[x]),E=(0,r.useMemo)(function(){var e,t;return null==j||null==(t=j.filterable)||null==(e=t.operators)?void 0:e[0]},[j]),C=(0,r.useRef)(),F=(0,r.useCallback)(function(e){C.current=e;var t=""===e||void 0==e?{}:{$and:[O({},w.title,O({},(null==E?void 0:E.value)||"$eq",e))]};u({filter:(0,n.mergeFilter)([null==d?void 0:d.filter,t])})},[w.title,JSON.stringify(null==d?void 0:d.filter),null==E?void 0:E.value,u]);(0,r.useEffect)(function(){F(C.current)},[JSON.stringify(null==d?void 0:d.filter)]);var M=(0,r.useCallback)(function(e){b&&(0===e.length?g(null):g(function(t,n,r){if(null==t?void 0:t.field){var o=n.collection.getField(t.field),i=(0,l.treeFind)(null==a?void 0:a.data,function(t){return t[v]===e[0]});return null==i?void 0:i[r||o.name]}return e[0]},function(e){return(null==e?void 0:e.field)||v}))},[b,g,null==a?void 0:a.data,v]),T=(0,r.useMemo)(function(){return P({},null==x?void 0:x.uiSchema,null==E?void 0:E.schema)},[E]),I=(0,r.useCallback)(function(e){var t=e.value,r=e.onChange;return o().createElement(n.FilterContext.Provider,{value:{}},o().createElement(n.FilterDynamicComponent,{value:t,schema:T,collectionField:x,onChange:r,style:{width:"100%"},componentProps:{allowClear:!0}}))},[T,x]);return e=P({},f),t=t={height:S,loading:c,fieldNames:w,treeData:null==a?void 0:a.data,onSearch:F,onSelect:M,FilterComponent:I},Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):(function(e){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t.push.apply(t,n)}return t})(Object(t)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(t,n))}),e}var j=p(625),E=p(59),C=p(773);function F(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=Array(t);n<t;n++)r[n]=e[n];return r}function M(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function T(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n,r,o=null==e?null:"u">typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=o){var l=[],i=!0,a=!1;try{for(o=o.call(e);!(i=(n=o.next()).done)&&(l.push(n.value),!t||l.length!==t);i=!0);}catch(e){a=!0,r=e}finally{try{i||null==o.return||o.return()}finally{if(a)throw r}}return l}}(e,t)||D(e,t)||function(){throw TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function I(e){return function(e){if(Array.isArray(e))return F(e)}(e)||function(e){if("u">typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||D(e)||function(){throw TypeError("Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function D(e,t){if(e){if("string"==typeof e)return F(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);if("Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n)return Array.from(n);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return F(e,t)}}var A=function(e,t,n){for(var r,o=(null==n?void 0:n.key)||"key",l=(null==n?void 0:n.children)||"children",i=0;i<t.length;i++){var a=t[i];a[l]&&(a[l].some(function(t){return t[o]===e})?r=a[o]:A(e,a[l],n)&&(r=A(e,a[l],n)))}return r},B=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],t=arguments.length>1?arguments[1]:void 0,n=(null==t?void 0:t.children)||"children";return e.reduce(function(e,t){var r=t[n],o=r?B(r):[];return I(e).concat([t],I(o))},[])},_=function(e){e.value;var t=e.onChange,n=d().t;return o().createElement(E.Input,{allowClear:!0,placeholder:n("Search"),onChange:function(e){return t(e.target.value)}})},N=(0,n.withDynamicSchemaProps)(function(e){var t,l,i=e.searchable,a=void 0===i||i,u=e.onSearch,c=e.treeData,s=e.loading,f=e.fieldNames,d=e.defaultExpandAll,p=e.onExpand,v=e.FilterComponent,y=e.defaultExpandedKeys,m=e.expandedKeys,h=e.autoExpandParent,b=e.renderNodeTitle,g=function(e,t){if(null==e)return{};var n,r,o,l={};if("u">typeof Reflect&&Reflect.ownKeys){for(o=0,n=Reflect.ownKeys(Object(e));o<n.length;o++)r=n[o],!(t.indexOf(r)>=0)&&Object.prototype.propertyIsEnumerable.call(e,r)&&(l[r]=e[r]);return l}if(l=function(e,t){if(null==e)return{};var n,r,o={},l=Object.getOwnPropertyNames(e);for(r=0;r<l.length;r++)n=l[r],!(t.indexOf(n)>=0)&&Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n]);return o}(e,t),Object.getOwnPropertySymbols)for(o=0,n=Object.getOwnPropertySymbols(e);o<n.length;o++)r=n[o],!(t.indexOf(r)>=0)&&Object.prototype.propertyIsEnumerable.call(e,r)&&(l[r]=e[r]);return l}(e,["searchable","onSearch","treeData","loading","fieldNames","defaultExpandAll","onExpand","FilterComponent","defaultExpandedKeys","expandedKeys","autoExpandParent","renderNodeTitle"]),S=(0,r.useMemo)(function(){return(0,C.cloneDeep)(c)},[c]),w=(0,n.useCompile)(),O=(0,r.useMemo)(function(){return(null==f?void 0:f.key)||"key"},[null==f?void 0:f.key]),P=(0,r.useMemo)(function(){return(null==f?void 0:f.children)||"children"},[null==f?void 0:f.children]),k=(0,r.useMemo)(function(){return(null==f?void 0:f.title)||"title"},[null==f?void 0:f.title]),x=(0,r.useMemo)(function(){return a||d?B(S,f):null},[S,d,f,a]),F=(0,r.useMemo)(function(){return null==x?void 0:x.map(function(e){return e[O]})},[x,O]),I=T((0,r.useState)(m),2),D=I[0],N=I[1],R=T((0,r.useState)(""),2),K=R[0],q=R[1],H=T((0,r.useState)(void 0===h||h),2),z=H[0],$=H[1],G=E.theme.useToken().token,U=!!b,V=(0,r.useCallback)(function(e){var t=w(e[k]);return U&&(null==t||""===t)?"N/A":String(t)},[w,k,U]),L=(0,r.useCallback)(function(e){var t,n=V(e);return b&&null!=(t=b(e[k],e))?t:o().createElement("span",null,n)},[k,b,V]),J=(0,r.useMemo)(function(){var e=function(t){return t.map(function(t){var n,r,l,i=V(t),a=""!==K&&null!=K?i.indexOf(String(K)):-1,u=i.substring(0,a),c=i.slice(a+String(K).length);return(n=a>-1?o().createElement("span",null,u,o().createElement("span",{style:{color:G.colorPrimary}},K),c):U?L(t):o().createElement("span",null,i),t[P])?(M(r={},k,n),M(r,O,t[O]),M(r,P,e((0,C.cloneDeep)(t[P]))),r):(M(l={},k,n),M(l,O,t[O]),l)})};return e(S||[])},[K,S,k,O,P,U,L,V,G.colorPrimary]),W=(0,r.useCallback)(function(e,t){N(e),$(!1),null==p||p(e,t)},[p]),X=(0,j.useDebounceFn)(function(e){q(e),null==u||u(e)},{wait:400});return(0,r.useEffect)(function(){K?N(x.map(function(e){return String(e[k]).indexOf(K)>-1?A(e[O],c,f):null}).filter(function(e,t,n){return!!(e&&n.indexOf(e)===t)})):d?N(F):N(m||y),$(!0)},[K,c,k,O,P,x,d,f,F,m,y]),o().createElement("div",null,a&&o().createElement("div",{style:{marginBottom:G.marginXS}},o().createElement(void 0===v?_:v,{value:K,onChange:X.run})),s?o().createElement("div",{style:{height:200,marginTop:G.margin,textAlign:"center"}},o().createElement(E.Spin,null)):J.length?o().createElement(E.Tree,(t=function(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{},r=Object.keys(n);"function"==typeof Object.getOwnPropertySymbols&&(r=r.concat(Object.getOwnPropertySymbols(n).filter(function(e){return Object.getOwnPropertyDescriptor(n,e).enumerable}))),r.forEach(function(t){M(e,t,n[t])})}return e}({},g),l=l={onExpand:W,fieldNames:f,expandedKeys:D,autoExpandParent:z,treeData:J},Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(l)):(function(e){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t.push.apply(t,n)}return t})(Object(l)).forEach(function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(l,e))}),t)):o().createElement(E.Empty,{image:E.Empty.PRESENTED_IMAGE_SIMPLE}))},{displayName:i}),R=p(375),K={type:"item",name:a,Component:"DataBlockInitializer",useComponentProps:function(){var e=(0,n.useSchemaInitializer)().insert,t=d().t,r=(0,n.useApp)();return{title:t("Tree"),icon:o().createElement(R.MenuOutlined,null),componentType:i,onCreateBlockSchema:function(t){var n,o,l,a,u,c,s,f,d=t.item;d.name&&e((o=(n={dataSource:d.dataSource,collection:d.name,isTreeCollection:(null==(f=r.getCollectionManager(d.dataSource))||null==(s=f.getCollection(d.name))?void 0:s.template)==="tree"}).dataSource,l=n.collection,a=n.isTreeCollection,{type:"void","x-decorator":"DataBlockProvider","x-decorator-props":{dataSource:o,collection:l,action:"list",params:{pageSize:200,tree:!!a||void 0},tree:void 0===(u=n.props)?{}:u},"x-component":"CardItem","x-component-props":void 0===(c=n.cardProps)?{}:c,"x-settings":w.name,"x-toolbar":"BlockSchemaToolbar","x-filter-targets":[],properties:{tree:{type:"void","x-component":i,"x-use-component-props":"useTreeProps"}}}))}}}},q=p(992);function H(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function z(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{},r=Object.keys(n);"function"==typeof Object.getOwnPropertySymbols&&(r=r.concat(Object.getOwnPropertySymbols(n).filter(function(e){return Object.getOwnPropertyDescriptor(n,e).enumerable}))),r.forEach(function(t){H(e,t,n[t])})}return e}function $(e,t){return t=null!=t?t:{},Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):(function(e){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t.push.apply(t,n)}return t})(Object(t)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(t,n))}),e}var G="__tree_search__",U=function(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:[];if(!e)return n;var r=e[t];null!=r&&n.push(r);var o=Array.isArray(e.children)?e.children:[],l=!0,i=!1,a=void 0;try{for(var u,c=o[Symbol.iterator]();!(l=(u=c.next()).done);l=!0){var s=u.value;U(s,t,n)}}catch(e){i=!0,a=e}finally{try{l||null==c.return||c.return()}finally{if(i)throw a}}return n},V=function(e,t,n){var r=!0,o=!1,l=void 0;try{for(var i,a=(e||[])[Symbol.iterator]();!(r=(i=a.next()).done);r=!0){var u=i.value;if((null==u?void 0:u[t])===n)return u;var c=V((null==u?void 0:u.children)||[],t,n);if(c)return c}}catch(e){o=!0,l=e}finally{try{r||null==a.return||a.return()}finally{if(o)throw l}}return null},L=(0,s.observer)(function(e){var t,l,i,a,u,c,s,f=e.model,d=f.resource,p=f.collection,v=f.getFieldNames(),y=v.title,m=null==p||null==(i=p.getField)?void 0:i.call(p,y),h=f.subModels.field,b=(null==m?void 0:m.interface)?f.context.app.dataSourceManager.collectionFieldInterfaceManager.getFieldInterface(m.interface):null,g=null==b||null==(u=b.filterable)||null==(a=u.operators)?void 0:a[0],S=(0,r.useMemo)(function(){return z({},null==m?void 0:m.uiSchema,null==g?void 0:g.schema)},[m,g]),w=(0,r.useCallback)(function(e){var t=e.value,r=e.onChange;return o().createElement(n.FilterContext.Provider,{value:{}},o().createElement(n.FilterDynamicComponent,{value:t,schema:S,collectionField:m,onChange:r,style:{width:"100%"},componentProps:{allowClear:!0}}))},[m,S]),O=(0,r.useCallback)(function(e){d&&(""===e||null==e?d.removeFilterGroup(G):d.addFilterGroup(G,H({},y,H({},(null==g?void 0:g.value)||"$eq",e))),d.setPage(1),d.refresh())},[null==g?void 0:g.value,d,y]),P=(0,r.useCallback)(function(e){f.setSelectedKeys(e);var t,n,r=null==e?void 0:e[0];if(null==r)f.setSelectedFilterValues([]);else{var o=U(V(d.getData()||[],v.key,r),v.key,[]);f.setSelectedFilterValues(o.length?o:[r])}null==(n=f.context.filterManager)||null==(t=n.refreshTargetsByFilter)||t.call(n,f.uid)},[v.key,f,d]),k=(0,r.useCallback)(function(e,t){if(null==e||""===e)return"N/A";if(!(null==h?void 0:h.createFork)||!m)return String(e);var n,r,l=null!=(n=null==t?void 0:t[v.key])?n:"".concat(y,"-").concat(String(e)),i=h.createFork({},String(l));i.context.defineProperty("collectionField",{get:function(){return m},cache:!1}),i.context.defineProperty("record",{get:function(){return t},cache:!1}),i.setProps($(z({},m.getComponentProps()),{value:e,clickToOpen:!1}));var a="function"==typeof i.renderComponent?i.renderComponent(e):null==(r=i.render)?void 0:r.call(i);return o().createElement("span",{style:{pointerEvents:"none"}},null!=a?a:String(e))},[m,v.key,y,h]),x=(null==(c=f.decoratorProps)?void 0:c.heightMode)==="specifyValue"||(null==(s=f.decoratorProps)?void 0:s.heightMode)==="fullHeight"?{height:"100%",overflow:"auto"}:void 0,j=f.props||{},E=(j.includeDescendants,function(e,t){if(null==e)return{};var n,r,o,l={};if("u">typeof Reflect&&Reflect.ownKeys){for(o=0,n=Reflect.ownKeys(Object(e));o<n.length;o++)r=n[o],!(t.indexOf(r)>=0)&&Object.prototype.propertyIsEnumerable.call(e,r)&&(l[r]=e[r]);return l}if(l=function(e,t){if(null==e)return{};var n,r,o={},l=Object.getOwnPropertyNames(e);for(r=0;r<l.length;r++)n=l[r],!(t.indexOf(n)>=0)&&Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n]);return o}(e,t),Object.getOwnPropertySymbols)for(o=0,n=Object.getOwnPropertySymbols(e);o<n.length;o++)r=n[o],!(t.indexOf(r)>=0)&&Object.prototype.propertyIsEnumerable.call(e,r)&&(l[r]=e[r]);return l}(j,["includeDescendants"]));return o().createElement("div",{style:x},o().createElement(N,$(z({},E),{showLine:!0,searchable:null==(t=f.props.searchable)||t,defaultExpandAll:null!=(l=f.props.defaultExpandAll)&&l,fieldNames:v,treeData:d.getData(),loading:d.loading,selectedKeys:f.selectedKeys.value,onSearch:O,onSelect:P,FilterComponent:w,renderNodeTitle:k})))});function J(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=Array(t);n<t;n++)r[n]=e[n];return r}function W(e,t,n,r,o,l,i){try{var a=e[l](i),u=a.value}catch(e){n(e);return}a.done?t(u):Promise.resolve(u).then(r,o)}function X(e){return function(){var t=this,n=arguments;return new Promise(function(r,o){var l=e.apply(t,n);function i(e){W(l,r,o,i,a,"next",e)}function a(e){W(l,r,o,i,a,"throw",e)}i(void 0)})}}function Q(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n,r,o=null==e?null:"u">typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=o){var l=[],i=!0,a=!1;try{for(o=o.call(e);!(i=(n=o.next()).done)&&(l.push(n.value),!t||l.length!==t);i=!0);}catch(e){a=!0,r=e}finally{try{i||null==o.return||o.return()}finally{if(a)throw r}}return l}}(e,t)||Z(e,t)||function(){throw TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function Y(e){return function(e){if(Array.isArray(e))return J(e)}(e)||function(e){if("u">typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||Z(e)||function(){throw TypeError("Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function Z(e,t){if(e){if("string"==typeof e)return J(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);if("Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n)return Array.from(n);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return J(e,t)}}function ee(e,t){var n,r,o,l={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]},i=Object.create(("function"==typeof Iterator?Iterator:Object).prototype),a=Object.defineProperty;return a(i,"next",{value:u(0)}),a(i,"throw",{value:u(1)}),a(i,"return",{value:u(2)}),"function"==typeof Symbol&&a(i,Symbol.iterator,{value:function(){return this}}),i;function u(a){return function(u){var c=[a,u];if(n)throw TypeError("Generator is already executing.");for(;i&&(i=0,c[0]&&(l=0)),l;)try{if(n=1,r&&(o=2&c[0]?r.return:c[0]?r.throw||((o=r.return)&&o.call(r),0):r.next)&&!(o=o.call(r,c[1])).done)return o;switch(r=0,o&&(c=[2&c[0],o.value]),c[0]){case 0:case 1:o=c;break;case 4:return l.label++,{value:c[1],done:!1};case 5:l.label++,r=c[1],c=[0];continue;case 7:c=l.ops.pop(),l.trys.pop();continue;default:if(!(o=(o=l.trys).length>0&&o[o.length-1])&&(6===c[0]||2===c[0])){l=0;continue}if(3===c[0]&&(!o||c[1]>o[0]&&c[1]<o[3])){l.label=c[1];break}if(6===c[0]&&l.label<o[1]){l.label=o[1],o=c;break}if(o&&l.label<o[2]){l.label=o[2],l.ops.push(c);break}o[2]&&l.ops.pop(),l.trys.pop();continue}c=t.call(e,l)}catch(e){c=[6,e],r=0}finally{n=o=0}if(5&c[0])throw c[1];return{value:c[0]?c[1]:void 0,done:!0}}}}var et=function(e){var t;return(null==e?void 0:e.collection)||(null==e||null==(t=e.context)?void 0:t.collection)},en=function(e){var t;return(null==e||null==(t=e.getFields)?void 0:t.call(e))||(null==e?void 0:e.fields)||[]},er=function(e){return(null==e?void 0:e.dataSourceKey)||(null==e?void 0:e.dataSource)||"main"},eo=function(e){var t=null==e?void 0:e.filterTargetKey;return Array.isArray(t)?t[0]||"id":t||"id"},el=function(e){var t,n=null==e||null==(t=e.targetCollection)?void 0:t.filterTargetKey;return Array.isArray(n)?n[0]||"id":(null==e?void 0:e.targetKey)||n||"id"},ei=function(e,t,n,r){if(!e||!t)return[];var o,l,i,a=en(e),u=en(t),c=er(e),s=null==n||null==(l=n.getDataSource)||null==(o=l.call(n,c))?void 0:o.collectionManager,f=(null==s||null==(i=s.getAllCollectionsInheritChain)?void 0:i.call(s,e.name))||[e.name],d=u.filter(function(e){return(null==e?void 0:e.target)&&f.includes(e.target)}).map(function(e){return{label:e.title||e.name,value:"".concat(e.name,".").concat(el(e))}}),p=u.filter(function(e){return!!e&&!e.target&&a.some(function(n){return(null==n?void 0:n.type)!=="belongsTo"&&(null==n?void 0:n.foreignKey)===e.name&&(null==n?void 0:n.target)===(null==t?void 0:t.name)})}).map(function(e){return{label:"".concat(e.title||e.name," [").concat(r("Foreign key"),"]"),value:e.name}});return Y(d).concat(Y(p)).filter(function(e,t,n){return n.findIndex(function(t){return t.value===e.value})===t})},ea=function(e){return{targets:Array.isArray(null==e?void 0:e.targets)?e.targets.filter(function(e){return null==e?void 0:e.targetId}).map(function(e){return{targetId:e.targetId,filterPaths:Array.isArray(e.filterPaths)?e.filterPaths.filter(Boolean):[]}}):[]}},eu=function(e){return e?"".concat(e.title).concat(e.uid?" #".concat(String(e.uid).slice(0,4)):""):""},ec=function(e,t){var n=ea(t);if(!n.targets.length)return e.context.t("Unconnected");var r=eu(e.flowEngine.getModel(n.targets[0].targetId))||e.context.t("Configured");return 1===n.targets.length?r:"".concat(r," +").concat(n.targets.length-1)},es=function(e,t){var n,r=et(e),o=e.context.blockGridModel,l=e.context.dataSourceManager;return((null==o||null==(n=o.filterSubModels)?void 0:n.call(o,"items",function(e){var t;return!!(null==e||null==(t=e.resource)?void 0:t.supportsFilter)}))||[]).filter(function(t){return(null==t?void 0:t.uid)&&t.uid!==e.uid}).map(function(e){var n=et(e),o=(null==r?void 0:r.name)===(null==n?void 0:n.name)&&er(r)===er(n),i=o?[]:ei(r,n,l,t);return{model:e,title:eu(e),sameCollection:o,options:i}}).filter(function(e){return e.sameCollection||e.options.length>0})},ef=function(e){var t,n,r=null==e||null==(n=e.context)||null==(t=n.ref)?void 0:t.current;r&&(void 0===r.dataset.treeHighlightBoxShadow&&(r.dataset.treeHighlightBoxShadow=r.style.boxShadow||""),void 0===r.dataset.treeHighlightOutline&&(r.dataset.treeHighlightOutline=r.style.outline||""),void 0===r.dataset.treeHighlightTransition&&(r.dataset.treeHighlightTransition=r.style.transition||""),r.style.boxShadow="0 0 10px 0 #ccc",r.style.outline="1px solid var(--colorSettings)",r.style.transition="box-shadow 0.2s ease, outline 0.2s ease")},ed=function(e){var t,n,r=null==e||null==(n=e.context)||null==(t=n.ref)?void 0:t.current;r&&(r.style.boxShadow=r.dataset.treeHighlightBoxShadow||"",r.style.outline=r.dataset.treeHighlightOutline||"",r.style.transition=r.dataset.treeHighlightTransition||"",delete r.dataset.treeHighlightBoxShadow,delete r.dataset.treeHighlightOutline,delete r.dataset.treeHighlightTransition)};function ep(e){var t=e.model,n=e.t,r=e.onSummaryChange,l=e.setDropdownOpen,i=Q(o().useState(function(){var e;return ea(null==(e=t.context.filterManager)?void 0:e.getConnectFieldsConfig(t.uid))}),2),a=i[0],u=i[1],c=Q(o().useState(!1),2),s=c[0],f=c[1],d=Q(o().useState(),2),p=d[0],v=d[1],y=o().useRef(),m=o().useRef(null),h=E.theme.useToken().token,b=o().useMemo(function(){return es(t,n)},[t,n]);o().useEffect(function(){var e;u(ea(null==(e=t.context.filterManager)?void 0:e.getConnectFieldsConfig(t.uid)))},[t]),o().useEffect(function(){return function(){y.current&&ed(t.flowEngine.getModel(y.current))}},[t]);var g=o().useCallback(function(e){return X(function(){var n;return ee(this,function(o){switch(o.label){case 0:n=ea(e),f(!0),o.label=1;case 1:var l;return o.trys.push([1,,3,4]),[4,(l=n,X(function(){var e,n,r,o,i,a,u,c,s,f,d,p;return ee(this,function(v){switch(v.label){case 0:if(!(e=t.context.filterManager))return[2];n=ea(e.getConnectFieldsConfig(t.uid)),r=ea(l),o=new Set(n.targets.map(function(e){return e.targetId})),i=new Set(r.targets.map(function(e){return e.targetId})),a=!0,u=!1,c=void 0,v.label=1;case 1:v.trys.push([1,6,7,8]),s=o[Symbol.iterator](),v.label=2;case 2:if(a=(f=s.next()).done)return[3,5];if(d=f.value,i.has(d))return[3,4];return[4,X(function(){var e,n,r;return ee(this,function(o){switch(o.label){case 0:if(!(null==(r=t.flowEngine.getModel(d))||null==(e=r.resource)?void 0:e.removeFilterGroup))return[2];return r.resource.removeFilterGroup(t.uid),null==(n=r.removeFilterSource)||n.call(r,t.uid),[4,X(function(){var e,t,n;return ee(this,function(o){switch(o.label){case 0:if(!(n=null==r?void 0:r.resource))return[2];return null==(e=n.setPage)||e.call(n,1),[4,null==(t=n.refresh)?void 0:t.call(n)];case 1:return o.sent(),[2]}})})()];case 1:return o.sent(),[2]}})})()];case 3:v.sent(),v.label=4;case 4:return a=!0,[3,2];case 5:return[3,8];case 6:return p=v.sent(),u=!0,c=p,[3,8];case 7:try{a||null==s.return||s.return()}finally{if(u)throw c}return[7];case 8:return[4,e.saveConnectFieldsConfig(t.uid,r)];case 9:return v.sent(),[4,e.refreshTargetsByFilter(t.uid)];case 10:return v.sent(),[2]}})})())];case 2:return o.sent(),u(n),r(ec(t,n)),[3,4];case 3:return f(!1),[7];case 4:return[2]}})})()},[t,r]),S=o().useCallback(function(e,t){return X(function(){var n;return ee(this,function(r){switch(r.label){case 0:return(n=a.targets.filter(function(t){return t.targetId!==e})).push({targetId:e,filterPaths:t}),[4,g({targets:n})];case 1:return r.sent(),[2]}})})()},[a.targets,g]),w=o().useCallback(function(e){return X(function(){return ee(this,function(t){switch(t.label){case 0:return[4,g({targets:a.targets.filter(function(t){return t.targetId!==e})})];case 1:return t.sent(),[2]}})})()},[a.targets,g]),O=o().useCallback(function(e){v(e.uid),y.current&&y.current!==e.uid&&ed(t.flowEngine.getModel(y.current)),y.current=e.uid,ef(e)},[t]),P=o().useCallback(function(e){v(function(t){return t===e.uid?void 0:t}),y.current===e.uid&&(y.current=void 0),ed(e)},[]);return o().createElement("div",{ref:m,style:{width:340,maxHeight:360,overflow:"auto",padding:4},onMouseDown:function(e){e.preventDefault(),e.stopPropagation(),null==l||l(!0)},onMouseEnter:function(){return null==l?void 0:l(!0)}},s?o().createElement("div",{style:{display:"flex",justifyContent:"center",padding:"12px 0"}},o().createElement(E.Spin,{size:"small"})):null,b.length?b.map(function(e){var t,r=a.targets.find(function(t){return t.targetId===e.model.uid}),i=null==r||null==(t=r.filterPaths)?void 0:t[0];return o().createElement("div",{key:e.model.uid,style:{display:"flex",alignItems:"center",justifyContent:"space-between",gap:4,minHeight:32,padding:"5px 8px",borderRadius:h.borderRadiusSM,background:p===e.model.uid?h.controlItemBgHover:"transparent",transition:"background 0.2s ease"},onMouseEnter:function(){return O(e.model)},onMouseLeave:function(){return P(e.model)}},o().createElement("div",{style:{minWidth:0,flex:1,whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis",color:h.colorText}},e.title),e.sameCollection?null:o().createElement("div",{style:{flex:"0 0 152px"},onMouseDown:function(e){e.preventDefault(),e.stopPropagation(),null==l||l(!0)},onClick:function(e){e.preventDefault(),e.stopPropagation()}},o().createElement(E.Select,{size:"small",allowClear:!0,disabled:s,placeholder:n("Please select"),value:i,options:e.options,style:{width:"100%"},getPopupContainer:function(){return document.body},onChange:function(t){t?S(e.model.uid,[t]):w(e.model.uid)}})),e.sameCollection?o().createElement("div",{onMouseDown:function(e){e.preventDefault(),e.stopPropagation()}},o().createElement(E.Switch,{size:"small",checked:!!r,disabled:s,onChange:function(t){if(!t)return void w(e.model.uid);var n=et(e.model);S(e.model.uid,[eo(n)])}})):null)}):o().createElement(E.Empty,{style:{width:200,padding:"8px 0"},description:n("No supported data blocks"),image:E.Empty.PRESENTED_IMAGE_SIMPLE}))}var ev=(0,s.defineAction)({name:"treeConnectDataBlocks",title:v("Connect data blocks"),uiMode:function(e){var t,n,r=e.model,l=ec(r,null==(n=r.context.filterManager)||null==(t=n.getConnectFieldsConfig)?void 0:t.call(n,r.uid));return{type:"select",key:"summary",props:{options:[{label:l,value:l}],dropdownRender:function(t,n,l){return o().createElement(ep,{model:r,t:e.t,setDropdownOpen:n,onSummaryChange:function(e){l(e)}})}}}},defaultParams:function(e){var t,n;return{summary:ec(e.model,null==(n=e.model.context.filterManager)||null==(t=n.getConnectFieldsConfig)?void 0:t.call(n,e.model.uid))}},beforeParamsSave:function(e,t){t.summary=t.summary||""},handler:function(){}});function ey(e,t,n,r,o,l,i){try{var a=e[l](i),u=a.value}catch(e){n(e);return}a.done?t(u):Promise.resolve(u).then(r,o)}function em(e){return function(){var t=this,n=arguments;return new Promise(function(r,o){var l=e.apply(t,n);function i(e){ey(l,r,o,i,a,"next",e)}function a(e){ey(l,r,o,i,a,"throw",e)}i(void 0)})}}function eh(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function eb(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function eg(e,t,n){return(eg="u">typeof Reflect&&Reflect.get?Reflect.get:function(e,t,n){var r=function(e,t){for(;!Object.prototype.hasOwnProperty.call(e,t)&&null!==(e=eS(e)););return e}(e,t);if(r){var o=Object.getOwnPropertyDescriptor(r,t);return o.get?o.get.call(n||e):o.value}})(e,t,n||e)}function eS(e){return(eS=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}function ew(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{},r=Object.keys(n);"function"==typeof Object.getOwnPropertySymbols&&(r=r.concat(Object.getOwnPropertySymbols(n).filter(function(e){return Object.getOwnPropertyDescriptor(n,e).enumerable}))),r.forEach(function(t){eb(e,t,n[t])})}return e}function eO(e,t){return t=null!=t?t:{},Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):(function(e){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t.push.apply(t,n)}return t})(Object(t)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(t,n))}),e}function eP(e,t){return(eP=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function ek(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch(e){}return(ek=function(){return!!e})()}function ex(e,t){var n,r,o,l={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]},i=Object.create(("function"==typeof Iterator?Iterator:Object).prototype),a=Object.defineProperty;return a(i,"next",{value:u(0)}),a(i,"throw",{value:u(1)}),a(i,"return",{value:u(2)}),"function"==typeof Symbol&&a(i,Symbol.iterator,{value:function(){return this}}),i;function u(a){return function(u){var c=[a,u];if(n)throw TypeError("Generator is already executing.");for(;i&&(i=0,c[0]&&(l=0)),l;)try{if(n=1,r&&(o=2&c[0]?r.return:c[0]?r.throw||((o=r.return)&&o.call(r),0):r.next)&&!(o=o.call(r,c[1])).done)return o;switch(r=0,o&&(c=[2&c[0],o.value]),c[0]){case 0:case 1:o=c;break;case 4:return l.label++,{value:c[1],done:!1};case 5:l.label++,r=c[1],c=[0];continue;case 7:c=l.ops.pop(),l.trys.pop();continue;default:if(!(o=(o=l.trys).length>0&&o[o.length-1])&&(6===c[0]||2===c[0])){l=0;continue}if(3===c[0]&&(!o||c[1]>o[0]&&c[1]<o[3])){l.label=c[1];break}if(6===c[0]&&l.label<o[1]){l.label=o[1],o=c;break}if(o&&l.label<o[2]){l.label=o[2],l.ops.push(c);break}o[2]&&l.ops.pop(),l.trys.pop();continue}c=t.call(e,l)}catch(e){c=[6,e],r=0}finally{n=o=0}if(5&c[0])throw c[1];return{value:c[0]?c[1]:void 0,done:!0}}}}var ej=function(e){var t,r;if("function"!=typeof e&&null!==e)throw TypeError("Super expression must either be null or a function");function l(){var e,t,n;if(!(this instanceof l))throw TypeError("Cannot call a class as a function");return t=l,n=arguments,t=eS(t),eb(e=function(e,t){var n;if(t&&("object"==((n=t)&&"u">typeof Symbol&&n.constructor===Symbol?"symbol":typeof n)||"function"==typeof t))return t;if(void 0===e)throw ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(this,ek()?Reflect.construct(t,n||[],eS(this).constructor):t.apply(this,n)),"settingsMenuLevel",2),eb(e,"selectedKeys",q.observable.ref([])),eb(e,"selectedFilterValues",q.observable.ref([])),eb(e,"defaultProps",{searchable:!0,defaultExpandAll:!1,includeDescendants:!0}),e}return l.prototype=Object.create(e&&e.prototype,{constructor:{value:l,writable:!0,configurable:!0}}),e&&eP(l,e),t=[{key:"onInit",value:function(e){var t=this;eg(eS(l.prototype),"onInit",this).call(this,e),this.context.defineProperty("collectionField",{get:function(){var e,n;return null==(n=t.collection)||null==(e=n.getField)?void 0:e.call(n,t.getTitleFieldName())},cache:!1})}},{key:"operator",get:function(){var e;return(null==(e=this.props)?void 0:e.includeDescendants)===!1?"$eq":"$in"}},{key:"createResource",value:function(){var e,t=this.context.createResource(s.MultiRecordResource);return t.setPageSize(this.getPageSize()),(null==(e=this.collection)?void 0:e.template)==="tree"&&t.setRequestParameters({tree:!0}),t}},{key:"getPageSize",value:function(){var e;return(null==(e=this.props)?void 0:e.pageSize)||200}},{key:"resource",get:function(){return eg(eS(l.prototype),"resource",this)}},{key:"getTitleFieldName",value:function(){var e,t,n;return(null==(t=this.props)||null==(e=t.fieldNames)?void 0:e.title)||(null==(n=this.collection)?void 0:n.filterTargetKey)}},{key:"getFieldNames",value:function(){var e,t;return ew({key:null==(e=this.collection)?void 0:e.filterTargetKey,title:this.getTitleFieldName(),children:"children"},(null==(t=this.props)?void 0:t.fieldNames)||{})}},{key:"setSelectedKeys",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[];this.selectedKeys.value=Array.isArray(e)?e:[]}},{key:"setSelectedFilterValues",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[];this.selectedFilterValues.value=Array.isArray(e)?e:[]}},{key:"getFilterValue",value:function(){var e,t;return(null==(e=this.props)?void 0:e.includeDescendants)===!1?null==(t=this.selectedKeys.value)?void 0:t[0]:this.selectedFilterValues.value}},{key:"getTitleFieldSettingsInitParams",value:function(){var e,t,n=arguments.length>0&&void 0!==arguments[0]?arguments[0]:this.getTitleFieldName();return{dataSourceKey:null==(e=this.collection)?void 0:e.dataSourceKey,collectionName:null==(t=this.collection)?void 0:t.name,fieldPath:n}}},{key:"syncTitleFieldSubModel",value:function(){return em(function(){var e,t,r,o,l,i,a,u,c,f,d,p,v,y,m,h,b,g,S,w=arguments;return ex(this,function(O){switch(O.label){case 0:if(e=w.length>0&&void 0!==w[0]?w[0]:this.getTitleFieldName(),t=w.length>1&&void 0!==w[1]?w[1]:{},u=null==(o=this.collection)||null==(r=o.getField)?void 0:r.call(o,e),c=this.getTitleFieldSettingsInitParams(e),!u||!c.dataSourceKey||!c.collectionName||!c.fieldPath||(f=eO(ew({},this.context),{engine:this.flowEngine,model:this,collectionField:u}),!(null==(d=s.DisplayItemModel.getDefaultBindingByField(f,u))?void 0:d.modelName)))return[2,null];if(v=null==(p=this.subModels.field)||null==(i=p.getStepParams)||null==(l=i.call(p,"fieldSettings","init"))?void 0:l.fieldPath,y=(null==p||null==(a=p.getStepParams)?void 0:a.call(p,"fieldBinding","use"))||(null==p?void 0:p.use),m=eO(ew({},"function"==typeof d.defaultProps?d.defaultProps(f,u):d.defaultProps,u.getComponentProps()),{clickToOpen:!1}),!(p&&v===e&&y===d.modelName))return[3,5];return p.setProps(m),p.setStepParams(eO(ew({},p.getStepParams()),{fieldBinding:eO(ew({},p.getStepParams("fieldBinding")||{}),{use:d.modelName}),fieldSettings:{init:c}})),[4,p.dispatchEvent("beforeRender",void 0,{useCache:!1})];case 1:if(O.sent(),!t.persist)return[3,4];return[4,null==(h=p.save)?void 0:h.call(p)];case 2:return O.sent(),[4,this.save()];case 3:O.sent(),O.label=4;case 4:return[2,p];case 5:if((null==p?void 0:p.uid)&&(null==(b=p.invalidateFlowCache)||b.call(p,"beforeRender",!0),this.flowEngine.removeModelWithSubModels(p.uid)),g=this.setSubModel("field",{uid:null==p?void 0:p.uid,use:n.FieldModel,props:m,stepParams:{fieldBinding:{use:d.modelName},fieldSettings:{init:c}}}),!t.persist)return[3,7];return[4,null==(S=g.save)?void 0:S.call(g)];case 6:O.sent(),O.label=7;case 7:return[4,g.dispatchEvent("beforeRender",void 0,{useCache:!1})];case 8:if(O.sent(),!t.persist)return[3,10];return[4,this.save()];case 9:O.sent(),O.label=10;case 10:return[2,g]}})}).apply(this,arguments)}},{key:"renderComponent",value:function(){return o().createElement(L,{model:this})}}],r=[{key:"getExtraMenuItems",value:function(e,t){var n=this,r=this;return em(function(){return ex(this,function(o){switch(o.label){case 0:return[4,eg(eS(l),"getExtraMenuItems",n).call(r,e,t)];case 1:return[2,o.sent().filter(function(e){return"block-reference:convert-to-template"!==e.key})]}})})()}}],t&&eh(l.prototype,t),r&&eh(l,r),l}(n.CollectionBlockModel);function eE(e,t,n,r,o,l,i){try{var a=e[l](i),u=a.value}catch(e){n(e);return}a.done?t(u):Promise.resolve(u).then(r,o)}function eC(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function eF(e){return(eF=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}function eM(e,t){return(eM=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function eT(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch(e){}return(eT=function(){return!!e})()}eb(ej,"scene",n.BlockSceneEnum.filter),ej.registerFlow({key:"titleFieldModelSync",on:"beforeRender",steps:{syncModel:{hideInSettings:function(){return!0},handler:function(e){return em(function(){return ex(this,function(t){switch(t.label){case 0:return[4,e.model.syncTitleFieldSubModel()];case 1:return t.sent(),[2]}})})()}}}}),ej.registerFlow({key:"treeSettings",sort:1e3,title:v("Tree settings"),steps:{searchable:{title:v("Searchable"),uiMode:{type:"switch",key:"searchable"},defaultParams:{searchable:!0},handler:function(e,t){e.model.setProps({searchable:!1!==t.searchable})}},defaultExpandAll:{title:v("Expand all"),uiMode:{type:"switch",key:"defaultExpandAll"},defaultParams:{defaultExpandAll:!1},handler:function(e,t){e.model.setProps({defaultExpandAll:!0===t.defaultExpandAll})}},includeDescendants:{title:v("Include child nodes when filtering"),uiMode:{type:"switch",key:"includeDescendants"},defaultParams:{includeDescendants:!0},handler:function(e,t){var n,r;e.model.setProps({includeDescendants:!1!==t.includeDescendants}),null==(r=e.model.context.filterManager)||null==(n=r.refreshTargetsByFilter)||n.call(r,e.model.uid)}},titleField:{title:v("Title field"),uiMode:function(e){var t,r=e.model.collection,o=e.app.dataSourceManager;return{type:"select",key:"titleField",props:{options:((null==r||null==(t=r.getFields)?void 0:t.call(r))||[]).filter(function(e){return(0,n.isTitleField)(o,e.options||e)}).map(function(e){return{label:e.title||e.name,value:e.name}})}}},defaultParams:function(e){return{titleField:e.model.getTitleFieldName()}},beforeParamsSave:function(e,t,n){return em(function(){var r;return ex(this,function(o){switch(o.label){case 0:if(t.titleField===n.titleField)return[2];return e.model.setProps({fieldNames:eO(ew({},(null==(r=e.model.props)?void 0:r.fieldNames)||{}),{title:t.titleField})}),[4,e.model.syncTitleFieldSubModel(t.titleField,{persist:!0})];case 1:return o.sent(),[2]}})})()},handler:function(e,t){var n;e.model.setProps({fieldNames:eO(ew({},(null==(n=e.model.props)?void 0:n.fieldNames)||{}),{title:t.titleField})})}},pageSize:{title:v("Root records per page"),uiMode:{type:"select",key:"pageSize",props:{options:[10,20,50,100,200,500].map(function(e){return{label:String(e),value:e}})}},defaultParams:function(e){return{pageSize:e.model.getPageSize()}},handler:function(e,t){e.model.setProps({pageSize:t.pageSize}),e.model.resource.loading=!0,e.model.resource.setPage(1),e.model.resource.setPageSize(t.pageSize)}},dataScope:{use:"dataScope",title:v("Data scope")},connectFields:{use:ev.name,title:v("Connect data blocks")}}}),ej.registerFlow({key:"dataLoadingModeSettings",steps:{}}),ej.define({label:v("Tree"),hide:!0,searchable:!0,searchPlaceholder:v("Search"),createModelOptions:{use:"TreeBlockModel"},sort:1100});var eI=function(e){var t,n;if("function"!=typeof e&&null!==e)throw TypeError("Super expression must either be null or a function");function r(){var e,t;if(!(this instanceof r))throw TypeError("Cannot call a class as a function");return e=r,t=arguments,e=eF(e),function(e,t){var n;if(t&&("object"==((n=t)&&"u">typeof Symbol&&n.constructor===Symbol?"symbol":typeof n)||"function"==typeof t))return t;if(void 0===e)throw ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(this,eT()?Reflect.construct(e,t||[],eF(this).constructor):e.apply(this,t))}return r.prototype=Object.create(e&&e.prototype,{constructor:{value:r,writable:!0,configurable:!0}}),e&&eM(r,e),t=[{key:"renderComponent",value:function(){return null}}],n=[{key:"defineChildren",value:function(e){var t;return(t=function(){return function(e,t){var n,r,o,l={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]},i=Object.create(("function"==typeof Iterator?Iterator:Object).prototype),a=Object.defineProperty;return a(i,"next",{value:u(0)}),a(i,"throw",{value:u(1)}),a(i,"return",{value:u(2)}),"function"==typeof Symbol&&a(i,Symbol.iterator,{value:function(){return this}}),i;function u(a){return function(u){var c=[a,u];if(n)throw TypeError("Generator is already executing.");for(;i&&(i=0,c[0]&&(l=0)),l;)try{if(n=1,r&&(o=2&c[0]?r.return:c[0]?r.throw||((o=r.return)&&o.call(r),0):r.next)&&!(o=o.call(r,c[1])).done)return o;switch(r=0,o&&(c=[2&c[0],o.value]),c[0]){case 0:case 1:o=c;break;case 4:return l.label++,{value:c[1],done:!1};case 5:l.label++,r=c[1],c=[0];continue;case 7:c=l.ops.pop(),l.trys.pop();continue;default:if(!(o=(o=l.trys).length>0&&o[o.length-1])&&(6===c[0]||2===c[0])){l=0;continue}if(3===c[0]&&(!o||c[1]>o[0]&&c[1]<o[3])){l.label=c[1];break}if(6===c[0]&&l.label<o[1]){l.label=o[1],o=c;break}if(o&&l.label<o[2]){l.label=o[2],l.ops.push(c);break}o[2]&&l.ops.pop(),l.trys.pop();continue}c=t.call(e,l)}catch(e){c=[6,e],r=0}finally{n=o=0}if(5&c[0])throw c[1];return{value:c[0]?c[1]:void 0,done:!0}}}}(this,function(t){switch(t.label){case 0:return[4,ej.defineChildren(e)];case 1:return[2,t.sent()]}})},function(){var e=this,n=arguments;return new Promise(function(r,o){var l=t.apply(e,n);function i(e){eE(l,r,o,i,a,"next",e)}function a(e){eE(l,r,o,i,a,"throw",e)}i(void 0)})})()}}],t&&eC(r.prototype,t),n&&eC(r,n),r}(n.FilterBlockModel);function eD(e,t,n,r,o,l,i){try{var a=e[l](i),u=a.value}catch(e){n(e);return}a.done?t(u):Promise.resolve(u).then(r,o)}function eA(e,t,n){return(eA=eR()?Reflect.construct:function(e,t,n){var r=[null];r.push.apply(r,t);var o=new(Function.bind.apply(e,r));return n&&e_(o,n.prototype),o}).apply(null,arguments)}e="scene",t=n.BlockSceneEnum.filter,e in eI?Object.defineProperty(eI,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):eI[e]=t,eI.define({label:v("Tree"),sort:1100});function eB(e){return(eB=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}function e_(e,t){return(e_=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function eN(e){var t="function"==typeof Map?new Map:void 0;return(eN=function(e){if(null===e||-1===Function.toString.call(e).indexOf("[native code]"))return e;if("function"!=typeof e)throw TypeError("Super expression must either be null or a function");if(void 0!==t){if(t.has(e))return t.get(e);t.set(e,n)}function n(){return eA(e,arguments,eB(this).constructor)}return n.prototype=Object.create(e.prototype,{constructor:{value:n,enumerable:!1,writable:!0,configurable:!0}}),e_(n,e)})(e)}function eR(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch(e){}return(eR=function(){return!!e})()}var eK=function(e){var t;if("function"!=typeof e&&null!==e)throw TypeError("Super expression must either be null or a function");function n(){var e,t;if(!(this instanceof n))throw TypeError("Cannot call a class as a function");return e=n,t=arguments,e=eB(e),function(e,t){var n;if(t&&("object"==((n=t)&&"u">typeof Symbol&&n.constructor===Symbol?"symbol":typeof n)||"function"==typeof t))return t;if(void 0===e)throw ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(this,eR()?Reflect.construct(e,t||[],eB(this).constructor):e.apply(this,t))}return n.prototype=Object.create(e&&e.prototype,{constructor:{value:n,writable:!0,configurable:!0}}),e&&e_(n,e),t=[{key:"load",value:function(){var e;return(e=function(){return function(e,t){var n,r,o,l={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]},i=Object.create(("function"==typeof Iterator?Iterator:Object).prototype),a=Object.defineProperty;return a(i,"next",{value:u(0)}),a(i,"throw",{value:u(1)}),a(i,"return",{value:u(2)}),"function"==typeof Symbol&&a(i,Symbol.iterator,{value:function(){return this}}),i;function u(a){return function(u){var c=[a,u];if(n)throw TypeError("Generator is already executing.");for(;i&&(i=0,c[0]&&(l=0)),l;)try{if(n=1,r&&(o=2&c[0]?r.return:c[0]?r.throw||((o=r.return)&&o.call(r),0):r.next)&&!(o=o.call(r,c[1])).done)return o;switch(r=0,o&&(c=[2&c[0],o.value]),c[0]){case 0:case 1:o=c;break;case 4:return l.label++,{value:c[1],done:!1};case 5:l.label++,r=c[1],c=[0];continue;case 7:c=l.ops.pop(),l.trys.pop();continue;default:if(!(o=(o=l.trys).length>0&&o[o.length-1])&&(6===c[0]||2===c[0])){l=0;continue}if(3===c[0]&&(!o||c[1]>o[0]&&c[1]<o[3])){l.label=c[1];break}if(6===c[0]&&l.label<o[1]){l.label=o[1],o=c;break}if(o&&l.label<o[2]){l.label=o[2],l.ops.push(c);break}o[2]&&l.ops.pop(),l.trys.pop();continue}c=t.call(e,l)}catch(e){c=[6,e],r=0}finally{n=o=0}if(5&c[0])throw c[1];return{value:c[0]?c[1]:void 0,done:!0}}}}(this,function(e){return this.flowEngine.registerActions({treeConnectDataBlocks:ev}),this.flowEngine.registerModels({TreeBlockModel:ej,TreeFilterBlockMenuModel:eI}),this.app.addComponents({Tree:N}),this.app.schemaSettingsManager.add(w),this.app.addScopes({useTreeProps:x}),this.app.schemaInitializerManager.addItem("page:addBlock","filterBlocks.".concat(K.name),K),this.app.schemaInitializerManager.addItem("popup:common:addBlock","filterBlocks.".concat(K.name),K),this.app.schemaInitializerManager.addItem("popup:tableSelector:addBlock","filterBlocks.".concat(K.name),K),[2]})},function(){var t=this,n=arguments;return new Promise(function(r,o){var l=e.apply(t,n);function i(e){eD(l,r,o,i,a,"next",e)}function a(e){eD(l,r,o,i,a,"throw",e)}i(void 0)})}).call(this)}}],function(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}(n.prototype,t),n}(eN(n.Plugin)),eq=eK}(),b}()});
@@ -7,5 +7,7 @@
7
7
  * For more information, please refer to: https://www.nocobase.com/agreement.
8
8
  */
9
9
  export declare function useTreeTranslation(): import("react-i18next").UseTranslationResponse<string[], undefined>;
10
+ export declare function useT(): (str: string) => any;
11
+ export declare function tExpr(key: string): string;
10
12
  export declare function generateNTemplate(key: string): string;
11
13
  export declare function generateCommonTemplate(key: string): string;
@@ -0,0 +1,46 @@
1
+ /**
2
+ * This file is part of the NocoBase (R) project.
3
+ * Copyright (c) 2020-2024 NocoBase Co., Ltd.
4
+ * Authors: NocoBase Team.
5
+ *
6
+ * This project is dual-licensed under AGPL-3.0 and NocoBase Commercial License.
7
+ * For more information, please refer to: https://www.nocobase.com/agreement.
8
+ */
9
+ import { CollectionBlockModel } from '@nocobase/client';
10
+ import { MultiRecordResource } from '@nocobase/flow-engine';
11
+ import React from 'react';
12
+ export declare class TreeBlockModel extends CollectionBlockModel {
13
+ static scene: import("@nocobase/client").BlockSceneType;
14
+ static getExtraMenuItems(model: any, t: any): Promise<import("@nocobase/flow-engine").FlowModelExtraMenuItem[]>;
15
+ settingsMenuLevel: number;
16
+ selectedKeys: {
17
+ value: React.Key[];
18
+ };
19
+ selectedFilterValues: {
20
+ value: React.Key[];
21
+ };
22
+ defaultProps: {
23
+ searchable: boolean;
24
+ defaultExpandAll: boolean;
25
+ includeDescendants: boolean;
26
+ };
27
+ onInit(options: any): void;
28
+ get operator(): "$eq" | "$in";
29
+ createResource(): MultiRecordResource<unknown>;
30
+ getPageSize(): any;
31
+ get resource(): MultiRecordResource<any>;
32
+ getTitleFieldName(): any;
33
+ getFieldNames(): any;
34
+ setSelectedKeys(keys?: React.Key[]): void;
35
+ setSelectedFilterValues(values?: React.Key[]): void;
36
+ getFilterValue(): React.Key | React.Key[];
37
+ getTitleFieldSettingsInitParams(titleFieldName?: any): {
38
+ dataSourceKey: any;
39
+ collectionName: any;
40
+ fieldPath: any;
41
+ };
42
+ syncTitleFieldSubModel(titleFieldName?: any, options?: {
43
+ persist?: boolean;
44
+ }): Promise<any>;
45
+ renderComponent(): React.JSX.Element;
46
+ }
@@ -0,0 +1,14 @@
1
+ /**
2
+ * This file is part of the NocoBase (R) project.
3
+ * Copyright (c) 2020-2024 NocoBase Co., Ltd.
4
+ * Authors: NocoBase Team.
5
+ *
6
+ * This project is dual-licensed under AGPL-3.0 and NocoBase Commercial License.
7
+ * For more information, please refer to: https://www.nocobase.com/agreement.
8
+ */
9
+ import { FilterBlockModel } from '@nocobase/client';
10
+ export declare class TreeFilterBlockMenuModel extends FilterBlockModel {
11
+ static scene: import("@nocobase/client").BlockSceneType;
12
+ static defineChildren(ctx: any): Promise<any[]>;
13
+ renderComponent(): any;
14
+ }
@@ -0,0 +1,13 @@
1
+ /**
2
+ * This file is part of the NocoBase (R) project.
3
+ * Copyright (c) 2020-2024 NocoBase Co., Ltd.
4
+ * Authors: NocoBase Team.
5
+ *
6
+ * This project is dual-licensed under AGPL-3.0 and NocoBase Commercial License.
7
+ * For more information, please refer to: https://www.nocobase.com/agreement.
8
+ */
9
+ import React from 'react';
10
+ import type { TreeBlockModel } from '../TreeBlockModel';
11
+ export declare const TreeBlockView: React.MemoExoticComponent<import("@formily/reactive-react").ReactFC<{
12
+ model: TreeBlockModel;
13
+ }>>;
@@ -0,0 +1,11 @@
1
+ /**
2
+ * This file is part of the NocoBase (R) project.
3
+ * Copyright (c) 2020-2024 NocoBase Co., Ltd.
4
+ * Authors: NocoBase Team.
5
+ *
6
+ * This project is dual-licensed under AGPL-3.0 and NocoBase Commercial License.
7
+ * For more information, please refer to: https://www.nocobase.com/agreement.
8
+ */
9
+ export { TreeBlockModel } from './TreeBlockModel';
10
+ export { TreeFilterBlockMenuModel } from './TreeFilterBlockMenuModel';
11
+ export { treeConnectDataBlocks } from './treeConnectDataBlocks';
@@ -0,0 +1,9 @@
1
+ /**
2
+ * This file is part of the NocoBase (R) project.
3
+ * Copyright (c) 2020-2024 NocoBase Co., Ltd.
4
+ * Authors: NocoBase Team.
5
+ *
6
+ * This project is dual-licensed under AGPL-3.0 and NocoBase Commercial License.
7
+ * For more information, please refer to: https://www.nocobase.com/agreement.
8
+ */
9
+ export declare const treeConnectDataBlocks: import("@nocobase/flow-engine").ActionDefinition<import("@nocobase/flow-engine").FlowModel<import("@nocobase/flow-engine").DefaultStructure>, import("@nocobase/flow-engine").FlowContext>;
@@ -8,15 +8,17 @@
8
8
  */
9
9
 
10
10
  module.exports = {
11
- "@nocobase/client": "2.1.0-alpha.14",
11
+ "@nocobase/client": "2.1.0-alpha.15",
12
+ "@nocobase/flow-engine": "2.1.0-alpha.15",
12
13
  "react-i18next": "11.18.6",
13
- "@nocobase/server": "2.1.0-alpha.14",
14
+ "@nocobase/server": "2.1.0-alpha.15",
14
15
  "ahooks": "3.7.8",
15
16
  "antd": "5.24.2",
16
17
  "lodash": "4.17.21",
17
18
  "react": "18.2.0",
18
- "@nocobase/plugin-block-tree": "2.1.0-alpha.14",
19
+ "@nocobase/plugin-block-tree": "2.1.0-alpha.15",
19
20
  "@ant-design/icons": "5.6.1",
20
- "@nocobase/utils": "2.1.0-alpha.14",
21
+ "@formily/reactive": "2.3.7",
22
+ "@nocobase/utils": "2.1.0-alpha.15",
21
23
  "@formily/react": "2.3.7"
22
24
  };
@@ -1,7 +1,15 @@
1
1
  {
2
+ "Connect data blocks": "Connect data blocks",
3
+ "Configured": "Configured",
2
4
  "Expand all": "Expand all",
5
+ "Foreign key": "Foreign key",
6
+ "No supported data blocks": "No supported data blocks",
3
7
  "Root records per page": "Root records per page",
4
8
  "Search": "Search",
5
9
  "Searchable": "Searchable",
6
- "Tree": "Tree"
7
- }
10
+ "Select field": "Select field",
11
+ "Tree settings": "Tree settings",
12
+ "Tree": "Tree",
13
+ "Unconnected": "Unconnected",
14
+ "Include child nodes when filtering": "Include child nodes when filtering"
15
+ }
@@ -1,7 +1,15 @@
1
1
  {
2
+ "Connect data blocks": "连接数据区块",
3
+ "Configured": "已配置",
2
4
  "Expand all": "展开所有",
5
+ "Foreign key": "外键",
6
+ "No supported data blocks": "暂无可连接的数据区块",
3
7
  "Root records per page": "每页根记录数量",
4
8
  "Search": "搜索",
5
9
  "Searchable": "搜索",
6
- "Tree": ""
7
- }
10
+ "Select field": "选择字段",
11
+ "Tree settings": "树区块设置",
12
+ "Tree": "树",
13
+ "Unconnected": "未连接",
14
+ "Include child nodes when filtering": "筛选时包含子节点"
15
+ }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@nocobase/plugin-block-tree",
3
- "version": "2.1.0-alpha.14",
3
+ "version": "2.1.0-alpha.15",
4
4
  "main": "dist/server/index.js",
5
5
  "displayName": "Block: Tree",
6
6
  "displayName.zh-CN": "区块:树",
@@ -23,5 +23,5 @@
23
23
  "Blocks"
24
24
  ],
25
25
  "license": "Apache-2.0",
26
- "gitHead": "d8735b541de0ff9557bba704de49c799b4962672"
26
+ "gitHead": "7c86e75b0af4b9f532c8ebf5ef96a7423b0ab60e"
27
27
  }