@flatbiz/antd 4.2.59 → 4.2.61
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/esm/button-operate/index.js +1 -1
- package/esm/{button-operate-81d86480.js → button-operate-d3b2e543.js} +2 -2
- package/esm/{button-operate-81d86480.js.map → button-operate-d3b2e543.js.map} +1 -1
- package/esm/button-wrapper-125fce50.js.map +1 -1
- package/esm/{cell-render-927ade58.js → cell-render-0b27a14b.js} +2 -2
- package/esm/{cell-render-927ade58.js.map → cell-render-0b27a14b.js.map} +1 -1
- package/esm/dropdown-menu-wrapper/index.js +1 -1
- package/esm/dropdown-menu-wrapper-2b4fc43d.js +3 -0
- package/esm/dropdown-menu-wrapper-2b4fc43d.js.map +1 -0
- package/esm/easy-table/index.js +2 -1
- package/esm/easy-table/index.js.map +1 -1
- package/esm/editable-table/index.js +2 -1
- package/esm/editable-table-81eca425.js +3 -0
- package/esm/{editable-table-392040f7.js.map → editable-table-81eca425.js.map} +1 -1
- package/esm/index.js +2 -2
- package/esm/simple-layout/index.css +1 -1
- package/esm/simple-layout/index.js +1 -1
- package/esm/simple-layout-0dce0d39.js +3 -0
- package/esm/simple-layout-0dce0d39.js.map +1 -0
- package/esm/switch-confirm-wrapper-984d57c4.js.map +1 -1
- package/esm/table-cell-render/index.js +1 -1
- package/esm/table-title-tooltip/index.js +1 -1
- package/esm/title-render-4f255df0.js +3 -0
- package/esm/title-render-4f255df0.js.map +1 -0
- package/esm/tree-selector-wrapper/index.js +1 -1
- package/esm/tree-selector-wrapper-8c9a9393.js +3 -0
- package/esm/tree-selector-wrapper-8c9a9393.js.map +1 -0
- package/esm/tree-wrapper/index.js +1 -1
- package/index.d.ts +97 -8
- package/package.json +1 -1
- package/esm/dropdown-menu-wrapper-016a83b6.js +0 -3
- package/esm/dropdown-menu-wrapper-016a83b6.js.map +0 -1
- package/esm/editable-table-392040f7.js +0 -3
- package/esm/simple-layout-1cd0fefc.js +0 -3
- package/esm/simple-layout-1cd0fefc.js.map +0 -1
- package/esm/title-render-2874a932.js +0 -3
- package/esm/title-render-2874a932.js.map +0 -1
- package/esm/tree-selector-wrapper-9cd9da23.js +0 -3
- package/esm/tree-selector-wrapper-9cd9da23.js.map +0 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tree-selector-wrapper-8c9a9393.js","sources":["@flatbiz/antd/src/tree-selector-wrapper/model.ts","@flatbiz/antd/src/tree-selector-wrapper/utils.ts","@flatbiz/antd/src/tree-selector-wrapper/tree-selector-wrapper.tsx"],"sourcesContent":["import { API, ModelType } from '@dimjs/model';\nimport { Model } from '@dimjs/model-react';\nimport { TAny, TPlainObject, TSetDefaultDefined } from '@flatbiz/utils';\nimport { TreeSelectProps } from 'antd';\nimport { TRequestStatus } from '../request-status';\n\nexport type ModelState = {\n treeSelectorList: TSetDefaultDefined<TreeSelectProps['treeData'], []>;\n treeSelectorTiledArray: TPlainObject[];\n queryIsEmpty: boolean;\n requestStatus?: TRequestStatus;\n};\n\ntype ModelActionParams = {\n setSelectBoxList: {\n treeSelectorList: ModelState['treeSelectorList'];\n treeSelectorTiledArray: ModelState['treeSelectorTiledArray'];\n };\n resetSelectBoxList: void;\n changeRequestStatus: TRequestStatus;\n};\n\nconst defaultState: ModelState = {\n treeSelectorList: [],\n treeSelectorTiledArray: [],\n queryIsEmpty: false,\n};\n\nconst TreeSelectorWrapperModel: ModelType<ModelState, ModelActionParams> = {\n actions: {\n setSelectBoxList: (params) => {\n return (state) => {\n state.treeSelectorList = params.treeSelectorList || [];\n state.treeSelectorTiledArray = params.treeSelectorTiledArray || [];\n state.requestStatus = 'request-success';\n };\n },\n resetSelectBoxList: () => {\n return (state) => {\n state.treeSelectorList = [];\n };\n },\n changeRequestStatus: (params) => {\n return (state) => {\n state.requestStatus = params;\n };\n },\n },\n state: defaultState,\n};\n\nconst treeSelectorWrapperModels: Record<string, API<ModelType<ModelState, ModelActionParams, TAny>>> = {};\n\n/**\n * ```\n * 使用方式\n * const [state, actions] = useTreeSelectorWrapperModel('key值').useStore();\n * ```\n */\nexport const treeSelectorWrapperModel = (key: string) => {\n if (!treeSelectorWrapperModels[key]) {\n treeSelectorWrapperModels[key] = Model(TreeSelectorWrapperModel);\n }\n return treeSelectorWrapperModels[key];\n};\n","import { isArray, isObject } from '@dimjs/lang';\nimport {\n isUndefinedOrNull,\n LabelValueItem,\n toArray,\n TPlainObject,\n treeLeafParentsArray,\n treeToTiledArray,\n} from '@flatbiz/utils';\nimport { TreeSelectProps } from 'antd';\nimport { dequal } from 'dequal';\n\nexport const getExpandedKeys = (\n value: string | number,\n treeList: TPlainObject[],\n fieldNames?: TreeSelectProps['fieldNames'],\n) => {\n if (!isArray(treeList) || treeList.length === 0) return [];\n const tiledArray = treeToTiledArray(treeList, fieldNames);\n return treeLeafParentsArray(value, tiledArray, true, { value: 'value', parentValue: 'parentValue' });\n};\n\nexport const getVauleList = (data, fieldNames: LabelValueItem<string>) => {\n let tempList = toArray<TPlainObject | string | number>(data);\n tempList = tempList.map((item) => {\n if (isObject(item)) return item[fieldNames.value];\n return item;\n });\n return tempList as Array<string | number>;\n};\n\nexport const array2map = (data, fieldNames: LabelValueItem<string>) => {\n const list = getVauleList(data, fieldNames);\n const map = {};\n list.forEach((item) => {\n map[item] = true;\n });\n return map;\n};\n\n/**\n * value的类型包括 string、number、Array<string | number>、{ label: string, value: string | nuber }\n * 将数组转成对象,深度比较时不用考虑顺序问题\n * @param value1\n * @param value2\n * @returns\n */\nexport const treeSelectorWrapperValueDeepEqual = (\n value1: any,\n value2: any,\n fieldNames: LabelValueItem<string>,\n) => {\n if (isUndefinedOrNull(value1) && isUndefinedOrNull(value2)) return true;\n const object1 = array2map(value1, fieldNames);\n const object2 = array2map(value2, fieldNames);\n const diff = dequal(object1, object2);\n return diff;\n};\n","import { CaretDownFilled, RedoOutlined } from '@ant-design/icons';\nimport { isArray, isString } from '@dimjs/lang';\nimport { classNames, extend } from '@dimjs/utils';\nimport {\n isNumber,\n isUndefinedOrNull,\n TAny,\n toArray,\n TPlainObject,\n treeToArray,\n valueIsEqual,\n} from '@flatbiz/utils';\nimport { hooks } from '@wove/react';\nimport { Button, TreeSelect, TreeSelectProps } from 'antd';\nimport { DependencyList, useMemo, useRef, useState } from 'react';\nimport { treeSelectorWrapperModel } from './model';\nimport './style.less';\n\nimport { arrayFind, getValueOrDefault } from '@flatbiz/utils';\nimport { usePrevious } from 'ahooks';\nimport { dequal } from 'dequal';\nimport { fbaHooks } from '../fba-hooks';\nimport { RequestStatus, TRequestStatusProps } from '../request-status';\nimport { getExpandedKeys, getVauleList } from './utils';\n\ntype TreeSelectorWrapperValue =\n | string\n | number\n | Array<string | number>\n | TPlainObject<string | number>\n | Array<TPlainObject<string | number>>;\n\ntype TreeSelectorServiceConfig = {\n params?: TPlainObject;\n requiredParamsKeys?: string[];\n onRequest?: (params?: TAny) => TAny;\n /**\n * 响应数据适配器\n */\n onRequestResultAdapter?: (respData: TAny) => TPlainObject[];\n};\n\nexport type TreeSelectorWrapperProps = Omit<\n TreeSelectProps,\n | 'treeExpandedKeys'\n | 'treeData'\n | 'loading'\n | 'onTreeExpand'\n | 'onChange'\n | 'value'\n | 'fieldNames'\n | 'defaultValue'\n | 'treeDataSimpleMode'\n> & {\n modelKey: string;\n fieldNames?: { label?: string; value?: string; children?: string; disabled?: string };\n /**\n * useEffect依赖项数组,用于重新发起获取接口数据\n */\n effectDependencyList?: DependencyList;\n /**\n * 请求服务需求的数据,当设置`treeSelectorList`后无效果\n */\n serviceConfig?: TreeSelectorServiceConfig;\n /**\n * 当设置treeSelectorList后,serviceConfig 将失效\n */\n treeSelectorList?: TreeSelectProps['treeData'];\n /**\n * treeSelectorList发生变更时触发\n */\n onTreeSelectorListChange?: (treeSelectorList?: TreeSelectProps['treeData']) => void;\n /**\n * 通过服务获取数据异常回调,当设置`treeSelectorList`后无效果\n */\n onTreeSelectorRequestError?: (error: Error) => void;\n /**\n * 添加全部选项\n * ```\n * 1. showAllOption = true,添加默认全部选项(value值为空字符串)\n * 2. 可自定义全部选项,例如:{ label: '全部', value: 'all' }\n * 3. 自定义字段会通过fieldNames转换后使用\n * 4. 多选操作时,最好不要设置全部选项\n * ```\n */\n showAllOption?: true | TPlainObject<string | number>;\n /**\n * @deprecated 已过期,请使用onChange\n * 1. 当 treeCheckable = true && treeCheckStrictly = true,如果选择的数据中含有父节点,selectedValue、selectedList返回数据包含父节点\n * 2. 当 treeCheckable = true && treeCheckStrictly = false,selectedValue、selectedList返回的数据不包含父节点\n * 3. 当 treeCheckable = false,节点选择没有级联关系,selectedValue、selectedList返回的数据就是实际选择\n * 4. selectAllDataList 返回的数据都包含父节点\n * 5. 使用 onTreeItemAdapter 拼接label数据后,选中回填数据也是拼接后的\n * 6. triggerInfo 当前操作节点数据\n */\n onChangeHandle?: (\n selectedValue?: TreeSelectorWrapperValue,\n selectedData?: TPlainObject[] | TPlainObject,\n triggerInfo?: TPlainObject,\n ) => void;\n /**\n * 1. 当 treeCheckable = true && treeCheckStrictly = true,如果选择的数据中含有父节点,selectedValue、selectedList返回数据包含父节点\n * 2. 当 treeCheckable = true && treeCheckStrictly = false,selectedValue、selectedList返回的数据不包含父节点\n * 3. 当 treeCheckable = false,节点选择没有级联关系,selectedValue、selectedList返回的数据就是实际选择\n * 4. selectAllDataList 返回的数据都包含父节点\n * 5. 使用 onTreeItemAdapter 拼接label数据后,选中回填数据也是拼接后的\n * 6. triggerInfo 当前操作节点数据\n */\n onChange?: (\n selectedValue?: TreeSelectorWrapperValue,\n selectedData?: TPlainObject[] | TPlainObject,\n triggerInfo?: TPlainObject,\n ) => void;\n /**\n * tree item 数据适配器\n */\n onTreeItemDataAdapter?: (dataItem: TPlainObject) => TPlainObject;\n // icon 无法实现、treeIcon不起作用4.20.0\n // showIcon?: boolean;\n // icon?: (data: TPlainObject) => ReactElement;\n /** 自定义异常提示文案 */\n requestMessageConfig?: TRequestStatusProps['messageConfig'];\n /**\n * value格式\n *```\n * 1. string 、number\n * 2. Array<string | number>\n * 3. lableInValue = true,根据labelInValueFieldNames配置格式\n * 4. lableInValue = true,Array<labelInValueFieldNames配置>\n * ```\n */\n value?: TreeSelectorWrapperValue;\n\n /**\n * treeCheckStrictly \tcheckable 状态下节点选择完全受控(父子节点选中状态不再关联),\n * 会使得 labelInValue 强制为 true\n */\n labelInValue?: boolean;\n /**\n * ```\n * lableInValue = true,onChange输出数据字段名称,默认:{ label: string; value: string|number }\n * ```\n */\n labelInValueFieldNames?: { label: string; value: string };\n /**\n * treeCheckStrictly = true模式下有效,点击父节点是否选中所有子节点,默认值:true\n */\n selectedParentCheckedAllChildrenList?: boolean;\n /** 有唯一跟节点时,初始化是否展开,默认值:false */\n initRootExpand?: boolean;\n};\n\n// type TreeSelectorWrapperPropsInner = TreeSelectorWrapperProps & {\n// onChange?: (selectedValue?: TreeSelectorWrapperValue) => void;\n// };\n\n/**\n * 树选择器包装组件,由于过度封装,部分antd TreeSelect原始功能不支持,不满足情况的请使用antd TreeSelect实现\n * @param props\n * @returns\n * ```\n * 1. 当设置treeSelectorList属性后,serviceConfig、onTreeSelectorListChange将失效\n * 2. 父节点默认不返回,需要返回请设置showCheckedStrategy\n * ```\n */\nexport const TreeSelectorWrapper = (props: TreeSelectorWrapperProps) => {\n const {\n serviceConfig,\n effectDependencyList,\n onTreeSelectorListChange,\n onTreeSelectorRequestError,\n treeSelectorList,\n requestMessageConfig,\n modelKey,\n value,\n labelInValue: _labelInValue,\n labelInValueFieldNames,\n onTreeItemDataAdapter,\n selectedParentCheckedAllChildrenList = true,\n fieldNames,\n onChange,\n onChangeHandle,\n treeDefaultExpandAll,\n showAllOption,\n initRootExpand,\n treeDefaultExpandedKeys,\n ...otherProps\n } = props;\n /**\n * 不能使用key、defaultValue模式\n * 1. 勾选的和回填选中不相同情况,勾选后会渲染defaultValue模式后,弹框被关闭,操作体验存在问题\n */\n const hasTreeSelectorList = props.hasOwnProperty('treeSelectorList');\n const newServiceConfig = serviceConfig || {};\n const newEffectDependencyList = effectDependencyList || [];\n const [loading, setLoading] = fbaHooks.useSafeState(false);\n const [treeExpandedKeys, setTreeExpandedKeys] = useState<React.Key[]>();\n const [state, actions] = treeSelectorWrapperModel(modelKey).useStore();\n const requestPreKey = `request-progress-${modelKey}`;\n const isMultiple = otherProps.treeCheckable;\n const responseFirstRef = useRef(true);\n /**\n * treeCheckStrictly \tcheckable 状态下节点选择完全受控(父子节点选中状态不再关联),\n * 会使得 labelInValue 强制为 true\n */\n const labelInValue = useMemo(() => {\n if (otherProps.treeCheckStrictly) return true;\n return _labelInValue;\n }, [_labelInValue, otherProps.treeCheckStrictly]);\n\n const fieldNamesMerge = useMemo(() => {\n return { label: 'label', value: 'value', children: 'children', disabled: 'disabled', ...fieldNames };\n }, [fieldNames]);\n\n const labelInValueFieldNamesMerge = useMemo(() => {\n return { label: 'label', value: 'value', ...labelInValueFieldNames };\n }, [labelInValueFieldNames]);\n\n const allOptionConfig = useMemo(() => {\n if (showAllOption) {\n const isTrue = showAllOption === true;\n return {\n label: isTrue ? '全部' : showAllOption.label,\n value: isTrue ? '' : showAllOption.value,\n };\n }\n return null;\n }, [showAllOption]);\n\n const isFirstUseValueRef = useRef(true);\n\n const prevValue = usePrevious(value);\n\n fbaHooks.useEffectCustom(() => {\n if (state.treeSelectorList.length > 0) {\n if (responseFirstRef.current && isUndefinedOrNull(value)) {\n responseFirstRef.current = false;\n if (treeDefaultExpandedKeys) {\n setTreeExpandedKeys(treeDefaultExpandedKeys);\n } else if (treeDefaultExpandAll) {\n const allValues = treeToArray(state.treeSelectorList, fieldNamesMerge.children).map((item) => {\n return item[fieldNamesMerge.value];\n });\n setTreeExpandedKeys(allValues);\n return;\n } else if (initRootExpand && state.treeSelectorList.length) {\n setTreeExpandedKeys([state.treeSelectorList[0][fieldNamesMerge.value]]);\n return;\n }\n }\n if (isUndefinedOrNull(value) && isFirstUseValueRef.current) return;\n isFirstUseValueRef.current = false;\n if (value !== prevValue) {\n const valueList = getVauleList(value, labelInValueFieldNamesMerge);\n const expandedKeys = getTreeExpandedKeys(valueList, true);\n setTreeExpandedKeys(Array.from(new Set(expandedKeys)));\n }\n }\n }, [value, state.treeSelectorList]);\n\n const valueIsEmpty = (value: string | number) => {\n return value === '' || isUndefinedOrNull(value);\n };\n\n const serviceResponseHandle = (respData) => {\n const respDataList = newServiceConfig.onRequestResultAdapter\n ? newServiceConfig.onRequestResultAdapter(respData as unknown as TPlainObject)\n : respData;\n return respDataList as TPlainObject[];\n };\n\n const startDataSourceRequest = hooks.useCallbackRef(async () => {\n if (!newServiceConfig.onRequest) {\n throw new Error('onRequest 调用接口服务不能为空');\n }\n const requiredParamsKeys = newServiceConfig.requiredParamsKeys || [];\n const params = extend({}, newServiceConfig.params);\n const isEmpty = requiredParamsKeys.find((key) => {\n return valueIsEmpty(params[key] as string | number);\n });\n if (isEmpty) {\n void actions.changeRequestStatus('no-dependencies-params');\n console.warn(`TreeSelectorWrapper组件:参数:${requiredParamsKeys.join('、')}不能为空`);\n return;\n }\n try {\n setLoading(true);\n window[requestPreKey] = true;\n void actions.changeRequestStatus('request-progress');\n const _respData = await newServiceConfig.onRequest?.(params);\n const respData = serviceResponseHandle(_respData) as TreeSelectProps['treeData'];\n setLoading(false);\n window[requestPreKey] = false;\n onChangeSelectorList(respData || []);\n } catch (error: any) {\n setLoading(false);\n window[requestPreKey] = false;\n void actions.changeRequestStatus('request-error');\n onTreeSelectorRequestError?.(error);\n }\n });\n\n hooks.useCustomCompareEffect(\n () => {\n if (hasTreeSelectorList) return;\n // 当无依赖项时,如果存在缓存数据,就不在调用接口\n if (Boolean(newEffectDependencyList.length)) {\n // 内部主动清楚数据,被依赖的数据发生变更时,依赖组件数据清空\n onChangeSelectorList([]);\n void startDataSourceRequest();\n return;\n }\n const allState = treeSelectorWrapperModel(modelKey).getState();\n if (allState.requestStatus === 'request-success') {\n return;\n }\n // 判断相同的modelKey是否已经在请求数据中,避免重复请求\n if (!window[requestPreKey]) {\n void startDataSourceRequest();\n return;\n }\n },\n newEffectDependencyList,\n dequal,\n );\n\n const onChangeSelectorList = hooks.useCallbackRef((dataList: TAny[]) => {\n if (dataList?.length === 0 && state.treeSelectorList.length === 0) {\n void actions.setSelectBoxList({\n treeSelectorList: [],\n treeSelectorTiledArray: [],\n });\n onTreeSelectorListChange?.([]);\n return;\n }\n // 全部选项\n const tempItem = allOptionConfig\n ? {\n [fieldNamesMerge.label]: allOptionConfig.label,\n [fieldNamesMerge.value]: allOptionConfig.value,\n }\n : undefined;\n const newdataList = showAllOption ? [tempItem, ...dataList] : dataList;\n void actions.setSelectBoxList({\n treeSelectorList: newdataList,\n treeSelectorTiledArray: treeToArray(newdataList || [], fieldNamesMerge.children),\n });\n onTreeSelectorListChange?.(dataList);\n });\n\n fbaHooks.useEffectCustom(() => {\n if (hasTreeSelectorList) {\n onChangeSelectorList(treeSelectorList || []);\n }\n }, [treeSelectorList]);\n\n const onTreeExpand = hooks.useCallbackRef((expandedKeys) => {\n setTreeExpandedKeys(expandedKeys as string[]);\n });\n\n const onAgainRequest = hooks.useCallbackRef(() => {\n void startDataSourceRequest();\n });\n\n const getTreeExpandedKeys = (valueList: Array<string | number>, refresh?: boolean) => {\n let newTreeExpandedKeys = [] as Array<string | number>;\n valueList.forEach((value) => {\n if (!refresh && treeExpandedKeys?.includes(value)) return;\n const targetList = getExpandedKeys(value, state.treeSelectorList, fieldNamesMerge);\n newTreeExpandedKeys = newTreeExpandedKeys.concat(targetList.map((item) => item.value));\n });\n return newTreeExpandedKeys;\n };\n\n /**\n * 数据源Item解析\n */\n const parseDataSourceItem = hooks.useCallbackRef((item?: TPlainObject | null) => {\n if (!item) return undefined;\n return {\n label: item?.[fieldNamesMerge.label],\n value: item?.[fieldNamesMerge.value],\n children: item?.[fieldNamesMerge.children],\n disabled: item?.['disabled'],\n };\n });\n /**\n * labelInValue模式入参value item解析\n */\n const parseLabelInValueItem = hooks.useCallbackRef((item?: TPlainObject | null) => {\n if (!item) return undefined;\n return {\n label: item?.[labelInValueFieldNamesMerge.label],\n value: item?.[labelInValueFieldNamesMerge.value],\n disabled: item?.['disabled'],\n };\n });\n\n const getResponseTreeNodeList = hooks.useCallbackRef((changeValue: TAny, triggerInfo: TPlainObject) => {\n const valueList = getVauleList(changeValue, { value: 'value', label: 'label' });\n let selectedTreeNodeList = [] as TPlainObject[];\n valueList.forEach((item) => {\n const target = arrayFind(state.treeSelectorTiledArray, item, fieldNamesMerge.value) as TPlainObject;\n if (!target) return;\n selectedTreeNodeList.push(target);\n });\n if (otherProps.treeCheckStrictly && selectedParentCheckedAllChildrenList) {\n const triggerNode = parseDataSourceItem(\n triggerInfo.checked\n ? arrayFind(state.treeSelectorTiledArray, triggerInfo.triggerValue, fieldNamesMerge.value)\n : null,\n );\n if (triggerNode && isArray(triggerNode.children) && triggerNode.children.length > 0) {\n // 判断为父节点\n const allChildrenList = treeToArray(triggerNode.children, fieldNamesMerge.children);\n const selectedChildrenList = allChildrenList.filter((item) => {\n const parseItem = parseDataSourceItem(item);\n if (parseItem?.disabled) return false;\n // 去重\n if (arrayFind(selectedTreeNodeList, parseItem?.value, fieldNamesMerge.value)) return false;\n return true;\n });\n selectedTreeNodeList = selectedTreeNodeList.concat(selectedChildrenList);\n }\n }\n let realTreeNodeList = [] as TPlainObject[];\n if (otherProps.treeCheckable) {\n if (\n otherProps.treeCheckStrictly === true ||\n valueIsEqual(otherProps.showCheckedStrategy, ['SHOW_ALL', 'SHOW_PARENT'])\n ) {\n // 返回包含父节点\n realTreeNodeList = selectedTreeNodeList;\n } else {\n // 返回不包含父节点\n realTreeNodeList = selectedTreeNodeList.filter((item) => {\n const children = item[fieldNamesMerge.children];\n return !(isArray(children) && children.length > 0);\n });\n }\n } else {\n realTreeNodeList = selectedTreeNodeList;\n }\n return {\n realTreeNodeList,\n realTreeNodeValueList: getVauleList(realTreeNodeList, fieldNamesMerge),\n };\n });\n\n const onRespChange = hooks.useCallbackRef((values, selectedValues, triggerInfo) => {\n // setInnerOperateValue(values);\n onChange?.(values, selectedValues, triggerInfo);\n onChangeHandle?.(values, selectedValues, triggerInfo);\n });\n\n /**\n * 根据treeCheckable、treeCheckStrictly、showCheckedStrategy等设置情况,判断返回数据是否包含父节点\n * 1. 当 treeCheckable = true,changeValue 数据格式为 { label,value }[]\n */\n const onInnerChange = hooks.useCallbackRef((changeValue: TAny, _data, triggerInfo: TPlainObject) => {\n const { realTreeNodeList, realTreeNodeValueList } = getResponseTreeNodeList(changeValue, triggerInfo);\n if (otherProps.treeCheckable) {\n setTreeExpandedKeys((prev) => {\n const mergeList = getTreeExpandedKeys(realTreeNodeValueList).concat(prev || []);\n return Array.from(new Set(mergeList));\n });\n }\n\n if (labelInValue) {\n const labelInValueList = realTreeNodeList.map((item) => {\n const parseItem = parseDataSourceItem(item);\n return {\n [labelInValueFieldNamesMerge.label]: parseItem?.label,\n [labelInValueFieldNamesMerge.value]: parseItem?.value,\n };\n });\n\n if (isMultiple) {\n onRespChange?.(labelInValueList, realTreeNodeList, triggerInfo);\n } else {\n onRespChange?.(labelInValueList[0], realTreeNodeList[0], triggerInfo);\n }\n } else {\n if (isMultiple) {\n onRespChange?.(realTreeNodeValueList, realTreeNodeList, triggerInfo);\n } else {\n onRespChange?.(realTreeNodeValueList[0], realTreeNodeList[0], triggerInfo);\n }\n }\n });\n\n const mapTree = hooks.useCallbackRef((data) => {\n if (!data) return null;\n return data.map((item) => {\n const itemAdapterData = onTreeItemDataAdapter?.({ ...item }) || item;\n const children = itemAdapterData[fieldNamesMerge.children];\n const value = itemAdapterData[fieldNamesMerge.value];\n const label = itemAdapterData[fieldNamesMerge.label];\n const disabled = itemAdapterData[fieldNamesMerge.disabled]\n ? itemAdapterData[fieldNamesMerge.disabled]\n : itemAdapterData.disabled;\n return (\n <TreeSelect.TreeNode\n {...itemAdapterData}\n disabled={disabled}\n value={value}\n title={label}\n key={`${value}`}\n >\n {children && children.length > 0 && mapTree(children)}\n </TreeSelect.TreeNode>\n );\n });\n });\n\n /**\n * 1. 当 treeCheckable = true,value 数据格式为 labelInValueFieldNames[]\n * 2. 其他情况 value 数据格式为 value[]\n */\n const renderValueList = useMemo(() => {\n const innerOperateValueList = toArray(value);\n if (innerOperateValueList.length == 0) return [];\n if (otherProps.treeCheckStrictly) {\n if (state.treeSelectorTiledArray.length === 0) {\n return innerOperateValueList.map((item) => ({ label: item, value: item }));\n }\n return innerOperateValueList.map((item) => {\n let targetParseItem: TPlainObject;\n let defualtValue;\n if (isString(item) || isNumber(item as TAny)) {\n const target = arrayFind(state.treeSelectorTiledArray, item as string, fieldNamesMerge.value);\n targetParseItem = parseDataSourceItem(target) as TPlainObject;\n defualtValue = item;\n } else {\n targetParseItem = parseLabelInValueItem(item as TPlainObject) as TPlainObject;\n }\n return {\n label: getValueOrDefault(targetParseItem?.label, defualtValue),\n value: getValueOrDefault(targetParseItem?.value, defualtValue),\n };\n });\n }\n return getVauleList(value, labelInValueFieldNamesMerge);\n }, [\n value,\n otherProps.treeCheckStrictly,\n labelInValueFieldNamesMerge,\n state.treeSelectorTiledArray,\n fieldNamesMerge.value,\n parseDataSourceItem,\n parseLabelInValueItem,\n ]);\n\n const treeSelectValue = useMemo(() => {\n if (isArray(renderValueList) && renderValueList.length === 0) {\n return undefined;\n }\n return isMultiple ? renderValueList : renderValueList[0];\n }, [isMultiple, renderValueList]);\n\n /**\n * 1. 使用 TreeNode 渲染节点,不能重写 fieldNames 配置\n * 2. 使用 TreeNode 是为了实现 TreeNode ICON\n */\n return (\n <TreeSelect\n dropdownStyle={{ maxHeight: 400, overflow: 'auto' }}\n showSearch={true}\n treeLine={{ showLeafIcon: false }}\n treeNodeFilterProp=\"title\"\n switcherIcon={<CaretDownFilled />}\n showArrow\n {...otherProps}\n className={classNames('v-tree-select-wrapper', otherProps.className)}\n popupClassName={classNames('v-tree-select-wrapper-dropdown', otherProps.popupClassName)}\n onChange={onInnerChange}\n treeExpandedKeys={treeExpandedKeys}\n value={treeSelectValue}\n loading={loading}\n dropdownMatchSelectWidth={false}\n onTreeExpand={onTreeExpand}\n style={{ width: '100%', ...otherProps.style }}\n suffixIcon={\n state.requestStatus === 'request-error' ? (\n <RedoOutlined spin={loading} onClick={onAgainRequest} />\n ) : undefined\n }\n notFoundContent={\n <RequestStatus\n status={state.requestStatus}\n messageConfig={requestMessageConfig}\n loading={loading}\n errorButton={\n <Button type=\"primary\" onClick={onAgainRequest}>\n 重新获取数据\n </Button>\n }\n />\n }\n >\n {mapTree(state.treeSelectorList)}\n </TreeSelect>\n );\n};\n"],"names":["defaultState","treeSelectorList","treeSelectorTiledArray","queryIsEmpty","TreeSelectorWrapperModel","actions","setSelectBoxList","params","state","requestStatus","resetSelectBoxList","changeRequestStatus","treeSelectorWrapperModels","treeSelectorWrapperModel","key","Model","getExpandedKeys","value","treeList","fieldNames","_isArray","length","tiledArray","treeToTiledArray","treeLeafParentsArray","parentValue","getVauleList","data","tempList","toArray","map","item","_isObject","TreeSelectorWrapper","props","serviceConfig","effectDependencyList","onTreeSelectorListChange","onTreeSelectorRequestError","requestMessageConfig","modelKey","_labelInValue","labelInValue","labelInValueFieldNames","onTreeItemDataAdapter","_props$selectedParent","selectedParentCheckedAllChildrenList","onChange","onChangeHandle","treeDefaultExpandAll","showAllOption","initRootExpand","treeDefaultExpandedKeys","otherProps","_objectWithoutPropertiesLoose","_excluded","hasTreeSelectorList","hasOwnProperty","newServiceConfig","newEffectDependencyList","_fbaHooks$useSafeStat","fbaHooks","useSafeState","loading","setLoading","_useState","useState","treeExpandedKeys","setTreeExpandedKeys","_treeSelectorWrapperM","useStore","requestPreKey","isMultiple","treeCheckable","responseFirstRef","useRef","useMemo","treeCheckStrictly","fieldNamesMerge","_extends","label","children","disabled","labelInValueFieldNamesMerge","allOptionConfig","isTrue","isFirstUseValueRef","prevValue","usePrevious","useEffectCustom","current","isUndefinedOrNull","allValues","treeToArray","valueList","expandedKeys","getTreeExpandedKeys","Array","from","Set","valueIsEmpty","serviceResponseHandle","respData","respDataList","onRequestResultAdapter","startDataSourceRequest","_hooks","useCallbackRef","Promise","$return","$error","requiredParamsKeys","isEmpty","_respData","_respData2","onRequest","Error","_extend","find","console","warn","join","$Try_1_Post","$boundEx","$Try_1_Catch","error","window","resolve","then","$await_2","onChangeSelectorList","useCustomCompareEffect","Boolean","allState","getState","dequal","dataList","_ref","tempItem","undefined","newdataList","concat","onTreeExpand","onAgainRequest","refresh","newTreeExpandedKeys","forEach","includes","targetList","parseDataSourceItem","parseLabelInValueItem","getResponseTreeNodeList","changeValue","triggerInfo","selectedTreeNodeList","target","arrayFind","push","triggerNode","checked","triggerValue","allChildrenList","selectedChildrenList","filter","parseItem","realTreeNodeList","valueIsEqual","showCheckedStrategy","realTreeNodeValueList","onRespChange","values","selectedValues","onInnerChange","_data","_getResponseTreeNodeL","prev","mergeList","labelInValueList","_ref2","mapTree","itemAdapterData","_createElement","TreeSelect","TreeNode","title","renderValueList","innerOperateValueList","_targetParseItem","_targetParseItem2","targetParseItem","defualtValue","_isString","isNumber","getValueOrDefault","treeSelectValue","_jsx","dropdownStyle","maxHeight","overflow","showSearch","treeLine","showLeafIcon","treeNodeFilterProp","switcherIcon","_CaretDownFilled","showArrow","className","_classNames","popupClassName","dropdownMatchSelectWidth","style","width","suffixIcon","_RedoOutlined","spin","onClick","notFoundContent","RequestStatus","status","messageConfig","errorButton","Button","type"],"mappings":"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"}
|
|
@@ -12,5 +12,5 @@ import './../flex-layout/index.css';
|
|
|
12
12
|
import './../input-search-wrapper/index.css';
|
|
13
13
|
import './index.css';
|
|
14
14
|
/*! @flatjs/forge MIT @flatbiz/antd */
|
|
15
|
-
import{f as e}from"../fba-utils-f9e11d02.js";import{isArray as r}from"@dimjs/lang/cjs/is-array";import{Model as t}from"@dimjs/model-react";import{treeToArray as n,treeToTiledArray as a,treeLeafParentsArray as i,isUndefinedOrNull as l,treeFilter as s}from"@flatbiz/utils";import o from"@ant-design/icons/es/icons/CaretDownFilled";import u from"@ant-design/icons/es/icons/MoreOutlined";import{classNames as c}from"@dimjs/utils/cjs/class-names";import{extend as d}from"@dimjs/utils/cjs/extend";import{hooks as v}from"@wove/react/cjs/hooks";import{_ as f,a as p}from"../_rollupPluginBabelHelpers-1f4d8910.js";import{cloneState as m}from"@dimjs/model";import{Spin as h,Tree as g,Button as b,message as y}from"antd";import{forwardRef as L,useState as j,useMemo as w,useRef as C,useImperativeHandle as R,Fragment as N,isValidElement as q}from"react";import{a as k}from"../button-operate-81d86480.js";import{D as S}from"../dropdown-menu-wrapper-016a83b6.js";import{fbaHooks as T}from"../fba-hooks/index.js";import{I as P}from"../input-search-wrapper-10d4a9b9.js";import{R as x}from"../request-status-03fc60e2.js";import{tree as D}from"@dimjs/utils/cjs/tree";import{isObject as E}from"@dimjs/lang/cjs/is-object";import"dequal";import{jsxs as A,jsx as I}from"react/jsx-runtime";import"@dimjs/lang/cjs/is-undefined";import"@dimjs/lang/cjs/is-plain-object";import"@dimjs/lang/cjs/is-string";import"@dimjs/lang/cjs/is-promise";import"../button-wrapper-125fce50.js";import"@ant-design/icons/es/icons/LoadingOutlined";import"../config-provider-wrapper-dfe8f592.js";import"antd/es/locale/en_US";import"antd/es/locale/zh_CN";import"dayjs";import"dayjs/locale/en";import"dayjs/locale/zh-cn";import"dayjs/plugin/advancedFormat";import"dayjs/plugin/customParseFormat";import"dayjs/plugin/localeData";import"dayjs/plugin/utc";import"dayjs/plugin/weekday";import"dayjs/plugin/weekOfYear";import"dayjs/plugin/weekYear";import"@ant-design/icons/es/icons/ExclamationCircleFilled";import"../dialog-confirm-74fc9337.js";import"../dialog-modal-4a0c72c5.js";import"ahooks";import"react-dom/client";import"../flex-layout-8d2b668b.js";import"../use-responsive-point-21b8c601.js";var _={treeList:[],treeTiledArray:[],queryIsEmpty:false};var O={actions:{setTreeList:function e(r){return function(e){e.treeList=r.treeList||[];e.treeTiledArray=n(e.treeList,r.childrenName);e.requestStatus="request-success"}},resetTreeList:function e(){return function(e){e.treeList=[]}},changeRequestStatus:function e(r){return function(e){e.requestStatus=r;if(r==="request-error"){e.treeList=[]}}},treeListAppendChildren:function e(t){return function(e){var a=n(e.treeList,t.childrenName);var i=a.find((function(e){return e[t.valueName]===t.value}));if(i){if(r(t.appendList)&&t.appendList.length>0){i[t.childrenName]=t.appendList}else{i.isLeaf=true}}e.treeTiledArray=n(e.treeList,t.childrenName)}}},state:_};var V={};var F=function e(r){if(!V[r]){V[r]=t(O)}return V[r]};var K=function e(r){var t=F(r).getState();return t.treeList};var M=function e(r,t,n){var l=a(t,n);return i(r,l,true,{value:"value",parentValue:"parentValue"})};var U=function e(t,n){var a=l(t)?[]:t;a=r(a)?a:[a];a=a.map((function(e){if(E(e))return e[n.value];return e}));return a};var z=function e(r,t,n){var a=n.node.key;var i=n.dragNode.key;var l=n.node.pos.split("-");var s=n.dropPosition-Number(l[l.length-1]);var o=t.value;var u=t.children;var c=function e(r,t,n){for(var a=0;a<r.length;a++){if(r[a][o]===t){return n(r[a],a,r)}if(r[a][u]){e(r[a][u],t,n)}}};var d=m(r);var v;c(d,i,(function(e,r,t){t.splice(r,1);v=e}));if(!n.dropToGap){c(d,a,(function(e){e[u]=e[u]||[];e[u].unshift(v)}))}else if((n.node.props.children||[]).length>0&&n.node.props.expanded&&s===1){c(d,a,(function(e){e[u]=e[u]||[];e[u].unshift(v)}))}else{var f=[];var p;c(d,a,(function(e,r,t){f=t;p=r}));if(s===-1){f.splice(p,0,v)}else{f.splice(p+1,0,v)}}return{dataList:d,dragNodeData:B(i,d,t)}};var B=function e(r,t,a){var i;var l=a.value;var s=a.children;D.walkThroughTree((i={},i[l]=undefined,i[s]=t,i),(function(e,r,t){e["__index"]=r;e["__parentId"]=t==null?void 0:t[l]}),s);var o=n(t,s);var u=o.find((function(e){return e[l]===r}));return{parentId:u==null?void 0:u["__parentId"],id:u==null?void 0:u[l],index:u==null?void 0:u["__index"]}};var H=["style","serviceConfig","effectDependencyList","selectorTreeList","value","onChange","modelKey","checkableResponseParentNode","checkable","onSelectorTreeListChange","onRequestResponseChange","treeItemDataAdapter","searchValue","showSearch","searchPlaceholder","requestMessageConfig","labelInValueFieldNames","labelInValue","disabledCanUse","menuLayoutType","menuTriggerType","initRootExpand","searchResultType","onDropNodeHandle","onDropPrev","labelRender","searchStyle","className","defaultExpandAll","menus"];var Y=L((function(e,t){var i=e.style,L=e.serviceConfig,D=e.effectDependencyList,E=e.selectorTreeList,_=e.value,O=e.onChange,V=e.modelKey,K=e.checkableResponseParentNode,B=K===void 0?true:K,Y=e.checkable,G=e.onSelectorTreeListChange,W=e.onRequestResponseChange,J=e.treeItemDataAdapter,Q=e.searchValue,X=e.showSearch,Z=e.searchPlaceholder,$=e.requestMessageConfig,ee=e.labelInValueFieldNames,re=e.labelInValue,te=e.disabledCanUse,ne=e.menuLayoutType,ae=e.menuTriggerType,ie=e.initRootExpand,le=e.searchResultType,se=e.onDropNodeHandle,oe=e.onDropPrev,ue=e.labelRender,ce=e.searchStyle,de=e.className,ve=e.defaultExpandAll,fe=e.menus,pe=f(e,H);var me=e.hasOwnProperty("selectorTreeList");var he=L||{};var ge=D||[];var be=j([]),ye=be[0],Le=be[1];var je=F(V).useStore(),we=je[0],Ce=je[1];var Re=T.useSafeState(false),Ne=Re[0],qe=Re[1];var ke="request-progress-"+e.modelKey;var Se=w((function(){return p({label:"label",value:"value",children:"children"},e.fieldNames)}),[e.fieldNames]);var Te=ne===undefined?"fold":ne;var Pe=ae===undefined?"click":ae;var xe=C(true);var De=w((function(){return p({label:"label",value:"value"},ee)}),[ee]);var Ee=j(),Ae=Ee[0],Ie=Ee[1];var _e=C();var Oe=w((function(){var e=U(_,De);return e}),[De,_]);T.useEffectCustom((function(){if(we.treeList.length>0){if(xe.current){xe.current=false;if(ve){var e=n(we.treeList,Se.children).map((function(e){return e[Se.value]}));Le(e);return}else if(ie&&we.treeList.length){Le([we.treeList[0][Se.value]]);return}}if(!l(_)){var r=Ue(Oe,true);Le(Array.from(new Set(ye==null?void 0:ye.concat(r))))}}}),[_,we.treeList,Oe]);var Ve=function e(r){return r===""||l(r)};var Fe=function e(r){var t=he.onRequestResultAdapter?he.onRequestResultAdapter(r):r;return t};T.useEffectCustom((function(){Ie(Q)}),[Q]);var Ke=v.useCallbackRef((function(){return new Promise((function(e,r){var t,n,a,i,l,s;var o=function(){try{return e()}catch(e){return r(e)}};var u=function(e){try{xe.current=false;qe(false);void y.error(e.message||"数据查询异常...");return o()}catch(e){return r(e)}};try{if(!he.onRequest){throw new Error("onRequest 调用接口服务不能为空")}t=he.requiredParamsKeys;n=d({},he.params);if(t){a=t.find((function(e){return Ve(n[e])}));if(a){console.warn("TreeWrapper组件:参数:"+t.join("、")+"不能为空");return e()}}var c=function(){try{return o()}catch(e){return u(e)}};var v=function(e){try{window[ke]=false;qe(false);void Ce.changeRequestStatus("request-error");return c()}catch(e){return u(e)}};try{qe(true);return Promise.resolve(Ce.changeRequestStatus("request-progress")).then((function(e){try{window[ke]=true;return Promise.resolve(he.onRequest==null?void 0:he.onRequest(n)).then((function(e){try{i=e;W==null?void 0:W(i);l=Fe(i);s=l||[];if(s.length===0){xe.current=false}Me(s);qe(false);window[ke]=false;return c()}catch(e){return v(e)}}),v)}catch(e){return v(e)}}),v)}catch(e){v(e)}}catch(e){u(e)}}))}));T.useEffectCustom((function(){if(me)return;if(Boolean(ge.length)){void Ke();return}var e=F(V).getState();if(e.requestStatus==="request-success"){G==null?void 0:G(e.treeList);return}if(!window[ke]){void Ke()}else{G==null?void 0:G(e.treeList)}}),ge);T.useEffectCustom((function(){if(me){Me(E||[])}}),[E]);var Me=v.useCallbackRef((function(e){if((e==null?void 0:e.length)===0&&we.treeList.length===0){void Ce.changeRequestStatus("request-success");return}void Ce.setTreeList({treeList:e||[],childrenName:Se.children});G==null?void 0:G(e)}));var Ue=function e(r,t){var n=[];r.forEach((function(e){if(!t&&ye!=null&&ye.includes(e))return;var r=M(e,we.treeList,Se);n=n.concat(r.map((function(e){return e.value})))}));return n};v.useUpdateEffect((function(){if(Ae){var e=a(we.treeList||[],Se);var r=e.filter((function(e){var r;return(r=e.label)==null?void 0:r.includes(Ae||"")}));Le((function(e){var t=Ue(r.map((function(e){return e.value}))).concat(e||[]);return Array.from(new Set(t))}))}else{Le([])}}),[Ae]);R(t,(function(){return{onClearSelectorList:function e(){void Ce.resetTreeList()},getTreeDataList:function e(){return we.treeList}}}));var ze=v.useCallbackRef((function(e){Le(e)}));var Be=v.useCallbackRef((function(e,t,n){_e.current=e;var a=l(t)?[]:r(t)?t:[t];if(l(e)){O==null?void 0:O(e,t,n);return}if(re){var i=De.label;var s=De.value;var o=a.map((function(e){var r;return r={},r[i]=e[Se.label],r[s]=e[Se.value],r}));if(r(e)){O==null?void 0:O(o,a,n)}else{O==null?void 0:O(o[0],a[0],n)}}else{if(r(e)){O==null?void 0:O(e,a,n)}else{O==null?void 0:O(e,a[0],n)}}}));var He=v.useCallbackRef((function(t,n){var a=e.checkStrictly?t.checked:t;a=l(t)?[]:t;a=r(a)?a:[a];var i=[];var s=[];var o=[];var u=[];a.forEach((function(e){var t=we.treeTiledArray.find((function(r){return r[Se.value]===e}));if(!t)return;var n=t==null?void 0:t[Se.children];if(!r(n)||n.length===0){i.push(t);s.push(t[Se.value])}o.push(t);u.push(t[Se.value])}));if(Y){Le((function(e){var r=Ue(s).concat(e||[]);return Array.from(new Set(r))}));if(!B&&!e.checkStrictly){Be(s,i,o)}else{Be(u,o,o)}}else{if(a[0]){var c=o.find((function(e){return e[Se.value]===a[0]}));Be(a[0],c,[c])}else{var d=n.node[Se.value];var v=we.treeTiledArray.find((function(e){return e[Se.value]===d}));Be(undefined,v,[v])}}}));var Ye=v.useCallbackRef((function(e){return J==null?void 0:J(e)}));var Ge=w((function(){var e=m(we.treeList||[]);if(Ae&&le!=="highlight"){return s(m(we.treeList||[]),(function(e){var r;var t=(r=e[Se.label])==null?void 0:r.toLowerCase();return t.indexOf(Ae.toLowerCase())>=0}),{childrenName:Se.children})}return e}),[Se.children,Se.label,le,we.treeList,Ae]);var We=w((function(){var e=function e(t){return t==null?void 0:t.map((function(t){var n;var a=(Ye==null?void 0:Ye(t))||t;var i=te?undefined:a.disabled;var l=a[Se.label];var s;if(Ae){var o=l.indexOf(Ae);var u=l.substring(0,o);var d=l.slice(o+Ae.length);s=o>-1?A("span",{className:c({"v-tree-item-disabled":a.disabled}),children:[u,I("span",{className:"site-tree-search-value",children:Ae}),d]}):null}if(!s){s=I("span",{className:c({"v-tree-item-disabled":a.disabled}),children:l})}var v=a[Se.children];return p({},a,(n={disabled:i},n[Se.label]=s,n._treeItemName=l,n._disabled=a.disabled,n[Se.children]=r(v)&&v.length>0?e(v):undefined,n))}))};return e(Ge)}),[Ge,Ye,te,Se.label,Se.children,Ae]);var Je=v.useCallbackRef((function(r){return new Promise((function(t,n){return new Promise((function(a,i){var l,s,o,u;if(r[Se.children]){t();return a()}var c=function(){try{return a()}catch(e){return i(e)}};var d=function(e){try{void y.error(e.message||"数据加载异常...");n();return c()}catch(e){return i(e)}};try{return Promise.resolve((l=e.loadDataServiceConfig)==null?void 0:l.onRequest==null?void 0:l.onRequest((s=e.loadDataServiceConfig)==null?void 0:s.getParams==null?void 0:s.getParams(r))).then((function(e){try{o=e;u=he.onRequestResultAdapter?he.onRequestResultAdapter(o):o;void Ce.treeListAppendChildren({value:r[Se.value],appendList:u,childrenName:Se.children,valueName:Se.value}).then((function(e){Me(e.treeList);t()}));return c()}catch(e){return d(e)}}),d)}catch(e){d(e)}}))}))}));var Qe=v.useCallbackRef((function(r){var t=r==null?void 0:r[Se.children];var n=e.loadDataFlag;var a=n?!r.isLeaf:false;var i=t&&t.length>0||a;return!i}));var Xe=v.useCallbackRef((function(r){var t,n,a;var i=r._treeItemName||r[Se.label];var l=fe==null?void 0:fe(p({},r,(t={},t[Se.label]=i,t)));if(l){return A(N,{children:[I("span",{className:"tree-item-title",children:(ue==null?void 0:ue(r))||(r==null?void 0:r[Se.label])}),I(k,p({gap:5},l,{dropdownMenuProps:p({placement:"bottomRight",isFixed:true},l==null?void 0:l.dropdownMenuProps),className:c("tree-item-title-operate",l.className)}))]})}if(Te==="fold"){var s;var o=[];if((s=e.menuOptions)!=null&&s.fold){var d,v,f;o=((d=e.menuOptions)==null?void 0:(v=d[Te])==null?void 0:v.call(d,p({},r,(f={},f[Se.label]=i,f))))||[]}else{var m;o=(e.getMenuOptions==null?void 0:e.getMenuOptions(p({},r,(m={},m[Se.label]=i,m))))||[]}return A(N,{children:[I("span",{className:"tree-item-title",children:(ue==null?void 0:ue(r))||(r==null?void 0:r[Se.label])}),o.length>0&&I(S,{menuList:o,placement:"bottomRight",children:I(u,{})})]})}var h=(n=e.menuOptions)==null?void 0:n.tile==null?void 0:n.tile(p({},r,(a={},a[Se.label]=i,a)));return A(N,{children:[I("span",{className:"tree-item-title",children:(ue==null?void 0:ue(r))||(r==null?void 0:r[Se.label])}),h?I(k,p({gap:5},h,{className:c("tree-item-title-operate",h.className)})):null]})}));var Ze=v.useDebounceCallback((function(r){Ie(r);e.onSearchValueChange==null?void 0:e.onSearchValueChange(r)}),300);var $e=v.useCallbackRef((function(e){Ze(e.target.value)}));var er=v.useCallbackRef((function(r){if(!e.icon)return null;if(q(e.icon))return e.icon;var t=Qe(r.data);return e.icon(p({},r,{isParent:!t,isLeaf:t}))}));var rr=w((function(){return{title:Se.label,key:Se.value,children:Se.children}}),[Se]);var tr=We.length>0&&we.requestStatus!=="request-error";var nr=p({showLine:{showLeafIcon:false},titleRender:Xe,blockNode:true,switcherIcon:I(o,{}),onDrop:function e(r){if(oe){var t=oe(r);if(!t)return}var n=z(Ge,Se,r),a=n.dataList,i=n.dragNodeData;se==null?void 0:se(i);Me(a)},expandedKeys:ye},pe,{fieldNames:rr,treeData:We,onExpand:ze,loadData:e.loadDataFlag?Je:undefined,style:{width:"100%"},icon:er});var ar={onCheck:He,checkable:Y,checkedKeys:Oe};var ir={onSelect:He,multiple:false,selectedKeys:Oe};var lr=Y?ar:ir;var sr=c("v-tree-wrapper","v-tree-wrapper-menu-"+Pe,de);var or=we.treeList.length>0&&!tr&&Ae;return A("div",{className:sr,style:i,children:[!!X&&A("div",{className:"v-tree-wrapper-search-area",style:ce,children:[I(P,{className:"v-tree-wrapper-search",placeholder:Z,onChange:$e,value:Q,allowClear:true}),!!e.searchExtraElement&&I("span",{className:"v-tree-wrapper-search-extra",children:e.searchExtraElement})]}),tr?A("div",{className:"v-tree-wrapper-tree-wrapper",children:[I(h,{spinning:we.requestStatus==="request-progress"}),I(g,p({},lr,nr,{className:"v-tree-wrapper-tree"}))]}):I(x,{status:we.requestStatus,loading:Ne,messageConfig:p({"request-success":or?"搜索结果为空":"暂无数据"},$),errorButton:I(b,{type:"primary",onClick:Ke,children:"重新获取数据"})})]})}));Y.defaultProps={disabledCanUse:true};var G=e.attachPropertiesToComponent(Y,{getTreeDataList:K});export{G as TreeWrapper};
|
|
15
|
+
import{f as e}from"../fba-utils-f9e11d02.js";import{isArray as r}from"@dimjs/lang/cjs/is-array";import{Model as t}from"@dimjs/model-react";import{treeToArray as n,treeToTiledArray as a,treeLeafParentsArray as i,isUndefinedOrNull as l,treeFilter as s}from"@flatbiz/utils";import o from"@ant-design/icons/es/icons/CaretDownFilled";import u from"@ant-design/icons/es/icons/MoreOutlined";import{classNames as c}from"@dimjs/utils/cjs/class-names";import{extend as d}from"@dimjs/utils/cjs/extend";import{hooks as v}from"@wove/react/cjs/hooks";import{_ as f,a as p}from"../_rollupPluginBabelHelpers-1f4d8910.js";import{cloneState as m}from"@dimjs/model";import{Spin as h,Tree as g,Button as b,message as y}from"antd";import{forwardRef as L,useState as j,useMemo as w,useRef as C,useImperativeHandle as R,Fragment as N,isValidElement as q}from"react";import{a as k}from"../button-operate-d3b2e543.js";import{D as S}from"../dropdown-menu-wrapper-2b4fc43d.js";import{fbaHooks as T}from"../fba-hooks/index.js";import{I as P}from"../input-search-wrapper-10d4a9b9.js";import{R as x}from"../request-status-03fc60e2.js";import{tree as D}from"@dimjs/utils/cjs/tree";import{isObject as E}from"@dimjs/lang/cjs/is-object";import"dequal";import{jsxs as A,jsx as I}from"react/jsx-runtime";import"@dimjs/lang/cjs/is-undefined";import"@dimjs/lang/cjs/is-plain-object";import"@dimjs/lang/cjs/is-string";import"@dimjs/lang/cjs/is-promise";import"../button-wrapper-125fce50.js";import"@ant-design/icons/es/icons/LoadingOutlined";import"../config-provider-wrapper-dfe8f592.js";import"antd/es/locale/en_US";import"antd/es/locale/zh_CN";import"dayjs";import"dayjs/locale/en";import"dayjs/locale/zh-cn";import"dayjs/plugin/advancedFormat";import"dayjs/plugin/customParseFormat";import"dayjs/plugin/localeData";import"dayjs/plugin/utc";import"dayjs/plugin/weekday";import"dayjs/plugin/weekOfYear";import"dayjs/plugin/weekYear";import"@ant-design/icons/es/icons/ExclamationCircleFilled";import"../dialog-confirm-74fc9337.js";import"../dialog-modal-4a0c72c5.js";import"ahooks";import"react-dom/client";import"../flex-layout-8d2b668b.js";import"../use-responsive-point-21b8c601.js";var _={treeList:[],treeTiledArray:[],queryIsEmpty:false};var O={actions:{setTreeList:function e(r){return function(e){e.treeList=r.treeList||[];e.treeTiledArray=n(e.treeList,r.childrenName);e.requestStatus="request-success"}},resetTreeList:function e(){return function(e){e.treeList=[]}},changeRequestStatus:function e(r){return function(e){e.requestStatus=r;if(r==="request-error"){e.treeList=[]}}},treeListAppendChildren:function e(t){return function(e){var a=n(e.treeList,t.childrenName);var i=a.find((function(e){return e[t.valueName]===t.value}));if(i){if(r(t.appendList)&&t.appendList.length>0){i[t.childrenName]=t.appendList}else{i.isLeaf=true}}e.treeTiledArray=n(e.treeList,t.childrenName)}}},state:_};var V={};var F=function e(r){if(!V[r]){V[r]=t(O)}return V[r]};var K=function e(r){var t=F(r).getState();return t.treeList};var M=function e(r,t,n){var l=a(t,n);return i(r,l,true,{value:"value",parentValue:"parentValue"})};var U=function e(t,n){var a=l(t)?[]:t;a=r(a)?a:[a];a=a.map((function(e){if(E(e))return e[n.value];return e}));return a};var z=function e(r,t,n){var a=n.node.key;var i=n.dragNode.key;var l=n.node.pos.split("-");var s=n.dropPosition-Number(l[l.length-1]);var o=t.value;var u=t.children;var c=function e(r,t,n){for(var a=0;a<r.length;a++){if(r[a][o]===t){return n(r[a],a,r)}if(r[a][u]){e(r[a][u],t,n)}}};var d=m(r);var v;c(d,i,(function(e,r,t){t.splice(r,1);v=e}));if(!n.dropToGap){c(d,a,(function(e){e[u]=e[u]||[];e[u].unshift(v)}))}else if((n.node.props.children||[]).length>0&&n.node.props.expanded&&s===1){c(d,a,(function(e){e[u]=e[u]||[];e[u].unshift(v)}))}else{var f=[];var p;c(d,a,(function(e,r,t){f=t;p=r}));if(s===-1){f.splice(p,0,v)}else{f.splice(p+1,0,v)}}return{dataList:d,dragNodeData:B(i,d,t)}};var B=function e(r,t,a){var i;var l=a.value;var s=a.children;D.walkThroughTree((i={},i[l]=undefined,i[s]=t,i),(function(e,r,t){e["__index"]=r;e["__parentId"]=t==null?void 0:t[l]}),s);var o=n(t,s);var u=o.find((function(e){return e[l]===r}));return{parentId:u==null?void 0:u["__parentId"],id:u==null?void 0:u[l],index:u==null?void 0:u["__index"]}};var H=["style","serviceConfig","effectDependencyList","selectorTreeList","value","onChange","modelKey","checkableResponseParentNode","checkable","onSelectorTreeListChange","onRequestResponseChange","treeItemDataAdapter","searchValue","showSearch","searchPlaceholder","requestMessageConfig","labelInValueFieldNames","labelInValue","disabledCanUse","menuLayoutType","menuTriggerType","initRootExpand","searchResultType","onDropNodeHandle","onDropPrev","labelRender","searchStyle","className","defaultExpandAll","menus"];var Y=L((function(e,t){var i=e.style,L=e.serviceConfig,D=e.effectDependencyList,E=e.selectorTreeList,_=e.value,O=e.onChange,V=e.modelKey,K=e.checkableResponseParentNode,B=K===void 0?true:K,Y=e.checkable,G=e.onSelectorTreeListChange,W=e.onRequestResponseChange,J=e.treeItemDataAdapter,Q=e.searchValue,X=e.showSearch,Z=e.searchPlaceholder,$=e.requestMessageConfig,ee=e.labelInValueFieldNames,re=e.labelInValue,te=e.disabledCanUse,ne=e.menuLayoutType,ae=e.menuTriggerType,ie=e.initRootExpand,le=e.searchResultType,se=e.onDropNodeHandle,oe=e.onDropPrev,ue=e.labelRender,ce=e.searchStyle,de=e.className,ve=e.defaultExpandAll,fe=e.menus,pe=f(e,H);var me=e.hasOwnProperty("selectorTreeList");var he=L||{};var ge=D||[];var be=j([]),ye=be[0],Le=be[1];var je=F(V).useStore(),we=je[0],Ce=je[1];var Re=T.useSafeState(false),Ne=Re[0],qe=Re[1];var ke="request-progress-"+e.modelKey;var Se=w((function(){return p({label:"label",value:"value",children:"children"},e.fieldNames)}),[e.fieldNames]);var Te=ne===undefined?"fold":ne;var Pe=ae===undefined?"click":ae;var xe=C(true);var De=w((function(){return p({label:"label",value:"value"},ee)}),[ee]);var Ee=j(),Ae=Ee[0],Ie=Ee[1];var _e=C();var Oe=w((function(){var e=U(_,De);return e}),[De,_]);T.useEffectCustom((function(){if(we.treeList.length>0){if(xe.current){xe.current=false;if(ve){var e=n(we.treeList,Se.children).map((function(e){return e[Se.value]}));Le(e);return}else if(ie&&we.treeList.length){Le([we.treeList[0][Se.value]]);return}}if(!l(_)){var r=Ue(Oe,true);Le(Array.from(new Set(ye==null?void 0:ye.concat(r))))}}}),[_,we.treeList,Oe]);var Ve=function e(r){return r===""||l(r)};var Fe=function e(r){var t=he.onRequestResultAdapter?he.onRequestResultAdapter(r):r;return t};T.useEffectCustom((function(){Ie(Q)}),[Q]);var Ke=v.useCallbackRef((function(){return new Promise((function(e,r){var t,n,a,i,l,s;var o=function(){try{return e()}catch(e){return r(e)}};var u=function(e){try{xe.current=false;qe(false);void y.error(e.message||"数据查询异常...");return o()}catch(e){return r(e)}};try{if(!he.onRequest){throw new Error("onRequest 调用接口服务不能为空")}t=he.requiredParamsKeys;n=d({},he.params);if(t){a=t.find((function(e){return Ve(n[e])}));if(a){console.warn("TreeWrapper组件:参数:"+t.join("、")+"不能为空");return e()}}var c=function(){try{return o()}catch(e){return u(e)}};var v=function(e){try{window[ke]=false;qe(false);void Ce.changeRequestStatus("request-error");return c()}catch(e){return u(e)}};try{qe(true);return Promise.resolve(Ce.changeRequestStatus("request-progress")).then((function(e){try{window[ke]=true;return Promise.resolve(he.onRequest==null?void 0:he.onRequest(n)).then((function(e){try{i=e;W==null?void 0:W(i);l=Fe(i);s=l||[];if(s.length===0){xe.current=false}Me(s);qe(false);window[ke]=false;return c()}catch(e){return v(e)}}),v)}catch(e){return v(e)}}),v)}catch(e){v(e)}}catch(e){u(e)}}))}));T.useEffectCustom((function(){if(me)return;if(Boolean(ge.length)){void Ke();return}var e=F(V).getState();if(e.requestStatus==="request-success"){G==null?void 0:G(e.treeList);return}if(!window[ke]){void Ke()}else{G==null?void 0:G(e.treeList)}}),ge);T.useEffectCustom((function(){if(me){Me(E||[])}}),[E]);var Me=v.useCallbackRef((function(e){if((e==null?void 0:e.length)===0&&we.treeList.length===0){void Ce.changeRequestStatus("request-success");return}void Ce.setTreeList({treeList:e||[],childrenName:Se.children});G==null?void 0:G(e)}));var Ue=function e(r,t){var n=[];r.forEach((function(e){if(!t&&ye!=null&&ye.includes(e))return;var r=M(e,we.treeList,Se);n=n.concat(r.map((function(e){return e.value})))}));return n};v.useUpdateEffect((function(){if(Ae){var e=a(we.treeList||[],Se);var r=e.filter((function(e){var r;return(r=e.label)==null?void 0:r.includes(Ae||"")}));Le((function(e){var t=Ue(r.map((function(e){return e.value}))).concat(e||[]);return Array.from(new Set(t))}))}else{Le([])}}),[Ae]);R(t,(function(){return{onClearSelectorList:function e(){void Ce.resetTreeList()},getTreeDataList:function e(){return we.treeList}}}));var ze=v.useCallbackRef((function(e){Le(e)}));var Be=v.useCallbackRef((function(e,t,n){_e.current=e;var a=l(t)?[]:r(t)?t:[t];if(l(e)){O==null?void 0:O(e,t,n);return}if(re){var i=De.label;var s=De.value;var o=a.map((function(e){var r;return r={},r[i]=e[Se.label],r[s]=e[Se.value],r}));if(r(e)){O==null?void 0:O(o,a,n)}else{O==null?void 0:O(o[0],a[0],n)}}else{if(r(e)){O==null?void 0:O(e,a,n)}else{O==null?void 0:O(e,a[0],n)}}}));var He=v.useCallbackRef((function(t,n){var a=e.checkStrictly?t.checked:t;a=l(t)?[]:t;a=r(a)?a:[a];var i=[];var s=[];var o=[];var u=[];a.forEach((function(e){var t=we.treeTiledArray.find((function(r){return r[Se.value]===e}));if(!t)return;var n=t==null?void 0:t[Se.children];if(!r(n)||n.length===0){i.push(t);s.push(t[Se.value])}o.push(t);u.push(t[Se.value])}));if(Y){Le((function(e){var r=Ue(s).concat(e||[]);return Array.from(new Set(r))}));if(!B&&!e.checkStrictly){Be(s,i,o)}else{Be(u,o,o)}}else{if(a[0]){var c=o.find((function(e){return e[Se.value]===a[0]}));Be(a[0],c,[c])}else{var d=n.node[Se.value];var v=we.treeTiledArray.find((function(e){return e[Se.value]===d}));Be(undefined,v,[v])}}}));var Ye=v.useCallbackRef((function(e){return J==null?void 0:J(e)}));var Ge=w((function(){var e=m(we.treeList||[]);if(Ae&&le!=="highlight"){return s(m(we.treeList||[]),(function(e){var r;var t=(r=e[Se.label])==null?void 0:r.toLowerCase();return t.indexOf(Ae.toLowerCase())>=0}),{childrenName:Se.children})}return e}),[Se.children,Se.label,le,we.treeList,Ae]);var We=w((function(){var e=function e(t){return t==null?void 0:t.map((function(t){var n;var a=(Ye==null?void 0:Ye(t))||t;var i=te?undefined:a.disabled;var l=a[Se.label];var s;if(Ae){var o=l.indexOf(Ae);var u=l.substring(0,o);var d=l.slice(o+Ae.length);s=o>-1?A("span",{className:c({"v-tree-item-disabled":a.disabled}),children:[u,I("span",{className:"site-tree-search-value",children:Ae}),d]}):null}if(!s){s=I("span",{className:c({"v-tree-item-disabled":a.disabled}),children:l})}var v=a[Se.children];return p({},a,(n={disabled:i},n[Se.label]=s,n._treeItemName=l,n._disabled=a.disabled,n[Se.children]=r(v)&&v.length>0?e(v):undefined,n))}))};return e(Ge)}),[Ge,Ye,te,Se.label,Se.children,Ae]);var Je=v.useCallbackRef((function(r){return new Promise((function(t,n){return new Promise((function(a,i){var l,s,o,u;if(r[Se.children]){t();return a()}var c=function(){try{return a()}catch(e){return i(e)}};var d=function(e){try{void y.error(e.message||"数据加载异常...");n();return c()}catch(e){return i(e)}};try{return Promise.resolve((l=e.loadDataServiceConfig)==null?void 0:l.onRequest==null?void 0:l.onRequest((s=e.loadDataServiceConfig)==null?void 0:s.getParams==null?void 0:s.getParams(r))).then((function(e){try{o=e;u=he.onRequestResultAdapter?he.onRequestResultAdapter(o):o;void Ce.treeListAppendChildren({value:r[Se.value],appendList:u,childrenName:Se.children,valueName:Se.value}).then((function(e){Me(e.treeList);t()}));return c()}catch(e){return d(e)}}),d)}catch(e){d(e)}}))}))}));var Qe=v.useCallbackRef((function(r){var t=r==null?void 0:r[Se.children];var n=e.loadDataFlag;var a=n?!r.isLeaf:false;var i=t&&t.length>0||a;return!i}));var Xe=v.useCallbackRef((function(r){var t,n,a;var i=r._treeItemName||r[Se.label];var l=fe==null?void 0:fe(p({},r,(t={},t[Se.label]=i,t)));if(l){return A(N,{children:[I("span",{className:"tree-item-title",children:(ue==null?void 0:ue(r))||(r==null?void 0:r[Se.label])}),I(k,p({gap:5},l,{dropdownMenuProps:p({placement:"bottomRight",isFixed:true},l==null?void 0:l.dropdownMenuProps),className:c("tree-item-title-operate",l.className)}))]})}if(Te==="fold"){var s;var o=[];if((s=e.menuOptions)!=null&&s.fold){var d,v,f;o=((d=e.menuOptions)==null?void 0:(v=d[Te])==null?void 0:v.call(d,p({},r,(f={},f[Se.label]=i,f))))||[]}else{var m;o=(e.getMenuOptions==null?void 0:e.getMenuOptions(p({},r,(m={},m[Se.label]=i,m))))||[]}return A(N,{children:[I("span",{className:"tree-item-title",children:(ue==null?void 0:ue(r))||(r==null?void 0:r[Se.label])}),o.length>0&&I(S,{menuList:o,placement:"bottomRight",children:I(u,{})})]})}var h=(n=e.menuOptions)==null?void 0:n.tile==null?void 0:n.tile(p({},r,(a={},a[Se.label]=i,a)));return A(N,{children:[I("span",{className:"tree-item-title",children:(ue==null?void 0:ue(r))||(r==null?void 0:r[Se.label])}),h?I(k,p({gap:5},h,{className:c("tree-item-title-operate",h.className)})):null]})}));var Ze=v.useDebounceCallback((function(r){Ie(r);e.onSearchValueChange==null?void 0:e.onSearchValueChange(r)}),300);var $e=v.useCallbackRef((function(e){Ze(e.target.value)}));var er=v.useCallbackRef((function(r){if(!e.icon)return null;if(q(e.icon))return e.icon;var t=Qe(r.data);return e.icon(p({},r,{isParent:!t,isLeaf:t}))}));var rr=w((function(){return{title:Se.label,key:Se.value,children:Se.children}}),[Se]);var tr=We.length>0&&we.requestStatus!=="request-error";var nr=p({showLine:{showLeafIcon:false},titleRender:Xe,blockNode:true,switcherIcon:I(o,{}),onDrop:function e(r){if(oe){var t=oe(r);if(!t)return}var n=z(Ge,Se,r),a=n.dataList,i=n.dragNodeData;se==null?void 0:se(i);Me(a)},expandedKeys:ye},pe,{fieldNames:rr,treeData:We,onExpand:ze,loadData:e.loadDataFlag?Je:undefined,style:{width:"100%"},icon:er});var ar={onCheck:He,checkable:Y,checkedKeys:Oe};var ir={onSelect:He,multiple:false,selectedKeys:Oe};var lr=Y?ar:ir;var sr=c("v-tree-wrapper","v-tree-wrapper-menu-"+Pe,de);var or=we.treeList.length>0&&!tr&&Ae;return A("div",{className:sr,style:i,children:[!!X&&A("div",{className:"v-tree-wrapper-search-area",style:ce,children:[I(P,{className:"v-tree-wrapper-search",placeholder:Z,onChange:$e,value:Q,allowClear:true}),!!e.searchExtraElement&&I("span",{className:"v-tree-wrapper-search-extra",children:e.searchExtraElement})]}),tr?A("div",{className:"v-tree-wrapper-tree-wrapper",children:[I(h,{spinning:we.requestStatus==="request-progress"}),I(g,p({},lr,nr,{className:"v-tree-wrapper-tree"}))]}):I(x,{status:we.requestStatus,loading:Ne,messageConfig:p({"request-success":or?"搜索结果为空":"暂无数据"},$),errorButton:I(b,{type:"primary",onClick:Ke,children:"重新获取数据"})})]})}));Y.defaultProps={disabledCanUse:true};var G=e.attachPropertiesToComponent(Y,{getTreeDataList:K});export{G as TreeWrapper};
|
|
16
16
|
//# sourceMappingURL=index.js.map
|
package/index.d.ts
CHANGED
|
@@ -43,7 +43,7 @@ export type ButtonWrapperProps = Omit<ButtonProps, "onClick"> & {
|
|
|
43
43
|
};
|
|
44
44
|
/**
|
|
45
45
|
* antd Button包装组件
|
|
46
|
-
* 1. 添加按钮 onClick 返回 Promise
|
|
46
|
+
* 1. 添加按钮 onClick 返回 Promise自动loading效果
|
|
47
47
|
* 2. 添加指定时间内重复点击无效(默认间隙时间500ms)
|
|
48
48
|
* @param props
|
|
49
49
|
* @returns
|
|
@@ -888,7 +888,22 @@ export type EasyTableFilterProps = {
|
|
|
888
888
|
formGridSize?: FormRowProps["gridSize"];
|
|
889
889
|
formClassName?: string;
|
|
890
890
|
};
|
|
891
|
-
export type
|
|
891
|
+
export type TEasyTableTableColumn<T> = ColumnsType<T>[0] & {
|
|
892
|
+
/**
|
|
893
|
+
* 会在 title 之后展示一个 icon,hover 之后提示一些信息
|
|
894
|
+
* ```
|
|
895
|
+
* 1. title为string类型有效
|
|
896
|
+
* 2. hoverArea 默认值:icon
|
|
897
|
+
* ```
|
|
898
|
+
*/
|
|
899
|
+
tooltip?: string | {
|
|
900
|
+
content: string;
|
|
901
|
+
icon?: ReactElement;
|
|
902
|
+
hoverArea?: "icon" | "all";
|
|
903
|
+
};
|
|
904
|
+
dataIndex: keyof T | (string & {});
|
|
905
|
+
};
|
|
906
|
+
export type EasyTableTableProps<T> = Omit<TableProps<TAny>, "dataSource" | "loading" | "rowKey" | "columns"> & {
|
|
892
907
|
children?: ReactElement | ReactElement[];
|
|
893
908
|
/**
|
|
894
909
|
* 表格行 key 的取值,
|
|
@@ -902,6 +917,7 @@ export type EasyTableTableProps = Omit<TableProps<TAny>, "dataSource" | "loading
|
|
|
902
917
|
rowKey: TableProps<TAny>["rowKey"];
|
|
903
918
|
tableWrapperStyle?: CSSProperties;
|
|
904
919
|
tableWrapperClassName?: string;
|
|
920
|
+
columns: TEasyTableTableColumn<T>[];
|
|
905
921
|
};
|
|
906
922
|
/**
|
|
907
923
|
* 对 查询条件+表格数据 进行深度封装,内置数据交互处理
|
|
@@ -958,7 +974,7 @@ export declare const EasyTable: import("react").ForwardRefExoticComponent<EasyTa
|
|
|
958
974
|
* 2. 分页功能已内置处理,不调用 onChange
|
|
959
975
|
* ```
|
|
960
976
|
*/
|
|
961
|
-
Table: (props: EasyTableTableProps) => JSX.Element;
|
|
977
|
+
Table: <T extends import("@flatbiz/utils").TPlainObject>(props: EasyTableTableProps<T>) => JSX.Element;
|
|
962
978
|
/**
|
|
963
979
|
* @deprecated 已过时 4.3.0版本移除,请使用 useEasyTable
|
|
964
980
|
*/
|
|
@@ -1286,6 +1302,18 @@ export type fieldConfigFunctionParams = {
|
|
|
1286
1302
|
* antd 默认render功能此处不能使用
|
|
1287
1303
|
*/
|
|
1288
1304
|
export type EditableTableColumn = Omit<ColumnsType["0"], "render"> & {
|
|
1305
|
+
/**
|
|
1306
|
+
* 会在 title 之后展示一个 icon,hover 之后提示一些信息
|
|
1307
|
+
* ```
|
|
1308
|
+
* 1. title为string类型有效
|
|
1309
|
+
* 2. hoverArea 默认值:icon
|
|
1310
|
+
* ```
|
|
1311
|
+
*/
|
|
1312
|
+
tooltip?: string | {
|
|
1313
|
+
content: string;
|
|
1314
|
+
icon?: ReactElement;
|
|
1315
|
+
hoverArea?: "icon" | "all";
|
|
1316
|
+
};
|
|
1289
1317
|
dataIndex?: string;
|
|
1290
1318
|
fieldConfig?: FieldSingleConfig | FormListConfig | ((data: fieldConfigFunctionParams) => FieldSingleConfig | FormListConfig);
|
|
1291
1319
|
/** 隐藏域字段 */
|
|
@@ -2087,7 +2115,7 @@ export type SimpleLayoutProps = {
|
|
|
2087
2115
|
* layoutType 布局类型
|
|
2088
2116
|
* ```
|
|
2089
2117
|
* 1. layer:分层布局
|
|
2090
|
-
* 2. tight
|
|
2118
|
+
* 2. tight:紧凑布局(没有外边距)
|
|
2091
2119
|
* ```
|
|
2092
2120
|
*/
|
|
2093
2121
|
layoutType?: "layer" | "tight";
|
|
@@ -2102,6 +2130,12 @@ export type SimpleLayoutProps = {
|
|
|
2102
2130
|
titleExtra?: string | ReactElement;
|
|
2103
2131
|
hidden?: boolean;
|
|
2104
2132
|
titleFixed?: boolean;
|
|
2133
|
+
/**
|
|
2134
|
+
* 间距尺寸
|
|
2135
|
+
* 1. default = 15
|
|
2136
|
+
* 2. small = 8
|
|
2137
|
+
*/
|
|
2138
|
+
size?: "default" | "small";
|
|
2105
2139
|
};
|
|
2106
2140
|
/**
|
|
2107
2141
|
* 简单布局
|
|
@@ -2110,7 +2144,7 @@ export type SimpleLayoutProps = {
|
|
|
2110
2144
|
* ```
|
|
2111
2145
|
* 1. layoutType 布局类型
|
|
2112
2146
|
* layer:分层布局
|
|
2113
|
-
* tight
|
|
2147
|
+
* tight:紧凑布局(没有外边距)
|
|
2114
2148
|
* ```
|
|
2115
2149
|
*/
|
|
2116
2150
|
export declare const SimpleLayout: {
|
|
@@ -2165,7 +2199,43 @@ export type SwitchConfirmWrapperProps = Omit<SwitchProps, "defaultChecked" | "on
|
|
|
2165
2199
|
* @param serviceConfig onRequest
|
|
2166
2200
|
* @field onRequest 请求函数
|
|
2167
2201
|
* @field message message配置 success defaultError
|
|
2168
|
-
*
|
|
2202
|
+
* ```
|
|
2203
|
+
* 1. 单独使用
|
|
2204
|
+
* <SwitchConfirmWrapper
|
|
2205
|
+
* value={value}
|
|
2206
|
+
* checkedValue={'1'}
|
|
2207
|
+
* unCheckedValue={'2'}
|
|
2208
|
+
* serviceConfig={{
|
|
2209
|
+
* onRequest: async () => {
|
|
2210
|
+
* await sleep(2000);
|
|
2211
|
+
* },
|
|
2212
|
+
* }}
|
|
2213
|
+
* needConfirm={'all'}
|
|
2214
|
+
* popConfirmProps={{
|
|
2215
|
+
* title: '确定要开启吗?',
|
|
2216
|
+
* }}
|
|
2217
|
+
* onChange={(value) => {
|
|
2218
|
+
* setValue(value as string);
|
|
2219
|
+
* }}
|
|
2220
|
+
* />
|
|
2221
|
+
*
|
|
2222
|
+
* 2. 与Form.Item结合使用
|
|
2223
|
+
* <Form.Item name="open">
|
|
2224
|
+
* <SwitchConfirmWrapper
|
|
2225
|
+
* checkedValue={'1'}
|
|
2226
|
+
* unCheckedValue={'2'}
|
|
2227
|
+
* serviceConfig={{
|
|
2228
|
+
* onRequest: async () => {
|
|
2229
|
+
* await sleep(2000);
|
|
2230
|
+
* },
|
|
2231
|
+
* }}
|
|
2232
|
+
* needConfirm={'all'}
|
|
2233
|
+
* popConfirmProps={{
|
|
2234
|
+
* title: '确定要开启吗?',
|
|
2235
|
+
* }}
|
|
2236
|
+
* />
|
|
2237
|
+
* </Form.Item>
|
|
2238
|
+
* ```
|
|
2169
2239
|
*/
|
|
2170
2240
|
export declare const SwitchConfirmWrapper: (props: SwitchConfirmWrapperProps) => JSX.Element;
|
|
2171
2241
|
export type SwitchWrapperValue = string | number | boolean;
|
|
@@ -2357,13 +2427,19 @@ export declare const TableScrollbar: ({ children, target, ...props }: TableScrol
|
|
|
2357
2427
|
export type TableTitleTooltipProps = {
|
|
2358
2428
|
title: string;
|
|
2359
2429
|
tooltip: string | {
|
|
2360
|
-
icon
|
|
2430
|
+
icon?: ReactElement;
|
|
2361
2431
|
content?: string;
|
|
2432
|
+
hoverArea?: "icon" | "all";
|
|
2362
2433
|
};
|
|
2363
2434
|
gap?: number;
|
|
2364
2435
|
className?: string;
|
|
2365
2436
|
style?: CSSProperties;
|
|
2366
2437
|
};
|
|
2438
|
+
/**
|
|
2439
|
+
* title + tooltip
|
|
2440
|
+
* @param props
|
|
2441
|
+
* @returns
|
|
2442
|
+
*/
|
|
2367
2443
|
export declare const TableTitleTooltip: (props: TableTitleTooltipProps) => JSX.Element;
|
|
2368
2444
|
export type TabsWrapperProps = TabsProps & {
|
|
2369
2445
|
/**
|
|
@@ -2553,7 +2629,7 @@ export type TreeSelectorServiceConfig = {
|
|
|
2553
2629
|
*/
|
|
2554
2630
|
onRequestResultAdapter?: (respData: TAny) => TPlainObject[];
|
|
2555
2631
|
};
|
|
2556
|
-
export type TreeSelectorWrapperProps = Omit<TreeSelectProps, "treeExpandedKeys" | "treeData" | "loading" | "onTreeExpand" | "onChange" | "value" | "fieldNames"> & {
|
|
2632
|
+
export type TreeSelectorWrapperProps = Omit<TreeSelectProps, "treeExpandedKeys" | "treeData" | "loading" | "onTreeExpand" | "onChange" | "value" | "fieldNames" | "defaultValue" | "treeDataSimpleMode"> & {
|
|
2557
2633
|
modelKey: string;
|
|
2558
2634
|
fieldNames?: {
|
|
2559
2635
|
label?: string;
|
|
@@ -2592,6 +2668,7 @@ export type TreeSelectorWrapperProps = Omit<TreeSelectProps, "treeExpandedKeys"
|
|
|
2592
2668
|
*/
|
|
2593
2669
|
showAllOption?: true | TPlainObject<string | number>;
|
|
2594
2670
|
/**
|
|
2671
|
+
* @deprecated 已过期,请使用onChange
|
|
2595
2672
|
* 1. 当 treeCheckable = true && treeCheckStrictly = true,如果选择的数据中含有父节点,selectedValue、selectedList返回数据包含父节点
|
|
2596
2673
|
* 2. 当 treeCheckable = true && treeCheckStrictly = false,selectedValue、selectedList返回的数据不包含父节点
|
|
2597
2674
|
* 3. 当 treeCheckable = false,节点选择没有级联关系,selectedValue、selectedList返回的数据就是实际选择
|
|
@@ -2600,10 +2677,20 @@ export type TreeSelectorWrapperProps = Omit<TreeSelectProps, "treeExpandedKeys"
|
|
|
2600
2677
|
* 6. triggerInfo 当前操作节点数据
|
|
2601
2678
|
*/
|
|
2602
2679
|
onChangeHandle?: (selectedValue?: TreeSelectorWrapperValue, selectedData?: TPlainObject[] | TPlainObject, triggerInfo?: TPlainObject) => void;
|
|
2680
|
+
/**
|
|
2681
|
+
* 1. 当 treeCheckable = true && treeCheckStrictly = true,如果选择的数据中含有父节点,selectedValue、selectedList返回数据包含父节点
|
|
2682
|
+
* 2. 当 treeCheckable = true && treeCheckStrictly = false,selectedValue、selectedList返回的数据不包含父节点
|
|
2683
|
+
* 3. 当 treeCheckable = false,节点选择没有级联关系,selectedValue、selectedList返回的数据就是实际选择
|
|
2684
|
+
* 4. selectAllDataList 返回的数据都包含父节点
|
|
2685
|
+
* 5. 使用 onTreeItemAdapter 拼接label数据后,选中回填数据也是拼接后的
|
|
2686
|
+
* 6. triggerInfo 当前操作节点数据
|
|
2687
|
+
*/
|
|
2688
|
+
onChange?: (selectedValue?: TreeSelectorWrapperValue, selectedData?: TPlainObject[] | TPlainObject, triggerInfo?: TPlainObject) => void;
|
|
2603
2689
|
/**
|
|
2604
2690
|
* tree item 数据适配器
|
|
2605
2691
|
*/
|
|
2606
2692
|
onTreeItemDataAdapter?: (dataItem: TPlainObject) => TPlainObject;
|
|
2693
|
+
/** 自定义异常提示文案 */
|
|
2607
2694
|
requestMessageConfig?: TRequestStatusProps["messageConfig"];
|
|
2608
2695
|
/**
|
|
2609
2696
|
* value格式
|
|
@@ -2633,6 +2720,8 @@ export type TreeSelectorWrapperProps = Omit<TreeSelectProps, "treeExpandedKeys"
|
|
|
2633
2720
|
* treeCheckStrictly = true模式下有效,点击父节点是否选中所有子节点,默认值:true
|
|
2634
2721
|
*/
|
|
2635
2722
|
selectedParentCheckedAllChildrenList?: boolean;
|
|
2723
|
+
/** 有唯一跟节点时,初始化是否展开,默认值:false */
|
|
2724
|
+
initRootExpand?: boolean;
|
|
2636
2725
|
};
|
|
2637
2726
|
/**
|
|
2638
2727
|
* 树选择器包装组件,由于过度封装,部分antd TreeSelect原始功能不支持,不满足情况的请使用antd TreeSelect实现
|
package/package.json
CHANGED
|
@@ -1,3 +0,0 @@
|
|
|
1
|
-
/*! @flatjs/forge MIT @flatbiz/antd */
|
|
2
|
-
import{classNames as e}from"@dimjs/utils/cjs/class-names";import r from"@ant-design/icons/es/icons/ExclamationCircleFilled";import{_ as o,a as n}from"./_rollupPluginBabelHelpers-1f4d8910.js";import{hooks as i}from"@wove/react/cjs/hooks";import{Dropdown as t}from"antd";import{Fragment as a,useMemo as s,createElement as l}from"react";import{B as m}from"./button-wrapper-125fce50.js";import{d}from"./dialog-confirm-74fc9337.js";import{f}from"./fba-utils-f9e11d02.js";import{F as u}from"./flex-layout-8d2b668b.js";import{jsxs as c,jsx as p}from"react/jsx-runtime";function v(e){var r=true;var o=false;while(r){if(e.tagName==="HTML"||e.tagName==="BODY"){r=false;o=false}else{var n=window.getComputedStyle(e),i=n.position;if(i==="sticky"){o=true;r=false}else{if(!e||!e.parentNode){r=false}else{e=e.parentNode}}}}return o}var g=["menuList"],h=["text","permission","needConfirm","confirmMessage","hidden","type","confirmModalProps"];var y=function y(C){var k=C.menuList,P=o(C,g);var x=i.useId(undefined,"DropdownMenuWrapper");var w=i.useCallbackRef((function(e,o){o.stopPropagation();if(e.needConfirm){var i;d.open(n({title:c(u,{direction:"horizontal",fullIndex:1,gap:8,children:[p(r,{style:{color:"#faad14"}}),p("span",{children:e.text})]}),content:p(a,{children:e.confirmMessage}),onOk:(i=e.onClick)==null?void 0:i.bind(null,o),okButtonProps:{loadingPosition:"center"}},e.confirmModalProps));return Promise.resolve()}return e.onClick==null?void 0:e.onClick(o)}));var M=document.querySelector("."+x);var j=s((function(){if(C.isFixed||M&&v(M)){return undefined}return M}),[C.isFixed,M]);var b=s((function(){var r=[];k.filter(Boolean).forEach((function(i,t){if(!i)return;var a=i.text,s=i.permission,d=i.needConfirm,u=i.confirmMessage,c=i.hidden,p=i.type,v=i.confirmModalProps,g=o(i,h);if(c)return;if(s&&!f.hasPermission(s))return;var y=p||"link";var C=g.color?false:d;r.push({key:t,label:l(m,n({loadingPosition:"center",size:"small",danger:C},g,{className:e("dmw-item-button",g.className),type:y,key:t,onClick:w.bind(null,n({},i,{needConfirm:d,confirmMessage:u,confirmModalProps:v}))}),a)})}));return r}),[k,w]);return p("div",{className:e("dropdown-menu-wrapper",x),style:{position:"relative"},children:p(t,n({trigger:(P==null?void 0:P.trigger)||["hover"],getPopupContainer:j?function(){return M}:undefined,arrow:{pointAtCenter:true}},P,{overlayStyle:n({zIndex:9},P.overlayStyle),menu:{items:b},children:C.children}))})};export{y as D};
|
|
3
|
-
//# sourceMappingURL=dropdown-menu-wrapper-016a83b6.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"dropdown-menu-wrapper-016a83b6.js","sources":["@flatbiz/antd/src/dropdown-menu-wrapper/utils.ts","@flatbiz/antd/src/dropdown-menu-wrapper/dropdown-menu-wrapper.tsx"],"sourcesContent":["export function parentsHasSticky(node: Element) {\n let condition = true;\n let result = false;\n while (condition) {\n if (node.tagName === 'HTML' || node.tagName === 'BODY') {\n condition = false;\n result = false;\n } else {\n const { position } = window.getComputedStyle(node);\n if (position === 'sticky') {\n result = true;\n condition = false;\n } else {\n if (!node || !node.parentNode) {\n condition = false;\n } else {\n node = node.parentNode as Element;\n }\n }\n }\n }\n return result;\n}\n","import { ExclamationCircleFilled } from '@ant-design/icons';\nimport { classNames } from '@dimjs/utils';\nimport { hooks } from '@wove/react';\nimport { ButtonProps, Dropdown, DropdownProps } from 'antd';\nimport { ItemType } from 'antd/lib/menu/hooks/useItems';\nimport { Fragment, ReactElement, useMemo } from 'react';\nimport { ButtonWrapper } from '../button-wrapper';\nimport { dialogConfirm } from '../dialog-confirm';\nimport { DialogModalProps } from '../dialog-modal';\nimport { fbaUtils } from '../fba-utils';\nimport { FlexLayout } from '../flex-layout';\nimport './style.less';\nimport { parentsHasSticky } from './utils';\n\nexport interface DropdownMenuItem extends ButtonProps {\n text?: string | ReactElement;\n color?: string;\n onClick?: (event: React.MouseEvent<HTMLElement>) => void | Promise<void>;\n permission?: string;\n needConfirm?: boolean;\n confirmMessage?: string;\n hidden?: boolean;\n confirmModalProps?: DialogModalProps;\n}\n\nexport interface DropdownMenuWrapperProps extends Omit<DropdownProps, 'menu'> {\n menuList: Array<DropdownMenuItem | null>;\n /** dropdown 设置弹框根节点在body下 */\n isFixed?: boolean;\n}\n\n/**\n * DropdownMenuWrapper\n * 升级 antd 5.5.1 后,Dropdown 中 Popconfirm弹框使用存在问题,所以在 @flatbiz/antd@4.2.49版本修改为使用dialogConfirm组件实现二次弹框确认功能\n * @param props\n * @returns\n * ```\n * 1. Dropdown默认弹框根节点在组件内部,通过isFixed=true可设置弹框根节点在body下\n * ```\n */\nexport const DropdownMenuWrapper = (props: DropdownMenuWrapperProps) => {\n const { menuList, ...dropdownOtherProps } = props;\n const clsName = hooks.useId(undefined, 'DropdownMenuWrapper');\n\n const onClick = hooks.useCallbackRef((item: DropdownMenuItem, event) => {\n event.stopPropagation();\n if (item.needConfirm) {\n dialogConfirm.open({\n title: (\n <FlexLayout direction=\"horizontal\" fullIndex={1} gap={8}>\n <ExclamationCircleFilled style={{ color: '#faad14' }} />\n <span>{item.text}</span>\n </FlexLayout>\n ),\n content: <Fragment>{item.confirmMessage}</Fragment>,\n onOk: item.onClick?.bind(null, event),\n okButtonProps: {\n loadingPosition: 'center',\n },\n ...item.confirmModalProps,\n });\n return Promise.resolve();\n }\n return item.onClick?.(event);\n });\n\n const target = document.querySelector(`.${clsName}`);\n const container = useMemo(() => {\n if (props.isFixed || (target && parentsHasSticky(target))) {\n return undefined;\n }\n return target;\n }, [props.isFixed, target]);\n\n const menuItems = useMemo(() => {\n const menuItemsNew: ItemType[] = [];\n menuList.filter(Boolean).forEach((item, index) => {\n if (!item) return;\n const {\n text,\n permission,\n needConfirm,\n confirmMessage,\n hidden,\n type,\n confirmModalProps,\n ...otherProps\n } = item;\n if (hidden) return;\n if (permission && !fbaUtils.hasPermission(permission)) return;\n const buttonType = type || 'link';\n const danger = otherProps.color ? false : needConfirm;\n menuItemsNew.push({\n key: index,\n label: (\n <ButtonWrapper\n loadingPosition=\"center\"\n size=\"small\"\n danger={danger}\n {...otherProps}\n className={classNames('dmw-item-button', otherProps.className)}\n type={buttonType}\n key={index}\n onClick={onClick.bind(null, {\n ...item,\n needConfirm,\n confirmMessage,\n confirmModalProps,\n })}\n >\n {text}\n </ButtonWrapper>\n ),\n });\n });\n return menuItemsNew;\n }, [menuList, onClick]);\n\n return (\n <div className={classNames('dropdown-menu-wrapper', clsName)} style={{ position: 'relative' }}>\n <Dropdown\n trigger={dropdownOtherProps?.trigger || ['hover']}\n getPopupContainer={container ? () => target as HTMLElement : undefined}\n arrow={{ pointAtCenter: true }}\n {...dropdownOtherProps}\n overlayStyle={{ zIndex: 9, ...dropdownOtherProps.overlayStyle }}\n menu={{ items: menuItems }}\n >\n {props.children}\n </Dropdown>\n </div>\n );\n};\n"],"names":["parentsHasSticky","node","condition","result","tagName","_window$getComputedSt","window","getComputedStyle","position","parentNode","DropdownMenuWrapper","props","menuList","dropdownOtherProps","_objectWithoutPropertiesLoose","_excluded","clsName","_hooks","useId","undefined","onClick","useCallbackRef","item","event","stopPropagation","needConfirm","_item$onClick","dialogConfirm","open","_extends","title","_jsxs","FlexLayout","direction","fullIndex","gap","children","_jsx","_ExclamationCircleFilled","style","color","text","content","Fragment","confirmMessage","onOk","bind","okButtonProps","loadingPosition","confirmModalProps","Promise","resolve","target","document","querySelector","container","useMemo","isFixed","menuItems","menuItemsNew","filter","Boolean","forEach","index","permission","hidden","type","otherProps","_excluded2","fbaUtils","hasPermission","buttonType","danger","push","key","label","_createElement","ButtonWrapper","size","className","_classNames","Dropdown","trigger","getPopupContainer","arrow","pointAtCenter","overlayStyle","zIndex","menu","items"],"mappings":"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"}
|
|
@@ -1,3 +0,0 @@
|
|
|
1
|
-
/*! @flatjs/forge MIT @flatbiz/antd */
|
|
2
|
-
import e from"@ant-design/icons/es/icons/PlusOutlined";import{a as n,_ as r}from"./_rollupPluginBabelHelpers-1f4d8910.js";import{arrayField2LabelValue as a,toArray as l}from"@flatbiz/utils";import{Form as i,Checkbox as t,Tag as o,InputNumber as d,Radio as u,Space as m,Button as f,Input as c,Table as s}from"antd";import{useMemo as v,useState as p,useEffect as g,Fragment as b}from"react";import{B as C}from"./button-wrapper-125fce50.js";import{isArray as h}from"@dimjs/lang/cjs/is-array";import{extend as I}from"@dimjs/utils/cjs/extend";import{classNames as w}from"@dimjs/utils/cjs/class-names";import{hooks as x}from"@wove/react/cjs/hooks";import{jsx as R,jsxs as N,Fragment as P}from"react/jsx-runtime";import{D as y}from"./date-picker-wrapper-ba650858.js";import{D as j}from"./date-range-picker-wrapper-fb15c592.js";import{I as k}from"./input-wrapper-b378eb5a.js";import{fbaHooks as F}from"./fba-hooks/index.js";import{S as L}from"./selector-wrapper-91427b7d.js";import{isBoolean as T}from"@dimjs/lang/cjs/is-boolean";import{isNumber as A}from"@dimjs/lang/cjs/is-number";import{isString as O}from"@dimjs/lang/cjs/is-string";import{I as B}from"./input-text-area-wrapper-c958fba0.js";import{U as S}from"./upload-wrapper-bd9ef592.js";import V from"@ant-design/icons/es/icons/DeleteOutlined";var _=function e(n,r){return typeof n==="boolean"?n:n==null?void 0:n({tableRowIndex:r})};var G=function e(r){var a=r.fieldConfig,l=a.editableConfig,i=a.editable,d=a.render;var u=l.editableComptProps;var m=v((function(){if(i)return[];var e=h(r.value)?r.value:[];var n=u.options||[];if(!h(n)||n.length===0){return e.map((function(e){return{label:e,value:e}}))}var a=[];e.forEach((function(e){var r=n.find((function(n){return n.value===e}));a.push(r?r:{label:e,value:e})}));return a}),[i,u.options,r.value]);var f=x.useCallbackRef((function(e){r.onChange==null?void 0:r.onChange(e);u.onChange==null?void 0:u.onChange(e)}));if(i){return R(t.Group,n({},u,{value:r.value,onChange:f}))}return R("span",{className:"editable-checkbox-group-view",children:d?d(r.value):m.map((function(e,n){return R(o,{color:"#1890ff",children:e.label},n)}))})};var W=function e(r){var a=r.fieldConfig.formItemProps;return R(i.Item,n({},a,{name:r.name,className:w("editable-checkbox-group-form-item",a==null?void 0:a.className),children:R(G,n({},r))}))};var D=function e(r){var a=r.fieldConfig,l=a.formItemProps,t=a.editableConfig;return R(i.Item,n({},l,{name:r.name,className:w("editable-date-picker-wraper-form-item",l==null?void 0:l.className),children:R(y,n({allowClear:true},t.editableComptProps))}))};var E=function e(r){var a=r.fieldConfig,l=a.editableConfig,i=a.editable,t=a.render;var o=l.editableComptProps;var d=x.useCallbackRef((function(e){r.onChange==null?void 0:r.onChange(e);o==null?void 0:o.onChange==null?void 0:o.onChange(e)}));var u=v((function(){var e=h(r.value)?r.value:[];if(i)return undefined;return e.join("~")}),[i,r.value]);if(i){return R(j,n({allowClear:true},o,{value:r.value,onChange:d}))}return R("span",{className:"editable-date-range-picker-view",children:t?t(r.value):u})};var z=function e(r){var a=r.fieldConfig.formItemProps;return R(i.Item,n({},a,{name:r.name,className:w("editable-date-range-picker-wraper-form-item",a==null?void 0:a.className),children:R(E,n({},r))}))};var M=function e(r){var a=r.fieldConfig,l=a.formItemProps,t=a.editableConfig;return R(i.Item,n({},l,{name:r.name,children:R(k,n({allowClear:true},t.editableComptProps))}))};var H=function e(r){var a=r.fieldConfig,l=a.formItemProps,t=a.editableConfig;return R(i.Item,n({},l,{name:r.name,className:w("editable-input-number-form-item",l==null?void 0:l.className),children:R(d,n({},t.editableComptProps))}))};var J=function e(r){var a=r.fieldConfig,l=a.editableConfig,i=a.editable,t=a.render;var d=l.editableComptProps;var m=F.useThemeToken();var f=v((function(){if(i)return[];var e=r.value;var n=d.options||[];if(!h(n)||n.length===0){return e}var a=n.find((function(n){return n.value===e}));return(a==null?void 0:a.label)||e}),[i,d.options,r.value]);var c=x.useCallbackRef((function(e){r.onChange==null?void 0:r.onChange(e.target.value);d.onChange==null?void 0:d.onChange(e)}));if(i){return R(u.Group,n({},d,{value:r.value,onChange:c}))}return R("span",{className:"editable-radio-group-view",children:t?t(r.value):f?R(o,{color:m.colorPrimary,children:f}):null})};var K=function e(r){var a=r.fieldConfig.formItemProps;return R(i.Item,n({},a,{name:r.name,className:w("editable-radio-group-form-item",a==null?void 0:a.className),children:R(J,n({},r))}))};var U=function e(r){var l=r.fieldConfig,i=l.editableConfig,t=l.editable,d=l.render;var u=i.editableComptProps;var m=p([]),f=m[0],c=m[1];var s=p([]),v=s[0],C=s[1];var I=F.useThemeToken();g((function(){if(!t){var e=h(r.value)?r.value:r.value===undefined?[]:[r.value];if(f.length===0){C(e.map((function(e){return{label:e,value:e}})))}var n=[];e.forEach((function(e){var r=f.find((function(n){return n.value===e}));n.push(r?r:{label:String(e),value:e})}));C(n)}}),[t,u.fieldNames,r.value,f]);var w=x.useCallbackRef((function(e){c(a(e||[],u.fieldNames))}));var P=x.useCallbackRef((function(e,n){r.onChange==null?void 0:r.onChange(e);u.onChange==null?void 0:u.onChange(e,n)}));if(t){return R(L,n({},u,{value:r.value,onChange:P,onSelectorListAllChange:w}))}return N(b,{children:[R("div",{style:{display:"none"},children:R(L,n({},u,{onSelectorListAllChange:w}))}),R("span",{className:"editable-selector-view",children:d?d(r.value,f):v.map((function(e,n){return R(o,{color:I.colorPrimary,children:e.label},n)}))})]})};var q=function e(r){var a=r.fieldConfig.formItemProps;return R(i.Item,n({},a,{name:r.name,className:w("editable-selector-wrapper-form-item",a==null?void 0:a.className),children:R(U,n({},r))}))};var Q=function e(n){var r,a;var l=v((function(){var e;if((e=n.fieldConfig)!=null&&e.render)return undefined;var r=O(n.value)||A(n.value)||T(n.value)||!n.value;if(!r){console.warn("Form.List name:【"+n.name+"】数据【"+JSON.stringify(n.value)+"】不能渲染在页面中")}return r?n.value:undefined}),[(r=n.fieldConfig)==null?void 0:r.render,n.name,n.value]);var i=((a=n.fieldConfig)==null?void 0:a.render==null?void 0:a.render(n.value))||l;return R("span",{children:i})};var X=function e(n){return R(i.Item,{noStyle:true,name:n.name,children:R(Q,{name:n.name,fieldConfig:n.fieldConfig})})};var Y=function e(r){var a=r.fieldConfig,l=a.formItemProps,t=a.editableConfig;return R(i.Item,n({},l,{name:r.name,children:R(B,n({},t.editableComptProps))}))};var Z=["children"];var $=function e(a){var l=a.fieldConfig,i=l.editableConfig,t=l.render,o=l.editable;var d=i.editableComptProps,u=d.children,m=r(d,Z);if(o){return R(S,n({listType:"text"},m,{value:a.value,onChange:a.onChange,children:u}))}return R("div",{className:"upload-wrapper-selector-view",children:t?t(a.value):R(S,n({listType:"text"},m,{value:a.value,disabled:true}))})};var ee=function e(r){var a=r.fieldConfig.formItemProps;return R(i.Item,n({},a,{name:r.name,className:w("editable-upload-wrapper-form-item",a==null?void 0:a.className),children:R($,n({},r))}))};var ne=function e(r){var a=r.fieldConfig,l=a.editableConfig,i=a.editable;var t=_(i,r.tableRowIndex);var o=I({},r.fieldConfig,{editable:t});var d={name:r.name,fieldConfig:o};if((l==null?void 0:l.type)==="input"&&t){return R(M,n({},d))}else if((l==null?void 0:l.type)==="inputNumber"&&t){return R(H,n({},d))}else if((l==null?void 0:l.type)==="textArea"&&t){return R(Y,n({},d))}else if((l==null?void 0:l.type)==="datePickerWrapper"&&t){return R(D,n({},d))}else if((l==null?void 0:l.type)==="dateRangePickerWrapper"){return R(z,n({},d))}else if((l==null?void 0:l.type)==="selectorWrapper"){return R(q,n({},d))}else if((l==null?void 0:l.type)==="checkboxGroup"){return R(W,n({},d))}else if((l==null?void 0:l.type)==="radioGroup"){return R(K,n({},d))}else if((l==null?void 0:l.type)==="uploadWrapper"){return R(ee,n({},d))}else if((l==null?void 0:l.type)==="custom"){return l.editableComptProps({name:r.name,editable:t,completeName:r.completeName,tableRowIndex:r.tableRowIndex})}return R(X,n({},d))};var re=function e(n){var r=i.useFormInstance();var a=n.formListConfig,l=a.onFormListBeforeRender,t=a.editableConfigList,o=a.onFormListAfterRender,d=a.onFormListItemBeforeRender,u=a.onFormListItemAfterRender,f=a.deleteOperateRender;return R(i.List,{name:n.name,children:function e(a,i){var c=i.add,s=i.remove;return N(P,{children:[l?l({tableRowIndex:n.tableRowIndex,add:c,get value(){return r.getFieldValue(n.completeName)}}):null,a.map((function(e,a){var l=t.find((function(e){return _(e.editable,n.tableRowIndex)}));var i=w("editable-inner-formlist-item","editable-inner-formlist-item-"+n.name[1],{"editable-inner-formlist-item_preview":!l});return N("div",{className:i,children:[d==null?void 0:d({add:c,remove:function e(){s(a)},formListItemIndex:a,tableRowIndex:n.tableRowIndex,get value(){return r.getFieldValue([].concat(n.completeName,[e.name]))}}),N(m,{children:[t.map((function(r,a){return R(ne,{name:[e.name,r.fieldName],fieldConfig:r,tableRowIndex:n.tableRowIndex,completeName:[].concat(n.completeName,[e.name])},a)})),l?R(ae,{deleteOperateRender:f,remove:function e(){s(a)},index:a}):undefined]}),u==null?void 0:u({add:c,formListItemIndex:a,tableRowIndex:n.tableRowIndex,remove:function e(){s(a)},get value(){return r.getFieldValue([].concat(n.completeName,[e.name]))}})]},a)})),o?o({tableRowIndex:n.tableRowIndex,add:c,get value(){return r.getFieldValue(n.completeName)}}):null]})}})};var ae=function e(n){return R(i.Item,{children:n.deleteOperateRender?n.deleteOperateRender({remove:n.remove,formListItemIndex:n.index}):R(f,{type:"link",danger:true,icon:R(V,{}),onClick:n.remove,children:"删除"})})};var le=function e(n){if(n.fieldConfig){if(h(n.fieldConfig["editableConfigList"])){var r=n.fieldConfig;return R(re,{name:n.name,completeName:n.completeName,formListConfig:r,tableRowIndex:n.tableRowIndex})}else{return N(b,{children:[R(ne,{name:n.name,fieldConfig:n.fieldConfig,tableRowIndex:n.tableRowIndex,completeName:n.completeName}),n.hiddenField?R(i.Item,{hidden:true,name:n.hiddenField.dataIndex,children:R(c,{})}):null]})}}return R(X,{name:n.name})};var ie=["fieldConfig","renderMiddleware"];var te=function a(t){var o;var d=v((function(){if(!t.columns)return[];return t.columns.map((function(e){var a=e.fieldConfig,i=e.renderMiddleware,o=r(e,ie);return n({onCell:function e(){var n;return{valign:((n=t.tableProps)==null?void 0:n.cellVerticalAlign)||"middle"}}},o,{_render:function n(r,o,d){var u=[].concat(l(t.name),[o.name]);var m=e.dataIndex?[].concat(u,[e.dataIndex]):u;var f=i==null?void 0:i({name:m,tableRowIndex:o.name,operation:o.operation,tableRowName:u,index:d});if(f){return f}var c=typeof a==="function"?a({name:m,tableRowIndex:o.name,tableRowName:u}):a;return R(le,{name:e.dataIndex?[o.name,e.dataIndex]:[o.name],completeName:m,fieldConfig:c,tableRowIndex:o.name,hiddenField:e.hiddenField})},get render(){return this._render},set render(e){this._render=e}})}))}),[t.columns,t.name,(o=t.tableProps)==null?void 0:o.cellVerticalAlign]);return R("div",{className:"editable-table",children:R(i.List,{name:t.name,rules:t.rules,children:function r(a,l){return N(b,{children:[t.onTableBeforeRender?t.onTableBeforeRender(l,a.length):null,R(s,n({scroll:{x:"max-content"},pagination:false,rowKey:"key"},t.tableProps,{dataSource:a.map((function(e){return n({},e,{operation:l})})),columns:d})),t.onTableAfterRender?t.onTableAfterRender(l,a.length):R(C,{type:"dashed",hidden:t.hiddenFooterBtn,onClick:function e(){return l.add()},block:true,icon:R(e,{}),style:{marginTop:15},children:"新增"})]})}})})};export{te as E};
|
|
3
|
-
//# sourceMappingURL=editable-table-392040f7.js.map
|
|
@@ -1,3 +0,0 @@
|
|
|
1
|
-
/*! @flatjs/forge MIT @flatbiz/antd */
|
|
2
|
-
import{isArray as e}from"@dimjs/lang/cjs/is-array";import{extend as t}from"@dimjs/utils/cjs/extend";import{classNames as l}from"@dimjs/utils/cjs/class-names";import{Space as i}from"antd";import{Fragment as s}from"react";import{fbaHooks as a}from"./fba-hooks/index.js";import{jsx as r,jsxs as m}from"react/jsx-runtime";var d=function d(c){var n=c.formLabelAlign||"right";var o=l("simple-layout",{"simple-layout-tight":c.layoutType==="tight","simple-layout-formlabel-left":n==="left","simple-layout-title-fixed":c.titleFixed},c.className);var u=a.useThemeToken();var y=t({"--simple-layout-colorPrimary":u.colorPrimary},c.style,{padding:c.padding,width:c.width});if(c.hidden)return r(s,{});return m("div",{className:o,style:y,children:[c.title&&c.titleExtra?r("div",{className:l({"simple-layout-title-sign":c.titleLeftLine}),style:c.titleStyle,children:m(i,{className:"simple-layout-title-extra-space",children:[r("div",{className:"simple-layout-title",children:c.title}),r("div",{className:"simple-layout-title-extra",children:c.titleExtra})]})}):null,c.title&&!c.titleExtra?r("div",{className:l("simple-layout-title",{"simple-layout-title-sign":c.titleLeftLine}),style:c.titleStyle,children:c.title}):null,c.desc&&!e(c.desc)?r("div",{className:"simple-layout-desc",children:c.desc}):null,c.desc&&e(c.desc)?r("div",{className:"simple-layout-desc",children:r(i,{direction:"vertical",size:5,children:c.desc.map((function(e,t){return r(s,{children:e},t)}))})}):null,c.children?r("div",{className:"simple-layout-content",style:c.contentStyle,children:c.children}):null]})};d.defaultProps={titleLeftLine:true,layoutType:"layer"};export{d as S};
|
|
3
|
-
//# sourceMappingURL=simple-layout-1cd0fefc.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"simple-layout-1cd0fefc.js","sources":["@flatbiz/antd/src/simple-layout/simple-layout.tsx"],"sourcesContent":["import { isArray } from '@dimjs/lang';\nimport { classNames, extend } from '@dimjs/utils';\nimport { Space } from 'antd';\nimport { CSSProperties, Fragment, ReactElement, ReactNode } from 'react';\nimport { fbaHooks } from '../fba-hooks';\nimport './style.less';\n\nexport type SimpleLayoutProps = {\n className?: string;\n style?: CSSProperties;\n title?: string | ReactElement;\n desc?: string | ReactElement | string[] | ReactElement[];\n formLabelAlign?: 'left' | 'right';\n /**\n * layoutType 布局类型\n * ```\n * 1. layer:分层布局\n * 2. tight:紧凑布局\n * ```\n */\n layoutType?: 'layer' | 'tight';\n titleLeftLine?: boolean;\n titleStyle?: CSSProperties;\n contentStyle?: CSSProperties;\n /** 优先级大于 style padding */\n padding?: CSSProperties['padding'];\n /** 优先级大于 style width */\n width?: CSSProperties['width'];\n children?: ReactNode | ReactNode[];\n titleExtra?: string | ReactElement;\n hidden?: boolean;\n titleFixed?: boolean;\n};\n\n/**\n * 简单布局\n * @param props\n * @returns\n * ```\n * 1. layoutType 布局类型\n * layer:分层布局\n * tight:紧凑布局\n * ```\n */\nexport const SimpleLayout = (props: SimpleLayoutProps) => {\n const labelAlign = props.formLabelAlign || 'right';\n const className = classNames(\n 'simple-layout',\n {\n 'simple-layout-tight': props.layoutType === 'tight',\n 'simple-layout-formlabel-left': labelAlign === 'left',\n 'simple-layout-title-fixed': props.titleFixed,\n },\n props.className,\n );\n\n const theme = fbaHooks.useThemeToken();\n const style = extend({ '--simple-layout-colorPrimary': theme.colorPrimary }, props.style, {\n padding: props.padding,\n width: props.width,\n });\n\n if (props.hidden) return <Fragment />;\n\n return (\n <div className={className} style={style}>\n {props.title && props.titleExtra ? (\n <div\n className={classNames({ 'simple-layout-title-sign': props.titleLeftLine })}\n style={props.titleStyle}\n >\n <Space className=\"simple-layout-title-extra-space\">\n <div className=\"simple-layout-title\">{props.title}</div>\n <div className=\"simple-layout-title-extra\">{props.titleExtra}</div>\n </Space>\n </div>\n ) : null}\n {props.title && !props.titleExtra ? (\n <div\n className={classNames('simple-layout-title', {\n 'simple-layout-title-sign': props.titleLeftLine,\n })}\n style={props.titleStyle}\n >\n {props.title}\n </div>\n ) : null}\n {props.desc && !isArray(props.desc) ? <div className=\"simple-layout-desc\">{props.desc}</div> : null}\n {props.desc && isArray(props.desc) ? (\n <div className=\"simple-layout-desc\">\n <Space direction=\"vertical\" size={5}>\n {(props.desc as string[]).map((item, index) => {\n return <Fragment key={index}>{item}</Fragment>;\n })}\n </Space>\n </div>\n ) : null}\n {props.children ? (\n <div className=\"simple-layout-content\" style={props.contentStyle}>\n {props.children}\n </div>\n ) : null}\n </div>\n );\n};\n\nSimpleLayout.defaultProps = {\n titleLeftLine: true,\n layoutType: 'layer',\n};\n"],"names":["SimpleLayout","props","labelAlign","formLabelAlign","className","_classNames","layoutType","titleFixed","theme","fbaHooks","useThemeToken","style","_extend","colorPrimary","padding","width","hidden","_jsx","Fragment","_jsxs","children","title","titleExtra","titleLeftLine","titleStyle","Space","desc","_isArray","direction","size","map","item","index","contentStyle","defaultProps"],"mappings":";kUA4CaA,EAAe,SAAfA,EAAgBC,GAC3B,IAAMC,EAAaD,EAAME,gBAAkB,QAC3C,IAAMC,EAAYC,EAChB,gBACA,CACE,sBAAuBJ,EAAMK,aAAe,QAC5C,+BAAgCJ,IAAe,OAC/C,4BAA6BD,EAAMM,YAErCN,EAAMG,WAGR,IAAMI,EAAQC,EAASC,gBACvB,IAAMC,EAAQC,EAAO,CAAE,+BAAgCJ,EAAMK,cAAgBZ,EAAMU,MAAO,CACxFG,QAASb,EAAMa,QACfC,MAAOd,EAAMc,QAGf,GAAId,EAAMe,OAAQ,OAAOC,EAACC,EAAW,CAAA,GAErC,OACEC,EAAA,MAAA,CAAKf,UAAWA,EAAWO,MAAOA,EAAMS,SAAA,CACrCnB,EAAMoB,OAASpB,EAAMqB,WACpBL,EAAA,MAAA,CACEb,UAAWC,EAAW,CAAE,2BAA4BJ,EAAMsB,gBAC1DZ,MAAOV,EAAMuB,WAAWJ,SAExBD,EAACM,EAAK,CAACrB,UAAU,kCAAiCgB,UAChDH,EAAA,MAAA,CAAKb,UAAU,sBAAqBgB,SAAEnB,EAAMoB,QAC5CJ,EAAA,MAAA,CAAKb,UAAU,4BAA2BgB,SAAEnB,EAAMqB,kBAGpD,KACHrB,EAAMoB,QAAUpB,EAAMqB,WACrBL,EAAA,MAAA,CACEb,UAAWC,EAAW,sBAAuB,CAC3C,2BAA4BJ,EAAMsB,gBAEpCZ,MAAOV,EAAMuB,WAAWJ,SAEvBnB,EAAMoB,QAEP,KACHpB,EAAMyB,OAASC,EAAQ1B,EAAMyB,MAAQT,EAAA,MAAA,CAAKb,UAAU,qBAAoBgB,SAAEnB,EAAMyB,OAAc,KAC9FzB,EAAMyB,MAAQC,EAAQ1B,EAAMyB,MAC3BT,EAAA,MAAA,CAAKb,UAAU,qBAAoBgB,SACjCH,EAACQ,EAAK,CAACG,UAAU,WAAWC,KAAM,EAAET,SAChCnB,EAAMyB,KAAkBI,KAAI,SAACC,EAAMC,GACnC,OAAOf,EAACC,EAAQ,CAAAE,SAAcW,GAARC,UAI1B,KACH/B,EAAMmB,SACLH,EAAA,MAAA,CAAKb,UAAU,wBAAwBO,MAAOV,EAAMgC,aAAab,SAC9DnB,EAAMmB,WAEP,OAGV,EAEApB,EAAakC,aAAe,CAC1BX,cAAe,KACfjB,WAAY"}
|
|
@@ -1,3 +0,0 @@
|
|
|
1
|
-
/*! @flatjs/forge MIT @flatbiz/antd */
|
|
2
|
-
import t from"@ant-design/icons/es/icons/QuestionCircleOutlined";import{isUndefinedOrNull as e}from"@flatbiz/utils";import{Tooltip as i,Space as n}from"antd";import{jsx as r,jsxs as s}from"react/jsx-runtime";var l=function l(a){var c=a.tooltip;var o=e(a.gap)?3:a.gap;if(typeof c==="string"){return r(i,{title:c,children:s(n,{size:o,className:a.className,style:a.style,children:[r("span",{children:a.title}),r("span",{style:{opacity:.7},children:r(t,{})})]})})}return r(i,{title:c.content,children:s(n,{size:o,className:a.className,style:a.style,children:[r("span",{children:a.title}),r("span",{children:c.icon})]})})};export{l as T};
|
|
3
|
-
//# sourceMappingURL=title-render-2874a932.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"title-render-2874a932.js","sources":["@flatbiz/antd/src/table-title-tooltip/title-render.tsx"],"sourcesContent":["import { QuestionCircleOutlined } from '@ant-design/icons';\nimport { isUndefinedOrNull } from '@flatbiz/utils';\nimport { Space, Tooltip } from 'antd';\nimport { CSSProperties, ReactElement } from 'react';\n\nexport type TableTitleTooltipProps = {\n title: string;\n tooltip: string | { icon: ReactElement; content?: string };\n // 间隙,默认值:3\n gap?: number;\n className?: string;\n style?: CSSProperties;\n};\n\nexport const TableTitleTooltip = (props: TableTitleTooltipProps) => {\n const tooltip = props.tooltip;\n const gap = isUndefinedOrNull(props.gap) ? 3 : props.gap;\n if (typeof tooltip === 'string') {\n return (\n <Tooltip title={tooltip}>\n <Space size={gap} className={props.className} style={props.style}>\n <span>{props.title}</span>\n <span style={{ opacity: 0.7 }}>\n <QuestionCircleOutlined />\n </span>\n </Space>\n </Tooltip>\n );\n }\n return (\n <Tooltip title={tooltip.content}>\n <Space size={gap} className={props.className} style={props.style}>\n <span>{props.title}</span>\n <span>{tooltip.icon}</span>\n </Space>\n </Tooltip>\n );\n};\n"],"names":["TableTitleTooltip","props","tooltip","gap","isUndefinedOrNull","_jsx","Tooltip","title","children","_jsxs","Space","size","className","style","opacity","_QuestionCircleOutlined","content","icon"],"mappings":";oNAcaA,EAAoB,SAApBA,EAAqBC,GAChC,IAAMC,EAAUD,EAAMC,QACtB,IAAMC,EAAMC,EAAkBH,EAAME,KAAO,EAAIF,EAAME,IACrD,UAAWD,IAAY,SAAU,CAC/B,OACEG,EAACC,EAAO,CAACC,MAAOL,EAAQM,SACtBC,EAACC,EAAK,CAACC,KAAMR,EAAKS,UAAWX,EAAMW,UAAWC,MAAOZ,EAAMY,MAAML,UAC/DH,EAAA,OAAA,CAAAG,SAAOP,EAAMM,QACbF,EAAA,OAAA,CAAMQ,MAAO,CAAEC,QAAS,IAAMN,SAC5BH,EAAAU,EAAA,UAKV,CACA,OACEV,EAACC,EAAO,CAACC,MAAOL,EAAQc,QAAQR,SAC9BC,EAACC,EAAK,CAACC,KAAMR,EAAKS,UAAWX,EAAMW,UAAWC,MAAOZ,EAAMY,MAAML,UAC/DH,EAAA,OAAA,CAAAG,SAAOP,EAAMM,QACbF,EAAA,OAAA,CAAAG,SAAON,EAAQe,WAIvB"}
|
|
@@ -1,3 +0,0 @@
|
|
|
1
|
-
/*! @flatjs/forge MIT @flatbiz/antd */
|
|
2
|
-
import e from"@ant-design/icons/es/icons/RedoOutlined";import{classNames as r}from"@dimjs/utils/cjs/class-names";import t from"@ant-design/icons/es/icons/CaretDownFilled";import{isString as l}from"@dimjs/lang/cjs/is-string";import{isArray as n}from"@dimjs/lang/cjs/is-array";import{extend as a}from"@dimjs/utils/cjs/extend";import{hooks as u}from"@wove/react/cjs/hooks";import{_ as i,a as o}from"./_rollupPluginBabelHelpers-1f4d8910.js";import{treeToTiledArray as s,treeLeafParentsArray as c,toArray as f,isUndefinedOrNull as v,treeToArray as d,arrayFind as m,valueIsEqual as h,isNumber as p,getValueOrDefault as S}from"@flatbiz/utils";import{TreeSelect as b,Button as C}from"antd";import{useState as g,useMemo as y,useRef as L,createElement as w}from"react";import{Model as k}from"@dimjs/model-react";import{dequal as q}from"dequal";import{fbaHooks as R}from"./fba-hooks/index.js";import{R as T}from"./request-status-03fc60e2.js";import{isObject as A}from"@dimjs/lang/cjs/is-object";import{jsx as j}from"react/jsx-runtime";var N={treeSelectorList:[],treeSelectorTiledArray:[],queryIsEmpty:false};var E={actions:{setSelectBoxList:function e(r){return function(e){e.treeSelectorList=r.treeSelectorList||[];e.treeSelectorTiledArray=r.treeSelectorTiledArray||[];e.requestStatus="request-success"}},resetSelectBoxList:function e(){return function(e){e.treeSelectorList=[]}},changeRequestStatus:function e(r){return function(e){e.requestStatus=r}}},state:N};var x={};var I=function e(r){if(!x[r]){x[r]=k(E)}return x[r]};var P=function e(r,t,l){if(!n(t)||t.length===0)return[];var a=s(t,l);return c(r,a,true,{value:"value",parentValue:"parentValue"})};var V=function e(r,t){var l=f(r);l=l.map((function(e){if(A(e))return e[t.value];return e}));return l};var B=function e(r,t){var l=V(r,t);var n={};l.forEach((function(e){n[e]=true}));return n};var H=function e(r,t,l){if(v(r)&&v(t))return true;var n=B(r,l);var a=B(t,l);var u=q(n,a);return u};var O=["serviceConfig","effectDependencyList","onTreeSelectorListChange","onTreeSelectorRequestError","treeSelectorList","requestMessageConfig","modelKey","value","labelInValue","labelInValueFieldNames","onTreeItemDataAdapter","selectedParentCheckedAllChildrenList","fieldNames","onChange","onChangeHandle","showAllOption"];var D=function s(c){var k=c,A=k.serviceConfig,N=k.effectDependencyList,E=k.onTreeSelectorListChange,x=k.onTreeSelectorRequestError,B=k.treeSelectorList,D=k.requestMessageConfig,F=k.modelKey,K=k.value,W=k.labelInValue,_=k.labelInValueFieldNames,M=k.onTreeItemDataAdapter,z=k.selectedParentCheckedAllChildrenList,G=z===void 0?true:z,J=k.fieldNames,Q=k.onChange,U=k.onChangeHandle,X=k.showAllOption,Y=i(k,O);var Z=c.hasOwnProperty("treeSelectorList");var $=A||{};var ee=N||[];var re=R.useSafeState(false),te=re[0],le=re[1];var ne=g(),ae=ne[0],ue=ne[1];var ie=I(F).useStore(),oe=ie[0],se=ie[1];var ce="request-progress-"+F;var fe=Y.treeCheckable;var ve=y((function(){if(Y.treeCheckStrictly)return true;return W}),[W,Y.treeCheckStrictly]);var de=y((function(){return o({label:"label",value:"value",children:"children",disabled:"disabled"},J)}),[J]);var me=y((function(){return o({label:"label",value:"value"},_)}),[_]);var he=y((function(){if(X){var e=X===true;return{label:e?"全部":X.label,value:e?"":X.value}}return null}),[X]);var pe=g(),Se=pe[0],be=pe[1];var Ce=L(true);R.useEffectCustom((function(){if(v(K)&&Ce.current)return;Ce.current=false;if(oe.treeSelectorList.length>0){if(!H(K,Se,me)){console.log("modelKey:"+F+" TreeSelectorWrapper key refresh",K,Se);var e=V(K,me);be(e);var r=Re(e,true);ue(Array.from(new Set(r)))}}}),[K,oe.treeSelectorList]);var ge=function e(r){return r===""||v(r)};var ye=function e(r){var t=$.onRequestResultAdapter?$.onRequestResultAdapter(r):r;return t};var Le=u.useCallbackRef((function(){return new Promise((function(e,r){var t,l,n,u,i;if(!$.onRequest){return r(new Error("onRequest 调用接口服务不能为空"))}t=$.requiredParamsKeys||[];l=a({},$.params);n=t.find((function(e){return ge(l[e])}));if(n){console.warn("TreeSelectorWrapper组件:参数:"+t.join("、")+"不能为空");return e()}var o=function(){try{return e()}catch(e){return r(e)}};var s=function(e){try{le(false);window[ce]=false;void se.changeRequestStatus("request-error");x==null?void 0:x(e);return o()}catch(e){return r(e)}};try{le(true);window[ce]=true;void se.changeRequestStatus("request-progress");return Promise.resolve($.onRequest==null?void 0:$.onRequest(l)).then((function(e){try{u=e;i=ye(u);le(false);window[ce]=false;we(i||[]);return o()}catch(e){return s(e)}}),s)}catch(e){s(e)}}))}));u.useCustomCompareEffect((function(){if(Z)return;if(Boolean(ee.length)){we([]);void Le();return}var e=I(F).getState();if(e.requestStatus==="request-success"){return}if(!window[ce]){void Le();return}}),ee,q);var we=u.useCallbackRef((function(e){var r;if((e==null?void 0:e.length)===0&&oe.treeSelectorList.length===0){void se.setSelectBoxList({treeSelectorList:[],treeSelectorTiledArray:[]});E==null?void 0:E([]);return}var t=he?(r={},r[de.label]=he.label,r[de.value]=he.value,r):undefined;var l=X?[t].concat(e):e;void se.setSelectBoxList({treeSelectorList:l,treeSelectorTiledArray:d(l||[],de.children)});E==null?void 0:E(e)}));R.useEffectCustom((function(){if(Z){we(B||[])}}),[B]);var ke=u.useCallbackRef((function(e){ue(e)}));var qe=u.useCallbackRef((function(){void Le()}));var Re=u.useCallbackRef((function(e,r){var t=[];e.forEach((function(e){if(!r&&ae!=null&&ae.includes(e))return;var l=P(e,oe.treeSelectorList,de);t=t.concat(l.map((function(e){return e.value})))}));return t}));var Te=u.useCallbackRef((function(e){if(!e)return undefined;return{label:e==null?void 0:e[de.label],value:e==null?void 0:e[de.value],children:e==null?void 0:e[de.children],disabled:e==null?void 0:e["disabled"]}}));var Ae=u.useCallbackRef((function(e){if(!e)return undefined;return{label:e==null?void 0:e[me.label],value:e==null?void 0:e[me.value],disabled:e==null?void 0:e["disabled"]}}));var je=u.useCallbackRef((function(e,r){var t=V(e,{value:"value",label:"label"});var l=[];t.forEach((function(e){var r=m(oe.treeSelectorTiledArray,e,de.value);if(!r)return;l.push(r)}));if(Y.treeCheckStrictly&&G){var a=Te(r.checked?m(oe.treeSelectorTiledArray,r.triggerValue,de.value):null);if(a&&n(a.children)&&a.children.length>0){var u=d(a.children,de.children);var i=u.filter((function(e){var r=Te(e);if(r!=null&&r.disabled)return false;if(m(l,r==null?void 0:r.value,de.value))return false;return true}));l=l.concat(i)}}var o=[];if(Y.treeCheckable){if(Y.treeCheckStrictly===true||h(Y.showCheckedStrategy,["SHOW_ALL","SHOW_PARENT"])){o=l}else{o=l.filter((function(e){var r=e[de.children];return!(n(r)&&r.length>0)}))}}else{o=l}return{realTreeNodeList:o,realTreeNodeValueList:V(o,de)}}));var Ne=u.useCallbackRef((function(e,r,t){be(e);Q==null?void 0:Q(e);U==null?void 0:U(e,r,t)}));var Ee=u.useCallbackRef((function(e,r,t){var l=je(e,t),n=l.realTreeNodeList,a=l.realTreeNodeValueList;if(Y.treeCheckable){ue((function(e){var r=Re(a).concat(e||[]);return Array.from(new Set(r))}))}if(ve){var u=n.map((function(e){var r;var t=Te(e);return r={},r[me.label]=t==null?void 0:t.label,r[me.value]=t==null?void 0:t.value,r}));if(fe){Ne==null?void 0:Ne(u,n,t)}else{Ne==null?void 0:Ne(u[0],n[0],t)}}else{if(fe){Ne==null?void 0:Ne(a,n,t)}else{Ne==null?void 0:Ne(a[0],n[0],t)}}}));var xe=u.useCallbackRef((function(e){if(!e)return null;return e.map((function(e){var r=(M==null?void 0:M(o({},e)))||e;var t=r[de.children];var l=r[de.value];var n=r[de.label];var a=r[de.disabled]?r[de.disabled]:r.disabled;return w(b.TreeNode,o({},r,{disabled:a,value:l,title:n,key:""+l}),t&&t.length>0&&xe(t))}))}));var Ie=y((function(){var e=f(Se);if(e.length==0)return[];if(Y.treeCheckStrictly){if(oe.treeSelectorTiledArray.length===0){return e.map((function(e){return{label:e,value:e}}))}return e.map((function(e){var r,t;var n;var a;if(l(e)||p(e)){var u=m(oe.treeSelectorTiledArray,e,de.value);n=Te(u);a=e}else{n=Ae(e)}return{label:S((r=n)==null?void 0:r.label,a),value:S((t=n)==null?void 0:t.value,a)}}))}return V(Se,me)}),[Se,Y.treeCheckStrictly,me,oe.treeSelectorTiledArray,de.value,Te,Ae]);var Pe=y((function(){if(n(Ie)&&Ie.length===0){return undefined}return fe?Ie:Ie[0]}),[fe,Ie]);return j(b,o({dropdownStyle:{maxHeight:400,overflow:"auto"},showSearch:true,treeLine:{showLeafIcon:false},treeNodeFilterProp:"title",switcherIcon:j(t,{}),showArrow:true},Y,{className:r("v-tree-select-wrapper",Y.className),popupClassName:r("v-tree-select-wrapper-dropdown",Y.popupClassName),onChange:Ee,treeExpandedKeys:ae,value:Pe,loading:te,dropdownMatchSelectWidth:false,onTreeExpand:ke,style:o({width:"100%"},Y.style),suffixIcon:oe.requestStatus==="request-error"?j(e,{spin:te,onClick:qe}):undefined,notFoundContent:j(T,{status:oe.requestStatus,messageConfig:D,loading:te,errorButton:j(C,{type:"primary",onClick:qe,children:"重新获取数据"})}),children:xe(oe.treeSelectorList)}))};export{D as T};
|
|
3
|
-
//# sourceMappingURL=tree-selector-wrapper-9cd9da23.js.map
|