@flatbiz/antd 5.0.43 → 5.0.44
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/button-operate/index.js +1 -1
- package/dist/{button-operate-DprXMhOZ.js → button-operate-BIWXX7to.js} +3 -2
- package/dist/button-operate-BIWXX7to.js.map +1 -0
- package/dist/cascader-wrapper/index.d.ts +1 -1
- package/dist/cascader-wrapper/index.js +2 -2
- package/dist/{cascader-wrapper-BFCjHaa9.js → cascader-wrapper-CMYrmR6L.js} +2 -2
- package/dist/{cascader-wrapper-BFCjHaa9.js.map → cascader-wrapper-CMYrmR6L.js.map} +1 -1
- package/dist/{cell-render-Btk1xTUj.js → cell-render-1gunNiMm.js} +11 -5
- package/dist/cell-render-1gunNiMm.js.map +1 -0
- package/dist/{copy-BbkSnxi9.js → copy-BSlIwnwz.js} +9 -4
- package/dist/copy-BSlIwnwz.js.map +1 -0
- package/dist/copy-wrapper/index.d.ts +15 -4
- package/dist/copy-wrapper/index.js +1 -1
- package/dist/{drag-Bn9b0R-o.js → drag-CGxDk1SF.js} +2 -2
- package/dist/{drag-Bn9b0R-o.js.map → drag-CGxDk1SF.js.map} +1 -1
- package/dist/drag-editable-table/index.d.ts +3 -1
- package/dist/drag-editable-table/index.js +11 -8
- package/dist/drag-editable-table/index.js.map +1 -1
- package/dist/{drawer-BITwshmb.js → drawer-6Cq1mcQa.js} +2 -73
- package/dist/drawer-6Cq1mcQa.js.map +1 -0
- package/dist/editable-table/index.css +1 -1
- package/dist/editable-table/index.d.ts +3 -1
- package/dist/editable-table/index.js +10 -6
- package/dist/editable-table/index.js.map +1 -1
- package/dist/{editable-table-Bsch15kT.js → editable-table-Ckl_Q1fk.js} +3 -3
- package/dist/{editable-table-Bsch15kT.js.map → editable-table-Ckl_Q1fk.js.map} +1 -1
- package/dist/index-DSPRsDId.js +77 -0
- package/dist/index-DSPRsDId.js.map +1 -0
- package/dist/index.d.ts +31 -26
- package/dist/index.js +15 -16
- package/dist/request-status/index.d.ts +1 -1
- package/dist/request-status/index.js +1 -1
- package/dist/{request-status-5M9DP8-J.js → request-status-CTleOQtX.js} +12 -6
- package/dist/request-status-CTleOQtX.js.map +1 -0
- package/dist/resizable-drawer/index.js +2 -1
- package/dist/resizable-drawer/index.js.map +1 -1
- package/dist/{selector-DGXElqt2.js → selector-fu9imgsR.js} +2 -2
- package/dist/{selector-DGXElqt2.js.map → selector-fu9imgsR.js.map} +1 -1
- package/dist/selector-wrapper/index.css +1 -1
- package/dist/selector-wrapper/index.d.ts +4 -1
- package/dist/selector-wrapper/index.js +9 -3
- package/dist/selector-wrapper/index.js.map +1 -1
- package/dist/{selector-wrapper-DfaplVbz.js → selector-wrapper-l88Z-JLK.js} +113 -47
- package/dist/selector-wrapper-l88Z-JLK.js.map +1 -0
- package/dist/selector-wrapper-search/index.d.ts +5 -1
- package/dist/selector-wrapper-search/index.js +3 -3
- package/dist/{selector-wrapper-search-DG0GPWl6.js → selector-wrapper-search-BMyOMlZl.js} +26 -8
- package/dist/selector-wrapper-search-BMyOMlZl.js.map +1 -0
- package/dist/selector-wrapper-simple/index.d.ts +1 -1
- package/dist/selector-wrapper-simple/index.js +2 -2
- package/dist/{selector-wrapper-simple-BE6H7nX7.js → selector-wrapper-simple-Vbt4cYNm.js} +2 -2
- package/dist/{selector-wrapper-simple-BE6H7nX7.js.map → selector-wrapper-simple-Vbt4cYNm.js.map} +1 -1
- package/dist/styles/index.css +1 -1
- package/dist/table-cell-render/index.d.ts +6 -1
- package/dist/table-cell-render/index.js +3 -3
- package/dist/{tag-list-B0OTlda6.js → tag-list-DrmpuEDJ.js} +8 -2
- package/dist/tag-list-DrmpuEDJ.js.map +1 -0
- package/dist/tag-list-render/index.d.ts +2 -0
- package/dist/tag-list-render/index.js +1 -1
- package/dist/tree-modal/index.d.ts +1 -1
- package/dist/tree-modal/index.js +3 -3
- package/dist/tree-modal-selector/index.d.ts +1 -1
- package/dist/tree-modal-selector/index.js +3 -3
- package/dist/tree-selector-wrapper/index.d.ts +1 -1
- package/dist/tree-selector-wrapper/index.js +2 -2
- package/dist/tree-wrapper/index.d.ts +1 -1
- package/dist/tree-wrapper/index.js +5 -5
- package/dist/tree-wrapper/index.js.map +1 -1
- package/package.json +1 -7
- package/dist/ai-search/index.css +0 -1
- package/dist/ai-search/index.d.ts +0 -25
- package/dist/ai-search/index.js +0 -39
- package/dist/ai-search/index.js.map +0 -1
- package/dist/ai-search-BuvayoCT.js +0 -161
- package/dist/ai-search-BuvayoCT.js.map +0 -1
- package/dist/button-operate-DprXMhOZ.js.map +0 -1
- package/dist/cell-render-Btk1xTUj.js.map +0 -1
- package/dist/copy-BbkSnxi9.js.map +0 -1
- package/dist/drawer-BITwshmb.js.map +0 -1
- package/dist/request-status-5M9DP8-J.js.map +0 -1
- package/dist/selector-wrapper-DfaplVbz.js.map +0 -1
- package/dist/selector-wrapper-search-DG0GPWl6.js.map +0 -1
- package/dist/tag-list-B0OTlda6.js.map +0 -1
|
@@ -5,7 +5,7 @@ import './../fba-utils/index.css';
|
|
|
5
5
|
import './index.css';
|
|
6
6
|
/*! @flatjs/forge MIT @flatbiz/antd */
|
|
7
7
|
|
|
8
|
-
export { a as ButtonOperate, B as ButtonOperateItemContent } from '../button-operate-
|
|
8
|
+
export { a as ButtonOperate, B as ButtonOperateItemContent } from '../button-operate-BIWXX7to.js';
|
|
9
9
|
import '@ant-design/icons/es/icons/MoreOutlined.js';
|
|
10
10
|
import '../_rollupPluginBabelHelpers-BspM60Sw.js';
|
|
11
11
|
import '@dimjs/lang/is-undefined';
|
|
@@ -15,7 +15,7 @@ import { D as DropdownMenuWrapper } from './dropdown-menu-wrapper-BE3Liqoh.js';
|
|
|
15
15
|
import { f as fbaUtils } from './fba-utils-okhb5eSJ.js';
|
|
16
16
|
import { jsx, jsxs } from 'react/jsx-runtime';
|
|
17
17
|
|
|
18
|
-
var _excluded = ["text", "onClick", "needConfirm", "confirmMessage", "popconfirmProps", "hoverTips", "color", "tipsType", "type", "isFold"];
|
|
18
|
+
var _excluded = ["text", "onClick", "needConfirm", "confirmMessage", "popconfirmProps", "hoverTips", "color", "tipsType", "type", "isFold", "show"];
|
|
19
19
|
var ButtonOperateItemContent = function ButtonOperateItemContent(props) {
|
|
20
20
|
if (props.hoverTips) {
|
|
21
21
|
if (props.tipsType === 'popover') {
|
|
@@ -163,6 +163,7 @@ var ButtonOperate = function ButtonOperate(props) {
|
|
|
163
163
|
tipsType = item.tipsType,
|
|
164
164
|
type = item.type;
|
|
165
165
|
item.isFold;
|
|
166
|
+
item.show;
|
|
166
167
|
var otherProps = _objectWithoutProperties(item, _excluded);
|
|
167
168
|
var typeFt = type || 'link';
|
|
168
169
|
if (needConfirm && !otherProps.disabled) {
|
|
@@ -239,4 +240,4 @@ ButtonOperate.defaultProps = {
|
|
|
239
240
|
};
|
|
240
241
|
|
|
241
242
|
export { ButtonOperateItemContent as B, ButtonOperate as a };
|
|
242
|
-
//# sourceMappingURL=button-operate-
|
|
243
|
+
//# sourceMappingURL=button-operate-BIWXX7to.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"button-operate-BIWXX7to.js","sources":["@flatbiz/antd/src/button-operate/button-operate.tsx"],"sourcesContent":["import type { CSSProperties, FC, ReactElement, ReactNode } from 'react';\nimport { Fragment, isValidElement, useMemo, useState } from 'react';\nimport type { PopconfirmProps, SpaceProps } from 'antd';\nimport { Button, Divider, Popconfirm, Popover, Space, Tooltip } from 'antd';\nimport { MoreOutlined } from '@ant-design/icons';\nimport { isPlainObject, isPromise, isString, isUndefined } from '@dimjs/lang';\nimport { classNames } from '@dimjs/utils';\nimport { hooks } from '@wove/react';\nimport type { ButtonWrapperProps } from '../button-wrapper/button-wrapper.jsx';\nimport { ButtonWrapper } from '../button-wrapper/button-wrapper.jsx';\nimport type { DialogModalProps } from '../dialog-modal/dialog-modal.jsx';\nimport type { DropdownMenuWrapperProps } from '../dropdown-menu-wrapper/dropdown-menu-wrapper.jsx';\nimport { DropdownMenuWrapper } from '../dropdown-menu-wrapper/dropdown-menu-wrapper.jsx';\nimport { fbaUtils } from '../fba-utils/index.js';\nimport './style.less';\n\nexport interface ButtonOperateItem extends ButtonWrapperProps {\n /** hover 提示文字,isFold=true无效 */\n hoverTips?: string | ReactElement;\n /** hover 提示类型 默认:'tooltip' */\n tipsType?: 'popover' | 'tooltip';\n /** 按钮文案 */\n text?: string | ReactElement;\n /** 自定义按钮颜色 */\n color?: string;\n /** 是否需要二次弹框确认 */\n needConfirm?: boolean;\n /** 二次弹框确认文案 */\n confirmMessage?: ReactNode;\n /* isFold=false & needConfirm=true 有效 */\n popconfirmProps?: Pick<\n PopconfirmProps,\n 'placement' | 'okText' | 'cancelText' | 'trigger'\n >;\n /** 是否折叠合拢 */\n isFold?: boolean;\n /* isFold=true & needConfirm=true 有效 */\n confirmModalProps?: DialogModalProps;\n /** 是否显示按钮,优先级高于 hidden */\n show?: boolean;\n}\n\nexport interface ButtonOperateProps {\n className?: string;\n style?: CSSProperties;\n /**\n * 如果数组中元素为ReactElement类型\n * 1. 一般为antd Button组件,如果组件存在属性hidden=true、v-hidden=true,则会隐藏\n * 2. 可配置 v-permission 权限值,例如 v-permission=\"add\"\n * 3. 任何confirm、disabled等状态在外部控制\n * 3. 不支持fold效果\n */\n operateList: Array<ButtonOperateItem | null | ReactElement>;\n /** 是否换行,默认true */\n wrap?: boolean;\n /** 隐藏图标Icon */\n foldIcon?: ReactElement;\n /** 按钮之间是否添加分隔符 */\n split?: boolean;\n /** 多个按钮的包装组件Space属性 */\n spaceProps?: SpaceProps;\n /** 间距,默认:10;split=true配置下无效(可通过spaceProps设置间距) */\n gap?: number;\n /** 折叠合拢属性 */\n dropdownMenuProps?: Omit<DropdownMenuWrapperProps, 'menuList'>;\n /**\n * 按钮布局尺寸\n * ```\n * 1. 设置为small后,gap、split 配置失效\n * ```\n */\n size?: 'small' | 'default';\n}\n\nexport const ButtonOperateItemContent = (\n props: Pick<ButtonOperateItem, 'hoverTips' | 'tipsType'> & {\n content: ReactNode;\n }\n) => {\n if (props.hoverTips) {\n if (props.tipsType === 'popover') {\n return (\n <Popover content={props.hoverTips} zIndex={1000}>\n <span>{props.content}</span>\n </Popover>\n );\n }\n return (\n <Tooltip title={props.hoverTips} zIndex={1000}>\n <span>{props.content}</span>\n </Tooltip>\n );\n }\n if (isValidElement(props.content)) {\n return <Fragment>{props.content}</Fragment>;\n }\n // ButtonOperate item 内部 span 包文案会有动态效果\n return <span>{props.content}</span>;\n};\n\n/**\n * 按钮组合处理组件\n * ```\n * 1. operateList中存在ReactElement类型的元素,可通过配置 v-permission 属性来设置权限,例如 v-permission=\"add\"\n * 2. operateList中存在ReactElement类型的元素,如果有hidden、v-hidden属性,值为true会隐藏\n *\n *\n * flatbiz/antd@4.2.49\n * 1. 替换 Fold 中 needConfirm交互,有 Popconfirm 改为 dialogConfirm组件实现二次弹框确认功能\n * 2. 修改原因:升级 antd 5.5.1 后,Dropdown 中 Popconfirm弹框组合使用存在问题\n * ```\n */\nexport const ButtonOperate: FC<ButtonOperateProps> = (props) => {\n const [loading, setLoading] = useState(false);\n\n const onConfirm = hooks.useCallbackRef((item: ButtonOperateItem, event) => {\n const result = item.onClick?.(event);\n if (result && isPromise(result)) {\n setLoading(true);\n return result.finally(() => {\n setLoading(false);\n });\n }\n return;\n });\n\n const operateList = props.operateList.filter((item) => {\n if (!item) return false;\n if (isValidElement(item)) {\n if (item.props?.['hidden'] === true) return false;\n if (item.props?.['v-hidden'] === true) return false;\n const permission = item.props?.['v-permission'];\n if (isString(permission)) {\n return fbaUtils.hasPermission(permission);\n }\n return true;\n }\n if (isPlainObject(item)) {\n if (!fbaUtils.hasPermission(item['permission'])) {\n return false;\n }\n if (Object.prototype.hasOwnProperty.call(item, 'show')) {\n return item['show'];\n } else if (Object.prototype.hasOwnProperty.call(item, 'hidden')) {\n return !item['hidden'];\n }\n return true;\n }\n return false;\n }) as Array<ButtonOperateItem | ReactElement>;\n\n const viewList = useMemo(() => {\n return operateList.filter((item) => {\n if (isValidElement(item)) {\n return true;\n }\n return !item['isFold'];\n }) as ButtonOperateItem[];\n }, [operateList]);\n\n const foldList = useMemo(() => {\n const filterList = operateList.filter((item) => {\n if (isValidElement(item)) {\n return false;\n }\n return item['isFold'];\n }) as ButtonOperateItem[];\n const result = [] as ButtonOperateItem[];\n filterList.forEach((item) => {\n const target = { ...item };\n // 多余字段渲染到react dom上,出现警告\n delete target.isFold;\n result.push(target);\n });\n return result;\n }, [operateList]);\n\n const spaceGap = useMemo(() => {\n if (props.size === 'small') return 0;\n return props.gap === undefined ? 10 : props.gap;\n }, [props.gap, props.size]);\n\n const spaceSize = useMemo(() => {\n if (props.size === 'small') return 0;\n return !props.split ? spaceGap : 0;\n }, [spaceGap, props.size, props.split]);\n\n const spaceSplit = useMemo(() => {\n if (props.size === 'small') return null;\n return props.split ? <Divider type=\"vertical\" /> : null;\n }, [props.size, props.split]);\n\n return (\n <div\n className={classNames('table-operate', props.className)}\n style={props.style}\n >\n <Space\n split={spaceSplit}\n size={spaceSize}\n wrap={isUndefined(props.wrap) ? true : props.wrap}\n {...props.spaceProps}\n >\n {viewList.map((item, index) => {\n if (item && isValidElement(item)) {\n return (\n <ButtonOperateItemContent\n content={item}\n hoverTips={item.hoverTips}\n tipsType={item.tipsType}\n key={index}\n />\n );\n }\n const {\n text,\n onClick,\n needConfirm,\n confirmMessage,\n popconfirmProps,\n hoverTips,\n color,\n tipsType,\n type,\n // 多余字段渲染到react dom上,出现警告\n isFold: _isFold,\n show: _show,\n ...otherProps\n } = item;\n const typeFt = type || 'link';\n if (needConfirm && !otherProps.disabled) {\n const danger = color ? false : true;\n return (\n <Popconfirm\n okText=\"确定\"\n cancelText=\"取消\"\n trigger={['click']}\n placement=\"topRight\"\n arrow={true}\n destroyTooltipOnHide={true}\n {...popconfirmProps}\n title={confirmMessage}\n onConfirm={onConfirm.bind(null, item)}\n key={index}\n okButtonProps={{\n loading,\n }}\n onOpenChange={(_open) => {\n if (!_open) {\n setLoading(false);\n }\n }}\n onCancel={(event) => {\n event?.stopPropagation();\n }}\n >\n <ButtonWrapper\n danger={danger}\n {...otherProps}\n onClick={(event) => {\n event.stopPropagation();\n }}\n type={typeFt}\n >\n <ButtonOperateItemContent\n content={text}\n hoverTips={hoverTips}\n tipsType={tipsType}\n key={index}\n />\n </ButtonWrapper>\n </Popconfirm>\n );\n }\n return (\n <ButtonWrapper\n loadingPosition=\"center\"\n {...otherProps}\n color={color}\n type={typeFt}\n onClick={(event) => {\n event.stopPropagation();\n return onClick?.(event);\n }}\n key={index}\n >\n <ButtonOperateItemContent\n content={text}\n hoverTips={hoverTips}\n tipsType={item.tipsType}\n />\n </ButtonWrapper>\n );\n })}\n {foldList.length > 0 ? (\n <DropdownMenuWrapper\n menuList={foldList}\n placement=\"bottom\"\n {...props.dropdownMenuProps}\n >\n <Button\n type=\"link\"\n className=\"fold-more-button\"\n onClick={(event) => {\n event.stopPropagation();\n }}\n >\n {props.foldIcon ? props.foldIcon : <MoreOutlined />}\n </Button>\n </DropdownMenuWrapper>\n ) : null}\n </Space>\n </div>\n );\n};\n\nButtonOperate.defaultProps = {\n split: true,\n};\n"],"names":["ButtonOperateItemContent","props","hoverTips","tipsType","_jsx","Popover","content","zIndex","children","Tooltip","title","isValidElement","Fragment","ButtonOperate","_useState","useState","_useState2","_slicedToArray","loading","setLoading","onConfirm","_hooks","useCallbackRef","item","event","_item$onClick","result","onClick","call","_isPromise","finally","operateList","filter","_item$props","_item$props2","_item$props3","permission","_isString","fbaUtils","hasPermission","_isPlainObject","Object","prototype","hasOwnProperty","viewList","useMemo","foldList","filterList","forEach","target","_objectSpread","isFold","push","spaceGap","size","gap","undefined","spaceSize","split","spaceSplit","Divider","type","className","_classNames","style","_jsxs","Space","wrap","_isUndefined","spaceProps","map","index","text","needConfirm","confirmMessage","popconfirmProps","color","show","otherProps","_objectWithoutProperties","_excluded","typeFt","disabled","danger","_createElement","Popconfirm","okText","cancelText","trigger","placement","arrow","destroyTooltipOnHide","bind","key","okButtonProps","onOpenChange","_open","onCancel","stopPropagation","ButtonWrapper","loadingPosition","length","DropdownMenuWrapper","menuList","dropdownMenuProps","Button","foldIcon","_MoreOutlined","defaultProps"],"mappings":"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"}
|
|
@@ -2,7 +2,7 @@ import { LabelValueItem, TAny, TPlainObject } from '@flatbiz/utils';
|
|
|
2
2
|
import { CascaderProps } from 'antd';
|
|
3
3
|
import { ReactElement } from 'react';
|
|
4
4
|
|
|
5
|
-
export type TRequestStatus = "request-init" | "request-progress" | "request-success" | "request-error" | "no-dependencies-params";
|
|
5
|
+
export type TRequestStatus = "request-init" | "request-progress" | "request-success" | "request-error" | "request-search-keyword-empty" | "no-dependencies-params";
|
|
6
6
|
export type TRequestStatusProps = {
|
|
7
7
|
status?: TRequestStatus;
|
|
8
8
|
errorButton?: ReactElement;
|
|
@@ -3,7 +3,7 @@ import './../fba-hooks/index.css';
|
|
|
3
3
|
import './index.css';
|
|
4
4
|
/*! @flatjs/forge MIT @flatbiz/antd */
|
|
5
5
|
|
|
6
|
-
export { C as CascaderWrapper } from '../cascader-wrapper-
|
|
6
|
+
export { C as CascaderWrapper } from '../cascader-wrapper-CMYrmR6L.js';
|
|
7
7
|
import '@ant-design/icons/es/icons/CloseCircleFilled.js';
|
|
8
8
|
import '@ant-design/icons/es/icons/RedoOutlined.js';
|
|
9
9
|
import '@dimjs/utils/class-names/class-names';
|
|
@@ -18,7 +18,7 @@ import '@flatbiz/utils';
|
|
|
18
18
|
import '../fba-hooks/index.js';
|
|
19
19
|
import '../use-responsive-point-Bp3D3lZT.js';
|
|
20
20
|
import '@dimjs/utils/uuid/uuid';
|
|
21
|
-
import '../request-status-
|
|
21
|
+
import '../request-status-CTleOQtX.js';
|
|
22
22
|
import '../text-overflow-C42UFIyh.js';
|
|
23
23
|
import '@dimjs/lang/is-string';
|
|
24
24
|
import 'ahooks';
|
|
@@ -12,7 +12,7 @@ import { forwardRef, useState, useRef, useMemo, useEffect, useImperativeHandle }
|
|
|
12
12
|
import { Cascader, Button, Flex } from 'antd';
|
|
13
13
|
import { toArray, isUndefinedOrNull, treeNodeParentsList } from '@flatbiz/utils';
|
|
14
14
|
import { fbaHooks } from './fba-hooks/index.js';
|
|
15
|
-
import { R as RequestStatus } from './request-status-
|
|
15
|
+
import { R as RequestStatus } from './request-status-CTleOQtX.js';
|
|
16
16
|
import { isPlainObject } from '@dimjs/lang/is-plain-object';
|
|
17
17
|
import { jsx, jsxs } from 'react/jsx-runtime';
|
|
18
18
|
|
|
@@ -289,4 +289,4 @@ var CascaderWrapper = /*#__PURE__*/forwardRef(function (props, ref) {
|
|
|
289
289
|
});
|
|
290
290
|
|
|
291
291
|
export { CascaderWrapper as C };
|
|
292
|
-
//# sourceMappingURL=cascader-wrapper-
|
|
292
|
+
//# sourceMappingURL=cascader-wrapper-CMYrmR6L.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cascader-wrapper-BFCjHaa9.js","sources":["@flatbiz/antd/src/cascader-wrapper/utils.ts","@flatbiz/antd/src/cascader-wrapper/cascader-wrapper.tsx"],"sourcesContent":["import { isPlainObject } from '@dimjs/lang';\nimport { toArray } from '@flatbiz/utils';\n\nexport const getValues = (value: any) => {\n const values = toArray(value);\n return values.map((item) => {\n return isPlainObject(item) ? item?.['value'] : item;\n });\n};\n","import type { ReactElement } from 'react';\nimport {\n forwardRef,\n useEffect,\n useImperativeHandle,\n useMemo,\n useRef,\n useState,\n} from 'react';\nimport type { CascaderProps } from 'antd';\nimport { Button, Cascader, Flex } from 'antd';\nimport { CloseCircleFilled, RedoOutlined } from '@ant-design/icons';\nimport { isArray } from '@dimjs/lang';\nimport { classNames, extend, get } from '@dimjs/utils';\nimport type { LabelValueItem, TPlainObject } from '@flatbiz/utils';\nimport {\n isUndefinedOrNull,\n type TAny,\n treeNodeParentsList,\n} from '@flatbiz/utils';\nimport { hooks } from '@wove/react';\nimport { fbaHooks } from '../fba-hooks/index.js';\nimport type {\n TRequestStatus,\n TRequestStatusProps,\n} from '../request-status/request-status.jsx';\nimport { RequestStatus } from '../request-status/request-status.jsx';\nimport { getValues } from './utils.js';\nimport './style.less';\n\ntype CascaderWrapperServiceConfig = {\n params?: TPlainObject;\n onRequest?: (params?: TAny) => TAny;\n /** 响应数据适配器 */\n onRequestResultAdapter?: (respData: TAny) => TPlainObject[];\n /** 必填字段设置 */\n requiredParamsKeys?: string[];\n};\n\nexport type CascaderWrapperProps = Omit<\n CascaderProps<TAny>,\n | 'loading'\n | 'notFoundContent'\n | 'options'\n | 'value'\n | 'multiple'\n | 'onChange'\n | 'fieldNames'\n> & {\n /**\n * 参数Key映射\n * ```\n * 1. 默认值:value=value、label=label、children=children\n * 2. list 为 onRequest 返回数据中列表key值,可多级取值,例如: 'a.b.c'\n * 3. 配置 serviceConfig.onRequestResultAdapter后,fieldNames.list配置失效\n * 4. 如果没有配置list,可说明接口返回为数组\n * ```\n */\n fieldNames?: {\n list?: string;\n label?: string;\n value?: string;\n children?: string;\n };\n /**\n * 请求服务需求的数据,当设置`selectorList`后无效果\n */\n serviceConfig?: CascaderWrapperServiceConfig;\n // label渲染适配器\n onLabelRenderAdapter?: (dataItem: TPlainObject) => string | ReactElement;\n onSelectorListChange?: (dataList: TPlainObject[]) => void;\n /**\n * 是否动态加载选项\n */\n isDynamicLoad?: boolean;\n value?:\n | string\n | number\n | Array<string | number>\n | LabelValueItem\n | LabelValueItem[];\n onChange?: (\n value?: string | number | Array<string | number>,\n selectedList?: TPlainObject[]\n ) => void;\n /** 配置数据查询状态描述,比如有依赖字段描述 */\n requestMessageConfig?: TRequestStatusProps['messageConfig'];\n /**\n * 选择数据响应类型(当用户选中后响应数据),默认值:last\n * ```\n * 1. last 响应选中的最后一级数据\n * 2. all 响应选中的多级数据\n * ```\n */\n responseType?: 'last' | 'all';\n /** 响应数据是否包含label、value */\n labelInValue?: boolean;\n};\n\nexport type CascaderWrapperRefApi = {\n getCascaderList: () => TPlainObject[];\n};\n/**\n * 级联选择器包装组件\n * ```\n * 1. 数据源中 value 不能重复\n * 2. 不支持多选\n * 3. modelKey的配置是为了缓存数据,只缓存初始化数据,如果isDynamicLoad=true,动态获取的数据不再缓存\n * 4. onChange操作第一个参数返回叶子节点value(可配置返回多级),第二个参数返回选中的多级数据\n * 5. isDynamicLoad=true 会在请求中添加当前选中option的fieldNames.value为key的数据\n * 6. @flatbiz/antd@5.0.25 删除 modelKey 字段\n * 7. serviceConfig.params 参数发生变化时,会重新请求数据\n * ```\n */\nexport const CascaderWrapper = forwardRef<\n CascaderWrapperRefApi,\n CascaderWrapperProps\n>((props, ref) => {\n const {\n serviceConfig,\n fieldNames,\n isDynamicLoad,\n requestMessageConfig,\n onSelectorListChange,\n responseType,\n labelInValue,\n ...otherProps\n } = props;\n const [dataList, setDataList] = useState<TAny[]>([]);\n\n const [status, setStatus] = useState<TRequestStatus>('request-init');\n\n const requestMessageConfigRef = useRef(requestMessageConfig);\n\n const [loading, setLoading] = fbaHooks.useSafeState(false);\n const fieldNamesMerge = extend(\n true,\n { label: 'label', value: 'value', children: 'children' },\n fieldNames\n );\n const [valueList, setValueList] = useState<string[]>();\n\n const prevParams = fbaHooks.usePrevious(\n JSON.stringify(serviceConfig?.params || {})\n );\n\n const paramsStr = useMemo(() => {\n return JSON.stringify(serviceConfig?.params || {});\n }, [serviceConfig?.params]);\n\n useEffect(() => {\n requestMessageConfigRef.current = requestMessageConfig;\n }, [requestMessageConfig]);\n\n const serviceRespDataAdapter = (respData) => {\n if (serviceConfig?.onRequestResultAdapter) {\n return serviceConfig.onRequestResultAdapter(\n respData as unknown as TPlainObject\n );\n }\n if (fieldNames?.list) {\n respData = get(respData, fieldNames?.list);\n }\n if (!isArray(respData)) {\n console.warn('接口返回数据不是数组类型,已被忽略', respData);\n return [];\n }\n return respData;\n };\n\n const startDataSourceRequest = hooks.useCallbackRef(async () => {\n if (!serviceConfig?.onRequest) {\n throw new Error('onRequest 调用接口服务不能为空');\n }\n try {\n const params = serviceConfig.params || {};\n // 判断必填参数是否完整\n if (serviceConfig?.requiredParamsKeys) {\n const target = serviceConfig?.requiredParamsKeys.find((item) => {\n return isUndefinedOrNull(params[item]);\n });\n if (target) {\n // 当依赖项查询条件为空时,清空当前缓存数据\n setDataList([]);\n setStatus('no-dependencies-params');\n if (props.value) {\n props.onChange?.(undefined);\n }\n return;\n }\n }\n setLoading(true);\n setStatus('request-progress');\n const respData = await serviceConfig.onRequest?.(params);\n const respAdapterData = serviceRespDataAdapter(respData);\n if (isDynamicLoad) {\n respAdapterData.map((item) => {\n item.isLeaf = item.isLeaf || false;\n });\n }\n setLoading(false);\n setDataList(respAdapterData || []);\n onSelectorListChange?.(respAdapterData || []);\n setStatus('request-success');\n } catch (error: TAny) {\n setLoading(false);\n requestMessageConfigRef.current = {\n ...requestMessageConfigRef.current,\n 'request-error': error.message || '获取数据异常',\n };\n setStatus('request-error');\n }\n });\n\n fbaHooks.useEffectCustom(() => {\n const values = getValues(props.value) as Array<number | string>;\n if (values.length > 0) {\n if (responseType === 'all') {\n setValueList(values as string[]);\n } else {\n const filterList = treeNodeParentsList(\n values[0],\n dataList,\n true,\n fieldNamesMerge\n ).reverse();\n if (filterList.length === 0) {\n setValueList([props.value as string]);\n } else {\n setValueList(filterList as string[]);\n }\n }\n } else {\n setValueList(undefined);\n }\n }, [dataList, props.value]);\n\n useImperativeHandle(ref, () => {\n return {\n getCascaderList: () => {\n return dataList;\n },\n };\n });\n\n fbaHooks.useEffectCustom(() => {\n if (prevParams) {\n if (paramsStr !== prevParams) {\n void startDataSourceRequest();\n }\n }\n }, [prevParams, paramsStr]);\n\n const onAgainRequest = hooks.useCallbackRef(() => {\n void startDataSourceRequest();\n });\n\n fbaHooks.useEffectCustom(() => {\n void startDataSourceRequest();\n }, []);\n\n const loadData = async (selectedOptions: TAny[]) => {\n const targetOption = selectedOptions[selectedOptions.length - 1];\n targetOption.loading = true;\n const respData = await serviceConfig?.onRequest?.({\n ...serviceConfig.params,\n [fieldNamesMerge.value]: targetOption[fieldNamesMerge.value],\n });\n const respAdapterData = serviceRespDataAdapter(respData);\n if (!respAdapterData || respAdapterData.length === 0) {\n targetOption.isLeaf = true;\n } else {\n respAdapterData.map((item) => {\n item.isLeaf = item.isLeaf || false;\n });\n targetOption.children = respAdapterData;\n }\n targetOption.loading = false;\n onSelectorListChange?.(dataList || []);\n setDataList([...dataList]);\n };\n\n const onChange = hooks.useCallbackRef(\n (values: Array<string | number>, selectList) => {\n if (labelInValue !== true) {\n if (responseType === 'all') {\n props.onChange?.(values, selectList);\n } else {\n props.onChange?.(values?.[values.length - 1], selectList);\n }\n } else {\n const labelInValueList = selectList?.map((item) => {\n return {\n label: item[fieldNamesMerge.label],\n value: item[fieldNamesMerge.value],\n };\n });\n if (responseType === 'all') {\n props.onChange?.(labelInValueList, selectList);\n } else {\n props.onChange?.(\n labelInValueList?.[labelInValueList.length - 1],\n selectList\n );\n }\n }\n }\n );\n\n const onClear = hooks.useCallbackRef(() => {\n void props.onChange?.(undefined);\n });\n\n return (\n <Cascader\n showSearch={true}\n allowClear={true}\n {...(otherProps as TAny)}\n popupClassName={classNames(\n 'cascader-wrapper-popup',\n otherProps.popupClassName\n )}\n notFoundContent={\n <RequestStatus\n status={status}\n loading={loading}\n messageConfig={requestMessageConfigRef.current}\n errorButton={\n <Button type=\"primary\" onClick={onAgainRequest} ghost>\n 重新获取数据\n </Button>\n }\n />\n }\n loading={loading}\n loadData={isDynamicLoad ? loadData : undefined}\n fieldNames={fieldNamesMerge}\n suffixIcon={\n status === 'request-error' ? (\n <Flex style={{ display: 'inline-flex', gap: 10 }}>\n <RedoOutlined spin={loading} onClick={onAgainRequest} />\n <CloseCircleFilled style={{ color: '#ff4d4f' }} />\n </Flex>\n ) : undefined\n }\n options={dataList}\n value={valueList}\n multiple={false}\n onChange={onChange}\n onClear={onClear}\n />\n );\n});\n"],"names":["getValues","value","values","toArray","map","item","_isPlainObject","CascaderWrapper","forwardRef","props","ref","serviceConfig","fieldNames","isDynamicLoad","requestMessageConfig","onSelectorListChange","responseType","labelInValue","otherProps","_objectWithoutProperties","_excluded","_useState","useState","_useState2","_slicedToArray","dataList","setDataList","_useState3","_useState4","status","setStatus","requestMessageConfigRef","useRef","_fbaHooks$useSafeStat","fbaHooks","useSafeState","_fbaHooks$useSafeStat2","loading","setLoading","fieldNamesMerge","_extend","label","children","_useState5","_useState6","valueList","setValueList","prevParams","usePrevious","JSON","stringify","params","paramsStr","useMemo","useEffect","current","serviceRespDataAdapter","respData","onRequestResultAdapter","list","_get","_isArray","console","warn","startDataSourceRequest","_hooks","useCallbackRef","Promise","$return","$error","_serviceConfig$onRequ","target","_props$onChange","respAdapterData","onRequest","Error","$Try_1_Post","$boundEx","$Try_1_Catch","error","_objectSpread","message","requiredParamsKeys","find","isUndefinedOrNull","onChange","call","undefined","resolve","then","$await_2","isLeaf","useEffectCustom","length","filterList","treeNodeParentsList","reverse","useImperativeHandle","getCascaderList","onAgainRequest","loadData","selectedOptions","_serviceConfig$onRequ2","targetOption","_defineProperty","$await_3","_toConsumableArray","selectList","_props$onChange2","_props$onChange3","labelInValueList","_props$onChange4","_props$onChange5","onClear","_props$onChange6","_jsx","Cascader","showSearch","allowClear","popupClassName","_classNames","notFoundContent","RequestStatus","messageConfig","errorButton","Button","type","onClick","ghost","suffixIcon","_jsxs","Flex","style","display","gap","_RedoOutlined","spin","_CloseCircleFilled","color","options","multiple"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"cascader-wrapper-CMYrmR6L.js","sources":["@flatbiz/antd/src/cascader-wrapper/utils.ts","@flatbiz/antd/src/cascader-wrapper/cascader-wrapper.tsx"],"sourcesContent":["import { isPlainObject } from '@dimjs/lang';\nimport { toArray } from '@flatbiz/utils';\n\nexport const getValues = (value: any) => {\n const values = toArray(value);\n return values.map((item) => {\n return isPlainObject(item) ? item?.['value'] : item;\n });\n};\n","import type { ReactElement } from 'react';\nimport {\n forwardRef,\n useEffect,\n useImperativeHandle,\n useMemo,\n useRef,\n useState,\n} from 'react';\nimport type { CascaderProps } from 'antd';\nimport { Button, Cascader, Flex } from 'antd';\nimport { CloseCircleFilled, RedoOutlined } from '@ant-design/icons';\nimport { isArray } from '@dimjs/lang';\nimport { classNames, extend, get } from '@dimjs/utils';\nimport type { LabelValueItem, TPlainObject } from '@flatbiz/utils';\nimport {\n isUndefinedOrNull,\n type TAny,\n treeNodeParentsList,\n} from '@flatbiz/utils';\nimport { hooks } from '@wove/react';\nimport { fbaHooks } from '../fba-hooks/index.js';\nimport type {\n TRequestStatus,\n TRequestStatusProps,\n} from '../request-status/request-status.jsx';\nimport { RequestStatus } from '../request-status/request-status.jsx';\nimport { getValues } from './utils.js';\nimport './style.less';\n\ntype CascaderWrapperServiceConfig = {\n params?: TPlainObject;\n onRequest?: (params?: TAny) => TAny;\n /** 响应数据适配器 */\n onRequestResultAdapter?: (respData: TAny) => TPlainObject[];\n /** 必填字段设置 */\n requiredParamsKeys?: string[];\n};\n\nexport type CascaderWrapperProps = Omit<\n CascaderProps<TAny>,\n | 'loading'\n | 'notFoundContent'\n | 'options'\n | 'value'\n | 'multiple'\n | 'onChange'\n | 'fieldNames'\n> & {\n /**\n * 参数Key映射\n * ```\n * 1. 默认值:value=value、label=label、children=children\n * 2. list 为 onRequest 返回数据中列表key值,可多级取值,例如: 'a.b.c'\n * 3. 配置 serviceConfig.onRequestResultAdapter后,fieldNames.list配置失效\n * 4. 如果没有配置list,可说明接口返回为数组\n * ```\n */\n fieldNames?: {\n list?: string;\n label?: string;\n value?: string;\n children?: string;\n };\n /**\n * 请求服务需求的数据,当设置`selectorList`后无效果\n */\n serviceConfig?: CascaderWrapperServiceConfig;\n // label渲染适配器\n onLabelRenderAdapter?: (dataItem: TPlainObject) => string | ReactElement;\n onSelectorListChange?: (dataList: TPlainObject[]) => void;\n /**\n * 是否动态加载选项\n */\n isDynamicLoad?: boolean;\n value?:\n | string\n | number\n | Array<string | number>\n | LabelValueItem\n | LabelValueItem[];\n onChange?: (\n value?: string | number | Array<string | number>,\n selectedList?: TPlainObject[]\n ) => void;\n /** 配置数据查询状态描述,比如有依赖字段描述 */\n requestMessageConfig?: TRequestStatusProps['messageConfig'];\n /**\n * 选择数据响应类型(当用户选中后响应数据),默认值:last\n * ```\n * 1. last 响应选中的最后一级数据\n * 2. all 响应选中的多级数据\n * ```\n */\n responseType?: 'last' | 'all';\n /** 响应数据是否包含label、value */\n labelInValue?: boolean;\n};\n\nexport type CascaderWrapperRefApi = {\n getCascaderList: () => TPlainObject[];\n};\n/**\n * 级联选择器包装组件\n * ```\n * 1. 数据源中 value 不能重复\n * 2. 不支持多选\n * 3. modelKey的配置是为了缓存数据,只缓存初始化数据,如果isDynamicLoad=true,动态获取的数据不再缓存\n * 4. onChange操作第一个参数返回叶子节点value(可配置返回多级),第二个参数返回选中的多级数据\n * 5. isDynamicLoad=true 会在请求中添加当前选中option的fieldNames.value为key的数据\n * 6. @flatbiz/antd@5.0.25 删除 modelKey 字段\n * 7. serviceConfig.params 参数发生变化时,会重新请求数据\n * ```\n */\nexport const CascaderWrapper = forwardRef<\n CascaderWrapperRefApi,\n CascaderWrapperProps\n>((props, ref) => {\n const {\n serviceConfig,\n fieldNames,\n isDynamicLoad,\n requestMessageConfig,\n onSelectorListChange,\n responseType,\n labelInValue,\n ...otherProps\n } = props;\n const [dataList, setDataList] = useState<TAny[]>([]);\n\n const [status, setStatus] = useState<TRequestStatus>('request-init');\n\n const requestMessageConfigRef = useRef(requestMessageConfig);\n\n const [loading, setLoading] = fbaHooks.useSafeState(false);\n const fieldNamesMerge = extend(\n true,\n { label: 'label', value: 'value', children: 'children' },\n fieldNames\n );\n const [valueList, setValueList] = useState<string[]>();\n\n const prevParams = fbaHooks.usePrevious(\n JSON.stringify(serviceConfig?.params || {})\n );\n\n const paramsStr = useMemo(() => {\n return JSON.stringify(serviceConfig?.params || {});\n }, [serviceConfig?.params]);\n\n useEffect(() => {\n requestMessageConfigRef.current = requestMessageConfig;\n }, [requestMessageConfig]);\n\n const serviceRespDataAdapter = (respData) => {\n if (serviceConfig?.onRequestResultAdapter) {\n return serviceConfig.onRequestResultAdapter(\n respData as unknown as TPlainObject\n );\n }\n if (fieldNames?.list) {\n respData = get(respData, fieldNames?.list);\n }\n if (!isArray(respData)) {\n console.warn('接口返回数据不是数组类型,已被忽略', respData);\n return [];\n }\n return respData;\n };\n\n const startDataSourceRequest = hooks.useCallbackRef(async () => {\n if (!serviceConfig?.onRequest) {\n throw new Error('onRequest 调用接口服务不能为空');\n }\n try {\n const params = serviceConfig.params || {};\n // 判断必填参数是否完整\n if (serviceConfig?.requiredParamsKeys) {\n const target = serviceConfig?.requiredParamsKeys.find((item) => {\n return isUndefinedOrNull(params[item]);\n });\n if (target) {\n // 当依赖项查询条件为空时,清空当前缓存数据\n setDataList([]);\n setStatus('no-dependencies-params');\n if (props.value) {\n props.onChange?.(undefined);\n }\n return;\n }\n }\n setLoading(true);\n setStatus('request-progress');\n const respData = await serviceConfig.onRequest?.(params);\n const respAdapterData = serviceRespDataAdapter(respData);\n if (isDynamicLoad) {\n respAdapterData.map((item) => {\n item.isLeaf = item.isLeaf || false;\n });\n }\n setLoading(false);\n setDataList(respAdapterData || []);\n onSelectorListChange?.(respAdapterData || []);\n setStatus('request-success');\n } catch (error: TAny) {\n setLoading(false);\n requestMessageConfigRef.current = {\n ...requestMessageConfigRef.current,\n 'request-error': error.message || '获取数据异常',\n };\n setStatus('request-error');\n }\n });\n\n fbaHooks.useEffectCustom(() => {\n const values = getValues(props.value) as Array<number | string>;\n if (values.length > 0) {\n if (responseType === 'all') {\n setValueList(values as string[]);\n } else {\n const filterList = treeNodeParentsList(\n values[0],\n dataList,\n true,\n fieldNamesMerge\n ).reverse();\n if (filterList.length === 0) {\n setValueList([props.value as string]);\n } else {\n setValueList(filterList as string[]);\n }\n }\n } else {\n setValueList(undefined);\n }\n }, [dataList, props.value]);\n\n useImperativeHandle(ref, () => {\n return {\n getCascaderList: () => {\n return dataList;\n },\n };\n });\n\n fbaHooks.useEffectCustom(() => {\n if (prevParams) {\n if (paramsStr !== prevParams) {\n void startDataSourceRequest();\n }\n }\n }, [prevParams, paramsStr]);\n\n const onAgainRequest = hooks.useCallbackRef(() => {\n void startDataSourceRequest();\n });\n\n fbaHooks.useEffectCustom(() => {\n void startDataSourceRequest();\n }, []);\n\n const loadData = async (selectedOptions: TAny[]) => {\n const targetOption = selectedOptions[selectedOptions.length - 1];\n targetOption.loading = true;\n const respData = await serviceConfig?.onRequest?.({\n ...serviceConfig.params,\n [fieldNamesMerge.value]: targetOption[fieldNamesMerge.value],\n });\n const respAdapterData = serviceRespDataAdapter(respData);\n if (!respAdapterData || respAdapterData.length === 0) {\n targetOption.isLeaf = true;\n } else {\n respAdapterData.map((item) => {\n item.isLeaf = item.isLeaf || false;\n });\n targetOption.children = respAdapterData;\n }\n targetOption.loading = false;\n onSelectorListChange?.(dataList || []);\n setDataList([...dataList]);\n };\n\n const onChange = hooks.useCallbackRef(\n (values: Array<string | number>, selectList) => {\n if (labelInValue !== true) {\n if (responseType === 'all') {\n props.onChange?.(values, selectList);\n } else {\n props.onChange?.(values?.[values.length - 1], selectList);\n }\n } else {\n const labelInValueList = selectList?.map((item) => {\n return {\n label: item[fieldNamesMerge.label],\n value: item[fieldNamesMerge.value],\n };\n });\n if (responseType === 'all') {\n props.onChange?.(labelInValueList, selectList);\n } else {\n props.onChange?.(\n labelInValueList?.[labelInValueList.length - 1],\n selectList\n );\n }\n }\n }\n );\n\n const onClear = hooks.useCallbackRef(() => {\n void props.onChange?.(undefined);\n });\n\n return (\n <Cascader\n showSearch={true}\n allowClear={true}\n {...(otherProps as TAny)}\n popupClassName={classNames(\n 'cascader-wrapper-popup',\n otherProps.popupClassName\n )}\n notFoundContent={\n <RequestStatus\n status={status}\n loading={loading}\n messageConfig={requestMessageConfigRef.current}\n errorButton={\n <Button type=\"primary\" onClick={onAgainRequest} ghost>\n 重新获取数据\n </Button>\n }\n />\n }\n loading={loading}\n loadData={isDynamicLoad ? loadData : undefined}\n fieldNames={fieldNamesMerge}\n suffixIcon={\n status === 'request-error' ? (\n <Flex style={{ display: 'inline-flex', gap: 10 }}>\n <RedoOutlined spin={loading} onClick={onAgainRequest} />\n <CloseCircleFilled style={{ color: '#ff4d4f' }} />\n </Flex>\n ) : undefined\n }\n options={dataList}\n value={valueList}\n multiple={false}\n onChange={onChange}\n onClear={onClear}\n />\n );\n});\n"],"names":["getValues","value","values","toArray","map","item","_isPlainObject","CascaderWrapper","forwardRef","props","ref","serviceConfig","fieldNames","isDynamicLoad","requestMessageConfig","onSelectorListChange","responseType","labelInValue","otherProps","_objectWithoutProperties","_excluded","_useState","useState","_useState2","_slicedToArray","dataList","setDataList","_useState3","_useState4","status","setStatus","requestMessageConfigRef","useRef","_fbaHooks$useSafeStat","fbaHooks","useSafeState","_fbaHooks$useSafeStat2","loading","setLoading","fieldNamesMerge","_extend","label","children","_useState5","_useState6","valueList","setValueList","prevParams","usePrevious","JSON","stringify","params","paramsStr","useMemo","useEffect","current","serviceRespDataAdapter","respData","onRequestResultAdapter","list","_get","_isArray","console","warn","startDataSourceRequest","_hooks","useCallbackRef","Promise","$return","$error","_serviceConfig$onRequ","target","_props$onChange","respAdapterData","onRequest","Error","$Try_1_Post","$boundEx","$Try_1_Catch","error","_objectSpread","message","requiredParamsKeys","find","isUndefinedOrNull","onChange","call","undefined","resolve","then","$await_2","isLeaf","useEffectCustom","length","filterList","treeNodeParentsList","reverse","useImperativeHandle","getCascaderList","onAgainRequest","loadData","selectedOptions","_serviceConfig$onRequ2","targetOption","_defineProperty","$await_3","_toConsumableArray","selectList","_props$onChange2","_props$onChange3","labelInValueList","_props$onChange4","_props$onChange5","onClear","_props$onChange6","_jsx","Cascader","showSearch","allowClear","popupClassName","_classNames","notFoundContent","RequestStatus","messageConfig","errorButton","Button","type","onClick","ghost","suffixIcon","_jsxs","Flex","style","display","gap","_RedoOutlined","spin","_CloseCircleFilled","color","options","multiple"],"mappings":"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"}
|
|
@@ -9,8 +9,8 @@ import { isEmpty } from '@dimjs/lang/is-empty';
|
|
|
9
9
|
import { Fragment } from 'react';
|
|
10
10
|
import { Badge, Tooltip, Space } from 'antd';
|
|
11
11
|
import { isUndefinedOrNull, isNumber, flatbizPrice, getStrByteLen, cutString, flatbizDate } from '@flatbiz/utils';
|
|
12
|
-
import { a as ButtonOperate } from './button-operate-
|
|
13
|
-
import { _ as _TagListRender } from './tag-list-
|
|
12
|
+
import { a as ButtonOperate } from './button-operate-BIWXX7to.js';
|
|
13
|
+
import { _ as _TagListRender } from './tag-list-DrmpuEDJ.js';
|
|
14
14
|
import { jsx } from 'react/jsx-runtime';
|
|
15
15
|
|
|
16
16
|
var tableColumnTooltipRender = function tableColumnTooltipRender(showMaxNumber, defaultValue) {
|
|
@@ -79,7 +79,8 @@ var tableColumnSelectorRender = function tableColumnSelectorRender(selectorList,
|
|
|
79
79
|
dataList: selectorList,
|
|
80
80
|
colorMap: colorMap,
|
|
81
81
|
value: value,
|
|
82
|
-
forceMatch: false
|
|
82
|
+
forceMatch: false,
|
|
83
|
+
noColorShowTag: false
|
|
83
84
|
}, options));
|
|
84
85
|
};
|
|
85
86
|
};
|
|
@@ -241,8 +242,13 @@ var tableCellRender = {
|
|
|
241
242
|
* table 序号展示,如果存在pageSize、pageNo参数可分页展示累加序号,否则每页都从1开始
|
|
242
243
|
* ```
|
|
243
244
|
* render: tableCellRender.serialNumberCell(() => {
|
|
244
|
-
* return {
|
|
245
|
+
* return {
|
|
246
|
+
* pageNo: easyTableApi.getRequestParams().pageNo,
|
|
247
|
+
* pageSize: easyTableApi.getRequestParams().pageSize,
|
|
248
|
+
* }
|
|
245
249
|
* }),
|
|
250
|
+
* 参考:
|
|
251
|
+
* https://gitlab.itcjf.com/flatjs/flat-os/flat-oss-demo/blob/master/src/modules/crud/demo1/home/table.tsx
|
|
246
252
|
* ```
|
|
247
253
|
*/
|
|
248
254
|
serialNumberCell: tableColumnIndexRender2,
|
|
@@ -390,4 +396,4 @@ var tableCellRender = {
|
|
|
390
396
|
};
|
|
391
397
|
|
|
392
398
|
export { tableCellRender as t };
|
|
393
|
-
//# sourceMappingURL=cell-render-
|
|
399
|
+
//# sourceMappingURL=cell-render-1gunNiMm.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cell-render-1gunNiMm.js","sources":["@flatbiz/antd/src/table-cell-render/cell-render.tsx"],"sourcesContent":["import type { ReactElement } from 'react';\nimport { Fragment } from 'react';\nimport { Badge, Space, Tooltip } from 'antd';\nimport { isEmpty, isObject, isPlainObject, isString } from '@dimjs/lang';\nimport { get } from '@dimjs/utils';\nimport type { DateFormatType, TAny, TPlainObject } from '@flatbiz/utils';\nimport {\n cutString,\n flatbizDate,\n flatbizPrice,\n getStrByteLen,\n isNumber,\n isUndefinedOrNull,\n} from '@flatbiz/utils';\nimport type { ButtonOperateProps } from '../button-operate/index.js';\nimport { ButtonOperate } from '../button-operate/index.js';\nimport { TagListRender } from '../tag-list-render/index.js';\nimport type {\n TagListSelectProps,\n TagListSelectValue,\n} from '../tag-list-select/index.js';\nimport './style.less';\n\nconst tableColumnTooltipRender = (\n showMaxNumber?: number,\n defaultValue?: string\n) => {\n return (value: string | number) => {\n if (isEmpty(value) || value === '') return defaultValue;\n if (isNumber(value)) return value;\n const colunmText = value.toString();\n const maxNumber = (\n isUndefinedOrNull(showMaxNumber) ? 10 : showMaxNumber\n ) as number;\n const strByteLen = getStrByteLen(colunmText);\n if (strByteLen <= maxNumber * 2) {\n return colunmText;\n }\n return (\n <Tooltip placement=\"topLeft\" title={colunmText}>\n {cutString(colunmText, maxNumber * 2)}\n </Tooltip>\n );\n };\n};\n\nconst tableColumnOperateRender = (\n options: (item: TAny, index: number) => ButtonOperateProps\n) => {\n return (_value: string | number, record, index: number) => {\n const operateProps = options(record, index);\n return <ButtonOperate {...operateProps} />;\n };\n};\n\nconst tableColumnDateRender = (\n dateFormatType?: DateFormatType,\n defaultValue?: string\n) => {\n return (value: string | number) => {\n if (isEmpty(value) || value === '') return defaultValue;\n try {\n return flatbizDate.format(new Date(value), dateFormatType);\n } catch (_error) {\n return value || defaultValue;\n }\n };\n};\n\n/**\n * table 索引展示,如果存在pageSize、pageNo参数可分页展示索引,否则每页都从1开始\n * @param pageSize\n * @param pageNo\n * @returns\n */\nconst tableColumnIndexRender = (pageNo?: number, pageSize?: number) => {\n return (_value, _record, index: number) => {\n if (pageSize && pageNo) {\n return (pageNo - 1) * pageSize + index + 1;\n }\n return index + 1;\n };\n};\nconst tableColumnIndexRender2 = (\n method?: () => { pageNo?: number; pageSize?: number }\n) => {\n return (_value, _record, index: number) => {\n const { pageNo, pageSize } = method?.() || {};\n if (pageSize && pageNo) {\n return (pageNo - 1) * pageSize + index + 1;\n }\n return index + 1;\n };\n};\n\nconst tableColumnSelectorRender = (\n selectorList: TagListSelectProps['dataList'],\n colorMap?: TagListSelectProps['colorMap'],\n options?: {\n /** 最大显示Tag数量,超出折叠隐藏 */\n maxShowCount?: number;\n /** 触发maxShowCount后,被折叠的内容是否显示完整tag,默认值:false */\n foldShowAllTag?: boolean;\n }\n) => {\n return (value?: TAny) => {\n if (isUndefinedOrNull(value)) return null;\n return (\n <TagListRender\n dataList={selectorList}\n colorMap={colorMap}\n value={value}\n forceMatch={false}\n noColorShowTag={false}\n {...options}\n />\n );\n };\n};\n\nconst tableColumnObjectRender = (key: string, defaultValue?: string) => {\n return (value?: TPlainObject) => {\n if (isPlainObject(value)) {\n const target = get(value, key as never, defaultValue);\n if (!target) return '';\n if (isObject(target)) return JSON.stringify(target);\n return target;\n }\n return value || defaultValue;\n };\n};\n\nconst tableColumnFen2yuanCellRender = (options?: {\n /** 是否显示分隔符,默认值:false */\n separator?: boolean;\n defaultValue?: string | number;\n /** 隐藏背景颜色, 默认值:true */\n hideBgColor?: boolean;\n}) => {\n const hideBgColor = isUndefinedOrNull(options?.hideBgColor)\n ? true\n : options?.hideBgColor;\n\n const className = hideBgColor ? '' : 'table-fen-color';\n return (value?: string | number) => {\n if (isUndefinedOrNull(value) || value === '') {\n if (isUndefinedOrNull(options?.defaultValue)) return undefined;\n if (isNumber(options?.defaultValue as string | number)) {\n return (\n <span className={className}>\n {flatbizPrice.format(options?.defaultValue)}\n </span>\n );\n }\n return <span className={className}>{options?.defaultValue}</span>;\n }\n if (!isNumber(value as number | string)) return value;\n const amount = flatbizPrice.fen2yuan(value);\n return (\n <span className={className}>\n {flatbizPrice.format(amount, options?.defaultValue, {\n separator: options?.separator || false,\n })}\n </span>\n );\n };\n};\n\nconst tableColumnFen2wanCellRender = (options?: {\n /** 是否显示分隔符,默认值:false */\n separator?: boolean;\n defaultValue?: string | number;\n /** 隐藏背景颜色,默认:false */\n showBgColor?: boolean;\n /** 移除小数点后末尾零 */\n removeTailZero?: boolean;\n}) => {\n const className = options?.showBgColor === true ? 'table-wan-color' : '';\n return (value?: string | number) => {\n if (isUndefinedOrNull(value) || value === '') {\n if (isUndefinedOrNull(options?.defaultValue)) return undefined;\n if (isNumber(options?.defaultValue as string | number)) {\n return (\n <span className={className}>\n {flatbizPrice.format(options?.defaultValue)}\n </span>\n );\n }\n return <span className={className}>{options?.defaultValue}</span>;\n }\n if (!isNumber(value as number | string)) return value;\n const amount = flatbizPrice.fen2wan(value);\n const amountNew = options?.removeTailZero\n ? flatbizPrice.removeTailZero(amount, options?.defaultValue, {\n separator: options?.separator || false,\n })\n : flatbizPrice.format(amount, options?.defaultValue, {\n separator: options?.separator || false,\n });\n return <span className={className}>{amountNew}</span>;\n };\n};\n\ntype TableColumnIconRenderProps = {\n /** 额外内容,一般为Icon */\n extra: ReactElement;\n extraPosition?: 'before' | 'after';\n onClick?: (e) => void;\n /** 是否显示原单元格数据,默认值:true */\n showData?: boolean;\n /** 溢出显示【...】, 最大长度(默认:20个字节) */\n showMaxNumber?: number;\n /** 未溢出显示【extra】配置,默认值:true */\n notOverflowShowExtra?: boolean;\n};\n\nconst tableColumnExtraContentRender = (\n handle: (item: TPlainObject) => TableColumnIconRenderProps\n) => {\n return (value: TAny, item: TPlainObject) => {\n const options = handle?.(item);\n if (!options) return <Fragment>{value}</Fragment>;\n const showData = isUndefinedOrNull(options.showData)\n ? true\n : options.showData;\n const notOverflowShowExtra = isUndefinedOrNull(options.notOverflowShowExtra)\n ? true\n : options.notOverflowShowExtra;\n const showMaxNumber = isUndefinedOrNull(options.showMaxNumber)\n ? 10\n : (options.showMaxNumber as number);\n const extraPosition = options.extraPosition\n ? options.extraPosition\n : 'after';\n const renderValue = isString(value)\n ? cutString(value, showMaxNumber * 2)\n : value;\n\n if (options.extra && showData) {\n if (renderValue === value && !notOverflowShowExtra) {\n return value;\n }\n const spaceContent = [\n <span key=\"1\">{renderValue}</span>,\n <Fragment key=\"2\">{options.extra}</Fragment>,\n ];\n const spaceContentRender =\n extraPosition === 'before' ? spaceContent.reverse() : spaceContent;\n return (\n <Space\n onClick={options.onClick}\n style={{ cursor: options.onClick ? 'pointer' : undefined }}\n size={5}\n >\n {spaceContentRender.map((item, index) => {\n return <Fragment key={index}>{item}</Fragment>;\n })}\n </Space>\n );\n }\n return <span onClick={options.onClick}>{options.extra}</span>;\n };\n};\n\nconst tableColumnBadgeRender = (\n selectorList: { label: string; value: TagListSelectValue; color?: string }[],\n colorMap?: Record<string | string, string>\n) => {\n return (value?: TAny) => {\n if (isUndefinedOrNull(value)) return null;\n const target = selectorList.find((item) => item.value === value);\n if (target)\n return (\n <Badge\n color={target?.color || colorMap?.[value] || 'rgba(0, 0, 0, 0.25)'}\n text={target?.label}\n />\n );\n return value;\n };\n};\n\nconst tableColumnClickRender = (\n onClick: (record: TPlainObject, e) => void,\n defaultValue?: string\n) => {\n return (value: TAny, record: TPlainObject) => {\n if (isUndefinedOrNull(value)) return defaultValue;\n return <a onClick={onClick.bind(null, record)}>{value}</a>;\n };\n};\n\nexport const tableCellRender = {\n /**\n * 表格单元格 拼接额外内容渲染\n * ```\n * 1. extra 额外内容\n * 2. showData 是否显示原单元格数据,默认值:true\n * 3. showMaxNumber 显示最大长度,作用于原单元格字符串数据\n *\n *\n * 结合table column render 使用\n * # 在单元格渲染文字右侧添加图标\n * render: tableCellRender.extraContentRender(() => {\n * return {\n * extra: <FullscreenOutlined />,\n * onClick: () => { ... },\n * };\n * }),\n * ```\n */\n extraContentRender: tableColumnExtraContentRender,\n /**\n * table 索引展示,如果存在pageSize、pageNo参数可分页展示索引,否则每页都从1开始\n * @deprecated 已过时 4.3.0版本移除,请使用 serialNumberCell\n */\n indexCell: tableColumnIndexRender,\n /**\n * table 序号展示,如果存在pageSize、pageNo参数可分页展示累加序号,否则每页都从1开始\n * ```\n * render: tableCellRender.serialNumberCell(() => {\n * return {\n * pageNo: easyTableApi.getRequestParams().pageNo,\n * pageSize: easyTableApi.getRequestParams().pageSize,\n * }\n * }),\n * 参考:\n * https://gitlab.itcjf.com/flatjs/flat-os/flat-oss-demo/blob/master/src/modules/crud/demo1/home/table.tsx\n * ```\n */\n serialNumberCell: tableColumnIndexRender2,\n /**\n * 表格日期格式数据渲染,默认格式:YYYY-MM-DD\n * ```\n * 独立使用\n * tableCellRender.dateCell('YYYY-MM-DD hh:mm:ss')(value)\n *\n * 结合table column render 使用\n * render: tableCellRender.dateCell('YYYY-MM-DD hh:mm:ss')\n * render: (value) => {\n * return tableCellRender.dateCell('YYYY-MM-DD')(value);\n * }\n * ```\n */\n dateCell: tableColumnDateRender,\n /**\n * table操作栏目渲染\n * ```\n * 使用方式\n * tableCellRender.operateCell((item) => ({\n * operateList: [\n * {\n * text: '编辑',\n * onClick: onItemOperate.bind(null, 'update', item),\n * },\n * {\n * text: '删除',\n * needConfirm: true,\n * confirmMessage: '确定要删除吗?',\n * onClick: onItemOperate.bind(null, 'delete', item),\n * },\n * ],\n * }))\n * ```\n */\n operateCell: tableColumnOperateRender,\n /**\n * 实现字段超出隐藏,默认长度10个字符\n * @deprecated 已过期,请使用 TextOverflow 组件实现\n * ```\n * 1. showMaxNumber: 显示最大长度\n * 2. 会讲字符转出字节进行计算显示\n * ```\n */\n tooltipCell: tableColumnTooltipRender,\n /**\n * Tag格式数据渲染,可结合枚举定义数据\n * ```\n * 独立使用\n * tableCellRender.selectorCell([{ label: '已开启', value: 1 }])(value)\n * tableCellRender.selectorCell([{ label: '已开启', value: 1, color: '#108ee9' }])(value)\n * tableCellRender.selectorCell([{ label: '已开启', value: 1 }], { 1: '#108ee9' })(value)\n * tableCellRender.selectorCell(taskTypeEnumList)(value);\n *\n *\n * 结合table column render 使用\n * render: tableCellRender.selectorCell(taskTypeEnumList);\n * render: tableCellRender.selectorCell([{ label: '已开启', value: 1 ]);\n * render: (value) => {\n * return tableCellRender.selectorCell([{ label: '已开启', value: 1 ])(value);\n * }\n *\n * 其中value值可以是单个值或者数组;例如:'1' 或者 ['1', '2']\n * ```\n */\n selectorCell: tableColumnSelectorRender,\n /**\n * 单元格对象数据处理,支持多级处理\n * ```\n * tableCellRender.objectCell('a.b.c')\n * ```\n */\n objectCell: tableColumnObjectRender,\n /**\n * 分金额展示,入参分,显示元(默认添加千分位)\n * ```\n * 可配置\n * 1. separator:是否显示千分位分隔符,默认值:false\n * 2. defaultValue:当值为空默认展示\n * 3. hideBgColor:隐藏背景颜色\n *\n * 例如:\n * fen2yuanCell()(100090) => 1000.90\n * fen2yuanCell({separator: true})(100090) => 1,000.90\n * fen2yuanCell()('abc') => abc\n * fen2yuanCell({defaultValue: '--'})('') => --\n * fen2yuanCell()('') => undefined\n * fen2yuanCell({ defaultValue: 0 })('') => 0.00\n * ```\n */\n fen2yuanCell: tableColumnFen2yuanCellRender,\n /**\n * 分金额展示,入参分,显示万元(默认添加千分位)\n * ```\n * 可配置\n * 1. separator:是否显示千分位分隔符,默认值:false\n * 2. defaultValue:当值为空默认展示\n * 3. showBgColor:隐藏背景颜色\n * 4. removeTailZero:移除小数点后末尾零\n *\n * 例如:\n * fen2yuanCell()(1000900000) => 1000.90\n * fen2yuanCell({separator: true})(1000900000) => 1,000.90\n * fen2yuanCell()('abc') => abc\n * fen2yuanCell({defaultValue: '--'})('') => --\n * fen2yuanCell()('') => undefined\n * fen2yuanCell({ defaultValue: 0 })('') => 0.00\n * ```\n */\n fen2wanCell: tableColumnFen2wanCellRender,\n /**\n * 单元格徽标展示数据\n * ```\n * 1. badge 默认颜色:灰色rgba(0, 0, 0, 0.25)\n *\n * 独立使用\n * tableCellRender.badgeCell([{ label: '已开启', value: 1 ])(value)\n * tableCellRender.badgeCell([{ label: '已开启', value: 1, color: '#108ee9' }])(value)\n * tableCellRender.badgeCell([{ label: '已开启', value: 1 }], { 1: '#108ee9' })(value)\n *\n * 结合table column render 使用\n * render: tableCellRender.badgeCell([{ label: '已开启', value: 1 ])\n * render: (value) => {\n * return tableCellRender.badgeCell([{ label: '已开启', value: 1 ])(value)\n * }\n * ```\n */\n badgeCell: tableColumnBadgeRender,\n /**\n * 单元格点击事件\n * ```\n * 独立使用\n * tableCellRender.clickCell(onClick)(value, record)\n *\n * 结合table column render 使用\n * render: tableCellRender.clickCell(onClick)\n * render: (value, record) => {\n * return tableCellRender.clickCell(onClick)(value, record)\n * }\n * ```\n */\n clickCell: tableColumnClickRender,\n};\n"],"names":["tableColumnTooltipRender","showMaxNumber","defaultValue","value","_isEmpty","isNumber","colunmText","toString","maxNumber","isUndefinedOrNull","strByteLen","getStrByteLen","_jsx","Tooltip","placement","title","children","cutString","tableColumnOperateRender","options","_value","record","index","operateProps","ButtonOperate","_objectSpread","tableColumnDateRender","dateFormatType","flatbizDate","format","Date","_error","tableColumnIndexRender","pageNo","pageSize","_record","tableColumnIndexRender2","method","_ref","tableColumnSelectorRender","selectorList","colorMap","TagListRender","dataList","forceMatch","noColorShowTag","tableColumnObjectRender","key","_isPlainObject","target","_get","_isObject","JSON","stringify","tableColumnFen2yuanCellRender","hideBgColor","className","undefined","flatbizPrice","amount","fen2yuan","separator","tableColumnFen2wanCellRender","showBgColor","fen2wan","amountNew","removeTailZero","tableColumnExtraContentRender","handle","item","Fragment","showData","notOverflowShowExtra","extraPosition","renderValue","_isString","extra","spaceContent","spaceContentRender","reverse","Space","onClick","style","cursor","size","map","tableColumnBadgeRender","find","Badge","color","text","label","tableColumnClickRender","bind","tableCellRender","extraContentRender","indexCell","serialNumberCell","dateCell","operateCell","tooltipCell","selectorCell","objectCell","fen2yuanCell","fen2wanCell","badgeCell","clickCell"],"mappings":"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AAA,oBAAOU,GAAA,CAAA,GAAA,EAAA;MAAGqE,OAAO,EAAEA,OAAO,CAACY,IAAI,CAAC,IAAI,EAAExE,MAAM,CAAE;AAAAL,MAAAA,QAAA,EAAEb;AAAK,KAAI,CAAC;GAC3D;AACH,CAAC;AAEM,IAAM2F,eAAe,GAAG;AAC7B;AACF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACEC,EAAAA,kBAAkB,EAAE5B,6BAA6B;AACjD;AACF;AACA;AACA;AACE6B,EAAAA,SAAS,EAAEhE,sBAAsB;AACjC;AACF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACEiE,EAAAA,gBAAgB,EAAE7D,uBAAuB;AACzC;AACF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACE8D,EAAAA,QAAQ,EAAExE,qBAAqB;AAC/B;AACF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACEyE,EAAAA,WAAW,EAAEjF,wBAAwB;AACrC;AACF;AACA;AACA;AACA;AACA;AACA;AACA;AACEkF,EAAAA,WAAW,EAAEpG,wBAAwB;AACrC;AACF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACEqG,EAAAA,YAAY,EAAE9D,yBAAyB;AACvC;AACF;AACA;AACA;AACA;AACA;AACE+D,EAAAA,UAAU,EAAExD,uBAAuB;AACnC;AACF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACEyD,EAAAA,YAAY,EAAEjD,6BAA6B;AAC3C;AACF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACEkD,EAAAA,WAAW,EAAE1C,4BAA4B;AACzC;AACF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACE2C,EAAAA,SAAS,EAAEnB,sBAAsB;AACjC;AACF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACEoB,EAAAA,SAAS,EAAEd;AACb;;;;"}
|
|
@@ -65,9 +65,9 @@ var CopyWrapper = function CopyWrapper(props) {
|
|
|
65
65
|
style: {
|
|
66
66
|
alignItems: 'center'
|
|
67
67
|
},
|
|
68
|
-
children: [/*#__PURE__*/jsx("div", {
|
|
68
|
+
children: [props.iconPosition !== 'left' ? /*#__PURE__*/jsx("div", {
|
|
69
69
|
children: props.text
|
|
70
|
-
}), /*#__PURE__*/jsx(IconWrapper, {
|
|
70
|
+
}) : null, /*#__PURE__*/jsx(IconWrapper, {
|
|
71
71
|
hoverTips: hoverTips,
|
|
72
72
|
wrapperStyle: {
|
|
73
73
|
display: 'inline-flex'
|
|
@@ -85,9 +85,14 @@ var CopyWrapper = function CopyWrapper(props) {
|
|
|
85
85
|
}),
|
|
86
86
|
size: "small",
|
|
87
87
|
onClick: onClick
|
|
88
|
-
})
|
|
88
|
+
}), props.iconPosition === 'left' ? /*#__PURE__*/jsx("div", {
|
|
89
|
+
children: props.text
|
|
90
|
+
}) : null]
|
|
89
91
|
});
|
|
90
92
|
};
|
|
93
|
+
CopyWrapper.copy = function (text) {
|
|
94
|
+
copy(text);
|
|
95
|
+
};
|
|
91
96
|
|
|
92
97
|
export { CopyWrapper as C };
|
|
93
|
-
//# sourceMappingURL=copy-
|
|
98
|
+
//# sourceMappingURL=copy-BSlIwnwz.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"copy-BSlIwnwz.js","sources":["@flatbiz/antd/src/copy-wrapper/copy.tsx"],"sourcesContent":["import type { CSSProperties, ReactNode } from 'react';\nimport { Fragment, useEffect, useMemo, useState } from 'react';\nimport { Flex, message } from 'antd';\nimport copy from 'copy-to-clipboard';\nimport { CheckOutlined, CopyOutlined } from '@ant-design/icons';\nimport { IconWrapper } from '../icon-wrapper/index.js';\n\nexport type CopyWrapperProps = {\n copyText: string | (() => string);\n /** 复制后提示消息 */\n copyAfterMsg?: string;\n /** 复制鼠标悬浮提示\n * ```\n * hoverTips={(trigger) => {\n * return trigger ? '复制成功' : '复制数据';\n * }}\n * ```\n */\n hoverTips?: string | ((trigger) => string);\n /** 设置icon后失效 */\n iconStyle?: CSSProperties;\n /** 自定义文本,显示在复制图标前或后 */\n text?: ReactNode;\n\n hiddenTips?: boolean;\n /** 自定义复制icon图标 */\n icon?: ReactNode;\n /** 复制图标位置,text 为空时,此配置无效 */\n iconPosition?: 'left' | 'right';\n};\n\nexport const CopyWrapper = (props: CopyWrapperProps) => {\n const [trigger, setTrigger] = useState(false);\n\n const onClick = () => {\n if (trigger) return;\n setTrigger(true);\n const copyText =\n typeof props.copyText === 'function' ? props.copyText() : props.copyText;\n copy(copyText);\n if (props.copyAfterMsg) {\n message.success(props.copyAfterMsg);\n }\n };\n\n useEffect(() => {\n if (trigger) {\n setTimeout(() => {\n setTrigger(false);\n }, 1000);\n }\n }, [trigger]);\n\n const hoverTips = useMemo(() => {\n if (props.hiddenTips) return undefined;\n if (typeof props.hoverTips === 'function') {\n return props.hoverTips(trigger);\n }\n if (props.hoverTips) return props.hoverTips;\n return '复制';\n }, [props, trigger]);\n\n if (!props.text) {\n return (\n <IconWrapper\n hoverTips={hoverTips}\n wrapperStyle={{ display: 'inline-flex' }}\n text={\n trigger ? (\n <CheckOutlined\n style={{ color: 'var(--color-primary)', ...props.iconStyle }}\n />\n ) : props.icon ? (\n <Fragment>{props.icon}</Fragment>\n ) : (\n <CopyOutlined\n style={{ color: 'var(--color-primary)', ...props.iconStyle }}\n />\n )\n }\n size=\"small\"\n onClick={onClick}\n />\n );\n }\n\n return (\n <Flex align=\"center\" gap={5} style={{ alignItems: 'center' }}>\n {props.iconPosition !== 'left' ? <div>{props.text}</div> : null}\n <IconWrapper\n hoverTips={hoverTips}\n wrapperStyle={{ display: 'inline-flex' }}\n text={\n trigger ? (\n <CheckOutlined\n style={{ color: 'var(--color-primary)', ...props.iconStyle }}\n />\n ) : props.icon ? (\n <Fragment>{props.icon}</Fragment>\n ) : (\n <CopyOutlined\n style={{ color: 'var(--color-primary)', ...props.iconStyle }}\n />\n )\n }\n size=\"small\"\n onClick={onClick}\n />\n {props.iconPosition === 'left' ? <div>{props.text}</div> : null}\n </Flex>\n );\n};\n\nCopyWrapper.copy = (text: string) => {\n copy(text);\n};\n"],"names":["CopyWrapper","props","_useState","useState","_useState2","_slicedToArray","trigger","setTrigger","onClick","copyText","copy","copyAfterMsg","message","success","useEffect","setTimeout","hoverTips","useMemo","hiddenTips","undefined","text","_jsx","IconWrapper","wrapperStyle","display","_CheckOutlined","style","_objectSpread","color","iconStyle","icon","Fragment","children","_CopyOutlined","size","_jsxs","Flex","align","gap","alignItems","iconPosition"],"mappings":"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"}
|
|
@@ -4,16 +4,27 @@ export type CopyWrapperProps = {
|
|
|
4
4
|
copyText: string | (() => string);
|
|
5
5
|
/** 复制后提示消息 */
|
|
6
6
|
copyAfterMsg?: string;
|
|
7
|
-
/** 复制鼠标悬浮提示
|
|
7
|
+
/** 复制鼠标悬浮提示
|
|
8
|
+
* ```
|
|
9
|
+
* hoverTips={(trigger) => {
|
|
10
|
+
* return trigger ? '复制成功' : '复制数据';
|
|
11
|
+
* }}
|
|
12
|
+
* ```
|
|
13
|
+
*/
|
|
8
14
|
hoverTips?: string | ((trigger: any) => string);
|
|
9
15
|
/** 设置icon后失效 */
|
|
10
16
|
iconStyle?: CSSProperties;
|
|
11
|
-
/**
|
|
17
|
+
/** 自定义文本,显示在复制图标前或后 */
|
|
12
18
|
text?: ReactNode;
|
|
13
19
|
hiddenTips?: boolean;
|
|
14
|
-
/**
|
|
20
|
+
/** 自定义复制icon图标 */
|
|
15
21
|
icon?: ReactNode;
|
|
22
|
+
/** 复制图标位置,text 为空时,此配置无效 */
|
|
23
|
+
iconPosition?: "left" | "right";
|
|
24
|
+
};
|
|
25
|
+
export declare const CopyWrapper: {
|
|
26
|
+
(props: CopyWrapperProps): import("react").JSX.Element;
|
|
27
|
+
copy(text: string): void;
|
|
16
28
|
};
|
|
17
|
-
export declare const CopyWrapper: (props: CopyWrapperProps) => import("react").JSX.Element;
|
|
18
29
|
|
|
19
30
|
export {};
|
|
@@ -3,7 +3,7 @@ import './../icon-wrapper/index.css';
|
|
|
3
3
|
import './index.css';
|
|
4
4
|
/*! @flatjs/forge MIT @flatbiz/antd */
|
|
5
5
|
|
|
6
|
-
export { C as CopyWrapper } from '../copy-
|
|
6
|
+
export { C as CopyWrapper } from '../copy-BSlIwnwz.js';
|
|
7
7
|
import '@ant-design/icons/es/icons/CopyOutlined.js';
|
|
8
8
|
import '@ant-design/icons/es/icons/CheckOutlined.js';
|
|
9
9
|
import '../_rollupPluginBabelHelpers-BspM60Sw.js';
|
|
@@ -5,7 +5,7 @@ import { Form } from 'antd';
|
|
|
5
5
|
import { useSensors, useSensor, PointerSensor, DndContext } from '@dnd-kit/core';
|
|
6
6
|
import { restrictToVerticalAxis } from '@dnd-kit/modifiers';
|
|
7
7
|
import { useSortable, SortableContext, verticalListSortingStrategy, arrayMove } from '@dnd-kit/sortable';
|
|
8
|
-
import { E as EditableTable } from './editable-table-
|
|
8
|
+
import { E as EditableTable } from './editable-table-Ckl_Q1fk.js';
|
|
9
9
|
import { createCtx } from '@wove/react/create-ctx';
|
|
10
10
|
import _DragOutlined from '@ant-design/icons/es/icons/DragOutlined.js';
|
|
11
11
|
import { createElement, Children, cloneElement } from 'react';
|
|
@@ -178,4 +178,4 @@ var DragEditableTable = function DragEditableTable(props) {
|
|
|
178
178
|
};
|
|
179
179
|
|
|
180
180
|
export { DragEditableTable as D };
|
|
181
|
-
//# sourceMappingURL=drag-
|
|
181
|
+
//# sourceMappingURL=drag-CGxDk1SF.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"drag-Bn9b0R-o.js","sources":["@flatbiz/antd/src/drag-editable-table/context.ts","@flatbiz/antd/src/drag-editable-table/table-tr-handle.tsx","@flatbiz/antd/src/drag-editable-table/row.tsx","@flatbiz/antd/src/drag-editable-table/drag.tsx"],"sourcesContent":["import { type ReactElement } from 'react';\nimport { createCtx } from '@wove/react';\n\nexport const [getCtx, CtxProvider] = createCtx<{\n dragIcon?: ReactElement;\n uidFieldKey: string;\n}>();\n","import {\n Children,\n cloneElement,\n type CSSProperties,\n type ReactElement,\n} from 'react';\nimport { type RowProps } from 'antd';\nimport { DragOutlined } from '@ant-design/icons';\nimport { useSortable } from '@dnd-kit/sortable';\nimport { CSS } from '@dnd-kit/utilities';\nimport { isUndefinedOrNull, noop } from '@flatbiz/utils';\nimport { IconWrapper } from '../icon-wrapper/icon-wrapper.jsx';\n\ntype TableTrHandleProps = RowProps & {\n dragIcon?: ReactElement;\n};\nexport const TableTrHandle = (props: TableTrHandleProps) => {\n const { dragIcon, ...innerProps } = props;\n const rowId = innerProps['data-row-key'] as number;\n\n const {\n setActivatorNodeRef,\n listeners,\n setNodeRef,\n transform,\n transition,\n isDragging,\n } = useSortable({\n id: rowId,\n });\n\n if (isUndefinedOrNull(rowId)) {\n return <tr {...innerProps} />;\n }\n const style: CSSProperties = {\n ...innerProps.style,\n transform: CSS.Transform.toString(transform && { ...transform, scaleY: 1 }),\n transition,\n cursor: 'move',\n ...(isDragging\n ? {\n position: 'relative',\n zIndex: 9999,\n boxShadow: ' 0px 0px 12px 4px rgba(34, 33, 81, 0.1)',\n backgroundColor: 'var(--block-bg-color)',\n }\n : {}),\n };\n const iconElement = dragIcon || <DragOutlined />;\n return (\n <tr {...innerProps} ref={setNodeRef} style={style} key={rowId}>\n {Children.map(props.children, (child) => {\n if ((child as ReactElement).key === '__sort') {\n return cloneElement(child as ReactElement, {\n children: (\n <span\n ref={setActivatorNodeRef}\n style={{\n touchAction: 'none',\n cursor: 'move',\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'center',\n }}\n {...listeners}\n >\n <IconWrapper\n style={{\n touchAction: 'none',\n cursor: 'move',\n padding: '1px 0px',\n margin: 0,\n justifyContent: 'center',\n color: '#787878',\n }}\n icon={iconElement}\n onClick={noop}\n size=\"small\"\n />\n </span>\n ),\n });\n }\n return child;\n })}\n </tr>\n );\n};\n","import { getCtx } from './context.js';\nimport { TableTrHandle } from './table-tr-handle.jsx';\n\nexport const Row = (props) => {\n const ctx = getCtx();\n return <TableTrHandle {...props} dragIcon={ctx.dragIcon} />;\n};\n","import { type ReactElement } from 'react';\nimport { Form } from 'antd';\nimport {\n DndContext,\n type DragEndEvent,\n PointerSensor,\n useSensor,\n useSensors,\n} from '@dnd-kit/core';\nimport { restrictToVerticalAxis } from '@dnd-kit/modifiers';\nimport {\n arrayMove,\n SortableContext,\n verticalListSortingStrategy,\n} from '@dnd-kit/sortable';\nimport { type TPlainObject } from '@flatbiz/utils';\nimport type {\n EditableTableColumn,\n EditableTableProps,\n} from '../editable-table/editable-table.jsx';\nimport { EditableTable } from '../editable-table/editable-table.jsx';\nimport { CtxProvider } from './context.js';\nimport { Row } from './row.jsx';\n\nexport type DragEditableTableProps = EditableTableProps & {\n /**\n * 拖拽图标自定义,默认使用 DragOutlined 图标\n */\n dragIcon?: ReactElement;\n\n /** 禁用拖拽 */\n disabledDrag?: boolean;\n /**\n * 表格数据唯一值字段Key\n * ```\n * ```\n */\n uidFieldKey: string;\n /**\n * 拖拽结束事件\n * ```\n * dataSource: 拖拽完成后的数据源\n * dragData\n * 1. activeId 拖拽ID\n * 2. activeIndex 拖拽起始表格数组索引值\n * 3. overIndex 拖拽结束表格数组索引值\n * ```\n */\n onDragChange?: (\n dataSource: TPlainObject[],\n dragData: {\n activeId: string | number;\n overId?: string | number;\n activeIndex: number;\n overIndex: number;\n }\n ) => void;\n};\n\n/**\n * 可拖拽编辑表格\n * @deprecated 已过期,请使用 DragEditableTablePro组件\n * ```\n * 1. 表格数据必须要有唯一值字段,通过参数 uidFieldKey 告诉组件\n * 2. Table 参数 components.body.row 被组件内部使用\n * ```\n */\nexport const DragEditableTable = (props: DragEditableTableProps) => {\n const { dragIcon, uidFieldKey, onDragChange, disabledDrag, ...otherProps } =\n props;\n const form = Form.useFormInstance();\n const dataList = Form.useWatch(\n props.completeName ? props.completeName : props.name,\n form\n );\n\n const sensors = useSensors(\n useSensor(PointerSensor, {\n activationConstraint: {\n // 当拖拽触发区域有其他点击事件时,需要延迟触发拖拽动作\n delay: 0,\n tolerance: 0,\n },\n })\n );\n\n const onDragEnd = ({ active, over }: DragEndEvent) => {\n if (active.id !== over?.id) {\n const activeIndex = dataList.findIndex(\n (i) => i[uidFieldKey] === active.id\n );\n const overIndex = dataList.findIndex((i) => i[uidFieldKey] === over?.id);\n const dataListNew = arrayMove(dataList, activeIndex, overIndex);\n form.setFields([\n {\n name: props.completeName ? props.completeName : props.name,\n value: dataListNew,\n },\n ]);\n onDragChange?.(dataListNew as TPlainObject[], {\n activeId: active.id,\n overId: over?.id,\n activeIndex,\n overIndex,\n });\n }\n };\n\n const columns: EditableTableColumn[] = disabledDrag\n ? otherProps.columns\n : [\n {\n dataIndex: '__sort',\n width: 40,\n key: '__sort',\n align: 'center',\n } as EditableTableColumn,\n ].concat(otherProps.columns || []);\n\n return (\n <CtxProvider\n value={{\n dragIcon,\n uidFieldKey,\n }}\n >\n <DndContext\n sensors={sensors}\n modifiers={[restrictToVerticalAxis]}\n onDragEnd={onDragEnd}\n >\n <SortableContext\n items={dataList?.map((i) => i[uidFieldKey]) || []}\n strategy={verticalListSortingStrategy}\n >\n <EditableTable\n {...otherProps}\n uidFieldKey={uidFieldKey}\n columns={columns}\n tableProps={{\n ...otherProps.tableProps,\n components: {\n ...otherProps.tableProps?.components,\n body: {\n ...otherProps.tableProps?.components?.body,\n row: disabledDrag ? undefined : Row,\n },\n },\n }}\n />\n </SortableContext>\n </DndContext>\n </CtxProvider>\n );\n};\n"],"names":["_createCtx","_createCtx3","_createCtx2","_slicedToArray","getCtx","CtxProvider","TableTrHandle","props","dragIcon","innerProps","_objectWithoutProperties","_excluded","rowId","_useSortable","useSortable","id","setActivatorNodeRef","listeners","setNodeRef","transform","transition","isDragging","isUndefinedOrNull","_jsx","_objectSpread","style","CSS","Transform","toString","scaleY","cursor","position","zIndex","boxShadow","backgroundColor","iconElement","_DragOutlined","_createElement","ref","key","Children","map","children","child","cloneElement","touchAction","display","alignItems","justifyContent","IconWrapper","padding","margin","color","icon","onClick","noop","size","Row","ctx","DragEditableTable","_otherProps$tableProp","_otherProps$tableProp2","uidFieldKey","onDragChange","disabledDrag","otherProps","form","Form","useFormInstance","dataList","useWatch","completeName","name","sensors","useSensors","useSensor","PointerSensor","activationConstraint","delay","tolerance","onDragEnd","_ref","active","over","activeIndex","findIndex","i","overIndex","dataListNew","arrayMove","setFields","value","activeId","overId","columns","dataIndex","width","align","concat","DndContext","modifiers","restrictToVerticalAxis","SortableContext","items","strategy","verticalListSortingStrategy","EditableTable","tableProps","components","body","row","undefined"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"drag-CGxDk1SF.js","sources":["@flatbiz/antd/src/drag-editable-table/context.ts","@flatbiz/antd/src/drag-editable-table/table-tr-handle.tsx","@flatbiz/antd/src/drag-editable-table/row.tsx","@flatbiz/antd/src/drag-editable-table/drag.tsx"],"sourcesContent":["import { type ReactElement } from 'react';\nimport { createCtx } from '@wove/react';\n\nexport const [getCtx, CtxProvider] = createCtx<{\n dragIcon?: ReactElement;\n uidFieldKey: string;\n}>();\n","import {\n Children,\n cloneElement,\n type CSSProperties,\n type ReactElement,\n} from 'react';\nimport { type RowProps } from 'antd';\nimport { DragOutlined } from '@ant-design/icons';\nimport { useSortable } from '@dnd-kit/sortable';\nimport { CSS } from '@dnd-kit/utilities';\nimport { isUndefinedOrNull, noop } from '@flatbiz/utils';\nimport { IconWrapper } from '../icon-wrapper/icon-wrapper.jsx';\n\ntype TableTrHandleProps = RowProps & {\n dragIcon?: ReactElement;\n};\nexport const TableTrHandle = (props: TableTrHandleProps) => {\n const { dragIcon, ...innerProps } = props;\n const rowId = innerProps['data-row-key'] as number;\n\n const {\n setActivatorNodeRef,\n listeners,\n setNodeRef,\n transform,\n transition,\n isDragging,\n } = useSortable({\n id: rowId,\n });\n\n if (isUndefinedOrNull(rowId)) {\n return <tr {...innerProps} />;\n }\n const style: CSSProperties = {\n ...innerProps.style,\n transform: CSS.Transform.toString(transform && { ...transform, scaleY: 1 }),\n transition,\n cursor: 'move',\n ...(isDragging\n ? {\n position: 'relative',\n zIndex: 9999,\n boxShadow: ' 0px 0px 12px 4px rgba(34, 33, 81, 0.1)',\n backgroundColor: 'var(--block-bg-color)',\n }\n : {}),\n };\n const iconElement = dragIcon || <DragOutlined />;\n return (\n <tr {...innerProps} ref={setNodeRef} style={style} key={rowId}>\n {Children.map(props.children, (child) => {\n if ((child as ReactElement).key === '__sort') {\n return cloneElement(child as ReactElement, {\n children: (\n <span\n ref={setActivatorNodeRef}\n style={{\n touchAction: 'none',\n cursor: 'move',\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'center',\n }}\n {...listeners}\n >\n <IconWrapper\n style={{\n touchAction: 'none',\n cursor: 'move',\n padding: '1px 0px',\n margin: 0,\n justifyContent: 'center',\n color: '#787878',\n }}\n icon={iconElement}\n onClick={noop}\n size=\"small\"\n />\n </span>\n ),\n });\n }\n return child;\n })}\n </tr>\n );\n};\n","import { getCtx } from './context.js';\nimport { TableTrHandle } from './table-tr-handle.jsx';\n\nexport const Row = (props) => {\n const ctx = getCtx();\n return <TableTrHandle {...props} dragIcon={ctx.dragIcon} />;\n};\n","import { type ReactElement } from 'react';\nimport { Form } from 'antd';\nimport {\n DndContext,\n type DragEndEvent,\n PointerSensor,\n useSensor,\n useSensors,\n} from '@dnd-kit/core';\nimport { restrictToVerticalAxis } from '@dnd-kit/modifiers';\nimport {\n arrayMove,\n SortableContext,\n verticalListSortingStrategy,\n} from '@dnd-kit/sortable';\nimport { type TPlainObject } from '@flatbiz/utils';\nimport type {\n EditableTableColumn,\n EditableTableProps,\n} from '../editable-table/editable-table.jsx';\nimport { EditableTable } from '../editable-table/editable-table.jsx';\nimport { CtxProvider } from './context.js';\nimport { Row } from './row.jsx';\n\nexport type DragEditableTableProps = EditableTableProps & {\n /**\n * 拖拽图标自定义,默认使用 DragOutlined 图标\n */\n dragIcon?: ReactElement;\n\n /** 禁用拖拽 */\n disabledDrag?: boolean;\n /**\n * 表格数据唯一值字段Key\n * ```\n * ```\n */\n uidFieldKey: string;\n /**\n * 拖拽结束事件\n * ```\n * dataSource: 拖拽完成后的数据源\n * dragData\n * 1. activeId 拖拽ID\n * 2. activeIndex 拖拽起始表格数组索引值\n * 3. overIndex 拖拽结束表格数组索引值\n * ```\n */\n onDragChange?: (\n dataSource: TPlainObject[],\n dragData: {\n activeId: string | number;\n overId?: string | number;\n activeIndex: number;\n overIndex: number;\n }\n ) => void;\n};\n\n/**\n * 可拖拽编辑表格\n * @deprecated 已过期,请使用 DragEditableTablePro组件\n * ```\n * 1. 表格数据必须要有唯一值字段,通过参数 uidFieldKey 告诉组件\n * 2. Table 参数 components.body.row 被组件内部使用\n * ```\n */\nexport const DragEditableTable = (props: DragEditableTableProps) => {\n const { dragIcon, uidFieldKey, onDragChange, disabledDrag, ...otherProps } =\n props;\n const form = Form.useFormInstance();\n const dataList = Form.useWatch(\n props.completeName ? props.completeName : props.name,\n form\n );\n\n const sensors = useSensors(\n useSensor(PointerSensor, {\n activationConstraint: {\n // 当拖拽触发区域有其他点击事件时,需要延迟触发拖拽动作\n delay: 0,\n tolerance: 0,\n },\n })\n );\n\n const onDragEnd = ({ active, over }: DragEndEvent) => {\n if (active.id !== over?.id) {\n const activeIndex = dataList.findIndex(\n (i) => i[uidFieldKey] === active.id\n );\n const overIndex = dataList.findIndex((i) => i[uidFieldKey] === over?.id);\n const dataListNew = arrayMove(dataList, activeIndex, overIndex);\n form.setFields([\n {\n name: props.completeName ? props.completeName : props.name,\n value: dataListNew,\n },\n ]);\n onDragChange?.(dataListNew as TPlainObject[], {\n activeId: active.id,\n overId: over?.id,\n activeIndex,\n overIndex,\n });\n }\n };\n\n const columns: EditableTableColumn[] = disabledDrag\n ? otherProps.columns\n : [\n {\n dataIndex: '__sort',\n width: 40,\n key: '__sort',\n align: 'center',\n } as EditableTableColumn,\n ].concat(otherProps.columns || []);\n\n return (\n <CtxProvider\n value={{\n dragIcon,\n uidFieldKey,\n }}\n >\n <DndContext\n sensors={sensors}\n modifiers={[restrictToVerticalAxis]}\n onDragEnd={onDragEnd}\n >\n <SortableContext\n items={dataList?.map((i) => i[uidFieldKey]) || []}\n strategy={verticalListSortingStrategy}\n >\n <EditableTable\n {...otherProps}\n uidFieldKey={uidFieldKey}\n columns={columns}\n tableProps={{\n ...otherProps.tableProps,\n components: {\n ...otherProps.tableProps?.components,\n body: {\n ...otherProps.tableProps?.components?.body,\n row: disabledDrag ? undefined : Row,\n },\n },\n }}\n />\n </SortableContext>\n </DndContext>\n </CtxProvider>\n );\n};\n"],"names":["_createCtx","_createCtx3","_createCtx2","_slicedToArray","getCtx","CtxProvider","TableTrHandle","props","dragIcon","innerProps","_objectWithoutProperties","_excluded","rowId","_useSortable","useSortable","id","setActivatorNodeRef","listeners","setNodeRef","transform","transition","isDragging","isUndefinedOrNull","_jsx","_objectSpread","style","CSS","Transform","toString","scaleY","cursor","position","zIndex","boxShadow","backgroundColor","iconElement","_DragOutlined","_createElement","ref","key","Children","map","children","child","cloneElement","touchAction","display","alignItems","justifyContent","IconWrapper","padding","margin","color","icon","onClick","noop","size","Row","ctx","DragEditableTable","_otherProps$tableProp","_otherProps$tableProp2","uidFieldKey","onDragChange","disabledDrag","otherProps","form","Form","useFormInstance","dataList","useWatch","completeName","name","sensors","useSensors","useSensor","PointerSensor","activationConstraint","delay","tolerance","onDragEnd","_ref","active","over","activeIndex","findIndex","i","overIndex","dataListNew","arrayMove","setFields","value","activeId","overId","columns","dataIndex","width","align","concat","DndContext","modifiers","restrictToVerticalAxis","SortableContext","items","strategy","verticalListSortingStrategy","EditableTable","tableProps","components","body","row","undefined"],"mappings":"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"}
|
|
@@ -87,7 +87,7 @@ export type DateRangePickerWrapperProps = Omit<RangePickerDateProps, "value" | "
|
|
|
87
87
|
string
|
|
88
88
|
] | undefined;
|
|
89
89
|
};
|
|
90
|
-
export type TRequestStatus = "request-init" | "request-progress" | "request-success" | "request-error" | "no-dependencies-params";
|
|
90
|
+
export type TRequestStatus = "request-init" | "request-progress" | "request-success" | "request-error" | "request-search-keyword-empty" | "no-dependencies-params";
|
|
91
91
|
export type TRequestStatusProps = {
|
|
92
92
|
status?: TRequestStatus;
|
|
93
93
|
errorButton?: ReactElement;
|
|
@@ -193,6 +193,8 @@ export type SelectorWrapperProps = Omit<SelectProps, "onSearch" | "notFoundConte
|
|
|
193
193
|
* ```
|
|
194
194
|
*/
|
|
195
195
|
useCache?: boolean;
|
|
196
|
+
/** 是否显示刷新图标 */
|
|
197
|
+
showRefreshIcon?: boolean;
|
|
196
198
|
};
|
|
197
199
|
export type SwitchWrapperValue = string | number | boolean;
|
|
198
200
|
export type SwitchWrapperProps = Omit<SwitchProps, "checked" | "defaultChecked" | "onChange" | "value"> & {
|