@flatbiz/antd 4.5.8 → 4.5.10

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.
@@ -0,0 +1,3 @@
1
+ /*! @flatjs/forge MIT @flatbiz/antd */
2
+ import{createContext as e}from"react";var a=e({readonly:false,showEditable:true,showEditableIcon:true,isCtx:false});export{a as E};
3
+ //# sourceMappingURL=context-62955871.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"context-62955871.js","sources":["@flatbiz/antd/src/editable-field-provider/context.ts"],"sourcesContent":["import { createContext } from 'react';\n\nexport type EditableFieldContextContextApi = {\n readonly?: boolean;\n showEditable?: boolean;\n showEditableIcon: boolean;\n isCtx: boolean;\n};\n\nexport const EditableFieldContext = createContext<EditableFieldContextContextApi>({\n readonly: false,\n showEditable: true,\n showEditableIcon: true,\n isCtx: false,\n});\n"],"names":["EditableFieldContext","createContext","readonly","showEditable","showEditableIcon","isCtx"],"mappings":";sCASaA,IAAAA,EAAuBC,EAA8C,CAChFC,SAAU,MACVC,aAAc,KACdC,iBAAkB,KAClBC,MAAO"}
@@ -19,5 +19,5 @@ import './../form-grid/index.css';
19
19
  import './../table-scrollbar/index.css';
20
20
  import './index.css';
21
21
  /*! @flatjs/forge MIT @flatbiz/antd */
