@nocobase/plugin-departments 2.1.0-beta.13 → 2.1.0-beta.14

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.
@@ -27,8 +27,10 @@ export declare const departmentCollection: {
27
27
  title: string;
28
28
  'x-component'?: undefined;
29
29
  required?: undefined;
30
+ 'x-read-pretty'?: undefined;
30
31
  'x-component-props'?: undefined;
31
32
  };
33
+ isForeignKey?: undefined;
32
34
  collectionName?: undefined;
33
35
  foreignKey?: undefined;
34
36
  target?: undefined;
@@ -47,6 +49,32 @@ export declare const departmentCollection: {
47
49
  title: string;
48
50
  'x-component': string;
49
51
  required: boolean;
52
+ 'x-read-pretty'?: undefined;
53
+ 'x-component-props'?: undefined;
54
+ };
55
+ primaryKey?: undefined;
56
+ autoIncrement?: undefined;
57
+ isForeignKey?: undefined;
58
+ collectionName?: undefined;
59
+ foreignKey?: undefined;
60
+ target?: undefined;
61
+ targetKey?: undefined;
62
+ treeParent?: undefined;
63
+ through?: undefined;
64
+ otherKey?: undefined;
65
+ sourceKey?: undefined;
66
+ scope?: undefined;
67
+ } | {
68
+ name: string;
69
+ type: string;
70
+ interface: string;
71
+ isForeignKey: boolean;
72
+ uiSchema: {
73
+ type: string;
74
+ title: string;
75
+ 'x-component': string;
76
+ 'x-read-pretty': boolean;
77
+ required?: undefined;
50
78
  'x-component-props'?: undefined;
51
79
  };
52
80
  primaryKey?: undefined;
@@ -74,10 +102,12 @@ export declare const departmentCollection: {
74
102
  'x-component': string;
75
103
  type?: undefined;
76
104
  required?: undefined;
105
+ 'x-read-pretty'?: undefined;
77
106
  'x-component-props'?: undefined;
78
107
  };
79
108
  primaryKey?: undefined;
80
109
  autoIncrement?: undefined;
110
+ isForeignKey?: undefined;
81
111
  through?: undefined;
82
112
  otherKey?: undefined;
83
113
  sourceKey?: undefined;
@@ -105,9 +135,11 @@ export declare const departmentCollection: {
105
135
  };
106
136
  type?: undefined;
107
137
  required?: undefined;
138
+ 'x-read-pretty'?: undefined;
108
139
  };
109
140
  primaryKey?: undefined;
110
141
  autoIncrement?: undefined;
142
+ isForeignKey?: undefined;
111
143
  treeParent?: undefined;
112
144
  scope?: undefined;
113
145
  } | {
@@ -136,9 +168,11 @@ export declare const departmentCollection: {
136
168
  };
137
169
  type?: undefined;
138
170
  required?: undefined;
171
+ 'x-read-pretty'?: undefined;
139
172
  };
140
173
  primaryKey?: undefined;
141
174
  autoIncrement?: undefined;
175
+ isForeignKey?: undefined;
142
176
  treeParent?: undefined;
143
177
  })[];
144
178
  };
