@nocobase/plugin-workflow 3.0.0-alpha.12 → 3.0.0-alpha.13
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/client/142.99ee85375434b414.js +10 -0
- package/dist/client/276.0cd7d4f4b21299f2.js +10 -0
- package/dist/client/{382.d37fba14a6b91b0b.js → 382.163a5272789260ab.js} +1 -1
- package/dist/client/{394.a37310b78419ad7a.js → 394.2b986ad5ec8d2cd0.js} +1 -1
- package/dist/client/{54.d81b710f7b4c1cd5.js → 54.6a0f9054f5aeb5cf.js} +1 -1
- package/dist/client/{618.1aa6c21d0f2840cb.js → 618.3a1c7678cb08cbe0.js} +1 -1
- package/dist/client/635.639988ea0ebdd8f3.js +10 -0
- package/dist/client/{67.5eb8767a709f27d9.js → 67.d69365d72db04f02.js} +1 -1
- package/dist/client/719.27165958caf83d8e.js +10 -0
- package/dist/client/728.f57b6314d6786870.js +10 -0
- package/dist/client/{938.26493fc09ba1ccbc.js → 938.68d591853136f00d.js} +1 -1
- package/dist/client/{964.5ab736effd480a42.js → 964.618e49037c20a31b.js} +1 -1
- package/dist/client/components/UsersSelect.d.ts +2 -9
- package/dist/client/index.js +1 -1
- package/dist/client/workflowTasksResponsive.d.ts +14 -0
- package/dist/client-v2/32.3aff0d3127924f37.js +10 -0
- package/dist/client-v2/components/FilterDynamicComponent.d.ts +4 -1
- package/dist/client-v2/components/UsersSelect.d.ts +39 -0
- package/dist/client-v2/index.d.ts +2 -0
- package/dist/client-v2/index.js +1 -1
- package/dist/common/collections/jobs.d.ts +3 -0
- package/dist/common/collections/jobs.js +2 -1
- package/dist/externalVersion.js +13 -13
- package/dist/node_modules/cron-parser/package.json +1 -1
- package/dist/node_modules/joi/package.json +1 -1
- package/dist/node_modules/lru-cache/package.json +1 -1
- package/dist/node_modules/nodejs-snowflake/package.json +1 -1
- package/dist/server/triggers/ScheduleTrigger/StaticScheduleTrigger.js +5 -5
- package/package.json +2 -2
- package/dist/client/142.fb4936d78fc80007.js +0 -10
- package/dist/client/276.69fb2aea13bc7c37.js +0 -10
- package/dist/client/635.ff6085589e23d39b.js +0 -10
- package/dist/client/719.f011fde3ad54571e.js +0 -10
- package/dist/client/728.e54be200a2eaac45.js +0 -10
- package/dist/client/972.dd7f074d5f12e171.js +0 -10
- package/dist/client-v2/32.e076de47eaf18733.js +0 -10
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* This file is part of the NocoBase (R) project.
|
|
3
|
+
* Copyright (c) 2020-2024 NocoBase Co., Ltd.
|
|
4
|
+
* Authors: NocoBase Team.
|
|
5
|
+
*
|
|
6
|
+
* This project is dual-licensed under AGPL-3.0 and NocoBase Commercial License.
|
|
7
|
+
* For more information, please refer to: https://www.nocobase.com/agreement.
|
|
8
|
+
*/
|
|
9
|
+
export declare function shouldUseWorkflowTasksMobilePresentation(options: {
|
|
10
|
+
isMobileLayout: boolean;
|
|
11
|
+
md?: boolean;
|
|
12
|
+
mobilePage: boolean;
|
|
13
|
+
viewportWidth?: number;
|
|
14
|
+
}): boolean;
|
|
@@ -0,0 +1,10 @@
|
|
|
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
|
+
"use strict";(self.webpackChunk_nocobase_plugin_workflow_client_v2=self.webpackChunk_nocobase_plugin_workflow_client_v2||[]).push([["32"],{11:function(e,t,n){n.r(t),n.d(t,{default:function(){return ea}});var r=n(7694),o=n(3485),a=n(7375),l=n(5477),i=n(2625),u=n(2059),c=n(9155),s=n.n(c),f=n(4442),d=n(8401),p=n(250),y=n(9488);function m(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 g(e,t,n,r,o,a,l){try{var i=e[a](l),u=i.value}catch(e){n(e);return}i.done?t(u):Promise.resolve(u).then(r,o)}function h(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 w(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n,r,o=null==e?null:"u">typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=o){var a=[],l=!0,i=!1;try{for(o=o.call(e);!(l=(n=o.next()).done)&&(a.push(n.value),!t||a.length!==t);l=!0);}catch(e){i=!0,r=e}finally{try{l||null==o.return||o.return()}finally{if(i)throw r}}return a}}(e,t)||v(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 b(e,t){return t||(t=e.slice(0)),Object.freeze(Object.defineProperties(e,{raw:{value:Object.freeze(t)}}))}function k(e){return function(e){if(Array.isArray(e))return m(e)}(e)||function(e){if("u">typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||v(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 v(e,t){if(e){if("string"==typeof e)return m(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 m(e,t)}}function x(){var e=b(["\n display: flex;\n gap: ","px;\n align-items: center;\n justify-content: space-between;\n width: 100%;\n min-width: 0;\n\n > span:first-child {\n flex: 1;\n min-width: 0;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n }\n\n > .ant-badge {\n flex: none;\n }\n "]);return x=function(){return e},e}function S(){var e=b(["\n display: flex;\n gap: ","px;\n align-items: center;\n justify-content: space-between;\n width: 100%;\n min-width: 0;\n\n > span:first-child {\n flex: 1;\n min-width: 0;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n }\n "]);return S=function(){return e},e}function E(){var e=b(["\n flex: none;\n color: ",";\n font-size: ","px;\n font-variant-numeric: tabular-nums;\n "]);return E=function(){return e},e}function T(){var e=b(["\n display: flex;\n align-items: center;\n width: 100%;\n height: ","px;\n "]);return T=function(){return e},e}function M(){var e=b(["\n width: 100%;\n "]);return M=function(){return e},e}function O(){var e=b(["\n flex: 1;\n min-width: 0;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n "]);return O=function(){return e},e}function j(){var e=b(["\n display: inline-flex;\n flex: none;\n align-items: center;\n justify-content: flex-end;\n width: ","px;\n height: ","px;\n padding: 0;\n color: ",";\n cursor: pointer;\n background: transparent;\n border: 0;\n border-radius: ","px;\n\n &:hover,\n &:focus-visible {\n color: ",";\n }\n\n &:focus-visible {\n outline: ","px solid ",";\n outline-offset: -","px;\n }\n "]);return j=function(){return e},e}function P(){var e=b(["\n display: flex;\n flex-direction: column;\n height: 100%;\n min-height: 0;\n overflow: hidden;\n background: ",";\n border-inline-end: 0 !important;\n\n > .ant-menu-submenu {\n flex: none;\n min-height: 0;\n }\n\n > .ant-menu-submenu-open {\n display: flex;\n flex: 0 1 auto;\n flex-direction: column;\n min-height: ","px;\n overflow: hidden;\n }\n\n > .ant-menu-submenu-open > .ant-menu-submenu-title {\n flex: none;\n }\n\n > .ant-menu-submenu-open > .ant-menu-sub.ant-menu-inline {\n flex: 1;\n min-height: 0;\n overflow-x: hidden;\n overflow-y: auto;\n overscroll-behavior: contain;\n }\n\n .ant-menu-sub.ant-menu-inline {\n width: calc(100% - ","px);\n margin-inline: ","px;\n padding-block: ","px;\n background: "," !important;\n border-radius: ","px;\n }\n\n .ant-menu-submenu-title {\n padding-inline-end: ","px;\n }\n\n .ant-menu-sub.ant-menu-inline > .ant-menu-item {\n height: ","px;\n margin-block: 0;\n line-height: ","px;\n }\n\n .ant-menu-title-content {\n min-width: 0;\n }\n\n .workflow-task-menu-placeholder {\n display: none !important;\n }\n "]);return P=function(){return e},e}function C(){var e=b(["\n height: ","px;\n padding-inline: ","px;\n background: ",";\n border: 0;\n\n &:hover,\n &:focus-visible {\n background: "," !important;\n }\n "]);return C=function(){return e},e}var I=(0,c.createContext)({selectedWorkflow:null,selectWorkflow:function(){},workflows:[],loading:!1,loadingMore:!1,hasNext:!1,error:!1,search:"",setSearch:function(){},loadMore:function(){},reload:function(){}});function K(){return(0,c.useContext)(I)}function F(e){return!!e&&(void 0===e?"undefined":e&&"u">typeof Symbol&&e.constructor===Symbol?"symbol":typeof e)=="object"&&!Array.isArray(e)}function L(e){var t=e.children,n=e.eventBus,r=e.loadWorkflowTaskStats,o=e.typeKey,a=w((0,c.useState)(null),2),l=a[0],i=a[1],u=w((0,c.useState)([]),2),f=u[0],d=u[1],p=w((0,c.useState)(1),2),y=p[0],m=p[1],b=w((0,c.useState)(!1),2),k=b[0],v=b[1],x=w((0,c.useState)(!1),2),S=x[0],E=x[1],T=w((0,c.useState)(!1),2),M=T[0],O=T[1],j=w((0,c.useState)(!1),2),P=j[0],C=j[1],K=w((0,c.useState)(""),2),L=K[0],B=K[1],z=(0,c.useRef)(0),R=(0,c.useRef)(o),N=(null==l?void 0:l.typeKey)===o?l.workflow:null,A=(0,c.useCallback)(function(e){i(e&&o?{typeKey:o,workflow:e}:null)},[o]),W=(0,c.useCallback)(function(e,t){var n;return(n=function(){var n,a,l,u;return function(e,t){var n,r,o,a={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]},l=Object.create(("function"==typeof Iterator?Iterator:Object).prototype),i=Object.defineProperty;return i(l,"next",{value:u(0)}),i(l,"throw",{value:u(1)}),i(l,"return",{value:u(2)}),"function"==typeof Symbol&&i(l,Symbol.iterator,{value:function(){return this}}),l;function u(i){return function(u){var c=[i,u];if(n)throw TypeError("Generator is already executing.");for(;l&&(l=0,c[0]&&(a=0)),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(c){switch(c.label){case 0:if(!o)return d([]),v(!1),[2];n=++z.current,t?O(!0):(E(!0),v(!1)),C(!1),c.label=1;case 1:return c.trys.push([1,3,4,5]),[4,r(h({type:o,page:e,pageSize:200},L?{search:L}:{}))];case 2:var s,f,p,y;if(a=c.sent(),n!==z.current)return[2];return s=F(a)?a.data:void 0,f=F(s)?s:void 0,p=Array.isArray(s)?s:null==f?void 0:f.data,y=F(null==f?void 0:f.meta)?f.meta:void 0,l={rows:Array.isArray(p)?p.filter(function(e){return F(e)&&"string"==typeof e.workflowKey&&"string"==typeof e.title&&F(e.stats)}):[],hasNext:(null==y?void 0:y.hasNext)===!0},i(function(e){if(!e||e.typeKey!==o)return e;var t,n,r=l.rows.find(function(t){return t.workflowKey===e.workflow.workflowKey});return r?(t=h({},e),n=n={workflow:r},Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(n)):(function(e){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t.push.apply(t,n)}return t})(Object(n)).forEach(function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(n,e))}),t):e}),d(function(e){if(!t)return l.rows;var n=new Map(e.map(function(e){return[e.workflowKey,e]}));return l.rows.forEach(function(e){return n.set(e.workflowKey,e)}),Array.from(n.values())}),m(e),v(l.hasNext),[3,5];case 3:return u=c.sent(),n===z.current&&(C(!0),console.error("Failed to load workflow task stats",u)),[3,5];case 4:return n===z.current&&(E(!1),O(!1)),[7];case 5:return[2]}})},function(){var e=this,t=arguments;return new Promise(function(r,o){var a=n.apply(e,t);function l(e){g(a,r,o,l,i,"next",e)}function i(e){g(a,r,o,l,i,"throw",e)}l(void 0)})})()},[r,L,o]),X=(0,c.useCallback)(function(){W(1,!1)},[W]),H=(0,c.useCallback)(function(){!k||S||M||W(y+1,!0)},[k,W,S,M,y]);(0,c.useEffect)(function(){R.current!==o&&(R.current=o,z.current+=1,i(null),d([]),m(1),v(!1),B(""))},[o]),(0,c.useEffect)(function(){X()},[X]),(0,c.useEffect)(function(){if(n){var e,t=function(t){"detail"in t&&F(t.detail)&&t.detail.type===o&&(e&&clearTimeout(e),e=setTimeout(X,300))};return n.addEventListener("ws:message:workflow:tasks:updated",t),function(){e&&clearTimeout(e),n.removeEventListener("ws:message:workflow:tasks:updated",t)}}},[n,X,o]);var D=(0,c.useMemo)(function(){return{selectedWorkflow:N,selectWorkflow:A,workflows:f,loading:S,loadingMore:M,hasNext:k,error:P,search:L,setSearch:B,loadMore:H,reload:X}},[P,k,H,S,M,X,L,A,N,f]);return s().createElement(I.Provider,{value:D},t)}function B(e){var t=e.count,n=e.title,r=u.theme.useToken().token;return s().createElement("span",{className:(0,l.css)(x(),r.marginXS)},s().createElement("span",null,n),s().createElement(u.Badge,{count:t,size:"small"}))}function z(e){var t=e.title,n=e.count,r=u.theme.useToken().token;return s().createElement("span",{className:(0,l.css)(S(),r.marginXS)},s().createElement("span",null,t),s().createElement("span",{className:(0,l.css)(E(),r.colorTextTertiary,r.fontSizeSM)},n))}function R(e){var t=e.search,n=e.searchValue,r=e.setSearchValue,o=e.setSearch,i=e.t,f=u.theme.useToken().token,d=w((0,c.useState)(!!t),2),p=d[0],y=d[1],m=w((0,c.useState)(!1),2),g=m[0],h=m[1],b=(0,c.useRef)(null),k=(0,c.useRef)(!1),v=(0,c.useRef)(!1),x=(0,c.useRef)(!1);(0,c.useEffect)(function(){t&&y(!0)},[t]),(0,c.useEffect)(function(){if(p&&k.current){var e;k.current=!1,null==(e=b.current)||e.focus()}},[p]);var S=(0,c.useCallback)(function(){k.current=!0,y(!0)},[]),E=(0,c.useCallback)(function(){g||n||y(!1)},[g,n]);return s().createElement("div",{onMouseLeave:E,className:(0,l.css)(T(),f.controlHeight)},p?s().createElement("form",{onMouseDown:function(e){return e.stopPropagation()},onClick:function(e){return e.stopPropagation()},onSubmit:function(e){if(e.preventDefault(),e.stopPropagation(),v.current||x.current){x.current=!1;return}o(n.trim())},className:(0,l.css)(M())},s().createElement(u.Input,{ref:b,allowClear:!0,size:"small",value:n,placeholder:i("Search workflows"),"aria-label":i("Search workflows"),onCompositionStart:function(){v.current=!0},onCompositionEnd:function(){v.current=!1},onFocus:function(){return h(!0)},onBlur:function(){h(!1),n||y(!1)},onChange:function(e){var n=e.target.value;r(n),!n&&t&&o("")},onKeyDown:function(e){e.stopPropagation(),"Enter"===e.key&&(x.current=e.nativeEvent.isComposing||v.current),"Escape"===e.key&&(r(""),o(""),y(!1))}})):s().createElement(s().Fragment,null,s().createElement("span",{className:(0,l.css)(O())},i("All workflows")),s().createElement("button",{type:"button","aria-label":i("Search workflows"),onMouseDown:function(e){return e.stopPropagation()},onClick:function(e){e.stopPropagation(),S()},onMouseEnter:function(){return y(!0)},onFocus:S,className:(0,l.css)(j(),f.controlHeightSM,f.controlHeightSM,f.colorTextSecondary,f.borderRadiusSM,f.colorPrimary,f.lineWidthFocus,f.colorPrimaryBorder,f.lineWidthFocus)},s().createElement(a.SearchOutlined,null))))}function N(e){var t=e.currentTypeKey,n=e.onTaskTypeSelect,r=e.onWorkflowSelect,o=e.taskTypes,a=e.t,i=u.theme.useToken().token,f=K(),d=f.selectedWorkflow,p=f.selectWorkflow,y=f.workflows,m=f.loading,g=f.loadingMore,h=f.hasNext,b=f.error,v=f.search,x=f.setSearch,S=f.loadMore,E=f.reload,T=w((0,c.useState)(v),2),M=T[0],O=T[1],j=t?"type:".concat(t):void 0,C=w((0,c.useState)(j?[j]:[]),2),I=C[0],F=C[1];(0,c.useEffect)(function(){O(v)},[v]),(0,c.useEffect)(function(){F(j?[j]:[])},[j]);var L=(0,c.useCallback)(function(e){p(e),null==r||r()},[r,p]),N=(0,c.useCallback)(function(e){var t=e.key;if("workflow:all"===t)return void L(null);if("action:retry"===t)return void E();if("action:loadMore"===t)return void S();if(t.startsWith("workflow:")){var n=t.slice(9),r=y.find(function(e){return e.workflowKey===n});r&&L(r)}},[L,S,E,y]),A=(0,c.useCallback)(function(e){var r=k(e).reverse().find(function(e){return e.startsWith("type:")});if(!r)return void F([]);F([r]);var o=r.slice(5);o!==t&&n(o)},[t,n]),W=[{key:"workflow:all",label:s().createElement(R,{search:v,searchValue:M,setSearchValue:O,setSearch:x,t:a})}].concat(k(y.map(function(e){return{key:"workflow:".concat(e.workflowKey),label:s().createElement(z,{title:e.title,count:e.stats.pending})}})));return m&&W.push({key:"status:loading",disabled:!0,label:s().createElement(u.Flex,{justify:"center"},s().createElement(u.Spin,{size:"small"}))}),b&&W.push({key:"action:retry",label:s().createElement(u.Flex,{justify:"center"},a("Retry"))}),h&&!b&&W.push({key:"action:loadMore",disabled:g,label:s().createElement(u.Flex,{justify:"center"},g?s().createElement(u.Spin,{size:"small"}):a("Load more"))}),s().createElement(u.Menu,{"data-testid":"workflow-task-navigation-menu",mode:"inline",inlineIndent:i.padding,expandIcon:null,openKeys:I,selectedKeys:k(j?[j]:[]).concat([d?"workflow:".concat(d.workflowKey):"workflow:all"]),onClick:N,onOpenChange:A,items:o.map(function(e){return{key:"type:".concat(e.key),label:s().createElement(B,{title:e.title,count:e.count}),children:e.key===t?W:[{key:"placeholder:".concat(e.key),disabled:!0,className:"workflow-task-menu-placeholder",label:null}]}}),className:(0,l.css)(P(),i.colorBgContainer,i.controlHeightLG+2*i.marginXXS,2*i.marginXXS,i.marginXXS,i.paddingXXS,i.colorFillTertiary,i.borderRadius,i.padding,i.controlHeight,i.controlHeight)})}function A(e){var t=e.currentTypeKey,n=e.mobile,r=e.onTaskTypeSelect,o=e.taskTypes,i=e.t,f=K().selectedWorkflow,d=u.theme.useToken().token,p=w((0,c.useState)(!1),2),y=p[0],m=p[1],g=o.find(function(e){return e.key===t});return n?s().createElement(u.Layout.Header,{style:{background:d.colorBgContainer,height:"auto",lineHeight:"normal",padding:"".concat(d.paddingXXS,"px ").concat(d.padding,"px")}},s().createElement(u.Button,{block:!0,type:"text","aria-expanded":y,"aria-label":i("Select workflow"),onClick:function(){return m(!0)},className:(0,l.css)(C(),d.controlHeight,d.paddingSM,d.colorFillAlter,d.colorFillSecondary)},s().createElement(u.Flex,{align:"center",justify:"space-between",gap:d.marginXS,style:{minWidth:0,width:"100%"}},s().createElement(u.Flex,{align:"center",gap:d.marginXXS,style:{minWidth:0}},s().createElement("span",null,null==g?void 0:g.title),f?s().createElement(s().Fragment,null,s().createElement(a.RightOutlined,{"aria-hidden":!0,style:{color:d.colorTextTertiary,flex:"none"}}),s().createElement("span",{style:{overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"}},f.title)):null),s().createElement(a.DownOutlined,{"aria-hidden":!0,style:{color:d.colorTextSecondary,flex:"none",marginInlineStart:"auto"}}))),s().createElement(u.Drawer,{title:i("Workflow tasks"),placement:"left",open:y,onClose:function(){return m(!1)},styles:{body:{padding:0}}},s().createElement(N,{currentTypeKey:t,onTaskTypeSelect:r,onWorkflowSelect:function(){return m(!1)},taskTypes:o,t:i}))):s().createElement(u.Layout.Sider,{theme:"light",breakpoint:"md",collapsedWidth:0,style:{background:d.colorBgContainer,borderInlineEnd:"".concat(d.lineWidth,"px ").concat(d.lineType," ").concat(d.colorBorderSecondary)}},s().createElement(N,{currentTypeKey:t,onTaskTypeSelect:r,taskTypes:o,t:i}))}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 X(e,t,n,r,o,a,l){try{var i=e[a](l),u=i.value}catch(e){n(e);return}i.done?t(u):Promise.resolve(u).then(r,o)}function H(e){return function(){var t=this,n=arguments;return new Promise(function(r,o){var a=e.apply(t,n);function l(e){X(a,r,o,l,i,"next",e)}function i(e){X(a,r,o,l,i,"throw",e)}l(void 0)})}}function D(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 J(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n,r,o=null==e?null:"u">typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=o){var a=[],l=!0,i=!1;try{for(o=o.call(e);!(l=(n=o.next()).done)&&(a.push(n.value),!t||a.length!==t);l=!0);}catch(e){i=!0,r=e}finally{try{l||null==o.return||o.return()}finally{if(i)throw r}}return a}}(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.")}()}function _(e,t){var n,r,o,a={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]},l=Object.create(("function"==typeof Iterator?Iterator:Object).prototype),i=Object.defineProperty;return i(l,"next",{value:u(0)}),i(l,"throw",{value:u(1)}),i(l,"return",{value:u(2)}),"function"==typeof Symbol&&i(l,Symbol.iterator,{value:function(){return this}}),l;function u(i){return function(u){var c=[i,u];if(n)throw TypeError("Generator is already executing.");for(;l&&(l=0,c[0]&&(a=0)),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}}}}function G(){var e,t,n=(e=["\n > div > .ant-tabs > .ant-tabs-nav {\n background: ",";\n margin: 0;\n padding-inline: ","px ","px;\n padding-left: ","px;\n }\n\n > div > .ant-tabs > .ant-tabs-content-holder {\n padding: ","px;\n }\n "],t||(t=e.slice(0)),Object.freeze(Object.defineProperties(e,{raw:{value:Object.freeze(t)}})));return G=function(){return n},n}var V="(max-width: 768px)",$=null;function Z(e,t){e&&t&&((null==$?void 0:$.taskTypeKey)!==e||$.popupId!==t)||($=null)}function U(){var e=(0,f.useParams)(),t=(0,f.useLocation)(),n=(0,p.e3)(e.status),r=/(^|\/)(mobile\/page|page)\/workflow-tasks(\/|$)/.test(t.pathname);return{taskType:e.taskType,status:n,popupId:e.popupId,isMobileRoute:r,search:t.search,hash:t.hash}}function q(e,t){return"".concat(e).concat(t.search||"").concat(t.hash||"")}function Q(e){var t=e.type,n=e.status,r=e.mobile,o=e.reload,a=e.workflowKey,l=e.workflowPendingCount,m=(0,f.useNavigate)(),g=(0,y.kj)(),h=u.theme.useToken().token,w=t.Actions,b=U(),k=(0,c.useMemo)(function(){return p._l.map(function(e){return{key:e,value:e,label:g(e===p.Rr.PENDING?"Pending":e===p.Rr.COMPLETED?"Completed":"All")}})},[g]),v=(0,i.useMemoizedFn)(function(e){m(q((0,d.T0)(t.key,String(e),void 0,b.isMobileRoute),b))});return r?s().createElement(u.Flex,{"data-testid":"workflow-task-status-controls",align:"center",justify:"space-between",gap:h.marginSM,wrap:"wrap"},s().createElement(u.Segmented,{value:n,options:k.map(function(e){return{value:e.value,label:e.label}}),onChange:v,style:{minWidth:0}}),w?s().createElement(w,{onlyIcon:!0,reload:o,workflowKey:a,workflowPendingCount:l}):null):s().createElement(u.Tabs,{activeKey:n,onChange:v,items:k.map(function(e){return{key:e.key,label:e.label}}),tabBarStyle:{marginBottom:0},tabBarExtraContent:w?{right:s().createElement(w,{reload:o,workflowKey:a,workflowPendingCount:l})}:void 0})}function Y(e){var t=e.mobile,n=e.onPageChange,r=e.page,o=e.total,l=u.theme.useToken().token,c=(0,y.kj)(),f=Math.max(1,Math.ceil(Math.max(o,1)/p.JJ)),d=r>1,m=r<f,g=(0,i.useMemoizedFn)(function(){d&&n(r-1)}),h=(0,i.useMemoizedFn)(function(){m&&n(r+1)});return s().createElement(u.Flex,{align:"center",className:"ant-pagination","data-testid":"workflow-task-pagination",gap:t?l.marginXXS:l.marginSM,justify:"end",style:{width:"100%"}},s().createElement(u.Flex,{align:"center",gap:l.marginXXS},s().createElement(u.Button,{"aria-label":c("Previous page"),className:"ant-pagination-prev".concat(d?"":" ant-pagination-disabled"),disabled:!d,icon:s().createElement(a.LeftOutlined,null),onClick:g,size:"small",style:{height:l.controlHeightSM,width:l.controlHeightSM},type:"text"}),s().createElement(u.Typography.Text,{"data-testid":"workflow-task-current-page",style:{lineHeight:"".concat(l.controlHeightSM,"px"),minWidth:l.sizeSM,textAlign:"center"}},r),s().createElement(u.Button,{"aria-label":c("Next page"),className:"ant-pagination-next".concat(m?"":" ant-pagination-disabled"),disabled:!m,icon:s().createElement(a.RightOutlined,null),onClick:h,size:"small",style:{height:l.controlHeightSM,width:l.controlHeightSM},type:"text"})),t?null:s().createElement(u.Select,{"aria-label":c("Page size"),className:"ant-pagination-options",options:[{label:"".concat(p.JJ," / page"),value:p.JJ}],popupMatchSelectWidth:!1,size:"middle",style:{width:112},value:p.JJ}))}function ee(e){var t=e.records,n=e.loading,r=e.mobile,o=e.total,a=e.page,l=e.onPageChange,c=e.onOpenRecord,f=e.refresh,d=e.Item,m=u.theme.useToken().token,g=(0,y.kj)(),h=o>0||t.length>0,w=(0,i.useMemoizedFn)(function(e,t){("Enter"===e.key||" "===e.key)&&(e.preventDefault(),c(t))});return s().createElement(s().Fragment,null,s().createElement(u.List,{dataSource:t,loading:n,rowKey:function(e){var t;return String(null!=(t=(0,p.Zu)(e))?t:"")},locale:{emptyText:g("No data yet")},split:!1,style:{background:m.colorBgLayout,flex:"1 1 0%",minHeight:0,overflow:"auto"},renderItem:function(e,t){return s().createElement(p.xT.Provider,{value:{record:e,openRecord:c,refresh:f}},s().createElement(u.List.Item,{role:"button",tabIndex:0,onClick:function(){return c(e)},onKeyDown:function(t){return w(t,e)},style:{cursor:"pointer",padding:r?"0.5em 0.5em ".concat(m.lineWidth,"px"):"".concat(0===t?m.paddingLG:m.paddingXS,"px ").concat(m.paddingLG,"px ").concat(m.paddingXXS,"px"),background:m.colorBgLayout}},s().createElement("div",{"data-testid":"workflow-task-list-item-content",style:{width:"100%"}},s().createElement(d,null))))}}),h?s().createElement(u.Flex,{justify:"end",style:{background:m.colorBgLayout,flexShrink:0,padding:r?"0.5em":"".concat(m.padding,"px ").concat(m.paddingLG,"px")}},s().createElement(Y,{mobile:r,onPageChange:l,page:a,total:o})):null)}function et(e,t){if(e)return t.split(".").reduce(function(e,t){if(e&&(void 0===e?"undefined":e&&"u">typeof Symbol&&e.constructor===Symbol?"symbol":typeof e)=="object")return e[t]},e)}function en(e){var t=e.children,n=e.record,r=e.mobile,o=e.onClose,a=e.title,l=u.theme.useToken().token;return s().createElement(u.Modal,{open:!!n,title:a,footer:null,width:"80vw",onCancel:o,destroyOnClose:!0,styles:{body:{maxHeight:r?"calc(100dvh - ".concat(2*l.sizeXXL,"px)"):void 0,overflow:"auto"}}},t)}function er(e){var t=e.children,n=e.onClose,r=u.theme.useToken().token,o=(0,y.kj)(),i=(0,l.css)(G(),r.colorBgContainer,r.padding,r.padding,r.controlHeight+r.paddingSM,r.padding);return s().createElement("div",{"data-testid":"workflow-task-mobile-detail-page",style:{background:r.colorBgLayout,flex:"1 1 0%",minHeight:0,overflow:"auto",position:"relative"}},s().createElement(u.Button,{"aria-label":o("Back"),icon:s().createElement(a.LeftOutlined,null),onClick:n,style:{left:r.paddingXS,position:"absolute",top:r.paddingSM,zIndex:1},type:"text"}),s().createElement("div",{"data-testid":"workflow-task-mobile-detail-content",className:i,style:{minWidth:0}},t))}function eo(e){var t,n,r,a,l,m,g,h,w,b=e.availableTaskTypeKeys,k=e.countsState,v=e.ctx,x=e.currentTaskType,S=e.currentTaskTypeKey,E=e.taskTypes,T=k.counts,M=k.reload,O=U(),j=(0,o.useMobileLayout)().isMobileLayout,P=(n=(t=J((0,c.useState)(function(){return"u">typeof window&&"function"==typeof window.matchMedia&&window.matchMedia(V).matches}),2))[0],r=t[1],(0,c.useEffect)(function(){if("u">typeof window&&"function"==typeof window.matchMedia){var e=window.matchMedia(V),t=function(e){return r(e.matches)};return(r(e.matches),"function"==typeof e.addEventListener)?(e.addEventListener("change",t),function(){return e.removeEventListener("change",t)}):(e.addListener(t),function(){return e.removeListener(t)})}},[]),n),C=O.isMobileRoute||j||P,I=(0,f.useNavigate)(),F=u.App.useApp().message,L=(0,y.kj)(),B=u.theme.useToken().token,z=K().selectedWorkflow,R=J((0,c.useState)([]),2),N=R[0],W=R[1],X=J((0,c.useState)(function(){var e=O.popupId;if($&&$.taskTypeKey===S&&$.popupId===e){var t=$.record;return $=null,t}return(S||e)&&($=null),null}),2),G=X[0],Y=X[1],eo=J((0,c.useState)(0),2),ea=eo[0],el=eo[1],ei="".concat(null!=S?S:"","\n").concat(O.status,"\n").concat(null!=(h=null==z?void 0:z.workflowKey)?h:"","\n").concat(O.search),eu=J((0,c.useState)({signature:"",page:1}),2),ec=eu[0],es=eu[1],ef=ec.signature===ei?ec.page:1,ed=J((0,c.useState)(!1),2),ep=ed[0],ey=ed[1],em=(0,c.useRef)(0),eg=(0,c.useRef)(0),eh=(0,c.useRef)(G&&O.popupId&&S?{popupId:O.popupId,taskTypeKey:S}:null),ew=(0,c.useRef)(eh.current),eb=(0,i.useMemoizedFn)(function(){F.error(L("Load failed"))});(0,c.useEffect)(function(){var e=document.title;return(null==x?void 0:x.title)&&(document.title="".concat(L("Workflow todos"),": ").concat(L(x.title)," - NocoBase")),function(){document.title=e}},[null==x?void 0:x.title,L]),(0,c.useEffect)(function(){!O.taskType&&b.length&&I(q((0,d.T0)(b[0],O.status,void 0,O.isMobileRoute),O),{replace:!0})},[b,I,O,O.isMobileRoute,O.status,O.taskType]),(0,c.useEffect)(function(){ec.signature!==ei&&es({signature:ei,page:1})},[ei,ec.signature]);var ek=(0,i.useMemoizedFn)(function(){return H(function(){var e,t,n,r,o,a,l,i,u;return _(this,function(c){switch(c.label){case 0:if(t=++em.current,!(null==v?void 0:v.api)||!x||!(n=v.api.resource(x.collection)[null!=(e=x.action)?e:"list"]))return W([]),el(0),ey(!1),[2];ey(!0),c.label=1;case 1:return c.trys.push([1,3,4,5]),a=null!=(r=null==(o=x.useActionParams)?void 0:o.call(x,O.status,null==z?void 0:z.workflowKey))?r:{},[4,n(D({page:ef,pageSize:p.JJ,sort:["-createdAt"]},a))];case 2:if(l=c.sent(),i=(0,p.z1)(l),t!==em.current)return[2];return W(i.data),el("number"==typeof i.meta.count?i.meta.count:!0===i.meta.hasNext?ef*p.JJ+1:(ef-1)*p.JJ+i.data.length),[3,5];case 3:if(u=c.sent(),t!==em.current)return[2];throw W([]),el(0),u;case 4:return t===em.current&&ey(!1),[7];case 5:return[2]}})})()}),ev=(0,i.useMemoizedFn)(function(){return H(function(){return _(this,function(e){switch(e.label){case 0:return[4,Promise.all([ek(),M()])];case 1:return e.sent(),[2]}})})()});(0,c.useEffect)(function(){return ek().catch(function(e){console.error("Failed to load workflow tasks",e),eb()}),function(){em.current+=1}},[S,ek,ef,O.search,O.status,null==z?void 0:z.workflowKey,eb]);var ex=(0,i.useMemoizedFn)(function(){return H(function(){var e,t,n,r,o,a;return _(this,function(l){switch(l.label){case 0:if(e=++eg.current,!(null==v?void 0:v.api)||!x||!O.popupId)return eh.current=null,ew.current=null,Z(),Y(null),[2];l.label=1;case 1:if(l.trys.push([1,6,,7]),!x.getPopupRecord)return[3,3];return[4,x.getPopupRecord(v.api,{params:{filterByTk:O.popupId}})];case 2:return o=l.sent(),[3,5];case 3:return[4,null==(n=(r=v.api.resource(x.collection)).get)?void 0:n.call(r,{filterByTk:O.popupId})];case 4:o=l.sent(),l.label=5;case 5:return t=o,[3,7];case 6:if(a=l.sent(),e!==eg.current)return[2];throw a;case 7:if(e!==eg.current)return[2];return eh.current={taskTypeKey:x.key,popupId:O.popupId},Z(x.key,O.popupId),Y((0,p.y$)(t)),[2]}})})()});(0,c.useEffect)(function(){if(!O.popupId){ew.current||(eg.current+=1,eh.current=null,Z(),Y(null));return}ew.current=null;var e=O.popupId;return Y(function(t){var n=eh.current,r=t?(0,p.Zu)(t):void 0;return t&&(null==n?void 0:n.taskTypeKey)===S&&String(r)===e?t:(eh.current=null,Z(),null)}),ex().catch(function(e){console.error("Failed to load workflow task detail",e),eh.current=null,ew.current=null,Z(S,O.popupId),Y(null),eb()}),function(){eg.current+=1}},[S,ex,O.popupId,O.status,eb]);var eS=(0,i.useMemoizedFn)(function(e){if(x){var t=(0,p.Zu)(e);eg.current+=1,eh.current=null==t?null:{taskTypeKey:x.key,popupId:String(t)},ew.current=eh.current,$=eh.current?{popupId:eh.current.popupId,record:e,taskTypeKey:x.key}:null,Y(e),null!=t&&I(q((0,d.T0)(x.key,O.status,String(t),O.isMobileRoute),O))}}),eE=(0,i.useMemoizedFn)(function(){eg.current+=1,eh.current=null,ew.current=null,Z(),Y(null),x&&I(q((0,d.T0)(x.key,O.status,void 0,O.isMobileRoute),O),{replace:!0})}),eT=(0,i.useMemoizedFn)(function(e){es({signature:ei,page:e})}),eM=(0,c.useMemo)(function(){return b.map(function(e){var t,n,r;return{key:e,title:(null==E||null==(t=E.get(e))?void 0:t.title)?L(null==(n=E.get(e))?void 0:n.title):e,count:(null==(r=T[e])?void 0:r.pending)||0}})},[b,T,L,E]),eO=(0,i.useMemoizedFn)(function(e){I(q((0,d.T0)(e,p.Rr.PENDING,void 0,O.isMobileRoute),O))});if(!x||!S)return s().createElement(u.Result,{status:O.taskType?"error":"info",title:O.taskType?L("Task type {{type}} is invalid",{type:O.taskType}):L("No workflow tasks available. Please contact the administrator.")});var ej=s().createElement(u.Flex,{vertical:!0,gap:C?B.marginXS:B.marginXXS},C?null:s().createElement(u.Typography.Title,{level:4,style:{lineHeight:"".concat(B.controlHeight,"px"),margin:0}},L(x.title)),s().createElement(Q,{type:x,status:O.status,mobile:C,reload:ev,workflowKey:null==z?void 0:z.workflowKey,workflowPendingCount:null==z?void 0:z.stats.pending})),eP=null!=(w=x.DetailModal)?w:en,eC=x.Detail,eI=L("string"==typeof(g=null!=(a=null!=(l=null!=(m=et(G,"node.title"))?m:et(G,"title"))?l:et(G,"workflow.title"))?a:x.title)&&g?g:x.title),eK=G?s().createElement(p.xT.Provider,{value:{record:G,refresh:ev,openRecord:Y}},s().createElement(eC,null)):null,eF=C&&!!G;return s().createElement(u.Layout,{"data-testid":C?"workflow-tasks-mobile":"workflow-tasks-desktop",style:{minHeight:C?0:"100%",height:"100%",background:B.colorBgLayout}},eF?null:s().createElement(A,{currentTypeKey:S,mobile:C,onTaskTypeSelect:eO,taskTypes:eM,t:L}),C&&!eF?s().createElement(u.Layout.Header,{style:{height:"auto",lineHeight:"normal",padding:0,background:B.colorBgContainer,borderBottom:"".concat(B.lineWidth,"px ").concat(B.lineType," ").concat(B.colorBorderSecondary)}},s().createElement("div",{style:{padding:B.paddingSM}},ej)):null,s().createElement(u.Layout,{style:{background:B.colorBgLayout}},s().createElement(u.Layout.Content,{style:{display:"flex",flex:"1 1 0%",flexDirection:"column",minHeight:0,padding:0,overflow:"hidden"}},C||eF?null:s().createElement("div",{style:{padding:"".concat(B.padding,"px ").concat(B.paddingLG,"px 0"),background:B.colorBgContainer,borderBottom:"".concat(B.lineWidth,"px ").concat(B.lineType," ").concat(B.colorBorderSecondary)}},ej),eF?s().createElement(er,{onClose:eE},eK):s().createElement("div",{"data-testid":"workflow-task-list-region",style:{background:B.colorBgLayout,display:"flex",flex:"1 1 0%",flexDirection:"column",minHeight:0}},s().createElement(ee,{records:N,loading:ep,mobile:C,total:ea,page:ef,onPageChange:eT,onOpenRecord:eS,refresh:ev,Item:x.Item})))),eF?null:s().createElement(eP,{type:x,record:G,mobile:C,title:eI,onClose:eE},eK))}function ea(){var e,t,n,o,a,l,u,f,d,y=(0,r.useFlowContext)(),m=(0,p.e0)(y),g=(0,p.yg)(y,m),h=(e=g.counts,n=U().taskType,o=(0,c.useMemo)(function(){return(0,p.Bf)(m)},[m]),a=(0,c.useMemo)(function(){return(0,p.EC)(m,e)},[e,m]),l=null!=(t=null!=n?n:a[0])?t:o[0],{taskTypeKeys:o,availableTaskTypeKeys:a,currentTaskType:l?null==m?void 0:m.get(l):void 0,currentTaskTypeKey:l}),w=(0,i.useMemoizedFn)(function(e){return H(function(){var t;return _(this,function(n){return[2,(t=null==y?void 0:y.api.resource("userWorkflowTaskStats").listMine)?t(e):{data:{data:[],meta:{}}}]})})()});return s().createElement(L,{eventBus:null==y||null==(d=y.app)?void 0:d.eventBus,loadWorkflowTaskStats:w,typeKey:h.currentTaskTypeKey},s().createElement(eo,(u=D({},h),f=f={countsState:g,ctx:y,taskTypes:m},Object.getOwnPropertyDescriptors?Object.defineProperties(u,Object.getOwnPropertyDescriptors(f)):(function(e){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t.push.apply(t,n)}return t})(Object(f)).forEach(function(e){Object.defineProperty(u,e,Object.getOwnPropertyDescriptor(f,e))}),u)))}}}]);
|
|
@@ -6,8 +6,9 @@
|
|
|
6
6
|
* This project is dual-licensed under AGPL-3.0 and NocoBase Commercial License.
|
|
7
7
|
* For more information, please refer to: https://www.nocobase.com/agreement.
|
|
8
8
|
*/
|
|
9
|
+
import { type MetaTreeNode } from '@nocobase/flow-engine';
|
|
9
10
|
import React from 'react';
|
|
10
|
-
export declare function FilterDynamicComponent({ collection, value, onChange, disabled, rightAsVariable, maxAssociationFieldDepth, }: {
|
|
11
|
+
export declare function FilterDynamicComponent({ collection, value, onChange, disabled, rightAsVariable, maxAssociationFieldDepth, transformVariableOptions, includeDateRangeVariable, }: {
|
|
11
12
|
collection?: string;
|
|
12
13
|
value?: Record<string, unknown> | null;
|
|
13
14
|
onChange?: (value: Record<string, unknown> | null) => void;
|
|
@@ -23,6 +24,8 @@ export declare function FilterDynamicComponent({ collection, value, onChange, di
|
|
|
23
24
|
* Defaults to `2` to match the legacy v1 workflow filter behaviour.
|
|
24
25
|
*/
|
|
25
26
|
maxAssociationFieldDepth?: number;
|
|
27
|
+
transformVariableOptions?: (options: MetaTreeNode[]) => MetaTreeNode[];
|
|
28
|
+
includeDateRangeVariable?: boolean;
|
|
26
29
|
}): React.JSX.Element;
|
|
27
30
|
export declare const ConditionField: typeof FilterDynamicComponent;
|
|
28
31
|
export default FilterDynamicComponent;
|
|
@@ -0,0 +1,39 @@
|
|
|
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 { type MetaTreeNode } from '@nocobase/flow-engine';
|
|
10
|
+
import React from 'react';
|
|
11
|
+
export type UserOption = {
|
|
12
|
+
id: number | string;
|
|
13
|
+
nickname?: string;
|
|
14
|
+
};
|
|
15
|
+
export type UserQueryValue = {
|
|
16
|
+
filter?: Record<string, unknown>;
|
|
17
|
+
};
|
|
18
|
+
export type UserSelectValue = number | string | UserQueryValue;
|
|
19
|
+
type WorkflowFieldLike = {
|
|
20
|
+
collectionName?: string;
|
|
21
|
+
isForeignKey?: boolean;
|
|
22
|
+
name?: string;
|
|
23
|
+
target?: string;
|
|
24
|
+
type?: string;
|
|
25
|
+
};
|
|
26
|
+
export type UsersSelectProps = {
|
|
27
|
+
disabled?: boolean;
|
|
28
|
+
dropdownFooter?: React.ReactNode;
|
|
29
|
+
nullable?: boolean;
|
|
30
|
+
includeDateRangeVariable?: boolean;
|
|
31
|
+
onChange?: (next: UserSelectValue) => void;
|
|
32
|
+
popupClassName?: string;
|
|
33
|
+
transformVariableOptions?: (options: MetaTreeNode[]) => MetaTreeNode[];
|
|
34
|
+
value?: UserSelectValue | null;
|
|
35
|
+
variableOptions?: MetaTreeNode[];
|
|
36
|
+
};
|
|
37
|
+
export declare function isUserKeyField(field: WorkflowFieldLike): boolean;
|
|
38
|
+
export declare function UsersSelect({ disabled, dropdownFooter, includeDateRangeVariable, nullable, onChange, popupClassName, transformVariableOptions, value, }: UsersSelectProps): React.JSX.Element;
|
|
39
|
+
export default UsersSelect;
|
|
@@ -46,3 +46,5 @@ export { Trigger } from './triggers';
|
|
|
46
46
|
export type { LoaderOf as TriggerLoaderOf, TriggerTempAssociationSource } from './triggers';
|
|
47
47
|
export * from './components/collection';
|
|
48
48
|
export { FilterDynamicComponent, ConditionField } from './components/FilterDynamicComponent';
|
|
49
|
+
export { UsersSelect, isUserKeyField } from './components/UsersSelect';
|
|
50
|
+
export type { UsersSelectProps, UserSelectValue, UserQueryValue, UserOption } from './components/UsersSelect';
|