@flatbiz/antd 5.0.40 → 5.0.42

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 (44) hide show
  1. package/dist/bootstrap/index.js +2 -2
  2. package/dist/{bootstrap-DTx6-Q_Y.js → bootstrap-DtZAiLNG.js} +2 -2
  3. package/dist/{bootstrap-DTx6-Q_Y.js.map → bootstrap-DtZAiLNG.js.map} +1 -1
  4. package/dist/button-operate/index.d.ts +7 -0
  5. package/dist/button-operate/index.js +1 -1
  6. package/dist/{button-operate-CPlw00Mg.js → button-operate-DprXMhOZ.js} +18 -8
  7. package/dist/button-operate-DprXMhOZ.js.map +1 -0
  8. package/dist/{cell-render-Dp344auH.js → cell-render-Btk1xTUj.js} +2 -2
  9. package/dist/{cell-render-Dp344auH.js.map → cell-render-Btk1xTUj.js.map} +1 -1
  10. package/dist/{drag-WgtQg-qO.js → drag-Dr-jbsnU.js} +2 -2
  11. package/dist/{drag-WgtQg-qO.js.map → drag-Dr-jbsnU.js.map} +1 -1
  12. package/dist/drag-editable-table/index.d.ts +12 -2
  13. package/dist/drag-editable-table/index.js +5 -5
  14. package/dist/editable-table/index.d.ts +12 -2
  15. package/dist/editable-table/index.js +4 -4
  16. package/dist/{editable-table-D7Zpl0MJ.js → editable-table-Bsch15kT.js} +3 -3
  17. package/dist/{editable-table-D7Zpl0MJ.js.map → editable-table-Bsch15kT.js.map} +1 -1
  18. package/dist/fba-app/index.js +1 -1
  19. package/dist/{fba-app-BTgXf567.js → fba-app-Ew89Y7th.js} +3 -4
  20. package/dist/fba-app-Ew89Y7th.js.map +1 -0
  21. package/dist/index.d.ts +33 -5
  22. package/dist/index.js +8 -8
  23. package/dist/{selector-CQ_yMKjh.js → selector-DGXElqt2.js} +9 -6
  24. package/dist/selector-DGXElqt2.js.map +1 -0
  25. package/dist/selector-wrapper/index.d.ts +12 -2
  26. package/dist/selector-wrapper/index.js +1 -1
  27. package/dist/{selector-wrapper-BSpsy8KA.js → selector-wrapper-DfaplVbz.js} +6 -3
  28. package/dist/selector-wrapper-DfaplVbz.js.map +1 -0
  29. package/dist/table-cell-render/index.d.ts +7 -0
  30. package/dist/table-cell-render/index.js +2 -2
  31. package/dist/tree-modal/index.d.ts +14 -2
  32. package/dist/tree-modal/index.js +1 -1
  33. package/dist/tree-modal-selector/index.d.ts +14 -2
  34. package/dist/tree-modal-selector/index.js +1 -1
  35. package/dist/tree-selector-wrapper/index.d.ts +7 -1
  36. package/dist/tree-selector-wrapper/index.js +1 -1
  37. package/dist/tree-wrapper/index.d.ts +14 -2
  38. package/dist/tree-wrapper/index.js +9 -6
  39. package/dist/tree-wrapper/index.js.map +1 -1
  40. package/package.json +3 -3
  41. package/dist/button-operate-CPlw00Mg.js.map +0 -1
  42. package/dist/fba-app-BTgXf567.js.map +0 -1
  43. package/dist/selector-CQ_yMKjh.js.map +0 -1
  44. package/dist/selector-wrapper-BSpsy8KA.js.map +0 -1
