@flatbiz/antd 4.2.55 → 4.2.57

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.
Files changed (53) hide show
  1. package/esm/button-operate/index.css +1 -1
  2. package/esm/button-operate/index.js +1 -1
  3. package/esm/button-operate-81d86480.js +3 -0
  4. package/esm/button-operate-81d86480.js.map +1 -0
  5. package/esm/{cell-render-2a3743af.js → cell-render-927ade58.js} +2 -2
  6. package/esm/{cell-render-2a3743af.js.map → cell-render-927ade58.js.map} +1 -1
  7. package/esm/create-drawer-wrapper-model/index.js.map +1 -1
  8. package/esm/create-modal-wrapper-model/index.js.map +1 -1
  9. package/esm/drag-collapse/index.css +1 -1
  10. package/esm/drag-collapse/index.js +1 -3
  11. package/esm/drag-collapse-24ccfe8c.js +3 -0
  12. package/esm/drag-collapse-24ccfe8c.js.map +1 -0
  13. package/esm/drag-collapse-433fb1e0.js +3 -0
  14. package/esm/drag-collapse-433fb1e0.js.map +1 -0
  15. package/esm/drag-collapse-form-list/index.css +1 -0
  16. package/esm/drag-collapse-form-list/index.js +6 -0
  17. package/esm/drawer-wrapper-9af2f178.js.map +1 -1
  18. package/esm/dropdown-menu-wrapper/index.css +1 -0
  19. package/esm/dropdown-menu-wrapper/index.js +1 -1
  20. package/esm/dropdown-menu-wrapper-016a83b6.js +3 -0
  21. package/esm/dropdown-menu-wrapper-016a83b6.js.map +1 -0
  22. package/esm/easy-table/index.js +1 -1
  23. package/esm/easy-table/index.js.map +1 -1
  24. package/esm/editable-table/index.js +1 -1
  25. package/esm/editable-table-392040f7.js +3 -0
  26. package/esm/{editable-table-53686ef4.js.map → editable-table-392040f7.js.map} +1 -1
  27. package/esm/editor-wrapper-ff6e75b7.js.map +1 -1
  28. package/esm/form-item-group/index.js +1 -1
  29. package/esm/index.js +2 -3
  30. package/esm/modal-wrapper-ff8df98b.js.map +1 -1
  31. package/esm/table-cell-render/index.js +1 -1
  32. package/esm/tabs-wrapper-0a2da713.js.map +1 -1
  33. package/esm/tree-wrapper/index.js +1 -1
  34. package/esm/tree-wrapper/index.js.map +1 -1
  35. package/index.d.ts +105 -111
  36. package/package.json +5 -2
  37. package/esm/button-operate-fb40320e.js +0 -3
  38. package/esm/button-operate-fb40320e.js.map +0 -1
  39. package/esm/drag-collapse-8d751c2b.js +0 -3
  40. package/esm/drag-collapse-8d751c2b.js.map +0 -1
  41. package/esm/drag-drop/index.css +0 -1
  42. package/esm/drag-drop/index.js +0 -6
  43. package/esm/drag-drop/index.js.map +0 -1
  44. package/esm/drag-drop-multi/index.css +0 -0
  45. package/esm/drag-drop-multi/index.js +0 -5
  46. package/esm/drag-drop-multi-e8cae136.js +0 -3
  47. package/esm/drag-drop-multi-e8cae136.js.map +0 -1
  48. package/esm/dropdown-menu-wrapper-98347af8.js +0 -3
  49. package/esm/dropdown-menu-wrapper-98347af8.js.map +0 -1
  50. package/esm/droppable-item-708ec229.js +0 -3
  51. package/esm/droppable-item-708ec229.js.map +0 -1
  52. package/esm/editable-table-53686ef4.js +0 -3
  53. /package/esm/{drag-drop-multi → drag-collapse-form-list}/index.js.map +0 -0
@@ -1 +1 @@
1
- .table-operate{padding:0 5px}.table-operate .ant-btn-link{border-radius:4px;height:auto;padding:0 6px}.table-operate .ant-btn-link:hover{background-color:rgba(0,0,0,.03)!important}.table-operate .ant-btn-link:hover span{transform:scale(1.05);transition:all .1s ease-in}.table-operate .ant-btn-link .anticon{margin:0}.table-operate .ant-divider{margin:0 4px}.fold-more-button .anticon-more{transform:rotate(90deg)}.fold-more-button:hover .anticon-more{transform:scale(1.3) rotate(90deg)!important}
1
+ .table-operate{padding:0 5px}.table-operate .ant-btn-link{border-radius:4px;height:auto;padding:0 6px}.table-operate .ant-btn-link:hover{background-color:rgba(0,0,0,.03)!important}.table-operate .ant-btn-link:hover span{transform:scale(1.05);transition:all .1s ease-in}.table-operate .ant-btn-link .anticon{margin:0}.table-operate .ant-divider{margin:0 4px}.table-operate .dropdown-menu-wrapper{align-items:center;display:flex;justify-content:center}.fold-more-button .anticon-more{transform:rotate(90deg)}.fold-more-button:hover .anticon-more{transform:scale(1.3) rotate(90deg)!important}
@@ -9,5 +9,5 @@ import './../dialog-modal/index.css';
9
9
  import './../flex-layout/index.css';
10
10
  import './index.css';
11
11
  /*! @flatjs/forge MIT @flatbiz/antd */
12
- export{a as ButtonOperate,B as ButtonOperateItemContent}from"../button-operate-fb40320e.js";import"@ant-design/icons/es/icons/MoreOutlined";import"../_rollupPluginBabelHelpers-1f4d8910.js";import"@dimjs/lang/cjs/is-undefined";import"@dimjs/utils/cjs/class-names";import"@dimjs/lang/cjs/is-plain-object";import"@dimjs/lang/cjs/is-string";import"@dimjs/lang/cjs/is-promise";import"@wove/react/cjs/hooks";import"antd";import"react";import"../button-wrapper-125fce50.js";import"@ant-design/icons/es/icons/LoadingOutlined";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-f9e11d02.js";import"../dropdown-menu-wrapper-98347af8.js";import"@ant-design/icons/es/icons/ExclamationCircleFilled";import"../dialog-confirm-74fc9337.js";import"../dialog-modal-4a0c72c5.js";import"ahooks";import"react-dom/client";import"../flex-layout-8d2b668b.js";
12
+ export{a as ButtonOperate,B as ButtonOperateItemContent}from"../button-operate-81d86480.js";import"@ant-design/icons/es/icons/MoreOutlined";import"../_rollupPluginBabelHelpers-1f4d8910.js";import"@dimjs/lang/cjs/is-undefined";import"@dimjs/utils/cjs/class-names";import"@dimjs/lang/cjs/is-plain-object";import"@dimjs/lang/cjs/is-string";import"@dimjs/lang/cjs/is-promise";import"@wove/react/cjs/hooks";import"antd";import"react";import"../button-wrapper-125fce50.js";import"@ant-design/icons/es/icons/LoadingOutlined";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-f9e11d02.js";import"../dropdown-menu-wrapper-016a83b6.js";import"@ant-design/icons/es/icons/ExclamationCircleFilled";import"../dialog-confirm-74fc9337.js";import"../dialog-modal-4a0c72c5.js";import"ahooks";import"react-dom/client";import"../flex-layout-8d2b668b.js";
13
13
  //# sourceMappingURL=index.js.map
@@ -0,0 +1,3 @@
1
+ /*! @flatjs/forge MIT @flatbiz/antd */
2
+ import r from"@ant-design/icons/es/icons/MoreOutlined";import{a as e,_ as n}from"./_rollupPluginBabelHelpers-1f4d8910.js";import{isUndefined as t}from"@dimjs/lang/cjs/is-undefined";import{classNames as i}from"@dimjs/utils/cjs/class-names";import{isPlainObject as o}from"@dimjs/lang/cjs/is-plain-object";import{isString as s}from"@dimjs/lang/cjs/is-string";import{isPromise as p}from"@dimjs/lang/cjs/is-promise";import{hooks as a}from"@wove/react/cjs/hooks";import{Popover as l,Tooltip as c,Space as f,Divider as u,Popconfirm as d,Button as m}from"antd";import{isValidElement as v,Fragment as h,useState as g,useMemo as T,createElement as y}from"react";import{B as j}from"./button-wrapper-125fce50.js";import{D as k}from"./dropdown-menu-wrapper-016a83b6.js";import{f as C}from"./fba-utils-f9e11d02.js";import{jsx as P,jsxs as b}from"react/jsx-runtime";var w=["text","onClick","needConfirm","confirmMessage","popconfirmProps","hoverTips"];var x=function r(e){if(e.hoverTips){if(e.tipsType==="popover"){return P(l,{content:e.hoverTips,zIndex:1e3,children:P("span",{children:e.content})})}return P(c,{title:e.hoverTips,zIndex:1e3,children:P("span",{children:e.content})})}if(v(e.content)){return P(h,{children:e.content})}return P("span",{children:e.content})};var B=function l(c){var h=g(false),B=h[0],I=h[1];var M=a.useCallbackRef((function(r,e){var n=r.onClick==null?void 0:r.onClick(e);if(n&&p(n)){I(true);return n.finally((function(){I(false)}))}return}));var z=c.operateList.filter((function(r){if(!r)return false;if(v(r)){var e,n;if(((e=r.props)==null?void 0:e["hidden"])===true)return false;var t=(n=r.props)==null?void 0:n["v-permission"];if(s(t)){return C.hasPermission(t)}return true}if(o(r)){if(!C.hasPermission(r["permission"])){return false}return!r["hidden"]}return false}));var F=T((function(){return z.filter((function(r){if(v(r)){return true}return!r["isFold"]}))}),[z]);var N=T((function(){var r=z.filter((function(r){if(v(r)){return false}return r["isFold"]}));var n=[];r.forEach((function(r){var t=e({},r);delete t.isFold;n.push(t)}));return n}),[z]);var O=c.gap===undefined?10:c.gap;var H=!c.split?O:0;return P("div",{className:i("table-operate",c.className),style:c.style,children:b(f,e({split:c.split?P(u,{type:"vertical"}):null,size:H,wrap:t(c.wrap)?true:c.wrap},c.spaceProps,{children:[F.map((function(r,t){if(r&&v(r)){return P(x,{content:r,hoverTips:r.hoverTips,tipsType:r.tipsType},t)}var i=r.text,o=r.onClick,s=r.needConfirm,p=r.confirmMessage,a=r.popconfirmProps,l=r.hoverTips,c=n(r,w);var f=r.type||"link";if(s&&!c.disabled){var u=!!r.color?false:true;return y(d,e({okText:"确定",cancelText:"取消",trigger:["click"],placement:"topRight",arrow:true,destroyTooltipOnHide:true},a,{title:p,onConfirm:M.bind(null,r),key:t,okButtonProps:{loading:B},onOpenChange:function r(e){if(!e){I(false)}},onCancel:function r(e){e==null?void 0:e.stopPropagation()}}),P(j,e({danger:u},c,{onClick:function r(e){e.stopPropagation()},type:f,children:P(x,{content:i,hoverTips:l,tipsType:r.tipsType},t)})))}return y(j,e({loadingPosition:"center"},c,{type:f,onClick:function r(e){e.stopPropagation();return o==null?void 0:o(e)},key:t}),P(x,{content:i,hoverTips:l,tipsType:r.tipsType}))})),N.length>0?P(k,e({menuList:N,placement:"bottomCenter"},c.dropdownMenuProps,{children:P(m,{type:"link",className:"fold-more-button",onClick:function r(e){e.stopPropagation()},children:c.foldIcon?c.foldIcon:P(r,{})})})):null]}))})};B.defaultProps={split:true};export{x as B,B as a};
3
+ //# sourceMappingURL=button-operate-81d86480.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"button-operate-81d86480.js","sources":["@flatbiz/antd/src/button-operate/button-operate.tsx"],"sourcesContent":["import { MoreOutlined } from '@ant-design/icons';\nimport { isPlainObject, isPromise, isString, isUndefined } from '@dimjs/lang';\nimport { classNames } from '@dimjs/utils';\nimport { hooks } from '@wove/react';\nimport { Button, Divider, Popconfirm, PopconfirmProps, Popover, Space, SpaceProps, Tooltip } from 'antd';\nimport {\n CSSProperties,\n FC,\n Fragment,\n isValidElement,\n ReactElement,\n ReactNode,\n useMemo,\n useState,\n} from 'react';\nimport { ButtonWrapper, ButtonWrapperProps } from '../button-wrapper';\nimport { DropdownMenuWrapper, DropdownMenuWrapperProps } from '../dropdown-menu-wrapper';\nimport { fbaUtils } from '../fba-utils';\n\nimport { DialogModalProps } from '../dialog-modal';\nimport './style.less';\n\nexport interface ButtonOperateItem extends ButtonWrapperProps {\n hidden?: boolean;\n /** hover 提示文字 */\n hoverTips?: string | React.ReactElement;\n /** hover 提示类型 默认:'tooltip' */\n tipsType?: 'popover' | 'tooltip';\n text?: string | ReactElement;\n color?: string;\n onClick?: (event: React.MouseEvent<HTMLElement>) => void | Promise<void>;\n permission?: string;\n /** 是否需要二次弹框确认 */\n needConfirm?: boolean;\n /** 二次弹框确认文案 */\n confirmMessage?: string;\n /* isFold=false & needConfirm=true 有效 */\n popconfirmProps?: Pick<PopconfirmProps, 'placement' | 'okText' | 'cancelText' | 'trigger'>;\n /** 是否折叠合拢 */\n isFold?: boolean;\n /* isFold=true & needConfirm=true 有效 */\n confirmModalProps?: DialogModalProps;\n}\n\nexport interface ButtonOperateProps {\n /**\n * 如果数组中元素为ReactElement类型\n * 1. 一般为antd Button组件,如果组件存在属性hidden=true,则会隐藏\n * 2. 可配置 v-permission 权限值,例如 v-permission=\"add\"\n * 3. 任何confirm、disabled等状态在外部控制\n * 3. 不支持fold效果\n */\n operateList: Array<ButtonOperateItem | null | ReactElement>;\n wrap?: boolean;\n foldIcon?: ReactElement;\n className?: string;\n split?: boolean;\n spaceProps?: SpaceProps;\n /** 间距,默认:10;split=true配置下无效(可通过spaceProps设置间距) */\n gap?: number;\n style?: CSSProperties;\n /** 折叠合拢属性 */\n dropdownMenuProps?: Omit<DropdownMenuWrapperProps, 'menuList'>;\n}\n\nexport const ButtonOperateItemContent = (\n props: Pick<ButtonOperateItem, 'hoverTips' | 'tipsType'> & { content: ReactNode },\n) => {\n if (props.hoverTips) {\n if (props.tipsType === 'popover') {\n return (\n <Popover content={props.hoverTips} zIndex={1000}>\n <span>{props.content}</span>\n </Popover>\n );\n }\n return (\n <Tooltip title={props.hoverTips} zIndex={1000}>\n <span>{props.content}</span>\n </Tooltip>\n );\n }\n if (isValidElement(props.content)) {\n return <Fragment>{props.content}</Fragment>;\n }\n // ButtonOperate item 内部 span 包文案会有动态效果\n return <span>{props.content}</span>;\n};\n\n/**\n * 按钮组合处理组件\n * ```\n * @flatbiz/antd@4.2.49\n * 1. 替换 Fold 中 needConfirm交互,有 Popconfirm 改为 dialogConfirm组件实现二次弹框确认功能\n * 2. 修改原因:升级 antd 5.5.1 后,Dropdown 中 Popconfirm弹框组合使用存在问题\n * ```\n */\nexport const ButtonOperate: FC<ButtonOperateProps> = (props) => {\n const [loading, setLoading] = useState(false);\n\n const onConfirm = hooks.useCallbackRef((item: ButtonOperateItem, event) => {\n const result = item.onClick?.(event);\n if (result && isPromise(result)) {\n setLoading(true);\n return result.finally(() => {\n setLoading(false);\n });\n }\n return;\n });\n\n const operateList = props.operateList.filter((item) => {\n if (!item) return false;\n if (isValidElement(item)) {\n if (item.props?.['hidden'] === true) return false;\n const permission = item.props?.['v-permission'];\n if (isString(permission)) {\n return fbaUtils.hasPermission(permission);\n }\n return true;\n }\n if (isPlainObject(item)) {\n if (!fbaUtils.hasPermission(item['permission'])) {\n return false;\n }\n return !item['hidden'];\n }\n return false;\n }) as Array<ButtonOperateItem | ReactElement>;\n\n const viewList = useMemo(() => {\n return operateList.filter((item) => {\n if (isValidElement(item)) {\n return true;\n }\n return !item['isFold'];\n }) as ButtonOperateItem[];\n }, [operateList]);\n\n const foldList = useMemo(() => {\n const filterList = operateList.filter((item) => {\n if (isValidElement(item)) {\n return false;\n }\n return item['isFold'];\n }) as ButtonOperateItem[];\n const result = [] as ButtonOperateItem[];\n filterList.forEach((item) => {\n const target = { ...item };\n // 多余字段渲染到react dom上,出现警告\n delete target.isFold;\n result.push(target);\n });\n return result;\n }, [operateList]);\n\n const gap = props.gap === undefined ? 10 : props.gap;\n const size = !props.split ? gap : 0;\n\n return (\n <div className={classNames('table-operate', props.className)} style={props.style}>\n <Space\n split={props.split ? <Divider type=\"vertical\" /> : null}\n size={size}\n wrap={isUndefined(props.wrap) ? true : props.wrap}\n {...props.spaceProps}\n >\n {viewList.map((item, index) => {\n if (item && isValidElement(item)) {\n return (\n <ButtonOperateItemContent\n content={item}\n hoverTips={item.hoverTips}\n tipsType={item.tipsType}\n key={index}\n />\n );\n }\n const { text, onClick, needConfirm, confirmMessage, popconfirmProps, hoverTips, ...otherProps } =\n item;\n const type = item.type || 'link';\n if (needConfirm && !otherProps.disabled) {\n const danger = !!item.color ? false : true;\n return (\n <Popconfirm\n okText=\"确定\"\n cancelText=\"取消\"\n trigger={['click']}\n placement=\"topRight\"\n arrow={true}\n destroyTooltipOnHide={true}\n {...popconfirmProps}\n title={confirmMessage}\n onConfirm={onConfirm.bind(null, item)}\n key={index}\n okButtonProps={{\n loading,\n }}\n onOpenChange={(_open) => {\n if (!_open) {\n setLoading(false);\n }\n }}\n onCancel={(event) => {\n event?.stopPropagation();\n }}\n >\n <ButtonWrapper\n danger={danger}\n {...otherProps}\n onClick={(event) => {\n event.stopPropagation();\n }}\n type={type}\n >\n <ButtonOperateItemContent\n content={text}\n hoverTips={hoverTips}\n tipsType={item.tipsType}\n key={index}\n />\n </ButtonWrapper>\n </Popconfirm>\n );\n }\n return (\n <ButtonWrapper\n loadingPosition=\"center\"\n {...otherProps}\n type={type}\n onClick={(event) => {\n event.stopPropagation();\n return onClick?.(event);\n }}\n key={index}\n >\n <ButtonOperateItemContent content={text} hoverTips={hoverTips} tipsType={item.tipsType} />\n </ButtonWrapper>\n );\n })}\n {foldList.length > 0 ? (\n <DropdownMenuWrapper menuList={foldList} placement=\"bottomCenter\" {...props.dropdownMenuProps}>\n <Button\n type=\"link\"\n className=\"fold-more-button\"\n onClick={(event) => {\n event.stopPropagation();\n }}\n >\n {props.foldIcon ? props.foldIcon : <MoreOutlined />}\n </Button>\n </DropdownMenuWrapper>\n ) : null}\n </Space>\n </div>\n );\n};\n\nButtonOperate.defaultProps = {\n split: true,\n};\n"],"names":["ButtonOperateItemContent","props","hoverTips","tipsType","_jsx","Popover","content","zIndex","children","Tooltip","title","isValidElement","Fragment","ButtonOperate","_useState","useState","loading","setLoading","onConfirm","_hooks","useCallbackRef","item","event","result","onClick","_isPromise","finally","operateList","filter","_item$props","_item$props2","permission","_isString","fbaUtils","hasPermission","_isPlainObject","viewList","useMemo","foldList","filterList","forEach","target","_extends","isFold","push","gap","undefined","size","split","className","_classNames","style","_jsxs","Space","Divider","type","wrap","_isUndefined","spaceProps","map","index","text","needConfirm","confirmMessage","popconfirmProps","otherProps","_objectWithoutPropertiesLoose","_excluded","disabled","danger","color","_createElement","Popconfirm","okText","cancelText","trigger","placement","arrow","destroyTooltipOnHide","bind","key","okButtonProps","onOpenChange","_open","onCancel","stopPropagation","ButtonWrapper","loadingPosition","length","DropdownMenuWrapper","menuList","dropdownMenuProps","Button","foldIcon","_MoreOutlined","defaultProps"],"mappings":"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"}
@@ -1,3 +1,3 @@
1
1
  /*! @flatjs/forge MIT @flatbiz/antd */
