@flatbiz/antd 4.2.90 → 4.2.92
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/esm/_rollupPluginBabelHelpers-a0769acd.js +3 -0
- package/esm/_rollupPluginBabelHelpers-a0769acd.js.map +1 -0
- package/esm/alert-wrapper/index.css +1 -0
- package/esm/alert-wrapper/index.js +5 -0
- package/esm/alert-wrapper/index.js.map +1 -0
- package/esm/amount-fen-input/index.js +1 -1
- package/esm/amount-fen-input-form-item/index.js +1 -1
- package/esm/anchor-steps/index.js +1 -1
- package/esm/button-operate/index.js +1 -1
- package/esm/button-wrapper/index.js +1 -1
- package/esm/card-wrapper/index.js +1 -1
- package/esm/cascader-wrapper/index.js +1 -1
- package/esm/cascader-wrapper/index.js.map +1 -1
- package/esm/check-list/index.js +1 -1
- package/esm/checkbox-wrapper/index.js +1 -1
- package/esm/color-picker-wrapper/index.js +1 -1
- package/esm/color-picker-wrapper/index.js.map +1 -1
- package/esm/config-provider-wrapper/index.js +1 -1
- package/esm/css-node-hover/index.js +1 -1
- package/esm/date-picker-wrapper/index.js +1 -1
- package/esm/date-range-picker-wrapper/index.js +1 -1
- package/esm/date-range-picker-wrapper-form-item/index.js +1 -1
- package/esm/dialog-alert/index.js +1 -1
- package/esm/dialog-confirm/index.js +1 -1
- package/esm/dialog-drawer/index.js +1 -1
- package/esm/dialog-drawer-content/index.js +1 -1
- package/esm/dialog-loading/index.js +1 -1
- package/esm/dialog-modal/index.js +1 -1
- package/esm/drag-collapse/index.js +1 -1
- package/esm/drag-collapse-form-list/index.js +1 -1
- package/esm/drag-form-list/index.js +1 -1
- package/esm/drag-table/index.js +1 -1
- package/esm/drawer-wrapper/index.js +1 -1
- package/esm/dropdown-menu-wrapper/index.js +1 -1
- package/esm/easy-table/index.css +1 -1
- package/esm/easy-table/index.js +1 -1
- package/esm/easy-table/index.js.map +1 -1
- package/esm/editable-field/index.js +1 -1
- package/esm/editable-table/index.js +1 -1
- package/esm/editor-wrapper/index.js +1 -1
- package/esm/error-boundary-wrapper/index.css +0 -0
- package/esm/error-boundary-wrapper/index.js +5 -0
- package/esm/error-boundary-wrapper/index.js.map +1 -0
- package/esm/fba-app/index.js +1 -1
- package/esm/fba-app/index.js.map +1 -1
- package/esm/fba-hooks/index.js +1 -1
- package/esm/file-export/index.js +1 -1
- package/esm/file-import/index.js +1 -1
- package/esm/flex-layout/index.js +1 -1
- package/esm/flex-layout/index.js.map +1 -1
- package/esm/form-grid/index.js +1 -1
- package/esm/form-item-group/index.js +1 -1
- package/esm/form-item-wrapper/index.js +1 -1
- package/esm/form-list-wrapper/index.js +1 -1
- package/esm/gap/index.js +1 -1
- package/esm/{index-e98b9352.js → index-6677fbfc.js} +2 -2
- package/esm/{index-e98b9352.js.map → index-6677fbfc.js.map} +1 -1
- package/esm/index.js +3 -1
- package/esm/input-search-wrapper/index.js +1 -1
- package/esm/input-text-area-wrapper/index.js +1 -1
- package/esm/input-wrapper/index.js +1 -1
- package/esm/label-value-layout/index.js +1 -1
- package/esm/local-loading/index.js +1 -1
- package/esm/modal-action/index.js +1 -1
- package/esm/modal-wrapper/index.js +1 -1
- package/esm/pagination-wrapper/index.js +1 -1
- package/esm/relation-tree/index.js +1 -1
- package/esm/rich-text-editor/index.js +1 -1
- package/esm/rich-text-viewer/index.js +1 -1
- package/esm/roll-location-center/index.js +1 -1
- package/esm/roll-location-in-view/index.js +1 -1
- package/esm/rule-describe/index.js +1 -1
- package/esm/search-menu/index.js +1 -1
- package/esm/selector-wrapper/index.js +1 -1
- package/esm/selector-wrapper-search/index.js +1 -1
- package/esm/selector-wrapper-simple/index.js +1 -1
- package/esm/simple-layout/index.css +1 -1
- package/esm/simple-layout/index.js +1 -1
- package/esm/switch-confirm-wrapper/index.js +1 -1
- package/esm/switch-wrapper/index.js +1 -1
- package/esm/table-cell-render/index.js +1 -1
- package/esm/table-scrollbar/index.js +1 -1
- package/esm/tabs-wrapper/index.js +1 -1
- package/esm/tag-group/index.js +1 -1
- package/esm/tag-wrapper/index.js +1 -1
- package/esm/text-overflow-render/index.js +1 -1
- package/esm/time-picker-wrapper/index.js +1 -1
- package/esm/time-range-picker-wrapper/index.js +1 -1
- package/esm/time-range-picker-wrapper-form-item/index.js +1 -1
- package/esm/tips-wrapper/index.js +1 -1
- package/esm/tree-selector-wrapper/index.js +1 -1
- package/esm/tree-wrapper/index.js +1 -1
- package/esm/tree-wrapper/index.js.map +1 -1
- package/esm/upload-wrapper/index.js +1 -1
- package/index.d.ts +87 -3
- package/package.json +1 -1
- package/esm/_rollupPluginBabelHelpers-fc015ef2.js +0 -3
- package/esm/_rollupPluginBabelHelpers-fc015ef2.js.map +0 -1
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/* eslint-disable */
|
|
2
2
|
import './index.css';
|
|
3
3
|
/*! @flatjs/forge MIT @flatbiz/antd */
|
|
4
|
-
import{_ as e}from"../_rollupPluginBabelHelpers-
|
|
4
|
+
import{_ as e}from"../_rollupPluginBabelHelpers-a0769acd.js";import{classNames as r}from"@dimjs/utils/cjs/class-names";import{hooks as t}from"@wove/react/cjs/hooks";import{DndContext as a,closestCenter as n,DragOverlay as i}from"@dnd-kit/core";import{useSortable as d,SortableContext as o,verticalListSortingStrategy as l,arrayMove as m}from"@dnd-kit/sortable";import{ButtonWrapper as s}from"@flatbiz/antd";import{toArray as u,getUuid as c}from"@flatbiz/utils";import{Form as f,Empty as p}from"antd";import{Fragment as g,useState as v,useRef as h,useMemo as D}from"react";import N from"@ant-design/icons/es/icons/DragOutlined";import{CSS as I}from"@dnd-kit/utilities";import{jsx as C,jsxs as b}from"react/jsx-runtime";function y(a){var n=f.useFormInstance();var i=a.isOverlay?false:a.getItemDragDisabled==null?void 0:a.getItemDragDisabled(a.uid,a.index);var o=d({id:a.uid,disabled:i}),l=o.listeners,m=o.setNodeRef,s=o.transform,u=o.transition;var c=t.useCallbackRef((function(){var r=a.dragIcon?a.dragIcon:C(N,{});return a.dragDisabled?C(g,{}):C("span",e({className:"drag-form-list-item-trigger"},l,{children:C("span",{children:r})}))}));var p=e({transform:I.Transform.toString(s),transition:u},a.style);var v=r("drag-form-list-item",{"drag-form-list-item-grap":a.isGray,"drag-form-list-item-disabled":i},a.className);return b("div",{style:e({},p),ref:m,className:v,children:[C(f.Item,{style:{margin:0},children:c()}),C("div",{className:"drag-form-list-item-content",children:a.children({formListFieldData:a.formListFieldData,operation:a.formListOperate,formStageCompleteName:a.formStageCompleteName,index:a.index,getInsideFormItemName:function e(r){return[a.formListFieldData.name,r]},getInsideFormItemData:function e(){return n.getFieldValue(a.formStageCompleteName)||{}},prevCompleteName:a.prevCompleteName,uidKey:a.uidFieldName})})]})}var F=function e(r){if(r.wrapper)return r.wrapper({children:r.children});return r.children};var x=function d(N){var I=[].concat(N.prevCompleteName,u(N.name));var x=v(),L=x[0],R=x[1];var k=f.useFormInstance();var w=h([]);var S=N.uidFieldName||"uid";var A=f.useWatch(I,k);var E=t.useCallbackRef((function(e){return e==null?void 0:e[S]}));function O(e){var r=e.active;R(r.id)}var j=t.useCallbackRef((function(){return k.getFieldValue(I)||[]}));function B(e){var r=e.active,t=e.over;var a=j();if(r.id!==t.id){var n=a.findIndex((function(e){return E(e)===r.id}));var i=a.findIndex((function(e){return E(e)===t.id}));var d=m(a,n,i);k.setFields([{name:N.name,value:d}]);N.onDropChange==null?void 0:N.onDropChange(d)}R(undefined)}var V=D((function(){if(!L)return undefined;var e=j();var r=e.findIndex((function(e){return E(e)===L}));return w.current.find((function(e){return e.name===r}))}),[L,j,E]);return b("div",{className:r("drag-form-list",N.className),style:N.style,children:[!N.hiddenEmptyRender&&!(A!=null&&A.length)?C(p,{image:p.PRESENTED_IMAGE_SIMPLE,style:{margin:"15px 0"}}):null,C(a,{collisionDetection:n,onDragStart:O,onDragEnd:B,children:C(f.List,{name:N.name,children:function r(t,a){w.current=t;return C(F,{wrapper:N.formListChildrenWrapper,children:b(g,{children:[C(o,{items:j().map((function(e){return E(e)})),strategy:l,children:b(g,{children:[t.map((function(e,r){var t=E(j()[r]);if(!t)return null;return C(y,{formListOperate:a,formListFieldData:e,uid:t,dragIcon:N.dragIcon,getItemDragDisabled:N.getItemDragDisabled,dragDisabled:N.dragDisabled,isGray:!!t&&t===L,index:r,formStageCompleteName:[].concat(I,[e.name]),prevCompleteName:I,uidFieldName:S,children:N.children},t+"-"+e.key)})),N.onCustomAddRowButton?N.onCustomAddRowButton(a):C(s,{hidden:N.hiddenAddRowButton,type:"dashed",block:true,onClick:function r(){var t;return a.add(e((t={},t[S]=c(),t),N.getAddRowDefaultValues==null?void 0:N.getAddRowDefaultValues()))},children:"添加"})]})}),C(i,{dropAnimation:{duration:0},children:L&&V?C(y,{isOverlay:true,uid:L,className:"drag-form-list-overlay",formListFieldData:V,dragIcon:N.dragIcon,formListOperate:null,index:0,formStageCompleteName:[].concat(I,[V.name]),prevCompleteName:I,uidFieldName:S,children:N.children},L):null})]})})}})})]})};export{x as DragFormList};
|
|
5
5
|
//# sourceMappingURL=index.js.map
|
package/esm/drag-table/index.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/* eslint-disable */
|
|
2
2
|
import './index.css';
|
|
3
3
|
/*! @flatjs/forge MIT @flatbiz/antd */
|
|
4
|
-
import r from"@ant-design/icons/es/icons/DragOutlined";import{a as n,_ as e}from"../_rollupPluginBabelHelpers-
|
|
4
|
+
import r from"@ant-design/icons/es/icons/DragOutlined";import{a as n,_ as e}from"../_rollupPluginBabelHelpers-a0769acd.js";import{useSensors as o,useSensor as t,PointerSensor as i,DndContext as a}from"@dnd-kit/core";import{restrictToVerticalAxis as d}from"@dnd-kit/modifiers";import{SortableContext as s,verticalListSortingStrategy as l,arrayMove as c,useSortable as f}from"@dnd-kit/sortable";import{CSS as u}from"@dnd-kit/utilities";import{IconWrapper as m}from"@flatbiz/antd";import{noop as v}from"@flatbiz/utils";import{Table as p}from"antd";import g,{useState as x,useEffect as y,useMemo as h,isValidElement as b}from"react";import{jsx as I}from"react/jsx-runtime";var k=["dragIcon","uidFieldKey","columns","dataSource","onDragChange"],w=["children"];var S=function S(C){var D=C.dragIcon,z=C.uidFieldKey,A=C.columns,K=C.dataSource,N=C.onDragChange,R=n(C,k);var j=x([]),E=j[0],F=j[1];y((function(){F(K||[])}),[K]);var T=function r(n){var e=n.active,o=n.over;if(e.id!==(o==null?void 0:o.id)){var t=E.findIndex((function(r){return r[z]===e.id}));var i=E.findIndex((function(r){return r[z]===(o==null?void 0:o.id)}));var a=c(E,t,i);F([].concat(a));N==null?void 0:N(a,{activeId:e.id,activeIndex:t,overIndex:i})}};var Y=function r(n){var o=f({id:n["data-row-key"]}),t=o.listeners,i=o.setNodeRef,a=o.transform,d=o.transition,s=o.isDragging;var l=e({},n.style,{transform:u.Transform.toString(a&&e({},a,{scaleY:1})),transition:d,cursor:D===false?"move":undefined},s?{position:"relative",zIndex:9999,boxShadow:" 0px 0px 12px 4px rgba(34, 33, 81, 0.1)"}:{});return I("tr",e({},n,{ref:i,style:l},t))};var _=function o(t){var i=t.children,a=n(t,w);var d=f({id:a["data-row-key"]}),s=d.setActivatorNodeRef,l=d.listeners,c=d.setNodeRef,p=d.transform,x=d.transition,y=d.isDragging;var h=e({},a.style,{transform:u.Transform.toString(p&&e({},p,{scaleY:1})),transition:x,cursor:D===false?"move":undefined},y?{position:"relative",zIndex:9999,boxShadow:" 0px 0px 12px 4px rgba(34, 33, 81, 0.1)",backgroundColor:"#fff"}:{});var k=b(D)?D:I(r,{});return I("tr",e({},a,{ref:c,style:h,children:g.Children.map(i,(function(r){if(r.key==="sort"){return g.cloneElement(r,{children:I("span",e({ref:s,style:{touchAction:"none",cursor:"move"}},l,{children:I(m,{style:{display:"inline-flex",touchAction:"none",cursor:"move"},icon:k,onClick:v})}))})}return r}))}))};var B=h((function(){if(D===false)return A;return[{key:"sort",dataIndex:"sort",align:"center",width:50}].concat(A||[])}),[A,D]);var H=o(t(i,{activationConstraint:{delay:D===false?150:0,tolerance:0}}));return I(a,{sensors:H,modifiers:[d],onDragEnd:T,children:I(s,{items:E.map((function(r){return r[z]})),strategy:l,children:I(p,e({pagination:false,rowKey:z,bordered:true},R,{dataSource:E,columns:B,components:{body:{row:C.dragIcon===false?Y:_}}}))})})};export{S as DragTable};
|
|
5
5
|
//# sourceMappingURL=index.js.map
|
|
@@ -2,5 +2,5 @@
|
|
|
2
2
|
import './../fba-hooks/index.css';
|
|
3
3
|
import './index.css';
|
|
4
4
|
/*! @flatjs/forge MIT @flatbiz/antd */
|
|
5
|
-
import{classNames as r}from"@dimjs/utils/cjs/class-names";import{_ as e,a as o}from"../_rollupPluginBabelHelpers-
|
|
5
|
+
import{classNames as r}from"@dimjs/utils/cjs/class-names";import{_ as e,a as o}from"../_rollupPluginBabelHelpers-a0769acd.js";import{Space as a,Button as n,Drawer as i}from"antd";import{Fragment as t}from"react";import{fbaHooks as s}from"../fba-hooks/index.js";import l from"@ant-design/icons/es/icons/SaveOutlined";import{jsx as c,jsxs as d}from"react/jsx-runtime";import"@dimjs/lang/cjs/is-array";import"@wove/react/cjs/hooks";import"../use-responsive-point-21b8c601.js";var p=function r(o){return c("div",{className:"fixed-bottom-block",children:d(a,{size:"middle",children:[c(n,e({},o.cancelButtonProps,{className:"cancel-btn",onClick:o.onCancel,children:o.cancelText||"取消"})),o.hideOkBtn!=true&&c(n,e({type:"primary",icon:c(l,{})},o.okButtonProps,{className:"ok-btn",onClick:o.onOk,loading:o.loading,children:o.okText||"提交"}))]})})};var m=["pageLoading","className","width","children"];var u=function r(){return c("div",{className:"drawer-wrapper-loader",children:d("div",{className:"loader-wrapper",children:[c("div",{className:"loader-inner"}),c("div",{className:"loader-text",children:"LOADING"})]})})};var f=function r(o){return d(t,{children:[c("div",{className:"drawer-wrapper-content",children:o.children}),o.operationProps?c(h,{children:c(p,e({},o.operationProps))}):null]})};var h=function r(e){return c("div",{className:"drawer-wrapper-footer",children:e.children})};var v=function a(n){var t=n.pageLoading,l=n.className,p=n.width,f=p===void 0?600:p,h=n.children,v=o(n,m);s.useEffectCustom((function(){if(n["operationProps"]){throw new Error("DrawerWrapper组件升级,参数operationProps用法变更,请及时更新")}}),[]);return d(i,e({className:r("drawer-wrapper",l),keyboard:false,destroyOnClose:true,forceRender:false,width:"80%",contentWrapperStyle:{maxWidth:f},size:"default"},v,{footer:null,children:[t&&c(u,{}),h]}))};v.Content=f;v.Footer=h;export{v as DrawerWrapper};
|
|
6
6
|
//# sourceMappingURL=index.js.map
|
|
@@ -9,5 +9,5 @@ import './../dialog-modal/index.css';
|
|
|
9
9
|
import './../flex-layout/index.css';
|
|
10
10
|
import './index.css';
|
|
11
11
|
/*! @flatjs/forge MIT @flatbiz/antd */
|
|
12
|
-
import{classNames as e}from"@dimjs/utils/cjs/class-names";import i from"@ant-design/icons/es/icons/ExclamationCircleFilled";import{a as r,_ as o}from"../_rollupPluginBabelHelpers-
|
|
12
|
+
import{classNames as e}from"@dimjs/utils/cjs/class-names";import i from"@ant-design/icons/es/icons/ExclamationCircleFilled";import{a as r,_ as o}from"../_rollupPluginBabelHelpers-a0769acd.js";import{hooks as n}from"@wove/react/cjs/hooks";import{Dropdown as t}from"antd";import{Fragment as a,useMemo as s,createElement as l}from"react";import{ButtonWrapper as m}from"../button-wrapper/index.js";import{dialogConfirm as d}from"../dialog-confirm/index.js";import{fbaUtils as p}from"../fba-utils/index.js";import{FlexLayout as c}from"../flex-layout/index.js";import{jsxs as u,jsx as f}from"react/jsx-runtime";import"@ant-design/icons/es/icons/LoadingOutlined";import"@dimjs/lang/cjs/is-promise";import"@flatbiz/utils";import"../config-provider-wrapper/index.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"@dimjs/lang/cjs/is-array";import"../use-responsive-point-21b8c601.js";import"../index-ac189a77.js";import"@dimjs/utils/cjs/extend";import"../dialog-modal/index.js";import"@dimjs/lang/cjs/is-string";import"ahooks";import"react-dom/client";function g(e){var i=true;var r=false;while(i){if(e.tagName==="HTML"||e.tagName==="BODY"){i=false;r=false}else{var o=window.getComputedStyle(e),n=o.position;if(n==="sticky"){r=true;i=false}else{if(!e||!e.parentNode){i=false}else{e=e.parentNode}}}}return r}var j=["menuList"],v=["text","permission","needConfirm","confirmMessage","hidden","type","confirmModalProps"];var y=function y(h){var x=h.menuList,k=r(h,j);var w=n.useId(undefined,"DropdownMenuWrapper");var C=n.useCallbackRef((function(e,r){if(e.needConfirm){var n;d.open(o({title:u(c,{direction:"horizontal",fullIndex:1,gap:8,children:[f(i,{style:{color:"#faad14"}}),f("span",{children:e.title})]}),content:f(a,{children:e.confirmMessage}),onOk:(n=e.onClick)==null?void 0:n.bind(null,r),okButtonProps:{loadingPosition:"center"}},e.confirmModalProps));return Promise.resolve()}r.stopPropagation();return e.onClick==null?void 0:e.onClick(r)}));var P=document.querySelector("."+w);var b=s((function(){if(h.isFixed||P&&g(P)){return undefined}return P}),[h.isFixed,P]);var M=s((function(){var i=[];x.filter(Boolean).forEach((function(n,t){if(!n)return;var a=n.text,s=n.permission,d=n.needConfirm,c=n.confirmMessage,u=n.hidden,f=n.type,g=n.confirmModalProps,j=r(n,v);if(u)return;if(s&&!p.hasPermission(s))return;var y=f||"link";var h=j.color?false:d;i.push({key:t,label:l(m,o({loadingPosition:"center",size:"small",danger:h},j,{style:o({padding:0},j.style),className:e("dmw-item-button",j.className),type:y,key:t,onClick:C.bind(null,o({},n,{needConfirm:d,confirmMessage:c,confirmModalProps:g}))}),a)})}));return i}),[x,C]);return f("div",{className:e("dropdown-menu-wrapper",w),style:{position:"relative"},children:f(t,o({trigger:(k==null?void 0:k.trigger)||["hover"],getPopupContainer:b?function(){return P}:undefined,arrow:{pointAtCenter:true}},k,{overlayStyle:o({zIndex:9},k.overlayStyle),menu:{items:M},children:h.children}))})};export{y as DropdownMenuWrapper};
|
|
13
13
|
//# sourceMappingURL=index.js.map
|
package/esm/easy-table/index.css
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
.fba-easy-table-filter-fixed,.fba-easy-table-full,.fba-easy-table-pagination-fixed{display:flex;flex-direction:column;height:100%}.fba-easy-table-filter-fixed .easy-table-table,.fba-easy-table-full .easy-table-table,.fba-easy-table-pagination-fixed .easy-table-table{flex:1}.fba-easy-table-filter-fixed{overflow:hidden}.fba-easy-table-filter-fixed .easy-table-table{overflow-y:auto}.fba-easy-table-wrapper{display:flex;flex-direction:column;height:100%;overflow:hidden}.fba-easy-table-wrapper .fba-easy-table{flex:1;height:unset;overflow-y:auto}.fba-easy-table-pagination{background-color:#fff;box-shadow:0 0 17px rgba(0,0,0,.06);padding:15px 15px 20px;position:relative;text-align:right;z-index:2}.fba-easy-table-wrapper-inline
|
|
1
|
+
.fba-easy-table-filter-fixed,.fba-easy-table-full,.fba-easy-table-pagination-fixed{display:flex;flex-direction:column;height:100%}.fba-easy-table-filter-fixed .easy-table-table,.fba-easy-table-full .easy-table-table,.fba-easy-table-pagination-fixed .easy-table-table{flex:1}.fba-easy-table-filter-fixed{overflow:hidden}.fba-easy-table-filter-fixed .easy-table-table{overflow-y:auto}.fba-easy-table-wrapper{display:flex;flex-direction:column;height:100%;overflow:hidden}.fba-easy-table-wrapper .fba-easy-table{flex:1;height:unset;overflow-y:auto}.fba-easy-table-pagination{background-color:#fff;box-shadow:0 0 17px rgba(0,0,0,.06);padding:15px 15px 20px;position:relative;text-align:right;z-index:2}.fba-easy-table-wrapper-inline .easy-table-table{margin:0;padding:0}.fba-easy-table-wrapper-inline .easy-table-filter{margin-bottom:15px;padding:0}
|
package/esm/easy-table/index.js
CHANGED
|
@@ -12,5 +12,5 @@ import './../table-title-tooltip/index.css';
|
|
|
12
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{_ as n,a}from"../_rollupPluginBabelHelpers-fc015ef2.js";import{hooks as o}from"@wove/react/cjs/hooks";import{cloneState as l}from"@dimjs/model";import{Form as s,message as u,Table as p}from"antd";import{createContext as c,forwardRef as d,useState as f,useMemo as m,useRef as g,useImperativeHandle as v,useContext as y,Children as h}from"react";import{P as C,S}from"../index-e98b9352.js";import{noop as b,isUndefinedOrNull as j,getUuid as F,isMacEnv as q}from"@flatbiz/utils";import{Model as z}from"@dimjs/model-react";import{jsx as R,jsxs as N}from"react/jsx-runtime";import x from"@ant-design/icons/es/icons/DownOutlined";import P from"@ant-design/icons/es/icons/UpOutlined";import{isFragment as w}from"react-is";import{ButtonWrapper as k}from"../button-wrapper/index.js";import{FormGrid as T}from"../form-grid/index.js";import{SimpleLayout as D}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 E}from"../tips-wrapper/index.js";import"@ant-design/icons/es/icons/LoadingOutlined";import"@dimjs/lang/cjs/is-promise";import"../config-provider-wrapper/index.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"../index-ac189a77.js";import"@dimjs/utils/cjs/extend";import"../use-responsive-point-21b8c601.js";import"@dimjs/utils/cjs/get";import"ahooks";import"@ant-design/icons/es/icons/QuestionCircleOutlined";var A=c({onRequest:b,tableList:[],getEasyTableRef:function e(){}});var O={queryCondition:{},isInit:true};var I={actions:{updateFilterCondition:function e(t){return function(e){e.queryCondition=n({},e.queryCondition,t)}},resetFilterCondition:function e(t){return function(e){e.queryCondition=n({},O.queryCondition,t)}},updateInitStatus:function e(){return function(e){e.isInit=false}}},state:O};var B={};var W=function e(t){if(!B[t]){B[t]=z(I)}return B[t]};var _=d((function(e,a){var p;var c=f([]),d=c[0],y=c[1];var h=f(0),S=h[0],b=h[1];var j=f(false),F=j[0],q=j[1];var z=o.useId(undefined,"easy-table-key");var x=m((function(){return e.cacheSwitch?location.pathname:z}),[z,e.cacheSwitch]);var P=W(x).useStore(),w=P[0],k=P[1];var T=e.pageSize||((p=e.initialPaginationParams)==null?void 0:p.pageSize)||10;var D=e.initRequest===undefined?true:e.initRequest;var K=f(false),L=K[0],V=K[1];var E=g();var O=n({list:"list",total:"total",pageNo:"pageNo",pageSize:"pageSize"},e.fieldNames);var I=s.useForm(e.form),B=I[0];var _=o.useCallbackRef((function(t){return new Promise((function(i,n){var a,o,s,p,c,d,f,m,g,v;var h=function(){try{return i()}catch(e){return n(e)}};var C=function(t){try{q(false);if(e.onRequestErrorHandle){e.onRequestErrorHandle(t)}else{void u.error(t.message)}return h()}catch(e){return n(e)}};try{q(true);return Promise.resolve(k.updateFilterCondition(t)).then((function(t){try{a=t;o=l(a.queryCondition||{});s=e.serviceConfig,p=s.requestParamsAdapter,c=s.onRequest,d=s.requestResultAdapter;f=p?p(o):o;return Promise.resolve(c(f)).then((function(t){try{m=t||{};E.current=m;e.onDataSourceChange==null?void 0:e.onDataSourceChange(m);g=d?d(m):m;v=g[O.list];y(r(v)?v:[]);b(g[O.total]);q(false);return h()}catch(e){return C(e)}}),C)}catch(e){return C(e)}}),C)}catch(e){C(e)}}))}));var H=o.useCallbackRef((function(e){return new Promise((function(t,i){return Promise.resolve(k.resetFilterCondition()).then((function(r){try{B.resetFields();if(e){void k.updateFilterCondition(e);B.setFieldsValue(e)}return t()}catch(e){return i(e)}}),i)}))}));var U=function e(t,i){if(L){var r;return r={},r[O.pageNo]=t,r[O.pageSize]=i||T,r}else{return{}}};var Q=o.useCallbackRef((function(t){return new Promise((function(i,r){var a;a=n({},U(1,w.queryCondition[O.pageSize]),e.initialValues,t);return Promise.resolve(k.resetFilterCondition(a)).then((function(e){try{B.resetFields();if(t){B.setFieldsValue(t)}void _(a);return i()}catch(e){return r(e)}}),r)}))}));var Y=o.useCallbackRef((function(){return n({},w.queryCondition,B.getFieldsValue())}));var G=function t(){return{onRequest:_,clearQueryCondition:H,getRequestParams:Y,onResetRequest:Q,form:B,getDataSource:function e(){return E.current},onFilterDataSource:function e(t){y(t)},onClearDataSource:function e(){b(0);y([])},onUpdateDataSource:function t(i){y(i);E.current=i;e.onDataSourceChange==null?void 0:e.onDataSourceChange(i)}}};v(a,(function(){return G()}));var $=function e(t){V(t)};var J=function t(){var i=B.getFieldsValue();if(e.onFormFinish){e.onFormFinish(n({},i,U(1,w.queryCondition[O.pageSize])))}else{void _(n({},i,U(1,w.queryCondition[O.pageSize])))}};var M=i(e.isFull)?true:e.isFull;var X=t("fba-easy-table",{"fba-easy-table-full":M,"fba-easy-table-filter-fixed":e.filterFixed,"fba-easy-table-pagination-fixed":e.paginationFixed},e.className);var Z=m((function(){return n({showSizeChanger:true,current:w.queryCondition[O.pageNo]||1,pageSize:w.queryCondition[O.pageSize]||T,total:S,showTotal:function e(t){return"共 "+t+" 条记录"}},e.pagination)}),[O.pageNo,O.pageSize,T,e.pagination,w.queryCondition,S]);var ee=o.useCallbackRef((function(t,i){var r,n;void _((r={},r[O.pageSize]=i,r[O.pageNo]=t,r));(n=e.pagination)==null||n.onChange==null?void 0:n.onChange(t,i)}));var te=t("fba-easy-table-wrapper",{"fba-easy-table-wrapper-inline":e.isInline},e.className);var ie=typeof e.children==="function"?e.children(E.current):e.children;return R(A.Provider,{value:{getEasyTableRef:G,modelKey:x,onRequest:_,tableList:d,tableTotal:S,loading:F,fieldNames:O,pageSize:T,initRequest:D,initialValues:e.initialValues||{},onSetPaginationStatus:$,paginationStatus:L,onFormFinish:J,form:B,paginationFixed:e.paginationFixed||false,foldKeys:e.foldKeys||[]},children:e.paginationFixed?N("div",{className:te,style:e.style,children:[R("div",{className:X,children:ie}),S>0&&R("div",{className:"fba-easy-table-pagination",children:R(C,n({size:"small"},Z,{onChange:ee}))})]}):R("div",{className:X,style:e.style,children:ie})})}));var H=function e(r){var a=y(A);var l=r.queryButtonProps,u=r.resetButtonProps,p=r.filterOperate,c=r.formClassName,d=r.defaultResetButtonTriggerRequest,g=r.filterWrapperStyle,v=r.filterWrapperClassName,C=r.rightOperateAreaAppendType;var S=a.modelKey,b=a.foldKeys,j=a.fieldNames,F=a.onRequest,q=a.pageSize,z=a.paginationStatus,K=a.initialValues,L=a.form,V=a.onFormFinish;var E=typeof r.children==="function"?r.children(L):r.children;var O=C||"cover";var I=m((function(){if(w(E)){return h.toArray(E.props.children)}else{return h.toArray(E)}}),[E]);var B=f(false),_=B[0],H=B[1];var U=W(S).useStore(),Q=U[0],Y=U[1];var G=o.useCallbackRef((function(){return new Promise((function(e,t){var r;return Promise.resolve(Y.resetFilterCondition()).then((function(a){try{L.resetFields();if(i(d)||d){if(z){F(n((r={},r[j.pageNo]=1,r[j.pageSize]=q,r),K))}else{F(K)}}return e()}catch(e){return t(e)}}),t)}))}));var $=m((function(){var e=[R(k,n({type:"primary",htmlType:"submit"},l,{children:(l==null?void 0:l.text)||"查询"}),"1"),R(k,n({onClick:G},u,{children:(u==null?void 0:u.text)||"重置"}),"2")].filter(Boolean);var t=p==null?void 0:p(L);var i=t==null?void 0:t.rightList;var r=(t==null?void 0:t.leftList)||[];var a=e;if(i){if(O==="afterAppend"){a=[].concat(e,i)}else if(O==="beforeAppend"){a=[].concat(i,e)}else{a=i}}if(b.length>0){var o=R(k,{type:"link",style:{padding:"0"},onClick:function e(){H(!_)},children:_?N("span",{children:["收起",R(P,{style:{marginLeft:3,fontSize:12}})]}):N("span",{children:["展开",R(x,{style:{marginLeft:3,fontSize:12}})]})},"fold-trigger");if(a.length>0||r.length===0){a.push(o)}else if((r==null?void 0:r.length)>0){r.push(o)}}return I.map((function(e,t){if(!_&&b.find((function(t){return".$"+t===e.key})))return null;if(e.props["hidden"])return null;if(e.type["domTypeName"]==="FormCol")return e;return R(T.Col,{children:e},t)})).filter(Boolean).concat(R(T.OperateCol,n({},t,{leftList:r,rightList:a}),999))}),[I,p,b,L,G,_,l,u,O]);return R(D,{className:t("easy-table-filter",v),style:g,children:R(s,{form:L,autoComplete:"off",onFinish:V,initialValues:n({},K,Q.queryCondition),className:c,style:r.formStyle,children:r.isPure?E:R(T.Row,{gutter:[15,0],gridSize:r.formGridSize,children:$})})})};var U=function e(){var t=y(A);return t.getEasyTableRef()};var Q=function e(){var t=y(A);return{current:t.getEasyTableRef()}};var Y=["children","rowKey","pagination"],G=["tooltip","tipsWrapperProps","title"];var $=function e(i){var r=y(A);var o=i.children,l=i.rowKey,s=i.pagination,u=a(i,Y);var c=r.modelKey,d=r.fieldNames,f=r.onRequest,g=r.tableList,v=r.initRequest,h=r.pageSize,C=r.tableTotal,b=r.loading,z=r.initialValues,x=r.paginationFixed,P=r.onSetPaginationStatus;var w=W(c).useStore(),k=w[0],T=w[1];var O=m((function(){if(x||s===false)return false;return n({showSizeChanger:true,current:k.queryCondition[d.pageNo]||1,pageSize:k.queryCondition[d.pageSize]||h,total:C,showTotal:function e(t){return"共 "+t+" 条记录"}},i.pagination,{selectComponentClass:S})}),[d.pageNo,d.pageSize,h,s,x,i.pagination,k.queryCondition,C]);var I=function e(t,r,n,a){if(a.action==="paginate"&&O){var o;f((o={},o[d.pageSize]=t.pageSize,o[d.pageNo]=t.current,o))}else{i.onChange==null?void 0:i.onChange(t,r,n,a)}};var B=m((function(){if(g.length===0){return[]}if(typeof l==="string"&&j(g[0][l])){return g.map((function(e){e[l]=F();return e}))}return g}),[g,l]);K.useEffectCustom((function(){var e=x||O!==false;P(e);if(v!==false||!k.isInit){if(e){var t;void f(n((t={},t[d.pageNo]=1,t[d.pageSize]=h,t),z,k.queryCondition))}else{void f(z)}}else{void T.updateFilterCondition(z)}void T.updateInitStatus()}),[]);var _=m((function(){return i.columns.map((function(e){var t=e.tooltip,i=e.tipsWrapperProps,r=e.title,o=a(e,G);if(typeof r==="string"&&i){if(typeof i==="string"){return n({},o,{title:R(E,{tipType:"popover",popoverProps:{content:i},children:r})})}return n({},o,{title:R(E,n({},i,{children:r}))})}if(typeof r==="string"&&!!t){return n({},o,{title:R(V,{tooltip:t,title:r})})}return e}))}),[i.columns]);return N(D,{className:t("easy-table-table",i.tableWrapperClassName),style:i.tableWrapperStyle,children:[o,q()?R(p,n({size:"small",scroll:{x:"max-content"},bordered:true},u,{columns:_,pagination:O,rowKey:l,onChange:I,loading:b,dataSource:B})):R(L,{children:R(p,n({size:"small",scroll:{x:"max-content"},bordered:true},u,{columns:_,pagination:O,rowKey:l,onChange:I,loading:b,dataSource:B}))})]})};var J=e.attachPropertiesToComponent(_,{Filter:H,Table:$,useEasyTablRef:Q,useEasyTable:U});export{J 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 i}from"@dimjs/lang/cjs/is-undefined";import{isArray as r}from"@dimjs/lang/cjs/is-array";import{_ as n,a}from"../_rollupPluginBabelHelpers-a0769acd.js";import{hooks as o}from"@wove/react/cjs/hooks";import{cloneState as l}from"@dimjs/model";import{Form as s,message as u,Table as p}from"antd";import{createContext as c,forwardRef as d,useState as f,useMemo as m,useRef as g,useImperativeHandle as v,useContext as y,Children as h}from"react";import{P as C,S}from"../index-6677fbfc.js";import{noop as b,isUndefinedOrNull as j,getUuid as F,isMacEnv as q}from"@flatbiz/utils";import{Model as z}from"@dimjs/model-react";import{jsx as R,jsxs as N}from"react/jsx-runtime";import x from"@ant-design/icons/es/icons/DownOutlined";import P from"@ant-design/icons/es/icons/UpOutlined";import{isFragment as w}from"react-is";import{ButtonWrapper as k}from"../button-wrapper/index.js";import{FormGrid as T}from"../form-grid/index.js";import{SimpleLayout as D}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 E}from"../tips-wrapper/index.js";import"@ant-design/icons/es/icons/LoadingOutlined";import"@dimjs/lang/cjs/is-promise";import"../config-provider-wrapper/index.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"../index-ac189a77.js";import"@dimjs/utils/cjs/extend";import"../use-responsive-point-21b8c601.js";import"@dimjs/utils/cjs/get";import"ahooks";import"@ant-design/icons/es/icons/QuestionCircleOutlined";var A=c({onRequest:b,tableList:[],getEasyTableRef:function e(){}});var O={queryCondition:{},isInit:true};var I={actions:{updateFilterCondition:function e(t){return function(e){e.queryCondition=n({},e.queryCondition,t)}},resetFilterCondition:function e(t){return function(e){e.queryCondition=n({},O.queryCondition,t)}},updateInitStatus:function e(){return function(e){e.isInit=false}}},state:O};var B={};var W=function e(t){if(!B[t]){B[t]=z(I)}return B[t]};var _=d((function(e,a){var p;var c=f([]),d=c[0],y=c[1];var h=f(0),S=h[0],b=h[1];var j=f(false),F=j[0],q=j[1];var z=o.useId(undefined,"easy-table-key");var x=m((function(){return e.cacheSwitch?location.pathname:z}),[z,e.cacheSwitch]);var P=W(x).useStore(),w=P[0],k=P[1];var T=e.pageSize||((p=e.initialPaginationParams)==null?void 0:p.pageSize)||10;var D=e.initRequest===undefined?true:e.initRequest;var K=f(false),L=K[0],V=K[1];var E=g();var O=n({list:"list",total:"total",pageNo:"pageNo",pageSize:"pageSize"},e.fieldNames);var I=s.useForm(e.form),B=I[0];var _=o.useCallbackRef((function(t){return new Promise((function(i,n){var a,o,s,p,c,d,f,m,g,v;var h=function(){try{return i()}catch(e){return n(e)}};var C=function(t){try{q(false);if(e.onRequestErrorHandle){e.onRequestErrorHandle(t)}else{void u.error(t.message)}return h()}catch(e){return n(e)}};try{q(true);return Promise.resolve(k.updateFilterCondition(t)).then((function(t){try{a=t;o=l(a.queryCondition||{});s=e.serviceConfig,p=s.requestParamsAdapter,c=s.onRequest,d=s.requestResultAdapter;f=p?p(o):o;return Promise.resolve(c(f)).then((function(t){try{m=t||{};E.current=m;e.onDataSourceChange==null?void 0:e.onDataSourceChange(m);g=d?d(m):m;v=g[O.list];y(r(v)?v:[]);b(g[O.total]);q(false);return h()}catch(e){return C(e)}}),C)}catch(e){return C(e)}}),C)}catch(e){C(e)}}))}));var H=o.useCallbackRef((function(e){return new Promise((function(t,i){return Promise.resolve(k.resetFilterCondition()).then((function(r){try{B.resetFields();if(e){void k.updateFilterCondition(e);B.setFieldsValue(e)}return t()}catch(e){return i(e)}}),i)}))}));var U=function e(t,i){if(L){var r;return r={},r[O.pageNo]=t,r[O.pageSize]=i||T,r}else{return{}}};var Q=o.useCallbackRef((function(t){return new Promise((function(i,r){var a;a=n({},U(1,w.queryCondition[O.pageSize]),e.initialValues,t);return Promise.resolve(k.resetFilterCondition(a)).then((function(e){try{B.resetFields();if(t){B.setFieldsValue(t)}void _(a);return i()}catch(e){return r(e)}}),r)}))}));var Y=o.useCallbackRef((function(){return n({},w.queryCondition,B.getFieldsValue())}));var G=function t(){return{onRequest:_,clearQueryCondition:H,getRequestParams:Y,onResetRequest:Q,form:B,getDataSource:function e(){return E.current},onFilterDataSource:function e(t){y(t)},onClearDataSource:function e(){b(0);y([])},onUpdateDataSource:function t(i){y(i);E.current=i;e.onDataSourceChange==null?void 0:e.onDataSourceChange(i)}}};v(a,(function(){return G()}));var $=function e(t){V(t)};var J=function t(){var i=B.getFieldsValue();if(e.onFormFinish){e.onFormFinish(n({},i,U(1,w.queryCondition[O.pageSize])))}else{void _(n({},i,U(1,w.queryCondition[O.pageSize])))}};var M=i(e.isFull)?true:e.isFull;var X=t("fba-easy-table",{"fba-easy-table-full":M,"fba-easy-table-filter-fixed":e.filterFixed,"fba-easy-table-pagination-fixed":e.paginationFixed},e.className);var Z=m((function(){return n({showSizeChanger:true,current:w.queryCondition[O.pageNo]||1,pageSize:w.queryCondition[O.pageSize]||T,total:S,showTotal:function e(t){return"共 "+t+" 条记录"}},e.pagination)}),[O.pageNo,O.pageSize,T,e.pagination,w.queryCondition,S]);var ee=o.useCallbackRef((function(t,i){var r,n;void _((r={},r[O.pageSize]=i,r[O.pageNo]=t,r));(n=e.pagination)==null||n.onChange==null?void 0:n.onChange(t,i)}));var te=t("fba-easy-table-wrapper",{"fba-easy-table-wrapper-inline":e.isInline},e.className);var ie=typeof e.children==="function"?e.children(E.current):e.children;return R(A.Provider,{value:{getEasyTableRef:G,modelKey:x,onRequest:_,tableList:d,tableTotal:S,loading:F,fieldNames:O,pageSize:T,initRequest:D,initialValues:e.initialValues||{},onSetPaginationStatus:$,paginationStatus:L,onFormFinish:J,form:B,paginationFixed:e.paginationFixed||false,foldKeys:e.foldKeys||[]},children:e.paginationFixed?N("div",{className:te,style:e.style,children:[R("div",{className:X,children:ie}),S>0&&R("div",{className:"fba-easy-table-pagination",children:R(C,n({size:"small"},Z,{onChange:ee}))})]}):R("div",{className:X,style:e.style,children:ie})})}));var H=function e(r){var a=y(A);var l=r.queryButtonProps,u=r.resetButtonProps,p=r.filterOperate,c=r.formClassName,d=r.defaultResetButtonTriggerRequest,g=r.filterWrapperStyle,v=r.filterWrapperClassName,C=r.rightOperateAreaAppendType;var S=a.modelKey,b=a.foldKeys,j=a.fieldNames,F=a.onRequest,q=a.pageSize,z=a.paginationStatus,K=a.initialValues,L=a.form,V=a.onFormFinish;var E=typeof r.children==="function"?r.children(L):r.children;var O=C||"cover";var I=m((function(){if(w(E)){return h.toArray(E.props.children)}else{return h.toArray(E)}}),[E]);var B=f(false),_=B[0],H=B[1];var U=W(S).useStore(),Q=U[0],Y=U[1];var G=o.useCallbackRef((function(){return new Promise((function(e,t){var r;return Promise.resolve(Y.resetFilterCondition()).then((function(a){try{L.resetFields();if(i(d)||d){if(z){F(n((r={},r[j.pageNo]=1,r[j.pageSize]=q,r),K))}else{F(K)}}return e()}catch(e){return t(e)}}),t)}))}));var $=m((function(){var e=[R(k,n({type:"primary",htmlType:"submit"},l,{children:(l==null?void 0:l.text)||"查询"}),"1"),R(k,n({onClick:G},u,{children:(u==null?void 0:u.text)||"重置"}),"2")].filter(Boolean);var t=p==null?void 0:p(L);var i=t==null?void 0:t.rightList;var r=(t==null?void 0:t.leftList)||[];var a=e;if(i){if(O==="afterAppend"){a=[].concat(e,i)}else if(O==="beforeAppend"){a=[].concat(i,e)}else{a=i}}if(b.length>0){var o=R(k,{type:"link",style:{padding:"0"},onClick:function e(){H(!_)},children:_?N("span",{children:["收起",R(P,{style:{marginLeft:3,fontSize:12}})]}):N("span",{children:["展开",R(x,{style:{marginLeft:3,fontSize:12}})]})},"fold-trigger");if(a.length>0||r.length===0){a.push(o)}else if((r==null?void 0:r.length)>0){r.push(o)}}return I.map((function(e,t){if(!_&&b.find((function(t){return".$"+t===e.key})))return null;if(e.props["hidden"])return null;if(e.type["domTypeName"]==="FormCol")return e;return R(T.Col,{children:e},t)})).filter(Boolean).concat(R(T.OperateCol,n({},t,{leftList:r,rightList:a}),999))}),[I,p,b,L,G,_,l,u,O]);return R(D,{className:t("easy-table-filter",v),style:g,children:R(s,{form:L,autoComplete:"off",onFinish:V,initialValues:n({},K,Q.queryCondition),className:c,style:r.formStyle,children:r.isPure?E:R(T.Row,{gutter:[15,0],gridSize:r.formGridSize,children:$})})})};var U=function e(){var t=y(A);return t.getEasyTableRef()};var Q=function e(){var t=y(A);return{current:t.getEasyTableRef()}};var Y=["children","rowKey","pagination"],G=["tooltip","tipsWrapperProps","title"];var $=function e(i){var r=y(A);var o=i.children,l=i.rowKey,s=i.pagination,u=a(i,Y);var c=r.modelKey,d=r.fieldNames,f=r.onRequest,g=r.tableList,v=r.initRequest,h=r.pageSize,C=r.tableTotal,b=r.loading,z=r.initialValues,x=r.paginationFixed,P=r.onSetPaginationStatus;var w=W(c).useStore(),k=w[0],T=w[1];var O=m((function(){if(x||s===false)return false;return n({showSizeChanger:true,current:k.queryCondition[d.pageNo]||1,pageSize:k.queryCondition[d.pageSize]||h,total:C,showTotal:function e(t){return"共 "+t+" 条记录"}},i.pagination,{selectComponentClass:S})}),[d.pageNo,d.pageSize,h,s,x,i.pagination,k.queryCondition,C]);var I=function e(t,r,n,a){if(a.action==="paginate"&&O){var o;f((o={},o[d.pageSize]=t.pageSize,o[d.pageNo]=t.current,o))}else{i.onChange==null?void 0:i.onChange(t,r,n,a)}};var B=m((function(){if(g.length===0){return[]}if(typeof l==="string"&&j(g[0][l])){return g.map((function(e){e[l]=F();return e}))}return g}),[g,l]);K.useEffectCustom((function(){var e=x||O!==false;P(e);if(v!==false||!k.isInit){if(e){var t;void f(n((t={},t[d.pageNo]=1,t[d.pageSize]=h,t),z,k.queryCondition))}else{void f(z)}}else{void T.updateFilterCondition(z)}void T.updateInitStatus()}),[]);var _=m((function(){return i.columns.map((function(e){var t=e.tooltip,i=e.tipsWrapperProps,r=e.title,o=a(e,G);if(typeof r==="string"&&i){if(typeof i==="string"){return n({},o,{title:R(E,{tipType:"popover",popoverProps:{content:i},children:r})})}return n({},o,{title:R(E,n({},i,{children:r}))})}if(typeof r==="string"&&!!t){return n({},o,{title:R(V,{tooltip:t,title:r})})}return e}))}),[i.columns]);return N(D,{className:t("easy-table-table",i.tableWrapperClassName),style:i.tableWrapperStyle,children:[o,q()?R(p,n({size:"small",scroll:{x:"max-content"},bordered:true},u,{columns:_,pagination:O,rowKey:l,onChange:I,loading:b,dataSource:B})):R(L,{children:R(p,n({size:"small",scroll:{x:"max-content"},bordered:true},u,{columns:_,pagination:O,rowKey:l,onChange:I,loading:b,dataSource:B}))})]})};var J=e.attachPropertiesToComponent(_,{Filter:H,Table:$,useEasyTablRef:Q,useEasyTable:U});export{J 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 } 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 */\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 fieldNames?: { list?: string; total?: string; pageNo?: string; pageSize?: string; uid?: 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 * ```\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 const respDataNew = requestResultAdapter ? requestResultAdapter(respData) : respData;\n const respList = respDataNew[fieldNames.list];\n setDataSource(isArray(respList) ? respList : []);\n setTotal(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","_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 } 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 } 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 */\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 fieldNames?: { list?: string; total?: string; pageNo?: string; pageSize?: string; uid?: 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 const respDataNew = requestResultAdapter ? requestResultAdapter(respData) : respData;\n const respList = respDataNew[fieldNames.list];\n setDataSource(isArray(respList) ? respList : []);\n setTotal(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","_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":";m+DA2CO,IAAMA,EAAmBC,EAA8C,CAC5EC,UAAWC,EACXC,UAAW,GACXC,gBAAiB,SAAAA,IACf,IChCJ,IAAMC,EAA2B,CAC/BC,eAAgB,CAAE,EAClBC,OAAQ,MAGV,IAAMC,EAA4D,CAChEC,QAAS,CACPC,sBAAuB,SAAAA,EAACC,GACtB,OAAO,SAACC,GACNA,EAAMN,eAAcO,EAAA,CAAA,EACfD,EAAMN,eACNK,GAGR,EACDG,qBAAsB,SAAAA,EAACH,GACrB,OAAO,SAACC,GACNA,EAAMN,eAAcO,EAAA,CAAA,EACfR,EAAaC,eACbK,GAGR,EACDI,iBAAkB,SAAAA,IAChB,OAAO,SAACH,GACNA,EAAML,OAAS,MAEnB,GAEFK,MAAOP,GAGT,IAAMW,EAAuF,CAAA,EAQtF,IAAMC,EAAiB,SAAjBA,EAAkBC,GAC7B,IAAKF,EAAgBE,GAAM,CACzBF,EAAgBE,GAAOC,EAAMX,EAC/B,CACA,OAAOQ,EAAgBE,EACzB,ECiDO,IAAME,EAAYC,GAA4C,SAACC,EAAOC,GAAQ,IAAAC,EACnF,IAAAC,EAAoCC,EAAyB,IAAtDC,EAAUF,EAAA,GAAEG,EAAaH,EAAA,GAChC,IAAAI,EAA0BH,EAAiB,GAApCI,EAAKD,EAAA,GAAEE,EAAQF,EAAA,GACtB,IAAAG,EAA8BN,EAAkB,OAAzCO,EAAOD,EAAA,GAAEE,EAAUF,EAAA,GAC1B,IAAMG,EAAcC,EAAMC,MAAMC,UAAW,kBAE3C,IAAMC,EAAWC,GAAQ,WACvB,OAAOlB,EAAMmB,YAAcC,SAASC,SAAWR,CAChD,GAAE,CAACA,EAAab,EAAMmB,cAEvB,IAAAG,EAAyB3B,EAAesB,GAAUM,WAA3CjC,EAAKgC,EAAA,GAAEnC,EAAOmC,EAAA,GACrB,IAAME,EAAWxB,EAAMwB,YAAQtB,EAAIF,EAAMyB,0BAANvB,UAAAA,EAAAA,EAA+BsB,WAAY,GAC9E,IAAME,EAAc1B,EAAM0B,cAAgBV,UAAY,KAAOhB,EAAM0B,YACnE,IAAAC,EAAgDvB,EAAS,OAAlDwB,EAAgBD,EAAA,GAAEE,EAAmBF,EAAA,GAC5C,IAAMG,EAAsBC,IAE5B,IAAMC,EAAUzC,EAAA,CACd0C,KAAM,OACNzB,MAAO,QACP0B,OAAQ,SACRV,SAAU,YACPxB,EAAMgC,YAGX,IAAAG,EAAeC,EAAKC,QAAQrC,EAAMsC,MAA3BA,EAAIH,EAAA,GAEX,IAAMI,EAAiBzB,EAAM0B,gBAAe,SAAOnD,GAAP,OAAA,IAAAoD,SAAA,SAAAC,EAAAC,GAAA,IAGlCC,EACA5D,EAA0D6D,EAAAC,EAAAnE,EAAAoE,EAE1DC,EACAC,EAGAC,EACAC,EAlJZ,IAAIC,aAAJ,IAAI,OAAAV,GAAK,CAAC,MAAAW,GAAW,OAAOV,EAAAU,EAAM,GAAlC,IAAIC,EAAA,SAsJSC,GAtJb,IAuJM3C,EAAW,OACX,GAAIZ,EAAMwD,qBAAsB,CAC9BxD,EAAMwD,qBAAqBD,EAC7B,KAAO,MACAE,EAAQF,MAAMA,EAAME,QAC3B,CA5JN,OAAOL,GAAE,CAAC,MAAAC,GAAW,OAAOV,EAAAU,EAAM,GAwI9B,IACEzC,EAAW,MACM,OAAA6B,QAAAiB,QAAMvE,EAAQC,sBAAsBC,IAApCsE,eAA2CC,GA1IlE,IA0IYhB,EAAWgB,EACX5E,EAAiB6E,EAAWjB,EAAS5D,gBAAkB,CAAE,GAC/D6D,EAAkE7C,EAAM8D,cAAhEhB,EAAoBD,EAApBC,qBAAsBnE,EAASkE,EAATlE,UAAWoE,EAAoBF,EAApBE,qBACnCC,EAAYF,EAAuBA,EAAqB9D,GAAkBA,EAC9D,OAAAyD,QAAAiB,QAAM/E,EAAUqE,IAAhBW,MAA0B,SAAAI,GA9IlD,IA8IYd,EAAYc,GAA+B,GACjDjC,EAAoBkC,QAAUf,EAC9BjD,EAAMiE,oBAANjE,UAAAA,EAAAA,EAAMiE,mBAAqBhB,GACrBC,EAAcH,EAAuBA,EAAqBE,GAAYA,EACtEE,EAAWD,EAAYlB,EAAWC,MACxC3B,EAAc4D,EAAQf,GAAYA,EAAW,IAC7C1C,EAASyC,EAAYlB,EAAWxB,QAChCI,EAAW,OArJjB,OAAOwC,GAAE,CAAC,MAAAC,GAAW,OAAOC,EAAAD,EAAM,CAAC,GAAAC,EAA1B,CAAC,MAAAD,GAAW,OAAOC,EAAAD,EAAM,CAAC,GAAAC,EAsJ9B,CAAC,MAAOC,GAAOD,EAAPC,EAOT,CAAC,OAGH,IAAMY,EAAsBrD,EAAM0B,gBAAe,SAAO4B,GAAP,OAAA,IAAA3B,SAAA,SAAAC,EAAAC,GAC/C,OAAAF,QAAAiB,QAAMvE,EAAQK,wBAAdmE,MAAoC,SAAAU,GAjKxC,IAkKI/B,EAAKgC,cACL,GAAIF,EAAQ,MACLjF,EAAQC,sBAAsBgF,GACnC9B,EAAKiC,eAAeH,EACtB,CAAC,OAAA1B,GAtKI,CAAC,MAAAW,GAAW,OAAOV,EAAAU,EAAM,CAAC,GAAAV,EAiKK,OAQtC,IAAM6B,EAAoB,SAApBA,EAAqBtC,EAAgBuC,GACzC,GAAI7C,EAAkB,CAAA,IAAA8C,EACpB,OAAAA,KAAAA,EACG1C,EAAWE,QAASA,EAAMwC,EAC1B1C,EAAWR,UAAWiD,GAAajD,EAAQkD,CAEhD,KAAO,CACL,MAAO,EACT,GAGF,IAAMC,EAAiB7D,EAAM0B,gBAAe,SAAO4B,GAAP,OAAA,IAAA3B,SAAA,SAAAC,EAAAC,GAAA,IACpCtD,EAAAA,EAAME,EACPiF,CAAAA,EAAAA,EAAkB,EAAGlF,EAAMN,eAAegD,EAAWR,WACrDxB,EAAM4E,cACNR,GAEL,OAAA3B,QAAAiB,QAAMvE,EAAQK,qBAAqBH,IAAnCsE,eAA0CkB,GA1L9C,IA2LIvC,EAAKgC,cACL,GAAIF,EAAQ,CACV9B,EAAKiC,eAAeH,EACtB,MACK7B,EAAelD,GAAQ,OAAAqD,GA/LvB,CAAC,MAAAW,GAAW,OAAOV,EAAAU,EAAM,CAAC,GAAAV,EA0LW,OAQ5C,IAAMmC,EAAmBhE,EAAM0B,gBAAe,WAC5C,OAAAjD,EACKD,CAAAA,EAAAA,EAAMN,eACNsD,EAAKyC,iBAEZ,IAEA,IAAMjG,EAAkB,SAAlBA,IACJ,MAAO,CAMLH,UAAW4D,EACX4B,oBAAAA,EACAW,iBAAAA,EACAH,eAAAA,EACArC,KAAAA,EACA0C,cAAe,SAAAA,IACb,OAAOlD,EAAoBkC,OAC5B,EACDiB,mBAAoB,SAAAA,EAACC,GACnB5E,EAAc4E,EACf,EACDC,kBAAmB,SAAAA,IACjB1E,EAAS,GACTH,EAAc,GACf,EACD8E,mBAAoB,SAAAA,EAACC,GACnB/E,EAAc+E,GACdvD,EAAoBkC,QAAUqB,EAC9BrF,EAAMiE,oBAANjE,UAAAA,EAAAA,EAAMiE,mBAAqBoB,EAC7B,IAIJC,EAAoBrF,GAAK,WACvB,OAAOnB,GACT,IAEA,IAAMyG,EAAwB,SAAxBA,EAAyBC,GAC7B3D,EAAoB2D,IAGtB,IAAMC,EAAe,SAAfA,IACJ,IAAMrB,EAAS9B,EAAKyC,iBACpB,GAAI/E,EAAMyF,aAAc,CACtBzF,EAAMyF,aAAYlG,KAAM6E,EAAWI,EAAkB,EAAGlF,EAAMN,eAAegD,EAAWR,YAC1F,KAAO,MACAe,EAAchD,EAAA,GACd6E,EACAI,EAAkB,EAAGlF,EAAMN,eAAegD,EAAWR,YAE5D,GAEF,IAAMkE,EAASC,EAAY3F,EAAM0F,QAAU,KAAO1F,EAAM0F,OACxD,IAAME,EAAYC,EAChB,iBACA,CACE,sBAAuBH,EACvB,8BAA+B1F,EAAM8F,YACrC,kCAAmC9F,EAAM+F,iBAE3C/F,EAAM4F,WAGR,IAAMI,EAAiB9E,GAAQ,WAC7B,OAAA3B,EAAA,CACE0G,gBAAiB,KACjBjC,QAAS1E,EAAMN,eAAegD,EAAWE,SAAW,EACpDV,SAAUlC,EAAMN,eAAegD,EAAWR,WAAaA,EACvDhB,MAAOA,EACP0F,UAAW,SAAAA,EAAC1F,GAAK,MAAA,KAAUA,EAAK,MAAA,GAC7BR,EAAMmG,WAEZ,GAAE,CAACnE,EAAWE,OAAQF,EAAWR,SAAUA,EAAUxB,EAAMmG,WAAY7G,EAAMN,eAAgBwB,IAE9F,IAAM4F,GAAWtF,EAAM0B,gBAAe,SAAC6D,EAAc7E,GAAqB,IAAA8E,EAAAC,OACnEhE,GAAc+D,EAAA,CAAA,EAAAA,EAAItE,EAAWR,UAAWA,EAAQ8E,EAAGtE,EAAWE,QAASmE,EAAIC,KAChFC,EAAAvG,EAAMmG,mBAANI,EAAkBH,UAAQ,UAAA,EAA1BG,EAAkBH,SAAWC,EAAM7E,EACrC,IAEA,IAAMgF,GAAmBX,EACvB,yBACA,CACE,gCAAiC7F,EAAMyG,UAEzCzG,EAAM4F,WAGR,IAAMc,UACG1G,EAAM0G,WAAa,WAAa1G,EAAM0G,SAAS5E,EAAoBkC,SAAWhE,EAAM0G,SAE7F,OACEC,EAAClI,EAAiBmI,SAAQ,CACxBC,MAAO,CACL/H,gBAAAA,EACAmC,SAAAA,EACAtC,UAAW4D,EACX1D,UAAWwB,EACXyG,WAAYtG,EACZG,QAAAA,EACAqB,WAAAA,EACAR,SAAAA,EACAE,YAAAA,EACAkD,cAAe5E,EAAM4E,eAAiB,CAAE,EACxCW,sBAAAA,EACA3D,iBAAAA,EACA6D,aAAAA,EACAnD,KAAAA,EACAyD,gBAAiB/F,EAAM+F,iBAAmB,MAC1CgB,SAAU/G,EAAM+G,UAAY,IAC5BL,SAED1G,EAAM+F,gBACLiB,EAAA,MAAA,CAAKpB,UAAWY,GAAkBS,MAAOjH,EAAMiH,MAAMP,UACnDC,EAAA,MAAA,CAAKf,UAAWA,EAAUc,SAAEA,KAC3BlG,EAAQ,GACPmG,EAAA,MAAA,CAAKf,UAAU,4BAA2Bc,SACxCC,EAACO,EAAiB3H,EAAA,CAAC4H,KAAK,SAAYnB,EAAc,CAAEI,SAAUA,WAKpEO,EAAA,MAAA,CAAKf,UAAWA,EAAWqB,MAAOjH,EAAMiH,MAAMP,SAC3CA,MAKX,ICnPO,IAAMU,EAAkB,SAAlBA,EAAmBpH,GAC9B,IAAMqH,EAAMC,EAAW7I,GACvB,IACE8I,EAQEvH,EARFuH,iBACAC,EAOExH,EAPFwH,iBACAC,EAMEzH,EANFyH,cACAC,EAKE1H,EALF0H,cACAC,EAIE3H,EAJF2H,iCACAC,EAGE5H,EAHF4H,mBACAC,EAEE7H,EAFF6H,uBACAC,EACE9H,EADF8H,2BAEF,IACE7G,EASEoG,EATFpG,SACA8F,EAQEM,EARFN,SACA/E,EAOEqF,EAPFrF,WACArD,EAME0I,EANF1I,UACA6C,EAKE6F,EALF7F,SACAI,EAIEyF,EAJFzF,iBACAgD,EAGEyC,EAHFzC,cACAtC,EAEE+E,EAFF/E,KACAmD,EACE4B,EADF5B,aAEF,IAAMiB,SAAkB1G,EAAM0G,WAAa,WAAa1G,EAAM0G,SAASpE,GAAQtC,EAAM0G,SAErF,IAAMqB,EAA+BD,GAA8B,QACnE,IAAME,EAAY9G,GAAQ,WACxB,GAAI+G,EAAWvB,GAAW,CACxB,OAAOwB,EAASC,QAASzB,EAA0B1G,MAAM0G,SAC3D,KAAO,CACL,OAAOwB,EAASC,QAAQzB,EAC1B,CACF,GAAG,CAACA,IAEJ,IAAAvG,EAAgCC,EAAS,OAAlCgI,EAAQjI,EAAA,GAAEkI,EAAWlI,EAAA,GAE5B,IAAAmB,EAAyB3B,EAAesB,GAAUM,WAA3CjC,EAAKgC,EAAA,GAAEnC,EAAOmC,EAAA,GAErB,IAAMgH,EAAUxH,EAAM0B,gBAAe,WAAA,OAAA,IAAAC,SAAA,SAAAC,EAAAC,GAAA,IAAA4F,EACnC,OAAA9F,QAAAiB,QAAMvE,EAAQK,wBAAdmE,MAAoC,SAAA6E,GAzHxC,IA0HIlG,EAAKgC,cACL,GAAIqB,EAAYgC,IAAqCA,EAAkC,CACrF,GAAI/F,EAAkB,CACpBjD,EAASY,GAAAgJ,EAAA,CAAA,EAAAA,EACNvG,EAAWE,QAAS,EAACqG,EACrBvG,EAAWR,UAAWA,EAAQ+G,GAC5B3D,GAEP,KAAO,CACLjG,EAAUiG,EACZ,CACF,CAAC,OAAAlC,GArII,CAAC,MAAAW,GAAW,OAAOV,EAAAU,EAAM,CAAC,GAAAV,EAyHK,OAetC,IAAM8F,EAAkBvH,GAAQ,WAC9B,IAAMwH,EAAmB,CACvB/B,EAACgC,EAAapJ,EAAA,CAASqJ,KAAK,UAAUC,SAAS,UAAatB,EAAgB,CAAAb,UACzEa,eAAAA,EAAkBuB,OAAQ,OADV,KAGnBnC,EAACgC,EAAapJ,EAAA,CAASwJ,QAAST,GAAad,EAAgB,CAAAd,UAC1Dc,eAAAA,EAAkBsB,OAAQ,OADV,MAGnBE,OAAOC,SACT,IAAMC,EAAuBzB,eAAAA,EAAgBnF,GAC7C,IAAM6G,EAAkBD,GAAAA,UAAAA,EAAAA,EAAsBE,UAC9C,IAAMC,GAAmBH,eAAAA,EAAsBG,WAAY,GAE3D,IAAID,EAAoBV,EACxB,GAAIS,EAAiB,CACnB,GAAIpB,IAAiC,cAAe,CAClDqB,KAASE,OAAOZ,EAAqBS,EACvC,MAAO,GAAIpB,IAAiC,eAAgB,CAC1DqB,KAASE,OAAOH,EAAoBT,EACtC,KAAO,CACLU,EAAYD,CACd,CACF,CAEA,GAAIpC,EAASwC,OAAS,EAAG,CACvB,IAAMC,EACJ7C,EAACgC,EAAa,CACZC,KAAK,OAEL3B,MAAO,CAAEwC,QAAS,KAClBV,QAAS,SAAAA,IACPV,GAAaD,EACb,EAAA1B,SAED0B,EACCpB,EAAA,OAAA,CAAAN,SAAM,CAAA,KAEJC,EAAA+C,EAAA,CAAYzC,MAAO,CAAE0C,WAAY,EAAGC,SAAU,SAGhD5C,EAAA,OAAA,CAAAN,SAAM,CAAA,KAEJC,EAAAkD,EAAA,CAAc5C,MAAO,CAAE0C,WAAY,EAAGC,SAAU,UAdhD,gBAoBR,GAAIR,EAAUG,OAAS,GAAKF,EAASE,SAAW,EAAG,CACjDH,EAAUU,KAAKN,QACV,IAAIH,GAAQ,UAAA,EAARA,EAAUE,QAAS,EAAG,CAC/BF,EAASS,KAAKN,EAChB,CACF,CAEA,OAAOxB,EACJ+B,KAAI,SAACC,EAAMC,GACV,IAAK7B,GAAYrB,EAASmD,MAAK,SAACC,GAAO,MAAK,KAAKA,IAAcH,EAAKpK,OAAM,OAAO,KACjF,GAAIoK,EAAKhK,MAAM,UAAW,OAAO,KACjC,GAAIgK,EAAKpB,KAAK,iBAAmB,UAAW,OAAOoB,EACnD,OAAOrD,EAACyD,EAASC,IAAG,CAAA3D,SAAcsD,GAARC,EAC3B,IACAjB,OAAOC,SACPK,OACC3C,EAACyD,EAASE,WAAU/K,KAAe2J,EAAoB,CAAEG,SAAUA,EAAUD,UAAWA,IAA9D,KAE/B,GAAE,CACDpB,EACAP,EACAV,EACAzE,EACAgG,EACAF,EACAb,EACAC,EACAO,IAGF,OACEpB,EAAC4D,EAAY,CACX3E,UAAWC,EAAW,oBAAqBgC,GAC3CZ,MAAOW,EAAmBlB,SAE1BC,EAACvE,EAAI,CACHE,KAAMA,EACNkI,aAAa,MACbC,SAAUhF,EACVb,cAAarF,EACRqF,CAAAA,EAAAA,EACAtF,EAAMN,gBAEX4G,UAAW8B,EACXT,MAAOjH,EAAM0K,UAAUhE,SAEtB1G,EAAM2K,OACLjE,EAEAC,EAACyD,EAASQ,IAAG,CAACC,OAAQ,CAAC,GAAI,GAAIC,SAAU9K,EAAM+K,aAAarE,SACzD+B,OAMb,ECzOO,IAAMuC,EAAe,SAAfA,IACX,IAAM3D,EAAMC,EAAW7I,GACvB,OAAO4I,EAAIvI,iBACb,EAOO,IAAMmM,EAAiB,SAAjBA,IACX,IAAM5D,EAAMC,EAAW7I,GACvB,MAAO,CACLuF,QAASqD,EAAIvI,kBAEjB,oFC6CO,IAAMoM,EAAiB,SAAjBA,EAA0ClL,GACrD,IAAMqH,EAAMC,EAAW7I,GACvB,IAAQiI,EAAgD1G,EAAhD0G,SAAUyE,EAAsCnL,EAAtCmL,OAAQhF,EAA8BnG,EAA9BmG,WAAeiF,EAAUC,EAAKrL,EAAKsL,GAE7D,IACErK,EAWEoG,EAXFpG,SACAe,EAUEqF,EAVFrF,WACArD,EASE0I,EATF1I,UACAE,EAQEwI,EARFxI,UACA6C,EAOE2F,EAPF3F,YACAF,EAME6F,EANF7F,SACAsF,EAKEO,EALFP,WACAnG,EAIE0G,EAJF1G,QACAiE,EAGEyC,EAHFzC,cACAmB,EAEEsB,EAFFtB,gBACAR,EACE8B,EADF9B,sBAEF,IAAAjE,EAAyB3B,EAAesB,GAAUM,WAA3CjC,EAAKgC,EAAA,GAAEnC,EAAOmC,EAAA,GAErB,IAAMiK,EAAsBrK,GAAQ,WAClC,GAAI6E,GAAmBI,IAAe,MAAO,OAAO,MACpD,OAAA5G,EAAA,CACE0G,gBAAiB,KACjBjC,QAAS1E,EAAMN,eAAegD,EAAWE,SAAW,EACpDV,SAAUlC,EAAMN,eAAegD,EAAWR,WAAaA,EACvDhB,MAAOsG,EACPZ,UAAW,SAAAA,EAAC1F,GAAK,MAAA,KAAUA,EAAK,MAAA,GAC7BR,EAAMmG,WAAU,CACnBqF,qBAAsBC,GAEzB,GAAE,CACDzJ,EAAWE,OACXF,EAAWR,SACXA,EACA2E,EACAJ,EACA/F,EAAMmG,WACN7G,EAAMN,eACN8H,IAGF,IAAM4E,EAA6C,SAA7CA,EAA8CvF,EAAYwF,EAASC,EAAQC,GAC/E,GAAIA,EAAMC,SAAW,YAAcP,EAAqB,CAAA,IAAAQ,EACtDpN,GAASoN,EAAA,CAAA,EAAAA,EAAI/J,EAAWR,UAAW2E,EAAW3E,SAAQuK,EAAG/J,EAAWE,QAASiE,EAAWnC,QAAO+H,GACjG,KAAO,CACL/L,EAAMoG,UAANpG,UAAAA,EAAAA,EAAMoG,SAAWD,EAAYwF,EAASC,EAAQC,EAChD,GAGF,IAAMxL,EAAaa,GAAQ,WACzB,GAAIrC,EAAU0K,SAAW,EAAG,CAC1B,MAAO,EACT,CACA,UAAW4B,IAAW,UAAYa,EAAkBnN,EAAU,GAAGsM,IAAU,CACzE,OAAOtM,EAAUkL,KAAI,SAACC,GACpBA,EAAKmB,GAAUc,IACf,OAAOjC,CACT,GACF,CACA,OAAOnL,CACT,GAAG,CAACA,EAAWsM,IAEfe,EAASC,iBAAgB,WACvB,IAAMC,EAAgBrG,GAAmBwF,IAAwB,MACjEhG,EAAsB6G,GACtB,GAAI1K,IAAgB,QAAUpC,EAAML,OAAQ,CAC1C,GAAImN,EAAe,CAAA,IAAA7D,OACZ5J,EAASY,GAAAgJ,EAAA,CAAA,EAAAA,EACXvG,EAAWE,QAAS,EAACqG,EACrBvG,EAAWR,UAAWA,EAAQ+G,GAC5B3D,EACAtF,EAAMN,gBAEb,KAAO,MACAL,EAAUiG,EACjB,CACF,KAAO,MACAzF,EAAQC,sBAAsBwF,EACrC,MACKzF,EAAQM,kBACd,GAAE,IAEH,IAAM4M,EAAUnL,GAAQ,WACtB,OAAOlB,EAAMqM,QAAQtC,KAAI,SAACC,GACxB,IAAQsC,EAAoDtC,EAApDsC,QAASC,EAA2CvC,EAA3CuC,iBAAkBC,EAAyBxC,EAAzBwC,MAAUpB,EAAUC,EAAKrB,EAAIyC,GAChE,UAAWD,IAAU,UAAYD,EAAkB,CACjD,UAAWA,IAAqB,SAAU,CACxC,OAAAhN,KACK6L,EAAU,CACboB,MACE7F,EAAC+F,EAAW,CAACC,QAAQ,UAAUC,aAAc,CAAEC,QAASN,GAAmB7F,SACxE8F,KAIT,CACA,OAAAjN,KACK6L,EAAU,CACboB,MAAO7F,EAAC+F,EAAWnN,KAAKgN,EAAgB,CAAA7F,SAAG8F,MAE/C,CACA,UAAWA,IAAU,YAAcF,EAAS,CAC1C,OAAA/M,KACK6L,EAAU,CACboB,MAAO7F,EAACmG,EAAiB,CAACR,QAASA,EAASE,MAAOA,KAEvD,CACA,OAAOxC,CACT,GACF,GAAG,CAAChK,EAAMqM,UAEV,OACErF,EAACuD,EAAY,CACX3E,UAAWC,EAAW,mBAAoB7F,EAAM+M,uBAChD9F,MAAOjH,EAAMgN,kBAAkBtG,SAAA,CAE9BA,EACAuG,IACCtG,EAACuG,EAAK3N,EAAA,CACJ4H,KAAK,QACLgG,OAAQ,CAAEC,EAAG,eACbC,SAAQ,MACJjC,EAAU,CACdiB,QAASA,EACTlG,WAAYoF,EACZJ,OAAQA,EACR/E,SAAUsF,EACV/K,QAASA,EACTN,WAAYA,KAGdsG,EAAC2G,EAAc,CAAA5G,SACbC,EAACuG,EAAK3N,EAAA,CACJ4H,KAAK,QACLgG,OAAQ,CAAEC,EAAG,eACbC,SAAQ,MACJjC,EAAU,CACdiB,QAASA,EACTlG,WAAYoF,EACZJ,OAAQA,EACR/E,SAAUsF,EACV/K,QAASA,EACTN,WAAYA,SAMxB,EChMO,IAAMP,EAAYyN,EAASC,4BAA4BC,EAAgB,CAgC5EC,OAAQtG,EASR8F,MAAOhC,EAKPD,eAAgBA,EAGhBD,aAAcA"}
|
|
@@ -3,5 +3,5 @@ import './../fba-hooks/index.css';
|
|
|
3
3
|
import './../icon-wrapper/index.css';
|
|
4
4
|
import './index.css';
|
|
5
5
|
/*! @flatjs/forge MIT @flatbiz/antd */
|
|
6
|
-
import{classNames as n}from"@dimjs/utils/cjs/class-names";import r from"@ant-design/icons/es/icons/CloseOutlined";import e from"@ant-design/icons/es/icons/CheckOutlined";import{_ as i}from"../_rollupPluginBabelHelpers-
|
|
6
|
+
import{classNames as n}from"@dimjs/utils/cjs/class-names";import r from"@ant-design/icons/es/icons/CloseOutlined";import e from"@ant-design/icons/es/icons/CheckOutlined";import{_ as i}from"../_rollupPluginBabelHelpers-a0769acd.js";import{isArray as o}from"@dimjs/lang/cjs/is-array";import{isNumber as t}from"@dimjs/lang/cjs/is-number";import{isString as l}from"@dimjs/lang/cjs/is-string";import a from"@ant-design/icons/es/icons/EditOutlined";import{isUndefinedOrNull as c}from"@flatbiz/utils";import{Space as s}from"antd";import{useState as u,useContext as f,useRef as d,useEffect as m,isValidElement as v}from"react";import{E as p}from"../context-25d0b686.js";import{fbaHooks as h}from"../fba-hooks/index.js";import{IconWrapper as C}from"../icon-wrapper/index.js";import{jsx as b,jsxs as g}from"react/jsx-runtime";import"@wove/react/cjs/hooks";import"../use-responsive-point-21b8c601.js";var j=function j(k){var y=k.value,I=k.onChange,w=k.viewRender,E=k.placeholderValue,P=E===void 0?"-":E,x=k.editRender,z=k.isEditFull,O=k.onClickEditIconPre,R=k.onClickConfirmIconPre,N=k.iconConfig,T=k.onEditCallback,_=k.onConfirmCallback;var B=u(false),F=B[0],H=B[1];var V=f(p);var q=d(y);var A=function(){if(V.isCtx){return k.showEditableIcon===undefined?V.showEditableIcon:k.showEditableIcon}return k.showEditableIcon===undefined?true:k.showEditableIcon}();var D=function(){if(V.isCtx){return k.editable===undefined?V.editable:k.editable}return k.editable||false}();var G=h.useThemeToken();m((function(){H(D)}),[D]);var J=function n(){return new Promise((function(n,r){if(O){return Promise.resolve(O(y)).then(function(n){try{return e.call(this)}catch(n){return r(n)}}.bind(this),r)}function e(){q.current=y;H(true);T==null?void 0:T(y);return n()}return e.call(this)}))};var K=N!=null&&N.editIcon?N.editIcon({onClick:J}):b(C,{size:"small",icon:b(a,{}),onClick:J});if(!F){var L=(w?w(k.value):k.value)||P;if(l(L)||t(L)||c(L)||v(L)){if(!A){return L}return g(s,{size:8,children:[b("span",{children:L}),K]})}console.warn("对象作为React子对象无效",L)}var M=function n(){if(y!==q.current){I==null?void 0:I(q.current)}H(false)};var Q=function n(r){var e=r;if(typeof r==="object"&&r!==null&&!o(r)&&r.target){var i;var a=(i=r.target)==null?void 0:i.value;if(l(a)||t(a)||c(a)){var s;e=(s=r.target)==null?void 0:s.value}}I==null?void 0:I(e)};var S=function n(){return new Promise((function(n,r){if(R){return Promise.resolve(R(y,q.current)).then(function(n){try{return e.call(this)}catch(n){return r(n)}}.bind(this),r)}function e(){H(false);_==null?void 0:_(y,q.current);return n()}return e.call(this)}))};var U=typeof x==="function"?x({value:y,onChange:Q}):x;if(!A){return b(U.type,i({value:y,onChange:Q},U.props))}var W=N!=null&&N.confirmIcon?N.confirmIcon({onClick:S}):b(C,{size:"small",icon:b(e,{style:{color:G.colorPrimary}}),onClick:S});var X=N!=null&&N.cancelIcon?N.cancelIcon({onClick:M}):b(C,{size:"small",icon:b(r,{style:{color:G.colorPrimary}}),onClick:M});return g(s,{direction:"horizontal",size:12,style:k.style,className:n("editable-field",{"editable-field-full":z},k.className),children:[b(U.type,i({value:y,onChange:Q},U.props)),W,X]})};export{j as EditableField};
|
|
7
7
|
//# sourceMappingURL=index.js.map
|
|
@@ -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-fc015ef2.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 p}from"antd";import{useMemo as f,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 G}from"@dimjs/lang/cjs/is-string";import{InputTextAreaWrapper as z}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"../config-provider-wrapper/index.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"../index-ac189a77.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=f((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=f((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=f((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 p=v([]),f=p[0],h=p[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):f.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=f((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=f((function(){var e;if((e=n.fieldConfig)!=null&&e.render)return undefined;var r=G(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(z,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,p=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(){p(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(){p(i)},index:i}):undefined]}),m==null?void 0:m({add:c,formListItemIndex:i,tableRowIndex:n.tableRowIndex,remove:function e(){p(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 pe=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 fe=["fieldConfig","renderMiddleware","tableChildrenColumnRender","tooltip","title","tipsWrapperProps"];var ve=h((function(i,l){var o;var d=t.useFormInstance();var m=C([]);var u=f((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,fe);var c=j(m)||typeof m==="string";var p;if(u&&c){if(typeof u==="string"){p=L(R,{tipType:"popover",popoverProps:{content:u},children:m})}else{p=L(R,n({},u,{children:m}))}}else if(d){p=L(I,{title:m,tooltip:d})}else{p=m}return n({title:p,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 p=typeof t==="function"?t({name:s,tableRowIndex:d.name,tableRowName:u}):t;return L(pe,{name:e.dataIndex?[d.name,e.dataIndex]:[d.name],completeName:s,fieldConfig:p,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(p,n({scroll:{x:"max-content"},pagination:false,rowKey:"key"},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 p}from"antd";import{useMemo as f,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 G}from"@dimjs/lang/cjs/is-string";import{InputTextAreaWrapper as z}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"../config-provider-wrapper/index.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"../index-ac189a77.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=f((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=f((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=f((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 p=v([]),f=p[0],h=p[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):f.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=f((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=f((function(){var e;if((e=n.fieldConfig)!=null&&e.render)return undefined;var r=G(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(z,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,p=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(){p(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(){p(i)},index:i}):undefined]}),m==null?void 0:m({add:c,formListItemIndex:i,tableRowIndex:n.tableRowIndex,remove:function e(){p(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 pe=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 fe=["fieldConfig","renderMiddleware","tableChildrenColumnRender","tooltip","title","tipsWrapperProps"];var ve=h((function(i,l){var o;var d=t.useFormInstance();var m=C([]);var u=f((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,fe);var c=j(m)||typeof m==="string";var p;if(u&&c){if(typeof u==="string"){p=L(R,{tipType:"popover",popoverProps:{content:u},children:m})}else{p=L(R,n({},u,{children:m}))}}else if(d){p=L(I,{title:m,tooltip:d})}else{p=m}return n({title:p,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 p=typeof t==="function"?t({name:s,tableRowIndex:d.name,tableRowName:u}):t;return L(pe,{name:e.dataIndex?[d.name,e.dataIndex]:[d.name],completeName:s,fieldConfig:p,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(p,n({scroll:{x:"max-content"},pagination:false,rowKey:"key"},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};
|
|
26
26
|
//# sourceMappingURL=index.js.map
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/* eslint-disable */
|
|
2
2
|
import './index.css';
|
|
3
3
|
/*! @flatjs/forge MIT @flatbiz/antd */
|
|
4
|
-
import{Editor as e}from"@wove/react/cjs/editor";import{_ as r}from"../_rollupPluginBabelHelpers-
|
|
4
|
+
import{Editor as e}from"@wove/react/cjs/editor";import{_ as r}from"../_rollupPluginBabelHelpers-a0769acd.js";import{classNames as t}from"@dimjs/utils/cjs/class-names";import{hooks as n}from"@wove/react/cjs/hooks";import{useKeyPress as o}from"ahooks";import{useRef as a}from"react";import{jsx as i}from"react/jsx-runtime";var l=function l(s){var u=a(null);var c=n.useCallbackRef((function(e,r){var t=r.getContent();var n=t?t:undefined;s.onChange==null?void 0:s.onChange(n)}));var m=n.useCallbackRef((function(e,r,t){return new Promise((function(n,o){var a;var i=function(){try{return n()}catch(e){return o(e)}};var l=function(e){try{t(e.message);return i()}catch(e){return o(e)}};try{return Promise.resolve(s.onUploadImage==null?void 0:s.onUploadImage(e.blob())).then((function(e){try{a=e;r(a);return i()}catch(e){return l(e)}}),l)}catch(e){l(e)}}))}));o((function(){return true}),(function(e){try{if(e.type==="keyup"&&e.key==="Escape"){var r;var t=(r=u.current)==null?void 0:r.editorContainer.classList.contains("tox-fullscreen");if(t){var n;(n=u.current)==null?void 0:n.editorCommands.execCommand("mceFullScreen")}}}catch(e){}}),{events:["keydown","keyup"]});var d=n.useCallbackRef((function(e){var r;try{if(e.keyCode==27){var t;var n=(t=u.current)==null?void 0:t.editorContainer.classList.contains("tox-fullscreen");if(n){var o;(o=u.current)==null?void 0:o.editorCommands.execCommand("mceFullScreen")}}}catch(e){}(r=s.editorProps)==null||r.onKeyDown==null?void 0:r.onKeyDown(e)}));return i("div",{className:t("v-editor-wrapper",s.className),children:i(e,r({value:s.value,cdnTinyMce:"https://file.40017.cn/tcsk/tinymce/tinymce.min.js",init:r({paste_data_images:!!s.onUploadImage,images_upload_handler:m,height:s.height||500,menubar:true,resize:true,language:"zh_CN",paste_retain_style_properties:"all",table_default_styles:{width:"100%"},plugins:"paste lists link image advlist charmap preview fullscreen code table help",toolbar:"undo redo fullscreen preview | bold italic underline strikethrough |"+"fontsizeselect formatselect |"+"alignleft aligncenter alignright alignjustify |"+"outdent indent | numlist bullist advlist |"+"forecolor backcolor removeformat |"+"code image link",fontsize_formats:"8px 10px 12px 14px 16px 18px 24px 36px 48px",autoresize_bottom_margin:50},s.editorInitParams,{setup:function e(r){var t;u.current=r;(t=s.editorInitParams)==null||t.setup==null?void 0:t.setup(r)}})},s.editorProps,{onKeyDown:d,onEditorChange:c}))})};export{l as EditorWrapper};
|
|
5
5
|
//# sourceMappingURL=index.js.map
|
|
File without changes
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
/* eslint-disable */
|
|
2
|
+
import './index.css';
|
|
3
|
+
/*! @flatjs/forge MIT @flatbiz/antd */
|
|
4
|
+
import{b as r}from"../_rollupPluginBabelHelpers-a0769acd.js";import{FlexLayout as t}from"@flatbiz/antd";import{isUndefinedOrNull as e}from"@flatbiz/utils";import{Alert as n,Button as o}from"antd";import*as i from"react";import{jsx as a,jsxs as s}from"react/jsx-runtime";var p=function(p){r(c,p);function c(){var r;for(var t=arguments.length,e=new Array(t),n=0;n<t;n++){e[n]=arguments[n]}r=p.call.apply(p,[this].concat(e))||this;r.state={error:undefined,info:{componentStack:""}};return r}var l=c.prototype;l.componentDidCatch=function r(t,e){this.setState({error:t,info:e})};l.render=function r(){var p=this.props,c=p.message,l=p.description,f=p.children,m=p.onRenderReset;var d=this.state,h=d.error,u=d.info;var v=u&&u.componentStack?u.componentStack:null;var g=typeof c==="undefined"?(h||"").toString():c;var y=typeof l==="undefined"?v:l;var k=e(this.props.stackMaxHeight)?200:this.props.stackMaxHeight;if(h){return a(n,{type:"error",message:s(t,{fullIndex:0,direction:"horizontal",children:[a("span",{children:g}),a(o,{type:"primary",ghost:true,size:"small",onClick:m,children:"重置"})]}),description:a(i.Fragment,{children:a("div",{style:{maxHeight:k,overflow:"auto"},children:a("pre",{style:{fontSize:"0.9em"},children:y})})})})}return f};return c}(i.Component);var c=p;export{c as ErrorBoundaryWrapper};
|
|
5
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sources":["@flatbiz/antd/src/error-boundary-wrapper/error-boundary.tsx"],"sourcesContent":["import { FlexLayout } from '@flatbiz/antd';\nimport { isUndefinedOrNull, type TNoopDefine } from '@flatbiz/utils';\nimport { Alert, Button } from 'antd';\nimport * as React from 'react';\n\ninterface ErrorBoundaryProps {\n message?: React.ReactNode;\n description?: React.ReactNode;\n children?: React.ReactNode;\n onRenderReset?: TNoopDefine;\n /** 栈消息最大高度,默认值200 */\n stackMaxHeight?: number | 'auto';\n}\n\ninterface ErrorBoundaryStates {\n error?: Error | null;\n info?: {\n componentStack?: string;\n };\n}\n\nclass ErrorBoundary extends React.Component<ErrorBoundaryProps, ErrorBoundaryStates> {\n state = {\n error: undefined,\n info: {\n componentStack: '',\n },\n };\n\n componentDidCatch(error: Error | null, info: object) {\n this.setState({ error, info });\n }\n\n render() {\n const { message, description, children, onRenderReset } = this.props;\n const { error, info } = this.state;\n const componentStack = info && info.componentStack ? info.componentStack : null;\n const errorMessage = typeof message === 'undefined' ? (error || '').toString() : message;\n const errorDescription = typeof description === 'undefined' ? componentStack : description;\n const stackMaxHeight = isUndefinedOrNull(this.props.stackMaxHeight) ? 200 : this.props.stackMaxHeight;\n if (error) {\n return (\n <Alert\n type=\"error\"\n message={\n <FlexLayout fullIndex={0} direction=\"horizontal\">\n <span>{errorMessage}</span>\n <Button type=\"primary\" ghost size=\"small\" onClick={onRenderReset}>\n 重置\n </Button>\n </FlexLayout>\n }\n description={\n <React.Fragment>\n <div style={{ maxHeight: stackMaxHeight, overflow: 'auto' }}>\n <pre style={{ fontSize: '0.9em' }}>{errorDescription}</pre>\n </div>\n </React.Fragment>\n }\n />\n );\n }\n return children;\n }\n}\n\n/**\n * react 异常拦截\n */\nexport const ErrorBoundaryWrapper = ErrorBoundary;\n"],"names":["ErrorBoundary","_React$Component","_inheritsLoose","_this","_len","arguments","length","args","Array","_key","call","apply","this","concat","state","error","undefined","info","componentStack","_proto","prototype","componentDidCatch","setState","render","_this$props","props","message","description","children","onRenderReset","_this$state","errorMessage","toString","errorDescription","stackMaxHeight","isUndefinedOrNull","_jsx","Alert","type","_jsxs","FlexLayout","fullIndex","direction","Button","ghost","size","onClick","React","Fragment","style","maxHeight","overflow","fontSize","Component","ErrorBoundaryWrapper"],"mappings":";8QAG+B,IAkBzBA,WAAaC,GAAAC,EAAAF,EAAAC,GAAA,SAAAD,IAAA,IAAAG,EAAA,IAAA,IAAAC,EAAAC,UAAAC,OAAAC,EAAAC,IAAAA,MAAAJ,GAAAK,EAAA,EAAAA,EAAAL,EAAAK,IAAA,CAAAF,EAAAE,GAAAJ,UAAAI,EAAA,CAAAN,EAAAF,EAAAS,KAAAC,MAAAV,EAAA,CAAAW,MAAAC,OAAAN,KAAAK,KAAAT,EACjBW,MAAQ,CACNC,MAAOC,UACPC,KAAM,CACJC,eAAgB,KAEnB,OAAAf,CAAA,CAAA,IAAAgB,EAAAnB,EAAAoB,UAAAD,EAEDE,kBAAA,SAAAA,EAAkBN,EAAqBE,GACrCL,KAAKU,SAAS,CAAEP,MAAAA,EAAOE,KAAAA,KACxBE,EAEDI,OAAA,SAAAA,IACE,IAAAC,EAA0DZ,KAAKa,MAAvDC,EAAOF,EAAPE,QAASC,EAAWH,EAAXG,YAAaC,EAAQJ,EAARI,SAAUC,EAAaL,EAAbK,cACxC,IAAAC,EAAwBlB,KAAKE,MAArBC,EAAKe,EAALf,MAAOE,EAAIa,EAAJb,KACf,IAAMC,EAAiBD,GAAQA,EAAKC,eAAiBD,EAAKC,eAAiB,KAC3E,IAAMa,SAAsBL,IAAY,aAAeX,GAAS,IAAIiB,WAAaN,EACjF,IAAMO,SAA0BN,IAAgB,YAAcT,EAAiBS,EAC/E,IAAMO,EAAiBC,EAAkBvB,KAAKa,MAAMS,gBAAkB,IAAMtB,KAAKa,MAAMS,eACvF,GAAInB,EAAO,CACT,OACEqB,EAACC,EAAK,CACJC,KAAK,QACLZ,QACEa,EAACC,EAAU,CAACC,UAAW,EAAGC,UAAU,aAAYd,UAC9CQ,EAAA,OAAA,CAAAR,SAAOG,IACPK,EAACO,EAAM,CAACL,KAAK,UAAUM,MAAK,KAACC,KAAK,QAAQC,QAASjB,EAAcD,SAAC,UAKtED,YACES,EAACW,EAAMC,SAAQ,CAAApB,SACbQ,EAAA,MAAA,CAAKa,MAAO,CAAEC,UAAWhB,EAAgBiB,SAAU,QAASvB,SAC1DQ,EAAA,MAAA,CAAKa,MAAO,CAAEG,SAAU,SAAUxB,SAAEK,SAMhD,CACA,OAAOL,GACR,OAAA5B,CAAA,EA1CyB+C,EAAMM,WAgD3B,IAAMC,EAAuBtD"}
|