22
- import{fbaUtils as e}from"../fba-utils/index.js";import{_ as n,a as t}from"../_rollupPluginBabelHelpers-a0769acd.js";import{classNames as i}from"@dimjs/utils/cjs/class-names";import{isUndefined as r}from"@dimjs/lang/cjs/is-undefined";import{get as a}from"@dimjs/utils/cjs/get";import{isString as o}from"@dimjs/lang/cjs/is-string";import{isArray as l}from"@dimjs/lang/cjs/is-array";import{hooks as u}from"@wove/react/cjs/hooks";import{cloneState as s}from"@dimjs/model";import{noop as d,localStorageCache as c,isUndefinedOrNull as f,getUuid as p,isMacEnv as m}from"@flatbiz/utils";import{Drawer as v,Table as g,Checkbox as h,Popover as y,Form as C,message as S}from"antd";import{createContext as b,useState as x,Fragment as F,forwardRef as j,useRef as z,useMemo as R,useEffect as w,useImperativeHandle as q,cloneElement as P,useContext as N,Children as K}from"react";import{ButtonWrapper as k}from"../button-wrapper/index.js";import{fbaHooks as T}from"../fba-hooks/index.js";import{FlexLayout as I}from"../flex-layout/index.js";import{IconWrapper as _}from"../icon-wrapper/index.js";import{P as D,S as L}from"../index-6677fbfc.js";import{SvgHttpView as V}from"../svg-http-view/index.js";import{TableTitleTooltip as E}from"../table-title-tooltip/index.js";import{TipsWrapper as A}from"../tips-wrapper/index.js";import{jsx as B,jsxs as O}from"react/jsx-runtime";import{Model as W}from"@dimjs/model-react";import U from"@ant-design/icons/es/icons/DownOutlined";import G from"@ant-design/icons/es/icons/UpOutlined";import{isFragment as H}from"react-is";import{BlockLayout as Q}from"../block-layout/index.js";import{EasyForm as Y}from"../easy-form/index.js";import{FormGrid as M}from"../form-grid/index.js";import{TableScrollbar as $}from"../table-scrollbar/index.js";import"@ant-design/icons/es/icons/LoadingOutlined";import"@dimjs/lang/cjs/is-promise";import"../index-7f4ad045.js";import"antd/es/locale/en_US";import"antd/es/locale/zh_CN";import"dayjs";import"dayjs/locale/en";import"dayjs/locale/zh-cn";import"dayjs/plugin/advancedFormat";import"dayjs/plugin/customParseFormat";import"dayjs/plugin/localeData";import"dayjs/plugin/utc";import"dayjs/plugin/weekday";import"dayjs/plugin/weekOfYear";import"dayjs/plugin/weekYear";import"@dimjs/utils/cjs/extend";import"../use-responsive-point-21b8c601.js";import"@ant-design/icons/es/icons/QuestionCircleOutlined";import"../box-grid/index.js";import"@dimjs/lang/cjs/is-number";import"ahooks";import"../form-wrapper/index.js";import"../pre-defined-class-name/index.js";var J=b({onRequest:d,tableList:[],getEasyTableRef:function e(){}});var X=function e(n){var t=x(n.initSelectedRowKeys||[]),i=t[0],r=t[1];var a={type:"checkbox",selectedRowKeys:i,onChange:function e(t){r(t);n.onChange(t);if(n.cacheKey){c.set("easy_tab_"+n.cacheKey,{keys:t})}}};var o=[{title:"字段名称",dataIndex:"title",render:function e(n,t){return t["_isFoldTitle"]||n}},{title:"字段Key",dataIndex:"dataIndex"}];return B(F,{children:B(v,{title:"选择字段",open:n.open,onClose:n.onClose,width:"35%",styles:{body:{padding:15}},children:B(g,{bordered:true,size:"small",columns:o,rowSelection:a,rowKey:"dataIndex",pagination:false,scroll:{x:"max-content"},dataSource:n.dataList})})})};var Z=function e(n){var t=x(n.initSelectedRowKeys||[]),i=t[0],r=t[1];var a=function e(t){r(t);n.onChange(t);if(n.cacheKey){c.set("easy_tab_"+n.cacheKey,{keys:t})}};var o=B(F,{children:B(h.Group,{defaultValue:i,onChange:a,value:i,style:{display:"flex",flexDirection:"column"},children:n.dataList.map((function(e){var n=e["_isFoldTitle"]||e.title;return B(h,{value:e.dataIndex,style:{padding:"0 0 5px 0"},children:n},e.dataIndex)}))})});var l=function e(t){if(t.target.checked){a(n.dataList.map((function(e){return e.dataIndex})))}else{a([])}};return B(y,{content:o,title:B(h,{checked:i.length===n.dataList.length,onChange:l,children:"全选(字段列表)"}),placement:"bottomRight",overlayClassName:"fold-operate-popiver",children:n.children})};var ee={queryCondition:{},isInit:true};var ne={actions:{updateFilterCondition:function e(t){return function(e){e.queryCondition=n({},e.queryCondition,t)}},resetFilterCondition:function e(t){return function(e){e.queryCondition=n({},ee.queryCondition,t)}},updateInitStatus:function e(){return function(e){e.isInit=false}}},state:ee};var te={};var ie=function e(n){if(!te[n]){te[n]=W(ne)}return te[n]};var re=["tooltip","tipsWrapperProps","title","hidden","isFold"];var ae=j((function(e,d){var f;var p=x(),m=p[0],v=p[1];var g=x(0),h=g[0],y=g[1];var b=x(false),F=b[0],j=b[1];var N=u.useId(undefined,"easy-table-key");var K=e.columnFoldConfig;var L=e.asyncColumnRequest;var W=x(false),U=W[0],G=W[1];var H=z({});var Q=x({}),Y=Q[0],M=Q[1];var $=x((function(){if(K!=null&&K.cacheKey){var e;var n=c.get("easy_tab_"+K.cacheKey);var t=l(n==null?void 0:n.keys)?n==null||(e=n.keys)==null?void 0:e.filter((function(e){return o(e)})):[];return t.length>0?t:(K==null?void 0:K.initSelectedKeys)||[]}else{return(K==null?void 0:K.initSelectedKeys)||[]}})),ee=$[0],ne=$[1];var te=R((function(){if(e.cacheSwitch===true){return location.pathname}if(typeof e.cacheSwitch==="string"){return e.cacheSwitch}return N}),[N,e.cacheSwitch]);var ae=ie(te).useStore(),oe=ae[0],le=ae[1];var ue=e.pageSize||((f=e.initialPaginationParams)==null?void 0:f.pageSize)||10;var se=e.initRequest===undefined?true:e.initRequest;var de=z(false);var ce=z();var fe=z([]);var pe=x(),me=pe[0],ve=pe[1];var ge=n({list:"list",total:"total",pageNo:"pageNo",pageSize:"pageSize"},e.fieldNames);var he=C.useForm(e.form),ye=he[0];var Ce=u.useCallbackRef((function(n){return new Promise((function(t,i){var r,o,u,d,c,f,p,m,g,h,C,b;var x=function(){try{return t()}catch(e){return i(e)}};var F=function(n){try{j(false);if(e.onRequestErrorHandle){e.onRequestErrorHandle(n)}else{void S.error(n.message)}return x()}catch(e){return i(e)}};try{if(e.breforeRequest){var z=function(){try{return w.call(this)}catch(e){return F(e)}}.bind(this);var R=function(e){try{return t()}catch(e){return F(e)}};try{return Promise.resolve(e.breforeRequest(ye)).then((function(e){try{return z()}catch(e){return R(e)}}),R)}catch(q){R(q)}}function w(){j(true);return Promise.resolve(le.updateFilterCondition(n)).then((function(n){try{r=n;o=s(r.queryCondition||{});u=e.serviceConfig,d=u.requestParamsAdapter,c=u.onRequest,f=u.requestResultAdapter,p=u.dynamicColumsAdapter;m=d?d(o):o;return Promise.resolve(c(m)).then((function(n){try{g=n||{};ce.current=g;e.onDataSourceChange==null?void 0:e.onDataSourceChange(g);h=g;if(f){h=f(g)}if(p){C=p(g,fe.current);ve(C)}b=a(h,ge.list);v(l(b)?b:[]);y(a(h,ge.total));j(false);return x()}catch(e){return F(e)}}),F)}catch(e){return F(e)}}),F)}return w.call(this)}catch(P){F(P)}}))}));T.useEffectCustom((function(){var t=Ee();if(se!==false||!oe.isInit){if(t){var i;void Ce(n((i={},i[ge.pageNo]=1,i[ge.pageSize]=ue,i),e.initialValues,oe.queryCondition))}else{void Ce(e.initialValues)}}else{void le.updateFilterCondition(e.initialValues)}void le.updateInitStatus()}),[]);w((function(){if(L!=null&&L.length){var e=function e(){var i;var r=L[t];H.current=n({},H.current,(i={},i[r.dataIndex]={loading:true},i));M(H.current);r.onRequest().then((function(e){var t;H.current=n({},H.current,(t={},t[r.dataIndex]={loading:false,respData:e},t));M(H.current)})).catch((function(e){var t;console.error(e==null?void 0:e.message);H.current=n({},H.current,(t={},t[r.dataIndex]={loading:false},t));M(H.current)}))};for(var t=0;t<L.length;t++){e()}}}),[L]);var Se=u.useCallbackRef((function(e){return new Promise((function(n,t){return Promise.resolve(le.resetFilterCondition()).then((function(i){try{ye.resetFields();if(e){void le.updateFilterCondition(e);ye.setFieldsValue(e)}return n()}catch(e){return t(e)}}),t)}))}));var be=u.useCallbackRef((function(e){return new Promise((function(n,t){return Promise.resolve(le.updateFilterCondition(e)).then((function(i){try{ye.setFieldsValue(e);return n()}catch(e){return t(e)}}),t)}))}));var xe=function e(n,t){if(Ee()){var i;return i={},i[ge.pageNo]=n,i[ge.pageSize]=t||ue,i}else{var r;return r={},r[ge.pageNo]=undefined,r[ge.pageSize]=undefined,r}};var Fe=u.useCallbackRef((function(t){return new Promise((function(i,r){var a;a=n({},xe(1,oe.queryCondition[ge.pageSize]),e.initialValues,t);return Promise.resolve(le.resetFilterCondition(a)).then((function(e){try{ye.resetFields();if(t){ye.setFieldsValue(t)}void Ce(a);return i()}catch(e){return r(e)}}),r)}))}));var je=u.useCallbackRef((function(){return n({},oe.queryCondition,ye.getFieldsValue())}));var ze=u.useCallbackRef((function(){G(true)}));var Re=u.useCallbackRef((function(){G(false)}));var we=function n(){return{onRequest:Ce,clearQueryCondition:Se,updateQueryCondition:be,getRequestParams:je,onResetRequest:Fe,form:ye,dataSource:ce.current,getDataSource:function e(){return ce.current},onFilterDataSource:function e(n){v(n)},onClearDataSource:function e(){y(0);v([])},onUpdateDataSource:function n(t){v(t);ce.current=t;e.onDataSourceChange==null?void 0:e.onDataSourceChange(t)},columnFoldTriggerRender:function n(t){var i;if(((i=e.columnFoldConfig)==null?void 0:i.triggerType)==="drawer"){return P(t,{onClick:ze})}return B(Z,{dataList:De,onChange:Le,cacheKey:K==null?void 0:K.cacheKey,initSelectedRowKeys:ee,children:t})},onChangeTableColumns:function e(n){ve(n)},getTableColumns:function e(){return me?me:fe.current},loading:F}};q(d,(function(){return we()}));var qe=function e(n){de.current=n};var Pe=function e(n){fe.current=n};var Ne=function t(){var i=ye.getFieldsValue();if(e.onFormFinish){e.onFormFinish(n({},i,xe(1,oe.queryCondition[ge.pageSize])))}else{void Ce(n({},i,xe(1,oe.queryCondition[ge.pageSize])))}};var Ke=r(e.isFull)?true:e.isFull;var ke=i("fba-easy-table",{"fba-easy-table-full":Ke,"fba-easy-table-filter-fixed":e.filterFixed,"fba-easy-table-pagination-fixed":e.paginationFixed},e.className);var Te=R((function(){return n({showSizeChanger:true,current:oe.queryCondition[ge.pageNo]||1,pageSize:oe.queryCondition[ge.pageSize]||ue,total:h,showTotal:function e(n){return"共 "+n+" 条记录"}},e.pagination)}),[ge.pageNo,ge.pageSize,ue,e.pagination,oe.queryCondition,h]);var Ie=me?me:fe.current;var _e=R((function(){var e=Ie.map((function(e){var i=e.tooltip,r=e.tipsWrapperProps,a=e.title,o=e.hidden,l=e.isFold,u=t(e,re);if(o)return null;if(l&&!ee.includes(e.dataIndex))return null;if(typeof a==="string"&&r){if(typeof r==="string"){return n({},u,{title:B(A,{tipType:"popover",popoverProps:{content:r},children:a})})}return n({},u,{title:B(A,n({},r,{children:a}))})}if(typeof a==="string"&&!!i){return n({},u,{title:B(E,{tooltip:i,title:a})})}return e})).filter(Boolean);return[].concat(e)}),[Ie,ee]);var De=Ie.filter((function(e){return!e.hidden&&e.isFold&&e.dataIndex}));var Le=function e(n){ne(n);K==null||K.onChange==null?void 0:K.onChange(n)};_e=T.useMemoCustom((function(){if(K!=null&&K.hidden)return _e;var e=_e[_e.length-1];if(De.length>0&&_e.length>0){var n=_e.find((function(e){return e["_isFoldColumn"]}));if(n&&e.dataIndex!==n.dataIndex){n.title=n["_isFoldTitle"];n["_isFoldColumn"]=false}if(!e["_isFoldColumn"]){e["_isFoldTitle"]=e["_isFoldTitle"]||e.title;e["_isFoldColumn"]=true;var t=K==null?void 0:K.triggerType;e.title=O(I,{direction:"horizontal",fullIndex:0,style:{alignItems:"center"},children:[B("span",{children:e.title}),B("div",{style:{padding:"0 5px 0 20px",display:"flex"},children:t==="drawer"?B(_,{onClick:ze,text:K==null?void 0:K.text,size:"small",icon:(K==null?void 0:K.icon)||B(V,{svgPath:"ionic/list-circle",color:"#868686"}),hoverTips:(K==null?void 0:K.hoverTipText)||"字段列表",style:{padding:0,margin:0}}):B(Z,{dataList:De,onChange:Le,cacheKey:K==null?void 0:K.cacheKey,initSelectedRowKeys:ee,children:B(_,{text:K==null?void 0:K.text,style:{padding:0,margin:0},size:"small",icon:(K==null?void 0:K.icon)||B(V,{svgPath:"ionic/list-circle",color:"#868686"})})})})]})}}return _e}),[_e,De,K]);_e=R((function(){if(!Object.keys(Y))return _e;return _e.map((function(e){var n=e.dataIndex;var t=Y[n];if(n&&t){if(t.loading){e.render=function(e){return B(k,{loading:true,type:"text",loadingPosition:"center",removeGap:true,children:e})}}else if(e.asyncRender){e.render=function(n,i,r){return e.asyncRender==null?void 0:e.asyncRender(n,i,r,t.respData)}}}return e}))}),[_e,Y]);var Ve=u.useCallbackRef((function(n,t){var i,r;void Ce((i={},i[ge.pageSize]=t,i[ge.pageNo]=n,i));(r=e.pagination)==null||r.onChange==null?void 0:r.onChange(n,t)}));var Ee=function n(){return e.paginationFixed||de.current};u.useUpdateEffect((function(){if(e.paginationFixed){var n;void Ce((n={},n[ge.pageSize]=oe.queryCondition[ge.pageSize]||ue,n[ge.pageNo]=1,n))}else{var t;void Ce((t={},t[ge.pageSize]=undefined,t[ge.pageNo]=undefined,t))}}),[e.paginationFixed]);var Ae=i("fba-easy-table-wrapper",{"fba-easy-table-wrapper-inline":e.isInline},e.className);var Be=n({overflowY:e.filterFixed||e.paginationFixed?"hidden":"auto"},e.style);var Oe=typeof e.children==="function"?e.children(ce.current):e.children;return O(J.Provider,{value:{onSetBaseColumns:Pe,getEasyTableRef:we,modelKey:te,onRequest:Ce,tableDataSource:m,tableTotal:h,loading:F,fieldNames:ge,pageSize:ue,onSetPaginationStatus:qe,getPaginationStatus:Ee,onFormFinish:Ne,form:ye,paginationFixed:e.paginationFixed||false,foldKeys:e.foldKeys||[],columns:_e,initialValues:e.initialValues},children:[e.paginationFixed?O("div",{className:Ae,style:Be,children:[B("div",{className:ke,children:Oe}),h>0&&B("div",{className:"fba-easy-table-pagination",children:B(D,n({size:"small"},Te,{onChange:Ve}))})]}):B("div",{className:Ae,style:e.style,children:Oe}),B(X,{dataList:De,onClose:Re,open:U,onChange:Le,cacheKey:K==null?void 0:K.cacheKey,initSelectedRowKeys:ee})]})}));var oe=function e(t){var a=T.useResponsivePoint()||"md";var o=N(J);var l=t.queryButtonProps,s=t.resetButtonProps,d=t.filterOperate,c=t.formClassName,f=c===void 0?"":c,p=t.defaultResetButtonTriggerRequest,m=t.filterWrapperStyle,v=t.filterWrapperClassName,g=t.rightOperateAreaAppendType,h=t.easyFormProps;var y=o.modelKey,C=o.foldKeys,S=o.fieldNames,b=o.onRequest,F=o.pageSize,j=o.getPaginationStatus,z=o.initialValues,w=o.form,q=o.onFormFinish;var P=typeof t.children==="function"?t.children(w):t.children;var I=g||"cover";var _=R((function(){if(H(P)){return K.toArray(P.props.children)}else{return K.toArray(P)}}),[P]);var D=x(false),L=D[0],V=D[1];var E=ie(y).useStore(),A=E[0],W=E[1];var $=u.useCallbackRef((function(){return new Promise((function(e,t){var i;return Promise.resolve(W.resetFilterCondition()).then(function(a){try{w.resetFields();if(r(p)||p){return Promise.resolve(w.validateFields()).then(function(e){try{if(j()){b(n((i={},i[S.pageNo]=1,i[S.pageSize]=F,i),z))}else{b(z)}return o.call(this)}catch(e){return t(e)}}.bind(this),t)}function o(){return e()}return o.call(this)}catch(l){return t(l)}}.bind(this),t)}))}));var X=R((function(){var e=[!(l!=null&&l.hidden)?B(k,n({type:"primary",htmlType:"submit"},l,{children:(l==null?void 0:l.text)||"查询"}),"1"):null,!(s!=null&&s.hidden)?B(k,n({onClick:$},s,{children:(s==null?void 0:s.text)||"重置"}),"2"):null].filter(Boolean);var t=d==null?void 0:d(w);var i=t==null?void 0:t.rightList;var r=(t==null?void 0:t.leftList)||[];var a=e;if(i){if(I==="afterAppend"){a=[].concat(e,i)}else if(I==="beforeAppend"){a=[].concat(i,e)}else{a=i}}if(C.length>0){var o=B(k,{type:"link",style:{padding:"0"},onClick:function e(){V(!L)},children:L?O("span",{children:["收起",B(G,{style:{marginLeft:3,fontSize:12}})]}):O("span",{children:["展开",B(U,{style:{marginLeft:3,fontSize:12}})]})},"fold-trigger");if(a.length>0||r.length===0){a.push(o)}else if((r==null?void 0:r.length)>0){r.push(o)}}return _.map((function(e,n){if(!L&&C.find((function(n){return".$"+n===e.key})))return null;if(e.props["hidden"])return null;if(e.type["domTypeName"]==="FormCol")return e;return B(M.Col,{children:e},n)})).filter(Boolean).concat(B(M.OperateCol,n({},t,{leftList:r,rightList:a}),999))}),[_,d,C,w,$,L,l,s,I]);var Z=a==="xs"?"left":(h==null?void 0:h.labelAlign)||"right";return B(Q,{className:i("easy-table-filter",v),style:m,children:B(Y,n({form:w,autoComplete:"off",onFinish:q,initialValues:n({},z,A.queryCondition),className:f,style:t.formStyle,isPure:true,labelWidth:"80",formItemGap:"15"},h,{labelAlign:Z,children:t.isPure?P:B(M.Row,{gutter:[15,0],gridSize:t.formGridSize,children:X})}))})};var le=function e(){var n=N(J);return n.getEasyTableRef()};var ue=function e(){var n=N(J);return{current:n.getEasyTableRef()}};var se=["children","rowKey","pagination","isSync"];var de=function e(r){var a=N(J);var o=r.children,l=r.rowKey,s=r.pagination,d=r.isSync,c=t(r,se);var v=a.modelKey,h=a.fieldNames,y=a.onRequest,C=a.tableDataSource,S=a.pageSize,b=a.tableTotal,x=a.loading,j=a.paginationFixed,z=a.onSetPaginationStatus;var w=ie(v).useStore(),q=w[0];T.useEffectCustom((function(){a.onSetBaseColumns(r.columns||[])}),[]);T.useEffectCustom((function(){z(s!==false)}),[s]);u.useUpdateEffect((function(){if(!j){if(s!==false){var e;y((e={},e[h.pageSize]=q.queryCondition[h.pageSize]||S,e[h.pageNo]=1,e))}else{var n;y((n={},n[h.pageSize]=undefined,n[h.pageNo]=undefined,n))}}}),[s]);var P=R((function(){if(j||s===false)return false;return n({showSizeChanger:true,current:q.queryCondition[h.pageNo]||1,pageSize:q.queryCondition[h.pageSize]||S,total:b,showTotal:function e(n){return"共 "+n+" 条记录"}},r.pagination,{selectComponentClass:L})}),[h.pageNo,h.pageSize,S,s,j,r.pagination,q.queryCondition,b]);var K=function e(n,t,i,a){if(a.action==="paginate"&&P){var o;y((o={},o[h.pageSize]=n.pageSize,o[h.pageNo]=n.current,o))}else{r.onChange==null?void 0:r.onChange(n,t,i,a)}};var k=R((function(){if(!C)return undefined;if(C.length===0){return[]}if(typeof l==="string"&&f(C[0][l])){return C.map((function(e){e[l]=p();return e}))}return C}),[C,l]);var I=function e(){if(d&&!k){return O(F,{children:[o,B(g,{size:"small",scroll:{x:"max-content"},bordered:true,rowKey:l,columns:a.columns,loading:x},"1")]})}if(m()){return O(F,{children:[o,B(g,n({size:"small",scroll:{x:"max-content"},bordered:true},c,{columns:a.columns,pagination:P,rowKey:l,onChange:K,loading:x,dataSource:k}),"2")]})}return O(F,{children:[o,B($,{children:B(g,n({size:"small",scroll:{x:"max-content"},bordered:true},c,{columns:a.columns,pagination:P,rowKey:l,onChange:K,loading:x,dataSource:k}),"3")})]})};return B(Q,{className:i("easy-table-table",{"ett-empty-show-small":r.emptyShowSize==="small"},r.tableWrapperClassName),style:r.tableWrapperStyle,children:I()})};var ce=e.attachPropertiesToComponent(ae,{Filter:oe,Table:de,useEasyTablRef:ue,useEasyTable:le});export{ce as EasyTable};
22
+ import{fbaUtils as e}from"../fba-utils/index.js";import{_ as n,a as t}from"../_rollupPluginBabelHelpers-a0769acd.js";import{classNames as i}from"@dimjs/utils/cjs/class-names";import{isUndefined as r}from"@dimjs/lang/cjs/is-undefined";import{get as a}from"@dimjs/utils/cjs/get";import{isString as o}from"@dimjs/lang/cjs/is-string";import{isArray as l}from"@dimjs/lang/cjs/is-array";import{hooks as u}from"@wove/react/cjs/hooks";import{cloneState as s}from"@dimjs/model";import{noop as d,localStorageCache as c,isUndefinedOrNull as f,getUuid as p,isMacEnv as m}from"@flatbiz/utils";import{Drawer as v,Table as g,Checkbox as h,Popover as y,Form as C,message as S}from"antd";import{createContext as b,useState as x,Fragment as F,forwardRef as j,useRef as z,useMemo as R,useEffect as w,useImperativeHandle as q,cloneElement as P,useContext as N,Children as K}from"react";import{ButtonWrapper as k}from"../button-wrapper/index.js";import{fbaHooks as T}from"../fba-hooks/index.js";import{FlexLayout as I}from"../flex-layout/index.js";import{IconWrapper as _}from"../icon-wrapper/index.js";import{P as D,S as L}from"../index-6677fbfc.js";import{SvgHttpView as V}from"../svg-http-view/index.js";import{TableTitleTooltip as E}from"../table-title-tooltip/index.js";import{TipsWrapper as A}from"../tips-wrapper/index.js";import{jsx as B,jsxs as O}from"react/jsx-runtime";import{Model as W}from"@dimjs/model-react";import U from"@ant-design/icons/es/icons/DownOutlined";import G from"@ant-design/icons/es/icons/UpOutlined";import{isFragment as H}from"react-is";import{BlockLayout as Q}from"../block-layout/index.js";import{EasyForm as Y}from"../easy-form/index.js";import{FormGrid as M}from"../form-grid/index.js";import{TableScrollbar as $}from"../table-scrollbar/index.js";import"@ant-design/icons/es/icons/LoadingOutlined";import"@dimjs/lang/cjs/is-promise";import"../index-7f4ad045.js";import"antd/es/locale/en_US";import"antd/es/locale/zh_CN";import"dayjs";import"dayjs/locale/en";import"dayjs/locale/zh-cn";import"dayjs/plugin/advancedFormat";import"dayjs/plugin/customParseFormat";import"dayjs/plugin/localeData";import"dayjs/plugin/utc";import"dayjs/plugin/weekday";import"dayjs/plugin/weekOfYear";import"dayjs/plugin/weekYear";import"@dimjs/utils/cjs/extend";import"../use-responsive-point-21b8c601.js";import"@ant-design/icons/es/icons/QuestionCircleOutlined";import"../box-grid/index.js";import"@dimjs/lang/cjs/is-number";import"ahooks";import"../form-wrapper/index.js";import"../pre-defined-class-name/index.js";var J=b({onRequest:d,tableList:[],getEasyTableRef:function e(){}});var X=function e(n){var t=x(n.initSelectedRowKeys||[]),i=t[0],r=t[1];var a={type:"checkbox",selectedRowKeys:i,onChange:function e(t){r(t);n.onChange(t);if(n.cacheKey){c.set("easy_tab_"+n.cacheKey,{keys:t})}}};var o=[{title:"字段名称",dataIndex:"title",render:function e(n,t){return t["_isFoldTitle"]||n}},{title:"字段Key",dataIndex:"dataIndex"}];return B(F,{children:B(v,{title:"选择字段",open:n.open,onClose:n.onClose,width:"35%",styles:{body:{padding:15}},children:B(g,{bordered:true,size:"small",columns:o,rowSelection:a,rowKey:"dataIndex",pagination:false,scroll:{x:"max-content"},dataSource:n.dataList})})})};var Z=function e(n){var t=x(n.initSelectedRowKeys||[]),i=t[0],r=t[1];var a=function e(t){r(t);n.onChange(t);if(n.cacheKey){c.set("easy_tab_"+n.cacheKey,{keys:t})}};var o=B(F,{children:B(h.Group,{defaultValue:i,onChange:a,value:i,style:{display:"flex",flexDirection:"column"},children:n.dataList.map((function(e){var n=e["_isFoldTitle"]||e.title;return B(h,{value:e.dataIndex,style:{padding:"0 0 5px 0"},children:n},e.dataIndex)}))})});var l=function e(t){if(t.target.checked){a(n.dataList.map((function(e){return e.dataIndex})))}else{a([])}};return B(y,{content:o,title:B(h,{checked:i.length===n.dataList.length,onChange:l,children:"全选(字段列表)"}),placement:"bottomRight",overlayClassName:"fold-operate-popiver",children:n.children})};var ee={queryCondition:{},isInit:true};var ne={actions:{updateFilterCondition:function e(t){return function(e){e.queryCondition=n({},e.queryCondition,t)}},resetFilterCondition:function e(t){return function(e){e.queryCondition=n({},ee.queryCondition,t)}},updateInitStatus:function e(){return function(e){e.isInit=false}}},state:ee};var te={};var ie=function e(n){if(!te[n]){te[n]=W(ne)}return te[n]};var re=["tooltip","tipsWrapperProps","title","hidden","isFold"];var ae=j((function(e,d){var f;var p=x(),m=p[0],v=p[1];var g=x(0),h=g[0],y=g[1];var b=x(false),F=b[0],j=b[1];var N=u.useId(undefined,"easy-table-key");var K=e.columnFoldConfig;var L=e.asyncColumnRequest;var W=x(false),U=W[0],G=W[1];var H=z({});var Q=x({}),Y=Q[0],M=Q[1];var $=x((function(){if(K!=null&&K.cacheKey){var e;var n=c.get("easy_tab_"+K.cacheKey);var t=l(n==null?void 0:n.keys)?n==null||(e=n.keys)==null?void 0:e.filter((function(e){return o(e)})):[];return t.length>0?t:(K==null?void 0:K.initSelectedKeys)||[]}else{return(K==null?void 0:K.initSelectedKeys)||[]}})),ee=$[0],ne=$[1];var te=R((function(){if(e.cacheSwitch===true){return location.pathname}if(typeof e.cacheSwitch==="string"){return e.cacheSwitch}return N}),[N,e.cacheSwitch]);var ae=ie(te).useStore(),oe=ae[0],le=ae[1];var ue=e.pageSize||((f=e.initialPaginationParams)==null?void 0:f.pageSize)||10;var se=e.initRequest===undefined?true:e.initRequest;var de=z(false);var ce=z();var fe=z([]);var pe=x(),me=pe[0],ve=pe[1];var ge=n({list:"list",total:"total",pageNo:"pageNo",pageSize:"pageSize"},e.fieldNames);var he=C.useForm(e.form),ye=he[0];var Ce=u.useCallbackRef((function(n){return new Promise((function(t,i){var r,o,u,d,c,f,p,m,g,h,C,b;var x=function(){try{return t()}catch(e){return i(e)}};var F=function(n){try{j(false);if(e.onRequestErrorHandle){e.onRequestErrorHandle(n)}else{void S.error(n.message)}return x()}catch(e){return i(e)}};try{if(e.breforeRequest){var z=function(){try{return w.call(this)}catch(e){return F(e)}}.bind(this);var R=function(e){try{return t()}catch(e){return F(e)}};try{return Promise.resolve(e.breforeRequest(ye)).then((function(e){try{return z()}catch(e){return R(e)}}),R)}catch(q){R(q)}}function w(){j(true);return Promise.resolve(le.updateFilterCondition(n)).then((function(n){try{r=n;o=s(r.queryCondition||{});u=e.serviceConfig,d=u.requestParamsAdapter,c=u.onRequest,f=u.requestResultAdapter,p=u.dynamicColumsAdapter;m=d?d(o):o;return Promise.resolve(c(m)).then((function(n){try{g=n||{};ce.current=g;e.onDataSourceChange==null?void 0:e.onDataSourceChange(g);h=g;if(f){h=f(g)}if(p){C=p(g,fe.current);ve(C)}b=a(h,ge.list);v(l(b)?b:[]);y(a(h,ge.total));j(false);return x()}catch(e){return F(e)}}),F)}catch(e){return F(e)}}),F)}return w.call(this)}catch(P){F(P)}}))}));T.useEffectCustom((function(){var t=Ee();if(se!==false||!oe.isInit){if(t){var i;void Ce(n((i={},i[ge.pageNo]=1,i[ge.pageSize]=ue,i),e.initialValues,oe.queryCondition))}else{void Ce(e.initialValues)}}else{void le.updateFilterCondition(e.initialValues)}void le.updateInitStatus()}),[]);w((function(){if(L!=null&&L.length){var e=function e(){var i;var r=L[t];H.current=n({},H.current,(i={},i[r.dataIndex]={loading:true},i));M(H.current);r.onRequest().then((function(e){var t;H.current=n({},H.current,(t={},t[r.dataIndex]={loading:false,respData:e},t));M(H.current)})).catch((function(e){var t;console.error(e==null?void 0:e.message);H.current=n({},H.current,(t={},t[r.dataIndex]={loading:false},t));M(H.current)}))};for(var t=0;t<L.length;t++){e()}}}),[L]);var Se=u.useCallbackRef((function(e){return new Promise((function(n,t){return Promise.resolve(le.resetFilterCondition()).then((function(i){try{ye.resetFields();if(e){void le.updateFilterCondition(e);ye.setFieldsValue(e)}return n()}catch(e){return t(e)}}),t)}))}));var be=u.useCallbackRef((function(e){return new Promise((function(n,t){return Promise.resolve(le.updateFilterCondition(e)).then((function(i){try{ye.setFieldsValue(e);return n()}catch(e){return t(e)}}),t)}))}));var xe=function e(n,t){if(Ee()){var i;return i={},i[ge.pageNo]=n,i[ge.pageSize]=t||ue,i}else{var r;return r={},r[ge.pageNo]=undefined,r[ge.pageSize]=undefined,r}};var Fe=u.useCallbackRef((function(t){return new Promise((function(i,r){var a;a=n({},xe(1,oe.queryCondition[ge.pageSize]),e.initialValues,t);return Promise.resolve(le.resetFilterCondition(a)).then((function(e){try{ye.resetFields();if(t){ye.setFieldsValue(t)}void Ce(a);return i()}catch(e){return r(e)}}),r)}))}));var je=u.useCallbackRef((function(){return n({},oe.queryCondition,ye.getFieldsValue())}));var ze=u.useCallbackRef((function(){G(true)}));var Re=u.useCallbackRef((function(){G(false)}));var we=function n(){return{onRequest:Ce,clearQueryCondition:Se,updateQueryCondition:be,getRequestParams:je,onResetRequest:Fe,form:ye,dataSource:ce.current,getDataSource:function e(){return ce.current},onFilterDataSource:function e(n){v(n)},onClearDataSource:function e(){y(0);v([])},onUpdateDataSource:function n(t){v(t);ce.current=t;e.onDataSourceChange==null?void 0:e.onDataSourceChange(t)},columnFoldTriggerRender:function n(t){var i;if(((i=e.columnFoldConfig)==null?void 0:i.triggerType)==="drawer"){return P(t,{onClick:ze})}return B(Z,{dataList:De,onChange:Le,cacheKey:K==null?void 0:K.cacheKey,initSelectedRowKeys:ee,children:t})},onChangeTableColumns:function e(n){ve(n)},getTableColumns:function e(){return me?me:fe.current},loading:F}};q(d,(function(){return we()}));var qe=function e(n){de.current=n};var Pe=function e(n){fe.current=n};var Ne=function t(){var i=ye.getFieldsValue();if(e.onFormFinish){e.onFormFinish(n({},i,xe(1,oe.queryCondition[ge.pageSize])))}else{void Ce(n({},i,xe(1,oe.queryCondition[ge.pageSize])))}};var Ke=r(e.isFull)?true:e.isFull;var ke=i("fba-easy-table",{"fba-easy-table-full":Ke,"fba-easy-table-filter-fixed":e.filterFixed,"fba-easy-table-pagination-fixed":e.paginationFixed},e.className);var Te=R((function(){return n({showSizeChanger:true,current:oe.queryCondition[ge.pageNo]||1,pageSize:oe.queryCondition[ge.pageSize]||ue,total:h,showTotal:function e(n){return"共 "+n+" 条记录"}},e.pagination)}),[ge.pageNo,ge.pageSize,ue,e.pagination,oe.queryCondition,h]);var Ie=me?me:fe.current;var _e=R((function(){var e=Ie.map((function(e){var i=e.tooltip,r=e.tipsWrapperProps,a=e.title,o=e.hidden,l=e.isFold,u=t(e,re);if(o)return null;if(l&&!ee.includes(e.dataIndex))return null;if(typeof a==="string"&&r){if(typeof r==="string"){return n({},u,{title:B(A,{tipType:"popover",popoverProps:{content:r},children:a})})}return n({},u,{title:B(A,n({},r,{children:a}))})}if(typeof a==="string"&&!!i){return n({},u,{title:B(E,{tooltip:i,title:a})})}return e})).filter(Boolean);return[].concat(e)}),[Ie,ee]);var De=Ie.filter((function(e){return!e.hidden&&e.isFold&&e.dataIndex}));var Le=function e(n){ne(n);K==null||K.onChange==null?void 0:K.onChange(n)};_e=T.useMemoCustom((function(){if(K!=null&&K.hidden)return _e;var e=_e[_e.length-1];if(De.length>0&&_e.length>0){var n=_e.find((function(e){return e["_isFoldColumn"]}));if(n&&e.dataIndex!==n.dataIndex){n.title=n["_isFoldTitle"];n["_isFoldColumn"]=false}if(!e["_isFoldColumn"]){e["_isFoldTitle"]=e["_isFoldTitle"]||e.title;e["_isFoldColumn"]=true;var t=K==null?void 0:K.triggerType;e.title=O(I,{direction:"horizontal",fullIndex:0,style:{alignItems:"center"},children:[B("span",{children:e.title}),B("div",{style:{padding:"0 5px 0 20px",display:"flex"},children:t==="drawer"?B(_,{onClick:ze,text:K==null?void 0:K.text,size:"small",icon:(K==null?void 0:K.icon)||B(V,{svgPath:"ionic/list-circle",color:"#868686"}),hoverTips:(K==null?void 0:K.hoverTipText)||"字段列表",style:{padding:0,margin:0}}):B(Z,{dataList:De,onChange:Le,cacheKey:K==null?void 0:K.cacheKey,initSelectedRowKeys:ee,children:B(_,{text:K==null?void 0:K.text,style:{padding:0,margin:0},size:"small",icon:(K==null?void 0:K.icon)||B(V,{svgPath:"ionic/list-circle",color:"#868686"})})})})]})}}return _e}),[_e,De,K]);_e=R((function(){if(!Object.keys(Y))return _e;return _e.map((function(e){var n=e.dataIndex;var t=Y[n];if(n&&t){if(t.loading){e.render=function(e){return B(k,{loading:true,type:"text",loadingPosition:"center",removeGap:true,children:e})}}else if(e.asyncRender){e.render=function(n,i,r){return e.asyncRender==null?void 0:e.asyncRender(n,i,r,t.respData)}}}return e}))}),[_e,Y]);var Ve=u.useCallbackRef((function(n,t){var i,r;void Ce((i={},i[ge.pageSize]=t,i[ge.pageNo]=n,i));(r=e.pagination)==null||r.onChange==null?void 0:r.onChange(n,t)}));var Ee=function n(){return e.paginationFixed||de.current};u.useUpdateEffect((function(){if(e.paginationFixed){var n;void Ce((n={},n[ge.pageSize]=oe.queryCondition[ge.pageSize]||ue,n[ge.pageNo]=1,n))}else{var t;void Ce((t={},t[ge.pageSize]=undefined,t[ge.pageNo]=undefined,t))}}),[e.paginationFixed]);var Ae=i("fba-easy-table-wrapper",{"fba-easy-table-wrapper-inline":e.isInline},e.className);var Be=n({overflowY:e.filterFixed||e.paginationFixed?"hidden":"auto"},e.style);var Oe=typeof e.children==="function"?e.children(ce.current):e.children;return O(J.Provider,{value:{onSetBaseColumns:Pe,getEasyTableRef:we,modelKey:te,onRequest:Ce,tableDataSource:m,tableTotal:h,loading:F,fieldNames:ge,pageSize:ue,onSetPaginationStatus:qe,getPaginationStatus:Ee,onFormFinish:Ne,form:ye,paginationFixed:e.paginationFixed||false,foldKeys:e.foldKeys||[],columns:_e,initialValues:e.initialValues},children:[e.paginationFixed?O("div",{className:Ae,style:Be,children:[B("div",{className:ke,children:Oe}),h>0&&B("div",{className:"fba-easy-table-pagination",children:B(D,n({size:"small"},Te,{onChange:Ve}))})]}):B("div",{className:Ae,style:e.style,children:Oe}),B(X,{dataList:De,onClose:Re,open:U,onChange:Le,cacheKey:K==null?void 0:K.cacheKey,initSelectedRowKeys:ee})]})}));var oe=function e(t){var a=T.useResponsivePoint()||"md";var o=N(J);var l=t.queryButtonProps,s=t.resetButtonProps,d=t.filterOperate,c=t.formClassName,f=c===void 0?"":c,p=t.defaultResetButtonTriggerRequest,m=t.filterWrapperStyle,v=t.filterWrapperClassName,g=t.rightOperateAreaAppendType,h=t.easyFormProps;var y=o.modelKey,C=o.foldKeys,S=o.fieldNames,b=o.onRequest,F=o.pageSize,j=o.getPaginationStatus,z=o.initialValues,w=o.form,q=o.onFormFinish;var P=typeof t.children==="function"?t.children(w):t.children;var I=g||"cover";var _=R((function(){if(H(P)){return K.toArray(P.props.children)}else{return K.toArray(P)}}),[P]);var D=x(false),L=D[0],V=D[1];var E=ie(y).useStore(),A=E[0],W=E[1];var $=u.useCallbackRef((function(){return new Promise((function(e,t){var i;return Promise.resolve(W.resetFilterCondition()).then(function(a){try{w.resetFields();if(r(p)||p){return Promise.resolve(w.validateFields()).then(function(e){try{if(j()){b(n((i={},i[S.pageNo]=1,i[S.pageSize]=F,i),z))}else{b(z)}return o.call(this)}catch(e){return t(e)}}.bind(this),t)}function o(){return e()}return o.call(this)}catch(l){return t(l)}}.bind(this),t)}))}));var X=R((function(){var e=[!(l!=null&&l.hidden)?B(k,n({type:"primary",htmlType:"submit"},l,{children:(l==null?void 0:l.text)||"查询"}),"1"):null,!(s!=null&&s.hidden)?B(k,n({onClick:$},s,{children:(s==null?void 0:s.text)||"重置"}),"2"):null].filter(Boolean);var t=d==null?void 0:d(w);var i=t==null?void 0:t.rightList;var r=(t==null?void 0:t.leftList)||[];var a=e;if(i){if(I==="afterAppend"){a=[].concat(e,i)}else if(I==="beforeAppend"){a=[].concat(i,e)}else{a=i}}if(C.length>0){var o=B(k,{type:"link",style:{padding:"0"},onClick:function e(){V(!L)},children:L?O("span",{children:["收起",B(G,{style:{marginLeft:3,fontSize:12}})]}):O("span",{children:["展开",B(U,{style:{marginLeft:3,fontSize:12}})]})},"fold-trigger");if(a.length>0||r.length===0){a.push(o)}else if((r==null?void 0:r.length)>0){r.push(o)}}return _.map((function(e,n){if(!L&&C.find((function(n){return".$"+n===e.key})))return null;if(e.props["hidden"])return null;if(e.type["domTypeName"]==="FormCol")return e;return B(M.Col,{children:e},n)})).filter(Boolean).concat(B(M.OperateCol,n({},t,{leftList:r,rightList:a}),999))}),[_,d,C,w,$,L,l,s,I]);var Z=a==="xs"?"left":(h==null?void 0:h.labelAlign)||"right";return B(Q,{className:i("easy-table-filter",v),style:m,children:B(Y,n({form:w,autoComplete:"off",onFinish:q,initialValues:n({},z,A.queryCondition),className:f,style:t.formStyle,isPure:true,labelWidth:"80",formItemGap:"15"},h,{labelAlign:Z,children:t.isPure?P:B(M.Row,{gutter:[15,0],gridSize:t.formGridSize,children:X})}))})};var le=function e(){var n=N(J);return n.getEasyTableRef()};var ue=function e(){var n=N(J);return{current:n.getEasyTableRef()}};var se=["children","rowKey","pagination","isSync"];var de=function e(r){var a=N(J);var o=r.children,l=r.rowKey,s=r.pagination,d=r.isSync,c=t(r,se);var v=a.modelKey,h=a.fieldNames,y=a.onRequest,C=a.tableDataSource,S=a.pageSize,b=a.tableTotal,x=a.loading,j=a.paginationFixed,z=a.onSetPaginationStatus;var w=ie(v).useStore(),q=w[0];T.useEffectCustom((function(){a.onSetBaseColumns(r.columns||[])}),[r.columns]);T.useEffectCustom((function(){z(s!==false)}),[s]);u.useUpdateEffect((function(){if(!j){if(s!==false){var e;y((e={},e[h.pageSize]=q.queryCondition[h.pageSize]||S,e[h.pageNo]=1,e))}else{var n;y((n={},n[h.pageSize]=undefined,n[h.pageNo]=undefined,n))}}}),[s]);var P=R((function(){if(j||s===false)return false;return n({showSizeChanger:true,current:q.queryCondition[h.pageNo]||1,pageSize:q.queryCondition[h.pageSize]||S,total:b,showTotal:function e(n){return"共 "+n+" 条记录"}},r.pagination,{selectComponentClass:L})}),[h.pageNo,h.pageSize,S,s,j,r.pagination,q.queryCondition,b]);var K=function e(n,t,i,a){if(a.action==="paginate"&&P){var o;y((o={},o[h.pageSize]=n.pageSize,o[h.pageNo]=n.current,o))}else{r.onChange==null?void 0:r.onChange(n,t,i,a)}};var k=R((function(){if(!C)return undefined;if(C.length===0){return[]}if(typeof l==="string"&&f(C[0][l])){return C.map((function(e){e[l]=p();return e}))}return C}),[C,l]);var I=function e(){if(d&&!k){return O(F,{children:[o,B(g,{size:"small",scroll:{x:"max-content"},bordered:true,rowKey:l,columns:a.columns,loading:x},"1")]})}if(m()){return O(F,{children:[o,B(g,n({size:"small",scroll:{x:"max-content"},bordered:true},c,{columns:a.columns,pagination:P,rowKey:l,onChange:K,loading:x,dataSource:k}),"2")]})}return O(F,{children:[o,B($,{children:B(g,n({size:"small",scroll:{x:"max-content"},bordered:true},c,{columns:a.columns,pagination:P,rowKey:l,onChange:K,loading:x,dataSource:k}),"3")})]})};return B(Q,{className:i("easy-table-table",{"ett-empty-show-small":r.emptyShowSize==="small"},r.tableWrapperClassName),style:r.tableWrapperStyle,children:I()})};var ce=e.attachPropertiesToComponent(ae,{Filter:oe,Table:de,useEasyTablRef:ue,useEasyTable:le});export{ce as EasyTable};
23
23
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["@flatbiz/antd/src/easy-table/context.ts","@flatbiz/antd/src/easy-table/fold-operate.tsx","@flatbiz/antd/src/easy-table/fold-operate-dropdown.tsx","@flatbiz/antd/src/easy-table/model.ts","@flatbiz/antd/src/easy-table/easy-table.tsx","@flatbiz/antd/src/easy-table/filter.tsx","@flatbiz/antd/src/easy-table/hooks.ts","@flatbiz/antd/src/easy-table/table.tsx","@flatbiz/antd/src/easy-table/index.ts"],"sourcesContent":["import { noop, TPlainObject } from '@flatbiz/utils';\nimport { FormInstance } from 'antd';\nimport { createContext } from 'react';\nimport { EasyTableRefApi, TEasyTableTableColumn } from './type';\n\nexport type EditableFieldContextContextApi = {\n modelKey: string;\n onRequest: (params?: TPlainObject) => void;\n tableDataSource?: TPlainObject[];\n tableTotal: number;\n loading?: boolean;\n fieldNames: TPlainObject;\n pageSize: number;\n initialValues?: TPlainObject;\n onSetPaginationStatus: (status: boolean) => void;\n getPaginationStatus: () => boolean;\n onFormFinish?: (values?: TPlainObject) => void;\n form: FormInstance;\n getEasyTableRef: () => EasyTableRefApi;\n paginationFixed: boolean;\n foldKeys: string[];\n onSetBaseColumns: (baseColumns?: TEasyTableTableColumn<TPlainObject>[]) => void;\n columns: TEasyTableTableColumn<TPlainObject>[];\n};\n\nexport const EasyTableContext = createContext<EditableFieldContextContextApi>({\n onRequest: noop,\n tableList: [],\n getEasyTableRef: () => {\n //\n },\n} as unknown as EditableFieldContextContextApi);\n","import { localStorageCache, TAny, TPlainObject } from '@flatbiz/utils';\nimport { Drawer, Table } from 'antd';\nimport { ColumnsType } from 'antd/es/table';\nimport { TableRowSelection } from 'antd/es/table/interface';\nimport { CSSProperties, Fragment, useState } from 'react';\n\ntype FoldOperateProps = {\n style?: CSSProperties;\n dataList: { dataIndex?: string; title: string }[];\n onChange: (keys: string[]) => void;\n open?: boolean;\n onClose?: () => void;\n cacheKey?: string;\n initSelectedRowKeys?: string[];\n};\n\nexport const FoldOperate = (props: FoldOperateProps) => {\n const [selectedRowKeys, setSelectedRowKeys] = useState<string[]>(props.initSelectedRowKeys || []);\n const rowSelection = {\n type: 'checkbox',\n selectedRowKeys: selectedRowKeys,\n onChange: (selectedRowKeys: string[]) => {\n setSelectedRowKeys(selectedRowKeys);\n props.onChange(selectedRowKeys);\n if (props.cacheKey) {\n localStorageCache.set(`easy_tab_${props.cacheKey}`, { keys: selectedRowKeys });\n }\n },\n } as TableRowSelection<TAny>;\n\n const columns: ColumnsType<TPlainObject> = [\n {\n title: '字段名称',\n dataIndex: 'title',\n render: (value, recrd) => {\n return recrd['_isFoldTitle'] || value;\n },\n },\n { title: '字段Key', dataIndex: 'dataIndex' },\n ];\n\n return (\n <Fragment>\n <Drawer\n title=\"选择字段\"\n open={props.open}\n onClose={props.onClose}\n width={'35%'}\n styles={{\n body: {\n padding: 15,\n },\n }}\n >\n <Table\n bordered\n size=\"small\"\n columns={columns}\n rowSelection={rowSelection}\n rowKey=\"dataIndex\"\n pagination={false}\n scroll={{ x: 'max-content' }}\n dataSource={props.dataList}\n />\n </Drawer>\n </Fragment>\n );\n};\n","import { localStorageCache } from '@flatbiz/utils';\nimport { Checkbox, Popover } from 'antd';\nimport { CSSProperties, Fragment, ReactElement, useState } from 'react';\n\ntype FoldOperateProps = {\n style?: CSSProperties;\n dataList: { dataIndex: string; title: string }[];\n onChange: (keys: string[]) => void;\n cacheKey?: string;\n initSelectedRowKeys?: string[];\n children?: ReactElement;\n};\n\nexport const FoldOperateDropdown = (props: FoldOperateProps) => {\n const [selectedRowKeys, setSelectedRowKeys] = useState<string[]>(props.initSelectedRowKeys || []);\n\n const onChange = (keys) => {\n setSelectedRowKeys(keys);\n props.onChange(keys);\n if (props.cacheKey) {\n localStorageCache.set(`easy_tab_${props.cacheKey}`, { keys: keys });\n }\n };\n\n const content = (\n <Fragment>\n <Checkbox.Group\n defaultValue={selectedRowKeys}\n onChange={onChange}\n value={selectedRowKeys}\n style={{ display: 'flex', flexDirection: 'column' }}\n >\n {props.dataList.map((item) => {\n const label = item['_isFoldTitle'] || item.title;\n return (\n <Checkbox value={item.dataIndex} key={item.dataIndex} style={{ padding: '0 0 5px 0' }}>\n {label}\n </Checkbox>\n );\n })}\n </Checkbox.Group>\n </Fragment>\n );\n\n const onChangeAll = (e) => {\n if (e.target.checked) {\n onChange(props.dataList.map((item) => item.dataIndex));\n } else {\n onChange([]);\n }\n };\n\n return (\n <Popover\n content={content}\n title={\n <Checkbox checked={selectedRowKeys.length === props.dataList.length} onChange={onChangeAll}>\n 全选(字段列表)\n </Checkbox>\n }\n placement=\"bottomRight\"\n overlayClassName=\"fold-operate-popiver\"\n >\n {props.children}\n </Popover>\n );\n};\n","import { API, ModelType } from '@dimjs/model';\nimport { Model } from '@dimjs/model-react';\nimport { TAny, TPlainObject } from '@flatbiz/utils';\n\nexport type ModelState = {\n queryCondition: TPlainObject;\n isInit: boolean;\n};\n\ntype ModelActionParams = {\n updateFilterCondition?: Partial<ModelState['queryCondition']>;\n resetFilterCondition?: TPlainObject;\n updateInitStatus: void;\n};\n\nconst defaultState: ModelState = {\n queryCondition: {},\n isInit: true,\n};\n\nconst _EasyTableModel: ModelType<ModelState, ModelActionParams> = {\n actions: {\n updateFilterCondition: (params) => {\n return (state) => {\n state.queryCondition = {\n ...state.queryCondition,\n ...params,\n };\n };\n },\n resetFilterCondition: (params) => {\n return (state) => {\n state.queryCondition = {\n ...defaultState.queryCondition,\n ...params,\n };\n };\n },\n updateInitStatus: () => {\n return (state) => {\n state.isInit = false;\n };\n },\n },\n state: defaultState,\n};\n\nconst easyTableModels: Record<string, API<ModelType<ModelState, ModelActionParams, TAny>>> = {};\n\n/**\n * ```\n * 使用方式\n * const [state, actions] = selectorWrapperModel('key值').useStore();\n * ```\n */\nexport const easyTableModel = (key: string) => {\n if (!easyTableModels[key]) {\n easyTableModels[key] = Model(_EasyTableModel);\n }\n return easyTableModels[key];\n};\n","import { isArray, isString, isUndefined } from '@dimjs/lang';\nimport { cloneState } from '@dimjs/model';\nimport { classNames, get } from '@dimjs/utils';\nimport { localStorageCache, TAny, TPlainObject } from '@flatbiz/utils';\nimport { hooks } from '@wove/react';\nimport { Form, message } from 'antd';\nimport {\n cloneElement,\n CSSProperties,\n forwardRef,\n useEffect,\n useImperativeHandle,\n useMemo,\n useRef,\n useState,\n} from 'react';\nimport { ButtonWrapper } from '../button-wrapper';\nimport { fbaHooks } from '../fba-hooks';\nimport { FlexLayout } from '../flex-layout';\nimport { IconWrapper } from '../icon-wrapper';\nimport { PaginationWrapper } from '../pagination-wrapper';\nimport { SvgHttpView } from '../svg-http-view';\nimport { TableTitleTooltip } from '../table-title-tooltip';\nimport { TipsWrapper } from '../tips-wrapper';\nimport { EasyTableContext } from './context';\nimport { FoldOperate } from './fold-operate';\nimport { FoldOperateDropdown } from './fold-operate-dropdown';\nimport { easyTableModel } from './model';\nimport './style.less';\nimport { EasyTableProps, EasyTableRefApi, TEasyTableTableColumn } from './type';\n\nexport const EasyTable = forwardRef<EasyTableRefApi, EasyTableProps>((props, ref) => {\n const [dataSource, setDataSource] = useState<TPlainObject[]>();\n const [total, setTotal] = useState<number>(0);\n const [loading, setLoading] = useState<boolean>(false);\n const easyTableId = hooks.useId(undefined, 'easy-table-key');\n const columnFoldConfig = props.columnFoldConfig;\n const asyncColumnRequest = props.asyncColumnRequest;\n\n const [columnFoldOpen, setColumnFoldOpen] = useState(false);\n const asyncColumnRequestResultRef = useRef<{\n [dataIndex: string]: {\n respData?: TAny;\n loading?: boolean;\n };\n }>({});\n const [asyncColumnRequestResult, setAsyncColumnRequestResult] = useState<{\n [dataIndex: string]: {\n respData?: TAny;\n loading?: boolean;\n };\n }>({});\n\n const [showFoldKeyList, setShowFoldKeyList] = useState<string[]>(() => {\n if (columnFoldConfig?.cacheKey) {\n const cacheValue = localStorageCache.get(`easy_tab_${columnFoldConfig.cacheKey}`);\n const cacheKeyList = isArray(cacheValue?.keys)\n ? (cacheValue?.keys?.filter((item) => isString(item)) as string[])\n : [];\n return cacheKeyList.length > 0 ? cacheKeyList : columnFoldConfig?.initSelectedKeys || [];\n } else {\n return columnFoldConfig?.initSelectedKeys || [];\n }\n });\n\n const modelKey = useMemo(() => {\n if (props.cacheSwitch === true) {\n return location.pathname;\n }\n if (typeof props.cacheSwitch === 'string') {\n return props.cacheSwitch;\n }\n return easyTableId;\n }, [easyTableId, props.cacheSwitch]);\n\n const [state, actions] = easyTableModel(modelKey).useStore();\n const pageSize = props.pageSize || props.initialPaginationParams?.pageSize || 10;\n const initRequest = props.initRequest === undefined ? true : props.initRequest;\n const paginationStatusRef = useRef(false);\n const respOriginalDataRef = useRef<TAny>();\n const baseColumnsRef = useRef<TEasyTableTableColumn<TPlainObject>[]>([]);\n const [dynamicColumns, setDynamicColumns] = useState<TEasyTableTableColumn<TPlainObject>[]>();\n\n const fieldNames = {\n list: 'list',\n total: 'total',\n pageNo: 'pageNo',\n pageSize: 'pageSize',\n ...props.fieldNames,\n };\n\n const [form] = Form.useForm(props.form);\n\n const onInnerRequest = hooks.useCallbackRef(async (params) => {\n try {\n if (props.breforeRequest) {\n try {\n await props.breforeRequest(form);\n } catch (error) {\n return;\n }\n }\n setLoading(true);\n const allState = await actions.updateFilterCondition(params);\n const queryCondition = cloneState(allState.queryCondition || {});\n const { requestParamsAdapter, onRequest, requestResultAdapter, dynamicColumsAdapter } =\n props.serviceConfig;\n const paramsNew = requestParamsAdapter ? requestParamsAdapter(queryCondition) : queryCondition;\n const respData = (await onRequest(paramsNew)) || {};\n respOriginalDataRef.current = respData;\n props.onDataSourceChange?.(respData);\n let respDataNew: TPlainObject = respData;\n if (requestResultAdapter) {\n respDataNew = requestResultAdapter(respData);\n }\n if (dynamicColumsAdapter) {\n const dynamicColumns = dynamicColumsAdapter(respData, baseColumnsRef.current);\n /** 不要添加默认值 */\n setDynamicColumns(dynamicColumns);\n }\n const respList = get(respDataNew, fieldNames.list);\n setDataSource(isArray(respList) ? respList : []);\n setTotal(get(respDataNew, fieldNames.total));\n setLoading(false);\n } catch (error) {\n setLoading(false);\n if (props.onRequestErrorHandle) {\n props.onRequestErrorHandle(error);\n } else {\n void message.error(error.message);\n }\n }\n });\n\n fbaHooks.useEffectCustom(() => {\n const hasPagination = getPaginationStatus();\n if (initRequest !== false || !state.isInit) {\n if (hasPagination) {\n void onInnerRequest({\n [fieldNames.pageNo]: 1,\n [fieldNames.pageSize]: pageSize,\n ...props.initialValues,\n ...state.queryCondition,\n });\n } else {\n void onInnerRequest(props.initialValues);\n }\n } else {\n void actions.updateFilterCondition(props.initialValues);\n }\n void actions.updateInitStatus();\n }, []);\n\n useEffect(() => {\n if (asyncColumnRequest?.length) {\n for (let index = 0; index < asyncColumnRequest.length; index++) {\n const element = asyncColumnRequest[index];\n asyncColumnRequestResultRef.current = {\n ...asyncColumnRequestResultRef.current,\n [element.dataIndex]: { loading: true },\n };\n setAsyncColumnRequestResult(asyncColumnRequestResultRef.current);\n element\n .onRequest()\n .then((respData) => {\n asyncColumnRequestResultRef.current = {\n ...asyncColumnRequestResultRef.current,\n [element.dataIndex]: { loading: false, respData },\n };\n setAsyncColumnRequestResult(asyncColumnRequestResultRef.current);\n })\n .catch((error) => {\n console.error(error?.message);\n asyncColumnRequestResultRef.current = {\n ...asyncColumnRequestResultRef.current,\n [element.dataIndex]: { loading: false },\n };\n setAsyncColumnRequestResult(asyncColumnRequestResultRef.current);\n });\n }\n }\n }, [asyncColumnRequest]);\n\n const clearQueryCondition = hooks.useCallbackRef(async (values?: TPlainObject) => {\n await actions.resetFilterCondition();\n form.resetFields();\n if (values) {\n void actions.updateFilterCondition(values);\n form.setFieldsValue(values);\n }\n });\n\n const updateQueryCondition = hooks.useCallbackRef(async (values: TPlainObject) => {\n await actions.updateFilterCondition(values);\n form.setFieldsValue(values);\n });\n\n const getPaginationData = (pageNo: number, _pageSize: number) => {\n if (getPaginationStatus()) {\n return {\n [fieldNames.pageNo]: pageNo,\n [fieldNames.pageSize]: _pageSize || pageSize,\n };\n } else {\n return {\n [fieldNames.pageNo]: undefined,\n [fieldNames.pageSize]: undefined,\n };\n }\n };\n\n const onResetRequest = hooks.useCallbackRef(async (values?: TPlainObject) => {\n const params = {\n ...getPaginationData(1, state.queryCondition[fieldNames.pageSize]),\n ...props.initialValues,\n ...values,\n };\n await actions.resetFilterCondition(params);\n form.resetFields();\n if (values) {\n form.setFieldsValue(values);\n }\n void onInnerRequest(params);\n });\n\n const getRequestParams = hooks.useCallbackRef(() => {\n return {\n ...state.queryCondition,\n ...form.getFieldsValue(),\n };\n });\n\n const onOpenColumnFoldModal = hooks.useCallbackRef(() => {\n setColumnFoldOpen(true);\n });\n const onCloseColumnFoldModal = hooks.useCallbackRef(() => {\n setColumnFoldOpen(false);\n });\n\n const getEasyTableRef = () => {\n return {\n /**\n * 参数\n * 1. 不用添加已存在的搜索条件\n * 2. 此处可重新\n */\n onRequest: onInnerRequest,\n clearQueryCondition,\n updateQueryCondition,\n getRequestParams,\n onResetRequest,\n form,\n dataSource: respOriginalDataRef.current,\n getDataSource: () => {\n return respOriginalDataRef.current;\n },\n onFilterDataSource: (filterDataSource) => {\n setDataSource(filterDataSource);\n },\n onClearDataSource: () => {\n setTotal(0);\n setDataSource([]);\n },\n onUpdateDataSource: (dataList) => {\n setDataSource(dataList);\n respOriginalDataRef.current = dataList;\n props.onDataSourceChange?.(dataList);\n },\n columnFoldTriggerRender: (children) => {\n if (props.columnFoldConfig?.triggerType === 'drawer') {\n return cloneElement(children, {\n onClick: onOpenColumnFoldModal,\n });\n }\n return (\n <FoldOperateDropdown\n dataList={foldColumnList as TAny[]}\n onChange={onChangeFoldColumnList}\n cacheKey={columnFoldConfig?.cacheKey}\n initSelectedRowKeys={showFoldKeyList}\n >\n {children}\n </FoldOperateDropdown>\n );\n },\n onChangeTableColumns: (columns) => {\n setDynamicColumns(columns);\n },\n getTableColumns: () => {\n return dynamicColumns ? dynamicColumns : baseColumnsRef.current;\n },\n loading,\n };\n };\n\n useImperativeHandle(ref, () => {\n return getEasyTableRef();\n });\n\n const onSetPaginationStatus = (status: boolean) => {\n paginationStatusRef.current = status;\n };\n\n const onSetBaseColumns = (base) => {\n baseColumnsRef.current = base;\n };\n\n const onFormFinish = () => {\n const values = form.getFieldsValue();\n if (props.onFormFinish) {\n props.onFormFinish({\n ...values,\n ...getPaginationData(1, state.queryCondition[fieldNames.pageSize]),\n });\n } else {\n void onInnerRequest({\n ...values,\n ...getPaginationData(1, state.queryCondition[fieldNames.pageSize]),\n });\n }\n };\n const isFull = isUndefined(props.isFull) ? true : props.isFull;\n const className = classNames(\n 'fba-easy-table',\n {\n 'fba-easy-table-full': isFull,\n 'fba-easy-table-filter-fixed': props.filterFixed,\n 'fba-easy-table-pagination-fixed': props.paginationFixed,\n },\n props.className,\n );\n\n const paginationData = useMemo(() => {\n return {\n showSizeChanger: true,\n current: state.queryCondition[fieldNames.pageNo] || 1,\n pageSize: state.queryCondition[fieldNames.pageSize] || pageSize,\n total: total,\n showTotal: (total) => `共 ${total} 条记录`,\n ...props.pagination,\n };\n }, [fieldNames.pageNo, fieldNames.pageSize, pageSize, props.pagination, state.queryCondition, total]);\n\n const columnsMerge = (dynamicColumns ? dynamicColumns : baseColumnsRef.current) as TPlainObject[];\n\n let tableColumns = useMemo(() => {\n const tempList = columnsMerge\n .map((item) => {\n const { tooltip, tipsWrapperProps, title, hidden, isFold, ...otherProps } = item;\n if (hidden) return null;\n if (isFold && !showFoldKeyList.includes(item.dataIndex as string)) return null;\n if (typeof title === 'string' && tipsWrapperProps) {\n if (typeof tipsWrapperProps === 'string') {\n return {\n ...otherProps,\n title: (\n <TipsWrapper tipType=\"popover\" popoverProps={{ content: tipsWrapperProps }}>\n {title}\n </TipsWrapper>\n ),\n };\n }\n return {\n ...otherProps,\n title: <TipsWrapper {...tipsWrapperProps}>{title}</TipsWrapper>,\n };\n }\n if (typeof title === 'string' && !!tooltip) {\n return {\n ...otherProps,\n title: <TableTitleTooltip tooltip={tooltip} title={title}></TableTitleTooltip>,\n };\n }\n return item;\n })\n .filter(Boolean);\n return [...tempList] as TPlainObject[];\n }, [columnsMerge, showFoldKeyList]);\n\n const foldColumnList = columnsMerge.filter((item: TAny) => {\n return !item.hidden && item.isFold && item.dataIndex;\n });\n\n const onChangeFoldColumnList = (keyList: string[]) => {\n setShowFoldKeyList(keyList);\n columnFoldConfig?.onChange?.(keyList);\n };\n\n tableColumns = fbaHooks.useMemoCustom(() => {\n if (columnFoldConfig?.hidden) return tableColumns;\n const finalItem = tableColumns[tableColumns.length - 1];\n if (foldColumnList.length > 0 && tableColumns.length > 0) {\n const foldColumnTarget = tableColumns.find((item) => item['_isFoldColumn']);\n\n if (foldColumnTarget && finalItem.dataIndex !== foldColumnTarget.dataIndex) {\n foldColumnTarget.title = foldColumnTarget['_isFoldTitle'];\n foldColumnTarget['_isFoldColumn'] = false;\n }\n if (!finalItem['_isFoldColumn']) {\n finalItem['_isFoldTitle'] = finalItem['_isFoldTitle'] || finalItem.title;\n finalItem['_isFoldColumn'] = true;\n\n const triggerType = columnFoldConfig?.triggerType;\n\n finalItem.title = (\n <FlexLayout direction=\"horizontal\" fullIndex={0} style={{ alignItems: 'center' }}>\n <span>{finalItem.title}</span>\n <div style={{ padding: '0 5px 0 20px', display: 'flex' }}>\n {triggerType === 'drawer' ? (\n <IconWrapper\n onClick={onOpenColumnFoldModal}\n text={columnFoldConfig?.text}\n size=\"small\"\n icon={columnFoldConfig?.icon || <SvgHttpView svgPath=\"ionic/list-circle\" color=\"#868686\" />}\n hoverTips={columnFoldConfig?.hoverTipText || '字段列表'}\n style={{ padding: 0, margin: 0 }}\n />\n ) : (\n <FoldOperateDropdown\n dataList={foldColumnList as TAny[]}\n onChange={onChangeFoldColumnList}\n cacheKey={columnFoldConfig?.cacheKey}\n initSelectedRowKeys={showFoldKeyList}\n >\n <IconWrapper\n text={columnFoldConfig?.text}\n style={{ padding: 0, margin: 0 }}\n size=\"small\"\n icon={\n columnFoldConfig?.icon || <SvgHttpView svgPath=\"ionic/list-circle\" color=\"#868686\" />\n }\n />\n </FoldOperateDropdown>\n )}\n </div>\n </FlexLayout>\n );\n }\n }\n return tableColumns;\n }, [tableColumns, foldColumnList, columnFoldConfig]);\n\n tableColumns = useMemo(() => {\n if (!Object.keys(asyncColumnRequestResult)) return tableColumns;\n return tableColumns.map((item: TAny) => {\n const dataIndex = item.dataIndex as string;\n const result = asyncColumnRequestResult[dataIndex];\n if (dataIndex && result) {\n if (result.loading) {\n item.render = (value) => {\n return (\n <ButtonWrapper loading type=\"text\" loadingPosition=\"center\" removeGap>\n {value}\n </ButtonWrapper>\n );\n };\n } else if (item.asyncRender) {\n item.render = (value, record, index) => {\n return item.asyncRender?.(value, record, index, result.respData);\n };\n }\n }\n return item;\n });\n }, [tableColumns, asyncColumnRequestResult]);\n\n const onChange = hooks.useCallbackRef((page: number, pageSize: number) => {\n void onInnerRequest({\n [fieldNames.pageSize]: pageSize,\n [fieldNames.pageNo]: page,\n });\n props.pagination?.onChange?.(page, pageSize);\n });\n\n const getPaginationStatus = () => {\n return props.paginationFixed || paginationStatusRef.current;\n };\n\n // 分页参数发生变更\n hooks.useUpdateEffect(() => {\n if (props.paginationFixed) {\n void onInnerRequest({\n [fieldNames.pageSize]: state.queryCondition[fieldNames.pageSize] || pageSize,\n [fieldNames.pageNo]: 1,\n });\n } else {\n void onInnerRequest({\n [fieldNames.pageSize]: undefined,\n [fieldNames.pageNo]: undefined,\n });\n }\n }, [props.paginationFixed]);\n\n const wrapperClassName = classNames(\n 'fba-easy-table-wrapper',\n {\n 'fba-easy-table-wrapper-inline': props.isInline,\n },\n props.className,\n );\n\n const wrapperStyle: CSSProperties = {\n overflowY: props.filterFixed || props.paginationFixed ? 'hidden' : 'auto',\n ...props.style,\n };\n\n const children =\n typeof props.children === 'function' ? props.children(respOriginalDataRef.current) : props.children;\n\n return (\n <EasyTableContext.Provider\n value={{\n onSetBaseColumns,\n getEasyTableRef,\n modelKey,\n onRequest: onInnerRequest,\n tableDataSource: dataSource,\n tableTotal: total,\n loading,\n fieldNames,\n pageSize,\n onSetPaginationStatus,\n getPaginationStatus,\n onFormFinish,\n form,\n paginationFixed: props.paginationFixed || false,\n foldKeys: props.foldKeys || [],\n columns: tableColumns,\n initialValues: props.initialValues,\n }}\n >\n {props.paginationFixed ? (\n <div className={wrapperClassName} style={wrapperStyle}>\n <div className={className}>{children}</div>\n {total > 0 && (\n <div className=\"fba-easy-table-pagination\">\n <PaginationWrapper size=\"small\" {...paginationData} onChange={onChange} />\n </div>\n )}\n </div>\n ) : (\n <div className={wrapperClassName} style={props.style}>\n {children}\n </div>\n )}\n <FoldOperate\n dataList={foldColumnList as TAny[]}\n onClose={onCloseColumnFoldModal}\n open={columnFoldOpen}\n onChange={onChangeFoldColumnList}\n cacheKey={columnFoldConfig?.cacheKey}\n initSelectedRowKeys={showFoldKeyList}\n />\n </EasyTableContext.Provider>\n );\n});\n","import { DownOutlined, UpOutlined } from '@ant-design/icons';\nimport { isUndefined } from '@dimjs/lang';\nimport { classNames } from '@dimjs/utils';\nimport { TAny } from '@flatbiz/utils';\nimport { hooks } from '@wove/react';\nimport { FormInstance } from 'antd';\nimport { Children, CSSProperties, ReactElement, useContext, useMemo, useState } from 'react';\nimport { isFragment } from 'react-is';\nimport { BlockLayout } from '../block-layout';\nimport { ButtonWrapper, ButtonWrapperProps } from '../button-wrapper';\nimport { EasyForm, EasyFormProps } from '../easy-form';\nimport { fbaHooks } from '../fba-hooks';\nimport { FormGrid } from '../form-grid';\nimport { FormOperateColProps } from '../form-grid/form-operate-col';\nimport { FormRowProps } from '../form-grid/form-row';\nimport { EasyTableContext } from './context';\nimport { easyTableModel } from './model';\n\nexport type EasyTableFilterProps = {\n children: ReactElement | ReactElement[] | ((form: FormInstance) => ReactElement);\n /** isPure = true时无效 */\n filterOperate?: (form: FormInstance) => FormOperateColProps;\n /** 是否为纯净模式(查询条件布局是否自定义), */\n isPure?: boolean;\n /** 查询按钮配置 */\n queryButtonProps?: Omit<ButtonWrapperProps, 'onClick'> & { text?: string };\n /** 重置按钮配置 */\n resetButtonProps?: Omit<ButtonWrapperProps, 'onClick'> & { text?: string };\n /**\n * 网格布局设置\n * default = { xs: 24, sm: 12, md: 12, lg: 8, xl: 8, xxl: 6 };\n * small = { xs: 24, sm: 8, md: 8, lg: 6, xl: 6, xxl: 6 };\n */\n formGridSize?: FormRowProps['gridSize'];\n /**\n * @deprecated已过期,使用 easyFormProps.className 配置\n */\n formClassName?: string;\n /**\n * @deprecated已过期,使用 easyFormProps.style 配置\n */\n formStyle?: CSSProperties;\n /** filter Form 外层 BlockLayout style */\n filterWrapperStyle?: CSSProperties;\n /** filter Form 外层 BlockLayout className */\n filterWrapperClassName?: string;\n /**\n * 自定义 filterOperate.rightList 后 默认【查询、重置】按钮处理逻辑\n * 1. cover:覆盖内部查询重置按钮(默认值)\n * 2. beforeAppend:添加到【查询重置】按钮前面\n * 3. afterAppend:添加到【查询重置】按钮后面\n *\n * 如果想隐藏【查询、重置】按钮中的某一个,可设置 queryButtonProps.hidden、resetButtonProps.hidden\n */\n rightOperateAreaAppendType?: 'cover' | 'beforeAppend' | 'afterAppend';\n /** 默认重启按钮触发请求,默认值:true */\n defaultResetButtonTriggerRequest?: boolean;\n easyFormProps?: Omit<\n EasyFormProps,\n 'isPure' | 'column' | 'forceColumn' | 'width' | 'gridGutter' | 'children'\n >;\n};\n\n/**\n * 过滤条件\n *```\n * 1. 用法1\n * -- 默认网格布局 规则:{ xs: 24, sm: 12, md: 12, lg: 8, xl: 8, xxl: 6 }\n * <EasyTableFilter>\n * <FormItemWrapper name=\"field1\" label=\"条件1\">xxx</FormItemWrapper>\n * </EasyTableFilter>\n *\n * -- 自定义网格布局 使用 FormGrid.Col 组件包装 FormItemWrapper\n * <EasyTableFilter>\n * <FormGrid.Col span={12}><FormItemWrapper name=\"field1\" label=\"条件1\">xxx</FormItemWrapper></FormGrid.Col>\n * </EasyTableFilter>\n *\n * -- children 可为 function\n * <EasyTableFilter>\n * {(form) => {\n * return <FormItemWrapper name=\"field1\" label=\"条件1\">xxx</FormItemWrapper>\n * }}\n * </EasyTableFilter>\n *\n * 2. 用户2(自定义布局)\n * EasyTableFilter设置 isPure = true,FormItem无布局规则\n * 3. EasyTableFilter中内置了 Form 标签,当children为函数时,可获取form实例\n * 4. 默认布局下,可通过设置 filterOperate 设置操作按钮\n * 5. Filter 子节点包含 hidden = true 会被忽略\n * 6. 如果想隐藏【查询、重置】按钮中的某一个,可设置 queryButtonProps.hidden、resetButtonProps.hidden\n * 7. 通过设置 defaultResetButtonTriggerRequest,默认重启按钮触发请求,默认值:true\n * 8. EasyTableFilter 子节点可使用 FormItemWrapper,FormItemWrapper中可配置label宽度等\n *```\n */\nexport const EasyTableFilter = (props: EasyTableFilterProps) => {\n const screenType = fbaHooks.useResponsivePoint() || 'md';\n const ctx = useContext(EasyTableContext);\n const {\n queryButtonProps,\n resetButtonProps,\n filterOperate,\n formClassName = '',\n defaultResetButtonTriggerRequest,\n filterWrapperStyle,\n filterWrapperClassName,\n rightOperateAreaAppendType,\n easyFormProps,\n } = props;\n const {\n modelKey,\n foldKeys,\n fieldNames,\n onRequest,\n pageSize,\n getPaginationStatus,\n initialValues,\n form,\n onFormFinish,\n } = ctx;\n const children = typeof props.children === 'function' ? props.children(form) : props.children;\n\n const rightOperateAreaAppendTypeFt = rightOperateAreaAppendType || 'cover';\n const childrens = useMemo(() => {\n if (isFragment(children)) {\n return Children.toArray((children as ReactElement).props.children) as ReactElement[];\n } else {\n return Children.toArray(children) as ReactElement[];\n }\n }, [children]);\n\n const [openFold, setOpenFold] = useState(false);\n\n const [state, actions] = easyTableModel(modelKey).useStore();\n\n const onReset = hooks.useCallbackRef(async () => {\n await actions.resetFilterCondition();\n form.resetFields();\n if (isUndefined(defaultResetButtonTriggerRequest) || defaultResetButtonTriggerRequest) {\n await form.validateFields();\n if (getPaginationStatus()) {\n onRequest({\n [fieldNames.pageNo]: 1,\n [fieldNames.pageSize]: pageSize,\n ...initialValues,\n });\n } else {\n onRequest(initialValues);\n }\n }\n });\n\n const formRowChildren = useMemo(() => {\n const defaultRightList = [\n !queryButtonProps?.hidden ? (\n <ButtonWrapper key=\"1\" type=\"primary\" htmlType=\"submit\" {...queryButtonProps}>\n {queryButtonProps?.text || '查询'}\n </ButtonWrapper>\n ) : null,\n !resetButtonProps?.hidden ? (\n <ButtonWrapper key=\"2\" onClick={onReset} {...resetButtonProps}>\n {resetButtonProps?.text || '重置'}\n </ButtonWrapper>\n ) : null,\n ].filter(Boolean);\n const customFormOperateCol = filterOperate?.(form);\n const customRightList = customFormOperateCol?.rightList;\n const leftList: TAny[] = customFormOperateCol?.leftList || [];\n\n let rightList: TAny[] = defaultRightList;\n if (customRightList) {\n if (rightOperateAreaAppendTypeFt === 'afterAppend') {\n rightList = [...defaultRightList, ...customRightList];\n } else if (rightOperateAreaAppendTypeFt === 'beforeAppend') {\n rightList = [...customRightList, ...defaultRightList];\n } else {\n rightList = customRightList;\n }\n }\n if (foldKeys.length > 0) {\n const changeFolditem = (\n <ButtonWrapper\n type=\"link\"\n key=\"fold-trigger\"\n style={{ padding: '0' }}\n onClick={() => {\n setOpenFold(!openFold);\n }}\n >\n {openFold ? (\n <span>\n 收起\n <UpOutlined style={{ marginLeft: 3, fontSize: 12 }} />\n </span>\n ) : (\n <span>\n 展开\n <DownOutlined style={{ marginLeft: 3, fontSize: 12 }} />\n </span>\n )}\n </ButtonWrapper>\n );\n\n if (rightList.length > 0 || leftList.length === 0) {\n rightList.push(changeFolditem);\n } else if (leftList?.length > 0) {\n leftList.push(changeFolditem);\n }\n }\n\n return childrens\n .map((item, index) => {\n if (!openFold && foldKeys.find((keyItem) => `.$${keyItem}` === item.key)) return null;\n if (item.props['hidden']) return null;\n if (item.type['domTypeName'] === 'FormCol') return item;\n return <FormGrid.Col key={index}>{item}</FormGrid.Col>;\n })\n .filter(Boolean)\n .concat(\n <FormGrid.OperateCol key={999} {...customFormOperateCol} leftList={leftList} rightList={rightList} />,\n );\n }, [\n childrens,\n filterOperate,\n foldKeys,\n form,\n onReset,\n openFold,\n queryButtonProps,\n resetButtonProps,\n rightOperateAreaAppendTypeFt,\n ]);\n\n const labelAlign = screenType === 'xs' ? 'left' : easyFormProps?.labelAlign || 'right';\n\n return (\n <BlockLayout\n className={classNames('easy-table-filter', filterWrapperClassName)}\n style={filterWrapperStyle}\n >\n <EasyForm\n form={form}\n autoComplete=\"off\"\n onFinish={onFormFinish}\n initialValues={{\n ...initialValues,\n ...state.queryCondition,\n }}\n className={formClassName}\n style={props.formStyle}\n isPure={true}\n labelWidth=\"80\"\n formItemGap=\"15\"\n {...easyFormProps}\n labelAlign={labelAlign}\n >\n {props.isPure ? (\n children\n ) : (\n <FormGrid.Row gutter={[15, 0]} gridSize={props.formGridSize}>\n {formRowChildren}\n </FormGrid.Row>\n )}\n </EasyForm>\n </BlockLayout>\n );\n};\n","import { useContext } from 'react';\nimport { EasyTableContext } from './context';\n\n/**\n * 在 EasyTable子组件内才可使用\n * @returns\n */\nexport const useEasyTable = () => {\n const ctx = useContext(EasyTableContext);\n return ctx.getEasyTableRef();\n};\n\n/**\n * @deprecated 已过时 @4.5.0版本移除,请使用 useEasyTable\n * @returns\n */\nexport const useEasyTablRef = () => {\n const ctx = useContext(EasyTableContext);\n return {\n current: ctx.getEasyTableRef(),\n };\n};\n","import { classNames } from '@dimjs/utils';\nimport { getUuid, isMacEnv, isUndefinedOrNull, TAny, TPlainObject } from '@flatbiz/utils';\nimport { hooks } from '@wove/react';\nimport { Table, TableProps } from 'antd';\nimport { CSSProperties, Fragment, ReactElement, useContext, useMemo } from 'react';\nimport { BlockLayout } from '../block-layout';\nimport { fbaHooks } from '../fba-hooks';\nimport { SmallSelect } from '../pagination-wrapper/select';\nimport { TableScrollbar } from '../table-scrollbar';\nimport { EasyTableContext } from './context';\nimport { easyTableModel } from './model';\nimport { TEasyTableTableColumn } from './type';\n\nexport type EasyTableTableProps<T> = Omit<\n TableProps<TAny>,\n 'dataSource' | 'loading' | 'rowKey' | 'columns'\n> & {\n children?: ReactElement | ReactElement[];\n /**\n * 表格行 key 的取值,\n * ```\n * 如果 rowKey 为string类型\n * 1. 组件会判断表格列表数据第一条是否存在当前rowKey对象的数据,如果没有组件内部会动态添加唯一值\n * 2. 基于上一条的逻辑,如果表格数据没有唯一值,可指定 rowKey 值为table数据中不存在的字段名,例如:rowKey=\"_uid\"\n * 3. 如果触发上述逻辑,表格数据中会多出rowKey对应的键值对数据\n * ```\n */\n rowKey: TableProps<TAny>['rowKey'];\n /** table Form 外层 SimpleLayout className */\n tableWrapperStyle?: CSSProperties;\n /** table Form 外层 SimpleLayout className */\n tableWrapperClassName?: string;\n /**\n * 初始化配置有效果(只在第一次渲染生效)\n * ```\n * 如果存在动态逻辑\n * 1. 初始阶段,通过 EasyTable.serviceConfig.dynamicColumsAdapter 实现\n * 2. 非初始阶段,通过 EasyTableRef.onChangeTableColumns 实现\n * 3. demo: https://fex.qa.tcshuke.com/docs/admin/main/table/easy-table?tabKey=key7\n *\n * ```\n */\n columns: TEasyTableTableColumn<T>[];\n /**\n * 数据加载与表格初始化渲染 是否同步\n * @version 4.4.6\n * ```\n * 1. true:获取数据后再初始化渲染表格(可用于实现表格中defaultXxxx相关功能的使用)\n * ```\n */\n isSync?: boolean;\n /**\n * 空效果显示尺寸,默认值:small\n * @version 4.4.6\n */\n emptyShowSize?: 'small' | 'large';\n};\n\n/**\n * 表格渲染\n * @param props\n * ```\n * 1. 继承了 TableProps 可设置antd table功能\n * 2. 分页功能已内置处理,不调用 onChange\n * ```\n */\nexport const EasyTableTable = <T extends TPlainObject>(props: EasyTableTableProps<T>) => {\n const ctx = useContext(EasyTableContext);\n const { children, rowKey, pagination, isSync, ...otherProps } = props;\n\n const {\n modelKey,\n fieldNames,\n onRequest,\n tableDataSource,\n pageSize,\n tableTotal,\n loading,\n paginationFixed,\n onSetPaginationStatus,\n } = ctx;\n const [state] = easyTableModel(modelKey).useStore();\n\n fbaHooks.useEffectCustom(() => {\n /** 获取初始化 columns 数据 */\n ctx.onSetBaseColumns((props.columns || []) as TEasyTableTableColumn<TPlainObject>[]);\n }, []);\n\n fbaHooks.useEffectCustom(() => {\n onSetPaginationStatus(pagination !== false);\n }, [pagination]);\n\n // 分页参数发生变更\n hooks.useUpdateEffect(() => {\n if (!paginationFixed) {\n if (pagination !== false) {\n onRequest({\n [fieldNames.pageSize]: state.queryCondition[fieldNames.pageSize] || pageSize,\n [fieldNames.pageNo]: 1,\n });\n } else {\n onRequest({\n [fieldNames.pageSize]: undefined,\n [fieldNames.pageNo]: undefined,\n });\n }\n }\n }, [pagination]);\n\n const tablePaginationData = useMemo(() => {\n if (paginationFixed || pagination === false) return false;\n return {\n showSizeChanger: true,\n current: state.queryCondition[fieldNames.pageNo] || 1,\n pageSize: state.queryCondition[fieldNames.pageSize] || pageSize,\n total: tableTotal,\n showTotal: (total) => `共 ${total} 条记录`,\n ...props.pagination,\n selectComponentClass: SmallSelect,\n };\n }, [\n fieldNames.pageNo,\n fieldNames.pageSize,\n pageSize,\n pagination,\n paginationFixed,\n props.pagination,\n state.queryCondition,\n tableTotal,\n ]);\n\n const onChangePage: TableProps<TAny>['onChange'] = (pagination, filters, sorter, extra) => {\n if (extra.action === 'paginate' && tablePaginationData) {\n onRequest({\n [fieldNames.pageSize]: pagination.pageSize,\n [fieldNames.pageNo]: pagination.current,\n });\n } else {\n props.onChange?.(pagination, filters, sorter, extra);\n }\n };\n\n const dataSource = useMemo(() => {\n if (!tableDataSource) return undefined;\n if (tableDataSource.length === 0) {\n return [];\n }\n if (typeof rowKey === 'string' && isUndefinedOrNull(tableDataSource[0][rowKey])) {\n return tableDataSource.map((item) => {\n item[rowKey] = getUuid();\n return item;\n });\n }\n return tableDataSource;\n }, [tableDataSource, rowKey]);\n\n const tableRender = () => {\n if (isSync && !dataSource) {\n return (\n <Fragment>\n {children}\n <Table\n key=\"1\"\n size=\"small\"\n scroll={{ x: 'max-content' }}\n bordered\n rowKey={rowKey as TAny}\n columns={ctx.columns}\n loading={loading}\n />\n </Fragment>\n );\n }\n if (isMacEnv()) {\n return (\n <Fragment>\n {children}\n <Table\n key=\"2\"\n size=\"small\"\n scroll={{ x: 'max-content' }}\n bordered\n {...otherProps}\n columns={ctx.columns}\n pagination={tablePaginationData}\n rowKey={rowKey}\n onChange={onChangePage}\n loading={loading}\n dataSource={dataSource}\n />\n </Fragment>\n );\n }\n return (\n <Fragment>\n {children}\n <TableScrollbar>\n <Table\n key=\"3\"\n size=\"small\"\n scroll={{ x: 'max-content' }}\n bordered\n {...otherProps}\n columns={ctx.columns}\n pagination={tablePaginationData}\n rowKey={rowKey}\n onChange={onChangePage}\n loading={loading}\n dataSource={dataSource}\n />\n </TableScrollbar>\n </Fragment>\n );\n };\n\n return (\n <BlockLayout\n className={classNames(\n 'easy-table-table',\n { 'ett-empty-show-small': props.emptyShowSize === 'small' },\n props.tableWrapperClassName,\n )}\n style={props.tableWrapperStyle}\n >\n {tableRender()}\n </BlockLayout>\n );\n};\n","import { fbaUtils } from '../fba-utils';\nimport { EasyTable as EasyTableInner } from './easy-table';\nimport { EasyTableFilter } from './filter';\nimport { useEasyTable, useEasyTablRef } from './hooks';\nimport { EasyTableTable } from './table';\n\n/**\n * 对 查询条件+表格数据 进行深度封装,内置数据交互处理\n * ```\n * Demo https://fex.qa.tcshuke.com/docs/admin/main/crud/easy-table\n *\n * 1. 废弃modelKey参数\n * 2. 如果需要在路由跳转回退中缓存查询条件,设置cacheSwitch=true;如果存在多个EasyTable缓存情况可设置cacheSwitch为自定义字符串\n * 3. 需要获取查询条件、主动发起请求等可通过ref、useEasyTable操作\n * 4. 可通过属性 initRequest 设置初始化是否请求数据\n * 5. 可通过属性 fieldNames 来设置自定义变量,默认值为:list、total、pageNo、pageSize\n * 6. isFull=true,设置【在父节点高度下,上下铺满】(默认值:true)\n * 7. filterFixed=true,设置查询条件固定,不随滚动条滚动\n * 8. paginationFixed=true,可设置分页条件在底部固定,不随滚动条滚动\n * 9. foldKeys=string[],查询条件展开、收起,被收起数组内容为EasyTable.Filter 子节点key值\n * 10. windows环境下,会在EasyTable.Table外部包装一下 TableScrollbar,提高windows下table左右滚动体验\n * 11. 可实现部分字段折叠,手动选择显示,将EasyTable.Table columns中isFold属性设为true,可通过EasyTable columnFoldConfig配置属性,demo(https://fex.qa.tcshuke.com/docs/admin/main/crud/demo1)\n * 12. 通过asyncColumnRequest、asyncRender配合使用可实现表格列数据接口渲染(demo:https://fex.qa.tcshuke.com/docs/admin/main/crud/easy-table)\n * ```\n */\nexport const EasyTable = fbaUtils.attachPropertiesToComponent(EasyTableInner, {\n /**\n * 过滤条件\n *```\n * 1. 用法1\n * -- 默认网格布局 规则:{ xs: 24, sm: 12, md: 12, lg: 8, xl: 8, xxl: 6 }\n * <EasyTable.Filter>\n * <FormItemWrapper name=\"field1\" label=\"条件1\">xxx</FormItemWrapper>\n * </EasyTable.Filter>\n *\n * -- 自定义网格布局 使用 FormGrid.Col 组件包装 FormItemWrapper\n * <EasyTable.Filter>\n * <FormGrid.Col span={12}><FormItemWrapper name=\"field1\" label=\"条件1\">xxx</FormItemWrapper></FormGrid.Col>\n * </EasyTable.Filter>\n *\n * -- children 可为 function\n * <EasyTable.Filter>\n * {(form) => {\n * return <FormItemWrapper name=\"field1\" label=\"条件1\">xxx</FormItemWrapper>\n * }}\n * </EasyTable.Filter>\n * 2. 用户2(自定义布局)\n * EasyTable.Filter设置 isPure = true,FormItem无布局规则\n * 3. EasyTable.Filter中内置了 Form 标签,当children为函数时,可获取form实例\n * 4. 默认布局下,可通过设置 filterOperate 设置操作按钮\n * 5. Filter 子节点包含 hidden = true 会被忽略\n * 6. 如果想隐藏【查询、重置】按钮中的某一个,可设置 queryButtonProps.hidden、resetButtonProps.hidden\n * 7. EasyTableFilter 子节点可使用 FormItemWrapper,FormItemWrapper中可配置label宽度等\n * 8. 通过easyFormProps属性可整体控制子节点FormItem布局\n *```\n */\n Filter: EasyTableFilter,\n /**\n * 表格渲染\n * @param props\n * ```\n * 1. 继承了 TableProps 可设置antd table功能\n * 2. 分页功能已内置处理,不调用 onChange\n * ```\n */\n Table: EasyTableTable,\n /**\n * @deprecated 已过时 4.3.0版本移除,请使用 useEasyTable\n */\n useEasyTablRef: useEasyTablRef,\n\n /** 在 EasyTable子组件内才可使用 */\n useEasyTable: useEasyTable,\n});\n"],"names":["EasyTableContext","createContext","onRequest","noop","tableList","getEasyTableRef","FoldOperate","props","_useState","useState","initSelectedRowKeys","selectedRowKeys","setSelectedRowKeys","rowSelection","type","onChange","cacheKey","localStorageCache","set","keys","columns","title","dataIndex","render","value","recrd","_jsx","Fragment","children","Drawer","open","onClose","width","styles","body","padding","Table","bordered","size","rowKey","pagination","scroll","x","dataSource","dataList","FoldOperateDropdown","content","Checkbox","Group","defaultValue","style","display","flexDirection","map","item","label","onChangeAll","e","target","checked","Popover","length","placement","overlayClassName","defaultState","queryCondition","isInit","_EasyTableModel","actions","updateFilterCondition","params","state","_extends","resetFilterCondition","updateInitStatus","easyTableModels","easyTableModel","key","Model","EasyTable","forwardRef","ref","_props$initialPaginat","setDataSource","_useState2","total","setTotal","_useState3","loading","setLoading","easyTableId","_hooks","useId","undefined","columnFoldConfig","asyncColumnRequest","_useState4","columnFoldOpen","setColumnFoldOpen","asyncColumnRequestResultRef","useRef","_useState5","asyncColumnRequestResult","setAsyncColumnRequestResult","_useState6","_cacheValue$keys","cacheValue","get","cacheKeyList","_isArray","filter","_isString","initSelectedKeys","showFoldKeyList","setShowFoldKeyList","modelKey","useMemo","cacheSwitch","location","pathname","_easyTableModel$useSt","useStore","pageSize","initialPaginationParams","initRequest","paginationStatusRef","respOriginalDataRef","baseColumnsRef","_useState7","dynamicColumns","setDynamicColumns","fieldNames","list","pageNo","_Form$useForm","Form","useForm","form","onInnerRequest","useCallbackRef","Promise","$return","$error","allState","_props$serviceConfig","requestParamsAdapter","requestResultAdapter","dynamicColumsAdapter","paramsNew","respData","respDataNew","_dynamicColumns","respList","$Try_1_Post","$boundEx","$Try_1_Catch","error","onRequestErrorHandle","message","breforeRequest","$Try_2_Post","$If_3","call","this","bind","$Try_2_Catch","resolve","then","$await_4","$await_5","cloneState","serviceConfig","$await_6","current","onDataSourceChange","_get","fbaHooks","useEffectCustom","hasPagination","getPaginationStatus","_extends2","initialValues","useEffect","_loop","_extends3","element","index","_extends4","catch","_extends5","console","clearQueryCondition","values","$await_7","resetFields","setFieldsValue","updateQueryCondition","$await_8","getPaginationData","_pageSize","_ref","_ref2","onResetRequest","$await_9","getRequestParams","getFieldsValue","onOpenColumnFoldModal","onCloseColumnFoldModal","getDataSource","onFilterDataSource","filterDataSource","onClearDataSource","onUpdateDataSource","columnFoldTriggerRender","_props$columnFoldConf","triggerType","cloneElement","onClick","foldColumnList","onChangeFoldColumnList","onChangeTableColumns","getTableColumns","useImperativeHandle","onSetPaginationStatus","status","onSetBaseColumns","base","onFormFinish","isFull","_isUndefined","className","_classNames","filterFixed","paginationFixed","paginationData","showSizeChanger","showTotal","columnsMerge","tableColumns","tempList","tooltip","tipsWrapperProps","hidden","isFold","otherProps","_objectWithoutPropertiesLoose","_excluded","includes","TipsWrapper","tipType","popoverProps","TableTitleTooltip","Boolean","concat","keyList","useMemoCustom","finalItem","foldColumnTarget","find","_jsxs","FlexLayout","direction","fullIndex","alignItems","IconWrapper","text","icon","SvgHttpView","svgPath","color","hoverTips","hoverTipText","margin","Object","result","ButtonWrapper","loadingPosition","removeGap","asyncRender","record","page","_onInnerRequest","_props$pagination","useUpdateEffect","_onInnerRequest2","_onInnerRequest3","wrapperClassName","isInline","wrapperStyle","overflowY","Provider","tableDataSource","tableTotal","foldKeys","PaginationWrapper","EasyTableFilter","screenType","useResponsivePoint","ctx","useContext","queryButtonProps","resetButtonProps","filterOperate","_props$formClassName","formClassName","defaultResetButtonTriggerRequest","filterWrapperStyle","filterWrapperClassName","rightOperateAreaAppendType","easyFormProps","rightOperateAreaAppendTypeFt","childrens","isFragment","Children","toArray","openFold","setOpenFold","onReset","$await_2","validateFields","$await_3","$If_1","formRowChildren","defaultRightList","htmlType","customFormOperateCol","customRightList","rightList","leftList","changeFolditem","_UpOutlined","marginLeft","fontSize","_DownOutlined","push","keyItem","FormGrid","Col","OperateCol","labelAlign","BlockLayout","EasyForm","autoComplete","onFinish","formStyle","isPure","labelWidth","formItemGap","Row","gutter","gridSize","formGridSize","useEasyTable","useEasyTablRef","EasyTableTable","isSync","_onRequest","_onRequest2","tablePaginationData","selectComponentClass","SmallSelect","onChangePage","filters","sorter","extra","action","_onRequest3","isUndefinedOrNull","getUuid","tableRender","isMacEnv","TableScrollbar","emptyShowSize","tableWrapperClassName","tableWrapperStyle","fbaUtils","attachPropertiesToComponent","EasyTableInner","Filter"],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sources":["@flatbiz/antd/src/easy-table/context.ts","@flatbiz/antd/src/easy-table/fold-operate.tsx","@flatbiz/antd/src/easy-table/fold-operate-dropdown.tsx","@flatbiz/antd/src/easy-table/model.ts","@flatbiz/antd/src/easy-table/easy-table.tsx","@flatbiz/antd/src/easy-table/filter.tsx","@flatbiz/antd/src/easy-table/hooks.ts","@flatbiz/antd/src/easy-table/table.tsx","@flatbiz/antd/src/easy-table/index.ts"],"sourcesContent":["import { noop, TPlainObject } from '@flatbiz/utils';\nimport { FormInstance } from 'antd';\nimport { createContext } from 'react';\nimport { EasyTableRefApi, TEasyTableTableColumn } from './type';\n\nexport type EditableFieldContextContextApi = {\n modelKey: string;\n onRequest: (params?: TPlainObject) => void;\n tableDataSource?: TPlainObject[];\n tableTotal: number;\n loading?: boolean;\n fieldNames: TPlainObject;\n pageSize: number;\n initialValues?: TPlainObject;\n onSetPaginationStatus: (status: boolean) => void;\n getPaginationStatus: () => boolean;\n onFormFinish?: (values?: TPlainObject) => void;\n form: FormInstance;\n getEasyTableRef: () => EasyTableRefApi;\n paginationFixed: boolean;\n foldKeys: string[];\n onSetBaseColumns: (baseColumns?: TEasyTableTableColumn<TPlainObject>[]) => void;\n columns: TEasyTableTableColumn<TPlainObject>[];\n};\n\nexport const EasyTableContext = createContext<EditableFieldContextContextApi>({\n onRequest: noop,\n tableList: [],\n getEasyTableRef: () => {\n //\n },\n} as unknown as EditableFieldContextContextApi);\n","import { localStorageCache, TAny, TPlainObject } from '@flatbiz/utils';\nimport { Drawer, Table } from 'antd';\nimport { ColumnsType } from 'antd/es/table';\nimport { TableRowSelection } from 'antd/es/table/interface';\nimport { CSSProperties, Fragment, useState } from 'react';\n\ntype FoldOperateProps = {\n style?: CSSProperties;\n dataList: { dataIndex?: string; title: string }[];\n onChange: (keys: string[]) => void;\n open?: boolean;\n onClose?: () => void;\n cacheKey?: string;\n initSelectedRowKeys?: string[];\n};\n\nexport const FoldOperate = (props: FoldOperateProps) => {\n const [selectedRowKeys, setSelectedRowKeys] = useState<string[]>(props.initSelectedRowKeys || []);\n const rowSelection = {\n type: 'checkbox',\n selectedRowKeys: selectedRowKeys,\n onChange: (selectedRowKeys: string[]) => {\n setSelectedRowKeys(selectedRowKeys);\n props.onChange(selectedRowKeys);\n if (props.cacheKey) {\n localStorageCache.set(`easy_tab_${props.cacheKey}`, { keys: selectedRowKeys });\n }\n },\n } as TableRowSelection<TAny>;\n\n const columns: ColumnsType<TPlainObject> = [\n {\n title: '字段名称',\n dataIndex: 'title',\n render: (value, recrd) => {\n return recrd['_isFoldTitle'] || value;\n },\n },\n { title: '字段Key', dataIndex: 'dataIndex' },\n ];\n\n return (\n <Fragment>\n <Drawer\n title=\"选择字段\"\n open={props.open}\n onClose={props.onClose}\n width={'35%'}\n styles={{\n body: {\n padding: 15,\n },\n }}\n >\n <Table\n bordered\n size=\"small\"\n columns={columns}\n rowSelection={rowSelection}\n rowKey=\"dataIndex\"\n pagination={false}\n scroll={{ x: 'max-content' }}\n dataSource={props.dataList}\n />\n </Drawer>\n </Fragment>\n );\n};\n","import { localStorageCache } from '@flatbiz/utils';\nimport { Checkbox, Popover } from 'antd';\nimport { CSSProperties, Fragment, ReactElement, useState } from 'react';\n\ntype FoldOperateProps = {\n style?: CSSProperties;\n dataList: { dataIndex: string; title: string }[];\n onChange: (keys: string[]) => void;\n cacheKey?: string;\n initSelectedRowKeys?: string[];\n children?: ReactElement;\n};\n\nexport const FoldOperateDropdown = (props: FoldOperateProps) => {\n const [selectedRowKeys, setSelectedRowKeys] = useState<string[]>(props.initSelectedRowKeys || []);\n\n const onChange = (keys) => {\n setSelectedRowKeys(keys);\n props.onChange(keys);\n if (props.cacheKey) {\n localStorageCache.set(`easy_tab_${props.cacheKey}`, { keys: keys });\n }\n };\n\n const content = (\n <Fragment>\n <Checkbox.Group\n defaultValue={selectedRowKeys}\n onChange={onChange}\n value={selectedRowKeys}\n style={{ display: 'flex', flexDirection: 'column' }}\n >\n {props.dataList.map((item) => {\n const label = item['_isFoldTitle'] || item.title;\n return (\n <Checkbox value={item.dataIndex} key={item.dataIndex} style={{ padding: '0 0 5px 0' }}>\n {label}\n </Checkbox>\n );\n })}\n </Checkbox.Group>\n </Fragment>\n );\n\n const onChangeAll = (e) => {\n if (e.target.checked) {\n onChange(props.dataList.map((item) => item.dataIndex));\n } else {\n onChange([]);\n }\n };\n\n return (\n <Popover\n content={content}\n title={\n <Checkbox checked={selectedRowKeys.length === props.dataList.length} onChange={onChangeAll}>\n 全选(字段列表)\n </Checkbox>\n }\n placement=\"bottomRight\"\n overlayClassName=\"fold-operate-popiver\"\n >\n {props.children}\n </Popover>\n );\n};\n","import { API, ModelType } from '@dimjs/model';\nimport { Model } from '@dimjs/model-react';\nimport { TAny, TPlainObject } from '@flatbiz/utils';\n\nexport type ModelState = {\n queryCondition: TPlainObject;\n isInit: boolean;\n};\n\ntype ModelActionParams = {\n updateFilterCondition?: Partial<ModelState['queryCondition']>;\n resetFilterCondition?: TPlainObject;\n updateInitStatus: void;\n};\n\nconst defaultState: ModelState = {\n queryCondition: {},\n isInit: true,\n};\n\nconst _EasyTableModel: ModelType<ModelState, ModelActionParams> = {\n actions: {\n updateFilterCondition: (params) => {\n return (state) => {\n state.queryCondition = {\n ...state.queryCondition,\n ...params,\n };\n };\n },\n resetFilterCondition: (params) => {\n return (state) => {\n state.queryCondition = {\n ...defaultState.queryCondition,\n ...params,\n };\n };\n },\n updateInitStatus: () => {\n return (state) => {\n state.isInit = false;\n };\n },\n },\n state: defaultState,\n};\n\nconst easyTableModels: Record<string, API<ModelType<ModelState, ModelActionParams, TAny>>> = {};\n\n/**\n * ```\n * 使用方式\n * const [state, actions] = selectorWrapperModel('key值').useStore();\n * ```\n */\nexport const easyTableModel = (key: string) => {\n if (!easyTableModels[key]) {\n easyTableModels[key] = Model(_EasyTableModel);\n }\n return easyTableModels[key];\n};\n","import { isArray, isString, isUndefined } from '@dimjs/lang';\nimport { cloneState } from '@dimjs/model';\nimport { classNames, get } from '@dimjs/utils';\nimport { localStorageCache, TAny, TPlainObject } from '@flatbiz/utils';\nimport { hooks } from '@wove/react';\nimport { Form, message } from 'antd';\nimport {\n cloneElement,\n CSSProperties,\n forwardRef,\n useEffect,\n useImperativeHandle,\n useMemo,\n useRef,\n useState,\n} from 'react';\nimport { ButtonWrapper } from '../button-wrapper';\nimport { fbaHooks } from '../fba-hooks';\nimport { FlexLayout } from '../flex-layout';\nimport { IconWrapper } from '../icon-wrapper';\nimport { PaginationWrapper } from '../pagination-wrapper';\nimport { SvgHttpView } from '../svg-http-view';\nimport { TableTitleTooltip } from '../table-title-tooltip';\nimport { TipsWrapper } from '../tips-wrapper';\nimport { EasyTableContext } from './context';\nimport { FoldOperate } from './fold-operate';\nimport { FoldOperateDropdown } from './fold-operate-dropdown';\nimport { easyTableModel } from './model';\nimport './style.less';\nimport { EasyTableProps, EasyTableRefApi, TEasyTableTableColumn } from './type';\n\nexport const EasyTable = forwardRef<EasyTableRefApi, EasyTableProps>((props, ref) => {\n const [dataSource, setDataSource] = useState<TPlainObject[]>();\n const [total, setTotal] = useState<number>(0);\n const [loading, setLoading] = useState<boolean>(false);\n const easyTableId = hooks.useId(undefined, 'easy-table-key');\n const columnFoldConfig = props.columnFoldConfig;\n const asyncColumnRequest = props.asyncColumnRequest;\n\n const [columnFoldOpen, setColumnFoldOpen] = useState(false);\n const asyncColumnRequestResultRef = useRef<{\n [dataIndex: string]: {\n respData?: TAny;\n loading?: boolean;\n };\n }>({});\n const [asyncColumnRequestResult, setAsyncColumnRequestResult] = useState<{\n [dataIndex: string]: {\n respData?: TAny;\n loading?: boolean;\n };\n }>({});\n\n const [showFoldKeyList, setShowFoldKeyList] = useState<string[]>(() => {\n if (columnFoldConfig?.cacheKey) {\n const cacheValue = localStorageCache.get(`easy_tab_${columnFoldConfig.cacheKey}`);\n const cacheKeyList = isArray(cacheValue?.keys)\n ? (cacheValue?.keys?.filter((item) => isString(item)) as string[])\n : [];\n return cacheKeyList.length > 0 ? cacheKeyList : columnFoldConfig?.initSelectedKeys || [];\n } else {\n return columnFoldConfig?.initSelectedKeys || [];\n }\n });\n\n const modelKey = useMemo(() => {\n if (props.cacheSwitch === true) {\n return location.pathname;\n }\n if (typeof props.cacheSwitch === 'string') {\n return props.cacheSwitch;\n }\n return easyTableId;\n }, [easyTableId, props.cacheSwitch]);\n\n const [state, actions] = easyTableModel(modelKey).useStore();\n const pageSize = props.pageSize || props.initialPaginationParams?.pageSize || 10;\n const initRequest = props.initRequest === undefined ? true : props.initRequest;\n const paginationStatusRef = useRef(false);\n const respOriginalDataRef = useRef<TAny>();\n const baseColumnsRef = useRef<TEasyTableTableColumn<TPlainObject>[]>([]);\n const [dynamicColumns, setDynamicColumns] = useState<TEasyTableTableColumn<TPlainObject>[]>();\n\n const fieldNames = {\n list: 'list',\n total: 'total',\n pageNo: 'pageNo',\n pageSize: 'pageSize',\n ...props.fieldNames,\n };\n\n const [form] = Form.useForm(props.form);\n\n const onInnerRequest = hooks.useCallbackRef(async (params) => {\n try {\n if (props.breforeRequest) {\n try {\n await props.breforeRequest(form);\n } catch (error) {\n return;\n }\n }\n setLoading(true);\n const allState = await actions.updateFilterCondition(params);\n const queryCondition = cloneState(allState.queryCondition || {});\n const { requestParamsAdapter, onRequest, requestResultAdapter, dynamicColumsAdapter } =\n props.serviceConfig;\n const paramsNew = requestParamsAdapter ? requestParamsAdapter(queryCondition) : queryCondition;\n const respData = (await onRequest(paramsNew)) || {};\n respOriginalDataRef.current = respData;\n props.onDataSourceChange?.(respData);\n let respDataNew: TPlainObject = respData;\n if (requestResultAdapter) {\n respDataNew = requestResultAdapter(respData);\n }\n if (dynamicColumsAdapter) {\n const dynamicColumns = dynamicColumsAdapter(respData, baseColumnsRef.current);\n /** 不要添加默认值 */\n setDynamicColumns(dynamicColumns);\n }\n const respList = get(respDataNew, fieldNames.list);\n setDataSource(isArray(respList) ? respList : []);\n setTotal(get(respDataNew, fieldNames.total));\n setLoading(false);\n } catch (error) {\n setLoading(false);\n if (props.onRequestErrorHandle) {\n props.onRequestErrorHandle(error);\n } else {\n void message.error(error.message);\n }\n }\n });\n\n fbaHooks.useEffectCustom(() => {\n const hasPagination = getPaginationStatus();\n if (initRequest !== false || !state.isInit) {\n if (hasPagination) {\n void onInnerRequest({\n [fieldNames.pageNo]: 1,\n [fieldNames.pageSize]: pageSize,\n ...props.initialValues,\n ...state.queryCondition,\n });\n } else {\n void onInnerRequest(props.initialValues);\n }\n } else {\n void actions.updateFilterCondition(props.initialValues);\n }\n void actions.updateInitStatus();\n }, []);\n\n useEffect(() => {\n if (asyncColumnRequest?.length) {\n for (let index = 0; index < asyncColumnRequest.length; index++) {\n const element = asyncColumnRequest[index];\n asyncColumnRequestResultRef.current = {\n ...asyncColumnRequestResultRef.current,\n [element.dataIndex]: { loading: true },\n };\n setAsyncColumnRequestResult(asyncColumnRequestResultRef.current);\n element\n .onRequest()\n .then((respData) => {\n asyncColumnRequestResultRef.current = {\n ...asyncColumnRequestResultRef.current,\n [element.dataIndex]: { loading: false, respData },\n };\n setAsyncColumnRequestResult(asyncColumnRequestResultRef.current);\n })\n .catch((error) => {\n console.error(error?.message);\n asyncColumnRequestResultRef.current = {\n ...asyncColumnRequestResultRef.current,\n [element.dataIndex]: { loading: false },\n };\n setAsyncColumnRequestResult(asyncColumnRequestResultRef.current);\n });\n }\n }\n }, [asyncColumnRequest]);\n\n const clearQueryCondition = hooks.useCallbackRef(async (values?: TPlainObject) => {\n await actions.resetFilterCondition();\n form.resetFields();\n if (values) {\n void actions.updateFilterCondition(values);\n form.setFieldsValue(values);\n }\n });\n\n const updateQueryCondition = hooks.useCallbackRef(async (values: TPlainObject) => {\n await actions.updateFilterCondition(values);\n form.setFieldsValue(values);\n });\n\n const getPaginationData = (pageNo: number, _pageSize: number) => {\n if (getPaginationStatus()) {\n return {\n [fieldNames.pageNo]: pageNo,\n [fieldNames.pageSize]: _pageSize || pageSize,\n };\n } else {\n return {\n [fieldNames.pageNo]: undefined,\n [fieldNames.pageSize]: undefined,\n };\n }\n };\n\n const onResetRequest = hooks.useCallbackRef(async (values?: TPlainObject) => {\n const params = {\n ...getPaginationData(1, state.queryCondition[fieldNames.pageSize]),\n ...props.initialValues,\n ...values,\n };\n await actions.resetFilterCondition(params);\n form.resetFields();\n if (values) {\n form.setFieldsValue(values);\n }\n void onInnerRequest(params);\n });\n\n const getRequestParams = hooks.useCallbackRef(() => {\n return {\n ...state.queryCondition,\n ...form.getFieldsValue(),\n };\n });\n\n const onOpenColumnFoldModal = hooks.useCallbackRef(() => {\n setColumnFoldOpen(true);\n });\n const onCloseColumnFoldModal = hooks.useCallbackRef(() => {\n setColumnFoldOpen(false);\n });\n\n const getEasyTableRef = () => {\n return {\n /**\n * 参数\n * 1. 不用添加已存在的搜索条件\n * 2. 此处可重新\n */\n onRequest: onInnerRequest,\n clearQueryCondition,\n updateQueryCondition,\n getRequestParams,\n onResetRequest,\n form,\n dataSource: respOriginalDataRef.current,\n getDataSource: () => {\n return respOriginalDataRef.current;\n },\n onFilterDataSource: (filterDataSource) => {\n setDataSource(filterDataSource);\n },\n onClearDataSource: () => {\n setTotal(0);\n setDataSource([]);\n },\n onUpdateDataSource: (dataList) => {\n setDataSource(dataList);\n respOriginalDataRef.current = dataList;\n props.onDataSourceChange?.(dataList);\n },\n columnFoldTriggerRender: (children) => {\n if (props.columnFoldConfig?.triggerType === 'drawer') {\n return cloneElement(children, {\n onClick: onOpenColumnFoldModal,\n });\n }\n return (\n <FoldOperateDropdown\n dataList={foldColumnList as TAny[]}\n onChange={onChangeFoldColumnList}\n cacheKey={columnFoldConfig?.cacheKey}\n initSelectedRowKeys={showFoldKeyList}\n >\n {children}\n </FoldOperateDropdown>\n );\n },\n onChangeTableColumns: (columns) => {\n setDynamicColumns(columns);\n },\n getTableColumns: () => {\n return dynamicColumns ? dynamicColumns : baseColumnsRef.current;\n },\n loading,\n };\n };\n\n useImperativeHandle(ref, () => {\n return getEasyTableRef();\n });\n\n const onSetPaginationStatus = (status: boolean) => {\n paginationStatusRef.current = status;\n };\n\n const onSetBaseColumns = (base) => {\n baseColumnsRef.current = base;\n };\n\n const onFormFinish = () => {\n const values = form.getFieldsValue();\n if (props.onFormFinish) {\n props.onFormFinish({\n ...values,\n ...getPaginationData(1, state.queryCondition[fieldNames.pageSize]),\n });\n } else {\n void onInnerRequest({\n ...values,\n ...getPaginationData(1, state.queryCondition[fieldNames.pageSize]),\n });\n }\n };\n const isFull = isUndefined(props.isFull) ? true : props.isFull;\n const className = classNames(\n 'fba-easy-table',\n {\n 'fba-easy-table-full': isFull,\n 'fba-easy-table-filter-fixed': props.filterFixed,\n 'fba-easy-table-pagination-fixed': props.paginationFixed,\n },\n props.className,\n );\n\n const paginationData = useMemo(() => {\n return {\n showSizeChanger: true,\n current: state.queryCondition[fieldNames.pageNo] || 1,\n pageSize: state.queryCondition[fieldNames.pageSize] || pageSize,\n total: total,\n showTotal: (total) => `共 ${total} 条记录`,\n ...props.pagination,\n };\n }, [fieldNames.pageNo, fieldNames.pageSize, pageSize, props.pagination, state.queryCondition, total]);\n\n const columnsMerge = (dynamicColumns ? dynamicColumns : baseColumnsRef.current) as TPlainObject[];\n\n let tableColumns = useMemo(() => {\n const tempList = columnsMerge\n .map((item) => {\n const { tooltip, tipsWrapperProps, title, hidden, isFold, ...otherProps } = item;\n if (hidden) return null;\n if (isFold && !showFoldKeyList.includes(item.dataIndex as string)) return null;\n if (typeof title === 'string' && tipsWrapperProps) {\n if (typeof tipsWrapperProps === 'string') {\n return {\n ...otherProps,\n title: (\n <TipsWrapper tipType=\"popover\" popoverProps={{ content: tipsWrapperProps }}>\n {title}\n </TipsWrapper>\n ),\n };\n }\n return {\n ...otherProps,\n title: <TipsWrapper {...tipsWrapperProps}>{title}</TipsWrapper>,\n };\n }\n if (typeof title === 'string' && !!tooltip) {\n return {\n ...otherProps,\n title: <TableTitleTooltip tooltip={tooltip} title={title}></TableTitleTooltip>,\n };\n }\n return item;\n })\n .filter(Boolean);\n return [...tempList] as TPlainObject[];\n }, [columnsMerge, showFoldKeyList]);\n\n const foldColumnList = columnsMerge.filter((item: TAny) => {\n return !item.hidden && item.isFold && item.dataIndex;\n });\n\n const onChangeFoldColumnList = (keyList: string[]) => {\n setShowFoldKeyList(keyList);\n columnFoldConfig?.onChange?.(keyList);\n };\n\n tableColumns = fbaHooks.useMemoCustom(() => {\n if (columnFoldConfig?.hidden) return tableColumns;\n const finalItem = tableColumns[tableColumns.length - 1];\n if (foldColumnList.length > 0 && tableColumns.length > 0) {\n const foldColumnTarget = tableColumns.find((item) => item['_isFoldColumn']);\n\n if (foldColumnTarget && finalItem.dataIndex !== foldColumnTarget.dataIndex) {\n foldColumnTarget.title = foldColumnTarget['_isFoldTitle'];\n foldColumnTarget['_isFoldColumn'] = false;\n }\n if (!finalItem['_isFoldColumn']) {\n finalItem['_isFoldTitle'] = finalItem['_isFoldTitle'] || finalItem.title;\n finalItem['_isFoldColumn'] = true;\n\n const triggerType = columnFoldConfig?.triggerType;\n\n finalItem.title = (\n <FlexLayout direction=\"horizontal\" fullIndex={0} style={{ alignItems: 'center' }}>\n <span>{finalItem.title}</span>\n <div style={{ padding: '0 5px 0 20px', display: 'flex' }}>\n {triggerType === 'drawer' ? (\n <IconWrapper\n onClick={onOpenColumnFoldModal}\n text={columnFoldConfig?.text}\n size=\"small\"\n icon={columnFoldConfig?.icon || <SvgHttpView svgPath=\"ionic/list-circle\" color=\"#868686\" />}\n hoverTips={columnFoldConfig?.hoverTipText || '字段列表'}\n style={{ padding: 0, margin: 0 }}\n />\n ) : (\n <FoldOperateDropdown\n dataList={foldColumnList as TAny[]}\n onChange={onChangeFoldColumnList}\n cacheKey={columnFoldConfig?.cacheKey}\n initSelectedRowKeys={showFoldKeyList}\n >\n <IconWrapper\n text={columnFoldConfig?.text}\n style={{ padding: 0, margin: 0 }}\n size=\"small\"\n icon={\n columnFoldConfig?.icon || <SvgHttpView svgPath=\"ionic/list-circle\" color=\"#868686\" />\n }\n />\n </FoldOperateDropdown>\n )}\n </div>\n </FlexLayout>\n );\n }\n }\n return tableColumns;\n }, [tableColumns, foldColumnList, columnFoldConfig]);\n\n tableColumns = useMemo(() => {\n if (!Object.keys(asyncColumnRequestResult)) return tableColumns;\n return tableColumns.map((item: TAny) => {\n const dataIndex = item.dataIndex as string;\n const result = asyncColumnRequestResult[dataIndex];\n if (dataIndex && result) {\n if (result.loading) {\n item.render = (value) => {\n return (\n <ButtonWrapper loading type=\"text\" loadingPosition=\"center\" removeGap>\n {value}\n </ButtonWrapper>\n );\n };\n } else if (item.asyncRender) {\n item.render = (value, record, index) => {\n return item.asyncRender?.(value, record, index, result.respData);\n };\n }\n }\n return item;\n });\n }, [tableColumns, asyncColumnRequestResult]);\n\n const onChange = hooks.useCallbackRef((page: number, pageSize: number) => {\n void onInnerRequest({\n [fieldNames.pageSize]: pageSize,\n [fieldNames.pageNo]: page,\n });\n props.pagination?.onChange?.(page, pageSize);\n });\n\n const getPaginationStatus = () => {\n return props.paginationFixed || paginationStatusRef.current;\n };\n\n // 分页参数发生变更\n hooks.useUpdateEffect(() => {\n if (props.paginationFixed) {\n void onInnerRequest({\n [fieldNames.pageSize]: state.queryCondition[fieldNames.pageSize] || pageSize,\n [fieldNames.pageNo]: 1,\n });\n } else {\n void onInnerRequest({\n [fieldNames.pageSize]: undefined,\n [fieldNames.pageNo]: undefined,\n });\n }\n }, [props.paginationFixed]);\n\n const wrapperClassName = classNames(\n 'fba-easy-table-wrapper',\n {\n 'fba-easy-table-wrapper-inline': props.isInline,\n },\n props.className,\n );\n\n const wrapperStyle: CSSProperties = {\n overflowY: props.filterFixed || props.paginationFixed ? 'hidden' : 'auto',\n ...props.style,\n };\n\n const children =\n typeof props.children === 'function' ? props.children(respOriginalDataRef.current) : props.children;\n\n return (\n <EasyTableContext.Provider\n value={{\n onSetBaseColumns,\n getEasyTableRef,\n modelKey,\n onRequest: onInnerRequest,\n tableDataSource: dataSource,\n tableTotal: total,\n loading,\n fieldNames,\n pageSize,\n onSetPaginationStatus,\n getPaginationStatus,\n onFormFinish,\n form,\n paginationFixed: props.paginationFixed || false,\n foldKeys: props.foldKeys || [],\n columns: tableColumns,\n initialValues: props.initialValues,\n }}\n >\n {props.paginationFixed ? (\n <div className={wrapperClassName} style={wrapperStyle}>\n <div className={className}>{children}</div>\n {total > 0 && (\n <div className=\"fba-easy-table-pagination\">\n <PaginationWrapper size=\"small\" {...paginationData} onChange={onChange} />\n </div>\n )}\n </div>\n ) : (\n <div className={wrapperClassName} style={props.style}>\n {children}\n </div>\n )}\n <FoldOperate\n dataList={foldColumnList as TAny[]}\n onClose={onCloseColumnFoldModal}\n open={columnFoldOpen}\n onChange={onChangeFoldColumnList}\n cacheKey={columnFoldConfig?.cacheKey}\n initSelectedRowKeys={showFoldKeyList}\n />\n </EasyTableContext.Provider>\n );\n});\n","import { DownOutlined, UpOutlined } from '@ant-design/icons';\nimport { isUndefined } from '@dimjs/lang';\nimport { classNames } from '@dimjs/utils';\nimport { TAny } from '@flatbiz/utils';\nimport { hooks } from '@wove/react';\nimport { FormInstance } from 'antd';\nimport { Children, CSSProperties, ReactElement, useContext, useMemo, useState } from 'react';\nimport { isFragment } from 'react-is';\nimport { BlockLayout } from '../block-layout';\nimport { ButtonWrapper, ButtonWrapperProps } from '../button-wrapper';\nimport { EasyForm, EasyFormProps } from '../easy-form';\nimport { fbaHooks } from '../fba-hooks';\nimport { FormGrid } from '../form-grid';\nimport { FormOperateColProps } from '../form-grid/form-operate-col';\nimport { FormRowProps } from '../form-grid/form-row';\nimport { EasyTableContext } from './context';\nimport { easyTableModel } from './model';\n\nexport type EasyTableFilterProps = {\n children: ReactElement | ReactElement[] | ((form: FormInstance) => ReactElement);\n /** isPure = true时无效 */\n filterOperate?: (form: FormInstance) => FormOperateColProps;\n /** 是否为纯净模式(查询条件布局是否自定义), */\n isPure?: boolean;\n /** 查询按钮配置 */\n queryButtonProps?: Omit<ButtonWrapperProps, 'onClick'> & { text?: string };\n /** 重置按钮配置 */\n resetButtonProps?: Omit<ButtonWrapperProps, 'onClick'> & { text?: string };\n /**\n * 网格布局设置\n * default = { xs: 24, sm: 12, md: 12, lg: 8, xl: 8, xxl: 6 };\n * small = { xs: 24, sm: 8, md: 8, lg: 6, xl: 6, xxl: 6 };\n */\n formGridSize?: FormRowProps['gridSize'];\n /**\n * @deprecated已过期,使用 easyFormProps.className 配置\n */\n formClassName?: string;\n /**\n * @deprecated已过期,使用 easyFormProps.style 配置\n */\n formStyle?: CSSProperties;\n /** filter Form 外层 BlockLayout style */\n filterWrapperStyle?: CSSProperties;\n /** filter Form 外层 BlockLayout className */\n filterWrapperClassName?: string;\n /**\n * 自定义 filterOperate.rightList 后 默认【查询、重置】按钮处理逻辑\n * 1. cover:覆盖内部查询重置按钮(默认值)\n * 2. beforeAppend:添加到【查询重置】按钮前面\n * 3. afterAppend:添加到【查询重置】按钮后面\n *\n * 如果想隐藏【查询、重置】按钮中的某一个,可设置 queryButtonProps.hidden、resetButtonProps.hidden\n */\n rightOperateAreaAppendType?: 'cover' | 'beforeAppend' | 'afterAppend';\n /** 默认重启按钮触发请求,默认值:true */\n defaultResetButtonTriggerRequest?: boolean;\n easyFormProps?: Omit<\n EasyFormProps,\n 'isPure' | 'column' | 'forceColumn' | 'width' | 'gridGutter' | 'children'\n >;\n};\n\n/**\n * 过滤条件\n *```\n * 1. 用法1\n * -- 默认网格布局 规则:{ xs: 24, sm: 12, md: 12, lg: 8, xl: 8, xxl: 6 }\n * <EasyTableFilter>\n * <FormItemWrapper name=\"field1\" label=\"条件1\">xxx</FormItemWrapper>\n * </EasyTableFilter>\n *\n * -- 自定义网格布局 使用 FormGrid.Col 组件包装 FormItemWrapper\n * <EasyTableFilter>\n * <FormGrid.Col span={12}><FormItemWrapper name=\"field1\" label=\"条件1\">xxx</FormItemWrapper></FormGrid.Col>\n * </EasyTableFilter>\n *\n * -- children 可为 function\n * <EasyTableFilter>\n * {(form) => {\n * return <FormItemWrapper name=\"field1\" label=\"条件1\">xxx</FormItemWrapper>\n * }}\n * </EasyTableFilter>\n *\n * 2. 用户2(自定义布局)\n * EasyTableFilter设置 isPure = true,FormItem无布局规则\n * 3. EasyTableFilter中内置了 Form 标签,当children为函数时,可获取form实例\n * 4. 默认布局下,可通过设置 filterOperate 设置操作按钮\n * 5. Filter 子节点包含 hidden = true 会被忽略\n * 6. 如果想隐藏【查询、重置】按钮中的某一个,可设置 queryButtonProps.hidden、resetButtonProps.hidden\n * 7. 通过设置 defaultResetButtonTriggerRequest,默认重启按钮触发请求,默认值:true\n * 8. EasyTableFilter 子节点可使用 FormItemWrapper,FormItemWrapper中可配置label宽度等\n *```\n */\nexport const EasyTableFilter = (props: EasyTableFilterProps) => {\n const screenType = fbaHooks.useResponsivePoint() || 'md';\n const ctx = useContext(EasyTableContext);\n const {\n queryButtonProps,\n resetButtonProps,\n filterOperate,\n formClassName = '',\n defaultResetButtonTriggerRequest,\n filterWrapperStyle,\n filterWrapperClassName,\n rightOperateAreaAppendType,\n easyFormProps,\n } = props;\n const {\n modelKey,\n foldKeys,\n fieldNames,\n onRequest,\n pageSize,\n getPaginationStatus,\n initialValues,\n form,\n onFormFinish,\n } = ctx;\n const children = typeof props.children === 'function' ? props.children(form) : props.children;\n\n const rightOperateAreaAppendTypeFt = rightOperateAreaAppendType || 'cover';\n const childrens = useMemo(() => {\n if (isFragment(children)) {\n return Children.toArray((children as ReactElement).props.children) as ReactElement[];\n } else {\n return Children.toArray(children) as ReactElement[];\n }\n }, [children]);\n\n const [openFold, setOpenFold] = useState(false);\n\n const [state, actions] = easyTableModel(modelKey).useStore();\n\n const onReset = hooks.useCallbackRef(async () => {\n await actions.resetFilterCondition();\n form.resetFields();\n if (isUndefined(defaultResetButtonTriggerRequest) || defaultResetButtonTriggerRequest) {\n await form.validateFields();\n if (getPaginationStatus()) {\n onRequest({\n [fieldNames.pageNo]: 1,\n [fieldNames.pageSize]: pageSize,\n ...initialValues,\n });\n } else {\n onRequest(initialValues);\n }\n }\n });\n\n const formRowChildren = useMemo(() => {\n const defaultRightList = [\n !queryButtonProps?.hidden ? (\n <ButtonWrapper key=\"1\" type=\"primary\" htmlType=\"submit\" {...queryButtonProps}>\n {queryButtonProps?.text || '查询'}\n </ButtonWrapper>\n ) : null,\n !resetButtonProps?.hidden ? (\n <ButtonWrapper key=\"2\" onClick={onReset} {...resetButtonProps}>\n {resetButtonProps?.text || '重置'}\n </ButtonWrapper>\n ) : null,\n ].filter(Boolean);\n const customFormOperateCol = filterOperate?.(form);\n const customRightList = customFormOperateCol?.rightList;\n const leftList: TAny[] = customFormOperateCol?.leftList || [];\n\n let rightList: TAny[] = defaultRightList;\n if (customRightList) {\n if (rightOperateAreaAppendTypeFt === 'afterAppend') {\n rightList = [...defaultRightList, ...customRightList];\n } else if (rightOperateAreaAppendTypeFt === 'beforeAppend') {\n rightList = [...customRightList, ...defaultRightList];\n } else {\n rightList = customRightList;\n }\n }\n if (foldKeys.length > 0) {\n const changeFolditem = (\n <ButtonWrapper\n type=\"link\"\n key=\"fold-trigger\"\n style={{ padding: '0' }}\n onClick={() => {\n setOpenFold(!openFold);\n }}\n >\n {openFold ? (\n <span>\n 收起\n <UpOutlined style={{ marginLeft: 3, fontSize: 12 }} />\n </span>\n ) : (\n <span>\n 展开\n <DownOutlined style={{ marginLeft: 3, fontSize: 12 }} />\n </span>\n )}\n </ButtonWrapper>\n );\n\n if (rightList.length > 0 || leftList.length === 0) {\n rightList.push(changeFolditem);\n } else if (leftList?.length > 0) {\n leftList.push(changeFolditem);\n }\n }\n\n return childrens\n .map((item, index) => {\n if (!openFold && foldKeys.find((keyItem) => `.$${keyItem}` === item.key)) return null;\n if (item.props['hidden']) return null;\n if (item.type['domTypeName'] === 'FormCol') return item;\n return <FormGrid.Col key={index}>{item}</FormGrid.Col>;\n })\n .filter(Boolean)\n .concat(\n <FormGrid.OperateCol key={999} {...customFormOperateCol} leftList={leftList} rightList={rightList} />,\n );\n }, [\n childrens,\n filterOperate,\n foldKeys,\n form,\n onReset,\n openFold,\n queryButtonProps,\n resetButtonProps,\n rightOperateAreaAppendTypeFt,\n ]);\n\n const labelAlign = screenType === 'xs' ? 'left' : easyFormProps?.labelAlign || 'right';\n\n return (\n <BlockLayout\n className={classNames('easy-table-filter', filterWrapperClassName)}\n style={filterWrapperStyle}\n >\n <EasyForm\n form={form}\n autoComplete=\"off\"\n onFinish={onFormFinish}\n initialValues={{\n ...initialValues,\n ...state.queryCondition,\n }}\n className={formClassName}\n style={props.formStyle}\n isPure={true}\n labelWidth=\"80\"\n formItemGap=\"15\"\n {...easyFormProps}\n labelAlign={labelAlign}\n >\n {props.isPure ? (\n children\n ) : (\n <FormGrid.Row gutter={[15, 0]} gridSize={props.formGridSize}>\n {formRowChildren}\n </FormGrid.Row>\n )}\n </EasyForm>\n </BlockLayout>\n );\n};\n","import { useContext } from 'react';\nimport { EasyTableContext } from './context';\n\n/**\n * 在 EasyTable子组件内才可使用\n * @returns\n */\nexport const useEasyTable = () => {\n const ctx = useContext(EasyTableContext);\n return ctx.getEasyTableRef();\n};\n\n/**\n * @deprecated 已过时 @4.5.0版本移除,请使用 useEasyTable\n * @returns\n */\nexport const useEasyTablRef = () => {\n const ctx = useContext(EasyTableContext);\n return {\n current: ctx.getEasyTableRef(),\n };\n};\n","import { classNames } from '@dimjs/utils';\nimport { getUuid, isMacEnv, isUndefinedOrNull, TAny, TPlainObject } from '@flatbiz/utils';\nimport { hooks } from '@wove/react';\nimport { Table, TableProps } from 'antd';\nimport { CSSProperties, Fragment, ReactElement, useContext, useMemo } from 'react';\nimport { BlockLayout } from '../block-layout';\nimport { fbaHooks } from '../fba-hooks';\nimport { SmallSelect } from '../pagination-wrapper/select';\nimport { TableScrollbar } from '../table-scrollbar';\nimport { EasyTableContext } from './context';\nimport { easyTableModel } from './model';\nimport { TEasyTableTableColumn } from './type';\n\nexport type EasyTableTableProps<T> = Omit<\n TableProps<TAny>,\n 'dataSource' | 'loading' | 'rowKey' | 'columns'\n> & {\n children?: ReactElement | ReactElement[];\n /**\n * 表格行 key 的取值,\n * ```\n * 如果 rowKey 为string类型\n * 1. 组件会判断表格列表数据第一条是否存在当前rowKey对象的数据,如果没有组件内部会动态添加唯一值\n * 2. 基于上一条的逻辑,如果表格数据没有唯一值,可指定 rowKey 值为table数据中不存在的字段名,例如:rowKey=\"_uid\"\n * 3. 如果触发上述逻辑,表格数据中会多出rowKey对应的键值对数据\n * ```\n */\n rowKey: TableProps<TAny>['rowKey'];\n /** table Form 外层 SimpleLayout className */\n tableWrapperStyle?: CSSProperties;\n /** table Form 外层 SimpleLayout className */\n tableWrapperClassName?: string;\n /**\n * ```\n * 如果存在动态字段\n * 1. 初始阶段,通过 EasyTable.serviceConfig.dynamicColumsAdapter 实现\n * 2. 非初始阶段,通过 EasyTableRef.onChangeTableColumns 实现\n * 3. demo: https://fex.qa.tcshuke.com/docs/admin/main/table/easy-table?tabKey=key7\n * ```\n */\n columns: TEasyTableTableColumn<T>[];\n /**\n * 数据加载与表格初始化渲染 是否同步\n * @version 4.4.6\n * ```\n * 1. true:获取数据后再初始化渲染表格(可用于实现表格中defaultXxxx相关功能的使用)\n * ```\n */\n isSync?: boolean;\n /**\n * 空效果显示尺寸,默认值:small\n * @version 4.4.6\n */\n emptyShowSize?: 'small' | 'large';\n};\n\n/**\n * 表格渲染\n * @param props\n * ```\n * 1. 继承了 TableProps 可设置antd table功能\n * 2. 分页功能已内置处理,不调用 onChange\n * ```\n */\nexport const EasyTableTable = <T extends TPlainObject>(props: EasyTableTableProps<T>) => {\n const ctx = useContext(EasyTableContext);\n const { children, rowKey, pagination, isSync, ...otherProps } = props;\n\n const {\n modelKey,\n fieldNames,\n onRequest,\n tableDataSource,\n pageSize,\n tableTotal,\n loading,\n paginationFixed,\n onSetPaginationStatus,\n } = ctx;\n const [state] = easyTableModel(modelKey).useStore();\n\n fbaHooks.useEffectCustom(() => {\n /** 获取初始化 columns 数据 */\n ctx.onSetBaseColumns((props.columns || []) as TEasyTableTableColumn<TPlainObject>[]);\n // props.columns 不能放在 useEffect 监听参数中,因为用户传值的columns每次都是新的数组实例,会导致死循环\n }, [props.columns]);\n\n fbaHooks.useEffectCustom(() => {\n onSetPaginationStatus(pagination !== false);\n }, [pagination]);\n\n // 分页参数发生变更\n hooks.useUpdateEffect(() => {\n if (!paginationFixed) {\n if (pagination !== false) {\n onRequest({\n [fieldNames.pageSize]: state.queryCondition[fieldNames.pageSize] || pageSize,\n [fieldNames.pageNo]: 1,\n });\n } else {\n onRequest({\n [fieldNames.pageSize]: undefined,\n [fieldNames.pageNo]: undefined,\n });\n }\n }\n }, [pagination]);\n\n const tablePaginationData = useMemo(() => {\n if (paginationFixed || pagination === false) return false;\n return {\n showSizeChanger: true,\n current: state.queryCondition[fieldNames.pageNo] || 1,\n pageSize: state.queryCondition[fieldNames.pageSize] || pageSize,\n total: tableTotal,\n showTotal: (total) => `共 ${total} 条记录`,\n ...props.pagination,\n selectComponentClass: SmallSelect,\n };\n }, [\n fieldNames.pageNo,\n fieldNames.pageSize,\n pageSize,\n pagination,\n paginationFixed,\n props.pagination,\n state.queryCondition,\n tableTotal,\n ]);\n\n const onChangePage: TableProps<TAny>['onChange'] = (pagination, filters, sorter, extra) => {\n if (extra.action === 'paginate' && tablePaginationData) {\n onRequest({\n [fieldNames.pageSize]: pagination.pageSize,\n [fieldNames.pageNo]: pagination.current,\n });\n } else {\n props.onChange?.(pagination, filters, sorter, extra);\n }\n };\n\n const dataSource = useMemo(() => {\n if (!tableDataSource) return undefined;\n if (tableDataSource.length === 0) {\n return [];\n }\n if (typeof rowKey === 'string' && isUndefinedOrNull(tableDataSource[0][rowKey])) {\n return tableDataSource.map((item) => {\n item[rowKey] = getUuid();\n return item;\n });\n }\n return tableDataSource;\n }, [tableDataSource, rowKey]);\n\n const tableRender = () => {\n if (isSync && !dataSource) {\n return (\n <Fragment>\n {children}\n <Table\n key=\"1\"\n size=\"small\"\n scroll={{ x: 'max-content' }}\n bordered\n rowKey={rowKey as TAny}\n columns={ctx.columns}\n loading={loading}\n />\n </Fragment>\n );\n }\n if (isMacEnv()) {\n return (\n <Fragment>\n {children}\n <Table\n key=\"2\"\n size=\"small\"\n scroll={{ x: 'max-content' }}\n bordered\n {...otherProps}\n columns={ctx.columns}\n pagination={tablePaginationData}\n rowKey={rowKey}\n onChange={onChangePage}\n loading={loading}\n dataSource={dataSource}\n />\n </Fragment>\n );\n }\n return (\n <Fragment>\n {children}\n <TableScrollbar>\n <Table\n key=\"3\"\n size=\"small\"\n scroll={{ x: 'max-content' }}\n bordered\n {...otherProps}\n columns={ctx.columns}\n pagination={tablePaginationData}\n rowKey={rowKey}\n onChange={onChangePage}\n loading={loading}\n dataSource={dataSource}\n />\n </TableScrollbar>\n </Fragment>\n );\n };\n\n return (\n <BlockLayout\n className={classNames(\n 'easy-table-table',\n { 'ett-empty-show-small': props.emptyShowSize === 'small' },\n props.tableWrapperClassName,\n )}\n style={props.tableWrapperStyle}\n >\n {tableRender()}\n </BlockLayout>\n );\n};\n","import { fbaUtils } from '../fba-utils';\nimport { EasyTable as EasyTableInner } from './easy-table';\nimport { EasyTableFilter } from './filter';\nimport { useEasyTable, useEasyTablRef } from './hooks';\nimport { EasyTableTable } from './table';\n\n/**\n * 对 查询条件+表格数据 进行深度封装,内置数据交互处理\n * ```\n * Demo https://fex.qa.tcshuke.com/docs/admin/main/crud/easy-table\n *\n * 1. 废弃modelKey参数\n * 2. 如果需要在路由跳转回退中缓存查询条件,设置cacheSwitch=true;如果存在多个EasyTable缓存情况可设置cacheSwitch为自定义字符串\n * 3. 需要获取查询条件、主动发起请求等可通过ref、useEasyTable操作\n * 4. 可通过属性 initRequest 设置初始化是否请求数据\n * 5. 可通过属性 fieldNames 来设置自定义变量,默认值为:list、total、pageNo、pageSize\n * 6. isFull=true,设置【在父节点高度下,上下铺满】(默认值:true)\n * 7. filterFixed=true,设置查询条件固定,不随滚动条滚动\n * 8. paginationFixed=true,可设置分页条件在底部固定,不随滚动条滚动\n * 9. foldKeys=string[],查询条件展开、收起,被收起数组内容为EasyTable.Filter 子节点key值\n * 10. windows环境下,会在EasyTable.Table外部包装一下 TableScrollbar,提高windows下table左右滚动体验\n * 11. 可实现部分字段折叠,手动选择显示,将EasyTable.Table columns中isFold属性设为true,可通过EasyTable columnFoldConfig配置属性,demo(https://fex.qa.tcshuke.com/docs/admin/main/crud/demo1)\n * 12. 通过asyncColumnRequest、asyncRender配合使用可实现表格列数据接口渲染(demo:https://fex.qa.tcshuke.com/docs/admin/main/crud/easy-table)\n * ```\n */\nexport const EasyTable = fbaUtils.attachPropertiesToComponent(EasyTableInner, {\n /**\n * 过滤条件\n *```\n * 1. 用法1\n * -- 默认网格布局 规则:{ xs: 24, sm: 12, md: 12, lg: 8, xl: 8, xxl: 6 }\n * <EasyTable.Filter>\n * <FormItemWrapper name=\"field1\" label=\"条件1\">xxx</FormItemWrapper>\n * </EasyTable.Filter>\n *\n * -- 自定义网格布局 使用 FormGrid.Col 组件包装 FormItemWrapper\n * <EasyTable.Filter>\n * <FormGrid.Col span={12}><FormItemWrapper name=\"field1\" label=\"条件1\">xxx</FormItemWrapper></FormGrid.Col>\n * </EasyTable.Filter>\n *\n * -- children 可为 function\n * <EasyTable.Filter>\n * {(form) => {\n * return <FormItemWrapper name=\"field1\" label=\"条件1\">xxx</FormItemWrapper>\n * }}\n * </EasyTable.Filter>\n * 2. 用户2(自定义布局)\n * EasyTable.Filter设置 isPure = true,FormItem无布局规则\n * 3. EasyTable.Filter中内置了 Form 标签,当children为函数时,可获取form实例\n * 4. 默认布局下,可通过设置 filterOperate 设置操作按钮\n * 5. Filter 子节点包含 hidden = true 会被忽略\n * 6. 如果想隐藏【查询、重置】按钮中的某一个,可设置 queryButtonProps.hidden、resetButtonProps.hidden\n * 7. EasyTableFilter 子节点可使用 FormItemWrapper,FormItemWrapper中可配置label宽度等\n * 8. 通过easyFormProps属性可整体控制子节点FormItem布局\n *```\n */\n Filter: EasyTableFilter,\n /**\n * 表格渲染\n * @param props\n * ```\n * 1. 继承了 TableProps 可设置antd table功能\n * 2. 分页功能已内置处理,不调用 onChange\n * ```\n */\n Table: EasyTableTable,\n /**\n * @deprecated 已过时 4.3.0版本移除,请使用 useEasyTable\n */\n useEasyTablRef: useEasyTablRef,\n\n /** 在 EasyTable子组件内才可使用 */\n useEasyTable: useEasyTable,\n});\n"],"names":["EasyTableContext","createContext","onRequest","noop","tableList","getEasyTableRef","FoldOperate","props","_useState","useState","initSelectedRowKeys","selectedRowKeys","setSelectedRowKeys","rowSelection","type","onChange","cacheKey","localStorageCache","set","keys","columns","title","dataIndex","render","value","recrd","_jsx","Fragment","children","Drawer","open","onClose","width","styles","body","padding","Table","bordered","size","rowKey","pagination","scroll","x","dataSource","dataList","FoldOperateDropdown","content","Checkbox","Group","defaultValue","style","display","flexDirection","map","item","label","onChangeAll","e","target","checked","Popover","length","placement","overlayClassName","defaultState","queryCondition","isInit","_EasyTableModel","actions","updateFilterCondition","params","state","_extends","resetFilterCondition","updateInitStatus","easyTableModels","easyTableModel","key","Model","EasyTable","forwardRef","ref","_props$initialPaginat","setDataSource","_useState2","total","setTotal","_useState3","loading","setLoading","easyTableId","_hooks","useId","undefined","columnFoldConfig","asyncColumnRequest","_useState4","columnFoldOpen","setColumnFoldOpen","asyncColumnRequestResultRef","useRef","_useState5","asyncColumnRequestResult","setAsyncColumnRequestResult","_useState6","_cacheValue$keys","cacheValue","get","cacheKeyList","_isArray","filter","_isString","initSelectedKeys","showFoldKeyList","setShowFoldKeyList","modelKey","useMemo","cacheSwitch","location","pathname","_easyTableModel$useSt","useStore","pageSize","initialPaginationParams","initRequest","paginationStatusRef","respOriginalDataRef","baseColumnsRef","_useState7","dynamicColumns","setDynamicColumns","fieldNames","list","pageNo","_Form$useForm","Form","useForm","form","onInnerRequest","useCallbackRef","Promise","$return","$error","allState","_props$serviceConfig","requestParamsAdapter","requestResultAdapter","dynamicColumsAdapter","paramsNew","respData","respDataNew","_dynamicColumns","respList","$Try_1_Post","$boundEx","$Try_1_Catch","error","onRequestErrorHandle","message","breforeRequest","$Try_2_Post","$If_3","call","this","bind","$Try_2_Catch","resolve","then","$await_4","$await_5","cloneState","serviceConfig","$await_6","current","onDataSourceChange","_get","fbaHooks","useEffectCustom","hasPagination","getPaginationStatus","_extends2","initialValues","useEffect","_loop","_extends3","element","index","_extends4","catch","_extends5","console","clearQueryCondition","values","$await_7","resetFields","setFieldsValue","updateQueryCondition","$await_8","getPaginationData","_pageSize","_ref","_ref2","onResetRequest","$await_9","getRequestParams","getFieldsValue","onOpenColumnFoldModal","onCloseColumnFoldModal","getDataSource","onFilterDataSource","filterDataSource","onClearDataSource","onUpdateDataSource","columnFoldTriggerRender","_props$columnFoldConf","triggerType","cloneElement","onClick","foldColumnList","onChangeFoldColumnList","onChangeTableColumns","getTableColumns","useImperativeHandle","onSetPaginationStatus","status","onSetBaseColumns","base","onFormFinish","isFull","_isUndefined","className","_classNames","filterFixed","paginationFixed","paginationData","showSizeChanger","showTotal","columnsMerge","tableColumns","tempList","tooltip","tipsWrapperProps","hidden","isFold","otherProps","_objectWithoutPropertiesLoose","_excluded","includes","TipsWrapper","tipType","popoverProps","TableTitleTooltip","Boolean","concat","keyList","useMemoCustom","finalItem","foldColumnTarget","find","_jsxs","FlexLayout","direction","fullIndex","alignItems","IconWrapper","text","icon","SvgHttpView","svgPath","color","hoverTips","hoverTipText","margin","Object","result","ButtonWrapper","loadingPosition","removeGap","asyncRender","record","page","_onInnerRequest","_props$pagination","useUpdateEffect","_onInnerRequest2","_onInnerRequest3","wrapperClassName","isInline","wrapperStyle","overflowY","Provider","tableDataSource","tableTotal","foldKeys","PaginationWrapper","EasyTableFilter","screenType","useResponsivePoint","ctx","useContext","queryButtonProps","resetButtonProps","filterOperate","_props$formClassName","formClassName","defaultResetButtonTriggerRequest","filterWrapperStyle","filterWrapperClassName","rightOperateAreaAppendType","easyFormProps","rightOperateAreaAppendTypeFt","childrens","isFragment","Children","toArray","openFold","setOpenFold","onReset","$await_2","validateFields","$await_3","$If_1","formRowChildren","defaultRightList","htmlType","customFormOperateCol","customRightList","rightList","leftList","changeFolditem","_UpOutlined","marginLeft","fontSize","_DownOutlined","push","keyItem","FormGrid","Col","OperateCol","labelAlign","BlockLayout","EasyForm","autoComplete","onFinish","formStyle","isPure","labelWidth","formItemGap","Row","gutter","gridSize","formGridSize","useEasyTable","useEasyTablRef","EasyTableTable","isSync","_onRequest","_onRequest2","tablePaginationData","selectComponentClass","SmallSelect","onChangePage","filters","sorter","extra","action","_onRequest3","isUndefinedOrNull","getUuid","tableRender","isMacEnv","TableScrollbar","emptyShowSize","tableWrapperClassName","tableWrapperStyle","fbaUtils","attachPropertiesToComponent","EasyTableInner","Filter"],"mappings":"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"}
@@ -3,5 +3,5 @@ import './../fba-hooks/index.css';
3
3
  import './../icon-wrapper/index.css';
4
4
  import './index.css';
5
5
  /*! @flatjs/forge MIT @flatbiz/antd */
6
- import{classNames as n}from"@dimjs/utils/cjs/class-names";import r from"@ant-design/icons/es/icons/CloseOutlined";import e from"@ant-design/icons/es/icons/CheckOutlined";import{_ as i}from"../_rollupPluginBabelHelpers-a0769acd.js";import{isArray as o}from"@dimjs/lang/cjs/is-array";import{isNumber as t}from"@dimjs/lang/cjs/is-number";import{isString as l}from"@dimjs/lang/cjs/is-string";import a from"@ant-design/icons/es/icons/EditOutlined";import{isUndefinedOrNull as c}from"@flatbiz/utils";import{Space as s}from"antd";import{useState as u,useContext as f,useRef as d,useEffect as m,isValidElement as v}from"react";import{E as p}from"../context-25d0b686.js";import{fbaHooks as h}from"../fba-hooks/index.js";import{IconWrapper as C}from"../icon-wrapper/index.js";import{jsx as b,jsxs as j}from"react/jsx-runtime";import"@wove/react/cjs/hooks";import"../use-responsive-point-21b8c601.js";import"@dimjs/lang/cjs/is-undefined";var g=function g(k){var y=k.value,I=k.onChange,w=k.viewRender,E=k.placeholderValue,P=E===void 0?"-":E,x=k.editRender,z=k.isEditFull,O=k.onClickEditIconPre,R=k.onClickConfirmIconPre,N=k.iconConfig,T=k.onEditCallback,_=k.onConfirmCallback;var B=u(false),F=B[0],H=B[1];var V=f(p);var q=d(y);var A=function(){if(V.isCtx){return k.showEditableIcon===undefined?V.showEditableIcon:k.showEditableIcon}return k.showEditableIcon===undefined?true:k.showEditableIcon}();var D=function(){if(V.isCtx){return k.editable===undefined?V.editable:k.editable}return k.editable||false}();var G=h.useThemeToken();m((function(){H(D)}),[D]);var J=function n(){return new Promise((function(n,r){if(O){return Promise.resolve(O(y)).then(function(n){try{return e.call(this)}catch(n){return r(n)}}.bind(this),r)}function e(){q.current=y;H(true);T==null?void 0:T(y);return n()}return e.call(this)}))};var K=N!=null&&N.editIcon?N.editIcon({onClick:J}):b(C,{size:"small",icon:b(a,{}),onClick:J});if(!F){var L=(w?w(k.value):k.value)||P;if(l(L)||t(L)||c(L)||v(L)){if(!A){return L}return j(s,{size:8,children:[b("span",{children:L}),K]})}console.warn("对象作为React子对象无效",L)}var M=function n(){if(y!==q.current){I==null?void 0:I(q.current)}H(false)};var Q=function n(r){var e=r;if(typeof r==="object"&&r!==null&&!o(r)&&r.target){var i;var a=(i=r.target)==null?void 0:i.value;if(l(a)||t(a)||c(a)){var s;e=(s=r.target)==null?void 0:s.value}}I==null?void 0:I(e)};var S=function n(){return new Promise((function(n,r){if(R){return Promise.resolve(R(y,q.current)).then(function(n){try{return e.call(this)}catch(n){return r(n)}}.bind(this),r)}function e(){H(false);_==null?void 0:_(y,q.current);return n()}return e.call(this)}))};var U=typeof x==="function"?x({value:y,onChange:Q}):x;if(!A){return b(U.type,i({value:y,onChange:Q},U.props))}var W=N!=null&&N.confirmIcon?N.confirmIcon({onClick:S}):b(C,{size:"small",icon:b(e,{style:{color:G.colorPrimary}}),onClick:S});var X=N!=null&&N.cancelIcon?N.cancelIcon({onClick:M}):b(C,{size:"small",icon:b(r,{style:{color:G.colorPrimary}}),onClick:M});return j(s,{direction:"horizontal",size:12,style:k.style,className:n("editable-field",{"editable-field-full":z},k.className),children:[b(U.type,i({value:y,onChange:Q},U.props)),W,X]})};export{g as EditableField};
6
+ import{classNames as n}from"@dimjs/utils/cjs/class-names";import{_ as r}from"../_rollupPluginBabelHelpers-a0769acd.js";import e from"@ant-design/icons/es/icons/CloseOutlined";import i from"@ant-design/icons/es/icons/CheckOutlined";import{isNumber as o}from"@dimjs/lang/cjs/is-number";import{isString as t}from"@dimjs/lang/cjs/is-string";import{isArray as l}from"@dimjs/lang/cjs/is-array";import a from"@ant-design/icons/es/icons/EditOutlined";import{isUndefinedOrNull as s}from"@flatbiz/utils";import{Space as c}from"antd";import{useState as u,useContext as d,useRef as f,useMemo as m,useEffect as v,Fragment as h}from"react";import{E as p}from"../context-62955871.js";import{fbaHooks as C}from"../fba-hooks/index.js";import{IconWrapper as b}from"../icon-wrapper/index.js";import{jsx as y,jsxs as j}from"react/jsx-runtime";import"@wove/react/cjs/hooks";import"../use-responsive-point-21b8c601.js";import"@dimjs/lang/cjs/is-undefined";var g=function g(w){var E=w.value,k=w.onChange,I=w.viewRender,x=w.placeholderValue,P=x===void 0?"-":x,z=w.editRender,O=w.isEditFull,N=w.onClickEditIconPre,R=w.onClickConfirmIconPre,T=w.iconConfig,_=w.onEditCallback,B=w.onConfirmCallback,F=w.showEditable;var H=u(F),V=H[0],q=H[1];var A=d(p);var D=f(E);var G=w.showEditableIcon===undefined?true:w.showEditableIcon;var J=function(){if(A.isCtx){return w.showEditableIcon===undefined?A.showEditableIcon:G}return G}();var K=m((function(){if(A.isCtx){return w.readonly===undefined?A.readonly:w.readonly}return w.readonly}),[A.isCtx,A.readonly,w.readonly]);v((function(){if(A.isCtx){q(w.showEditable===undefined?A.showEditable:w.showEditable)}else{q(w.showEditable)}}),[A.showEditable,A.isCtx,w.showEditable]);var L=C.useThemeToken();var M=function n(){return new Promise((function(n,r){if(N){return Promise.resolve(N(E)).then(function(n){try{return e.call(this)}catch(n){return r(n)}}.bind(this),r)}function e(){D.current=E;q(true);_==null?void 0:_(E);return n()}return e.call(this)}))};var Q=T!=null&&T.editIcon?T.editIcon({onClick:M}):y(b,{size:"small",icon:y(a,{}),onClick:M});var S=function n(){if(E!==D.current){k==null?void 0:k(D.current)}q(false)};var U=function n(r){var e=r;if(typeof r==="object"&&r!==null&&!l(r)&&r.target){var i;var a=(i=r.target)==null?void 0:i.value;if(t(a)||o(a)||s(a)){var c;e=(c=r.target)==null?void 0:c.value}}k==null?void 0:k(e)};var W=function n(){return new Promise((function(n,r){if(R){return Promise.resolve(R(E,D.current)).then(function(n){try{return e.call(this)}catch(n){return r(n)}}.bind(this),r)}function e(){q(false);B==null?void 0:B(E,D.current);return n()}return e.call(this)}))};var X=T!=null&&T.confirmIcon?T.confirmIcon({onClick:W}):y(b,{size:"small",icon:y(i,{style:{color:L.colorPrimary}}),onClick:W});var Y=T!=null&&T.cancelIcon?T.cancelIcon({onClick:S}):y(b,{size:"small",icon:y(e,{style:{color:L.colorPrimary}}),onClick:S});var Z=typeof z==="function"?z({value:E,onChange:U}):z;var $=(I?I(w.value):w.value)||P;if(K){return y(h,{children:$})}if(!V){if(!J){return $}return j(c,{size:8,children:[y("span",{children:$}),Q]})}if(!J){return y(Z.type,r({value:E,onChange:U},Z.props))}return j(c,{direction:"horizontal",size:12,style:w.style,className:n("editable-field",{"editable-field-full":O},w.className),children:[y(Z.type,r({value:E,onChange:U},Z.props)),X,Y]})};export{g as EditableField};
7
7
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["@flatbiz/antd/src/editable-field/editable-field.tsx"],"sourcesContent":["import { CheckOutlined, CloseOutlined, EditOutlined } from '@ant-design/icons';\nimport { isArray, isNumber, isString } from '@dimjs/lang';\nimport { classNames } from '@dimjs/utils';\nimport { isUndefinedOrNull, TAny } from '@flatbiz/utils';\nimport { Space } from 'antd';\nimport {\n CSSProperties,\n isValidElement,\n ReactElement,\n ReactNode,\n useContext,\n useEffect,\n useRef,\n useState,\n} from 'react';\nimport { EditableFieldContext } from '../editable-field-provider/context';\nimport { fbaHooks } from '../fba-hooks';\nimport { IconWrapper } from '../icon-wrapper';\n\nimport './style.less';\n\nexport interface EditableFieldProps {\n className?: string;\n style?: CSSProperties;\n editRender: ReactElement | ((data: { value?: TAny; onChange?: (data?: TAny) => void }) => ReactElement);\n viewRender?: (value?: TAny) => ReactNode;\n value?: TAny;\n onChange?: (data?: TAny) => void;\n placeholderValue?: string;\n /** edit 区域是否铺满,showEditableIcon=false 无效 */\n isEditFull?: boolean;\n /** 是否可编辑 */\n editable?: boolean;\n /** 是否显示编辑、确认、取消操作icon,默认值:true */\n showEditableIcon?: boolean;\n /** 点击编辑按钮,操作前,返回reject不会开启编辑效果 */\n onClickEditIconPre?: (value?: TAny) => Promise<void>;\n onEditCallback?: (value?: TAny) => void;\n /** 点击确定按钮,操作前,返回reject不会执行确定功能 */\n onClickConfirmIconPre?: (value?: TAny, preValue?: TAny) => Promise<void>;\n onConfirmCallback?: (value?: TAny, preValue?: TAny) => void;\n /** 组件操作Icon配置 */\n iconConfig?: {\n editIcon?: (options: { onClick: () => void }) => ReactElement;\n confirmIcon?: (options: { onClick: () => void }) => ReactElement;\n cancelIcon?: (options: { onClick: () => void }) => ReactElement;\n };\n}\n\n/**\n * 可编辑字段组件\n * @param props\n * @returns\n * ```\n * 字段渲染有两种状态\n * 1. 只读:如果value类型为复杂格式,必须要通过【viewRender】来进行处理操作,转成简单数据类型\n * 2. 编辑:参数value的格式要求必须满足编辑组件入参value要求\n * 3. 可自定义编辑Icon、确定Icon、取消Icon\n * 4. 可拦截编辑操作、确定操作\n * ```\n */\nexport const EditableField = (props: EditableFieldProps) => {\n const {\n value,\n onChange,\n viewRender,\n placeholderValue = '-',\n editRender,\n isEditFull,\n onClickEditIconPre,\n onClickConfirmIconPre,\n iconConfig,\n onEditCallback,\n onConfirmCallback,\n } = props;\n const [isEdit, setIsEdit] = useState<boolean>(false);\n const ctx = useContext(EditableFieldContext);\n const originalValue = useRef<TAny>(value);\n\n const showEditableIcon = (function () {\n if (ctx.isCtx) {\n return props.showEditableIcon === undefined ? ctx.showEditableIcon : props.showEditableIcon;\n }\n return props.showEditableIcon === undefined ? true : props.showEditableIcon;\n })();\n\n const editable = (function () {\n if (ctx.isCtx) {\n return props.editable === undefined ? ctx.editable : props.editable;\n }\n return props.editable || false;\n })();\n\n const theme = fbaHooks.useThemeToken();\n\n useEffect(() => {\n setIsEdit(editable);\n }, [editable]);\n\n const onClickEditIcon = async () => {\n if (onClickEditIconPre) {\n await onClickEditIconPre(value);\n }\n originalValue.current = value;\n setIsEdit(true);\n onEditCallback?.(value);\n };\n\n const editIcon = iconConfig?.editIcon ? (\n iconConfig.editIcon({ onClick: onClickEditIcon })\n ) : (\n <IconWrapper size=\"small\" icon={<EditOutlined />} onClick={onClickEditIcon} />\n );\n\n if (!isEdit) {\n const viewValue = (viewRender ? viewRender(props.value) : props.value) || placeholderValue;\n if (\n isString(viewValue) ||\n isNumber(viewValue) ||\n isUndefinedOrNull(viewValue) ||\n isValidElement(viewValue)\n ) {\n if (!showEditableIcon) {\n return viewValue;\n }\n return (\n <Space size={8}>\n <span>{viewValue}</span>\n {editIcon}\n </Space>\n );\n }\n console.warn('对象作为React子对象无效', viewValue);\n }\n\n const onCancel = () => {\n if (value !== originalValue.current) {\n onChange?.(originalValue.current);\n }\n setIsEdit(false);\n };\n\n const onEditChange = (value) => {\n let target = value;\n /** 为了处理 Input、TextArea等onChange取值 */\n if (typeof value === 'object' && value !== null && !isArray(value) && value.target) {\n const _value = value.target?.value;\n if (isString(_value) || isNumber(_value) || isUndefinedOrNull(_value)) {\n target = value.target?.value;\n }\n }\n onChange?.(target);\n };\n\n const onOk = async () => {\n if (onClickConfirmIconPre) {\n await onClickConfirmIconPre(value, originalValue.current);\n }\n setIsEdit(false);\n onConfirmCallback?.(value, originalValue.current);\n };\n\n const editRenderElement =\n typeof editRender === 'function' ? editRender({ value: value, onChange: onEditChange }) : editRender;\n\n if (!showEditableIcon) {\n return <editRenderElement.type value={value} onChange={onEditChange} {...editRenderElement.props} />;\n }\n\n const confirmIcon = iconConfig?.confirmIcon ? (\n iconConfig.confirmIcon({ onClick: onOk })\n ) : (\n <IconWrapper size=\"small\" icon={<CheckOutlined style={{ color: theme.colorPrimary }} />} onClick={onOk} />\n );\n\n const cancelIcon = iconConfig?.cancelIcon ? (\n iconConfig.cancelIcon({ onClick: onCancel })\n ) : (\n <IconWrapper\n size=\"small\"\n icon={<CloseOutlined style={{ color: theme.colorPrimary }} />}\n onClick={onCancel}\n />\n );\n\n return (\n <Space\n direction=\"horizontal\"\n size={12}\n style={props.style}\n className={classNames('editable-field', { 'editable-field-full': isEditFull }, props.className)}\n >\n <editRenderElement.type value={value} onChange={onEditChange} {...editRenderElement.props} />\n {confirmIcon}\n {cancelIcon}\n </Space>\n );\n};\n"],"names":["EditableField","props","value","onChange","viewRender","_props$placeholderVal","placeholderValue","editRender","isEditFull","onClickEditIconPre","onClickConfirmIconPre","iconConfig","onEditCallback","onConfirmCallback","_useState","useState","isEdit","setIsEdit","ctx","useContext","EditableFieldContext","originalValue","useRef","showEditableIcon","isCtx","undefined","editable","theme","fbaHooks","useThemeToken","useEffect","onClickEditIcon","Promise","$return","$error","resolve","then","$await_3","$If_1","call","this","$boundEx","bind","current","editIcon","onClick","_jsx","IconWrapper","size","icon","_EditOutlined","viewValue","_isString","_isNumber","isUndefinedOrNull","isValidElement","_jsxs","Space","children","console","warn","onCancel","onEditChange","target","_isArray","_value$target","_value","_value$target2","onOk","$await_4","$If_2","editRenderElement","type","_extends","confirmIcon","_CheckOutlined","style","color","colorPrimary","cancelIcon","_CloseOutlined","direction","className","_classNames"],"mappings":";m6BA6DaA,EAAgB,SAAhBA,EAAiBC,GAC5B,IACEC,EAWED,EAXFC,MACAC,EAUEF,EAVFE,SACAC,EASEH,EATFG,WAAUC,EASRJ,EARFK,iBAAAA,EAAgBD,SAAG,EAAA,IAAGA,EACtBE,EAOEN,EAPFM,WACAC,EAMEP,EANFO,WACAC,EAKER,EALFQ,mBACAC,EAIET,EAJFS,sBACAC,EAGEV,EAHFU,WACAC,EAEEX,EAFFW,eACAC,EACEZ,EADFY,kBAEF,IAAAC,EAA4BC,EAAkB,OAAvCC,EAAMF,EAAA,GAAEG,EAASH,EAAA,GACxB,IAAMI,EAAMC,EAAWC,GACvB,IAAMC,EAAgBC,EAAapB,GAEnC,IAAMqB,EAAoB,WACxB,GAAIL,EAAIM,MAAO,CACb,OAAOvB,EAAMsB,mBAAqBE,UAAYP,EAAIK,iBAAmBtB,EAAMsB,gBAC7E,CACA,OAAOtB,EAAMsB,mBAAqBE,UAAY,KAAOxB,EAAMsB,gBAC7D,CAL0B,GAO1B,IAAMG,EAAY,WAChB,GAAIR,EAAIM,MAAO,CACb,OAAOvB,EAAMyB,WAAaD,UAAYP,EAAIQ,SAAWzB,EAAMyB,QAC7D,CACA,OAAOzB,EAAMyB,UAAY,KAC3B,CALkB,GAOlB,IAAMC,EAAQC,EAASC,gBAEvBC,GAAU,WACRb,EAAUS,EACZ,GAAG,CAACA,IAEJ,IAAMK,EAAkB,SAAlBA,IAAkB,OAAA,IAAAC,SAAA,SAAAC,EAAAC,GACtB,GAAIzB,EAAoB,CACtB,OAAAuB,QAAAG,QAAM1B,EAAmBP,IAAzBkC,KArGN,SAAAC,GAAA,IAAI,OAAJC,EAAGC,KAAIC,KAAE,CAAC,MAAAC,GAAW,OAAOP,EAAAO,EAAM,CAAC,EAAhCC,KAAKF,MAAKN,EAsGT,CAAC,SAAAI,IACDjB,EAAcsB,QAAUzC,EACxBe,EAAU,MACVL,GAAAA,UAAAA,EAAAA,EAAiBV,GAAO,OAAA+B,GAAA,CAAA,OAzG5BK,EAAGC,KAAIC,KAAI,GA0GR,EAED,IAAMI,EAAWjC,GAAAA,MAAAA,EAAYiC,SAC3BjC,EAAWiC,SAAS,CAAEC,QAASd,IAE/Be,EAACC,EAAW,CAACC,KAAK,QAAQC,KAAMH,EAAAI,MAAkBL,QAASd,IAG7D,IAAKf,EAAQ,CACX,IAAMmC,GAAa/C,EAAaA,EAAWH,EAAMC,OAASD,EAAMC,QAAUI,EAC1E,GACE8C,EAASD,IACTE,EAASF,IACTG,EAAkBH,IAClBI,EAAeJ,GACf,CACA,IAAK5B,EAAkB,CACrB,OAAO4B,CACT,CACA,OACEK,EAACC,EAAK,CAACT,KAAM,EAAEU,UACbZ,EAAA,OAAA,CAAAY,SAAOP,IACNP,IAGP,CACAe,QAAQC,KAAK,iBAAkBT,EACjC,CAEA,IAAMU,EAAW,SAAXA,IACJ,GAAI3D,IAAUmB,EAAcsB,QAAS,CACnCxC,eAAAA,EAAWkB,EAAcsB,QAC3B,CACA1B,EAAU,QAGZ,IAAM6C,EAAe,SAAfA,EAAgB5D,GACpB,IAAI6D,EAAS7D,EAEb,UAAWA,IAAU,UAAYA,IAAU,OAAS8D,EAAQ9D,IAAUA,EAAM6D,OAAQ,CAAA,IAAAE,EAClF,IAAMC,GAAMD,EAAG/D,EAAM6D,SAAM,UAAA,EAAZE,EAAc/D,MAC7B,GAAIkD,EAASc,IAAWb,EAASa,IAAWZ,EAAkBY,GAAS,CAAA,IAAAC,EACrEJ,GAAMI,EAAGjE,EAAM6D,SAAM,UAAA,EAAZI,EAAcjE,KACzB,CACF,CACAC,GAAAA,UAAAA,EAAAA,EAAW4D,IAGb,IAAMK,EAAO,SAAPA,IAAO,OAAA,IAAApC,SAAA,SAAAC,EAAAC,GACX,GAAIxB,EAAuB,CACzB,OAAAsB,QAAAG,QAAMzB,EAAsBR,EAAOmB,EAAcsB,UAAjDP,KA5JN,SAAAiC,GAAA,IAAI,OAAJC,EAAG/B,KAAIC,KAAE,CAAC,MAAAC,GAAW,OAAOP,EAAAO,EAAM,CAAC,EAAhCC,KAAKF,MAAKN,EA6JT,CAAC,SAAAoC,IACDrD,EAAU,OACVJ,GAAiB,UAAA,EAAjBA,EAAoBX,EAAOmB,EAAcsB,SAAS,OAAAV,GAAA,CAAA,OA/JtDqC,EAAG/B,KAAIC,KAAI,GAgKR,EAED,IAAM+B,SACGhE,IAAe,WAAaA,EAAW,CAAEL,MAAOA,EAAOC,SAAU2D,IAAkBvD,EAE5F,IAAKgB,EAAkB,CACrB,OAAOuB,EAACyB,EAAkBC,KAAIC,EAAA,CAACvE,MAAOA,EAAOC,SAAU2D,GAAkBS,EAAkBtE,OAC7F,CAEA,IAAMyE,EAAc/D,GAAAA,MAAAA,EAAY+D,YAC9B/D,EAAW+D,YAAY,CAAE7B,QAASuB,IAElCtB,EAACC,EAAW,CAACC,KAAK,QAAQC,KAAMH,EAAA6B,EAAA,CAAeC,MAAO,CAAEC,MAAOlD,EAAMmD,gBAAoBjC,QAASuB,IAGpG,IAAMW,EAAapE,GAAAA,MAAAA,EAAYoE,WAC7BpE,EAAWoE,WAAW,CAAElC,QAASgB,IAEjCf,EAACC,EAAW,CACVC,KAAK,QACLC,KAAMH,EAAAkC,EAAA,CAAeJ,MAAO,CAAEC,MAAOlD,EAAMmD,gBAC3CjC,QAASgB,IAIb,OACEL,EAACC,EAAK,CACJwB,UAAU,aACVjC,KAAM,GACN4B,MAAO3E,EAAM2E,MACbM,UAAWC,EAAW,iBAAkB,CAAE,sBAAuB3E,GAAcP,EAAMiF,WAAWxB,UAEhGZ,EAACyB,EAAkBC,KAAIC,EAAA,CAACvE,MAAOA,EAAOC,SAAU2D,GAAkBS,EAAkBtE,QACnFyE,EACAK,IAGP"}
1
+ {"version":3,"file":"index.js","sources":["@flatbiz/antd/src/editable-field/editable-field.tsx"],"sourcesContent":["import { CheckOutlined, CloseOutlined, EditOutlined } from '@ant-design/icons';\nimport { isArray, isNumber, isString } from '@dimjs/lang';\nimport { classNames } from '@dimjs/utils';\nimport { isUndefinedOrNull, TAny } from '@flatbiz/utils';\nimport { Space } from 'antd';\nimport {\n CSSProperties,\n Fragment,\n ReactElement,\n ReactNode,\n useContext,\n useEffect,\n useMemo,\n useRef,\n useState,\n} from 'react';\nimport { EditableFieldContext } from '../editable-field-provider/context';\nimport { fbaHooks } from '../fba-hooks';\nimport { IconWrapper } from '../icon-wrapper';\nimport './style.less';\n\nexport interface EditableFieldProps {\n className?: string;\n style?: CSSProperties;\n editRender: ReactElement | ((data: { value?: TAny; onChange?: (data?: TAny) => void }) => ReactElement);\n viewRender?: (value?: TAny) => ReactNode;\n value?: TAny;\n onChange?: (data?: TAny) => void;\n placeholderValue?: string;\n /** edit 区域是否铺满,showEditableIcon=false 无效 */\n isEditFull?: boolean;\n /** 只读状态 */\n readonly?: boolean;\n /** 显示为编辑状态 */\n showEditable?: boolean;\n /** 是否显示编辑、确认、取消操作icon,默认值:true */\n showEditableIcon?: boolean;\n /** 点击编辑按钮,操作前,返回reject不会开启编辑效果 */\n onClickEditIconPre?: (value?: TAny) => Promise<void>;\n onEditCallback?: (value?: TAny) => void;\n /** 点击确定按钮,操作前,返回reject不会执行确定功能 */\n onClickConfirmIconPre?: (value?: TAny, preValue?: TAny) => Promise<void>;\n onConfirmCallback?: (value?: TAny, preValue?: TAny) => void;\n /** 组件操作Icon配置 */\n iconConfig?: {\n editIcon?: (options: { onClick: () => void }) => ReactElement;\n confirmIcon?: (options: { onClick: () => void }) => ReactElement;\n cancelIcon?: (options: { onClick: () => void }) => ReactElement;\n };\n}\n\n/**\n * 可编辑字段组件\n * @param props\n * @returns\n * ```\n * 字段渲染有两种状态\n * 1. 只读:如果value类型为复杂格式,必须要通过【viewRender】来进行处理操作,转成简单数据类型\n * 2. 编辑:参数value的格式要求必须满足编辑组件入参value要求\n * 3. 可自定义编辑Icon、确定Icon、取消Icon\n * 4. 可拦截编辑操作、确定操作\n * ```\n */\nexport const EditableField = (props: EditableFieldProps) => {\n const {\n value,\n onChange,\n viewRender,\n placeholderValue = '-',\n editRender,\n isEditFull,\n onClickEditIconPre,\n onClickConfirmIconPre,\n iconConfig,\n onEditCallback,\n onConfirmCallback,\n showEditable,\n } = props;\n const [isEdit, setIsEdit] = useState(showEditable);\n const ctx = useContext(EditableFieldContext);\n const originalValue = useRef<TAny>(value);\n const showEditableIcon = props.showEditableIcon === undefined ? true : props.showEditableIcon;\n\n const showEditableIconNew = (function () {\n if (ctx.isCtx) {\n return props.showEditableIcon === undefined ? ctx.showEditableIcon : showEditableIcon;\n }\n return showEditableIcon;\n })();\n\n const readonly = useMemo(() => {\n if (ctx.isCtx) {\n return props.readonly === undefined ? ctx.readonly : props.readonly;\n }\n return props.readonly;\n }, [ctx.isCtx, ctx.readonly, props.readonly]);\n\n useEffect(() => {\n if (ctx.isCtx) {\n setIsEdit(props.showEditable === undefined ? ctx.showEditable : props.showEditable);\n } else {\n setIsEdit(props.showEditable);\n }\n }, [ctx.showEditable, ctx.isCtx, props.showEditable]);\n\n const theme = fbaHooks.useThemeToken();\n\n const onClickEditIcon = async () => {\n if (onClickEditIconPre) {\n await onClickEditIconPre(value);\n }\n originalValue.current = value;\n setIsEdit(true);\n onEditCallback?.(value);\n };\n\n const editIcon = iconConfig?.editIcon ? (\n iconConfig.editIcon({ onClick: onClickEditIcon })\n ) : (\n <IconWrapper size=\"small\" icon={<EditOutlined />} onClick={onClickEditIcon} />\n );\n\n const onCancel = () => {\n if (value !== originalValue.current) {\n onChange?.(originalValue.current);\n }\n setIsEdit(false);\n };\n\n const onEditChange = (value) => {\n let target = value;\n /** 为了处理 Input、TextArea等onChange取值 */\n if (typeof value === 'object' && value !== null && !isArray(value) && value.target) {\n const _value = value.target?.value;\n if (isString(_value) || isNumber(_value) || isUndefinedOrNull(_value)) {\n target = value.target?.value;\n }\n }\n onChange?.(target);\n };\n\n const onOk = async () => {\n if (onClickConfirmIconPre) {\n await onClickConfirmIconPre(value, originalValue.current);\n }\n setIsEdit(false);\n onConfirmCallback?.(value, originalValue.current);\n };\n\n const confirmIcon = iconConfig?.confirmIcon ? (\n iconConfig.confirmIcon({ onClick: onOk })\n ) : (\n <IconWrapper size=\"small\" icon={<CheckOutlined style={{ color: theme.colorPrimary }} />} onClick={onOk} />\n );\n\n const cancelIcon = iconConfig?.cancelIcon ? (\n iconConfig.cancelIcon({ onClick: onCancel })\n ) : (\n <IconWrapper\n size=\"small\"\n icon={<CloseOutlined style={{ color: theme.colorPrimary }} />}\n onClick={onCancel}\n />\n );\n\n const editRenderElement =\n typeof editRender === 'function' ? editRender({ value: value, onChange: onEditChange }) : editRender;\n\n const viewValue = (viewRender ? viewRender(props.value) : props.value) || placeholderValue;\n\n if (readonly) {\n return <Fragment>{viewValue}</Fragment>;\n }\n\n if (!isEdit) {\n if (!showEditableIconNew) {\n return viewValue;\n }\n return (\n <Space size={8}>\n <span>{viewValue}</span>\n {editIcon}\n </Space>\n );\n }\n\n if (!showEditableIconNew) {\n return <editRenderElement.type value={value} onChange={onEditChange} {...editRenderElement.props} />;\n }\n\n return (\n <Space\n direction=\"horizontal\"\n size={12}\n style={props.style}\n className={classNames('editable-field', { 'editable-field-full': isEditFull }, props.className)}\n >\n <editRenderElement.type value={value} onChange={onEditChange} {...editRenderElement.props} />\n {confirmIcon}\n {cancelIcon}\n </Space>\n );\n};\n"],"names":["EditableField","props","value","onChange","viewRender","_props$placeholderVal","placeholderValue","editRender","isEditFull","onClickEditIconPre","onClickConfirmIconPre","iconConfig","onEditCallback","onConfirmCallback","showEditable","_useState","useState","isEdit","setIsEdit","ctx","useContext","EditableFieldContext","originalValue","useRef","showEditableIcon","undefined","showEditableIconNew","isCtx","readonly","useMemo","useEffect","theme","fbaHooks","useThemeToken","onClickEditIcon","Promise","$return","$error","resolve","then","$await_3","$If_1","call","this","$boundEx","bind","current","editIcon","onClick","_jsx","IconWrapper","size","icon","_EditOutlined","onCancel","onEditChange","target","_isArray","_value$target","_value","_isString","_isNumber","isUndefinedOrNull","_value$target2","onOk","$await_4","$If_2","confirmIcon","_CheckOutlined","style","color","colorPrimary","cancelIcon","_CloseOutlined","editRenderElement","viewValue","Fragment","children","_jsxs","Space","type","_extends","direction","className","_classNames"],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  /* eslint-disable */
2
2
  import './index.css';
3
3
  /*! @flatjs/forge MIT @flatbiz/antd */
4
- import{E as e}from"../context-25d0b686.js";import{jsx as r}from"react/jsx-runtime";import"react";var t=function t(i){var o=i.editable===undefined?true:i.editable;var a=i.showEditableIcon===undefined?false:i.showEditableIcon;return r(e.Provider,{value:{editable:o,isCtx:true,showEditableIcon:a},children:i.children})};export{t as EditableFieldProvider};
4
+ import{E as e}from"../context-62955871.js";import{jsx as r}from"react/jsx-runtime";import"react";var t=function t(o){var i=o.readonly;var n=o===undefined?true:o.showEditable;var a=o.showEditableIcon===undefined?true:o.showEditableIcon;return r(e.Provider,{value:{readonly:i,isCtx:true,showEditableIcon:a,showEditable:n},children:o.children})};export{t as EditableFieldProvider};
5
5
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["@flatbiz/antd/src/editable-field-provider/editable-field-provider.tsx"],"sourcesContent":["import { ReactElement } from 'react';\nimport { EditableFieldContext } from './context';\n\nexport interface EditableFieldProviderProps {\n children: ReactElement;\n editable?: boolean;\n showEditableIcon?: boolean;\n}\n\n/**\n * EditableFieldProvider 控制内部使有的 EditableField 状态\n * @param props\n * @returns\n */\nexport const EditableFieldProvider = (props: EditableFieldProviderProps) => {\n const editable = props.editable === undefined ? true : props.editable;\n const showEditableIcon = props.showEditableIcon === undefined ? false : props.showEditableIcon;\n\n return (\n <EditableFieldContext.Provider value={{ editable, isCtx: true, showEditableIcon }}>\n {props.children}\n </EditableFieldContext.Provider>\n );\n};\n"],"names":["EditableFieldProvider","props","editable","undefined","showEditableIcon","_jsx","EditableFieldContext","Provider","value","isCtx","children"],"mappings":";qGAcaA,EAAwB,SAAxBA,EAAyBC,GACpC,IAAMC,EAAWD,EAAMC,WAAaC,UAAY,KAAOF,EAAMC,SAC7D,IAAME,EAAmBH,EAAMG,mBAAqBD,UAAY,MAAQF,EAAMG,iBAE9E,OACEC,EAACC,EAAqBC,SAAQ,CAACC,MAAO,CAAEN,SAAAA,EAAUO,MAAO,KAAML,iBAAAA,GAAmBM,SAC/ET,EAAMS,UAGb"}
1
+ {"version":3,"file":"index.js","sources":["@flatbiz/antd/src/editable-field-provider/editable-field-provider.tsx"],"sourcesContent":["import { ReactElement } from 'react';\nimport { EditableFieldContext } from './context';\n\nexport interface EditableFieldProviderProps {\n children: ReactElement;\n /** 是否只读 */\n readonly?: boolean;\n /** 是否编辑状态 */\n showEditable?: boolean;\n /** 是否显示编辑操作按钮 */\n showEditableIcon?: boolean;\n}\n\n/**\n * EditableFieldProvider 控制内部使有的 EditableField 状态\n * @param props\n * @returns\n */\nexport const EditableFieldProvider = (props: EditableFieldProviderProps) => {\n const readonly = props.readonly;\n\n const showEditable = props === undefined ? true : props.showEditable;\n\n const showEditableIcon = props.showEditableIcon === undefined ? true : props.showEditableIcon;\n\n return (\n <EditableFieldContext.Provider value={{ readonly, isCtx: true, showEditableIcon, showEditable }}>\n {props.children}\n </EditableFieldContext.Provider>\n );\n};\n"],"names":["EditableFieldProvider","props","readonly","showEditable","undefined","showEditableIcon","_jsx","EditableFieldContext","Provider","value","isCtx","children"],"mappings":";qGAkBaA,EAAwB,SAAxBA,EAAyBC,GACpC,IAAMC,EAAWD,EAAMC,SAEvB,IAAMC,EAAeF,IAAUG,UAAY,KAAOH,EAAME,aAExD,IAAME,EAAmBJ,EAAMI,mBAAqBD,UAAY,KAAOH,EAAMI,iBAE7E,OACEC,EAACC,EAAqBC,SAAQ,CAACC,MAAO,CAAEP,SAAAA,EAAUQ,MAAO,KAAML,iBAAAA,EAAkBF,aAAAA,GAAeQ,SAC7FV,EAAMU,UAGb"}
package/esm/index.js CHANGED
@@ -126,5 +126,5 @@ import './tree-wrapper/index.css';
126
126
  import './x-mind-preview/index.css';
127
127
  import './index.css';
128
128
  /*! @flatjs/forge MIT @flatbiz/antd */
129
- export{AceEditorGroovy}from"./ace-editor-groovy/index.js";export{AceEditorJava}from"./ace-editor-java/index.js";export{AceEditorJson}from"./ace-editor-json/index.js";export{AceEditorMysql}from"./ace-editor-mysql/index.js";export{AceEditorXml}from"./ace-editor-xml/index.js";export{AlertWrapper}from"./alert-wrapper/index.js";export{AmountFenInput}from"./amount-fen-input/index.js";export{AmountFenInputFormItem}from"./amount-fen-input-form-item/index.js";export{AnchorSteps}from"./anchor-steps/index.js";export{BlockLayout}from"./block-layout/index.js";export{Bootstrap}from"./bootstrap/index.js";export{BoxGrid,useBoxBreakpoint}from"./box-grid/index.js";export{ButtonOperate,ButtonOperateItemContent}from"./button-operate/index.js";export{ButtonWrapper}from"./button-wrapper/index.js";export{CardLayout}from"./card-layout/index.js";export{CardWrapper}from"./card-wrapper/index.js";export{CascaderWrapper}from"./cascader-wrapper/index.js";export{CheckList}from"./check-list/index.js";export{CheckboxWrapper}from"./checkbox-wrapper/index.js";export{ColorPickerWrapper}from"./color-picker-wrapper/index.js";export{C as ConfigProviderWrapper}from"./index-7f4ad045.js";export{createDrawerWrapperModel}from"./create-drawer-wrapper-model/index.js";export{createModalWrapperModel}from"./create-modal-wrapper-model/index.js";export{CssNodeHover}from"./css-node-hover/index.js";export{DataRender}from"./data-render/index.js";export{DatePickerWrapper}from"./date-picker-wrapper/index.js";export{DateRangePickerWrapper}from"./date-range-picker-wrapper/index.js";export{DateRangePickerWrapperFormItem}from"./date-range-picker-wrapper-form-item/index.js";export{dialogAlert}from"./dialog-alert/index.js";export{dialogConfirm}from"./dialog-confirm/index.js";export{dialogDrawer}from"./dialog-drawer/index.js";export{DialogDrawerContent}from"./dialog-drawer-content/index.js";export{dialogLoading}from"./dialog-loading/index.js";export{dialogModal}from"./dialog-modal/index.js";export{DragCollapse}from"./drag-collapse/index.js";export{DragCollapseFormList}from"./drag-collapse-form-list/index.js";export{DragEditableTable}from"./drag-editable-table/index.js";export{DragFormList}from"./drag-form-list/index.js";export{DragTable}from"./drag-table/index.js";export{DrawerWrapper}from"./drawer-wrapper/index.js";export{DropdownMenuWrapper}from"./dropdown-menu-wrapper/index.js";export{dynamicNode}from"./dynamic-node/index.js";export{EasyForm}from"./easy-form/index.js";export{EasyTable}from"./easy-table/index.js";export{EditableField}from"./editable-field/index.js";export{EditableFieldProvider}from"./editable-field-provider/index.js";export{EditableTable}from"./editable-table/index.js";export{EditorWrapper}from"./editor-wrapper/index.js";export{ErrorBoundaryWrapper}from"./error-boundary-wrapper/index.js";export{FbaApp}from"./fba-app/index.js";export{fbaHooks}from"./fba-hooks/index.js";export{fbaUtils}from"./fba-utils/index.js";export{FileExport}from"./file-export/index.js";export{FileImport}from"./file-import/index.js";export{FileSelect}from"./file-select/index.js";export{FlexLayout}from"./flex-layout/index.js";export{FormGrid}from"./form-grid/index.js";export{FormItemGroup}from"./form-item-group/index.js";export{FormItemHidden}from"./form-item-hidden/index.js";export{FormItemText}from"./form-item-text/index.js";export{FormItemWrapper}from"./form-item-wrapper/index.js";export{FormListWrapper}from"./form-list-wrapper/index.js";export{FormWrapper}from"./form-wrapper/index.js";export{Gap}from"./gap/index.js";export{IconWrapper}from"./icon-wrapper/index.js";export{InputSearchWrapper}from"./input-search-wrapper/index.js";export{InputTextAreaWrapper}from"./input-text-area-wrapper/index.js";export{InputWrapper}from"./input-wrapper/index.js";export{JsonEditor}from"./json-editor/index.js";export{LabelValueLayout}from"./label-value-layout/index.js";export{LabelValueRender}from"./label-value-render/index.js";export{LocalLoading}from"./local-loading/index.js";export{MentionEditor}from"./mention-editor/index.js";export{MentionsWrapper}from"./mentions-wrapper/index.js";export{ModalAction}from"./modal-action/index.js";export{ModalWrapper}from"./modal-wrapper/index.js";export{PageFixedFooter}from"./page-fixed-footer/index.js";export{Page404}from"./page404/index.js";export{P as PaginationWrapper}from"./index-6677fbfc.js";export{Pdf}from"./pdf/index.js";export{PdfPreview}from"./pdf-preview/index.js";export{Permission}from"./permission/index.js";export{preDefinedClassName}from"./pre-defined-class-name/index.js";export{RadioGroupWrapper}from"./radio-group-wrapper/index.js";export{RelationTree}from"./relation-tree/index.js";export{RequestStatus}from"./request-status/index.js";export{RichTextEditor}from"./rich-text-editor/index.js";export{RichTextViewer}from"./rich-text-viewer/index.js";export{RollLocationCenter}from"./roll-location-center/index.js";export{RollLocationInView}from"./roll-location-in-view/index.js";export{RuleDescribe}from"./rule-describe/index.js";export{SearchForm}from"./search-form/index.js";export{SearchMenu}from"./search-menu/index.js";export{SelectorWrapper}from"./selector-wrapper/index.js";export{SelectorWrapperSearch}from"./selector-wrapper-search/index.js";export{SelectorWrapperSimple}from"./selector-wrapper-simple/index.js";export{SimpleLayout}from"./simple-layout/index.js";export{SmsCountDown}from"./sms-count-down/index.js";export{SplitWrapper}from"./split-wrapper/index.js";export{styles}from"./styles/index.js";export{SvgHttpView}from"./svg-http-view/index.js";export{SwitchConfirmWrapper}from"./switch-confirm-wrapper/index.js";export{SwitchWrapper}from"./switch-wrapper/index.js";export{tableCellRender}from"./table-cell-render/index.js";export{TableScrollbar}from"./table-scrollbar/index.js";export{TableTitleTooltip}from"./table-title-tooltip/index.js";export{TabsWrapper}from"./tabs-wrapper/index.js";export{TagGroup}from"./tag-group/index.js";export{TagListRender}from"./tag-list-render/index.js";export{TagListSelect}from"./tag-list-select/index.js";export{TagWrapper}from"./tag-wrapper/index.js";export{TextCssEllipsis}from"./text-css-ellipsis/index.js";export{TextOverflow}from"./text-overflow/index.js";export{TextOverflowRender}from"./text-overflow-render/index.js";export{TextSymbolWrapper}from"./text-symbol-wrapper/index.js";export{TimePickerWrapper}from"./time-picker-wrapper/index.js";export{TimeRangePickerWrapper}from"./time-range-picker-wrapper/index.js";export{TimeRangePickerWrapperFormItem}from"./time-range-picker-wrapper-form-item/index.js";export{TipsTitle}from"./tips-title/index.js";export{TipsWrapper}from"./tips-wrapper/index.js";export{TreeSelectorWrapper}from"./tree-selector-wrapper/index.js";export{TreeWrapper}from"./tree-wrapper/index.js";export{UploadWrapper}from"./upload-wrapper/index.js";export{XMindPreview}from"./x-mind-preview/index.js";import"./_rollupPluginBabelHelpers-a0769acd.js";import"@dimjs/utils/cjs/class-names";import"@wove/react/cjs/hooks";import"@dimjs/lang/cjs/is-object";import"@flatbiz/utils";import"react";import"react-ace";import"ace-builds/src-noconflict/ext-language_tools";import"ace-builds/src-noconflict/mode-groovy";import"ace-builds/src-noconflict/snippets/groovy";import"react/jsx-runtime";import"ace-builds/src-noconflict/mode-java";import"ace-builds/src-noconflict/snippets/java";import"ace-builds/src-noconflict/mode-json";import"ace-builds/src-noconflict/snippets/json";import"sql-formatter";import"ace-builds/src-noconflict/mode-mysql";import"ace-builds/src-noconflict/snippets/mysql";import"antd";import"xml-formatter";import"ace-builds/src-noconflict/mode-xml";import"ace-builds/src-noconflict/snippets/xml";import"@dimjs/utils/cjs/get";import"@dimjs/lang/cjs/is-number";import"ahooks";import"@ant-design/icons/es/icons/MoreOutlined";import"@dimjs/lang/cjs/is-undefined";import"@dimjs/lang/cjs/is-plain-object";import"@dimjs/lang/cjs/is-string";import"@dimjs/lang/cjs/is-promise";import"@ant-design/icons/es/icons/LoadingOutlined";import"@dimjs/lang/cjs/is-array";import"@dimjs/utils/cjs/extend";import"@ant-design/icons/es/icons/RedoOutlined";import"@dimjs/model";import"@dimjs/model-react";import"@wove/react/cjs/create-ctx";import"@ant-design/icons/es/icons/CloseCircleOutlined";import"antd/es/locale/en_US";import"antd/es/locale/zh_CN";import"dayjs";import"dayjs/locale/en";import"dayjs/locale/zh-cn";import"dayjs/plugin/advancedFormat";import"dayjs/plugin/customParseFormat";import"dayjs/plugin/localeData";import"dayjs/plugin/utc";import"dayjs/plugin/weekday";import"dayjs/plugin/weekOfYear";import"dayjs/plugin/weekYear";import"./time-53b3f55f.js";import"react-dom/client";import"./context-1f2093c6.js";import"./dom-4d04aa64.js";import"@dimjs/lang/cjs/is-null";import"@dimjs/utils/cjs/array";import"@dnd-kit/core";import"@dnd-kit/sortable";import"@ant-design/icons/es/icons/DragOutlined";import"@dnd-kit/utilities";import"@dnd-kit/modifiers";import"@ant-design/icons/es/icons/SaveOutlined";import"@ant-design/icons/es/icons/ExclamationCircleFilled";import"@ant-design/icons/es/icons/DownOutlined";import"@ant-design/icons/es/icons/UpOutlined";import"react-is";import"@ant-design/icons/es/icons/CloseOutlined";import"@ant-design/icons/es/icons/CheckOutlined";import"@ant-design/icons/es/icons/EditOutlined";import"./context-25d0b686.js";import"@ant-design/icons/es/icons/PlusOutlined";import"@dimjs/lang/cjs/is-boolean";import"@ant-design/icons/es/icons/DeleteOutlined";import"@wove/react/cjs/editor";import"./use-responsive-point-21b8c601.js";import"@ant-design/icons/es/icons/QuestionCircleFilled";import"@dimjs/lang/cjs/is-deep-equal";import"@tinymce/tinymce-react";import"@ant-design/icons/es/icons/PlusCircleOutlined";import"@ant-design/icons/es/icons/FullscreenOutlined";import"@dimjs/utils/cjs/json";import"pubsub-js";import"react-split";import"@dimjs/lang/cjs/is-empty";import"@ant-design/icons/es/icons/QuestionCircleOutlined";import"dayjs/plugin/isSameOrAfter";import"dayjs/plugin/isSameOrBefore";import"@ant-design/icons/es/icons/CaretDownFilled";import"dequal";import"@dimjs/utils/cjs/tree";import"react-dom";import"simple-mind-map";
129
+ export{AceEditorGroovy}from"./ace-editor-groovy/index.js";export{AceEditorJava}from"./ace-editor-java/index.js";export{AceEditorJson}from"./ace-editor-json/index.js";export{AceEditorMysql}from"./ace-editor-mysql/index.js";export{AceEditorXml}from"./ace-editor-xml/index.js";export{AlertWrapper}from"./alert-wrapper/index.js";export{AmountFenInput}from"./amount-fen-input/index.js";export{AmountFenInputFormItem}from"./amount-fen-input-form-item/index.js";export{AnchorSteps}from"./anchor-steps/index.js";export{BlockLayout}from"./block-layout/index.js";export{Bootstrap}from"./bootstrap/index.js";export{BoxGrid,useBoxBreakpoint}from"./box-grid/index.js";export{ButtonOperate,ButtonOperateItemContent}from"./button-operate/index.js";export{ButtonWrapper}from"./button-wrapper/index.js";export{CardLayout}from"./card-layout/index.js";export{CardWrapper}from"./card-wrapper/index.js";export{CascaderWrapper}from"./cascader-wrapper/index.js";export{CheckList}from"./check-list/index.js";export{CheckboxWrapper}from"./checkbox-wrapper/index.js";export{ColorPickerWrapper}from"./color-picker-wrapper/index.js";export{C as ConfigProviderWrapper}from"./index-7f4ad045.js";export{createDrawerWrapperModel}from"./create-drawer-wrapper-model/index.js";export{createModalWrapperModel}from"./create-modal-wrapper-model/index.js";export{CssNodeHover}from"./css-node-hover/index.js";export{DataRender}from"./data-render/index.js";export{DatePickerWrapper}from"./date-picker-wrapper/index.js";export{DateRangePickerWrapper}from"./date-range-picker-wrapper/index.js";export{DateRangePickerWrapperFormItem}from"./date-range-picker-wrapper-form-item/index.js";export{dialogAlert}from"./dialog-alert/index.js";export{dialogConfirm}from"./dialog-confirm/index.js";export{dialogDrawer}from"./dialog-drawer/index.js";export{DialogDrawerContent}from"./dialog-drawer-content/index.js";export{dialogLoading}from"./dialog-loading/index.js";export{dialogModal}from"./dialog-modal/index.js";export{DragCollapse}from"./drag-collapse/index.js";export{DragCollapseFormList}from"./drag-collapse-form-list/index.js";export{DragEditableTable}from"./drag-editable-table/index.js";export{DragFormList}from"./drag-form-list/index.js";export{DragTable}from"./drag-table/index.js";export{DrawerWrapper}from"./drawer-wrapper/index.js";export{DropdownMenuWrapper}from"./dropdown-menu-wrapper/index.js";export{dynamicNode}from"./dynamic-node/index.js";export{EasyForm}from"./easy-form/index.js";export{EasyTable}from"./easy-table/index.js";export{EditableField}from"./editable-field/index.js";export{EditableFieldProvider}from"./editable-field-provider/index.js";export{EditableTable}from"./editable-table/index.js";export{EditorWrapper}from"./editor-wrapper/index.js";export{ErrorBoundaryWrapper}from"./error-boundary-wrapper/index.js";export{FbaApp}from"./fba-app/index.js";export{fbaHooks}from"./fba-hooks/index.js";export{fbaUtils}from"./fba-utils/index.js";export{FileExport}from"./file-export/index.js";export{FileImport}from"./file-import/index.js";export{FileSelect}from"./file-select/index.js";export{FlexLayout}from"./flex-layout/index.js";export{FormGrid}from"./form-grid/index.js";export{FormItemGroup}from"./form-item-group/index.js";export{FormItemHidden}from"./form-item-hidden/index.js";export{FormItemText}from"./form-item-text/index.js";export{FormItemWrapper}from"./form-item-wrapper/index.js";export{FormListWrapper}from"./form-list-wrapper/index.js";export{FormWrapper}from"./form-wrapper/index.js";export{Gap}from"./gap/index.js";export{IconWrapper}from"./icon-wrapper/index.js";export{InputSearchWrapper}from"./input-search-wrapper/index.js";export{InputTextAreaWrapper}from"./input-text-area-wrapper/index.js";export{InputWrapper}from"./input-wrapper/index.js";export{JsonEditor}from"./json-editor/index.js";export{LabelValueLayout}from"./label-value-layout/index.js";export{LabelValueRender}from"./label-value-render/index.js";export{LocalLoading}from"./local-loading/index.js";export{MentionEditor}from"./mention-editor/index.js";export{MentionsWrapper}from"./mentions-wrapper/index.js";export{ModalAction}from"./modal-action/index.js";export{ModalWrapper}from"./modal-wrapper/index.js";export{PageFixedFooter}from"./page-fixed-footer/index.js";export{Page404}from"./page404/index.js";export{P as PaginationWrapper}from"./index-6677fbfc.js";export{Pdf}from"./pdf/index.js";export{PdfPreview}from"./pdf-preview/index.js";export{Permission}from"./permission/index.js";export{preDefinedClassName}from"./pre-defined-class-name/index.js";export{RadioGroupWrapper}from"./radio-group-wrapper/index.js";export{RelationTree}from"./relation-tree/index.js";export{RequestStatus}from"./request-status/index.js";export{RichTextEditor}from"./rich-text-editor/index.js";export{RichTextViewer}from"./rich-text-viewer/index.js";export{RollLocationCenter}from"./roll-location-center/index.js";export{RollLocationInView}from"./roll-location-in-view/index.js";export{RuleDescribe}from"./rule-describe/index.js";export{SearchForm}from"./search-form/index.js";export{SearchMenu}from"./search-menu/index.js";export{SelectorWrapper}from"./selector-wrapper/index.js";export{SelectorWrapperSearch}from"./selector-wrapper-search/index.js";export{SelectorWrapperSimple}from"./selector-wrapper-simple/index.js";export{SimpleLayout}from"./simple-layout/index.js";export{SmsCountDown}from"./sms-count-down/index.js";export{SplitWrapper}from"./split-wrapper/index.js";export{styles}from"./styles/index.js";export{SvgHttpView}from"./svg-http-view/index.js";export{SwitchConfirmWrapper}from"./switch-confirm-wrapper/index.js";export{SwitchWrapper}from"./switch-wrapper/index.js";export{tableCellRender}from"./table-cell-render/index.js";export{TableScrollbar}from"./table-scrollbar/index.js";export{TableTitleTooltip}from"./table-title-tooltip/index.js";export{TabsWrapper}from"./tabs-wrapper/index.js";export{TagGroup}from"./tag-group/index.js";export{TagListRender}from"./tag-list-render/index.js";export{TagListSelect}from"./tag-list-select/index.js";export{TagWrapper}from"./tag-wrapper/index.js";export{TextCssEllipsis}from"./text-css-ellipsis/index.js";export{TextOverflow}from"./text-overflow/index.js";export{TextOverflowRender}from"./text-overflow-render/index.js";export{TextSymbolWrapper}from"./text-symbol-wrapper/index.js";export{TimePickerWrapper}from"./time-picker-wrapper/index.js";export{TimeRangePickerWrapper}from"./time-range-picker-wrapper/index.js";export{TimeRangePickerWrapperFormItem}from"./time-range-picker-wrapper-form-item/index.js";export{TipsTitle}from"./tips-title/index.js";export{TipsWrapper}from"./tips-wrapper/index.js";export{TreeSelectorWrapper}from"./tree-selector-wrapper/index.js";export{TreeWrapper}from"./tree-wrapper/index.js";export{UploadWrapper}from"./upload-wrapper/index.js";export{XMindPreview}from"./x-mind-preview/index.js";import"./_rollupPluginBabelHelpers-a0769acd.js";import"@dimjs/utils/cjs/class-names";import"@wove/react/cjs/hooks";import"@dimjs/lang/cjs/is-object";import"@flatbiz/utils";import"react";import"react-ace";import"ace-builds/src-noconflict/ext-language_tools";import"ace-builds/src-noconflict/mode-groovy";import"ace-builds/src-noconflict/snippets/groovy";import"react/jsx-runtime";import"ace-builds/src-noconflict/mode-java";import"ace-builds/src-noconflict/snippets/java";import"ace-builds/src-noconflict/mode-json";import"ace-builds/src-noconflict/snippets/json";import"sql-formatter";import"ace-builds/src-noconflict/mode-mysql";import"ace-builds/src-noconflict/snippets/mysql";import"antd";import"xml-formatter";import"ace-builds/src-noconflict/mode-xml";import"ace-builds/src-noconflict/snippets/xml";import"@dimjs/utils/cjs/get";import"@dimjs/lang/cjs/is-number";import"ahooks";import"@ant-design/icons/es/icons/MoreOutlined";import"@dimjs/lang/cjs/is-undefined";import"@dimjs/lang/cjs/is-plain-object";import"@dimjs/lang/cjs/is-string";import"@dimjs/lang/cjs/is-promise";import"@ant-design/icons/es/icons/LoadingOutlined";import"@dimjs/lang/cjs/is-array";import"@dimjs/utils/cjs/extend";import"@ant-design/icons/es/icons/RedoOutlined";import"@dimjs/model";import"@dimjs/model-react";import"@wove/react/cjs/create-ctx";import"@ant-design/icons/es/icons/CloseCircleOutlined";import"antd/es/locale/en_US";import"antd/es/locale/zh_CN";import"dayjs";import"dayjs/locale/en";import"dayjs/locale/zh-cn";import"dayjs/plugin/advancedFormat";import"dayjs/plugin/customParseFormat";import"dayjs/plugin/localeData";import"dayjs/plugin/utc";import"dayjs/plugin/weekday";import"dayjs/plugin/weekOfYear";import"dayjs/plugin/weekYear";import"./time-53b3f55f.js";import"react-dom/client";import"./context-1f2093c6.js";import"./dom-4d04aa64.js";import"@dimjs/lang/cjs/is-null";import"@dimjs/utils/cjs/array";import"@dnd-kit/core";import"@dnd-kit/sortable";import"@ant-design/icons/es/icons/DragOutlined";import"@dnd-kit/utilities";import"@dnd-kit/modifiers";import"@ant-design/icons/es/icons/SaveOutlined";import"@ant-design/icons/es/icons/ExclamationCircleFilled";import"@ant-design/icons/es/icons/DownOutlined";import"@ant-design/icons/es/icons/UpOutlined";import"react-is";import"@ant-design/icons/es/icons/CloseOutlined";import"@ant-design/icons/es/icons/CheckOutlined";import"@ant-design/icons/es/icons/EditOutlined";import"./context-62955871.js";import"@ant-design/icons/es/icons/PlusOutlined";import"@dimjs/lang/cjs/is-boolean";import"@ant-design/icons/es/icons/DeleteOutlined";import"@wove/react/cjs/editor";import"./use-responsive-point-21b8c601.js";import"@ant-design/icons/es/icons/QuestionCircleFilled";import"@dimjs/lang/cjs/is-deep-equal";import"@tinymce/tinymce-react";import"@ant-design/icons/es/icons/PlusCircleOutlined";import"@ant-design/icons/es/icons/FullscreenOutlined";import"@dimjs/utils/cjs/json";import"pubsub-js";import"react-split";import"@dimjs/lang/cjs/is-empty";import"@ant-design/icons/es/icons/QuestionCircleOutlined";import"dayjs/plugin/isSameOrAfter";import"dayjs/plugin/isSameOrBefore";import"@ant-design/icons/es/icons/CaretDownFilled";import"dequal";import"@dimjs/utils/cjs/tree";import"react-dom";import"simple-mind-map";
130
130
  //# sourceMappingURL=index.js.map
package/index.d.ts CHANGED
@@ -2507,13 +2507,11 @@ export type EasyTableTableProps<T> = Omit<TableProps<TAny>, "dataSource" | "load
2507
2507
  /** table Form 外层 SimpleLayout className */
2508
2508
  tableWrapperClassName?: string;
2509
2509
  /**
2510
- * 初始化配置有效果(只在第一次渲染生效)
2511
2510
  * ```
2512
- * 如果存在动态逻辑
2511
+ * 如果存在动态字段
2513
2512
  * 1. 初始阶段,通过 EasyTable.serviceConfig.dynamicColumsAdapter 实现
2514
2513
  * 2. 非初始阶段,通过 EasyTableRef.onChangeTableColumns 实现
2515
2514
  * 3. demo: https://fex.qa.tcshuke.com/docs/admin/main/table/easy-table?tabKey=key7
2516
- *
2517
2515
  * ```
2518
2516
  */
2519
2517
  columns: TEasyTableTableColumn<T>[];
@@ -2613,8 +2611,10 @@ export interface EditableFieldProps {
2613
2611
  placeholderValue?: string;
2614
2612
  /** edit 区域是否铺满,showEditableIcon=false 无效 */
2615
2613
  isEditFull?: boolean;
2616
- /** 是否可编辑 */
2617
- editable?: boolean;
2614
+ /** 只读状态 */
2615
+ readonly?: boolean;
2616
+ /** 显示为编辑状态 */
2617
+ showEditable?: boolean;
2618
2618
  /** 是否显示编辑、确认、取消操作icon,默认值:true */
2619
2619
  showEditableIcon?: boolean;
2620
2620
  /** 点击编辑按钮,操作前,返回reject不会开启编辑效果 */
@@ -2651,7 +2651,11 @@ export interface EditableFieldProps {
2651
2651
  export declare const EditableField: (props: EditableFieldProps) => any;
2652
2652
  export interface EditableFieldProviderProps {
2653
2653
  children: ReactElement;
2654
- editable?: boolean;
2654
+ /** 是否只读 */
2655
+ readonly?: boolean;
2656
+ /** 是否编辑状态 */
2657
+ showEditable?: boolean;
2658
+ /** 是否显示编辑操作按钮 */
2655
2659
  showEditableIcon?: boolean;
2656
2660
  }
2657
2661
  /**
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@flatbiz/antd",
3
- "version": "4.5.8",
3
+ "version": "4.5.10",
4
4
  "description": "flat-biz ui components",
5
5
  "main": "index.js",
6
6
  "typings": "index.d.ts",
@@ -1,3 +0,0 @@
1
- /*! @flatjs/forge MIT @flatbiz/antd */
2
- import{createContext as a}from"react";var e=a({editable:false,showEditableIcon:false,isCtx:false});export{e as E};
3
- //# sourceMappingURL=context-25d0b686.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"context-25d0b686.js","sources":["@flatbiz/antd/src/editable-field-provider/context.ts"],"sourcesContent":["import { createContext } from 'react';\n\nexport type EditableFieldContextContextApi = {\n editable: boolean;\n showEditableIcon: boolean;\n isCtx: boolean;\n};\n\nexport const EditableFieldContext = createContext<EditableFieldContextContextApi>({\n editable: false,\n showEditableIcon: false,\n isCtx: false,\n});\n"],"names":["EditableFieldContext","createContext","editable","showEditableIcon","isCtx"],"mappings":";sCAQaA,IAAAA,EAAuBC,EAA8C,CAChFC,SAAU,MACVC,iBAAkB,MAClBC,MAAO"}