@flatbiz/antd 4.2.39 → 4.2.40

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (76) hide show
  1. package/esm/anchor-steps/index.css +1 -0
  2. package/esm/anchor-steps/index.js +5 -0
  3. package/esm/anchor-steps/index.js.map +1 -0
  4. package/esm/anchor-steps-616cd173.js +3 -0
  5. package/esm/anchor-steps-616cd173.js.map +1 -0
  6. package/esm/button-operate/index.js +1 -1
  7. package/esm/{button-operate-6add2cbf.js → button-operate-697b2a94.js} +2 -2
  8. package/esm/{button-operate-6add2cbf.js.map → button-operate-697b2a94.js.map} +1 -1
  9. package/esm/button-wrapper/index.js +1 -1
  10. package/esm/{button-wrapper-c63ea6fc.js → button-wrapper-e833e139.js} +2 -2
  11. package/esm/{button-wrapper-c63ea6fc.js.map → button-wrapper-e833e139.js.map} +1 -1
  12. package/esm/cascader-wrapper/index.js +1 -1
  13. package/esm/{cascader-wrapper-7f1eed71.js → cascader-wrapper-db4a5382.js} +2 -2
  14. package/esm/{cascader-wrapper-7f1eed71.js.map → cascader-wrapper-db4a5382.js.map} +1 -1
  15. package/esm/{cell-render-03055c65.js → cell-render-362e4d87.js} +2 -2
  16. package/esm/{cell-render-03055c65.js.map → cell-render-362e4d87.js.map} +1 -1
  17. package/esm/data-render/index.css +1 -0
  18. package/esm/data-render/index.js +5 -0
  19. package/esm/data-render/index.js.map +1 -0
  20. package/esm/data-render-07c0ab6b.js +3 -0
  21. package/esm/data-render-07c0ab6b.js.map +1 -0
  22. package/esm/dialog-alert/index.js +1 -1
  23. package/esm/{dialog-alert-96962d07.js → dialog-alert-23b4a533.js} +2 -2
  24. package/esm/{dialog-alert-96962d07.js.map → dialog-alert-23b4a533.js.map} +1 -1
  25. package/esm/dialog-confirm/index.js +1 -1
  26. package/esm/{dialog-confirm-4dacc583.js → dialog-confirm-2656caad.js} +2 -2
  27. package/esm/{dialog-confirm-4dacc583.js.map → dialog-confirm-2656caad.js.map} +1 -1
  28. package/esm/dialog-drawer/index.js +1 -1
  29. package/esm/{dialog-drawer-525a0bc3.js → dialog-drawer-a741961f.js} +2 -2
  30. package/esm/{dialog-drawer-525a0bc3.js.map → dialog-drawer-a741961f.js.map} +1 -1
  31. package/esm/dialog-modal/index.css +1 -1
  32. package/esm/dialog-modal/index.js +1 -1
  33. package/esm/{dialog-modal-459d2be5.js → dialog-modal-7b705b44.js} +2 -2
  34. package/esm/{dialog-modal-459d2be5.js.map → dialog-modal-7b705b44.js.map} +1 -1
  35. package/esm/dropdown-menu-wrapper/index.js +1 -1
  36. package/esm/{dropdown-menu-wrapper-2c4b6cad.js → dropdown-menu-wrapper-3544d20e.js} +2 -2
  37. package/esm/{dropdown-menu-wrapper-2c4b6cad.js.map → dropdown-menu-wrapper-3544d20e.js.map} +1 -1
  38. package/esm/easy-table/index.js +1 -1
  39. package/esm/easy-table/index.js.map +1 -1
  40. package/esm/editable-table/index.js +1 -1
  41. package/esm/{editable-table-d3afee03.js → editable-table-2446a059.js} +2 -2
  42. package/esm/{editable-table-d3afee03.js.map → editable-table-2446a059.js.map} +1 -1
  43. package/esm/index.js +4 -1
  44. package/esm/rich-text-viewer/index.js +1 -1
  45. package/esm/{rich-text-viewer-5cbe01e9.js → rich-text-viewer-3bf4569a.js} +2 -2
  46. package/esm/{rich-text-viewer-5cbe01e9.js.map → rich-text-viewer-3bf4569a.js.map} +1 -1
  47. package/esm/selector-wrapper/index.js +1 -1
  48. package/esm/{selector-wrapper-defe35d6.js → selector-wrapper-dc08cc44.js} +2 -2
  49. package/esm/{selector-wrapper-defe35d6.js.map → selector-wrapper-dc08cc44.js.map} +1 -1
  50. package/esm/selector-wrapper-search/index.js +1 -1
  51. package/esm/{selector-wrapper-search-228c96c5.js → selector-wrapper-search-f799bcf0.js} +2 -2
  52. package/esm/{selector-wrapper-search-228c96c5.js.map → selector-wrapper-search-f799bcf0.js.map} +1 -1
  53. package/esm/selector-wrapper-simple/index.js +1 -1
  54. package/esm/{selector-wrapper-simple-c51eba69.js → selector-wrapper-simple-7b34f7bd.js} +2 -2
  55. package/esm/{selector-wrapper-simple-c51eba69.js.map → selector-wrapper-simple-7b34f7bd.js.map} +1 -1
  56. package/esm/simple-layout/index.css +1 -1
  57. package/esm/simple-layout/index.js +1 -1
  58. package/esm/simple-layout-f43cfc5d.js +3 -0
  59. package/esm/simple-layout-f43cfc5d.js.map +1 -0
  60. package/esm/table-cell-render/index.js +1 -1
  61. package/esm/tabs-wrapper/index.js +1 -1
  62. package/esm/tabs-wrapper-675dc949.js +3 -0
  63. package/esm/{tabs-wrapper-0a2da713.js.map → tabs-wrapper-675dc949.js.map} +1 -1
  64. package/esm/text-overflow-render/index.css +0 -0
  65. package/esm/text-overflow-render/index.js +9 -0
  66. package/esm/text-overflow-render/index.js.map +1 -0
  67. package/esm/text-overflow-render-2ec38800.js +3 -0
  68. package/esm/text-overflow-render-2ec38800.js.map +1 -0
  69. package/esm/tree-wrapper/index.css +1 -1
  70. package/esm/tree-wrapper/index.js +1 -1
  71. package/esm/tree-wrapper/index.js.map +1 -1
  72. package/index.d.ts +77 -0
  73. package/package.json +3 -2
  74. package/esm/simple-layout-08f90dab.js +0 -3
  75. package/esm/simple-layout-08f90dab.js.map +0 -1
  76. package/esm/tabs-wrapper-0a2da713.js +0 -3