@@ -1 +0,0 @@
1
- {"version":3,"file":"button-operate-CPlw00Mg.js","sources":["@flatbiz/antd/src/button-operate/button-operate.tsx"],"sourcesContent":["import type { CSSProperties, FC, ReactElement, ReactNode } from 'react';\nimport { Fragment, isValidElement, useMemo, useState } from 'react';\nimport type { PopconfirmProps, SpaceProps } from 'antd';\nimport { Button, Divider, Popconfirm, Popover, Space, Tooltip } from 'antd';\nimport { MoreOutlined } from '@ant-design/icons';\nimport { isPlainObject, isPromise, isString, isUndefined } from '@dimjs/lang';\nimport { classNames } from '@dimjs/utils';\nimport { hooks } from '@wove/react';\nimport type { ButtonWrapperProps } from '../button-wrapper/button-wrapper.jsx';\nimport { ButtonWrapper } from '../button-wrapper/button-wrapper.jsx';\nimport type { DialogModalProps } from '../dialog-modal/dialog-modal.jsx';\nimport type { DropdownMenuWrapperProps } from '../dropdown-menu-wrapper/dropdown-menu-wrapper.jsx';\nimport { DropdownMenuWrapper } from '../dropdown-menu-wrapper/dropdown-menu-wrapper.jsx';\nimport { fbaUtils } from '../fba-utils/index.js';\nimport './style.less';\n\nexport interface ButtonOperateItem extends ButtonWrapperProps {\n /** hover 提示文字,isFold=true无效 */\n hoverTips?: string | ReactElement;\n /** hover 提示类型 默认:'tooltip' */\n tipsType?: 'popover' | 'tooltip';\n /** 按钮文案 */\n text?: string | ReactElement;\n /** 自定义按钮颜色 */\n color?: string;\n /** 是否需要二次弹框确认 */\n needConfirm?: boolean;\n /** 二次弹框确认文案 */\n confirmMessage?: ReactNode;\n /* isFold=false & needConfirm=true 有效 */\n popconfirmProps?: Pick<\n PopconfirmProps,\n 'placement' | 'okText' | 'cancelText' | 'trigger'\n >;\n /** 是否折叠合拢 */\n isFold?: boolean;\n /* isFold=true & needConfirm=true 有效 */\n confirmModalProps?: DialogModalProps;\n /** 是否显示按钮,优先级高于 hidden */\n show?: boolean;\n}\n\nexport interface ButtonOperateProps {\n className?: string;\n style?: CSSProperties;\n /**\n * 如果数组中元素为ReactElement类型\n * 1. 一般为antd Button组件,如果组件存在属性hidden=true、v-hidden=true,则会隐藏\n * 2. 可配置 v-permission 权限值,例如 v-permission=\"add\"\n * 3. 任何confirm、disabled等状态在外部控制\n * 3. 不支持fold效果\n */\n operateList: Array<ButtonOperateItem | null | ReactElement>;\n /** 是否换行,默认true */\n wrap?: boolean;\n /** 隐藏图标Icon */\n foldIcon?: ReactElement;\n /** 按钮之间是否添加分隔符 */\n split?: boolean;\n /** 多个按钮的包装组件Space属性 */\n spaceProps?: SpaceProps;\n /** 间距,默认:10;split=true配置下无效(可通过spaceProps设置间距) */\n gap?: number;\n /** 折叠合拢属性 */\n dropdownMenuProps?: Omit<DropdownMenuWrapperProps, 'menuList'>;\n}\n\nexport const ButtonOperateItemContent = (\n props: Pick<ButtonOperateItem, 'hoverTips' | 'tipsType'> & {\n content: ReactNode;\n }\n) => {\n if (props.hoverTips) {\n if (props.tipsType === 'popover') {\n return (\n <Popover content={props.hoverTips} zIndex={1000}>\n <span>{props.content}</span>\n </Popover>\n );\n }\n return (\n <Tooltip title={props.hoverTips} zIndex={1000}>\n <span>{props.content}</span>\n </Tooltip>\n );\n }\n if (isValidElement(props.content)) {\n return <Fragment>{props.content}</Fragment>;\n }\n // ButtonOperate item 内部 span 包文案会有动态效果\n return <span>{props.content}</span>;\n};\n\n/**\n * 按钮组合处理组件\n * ```\n * 1. operateList中存在ReactElement类型的元素,可通过配置 v-permission 属性来设置权限,例如 v-permission=\"add\"\n * 2. operateList中存在ReactElement类型的元素,如果有hidden、v-hidden属性,值为true会隐藏\n *\n *\n * flatbiz/antd@4.2.49\n * 1. 替换 Fold 中 needConfirm交互,有 Popconfirm 改为 dialogConfirm组件实现二次弹框确认功能\n * 2. 修改原因:升级 antd 5.5.1 后,Dropdown 中 Popconfirm弹框组合使用存在问题\n * ```\n */\nexport const ButtonOperate: FC<ButtonOperateProps> = (props) => {\n const [loading, setLoading] = useState(false);\n\n const onConfirm = hooks.useCallbackRef((item: ButtonOperateItem, event) => {\n const result = item.onClick?.(event);\n if (result && isPromise(result)) {\n setLoading(true);\n return result.finally(() => {\n setLoading(false);\n });\n }\n return;\n });\n\n const operateList = props.operateList.filter((item) => {\n if (!item) return false;\n if (isValidElement(item)) {\n if (item.props?.['hidden'] === true) return false;\n if (item.props?.['v-hidden'] === true) return false;\n const permission = item.props?.['v-permission'];\n if (isString(permission)) {\n return fbaUtils.hasPermission(permission);\n }\n return true;\n }\n if (isPlainObject(item)) {\n if (!fbaUtils.hasPermission(item['permission'])) {\n return false;\n }\n if (Object.prototype.hasOwnProperty.call(item, 'show')) {\n return item['show'];\n } else if (Object.prototype.hasOwnProperty.call(item, 'hidden')) {\n return !item['hidden'];\n }\n return true;\n }\n return false;\n }) as Array<ButtonOperateItem | ReactElement>;\n\n const viewList = useMemo(() => {\n return operateList.filter((item) => {\n if (isValidElement(item)) {\n return true;\n }\n return !item['isFold'];\n }) as ButtonOperateItem[];\n }, [operateList]);\n\n const foldList = useMemo(() => {\n const filterList = operateList.filter((item) => {\n if (isValidElement(item)) {\n return false;\n }\n return item['isFold'];\n }) as ButtonOperateItem[];\n const result = [] as ButtonOperateItem[];\n filterList.forEach((item) => {\n const target = { ...item };\n // 多余字段渲染到react dom上,出现警告\n delete target.isFold;\n result.push(target);\n });\n return result;\n }, [operateList]);\n\n const gap = props.gap === undefined ? 10 : props.gap;\n const size = !props.split ? gap : 0;\n\n return (\n <div\n className={classNames('table-operate', props.className)}\n style={props.style}\n >\n <Space\n split={props.split ? <Divider type=\"vertical\" /> : null}\n size={size}\n wrap={isUndefined(props.wrap) ? true : props.wrap}\n {...props.spaceProps}\n >\n {viewList.map((item, index) => {\n if (item && isValidElement(item)) {\n return (\n <ButtonOperateItemContent\n content={item}\n hoverTips={item.hoverTips}\n tipsType={item.tipsType}\n key={index}\n />\n );\n }\n const {\n text,\n onClick,\n needConfirm,\n confirmMessage,\n popconfirmProps,\n hoverTips,\n color,\n tipsType,\n type,\n // 多余字段渲染到react dom上,出现警告\n isFold: _isFold,\n ...otherProps\n } = item;\n const typeFt = type || 'link';\n if (needConfirm && !otherProps.disabled) {\n const danger = color ? false : true;\n return (\n <Popconfirm\n okText=\"确定\"\n cancelText=\"取消\"\n trigger={['click']}\n placement=\"topRight\"\n arrow={true}\n destroyTooltipOnHide={true}\n {...popconfirmProps}\n title={confirmMessage}\n onConfirm={onConfirm.bind(null, item)}\n key={index}\n okButtonProps={{\n loading,\n }}\n onOpenChange={(_open) => {\n if (!_open) {\n setLoading(false);\n }\n }}\n onCancel={(event) => {\n event?.stopPropagation();\n }}\n >\n <ButtonWrapper\n danger={danger}\n {...otherProps}\n onClick={(event) => {\n event.stopPropagation();\n }}\n type={typeFt}\n >\n <ButtonOperateItemContent\n content={text}\n hoverTips={hoverTips}\n tipsType={tipsType}\n key={index}\n />\n </ButtonWrapper>\n </Popconfirm>\n );\n }\n return (\n <ButtonWrapper\n loadingPosition=\"center\"\n {...otherProps}\n color={color}\n type={typeFt}\n onClick={(event) => {\n event.stopPropagation();\n return onClick?.(event);\n }}\n key={index}\n >\n <ButtonOperateItemContent\n content={text}\n hoverTips={hoverTips}\n tipsType={item.tipsType}\n />\n </ButtonWrapper>\n );\n })}\n {foldList.length > 0 ? (\n <DropdownMenuWrapper\n menuList={foldList}\n placement=\"bottom\"\n {...props.dropdownMenuProps}\n >\n <Button\n type=\"link\"\n className=\"fold-more-button\"\n onClick={(event) => {\n event.stopPropagation();\n }}\n >\n {props.foldIcon ? props.foldIcon : <MoreOutlined />}\n </Button>\n </DropdownMenuWrapper>\n ) : null}\n </Space>\n </div>\n );\n};\n\nButtonOperate.defaultProps = {\n split: true,\n};\n"],"names":["ButtonOperateItemContent","props","hoverTips","tipsType","_jsx","Popover","content","zIndex","children","Tooltip","title","isValidElement","Fragment","ButtonOperate","_useState","useState","_useState2","_slicedToArray","loading","setLoading","onConfirm","_hooks","useCallbackRef","item","event","_item$onClick","result","onClick","call","_isPromise","finally","operateList","filter","_item$props","_item$props2","_item$props3","permission","_isString","fbaUtils","hasPermission","_isPlainObject","Object","prototype","hasOwnProperty","viewList","useMemo","foldList","filterList","forEach","target","_objectSpread","isFold","push","gap","undefined","size","split","className","_classNames","style","_jsxs","Space","Divider","type","wrap","_isUndefined","spaceProps","map","index","text","needConfirm","confirmMessage","popconfirmProps","color","otherProps","_objectWithoutProperties","_excluded","typeFt","disabled","danger","_createElement","Popconfirm","okText","cancelText","trigger","placement","arrow","destroyTooltipOnHide","bind","key","okButtonProps","onOpenChange","_open","onCancel","stopPropagation","ButtonWrapper","loadingPosition","length","DropdownMenuWrapper","menuList","dropdownMenuProps","Button","foldIcon","_MoreOutlined","defaultProps"],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"fba-app-BTgXf567.js","sources":["@flatbiz/antd/src/fba-app/context.ts","@flatbiz/antd/src/fba-app/dialog-modal/context.ts","@flatbiz/antd/src/fba-app/dialog-modal/index.tsx","@flatbiz/antd/src/fba-app/dialog-confirm/index.tsx","@flatbiz/antd/src/fba-app/dialog-alert/index.tsx","@flatbiz/antd/src/fba-app/dialog-drawer/context.ts","@flatbiz/antd/src/fba-app/dialog-drawer/index.tsx","@flatbiz/antd/src/fba-app/dialog-loading/index.tsx","@flatbiz/antd/src/fba-app/fba-app.tsx"],"sourcesContent":["import { createContext } from 'react';\nimport type { FbaAppAlertProps } from './dialog-alert/index.jsx';\nimport type { FbaAppConfirmProps } from './dialog-confirm/index.jsx';\nimport type { FbaAppDrawerProps } from './dialog-drawer/index.jsx';\nimport type { FbaAppLoadingProps } from './dialog-loading/index.jsx';\nimport type { FbaAppModalProps } from './dialog-modal/index.jsx';\n\nexport type FbaAppContextApi = {\n dialogDrawerOpen?: (data: FbaAppDrawerProps) => void;\n dialogDrawerClose?: (e?) => void;\n\n dialogDrawerOpen2?: (data: FbaAppDrawerProps) => void;\n dialogDrawerClose2?: (e?) => void;\n\n dialogModalOpen?: (data: FbaAppModalProps) => void;\n dialogModalClose?: () => void;\n\n dialogModalOpen2?: (data: FbaAppModalProps) => void;\n dialogModalClose2?: () => void;\n\n dialogAlertOpen?: (data: FbaAppAlertProps) => void;\n dialogAlertClose?: () => void;\n\n dialogConfirmOpen?: (data: FbaAppConfirmProps) => void;\n dialogConfirmClose?: () => void;\n\n dialogLoadingOpen?: (data?: FbaAppLoadingProps & { open?: boolean }) => void;\n dialogLoadingClose?: () => void;\n};\n\nexport const FbaAppContext = createContext<FbaAppContextApi>({});\n","import type { TPlainObject } from '@flatbiz/utils';\nimport { createCtx } from '@wove/react';\n\nexport const [useFbaAppDialogModalCtx, CtxProvider] = createCtx<{\n /** 重新渲染footer */\n rerenderFooter: (data?: TPlainObject) => void;\n}>();\n","import type { ReactElement } from 'react';\nimport { useMemo, useState } from 'react';\nimport { useSize } from 'ahooks';\nimport type { FormInstance, ModalProps } from 'antd';\nimport { Form, Modal } from 'antd';\nimport { isPromise } from '@dimjs/lang';\nimport { classNames } from '@dimjs/utils';\nimport type { TNoopDefine, TPlainObject } from '@flatbiz/utils';\nimport { hooks } from '@wove/react';\nimport { getFbaLocaleMessage } from '../../_utils/i18n/index.js';\nimport type { ButtonWrapperProps } from '../../button-wrapper/button-wrapper.jsx';\nimport { ButtonWrapper } from '../../button-wrapper/button-wrapper.jsx';\nimport { fbaHooks } from '../../fba-hooks/index.js';\nimport { FlexLayout } from '../../flex-layout/flex-layout.jsx';\nimport { CtxProvider } from './context.js';\nimport './style.less';\n\nexport type FbaAppModalProps = Omit<\n ModalProps,\n | 'onOk'\n | 'onCancel'\n | 'getContainer'\n | 'okButtonProps'\n | 'cancelButtonProps'\n | 'footer'\n> & {\n /**\n * 内置尺寸,根据比例固定高度、宽度\n * ```\n * 1. 如果自定义了width、bodyHeight属性,size中的height、width将对应失效\n * 2. 不传、传null值可取消内置尺寸\n * ```\n */\n size?: 'small' | 'middle' | 'large' | null;\n onOk?: (\n form: FormInstance,\n e: React.MouseEvent<HTMLElement>\n ) => void | Promise<void>;\n onCancel?: (\n form: FormInstance,\n e: React.MouseEvent<HTMLElement>\n ) => void | Promise<void>;\n onClose?: () => void;\n /**\n * content只在第一次弹起时,执行一次\n */\n content:\n | string\n | ReactElement\n | ((form: FormInstance, operate: { onClose: TNoopDefine }) => ReactElement);\n okHidden?: boolean;\n cancelHidden?: boolean;\n okButtonProps?: Omit<ButtonWrapperProps, 'hidden' | 'children' | 'onClick'>;\n cancelButtonProps?: Omit<\n ButtonWrapperProps,\n 'hidden' | 'children' | 'onClick'\n >;\n /**\n * 设置modal body height 为当前窗口height的百分比,例如:30\n * @deprecated 已失效,可通过size属性设置\n * ```\n * 1. 最大值:80\n * 1. 设置bodyStyle.height 后,bodyHeightPercent失效\n * ```\n */\n bodyHeightPercent?: number;\n\n titleExtra?: ReactElement;\n /**\n * null则隐藏footer\n * ```\n * extraData 为外部通过 useDialogModal.rerenderFooter 重新渲染footer携带的数据\n * ```\n */\n footer?:\n | null\n | ReactElement\n | ReactElement[]\n | ((form: FormInstance, extraData?: TPlainObject) => ReactElement);\n /** 内容高度,为styles.body.height快捷配置,优先级低于styles.body.height */\n bodyHeight?: number;\n};\n\nexport const FbaAppModal = (props: FbaAppModalProps) => {\n const {\n titleExtra,\n title,\n onOk,\n onCancel,\n okButtonProps,\n cancelButtonProps,\n content,\n className,\n okHidden,\n cancelHidden,\n footer,\n cancelText,\n okText,\n size,\n bodyHeight,\n ...otherProps\n } = props;\n const [form] = Form.useForm();\n const htmlSize = useSize(document.querySelector('html'));\n const localMessage = getFbaLocaleMessage();\n const screenType = fbaHooks.useResponsivePoint() || '';\n\n const [footerExtraData, setFooterExtraData] = useState<TPlainObject>({});\n\n const onClose = hooks.useCallbackRef(() => {\n props.onClose?.();\n });\n\n const onCancelHandle = hooks.useCallbackRef((e) => {\n if (onCancel) {\n const response = onCancel(form, e);\n if (response && isPromise(response)) {\n return response.then(onClose);\n }\n }\n onClose();\n return Promise.resolve();\n });\n\n const onOkHandle = hooks.useCallbackRef((e) => {\n if (onOk) {\n const response = onOk(form, e);\n if (response && isPromise(response)) {\n return response.then(onClose);\n }\n }\n onClose();\n return Promise.resolve();\n });\n\n const footerNew = fbaHooks.useMemoCustom(() => {\n if (footer) {\n return typeof footer === 'function'\n ? footer(form, footerExtraData)\n : footer;\n }\n if ((cancelHidden && okHidden) || footer === null) {\n return null;\n }\n return [\n <ButtonWrapper\n key=\"0\"\n {...cancelButtonProps}\n onClick={onCancelHandle}\n hidden={cancelHidden}\n >\n {cancelText || localMessage.FbaDialogModal?.cancelText}\n </ButtonWrapper>,\n <ButtonWrapper\n key=\"1\"\n type=\"primary\"\n {...okButtonProps}\n onClick={onOkHandle}\n hidden={okHidden}\n >\n {okText || '提交'}\n </ButtonWrapper>,\n ].filter(Boolean);\n }, [footerExtraData, props.open]);\n\n const customSize = useMemo(() => {\n if (!htmlSize?.height || !screenType) return undefined;\n const isXsSm = ['xs', 'sm'].includes(screenType);\n if (isXsSm) {\n return { width: '90%' };\n }\n if (size == 'large') {\n return {\n height: htmlSize?.height * 0.7,\n width: isXsSm ? '90%' : htmlSize.width * 0.6,\n };\n }\n if (size == 'small') {\n const width = htmlSize.width * 0.3;\n return {\n height: htmlSize?.height * 0.4,\n width: isXsSm ? '90%' : width < 470 ? 470 : width,\n };\n }\n\n if (size == 'middle') {\n return {\n height: htmlSize?.height * 0.4,\n width: isXsSm ? '90%' : htmlSize.width * 0.5,\n };\n }\n\n return undefined;\n }, [htmlSize?.height, htmlSize?.width, screenType, size]);\n\n const classNameNew = classNames(\n 'fba-dialog-modal',\n { 'fba-dialog-modal-title-extra': !!titleExtra },\n { 'fba-dialog-modal-footer-empty': !footerNew },\n className\n );\n\n const rerenderFooter = (data) => {\n setFooterExtraData(data);\n };\n\n const bodyHeightNew = otherProps.styles?.body?.height || bodyHeight;\n\n // content 只会在第一次渲染\n const contentFt = useMemo(() => {\n return typeof content === 'function' ? content(form, { onClose }) : content;\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n return (\n <CtxProvider value={{ rerenderFooter }}>\n <Modal\n maskClosable={true}\n title={\n titleExtra ? (\n <FlexLayout direction=\"horizontal\" fullIndex={0}>\n <span>{title}</span>\n {titleExtra}\n </FlexLayout>\n ) : (\n title\n )\n }\n centered={true}\n onCancel={onClose}\n destroyOnClose\n width={customSize?.width}\n {...otherProps}\n footer={footerNew}\n styles={{\n ...otherProps.styles,\n body: {\n height: bodyHeightNew || customSize?.height,\n maxHeight: 'calc(100vh - 200px)',\n ...otherProps.styles?.body,\n },\n }}\n className={classNameNew}\n open={props.open}\n >\n {contentFt}\n </Modal>\n </CtxProvider>\n );\n};\n","import { classNames } from '@dimjs/utils';\nimport type { FbaAppModalProps } from '../dialog-modal/index.jsx';\nimport { FbaAppModal } from '../dialog-modal/index.jsx';\nimport './style.less';\n\nexport type FbaAppConfirmProps = FbaAppModalProps;\n\nexport const FbaAppConfirm = (props: FbaAppConfirmProps) => {\n const className = classNames('fba-dialog-confirm', props.className);\n return (\n <FbaAppModal\n okText=\"确定\"\n size={null}\n width={350}\n cancelText=\"取消\"\n maskClosable={true}\n {...props}\n className={className}\n />\n );\n};\n","import { FbaAppConfirm } from '../dialog-confirm/index.jsx';\nimport type { FbaAppModalProps } from '../dialog-modal/index.jsx';\n\n// export type DialogAlertProps = Omit<\n// DialogModalProps,\n// 'onOk' | 'cancelHidden' | 'cancelButtonProps' | 'onCancel' | 'onClick'\n// > & {\n// onClick?: (e: React.MouseEvent<HTMLElement>) => void | Promise<void>;\n// };\n\n// export const dialogAlert = {\n// open: (props: DialogAlertProps) => {\n// return dialogConfirm.open({\n// okText: '确定',\n// cancelHidden: true,\n// maskClosable: false,\n// ...props,\n// onOk: props.onClick,\n// } as DialogModalProps);\n// },\n// };\n\nexport type FbaAppAlertProps = Omit<\n FbaAppModalProps,\n 'onOk' | 'cancelHidden' | 'cancelButtonProps' | 'onCancel' | 'onClick'\n> & {\n onClick?: (e: React.MouseEvent<HTMLElement>) => void | Promise<void>;\n};\n\nexport const FbaAppAlert = (props: FbaAppAlertProps) => {\n return (\n <FbaAppConfirm\n okText=\"确定\"\n cancelHidden={true}\n maskClosable={false}\n {...props}\n onOk={(_form, e) => {\n return props.onClick?.(e);\n }}\n />\n );\n};\n","import type { TPlainObject } from '@flatbiz/utils';\nimport { createCtx } from '@wove/react';\n\nexport const [useFbaAppDialogDrawerCtx, CtxProvider] = createCtx<{\n /** 重新渲染footer */\n rerenderFooter: (data?: TPlainObject) => void;\n}>();\n","import type { ReactElement, ReactNode } from 'react';\nimport { useMemo, useState } from 'react';\nimport type { DrawerProps, FormInstance } from 'antd';\nimport { Drawer, Form, Space } from 'antd';\nimport { isPromise } from '@dimjs/lang';\nimport { classNames } from '@dimjs/utils';\nimport type { TPlainObject } from '@flatbiz/utils';\nimport { hooks } from '@wove/react';\nimport type { ButtonWrapperProps } from '../../button-wrapper/button-wrapper.jsx';\nimport { ButtonWrapper } from '../../button-wrapper/button-wrapper.jsx';\nimport { fbaHooks } from '../../fba-hooks/index.js';\nimport { CtxProvider } from './context.js';\nimport './style.less';\n\nexport type FbaAppDrawerProps = Omit<\n DrawerProps,\n 'onOk' | 'onCancel' | 'getContainer' | 'footer' | 'extra'\n> & {\n okText?: string | ReactElement;\n cancelText?: string | ReactElement;\n onOk?: (\n form: FormInstance,\n e: React.MouseEvent<HTMLElement>\n ) => void | Promise<void>;\n onCancel?: (\n form: FormInstance,\n e: React.MouseEvent<HTMLElement>\n ) => void | Promise<void>;\n /**\n * content只在第一次弹起时,执行一次\n */\n content:\n | string\n | ReactElement\n | ((\n form: FormInstance,\n operate: { onClose: DrawerProps['onClose'] }\n ) => ReactElement);\n okButtonExtraProps?: Omit<\n ButtonWrapperProps,\n 'onClick' | 'children' | 'loading'\n >;\n cancelButtonExtraProps?: Omit<ButtonWrapperProps, 'onClick' | 'children'>;\n okHidden?: boolean;\n cancelHidden?: boolean;\n\n /** 设置操作区域位置 */\n operatePosition?: 'header' | 'footer';\n /** 右上角自定义内容,如果operatePosition=header,此设置无效 */\n extra?: ReactNode | ((form: FormInstance) => ReactElement);\n /**\n * ```\n * 1. 自定义弹框操作区域,通过 operatePosition 配置可以自定义位置\n * 2. extraData 为外部通过 useDialogModal.rerenderFooter 重新渲染footer携带的数据\n * ```\n */\n operateRender?: (\n form: FormInstance,\n extraData?: TPlainObject\n ) => ReactElement;\n};\n\nexport const FbaAppDrawer = (props: FbaAppDrawerProps) => {\n const {\n onOk,\n onCancel,\n content,\n okText,\n cancelText,\n okButtonExtraProps,\n cancelButtonExtraProps,\n operatePosition = 'footer',\n operateRender,\n width,\n okHidden,\n cancelHidden,\n extra,\n ...otherProps\n } = props;\n const [form] = Form.useForm();\n const screenType = fbaHooks.useResponsivePoint() || '';\n const [footerExtraData, setFooterExtraData] = useState<TPlainObject>({});\n\n const onClose = hooks.useCallbackRef((e) => {\n props.onClose?.(e);\n });\n\n const onCancelHandle = hooks.useCallbackRef((e) => {\n if (onCancel) {\n const response = onCancel(form, e);\n if (response && isPromise(response)) {\n return response.then(onClose);\n }\n }\n onClose(e);\n return Promise.resolve();\n });\n\n const onOkHandle = hooks.useCallbackRef((e) => {\n if (onOk) {\n const response = onOk(form, e);\n if (response && isPromise(response)) {\n return response.then(onClose);\n }\n }\n onClose(e);\n return Promise.resolve();\n });\n\n // const operateGroup = (\n // <Space>\n // {cancelHidden || cancelButtonExtraProps?.hidden ? null : (\n // <ButtonWrapper {...cancelButtonExtraProps} onClick={onCancelHandle}>\n // {cancelText || '取消'}\n // </ButtonWrapper>\n // )}\n // {okHidden || okButtonExtraProps?.hidden ? null : (\n // <ButtonWrapper type=\"primary\" {...okButtonExtraProps} onClick={onOkHandle}>\n // {okText || '提交'}\n // </ButtonWrapper>\n // )}\n // </Space>\n // );\n\n // const operateRenderHandle = () => {\n // if (operateRender) {\n // return operateRender(form);\n // }\n // if (!okHidden || !cancelHidden) {\n // return operateGroup;\n // }\n // return null;\n // };\n\n const newOperateRender = fbaHooks.useMemoCustom(() => {\n if (operateRender) {\n return operateRender(form, footerExtraData);\n }\n\n const okHiddenNew = okHidden || okButtonExtraProps?.hidden;\n const cancelHiddenNew = okHidden || okButtonExtraProps?.hidden;\n\n const operateGroup = (\n <Space>\n {cancelHiddenNew ? null : (\n <ButtonWrapper {...cancelButtonExtraProps} onClick={onCancelHandle}>\n {cancelText || '取消'}\n </ButtonWrapper>\n )}\n {okHiddenNew ? null : (\n <ButtonWrapper\n type=\"primary\"\n {...okButtonExtraProps}\n onClick={onOkHandle}\n >\n {okText || '提交'}\n </ButtonWrapper>\n )}\n </Space>\n );\n if (!okHidden || !cancelHidden) {\n return operateGroup;\n }\n return null;\n }, [footerExtraData, props.open]);\n\n const customSize = useMemo(() => {\n if (!screenType) return undefined;\n if (['xs', 'sm'].includes(screenType)) {\n return {\n width: '90%',\n maxWidth: '90%',\n };\n }\n if (width) {\n return { width: width, maxWidth: 'calc(100% - 200px)' };\n }\n return { width: '40%', maxWidth: 'calc(100% - 200px)' };\n }, [screenType, width]);\n\n const extraRender = typeof extra === 'function' ? extra(form) : extra;\n\n const rerenderFooter = (data) => {\n setFooterExtraData(data);\n };\n\n // content 只会在第一次渲染\n const contentFt = useMemo(() => {\n return typeof content === 'function' ? content(form, { onClose }) : content;\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n return (\n <CtxProvider value={{ rerenderFooter }}>\n <Drawer\n maskClosable={true}\n destroyOnClose\n footer={operatePosition === 'footer' ? newOperateRender : null}\n {...otherProps}\n width={customSize?.width}\n styles={{\n ...otherProps.styles,\n wrapper: {\n maxWidth: customSize?.maxWidth,\n ...otherProps.styles?.wrapper,\n },\n }}\n className={classNames('app-dialog-drawer', otherProps.className)}\n extra={operatePosition === 'header' ? newOperateRender : extraRender}\n open={props.open}\n onClose={onClose}\n >\n {contentFt}\n </Drawer>\n </CtxProvider>\n );\n};\n","import type { CSSProperties } from 'react';\nimport { Modal, theme } from 'antd';\nimport { classNames } from '@dimjs/utils';\nimport { BlockLayout } from '../../block-layout/index.js';\nimport './style.less';\n\nexport type FbaAppLoadingProps = {\n className?: string;\n message?: string;\n mask?: boolean;\n};\n\nexport const FbaAppLoading = (\n props: FbaAppLoadingProps & { open?: boolean }\n) => {\n const { className, message, mask } = props;\n const { token } = theme.useToken();\n const colorPrimary = token.colorPrimary;\n\n return (\n <Modal\n maskClosable={false}\n centered={true}\n destroyOnClose\n className={classNames('fba-dialog-loading', className)}\n open={props.open}\n footer={null}\n closable={false}\n style={{ '--fba-loading-color': colorPrimary } as CSSProperties}\n mask={mask}\n >\n <BlockLayout className={classNames('fba-dialog-loading-content')}>\n <div className=\"loader-wrapper\">\n <div className=\"loader-inner\" />\n <div className=\"loader-text\">{message || '处理中'}</div>\n </div>\n </BlockLayout>\n </Modal>\n );\n};\n","import type { ReactNode } from 'react';\nimport { useContext, useState } from 'react';\nimport type { TPlainObject } from '@flatbiz/utils';\nimport { getUuid } from '@flatbiz/utils';\nimport { hooks } from '@wove/react';\nimport type { FbaAppContextApi } from './context.js';\nimport { FbaAppContext } from './context.js';\nimport type { FbaAppAlertProps } from './dialog-alert/index.jsx';\nimport { FbaAppAlert } from './dialog-alert/index.jsx';\nimport type { FbaAppConfirmProps } from './dialog-confirm/index.jsx';\nimport { FbaAppConfirm } from './dialog-confirm/index.jsx';\nimport { useFbaAppDialogDrawerCtx } from './dialog-drawer/context.js';\nimport type { FbaAppDrawerProps } from './dialog-drawer/index.jsx';\nimport { FbaAppDrawer } from './dialog-drawer/index.jsx';\nimport type { FbaAppLoadingProps } from './dialog-loading/index.jsx';\nimport { FbaAppLoading } from './dialog-loading/index.jsx';\nimport { useFbaAppDialogModalCtx } from './dialog-modal/context.js';\nimport type { FbaAppModalProps } from './dialog-modal/index.jsx';\nimport { FbaAppModal } from './dialog-modal/index.jsx';\n\n/**\n * 不支持多个弹框,第二个弹框可使用useDialogDrawer2\n */\nexport const useDialogDrawer = () => {\n const ctx = useContext(FbaAppContext);\n\n const onClose = () => {\n ctx.dialogDrawerClose?.();\n };\n\n return {\n appDialogDrawer: {\n open: (data: FbaAppDrawerProps) => {\n ctx.dialogDrawerOpen?.({ ...data, open: true });\n return { onClose };\n },\n close: onClose,\n /**\n * ```\n * 1. rerenderFooter 携带指定数据重新渲染 footer,可用于切换footer中的按钮状态\n * ```\n */\n useAppDialogDrawer: () => {\n const ctx = useFbaAppDialogDrawerCtx();\n return {\n /** 重新渲染 footer, data为携带的数据,是footer的第二个参数 */\n rerenderFooter: (data?: TPlainObject) => {\n ctx.rerenderFooter(data);\n },\n };\n },\n },\n };\n};\n\n/**\n * 不支持多个弹框,第二个弹框可使用useDialogDrawer2\n */\nexport const useDialogDrawer2 = () => {\n const ctx = useContext(FbaAppContext);\n\n const onClose = () => {\n ctx.dialogDrawerClose2?.();\n };\n\n return {\n appDialogDrawer2: {\n open: (data: FbaAppDrawerProps) => {\n ctx.dialogDrawerOpen2?.({ ...data, open: true });\n return { onClose };\n },\n close: onClose,\n /**\n * ```\n * 1. rerenderFooter 携带指定数据重新渲染 footer,可用于切换footer中的按钮状态\n * ```\n */\n useAppDialogDrawer: () => {\n const ctx = useFbaAppDialogDrawerCtx();\n return {\n /** 重新渲染 footer, data为携带的数据,是footer的第二个参数 */\n rerenderFooter: (data?: TPlainObject) => {\n ctx.rerenderFooter(data);\n },\n };\n },\n },\n };\n};\n\n/**\n * 不支持多个弹框,第二个弹框可使用useDialogModal2\n * ```\n * 1. 配置size属性可使用预设的弹窗尺寸,如果不使用内置尺寸可设置 size = null\n * ```\n */\nexport const useDialogModal = () => {\n const ctx = useContext(FbaAppContext);\n\n const onClose = () => {\n ctx.dialogModalClose?.();\n };\n\n return {\n appDialogModal: {\n open: (data: FbaAppModalProps) => {\n ctx.dialogModalOpen?.({ ...data, open: true });\n return { onClose };\n },\n close: onClose,\n /**\n * rerenderFooter 携带指定数据重新渲染 footer,可用于切换footer中的按钮状态\n */\n useAppDialogModal: () => {\n const ctx = useFbaAppDialogModalCtx();\n return {\n /** 重新渲染 footer, data为携带的数据,是footer的第二个参数 */\n rerenderFooter: (data?: TPlainObject) => {\n ctx.rerenderFooter(data);\n },\n };\n },\n },\n };\n};\n\n/**\n * 不支持多个弹框\n * ```\n * 1. 配置size属性可使用预设的弹窗尺寸,如果不使用内置尺寸可设置 size = null\n * ```\n */\nexport const useDialogModal2 = () => {\n const ctx = useContext(FbaAppContext);\n\n const onClose = () => {\n ctx.dialogModalClose2?.();\n };\n\n return {\n appDialogModal2: {\n open: (data: FbaAppModalProps) => {\n ctx.dialogModalOpen2?.({ ...data, open: true });\n return { onClose };\n },\n close: onClose,\n /**\n * rerenderFooter 携带指定数据重新渲染 footer,可用于切换footer中的按钮状态\n */\n useAppDialogModal: () => {\n const ctx = useFbaAppDialogModalCtx();\n return {\n /** 重新渲染 footer, data为携带的数据,是footer的第二个参数 */\n rerenderFooter: (data?: TPlainObject) => {\n ctx.rerenderFooter(data);\n },\n };\n },\n },\n };\n};\n\n/**\n * 不支持多个弹框\n * @returns\n */\nexport const useDialogAlert = () => {\n const ctx = useContext(FbaAppContext);\n\n const onClose = () => {\n ctx.dialogAlertClose?.();\n };\n\n return {\n appDialogAlert: {\n open: (data: FbaAppAlertProps) => {\n ctx.dialogAlertOpen?.({ ...data, open: true });\n return { onClose };\n },\n close: onClose,\n },\n };\n};\n/**\n * 不支持多个弹框\n * @returns\n */\nexport const useDialogConfirm = () => {\n const ctx = useContext(FbaAppContext);\n\n const onClose = () => {\n ctx.dialogConfirmClose?.();\n };\n\n return {\n appDialogConfirm: {\n open: (data: FbaAppConfirmProps) => {\n ctx.dialogConfirmOpen?.({ ...data, open: true });\n return { onClose };\n },\n close: onClose,\n },\n };\n};\n/**\n * 不支持多个弹框\n * @returns\n */\nexport const useDialogLoading = () => {\n const ctx = useContext(FbaAppContext);\n\n const onClose = () => {\n ctx.dialogLoadingClose?.();\n };\n\n return {\n appDialogLoading: {\n open: (data?: FbaAppLoadingProps) => {\n ctx.dialogLoadingOpen?.({ ...data, open: true });\n return { onClose };\n },\n close: onClose,\n },\n };\n};\n\nexport const FbaApp = (props: { children: ReactNode }) => {\n const [drawerProps, setDrawerProps] = useState<FbaAppDrawerProps>(\n {} as FbaAppDrawerProps\n );\n const [drawerKey, setDrawerKey] = useState(getUuid());\n\n const [drawerProps2, setDrawerProps2] = useState<FbaAppDrawerProps>(\n {} as FbaAppDrawerProps\n );\n const [drawerKey2, setDrawerKey2] = useState(getUuid());\n\n const [modalProps, setModalProps] = useState<FbaAppModalProps>(\n {} as FbaAppModalProps\n );\n const [modalKey, setModalKey] = useState(getUuid());\n\n const [modalProps2, setModalProps2] = useState<FbaAppModalProps>(\n {} as FbaAppModalProps\n );\n const [modalKey2, setModalKey2] = useState(getUuid());\n\n const [alertProps, setAlertProps] = useState<FbaAppAlertProps>(\n {} as FbaAppAlertProps\n );\n const [confirmProps, setConfirmProps] = useState<FbaAppConfirmProps>(\n {} as FbaAppConfirmProps\n );\n const [loadingProps, setLoadingProps] = useState<FbaAppLoadingProps>();\n\n const [alertKey, setAlertKey] = useState(getUuid());\n const [confirmKey, setConfirmKey] = useState(getUuid());\n const [loadingKey, setLoadingKey] = useState(getUuid());\n\n const dialogDrawerOpen: FbaAppContextApi['dialogDrawerOpen'] =\n hooks.useCallbackRef((data) => {\n setDrawerProps(data);\n });\n const dialogDrawerClose = hooks.useCallbackRef((e) => {\n setDrawerProps({ ...drawerProps, open: false } as FbaAppDrawerProps);\n drawerProps.onClose?.(e);\n setTimeout(() => {\n setDrawerKey(getUuid());\n }, 200);\n });\n\n const dialogDrawerOpen2: FbaAppContextApi['dialogDrawerOpen2'] =\n hooks.useCallbackRef((data) => {\n setDrawerProps2(data);\n });\n\n const dialogDrawerClose2 = hooks.useCallbackRef((e) => {\n setDrawerProps2({ ...drawerProps2, open: false } as FbaAppDrawerProps);\n drawerProps2.onClose?.(e);\n setTimeout(() => {\n setDrawerKey2(getUuid());\n }, 200);\n });\n\n const dialogModalOpen: FbaAppContextApi['dialogModalOpen'] =\n hooks.useCallbackRef((data) => {\n setModalProps(data);\n });\n\n const dialogModalClose = hooks.useCallbackRef(() => {\n setModalProps({ ...modalProps, open: false } as FbaAppModalProps);\n modalProps.onClose?.();\n setTimeout(() => {\n setModalKey(getUuid());\n }, 200);\n });\n\n const dialogModalOpen2: FbaAppContextApi['dialogModalOpen2'] =\n hooks.useCallbackRef((data) => {\n setModalProps2(data);\n });\n\n const dialogModalClose2 = hooks.useCallbackRef(() => {\n setModalProps2({ ...modalProps2, open: false } as FbaAppModalProps);\n modalProps2.onClose?.();\n setTimeout(() => {\n setModalKey2(getUuid());\n }, 200);\n });\n\n const dialogAlertOpen: FbaAppContextApi['dialogAlertOpen'] =\n hooks.useCallbackRef((data) => {\n setAlertProps(data);\n });\n\n const dialogAlertClose = hooks.useCallbackRef(() => {\n setAlertProps({ ...alertProps, open: false } as FbaAppAlertProps);\n alertProps.onClose?.();\n setTimeout(() => {\n setAlertKey(getUuid());\n }, 200);\n });\n\n const dialogConfirmOpen: FbaAppContextApi['dialogConfirmOpen'] =\n hooks.useCallbackRef((data) => {\n setConfirmProps(data);\n });\n\n const dialogConfirmClose = hooks.useCallbackRef(() => {\n setConfirmProps({ ...confirmProps, open: false } as FbaAppConfirmProps);\n confirmProps.onClose?.();\n setTimeout(() => {\n setConfirmKey(getUuid());\n }, 200);\n });\n\n const dialogLoadingOpen: FbaAppContextApi['dialogLoadingOpen'] =\n hooks.useCallbackRef((data) => {\n setLoadingProps(data);\n });\n\n const dialogLoadingClose = hooks.useCallbackRef(() => {\n setLoadingProps({ ...loadingProps, open: false } as FbaAppLoadingProps);\n setTimeout(() => {\n setLoadingKey(getUuid());\n }, 200);\n });\n\n return (\n <FbaAppContext.Provider\n value={{\n dialogDrawerOpen,\n dialogDrawerClose,\n dialogDrawerOpen2,\n dialogDrawerClose2,\n dialogModalOpen,\n dialogModalClose,\n dialogModalOpen2,\n dialogModalClose2,\n dialogAlertOpen,\n dialogAlertClose,\n dialogConfirmOpen,\n dialogConfirmClose,\n dialogLoadingOpen,\n dialogLoadingClose,\n }}\n >\n <FbaAppDrawer\n {...drawerProps}\n onClose={dialogDrawerClose}\n key={drawerKey}\n ></FbaAppDrawer>\n <FbaAppDrawer\n {...drawerProps2}\n onClose={dialogDrawerClose2}\n key={drawerKey2}\n ></FbaAppDrawer>\n <FbaAppModal\n {...modalProps}\n onClose={dialogModalClose}\n key={modalKey}\n ></FbaAppModal>\n <FbaAppModal\n {...modalProps2}\n onClose={dialogModalClose2}\n key={modalKey2}\n ></FbaAppModal>\n <FbaAppAlert\n {...alertProps}\n onClose={dialogAlertClose}\n key={alertKey}\n ></FbaAppAlert>\n <FbaAppConfirm\n {...confirmProps}\n onClose={dialogConfirmClose}\n key={confirmKey}\n ></FbaAppConfirm>\n <FbaAppLoading {...loadingProps} key={loadingKey}></FbaAppLoading>\n {props.children}\n </FbaAppContext.Provider>\n );\n};\n"],"names":["FbaAppContext","createContext","_createCtx","_createCtx3","_createCtx2","_slicedToArray","useFbaAppDialogModalCtx","CtxProvider","FbaAppModal","props","_otherProps$styles","_otherProps$styles2","titleExtra","title","onOk","onCancel","okButtonProps","cancelButtonProps","content","className","okHidden","cancelHidden","footer","cancelText","okText","size","bodyHeight","otherProps","_objectWithoutProperties","_excluded","_Form$useForm","Form","useForm","_Form$useForm2","form","htmlSize","useSize","document","querySelector","localMessage","getFbaLocaleMessage","screenType","fbaHooks","useResponsivePoint","_useState","useState","_useState2","footerExtraData","setFooterExtraData","onClose","_hooks","useCallbackRef","_props$onClose","call","onCancelHandle","e","response","_isPromise","then","Promise","resolve","onOkHandle","footerNew","useMemoCustom","_localMessage$FbaDial","_jsx","ButtonWrapper","_objectSpread","onClick","hidden","children","FbaDialogModal","type","filter","Boolean","open","customSize","useMemo","height","undefined","isXsSm","includes","width","classNameNew","_classNames","rerenderFooter","data","bodyHeightNew","styles","body","contentFt","value","Modal","maskClosable","_jsxs","FlexLayout","direction","fullIndex","centered","destroyOnClose","maxHeight","FbaAppConfirm","FbaAppAlert","_form","_props$onClick","useFbaAppDialogDrawerCtx","FbaAppDrawer","okButtonExtraProps","cancelButtonExtraProps","_props$operatePositio","operatePosition","operateRender","extra","newOperateRender","okHiddenNew","cancelHiddenNew","operateGroup","Space","maxWidth","extraRender","Drawer","wrapper","FbaAppLoading","message","mask","_theme$useToken","theme","useToken","token","colorPrimary","closable","style","BlockLayout","useDialogDrawer","ctx","useContext","_ctx$dialogDrawerClos","dialogDrawerClose","appDialogDrawer","_ctx$dialogDrawerOpen","dialogDrawerOpen","close","useAppDialogDrawer","useDialogDrawer2","_ctx$dialogDrawerClos2","dialogDrawerClose2","appDialogDrawer2","_ctx$dialogDrawerOpen2","dialogDrawerOpen2","useDialogModal","_ctx$dialogModalClose","dialogModalClose","appDialogModal","_ctx$dialogModalOpen","dialogModalOpen","useAppDialogModal","useDialogModal2","_ctx$dialogModalClose2","dialogModalClose2","appDialogModal2","_ctx$dialogModalOpen2","dialogModalOpen2","useDialogAlert","_ctx$dialogAlertClose","dialogAlertClose","appDialogAlert","_ctx$dialogAlertOpen","dialogAlertOpen","useDialogConfirm","_ctx$dialogConfirmClo","dialogConfirmClose","appDialogConfirm","_ctx$dialogConfirmOpe","dialogConfirmOpen","useDialogLoading","_ctx$dialogLoadingClo","dialogLoadingClose","appDialogLoading","_ctx$dialogLoadingOpe","dialogLoadingOpen","FbaApp","drawerProps","setDrawerProps","_useState3","getUuid","_useState4","drawerKey","setDrawerKey","_useState5","_useState6","drawerProps2","setDrawerProps2","_useState7","_useState8","drawerKey2","setDrawerKey2","_useState9","_useState0","modalProps","setModalProps","_useState1","_useState10","modalKey","setModalKey","_useState11","_useState12","modalProps2","setModalProps2","_useState13","_useState14","modalKey2","setModalKey2","_useState15","_useState16","alertProps","setAlertProps","_useState17","_useState18","confirmProps","setConfirmProps","_useState19","_useState20","loadingProps","setLoadingProps","_useState21","_useState22","alertKey","setAlertKey","_useState23","_useState24","confirmKey","setConfirmKey","_useState25","_useState26","loadingKey","setLoadingKey","_drawerProps$onClose","setTimeout","_drawerProps2$onClose","_modalProps$onClose","_modalProps2$onClose","_alertProps$onClose","_confirmProps$onClose","Provider","_createElement","key"],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"selector-CQ_yMKjh.js","sources":["@flatbiz/antd/src/tree-selector-wrapper/model.ts","@flatbiz/antd/src/tree-selector-wrapper/utils.ts","@flatbiz/antd/src/tree-selector-wrapper/selector.tsx"],"sourcesContent":["import type { TreeSelectProps } from 'antd';\nimport type { API, ModelType } from '@dimjs/model';\nimport { Model } from '@dimjs/model-react';\nimport type { TAny, TPlainObject, TSetDefaultDefined } from '@flatbiz/utils';\nimport type { TRequestStatus } from '../request-status/index.js';\n\nexport type ModelState = {\n treeSelectorList: TSetDefaultDefined<TreeSelectProps['treeData'], []>;\n treeSelectorTiledMap: TPlainObject;\n queryIsEmpty: boolean;\n requestStatus?: TRequestStatus;\n};\n\ntype ModelActionParams = {\n setSelectBoxList: {\n treeSelectorList: ModelState['treeSelectorList'];\n treeSelectorTiledMap: TPlainObject;\n };\n resetSelectBoxList: void;\n changeRequestStatus: TRequestStatus;\n};\n\nconst defaultState: ModelState = {\n treeSelectorList: [],\n treeSelectorTiledMap: {},\n queryIsEmpty: false,\n};\n\nconst TreeSelectorWrapperModel: ModelType<ModelState, ModelActionParams> = {\n actions: {\n setSelectBoxList: (params) => {\n return (state) => {\n state.treeSelectorList = params.treeSelectorList || [];\n state.treeSelectorTiledMap = params.treeSelectorTiledMap || {};\n state.requestStatus = 'request-success';\n };\n },\n resetSelectBoxList: () => {\n return (state) => {\n state.treeSelectorList = [];\n state.treeSelectorTiledMap = {};\n };\n },\n changeRequestStatus: (params) => {\n return (state) => {\n state.requestStatus = params;\n };\n },\n },\n state: defaultState,\n};\n\nconst treeSelectorWrapperModels: Record<\n string,\n API<ModelType<ModelState, ModelActionParams, TAny>>\n> = {};\n\n/**\n * ```\n * 使用方式\n * const [state, actions] = useTreeSelectorWrapperModel('key值').useStore();\n * ```\n */\nexport const treeSelectorWrapperModel = (key: string) => {\n if (!treeSelectorWrapperModels[key]) {\n treeSelectorWrapperModels[key] = Model(TreeSelectorWrapperModel);\n }\n return treeSelectorWrapperModels[key];\n};\n","export const getExpandedKeysByValue = (value: string | number, treeSelectorTiledMap) => {\n const tempList: Array<string | number> = [];\n let parentNode = treeSelectorTiledMap[value];\n while (parentNode) {\n const pId = parentNode.pId;\n parentNode = treeSelectorTiledMap[pId];\n if (parentNode) {\n tempList.push(pId);\n }\n }\n return tempList;\n};\n\nexport const getExpandedKeysByValues = (values: Array<string | number>, treeSelectorTiledMap) => {\n if (values.length === 0) return [];\n const expandedKeys: Array<string | number> = [];\n values.forEach((value) => {\n const targetList = getExpandedKeysByValue(value, treeSelectorTiledMap);\n expandedKeys.push(...targetList);\n });\n return Array.from(new Set(expandedKeys));\n};\n","import {\n type DependencyList,\n type Key,\n useMemo,\n useRef,\n useState,\n} from 'react';\nimport { usePrevious } from 'ahooks';\nimport { Button, TreeSelect, type TreeSelectProps } from 'antd';\nimport { dequal } from 'dequal';\nimport { CaretDownFilled, RedoOutlined } from '@ant-design/icons';\nimport { isArray, isObject } from '@dimjs/lang';\nimport { classNames, extend, get } from '@dimjs/utils';\nimport {\n isNotEmptyArray,\n isUndefinedOrNull,\n type TAny,\n toArray,\n type TPlainObject,\n treeToArray,\n treeToTiledMap,\n} from '@flatbiz/utils';\nimport { hooks } from '@wove/react';\nimport { fbaHooks } from '../fba-hooks/index.js';\nimport {\n RequestStatus,\n type TRequestStatusProps,\n} from '../request-status/index.js';\nimport { treeSelectorWrapperModel } from './model.js';\nimport { getExpandedKeysByValues } from './utils.js';\nimport './style.less';\n\ntype TreeSelectorWrapperValue =\n | string\n | number\n | Array<string | number>\n | TPlainObject<string | number>\n | Array<TPlainObject<string | number>>;\n\ntype TreeSelectorServiceConfig = {\n params?: TPlainObject;\n requiredParamsKeys?: string[];\n onRequest?: (params?: TAny) => TAny;\n /**\n * 响应数据适配器\n */\n onRequestResultAdapter?: (respData: TAny) => TPlainObject[];\n};\n\nexport type TreeSelectorWrapperProps = Omit<\n TreeSelectProps,\n | 'treeExpandedKeys'\n | 'treeData'\n | 'loading'\n | 'onTreeExpand'\n | 'onChange'\n | 'value'\n | 'fieldNames'\n | 'defaultValue'\n | 'treeDataSimpleMode'\n | 'onSearch'\n> & {\n modelKey: string;\n fieldNames?: {\n /**\n * 1. list 为 onRequest 返回数据中列表key值,可多级取值,例如: 'a.b.c'\n * 2. 配置 serviceConfig.onRequestResultAdapter 后此配置失效\n */\n list?: string;\n label?: string;\n value?: string;\n children?: string;\n disabled?: string;\n };\n /**\n * useEffect依赖项数组,用于重新发起获取接口数据\n */\n effectDependencyList?: DependencyList;\n /**\n * 请求服务需求的数据,当设置`treeSelectorList`后无效果\n */\n serviceConfig?: TreeSelectorServiceConfig;\n /**\n * 当设置treeSelectorList后,serviceConfig 将失效\n */\n treeSelectorList?: TreeSelectProps['treeData'];\n /**\n * treeSelectorList发生变更时触发\n */\n onTreeSelectorListChange?: (\n treeSelectorList?: TreeSelectProps['treeData']\n ) => void;\n /**\n * 通过服务获取数据异常回调,当设置`treeSelectorList`后无效果\n */\n onTreeSelectorRequestError?: (error: Error) => void;\n /**\n * 添加全部选项\n * ```\n * 1. showAllOption = true,添加默认全部选项(value值为空字符串)\n * 2. 可自定义全部选项,例如:{ label: '全部', value: 'all' }\n * 3. 自定义字段会通过fieldNames转换后使用\n * 4. 多选操作时,最好不要设置全部选项\n * ```\n */\n showAllOption?: true | TPlainObject<string | number>;\n /**\n * 1. 当 treeCheckable = true && treeCheckStrictly = true,如果选择的数据中含有父节点,selectedValue、selectedList返回数据包含父节点\n * 2. 当 treeCheckable = true && treeCheckStrictly = false,selectedValue、selectedList返回的数据不包含父节点\n * 3. 当 treeCheckable = false,节点选择没有级联关系,selectedValue、selectedList返回的数据就是实际选择\n * 4. selectAllDataList 返回的数据都包含父节点\n * 5. 使用 onTreeItemAdapter 拼接label数据后,选中回填数据也是拼接后的\n * 6. triggerInfo 当前操作节点数据\n */\n onChange?: (\n selectedValue?: TreeSelectorWrapperValue,\n selectedData?: TPlainObject[] | TPlainObject,\n triggerInfo?: TPlainObject\n ) => void;\n /**\n * tree item 数据适配器,返回的数据会通过fieldNames配置取数据\n * ```\n * 1. 可用于设置disabled状态\n * onTreeItemDataAdapter: (dataItem) => {\n * if(dataItem.xx === xx){\n * dataItem['disabled] = true;\n * }\n * return dataItem;\n * }\n * 2. 可设置label数据显示\n * ```\n */\n onTreeItemDataAdapter?: (dataItem: TPlainObject) => TPlainObject;\n // icon 无法实现、treeIcon不起作用4.20.0\n // showIcon?: boolean;\n // icon?: (data: TPlainObject) => ReactElement;\n /** 自定义异常提示文案 */\n requestMessageConfig?: TRequestStatusProps['messageConfig'];\n /**\n * value格式\n *```\n * 1. string 、number\n * 2. Array<string | number>\n * 3. lableInValue = true,根据labelInValueFieldNames配置格式\n * 4. lableInValue = true,Array<labelInValueFieldNames配置>\n * ```\n */\n value?: TreeSelectorWrapperValue;\n\n /**\n * treeCheckStrictly \tcheckable 状态下节点选择完全受控(父子节点选中状态不再关联),\n * 会使得 labelInValue 强制为 true\n */\n labelInValue?: boolean;\n /**\n * @deprecated 已弃用\n * ```\n * lableInValue = true,onChange输出数据字段名称,默认:{ label: string; value: string|number }\n * ```\n */\n labelInValueFieldNames?: { label: string; value: string };\n /**\n * treeCheckStrictly = true模式下有效,点击父节点是否选中所有子节点,默认值:true\n */\n selectedParentCheckedAllChildrenList?: boolean;\n /** 有唯一跟节点时,初始化是否展开,默认值:false */\n initRootExpand?: boolean;\n\n /**\n * 在第一次渲染value时,主动执行一次onChange\n * ```\n * 1. 设置labelInValue = true 时有效\n * 2. 不考虑子父节点的关系\n * ```\n */\n executeOnChangeInRenderFirstValue?: boolean;\n};\n\n/**\n * 树选择器包装组件,由于过度封装,部分antd TreeSelect原始功能不支持,不满足情况的请使用antd TreeSelect实现\n * ```\n * 1. 当设置treeSelectorList属性后,serviceConfig、onTreeSelectorListChange将失效\n * 2. 父节点默认不返回,需要返回请设置showCheckedStrategy\n * ```\n */\nexport const TreeSelectorWrapper = (props: TreeSelectorWrapperProps) => {\n const {\n serviceConfig,\n effectDependencyList,\n onTreeSelectorListChange,\n onTreeSelectorRequestError,\n treeSelectorList,\n requestMessageConfig,\n modelKey,\n value,\n labelInValue: _labelInValue,\n labelInValueFieldNames,\n onTreeItemDataAdapter,\n selectedParentCheckedAllChildrenList = true,\n fieldNames,\n onChange,\n treeDefaultExpandAll,\n showAllOption,\n initRootExpand,\n treeDefaultExpandedKeys,\n executeOnChangeInRenderFirstValue,\n ...otherProps\n } = props;\n /**\n * 不能使用key、defaultValue模式\n * 1. 勾选的和回填选中不相同情况,勾选后会渲染defaultValue模式后,弹框被关闭,操作体验存在问题\n */\n const hasTreeSelectorList = Object.prototype.hasOwnProperty.call(\n props,\n 'treeSelectorList'\n );\n const newServiceConfig = serviceConfig || {};\n const newEffectDependencyList = effectDependencyList || [];\n const [loading, setLoading] = fbaHooks.useSafeState(false);\n const [treeExpandedKeys, setTreeExpandedKeys] = useState<Key[]>();\n const [state, actions] = treeSelectorWrapperModel(modelKey).useStore();\n const requestPreKey = `request-progress-${modelKey}`;\n const isMultiple = otherProps.treeCheckable || otherProps.multiple;\n const responseFirstRef = useRef(true);\n /**\n * treeCheckStrictly \tcheckable 状态下节点选择完全受控(父子节点选中状态不再关联),\n * 会使得 labelInValue 强制为 true\n */\n const labelInValue = useMemo(() => {\n if (otherProps.treeCheckStrictly) return true;\n return _labelInValue;\n }, [_labelInValue, otherProps.treeCheckStrictly]);\n\n const fieldNamesMerge = useMemo(() => {\n return {\n label: 'label',\n value: 'value',\n children: 'children',\n disabled: 'disabled',\n ...fieldNames,\n };\n }, [fieldNames]);\n\n const labelInValueFieldNamesMerge = useMemo(() => {\n return { label: 'label', value: 'value', ...labelInValueFieldNames };\n }, [labelInValueFieldNames]);\n\n const allOptionConfig = useMemo(() => {\n if (showAllOption) {\n const isTrue = showAllOption === true;\n return {\n label: isTrue ? '全部' : showAllOption.label,\n value: isTrue ? '' : showAllOption.value,\n };\n }\n return null;\n }, [showAllOption]);\n\n const [searchValue, setSearchValue] = useState<string>();\n\n const propsPureValue = fbaHooks.useMemoCustom(() => {\n return toArray<TAny>(value).map((item) => {\n if (isObject(item)) {\n return (\n labelInValue\n ? item[labelInValueFieldNamesMerge.value]\n : item[fieldNamesMerge.value]\n ) as string | number;\n }\n return item as string | number;\n });\n }, [\n fieldNamesMerge.value,\n labelInValue,\n labelInValueFieldNamesMerge.value,\n props.value,\n ]);\n\n const prevPropsPureValue = usePrevious(propsPureValue);\n\n fbaHooks.useEffectCustom(() => {\n if (state.treeSelectorList.length > 0) {\n if (\n responseFirstRef.current &&\n executeOnChangeInRenderFirstValue &&\n labelInValue\n ) {\n const dataList: TPlainObject[] = [];\n const originalList: TPlainObject[] = [];\n propsPureValue.forEach((item) => {\n const target = state.treeSelectorTiledMap[item];\n if (target) {\n originalList.push(target);\n dataList.push({\n [labelInValueFieldNamesMerge.label]:\n target[fieldNamesMerge.label],\n [labelInValueFieldNamesMerge.value]:\n target[fieldNamesMerge.value],\n });\n }\n });\n if (isMultiple) {\n props.onChange?.(dataList ? dataList : undefined, originalList);\n } else {\n props.onChange?.(dataList ? dataList[0] : undefined, originalList[0]);\n }\n }\n let treeExpandedKeys: Array<string | number> = [];\n if (responseFirstRef.current) {\n responseFirstRef.current = false;\n if (treeDefaultExpandedKeys) {\n treeExpandedKeys = treeDefaultExpandedKeys as Array<string | number>;\n } else if (treeDefaultExpandAll) {\n const allValues = Object.keys(state.treeSelectorTiledMap).map(\n (item) =>\n state.treeSelectorTiledMap[item]?.[fieldNamesMerge.value] as\n | string\n | number\n );\n treeExpandedKeys = allValues;\n } else if (initRootExpand && state.treeSelectorList.length === 1) {\n treeExpandedKeys = [state.treeSelectorList[0][fieldNamesMerge.value]];\n }\n setTreeExpandedKeys(treeExpandedKeys);\n }\n // else {\n // responseFirstRef.current = false;\n // if (!searchValue) {\n // const expandedKeys = getExpandedKeysByValues(\n // propsPureValue,\n // state.treeSelectorTiledMap\n // );\n // setTreeExpandedKeys(expandedKeys);\n // }\n // }\n }\n }, [propsPureValue, state.treeSelectorList]);\n\n fbaHooks.useEffectCustom(() => {\n if (!responseFirstRef.current && propsPureValue.length > 0) {\n if (\n state.treeSelectorList.length > 0 &&\n JSON.stringify(propsPureValue) !== JSON.stringify(prevPropsPureValue)\n ) {\n if (!searchValue) {\n const expandedKeys = getExpandedKeysByValues(\n propsPureValue,\n state.treeSelectorTiledMap\n );\n setTreeExpandedKeys(expandedKeys);\n }\n }\n }\n }, [propsPureValue, state.treeSelectorList]);\n\n const valueIsEmpty = (value: string | number) => {\n return value === '' || isUndefinedOrNull(value);\n };\n\n const serviceResponseHandle = (respData) => {\n let result = respData;\n if (newServiceConfig.onRequestResultAdapter) {\n result = newServiceConfig.onRequestResultAdapter(\n respData as unknown as TPlainObject\n );\n } else if (fieldNamesMerge.list) {\n result = get(respData, fieldNamesMerge.list);\n }\n if (result && !isArray(result)) {\n console.warn('待渲染数据为非数组结构', result);\n return [];\n }\n return result || [];\n };\n\n const startDataSourceRequest = hooks.useCallbackRef(async () => {\n if (!newServiceConfig.onRequest) {\n throw new Error('onRequest 调用接口服务不能为空');\n }\n const requiredParamsKeys = newServiceConfig.requiredParamsKeys || [];\n const params = extend({}, newServiceConfig.params);\n const isEmpty = requiredParamsKeys.find((key) => {\n return valueIsEmpty(params[key] as string | number);\n });\n if (isEmpty) {\n void actions.changeRequestStatus('no-dependencies-params');\n console.warn(\n `TreeSelectorWrapper组件:参数:${requiredParamsKeys.join('、')}不能为空`\n );\n return;\n }\n try {\n setLoading(true);\n window[requestPreKey] = true;\n void actions.changeRequestStatus('request-progress');\n const _respData = await newServiceConfig.onRequest?.(params);\n const respData = serviceResponseHandle(\n _respData\n ) as TreeSelectProps['treeData'];\n setLoading(false);\n window[requestPreKey] = false;\n onChangeSelectorList(respData || []);\n } catch (error: TAny) {\n setLoading(false);\n window[requestPreKey] = false;\n void actions.changeRequestStatus('request-error');\n onTreeSelectorRequestError?.(error);\n }\n });\n\n hooks.useCustomCompareEffect(\n () => {\n if (hasTreeSelectorList) return;\n // 当无依赖项时,如果存在缓存数据,就不在调用接口\n if (newEffectDependencyList.length) {\n // 内部主动清楚数据,被依赖的数据发生变更时,依赖组件数据清空\n onChangeSelectorList([]);\n void startDataSourceRequest();\n return;\n }\n const allState = treeSelectorWrapperModel(modelKey).getState();\n if (allState.requestStatus === 'request-success') {\n return;\n }\n // 判断相同的modelKey是否已经在请求数据中,避免重复请求\n if (!window[requestPreKey]) {\n void startDataSourceRequest();\n return;\n }\n },\n newEffectDependencyList,\n dequal\n );\n\n const onChangeSelectorList = hooks.useCallbackRef((dataList: TAny[]) => {\n if (dataList?.length === 0 && state.treeSelectorList.length === 0) {\n void actions.setSelectBoxList({\n treeSelectorList: [],\n treeSelectorTiledMap: {},\n });\n onTreeSelectorListChange?.([]);\n return;\n }\n // 全部选项\n const tempItem = allOptionConfig\n ? {\n [fieldNamesMerge.label]: allOptionConfig.label,\n [fieldNamesMerge.value]: allOptionConfig.value,\n }\n : undefined;\n const newdataList = showAllOption ? [tempItem, ...dataList] : dataList;\n void actions.setSelectBoxList({\n treeSelectorList: newdataList,\n treeSelectorTiledMap: treeToTiledMap(\n newdataList,\n {\n value: fieldNamesMerge.value,\n children: fieldNamesMerge.children,\n },\n 'pId'\n ),\n });\n onTreeSelectorListChange?.(dataList);\n });\n\n fbaHooks.useEffectCustom(() => {\n if (hasTreeSelectorList) {\n onChangeSelectorList(treeSelectorList || []);\n }\n }, [treeSelectorList]);\n\n const onTreeExpand = hooks.useCallbackRef((expandedKeys) => {\n setTreeExpandedKeys(expandedKeys as string[]);\n });\n\n const onAgainRequest = hooks.useCallbackRef(() => {\n void startDataSourceRequest();\n });\n\n /**\n * 根据treeCheckable、treeCheckStrictly、showCheckedStrategy等设置情况,判断返回数据是否包含父节点\n * 1. 当 treeCheckable = true,changeValue 数据格式为 { label,value }[]\n */\n const onInnerChange = hooks.useCallbackRef(\n (changeValue: TAny, _data, triggerInfo: TPlainObject) => {\n let resultValueList = toArray<TAny>(changeValue);\n if (otherProps.treeCheckStrictly) {\n if (selectedParentCheckedAllChildrenList && triggerInfo.checked) {\n const target = state.treeSelectorTiledMap[triggerInfo?.triggerValue];\n if (isNotEmptyArray(target[fieldNamesMerge.children])) {\n resultValueList = treeToArray(\n [target],\n fieldNamesMerge.children\n ).map((item) => {\n return item[fieldNamesMerge.value];\n });\n } else {\n resultValueList = changeValue?.map((item) => item.value);\n }\n } else {\n resultValueList = changeValue?.map((item) => item.value);\n }\n }\n if (labelInValue) {\n const resultItemList = resultValueList.map((item) => {\n const target = state.treeSelectorTiledMap[item];\n return {\n [labelInValueFieldNamesMerge.label]: target[fieldNamesMerge.label],\n [labelInValueFieldNamesMerge.value]: target[fieldNamesMerge.value],\n };\n });\n if (isMultiple) {\n onChange?.(resultItemList, resultItemList, triggerInfo);\n } else {\n onChange?.(resultItemList[0], resultItemList[0], triggerInfo);\n }\n } else {\n const resultItemList = resultValueList.map((item) => {\n return state.treeSelectorTiledMap[item];\n });\n if (isMultiple) {\n onChange?.(resultValueList, resultItemList, triggerInfo);\n } else {\n onChange?.(resultValueList[0], resultItemList[0], triggerInfo);\n }\n }\n }\n );\n\n const mapTree = hooks.useCallbackRef((data) => {\n if (!data) return null;\n return data.map((item) => {\n const itemAdapterData = onTreeItemDataAdapter?.({ ...item }) || item;\n const children = itemAdapterData[fieldNamesMerge.children];\n const value = itemAdapterData[fieldNamesMerge.value];\n const label = itemAdapterData[fieldNamesMerge.label];\n const disabled = itemAdapterData[fieldNamesMerge.disabled]\n ? itemAdapterData[fieldNamesMerge.disabled]\n : itemAdapterData.disabled;\n return (\n <TreeSelect.TreeNode\n {...itemAdapterData}\n disabled={disabled}\n value={value}\n title={label}\n key={`${value}`}\n >\n {children && children.length > 0 && mapTree(children)}\n </TreeSelect.TreeNode>\n );\n });\n });\n\n const onSearch = (searchValue?: string) => {\n setSearchValue(searchValue);\n let targetKeyList: Array<string | number> = [];\n if (!searchValue) {\n setSearchValue(undefined);\n targetKeyList = propsPureValue;\n } else {\n Object.keys(state.treeSelectorTiledMap).forEach((item) => {\n const target = state.treeSelectorTiledMap[item];\n const label = target?.[fieldNamesMerge.label] as string;\n if (label?.includes(searchValue)) {\n targetKeyList.push(target[fieldNamesMerge.value]);\n }\n });\n }\n\n const expandedKeysMerge = getExpandedKeysByValues(\n targetKeyList,\n state.treeSelectorTiledMap\n );\n setTreeExpandedKeys(expandedKeysMerge);\n };\n\n const treeValue = isMultiple ? propsPureValue : propsPureValue[0];\n\n /**\n * 1. 使用 TreeNode 渲染节点,不能重写 fieldNames 配置\n * 2. 使用 TreeNode 是为了实现 TreeNode ICON\n */\n return (\n <TreeSelect\n searchValue={searchValue}\n dropdownStyle={{ maxHeight: 400, overflow: 'auto' }}\n showSearch={true}\n treeLine={{ showLeafIcon: false }}\n treeNodeFilterProp=\"title\"\n switcherIcon={<CaretDownFilled />}\n popupMatchSelectWidth={false}\n {...otherProps}\n className={classNames('v-tree-select-wrapper', otherProps.className)}\n popupClassName={classNames(\n 'v-tree-select-wrapper-dropdown',\n otherProps.popupClassName\n )}\n onChange={onInnerChange}\n treeExpandedKeys={treeExpandedKeys}\n value={treeValue}\n onSearch={onSearch}\n loading={loading}\n onTreeExpand={onTreeExpand}\n style={{ width: '100%', ...otherProps.style }}\n suffixIcon={\n state.requestStatus === 'request-error' ? (\n <RedoOutlined spin={loading} onClick={onAgainRequest} />\n ) : undefined\n }\n notFoundContent={\n <RequestStatus\n status={state.requestStatus}\n messageConfig={requestMessageConfig}\n loading={loading}\n errorButton={\n <Button type=\"primary\" onClick={onAgainRequest}>\n 重新获取数据\n </Button>\n }\n />\n }\n >\n {mapTree(state.treeSelectorList)}\n </TreeSelect>\n );\n};\n"],"names":["defaultState","treeSelectorList","treeSelectorTiledMap","queryIsEmpty","TreeSelectorWrapperModel","actions","setSelectBoxList","params","state","requestStatus","resetSelectBoxList","changeRequestStatus","treeSelectorWrapperModels","treeSelectorWrapperModel","key","Model","getExpandedKeysByValue","value","tempList","parentNode","pId","push","getExpandedKeysByValues","values","length","expandedKeys","forEach","targetList","apply","_toConsumableArray","Array","from","Set","TreeSelectorWrapper","props","serviceConfig","effectDependencyList","onTreeSelectorListChange","onTreeSelectorRequestError","requestMessageConfig","modelKey","_labelInValue","labelInValue","labelInValueFieldNames","onTreeItemDataAdapter","_props$selectedParent","selectedParentCheckedAllChildrenList","fieldNames","onChange","treeDefaultExpandAll","showAllOption","initRootExpand","treeDefaultExpandedKeys","executeOnChangeInRenderFirstValue","otherProps","_objectWithoutProperties","_excluded","hasTreeSelectorList","Object","prototype","hasOwnProperty","call","newServiceConfig","newEffectDependencyList","_fbaHooks$useSafeStat","fbaHooks","useSafeState","_fbaHooks$useSafeStat2","_slicedToArray","loading","setLoading","_useState","useState","_useState2","treeExpandedKeys","setTreeExpandedKeys","_treeSelectorWrapperM","useStore","_treeSelectorWrapperM2","requestPreKey","concat","isMultiple","treeCheckable","multiple","responseFirstRef","useRef","useMemo","treeCheckStrictly","fieldNamesMerge","_objectSpread","label","children","disabled","labelInValueFieldNamesMerge","allOptionConfig","isTrue","_useState3","_useState4","searchValue","setSearchValue","propsPureValue","useMemoCustom","toArray","map","item","_isObject","prevPropsPureValue","usePrevious","useEffectCustom","current","dataList","originalList","target","_defineProperty","_props$onChange","undefined","_props$onChange2","allValues","keys","_state$treeSelectorTi","JSON","stringify","valueIsEmpty","isUndefinedOrNull","serviceResponseHandle","respData","result","onRequestResultAdapter","list","_get","_isArray","console","warn","startDataSourceRequest","_hooks","useCallbackRef","Promise","$return","$error","requiredParamsKeys","isEmpty","_newServiceConfig$onR","_respData","onRequest","Error","_extend","find","join","$Try_1_Post","$boundEx","$Try_1_Catch","error","window","resolve","then","$await_2","onChangeSelectorList","useCustomCompareEffect","allState","getState","dequal","tempItem","newdataList","treeToTiledMap","onTreeExpand","onAgainRequest","onInnerChange","changeValue","_data","triggerInfo","resultValueList","checked","triggerValue","isNotEmptyArray","treeToArray","resultItemList","mapTree","data","itemAdapterData","_createElement","TreeSelect","TreeNode","title","onSearch","targetKeyList","includes","expandedKeysMerge","treeValue","_jsx","dropdownStyle","maxHeight","overflow","showSearch","treeLine","showLeafIcon","treeNodeFilterProp","switcherIcon","_CaretDownFilled","popupMatchSelectWidth","className","_classNames","popupClassName","style","width","suffixIcon","_RedoOutlined","spin","onClick","notFoundContent","RequestStatus","status","messageConfig","errorButton","Button","type"],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"selector-wrapper-BSpsy8KA.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 { useMemo, useState } from 'react';\nimport pubSub from 'pubsub-js';\nimport { isArray, isDeepEqual } from '@dimjs/lang';\nimport { get, sort } from '@dimjs/utils';\nimport type { TPlainObject } from '@flatbiz/utils';\nimport { isUndefinedOrNull } from '@flatbiz/utils';\nimport { fbaHooks } from '../fba-hooks/index.js';\nimport { type TRequestStatus } from '../request-status/index.js';\nimport {\n type SelectorServiceConfig,\n type SelectorWrapperProps,\n} from './types.js';\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 =\n 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(sort(serviceRequestParams));\n if (sortDataStringify === '{}') {\n return undefined;\n }\n return sortDataStringify;\n }\n } catch (_error) {\n //\n }\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(\n serviceRequestParamsStringify\n );\n const prevParams = fbaHooks.usePrevious(serviceRequestParams);\n\n const serviceRespDataAdapter = (respData) => {\n let result: TPlainObject[] = respData;\n if (serviceConfig?.onRequestResultAdapter) {\n result = serviceConfig?.onRequestResultAdapter(\n respData as unknown as TPlainObject\n );\n } else if (fieldNames?.list) {\n result = get(respData, fieldNames?.list);\n }\n if (result && !isArray(result)) {\n console.warn('待渲染数据为非数组结构', result);\n return [];\n }\n return result || [];\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?.(\n serviceRequestParams || {}\n );\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: any) {\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) =>\n isUndefinedOrNull(serviceRequestParams[key])\n )\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?.(\n serviceRequestParams || {}\n );\n const respAdapterData = serviceRespDataAdapter(respData);\n setRequestStatus('request-success');\n setStateSelectorList(respAdapterData);\n onRespDataChange?.(respAdapterData);\n } catch (error: any) {\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 try {\n const respAdapterData = await onRequest();\n setStateSelectorList(respAdapterData);\n setRequestStatus('request-success');\n onRespDataChange?.(respAdapterData);\n } catch (error: any) {\n console.error(error);\n setRequestStatus('request-error');\n setStateSelectorList(undefined);\n onSelectorRequestError?.(error);\n }\n }, [JSON.stringify(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 { isValidElement, useMemo, useRef } from 'react';\nimport { Button, Select } from 'antd';\nimport { RedoOutlined } from '@ant-design/icons';\nimport { isString } from '@dimjs/lang';\nimport type { TAny, TPlainObject } from '@flatbiz/utils';\nimport { arrayFind, toArray, valueIsEqual } from '@flatbiz/utils';\nimport { hooks } from '@wove/react';\nimport { RequestStatus } from '../request-status/index.js';\nimport type { SelectorWrapperProps } from './types.js';\nimport { useRequest } from './use-request.js';\nimport { getVauleList } from './utils.js';\nimport './style.less';\nexport * from './types.js';\n/**\n * 选择器包装组件\n * ```\n * 1. 不支持搜索调用服务模式,可使用组件 SelectorWrapperSearch\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 = Object.prototype.hasOwnProperty.call(\n props,\n 'selectorList'\n );\n const mergeFieldNames = {\n label: 'label',\n value: 'value',\n disabled: 'disabled',\n ...fieldNames,\n };\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 (\n showAllOption &&\n allOptionConfig &&\n item.value === allOptionConfig[optionsItemValueField]\n ) {\n targetList.push(allOptionConfig);\n } else {\n const filterTarget = arrayFind(\n stateSelectorList || [],\n item.value,\n optionsItemValueField\n );\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 const hasValidElementItem = children.find((item) => {\n return isValidElement(item);\n });\n if (!hasValidElementItem) {\n children.forEach((item) => {\n if (isString(item)) mergeString += item;\n });\n } else {\n mergeString = isString(option?.label) ? option.label : undefined;\n }\n return mergeString.toLowerCase().indexOf(input.toLowerCase()) >= 0;\n });\n\n return (\n <Select\n showSearch={true}\n allowClear={true}\n popupMatchSelectWidth={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 ) : (\n otherProps.suffixIcon\n )\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\">\n {props.icon?.(item, index)}\n </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","_useState2","_slicedToArray","stateSelectorList","setStateSelectorList","_useState3","_useState4","requestStatus","setRequestStatus","_useState5","Date","now","_useState6","refreshKey","setRefreshKey","serviceRequestParamsStringify","useMemo","sortDataStringify","JSON","stringify","_sort","undefined","_error","serviceRequestCahceKey","concat","serviceRequestCahceStatusKey","pubSubKey","prevServiceRequestParamsStringify","fbaHooks","usePrevious","prevParams","serviceRespDataAdapter","respData","result","onRequestResultAdapter","list","_get","_isArray","console","warn","getWindowCacheData","_window$__selector_wr","window","getWindowCacheValue","_getWindowCacheData","getWindowCacheStatus","_getWindowCacheData2","setWindowCache","key","value","onChangeRequestStatus","status","onRequest","Promise","$return","$error","_serviceConfig$onRequ","respAdapterData","$Try_2_Catch","error","setTimeout","pubSub","publish","reject","$boundEx","resolve","call","then","$await_7","useEffectCustomAsync","isEmpty","_serviceConfig$onRequ2","dataList","_respAdapterData","find","isUndefinedOrNull","_isDeepEqual","$Try_3_Post","$Try_3_Catch","$await_8","$If_5","subscribe","_msg","_ref","$Try_4_Post","$Try_4_Catch","$await_9","onRefreshRequest","getVauleList","data","valueKey","valueList","toArray","map","item","_isObject","SelectorWrapper","props","showAllOption","onSelectorListChange","onSelectorListAllChange","onLabelRenderAdapter","requestMessageConfig","selectorList","modelKey","labelInValue","otherProps","_objectWithoutProperties","_excluded","firstRenderSelectList","useRef","prototype","hasOwnProperty","mergeFieldNames","_objectSpread","label","disabled","optionsItemLabelField","optionsItemValueField","optionsItemDisabledField","allOptionConfig","isTrue","_defineProperty","isMultiple","valueIsEqual","mode","_useRequest","current","onRespChange","_hooks","useCallbackRef","selectedList","_props$onChange","_props$onChange2","_props$onChange3","_props$onChange4","onInnerChange","_value","otherParams","_props$onChange5","targetList","forEach","push","filterTarget","arrayFind","selectorAllList","loading","selectValue","filterOption","input","option","children","mergeString","hasValidElementItem","isValidElement","_isString","toLowerCase","indexOf","_jsx","Select","showSearch","allowClear","popupMatchSelectWidth","style","width","suffixIcon","_RedoOutlined","spin","onClick","notFoundContent","RequestStatus","messageConfig","errorButton","Button","type","index","_props$icon","_jsxs","Option","showIcon","className","icon"],"mappings":"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"}