@flatbiz/antd 5.0.26 → 5.0.27

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.
@@ -399,8 +399,8 @@ var EasyTable$1 = /*#__PURE__*/forwardRef(function (props, ref) {
399
399
  onUpdateDataSource: function onUpdateDataSource(dataList) {
400
400
  var _props$onDataSourceCh2;
401
401
  setDataSource(dataList);
402
- respOriginalDataRef.current = dataList;
403
- (_props$onDataSourceCh2 = props.onDataSourceChange) === null || _props$onDataSourceCh2 === void 0 || _props$onDataSourceCh2.call(props, dataList);
402
+ respOriginalDataRef.current = _defineProperty({}, fieldNames.list, dataList);
403
+ (_props$onDataSourceCh2 = props.onDataSourceChange) === null || _props$onDataSourceCh2 === void 0 || _props$onDataSourceCh2.call(props, respOriginalDataRef.current);
404
404
  },
405
405
  columnFoldTriggerRender: function columnFoldTriggerRender(children, columns) {
406
406
  var _props$columnFoldConf;
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["@flatbiz/antd/src/easy-table/cache.ts","@flatbiz/antd/src/easy-table/context.ts","@flatbiz/antd/src/easy-table/fold-operate-dropdown.tsx","@flatbiz/antd/src/easy-table/easy-table.tsx","@flatbiz/antd/src/easy-table/filter.tsx","@flatbiz/antd/src/easy-table/hooks.ts","@flatbiz/antd/src/easy-table/fold-operate.tsx","@flatbiz/antd/src/easy-table/hooks/columns.tsx","@flatbiz/antd/src/easy-table/table.tsx","@flatbiz/antd/src/easy-table/index.ts"],"sourcesContent":["import { isArray, isObject } from '@dimjs/lang';\nimport type { TPlainObject } from '@flatbiz/utils';\nimport { localStorageCache, sessionStorageCache } from '@flatbiz/utils';\n\nexport const filterCache = {\n set: (cacheKey: string, filterCondition: TPlainObject) => {\n const value = filterCache.get(cacheKey);\n const mergeParams = {\n ...value,\n ...filterCondition,\n };\n sessionStorageCache.set(`easy_tab_filter_${cacheKey}`, mergeParams);\n return mergeParams as TPlainObject;\n },\n get: (cacheKey: string) => {\n const value = sessionStorageCache.get(\n `easy_tab_filter_${cacheKey}`\n ) as TPlainObject;\n return isObject(value) ? value : {};\n },\n remove: (cacheKey: string) => {\n sessionStorageCache.remove(`easy_tab_filter_${cacheKey}`);\n },\n};\n\nexport const firstQueryCache = {\n set: (cacheKey: string, flag: boolean) => {\n sessionStorageCache.set(`easy_tab_firstQuery_${cacheKey}`, { value: flag });\n },\n get: (cacheKey: string) => {\n const value = sessionStorageCache.get(\n `easy_tab_firstQuery_${cacheKey}`\n )?.value;\n return value === false ? false : true;\n },\n remove: (cacheKey: string) => {\n sessionStorageCache.remove(`easy_tab_firstQuery_${cacheKey}`);\n },\n};\n\nexport const columnFoldCache = {\n set: (cacheKey: string, value: string[]) => {\n localStorageCache.set(`easy_tab_columnFold_${cacheKey}`, { value });\n },\n get: (cacheKey: string) => {\n const value = localStorageCache.get(\n `easy_tab_columnFold_${cacheKey}`\n )?.value;\n return isArray(value) ? (value as string[]) : [];\n },\n remove: (cacheKey: string) => {\n localStorageCache.remove(`easy_tab_columnFold_${cacheKey}`);\n },\n};\n","import { createContext } from 'react';\nimport { type FormInstance } from 'antd';\nimport { noop, type TPlainObject } from '@flatbiz/utils';\nimport {\n type EasyTableProps,\n type EasyTableRefApi,\n type TEasyTableTableColumn,\n} from './type.js';\n\nexport type EditableFieldContextContextApi = {\n cacheKey: string;\n onRequest: (params?: TPlainObject) => void;\n tableDataSource?: TPlainObject[];\n tableTotal: number;\n loading?: boolean;\n fieldNames: TPlainObject;\n pageSize: number;\n initialValues?: TPlainObject;\n onSetPaginationStatus: (status: boolean) => void;\n getPaginationStatus: () => boolean;\n onFormFinish?: (values?: TPlainObject) => void;\n form: FormInstance;\n getEasyTableRef: () => EasyTableRefApi;\n paginationFixed: boolean;\n foldKeys: string[];\n onSetBaseColumns: (\n baseColumns?: TEasyTableTableColumn<TPlainObject>[]\n ) => void;\n onSetColumns: (columns?: TEasyTableTableColumn<TPlainObject>[]) => void;\n columns?: TEasyTableTableColumn<TPlainObject>[];\n dynamicColumnsConfig: {\n showFoldKeyList: string[];\n onChangeShowFoldKeyList: (keys: string[]) => void;\n columnFoldOpen: boolean;\n columnFoldConfig?: EasyTableProps['columnFoldConfig'];\n onOpenColumnFoldModal: () => void;\n onCloseColumnFoldModal: () => void;\n asyncColumnRequest?: EasyTableProps['asyncColumnRequest'];\n };\n};\n\nexport const EasyTableContext = createContext<EditableFieldContextContextApi>({\n onRequest: noop,\n tableList: [],\n getEasyTableRef: () => {\n //\n },\n} as unknown as EditableFieldContextContextApi);\n","import {\n type CSSProperties,\n Fragment,\n type ReactElement,\n useState,\n} from 'react';\nimport { Checkbox, Popover } from 'antd';\nimport { columnFoldCache } from './cache.js';\n\ntype FoldOperateProps = {\n style?: CSSProperties;\n dataList: { dataIndex: string; title: string }[];\n onChange: (keys: string[]) => void;\n cacheKey?: string;\n initSelectedRowKeys?: string[];\n children?: ReactElement;\n};\n\nexport const FoldOperateDropdown = (props: FoldOperateProps) => {\n const [selectedRowKeys, setSelectedRowKeys] = useState<string[]>(\n props.initSelectedRowKeys || []\n );\n\n const onChange = (keys) => {\n setSelectedRowKeys(keys);\n props.onChange(keys);\n if (props.cacheKey) {\n columnFoldCache.set(props.cacheKey, keys);\n }\n };\n const content = (\n <Fragment>\n <Checkbox.Group\n defaultValue={selectedRowKeys}\n onChange={onChange}\n value={selectedRowKeys}\n style={{ display: 'flex', flexDirection: 'column' }}\n >\n {props.dataList.map((item) => {\n const label = item['_isFoldTitle'] || item.title;\n return (\n <Checkbox\n value={item.dataIndex}\n key={item.dataIndex}\n style={{ padding: '0 0 5px 0' }}\n >\n {label}\n </Checkbox>\n );\n })}\n </Checkbox.Group>\n </Fragment>\n );\n\n const onChangeAll = (e) => {\n if (e.target.checked) {\n onChange(props.dataList.map((item) => item.dataIndex));\n } else {\n onChange([]);\n }\n };\n\n return (\n <Popover\n content={content}\n title={\n <Checkbox\n checked={selectedRowKeys.length === props.dataList.length}\n onChange={onChangeAll}\n >\n 全选(字段列表)\n </Checkbox>\n }\n placement=\"bottomRight\"\n overlayClassName=\"fold-operate-popiver\"\n >\n {props.children}\n </Popover>\n );\n};\n","import {\n cloneElement,\n type CSSProperties,\n forwardRef,\n useImperativeHandle,\n useMemo,\n useRef,\n useState,\n} from 'react';\nimport { Form, message } from 'antd';\nimport { isArray, isString, isUndefined } from '@dimjs/lang';\nimport { classNames, get } from '@dimjs/utils';\nimport { getUuid, type TAny, type TPlainObject } from '@flatbiz/utils';\nimport { hooks } from '@wove/react';\nimport { fbaHooks } from '../fba-hooks/index.js';\nimport { fbaUtils } from '../fba-utils/index.js';\nimport { PaginationWrapper } from '../pagination-wrapper/pagination.jsx';\nimport { columnFoldCache, filterCache, firstQueryCache } from './cache.js';\nimport { EasyTableContext } from './context.js';\nimport { FoldOperateDropdown } from './fold-operate-dropdown.jsx';\nimport {\n type EasyTableProps,\n type EasyTableRefApi,\n type TEasyTableTableColumn,\n} from './type.js';\nimport './style.less';\n\nexport const EasyTable = forwardRef<EasyTableRefApi, EasyTableProps>(\n (props, ref) => {\n const screenType = fbaHooks.useResponsivePoint() || '';\n const [dataSource, setDataSource] = useState<TPlainObject[]>();\n const [total, setTotal] = useState<number>(0);\n const [loading, setLoading] = useState<boolean>(false);\n const columnFoldConfig = props.columnFoldConfig;\n const asyncColumnRequest = props.asyncColumnRequest;\n\n const [columnFoldOpen, setColumnFoldOpen] = useState(false);\n\n const cacheKey = useMemo(() => {\n if (props.cacheKey) return props.cacheKey;\n if (props.cacheSwitch === true) {\n return location.pathname;\n }\n if (typeof props.cacheSwitch === 'string') {\n return props.cacheSwitch;\n }\n return getUuid();\n }, [props.cacheSwitch, props.cacheKey]);\n\n const cacheParams = filterCache.get(cacheKey);\n\n const [showFoldKeyList, setShowFoldKeyList] = useState<string[]>(() => {\n if (cacheKey) {\n const columnFoldCacheValue = columnFoldCache.get(cacheKey);\n const cacheKeyList = isArray(columnFoldCacheValue)\n ? columnFoldCacheValue.filter((item) => isString(item))\n : [];\n return cacheKeyList.length > 0\n ? cacheKeyList\n : columnFoldConfig?.initSelectedKeys || [];\n } else {\n return columnFoldConfig?.initSelectedKeys || [];\n }\n });\n\n const pageSize =\n props.pageSize || props.initialPaginationParams?.pageSize || 10;\n const initRequest =\n props.initRequest === undefined ? true : props.initRequest;\n const paginationStatusRef = useRef(false);\n const respOriginalDataRef = useRef<TAny>();\n const baseColumnsRef = useRef<TEasyTableTableColumn<TPlainObject>[]>([]);\n const [dynamicColumns, setDynamicColumns] =\n useState<TEasyTableTableColumn<TPlainObject>[]>();\n\n const columnsRef = useRef<TEasyTableTableColumn<TPlainObject>[]>([]);\n\n const fieldNames = {\n list: 'list',\n total: 'total',\n pageNo: 'pageNo',\n pageSize: 'pageSize',\n ...props.fieldNames,\n };\n\n const [form] = Form.useForm(props.form);\n\n const onInnerRequest = hooks.useCallbackRef(async (params) => {\n try {\n if (props.breforeRequest) {\n try {\n await props.breforeRequest(form);\n } catch (_error) {\n return;\n }\n }\n firstQueryCache.set(cacheKey, false);\n setLoading(true);\n const paramsAll = filterCache.set(cacheKey, params);\n const {\n requestParamsAdapter,\n onRequest,\n requestResultAdapter,\n dynamicColumsAdapter,\n } = props.serviceConfig;\n const paramsNew = requestParamsAdapter\n ? requestParamsAdapter(paramsAll)\n : paramsAll;\n const respData =\n (await onRequest(fbaUtils.removeFormValuesInvalidField(paramsNew))) ||\n {};\n respOriginalDataRef.current = respData;\n props.onDataSourceChange?.(respData);\n let respDataNew: TPlainObject = respData;\n if (requestResultAdapter) {\n respDataNew = requestResultAdapter(respData);\n }\n if (dynamicColumsAdapter) {\n const dynamicColumns = dynamicColumsAdapter(\n respData,\n baseColumnsRef.current\n );\n /** 不要添加默认值 */\n setDynamicColumns(dynamicColumns);\n }\n const respList = get(respDataNew, fieldNames.list);\n setDataSource(isArray(respList) ? respList : []);\n setTotal(get(respDataNew, fieldNames.total));\n setLoading(false);\n } catch (error: any) {\n setLoading(false);\n if (props.onRequestErrorHandle) {\n props.onRequestErrorHandle(error);\n } else {\n void message.error(error.message);\n }\n }\n });\n\n fbaHooks.useEffectCustom(() => {\n const hasPagination = getPaginationStatus();\n const firstQueryFlag = firstQueryCache.get(cacheKey);\n form.setFieldsValue({\n ...props.initialValues,\n ...cacheParams,\n });\n if (initRequest || !firstQueryFlag) {\n if (hasPagination) {\n void onInnerRequest({\n [fieldNames.pageNo]: 1,\n [fieldNames.pageSize]: pageSize,\n ...props.initialValues,\n ...cacheParams,\n });\n } else {\n void onInnerRequest(props.initialValues);\n }\n } else {\n filterCache.set(cacheKey, props.initialValues || {});\n }\n }, []);\n\n const clearQueryCondition = hooks.useCallbackRef(\n (values?: TPlainObject) => {\n filterCache.remove(cacheKey);\n form.resetFields();\n if (values) {\n filterCache.set(cacheKey, values);\n form.setFieldsValue(values);\n }\n }\n );\n\n const updateQueryCondition = hooks.useCallbackRef(\n (values: TPlainObject) => {\n filterCache.set(cacheKey, values);\n form.setFieldsValue(values);\n }\n );\n\n const getPaginationData = (pageNo: number, _pageSize: number) => {\n if (getPaginationStatus()) {\n return {\n [fieldNames.pageNo]: pageNo,\n [fieldNames.pageSize]: _pageSize || pageSize,\n };\n } else {\n return {\n [fieldNames.pageNo]: undefined,\n [fieldNames.pageSize]: undefined,\n };\n }\n };\n\n const onResetRequest = hooks.useCallbackRef((values?: TPlainObject) => {\n const params = {\n ...getPaginationData(1, cacheParams[fieldNames.pageSize]),\n ...props.initialValues,\n ...values,\n };\n filterCache.remove(cacheKey);\n form.resetFields();\n if (values) {\n form.setFieldsValue(values);\n }\n void onInnerRequest(params);\n });\n\n const getRequestParams = hooks.useCallbackRef(() => {\n return {\n ...cacheParams,\n ...form.getFieldsValue(),\n };\n });\n\n const onOpenColumnFoldModal = hooks.useCallbackRef(() => {\n setColumnFoldOpen(true);\n });\n\n const onCloseColumnFoldModal = hooks.useCallbackRef(() => {\n setColumnFoldOpen(false);\n });\n\n const getEasyTableRef = (): EasyTableRefApi => {\n return {\n /**\n * 参数\n * 1. 不用添加已存在的搜索条件\n * 2. 此处可重新\n */\n onRequest: onInnerRequest,\n clearQueryCondition,\n updateQueryCondition,\n getRequestParams,\n onResetRequest,\n form,\n dataSource: respOriginalDataRef.current,\n getDataSource: () => {\n return respOriginalDataRef.current;\n },\n onFilterDataSource: (filterDataSource) => {\n setDataSource(filterDataSource);\n },\n onClearDataSource: () => {\n setTotal(0);\n setDataSource([]);\n },\n onUpdateDataSource: (dataList) => {\n setDataSource(dataList);\n respOriginalDataRef.current = dataList;\n props.onDataSourceChange?.(dataList);\n },\n columnFoldTriggerRender: (\n children,\n columns: TEasyTableTableColumn<TPlainObject>[]\n ) => {\n if (props.columnFoldConfig?.triggerType === 'drawer') {\n return cloneElement(children, {\n onClick: onOpenColumnFoldModal,\n });\n }\n\n const foldColumnList = columns.filter((item: TAny) => {\n return !item.hidden && item.isFold && item.dataIndex;\n });\n\n return (\n <FoldOperateDropdown\n dataList={\n foldColumnList as { dataIndex: string; title: string }[]\n }\n onChange={onChangeFoldColumnList}\n cacheKey={cacheKey}\n initSelectedRowKeys={showFoldKeyList}\n >\n {children}\n </FoldOperateDropdown>\n );\n },\n onChangeTableColumns: (columns) => {\n setDynamicColumns(columns);\n },\n getTableColumns: () => {\n return columnsRef.current;\n },\n loading,\n setEnabledInitRequest: () => {\n firstQueryCache.set(cacheKey, false);\n },\n };\n };\n\n useImperativeHandle(ref, () => {\n return getEasyTableRef();\n });\n\n const onSetPaginationStatus = (status: boolean) => {\n paginationStatusRef.current = status;\n };\n\n const onSetBaseColumns = (base) => {\n baseColumnsRef.current = base;\n };\n\n const onSetColumns = (columns) => {\n columnsRef.current = columns;\n };\n\n const onFormFinish = () => {\n const values = form.getFieldsValue();\n if (props.onFormFinish) {\n props.onFormFinish({\n ...values,\n ...getPaginationData(1, cacheParams[fieldNames.pageSize]),\n });\n } else {\n void onInnerRequest({\n ...values,\n ...getPaginationData(1, cacheParams[fieldNames.pageSize]),\n });\n }\n };\n const isFull = isUndefined(props.isFull) ? true : props.isFull;\n\n const filterFixedFt = screenType === 'xs' ? false : props.filterFixed;\n const className = classNames(\n 'fba-easy-table',\n {\n 'fba-easy-table-full': isFull,\n 'fba-easy-table-filter-fixed': filterFixedFt,\n 'fba-easy-table-pagination-fixed': props.paginationFixed,\n },\n props.className\n );\n\n const paginationData = fbaHooks.useMemoCustom(() => {\n return {\n showSizeChanger: true,\n current: cacheParams[fieldNames.pageNo] || 1,\n pageSize: cacheParams[fieldNames.pageSize] || pageSize,\n total: total,\n showTotal: (total) => `共 ${total} 条记录`,\n ...props.pagination,\n };\n }, [\n fieldNames.pageNo,\n cacheParams,\n fieldNames.pageSize,\n cacheKey,\n pageSize,\n props.pagination,\n total,\n ]);\n\n const onChangeFoldColumnList = (keyList: string[]) => {\n setShowFoldKeyList(keyList);\n columnFoldConfig?.onChange?.(keyList);\n };\n\n const onChange = hooks.useCallbackRef((page: number, pageSize: number) => {\n const params = {\n [fieldNames.pageSize]: pageSize,\n [fieldNames.pageNo]: page,\n };\n filterCache.set(cacheKey, params);\n void onInnerRequest(params);\n props.pagination?.onChange?.(page, pageSize);\n });\n\n const getPaginationStatus = () => {\n return props.paginationFixed || paginationStatusRef.current;\n };\n\n // 分页参数发生变更\n hooks.useUpdateEffect(() => {\n if (props.paginationFixed) {\n void onInnerRequest({\n [fieldNames.pageSize]: cacheParams[fieldNames.pageSize] || pageSize,\n [fieldNames.pageNo]: 1,\n });\n } else {\n void onInnerRequest({\n [fieldNames.pageSize]: undefined,\n [fieldNames.pageNo]: undefined,\n });\n }\n }, [props.paginationFixed]);\n\n const wrapperClassName = classNames(\n 'fba-easy-table-wrapper',\n {\n 'fba-easy-table-wrapper-inline': props.isInline,\n },\n props.className\n );\n\n const wrapperStyle: CSSProperties = {\n overflowY: props.filterFixed || props.paginationFixed ? 'hidden' : 'auto',\n ...props.style,\n };\n\n const children =\n typeof props.children === 'function'\n ? props.children(respOriginalDataRef.current)\n : props.children;\n\n return (\n <EasyTableContext.Provider\n value={{\n onSetBaseColumns,\n onSetColumns,\n getEasyTableRef,\n cacheKey,\n onRequest: onInnerRequest,\n tableDataSource: dataSource,\n tableTotal: total,\n loading,\n fieldNames,\n pageSize,\n onSetPaginationStatus,\n getPaginationStatus,\n onFormFinish,\n form,\n paginationFixed: props.paginationFixed || false,\n foldKeys: props.foldKeys || [],\n columns: dynamicColumns,\n initialValues: props.initialValues,\n dynamicColumnsConfig: {\n showFoldKeyList,\n onChangeShowFoldKeyList: onChangeFoldColumnList,\n columnFoldConfig,\n onOpenColumnFoldModal,\n onCloseColumnFoldModal,\n columnFoldOpen,\n asyncColumnRequest,\n },\n }}\n >\n {props.paginationFixed ? (\n <div className={wrapperClassName} style={wrapperStyle}>\n <div className={className}>{children}</div>\n {total > 0 && (\n <div className=\"fba-easy-table-pagination\">\n <PaginationWrapper\n size=\"small\"\n {...paginationData}\n onChange={onChange}\n />\n </div>\n )}\n </div>\n ) : (\n <div className={wrapperClassName} style={props.style}>\n <div className={className}>{children}</div>\n </div>\n )}\n </EasyTableContext.Provider>\n );\n }\n);\n","import {\n Children,\n type CSSProperties,\n type ReactElement,\n useContext,\n useMemo,\n useState,\n} from 'react';\nimport { isFragment } from 'react-is';\nimport { type FormInstance } from 'antd';\nimport { DownOutlined, UpOutlined } from '@ant-design/icons';\nimport { isUndefined } from '@dimjs/lang';\nimport { classNames } from '@dimjs/utils';\nimport { type TAny } from '@flatbiz/utils';\nimport { hooks } from '@wove/react';\nimport { BlockLayout } from '../block-layout/layout.jsx';\nimport type { ButtonWrapperProps } from '../button-wrapper/button-wrapper.jsx';\nimport { ButtonWrapper } from '../button-wrapper/button-wrapper.jsx';\nimport type { EasyFormProps } from '../easy-form/form.jsx';\nimport { EasyForm } from '../easy-form/form.jsx';\nimport { fbaHooks } from '../fba-hooks/index.js';\nimport type { FormOperateColProps } from '../form-grid/form-operate-col.jsx';\nimport type { FormRowProps } from '../form-grid/form-row.jsx';\nimport { FormGrid } from '../form-grid/index.js';\nimport { filterCache } from './cache.js';\nimport { EasyTableContext } from './context.js';\n\nexport type EasyTableFilterProps = {\n children:\n | ReactElement\n | ReactElement[]\n | ((form: FormInstance) => ReactElement);\n /** isPure = true时无效 */\n filterOperate?: (form: FormInstance) => FormOperateColProps;\n /** 是否为纯净模式(查询条件布局是否自定义), */\n isPure?: boolean;\n /** 查询按钮配置 */\n queryButtonProps?: Omit<ButtonWrapperProps, 'onClick'> & { text?: string };\n /** 重置按钮配置 */\n resetButtonProps?: Omit<ButtonWrapperProps, 'onClick'> & { text?: string };\n /**\n * 网格布局设置\n * default = { xs: 24, sm: 12, md: 12, lg: 8, xl: 8, xxl: 6 };\n * small = { xs: 24, sm: 8, md: 8, lg: 6, xl: 6, xxl: 6 };\n */\n formGridSize?: FormRowProps['gridSize'];\n /**\n * @deprecated已过期,使用 easyFormProps.className 配置\n */\n formClassName?: string;\n /**\n * @deprecated已过期,使用 easyFormProps.style 配置\n */\n formStyle?: CSSProperties;\n /** filter Form 外层 BlockLayout style */\n filterWrapperStyle?: CSSProperties;\n /** filter Form 外层 BlockLayout className */\n filterWrapperClassName?: string;\n /**\n * 自定义 filterOperate.rightList 后 默认【查询、重置】按钮处理逻辑\n * 1. cover:覆盖内部查询重置按钮(默认值)\n * 2. beforeAppend:添加到【查询重置】按钮前面\n * 3. afterAppend:添加到【查询重置】按钮后面\n *\n * 如果想隐藏【查询、重置】按钮中的某一个,可设置 queryButtonProps.hidden、resetButtonProps.hidden\n */\n rightOperateAreaAppendType?: 'cover' | 'beforeAppend' | 'afterAppend';\n /** 默认重启按钮触发请求,默认值:true */\n defaultResetButtonTriggerRequest?: boolean;\n easyFormProps?: Omit<\n EasyFormProps,\n 'isPure' | 'column' | 'forceColumn' | 'width' | 'gridGutter' | 'children'\n >;\n};\n\n/**\n * 过滤条件\n *```\n * 1. 用法1\n * -- 默认网格布局 规则:{ xs: 24, sm: 12, md: 12, lg: 8, xl: 8, xxl: 6 }\n * <EasyTableFilter>\n * <FormItemWrapper name=\"field1\" label=\"条件1\">xxx</FormItemWrapper>\n * </EasyTableFilter>\n *\n * -- 自定义网格布局 使用 FormGrid.Col 组件包装 FormItemWrapper\n * <EasyTableFilter>\n * <FormGrid.Col span={12}><FormItemWrapper name=\"field1\" label=\"条件1\">xxx</FormItemWrapper></FormGrid.Col>\n * </EasyTableFilter>\n *\n * -- children 可为 function\n * <EasyTableFilter>\n * {(form) => {\n * return <FormItemWrapper name=\"field1\" label=\"条件1\">xxx</FormItemWrapper>\n * }}\n * </EasyTableFilter>\n *\n * 2. 用户2(自定义布局)\n * EasyTableFilter设置 isPure = true,FormItem无布局规则\n * 3. EasyTableFilter中内置了 Form 标签,当children为函数时,可获取form实例\n * 4. 默认布局下,可通过设置 filterOperate 设置操作按钮\n * 5. Filter 子节点包含 hidden = true 会被忽略\n * 6. 如果想隐藏【查询、重置】按钮中的某一个,可设置 queryButtonProps.hidden、resetButtonProps.hidden\n * 7. 通过设置 defaultResetButtonTriggerRequest,默认重启按钮触发请求,默认值:true\n * 8. EasyTableFilter 子节点可使用 FormItemWrapper,FormItemWrapper中可配置label宽度等\n *```\n */\nexport const EasyTableFilter = (props: EasyTableFilterProps) => {\n const screenType = fbaHooks.useResponsivePoint() || 'md';\n const ctx = useContext(EasyTableContext);\n const {\n queryButtonProps,\n resetButtonProps,\n filterOperate,\n formClassName = '',\n defaultResetButtonTriggerRequest,\n filterWrapperStyle,\n filterWrapperClassName,\n rightOperateAreaAppendType,\n easyFormProps,\n } = props;\n const {\n cacheKey,\n foldKeys,\n fieldNames,\n onRequest,\n pageSize,\n getPaginationStatus,\n initialValues,\n form,\n onFormFinish,\n } = ctx;\n\n const children =\n typeof props.children === 'function'\n ? props.children(form)\n : props.children;\n\n const rightOperateAreaAppendTypeFt = rightOperateAreaAppendType || 'cover';\n const childrens = useMemo(() => {\n if (isFragment(children)) {\n return Children.toArray(\n (children as ReactElement).props.children\n ) as ReactElement[];\n } else {\n return Children.toArray(children) as ReactElement[];\n }\n }, [children]);\n\n const [openFold, setOpenFold] = useState(false);\n\n const onReset = hooks.useCallbackRef(async () => {\n filterCache.remove(cacheKey);\n form.resetFields();\n form.setFieldsValue(initialValues);\n if (\n isUndefined(defaultResetButtonTriggerRequest) ||\n defaultResetButtonTriggerRequest\n ) {\n await form.validateFields();\n if (getPaginationStatus()) {\n onRequest({\n [fieldNames.pageNo]: 1,\n [fieldNames.pageSize]: pageSize,\n ...initialValues,\n });\n } else {\n onRequest(initialValues);\n }\n }\n });\n\n const formRowChildren = useMemo(() => {\n const defaultRightList = [\n !queryButtonProps?.hidden ? (\n <ButtonWrapper\n key=\"1\"\n type=\"primary\"\n htmlType=\"submit\"\n {...queryButtonProps}\n >\n {queryButtonProps?.text || '查询'}\n </ButtonWrapper>\n ) : null,\n !resetButtonProps?.hidden ? (\n <ButtonWrapper key=\"2\" onClick={onReset} {...resetButtonProps}>\n {resetButtonProps?.text || '重置'}\n </ButtonWrapper>\n ) : null,\n ].filter(Boolean);\n const customFormOperateCol = filterOperate?.(form);\n const customRightList = customFormOperateCol?.rightList;\n const leftList: TAny[] = customFormOperateCol?.leftList || [];\n\n let rightList: TAny[] = defaultRightList;\n if (customRightList) {\n if (rightOperateAreaAppendTypeFt === 'afterAppend') {\n rightList = [...defaultRightList, ...customRightList];\n } else if (rightOperateAreaAppendTypeFt === 'beforeAppend') {\n rightList = [...customRightList, ...defaultRightList];\n } else {\n rightList = customRightList;\n }\n }\n if (foldKeys.length > 0) {\n const changeFolditem = (\n <ButtonWrapper\n type=\"link\"\n key=\"fold-trigger\"\n style={{ padding: '0' }}\n onClick={() => {\n setOpenFold(!openFold);\n }}\n >\n {openFold ? (\n <span>\n 收起\n <UpOutlined style={{ marginLeft: 3, fontSize: 12 }} />\n </span>\n ) : (\n <span>\n 展开\n <DownOutlined style={{ marginLeft: 3, fontSize: 12 }} />\n </span>\n )}\n </ButtonWrapper>\n );\n\n if (rightList.length > 0 || leftList.length === 0) {\n rightList.push(changeFolditem);\n } else if (leftList?.length > 0) {\n leftList.push(changeFolditem);\n }\n }\n\n return childrens\n .map((item, index) => {\n if (\n !openFold &&\n foldKeys.find((keyItem) => `.$${keyItem}` === item.key)\n )\n return null;\n if (item.props['hidden']) return null;\n if (item.type['domTypeName'] === 'FormCol') return item;\n return <FormGrid.Col key={index}>{item}</FormGrid.Col>;\n })\n .filter(Boolean)\n .concat(\n <FormGrid.OperateCol\n key={999}\n {...customFormOperateCol}\n leftList={leftList}\n rightList={rightList}\n />\n );\n }, [\n childrens,\n filterOperate,\n foldKeys,\n form,\n onReset,\n openFold,\n queryButtonProps,\n resetButtonProps,\n rightOperateAreaAppendTypeFt,\n ]);\n\n const labelAlign =\n screenType === 'xs' ? 'left' : easyFormProps?.labelAlign || 'right';\n\n return (\n <BlockLayout\n className={classNames('easy-table-filter', filterWrapperClassName)}\n style={filterWrapperStyle}\n >\n <EasyForm\n form={form}\n autoComplete=\"off\"\n onFinish={onFormFinish}\n // initialValues={initialValues}\n className={formClassName}\n style={props.formStyle}\n isPure={true}\n labelWidth=\"80\"\n formItemGap=\"15\"\n {...easyFormProps}\n labelAlign={labelAlign}\n >\n {props.isPure ? (\n children\n ) : (\n <FormGrid.Row gutter={[15, 0]} gridSize={props.formGridSize}>\n {formRowChildren}\n </FormGrid.Row>\n )}\n </EasyForm>\n </BlockLayout>\n );\n};\n","import { useContext } from 'react';\nimport { EasyTableContext } from './context.js';\n\n/**\n * 在 EasyTable子组件内才可使用\n * @returns\n */\nexport const useEasyTable = () => {\n const ctx = useContext(EasyTableContext);\n return ctx.getEasyTableRef();\n};\n\n/**\n * @deprecated 已过时 @4.5.0版本移除,请使用 useEasyTable\n * @returns\n */\nexport const useEasyTablRef = () => {\n const ctx = useContext(EasyTableContext);\n return {\n current: ctx.getEasyTableRef(),\n };\n};\n","import { type CSSProperties, Fragment, useState } from 'react';\nimport { Drawer, Table } from 'antd';\nimport { type ColumnsType } from 'antd/es/table';\nimport { type TableRowSelection } from 'antd/es/table/interface.js';\nimport { type TAny, type TPlainObject } from '@flatbiz/utils';\nimport { columnFoldCache } from './cache.js';\n\ntype FoldOperateProps = {\n style?: CSSProperties;\n dataList: { dataIndex?: string; title: string }[];\n onChange: (keys: string[]) => void;\n open?: boolean;\n onClose?: () => void;\n cacheKey?: string;\n initSelectedRowKeys?: string[];\n};\n\nexport const FoldOperate = (props: FoldOperateProps) => {\n const [selectedRowKeys, setSelectedRowKeys] = useState<string[]>(\n props.initSelectedRowKeys || []\n );\n const rowSelection = {\n type: 'checkbox',\n selectedRowKeys: selectedRowKeys,\n onChange: (selectedRowKeys: string[]) => {\n setSelectedRowKeys(selectedRowKeys);\n props.onChange(selectedRowKeys);\n if (props.cacheKey) {\n columnFoldCache.set(props.cacheKey, selectedRowKeys);\n }\n },\n } as TableRowSelection<TAny>;\n\n const columns: ColumnsType<TPlainObject> = [\n {\n title: '字段名称',\n dataIndex: 'title',\n render: (value, recrd) => {\n return recrd['_isFoldTitle'] || value;\n },\n },\n { title: '字段Key', dataIndex: 'dataIndex' },\n ];\n\n return (\n <Fragment>\n <Drawer\n title=\"选择字段\"\n open={props.open}\n onClose={props.onClose}\n width={'35%'}\n styles={{\n body: {\n padding: 15,\n },\n }}\n >\n <Table\n bordered\n size=\"small\"\n columns={columns}\n rowSelection={rowSelection}\n rowKey=\"dataIndex\"\n pagination={false}\n scroll={{ x: 'max-content' }}\n dataSource={props.dataList}\n />\n </Drawer>\n </Fragment>\n );\n};\n","import { useMemo } from 'react';\nimport { type TAny, type TPlainObject } from '@flatbiz/utils';\nimport { ButtonWrapper } from '../../button-wrapper/button-wrapper.jsx';\nimport { fbaHooks } from '../../fba-hooks/index.js';\nimport { FlexLayout } from '../../flex-layout/flex-layout.jsx';\nimport { IconWrapper } from '../../icon-wrapper/icon-wrapper.jsx';\nimport { SvgHttpView } from '../../svg-http-view/svg.jsx';\nimport { TableTitleTooltip } from '../../table-title-tooltip/title-render.jsx';\nimport { TipsWrapper } from '../../tips-wrapper/tips-wrapper.jsx';\nimport { FoldOperateDropdown } from '../fold-operate-dropdown.jsx';\nimport { type EasyTableProps } from '../type.js';\n\nexport const useColumnsAppendTips = (props: { columns: TPlainObject[] }) => {\n return useMemo(() => {\n const tempList = props.columns\n .map((item) => {\n const { tooltip, tipsWrapperProps, title, ...otherProps } = item;\n if (typeof title === 'string' && tipsWrapperProps) {\n if (typeof tipsWrapperProps === 'string') {\n return {\n ...otherProps,\n title: (\n <TipsWrapper\n tipType=\"popover\"\n popoverProps={{ content: tipsWrapperProps }}\n >\n {title}\n </TipsWrapper>\n ),\n };\n }\n return {\n ...otherProps,\n title: <TipsWrapper {...tipsWrapperProps}>{title}</TipsWrapper>,\n };\n }\n if (typeof title === 'string' && !!tooltip) {\n return {\n ...otherProps,\n title: (\n <TableTitleTooltip\n tooltip={tooltip}\n title={title}\n ></TableTitleTooltip>\n ),\n };\n }\n return item;\n })\n .filter(Boolean);\n return [...tempList] as TPlainObject[];\n }, [props.columns]);\n};\n\nexport const useColumnsAppendInnerColumn = (props: {\n columns: TPlainObject[];\n cacheKey: string;\n showFoldKeyList: string[];\n columnFoldConfig?: EasyTableProps['columnFoldConfig'];\n onOpenColumnFoldModal: () => void;\n onChangeFoldColumnList: (keyList: string[]) => void;\n foldColumnList: TPlainObject[];\n}) => {\n const columnsNew = props.columns;\n return fbaHooks.useMemoCustom(() => {\n if (props.columnFoldConfig?.hidden) return columnsNew;\n const finalItem = columnsNew[columnsNew.length - 1];\n if (props.foldColumnList.length > 0 && columnsNew.length > 0) {\n const foldColumnTarget = columnsNew.find((item) => item['_isFoldColumn']);\n\n if (\n foldColumnTarget &&\n finalItem.dataIndex !== foldColumnTarget.dataIndex\n ) {\n foldColumnTarget.title = foldColumnTarget['_isFoldTitle'];\n foldColumnTarget['_isFoldColumn'] = false;\n }\n if (!finalItem['_isFoldColumn']) {\n finalItem['_isFoldTitle'] =\n finalItem['_isFoldTitle'] || finalItem.title;\n finalItem['_isFoldColumn'] = true;\n\n const triggerType = props.columnFoldConfig?.triggerType;\n\n finalItem.title = (\n <FlexLayout\n direction=\"horizontal\"\n fullIndex={0}\n style={{ alignItems: 'center' }}\n >\n <span>{finalItem.title}</span>\n <div style={{ padding: '0 5px 0 20px', display: 'flex' }}>\n {triggerType === 'drawer' ? (\n <IconWrapper\n onClick={props.onOpenColumnFoldModal}\n text={props.columnFoldConfig?.text}\n size=\"small\"\n icon={\n props.columnFoldConfig?.icon || (\n <SvgHttpView\n svgPath=\"ionic/list-circle\"\n color=\"#868686\"\n />\n )\n }\n hoverTips={props.columnFoldConfig?.hoverTipText || '字段列表'}\n style={{ padding: 0, margin: 0 }}\n />\n ) : (\n <FoldOperateDropdown\n dataList={props.foldColumnList as TAny[]}\n onChange={props.onChangeFoldColumnList}\n cacheKey={props.cacheKey}\n initSelectedRowKeys={props.showFoldKeyList}\n >\n <IconWrapper\n text={props.columnFoldConfig?.text}\n style={{ padding: 0, margin: 0 }}\n size=\"small\"\n icon={\n props.columnFoldConfig?.icon || (\n <SvgHttpView\n svgPath=\"ionic/list-circle\"\n color=\"#868686\"\n />\n )\n }\n />\n </FoldOperateDropdown>\n )}\n </div>\n </FlexLayout>\n );\n }\n }\n return columnsNew;\n }, [props.columns, props.columnFoldConfig]);\n};\n\nexport const useColumnsToHidden = (props: {\n columns: TPlainObject[];\n showFoldKeyList: string[];\n}) => {\n return useMemo(() => {\n const tempList = props.columns\n .map((item) => {\n const { hidden, isFold } = item;\n if (hidden) return null;\n if (isFold && !props.showFoldKeyList.includes(item.dataIndex as string))\n return null;\n return item;\n })\n .filter(Boolean);\n return [...tempList] as TPlainObject[];\n }, [props.columns, props.showFoldKeyList]);\n};\n\nexport const useColumnByAsyncColumnRequest = (props: {\n columns: TPlainObject[];\n asyncColumnRequestResult: TPlainObject;\n}) => {\n return useMemo(() => {\n if (!Object.keys(props.asyncColumnRequestResult)) return props.columns;\n return props.columns.map((item: TAny) => {\n const dataIndex = item.dataIndex as string;\n const result = props.asyncColumnRequestResult[dataIndex];\n if (dataIndex && result) {\n if (result.loading) {\n item.render = (value) => {\n return (\n <ButtonWrapper\n loading\n type=\"text\"\n loadingPosition=\"center\"\n removeGap\n >\n {value}\n </ButtonWrapper>\n );\n };\n } else if (item.asyncRender) {\n item.render = (value, record, index) => {\n return item.asyncRender?.(value, record, index, result.respData);\n };\n }\n }\n return item;\n });\n }, [props.columns, props.asyncColumnRequestResult]);\n};\n","import {\n type CSSProperties,\n Fragment,\n type ReactElement,\n useContext,\n useEffect,\n useMemo,\n useRef,\n useState,\n} from 'react';\nimport { Table, type TableProps } from 'antd';\nimport { classNames } from '@dimjs/utils';\nimport {\n getUuid,\n isMacEnv,\n isUndefinedOrNull,\n type TAny,\n type TPlainObject,\n} from '@flatbiz/utils';\nimport { hooks } from '@wove/react';\nimport { BlockLayout } from '../block-layout/layout.jsx';\nimport { fbaHooks } from '../fba-hooks/index.js';\nimport { TableScrollbar } from '../table-scrollbar/table-scrollbar.jsx';\nimport { filterCache } from './cache.js';\nimport { EasyTableContext } from './context.js';\nimport { FoldOperate } from './fold-operate.jsx';\nimport {\n useColumnByAsyncColumnRequest,\n useColumnsAppendInnerColumn,\n useColumnsAppendTips,\n useColumnsToHidden,\n} from './hooks/columns.jsx';\nimport { type TEasyTableTableColumn } from './type.js';\n\nexport type EasyTableTableProps<T> = Omit<\n TableProps<TAny>,\n 'dataSource' | 'loading' | 'rowKey' | 'columns'\n> & {\n children?: ReactElement | ReactElement[];\n /**\n * 表格行 key 的取值,\n * ```\n * 如果 rowKey 为string类型\n * 1. 组件会判断表格列表数据第一条是否存在当前rowKey对象的数据,如果没有组件内部会动态添加唯一值\n * 2. 基于上一条的逻辑,如果表格数据没有唯一值,可指定 rowKey 值为table数据中不存在的字段名,例如:rowKey=\"_uid\"\n * 3. 如果触发上述逻辑,表格数据中会多出rowKey对应的键值对数据\n * ```\n */\n rowKey: TableProps<TAny>['rowKey'];\n /** table Form 外层 SimpleLayout className */\n tableWrapperStyle?: CSSProperties;\n /** table Form 外层 SimpleLayout className */\n tableWrapperClassName?: string;\n /**\n * ```\n * 1. 当配置了 EasyTable.serviceConfig.dynamicColumsAdapter 后,columns配置只在初始化有效,再次修改无效\n * 2. 可通过 EasyTableRef.onChangeTableColumns 实现 columns 的指定修改\n * ```\n */\n columns: TEasyTableTableColumn<T>[];\n /**\n * 数据加载与表格初始化渲染 是否同步\n * @version 4.4.6\n * ```\n * 1. true:获取数据后再初始化渲染表格(可用于实现表格中defaultXxxx相关功能的使用)\n * ```\n */\n isSync?: boolean;\n /**\n * 空效果显示尺寸,默认值:small\n * @version 4.4.6\n */\n emptyShowSize?: 'small' | 'large';\n};\n\n/**\n * 表格渲染\n * @param props\n * ```\n * 1. 继承了 TableProps 可设置antd table功能\n * 2. 分页功能已内置处理,不调用 onChange\n * ```\n */\nexport const EasyTableTable = <T extends TPlainObject>(\n props: EasyTableTableProps<T>\n) => {\n const ctx = useContext(EasyTableContext);\n const { children, rowKey, pagination, isSync, ...otherProps } = props;\n const screenType = fbaHooks.useResponsivePoint() || '';\n const asyncColumnRequestResultRef = useRef<{\n [dataIndex: string]: {\n respData?: TAny;\n loading?: boolean;\n };\n }>({});\n const [asyncColumnRequestResult, setAsyncColumnRequestResult] = useState<{\n [dataIndex: string]: {\n respData?: TAny;\n loading?: boolean;\n };\n }>({});\n\n const {\n columnFoldConfig,\n onCloseColumnFoldModal,\n columnFoldOpen,\n onOpenColumnFoldModal,\n asyncColumnRequest,\n showFoldKeyList,\n onChangeShowFoldKeyList,\n } = ctx.dynamicColumnsConfig;\n\n const {\n cacheKey,\n fieldNames,\n onRequest,\n tableDataSource,\n pageSize,\n tableTotal,\n loading,\n paginationFixed,\n onSetPaginationStatus,\n } = ctx;\n\n const cacheParams = filterCache.get(cacheKey);\n\n fbaHooks.useEffectCustom(() => {\n /** 获取初始化 columns 数据 */\n ctx.onSetBaseColumns(\n (props.columns || []) as TEasyTableTableColumn<TPlainObject>[]\n );\n }, []);\n\n useEffect(() => {\n if (asyncColumnRequest?.length) {\n for (let index = 0; index < asyncColumnRequest.length; index++) {\n const element = asyncColumnRequest[index];\n asyncColumnRequestResultRef.current = {\n ...asyncColumnRequestResultRef.current,\n [element.dataIndex]: { loading: true },\n };\n setAsyncColumnRequestResult(asyncColumnRequestResultRef.current);\n element\n .onRequest()\n .then((respData) => {\n asyncColumnRequestResultRef.current = {\n ...asyncColumnRequestResultRef.current,\n [element.dataIndex]: { loading: false, respData },\n };\n setAsyncColumnRequestResult(asyncColumnRequestResultRef.current);\n })\n .catch((error) => {\n console.error(error?.message);\n asyncColumnRequestResultRef.current = {\n ...asyncColumnRequestResultRef.current,\n [element.dataIndex]: { loading: false },\n };\n setAsyncColumnRequestResult(asyncColumnRequestResultRef.current);\n });\n }\n }\n }, [asyncColumnRequest]);\n\n const columnsOriginal = fbaHooks.useMemoCustom(() => {\n if (ctx.columns) {\n ctx.onSetColumns(ctx.columns);\n return ctx.columns as TEasyTableTableColumn<T>[];\n } else {\n ctx.onSetColumns(props.columns as TEasyTableTableColumn<TPlainObject>[]);\n return props.columns;\n }\n }, [ctx.columns, props.columns]);\n\n let columnsNew = useColumnsAppendTips({\n columns: [...columnsOriginal],\n });\n\n const foldColumnList = columnsOriginal.filter((item: TAny) => {\n return !item.hidden && item.isFold && item.dataIndex;\n });\n\n columnsNew = useColumnsAppendInnerColumn({\n cacheKey,\n columns: columnsNew,\n foldColumnList,\n showFoldKeyList,\n columnFoldConfig,\n onOpenColumnFoldModal,\n onChangeFoldColumnList: onChangeShowFoldKeyList,\n });\n\n columnsNew = useColumnsToHidden({\n columns: columnsNew,\n showFoldKeyList,\n });\n\n columnsNew = useColumnByAsyncColumnRequest({\n columns: columnsNew,\n asyncColumnRequestResult,\n });\n\n fbaHooks.useEffectCustom(() => {\n onSetPaginationStatus(pagination !== false);\n }, [pagination]);\n\n // 分页参数发生变更\n hooks.useUpdateEffect(() => {\n if (!paginationFixed) {\n if (pagination !== false) {\n onRequest({\n [fieldNames.pageSize]: cacheParams[fieldNames.pageSize] || pageSize,\n [fieldNames.pageNo]: 1,\n });\n } else {\n onRequest({\n [fieldNames.pageSize]: undefined,\n [fieldNames.pageNo]: undefined,\n });\n }\n }\n }, [pagination]);\n\n const tablePaginationData = useMemo(() => {\n if (paginationFixed || pagination === false) return false;\n return {\n showSizeChanger: true,\n current: cacheParams[fieldNames.pageNo] || 1,\n pageSize: cacheParams[fieldNames.pageSize] || pageSize,\n total: tableTotal,\n showTotal: (total) => `共 ${total} 条记录`,\n ...props.pagination,\n // selectComponentClass: SmallSelect,\n };\n }, [\n cacheParams,\n fieldNames.pageNo,\n fieldNames.pageSize,\n pageSize,\n pagination,\n paginationFixed,\n props.pagination,\n tableTotal,\n ]);\n\n const onChangePage: TableProps<TAny>['onChange'] = (\n pagination,\n filters,\n sorter,\n extra\n ) => {\n if (extra.action === 'paginate' && tablePaginationData) {\n onRequest({\n [fieldNames.pageSize]: pagination.pageSize,\n [fieldNames.pageNo]: pagination.current,\n });\n } else {\n props.onChange?.(pagination, filters, sorter, extra);\n }\n };\n\n const dataSource = useMemo(() => {\n if (!tableDataSource) return undefined;\n if (tableDataSource.length === 0) {\n return [];\n }\n if (\n typeof rowKey === 'string' &&\n isUndefinedOrNull(tableDataSource[0][rowKey])\n ) {\n return tableDataSource.map((item) => {\n item[rowKey] = getUuid();\n return item;\n });\n }\n return tableDataSource;\n }, [tableDataSource, rowKey]);\n\n columnsNew = useMemo(() => {\n return columnsNew.map((item) => {\n if (!!item.fixed && screenType === 'xs') {\n item.fixed = undefined;\n }\n if (!!item.defaultValue && !item.render) {\n item.render = (value) => {\n return isUndefinedOrNull(value) || value == ''\n ? item.defaultValue\n : value;\n };\n }\n return item;\n });\n }, [columnsNew, screenType]);\n\n const tableRender = () => {\n if (isSync && !dataSource) {\n return (\n <Fragment>\n {children}\n <Table\n key=\"1\"\n size=\"small\"\n scroll={{ x: 'max-content' }}\n bordered\n rowKey={rowKey as TAny}\n columns={columnsNew}\n loading={loading}\n />\n </Fragment>\n );\n }\n if (isMacEnv()) {\n return (\n <Fragment>\n {children}\n <Table\n key=\"2\"\n size=\"small\"\n scroll={{ x: 'max-content' }}\n bordered\n {...otherProps}\n columns={columnsNew}\n pagination={tablePaginationData}\n rowKey={rowKey}\n onChange={onChangePage}\n loading={loading}\n dataSource={dataSource}\n />\n </Fragment>\n );\n }\n return (\n <Fragment>\n {children}\n <TableScrollbar>\n <Table\n key=\"3\"\n size=\"small\"\n scroll={{ x: 'max-content' }}\n bordered\n {...otherProps}\n columns={columnsNew}\n pagination={tablePaginationData}\n rowKey={rowKey}\n onChange={onChangePage}\n loading={loading}\n dataSource={dataSource}\n />\n </TableScrollbar>\n </Fragment>\n );\n };\n\n return (\n <BlockLayout\n className={classNames(\n 'easy-table-table',\n { 'ett-empty-show-small': props.emptyShowSize === 'small' },\n props.tableWrapperClassName\n )}\n style={props.tableWrapperStyle}\n >\n {tableRender()}\n\n <FoldOperate\n dataList={foldColumnList as TAny[]}\n onClose={onCloseColumnFoldModal}\n open={columnFoldOpen}\n onChange={onChangeShowFoldKeyList}\n cacheKey={cacheKey}\n initSelectedRowKeys={showFoldKeyList}\n />\n </BlockLayout>\n );\n};\n","import { fbaUtils } from '../fba-utils/index.js';\nimport { firstQueryCache } from './cache.js';\nimport { EasyTable as EasyTableInner } from './easy-table.jsx';\nimport { EasyTableFilter } from './filter.jsx';\nimport { useEasyTable, useEasyTablRef } from './hooks.js';\nimport { EasyTableTable } from './table.jsx';\n\n/**\n * 对 查询条件+表格数据 进行深度封装,内置数据交互处理\n * ```\n * Demo https://fex.qa.tcshuke.com/docs/admin/main/crud/easy-table\n *\n * 1. 废弃modelKey参数\n * 2. 如果需要在路由跳转回退中缓存查询条件,设置cacheSwitch=true;如果存在多个EasyTable缓存情况可设置cacheSwitch为自定义字符串\n * 3. 需要获取查询条件、主动发起请求等可通过ref、useEasyTable操作\n * 4. 可通过属性 initRequest 设置初始化是否请求数据\n * 5. 可通过属性 fieldNames 来设置自定义变量,默认值为:list、total、pageNo、pageSize\n * 6. isFull=true,设置【在父节点高度下,上下铺满】(默认值:true)\n * 7. filterFixed=true,设置查询条件固定,不随滚动条滚动\n * 8. paginationFixed=true,可设置分页条件在底部固定,不随滚动条滚动\n * 9. foldKeys=string[],查询条件展开、收起,被收起数组内容为EasyTable.Filter 子节点key值\n * 10. windows环境下,会在EasyTable.Table外部包装一下 TableScrollbar,提高windows下table左右滚动体验\n * 11. 可实现部分字段折叠,手动选择显示,将EasyTable.Table columns中isFold属性设为true,可通过EasyTable columnFoldConfig配置属性,demo(https://fex.qa.tcshuke.com/docs/admin/main/crud/demo1)\n * 12. 通过asyncColumnRequest、asyncRender配合使用可实现表格列数据接口渲染(demo:https://fex.qa.tcshuke.com/docs/admin/main/crud/easy-table)\n * ```\n */\nexport const EasyTable = fbaUtils.attachPropertiesToComponent(EasyTableInner, {\n /**\n * 过滤条件\n *```\n * 1. 用法1\n * -- 默认网格布局 规则:{ xs: 24, sm: 12, md: 12, lg: 8, xl: 8, xxl: 6 }\n * <EasyTable.Filter>\n * <FormItemWrapper name=\"field1\" label=\"条件1\">xxx</FormItemWrapper>\n * </EasyTable.Filter>\n *\n * -- 自定义网格布局 使用 FormGrid.Col 组件包装 FormItemWrapper\n * <EasyTable.Filter>\n * <FormGrid.Col span={12}><FormItemWrapper name=\"field1\" label=\"条件1\">xxx</FormItemWrapper></FormGrid.Col>\n * </EasyTable.Filter>\n *\n * -- children 可为 function\n * <EasyTable.Filter>\n * {(form) => {\n * return <FormItemWrapper name=\"field1\" label=\"条件1\">xxx</FormItemWrapper>\n * }}\n * </EasyTable.Filter>\n * 2. 用户2(自定义布局)\n * EasyTable.Filter设置 isPure = true,FormItem无布局规则\n * 3. EasyTable.Filter中内置了 Form 标签,当children为函数时,可获取form实例\n * 4. 默认布局下,可通过设置 filterOperate 设置操作按钮\n * 5. Filter 子节点包含 hidden = true 会被忽略\n * 6. 如果想隐藏【查询、重置】按钮中的某一个,可设置 queryButtonProps.hidden、resetButtonProps.hidden\n * 7. EasyTableFilter 子节点可使用 FormItemWrapper,FormItemWrapper中可配置label宽度等\n * 8. 通过easyFormProps属性可整体控制子节点FormItem布局\n *```\n */\n Filter: EasyTableFilter,\n /**\n * 表格渲染\n * @param props\n * ```\n * 1. 继承了 TableProps 可设置antd table功能\n * 2. 分页功能已内置处理,不调用 onChange\n * ```\n */\n Table: EasyTableTable,\n /**\n * @deprecated 已过时 4.3.0版本移除,请使用 useEasyTable\n */\n useEasyTablRef: useEasyTablRef,\n\n /** 在 EasyTable子组件内才可使用 */\n useEasyTable: useEasyTable,\n /** 设置启用初始化请求 */\n setEnabledInitRequest: (cacheKey: string) => {\n firstQueryCache.set(cacheKey, false);\n },\n});\n"],"names":["filterCache","set","cacheKey","filterCondition","value","get","mergeParams","_objectSpread","sessionStorageCache","concat","_isObject","remove","firstQueryCache","flag","_sessionStorageCache$","columnFoldCache","localStorageCache","_localStorageCache$ge","_isArray","EasyTableContext","createContext","onRequest","noop","tableList","getEasyTableRef","FoldOperateDropdown","props","_useState","useState","initSelectedRowKeys","_useState2","_slicedToArray","selectedRowKeys","setSelectedRowKeys","onChange","keys","content","_jsx","Fragment","children","Checkbox","Group","defaultValue","style","display","flexDirection","dataList","map","item","label","title","dataIndex","padding","onChangeAll","e","target","checked","Popover","length","placement","overlayClassName","EasyTable","forwardRef","ref","_props$initialPaginat","screenType","fbaHooks","useResponsivePoint","dataSource","setDataSource","_useState3","_useState4","total","setTotal","_useState5","_useState6","loading","setLoading","columnFoldConfig","asyncColumnRequest","_useState7","_useState8","columnFoldOpen","setColumnFoldOpen","useMemo","cacheSwitch","location","pathname","getUuid","cacheParams","_useState9","columnFoldCacheValue","cacheKeyList","filter","_isString","initSelectedKeys","_useState10","showFoldKeyList","setShowFoldKeyList","pageSize","initialPaginationParams","initRequest","undefined","paginationStatusRef","useRef","respOriginalDataRef","baseColumnsRef","_useState11","_useState12","dynamicColumns","setDynamicColumns","columnsRef","fieldNames","list","pageNo","_Form$useForm","Form","useForm","form","_Form$useForm2","onInnerRequest","_hooks","useCallbackRef","params","Promise","$return","$error","_props$onDataSourceCh","paramsAll","_props$serviceConfig","requestParamsAdapter","requestResultAdapter","dynamicColumsAdapter","paramsNew","respData","respDataNew","_dynamicColumns","respList","$Try_1_Post","$boundEx","$Try_1_Catch","error","onRequestErrorHandle","message","breforeRequest","$Try_2_Post","$If_3","call","bind","$Try_2_Catch","_error","resolve","then","$await_4","serviceConfig","fbaUtils","removeFormValuesInvalidField","$await_5","current","onDataSourceChange","_get","useEffectCustom","hasPagination","getPaginationStatus","firstQueryFlag","setFieldsValue","initialValues","_defineProperty","clearQueryCondition","values","resetFields","updateQueryCondition","getPaginationData","_pageSize","onResetRequest","getRequestParams","getFieldsValue","onOpenColumnFoldModal","onCloseColumnFoldModal","getDataSource","onFilterDataSource","filterDataSource","onClearDataSource","onUpdateDataSource","_props$onDataSourceCh2","columnFoldTriggerRender","columns","_props$columnFoldConf","triggerType","cloneElement","onClick","foldColumnList","hidden","isFold","onChangeFoldColumnList","onChangeTableColumns","getTableColumns","setEnabledInitRequest","useImperativeHandle","onSetPaginationStatus","status","onSetBaseColumns","base","onSetColumns","onFormFinish","isFull","_isUndefined","filterFixedFt","filterFixed","className","_classNames","paginationFixed","paginationData","useMemoCustom","showSizeChanger","showTotal","pagination","keyList","_columnFoldConfig$onC","page","_props$pagination","_props$pagination$onC","useUpdateEffect","wrapperClassName","isInline","wrapperStyle","overflowY","Provider","tableDataSource","tableTotal","foldKeys","dynamicColumnsConfig","onChangeShowFoldKeyList","_jsxs","PaginationWrapper","size","EasyTableFilter","ctx","useContext","queryButtonProps","resetButtonProps","filterOperate","_props$formClassName","formClassName","defaultResetButtonTriggerRequest","filterWrapperStyle","filterWrapperClassName","rightOperateAreaAppendType","easyFormProps","rightOperateAreaAppendTypeFt","childrens","isFragment","Children","toArray","openFold","setOpenFold","onReset","validateFields","$await_2","$If_1","formRowChildren","defaultRightList","ButtonWrapper","type","htmlType","text","Boolean","customFormOperateCol","customRightList","rightList","leftList","_toConsumableArray","changeFolditem","_UpOutlined","marginLeft","fontSize","_DownOutlined","push","index","find","keyItem","key","FormGrid","Col","OperateCol","labelAlign","BlockLayout","EasyForm","autoComplete","onFinish","formStyle","isPure","labelWidth","formItemGap","Row","gutter","gridSize","formGridSize","useEasyTable","useEasyTablRef","FoldOperate","rowSelection","render","recrd","Drawer","open","onClose","width","styles","body","Table","bordered","rowKey","scroll","x","useColumnsAppendTips","tempList","tooltip","tipsWrapperProps","otherProps","_objectWithoutProperties","_excluded","TipsWrapper","tipType","popoverProps","TableTitleTooltip","useColumnsAppendInnerColumn","columnsNew","finalItem","foldColumnTarget","_props$columnFoldConf2","_props$columnFoldConf3","_props$columnFoldConf4","_props$columnFoldConf5","_props$columnFoldConf6","_props$columnFoldConf7","FlexLayout","direction","fullIndex","alignItems","IconWrapper","icon","SvgHttpView","svgPath","color","hoverTips","hoverTipText","margin","useColumnsToHidden","includes","useColumnByAsyncColumnRequest","Object","asyncColumnRequestResult","result","loadingPosition","removeGap","asyncRender","record","_item$asyncRender","EasyTableTable","isSync","asyncColumnRequestResultRef","setAsyncColumnRequestResult","_ctx$dynamicColumnsCo","useEffect","_loop","element","catch","console","columnsOriginal","tablePaginationData","onChangePage","filters","sorter","extra","action","_props$onChange","isUndefinedOrNull","fixed","tableRender","isMacEnv","TableScrollbar","emptyShowSize","tableWrapperClassName","tableWrapperStyle","attachPropertiesToComponent","EasyTableInner","Filter"],"mappings":"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tO,MAAAA,QAAQ,EAAEA,QAAS;AACnB2B,MAAAA,mBAAmB,EAAEoE;AAAgB,KACtC,CAAC;AAAA,GACS,CAAC;AAElB,CAAC;;AC9WD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACO,IAAMpC,SAAS,GAAG8F,QAAQ,CAACsO,2BAA2B,CAACC,WAAc,EAAE;AAC5E;AACF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACEC,EAAAA,MAAM,EAAEvJ,eAAe;AACvB;AACF;AACA;AACA;AACA;AACA;AACA;AACA;AACE0E,EAAAA,KAAK,EAAEiD,cAAc;AACrB;AACF;AACA;AACE5D,EAAAA,cAAc,EAAEA,cAAc;AAE9B;AACAD,EAAAA,YAAY,EAAEA,YAAY;AAC1B;AACArG,EAAAA,qBAAqB,EAAE,SAAvBA,qBAAqBA,CAAGnM,QAAgB,EAAK;AAC3CU,IAAAA,eAAe,CAACX,GAAG,CAACC,QAAQ,EAAE,KAAK,CAAC;AACtC;AACF,CAAC;;;;"}
1
+ {"version":3,"file":"index.js","sources":["@flatbiz/antd/src/easy-table/cache.ts","@flatbiz/antd/src/easy-table/context.ts","@flatbiz/antd/src/easy-table/fold-operate-dropdown.tsx","@flatbiz/antd/src/easy-table/easy-table.tsx","@flatbiz/antd/src/easy-table/filter.tsx","@flatbiz/antd/src/easy-table/hooks.ts","@flatbiz/antd/src/easy-table/fold-operate.tsx","@flatbiz/antd/src/easy-table/hooks/columns.tsx","@flatbiz/antd/src/easy-table/table.tsx","@flatbiz/antd/src/easy-table/index.ts"],"sourcesContent":["import { isArray, isObject } from '@dimjs/lang';\nimport type { TPlainObject } from '@flatbiz/utils';\nimport { localStorageCache, sessionStorageCache } from '@flatbiz/utils';\n\nexport const filterCache = {\n set: (cacheKey: string, filterCondition: TPlainObject) => {\n const value = filterCache.get(cacheKey);\n const mergeParams = {\n ...value,\n ...filterCondition,\n };\n sessionStorageCache.set(`easy_tab_filter_${cacheKey}`, mergeParams);\n return mergeParams as TPlainObject;\n },\n get: (cacheKey: string) => {\n const value = sessionStorageCache.get(\n `easy_tab_filter_${cacheKey}`\n ) as TPlainObject;\n return isObject(value) ? value : {};\n },\n remove: (cacheKey: string) => {\n sessionStorageCache.remove(`easy_tab_filter_${cacheKey}`);\n },\n};\n\nexport const firstQueryCache = {\n set: (cacheKey: string, flag: boolean) => {\n sessionStorageCache.set(`easy_tab_firstQuery_${cacheKey}`, { value: flag });\n },\n get: (cacheKey: string) => {\n const value = sessionStorageCache.get(\n `easy_tab_firstQuery_${cacheKey}`\n )?.value;\n return value === false ? false : true;\n },\n remove: (cacheKey: string) => {\n sessionStorageCache.remove(`easy_tab_firstQuery_${cacheKey}`);\n },\n};\n\nexport const columnFoldCache = {\n set: (cacheKey: string, value: string[]) => {\n localStorageCache.set(`easy_tab_columnFold_${cacheKey}`, { value });\n },\n get: (cacheKey: string) => {\n const value = localStorageCache.get(\n `easy_tab_columnFold_${cacheKey}`\n )?.value;\n return isArray(value) ? (value as string[]) : [];\n },\n remove: (cacheKey: string) => {\n localStorageCache.remove(`easy_tab_columnFold_${cacheKey}`);\n },\n};\n","import { createContext } from 'react';\nimport { type FormInstance } from 'antd';\nimport { noop, type TPlainObject } from '@flatbiz/utils';\nimport {\n type EasyTableProps,\n type EasyTableRefApi,\n type TEasyTableTableColumn,\n} from './type.js';\n\nexport type EditableFieldContextContextApi = {\n cacheKey: string;\n onRequest: (params?: TPlainObject) => void;\n tableDataSource?: TPlainObject[];\n tableTotal: number;\n loading?: boolean;\n fieldNames: TPlainObject;\n pageSize: number;\n initialValues?: TPlainObject;\n onSetPaginationStatus: (status: boolean) => void;\n getPaginationStatus: () => boolean;\n onFormFinish?: (values?: TPlainObject) => void;\n form: FormInstance;\n getEasyTableRef: () => EasyTableRefApi;\n paginationFixed: boolean;\n foldKeys: string[];\n onSetBaseColumns: (\n baseColumns?: TEasyTableTableColumn<TPlainObject>[]\n ) => void;\n onSetColumns: (columns?: TEasyTableTableColumn<TPlainObject>[]) => void;\n columns?: TEasyTableTableColumn<TPlainObject>[];\n dynamicColumnsConfig: {\n showFoldKeyList: string[];\n onChangeShowFoldKeyList: (keys: string[]) => void;\n columnFoldOpen: boolean;\n columnFoldConfig?: EasyTableProps['columnFoldConfig'];\n onOpenColumnFoldModal: () => void;\n onCloseColumnFoldModal: () => void;\n asyncColumnRequest?: EasyTableProps['asyncColumnRequest'];\n };\n};\n\nexport const EasyTableContext = createContext<EditableFieldContextContextApi>({\n onRequest: noop,\n tableList: [],\n getEasyTableRef: () => {\n //\n },\n} as unknown as EditableFieldContextContextApi);\n","import {\n type CSSProperties,\n Fragment,\n type ReactElement,\n useState,\n} from 'react';\nimport { Checkbox, Popover } from 'antd';\nimport { columnFoldCache } from './cache.js';\n\ntype FoldOperateProps = {\n style?: CSSProperties;\n dataList: { dataIndex: string; title: string }[];\n onChange: (keys: string[]) => void;\n cacheKey?: string;\n initSelectedRowKeys?: string[];\n children?: ReactElement;\n};\n\nexport const FoldOperateDropdown = (props: FoldOperateProps) => {\n const [selectedRowKeys, setSelectedRowKeys] = useState<string[]>(\n props.initSelectedRowKeys || []\n );\n\n const onChange = (keys) => {\n setSelectedRowKeys(keys);\n props.onChange(keys);\n if (props.cacheKey) {\n columnFoldCache.set(props.cacheKey, keys);\n }\n };\n const content = (\n <Fragment>\n <Checkbox.Group\n defaultValue={selectedRowKeys}\n onChange={onChange}\n value={selectedRowKeys}\n style={{ display: 'flex', flexDirection: 'column' }}\n >\n {props.dataList.map((item) => {\n const label = item['_isFoldTitle'] || item.title;\n return (\n <Checkbox\n value={item.dataIndex}\n key={item.dataIndex}\n style={{ padding: '0 0 5px 0' }}\n >\n {label}\n </Checkbox>\n );\n })}\n </Checkbox.Group>\n </Fragment>\n );\n\n const onChangeAll = (e) => {\n if (e.target.checked) {\n onChange(props.dataList.map((item) => item.dataIndex));\n } else {\n onChange([]);\n }\n };\n\n return (\n <Popover\n content={content}\n title={\n <Checkbox\n checked={selectedRowKeys.length === props.dataList.length}\n onChange={onChangeAll}\n >\n 全选(字段列表)\n </Checkbox>\n }\n placement=\"bottomRight\"\n overlayClassName=\"fold-operate-popiver\"\n >\n {props.children}\n </Popover>\n );\n};\n","import {\n cloneElement,\n type CSSProperties,\n forwardRef,\n useImperativeHandle,\n useMemo,\n useRef,\n useState,\n} from 'react';\nimport { Form, message } from 'antd';\nimport { isArray, isString, isUndefined } from '@dimjs/lang';\nimport { classNames, get } from '@dimjs/utils';\nimport { getUuid, type TAny, type TPlainObject } from '@flatbiz/utils';\nimport { hooks } from '@wove/react';\nimport { fbaHooks } from '../fba-hooks/index.js';\nimport { fbaUtils } from '../fba-utils/index.js';\nimport { PaginationWrapper } from '../pagination-wrapper/pagination.jsx';\nimport { columnFoldCache, filterCache, firstQueryCache } from './cache.js';\nimport { EasyTableContext } from './context.js';\nimport { FoldOperateDropdown } from './fold-operate-dropdown.jsx';\nimport {\n type EasyTableProps,\n type EasyTableRefApi,\n type TEasyTableTableColumn,\n} from './type.js';\nimport './style.less';\n\nexport const EasyTable = forwardRef<EasyTableRefApi, EasyTableProps>(\n (props, ref) => {\n const screenType = fbaHooks.useResponsivePoint() || '';\n const [dataSource, setDataSource] = useState<TPlainObject[]>();\n const [total, setTotal] = useState<number>(0);\n const [loading, setLoading] = useState<boolean>(false);\n const columnFoldConfig = props.columnFoldConfig;\n const asyncColumnRequest = props.asyncColumnRequest;\n\n const [columnFoldOpen, setColumnFoldOpen] = useState(false);\n\n const cacheKey = useMemo(() => {\n if (props.cacheKey) return props.cacheKey;\n if (props.cacheSwitch === true) {\n return location.pathname;\n }\n if (typeof props.cacheSwitch === 'string') {\n return props.cacheSwitch;\n }\n return getUuid();\n }, [props.cacheSwitch, props.cacheKey]);\n\n const cacheParams = filterCache.get(cacheKey);\n\n const [showFoldKeyList, setShowFoldKeyList] = useState<string[]>(() => {\n if (cacheKey) {\n const columnFoldCacheValue = columnFoldCache.get(cacheKey);\n const cacheKeyList = isArray(columnFoldCacheValue)\n ? columnFoldCacheValue.filter((item) => isString(item))\n : [];\n return cacheKeyList.length > 0\n ? cacheKeyList\n : columnFoldConfig?.initSelectedKeys || [];\n } else {\n return columnFoldConfig?.initSelectedKeys || [];\n }\n });\n\n const pageSize =\n props.pageSize || props.initialPaginationParams?.pageSize || 10;\n const initRequest =\n props.initRequest === undefined ? true : props.initRequest;\n const paginationStatusRef = useRef(false);\n const respOriginalDataRef = useRef<TAny>();\n const baseColumnsRef = useRef<TEasyTableTableColumn<TPlainObject>[]>([]);\n const [dynamicColumns, setDynamicColumns] =\n useState<TEasyTableTableColumn<TPlainObject>[]>();\n\n const columnsRef = useRef<TEasyTableTableColumn<TPlainObject>[]>([]);\n\n const fieldNames = {\n list: 'list',\n total: 'total',\n pageNo: 'pageNo',\n pageSize: 'pageSize',\n ...props.fieldNames,\n };\n\n const [form] = Form.useForm(props.form);\n\n const onInnerRequest = hooks.useCallbackRef(async (params) => {\n try {\n if (props.breforeRequest) {\n try {\n await props.breforeRequest(form);\n } catch (_error) {\n return;\n }\n }\n firstQueryCache.set(cacheKey, false);\n setLoading(true);\n const paramsAll = filterCache.set(cacheKey, params);\n const {\n requestParamsAdapter,\n onRequest,\n requestResultAdapter,\n dynamicColumsAdapter,\n } = props.serviceConfig;\n const paramsNew = requestParamsAdapter\n ? requestParamsAdapter(paramsAll)\n : paramsAll;\n const respData =\n (await onRequest(fbaUtils.removeFormValuesInvalidField(paramsNew))) ||\n {};\n respOriginalDataRef.current = respData;\n props.onDataSourceChange?.(respData);\n let respDataNew: TPlainObject = respData;\n if (requestResultAdapter) {\n respDataNew = requestResultAdapter(respData);\n }\n if (dynamicColumsAdapter) {\n const dynamicColumns = dynamicColumsAdapter(\n respData,\n baseColumnsRef.current\n );\n /** 不要添加默认值 */\n setDynamicColumns(dynamicColumns);\n }\n const respList = get(respDataNew, fieldNames.list);\n setDataSource(isArray(respList) ? respList : []);\n setTotal(get(respDataNew, fieldNames.total));\n setLoading(false);\n } catch (error: any) {\n setLoading(false);\n if (props.onRequestErrorHandle) {\n props.onRequestErrorHandle(error);\n } else {\n void message.error(error.message);\n }\n }\n });\n\n fbaHooks.useEffectCustom(() => {\n const hasPagination = getPaginationStatus();\n const firstQueryFlag = firstQueryCache.get(cacheKey);\n form.setFieldsValue({\n ...props.initialValues,\n ...cacheParams,\n });\n if (initRequest || !firstQueryFlag) {\n if (hasPagination) {\n void onInnerRequest({\n [fieldNames.pageNo]: 1,\n [fieldNames.pageSize]: pageSize,\n ...props.initialValues,\n ...cacheParams,\n });\n } else {\n void onInnerRequest(props.initialValues);\n }\n } else {\n filterCache.set(cacheKey, props.initialValues || {});\n }\n }, []);\n\n const clearQueryCondition = hooks.useCallbackRef(\n (values?: TPlainObject) => {\n filterCache.remove(cacheKey);\n form.resetFields();\n if (values) {\n filterCache.set(cacheKey, values);\n form.setFieldsValue(values);\n }\n }\n );\n\n const updateQueryCondition = hooks.useCallbackRef(\n (values: TPlainObject) => {\n filterCache.set(cacheKey, values);\n form.setFieldsValue(values);\n }\n );\n\n const getPaginationData = (pageNo: number, _pageSize: number) => {\n if (getPaginationStatus()) {\n return {\n [fieldNames.pageNo]: pageNo,\n [fieldNames.pageSize]: _pageSize || pageSize,\n };\n } else {\n return {\n [fieldNames.pageNo]: undefined,\n [fieldNames.pageSize]: undefined,\n };\n }\n };\n\n const onResetRequest = hooks.useCallbackRef((values?: TPlainObject) => {\n const params = {\n ...getPaginationData(1, cacheParams[fieldNames.pageSize]),\n ...props.initialValues,\n ...values,\n };\n filterCache.remove(cacheKey);\n form.resetFields();\n if (values) {\n form.setFieldsValue(values);\n }\n void onInnerRequest(params);\n });\n\n const getRequestParams = hooks.useCallbackRef(() => {\n return {\n ...cacheParams,\n ...form.getFieldsValue(),\n };\n });\n\n const onOpenColumnFoldModal = hooks.useCallbackRef(() => {\n setColumnFoldOpen(true);\n });\n\n const onCloseColumnFoldModal = hooks.useCallbackRef(() => {\n setColumnFoldOpen(false);\n });\n\n const getEasyTableRef = (): EasyTableRefApi => {\n return {\n /**\n * 参数\n * 1. 不用添加已存在的搜索条件\n * 2. 此处可重新\n */\n onRequest: onInnerRequest,\n clearQueryCondition,\n updateQueryCondition,\n getRequestParams,\n onResetRequest,\n form,\n dataSource: respOriginalDataRef.current,\n getDataSource: () => {\n return respOriginalDataRef.current;\n },\n onFilterDataSource: (filterDataSource) => {\n setDataSource(filterDataSource);\n },\n onClearDataSource: () => {\n setTotal(0);\n setDataSource([]);\n },\n onUpdateDataSource: (dataList) => {\n setDataSource(dataList);\n respOriginalDataRef.current = { [fieldNames.list]: dataList };\n props.onDataSourceChange?.(respOriginalDataRef.current);\n },\n columnFoldTriggerRender: (\n children,\n columns: TEasyTableTableColumn<TPlainObject>[]\n ) => {\n if (props.columnFoldConfig?.triggerType === 'drawer') {\n return cloneElement(children, {\n onClick: onOpenColumnFoldModal,\n });\n }\n\n const foldColumnList = columns.filter((item: TAny) => {\n return !item.hidden && item.isFold && item.dataIndex;\n });\n\n return (\n <FoldOperateDropdown\n dataList={\n foldColumnList as { dataIndex: string; title: string }[]\n }\n onChange={onChangeFoldColumnList}\n cacheKey={cacheKey}\n initSelectedRowKeys={showFoldKeyList}\n >\n {children}\n </FoldOperateDropdown>\n );\n },\n onChangeTableColumns: (columns) => {\n setDynamicColumns(columns);\n },\n getTableColumns: () => {\n return columnsRef.current;\n },\n loading,\n setEnabledInitRequest: () => {\n firstQueryCache.set(cacheKey, false);\n },\n };\n };\n\n useImperativeHandle(ref, () => {\n return getEasyTableRef();\n });\n\n const onSetPaginationStatus = (status: boolean) => {\n paginationStatusRef.current = status;\n };\n\n const onSetBaseColumns = (base) => {\n baseColumnsRef.current = base;\n };\n\n const onSetColumns = (columns) => {\n columnsRef.current = columns;\n };\n\n const onFormFinish = () => {\n const values = form.getFieldsValue();\n if (props.onFormFinish) {\n props.onFormFinish({\n ...values,\n ...getPaginationData(1, cacheParams[fieldNames.pageSize]),\n });\n } else {\n void onInnerRequest({\n ...values,\n ...getPaginationData(1, cacheParams[fieldNames.pageSize]),\n });\n }\n };\n const isFull = isUndefined(props.isFull) ? true : props.isFull;\n\n const filterFixedFt = screenType === 'xs' ? false : props.filterFixed;\n const className = classNames(\n 'fba-easy-table',\n {\n 'fba-easy-table-full': isFull,\n 'fba-easy-table-filter-fixed': filterFixedFt,\n 'fba-easy-table-pagination-fixed': props.paginationFixed,\n },\n props.className\n );\n\n const paginationData = fbaHooks.useMemoCustom(() => {\n return {\n showSizeChanger: true,\n current: cacheParams[fieldNames.pageNo] || 1,\n pageSize: cacheParams[fieldNames.pageSize] || pageSize,\n total: total,\n showTotal: (total) => `共 ${total} 条记录`,\n ...props.pagination,\n };\n }, [\n fieldNames.pageNo,\n cacheParams,\n fieldNames.pageSize,\n cacheKey,\n pageSize,\n props.pagination,\n total,\n ]);\n\n const onChangeFoldColumnList = (keyList: string[]) => {\n setShowFoldKeyList(keyList);\n columnFoldConfig?.onChange?.(keyList);\n };\n\n const onChange = hooks.useCallbackRef((page: number, pageSize: number) => {\n const params = {\n [fieldNames.pageSize]: pageSize,\n [fieldNames.pageNo]: page,\n };\n filterCache.set(cacheKey, params);\n void onInnerRequest(params);\n props.pagination?.onChange?.(page, pageSize);\n });\n\n const getPaginationStatus = () => {\n return props.paginationFixed || paginationStatusRef.current;\n };\n\n // 分页参数发生变更\n hooks.useUpdateEffect(() => {\n if (props.paginationFixed) {\n void onInnerRequest({\n [fieldNames.pageSize]: cacheParams[fieldNames.pageSize] || pageSize,\n [fieldNames.pageNo]: 1,\n });\n } else {\n void onInnerRequest({\n [fieldNames.pageSize]: undefined,\n [fieldNames.pageNo]: undefined,\n });\n }\n }, [props.paginationFixed]);\n\n const wrapperClassName = classNames(\n 'fba-easy-table-wrapper',\n {\n 'fba-easy-table-wrapper-inline': props.isInline,\n },\n props.className\n );\n\n const wrapperStyle: CSSProperties = {\n overflowY: props.filterFixed || props.paginationFixed ? 'hidden' : 'auto',\n ...props.style,\n };\n\n const children =\n typeof props.children === 'function'\n ? props.children(respOriginalDataRef.current)\n : props.children;\n\n return (\n <EasyTableContext.Provider\n value={{\n onSetBaseColumns,\n onSetColumns,\n getEasyTableRef,\n cacheKey,\n onRequest: onInnerRequest,\n tableDataSource: dataSource,\n tableTotal: total,\n loading,\n fieldNames,\n pageSize,\n onSetPaginationStatus,\n getPaginationStatus,\n onFormFinish,\n form,\n paginationFixed: props.paginationFixed || false,\n foldKeys: props.foldKeys || [],\n columns: dynamicColumns,\n initialValues: props.initialValues,\n dynamicColumnsConfig: {\n showFoldKeyList,\n onChangeShowFoldKeyList: onChangeFoldColumnList,\n columnFoldConfig,\n onOpenColumnFoldModal,\n onCloseColumnFoldModal,\n columnFoldOpen,\n asyncColumnRequest,\n },\n }}\n >\n {props.paginationFixed ? (\n <div className={wrapperClassName} style={wrapperStyle}>\n <div className={className}>{children}</div>\n {total > 0 && (\n <div className=\"fba-easy-table-pagination\">\n <PaginationWrapper\n size=\"small\"\n {...paginationData}\n onChange={onChange}\n />\n </div>\n )}\n </div>\n ) : (\n <div className={wrapperClassName} style={props.style}>\n <div className={className}>{children}</div>\n </div>\n )}\n </EasyTableContext.Provider>\n );\n }\n);\n","import {\n Children,\n type CSSProperties,\n type ReactElement,\n useContext,\n useMemo,\n useState,\n} from 'react';\nimport { isFragment } from 'react-is';\nimport { type FormInstance } from 'antd';\nimport { DownOutlined, UpOutlined } from '@ant-design/icons';\nimport { isUndefined } from '@dimjs/lang';\nimport { classNames } from '@dimjs/utils';\nimport { type TAny } from '@flatbiz/utils';\nimport { hooks } from '@wove/react';\nimport { BlockLayout } from '../block-layout/layout.jsx';\nimport type { ButtonWrapperProps } from '../button-wrapper/button-wrapper.jsx';\nimport { ButtonWrapper } from '../button-wrapper/button-wrapper.jsx';\nimport type { EasyFormProps } from '../easy-form/form.jsx';\nimport { EasyForm } from '../easy-form/form.jsx';\nimport { fbaHooks } from '../fba-hooks/index.js';\nimport type { FormOperateColProps } from '../form-grid/form-operate-col.jsx';\nimport type { FormRowProps } from '../form-grid/form-row.jsx';\nimport { FormGrid } from '../form-grid/index.js';\nimport { filterCache } from './cache.js';\nimport { EasyTableContext } from './context.js';\n\nexport type EasyTableFilterProps = {\n children:\n | ReactElement\n | ReactElement[]\n | ((form: FormInstance) => ReactElement);\n /** isPure = true时无效 */\n filterOperate?: (form: FormInstance) => FormOperateColProps;\n /** 是否为纯净模式(查询条件布局是否自定义), */\n isPure?: boolean;\n /** 查询按钮配置 */\n queryButtonProps?: Omit<ButtonWrapperProps, 'onClick'> & { text?: string };\n /** 重置按钮配置 */\n resetButtonProps?: Omit<ButtonWrapperProps, 'onClick'> & { text?: string };\n /**\n * 网格布局设置\n * default = { xs: 24, sm: 12, md: 12, lg: 8, xl: 8, xxl: 6 };\n * small = { xs: 24, sm: 8, md: 8, lg: 6, xl: 6, xxl: 6 };\n */\n formGridSize?: FormRowProps['gridSize'];\n /**\n * @deprecated已过期,使用 easyFormProps.className 配置\n */\n formClassName?: string;\n /**\n * @deprecated已过期,使用 easyFormProps.style 配置\n */\n formStyle?: CSSProperties;\n /** filter Form 外层 BlockLayout style */\n filterWrapperStyle?: CSSProperties;\n /** filter Form 外层 BlockLayout className */\n filterWrapperClassName?: string;\n /**\n * 自定义 filterOperate.rightList 后 默认【查询、重置】按钮处理逻辑\n * 1. cover:覆盖内部查询重置按钮(默认值)\n * 2. beforeAppend:添加到【查询重置】按钮前面\n * 3. afterAppend:添加到【查询重置】按钮后面\n *\n * 如果想隐藏【查询、重置】按钮中的某一个,可设置 queryButtonProps.hidden、resetButtonProps.hidden\n */\n rightOperateAreaAppendType?: 'cover' | 'beforeAppend' | 'afterAppend';\n /** 默认重启按钮触发请求,默认值:true */\n defaultResetButtonTriggerRequest?: boolean;\n easyFormProps?: Omit<\n EasyFormProps,\n 'isPure' | 'column' | 'forceColumn' | 'width' | 'gridGutter' | 'children'\n >;\n};\n\n/**\n * 过滤条件\n *```\n * 1. 用法1\n * -- 默认网格布局 规则:{ xs: 24, sm: 12, md: 12, lg: 8, xl: 8, xxl: 6 }\n * <EasyTableFilter>\n * <FormItemWrapper name=\"field1\" label=\"条件1\">xxx</FormItemWrapper>\n * </EasyTableFilter>\n *\n * -- 自定义网格布局 使用 FormGrid.Col 组件包装 FormItemWrapper\n * <EasyTableFilter>\n * <FormGrid.Col span={12}><FormItemWrapper name=\"field1\" label=\"条件1\">xxx</FormItemWrapper></FormGrid.Col>\n * </EasyTableFilter>\n *\n * -- children 可为 function\n * <EasyTableFilter>\n * {(form) => {\n * return <FormItemWrapper name=\"field1\" label=\"条件1\">xxx</FormItemWrapper>\n * }}\n * </EasyTableFilter>\n *\n * 2. 用户2(自定义布局)\n * EasyTableFilter设置 isPure = true,FormItem无布局规则\n * 3. EasyTableFilter中内置了 Form 标签,当children为函数时,可获取form实例\n * 4. 默认布局下,可通过设置 filterOperate 设置操作按钮\n * 5. Filter 子节点包含 hidden = true 会被忽略\n * 6. 如果想隐藏【查询、重置】按钮中的某一个,可设置 queryButtonProps.hidden、resetButtonProps.hidden\n * 7. 通过设置 defaultResetButtonTriggerRequest,默认重启按钮触发请求,默认值:true\n * 8. EasyTableFilter 子节点可使用 FormItemWrapper,FormItemWrapper中可配置label宽度等\n *```\n */\nexport const EasyTableFilter = (props: EasyTableFilterProps) => {\n const screenType = fbaHooks.useResponsivePoint() || 'md';\n const ctx = useContext(EasyTableContext);\n const {\n queryButtonProps,\n resetButtonProps,\n filterOperate,\n formClassName = '',\n defaultResetButtonTriggerRequest,\n filterWrapperStyle,\n filterWrapperClassName,\n rightOperateAreaAppendType,\n easyFormProps,\n } = props;\n const {\n cacheKey,\n foldKeys,\n fieldNames,\n onRequest,\n pageSize,\n getPaginationStatus,\n initialValues,\n form,\n onFormFinish,\n } = ctx;\n\n const children =\n typeof props.children === 'function'\n ? props.children(form)\n : props.children;\n\n const rightOperateAreaAppendTypeFt = rightOperateAreaAppendType || 'cover';\n const childrens = useMemo(() => {\n if (isFragment(children)) {\n return Children.toArray(\n (children as ReactElement).props.children\n ) as ReactElement[];\n } else {\n return Children.toArray(children) as ReactElement[];\n }\n }, [children]);\n\n const [openFold, setOpenFold] = useState(false);\n\n const onReset = hooks.useCallbackRef(async () => {\n filterCache.remove(cacheKey);\n form.resetFields();\n form.setFieldsValue(initialValues);\n if (\n isUndefined(defaultResetButtonTriggerRequest) ||\n defaultResetButtonTriggerRequest\n ) {\n await form.validateFields();\n if (getPaginationStatus()) {\n onRequest({\n [fieldNames.pageNo]: 1,\n [fieldNames.pageSize]: pageSize,\n ...initialValues,\n });\n } else {\n onRequest(initialValues);\n }\n }\n });\n\n const formRowChildren = useMemo(() => {\n const defaultRightList = [\n !queryButtonProps?.hidden ? (\n <ButtonWrapper\n key=\"1\"\n type=\"primary\"\n htmlType=\"submit\"\n {...queryButtonProps}\n >\n {queryButtonProps?.text || '查询'}\n </ButtonWrapper>\n ) : null,\n !resetButtonProps?.hidden ? (\n <ButtonWrapper key=\"2\" onClick={onReset} {...resetButtonProps}>\n {resetButtonProps?.text || '重置'}\n </ButtonWrapper>\n ) : null,\n ].filter(Boolean);\n const customFormOperateCol = filterOperate?.(form);\n const customRightList = customFormOperateCol?.rightList;\n const leftList: TAny[] = customFormOperateCol?.leftList || [];\n\n let rightList: TAny[] = defaultRightList;\n if (customRightList) {\n if (rightOperateAreaAppendTypeFt === 'afterAppend') {\n rightList = [...defaultRightList, ...customRightList];\n } else if (rightOperateAreaAppendTypeFt === 'beforeAppend') {\n rightList = [...customRightList, ...defaultRightList];\n } else {\n rightList = customRightList;\n }\n }\n if (foldKeys.length > 0) {\n const changeFolditem = (\n <ButtonWrapper\n type=\"link\"\n key=\"fold-trigger\"\n style={{ padding: '0' }}\n onClick={() => {\n setOpenFold(!openFold);\n }}\n >\n {openFold ? (\n <span>\n 收起\n <UpOutlined style={{ marginLeft: 3, fontSize: 12 }} />\n </span>\n ) : (\n <span>\n 展开\n <DownOutlined style={{ marginLeft: 3, fontSize: 12 }} />\n </span>\n )}\n </ButtonWrapper>\n );\n\n if (rightList.length > 0 || leftList.length === 0) {\n rightList.push(changeFolditem);\n } else if (leftList?.length > 0) {\n leftList.push(changeFolditem);\n }\n }\n\n return childrens\n .map((item, index) => {\n if (\n !openFold &&\n foldKeys.find((keyItem) => `.$${keyItem}` === item.key)\n )\n return null;\n if (item.props['hidden']) return null;\n if (item.type['domTypeName'] === 'FormCol') return item;\n return <FormGrid.Col key={index}>{item}</FormGrid.Col>;\n })\n .filter(Boolean)\n .concat(\n <FormGrid.OperateCol\n key={999}\n {...customFormOperateCol}\n leftList={leftList}\n rightList={rightList}\n />\n );\n }, [\n childrens,\n filterOperate,\n foldKeys,\n form,\n onReset,\n openFold,\n queryButtonProps,\n resetButtonProps,\n rightOperateAreaAppendTypeFt,\n ]);\n\n const labelAlign =\n screenType === 'xs' ? 'left' : easyFormProps?.labelAlign || 'right';\n\n return (\n <BlockLayout\n className={classNames('easy-table-filter', filterWrapperClassName)}\n style={filterWrapperStyle}\n >\n <EasyForm\n form={form}\n autoComplete=\"off\"\n onFinish={onFormFinish}\n // initialValues={initialValues}\n className={formClassName}\n style={props.formStyle}\n isPure={true}\n labelWidth=\"80\"\n formItemGap=\"15\"\n {...easyFormProps}\n labelAlign={labelAlign}\n >\n {props.isPure ? (\n children\n ) : (\n <FormGrid.Row gutter={[15, 0]} gridSize={props.formGridSize}>\n {formRowChildren}\n </FormGrid.Row>\n )}\n </EasyForm>\n </BlockLayout>\n );\n};\n","import { useContext } from 'react';\nimport { EasyTableContext } from './context.js';\n\n/**\n * 在 EasyTable子组件内才可使用\n * @returns\n */\nexport const useEasyTable = () => {\n const ctx = useContext(EasyTableContext);\n return ctx.getEasyTableRef();\n};\n\n/**\n * @deprecated 已过时 @4.5.0版本移除,请使用 useEasyTable\n * @returns\n */\nexport const useEasyTablRef = () => {\n const ctx = useContext(EasyTableContext);\n return {\n current: ctx.getEasyTableRef(),\n };\n};\n","import { type CSSProperties, Fragment, useState } from 'react';\nimport { Drawer, Table } from 'antd';\nimport { type ColumnsType } from 'antd/es/table';\nimport { type TableRowSelection } from 'antd/es/table/interface.js';\nimport { type TAny, type TPlainObject } from '@flatbiz/utils';\nimport { columnFoldCache } from './cache.js';\n\ntype FoldOperateProps = {\n style?: CSSProperties;\n dataList: { dataIndex?: string; title: string }[];\n onChange: (keys: string[]) => void;\n open?: boolean;\n onClose?: () => void;\n cacheKey?: string;\n initSelectedRowKeys?: string[];\n};\n\nexport const FoldOperate = (props: FoldOperateProps) => {\n const [selectedRowKeys, setSelectedRowKeys] = useState<string[]>(\n props.initSelectedRowKeys || []\n );\n const rowSelection = {\n type: 'checkbox',\n selectedRowKeys: selectedRowKeys,\n onChange: (selectedRowKeys: string[]) => {\n setSelectedRowKeys(selectedRowKeys);\n props.onChange(selectedRowKeys);\n if (props.cacheKey) {\n columnFoldCache.set(props.cacheKey, selectedRowKeys);\n }\n },\n } as TableRowSelection<TAny>;\n\n const columns: ColumnsType<TPlainObject> = [\n {\n title: '字段名称',\n dataIndex: 'title',\n render: (value, recrd) => {\n return recrd['_isFoldTitle'] || value;\n },\n },\n { title: '字段Key', dataIndex: 'dataIndex' },\n ];\n\n return (\n <Fragment>\n <Drawer\n title=\"选择字段\"\n open={props.open}\n onClose={props.onClose}\n width={'35%'}\n styles={{\n body: {\n padding: 15,\n },\n }}\n >\n <Table\n bordered\n size=\"small\"\n columns={columns}\n rowSelection={rowSelection}\n rowKey=\"dataIndex\"\n pagination={false}\n scroll={{ x: 'max-content' }}\n dataSource={props.dataList}\n />\n </Drawer>\n </Fragment>\n );\n};\n","import { useMemo } from 'react';\nimport { type TAny, type TPlainObject } from '@flatbiz/utils';\nimport { ButtonWrapper } from '../../button-wrapper/button-wrapper.jsx';\nimport { fbaHooks } from '../../fba-hooks/index.js';\nimport { FlexLayout } from '../../flex-layout/flex-layout.jsx';\nimport { IconWrapper } from '../../icon-wrapper/icon-wrapper.jsx';\nimport { SvgHttpView } from '../../svg-http-view/svg.jsx';\nimport { TableTitleTooltip } from '../../table-title-tooltip/title-render.jsx';\nimport { TipsWrapper } from '../../tips-wrapper/tips-wrapper.jsx';\nimport { FoldOperateDropdown } from '../fold-operate-dropdown.jsx';\nimport { type EasyTableProps } from '../type.js';\n\nexport const useColumnsAppendTips = (props: { columns: TPlainObject[] }) => {\n return useMemo(() => {\n const tempList = props.columns\n .map((item) => {\n const { tooltip, tipsWrapperProps, title, ...otherProps } = item;\n if (typeof title === 'string' && tipsWrapperProps) {\n if (typeof tipsWrapperProps === 'string') {\n return {\n ...otherProps,\n title: (\n <TipsWrapper\n tipType=\"popover\"\n popoverProps={{ content: tipsWrapperProps }}\n >\n {title}\n </TipsWrapper>\n ),\n };\n }\n return {\n ...otherProps,\n title: <TipsWrapper {...tipsWrapperProps}>{title}</TipsWrapper>,\n };\n }\n if (typeof title === 'string' && !!tooltip) {\n return {\n ...otherProps,\n title: (\n <TableTitleTooltip\n tooltip={tooltip}\n title={title}\n ></TableTitleTooltip>\n ),\n };\n }\n return item;\n })\n .filter(Boolean);\n return [...tempList] as TPlainObject[];\n }, [props.columns]);\n};\n\nexport const useColumnsAppendInnerColumn = (props: {\n columns: TPlainObject[];\n cacheKey: string;\n showFoldKeyList: string[];\n columnFoldConfig?: EasyTableProps['columnFoldConfig'];\n onOpenColumnFoldModal: () => void;\n onChangeFoldColumnList: (keyList: string[]) => void;\n foldColumnList: TPlainObject[];\n}) => {\n const columnsNew = props.columns;\n return fbaHooks.useMemoCustom(() => {\n if (props.columnFoldConfig?.hidden) return columnsNew;\n const finalItem = columnsNew[columnsNew.length - 1];\n if (props.foldColumnList.length > 0 && columnsNew.length > 0) {\n const foldColumnTarget = columnsNew.find((item) => item['_isFoldColumn']);\n\n if (\n foldColumnTarget &&\n finalItem.dataIndex !== foldColumnTarget.dataIndex\n ) {\n foldColumnTarget.title = foldColumnTarget['_isFoldTitle'];\n foldColumnTarget['_isFoldColumn'] = false;\n }\n if (!finalItem['_isFoldColumn']) {\n finalItem['_isFoldTitle'] =\n finalItem['_isFoldTitle'] || finalItem.title;\n finalItem['_isFoldColumn'] = true;\n\n const triggerType = props.columnFoldConfig?.triggerType;\n\n finalItem.title = (\n <FlexLayout\n direction=\"horizontal\"\n fullIndex={0}\n style={{ alignItems: 'center' }}\n >\n <span>{finalItem.title}</span>\n <div style={{ padding: '0 5px 0 20px', display: 'flex' }}>\n {triggerType === 'drawer' ? (\n <IconWrapper\n onClick={props.onOpenColumnFoldModal}\n text={props.columnFoldConfig?.text}\n size=\"small\"\n icon={\n props.columnFoldConfig?.icon || (\n <SvgHttpView\n svgPath=\"ionic/list-circle\"\n color=\"#868686\"\n />\n )\n }\n hoverTips={props.columnFoldConfig?.hoverTipText || '字段列表'}\n style={{ padding: 0, margin: 0 }}\n />\n ) : (\n <FoldOperateDropdown\n dataList={props.foldColumnList as TAny[]}\n onChange={props.onChangeFoldColumnList}\n cacheKey={props.cacheKey}\n initSelectedRowKeys={props.showFoldKeyList}\n >\n <IconWrapper\n text={props.columnFoldConfig?.text}\n style={{ padding: 0, margin: 0 }}\n size=\"small\"\n icon={\n props.columnFoldConfig?.icon || (\n <SvgHttpView\n svgPath=\"ionic/list-circle\"\n color=\"#868686\"\n />\n )\n }\n />\n </FoldOperateDropdown>\n )}\n </div>\n </FlexLayout>\n );\n }\n }\n return columnsNew;\n }, [props.columns, props.columnFoldConfig]);\n};\n\nexport const useColumnsToHidden = (props: {\n columns: TPlainObject[];\n showFoldKeyList: string[];\n}) => {\n return useMemo(() => {\n const tempList = props.columns\n .map((item) => {\n const { hidden, isFold } = item;\n if (hidden) return null;\n if (isFold && !props.showFoldKeyList.includes(item.dataIndex as string))\n return null;\n return item;\n })\n .filter(Boolean);\n return [...tempList] as TPlainObject[];\n }, [props.columns, props.showFoldKeyList]);\n};\n\nexport const useColumnByAsyncColumnRequest = (props: {\n columns: TPlainObject[];\n asyncColumnRequestResult: TPlainObject;\n}) => {\n return useMemo(() => {\n if (!Object.keys(props.asyncColumnRequestResult)) return props.columns;\n return props.columns.map((item: TAny) => {\n const dataIndex = item.dataIndex as string;\n const result = props.asyncColumnRequestResult[dataIndex];\n if (dataIndex && result) {\n if (result.loading) {\n item.render = (value) => {\n return (\n <ButtonWrapper\n loading\n type=\"text\"\n loadingPosition=\"center\"\n removeGap\n >\n {value}\n </ButtonWrapper>\n );\n };\n } else if (item.asyncRender) {\n item.render = (value, record, index) => {\n return item.asyncRender?.(value, record, index, result.respData);\n };\n }\n }\n return item;\n });\n }, [props.columns, props.asyncColumnRequestResult]);\n};\n","import {\n type CSSProperties,\n Fragment,\n type ReactElement,\n useContext,\n useEffect,\n useMemo,\n useRef,\n useState,\n} from 'react';\nimport { Table, type TableProps } from 'antd';\nimport { classNames } from '@dimjs/utils';\nimport {\n getUuid,\n isMacEnv,\n isUndefinedOrNull,\n type TAny,\n type TPlainObject,\n} from '@flatbiz/utils';\nimport { hooks } from '@wove/react';\nimport { BlockLayout } from '../block-layout/layout.jsx';\nimport { fbaHooks } from '../fba-hooks/index.js';\nimport { TableScrollbar } from '../table-scrollbar/table-scrollbar.jsx';\nimport { filterCache } from './cache.js';\nimport { EasyTableContext } from './context.js';\nimport { FoldOperate } from './fold-operate.jsx';\nimport {\n useColumnByAsyncColumnRequest,\n useColumnsAppendInnerColumn,\n useColumnsAppendTips,\n useColumnsToHidden,\n} from './hooks/columns.jsx';\nimport { type TEasyTableTableColumn } from './type.js';\n\nexport type EasyTableTableProps<T> = Omit<\n TableProps<TAny>,\n 'dataSource' | 'loading' | 'rowKey' | 'columns'\n> & {\n children?: ReactElement | ReactElement[];\n /**\n * 表格行 key 的取值,\n * ```\n * 如果 rowKey 为string类型\n * 1. 组件会判断表格列表数据第一条是否存在当前rowKey对象的数据,如果没有组件内部会动态添加唯一值\n * 2. 基于上一条的逻辑,如果表格数据没有唯一值,可指定 rowKey 值为table数据中不存在的字段名,例如:rowKey=\"_uid\"\n * 3. 如果触发上述逻辑,表格数据中会多出rowKey对应的键值对数据\n * ```\n */\n rowKey: TableProps<TAny>['rowKey'];\n /** table Form 外层 SimpleLayout className */\n tableWrapperStyle?: CSSProperties;\n /** table Form 外层 SimpleLayout className */\n tableWrapperClassName?: string;\n /**\n * ```\n * 1. 当配置了 EasyTable.serviceConfig.dynamicColumsAdapter 后,columns配置只在初始化有效,再次修改无效\n * 2. 可通过 EasyTableRef.onChangeTableColumns 实现 columns 的指定修改\n * ```\n */\n columns: TEasyTableTableColumn<T>[];\n /**\n * 数据加载与表格初始化渲染 是否同步\n * @version 4.4.6\n * ```\n * 1. true:获取数据后再初始化渲染表格(可用于实现表格中defaultXxxx相关功能的使用)\n * ```\n */\n isSync?: boolean;\n /**\n * 空效果显示尺寸,默认值:small\n * @version 4.4.6\n */\n emptyShowSize?: 'small' | 'large';\n};\n\n/**\n * 表格渲染\n * @param props\n * ```\n * 1. 继承了 TableProps 可设置antd table功能\n * 2. 分页功能已内置处理,不调用 onChange\n * ```\n */\nexport const EasyTableTable = <T extends TPlainObject>(\n props: EasyTableTableProps<T>\n) => {\n const ctx = useContext(EasyTableContext);\n const { children, rowKey, pagination, isSync, ...otherProps } = props;\n const screenType = fbaHooks.useResponsivePoint() || '';\n const asyncColumnRequestResultRef = useRef<{\n [dataIndex: string]: {\n respData?: TAny;\n loading?: boolean;\n };\n }>({});\n const [asyncColumnRequestResult, setAsyncColumnRequestResult] = useState<{\n [dataIndex: string]: {\n respData?: TAny;\n loading?: boolean;\n };\n }>({});\n\n const {\n columnFoldConfig,\n onCloseColumnFoldModal,\n columnFoldOpen,\n onOpenColumnFoldModal,\n asyncColumnRequest,\n showFoldKeyList,\n onChangeShowFoldKeyList,\n } = ctx.dynamicColumnsConfig;\n\n const {\n cacheKey,\n fieldNames,\n onRequest,\n tableDataSource,\n pageSize,\n tableTotal,\n loading,\n paginationFixed,\n onSetPaginationStatus,\n } = ctx;\n\n const cacheParams = filterCache.get(cacheKey);\n\n fbaHooks.useEffectCustom(() => {\n /** 获取初始化 columns 数据 */\n ctx.onSetBaseColumns(\n (props.columns || []) as TEasyTableTableColumn<TPlainObject>[]\n );\n }, []);\n\n useEffect(() => {\n if (asyncColumnRequest?.length) {\n for (let index = 0; index < asyncColumnRequest.length; index++) {\n const element = asyncColumnRequest[index];\n asyncColumnRequestResultRef.current = {\n ...asyncColumnRequestResultRef.current,\n [element.dataIndex]: { loading: true },\n };\n setAsyncColumnRequestResult(asyncColumnRequestResultRef.current);\n element\n .onRequest()\n .then((respData) => {\n asyncColumnRequestResultRef.current = {\n ...asyncColumnRequestResultRef.current,\n [element.dataIndex]: { loading: false, respData },\n };\n setAsyncColumnRequestResult(asyncColumnRequestResultRef.current);\n })\n .catch((error) => {\n console.error(error?.message);\n asyncColumnRequestResultRef.current = {\n ...asyncColumnRequestResultRef.current,\n [element.dataIndex]: { loading: false },\n };\n setAsyncColumnRequestResult(asyncColumnRequestResultRef.current);\n });\n }\n }\n }, [asyncColumnRequest]);\n\n const columnsOriginal = fbaHooks.useMemoCustom(() => {\n if (ctx.columns) {\n ctx.onSetColumns(ctx.columns);\n return ctx.columns as TEasyTableTableColumn<T>[];\n } else {\n ctx.onSetColumns(props.columns as TEasyTableTableColumn<TPlainObject>[]);\n return props.columns;\n }\n }, [ctx.columns, props.columns]);\n\n let columnsNew = useColumnsAppendTips({\n columns: [...columnsOriginal],\n });\n\n const foldColumnList = columnsOriginal.filter((item: TAny) => {\n return !item.hidden && item.isFold && item.dataIndex;\n });\n\n columnsNew = useColumnsAppendInnerColumn({\n cacheKey,\n columns: columnsNew,\n foldColumnList,\n showFoldKeyList,\n columnFoldConfig,\n onOpenColumnFoldModal,\n onChangeFoldColumnList: onChangeShowFoldKeyList,\n });\n\n columnsNew = useColumnsToHidden({\n columns: columnsNew,\n showFoldKeyList,\n });\n\n columnsNew = useColumnByAsyncColumnRequest({\n columns: columnsNew,\n asyncColumnRequestResult,\n });\n\n fbaHooks.useEffectCustom(() => {\n onSetPaginationStatus(pagination !== false);\n }, [pagination]);\n\n // 分页参数发生变更\n hooks.useUpdateEffect(() => {\n if (!paginationFixed) {\n if (pagination !== false) {\n onRequest({\n [fieldNames.pageSize]: cacheParams[fieldNames.pageSize] || pageSize,\n [fieldNames.pageNo]: 1,\n });\n } else {\n onRequest({\n [fieldNames.pageSize]: undefined,\n [fieldNames.pageNo]: undefined,\n });\n }\n }\n }, [pagination]);\n\n const tablePaginationData = useMemo(() => {\n if (paginationFixed || pagination === false) return false;\n return {\n showSizeChanger: true,\n current: cacheParams[fieldNames.pageNo] || 1,\n pageSize: cacheParams[fieldNames.pageSize] || pageSize,\n total: tableTotal,\n showTotal: (total) => `共 ${total} 条记录`,\n ...props.pagination,\n // selectComponentClass: SmallSelect,\n };\n }, [\n cacheParams,\n fieldNames.pageNo,\n fieldNames.pageSize,\n pageSize,\n pagination,\n paginationFixed,\n props.pagination,\n tableTotal,\n ]);\n\n const onChangePage: TableProps<TAny>['onChange'] = (\n pagination,\n filters,\n sorter,\n extra\n ) => {\n if (extra.action === 'paginate' && tablePaginationData) {\n onRequest({\n [fieldNames.pageSize]: pagination.pageSize,\n [fieldNames.pageNo]: pagination.current,\n });\n } else {\n props.onChange?.(pagination, filters, sorter, extra);\n }\n };\n\n const dataSource = useMemo(() => {\n if (!tableDataSource) return undefined;\n if (tableDataSource.length === 0) {\n return [];\n }\n if (\n typeof rowKey === 'string' &&\n isUndefinedOrNull(tableDataSource[0][rowKey])\n ) {\n return tableDataSource.map((item) => {\n item[rowKey] = getUuid();\n return item;\n });\n }\n return tableDataSource;\n }, [tableDataSource, rowKey]);\n\n columnsNew = useMemo(() => {\n return columnsNew.map((item) => {\n if (!!item.fixed && screenType === 'xs') {\n item.fixed = undefined;\n }\n if (!!item.defaultValue && !item.render) {\n item.render = (value) => {\n return isUndefinedOrNull(value) || value == ''\n ? item.defaultValue\n : value;\n };\n }\n return item;\n });\n }, [columnsNew, screenType]);\n\n const tableRender = () => {\n if (isSync && !dataSource) {\n return (\n <Fragment>\n {children}\n <Table\n key=\"1\"\n size=\"small\"\n scroll={{ x: 'max-content' }}\n bordered\n rowKey={rowKey as TAny}\n columns={columnsNew}\n loading={loading}\n />\n </Fragment>\n );\n }\n if (isMacEnv()) {\n return (\n <Fragment>\n {children}\n <Table\n key=\"2\"\n size=\"small\"\n scroll={{ x: 'max-content' }}\n bordered\n {...otherProps}\n columns={columnsNew}\n pagination={tablePaginationData}\n rowKey={rowKey}\n onChange={onChangePage}\n loading={loading}\n dataSource={dataSource}\n />\n </Fragment>\n );\n }\n return (\n <Fragment>\n {children}\n <TableScrollbar>\n <Table\n key=\"3\"\n size=\"small\"\n scroll={{ x: 'max-content' }}\n bordered\n {...otherProps}\n columns={columnsNew}\n pagination={tablePaginationData}\n rowKey={rowKey}\n onChange={onChangePage}\n loading={loading}\n dataSource={dataSource}\n />\n </TableScrollbar>\n </Fragment>\n );\n };\n\n return (\n <BlockLayout\n className={classNames(\n 'easy-table-table',\n { 'ett-empty-show-small': props.emptyShowSize === 'small' },\n props.tableWrapperClassName\n )}\n style={props.tableWrapperStyle}\n >\n {tableRender()}\n\n <FoldOperate\n dataList={foldColumnList as TAny[]}\n onClose={onCloseColumnFoldModal}\n open={columnFoldOpen}\n onChange={onChangeShowFoldKeyList}\n cacheKey={cacheKey}\n initSelectedRowKeys={showFoldKeyList}\n />\n </BlockLayout>\n );\n};\n","import { fbaUtils } from '../fba-utils/index.js';\nimport { firstQueryCache } from './cache.js';\nimport { EasyTable as EasyTableInner } from './easy-table.jsx';\nimport { EasyTableFilter } from './filter.jsx';\nimport { useEasyTable, useEasyTablRef } from './hooks.js';\nimport { EasyTableTable } from './table.jsx';\n\n/**\n * 对 查询条件+表格数据 进行深度封装,内置数据交互处理\n * ```\n * Demo https://fex.qa.tcshuke.com/docs/admin/main/crud/easy-table\n *\n * 1. 废弃modelKey参数\n * 2. 如果需要在路由跳转回退中缓存查询条件,设置cacheSwitch=true;如果存在多个EasyTable缓存情况可设置cacheSwitch为自定义字符串\n * 3. 需要获取查询条件、主动发起请求等可通过ref、useEasyTable操作\n * 4. 可通过属性 initRequest 设置初始化是否请求数据\n * 5. 可通过属性 fieldNames 来设置自定义变量,默认值为:list、total、pageNo、pageSize\n * 6. isFull=true,设置【在父节点高度下,上下铺满】(默认值:true)\n * 7. filterFixed=true,设置查询条件固定,不随滚动条滚动\n * 8. paginationFixed=true,可设置分页条件在底部固定,不随滚动条滚动\n * 9. foldKeys=string[],查询条件展开、收起,被收起数组内容为EasyTable.Filter 子节点key值\n * 10. windows环境下,会在EasyTable.Table外部包装一下 TableScrollbar,提高windows下table左右滚动体验\n * 11. 可实现部分字段折叠,手动选择显示,将EasyTable.Table columns中isFold属性设为true,可通过EasyTable columnFoldConfig配置属性,demo(https://fex.qa.tcshuke.com/docs/admin/main/crud/demo1)\n * 12. 通过asyncColumnRequest、asyncRender配合使用可实现表格列数据接口渲染(demo:https://fex.qa.tcshuke.com/docs/admin/main/crud/easy-table)\n * ```\n */\nexport const EasyTable = fbaUtils.attachPropertiesToComponent(EasyTableInner, {\n /**\n * 过滤条件\n *```\n * 1. 用法1\n * -- 默认网格布局 规则:{ xs: 24, sm: 12, md: 12, lg: 8, xl: 8, xxl: 6 }\n * <EasyTable.Filter>\n * <FormItemWrapper name=\"field1\" label=\"条件1\">xxx</FormItemWrapper>\n * </EasyTable.Filter>\n *\n * -- 自定义网格布局 使用 FormGrid.Col 组件包装 FormItemWrapper\n * <EasyTable.Filter>\n * <FormGrid.Col span={12}><FormItemWrapper name=\"field1\" label=\"条件1\">xxx</FormItemWrapper></FormGrid.Col>\n * </EasyTable.Filter>\n *\n * -- children 可为 function\n * <EasyTable.Filter>\n * {(form) => {\n * return <FormItemWrapper name=\"field1\" label=\"条件1\">xxx</FormItemWrapper>\n * }}\n * </EasyTable.Filter>\n * 2. 用户2(自定义布局)\n * EasyTable.Filter设置 isPure = true,FormItem无布局规则\n * 3. EasyTable.Filter中内置了 Form 标签,当children为函数时,可获取form实例\n * 4. 默认布局下,可通过设置 filterOperate 设置操作按钮\n * 5. Filter 子节点包含 hidden = true 会被忽略\n * 6. 如果想隐藏【查询、重置】按钮中的某一个,可设置 queryButtonProps.hidden、resetButtonProps.hidden\n * 7. EasyTableFilter 子节点可使用 FormItemWrapper,FormItemWrapper中可配置label宽度等\n * 8. 通过easyFormProps属性可整体控制子节点FormItem布局\n *```\n */\n Filter: EasyTableFilter,\n /**\n * 表格渲染\n * @param props\n * ```\n * 1. 继承了 TableProps 可设置antd table功能\n * 2. 分页功能已内置处理,不调用 onChange\n * ```\n */\n Table: EasyTableTable,\n /**\n * @deprecated 已过时 4.3.0版本移除,请使用 useEasyTable\n */\n useEasyTablRef: useEasyTablRef,\n\n /** 在 EasyTable子组件内才可使用 */\n useEasyTable: useEasyTable,\n /** 设置启用初始化请求 */\n setEnabledInitRequest: (cacheKey: string) => {\n firstQueryCache.set(cacheKey, false);\n },\n});\n"],"names":["filterCache","set","cacheKey","filterCondition","value","get","mergeParams","_objectSpread","sessionStorageCache","concat","_isObject","remove","firstQueryCache","flag","_sessionStorageCache$","columnFoldCache","localStorageCache","_localStorageCache$ge","_isArray","EasyTableContext","createContext","onRequest","noop","tableList","getEasyTableRef","FoldOperateDropdown","props","_useState","useState","initSelectedRowKeys","_useState2","_slicedToArray","selectedRowKeys","setSelectedRowKeys","onChange","keys","content","_jsx","Fragment","children","Checkbox","Group","defaultValue","style","display","flexDirection","dataList","map","item","label","title","dataIndex","padding","onChangeAll","e","target","checked","Popover","length","placement","overlayClassName","EasyTable","forwardRef","ref","_props$initialPaginat","screenType","fbaHooks","useResponsivePoint","dataSource","setDataSource","_useState3","_useState4","total","setTotal","_useState5","_useState6","loading","setLoading","columnFoldConfig","asyncColumnRequest","_useState7","_useState8","columnFoldOpen","setColumnFoldOpen","useMemo","cacheSwitch","location","pathname","getUuid","cacheParams","_useState9","columnFoldCacheValue","cacheKeyList","filter","_isString","initSelectedKeys","_useState10","showFoldKeyList","setShowFoldKeyList","pageSize","initialPaginationParams","initRequest","undefined","paginationStatusRef","useRef","respOriginalDataRef","baseColumnsRef","_useState11","_useState12","dynamicColumns","setDynamicColumns","columnsRef","fieldNames","list","pageNo","_Form$useForm","Form","useForm","form","_Form$useForm2","onInnerRequest","_hooks","useCallbackRef","params","Promise","$return","$error","_props$onDataSourceCh","paramsAll","_props$serviceConfig","requestParamsAdapter","requestResultAdapter","dynamicColumsAdapter","paramsNew","respData","respDataNew","_dynamicColumns","respList","$Try_1_Post","$boundEx","$Try_1_Catch","error","onRequestErrorHandle","message","breforeRequest","$Try_2_Post","$If_3","call","bind","$Try_2_Catch","_error","resolve","then","$await_4","serviceConfig","fbaUtils","removeFormValuesInvalidField","$await_5","current","onDataSourceChange","_get","useEffectCustom","hasPagination","getPaginationStatus","firstQueryFlag","setFieldsValue","initialValues","_defineProperty","clearQueryCondition","values","resetFields","updateQueryCondition","getPaginationData","_pageSize","onResetRequest","getRequestParams","getFieldsValue","onOpenColumnFoldModal","onCloseColumnFoldModal","getDataSource","onFilterDataSource","filterDataSource","onClearDataSource","onUpdateDataSource","_props$onDataSourceCh2","columnFoldTriggerRender","columns","_props$columnFoldConf","triggerType","cloneElement","onClick","foldColumnList","hidden","isFold","onChangeFoldColumnList","onChangeTableColumns","getTableColumns","setEnabledInitRequest","useImperativeHandle","onSetPaginationStatus","status","onSetBaseColumns","base","onSetColumns","onFormFinish","isFull","_isUndefined","filterFixedFt","filterFixed","className","_classNames","paginationFixed","paginationData","useMemoCustom","showSizeChanger","showTotal","pagination","keyList","_columnFoldConfig$onC","page","_props$pagination","_props$pagination$onC","useUpdateEffect","wrapperClassName","isInline","wrapperStyle","overflowY","Provider","tableDataSource","tableTotal","foldKeys","dynamicColumnsConfig","onChangeShowFoldKeyList","_jsxs","PaginationWrapper","size","EasyTableFilter","ctx","useContext","queryButtonProps","resetButtonProps","filterOperate","_props$formClassName","formClassName","defaultResetButtonTriggerRequest","filterWrapperStyle","filterWrapperClassName","rightOperateAreaAppendType","easyFormProps","rightOperateAreaAppendTypeFt","childrens","isFragment","Children","toArray","openFold","setOpenFold","onReset","validateFields","$await_2","$If_1","formRowChildren","defaultRightList","ButtonWrapper","type","htmlType","text","Boolean","customFormOperateCol","customRightList","rightList","leftList","_toConsumableArray","changeFolditem","_UpOutlined","marginLeft","fontSize","_DownOutlined","push","index","find","keyItem","key","FormGrid","Col","OperateCol","labelAlign","BlockLayout","EasyForm","autoComplete","onFinish","formStyle","isPure","labelWidth","formItemGap","Row","gutter","gridSize","formGridSize","useEasyTable","useEasyTablRef","FoldOperate","rowSelection","render","recrd","Drawer","open","onClose","width","styles","body","Table","bordered","rowKey","scroll","x","useColumnsAppendTips","tempList","tooltip","tipsWrapperProps","otherProps","_objectWithoutProperties","_excluded","TipsWrapper","tipType","popoverProps","TableTitleTooltip","useColumnsAppendInnerColumn","columnsNew","finalItem","foldColumnTarget","_props$columnFoldConf2","_props$columnFoldConf3","_props$columnFoldConf4","_props$columnFoldConf5","_props$columnFoldConf6","_props$columnFoldConf7","FlexLayout","direction","fullIndex","alignItems","IconWrapper","icon","SvgHttpView","svgPath","color","hoverTips","hoverTipText","margin","useColumnsToHidden","includes","useColumnByAsyncColumnRequest","Object","asyncColumnRequestResult","result","loadingPosition","removeGap","asyncRender","record","_item$asyncRender","EasyTableTable","isSync","asyncColumnRequestResultRef","setAsyncColumnRequestResult","_ctx$dynamicColumnsCo","useEffect","_loop","element","catch","console","columnsOriginal","tablePaginationData","onChangePage","filters","sorter","extra","action","_props$onChange","isUndefinedOrNull","fixed","tableRender","isMacEnv","TableScrollbar","emptyShowSize","tableWrapperClassName","tableWrapperStyle","attachPropertiesToComponent","EasyTableInner","Filter"],"mappings":"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AE/N,cAAe;AACrBhD,MAAAA,QAAQ,EAAEsM,uBAAwB;AAClCtO,MAAAA,QAAQ,EAAEA,QAAS;AACnB2B,MAAAA,mBAAmB,EAAEoE;AAAgB,KACtC,CAAC;AAAA,GACS,CAAC;AAElB,CAAC;;AC9WD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACO,IAAMpC,SAAS,GAAG8F,QAAQ,CAACsO,2BAA2B,CAACC,WAAc,EAAE;AAC5E;AACF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACEC,EAAAA,MAAM,EAAEvJ,eAAe;AACvB;AACF;AACA;AACA;AACA;AACA;AACA;AACA;AACE0E,EAAAA,KAAK,EAAEiD,cAAc;AACrB;AACF;AACA;AACE5D,EAAAA,cAAc,EAAEA,cAAc;AAE9B;AACAD,EAAAA,YAAY,EAAEA,YAAY;AAC1B;AACArG,EAAAA,qBAAqB,EAAE,SAAvBA,qBAAqBA,CAAGnM,QAAgB,EAAK;AAC3CU,IAAAA,eAAe,CAACX,GAAG,CAACC,QAAQ,EAAE,KAAK,CAAC;AACtC;AACF,CAAC;;;;"}
package/dist/index.d.ts CHANGED
@@ -5970,6 +5970,28 @@ export type TreeWrapperProps = Omit<TreeProps, "treeData" | "onExpand" | "select
5970
5970
  * 自定义搜索规则
5971
5971
  */
5972
5972
  customSearchRule?: (nodeData: TPlainObject, searchValue?: string) => boolean;
5973
+ /**
5974
+ * 点击父节点 是否切换折叠
5975
+ * ```
5976
+ * 1. 设置 titleRender 后,此配置失效
5977
+ * ```
5978
+ */
5979
+ clickParentNodeToggleExpand?: boolean;
5980
+ /**
5981
+ * 禁用节点选中
5982
+ * ```
5983
+ * 1. checkable = true,此配置失效
5984
+ * 2. 在未设置节点 disabled 属性情况下,满足此配置不会触发onChange事件
5985
+ * ```
5986
+ */
5987
+ disableNodeSelect?: (item: TPlainObject) => boolean;
5988
+ /**
5989
+ * 是否必选,最后一个不能取消
5990
+ * ```
5991
+ * 1. 设置 checkable = true 时无效
5992
+ * ```
5993
+ */
5994
+ required?: boolean;
5973
5995
  };
5974
5996
  export type TreeWrapperRefApi = {
5975
5997
  onClearSelectorList: () => void;
package/dist/index.js CHANGED
@@ -205,7 +205,7 @@ export { I as InputSearchWrapper } from './input-search-wrapper-wVYGWi2O.js';
205
205
  export { I as InputTextAreaWrapper } from './input-text-area-wrapper-Cxi-wf5J.js';
206
206
  export { I as InputWrapper } from './input-wrapper-B3FjX76n.js';
207
207
  export { L as LabelValueLayout } from './label-value-layout-Cv5FYWlQ.js';
208
- export { L as LabelValueRender } from './label-value-C7kXxKh2.js';
208
+ export { L as LabelValueRender } from './label-value-CcmddXdr.js';
209
209
  export { LocalLoading } from './local-loading/index.js';
210
210
  export { M as MentionEditor } from './mention-editor-GK6I91p1.js';
211
211
  export { M as MentionsWrapper } from './mentions-CZv5lHej.js';