@@ -1 +1 @@
1
- {"version":3,"file":"selector-wrapper-defe35d6.js","sources":["@flatbiz/antd/src/selector-wrapper/use-request.ts","@flatbiz/antd/src/selector-wrapper/utils.ts","@flatbiz/antd/src/selector-wrapper/selector-wrapper.tsx"],"sourcesContent":["import { isArray, isDeepEqual } from '@dimjs/lang';\nimport { get, json } from '@dimjs/utils';\nimport { isUndefinedOrNull, TPlainObject } from '@flatbiz/utils';\nimport pubSub from 'pubsub-js';\nimport { useMemo, useState } from 'react';\nimport { fbaHooks } from '../fba-hooks';\nimport { TRequestStatus } from '../request-status';\nimport { SelectorServiceConfig, SelectorWrapperProps } from './types';\n\nexport const useRequest = (options: {\n cacheKey: string;\n serviceConfig?: SelectorServiceConfig;\n hasOuterSelectorList?: boolean;\n onChange?: SelectorWrapperProps['onChange'];\n outerSelectorList?: SelectorWrapperProps['selectorList'];\n onRespDataChange?: (dataList?: TPlainObject[]) => void;\n onSelectorRequestError?: SelectorWrapperProps['onSelectorRequestError'];\n useCache: boolean;\n fieldNames: SelectorWrapperProps['fieldNames'];\n}) => {\n const {\n cacheKey,\n serviceConfig,\n hasOuterSelectorList,\n outerSelectorList,\n onRespDataChange,\n onSelectorRequestError,\n onChange,\n useCache,\n fieldNames,\n } = options;\n const serviceRequestParams = serviceConfig?.params;\n const requiredParamsKeys = serviceConfig?.requiredParamsKeys || [];\n const hasServiceRequestParams = serviceRequestParams && Object.keys(serviceRequestParams).length > 0;\n\n const [stateSelectorList, setStateSelectorList] = useState<TPlainObject[]>();\n const [requestStatus, setRequestStatus] = useState<TRequestStatus>();\n const [refreshKey, setRefreshKey] = useState(Date.now());\n\n const serviceRequestParamsStringify = useMemo(() => {\n try {\n if (hasServiceRequestParams) {\n const sortDataStringify = JSON.stringify(json.sort(serviceRequestParams));\n if (sortDataStringify === '{}') {\n return undefined;\n }\n return sortDataStringify;\n }\n } catch (error) {}\n return undefined;\n }, [hasServiceRequestParams, serviceRequestParams]);\n // 将 undefined => 'undefined'\n const serviceRequestCahceKey = `${serviceRequestParamsStringify}`;\n const serviceRequestCahceStatusKey = `${serviceRequestParamsStringify}_status`;\n const pubSubKey = `${cacheKey}_${serviceRequestCahceKey}`;\n\n // 上一个参数值\n const prevServiceRequestParamsStringify = fbaHooks.usePrevious(serviceRequestParamsStringify);\n const prevParams = fbaHooks.usePrevious(serviceRequestParams);\n\n const serviceRespDataAdapter = (respData) => {\n if (serviceConfig?.onRequestResultAdapter) {\n return serviceConfig?.onRequestResultAdapter(respData as unknown as TPlainObject);\n }\n if (fieldNames?.list) {\n const result = get(respData, fieldNames?.list);\n return isArray(result) ? result : [];\n }\n return respData;\n };\n\n const getWindowCacheData = () => {\n return window['__selector_wrapper_']?.[cacheKey];\n };\n const getWindowCacheValue = () => {\n return getWindowCacheData()?.[serviceRequestCahceKey];\n };\n const getWindowCacheStatus = () => {\n return getWindowCacheData()?.[serviceRequestCahceStatusKey];\n };\n\n const setWindowCache = (key, value) => {\n if (!window['__selector_wrapper_']) {\n window['__selector_wrapper_'] = {};\n }\n if (!window['__selector_wrapper_'][cacheKey]) {\n window['__selector_wrapper_'][cacheKey] = {};\n }\n window['__selector_wrapper_'][cacheKey][key] = value;\n };\n\n const onChangeRequestStatus = (status: TRequestStatus) => {\n setWindowCache(serviceRequestCahceStatusKey, status);\n setRequestStatus(status);\n };\n\n const onRequest = async () => {\n try {\n onChangeRequestStatus('request-progress');\n\n const respData = await serviceConfig?.onRequest?.(serviceRequestParams || {});\n const respAdapterData = serviceRespDataAdapter(respData) || [];\n\n setWindowCache(serviceRequestCahceKey, respAdapterData);\n onChangeRequestStatus('request-success');\n setTimeout(() => {\n pubSub.publish(pubSubKey, {\n status: 'request-success',\n respData: respAdapterData,\n });\n });\n\n return respAdapterData;\n } catch (error) {\n console.error(error);\n onChangeRequestStatus('request-error');\n setStateSelectorList(undefined);\n setTimeout(() => {\n pubSub.publish(pubSubKey, {\n status: 'request-error',\n });\n });\n onSelectorRequestError?.(error);\n return Promise.reject();\n }\n };\n\n fbaHooks.useEffectCustomAsync(async () => {\n if (hasOuterSelectorList) {\n setRequestStatus('request-success');\n setStateSelectorList(outerSelectorList);\n onRespDataChange?.(outerSelectorList);\n return;\n }\n if (requiredParamsKeys.length > 0) {\n const isEmpty = serviceRequestParams\n ? requiredParamsKeys.find((key) => isUndefinedOrNull(serviceRequestParams[key]))\n : true;\n if (isEmpty) {\n // 当依赖项查询条件为空时,清空当前缓存数据\n setStateSelectorList([]);\n setRequestStatus('no-dependencies-params');\n /**\n * 怎么判断数据是从有到无的\n * 每一次 params 变少,只要 上一次 params 值存在,就应该清空 value 值\n */\n if (prevServiceRequestParamsStringify) {\n onChange?.(undefined);\n }\n return;\n }\n\n // 不使用缓存模式\n if (useCache === false) {\n // 判断参数是否发生变化\n if (isDeepEqual(serviceRequestParams, prevParams)) {\n return;\n }\n try {\n setRequestStatus('request-progress');\n const respData = await serviceConfig?.onRequest?.(serviceRequestParams || {});\n const respAdapterData = serviceRespDataAdapter(respData) || [];\n setRequestStatus('request-success');\n setStateSelectorList(respAdapterData);\n onRespDataChange?.(respAdapterData);\n } catch (error) {\n console.error(error);\n setRequestStatus('request-error');\n setStateSelectorList(undefined);\n onSelectorRequestError?.(error);\n }\n return;\n }\n }\n\n /**\n * 此处无法判断 调用props.onChange?.(undefined);\n * A、B、C\n * 例如:C依赖A、B,当外部只修改了一个元素,理论上应该应该清空C value 值(调用onChange(undefined)),如果此时外部直接回填A、B、C时,C无法回填成功;该场景只能在A、B的onChange事件中,清空C\n */\n // if (prevServiceRequestParamsStringify) {\n // props.onChange?.(undefined);\n // }\n\n const status = getWindowCacheStatus();\n if (status === 'request-success') {\n const dataList = getWindowCacheValue();\n setStateSelectorList(dataList);\n setRequestStatus(status);\n onRespDataChange?.(dataList);\n return;\n }\n if (status === 'request-progress') {\n setRequestStatus(status);\n pubSub.subscribe(pubSubKey, (_msg, { status, respData }) => {\n if (status === 'request-success') {\n setRequestStatus(status);\n setStateSelectorList(respData);\n onRespDataChange?.(respData);\n } else {\n setRequestStatus('request-error');\n setStateSelectorList(undefined);\n }\n });\n return;\n }\n const respAdapterData = await onRequest();\n setStateSelectorList(respAdapterData);\n setRequestStatus('request-success');\n onRespDataChange?.(respAdapterData);\n }, [serviceRequestParams, outerSelectorList, refreshKey]);\n\n const onRefreshRequest = () => {\n setRefreshKey(Date.now());\n };\n\n return {\n requestStatus,\n stateSelectorList,\n serviceRequestParamsStringify,\n onRefreshRequest,\n };\n};\n","import { isObject } from '@dimjs/lang';\nimport { toArray } from '@flatbiz/utils';\n\n/**\n * value存在两种格式\n * 1. string | number;\n * 2. labelInValue 格式\n * @param data\n * @param labelInValueFieldNames\n * @returns\n */\nexport const getVauleList = (data, valueKey: string | number) => {\n let valueList = toArray<string | number>(data);\n valueList = valueList.map((item) => {\n if (isObject(item)) return item[valueKey];\n return item;\n });\n return valueList;\n};\n","import { arrayFind, TAny, toArray, TPlainObject, valueIsEqual } from '@flatbiz/utils';\nimport { hooks } from '@wove/react';\nimport { Button, Select } from 'antd';\nimport { useMemo, useRef } from 'react';\nimport './style.less';\n\nimport { RedoOutlined } from '@ant-design/icons';\nimport { isString } from '@dimjs/lang';\nimport { RequestStatus } from '../request-status';\nimport { SelectorWrapperProps } from './types';\nimport { useRequest } from './use-request';\nimport { getVauleList } from './utils';\nexport * from './types';\n/**\n * 选择器包装组件\n * ```\n * 1. 不支持搜索 + 调用服务模式\n * ```\n */\nexport const SelectorWrapper = (props: SelectorWrapperProps) => {\n const {\n serviceConfig,\n showAllOption,\n onSelectorListChange,\n onSelectorListAllChange,\n onSelectorRequestError,\n onLabelRenderAdapter,\n requestMessageConfig,\n selectorList: outerSelectorList,\n modelKey,\n fieldNames,\n value,\n labelInValue,\n useCache,\n ...otherProps\n } = props;\n\n const firstRenderSelectList = useRef(true);\n\n // props 是否存在 selectorList,selectorList = undefined 也算存在\n const hasOuterSelectorList = props.hasOwnProperty('selectorList');\n const mergeFieldNames = { label: 'label', value: 'value', disabled: 'disabled', ...fieldNames };\n\n const {\n label: optionsItemLabelField,\n value: optionsItemValueField,\n disabled: optionsItemDisabledField,\n } = mergeFieldNames;\n\n const allOptionConfig = useMemo(() => {\n if (!showAllOption) return null;\n const isTrue = showAllOption === true;\n return {\n [optionsItemLabelField]: isTrue ? '全部' : showAllOption.label,\n [optionsItemValueField]: isTrue ? '' : showAllOption.value,\n };\n }, [optionsItemLabelField, optionsItemValueField, showAllOption]);\n\n const isMultiple = valueIsEqual(props.mode, ['multiple']);\n\n const { requestStatus, stateSelectorList, onRefreshRequest } = useRequest({\n fieldNames: mergeFieldNames,\n cacheKey: modelKey,\n hasOuterSelectorList,\n onChange: props.onChange,\n serviceConfig,\n outerSelectorList,\n onRespDataChange: (dataList) => {\n if (firstRenderSelectList.current) {\n onSelectorListChange?.(dataList || []);\n firstRenderSelectList.current = false;\n }\n onSelectorListAllChange?.(dataList || []);\n },\n onSelectorRequestError,\n useCache: useCache === undefined ? true : useCache,\n });\n\n const onRespChange = hooks.useCallbackRef((selectedList: TPlainObject[]) => {\n if (labelInValue) {\n if (isMultiple) {\n props.onChange?.(selectedList, selectedList);\n } else {\n props.onChange?.(selectedList[0], selectedList);\n }\n } else {\n const valueList = selectedList.map((item) => item[optionsItemValueField]);\n if (isMultiple) {\n props.onChange?.(valueList, selectedList);\n } else {\n props.onChange?.(valueList[0], selectedList[0]);\n }\n }\n });\n\n const onInnerChange = hooks.useCallbackRef((_value, otherParams) => {\n if (!otherParams) return props.onChange?.(undefined);\n const selectedList = toArray<TAny>(otherParams);\n const targetList = [] as TPlainObject[];\n selectedList.forEach((item) => {\n if (showAllOption && allOptionConfig && item.value === allOptionConfig[optionsItemValueField]) {\n targetList.push(allOptionConfig);\n } else {\n const filterTarget = arrayFind(stateSelectorList || [], item.value, optionsItemValueField);\n if (filterTarget) {\n targetList.push(filterTarget);\n }\n }\n });\n onRespChange(targetList);\n });\n\n const selectorAllList = useMemo(() => {\n if (requestStatus !== 'request-success') return [];\n if (!stateSelectorList || stateSelectorList.length === 0) return [];\n if (!allOptionConfig) return stateSelectorList;\n return [allOptionConfig].concat(stateSelectorList);\n }, [allOptionConfig, requestStatus, stateSelectorList]);\n\n const loading = requestStatus === 'request-progress';\n\n const selectValue = useMemo(() => {\n const targetList = getVauleList(value, optionsItemValueField);\n return isMultiple ? targetList : targetList[0];\n }, [isMultiple, optionsItemValueField, value]);\n\n const filterOption = hooks.useCallbackRef((input: string, option) => {\n const children = toArray(option.children);\n let mergeString = '';\n children.forEach((item) => {\n if (isString(item)) mergeString += item;\n });\n return mergeString.toLowerCase().indexOf(input.toLowerCase()) >= 0;\n });\n\n return (\n <Select\n showSearch={true}\n allowClear={true}\n dropdownMatchSelectWidth={false}\n filterOption={filterOption}\n {...otherProps}\n style={{ width: '100%', ...props.style }}\n value={selectValue}\n loading={loading}\n onChange={onInnerChange}\n fieldNames={undefined}\n suffixIcon={\n requestStatus === 'request-error' ? (\n <RedoOutlined spin={loading} onClick={onRefreshRequest} />\n ) : undefined\n }\n notFoundContent={\n <RequestStatus\n status={requestStatus}\n loading={loading}\n messageConfig={{\n 'request-init': '暂无数据',\n ...requestMessageConfig,\n }}\n errorButton={\n <Button type=\"primary\" onClick={onRefreshRequest}>\n 重新获取数据\n </Button>\n }\n />\n }\n >\n {selectorAllList.map((item, index) => {\n const value = item[optionsItemValueField];\n const label = item[optionsItemLabelField];\n return (\n <Select.Option\n value={value}\n label={label}\n key={`${value}-${index}`}\n disabled={item[optionsItemDisabledField]}\n >\n {props.showIcon ? (\n <span className=\"v-selector-item-icon\">{props.icon?.(item, index)}</span>\n ) : null}\n {onLabelRenderAdapter ? onLabelRenderAdapter(item) : label}\n </Select.Option>\n );\n })}\n </Select>\n );\n};\n"],"names":["useRequest","options","cacheKey","serviceConfig","hasOuterSelectorList","outerSelectorList","onRespDataChange","onSelectorRequestError","onChange","useCache","fieldNames","serviceRequestParams","params","requiredParamsKeys","hasServiceRequestParams","Object","keys","length","_useState","useState","stateSelectorList","setStateSelectorList","_useState2","requestStatus","setRequestStatus","_useState3","Date","now","refreshKey","setRefreshKey","serviceRequestParamsStringify","useMemo","sortDataStringify","JSON","stringify","_json","sort","undefined","error","serviceRequestCahceKey","serviceRequestCahceStatusKey","pubSubKey","prevServiceRequestParamsStringify","fbaHooks","usePrevious","prevParams","serviceRespDataAdapter","respData","onRequestResultAdapter","list","result","_get","_isArray","getWindowCacheData","_window$__selector_wr","window","getWindowCacheValue","_getWindowCacheData","getWindowCacheStatus","_getWindowCacheData2","setWindowCache","key","value","onChangeRequestStatus","status","onRequest","Promise","$return","$error","respAdapterData","$Try_2_Catch","console","setTimeout","pubSub","publish","reject","$boundEx","resolve","then","$await_6","useEffectCustomAsync","isEmpty","_respAdapterData","_dataList","find","isUndefinedOrNull","_isDeepEqual","$Try_3_Post","$Try_3_Catch","$await_7","$If_4","call","this","dataList","subscribe","_msg","_ref","$await_8","onRefreshRequest","getVauleList","data","valueKey","valueList","toArray","map","item","_isObject","SelectorWrapper","props","showAllOption","onSelectorListChange","onSelectorListAllChange","onLabelRenderAdapter","requestMessageConfig","selectorList","modelKey","labelInValue","otherProps","_objectWithoutPropertiesLoose","_excluded","firstRenderSelectList","useRef","hasOwnProperty","mergeFieldNames","_extends","label","disabled","optionsItemLabelField","optionsItemValueField","optionsItemDisabledField","allOptionConfig","isTrue","isMultiple","valueIsEqual","mode","_useRequest","current","onRespChange","_hooks","useCallbackRef","selectedList","onInnerChange","_value","otherParams","targetList","forEach","push","filterTarget","arrayFind","selectorAllList","concat","loading","selectValue","filterOption","input","option","children","mergeString","_isString","toLowerCase","indexOf","_jsx","Select","showSearch","allowClear","dropdownMatchSelectWidth","style","width","suffixIcon","_RedoOutlined","spin","onClick","notFoundContent","RequestStatus","messageConfig","errorButton","Button","type","index","_jsxs","Option","showIcon","className","icon"],"mappings":"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"}
1
+ {"version":3,"file":"selector-wrapper-dc08cc44.js","sources":["@flatbiz/antd/src/selector-wrapper/use-request.ts","@flatbiz/antd/src/selector-wrapper/utils.ts","@flatbiz/antd/src/selector-wrapper/selector-wrapper.tsx"],"sourcesContent":["import { isArray, isDeepEqual } from '@dimjs/lang';\nimport { get, json } from '@dimjs/utils';\nimport { isUndefinedOrNull, TPlainObject } from '@flatbiz/utils';\nimport pubSub from 'pubsub-js';\nimport { useMemo, useState } from 'react';\nimport { fbaHooks } from '../fba-hooks';\nimport { TRequestStatus } from '../request-status';\nimport { SelectorServiceConfig, SelectorWrapperProps } from './types';\n\nexport const useRequest = (options: {\n cacheKey: string;\n serviceConfig?: SelectorServiceConfig;\n hasOuterSelectorList?: boolean;\n onChange?: SelectorWrapperProps['onChange'];\n outerSelectorList?: SelectorWrapperProps['selectorList'];\n onRespDataChange?: (dataList?: TPlainObject[]) => void;\n onSelectorRequestError?: SelectorWrapperProps['onSelectorRequestError'];\n useCache: boolean;\n fieldNames: SelectorWrapperProps['fieldNames'];\n}) => {\n const {\n cacheKey,\n serviceConfig,\n hasOuterSelectorList,\n outerSelectorList,\n onRespDataChange,\n onSelectorRequestError,\n onChange,\n useCache,\n fieldNames,\n } = options;\n const serviceRequestParams = serviceConfig?.params;\n const requiredParamsKeys = serviceConfig?.requiredParamsKeys || [];\n const hasServiceRequestParams = serviceRequestParams && Object.keys(serviceRequestParams).length > 0;\n\n const [stateSelectorList, setStateSelectorList] = useState<TPlainObject[]>();\n const [requestStatus, setRequestStatus] = useState<TRequestStatus>();\n const [refreshKey, setRefreshKey] = useState(Date.now());\n\n const serviceRequestParamsStringify = useMemo(() => {\n try {\n if (hasServiceRequestParams) {\n const sortDataStringify = JSON.stringify(json.sort(serviceRequestParams));\n if (sortDataStringify === '{}') {\n return undefined;\n }\n return sortDataStringify;\n }\n } catch (error) {}\n return undefined;\n }, [hasServiceRequestParams, serviceRequestParams]);\n // 将 undefined => 'undefined'\n const serviceRequestCahceKey = `${serviceRequestParamsStringify}`;\n const serviceRequestCahceStatusKey = `${serviceRequestParamsStringify}_status`;\n const pubSubKey = `${cacheKey}_${serviceRequestCahceKey}`;\n\n // 上一个参数值\n const prevServiceRequestParamsStringify = fbaHooks.usePrevious(serviceRequestParamsStringify);\n const prevParams = fbaHooks.usePrevious(serviceRequestParams);\n\n const serviceRespDataAdapter = (respData) => {\n if (serviceConfig?.onRequestResultAdapter) {\n return serviceConfig?.onRequestResultAdapter(respData as unknown as TPlainObject);\n }\n if (fieldNames?.list) {\n const result = get(respData, fieldNames?.list);\n return isArray(result) ? result : [];\n }\n return respData;\n };\n\n const getWindowCacheData = () => {\n return window['__selector_wrapper_']?.[cacheKey];\n };\n const getWindowCacheValue = () => {\n return getWindowCacheData()?.[serviceRequestCahceKey];\n };\n const getWindowCacheStatus = () => {\n return getWindowCacheData()?.[serviceRequestCahceStatusKey];\n };\n\n const setWindowCache = (key, value) => {\n if (!window['__selector_wrapper_']) {\n window['__selector_wrapper_'] = {};\n }\n if (!window['__selector_wrapper_'][cacheKey]) {\n window['__selector_wrapper_'][cacheKey] = {};\n }\n window['__selector_wrapper_'][cacheKey][key] = value;\n };\n\n const onChangeRequestStatus = (status: TRequestStatus) => {\n setWindowCache(serviceRequestCahceStatusKey, status);\n setRequestStatus(status);\n };\n\n const onRequest = async () => {\n try {\n onChangeRequestStatus('request-progress');\n\n const respData = await serviceConfig?.onRequest?.(serviceRequestParams || {});\n const respAdapterData = serviceRespDataAdapter(respData) || [];\n\n setWindowCache(serviceRequestCahceKey, respAdapterData);\n onChangeRequestStatus('request-success');\n setTimeout(() => {\n pubSub.publish(pubSubKey, {\n status: 'request-success',\n respData: respAdapterData,\n });\n });\n\n return respAdapterData;\n } catch (error) {\n console.error(error);\n onChangeRequestStatus('request-error');\n setStateSelectorList(undefined);\n setTimeout(() => {\n pubSub.publish(pubSubKey, {\n status: 'request-error',\n });\n });\n onSelectorRequestError?.(error);\n return Promise.reject();\n }\n };\n\n fbaHooks.useEffectCustomAsync(async () => {\n if (hasOuterSelectorList) {\n setRequestStatus('request-success');\n setStateSelectorList(outerSelectorList);\n onRespDataChange?.(outerSelectorList);\n return;\n }\n if (requiredParamsKeys.length > 0) {\n const isEmpty = serviceRequestParams\n ? requiredParamsKeys.find((key) => isUndefinedOrNull(serviceRequestParams[key]))\n : true;\n if (isEmpty) {\n // 当依赖项查询条件为空时,清空当前缓存数据\n setStateSelectorList([]);\n setRequestStatus('no-dependencies-params');\n /**\n * 怎么判断数据是从有到无的\n * 每一次 params 变少,只要 上一次 params 值存在,就应该清空 value 值\n */\n if (prevServiceRequestParamsStringify) {\n onChange?.(undefined);\n }\n return;\n }\n\n // 不使用缓存模式\n if (useCache === false) {\n // 判断参数是否发生变化\n if (isDeepEqual(serviceRequestParams, prevParams)) {\n return;\n }\n try {\n setRequestStatus('request-progress');\n const respData = await serviceConfig?.onRequest?.(serviceRequestParams || {});\n const respAdapterData = serviceRespDataAdapter(respData) || [];\n setRequestStatus('request-success');\n setStateSelectorList(respAdapterData);\n onRespDataChange?.(respAdapterData);\n } catch (error) {\n console.error(error);\n setRequestStatus('request-error');\n setStateSelectorList(undefined);\n onSelectorRequestError?.(error);\n }\n return;\n }\n }\n\n /**\n * 此处无法判断 调用props.onChange?.(undefined);\n * A、B、C\n * 例如:C依赖A、B,当外部只修改了一个元素,理论上应该应该清空C value 值(调用onChange(undefined)),如果此时外部直接回填A、B、C时,C无法回填成功;该场景只能在A、B的onChange事件中,清空C\n */\n // if (prevServiceRequestParamsStringify) {\n // props.onChange?.(undefined);\n // }\n\n const status = getWindowCacheStatus();\n if (status === 'request-success') {\n const dataList = getWindowCacheValue();\n setStateSelectorList(dataList);\n setRequestStatus(status);\n onRespDataChange?.(dataList);\n return;\n }\n if (status === 'request-progress') {\n setRequestStatus(status);\n pubSub.subscribe(pubSubKey, (_msg, { status, respData }) => {\n if (status === 'request-success') {\n setRequestStatus(status);\n setStateSelectorList(respData);\n onRespDataChange?.(respData);\n } else {\n setRequestStatus('request-error');\n setStateSelectorList(undefined);\n }\n });\n return;\n }\n const respAdapterData = await onRequest();\n setStateSelectorList(respAdapterData);\n setRequestStatus('request-success');\n onRespDataChange?.(respAdapterData);\n }, [serviceRequestParams, outerSelectorList, refreshKey]);\n\n const onRefreshRequest = () => {\n setRefreshKey(Date.now());\n };\n\n return {\n requestStatus,\n stateSelectorList,\n serviceRequestParamsStringify,\n onRefreshRequest,\n };\n};\n","import { isObject } from '@dimjs/lang';\nimport { toArray } from '@flatbiz/utils';\n\n/**\n * value存在两种格式\n * 1. string | number;\n * 2. labelInValue 格式\n * @param data\n * @param labelInValueFieldNames\n * @returns\n */\nexport const getVauleList = (data, valueKey: string | number) => {\n let valueList = toArray<string | number>(data);\n valueList = valueList.map((item) => {\n if (isObject(item)) return item[valueKey];\n return item;\n });\n return valueList;\n};\n","import { arrayFind, TAny, toArray, TPlainObject, valueIsEqual } from '@flatbiz/utils';\nimport { hooks } from '@wove/react';\nimport { Button, Select } from 'antd';\nimport { useMemo, useRef } from 'react';\nimport './style.less';\n\nimport { RedoOutlined } from '@ant-design/icons';\nimport { isString } from '@dimjs/lang';\nimport { RequestStatus } from '../request-status';\nimport { SelectorWrapperProps } from './types';\nimport { useRequest } from './use-request';\nimport { getVauleList } from './utils';\nexport * from './types';\n/**\n * 选择器包装组件\n * ```\n * 1. 不支持搜索 + 调用服务模式\n * ```\n */\nexport const SelectorWrapper = (props: SelectorWrapperProps) => {\n const {\n serviceConfig,\n showAllOption,\n onSelectorListChange,\n onSelectorListAllChange,\n onSelectorRequestError,\n onLabelRenderAdapter,\n requestMessageConfig,\n selectorList: outerSelectorList,\n modelKey,\n fieldNames,\n value,\n labelInValue,\n useCache,\n ...otherProps\n } = props;\n\n const firstRenderSelectList = useRef(true);\n\n // props 是否存在 selectorList,selectorList = undefined 也算存在\n const hasOuterSelectorList = props.hasOwnProperty('selectorList');\n const mergeFieldNames = { label: 'label', value: 'value', disabled: 'disabled', ...fieldNames };\n\n const {\n label: optionsItemLabelField,\n value: optionsItemValueField,\n disabled: optionsItemDisabledField,\n } = mergeFieldNames;\n\n const allOptionConfig = useMemo(() => {\n if (!showAllOption) return null;\n const isTrue = showAllOption === true;\n return {\n [optionsItemLabelField]: isTrue ? '全部' : showAllOption.label,\n [optionsItemValueField]: isTrue ? '' : showAllOption.value,\n };\n }, [optionsItemLabelField, optionsItemValueField, showAllOption]);\n\n const isMultiple = valueIsEqual(props.mode, ['multiple']);\n\n const { requestStatus, stateSelectorList, onRefreshRequest } = useRequest({\n fieldNames: mergeFieldNames,\n cacheKey: modelKey,\n hasOuterSelectorList,\n onChange: props.onChange,\n serviceConfig,\n outerSelectorList,\n onRespDataChange: (dataList) => {\n if (firstRenderSelectList.current) {\n onSelectorListChange?.(dataList || []);\n firstRenderSelectList.current = false;\n }\n onSelectorListAllChange?.(dataList || []);\n },\n onSelectorRequestError,\n useCache: useCache === undefined ? true : useCache,\n });\n\n const onRespChange = hooks.useCallbackRef((selectedList: TPlainObject[]) => {\n if (labelInValue) {\n if (isMultiple) {\n props.onChange?.(selectedList, selectedList);\n } else {\n props.onChange?.(selectedList[0], selectedList);\n }\n } else {\n const valueList = selectedList.map((item) => item[optionsItemValueField]);\n if (isMultiple) {\n props.onChange?.(valueList, selectedList);\n } else {\n props.onChange?.(valueList[0], selectedList[0]);\n }\n }\n });\n\n const onInnerChange = hooks.useCallbackRef((_value, otherParams) => {\n if (!otherParams) return props.onChange?.(undefined);\n const selectedList = toArray<TAny>(otherParams);\n const targetList = [] as TPlainObject[];\n selectedList.forEach((item) => {\n if (showAllOption && allOptionConfig && item.value === allOptionConfig[optionsItemValueField]) {\n targetList.push(allOptionConfig);\n } else {\n const filterTarget = arrayFind(stateSelectorList || [], item.value, optionsItemValueField);\n if (filterTarget) {\n targetList.push(filterTarget);\n }\n }\n });\n onRespChange(targetList);\n });\n\n const selectorAllList = useMemo(() => {\n if (requestStatus !== 'request-success') return [];\n if (!stateSelectorList || stateSelectorList.length === 0) return [];\n if (!allOptionConfig) return stateSelectorList;\n return [allOptionConfig].concat(stateSelectorList);\n }, [allOptionConfig, requestStatus, stateSelectorList]);\n\n const loading = requestStatus === 'request-progress';\n\n const selectValue = useMemo(() => {\n const targetList = getVauleList(value, optionsItemValueField);\n return isMultiple ? targetList : targetList[0];\n }, [isMultiple, optionsItemValueField, value]);\n\n const filterOption = hooks.useCallbackRef((input: string, option) => {\n const children = toArray(option.children);\n let mergeString = '';\n children.forEach((item) => {\n if (isString(item)) mergeString += item;\n });\n return mergeString.toLowerCase().indexOf(input.toLowerCase()) >= 0;\n });\n\n return (\n <Select\n showSearch={true}\n allowClear={true}\n dropdownMatchSelectWidth={false}\n filterOption={filterOption}\n {...otherProps}\n style={{ width: '100%', ...props.style }}\n value={selectValue}\n loading={loading}\n onChange={onInnerChange}\n fieldNames={undefined}\n suffixIcon={\n requestStatus === 'request-error' ? (\n <RedoOutlined spin={loading} onClick={onRefreshRequest} />\n ) : undefined\n }\n notFoundContent={\n <RequestStatus\n status={requestStatus}\n loading={loading}\n messageConfig={{\n 'request-init': '暂无数据',\n ...requestMessageConfig,\n }}\n errorButton={\n <Button type=\"primary\" onClick={onRefreshRequest}>\n 重新获取数据\n </Button>\n }\n />\n }\n >\n {selectorAllList.map((item, index) => {\n const value = item[optionsItemValueField];\n const label = item[optionsItemLabelField];\n return (\n <Select.Option\n value={value}\n label={label}\n key={`${value}-${index}`}\n disabled={item[optionsItemDisabledField]}\n >\n {props.showIcon ? (\n <span className=\"v-selector-item-icon\">{props.icon?.(item, index)}</span>\n ) : null}\n {onLabelRenderAdapter ? onLabelRenderAdapter(item) : label}\n </Select.Option>\n );\n })}\n </Select>\n );\n};\n"],"names":["useRequest","options","cacheKey","serviceConfig","hasOuterSelectorList","outerSelectorList","onRespDataChange","onSelectorRequestError","onChange","useCache","fieldNames","serviceRequestParams","params","requiredParamsKeys","hasServiceRequestParams","Object","keys","length","_useState","useState","stateSelectorList","setStateSelectorList","_useState2","requestStatus","setRequestStatus","_useState3","Date","now","refreshKey","setRefreshKey","serviceRequestParamsStringify","useMemo","sortDataStringify","JSON","stringify","_json","sort","undefined","error","serviceRequestCahceKey","serviceRequestCahceStatusKey","pubSubKey","prevServiceRequestParamsStringify","fbaHooks","usePrevious","prevParams","serviceRespDataAdapter","respData","onRequestResultAdapter","list","result","_get","_isArray","getWindowCacheData","_window$__selector_wr","window","getWindowCacheValue","_getWindowCacheData","getWindowCacheStatus","_getWindowCacheData2","setWindowCache","key","value","onChangeRequestStatus","status","onRequest","Promise","$return","$error","respAdapterData","$Try_2_Catch","console","setTimeout","pubSub","publish","reject","$boundEx","resolve","then","$await_6","useEffectCustomAsync","isEmpty","_respAdapterData","_dataList","find","isUndefinedOrNull","_isDeepEqual","$Try_3_Post","$Try_3_Catch","$await_7","$If_4","call","this","dataList","subscribe","_msg","_ref","$await_8","onRefreshRequest","getVauleList","data","valueKey","valueList","toArray","map","item","_isObject","SelectorWrapper","props","showAllOption","onSelectorListChange","onSelectorListAllChange","onLabelRenderAdapter","requestMessageConfig","selectorList","modelKey","labelInValue","otherProps","_objectWithoutPropertiesLoose","_excluded","firstRenderSelectList","useRef","hasOwnProperty","mergeFieldNames","_extends","label","disabled","optionsItemLabelField","optionsItemValueField","optionsItemDisabledField","allOptionConfig","isTrue","isMultiple","valueIsEqual","mode","_useRequest","current","onRespChange","_hooks","useCallbackRef","selectedList","onInnerChange","_value","otherParams","targetList","forEach","push","filterTarget","arrayFind","selectorAllList","concat","loading","selectValue","filterOption","input","option","children","mergeString","_isString","toLowerCase","indexOf","_jsx","Select","showSearch","allowClear","dropdownMatchSelectWidth","style","width","suffixIcon","_RedoOutlined","spin","onClick","notFoundContent","RequestStatus","messageConfig","errorButton","Button","type","index","_jsxs","Option","showIcon","className","icon"],"mappings":"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"}
@@ -2,5 +2,5 @@
2
2
  import './../request-status/index.css';
