@flatbiz/antd 4.5.57 → 4.5.59

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1 +1 @@
1
- .card-layout{border-radius:6px;padding:15px}.card-layout-title-sign{padding-left:10px;position:relative}.card-layout-title-sign:before{background:var(--color-primary,#1677ff);border-radius:3px;content:"";height:13px;left:0;position:absolute;top:50%;transform:translateY(-50%);width:3px}.card-layout-title{align-items:center;display:flex;position:relative}.card-layout-title+.card-layout-content{margin-top:8px}.card-layout-title-content{font-size:16px;font-weight:500}.card-layout-subtitle,.card-layout-title-content{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.card-layout-subtitle{color:#969696;flex:1;font-size:12px}.card-layout-title-extra{margin-left:15px}.card-layout-desc{margin-top:5px}.card-layout-desc,.card-layout-desc-list{font-size:12px;opacity:.7}.card-layout+.card-layout,.card-layout-desc+.card-layout-content,.card-layout-desc-list+.card-layout-content{margin-top:8px}.card-layout-title-fixed{display:flex;flex-direction:column;height:100%;overflow:hidden}.card-layout-title-fixed>.card-layout-content{flex:1;overflow-y:auto}.card-layout-small{padding:8px 15px}.card-layout-small .card-layout-content{margin-top:0}.card-layout-small .card-layout-title-content{font-size:14px}.card-layout-small .card-layout-title-sign:before{height:11px}.card-layout-tight{border-radius:0;padding:0}
1
+ .card-layout{border-radius:6px;padding:15px}.card-layout-title-sign{padding-left:10px;position:relative}.card-layout-title-sign:before{background:var(--color-primary,#1677ff);border-radius:3px;content:"";height:13px;left:0;position:absolute;top:50%;transform:translateY(-50%);width:3px}.card-layout-title{align-items:center;display:flex;position:relative}.card-layout-title+.card-layout-content{margin-top:8px}.card-layout-title-content{font-size:16px;font-weight:500}.card-layout-subtitle,.card-layout-title-content{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.card-layout-subtitle{color:#767676;flex:1;font-size:12px}.card-layout-title-extra{margin-left:15px}.card-layout-desc{color:#767676;margin-top:5px}.card-layout-desc,.card-layout-desc-list{font-size:12px;opacity:.7}.card-layout+.card-layout,.card-layout-desc+.card-layout-content,.card-layout-desc-list+.card-layout-content{margin-top:8px}.card-layout-title-fixed{display:flex;flex-direction:column;height:100%;overflow:hidden}.card-layout-title-fixed>.card-layout-content{flex:1;overflow-y:auto}.card-layout-small{padding:8px 15px}.card-layout-small .card-layout-content{margin-top:0}.card-layout-small .card-layout-title-content{font-size:14px}.card-layout-small .card-layout-title-sign:before{height:11px}.card-layout-tight{border-radius:0;padding:0}
@@ -1 +1 @@
1
- .code-render{background-color:#f5f5f5;border-radius:4px;margin:0;padding:10px}
1
+ .code-render{background-color:#f5f5f5;border-radius:4px;color:#676767;font-size:14px;line-height:1.5;margin:0;padding:10px}.code-render-small{font-size:12px}
@@ -1,5 +1,5 @@
1
1
  /* eslint-disable */
2
2
  import './index.css';
3
3
  /*! @flatjs/forge MIT @flatbiz/antd */
4
- import{isArray as r}from"@dimjs/lang/cjs/is-array";import{c as e}from"../index-636a568e.js";import{jsx as a}from"react/jsx-runtime";var i=function i(n){var s=n.code,c=n.className,o=n.style,t=n.wrap;var d=r(s)?s:[s];return a("pre",{className:e("code-render",c),style:o,children:a("code",{style:{whiteSpace:t?"pre-wrap":undefined},children:""+d.join("\n")})})};export{i as CodeRender};
4
+ import{isArray as e}from"@dimjs/lang/cjs/is-array";import{c as r}from"../index-636a568e.js";import{jsx as a}from"react/jsx-runtime";var n=function n(i){var s=i.code,d=i.className,c=i.style,l=i.wrap,o=i.size;var t=e(s)?s:[s];var m=r("code-render",d,{"code-render-small":o==="small"});if(!i.code)return null;var p=l===undefined?true:l;return a("pre",{className:m,style:c,children:a("code",{style:{whiteSpace:p?"pre-wrap":undefined},children:""+t.join("\n")})})};export{n as CodeRender};
5
5
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["@flatbiz/antd/src/code-render/code.tsx"],"sourcesContent":["import { isArray } from '@dimjs/lang';\nimport classNames from 'classnames';\nimport './style.less';\n\nexport type CodeRenderProps = {\n code?: string | string[];\n className?: string;\n style?: React.CSSProperties;\n /** 是否换行 */\n wrap?: boolean;\n};\n\n/**\n * 代码、json格式化渲染\n * ```\n * 例如:\n * // json数据渲染\n * <CodeWrapper code={JSON.stringify(data, null, 2)}/>\n * \n * // 代码渲染\n * <CodeWrapper code={`def results=[];\ndef datas=表单字段.dataList;\nfor index,data in datas do\n def item = [\n 'a':data.DomainName,\n 'b':data.Owner,\n 'userName': 流程参数.发起人账号\n ];\n results = results+item;\nend\nreturn results;\n` \n}/>\n *\n * ```\n *\n */\nexport const CodeRender = (props: CodeRenderProps) => {\n const { code, className, style, wrap } = props;\n const codeList = isArray(code) ? code : [code];\n return (\n <pre className={classNames('code-render', className)} style={style}>\n <code style={{ whiteSpace: wrap ? 'pre-wrap' : undefined }}>{`${codeList.join('\\n')}`}</code>\n </pre>\n );\n};\n"],"names":["CodeRender","props","code","className","style","wrap","codeList","_isArray","_jsx","classNames","children","whiteSpace","undefined","join"],"mappings":";wIAqCaA,EAAa,SAAbA,EAAcC,GACzB,IAAQC,EAAiCD,EAAjCC,KAAMC,EAA2BF,EAA3BE,UAAWC,EAAgBH,EAAhBG,MAAOC,EAASJ,EAATI,KAChC,IAAMC,EAAWC,EAAQL,GAAQA,EAAO,CAACA,GACzC,OACEM,EAAA,MAAA,CAAKL,UAAWM,EAAW,cAAeN,GAAYC,MAAOA,EAAMM,SACjEF,EAAA,OAAA,CAAMJ,MAAO,CAAEO,WAAYN,EAAO,WAAaO,WAAYF,SAAKJ,GAAAA,EAASO,KAAK,SAGpF"}
1
+ {"version":3,"file":"index.js","sources":["@flatbiz/antd/src/code-render/code.tsx"],"sourcesContent":["import { isArray } from '@dimjs/lang';\nimport classNames from 'classnames';\nimport type { CSSProperties } from 'react';\nimport './style.less';\n\nexport type CodeRenderProps = {\n code?: string | string[];\n className?: string;\n style?: CSSProperties;\n /** 是否换行,默认值:true */\n wrap?: boolean;\n size?: 'small' | 'default';\n};\n\n/**\n * 代码、json格式化渲染\n * ```\n * 1. wrap 是否换行,默认值:true\n * 例如:\n * // json数据渲染\n * <CodeWrapper code={JSON.stringify(data, null, 2)}/>\n * \n * // 代码渲染\n * <CodeWrapper code={`def results=[];\ndef datas=表单字段.dataList;\nfor index,data in datas do\n def item = [\n 'a':data.DomainName,\n 'b':data.Owner,\n 'userName': 流程参数.发起人账号\n ];\n results = results+item;\nend\nreturn results;\n` \n}/>\n *\n * ```\n *\n */\nexport const CodeRender = (props: CodeRenderProps) => {\n const { code, className, style, wrap, size } = props;\n const codeList = (isArray(code) ? code : [code]) as any[];\n const codeRenderClassName = classNames('code-render', className, {\n 'code-render-small': size === 'small',\n });\n\n if (!props.code) return null;\n\n const wrapFt = wrap === undefined ? true : wrap;\n\n return (\n <pre className={codeRenderClassName} style={style}>\n <code style={{ whiteSpace: wrapFt ? 'pre-wrap' : undefined }}>{`${codeList.join('\\n')}`}</code>\n </pre>\n );\n};\n"],"names":["CodeRender","props","code","className","style","wrap","size","codeList","_isArray","codeRenderClassName","classNames","wrapFt","undefined","_jsx","children","whiteSpace","join"],"mappings":";wIAwCaA,EAAa,SAAbA,EAAcC,GACzB,IAAQC,EAAuCD,EAAvCC,KAAMC,EAAiCF,EAAjCE,UAAWC,EAAsBH,EAAtBG,MAAOC,EAAeJ,EAAfI,KAAMC,EAASL,EAATK,KACtC,IAAMC,EAAYC,EAAQN,GAAQA,EAAO,CAACA,GAC1C,IAAMO,EAAsBC,EAAW,cAAeP,EAAW,CAC/D,oBAAqBG,IAAS,UAGhC,IAAKL,EAAMC,KAAM,OAAO,KAExB,IAAMS,EAASN,IAASO,UAAY,KAAOP,EAE3C,OACEQ,EAAA,MAAA,CAAKV,UAAWM,EAAqBL,MAAOA,EAAMU,SAChDD,EAAA,OAAA,CAAMT,MAAO,CAAEW,WAAYJ,EAAS,WAAaC,WAAYE,SAAKP,GAAAA,EAASS,KAAK,SAGtF"}
@@ -1 +1 @@
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
+ .drag-collapse-wrapper{border:1px solid #d9d9d9;border-radius:8px;overflow:hidden}.drag-collapse-wrapper .drag-collapse{background-color:#fafafa;border-bottom:1px solid #d9d9d9}.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.drag-collapse-last{border-bottom:none}.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}
@@ -2,5 +2,5 @@
2
2
  import './../fba-hooks/index.css';
3
3
  import './index.css';
4
4
  /*! @flatjs/forge MIT @flatbiz/antd */
5
- import{classNames as 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 p}from"react";import{fbaHooks as f}from"../fba-hooks/index.js";import{_ as u}from"../_rollupPluginBabelHelpers-c0dbec57.js";import g from"@ant-design/icons/es/icons/DragOutlined";import{CSS as v}from"@dnd-kit/utilities";import{Collapse as y}from"antd";import{jsx as h,jsxs as I}from"react/jsx-runtime";import"@dimjs/lang/cjs/is-array";import"../use-responsive-point-1e6d93d9.js";import"@dimjs/utils/cjs/uuid";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:h(g,{});return n.hideDragIcon?i.header:I(m,{children:[h("span",u({className:"dc-drag-trigger"},o,{children:a})),h("span",{className:"dc-drag-header-content",children:i.header})]})};var d=u({transform:v.Transform.toString(s),transition:c},n.style);var p=n.openKeys.includes(n.item.key);var f=e("drag-collapse",{"drag-collapse-grap":n.isGray,"drag-collapse-last":n.isLast},n.className);return h(y,{activeKey:p?n.item.key:undefined,accordion:true,className:f,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,items:[{key:n.item.key,label:l(n.item),children:n.item.content}]})}var x=function t(m){var u=p(),g=u[0],v=u[1];var y=p([]),x=y[0],b=y[1];f.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 j=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||m.onChange(i.length?i[0]:undefined)}else{m.onChange==null||m.onChange(i.length?i:undefined)}});function C(e){var n=e.active;v(n.id)}function D(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 h("div",{className:e("drag-collapse-wrapper",m.className),style:m.style,children:I(a,{collisionDetection:o,onDragStart:C,onDragEnd:D,children:[h(s,{items:m.items.map(function(e){return e.key}),strategy:c,children:m.items.map(function(e,n){return h(k,{item:e,openKeys:x,collapsible:m.collapsible,expandIcon:m.expandIcon,expandIconPosition:m.expandIconPosition,size:m.size,dragIcon:m.dragIcon,hideDragIcon:m.hideDragIcon,onChange:j,isGray:e.key===g,isLast:n===m.items.length-1},e.key)})}),h(r,{dropAnimation:{duration:0},children:g?h(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:j},g):null})]})})};export{x as DragCollapse};
5
+ 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 p}from"react";import{fbaHooks as f}from"../fba-hooks/index.js";import{_ as u}from"../_rollupPluginBabelHelpers-c0dbec57.js";import g from"@ant-design/icons/es/icons/DragOutlined";import{CSS as v}from"@dnd-kit/utilities";import{Collapse as y}from"antd";import{jsx as h,jsxs as I}from"react/jsx-runtime";import"@dimjs/lang/cjs/is-array";import"../use-responsive-point-1e6d93d9.js";import"@dimjs/utils/cjs/uuid";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:h(g,{});return n.hideDragIcon?i.header:I(m,{children:[h("span",u({className:"dc-drag-trigger"},o,{children:a})),h("span",{className:"dc-drag-header-content",children:i.header})]})};var d=u({transform:v.Transform.toString(s),transition:c},n.style);var p=n.openKeys.includes(n.item.key);var f=e("drag-collapse",{"drag-collapse-grap":n.isGray,"drag-collapse-last":n.isLast},n.className);return h(y,{activeKey:p?n.item.key:undefined,accordion:true,className:f,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,items:[{key:n.item.key,label:l(n.item),children:n.item.content}]})}var x=function t(m){var u=p(),g=u[0],v=u[1];var y=p([]),x=y[0],b=y[1];f.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 j=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){var o=n.arrayRemove(x,e);i=[].concat(o)}else{i=x.concat(e)}}b(i);if(m.accordion){m.onChange==null||m.onChange(i.length?i[0]:undefined)}else{m.onChange==null||m.onChange(i.length?i:undefined)}});function C(e){var n=e.active;v(n.id)}function D(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 h("div",{className:e("drag-collapse-wrapper",m.className),style:m.style,children:I(a,{collisionDetection:o,onDragStart:C,onDragEnd:D,children:[h(s,{items:m.items.map(function(e){return e.key}),strategy:c,children:m.items.map(function(e,n){return h(k,{item:e,openKeys:x,collapsible:m.collapsible,expandIcon:m.expandIcon,expandIconPosition:m.expandIconPosition,size:m.size,dragIcon:m.dragIcon,hideDragIcon:m.hideDragIcon,onChange:j,isGray:e.key===g,isLast:n===m.items.length-1},e.key)})}),h(r,{dropAnimation:{duration:0},children:g?h(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:j},g):null})]})})};export{x as DragCollapse};
6
6
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.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 headerRender = (item: DragCollapseItem) => {\n const dragIcon = props.dragIcon ? props.dragIcon : <DragOutlined />;\n return props.hideDragIcon ? (\n item.header\n ) : (\n <Fragment>\n <span className=\"dc-drag-trigger\" {...listeners}>\n {dragIcon}\n </span>\n <span className=\"dc-drag-header-content\">{item.header}</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 items={[{ key: props.item.key, label: headerRender(props.item), children: props.item.content }]}\n />\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","headerRender","dragIcon","_jsx","_DragOutlined","hideDragIcon","header","_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","items","label","content","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","findIndex","newIndex","newList","arrayMove","onDropChange","DndContext","collisionDetection","closestCenter","onDragStart","onDragEnd","SortableContext","map","strategy","verticalListSortingStrategy","index","DragOverlay","dropAnimation","duration","filter"],"mappings":"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"}
1
+ {"version":3,"file":"index.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 headerRender = (item: DragCollapseItem) => {\n const dragIcon = props.dragIcon ? props.dragIcon : <DragOutlined />;\n return props.hideDragIcon ? (\n item.header\n ) : (\n <Fragment>\n <span className=\"dc-drag-trigger\" {...listeners}>\n {dragIcon}\n </span>\n <span className=\"dc-drag-header-content\">{item.header}</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 items={[{ key: props.item.key, label: headerRender(props.item), children: props.item.content }]}\n />\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 const result = array.arrayRemove(openKeys, key);\n openKeysNew = [...result];\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","headerRender","dragIcon","_jsx","_DragOutlined","hideDragIcon","header","_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","items","label","content","DragCollapse","_useState","useState","dragActiveId","setDragActiveId","_useState2","setOpenKeys","fbaHooks","useEffectCustom","defaultActiveKeys","toArray","defaultActiveKey","length","_hooks","useUpdateEffect","useCallbackRef","openKeysNew","has","result","_array","arrayRemove","concat","handleDragStart","event","active","handleDragEnd","over","oldIndex","findIndex","newIndex","newList","arrayMove","onDropChange","DndContext","collisionDetection","closestCenter","onDragStart","onDragEnd","SortableContext","map","strategy","verticalListSortingStrategy","index","DragOverlay","dropAnimation","duration","filter"],"mappings":"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"}
@@ -1 +1 @@
1
- .drag-collapse-formlist-wrapper.dcfw-isEmpty{border:none}.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}
1
+ .drag-collapse-formlist-wrapper.dcfw-isEmpty{border:none}.drag-collapse-formlist-wrapper{border:1px solid #d9d9d9;border-radius:8px;overflow:hidden}.drag-collapse-formlist-wrapper .drag-collapse{background-color:#fafafa;border-bottom:1px solid #d9d9d9}.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.drag-collapse-last{border-bottom:none}.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}
@@ -2,5 +2,5 @@
2
2
  import './../fba-hooks/index.css';
3
3
  import './index.css';
4
4
  /*! @flatjs/forge MIT @flatbiz/antd */
5
- import{classNames as 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 s,verticalListSortingStrategy as d,arrayMove as l}from"@dnd-kit/sortable";import{toArray as c}from"@flatbiz/utils";import{Form as m,Collapse 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{_ as I}from"../_rollupPluginBabelHelpers-c0dbec57.js";import D from"@ant-design/icons/es/icons/DragOutlined";import{CSS as x}from"@dnd-kit/utilities";import{jsx as N,jsxs as b}from"react/jsx-runtime";import"@dimjs/lang/cjs/is-array";import"../use-responsive-point-1e6d93d9.js";import"@dimjs/utils/cjs/uuid";function y(a){var n;var i=m.useFormInstance();var r=a.isOverlay?false:a.getItemDragDisabled==null?void 0:a.getItemDragDisabled(a.uid,a.index);var t=o({id:a.uid,disabled:r}),s=t.listeners,d=t.setNodeRef,l=t.transform,p=t.transition;var g=function e(){var n=a.dragIcon?a.dragIcon:N(D,{});var r=a.header({formListFieldData:a.formListFieldData,operation:a.formListOperate,uid:a.uid,formStageCompleteName:a.formStageCompleteName,getInsideFormItemName:function e(n){return[a.formListFieldData.name].concat(c(n))},getInsideFormItemData:function e(){return i.getFieldValue(a.formStageCompleteName)||{}},index:a.index});return a.dragDisabled?r:b(f,{children:[N("span",I({className:"dc-drag-trigger"},s,{children:n})),N("span",{className:"dc-drag-header-content",style:a.headerStyle,children:r})]})};var v=I({transform:x.Transform.toString(l),transition:p},a.style);var h=e("drag-collapse",{"drag-collapse-grap":a.isGray,"drag-collapse-last":a.isLast,"drag-collapse-drag-disabled":r},a.className);return N(u,{activeKey:a.isActive?a.uid:undefined,accordion:true,className:h,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({},v),ref:d,items:[{key:a.uid,label:g(),children:N(f,{children:a.content({formListFieldData:a.formListFieldData,operation:a.formListOperate,uid:a.uid,formStageCompleteName:a.formStageCompleteName,getInsideFormItemName:function e(n){return[a.formListFieldData.name].concat(c(n))},getInsideFormItemData:function e(){return i.getFieldValue(a.formStageCompleteName)||{}},index:a.index})})}]})}var C=function o(u){var I=p(),D=I[0],x=I[1];var C=p([]),L=C[0],F=C[1];var j=m.useFormInstance();var S=g([]);var k=m.useWatch(u.formListName,j);var z=n.useCallbackRef(function(e){return e==null?void 0:e[u.uidFieldName||"uid"]});h.useEffectCustom(function(){var e=c(u.defaultActiveKey);if(!u.activeKey&&e.length>0){F(e)}else{F(c(u.activeKey))}},[]);n.useUpdateEffect(function(){F(c(u.activeKey))},[u.activeKey]);var O=function e(n){var i=[];if(u.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(u.accordion){u.onChange==null||u.onChange(i.length?i[0]:undefined)}else{u.onChange==null||u.onChange(i.length?i:undefined)}};function P(e){var a=e.active;x(a.id)}var K=n.useCallbackRef(function(){return j.getFieldValue(u.formListName)||[]});function A(e){var a=e.active,n=e.over;var i=K();if(a.id!==n.id){var r=i.findIndex(function(e){return z(e)===a.id});var t=i.findIndex(function(e){return z(e)===n.id});var o=l(i,r,t);j.setFields([{name:u.formListName,value:o}]);u.onDropChange==null||u.onDropChange(o)}x(undefined)}var E=v(function(){if(!D)return undefined;var e=K();var a=e.findIndex(function(e){return z(e)===D});return S.current.find(function(e){return e.name===a})},[D,K,z]);var R=e("drag-collapse-formlist-wrapper",{"dcfw-isEmpty":c(k).length===0},u.className);return N("div",{className:R,style:u.style,children:N(i,{collisionDetection:r,onDragStart:P,onDragEnd:A,children:N(m.List,{name:u.formListName,rules:u.rules,children:function e(a,n){S.current=a;return b(f,{children:[N(s,{items:K().map(function(e){return z(e)}),strategy:d,children:N(f,{children:a.map(function(e,a){var i=z(K()[a]);return N(y,{formListOperate:n,formListFieldData:e,uid:i,isActive:L.includes(i),collapsible:u.collapsible,expandIcon:u.expandIcon,expandIconPosition:u.expandIconPosition,size:u.size,dragIcon:u.dragIcon,getItemDragDisabled:u.getItemDragDisabled,dragDisabled:u.dragDisabled,onChange:O,isGray:i===D,isLast:a===K().length-1,header:u.header,content:u.content,index:a,formStageCompleteName:[].concat(c(u.formListName),[e.name])},i+"-"+e.key)})})}),N(t,{dropAnimation:{duration:0},children:D&&E?N(y,{isOverlay:true,uid:D,className:"overlay-sortable-item",formListFieldData:E,isActive:L.includes(D),collapsible:u.collapsible,expandIcon:u.expandIcon,expandIconPosition:u.expandIconPosition,size:u.size,dragIcon:u.dragIcon,onChange:O,header:u.header,content:u.content,formListOperate:null,index:0,formStageCompleteName:[].concat(c(u.formListName),[E.name])},D):null})]})}})})})};export{C as DragCollapseFormList};
5
+ 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 s,verticalListSortingStrategy as d,arrayMove as l}from"@dnd-kit/sortable";import{toArray as c}from"@flatbiz/utils";import{Form as m,Collapse 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{_ as I}from"../_rollupPluginBabelHelpers-c0dbec57.js";import D from"@ant-design/icons/es/icons/DragOutlined";import{CSS as x}from"@dnd-kit/utilities";import{jsx as b,jsxs as y}from"react/jsx-runtime";import"@dimjs/lang/cjs/is-array";import"../use-responsive-point-1e6d93d9.js";import"@dimjs/utils/cjs/uuid";function C(a){var n;var i=m.useFormInstance();var r=a.isOverlay?false:a.getItemDragDisabled==null?void 0:a.getItemDragDisabled(a.uid,a.index);var t=o({id:a.uid,disabled:r}),s=t.listeners,d=t.setNodeRef,l=t.transform,p=t.transition;var g=function e(){var n=a.dragIcon?a.dragIcon:b(D,{});var r=a.header({formListFieldData:a.formListFieldData,operation:a.formListOperate,uid:a.uid,formStageCompleteName:a.formStageCompleteName,getInsideFormItemName:function e(n){return[a.formListFieldData.name].concat(c(n))},getInsideFormItemData:function e(){return i.getFieldValue(a.formStageCompleteName)||{}},index:a.index});return a.dragDisabled?r:y(f,{children:[b("span",I({className:"dc-drag-trigger"},s,{children:n})),b("span",{className:"dc-drag-header-content",style:a.headerStyle,children:r})]})};var v=I({transform:x.Transform.toString(l),transition:p},a.style);var h=e("drag-collapse",{"drag-collapse-grap":a.isGray,"drag-collapse-last":a.isLast,"drag-collapse-drag-disabled":r},a.className);return b(u,{activeKey:a.isActive?a.uid:undefined,accordion:true,className:h,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({},v),ref:d,items:[{key:a.uid,label:g(),children:b(f,{children:a.content({formListFieldData:a.formListFieldData,operation:a.formListOperate,uid:a.uid,formStageCompleteName:a.formStageCompleteName,getInsideFormItemName:function e(n){return[a.formListFieldData.name].concat(c(n))},getInsideFormItemData:function e(){return i.getFieldValue(a.formStageCompleteName)||{}},index:a.index})})}]})}var N=function o(u){var I=p(),D=I[0],x=I[1];var N=p([]),F=N[0],L=N[1];var j=m.useFormInstance();var S=g([]);var k=u.formListCompleteName||u.formListName;var z=u.formListName;var O=m.useWatch(k,j);var P=n.useCallbackRef(function(e){return e==null?void 0:e[u.uidFieldName||"uid"]});h.useEffectCustom(function(){var e=c(u.defaultActiveKey);if(!u.activeKey&&e.length>0){L(e)}else{L(c(u.activeKey))}},[]);n.useUpdateEffect(function(){L(c(u.activeKey))},[u.activeKey]);var K=function e(n){var i=[];if(u.accordion){if(F[0]&&F[0]===n){i=[]}else{i=[n]}}else{var r=F.includes(n);if(r){var t=a.arrayRemove(F,n);i=[].concat(t)}else{i=F.concat(n)}}L(i);if(u.accordion){u.onChange==null||u.onChange(i.length?i[0]:undefined)}else{u.onChange==null||u.onChange(i.length?i:undefined)}};function A(e){var a=e.active;x(a.id)}var E=n.useCallbackRef(function(){return j.getFieldValue(k)||[]});function R(e){var a=e.active,n=e.over;var i=E();if(a.id!==n.id){var r=i.findIndex(function(e){return P(e)===a.id});var t=i.findIndex(function(e){return P(e)===n.id});var o=l(i,r,t);j.setFields([{name:k,value:o}]);u.onDropChange==null||u.onDropChange(o)}x(undefined)}var w=v(function(){if(!D)return undefined;var e=E();var a=e.findIndex(function(e){return P(e)===D});return S.current.find(function(e){return e.name===a})},[D,E,P]);var V=e("drag-collapse-formlist-wrapper",{"dcfw-isEmpty":c(O).length===0},u.className);return b("div",{className:V,style:u.style,children:b(i,{collisionDetection:r,onDragStart:A,onDragEnd:R,children:b(m.List,{name:z,rules:u.rules,children:function e(a,n){S.current=a;return y(f,{children:[b(s,{items:E().map(function(e){return P(e)}),strategy:d,children:b(f,{children:a.map(function(e,a){var i=P(E()[a]);return b(C,{formListOperate:n,formListFieldData:e,uid:i,isActive:F.includes(i),collapsible:u.collapsible,expandIcon:u.expandIcon,expandIconPosition:u.expandIconPosition,size:u.size,dragIcon:u.dragIcon,getItemDragDisabled:u.getItemDragDisabled,dragDisabled:u.dragDisabled,onChange:K,isGray:i===D,isLast:a===E().length-1,header:u.header,content:u.content,index:a,formStageCompleteName:[].concat(c(k),[e.name])},i+"-"+e.key)})})}),b(t,{dropAnimation:{duration:0},children:D&&w?b(C,{isOverlay:true,uid:D,className:"overlay-sortable-item",formListFieldData:w,isActive:F.includes(D),collapsible:u.collapsible,expandIcon:u.expandIcon,expandIconPosition:u.expandIconPosition,size:u.size,dragIcon:u.dragIcon,onChange:K,header:u.header,content:u.content,formListOperate:null,index:0,formStageCompleteName:[].concat(c(k),[w.name])},D):null})]})}})})})};export{N as DragCollapseFormList};
6
6
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.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 { toArray } from '@flatbiz/utils';\nimport { Collapse, Form, 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: Array<string | number>;\n};\nexport function SortableItem(props: SortableItemProps) {\n const form = Form.useFormInstance();\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 getInsideFormItemName: (key: string | string[]) => {\n return [props.formListFieldData.name, ...toArray(key)] as (string | number)[];\n },\n getInsideFormItemData: () => {\n return form.getFieldValue(props.formStageCompleteName) || {};\n },\n index: props.index,\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 items={[\n {\n key: props.uid,\n label: header(),\n children: (\n <Fragment>\n {props.content({\n formListFieldData: props.formListFieldData,\n operation: props.formListOperate,\n uid: props.uid,\n formStageCompleteName: props.formStageCompleteName,\n getInsideFormItemName: (key: string | string[]) => {\n return [props.formListFieldData.name, ...toArray(key)] as (string | number)[];\n },\n getInsideFormItemData: () => {\n return form.getFieldValue(props.formStageCompleteName) || {};\n },\n index: props.index,\n })}\n </Fragment>\n ),\n },\n ]}\n />\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,可通过uidFieldName自定义设置名称\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 const formListValue = Form.useWatch(props.formListName, form);\n\n const getUidValue = hooks.useCallbackRef((item) => {\n return item?.[props.uidFieldName || 'uid'] as string | number;\n });\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) => getUidValue(item) === active.id);\n const newIndex = items.findIndex((item) => getUidValue(item) === 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) => getUidValue(item) === dragActiveId);\n return formListOperationRef.current.find((item) => item.name === targetIndex);\n }, [dragActiveId, getItems, getUidValue]);\n\n const cName = classNames(\n 'drag-collapse-formlist-wrapper',\n { 'dcfw-isEmpty': toArray(formListValue).length === 0 },\n props.className,\n );\n return (\n <div className={cName} style={props.style}>\n <DndContext collisionDetection={closestCenter} onDragStart={handleDragStart} onDragEnd={handleDragEnd}>\n <Form.List name={props.formListName} rules={props.rules}>\n {(fields, operate) => {\n formListOperationRef.current = fields;\n return (\n <Fragment>\n <SortableContext\n items={getItems().map((temp) => getUidValue(temp))}\n strategy={verticalListSortingStrategy}\n >\n <Fragment>\n {fields.map((item, index) => {\n const uid = getUidValue(getItems()[index]);\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","form","Form","useFormInstance","isDisabled","isOverlay","getItemDragDisabled","uid","index","_useSortable","useSortable","id","disabled","listeners","setNodeRef","transform","transition","header","dragIcon","_jsx","_DragOutlined","headerContent","formListFieldData","operation","formListOperate","formStageCompleteName","getInsideFormItemName","key","name","concat","toArray","getInsideFormItemData","getFieldValue","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","items","label","content","DragCollapseFormList","_useState","useState","dragActiveId","setDragActiveId","_useState2","openKeys","setOpenKeys","formListOperationRef","useRef","formListValue","useWatch","formListName","getUidValue","_hooks","useCallbackRef","item","uidFieldName","fbaHooks","useEffectCustom","defaultActiveKeys","defaultActiveKey","length","useUpdateEffect","openKeysNew","has","includes","_array","arrayRemove","handleDragStart","event","active","getItems","handleDragEnd","over","oldIndex","findIndex","newIndex","newList","arrayMove","setFields","value","onDropChange","dragOverlayItem","useMemo","targetIndex","current","find","cName","DndContext","collisionDetection","closestCenter","onDragStart","onDragEnd","List","rules","fields","operate","SortableContext","map","temp","strategy","verticalListSortingStrategy","DragOverlay","dropAnimation","duration"],"mappings":"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"}
1
+ {"version":3,"file":"index.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 { toArray } from '@flatbiz/utils';\nimport { Collapse, Form, 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: Array<string | number>;\n};\nexport function SortableItem(props: SortableItemProps) {\n const form = Form.useFormInstance();\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 getInsideFormItemName: (key: string | string[]) => {\n return [props.formListFieldData.name, ...toArray(key)] as (string | number)[];\n },\n getInsideFormItemData: () => {\n return form.getFieldValue(props.formStageCompleteName) || {};\n },\n index: props.index,\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 items={[\n {\n key: props.uid,\n label: header(),\n children: (\n <Fragment>\n {props.content({\n formListFieldData: props.formListFieldData,\n operation: props.formListOperate,\n uid: props.uid,\n formStageCompleteName: props.formStageCompleteName,\n getInsideFormItemName: (key: string | string[]) => {\n return [props.formListFieldData.name, ...toArray(key)] as (string | number)[];\n },\n getInsideFormItemData: () => {\n return form.getFieldValue(props.formStageCompleteName) || {};\n },\n index: props.index,\n })}\n </Fragment>\n ),\n },\n ]}\n />\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,可通过uidFieldName自定义设置名称\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 const formListCompleteName = props.formListCompleteName || props.formListName;\n const formListName = props.formListName;\n\n const formListValue = Form.useWatch(formListCompleteName, form);\n\n const getUidValue = hooks.useCallbackRef((item) => {\n return item?.[props.uidFieldName || 'uid'] as string | number;\n });\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 const result = array.arrayRemove(openKeys, key);\n openKeysNew = [...result];\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(formListCompleteName) || []) 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) => getUidValue(item) === active.id);\n const newIndex = items.findIndex((item) => getUidValue(item) === over.id);\n const newList = arrayMove<TPlainObject>(items, oldIndex, newIndex);\n form.setFields([{ name: formListCompleteName, value: newList }]);\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) => getUidValue(item) === dragActiveId);\n return formListOperationRef.current.find((item) => item.name === targetIndex);\n }, [dragActiveId, getItems, getUidValue]);\n\n const cName = classNames(\n 'drag-collapse-formlist-wrapper',\n { 'dcfw-isEmpty': toArray(formListValue).length === 0 },\n props.className,\n );\n return (\n <div className={cName} style={props.style}>\n <DndContext collisionDetection={closestCenter} onDragStart={handleDragStart} onDragEnd={handleDragEnd}>\n <Form.List name={formListName} rules={props.rules}>\n {(fields, operate) => {\n formListOperationRef.current = fields;\n return (\n <Fragment>\n <SortableContext\n items={getItems().map((temp) => getUidValue(temp))}\n strategy={verticalListSortingStrategy}\n >\n <Fragment>\n {fields.map((item, index) => {\n const uid = getUidValue(getItems()[index]);\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={[\n ...toArray<string | number>(formListCompleteName),\n item.name,\n ]}\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>(formListCompleteName),\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","form","Form","useFormInstance","isDisabled","isOverlay","getItemDragDisabled","uid","index","_useSortable","useSortable","id","disabled","listeners","setNodeRef","transform","transition","header","dragIcon","_jsx","_DragOutlined","headerContent","formListFieldData","operation","formListOperate","formStageCompleteName","getInsideFormItemName","key","name","concat","toArray","getInsideFormItemData","getFieldValue","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","items","label","content","DragCollapseFormList","_useState","useState","dragActiveId","setDragActiveId","_useState2","openKeys","setOpenKeys","formListOperationRef","useRef","formListCompleteName","formListName","formListValue","useWatch","getUidValue","_hooks","useCallbackRef","item","uidFieldName","fbaHooks","useEffectCustom","defaultActiveKeys","defaultActiveKey","length","useUpdateEffect","openKeysNew","has","includes","result","_array","arrayRemove","handleDragStart","event","active","getItems","handleDragEnd","over","oldIndex","findIndex","newIndex","newList","arrayMove","setFields","value","onDropChange","dragOverlayItem","useMemo","targetIndex","current","find","cName","DndContext","collisionDetection","closestCenter","onDragStart","onDragEnd","List","rules","fields","operate","SortableContext","map","temp","strategy","verticalListSortingStrategy","DragOverlay","dropAnimation","duration"],"mappings":"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"}
@@ -19,5 +19,5 @@ import './../svg-http-view/index.css';
19
19
  import './../table-title-tooltip/index.css';
20
20
  import './index.css';
21
21
  /*! @flatjs/forge MIT @flatbiz/antd */
22
- import{fbaUtils as e}from"../fba-utils/index.js";import{isArray as n}from"@dimjs/lang/cjs/is-array";import{isObject as t}from"@dimjs/lang/cjs/is-object";import{_ as i,a as r}from"../_rollupPluginBabelHelpers-c0dbec57.js";import{sessionStorageCache as a,localStorageCache as o,noop as l,getUuid as s,isUndefinedOrNull as u,isMacEnv as c}from"@flatbiz/utils";import{classNames as d}from"@dimjs/utils/cjs/class-names";import{isUndefined as f}from"@dimjs/lang/cjs/is-undefined";import{get as m}from"@dimjs/utils/cjs/get";import{hooks as p}from"@wove/react/cjs/hooks";import{isString as v}from"@dimjs/lang/cjs/is-string";import{Checkbox as g,Popover as h,Form as y,message as C,Drawer as F,Table as S,Space as b}from"antd";import{createContext as x,useState as R,Fragment as w,forwardRef as j,useMemo as z,useRef as K,useImperativeHandle as _,cloneElement as N,useContext as P,Children as T,useEffect as L}from"react";import{fbaHooks as q}from"../fba-hooks/index.js";import{PaginationWrapper as k}from"../pagination-wrapper/index.js";import{jsx as I,jsxs as V}from"react/jsx-runtime";import D from"@ant-design/icons/es/icons/DownOutlined";import E from"@ant-design/icons/es/icons/UpOutlined";import{isFragment as O}from"react-is";import{BlockLayout as A}from"../block-layout/index.js";import{ButtonWrapper as B}from"../button-wrapper/index.js";import{EasyForm as M}from"../easy-form/index.js";import{FormGrid as W}from"../form-grid/index.js";import{FlexLayout as Q}from"../flex-layout/index.js";import{TableScrollbar as U}from"../table-scrollbar/index.js";import{IconWrapper as G}from"../icon-wrapper/index.js";import{SvgHttpView as H}from"../svg-http-view/index.js";import{TableTitleTooltip as Y}from"../table-title-tooltip/index.js";import{TipsWrapper as $}from"../tips-wrapper/index.js";import"@dimjs/model";import"../use-responsive-point-1e6d93d9.js";import"@dimjs/utils/cjs/uuid";import"@ant-design/icons/es/icons/LoadingOutlined";import"@dimjs/lang/cjs/is-promise";import"../index-853b36e6.js";import"antd/es/locale/en_US";import"antd/es/locale/zh_CN";import"dayjs";import"dayjs/locale/en";import"dayjs/locale/zh-cn";import"dayjs/plugin/advancedFormat";import"dayjs/plugin/customParseFormat";import"dayjs/plugin/localeData";import"dayjs/plugin/utc";import"dayjs/plugin/weekday";import"dayjs/plugin/weekOfYear";import"dayjs/plugin/weekYear";import"@dimjs/utils/cjs/extend";import"../box-grid/index.js";import"@dimjs/lang/cjs/is-number";import"ahooks";import"../form-wrapper/index.js";import"../pre-defined-class-name/index.js";import"@ant-design/icons/es/icons/QuestionCircleOutlined";var J={set:function e(n,t){var r=J.get(n);var o=i({},r,t);a.set("easy_tab_filter_"+n,o);return o},get:function e(n){var i=a.get("easy_tab_filter_"+n);return t(i)?i:{}},remove:function e(n){a.remove("easy_tab_filter_"+n)}};var X={set:function e(n,t){a.set("easy_tab_firstQuery_"+n,{value:t})},get:function e(n){var t;var i=(t=a.get("easy_tab_firstQuery_"+n))==null?void 0:t.value;return i===false?false:true},remove:function e(n){a.remove("easy_tab_firstQuery_"+n)}};var Z={set:function e(n,t){o.set("easy_tab_columnFold_"+n,{value:t})},get:function e(t){var i;var r=(i=o.get("easy_tab_columnFold_"+t))==null?void 0:i.value;return n(r)?r:[]},remove:function e(n){o.remove("easy_tab_columnFold_"+n)}};var ee=x({onRequest:l,tableList:[],getEasyTableRef:function e(){}});var ne=function e(n){var t=R(n.initSelectedRowKeys||[]),i=t[0],r=t[1];var a=function e(t){r(t);n.onChange(t);if(n.cacheKey){Z.set(n.cacheKey,t)}};var o=I(w,{children:I(g.Group,{defaultValue:i,onChange:a,value:i,style:{display:"flex",flexDirection:"column"},children:n.dataList.map(function(e){var n=e["_isFoldTitle"]||e.title;return I(g,{value:e.dataIndex,style:{padding:"0 0 5px 0"},children:n},e.dataIndex)})})});var l=function e(t){if(t.target.checked){a(n.dataList.map(function(e){return e.dataIndex}))}else{a([])}};return I(h,{content:o,title:I(g,{checked:i.length===n.dataList.length,onChange:l,children:"全选(字段列表)"}),placement:"bottomRight",overlayClassName:"fold-operate-popiver",children:n.children})};var te=j(function(t,r){var a;var o=q.useResponsivePoint();var l=R(),u=l[0],c=l[1];var g=R(0),h=g[0],F=g[1];var S=R(false),b=S[0],x=S[1];var w=t.columnFoldConfig;var j=t.asyncColumnRequest;var P=R(false),T=P[0],L=P[1];var D=z(function(){if(t.cacheKey){try{var e=window.frameElement;var n=(e==null?void 0:e.id)||"";return t.cacheKey+"_"+n}catch(e){return t.cacheKey}}if(t.cacheSwitch===true){return location.pathname}if(typeof t.cacheSwitch==="string"){return t.cacheSwitch}return Date.now()+"_"+s()},[t.cacheSwitch,t.cacheKey]);var E=J.get(D);var O=R(function(){if(D){var e=Z.get(D);var t=n(e)?e.filter(function(e){return v(e)}):[];return t.length>0?t:(w==null?void 0:w.initSelectedKeys)||[]}else{return(w==null?void 0:w.initSelectedKeys)||[]}}),A=O[0],B=O[1];var M=t.pageSize||((a=t.initialPaginationParams)==null?void 0:a.pageSize)||10;var W=t.initRequest===undefined?true:t.initRequest;var Q=K(false);var U=K();var G=K([]);var H=R(),Y=H[0],$=H[1];var te=K([]);var ie=i({list:"list",total:"total",pageNo:"pageNo",pageSize:"pageSize"},t.fieldNames);var re=y.useForm(t.form),ae=re[0];var oe=p.useCallbackRef(function(i){return new Promise(function(r,a){var o,l,s,u,d,f,p,v,g,h,y;var S=function(){try{return r()}catch(e){return a(e)}};var b=function(e){try{x(false);if(t.onRequestErrorHandle){t.onRequestErrorHandle(e)}else{void C.error(e.message)}return S()}catch(e){return a(e)}};try{if(t.breforeRequest){var R=function(){try{return j.call(this)}catch(e){return b(e)}}.bind(this);var w=function(e){try{return r()}catch(e){return b(e)}};try{return Promise.resolve(t.breforeRequest(ae)).then(function(e){try{return R()}catch(e){return w(e)}},w)}catch(z){w(z)}}function j(){X.set(D,false);x(true);o=J.set(D,i);l=t.serviceConfig,s=l.requestParamsAdapter,u=l.onRequest,d=l.requestResultAdapter,f=l.dynamicColumsAdapter;p=s?s(o):o;return Promise.resolve(u(e.removeFormValuesInvalidField(p))).then(function(e){try{v=e||{};U.current=v;t.onDataSourceChange==null||t.onDataSourceChange(v);g=v;if(d){g=d(v)}if(f){h=f(v,G.current);$(h)}y=m(g,ie.list);c(n(y)?y:[]);F(m(g,ie.total));x(false);return S()}catch(e){return b(e)}},b)}return j.call(this)}catch(K){b(K)}})});q.useEffectCustom(function(){var e=we();var n=X.get(D);ae.setFieldsValue(i({},t.initialValues,E));if(W||!n){if(e){var r;void oe(i((r={},r[ie.pageNo]=1,r[ie.pageSize]=M,r),t.initialValues,E))}else{void oe(t.initialValues)}}else{J.set(D,t.initialValues||{})}},[]);var le=p.useCallbackRef(function(e){J.remove(D);ae.resetFields();if(e){J.set(D,e);ae.setFieldsValue(e)}});var se=p.useCallbackRef(function(e){J.set(D,e);ae.setFieldsValue(e)});var ue=function e(n,t){if(we()){var i;return i={},i[ie.pageNo]=n,i[ie.pageSize]=t||M,i}else{var r;return r={},r[ie.pageNo]=undefined,r[ie.pageSize]=undefined,r}};var ce=p.useCallbackRef(function(e){var n=i({},ue(1,E[ie.pageSize]),t.initialValues,e);J.remove(D);ae.resetFields();if(e){ae.setFieldsValue(e)}void oe(n)});var de=p.useCallbackRef(function(){return i({},E,ae.getFieldsValue())});var fe=p.useCallbackRef(function(){L(true)});var me=p.useCallbackRef(function(){L(false)});var pe=function e(){return{onRequest:oe,clearQueryCondition:le,updateQueryCondition:se,getRequestParams:de,onResetRequest:ce,form:ae,dataSource:U.current,getDataSource:function e(){return U.current},onFilterDataSource:function e(n){c(n)},onClearDataSource:function e(){F(0);c([])},onUpdateDataSource:function e(n){var i;c(n);U.current=(i={},i[ie.list]=n,i);t.onDataSourceChange==null||t.onDataSourceChange(U.current)},columnFoldTriggerRender:function e(n,i){var r;if(((r=t.columnFoldConfig)==null?void 0:r.triggerType)==="drawer"){return N(n,{onClick:fe})}var a=i.filter(function(e){return!e.hidden&&e.isFold&&e.dataIndex});return I(ne,{dataList:a,onChange:xe,cacheKey:D,initSelectedRowKeys:A,children:n})},onChangeTableColumns:function e(n){$(n)},getTableColumns:function e(){return te.current},loading:b,setEnabledInitRequest:function e(){X.set(D,false)}}};_(r,function(){return pe()});var ve=function e(n){Q.current=n};var ge=function e(n){G.current=n};var he=function e(n){te.current=n};var ye=function e(){if(b)return;var n=ae.getFieldsValue();if(t.onFormFinish){t.onFormFinish(i({},n,ue(1,E[ie.pageSize])))}else{void oe(i({},n,ue(1,E[ie.pageSize])))}};var Ce=f(t.isFull)?true:t.isFull;var Fe=o==="xs"?false:t.filterFixed;var Se=d("fba-easy-table",{"fba-easy-table-full":Ce,"fba-easy-table-filter-fixed":Fe,"fba-easy-table-pagination-fixed":t.paginationFixed},t.className);var be=q.useMemoCustom(function(){return i({showSizeChanger:true,current:E[ie.pageNo]||1,pageSize:E[ie.pageSize]||M,total:h,showTotal:function e(n){return"共 "+n+" 条记录"}},t.pagination)},[ie.pageNo,E,ie.pageSize,D,M,t.pagination,h]);var xe=function e(n){B(n);w==null||w.onChange==null||w.onChange(n)};var Re=p.useCallbackRef(function(e,n){var i,r;var a=(i={},i[ie.pageSize]=n,i[ie.pageNo]=e,i);J.set(D,a);void oe(a);(r=t.pagination)==null||r.onChange==null||r.onChange(e,n)});var we=function e(){return t.paginationFixed||Q.current};p.useUpdateEffect(function(){if(t.paginationFixed){var e;void oe((e={},e[ie.pageSize]=E[ie.pageSize]||M,e[ie.pageNo]=1,e))}else{var n;void oe((n={},n[ie.pageSize]=undefined,n[ie.pageNo]=undefined,n))}},[t.paginationFixed]);var je=d("fba-easy-table-wrapper",{"fba-easy-table-wrapper-inline":t.isInline},t.className);var ze=i({overflowY:t.filterFixed||t.paginationFixed?"hidden":"auto"},t.style);var Ke=typeof t.children==="function"?t.children(U.current):t.children;return I(ee.Provider,{value:{onSetBaseColumns:ge,onSetColumns:he,getEasyTableRef:pe,cacheKey:D,onRequest:oe,tableDataSource:u,tableTotal:h,loading:b,fieldNames:ie,pageSize:M,onSetPaginationStatus:ve,getPaginationStatus:we,onFormFinish:ye,form:ae,paginationFixed:t.paginationFixed||false,foldKeys:t.foldKeys||[],columns:Y,initialValues:t.initialValues,dynamicColumnsConfig:{showFoldKeyList:A,onChangeShowFoldKeyList:xe,columnFoldConfig:w,onOpenColumnFoldModal:fe,onCloseColumnFoldModal:me,columnFoldOpen:T,asyncColumnRequest:j}},children:t.paginationFixed?V("div",{className:je,style:ze,children:[I("div",{className:Se,children:Ke}),h>0&&I("div",{className:"fba-easy-table-pagination",children:I(k,i({size:"small"},be,{onChange:Re}))})]}):I("div",{className:je,style:t.style,children:I("div",{className:Se,children:Ke})})})});var ie=function e(n){var t=q.useResponsivePoint()||"md";var r=P(ee);var a=n.queryButtonProps,o=n.resetButtonProps,l=n.filterOperate,s=n.formClassName,u=s===void 0?"":s,c=n.defaultResetButtonTriggerRequest,m=n.filterWrapperStyle,v=n.filterWrapperClassName,g=n.rightOperateAreaAppendType,h=n.easyFormProps;var y=r.cacheKey,C=r.foldKeys,F=r.fieldNames,S=r.onRequest,b=r.pageSize,x=r.getPaginationStatus,w=r.initialValues,j=r.form,K=r.onFormFinish;var _=typeof n.children==="function"?n.children(j):n.children;var N=g||"cover";var L=z(function(){if(O(_)){return T.toArray(_.props.children)}else{return T.toArray(_)}},[_]);var k=R(false),Q=k[0],U=k[1];var G=p.useCallbackRef(function(){return new Promise(function(e,n){var t;J.remove(y);j.resetFields();j.setFieldsValue(w);if(f(c)||c){return Promise.resolve(j.validateFields()).then(function(e){try{if(x()){S(i((t={},t[F.pageNo]=1,t[F.pageSize]=b,t),w))}else{S(w)}return r.call(this)}catch(e){return n(e)}}.bind(this),n)}function r(){return e()}return r.call(this)})});var H=z(function(){var e=[!(a!=null&&a.hidden)?I(B,i({type:"primary",htmlType:"submit",loading:r.loading,loadingPosition:"center"},a,{children:(a==null?void 0:a.text)||"查询"}),"1"):null,!(o!=null&&o.hidden)?I(B,i({onClick:G},o,{children:(o==null?void 0:o.text)||"重置"}),"2"):null].filter(Boolean);var n=l==null?void 0:l(j);var t=n==null?void 0:n.rightList;var s=(n==null?void 0:n.leftList)||[];var u=e;if(t){if(N==="afterAppend"){u=[].concat(e,t)}else if(N==="beforeAppend"){u=[].concat(t,e)}else{u=t}}if(C.length>0){var c=I(B,{type:"link",style:{padding:"0"},onClick:function e(){U(!Q)},children:Q?V("span",{children:["收起",I(E,{style:{marginLeft:3,fontSize:12}})]}):V("span",{children:["展开",I(D,{style:{marginLeft:3,fontSize:12}})]})},"fold-trigger");if(u.length>0||s.length===0){u.push(c)}else if((s==null?void 0:s.length)>0){s.push(c)}}return L.map(function(e,n){if(!Q&&C.find(function(n){return".$"+n===e.key}))return null;if(e.props["hidden"])return null;if(e.type["domTypeName"]==="FormCol")return e;return I(W.Col,{children:e},n)}).filter(Boolean).concat(I(W.OperateCol,i({},n,{leftList:s,rightList:u}),999))},[L,l,C,j,G,Q,a,o,N,r.loading]);var Y=t==="xs"?"left":(h==null?void 0:h.labelAlign)||"right";return I(A,{className:d("easy-table-filter",v),style:m,children:I(M,i({form:j,autoComplete:"off",onFinish:K,className:u,style:n.formStyle,isPure:true,labelWidth:"80",formItemGap:"15"},h,{labelAlign:Y,children:n.isPure?_:I(W.Row,{gutter:[15,0],gridSize:n.formGridSize,children:H})}))})};var re=function e(){var n=P(ee);return n.getEasyTableRef()};var ae=function e(){var n=P(ee);return{current:n.getEasyTableRef()}};var oe=function e(n){var t=R(n.initSelectedRowKeys||[]),i=t[0],r=t[1];var a={type:"checkbox",selectedRowKeys:i,onChange:function e(t){r(t);n.onChange(t);if(n.cacheKey){Z.set(n.cacheKey,t)}}};var o=[{title:"字段名称",dataIndex:"title",render:function e(n,t){return t["_isFoldTitle"]||n}},{title:"字段Key",dataIndex:"dataIndex"}];return I(w,{children:I(F,{title:"选择字段",open:n.open,onClose:n.onClose,width:"35%",styles:{body:{padding:15}},children:I(S,{bordered:true,size:"small",columns:o,rowSelection:a,rowKey:"dataIndex",pagination:false,scroll:{x:"max-content"},dataSource:n.dataList})})})};var le=["tooltip","tipsWrapperProps","title"];var se=function e(n){return z(function(){var e=n.columns.map(function(e){var n=e.tooltip,t=e.tipsWrapperProps,a=e.title,o=r(e,le);if(typeof a==="string"&&t){if(typeof t==="string"){return i({},o,{title:I($,{tipType:"popover",popoverProps:{content:t},children:a})})}return i({},o,{title:I($,i({},t,{children:a}))})}if(typeof a==="string"&&!!n){return i({},o,{title:I(Y,{tooltip:n,title:a})})}return e}).filter(Boolean);return[].concat(e)},[n.columns])};var ue=function e(n){var t=n.columns;return q.useMemoCustom(function(){var e;if((e=n.columnFoldConfig)!=null&&e.hidden)return t;var i=t[t.length-1];if(n.foldColumnList.length>0&&t.length>0){var r=t.find(function(e){return e["_isFoldColumn"]});if(r&&i.dataIndex!==r.dataIndex){r.title=r["_isFoldTitle"];r["_isFoldColumn"]=false}if(!i["_isFoldColumn"]){var a,o,l,s,u,c;i["_isFoldTitle"]=i["_isFoldTitle"]||i.title;i["_isFoldColumn"]=true;var d=(a=n.columnFoldConfig)==null?void 0:a.triggerType;i.title=V(Q,{direction:"horizontal",fullIndex:0,style:{alignItems:"center"},children:[I("span",{children:i.title}),I("div",{style:{padding:"0 5px 0 20px",display:"flex"},children:d==="drawer"?I(G,{onClick:n.onOpenColumnFoldModal,text:(o=n.columnFoldConfig)==null?void 0:o.text,size:"small",icon:((l=n.columnFoldConfig)==null?void 0:l.icon)||I(H,{svgPath:"ionic/list-circle",color:"#868686"}),hoverTips:((s=n.columnFoldConfig)==null?void 0:s.hoverTipText)||"字段列表",style:{padding:0,margin:0}}):I(ne,{dataList:n.foldColumnList,onChange:n.onChangeFoldColumnList,cacheKey:n.cacheKey,initSelectedRowKeys:n.showFoldKeyList,children:I(G,{text:(u=n.columnFoldConfig)==null?void 0:u.text,style:{padding:0,margin:0},size:"small",icon:((c=n.columnFoldConfig)==null?void 0:c.icon)||I(H,{svgPath:"ionic/list-circle",color:"#868686"})})})})]})}}return t},[n.columns,n.columnFoldConfig])};var ce=function e(n){return z(function(){var e=n.columns.map(function(e){var t=e.hidden,i=e.isFold;if(t)return null;if(i&&!n.showFoldKeyList.includes(e.dataIndex))return null;return e}).filter(Boolean);return[].concat(e)},[n.columns,n.showFoldKeyList])};var de=function e(n){return z(function(){if(!Object.keys(n.asyncColumnRequestResult))return n.columns;return n.columns.map(function(e){var t=e.dataIndex;var i=n.asyncColumnRequestResult[t];if(t&&i){if(i.loading){e.render=function(e){return I(B,{loading:true,type:"text",loadingPosition:"center",removeGap:true,children:e})}}else if(e.asyncRender){e.render=function(n,t,r){return e.asyncRender==null?void 0:e.asyncRender(n,t,r,i.respData)}}}return e})},[n.columns,n.asyncColumnRequestResult])};var fe=["children","rowKey","pagination","isSync","title","actions"];var me=function e(n){var t;if(!n.title&&!((t=n.actions)!=null&&t.length)){return null}return V(Q,{fullIndex:0,direction:"horizontal",style:{marginBottom:10,alignItems:"center"},children:[n.title?I("div",{style:{fontWeight:400,fontSize:16},children:n.title}):null,I(b,{size:10,children:n.actions})]})};var pe=function e(n){var t=P(ee);var a=n.children,o=n.rowKey,l=n.pagination,f=n.isSync,m=n.title,v=n.actions,g=r(n,fe);var h=q.useResponsivePoint()||"";var y=K({});var C=R({}),F=C[0],b=C[1];var x=t.dynamicColumnsConfig,j=x.columnFoldConfig,_=x.onCloseColumnFoldModal,N=x.columnFoldOpen,T=x.onOpenColumnFoldModal,k=x.asyncColumnRequest,D=x.showFoldKeyList,E=x.onChangeShowFoldKeyList;var O=t.cacheKey,B=t.fieldNames,M=t.onRequest,W=t.tableDataSource,Q=t.pageSize,G=t.tableTotal,H=t.loading,Y=t.paginationFixed,$=t.onSetPaginationStatus;var X=J.get(O);q.useEffectCustom(function(){t.onSetBaseColumns(n.columns||[])},[]);L(function(){if(k!=null&&k.length){var e=function e(){var t;var r=k[n];y.current=i({},y.current,(t={},t[r.dataIndex]={loading:true},t));b(y.current);r.onRequest().then(function(e){var n;y.current=i({},y.current,(n={},n[r.dataIndex]={loading:false,respData:e},n));b(y.current)}).catch(function(e){var n;console.error(e==null?void 0:e.message);y.current=i({},y.current,(n={},n[r.dataIndex]={loading:false},n));b(y.current)})};for(var n=0;n<k.length;n++){e()}}},[k]);var Z=q.useMemoCustom(function(){if(t.columns){t.onSetColumns(t.columns);return t.columns}else{t.onSetColumns(n.columns);return n.columns}},[t.columns,n.columns]);var ne=se({columns:[].concat(Z)});var te=Z.filter(function(e){return!e.hidden&&e.isFold&&e.dataIndex});ne=ue({cacheKey:O,columns:ne,foldColumnList:te,showFoldKeyList:D,columnFoldConfig:j,onOpenColumnFoldModal:T,onChangeFoldColumnList:E});ne=ce({columns:ne,showFoldKeyList:D});ne=de({columns:ne,asyncColumnRequestResult:F});q.useEffectCustom(function(){$(l!==false)},[l]);p.useUpdateEffect(function(){if(!Y){if(l!==false){var e;M((e={},e[B.pageSize]=X[B.pageSize]||Q,e[B.pageNo]=1,e))}else{var n;M((n={},n[B.pageSize]=undefined,n[B.pageNo]=undefined,n))}}},[l]);var ie=z(function(){if(Y||l===false)return false;return i({showSizeChanger:true,current:X[B.pageNo]||1,pageSize:X[B.pageSize]||Q,total:G,showTotal:function e(n){return"共 "+n+" 条记录"}},n.pagination)},[X,B.pageNo,B.pageSize,Q,l,Y,n.pagination,G]);var re=function e(t,i,r,a){if(a.action==="paginate"&&ie){var o;M((o={},o[B.pageSize]=t.pageSize,o[B.pageNo]=t.current,o))}else{n.onChange==null||n.onChange(t,i,r,a)}};var ae=z(function(){if(!W)return undefined;if(W.length===0){return[]}if(typeof o==="string"&&u(W[0][o])){return W.map(function(e){e[o]=s();return e})}return W},[W,o]);ne=z(function(){return ne.map(function(e){if(!!e.fixed&&h==="xs"){e.fixed=undefined}if(!!e.defaultValue&&!e.render){e.render=function(n){return u(n)||n==""?e.defaultValue:n}}return e})},[ne,h]);var le=function e(){if(f&&!ae){return V(w,{children:[I(me,{title:m,actions:v}),a,I(S,{size:"small",scroll:{x:"max-content"},bordered:true,rowKey:o,columns:ne,loading:H},"1")]})}if(c()){return V(w,{children:[I(me,{title:m,actions:v}),a,I(S,i({size:"small",scroll:{x:"max-content"},bordered:true},g,{columns:ne,pagination:ie,rowKey:o,onChange:re,loading:H,dataSource:ae}),"2")]})}return V(w,{children:[I(me,{title:m,actions:v}),a,I(U,{children:I(S,i({size:"small",scroll:{x:"max-content"},bordered:true},g,{columns:ne,pagination:ie,rowKey:o,onChange:re,loading:H,dataSource:ae}),"3")})]})};return V(A,{className:d("easy-table-table",{"ett-empty-show-small":n.emptyShowSize==="small"},n.tableWrapperClassName),style:n.tableWrapperStyle,children:[le(),I(oe,{dataList:te,onClose:_,open:N,onChange:E,cacheKey:O,initSelectedRowKeys:D})]})};var ve=e.attachPropertiesToComponent(te,{Filter:ie,Table:pe,useEasyTablRef:ae,useEasyTable:re,setEnabledInitRequest:function e(n){X.set(n,false)}});export{ve as EasyTable};
22
+ import{fbaUtils as e}from"../fba-utils/index.js";import{isArray as n}from"@dimjs/lang/cjs/is-array";import{isObject as t}from"@dimjs/lang/cjs/is-object";import{_ as r,a as i}from"../_rollupPluginBabelHelpers-c0dbec57.js";import{sessionStorageCache as a,localStorageCache as o,noop as l,getUuid as s,isUndefinedOrNull as u,isMacEnv as c}from"@flatbiz/utils";import{classNames as d}from"@dimjs/utils/cjs/class-names";import{isUndefined as f}from"@dimjs/lang/cjs/is-undefined";import{get as m}from"@dimjs/utils/cjs/get";import{hooks as p}from"@wove/react/cjs/hooks";import{isString as v}from"@dimjs/lang/cjs/is-string";import{Checkbox as g,Popover as h,Form as y,message as C,Drawer as F,Table as S,Space as b}from"antd";import{createContext as x,useState as R,Fragment as w,forwardRef as j,useMemo as K,useRef as z,useImperativeHandle as _,cloneElement as I,useContext as N,Children as P,useEffect as T}from"react";import{fbaHooks as L}from"../fba-hooks/index.js";import{PaginationWrapper as q}from"../pagination-wrapper/index.js";import{jsx as k,jsxs as V}from"react/jsx-runtime";import E from"@ant-design/icons/es/icons/DownOutlined";import D from"@ant-design/icons/es/icons/UpOutlined";import{isFragment as O}from"react-is";import{BlockLayout as A}from"../block-layout/index.js";import{ButtonWrapper as B}from"../button-wrapper/index.js";import{EasyForm as M}from"../easy-form/index.js";import{FormGrid as W}from"../form-grid/index.js";import{FlexLayout as Q}from"../flex-layout/index.js";import{TableScrollbar as U}from"../table-scrollbar/index.js";import{IconWrapper as G}from"../icon-wrapper/index.js";import{SvgHttpView as H}from"../svg-http-view/index.js";import{TableTitleTooltip as Y}from"../table-title-tooltip/index.js";import{TipsWrapper as $}from"../tips-wrapper/index.js";import"@dimjs/model";import"../use-responsive-point-1e6d93d9.js";import"@dimjs/utils/cjs/uuid";import"@ant-design/icons/es/icons/LoadingOutlined";import"@dimjs/lang/cjs/is-promise";import"../index-853b36e6.js";import"antd/es/locale/en_US";import"antd/es/locale/zh_CN";import"dayjs";import"dayjs/locale/en";import"dayjs/locale/zh-cn";import"dayjs/plugin/advancedFormat";import"dayjs/plugin/customParseFormat";import"dayjs/plugin/localeData";import"dayjs/plugin/utc";import"dayjs/plugin/weekday";import"dayjs/plugin/weekOfYear";import"dayjs/plugin/weekYear";import"@dimjs/utils/cjs/extend";import"../box-grid/index.js";import"@dimjs/lang/cjs/is-number";import"ahooks";import"../form-wrapper/index.js";import"../pre-defined-class-name/index.js";import"@ant-design/icons/es/icons/QuestionCircleOutlined";var J={set:function e(n,t){var i=J.get(n);var o=r({},i,t);a.set("easy_tab_filter_"+n,o);return o},get:function e(n){var r=a.get("easy_tab_filter_"+n);return t(r)?r:{}},remove:function e(n){a.remove("easy_tab_filter_"+n)}};var X={set:function e(n,t){a.set("easy_tab_firstQuery_"+n,{value:t})},get:function e(n){var t;var r=(t=a.get("easy_tab_firstQuery_"+n))==null?void 0:t.value;return r===false?false:true},remove:function e(n){a.remove("easy_tab_firstQuery_"+n)}};var Z={set:function e(n,t){o.set("easy_tab_columnFold_"+n,{value:t})},get:function e(t){var r;var i=(r=o.get("easy_tab_columnFold_"+t))==null?void 0:r.value;return n(i)?i:[]},remove:function e(n){o.remove("easy_tab_columnFold_"+n)}};var ee=x({onRequest:l,tableList:[],getEasyTableRef:function e(){}});var ne=function e(n){var t=R(n.initSelectedRowKeys||[]),r=t[0],i=t[1];var a=function e(t){i(t);n.onChange(t);if(n.cacheKey){Z.set(n.cacheKey,t)}};var o=k(w,{children:k(g.Group,{defaultValue:r,onChange:a,value:r,style:{display:"flex",flexDirection:"column"},children:n.dataList.map(function(e){var n=e["_isFoldTitle"]||e.title;return k(g,{value:e.dataIndex,style:{padding:"0 0 5px 0"},children:n},e.dataIndex)})})});var l=function e(t){if(t.target.checked){a(n.dataList.map(function(e){return e.dataIndex}))}else{a([])}};return k(h,{content:o,title:k(g,{checked:r.length===n.dataList.length,onChange:l,children:"全选(字段列表)"}),placement:"bottomRight",overlayClassName:"fold-operate-popiver",children:n.children})};var te=function e(n,t){var r=n.getFieldsValue()||{};if(!(t!=null&&t.length)){return r}var i={};t.forEach(function(e){i[e]=r[e]});return i};var re=j(function(t,i){var a;var o=L.useResponsivePoint();var l=R(),u=l[0],c=l[1];var g=R(0),h=g[0],F=g[1];var S=R(false),b=S[0],x=S[1];var w=t.columnFoldConfig;var j=t.asyncColumnRequest;var N=R(false),P=N[0],T=N[1];var E=K(function(){if(t.cacheKey){try{var e=window.frameElement;var n=(e==null?void 0:e.id)||"";return t.cacheKey+"_"+n}catch(e){return t.cacheKey}}if(t.cacheSwitch===true){return location.pathname}if(typeof t.cacheSwitch==="string"){return t.cacheSwitch}return Date.now()+"_"+s()},[t.cacheSwitch,t.cacheKey]);var D=J.get(E);var O=R(function(){if(E){var e=Z.get(E);var t=n(e)?e.filter(function(e){return v(e)}):[];return t.length>0?t:(w==null?void 0:w.initSelectedKeys)||[]}else{return(w==null?void 0:w.initSelectedKeys)||[]}}),A=O[0],B=O[1];var M=t.pageSize||((a=t.initialPaginationParams)==null?void 0:a.pageSize)||10;var W=t.initRequest===undefined?true:t.initRequest;var Q=z(false);var U=z();var G=z([]);var H=R(),Y=H[0],$=H[1];var re=z([]);var ie=r({list:"list",total:"total",pageNo:"pageNo",pageSize:"pageSize"},t.fieldNames);var ae=y.useFormInstance();var oe=y.useForm(t.form||ae),le=oe[0];var se=p.useCallbackRef(function(r){return new Promise(function(i,a){var o,l,s,u,d,f,p,v,g,h,y;var S=function(){try{return i()}catch(e){return a(e)}};var b=function(e){try{x(false);if(t.onRequestErrorHandle){t.onRequestErrorHandle(e)}else{void C.error(e.message)}return S()}catch(e){return a(e)}};try{if(t.breforeRequest){var R=function(){try{return j.call(this)}catch(e){return b(e)}}.bind(this);var w=function(e){try{return i()}catch(e){return b(e)}};try{return Promise.resolve(t.breforeRequest(le)).then(function(e){try{return R()}catch(e){return w(e)}},w)}catch(K){w(K)}}function j(){X.set(E,false);x(true);o=J.set(E,r);l=t.serviceConfig,s=l.requestParamsAdapter,u=l.onRequest,d=l.requestResultAdapter,f=l.dynamicColumsAdapter;p=s?s(o):o;return Promise.resolve(u(e.removeFormValuesInvalidField(p))).then(function(e){try{v=e||{};U.current=v;t.onDataSourceChange==null||t.onDataSourceChange(v);g=v;if(d){g=d(v)}if(f){h=f(v,G.current);$(h)}y=m(g,ie.list);c(n(y)?y:[]);F(m(g,ie.total));x(false);return S()}catch(e){return b(e)}},b)}return j.call(this)}catch(z){b(z)}})});L.useEffectCustom(function(){var e=Ke();var n=X.get(E);le.setFieldsValue(r({},t.initialValues,D));if(W||!n){if(e){var i;void se(r((i={},i[ie.pageNo]=1,i[ie.pageSize]=M,i),t.initialValues,D))}else{void se(t.initialValues)}}else{J.set(E,t.initialValues||{})}},[]);var ue=p.useCallbackRef(function(e){J.remove(E);le.resetFields();if(e){J.set(E,e);le.setFieldsValue(e)}});var ce=p.useCallbackRef(function(e){J.set(E,e);le.setFieldsValue(e)});var de=function e(n,t){if(Ke()){var r;return r={},r[ie.pageNo]=n,r[ie.pageSize]=t||M,r}else{var i;return i={},i[ie.pageNo]=undefined,i[ie.pageSize]=undefined,i}};var fe=p.useCallbackRef(function(e){var n=r({},de(1,D[ie.pageSize]),t.initialValues,e);J.remove(E);le.resetFields();if(e){le.setFieldsValue(e)}void se(n)});var me=p.useCallbackRef(function(){return r({},D,te(le,t.filterFormItemKeys))});var pe=p.useCallbackRef(function(){T(true)});var ve=p.useCallbackRef(function(){T(false)});var ge=function e(){return{onRequest:se,clearQueryCondition:ue,updateQueryCondition:ce,getRequestParams:me,onResetRequest:fe,form:le,dataSource:U.current,getDataSource:function e(){return U.current},onFilterDataSource:function e(n){c(n)},onClearDataSource:function e(){F(0);c([])},onUpdateDataSource:function e(n){var r;c(n);U.current=(r={},r[ie.list]=n,r);t.onDataSourceChange==null||t.onDataSourceChange(U.current)},columnFoldTriggerRender:function e(n,r){var i;if(((i=t.columnFoldConfig)==null?void 0:i.triggerType)==="drawer"){return I(n,{onClick:pe})}var a=r.filter(function(e){return!e.hidden&&e.isFold&&e.dataIndex});return k(ne,{dataList:a,onChange:we,cacheKey:E,initSelectedRowKeys:A,children:n})},onChangeTableColumns:function e(n){$(n)},getTableColumns:function e(){return re.current},loading:b,setEnabledInitRequest:function e(){X.set(E,false)}}};_(i,function(){return ge()});var he=function e(n){Q.current=n};var ye=function e(n){G.current=n};var Ce=function e(n){re.current=n};var Fe=function e(){if(b){console.log("loading...");return}var n=te(le,t.filterFormItemKeys);if(t.onFormFinish){t.onFormFinish(r({},n,de(1,D[ie.pageSize])))}else{void se(r({},n,de(1,D[ie.pageSize])))}};var Se=f(t.isFull)?true:t.isFull;var be=o==="xs"?false:t.filterFixed;var xe=d("fba-easy-table",{"fba-easy-table-full":Se,"fba-easy-table-filter-fixed":be,"fba-easy-table-pagination-fixed":t.paginationFixed},t.className);var Re=L.useMemoCustom(function(){return r({showSizeChanger:true,current:D[ie.pageNo]||1,pageSize:D[ie.pageSize]||M,total:h,showTotal:function e(n){return"共 "+n+" 条记录"}},t.pagination)},[ie.pageNo,D,ie.pageSize,E,M,t.pagination,h]);var we=function e(n){B(n);w==null||w.onChange==null||w.onChange(n)};var je=p.useCallbackRef(function(e,n){var r,i;var a=(r={},r[ie.pageSize]=n,r[ie.pageNo]=e,r);J.set(E,a);void se(a);(i=t.pagination)==null||i.onChange==null||i.onChange(e,n)});var Ke=function e(){return t.paginationFixed||Q.current};p.useUpdateEffect(function(){if(t.paginationFixed){var e;void se((e={},e[ie.pageSize]=D[ie.pageSize]||M,e[ie.pageNo]=1,e))}else{var n;void se((n={},n[ie.pageSize]=undefined,n[ie.pageNo]=undefined,n))}},[t.paginationFixed]);var ze=d("fba-easy-table-wrapper",{"fba-easy-table-wrapper-inline":t.isInline},t.className);var _e=r({overflowY:t.filterFixed||t.paginationFixed?"hidden":"auto"},t.style);var Ie=typeof t.children==="function"?t.children(U.current):t.children;return k(ee.Provider,{value:{onSetBaseColumns:ye,onSetColumns:Ce,getEasyTableRef:ge,cacheKey:E,onRequest:se,tableDataSource:u,tableTotal:h,loading:b,fieldNames:ie,pageSize:M,onSetPaginationStatus:he,getPaginationStatus:Ke,onFormFinish:Fe,form:le,paginationFixed:t.paginationFixed||false,foldKeys:t.foldKeys||[],columns:Y,initialValues:t.initialValues,dynamicColumnsConfig:{showFoldKeyList:A,onChangeShowFoldKeyList:we,columnFoldConfig:w,onOpenColumnFoldModal:pe,onCloseColumnFoldModal:ve,columnFoldOpen:P,asyncColumnRequest:j},filterFormItemKeys:t.filterFormItemKeys},children:t.paginationFixed?V("div",{className:ze,style:_e,children:[k("div",{className:xe,children:Ie}),h>0&&k("div",{className:"fba-easy-table-pagination",children:k(q,r({size:"small"},Re,{onChange:je}))})]}):k("div",{className:ze,style:t.style,children:k("div",{className:xe,children:Ie})})})});var ie=function e(n){var t;var i=L.useResponsivePoint()||"md";var a=N(ee);var o=y.useFormInstance();var l=n.queryButtonProps,s=n.resetButtonProps,u=n.filterOperate,c=n.formClassName,m=c===void 0?"":c,v=n.defaultResetButtonTriggerRequest,g=n.filterWrapperStyle,h=n.filterWrapperClassName,C=n.rightOperateAreaAppendType,F=n.easyFormProps;var S=a.cacheKey,b=a.foldKeys,x=a.fieldNames,w=a.onRequest,j=a.pageSize,z=a.getPaginationStatus,_=a.initialValues,I=a.form,T=a.onFormFinish;var q=typeof n.children==="function"?n.children(I):n.children;var Q=C||"cover";var U=K(function(){if(O(q)){return P.toArray(q.props.children)}else{return P.toArray(q)}},[q]);var G=R(false),H=G[0],Y=G[1];var $=K(function(){var e;if((e=a.filterFormItemKeys)!=null&&e.length||o){return false}return true},[(t=a.filterFormItemKeys)==null?void 0:t.length,o]);var X=p.useCallbackRef(function(){return new Promise(function(e,n){var t;if(a.loading){console.log("loading...");return e()}J.remove(S);I.resetFields();I.setFieldsValue(_);if(f(v)||v){return Promise.resolve(I.validateFields(a.filterFormItemKeys)).then(function(e){try{if(z()){w(r((t={},t[x.pageNo]=1,t[x.pageSize]=j,t),_))}else{w(_)}return i.call(this)}catch(e){return n(e)}}.bind(this),n)}function i(){return e()}return i.call(this)})});var Z=K(function(){var e=[!(l!=null&&l.hidden)?k(B,r({type:"primary",htmlType:$?"submit":undefined,loadingPosition:"center",loading:a.loading,onClick:function e(){var n;if(o||(n=a.filterFormItemKeys)!=null&&n.length){void I.validateFields(a.filterFormItemKeys).then(function(){T==null||T()})}}},l,{style:r({},l==null?void 0:l.style,{cursor:a.loading?"not-allowed":undefined}),children:(l==null?void 0:l.text)||"查询"}),"1"):null,!(s!=null&&s.hidden)?k(B,r({onClick:X},s,{style:r({},s==null?void 0:s.style,{cursor:a.loading?"not-allowed":undefined}),children:(s==null?void 0:s.text)||"重置"}),"2"):null].filter(Boolean);var n=u==null?void 0:u(I);var t=n==null?void 0:n.rightList;var i=(n==null?void 0:n.leftList)||[];var c=e;if(t){if(Q==="afterAppend"){c=[].concat(e,t)}else if(Q==="beforeAppend"){c=[].concat(t,e)}else{c=t}}if(b.length>0){var d=k(B,{type:"link",style:{padding:"0"},onClick:function e(){Y(!H)},children:H?V("span",{children:["收起",k(D,{style:{marginLeft:3,fontSize:12}})]}):V("span",{children:["展开",k(E,{style:{marginLeft:3,fontSize:12}})]})},"fold-trigger");if(c.length>0||i.length===0){c.push(d)}else if((i==null?void 0:i.length)>0){i.push(d)}}return U.map(function(e,n){if(!H&&b.find(function(n){return".$"+n===e.key}))return null;if(e.props["hidden"])return null;if(e.type["domTypeName"]==="FormCol")return e;return k(W.Col,{children:e},n)}).filter(Boolean).concat(k(W.OperateCol,r({},n,{leftList:i,rightList:c}),999))},[l,$,a.loading,a.filterFormItemKeys,s,X,u,I,b,U,o,T,Q,H]);var ne=i==="xs"?"left":(F==null?void 0:F.labelAlign)||"right";return k(A,{className:d("easy-table-filter",h),style:g,children:k(M,r({form:I,autoComplete:"off",onFinish:$?T:undefined,className:m,style:n.formStyle,isPure:true,labelWidth:"80",formItemGap:"15"},F,{labelAlign:ne,children:n.isPure?q:k(W.Row,{gutter:[15,0],gridSize:n.formGridSize,children:Z})}))})};var ae=function e(){var n=N(ee);return n.getEasyTableRef()};var oe=function e(){var n=N(ee);return{current:n.getEasyTableRef()}};var le=function e(n){var t=R(n.initSelectedRowKeys||[]),r=t[0],i=t[1];var a={type:"checkbox",selectedRowKeys:r,onChange:function e(t){i(t);n.onChange(t);if(n.cacheKey){Z.set(n.cacheKey,t)}}};var o=[{title:"字段名称",dataIndex:"title",render:function e(n,t){return t["_isFoldTitle"]||n}},{title:"字段Key",dataIndex:"dataIndex"}];return k(w,{children:k(F,{title:"选择字段",open:n.open,onClose:n.onClose,width:"35%",styles:{body:{padding:15}},children:k(S,{bordered:true,size:"small",columns:o,rowSelection:a,rowKey:"dataIndex",pagination:false,scroll:{x:"max-content"},dataSource:n.dataList})})})};var se=["tooltip","tipsWrapperProps","title"];var ue=function e(n){return K(function(){var e=n.columns.map(function(e){var n=e.tooltip,t=e.tipsWrapperProps,a=e.title,o=i(e,se);if(typeof a==="string"&&t){if(typeof t==="string"){return r({},o,{title:k($,{tipType:"popover",popoverProps:{content:t},children:a})})}return r({},o,{title:k($,r({},t,{children:a}))})}if(typeof a==="string"&&!!n){return r({},o,{title:k(Y,{tooltip:n,title:a})})}return e}).filter(Boolean);return[].concat(e)},[n.columns])};var ce=function e(n){var t=n.columns;return L.useMemoCustom(function(){var e;if((e=n.columnFoldConfig)!=null&&e.hidden)return t;var r=t[t.length-1];if(n.foldColumnList.length>0&&t.length>0){var i=t.find(function(e){return e["_isFoldColumn"]});if(i&&r.dataIndex!==i.dataIndex){i.title=i["_isFoldTitle"];i["_isFoldColumn"]=false}if(!r["_isFoldColumn"]){var a,o,l,s,u,c;r["_isFoldTitle"]=r["_isFoldTitle"]||r.title;r["_isFoldColumn"]=true;var d=(a=n.columnFoldConfig)==null?void 0:a.triggerType;r.title=V(Q,{direction:"horizontal",fullIndex:0,style:{alignItems:"center"},children:[k("span",{children:r.title}),k("div",{style:{padding:"0 5px 0 20px",display:"flex"},children:d==="drawer"?k(G,{onClick:n.onOpenColumnFoldModal,text:(o=n.columnFoldConfig)==null?void 0:o.text,size:"small",icon:((l=n.columnFoldConfig)==null?void 0:l.icon)||k(H,{svgPath:"ionic/list-circle",color:"#868686"}),hoverTips:((s=n.columnFoldConfig)==null?void 0:s.hoverTipText)||"字段列表",style:{padding:0,margin:0}}):k(ne,{dataList:n.foldColumnList,onChange:n.onChangeFoldColumnList,cacheKey:n.cacheKey,initSelectedRowKeys:n.showFoldKeyList,children:k(G,{text:(u=n.columnFoldConfig)==null?void 0:u.text,style:{padding:0,margin:0},size:"small",icon:((c=n.columnFoldConfig)==null?void 0:c.icon)||k(H,{svgPath:"ionic/list-circle",color:"#868686"})})})})]})}}return t},[n.columns,n.columnFoldConfig])};var de=function e(n){return K(function(){var e=n.columns.map(function(e){var t=e.hidden,r=e.isFold;if(t)return null;if(r&&!n.showFoldKeyList.includes(e.dataIndex))return null;return e}).filter(Boolean);return[].concat(e)},[n.columns,n.showFoldKeyList])};var fe=function e(n){return K(function(){if(!Object.keys(n.asyncColumnRequestResult))return n.columns;return n.columns.map(function(e){var t=e.dataIndex;var r=n.asyncColumnRequestResult[t];if(t&&r){if(r.loading){e.render=function(e){return k(B,{loading:true,type:"text",loadingPosition:"center",removeGap:true,children:e})}}else if(e.asyncRender){e.render=function(n,t,i){return e.asyncRender==null?void 0:e.asyncRender(n,t,i,r.respData)}}}return e})},[n.columns,n.asyncColumnRequestResult])};var me=["children","rowKey","pagination","isSync","title","actions"];var pe=function e(n){var t;if(!n.title&&!((t=n.actions)!=null&&t.length)){return null}return V(Q,{fullIndex:0,direction:"horizontal",style:{marginBottom:10,alignItems:"center"},children:[n.title?k("div",{style:{fontWeight:400,fontSize:16},children:n.title}):null,k(b,{size:10,children:n.actions})]})};var ve=function e(n){var t=N(ee);var a=n.children,o=n.rowKey,l=n.pagination,f=n.isSync,m=n.title,v=n.actions,g=i(n,me);var h=L.useResponsivePoint()||"";var y=z({});var C=R({}),F=C[0],b=C[1];var x=t.dynamicColumnsConfig,j=x.columnFoldConfig,_=x.onCloseColumnFoldModal,I=x.columnFoldOpen,P=x.onOpenColumnFoldModal,q=x.asyncColumnRequest,E=x.showFoldKeyList,D=x.onChangeShowFoldKeyList;var O=t.cacheKey,B=t.fieldNames,M=t.onRequest,W=t.tableDataSource,Q=t.pageSize,G=t.tableTotal,H=t.loading,Y=t.paginationFixed,$=t.onSetPaginationStatus;var X=J.get(O);L.useEffectCustom(function(){t.onSetBaseColumns(n.columns||[])},[]);T(function(){if(q!=null&&q.length){var e=function e(){var t;var i=q[n];y.current=r({},y.current,(t={},t[i.dataIndex]={loading:true},t));b(y.current);i.onRequest().then(function(e){var n;y.current=r({},y.current,(n={},n[i.dataIndex]={loading:false,respData:e},n));b(y.current)}).catch(function(e){var n;console.error(e==null?void 0:e.message);y.current=r({},y.current,(n={},n[i.dataIndex]={loading:false},n));b(y.current)})};for(var n=0;n<q.length;n++){e()}}},[q]);var Z=L.useMemoCustom(function(){if(t.columns){t.onSetColumns(t.columns);return t.columns}else{t.onSetColumns(n.columns);return n.columns}},[t.columns,n.columns]);var ne=ue({columns:[].concat(Z)});var te=Z.filter(function(e){return!e.hidden&&e.isFold&&e.dataIndex});ne=ce({cacheKey:O,columns:ne,foldColumnList:te,showFoldKeyList:E,columnFoldConfig:j,onOpenColumnFoldModal:P,onChangeFoldColumnList:D});ne=de({columns:ne,showFoldKeyList:E});ne=fe({columns:ne,asyncColumnRequestResult:F});L.useEffectCustom(function(){$(l!==false)},[l]);p.useUpdateEffect(function(){if(!Y){if(l!==false){var e;M((e={},e[B.pageSize]=X[B.pageSize]||Q,e[B.pageNo]=1,e))}else{var n;M((n={},n[B.pageSize]=undefined,n[B.pageNo]=undefined,n))}}},[l]);var re=K(function(){if(Y||l===false)return false;return r({showSizeChanger:true,current:X[B.pageNo]||1,pageSize:X[B.pageSize]||Q,total:G,showTotal:function e(n){return"共 "+n+" 条记录"}},n.pagination)},[X,B.pageNo,B.pageSize,Q,l,Y,n.pagination,G]);var ie=function e(t,r,i,a){if(a.action==="paginate"&&re){var o;M((o={},o[B.pageSize]=t.pageSize,o[B.pageNo]=t.current,o))}else{n.onChange==null||n.onChange(t,r,i,a)}};var ae=K(function(){if(!W)return undefined;if(W.length===0){return[]}if(typeof o==="string"&&u(W[0][o])){return W.map(function(e){e[o]=s();return e})}return W},[W,o]);ne=K(function(){return ne.map(function(e){if(!!e.fixed&&h==="xs"){e.fixed=undefined}if(!!e.defaultValue&&!e.render){e.render=function(n){return u(n)||n==""?e.defaultValue:n}}return e})},[ne,h]);var oe=function e(){if(f&&!ae){return V(w,{children:[k(pe,{title:m,actions:v}),a,k(S,{size:"small",scroll:{x:"max-content"},bordered:true,rowKey:o,columns:ne,loading:H},"1")]})}if(c()){return V(w,{children:[k(pe,{title:m,actions:v}),a,k(S,r({size:"small",scroll:{x:"max-content"},bordered:true},g,{columns:ne,pagination:re,rowKey:o,onChange:ie,loading:H,dataSource:ae}),"2")]})}return V(w,{children:[k(pe,{title:m,actions:v}),a,k(U,{children:k(S,r({size:"small",scroll:{x:"max-content"},bordered:true},g,{columns:ne,pagination:re,rowKey:o,onChange:ie,loading:H,dataSource:ae}),"3")})]})};return V(A,{className:d("easy-table-table",{"ett-empty-show-small":n.emptyShowSize==="small"},n.tableWrapperClassName),style:n.tableWrapperStyle,children:[oe(),k(le,{dataList:te,onClose:_,open:I,onChange:D,cacheKey:O,initSelectedRowKeys:E})]})};var ge=e.attachPropertiesToComponent(re,{Filter:ie,Table:ve,useEasyTablRef:oe,useEasyTable:ae,setEnabledInitRequest:function e(n){X.set(n,false)}});export{ge as EasyTable};
23
23
  //# sourceMappingURL=index.js.map