@flatbiz/antd 4.2.37 → 4.2.39
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/dialog-alert/index.css +1 -1
- package/esm/dialog-alert/index.js +1 -1
- package/esm/{dialog-alert-0ca83448.js → dialog-alert-96962d07.js} +2 -2
- package/esm/{dialog-alert-0ca83448.js.map → dialog-alert-96962d07.js.map} +1 -1
- package/esm/dialog-confirm/index.css +1 -1
- package/esm/dialog-confirm/index.js +1 -1
- package/esm/{dialog-confirm-b289f5ed.js → dialog-confirm-4dacc583.js} +2 -2
- package/esm/{dialog-confirm-b289f5ed.js.map → dialog-confirm-4dacc583.js.map} +1 -1
- package/esm/dialog-modal/index.css +1 -1
- package/esm/dialog-modal/index.js +1 -1
- package/esm/dialog-modal-459d2be5.js +3 -0
- package/esm/dialog-modal-459d2be5.js.map +1 -0
- package/esm/easy-table/index.js +1 -1
- package/esm/easy-table/index.js.map +1 -1
- package/esm/editable-table/index.js +5 -2
- package/esm/editable-table-d3afee03.js +3 -0
- package/esm/{editable-table-6bd8df15.js.map → editable-table-d3afee03.js.map} +1 -1
- package/esm/form-grid/index.js +1 -1
- package/esm/form-grid/index.js.map +1 -1
- package/esm/index.js +1 -1
- package/esm/selector-wrapper/index.js +1 -1
- package/esm/selector-wrapper-defe35d6.js +3 -0
- package/esm/selector-wrapper-defe35d6.js.map +1 -0
- package/esm/selector-wrapper-search/index.js +1 -1
- package/esm/selector-wrapper-search-228c96c5.js +3 -0
- package/esm/selector-wrapper-search-228c96c5.js.map +1 -0
- package/esm/selector-wrapper-simple/index.js +1 -1
- package/esm/selector-wrapper-simple-c51eba69.js +3 -0
- package/esm/selector-wrapper-simple-c51eba69.js.map +1 -0
- package/esm/simple-layout/index.css +1 -1
- package/esm/tree-wrapper/index.js +3 -3
- package/esm/tree-wrapper/index.js.map +1 -1
- package/esm/types/index.js +1 -0
- package/esm/types/index.js.map +1 -1
- package/esm/upload-wrapper/index.js +1 -1
- package/esm/upload-wrapper-df8a2277.js +3 -0
- package/esm/upload-wrapper-df8a2277.js.map +1 -0
- package/index.d.ts +109 -92
- package/index.js +1 -1
- package/package.json +3 -3
- package/esm/dialog-modal-225b0fe0.js +0 -3
- package/esm/dialog-modal-225b0fe0.js.map +0 -1
- package/esm/editable-table-6bd8df15.js +0 -3
- package/esm/selector-wrapper-ece722f5.js +0 -3
- package/esm/selector-wrapper-ece722f5.js.map +0 -1
- package/esm/selector-wrapper-search-aad145b5.js +0 -3
- package/esm/selector-wrapper-search-aad145b5.js.map +0 -1
- package/esm/selector-wrapper-simple-49384d37.js +0 -3
- package/esm/selector-wrapper-simple-49384d37.js.map +0 -1
- package/esm/tree-wrapper-85aa72d7.js +0 -3
- package/esm/tree-wrapper-85aa72d7.js.map +0 -1
- package/esm/upload-wrapper-f20208d6.js +0 -3
- package/esm/upload-wrapper-f20208d6.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
.v-dialog-
|
|
1
|
+
.v-dialog-confirm .ant-modal-header{margin:0!important}.v-dialog-confirm .ant-modal-body{color:rgba(0,0,0,.78)!important;font-size:16px;font-weight:400}.v-dialog-confirm .ant-modal-footer>button:nth-child(2){margin-left:15px!important}
|
|
@@ -7,5 +7,5 @@ import './../fba-hooks/index.css';
|
|
|
7
7
|
import './../fba-utils/index.css';
|
|
8
8
|
import './index.css';
|
|
9
9
|
/*! @flatjs/forge MIT @flatbiz/antd */
|
|
10
|
-
export{d as dialogAlert}from"../dialog-alert-
|
|
10
|
+
export{d as dialogAlert}from"../dialog-alert-96962d07.js";import"../_rollupPluginBabelHelpers-1f4d8910.js";import"../dialog-confirm-4dacc583.js";import"@dimjs/utils/cjs/class-names";import"../dialog-modal-459d2be5.js";import"@dimjs/lang/cjs/is-string";import"@dimjs/lang/cjs/is-promise";import"@wove/react/cjs/hooks";import"@flatbiz/utils";import"ahooks";import"antd";import"react";import"react-dom/client";import"../button-wrapper-c63ea6fc.js";import"@ant-design/icons/es/icons/LoadingOutlined";import"../config-provider-wrapper-dfe8f592.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"react/jsx-runtime";import"../fba-utils-1e895394.js";
|
|
11
11
|
//# sourceMappingURL=index.js.map
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
/*! @flatjs/forge MIT @flatbiz/antd */
|
|
2
|
-
import{a as o}from"./_rollupPluginBabelHelpers-1f4d8910.js";import{d as e}from"./dialog-confirm-
|
|
3
|
-
//# sourceMappingURL=dialog-alert-
|
|
2
|
+
import{a as o}from"./_rollupPluginBabelHelpers-1f4d8910.js";import{d as e}from"./dialog-confirm-4dacc583.js";var r={open:function r(a){return e.open(o({okText:"确定",cancelHidden:true,maskClosable:false},a,{onOk:a.onClick}))}};export{r as d};
|
|
3
|
+
//# sourceMappingURL=dialog-alert-96962d07.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dialog-alert-
|
|
1
|
+
{"version":3,"file":"dialog-alert-96962d07.js","sources":["@flatbiz/antd/src/dialog-alert/dialog-alert.tsx"],"sourcesContent":["import { dialogConfirm } from '../dialog-confirm';\nimport { DialogModalProps } from '../dialog-modal';\nimport './style.less';\n\nexport type DialogAlertProps = Omit<\n DialogModalProps,\n 'onOk' | 'cancelHidden' | 'cancelButtonProps' | 'onCancel' | 'onClick'\n> & {\n onClick?: (e: React.MouseEvent<HTMLElement>) => void | Promise<void>;\n};\n\nexport const dialogAlert = {\n open: (props: DialogAlertProps) => {\n return dialogConfirm.open({\n okText: '确定',\n cancelHidden: true,\n maskClosable: false,\n ...props,\n onOk: props.onClick,\n } as DialogModalProps);\n },\n};\n"],"names":["dialogAlert","open","props","dialogConfirm","_extends","okText","cancelHidden","maskClosable","onOk","onClick"],"mappings":";6GAWO,IAAMA,EAAc,CACzBC,KAAM,SAAAA,EAACC,GACL,OAAOC,EAAcF,KAAIG,EAAA,CACvBC,OAAQ,KACRC,aAAc,KACdC,aAAc,OACXL,EAAK,CACRM,KAAMN,EAAMO,UAEhB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
.v-dialog-confirm .ant-modal-header{margin:0!important}.v-dialog-confirm .ant-modal-body{color:rgba(0,0,0,.78)!important;font-size:16px;font-weight:400
|
|
1
|
+
.v-dialog-confirm .ant-modal-header{margin:0!important}.v-dialog-confirm .ant-modal-body{color:rgba(0,0,0,.78)!important;font-size:16px;font-weight:400}.v-dialog-confirm .ant-modal-footer>button:nth-child(2){margin-left:15px!important}
|
|
@@ -6,5 +6,5 @@ import './../fba-hooks/index.css';
|
|
|
6
6
|
import './../fba-utils/index.css';
|
|
7
7
|
import './index.css';
|
|
8
8
|
/*! @flatjs/forge MIT @flatbiz/antd */
|
|
9
|
-
export{d as dialogConfirm}from"../dialog-confirm-
|
|
9
|
+
export{d as dialogConfirm}from"../dialog-confirm-4dacc583.js";import"../_rollupPluginBabelHelpers-1f4d8910.js";import"@dimjs/utils/cjs/class-names";import"../dialog-modal-459d2be5.js";import"@dimjs/lang/cjs/is-string";import"@dimjs/lang/cjs/is-promise";import"@wove/react/cjs/hooks";import"@flatbiz/utils";import"ahooks";import"antd";import"react";import"react-dom/client";import"../button-wrapper-c63ea6fc.js";import"@ant-design/icons/es/icons/LoadingOutlined";import"../config-provider-wrapper-dfe8f592.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"react/jsx-runtime";import"../fba-utils-1e895394.js";
|
|
10
10
|
//# sourceMappingURL=index.js.map
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
/*! @flatjs/forge MIT @flatbiz/antd */
|
|
2
|
-
import{a}from"./_rollupPluginBabelHelpers-1f4d8910.js";import{classNames as s}from"@dimjs/utils/cjs/class-names";import{d as o}from"./dialog-modal-
|
|
3
|
-
//# sourceMappingURL=dialog-confirm-
|
|
2
|
+
import{a}from"./_rollupPluginBabelHelpers-1f4d8910.js";import{classNames as s}from"@dimjs/utils/cjs/class-names";import{d as o}from"./dialog-modal-459d2be5.js";var e={open:function e(l){var r=s("v-dialog-confirm",l.className);return o.open(a({width:350,okText:"确定",cancelText:"取消",maskClosable:true},l,{className:r}))}};export{e as d};
|
|
3
|
+
//# sourceMappingURL=dialog-confirm-4dacc583.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dialog-confirm-
|
|
1
|
+
{"version":3,"file":"dialog-confirm-4dacc583.js","sources":["@flatbiz/antd/src/dialog-confirm/dialog-confirm.tsx"],"sourcesContent":["import { classNames } from '@dimjs/utils';\nimport { dialogModal, DialogModalProps } from '../dialog-modal';\nimport './style.less';\n\nexport const dialogConfirm = {\n open: (props: DialogModalProps) => {\n const className = classNames('v-dialog-confirm', props.className);\n return dialogModal.open({\n width: 350,\n okText: '确定',\n cancelText: '取消',\n maskClosable: true,\n ...props,\n className,\n });\n },\n};\n"],"names":["dialogConfirm","open","props","className","_classNames","dialogModal","_extends","width","okText","cancelText","maskClosable"],"mappings":";gKAIO,IAAMA,EAAgB,CAC3BC,KAAM,SAAAA,EAACC,GACL,IAAMC,EAAYC,EAAW,mBAAoBF,EAAMC,WACvD,OAAOE,EAAYJ,KAAIK,EAAA,CACrBC,MAAO,IACPC,OAAQ,KACRC,WAAY,KACZC,aAAc,MACXR,EAAK,CACRC,UAAAA,IAEJ"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
.v-dialog-modal .ant-modal-body{
|
|
1
|
+
.v-dialog-modal .ant-modal-body{overflow-x:hidden;overflow-y:auto}.v-dialog-modal .ant-modal-content{padding:20px 0}.v-dialog-modal .ant-modal-footer,.v-dialog-modal .ant-modal-header{padding:0 24px}.v-dialog-modal .ant-modal-body{padding:20px 24px}
|
|
@@ -5,5 +5,5 @@ import './../fba-hooks/index.css';
|
|
|
5
5
|
import './../fba-utils/index.css';
|
|
6
6
|
import './index.css';
|
|
7
7
|
/*! @flatjs/forge MIT @flatbiz/antd */
|
|
8
|
-
export{d as dialogModal}from"../dialog-modal-
|
|
8
|
+
export{d as dialogModal}from"../dialog-modal-459d2be5.js";import"@dimjs/lang/cjs/is-string";import"@dimjs/utils/cjs/class-names";import"../_rollupPluginBabelHelpers-1f4d8910.js";import"@dimjs/lang/cjs/is-promise";import"@wove/react/cjs/hooks";import"@flatbiz/utils";import"ahooks";import"antd";import"react";import"react-dom/client";import"../button-wrapper-c63ea6fc.js";import"@ant-design/icons/es/icons/LoadingOutlined";import"../config-provider-wrapper-dfe8f592.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"react/jsx-runtime";import"../fba-utils-1e895394.js";
|
|
9
9
|
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
/*! @flatjs/forge MIT @flatbiz/antd */
|
|
2
|
+
import{isString as e}from"@dimjs/lang/cjs/is-string";import{classNames as o}from"@dimjs/utils/cjs/class-names";import{a as r,_ as t}from"./_rollupPluginBabelHelpers-1f4d8910.js";import{isPromise as n}from"@dimjs/lang/cjs/is-promise";import{hooks as i}from"@wove/react/cjs/hooks";import{dom as l}from"@flatbiz/utils";import{useSize as a}from"ahooks";import{Form as c,Modal as d}from"antd";import{useState as s,useMemo as m}from"react";import{createRoot as u}from"react-dom/client";import{B as f}from"./button-wrapper-c63ea6fc.js";import{C as v}from"./config-provider-wrapper-dfe8f592.js";import{fbaHooks as p}from"./fba-hooks/index.js";import{jsx as h}from"react/jsx-runtime";var g=["divElement","elementId","onOk","onCancel","okButtonProps","cancelButtonProps","content","configProviderProps","className","okHidden","cancelHidden","footer","cancelText","okText","bodyHeightPercent"];var C=function e(u){var C=u.divElement,k=u.elementId,y=u.onOk,w=u.onCancel,b=u.okButtonProps,j=u.cancelButtonProps,P=u.content,_=u.configProviderProps,x=u.className,H=u.okHidden,B=u.cancelHidden,E=u.footer,I=u.cancelText,R=u.okText,T=u.bodyHeightPercent,N=t(u,g);var O=s(true),S=O[0],q=O[1];var z=c.useForm(),A=z[0];var D=a(document.querySelector("html"));var F=i.useCallbackRef((function(){try{delete window[k]}catch(e){}q(false)}));p.useEffectCustom((function(){window[k]=F}),[F]);var G=i.useCallbackRef((function(e){if(w){var o=w(A,e);if(o&&n(o)){return o.then(F)}}return F()}));var J=i.useCallbackRef((function(e){if(y){var o=y(A,e);if(o&&n(o)){return o.then(F)}}return F()}));var K=i.useCallbackRef((function(){l.removeBodyChild("#"+k);u.afterClose==null?void 0:u.afterClose()}));var L=[h(f,r({},j,{onClick:G,hidden:B,children:I||"取消"}),"0"),h(f,r({type:"primary"},b,{onClick:J,hidden:H,children:R||"提交"}),"1")];var M=E||L;var Q=m((function(){if(!(D!=null&&D.height)||!T){return"auto"}return(D==null?void 0:D.height)*(T/100)}),[T,D==null?void 0:D.height]);return h(v,r({},_,{children:h(d,r({maskClosable:true,centered:true,onCancel:F,destroyOnClose:true},N,{bodyStyle:r({height:Q,maxHeight:D!=null&&D.height?(D==null?void 0:D.height)*.8:"calc(100vh - 200px)"},N.bodyStyle),className:o("v-dialog-modal",x),open:S,afterClose:K,getContainer:C,footer:M,style:{color:"red"},children:typeof P==="function"?P(A,{onClose:F}):P}))}))};var k={open:function e(o){var t=l.bodyAppendDivElement(),n=t.divElement,i=t.elementId;window["__dialog_modal_elementId"]=i;var a=u(n);a.render(h(C,r({},o,{divElement:n,elementId:i})));return{close:function e(){var o,r;(o=(r=window)[i])==null?void 0:o.call(r)}}},close:function o(){try{var r,t;var n=window["__dialog_modal_elementId"];if(e(n))(r=(t=window)[n])==null?void 0:r.call(t)}catch(e){}}};export{k as d};
|
|
3
|
+
//# sourceMappingURL=dialog-modal-459d2be5.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"dialog-modal-459d2be5.js","sources":["@flatbiz/antd/src/dialog-modal/dialog-modal.tsx"],"sourcesContent":["import { isPromise, isString } from '@dimjs/lang';\nimport { classNames } from '@dimjs/utils';\n\nimport { BodyAppendDivElementProps, dom, TNoopDefine } from '@flatbiz/utils';\nimport { hooks } from '@wove/react';\nimport { useSize } from 'ahooks';\nimport { Form, FormInstance, Modal, ModalProps } from 'antd';\nimport { ReactElement, useMemo, useState } from 'react';\nimport { createRoot } from 'react-dom/client';\nimport { ButtonWrapper, ButtonWrapperProps } from '../button-wrapper';\nimport { ConfigProviderWrapper, ConfigProviderWrapperProps } from '../config-provider-wrapper';\nimport { fbaHooks } from '../fba-hooks';\nimport './style.less';\n\nexport type DialogModalProps = Omit<\n ModalProps,\n 'onOk' | 'onCancel' | 'getContainer' | 'open' | 'open' | 'okButtonProps' | 'cancelButtonProps'\n> & {\n onOk?: (form: FormInstance, e: React.MouseEvent<HTMLElement>) => void | Promise<void>;\n onCancel?: (form: FormInstance, e: React.MouseEvent<HTMLElement>) => void | Promise<void>;\n content: string | ReactElement | ((form: FormInstance, operate: { onClose: TNoopDefine }) => ReactElement);\n configProviderProps?: ConfigProviderWrapperProps;\n okHidden?: boolean;\n cancelHidden?: boolean;\n okButtonProps?: Omit<ButtonWrapperProps, 'hidden' | 'children' | 'onClick'>;\n cancelButtonProps?: Omit<ButtonWrapperProps, 'hidden' | 'children' | 'onClick'>;\n /**\n * 设置modal body height 为当前窗口height的百分比,例如:30\n * ```\n * 1. 最大值:80\n * 1. 设置bodyStyle.height 后,bodyHeightPercent失效\n * ```\n */\n bodyHeightPercent?: number;\n};\n\nconst ModalRender = (props: BodyAppendDivElementProps & DialogModalProps) => {\n const {\n divElement,\n elementId,\n onOk,\n onCancel,\n okButtonProps,\n cancelButtonProps,\n content,\n configProviderProps,\n className,\n okHidden,\n cancelHidden,\n footer,\n cancelText,\n okText,\n bodyHeightPercent,\n ...otherProps\n } = props;\n const [open, setOpen] = useState(true);\n const [form] = Form.useForm();\n const size = useSize(document.querySelector('html'));\n\n const onClose = hooks.useCallbackRef(() => {\n try {\n delete window[elementId];\n } catch (error) {\n //\n }\n setOpen(false);\n });\n\n fbaHooks.useEffectCustom(() => {\n window[elementId] = onClose;\n }, [onClose]);\n\n const onCancelHandle = hooks.useCallbackRef((e) => {\n if (onCancel) {\n const response = onCancel(form, e);\n if (response && isPromise(response)) {\n return response.then(onClose);\n }\n }\n return onClose();\n });\n\n const onOkHandle = hooks.useCallbackRef((e) => {\n if (onOk) {\n const response = onOk(form, e);\n if (response && isPromise(response)) {\n return response.then(onClose);\n }\n }\n return onClose();\n });\n\n const onAfterClose = hooks.useCallbackRef(() => {\n dom.removeBodyChild(`#${elementId}`);\n props.afterClose?.();\n });\n\n const operateGroup = [\n <ButtonWrapper key=\"0\" {...cancelButtonProps} onClick={onCancelHandle} hidden={cancelHidden}>\n {cancelText || '取消'}\n </ButtonWrapper>,\n <ButtonWrapper key=\"1\" type=\"primary\" {...okButtonProps} onClick={onOkHandle} hidden={okHidden}>\n {okText || '提交'}\n </ButtonWrapper>,\n ];\n\n const footerNew = footer || operateGroup;\n\n const height = useMemo(() => {\n if (!size?.height || !bodyHeightPercent) {\n return 'auto';\n }\n return size?.height * (bodyHeightPercent / 100);\n }, [bodyHeightPercent, size?.height]);\n\n return (\n <ConfigProviderWrapper {...configProviderProps}>\n <Modal\n maskClosable={true}\n centered={true}\n onCancel={onClose}\n destroyOnClose\n {...otherProps}\n bodyStyle={{\n height,\n maxHeight: size?.height ? size?.height * 0.8 : 'calc(100vh - 200px)',\n ...otherProps.bodyStyle,\n }}\n className={classNames('v-dialog-modal', className)}\n open={open}\n afterClose={onAfterClose}\n getContainer={divElement}\n footer={footerNew}\n style={{ color: 'red' }}\n >\n {typeof content === 'function' ? content(form, { onClose }) : content}\n </Modal>\n </ConfigProviderWrapper>\n );\n};\n\n/**\n * 函数式调用弹框;初始化后,内容无法更新\n *```\n * 1. 基础使用方式\n * dialogModal.open({\n * title: '我是弹框',\n * content: <div>我是内容</div>,\n * });\n * ```\n * ```\n * ***************************\n * 2. 结合内置form使用,可在onOK、onCancel获取form对象\n * dialogModal.open({\n * title: '我是弹框',\n * content: (form, operate) => {\n * return (\n * <Form form={form}>\n * <Form.Item name=\"useName\">\n * <Input placeholder=\"请输入\" />\n * </Form.Item>\n * </Form>\n * );\n * },\n * onOK: (form) => {\n * console.log('content form数据', form.getFieldsValue());\n * return Promise.resolve();\n * },\n * });\n * ```\n */\nexport const dialogModal = {\n open: (props: DialogModalProps) => {\n const { divElement, elementId } = dom.bodyAppendDivElement();\n window['__dialog_modal_elementId'] = elementId;\n const root = createRoot(divElement);\n root.render(<ModalRender {...props} divElement={divElement} elementId={elementId} />);\n return {\n close: () => {\n window[elementId]?.();\n },\n };\n },\n /**\n * ```\n * 1. 关闭最新弹框,如果有多个弹框只能关闭最后一个\n * 2. 多个弹框主动关闭,只能使用 dialogModal.open()返回值中的close\n * ```\n */\n close: () => {\n try {\n const elementId = window['__dialog_modal_elementId'] as string;\n if (isString(elementId)) window[elementId]?.();\n } catch (error) {\n //\n }\n },\n};\n"],"names":["ModalRender","props","divElement","elementId","onOk","onCancel","okButtonProps","cancelButtonProps","content","configProviderProps","className","okHidden","cancelHidden","footer","cancelText","okText","bodyHeightPercent","otherProps","_objectWithoutPropertiesLoose","_excluded","_useState","useState","open","setOpen","_Form$useForm","Form","useForm","form","size","useSize","document","querySelector","onClose","_hooks","useCallbackRef","window","error","fbaHooks","useEffectCustom","onCancelHandle","e","response","_isPromise","then","onOkHandle","onAfterClose","dom","removeBodyChild","afterClose","operateGroup","_jsx","ButtonWrapper","_extends","onClick","hidden","children","type","footerNew","height","useMemo","ConfigProviderWrapper","Modal","maskClosable","centered","destroyOnClose","bodyStyle","maxHeight","_classNames","getContainer","style","color","dialogModal","_dom$bodyAppendDivEle","bodyAppendDivElement","root","createRoot","render","close","_window$elementId","_window","call","_window$elementId2","_window2","_isString"],"mappings":"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"}
|
package/esm/easy-table/index.js
CHANGED
|
@@ -8,5 +8,5 @@ import './../simple-layout/index.css';
|
|
|
8
8
|
import './../table-scrollbar/index.css';
|
|
9
9
|
import './index.css';
|
|
10
10
|
/*! @flatjs/forge MIT @flatbiz/antd */
|
|
11
|
-
import{f as e}from"../fba-utils-1e895394.js";import{classNames as i}from"@dimjs/utils/cjs/class-names";import{isUndefined as t}from"@dimjs/lang/cjs/is-undefined";import{isArray as n}from"@dimjs/lang/cjs/is-array";import{hooks as r}from"@wove/react/cjs/hooks";import{a,_ as o}from"../_rollupPluginBabelHelpers-1f4d8910.js";import{cloneState as l}from"@dimjs/model";import{Select as s,Form as u,Pagination as d,message as c,Table as f}from"antd";import{forwardRef as p,useState as m,useRef as g,useImperativeHandle as v,useMemo as y,Children as h}from"react";import{createCtx as C}from"@wove/react/cjs/create-ctx";import{Model as S}from"@dimjs/model-react";import{jsx as b,jsxs as j}from"react/jsx-runtime";import F from"@ant-design/icons/es/icons/DownOutlined";import z from"@ant-design/icons/es/icons/UpOutlined";import{B as q}from"../button-wrapper-c63ea6fc.js";import{FormGrid as N}from"../form-grid/index.js";import{S as R}from"../simple-layout-08f90dab.js";import{isUndefinedOrNull as w,getUuid as P,isMacEnv as x}from"@flatbiz/utils";import{fbaHooks as k}from"../fba-hooks/index.js";import{T}from"../table-scrollbar-66c1682c.js";import"@ant-design/icons/es/icons/LoadingOutlined";import"@dimjs/lang/cjs/is-promise";import"../config-provider-wrapper-dfe8f592.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"../use-responsive-point-21b8c601.js";import"@dimjs/utils/cjs/extend";import"@dimjs/utils/cjs/get";import"ahooks";var K=C(),L=K[0],V=K[1];var O={queryCondition:{},isInit:true};var E={actions:{updateFilterCondition:function e(i){return function(e){e.queryCondition=a({},e.queryCondition,i)}},resetFilterCondition:function e(i){return function(e){e.queryCondition=a({},O.queryCondition,i)}},updateInitStatus:function e(){return function(e){e.isInit=false}}},state:O};var B={};var D=function e(i){if(!B[i]){B[i]=S(E)}return B[i]};var I=function e(i){return b(s,a({},i,{size:"small",placement:"topLeft"}))};I.Option=s.Option;var A=p((function(e,o){var s;var f=m([]),p=f[0],h=f[1];var C=m(0),S=C[0],F=C[1];var z=m(false),q=z[0],N=z[1];var R=D(e.modelKey).useStore(),w=R[0],P=R[1];var x=e.pageSize||((s=e.initialPaginationParams)==null?void 0:s.pageSize)||10;var k=e.initRequest===undefined?true:e.initRequest;var T=m(false),K=T[0],L=T[1];var O=g();var E=a({list:"list",total:"tatal",pageNo:"pageNo",pageSize:"pageSize"},e.fieldNames);var B=u.useForm(),A=B[0];var _=r.useCallbackRef((function(i){return new Promise((function(t,r){var a,o,s,u,d,f,p,m,g,v;var y=function(){try{return t()}catch(e){return r(e)}};var C=function(e){try{N(false);void c.error(e.message);return y()}catch(e){return r(e)}};try{N(true);return Promise.resolve(P.updateFilterCondition(i)).then((function(i){try{a=i;o=l(a.queryCondition||{});s=e.serviceConfig,u=s.requestParamsAdapter,d=s.onRequest,f=s.requestResultAdapter;p=u?u(o):o;return Promise.resolve(d(p)).then((function(i){try{m=i||{};O.current=m;e.onDataSourceChange==null?void 0:e.onDataSourceChange(m);g=f?f(m):m;v=g[E.list];h(n(v)?v:[]);F(g[E.total]);N(false);return y()}catch(e){return C(e)}}),C)}catch(e){return C(e)}}),C)}catch(e){C(e)}}))}));var U=r.useCallbackRef((function(e){return new Promise((function(i,t){return Promise.resolve(P.resetFilterCondition()).then((function(n){try{A.resetFields();if(e){void P.updateFilterCondition(e);A.setFieldsValue(e)}return i()}catch(e){return t(e)}}),t)}))}));var W=function e(i,t){if(K){var n;return n={},n[E.pageNo]=i,n[E.pageSize]=t||x,n}else{return{}}};var Y=r.useCallbackRef((function(i){return new Promise((function(t,n){var r;r=a({},W(1,x),e.initialValues,i);return Promise.resolve(P.resetFilterCondition(r)).then((function(e){try{A.resetFields();void _(r);return t()}catch(e){return n(e)}}),n)}))}));var G=r.useCallbackRef((function(){return a({},w.queryCondition,A.getFieldsValue())}));var H=function e(){return{onRequest:_,clearQueryCondition:U,getRequestParams:G,onResetRequest:Y,form:A,getDataSource:function e(){return O.current}}};v(o,(function(){return H()}));var Q=function e(i){L(i)};var $=function i(){var t=A.getFieldsValue();if(e.onFormFinish){e.onFormFinish(a({},t,W(1,w.queryCondition.pageSize)))}else{void _(a({},t,W(1,w.queryCondition.pageSize)))}};var J=t(e.isFull)?true:e.isFull;var M=i("fba-easy-table",{"fba-easy-table-full":J,"fba-easy-table-filter-fixed":e.filterFixed,"fba-easy-table-pagination-fixed":e.paginationFixed});var X=y((function(){return a({showSizeChanger:true,current:w.queryCondition[E.pageNo]||1,pageSize:w.queryCondition[E.pageSize]||x,total:S,showTotal:function e(i){return"共 "+i+" 条记录"}},e.pagination)}),[E.pageNo,E.pageSize,x,e.pagination,w.queryCondition,S]);var Z=r.useCallbackRef((function(i,t){var n,r;void _((n={},n[E.pageSize]=t,n[E.pageNo]=i,n));(r=e.pagination)==null?void 0:r.onChange==null?void 0:r.onChange(i,t)}));return b(V,{value:{getEasyTableRef:H,modelKey:e.modelKey,onRequest:_,tableList:p,tableTotal:S,loading:q,fieldNames:E,pageSize:x,initRequest:k,initialValues:e.initialValues||{},onSetPaginationStatus:Q,paginationStatus:K,onFormFinish:$,form:A,paginationFixed:e.paginationFixed||false,foldKeys:e.foldKeys||[]},children:e.paginationFixed?j("div",{className:"fba-easy-table-wrapper",children:[b("div",{className:M,children:e.children}),S>0&&b("div",{className:"fba-easy-table-pagination",children:b(d,a({size:"small"},X,{onChange:Z,selectComponentClass:I}))})]}):b("div",{className:M,children:e.children})})}));var _=function e(i){var t=i.queryButtonProps,n=i.resetButtonProps,o=i.filterOperate;var l=L(),s=l.modelKey,d=l.foldKeys,c=l.fieldNames,f=l.onRequest,p=l.pageSize,g=l.paginationStatus,v=l.initialValues,C=l.form,S=l.onFormFinish;var w=typeof i.children==="function"?i.children(C):i.children;var P=h.toArray(w);var x=m(false),k=x[0],T=x[1];var K=D(s).useStore(),V=K[0],O=K[1];var E=r.useCallbackRef((function(){return new Promise((function(e,i){var t;return Promise.resolve(O.resetFilterCondition()).then((function(n){try{C.resetFields();if(g){f(a((t={},t[c.pageNo]=1,t[c.pageSize]=p,t),v))}else{f(v)}return e()}catch(e){return i(e)}}),i)}))}));var B=y((function(){var e=a({rightList:[!(t!=null&&t.hidden)?b(q,a({type:"primary",htmlType:"submit"},t,{children:(t==null?void 0:t.text)||"查询"}),"1"):null,!(n!=null&&n.hidden)?b(q,a({onClick:E},n,{children:(n==null?void 0:n.text)||"重置"}),"2"):null],leftList:[]},o==null?void 0:o(C));if(d.length>0){var i=b(q,{type:"link",style:{padding:"0"},onClick:function e(){T(!k)},children:k?j("span",{children:["收起",b(z,{style:{marginLeft:3,fontSize:12}})]}):j("span",{children:["展开",b(F,{style:{marginLeft:3,fontSize:12}})]})});var r=e.rightList,l=e.leftList;if(r.length>0||l.length===0){r.push(i)}else if((l==null?void 0:l.length)>0){l.push(i)}}return P.map((function(e,i){if(!k&&d.find((function(i){return".$"+i===e.key})))return null;if(e.props["hidden"])return null;if(e.type["domTypeName"]==="FormCol")return e;return b(N.Col,{children:e},i)})).filter(Boolean).concat(b(N.OperateCol,a({},e),999))}),[P,o,d,C,E,k,t,n]);return b(R,{className:"easy-table-filter",children:b(u,{form:C,onFinish:S,initialValues:a({},v,V.queryCondition),children:i.isPure?w:b(N.Row,{gutter:[15,0],gridSize:i.formGridSize,children:B})})})};var U=function e(){var i=L();var t=g(i.getEasyTableRef());return t.current};var W=function e(){var i=L(),t=i.getEasyTableRef;var n=g(t());return n};var Y=["children","rowKey","pagination"];var G=function e(t){var n=t.children,r=t.rowKey,l=t.pagination,s=o(t,Y);var u=L(),d=u.modelKey,c=u.fieldNames,p=u.onRequest,m=u.tableList,g=u.initRequest,v=u.pageSize,h=u.tableTotal,C=u.loading,S=u.initialValues,F=u.paginationFixed,z=u.onSetPaginationStatus;var q=D(d).useStore(),N=q[0],K=q[1];var V=y((function(){if(F||l===false)return false;return a({showSizeChanger:true,current:N.queryCondition[c.pageNo]||1,pageSize:N.queryCondition[c.pageSize]||v,total:h,showTotal:function e(i){return"共 "+i+" 条记录"}},t.pagination,{selectComponentClass:I})}),[c.pageNo,c.pageSize,v,l,F,t.pagination,N.queryCondition,h]);var O=function e(i){if(V){var n;p((n={},n[c.pageSize]=i.pageSize,n[c.pageNo]=i.current,n))}for(var r=arguments.length,a=new Array(r>1?r-1:0),o=1;o<r;o++){a[o-1]=arguments[o]}t.onChange==null?void 0:t.onChange.apply(t,[i].concat(a))};var E=y((function(){if(m.length===0){return[]}if(w(m[0][r])){return m.map((function(e){e[r]=P();return e}))}return m}),[m,r]);k.useEffectCustom((function(){var e=F||V!==false;z(e);if(g!==false||!N.isInit){if(e){var i;void p(a((i={},i[c.pageNo]=1,i[c.pageSize]=v,i),S,N.queryCondition))}else{void p(S)}}else{void K.updateFilterCondition(S)}void K.updateInitStatus()}),[]);return j(R,{className:i("easy-table-table",t.tableWrapperClassName),style:t.tableWrapperStyle,children:[n,x()?b(f,a({size:"small",scroll:{x:"max-content"},bordered:true},s,{pagination:V,rowKey:r,onChange:O,loading:C,dataSource:E})):b(T,{children:b(f,a({size:"small",scroll:{x:"max-content"},bordered:true},s,{pagination:V,rowKey:r,onChange:O,loading:C,dataSource:E}))})]})};var H=e.attachPropertiesToComponent(A,{Filter:_,Table:G,useEasyTablRef:W,useEasyTable:U});export{H as EasyTable};
|
|
11
|
+
import{f as e}from"../fba-utils-1e895394.js";import{classNames as i}from"@dimjs/utils/cjs/class-names";import{isUndefined as t}from"@dimjs/lang/cjs/is-undefined";import{isArray as n}from"@dimjs/lang/cjs/is-array";import{hooks as r}from"@wove/react/cjs/hooks";import{a,_ as o}from"../_rollupPluginBabelHelpers-1f4d8910.js";import{cloneState as l}from"@dimjs/model";import{Select as s,Form as u,Pagination as d,message as c,Table as f}from"antd";import{forwardRef as p,useState as m,useRef as g,useImperativeHandle as v,useMemo as y,Children as h}from"react";import{createCtx as C}from"@wove/react/cjs/create-ctx";import{Model as S}from"@dimjs/model-react";import{jsx as b,jsxs as j}from"react/jsx-runtime";import F from"@ant-design/icons/es/icons/DownOutlined";import z from"@ant-design/icons/es/icons/UpOutlined";import{B as q}from"../button-wrapper-c63ea6fc.js";import{FormGrid as N}from"../form-grid/index.js";import{S as R}from"../simple-layout-08f90dab.js";import{isUndefinedOrNull as w,getUuid as P,isMacEnv as x}from"@flatbiz/utils";import{fbaHooks as k}from"../fba-hooks/index.js";import{T}from"../table-scrollbar-66c1682c.js";import"@ant-design/icons/es/icons/LoadingOutlined";import"@dimjs/lang/cjs/is-promise";import"../config-provider-wrapper-dfe8f592.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"../use-responsive-point-21b8c601.js";import"@dimjs/utils/cjs/extend";import"@dimjs/utils/cjs/get";import"ahooks";var K=C(),L=K[0],V=K[1];var O={queryCondition:{},isInit:true};var E={actions:{updateFilterCondition:function e(i){return function(e){e.queryCondition=a({},e.queryCondition,i)}},resetFilterCondition:function e(i){return function(e){e.queryCondition=a({},O.queryCondition,i)}},updateInitStatus:function e(){return function(e){e.isInit=false}}},state:O};var B={};var D=function e(i){if(!B[i]){B[i]=S(E)}return B[i]};var I=function e(i){return b(s,a({},i,{size:"small",placement:"topLeft"}))};I.Option=s.Option;var A=p((function(e,o){var s;var f=m([]),p=f[0],h=f[1];var C=m(0),S=C[0],F=C[1];var z=m(false),q=z[0],N=z[1];var R=D(e.modelKey).useStore(),w=R[0],P=R[1];var x=e.pageSize||((s=e.initialPaginationParams)==null?void 0:s.pageSize)||10;var k=e.initRequest===undefined?true:e.initRequest;var T=m(false),K=T[0],L=T[1];var O=g();var E=a({list:"list",total:"tatal",pageNo:"pageNo",pageSize:"pageSize"},e.fieldNames);var B=u.useForm(),A=B[0];var _=r.useCallbackRef((function(i){return new Promise((function(t,r){var a,o,s,u,d,f,p,m,g,v;var y=function(){try{return t()}catch(e){return r(e)}};var C=function(e){try{N(false);void c.error(e.message);return y()}catch(e){return r(e)}};try{N(true);return Promise.resolve(P.updateFilterCondition(i)).then((function(i){try{a=i;o=l(a.queryCondition||{});s=e.serviceConfig,u=s.requestParamsAdapter,d=s.onRequest,f=s.requestResultAdapter;p=u?u(o):o;return Promise.resolve(d(p)).then((function(i){try{m=i||{};O.current=m;e.onDataSourceChange==null?void 0:e.onDataSourceChange(m);g=f?f(m):m;v=g[E.list];h(n(v)?v:[]);F(g[E.total]);N(false);return y()}catch(e){return C(e)}}),C)}catch(e){return C(e)}}),C)}catch(e){C(e)}}))}));var U=r.useCallbackRef((function(e){return new Promise((function(i,t){return Promise.resolve(P.resetFilterCondition()).then((function(n){try{A.resetFields();if(e){void P.updateFilterCondition(e);A.setFieldsValue(e)}return i()}catch(e){return t(e)}}),t)}))}));var W=function e(i,t){if(K){var n;return n={},n[E.pageNo]=i,n[E.pageSize]=t||x,n}else{return{}}};var Y=r.useCallbackRef((function(i){return new Promise((function(t,n){var r;r=a({},W(1,x),e.initialValues,i);return Promise.resolve(P.resetFilterCondition(r)).then((function(e){try{A.resetFields();void _(r);return t()}catch(e){return n(e)}}),n)}))}));var G=r.useCallbackRef((function(){return a({},w.queryCondition,A.getFieldsValue())}));var H=function e(){return{onRequest:_,clearQueryCondition:U,getRequestParams:G,onResetRequest:Y,form:A,getDataSource:function e(){return O.current}}};v(o,(function(){return H()}));var Q=function e(i){L(i)};var $=function i(){var t=A.getFieldsValue();if(e.onFormFinish){e.onFormFinish(a({},t,W(1,w.queryCondition.pageSize)))}else{void _(a({},t,W(1,w.queryCondition.pageSize)))}};var J=t(e.isFull)?true:e.isFull;var M=i("fba-easy-table",{"fba-easy-table-full":J,"fba-easy-table-filter-fixed":e.filterFixed,"fba-easy-table-pagination-fixed":e.paginationFixed});var X=y((function(){return a({showSizeChanger:true,current:w.queryCondition[E.pageNo]||1,pageSize:w.queryCondition[E.pageSize]||x,total:S,showTotal:function e(i){return"共 "+i+" 条记录"}},e.pagination)}),[E.pageNo,E.pageSize,x,e.pagination,w.queryCondition,S]);var Z=r.useCallbackRef((function(i,t){var n,r;void _((n={},n[E.pageSize]=t,n[E.pageNo]=i,n));(r=e.pagination)==null?void 0:r.onChange==null?void 0:r.onChange(i,t)}));return b(V,{value:{getEasyTableRef:H,modelKey:e.modelKey,onRequest:_,tableList:p,tableTotal:S,loading:q,fieldNames:E,pageSize:x,initRequest:k,initialValues:e.initialValues||{},onSetPaginationStatus:Q,paginationStatus:K,onFormFinish:$,form:A,paginationFixed:e.paginationFixed||false,foldKeys:e.foldKeys||[]},children:e.paginationFixed?j("div",{className:"fba-easy-table-wrapper",children:[b("div",{className:M,children:e.children}),S>0&&b("div",{className:"fba-easy-table-pagination",children:b(d,a({size:"small"},X,{onChange:Z,selectComponentClass:I}))})]}):b("div",{className:M,children:e.children})})}));var _=function e(i){var t=i.queryButtonProps,n=i.resetButtonProps,o=i.filterOperate;var l=L(),s=l.modelKey,d=l.foldKeys,c=l.fieldNames,f=l.onRequest,p=l.pageSize,g=l.paginationStatus,v=l.initialValues,C=l.form,S=l.onFormFinish;var w=typeof i.children==="function"?i.children(C):i.children;var P=h.toArray(w);var x=m(false),k=x[0],T=x[1];var K=D(s).useStore(),V=K[0],O=K[1];var E=r.useCallbackRef((function(){return new Promise((function(e,i){var t;return Promise.resolve(O.resetFilterCondition()).then((function(n){try{C.resetFields();if(g){f(a((t={},t[c.pageNo]=1,t[c.pageSize]=p,t),v))}else{f(v)}return e()}catch(e){return i(e)}}),i)}))}));var B=y((function(){var e=a({rightList:[!(t!=null&&t.hidden)?b(q,a({type:"primary",htmlType:"submit"},t,{children:(t==null?void 0:t.text)||"查询"}),"1"):null,!(n!=null&&n.hidden)?b(q,a({onClick:E},n,{children:(n==null?void 0:n.text)||"重置"}),"2"):null],leftList:[]},o==null?void 0:o(C));if(d.length>0){var i=b(q,{type:"link",style:{padding:"0"},onClick:function e(){T(!k)},children:k?j("span",{children:["收起",b(z,{style:{marginLeft:3,fontSize:12}})]}):j("span",{children:["展开",b(F,{style:{marginLeft:3,fontSize:12}})]})},"fold-trigger");var r=e.rightList,l=e.leftList;if(r.length>0||l.length===0){r.push(i)}else if((l==null?void 0:l.length)>0){l.push(i)}}return P.map((function(e,i){if(!k&&d.find((function(i){return".$"+i===e.key})))return null;if(e.props["hidden"])return null;if(e.type["domTypeName"]==="FormCol")return e;return b(N.Col,{children:e},i)})).filter(Boolean).concat(b(N.OperateCol,a({},e),999))}),[P,o,d,C,E,k,t,n]);return b(R,{className:"easy-table-filter",children:b(u,{form:C,onFinish:S,initialValues:a({},v,V.queryCondition),children:i.isPure?w:b(N.Row,{gutter:[15,0],gridSize:i.formGridSize,children:B})})})};var U=function e(){var i=L();var t=g(i.getEasyTableRef());return t.current};var W=function e(){var i=L(),t=i.getEasyTableRef;var n=g(t());return n};var Y=["children","rowKey","pagination"];var G=function e(t){var n=t.children,r=t.rowKey,l=t.pagination,s=o(t,Y);var u=L(),d=u.modelKey,c=u.fieldNames,p=u.onRequest,m=u.tableList,g=u.initRequest,v=u.pageSize,h=u.tableTotal,C=u.loading,S=u.initialValues,F=u.paginationFixed,z=u.onSetPaginationStatus;var q=D(d).useStore(),N=q[0],K=q[1];var V=y((function(){if(F||l===false)return false;return a({showSizeChanger:true,current:N.queryCondition[c.pageNo]||1,pageSize:N.queryCondition[c.pageSize]||v,total:h,showTotal:function e(i){return"共 "+i+" 条记录"}},t.pagination,{selectComponentClass:I})}),[c.pageNo,c.pageSize,v,l,F,t.pagination,N.queryCondition,h]);var O=function e(i){if(V){var n;p((n={},n[c.pageSize]=i.pageSize,n[c.pageNo]=i.current,n))}for(var r=arguments.length,a=new Array(r>1?r-1:0),o=1;o<r;o++){a[o-1]=arguments[o]}t.onChange==null?void 0:t.onChange.apply(t,[i].concat(a))};var E=y((function(){if(m.length===0){return[]}if(w(m[0][r])){return m.map((function(e){e[r]=P();return e}))}return m}),[m,r]);k.useEffectCustom((function(){var e=F||V!==false;z(e);if(g!==false||!N.isInit){if(e){var i;void p(a((i={},i[c.pageNo]=1,i[c.pageSize]=v,i),S,N.queryCondition))}else{void p(S)}}else{void K.updateFilterCondition(S)}void K.updateInitStatus()}),[]);return j(R,{className:i("easy-table-table",t.tableWrapperClassName),style:t.tableWrapperStyle,children:[n,x()?b(f,a({size:"small",scroll:{x:"max-content"},bordered:true},s,{pagination:V,rowKey:r,onChange:O,loading:C,dataSource:E})):b(T,{children:b(f,a({size:"small",scroll:{x:"max-content"},bordered:true},s,{pagination:V,rowKey:r,onChange:O,loading:C,dataSource:E}))})]})};var H=e.attachPropertiesToComponent(A,{Filter:_,Table:G,useEasyTablRef:W,useEasyTable:U});export{H as EasyTable};
|
|
12
12
|
//# 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/select.tsx","@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 { TPlainObject } from '@flatbiz/utils';\nimport { createCtx } from '@wove/react';\nimport { FormInstance } from 'antd';\nimport { EasyTableRefApi } from './type';\n\nexport 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","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 { Select, SelectProps } from 'antd';\nimport * as React from 'react';\n\ntype CompoundedComponent = React.FC<SelectProps> & {\n Option: typeof Select.Option;\n};\n\n/**\n * 由于 antd 5.3.x 分页Pagination组件,存在点击分页选择框框时,一直朝下\n * issues:https://github.com/ant-design/ant-design/issues/36866\n * 为了兼容,在 Pagination 中添加了 selectComponentClass 属性,后期antd 官方优化了bug,可取消 配置selectComponentClass\n * @param props\n * @returns\n */\nexport const MiniSelect: CompoundedComponent = (props) => (\n <Select {...props} size=\"small\" placement=\"topLeft\" />\n);\n\nMiniSelect.Option = Select.Option;\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, message, Pagination, PaginationProps } from 'antd';\nimport { forwardRef, ReactElement, useImperativeHandle, useMemo, useRef, useState } from 'react';\nimport { EasyTableCtxProvider } from './context';\nimport { easyTableModel } from './model';\nimport { MiniSelect } from './select';\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 children: ReactElement | ReactElement[];\n /** EasyTable唯一值,可用于缓存查询条件 */\n modelKey: string;\n /** 接口数据配置 */\n serviceConfig: EasyTableServiceConfig;\n /**\n * 1. 查询条件Form initialValues\n * 2. 接口其他参数,例如常量类型\n */\n initialValues?: TPlainObject;\n /**\n * 分页初始化参数,默认值: pageSize = 10\n * @deprecated 使用 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\nexport const EasyTable = forwardRef<EasyTableRefApi, EasyTableProps>((props: EasyTableProps, ref) => {\n const [dataSource, setDataSource] = useState<TPlainObject[]>([]);\n const [total, setTotal] = useState<number>(0);\n const [loading, setLoading] = useState<boolean>(false);\n const [state, actions] = easyTableModel(props.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: 'tatal',\n pageNo: 'pageNo',\n pageSize: 'pageSize',\n ...props.fieldNames,\n };\n\n const [form] = Form.useForm();\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 void message.error(error.message);\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, pageSize),\n ...props.initialValues,\n ...values,\n };\n await actions.resetFilterCondition(params);\n form.resetFields();\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 onRequest: onInnerRequest,\n clearQueryCondition,\n getRequestParams,\n onResetRequest,\n form,\n getDataSource: () => {\n return respOriginalDataRef.current;\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.pageSize) });\n } else {\n void onInnerRequest({\n ...values,\n ...getPaginationData(1, state.queryCondition.pageSize),\n });\n }\n };\n const isFull = isUndefined(props.isFull) ? true : props.isFull;\n const className = classNames('fba-easy-table', {\n 'fba-easy-table-full': isFull,\n 'fba-easy-table-filter-fixed': props.filterFixed,\n 'fba-easy-table-pagination-fixed': props.paginationFixed,\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 return (\n <EasyTableCtxProvider\n value={{\n getEasyTableRef,\n modelKey: props.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=\"fba-easy-table-wrapper\">\n <div className={className}>{props.children}</div>\n {total > 0 && (\n <div className=\"fba-easy-table-pagination\">\n <Pagination\n size=\"small\"\n {...paginationData}\n onChange={onChange}\n selectComponentClass={MiniSelect}\n />\n </div>\n )}\n </div>\n ) : (\n <div className={className}>{props.children}</div>\n )}\n </EasyTableCtxProvider>\n );\n});\n","import { DownOutlined, UpOutlined } from '@ant-design/icons';\nimport { hooks } from '@wove/react';\nimport { ButtonProps, Form, FormInstance } from 'antd';\nimport { Children, ReactElement, useMemo, useState } from 'react';\nimport { ButtonWrapper } 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 { useEasyTableCtx } 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<ButtonProps, 'onClick'> & { text?: string };\n // 重置按钮配置\n resetButtonProps?: Omit<ButtonProps, 'onClick'> & { text?: string };\n\n formGridSize?: FormRowProps['gridSize'];\n};\n\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 * <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 *2. 用户2(自定义布局)\n * EasyTableFilter设置 isPure = true,FormItem无布局规则\n *3. EasyTableFilter中内置了 Form 标签,当children为函数时,可获取form实例\n *4. 默认布局下,可通过设置 filterOperate 设置操作按钮\n *5. Filter 子节点包含 hidden = true 会被忽略\n *```\n */\nexport const EasyTableFilter = (props: EasyTableFilterProps) => {\n const { queryButtonProps, resetButtonProps, filterOperate } = props;\n const {\n modelKey,\n foldKeys,\n fieldNames,\n onRequest,\n pageSize,\n paginationStatus,\n initialValues,\n form,\n onFormFinish,\n } = useEasyTableCtx();\n const children = typeof props.children === 'function' ? props.children(form) : props.children;\n const childrens = Children.toArray(children) as ReactElement[];\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 (paginationStatus) {\n onRequest({\n [fieldNames.pageNo]: 1,\n [fieldNames.pageSize]: pageSize,\n ...initialValues,\n });\n } else {\n onRequest(initialValues);\n }\n });\n\n const formRowChildren = useMemo(() => {\n const formOperateColProps = {\n rightList: [\n !queryButtonProps?.hidden ? (\n <ButtonWrapper key=\"1\" type=\"primary\" htmlType=\"submit\" {...queryButtonProps}>\n {queryButtonProps?.text || '查询'}\n </ButtonWrapper>\n ) : null,\n !resetButtonProps?.hidden ? (\n <ButtonWrapper key=\"2\" onClick={onReset} {...resetButtonProps}>\n {resetButtonProps?.text || '重置'}\n </ButtonWrapper>\n ) : null,\n ],\n leftList: [],\n ...filterOperate?.(form),\n };\n\n if (foldKeys.length > 0) {\n const changeFolditem = (\n <ButtonWrapper\n type=\"link\"\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 const { rightList, leftList } = formOperateColProps;\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(<FormGrid.OperateCol key={999} {...formOperateColProps} />);\n }, [childrens, filterOperate, foldKeys, form, onReset, openFold, queryButtonProps, resetButtonProps]);\n\n return (\n <SimpleLayout className=\"easy-table-filter\">\n <Form\n form={form}\n onFinish={onFormFinish}\n initialValues={{\n ...initialValues,\n ...state.queryCondition,\n }}\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 { useRef } from 'react';\nimport { useEasyTableCtx } from './context';\nimport { EasyTableRefApi } from './type';\n\n/**\n * 在 EasyTable子组件内才可使用\n * @returns\n */\nexport const useEasyTable = () => {\n const ctx = useEasyTableCtx();\n const resp = useRef(ctx.getEasyTableRef());\n return resp.current;\n};\n\n/**\n *\n * @deprecated 已过去,请使用 useEasyTable\n * @returns\n */\nexport const useEasyTablRef = () => {\n const { getEasyTableRef } = useEasyTableCtx();\n const ref = useRef<EasyTableRefApi>(getEasyTableRef());\n return ref;\n};\n","import { classNames } from '@dimjs/utils';\nimport { getUuid, isMacEnv, isUndefinedOrNull, TAny } from '@flatbiz/utils';\nimport { Table, TableProps } from 'antd';\nimport { CSSProperties, ReactElement, useMemo } from 'react';\nimport { fbaHooks } from '../fba-hooks';\nimport { SimpleLayout } from '../simple-layout';\nimport { TableScrollbar } from '../table-scrollbar';\nimport { useEasyTableCtx } from './context';\nimport { easyTableModel } from './model';\nimport { MiniSelect } from './select';\n\nexport type EasyTableTableProps = Omit<TableProps<TAny>, 'dataSource' | 'loading' | 'rowKey'> & {\n children?: ReactElement | ReactElement[];\n /** 表格行 key 的取值 */\n rowKey: string;\n tableWrapperStyle?: CSSProperties;\n tableWrapperClassName?: string;\n};\n\n/**\n * 表格渲染\n * @param props\n * ```\n * 1. 继承了 TableProps 可设置antd table功能\n * ```\n */\nexport const EasyTableTable = (props: EasyTableTableProps) => {\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 } = useEasyTableCtx();\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: MiniSelect,\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'] = (data, ...otherProps) => {\n if (tablePaginationData) {\n onRequest({ [fieldNames.pageSize]: data.pageSize, [fieldNames.pageNo]: data.current });\n }\n props.onChange?.(data, ...otherProps);\n };\n\n const dataSource = useMemo(() => {\n if (tableList.length === 0) {\n return [];\n }\n if (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 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 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 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. 需要获取查询条件、主动发起请求等可通过ref、useEasyTable操作\n * 2. 可通过属性 initRequest 设置初始化是否请求数据\n * 3. 可通过属性 fieldNames 来设置自定义变量,默认值为:list、total、pageNo、pageSize\n * 4. isFull=true,设置【在父节点高度下,上下铺满】(默认值:true)\n * 5. filterFixed=true,设置查询条件固定,不随滚动条滚动\n * 6. paginationFixed=true,可设置分页条件在底部固定,不随滚动条滚动\n * 7. foldKeys=string[],查询条件展开、收起,被收起数组内容为EasyTable.Filter 子节点key值\n * 8. 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 *```\n */\n Filter: EasyTableFilter,\n /**\n * 表格渲染\n * @param props\n * ```\n * 1. 继承了 TableProps 可设置antd table功能\n * ```\n */\n Table: EasyTableTable,\n\n /**\n * @deprecated 已过去,请使用 useEasyTable\n */\n useEasyTablRef: useEasyTablRef,\n\n /** 在 EasyTable子组件内才可使用 */\n useEasyTable: useEasyTable,\n});\n"],"names":["_createCtx","_createCtx2","useEasyTableCtx","EasyTableCtxProvider","defaultState","queryCondition","isInit","_EasyTableModel","actions","updateFilterCondition","params","state","_extends","resetFilterCondition","updateInitStatus","easyTableModels","easyTableModel","key","Model","MiniSelect","props","_jsx","Select","size","placement","Option","EasyTable","forwardRef","ref","_props$initialPaginat","_useState","useState","dataSource","setDataSource","_useState2","total","setTotal","_useState3","loading","setLoading","_easyTableModel$useSt","modelKey","useStore","pageSize","initialPaginationParams","initRequest","undefined","_useState4","paginationStatus","setPaginationStatus","respOriginalDataRef","useRef","fieldNames","list","pageNo","_Form$useForm","Form","useForm","form","onInnerRequest","_hooks","useCallbackRef","Promise","$return","$error","allState","_props$serviceConfig","requestParamsAdapter","onRequest","requestResultAdapter","paramsNew","respData","respDataNew","respList","$Try_1_Post","$boundEx","$Try_1_Catch","error","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","getEasyTableRef","getDataSource","useImperativeHandle","onSetPaginationStatus","status","onFormFinish","isFull","_isUndefined","className","_classNames","filterFixed","paginationFixed","paginationData","useMemo","showSizeChanger","showTotal","pagination","onChange","page","_onInnerRequest","_props$pagination","value","tableList","tableTotal","foldKeys","children","_jsxs","Pagination","selectComponentClass","EasyTableFilter","queryButtonProps","resetButtonProps","filterOperate","_useEasyTableCtx","childrens","Children","toArray","openFold","setOpenFold","onReset","_extends2","$await_1","formRowChildren","formOperateColProps","rightList","hidden","ButtonWrapper","type","htmlType","text","onClick","leftList","length","changeFolditem","style","padding","_UpOutlined","marginLeft","fontSize","_DownOutlined","push","map","item","index","find","keyItem","FormGrid","Col","filter","Boolean","concat","OperateCol","SimpleLayout","onFinish","isPure","Row","gutter","gridSize","formGridSize","useEasyTable","ctx","resp","useEasyTablRef","EasyTableTable","rowKey","otherProps","_objectWithoutPropertiesLoose","_excluded","tablePaginationData","onChangePage","data","_onRequest","_len","arguments","Array","_key","apply","isUndefinedOrNull","getUuid","fbaHooks","useEffectCustom","hasPagination","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/select.tsx","@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 { TPlainObject } from '@flatbiz/utils';\nimport { createCtx } from '@wove/react';\nimport { FormInstance } from 'antd';\nimport { EasyTableRefApi } from './type';\n\nexport 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","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 { Select, SelectProps } from 'antd';\nimport * as React from 'react';\n\ntype CompoundedComponent = React.FC<SelectProps> & {\n Option: typeof Select.Option;\n};\n\n/**\n * 由于 antd 5.3.x 分页Pagination组件,存在点击分页选择框框时,一直朝下\n * issues:https://github.com/ant-design/ant-design/issues/36866\n * 为了兼容,在 Pagination 中添加了 selectComponentClass 属性,后期antd 官方优化了bug,可取消 配置selectComponentClass\n * @param props\n * @returns\n */\nexport const MiniSelect: CompoundedComponent = (props) => (\n <Select {...props} size=\"small\" placement=\"topLeft\" />\n);\n\nMiniSelect.Option = Select.Option;\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, message, Pagination, PaginationProps } from 'antd';\nimport { forwardRef, ReactElement, useImperativeHandle, useMemo, useRef, useState } from 'react';\nimport { EasyTableCtxProvider } from './context';\nimport { easyTableModel } from './model';\nimport { MiniSelect } from './select';\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 children: ReactElement | ReactElement[];\n /** EasyTable唯一值,可用于缓存查询条件 */\n modelKey: string;\n /** 接口数据配置 */\n serviceConfig: EasyTableServiceConfig;\n /**\n * 1. 查询条件Form initialValues\n * 2. 接口其他参数,例如常量类型\n */\n initialValues?: TPlainObject;\n /**\n * 分页初始化参数,默认值: pageSize = 10\n * @deprecated 使用 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\nexport const EasyTable = forwardRef<EasyTableRefApi, EasyTableProps>((props: EasyTableProps, ref) => {\n const [dataSource, setDataSource] = useState<TPlainObject[]>([]);\n const [total, setTotal] = useState<number>(0);\n const [loading, setLoading] = useState<boolean>(false);\n const [state, actions] = easyTableModel(props.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: 'tatal',\n pageNo: 'pageNo',\n pageSize: 'pageSize',\n ...props.fieldNames,\n };\n\n const [form] = Form.useForm();\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 void message.error(error.message);\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, pageSize),\n ...props.initialValues,\n ...values,\n };\n await actions.resetFilterCondition(params);\n form.resetFields();\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 onRequest: onInnerRequest,\n clearQueryCondition,\n getRequestParams,\n onResetRequest,\n form,\n getDataSource: () => {\n return respOriginalDataRef.current;\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.pageSize) });\n } else {\n void onInnerRequest({\n ...values,\n ...getPaginationData(1, state.queryCondition.pageSize),\n });\n }\n };\n const isFull = isUndefined(props.isFull) ? true : props.isFull;\n const className = classNames('fba-easy-table', {\n 'fba-easy-table-full': isFull,\n 'fba-easy-table-filter-fixed': props.filterFixed,\n 'fba-easy-table-pagination-fixed': props.paginationFixed,\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 return (\n <EasyTableCtxProvider\n value={{\n getEasyTableRef,\n modelKey: props.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=\"fba-easy-table-wrapper\">\n <div className={className}>{props.children}</div>\n {total > 0 && (\n <div className=\"fba-easy-table-pagination\">\n <Pagination\n size=\"small\"\n {...paginationData}\n onChange={onChange}\n selectComponentClass={MiniSelect}\n />\n </div>\n )}\n </div>\n ) : (\n <div className={className}>{props.children}</div>\n )}\n </EasyTableCtxProvider>\n );\n});\n","import { DownOutlined, UpOutlined } from '@ant-design/icons';\nimport { hooks } from '@wove/react';\nimport { ButtonProps, Form, FormInstance } from 'antd';\nimport { Children, ReactElement, useMemo, useState } from 'react';\nimport { ButtonWrapper } 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 { useEasyTableCtx } 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<ButtonProps, 'onClick'> & { text?: string };\n // 重置按钮配置\n resetButtonProps?: Omit<ButtonProps, 'onClick'> & { text?: string };\n\n formGridSize?: FormRowProps['gridSize'];\n};\n\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 * <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 *2. 用户2(自定义布局)\n * EasyTableFilter设置 isPure = true,FormItem无布局规则\n *3. EasyTableFilter中内置了 Form 标签,当children为函数时,可获取form实例\n *4. 默认布局下,可通过设置 filterOperate 设置操作按钮\n *5. Filter 子节点包含 hidden = true 会被忽略\n *```\n */\nexport const EasyTableFilter = (props: EasyTableFilterProps) => {\n const { queryButtonProps, resetButtonProps, filterOperate } = props;\n const {\n modelKey,\n foldKeys,\n fieldNames,\n onRequest,\n pageSize,\n paginationStatus,\n initialValues,\n form,\n onFormFinish,\n } = useEasyTableCtx();\n const children = typeof props.children === 'function' ? props.children(form) : props.children;\n const childrens = Children.toArray(children) as ReactElement[];\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 (paginationStatus) {\n onRequest({\n [fieldNames.pageNo]: 1,\n [fieldNames.pageSize]: pageSize,\n ...initialValues,\n });\n } else {\n onRequest(initialValues);\n }\n });\n\n const formRowChildren = useMemo(() => {\n const formOperateColProps = {\n rightList: [\n !queryButtonProps?.hidden ? (\n <ButtonWrapper key=\"1\" type=\"primary\" htmlType=\"submit\" {...queryButtonProps}>\n {queryButtonProps?.text || '查询'}\n </ButtonWrapper>\n ) : null,\n !resetButtonProps?.hidden ? (\n <ButtonWrapper key=\"2\" onClick={onReset} {...resetButtonProps}>\n {resetButtonProps?.text || '重置'}\n </ButtonWrapper>\n ) : null,\n ],\n leftList: [],\n ...filterOperate?.(form),\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 const { rightList, leftList } = formOperateColProps;\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(<FormGrid.OperateCol key={999} {...formOperateColProps} />);\n }, [childrens, filterOperate, foldKeys, form, onReset, openFold, queryButtonProps, resetButtonProps]);\n\n return (\n <SimpleLayout className=\"easy-table-filter\">\n <Form\n form={form}\n onFinish={onFormFinish}\n initialValues={{\n ...initialValues,\n ...state.queryCondition,\n }}\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 { useRef } from 'react';\nimport { useEasyTableCtx } from './context';\nimport { EasyTableRefApi } from './type';\n\n/**\n * 在 EasyTable子组件内才可使用\n * @returns\n */\nexport const useEasyTable = () => {\n const ctx = useEasyTableCtx();\n const resp = useRef(ctx.getEasyTableRef());\n return resp.current;\n};\n\n/**\n *\n * @deprecated 已过去,请使用 useEasyTable\n * @returns\n */\nexport const useEasyTablRef = () => {\n const { getEasyTableRef } = useEasyTableCtx();\n const ref = useRef<EasyTableRefApi>(getEasyTableRef());\n return ref;\n};\n","import { classNames } from '@dimjs/utils';\nimport { getUuid, isMacEnv, isUndefinedOrNull, TAny } from '@flatbiz/utils';\nimport { Table, TableProps } from 'antd';\nimport { CSSProperties, ReactElement, useMemo } from 'react';\nimport { fbaHooks } from '../fba-hooks';\nimport { SimpleLayout } from '../simple-layout';\nimport { TableScrollbar } from '../table-scrollbar';\nimport { useEasyTableCtx } from './context';\nimport { easyTableModel } from './model';\nimport { MiniSelect } from './select';\n\nexport type EasyTableTableProps = Omit<TableProps<TAny>, 'dataSource' | 'loading' | 'rowKey'> & {\n children?: ReactElement | ReactElement[];\n /** 表格行 key 的取值 */\n rowKey: string;\n tableWrapperStyle?: CSSProperties;\n tableWrapperClassName?: string;\n};\n\n/**\n * 表格渲染\n * @param props\n * ```\n * 1. 继承了 TableProps 可设置antd table功能\n * ```\n */\nexport const EasyTableTable = (props: EasyTableTableProps) => {\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 } = useEasyTableCtx();\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: MiniSelect,\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'] = (data, ...otherProps) => {\n if (tablePaginationData) {\n onRequest({ [fieldNames.pageSize]: data.pageSize, [fieldNames.pageNo]: data.current });\n }\n props.onChange?.(data, ...otherProps);\n };\n\n const dataSource = useMemo(() => {\n if (tableList.length === 0) {\n return [];\n }\n if (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 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 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 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. 需要获取查询条件、主动发起请求等可通过ref、useEasyTable操作\n * 2. 可通过属性 initRequest 设置初始化是否请求数据\n * 3. 可通过属性 fieldNames 来设置自定义变量,默认值为:list、total、pageNo、pageSize\n * 4. isFull=true,设置【在父节点高度下,上下铺满】(默认值:true)\n * 5. filterFixed=true,设置查询条件固定,不随滚动条滚动\n * 6. paginationFixed=true,可设置分页条件在底部固定,不随滚动条滚动\n * 7. foldKeys=string[],查询条件展开、收起,被收起数组内容为EasyTable.Filter 子节点key值\n * 8. 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 *```\n */\n Filter: EasyTableFilter,\n /**\n * 表格渲染\n * @param props\n * ```\n * 1. 继承了 TableProps 可设置antd table功能\n * ```\n */\n Table: EasyTableTable,\n\n /**\n * @deprecated 已过去,请使用 useEasyTable\n */\n useEasyTablRef: useEasyTablRef,\n\n /** 在 EasyTable子组件内才可使用 */\n useEasyTable: useEasyTable,\n});\n"],"names":["_createCtx","_createCtx2","useEasyTableCtx","EasyTableCtxProvider","defaultState","queryCondition","isInit","_EasyTableModel","actions","updateFilterCondition","params","state","_extends","resetFilterCondition","updateInitStatus","easyTableModels","easyTableModel","key","Model","MiniSelect","props","_jsx","Select","size","placement","Option","EasyTable","forwardRef","ref","_props$initialPaginat","_useState","useState","dataSource","setDataSource","_useState2","total","setTotal","_useState3","loading","setLoading","_easyTableModel$useSt","modelKey","useStore","pageSize","initialPaginationParams","initRequest","undefined","_useState4","paginationStatus","setPaginationStatus","respOriginalDataRef","useRef","fieldNames","list","pageNo","_Form$useForm","Form","useForm","form","onInnerRequest","_hooks","useCallbackRef","Promise","$return","$error","allState","_props$serviceConfig","requestParamsAdapter","onRequest","requestResultAdapter","paramsNew","respData","respDataNew","respList","$Try_1_Post","$boundEx","$Try_1_Catch","error","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","getEasyTableRef","getDataSource","useImperativeHandle","onSetPaginationStatus","status","onFormFinish","isFull","_isUndefined","className","_classNames","filterFixed","paginationFixed","paginationData","useMemo","showSizeChanger","showTotal","pagination","onChange","page","_onInnerRequest","_props$pagination","value","tableList","tableTotal","foldKeys","children","_jsxs","Pagination","selectComponentClass","EasyTableFilter","queryButtonProps","resetButtonProps","filterOperate","_useEasyTableCtx","childrens","Children","toArray","openFold","setOpenFold","onReset","_extends2","$await_1","formRowChildren","formOperateColProps","rightList","hidden","ButtonWrapper","type","htmlType","text","onClick","leftList","length","changeFolditem","style","padding","_UpOutlined","marginLeft","fontSize","_DownOutlined","push","map","item","index","find","keyItem","FormGrid","Col","filter","Boolean","concat","OperateCol","SimpleLayout","onFinish","isPure","Row","gutter","gridSize","formGridSize","useEasyTable","ctx","resp","useEasyTablRef","EasyTableTable","rowKey","otherProps","_objectWithoutPropertiesLoose","_excluded","tablePaginationData","onChangePage","data","_onRequest","_len","arguments","Array","_key","apply","isUndefinedOrNull","getUuid","fbaHooks","useEffectCustom","hasPagination","tableWrapperClassName","tableWrapperStyle","isMacEnv","Table","scroll","x","bordered","TableScrollbar","fbaUtils","attachPropertiesToComponent","EasyTableInner","Filter"],"mappings":"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"}
|
|
@@ -1,13 +1,16 @@
|
|
|
1
1
|
/* eslint-disable */
|
|
2
|
+
import './../button-wrapper/index.css';
|
|
3
|
+
import './../config-provider-wrapper/index.css';
|
|
4
|
+
import './../fba-hooks/index.css';
|
|
5
|
+
import './../fba-utils/index.css';
|
|
2
6
|
import './../date-picker-wrapper/index.css';
|
|
3
7
|
import './../date-range-picker-wrapper/index.css';
|
|
4
8
|
import './../selector-wrapper/index.css';
|
|
5
9
|
import './../request-status/index.css';
|
|
6
|
-
import './../fba-hooks/index.css';
|
|
7
10
|
import './../upload-wrapper/index.css';
|
|
8
11
|
import './../input-wrapper/index.css';
|
|
9
12
|
import './../input-text-area-wrapper/index.css';
|
|
10
13
|
import './index.css';
|
|
11
14
|
/*! @flatjs/forge MIT @flatbiz/antd */
|
|
12
|
-
export{E as EditableTable}from"../editable-table-
|
|
15
|
+
export{E as EditableTable}from"../editable-table-d3afee03.js";import"@ant-design/icons/es/icons/PlusOutlined";import"../_rollupPluginBabelHelpers-1f4d8910.js";import"antd";import"react";import"../button-wrapper-c63ea6fc.js";import"@ant-design/icons/es/icons/LoadingOutlined";import"@dimjs/lang/cjs/is-promise";import"@wove/react/cjs/hooks";import"@flatbiz/utils";import"../config-provider-wrapper-dfe8f592.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"react/jsx-runtime";import"../fba-utils-1e895394.js";import"@dimjs/utils/cjs/extend";import"@dimjs/utils/cjs/class-names";import"../date-picker-wrapper-ba650858.js";import"../time-53b3f55f.js";import"../date-range-picker-wrapper-fb15c592.js";import"../input-wrapper-b378eb5a.js";import"../selector-wrapper-defe35d6.js";import"@ant-design/icons/es/icons/RedoOutlined";import"@dimjs/lang/cjs/is-string";import"../request-status-03fc60e2.js";import"@dimjs/lang/cjs/is-deep-equal";import"@dimjs/utils/cjs/get";import"@dimjs/utils/cjs/json";import"pubsub-js";import"@dimjs/lang/cjs/is-object";import"@dimjs/lang/cjs/is-boolean";import"@dimjs/lang/cjs/is-number";import"../input-text-area-wrapper-c958fba0.js";import"../upload-wrapper-df8a2277.js";import"@dimjs/lang/cjs/is-empty";import"@dimjs/lang/cjs/is-plain-object";import"react-dom";import"@ant-design/icons/es/icons/DeleteOutlined";
|
|
13
16
|
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
/*! @flatjs/forge MIT @flatbiz/antd */
|
|
2
|
+
import e from"@ant-design/icons/es/icons/PlusOutlined";import{a as n,_ as r}from"./_rollupPluginBabelHelpers-1f4d8910.js";import{Form as a,Checkbox as l,Tag as i,InputNumber as t,Radio as o,Space as d,Button as u,Input as m,Table as f}from"antd";import{useMemo as c,useState as s,useEffect as v,Fragment as p}from"react";import{B as g}from"./button-wrapper-c63ea6fc.js";import{isArray as b}from"@dimjs/lang/cjs/is-array";import{extend as C}from"@dimjs/utils/cjs/extend";import{classNames as h}from"@dimjs/utils/cjs/class-names";import{hooks as I}from"@wove/react/cjs/hooks";import{jsx as w,jsxs as x,Fragment as R}from"react/jsx-runtime";import{D as N}from"./date-picker-wrapper-ba650858.js";import{D as P}from"./date-range-picker-wrapper-fb15c592.js";import{I as y}from"./input-wrapper-b378eb5a.js";import{fbaHooks as j}from"./fba-hooks/index.js";import{arrayField2LabelValue as k}from"@flatbiz/utils";import{S as F}from"./selector-wrapper-defe35d6.js";import{isBoolean as L}from"@dimjs/lang/cjs/is-boolean";import{isNumber as T}from"@dimjs/lang/cjs/is-number";import{isString as A}from"@dimjs/lang/cjs/is-string";import{I as B}from"./input-text-area-wrapper-c958fba0.js";import{U as O}from"./upload-wrapper-df8a2277.js";import S from"@ant-design/icons/es/icons/DeleteOutlined";var V=function e(n,r){return typeof n==="boolean"?n:n==null?void 0:n({tableRowIndex:r})};var G=function e(r){var a=r.fieldConfig,t=a.editableConfig,o=a.editable,d=a.render;var u=t.editableComptProps;var m=c((function(){if(o)return[];var e=b(r.value)?r.value:[];var n=u.options||[];if(!b(n)||n.length===0){return e.map((function(e){return{label:e,value:e}}))}var a=[];e.forEach((function(e){var r=n.find((function(n){return n.value===e}));a.push(r?r:{label:e,value:e})}));return a}),[o,u.options,r.value]);var f=I.useCallbackRef((function(e){r.onChange==null?void 0:r.onChange(e);u.onChange==null?void 0:u.onChange(e)}));if(o){return w(l.Group,n({},u,{value:r.value,onChange:f}))}return w("span",{className:"editable-checkbox-group-view",children:d?d(r.value):m.map((function(e,n){return w(i,{color:"#1890ff",children:e.label},n)}))})};var W=function e(r){var l=r.fieldConfig.formItemProps;return w(a.Item,n({},l,{name:r.name,className:h("editable-checkbox-group-form-item",l==null?void 0:l.className),children:w(G,n({},r))}))};var D=function e(r){var l=r.fieldConfig,i=l.formItemProps,t=l.editableConfig;return w(a.Item,n({},i,{name:r.name,className:h("editable-date-picker-wraper-form-item",i==null?void 0:i.className),children:w(N,n({allowClear:true},t.editableComptProps))}))};var E=function e(r){var a=r.fieldConfig,l=a.editableConfig,i=a.editable,t=a.render;var o=l.editableComptProps;var d=I.useCallbackRef((function(e){r.onChange==null?void 0:r.onChange(e);o==null?void 0:o.onChange==null?void 0:o.onChange(e)}));var u=c((function(){var e=b(r.value)?r.value:[];if(i)return undefined;return e.join("~")}),[i,r.value]);if(i){return w(P,n({allowClear:true},o,{value:r.value,onChange:d}))}return w("span",{className:"editable-date-range-picker-view",children:t?t(r.value):u})};var _=function e(r){var l=r.fieldConfig.formItemProps;return w(a.Item,n({},l,{name:r.name,className:h("editable-date-range-picker-wraper-form-item",l==null?void 0:l.className),children:w(E,n({},r))}))};var K=function e(r){var l=r.fieldConfig,i=l.formItemProps,t=l.editableConfig;return w(a.Item,n({},i,{name:r.name,children:w(y,n({allowClear:true},t.editableComptProps))}))};var M=function e(r){var l=r.fieldConfig,i=l.formItemProps,o=l.editableConfig;return w(a.Item,n({},i,{name:r.name,className:h("editable-input-number-form-item",i==null?void 0:i.className),children:w(t,n({},o.editableComptProps))}))};var z=function e(r){var a=r.fieldConfig,l=a.editableConfig,t=a.editable,d=a.render;var u=l.editableComptProps;var m=j.useThemeToken();var f=c((function(){if(t)return[];var e=r.value;var n=u.options||[];if(!b(n)||n.length===0){return e}var a=n.find((function(n){return n.value===e}));return(a==null?void 0:a.label)||e}),[t,u.options,r.value]);var s=I.useCallbackRef((function(e){r.onChange==null?void 0:r.onChange(e.target.value);u.onChange==null?void 0:u.onChange(e)}));if(t){return w(o.Group,n({},u,{value:r.value,onChange:s}))}return w("span",{className:"editable-radio-group-view",children:d?d(r.value):f?w(i,{color:m.colorPrimary,children:f}):null})};var H=function e(r){var l=r.fieldConfig.formItemProps;return w(a.Item,n({},l,{name:r.name,className:h("editable-radio-group-form-item",l==null?void 0:l.className),children:w(z,n({},r))}))};var J=function e(r){var a=r.fieldConfig,l=a.editableConfig,t=a.editable,o=a.render;var d=l.editableComptProps;var u=s([]),m=u[0],f=u[1];var c=s([]),g=c[0],C=c[1];var h=j.useThemeToken();v((function(){if(!t){var e=b(r.value)?r.value:r.value===undefined?[]:[r.value];if(m.length===0){C(e.map((function(e){return{label:e,value:e}})))}var n=[];e.forEach((function(e){var r=m.find((function(n){return n.value===e}));n.push(r?r:{label:String(e),value:e})}));C(n)}}),[t,d.fieldNames,r.value,m]);var R=I.useCallbackRef((function(e){f(k(e||[],d.fieldNames))}));var N=I.useCallbackRef((function(e,n){r.onChange==null?void 0:r.onChange(e);d.onChange==null?void 0:d.onChange(e,n)}));if(t){return w(F,n({},d,{value:r.value,onChange:N,onSelectorListAllChange:R}))}return x(p,{children:[w("div",{style:{display:"none"},children:w(F,n({},d,{onSelectorListAllChange:R}))}),w("span",{className:"editable-selector-view",children:o?o(r.value,m):g.map((function(e,n){return w(i,{color:h.colorPrimary,children:e.label},n)}))})]})};var U=function e(r){var l=r.fieldConfig.formItemProps;return w(a.Item,n({},l,{name:r.name,className:h("editable-selector-wrapper-form-item",l==null?void 0:l.className),children:w(J,n({},r))}))};var $=function e(n){var r,a;var l=c((function(){var e;if((e=n.fieldConfig)!=null&&e.render)return undefined;var r=A(n.value)||T(n.value)||L(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 i=((a=n.fieldConfig)==null?void 0:a.render==null?void 0:a.render(n.value))||l;return w("span",{children:i})};var q=function e(n){return w(a.Item,{noStyle:true,name:n.name,children:w($,{name:n.name,fieldConfig:n.fieldConfig})})};var Q=function e(r){var l=r.fieldConfig,i=l.formItemProps,t=l.editableConfig;return w(a.Item,n({},i,{name:r.name,children:w(B,n({},t.editableComptProps))}))};var X=["children"];var Y=function e(a){var l=a.fieldConfig,i=l.editableConfig,t=l.render,o=l.editable;var d=i.editableComptProps,u=d.children,m=r(d,X);if(o){return w(O,n({listType:"text"},m,{value:a.value,onChange:a.onChange,children:u}))}return w("div",{className:"upload-wrapper-selector-view",children:t?t(a.value):w(O,n({listType:"text"},m,{value:a.value,disabled:true}))})};var Z=function e(r){var l=r.fieldConfig.formItemProps;return w(a.Item,n({},l,{name:r.name,className:h("editable-upload-wrapper-form-item",l==null?void 0:l.className),children:w(Y,n({},r))}))};var ee=function e(r){var a=r.fieldConfig,l=a.editableConfig,i=a.editable;var t=V(i,r.tableRowIndex);var o=C({},r.fieldConfig,{editable:t});var d={name:r.name,fieldConfig:o};if((l==null?void 0:l.type)==="input"&&t){return w(K,n({},d))}else if((l==null?void 0:l.type)==="inputNumber"&&t){return w(M,n({},d))}else if((l==null?void 0:l.type)==="textArea"&&t){return w(Q,n({},d))}else if((l==null?void 0:l.type)==="datePickerWrapper"&&t){return w(D,n({},d))}else if((l==null?void 0:l.type)==="dateRangePickerWrapper"){return w(_,n({},d))}else if((l==null?void 0:l.type)==="selectorWrapper"){return w(U,n({},d))}else if((l==null?void 0:l.type)==="checkboxGroup"){return w(W,n({},d))}else if((l==null?void 0:l.type)==="radioGroup"){return w(H,n({},d))}else if((l==null?void 0:l.type)==="uploadWrapper"){return w(Z,n({},d))}else if((l==null?void 0:l.type)==="custom"){return l.editableComptProps({name:r.name,editable:t,completeName:r.completeName,tableRowIndex:r.tableRowIndex})}return w(q,n({},d))};var ne=function e(n){var r=a.useFormInstance();var l=n.formListConfig,i=l.onFormListBeforeRender,t=l.editableConfigList,o=l.onFormListAfterRender,u=l.onFormListItemBeforeRender,m=l.onFormListItemAfterRender,f=l.deleteOperateRender;return w(a.List,{name:n.name,children:function e(a,l){var c=l.add,s=l.remove;return x(R,{children:[i?i({tableRowIndex:n.tableRowIndex,add:c,get value(){return r.getFieldValue(n.completeName)}}):null,a.map((function(e,a){var l=t.find((function(e){return V(e.editable,n.tableRowIndex)}));var i=h("editable-inner-formlist-item","editable-inner-formlist-item-"+n.name[1],{"editable-inner-formlist-item_preview":!l});return x("div",{className:i,children:[u==null?void 0:u({add:c,remove:function e(){s(a)},formListItemIndex:a,tableRowIndex:n.tableRowIndex,get value(){return r.getFieldValue([].concat(n.completeName,[e.name]))}}),x(d,{children:[t.map((function(r,a){return w(ee,{name:[e.name,r.fieldName],fieldConfig:r,tableRowIndex:n.tableRowIndex,completeName:[].concat(n.completeName,[e.name])},a)})),l?w(re,{deleteOperateRender:f,remove:function e(){s(a)},index:a}):undefined]}),m==null?void 0:m({add:c,formListItemIndex:a,tableRowIndex:n.tableRowIndex,remove:function e(){s(a)},get value(){return r.getFieldValue([].concat(n.completeName,[e.name]))}})]},a)})),o?o({tableRowIndex:n.tableRowIndex,add:c,get value(){return r.getFieldValue(n.completeName)}}):null]})}})};var re=function e(n){return w(a.Item,{children:n.deleteOperateRender?n.deleteOperateRender({remove:n.remove,formListItemIndex:n.index}):w(u,{type:"link",danger:true,icon:w(S,{}),onClick:n.remove,children:"删除"})})};var ae=function e(n){if(n.fieldConfig){if(b(n.fieldConfig["editableConfigList"])){var r=n.fieldConfig;return w(ne,{name:n.name,completeName:n.completeName,formListConfig:r,tableRowIndex:n.tableRowIndex})}else{return x(p,{children:[w(ee,{name:n.name,fieldConfig:n.fieldConfig,tableRowIndex:n.tableRowIndex,completeName:n.completeName}),n.hiddenField?w(a.Item,{hidden:true,name:n.hiddenField.dataIndex,children:w(m,{})}):null]})}}return w(q,{name:n.name})};var le=["fieldConfig","renderMiddleware"];var ie=function l(i){var t;var o=c((function(){if(!i.columns)return[];return i.columns.map((function(e){var a=e.fieldConfig,l=e.renderMiddleware,t=r(e,le);return n({onCell:function e(){var n;return{valign:((n=i.tableProps)==null?void 0:n.cellVerticalAlign)||"middle"}}},t,{render:function n(r,t,o){var d=[i.name,t.name];var u=e.dataIndex?[].concat(d,[e.dataIndex]):d;var m=l==null?void 0:l({name:u,tableRowIndex:t.name,operation:t.operation,tableRowName:d,index:o});if(m){return m}var f=typeof a==="function"?a({name:u,tableRowIndex:t.name,tableRowName:d}):a;return w(ae,{name:e.dataIndex?[t.name,e.dataIndex]:[t.name],completeName:u,fieldConfig:f,tableRowIndex:t.name,hiddenField:e.hiddenField})}})}))}),[i.columns,i.name,(t=i.tableProps)==null?void 0:t.cellVerticalAlign]);return w("div",{className:"editable-table",children:w(a.List,{name:i.name,rules:i.rules,children:function r(a,l){return x(p,{children:[i.onTableBeforeRender?i.onTableBeforeRender(l,a.length):null,w(f,n({scroll:{x:"max-content"},pagination:false,rowKey:"key"},i.tableProps,{dataSource:a.map((function(e){return n({},e,{operation:l})})),columns:o})),i.onTableAfterRender?i.onTableAfterRender(l,a.length):w(g,{type:"dashed",hidden:i.hiddenFooterBtn,onClick:function e(){return l.add()},block:true,icon:w(e,{}),style:{marginTop:15},children:"新增"})]})}})})};export{ie as E};
|
|
3
|
+
//# sourceMappingURL=editable-table-d3afee03.js.map
|