3
3
  import './index.css';
4
4
  /*! @flatjs/forge MIT @flatbiz/antd */
5
- export{S as SelectorWrapperSearch}from"../selector-wrapper-search-228c96c5.js";import"@ant-design/icons/es/icons/RedoOutlined";import"@wove/react/cjs/hooks";import"../_rollupPluginBabelHelpers-1f4d8910.js";import"@dimjs/lang/cjs/is-array";import"@dimjs/utils/cjs/get";import"antd";import"react";import"../request-status-03fc60e2.js";import"@dimjs/utils/cjs/extend";import"@flatbiz/utils";import"react/jsx-runtime";
5
+ export{S as SelectorWrapperSearch}from"../selector-wrapper-search-f799bcf0.js";import"@ant-design/icons/es/icons/RedoOutlined";import"@wove/react/cjs/hooks";import"../_rollupPluginBabelHelpers-1f4d8910.js";import"@dimjs/lang/cjs/is-array";import"@dimjs/utils/cjs/get";import"antd";import"react";import"../request-status-03fc60e2.js";import"@dimjs/utils/cjs/extend";import"@flatbiz/utils";import"react/jsx-runtime";
6
6
  //# sourceMappingURL=index.js.map
@@ -1,3 +1,3 @@
1
1
  /*! @flatjs/forge MIT @flatbiz/antd */
2
- import e from"@ant-design/icons/es/icons/RedoOutlined";import{hooks as r}from"@wove/react/cjs/hooks";import{_ as t,a as o}from"./_rollupPluginBabelHelpers-1f4d8910.js";import{isArray as n}from"@dimjs/lang/cjs/is-array";import{get as s}from"@dimjs/utils/cjs/get";import{Select as i,Button as a}from"antd";import{useState as l,useMemo as u}from"react";import{R as c}from"./request-status-03fc60e2.js";import{jsx as d}from"react/jsx-runtime";var f=["showAllOption","serviceConfig","onSelectorListChange","onSelectorRequestError","requestMessageConfig","fieldNames"];var v=function v(m){var p=m.showAllOption,h=m.serviceConfig,g=m.onSelectorListChange,q=m.onSelectorRequestError,b=m.requestMessageConfig,C=m.fieldNames,y=t(m,f);var w=l("request-init"),R=w[0],j=w[1];var S=l(),k=S[0],A=S[1];var O=(C==null?void 0:C.label)||"label";var x=(C==null?void 0:C.value)||"value";var E=(C==null?void 0:C.disabled)||"disabled";var M=(C==null?void 0:C.searchKeyword)||"searchKeyword";var P=h.params;var B=u((function(){var e=p===true;if(p){return{label:e?"全部":p.label,value:e?"":p.value}}return null}),[p]);var K=function e(r){if(h.onRequestResultAdapter){return h.onRequestResultAdapter(r)}if(C!=null&&C.list){var t=s(r,C==null?void 0:C.list);return n(t)?t:[]}return n(r)?r:[]};var L=function e(r){return new Promise((function(e,t){var n,s,i;var a=function(){try{return e()}catch(e){return t(e)}};var l=function(e){try{j("request-error");q==null?void 0:q(e);return a()}catch(e){return t(e)}};try{j("request-progress");return Promise.resolve(h.onRequest==null?void 0:h.onRequest(o({},P,(n={},n[M]=r,n)))).then((function(e){try{s=e;i=K(s);g==null?void 0:g(i);if(O&&x){i=i.map((function(e){return o({},e,{label:e[O],value:e[x],disabled:e[E||"disabled"]})}))}if(B){i.unshift(B)}A(i);j("request-success");return a()}catch(e){return l(e)}}),l)}catch(e){l(e)}}))};var N=r.useDebounceCallback((function(e){A([]);void L(e)}),300);var _=R==="request-progress";return d(i,o({showSearch:true,allowClear:true,dropdownMatchSelectWidth:false},y,{style:o({width:"100%"},m.style),options:k,filterOption:false,onSearch:N,notFoundContent:d(c,{status:R,loading:_,messageConfig:o({"request-init":"请输入搜索条件"},b),errorButton:d(a,{type:"primary",onClick:L,children:"重新获取数据"})}),suffixIcon:R==="request-error"?d(e,{spin:_,onClick:L}):undefined,loading:_}))};export{v as S};
3
- //# sourceMappingURL=selector-wrapper-search-228c96c5.js.map
2
+ import e from"@ant-design/icons/es/icons/RedoOutlined";import{hooks as r}from"@wove/react/cjs/hooks";import{_ as t,a as o}from"./_rollupPluginBabelHelpers-1f4d8910.js";import{isArray as n}from"@dimjs/lang/cjs/is-array";import{get as s}from"@dimjs/utils/cjs/get";import{Select as i,Button as a}from"antd";import{useState as l,useMemo as u}from"react";import{R as c}from"./request-status-03fc60e2.js";import{jsx as d}from"react/jsx-runtime";var f=["showAllOption","serviceConfig","onSelectorListChange","onSelectorRequestError","requestMessageConfig","fieldNames"];var v=function v(m){var p=m.showAllOption,h=m.serviceConfig,g=m.onSelectorListChange,q=m.onSelectorRequestError,b=m.requestMessageConfig,C=m.fieldNames,y=t(m,f);var w=l("request-init"),R=w[0],j=w[1];var S=l(),k=S[0],A=S[1];var O=(C==null?void 0:C.label)||"label";var x=(C==null?void 0:C.value)||"value";var M=(C==null?void 0:C.disabled)||"disabled";var P=(C==null?void 0:C.searchKeyword)||"searchKeyword";var B=h.params;var E=u((function(){var e=p===true;if(p){return{label:e?"全部":p.label,value:e?"":p.value}}return null}),[p]);var K=function e(r){if(h.onRequestResultAdapter){return h.onRequestResultAdapter(r)}if(C!=null&&C.list){var t=s(r,C==null?void 0:C.list);return n(t)?t:[]}return n(r)?r:[]};var L=function e(r){return new Promise((function(e,t){var n,s,i;var a=function(){try{return e()}catch(e){return t(e)}};var l=function(e){try{j("request-error");q==null?void 0:q(e);return a()}catch(e){return t(e)}};try{j("request-progress");return Promise.resolve(h.onRequest==null?void 0:h.onRequest(o({},B,(n={},n[P]=r,n)))).then((function(e){try{s=e;i=K(s);g==null?void 0:g(i);if(O&&x){i=i.map((function(e){return o({},e,{label:e[O],value:e[x],disabled:e[M||"disabled"]})}))}if(E){i.unshift(E)}A(i);j("request-success");return a()}catch(e){return l(e)}}),l)}catch(e){l(e)}}))};var N=r.useDebounceCallback((function(e){A([]);void L(e)}),300);var _=R==="request-progress";return d(i,o({showSearch:true,allowClear:true,dropdownMatchSelectWidth:false},y,{style:o({width:"100%"},m.style),options:k,filterOption:false,onSearch:N,notFoundContent:d(c,{status:R,loading:_,messageConfig:o({"request-init":"请输入搜索条件"},b),errorButton:d(a,{type:"primary",onClick:L,children:"重新获取数据"})}),suffixIcon:R==="request-error"?d(e,{spin:_,onClick:L}):undefined,loading:_}))};export{v as S};
3
+ //# sourceMappingURL=selector-wrapper-search-f799bcf0.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"selector-wrapper-search-228c96c5.js","sources":["@flatbiz/antd/src/selector-wrapper-search/selector-wrapper-search.tsx"],"sourcesContent":["import { RedoOutlined } from '@ant-design/icons';\nimport { isArray } from '@dimjs/lang';\nimport { get } from '@dimjs/utils';\nimport { LabelValueItem, TAny, TPlainObject } from '@flatbiz/utils';\nimport { hooks } from '@wove/react';\nimport { Button, Select, SelectProps } from 'antd';\nimport { useMemo, useState } from 'react';\nimport { RequestStatus, TRequestStatus, TRequestStatusProps } from '../request-status';\n\nexport type SelectorWrapperSearchServiceConfig = {\n params?: TPlainObject;\n onRequest: (params?: TAny) => TAny;\n onRequestResultAdapter?: (respData: TAny) => TPlainObject[];\n};\n\nexport type SelectorWrapperSearchProps = Omit<\n SelectProps,\n 'onSearch' | 'notFoundContent' | 'options' | 'fieldNames' | 'loading'\n> & {\n /**\n * 参数Key映射\n * ```\n * 1. list 为 onRequest 返回数据中列表key值,可多级取值,例如: 'a.b.c'\n * 2. 配置 serviceConfig.onRequestResultAdapter后,fieldNames.list配置失效\n * ```\n */\n fieldNames?: { label: string; value: string; disabled?: string; searchKeyword?: string; list?: string };\n /**\n * 请求服务需求的数据\n */\n serviceConfig: SelectorWrapperSearchServiceConfig;\n /**\n * 添加全部选项\n * ```\n * 1. 默认值label=\"全部\",value=\"\"\n * 2. 可配置label、value\n * ```\n */\n showAllOption?: true | TPlainObject<string | number>;\n /** selectorList发生变更时触发,每次都会调用 */\n onSelectorListChange?: (dataList: TPlainObject[]) => void;\n /**\n * 通过服务获取数据异常回调\n */\n onSelectorRequestError?: (error: Error) => void;\n\n requestMessageConfig?: TRequestStatusProps['messageConfig'];\n};\n/**\n * 选择器简单包装组件\n * @param props\n * @returns\n * ```\n * 1. 只支持 search + 服务 功能\n * 2. 不会缓存接口数据\n * 3. 不会对value、onChange做任何处理\n * ```\n */\nexport const SelectorWrapperSearch = (props: SelectorWrapperSearchProps) => {\n const {\n showAllOption,\n serviceConfig,\n onSelectorListChange,\n onSelectorRequestError,\n requestMessageConfig,\n fieldNames,\n ...otherProps\n } = props;\n const [requestStatus, setRequestStatus] = useState<TRequestStatus>('request-init');\n const [dataSource, setDataSource] = useState<TPlainObject[]>();\n const optionsItemLabelField = fieldNames?.label || 'label';\n const optionsItemValueField = fieldNames?.value || 'value';\n const optionsItemDisabledField = fieldNames?.disabled || 'disabled';\n const searchKeyword = fieldNames?.searchKeyword || 'searchKeyword';\n const serviceParams = serviceConfig.params;\n\n const allOptionConfig = useMemo(() => {\n const isTrue = showAllOption === true;\n if (showAllOption) {\n return {\n label: isTrue ? '全部' : (showAllOption.label as string),\n value: isTrue ? '' : (showAllOption.value as TAny),\n };\n }\n return null;\n }, [showAllOption]);\n\n const serviceRespDataAdapter = (respData) => {\n if (serviceConfig.onRequestResultAdapter) {\n return serviceConfig.onRequestResultAdapter(respData as unknown as TPlainObject);\n }\n if (fieldNames?.list) {\n const result = get(respData, fieldNames?.list);\n return isArray(result) ? result : [];\n }\n return isArray(respData) ? respData : [];\n };\n\n const startDataSourceRequest = async (keyword) => {\n try {\n setRequestStatus('request-progress');\n const respData = await serviceConfig.onRequest?.({\n ...serviceParams,\n [searchKeyword]: keyword,\n });\n let respAdapterData = serviceRespDataAdapter(respData);\n onSelectorListChange?.(respAdapterData);\n if (optionsItemLabelField && optionsItemValueField) {\n respAdapterData = respAdapterData.map((item) => {\n return {\n ...item,\n label: item[optionsItemLabelField],\n value: item[optionsItemValueField],\n disabled: item[optionsItemDisabledField || 'disabled'],\n };\n });\n }\n\n if (allOptionConfig) {\n respAdapterData.unshift(allOptionConfig);\n }\n setDataSource(respAdapterData);\n setRequestStatus('request-success');\n } catch (error) {\n setRequestStatus('request-error');\n onSelectorRequestError?.(error);\n }\n };\n\n const onSearch = hooks.useDebounceCallback((value: string) => {\n setDataSource([]);\n void startDataSourceRequest(value);\n }, 300);\n\n const loading = requestStatus === 'request-progress';\n return (\n <Select\n showSearch={true}\n allowClear={true}\n dropdownMatchSelectWidth={false}\n {...otherProps}\n style={{ width: '100%', ...props.style }}\n options={dataSource as LabelValueItem[]}\n filterOption={false}\n onSearch={onSearch}\n notFoundContent={\n <RequestStatus\n status={requestStatus}\n loading={loading}\n messageConfig={{\n 'request-init': '请输入搜索条件',\n ...requestMessageConfig,\n }}\n errorButton={\n <Button type=\"primary\" onClick={startDataSourceRequest}>\n 重新获取数据\n </Button>\n }\n />\n }\n suffixIcon={\n requestStatus === 'request-error' ? (\n <RedoOutlined spin={loading} onClick={startDataSourceRequest} />\n ) : undefined\n }\n loading={loading}\n />\n );\n};\n"],"names":["SelectorWrapperSearch","props","showAllOption","serviceConfig","onSelectorListChange","onSelectorRequestError","requestMessageConfig","fieldNames","otherProps","_objectWithoutPropertiesLoose","_excluded","_useState","useState","requestStatus","setRequestStatus","_useState2","dataSource","setDataSource","optionsItemLabelField","label","optionsItemValueField","value","optionsItemDisabledField","disabled","searchKeyword","serviceParams","params","allOptionConfig","useMemo","isTrue","serviceRespDataAdapter","respData","onRequestResultAdapter","list","result","_get","_isArray","startDataSourceRequest","keyword","Promise","$return","$error","_extends2","_respData","respAdapterData","$Try_1_Post","$boundEx","$Try_1_Catch","error","resolve","onRequest","_extends","then","$await_2","map","item","unshift","onSearch","_hooks","useDebounceCallback","loading","_jsx","Select","showSearch","allowClear","dropdownMatchSelectWidth","style","width","options","filterOption","notFoundContent","RequestStatus","status","messageConfig","errorButton","Button","type","onClick","children","suffixIcon","_RedoOutlined","spin","undefined"],"mappings":"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"}
1
+ {"version":3,"file":"selector-wrapper-search-f799bcf0.js","sources":["@flatbiz/antd/src/selector-wrapper-search/selector-wrapper-search.tsx"],"sourcesContent":["import { RedoOutlined } from '@ant-design/icons';\nimport { isArray } from '@dimjs/lang';\nimport { get } from '@dimjs/utils';\nimport { LabelValueItem, TAny, TPlainObject } from '@flatbiz/utils';\nimport { hooks } from '@wove/react';\nimport { Button, Select, SelectProps } from 'antd';\nimport { useMemo, useState } from 'react';\nimport { RequestStatus, TRequestStatus, TRequestStatusProps } from '../request-status';\n\nexport type SelectorWrapperSearchServiceConfig = {\n params?: TPlainObject;\n onRequest: (params?: TAny) => TAny;\n onRequestResultAdapter?: (respData: TAny) => TPlainObject[];\n};\n\nexport type SelectorWrapperSearchProps = Omit<\n SelectProps,\n 'onSearch' | 'notFoundContent' | 'options' | 'fieldNames' | 'loading'\n> & {\n /**\n * 参数Key映射\n * ```\n * 1. list 为 onRequest 返回数据中列表key值,可多级取值,例如: 'a.b.c'\n * 2. 配置 serviceConfig.onRequestResultAdapter后,fieldNames.list配置失效\n * ```\n */\n fieldNames?: { label: string; value: string; disabled?: string; searchKeyword?: string; list?: string };\n /**\n * 请求服务需求的数据\n */\n serviceConfig: SelectorWrapperSearchServiceConfig;\n /**\n * 添加全部选项\n * ```\n * 1. 默认值label=\"全部\",value=\"\"\n * 2. 可配置label、value\n * ```\n */\n showAllOption?: true | TPlainObject<string | number>;\n /** selectorList发生变更时触发,每次都会调用 */\n onSelectorListChange?: (dataList: TPlainObject[]) => void;\n /**\n * 通过服务获取数据异常回调\n */\n onSelectorRequestError?: (error: Error) => void;\n\n requestMessageConfig?: TRequestStatusProps['messageConfig'];\n};\n/**\n * 选择器简单包装组件\n * @param props\n * @returns\n * ```\n * 1. 只支持 search + 服务 功能\n * 2. 不会缓存接口数据\n * 3. 不会对value、onChange做任何处理\n * ```\n */\nexport const SelectorWrapperSearch = (props: SelectorWrapperSearchProps) => {\n const {\n showAllOption,\n serviceConfig,\n onSelectorListChange,\n onSelectorRequestError,\n requestMessageConfig,\n fieldNames,\n ...otherProps\n } = props;\n const [requestStatus, setRequestStatus] = useState<TRequestStatus>('request-init');\n const [dataSource, setDataSource] = useState<TPlainObject[]>();\n const optionsItemLabelField = fieldNames?.label || 'label';\n const optionsItemValueField = fieldNames?.value || 'value';\n const optionsItemDisabledField = fieldNames?.disabled || 'disabled';\n const searchKeyword = fieldNames?.searchKeyword || 'searchKeyword';\n const serviceParams = serviceConfig.params;\n\n const allOptionConfig = useMemo(() => {\n const isTrue = showAllOption === true;\n if (showAllOption) {\n return {\n label: isTrue ? '全部' : (showAllOption.label as string),\n value: isTrue ? '' : (showAllOption.value as TAny),\n };\n }\n return null;\n }, [showAllOption]);\n\n const serviceRespDataAdapter = (respData) => {\n if (serviceConfig.onRequestResultAdapter) {\n return serviceConfig.onRequestResultAdapter(respData as unknown as TPlainObject);\n }\n if (fieldNames?.list) {\n const result = get(respData, fieldNames?.list);\n return isArray(result) ? result : [];\n }\n return isArray(respData) ? respData : [];\n };\n\n const startDataSourceRequest = async (keyword) => {\n try {\n setRequestStatus('request-progress');\n const respData = await serviceConfig.onRequest?.({\n ...serviceParams,\n [searchKeyword]: keyword,\n });\n let respAdapterData = serviceRespDataAdapter(respData);\n onSelectorListChange?.(respAdapterData);\n if (optionsItemLabelField && optionsItemValueField) {\n respAdapterData = respAdapterData.map((item) => {\n return {\n ...item,\n label: item[optionsItemLabelField],\n value: item[optionsItemValueField],\n disabled: item[optionsItemDisabledField || 'disabled'],\n };\n });\n }\n\n if (allOptionConfig) {\n respAdapterData.unshift(allOptionConfig);\n }\n setDataSource(respAdapterData);\n setRequestStatus('request-success');\n } catch (error) {\n setRequestStatus('request-error');\n onSelectorRequestError?.(error);\n }\n };\n\n const onSearch = hooks.useDebounceCallback((value: string) => {\n setDataSource([]);\n void startDataSourceRequest(value);\n }, 300);\n\n const loading = requestStatus === 'request-progress';\n return (\n <Select\n showSearch={true}\n allowClear={true}\n dropdownMatchSelectWidth={false}\n {...otherProps}\n style={{ width: '100%', ...props.style }}\n options={dataSource as LabelValueItem[]}\n filterOption={false}\n onSearch={onSearch}\n notFoundContent={\n <RequestStatus\n status={requestStatus}\n loading={loading}\n messageConfig={{\n 'request-init': '请输入搜索条件',\n ...requestMessageConfig,\n }}\n errorButton={\n <Button type=\"primary\" onClick={startDataSourceRequest}>\n 重新获取数据\n </Button>\n }\n />\n }\n suffixIcon={\n requestStatus === 'request-error' ? (\n <RedoOutlined spin={loading} onClick={startDataSourceRequest} />\n ) : undefined\n }\n loading={loading}\n />\n );\n};\n"],"names":["SelectorWrapperSearch","props","showAllOption","serviceConfig","onSelectorListChange","onSelectorRequestError","requestMessageConfig","fieldNames","otherProps","_objectWithoutPropertiesLoose","_excluded","_useState","useState","requestStatus","setRequestStatus","_useState2","dataSource","setDataSource","optionsItemLabelField","label","optionsItemValueField","value","optionsItemDisabledField","disabled","searchKeyword","serviceParams","params","allOptionConfig","useMemo","isTrue","serviceRespDataAdapter","respData","onRequestResultAdapter","list","result","_get","_isArray","startDataSourceRequest","keyword","Promise","$return","$error","_extends2","_respData","respAdapterData","$Try_1_Post","$boundEx","$Try_1_Catch","error","resolve","onRequest","_extends","then","$await_2","map","item","unshift","onSearch","_hooks","useDebounceCallback","loading","_jsx","Select","showSearch","allowClear","dropdownMatchSelectWidth","style","width","options","filterOption","notFoundContent","RequestStatus","status","messageConfig","errorButton","Button","type","onClick","children","suffixIcon","_RedoOutlined","spin","undefined"],"mappings":"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"}
@@ -3,5 +3,5 @@ import './../fba-hooks/index.css';
3
3
  import './../request-status/index.css';