@@ -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("@formily/core"),require("react-i18next"),require("react"),require("@emotion/css"),require("lodash"),require("@nocobase/plugin-acl/client"),require("@formily/shared"),require("@nocobase/client"),require("@formily/react"),require("@nocobase/utils/client"),require("@ant-design/icons"),require("antd")):"function"==typeof define&&define.amd?define("@nocobase/plugin-departments",["@formily/core","react-i18next","react","@emotion/css","lodash","@nocobase/plugin-acl/client","@formily/shared","@nocobase/client","@formily/react","@nocobase/utils/client","@ant-design/icons","antd"],t):"object"==typeof exports?exports["@nocobase/plugin-departments"]=t(require("@formily/core"),require("react-i18next"),require("react"),require("@emotion/css"),require("lodash"),require("@nocobase/plugin-acl/client"),require("@formily/shared"),require("@nocobase/client"),require("@formily/react"),require("@nocobase/utils/client"),require("@ant-design/icons"),require("antd")):e["@nocobase/plugin-departments"]=t(e["@formily/core"],e["react-i18next"],e.react,e["@emotion/css"],e.lodash,e["@nocobase/plugin-acl/client"],e["@formily/shared"],e["@nocobase/client"],e["@formily/react"],e["@nocobase/utils/client"],e["@ant-design/icons"],e.antd)}(self,function(e,t,n,r,o,i,a,l,c,u,s,p){return function(){"use strict";var f={703:function(e){var t=function(e){var t,r,o;return!!(t=e)&&"object"==typeof t&&(r=e,"[object RegExp]"!==(o=Object.prototype.toString.call(r))&&"[object Date]"!==o&&r.$$typeof!==n)},n="function"==typeof Symbol&&Symbol.for?Symbol.for("react.element"):60103;function r(e,t){return!1!==t.clone&&t.isMergeableObject(e)?l(Array.isArray(e)?[]:{},e,t):e}function o(e,t,n){return e.concat(t).map(function(e){return r(e,n)})}function i(e){return Object.keys(e).concat(Object.getOwnPropertySymbols?Object.getOwnPropertySymbols(e).filter(function(t){return Object.propertyIsEnumerable.call(e,t)}):[])}function a(e,t){try{return t in e}catch(e){return!1}}function l(e,n,c){(c=c||{}).arrayMerge=c.arrayMerge||o,c.isMergeableObject=c.isMergeableObject||t,c.cloneUnlessOtherwiseSpecified=r;var u,s,p=Array.isArray(n);return p!==Array.isArray(e)?r(n,c):p?c.arrayMerge(e,n,c):(s={},(u=c).isMergeableObject(e)&&i(e).forEach(function(t){s[t]=r(e[t],u)}),i(n).forEach(function(t){a(e,t)&&!(Object.hasOwnProperty.call(e,t)&&Object.propertyIsEnumerable.call(e,t))||(a(e,t)&&u.isMergeableObject(n[t])?s[t]=(function(e,t){if(!t.customMerge)return l;var n=t.customMerge(e);return"function"==typeof n?n:l})(t,u)(e[t],n[t],u):s[t]=r(n[t],u))}),s)}l.all=function(e,t){if(!Array.isArray(e))throw Error("first argument should be an array");return e.reduce(function(e,n){return l(e,n,t)},{})},e.exports=l},482:function(e){e.exports=s},964:function(e){e.exports=r},563:function(t){t.exports=e},505:function(e){e.exports=c},875:function(e){e.exports=a},772:function(e){e.exports=l},465:function(e){e.exports=i},584:function(e){e.exports=u},721:function(e){e.exports=p},467:function(e){e.exports=o},156:function(e){e.exports=n},238:function(e){e.exports=t}},d={};function m(e){var t=d[e];if(void 0!==t)return t.exports;var n=d[e]={exports:{}};return f[e](n,n.exports,m),n.exports}m.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return m.d(t,{a:t}),t},m.d=function(e,t){for(var n in t)m.o(t,n)&&!m.o(e,n)&&Object.defineProperty(e,n,{enumerable:!0,get:t[n]})},m.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},m.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})};var y={};return!function(){m.r(y),m.d(y,{PluginDepartmentsClient:function(){return t6},default:function(){return t4}});var e=m(772),t=m(584),n=m(156),r=m.n(n),o=m(721),i=m(482),a=m(238);function l(){return(0,a.useTranslation)(["departments","client"],{nsMode:"fallback"})}var c=function(){var t=l().t;return r().createElement(e.SchemaComponent,{scope:{t:t},schema:{type:"void",properties:{newDepartment:{type:"void",title:t("New department"),"x-component":"Action","x-component-props":{type:"text",icon:"PlusOutlined",style:{width:"100%",textAlign:"left"}},properties:{drawer:{type:"void","x-component":"Action.Drawer","x-decorator":"Form",title:t("New department"),properties:{title:{"x-component":"CollectionField","x-decorator":"FormItem",required:!0},parent:{"x-component":"CollectionField","x-decorator":"FormItem","x-collection-field":"departments.parent","x-component-props":{component:"DepartmentSelect"}},roles:{"x-component":"CollectionField","x-decorator":"FormItem","x-collection-field":"departments.roles"},footer:{type:"void","x-component":"Action.Drawer.Footer",properties:{cancel:{title:'{{t("Cancel")}}',"x-component":"Action","x-component-props":{useAction:"{{ cm.useCancelAction }}"}},submit:{title:'{{t("Submit")}}',"x-component":"Action","x-component-props":{type:"primary",useAction:"{{ useCreateDepartment }}"}}}}}}}}}}})},u=m(875);function s(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){s(e,t,n[t])})}return e}function f(e,t){return t=null!=t?t:{},Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):(function(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);n.push.apply(n,r)}return n})(Object(t)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(t,n))}),e}var d={type:"object",properties:s({},(0,u.uid)(),{type:"void","x-component":"Action.Drawer","x-decorator":"Form","x-decorator-props":{useValues:function(t){var n=(0,e.useActionContext)(),r=(0,e.useRecord)();return(0,e.useRequest)(function(){return Promise.resolve({data:{parent:p({},r)}})},f(p({},t),{refreshDeps:[n.visible]}))}},title:'{{t("New sub department")}}',properties:{title:{"x-component":"CollectionField","x-decorator":"FormItem"},parent:{"x-component":"CollectionField","x-decorator":"FormItem","x-collection-field":"departments.parent","x-component-props":{component:"DepartmentSelect"}},roles:{"x-component":"CollectionField","x-decorator":"FormItem","x-collection-field":"departments.roles"},footer:{type:"void","x-component":"Action.Drawer.Footer",properties:{cancel:{title:'{{t("Cancel")}}',"x-component":"Action","x-component-props":{useAction:"{{ cm.useCancelAction }}"}},submit:{title:'{{t("Submit")}}',"x-component":"Action","x-component-props":{type:"primary",useAction:"{{ useCreateDepartment }}"}}}}}})},b={type:"object",properties:s({},(0,u.uid)(),{type:"void","x-component":"Action.Drawer","x-decorator":"Form","x-decorator-props":{useValues:function(t){var r=(0,e.useAPIClient)(),o=(0,e.useActionContext)(),i=(0,e.useRecord)(),a=(0,e.useRequest)(function(){return r.resource("departments").get({filterByTk:i.id,appends:["parent(recursively=true)","roles","owners"]}).then(function(e){return null==e?void 0:e.data})},f(p({},t),{manual:!0}));return(0,n.useEffect)(function(){o.visible&&a.run()},[o.visible]),a}},title:'{{t("Edit department")}}',properties:{title:{"x-component":"CollectionField","x-decorator":"FormItem"},parent:{"x-component":"CollectionField","x-decorator":"FormItem","x-collection-field":"departments.parent","x-component-props":{component:"SuperiorDepartmentSelect"}},roles:{"x-component":"CollectionField","x-decorator":"FormItem","x-collection-field":"departments.roles"},owners:{title:'{{t("Owners")}}',"x-component":"DepartmentOwnersField","x-decorator":"FormItem"},footer:{type:"void","x-component":"Action.Drawer.Footer",properties:{cancel:{title:'{{t("Cancel")}}',"x-component":"Action","x-component-props":{useAction:"{{ cm.useCancelAction }}"}},submit:{title:'{{t("Submit")}}',"x-component":"Action","x-component-props":{type:"primary",useAction:"{{ useUpdateDepartment }}"}}}}}})},v={type:"void",properties:{drawer:{title:'{{t("Select Owners")}}',"x-component":"Action.Drawer",properties:{resource:{type:"void","x-decorator":"FormItem","x-component":"RequestProvider",properties:{actions:{type:"void","x-component":"ActionBar","x-component-props":{style:{marginBottom:16}},properties:{filter:{type:"void",title:'{{ t("Filter") }}',default:{$and:[{username:{$includes:""}},{nickname:{$includes:""}}]},"x-action":"filter","x-component":"Filter.Action","x-use-component-props":"useFilterActionProps","x-component-props":{icon:"FilterOutlined"},"x-align":"left"}}},table:{type:"void","x-component":"Table.Void","x-component-props":{rowKey:"id",rowSelection:{type:"checkbox",onChange:"{{ handleSelect }}"},useDataSource:"{{ cm.useDataSourceFromRAC }}"},properties:{username:{type:"void","x-decorator":"Table.Column.Decorator","x-component":"Table.Column",properties:{username:{type:"string","x-component":"CollectionField","x-read-pretty":!0}}},nickname:{type:"void","x-decorator":"Table.Column.Decorator","x-component":"Table.Column",properties:{nickname:{type:"string","x-component":"CollectionField","x-read-pretty":!0}}},phone:{type:"void","x-decorator":"Table.Column.Decorator","x-component":"Table.Column",properties:{phone:{type:"string","x-component":"CollectionField","x-read-pretty":!0}}},email:{type:"void","x-decorator":"Table.Column.Decorator","x-component":"Table.Column",properties:{email:{type:"string","x-component":"CollectionField","x-read-pretty":!0}}}}}}},footer:{type:"void","x-component":"Action.Drawer.Footer",properties:{cancel:{title:'{{t("Cancel")}}',"x-component":"Action","x-component-props":{useAction:"{{ cm.useCancelAction }}"}},confirm:{title:'{{t("Confirm")}}',"x-component":"Action","x-component-props":{type:"primary",useAction:"{{ useSelectOwners }}"}}}}}}}},h={name:"departments",fields:[{type:"snowflakeId",name:"id",primaryKey:!0,autoIncrement:!0,interface:"id",uiSchema:{type:"id",title:'{{t("ID")}}'}},{name:"title",type:"string",interface:"input",uiSchema:{type:"string",title:'{{t("Department name")}}',"x-component":"Input",required:!0}},{name:"parent",type:"belongsTo",interface:"m2o",collectionName:"departments",foreignKey:"parentId",target:"departments",targetKey:"id",treeParent:!0,uiSchema:{title:'{{t("Superior department")}}',"x-component":"DepartmentSelect"}},{interface:"m2m",type:"belongsToMany",name:"roles",target:"roles",collectionName:"departments",through:"departmentsRoles",foreignKey:"departmentId",otherKey:"roleName",targetKey:"name",sourceKey:"id",uiSchema:{title:'{{t("Roles")}}',"x-component":"AssociationField","x-component-props":{multiple:!0,fieldNames:{label:"title",value:"name"}}}},{interface:"m2m",type:"belongsToMany",name:"owners",collectionName:"departments",target:"users",through:"departmentsUsers",foreignKey:"departmentId",otherKey:"userId",targetKey:"id",sourceKey:"id",scope:{isOwner:!0},uiSchema:{title:'{{t("Owners")}}',"x-component":"AssociationField","x-component-props":{multiple:!0,fieldNames:{label:"nickname",value:"id"}}}}]},g={name:"users",fields:[{name:"id",type:"bigInt",autoIncrement:!0,primaryKey:!0,allowNull:!1,uiSchema:{type:"number",title:'{{t("ID")}}',"x-component":"InputNumber","x-read-pretty":!0},interface:"id"},{interface:"input",type:"string",name:"nickname",uiSchema:{type:"string",title:'{{t("Nickname")}}',"x-component":"Input"}},{interface:"input",type:"string",name:"username",unique:!0,uiSchema:{type:"string",title:'{{t("Username")}}',"x-component":"Input","x-validator":{username:!0},required:!0}},{interface:"email",type:"string",name:"email",unique:!0,uiSchema:{type:"string",title:'{{t("Email")}}',"x-component":"Input","x-validator":"email",required:!0}},{interface:"phone",type:"string",name:"phone",unique:!0,uiSchema:{type:"string",title:'{{t("Phone")}}',"x-component":"Input","x-validator":"phone",required:!0}},{interface:"m2m",type:"belongsToMany",name:"roles",target:"roles",foreignKey:"userId",otherKey:"roleName",onDelete:"CASCADE",sourceKey:"id",targetKey:"name",through:"rolesUsers",uiSchema:{type:"array",title:'{{t("Roles")}}',"x-component":"AssociationField","x-component-props":{multiple:!0,fieldNames:{label:"title",value:"name"}}}},{name:"departments",type:"belongsToMany",interface:"m2m",target:"departments",foreignKey:"userId",otherKey:"departmentId",onDelete:"CASCADE",sourceKey:"id",targetKey:"id",through:"departmentsUsers",uiSchema:{type:"array",title:'{{t("Departments")}}',"x-component":"DepartmentField"}},{interface:"m2o",type:"belongsTo",name:"mainDepartment",target:"departments",foreignKey:"mainDepartmentId",onDelete:"SET NULL",sourceKey:"id",targetKey:"id",uiSchema:{type:"string",title:'{{t("Main department")}}',"x-component":"AssociationField","x-component-props":{fieldNames:{label:"title",value:"id"}}}},{interface:"inputNumber",type:"bigInt",name:"mainDepartmentId",uiSchema:{type:"number",title:"mainDepartmentId","x-component":"InputNumber","x-read-pretty":!0}}]},x=m(505),O=m(563);function w(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 S(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n,r,o=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=o){var i=[],a=!0,l=!1;try{for(o=o.call(e);!(a=(n=o.next()).done)&&(i.push(n.value),!t||i.length!==t);a=!0);}catch(e){l=!0,r=e}finally{try{a||null==o.return||o.return()}finally{if(l)throw r}}return i}}(e,t)||function(e,t){if(e){if("string"==typeof e)return w(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 w(e,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.")}()}var A=r().createContext({user:{},department:{}}),P=function(t){var o=S(r().useState(null),2),i=o[0],a=o[1],l=S(r().useState(null),2),c=l[0],u=l[1],s=(0,e.useRequest)({resource:"users",action:"list",params:{appends:["departments","departments.parent(recursively=true)"],filter:c?{"departments.id":c.id}:{},pageSize:20}});(0,n.useEffect)(function(){s.run()},[c]),(0,n.useEffect)(function(){i?s.mutate({data:[i]}):s.run()},[i]);var p=(0,e.useRequest)({resource:"departments",action:"list",params:{paginate:!1,filter:{parentId:null}}});return r().createElement(A.Provider,{value:{user:i,setUser:a,department:c,setDepartment:u,usersResource:{service:s},departmentsResource:{service:p}}},t.children)},j=function(t){var o=((0,n.useContext)(A).departmentsResource||{}).service;return r().createElement(e.ResourceActionContext.Provider,{value: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){var r;r=n[t],t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r})}return e}({},o)},r().createElement(e.CollectionProvider_deprecated,{collection:h},t.children))},C=function(t){var o=((0,n.useContext)(A).usersResource||{}).service,i=(0,n.useMemo)(function(){return(0,O.createForm)()},[]),a=i.createField({name:"table"});return r().createElement(x.FormContext.Provider,{value:i},r().createElement(e.TableBlockContext.Provider,{value:{service:o,field:a}},r().createElement(e.CollectionProvider_deprecated,{collection:g},t.children)))},D=m(964);function E(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 k(e,t,n,r,o,i,a){try{var l=e[i](a),c=l.value}catch(e){n(e);return}l.done?t(c):Promise.resolve(c).then(r,o)}function F(e){return function(e){if(Array.isArray(e))return E(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||function(e,t){if(e){if("string"==typeof e)return E(e,void 0);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 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 I(){var e,t,n=(e=["\n height: 65vh;\n overflow: auto;\n .ant-tree-node-content-wrapper {\n overflow: hidden;\n }\n "],t||(t=e.slice(0)),Object.freeze(Object.defineProperties(e,{raw:{value:Object.freeze(t)}})));return I=function(){return n},n}var R=function(){var t=(0,e.useResourceActionContext)(),i=t.data,a=t.loading,l=(0,n.useContext)(A),c=l.department,u=l.setDepartment,s=l.setUser,p=(0,n.useContext)(eu),f=p.treeData,d=p.nodeMap,m=p.loadData,y=p.loadedKeys,b=p.setLoadedKeys,v=p.initData,h=p.expandedKeys,g=p.setExpandedKeys;return(0,n.useEffect)(function(){v(null==i?void 0:i.data)},[i,v,a]),(0,n.useEffect)(function(){if(c){var e=function(t){return t.parent?[t.parent.id].concat(F(e(t.parent))):[]},t=e(c);g(function(e){return Array.from(new Set(F(e).concat(F(t))))})}},[c,g]),r().createElement("div",{className:(0,D.css)(I())},(null==f?void 0:f.length)?r().createElement(o.Tree.DirectoryTree,{loadData:m,treeData:f,loadedKeys:y,onSelect:function(e){e.length&&(u(d[e[0]]),s(null))},selectedKeys:[null==c?void 0:c.id],onExpand:function(e){g(e)},onLoad:function(e){b(e)},expandedKeys:h,expandAction:!1,showIcon:!1,fieldNames:{key:"id"}}):r().createElement(o.Empty,{image:o.Empty.PRESENTED_IMAGE_SIMPLE}))};function T(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){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n,r,o=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=o){var i=[],a=!0,l=!1;try{for(o=o.call(e);!(a=(n=o.next()).done)&&(i.push(n.value),!t||i.length!==t);a=!0);}catch(e){l=!0,r=e}finally{try{a||null==o.return||o.return()}finally{if(l)throw r}}return i}}(e,t)||q(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 K(e){return function(e){if(Array.isArray(e))return T(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||q(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 q(e,t){if(e){if("string"==typeof e)return T(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 T(e,t)}}function B(){var e,t,n=(e=["\n .ant-dropdown-menu {\n max-height: 500px;\n overflow-y: scroll;\n }\n "],t||(t=e.slice(0)),Object.freeze(Object.defineProperties(e,{raw:{value:Object.freeze(t)}})));return B=function(){return n},n}R.Item=function(t){var a=t.node,c=t.setVisible,u=t.setDrawer,s=l().t,p=(0,e.useResourceActionContext)().refreshAsync,f=(0,n.useContext)(eu),m=f.setLoadedKeys,y=f.expandedKeys,v=f.setExpandedKeys,h=o.App.useApp(),g=h.modal,x=h.message,O=(0,e.useAPIClient)(),w=function(){var e;g.confirm({title:s("Delete"),content:s("Are you sure you want to delete it?"),onOk:(e=function(){var e;return function(e,t){var n,r,o,i,a={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return i={next:l(0),throw:l(1),return:l(2)},"function"==typeof Symbol&&(i[Symbol.iterator]=function(){return this}),i;function l(i){return function(l){var c=[i,l];if(n)throw TypeError("Generator is already executing.");for(;a;)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 a.label++,{value:c[1],done:!1};case 5:a.label++,r=c[1],c=[0];continue;case 7:c=a.ops.pop(),a.trys.pop();continue;default:if(!(o=(o=a.trys).length>0&&o[o.length-1])&&(6===c[0]||2===c[0])){a=0;continue}if(3===c[0]&&(!o||c[1]>o[0]&&c[1]<o[3])){a.label=c[1];break}if(6===c[0]&&a.label<o[1]){a.label=o[1],o=c;break}if(o&&a.label<o[2]){a.label=o[2],a.ops.push(c);break}o[2]&&a.ops.pop(),a.trys.pop();continue}c=t.call(e,a)}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,O.resource("departments").destroy({filterByTk:a.id})];case 1:return t.sent(),x.success(s("Deleted successfully")),v(function(e){return e.filter(function(e){return e!==a.id})}),e=F(y),m([]),v([]),[4,p()];case 2:return t.sent(),v(e),[2]}})},function(){var t=this,n=arguments;return new Promise(function(r,o){var i=e.apply(t,n);function a(e){k(i,r,o,a,l,"next",e)}function l(e){k(i,r,o,a,l,"throw",e)}a(void 0)})})})},S=function(e){u({schema:e,node:a}),c(!0)};return r().createElement("div",{style:{display:"flex",justifyContent:"space-between",overflow:"hidden"}},r().createElement("div",{style:{overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"}},a.title),r().createElement(o.Dropdown,{menu:{items:[{label:s("New sub department"),key:"new-sub"},{label:s("Edit department"),key:"edit"},{label:s("Delete department"),key:"delete"}],onClick:function(e){var t=e.key;switch(e.domEvent.stopPropagation(),t){case"new-sub":S(d);break;case"edit":S(b);break;case"delete":w()}}}},r().createElement("div",{style:{marginLeft:"15px"}},r().createElement(i.MoreOutlined,null))))};var N=(0,e.createStyles)(function(e){return{searchDropdown:(0,e.css)(B())}}),V=function(){var t,i=l().t,a=o.theme.useToken().token,c=(0,n.useContext)(A),u=c.setDepartment,s=c.setUser,p=M(r().useState(!1),2),f=p[0],d=p[1],m=M(r().useState(""),2),y=m[0],b=m[1],v=M(r().useState([]),2),h=v[0],g=v[1],x=M(r().useState([]),2),O=x[0],w=x[1],S=M(r().useState(!0),2),P=S[0],j=S[1],C=M(r().useState(!0),2),D=C[0],E=C[1],k=N().styles,F=(0,e.useAPIClient)(),I=(0,e.useRequest)(function(e){return F.resource("departments").aggregateSearch(e).then(function(e){var t;return null==e||null==(t=e.data)?void 0:t.data})},{manual:!0,onSuccess:function(e,t){var n=(t[0]||{}).values.type;e&&((!n||"user"===n)&&e.users.length<10&&j(!1),(!n||"department"===n)&&e.departments.length<10&&E(!1),g(function(t){return K(t).concat(K(e.users))}),w(function(t){return K(t).concat(K(e.departments))}))}}),R=I.run,T=function(e){var t=e.title,n=e.parent;return n?T(n)+" / "+t:t},q=function(e){return r().createElement(o.Button,{type:"link",style:{padding:"0 8px"},onClick:function(t){d(!0),R({values: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){var r;r=n[t],t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r})}return e}({keyword:y,limit:10},e)})}},i("Load more"))};return r().createElement(o.Dropdown,{menu:{items:(t=[],h.length||O.length?(h.length&&(t.push({key:"0",type:"group",label:i("Users"),children:h.map(function(e){return{key:e.username,label:r().createElement("div",{onClick:function(){return s(e)}},r().createElement("div",null,e.nickname||e.username),r().createElement("div",{style:{fontSize:a.fontSizeSM,color:a.colorTextDescription}},"".concat(e.username).concat(e.phone?" | "+e.phone:"").concat(e.email?" | "+e.email:"")))}})}),P&&t.push({type:"group",key:"0-loadMore",label:r().createElement(q,{type:"user",last:h[h.length-1].id})})),O.length&&(t.push({key:"1",type:"group",label:i("Departments"),children:O.map(function(e){return{key:e.id,label:r().createElement("div",{onClick:function(){return u(e)}},T(e))}})}),D&&t.push({type:"group",key:"1-loadMore",label:r().createElement(q,{type:"department",last:O[O.length-1].id})})),t):[{key:"0",label:r().createElement(o.Empty,{description:i("No results"),image:o.Empty.PRESENTED_IMAGE_SIMPLE}),disabled:!0}])},overlayClassName:k.searchDropdown,trigger:["click"],open:f,onOpenChange:function(e){return d(e)}},r().createElement(o.Input.Search,{allowClear:!0,onClick:function(){y||d(!1)},onFocus:function(){return u(null)},onSearch:function(e){b(e),g([]),w([]),j(!0),E(!0),e&&(R({values:{keyword:e,limit:10}}),d(!0))},onChange:function(e){e.target.value||(s(null),b(""),d(!1),I.mutate({}),g([]),w([]))},placeholder:i("Search for departments, users"),style:{marginBottom:"20px"}}))};function U(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 L(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){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){L(e,t,n[t])})}return e}function z(e,t){return t=null!=t?t:{},Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):(function(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);n.push.apply(n,r)}return n})(Object(t)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(t,n))}),e}function _(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n,r,o=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=o){var i=[],a=!0,l=!1;try{for(o=o.call(e);!(a=(n=o.next()).done)&&(i.push(n.value),!t||i.length!==t);a=!0);}catch(e){l=!0,r=e}finally{try{a||null==o.return||o.return()}finally{if(l)throw r}}return i}}(e,t)||H(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 G(e){return function(e){if(Array.isArray(e))return U(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||H(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 H(e,t){if(e){if("string"==typeof e)return U(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 U(e,t)}}var W=function(e){var t=(e||{}).label,o=_((0,n.useState)([]),2),i=o[0],a=o[1],l=_((0,n.useState)({}),2),c=l[0],u=l[1],s=_((0,n.useState)([]),2),p=s[0],f=s[1],d=_((0,n.useState)([]),2),m=d[0],y=d[1],b=(0,n.useCallback)(function(e){var t={},n=function(e){for(var n=e?$({},e):null;n;){var r=n.parentId||"root";t[r]?t[r].childrenMap[n.id]=n:t[r]=z($({},n.parent||{id:r}),{childrenMap:L({},n.id,n)}),n=n.parent}},r=function(e){var n={};e.children&&e.children.length&&e.children.forEach(function(e){n[e.id]=e,r(e)}),t[e.id]=z($({},e),{childrenMap:n})};return e&&e.length&&e.forEach(function(e){n(e),r(e)}),t},[]),v=(0,n.useCallback)(function(e){var n=function(o){var i;return!e[o]||e[o].isLeaf?null:Object.values((null==(i=e[o])?void 0:i.childrenMap)||{}).map(function(e){return z($({},e),{title:t?r().createElement(t,{node:e}):e.title,children:n(e.id)})})};return n("root")},[]),h=(0,n.useCallback)(function(e){var t=b(e);u(t),a(v(t)||[])},[a,b,v]),g=(0,n.useCallback)(function(e){if(!c[e])return[];var t=[];return t.push.apply(t,G(Object.keys(c[e].childrenMap).map(function(e){return Number(e)}))),Object.keys(c[e].childrenMap).forEach(function(e){t.push.apply(t,G(g(e)))}),t},[c]);return{initData:h,treeData:i,setTreeData:a,nodeMap:c,updateTreeData:function(e,t){var n=$({},b(t),c);return t.forEach(function(t){n[e].childrenMap[t.id]=t}),u(n),v(n)},constructTreeData:v,getChildrenIds:g,loadedKeys:m,setLoadedKeys:y,expandedKeys:p,setExpandedKeys:f}},J=m(703),Q=m.n(J);function X(e,t,n,r,o,i,a){try{var l=e[i](a),c=l.value}catch(e){n(e);return}l.done?t(c):Promise.resolve(c).then(r,o)}function Y(e){return function(){var t=this,n=arguments;return new Promise(function(r,o){var i=e.apply(t,n);function a(e){X(i,r,o,a,l,"next",e)}function l(e){X(i,r,o,a,l,"throw",e)}a(void 0)})}}function Z(e,t){var n,r,o,i,a={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return i={next:l(0),throw:l(1),return:l(2)},"function"==typeof Symbol&&(i[Symbol.iterator]=function(){return this}),i;function l(i){return function(l){var c=[i,l];if(n)throw TypeError("Generator is already executing.");for(;a;)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 a.label++,{value:c[1],done:!1};case 5:a.label++,r=c[1],c=[0];continue;case 7:c=a.ops.pop(),a.trys.pop();continue;default:if(!(o=(o=a.trys).length>0&&o[o.length-1])&&(6===c[0]||2===c[0])){a=0;continue}if(3===c[0]&&(!o||c[1]>o[0]&&c[1]<o[3])){a.label=c[1];break}if(6===c[0]&&a.label<o[1]){a.label=o[1],o=c;break}if(o&&a.label<o[2]){a.label=o[2],a.ops.push(c);break}o[2]&&a.ops.pop(),a.trys.pop();continue}c=t.call(e,a)}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 ee=function(t){var n,r,o,i,a=t||{},l=a.resource,c=a.resourceOf,u=a.params,s=void 0===u?{}:u,p=(0,e.useAPIClient)().resource(void 0===l?"departments":l,c),f=W(t),d=f.setTreeData,m=f.updateTreeData,y=(f.setLoadedKeys,f.initData),b=(n=Y(function(e){var t,n,r,o;return Z(this,function(i){switch(i.label){case 0:if(t=e.key,null==(n=e.children)?void 0:n.length)return[2];return[4,p.list(Q()(s,{paginate:!1,appends:["parent(recursively=true)"],filter:{parentId:t}}))];case 1:if(!(null==(o=i.sent().data)||null==(r=o.data)?void 0:r.length))return[2];return d(m(t,null==o?void 0:o.data)),[2]}})}),function(e){return n.apply(this,arguments)}),v=(r=Y(function(e){var t;return Z(this,function(n){switch(n.label){case 0:return[4,p.list(Q()(s,{paginate:!1,filter:{title:{$includes:e}},appends:["parent(recursively=true)"],pageSize:100}))];case 1:return y(null==(t=n.sent().data)?void 0:t.data),[2]}})}),function(e){return r.apply(this,arguments)});return 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){var r;r=n[t],t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r})}return e}({},f),i=i={loadData:b,getByKeyword:v},Object.getOwnPropertyDescriptors?Object.defineProperties(o,Object.getOwnPropertyDescriptors(i)):(function(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);n.push.apply(n,r)}return n})(Object(i)).forEach(function(e){Object.defineProperty(o,e,Object.getOwnPropertyDescriptor(i,e))}),o},et=function(){var t,r,o=(0,n.useContext)(e.CollectionContext),i=(0,e.useFilterFieldOptions)(o.fields),a=(0,e.useResourceActionContext)();return(0,e.useFilterFieldProps)({options:i,params:(null==(r=a.state)||null==(t=r.params)?void 0:t[0])||a.params,service:a})};function en(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 er(e,t,n,r,o,i,a){try{var l=e[i](a),c=l.value}catch(e){n(e);return}l.done?t(c):Promise.resolve(c).then(r,o)}function eo(e){return function(){var t=this,n=arguments;return new Promise(function(r,o){var i=e.apply(t,n);function a(e){er(i,r,o,a,l,"next",e)}function l(e){er(i,r,o,a,l,"throw",e)}a(void 0)})}}function ei(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n,r,o=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=o){var i=[],a=!0,l=!1;try{for(o=o.call(e);!(a=(n=o.next()).done)&&(i.push(n.value),!t||i.length!==t);a=!0);}catch(e){l=!0,r=e}finally{try{a||null==o.return||o.return()}finally{if(l)throw r}}return i}}(e,t)||el(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 ea(e){return function(e){if(Array.isArray(e))return en(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||el(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 el(e,t){if(e){if("string"==typeof e)return en(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 en(e,t)}}function ec(e,t){var n,r,o,i,a={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return i={next:l(0),throw:l(1),return:l(2)},"function"==typeof Symbol&&(i[Symbol.iterator]=function(){return this}),i;function l(i){return function(l){var c=[i,l];if(n)throw TypeError("Generator is already executing.");for(;a;)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 a.label++,{value:c[1],done:!1};case 5:a.label++,r=c[1],c=[0];continue;case 7:c=a.ops.pop(),a.trys.pop();continue;default:if(!(o=(o=a.trys).length>0&&o[o.length-1])&&(6===c[0]||2===c[0])){a=0;continue}if(3===c[0]&&(!o||c[1]>o[0]&&c[1]<o[3])){a.label=c[1];break}if(6===c[0]&&a.label<o[1]){a.label=o[1],o=c;break}if(o&&a.label<o[2]){a.label=o[2],a.ops.push(c);break}o[2]&&a.ops.pop(),a.trys.pop();continue}c=t.call(e,a)}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 eu=(0,n.createContext)({}),es=function(){var t=(0,x.useForm)(),r=(0,x.useField)(),o=(0,e.useActionContext)(),i=(0,e.useResourceActionContext)().refreshAsync,a=(0,e.useAPIClient)(),l=(0,n.useContext)(eu),c=l.expandedKeys,u=l.setLoadedKeys,s=l.setExpandedKeys;return{run:function(){return eo(function(){var e;return ec(this,function(n){switch(n.label){case 0:return n.trys.push([0,5,,6]),[4,t.submit()];case 1:return n.sent(),r.data=r.data||{},r.data.loading=!0,[4,a.resource("departments").create({values:t.values})];case 2:return n.sent(),o.setVisible(!1),[4,t.reset()];case 3:return n.sent(),r.data.loading=!1,e=ea(c),u([]),s([]),[4,i()];case 4:return n.sent(),s(e),[3,6];case 5:return n.sent(),r.data&&(r.data.loading=!1),[3,6];case 6:return[2]}})})()}}},ep=function(){var t=(0,x.useField)(),r=(0,x.useForm)(),o=(0,e.useActionContext)(),i=(0,e.useResourceActionContext)().refreshAsync,a=(0,e.useAPIClient)(),l=(0,e.useRecord)().id,c=(0,n.useContext)(eu),u=c.expandedKeys,s=c.setLoadedKeys,p=c.setExpandedKeys,f=(0,n.useContext)(A),d=f.department,m=f.setDepartment;return{run:function(){return eo(function(){var e;return ec(this,function(n){switch(n.label){case 0:return[4,r.submit()];case 1:n.sent(),t.data=t.data||{},t.data.loading=!0,n.label=2;case 2:return n.trys.push([2,6,7,8]),[4,a.resource("departments").update({filterByTk:l,values:r.values})];case 3:return n.sent(),m(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){var r;r=n[t],t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r})}return e}({department:d},r.values)),o.setVisible(!1),[4,r.reset()];case 4:return n.sent(),e=ea(u),s([]),p([]),[4,i()];case 5:return n.sent(),p(e),[3,8];case 6:return console.log(n.sent()),[3,8];case 7:return t.data.loading=!1,[7];case 8:return[2]}})})()}}},ef=function(){var t=l().t,a=ei((0,n.useState)(!1),2),u=a[0],s=a[1],p=ei((0,n.useState)({}),2),f=p[0],d=p[1],m=(0,n.useContext)(A),y=m.department,b=m.setDepartment,v=o.theme.useToken().token,h=ee({label:function(e){var t=e.node;return r().createElement(R.Item,{node:t,setVisible:s,setDrawer:d})}});return r().createElement(e.SchemaComponentOptions,{scope:{useCreateDepartment:es,useUpdateDepartment:ep}},r().createElement(eu.Provider,{value:h},r().createElement(o.Row,null,r().createElement(V,null),r().createElement(o.Button,{type:"text",icon:r().createElement(i.UserOutlined,null),style:{textAlign:"left",marginBottom:"5px",background:y?"":v.colorBgTextHover},onClick:function(){b(null)},block:!0},t("All users")),r().createElement(c,null)),r().createElement(o.Divider,{style:{margin:"12px 0"}}),r().createElement(R,null),r().createElement(e.ActionContextProvider,{value:{visible:u,setVisible:s}},r().createElement(e.RecordProvider,{record:f.node||{}},r().createElement(e.SchemaComponent,{scope:{t:t},schema:f.schema||{}})))))};function ed(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function em(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){ed(e,t,n[t])})}return e}function ey(e,t){return t=null!=t?t:{},Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):(function(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);n.push.apply(n,r)}return n})(Object(t)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(t,n))}),e}var eb={type:"void","x-component":"Space",properties:{remove:{type:"void",title:'{{t("Remove")}}',"x-component":"Action","x-component-props":{icon:"UserDeleteOutlined",confirm:{title:"{{t('Remove members')}}",content:"{{t('Are you sure you want to remove these members?')}}"},style:{marginRight:8},useAction:"{{ useBulkRemoveMembersAction }}"}},create:{type:"void",title:'{{t("Add members")}}',"x-component":"Action","x-component-props":{type:"primary",icon:"UserAddOutlined"},properties:{drawer:{type:"void","x-component":"AddMembers"}}}}},ev={type:"void",properties:{remove:{title:'{{ t("Remove") }}',"x-component":"Action.Link","x-component-props":{confirm:{title:"{{t('Remove member')}}",content:"{{t('Are you sure you want to remove it?')}}"},useAction:"{{ useRemoveMemberAction }}"}}}},eh=function(e,t){var n;return{type:"void","x-component":"CardItem","x-component-props":{heightMode:"fullHeight"},properties:ey(em({},t?{}:{actions:{type:"void","x-component":"ActionBar","x-component-props":{style:{marginBottom:16}},properties:(ed(n={},(0,u.uid)(),{type:"void",title:'{{ t("Filter") }}',"x-action":"filter","x-component":"Filter.Action","x-use-component-props":"useMemberFilterActionProps","x-component-props":{icon:"FilterOutlined"},"x-align":"left"}),ed(n,"refresh",{type:"void",title:'{{ t("Refresh") }}',"x-action":"refresh","x-component":"Action","x-use-component-props":"useRefreshActionProps","x-component-props":{icon:"ReloadOutlined"}}),ed(n,"actions",{type:"void","x-component":"MemberActions"}),n)}}),{table:{type:"array","x-component":"TableV2","x-use-component-props":"useTableBlockProps","x-component-props":{rowKey:"id",rowSelection:{type:"checkbox"},pagination:{showTotal:"{{ useShowTotal }}"}},properties:ey(em({nickname:{type:"void","x-decorator":"Table.Column.Decorator","x-component":"Table.Column",properties:{nickname:{type:"string","x-component":"CollectionField","x-read-pretty":!0}}},username:{type:"void","x-decorator":"Table.Column.Decorator","x-component":"Table.Column",properties:{username:{type:"string","x-component":"CollectionField","x-read-pretty":!0}}},departments:{type:"void","x-decorator":"Table.Column.Decorator","x-component":"Table.Column",properties:{departments:{type:"string","x-component":"CollectionField","x-read-pretty":!0}}}},e?{isOwner:{type:"void","x-decorator":"Table.Column.Decorator","x-component":"Table.Column","x-component-props":{style:{minWidth:100}},title:'{{t("Owner")}}',properties:{isOwner:{type:"boolean","x-component":"IsOwnerField"}}}}:{}),{phone:{type:"void","x-decorator":"Table.Column.Decorator","x-component":"Table.Column",properties:{phone:{type:"string","x-component":"CollectionField","x-read-pretty":!0}}},email:{type:"void","x-decorator":"Table.Column.Decorator","x-component":"Table.Column",properties:{email:{type:"string","x-component":"CollectionField","x-read-pretty":!0}}},actions:{type:"void",title:'{{t("Actions")}}',"x-component":"Table.Column","x-component-props":{fixed:"right"},properties:{actions:{type:"void","x-component":"Space","x-component-props":{split:"|"},properties:em({update:{type:"void",title:'{{t("Configure")}}',"x-component":"Action.Link","x-component-props":{type:"primary"},properties:{drawer:{type:"void","x-component":"Action.Drawer","x-decorator":"FormV2",title:'{{t("Configure")}}',properties:{departments:{title:'{{t("Departments")}}',"x-decorator":"FormItem","x-component":"UserDepartmentsField"}}}}}},e?{remove:{type:"void","x-component":"RowRemoveAction"}}:{})}}}})}})}},eg={type:"object",properties:{drawer:{type:"void","x-component":"Action.Drawer","x-decorator":"Form",title:'{{t("Add members")}}',properties:{resource:{type:"void","x-decorator":"FormItem","x-component":"AddMembersListProvider",properties:{actions:{type:"void","x-component":"ActionBar","x-component-props":{style:{marginBottom:16}},properties:{filter:{type:"void",title:'{{ t("Filter") }}',default:{$and:[{username:{$includes:""}},{nickname:{$includes:""}}]},"x-action":"filter","x-component":"Filter.Action","x-use-component-props":"useAddMembersFilterActionProps","x-component-props":{icon:"FilterOutlined"},"x-align":"left"}}},table:{type:"void","x-component":"Table.Void","x-component-props":{rowKey:"id",rowSelection:{type:"checkbox",onChange:"{{ handleSelect }}"},useDataSource:"{{ cm.useDataSourceFromRAC }}"},properties:{username:{type:"void","x-decorator":"Table.Column.Decorator","x-component":"Table.Column",properties:{username:{type:"string","x-component":"CollectionField","x-read-pretty":!0}}},nickname:{type:"void","x-decorator":"Table.Column.Decorator","x-component":"Table.Column",properties:{nickname:{type:"string","x-component":"CollectionField","x-read-pretty":!0}}},phone:{type:"void","x-decorator":"Table.Column.Decorator","x-component":"Table.Column",properties:{phone:{type:"string","x-component":"CollectionField","x-read-pretty":!0}}},email:{type:"void","x-decorator":"Table.Column.Decorator","x-component":"Table.Column",properties:{email:{type:"string","x-component":"CollectionField","x-read-pretty":!0}}}}}}},footer:{type:"void","x-component":"Action.Drawer.Footer",properties:{cancel:{title:'{{t("Cancel")}}',"x-component":"Action","x-component-props":{useAction:"{{ cm.useCancelAction }}"}},submit:{title:'{{t("Submit")}}',"x-component":"Action","x-component-props":{type:"primary"},"x-use-component-props":"useAddMembersActionProps"}}}}}}},ex={type:"void",properties:{drawer:{title:'{{t("Select Departments")}}',"x-decorator":"Form","x-component":"Action.Drawer",properties:{table:{type:"void","x-decorator":"FormItem","x-component":"DepartmentTable","x-component-props":{useDataSource:"{{ useDataSource }}",useDisabled:"{{ useDisabled }}"}},footer:{type:"void","x-component":"Action.Drawer.Footer",properties:{cancel:{title:'{{t("Cancel")}}',"x-component":"Action","x-component-props":{useAction:"{{ cm.useCancelAction }}"}},confirm:{title:'{{t("Submit")}}',"x-component":"Action","x-component-props":{type:"primary",useAction:"{{ useAddDepartments }}"}}}}}}}},eO=function(e){var t=e.title,n=e.parent;return n?eO(n)+" / "+t:t},ew=function(){var t=(0,n.useContext)(A).setDepartment,o=(0,x.useField)().value||[],i=o.reduce(function(e,t){return e[t.id]=t,e},{}),a=o.map(function(e,n){return r().createElement("span",{key:n},r().createElement("a",{onClick:function(n){n.preventDefault(),t(i[e.id])}},eO(e)),n!==o.length-1?r().createElement("span",{style:{marginRight:4,color:"#aaa"}},","):"")});return r().createElement(e.EllipsisWithTooltip,{ellipsis:!0},a)},eS=function(){var t=(0,n.useContext)(A).department,o=((0,e.useRecord)().departments||[]).find(function(e){return(null==e?void 0:e.id)===(null==t?void 0:t.id)});return r().createElement(e.Checkbox.ReadPretty,{value:null==o?void 0:o.departmentsUsers.isOwner})};function eA(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 eP(e,t,n,r,o,i,a){try{var l=e[i](a),c=l.value}catch(e){n(e);return}l.done?t(c):Promise.resolve(c).then(r,o)}function ej(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function eC(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){ej(e,t,n[t])})}return e}function eD(e,t){return t=null!=t?t:{},Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):(function(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);n.push.apply(n,r)}return n})(Object(t)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(t,n))}),e}function eE(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n,r,o=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=o){var i=[],a=!0,l=!1;try{for(o=o.call(e);!(a=(n=o.next()).done)&&(i.push(n.value),!t||i.length!==t);a=!0);}catch(e){l=!0,r=e}finally{try{a||null==o.return||o.return()}finally{if(l)throw r}}return i}}(e,t)||function(e,t){if(e){if("string"==typeof e)return eA(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 eA(e,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.")}()}var ek=(0,n.createContext)({}),eF=function(){var t,r,o=(0,n.useContext)(ek),i=o.setHasFilter,a=o.setExpandedKeys,c=l().t,u=(0,n.useContext)(e.CollectionContext),s=(0,e.useFilterFieldOptions)(u.fields),p=(0,e.useResourceActionContext)(),f=p.run,d=p.defaultRequest,m=(0,x.useField)(),y=(d||{}).params;return{options:s,onSubmit:(t=function(t){var n,r,o;return function(e,t){var n,r,o,i,a={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return i={next:l(0),throw:l(1),return:l(2)},"function"==typeof Symbol&&(i[Symbol.iterator]=function(){return this}),i;function l(i){return function(l){var c=[i,l];if(n)throw TypeError("Generator is already executing.");for(;a;)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 a.label++,{value:c[1],done:!1};case 5:a.label++,r=c[1],c=[0];continue;case 7:c=a.ops.pop(),a.trys.pop();continue;default:if(!(o=(o=a.trys).length>0&&o[o.length-1])&&(6===c[0]||2===c[0])){a=0;continue}if(3===c[0]&&(!o||c[1]>o[0]&&c[1]<o[3])){a.label=c[1];break}if(6===c[0]&&a.label<o[1]){a.label=o[1],o=c;break}if(o&&a.label<o[2]){a.label=o[2],a.ops.push(c);break}o[2]&&a.ops.pop(),a.trys.pop();continue}c=t.call(e,a)}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(a){return n=y.filter,r=(0,e.removeNullCondition)(null==t?void 0:t.filter),f(eD(eC({},y),{page:1,pageSize:10,filter:(0,e.mergeFilter)([r,n])})),(null==(o=(null==r?void 0:r.$and)||(null==r?void 0:r.$or))?void 0:o.length)?(m.title=c("{{count}} filter items",{count:(null==o?void 0:o.length)||0}),i(!0)):(m.title=c("Filter"),i(!1)),[2]})},r=function(){var e=this,n=arguments;return new Promise(function(r,o){var i=t.apply(e,n);function a(e){eP(i,r,o,a,l,"next",e)}function l(e){eP(i,r,o,a,l,"throw",e)}a(void 0)})},function(e){return r.apply(this,arguments)}),onReset:function(){f(eD(eC({},y||{}),{filter:eD(eC({},(null==y?void 0:y.filter)||{}),{parentId:null}),page:1,pageSize:10})),m.title=c("Filter"),i(!1),a([])}}},eI=function(t){var i=t.useDisabled,a=l().t,c=(0,e.useResourceActionContext)();console.log(c);var u=c.run,s=c.data,p=c.loading,f=c.defaultRequest||{},d=f.resource,m=f.resourceOf,y=f.params,b=ee({resource:d,resourceOf:m,params:y}),v=b.treeData,h=b.initData,g=b.loadData,O=(0,x.useField)(),w=(void 0===i?function(){return{disabled:function(){return!1}}}:i)().disabled,S=(0,n.useContext)(ek),A=S.hasFilter,P=S.expandedKeys,j=S.setExpandedKeys;(0,n.useEffect)(function(){A||h(null==s?void 0:s.data)},[s,h,p,A]);var C={};if((null==y?void 0:y.pageSize)&&(C.defaultPageSize=y.pageSize),!C.total&&(null==s?void 0:s.meta)){var D=s.meta,E=D.count,k=D.page,F=D.pageSize;C.total=E,C.current=k,C.pageSize=F}return r().createElement(o.Table,{rowKey:"id",columns:[{dataIndex:"title",title:a("Department name"),render:function(e,t){return A?eO(t):e}}],rowSelection:{selectedRowKeys:((null==O?void 0:O.value)||[]).map(function(e){return e.id}),onChange:function(e,t){var n;return null==O||null==(n=O.setValue)?void 0:n.call(O,t)},getCheckboxProps:function(e){return{disabled:w(e)}}},pagination:eD(eC({showSizeChanger:!0},C),{onChange:function(e,t){var n;u(eD(eC({},(null==c||null==(n=c.params)?void 0:n[0])||{}),{page:e,pageSize:t}))}}),dataSource:A?(null==s?void 0:s.data)||[]:v,expandable:{onExpand:function(e,t){g({key:t.id,children:t.children})},expandedRowKeys:P,onExpandedRowsChange:function(e){return j(e)}}})},eR=function(t){var o=eE((0,n.useState)([]),2),i=o[0],a=o[1],l=eE((0,n.useState)(!1),2),c=l[0],u=l[1],s=(0,t.useDataSource)({manual:!0});return(0,n.useEffect)(function(){s.run({filter:{parentId:null},pageSize:10})},[]),r().createElement(e.ResourceActionContext.Provider,{value:eC({},s)},r().createElement(e.CollectionProvider_deprecated,{collection:h},r().createElement(ek.Provider,{value:{expandedKeys:i,setExpandedKeys:a,hasFilter:c,setHasFilter:u}},t.children)))},eT=function(t){var n=t.useDataSource,o=t.useDisabled;return r().createElement(e.SchemaComponent,{scope:{useDisabled:o,useFilterActionProps:eF},components:{InternalDepartmentTable:eI,RequestProvider:eR},schema:{type:"void",properties:ej({},(0,u.uid)(),{type:"void","x-component":"RequestProvider","x-component-props":{useDataSource:n},properties:{actions:{type:"void","x-component":"ActionBar","x-component-props":{style:{marginBottom:16}},properties:{filter:{type:"void",title:'{{ t("Filter") }}',default:{$and:[{title:{$includes:""}}]},"x-action":"filter","x-component":"Filter.Action","x-use-component-props":"useFilterActionProps","x-component-props":{icon:"FilterOutlined"},"x-align":"left"}}},departments:{type:"array","x-component":"InternalDepartmentTable","x-component-props":{useDisabled:"{{ useDisabled }}"}}}})}})};function eM(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 eK(e,t,n,r,o,i,a){try{var l=e[i](a),c=l.value}catch(e){n(e);return}l.done?t(c):Promise.resolve(c).then(r,o)}function eq(e){return function(){var t=this,n=arguments;return new Promise(function(r,o){var i=e.apply(t,n);function a(e){eK(i,r,o,a,l,"next",e)}function l(e){eK(i,r,o,a,l,"throw",e)}a(void 0)})}}function eB(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){var r;r=n[t],t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r})}return e}function eN(e,t){return t=null!=t?t:{},Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):(function(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);n.push.apply(n,r)}return n})(Object(t)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(t,n))}),e}function eV(e){return function(e){if(Array.isArray(e))return eM(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||eU(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 eU(e,t){if(e){if("string"==typeof e)return eM(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 eM(e,t)}}function eL(e,t){var n,r,o,i,a={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return i={next:l(0),throw:l(1),return:l(2)},"function"==typeof Symbol&&(i[Symbol.iterator]=function(){return this}),i;function l(i){return function(l){var c=[i,l];if(n)throw TypeError("Generator is already executing.");for(;a;)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 a.label++,{value:c[1],done:!1};case 5:a.label++,r=c[1],c=[0];continue;case 7:c=a.ops.pop(),a.trys.pop();continue;default:if(!(o=(o=a.trys).length>0&&o[o.length-1])&&(6===c[0]||2===c[0])){a=0;continue}if(3===c[0]&&(!o||c[1]>o[0]&&c[1]<o[3])){a.label=c[1];break}if(6===c[0]&&a.label<o[1]){a.label=o[1],o=c;break}if(o&&a.label<o[2]){a.label=o[2],a.ops.push(c);break}o[2]&&a.ops.pop(),a.trys.pop();continue}c=t.call(e,a)}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 e$=function(t){var n={resource:"departments",action:"list",params:{appends:["parent(recursively=true)"],sort:["createdAt"]}};return eN(eB({},(0,e.useRequest)(n,t)),{defaultRequest:n})},ez=function(){var t,a,c,u,s=o.App.useApp(),p=s.modal,f=s.message,d=l().t,m=(t=(0,n.useState)(!1),function(e){if(Array.isArray(e))return e}(t)||function(e,t){var n,r,o=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=o){var i=[],a=!0,l=!1;try{for(o=o.call(e);!(a=(n=o.next()).done)&&(i.push(n.value),i.length!==t);a=!0);}catch(e){l=!0,r=e}finally{try{a||null==o.return||o.return()}finally{if(l)throw r}}return i}}(t,2)||eU(t,2)||function(){throw TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()),y=m[0],b=m[1],v=(0,e.useRecord)(),h=(0,x.useField)(),g=(0,e.useTableBlockContext)().service.refresh,O=(0,e.useAPIClient)();(0,e.useRequest)(function(){return O.resource("users.departments",v.id).list({appends:["parent(recursively=true)"],paginate:!1}).then(function(e){var t,n,r=(null==(t=null==e||null==(n=e.data)?void 0:n.data)?void 0:t.length)?t.map(function(e){var t;return eN(eB({},e),{isMain:e.id===v.mainDepartmentId,isOwner:null==(t=e.departmentsUsers)?void 0:t.isOwner,title:eO(e)})}):[];h.setValue(r)})},{ready:v.id});var w=function(e){p.confirm({title:d("Remove department"),content:d("Are you sure you want to remove it?"),onOk:eq(function(){return eL(this,function(t){switch(t.label){case 0:return[4,O.resource("users.departments",v.id).remove({values:[e.id]})];case 1:return t.sent(),f.success(d("Deleted successfully")),h.setValue(h.value.filter(function(t){return t.id!==e.id}).map(function(t,n){return eN(eB({},t),{isMain:e.isMain&&0===n||t.isMain})})),g(),[2]}})})})},S=(a=eq(function(e){return eL(this,function(t){switch(t.label){case 0:return[4,O.resource("users").update({filterByTk:v.id,values:{mainDepartmentId:e.id}})];case 1:return t.sent(),f.success(d("Set successfully")),h.setValue((h.value||[]).map(function(t){return eN(eB({},t),{isMain:t.id===e.id})})),g(),[2]}})}),function(e){return a.apply(this,arguments)}),A=(c=eq(function(e){return eL(this,function(t){switch(t.label){case 0:return[4,O.resource("departments").setOwner({values:{userId:v.id,departmentId:e.id}})];case 1:return t.sent(),f.success(d("Set successfully")),h.setValue(h.value.map(function(t){return eN(eB({},t),{isOwner:t.id===e.id||t.isOwner})})),g(),[2]}})}),function(e){return c.apply(this,arguments)}),P=(u=eq(function(e){return eL(this,function(t){switch(t.label){case 0:return[4,O.resource("departments").removeOwner({values:{userId:v.id,departmentId:e.id}})];case 1:return t.sent(),f.success(d("Set successfully")),h.setValue(h.value.map(function(t){return eN(eB({},t),{isOwner:t.id!==e.id&&t.isOwner})})),g(),[2]}})}),function(e){return u.apply(this,arguments)}),j=function(e,t){switch(e){case"setMain":S(t);break;case"setOwner":A(t);break;case"removeOwner":P(t);break;case"remove":w(t)}};return r().createElement(e.ActionContextProvider,{value:{visible:y,setVisible:b}},r().createElement(r().Fragment,null,((null==h?void 0:h.value)||[]).map(function(e){return r().createElement(o.Tag,{style:{padding:"5px 8px",background:"transparent",marginBottom:"5px"},key:e.id},r().createElement("span",{style:{marginRight:"5px"}},e.title),e.isMain?r().createElement(o.Tag,{color:"processing",bordered:!1},d("Main")):"",r().createElement(o.Dropdown,{menu:{items:eV(e.isMain?[]:[{label:d("Set as main department"),key:"setMain"}]).concat([{label:d("Remove"),key:"remove"}]),onClick:function(t){return j(t.key,e)}}},r().createElement("div",{style:{float:"right"}},r().createElement(i.MoreOutlined,null))))}),r().createElement(o.Button,{icon:r().createElement(i.PlusOutlined,null),onClick:function(){return b(!0)}})),r().createElement(e.SchemaComponent,{schema:ex,components:{DepartmentTable:eT},scope:{user:v,useDataSource:e$,useAddDepartments:function(){var t=(0,e.useAPIClient)(),n=(0,x.useForm)(),r=(n.values||{}).departments;return{run:function(){return eq(function(){return eL(this,function(e){switch(e.label){case 0:return[4,t.resource("users.departments",v.id).add({values:r.map(function(e){return e.id})})];case 1:return e.sent(),n.reset(),h.setValue(eV(h.value).concat(eV(r.map(function(e,t){return eN(eB({},e),{isMain:0===t&&0===h.value.length,title:eO(e)})})))),b(!1),g(),[2]}})})()}}},useDisabled:function(){return{disabled:function(e){return h.value.some(function(t){return t.id===e.id})}}}}}))},e_=m(467);function eG(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 eH(e,t,n,r,o,i,a){try{var l=e[i](a),c=l.value}catch(e){n(e);return}l.done?t(c):Promise.resolve(c).then(r,o)}function eW(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function eJ(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){eW(e,t,n[t])})}return e}function eQ(e,t){return t=null!=t?t:{},Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):(function(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);n.push.apply(n,r)}return n})(Object(t)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(t,n))}),e}var eX=function(){var t,r,o,i,a,l,c,u,s,p=(0,x.useField)(),f=(0,x.useFieldSchema)(),d=(0,e.useTableBlockContext)(),m=(0,e.useFilterBlock)().getDataBlocks,y=null==d||null==(o=d.service)?void 0:o.loading,b=(0,n.useRef)(null);return b.current=d,(0,n.useEffect)(function(){if(!y){var e,t,n,r=null==d||null==(e=d.service)?void 0:e.data,o=(null==r?void 0:r.data)||[],i=(null==r?void 0:r.meta)||{},a=null==d||null==(n=d.field)||null==(t=n.data)?void 0:t.selectedRowKeys;(0,e_.isEqual)(p.value,o)||(p.value=o,null==p||p.setInitialValue(o)),p.data=p.data||{},(0,e_.isEqual)(p.data.selectedRowKeys,a)||(p.data.selectedRowKeys=a),p.componentProps.pagination=p.componentProps.pagination||{},p.componentProps.pagination.pageSize=null==i?void 0:i.pageSize,p.componentProps.pagination.total=null==i?void 0:i.count,p.componentProps.pagination.current=null==i?void 0:i.page}},[p,null==d||null==(i=d.service)?void 0:i.data,y,null==d||null==(l=d.field)||null==(a=l.data)?void 0:a.selectedRowKeys]),{bordered:d.bordered,childrenColumnName:d.childrenColumnName,loading:null==d||null==(c=d.service)?void 0:c.loading,showIndex:d.showIndex,dragSort:d.dragSort&&d.dragSortBy,rowKey:d.rowKey||(null==f||null==(u=f["x-component-props"])?void 0:u.rowKey)||"id",pagination:(null==f||null==(s=f["x-component-props"])?void 0:s.pagination)!==!1&&p.componentProps.pagination,onRowSelectionChange:(0,n.useCallback)(function(e,t){var n,r,o;d.field.data=(null==d||null==(n=d.field)?void 0:n.data)||{},d.field.data.selectedRowKeys=e,d.field.data.selectedRowData=t,null==d||null==(o=d.field)||null==(r=o.onRowSelect)||r.call(o,e)},[]),onRowDragEnd:(0,n.useCallback)((t=function(e){var t,n;return function(e,t){var n,r,o,i,a={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return i={next:l(0),throw:l(1),return:l(2)},"function"==typeof Symbol&&(i[Symbol.iterator]=function(){return this}),i;function l(i){return function(l){var c=[i,l];if(n)throw TypeError("Generator is already executing.");for(;a;)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 a.label++,{value:c[1],done:!1};case 5:a.label++,r=c[1],c=[0];continue;case 7:c=a.ops.pop(),a.trys.pop();continue;default:if(!(o=(o=a.trys).length>0&&o[o.length-1])&&(6===c[0]||2===c[0])){a=0;continue}if(3===c[0]&&(!o||c[1]>o[0]&&c[1]<o[3])){a.label=c[1];break}if(6===c[0]&&a.label<o[1]){a.label=o[1],o=c;break}if(o&&a.label<o[2]){a.label=o[2],a.ops.push(c);break}o[2]&&a.ops.pop(),a.trys.pop();continue}c=t.call(e,a)}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(r){switch(r.label){case 0:return t=e.from,n=e.to,[4,d.resource.move({sourceId:t[d.rowKey||"id"],targetId:n[d.rowKey||"id"],sortField:d.dragSort&&d.dragSortBy})];case 1:return r.sent(),d.service.refresh(),[2]}})},r=function(){var e=this,n=arguments;return new Promise(function(r,o){var i=t.apply(e,n);function a(e){eH(i,r,o,a,l,"next",e)}function l(e){eH(i,r,o,a,l,"throw",e)}a(void 0)})},function(e){return r.apply(this,arguments)}),[d.rowKey,d.dragSort,d.dragSortBy]),onChange:(0,n.useCallback)(function(e,t,n){var r,o,i,a,l,c,u,s,p,d,m=e.current,y=e.pageSize,v=null==(i=f.parent)||null==(o=i["x-decorator-props"])||null==(r=o.params)?void 0:r.sort,h=n.order?"ascend"===n.order?[n.field]:["-".concat(n.field)]:v||b.current.dragSortBy,g=y||(null==(c=f.parent)||null==(l=c["x-decorator-props"])||null==(a=l.params)?void 0:a.pageSize),x=eQ(eJ({},null==(p=b.current)||null==(s=p.service)||null==(u=s.params)?void 0:u[0]),{page:m||1,pageSize:g});h&&(x.sort=h),null==(d=b.current)||d.service.run(x)},[f.parent]),onClickRow:(0,n.useCallback)(function(t,n,r){var o=(0,e.findFilterTargets)(f),i=o.targets,a=o.uid,l=m();if(!i||!i.some(function(e){return l.some(function(t){return t.uid===e.uid})}))return void n(function(e){return e.length?[]:e});var c=l.find(function(e){return e.uid===f.parent["x-uid"]});l.forEach(function(n){var o,l,u,s,p=i.find(function(e){return e.uid===n.uid});if(p){var f,m,y,b,v,h=null==(o=n.foreignKeyFields)?void 0:o.some(function(e){return e.name===p.field}),g=(f=c,m=p.field,(null==(b=null==f||null==(y=f.associatedFields)?void 0:y.find(function(e){return e.foreignKey===m}))?void 0:b.sourceKey)||"id"),x=[t[h?g:d.rowKey]],O=(null==(l=n.service.params)?void 0:l[0])||{},w=(null==(s=n.service.params)||null==(u=s[1])?void 0:u.filters)||{};if(r.includes(t[d.rowKey])){if("manual"===n.dataLoadingMode)return n.clearData();delete w[a]}else w[a]={$and:[eW({},p.field||d.rowKey,eW({},p.field?"$in":"$eq",x))]};var S=(0,e.mergeFilter)(((function(e){if(Array.isArray(e))return eG(e)})(v=Object.values(w).map(function(t){return(0,e.removeNullCondition)(t)}))||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(v)||function(e,t){if(e){if("string"==typeof e)return eG(e,void 0);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 eG(e,t)}}(v)||function(){throw TypeError("Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()).concat([n.defaultFilter]));return n.doFilter(eQ(eJ({},O),{page:1,filter:S}),{filters:w})}}),n(function(e){return(null==e?void 0:e.includes(t[d.rowKey]))?[]:[t[d.rowKey]]})},[d.rowKey,f,m]),onExpand:(0,n.useCallback)(function(e,t){var n,r;null==d||null==(n=(r=d.field).onExpandClick)||n.call(r,e,t)},[])}};function eY(e,t,n,r,o,i,a){try{var l=e[i](a),c=l.value}catch(e){n(e);return}l.done?t(c):Promise.resolve(c).then(r,o)}function eZ(e){return function(){var t=this,n=arguments;return new Promise(function(r,o){var i=e.apply(t,n);function a(e){eY(i,r,o,a,l,"next",e)}function l(e){eY(i,r,o,a,l,"throw",e)}a(void 0)})}}function e0(e,t){var n,r,o,i,a={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return i={next:l(0),throw:l(1),return:l(2)},"function"==typeof Symbol&&(i[Symbol.iterator]=function(){return this}),i;function l(i){return function(l){var c=[i,l];if(n)throw TypeError("Generator is already executing.");for(;a;)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 a.label++,{value:c[1],done:!1};case 5:a.label++,r=c[1],c=[0];continue;case 7:c=a.ops.pop(),a.trys.pop();continue;default:if(!(o=(o=a.trys).length>0&&o[o.length-1])&&(6===c[0]||2===c[0])){a=0;continue}if(3===c[0]&&(!o||c[1]>o[0]&&c[1]<o[3])){a.label=c[1];break}if(6===c[0]&&a.label<o[1]){a.label=o[1],o=c;break}if(o&&a.label<o[2]){a.label=o[2],a.ops.push(c);break}o[2]&&a.ops.pop(),a.trys.pop();continue}c=t.call(e,a)}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 e1=function(t){var o=(0,n.useContext)(A).department;return r().createElement(e.ResourceActionProvider,{collection:"users",request:{resource:"users",action:"listExcludeDept",params:{departmentId:null==o?void 0:o.id}}},t.children)},e2=function(){var t,r,o=(0,n.useContext)(e.CollectionContext),i=(0,e.useFilterFieldOptions)(o.fields),a=(0,e.useResourceActionContext)();return(0,e.useFilterFieldProps)({options:i,params:(null==(r=a.state)||null==(t=r.params)?void 0:t[0])||a.params,service:a})},e6=function(){var t=(0,n.useContext)(A).department,o=(0,e.useTableBlockContext)().service.refresh,i=(0,n.useRef)([]),a=(0,e.useAPIClient)();return r().createElement(e.SchemaComponent,{scope:{useAddMembersActionProps:function(){var t=(0,n.useContext)(A).department,r=(0,e.useActionContext)().setVisible;return{onClick:function(){return eZ(function(){var e;return e0(this,function(n){switch(n.label){case 0:if(!(null==(e=i.current)?void 0:e.length))return[2];return[4,a.resource("departments.members",t.id).add({values:e})];case 1:return n.sent(),i.current=[],o(),null==r||r(!1),[2]}})})()}}},department:t,handleSelect:function(e){i.current=e},useAddMembersFilterActionProps:e2},components:{AddMembersListProvider:e1},schema:eg})},e4=function(){var t=l().t,r=o.App.useApp().message,i=(0,e.useAPIClient)(),a=(0,e.useTableBlockContext)(),c=a.service.refresh,u=a.field,s=(0,n.useContext)(A).department;return{run:function(){return eZ(function(){var e,n;return e0(this,function(o){switch(o.label){case 0:if(!(null==(n=null==u||null==(e=u.data)?void 0:e.selectedRowKeys)?void 0:n.length))return r.warning(t("Please select members")),[2];return[4,i.resource("departments.members",s.id).remove({values:n})];case 1:return o.sent(),u.data.selectedRowKeys=[],c(),[2]}})})()}}},e3=function(){var t=(0,e.useAPIClient)(),r=(0,n.useContext)(A).department,o=(0,e.useRecord)().id,i=(0,e.useTableBlockContext)().service.refresh;return{run:function(){return eZ(function(){return e0(this,function(e){switch(e.label){case 0:return[4,t.resource("departments.members",r.id).remove({values:[o]})];case 1:return e.sent(),i(),[2]}})})()}}},e5=function(){var t,n=(0,e.useTableBlockContext)().service.data;return(0,l().t)("Total {{count}} members",{count:null==n||null==(t=n.meta)?void 0:t.count})},e8=function(){var t=(0,e.useTableBlockContext)().service;return{onClick:function(){return eZ(function(){var e;return e0(this,function(n){return null==t||null==(e=t.refresh)||e.call(t),[2]})})()}}},e7=function(){return(0,n.useContext)(A).department?r().createElement(e.SchemaComponent,{scope:{useRemoveMemberAction:e3},schema:ev}):null},e9=function(){return(0,n.useContext)(A).department?r().createElement(e.SchemaComponent,{schema:eb}):null},te=function(){var t,r,o=(0,n.useContext)(e.CollectionContext),i=(0,e.useFilterFieldOptions)(o.fields),a=(0,e.useTableBlockContext)().service;return(0,e.useFilterFieldProps)({options:i,params:(null==(r=a.state)||null==(t=r.params)?void 0:t[0])||a.params,service:a})},tt=function(){var t=l().t,o=(0,n.useContext)(A),i=o.department,a=o.user,c=(0,e.useTableBlockContext)().service,u=c.data,s=c.setState;(0,n.useEffect)(function(){null==s||s({selectedRowKeys:[]})},[u,s]);var p=(0,n.useMemo)(function(){return eh(i,a)},[i,a]);return r().createElement(r().Fragment,null,a?r().createElement("h2",null,t("Search results")):r().createElement("h2",null,t((null==i?void 0:i.title)||"All users")),r().createElement(e.SchemaComponent,{scope:{useBulkRemoveMembersAction:e4,t:t,useShowTotal:e5,useRefreshActionProps:e8,useMemberFilterActionProps:te,useTableBlockProps:eX},components:{MemberActions:e9,AddMembers:e6,RowRemoveAction:e7,DepartmentField:ew,IsOwnerField:eS,UserDepartmentsField:ez},schema:p}))};function tn(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 tr(e,t,n,r,o,i,a){try{var l=e[i](a),c=l.value}catch(e){n(e);return}l.done?t(c):Promise.resolve(c).then(r,o)}function to(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){var r;r=n[t],t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r})}return e}function ti(e,t){return t=null!=t?t:{},Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):(function(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);n.push.apply(n,r)}return n})(Object(t)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(t,n))}),e}var ta=function(e){var t,i,a,l=(0,x.useField)(),c=(t=r().useState({label:null,value:null}),function(e){if(Array.isArray(e))return e}(t)||function(e,t){var n,r,o=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=o){var i=[],a=!0,l=!1;try{for(o=o.call(e);!(a=(n=o.next()).done)&&(i.push(n.value),i.length!==t);a=!0);}catch(e){l=!0,r=e}finally{try{a||null==o.return||o.return()}finally{if(l)throw r}}return i}}(t,2)||function(e,t){if(e){if("string"==typeof e)return tn(e,2);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 tn(e,t)}}(t,2)||function(){throw TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()),u=c[0],s=c[1],p=e.treeData,f=e.initData,d=e.getByKeyword,m=e.loadData,y=e.loadedKeys,b=e.setLoadedKeys,v=e.originData,h=(i=function(e){return function(e,t){var n,r,o,i,a={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return i={next:l(0),throw:l(1),return:l(2)},"function"==typeof Symbol&&(i[Symbol.iterator]=function(){return this}),i;function l(i){return function(l){var c=[i,l];if(n)throw TypeError("Generator is already executing.");for(;a;)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 a.label++,{value:c[1],done:!1};case 5:a.label++,r=c[1],c=[0];continue;case 7:c=a.ops.pop(),a.trys.pop();continue;default:if(!(o=(o=a.trys).length>0&&o[o.length-1])&&(6===c[0]||2===c[0])){a=0;continue}if(3===c[0]&&(!o||c[1]>o[0]&&c[1]<o[3])){a.label=c[1];break}if(6===c[0]&&a.label<o[1]){a.label=o[1],o=c;break}if(o&&a.label<o[2]){a.label=o[2],a.ops.push(c);break}o[2]&&a.ops.pop(),a.trys.pop();continue}c=t.call(e,a)}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:if(!e)return f(v),[2];return[4,d(e)];case 1:return t.sent(),[2]}})},a=function(){var e=this,t=arguments;return new Promise(function(n,r){var o=i.apply(e,t);function a(e){tr(o,n,r,a,l,"next",e)}function l(e){tr(o,n,r,a,l,"throw",e)}a(void 0)})},function(e){return a.apply(this,arguments)}),g=(0,n.useCallback)(function(e){var t=e.title,n=e.parent;return n?g(n)+" / "+t:t},[]);return(0,n.useEffect)(function(){f(v)},[v,f]),(0,n.useEffect)(function(){if(!l.value)return void s({label:null,value:null});s({label:g(l.value)||l.value.label,value:l.value.id})},[l.value,g]),r().createElement(o.TreeSelect,{value:u,onSelect:function(e,t){l.setValue(t)},onChange:function(e){e||l.setValue(null)},treeData:p,treeLoadedKeys:y,onTreeLoad:function(e){return b(e)},loadData:function(e){return m({key:e.id,children:e.children})},fieldNames:{value:"id"},showSearch:!0,allowClear:!0,treeNodeFilterProp:"title",onSearch:h,labelInValue:!0})},tl=function(){var e=ee(),t=((0,n.useContext)(A).departmentsResource||{}).service.data;return r().createElement(ta,ti(to({},e),{originData:null==t?void 0:t.data}))},tc=function(){var t=ee(),o=t.setTreeData,i=t.getChildrenIds,a=(0,e.useRecord)(),l=((0,n.useContext)(A).departmentsResource||{}).service.data;return(0,n.useEffect)(function(){if(a.id){var e=i(a.id);e.push(a.id),o(function(t){var n=function(t){return t.map(function(t){return e.includes(t.id)&&(t.disabled=!0),t.children&&(t.children=n(t.children)),t})};return n(t)})}},[o,a.id,i]),r().createElement(ta,ti(to({},t),{originData:null==l?void 0:l.data}))},tu=function(){return r().createElement(e.SchemaComponentOptions,{components:{SuperiorDepartmentSelect:tc,DepartmentSelect:tl}},r().createElement(o.Row,{gutter:48,style:{flexWrap:"nowrap"}},r().createElement(o.Col,{span:6,style:{borderRight:"1px solid #eee",minWidth:"300px"}},r().createElement(j,null,r().createElement(ef,null))),r().createElement(o.Col,{flex:"auto",style:{overflow:"hidden"}},r().createElement(C,null,r().createElement(tt,null)))))},ts=function(){var t,n,o;return r().createElement(e.SchemaComponent,{components:{DepartmentManagement:tu},schema:{type:"void",properties:(t={},n=(0,u.uid)(),o={type:"void","x-decorator":"CardItem","x-component":"DepartmentManagement"},n in t?Object.defineProperty(t,n,{value:o,enumerable:!0,configurable:!0,writable:!0}):t[n]=o,t)}})},tp=m(465),tf=m.n(tp);function td(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}var tm=function(){var e;return{type:"void",properties:{actions:{type:"void","x-component":"ActionBar","x-component-props":{style:{marginBottom:16}},properties:(td(e={},(0,u.uid)(),{type:"void",title:'{{ t("Filter") }}',"x-action":"filter","x-component":"Filter.Action","x-use-component-props":"useFilterActionProps","x-component-props":{icon:"FilterOutlined"},"x-align":"left"}),td(e,"actions",{type:"void","x-component":"Space",properties:{remove:{type:"void",title:'{{t("Remove")}}',"x-component":"Action","x-component-props":{icon:"MinusOutlined",confirm:{title:"{{t('Remove')}}",content:"{{t('Are you sure you want to remove these departments?')}}"},style:{marginRight:8},useAction:"{{ useBulkRemoveDepartments }}"}},create:{type:"void",title:'{{t("Add departments")}}',"x-component":"Action","x-component-props":{type:"primary",icon:"PlusOutlined"},properties:{drawer:{type:"void","x-component":"Action.Drawer","x-decorator":"FormV2",title:'{{t("Add departments")}}',properties:{table:{type:"void","x-decorator":"FormItem","x-component":"DepartmentTable","x-component-props":{useDataSource:"{{ useDataSource }}",useDisabled:"{{ useDisabled }}"}},footer:{type:"void","x-component":"Action.Drawer.Footer",properties:{cancel:{title:'{{t("Cancel")}}',"x-component":"Action","x-component-props":{useAction:"{{ cm.useCancelAction }}"}},submit:{title:'{{t("Submit")}}',"x-component":"Action","x-component-props":{type:"primary",useAction:"{{ useAddDepartments }}"}}}}}}}}}}),e)},table:{type:"void","x-component":"Table.Void","x-component-props":{rowKey:"id",rowSelection:{type:"checkbox"},useDataSource:"{{ cm.useDataSourceFromRAC }}"},properties:{title:{type:"void",title:'{{t("Department name")}}',"x-decorator":"Table.Column.Decorator","x-component":"Table.Column",properties:{title:{type:"string","x-component":"DepartmentTitle"}}},actions:{type:"void",title:'{{t("Actions")}}',"x-component":"Table.Column",properties:{actions:{type:"void","x-component":"Space","x-component-props":{split:"|"},properties:{remove:{type:"void",title:'{{ t("Remove") }}',"x-component":"Action.Link","x-component-props":{confirm:{title:"{{t('Remove department')}}",content:"{{t('Are you sure you want to remove it?')}}"},useAction:"{{ useRemoveDepartment }}"}}}}}}}}}}};function ty(e,t,n,r,o,i,a){try{var l=e[i](a),c=l.value}catch(e){n(e);return}l.done?t(c):Promise.resolve(c).then(r,o)}function tb(e){return function(){var t=this,n=arguments;return new Promise(function(r,o){var i=e.apply(t,n);function a(e){ty(i,r,o,a,l,"next",e)}function l(e){ty(i,r,o,a,l,"throw",e)}a(void 0)})}}function tv(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){var r;r=n[t],t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r})}return e}function th(e,t){var n,r,o,i,a={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return i={next:l(0),throw:l(1),return:l(2)},"function"==typeof Symbol&&(i[Symbol.iterator]=function(){return this}),i;function l(i){return function(l){var c=[i,l];if(n)throw TypeError("Generator is already executing.");for(;a;)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 a.label++,{value:c[1],done:!1};case 5:a.label++,r=c[1],c=[0];continue;case 7:c=a.ops.pop(),a.trys.pop();continue;default:if(!(o=(o=a.trys).length>0&&o[o.length-1])&&(6===c[0]||2===c[0])){a=0;continue}if(3===c[0]&&(!o||c[1]>o[0]&&c[1]<o[3])){a.label=c[1];break}if(6===c[0]&&a.label<o[1]){a.label=o[1],o=c;break}if(o&&a.label<o[2]){a.label=o[2],a.ops.push(c);break}o[2]&&a.ops.pop(),a.trys.pop();continue}c=t.call(e,a)}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 tg=function(){var t=(0,e.useAPIClient)(),r=(0,n.useContext)(tp.RolesManagerContext).role,o=(0,e.useRecord)().id,i=(0,e.useResourceActionContext)().refresh;return{run:function(){return tb(function(){return th(this,function(e){switch(e.label){case 0:return[4,t.resource("roles/".concat(null==r?void 0:r.name,"/departments")).remove({values:[o]})];case 1:return e.sent(),i(),[2]}})})()}}},tx=function(){var t=l().t,r=o.App.useApp().message,i=(0,e.useAPIClient)(),a=(0,e.useResourceActionContext)(),c=a.state,u=a.setState,s=a.refresh,p=(0,n.useContext)(tp.RolesManagerContext).role;return{run:function(){return tb(function(){var e;return th(this,function(n){switch(n.label){case 0:if(!(null==(e=null==c?void 0:c.selectedRowKeys)?void 0:e.length))return r.warning(t("Please select departments")),[2];return[4,i.resource("roles/".concat(null==p?void 0:p.name,"/departments")).remove({values:e})];case 1:return n.sent(),null==u||u({selectedRowKeys:[]}),s(),[2]}})})()}}},tO=function(){var t=(0,e.useRecord)(),n=function(e){var t=e.title,r=e.parent;return r?n(r)+" / "+t:t};return r().createElement(r().Fragment,null,n(t))},tw=function(t){var n,r,o={resource:"departments",action:"list",params:{appends:["roles","parent(recursively=true)"],sort:["createdAt"]}};return n=tv({},(0,e.useRequest)(o,t)),r=r={defaultRequest:o},Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(r)):(function(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);n.push.apply(n,r)}return n})(Object(r)).forEach(function(e){Object.defineProperty(n,e,Object.getOwnPropertyDescriptor(r,e))}),n},tS=function(){var e=(0,n.useContext)(tp.RolesManagerContext).role;return{disabled:function(t){var n;return null==t||null==(n=t.roles)?void 0:n.some(function(t){return t.name===(null==e?void 0:e.name)})}}},tA=function(){var t=(0,n.useContext)(tp.RolesManagerContext).role,r=(0,e.useAPIClient)(),o=(0,x.useForm)(),i=(0,e.useActionContext)().setVisible,a=(0,e.useResourceActionContext)().refresh,l=(o.values||{}).departments;return{run:function(){return tb(function(){return th(this,function(e){switch(e.label){case 0:return[4,r.resource("roles.departments",t.name).add({values:l.map(function(e){return e.id})})];case 1:return e.sent(),o.reset(),i(!1),a(),[2]}})})()}}},tP=function(){var t=l().t,o=(0,n.useContext)(tp.RolesManagerContext).role,i=(0,e.useRequest)({resource:"roles/".concat(null==o?void 0:o.name,"/departments"),action:"list",params:{appends:["parent","parent.parent(recursively=true)"]}},{ready:!!o});(0,n.useEffect)(function(){i.run()},[o]);var a=(0,n.useMemo)(function(){return tm()},[o]);return r().createElement(e.ResourceActionContext.Provider,{value:tv({},i)},r().createElement(e.CollectionProvider_deprecated,{collection:h},r().createElement(e.SchemaComponent,{schema:a,components:{DepartmentTable:eT,DepartmentTitle:tO},scope:{useFilterActionProps:et,t:t,useRemoveDepartment:tg,useBulkRemoveDepartments:tx,useDataSource:tw,useDisabled:tS,useAddDepartments:tA}})))},tj=(0,x.connect)(function(){var e=l().t;return r().createElement("div",{style:{color:"#ccc"}},e("This field is currently not supported for use in form blocks.")," ")},(0,x.mapReadPretty)(e.AssociationField.ReadPretty)),tC=new e.SchemaSettings({name:"fieldSettings:component:UserDepartmentsField",items:[]});function tD(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function tE(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){tD(e,t,n[t])})}return e}function tk(e,t){return t=null!=t?t:{},Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):(function(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);n.push.apply(n,r)}return n})(Object(t)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(t,n))}),e}var tF=function(){var t=(0,e.useCollection_deprecated)().getField,n=(0,e.useCompile)(),r=(0,x.useFieldSchema)(),o=(0,e.useCollectionManager_deprecated)().getCollectionJoinField,i=r.reduceProperties(function(e,t){return"CollectionField"===t["x-component"]?t:e},null);if(!i)return{};var a=t(i.name)||o(null==i?void 0:i["x-collection-field"]);return{columnSchema:r,fieldSchema:i,collectionField:a,uiSchema:n(null==a?void 0:a.uiSchema)}};function tI(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){var r;r=n[t],t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r})}return e}var tR=new e.SchemaSettings({name:"fieldSettings:component:UserMainDepartmentField",items:[tI({},{name:"fieldComponent",type:"select",useComponentProps:function(){var t=l().t,n=(0,x.useField)(),r=tF(),o=r.fieldSchema,i=r.collectionField,a=(0,x.useFieldSchema)(),c=o||a,u=(0,e.useFieldModeOptions)({fieldSchema:o,collectionField:i}),s=(0,e.useDesignable)().dn;return{title:t("Field component"),options:u,value:"Select",onChange:function(e){var t=tD({},"x-uid",c["x-uid"]);c["x-component-props"]=c["x-component-props"]||{},c["x-component-props"].mode=e,t["x-component-props"]=c["x-component-props"],n.componentProps=n.componentProps||{},n.componentProps.mode=e,s.emit("patch",{schema:t}),s.refresh()}}}}),tI({},{name:"titleField",type:"select",useComponentProps:function(){var t,n,r,o,i=l().t,a=(0,x.useField)(),c=(0,e.useDesignable)().dn,u=(0,e.useTitleFieldOptions)(),s=tF(),p=(s.uiSchema,s.fieldSchema),f=s.collectionField,d=(0,x.useFieldSchema)(),m=p||d,y=(0,e.useCollectionField)(),b=f||y,v=tE({},null==b||null==(n=b.uiSchema)||null==(t=n["x-component-props"])?void 0:t.fieldNames,null==a||null==(r=a.componentProps)?void 0:r.fieldNames,null==m||null==(o=m["x-component-props"])?void 0:o.fieldNames);return{title:i("Title field"),options:u,value:null==v?void 0:v.label,onChange:function(e){var t,n,r,o,i,l,u=tD({},"x-uid",m["x-uid"]),s=tk(tE({},null==b||null==(n=b.uiSchema)||null==(t=n["x-component-props"])?void 0:t.fieldNames,null==(r=m["x-component-props"])?void 0:r.fieldNames),{label:e});m["x-component-props"]=m["x-component-props"]||{},m["x-component-props"].fieldNames=s,u["x-component-props"]=m["x-component-props"],a.componentProps.fieldNames=null==(o=m["x-component-props"])?void 0:o.fieldNames;var p=null==(l=a.path)?void 0:l.splice((null==(i=a.path)?void 0:i.length)-1,1);a.form.query("".concat(p.concat("*."+m.name))).forEach(function(e){e.componentProps.fieldNames=v}),c.emit("patch",{schema:u}),c.refresh()}}}}),tI({},{name:"enableLink",type:"switch",useVisible:function(){return(0,x.useField)().readPretty},useComponentProps:function(){var t,n=l().t,r=(0,x.useField)(),o=tF().fieldSchema,i=(0,x.useFieldSchema)(),a=o||i,c=(0,e.useDesignable)().dn;return{title:n("Enable link"),checked:(null==(t=a["x-component-props"])?void 0:t.enableLink)!==!1,onChange:function(e){a["x-component-props"]=tk(tE({},null==a?void 0:a["x-component-props"]),{enableLink:e}),r.componentProps.enableLink=e,c.emit("patch",{schema:{"x-uid":a["x-uid"],"x-component-props":tE({},null==a?void 0:a["x-component-props"])}}),c.refresh()}}}})]}),tT=new e.SchemaSettings({name:"fieldSettings:component:DepartmentOwnersField",items:[]});function tM(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 tK(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n,r,o=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=o){var i=[],a=!0,l=!1;try{for(o=o.call(e);!(a=(n=o.next()).done)&&(i.push(n.value),!t||i.length!==t);a=!0);}catch(e){l=!0,r=e}finally{try{a||null==o.return||o.return()}finally{if(l)throw r}}return i}}(e,t)||tB(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 tq(e){return function(e){if(Array.isArray(e))return tM(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||tB(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 tB(e,t){if(e){if("string"==typeof e)return tM(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 tM(e,t)}}var tN=(0,x.connect)(function(){var t=tK((0,n.useState)(!1),2),i=t[0],a=t[1],c=(0,e.useRecord)(),u=(0,x.useField)(),s=tK((0,n.useState)([]),2),p=s[0],f=s[1],d=(0,n.useRef)([]),m=l().t,y=!(null==c?void 0:c.id);return(0,n.useEffect)(function(){u.value&&f(u.value.map(function(e){return{value:e.id,label:e.nickname||e.username}}))},[u.value]),r().createElement(e.ActionContextProvider,{value:{visible:i,setVisible:a}},r().createElement(o.Select,{open:!1,onChange:function(e){if(!e)return void u.setValue([]);u.setValue(e.map(function(e){var t=e.label;return{id:e.value,nickname:t}}))},mode:"multiple",value:p,labelInValue:!0,onDropdownVisibleChange:function(e){return a(e)},disabled:y,placeholder:y?m("Please create department first"):""}),r().createElement(e.SchemaComponent,{schema:v,components:{RequestProvider:function(t){var n;return r().createElement(e.ResourceActionProvider,{collection:"users",request:{resource:"departments/".concat(c.id,"/members"),action:"list",params:{disableDefaultAppends:!0,filter:(null==(n=u.value)?void 0:n.length)?{id:{$notIn:u.value.map(function(e){return e.id})}}:{}}}},t.children)}},scope:{department:c,handleSelect:function(e,t){d.current=t},useSelectOwners:function(){var t=(0,e.useActionContext)().setVisible;return{run:function(){var e=u.value||[];u.setValue(tq(e).concat(tq(d.current))),d.current=[],t(!1)}}},useFilterActionProps:et}}))},(0,x.mapReadPretty)(function(t){var n,o,i=(0,x.useFieldSchema)();return i["x-component-props"]=(n=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){var r;r=n[t],t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r})}return e}({},i["x-component-props"]),o=o={fieldNames:{label:"nickname",value:"id"}},Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(o)):(function(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);n.push.apply(n,r)}return n})(Object(o)).forEach(function(e){Object.defineProperty(n,e,Object.getOwnPropertyDescriptor(o,e))}),n),r().createElement(e.AssociationField.ReadPretty,t)}));function tV(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 tU(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){var r;r=n[t],t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r})}return e}function tL(e,t){return t=null!=t?t:{},Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):(function(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);n.push.apply(n,r)}return n})(Object(t)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(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:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=o){var i=[],a=!0,l=!1;try{for(o=o.call(e);!(a=(n=o.next()).done)&&(i.push(n.value),!t||i.length!==t);a=!0);}catch(e){l=!0,r=e}finally{try{a||null==o.return||o.return()}finally{if(l)throw r}}return i}}(e,t)||tG(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 tz(e){return function(e){if(Array.isArray(e))return tV(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||tG(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){return e&&"undefined"!=typeof Symbol&&e.constructor===Symbol?"symbol":typeof e}function tG(e,t){if(e){if("string"==typeof e)return tV(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 tV(e,t)}}var tH=function(t){var n={resource:"departments",action:"list",params:{appends:["parent(recursively=true)"],sort:["createdAt"]}};return tL(tU({},(0,e.useRequest)(n,t)),{defaultRequest:n})},tW=(0,x.connect)(function(){var t=l().t,i=(0,x.useField)(),a=t$((0,n.useState)(!1),2),c=a[0],u=a[1],s=t$((0,n.useState)([]),2),p=s[0],f=s[1];(0,n.useEffect)(function(){i.value&&f((Array.isArray(i.value)?i.value:[]).map(function(e){var t=(void 0===e?"undefined":t_(e))==="object"?e.id:e,n=(void 0===e?"undefined":t_(e))==="object"&&(e.title||eO(e))||String(t);return{value:t,label:n}}))},[i.value]);var d={type:"void",properties:{drawer:{title:t("Select Departments"),"x-decorator":"Form","x-component":"Action.Drawer",properties:{table:{type:"void","x-decorator":"FormItem","x-component":"DepartmentTable","x-component-props":{useDataSource:"{{ useDataSource }}",useDisabled:"{{ useDisabled }}"}},footer:{type:"void","x-component":"Action.Drawer.Footer",properties:{cancel:{title:t("Cancel"),"x-component":"Action","x-component-props":{useAction:"{{ cm.useCancelAction }}"}},confirm:{title:t("Confirm"),"x-component":"Action","x-component-props":{type:"primary",useAction:"{{ useConfirmDepartments }}"}}}}}}}};return r().createElement(e.ActionContextProvider,{value:{visible:c,setVisible:u}},r().createElement(o.Select,{mode:"multiple",labelInValue:!0,open:!1,value:p,onChange:function(e){if(!e||0===e.length){i.setValue([]),f([]);return}f(e),i.setValue(e.map(function(e){return{id:e.value,title:e.label}}))},onDropdownVisibleChange:function(e){return u(e)}}),r().createElement(e.SchemaComponent,{schema:d,components:{DepartmentTable:eT},scope:{useDataSource:tH,useConfirmDepartments:function(){var e=(0,x.useForm)();return{run:function(){var t=(e.values||{}).departments,n=tz(Array.isArray(i.value)?i.value:[]).concat(tz(void 0===t?[]:t)),r=new Map;n.forEach(function(e){var t;return r.set(null!=(t=e.id)?t:e,e)});var o=Array.from(r.values());i.setValue(o),e.reset(),u(!1)}}},useDisabled:function(){return{disabled:function(e){return(Array.isArray(i.value)?i.value:[]).some(function(t){return((void 0===t?"undefined":t_(t))==="object"?t.id:t)===e.id})}}}}}))},(0,x.mapReadPretty)(function(t){var n=(0,x.useFieldSchema)();return n["x-component-props"]=tL(tU({},n["x-component-props"]),{fieldNames:{label:"title",value:"id"}}),r().createElement(e.AssociationField.ReadPretty,t)}));function tJ(e,t,n,r,o,i,a){try{var l=e[i](a),c=l.value}catch(e){n(e);return}l.done?t(c):Promise.resolve(c).then(r,o)}function tQ(e){return function(){var t=this,n=arguments;return new Promise(function(r,o){var i=e.apply(t,n);function a(e){tJ(i,r,o,a,l,"next",e)}function l(e){tJ(i,r,o,a,l,"throw",e)}a(void 0)})}}function tX(e,t,n){return(tX=t1()?Reflect.construct:function(e,t,n){var r=[null];r.push.apply(r,t);var o=new(Function.bind.apply(e,r));return n&&tZ(o,n.prototype),o}).apply(null,arguments)}function tY(e){return(tY=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}function tZ(e,t){return(tZ=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function t0(e){var t="function"==typeof Map?new Map:void 0;return(t0=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 tX(e,arguments,tY(this).constructor)}return n.prototype=Object.create(e.prototype,{constructor:{value:n,enumerable:!1,writable:!0,configurable:!0}}),tZ(n,e)})(e)}function t1(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch(e){}return(t1=function(){return!!e})()}function t2(e,t){var n,r,o,i,a={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return i={next:l(0),throw:l(1),return:l(2)},"function"==typeof Symbol&&(i[Symbol.iterator]=function(){return this}),i;function l(i){return function(l){var c=[i,l];if(n)throw TypeError("Generator is already executing.");for(;a;)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 a.label++,{value:c[1],done:!1};case 5:a.label++,r=c[1],c=[0];continue;case 7:c=a.ops.pop(),a.trys.pop();continue;default:if(!(o=(o=a.trys).length>0&&o[o.length-1])&&(6===c[0]||2===c[0])){a=0;continue}if(3===c[0]&&(!o||c[1]>o[0]&&c[1]<o[3])){a.label=c[1];break}if(6===c[0]&&a.label<o[1]){a.label=o[1],o=c;break}if(o&&a.label<o[2]){a.label=o[2],a.ops.push(c);break}o[2]&&a.ops.pop(),a.trys.pop();continue}c=t.call(e,a)}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 t6=function(n){var o;if("function"!=typeof n&&null!==n)throw TypeError("Super expression must either be null or a function");function i(){var e,t;if(!(this instanceof i))throw TypeError("Cannot call a class as a function");return e=i,t=arguments,e=tY(e),function(e,t){var n;if(t&&("object"==((n=t)&&"undefined"!=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,t1()?Reflect.construct(e,t||[],tY(this).constructor):e.apply(this,t))}return i.prototype=Object.create(n&&n.prototype,{constructor:{value:i,writable:!0,configurable:!0}}),n&&tZ(i,n),o=[{key:"afterAdd",value:function(){return tQ(function(){return t2(this,function(e){return[2]})})()}},{key:"beforeLoad",value:function(){return tQ(function(){return t2(this,function(e){return[2]})})()}},{key:"load",value:function(){var n=this;return tQ(function(){return t2(this,function(o){return n.app.addComponents({UserDepartmentsField:tW,UserMainDepartmentField:tj,DepartmentOwnersField:tN}),n.app.schemaSettingsManager.add(tC),n.app.schemaSettingsManager.add(tR),n.app.schemaSettingsManager.add(tT),n.app.pluginSettingsManager.add("users-permissions.departments",{icon:"ApartmentOutlined",title:(0,t.tval)("Departments",{ns:"departments"}),Component:function(){var t,n,o=(0,e.useSchemaComponentContext)();return r().createElement(e.SchemaComponentContext.Provider,{value:(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){var r;r=n[t],t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r})}return e}({},o),n=n={designable:!1},Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(n)):(function(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);n.push.apply(n,r)}return n})(Object(n)).forEach(function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(n,e))}),t)},r().createElement(P,null,r().createElement(ts,null)))},sort:2,aclSnippet:"pm.departments"}),n.app.pm.get(tf()).rolesManager.add("departments",{title:(0,t.tval)("Departments",{ns:"departments"}),Component:tP}),[2]})})()}}],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)}}(i.prototype,o),i}(t0(e.Plugin)),t4=t6}(),y}()});
10
+ !function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t(require("@formily/core"),require("react-i18next"),require("react"),require("@emotion/css"),require("lodash"),require("@nocobase/plugin-acl/client"),require("@formily/shared"),require("@nocobase/client"),require("@formily/react"),require("@nocobase/utils/client"),require("@ant-design/icons"),require("antd")):"function"==typeof define&&define.amd?define("@nocobase/plugin-departments",["@formily/core","react-i18next","react","@emotion/css","lodash","@nocobase/plugin-acl/client","@formily/shared","@nocobase/client","@formily/react","@nocobase/utils/client","@ant-design/icons","antd"],t):"object"==typeof exports?exports["@nocobase/plugin-departments"]=t(require("@formily/core"),require("react-i18next"),require("react"),require("@emotion/css"),require("lodash"),require("@nocobase/plugin-acl/client"),require("@formily/shared"),require("@nocobase/client"),require("@formily/react"),require("@nocobase/utils/client"),require("@ant-design/icons"),require("antd")):e["@nocobase/plugin-departments"]=t(e["@formily/core"],e["react-i18next"],e.react,e["@emotion/css"],e.lodash,e["@nocobase/plugin-acl/client"],e["@formily/shared"],e["@nocobase/client"],e["@formily/react"],e["@nocobase/utils/client"],e["@ant-design/icons"],e.antd)}(self,function(e,t,n,r,o,i,a,l,c,u,s,p){return function(){"use strict";var f={703:function(e){var t=function(e){var t,r,o;return!!(t=e)&&"object"==typeof t&&(r=e,"[object RegExp]"!==(o=Object.prototype.toString.call(r))&&"[object Date]"!==o&&r.$$typeof!==n)},n="function"==typeof Symbol&&Symbol.for?Symbol.for("react.element"):60103;function r(e,t){return!1!==t.clone&&t.isMergeableObject(e)?l(Array.isArray(e)?[]:{},e,t):e}function o(e,t,n){return e.concat(t).map(function(e){return r(e,n)})}function i(e){return Object.keys(e).concat(Object.getOwnPropertySymbols?Object.getOwnPropertySymbols(e).filter(function(t){return Object.propertyIsEnumerable.call(e,t)}):[])}function a(e,t){try{return t in e}catch(e){return!1}}function l(e,n,c){(c=c||{}).arrayMerge=c.arrayMerge||o,c.isMergeableObject=c.isMergeableObject||t,c.cloneUnlessOtherwiseSpecified=r;var u,s,p=Array.isArray(n);return p!==Array.isArray(e)?r(n,c):p?c.arrayMerge(e,n,c):(s={},(u=c).isMergeableObject(e)&&i(e).forEach(function(t){s[t]=r(e[t],u)}),i(n).forEach(function(t){a(e,t)&&!(Object.hasOwnProperty.call(e,t)&&Object.propertyIsEnumerable.call(e,t))||(a(e,t)&&u.isMergeableObject(n[t])?s[t]=(function(e,t){if(!t.customMerge)return l;var n=t.customMerge(e);return"function"==typeof n?n:l})(t,u)(e[t],n[t],u):s[t]=r(n[t],u))}),s)}l.all=function(e,t){if(!Array.isArray(e))throw Error("first argument should be an array");return e.reduce(function(e,n){return l(e,n,t)},{})},e.exports=l},482:function(e){e.exports=s},964:function(e){e.exports=r},563:function(t){t.exports=e},505:function(e){e.exports=c},875:function(e){e.exports=a},772:function(e){e.exports=l},465:function(e){e.exports=i},584:function(e){e.exports=u},721:function(e){e.exports=p},467:function(e){e.exports=o},156:function(e){e.exports=n},238:function(e){e.exports=t}},d={};function m(e){var t=d[e];if(void 0!==t)return t.exports;var n=d[e]={exports:{}};return f[e](n,n.exports,m),n.exports}m.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return m.d(t,{a:t}),t},m.d=function(e,t){for(var n in t)m.o(t,n)&&!m.o(e,n)&&Object.defineProperty(e,n,{enumerable:!0,get:t[n]})},m.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},m.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})};var y={};return!function(){m.r(y),m.d(y,{PluginDepartmentsClient:function(){return t6},default:function(){return t4}});var e=m(772),t=m(584),n=m(156),r=m.n(n),o=m(721),i=m(482),a=m(238);function l(){return(0,a.useTranslation)(["departments","client"],{nsMode:"fallback"})}var c=function(){var t=l().t;return r().createElement(e.SchemaComponent,{scope:{t:t},schema:{type:"void",properties:{newDepartment:{type:"void",title:t("New department"),"x-component":"Action","x-component-props":{type:"text",icon:"PlusOutlined",style:{width:"100%",textAlign:"left"}},properties:{drawer:{type:"void","x-component":"Action.Drawer","x-decorator":"Form",title:t("New department"),properties:{title:{"x-component":"CollectionField","x-decorator":"FormItem",required:!0},parent:{"x-component":"CollectionField","x-decorator":"FormItem","x-collection-field":"departments.parent","x-component-props":{component:"DepartmentSelect"}},roles:{"x-component":"CollectionField","x-decorator":"FormItem","x-collection-field":"departments.roles"},footer:{type:"void","x-component":"Action.Drawer.Footer",properties:{cancel:{title:'{{t("Cancel")}}',"x-component":"Action","x-component-props":{useAction:"{{ cm.useCancelAction }}"}},submit:{title:'{{t("Submit")}}',"x-component":"Action","x-component-props":{type:"primary",useAction:"{{ useCreateDepartment }}"}}}}}}}}}}})},u=m(875);function s(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){s(e,t,n[t])})}return e}function f(e,t){return t=null!=t?t:{},Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):(function(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);n.push.apply(n,r)}return n})(Object(t)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(t,n))}),e}var d={type:"object",properties:s({},(0,u.uid)(),{type:"void","x-component":"Action.Drawer","x-decorator":"Form","x-decorator-props":{useValues:function(t){var n=(0,e.useActionContext)(),r=(0,e.useRecord)();return(0,e.useRequest)(function(){return Promise.resolve({data:{parent:p({},r)}})},f(p({},t),{refreshDeps:[n.visible]}))}},title:'{{t("New sub department")}}',properties:{title:{"x-component":"CollectionField","x-decorator":"FormItem"},parent:{"x-component":"CollectionField","x-decorator":"FormItem","x-collection-field":"departments.parent","x-component-props":{component:"DepartmentSelect"}},roles:{"x-component":"CollectionField","x-decorator":"FormItem","x-collection-field":"departments.roles"},footer:{type:"void","x-component":"Action.Drawer.Footer",properties:{cancel:{title:'{{t("Cancel")}}',"x-component":"Action","x-component-props":{useAction:"{{ cm.useCancelAction }}"}},submit:{title:'{{t("Submit")}}',"x-component":"Action","x-component-props":{type:"primary",useAction:"{{ useCreateDepartment }}"}}}}}})},b={type:"object",properties:s({},(0,u.uid)(),{type:"void","x-component":"Action.Drawer","x-decorator":"Form","x-decorator-props":{useValues:function(t){var r=(0,e.useAPIClient)(),o=(0,e.useActionContext)(),i=(0,e.useRecord)(),a=(0,e.useRequest)(function(){return r.resource("departments").get({filterByTk:i.id,appends:["parent(recursively=true)","roles","owners"]}).then(function(e){return null==e?void 0:e.data})},f(p({},t),{manual:!0}));return(0,n.useEffect)(function(){o.visible&&a.run()},[o.visible]),a}},title:'{{t("Edit department")}}',properties:{title:{"x-component":"CollectionField","x-decorator":"FormItem"},parent:{"x-component":"CollectionField","x-decorator":"FormItem","x-collection-field":"departments.parent","x-component-props":{component:"SuperiorDepartmentSelect"}},roles:{"x-component":"CollectionField","x-decorator":"FormItem","x-collection-field":"departments.roles"},owners:{title:'{{t("Owners")}}',"x-component":"DepartmentOwnersField","x-decorator":"FormItem"},footer:{type:"void","x-component":"Action.Drawer.Footer",properties:{cancel:{title:'{{t("Cancel")}}',"x-component":"Action","x-component-props":{useAction:"{{ cm.useCancelAction }}"}},submit:{title:'{{t("Submit")}}',"x-component":"Action","x-component-props":{type:"primary",useAction:"{{ useUpdateDepartment }}"}}}}}})},v={type:"void",properties:{drawer:{title:'{{t("Select Owners")}}',"x-component":"Action.Drawer",properties:{resource:{type:"void","x-decorator":"FormItem","x-component":"RequestProvider",properties:{actions:{type:"void","x-component":"ActionBar","x-component-props":{style:{marginBottom:16}},properties:{filter:{type:"void",title:'{{ t("Filter") }}',default:{$and:[{username:{$includes:""}},{nickname:{$includes:""}}]},"x-action":"filter","x-component":"Filter.Action","x-use-component-props":"useFilterActionProps","x-component-props":{icon:"FilterOutlined"},"x-align":"left"}}},table:{type:"void","x-component":"Table.Void","x-component-props":{rowKey:"id",rowSelection:{type:"checkbox",onChange:"{{ handleSelect }}"},useDataSource:"{{ cm.useDataSourceFromRAC }}"},properties:{username:{type:"void","x-decorator":"Table.Column.Decorator","x-component":"Table.Column",properties:{username:{type:"string","x-component":"CollectionField","x-read-pretty":!0}}},nickname:{type:"void","x-decorator":"Table.Column.Decorator","x-component":"Table.Column",properties:{nickname:{type:"string","x-component":"CollectionField","x-read-pretty":!0}}},phone:{type:"void","x-decorator":"Table.Column.Decorator","x-component":"Table.Column",properties:{phone:{type:"string","x-component":"CollectionField","x-read-pretty":!0}}},email:{type:"void","x-decorator":"Table.Column.Decorator","x-component":"Table.Column",properties:{email:{type:"string","x-component":"CollectionField","x-read-pretty":!0}}}}}}},footer:{type:"void","x-component":"Action.Drawer.Footer",properties:{cancel:{title:'{{t("Cancel")}}',"x-component":"Action","x-component-props":{useAction:"{{ cm.useCancelAction }}"}},confirm:{title:'{{t("Confirm")}}',"x-component":"Action","x-component-props":{type:"primary",useAction:"{{ useSelectOwners }}"}}}}}}}},h={name:"departments",fields:[{type:"snowflakeId",name:"id",primaryKey:!0,autoIncrement:!0,interface:"id",uiSchema:{type:"id",title:'{{t("ID")}}'}},{name:"title",type:"string",interface:"input",uiSchema:{type:"string",title:'{{t("Department name")}}',"x-component":"Input",required:!0}},{name:"parentId",type:"bigInt",interface:"integer",isForeignKey:!0,uiSchema:{type:"number",title:"parentId","x-component":"InputNumber","x-read-pretty":!0}},{name:"parent",type:"belongsTo",interface:"m2o",collectionName:"departments",foreignKey:"parentId",target:"departments",targetKey:"id",treeParent:!0,uiSchema:{title:'{{t("Superior department")}}',"x-component":"DepartmentSelect"}},{interface:"m2m",type:"belongsToMany",name:"roles",target:"roles",collectionName:"departments",through:"departmentsRoles",foreignKey:"departmentId",otherKey:"roleName",targetKey:"name",sourceKey:"id",uiSchema:{title:'{{t("Roles")}}',"x-component":"AssociationField","x-component-props":{multiple:!0,fieldNames:{label:"title",value:"name"}}}},{interface:"m2m",type:"belongsToMany",name:"owners",collectionName:"departments",target:"users",through:"departmentsUsers",foreignKey:"departmentId",otherKey:"userId",targetKey:"id",sourceKey:"id",scope:{isOwner:!0},uiSchema:{title:'{{t("Owners")}}',"x-component":"AssociationField","x-component-props":{multiple:!0,fieldNames:{label:"nickname",value:"id"}}}}]},g={name:"users",fields:[{name:"id",type:"bigInt",autoIncrement:!0,primaryKey:!0,allowNull:!1,uiSchema:{type:"number",title:'{{t("ID")}}',"x-component":"InputNumber","x-read-pretty":!0},interface:"id"},{interface:"input",type:"string",name:"nickname",uiSchema:{type:"string",title:'{{t("Nickname")}}',"x-component":"Input"}},{interface:"input",type:"string",name:"username",unique:!0,uiSchema:{type:"string",title:'{{t("Username")}}',"x-component":"Input","x-validator":{username:!0},required:!0}},{interface:"email",type:"string",name:"email",unique:!0,uiSchema:{type:"string",title:'{{t("Email")}}',"x-component":"Input","x-validator":"email",required:!0}},{interface:"phone",type:"string",name:"phone",unique:!0,uiSchema:{type:"string",title:'{{t("Phone")}}',"x-component":"Input","x-validator":"phone",required:!0}},{interface:"m2m",type:"belongsToMany",name:"roles",target:"roles",foreignKey:"userId",otherKey:"roleName",onDelete:"CASCADE",sourceKey:"id",targetKey:"name",through:"rolesUsers",uiSchema:{type:"array",title:'{{t("Roles")}}',"x-component":"AssociationField","x-component-props":{multiple:!0,fieldNames:{label:"title",value:"name"}}}},{name:"departments",type:"belongsToMany",interface:"m2m",target:"departments",foreignKey:"userId",otherKey:"departmentId",onDelete:"CASCADE",sourceKey:"id",targetKey:"id",through:"departmentsUsers",uiSchema:{type:"array",title:'{{t("Departments")}}',"x-component":"DepartmentField"}},{interface:"m2o",type:"belongsTo",name:"mainDepartment",target:"departments",foreignKey:"mainDepartmentId",onDelete:"SET NULL",sourceKey:"id",targetKey:"id",uiSchema:{type:"string",title:'{{t("Main department")}}',"x-component":"AssociationField","x-component-props":{fieldNames:{label:"title",value:"id"}}}},{interface:"integer",type:"bigInt",name:"mainDepartmentId",uiSchema:{type:"number",title:"mainDepartmentId","x-component":"InputNumber","x-read-pretty":!0}}]},x=m(505),O=m(563);function w(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 S(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n,r,o=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=o){var i=[],a=!0,l=!1;try{for(o=o.call(e);!(a=(n=o.next()).done)&&(i.push(n.value),!t||i.length!==t);a=!0);}catch(e){l=!0,r=e}finally{try{a||null==o.return||o.return()}finally{if(l)throw r}}return i}}(e,t)||function(e,t){if(e){if("string"==typeof e)return w(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 w(e,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.")}()}var A=r().createContext({user:{},department:{}}),P=function(t){var o=S(r().useState(null),2),i=o[0],a=o[1],l=S(r().useState(null),2),c=l[0],u=l[1],s=(0,e.useRequest)({resource:"users",action:"list",params:{appends:["departments","departments.parent(recursively=true)"],filter:c?{"departments.id":c.id}:{},pageSize:20}});(0,n.useEffect)(function(){s.run()},[c]),(0,n.useEffect)(function(){i?s.mutate({data:[i]}):s.run()},[i]);var p=(0,e.useRequest)({resource:"departments",action:"list",params:{paginate:!1,sort:["sort"],filter:{parentId:null}}});return r().createElement(A.Provider,{value:{user:i,setUser:a,department:c,setDepartment:u,usersResource:{service:s},departmentsResource:{service:p}}},t.children)},j=function(t){var o=((0,n.useContext)(A).departmentsResource||{}).service;return r().createElement(e.ResourceActionContext.Provider,{value: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){var r;r=n[t],t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r})}return e}({},o)},r().createElement(e.CollectionProvider_deprecated,{collection:h},t.children))},C=function(t){var o=((0,n.useContext)(A).usersResource||{}).service,i=(0,n.useMemo)(function(){return(0,O.createForm)()},[]),a=i.createField({name:"table"});return r().createElement(x.FormContext.Provider,{value:i},r().createElement(e.TableBlockContext.Provider,{value:{service:o,field:a}},r().createElement(e.CollectionProvider_deprecated,{collection:g},t.children)))},D=m(964);function E(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 k(e,t,n,r,o,i,a){try{var l=e[i](a),c=l.value}catch(e){n(e);return}l.done?t(c):Promise.resolve(c).then(r,o)}function F(e){return function(e){if(Array.isArray(e))return E(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||function(e,t){if(e){if("string"==typeof e)return E(e,void 0);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 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 I(){var e,t,n=(e=["\n height: 65vh;\n overflow: auto;\n .ant-tree-node-content-wrapper {\n overflow: hidden;\n }\n "],t||(t=e.slice(0)),Object.freeze(Object.defineProperties(e,{raw:{value:Object.freeze(t)}})));return I=function(){return n},n}var R=function(){var t=(0,e.useResourceActionContext)(),i=t.data,a=t.loading,l=(0,n.useContext)(A),c=l.department,u=l.setDepartment,s=l.setUser,p=(0,n.useContext)(eu),f=p.treeData,d=p.nodeMap,m=p.loadData,y=p.loadedKeys,b=p.setLoadedKeys,v=p.initData,h=p.expandedKeys,g=p.setExpandedKeys;return(0,n.useEffect)(function(){v(null==i?void 0:i.data)},[i,v,a]),(0,n.useEffect)(function(){if(c){var e=function(t){return t.parent?[t.parent.id].concat(F(e(t.parent))):[]},t=e(c);g(function(e){return Array.from(new Set(F(e).concat(F(t))))})}},[c,g]),r().createElement("div",{className:(0,D.css)(I())},(null==f?void 0:f.length)?r().createElement(o.Tree.DirectoryTree,{loadData:m,treeData:f,loadedKeys:y,onSelect:function(e){e.length&&(u(d[e[0]]),s(null))},selectedKeys:[null==c?void 0:c.id],onExpand:function(e){g(e)},onLoad:function(e){b(e)},expandedKeys:h,expandAction:!1,showIcon:!1,fieldNames:{key:"id"}}):r().createElement(o.Empty,{image:o.Empty.PRESENTED_IMAGE_SIMPLE}))};function T(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){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n,r,o=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=o){var i=[],a=!0,l=!1;try{for(o=o.call(e);!(a=(n=o.next()).done)&&(i.push(n.value),!t||i.length!==t);a=!0);}catch(e){l=!0,r=e}finally{try{a||null==o.return||o.return()}finally{if(l)throw r}}return i}}(e,t)||q(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 K(e){return function(e){if(Array.isArray(e))return T(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||q(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 q(e,t){if(e){if("string"==typeof e)return T(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 T(e,t)}}function B(){var e,t,n=(e=["\n .ant-dropdown-menu {\n max-height: 500px;\n overflow-y: scroll;\n }\n "],t||(t=e.slice(0)),Object.freeze(Object.defineProperties(e,{raw:{value:Object.freeze(t)}})));return B=function(){return n},n}R.Item=function(t){var a=t.node,c=t.setVisible,u=t.setDrawer,s=l().t,p=(0,e.useResourceActionContext)().refreshAsync,f=(0,n.useContext)(eu),m=f.setLoadedKeys,y=f.expandedKeys,v=f.setExpandedKeys,h=o.App.useApp(),g=h.modal,x=h.message,O=(0,e.useAPIClient)(),w=function(){var e;g.confirm({title:s("Delete"),content:s("Are you sure you want to delete it?"),onOk:(e=function(){var e;return function(e,t){var n,r,o,i,a={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return i={next:l(0),throw:l(1),return:l(2)},"function"==typeof Symbol&&(i[Symbol.iterator]=function(){return this}),i;function l(i){return function(l){var c=[i,l];if(n)throw TypeError("Generator is already executing.");for(;a;)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 a.label++,{value:c[1],done:!1};case 5:a.label++,r=c[1],c=[0];continue;case 7:c=a.ops.pop(),a.trys.pop();continue;default:if(!(o=(o=a.trys).length>0&&o[o.length-1])&&(6===c[0]||2===c[0])){a=0;continue}if(3===c[0]&&(!o||c[1]>o[0]&&c[1]<o[3])){a.label=c[1];break}if(6===c[0]&&a.label<o[1]){a.label=o[1],o=c;break}if(o&&a.label<o[2]){a.label=o[2],a.ops.push(c);break}o[2]&&a.ops.pop(),a.trys.pop();continue}c=t.call(e,a)}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,O.resource("departments").destroy({filterByTk:a.id})];case 1:return t.sent(),x.success(s("Deleted successfully")),v(function(e){return e.filter(function(e){return e!==a.id})}),e=F(y),m([]),v([]),[4,p()];case 2:return t.sent(),v(e),[2]}})},function(){var t=this,n=arguments;return new Promise(function(r,o){var i=e.apply(t,n);function a(e){k(i,r,o,a,l,"next",e)}function l(e){k(i,r,o,a,l,"throw",e)}a(void 0)})})})},S=function(e){u({schema:e,node:a}),c(!0)};return r().createElement("div",{style:{display:"flex",justifyContent:"space-between",overflow:"hidden"}},r().createElement("div",{style:{overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"}},a.title),r().createElement(o.Dropdown,{menu:{items:[{label:s("New sub department"),key:"new-sub"},{label:s("Edit department"),key:"edit"},{label:s("Delete department"),key:"delete"}],onClick:function(e){var t=e.key;switch(e.domEvent.stopPropagation(),t){case"new-sub":S(d);break;case"edit":S(b);break;case"delete":w()}}}},r().createElement("div",{style:{marginLeft:"15px"}},r().createElement(i.MoreOutlined,null))))};var N=(0,e.createStyles)(function(e){return{searchDropdown:(0,e.css)(B())}}),V=function(){var t,i=l().t,a=o.theme.useToken().token,c=(0,n.useContext)(A),u=c.setDepartment,s=c.setUser,p=M(r().useState(!1),2),f=p[0],d=p[1],m=M(r().useState(""),2),y=m[0],b=m[1],v=M(r().useState([]),2),h=v[0],g=v[1],x=M(r().useState([]),2),O=x[0],w=x[1],S=M(r().useState(!0),2),P=S[0],j=S[1],C=M(r().useState(!0),2),D=C[0],E=C[1],k=N().styles,F=(0,e.useAPIClient)(),I=(0,e.useRequest)(function(e){return F.resource("departments").aggregateSearch(e).then(function(e){var t;return null==e||null==(t=e.data)?void 0:t.data})},{manual:!0,onSuccess:function(e,t){var n=(t[0]||{}).values.type;e&&((!n||"user"===n)&&e.users.length<10&&j(!1),(!n||"department"===n)&&e.departments.length<10&&E(!1),g(function(t){return K(t).concat(K(e.users))}),w(function(t){return K(t).concat(K(e.departments))}))}}),R=I.run,T=function(e){var t=e.title,n=e.parent;return n?T(n)+" / "+t:t},q=function(e){return r().createElement(o.Button,{type:"link",style:{padding:"0 8px"},onClick:function(t){d(!0),R({values: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){var r;r=n[t],t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r})}return e}({keyword:y,limit:10},e)})}},i("Load more"))};return r().createElement(o.Dropdown,{menu:{items:(t=[],h.length||O.length?(h.length&&(t.push({key:"0",type:"group",label:i("Users"),children:h.map(function(e){return{key:e.username,label:r().createElement("div",{onClick:function(){return s(e)}},r().createElement("div",null,e.nickname||e.username),r().createElement("div",{style:{fontSize:a.fontSizeSM,color:a.colorTextDescription}},"".concat(e.username).concat(e.phone?" | "+e.phone:"").concat(e.email?" | "+e.email:"")))}})}),P&&t.push({type:"group",key:"0-loadMore",label:r().createElement(q,{type:"user",last:h[h.length-1].id})})),O.length&&(t.push({key:"1",type:"group",label:i("Departments"),children:O.map(function(e){return{key:e.id,label:r().createElement("div",{onClick:function(){return u(e)}},T(e))}})}),D&&t.push({type:"group",key:"1-loadMore",label:r().createElement(q,{type:"department",last:O[O.length-1].id})})),t):[{key:"0",label:r().createElement(o.Empty,{description:i("No results"),image:o.Empty.PRESENTED_IMAGE_SIMPLE}),disabled:!0}])},overlayClassName:k.searchDropdown,trigger:["click"],open:f,onOpenChange:function(e){return d(e)}},r().createElement(o.Input.Search,{allowClear:!0,onClick:function(){y||d(!1)},onFocus:function(){return u(null)},onSearch:function(e){b(e),g([]),w([]),j(!0),E(!0),e&&(R({values:{keyword:e,limit:10}}),d(!0))},onChange:function(e){e.target.value||(s(null),b(""),d(!1),I.mutate({}),g([]),w([]))},placeholder:i("Search for departments, users"),style:{marginBottom:"20px"}}))};function U(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 L(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){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){L(e,t,n[t])})}return e}function z(e,t){return t=null!=t?t:{},Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):(function(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);n.push.apply(n,r)}return n})(Object(t)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(t,n))}),e}function _(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n,r,o=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=o){var i=[],a=!0,l=!1;try{for(o=o.call(e);!(a=(n=o.next()).done)&&(i.push(n.value),!t||i.length!==t);a=!0);}catch(e){l=!0,r=e}finally{try{a||null==o.return||o.return()}finally{if(l)throw r}}return i}}(e,t)||H(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 G(e){return function(e){if(Array.isArray(e))return U(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||H(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 H(e,t){if(e){if("string"==typeof e)return U(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 U(e,t)}}var W=function(e){var t=(e||{}).label,o=_((0,n.useState)([]),2),i=o[0],a=o[1],l=_((0,n.useState)({}),2),c=l[0],u=l[1],s=_((0,n.useState)([]),2),p=s[0],f=s[1],d=_((0,n.useState)([]),2),m=d[0],y=d[1],b=(0,n.useCallback)(function(e){var t={},n=function(e){for(var n=e?$({},e):null;n;){var r=n.parentId||"root";t[r]?t[r].childrenMap[n.id]=n:t[r]=z($({},n.parent||{id:r}),{childrenMap:L({},n.id,n)}),n=n.parent}},r=function(e){var n={};e.children&&e.children.length&&e.children.forEach(function(e){n[e.id]=e,r(e)}),t[e.id]=z($({},e),{childrenMap:n})};return e&&e.length&&e.forEach(function(e){n(e),r(e)}),t},[]),v=(0,n.useCallback)(function(e){var n=function(o){var i;return!e[o]||e[o].isLeaf?null:Object.values((null==(i=e[o])?void 0:i.childrenMap)||{}).map(function(e){return z($({},e),{title:t?r().createElement(t,{node:e}):e.title,children:n(e.id)})})};return n("root")},[]),h=(0,n.useCallback)(function(e){var t=b(e);u(t),a(v(t)||[])},[a,b,v]),g=(0,n.useCallback)(function(e){if(!c[e])return[];var t=[];return t.push.apply(t,G(Object.keys(c[e].childrenMap).map(function(e){return Number(e)}))),Object.keys(c[e].childrenMap).forEach(function(e){t.push.apply(t,G(g(e)))}),t},[c]);return{initData:h,treeData:i,setTreeData:a,nodeMap:c,updateTreeData:function(e,t){var n=$({},b(t),c);return t.forEach(function(t){n[e].childrenMap[t.id]=t}),u(n),v(n)},constructTreeData:v,getChildrenIds:g,loadedKeys:m,setLoadedKeys:y,expandedKeys:p,setExpandedKeys:f}},J=m(703),Q=m.n(J);function X(e,t,n,r,o,i,a){try{var l=e[i](a),c=l.value}catch(e){n(e);return}l.done?t(c):Promise.resolve(c).then(r,o)}function Y(e){return function(){var t=this,n=arguments;return new Promise(function(r,o){var i=e.apply(t,n);function a(e){X(i,r,o,a,l,"next",e)}function l(e){X(i,r,o,a,l,"throw",e)}a(void 0)})}}function Z(e,t){var n,r,o,i,a={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return i={next:l(0),throw:l(1),return:l(2)},"function"==typeof Symbol&&(i[Symbol.iterator]=function(){return this}),i;function l(i){return function(l){var c=[i,l];if(n)throw TypeError("Generator is already executing.");for(;a;)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 a.label++,{value:c[1],done:!1};case 5:a.label++,r=c[1],c=[0];continue;case 7:c=a.ops.pop(),a.trys.pop();continue;default:if(!(o=(o=a.trys).length>0&&o[o.length-1])&&(6===c[0]||2===c[0])){a=0;continue}if(3===c[0]&&(!o||c[1]>o[0]&&c[1]<o[3])){a.label=c[1];break}if(6===c[0]&&a.label<o[1]){a.label=o[1],o=c;break}if(o&&a.label<o[2]){a.label=o[2],a.ops.push(c);break}o[2]&&a.ops.pop(),a.trys.pop();continue}c=t.call(e,a)}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 ee=function(t){var n,r,o,i,a=t||{},l=a.resource,c=a.resourceOf,u=a.params,s=void 0===u?{}:u,p=(0,e.useAPIClient)().resource(void 0===l?"departments":l,c),f=W(t),d=f.setTreeData,m=f.updateTreeData,y=(f.setLoadedKeys,f.initData),b=(n=Y(function(e){var t,n,r,o;return Z(this,function(i){switch(i.label){case 0:if(t=e.key,null==(n=e.children)?void 0:n.length)return[2];return[4,p.list(Q()(s,{paginate:!1,sort:["sort"],appends:["parent(recursively=true)"],filter:{parentId:t}}))];case 1:if(!(null==(o=i.sent().data)||null==(r=o.data)?void 0:r.length))return[2];return d(m(t,null==o?void 0:o.data)),[2]}})}),function(e){return n.apply(this,arguments)}),v=(r=Y(function(e){var t;return Z(this,function(n){switch(n.label){case 0:return[4,p.list(Q()(s,{paginate:!1,sort:["sort"],filter:{title:{$includes:e}},appends:["parent(recursively=true)"],pageSize:100}))];case 1:return y(null==(t=n.sent().data)?void 0:t.data),[2]}})}),function(e){return r.apply(this,arguments)});return 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){var r;r=n[t],t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r})}return e}({},f),i=i={loadData:b,getByKeyword:v},Object.getOwnPropertyDescriptors?Object.defineProperties(o,Object.getOwnPropertyDescriptors(i)):(function(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);n.push.apply(n,r)}return n})(Object(i)).forEach(function(e){Object.defineProperty(o,e,Object.getOwnPropertyDescriptor(i,e))}),o},et=function(){var t,r,o=(0,n.useContext)(e.CollectionContext),i=(0,e.useFilterFieldOptions)(o.fields),a=(0,e.useResourceActionContext)();return(0,e.useFilterFieldProps)({options:i,params:(null==(r=a.state)||null==(t=r.params)?void 0:t[0])||a.params,service:a})};function en(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 er(e,t,n,r,o,i,a){try{var l=e[i](a),c=l.value}catch(e){n(e);return}l.done?t(c):Promise.resolve(c).then(r,o)}function eo(e){return function(){var t=this,n=arguments;return new Promise(function(r,o){var i=e.apply(t,n);function a(e){er(i,r,o,a,l,"next",e)}function l(e){er(i,r,o,a,l,"throw",e)}a(void 0)})}}function ei(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n,r,o=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=o){var i=[],a=!0,l=!1;try{for(o=o.call(e);!(a=(n=o.next()).done)&&(i.push(n.value),!t||i.length!==t);a=!0);}catch(e){l=!0,r=e}finally{try{a||null==o.return||o.return()}finally{if(l)throw r}}return i}}(e,t)||el(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 ea(e){return function(e){if(Array.isArray(e))return en(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||el(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 el(e,t){if(e){if("string"==typeof e)return en(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 en(e,t)}}function ec(e,t){var n,r,o,i,a={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return i={next:l(0),throw:l(1),return:l(2)},"function"==typeof Symbol&&(i[Symbol.iterator]=function(){return this}),i;function l(i){return function(l){var c=[i,l];if(n)throw TypeError("Generator is already executing.");for(;a;)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 a.label++,{value:c[1],done:!1};case 5:a.label++,r=c[1],c=[0];continue;case 7:c=a.ops.pop(),a.trys.pop();continue;default:if(!(o=(o=a.trys).length>0&&o[o.length-1])&&(6===c[0]||2===c[0])){a=0;continue}if(3===c[0]&&(!o||c[1]>o[0]&&c[1]<o[3])){a.label=c[1];break}if(6===c[0]&&a.label<o[1]){a.label=o[1],o=c;break}if(o&&a.label<o[2]){a.label=o[2],a.ops.push(c);break}o[2]&&a.ops.pop(),a.trys.pop();continue}c=t.call(e,a)}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 eu=(0,n.createContext)({}),es=function(){var t=(0,x.useForm)(),r=(0,x.useField)(),o=(0,e.useActionContext)(),i=(0,e.useResourceActionContext)().refreshAsync,a=(0,e.useAPIClient)(),l=(0,n.useContext)(eu),c=l.expandedKeys,u=l.setLoadedKeys,s=l.setExpandedKeys;return{run:function(){return eo(function(){var e;return ec(this,function(n){switch(n.label){case 0:return n.trys.push([0,5,,6]),[4,t.submit()];case 1:return n.sent(),r.data=r.data||{},r.data.loading=!0,[4,a.resource("departments").create({values:t.values})];case 2:return n.sent(),o.setVisible(!1),[4,t.reset()];case 3:return n.sent(),r.data.loading=!1,e=ea(c),u([]),s([]),[4,i()];case 4:return n.sent(),s(e),[3,6];case 5:return n.sent(),r.data&&(r.data.loading=!1),[3,6];case 6:return[2]}})})()}}},ep=function(){var t=(0,x.useField)(),r=(0,x.useForm)(),o=(0,e.useActionContext)(),i=(0,e.useResourceActionContext)().refreshAsync,a=(0,e.useAPIClient)(),l=(0,e.useRecord)().id,c=(0,n.useContext)(eu),u=c.expandedKeys,s=c.setLoadedKeys,p=c.setExpandedKeys,f=(0,n.useContext)(A),d=f.department,m=f.setDepartment;return{run:function(){return eo(function(){var e;return ec(this,function(n){switch(n.label){case 0:return[4,r.submit()];case 1:n.sent(),t.data=t.data||{},t.data.loading=!0,n.label=2;case 2:return n.trys.push([2,6,7,8]),[4,a.resource("departments").update({filterByTk:l,values:r.values})];case 3:return n.sent(),m(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){var r;r=n[t],t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r})}return e}({department:d},r.values)),o.setVisible(!1),[4,r.reset()];case 4:return n.sent(),e=ea(u),s([]),p([]),[4,i()];case 5:return n.sent(),p(e),[3,8];case 6:return console.log(n.sent()),[3,8];case 7:return t.data.loading=!1,[7];case 8:return[2]}})})()}}},ef=function(){var t=l().t,a=ei((0,n.useState)(!1),2),u=a[0],s=a[1],p=ei((0,n.useState)({}),2),f=p[0],d=p[1],m=(0,n.useContext)(A),y=m.department,b=m.setDepartment,v=o.theme.useToken().token,h=ee({label:function(e){var t=e.node;return r().createElement(R.Item,{node:t,setVisible:s,setDrawer:d})}});return r().createElement(e.SchemaComponentOptions,{scope:{useCreateDepartment:es,useUpdateDepartment:ep}},r().createElement(eu.Provider,{value:h},r().createElement(o.Row,null,r().createElement(V,null),r().createElement(o.Button,{type:"text",icon:r().createElement(i.UserOutlined,null),style:{textAlign:"left",marginBottom:"5px",background:y?"":v.colorBgTextHover},onClick:function(){b(null)},block:!0},t("All users")),r().createElement(c,null)),r().createElement(o.Divider,{style:{margin:"12px 0"}}),r().createElement(R,null),r().createElement(e.ActionContextProvider,{value:{visible:u,setVisible:s}},r().createElement(e.RecordProvider,{record:f.node||{}},r().createElement(e.SchemaComponent,{scope:{t:t},schema:f.schema||{}})))))};function ed(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function em(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){ed(e,t,n[t])})}return e}function ey(e,t){return t=null!=t?t:{},Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):(function(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);n.push.apply(n,r)}return n})(Object(t)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(t,n))}),e}var eb={type:"void","x-component":"Space",properties:{remove:{type:"void",title:'{{t("Remove")}}',"x-component":"Action","x-component-props":{icon:"UserDeleteOutlined",confirm:{title:"{{t('Remove members')}}",content:"{{t('Are you sure you want to remove these members?')}}"},style:{marginRight:8},useAction:"{{ useBulkRemoveMembersAction }}"}},create:{type:"void",title:'{{t("Add members")}}',"x-component":"Action","x-component-props":{type:"primary",icon:"UserAddOutlined"},properties:{drawer:{type:"void","x-component":"AddMembers"}}}}},ev={type:"void",properties:{remove:{title:'{{ t("Remove") }}',"x-component":"Action.Link","x-component-props":{confirm:{title:"{{t('Remove member')}}",content:"{{t('Are you sure you want to remove it?')}}"},useAction:"{{ useRemoveMemberAction }}"}}}},eh=function(e,t){var n;return{type:"void","x-component":"CardItem","x-component-props":{heightMode:"fullHeight"},properties:ey(em({},t?{}:{actions:{type:"void","x-component":"ActionBar","x-component-props":{style:{marginBottom:16}},properties:(ed(n={},(0,u.uid)(),{type:"void",title:'{{ t("Filter") }}',"x-action":"filter","x-component":"Filter.Action","x-use-component-props":"useMemberFilterActionProps","x-component-props":{icon:"FilterOutlined"},"x-align":"left"}),ed(n,"refresh",{type:"void",title:'{{ t("Refresh") }}',"x-action":"refresh","x-component":"Action","x-use-component-props":"useRefreshActionProps","x-component-props":{icon:"ReloadOutlined"}}),ed(n,"actions",{type:"void","x-component":"MemberActions"}),n)}}),{table:{type:"array","x-component":"TableV2","x-use-component-props":"useTableBlockProps","x-component-props":{rowKey:"id",rowSelection:{type:"checkbox"},pagination:{showTotal:"{{ useShowTotal }}"}},properties:ey(em({nickname:{type:"void","x-decorator":"Table.Column.Decorator","x-component":"Table.Column",properties:{nickname:{type:"string","x-component":"CollectionField","x-read-pretty":!0}}},username:{type:"void","x-decorator":"Table.Column.Decorator","x-component":"Table.Column",properties:{username:{type:"string","x-component":"CollectionField","x-read-pretty":!0}}},departments:{type:"void","x-decorator":"Table.Column.Decorator","x-component":"Table.Column",properties:{departments:{type:"string","x-component":"CollectionField","x-read-pretty":!0}}}},e?{isOwner:{type:"void","x-decorator":"Table.Column.Decorator","x-component":"Table.Column","x-component-props":{style:{minWidth:100}},title:'{{t("Owner")}}',properties:{isOwner:{type:"boolean","x-component":"IsOwnerField"}}}}:{}),{phone:{type:"void","x-decorator":"Table.Column.Decorator","x-component":"Table.Column",properties:{phone:{type:"string","x-component":"CollectionField","x-read-pretty":!0}}},email:{type:"void","x-decorator":"Table.Column.Decorator","x-component":"Table.Column",properties:{email:{type:"string","x-component":"CollectionField","x-read-pretty":!0}}},actions:{type:"void",title:'{{t("Actions")}}',"x-component":"Table.Column","x-component-props":{fixed:"right"},properties:{actions:{type:"void","x-component":"Space","x-component-props":{split:"|"},properties:em({update:{type:"void",title:'{{t("Configure")}}',"x-component":"Action.Link","x-component-props":{type:"primary"},properties:{drawer:{type:"void","x-component":"Action.Drawer","x-decorator":"FormV2",title:'{{t("Configure")}}',properties:{departments:{title:'{{t("Departments")}}',"x-decorator":"FormItem","x-component":"UserDepartmentsField"}}}}}},e?{remove:{type:"void","x-component":"RowRemoveAction"}}:{})}}}})}})}},eg={type:"object",properties:{drawer:{type:"void","x-component":"Action.Drawer","x-decorator":"Form",title:'{{t("Add members")}}',properties:{resource:{type:"void","x-decorator":"FormItem","x-component":"AddMembersListProvider",properties:{actions:{type:"void","x-component":"ActionBar","x-component-props":{style:{marginBottom:16}},properties:{filter:{type:"void",title:'{{ t("Filter") }}',default:{$and:[{username:{$includes:""}},{nickname:{$includes:""}}]},"x-action":"filter","x-component":"Filter.Action","x-use-component-props":"useAddMembersFilterActionProps","x-component-props":{icon:"FilterOutlined"},"x-align":"left"}}},table:{type:"void","x-component":"Table.Void","x-component-props":{rowKey:"id",rowSelection:{type:"checkbox",onChange:"{{ handleSelect }}"},useDataSource:"{{ cm.useDataSourceFromRAC }}"},properties:{username:{type:"void","x-decorator":"Table.Column.Decorator","x-component":"Table.Column",properties:{username:{type:"string","x-component":"CollectionField","x-read-pretty":!0}}},nickname:{type:"void","x-decorator":"Table.Column.Decorator","x-component":"Table.Column",properties:{nickname:{type:"string","x-component":"CollectionField","x-read-pretty":!0}}},phone:{type:"void","x-decorator":"Table.Column.Decorator","x-component":"Table.Column",properties:{phone:{type:"string","x-component":"CollectionField","x-read-pretty":!0}}},email:{type:"void","x-decorator":"Table.Column.Decorator","x-component":"Table.Column",properties:{email:{type:"string","x-component":"CollectionField","x-read-pretty":!0}}}}}}},footer:{type:"void","x-component":"Action.Drawer.Footer",properties:{cancel:{title:'{{t("Cancel")}}',"x-component":"Action","x-component-props":{useAction:"{{ cm.useCancelAction }}"}},submit:{title:'{{t("Submit")}}',"x-component":"Action","x-component-props":{type:"primary"},"x-use-component-props":"useAddMembersActionProps"}}}}}}},ex={type:"void",properties:{drawer:{title:'{{t("Select Departments")}}',"x-decorator":"Form","x-component":"Action.Drawer",properties:{table:{type:"void","x-decorator":"FormItem","x-component":"DepartmentTable","x-component-props":{useDataSource:"{{ useDataSource }}",useDisabled:"{{ useDisabled }}"}},footer:{type:"void","x-component":"Action.Drawer.Footer",properties:{cancel:{title:'{{t("Cancel")}}',"x-component":"Action","x-component-props":{useAction:"{{ cm.useCancelAction }}"}},confirm:{title:'{{t("Submit")}}',"x-component":"Action","x-component-props":{type:"primary",useAction:"{{ useAddDepartments }}"}}}}}}}},eO=function(e){var t=e.title,n=e.parent;return n?eO(n)+" / "+t:t},ew=function(){var t=(0,n.useContext)(A).setDepartment,o=(0,x.useField)().value||[],i=o.reduce(function(e,t){return e[t.id]=t,e},{}),a=o.map(function(e,n){return r().createElement("span",{key:n},r().createElement("a",{onClick:function(n){n.preventDefault(),t(i[e.id])}},eO(e)),n!==o.length-1?r().createElement("span",{style:{marginRight:4,color:"#aaa"}},","):"")});return r().createElement(e.EllipsisWithTooltip,{ellipsis:!0},a)},eS=function(){var t=(0,n.useContext)(A).department,o=((0,e.useRecord)().departments||[]).find(function(e){return(null==e?void 0:e.id)===(null==t?void 0:t.id)});return r().createElement(e.Checkbox.ReadPretty,{value:null==o?void 0:o.departmentsUsers.isOwner})};function eA(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 eP(e,t,n,r,o,i,a){try{var l=e[i](a),c=l.value}catch(e){n(e);return}l.done?t(c):Promise.resolve(c).then(r,o)}function ej(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function eC(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){ej(e,t,n[t])})}return e}function eD(e,t){return t=null!=t?t:{},Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):(function(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);n.push.apply(n,r)}return n})(Object(t)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(t,n))}),e}function eE(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n,r,o=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=o){var i=[],a=!0,l=!1;try{for(o=o.call(e);!(a=(n=o.next()).done)&&(i.push(n.value),!t||i.length!==t);a=!0);}catch(e){l=!0,r=e}finally{try{a||null==o.return||o.return()}finally{if(l)throw r}}return i}}(e,t)||function(e,t){if(e){if("string"==typeof e)return eA(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 eA(e,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.")}()}var ek=(0,n.createContext)({}),eF=function(){var t,r,o=(0,n.useContext)(ek),i=o.setHasFilter,a=o.setExpandedKeys,c=l().t,u=(0,n.useContext)(e.CollectionContext),s=(0,e.useFilterFieldOptions)(u.fields),p=(0,e.useResourceActionContext)(),f=p.run,d=p.defaultRequest,m=(0,x.useField)(),y=(d||{}).params;return{options:s,onSubmit:(t=function(t){var n,r,o;return function(e,t){var n,r,o,i,a={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return i={next:l(0),throw:l(1),return:l(2)},"function"==typeof Symbol&&(i[Symbol.iterator]=function(){return this}),i;function l(i){return function(l){var c=[i,l];if(n)throw TypeError("Generator is already executing.");for(;a;)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 a.label++,{value:c[1],done:!1};case 5:a.label++,r=c[1],c=[0];continue;case 7:c=a.ops.pop(),a.trys.pop();continue;default:if(!(o=(o=a.trys).length>0&&o[o.length-1])&&(6===c[0]||2===c[0])){a=0;continue}if(3===c[0]&&(!o||c[1]>o[0]&&c[1]<o[3])){a.label=c[1];break}if(6===c[0]&&a.label<o[1]){a.label=o[1],o=c;break}if(o&&a.label<o[2]){a.label=o[2],a.ops.push(c);break}o[2]&&a.ops.pop(),a.trys.pop();continue}c=t.call(e,a)}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(a){return n=y.filter,r=(0,e.removeNullCondition)(null==t?void 0:t.filter),f(eD(eC({},y),{page:1,pageSize:10,filter:(0,e.mergeFilter)([r,n])})),(null==(o=(null==r?void 0:r.$and)||(null==r?void 0:r.$or))?void 0:o.length)?(m.title=c("{{count}} filter items",{count:(null==o?void 0:o.length)||0}),i(!0)):(m.title=c("Filter"),i(!1)),[2]})},r=function(){var e=this,n=arguments;return new Promise(function(r,o){var i=t.apply(e,n);function a(e){eP(i,r,o,a,l,"next",e)}function l(e){eP(i,r,o,a,l,"throw",e)}a(void 0)})},function(e){return r.apply(this,arguments)}),onReset:function(){f(eD(eC({},y||{}),{filter:eD(eC({},(null==y?void 0:y.filter)||{}),{parentId:null}),page:1,pageSize:10})),m.title=c("Filter"),i(!1),a([])}}},eI=function(t){var i=t.useDisabled,a=l().t,c=(0,e.useResourceActionContext)();console.log(c);var u=c.run,s=c.data,p=c.loading,f=c.defaultRequest||{},d=f.resource,m=f.resourceOf,y=f.params,b=ee({resource:d,resourceOf:m,params:y}),v=b.treeData,h=b.initData,g=b.loadData,O=(0,x.useField)(),w=(void 0===i?function(){return{disabled:function(){return!1}}}:i)().disabled,S=(0,n.useContext)(ek),A=S.hasFilter,P=S.expandedKeys,j=S.setExpandedKeys;(0,n.useEffect)(function(){A||h(null==s?void 0:s.data)},[s,h,p,A]);var C={};if((null==y?void 0:y.pageSize)&&(C.defaultPageSize=y.pageSize),!C.total&&(null==s?void 0:s.meta)){var D=s.meta,E=D.count,k=D.page,F=D.pageSize;C.total=E,C.current=k,C.pageSize=F}return r().createElement(o.Table,{rowKey:"id",columns:[{dataIndex:"title",title:a("Department name"),render:function(e,t){return A?eO(t):e}}],rowSelection:{selectedRowKeys:((null==O?void 0:O.value)||[]).map(function(e){return e.id}),onChange:function(e,t){var n;return null==O||null==(n=O.setValue)?void 0:n.call(O,t)},getCheckboxProps:function(e){return{disabled:w(e)}}},pagination:eD(eC({showSizeChanger:!0},C),{onChange:function(e,t){var n;u(eD(eC({},(null==c||null==(n=c.params)?void 0:n[0])||{}),{page:e,pageSize:t}))}}),dataSource:A?(null==s?void 0:s.data)||[]:v,expandable:{onExpand:function(e,t){g({key:t.id,children:t.children})},expandedRowKeys:P,onExpandedRowsChange:function(e){return j(e)}}})},eR=function(t){var o=eE((0,n.useState)([]),2),i=o[0],a=o[1],l=eE((0,n.useState)(!1),2),c=l[0],u=l[1],s=(0,t.useDataSource)({manual:!0});return(0,n.useEffect)(function(){s.run({sort:["sort"],filter:{parentId:null},pageSize:10})},[]),r().createElement(e.ResourceActionContext.Provider,{value:eC({},s)},r().createElement(e.CollectionProvider_deprecated,{collection:h},r().createElement(ek.Provider,{value:{expandedKeys:i,setExpandedKeys:a,hasFilter:c,setHasFilter:u}},t.children)))},eT=function(t){var n=t.useDataSource,o=t.useDisabled;return r().createElement(e.SchemaComponent,{scope:{useDisabled:o,useFilterActionProps:eF},components:{InternalDepartmentTable:eI,RequestProvider:eR},schema:{type:"void",properties:ej({},(0,u.uid)(),{type:"void","x-component":"RequestProvider","x-component-props":{useDataSource:n},properties:{actions:{type:"void","x-component":"ActionBar","x-component-props":{style:{marginBottom:16}},properties:{filter:{type:"void",title:'{{ t("Filter") }}',default:{$and:[{title:{$includes:""}}]},"x-action":"filter","x-component":"Filter.Action","x-use-component-props":"useFilterActionProps","x-component-props":{icon:"FilterOutlined"},"x-align":"left"}}},departments:{type:"array","x-component":"InternalDepartmentTable","x-component-props":{useDisabled:"{{ useDisabled }}"}}}})}})};function eM(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 eK(e,t,n,r,o,i,a){try{var l=e[i](a),c=l.value}catch(e){n(e);return}l.done?t(c):Promise.resolve(c).then(r,o)}function eq(e){return function(){var t=this,n=arguments;return new Promise(function(r,o){var i=e.apply(t,n);function a(e){eK(i,r,o,a,l,"next",e)}function l(e){eK(i,r,o,a,l,"throw",e)}a(void 0)})}}function eB(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){var r;r=n[t],t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r})}return e}function eN(e,t){return t=null!=t?t:{},Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):(function(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);n.push.apply(n,r)}return n})(Object(t)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(t,n))}),e}function eV(e){return function(e){if(Array.isArray(e))return eM(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||eU(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 eU(e,t){if(e){if("string"==typeof e)return eM(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 eM(e,t)}}function eL(e,t){var n,r,o,i,a={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return i={next:l(0),throw:l(1),return:l(2)},"function"==typeof Symbol&&(i[Symbol.iterator]=function(){return this}),i;function l(i){return function(l){var c=[i,l];if(n)throw TypeError("Generator is already executing.");for(;a;)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 a.label++,{value:c[1],done:!1};case 5:a.label++,r=c[1],c=[0];continue;case 7:c=a.ops.pop(),a.trys.pop();continue;default:if(!(o=(o=a.trys).length>0&&o[o.length-1])&&(6===c[0]||2===c[0])){a=0;continue}if(3===c[0]&&(!o||c[1]>o[0]&&c[1]<o[3])){a.label=c[1];break}if(6===c[0]&&a.label<o[1]){a.label=o[1],o=c;break}if(o&&a.label<o[2]){a.label=o[2],a.ops.push(c);break}o[2]&&a.ops.pop(),a.trys.pop();continue}c=t.call(e,a)}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 e$=function(t){var n={resource:"departments",action:"list",params:{appends:["parent(recursively=true)"],sort:["sort"]}};return eN(eB({},(0,e.useRequest)(n,t)),{defaultRequest:n})},ez=function(){var t,a,c,u,s=o.App.useApp(),p=s.modal,f=s.message,d=l().t,m=(t=(0,n.useState)(!1),function(e){if(Array.isArray(e))return e}(t)||function(e,t){var n,r,o=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=o){var i=[],a=!0,l=!1;try{for(o=o.call(e);!(a=(n=o.next()).done)&&(i.push(n.value),i.length!==t);a=!0);}catch(e){l=!0,r=e}finally{try{a||null==o.return||o.return()}finally{if(l)throw r}}return i}}(t,2)||eU(t,2)||function(){throw TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()),y=m[0],b=m[1],v=(0,e.useRecord)(),h=(0,x.useField)(),g=(0,e.useTableBlockContext)().service.refresh,O=(0,e.useAPIClient)();(0,e.useRequest)(function(){return O.resource("users.departments",v.id).list({appends:["parent(recursively=true)"],paginate:!1}).then(function(e){var t,n,r=(null==(t=null==e||null==(n=e.data)?void 0:n.data)?void 0:t.length)?t.map(function(e){var t;return eN(eB({},e),{isMain:e.id===v.mainDepartmentId,isOwner:null==(t=e.departmentsUsers)?void 0:t.isOwner,title:eO(e)})}):[];h.setValue(r)})},{ready:v.id});var w=function(e){p.confirm({title:d("Remove department"),content:d("Are you sure you want to remove it?"),onOk:eq(function(){return eL(this,function(t){switch(t.label){case 0:return[4,O.resource("users.departments",v.id).remove({values:[e.id]})];case 1:return t.sent(),f.success(d("Deleted successfully")),h.setValue(h.value.filter(function(t){return t.id!==e.id}).map(function(t,n){return eN(eB({},t),{isMain:e.isMain&&0===n||t.isMain})})),g(),[2]}})})})},S=(a=eq(function(e){return eL(this,function(t){switch(t.label){case 0:return[4,O.resource("users").update({filterByTk:v.id,values:{mainDepartmentId:e.id}})];case 1:return t.sent(),f.success(d("Set successfully")),h.setValue((h.value||[]).map(function(t){return eN(eB({},t),{isMain:t.id===e.id})})),g(),[2]}})}),function(e){return a.apply(this,arguments)}),A=(c=eq(function(e){return eL(this,function(t){switch(t.label){case 0:return[4,O.resource("departments").setOwner({values:{userId:v.id,departmentId:e.id}})];case 1:return t.sent(),f.success(d("Set successfully")),h.setValue(h.value.map(function(t){return eN(eB({},t),{isOwner:t.id===e.id||t.isOwner})})),g(),[2]}})}),function(e){return c.apply(this,arguments)}),P=(u=eq(function(e){return eL(this,function(t){switch(t.label){case 0:return[4,O.resource("departments").removeOwner({values:{userId:v.id,departmentId:e.id}})];case 1:return t.sent(),f.success(d("Set successfully")),h.setValue(h.value.map(function(t){return eN(eB({},t),{isOwner:t.id!==e.id&&t.isOwner})})),g(),[2]}})}),function(e){return u.apply(this,arguments)}),j=function(e,t){switch(e){case"setMain":S(t);break;case"setOwner":A(t);break;case"removeOwner":P(t);break;case"remove":w(t)}};return r().createElement(e.ActionContextProvider,{value:{visible:y,setVisible:b}},r().createElement(r().Fragment,null,((null==h?void 0:h.value)||[]).map(function(e){return r().createElement(o.Tag,{style:{padding:"5px 8px",background:"transparent",marginBottom:"5px"},key:e.id},r().createElement("span",{style:{marginRight:"5px"}},e.title),e.isMain?r().createElement(o.Tag,{color:"processing",bordered:!1},d("Main")):"",r().createElement(o.Dropdown,{menu:{items:eV(e.isMain?[]:[{label:d("Set as main department"),key:"setMain"}]).concat([{label:d("Remove"),key:"remove"}]),onClick:function(t){return j(t.key,e)}}},r().createElement("div",{style:{float:"right"}},r().createElement(i.MoreOutlined,null))))}),r().createElement(o.Button,{icon:r().createElement(i.PlusOutlined,null),onClick:function(){return b(!0)}})),r().createElement(e.SchemaComponent,{schema:ex,components:{DepartmentTable:eT},scope:{user:v,useDataSource:e$,useAddDepartments:function(){var t=(0,e.useAPIClient)(),n=(0,x.useForm)(),r=(n.values||{}).departments;return{run:function(){return eq(function(){return eL(this,function(e){switch(e.label){case 0:return[4,t.resource("users.departments",v.id).add({values:r.map(function(e){return e.id})})];case 1:return e.sent(),n.reset(),h.setValue(eV(h.value).concat(eV(r.map(function(e,t){return eN(eB({},e),{isMain:0===t&&0===h.value.length,title:eO(e)})})))),b(!1),g(),[2]}})})()}}},useDisabled:function(){return{disabled:function(e){return h.value.some(function(t){return t.id===e.id})}}}}}))},e_=m(467);function eG(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 eH(e,t,n,r,o,i,a){try{var l=e[i](a),c=l.value}catch(e){n(e);return}l.done?t(c):Promise.resolve(c).then(r,o)}function eW(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function eJ(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){eW(e,t,n[t])})}return e}function eQ(e,t){return t=null!=t?t:{},Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):(function(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);n.push.apply(n,r)}return n})(Object(t)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(t,n))}),e}var eX=function(){var t,r,o,i,a,l,c,u,s,p=(0,x.useField)(),f=(0,x.useFieldSchema)(),d=(0,e.useTableBlockContext)(),m=(0,e.useFilterBlock)().getDataBlocks,y=null==d||null==(o=d.service)?void 0:o.loading,b=(0,n.useRef)(null);return b.current=d,(0,n.useEffect)(function(){if(!y){var e,t,n,r=null==d||null==(e=d.service)?void 0:e.data,o=(null==r?void 0:r.data)||[],i=(null==r?void 0:r.meta)||{},a=null==d||null==(n=d.field)||null==(t=n.data)?void 0:t.selectedRowKeys;(0,e_.isEqual)(p.value,o)||(p.value=o,null==p||p.setInitialValue(o)),p.data=p.data||{},(0,e_.isEqual)(p.data.selectedRowKeys,a)||(p.data.selectedRowKeys=a),p.componentProps.pagination=p.componentProps.pagination||{},p.componentProps.pagination.pageSize=null==i?void 0:i.pageSize,p.componentProps.pagination.total=null==i?void 0:i.count,p.componentProps.pagination.current=null==i?void 0:i.page}},[p,null==d||null==(i=d.service)?void 0:i.data,y,null==d||null==(l=d.field)||null==(a=l.data)?void 0:a.selectedRowKeys]),{bordered:d.bordered,childrenColumnName:d.childrenColumnName,loading:null==d||null==(c=d.service)?void 0:c.loading,showIndex:d.showIndex,dragSort:d.dragSort&&d.dragSortBy,rowKey:d.rowKey||(null==f||null==(u=f["x-component-props"])?void 0:u.rowKey)||"id",pagination:(null==f||null==(s=f["x-component-props"])?void 0:s.pagination)!==!1&&p.componentProps.pagination,onRowSelectionChange:(0,n.useCallback)(function(e,t){var n,r,o;d.field.data=(null==d||null==(n=d.field)?void 0:n.data)||{},d.field.data.selectedRowKeys=e,d.field.data.selectedRowData=t,null==d||null==(o=d.field)||null==(r=o.onRowSelect)||r.call(o,e)},[]),onRowDragEnd:(0,n.useCallback)((t=function(e){var t,n;return function(e,t){var n,r,o,i,a={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return i={next:l(0),throw:l(1),return:l(2)},"function"==typeof Symbol&&(i[Symbol.iterator]=function(){return this}),i;function l(i){return function(l){var c=[i,l];if(n)throw TypeError("Generator is already executing.");for(;a;)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 a.label++,{value:c[1],done:!1};case 5:a.label++,r=c[1],c=[0];continue;case 7:c=a.ops.pop(),a.trys.pop();continue;default:if(!(o=(o=a.trys).length>0&&o[o.length-1])&&(6===c[0]||2===c[0])){a=0;continue}if(3===c[0]&&(!o||c[1]>o[0]&&c[1]<o[3])){a.label=c[1];break}if(6===c[0]&&a.label<o[1]){a.label=o[1],o=c;break}if(o&&a.label<o[2]){a.label=o[2],a.ops.push(c);break}o[2]&&a.ops.pop(),a.trys.pop();continue}c=t.call(e,a)}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(r){switch(r.label){case 0:return t=e.from,n=e.to,[4,d.resource.move({sourceId:t[d.rowKey||"id"],targetId:n[d.rowKey||"id"],sortField:d.dragSort&&d.dragSortBy})];case 1:return r.sent(),d.service.refresh(),[2]}})},r=function(){var e=this,n=arguments;return new Promise(function(r,o){var i=t.apply(e,n);function a(e){eH(i,r,o,a,l,"next",e)}function l(e){eH(i,r,o,a,l,"throw",e)}a(void 0)})},function(e){return r.apply(this,arguments)}),[d.rowKey,d.dragSort,d.dragSortBy]),onChange:(0,n.useCallback)(function(e,t,n){var r,o,i,a,l,c,u,s,p,d,m=e.current,y=e.pageSize,v=null==(i=f.parent)||null==(o=i["x-decorator-props"])||null==(r=o.params)?void 0:r.sort,h=n.order?"ascend"===n.order?[n.field]:["-".concat(n.field)]:v||b.current.dragSortBy,g=y||(null==(c=f.parent)||null==(l=c["x-decorator-props"])||null==(a=l.params)?void 0:a.pageSize),x=eQ(eJ({},null==(p=b.current)||null==(s=p.service)||null==(u=s.params)?void 0:u[0]),{page:m||1,pageSize:g});h&&(x.sort=h),null==(d=b.current)||d.service.run(x)},[f.parent]),onClickRow:(0,n.useCallback)(function(t,n,r){var o=(0,e.findFilterTargets)(f),i=o.targets,a=o.uid,l=m();if(!i||!i.some(function(e){return l.some(function(t){return t.uid===e.uid})}))return void n(function(e){return e.length?[]:e});var c=l.find(function(e){return e.uid===f.parent["x-uid"]});l.forEach(function(n){var o,l,u,s,p=i.find(function(e){return e.uid===n.uid});if(p){var f,m,y,b,v,h=null==(o=n.foreignKeyFields)?void 0:o.some(function(e){return e.name===p.field}),g=(f=c,m=p.field,(null==(b=null==f||null==(y=f.associatedFields)?void 0:y.find(function(e){return e.foreignKey===m}))?void 0:b.sourceKey)||"id"),x=[t[h?g:d.rowKey]],O=(null==(l=n.service.params)?void 0:l[0])||{},w=(null==(s=n.service.params)||null==(u=s[1])?void 0:u.filters)||{};if(r.includes(t[d.rowKey])){if("manual"===n.dataLoadingMode)return n.clearData();delete w[a]}else w[a]={$and:[eW({},p.field||d.rowKey,eW({},p.field?"$in":"$eq",x))]};var S=(0,e.mergeFilter)(((function(e){if(Array.isArray(e))return eG(e)})(v=Object.values(w).map(function(t){return(0,e.removeNullCondition)(t)}))||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(v)||function(e,t){if(e){if("string"==typeof e)return eG(e,void 0);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 eG(e,t)}}(v)||function(){throw TypeError("Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()).concat([n.defaultFilter]));return n.doFilter(eQ(eJ({},O),{page:1,filter:S}),{filters:w})}}),n(function(e){return(null==e?void 0:e.includes(t[d.rowKey]))?[]:[t[d.rowKey]]})},[d.rowKey,f,m]),onExpand:(0,n.useCallback)(function(e,t){var n,r;null==d||null==(n=(r=d.field).onExpandClick)||n.call(r,e,t)},[])}};function eY(e,t,n,r,o,i,a){try{var l=e[i](a),c=l.value}catch(e){n(e);return}l.done?t(c):Promise.resolve(c).then(r,o)}function eZ(e){return function(){var t=this,n=arguments;return new Promise(function(r,o){var i=e.apply(t,n);function a(e){eY(i,r,o,a,l,"next",e)}function l(e){eY(i,r,o,a,l,"throw",e)}a(void 0)})}}function e0(e,t){var n,r,o,i,a={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return i={next:l(0),throw:l(1),return:l(2)},"function"==typeof Symbol&&(i[Symbol.iterator]=function(){return this}),i;function l(i){return function(l){var c=[i,l];if(n)throw TypeError("Generator is already executing.");for(;a;)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 a.label++,{value:c[1],done:!1};case 5:a.label++,r=c[1],c=[0];continue;case 7:c=a.ops.pop(),a.trys.pop();continue;default:if(!(o=(o=a.trys).length>0&&o[o.length-1])&&(6===c[0]||2===c[0])){a=0;continue}if(3===c[0]&&(!o||c[1]>o[0]&&c[1]<o[3])){a.label=c[1];break}if(6===c[0]&&a.label<o[1]){a.label=o[1],o=c;break}if(o&&a.label<o[2]){a.label=o[2],a.ops.push(c);break}o[2]&&a.ops.pop(),a.trys.pop();continue}c=t.call(e,a)}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 e1=function(t){var o=(0,n.useContext)(A).department;return r().createElement(e.ResourceActionProvider,{collection:"users",request:{resource:"users",action:"listExcludeDept",params:{departmentId:null==o?void 0:o.id}}},t.children)},e2=function(){var t,r,o=(0,n.useContext)(e.CollectionContext),i=(0,e.useFilterFieldOptions)(o.fields),a=(0,e.useResourceActionContext)();return(0,e.useFilterFieldProps)({options:i,params:(null==(r=a.state)||null==(t=r.params)?void 0:t[0])||a.params,service:a})},e6=function(){var t=(0,n.useContext)(A).department,o=(0,e.useTableBlockContext)().service.refresh,i=(0,n.useRef)([]),a=(0,e.useAPIClient)();return r().createElement(e.SchemaComponent,{scope:{useAddMembersActionProps:function(){var t=(0,n.useContext)(A).department,r=(0,e.useActionContext)().setVisible;return{onClick:function(){return eZ(function(){var e;return e0(this,function(n){switch(n.label){case 0:if(!(null==(e=i.current)?void 0:e.length))return[2];return[4,a.resource("departments.members",t.id).add({values:e})];case 1:return n.sent(),i.current=[],o(),null==r||r(!1),[2]}})})()}}},department:t,handleSelect:function(e){i.current=e},useAddMembersFilterActionProps:e2},components:{AddMembersListProvider:e1},schema:eg})},e4=function(){var t=l().t,r=o.App.useApp().message,i=(0,e.useAPIClient)(),a=(0,e.useTableBlockContext)(),c=a.service.refresh,u=a.field,s=(0,n.useContext)(A).department;return{run:function(){return eZ(function(){var e,n;return e0(this,function(o){switch(o.label){case 0:if(!(null==(n=null==u||null==(e=u.data)?void 0:e.selectedRowKeys)?void 0:n.length))return r.warning(t("Please select members")),[2];return[4,i.resource("departments.members",s.id).remove({values:n})];case 1:return o.sent(),u.data.selectedRowKeys=[],c(),[2]}})})()}}},e3=function(){var t=(0,e.useAPIClient)(),r=(0,n.useContext)(A).department,o=(0,e.useRecord)().id,i=(0,e.useTableBlockContext)().service.refresh;return{run:function(){return eZ(function(){return e0(this,function(e){switch(e.label){case 0:return[4,t.resource("departments.members",r.id).remove({values:[o]})];case 1:return e.sent(),i(),[2]}})})()}}},e5=function(){var t,n=(0,e.useTableBlockContext)().service.data;return(0,l().t)("Total {{count}} members",{count:null==n||null==(t=n.meta)?void 0:t.count})},e8=function(){var t=(0,e.useTableBlockContext)().service;return{onClick:function(){return eZ(function(){var e;return e0(this,function(n){return null==t||null==(e=t.refresh)||e.call(t),[2]})})()}}},e7=function(){return(0,n.useContext)(A).department?r().createElement(e.SchemaComponent,{scope:{useRemoveMemberAction:e3},schema:ev}):null},e9=function(){return(0,n.useContext)(A).department?r().createElement(e.SchemaComponent,{schema:eb}):null},te=function(){var t,r,o=(0,n.useContext)(e.CollectionContext),i=(0,e.useFilterFieldOptions)(o.fields),a=(0,e.useTableBlockContext)().service;return(0,e.useFilterFieldProps)({options:i,params:(null==(r=a.state)||null==(t=r.params)?void 0:t[0])||a.params,service:a})},tt=function(){var t=l().t,o=(0,n.useContext)(A),i=o.department,a=o.user,c=(0,e.useTableBlockContext)().service,u=c.data,s=c.setState;(0,n.useEffect)(function(){null==s||s({selectedRowKeys:[]})},[u,s]);var p=(0,n.useMemo)(function(){return eh(i,a)},[i,a]);return r().createElement(r().Fragment,null,a?r().createElement("h2",null,t("Search results")):r().createElement("h2",null,t((null==i?void 0:i.title)||"All users")),r().createElement(e.SchemaComponent,{scope:{useBulkRemoveMembersAction:e4,t:t,useShowTotal:e5,useRefreshActionProps:e8,useMemberFilterActionProps:te,useTableBlockProps:eX},components:{MemberActions:e9,AddMembers:e6,RowRemoveAction:e7,DepartmentField:ew,IsOwnerField:eS,UserDepartmentsField:ez},schema:p}))};function tn(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 tr(e,t,n,r,o,i,a){try{var l=e[i](a),c=l.value}catch(e){n(e);return}l.done?t(c):Promise.resolve(c).then(r,o)}function to(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){var r;r=n[t],t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r})}return e}function ti(e,t){return t=null!=t?t:{},Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):(function(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);n.push.apply(n,r)}return n})(Object(t)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(t,n))}),e}var ta=function(e){var t,i,a,l=(0,x.useField)(),c=(t=r().useState({label:null,value:null}),function(e){if(Array.isArray(e))return e}(t)||function(e,t){var n,r,o=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=o){var i=[],a=!0,l=!1;try{for(o=o.call(e);!(a=(n=o.next()).done)&&(i.push(n.value),i.length!==t);a=!0);}catch(e){l=!0,r=e}finally{try{a||null==o.return||o.return()}finally{if(l)throw r}}return i}}(t,2)||function(e,t){if(e){if("string"==typeof e)return tn(e,2);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 tn(e,t)}}(t,2)||function(){throw TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()),u=c[0],s=c[1],p=e.treeData,f=e.initData,d=e.getByKeyword,m=e.loadData,y=e.loadedKeys,b=e.setLoadedKeys,v=e.originData,h=(i=function(e){return function(e,t){var n,r,o,i,a={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return i={next:l(0),throw:l(1),return:l(2)},"function"==typeof Symbol&&(i[Symbol.iterator]=function(){return this}),i;function l(i){return function(l){var c=[i,l];if(n)throw TypeError("Generator is already executing.");for(;a;)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 a.label++,{value:c[1],done:!1};case 5:a.label++,r=c[1],c=[0];continue;case 7:c=a.ops.pop(),a.trys.pop();continue;default:if(!(o=(o=a.trys).length>0&&o[o.length-1])&&(6===c[0]||2===c[0])){a=0;continue}if(3===c[0]&&(!o||c[1]>o[0]&&c[1]<o[3])){a.label=c[1];break}if(6===c[0]&&a.label<o[1]){a.label=o[1],o=c;break}if(o&&a.label<o[2]){a.label=o[2],a.ops.push(c);break}o[2]&&a.ops.pop(),a.trys.pop();continue}c=t.call(e,a)}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:if(!e)return f(v),[2];return[4,d(e)];case 1:return t.sent(),[2]}})},a=function(){var e=this,t=arguments;return new Promise(function(n,r){var o=i.apply(e,t);function a(e){tr(o,n,r,a,l,"next",e)}function l(e){tr(o,n,r,a,l,"throw",e)}a(void 0)})},function(e){return a.apply(this,arguments)}),g=(0,n.useCallback)(function(e){var t=e.title,n=e.parent;return n?g(n)+" / "+t:t},[]);return(0,n.useEffect)(function(){f(v)},[v,f]),(0,n.useEffect)(function(){if(!l.value)return void s({label:null,value:null});s({label:g(l.value)||l.value.label,value:l.value.id})},[l.value,g]),r().createElement(o.TreeSelect,{value:u,onSelect:function(e,t){l.setValue(t)},onChange:function(e){e||l.setValue(null)},treeData:p,treeLoadedKeys:y,onTreeLoad:function(e){return b(e)},loadData:function(e){return m({key:e.id,children:e.children})},fieldNames:{value:"id"},showSearch:!0,allowClear:!0,treeNodeFilterProp:"title",onSearch:h,labelInValue:!0})},tl=function(){var e=ee(),t=((0,n.useContext)(A).departmentsResource||{}).service.data;return r().createElement(ta,ti(to({},e),{originData:null==t?void 0:t.data}))},tc=function(){var t=ee(),o=t.setTreeData,i=t.getChildrenIds,a=(0,e.useRecord)(),l=((0,n.useContext)(A).departmentsResource||{}).service.data;return(0,n.useEffect)(function(){if(a.id){var e=i(a.id);e.push(a.id),o(function(t){var n=function(t){return t.map(function(t){return e.includes(t.id)&&(t.disabled=!0),t.children&&(t.children=n(t.children)),t})};return n(t)})}},[o,a.id,i]),r().createElement(ta,ti(to({},t),{originData:null==l?void 0:l.data}))},tu=function(){return r().createElement(e.SchemaComponentOptions,{components:{SuperiorDepartmentSelect:tc,DepartmentSelect:tl}},r().createElement(o.Row,{gutter:48,style:{flexWrap:"nowrap"}},r().createElement(o.Col,{span:6,style:{borderRight:"1px solid #eee",minWidth:"300px"}},r().createElement(j,null,r().createElement(ef,null))),r().createElement(o.Col,{flex:"auto",style:{overflow:"hidden"}},r().createElement(C,null,r().createElement(tt,null)))))},ts=function(){var t,n,o;return r().createElement(e.SchemaComponent,{components:{DepartmentManagement:tu},schema:{type:"void",properties:(t={},n=(0,u.uid)(),o={type:"void","x-decorator":"CardItem","x-component":"DepartmentManagement"},n in t?Object.defineProperty(t,n,{value:o,enumerable:!0,configurable:!0,writable:!0}):t[n]=o,t)}})},tp=m(465),tf=m.n(tp);function td(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}var tm=function(){var e;return{type:"void",properties:{actions:{type:"void","x-component":"ActionBar","x-component-props":{style:{marginBottom:16}},properties:(td(e={},(0,u.uid)(),{type:"void",title:'{{ t("Filter") }}',"x-action":"filter","x-component":"Filter.Action","x-use-component-props":"useFilterActionProps","x-component-props":{icon:"FilterOutlined"},"x-align":"left"}),td(e,"actions",{type:"void","x-component":"Space",properties:{remove:{type:"void",title:'{{t("Remove")}}',"x-component":"Action","x-component-props":{icon:"MinusOutlined",confirm:{title:"{{t('Remove')}}",content:"{{t('Are you sure you want to remove these departments?')}}"},style:{marginRight:8},useAction:"{{ useBulkRemoveDepartments }}"}},create:{type:"void",title:'{{t("Add departments")}}',"x-component":"Action","x-component-props":{type:"primary",icon:"PlusOutlined"},properties:{drawer:{type:"void","x-component":"Action.Drawer","x-decorator":"FormV2",title:'{{t("Add departments")}}',properties:{table:{type:"void","x-decorator":"FormItem","x-component":"DepartmentTable","x-component-props":{useDataSource:"{{ useDataSource }}",useDisabled:"{{ useDisabled }}"}},footer:{type:"void","x-component":"Action.Drawer.Footer",properties:{cancel:{title:'{{t("Cancel")}}',"x-component":"Action","x-component-props":{useAction:"{{ cm.useCancelAction }}"}},submit:{title:'{{t("Submit")}}',"x-component":"Action","x-component-props":{type:"primary",useAction:"{{ useAddDepartments }}"}}}}}}}}}}),e)},table:{type:"void","x-component":"Table.Void","x-component-props":{rowKey:"id",rowSelection:{type:"checkbox"},useDataSource:"{{ cm.useDataSourceFromRAC }}"},properties:{title:{type:"void",title:'{{t("Department name")}}',"x-decorator":"Table.Column.Decorator","x-component":"Table.Column",properties:{title:{type:"string","x-component":"DepartmentTitle"}}},actions:{type:"void",title:'{{t("Actions")}}',"x-component":"Table.Column",properties:{actions:{type:"void","x-component":"Space","x-component-props":{split:"|"},properties:{remove:{type:"void",title:'{{ t("Remove") }}',"x-component":"Action.Link","x-component-props":{confirm:{title:"{{t('Remove department')}}",content:"{{t('Are you sure you want to remove it?')}}"},useAction:"{{ useRemoveDepartment }}"}}}}}}}}}}};function ty(e,t,n,r,o,i,a){try{var l=e[i](a),c=l.value}catch(e){n(e);return}l.done?t(c):Promise.resolve(c).then(r,o)}function tb(e){return function(){var t=this,n=arguments;return new Promise(function(r,o){var i=e.apply(t,n);function a(e){ty(i,r,o,a,l,"next",e)}function l(e){ty(i,r,o,a,l,"throw",e)}a(void 0)})}}function tv(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){var r;r=n[t],t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r})}return e}function th(e,t){var n,r,o,i,a={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return i={next:l(0),throw:l(1),return:l(2)},"function"==typeof Symbol&&(i[Symbol.iterator]=function(){return this}),i;function l(i){return function(l){var c=[i,l];if(n)throw TypeError("Generator is already executing.");for(;a;)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 a.label++,{value:c[1],done:!1};case 5:a.label++,r=c[1],c=[0];continue;case 7:c=a.ops.pop(),a.trys.pop();continue;default:if(!(o=(o=a.trys).length>0&&o[o.length-1])&&(6===c[0]||2===c[0])){a=0;continue}if(3===c[0]&&(!o||c[1]>o[0]&&c[1]<o[3])){a.label=c[1];break}if(6===c[0]&&a.label<o[1]){a.label=o[1],o=c;break}if(o&&a.label<o[2]){a.label=o[2],a.ops.push(c);break}o[2]&&a.ops.pop(),a.trys.pop();continue}c=t.call(e,a)}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 tg=function(){var t=(0,e.useAPIClient)(),r=(0,n.useContext)(tp.RolesManagerContext).role,o=(0,e.useRecord)().id,i=(0,e.useResourceActionContext)().refresh;return{run:function(){return tb(function(){return th(this,function(e){switch(e.label){case 0:return[4,t.resource("roles/".concat(null==r?void 0:r.name,"/departments")).remove({values:[o]})];case 1:return e.sent(),i(),[2]}})})()}}},tx=function(){var t=l().t,r=o.App.useApp().message,i=(0,e.useAPIClient)(),a=(0,e.useResourceActionContext)(),c=a.state,u=a.setState,s=a.refresh,p=(0,n.useContext)(tp.RolesManagerContext).role;return{run:function(){return tb(function(){var e;return th(this,function(n){switch(n.label){case 0:if(!(null==(e=null==c?void 0:c.selectedRowKeys)?void 0:e.length))return r.warning(t("Please select departments")),[2];return[4,i.resource("roles/".concat(null==p?void 0:p.name,"/departments")).remove({values:e})];case 1:return n.sent(),null==u||u({selectedRowKeys:[]}),s(),[2]}})})()}}},tO=function(){var t=(0,e.useRecord)(),n=function(e){var t=e.title,r=e.parent;return r?n(r)+" / "+t:t};return r().createElement(r().Fragment,null,n(t))},tw=function(t){var n,r,o={resource:"departments",action:"list",params:{appends:["roles","parent(recursively=true)"],sort:["sort"]}};return n=tv({},(0,e.useRequest)(o,t)),r=r={defaultRequest:o},Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(r)):(function(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);n.push.apply(n,r)}return n})(Object(r)).forEach(function(e){Object.defineProperty(n,e,Object.getOwnPropertyDescriptor(r,e))}),n},tS=function(){var e=(0,n.useContext)(tp.RolesManagerContext).role;return{disabled:function(t){var n;return null==t||null==(n=t.roles)?void 0:n.some(function(t){return t.name===(null==e?void 0:e.name)})}}},tA=function(){var t=(0,n.useContext)(tp.RolesManagerContext).role,r=(0,e.useAPIClient)(),o=(0,x.useForm)(),i=(0,e.useActionContext)().setVisible,a=(0,e.useResourceActionContext)().refresh,l=(o.values||{}).departments;return{run:function(){return tb(function(){return th(this,function(e){switch(e.label){case 0:return[4,r.resource("roles.departments",t.name).add({values:l.map(function(e){return e.id})})];case 1:return e.sent(),o.reset(),i(!1),a(),[2]}})})()}}},tP=function(){var t=l().t,o=(0,n.useContext)(tp.RolesManagerContext).role,i=(0,e.useRequest)({resource:"roles/".concat(null==o?void 0:o.name,"/departments"),action:"list",params:{appends:["parent","parent.parent(recursively=true)"]}},{ready:!!o});(0,n.useEffect)(function(){i.run()},[o]);var a=(0,n.useMemo)(function(){return tm()},[o]);return r().createElement(e.ResourceActionContext.Provider,{value:tv({},i)},r().createElement(e.CollectionProvider_deprecated,{collection:h},r().createElement(e.SchemaComponent,{schema:a,components:{DepartmentTable:eT,DepartmentTitle:tO},scope:{useFilterActionProps:et,t:t,useRemoveDepartment:tg,useBulkRemoveDepartments:tx,useDataSource:tw,useDisabled:tS,useAddDepartments:tA}})))},tj=(0,x.connect)(function(){var e=l().t;return r().createElement("div",{style:{color:"#ccc"}},e("This field is currently not supported for use in form blocks.")," ")},(0,x.mapReadPretty)(e.AssociationField.ReadPretty)),tC=new e.SchemaSettings({name:"fieldSettings:component:UserDepartmentsField",items:[]});function tD(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function tE(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){tD(e,t,n[t])})}return e}function tk(e,t){return t=null!=t?t:{},Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):(function(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);n.push.apply(n,r)}return n})(Object(t)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(t,n))}),e}var tF=function(){var t=(0,e.useCollection_deprecated)().getField,n=(0,e.useCompile)(),r=(0,x.useFieldSchema)(),o=(0,e.useCollectionManager_deprecated)().getCollectionJoinField,i=r.reduceProperties(function(e,t){return"CollectionField"===t["x-component"]?t:e},null);if(!i)return{};var a=t(i.name)||o(null==i?void 0:i["x-collection-field"]);return{columnSchema:r,fieldSchema:i,collectionField:a,uiSchema:n(null==a?void 0:a.uiSchema)}};function tI(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){var r;r=n[t],t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r})}return e}var tR=new e.SchemaSettings({name:"fieldSettings:component:UserMainDepartmentField",items:[tI({},{name:"fieldComponent",type:"select",useComponentProps:function(){var t=l().t,n=(0,x.useField)(),r=tF(),o=r.fieldSchema,i=r.collectionField,a=(0,x.useFieldSchema)(),c=o||a,u=(0,e.useFieldModeOptions)({fieldSchema:o,collectionField:i}),s=(0,e.useDesignable)().dn;return{title:t("Field component"),options:u,value:"Select",onChange:function(e){var t=tD({},"x-uid",c["x-uid"]);c["x-component-props"]=c["x-component-props"]||{},c["x-component-props"].mode=e,t["x-component-props"]=c["x-component-props"],n.componentProps=n.componentProps||{},n.componentProps.mode=e,s.emit("patch",{schema:t}),s.refresh()}}}}),tI({},{name:"titleField",type:"select",useComponentProps:function(){var t,n,r,o,i=l().t,a=(0,x.useField)(),c=(0,e.useDesignable)().dn,u=(0,e.useTitleFieldOptions)(),s=tF(),p=(s.uiSchema,s.fieldSchema),f=s.collectionField,d=(0,x.useFieldSchema)(),m=p||d,y=(0,e.useCollectionField)(),b=f||y,v=tE({},null==b||null==(n=b.uiSchema)||null==(t=n["x-component-props"])?void 0:t.fieldNames,null==a||null==(r=a.componentProps)?void 0:r.fieldNames,null==m||null==(o=m["x-component-props"])?void 0:o.fieldNames);return{title:i("Title field"),options:u,value:null==v?void 0:v.label,onChange:function(e){var t,n,r,o,i,l,u=tD({},"x-uid",m["x-uid"]),s=tk(tE({},null==b||null==(n=b.uiSchema)||null==(t=n["x-component-props"])?void 0:t.fieldNames,null==(r=m["x-component-props"])?void 0:r.fieldNames),{label:e});m["x-component-props"]=m["x-component-props"]||{},m["x-component-props"].fieldNames=s,u["x-component-props"]=m["x-component-props"],a.componentProps.fieldNames=null==(o=m["x-component-props"])?void 0:o.fieldNames;var p=null==(l=a.path)?void 0:l.splice((null==(i=a.path)?void 0:i.length)-1,1);a.form.query("".concat(p.concat("*."+m.name))).forEach(function(e){e.componentProps.fieldNames=v}),c.emit("patch",{schema:u}),c.refresh()}}}}),tI({},{name:"enableLink",type:"switch",useVisible:function(){return(0,x.useField)().readPretty},useComponentProps:function(){var t,n=l().t,r=(0,x.useField)(),o=tF().fieldSchema,i=(0,x.useFieldSchema)(),a=o||i,c=(0,e.useDesignable)().dn;return{title:n("Enable link"),checked:(null==(t=a["x-component-props"])?void 0:t.enableLink)!==!1,onChange:function(e){a["x-component-props"]=tk(tE({},null==a?void 0:a["x-component-props"]),{enableLink:e}),r.componentProps.enableLink=e,c.emit("patch",{schema:{"x-uid":a["x-uid"],"x-component-props":tE({},null==a?void 0:a["x-component-props"])}}),c.refresh()}}}})]}),tT=new e.SchemaSettings({name:"fieldSettings:component:DepartmentOwnersField",items:[]});function tM(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 tK(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n,r,o=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=o){var i=[],a=!0,l=!1;try{for(o=o.call(e);!(a=(n=o.next()).done)&&(i.push(n.value),!t||i.length!==t);a=!0);}catch(e){l=!0,r=e}finally{try{a||null==o.return||o.return()}finally{if(l)throw r}}return i}}(e,t)||tB(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 tq(e){return function(e){if(Array.isArray(e))return tM(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||tB(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 tB(e,t){if(e){if("string"==typeof e)return tM(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 tM(e,t)}}var tN=(0,x.connect)(function(){var t=tK((0,n.useState)(!1),2),i=t[0],a=t[1],c=(0,e.useRecord)(),u=(0,x.useField)(),s=tK((0,n.useState)([]),2),p=s[0],f=s[1],d=(0,n.useRef)([]),m=l().t,y=!(null==c?void 0:c.id);return(0,n.useEffect)(function(){u.value&&f(u.value.map(function(e){return{value:e.id,label:e.nickname||e.username}}))},[u.value]),r().createElement(e.ActionContextProvider,{value:{visible:i,setVisible:a}},r().createElement(o.Select,{open:!1,onChange:function(e){if(!e)return void u.setValue([]);u.setValue(e.map(function(e){var t=e.label;return{id:e.value,nickname:t}}))},mode:"multiple",value:p,labelInValue:!0,onDropdownVisibleChange:function(e){return a(e)},disabled:y,placeholder:y?m("Please create department first"):""}),r().createElement(e.SchemaComponent,{schema:v,components:{RequestProvider:function(t){var n;return r().createElement(e.ResourceActionProvider,{collection:"users",request:{resource:"departments/".concat(c.id,"/members"),action:"list",params:{disableDefaultAppends:!0,filter:(null==(n=u.value)?void 0:n.length)?{id:{$notIn:u.value.map(function(e){return e.id})}}:{}}}},t.children)}},scope:{department:c,handleSelect:function(e,t){d.current=t},useSelectOwners:function(){var t=(0,e.useActionContext)().setVisible;return{run:function(){var e=u.value||[];u.setValue(tq(e).concat(tq(d.current))),d.current=[],t(!1)}}},useFilterActionProps:et}}))},(0,x.mapReadPretty)(function(t){var n,o,i=(0,x.useFieldSchema)();return i["x-component-props"]=(n=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){var r;r=n[t],t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r})}return e}({},i["x-component-props"]),o=o={fieldNames:{label:"nickname",value:"id"}},Object.getOwnPropertyDescriptors?Object.defineProperties(n,Object.getOwnPropertyDescriptors(o)):(function(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);n.push.apply(n,r)}return n})(Object(o)).forEach(function(e){Object.defineProperty(n,e,Object.getOwnPropertyDescriptor(o,e))}),n),r().createElement(e.AssociationField.ReadPretty,t)}));function tV(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 tU(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){var r;r=n[t],t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r})}return e}function tL(e,t){return t=null!=t?t:{},Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):(function(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);n.push.apply(n,r)}return n})(Object(t)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(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:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=o){var i=[],a=!0,l=!1;try{for(o=o.call(e);!(a=(n=o.next()).done)&&(i.push(n.value),!t||i.length!==t);a=!0);}catch(e){l=!0,r=e}finally{try{a||null==o.return||o.return()}finally{if(l)throw r}}return i}}(e,t)||tG(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 tz(e){return function(e){if(Array.isArray(e))return tV(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||tG(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){return e&&"undefined"!=typeof Symbol&&e.constructor===Symbol?"symbol":typeof e}function tG(e,t){if(e){if("string"==typeof e)return tV(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 tV(e,t)}}var tH=function(t){var n={resource:"departments",action:"list",params:{appends:["parent(recursively=true)"],sort:["sort"]}};return tL(tU({},(0,e.useRequest)(n,t)),{defaultRequest:n})},tW=(0,x.connect)(function(){var t=l().t,i=(0,x.useField)(),a=t$((0,n.useState)(!1),2),c=a[0],u=a[1],s=t$((0,n.useState)([]),2),p=s[0],f=s[1];(0,n.useEffect)(function(){i.value&&f((Array.isArray(i.value)?i.value:[]).map(function(e){var t=(void 0===e?"undefined":t_(e))==="object"?e.id:e,n=(void 0===e?"undefined":t_(e))==="object"&&(e.title||eO(e))||String(t);return{value:t,label:n}}))},[i.value]);var d={type:"void",properties:{drawer:{title:t("Select Departments"),"x-decorator":"Form","x-component":"Action.Drawer",properties:{table:{type:"void","x-decorator":"FormItem","x-component":"DepartmentTable","x-component-props":{useDataSource:"{{ useDataSource }}",useDisabled:"{{ useDisabled }}"}},footer:{type:"void","x-component":"Action.Drawer.Footer",properties:{cancel:{title:t("Cancel"),"x-component":"Action","x-component-props":{useAction:"{{ cm.useCancelAction }}"}},confirm:{title:t("Confirm"),"x-component":"Action","x-component-props":{type:"primary",useAction:"{{ useConfirmDepartments }}"}}}}}}}};return r().createElement(e.ActionContextProvider,{value:{visible:c,setVisible:u}},r().createElement(o.Select,{mode:"multiple",labelInValue:!0,open:!1,value:p,onChange:function(e){if(!e||0===e.length){i.setValue([]),f([]);return}f(e),i.setValue(e.map(function(e){return{id:e.value,title:e.label}}))},onDropdownVisibleChange:function(e){return u(e)}}),r().createElement(e.SchemaComponent,{schema:d,components:{DepartmentTable:eT},scope:{useDataSource:tH,useConfirmDepartments:function(){var e=(0,x.useForm)();return{run:function(){var t=(e.values||{}).departments,n=tz(Array.isArray(i.value)?i.value:[]).concat(tz(void 0===t?[]:t)),r=new Map;n.forEach(function(e){var t;return r.set(null!=(t=e.id)?t:e,e)});var o=Array.from(r.values());i.setValue(o),e.reset(),u(!1)}}},useDisabled:function(){return{disabled:function(e){return(Array.isArray(i.value)?i.value:[]).some(function(t){return((void 0===t?"undefined":t_(t))==="object"?t.id:t)===e.id})}}}}}))},(0,x.mapReadPretty)(function(t){var n=(0,x.useFieldSchema)();return n["x-component-props"]=tL(tU({},n["x-component-props"]),{fieldNames:{label:"title",value:"id"}}),r().createElement(e.AssociationField.ReadPretty,t)}));function tJ(e,t,n,r,o,i,a){try{var l=e[i](a),c=l.value}catch(e){n(e);return}l.done?t(c):Promise.resolve(c).then(r,o)}function tQ(e){return function(){var t=this,n=arguments;return new Promise(function(r,o){var i=e.apply(t,n);function a(e){tJ(i,r,o,a,l,"next",e)}function l(e){tJ(i,r,o,a,l,"throw",e)}a(void 0)})}}function tX(e,t,n){return(tX=t1()?Reflect.construct:function(e,t,n){var r=[null];r.push.apply(r,t);var o=new(Function.bind.apply(e,r));return n&&tZ(o,n.prototype),o}).apply(null,arguments)}function tY(e){return(tY=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}function tZ(e,t){return(tZ=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function t0(e){var t="function"==typeof Map?new Map:void 0;return(t0=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 tX(e,arguments,tY(this).constructor)}return n.prototype=Object.create(e.prototype,{constructor:{value:n,enumerable:!1,writable:!0,configurable:!0}}),tZ(n,e)})(e)}function t1(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch(e){}return(t1=function(){return!!e})()}function t2(e,t){var n,r,o,i,a={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return i={next:l(0),throw:l(1),return:l(2)},"function"==typeof Symbol&&(i[Symbol.iterator]=function(){return this}),i;function l(i){return function(l){var c=[i,l];if(n)throw TypeError("Generator is already executing.");for(;a;)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 a.label++,{value:c[1],done:!1};case 5:a.label++,r=c[1],c=[0];continue;case 7:c=a.ops.pop(),a.trys.pop();continue;default:if(!(o=(o=a.trys).length>0&&o[o.length-1])&&(6===c[0]||2===c[0])){a=0;continue}if(3===c[0]&&(!o||c[1]>o[0]&&c[1]<o[3])){a.label=c[1];break}if(6===c[0]&&a.label<o[1]){a.label=o[1],o=c;break}if(o&&a.label<o[2]){a.label=o[2],a.ops.push(c);break}o[2]&&a.ops.pop(),a.trys.pop();continue}c=t.call(e,a)}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 t6=function(n){var o;if("function"!=typeof n&&null!==n)throw TypeError("Super expression must either be null or a function");function i(){var e,t;if(!(this instanceof i))throw TypeError("Cannot call a class as a function");return e=i,t=arguments,e=tY(e),function(e,t){var n;if(t&&("object"==((n=t)&&"undefined"!=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,t1()?Reflect.construct(e,t||[],tY(this).constructor):e.apply(this,t))}return i.prototype=Object.create(n&&n.prototype,{constructor:{value:i,writable:!0,configurable:!0}}),n&&tZ(i,n),o=[{key:"afterAdd",value:function(){return tQ(function(){return t2(this,function(e){return[2]})})()}},{key:"beforeLoad",value:function(){return tQ(function(){return t2(this,function(e){return[2]})})()}},{key:"load",value:function(){var n=this;return tQ(function(){return t2(this,function(o){return n.app.addComponents({UserDepartmentsField:tW,UserMainDepartmentField:tj,DepartmentOwnersField:tN}),n.app.schemaSettingsManager.add(tC),n.app.schemaSettingsManager.add(tR),n.app.schemaSettingsManager.add(tT),n.app.pluginSettingsManager.add("users-permissions.departments",{icon:"ApartmentOutlined",title:(0,t.tval)("Departments",{ns:"departments"}),Component:function(){var t,n,o=(0,e.useSchemaComponentContext)();return r().createElement(e.SchemaComponentContext.Provider,{value:(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){var r;r=n[t],t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r})}return e}({},o),n=n={designable:!1},Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(n)):(function(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);n.push.apply(n,r)}return n})(Object(n)).forEach(function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(n,e))}),t)},r().createElement(P,null,r().createElement(ts,null)))},sort:2,aclSnippet:"pm.departments"}),n.app.pm.get(tf()).rolesManager.add("departments",{title:(0,t.tval)("Departments",{ns:"departments"}),Component:tP}),[2]})})()}}],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)}}(i.prototype,o),i}(t0(e.Plugin)),t4=t6}(),y}()});
@@ -8,23 +8,24 @@
8
8
  */