2
- import{isString as r}from"@dimjs/lang/cjs/is-string";import{isObject as t}from"@dimjs/lang/cjs/is-object";import{get as e}from"@dimjs/utils/cjs/get";import{isPlainObject as n}from"@dimjs/lang/cjs/is-plain-object";import{a as i}from"./_rollupPluginBabelHelpers-1f4d8910.js";import{isNumber as o}from"@dimjs/lang/cjs/is-number";import{isEmpty as a}from"@dimjs/lang/cjs/is-empty";import{isUndefinedOrNull as u,getStrByteLen as l,cutString as f,flatbizDate as c}from"@flatbiz/utils";import{Tooltip as s,Space as m}from"antd";import{Fragment as p}from"react";import{a as v}from"./button-operate-fb40320e.js";import{T as d}from"./tag-list-select-066f682f.js";import{jsx as j}from"react/jsx-runtime";var h=function r(t,e){return function(r){if(a(r)||r==="")return e;if(o(r))return r;var n=r.toString();var i=u(t)?10:t;var c=l(n);if(c<=i*2){return n}return j(s,{placement:"topLeft",title:n,children:f(n,i*2)})}};var g=function r(t){return function(r,e,n){var o=t(e,n);return j(v,i({},o))}};var x=function r(t,e){return function(r){if(a(r)||r==="")return e;try{return c.format(new Date(r),t)}catch(t){return r||e}}};var C=function r(t,e){return function(r,n,i){if(e&&t){return(t-1)*e+i+1}return i+1}};var b=function r(t){return function(r,e,n){var i=(t==null?void 0:t())||{},o=i.pageNo,a=i.pageSize;if(a&&o){return(o-1)*a+n+1}return n+1}};var w=function r(t,e){return function(r){return j(d,{dataList:t,colorMap:e,value:r,forceMatch:false})}};var k=function r(i,o){return function(r){if(n(r)){var a=e(r,i,o);if(!a)return"";if(t(a))return JSON.stringify(a);return a}return r||o}};var N=function t(e){return function(t,n){var i=e==null?void 0:e(n);if(!i)return j(p,{children:t});var o=u(i.showData)?true:i.showData;var a=u(i.notOverflowShowExtra)?true:i.notOverflowShowExtra;var l=u(i.showMaxNumber)?10:i.showMaxNumber;var c=i.extraPosition?i.extraPosition:"after";var s=r(t)?f(t,l*2):t;if(i.extra&&o){if(s===t&&!a){return t}var v=[j("span",{children:s},"1"),j(p,{children:i.extra},"2")];var d=c==="before"?v.reverse():v;return j(m,{onClick:i.onClick,style:{cursor:i.onClick?"pointer":undefined},size:5,children:d.map((function(r,t){return j(p,{children:r},t)}))})}return j("span",{onClick:i.onClick,children:i.extra})}};var S={extraContentRender:N,indexCell:C,serialNumberCell:b,dateCell:x,operateCell:g,tooltipCell:h,selectorCell:w,objectCell:k};export{S as t};
3
- //# sourceMappingURL=cell-render-2a3743af.js.map
2
+ import{isString as r}from"@dimjs/lang/cjs/is-string";import{isObject as t}from"@dimjs/lang/cjs/is-object";import{get as e}from"@dimjs/utils/cjs/get";import{isPlainObject as n}from"@dimjs/lang/cjs/is-plain-object";import{a as i}from"./_rollupPluginBabelHelpers-1f4d8910.js";import{isNumber as o}from"@dimjs/lang/cjs/is-number";import{isEmpty as a}from"@dimjs/lang/cjs/is-empty";import{isUndefinedOrNull as u,getStrByteLen as l,cutString as f,flatbizDate as c}from"@flatbiz/utils";import{Tooltip as s,Space as m}from"antd";import{Fragment as p}from"react";import{a as v}from"./button-operate-81d86480.js";import{T as d}from"./tag-list-select-066f682f.js";import{jsx as j}from"react/jsx-runtime";var h=function r(t,e){return function(r){if(a(r)||r==="")return e;if(o(r))return r;var n=r.toString();var i=u(t)?10:t;var c=l(n);if(c<=i*2){return n}return j(s,{placement:"topLeft",title:n,children:f(n,i*2)})}};var g=function r(t){return function(r,e,n){var o=t(e,n);return j(v,i({},o))}};var x=function r(t,e){return function(r){if(a(r)||r==="")return e;try{return c.format(new Date(r),t)}catch(t){return r||e}}};var C=function r(t,e){return function(r,n,i){if(e&&t){return(t-1)*e+i+1}return i+1}};var b=function r(t){return function(r,e,n){var i=(t==null?void 0:t())||{},o=i.pageNo,a=i.pageSize;if(a&&o){return(o-1)*a+n+1}return n+1}};var w=function r(t,e){return function(r){return j(d,{dataList:t,colorMap:e,value:r,forceMatch:false})}};var k=function r(i,o){return function(r){if(n(r)){var a=e(r,i,o);if(!a)return"";if(t(a))return JSON.stringify(a);return a}return r||o}};var N=function t(e){return function(t,n){var i=e==null?void 0:e(n);if(!i)return j(p,{children:t});var o=u(i.showData)?true:i.showData;var a=u(i.notOverflowShowExtra)?true:i.notOverflowShowExtra;var l=u(i.showMaxNumber)?10:i.showMaxNumber;var c=i.extraPosition?i.extraPosition:"after";var s=r(t)?f(t,l*2):t;if(i.extra&&o){if(s===t&&!a){return t}var v=[j("span",{children:s},"1"),j(p,{children:i.extra},"2")];var d=c==="before"?v.reverse():v;return j(m,{onClick:i.onClick,style:{cursor:i.onClick?"pointer":undefined},size:5,children:d.map((function(r,t){return j(p,{children:r},t)}))})}return j("span",{onClick:i.onClick,children:i.extra})}};var S={extraContentRender:N,indexCell:C,serialNumberCell:b,dateCell:x,operateCell:g,tooltipCell:h,selectorCell:w,objectCell:k};export{S as t};
3
+ //# sourceMappingURL=cell-render-927ade58.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"cell-render-2a3743af.js","sources":["@flatbiz/antd/src/table-cell-render/cell-render.tsx"],"sourcesContent":["import { isEmpty, isNumber, isObject, isPlainObject, isString } from '@dimjs/lang';\nimport { get } from '@dimjs/utils';\nimport {\n cutString,\n DateFormatType,\n flatbizDate,\n getStrByteLen,\n isUndefinedOrNull,\n TAny,\n TPlainObject,\n} from '@flatbiz/utils';\nimport { Space, Tooltip } from 'antd';\nimport { Fragment, ReactElement } from 'react';\nimport { ButtonOperate, ButtonOperateProps } from '../button-operate';\nimport { TagListSelect, TagListSelectProps } from '../tag-list-select';\n\nconst tableColumnTooltipRender = (showMaxNumber?: number, defaultValue?: string) => {\n return (value: string | number) => {\n if (isEmpty(value) || value === '') return defaultValue;\n if (isNumber(value)) return value;\n const colunmText = value.toString();\n const maxNumber = (isUndefinedOrNull(showMaxNumber) ? 10 : showMaxNumber) as number;\n const strByteLen = getStrByteLen(colunmText);\n if (strByteLen <= maxNumber * 2) {\n return colunmText;\n }\n return (\n <Tooltip placement=\"topLeft\" title={colunmText}>\n {cutString(colunmText, maxNumber * 2)}\n </Tooltip>\n );\n };\n};\n\nconst tableColumnOperateRender = (options: (item: TAny, index: number) => ButtonOperateProps) => {\n return (_value: string | number, record, index: number) => {\n const operateProps = options(record, index);\n return <ButtonOperate {...operateProps} />;\n };\n};\n\nconst tableColumnDateRender = (dateFormatType?: DateFormatType, defaultValue?: string) => {\n return (value: string | number) => {\n if (isEmpty(value) || value === '') return defaultValue;\n try {\n return flatbizDate.format(new Date(value), dateFormatType);\n } catch (error) {\n return value || defaultValue;\n }\n };\n};\n\n/**\n * table 索引展示,如果存在pageSize、pageNo参数可分页展示索引,否则每页都从1开始\n * @param pageSize\n * @param pageNo\n * @returns\n */\nconst tableColumnIndexRender = (pageNo?: number, pageSize?: number) => {\n return (_value, _record, index: number) => {\n if (pageSize && pageNo) {\n return (pageNo - 1) * pageSize + index + 1;\n }\n return index + 1;\n };\n};\nconst tableColumnIndexRender2 = (method?: () => { pageNo?: number; pageSize?: number }) => {\n return (_value, _record, index: number) => {\n const { pageNo, pageSize } = method?.() || {};\n if (pageSize && pageNo) {\n return (pageNo - 1) * pageSize + index + 1;\n }\n return index + 1;\n };\n};\n\nconst tableColumnSelectorRender = (\n selectorList: TagListSelectProps['dataList'],\n colorMap?: TagListSelectProps['colorMap'],\n) => {\n return (value: string | number) => {\n return <TagListSelect dataList={selectorList} colorMap={colorMap} value={value} forceMatch={false} />;\n };\n};\n\nconst tableColumnObjectRender = (key: string, defaultValue?: string) => {\n return (value?: TPlainObject) => {\n if (isPlainObject(value)) {\n const target = get(value, key, defaultValue);\n if (!target) return '';\n if (isObject(target)) return JSON.stringify(target);\n return target;\n }\n return value || defaultValue;\n };\n};\n\ntype TableColumnIconRenderProps = {\n /** 额外内容,一般为Icon */\n extra: ReactElement;\n extraPosition?: 'before' | 'after';\n onClick?: (e) => void;\n /** 是否显示原单元格数据,默认值:true */\n showData?: boolean;\n /** 溢出显示【...】, 最大长度(默认:20个字节) */\n showMaxNumber?: number;\n /** 未溢出显示【extra】配置,默认值:true */\n notOverflowShowExtra?: boolean;\n};\n\nconst tableColumnExtraContentRender = (handle: (item: TPlainObject) => TableColumnIconRenderProps) => {\n return (value: TAny, item: TPlainObject) => {\n const options = handle?.(item);\n if (!options) return <Fragment>{value}</Fragment>;\n const showData = isUndefinedOrNull(options.showData) ? true : options.showData;\n const notOverflowShowExtra = isUndefinedOrNull(options.notOverflowShowExtra)\n ? true\n : options.notOverflowShowExtra;\n const showMaxNumber = isUndefinedOrNull(options.showMaxNumber) ? 10 : (options.showMaxNumber as number);\n const extraPosition = options.extraPosition ? options.extraPosition : 'after';\n const renderValue = isString(value) ? cutString(value, showMaxNumber * 2) : value;\n\n if (options.extra && showData) {\n if (renderValue === value && !notOverflowShowExtra) {\n return value;\n }\n const spaceContent = [<span key=\"1\">{renderValue}</span>, <Fragment key=\"2\">{options.extra}</Fragment>];\n const spaceContentRender = extraPosition === 'before' ? spaceContent.reverse() : spaceContent;\n return (\n <Space onClick={options.onClick} style={{ cursor: options.onClick ? 'pointer' : undefined }} size={5}>\n {spaceContentRender.map((item, index) => {\n return <Fragment key={index}>{item}</Fragment>;\n })}\n </Space>\n );\n }\n return <span onClick={options.onClick}>{options.extra}</span>;\n };\n};\n\nexport const tableCellRender = {\n /**\n * 表格单元格 拼接额外内容渲染\n * ```\n * 1. extra 额外内容\n * 2. showData 是否显示原单元格数据,默认值:true\n * 3. showMaxNumber 显示最大长度,作用于原单元格字符串数据\n * ```\n */\n extraContentRender: tableColumnExtraContentRender,\n /**\n * table 索引展示,如果存在pageSize、pageNo参数可分页展示索引,否则每页都从1开始\n * @deprecated 已过时 @4.3.0版本移除,请使用 serialNumberCell\n */\n indexCell: tableColumnIndexRender,\n /**\n * table 序号展示,如果存在pageSize、pageNo参数可分页展示累加序号,否则每页都从1开始\n * ```\n * render: tableCellRender.serialNumberCell(() => {\n * return { pageNo,pageSize };\n * }),\n * ```\n */\n serialNumberCell: tableColumnIndexRender2,\n /**\n * 表格日期格式数据渲染,默认格式:YYYY-MM-DD\n * ```\n * dateFormatType: 日期格式\n * ```\n */\n dateCell: tableColumnDateRender,\n /**\n * table操作栏目渲染\n * ```\n * 使用方式\n * tableCellRender.operateCell((item) => ({\n * operateList: [\n * {\n * text: '编辑',\n * onClick: onItemOperate.bind(null, 'update', item),\n * permission: SystemAdminPermissionEnum.system_admin_edit,\n * },\n * {\n * text: '删除',\n * needConfirm: true,\n * confirmMessage: '确定要删除吗?',\n * onClick: onItemOperate.bind(null, 'delete', item),\n * permission: SystemAdminPermissionEnum.system_admin_delete,\n * },\n * ],\n * }))\n * ```\n */\n operateCell: tableColumnOperateRender,\n /**\n * 实现字段超出隐藏,默认长度10个字符\n * ```\n * 1. showMaxNumber: 显示最大长度\n * 2. 会讲字符转出字节进行计算显示\n * ```\n */\n tooltipCell: tableColumnTooltipRender,\n /**\n * ```\n * 使用方式1\n * tableCellRender.selectorCell([{ label: '已开启', value: 1, color: '#108ee9' }])\n *\n * 使用方式2\n * tableCellRender.selectorCell([{ label: '已开启', value: 1 }], { 1: '#108ee9' })\n * ```\n */\n selectorCell: tableColumnSelectorRender,\n /**\n * 单元格对象数据处理,支持多级处理\n * ```\n * tableCellRender.objectCell('a.b.c')\n * ```\n */\n objectCell: tableColumnObjectRender,\n};\n"],"names":["tableColumnTooltipRender","showMaxNumber","defaultValue","value","_isEmpty","_isNumber","colunmText","toString","maxNumber","isUndefinedOrNull","strByteLen","getStrByteLen","_jsx","Tooltip","placement","title","children","cutString","tableColumnOperateRender","options","_value","record","index","operateProps","ButtonOperate","_extends","tableColumnDateRender","dateFormatType","flatbizDate","format","Date","error","tableColumnIndexRender","pageNo","pageSize","_record","tableColumnIndexRender2","method","_ref","tableColumnSelectorRender","selectorList","colorMap","TagListSelect","dataList","forceMatch","tableColumnObjectRender","key","_isPlainObject","target","_get","_isObject","JSON","stringify","tableColumnExtraContentRender","handle","item","Fragment","showData","notOverflowShowExtra","extraPosition","renderValue","_isString","extra","spaceContent","spaceContentRender","reverse","Space","onClick","style","cursor","undefined","size","map","tableCellRender","extraContentRender","indexCell","serialNumberCell","dateCell","operateCell","tooltipCell","selectorCell","objectCell"],"mappings":"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"}
1
+ {"version":3,"file":"cell-render-927ade58.js","sources":["@flatbiz/antd/src/table-cell-render/cell-render.tsx"],"sourcesContent":["import { isEmpty, isNumber, isObject, isPlainObject, isString } from '@dimjs/lang';\nimport { get } from '@dimjs/utils';\nimport {\n cutString,\n DateFormatType,\n flatbizDate,\n getStrByteLen,\n isUndefinedOrNull,\n TAny,\n TPlainObject,\n} from '@flatbiz/utils';\nimport { Space, Tooltip } from 'antd';\nimport { Fragment, ReactElement } from 'react';\nimport { ButtonOperate, ButtonOperateProps } from '../button-operate';\nimport { TagListSelect, TagListSelectProps } from '../tag-list-select';\n\nconst tableColumnTooltipRender = (showMaxNumber?: number, defaultValue?: string) => {\n return (value: string | number) => {\n if (isEmpty(value) || value === '') return defaultValue;\n if (isNumber(value)) return value;\n const colunmText = value.toString();\n const maxNumber = (isUndefinedOrNull(showMaxNumber) ? 10 : showMaxNumber) as number;\n const strByteLen = getStrByteLen(colunmText);\n if (strByteLen <= maxNumber * 2) {\n return colunmText;\n }\n return (\n <Tooltip placement=\"topLeft\" title={colunmText}>\n {cutString(colunmText, maxNumber * 2)}\n </Tooltip>\n );\n };\n};\n\nconst tableColumnOperateRender = (options: (item: TAny, index: number) => ButtonOperateProps) => {\n return (_value: string | number, record, index: number) => {\n const operateProps = options(record, index);\n return <ButtonOperate {...operateProps} />;\n };\n};\n\nconst tableColumnDateRender = (dateFormatType?: DateFormatType, defaultValue?: string) => {\n return (value: string | number) => {\n if (isEmpty(value) || value === '') return defaultValue;\n try {\n return flatbizDate.format(new Date(value), dateFormatType);\n } catch (error) {\n return value || defaultValue;\n }\n };\n};\n\n/**\n * table 索引展示,如果存在pageSize、pageNo参数可分页展示索引,否则每页都从1开始\n * @param pageSize\n * @param pageNo\n * @returns\n */\nconst tableColumnIndexRender = (pageNo?: number, pageSize?: number) => {\n return (_value, _record, index: number) => {\n if (pageSize && pageNo) {\n return (pageNo - 1) * pageSize + index + 1;\n }\n return index + 1;\n };\n};\nconst tableColumnIndexRender2 = (method?: () => { pageNo?: number; pageSize?: number }) => {\n return (_value, _record, index: number) => {\n const { pageNo, pageSize } = method?.() || {};\n if (pageSize && pageNo) {\n return (pageNo - 1) * pageSize + index + 1;\n }\n return index + 1;\n };\n};\n\nconst tableColumnSelectorRender = (\n selectorList: TagListSelectProps['dataList'],\n colorMap?: TagListSelectProps['colorMap'],\n) => {\n return (value: string | number) => {\n return <TagListSelect dataList={selectorList} colorMap={colorMap} value={value} forceMatch={false} />;\n };\n};\n\nconst tableColumnObjectRender = (key: string, defaultValue?: string) => {\n return (value?: TPlainObject) => {\n if (isPlainObject(value)) {\n const target = get(value, key, defaultValue);\n if (!target) return '';\n if (isObject(target)) return JSON.stringify(target);\n return target;\n }\n return value || defaultValue;\n };\n};\n\ntype TableColumnIconRenderProps = {\n /** 额外内容,一般为Icon */\n extra: ReactElement;\n extraPosition?: 'before' | 'after';\n onClick?: (e) => void;\n /** 是否显示原单元格数据,默认值:true */\n showData?: boolean;\n /** 溢出显示【...】, 最大长度(默认:20个字节) */\n showMaxNumber?: number;\n /** 未溢出显示【extra】配置,默认值:true */\n notOverflowShowExtra?: boolean;\n};\n\nconst tableColumnExtraContentRender = (handle: (item: TPlainObject) => TableColumnIconRenderProps) => {\n return (value: TAny, item: TPlainObject) => {\n const options = handle?.(item);\n if (!options) return <Fragment>{value}</Fragment>;\n const showData = isUndefinedOrNull(options.showData) ? true : options.showData;\n const notOverflowShowExtra = isUndefinedOrNull(options.notOverflowShowExtra)\n ? true\n : options.notOverflowShowExtra;\n const showMaxNumber = isUndefinedOrNull(options.showMaxNumber) ? 10 : (options.showMaxNumber as number);\n const extraPosition = options.extraPosition ? options.extraPosition : 'after';\n const renderValue = isString(value) ? cutString(value, showMaxNumber * 2) : value;\n\n if (options.extra && showData) {\n if (renderValue === value && !notOverflowShowExtra) {\n return value;\n }\n const spaceContent = [<span key=\"1\">{renderValue}</span>, <Fragment key=\"2\">{options.extra}</Fragment>];\n const spaceContentRender = extraPosition === 'before' ? spaceContent.reverse() : spaceContent;\n return (\n <Space onClick={options.onClick} style={{ cursor: options.onClick ? 'pointer' : undefined }} size={5}>\n {spaceContentRender.map((item, index) => {\n return <Fragment key={index}>{item}</Fragment>;\n })}\n </Space>\n );\n }\n return <span onClick={options.onClick}>{options.extra}</span>;\n };\n};\n\nexport const tableCellRender = {\n /**\n * 表格单元格 拼接额外内容渲染\n * ```\n * 1. extra 额外内容\n * 2. showData 是否显示原单元格数据,默认值:true\n * 3. showMaxNumber 显示最大长度,作用于原单元格字符串数据\n * ```\n */\n extraContentRender: tableColumnExtraContentRender,\n /**\n * table 索引展示,如果存在pageSize、pageNo参数可分页展示索引,否则每页都从1开始\n * @deprecated 已过时 4.3.0版本移除,请使用 serialNumberCell\n */\n indexCell: tableColumnIndexRender,\n /**\n * table 序号展示,如果存在pageSize、pageNo参数可分页展示累加序号,否则每页都从1开始\n * ```\n * render: tableCellRender.serialNumberCell(() => {\n * return { pageNo,pageSize };\n * }),\n * ```\n */\n serialNumberCell: tableColumnIndexRender2,\n /**\n * 表格日期格式数据渲染,默认格式:YYYY-MM-DD\n * ```\n * dateFormatType: 日期格式\n * ```\n */\n dateCell: tableColumnDateRender,\n /**\n * table操作栏目渲染\n * ```\n * 使用方式\n * tableCellRender.operateCell((item) => ({\n * operateList: [\n * {\n * text: '编辑',\n * onClick: onItemOperate.bind(null, 'update', item),\n * permission: SystemAdminPermissionEnum.system_admin_edit,\n * },\n * {\n * text: '删除',\n * needConfirm: true,\n * confirmMessage: '确定要删除吗?',\n * onClick: onItemOperate.bind(null, 'delete', item),\n * permission: SystemAdminPermissionEnum.system_admin_delete,\n * },\n * ],\n * }))\n * ```\n */\n operateCell: tableColumnOperateRender,\n /**\n * 实现字段超出隐藏,默认长度10个字符\n * ```\n * 1. showMaxNumber: 显示最大长度\n * 2. 会讲字符转出字节进行计算显示\n * ```\n */\n tooltipCell: tableColumnTooltipRender,\n /**\n * ```\n * 使用方式1\n * tableCellRender.selectorCell([{ label: '已开启', value: 1, color: '#108ee9' }])\n *\n * 使用方式2\n * tableCellRender.selectorCell([{ label: '已开启', value: 1 }], { 1: '#108ee9' })\n * ```\n */\n selectorCell: tableColumnSelectorRender,\n /**\n * 单元格对象数据处理,支持多级处理\n * ```\n * tableCellRender.objectCell('a.b.c')\n * ```\n */\n objectCell: tableColumnObjectRender,\n};\n"],"names":["tableColumnTooltipRender","showMaxNumber","defaultValue","value","_isEmpty","_isNumber","colunmText","toString","maxNumber","isUndefinedOrNull","strByteLen","getStrByteLen","_jsx","Tooltip","placement","title","children","cutString","tableColumnOperateRender","options","_value","record","index","operateProps","ButtonOperate","_extends","tableColumnDateRender","dateFormatType","flatbizDate","format","Date","error","tableColumnIndexRender","pageNo","pageSize","_record","tableColumnIndexRender2","method","_ref","tableColumnSelectorRender","selectorList","colorMap","TagListSelect","dataList","forceMatch","tableColumnObjectRender","key","_isPlainObject","target","_get","_isObject","JSON","stringify","tableColumnExtraContentRender","handle","item","Fragment","showData","notOverflowShowExtra","extraPosition","renderValue","_isString","extra","spaceContent","spaceContentRender","reverse","Space","onClick","style","cursor","undefined","size","map","tableCellRender","extraContentRender","indexCell","serialNumberCell","dateCell","operateCell","tooltipCell","selectorCell","objectCell"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["@flatbiz/antd/src/create-drawer-wrapper-model/drawer.model.ts","@flatbiz/antd/src/create-drawer-wrapper-model/index.ts"],"sourcesContent":["import { ModelType } from '@dimjs/model';\n\nexport interface DrawerStateType {\n title: string;\n /**\n * 显示drawer\n */\n open: boolean;\n /**\n * 用来处理form, `更新`的时候的传递当前item列表行的数据, 当`创建`的时候强制设置为 `undefined`\n */\n itemData?: Record<string, any>;\n operateType: 'create' | 'update' | 'view' | null;\n pageLoading?: boolean;\n}\n\nexport interface DrawerActionsParamType {\n openDrawerForm: Pick<DrawerStateType, 'title' | 'itemData' | 'operateType' | 'pageLoading'>;\n closeDrawer: void;\n setDrawerItemData: Record<string, any>;\n}\n\n/**\n * @shared\n * 提供公共的drawer处理, 通常用来表单编辑, 弹窗抽屉模式.\n * 注意全部理论上只允许一个drawer实例存在,如需处理多个, 请自行实例话模型.\n */\nexport const DrawerModel: ModelType<DrawerStateType, DrawerActionsParamType> = {\n actions: {\n openDrawerForm({ itemData, title, operateType, pageLoading }) {\n return (state) => {\n state.itemData = itemData;\n state.title = title;\n state.operateType = operateType;\n state.pageLoading = pageLoading;\n state.open = true;\n };\n },\n closeDrawer() {\n return (state) => {\n state.open = false;\n };\n },\n setDrawerItemData(params) {\n return (state) => {\n state.pageLoading = false;\n state.itemData = params;\n };\n },\n },\n state: {\n open: false,\n title: '',\n operateType: null,\n },\n};\n","import { API, ModelType } from '@dimjs/model';\nimport { Model } from '@dimjs/model-react';\nimport { DrawerActionsParamType, DrawerModel, DrawerStateType } from './drawer.model';\n\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nconst drawerModels: Record<string, API<ModelType<DrawerStateType, DrawerActionsParamType, any>>> = {};\n\n/**\n * drawer弹窗模型\n * @param key 唯一值必传\n * @returns\n * @deprecated 废弃 DrawerWrapper @4.3.0版本移除\n *\n * ```\n * 使用方式\n * const [drawerState, drawerActions] = createDrawerWrapperModel('key值').useStore();\n * ```\n */\nexport const createDrawerWrapperModel = (key: string) => {\n if (!drawerModels[key]) {\n drawerModels[key] = Model(DrawerModel);\n }\n return drawerModels[key];\n};\n"],"names":["DrawerModel","actions","openDrawerForm","_ref","itemData","title","operateType","pageLoading","state","open","closeDrawer","setDrawerItemData","params","drawerModels","createDrawerWrapperModel","key","Model"],"mappings":";2CA2BO,IAAMA,EAAkE,CAC7EC,QAAS,CACPC,eAAc,SAAAA,EAAAC,GAAgD,IAA7CC,EAAQD,EAARC,SAAUC,EAAKF,EAALE,MAAOC,EAAWH,EAAXG,YAAaC,EAAWJ,EAAXI,YAC7C,OAAO,SAACC,GACNA,EAAMJ,SAAWA,EACjBI,EAAMH,MAAQA,EACdG,EAAMF,YAAcA,EACpBE,EAAMD,YAAcA,EACpBC,EAAMC,KAAO,KAEhB,EACDC,YAAW,SAAAA,IACT,OAAO,SAACF,GACNA,EAAMC,KAAO,MAEhB,EACDE,kBAAiB,SAAAA,EAACC,GAChB,OAAO,SAACJ,GACNA,EAAMD,YAAc,MACpBC,EAAMJ,SAAWQ,EAErB,GAEFJ,MAAO,CACLC,KAAM,MACNJ,MAAO,GACPC,YAAa,OChDjB,IAAMO,EAA6F,CAAA,MAatFC,EAA2B,SAA3BA,EAA4BC,GACvC,IAAKF,EAAaE,GAAM,CACtBF,EAAaE,GAAOC,EAAMhB,EAC5B,CACA,OAAOa,EAAaE,EACtB"}
1
+ {"version":3,"file":"index.js","sources":["@flatbiz/antd/src/create-drawer-wrapper-model/drawer.model.ts","@flatbiz/antd/src/create-drawer-wrapper-model/index.ts"],"sourcesContent":["import { ModelType } from '@dimjs/model';\n\nexport interface DrawerStateType {\n title: string;\n /**\n * 显示drawer\n */\n open: boolean;\n /**\n * 用来处理form, `更新`的时候的传递当前item列表行的数据, 当`创建`的时候强制设置为 `undefined`\n */\n itemData?: Record<string, any>;\n operateType: 'create' | 'update' | 'view' | null;\n pageLoading?: boolean;\n}\n\nexport interface DrawerActionsParamType {\n openDrawerForm: Pick<DrawerStateType, 'title' | 'itemData' | 'operateType' | 'pageLoading'>;\n closeDrawer: void;\n setDrawerItemData: Record<string, any>;\n}\n\n/**\n * @shared\n * 提供公共的drawer处理, 通常用来表单编辑, 弹窗抽屉模式.\n * 注意全部理论上只允许一个drawer实例存在,如需处理多个, 请自行实例话模型.\n */\nexport const DrawerModel: ModelType<DrawerStateType, DrawerActionsParamType> = {\n actions: {\n openDrawerForm({ itemData, title, operateType, pageLoading }) {\n return (state) => {\n state.itemData = itemData;\n state.title = title;\n state.operateType = operateType;\n state.pageLoading = pageLoading;\n state.open = true;\n };\n },\n closeDrawer() {\n return (state) => {\n state.open = false;\n };\n },\n setDrawerItemData(params) {\n return (state) => {\n state.pageLoading = false;\n state.itemData = params;\n };\n },\n },\n state: {\n open: false,\n title: '',\n operateType: null,\n },\n};\n","import { API, ModelType } from '@dimjs/model';\nimport { Model } from '@dimjs/model-react';\nimport { DrawerActionsParamType, DrawerModel, DrawerStateType } from './drawer.model';\n\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nconst drawerModels: Record<string, API<ModelType<DrawerStateType, DrawerActionsParamType, any>>> = {};\n\n/**\n * drawer弹窗模型\n * @param key 唯一值必传\n * @returns\n * @deprecated 废弃 DrawerWrapper 4.3.0版本移除\n *\n * ```\n * 使用方式\n * const [drawerState, drawerActions] = createDrawerWrapperModel('key值').useStore();\n * ```\n */\nexport const createDrawerWrapperModel = (key: string) => {\n if (!drawerModels[key]) {\n drawerModels[key] = Model(DrawerModel);\n }\n return drawerModels[key];\n};\n"],"names":["DrawerModel","actions","openDrawerForm","_ref","itemData","title","operateType","pageLoading","state","open","closeDrawer","setDrawerItemData","params","drawerModels","createDrawerWrapperModel","key","Model"],"mappings":";2CA2BO,IAAMA,EAAkE,CAC7EC,QAAS,CACPC,eAAc,SAAAA,EAAAC,GAAgD,IAA7CC,EAAQD,EAARC,SAAUC,EAAKF,EAALE,MAAOC,EAAWH,EAAXG,YAAaC,EAAWJ,EAAXI,YAC7C,OAAO,SAACC,GACNA,EAAMJ,SAAWA,EACjBI,EAAMH,MAAQA,EACdG,EAAMF,YAAcA,EACpBE,EAAMD,YAAcA,EACpBC,EAAMC,KAAO,KAEhB,EACDC,YAAW,SAAAA,IACT,OAAO,SAACF,GACNA,EAAMC,KAAO,MAEhB,EACDE,kBAAiB,SAAAA,EAACC,GAChB,OAAO,SAACJ,GACNA,EAAMD,YAAc,MACpBC,EAAMJ,SAAWQ,EAErB,GAEFJ,MAAO,CACLC,KAAM,MACNJ,MAAO,GACPC,YAAa,OChDjB,IAAMO,EAA6F,CAAA,MAatFC,EAA2B,SAA3BA,EAA4BC,GACvC,IAAKF,EAAaE,GAAM,CACtBF,EAAaE,GAAOC,EAAMhB,EAC5B,CACA,OAAOa,EAAaE,EACtB"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["@flatbiz/antd/src/create-modal-wrapper-model/modal.model.ts","@flatbiz/antd/src/create-modal-wrapper-model/index.ts"],"sourcesContent":["import { ModelType } from '@dimjs/model';\n\nexport interface ModalStateType {\n title?: string;\n /**\n * 显示modal\n */\n open: boolean;\n /**\n * 用来处理form, `更新`的时候的传递当前item列表行的数据, 当`创建`的时候强制设置为 `undefined`\n */\n itemData?: Record<string, unknown> | null;\n operateType: 'create' | 'update' | 'view';\n pageLoading?: boolean;\n}\n\nexport interface ModalActionsParamType {\n openModalForm: Pick<ModalStateType, 'title' | 'itemData' | 'operateType' | 'pageLoading'>;\n closeModal: void;\n setModalItemData: Record<string, unknown>;\n}\n\n/**\n * @shared\n * 提供公共的modal处理, 通常用来表单编辑, 弹窗抽屉模式.\n * 注意全部理论上只允许一个modal实例存在,如需处理多个, 请自行实例话模型.\n */\nexport const ModalModel: ModelType<ModalStateType, ModalActionsParamType> = {\n actions: {\n openModalForm({ itemData, title, operateType, pageLoading }) {\n return (state) => {\n state.itemData = itemData;\n state.title = title;\n state.operateType = operateType;\n state.pageLoading = pageLoading;\n state.open = true;\n };\n },\n closeModal() {\n return (state) => {\n state.open = false;\n };\n },\n setModalItemData(params) {\n return (state) => {\n state.pageLoading = false;\n state.itemData = params;\n };\n },\n },\n state: {\n open: false,\n title: '',\n operateType: 'view',\n },\n};\n","import { API, ModelType } from '@dimjs/model';\nimport { Model } from '@dimjs/model-react';\nimport { ModalActionsParamType, ModalModel, ModalStateType } from './modal.model';\n\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nconst modalModels: Record<string, API<ModelType<ModalStateType, ModalActionsParamType, any>>> = {};\n\n/**\n * modal弹窗模型\n * @param key 唯一值必传\n * @deprecated 废弃 ModalWrapper @4.3.0版本移除\n *\n * ```\n * 使用方式\n * const [modalState, modalActions] = createModalWrapperModel('key值').useStore();\n * ```\n */\nexport const createModalWrapperModel = (key: string) => {\n if (!modalModels[key]) {\n modalModels[key] = Model(ModalModel);\n }\n return modalModels[key];\n};\n"],"names":["ModalModel","actions","openModalForm","_ref","itemData","title","operateType","pageLoading","state","open","closeModal","setModalItemData","params","modalModels","createModalWrapperModel","key","Model"],"mappings":";2CA2BO,IAAMA,EAA+D,CAC1EC,QAAS,CACPC,cAAa,SAAAA,EAAAC,GAAgD,IAA7CC,EAAQD,EAARC,SAAUC,EAAKF,EAALE,MAAOC,EAAWH,EAAXG,YAAaC,EAAWJ,EAAXI,YAC5C,OAAO,SAACC,GACNA,EAAMJ,SAAWA,EACjBI,EAAMH,MAAQA,EACdG,EAAMF,YAAcA,EACpBE,EAAMD,YAAcA,EACpBC,EAAMC,KAAO,KAEhB,EACDC,WAAU,SAAAA,IACR,OAAO,SAACF,GACNA,EAAMC,KAAO,MAEhB,EACDE,iBAAgB,SAAAA,EAACC,GACf,OAAO,SAACJ,GACNA,EAAMD,YAAc,MACpBC,EAAMJ,SAAWQ,EAErB,GAEFJ,MAAO,CACLC,KAAM,MACNJ,MAAO,GACPC,YAAa,SChDjB,IAAMO,EAA0F,CAAA,MAYnFC,EAA0B,SAA1BA,EAA2BC,GACtC,IAAKF,EAAYE,GAAM,CACrBF,EAAYE,GAAOC,EAAMhB,EAC3B,CACA,OAAOa,EAAYE,EACrB"}
1
+ {"version":3,"file":"index.js","sources":["@flatbiz/antd/src/create-modal-wrapper-model/modal.model.ts","@flatbiz/antd/src/create-modal-wrapper-model/index.ts"],"sourcesContent":["import { ModelType } from '@dimjs/model';\n\nexport interface ModalStateType {\n title?: string;\n /**\n * 显示modal\n */\n open: boolean;\n /**\n * 用来处理form, `更新`的时候的传递当前item列表行的数据, 当`创建`的时候强制设置为 `undefined`\n */\n itemData?: Record<string, unknown> | null;\n operateType: 'create' | 'update' | 'view';\n pageLoading?: boolean;\n}\n\nexport interface ModalActionsParamType {\n openModalForm: Pick<ModalStateType, 'title' | 'itemData' | 'operateType' | 'pageLoading'>;\n closeModal: void;\n setModalItemData: Record<string, unknown>;\n}\n\n/**\n * @shared\n * 提供公共的modal处理, 通常用来表单编辑, 弹窗抽屉模式.\n * 注意全部理论上只允许一个modal实例存在,如需处理多个, 请自行实例话模型.\n */\nexport const ModalModel: ModelType<ModalStateType, ModalActionsParamType> = {\n actions: {\n openModalForm({ itemData, title, operateType, pageLoading }) {\n return (state) => {\n state.itemData = itemData;\n state.title = title;\n state.operateType = operateType;\n state.pageLoading = pageLoading;\n state.open = true;\n };\n },\n closeModal() {\n return (state) => {\n state.open = false;\n };\n },\n setModalItemData(params) {\n return (state) => {\n state.pageLoading = false;\n state.itemData = params;\n };\n },\n },\n state: {\n open: false,\n title: '',\n operateType: 'view',\n },\n};\n","import { API, ModelType } from '@dimjs/model';\nimport { Model } from '@dimjs/model-react';\nimport { ModalActionsParamType, ModalModel, ModalStateType } from './modal.model';\n\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nconst modalModels: Record<string, API<ModelType<ModalStateType, ModalActionsParamType, any>>> = {};\n\n/**\n * modal弹窗模型\n * @param key 唯一值必传\n * @deprecated 废弃 ModalWrapper 4.3.0版本移除\n *\n * ```\n * 使用方式\n * const [modalState, modalActions] = createModalWrapperModel('key值').useStore();\n * ```\n */\nexport const createModalWrapperModel = (key: string) => {\n if (!modalModels[key]) {\n modalModels[key] = Model(ModalModel);\n }\n return modalModels[key];\n};\n"],"names":["ModalModel","actions","openModalForm","_ref","itemData","title","operateType","pageLoading","state","open","closeModal","setModalItemData","params","modalModels","createModalWrapperModel","key","Model"],"mappings":";2CA2BO,IAAMA,EAA+D,CAC1EC,QAAS,CACPC,cAAa,SAAAA,EAAAC,GAAgD,IAA7CC,EAAQD,EAARC,SAAUC,EAAKF,EAALE,MAAOC,EAAWH,EAAXG,YAAaC,EAAWJ,EAAXI,YAC5C,OAAO,SAACC,GACNA,EAAMJ,SAAWA,EACjBI,EAAMH,MAAQA,EACdG,EAAMF,YAAcA,EACpBE,EAAMD,YAAcA,EACpBC,EAAMC,KAAO,KAEhB,EACDC,WAAU,SAAAA,IACR,OAAO,SAACF,GACNA,EAAMC,KAAO,MAEhB,EACDE,iBAAgB,SAAAA,EAACC,GACf,OAAO,SAACJ,GACNA,EAAMD,YAAc,MACpBC,EAAMJ,SAAWQ,EAErB,GAEFJ,MAAO,CACLC,KAAM,MACNJ,MAAO,GACPC,YAAa,SChDjB,IAAMO,EAA0F,CAAA,MAYnFC,EAA0B,SAA1BA,EAA2BC,GACtC,IAAKF,EAAYE,GAAM,CACrBF,EAAYE,GAAOC,EAAMhB,EAC3B,CACA,OAAOa,EAAYE,EACrB"}
@@ -1 +1 @@
1
- .drag-collapse-wrapper{border:1px solid #d9d9d9;border-radius:8px;overflow:hidden}.drag-collapse-wrapper .drag-collapse{border:none}.drag-collapse-wrapper .drag-collapse>.ant-collapse-item{border-radius:0}.drag-collapse-wrapper .droppable-item .draggable-item:last-child .ant-collapse-item{border:none}
1
+ .drag-collapse-wrapper{border:1px solid #d9d9d9;border-radius:8px;overflow:hidden}.drag-collapse-wrapper .drag-collapse{background-color:#fafafa}.drag-collapse-wrapper .drag-collapse>.ant-collapse-item{border-radius:0}.drag-collapse-wrapper .drag-collapse .ant-collapse-header{align-items:center;border-radius:0}.drag-collapse-wrapper .drag-collapse .ant-collapse-content{border-radius:0}.drag-collapse-wrapper .drag-collapse .ant-collapse-header-text{align-items:center;display:flex}.drag-collapse-wrapper .drag-collapse .dc-drag-header-content{flex:1}.drag-collapse-wrapper .drag-collapse:not(.overlay-sortable-item){border:none;border-radius:0}.drag-collapse-wrapper .dc-drag-trigger{align-items:center;border-radius:6px;cursor:move;display:inline-flex;font-size:16px;height:30px;justify-content:center;margin-right:5px;width:30px}.drag-collapse-wrapper .dc-drag-trigger:hover{background-color:rgba(0,0,0,.1)}.drag-collapse-wrapper .drag-collapse-grap *{opacity:.7!important}.drag-collapse-wrapper .overlay-sortable-item{border:none;border-radius:6px;box-shadow:0 0 12px 4px rgba(34,33,81,.1)}.drag-collapse-wrapper .overlay-sortable-item .ant-collapse-item{border-bottom:none}.drag-collapse-wrapper .overlay-sortable-item .dc-drag-trigger{background-color:transparent}.drag-collapse-wrapper .drag-collapse-last .ant-collapse-item{border-bottom:none}
@@ -1,8 +1,6 @@
1
1
  /* eslint-disable */
2
- import './../drag-drop/index.css';
3
- import './../fba-utils/index.css';
4
2
  import './../fba-hooks/index.css';
5
3
  import './index.css';
6
4
  /*! @flatjs/forge MIT @flatbiz/antd */
7
- export{D as DragCollapse}from"../drag-collapse-8d751c2b.js";import"@dimjs/utils/cjs/class-names";import"@dimjs/utils/cjs/array";import"@ant-design/icons/es/icons/DragOutlined";import"@wove/react/cjs/hooks";import"@flatbiz/antd";import"@flatbiz/utils";import"antd";import"react";import"../drag-drop/index.js";import"../fba-utils-f9e11d02.js";import"@dimjs/lang/cjs/is-array";import"@hello-pangea/dnd";import"../droppable-item-708ec229.js";import"../_rollupPluginBabelHelpers-1f4d8910.js";import"react/jsx-runtime";import"../fba-hooks/index.js";import"../use-responsive-point-21b8c601.js";
5
+ export{D as DragCollapse}from"../drag-collapse-433fb1e0.js";import"@dimjs/utils/cjs/class-names";import"@dimjs/utils/cjs/array";import"@wove/react/cjs/hooks";import"@dnd-kit/core";import"@dnd-kit/sortable";import"@flatbiz/utils";import"react";import"../fba-hooks/index.js";import"../_rollupPluginBabelHelpers-1f4d8910.js";import"@dimjs/lang/cjs/is-array";import"../use-responsive-point-21b8c601.js";import"antd";import"@ant-design/icons/es/icons/DragOutlined";import"@dnd-kit/utilities";import"react/jsx-runtime";
8
6
  //# sourceMappingURL=index.js.map
@@ -0,0 +1,3 @@
1
+ /*! @flatjs/forge MIT @flatbiz/antd */
2
+ import{classNames as e}from"@dimjs/utils/cjs/class-names";import{array as a}from"@dimjs/utils/cjs/array";import{hooks as n}from"@wove/react/cjs/hooks";import{DndContext as i,closestCenter as r,DragOverlay as t}from"@dnd-kit/core";import{useSortable as o,SortableContext as d,verticalListSortingStrategy as s,arrayMove as l}from"@dnd-kit/sortable";import{toArray as c}from"@flatbiz/utils";import{Collapse as m,Form as u}from"antd";import{Fragment as f,useState as p,useRef as g,useMemo as v}from"react";import{fbaHooks as h}from"./fba-hooks/index.js";import{a as I}from"./_rollupPluginBabelHelpers-1f4d8910.js";import D from"@ant-design/icons/es/icons/DragOutlined";import{CSS as b}from"@dnd-kit/utilities";import{jsx as x,jsxs as y}from"react/jsx-runtime";function N(a){var n;var i=a.isOverlay?false:a.getItemDragDisabled==null?void 0:a.getItemDragDisabled(a.uid,a.index);var r=o({id:a.uid,disabled:i}),t=r.listeners,d=r.setNodeRef,s=r.transform,l=r.transition;var c=function e(){var n=a.dragIcon?a.dragIcon:x(D,{});var i=a.header({formListFieldData:a.formListFieldData,operation:a.formListOperate,uid:a.uid,formStageCompleteName:a.formStageCompleteName});return a.dragDisabled?i:y(f,{children:[x("span",I({className:"dc-drag-trigger"},t,{children:n})),x("span",{className:"dc-drag-header-content",style:a.headerStyle,children:i})]})};var u=I({transform:b.Transform.toString(s),transition:l},a.style);var p=e("drag-collapse",{"drag-collapse-grap":a.isGray,"drag-collapse-last":a.isLast,"drag-collapse-drag-disabled":i},a.className);return x(m,{activeKey:a.isActive?a.uid:undefined,accordion:true,className:p,collapsible:a.collapsible,expandIcon:a.expandIcon,expandIconPosition:a.expandIconPosition,size:a.size,onChange:(n=a.onChange)==null?void 0:n.bind(null,a.uid),style:I({},u),ref:d,children:x(m.Panel,{header:c(),children:a.content({formListFieldData:a.formListFieldData,operation:a.formListOperate,uid:a.uid,formStageCompleteName:a.formStageCompleteName})},a.uid)})}var C=function o(m){var I=p(),D=I[0],b=I[1];var C=p([]),L=C[0],F=C[1];var S=u.useFormInstance();var j=g([]);h.useEffectCustom((function(){var e=c(m.defaultActiveKey);if(!m.activeKey&&e.length>0){F(e)}else{F(c(m.activeKey))}}),[]);n.useUpdateEffect((function(){F(c(m.activeKey))}),[m.activeKey]);var P=function e(n){var i=[];if(m.accordion){if(L[0]&&L[0]===n){i=[]}else{i=[n]}}else{var r=L.includes(n);if(r){a.arrayRemove(L,n);i=[].concat(L)}else{i=L.concat(n)}}F(i);if(m.accordion){m.onChange==null?void 0:m.onChange(i.length?i[0]:undefined)}else{m.onChange==null?void 0:m.onChange(i.length?i:undefined)}};function k(e){var a=e.active;b(a.id)}var z=n.useCallbackRef((function(){return S.getFieldValue(m.formListName)||[]}));function O(e){var a=e.active,n=e.over;var i=z();if(a.id!==n.id){var r=i.findIndex((function(e){return e.uid===a.id}));var t=i.findIndex((function(e){return e.uid===n.id}));var o=l(i,r,t);S.setFields([{name:m.formListName,value:o}]);m.onDropChange==null?void 0:m.onDropChange(o)}b(undefined)}var K=v((function(){if(!D)return undefined;var e=z();var a=e.findIndex((function(e){return e.uid===D}));return j.current.find((function(e){return e.name===a}))}),[D,z]);return x("div",{className:e("drag-collapse-formlist-wrapper",m.className),style:m.style,children:x(i,{collisionDetection:r,onDragStart:k,onDragEnd:O,children:x(u.List,{name:m.formListName,children:function e(a,n){j.current=a;return y(f,{children:[x(d,{items:z().map((function(e){return e.uid})),strategy:s,children:x(f,{children:a.map((function(e,a){var i=z()[a].uid;return x(N,{formListOperate:n,formListFieldData:e,uid:i,isActive:L.includes(i),collapsible:m.collapsible,expandIcon:m.expandIcon,expandIconPosition:m.expandIconPosition,size:m.size,dragIcon:m.dragIcon,getItemDragDisabled:m.getItemDragDisabled,dragDisabled:m.dragDisabled,onChange:P,isGray:i===D,isLast:a===z().length-1,header:m.header,content:m.content,index:a,formStageCompleteName:[].concat(c(m.formListName),[e.name])},i+"-"+e.key)}))})}),x(t,{dropAnimation:{duration:0},children:D&&K?x(N,{isOverlay:true,uid:D,className:"overlay-sortable-item",formListFieldData:K,isActive:L.includes(D),collapsible:m.collapsible,expandIcon:m.expandIcon,expandIconPosition:m.expandIconPosition,size:m.size,dragIcon:m.dragIcon,onChange:P,header:m.header,content:m.content,formListOperate:null,index:0,formStageCompleteName:[].concat(c(m.formListName),[K.name])},D):null})]})}})})})};export{C as D};
3
+ //# sourceMappingURL=drag-collapse-24ccfe8c.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"drag-collapse-24ccfe8c.js","sources":["@flatbiz/antd/src/drag-collapse-form-list/sortable-item.tsx","@flatbiz/antd/src/drag-collapse-form-list/drag-collapse.tsx"],"sourcesContent":["import { DragOutlined } from '@ant-design/icons';\nimport { classNames } from '@dimjs/utils';\nimport { useSortable } from '@dnd-kit/sortable';\nimport { CSS } from '@dnd-kit/utilities';\nimport { Collapse, FormListFieldData, FormListOperation } from 'antd';\nimport { CSSProperties, Fragment } from 'react';\nimport { DragCollapseFormListProps } from './types';\nexport type SortableItemProps = {\n formListFieldData: FormListFieldData;\n formListOperate: FormListOperation;\n onChange: (activeKey: number | string) => void;\n header: DragCollapseFormListProps['header'];\n content: DragCollapseFormListProps['content'];\n collapsible?: DragCollapseFormListProps['collapsible'];\n expandIcon?: DragCollapseFormListProps['expandIcon'];\n expandIconPosition?: DragCollapseFormListProps['expandIconPosition'];\n size?: DragCollapseFormListProps['size'];\n dragIcon?: DragCollapseFormListProps['dragIcon'];\n getItemDragDisabled?: DragCollapseFormListProps['getItemDragDisabled'];\n dragDisabled?: DragCollapseFormListProps['dragDisabled'];\n isGray?: boolean;\n isLast?: boolean;\n className?: string;\n style?: CSSProperties;\n uid: string | number;\n isActive?: boolean;\n headerStyle?: CSSProperties;\n index: number;\n isOverlay?: boolean;\n formStageCompleteName: string | number | (string | number)[];\n};\nexport function SortableItem(props: SortableItemProps) {\n const isDisabled = props.isOverlay ? false : props.getItemDragDisabled?.(props.uid, props.index);\n const { listeners, setNodeRef, transform, transition } = useSortable({\n id: props.uid,\n disabled: isDisabled,\n });\n\n const header = () => {\n const dragIcon = props.dragIcon ? props.dragIcon : <DragOutlined />;\n const headerContent = props.header({\n formListFieldData: props.formListFieldData,\n operation: props.formListOperate,\n uid: props.uid,\n formStageCompleteName: props.formStageCompleteName,\n });\n return props.dragDisabled ? (\n headerContent\n ) : (\n <Fragment>\n <span className=\"dc-drag-trigger\" {...listeners}>\n {dragIcon}\n </span>\n <span className=\"dc-drag-header-content\" style={props.headerStyle}>\n {headerContent}\n </span>\n </Fragment>\n );\n };\n\n const style = {\n transform: CSS.Transform.toString(transform),\n transition,\n ...props.style,\n };\n\n const cname = classNames(\n 'drag-collapse',\n {\n 'drag-collapse-grap': props.isGray,\n 'drag-collapse-last': props.isLast,\n 'drag-collapse-drag-disabled': isDisabled,\n },\n props.className,\n );\n return (\n <Collapse\n activeKey={props.isActive ? props.uid : undefined}\n accordion\n className={cname}\n collapsible={props.collapsible}\n expandIcon={props.expandIcon}\n expandIconPosition={props.expandIconPosition}\n size={props.size}\n onChange={props.onChange?.bind(null, props.uid)}\n style={{ ...style }}\n ref={setNodeRef}\n >\n <Collapse.Panel header={header()} key={props.uid}>\n {props.content({\n formListFieldData: props.formListFieldData,\n operation: props.formListOperate,\n uid: props.uid,\n formStageCompleteName: props.formStageCompleteName,\n })}\n </Collapse.Panel>\n </Collapse>\n );\n}\n","import { array, classNames } from '@dimjs/utils';\nimport { closestCenter, DndContext, DragOverlay } from '@dnd-kit/core';\nimport { arrayMove, SortableContext, verticalListSortingStrategy } from '@dnd-kit/sortable';\nimport { TAny, toArray, TPlainObject } from '@flatbiz/utils';\nimport { hooks } from '@wove/react';\nimport { Form, FormListFieldData } from 'antd';\nimport { Fragment, useMemo, useRef, useState } from 'react';\nimport { fbaHooks } from '../fba-hooks';\nimport { SortableItem } from './sortable-item';\nimport './style.less';\nimport { DragCollapseFormListProps } from './types';\n\n/**\n * 可拖拽 折叠面板+FormList\n * ```\n * 1. FormList数组中必须要有 uid 唯一值字段\n * ```\n */\nexport const DragCollapseFormList = (props: DragCollapseFormListProps) => {\n const [dragActiveId, setDragActiveId] = useState<string | number>();\n const [openKeys, setOpenKeys] = useState<(number | string)[]>([]);\n const form = Form.useFormInstance();\n const formListOperationRef = useRef<FormListFieldData[]>([]);\n\n fbaHooks.useEffectCustom(() => {\n const defaultActiveKeys = toArray<string | number>(props.defaultActiveKey);\n if (!props.activeKey && defaultActiveKeys.length > 0) {\n setOpenKeys(defaultActiveKeys);\n } else {\n setOpenKeys(toArray(props.activeKey));\n }\n }, []);\n\n hooks.useUpdateEffect(() => {\n setOpenKeys(toArray(props.activeKey));\n }, [props.activeKey]);\n\n const onChange = (key: number | string) => {\n let openKeysNew: (number | string)[] = [];\n if (props.accordion) {\n if (openKeys[0] && openKeys[0] === key) {\n openKeysNew = [];\n } else {\n openKeysNew = [key];\n }\n } else {\n const has = openKeys.includes(key);\n if (has) {\n array.arrayRemove(openKeys, key);\n openKeysNew = [...openKeys];\n } else {\n openKeysNew = openKeys.concat(key);\n }\n }\n setOpenKeys(openKeysNew);\n if (props.accordion) {\n props.onChange?.(openKeysNew.length ? openKeysNew[0] : undefined);\n } else {\n props.onChange?.(openKeysNew.length ? openKeysNew : undefined);\n }\n };\n\n function handleDragStart(event) {\n const { active } = event;\n setDragActiveId(active.id);\n }\n\n const getItems = hooks.useCallbackRef(() => {\n return (form.getFieldValue(props.formListName) || []) as TPlainObject[];\n });\n\n function handleDragEnd(event) {\n const { active, over } = event;\n const items = getItems();\n if (active.id !== over.id) {\n const oldIndex = items.findIndex((item) => item.uid === active.id);\n const newIndex = items.findIndex((item) => item.uid === over.id);\n const newList = arrayMove<TPlainObject>(items, oldIndex, newIndex);\n form.setFields([\n {\n name: props.formListName,\n value: newList,\n },\n ]);\n props.onDropChange?.(newList);\n }\n setDragActiveId(undefined);\n }\n\n const dragOverlayItem = useMemo(() => {\n if (!dragActiveId) return undefined;\n const items = getItems();\n const targetIndex = items.findIndex((item) => item.uid === dragActiveId);\n return formListOperationRef.current.find((item) => item.name === targetIndex);\n }, [dragActiveId, getItems]);\n\n return (\n <div className={classNames('drag-collapse-formlist-wrapper', props.className)} style={props.style}>\n <DndContext collisionDetection={closestCenter} onDragStart={handleDragStart} onDragEnd={handleDragEnd}>\n <Form.List name={props.formListName}>\n {(fields, operate) => {\n formListOperationRef.current = fields;\n return (\n <Fragment>\n <SortableContext\n items={getItems().map((temp) => temp.uid)}\n strategy={verticalListSortingStrategy}\n >\n <Fragment>\n {fields.map((item, index) => {\n const uid = getItems()[index].uid;\n return (\n <SortableItem\n formListOperate={operate}\n formListFieldData={item}\n uid={uid}\n key={`${uid}-${item.key}`}\n isActive={openKeys.includes(uid)}\n collapsible={props.collapsible}\n expandIcon={props.expandIcon}\n expandIconPosition={props.expandIconPosition}\n size={props.size}\n dragIcon={props.dragIcon}\n getItemDragDisabled={props.getItemDragDisabled}\n dragDisabled={props.dragDisabled}\n onChange={onChange}\n isGray={uid === dragActiveId}\n isLast={index === getItems().length - 1}\n header={props.header}\n content={props.content}\n index={index}\n formStageCompleteName={[...toArray<string | number>(props.formListName), item.name]}\n />\n );\n })}\n </Fragment>\n </SortableContext>\n <DragOverlay dropAnimation={{ duration: 0 }}>\n {dragActiveId && dragOverlayItem ? (\n <SortableItem\n isOverlay={true}\n uid={dragActiveId}\n key={dragActiveId}\n className=\"overlay-sortable-item\"\n formListFieldData={dragOverlayItem}\n isActive={openKeys.includes(dragActiveId)}\n collapsible={props.collapsible}\n expandIcon={props.expandIcon}\n expandIconPosition={props.expandIconPosition}\n size={props.size}\n dragIcon={props.dragIcon}\n onChange={onChange}\n header={props.header}\n content={props.content}\n formListOperate={null as TAny}\n index={0}\n formStageCompleteName={[\n ...toArray<string | number>(props.formListName),\n dragOverlayItem.name,\n ]}\n />\n ) : null}\n </DragOverlay>\n </Fragment>\n );\n }}\n </Form.List>\n </DndContext>\n </div>\n );\n};\n"],"names":["SortableItem","props","_props$onChange","isDisabled","isOverlay","getItemDragDisabled","uid","index","_useSortable","useSortable","id","disabled","listeners","setNodeRef","transform","transition","header","dragIcon","_jsx","_DragOutlined","headerContent","formListFieldData","operation","formListOperate","formStageCompleteName","dragDisabled","_jsxs","Fragment","children","_extends","className","style","headerStyle","CSS","Transform","toString","cname","_classNames","isGray","isLast","Collapse","activeKey","isActive","undefined","accordion","collapsible","expandIcon","expandIconPosition","size","onChange","bind","ref","Panel","content","DragCollapseFormList","_useState","useState","dragActiveId","setDragActiveId","_useState2","openKeys","setOpenKeys","form","Form","useFormInstance","formListOperationRef","useRef","fbaHooks","useEffectCustom","defaultActiveKeys","toArray","defaultActiveKey","length","_hooks","useUpdateEffect","key","openKeysNew","has","includes","_array","arrayRemove","concat","handleDragStart","event","active","getItems","useCallbackRef","getFieldValue","formListName","handleDragEnd","over","items","oldIndex","findIndex","item","newIndex","newList","arrayMove","setFields","name","value","onDropChange","dragOverlayItem","useMemo","targetIndex","current","find","DndContext","collisionDetection","closestCenter","onDragStart","onDragEnd","List","fields","operate","SortableContext","map","temp","strategy","verticalListSortingStrategy","DragOverlay","dropAnimation","duration"],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ /*! @flatjs/forge MIT @flatbiz/antd */
2
+ import{classNames as e}from"@dimjs/utils/cjs/class-names";import{array as n}from"@dimjs/utils/cjs/array";import{hooks as i}from"@wove/react/cjs/hooks";import{DndContext as a,closestCenter as o,DragOverlay as r}from"@dnd-kit/core";import{useSortable as t,SortableContext as s,verticalListSortingStrategy as c,arrayMove as l}from"@dnd-kit/sortable";import{toArray as d}from"@flatbiz/utils";import{Fragment as m,useState as f}from"react";import{fbaHooks as p}from"./fba-hooks/index.js";import{a as u}from"./_rollupPluginBabelHelpers-1f4d8910.js";import g from"@ant-design/icons/es/icons/DragOutlined";import{CSS as v}from"@dnd-kit/utilities";import{Collapse as h}from"antd";import{jsx as y,jsxs as I}from"react/jsx-runtime";function k(n){var i;var a=t({id:n.item.key}),o=a.listeners,r=a.setNodeRef,s=a.transform,c=a.transition;var l=function e(i){var a=n.dragIcon?n.dragIcon:y(g,{});return n.hideDragIcon?i.content:I(m,{children:[y("span",u({className:"dc-drag-trigger"},o,{children:a})),y("span",{className:"dc-drag-header-content",children:i.content})]})};var d=u({transform:v.Transform.toString(s),transition:c},n.style);var f=n.openKeys.includes(n.item.key);var p=e("drag-collapse",{"drag-collapse-grap":n.isGray,"drag-collapse-last":n.isLast},n.className);return y(h,{activeKey:f?n.item.key:undefined,accordion:true,className:p,collapsible:n.collapsible,expandIcon:n.expandIcon,expandIconPosition:n.expandIconPosition,size:n.size,onChange:(i=n.onChange)==null?void 0:i.bind(null,n.item.key),style:u({},d),ref:r,children:y(h.Panel,{header:l(n.item),children:n.item.content},n.item.key)})}var x=function t(m){var u=f(),g=u[0],v=u[1];var h=f([]),x=h[0],b=h[1];p.useEffectCustom((function(){var e=d(m.defaultActiveKey);if(!m.activeKey&&e.length>0){b(e)}else{b(d(m.activeKey))}}),[]);i.useUpdateEffect((function(){b(d(m.activeKey))}),[m.activeKey]);var C=i.useCallbackRef((function(e){var i=[];if(m.accordion){if(x[0]&&x[0]===e){i=[]}else{i=[e]}}else{var a=x.includes(e);if(a){n.arrayRemove(x,e);i=[].concat(x)}else{i=x.concat(e)}}b(i);if(m.accordion){m.onChange==null?void 0:m.onChange(i.length?i[0]:undefined)}else{m.onChange==null?void 0:m.onChange(i.length?i:undefined)}}));function D(e){var n=e.active;v(n.id)}function K(e){var n=e.active,i=e.over;if(n.id!==i.id){var a=m.items.findIndex((function(e){return e.key===n.id}));var o=m.items.findIndex((function(e){return e.key===i.id}));var r=l(m.items,a,o);m.onDropChange(r)}v(undefined)}return y("div",{className:e("drag-collapse-wrapper",m.className),style:m.style,children:I(a,{collisionDetection:o,onDragStart:D,onDragEnd:K,children:[y(s,{items:m.items.map((function(e){return e.key})),strategy:c,children:m.items.map((function(e,n){return y(k,{item:e,openKeys:x,collapsible:m.collapsible,expandIcon:m.expandIcon,expandIconPosition:m.expandIconPosition,size:m.size,dragIcon:m.dragIcon,hideDragIcon:m.hideDragIcon,onChange:C,isGray:e.key===g,isLast:n===m.items.length-1},e.key)}))}),y(r,{dropAnimation:{duration:0},children:g?y(k,{className:"overlay-sortable-item",item:m.items.filter((function(e){return e.key===g}))[0],openKeys:x,collapsible:m.collapsible,expandIcon:m.expandIcon,expandIconPosition:m.expandIconPosition,size:m.size,dragIcon:m.dragIcon,hideDragIcon:m.hideDragIcon,onChange:C},g):null})]})})};export{x as D};
3
+ //# sourceMappingURL=drag-collapse-433fb1e0.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"drag-collapse-433fb1e0.js","sources":["@flatbiz/antd/src/drag-collapse/sortable-item.tsx","@flatbiz/antd/src/drag-collapse/drag-collapse.tsx"],"sourcesContent":["import { DragOutlined } from '@ant-design/icons';\nimport { classNames } from '@dimjs/utils';\nimport { useSortable } from '@dnd-kit/sortable';\nimport { CSS } from '@dnd-kit/utilities';\nimport { Collapse } from 'antd';\nimport { CSSProperties, Fragment } from 'react';\nimport { DragCollapseItem, DragCollapseItemKey, DragCollapseProps } from './types';\ntype SortableItemProps = {\n openKeys: DragCollapseItemKey[];\n style?: CSSProperties;\n item: DragCollapseItem;\n collapsible?: DragCollapseProps['collapsible'];\n expandIcon?: DragCollapseProps['expandIcon'];\n expandIconPosition?: DragCollapseProps['expandIconPosition'];\n size?: DragCollapseProps['size'];\n dragIcon?: DragCollapseProps['dragIcon'];\n hideDragIcon?: DragCollapseProps['hideDragIcon'];\n onChange: (activeKey: DragCollapseItemKey) => void;\n isGray?: boolean;\n className?: string;\n isLast?: boolean;\n};\nexport function SortableItem(props: SortableItemProps) {\n const { listeners, setNodeRef, transform, transition } = useSortable({\n id: props.item.key,\n });\n\n const header = (item: DragCollapseItem) => {\n const dragIcon = props.dragIcon ? props.dragIcon : <DragOutlined />;\n return props.hideDragIcon ? (\n item.content\n ) : (\n <Fragment>\n <span className=\"dc-drag-trigger\" {...listeners}>\n {dragIcon}\n </span>\n <span className=\"dc-drag-header-content\">{item.content}</span>\n </Fragment>\n );\n };\n\n const style = {\n transform: CSS.Transform.toString(transform),\n transition,\n ...props.style,\n };\n\n const isActive = props.openKeys.includes(props.item.key);\n const cname = classNames(\n 'drag-collapse',\n { 'drag-collapse-grap': props.isGray, 'drag-collapse-last': props.isLast },\n props.className,\n );\n return (\n <Collapse\n activeKey={isActive ? props.item.key : undefined}\n accordion\n className={cname}\n collapsible={props.collapsible}\n expandIcon={props.expandIcon}\n expandIconPosition={props.expandIconPosition}\n size={props.size}\n onChange={props.onChange?.bind(null, props.item.key)}\n style={{ ...style }}\n ref={setNodeRef}\n >\n <Collapse.Panel header={header(props.item)} key={props.item.key}>\n {props.item.content}\n </Collapse.Panel>\n </Collapse>\n );\n}\n","import { array, classNames } from '@dimjs/utils';\nimport { closestCenter, DndContext, DragOverlay } from '@dnd-kit/core';\nimport { arrayMove, SortableContext, verticalListSortingStrategy } from '@dnd-kit/sortable';\nimport { toArray } from '@flatbiz/utils';\nimport { hooks } from '@wove/react';\nimport { useState } from 'react';\nimport { fbaHooks } from '../fba-hooks';\nimport { SortableItem } from './sortable-item';\nimport './style.less';\nimport { DragCollapseItemKey, DragCollapseProps } from './types';\n\n/**\n * 可拖拽 折叠面板\n * @param props\n * @returns\n */\nexport const DragCollapse = (props: DragCollapseProps) => {\n const [dragActiveId, setDragActiveId] = useState<string | number>();\n const [openKeys, setOpenKeys] = useState<DragCollapseItemKey[]>([]);\n\n fbaHooks.useEffectCustom(() => {\n const defaultActiveKeys = toArray<string | number>(props.defaultActiveKey);\n if (!props.activeKey && defaultActiveKeys.length > 0) {\n setOpenKeys(defaultActiveKeys);\n } else {\n setOpenKeys(toArray(props.activeKey));\n }\n }, []);\n\n hooks.useUpdateEffect(() => {\n setOpenKeys(toArray(props.activeKey));\n }, [props.activeKey]);\n\n const onChange = hooks.useCallbackRef((key: DragCollapseItemKey) => {\n let openKeysNew: DragCollapseItemKey[] = [];\n if (props.accordion) {\n if (openKeys[0] && openKeys[0] === key) {\n openKeysNew = [];\n } else {\n openKeysNew = [key];\n }\n } else {\n const has = openKeys.includes(key);\n if (has) {\n array.arrayRemove(openKeys, key);\n openKeysNew = [...openKeys];\n } else {\n openKeysNew = openKeys.concat(key);\n }\n }\n setOpenKeys(openKeysNew);\n if (props.accordion) {\n props.onChange?.(openKeysNew.length ? openKeysNew[0] : undefined);\n } else {\n props.onChange?.(openKeysNew.length ? openKeysNew : undefined);\n }\n });\n\n function handleDragStart(event) {\n const { active } = event;\n setDragActiveId(active.id);\n }\n\n function handleDragEnd(event) {\n const { active, over } = event;\n if (active.id !== over.id) {\n const oldIndex = props.items.findIndex((item) => item.key === active.id);\n const newIndex = props.items.findIndex((item) => item.key === over.id);\n const newList = arrayMove(props.items, oldIndex, newIndex);\n props.onDropChange(newList);\n }\n setDragActiveId(undefined);\n }\n\n return (\n <div className={classNames('drag-collapse-wrapper', props.className)} style={props.style}>\n <DndContext collisionDetection={closestCenter} onDragStart={handleDragStart} onDragEnd={handleDragEnd}>\n <SortableContext items={props.items.map((item) => item.key)} strategy={verticalListSortingStrategy}>\n {props.items.map((item, index) => (\n <SortableItem\n key={item.key}\n item={item}\n openKeys={openKeys}\n collapsible={props.collapsible}\n expandIcon={props.expandIcon}\n expandIconPosition={props.expandIconPosition}\n size={props.size}\n dragIcon={props.dragIcon}\n hideDragIcon={props.hideDragIcon}\n onChange={onChange}\n isGray={item.key === dragActiveId}\n isLast={index === props.items.length - 1}\n />\n ))}\n </SortableContext>\n\n <DragOverlay dropAnimation={{ duration: 0 }}>\n {dragActiveId ? (\n <SortableItem\n className=\"overlay-sortable-item\"\n key={dragActiveId}\n item={props.items.filter((item) => item.key === dragActiveId)[0]}\n openKeys={openKeys}\n collapsible={props.collapsible}\n expandIcon={props.expandIcon}\n expandIconPosition={props.expandIconPosition}\n size={props.size}\n dragIcon={props.dragIcon}\n hideDragIcon={props.hideDragIcon}\n onChange={onChange}\n />\n ) : null}\n </DragOverlay>\n </DndContext>\n </div>\n );\n};\n"],"names":["SortableItem","props","_props$onChange","_useSortable","useSortable","id","item","key","listeners","setNodeRef","transform","transition","header","dragIcon","_jsx","_DragOutlined","hideDragIcon","content","_jsxs","Fragment","children","_extends","className","style","CSS","Transform","toString","isActive","openKeys","includes","cname","_classNames","isGray","isLast","Collapse","activeKey","undefined","accordion","collapsible","expandIcon","expandIconPosition","size","onChange","bind","ref","Panel","DragCollapse","_useState","useState","dragActiveId","setDragActiveId","_useState2","setOpenKeys","fbaHooks","useEffectCustom","defaultActiveKeys","toArray","defaultActiveKey","length","_hooks","useUpdateEffect","useCallbackRef","openKeysNew","has","_array","arrayRemove","concat","handleDragStart","event","active","handleDragEnd","over","oldIndex","items","findIndex","newIndex","newList","arrayMove","onDropChange","DndContext","collisionDetection","closestCenter","onDragStart","onDragEnd","SortableContext","map","strategy","verticalListSortingStrategy","index","DragOverlay","dropAnimation","duration","filter"],"mappings":"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"}
@@ -0,0 +1 @@
1
+ .drag-collapse-formlist-wrapper{border:1px solid #d9d9d9;border-radius:8px;overflow:hidden}.drag-collapse-formlist-wrapper .drag-collapse{background-color:#fafafa}.drag-collapse-formlist-wrapper .drag-collapse>.ant-collapse-item{border-radius:0}.drag-collapse-formlist-wrapper .drag-collapse .ant-collapse-header{align-items:center;border-radius:0}.drag-collapse-formlist-wrapper .drag-collapse .ant-collapse-content{border-radius:0}.drag-collapse-formlist-wrapper .drag-collapse .ant-collapse-header-text{align-items:center;display:flex}.drag-collapse-formlist-wrapper .drag-collapse .dc-drag-header-content{flex:1}.drag-collapse-formlist-wrapper .drag-collapse:not(.overlay-sortable-item){border:none;border-radius:0}.drag-collapse-formlist-wrapper .dc-drag-trigger{align-items:center;border-radius:6px;cursor:move;display:inline-flex;font-size:16px;height:30px;justify-content:center;margin-right:5px;width:30px}.drag-collapse-formlist-wrapper .dc-drag-trigger:hover{background-color:rgba(0,0,0,.1)}.drag-collapse-formlist-wrapper .drag-collapse-grap *{opacity:.7!important}.drag-collapse-formlist-wrapper .overlay-sortable-item{border:none;border-radius:6px;box-shadow:0 0 12px 4px rgba(34,33,81,.1)}.drag-collapse-formlist-wrapper .overlay-sortable-item .ant-collapse-item{border-bottom:none}.drag-collapse-formlist-wrapper .overlay-sortable-item .dc-drag-trigger{background-color:transparent}.drag-collapse-formlist-wrapper .drag-collapse-last .ant-collapse-item{border-bottom:none}.drag-collapse-formlist-wrapper .drag-collapse-drag-disabled .dc-drag-trigger{cursor:no-drop;opacity:.6}
@@ -0,0 +1,6 @@
1
+ /* eslint-disable */
2
+ import './../fba-hooks/index.css';
3
+ import './index.css';
4
+ /*! @flatjs/forge MIT @flatbiz/antd */
5
+ export{D as DragCollapseFormList}from"../drag-collapse-24ccfe8c.js";import"@dimjs/utils/cjs/class-names";import"@dimjs/utils/cjs/array";import"@wove/react/cjs/hooks";import"@dnd-kit/core";import"@dnd-kit/sortable";import"@flatbiz/utils";import"antd";import"react";import"../fba-hooks/index.js";import"../_rollupPluginBabelHelpers-1f4d8910.js";import"@dimjs/lang/cjs/is-array";import"../use-responsive-point-21b8c601.js";import"@ant-design/icons/es/icons/DragOutlined";import"@dnd-kit/utilities";import"react/jsx-runtime";
6
+ //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"drawer-wrapper-9af2f178.js","sources":["@flatbiz/antd/src/drawer-wrapper/drawer-operation.tsx","@flatbiz/antd/src/drawer-wrapper/drawer-wrapper.tsx"],"sourcesContent":["import { SaveOutlined } from '@ant-design/icons';\nimport { Button, ButtonProps, Space } from 'antd';\n\nexport interface DrawerOperationProps {\n loading?: boolean;\n okText?: string;\n cancelText?: string;\n onOk?: () => void;\n onCancel?: () => void;\n hideOkBtn?: boolean;\n okButtonProps?: Omit<ButtonProps, 'onClick' | 'loading' | 'className'>;\n cancelButtonProps?: Omit<ButtonProps, 'onClick' | 'loading' | 'className'>;\n}\n\nexport const DrawerOperation = (props: DrawerOperationProps) => {\n return (\n <div className=\"fixed-bottom-block\">\n <Space size=\"middle\">\n <Button {...props.cancelButtonProps} className=\"cancel-btn\" onClick={props.onCancel}>\n {props.cancelText || '取消'}\n </Button>\n {props.hideOkBtn != true && (\n <Button\n type=\"primary\"\n icon={<SaveOutlined />}\n {...props.okButtonProps}\n className=\"ok-btn\"\n onClick={props.onOk}\n loading={props.loading}\n >\n {props.okText || '提交'}\n </Button>\n )}\n </Space>\n </div>\n );\n};\n","import { classNames } from '@dimjs/utils';\nimport { Drawer, DrawerProps } from 'antd';\nimport { FC, Fragment, ReactNode } from 'react';\nimport { fbaHooks } from '../fba-hooks';\nimport { DrawerOperation, DrawerOperationProps } from './drawer-operation';\nimport './style.less';\n\ntype DrawerWrapperStaticMethods = {\n Content: typeof DrawerWrapperContent;\n Footer: typeof DrawerWrapperFooter;\n};\n\nexport type DrawerWrapperProps = {\n className?: string;\n /**\n * 整个drawer页面级的spinning <Page loading />\n */\n pageLoading?: boolean;\n} & Omit<DrawerProps, 'footer'>;\n\nconst PageLoader = () => {\n return (\n <div className=\"drawer-wrapper-loader\">\n <div className=\"loader-wrapper\">\n <div className=\"loader-inner\" />\n <div className=\"loader-text\">LOADING</div>\n </div>\n </div>\n );\n};\n\nconst DrawerWrapperContent = (props: { operationProps?: DrawerOperationProps; children?: ReactNode }) => {\n return (\n <Fragment>\n <div className=\"drawer-wrapper-content\">{props.children}</div>\n {props.operationProps ? (\n <DrawerWrapperFooter>\n <DrawerOperation {...props.operationProps} />\n </DrawerWrapperFooter>\n ) : null}\n </Fragment>\n );\n};\n\nconst DrawerWrapperFooter = (props) => {\n return <div className=\"drawer-wrapper-footer\">{props.children}</div>;\n};\n\n/**\n * 弹窗机制\n * @deprecated 已过时 @4.3.0版本移除;请使用 dialogDrawer.open\n * ```\n * 1. 默认 destroyOnClose = true\n * 2. 默认 forceRender = false\n * 3. 如果设置 forceRender = true,会导致弹框中的接口提前调用\n *\n * 注意\n * 1. <Drawer /> 默认关闭后状态不会自动清空, 如果希望每次打开都是新内容,请设置 destroyOnClose。\n * 2. <Drawer /> 和 Form 一起配合使用时,设置 destroyOnClose 也不会在 Drawer 关闭时销毁表单字段数据,需要设置 <Form preserve={false} />。\n *\n * ```\n */\nexport const DrawerWrapper: FC<DrawerWrapperProps> & DrawerWrapperStaticMethods = (props) => {\n const { pageLoading, className, width = 600, children, ...otherProps } = props;\n\n fbaHooks.useEffectCustom(() => {\n if (props['operationProps']) {\n throw new Error('DrawerWrapper组件升级,参数operationProps用法变更,请及时更新');\n }\n }, []);\n\n return (\n <Drawer\n className={classNames('drawer-wrapper', className)}\n keyboard={false}\n destroyOnClose={true}\n forceRender={false}\n width={'80%'}\n contentWrapperStyle={{ maxWidth: width }}\n size=\"default\"\n {...otherProps}\n footer={null}\n >\n {pageLoading && <PageLoader />}\n {children}\n </Drawer>\n );\n};\n\nDrawerWrapper.Content = DrawerWrapperContent;\nDrawerWrapper.Footer = DrawerWrapperFooter;\n"],"names":["DrawerOperation","props","_jsx","className","children","_jsxs","Space","size","Button","_extends","cancelButtonProps","onClick","onCancel","cancelText","hideOkBtn","type","icon","_SaveOutlined","okButtonProps","onOk","loading","okText","PageLoader","DrawerWrapperContent","Fragment","operationProps","DrawerWrapperFooter","DrawerWrapper","pageLoading","_props$width","width","otherProps","_objectWithoutPropertiesLoose","_excluded","fbaHooks","useEffectCustom","Error","Drawer","_classNames","keyboard","destroyOnClose","forceRender","contentWrapperStyle","maxWidth","footer","Content","Footer"],"mappings":";4WAcO,IAAMA,EAAkB,SAAlBA,EAAmBC,GAC9B,OACEC,EAAA,MAAA,CAAKC,UAAU,qBAAoBC,SACjCC,EAACC,EAAK,CAACC,KAAK,SAAQH,SAAA,CAClBF,EAACM,EAAMC,EAAA,CAAA,EAAKR,EAAMS,kBAAiB,CAAEP,UAAU,aAAaQ,QAASV,EAAMW,SAASR,SACjFH,EAAMY,YAAc,QAEtBZ,EAAMa,WAAa,MAClBZ,EAACM,EAAMC,EAAA,CACLM,KAAK,UACLC,KAAMd,EAAAe,EAAA,KACFhB,EAAMiB,cAAa,CACvBf,UAAU,SACVQ,QAASV,EAAMkB,KACfC,QAASnB,EAAMmB,QAAQhB,SAEtBH,EAAMoB,QAAU,YAM7B,uDChBA,IAAMC,EAAa,SAAbA,IACJ,OACEpB,EAAA,MAAA,CAAKC,UAAU,wBAAuBC,SACpCC,EAAA,MAAA,CAAKF,UAAU,iBAAgBC,UAC7BF,EAAA,MAAA,CAAKC,UAAU,iBACfD,EAAA,MAAA,CAAKC,UAAU,cAAaC,SAAC,gBAIrC,EAEA,IAAMmB,EAAuB,SAAvBA,EAAwBtB,GAC5B,OACEI,EAACmB,EAAQ,CAAApB,UACPF,EAAA,MAAA,CAAKC,UAAU,yBAAwBC,SAAEH,EAAMG,WAC9CH,EAAMwB,eACLvB,EAACwB,EAAmB,CAAAtB,SAClBF,EAACF,EAAeS,EAAA,CAAA,EAAKR,EAAMwB,mBAE3B,OAGV,EAEA,IAAMC,EAAsB,SAAtBA,EAAuBzB,GAC3B,OAAOC,EAAA,MAAA,CAAKC,UAAU,wBAAuBC,SAAEH,EAAMG,UACvD,MAgBauB,EAAqE,SAArEA,EAAsE1B,GACjF,IAAQ2B,EAAiE3B,EAAjE2B,YAAazB,EAAoDF,EAApDE,UAAS0B,EAA2C5B,EAAzC6B,MAAAA,EAAKD,SAAG,EAAA,IAAGA,EAAEzB,EAA4BH,EAA5BG,SAAa2B,EAAUC,EAAK/B,EAAKgC,GAE9EC,EAASC,iBAAgB,WACvB,GAAIlC,EAAM,kBAAmB,CAC3B,MAAM,IAAImC,MAAM,+CAClB,CACD,GAAE,IAEH,OACE/B,EAACgC,EAAM5B,EAAA,CACLN,UAAWmC,EAAW,iBAAkBnC,GACxCoC,SAAU,MACVC,eAAgB,KAChBC,YAAa,MACbX,MAAO,MACPY,oBAAqB,CAAEC,SAAUb,GACjCvB,KAAK,WACDwB,EAAU,CACda,OAAQ,KAAKxC,SAAA,CAEZwB,GAAe1B,EAACoB,EAAU,CAAA,GAC1BlB,KAGP,EAEAuB,EAAckB,QAAUtB,EACxBI,EAAcmB,OAASpB"}
1
+ {"version":3,"file":"drawer-wrapper-9af2f178.js","sources":["@flatbiz/antd/src/drawer-wrapper/drawer-operation.tsx","@flatbiz/antd/src/drawer-wrapper/drawer-wrapper.tsx"],"sourcesContent":["import { SaveOutlined } from '@ant-design/icons';\nimport { Button, ButtonProps, Space } from 'antd';\n\nexport interface DrawerOperationProps {\n loading?: boolean;\n okText?: string;\n cancelText?: string;\n onOk?: () => void;\n onCancel?: () => void;\n hideOkBtn?: boolean;\n okButtonProps?: Omit<ButtonProps, 'onClick' | 'loading' | 'className'>;\n cancelButtonProps?: Omit<ButtonProps, 'onClick' | 'loading' | 'className'>;\n}\n\nexport const DrawerOperation = (props: DrawerOperationProps) => {\n return (\n <div className=\"fixed-bottom-block\">\n <Space size=\"middle\">\n <Button {...props.cancelButtonProps} className=\"cancel-btn\" onClick={props.onCancel}>\n {props.cancelText || '取消'}\n </Button>\n {props.hideOkBtn != true && (\n <Button\n type=\"primary\"\n icon={<SaveOutlined />}\n {...props.okButtonProps}\n className=\"ok-btn\"\n onClick={props.onOk}\n loading={props.loading}\n >\n {props.okText || '提交'}\n </Button>\n )}\n </Space>\n </div>\n );\n};\n","import { classNames } from '@dimjs/utils';\nimport { Drawer, DrawerProps } from 'antd';\nimport { FC, Fragment, ReactNode } from 'react';\nimport { fbaHooks } from '../fba-hooks';\nimport { DrawerOperation, DrawerOperationProps } from './drawer-operation';\nimport './style.less';\n\ntype DrawerWrapperStaticMethods = {\n Content: typeof DrawerWrapperContent;\n Footer: typeof DrawerWrapperFooter;\n};\n\nexport type DrawerWrapperProps = {\n className?: string;\n /**\n * 整个drawer页面级的spinning <Page loading />\n */\n pageLoading?: boolean;\n} & Omit<DrawerProps, 'footer'>;\n\nconst PageLoader = () => {\n return (\n <div className=\"drawer-wrapper-loader\">\n <div className=\"loader-wrapper\">\n <div className=\"loader-inner\" />\n <div className=\"loader-text\">LOADING</div>\n </div>\n </div>\n );\n};\n\nconst DrawerWrapperContent = (props: { operationProps?: DrawerOperationProps; children?: ReactNode }) => {\n return (\n <Fragment>\n <div className=\"drawer-wrapper-content\">{props.children}</div>\n {props.operationProps ? (\n <DrawerWrapperFooter>\n <DrawerOperation {...props.operationProps} />\n </DrawerWrapperFooter>\n ) : null}\n </Fragment>\n );\n};\n\nconst DrawerWrapperFooter = (props) => {\n return <div className=\"drawer-wrapper-footer\">{props.children}</div>;\n};\n\n/**\n * 弹窗机制\n * @deprecated 已过时 4.3.0版本移除;请使用 dialogDrawer.open\n * ```\n * 1. 默认 destroyOnClose = true\n * 2. 默认 forceRender = false\n * 3. 如果设置 forceRender = true,会导致弹框中的接口提前调用\n *\n * 注意\n * 1. <Drawer /> 默认关闭后状态不会自动清空, 如果希望每次打开都是新内容,请设置 destroyOnClose。\n * 2. <Drawer /> 和 Form 一起配合使用时,设置 destroyOnClose 也不会在 Drawer 关闭时销毁表单字段数据,需要设置 <Form preserve={false} />。\n *\n * ```\n */\nexport const DrawerWrapper: FC<DrawerWrapperProps> & DrawerWrapperStaticMethods = (props) => {\n const { pageLoading, className, width = 600, children, ...otherProps } = props;\n\n fbaHooks.useEffectCustom(() => {\n if (props['operationProps']) {\n throw new Error('DrawerWrapper组件升级,参数operationProps用法变更,请及时更新');\n }\n }, []);\n\n return (\n <Drawer\n className={classNames('drawer-wrapper', className)}\n keyboard={false}\n destroyOnClose={true}\n forceRender={false}\n width={'80%'}\n contentWrapperStyle={{ maxWidth: width }}\n size=\"default\"\n {...otherProps}\n footer={null}\n >\n {pageLoading && <PageLoader />}\n {children}\n </Drawer>\n );\n};\n\nDrawerWrapper.Content = DrawerWrapperContent;\nDrawerWrapper.Footer = DrawerWrapperFooter;\n"],"names":["DrawerOperation","props","_jsx","className","children","_jsxs","Space","size","Button","_extends","cancelButtonProps","onClick","onCancel","cancelText","hideOkBtn","type","icon","_SaveOutlined","okButtonProps","onOk","loading","okText","PageLoader","DrawerWrapperContent","Fragment","operationProps","DrawerWrapperFooter","DrawerWrapper","pageLoading","_props$width","width","otherProps","_objectWithoutPropertiesLoose","_excluded","fbaHooks","useEffectCustom","Error","Drawer","_classNames","keyboard","destroyOnClose","forceRender","contentWrapperStyle","maxWidth","footer","Content","Footer"],"mappings":";4WAcO,IAAMA,EAAkB,SAAlBA,EAAmBC,GAC9B,OACEC,EAAA,MAAA,CAAKC,UAAU,qBAAoBC,SACjCC,EAACC,EAAK,CAACC,KAAK,SAAQH,SAAA,CAClBF,EAACM,EAAMC,EAAA,CAAA,EAAKR,EAAMS,kBAAiB,CAAEP,UAAU,aAAaQ,QAASV,EAAMW,SAASR,SACjFH,EAAMY,YAAc,QAEtBZ,EAAMa,WAAa,MAClBZ,EAACM,EAAMC,EAAA,CACLM,KAAK,UACLC,KAAMd,EAAAe,EAAA,KACFhB,EAAMiB,cAAa,CACvBf,UAAU,SACVQ,QAASV,EAAMkB,KACfC,QAASnB,EAAMmB,QAAQhB,SAEtBH,EAAMoB,QAAU,YAM7B,uDChBA,IAAMC,EAAa,SAAbA,IACJ,OACEpB,EAAA,MAAA,CAAKC,UAAU,wBAAuBC,SACpCC,EAAA,MAAA,CAAKF,UAAU,iBAAgBC,UAC7BF,EAAA,MAAA,CAAKC,UAAU,iBACfD,EAAA,MAAA,CAAKC,UAAU,cAAaC,SAAC,gBAIrC,EAEA,IAAMmB,EAAuB,SAAvBA,EAAwBtB,GAC5B,OACEI,EAACmB,EAAQ,CAAApB,UACPF,EAAA,MAAA,CAAKC,UAAU,yBAAwBC,SAAEH,EAAMG,WAC9CH,EAAMwB,eACLvB,EAACwB,EAAmB,CAAAtB,SAClBF,EAACF,EAAeS,EAAA,CAAA,EAAKR,EAAMwB,mBAE3B,OAGV,EAEA,IAAMC,EAAsB,SAAtBA,EAAuBzB,GAC3B,OAAOC,EAAA,MAAA,CAAKC,UAAU,wBAAuBC,SAAEH,EAAMG,UACvD,MAgBauB,EAAqE,SAArEA,EAAsE1B,GACjF,IAAQ2B,EAAiE3B,EAAjE2B,YAAazB,EAAoDF,EAApDE,UAAS0B,EAA2C5B,EAAzC6B,MAAAA,EAAKD,SAAG,EAAA,IAAGA,EAAEzB,EAA4BH,EAA5BG,SAAa2B,EAAUC,EAAK/B,EAAKgC,GAE9EC,EAASC,iBAAgB,WACvB,GAAIlC,EAAM,kBAAmB,CAC3B,MAAM,IAAImC,MAAM,+CAClB,CACD,GAAE,IAEH,OACE/B,EAACgC,EAAM5B,EAAA,CACLN,UAAWmC,EAAW,iBAAkBnC,GACxCoC,SAAU,MACVC,eAAgB,KAChBC,YAAa,MACbX,MAAO,MACPY,oBAAqB,CAAEC,SAAUb,GACjCvB,KAAK,WACDwB,EAAU,CACda,OAAQ,KAAKxC,SAAA,CAEZwB,GAAe1B,EAACoB,EAAU,CAAA,GAC1BlB,KAGP,EAEAuB,EAAckB,QAAUtB,EACxBI,EAAcmB,OAASpB"}
@@ -0,0 +1 @@
1
+ .dropdown-menu-wrapper .ant-dropdown-menu-item{padding:0!important}.dropdown-menu-wrapper .dmw-item-button{padding:5px 12px!important;text-align:left!important;width:100%!important}
@@ -8,5 +8,5 @@ import './../dialog-modal/index.css';
8
8
  import './../flex-layout/index.css';
9
9
  import './index.css';
10
10
  /*! @flatjs/forge MIT @flatbiz/antd */
11
- export{D as DropdownMenuWrapper}from"../dropdown-menu-wrapper-98347af8.js";import"@ant-design/icons/es/icons/ExclamationCircleFilled";import"../_rollupPluginBabelHelpers-1f4d8910.js";import"@wove/react/cjs/hooks";import"antd";import"react";import"../button-wrapper-125fce50.js";import"@ant-design/icons/es/icons/LoadingOutlined";import"@dimjs/lang/cjs/is-promise";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-f9e11d02.js";import"../dialog-confirm-74fc9337.js";import"@dimjs/utils/cjs/class-names";import"../dialog-modal-4a0c72c5.js";import"@dimjs/lang/cjs/is-string";import"ahooks";import"react-dom/client";import"../flex-layout-8d2b668b.js";
11
+ export{D as DropdownMenuWrapper}from"../dropdown-menu-wrapper-016a83b6.js";import"@dimjs/utils/cjs/class-names";import"@ant-design/icons/es/icons/ExclamationCircleFilled";import"../_rollupPluginBabelHelpers-1f4d8910.js";import"@wove/react/cjs/hooks";import"antd";import"react";import"../button-wrapper-125fce50.js";import"@ant-design/icons/es/icons/LoadingOutlined";import"@dimjs/lang/cjs/is-promise";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-f9e11d02.js";import"../dialog-confirm-74fc9337.js";import"../dialog-modal-4a0c72c5.js";import"@dimjs/lang/cjs/is-string";import"ahooks";import"react-dom/client";import"../flex-layout-8d2b668b.js";
12
12
  //# sourceMappingURL=index.js.map
@@ -0,0 +1,3 @@
1
+ /*! @flatjs/forge MIT @flatbiz/antd */
2
+ import{classNames as e}from"@dimjs/utils/cjs/class-names";import r from"@ant-design/icons/es/icons/ExclamationCircleFilled";import{_ as o,a as n}from"./_rollupPluginBabelHelpers-1f4d8910.js";import{hooks as i}from"@wove/react/cjs/hooks";import{Dropdown as t}from"antd";import{Fragment as a,useMemo as s,createElement as l}from"react";import{B as m}from"./button-wrapper-125fce50.js";import{d}from"./dialog-confirm-74fc9337.js";import{f}from"./fba-utils-f9e11d02.js";import{F as u}from"./flex-layout-8d2b668b.js";import{jsxs as c,jsx as p}from"react/jsx-runtime";function v(e){var r=true;var o=false;while(r){if(e.tagName==="HTML"||e.tagName==="BODY"){r=false;o=false}else{var n=window.getComputedStyle(e),i=n.position;if(i==="sticky"){o=true;r=false}else{if(!e||!e.parentNode){r=false}else{e=e.parentNode}}}}return o}var g=["menuList"],h=["text","permission","needConfirm","confirmMessage","hidden","type","confirmModalProps"];var y=function y(C){var k=C.menuList,P=o(C,g);var x=i.useId(undefined,"DropdownMenuWrapper");var w=i.useCallbackRef((function(e,o){o.stopPropagation();if(e.needConfirm){var i;d.open(n({title:c(u,{direction:"horizontal",fullIndex:1,gap:8,children:[p(r,{style:{color:"#faad14"}}),p("span",{children:e.text})]}),content:p(a,{children:e.confirmMessage}),onOk:(i=e.onClick)==null?void 0:i.bind(null,o),okButtonProps:{loadingPosition:"center"}},e.confirmModalProps));return Promise.resolve()}return e.onClick==null?void 0:e.onClick(o)}));var M=document.querySelector("."+x);var j=s((function(){if(C.isFixed||M&&v(M)){return undefined}return M}),[C.isFixed,M]);var b=s((function(){var r=[];k.filter(Boolean).forEach((function(i,t){if(!i)return;var a=i.text,s=i.permission,d=i.needConfirm,u=i.confirmMessage,c=i.hidden,p=i.type,v=i.confirmModalProps,g=o(i,h);if(c)return;if(s&&!f.hasPermission(s))return;var y=p||"link";var C=g.color?false:d;r.push({key:t,label:l(m,n({loadingPosition:"center",size:"small",danger:C},g,{className:e("dmw-item-button",g.className),type:y,key:t,onClick:w.bind(null,n({},i,{needConfirm:d,confirmMessage:u,confirmModalProps:v}))}),a)})}));return r}),[k,w]);return p("div",{className:e("dropdown-menu-wrapper",x),style:{position:"relative"},children:p(t,n({trigger:(P==null?void 0:P.trigger)||["hover"],getPopupContainer:j?function(){return M}:undefined,arrow:{pointAtCenter:true}},P,{overlayStyle:n({zIndex:9},P.overlayStyle),menu:{items:b},children:C.children}))})};export{y as D};
3
+ //# sourceMappingURL=dropdown-menu-wrapper-016a83b6.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dropdown-menu-wrapper-016a83b6.js","sources":["@flatbiz/antd/src/dropdown-menu-wrapper/utils.ts","@flatbiz/antd/src/dropdown-menu-wrapper/dropdown-menu-wrapper.tsx"],"sourcesContent":["export function parentsHasSticky(node: Element) {\n let condition = true;\n let result = false;\n while (condition) {\n if (node.tagName === 'HTML' || node.tagName === 'BODY') {\n condition = false;\n result = false;\n } else {\n const { position } = window.getComputedStyle(node);\n if (position === 'sticky') {\n result = true;\n condition = false;\n } else {\n if (!node || !node.parentNode) {\n condition = false;\n } else {\n node = node.parentNode as Element;\n }\n }\n }\n }\n return result;\n}\n","import { ExclamationCircleFilled } from '@ant-design/icons';\nimport { classNames } from '@dimjs/utils';\nimport { hooks } from '@wove/react';\nimport { ButtonProps, Dropdown, DropdownProps } from 'antd';\nimport { ItemType } from 'antd/lib/menu/hooks/useItems';\nimport { Fragment, ReactElement, useMemo } from 'react';\nimport { ButtonWrapper } from '../button-wrapper';\nimport { dialogConfirm } from '../dialog-confirm';\nimport { DialogModalProps } from '../dialog-modal';\nimport { fbaUtils } from '../fba-utils';\nimport { FlexLayout } from '../flex-layout';\nimport './style.less';\nimport { parentsHasSticky } from './utils';\n\nexport interface DropdownMenuItem extends ButtonProps {\n text?: string | ReactElement;\n color?: string;\n onClick?: (event: React.MouseEvent<HTMLElement>) => void | Promise<void>;\n permission?: string;\n needConfirm?: boolean;\n confirmMessage?: string;\n hidden?: boolean;\n confirmModalProps?: DialogModalProps;\n}\n\nexport interface DropdownMenuWrapperProps extends Omit<DropdownProps, 'menu'> {\n menuList: Array<DropdownMenuItem | null>;\n isFixed?: boolean;\n}\n\n/**\n * DropdownMenuWrapper\n * 升级 antd 5.5.1 后,Dropdown 中 Popconfirm弹框使用存在问题,所以在 @flatbiz/antd@4.2.49版本修改为使用dialogConfirm组件实现二次弹框确认功能\n * @param props\n * @returns\n */\nexport const DropdownMenuWrapper = (props: DropdownMenuWrapperProps) => {\n const { menuList, ...dropdownOtherProps } = props;\n const clsName = hooks.useId(undefined, 'DropdownMenuWrapper');\n\n const onClick = hooks.useCallbackRef((item: DropdownMenuItem, event) => {\n event.stopPropagation();\n if (item.needConfirm) {\n dialogConfirm.open({\n title: (\n <FlexLayout direction=\"horizontal\" fullIndex={1} gap={8}>\n <ExclamationCircleFilled style={{ color: '#faad14' }} />\n <span>{item.text}</span>\n </FlexLayout>\n ),\n content: <Fragment>{item.confirmMessage}</Fragment>,\n onOk: item.onClick?.bind(null, event),\n okButtonProps: {\n loadingPosition: 'center',\n },\n ...item.confirmModalProps,\n });\n return Promise.resolve();\n }\n return item.onClick?.(event);\n });\n\n const target = document.querySelector(`.${clsName}`);\n const container = useMemo(() => {\n if (props.isFixed || (target && parentsHasSticky(target))) {\n return undefined;\n }\n return target;\n }, [props.isFixed, target]);\n\n const menuItems = useMemo(() => {\n const menuItemsNew: ItemType[] = [];\n menuList.filter(Boolean).forEach((item, index) => {\n if (!item) return;\n const {\n text,\n permission,\n needConfirm,\n confirmMessage,\n hidden,\n type,\n confirmModalProps,\n ...otherProps\n } = item;\n if (hidden) return;\n if (permission && !fbaUtils.hasPermission(permission)) return;\n const buttonType = type || 'link';\n const danger = otherProps.color ? false : needConfirm;\n menuItemsNew.push({\n key: index,\n label: (\n <ButtonWrapper\n loadingPosition=\"center\"\n size=\"small\"\n danger={danger}\n {...otherProps}\n className={classNames('dmw-item-button', otherProps.className)}\n type={buttonType}\n key={index}\n onClick={onClick.bind(null, {\n ...item,\n needConfirm,\n confirmMessage,\n confirmModalProps,\n })}\n >\n {text}\n </ButtonWrapper>\n ),\n });\n });\n return menuItemsNew;\n }, [menuList, onClick]);\n\n return (\n <div className={classNames('dropdown-menu-wrapper', clsName)} style={{ position: 'relative' }}>\n <Dropdown\n trigger={dropdownOtherProps?.trigger || ['hover']}\n getPopupContainer={container ? () => target as HTMLElement : undefined}\n arrow={{ pointAtCenter: true }}\n {...dropdownOtherProps}\n overlayStyle={{ zIndex: 9, ...dropdownOtherProps.overlayStyle }}\n menu={{ items: menuItems }}\n >\n {props.children}\n </Dropdown>\n </div>\n );\n};\n"],"names":["parentsHasSticky","node","condition","result","tagName","_window$getComputedSt","window","getComputedStyle","position","parentNode","DropdownMenuWrapper","props","menuList","dropdownOtherProps","_objectWithoutPropertiesLoose","_excluded","clsName","_hooks","useId","undefined","onClick","useCallbackRef","item","event","stopPropagation","needConfirm","_item$onClick","dialogConfirm","open","_extends","title","_jsxs","FlexLayout","direction","fullIndex","gap","children","_jsx","_ExclamationCircleFilled","style","color","text","content","Fragment","confirmMessage","onOk","bind","okButtonProps","loadingPosition","confirmModalProps","Promise","resolve","target","document","querySelector","container","useMemo","isFixed","menuItems","menuItemsNew","filter","Boolean","forEach","index","permission","hidden","type","otherProps","_excluded2","fbaUtils","hasPermission","buttonType","danger","push","key","label","_createElement","ButtonWrapper","size","className","_classNames","Dropdown","trigger","getPopupContainer","arrow","pointAtCenter","overlayStyle","zIndex","menu","items"],"mappings":"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"}
@@ -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-f9e11d02.js";import{classNames as i}from"@dimjs/utils/cjs/class-names";import{isUndefined as t}from"@dimjs/lang/cjs/is-undefined";import{isArray as r}from"@dimjs/lang/cjs/is-array";import{hooks as n}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 q from"@ant-design/icons/es/icons/UpOutlined";import{isFragment as z}from"react-is";import{B as R}from"../button-wrapper-125fce50.js";import{FormGrid as N}from"../form-grid/index.js";import{S as w}from"../simple-layout-1cd0fefc.js";import{isUndefinedOrNull as P,getUuid as x,isMacEnv as k}from"@flatbiz/utils";import{fbaHooks as T}from"../fba-hooks/index.js";import{T as K}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 L=C(),V=L[0],E=L[1];var O={queryCondition:{},isInit:true};var I={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(I)}return B[i]};var A=function e(i){return b(s,a({},i,{size:"small",placement:"topLeft"}))};A.Option=s.Option;var _=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 q=m(false),z=q[0],R=q[1];var N=D(e.modelKey).useStore(),w=N[0],P=N[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 V=g();var O=a({list:"list",total:"tatal",pageNo:"pageNo",pageSize:"pageSize"},e.fieldNames);var I=u.useForm(),B=I[0];var _=n.useCallbackRef((function(i){return new Promise((function(t,n){var a,o,s,u,d,f,p,m,g,v;var y=function(){try{return t()}catch(e){return n(e)}};var C=function(i){try{R(false);if(e.onRequestErrorHandle){e.onRequestErrorHandle(i)}else{void c.error(i.message)}return y()}catch(e){return n(e)}};try{R(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||{};V.current=m;e.onDataSourceChange==null?void 0:e.onDataSourceChange(m);g=f?f(m):m;v=g[O.list];h(r(v)?v:[]);F(g[O.total]);R(false);return y()}catch(e){return C(e)}}),C)}catch(e){return C(e)}}),C)}catch(e){C(e)}}))}));var H=n.useCallbackRef((function(e){return new Promise((function(i,t){return Promise.resolve(P.resetFilterCondition()).then((function(r){try{B.resetFields();if(e){void P.updateFilterCondition(e);B.setFieldsValue(e)}return i()}catch(e){return t(e)}}),t)}))}));var W=function e(i,t){if(K){var r;return r={},r[O.pageNo]=i,r[O.pageSize]=t||x,r}else{return{}}};var U=n.useCallbackRef((function(i){return new Promise((function(t,r){var n;n=a({},W(1,x),e.initialValues,i);return Promise.resolve(P.resetFilterCondition(n)).then((function(e){try{B.resetFields();void _(n);return t()}catch(e){return r(e)}}),r)}))}));var Y=n.useCallbackRef((function(){return a({},w.queryCondition,B.getFieldsValue())}));var G=function e(){return{onRequest:_,clearQueryCondition:H,getRequestParams:Y,onResetRequest:U,form:B,getDataSource:function e(){return V.current}}};v(o,(function(){return G()}));var Q=function e(i){L(i)};var $=function i(){var t=B.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[O.pageNo]||1,pageSize:w.queryCondition[O.pageSize]||x,total:S,showTotal:function e(i){return"共 "+i+" 条记录"}},e.pagination)}),[O.pageNo,O.pageSize,x,e.pagination,w.queryCondition,S]);var Z=n.useCallbackRef((function(i,t){var r,n;void _((r={},r[O.pageSize]=t,r[O.pageNo]=i,r));(n=e.pagination)==null?void 0:n.onChange==null?void 0:n.onChange(i,t)}));var ee=i("fba-easy-table-wrapper",{"fba-easy-table-wrapper-inline":e.isInline});var ie=typeof e.children==="function"?e.children(V.current):e.children;return b(E,{value:{getEasyTableRef:G,modelKey:e.modelKey,onRequest:_,tableList:p,tableTotal:S,loading:z,fieldNames:O,pageSize:x,initRequest:k,initialValues:e.initialValues||{},onSetPaginationStatus:Q,paginationStatus:K,onFormFinish:$,form:B,paginationFixed:e.paginationFixed||false,foldKeys:e.foldKeys||[]},children:e.paginationFixed?j("div",{className:ee,children:[b("div",{className:M,children:ie}),S>0&&b("div",{className:"fba-easy-table-pagination",children:b(d,a({size:"small"},X,{onChange:Z,selectComponentClass:A}))})]}):b("div",{className:M,children:ie})})}));var H=function e(i){var t=i.queryButtonProps,r=i.resetButtonProps,o=i.filterOperate,l=i.formClassName;var s=V(),d=s.modelKey,c=s.foldKeys,f=s.fieldNames,p=s.onRequest,g=s.pageSize,v=s.paginationStatus,C=s.initialValues,S=s.form,P=s.onFormFinish;var x=typeof i.children==="function"?i.children(S):i.children;var k=y((function(){if(z(x)){return h.toArray(x.props.children)}else{return h.toArray(x)}}),[x]);var T=m(false),K=T[0],L=T[1];var E=D(d).useStore(),O=E[0],I=E[1];var B=n.useCallbackRef((function(){return new Promise((function(e,i){var t;return Promise.resolve(I.resetFilterCondition()).then((function(r){try{S.resetFields();if(v){p(a((t={},t[f.pageNo]=1,t[f.pageSize]=g,t),C))}else{p(C)}return e()}catch(e){return i(e)}}),i)}))}));var A=y((function(){var e=a({rightList:[!(t!=null&&t.hidden)?b(R,a({type:"primary",htmlType:"submit"},t,{children:(t==null?void 0:t.text)||"查询"}),"1"):null,!(r!=null&&r.hidden)?b(R,a({onClick:B},r,{children:(r==null?void 0:r.text)||"重置"}),"2"):null],leftList:[]},o==null?void 0:o(S));if(c.length>0){var i=b(R,{type:"link",style:{padding:"0"},onClick:function e(){L(!K)},children:K?j("span",{children:["收起",b(q,{style:{marginLeft:3,fontSize:12}})]}):j("span",{children:["展开",b(F,{style:{marginLeft:3,fontSize:12}})]})},"fold-trigger");var n=e.rightList,l=e.leftList;if(n.length>0||l.length===0){n.push(i)}else if((l==null?void 0:l.length)>0){l.push(i)}}return k.map((function(e,i){if(!K&&c.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))}),[k,o,c,S,B,K,t,r]);return b(w,{className:"easy-table-filter",children:b(u,{form:S,onFinish:P,initialValues:a({},C,O.queryCondition),className:l,children:i.isPure?x:b(N.Row,{gutter:[15,0],gridSize:i.formGridSize,children:A})})})};var W=function e(){var i=V();var t=g(i.getEasyTableRef());return t.current};var U=function e(){var i=V(),t=i.getEasyTableRef;var r=g(t());return r};var Y=["children","rowKey","pagination"];var G=function e(t){var r=t.children,n=t.rowKey,l=t.pagination,s=o(t,Y);var u=V(),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,q=u.onSetPaginationStatus;var z=D(d).useStore(),R=z[0],N=z[1];var L=y((function(){if(F||l===false)return false;return a({showSizeChanger:true,current:R.queryCondition[c.pageNo]||1,pageSize:R.queryCondition[c.pageSize]||v,total:h,showTotal:function e(i){return"共 "+i+" 条记录"}},t.pagination,{selectComponentClass:A})}),[c.pageNo,c.pageSize,v,l,F,t.pagination,R.queryCondition,h]);var E=function e(i,r,n,a){if(a.action==="paginate"&&L){var o;p((o={},o[c.pageSize]=i.pageSize,o[c.pageNo]=i.current,o))}else{t.onChange==null?void 0:t.onChange(i,r,n,a)}};var O=y((function(){if(m.length===0){return[]}if(typeof n==="string"&&P(m[0][n])){return m.map((function(e){e[n]=x();return e}))}return m}),[m,n]);T.useEffectCustom((function(){var e=F||L!==false;q(e);if(g!==false||!R.isInit){if(e){var i;void p(a((i={},i[c.pageNo]=1,i[c.pageSize]=v,i),S,R.queryCondition))}else{void p(S)}}else{void N.updateFilterCondition(S)}void N.updateInitStatus()}),[]);return j(w,{className:i("easy-table-table",t.tableWrapperClassName),style:t.tableWrapperStyle,children:[r,k()?b(f,a({size:"small",scroll:{x:"max-content"},bordered:true},s,{pagination:L,rowKey:n,onChange:E,loading:C,dataSource:O})):b(K,{children:b(f,a({size:"small",scroll:{x:"max-content"},bordered:true},s,{pagination:L,rowKey:n,onChange:E,loading:C,dataSource:O}))})]})};var Q=e.attachPropertiesToComponent(_,{Filter:H,Table:G,useEasyTablRef:U,useEasyTable:W});export{Q as EasyTable};
11
+ import{f as e}from"../fba-utils-f9e11d02.js";import{classNames as i}from"@dimjs/utils/cjs/class-names";import{isUndefined as t}from"@dimjs/lang/cjs/is-undefined";import{isArray as r}from"@dimjs/lang/cjs/is-array";import{hooks as n}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 b}from"@dimjs/model-react";import{jsx as S,jsxs as j}from"react/jsx-runtime";import F from"@ant-design/icons/es/icons/DownOutlined";import q from"@ant-design/icons/es/icons/UpOutlined";import{isFragment as z}from"react-is";import{B as R}from"../button-wrapper-125fce50.js";import{FormGrid as N}from"../form-grid/index.js";import{S as w}from"../simple-layout-1cd0fefc.js";import{isUndefinedOrNull as P,getUuid as x,isMacEnv as k}from"@flatbiz/utils";import{fbaHooks as T}from"../fba-hooks/index.js";import{T as K}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 L=C(),V=L[0],E=L[1];var O={queryCondition:{},isInit:true};var I={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]=b(I)}return B[i]};var A=function e(i){return S(s,a({},i,{size:"small",placement:"topLeft"}))};A.Option=s.Option;var _=p((function(e,o){var s;var f=m([]),p=f[0],h=f[1];var C=m(0),b=C[0],F=C[1];var q=m(false),z=q[0],R=q[1];var N=D(e.modelKey).useStore(),w=N[0],P=N[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 V=g();var O=a({list:"list",total:"tatal",pageNo:"pageNo",pageSize:"pageSize"},e.fieldNames);var I=u.useForm(),B=I[0];var _=n.useCallbackRef((function(i){return new Promise((function(t,n){var a,o,s,u,d,f,p,m,g,v;var y=function(){try{return t()}catch(e){return n(e)}};var C=function(i){try{R(false);if(e.onRequestErrorHandle){e.onRequestErrorHandle(i)}else{void c.error(i.message)}return y()}catch(e){return n(e)}};try{R(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||{};V.current=m;e.onDataSourceChange==null?void 0:e.onDataSourceChange(m);g=f?f(m):m;v=g[O.list];h(r(v)?v:[]);F(g[O.total]);R(false);return y()}catch(e){return C(e)}}),C)}catch(e){return C(e)}}),C)}catch(e){C(e)}}))}));var H=n.useCallbackRef((function(e){return new Promise((function(i,t){return Promise.resolve(P.resetFilterCondition()).then((function(r){try{B.resetFields();if(e){void P.updateFilterCondition(e);B.setFieldsValue(e)}return i()}catch(e){return t(e)}}),t)}))}));var W=function e(i,t){if(K){var r;return r={},r[O.pageNo]=i,r[O.pageSize]=t||x,r}else{return{}}};var U=n.useCallbackRef((function(i){return new Promise((function(t,r){var n;n=a({},W(1,x),e.initialValues,i);return Promise.resolve(P.resetFilterCondition(n)).then((function(e){try{B.resetFields();void _(n);return t()}catch(e){return r(e)}}),r)}))}));var Y=n.useCallbackRef((function(){return a({},w.queryCondition,B.getFieldsValue())}));var G=function e(){return{onRequest:_,clearQueryCondition:H,getRequestParams:Y,onResetRequest:U,form:B,getDataSource:function e(){return V.current}}};v(o,(function(){return G()}));var Q=function e(i){L(i)};var $=function i(){var t=B.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[O.pageNo]||1,pageSize:w.queryCondition[O.pageSize]||x,total:b,showTotal:function e(i){return"共 "+i+" 条记录"}},e.pagination)}),[O.pageNo,O.pageSize,x,e.pagination,w.queryCondition,b]);var Z=n.useCallbackRef((function(i,t){var r,n;void _((r={},r[O.pageSize]=t,r[O.pageNo]=i,r));(n=e.pagination)==null?void 0:n.onChange==null?void 0:n.onChange(i,t)}));var ee=i("fba-easy-table-wrapper",{"fba-easy-table-wrapper-inline":e.isInline});var ie=typeof e.children==="function"?e.children(V.current):e.children;return S(E,{value:{getEasyTableRef:G,modelKey:e.modelKey,onRequest:_,tableList:p,tableTotal:b,loading:z,fieldNames:O,pageSize:x,initRequest:k,initialValues:e.initialValues||{},onSetPaginationStatus:Q,paginationStatus:K,onFormFinish:$,form:B,paginationFixed:e.paginationFixed||false,foldKeys:e.foldKeys||[]},children:e.paginationFixed?j("div",{className:ee,children:[S("div",{className:M,children:ie}),b>0&&S("div",{className:"fba-easy-table-pagination",children:S(d,a({size:"small"},X,{onChange:Z,selectComponentClass:A}))})]}):S("div",{className:M,children:ie})})}));var H=function e(i){var t=i.queryButtonProps,r=i.resetButtonProps,o=i.filterOperate,l=i.formClassName;var s=V(),d=s.modelKey,c=s.foldKeys,f=s.fieldNames,p=s.onRequest,g=s.pageSize,v=s.paginationStatus,C=s.initialValues,b=s.form,P=s.onFormFinish;var x=typeof i.children==="function"?i.children(b):i.children;var k=y((function(){if(z(x)){return h.toArray(x.props.children)}else{return h.toArray(x)}}),[x]);var T=m(false),K=T[0],L=T[1];var E=D(d).useStore(),O=E[0],I=E[1];var B=n.useCallbackRef((function(){return new Promise((function(e,i){var t;return Promise.resolve(I.resetFilterCondition()).then((function(r){try{b.resetFields();if(v){p(a((t={},t[f.pageNo]=1,t[f.pageSize]=g,t),C))}else{p(C)}return e()}catch(e){return i(e)}}),i)}))}));var A=y((function(){var e=a({rightList:[!(t!=null&&t.hidden)?S(R,a({type:"primary",htmlType:"submit"},t,{children:(t==null?void 0:t.text)||"查询"}),"1"):null,!(r!=null&&r.hidden)?S(R,a({onClick:B},r,{children:(r==null?void 0:r.text)||"重置"}),"2"):null],leftList:[]},o==null?void 0:o(b));if(c.length>0){var i=S(R,{type:"link",style:{padding:"0"},onClick:function e(){L(!K)},children:K?j("span",{children:["收起",S(q,{style:{marginLeft:3,fontSize:12}})]}):j("span",{children:["展开",S(F,{style:{marginLeft:3,fontSize:12}})]})},"fold-trigger");var n=e.rightList,l=e.leftList;if(n.length>0||l.length===0){n.push(i)}else if((l==null?void 0:l.length)>0){l.push(i)}}return k.map((function(e,i){if(!K&&c.find((function(i){return".$"+i===e.key})))return null;if(e.props["hidden"])return null;if(e.type["domTypeName"]==="FormCol")return e;return S(N.Col,{children:e},i)})).filter(Boolean).concat(S(N.OperateCol,a({},e),999))}),[k,o,c,b,B,K,t,r]);return S(w,{className:"easy-table-filter",children:S(u,{form:b,onFinish:P,initialValues:a({},C,O.queryCondition),className:l,children:i.isPure?x:S(N.Row,{gutter:[15,0],gridSize:i.formGridSize,children:A})})})};var W=function e(){var i=V();var t=g(i.getEasyTableRef());return t.current};var U=function e(){var i=V(),t=i.getEasyTableRef;var r=g(t());return r};var Y=["children","rowKey","pagination"];var G=function e(t){var r=t.children,n=t.rowKey,l=t.pagination,s=o(t,Y);var u=V(),d=u.modelKey,c=u.fieldNames,p=u.onRequest,m=u.tableList,g=u.initRequest,v=u.pageSize,h=u.tableTotal,C=u.loading,b=u.initialValues,F=u.paginationFixed,q=u.onSetPaginationStatus;var z=D(d).useStore(),R=z[0],N=z[1];var L=y((function(){if(F||l===false)return false;return a({showSizeChanger:true,current:R.queryCondition[c.pageNo]||1,pageSize:R.queryCondition[c.pageSize]||v,total:h,showTotal:function e(i){return"共 "+i+" 条记录"}},t.pagination,{selectComponentClass:A})}),[c.pageNo,c.pageSize,v,l,F,t.pagination,R.queryCondition,h]);var E=function e(i,r,n,a){if(a.action==="paginate"&&L){var o;p((o={},o[c.pageSize]=i.pageSize,o[c.pageNo]=i.current,o))}else{t.onChange==null?void 0:t.onChange(i,r,n,a)}};var O=y((function(){if(m.length===0){return[]}if(typeof n==="string"&&P(m[0][n])){return m.map((function(e){e[n]=x();return e}))}return m}),[m,n]);T.useEffectCustom((function(){var e=F||L!==false;q(e);if(g!==false||!R.isInit){if(e){var i;void p(a((i={},i[c.pageNo]=1,i[c.pageSize]=v,i),b,R.queryCondition))}else{void p(b)}}else{void N.updateFilterCondition(b)}void N.updateInitStatus()}),[]);return j(w,{className:i("easy-table-table",t.tableWrapperClassName),style:t.tableWrapperStyle,children:[r,k()?S(f,a({size:"small",scroll:{x:"max-content"},bordered:true},s,{pagination:L,rowKey:n,onChange:E,loading:C,dataSource:O})):S(K,{children:S(f,a({size:"small",scroll:{x:"max-content"},bordered:true},s,{pagination:L,rowKey:n,onChange:E,loading:C,dataSource:O}))})]})};var Q=e.attachPropertiesToComponent(_,{Filter:H,Table:G,useEasyTablRef:U,useEasyTable:W});export{Q as EasyTable};
12
12
  //# sourceMappingURL=index.js.map