4
4
  import './index.css';
5
5
  /*! @flatjs/forge MIT @flatbiz/antd */
6
- export{S as SelectorWrapperSimple}from"../selector-wrapper-simple-c51eba69.js";import"@ant-design/icons/es/icons/RedoOutlined";import"../_rollupPluginBabelHelpers-1f4d8910.js";import"@dimjs/lang/cjs/is-array";import"@dimjs/utils/cjs/get";import"antd";import"react";import"../fba-hooks/index.js";import"@wove/react/cjs/hooks";import"../use-responsive-point-21b8c601.js";import"../request-status-03fc60e2.js";import"@dimjs/utils/cjs/extend";import"@flatbiz/utils";import"react/jsx-runtime";
6
+ export{S as SelectorWrapperSimple}from"../selector-wrapper-simple-7b34f7bd.js";import"@ant-design/icons/es/icons/RedoOutlined";import"../_rollupPluginBabelHelpers-1f4d8910.js";import"@dimjs/lang/cjs/is-array";import"@dimjs/utils/cjs/get";import"antd";import"react";import"../fba-hooks/index.js";import"@wove/react/cjs/hooks";import"../use-responsive-point-21b8c601.js";import"../request-status-03fc60e2.js";import"@dimjs/utils/cjs/extend";import"@flatbiz/utils";import"react/jsx-runtime";
7
7
  //# sourceMappingURL=index.js.map
@@ -1,3 +1,3 @@
1
1
  /*! @flatjs/forge MIT @flatbiz/antd */