9
9
 
10
10
  module.exports = {
11
- "@nocobase/client": "2.1.0-beta.13",
11
+ "@nocobase/client": "2.1.0-beta.14",
12
12
  "react": "18.2.0",
13
13
  "@formily/react": "2.3.7",
14
14
  "@formily/core": "2.3.7",
15
- "@nocobase/utils": "2.1.0-beta.13",
16
- "@nocobase/plugin-acl": "2.1.0-beta.13",
15
+ "@nocobase/utils": "2.1.0-beta.14",
16
+ "@nocobase/plugin-acl": "2.1.0-beta.14",
17
17
  "react-i18next": "11.18.6",
18
- "@nocobase/database": "2.1.0-beta.13",
19
- "lodash": "4.17.21",
20
- "@nocobase/plugin-user-data-sync": "2.1.0-beta.13",
21
- "@nocobase/cache": "2.1.0-beta.13",
22
- "@nocobase/server": "2.1.0-beta.13",
23
- "@nocobase/data-source-manager": "2.1.0-beta.13",
24
- "@nocobase/plugin-error-handler": "2.1.0-beta.13",
18
+ "@nocobase/database": "2.1.0-beta.14",
19
+ "lodash": "4.18.1",
20
+ "@nocobase/plugin-user-data-sync": "2.1.0-beta.14",
21
+ "@nocobase/cache": "2.1.0-beta.14",
22
+ "@nocobase/server": "2.1.0-beta.14",
23
+ "@nocobase/data-source-manager": "2.1.0-beta.14",
24
+ "@nocobase/plugin-error-handler": "2.1.0-beta.14",
25
+ "sequelize": "6.35.2",
25
26
  "antd": "5.24.2",
26
27
  "@ant-design/icons": "5.6.1",
27
28
  "@formily/shared": "2.3.7",
28
29
  "@emotion/css": "11.13.0",
29
- "@nocobase/actions": "2.1.0-beta.13"
30
+ "@nocobase/actions": "2.1.0-beta.14"
30
31
  };
