@flatbiz/antd 4.2.97 → 4.2.99

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.
@@ -1 +1 @@
1
- .v-css-hover:hover{position:relative}.v-css-hover:hover:before{background-color:var(--v-css-hover-bgcolor,#ccc);border-radius:8px;bottom:0;content:"";left:0;opacity:var(--v-css-hover-opacity,.1);position:absolute;right:0;top:0}
1
+ .v-css-hover:hover{position:relative}.v-css-hover:hover:before{background-color:var(--v-css-hover-bgcolor,#ccc);border-radius:var(--v-css-hover-border-radius,8);bottom:0;content:"";left:0;opacity:var(--v-css-hover-opacity,.1);position:absolute;right:0;top:0}
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["@flatbiz/antd/src/css-node-hover/css-node-hover.tsx"],"sourcesContent":["import { classNames } from '@dimjs/utils';\nimport { toArray } from '@flatbiz/utils';\nimport { cloneElement, CSSProperties, Fragment, ReactElement, ReactNode } from 'react';\nimport { CommonPropsWithChildren } from '../_utils/native-props';\nimport './style.less';\n\nexport type CssHoverProps = {\n children: ReactElement | ReactElement[];\n} & Pick<\n CommonPropsWithChildren<{\n '--v-css-hover-bgcolor': CSSProperties['backgroundColor'];\n '--v-css-hover-opacity': CSSProperties['opacity'];\n }>,\n 'style' | 'children'\n>;\n/**\n * css hover 效果\n * ```\n * 1. 当children为数组时,会为children添加父级(会产生新节点)\n * 2. 当children为单个元素时,会在children元素上添加className、style(不会产生新节点)\n * ```\n * @param props\n * @returns\n */\nexport const CssNodeHover = (props: CssHoverProps) => {\n const children = toArray<ReactNode>(props.children);\n if (children.length > 1) {\n return (\n <div className=\"v-css-hover\" style={props.style}>\n {children}\n </div>\n );\n }\n\n const element = props.children as ReactElement;\n\n return (\n <Fragment>\n {cloneElement(element, {\n className: classNames('v-css-hover', element.props.className),\n style: { ...props.style, ...element.props.style },\n })}\n </Fragment>\n );\n};\n"],"names":["CssNodeHover","props","children","toArray","length","_jsx","className","style","element","Fragment","cloneElement","_classNames","_extends"],"mappings":";+PAwBaA,EAAe,SAAfA,EAAgBC,GAC3B,IAAMC,EAAWC,EAAmBF,EAAMC,UAC1C,GAAIA,EAASE,OAAS,EAAG,CACvB,OACEC,EAAA,MAAA,CAAKC,UAAU,cAAcC,MAAON,EAAMM,MAAML,SAC7CA,GAGP,CAEA,IAAMM,EAAUP,EAAMC,SAEtB,OACEG,EAACI,EAAQ,CAAAP,SACNQ,EAAaF,EAAS,CACrBF,UAAWK,EAAW,cAAeH,EAAQP,MAAMK,WACnDC,MAAKK,EAAA,GAAOX,EAAMM,MAAUC,EAAQP,MAAMM,UAIlD"}
1
+ {"version":3,"file":"index.js","sources":["@flatbiz/antd/src/css-node-hover/css-node-hover.tsx"],"sourcesContent":["import { classNames } from '@dimjs/utils';\nimport { toArray } from '@flatbiz/utils';\nimport { cloneElement, CSSProperties, Fragment, ReactElement, ReactNode } from 'react';\nimport { CommonPropsWithChildren } from '../_utils/native-props';\nimport './style.less';\n\nexport type CssHoverProps = {\n children: ReactElement | ReactElement[];\n} & Pick<\n CommonPropsWithChildren<{\n '--v-css-hover-bgcolor': CSSProperties['backgroundColor'];\n '--v-css-hover-opacity': CSSProperties['opacity'];\n '--v-css-hover-border-radius': CSSProperties['borderRadius'];\n }>,\n 'style' | 'children'\n>;\n/**\n * css hover 效果\n * ```\n * 1. 当children为数组时,会为children添加父级(会产生新节点)\n * 2. 当children为单个元素时,会在children元素上添加className、style(不会产生新节点)\n * ```\n * @param props\n * @returns\n */\nexport const CssNodeHover = (props: CssHoverProps) => {\n const children = toArray<ReactNode>(props.children);\n if (children.length > 1) {\n return (\n <div className=\"v-css-hover\" style={props.style}>\n {children}\n </div>\n );\n }\n\n const element = props.children as ReactElement;\n\n return (\n <Fragment>\n {cloneElement(element, {\n className: classNames('v-css-hover', element.props.className),\n style: { ...props.style, ...element.props.style },\n })}\n </Fragment>\n );\n};\n"],"names":["CssNodeHover","props","children","toArray","length","_jsx","className","style","element","Fragment","cloneElement","_classNames","_extends"],"mappings":";+PAyBaA,EAAe,SAAfA,EAAgBC,GAC3B,IAAMC,EAAWC,EAAmBF,EAAMC,UAC1C,GAAIA,EAASE,OAAS,EAAG,CACvB,OACEC,EAAA,MAAA,CAAKC,UAAU,cAAcC,MAAON,EAAMM,MAAML,SAC7CA,GAGP,CAEA,IAAMM,EAAUP,EAAMC,SAEtB,OACEG,EAACI,EAAQ,CAAAP,SACNQ,EAAaF,EAAS,CACrBF,UAAWK,EAAW,cAAeH,EAAQP,MAAMK,WACnDC,MAAKK,EAAA,GAAOX,EAAMM,MAAUC,EAAQP,MAAMM,UAIlD"}
@@ -1,6 +1,7 @@
1
1
  /* eslint-disable */
2
2
  import './../fba-utils/index.css';
3
3
  import './../pagination-wrapper/index.css';
4
+ import './../tips-wrapper/index.css';
4
5
  import './../button-wrapper/index.css';
5
6
  import './../config-provider-wrapper/index.css';
6
7
  import './../fba-hooks/index.css';
@@ -9,8 +10,7 @@ import './../form-grid/index.css';
9
10
  import './../simple-layout/index.css';
10
11
  import './../table-scrollbar/index.css';
11
12
  import './../table-title-tooltip/index.css';
12
- import './../tips-wrapper/index.css';
13
13
  import './index.css';
14
14
  /*! @flatjs/forge MIT @flatbiz/antd */
15
- import{fbaUtils as e}from"../fba-utils/index.js";import{classNames as t}from"@dimjs/utils/cjs/class-names";import{isUndefined as i}from"@dimjs/lang/cjs/is-undefined";import{isArray as r}from"@dimjs/lang/cjs/is-array";import{get as n}from"@dimjs/utils/cjs/get";import{_ as a,a as o}from"../_rollupPluginBabelHelpers-a0769acd.js";import{hooks as l}from"@wove/react/cjs/hooks";import{cloneState as s}from"@dimjs/model";import{Form as u,message as c,Table as p}from"antd";import{createContext as f,forwardRef as d,useState as m,useMemo as g,useRef as v,useImperativeHandle as y,useContext as h,Children as C}from"react";import{P as S,S as b}from"../index-6677fbfc.js";import{noop as j,isUndefinedOrNull as F,getUuid as q,isMacEnv as z}from"@flatbiz/utils";import{Model as R}from"@dimjs/model-react";import{jsx as N,jsxs as x}from"react/jsx-runtime";import P from"@ant-design/icons/es/icons/DownOutlined";import w from"@ant-design/icons/es/icons/UpOutlined";import{isFragment as k}from"react-is";import{ButtonWrapper as T}from"../button-wrapper/index.js";import{FormGrid as D}from"../form-grid/index.js";import{SimpleLayout as K}from"../simple-layout/index.js";import{fbaHooks as L}from"../fba-hooks/index.js";import{TableScrollbar as V}from"../table-scrollbar/index.js";import{TableTitleTooltip as E}from"../table-title-tooltip/index.js";import{TipsWrapper as A}from"../tips-wrapper/index.js";import"@ant-design/icons/es/icons/LoadingOutlined";import"@dimjs/lang/cjs/is-promise";import"../index-34027e61.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"ahooks";import"@ant-design/icons/es/icons/QuestionCircleOutlined";var O=f({onRequest:j,tableList:[],getEasyTableRef:function e(){}});var I={queryCondition:{},isInit:true};var B={actions:{updateFilterCondition:function e(t){return function(e){e.queryCondition=a({},e.queryCondition,t)}},resetFilterCondition:function e(t){return function(e){e.queryCondition=a({},I.queryCondition,t)}},updateInitStatus:function e(){return function(e){e.isInit=false}}},state:I};var W={};var _=function e(t){if(!W[t]){W[t]=R(B)}return W[t]};var H=d((function(e,o){var p;var f=m([]),d=f[0],h=f[1];var C=m(0),b=C[0],j=C[1];var F=m(false),q=F[0],z=F[1];var R=l.useId(undefined,"easy-table-key");var P=g((function(){return e.cacheSwitch?location.pathname:R}),[R,e.cacheSwitch]);var w=_(P).useStore(),k=w[0],T=w[1];var D=e.pageSize||((p=e.initialPaginationParams)==null?void 0:p.pageSize)||10;var K=e.initRequest===undefined?true:e.initRequest;var L=m(false),V=L[0],E=L[1];var A=v();var I=a({list:"list",total:"total",pageNo:"pageNo",pageSize:"pageSize"},e.fieldNames);var B=u.useForm(e.form),W=B[0];var H=l.useCallbackRef((function(t){return new Promise((function(i,a){var o,l,u,p,f,d,m,g,v,y;var C=function(){try{return i()}catch(e){return a(e)}};var S=function(t){try{z(false);if(e.onRequestErrorHandle){e.onRequestErrorHandle(t)}else{void c.error(t.message)}return C()}catch(e){return a(e)}};try{z(true);return Promise.resolve(T.updateFilterCondition(t)).then((function(t){try{o=t;l=s(o.queryCondition||{});u=e.serviceConfig,p=u.requestParamsAdapter,f=u.onRequest,d=u.requestResultAdapter;m=p?p(l):l;return Promise.resolve(f(m)).then((function(t){try{g=t||{};A.current=g;e.onDataSourceChange==null?void 0:e.onDataSourceChange(g);v=g;if(d){v=d(g)}y=n(v,I.list);h(r(y)?y:[]);j(n(v,I.total));z(false);return C()}catch(e){return S(e)}}),S)}catch(e){return S(e)}}),S)}catch(e){S(e)}}))}));var U=l.useCallbackRef((function(e){return new Promise((function(t,i){return Promise.resolve(T.resetFilterCondition()).then((function(r){try{W.resetFields();if(e){void T.updateFilterCondition(e);W.setFieldsValue(e)}return t()}catch(e){return i(e)}}),i)}))}));var Q=function e(t,i){if(V){var r;return r={},r[I.pageNo]=t,r[I.pageSize]=i||D,r}else{return{}}};var Y=l.useCallbackRef((function(t){return new Promise((function(i,r){var n;n=a({},Q(1,k.queryCondition[I.pageSize]),e.initialValues,t);return Promise.resolve(T.resetFilterCondition(n)).then((function(e){try{W.resetFields();if(t){W.setFieldsValue(t)}void H(n);return i()}catch(e){return r(e)}}),r)}))}));var G=l.useCallbackRef((function(){return a({},k.queryCondition,W.getFieldsValue())}));var $=function t(){return{onRequest:H,clearQueryCondition:U,getRequestParams:G,onResetRequest:Y,form:W,getDataSource:function e(){return A.current},onFilterDataSource:function e(t){h(t)},onClearDataSource:function e(){j(0);h([])},onUpdateDataSource:function t(i){h(i);A.current=i;e.onDataSourceChange==null?void 0:e.onDataSourceChange(i)}}};y(o,(function(){return $()}));var J=function e(t){E(t)};var M=function t(){var i=W.getFieldsValue();if(e.onFormFinish){e.onFormFinish(a({},i,Q(1,k.queryCondition[I.pageSize])))}else{void H(a({},i,Q(1,k.queryCondition[I.pageSize])))}};var X=i(e.isFull)?true:e.isFull;var Z=t("fba-easy-table",{"fba-easy-table-full":X,"fba-easy-table-filter-fixed":e.filterFixed,"fba-easy-table-pagination-fixed":e.paginationFixed},e.className);var ee=g((function(){return a({showSizeChanger:true,current:k.queryCondition[I.pageNo]||1,pageSize:k.queryCondition[I.pageSize]||D,total:b,showTotal:function e(t){return"共 "+t+" 条记录"}},e.pagination)}),[I.pageNo,I.pageSize,D,e.pagination,k.queryCondition,b]);var te=l.useCallbackRef((function(t,i){var r,n;void H((r={},r[I.pageSize]=i,r[I.pageNo]=t,r));(n=e.pagination)==null||n.onChange==null?void 0:n.onChange(t,i)}));var ie=t("fba-easy-table-wrapper",{"fba-easy-table-wrapper-inline":e.isInline},e.className);var re=typeof e.children==="function"?e.children(A.current):e.children;return N(O.Provider,{value:{getEasyTableRef:$,modelKey:P,onRequest:H,tableList:d,tableTotal:b,loading:q,fieldNames:I,pageSize:D,initRequest:K,initialValues:e.initialValues||{},onSetPaginationStatus:J,paginationStatus:V,onFormFinish:M,form:W,paginationFixed:e.paginationFixed||false,foldKeys:e.foldKeys||[]},children:e.paginationFixed?x("div",{className:ie,style:e.style,children:[N("div",{className:Z,children:re}),b>0&&N("div",{className:"fba-easy-table-pagination",children:N(S,a({size:"small"},ee,{onChange:te}))})]}):N("div",{className:Z,style:e.style,children:re})})}));var U=function e(r){var n=h(O);var o=r.queryButtonProps,s=r.resetButtonProps,c=r.filterOperate,p=r.formClassName,f=r.defaultResetButtonTriggerRequest,d=r.filterWrapperStyle,v=r.filterWrapperClassName,y=r.rightOperateAreaAppendType;var S=n.modelKey,b=n.foldKeys,j=n.fieldNames,F=n.onRequest,q=n.pageSize,z=n.paginationStatus,R=n.initialValues,L=n.form,V=n.onFormFinish;var E=typeof r.children==="function"?r.children(L):r.children;var A=y||"cover";var I=g((function(){if(k(E)){return C.toArray(E.props.children)}else{return C.toArray(E)}}),[E]);var B=m(false),W=B[0],H=B[1];var U=_(S).useStore(),Q=U[0],Y=U[1];var G=l.useCallbackRef((function(){return new Promise((function(e,t){var r;return Promise.resolve(Y.resetFilterCondition()).then((function(n){try{L.resetFields();if(i(f)||f){if(z){F(a((r={},r[j.pageNo]=1,r[j.pageSize]=q,r),R))}else{F(R)}}return e()}catch(e){return t(e)}}),t)}))}));var $=g((function(){var e=[N(T,a({type:"primary",htmlType:"submit"},o,{children:(o==null?void 0:o.text)||"查询"}),"1"),N(T,a({onClick:G},s,{children:(s==null?void 0:s.text)||"重置"}),"2")].filter(Boolean);var t=c==null?void 0:c(L);var i=t==null?void 0:t.rightList;var r=(t==null?void 0:t.leftList)||[];var n=e;if(i){if(A==="afterAppend"){n=[].concat(e,i)}else if(A==="beforeAppend"){n=[].concat(i,e)}else{n=i}}if(b.length>0){var l=N(T,{type:"link",style:{padding:"0"},onClick:function e(){H(!W)},children:W?x("span",{children:["收起",N(w,{style:{marginLeft:3,fontSize:12}})]}):x("span",{children:["展开",N(P,{style:{marginLeft:3,fontSize:12}})]})},"fold-trigger");if(n.length>0||r.length===0){n.push(l)}else if((r==null?void 0:r.length)>0){r.push(l)}}return I.map((function(e,t){if(!W&&b.find((function(t){return".$"+t===e.key})))return null;if(e.props["hidden"])return null;if(e.type["domTypeName"]==="FormCol")return e;return N(D.Col,{children:e},t)})).filter(Boolean).concat(N(D.OperateCol,a({},t,{leftList:r,rightList:n}),999))}),[I,c,b,L,G,W,o,s,A]);return N(K,{className:t("easy-table-filter",v),style:d,children:N(u,{form:L,autoComplete:"off",onFinish:V,initialValues:a({},R,Q.queryCondition),className:p,style:r.formStyle,children:r.isPure?E:N(D.Row,{gutter:[15,0],gridSize:r.formGridSize,children:$})})})};var Q=function e(){var t=h(O);return t.getEasyTableRef()};var Y=function e(){var t=h(O);return{current:t.getEasyTableRef()}};var G=["children","rowKey","pagination"],$=["tooltip","tipsWrapperProps","title"];var J=function e(i){var r=h(O);var n=i.children,l=i.rowKey,s=i.pagination,u=o(i,G);var c=r.modelKey,f=r.fieldNames,d=r.onRequest,m=r.tableList,v=r.initRequest,y=r.pageSize,C=r.tableTotal,S=r.loading,j=r.initialValues,R=r.paginationFixed,P=r.onSetPaginationStatus;var w=_(c).useStore(),k=w[0],T=w[1];var D=g((function(){if(R||s===false)return false;return a({showSizeChanger:true,current:k.queryCondition[f.pageNo]||1,pageSize:k.queryCondition[f.pageSize]||y,total:C,showTotal:function e(t){return"共 "+t+" 条记录"}},i.pagination,{selectComponentClass:b})}),[f.pageNo,f.pageSize,y,s,R,i.pagination,k.queryCondition,C]);var I=function e(t,r,n,a){if(a.action==="paginate"&&D){var o;d((o={},o[f.pageSize]=t.pageSize,o[f.pageNo]=t.current,o))}else{i.onChange==null?void 0:i.onChange(t,r,n,a)}};var B=g((function(){if(m.length===0){return[]}if(typeof l==="string"&&F(m[0][l])){return m.map((function(e){e[l]=q();return e}))}return m}),[m,l]);L.useEffectCustom((function(){var e=R||D!==false;P(e);if(v!==false||!k.isInit){if(e){var t;void d(a((t={},t[f.pageNo]=1,t[f.pageSize]=y,t),j,k.queryCondition))}else{void d(j)}}else{void T.updateFilterCondition(j)}void T.updateInitStatus()}),[]);var W=g((function(){return i.columns.map((function(e){var t=e.tooltip,i=e.tipsWrapperProps,r=e.title,n=o(e,$);if(typeof r==="string"&&i){if(typeof i==="string"){return a({},n,{title:N(A,{tipType:"popover",popoverProps:{content:i},children:r})})}return a({},n,{title:N(A,a({},i,{children:r}))})}if(typeof r==="string"&&!!t){return a({},n,{title:N(E,{tooltip:t,title:r})})}return e}))}),[i.columns]);return x(K,{className:t("easy-table-table",i.tableWrapperClassName),style:i.tableWrapperStyle,children:[n,z()?N(p,a({size:"small",scroll:{x:"max-content"},bordered:true},u,{columns:W,pagination:D,rowKey:l,onChange:I,loading:S,dataSource:B})):N(V,{children:N(p,a({size:"small",scroll:{x:"max-content"},bordered:true},u,{columns:W,pagination:D,rowKey:l,onChange:I,loading:S,dataSource:B}))})]})};var M=e.attachPropertiesToComponent(H,{Filter:U,Table:J,useEasyTablRef:Y,useEasyTable:Q});export{M as EasyTable};
15
+ import{fbaUtils as e}from"../fba-utils/index.js";import{classNames as t}from"@dimjs/utils/cjs/class-names";import{isUndefined as n}from"@dimjs/lang/cjs/is-undefined";import{isArray as i}from"@dimjs/lang/cjs/is-array";import{get as r}from"@dimjs/utils/cjs/get";import{_ as a,a as o}from"../_rollupPluginBabelHelpers-a0769acd.js";import{hooks as l}from"@wove/react/cjs/hooks";import{cloneState as s}from"@dimjs/model";import{Form as u,message as c,Table as d}from"antd";import{createContext as f,forwardRef as p,useState as m,useMemo as g,useRef as v,useImperativeHandle as y,useContext as h,Children as C}from"react";import{P as S,S as b}from"../index-6677fbfc.js";import{noop as j,isUndefinedOrNull as F,getUuid as q,isMacEnv as z}from"@flatbiz/utils";import{Model as R}from"@dimjs/model-react";import{jsx as N,jsxs as x}from"react/jsx-runtime";import P from"@ant-design/icons/es/icons/DownOutlined";import w from"@ant-design/icons/es/icons/UpOutlined";import{isFragment as k}from"react-is";import{ButtonWrapper as T}from"../button-wrapper/index.js";import{FormGrid as D}from"../form-grid/index.js";import{SimpleLayout as E}from"../simple-layout/index.js";import{fbaHooks as K}from"../fba-hooks/index.js";import{TableScrollbar as L}from"../table-scrollbar/index.js";import{TableTitleTooltip as V}from"../table-title-tooltip/index.js";import{TipsWrapper as A}from"../tips-wrapper/index.js";import"@ant-design/icons/es/icons/LoadingOutlined";import"@dimjs/lang/cjs/is-promise";import"../index-34027e61.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"ahooks";import"@ant-design/icons/es/icons/QuestionCircleOutlined";var B=f({onRequest:j,tableList:[],getEasyTableRef:function e(){}});var O={queryCondition:{},isInit:true};var I={actions:{updateFilterCondition:function e(t){return function(e){e.queryCondition=a({},e.queryCondition,t)}},resetFilterCondition:function e(t){return function(e){e.queryCondition=a({},O.queryCondition,t)}},updateInitStatus:function e(){return function(e){e.isInit=false}}},state:O};var W={};var _=function e(t){if(!W[t]){W[t]=R(I)}return W[t]};var H=p((function(e,o){var d;var f=m([]),p=f[0],h=f[1];var C=m(0),b=C[0],j=C[1];var F=m(false),q=F[0],z=F[1];var R=l.useId(undefined,"easy-table-key");var P=g((function(){return e.cacheSwitch?location.pathname:R}),[R,e.cacheSwitch]);var w=_(P).useStore(),k=w[0],T=w[1];var D=e.pageSize||((d=e.initialPaginationParams)==null?void 0:d.pageSize)||10;var E=e.initRequest===undefined?true:e.initRequest;var K=m(false),L=K[0],V=K[1];var A=v();var O=v([]);var I=m(),W=I[0],H=I[1];var U=a({list:"list",total:"total",pageNo:"pageNo",pageSize:"pageSize"},e.fieldNames);var Q=u.useForm(e.form),Y=Q[0];var G=l.useCallbackRef((function(t){return new Promise((function(n,a){var o,l,u,d,f,p,m,g,v,y,C,S;var b=function(){try{return n()}catch(e){return a(e)}};var F=function(t){try{z(false);if(e.onRequestErrorHandle){e.onRequestErrorHandle(t)}else{void c.error(t.message)}return b()}catch(e){return a(e)}};try{z(true);return Promise.resolve(T.updateFilterCondition(t)).then((function(t){try{o=t;l=s(o.queryCondition||{});u=e.serviceConfig,d=u.requestParamsAdapter,f=u.onRequest,p=u.requestResultAdapter,m=u.dynamicColumsAdapter;g=d?d(l):l;return Promise.resolve(f(g)).then((function(t){try{v=t||{};A.current=v;e.onDataSourceChange==null?void 0:e.onDataSourceChange(v);y=v;if(p){y=p(v)}if(m){C=m(v,O.current);H(C)}S=r(y,U.list);h(i(S)?S:[]);j(r(y,U.total));z(false);return b()}catch(e){return F(e)}}),F)}catch(e){return F(e)}}),F)}catch(e){F(e)}}))}));var $=l.useCallbackRef((function(e){return new Promise((function(t,n){return Promise.resolve(T.resetFilterCondition()).then((function(i){try{Y.resetFields();if(e){void T.updateFilterCondition(e);Y.setFieldsValue(e)}return t()}catch(e){return n(e)}}),n)}))}));var J=function e(t,n){if(L){var i;return i={},i[U.pageNo]=t,i[U.pageSize]=n||D,i}else{return{}}};var M=l.useCallbackRef((function(t){return new Promise((function(n,i){var r;r=a({},J(1,k.queryCondition[U.pageSize]),e.initialValues,t);return Promise.resolve(T.resetFilterCondition(r)).then((function(e){try{Y.resetFields();if(t){Y.setFieldsValue(t)}void G(r);return n()}catch(e){return i(e)}}),i)}))}));var X=l.useCallbackRef((function(){return a({},k.queryCondition,Y.getFieldsValue())}));var Z=function t(){return{onRequest:G,clearQueryCondition:$,getRequestParams:X,onResetRequest:M,form:Y,getDataSource:function e(){return A.current},onFilterDataSource:function e(t){h(t)},onClearDataSource:function e(){j(0);h([])},onUpdateDataSource:function t(n){h(n);A.current=n;e.onDataSourceChange==null?void 0:e.onDataSourceChange(n)}}};y(o,(function(){return Z()}));var ee=function e(t){V(t)};var te=function e(t){O.current=t};var ne=function t(){var n=Y.getFieldsValue();if(e.onFormFinish){e.onFormFinish(a({},n,J(1,k.queryCondition[U.pageSize])))}else{void G(a({},n,J(1,k.queryCondition[U.pageSize])))}};var ie=n(e.isFull)?true:e.isFull;var re=t("fba-easy-table",{"fba-easy-table-full":ie,"fba-easy-table-filter-fixed":e.filterFixed,"fba-easy-table-pagination-fixed":e.paginationFixed},e.className);var ae=g((function(){return a({showSizeChanger:true,current:k.queryCondition[U.pageNo]||1,pageSize:k.queryCondition[U.pageSize]||D,total:b,showTotal:function e(t){return"共 "+t+" 条记录"}},e.pagination)}),[U.pageNo,U.pageSize,D,e.pagination,k.queryCondition,b]);var oe=l.useCallbackRef((function(t,n){var i,r;void G((i={},i[U.pageSize]=n,i[U.pageNo]=t,i));(r=e.pagination)==null||r.onChange==null?void 0:r.onChange(t,n)}));var le=t("fba-easy-table-wrapper",{"fba-easy-table-wrapper-inline":e.isInline},e.className);var se=typeof e.children==="function"?e.children(A.current):e.children;return N(B.Provider,{value:{onSetBaseColumns:te,getEasyTableRef:Z,modelKey:P,onRequest:G,tableList:p,tableTotal:b,loading:q,fieldNames:U,pageSize:D,initRequest:E,initialValues:e.initialValues||{},onSetPaginationStatus:ee,paginationStatus:L,onFormFinish:ne,form:Y,paginationFixed:e.paginationFixed||false,foldKeys:e.foldKeys||[],dynamicColumns:W},children:e.paginationFixed?x("div",{className:le,style:e.style,children:[N("div",{className:re,children:se}),b>0&&N("div",{className:"fba-easy-table-pagination",children:N(S,a({size:"small"},ae,{onChange:oe}))})]}):N("div",{className:re,style:e.style,children:se})})}));var U=function e(i){var r=h(B);var o=i.queryButtonProps,s=i.resetButtonProps,c=i.filterOperate,d=i.formClassName,f=i.defaultResetButtonTriggerRequest,p=i.filterWrapperStyle,v=i.filterWrapperClassName,y=i.rightOperateAreaAppendType;var S=r.modelKey,b=r.foldKeys,j=r.fieldNames,F=r.onRequest,q=r.pageSize,z=r.paginationStatus,R=r.initialValues,K=r.form,L=r.onFormFinish;var V=typeof i.children==="function"?i.children(K):i.children;var A=y||"cover";var O=g((function(){if(k(V)){return C.toArray(V.props.children)}else{return C.toArray(V)}}),[V]);var I=m(false),W=I[0],H=I[1];var U=_(S).useStore(),Q=U[0],Y=U[1];var G=l.useCallbackRef((function(){return new Promise((function(e,t){var i;return Promise.resolve(Y.resetFilterCondition()).then((function(r){try{K.resetFields();if(n(f)||f){if(z){F(a((i={},i[j.pageNo]=1,i[j.pageSize]=q,i),R))}else{F(R)}}return e()}catch(e){return t(e)}}),t)}))}));var $=g((function(){var e=[!(o!=null&&o.hidden)?N(T,a({type:"primary",htmlType:"submit"},o,{children:(o==null?void 0:o.text)||"查询"}),"1"):null,!(s!=null&&s.hidden)?N(T,a({onClick:G},s,{children:(s==null?void 0:s.text)||"重置"}),"2"):null].filter(Boolean);var t=c==null?void 0:c(K);var n=t==null?void 0:t.rightList;var i=(t==null?void 0:t.leftList)||[];var r=e;if(n){if(A==="afterAppend"){r=[].concat(e,n)}else if(A==="beforeAppend"){r=[].concat(n,e)}else{r=n}}if(b.length>0){var l=N(T,{type:"link",style:{padding:"0"},onClick:function e(){H(!W)},children:W?x("span",{children:["收起",N(w,{style:{marginLeft:3,fontSize:12}})]}):x("span",{children:["展开",N(P,{style:{marginLeft:3,fontSize:12}})]})},"fold-trigger");if(r.length>0||i.length===0){r.push(l)}else if((i==null?void 0:i.length)>0){i.push(l)}}return O.map((function(e,t){if(!W&&b.find((function(t){return".$"+t===e.key})))return null;if(e.props["hidden"])return null;if(e.type["domTypeName"]==="FormCol")return e;return N(D.Col,{children:e},t)})).filter(Boolean).concat(N(D.OperateCol,a({},t,{leftList:i,rightList:r}),999))}),[O,c,b,K,G,W,o,s,A]);return N(E,{className:t("easy-table-filter",v),style:p,children:N(u,{form:K,autoComplete:"off",onFinish:L,initialValues:a({},R,Q.queryCondition),className:d,style:i.formStyle,children:i.isPure?V:N(D.Row,{gutter:[15,0],gridSize:i.formGridSize,children:$})})})};var Q=function e(){var t=h(B);return t.getEasyTableRef()};var Y=function e(){var t=h(B);return{current:t.getEasyTableRef()}};var G=["children","rowKey","pagination"],$=["tooltip","tipsWrapperProps","title"];var J=function e(n){var i=h(B);var r=n.children,l=n.rowKey,s=n.pagination,u=o(n,G);var c=i.modelKey,f=i.fieldNames,p=i.onRequest,m=i.tableList,v=i.initRequest,y=i.pageSize,C=i.tableTotal,S=i.loading,j=i.initialValues,R=i.paginationFixed,P=i.onSetPaginationStatus,w=i.dynamicColumns;var k=_(c).useStore(),T=k[0],D=k[1];K.useEffectCustom((function(){i.onSetBaseColumns(n.columns||[])}),[n.columns]);var O=g((function(){if(R||s===false)return false;return a({showSizeChanger:true,current:T.queryCondition[f.pageNo]||1,pageSize:T.queryCondition[f.pageSize]||y,total:C,showTotal:function e(t){return"共 "+t+" 条记录"}},n.pagination,{selectComponentClass:b})}),[f.pageNo,f.pageSize,y,s,R,n.pagination,T.queryCondition,C]);var I=function e(t,i,r,a){if(a.action==="paginate"&&O){var o;p((o={},o[f.pageSize]=t.pageSize,o[f.pageNo]=t.current,o))}else{n.onChange==null?void 0:n.onChange(t,i,r,a)}};var W=g((function(){if(m.length===0){return[]}if(typeof l==="string"&&F(m[0][l])){return m.map((function(e){e[l]=q();return e}))}return m}),[m,l]);K.useEffectCustom((function(){var e=R||O!==false;P(e);if(v!==false||!T.isInit){if(e){var t;void p(a((t={},t[f.pageNo]=1,t[f.pageSize]=y,t),j,T.queryCondition))}else{void p(j)}}else{void D.updateFilterCondition(j)}void D.updateInitStatus()}),[]);var H=g((function(){var e=w?w:n.columns;return e.map((function(e){var t=e.tooltip,n=e.tipsWrapperProps,i=e.title,r=o(e,$);if(typeof i==="string"&&n){if(typeof n==="string"){return a({},r,{title:N(A,{tipType:"popover",popoverProps:{content:n},children:i})})}return a({},r,{title:N(A,a({},n,{children:i}))})}if(typeof i==="string"&&!!t){return a({},r,{title:N(V,{tooltip:t,title:i})})}return e}))}),[w,n.columns]);return x(E,{className:t("easy-table-table",n.tableWrapperClassName),style:n.tableWrapperStyle,children:[r,z()?N(d,a({size:"small",scroll:{x:"max-content"},bordered:true},u,{columns:H,pagination:O,rowKey:l,onChange:I,loading:S,dataSource:W})):N(L,{children:N(d,a({size:"small",scroll:{x:"max-content"},bordered:true},u,{columns:H,pagination:O,rowKey:l,onChange:I,loading:S,dataSource:W}))})]})};var M=e.attachPropertiesToComponent(H,{Filter:U,Table:J,useEasyTablRef:Y,useEasyTable:Q});export{M as EasyTable};
16
16
  //# 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/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 } from './type';\n\n// export const [useEasyTableCtx, EasyTableCtxProvider] = createCtx<{\n// modelKey: string;\n// onRequest: (params?: TPlainObject) => void;\n// tableList: TPlainObject[];\n// tableTotal: number;\n// loading?: boolean;\n// fieldNames: TPlainObject;\n// pageSize: number;\n// initRequest: boolean;\n// initialValues: TPlainObject;\n// onSetPaginationStatus: (status: boolean) => void;\n// paginationStatus: boolean;\n// onFormFinish?: (values?: TPlainObject) => void;\n// form: FormInstance;\n// getEasyTableRef: () => EasyTableRefApi;\n// paginationFixed: boolean;\n// foldKeys: string[];\n// }>();\n\nexport type EditableFieldContextContextApi = {\n modelKey: string;\n onRequest: (params?: TPlainObject) => void;\n tableList: TPlainObject[];\n tableTotal: number;\n loading?: boolean;\n fieldNames: TPlainObject;\n pageSize: number;\n initRequest: boolean;\n initialValues: TPlainObject;\n onSetPaginationStatus: (status: boolean) => void;\n paginationStatus: boolean;\n onFormFinish?: (values?: TPlainObject) => void;\n form: FormInstance;\n getEasyTableRef: () => EasyTableRefApi;\n paginationFixed: boolean;\n foldKeys: string[];\n};\n\nexport const EasyTableContext = createContext<EditableFieldContextContextApi>({\n onRequest: noop,\n tableList: [],\n getEasyTableRef: () => {\n //\n },\n} as unknown as EditableFieldContextContextApi);\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, isUndefined } from '@dimjs/lang';\nimport { cloneState } from '@dimjs/model';\nimport { classNames, get } from '@dimjs/utils';\nimport { TAny, TPlainObject } from '@flatbiz/utils';\nimport { hooks } from '@wove/react';\nimport { Form, FormInstance, message, PaginationProps } from 'antd';\nimport {\n CSSProperties,\n forwardRef,\n ReactElement,\n useImperativeHandle,\n useMemo,\n useRef,\n useState,\n} from 'react';\nimport { PaginationWrapper } from '../pagination-wrapper';\nimport { EasyTableContext } from './context';\nimport { easyTableModel } from './model';\nimport './style.less';\nimport { EasyTableRefApi } from './type';\n\ntype EasyTableServiceConfig = {\n /** 接口配置 */\n onRequest: (params?: TPlainObject) => Promise<TPlainObject | TPlainObject[]>;\n /** 请求参数处理 */\n requestParamsAdapter?: (params: TPlainObject) => TPlainObject;\n /**\n * 接口相应数据处理\n * @param params\n * ```\n * 返回数据为对象,包含两个字段\n * 1. 表格列表数据 - Array\n * 2. 表格条数总数 - Number\n * 其中 字段key 命名会通过 fieldNames 进行转义\n * 例如:\n * fieldNames={{\n * list: 'aList',\n * total: 'aTotal',\n * }}\n * serviceConfig={{\n * url: '/v1/board/list',\n * requestResultAdapter: (respData) => {\n * return {\n * aList: respData.data.rows,\n * aTotal: respData.page.total,\n * };\n * },\n * }}\n * ```\n */\n requestResultAdapter?: (params: TAny) => TPlainObject;\n};\n\nexport type EasyTableProps = {\n className?: string;\n style?: CSSProperties;\n children: ReactElement | ReactElement[] | ((dataSource?: TAny) => ReactElement);\n /**\n * EasyTable唯一值,可用于缓存查询条件\n * @deprecated 已过时,如果需要缓存数据请设置 cacheSwitch 参数\n */\n modelKey?: string;\n /**\n * 缓存查询条件开关,默认false\n * ```\n * 是否缓存表格查询条件,在路由跳转回来时,不会丢失\n * ```\n */\n cacheSwitch?: boolean;\n /** 接口数据配置 */\n serviceConfig: EasyTableServiceConfig;\n /**\n * 1. 查询条件Form initialValues\n * 2. 接口其他参数,例如常量类型\n */\n initialValues?: TPlainObject;\n /**\n * 分页初始化参数,默认值: pageSize = 10\n * @deprecated 已过时 4.3.0版本移除,使用 pageSize 赋值\n */\n initialPaginationParams?: { pageSize?: number };\n /** 分页单页条数,默认值:10 */\n pageSize?: number;\n /**\n * 字段映射,默认值:{ list:'list', total:'total', pageNo:'pageNo', pageSize:'pageSize' }\n * ```\n * 1. list、total用于解析接口响应数据,可以配置多级,例如:{ list: 'data.rows', total: 'page.total' }\n * 2. pageNo、pageSize用于接口分页入参Key定义,只能一级,例如:pageNo: 'page'\n * ```\n */\n fieldNames?: { list?: string; total?: string; pageNo?: string; pageSize?: string };\n /** 初始化是否请求,默认值:true */\n initRequest?: boolean;\n onDataSourceChange?: (dataSource: TAny) => void;\n /** 如果自定义查询按钮,可设置 Form onFinish */\n onFormFinish?: (values?: TPlainObject) => void;\n /** 在父节点高度下,上下铺满;默认值:true */\n isFull?: boolean;\n /** 查询条件固定,不随滚动条滚动 */\n filterFixed?: boolean;\n /** 分页区域固定,不随滚动条滚动 */\n paginationFixed?: boolean;\n /**\n * 1. 配合paginationFixed=true一起使用有效果\n * 2. 当使用Table内的pagination时,在EasyTable.Table中配置分页属性\n */\n pagination?: PaginationProps;\n /**\n * 查询条件展开、收起,被收起key数组;数组内容为EasyTable.Filter 子节点key值\n */\n foldKeys?: string[];\n /**\n * 自定义处理服务异常\n * @param error\n * @returns\n */\n onRequestErrorHandle?: (error) => void;\n /**\n * 是否inline模式\n * ```\n * 1. 缩短 EasyTable.Filter 与 EasyTable.Table 之间的距离\n * 2. 取消内边距\n * ```\n */\n isInline?: boolean;\n /** Form 实例 */\n form?: FormInstance;\n};\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\n const modelKey = useMemo(() => {\n return props.cacheSwitch ? location.pathname : 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 [paginationStatus, setPaginationStatus] = useState(false);\n const respOriginalDataRef = useRef<TAny>();\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 setLoading(true);\n const allState = await actions.updateFilterCondition(params);\n const queryCondition = cloneState(allState.queryCondition || {});\n const { requestParamsAdapter, onRequest, requestResultAdapter } = 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 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 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 getPaginationData = (pageNo: number, _pageSize: number) => {\n if (paginationStatus) {\n return {\n [fieldNames.pageNo]: pageNo,\n [fieldNames.pageSize]: _pageSize || pageSize,\n };\n } else {\n return {};\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 getEasyTableRef = () => {\n return {\n /**\n * 参数\n * 1. 不用添加已存在的搜索条件\n * 2. 此处可重新\n */\n onRequest: onInnerRequest,\n clearQueryCondition,\n getRequestParams,\n onResetRequest,\n form,\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 };\n };\n\n useImperativeHandle(ref, () => {\n return getEasyTableRef();\n });\n\n const onSetPaginationStatus = (status: boolean) => {\n setPaginationStatus(status);\n };\n\n const onFormFinish = () => {\n const values = form.getFieldsValue();\n if (props.onFormFinish) {\n props.onFormFinish({ ...values, ...getPaginationData(1, state.queryCondition[fieldNames.pageSize]) });\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 onChange = hooks.useCallbackRef((page: number, pageSize: number) => {\n void onInnerRequest({ [fieldNames.pageSize]: pageSize, [fieldNames.pageNo]: page });\n props.pagination?.onChange?.(page, pageSize);\n });\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 children =\n typeof props.children === 'function' ? props.children(respOriginalDataRef.current) : props.children;\n\n return (\n <EasyTableContext.Provider\n value={{\n getEasyTableRef,\n modelKey,\n onRequest: onInnerRequest,\n tableList: dataSource,\n tableTotal: total,\n loading,\n fieldNames,\n pageSize,\n initRequest,\n initialValues: props.initialValues || {},\n onSetPaginationStatus,\n paginationStatus,\n onFormFinish,\n form,\n paginationFixed: props.paginationFixed || false,\n foldKeys: props.foldKeys || [],\n }}\n >\n {props.paginationFixed ? (\n <div className={wrapperClassName} style={props.style}>\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={className} style={props.style}>\n {children}\n </div>\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 { Form, FormInstance } from 'antd';\nimport { Children, CSSProperties, ReactElement, useContext, useMemo, useState } from 'react';\nimport { isFragment } from 'react-is';\nimport { ButtonWrapper, ButtonWrapperProps } from '../button-wrapper';\nimport { FormGrid } from '../form-grid';\nimport { FormOperateColProps } from '../form-grid/form-operate-col';\nimport { FormRowProps } from '../form-grid/form-row';\nimport { SimpleLayout } from '../simple-layout';\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 formClassName?: string;\n formStyle?: CSSProperties;\n /** filter Form 外层 SimpleLayout style */\n filterWrapperStyle?: CSSProperties;\n /** filter Form 外层 SimpleLayout 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};\n\n/**\n * 过滤条件\n *\n *```\n * 1. 用法1\n * -- 默认网格布局 规则:{ xs: 24, sm: 12, md: 12, lg: 8, xl: 8, xxl: 6 }\n * <EasyTableFilter>\n * <Form.Item name=\"field1\" label=\"条件1\">xxx</Form.Item>\n * </EasyTableFilter>\n *\n * -- 自定义网格布局 使用 FormCol组件包装 Form.Item\n * <EasyTableFilter>\n * <FormCol span={12}><Form.Item name=\"field1\" label=\"条件1\">xxx</Form.Item></FormCol>\n * </EasyTableFilter>\n *\n * -- children 可为 function\n * <EasyTableFilter>\n * {(form) => {\n * return <Form.Item name=\"field1\" label=\"条件1\">xxx</Form.Item>\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,可在右侧按钮区域新增自定义按钮\n *```\n */\nexport const EasyTableFilter = (props: EasyTableFilterProps) => {\n const ctx = useContext(EasyTableContext);\n const {\n queryButtonProps,\n resetButtonProps,\n filterOperate,\n formClassName,\n defaultResetButtonTriggerRequest,\n filterWrapperStyle,\n filterWrapperClassName,\n rightOperateAreaAppendType,\n } = props;\n const {\n modelKey,\n foldKeys,\n fieldNames,\n onRequest,\n pageSize,\n paginationStatus,\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 if (paginationStatus) {\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 <ButtonWrapper key=\"1\" type=\"primary\" htmlType=\"submit\" {...queryButtonProps}>\n {queryButtonProps?.text || '查询'}\n </ButtonWrapper>,\n <ButtonWrapper key=\"2\" onClick={onReset} {...resetButtonProps}>\n {resetButtonProps?.text || '重置'}\n </ButtonWrapper>,\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\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 return (\n <SimpleLayout\n className={classNames('easy-table-filter', filterWrapperClassName)}\n style={filterWrapperStyle}\n >\n <Form\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 >\n {props.isPure ? (\n children\n ) : (\n <FormGrid.Row gutter={[15, 0]} gridSize={props.formGridSize}>\n {formRowChildren}\n </FormGrid.Row>\n )}\n </Form>\n </SimpleLayout>\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 *\n * @deprecated 已过时 @4.3.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 { Table, TableProps } from 'antd';\nimport { ColumnsType } from 'antd/lib/table';\nimport { CSSProperties, ReactElement, useContext, useMemo } from 'react';\nimport { fbaHooks } from '../fba-hooks';\nimport { SmallSelect } from '../pagination-wrapper/select';\nimport { SimpleLayout } from '../simple-layout';\nimport { TableScrollbar } from '../table-scrollbar';\nimport { TableTitleTooltip } from '../table-title-tooltip';\nimport { TipsWrapper } from '../tips-wrapper';\nimport { TipsWrapperProps } from '../tips-wrapper/tips-wrapper';\nimport { EasyTableContext } from './context';\nimport { easyTableModel } from './model';\n\nexport type TEasyTableTableColumn<T> = ColumnsType<T>[0] & {\n /**\n * @description 请使用 tipsWrapperProps 属性配置\n * ```\n * 会在 title 之后展示一个 icon,hover 之后提示一些信息\n * 1. title为string类型有效\n * 2. hoverArea 默认值:icon\n * ```\n */\n tooltip?: string | { content: string; icon?: ReactElement; hoverArea?: 'icon' | 'all' };\n dataIndex?: keyof T | (string & {});\n /**\n * 会在 title 之后展示一个 icon\n * ```\n * 1. title为string类型有效\n * 2. 可为icon添加提示效果\n * 3. 可为icon添加点击事件\n * ```\n */\n tipsWrapperProps?: string | TipsWrapperProps;\n};\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 columns: TEasyTableTableColumn<T>[];\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, ...otherProps } = props;\n\n const {\n modelKey,\n fieldNames,\n onRequest,\n tableList,\n initRequest,\n pageSize,\n tableTotal,\n loading,\n initialValues,\n paginationFixed,\n onSetPaginationStatus,\n } = ctx;\n const [state, actions] = easyTableModel(modelKey).useStore();\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({ [fieldNames.pageSize]: pagination.pageSize, [fieldNames.pageNo]: pagination.current });\n } else {\n props.onChange?.(pagination, filters, sorter, extra);\n }\n };\n\n const dataSource = useMemo(() => {\n if (tableList.length === 0) {\n return [];\n }\n if (typeof rowKey === 'string' && isUndefinedOrNull(tableList[0][rowKey])) {\n return tableList.map((item) => {\n item[rowKey] = getUuid();\n return item;\n });\n }\n return tableList;\n }, [tableList, rowKey]);\n\n fbaHooks.useEffectCustom(() => {\n const hasPagination = paginationFixed || tablePaginationData !== false;\n onSetPaginationStatus(hasPagination);\n if (initRequest !== false || !state.isInit) {\n if (hasPagination) {\n void onRequest({\n [fieldNames.pageNo]: 1,\n [fieldNames.pageSize]: pageSize,\n ...initialValues,\n ...state.queryCondition,\n });\n } else {\n void onRequest(initialValues);\n }\n } else {\n void actions.updateFilterCondition(initialValues);\n }\n void actions.updateInitStatus();\n }, []);\n\n const columns = useMemo(() => {\n return props.columns.map((item) => {\n const { tooltip, tipsWrapperProps, title, ...otherProps } = item;\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 }, [props.columns]);\n\n return (\n <SimpleLayout\n className={classNames('easy-table-table', props.tableWrapperClassName)}\n style={props.tableWrapperStyle}\n >\n {children}\n {isMacEnv() ? (\n <Table\n size=\"small\"\n scroll={{ x: 'max-content' }}\n bordered\n {...otherProps}\n columns={columns}\n pagination={tablePaginationData}\n rowKey={rowKey}\n onChange={onChangePage}\n loading={loading}\n dataSource={dataSource}\n />\n ) : (\n <TableScrollbar>\n <Table\n size=\"small\"\n scroll={{ x: 'max-content' }}\n bordered\n {...otherProps}\n columns={columns}\n pagination={tablePaginationData}\n rowKey={rowKey}\n onChange={onChangePage}\n loading={loading}\n dataSource={dataSource}\n />\n </TableScrollbar>\n )}\n </SimpleLayout>\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 * 1. 废弃modelKey参数\n * 2. 如果需要在路由跳转回退中缓存查询条件,设置cacheSwitch=true\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 *\n * Demo https://fex.qa.tcshuke.com/docs/admin/main/crud/easy-table\n * ```\n */\nexport const EasyTable = fbaUtils.attachPropertiesToComponent(EasyTableInner, {\n /**\n * 过滤条件\n * @param props\n * @returns\n *\n *```\n *1. 用法1\n * -- 默认网格布局 规则:{ xs: 24, sm: 12, md: 12, lg: 8, xl: 8, xxl: 6 }\n * <EasyTable.Filter>\n * <Form.Item name=\"field1\" label=\"条件1\">xxx</Form.Item>\n * </EasyTable.Filter>\n *\n * -- 自定义网格布局 使用 FormCol组件包装 Form.Item\n * <EasyTable.Filter>\n * <FormCol span={12}><Form.Item name=\"field1\" label=\"条件1\">xxx</Form.Item></FormCol>\n * </EasyTable.Filter>\n *\n * -- children 可为 function\n * <EasyTable.Filter>\n * {(form) => {\n * return <Form.Item name=\"field1\" label=\"条件1\">xxx</Form.Item>\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 *```\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 /**\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","defaultState","queryCondition","isInit","_EasyTableModel","actions","updateFilterCondition","params","state","_extends","resetFilterCondition","updateInitStatus","easyTableModels","easyTableModel","key","Model","EasyTable","forwardRef","props","ref","_props$initialPaginat","_useState","useState","dataSource","setDataSource","_useState2","total","setTotal","_useState3","loading","setLoading","easyTableId","_hooks","useId","undefined","modelKey","useMemo","cacheSwitch","location","pathname","_easyTableModel$useSt","useStore","pageSize","initialPaginationParams","initRequest","_useState4","paginationStatus","setPaginationStatus","respOriginalDataRef","useRef","fieldNames","list","pageNo","_Form$useForm","Form","useForm","form","onInnerRequest","useCallbackRef","Promise","$return","$error","allState","_props$serviceConfig","requestParamsAdapter","requestResultAdapter","paramsNew","respData","respDataNew","respList","$Try_1_Post","$boundEx","$Try_1_Catch","error","onRequestErrorHandle","message","resolve","then","$await_2","cloneState","serviceConfig","$await_3","current","onDataSourceChange","_get","_isArray","clearQueryCondition","values","$await_4","resetFields","setFieldsValue","getPaginationData","_pageSize","_ref","onResetRequest","initialValues","$await_5","getRequestParams","getFieldsValue","getDataSource","onFilterDataSource","filterDataSource","onClearDataSource","onUpdateDataSource","dataList","useImperativeHandle","onSetPaginationStatus","status","onFormFinish","isFull","_isUndefined","className","_classNames","filterFixed","paginationFixed","paginationData","showSizeChanger","showTotal","pagination","onChange","page","_onInnerRequest","_props$pagination","wrapperClassName","isInline","children","_jsx","Provider","value","tableTotal","foldKeys","_jsxs","style","PaginationWrapper","size","EasyTableFilter","ctx","useContext","queryButtonProps","resetButtonProps","filterOperate","formClassName","defaultResetButtonTriggerRequest","filterWrapperStyle","filterWrapperClassName","rightOperateAreaAppendType","rightOperateAreaAppendTypeFt","childrens","isFragment","Children","toArray","openFold","setOpenFold","onReset","_extends2","$await_1","formRowChildren","defaultRightList","ButtonWrapper","type","htmlType","text","onClick","filter","Boolean","customFormOperateCol","customRightList","rightList","leftList","concat","length","changeFolditem","padding","_UpOutlined","marginLeft","fontSize","_DownOutlined","push","map","item","index","find","keyItem","FormGrid","Col","OperateCol","SimpleLayout","autoComplete","onFinish","formStyle","isPure","Row","gutter","gridSize","formGridSize","useEasyTable","useEasyTablRef","EasyTableTable","rowKey","otherProps","_objectWithoutPropertiesLoose","_excluded","tablePaginationData","selectComponentClass","SmallSelect","onChangePage","filters","sorter","extra","action","_onRequest","isUndefinedOrNull","getUuid","fbaHooks","useEffectCustom","hasPagination","columns","tooltip","tipsWrapperProps","title","_excluded2","TipsWrapper","tipType","popoverProps","content","TableTitleTooltip","tableWrapperClassName","tableWrapperStyle","isMacEnv","Table","scroll","x","bordered","TableScrollbar","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/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\n// export const [useEasyTableCtx, EasyTableCtxProvider] = createCtx<{\n// modelKey: string;\n// onRequest: (params?: TPlainObject) => void;\n// tableList: TPlainObject[];\n// tableTotal: number;\n// loading?: boolean;\n// fieldNames: TPlainObject;\n// pageSize: number;\n// initRequest: boolean;\n// initialValues: TPlainObject;\n// onSetPaginationStatus: (status: boolean) => void;\n// paginationStatus: boolean;\n// onFormFinish?: (values?: TPlainObject) => void;\n// form: FormInstance;\n// getEasyTableRef: () => EasyTableRefApi;\n// paginationFixed: boolean;\n// foldKeys: string[];\n// }>();\n\nexport type EditableFieldContextContextApi = {\n modelKey: string;\n onRequest: (params?: TPlainObject) => void;\n tableList: TPlainObject[];\n tableTotal: number;\n loading?: boolean;\n fieldNames: TPlainObject;\n pageSize: number;\n initRequest: boolean;\n initialValues: TPlainObject;\n onSetPaginationStatus: (status: boolean) => void;\n paginationStatus: boolean;\n onFormFinish?: (values?: TPlainObject) => void;\n form: FormInstance;\n getEasyTableRef: () => EasyTableRefApi;\n paginationFixed: boolean;\n foldKeys: string[];\n dynamicColumns?: TEasyTableTableColumn<TPlainObject>[];\n onSetBaseColumns: (baseColumns?: TEasyTableTableColumn<TPlainObject>[]) => void;\n};\n\nexport const EasyTableContext = createContext<EditableFieldContextContextApi>({\n onRequest: noop,\n tableList: [],\n getEasyTableRef: () => {\n //\n },\n} as unknown as EditableFieldContextContextApi);\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, isUndefined } from '@dimjs/lang';\nimport { cloneState } from '@dimjs/model';\nimport { classNames, get } from '@dimjs/utils';\nimport { TAny, TPlainObject } from '@flatbiz/utils';\nimport { hooks } from '@wove/react';\nimport { Form, FormInstance, message, PaginationProps } from 'antd';\nimport {\n CSSProperties,\n forwardRef,\n ReactElement,\n useImperativeHandle,\n useMemo,\n useRef,\n useState,\n} from 'react';\nimport { PaginationWrapper } from '../pagination-wrapper';\nimport { EasyTableContext } from './context';\nimport { easyTableModel } from './model';\nimport './style.less';\nimport { EasyTableRefApi, TEasyTableTableColumn } from './type';\n\ntype EasyTableServiceConfig = {\n /** 接口配置 */\n onRequest: (params?: TPlainObject) => Promise<TPlainObject | TPlainObject[]>;\n /** 请求参数处理 */\n requestParamsAdapter?: (params: TPlainObject) => TPlainObject;\n /**\n * 接口相应数据处理\n * @param params\n * ```\n * 返回数据为对象,包含两个字段\n * 1. 表格列表数据 - Array\n * 2. 表格条数总数 - Number\n * 其中 字段key 命名会通过 fieldNames 进行转义\n * 例如:\n * fieldNames={{\n * list: 'aList',\n * total: 'aTotal',\n * }}\n * serviceConfig={{\n * url: '/v1/board/list',\n * requestResultAdapter: (respData) => {\n * return {\n * aList: respData.data.rows,\n * aTotal: respData.page.total,\n * };\n * },\n * }}\n * ```\n */\n requestResultAdapter?: (params: TAny) => TPlainObject;\n /**\n * 动态列自定义渲染\n * ```\n * 1. respData: 接口返回数据\n * 2. columns: Table columns配置项\n * ```\n *\n */\n dynamicColumsAdapter?: (\n respData?: TAny,\n columns?: TEasyTableTableColumn<TPlainObject>[],\n ) => TEasyTableTableColumn<TPlainObject>[] | undefined;\n};\n\nexport type EasyTableProps = {\n className?: string;\n style?: CSSProperties;\n children: ReactElement | ReactElement[] | ((dataSource?: TAny) => ReactElement);\n /**\n * EasyTable唯一值,可用于缓存查询条件\n * @deprecated 已过时,如果需要缓存数据请设置 cacheSwitch 参数\n */\n modelKey?: string;\n /**\n * 缓存查询条件开关,默认false\n * ```\n * 是否缓存表格查询条件,在路由跳转回来时,不会丢失\n * ```\n */\n cacheSwitch?: boolean;\n /** 接口数据配置 */\n serviceConfig: EasyTableServiceConfig;\n /**\n * 1. 查询条件Form initialValues\n * 2. 接口其他参数,例如常量类型\n */\n initialValues?: TPlainObject;\n /**\n * 分页初始化参数,默认值: pageSize = 10\n * @deprecated 已过时 4.3.0版本移除,使用 pageSize 赋值\n */\n initialPaginationParams?: { pageSize?: number };\n /** 分页单页条数,默认值:10 */\n pageSize?: number;\n /**\n * 字段映射,默认值:{ list:'list', total:'total', pageNo:'pageNo', pageSize:'pageSize' }\n * ```\n * 1. list、total用于解析接口响应数据,可以配置多级,例如:{ list: 'data.rows', total: 'page.total' }\n * 2. pageNo、pageSize用于接口分页入参Key定义,只能一级,例如:pageNo: 'page'\n * ```\n */\n fieldNames?: { list?: string; total?: string; pageNo?: string; pageSize?: string };\n /** 初始化是否请求,默认值:true */\n initRequest?: boolean;\n onDataSourceChange?: (dataSource: TAny) => void;\n /** 如果自定义查询按钮,可设置 Form onFinish */\n onFormFinish?: (values?: TPlainObject) => void;\n /** 在父节点高度下,上下铺满;默认值:true */\n isFull?: boolean;\n /** 查询条件固定,不随滚动条滚动 */\n filterFixed?: boolean;\n /** 分页区域固定,不随滚动条滚动 */\n paginationFixed?: boolean;\n /**\n * 1. 配合paginationFixed=true一起使用有效果\n * 2. 当使用Table内的pagination时,在EasyTable.Table中配置分页属性\n */\n pagination?: PaginationProps;\n /**\n * 查询条件展开、收起,被收起key数组;数组内容为EasyTable.Filter 子节点key值\n */\n foldKeys?: string[];\n /**\n * 自定义处理服务异常\n * @param error\n * @returns\n */\n onRequestErrorHandle?: (error) => void;\n /**\n * 是否inline模式\n * ```\n * 1. 缩短 EasyTable.Filter 与 EasyTable.Table 之间的距离\n * 2. 取消内边距\n * ```\n */\n isInline?: boolean;\n /** Form 实例 */\n form?: FormInstance;\n};\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\n const modelKey = useMemo(() => {\n return props.cacheSwitch ? location.pathname : 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 [paginationStatus, setPaginationStatus] = useState(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 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 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 getPaginationData = (pageNo: number, _pageSize: number) => {\n if (paginationStatus) {\n return {\n [fieldNames.pageNo]: pageNo,\n [fieldNames.pageSize]: _pageSize || pageSize,\n };\n } else {\n return {};\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 getEasyTableRef = () => {\n return {\n /**\n * 参数\n * 1. 不用添加已存在的搜索条件\n * 2. 此处可重新\n */\n onRequest: onInnerRequest,\n clearQueryCondition,\n getRequestParams,\n onResetRequest,\n form,\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 };\n };\n\n useImperativeHandle(ref, () => {\n return getEasyTableRef();\n });\n\n const onSetPaginationStatus = (status: boolean) => {\n setPaginationStatus(status);\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({ ...values, ...getPaginationData(1, state.queryCondition[fieldNames.pageSize]) });\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 onChange = hooks.useCallbackRef((page: number, pageSize: number) => {\n void onInnerRequest({ [fieldNames.pageSize]: pageSize, [fieldNames.pageNo]: page });\n props.pagination?.onChange?.(page, pageSize);\n });\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 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 tableList: dataSource,\n tableTotal: total,\n loading,\n fieldNames,\n pageSize,\n initRequest,\n initialValues: props.initialValues || {},\n onSetPaginationStatus,\n paginationStatus,\n onFormFinish,\n form,\n paginationFixed: props.paginationFixed || false,\n foldKeys: props.foldKeys || [],\n dynamicColumns,\n }}\n >\n {props.paginationFixed ? (\n <div className={wrapperClassName} style={props.style}>\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={className} style={props.style}>\n {children}\n </div>\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 { Form, FormInstance } from 'antd';\nimport { Children, CSSProperties, ReactElement, useContext, useMemo, useState } from 'react';\nimport { isFragment } from 'react-is';\nimport { ButtonWrapper, ButtonWrapperProps } from '../button-wrapper';\nimport { FormGrid } from '../form-grid';\nimport { FormOperateColProps } from '../form-grid/form-operate-col';\nimport { FormRowProps } from '../form-grid/form-row';\nimport { SimpleLayout } from '../simple-layout';\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 formClassName?: string;\n formStyle?: CSSProperties;\n /** filter Form 外层 SimpleLayout style */\n filterWrapperStyle?: CSSProperties;\n /** filter Form 外层 SimpleLayout 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};\n\n/**\n * 过滤条件\n *\n *```\n * 1. 用法1\n * -- 默认网格布局 规则:{ xs: 24, sm: 12, md: 12, lg: 8, xl: 8, xxl: 6 }\n * <EasyTableFilter>\n * <Form.Item name=\"field1\" label=\"条件1\">xxx</Form.Item>\n * </EasyTableFilter>\n *\n * -- 自定义网格布局 使用 FormCol组件包装 Form.Item\n * <EasyTableFilter>\n * <FormCol span={12}><Form.Item name=\"field1\" label=\"条件1\">xxx</Form.Item></FormCol>\n * </EasyTableFilter>\n *\n * -- children 可为 function\n * <EasyTableFilter>\n * {(form) => {\n * return <Form.Item name=\"field1\" label=\"条件1\">xxx</Form.Item>\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,可在右侧按钮区域新增自定义按钮\n *```\n */\nexport const EasyTableFilter = (props: EasyTableFilterProps) => {\n const ctx = useContext(EasyTableContext);\n const {\n queryButtonProps,\n resetButtonProps,\n filterOperate,\n formClassName,\n defaultResetButtonTriggerRequest,\n filterWrapperStyle,\n filterWrapperClassName,\n rightOperateAreaAppendType,\n } = props;\n const {\n modelKey,\n foldKeys,\n fieldNames,\n onRequest,\n pageSize,\n paginationStatus,\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 if (paginationStatus) {\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\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 return (\n <SimpleLayout\n className={classNames('easy-table-filter', filterWrapperClassName)}\n style={filterWrapperStyle}\n >\n <Form\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 >\n {props.isPure ? (\n children\n ) : (\n <FormGrid.Row gutter={[15, 0]} gridSize={props.formGridSize}>\n {formRowChildren}\n </FormGrid.Row>\n )}\n </Form>\n </SimpleLayout>\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 *\n * @deprecated 已过时 @4.3.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 { Table, TableProps } from 'antd';\nimport { CSSProperties, ReactElement, useContext, useMemo } from 'react';\nimport { fbaHooks } from '../fba-hooks';\nimport { SmallSelect } from '../pagination-wrapper/select';\nimport { SimpleLayout } from '../simple-layout';\nimport { TableScrollbar } from '../table-scrollbar';\nimport { TableTitleTooltip } from '../table-title-tooltip';\nimport { TipsWrapper } from '../tips-wrapper';\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 columns: TEasyTableTableColumn<T>[];\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, ...otherProps } = props;\n\n const {\n modelKey,\n fieldNames,\n onRequest,\n tableList,\n initRequest,\n pageSize,\n tableTotal,\n loading,\n initialValues,\n paginationFixed,\n onSetPaginationStatus,\n dynamicColumns,\n } = ctx;\n const [state, actions] = easyTableModel(modelKey).useStore();\n\n fbaHooks.useEffectCustom(() => {\n ctx.onSetBaseColumns((props.columns || []) as TEasyTableTableColumn<TPlainObject>[]);\n }, [props.columns]);\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({ [fieldNames.pageSize]: pagination.pageSize, [fieldNames.pageNo]: pagination.current });\n } else {\n props.onChange?.(pagination, filters, sorter, extra);\n }\n };\n\n const dataSource = useMemo(() => {\n if (tableList.length === 0) {\n return [];\n }\n if (typeof rowKey === 'string' && isUndefinedOrNull(tableList[0][rowKey])) {\n return tableList.map((item) => {\n item[rowKey] = getUuid();\n return item;\n });\n }\n return tableList;\n }, [tableList, rowKey]);\n\n fbaHooks.useEffectCustom(() => {\n const hasPagination = paginationFixed || tablePaginationData !== false;\n onSetPaginationStatus(hasPagination);\n if (initRequest !== false || !state.isInit) {\n if (hasPagination) {\n void onRequest({\n [fieldNames.pageNo]: 1,\n [fieldNames.pageSize]: pageSize,\n ...initialValues,\n ...state.queryCondition,\n });\n } else {\n void onRequest(initialValues);\n }\n } else {\n void actions.updateFilterCondition(initialValues);\n }\n void actions.updateInitStatus();\n }, []);\n\n const columns = useMemo(() => {\n const columns = dynamicColumns ? dynamicColumns : props.columns;\n\n return columns.map((item) => {\n const { tooltip, tipsWrapperProps, title, ...otherProps } = item;\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 }, [dynamicColumns, props.columns]);\n\n return (\n <SimpleLayout\n className={classNames('easy-table-table', props.tableWrapperClassName)}\n style={props.tableWrapperStyle}\n >\n {children}\n {isMacEnv() ? (\n <Table\n size=\"small\"\n scroll={{ x: 'max-content' }}\n bordered\n {...otherProps}\n columns={columns}\n pagination={tablePaginationData}\n rowKey={rowKey}\n onChange={onChangePage}\n loading={loading}\n dataSource={dataSource}\n />\n ) : (\n <TableScrollbar>\n <Table\n size=\"small\"\n scroll={{ x: 'max-content' }}\n bordered\n {...otherProps}\n columns={columns}\n pagination={tablePaginationData}\n rowKey={rowKey}\n onChange={onChangePage}\n loading={loading}\n dataSource={dataSource}\n />\n </TableScrollbar>\n )}\n </SimpleLayout>\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 * 1. 废弃modelKey参数\n * 2. 如果需要在路由跳转回退中缓存查询条件,设置cacheSwitch=true\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 *\n * Demo https://fex.qa.tcshuke.com/docs/admin/main/crud/easy-table\n * ```\n */\nexport const EasyTable = fbaUtils.attachPropertiesToComponent(EasyTableInner, {\n /**\n * 过滤条件\n * @param props\n * @returns\n *\n *```\n *1. 用法1\n * -- 默认网格布局 规则:{ xs: 24, sm: 12, md: 12, lg: 8, xl: 8, xxl: 6 }\n * <EasyTable.Filter>\n * <Form.Item name=\"field1\" label=\"条件1\">xxx</Form.Item>\n * </EasyTable.Filter>\n *\n * -- 自定义网格布局 使用 FormCol组件包装 Form.Item\n * <EasyTable.Filter>\n * <FormCol span={12}><Form.Item name=\"field1\" label=\"条件1\">xxx</Form.Item></FormCol>\n * </EasyTable.Filter>\n *\n * -- children 可为 function\n * <EasyTable.Filter>\n * {(form) => {\n * return <Form.Item name=\"field1\" label=\"条件1\">xxx</Form.Item>\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 *```\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 /**\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","defaultState","queryCondition","isInit","_EasyTableModel","actions","updateFilterCondition","params","state","_extends","resetFilterCondition","updateInitStatus","easyTableModels","easyTableModel","key","Model","EasyTable","forwardRef","props","ref","_props$initialPaginat","_useState","useState","dataSource","setDataSource","_useState2","total","setTotal","_useState3","loading","setLoading","easyTableId","_hooks","useId","undefined","modelKey","useMemo","cacheSwitch","location","pathname","_easyTableModel$useSt","useStore","pageSize","initialPaginationParams","initRequest","_useState4","paginationStatus","setPaginationStatus","respOriginalDataRef","useRef","baseColumnsRef","_useState5","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","resolve","then","$await_2","cloneState","serviceConfig","$await_3","respData","current","onDataSourceChange","_get","_isArray","clearQueryCondition","values","$await_4","resetFields","setFieldsValue","getPaginationData","_pageSize","_ref","onResetRequest","initialValues","$await_5","getRequestParams","getFieldsValue","getDataSource","onFilterDataSource","filterDataSource","onClearDataSource","onUpdateDataSource","dataList","useImperativeHandle","onSetPaginationStatus","status","onSetBaseColumns","base","onFormFinish","isFull","_isUndefined","className","_classNames","filterFixed","paginationFixed","paginationData","showSizeChanger","showTotal","pagination","onChange","page","_onInnerRequest","_props$pagination","wrapperClassName","isInline","children","_jsx","Provider","value","tableTotal","foldKeys","_jsxs","style","PaginationWrapper","size","EasyTableFilter","ctx","useContext","queryButtonProps","resetButtonProps","filterOperate","formClassName","defaultResetButtonTriggerRequest","filterWrapperStyle","filterWrapperClassName","rightOperateAreaAppendType","rightOperateAreaAppendTypeFt","childrens","isFragment","Children","toArray","openFold","setOpenFold","onReset","_extends2","$await_1","formRowChildren","defaultRightList","hidden","ButtonWrapper","type","htmlType","text","onClick","filter","Boolean","customFormOperateCol","customRightList","rightList","leftList","concat","length","changeFolditem","padding","_UpOutlined","marginLeft","fontSize","_DownOutlined","push","map","item","index","find","keyItem","FormGrid","Col","OperateCol","SimpleLayout","autoComplete","onFinish","formStyle","isPure","Row","gutter","gridSize","formGridSize","useEasyTable","useEasyTablRef","EasyTableTable","rowKey","otherProps","_objectWithoutPropertiesLoose","_excluded","fbaHooks","useEffectCustom","columns","tablePaginationData","selectComponentClass","SmallSelect","onChangePage","filters","sorter","extra","action","_onRequest","isUndefinedOrNull","getUuid","hasPagination","tooltip","tipsWrapperProps","title","_excluded2","TipsWrapper","tipType","popoverProps","content","TableTitleTooltip","tableWrapperClassName","tableWrapperStyle","isMacEnv","Table","scroll","x","bordered","TableScrollbar","fbaUtils","attachPropertiesToComponent","EasyTableInner","Filter"],"mappings":"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"}
@@ -22,5 +22,5 @@ import './../input-wrapper/index.css';
22
22
  import './../input-text-area-wrapper/index.css';
23
23
  import './index.css';
24
24
  /*! @flatjs/forge MIT @flatbiz/antd */
25
- import e from"@ant-design/icons/es/icons/PlusOutlined";import{_ as n,a as r}from"../_rollupPluginBabelHelpers-a0769acd.js";import{arrayField2LabelValue as i,toArray as a}from"@flatbiz/utils";import{Form as t,Checkbox as l,InputNumber as o,Radio as d,Tag as m,Space as u,Button as s,Input as c,Table as f}from"antd";import{useMemo as p,useState as v,useEffect as g,Fragment as b,forwardRef as h,useRef as C,useImperativeHandle as x,isValidElement as j}from"react";import{ButtonWrapper as w}from"../button-wrapper/index.js";import{TableTitleTooltip as I}from"../table-title-tooltip/index.js";import{TipsWrapper as R}from"../tips-wrapper/index.js";import{isArray as y}from"@dimjs/lang/cjs/is-array";import{extend as N}from"@dimjs/utils/cjs/extend";import{classNames as k}from"@dimjs/utils/cjs/class-names";import{hooks as P}from"@wove/react/cjs/hooks";import{tableCellRender as F}from"../table-cell-render/index.js";import{jsx as L,jsxs as T,Fragment as O}from"react/jsx-runtime";import{DatePickerWrapper as A}from"../date-picker-wrapper/index.js";import{DateRangePickerWrapper as V}from"../date-range-picker-wrapper/index.js";import{InputWrapper as W}from"../input-wrapper/index.js";import{SelectorWrapper as B}from"../selector-wrapper/index.js";import{SwitchWrapper as S}from"../switch-wrapper/index.js";import{isBoolean as _}from"@dimjs/lang/cjs/is-boolean";import{isNumber as D}from"@dimjs/lang/cjs/is-number";import{isString as z}from"@dimjs/lang/cjs/is-string";import{InputTextAreaWrapper as G}from"../input-text-area-wrapper/index.js";import{UploadWrapper as E}from"../upload-wrapper/index.js";import M from"@ant-design/icons/es/icons/DeleteOutlined";import"@ant-design/icons/es/icons/LoadingOutlined";import"@dimjs/lang/cjs/is-promise";import"../index-34027e61.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"../fba-hooks/index.js";import"../use-responsive-point-21b8c601.js";import"../fba-utils/index.js";import"@ant-design/icons/es/icons/QuestionCircleOutlined";import"@dimjs/lang/cjs/is-object";import"@dimjs/utils/cjs/get";import"@dimjs/lang/cjs/is-plain-object";import"@dimjs/lang/cjs/is-empty";import"../button-operate/index.js";import"@ant-design/icons/es/icons/MoreOutlined";import"@dimjs/lang/cjs/is-undefined";import"../dropdown-menu-wrapper/index.js";import"@ant-design/icons/es/icons/ExclamationCircleFilled";import"../dialog-confirm/index.js";import"../dialog-modal/index.js";import"ahooks";import"react-dom/client";import"../flex-layout/index.js";import"../tag-list-select/index.js";import"../time-53b3f55f.js";import"@ant-design/icons/es/icons/RedoOutlined";import"../request-status/index.js";import"@dimjs/lang/cjs/is-deep-equal";import"@dimjs/utils/cjs/json";import"pubsub-js";import"react-dom";var q=function e(n,r){return typeof n==="boolean"?n:n==null?void 0:n({tableRowIndex:r})};var K=function e(r){var i=r.fieldConfig,a=i.editableConfig,t=i.editable,o=i.render;var d=a.editableComptProps;var m=p((function(){return d.options||[]}),[d.options]);var u=P.useCallbackRef((function(e){r.onChange==null?void 0:r.onChange(e);d.onChange==null?void 0:d.onChange(e)}));if(t){return L(l.Group,n({},d,{value:r.value,onChange:u}))}return L("span",{className:"editable-checkbox-group-view",children:o?o(r.value,m):F.selectorCell(m)(r.value)})};var Y=function e(r){var i=r.fieldConfig.formItemProps;return L(t.Item,n({},i,{name:r.name,className:k("editable-checkbox-group-form-item",i==null?void 0:i.className),children:L(K,n({},r))}))};var H=function e(r){var i=r.fieldConfig,a=i.formItemProps,l=i.editableConfig;return L(t.Item,n({},a,{name:r.name,className:k("editable-date-picker-wraper-form-item",a==null?void 0:a.className),children:L(A,n({allowClear:true},l.editableComptProps))}))};var J=function e(r){var i=r.fieldConfig,a=i.editableConfig,t=i.editable,l=i.render;var o=a.editableComptProps;var d=P.useCallbackRef((function(e){r.onChange==null?void 0:r.onChange(e);o==null||o.onChange==null?void 0:o.onChange(e)}));var m=p((function(){var e=y(r.value)?r.value:[];if(t)return undefined;return e.join("~")}),[t,r.value]);if(t){return L(V,n({allowClear:true},o,{value:r.value,onChange:d}))}return L("span",{className:"editable-date-range-picker-view",children:l?l(r.value):m})};var Q=function e(r){var i=r.fieldConfig.formItemProps;return L(t.Item,n({},i,{name:r.name,className:k("editable-date-range-picker-wraper-form-item",i==null?void 0:i.className),children:L(J,n({},r))}))};var U=function e(r){var i=r.fieldConfig,a=i.formItemProps,l=i.editableConfig;return L(t.Item,n({},a,{name:r.name,children:L(W,n({allowClear:true},l.editableComptProps))}))};var X=function e(r){var i=r.fieldConfig,a=i.formItemProps,l=i.editableConfig;return L(t.Item,n({},a,{name:r.name,className:k("editable-input-number-form-item",a==null?void 0:a.className),children:L(o,n({},l.editableComptProps))}))};var Z=function e(r){var i=r.fieldConfig,a=i.editableConfig,t=i.editable,l=i.render;var o=a.editableComptProps;var m=p((function(){return o.options||[]}),[o.options]);var u=P.useCallbackRef((function(e){r.onChange==null?void 0:r.onChange(e.target.value);o.onChange==null?void 0:o.onChange(e)}));if(t){return L(d.Group,n({},o,{value:r.value,onChange:u}))}return L("span",{className:"editable-radio-group-view",children:l?l(r.value,m):F.selectorCell(m)(r.value)})};var $=function e(r){var i=r.fieldConfig.formItemProps;return L(t.Item,n({},i,{name:r.name,className:k("editable-radio-group-form-item",i==null?void 0:i.className),children:L(Z,n({},r))}))};var ee=function e(r){var a=r.fieldConfig,t=a.editableConfig,l=a.editable,o=a.render;var d=t.editableComptProps;var u=v([]),s=u[0],c=u[1];var f=v([]),p=f[0],h=f[1];g((function(){if(!l){var e=y(r.value)?r.value:r.value===undefined?[]:[r.value];if(s.length===0){h(e.map((function(e){return{label:e,value:e}})))}var n=[];e.forEach((function(e){var r=s.find((function(n){return n.value===e}));n.push(r?r:{label:String(e),value:e})}));h(n)}}),[l,d.fieldNames,r.value,s]);var C=P.useCallbackRef((function(e){c(i(e||[],d.fieldNames))}));var x=P.useCallbackRef((function(e,n){r.onChange==null?void 0:r.onChange(e);d.onChange==null?void 0:d.onChange(e,n)}));if(l){return L(B,n({},d,{value:r.value,onChange:x,onSelectorListAllChange:C}))}return T(b,{children:[L("div",{style:{display:"none"},children:L(B,n({},d,{onSelectorListAllChange:C}))}),L("span",{className:"editable-selector-view",children:o?o(r.value,s):p.map((function(e,n){return L(m,{color:"geekblue",children:e.label},n)}))})]})};var ne=function e(r){var i=r.fieldConfig.formItemProps;return L(t.Item,n({},i,{name:r.name,className:k("editable-selector-wrapper-form-item",i==null?void 0:i.className),children:L(ee,n({},r))}))};var re=function e(r){var i=r.fieldConfig,a=i.editableConfig,t=i.editable,l=i.render;var o=a.editableComptProps;var d=P.useCallbackRef((function(e){r.onChange==null?void 0:r.onChange(e);o==null||o.onChange==null?void 0:o.onChange(e)}));var u=p((function(){var e=o.checkedChildren||"是";var n=o.unCheckedChildren||"否";return{checkedText:e,unCheckedText:n}}),[o.checkedChildren,o.unCheckedChildren]);if(t){return L(S,n({},o,{value:r.value,onChange:d}))}if(l){return L("span",{className:"editable-switch-wrapper-view",children:l(r.value)})}return L("span",{className:"editable-switch-wrapper-view",children:o.checkedValue==r.value?L(m,{color:"geekblue",style:{marginRight:0},children:u.checkedText}):L(m,{style:{marginRight:0},children:u.unCheckedText})})};var ie=function e(r){var i=r.fieldConfig.formItemProps;return L(t.Item,n({},i,{name:r.name,className:k("editable-switch-wrapper-form-item",i==null?void 0:i.className),children:L(re,n({},r))}))};var ae=function e(n){var r,i;var a=p((function(){var e;if((e=n.fieldConfig)!=null&&e.render)return undefined;var r=z(n.value)||D(n.value)||_(n.value)||!n.value;if(!r){console.warn("Form.List name:【"+n.name+"】数据【"+JSON.stringify(n.value)+"】不能渲染在页面中")}return r?n.value:undefined}),[(r=n.fieldConfig)==null?void 0:r.render,n.name,n.value]);var t=((i=n.fieldConfig)==null||i.render==null?void 0:i.render(n.value))||a;return L("span",{children:t})};var te=function e(n){return L(t.Item,{noStyle:true,name:n.name,children:L(ae,{name:n.name,fieldConfig:n.fieldConfig})})};var le=function e(r){var i=r.fieldConfig,a=i.formItemProps,l=i.editableConfig;return L(t.Item,n({},a,{name:r.name,children:L(G,n({},l.editableComptProps))}))};var oe=["children"];var de=function e(i){var a=i.fieldConfig,t=a.editableConfig,l=a.render,o=a.editable;var d=t.editableComptProps,m=d.children,u=r(d,oe);if(o){return L(E,n({listType:"text"},u,{value:i.value,onChange:i.onChange,children:m}))}return L("div",{className:"upload-wrapper-selector-view",children:l?l(i.value):L(E,n({listType:"text"},u,{value:i.value,disabled:true}))})};var me=function e(r){var i=r.fieldConfig.formItemProps;return L(t.Item,n({},i,{name:r.name,className:k("editable-upload-wrapper-form-item",i==null?void 0:i.className),children:L(de,n({},r))}))};var ue=function e(r){var i=r.fieldConfig,a=i.editableConfig,t=i.editable;var l=q(t,r.tableRowIndex);var o=N({},r.fieldConfig,{editable:l});var d={name:r.name,fieldConfig:o};if((a==null?void 0:a.type)==="input"&&l){return L(U,n({},d))}else if((a==null?void 0:a.type)==="inputNumber"&&l){return L(X,n({},d))}else if((a==null?void 0:a.type)==="textArea"&&l){return L(le,n({},d))}else if((a==null?void 0:a.type)==="datePickerWrapper"&&l){return L(H,n({},d))}else if((a==null?void 0:a.type)==="dateRangePickerWrapper"){return L(Q,n({},d))}else if((a==null?void 0:a.type)==="selectorWrapper"){return L(ne,n({},d))}else if((a==null?void 0:a.type)==="checkboxGroup"){return L(Y,n({},d))}else if((a==null?void 0:a.type)==="radioGroup"){return L($,n({},d))}else if((a==null?void 0:a.type)==="uploadWrapper"){return L(me,n({},d))}else if((a==null?void 0:a.type)==="switchWrapper"){return L(ie,n({},d))}else if((a==null?void 0:a.type)==="custom"){return a.editableComptProps({name:r.name,editable:l,completeName:r.completeName,tableRowIndex:r.tableRowIndex})}return L(te,n({},d))};var se=function e(n){var r=t.useFormInstance();var i=n.formListConfig,a=i.onFormListBeforeRender,l=i.editableConfigList,o=i.onFormListAfterRender,d=i.onFormListItemBeforeRender,m=i.onFormListItemAfterRender,s=i.deleteOperateRender;return L(t.List,{name:n.name,children:function e(i,t){var c=t.add,f=t.remove;return T(O,{children:[a?a({tableRowIndex:n.tableRowIndex,add:c,get value(){return r.getFieldValue(n.completeName)}}):null,i.map((function(e,i){var a=l.find((function(e){return q(e.editable,n.tableRowIndex)}));var t=k("editable-inner-formlist-item","editable-inner-formlist-item-"+n.name[1],{"editable-inner-formlist-item_preview":!a});return T("div",{className:t,children:[d==null?void 0:d({add:c,remove:function e(){f(i)},formListItemIndex:i,tableRowIndex:n.tableRowIndex,get value(){return r.getFieldValue([].concat(n.completeName,[e.name]))}}),T(u,{children:[l.map((function(r,i){return L(ue,{name:[e.name,r.fieldName],fieldConfig:r,tableRowIndex:n.tableRowIndex,completeName:[].concat(n.completeName,[e.name])},i)})),a?L(ce,{deleteOperateRender:s,remove:function e(){f(i)},index:i}):undefined]}),m==null?void 0:m({add:c,formListItemIndex:i,tableRowIndex:n.tableRowIndex,remove:function e(){f(i)},get value(){return r.getFieldValue([].concat(n.completeName,[e.name]))}})]},i)})),o?o({tableRowIndex:n.tableRowIndex,add:c,get value(){return r.getFieldValue(n.completeName)}}):null]})}})};var ce=function e(n){return L(t.Item,{children:n.deleteOperateRender?n.deleteOperateRender({remove:n.remove,formListItemIndex:n.index}):L(s,{type:"link",danger:true,icon:L(M,{}),onClick:n.remove,children:"删除"})})};var fe=function e(n){if(n.fieldConfig){if(y(n.fieldConfig["editableConfigList"])){var r=n.fieldConfig;return L(se,{name:n.name,completeName:n.completeName,formListConfig:r,tableRowIndex:n.tableRowIndex})}else{return T(b,{children:[L(ue,{name:n.name,fieldConfig:n.fieldConfig,tableRowIndex:n.tableRowIndex,completeName:n.completeName}),n.hiddenField?L(t.Item,{hidden:true,name:n.hiddenField.dataIndex,children:L(c,{})}):null]})}}return L(te,{name:n.name})};var pe=["fieldConfig","renderMiddleware","tableChildrenColumnRender","tooltip","title","tipsWrapperProps"];var ve=h((function(i,l){var o;var d=t.useFormInstance();var m=C([]);var u=p((function(){if(!i.columns)return[];return i.columns.map((function(e){var t=e.fieldConfig,l=e.renderMiddleware,o=e.tableChildrenColumnRender,d=e.tooltip,m=e.title,u=e.tipsWrapperProps,s=r(e,pe);var c=j(m)||typeof m==="string";var f;if(u&&c){if(typeof u==="string"){f=L(R,{tipType:"popover",popoverProps:{content:u},children:m})}else{f=L(R,n({},u,{children:m}))}}else if(d){f=L(I,{title:m,tooltip:d})}else{f=m}return n({title:f,onCell:function e(){var n;return{valign:((n=i.tableProps)==null?void 0:n.cellVerticalAlign)||"middle"}}},s,{render:function n(r,d,m){if(d["_isChildrenItem"]){if(o){return o(r,d,m)}return r}var u=[].concat(a(i.name),[d.name]);var s=e.dataIndex?[].concat(u,[e.dataIndex]):u;var c=l==null?void 0:l({name:s,tableRowIndex:d.name,operation:d.operation,tableRowName:u,index:m});if(c){return c}var f=typeof t==="function"?t({name:s,tableRowIndex:d.name,tableRowName:u}):t;return L(fe,{name:e.dataIndex?[d.name,e.dataIndex]:[d.name],completeName:s,fieldConfig:f,tableRowIndex:d.name,hiddenField:e.hiddenField})}})}))}),[i.columns,i.name,(o=i.tableProps)==null?void 0:o.cellVerticalAlign]);var s=t.useWatch(i.name,d);x(l,(function(){return{getTableItemDataByFormListItemKey:function e(n){var r=m.current.find((function(e){return e.key===n}));if(r){return d.getFieldValue([].concat(a(i.name),[r.name]))}return undefined}}}));return L("div",{className:"editable-table",children:L(t.List,{name:i.name,rules:i.rules,children:function r(a,t){m.current=a;return T(b,{children:[i.onTableBeforeRender?i.onTableBeforeRender(t,a.length):null,L(f,n({scroll:{x:"max-content"},pagination:false,rowKey:"key",size:"small"},i.tableProps,{dataSource:a.map((function(e){var r;var i=s==null||(r=s[e.name])==null?void 0:r.children;if(i){i.forEach((function(e){e["_isChildrenItem"]=true}))}return n({},e,{operation:t,children:i})})),columns:u})),i.onTableAfterRender?i.onTableAfterRender(t,a.length):L(w,{type:"dashed",hidden:i.hiddenFooterBtn,onClick:function e(){return t.add(i.getAddRowDefaultValues==null?void 0:i.getAddRowDefaultValues())},block:true,icon:L(e,{}),style:{marginTop:15},children:"新增"})]})}})})}));export{ve as EditableTable};
25
+ import e from"@ant-design/icons/es/icons/PlusOutlined";import{_ as n,a as r}from"../_rollupPluginBabelHelpers-a0769acd.js";import{arrayField2LabelValue as i,toArray as a}from"@flatbiz/utils";import{Form as t,Checkbox as l,InputNumber as o,Radio as d,Tag as m,Space as u,Button as s,Input as c,Table as f}from"antd";import{useMemo as p,useState as v,useEffect as g,Fragment as b,forwardRef as h,useRef as C,useImperativeHandle as x,isValidElement as w}from"react";import{ButtonWrapper as j}from"../button-wrapper/index.js";import{TableTitleTooltip as I}from"../table-title-tooltip/index.js";import{TipsWrapper as R}from"../tips-wrapper/index.js";import{isArray as y}from"@dimjs/lang/cjs/is-array";import{extend as N}from"@dimjs/utils/cjs/extend";import{classNames as k}from"@dimjs/utils/cjs/class-names";import{hooks as P}from"@wove/react/cjs/hooks";import{tableCellRender as F}from"../table-cell-render/index.js";import{jsx as L,jsxs as T,Fragment as O}from"react/jsx-runtime";import{DatePickerWrapper as A}from"../date-picker-wrapper/index.js";import{DateRangePickerWrapper as V}from"../date-range-picker-wrapper/index.js";import{InputWrapper as W}from"../input-wrapper/index.js";import{SelectorWrapper as B}from"../selector-wrapper/index.js";import{SwitchWrapper as S}from"../switch-wrapper/index.js";import{isBoolean as _}from"@dimjs/lang/cjs/is-boolean";import{isNumber as D}from"@dimjs/lang/cjs/is-number";import{isString as z}from"@dimjs/lang/cjs/is-string";import{InputTextAreaWrapper as G}from"../input-text-area-wrapper/index.js";import{UploadWrapper as E}from"../upload-wrapper/index.js";import M from"@ant-design/icons/es/icons/DeleteOutlined";import"@ant-design/icons/es/icons/LoadingOutlined";import"@dimjs/lang/cjs/is-promise";import"../index-34027e61.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"../fba-hooks/index.js";import"../use-responsive-point-21b8c601.js";import"../fba-utils/index.js";import"@ant-design/icons/es/icons/QuestionCircleOutlined";import"@dimjs/lang/cjs/is-object";import"@dimjs/utils/cjs/get";import"@dimjs/lang/cjs/is-plain-object";import"@dimjs/lang/cjs/is-empty";import"../button-operate/index.js";import"@ant-design/icons/es/icons/MoreOutlined";import"@dimjs/lang/cjs/is-undefined";import"../dropdown-menu-wrapper/index.js";import"@ant-design/icons/es/icons/ExclamationCircleFilled";import"../dialog-confirm/index.js";import"../dialog-modal/index.js";import"ahooks";import"react-dom/client";import"../flex-layout/index.js";import"../tag-list-select/index.js";import"../time-53b3f55f.js";import"@ant-design/icons/es/icons/RedoOutlined";import"../request-status/index.js";import"@dimjs/lang/cjs/is-deep-equal";import"@dimjs/utils/cjs/json";import"pubsub-js";import"react-dom";var q=function e(n,r){return typeof n==="boolean"?n:n==null?void 0:n({tableRowIndex:r})};var K=function e(r){var i=r.fieldConfig,a=i.editableConfig,t=i.editable,o=i.render;var d=a.editableComptProps;var m=p((function(){return d.options||[]}),[d.options]);var u=P.useCallbackRef((function(e){r.onChange==null?void 0:r.onChange(e);d.onChange==null?void 0:d.onChange(e)}));if(t){return L(l.Group,n({},d,{value:r.value,onChange:u}))}return L("span",{className:"editable-checkbox-group-view",children:o?o(r.value,m):F.selectorCell(m)(r.value)})};var Y=function e(r){var i=r.fieldConfig.formItemProps;return L(t.Item,n({},i,{name:r.name,className:k("editable-checkbox-group-form-item",i==null?void 0:i.className),children:L(K,n({},r))}))};var H=function e(r){var i=r.fieldConfig,a=i.formItemProps,l=i.editableConfig;return L(t.Item,n({},a,{name:r.name,className:k("editable-date-picker-wraper-form-item",a==null?void 0:a.className),children:L(A,n({allowClear:true},l.editableComptProps))}))};var J=function e(r){var i=r.fieldConfig,a=i.editableConfig,t=i.editable,l=i.render;var o=a.editableComptProps;var d=P.useCallbackRef((function(e){r.onChange==null?void 0:r.onChange(e);o==null||o.onChange==null?void 0:o.onChange(e)}));var m=p((function(){var e=y(r.value)?r.value:[];if(t)return undefined;return e.join("~")}),[t,r.value]);if(t){return L(V,n({allowClear:true},o,{value:r.value,onChange:d}))}return L("span",{className:"editable-date-range-picker-view",children:l?l(r.value):m})};var Q=function e(r){var i=r.fieldConfig.formItemProps;return L(t.Item,n({},i,{name:r.name,className:k("editable-date-range-picker-wraper-form-item",i==null?void 0:i.className),children:L(J,n({},r))}))};var U=function e(r){var i=r.fieldConfig,a=i.formItemProps,l=i.editableConfig;return L(t.Item,n({},a,{name:r.name,children:L(W,n({allowClear:true},l.editableComptProps))}))};var X=function e(r){var i=r.fieldConfig,a=i.formItemProps,l=i.editableConfig;return L(t.Item,n({},a,{name:r.name,className:k("editable-input-number-form-item",a==null?void 0:a.className),children:L(o,n({},l.editableComptProps))}))};var Z=function e(r){var i=r.fieldConfig,a=i.editableConfig,t=i.editable,l=i.render;var o=a.editableComptProps;var m=p((function(){return o.options||[]}),[o.options]);var u=P.useCallbackRef((function(e){r.onChange==null?void 0:r.onChange(e.target.value);o.onChange==null?void 0:o.onChange(e)}));if(t){return L(d.Group,n({},o,{value:r.value,onChange:u}))}return L("span",{className:"editable-radio-group-view",children:l?l(r.value,m):F.selectorCell(m)(r.value)})};var $=function e(r){var i=r.fieldConfig.formItemProps;return L(t.Item,n({},i,{name:r.name,className:k("editable-radio-group-form-item",i==null?void 0:i.className),children:L(Z,n({},r))}))};var ee=function e(r){var a=r.fieldConfig,t=a.editableConfig,l=a.editable,o=a.render;var d=t.editableComptProps;var u=v([]),s=u[0],c=u[1];var f=v([]),p=f[0],h=f[1];g((function(){if(!l){var e=y(r.value)?r.value:r.value===undefined?[]:[r.value];if(s.length===0){h(e.map((function(e){return{label:e,value:e}})))}var n=[];e.forEach((function(e){var r=s.find((function(n){return n.value===e}));n.push(r?r:{label:String(e),value:e})}));h(n)}}),[l,d.fieldNames,r.value,s]);var C=P.useCallbackRef((function(e){c(i(e||[],d.fieldNames))}));var x=P.useCallbackRef((function(e,n){r.onChange==null?void 0:r.onChange(e);d.onChange==null?void 0:d.onChange(e,n)}));if(l){return L(B,n({},d,{value:r.value,onChange:x,onSelectorListAllChange:C}))}return T(b,{children:[L("div",{style:{display:"none"},children:L(B,n({},d,{onSelectorListAllChange:C}))}),L("span",{className:"editable-selector-view",children:o?o(r.value,s):p.map((function(e,n){return L(m,{color:"geekblue",children:e.label},n)}))})]})};var ne=function e(r){var i=r.fieldConfig.formItemProps;return L(t.Item,n({},i,{name:r.name,className:k("editable-selector-wrapper-form-item",i==null?void 0:i.className),children:L(ee,n({},r))}))};var re=function e(r){var i=r.fieldConfig,a=i.editableConfig,t=i.editable,l=i.render;var o=a.editableComptProps;var d=P.useCallbackRef((function(e){r.onChange==null?void 0:r.onChange(e);o==null||o.onChange==null?void 0:o.onChange(e)}));var u=p((function(){var e=o.checkedChildren||"是";var n=o.unCheckedChildren||"否";return{checkedText:e,unCheckedText:n}}),[o.checkedChildren,o.unCheckedChildren]);if(t){return L(S,n({},o,{value:r.value,onChange:d}))}if(l){return L("span",{className:"editable-switch-wrapper-view",children:l(r.value)})}return L("span",{className:"editable-switch-wrapper-view",children:o.checkedValue==r.value?L(m,{color:"geekblue",style:{marginRight:0},children:u.checkedText}):L(m,{style:{marginRight:0},children:u.unCheckedText})})};var ie=function e(r){var i=r.fieldConfig.formItemProps;return L(t.Item,n({},i,{name:r.name,className:k("editable-switch-wrapper-form-item",i==null?void 0:i.className),children:L(re,n({},r))}))};var ae=function e(n){var r,i;var a=p((function(){var e;if((e=n.fieldConfig)!=null&&e.render)return undefined;var r=z(n.value)||D(n.value)||_(n.value)||!n.value;if(!r){console.warn("Form.List name:【"+n.name+"】数据【"+JSON.stringify(n.value)+"】不能渲染在页面中")}return r?n.value:undefined}),[(r=n.fieldConfig)==null?void 0:r.render,n.name,n.value]);var t=((i=n.fieldConfig)==null||i.render==null?void 0:i.render(n.value))||a;return L("span",{children:t})};var te=function e(n){return L(t.Item,{noStyle:true,name:n.name,children:L(ae,{name:n.name,fieldConfig:n.fieldConfig})})};var le=function e(r){var i=r.fieldConfig,a=i.formItemProps,l=i.editableConfig;return L(t.Item,n({},a,{name:r.name,children:L(G,n({},l.editableComptProps))}))};var oe=["children"];var de=function e(i){var a=i.fieldConfig,t=a.editableConfig,l=a.render,o=a.editable;var d=t.editableComptProps,m=d.children,u=r(d,oe);if(o){return L(E,n({listType:"text"},u,{value:i.value,onChange:i.onChange,children:m}))}return L("div",{className:"upload-wrapper-selector-view",children:l?l(i.value):L(E,n({listType:"text"},u,{value:i.value,disabled:true}))})};var me=function e(r){var i=r.fieldConfig.formItemProps;return L(t.Item,n({},i,{name:r.name,className:k("editable-upload-wrapper-form-item",i==null?void 0:i.className),children:L(de,n({},r))}))};var ue=function e(r){var i=r.fieldConfig,a=i.editableConfig,t=i.editable;var l=q(t,r.tableRowIndex);var o=N({},r.fieldConfig,{editable:l});var d={name:r.name,fieldConfig:o};if((a==null?void 0:a.type)==="input"&&l){return L(U,n({},d))}else if((a==null?void 0:a.type)==="inputNumber"&&l){return L(X,n({},d))}else if((a==null?void 0:a.type)==="textArea"&&l){return L(le,n({},d))}else if((a==null?void 0:a.type)==="datePickerWrapper"&&l){return L(H,n({},d))}else if((a==null?void 0:a.type)==="dateRangePickerWrapper"){return L(Q,n({},d))}else if((a==null?void 0:a.type)==="selectorWrapper"){return L(ne,n({},d))}else if((a==null?void 0:a.type)==="checkboxGroup"){return L(Y,n({},d))}else if((a==null?void 0:a.type)==="radioGroup"){return L($,n({},d))}else if((a==null?void 0:a.type)==="uploadWrapper"){return L(me,n({},d))}else if((a==null?void 0:a.type)==="switchWrapper"){return L(ie,n({},d))}else if((a==null?void 0:a.type)==="custom"){return a.editableComptProps({name:r.name,editable:l,completeName:r.completeName,tableRowIndex:r.tableRowIndex})}return L(te,n({},d))};var se=function e(n){var r=t.useFormInstance();var i=n.formListConfig,a=i.onFormListBeforeRender,l=i.editableConfigList,o=i.onFormListAfterRender,d=i.onFormListItemBeforeRender,m=i.onFormListItemAfterRender,s=i.deleteOperateRender;return L(t.List,{name:n.name,children:function e(i,t){var c=t.add,f=t.remove;return T(O,{children:[a?a({tableRowIndex:n.tableRowIndex,add:c,get value(){return r.getFieldValue(n.completeName)}}):null,i.map((function(e,i){var a=l.find((function(e){return q(e.editable,n.tableRowIndex)}));var t=k("editable-inner-formlist-item","editable-inner-formlist-item-"+n.name[1],{"editable-inner-formlist-item_preview":!a});return T("div",{className:t,children:[d==null?void 0:d({add:c,remove:function e(){f(i)},formListItemIndex:i,tableRowIndex:n.tableRowIndex,get value(){return r.getFieldValue([].concat(n.completeName,[e.name]))}}),T(u,{children:[l.map((function(r,i){return L(ue,{name:[e.name,r.fieldName],fieldConfig:r,tableRowIndex:n.tableRowIndex,completeName:[].concat(n.completeName,[e.name])},i)})),a?L(ce,{deleteOperateRender:s,remove:function e(){f(i)},index:i}):undefined]}),m==null?void 0:m({add:c,formListItemIndex:i,tableRowIndex:n.tableRowIndex,remove:function e(){f(i)},get value(){return r.getFieldValue([].concat(n.completeName,[e.name]))}})]},i)})),o?o({tableRowIndex:n.tableRowIndex,add:c,get value(){return r.getFieldValue(n.completeName)}}):null]})}})};var ce=function e(n){return L(t.Item,{children:n.deleteOperateRender?n.deleteOperateRender({remove:n.remove,formListItemIndex:n.index}):L(s,{type:"link",danger:true,icon:L(M,{}),onClick:n.remove,children:"删除"})})};var fe=function e(n){if(n.fieldConfig){if(y(n.fieldConfig["editableConfigList"])){var r=n.fieldConfig;return L(se,{name:n.name,completeName:n.completeName,formListConfig:r,tableRowIndex:n.tableRowIndex})}else{return T(b,{children:[L(ue,{name:n.name,fieldConfig:n.fieldConfig,tableRowIndex:n.tableRowIndex,completeName:n.completeName}),n.hiddenField?L(t.Item,{hidden:true,name:n.hiddenField.dataIndex,children:L(c,{})}):null]})}}return L(te,{name:n.name})};var pe=["fieldConfig","renderMiddleware","tableChildrenColumnRender","tooltip","title","tipsWrapperProps"];var ve=h((function(i,l){var o;var d=t.useFormInstance();var m=C([]);var u=p((function(){if(!i.columns)return[];return i.columns.map((function(e){var t=e.fieldConfig,l=e.renderMiddleware,o=e.tableChildrenColumnRender,m=e.tooltip,u=e.title,s=e.tipsWrapperProps,c=r(e,pe);var f=w(u)||typeof u==="string";var p;if(s&&f){if(typeof s==="string"){p=L(R,{tipType:"popover",popoverProps:{content:s},children:u})}else{p=L(R,n({},s,{children:u}))}}else if(m){p=L(I,{title:u,tooltip:m})}else{p=u}return n({title:p,onCell:function e(){var n;return{valign:((n=i.tableProps)==null?void 0:n.cellVerticalAlign)||"middle"}}},c,{render:function n(r,m,u){if(m["_isChildrenItem"]){if(o){return o(r,m,u)}return r}var s=[].concat(a(i.name),[m.name]);var c=e.dataIndex?[].concat(s,[e.dataIndex]):s;var f=l==null?void 0:l({name:c,tableRowIndex:m.name,operation:m.operation,tableRowName:s,index:u});if(f){return f}var p=typeof t==="function"?t({name:c,tableRowIndex:m.name,tableRowName:s,getTableRowData:function e(){return d.getFieldValue(s)}}):t;return L(fe,{name:e.dataIndex?[m.name,e.dataIndex]:[m.name],completeName:c,fieldConfig:p,tableRowIndex:m.name,hiddenField:e.hiddenField})}})}))}),[i.columns,i.name,(o=i.tableProps)==null?void 0:o.cellVerticalAlign]);var s=t.useWatch(i.name,d);x(l,(function(){return{getTableItemDataByFormListItemKey:function e(n){var r=m.current.find((function(e){return e.key===n}));if(r){return d.getFieldValue([].concat(a(i.name),[r.name]))}return undefined}}}));return L("div",{className:"editable-table",children:L(t.List,{name:i.name,rules:i.rules,children:function r(a,t){m.current=a;return T(b,{children:[i.onTableBeforeRender?i.onTableBeforeRender(t,a.length):null,L(f,n({scroll:{x:"max-content"},pagination:false,rowKey:"key",size:"small"},i.tableProps,{dataSource:a.map((function(e){var r;var i=s==null||(r=s[e.name])==null?void 0:r.children;if(i){i.forEach((function(e){e["_isChildrenItem"]=true}))}return n({},e,{operation:t,children:i})})),columns:u})),i.onTableAfterRender?i.onTableAfterRender(t,a.length):L(j,{type:"dashed",hidden:i.hiddenFooterBtn,onClick:function e(){return t.add(i.getAddRowDefaultValues==null?void 0:i.getAddRowDefaultValues())},block:true,icon:L(e,{}),style:{marginTop:15},children:"新增"})]})}})})}));export{ve as EditableTable};
26
26
  //# sourceMappingURL=index.js.map