2
- import r from"@ant-design/icons/es/icons/RedoOutlined";import{_ as e,a as t}from"./_rollupPluginBabelHelpers-1f4d8910.js";import{isArray as n}from"@dimjs/lang/cjs/is-array";import{get as o}from"@dimjs/utils/cjs/get";import{Select as s,Button as i}from"antd";import{useState as u,useMemo as a}from"react";import{fbaHooks as l}from"./fba-hooks/index.js";import{R as f}from"./request-status-03fc60e2.js";import{jsx as c}from"react/jsx-runtime";var v=["showAllOption","serviceConfig","onSelectorListChange","onSelectorRequestError","requestMessageConfig","fieldNames"];var d=function d(m){var p=m.showAllOption,g=m.serviceConfig,q=m.onSelectorListChange,h=m.onSelectorRequestError,C=m.requestMessageConfig,b=m.fieldNames,R=e(m,v);var y=u("request-init"),j=y[0],S=y[1];var w=u(),x=w[0],A=w[1];var E=(b==null?void 0:b.label)||"label";var k=(b==null?void 0:b.value)||"value";var O=(b==null?void 0:b.disabled)||"disabled";var P=g.params;var B=a((function(){var r=p===true;if(p){return{label:r?"全部":p.label,value:r?"":p.value}}return null}),[p]);var L=function r(e){if(g.onRequestResultAdapter){return g.onRequestResultAdapter(e)}if(b!=null&&b.list){var t=o(e,b==null?void 0:b.list);return n(t)?t:[]}return n(e)?e:[]};var M=function r(){return new Promise((function(r,e){var n,o;var s=function(){try{return r()}catch(r){return e(r)}};var i=function(r){try{S("request-error");h==null?void 0:h(r);return s()}catch(r){return e(r)}};try{S("request-progress");return Promise.resolve(g.onRequest==null?void 0:g.onRequest(P)).then((function(r){try{n=r;o=L(n);q==null?void 0:q(o);if(E&&k){o=o.map((function(r){return t({},r,{label:r[E],value:r[k],disabled:r[O]})}))}if(B){o.unshift(B)}A(o);S("request-success");return s()}catch(r){return i(r)}}),i)}catch(r){i(r)}}))};l.useEffectCustom((function(){void M()}),[]);var N=j==="request-progress";return c(s,t({},R,{style:t({width:"100%"},m.style),options:x,notFoundContent:c(f,{status:j,loading:N,messageConfig:C,errorButton:c(i,{type:"primary",onClick:M,children:"重新获取数据"})}),suffixIcon:j==="request-error"?c(r,{spin:N,onClick:M}):undefined,loading:N}))};export{d as S};
3
- //# sourceMappingURL=selector-wrapper-simple-c51eba69.js.map
2
+ import r from"@ant-design/icons/es/icons/RedoOutlined";import{_ as e,a as t}from"./_rollupPluginBabelHelpers-1f4d8910.js";import{isArray as n}from"@dimjs/lang/cjs/is-array";import{get as o}from"@dimjs/utils/cjs/get";import{Select as s,Button as i}from"antd";import{useState as u,useMemo as a}from"react";import{fbaHooks as l}from"./fba-hooks/index.js";import{R as f}from"./request-status-03fc60e2.js";import{jsx as c}from"react/jsx-runtime";var v=["showAllOption","serviceConfig","onSelectorListChange","onSelectorRequestError","requestMessageConfig","fieldNames"];var d=function d(m){var p=m.showAllOption,g=m.serviceConfig,q=m.onSelectorListChange,h=m.onSelectorRequestError,C=m.requestMessageConfig,b=m.fieldNames,R=e(m,v);var y=u("request-init"),j=y[0],S=y[1];var w=u(),x=w[0],A=w[1];var k=(b==null?void 0:b.label)||"label";var E=(b==null?void 0:b.value)||"value";var O=(b==null?void 0:b.disabled)||"disabled";var P=g.params;var B=a((function(){var r=p===true;if(p){return{label:r?"全部":p.label,value:r?"":p.value}}return null}),[p]);var L=function r(e){if(g.onRequestResultAdapter){return g.onRequestResultAdapter(e)}if(b!=null&&b.list){var t=o(e,b==null?void 0:b.list);return n(t)?t:[]}return n(e)?e:[]};var M=function r(){return new Promise((function(r,e){var n,o;var s=function(){try{return r()}catch(r){return e(r)}};var i=function(r){try{S("request-error");h==null?void 0:h(r);return s()}catch(r){return e(r)}};try{S("request-progress");return Promise.resolve(g.onRequest==null?void 0:g.onRequest(P)).then((function(r){try{n=r;o=L(n);q==null?void 0:q(o);if(k&&E){o=o.map((function(r){return t({},r,{label:r[k],value:r[E],disabled:r[O]})}))}if(B){o.unshift(B)}A(o);S("request-success");return s()}catch(r){return i(r)}}),i)}catch(r){i(r)}}))};l.useEffectCustom((function(){void M()}),[]);var N=j==="request-progress";return c(s,t({},R,{style:t({width:"100%"},m.style),options:x,notFoundContent:c(f,{status:j,loading:N,messageConfig:C,errorButton:c(i,{type:"primary",onClick:M,children:"重新获取数据"})}),suffixIcon:j==="request-error"?c(r,{spin:N,onClick:M}):undefined,loading:N}))};export{d as S};
3
+ //# sourceMappingURL=selector-wrapper-simple-7b34f7bd.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"selector-wrapper-simple-c51eba69.js","sources":["@flatbiz/antd/src/selector-wrapper-simple/selector-wrapper-simple.tsx"],"sourcesContent":["import { RedoOutlined } from '@ant-design/icons';\nimport { isArray } from '@dimjs/lang';\nimport { get } from '@dimjs/utils';\nimport { LabelValueItem, TAny, TPlainObject } from '@flatbiz/utils';\nimport { Button, Select, SelectProps } from 'antd';\nimport { useMemo, useState } from 'react';\nimport { fbaHooks } from '../fba-hooks';\nimport { RequestStatus, TRequestStatus, TRequestStatusProps } from '../request-status';\n\nexport type SelectorWrapperSimpleServiceConfig = {\n params?: TPlainObject;\n onRequest: (params?: TAny) => TAny;\n onRequestResultAdapter?: (respData: TAny) => TPlainObject[];\n};\n\nexport type SelectorWrapperSimpleProps = Omit<\n SelectProps,\n 'onSearch' | 'notFoundContent' | 'options' | 'fieldNames' | 'loading'\n> & {\n /**\n * 参数Key映射\n * ```\n * 1. list 为 onRequest 返回数据中列表key值,可多级取值,例如: 'a.b.c'\n * 2. 配置 serviceConfig.onRequestResultAdapter后,fieldNames.list配置失效\n * ```\n */\n fieldNames?: { label: string; value: string; disabled?: string; list?: string };\n /**\n * 请求服务需求的数据\n */\n serviceConfig: SelectorWrapperSimpleServiceConfig;\n /**\n * 添加全部选项\n * ```\n * 1. 默认值label=\"全部\",value=\"\"\n * 2. 可配置label、value\n * ```\n */\n showAllOption?: true | TPlainObject<string | number>;\n /** selectorList发生变更时触发,每次都会调用 */\n onSelectorListChange?: (dataList: TPlainObject[]) => void;\n /**\n * 通过服务获取数据异常回调\n */\n onSelectorRequestError?: (error: Error) => void;\n\n requestMessageConfig?: TRequestStatusProps['messageConfig'];\n};\n/**\n * 选择器简单包装组件\n * @param props\n * @returns\n * ```\n * 1. 不支持search效果\n * 2. 不会缓存接口数据\n * 3. 不会对value、onChange做任何处理\n * ```\n */\nexport const SelectorWrapperSimple = (props: SelectorWrapperSimpleProps) => {\n const {\n showAllOption,\n serviceConfig,\n onSelectorListChange,\n onSelectorRequestError,\n requestMessageConfig,\n fieldNames,\n ...otherProps\n } = props;\n const [requestStatus, setRequestStatus] = useState<TRequestStatus>('request-init');\n const [dataSource, setDataSource] = useState<TPlainObject[]>();\n const optionsItemLabelField = fieldNames?.label || 'label';\n const optionsItemValueField = fieldNames?.value || 'value';\n const optionsItemDisabledField = fieldNames?.disabled || 'disabled';\n const serviceParams = serviceConfig.params;\n\n const allOptionConfig = useMemo(() => {\n const isTrue = showAllOption === true;\n if (showAllOption) {\n return {\n label: isTrue ? '全部' : (showAllOption.label as string),\n value: isTrue ? '' : (showAllOption.value as TAny),\n };\n }\n return null;\n }, [showAllOption]);\n\n const serviceRespDataAdapter = (respData) => {\n if (serviceConfig.onRequestResultAdapter) {\n return serviceConfig.onRequestResultAdapter(respData as unknown as TPlainObject);\n }\n if (fieldNames?.list) {\n const result = get(respData, fieldNames?.list);\n return isArray(result) ? result : [];\n }\n return isArray(respData) ? respData : [];\n };\n\n const startDataSourceRequest = async () => {\n try {\n setRequestStatus('request-progress');\n const respData = await serviceConfig.onRequest?.(serviceParams);\n let respAdapterData = serviceRespDataAdapter(respData);\n onSelectorListChange?.(respAdapterData);\n if (optionsItemLabelField && optionsItemValueField) {\n respAdapterData = respAdapterData.map((item) => {\n return {\n ...item,\n label: item[optionsItemLabelField],\n value: item[optionsItemValueField],\n disabled: item[optionsItemDisabledField],\n };\n });\n }\n\n if (allOptionConfig) {\n respAdapterData.unshift(allOptionConfig);\n }\n setDataSource(respAdapterData);\n setRequestStatus('request-success');\n } catch (error) {\n setRequestStatus('request-error');\n onSelectorRequestError?.(error);\n }\n };\n\n fbaHooks.useEffectCustom(() => {\n void startDataSourceRequest();\n }, []);\n\n const loading = requestStatus === 'request-progress';\n\n return (\n <Select\n {...otherProps}\n style={{ width: '100%', ...props.style }}\n options={dataSource as LabelValueItem[]}\n notFoundContent={\n <RequestStatus\n status={requestStatus}\n loading={loading}\n messageConfig={requestMessageConfig}\n errorButton={\n <Button type=\"primary\" onClick={startDataSourceRequest}>\n 重新获取数据\n </Button>\n }\n />\n }\n suffixIcon={\n requestStatus === 'request-error' ? (\n <RedoOutlined spin={loading} onClick={startDataSourceRequest} />\n ) : undefined\n }\n loading={loading}\n />\n );\n};\n"],"names":["SelectorWrapperSimple","props","showAllOption","serviceConfig","onSelectorListChange","onSelectorRequestError","requestMessageConfig","fieldNames","otherProps","_objectWithoutPropertiesLoose","_excluded","_useState","useState","requestStatus","setRequestStatus","_useState2","dataSource","setDataSource","optionsItemLabelField","label","optionsItemValueField","value","optionsItemDisabledField","disabled","serviceParams","params","allOptionConfig","useMemo","isTrue","serviceRespDataAdapter","respData","onRequestResultAdapter","list","result","_get","_isArray","startDataSourceRequest","Promise","$return","$error","_respData","respAdapterData","$Try_1_Post","$boundEx","$Try_1_Catch","error","resolve","onRequest","then","$await_2","map","item","_extends","unshift","fbaHooks","useEffectCustom","loading","_jsx","Select","style","width","options","notFoundContent","RequestStatus","status","messageConfig","errorButton","Button","type","onClick","children","suffixIcon","_RedoOutlined","spin","undefined"],"mappings":";yjBA0DaA,EAAwB,SAAxBA,EAAyBC,GACpC,IACEC,EAOED,EAPFC,cACAC,EAMEF,EANFE,cACAC,EAKEH,EALFG,qBACAC,EAIEJ,EAJFI,uBACAC,EAGEL,EAHFK,qBACAC,EAEEN,EAFFM,WACGC,EAAUC,EACXR,EAAKS,GACT,IAAAC,EAA0CC,EAAyB,gBAA5DC,EAAaF,EAAA,GAAEG,EAAgBH,EAAA,GACtC,IAAAI,EAAoCH,IAA7BI,EAAUD,EAAA,GAAEE,EAAaF,EAAA,GAChC,IAAMG,GAAwBX,eAAAA,EAAYY,QAAS,QACnD,IAAMC,GAAwBb,eAAAA,EAAYc,QAAS,QACnD,IAAMC,GAA2Bf,eAAAA,EAAYgB,WAAY,WACzD,IAAMC,EAAgBrB,EAAcsB,OAEpC,IAAMC,EAAkBC,GAAQ,WAC9B,IAAMC,EAAS1B,IAAkB,KACjC,GAAIA,EAAe,CACjB,MAAO,CACLiB,MAAOS,EAAS,KAAQ1B,EAAciB,MACtCE,MAAOO,EAAS,GAAM1B,EAAcmB,MAExC,CACA,OAAO,IACT,GAAG,CAACnB,IAEJ,IAAM2B,EAAyB,SAAzBA,EAA0BC,GAC9B,GAAI3B,EAAc4B,uBAAwB,CACxC,OAAO5B,EAAc4B,uBAAuBD,EAC9C,CACA,GAAIvB,GAAU,MAAVA,EAAYyB,KAAM,CACpB,IAAMC,EAASC,EAAIJ,EAAUvB,GAAAA,UAAAA,EAAAA,EAAYyB,MACzC,OAAOG,EAAQF,GAAUA,EAAS,EACpC,CACA,OAAOE,EAAQL,GAAYA,EAAW,IAGxC,IAAMM,EAAyB,SAAzBA,IAAyB,OAAA,IAAAC,SAAA,SAAAC,EAAAC,GAAA,IAGrBC,EACFC,EArGV,IAAIC,aAAJ,IAAI,OAAAJ,GAAK,CAAC,MAAAK,GAAW,OAAOJ,EAAAI,EAAM,GAAlC,IAAIC,EAAA,SAuHSC,GAvHb,IAwHM/B,EAAiB,iBACjBT,GAAAA,UAAAA,EAAAA,EAAyBwC,GAzH/B,OAAOH,GAAE,CAAC,MAAAC,GAAW,OAAOJ,EAAAI,EAAM,GAkG9B,IACE7B,EAAiB,oBACA,OAAAuB,QAAAS,QAAM3C,EAAc4C,WAAS,UAAA,EAAvB5C,EAAc4C,UAAYvB,IAAhCwB,eAA8CC,GApGrE,IAoGYnB,EAAWmB,EACbR,EAAkBZ,EAAuBC,GAC7C1B,GAAAA,UAAAA,EAAAA,EAAuBqC,GACvB,GAAIvB,GAAyBE,EAAuB,CAClDqB,EAAkBA,EAAgBS,KAAI,SAACC,GACrC,OAAAC,KACKD,EAAI,CACPhC,MAAOgC,EAAKjC,GACZG,MAAO8B,EAAK/B,GACZG,SAAU4B,EAAK7B,IAEnB,GACF,CAEA,GAAII,EAAiB,CACnBe,EAAgBY,QAAQ3B,EAC1B,CACAT,EAAcwB,GACd3B,EAAiB,mBAtHvB,OAAO4B,GAAE,CAAC,MAAAC,GAAW,OAAOC,EAAAD,EAAM,CAAC,GAAAC,EAuH9B,CAAC,MAAOC,GAAOD,EAAPC,EAGT,CAAC,GACF,EAEDS,EAASC,iBAAgB,gBAClBnB,GACN,GAAE,IAEH,IAAMoB,EAAU3C,IAAkB,mBAElC,OACE4C,EAACC,EAAMN,KACD5C,EAAU,CACdmD,MAAKP,EAAA,CAAIQ,MAAO,QAAW3D,EAAM0D,OACjCE,QAAS7C,EACT8C,gBACEL,EAACM,EAAa,CACZC,OAAQnD,EACR2C,QAASA,EACTS,cAAe3D,EACf4D,YACET,EAACU,EAAM,CAACC,KAAK,UAAUC,QAASjC,EAAuBkC,SAAC,aAM9DC,WACE1D,IAAkB,gBAChB4C,EAAAe,EAAA,CAAcC,KAAMjB,EAASa,QAASjC,IACpCsC,UAENlB,QAASA,IAGf"}
1
+ {"version":3,"file":"selector-wrapper-simple-7b34f7bd.js","sources":["@flatbiz/antd/src/selector-wrapper-simple/selector-wrapper-simple.tsx"],"sourcesContent":["import { RedoOutlined } from '@ant-design/icons';\nimport { isArray } from '@dimjs/lang';\nimport { get } from '@dimjs/utils';\nimport { LabelValueItem, TAny, TPlainObject } from '@flatbiz/utils';\nimport { Button, Select, SelectProps } from 'antd';\nimport { useMemo, useState } from 'react';\nimport { fbaHooks } from '../fba-hooks';\nimport { RequestStatus, TRequestStatus, TRequestStatusProps } from '../request-status';\n\nexport type SelectorWrapperSimpleServiceConfig = {\n params?: TPlainObject;\n onRequest: (params?: TAny) => TAny;\n onRequestResultAdapter?: (respData: TAny) => TPlainObject[];\n};\n\nexport type SelectorWrapperSimpleProps = Omit<\n SelectProps,\n 'onSearch' | 'notFoundContent' | 'options' | 'fieldNames' | 'loading'\n> & {\n /**\n * 参数Key映射\n * ```\n * 1. list 为 onRequest 返回数据中列表key值,可多级取值,例如: 'a.b.c'\n * 2. 配置 serviceConfig.onRequestResultAdapter后,fieldNames.list配置失效\n * ```\n */\n fieldNames?: { label: string; value: string; disabled?: string; list?: string };\n /**\n * 请求服务需求的数据\n */\n serviceConfig: SelectorWrapperSimpleServiceConfig;\n /**\n * 添加全部选项\n * ```\n * 1. 默认值label=\"全部\",value=\"\"\n * 2. 可配置label、value\n * ```\n */\n showAllOption?: true | TPlainObject<string | number>;\n /** selectorList发生变更时触发,每次都会调用 */\n onSelectorListChange?: (dataList: TPlainObject[]) => void;\n /**\n * 通过服务获取数据异常回调\n */\n onSelectorRequestError?: (error: Error) => void;\n\n requestMessageConfig?: TRequestStatusProps['messageConfig'];\n};\n/**\n * 选择器简单包装组件\n * @param props\n * @returns\n * ```\n * 1. 不支持search效果\n * 2. 不会缓存接口数据\n * 3. 不会对value、onChange做任何处理\n * ```\n */\nexport const SelectorWrapperSimple = (props: SelectorWrapperSimpleProps) => {\n const {\n showAllOption,\n serviceConfig,\n onSelectorListChange,\n onSelectorRequestError,\n requestMessageConfig,\n fieldNames,\n ...otherProps\n } = props;\n const [requestStatus, setRequestStatus] = useState<TRequestStatus>('request-init');\n const [dataSource, setDataSource] = useState<TPlainObject[]>();\n const optionsItemLabelField = fieldNames?.label || 'label';\n const optionsItemValueField = fieldNames?.value || 'value';\n const optionsItemDisabledField = fieldNames?.disabled || 'disabled';\n const serviceParams = serviceConfig.params;\n\n const allOptionConfig = useMemo(() => {\n const isTrue = showAllOption === true;\n if (showAllOption) {\n return {\n label: isTrue ? '全部' : (showAllOption.label as string),\n value: isTrue ? '' : (showAllOption.value as TAny),\n };\n }\n return null;\n }, [showAllOption]);\n\n const serviceRespDataAdapter = (respData) => {\n if (serviceConfig.onRequestResultAdapter) {\n return serviceConfig.onRequestResultAdapter(respData as unknown as TPlainObject);\n }\n if (fieldNames?.list) {\n const result = get(respData, fieldNames?.list);\n return isArray(result) ? result : [];\n }\n return isArray(respData) ? respData : [];\n };\n\n const startDataSourceRequest = async () => {\n try {\n setRequestStatus('request-progress');\n const respData = await serviceConfig.onRequest?.(serviceParams);\n let respAdapterData = serviceRespDataAdapter(respData);\n onSelectorListChange?.(respAdapterData);\n if (optionsItemLabelField && optionsItemValueField) {\n respAdapterData = respAdapterData.map((item) => {\n return {\n ...item,\n label: item[optionsItemLabelField],\n value: item[optionsItemValueField],\n disabled: item[optionsItemDisabledField],\n };\n });\n }\n\n if (allOptionConfig) {\n respAdapterData.unshift(allOptionConfig);\n }\n setDataSource(respAdapterData);\n setRequestStatus('request-success');\n } catch (error) {\n setRequestStatus('request-error');\n onSelectorRequestError?.(error);\n }\n };\n\n fbaHooks.useEffectCustom(() => {\n void startDataSourceRequest();\n }, []);\n\n const loading = requestStatus === 'request-progress';\n\n return (\n <Select\n {...otherProps}\n style={{ width: '100%', ...props.style }}\n options={dataSource as LabelValueItem[]}\n notFoundContent={\n <RequestStatus\n status={requestStatus}\n loading={loading}\n messageConfig={requestMessageConfig}\n errorButton={\n <Button type=\"primary\" onClick={startDataSourceRequest}>\n 重新获取数据\n </Button>\n }\n />\n }\n suffixIcon={\n requestStatus === 'request-error' ? (\n <RedoOutlined spin={loading} onClick={startDataSourceRequest} />\n ) : undefined\n }\n loading={loading}\n />\n );\n};\n"],"names":["SelectorWrapperSimple","props","showAllOption","serviceConfig","onSelectorListChange","onSelectorRequestError","requestMessageConfig","fieldNames","otherProps","_objectWithoutPropertiesLoose","_excluded","_useState","useState","requestStatus","setRequestStatus","_useState2","dataSource","setDataSource","optionsItemLabelField","label","optionsItemValueField","value","optionsItemDisabledField","disabled","serviceParams","params","allOptionConfig","useMemo","isTrue","serviceRespDataAdapter","respData","onRequestResultAdapter","list","result","_get","_isArray","startDataSourceRequest","Promise","$return","$error","_respData","respAdapterData","$Try_1_Post","$boundEx","$Try_1_Catch","error","resolve","onRequest","then","$await_2","map","item","_extends","unshift","fbaHooks","useEffectCustom","loading","_jsx","Select","style","width","options","notFoundContent","RequestStatus","status","messageConfig","errorButton","Button","type","onClick","children","suffixIcon","_RedoOutlined","spin","undefined"],"mappings":";yjBA0DaA,EAAwB,SAAxBA,EAAyBC,GACpC,IACEC,EAOED,EAPFC,cACAC,EAMEF,EANFE,cACAC,EAKEH,EALFG,qBACAC,EAIEJ,EAJFI,uBACAC,EAGEL,EAHFK,qBACAC,EAEEN,EAFFM,WACGC,EAAUC,EACXR,EAAKS,GACT,IAAAC,EAA0CC,EAAyB,gBAA5DC,EAAaF,EAAA,GAAEG,EAAgBH,EAAA,GACtC,IAAAI,EAAoCH,IAA7BI,EAAUD,EAAA,GAAEE,EAAaF,EAAA,GAChC,IAAMG,GAAwBX,eAAAA,EAAYY,QAAS,QACnD,IAAMC,GAAwBb,eAAAA,EAAYc,QAAS,QACnD,IAAMC,GAA2Bf,eAAAA,EAAYgB,WAAY,WACzD,IAAMC,EAAgBrB,EAAcsB,OAEpC,IAAMC,EAAkBC,GAAQ,WAC9B,IAAMC,EAAS1B,IAAkB,KACjC,GAAIA,EAAe,CACjB,MAAO,CACLiB,MAAOS,EAAS,KAAQ1B,EAAciB,MACtCE,MAAOO,EAAS,GAAM1B,EAAcmB,MAExC,CACA,OAAO,IACT,GAAG,CAACnB,IAEJ,IAAM2B,EAAyB,SAAzBA,EAA0BC,GAC9B,GAAI3B,EAAc4B,uBAAwB,CACxC,OAAO5B,EAAc4B,uBAAuBD,EAC9C,CACA,GAAIvB,GAAU,MAAVA,EAAYyB,KAAM,CACpB,IAAMC,EAASC,EAAIJ,EAAUvB,GAAAA,UAAAA,EAAAA,EAAYyB,MACzC,OAAOG,EAAQF,GAAUA,EAAS,EACpC,CACA,OAAOE,EAAQL,GAAYA,EAAW,IAGxC,IAAMM,EAAyB,SAAzBA,IAAyB,OAAA,IAAAC,SAAA,SAAAC,EAAAC,GAAA,IAGrBC,EACFC,EArGV,IAAIC,aAAJ,IAAI,OAAAJ,GAAK,CAAC,MAAAK,GAAW,OAAOJ,EAAAI,EAAM,GAAlC,IAAIC,EAAA,SAuHSC,GAvHb,IAwHM/B,EAAiB,iBACjBT,GAAAA,UAAAA,EAAAA,EAAyBwC,GAzH/B,OAAOH,GAAE,CAAC,MAAAC,GAAW,OAAOJ,EAAAI,EAAM,GAkG9B,IACE7B,EAAiB,oBACA,OAAAuB,QAAAS,QAAM3C,EAAc4C,WAAS,UAAA,EAAvB5C,EAAc4C,UAAYvB,IAAhCwB,eAA8CC,GApGrE,IAoGYnB,EAAWmB,EACbR,EAAkBZ,EAAuBC,GAC7C1B,GAAAA,UAAAA,EAAAA,EAAuBqC,GACvB,GAAIvB,GAAyBE,EAAuB,CAClDqB,EAAkBA,EAAgBS,KAAI,SAACC,GACrC,OAAAC,KACKD,EAAI,CACPhC,MAAOgC,EAAKjC,GACZG,MAAO8B,EAAK/B,GACZG,SAAU4B,EAAK7B,IAEnB,GACF,CAEA,GAAII,EAAiB,CACnBe,EAAgBY,QAAQ3B,EAC1B,CACAT,EAAcwB,GACd3B,EAAiB,mBAtHvB,OAAO4B,GAAE,CAAC,MAAAC,GAAW,OAAOC,EAAAD,EAAM,CAAC,GAAAC,EAuH9B,CAAC,MAAOC,GAAOD,EAAPC,EAGT,CAAC,GACF,EAEDS,EAASC,iBAAgB,gBAClBnB,GACN,GAAE,IAEH,IAAMoB,EAAU3C,IAAkB,mBAElC,OACE4C,EAACC,EAAMN,KACD5C,EAAU,CACdmD,MAAKP,EAAA,CAAIQ,MAAO,QAAW3D,EAAM0D,OACjCE,QAAS7C,EACT8C,gBACEL,EAACM,EAAa,CACZC,OAAQnD,EACR2C,QAASA,EACTS,cAAe3D,EACf4D,YACET,EAACU,EAAM,CAACC,KAAK,UAAUC,QAASjC,EAAuBkC,SAAC,aAM9DC,WACE1D,IAAkB,gBAChB4C,EAAAe,EAAA,CAAcC,KAAMjB,EAASa,QAASjC,IACpCsC,UAENlB,QAASA,IAGf"}
@@ -1 +1 @@
1
- .simple-layout{background-color:#fff;border-radius:6px;padding:15px}.simple-layout .ant-form{margin-bottom:-15px}.simple-layout .ant-form-item{margin:0 0 15px}.simple-layout .ant-form-item-label{width:82px}.simple-layout .ant-form-item-label.ant-col-auto{width:auto}.simple-layout .ant-table-thead>tr>th{background:#f6f6f6}.simple-layout .ant-descriptions-item{padding-bottom:10px}.simple-layout .ant-descriptions-item-label{color:#999}.simple-layout .ant-table-pagination.ant-pagination{margin:16px 0 0}.simple-layout .simple-layout-content{position:relative}.simple-layout .simple-layout-content>.ant-row:last-child{margin-bottom:0}.simple-layout .simple-layout-content>.ant-row:last-child .ant-upload-list{padding-bottom:15px}.simple-layout .simple-layout-content>.ant-descriptions:not(.ant-descriptions-bordered):last-child{margin-bottom:-10px}.simple-layout .v-tree-wrapper-tree{padding:5px 0 0}.simple-layout-title-sign{padding-left:10px;position:relative}.simple-layout-title-sign:before{background:var(--simple-layout-colorPrimary);border-radius:3px;content:"";height:14px;left:0;margin-top:-7px;position:absolute;top:50%;width:3px}.simple-layout-title{color:rgba(0,0,0,.85);font-size:16px;font-weight:500;overflow:hidden;position:relative;text-overflow:ellipsis;white-space:nowrap}.simple-layout-title+.simple-layout-content{margin-top:10px}.simple-layout-desc{color:rgba(0,0,0,.55);font-size:12px}.simple-layout+.simple-layout,.simple-layout-desc+.simple-layout-content{margin-top:10px}.simple-layout .simple-layout:first-child{padding:0 0 15px}.simple-layout+.ant-divider{margin:0 0 15px}.simple-layout-formlabel-left .ant-form-item-label{text-align:left}.simple-layout-tight.simple-layout{margin-top:0;padding:0 0 15px}.simple-layout-title-extra-space{justify-content:space-between;width:100%}.simple-layout-title-fixed{display:flex;flex-direction:column;height:100%;overflow:hidden}.simple-layout-title-fixed .simple-layout-content{flex:1;overflow-y:auto}
1
+ .simple-layout{background-color:#fff;border-radius:6px;padding:15px}.simple-layout .ant-form{margin-bottom:-15px}.simple-layout .ant-form-item{margin:0 0 15px}.simple-layout .ant-form-item-label{width:82px}.simple-layout .ant-form-item-label.ant-col-auto{width:auto}.simple-layout .ant-table-thead>tr>th{background:#f6f6f6}.simple-layout .ant-descriptions-item{padding-bottom:10px}.simple-layout .ant-descriptions-item-label{color:#999}.simple-layout .ant-table-pagination.ant-pagination{margin:16px 0 0}.simple-layout .simple-layout-content{position:relative}.simple-layout .simple-layout-content>.ant-row:last-child{margin-bottom:0}.simple-layout .simple-layout-content>.ant-row:last-child .ant-upload-list{padding-bottom:15px}.simple-layout .simple-layout-content>.ant-descriptions:not(.ant-descriptions-bordered):last-child{margin-bottom:-10px}.simple-layout .v-tree-wrapper-tree{padding:5px 0 0}.simple-layout-title-sign{padding-left:10px;position:relative}.simple-layout-title-sign:before{background:var(--simple-layout-colorPrimary);border-radius:3px;content:"";height:14px;left:0;margin-top:-7px;position:absolute;top:50%;width:3px}.simple-layout-title{color:rgba(0,0,0,.85);font-size:16px;font-weight:500;overflow:hidden;position:relative;text-overflow:ellipsis;white-space:nowrap}.simple-layout-title+.simple-layout-content,.simple-layout-title-sign+.simple-layout-content{margin-top:10px}.simple-layout-desc{color:rgba(0,0,0,.55);font-size:12px}.simple-layout+.simple-layout,.simple-layout-desc+.simple-layout-content{margin-top:10px}.simple-layout .simple-layout:first-child{padding:0 0 15px}.simple-layout+.ant-divider{margin:0 0 15px}.simple-layout-formlabel-left .ant-form-item-label{text-align:left}.simple-layout-tight.simple-layout{margin-top:0;padding:0 0 15px}.simple-layout-title-extra-space{justify-content:space-between;width:100%}.simple-layout-title-fixed{display:flex;flex-direction:column;height:100%;overflow:hidden}.simple-layout-title-fixed .simple-layout-content{flex:1;overflow-y:auto}
@@ -2,5 +2,5 @@
2
2
  import './../fba-hooks/index.css';
3
3
  import './index.css';
4
4
  /*! @flatjs/forge MIT @flatbiz/antd */
5
- export{S as SimpleLayout}from"../simple-layout-08f90dab.js";import"@dimjs/lang/cjs/is-array";import"@dimjs/utils/cjs/extend";import"@dimjs/utils/cjs/class-names";import"antd";import"react";import"../fba-hooks/index.js";import"../_rollupPluginBabelHelpers-1f4d8910.js";import"@wove/react/cjs/hooks";import"../use-responsive-point-21b8c601.js";import"react/jsx-runtime";
5
+ export{S as SimpleLayout}from"../simple-layout-f43cfc5d.js";import"@dimjs/lang/cjs/is-array";import"@dimjs/utils/cjs/extend";import"@dimjs/utils/cjs/class-names";import"antd";import"react";import"../fba-hooks/index.js";import"../_rollupPluginBabelHelpers-1f4d8910.js";import"@wove/react/cjs/hooks";import"../use-responsive-point-21b8c601.js";import"react/jsx-runtime";
6
6
  //# sourceMappingURL=index.js.map
@@ -0,0 +1,3 @@
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(o){var c=o.formLabelAlign||"right";var n=l("simple-layout",{"simple-layout-tight":o.layoutType==="tight","simple-layout-formlabel-left":c==="left","simple-layout-title-fixed":o.titleFixed},o.className);var u=a.useThemeToken();var y=t({"--simple-layout-colorPrimary":u.colorPrimary},o.style,{padding:o.padding,width:o.width});if(o.hidden)return r(s,{});return m("div",{className:n,style:y,children:[o.title&&o.titleExtra?r("div",{className:l({"simple-layout-title-sign":o.titleLeftLine}),style:o.titleStyle,children:m(i,{className:"simple-layout-title-extra-space",children:[r("div",{className:"simple-layout-title",children:o.title}),r("div",{className:"simple-layout-title-extra",children:o.titleExtra})]})}):null,o.title&&!o.titleExtra?r("div",{className:l("simple-layout-title",{"simple-layout-title-sign":o.titleLeftLine}),style:o.titleStyle,children:o.title}):null,o.desc&&!e(o.desc)?r("div",{className:"simple-layout-desc",children:o.desc}):null,o.desc&&e(o.desc)?r("div",{className:"simple-layout-desc",children:r(i,{direction:"vertical",size:5,children:o.desc.map((function(e){return e}))})}):null,o.children?r("div",{className:"simple-layout-content",style:o.contentStyle,children:o.children}):null]})};d.defaultProps={titleLeftLine:true,layoutType:"layer"};export{d as S};
3
+ //# sourceMappingURL=simple-layout-f43cfc5d.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"simple-layout-f43cfc5d.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) => {\n return item;\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","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,GAC7B,OAAOA,SAIX,KACH9B,EAAMmB,SACLH,EAAA,MAAA,CAAKb,UAAU,wBAAwBO,MAAOV,EAAM+B,aAAaZ,SAC9DnB,EAAMmB,WAEP,OAGV,EAEApB,EAAaiC,aAAe,CAC1BV,cAAe,KACfjB,WAAY"}
@@ -8,5 +8,5 @@ import './../dropdown-menu-wrapper/index.css';
8
8
  import './../tag-list-select/index.css';
9
9
  import './index.css';
10
10
  /*! @flatjs/forge MIT @flatbiz/antd */
11
- export{t as tableCellRender}from"../cell-render-03055c65.js";import"@dimjs/lang/cjs/is-string";import"@dimjs/lang/cjs/is-object";import"@dimjs/utils/cjs/get";import"@dimjs/lang/cjs/is-plain-object";import"../_rollupPluginBabelHelpers-1f4d8910.js";import"@dimjs/lang/cjs/is-number";import"@dimjs/lang/cjs/is-empty";import"@flatbiz/utils";import"antd";import"react";import"../button-operate-6add2cbf.js";import"@ant-design/icons/es/icons/MoreOutlined";import"@dimjs/lang/cjs/is-undefined";import"@dimjs/utils/cjs/class-names";import"@dimjs/lang/cjs/is-promise";import"@wove/react/cjs/hooks";import"../button-wrapper-c63ea6fc.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"../fba-hooks/index.js";import"@dimjs/lang/cjs/is-array";import"../use-responsive-point-21b8c601.js";import"react/jsx-runtime";import"../fba-utils-1e895394.js";import"../dropdown-menu-wrapper-2c4b6cad.js";import"../tag-list-select-066f682f.js";
11
+ export{t as tableCellRender}from"../cell-render-362e4d87.js";import"@dimjs/lang/cjs/is-string";import"@dimjs/lang/cjs/is-object";import"@dimjs/utils/cjs/get";import"@dimjs/lang/cjs/is-plain-object";import"../_rollupPluginBabelHelpers-1f4d8910.js";import"@dimjs/lang/cjs/is-number";import"@dimjs/lang/cjs/is-empty";import"@flatbiz/utils";import"antd";import"react";import"../button-operate-697b2a94.js";import"@ant-design/icons/es/icons/MoreOutlined";import"@dimjs/lang/cjs/is-undefined";import"@dimjs/utils/cjs/class-names";import"@dimjs/lang/cjs/is-promise";import"@wove/react/cjs/hooks";import"../button-wrapper-e833e139.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"../fba-hooks/index.js";import"@dimjs/lang/cjs/is-array";import"../use-responsive-point-21b8c601.js";import"react/jsx-runtime";import"../fba-utils-1e895394.js";import"../dropdown-menu-wrapper-3544d20e.js";import"../tag-list-select-066f682f.js";
12
12
  //# sourceMappingURL=index.js.map
@@ -1,5 +1,5 @@
1
1
  /* eslint-disable */
2
2
  import './index.css';
3
3
  /*! @flatjs/forge MIT @flatbiz/antd */
4
- export{T as TabsWrapper}from"../tabs-wrapper-0a2da713.js";import"../_rollupPluginBabelHelpers-1f4d8910.js";import"@dimjs/utils/cjs/class-names";import"@wove/react/cjs/hooks";import"@dimjs/lang/cjs/is-undefined";import"@flatbiz/utils";import"antd";import"react";import"react/jsx-runtime";
4
+ export{T as TabsWrapper}from"../tabs-wrapper-675dc949.js";import"../_rollupPluginBabelHelpers-1f4d8910.js";import"@dimjs/utils/cjs/class-names";import"@wove/react/cjs/hooks";import"@dimjs/lang/cjs/is-undefined";import"@flatbiz/utils";import"antd";import"react";import"react/jsx-runtime";
5
5
  //# sourceMappingURL=index.js.map
@@ -0,0 +1,3 @@
1
+ /*! @flatjs/forge MIT @flatbiz/antd */
2
+ import{_ as e,a}from"./_rollupPluginBabelHelpers-1f4d8910.js";import{classNames as t}from"@dimjs/utils/cjs/class-names";import{hooks as r}from"@wove/react/cjs/hooks";import{isUndefined as i}from"@dimjs/lang/cjs/is-undefined";import{sessionStorageCache as c}from"@flatbiz/utils";import{Tabs as o}from"antd";import{useMemo as s}from"react";import{jsx as n}from"react/jsx-runtime";var l=["isSticky","isFixed","activeCacheKey","cancelActiveCache","hiddenTabHeader"];var v=function v(d){var f=d.isSticky,p=f===void 0?true:f,u=d.isFixed,m=u===void 0?true:u,y=d.activeCacheKey,b=d.cancelActiveCache,h=d.hiddenTabHeader,K=e(d,l);var j=Object.prototype.hasOwnProperty.call(d,"activeKey");var C=y||"tabs-wrapper-activeKey";var g=i(m)?p:m;var A=r.useCallbackRef((function(e){if(b!==true&&!j){c.set(C,{activeKey:e})}K.onChange==null?void 0:K.onChange(e)}));var w=s((function(){var e;if(b===true||j){return d.defaultActiveKey}var a=(e=c.get(C))==null?void 0:e.activeKey;return a||K.defaultActiveKey}),[C,b,j,K.defaultActiveKey,d.defaultActiveKey]);var x=t("fba-tabs-wrapper",{"fba-tabs-wrapper-fixed":g,"fba-tabs-wrapper-hidden-header":h},K.className);return n(o,a({},K,{tabBarStyle:a({padding:"0 15px"},K.tabBarStyle),className:x,defaultActiveKey:w,onChange:A}))};export{v as T};
3
+ //# sourceMappingURL=tabs-wrapper-675dc949.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"tabs-wrapper-0a2da713.js","sources":["@flatbiz/antd/src/tabs-wrapper/tabs-wrapper.tsx"],"sourcesContent":["import { isUndefined } from '@dimjs/lang';\nimport { classNames } from '@dimjs/utils';\nimport { sessionStorageCache } from '@flatbiz/utils';\nimport { hooks } from '@wove/react';\nimport { Tabs, TabsProps } from 'antd';\nimport { useMemo } from 'react';\nimport './style.less';\n\nexport type TabsWrapperProps = TabsProps & {\n /**\n * Tabs Header 提供 Sticky 效果,默认值:true\n * @deprecated 已废弃,请使用 isFixed 属性\n */\n isSticky?: boolean;\n /**\n * Tabs Header 提供 Fixed 效果,默认值:true\n */\n isFixed?: boolean;\n /** 是否取消 active 缓存 */\n cancelActiveCache?: boolean;\n activeCacheKey?: string;\n /** 隐藏头部 */\n hiddenTabHeader?: boolean;\n};\n\n/**\n * Tabs 包装组件\n * ```\n * 1. Tabs Header 提供 Sticky 效果,默认值:true\n * 2. 使用时,父级必须要有高度,可置于Flex布局中\n * 3. 默认缓存激活的tab item(activeKey受控操作下缓存无效)\n * 当未设置activeKey,非受控操作时,组件内部会会话缓存activeKey,在刷新时,会显示上次的激活的tab item\n * 缓存Key:如果未设置 activeCacheKey,则使用默认的 cache key(tabs-wrapper-activeKey)\n * 缓存模式:会话缓存,在浏览器关闭后,会清除\n * ```\n */\nexport const TabsWrapper = (props: TabsWrapperProps) => {\n const {\n isSticky = true,\n isFixed = true,\n activeCacheKey,\n cancelActiveCache,\n hiddenTabHeader,\n ...otherProps\n } = props;\n // 是否受控操作\n const isControl = Object.prototype.hasOwnProperty.call(props, 'activeKey');\n const cacheKey = activeCacheKey || 'tabs-wrapper-activeKey';\n const isFixedNew = isUndefined(isFixed) ? isSticky : isFixed;\n\n const onChange = hooks.useCallbackRef((activeKey: string) => {\n if (cancelActiveCache !== true && !isControl) {\n sessionStorageCache.set(cacheKey, { activeKey });\n }\n otherProps.onChange?.(activeKey);\n });\n\n const defaultActiveKey = useMemo(() => {\n if (cancelActiveCache === true || isControl) {\n return props.defaultActiveKey;\n }\n const chcheActiveKey = sessionStorageCache.get(cacheKey)?.activeKey as string | undefined;\n return chcheActiveKey || otherProps.defaultActiveKey;\n }, [cacheKey, cancelActiveCache, isControl, otherProps.defaultActiveKey, props.defaultActiveKey]);\n\n const className = classNames(\n 'fba-tabs-wrapper',\n { 'fba-tabs-wrapper-fixed': isFixedNew, 'fba-tabs-wrapper-hidden-header': hiddenTabHeader },\n otherProps.className,\n );\n\n return (\n <Tabs {...otherProps} className={className} defaultActiveKey={defaultActiveKey} onChange={onChange} />\n );\n};\n"],"names":["TabsWrapper","props","_props$isSticky","isSticky","_props$isFixed","isFixed","activeCacheKey","cancelActiveCache","hiddenTabHeader","otherProps","_objectWithoutPropertiesLoose","_excluded","isControl","Object","prototype","hasOwnProperty","call","cacheKey","isFixedNew","_isUndefined","onChange","_hooks","useCallbackRef","activeKey","sessionStorageCache","set","defaultActiveKey","useMemo","_sessionStorageCache$","chcheActiveKey","get","className","_classNames","_jsx","Tabs","_extends"],"mappings":";kdAoCaA,EAAc,SAAdA,EAAeC,GAC1B,IAAAC,EAOID,EANFE,SAAAA,EAAQD,SAAG,EAAA,KAAIA,EAAAE,EAMbH,EALFI,QAAAA,EAAOD,SAAG,EAAA,KAAIA,EACdE,EAIEL,EAJFK,eACAC,EAGEN,EAHFM,kBACAC,EAEEP,EAFFO,gBACGC,EAAUC,EACXT,EAAKU,GAET,IAAMC,EAAYC,OAAOC,UAAUC,eAAeC,KAAKf,EAAO,aAC9D,IAAMgB,EAAWX,GAAkB,yBACnC,IAAMY,EAAaC,EAAYd,GAAWF,EAAWE,EAErD,IAAMe,EAAWC,EAAMC,gBAAe,SAACC,GACrC,GAAIhB,IAAsB,OAASK,EAAW,CAC5CY,EAAoBC,IAAIR,EAAU,CAAEM,UAAAA,GACtC,CACAd,EAAWW,UAAXX,UAAAA,EAAAA,EAAWW,SAAWG,EACxB,IAEA,IAAMG,EAAmBC,GAAQ,WAAM,IAAAC,EACrC,GAAIrB,IAAsB,MAAQK,EAAW,CAC3C,OAAOX,EAAMyB,gBACf,CACA,IAAMG,GAAcD,EAAGJ,EAAoBM,IAAIb,KAAxBW,UAAAA,EAAAA,EAAmCL,UAC1D,OAAOM,GAAkBpB,EAAWiB,gBACtC,GAAG,CAACT,EAAUV,EAAmBK,EAAWH,EAAWiB,iBAAkBzB,EAAMyB,mBAE/E,IAAMK,EAAYC,EAChB,mBACA,CAAE,yBAA0Bd,EAAY,iCAAkCV,GAC1EC,EAAWsB,WAGb,OACEE,EAACC,EAAIC,KAAK1B,EAAU,CAAEsB,UAAWA,EAAWL,iBAAkBA,EAAkBN,SAAUA,IAE9F"}
1
+ {"version":3,"file":"tabs-wrapper-675dc949.js","sources":["@flatbiz/antd/src/tabs-wrapper/tabs-wrapper.tsx"],"sourcesContent":["import { isUndefined } from '@dimjs/lang';\nimport { classNames } from '@dimjs/utils';\nimport { sessionStorageCache } from '@flatbiz/utils';\nimport { hooks } from '@wove/react';\nimport { Tabs, TabsProps } from 'antd';\nimport { useMemo } from 'react';\nimport './style.less';\n\nexport type TabsWrapperProps = TabsProps & {\n /**\n * Tabs Header 提供 Sticky 效果,默认值:true\n * @deprecated 已废弃,请使用 isFixed 属性\n */\n isSticky?: boolean;\n /**\n * Tabs Header 提供 Fixed 效果,默认值:true\n */\n isFixed?: boolean;\n /** 是否取消 active 缓存 */\n cancelActiveCache?: boolean;\n activeCacheKey?: string;\n /** 隐藏头部 */\n hiddenTabHeader?: boolean;\n};\n\n/**\n * Tabs 包装组件\n * ```\n * 1. Tabs Header 提供 Sticky 效果,默认值:true\n * 2. 使用时,父级必须要有高度,可置于Flex布局中\n * 3. 默认缓存激活的tab item(activeKey受控操作下缓存无效)\n * 当未设置activeKey,非受控操作时,组件内部会会话缓存activeKey,在刷新时,会显示上次的激活的tab item\n * 缓存Key:如果未设置 activeCacheKey,则使用默认的 cache key(tabs-wrapper-activeKey)\n * 缓存模式:会话缓存,在浏览器关闭后,会清除\n * ```\n */\nexport const TabsWrapper = (props: TabsWrapperProps) => {\n const {\n isSticky = true,\n isFixed = true,\n activeCacheKey,\n cancelActiveCache,\n hiddenTabHeader,\n ...otherProps\n } = props;\n // 是否受控操作\n const isControl = Object.prototype.hasOwnProperty.call(props, 'activeKey');\n const cacheKey = activeCacheKey || 'tabs-wrapper-activeKey';\n const isFixedNew = isUndefined(isFixed) ? isSticky : isFixed;\n\n const onChange = hooks.useCallbackRef((activeKey: string) => {\n if (cancelActiveCache !== true && !isControl) {\n sessionStorageCache.set(cacheKey, { activeKey });\n }\n otherProps.onChange?.(activeKey);\n });\n\n const defaultActiveKey = useMemo(() => {\n if (cancelActiveCache === true || isControl) {\n return props.defaultActiveKey;\n }\n const chcheActiveKey = sessionStorageCache.get(cacheKey)?.activeKey as string | undefined;\n return chcheActiveKey || otherProps.defaultActiveKey;\n }, [cacheKey, cancelActiveCache, isControl, otherProps.defaultActiveKey, props.defaultActiveKey]);\n\n const className = classNames(\n 'fba-tabs-wrapper',\n { 'fba-tabs-wrapper-fixed': isFixedNew, 'fba-tabs-wrapper-hidden-header': hiddenTabHeader },\n otherProps.className,\n );\n\n return (\n <Tabs\n {...otherProps}\n tabBarStyle={{ padding: '0 15px', ...otherProps.tabBarStyle }}\n className={className}\n defaultActiveKey={defaultActiveKey}\n onChange={onChange}\n />\n );\n};\n"],"names":["TabsWrapper","props","_props$isSticky","isSticky","_props$isFixed","isFixed","activeCacheKey","cancelActiveCache","hiddenTabHeader","otherProps","_objectWithoutPropertiesLoose","_excluded","isControl","Object","prototype","hasOwnProperty","call","cacheKey","isFixedNew","_isUndefined","onChange","_hooks","useCallbackRef","activeKey","sessionStorageCache","set","defaultActiveKey","useMemo","_sessionStorageCache$","chcheActiveKey","get","className","_classNames","_jsx","Tabs","_extends","tabBarStyle","padding"],"mappings":";kdAoCaA,EAAc,SAAdA,EAAeC,GAC1B,IAAAC,EAOID,EANFE,SAAAA,EAAQD,SAAG,EAAA,KAAIA,EAAAE,EAMbH,EALFI,QAAAA,EAAOD,SAAG,EAAA,KAAIA,EACdE,EAIEL,EAJFK,eACAC,EAGEN,EAHFM,kBACAC,EAEEP,EAFFO,gBACGC,EAAUC,EACXT,EAAKU,GAET,IAAMC,EAAYC,OAAOC,UAAUC,eAAeC,KAAKf,EAAO,aAC9D,IAAMgB,EAAWX,GAAkB,yBACnC,IAAMY,EAAaC,EAAYd,GAAWF,EAAWE,EAErD,IAAMe,EAAWC,EAAMC,gBAAe,SAACC,GACrC,GAAIhB,IAAsB,OAASK,EAAW,CAC5CY,EAAoBC,IAAIR,EAAU,CAAEM,UAAAA,GACtC,CACAd,EAAWW,UAAXX,UAAAA,EAAAA,EAAWW,SAAWG,EACxB,IAEA,IAAMG,EAAmBC,GAAQ,WAAM,IAAAC,EACrC,GAAIrB,IAAsB,MAAQK,EAAW,CAC3C,OAAOX,EAAMyB,gBACf,CACA,IAAMG,GAAcD,EAAGJ,EAAoBM,IAAIb,KAAxBW,UAAAA,EAAAA,EAAmCL,UAC1D,OAAOM,GAAkBpB,EAAWiB,gBACtC,GAAG,CAACT,EAAUV,EAAmBK,EAAWH,EAAWiB,iBAAkBzB,EAAMyB,mBAE/E,IAAMK,EAAYC,EAChB,mBACA,CAAE,yBAA0Bd,EAAY,iCAAkCV,GAC1EC,EAAWsB,WAGb,OACEE,EAACC,EAAIC,KACC1B,EAAU,CACd2B,YAAWD,EAAA,CAAIE,QAAS,UAAa5B,EAAW2B,aAChDL,UAAWA,EACXL,iBAAkBA,EAClBN,SAAUA,IAGhB"}
File without changes
@@ -0,0 +1,9 @@
1
+ /* eslint-disable */
2
+ import './../button-wrapper/index.css';
3
+ import './../config-provider-wrapper/index.css';
4
+ import './../fba-hooks/index.css';
5
+ import './../fba-utils/index.css';
6
+ import './index.css';
7
+ /*! @flatjs/forge MIT @flatbiz/antd */
8
+ export{T as TextOverflowRender}from"../text-overflow-render-2ec38800.js";import"@dimjs/lang/cjs/is-empty";import"../_rollupPluginBabelHelpers-1f4d8910.js";import"@flatbiz/utils";import"antd";import"react";import"../button-wrapper-e833e139.js";import"@ant-design/icons/es/icons/LoadingOutlined";import"@dimjs/lang/cjs/is-promise";import"@wove/react/cjs/hooks";import"../config-provider-wrapper-dfe8f592.js";import"antd/es/locale/en_US";import"antd/es/locale/zh_CN";import"dayjs";import"dayjs/locale/en";import"dayjs/locale/zh-cn";import"dayjs/plugin/advancedFormat";import"dayjs/plugin/customParseFormat";import"dayjs/plugin/localeData";import"dayjs/plugin/utc";import"dayjs/plugin/weekday";import"dayjs/plugin/weekOfYear";import"dayjs/plugin/weekYear";import"../fba-hooks/index.js";import"@dimjs/lang/cjs/is-array";import"../use-responsive-point-21b8c601.js";import"react/jsx-runtime";import"../fba-utils-1e895394.js";
9
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";"}
@@ -0,0 +1,3 @@
1
+ /*! @flatjs/forge MIT @flatbiz/antd */
2
+ import{isEmpty as r}from"@dimjs/lang/cjs/is-empty";import{_ as i,a as e}from"./_rollupPluginBabelHelpers-1f4d8910.js";import{getStrByteLen as n,cutString as l}from"@flatbiz/utils";import{Tooltip as t}from"antd";import{Fragment as a}from"react";import{B as p}from"./button-wrapper-e833e139.js";import{jsx as o,jsxs as c}from"react/jsx-runtime";var d=["onClick","children","prefix"];var f=function r(n){var l=n.onClick,t=n.children,a=n.prefix,f=i(n,d);if(!!l){return c(p,e({type:"link",onClick:l,style:{padding:0,height:"initial"}},f,{children:[a?o("span",{style:{paddingRight:5},children:a}):null,t]}))}return c("span",e({},f,{children:[a?o("span",{style:{paddingRight:5},children:a}):null,t]}))};var s=function i(e){var p=e.text,c=e.maxLength,d=e.placeholder,s=e.onClick,m=e.children,h=e.prefix;if(!p||r(p)||p==="")return o(a,{children:d});var u=!m?h:null;if(!!c){var x=n(p);if(x<=c*2){return o(f,{onClick:s,prefix:u,children:m||p})}else{var g=l(p,c*2);return o(t,{placement:"topLeft",title:p,children:o(f,{onClick:s,prefix:u,children:m||g})})}}else{return o(f,{onClick:s,prefix:u,children:m||p})}};export{s as T};
3
+ //# sourceMappingURL=text-overflow-render-2ec38800.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"text-overflow-render-2ec38800.js","sources":["@flatbiz/antd/src/text-overflow-render/text-overflow-render.tsx"],"sourcesContent":["import { isEmpty } from '@dimjs/lang';\nimport { cutString, getStrByteLen } from '@flatbiz/utils';\nimport { Tooltip } from 'antd';\nimport { Fragment, ReactElement } from 'react';\nimport { ButtonWrapper } from '../button-wrapper';\n\nconst LinkRender = (props: {\n onClick?: (e) => void;\n children: ReactElement | string;\n prefix?: string | ReactElement | null;\n}) => {\n const { onClick, children, prefix, ...otherProps } = props;\n if (!!onClick) {\n return (\n <ButtonWrapper type=\"link\" onClick={onClick} style={{ padding: 0, height: 'initial' }} {...otherProps}>\n {prefix ? <span style={{ paddingRight: 5 }}>{prefix}</span> : null}\n {children}\n </ButtonWrapper>\n );\n }\n return (\n <span {...otherProps}>\n {prefix ? <span style={{ paddingRight: 5 }}>{prefix}</span> : null}\n {children}\n </span>\n );\n};\n\nexport type TextOverflowRenderProps = {\n /** 设置 children 属性后,maxLength失效 */\n maxLength?: number;\n /** 完整文本 */\n text?: string;\n /** 配置children属性(maxLength、prefix失效) */\n children?: string | ReactElement;\n /**\n * 文本前缀显示\n * 设置 children 属性后,prefix失效\n */\n prefix?: string | ReactElement;\n /** 数据不存在时,占位符 */\n placeholder?: ReactElement | string;\n onClick?: (e) => void;\n};\n\n/**\n * 文本显示,可通过长度控制溢出效果\n * ```\n * 显示文本通过两种方式\n * 1. 配置text属性\n * 2. 配置children属性(maxLength、prefix失效)\n * 3. 需要控制长度配置 maxLength\n * ```\n * @param props\n * @returns\n */\nexport const TextOverflowRender = (props: TextOverflowRenderProps) => {\n const { text, maxLength, placeholder, onClick, children, prefix } = props;\n\n if (!text || isEmpty(text) || text === '') return <Fragment>{placeholder}</Fragment>;\n const prefixNew = !children ? prefix : null;\n if (!!maxLength) {\n const strByteLen = getStrByteLen(text);\n if (strByteLen <= maxLength * 2) {\n return (\n <LinkRender onClick={onClick} prefix={prefixNew}>\n {children || text}\n </LinkRender>\n );\n } else {\n const resultTitle = cutString(text, maxLength * 2);\n return (\n <Tooltip placement=\"topLeft\" title={text}>\n <LinkRender onClick={onClick} prefix={prefixNew}>\n {children || resultTitle}\n </LinkRender>\n </Tooltip>\n );\n }\n } else {\n return (\n <LinkRender onClick={onClick} prefix={prefixNew}>\n {children || text}\n </LinkRender>\n );\n }\n};\n"],"names":["LinkRender","props","onClick","children","prefix","otherProps","_objectWithoutPropertiesLoose","_excluded","_jsxs","ButtonWrapper","_extends","type","style","padding","height","_jsx","paddingRight","TextOverflowRender","text","maxLength","placeholder","_isEmpty","Fragment","prefixNew","strByteLen","getStrByteLen","resultTitle","cutString","Tooltip","placement","title"],"mappings":";6XAMA,IAAMA,EAAa,SAAbA,EAAcC,GAKlB,IAAQC,EAA6CD,EAA7CC,QAASC,EAAoCF,EAApCE,SAAUC,EAA0BH,EAA1BG,OAAWC,EAAUC,EAAKL,EAAKM,GAC1D,KAAML,EAAS,CACb,OACEM,EAACC,EAAaC,EAAA,CAACC,KAAK,OAAOT,QAASA,EAASU,MAAO,CAAEC,QAAS,EAAGC,OAAQ,YAAiBT,EAAU,CAAAF,SAAA,CAClGC,EAASW,EAAA,OAAA,CAAMH,MAAO,CAAEI,aAAc,GAAIb,SAAEC,IAAiB,KAC7DD,KAGP,CACA,OACEK,EAAA,OAAAE,EAAA,CAAA,EAAUL,EAAU,CAAAF,SAAA,CACjBC,EAASW,EAAA,OAAA,CAAMH,MAAO,CAAEI,aAAc,GAAIb,SAAEC,IAAiB,KAC7DD,KAGP,MA8Bac,EAAqB,SAArBA,EAAsBhB,GACjC,IAAQiB,EAA4DjB,EAA5DiB,KAAMC,EAAsDlB,EAAtDkB,UAAWC,EAA2CnB,EAA3CmB,YAAalB,EAA8BD,EAA9BC,QAASC,EAAqBF,EAArBE,SAAUC,EAAWH,EAAXG,OAEzD,IAAKc,GAAQG,EAAQH,IAASA,IAAS,GAAI,OAAOH,EAACO,EAAQ,CAAAnB,SAAEiB,IAC7D,IAAMG,GAAapB,EAAWC,EAAS,KACvC,KAAMe,EAAW,CACf,IAAMK,EAAaC,EAAcP,GACjC,GAAIM,GAAcL,EAAY,EAAG,CAC/B,OACEJ,EAACf,EAAU,CAACE,QAASA,EAASE,OAAQmB,EAAUpB,SAC7CA,GAAYe,GAGnB,KAAO,CACL,IAAMQ,EAAcC,EAAUT,EAAMC,EAAY,GAChD,OACEJ,EAACa,EAAO,CAACC,UAAU,UAAUC,MAAOZ,EAAKf,SACvCY,EAACf,EAAU,CAACE,QAASA,EAASE,OAAQmB,EAAUpB,SAC7CA,GAAYuB,KAIrB,CACF,KAAO,CACL,OACEX,EAACf,EAAU,CAACE,QAASA,EAASE,OAAQmB,EAAUpB,SAC7CA,GAAYe,GAGnB,CACF"}
@@ -1 +1 @@
1
- .v-tree-wrapper{display:flex;flex-direction:column;height:100%;overflow:hidden;position:relative}.v-tree-wrapper .ant-tree-list-holder-inner{overflow:hidden}.v-tree-wrapper-loading{left:50%;position:absolute;top:50%;z-index:9}.v-tree-wrapper-search{flex:1}.v-tree-wrapper-tree-wrapper{flex:1;overflow:hidden;position:relative}.v-tree-wrapper-tree-wrapper>.ant-spin{left:50%;position:absolute;top:50%;transform:translate(-50%,-50%);z-index:9}.v-tree-wrapper-tree{height:100%;overflow:scroll;position:relative}.v-tree-wrapper-tree .ant-tree-title{align-items:center;display:flex;flex:1;position:relative}.v-tree-wrapper-tree .tree-item-title{flex:1;margin-right:5px}.v-tree-wrapper-tree .anticon-more{display:none;font-weight:700}.v-tree-wrapper-tree .tree-item-title-operate{display:none}.v-tree-wrapper-tree .ant-tree-node-selected .anticon-more,.v-tree-wrapper-tree .ant-tree-node-selected .tree-item-title-operate{display:block}.v-tree-wrapper-tree .ant-tree-node-content-wrapper{display:flex}.tree-wrapper-empty{position:relative}.tree-wrapper-empty .ant-empty{margin:8px 0}.tree-wrapper-empty .ant-spin{left:50%;position:absolute;top:50%;transform:translate(-50%,-50%)}.site-tree-search-value{color:red}.v-tree-item-disabled{opacity:.5}.tree-item-title-operate .ant-btn{height:auto;padding:0 3px;width:auto}.v-tree-wrapper-menu-hover .ant-tree-node-content-wrapper:hover .anticon-more,.v-tree-wrapper-menu-hover .ant-tree-node-content-wrapper:hover .tree-item-title-operate{display:block}.v-tree-wrapper-search-area{align-items:center;display:flex;margin-bottom:12px}.v-tree-wrapper-search-extra{margin-left:12px}
1
+ .v-tree-wrapper{display:flex;flex-direction:column;height:100%;overflow:hidden;position:relative}.v-tree-wrapper .ant-tree-list-holder-inner{overflow:hidden}.v-tree-wrapper-loading{left:50%;position:absolute;top:50%;z-index:9}.v-tree-wrapper-search{flex:1}.v-tree-wrapper-tree-wrapper{flex:1;overflow:hidden;position:relative}.v-tree-wrapper-tree-wrapper>.ant-spin{left:50%;position:absolute;top:50%;transform:translate(-50%,-50%);z-index:9}.v-tree-wrapper-tree{height:100%;overflow:auto;position:relative}.v-tree-wrapper-tree .ant-tree-title{align-items:center;display:flex;flex:1;position:relative}.v-tree-wrapper-tree .tree-item-title{flex:1;margin-right:5px}.v-tree-wrapper-tree .anticon-more{display:none;font-weight:700}.v-tree-wrapper-tree .tree-item-title-operate{display:none}.v-tree-wrapper-tree .ant-tree-node-selected .anticon-more,.v-tree-wrapper-tree .ant-tree-node-selected .tree-item-title-operate{display:block}.v-tree-wrapper-tree .ant-tree-node-content-wrapper{display:flex}.tree-wrapper-empty{position:relative}.tree-wrapper-empty .ant-empty{margin:8px 0}.tree-wrapper-empty .ant-spin{left:50%;position:absolute;top:50%;transform:translate(-50%,-50%)}.site-tree-search-value{color:red}.v-tree-item-disabled{opacity:.5}.tree-item-title-operate .ant-btn{height:auto;padding:0 3px;width:auto}.v-tree-wrapper-menu-hover .ant-tree-node-content-wrapper:hover .anticon-more,.v-tree-wrapper-menu-hover .ant-tree-node-content-wrapper:hover .tree-item-title-operate{display:block}.v-tree-wrapper-search-area{align-items:center;display:flex;margin-bottom:12px}.v-tree-wrapper-search-extra{margin-left:12px}
@@ -9,5 +9,5 @@ import './../dropdown-menu-wrapper/index.css';
9
9
  import './../input-search-wrapper/index.css';
10
10
  import './index.css';
11
11
  /*! @flatjs/forge MIT @flatbiz/antd */
12
- import{f as e}from"../fba-utils-1e895394.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,toArray as u,treeFilter as s}from"@flatbiz/utils";import o from"@ant-design/icons/es/icons/CaretDownFilled";import c from"@ant-design/icons/es/icons/MoreOutlined";import{classNames as d}from"@dimjs/utils/cjs/class-names";import{extend as v}from"@dimjs/utils/cjs/extend";import{hooks as f}from"@wove/react/cjs/hooks";import{_ as p,a as m}from"../_rollupPluginBabelHelpers-1f4d8910.js";import{cloneState as h}from"@dimjs/model";import{Spin as g,Tree as b,Button as y,message as L}from"antd";import{forwardRef as C,useState as w,useMemo as j,useRef as R,useImperativeHandle as q,Fragment as N,isValidElement as k}from"react";import{a as S}from"../button-operate-6add2cbf.js";import{D as T}from"../dropdown-menu-wrapper-2c4b6cad.js";import{fbaHooks as D}from"../fba-hooks/index.js";import{I as P}from"../input-search-wrapper-10d4a9b9.js";import{R as E}from"../request-status-03fc60e2.js";import{tree as x}from"@dimjs/utils/cjs/tree";import{isObject as A}from"@dimjs/lang/cjs/is-object";import{dequal as I}from"dequal";import{jsxs as _,jsx as O}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-c63ea6fc.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"../use-responsive-point-21b8c601.js";var V={treeList:[],treeTiledArray:[],queryIsEmpty:false};var K={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:V};var F={};var M=function e(r){if(!F[r]){F[r]=t(K)}return F[r]};var U=function e(r){var t=M(r).getState();return t.treeList};var z=function e(r,t,n){var l=a(t,n);return i(r,l,true,{value:"value",parentValue:"parentValue"})};var B=function e(t,n){var a=l(t)?[]:t;a=r(a)?a:[a];a=a.map((function(e){if(A(e))return e[n.value];return e}));return a};var H=function e(r,t){var n=B(r,t);var a={};n.forEach((function(e){a[e]=true}));return a};var W=function e(r,t,n){if(l(r)&&l(t))return true;var a=H(r,n);var i=H(t,n);var u=I(a,i);return u};var Y=function e(r,t,n){var a=n.node.key;var i=n.dragNode.key;var l=n.node.pos.split("-");var u=n.dropPosition-Number(l[l.length-1]);var s=t.value;var o=t.children;var c=function e(r,t,n){for(var a=0;a<r.length;a++){if(r[a][s]===t){return n(r[a],a,r)}if(r[a][o]){e(r[a][o],t,n)}}};var d=h(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[o]=e[o]||[];e[o].unshift(v)}))}else if((n.node.props.children||[]).length>0&&n.node.props.expanded&&u===1){c(d,a,(function(e){e[o]=e[o]||[];e[o].unshift(v)}))}else{var f=[];var p;c(d,a,(function(e,r,t){f=t;p=r}));if(u===-1){f.splice(p,0,v)}else{f.splice(p+1,0,v)}}return{dataList:d,dragNodeData:G(i,d,t)}};var G=function e(r,t,a){var i;var l=a.value;var u=a.children;x.walkThroughTree((i={},i[l]=undefined,i[u]=t,i),(function(e,r,t){e["__index"]=r;e["__parentId"]=t==null?void 0:t[l]}),u);var s=n(t,u);var o=s.find((function(e){return e[l]===r}));return{parentId:o==null?void 0:o["__parentId"],id:o==null?void 0:o[l],index:o==null?void 0:o["__index"]}};var J=["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"];var Q=C((function(e,t){var n=e.style,i=e.serviceConfig,C=e.effectDependencyList,x=e.selectorTreeList,A=e.value,I=e.onChange,V=e.modelKey,K=e.checkableResponseParentNode,F=K===void 0?true:K,U=e.checkable,H=e.onSelectorTreeListChange,G=e.onRequestResponseChange,Q=e.treeItemDataAdapter,X=e.searchValue,Z=e.showSearch,$=e.searchPlaceholder,ee=e.requestMessageConfig,re=e.labelInValueFieldNames,te=e.labelInValue,ne=e.disabledCanUse,ae=e.menuLayoutType,ie=e.menuTriggerType,le=e.initRootExpand,ue=e.searchResultType,se=e.onDropNodeHandle,oe=e.onDropPrev,ce=e.labelRender,de=p(e,J);var ve=e.hasOwnProperty("selectorTreeList");var fe=i||{};var pe=C||[];var me=w(),he=me[0],ge=me[1];var be=M(V).useStore(),ye=be[0],Le=be[1];var Ce=D.useSafeState(false),we=Ce[0],je=Ce[1];var Re="request-progress-"+e.modelKey;var qe=j((function(){return m({label:"label",value:"value",children:"children"},e.fieldNames)}),[e.fieldNames]);var Ne=R();var ke=ae===undefined?"fold":ae;var Se=ie===undefined?"click":ie;var Te=U===true;var De=j((function(){return m({label:"label",value:"value"},re)}),[re]);var Pe=w(),Ee=Pe[0],xe=Pe[1];var Ae=R(true);var Ie=w(0),_e=Ie[0],Oe=Ie[1];var Ve=R();var Ke=j((function(){var e=B(A,De);return e}),[De,A]);D.useEffectCustom((function(){if(l(A)&&Ae.current||ye.treeList.length==0)return;Ae.current=false;if(!W(A,Ve.current,De)){console.log("modelKey:"+V+" TreeWrapper key refresh",A,Ve.current);Ve.current=Te?Ke:Ke[0];var e=Be(Ke,true);ge(Array.from(new Set(e)));Ne.current=Ke;Oe(Date.now())}}),[A,ye.treeList]);var Fe=function e(r){return r===""||l(r)};var Me=function e(r){var t=fe.onRequestResultAdapter?fe.onRequestResultAdapter(r):r;return t};D.useEffectCustom((function(){xe(X)}),[X]);var Ue=f.useCallbackRef((function(){return new Promise((function(e,r){var t,n,a,i,l;var s=function(){try{return e()}catch(e){return r(e)}};var o=function(e){try{je(false);void L.error(e.message||"数据查询异常...");return s()}catch(e){return r(e)}};try{if(!fe.onRequest){throw new Error("onRequest 调用接口服务不能为空")}t=fe.requiredParamsKeys;n=v({},fe.params);if(t){a=t.find((function(e){return Fe(n[e])}));if(a){console.warn("TreeWrapper组件:参数:"+t.join("、")+"不能为空");return e()}}var c=function(){try{return s()}catch(e){return o(e)}};var d=function(e){try{window[Re]=false;je(false);void Le.changeRequestStatus("request-error");return c()}catch(e){return o(e)}};try{je(true);return Promise.resolve(Le.changeRequestStatus("request-progress")).then((function(e){try{window[Re]=true;return Promise.resolve(fe.onRequest==null?void 0:fe.onRequest(n)).then((function(e){try{i=e;G==null?void 0:G(i);l=Me(i);ze(l||[]);je(false);if(le&&u(l).length){ge([l==null?void 0:l[0][qe.value]])}window[Re]=false;return c()}catch(e){return d(e)}}),d)}catch(e){return d(e)}}),d)}catch(e){d(e)}}catch(e){o(e)}}))}));D.useEffectCustom((function(){if(ve)return;if(Boolean(pe.length)){void Ue();return}var e=M(V).getState();if(e.requestStatus==="request-success"){H==null?void 0:H(e.treeList);return}if(!window[Re]){void Ue()}else{H==null?void 0:H(e.treeList)}}),pe);D.useEffectCustom((function(){if(ve){ze(x||[])}}),[x]);var ze=f.useCallbackRef((function(e){if((e==null?void 0:e.length)===0&&ye.treeList.length===0){void Le.changeRequestStatus("request-success");return}void Le.setTreeList({treeList:e||[],childrenName:qe.children});H==null?void 0:H(e)}));var Be=f.useCallbackRef((function(e,r){var t=[];e.forEach((function(e){if(!r&&he!=null&&he.includes(e))return;var n=z(e,ye.treeList,qe);t=t.concat(n.map((function(e){return e.value})))}));return t}));f.useUpdateEffect((function(){if(Ee){var e=a(ye.treeList||[],qe);var r=e.filter((function(e){var r;return(r=e.label)==null?void 0:r.includes(Ee||"")}));ge((function(e){var t=Be(r.map((function(e){return e.value}))).concat(e||[]);return Array.from(new Set(t))}))}else{ge([])}}),[Ee]);q(t,(function(){return{onClearSelectorList:function e(){void Le.resetTreeList()},getTreeDataList:function e(){return ye.treeList}}}));var He=f.useCallbackRef((function(e){ge(e)}));var We=f.useCallbackRef((function(e,t,n){Ve.current=e;var a=l(t)?[]:r(t)?t:[t];if(l(e)){I==null?void 0:I(e,t,n);return}if(te){var i=De.label;var u=De.value;var s=a.map((function(e){var r;return r={},r[i]=e[qe.label],r[u]=e[qe.value],r}));if(r(e)){I==null?void 0:I(s,a,n)}else{I==null?void 0:I(s[0],a[0],n)}}else{if(r(e)){I==null?void 0:I(e,a,n)}else{I==null?void 0:I(e,a[0],n)}}}));var Ye=f.useCallbackRef((function(t,n){var a=e.checkStrictly?t.checked:t;a=l(t)?[]:t;a=r(a)?a:[a];var i=[];var u=[];var s=[];var o=[];a.forEach((function(e){var t=ye.treeTiledArray.find((function(r){return r[qe.value]===e}));if(!t)return;var n=t==null?void 0:t[qe.children];if(!r(n)||n.length===0){i.push(t);u.push(t[qe.value])}s.push(t);o.push(t[qe.value])}));if(U){ge((function(e){var r=Be(u).concat(e||[]);return Array.from(new Set(r))}));if(!F&&!e.checkStrictly){We(u,i,s)}else{We(o,s,s)}}else{if(a[0]){var c=s.find((function(e){return e[qe.value]===a[0]}));We(a[0],c,[c])}else{var d=n.node[qe.value];var v=ye.treeTiledArray.find((function(e){return e[qe.value]===d}));We(undefined,v,[v])}}}));var Ge=f.useCallbackRef((function(e){return Q==null?void 0:Q(e)}));var Je=j((function(){var e=h(ye.treeList||[]);if(Ee&&ue!=="highlight"){return s(h(ye.treeList||[]),(function(e){var r;var t=(r=e[qe.label])==null?void 0:r.toLowerCase();return t.indexOf(Ee.toLowerCase())>=0}))}return e}),[qe.label,ue,ye.treeList,Ee]);var Qe=j((function(){var e=function e(t){return t==null?void 0:t.map((function(t){var n;var a=(Ge==null?void 0:Ge(t))||t;var i=ne?undefined:a.disabled;var l=a[qe.label];var u;if(Ee){var s=l.indexOf(Ee);var o=l.substring(0,s);var c=l.slice(s+Ee.length);u=s>-1?_("span",{className:d({"v-tree-item-disabled":a.disabled}),children:[o,O("span",{className:"site-tree-search-value",children:Ee}),c]}):null}if(!u){u=O("span",{className:d({"v-tree-item-disabled":a.disabled}),children:l})}var v=a[qe.children];return m({},a,(n={disabled:i},n[qe.label]=u,n._treeItemName=l,n._disabled=a.disabled,n[qe.children]=r(v)&&v.length>0?e(v):undefined,n))}))};return e(Je)}),[Je,Ge,ne,qe.label,qe.children,Ee]);var Xe=f.useCallbackRef((function(r){return new Promise((function(t,n){return new Promise((function(a,i){var l,u,s,o;if(r[qe.children]){t();return a()}var c=function(){try{return a()}catch(e){return i(e)}};var d=function(e){try{void L.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((u=e.loadDataServiceConfig)==null?void 0:u.getParams==null?void 0:u.getParams(r))).then((function(e){try{s=e;o=fe.onRequestResultAdapter?fe.onRequestResultAdapter(s):s;void Le.treeListAppendChildren({value:r[qe.value],appendList:o,childrenName:qe.children,valueName:qe.value}).then((function(e){ze(e.treeList);t()}));return c()}catch(e){return d(e)}}),d)}catch(e){d(e)}}))}))}));var Ze=f.useCallbackRef((function(r){var t=r==null?void 0:r[qe.children];var n=e.loadDataFlag;var a=n?!r.isLeaf:false;var i=t&&t.length>0||a;return!i}));var $e=f.useCallbackRef((function(r){var t,n;var a=r._treeItemName||r[qe.label];if(ke==="fold"){var i;var l=[];if((i=e.menuOptions)!=null&&i.fold){var u,s,o;l=((u=e.menuOptions)==null?void 0:(s=u[ke])==null?void 0:s.call(u,m({},r,(o={},o[qe.label]=a,o))))||[]}else{var v;l=(e.getMenuOptions==null?void 0:e.getMenuOptions(m({},r,(v={},v[qe.label]=a,v))))||[]}return _(N,{children:[O("span",{className:"tree-item-title",children:(ce==null?void 0:ce(r))||(r==null?void 0:r[qe.label])}),l.length>0&&O(T,{menuList:l,children:O(c,{})})]})}var f=(t=e.menuOptions)==null?void 0:t.tile==null?void 0:t.tile(m({},r,(n={},n[qe.label]=a,n)));return _(N,{children:[O("span",{className:"tree-item-title",children:(ce==null?void 0:ce(r))||(r==null?void 0:r[qe.label])}),f?O(S,m({},f,{gap:5,className:d("tree-item-title-operate",f.className)})):null]})}));var er=f.useDebounceCallback((function(r){xe(r);e.onSearchValueChange==null?void 0:e.onSearchValueChange(r)}),300);var rr=f.useCallbackRef((function(e){er(e.target.value)}));var tr=f.useCallbackRef((function(r){if(!e.icon)return null;if(k(e.icon))return e.icon;var t=Ze(r.data);return e.icon(m({},r,{isParent:!t,isLeaf:t}))}));var nr=j((function(){return{title:qe.label,key:qe.value,children:qe.children}}),[qe]);var ar=Qe.length>0&&ye.requestStatus!=="request-error";var ir=m({showLine:{showLeafIcon:false},titleRender:$e,blockNode:true,switcherIcon:O(o,{}),onDrop:function e(r){var t=oe==null?void 0:oe(r);if(!t)return;var n=Y(Je,qe,r),a=n.dataList,i=n.dragNodeData;se==null?void 0:se(i);ze(a)}},de,{fieldNames:nr,expandedKeys:he,treeData:Qe,onExpand:He,loadData:e.loadDataFlag?Xe:undefined,style:{width:"100%"},icon:tr});var lr={onCheck:Ye,checkable:U,defaultCheckedKeys:Ne.current};var ur={onSelect:Ye,multiple:false,defaultSelectedKeys:Ne.current};var sr=U?lr:ur;var or=d("v-tree-wrapper","v-tree-wrapper-menu-"+Se);var cr=ye.treeList.length>0&&!ar&&Ee;return _("div",{className:or,style:n,children:[!!Z&&_("div",{className:"v-tree-wrapper-search-area",children:[O(P,{className:"v-tree-wrapper-search",placeholder:$,onChange:rr,value:X,allowClear:true}),!!e.searchExtraElement&&O("span",{className:"v-tree-wrapper-search-extra",children:e.searchExtraElement})]}),ar?_("div",{className:"v-tree-wrapper-tree-wrapper",children:[O(g,{spinning:ye.requestStatus==="request-progress"}),O(b,m({},sr,ir,{className:"v-tree-wrapper-tree"}),_e)]}):O(E,{status:ye.requestStatus,loading:we,messageConfig:m({"request-success":cr?"搜索结果为空":"暂无数据"},ee),errorButton:O(y,{type:"primary",onClick:Ue,children:"重新获取数据"})})]})}));Q.defaultProps={disabledCanUse:true};var X=e.attachPropertiesToComponent(Q,{getTreeDataList:U});export{X as TreeWrapper};
12
+ import{f as e}from"../fba-utils-1e895394.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,toArray as u,treeFilter as s}from"@flatbiz/utils";import o from"@ant-design/icons/es/icons/CaretDownFilled";import c from"@ant-design/icons/es/icons/MoreOutlined";import{classNames as d}from"@dimjs/utils/cjs/class-names";import{extend as v}from"@dimjs/utils/cjs/extend";import{hooks as f}from"@wove/react/cjs/hooks";import{_ as p,a as m}from"../_rollupPluginBabelHelpers-1f4d8910.js";import{cloneState as h}from"@dimjs/model";import{Spin as g,Tree as y,Button as b,message as L}from"antd";import{forwardRef as C,useState as w,useMemo as j,useRef as R,useImperativeHandle as q,Fragment as N,isValidElement as k}from"react";import{a as S}from"../button-operate-697b2a94.js";import{D as T}from"../dropdown-menu-wrapper-3544d20e.js";import{fbaHooks as D}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 E}from"@dimjs/utils/cjs/tree";import{isObject as A}from"@dimjs/lang/cjs/is-object";import{dequal as I}from"dequal";import{jsxs as _,jsx as O}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-e833e139.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"../use-responsive-point-21b8c601.js";var V={treeList:[],treeTiledArray:[],queryIsEmpty:false};var K={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:V};var F={};var M=function e(r){if(!F[r]){F[r]=t(K)}return F[r]};var U=function e(r){var t=M(r).getState();return t.treeList};var z=function e(r,t,n){var l=a(t,n);return i(r,l,true,{value:"value",parentValue:"parentValue"})};var B=function e(t,n){var a=l(t)?[]:t;a=r(a)?a:[a];a=a.map((function(e){if(A(e))return e[n.value];return e}));return a};var H=function e(r,t){var n=B(r,t);var a={};n.forEach((function(e){a[e]=true}));return a};var G=function e(r,t,n){if(l(r)&&l(t))return true;var a=H(r,n);var i=H(t,n);var u=I(a,i);return u};var W=function e(r,t,n){var a=n.node.key;var i=n.dragNode.key;var l=n.node.pos.split("-");var u=n.dropPosition-Number(l[l.length-1]);var s=t.value;var o=t.children;var c=function e(r,t,n){for(var a=0;a<r.length;a++){if(r[a][s]===t){return n(r[a],a,r)}if(r[a][o]){e(r[a][o],t,n)}}};var d=h(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[o]=e[o]||[];e[o].unshift(v)}))}else if((n.node.props.children||[]).length>0&&n.node.props.expanded&&u===1){c(d,a,(function(e){e[o]=e[o]||[];e[o].unshift(v)}))}else{var f=[];var p;c(d,a,(function(e,r,t){f=t;p=r}));if(u===-1){f.splice(p,0,v)}else{f.splice(p+1,0,v)}}return{dataList:d,dragNodeData:Y(i,d,t)}};var Y=function e(r,t,a){var i;var l=a.value;var u=a.children;E.walkThroughTree((i={},i[l]=undefined,i[u]=t,i),(function(e,r,t){e["__index"]=r;e["__parentId"]=t==null?void 0:t[l]}),u);var s=n(t,u);var o=s.find((function(e){return e[l]===r}));return{parentId:o==null?void 0:o["__parentId"],id:o==null?void 0:o[l],index:o==null?void 0:o["__index"]}};var J=["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"];var Q=C((function(e,t){var n=e.style,i=e.serviceConfig,C=e.effectDependencyList,E=e.selectorTreeList,A=e.value,I=e.onChange,V=e.modelKey,K=e.checkableResponseParentNode,F=K===void 0?true:K,U=e.checkable,H=e.onSelectorTreeListChange,Y=e.onRequestResponseChange,Q=e.treeItemDataAdapter,X=e.searchValue,Z=e.showSearch,$=e.searchPlaceholder,ee=e.requestMessageConfig,re=e.labelInValueFieldNames,te=e.labelInValue,ne=e.disabledCanUse,ae=e.menuLayoutType,ie=e.menuTriggerType,le=e.initRootExpand,ue=e.searchResultType,se=e.onDropNodeHandle,oe=e.onDropPrev,ce=e.labelRender,de=e.searchStyle,ve=p(e,J);var fe=e.hasOwnProperty("selectorTreeList");var pe=i||{};var me=C||[];var he=w(),ge=he[0],ye=he[1];var be=M(V).useStore(),Le=be[0],Ce=be[1];var we=D.useSafeState(false),je=we[0],Re=we[1];var qe="request-progress-"+e.modelKey;var Ne=j((function(){return m({label:"label",value:"value",children:"children"},e.fieldNames)}),[e.fieldNames]);var ke=R();var Se=ae===undefined?"fold":ae;var Te=ie===undefined?"click":ie;var De=U===true;var Pe=j((function(){return m({label:"label",value:"value"},re)}),[re]);var xe=w(),Ee=xe[0],Ae=xe[1];var Ie=R(true);var _e=w(0),Oe=_e[0],Ve=_e[1];var Ke=R();var Fe=j((function(){var e=B(A,Pe);return e}),[Pe,A]);D.useEffectCustom((function(){if(l(A)&&Ie.current||Le.treeList.length==0)return;Ie.current=false;if(!G(A,Ke.current,Pe)){console.log("modelKey:"+V+" TreeWrapper key refresh",A,Ke.current);Ke.current=De?Fe:Fe[0];var e=He(Fe,true);ye(Array.from(new Set(e)));ke.current=Fe;Ve(Date.now())}}),[A,Le.treeList]);var Me=function e(r){return r===""||l(r)};var Ue=function e(r){var t=pe.onRequestResultAdapter?pe.onRequestResultAdapter(r):r;return t};D.useEffectCustom((function(){Ae(X)}),[X]);var ze=f.useCallbackRef((function(){return new Promise((function(e,r){var t,n,a,i,l;var s=function(){try{return e()}catch(e){return r(e)}};var o=function(e){try{Re(false);void L.error(e.message||"数据查询异常...");return s()}catch(e){return r(e)}};try{if(!pe.onRequest){throw new Error("onRequest 调用接口服务不能为空")}t=pe.requiredParamsKeys;n=v({},pe.params);if(t){a=t.find((function(e){return Me(n[e])}));if(a){console.warn("TreeWrapper组件:参数:"+t.join("、")+"不能为空");return e()}}var c=function(){try{return s()}catch(e){return o(e)}};var d=function(e){try{window[qe]=false;Re(false);void Ce.changeRequestStatus("request-error");return c()}catch(e){return o(e)}};try{Re(true);return Promise.resolve(Ce.changeRequestStatus("request-progress")).then((function(e){try{window[qe]=true;return Promise.resolve(pe.onRequest==null?void 0:pe.onRequest(n)).then((function(e){try{i=e;Y==null?void 0:Y(i);l=Ue(i);Be(l||[]);Re(false);if(le&&u(l).length){ye([l==null?void 0:l[0][Ne.value]])}window[qe]=false;return c()}catch(e){return d(e)}}),d)}catch(e){return d(e)}}),d)}catch(e){d(e)}}catch(e){o(e)}}))}));D.useEffectCustom((function(){if(fe)return;if(Boolean(me.length)){void ze();return}var e=M(V).getState();if(e.requestStatus==="request-success"){H==null?void 0:H(e.treeList);return}if(!window[qe]){void ze()}else{H==null?void 0:H(e.treeList)}}),me);D.useEffectCustom((function(){if(fe){Be(E||[])}}),[E]);var Be=f.useCallbackRef((function(e){if((e==null?void 0:e.length)===0&&Le.treeList.length===0){void Ce.changeRequestStatus("request-success");return}void Ce.setTreeList({treeList:e||[],childrenName:Ne.children});H==null?void 0:H(e)}));var He=f.useCallbackRef((function(e,r){var t=[];e.forEach((function(e){if(!r&&ge!=null&&ge.includes(e))return;var n=z(e,Le.treeList,Ne);t=t.concat(n.map((function(e){return e.value})))}));return t}));f.useUpdateEffect((function(){if(Ee){var e=a(Le.treeList||[],Ne);var r=e.filter((function(e){var r;return(r=e.label)==null?void 0:r.includes(Ee||"")}));ye((function(e){var t=He(r.map((function(e){return e.value}))).concat(e||[]);return Array.from(new Set(t))}))}else{ye([])}}),[Ee]);q(t,(function(){return{onClearSelectorList:function e(){void Ce.resetTreeList()},getTreeDataList:function e(){return Le.treeList}}}));var Ge=f.useCallbackRef((function(e){ye(e)}));var We=f.useCallbackRef((function(e,t,n){Ke.current=e;var a=l(t)?[]:r(t)?t:[t];if(l(e)){I==null?void 0:I(e,t,n);return}if(te){var i=Pe.label;var u=Pe.value;var s=a.map((function(e){var r;return r={},r[i]=e[Ne.label],r[u]=e[Ne.value],r}));if(r(e)){I==null?void 0:I(s,a,n)}else{I==null?void 0:I(s[0],a[0],n)}}else{if(r(e)){I==null?void 0:I(e,a,n)}else{I==null?void 0:I(e,a[0],n)}}}));var Ye=f.useCallbackRef((function(t,n){var a=e.checkStrictly?t.checked:t;a=l(t)?[]:t;a=r(a)?a:[a];var i=[];var u=[];var s=[];var o=[];a.forEach((function(e){var t=Le.treeTiledArray.find((function(r){return r[Ne.value]===e}));if(!t)return;var n=t==null?void 0:t[Ne.children];if(!r(n)||n.length===0){i.push(t);u.push(t[Ne.value])}s.push(t);o.push(t[Ne.value])}));if(U){ye((function(e){var r=He(u).concat(e||[]);return Array.from(new Set(r))}));if(!F&&!e.checkStrictly){We(u,i,s)}else{We(o,s,s)}}else{if(a[0]){var c=s.find((function(e){return e[Ne.value]===a[0]}));We(a[0],c,[c])}else{var d=n.node[Ne.value];var v=Le.treeTiledArray.find((function(e){return e[Ne.value]===d}));We(undefined,v,[v])}}}));var Je=f.useCallbackRef((function(e){return Q==null?void 0:Q(e)}));var Qe=j((function(){var e=h(Le.treeList||[]);if(Ee&&ue!=="highlight"){return s(h(Le.treeList||[]),(function(e){var r;var t=(r=e[Ne.label])==null?void 0:r.toLowerCase();return t.indexOf(Ee.toLowerCase())>=0}))}return e}),[Ne.label,ue,Le.treeList,Ee]);var Xe=j((function(){var e=function e(t){return t==null?void 0:t.map((function(t){var n;var a=(Je==null?void 0:Je(t))||t;var i=ne?undefined:a.disabled;var l=a[Ne.label];var u;if(Ee){var s=l.indexOf(Ee);var o=l.substring(0,s);var c=l.slice(s+Ee.length);u=s>-1?_("span",{className:d({"v-tree-item-disabled":a.disabled}),children:[o,O("span",{className:"site-tree-search-value",children:Ee}),c]}):null}if(!u){u=O("span",{className:d({"v-tree-item-disabled":a.disabled}),children:l})}var v=a[Ne.children];return m({},a,(n={disabled:i},n[Ne.label]=u,n._treeItemName=l,n._disabled=a.disabled,n[Ne.children]=r(v)&&v.length>0?e(v):undefined,n))}))};return e(Qe)}),[Qe,Je,ne,Ne.label,Ne.children,Ee]);var Ze=f.useCallbackRef((function(r){return new Promise((function(t,n){return new Promise((function(a,i){var l,u,s,o;if(r[Ne.children]){t();return a()}var c=function(){try{return a()}catch(e){return i(e)}};var d=function(e){try{void L.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((u=e.loadDataServiceConfig)==null?void 0:u.getParams==null?void 0:u.getParams(r))).then((function(e){try{s=e;o=pe.onRequestResultAdapter?pe.onRequestResultAdapter(s):s;void Ce.treeListAppendChildren({value:r[Ne.value],appendList:o,childrenName:Ne.children,valueName:Ne.value}).then((function(e){Be(e.treeList);t()}));return c()}catch(e){return d(e)}}),d)}catch(e){d(e)}}))}))}));var $e=f.useCallbackRef((function(r){var t=r==null?void 0:r[Ne.children];var n=e.loadDataFlag;var a=n?!r.isLeaf:false;var i=t&&t.length>0||a;return!i}));var er=f.useCallbackRef((function(r){var t,n;var a=r._treeItemName||r[Ne.label];if(Se==="fold"){var i;var l=[];if((i=e.menuOptions)!=null&&i.fold){var u,s,o;l=((u=e.menuOptions)==null?void 0:(s=u[Se])==null?void 0:s.call(u,m({},r,(o={},o[Ne.label]=a,o))))||[]}else{var v;l=(e.getMenuOptions==null?void 0:e.getMenuOptions(m({},r,(v={},v[Ne.label]=a,v))))||[]}return _(N,{children:[O("span",{className:"tree-item-title",children:(ce==null?void 0:ce(r))||(r==null?void 0:r[Ne.label])}),l.length>0&&O(T,{menuList:l,children:O(c,{})})]})}var f=(t=e.menuOptions)==null?void 0:t.tile==null?void 0:t.tile(m({},r,(n={},n[Ne.label]=a,n)));return _(N,{children:[O("span",{className:"tree-item-title",children:(ce==null?void 0:ce(r))||(r==null?void 0:r[Ne.label])}),f?O(S,m({},f,{gap:5,className:d("tree-item-title-operate",f.className)})):null]})}));var rr=f.useDebounceCallback((function(r){Ae(r);e.onSearchValueChange==null?void 0:e.onSearchValueChange(r)}),300);var tr=f.useCallbackRef((function(e){rr(e.target.value)}));var nr=f.useCallbackRef((function(r){if(!e.icon)return null;if(k(e.icon))return e.icon;var t=$e(r.data);return e.icon(m({},r,{isParent:!t,isLeaf:t}))}));var ar=j((function(){return{title:Ne.label,key:Ne.value,children:Ne.children}}),[Ne]);var ir=Xe.length>0&&Le.requestStatus!=="request-error";var lr=m({showLine:{showLeafIcon:false},titleRender:er,blockNode:true,switcherIcon:O(o,{}),onDrop:function e(r){if(oe){var t=oe(r);if(!t)return}var n=W(Qe,Ne,r),a=n.dataList,i=n.dragNodeData;se==null?void 0:se(i);Be(a)}},ve,{fieldNames:ar,expandedKeys:ge,treeData:Xe,onExpand:Ge,loadData:e.loadDataFlag?Ze:undefined,style:{width:"100%"},icon:nr});var ur={onCheck:Ye,checkable:U,defaultCheckedKeys:ke.current};var sr={onSelect:Ye,multiple:false,defaultSelectedKeys:ke.current};var or=U?ur:sr;var cr=d("v-tree-wrapper","v-tree-wrapper-menu-"+Te);var dr=Le.treeList.length>0&&!ir&&Ee;return _("div",{className:cr,style:n,children:[!!Z&&_("div",{className:"v-tree-wrapper-search-area",style:de,children:[O(P,{className:"v-tree-wrapper-search",placeholder:$,onChange:tr,value:X,allowClear:true}),!!e.searchExtraElement&&O("span",{className:"v-tree-wrapper-search-extra",children:e.searchExtraElement})]}),ir?_("div",{className:"v-tree-wrapper-tree-wrapper",children:[O(g,{spinning:Le.requestStatus==="request-progress"}),O(y,m({},or,lr,{className:"v-tree-wrapper-tree"}),Oe)]}):O(x,{status:Le.requestStatus,loading:je,messageConfig:m({"request-success":dr?"搜索结果为空":"暂无数据"},ee),errorButton:O(b,{type:"primary",onClick:ze,children:"重新获取数据"})})]})}));Q.defaultProps={disabledCanUse:true};var X=e.attachPropertiesToComponent(Q,{getTreeDataList:U});export{X as TreeWrapper};
13
13
  //# sourceMappingURL=index.js.map