@@ -33,5 +33,17 @@ export declare const ownersField: {
33
33
  };
34
34
  };
35
35
  };
36
+ export declare const parentIdField: {
37
+ type: string;
38
+ name: string;
39
+ interface: string;
40
+ isForeignKey: boolean;
41
+ uiSchema: {
42
+ type: string;
43
+ title: string;
44
+ 'x-component': string;
45
+ 'x-read-pretty': boolean;
46
+ };
47
+ };
36
48
  declare const _default: import("@nocobase/database").CollectionOptions;
37
49
  export default _default;
@@ -27,7 +27,8 @@ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: tru
27
27
  var departments_exports = {};
28
28
  __export(departments_exports, {
29
29
  default: () => departments_default,
30
- ownersField: () => ownersField
30
+ ownersField: () => ownersField,
31
+ parentIdField: () => parentIdField
31
32
  });
32
33
  module.exports = __toCommonJS(departments_exports);
33
34
  var import_database = require("@nocobase/database");
@@ -58,6 +59,18 @@ const ownersField = {
58
59
  }
59
60
  }
60
61
  };
62
+ const parentIdField = {
63
+ type: "bigInt",
64
+ name: "parentId",
65
+ interface: "integer",
66
+ isForeignKey: true,
67
+ uiSchema: {
68
+ type: "number",
69
+ title: "parentId",
70
+ "x-component": "InputNumber",
71
+ "x-read-pretty": true
72
+ }
73
+ };
61
74
  var departments_default = (0, import_database.defineCollection)({
62
75
  name: "departments",
63
76
  migrationRules: ["overwrite"],
@@ -94,6 +107,7 @@ var departments_default = (0, import_database.defineCollection)({
94
107
  "x-component": "Input"
95
108
  }
96
109
  },
110
+ parentIdField,
97
111
  {
98
112
  type: "boolean",
99
113
  name: "isLeaf"
@@ -167,5 +181,6 @@ var departments_default = (0, import_database.defineCollection)({
167
181
  });
168
182
  // Annotate the CommonJS export names for ESM import in node:
169
183
  0 && (module.exports = {
170
- ownersField
184
+ ownersField,
185
+ parentIdField
171
186
  });
@@ -83,7 +83,7 @@ const mainDepartmentField = {
83
83
  };
84
84
  const mainDepartmentIdField = {
85
85
  collectionName: "users",
86
- interface: "inputNumber",
86
+ interface: "integer",
87
87
  type: "bigInt",
88
88
  name: "mainDepartmentId",
89
89
  uiSchema: {
@@ -29,73 +29,37 @@ __export(set_main_department_exports, {
29
29
  setMainDepartment: () => setMainDepartment
30
30
  });
31
31
  module.exports = __toCommonJS(set_main_department_exports);
32
+ var import_sync_user_main_department = require("../sync-user-main-department");
33
+ const normalizeIds = (values = []) => values.map((value) => typeof value === "object" && value ? value.id ?? value : value).filter((value) => value !== null && value !== void 0);
34
+ const syncUsersMainDepartment = async (ctx, userIds) => {
35
+ const uniqUserIds = [...new Set(normalizeIds(userIds))];
36
+ for (const userId of uniqUserIds) {
37
+ await (0, import_sync_user_main_department.syncUserMainDepartment)(ctx.db, userId, ctx.transaction);
38
+ }
39
+ };
32
40
  const setMainDepartment = async (ctx, next) => {
33
- var _a, _b;
34
- await next();
35
41
  const { associatedName, resourceName, associatedIndex, actionName, values, filterByTk } = ctx.action.params;
36
- if (associatedName === "departments" && resourceName === "members" && (values == null ? void 0 : values.length)) {
37
- const userRepo = ctx.db.getRepository("users");
42
+ let affectedDepartmentMemberUserIds = [];
43
+ if (associatedName === "departments" && resourceName === "members" && actionName === "set") {
38
44
  const throughRepo = ctx.db.getRepository("departmentsUsers");
39
- if (actionName === "add" || actionName === "set") {
40
- for (const userId of values) {
41
- const user = await userRepo.findOne({ filterByTk: userId, fields: ["id", "mainDepartmentId"] });
42
- if (!(user == null ? void 0 : user.mainDepartmentId)) {
43
- await userRepo.update({
44
- filterByTk: userId,
45
- values: { mainDepartmentId: associatedIndex }
46
- });
47
- }
48
- }
49
- return;
50
- }
51
- if (actionName === "remove") {
52
- for (const userId of values) {
53
- const user = await userRepo.findOne({ filterByTk: userId, fields: ["id", "mainDepartmentId"] });
54
- if ((user == null ? void 0 : user.mainDepartmentId) === Number(associatedIndex)) {
55
- const firstDept = await throughRepo.findOne({
56
- filter: { userId }
57
- });
58
- await userRepo.update({
59
- filterByTk: userId,
60
- values: { mainDepartmentId: firstDept ? firstDept.departmentId : null }
61
- });
62
- }
63
- }
64
- }
45
+ const currentMembers = await throughRepo.find({
46
+ fields: ["userId"],
47
+ filter: { departmentId: associatedIndex },
48
+ transaction: ctx.transaction
49
+ });
50
+ affectedDepartmentMemberUserIds = currentMembers.map((member) => {
51
+ var _a;
52
+ return ((_a = member.get) == null ? void 0 : _a.call(member, "userId")) ?? member.userId;
53
+ });
65
54
  }
66
- if (associatedName === "users" && resourceName === "departments" && ["add", "remove", "set"].includes(actionName)) {
67
- const userRepo = ctx.db.getRepository("users");
68
- const throughRepo = ctx.db.getRepository("departmentsUsers");
69
- const user = await userRepo.findOne({ filterByTk: associatedIndex, fields: ["id", "mainDepartmentId"] });
70
- let hasValidMain = false;
71
- if (user == null ? void 0 : user.mainDepartmentId) {
72
- const existingAssoc = await throughRepo.findOne({
73
- filter: { userId: associatedIndex, departmentId: user.mainDepartmentId }
74
- });
75
- hasValidMain = !!existingAssoc;
76
- }
77
- if (!hasValidMain) {
78
- const firstDept = await throughRepo.findOne({
79
- filter: { userId: associatedIndex }
80
- });
81
- await userRepo.update({
82
- filterByTk: associatedIndex,
83
- values: { mainDepartmentId: firstDept ? firstDept.departmentId : null }
84
- });
85
- }
55
+ await next();
56
+ if (associatedName === "departments" && resourceName === "members" && ["add", "remove", "set"].includes(actionName)) {
57
+ const affectedUserIds = actionName === "set" ? [...affectedDepartmentMemberUserIds, ...values || []] : values || [];
58
+ await syncUsersMainDepartment(ctx, affectedUserIds);
59
+ return;
86
60
  }
87
- if (resourceName === "users" && actionName === "update") {
88
- const userRepo = ctx.db.getRepository("users");
89
- const throughRepo = ctx.db.getRepository("departmentsUsers");
90
- const userId = associatedIndex ?? filterByTk ?? ((_b = (_a = ctx.body) == null ? void 0 : _a.data) == null ? void 0 : _b.id);
91
- if (!userId) return;
92
- const deptUsers = await throughRepo.find({ filter: { userId } });
93
- if (deptUsers.length === 1) {
94
- await userRepo.update({
95
- filterByTk: userId,
96
- values: { mainDepartmentId: deptUsers[0].departmentId }
97
- });
98
- }
61
+ if (associatedName === "users" && resourceName === "departments" && ["add", "remove", "set"].includes(actionName)) {
62
+ await syncUsersMainDepartment(ctx, [associatedIndex ?? filterByTk]);
99
63
  }
100
64
  };
101
65
  // Annotate the CommonJS export names for ESM import in node:
@@ -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 { Migration } from '@nocobase/server';
10
+ export default class extends Migration {
11
+ on: string;
12
+ up(): Promise<void>;
13
+ }
@@ -0,0 +1,57 @@
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
+
10
+ var __defProp = Object.defineProperty;
11
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
12
+ var __getOwnPropNames = Object.getOwnPropertyNames;
13
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
14
+ var __export = (target, all) => {
15
+ for (var name in all)
16
+ __defProp(target, name, { get: all[name], enumerable: true });
17
+ };
18
+ var __copyProps = (to, from, except, desc) => {
19
+ if (from && typeof from === "object" || typeof from === "function") {
20
+ for (let key of __getOwnPropNames(from))
21
+ if (!__hasOwnProp.call(to, key) && key !== except)
22
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
23
+ }
24
+ return to;
25
+ };
26
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
27
+ var add_parent_id_field_exports = {};
28
+ __export(add_parent_id_field_exports, {
29
+ default: () => add_parent_id_field_default
30
+ });
31
+ module.exports = __toCommonJS(add_parent_id_field_exports);
32
+ var import_server = require("@nocobase/server");
33
+ var import_departments = require("../collections/departments");
34
+ class add_parent_id_field_default extends import_server.Migration {
35
+ on = "afterLoad";
36
+ async up() {
37
+ const fieldRepo = this.db.getRepository("fields");
38
+ if (!fieldRepo) {
39
+ return;
40
+ }
41
+ const field = await fieldRepo.findOne({
42
+ filter: {
43
+ collectionName: "departments",
44
+ name: "parentId"
45
+ }
46
+ });
47
+ if (field) {
48
+ return;
49
+ }
50
+ await fieldRepo.create({
51
+ values: {
52
+ collectionName: "departments",
53
+ ...import_departments.parentIdField
54
+ }
55
+ });
56
+ }
57
+ }
@@ -37,6 +37,7 @@ var import_users2 = require("./collections/users");
37
37
  var import_middlewares = require("./middlewares");
38
38
  var import_department = require("./models/department");
39
39
  var import_department_data_sync_resource = require("./department-data-sync-resource");
40
+ var import_sync_user_main_department = require("./sync-user-main-department");
40
41
  class PluginDepartmentsServer extends import_server.Plugin {
41
42
  afterAdd() {
42
43
  }
@@ -88,16 +89,22 @@ class PluginDepartmentsServer extends import_server.Plugin {
88
89
  this.app.resourceManager.use(import_middlewares.updateDepartmentIsLeaf);
89
90
  this.app.resourceManager.use(import_middlewares.resetUserDepartmentsCache);
90
91
  this.app.resourceManager.use(import_middlewares.setMainDepartment);
91
- this.app.db.on("departmentsUsers.afterSave", async (model) => {
92
+ this.app.db.on("departmentsUsers.afterSave", async (model, options) => {
92
93
  const cache = this.app.cache;
94
+ await (0, import_sync_user_main_department.syncUserMainDepartment)(this.app.db, model.get("userId"), options == null ? void 0 : options.transaction);
93
95
  await cache.del(`departments:${model.get("userId")}`);
94
96
  });
95
- this.app.db.on("departmentsUsers.afterDestroy", async (model) => {
97
+ this.app.db.on("departmentsUsers.afterDestroy", async (model, options) => {
96
98
  const cache = this.app.cache;
99
+ await (0, import_sync_user_main_department.syncUserMainDepartment)(this.app.db, model.get("userId"), options == null ? void 0 : options.transaction);
97
100
  await cache.del(`departments:${model.get("userId")}`);
98
101
  });
102
+ this.app.db.on("users.afterSaveWithAssociations", async (model, options) => {
103
+ await (0, import_sync_user_main_department.syncUserMainDepartment)(this.app.db, model.get("id"), options == null ? void 0 : options.transaction);
104
+ });
99
105
  this.app.db.on("users.beforeSave", async (model, options) => {
100
106
  var _a;
107
+ const submittedDepartments = (_a = options == null ? void 0 : options.values) == null ? void 0 : _a.departments;
101
108
  const mainDepartmentId = model.get("mainDepartmentId");
102
109
  if (!mainDepartmentId) {
103
110
  return;
@@ -116,7 +123,6 @@ class PluginDepartmentsServer extends import_server.Plugin {
116
123
  return;
117
124
  }
118
125
  }
119
- const submittedDepartments = (_a = options == null ? void 0 : options.values) == null ? void 0 : _a.departments;
120
126
  if (Array.isArray(submittedDepartments)) {
121
127
  const included = submittedDepartments.some((d) => {
122
128
  const id = typeof d === "object" ? d && (d.id ?? d) : d;
@@ -0,0 +1,19 @@
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
+ /**
10
+ * This file is part of the NocoBase (R) project.
11
+ * Copyright (c) 2020-2024 NocoBase Co., Ltd.
12
+ * Authors: NocoBase Team.
13
+ *
14
+ * This program is offered under a commercial license.
15
+ * For more information, see <https://www.nocobase.com/agreement>
16
+ */
17
+ import type { Database } from '@nocobase/database';
18
+ import type { Transaction } from 'sequelize';
19
+ export declare const syncUserMainDepartment: (db: Database, userId: number | string, transaction?: Transaction) => Promise<void>;
@@ -0,0 +1,74 @@
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
+
10
+ var __defProp = Object.defineProperty;
11
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
12
+ var __getOwnPropNames = Object.getOwnPropertyNames;
13
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
14
+ var __export = (target, all) => {
15
+ for (var name in all)
16
+ __defProp(target, name, { get: all[name], enumerable: true });
17
+ };
18
+ var __copyProps = (to, from, except, desc) => {
19
+ if (from && typeof from === "object" || typeof from === "function") {
20
+ for (let key of __getOwnPropNames(from))
21
+ if (!__hasOwnProp.call(to, key) && key !== except)
22
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
23
+ }
24
+ return to;
25
+ };
26
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
27
+ var sync_user_main_department_exports = {};
28
+ __export(sync_user_main_department_exports, {
29
+ syncUserMainDepartment: () => syncUserMainDepartment
30
+ });
31
+ module.exports = __toCommonJS(sync_user_main_department_exports);
32
+ const syncUserMainDepartment = async (db, userId, transaction) => {
33
+ if (!userId) {
34
+ return;
35
+ }
36
+ const userRepo = db.getRepository("users");
37
+ const throughRepo = db.getRepository("departmentsUsers");
38
+ const user = await userRepo.findOne({
39
+ filterByTk: userId,
40
+ fields: ["id", "mainDepartmentId"],
41
+ transaction
42
+ });
43
+ if (!user) {
44
+ return;
45
+ }
46
+ const currentMainDepartmentId = user.get("mainDepartmentId");
47
+ const currentMainDepartment = currentMainDepartmentId && await throughRepo.findOne({
48
+ filter: {
49
+ userId,
50
+ departmentId: currentMainDepartmentId
51
+ },
52
+ transaction
53
+ });
54
+ if (currentMainDepartment) {
55
+ return;
56
+ }
57
+ const firstDepartment = await throughRepo.findOne({
58
+ filter: { userId },
59
+ transaction
60
+ });
61
+ const nextMainDepartmentId = firstDepartment ? firstDepartment.get("departmentId") : null;
62
+ if (currentMainDepartmentId === nextMainDepartmentId) {
63
+ return;
64
+ }
65
+ await userRepo.update({
66
+ filterByTk: userId,
67
+ values: { mainDepartmentId: nextMainDepartmentId },
68
+ transaction
69
+ });
70
+ };
71
+ // Annotate the CommonJS export names for ESM import in node:
72
+ 0 && (module.exports = {
73
+ syncUserMainDepartment
74
+ });
package/package.json CHANGED
@@ -6,7 +6,7 @@
6
6
  "description": "Organize users by departments, set hierarchical relationships, link roles to control permissions, and use departments as variables in workflows and expressions.",
7
7
  "description.ru-RU": "Организация пользователей по подразделениям, установление иерархических связей, привязка ролей для управления правами и использование подразделений в качестве переменных в рабочих процессах и выражениях.",
8
8
  "description.zh-CN": "以部门来组织用户,设定上下级关系,绑定角色控制权限,并支持作为变量用于工作流和表达式。",
9
- "version": "2.1.0-beta.13",
9
+ "version": "2.1.0-beta.14",
10
10
  "main": "dist/server/index.js",
11
11
  "peerDependencies": {
12
12
  "@nocobase/actions": "2.x",
@@ -18,6 +18,6 @@
18
18
  "keywords": [
19
19
  "Users & permissions"
20
20
  ],
21
- "gitHead": "691716e5f4e5f8bd3859d65bc8a29b4e3c32209b",
21
+ "gitHead": "cd55c9a14596d834c30c83a82c38f1f719f7aac4",
22
22
  "license": "Apache-2.0"
23
23
  }