@flatbiz/antd 4.4.21 → 4.4.23

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.
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["@flatbiz/antd/src/editable-table/utils.ts","@flatbiz/antd/src/editable-table/form-item/checkbox-group.tsx","@flatbiz/antd/src/editable-table/form-item/date-picker-wrapper.tsx","@flatbiz/antd/src/editable-table/form-item/date-range-picker-wrapper.tsx","@flatbiz/antd/src/editable-table/form-item/input.tsx","@flatbiz/antd/src/editable-table/form-item/input-number.tsx","@flatbiz/antd/src/editable-table/form-item/radio-group.tsx","@flatbiz/antd/src/editable-table/form-item/selector-wrapper.tsx","@flatbiz/antd/src/editable-table/form-item/switch-wrapper.tsx","@flatbiz/antd/src/editable-table/form-item/text.tsx","@flatbiz/antd/src/editable-table/form-item/textarea.tsx","@flatbiz/antd/src/editable-table/form-item/upload-wrapper.tsx","@flatbiz/antd/src/editable-table/form-item/index.tsx","@flatbiz/antd/src/editable-table/form-list-item/form-list.tsx","@flatbiz/antd/src/editable-table/form-list-item/index.tsx","@flatbiz/antd/src/editable-table/editable-table.tsx"],"sourcesContent":["import { FieldSingleConfig } from './type';\n\nexport const getEditable = (editable: FieldSingleConfig['editable'], tableRowIndex: number) => {\n return typeof editable === 'boolean' ? editable : editable?.({ tableRowIndex });\n};\n","import { classNames } from '@dimjs/utils';\nimport { LabelValueItem, TAny } from '@flatbiz/utils';\nimport { hooks } from '@wove/react';\nimport { Checkbox, Form } from 'antd';\nimport { useMemo } from 'react';\nimport { tableCellRender } from '../../table-cell-render';\nimport { EditableCheckboxGroupConfig, EditableFormItemProps } from '../type';\n\ntype CheckboxGroupFormItemContent = Omit<EditableFormItemProps, 'formItemProps'> & {\n value?: Array<string | number>;\n onChange?: (value: TAny) => void;\n};\n\nconst CheckboxGroupFormItemContent = (props: CheckboxGroupFormItemContent) => {\n const { editableConfig, editable, render } = props.fieldConfig;\n const editableComptProps = (editableConfig as EditableCheckboxGroupConfig).editableComptProps;\n const options = useMemo(\n () => (editableComptProps.options || []) as LabelValueItem[],\n [editableComptProps.options],\n );\n const onChange = hooks.useCallbackRef((value) => {\n props.onChange?.(value);\n editableComptProps.onChange?.(value);\n });\n\n if (editable) {\n return <Checkbox.Group {...editableComptProps} value={props.value} onChange={onChange} />;\n }\n\n return (\n <span className=\"editable-checkbox-group-view\">\n {render ? render(props.value, options) : tableCellRender.selectorCell(options)(props.value)}\n </span>\n );\n};\n\nexport const CheckboxGroupFormItem = (props: EditableFormItemProps) => {\n const { formItemProps } = props.fieldConfig;\n\n return (\n <Form.Item\n {...formItemProps}\n name={props.name}\n className={classNames('editable-checkbox-group-form-item', formItemProps?.className)}\n >\n <CheckboxGroupFormItemContent {...props} />\n </Form.Item>\n );\n};\n","import { classNames } from '@dimjs/utils';\nimport { Form } from 'antd';\nimport { DatePickerWrapper } from '../../date-picker-wrapper';\nimport { EditableDatePickerWrapperConfig, EditableFormItemProps } from '../type';\n\nexport const DatePickerWrapperFormItem = (props: EditableFormItemProps) => {\n const { formItemProps, editableConfig } = props.fieldConfig;\n return (\n <Form.Item\n {...formItemProps}\n name={props.name}\n className={classNames('editable-date-picker-wraper-form-item', formItemProps?.className)}\n >\n <DatePickerWrapper\n allowClear\n {...(editableConfig as EditableDatePickerWrapperConfig).editableComptProps}\n />\n </Form.Item>\n );\n};\n","import { isArray } from '@dimjs/lang';\nimport { classNames } from '@dimjs/utils';\nimport { hooks } from '@wove/react';\nimport { Form } from 'antd';\nimport { useMemo } from 'react';\nimport { DateRangePickerWrapper } from '../../date-range-picker-wrapper';\nimport { EditableDateRangePickerWrapperConfig, EditableFormItemProps } from '../type';\n\ntype FormItemContentProps = Omit<EditableFormItemProps, 'formItemProps'> & {\n value?: [string, string];\n onChange?: (value?: [string, string]) => void;\n};\n\nconst FormItemContent = (props: FormItemContentProps) => {\n const { editableConfig, editable, render } = props.fieldConfig;\n const editableComptProps = (editableConfig as EditableDateRangePickerWrapperConfig).editableComptProps;\n\n const onChange = hooks.useCallbackRef((data) => {\n props.onChange?.(data);\n editableComptProps?.onChange?.(data);\n });\n\n const viewLabel = useMemo(() => {\n const value = isArray(props.value) ? props.value : ([] as any[]);\n if (editable) return undefined;\n return value.join('~');\n }, [editable, props.value]);\n\n if (editable) {\n return (\n <DateRangePickerWrapper allowClear {...editableComptProps} value={props.value} onChange={onChange} />\n );\n }\n return <span className=\"editable-date-range-picker-view\">{render ? render(props.value) : viewLabel}</span>;\n};\n\nexport const DateRangePickerWrapperFormItem = (props: EditableFormItemProps) => {\n const { formItemProps } = props.fieldConfig;\n return (\n <Form.Item\n {...formItemProps}\n name={props.name}\n className={classNames('editable-date-range-picker-wraper-form-item', formItemProps?.className)}\n >\n <FormItemContent {...props} />\n </Form.Item>\n );\n};\n","import { Form } from 'antd';\nimport { InputWrapper } from '../../input-wrapper';\nimport { EditableFormItemProps, EditableInputConfig } from '../type';\n\nexport const InputFormItem = (props: EditableFormItemProps) => {\n const { formItemProps, editableConfig } = props.fieldConfig;\n\n return (\n <Form.Item {...formItemProps} name={props.name}>\n <InputWrapper allowClear {...(editableConfig as EditableInputConfig).editableComptProps} />\n </Form.Item>\n );\n};\n","import { classNames } from '@dimjs/utils';\nimport { Form, InputNumber } from 'antd';\nimport { EditableFormItemProps, EditableInputNumberConfig } from '../type';\n\nexport const InputNumberFormItem = (props: EditableFormItemProps) => {\n const { formItemProps, editableConfig } = props.fieldConfig;\n return (\n <Form.Item\n {...formItemProps}\n name={props.name}\n className={classNames('editable-input-number-form-item', formItemProps?.className)}\n >\n <InputNumber {...(editableConfig as EditableInputNumberConfig).editableComptProps} />\n </Form.Item>\n );\n};\n","import { classNames } from '@dimjs/utils';\nimport { LabelValueItem } from '@flatbiz/utils';\nimport { hooks } from '@wove/react';\nimport { Form, Radio } from 'antd';\nimport { useMemo } from 'react';\nimport { tableCellRender } from '../../table-cell-render';\nimport { EditableFormItemProps, EditableRadioGroupConfig } from '../type';\n\ntype RadioGroupFormItemContent = Omit<EditableFormItemProps, 'formItemProps'> & {\n value?: string | number;\n onChange?: (value: string | number) => void;\n};\n\nconst RadioGroupFormItemContent = (props: RadioGroupFormItemContent) => {\n const { editableConfig, editable, render } = props.fieldConfig;\n const editableComptProps = (editableConfig as EditableRadioGroupConfig).editableComptProps;\n const options = useMemo(\n () => (editableComptProps.options || []) as LabelValueItem<string | number>[],\n [editableComptProps.options],\n );\n\n const onChange = hooks.useCallbackRef((e) => {\n props.onChange?.(e.target.value as string | number);\n editableComptProps.onChange?.(e);\n });\n\n if (editable) {\n return <Radio.Group {...editableComptProps} value={props.value} onChange={onChange} />;\n }\n return (\n <span className=\"editable-radio-group-view\">\n {render ? render(props.value, options) : tableCellRender.selectorCell(options)(props.value)}\n </span>\n );\n};\n\nexport const RadioGroupFormItem = (props: EditableFormItemProps) => {\n const { formItemProps } = props.fieldConfig;\n\n return (\n <Form.Item\n {...formItemProps}\n name={props.name}\n className={classNames('editable-radio-group-form-item', formItemProps?.className)}\n >\n <RadioGroupFormItemContent {...props} />\n </Form.Item>\n );\n};\n","import { isArray } from '@dimjs/lang';\nimport { classNames } from '@dimjs/utils';\nimport { arrayField2LabelValue, LabelValueItem, TAny, TPlainObject } from '@flatbiz/utils';\nimport { hooks } from '@wove/react';\nimport { Form, Tag } from 'antd';\nimport { Fragment, useEffect, useState } from 'react';\nimport { SelectorWrapper } from '../../selector-wrapper';\nimport { EditableFormItemProps, EditableSelectWrapperConfig } from '../type';\n\ntype FormItemContentProps = Omit<EditableFormItemProps, 'formItemProps'> & {\n value?: string | number | Array<string | number>;\n onChange?: (value: TAny) => void;\n};\n\nconst FormItemContent = (props: FormItemContentProps) => {\n const { editableConfig, editable, render } = props.fieldConfig;\n const editableComptProps = (editableConfig as EditableSelectWrapperConfig).editableComptProps;\n const [selectorList, setSelectorList] = useState<LabelValueItem[]>([]);\n const [viewLabelList, setviewLabelList] = useState<LabelValueItem[]>([]);\n\n useEffect(() => {\n if (!editable) {\n const value = isArray(props.value) ? props.value : props.value === undefined ? [] : [props.value];\n if (selectorList.length === 0) {\n setviewLabelList(value.map((item) => ({ label: item as string, value: item })));\n }\n const returnList = [] as LabelValueItem[];\n value.forEach((item) => {\n const target = selectorList.find((temp) => temp.value === item);\n returnList.push(target ? target : { label: String(item), value: item });\n });\n setviewLabelList(returnList);\n }\n }, [editable, editableComptProps.fieldNames, props.value, selectorList]);\n\n const onSelectorListAllChange = hooks.useCallbackRef((dataList: TPlainObject[]) => {\n setSelectorList(arrayField2LabelValue(dataList || [], editableComptProps.fieldNames));\n });\n\n const onChange = hooks.useCallbackRef((value, selectList) => {\n props.onChange?.(value);\n editableComptProps.onChange?.(value, selectList);\n });\n\n if (editable) {\n return (\n <SelectorWrapper\n {...editableComptProps}\n value={props.value}\n onChange={onChange}\n onSelectorListAllChange={onSelectorListAllChange}\n />\n );\n }\n return (\n <Fragment>\n <div style={{ display: 'none' }}>\n <SelectorWrapper {...editableComptProps} onSelectorListAllChange={onSelectorListAllChange} />\n </div>\n <span className=\"editable-selector-view\">\n {render\n ? render(props.value, selectorList)\n : viewLabelList.map((tag, index) => (\n <Tag key={index} color={'geekblue'}>\n {tag.label}\n </Tag>\n ))}\n </span>\n </Fragment>\n );\n};\n\nexport const SelectorWrapperFormItem = (props: EditableFormItemProps) => {\n const { formItemProps } = props.fieldConfig;\n\n return (\n <Form.Item\n {...formItemProps}\n name={props.name}\n className={classNames('editable-selector-wrapper-form-item', formItemProps?.className)}\n >\n <FormItemContent {...props} />\n </Form.Item>\n );\n};\n","import { classNames } from '@dimjs/utils';\nimport { hooks } from '@wove/react';\nimport { Form, Tag } from 'antd';\nimport { useMemo } from 'react';\nimport { SwitchWrapper } from '../../switch-wrapper';\nimport { EditableFormItemProps, EditableSwitchWrapperConfig } from '../type';\n\ntype FormItemContentProps = Omit<EditableFormItemProps, 'formItemProps'> & {\n value?: string | number | boolean;\n onChange?: (value?: string | number | boolean) => void;\n};\n\nconst FormItemContent = (props: FormItemContentProps) => {\n const { editableConfig, editable, render } = props.fieldConfig;\n const editableComptProps = (editableConfig as EditableSwitchWrapperConfig).editableComptProps;\n const onChange = hooks.useCallbackRef((data) => {\n props.onChange?.(data);\n editableComptProps?.onChange?.(data);\n });\n\n const viewData = useMemo(() => {\n const defaultCheckedText = editableComptProps.checkedChildren || '是';\n const defaultUnCheckedText = editableComptProps.unCheckedChildren || '否';\n\n return {\n checkedText: defaultCheckedText,\n unCheckedText: defaultUnCheckedText,\n };\n }, [editableComptProps.checkedChildren, editableComptProps.unCheckedChildren]);\n\n if (editable) {\n return <SwitchWrapper {...editableComptProps} value={props.value} onChange={onChange} />;\n }\n if (render) {\n return <span className=\"editable-switch-wrapper-view\">{render(props.value)}</span>;\n }\n return (\n <span className=\"editable-switch-wrapper-view\">\n {editableComptProps.checkedValue == props.value ? (\n <Tag color=\"geekblue\" style={{ marginRight: 0 }}>\n {viewData.checkedText}\n </Tag>\n ) : (\n <Tag style={{ marginRight: 0 }}>{viewData.unCheckedText}</Tag>\n )}\n </span>\n );\n};\n\nexport const SwitchWrapperFormItem = (props: EditableFormItemProps) => {\n const { formItemProps } = props.fieldConfig;\n return (\n <Form.Item\n {...formItemProps}\n name={props.name}\n className={classNames('editable-switch-wrapper-form-item', formItemProps?.className)}\n >\n <FormItemContent {...props} />\n </Form.Item>\n );\n};\n","import { isBoolean, isNumber, isString } from '@dimjs/lang';\nimport { Form } from 'antd';\nimport { useMemo } from 'react';\nimport { EditableFormItemProps, FieldSingleConfig } from '../type';\n\nconst FormItemTextContent = (props: {\n value?: string | number;\n name: EditableFormItemProps['name'];\n fieldConfig?: FieldSingleConfig;\n}) => {\n const value = useMemo(() => {\n if (props.fieldConfig?.render) return undefined;\n const isBaseData =\n isString(props.value) || isNumber(props.value) || isBoolean(props.value) || !props.value;\n if (!isBaseData) {\n console.warn(`Form.List name:【${props.name}】数据【${JSON.stringify(props.value)}】不能渲染在页面中`);\n }\n return isBaseData ? props.value : undefined;\n }, [props.fieldConfig?.render, props.name, props.value]);\n const viewText = props.fieldConfig?.render?.(props.value) || value;\n return <span>{viewText}</span>;\n};\n\nexport const TextFormItem = (props: { name: Array<number | string>; fieldConfig?: FieldSingleConfig }) => {\n return (\n <Form.Item noStyle name={props.name}>\n <FormItemTextContent name={props.name} fieldConfig={props.fieldConfig} />\n </Form.Item>\n );\n};\n","import { Form } from 'antd';\nimport { InputTextAreaWrapper } from '../../input-text-area-wrapper';\nimport { EditableFormItemProps, EditableTextareaConfig } from '../type';\n\nexport const TextAreaFormItem = (props: EditableFormItemProps) => {\n const { formItemProps, editableConfig } = props.fieldConfig;\n return (\n <Form.Item {...formItemProps} name={props.name}>\n <InputTextAreaWrapper {...(editableConfig as EditableTextareaConfig).editableComptProps} />\n </Form.Item>\n );\n};\n","import { classNames } from '@dimjs/utils';\nimport { TAny } from '@flatbiz/utils';\nimport { Form } from 'antd';\nimport { UploadWrapper } from '../../upload-wrapper';\nimport { EditableFileUploadConfig, EditableFormItemProps } from '../type';\n\nconst UploadWrapperFormItemContent = (\n props: EditableFormItemProps & { value?: TAny; onChange?: (value?: TAny) => void },\n) => {\n const { editableConfig, render, editable } = props.fieldConfig;\n const { children, ...otherProps } = (editableConfig as EditableFileUploadConfig).editableComptProps;\n if (editable) {\n return (\n <UploadWrapper listType=\"text\" {...otherProps} value={props.value} onChange={props.onChange}>\n {children}\n </UploadWrapper>\n );\n }\n return (\n <div className=\"upload-wrapper-selector-view\">\n {render ? (\n render(props.value)\n ) : (\n <UploadWrapper listType=\"text\" {...otherProps} value={props.value} disabled={true} />\n )}\n </div>\n );\n};\n\nexport const UploadWrapperFormItem = (props: EditableFormItemProps) => {\n const { formItemProps } = props.fieldConfig;\n return (\n <Form.Item\n {...formItemProps}\n name={props.name}\n className={classNames('editable-upload-wrapper-form-item', formItemProps?.className)}\n >\n <UploadWrapperFormItemContent {...props} />\n </Form.Item>\n );\n};\n","import { extend } from '@dimjs/utils';\nimport { FieldSingleConfig } from '../type';\nimport { getEditable } from '../utils';\nimport { CheckboxGroupFormItem } from './checkbox-group';\nimport { DatePickerWrapperFormItem } from './date-picker-wrapper';\nimport { DateRangePickerWrapperFormItem } from './date-range-picker-wrapper';\nimport { InputFormItem } from './input';\nimport { InputNumberFormItem } from './input-number';\nimport { RadioGroupFormItem } from './radio-group';\nimport { SelectorWrapperFormItem } from './selector-wrapper';\nimport { SwitchWrapperFormItem } from './switch-wrapper';\nimport { TextFormItem } from './text';\nimport { TextAreaFormItem } from './textarea';\nimport { UploadWrapperFormItem } from './upload-wrapper';\n\nexport type FormItemAdapterProps = {\n name: Array<number | string>;\n completeName: Array<number | string>;\n fieldConfig: FieldSingleConfig;\n tableRowIndex: number;\n};\n\nexport const FormItemAdapter = (props: FormItemAdapterProps) => {\n const { editableConfig, editable } = props.fieldConfig;\n const newEditable = getEditable(editable, props.tableRowIndex);\n const fieldConfig = extend({}, props.fieldConfig, { editable: newEditable });\n\n const commomProps = {\n name: props.name,\n fieldConfig,\n };\n\n if (editableConfig?.type === 'input' && newEditable) {\n return <InputFormItem {...commomProps} />;\n } else if (editableConfig?.type === 'inputNumber' && newEditable) {\n return <InputNumberFormItem {...commomProps} />;\n } else if (editableConfig?.type === 'textArea' && newEditable) {\n return <TextAreaFormItem {...commomProps} />;\n } else if (editableConfig?.type === 'datePickerWrapper' && newEditable) {\n return <DatePickerWrapperFormItem {...commomProps} />;\n } else if (editableConfig?.type === 'dateRangePickerWrapper') {\n return <DateRangePickerWrapperFormItem {...commomProps} />;\n } else if (editableConfig?.type === 'selectorWrapper') {\n return <SelectorWrapperFormItem {...commomProps} />;\n } else if (editableConfig?.type === 'checkboxGroup') {\n return <CheckboxGroupFormItem {...commomProps} />;\n } else if (editableConfig?.type === 'radioGroup') {\n return <RadioGroupFormItem {...commomProps} />;\n } else if (editableConfig?.type === 'uploadWrapper') {\n return <UploadWrapperFormItem {...commomProps} />;\n } else if (editableConfig?.type === 'switchWrapper') {\n return <SwitchWrapperFormItem {...commomProps} />;\n } else if (editableConfig?.type === 'custom') {\n return editableConfig.editableComptProps({\n name: props.name,\n editable: newEditable,\n completeName: props.completeName,\n tableRowIndex: props.tableRowIndex,\n });\n }\n\n return <TextFormItem {...commomProps} />;\n};\n","import { DeleteOutlined } from '@ant-design/icons';\nimport { classNames } from '@dimjs/utils';\nimport { Button, Form, Space } from 'antd';\nimport { FormItemAdapter } from '../form-item';\nimport { FormListConfig } from '../type';\nimport { getEditable } from '../utils';\n\nexport type FormListProps = {\n name: Array<number | string>;\n formListConfig: FormListConfig;\n tableRowIndex: number;\n completeName: (string | number)[];\n};\n\nexport const FormList = (props: FormListProps) => {\n const from = Form.useFormInstance();\n const {\n onFormListBeforeRender,\n editableConfigList,\n onFormListAfterRender,\n onFormListItemBeforeRender,\n onFormListItemAfterRender,\n deleteOperateRender,\n } = props.formListConfig;\n return (\n <Form.List name={props.name}>\n {(fields, { add, remove }) => (\n <>\n {onFormListBeforeRender\n ? onFormListBeforeRender({\n tableRowIndex: props.tableRowIndex,\n add,\n get value() {\n return from.getFieldValue(props.completeName);\n },\n })\n : null}\n {fields.map((fieldChild, index) => {\n const hasEditable = editableConfigList.find((item) =>\n getEditable(item.editable, props.tableRowIndex),\n );\n const className = classNames(\n 'editable-inner-formlist-item',\n `editable-inner-formlist-item-${props.name[1]}`,\n { 'editable-inner-formlist-item_preview': !hasEditable },\n );\n return (\n <div key={index} className={className}>\n {onFormListItemBeforeRender?.({\n add,\n remove: () => {\n remove(index);\n },\n formListItemIndex: index,\n tableRowIndex: props.tableRowIndex,\n get value() {\n return from.getFieldValue([...props.completeName, fieldChild.name]);\n },\n })}\n <Space>\n {editableConfigList.map((fieldItem, index) => {\n return (\n <FormItemAdapter\n name={[fieldChild.name, fieldItem.fieldName]}\n fieldConfig={fieldItem}\n key={index}\n tableRowIndex={props.tableRowIndex}\n completeName={[...props.completeName, fieldChild.name]}\n />\n );\n })}\n {hasEditable ? (\n <DeleteFormListItem\n deleteOperateRender={deleteOperateRender}\n remove={() => {\n remove(index);\n }}\n index={index}\n />\n ) : undefined}\n </Space>\n {onFormListItemAfterRender?.({\n add,\n formListItemIndex: index,\n tableRowIndex: props.tableRowIndex,\n remove: () => {\n remove(index);\n },\n get value() {\n return from.getFieldValue([...props.completeName, fieldChild.name]);\n },\n })}\n </div>\n );\n })}\n {onFormListAfterRender\n ? onFormListAfterRender({\n tableRowIndex: props.tableRowIndex,\n add,\n get value() {\n return from.getFieldValue(props.completeName);\n },\n })\n : null}\n </>\n )}\n </Form.List>\n );\n};\n\nconst DeleteFormListItem = (props: {\n deleteOperateRender: FormListConfig['deleteOperateRender'];\n remove: () => void;\n index: number;\n}) => {\n return (\n <Form.Item>\n {props.deleteOperateRender ? (\n props.deleteOperateRender({ remove: props.remove, formListItemIndex: props.index })\n ) : (\n <Button type=\"link\" danger icon={<DeleteOutlined />} onClick={props.remove}>\n 删除\n </Button>\n )}\n </Form.Item>\n );\n};\n","import { isArray } from '@dimjs/lang';\nimport { Form, Input } from 'antd';\nimport { Fragment } from 'react';\nimport { FormItemAdapter } from '../form-item';\nimport { TextFormItem } from '../form-item/text';\nimport { FieldSingleConfig, FormListConfig } from '../type';\nimport { FormList } from './form-list';\n\nexport type FormListItemProps = {\n name: Array<number | string>;\n fieldConfig?: FieldSingleConfig | FormListConfig;\n tableRowIndex: number;\n completeName: (string | number)[];\n hiddenField?: { dataIndex: string };\n};\n\nexport const FormListItem = (props: FormListItemProps) => {\n if (props.fieldConfig) {\n if (isArray(props.fieldConfig['editableConfigList'])) {\n const formListConfig = props.fieldConfig as FormListConfig;\n return (\n <FormList\n name={props.name}\n completeName={props.completeName}\n formListConfig={formListConfig}\n tableRowIndex={props.tableRowIndex}\n />\n );\n } else {\n return (\n <Fragment>\n <FormItemAdapter\n name={props.name}\n fieldConfig={props.fieldConfig as FieldSingleConfig}\n tableRowIndex={props.tableRowIndex}\n completeName={props.completeName}\n />\n {props.hiddenField ? (\n <Form.Item hidden={true} name={props.hiddenField.dataIndex}>\n <Input />\n </Form.Item>\n ) : null}\n </Fragment>\n );\n }\n }\n return <TextFormItem name={props.name} />;\n};\n","import { PlusOutlined } from '@ant-design/icons';\nimport { classNames } from '@dimjs/utils';\nimport { TAny, toArray, TPlainObject } from '@flatbiz/utils';\nimport { Form, FormListOperation, Table, TableProps } from 'antd';\nimport { FormListFieldData, FormListProps } from 'antd/es/form';\nimport { ColumnsType } from 'antd/es/table';\nimport {\n forwardRef,\n Fragment,\n isValidElement,\n ReactElement,\n useImperativeHandle,\n useMemo,\n useRef,\n} from 'react';\nimport { ButtonWrapper } from '../button-wrapper';\nimport { TableTitleTooltip } from '../table-title-tooltip';\nimport { TipsWrapper, TipsWrapperProps } from '../tips-wrapper/tips-wrapper';\nimport { FormListItem } from './form-list-item';\nimport './style.less';\nimport { EditableTableName, EditableTableRecordType, FieldSingleConfig, FormListConfig } from './type';\n\ntype fieldConfigFunctionParams = {\n tableRowIndex: number;\n name: EditableTableName;\n tableRowName: EditableTableName;\n getTableRowData: () => TPlainObject;\n};\n/**\n * antd 默认render功能此处不能使用\n */\nexport type EditableTableColumn = Omit<ColumnsType['0'], 'render'> & {\n /**\n * @description 请使用 tipsWrapperProps 属性配置\n * ```\n * 会在 title 之后展示一个 icon,hover 之后提示一些信息\n * 1. title为string类型、ReactElement有效\n * 2. hoverArea 默认值:icon\n * ```\n */\n tooltip?: string | { content: string; icon?: ReactElement; hoverArea?: 'icon' | 'all' };\n /**\n * 会在 title 之后展示一个 icon\n * ```\n * 1. title为string类型有效\n * 2. 可为icon添加提示效果\n * 3. 可为icon添加点击事件\n * ```\n */\n tipsWrapperProps?: string | TipsWrapperProps;\n dataIndex?: string;\n fieldConfig?:\n | FieldSingleConfig\n | FormListConfig\n | ((data: fieldConfigFunctionParams) => FieldSingleConfig | FormListConfig);\n /** 隐藏域字段 */\n hiddenField?: {\n dataIndex: string;\n };\n /**\n * 渲染中间件,如果renderMiddleware返回值为ReactElement格式,则会终止后续逻辑,fieldConfig配置将失效\n * ```\n * 1. tableRowIndex: 当前row的索引值\n * 2. name: 当前table单元格的form.item的name值\n * 3. operation Form.List的操作函数\n * 4. 对 table children column渲染无效\n * ```\n */\n renderMiddleware?: (item: {\n tableRowIndex: number;\n name: EditableTableName;\n tableRowName: EditableTableName;\n operation: FormListOperation;\n index: number;\n }) => ReactElement | null;\n /** table datasource children column 自定义渲染 */\n tableChildrenColumnRender?: (value: TAny, record: TPlainObject, index: number) => ReactElement | null;\n};\n\nexport type EditableTableProps = {\n name: EditableTableName;\n /**\n * ```\n * antd table属性\n * 1. 新增cellVerticalAlign,单元格竖直方向对齐方式,设置table column onCell属性后失效\n * ```\n */\n tableProps?: Omit<TableProps<EditableTableRecordType>, 'dataSource' | 'columns' | 'rowKey'> & {\n cellVerticalAlign?: 'baseline' | 'middle' | 'top' | 'bottom';\n };\n columns: EditableTableColumn[];\n onTableBeforeRender?: (formListOperation: FormListOperation, nextRowIndex: number) => ReactElement | null;\n /**\n * 设置后,将覆盖底部`新增`按钮\n */\n onTableAfterRender?: (formListOperation: FormListOperation, nextRowIndex: number) => ReactElement | null;\n rules?: FormListProps['rules'];\n /** 隐藏底部`新增`按钮,设置 onTableAfterRender后 失效 */\n hiddenFooterBtn?: boolean;\n /** 新增行默认值,自定义onTableAfterRender后失效 */\n getAddRowDefaultValues?: () => TPlainObject;\n /** 空效果显示尺寸,默认值:small */\n emptyShowSize?: 'small' | 'large';\n};\n\nexport type EditableTableRefApi = {\n /** 可用于表格行选择操作时,获取操作列数据 */\n getTableItemDataByFormListItemKey: (key: number) => TPlainObject;\n};\n\n/**\n * 可编辑表格\n * demo:https://fex.qa.tcshuke.com/docs/admin/main/table/row-editable1\n * @param props\n * ```\n * 1. 通过 tableProps 设置Table属性,table size默认:small\n * 2. Table children column 不可编辑\n * 3. 当存在折叠children数据时,组件会在children中内置_isChildrenItem字段\n * 4. 可通过tableChildrenColumnRender自定义渲染 table children column 显示\n * 5. 设置 rowSelection 后,rowSelection.onChange 通过 ref 的 getTableItemDataByFormListItemKey获取数据\n * ```\n */\nexport const EditableTable = forwardRef<EditableTableRefApi, EditableTableProps>((props, ref) => {\n const form = Form.useFormInstance();\n\n const formListFieldsRef = useRef<FormListFieldData[]>([]);\n\n const columns = useMemo(() => {\n if (!props.columns) return [];\n return props.columns.map((columnItem) => {\n const {\n fieldConfig,\n renderMiddleware,\n tableChildrenColumnRender,\n tooltip,\n title,\n tipsWrapperProps,\n ...otherColumnItem\n } = columnItem;\n const support = isValidElement(title) || typeof title === 'string';\n let titleRender: ReactElement | string;\n if (tipsWrapperProps && support) {\n if (typeof tipsWrapperProps === 'string') {\n titleRender = (\n <TipsWrapper tipType=\"popover\" popoverProps={{ content: tipsWrapperProps }}>\n {title}\n </TipsWrapper>\n );\n } else {\n titleRender = <TipsWrapper {...tipsWrapperProps}>{title}</TipsWrapper>;\n }\n } else if (tooltip) {\n titleRender = <TableTitleTooltip title={title as string} tooltip={tooltip} />;\n } else {\n titleRender = title as string;\n }\n return {\n title: titleRender,\n onCell: () => {\n return {\n valign: props.tableProps?.cellVerticalAlign || 'middle',\n };\n },\n ...otherColumnItem,\n render: (_value, record, index) => {\n if (record['_isChildrenItem']) {\n if (tableChildrenColumnRender) {\n return tableChildrenColumnRender(_value, record, index);\n }\n return _value;\n }\n const tableRowName = [...toArray<string | number>(props.name as TAny), record.name];\n const completeName = columnItem.dataIndex ? [...tableRowName, columnItem.dataIndex] : tableRowName;\n const customRender = renderMiddleware?.({\n name: completeName,\n tableRowIndex: record.name,\n operation: record.operation,\n tableRowName,\n index,\n });\n if (customRender) {\n return customRender;\n }\n\n const fieldConfigActual =\n typeof fieldConfig === 'function'\n ? fieldConfig({\n name: completeName,\n tableRowIndex: record.name,\n tableRowName,\n getTableRowData: () => {\n return form.getFieldValue(tableRowName);\n },\n })\n : fieldConfig;\n return (\n <FormListItem\n name={columnItem.dataIndex ? [record.name, columnItem.dataIndex] : [record.name]}\n completeName={completeName}\n fieldConfig={fieldConfigActual}\n tableRowIndex={record.name}\n hiddenField={columnItem.hiddenField}\n />\n );\n },\n };\n }) as ColumnsType<EditableTableRecordType>;\n }, [props.columns, props.name, props.tableProps?.cellVerticalAlign]);\n\n const formListDataSource = Form.useWatch(props.name, form);\n\n useImperativeHandle(ref, () => {\n return {\n getTableItemDataByFormListItemKey: (key) => {\n const target = formListFieldsRef.current.find((item) => item.key === key);\n if (target) {\n return form.getFieldValue([...toArray<string>(props.name), target.name]);\n }\n return undefined;\n },\n };\n });\n\n return (\n <div className={classNames('editable-table', { 'et-empty-show-large': props.emptyShowSize === 'large' })}>\n <Form.List name={props.name} rules={props.rules}>\n {(fields, formListOperation) => {\n formListFieldsRef.current = fields;\n return (\n <Fragment>\n {props.onTableBeforeRender ? props.onTableBeforeRender(formListOperation, fields.length) : null}\n <Table\n scroll={{ x: 'max-content' }}\n pagination={false}\n rowKey=\"key\"\n size=\"small\"\n {...props.tableProps}\n dataSource={fields.map((item) => {\n const children = formListDataSource?.[item.name]?.children as TPlainObject[] | undefined;\n if (children) {\n children.forEach((item) => {\n item['_isChildrenItem'] = true;\n });\n }\n return {\n ...item,\n operation: formListOperation,\n children,\n };\n })}\n columns={columns}\n />\n {props.onTableAfterRender ? (\n props.onTableAfterRender(formListOperation, fields.length)\n ) : (\n <ButtonWrapper\n type=\"dashed\"\n hidden={props.hiddenFooterBtn}\n onClick={() => formListOperation.add(props.getAddRowDefaultValues?.())}\n block\n icon={<PlusOutlined />}\n style={{ marginTop: 15 }}\n >\n 新增\n </ButtonWrapper>\n )}\n </Fragment>\n );\n }}\n </Form.List>\n </div>\n );\n});\n"],"names":["getEditable","editable","tableRowIndex","CheckboxGroupFormItemContent","props","_props$fieldConfig","fieldConfig","editableConfig","render","editableComptProps","options","useMemo","onChange","_hooks","useCallbackRef","value","_jsx","Checkbox","Group","_extends","className","children","tableCellRender","selectorCell","CheckboxGroupFormItem","formItemProps","Form","Item","name","_classNames","DatePickerWrapperFormItem","DatePickerWrapper","allowClear","FormItemContent","data","viewLabel","_isArray","undefined","join","DateRangePickerWrapper","DateRangePickerWrapperFormItem","InputFormItem","InputWrapper","InputNumberFormItem","InputNumber","RadioGroupFormItemContent","e","target","Radio","RadioGroupFormItem","_useState","useState","selectorList","setSelectorList","_useState2","viewLabelList","setviewLabelList","useEffect","length","map","item","label","returnList","forEach","find","temp","push","String","fieldNames","onSelectorListAllChange","dataList","arrayField2LabelValue","selectList","SelectorWrapper","_jsxs","Fragment","style","display","tag","index","Tag","color","SelectorWrapperFormItem","viewData","defaultCheckedText","checkedChildren","defaultUnCheckedText","unCheckedChildren","checkedText","unCheckedText","SwitchWrapper","checkedValue","marginRight","SwitchWrapperFormItem","FormItemTextContent","_props$fieldConfig2","_props$fieldConfig3","isBaseData","_isString","_isNumber","_isBoolean","console","warn","JSON","stringify","viewText","TextFormItem","noStyle","TextAreaFormItem","InputTextAreaWrapper","UploadWrapperFormItemContent","_editableComptProps","otherProps","_objectWithoutPropertiesLoose","_excluded","UploadWrapper","listType","disabled","UploadWrapperFormItem","FormItemAdapter","newEditable","_extend","commomProps","type","completeName","FormList","from","useFormInstance","_props$formListConfig","formListConfig","onFormListBeforeRender","editableConfigList","onFormListAfterRender","onFormListItemBeforeRender","onFormListItemAfterRender","deleteOperateRender","List","fields","_ref","add","remove","_Fragment","getFieldValue","fieldChild","hasEditable","formListItemIndex","concat","Space","fieldItem","fieldName","DeleteFormListItem","Button","danger","icon","_DeleteOutlined","onClick","FormListItem","hiddenField","hidden","dataIndex","Input","EditableTable","forwardRef","ref","_props$tableProps2","form","formListFieldsRef","useRef","columns","columnItem","renderMiddleware","tableChildrenColumnRender","tooltip","title","tipsWrapperProps","otherColumnItem","support","isValidElement","titleRender","TipsWrapper","tipType","popoverProps","content","TableTitleTooltip","onCell","_props$tableProps","valign","tableProps","cellVerticalAlign","_value","record","tableRowName","toArray","customRender","operation","fieldConfigActual","getTableRowData","formListDataSource","useWatch","useImperativeHandle","getTableItemDataByFormListItemKey","key","current","emptyShowSize","rules","formListOperation","onTableBeforeRender","Table","scroll","x","pagination","rowKey","size","dataSource","_formListDataSource$i","onTableAfterRender","ButtonWrapper","hiddenFooterBtn","getAddRowDefaultValues","block","_PlusOutlined","marginTop"],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sources":["@flatbiz/antd/src/editable-table/utils.ts","@flatbiz/antd/src/editable-table/form-item/checkbox-group.tsx","@flatbiz/antd/src/editable-table/form-item/date-picker-wrapper.tsx","@flatbiz/antd/src/editable-table/form-item/date-range-picker-wrapper.tsx","@flatbiz/antd/src/editable-table/form-item/input.tsx","@flatbiz/antd/src/editable-table/form-item/input-number.tsx","@flatbiz/antd/src/editable-table/form-item/radio-group.tsx","@flatbiz/antd/src/editable-table/form-item/selector-wrapper.tsx","@flatbiz/antd/src/editable-table/form-item/switch-wrapper.tsx","@flatbiz/antd/src/editable-table/form-item/text.tsx","@flatbiz/antd/src/editable-table/form-item/textarea.tsx","@flatbiz/antd/src/editable-table/form-item/upload-wrapper.tsx","@flatbiz/antd/src/editable-table/form-item/index.tsx","@flatbiz/antd/src/editable-table/form-list-item/form-list.tsx","@flatbiz/antd/src/editable-table/form-list-item/index.tsx","@flatbiz/antd/src/editable-table/editable-table.tsx"],"sourcesContent":["import { FieldSingleConfig } from './type';\n\nexport const getEditable = (editable: FieldSingleConfig['editable'], tableRowIndex: number) => {\n return typeof editable === 'boolean' ? editable : editable?.({ tableRowIndex });\n};\n","import { classNames } from '@dimjs/utils';\nimport { LabelValueItem, TAny } from '@flatbiz/utils';\nimport { hooks } from '@wove/react';\nimport { Checkbox, Form } from 'antd';\nimport { useMemo } from 'react';\nimport { tableCellRender } from '../../table-cell-render';\nimport { EditableCheckboxGroupConfig, EditableFormItemProps } from '../type';\n\ntype CheckboxGroupFormItemContent = Omit<EditableFormItemProps, 'formItemProps'> & {\n value?: Array<string | number>;\n onChange?: (value: TAny) => void;\n};\n\nconst CheckboxGroupFormItemContent = (props: CheckboxGroupFormItemContent) => {\n const { editableConfig, editable, render } = props.fieldConfig;\n const editableComptProps = (editableConfig as EditableCheckboxGroupConfig).editableComptProps;\n const options = useMemo(\n () => (editableComptProps.options || []) as LabelValueItem[],\n [editableComptProps.options],\n );\n const onChange = hooks.useCallbackRef((value) => {\n props.onChange?.(value);\n editableComptProps.onChange?.(value);\n });\n\n if (editable) {\n return <Checkbox.Group {...editableComptProps} value={props.value} onChange={onChange} />;\n }\n\n return (\n <span className=\"editable-checkbox-group-view\">\n {render ? render(props.value, options) : tableCellRender.selectorCell(options)(props.value)}\n </span>\n );\n};\n\nexport const CheckboxGroupFormItem = (props: EditableFormItemProps) => {\n const { formItemProps } = props.fieldConfig;\n\n return (\n <Form.Item\n {...formItemProps}\n name={props.name}\n className={classNames('editable-checkbox-group-form-item', formItemProps?.className)}\n >\n <CheckboxGroupFormItemContent {...props} />\n </Form.Item>\n );\n};\n","import { classNames } from '@dimjs/utils';\nimport { Form } from 'antd';\nimport { DatePickerWrapper } from '../../date-picker-wrapper';\nimport { EditableDatePickerWrapperConfig, EditableFormItemProps } from '../type';\n\nexport const DatePickerWrapperFormItem = (props: EditableFormItemProps) => {\n const { formItemProps, editableConfig } = props.fieldConfig;\n return (\n <Form.Item\n {...formItemProps}\n name={props.name}\n className={classNames('editable-date-picker-wraper-form-item', formItemProps?.className)}\n >\n <DatePickerWrapper\n allowClear\n {...(editableConfig as EditableDatePickerWrapperConfig).editableComptProps}\n />\n </Form.Item>\n );\n};\n","import { isArray } from '@dimjs/lang';\nimport { classNames } from '@dimjs/utils';\nimport { hooks } from '@wove/react';\nimport { Form } from 'antd';\nimport { useMemo } from 'react';\nimport { DateRangePickerWrapper } from '../../date-range-picker-wrapper';\nimport { EditableDateRangePickerWrapperConfig, EditableFormItemProps } from '../type';\n\ntype FormItemContentProps = Omit<EditableFormItemProps, 'formItemProps'> & {\n value?: [string, string];\n onChange?: (value?: [string, string]) => void;\n};\n\nconst FormItemContent = (props: FormItemContentProps) => {\n const { editableConfig, editable, render } = props.fieldConfig;\n const editableComptProps = (editableConfig as EditableDateRangePickerWrapperConfig).editableComptProps;\n\n const onChange = hooks.useCallbackRef((data) => {\n props.onChange?.(data);\n editableComptProps?.onChange?.(data);\n });\n\n const viewLabel = useMemo(() => {\n const value = isArray(props.value) ? props.value : ([] as any[]);\n if (editable) return undefined;\n return value.join('~');\n }, [editable, props.value]);\n\n if (editable) {\n return (\n <DateRangePickerWrapper allowClear {...editableComptProps} value={props.value} onChange={onChange} />\n );\n }\n return <span className=\"editable-date-range-picker-view\">{render ? render(props.value) : viewLabel}</span>;\n};\n\nexport const DateRangePickerWrapperFormItem = (props: EditableFormItemProps) => {\n const { formItemProps } = props.fieldConfig;\n return (\n <Form.Item\n {...formItemProps}\n name={props.name}\n className={classNames('editable-date-range-picker-wraper-form-item', formItemProps?.className)}\n >\n <FormItemContent {...props} />\n </Form.Item>\n );\n};\n","import { Form } from 'antd';\nimport { InputWrapper } from '../../input-wrapper';\nimport { EditableFormItemProps, EditableInputConfig } from '../type';\n\nexport const InputFormItem = (props: EditableFormItemProps) => {\n const { formItemProps, editableConfig } = props.fieldConfig;\n\n return (\n <Form.Item {...formItemProps} name={props.name}>\n <InputWrapper allowClear {...(editableConfig as EditableInputConfig).editableComptProps} />\n </Form.Item>\n );\n};\n","import { classNames } from '@dimjs/utils';\nimport { Form, InputNumber } from 'antd';\nimport { EditableFormItemProps, EditableInputNumberConfig } from '../type';\n\nexport const InputNumberFormItem = (props: EditableFormItemProps) => {\n const { formItemProps, editableConfig } = props.fieldConfig;\n return (\n <Form.Item\n {...formItemProps}\n name={props.name}\n className={classNames('editable-input-number-form-item', formItemProps?.className)}\n >\n <InputNumber {...(editableConfig as EditableInputNumberConfig).editableComptProps} />\n </Form.Item>\n );\n};\n","import { classNames } from '@dimjs/utils';\nimport { LabelValueItem } from '@flatbiz/utils';\nimport { hooks } from '@wove/react';\nimport { Form, Radio } from 'antd';\nimport { useMemo } from 'react';\nimport { tableCellRender } from '../../table-cell-render';\nimport { EditableFormItemProps, EditableRadioGroupConfig } from '../type';\n\ntype RadioGroupFormItemContent = Omit<EditableFormItemProps, 'formItemProps'> & {\n value?: string | number;\n onChange?: (value: string | number) => void;\n};\n\nconst RadioGroupFormItemContent = (props: RadioGroupFormItemContent) => {\n const { editableConfig, editable, render } = props.fieldConfig;\n const editableComptProps = (editableConfig as EditableRadioGroupConfig).editableComptProps;\n const options = useMemo(\n () => (editableComptProps.options || []) as LabelValueItem<string | number>[],\n [editableComptProps.options],\n );\n\n const onChange = hooks.useCallbackRef((e) => {\n props.onChange?.(e.target.value as string | number);\n editableComptProps.onChange?.(e);\n });\n\n if (editable) {\n return <Radio.Group {...editableComptProps} value={props.value} onChange={onChange} />;\n }\n return (\n <span className=\"editable-radio-group-view\">\n {render ? render(props.value, options) : tableCellRender.selectorCell(options)(props.value)}\n </span>\n );\n};\n\nexport const RadioGroupFormItem = (props: EditableFormItemProps) => {\n const { formItemProps } = props.fieldConfig;\n\n return (\n <Form.Item\n {...formItemProps}\n name={props.name}\n className={classNames('editable-radio-group-form-item', formItemProps?.className)}\n >\n <RadioGroupFormItemContent {...props} />\n </Form.Item>\n );\n};\n","import { isArray } from '@dimjs/lang';\nimport { classNames } from '@dimjs/utils';\nimport { arrayField2LabelValue, LabelValueItem, TAny, TPlainObject } from '@flatbiz/utils';\nimport { hooks } from '@wove/react';\nimport { Form, Tag } from 'antd';\nimport { Fragment, useEffect, useState } from 'react';\nimport { SelectorWrapper } from '../../selector-wrapper';\nimport { EditableFormItemProps, EditableSelectWrapperConfig } from '../type';\n\ntype FormItemContentProps = Omit<EditableFormItemProps, 'formItemProps'> & {\n value?: string | number | Array<string | number>;\n onChange?: (value: TAny) => void;\n};\n\nconst FormItemContent = (props: FormItemContentProps) => {\n const { editableConfig, editable, render } = props.fieldConfig;\n const editableComptProps = (editableConfig as EditableSelectWrapperConfig).editableComptProps;\n const [selectorList, setSelectorList] = useState<LabelValueItem[]>([]);\n const [viewLabelList, setviewLabelList] = useState<LabelValueItem[]>([]);\n\n useEffect(() => {\n if (!editable) {\n const value = isArray(props.value) ? props.value : props.value === undefined ? [] : [props.value];\n if (selectorList.length === 0) {\n setviewLabelList(value.map((item) => ({ label: item as string, value: item })));\n }\n const returnList = [] as LabelValueItem[];\n value.forEach((item) => {\n const target = selectorList.find((temp) => temp.value === item);\n returnList.push(target ? target : { label: String(item), value: item });\n });\n setviewLabelList(returnList);\n }\n }, [editable, editableComptProps.fieldNames, props.value, selectorList]);\n\n const onSelectorListAllChange = hooks.useCallbackRef((dataList: TPlainObject[]) => {\n setSelectorList(arrayField2LabelValue(dataList || [], editableComptProps.fieldNames));\n });\n\n const onChange = hooks.useCallbackRef((value, selectList) => {\n props.onChange?.(value);\n editableComptProps.onChange?.(value, selectList);\n });\n\n if (editable) {\n return (\n <SelectorWrapper\n {...editableComptProps}\n value={props.value}\n onChange={onChange}\n onSelectorListAllChange={onSelectorListAllChange}\n />\n );\n }\n return (\n <Fragment>\n <div style={{ display: 'none' }}>\n <SelectorWrapper {...editableComptProps} onSelectorListAllChange={onSelectorListAllChange} />\n </div>\n <span className=\"editable-selector-view\">\n {render\n ? render(props.value, selectorList)\n : viewLabelList.map((tag, index) => (\n <Tag key={index} color={'geekblue'}>\n {tag.label}\n </Tag>\n ))}\n </span>\n </Fragment>\n );\n};\n\nexport const SelectorWrapperFormItem = (props: EditableFormItemProps) => {\n const { formItemProps } = props.fieldConfig;\n\n return (\n <Form.Item\n {...formItemProps}\n name={props.name}\n className={classNames('editable-selector-wrapper-form-item', formItemProps?.className)}\n >\n <FormItemContent {...props} />\n </Form.Item>\n );\n};\n","import { classNames } from '@dimjs/utils';\nimport { hooks } from '@wove/react';\nimport { Form, Tag } from 'antd';\nimport { useMemo } from 'react';\nimport { SwitchWrapper } from '../../switch-wrapper';\nimport { EditableFormItemProps, EditableSwitchWrapperConfig } from '../type';\n\ntype FormItemContentProps = Omit<EditableFormItemProps, 'formItemProps'> & {\n value?: string | number | boolean;\n onChange?: (value?: string | number | boolean) => void;\n};\n\nconst FormItemContent = (props: FormItemContentProps) => {\n const { editableConfig, editable, render } = props.fieldConfig;\n const editableComptProps = (editableConfig as EditableSwitchWrapperConfig).editableComptProps;\n const onChange = hooks.useCallbackRef((data) => {\n props.onChange?.(data);\n editableComptProps?.onChange?.(data);\n });\n\n const viewData = useMemo(() => {\n const defaultCheckedText = editableComptProps.checkedChildren || '是';\n const defaultUnCheckedText = editableComptProps.unCheckedChildren || '否';\n\n return {\n checkedText: defaultCheckedText,\n unCheckedText: defaultUnCheckedText,\n };\n }, [editableComptProps.checkedChildren, editableComptProps.unCheckedChildren]);\n\n if (editable) {\n return <SwitchWrapper {...editableComptProps} value={props.value} onChange={onChange} />;\n }\n if (render) {\n return <span className=\"editable-switch-wrapper-view\">{render(props.value)}</span>;\n }\n return (\n <span className=\"editable-switch-wrapper-view\">\n {editableComptProps.checkedValue == props.value ? (\n <Tag color=\"geekblue\" style={{ marginRight: 0 }}>\n {viewData.checkedText}\n </Tag>\n ) : (\n <Tag style={{ marginRight: 0 }}>{viewData.unCheckedText}</Tag>\n )}\n </span>\n );\n};\n\nexport const SwitchWrapperFormItem = (props: EditableFormItemProps) => {\n const { formItemProps } = props.fieldConfig;\n return (\n <Form.Item\n {...formItemProps}\n name={props.name}\n className={classNames('editable-switch-wrapper-form-item', formItemProps?.className)}\n >\n <FormItemContent {...props} />\n </Form.Item>\n );\n};\n","import { isBoolean, isNumber, isString } from '@dimjs/lang';\nimport { Form } from 'antd';\nimport { useMemo } from 'react';\nimport { EditableFormItemProps, FieldSingleConfig } from '../type';\n\nconst FormItemTextContent = (props: {\n value?: string | number;\n name: EditableFormItemProps['name'];\n fieldConfig?: FieldSingleConfig;\n}) => {\n const value = useMemo(() => {\n if (props.fieldConfig?.render) return undefined;\n const isBaseData =\n isString(props.value) || isNumber(props.value) || isBoolean(props.value) || !props.value;\n if (!isBaseData) {\n console.warn(`Form.List name:【${props.name}】数据【${JSON.stringify(props.value)}】不能渲染在页面中`);\n }\n return isBaseData ? props.value : undefined;\n }, [props.fieldConfig?.render, props.name, props.value]);\n const viewText = props.fieldConfig?.render?.(props.value) || value;\n return <span>{viewText}</span>;\n};\n\nexport const TextFormItem = (props: { name: Array<number | string>; fieldConfig?: FieldSingleConfig }) => {\n return (\n <Form.Item noStyle name={props.name}>\n <FormItemTextContent name={props.name} fieldConfig={props.fieldConfig} />\n </Form.Item>\n );\n};\n","import { Form } from 'antd';\nimport { InputTextAreaWrapper } from '../../input-text-area-wrapper';\nimport { EditableFormItemProps, EditableTextareaConfig } from '../type';\n\nexport const TextAreaFormItem = (props: EditableFormItemProps) => {\n const { formItemProps, editableConfig } = props.fieldConfig;\n return (\n <Form.Item {...formItemProps} name={props.name}>\n <InputTextAreaWrapper {...(editableConfig as EditableTextareaConfig).editableComptProps} />\n </Form.Item>\n );\n};\n","import { classNames } from '@dimjs/utils';\nimport { TAny } from '@flatbiz/utils';\nimport { Form } from 'antd';\nimport { UploadWrapper } from '../../upload-wrapper';\nimport { EditableFileUploadConfig, EditableFormItemProps } from '../type';\n\nconst UploadWrapperFormItemContent = (\n props: EditableFormItemProps & { value?: TAny; onChange?: (value?: TAny) => void },\n) => {\n const { editableConfig, render, editable } = props.fieldConfig;\n const { children, ...otherProps } = (editableConfig as EditableFileUploadConfig).editableComptProps;\n if (editable) {\n return (\n <UploadWrapper listType=\"text\" {...otherProps} value={props.value} onChange={props.onChange}>\n {children}\n </UploadWrapper>\n );\n }\n return (\n <div className=\"upload-wrapper-selector-view\">\n {render ? (\n render(props.value)\n ) : (\n <UploadWrapper listType=\"text\" {...otherProps} value={props.value} disabled={true} />\n )}\n </div>\n );\n};\n\nexport const UploadWrapperFormItem = (props: EditableFormItemProps) => {\n const { formItemProps } = props.fieldConfig;\n return (\n <Form.Item\n {...formItemProps}\n name={props.name}\n className={classNames('editable-upload-wrapper-form-item', formItemProps?.className)}\n >\n <UploadWrapperFormItemContent {...props} />\n </Form.Item>\n );\n};\n","import { extend } from '@dimjs/utils';\nimport { FieldSingleConfig } from '../type';\nimport { getEditable } from '../utils';\nimport { CheckboxGroupFormItem } from './checkbox-group';\nimport { DatePickerWrapperFormItem } from './date-picker-wrapper';\nimport { DateRangePickerWrapperFormItem } from './date-range-picker-wrapper';\nimport { InputFormItem } from './input';\nimport { InputNumberFormItem } from './input-number';\nimport { RadioGroupFormItem } from './radio-group';\nimport { SelectorWrapperFormItem } from './selector-wrapper';\nimport { SwitchWrapperFormItem } from './switch-wrapper';\nimport { TextFormItem } from './text';\nimport { TextAreaFormItem } from './textarea';\nimport { UploadWrapperFormItem } from './upload-wrapper';\n\nexport type FormItemAdapterProps = {\n name: Array<number | string>;\n completeName: Array<number | string>;\n fieldConfig: FieldSingleConfig;\n tableRowIndex: number;\n};\n\nexport const FormItemAdapter = (props: FormItemAdapterProps) => {\n const { editableConfig, editable } = props.fieldConfig;\n const newEditable = getEditable(editable, props.tableRowIndex);\n const fieldConfig = extend({}, props.fieldConfig, { editable: newEditable });\n\n const commomProps = {\n name: props.name,\n fieldConfig,\n };\n\n if (editableConfig?.type === 'input' && newEditable) {\n return <InputFormItem {...commomProps} />;\n } else if (editableConfig?.type === 'inputNumber' && newEditable) {\n return <InputNumberFormItem {...commomProps} />;\n } else if (editableConfig?.type === 'textArea' && newEditable) {\n return <TextAreaFormItem {...commomProps} />;\n } else if (editableConfig?.type === 'datePickerWrapper' && newEditable) {\n return <DatePickerWrapperFormItem {...commomProps} />;\n } else if (editableConfig?.type === 'dateRangePickerWrapper') {\n return <DateRangePickerWrapperFormItem {...commomProps} />;\n } else if (editableConfig?.type === 'selectorWrapper') {\n return <SelectorWrapperFormItem {...commomProps} />;\n } else if (editableConfig?.type === 'checkboxGroup') {\n return <CheckboxGroupFormItem {...commomProps} />;\n } else if (editableConfig?.type === 'radioGroup') {\n return <RadioGroupFormItem {...commomProps} />;\n } else if (editableConfig?.type === 'uploadWrapper') {\n return <UploadWrapperFormItem {...commomProps} />;\n } else if (editableConfig?.type === 'switchWrapper') {\n return <SwitchWrapperFormItem {...commomProps} />;\n } else if (editableConfig?.type === 'custom') {\n return editableConfig.editableComptProps({\n name: props.name,\n editable: newEditable,\n completeName: props.completeName,\n tableRowIndex: props.tableRowIndex,\n });\n }\n\n return <TextFormItem {...commomProps} />;\n};\n","import { DeleteOutlined } from '@ant-design/icons';\nimport { classNames } from '@dimjs/utils';\nimport { Button, Form, Space } from 'antd';\nimport { FormItemAdapter } from '../form-item';\nimport { FormListConfig } from '../type';\nimport { getEditable } from '../utils';\n\nexport type FormListProps = {\n name: Array<number | string>;\n formListConfig: FormListConfig;\n tableRowIndex: number;\n completeName: (string | number)[];\n};\n\nexport const FormList = (props: FormListProps) => {\n const from = Form.useFormInstance();\n const {\n onFormListBeforeRender,\n editableConfigList,\n onFormListAfterRender,\n onFormListItemBeforeRender,\n onFormListItemAfterRender,\n deleteOperateRender,\n } = props.formListConfig;\n return (\n <Form.List name={props.name}>\n {(fields, { add, remove }) => (\n <>\n {onFormListBeforeRender\n ? onFormListBeforeRender({\n tableRowIndex: props.tableRowIndex,\n add,\n get value() {\n return from.getFieldValue(props.completeName);\n },\n })\n : null}\n {fields.map((fieldChild, index) => {\n const hasEditable = editableConfigList.find((item) =>\n getEditable(item.editable, props.tableRowIndex),\n );\n const className = classNames(\n 'editable-inner-formlist-item',\n `editable-inner-formlist-item-${props.name[1]}`,\n { 'editable-inner-formlist-item_preview': !hasEditable },\n );\n return (\n <div key={index} className={className}>\n {onFormListItemBeforeRender?.({\n add,\n remove: () => {\n remove(index);\n },\n formListItemIndex: index,\n tableRowIndex: props.tableRowIndex,\n get value() {\n return from.getFieldValue([...props.completeName, fieldChild.name]);\n },\n })}\n <Space>\n {editableConfigList.map((fieldItem, index) => {\n return (\n <FormItemAdapter\n name={[fieldChild.name, fieldItem.fieldName]}\n fieldConfig={fieldItem}\n key={index}\n tableRowIndex={props.tableRowIndex}\n completeName={[...props.completeName, fieldChild.name]}\n />\n );\n })}\n {hasEditable ? (\n <DeleteFormListItem\n deleteOperateRender={deleteOperateRender}\n remove={() => {\n remove(index);\n }}\n index={index}\n />\n ) : undefined}\n </Space>\n {onFormListItemAfterRender?.({\n add,\n formListItemIndex: index,\n tableRowIndex: props.tableRowIndex,\n remove: () => {\n remove(index);\n },\n get value() {\n return from.getFieldValue([...props.completeName, fieldChild.name]);\n },\n })}\n </div>\n );\n })}\n {onFormListAfterRender\n ? onFormListAfterRender({\n tableRowIndex: props.tableRowIndex,\n add,\n get value() {\n return from.getFieldValue(props.completeName);\n },\n })\n : null}\n </>\n )}\n </Form.List>\n );\n};\n\nconst DeleteFormListItem = (props: {\n deleteOperateRender: FormListConfig['deleteOperateRender'];\n remove: () => void;\n index: number;\n}) => {\n return (\n <Form.Item>\n {props.deleteOperateRender ? (\n props.deleteOperateRender({ remove: props.remove, formListItemIndex: props.index })\n ) : (\n <Button type=\"link\" danger icon={<DeleteOutlined />} onClick={props.remove}>\n 删除\n </Button>\n )}\n </Form.Item>\n );\n};\n","import { isArray } from '@dimjs/lang';\nimport { Form, Input } from 'antd';\nimport { Fragment } from 'react';\nimport { FormItemAdapter } from '../form-item';\nimport { TextFormItem } from '../form-item/text';\nimport { FieldSingleConfig, FormListConfig } from '../type';\nimport { FormList } from './form-list';\n\nexport type FormListItemProps = {\n name: Array<number | string>;\n fieldConfig?: FieldSingleConfig | FormListConfig;\n tableRowIndex: number;\n completeName: (string | number)[];\n hiddenField?: { dataIndex: string };\n};\n\nexport const FormListItem = (props: FormListItemProps) => {\n if (props.fieldConfig) {\n if (isArray(props.fieldConfig['editableConfigList'])) {\n const formListConfig = props.fieldConfig as FormListConfig;\n return (\n <FormList\n name={props.name}\n completeName={props.completeName}\n formListConfig={formListConfig}\n tableRowIndex={props.tableRowIndex}\n />\n );\n } else {\n return (\n <Fragment>\n <FormItemAdapter\n name={props.name}\n fieldConfig={props.fieldConfig as FieldSingleConfig}\n tableRowIndex={props.tableRowIndex}\n completeName={props.completeName}\n />\n {props.hiddenField ? (\n <Form.Item hidden={true} name={props.hiddenField.dataIndex}>\n <Input />\n </Form.Item>\n ) : null}\n </Fragment>\n );\n }\n }\n return <TextFormItem name={props.name} />;\n};\n","import { PlusOutlined } from '@ant-design/icons';\nimport { classNames } from '@dimjs/utils';\nimport { TAny, toArray, TPlainObject } from '@flatbiz/utils';\nimport { Form, FormListOperation, Table, TableProps } from 'antd';\nimport { FormListFieldData, FormListProps } from 'antd/es/form';\nimport { ColumnsType } from 'antd/es/table';\nimport { forwardRef, isValidElement, ReactElement, useImperativeHandle, useMemo, useRef } from 'react';\nimport { ButtonWrapper } from '../button-wrapper';\nimport { TableTitleTooltip } from '../table-title-tooltip';\nimport { TextSymbolWrapper } from '../text-symbol-wrapper';\nimport { TipsWrapper, TipsWrapperProps } from '../tips-wrapper/tips-wrapper';\nimport { FormListItem } from './form-list-item';\nimport './style.less';\nimport { EditableTableName, EditableTableRecordType, FieldSingleConfig, FormListConfig } from './type';\n\ntype fieldConfigFunctionParams = {\n tableRowIndex: number;\n name: EditableTableName;\n tableRowName: EditableTableName;\n getTableRowData: () => TPlainObject;\n};\n/**\n * antd 默认render功能此处不能使用\n */\nexport type EditableTableColumn = Omit<ColumnsType['0'], 'render'> & {\n /**\n * @description 请使用 tipsWrapperProps 属性配置\n * ```\n * 会在 title 之后展示一个 icon,hover 之后提示一些信息\n * 1. title为string类型、ReactElement有效\n * 2. hoverArea 默认值:icon\n * ```\n */\n tooltip?: string | { content: string; icon?: ReactElement; hoverArea?: 'icon' | 'all' };\n /**\n * 会在 title 之后展示一个 icon\n * ```\n * 1. title为string类型有效\n * 2. 可为icon添加提示效果\n * 3. 可为icon添加点击事件\n * ```\n */\n tipsWrapperProps?: string | TipsWrapperProps;\n dataIndex?: string;\n fieldConfig?:\n | FieldSingleConfig\n | FormListConfig\n | ((data: fieldConfigFunctionParams) => FieldSingleConfig | FormListConfig);\n /** 隐藏域字段 */\n hiddenField?: {\n dataIndex: string;\n };\n /**\n * 渲染中间件,如果renderMiddleware返回值为ReactElement格式,则会终止后续逻辑,fieldConfig配置将失效\n * ```\n * 1. tableRowIndex: 当前row的索引值\n * 2. name: 当前table单元格的form.item的name值\n * 3. operation Form.List的操作函数\n * 4. 对 table children column渲染无效\n * ```\n */\n renderMiddleware?: (item: {\n tableRowIndex: number;\n name: EditableTableName;\n tableRowName: EditableTableName;\n operation: FormListOperation;\n index: number;\n }) => ReactElement | null;\n /** table datasource children column 自定义渲染 */\n tableChildrenColumnRender?: (value: TAny, record: TPlainObject, index: number) => ReactElement | null;\n /** 为表格header中的字段添加必填标识,无验证拦截功能 */\n required?: boolean;\n};\n\nexport type EditableTableProps = {\n name: EditableTableName;\n /**\n * ```\n * antd table属性\n * 1. 新增cellVerticalAlign,单元格竖直方向对齐方式,设置table column onCell属性后失效\n * ```\n */\n tableProps?: Omit<TableProps<EditableTableRecordType>, 'dataSource' | 'columns' | 'rowKey'> & {\n cellVerticalAlign?: 'baseline' | 'middle' | 'top' | 'bottom';\n };\n columns: EditableTableColumn[];\n onTableBeforeRender?: (formListOperation: FormListOperation, nextRowIndex: number) => ReactElement | null;\n /**\n * 设置后,将覆盖底部`新增`按钮\n */\n onTableAfterRender?: (formListOperation: FormListOperation, nextRowIndex: number) => ReactElement | null;\n /**\n * Form.List rules\n * ```\n rules={[\n {\n validator: async (_, names) => {\n if (!names || names.length < 2) {\n return Promise.reject(new Error('At least 2 passengers'));\n }\n },\n },\n ]}\n * ```\n */\n rules?: FormListProps['rules'];\n /** 隐藏底部`新增`按钮,设置 onTableAfterRender后 失效 */\n hiddenFooterBtn?: boolean;\n /** 新增行默认值,自定义onTableAfterRender后失效 */\n getAddRowDefaultValues?: () => TPlainObject;\n /** 空效果显示尺寸,默认值:small */\n emptyShowSize?: 'small' | 'large';\n};\n\nexport type EditableTableRefApi = {\n /** 可用于表格行选择操作时,获取操作列数据 */\n getTableItemDataByFormListItemKey: (key: number) => TPlainObject;\n};\n\n/**\n * 可编辑表格\n * demo:https://fex.qa.tcshuke.com/docs/admin/main/table/row-editable1\n * ```\n * 1. 通过 tableProps 设置Table属性,table size默认:small\n * 2. Table children column 不可编辑\n * 3. 当存在折叠children数据时,组件会在children中内置_isChildrenItem字段\n * 4. 可通过tableChildrenColumnRender自定义渲染 table children column 显示\n * 5. 设置 rowSelection 后,rowSelection.onChange 通过 ref 的 getTableItemDataByFormListItemKey获取数据\n * ```\n */\nexport const EditableTable = forwardRef<EditableTableRefApi, EditableTableProps>((props, ref) => {\n const form = Form.useFormInstance();\n\n const formListFieldsRef = useRef<FormListFieldData[]>([]);\n\n const columns = useMemo(() => {\n if (!props.columns) return [];\n return props.columns.map((columnItem) => {\n const {\n fieldConfig,\n renderMiddleware,\n tableChildrenColumnRender,\n tooltip,\n title,\n tipsWrapperProps,\n required,\n ...otherColumnItem\n } = columnItem;\n const support = isValidElement(title) || typeof title === 'string';\n let titleRender: ReactElement | string;\n if (tipsWrapperProps && support) {\n if (typeof tipsWrapperProps === 'string') {\n titleRender = (\n <TipsWrapper tipType=\"popover\" popoverProps={{ content: tipsWrapperProps }}>\n {title}\n </TipsWrapper>\n );\n } else {\n titleRender = <TipsWrapper {...tipsWrapperProps}>{title}</TipsWrapper>;\n }\n } else if (tooltip) {\n titleRender = <TableTitleTooltip title={title as string} tooltip={tooltip} />;\n } else {\n titleRender = title as string;\n }\n return {\n title: required ? (\n <TextSymbolWrapper text={titleRender} position=\"before\" symbolType=\"required\" />\n ) : (\n titleRender\n ),\n onCell: () => {\n return {\n valign: props.tableProps?.cellVerticalAlign || 'middle',\n };\n },\n ...otherColumnItem,\n render: (_value, record, index) => {\n if (record['_isChildrenItem']) {\n if (tableChildrenColumnRender) {\n return tableChildrenColumnRender(_value, record, index);\n }\n return _value;\n }\n const tableRowName = [...toArray<string | number>(props.name as TAny), record.name];\n const completeName = columnItem.dataIndex ? [...tableRowName, columnItem.dataIndex] : tableRowName;\n const customRender = renderMiddleware?.({\n name: completeName,\n tableRowIndex: record.name,\n operation: record.operation,\n tableRowName,\n index,\n });\n if (customRender) {\n return customRender;\n }\n\n const fieldConfigActual =\n typeof fieldConfig === 'function'\n ? fieldConfig({\n name: completeName,\n tableRowIndex: record.name,\n tableRowName,\n getTableRowData: () => {\n return form.getFieldValue(tableRowName);\n },\n })\n : fieldConfig;\n return (\n <FormListItem\n name={columnItem.dataIndex ? [record.name, columnItem.dataIndex] : [record.name]}\n completeName={completeName}\n fieldConfig={fieldConfigActual}\n tableRowIndex={record.name}\n hiddenField={columnItem.hiddenField}\n />\n );\n },\n };\n }) as ColumnsType<EditableTableRecordType>;\n }, [props.columns, props.name, props.tableProps?.cellVerticalAlign]);\n\n const formListDataSource = Form.useWatch(props.name, form);\n\n useImperativeHandle(ref, () => {\n return {\n getTableItemDataByFormListItemKey: (key) => {\n const target = formListFieldsRef.current.find((item) => item.key === key);\n if (target) {\n return form.getFieldValue([...toArray<string>(props.name), target.name]);\n }\n return undefined;\n },\n };\n });\n\n return (\n <div className={classNames('editable-table', { 'et-empty-show-large': props.emptyShowSize === 'large' })}>\n <Form.List name={props.name} rules={props.rules}>\n {(fields, formListOperation, { errors }) => {\n formListFieldsRef.current = fields;\n return (\n <div\n style={{\n borderRadius: '6px',\n border: errors?.length ? '1px solid #ff4d4f' : '1px solid transparent',\n }}\n >\n {props.onTableBeforeRender ? props.onTableBeforeRender(formListOperation, fields.length) : null}\n <Table\n scroll={{ x: 'max-content' }}\n pagination={false}\n rowKey=\"key\"\n size=\"small\"\n {...props.tableProps}\n dataSource={fields.map((item) => {\n const children = formListDataSource?.[item.name]?.children as TPlainObject[] | undefined;\n if (children) {\n children.forEach((item) => {\n item['_isChildrenItem'] = true;\n });\n }\n return {\n ...item,\n operation: formListOperation,\n children,\n };\n })}\n columns={columns}\n />\n {props.onTableAfterRender ? (\n props.onTableAfterRender(formListOperation, fields.length)\n ) : (\n <ButtonWrapper\n type=\"dashed\"\n hidden={props.hiddenFooterBtn}\n onClick={() => formListOperation.add(props.getAddRowDefaultValues?.())}\n block\n icon={<PlusOutlined />}\n style={{ marginTop: 15 }}\n >\n 新增\n </ButtonWrapper>\n )}\n <Form.ErrorList\n errors={\n errors.length\n ? [\n <div\n style={{\n color: '#ff4d4f',\n padding: '5px',\n }}\n >\n {errors}\n </div>,\n ]\n : undefined\n }\n />\n </div>\n );\n }}\n </Form.List>\n </div>\n );\n});\n"],"names":["getEditable","editable","tableRowIndex","CheckboxGroupFormItemContent","props","_props$fieldConfig","fieldConfig","editableConfig","render","editableComptProps","options","useMemo","onChange","_hooks","useCallbackRef","value","_jsx","Checkbox","Group","_extends","className","children","tableCellRender","selectorCell","CheckboxGroupFormItem","formItemProps","Form","Item","name","_classNames","DatePickerWrapperFormItem","DatePickerWrapper","allowClear","FormItemContent","data","viewLabel","_isArray","undefined","join","DateRangePickerWrapper","DateRangePickerWrapperFormItem","InputFormItem","InputWrapper","InputNumberFormItem","InputNumber","RadioGroupFormItemContent","e","target","Radio","RadioGroupFormItem","_useState","useState","selectorList","setSelectorList","_useState2","viewLabelList","setviewLabelList","useEffect","length","map","item","label","returnList","forEach","find","temp","push","String","fieldNames","onSelectorListAllChange","dataList","arrayField2LabelValue","selectList","SelectorWrapper","_jsxs","Fragment","style","display","tag","index","Tag","color","SelectorWrapperFormItem","viewData","defaultCheckedText","checkedChildren","defaultUnCheckedText","unCheckedChildren","checkedText","unCheckedText","SwitchWrapper","checkedValue","marginRight","SwitchWrapperFormItem","FormItemTextContent","_props$fieldConfig2","_props$fieldConfig3","isBaseData","_isString","_isNumber","_isBoolean","console","warn","JSON","stringify","viewText","TextFormItem","noStyle","TextAreaFormItem","InputTextAreaWrapper","UploadWrapperFormItemContent","_editableComptProps","otherProps","_objectWithoutPropertiesLoose","_excluded","UploadWrapper","listType","disabled","UploadWrapperFormItem","FormItemAdapter","newEditable","_extend","commomProps","type","completeName","FormList","from","useFormInstance","_props$formListConfig","formListConfig","onFormListBeforeRender","editableConfigList","onFormListAfterRender","onFormListItemBeforeRender","onFormListItemAfterRender","deleteOperateRender","List","fields","_ref","add","remove","_Fragment","getFieldValue","fieldChild","hasEditable","formListItemIndex","concat","Space","fieldItem","fieldName","DeleteFormListItem","Button","danger","icon","_DeleteOutlined","onClick","FormListItem","hiddenField","hidden","dataIndex","Input","EditableTable","forwardRef","ref","_props$tableProps2","form","formListFieldsRef","useRef","columns","columnItem","renderMiddleware","tableChildrenColumnRender","tooltip","title","tipsWrapperProps","required","otherColumnItem","support","isValidElement","titleRender","TipsWrapper","tipType","popoverProps","content","TableTitleTooltip","TextSymbolWrapper","text","position","symbolType","onCell","_props$tableProps","valign","tableProps","cellVerticalAlign","_value","record","tableRowName","toArray","customRender","operation","fieldConfigActual","getTableRowData","formListDataSource","useWatch","useImperativeHandle","getTableItemDataByFormListItemKey","key","current","emptyShowSize","rules","formListOperation","errors","borderRadius","border","onTableBeforeRender","Table","scroll","x","pagination","rowKey","size","dataSource","_formListDataSource$i","onTableAfterRender","ButtonWrapper","hiddenFooterBtn","getAddRowDefaultValues","block","_PlusOutlined","marginTop","ErrorList","padding"],"mappings":";sjGAEO,IAAMA,EAAc,SAAdA,EAAeC,EAAyCC,GACnE,cAAcD,IAAa,UAAYA,EAAWA,GAAAA,UAAAA,EAAAA,EAAW,CAAEC,cAAAA,GACjE,ECSA,IAAMC,EAA+B,SAA/BA,EAAgCC,GACpC,IAAAC,EAA6CD,EAAME,YAA3CC,EAAcF,EAAdE,eAAgBN,EAAQI,EAARJ,SAAUO,EAAMH,EAANG,OAClC,IAAMC,EAAsBF,EAA+CE,mBAC3E,IAAMC,EAAUC,GACd,WAAA,OAAOF,EAAmBC,SAAW,EAAE,GACvC,CAACD,EAAmBC,UAEtB,IAAME,EAAWC,EAAMC,gBAAe,SAACC,GACrCX,EAAMQ,UAANR,UAAAA,EAAAA,EAAMQ,SAAWG,GACjBN,EAAmBG,UAAnBH,UAAAA,EAAAA,EAAmBG,SAAWG,EAChC,IAEA,GAAId,EAAU,CACZ,OAAOe,EAACC,EAASC,MAAKC,KAAKV,EAAkB,CAAEM,MAAOX,EAAMW,MAAOH,SAAUA,IAC/E,CAEA,OACEI,EAAA,OAAA,CAAMI,UAAU,+BAA8BC,SAC3Cb,EAASA,EAAOJ,EAAMW,MAAOL,GAAWY,EAAgBC,aAAab,EAA7BY,CAAsClB,EAAMW,QAG3F,EAEO,IAAMS,EAAwB,SAAxBA,EAAyBpB,GACpC,IAAQqB,EAAkBrB,EAAME,YAAxBmB,cAER,OACET,EAACU,EAAKC,KAAIR,KACJM,EAAa,CACjBG,KAAMxB,EAAMwB,KACZR,UAAWS,EAAW,oCAAqCJ,GAAAA,UAAAA,EAAAA,EAAeL,WAAWC,SAErFL,EAACb,EAA4BgB,EAAA,CAAA,EAAKf,MAGxC,EC3CO,IAAM0B,EAA4B,SAA5BA,EAA6B1B,GACxC,IAAAC,EAA0CD,EAAME,YAAxCmB,EAAapB,EAAboB,cAAelB,EAAcF,EAAdE,eACvB,OACES,EAACU,EAAKC,KAAIR,KACJM,EAAa,CACjBG,KAAMxB,EAAMwB,KACZR,UAAWS,EAAW,wCAAyCJ,GAAAA,UAAAA,EAAAA,EAAeL,WAAWC,SAEzFL,EAACe,EAAiBZ,EAAA,CAChBa,WAAU,MACLzB,EAAmDE,uBAIhE,ECNA,IAAMwB,EAAkB,SAAlBA,EAAmB7B,GACvB,IAAAC,EAA6CD,EAAME,YAA3CC,EAAcF,EAAdE,eAAgBN,EAAQI,EAARJ,SAAUO,EAAMH,EAANG,OAClC,IAAMC,EAAsBF,EAAwDE,mBAEpF,IAAMG,EAAWC,EAAMC,gBAAe,SAACoB,GACrC9B,EAAMQ,UAANR,UAAAA,EAAAA,EAAMQ,SAAWsB,GACjBzB,GAAkB,MAAlBA,EAAoBG,UAAQ,UAAA,EAA5BH,EAAoBG,SAAWsB,EACjC,IAEA,IAAMC,EAAYxB,GAAQ,WACxB,IAAMI,EAAQqB,EAAQhC,EAAMW,OAASX,EAAMW,MAAS,GACpD,GAAId,EAAU,OAAOoC,UACrB,OAAOtB,EAAMuB,KAAK,IACnB,GAAE,CAACrC,EAAUG,EAAMW,QAEpB,GAAId,EAAU,CACZ,OACEe,EAACuB,EAAsBpB,EAAA,CAACa,WAAU,MAAKvB,EAAkB,CAAEM,MAAOX,EAAMW,MAAOH,SAAUA,IAE7F,CACA,OAAOI,EAAA,OAAA,CAAMI,UAAU,kCAAiCC,SAAEb,EAASA,EAAOJ,EAAMW,OAASoB,GAC3F,EAEO,IAAMK,EAAiC,SAAjCA,EAAkCpC,GAC7C,IAAQqB,EAAkBrB,EAAME,YAAxBmB,cACR,OACET,EAACU,EAAKC,KAAIR,KACJM,EAAa,CACjBG,KAAMxB,EAAMwB,KACZR,UAAWS,EAAW,8CAA+CJ,GAAAA,UAAAA,EAAAA,EAAeL,WAAWC,SAE/FL,EAACiB,EAAed,EAAA,CAAA,EAAKf,MAG3B,EC3CO,IAAMqC,EAAgB,SAAhBA,EAAiBrC,GAC5B,IAAAC,EAA0CD,EAAME,YAAxCmB,EAAapB,EAAboB,cAAelB,EAAcF,EAAdE,eAEvB,OACES,EAACU,EAAKC,KAAIR,KAAKM,EAAa,CAAEG,KAAMxB,EAAMwB,KAAKP,SAC7CL,EAAC0B,EAAYvB,EAAA,CAACa,WAAU,MAAMzB,EAAuCE,uBAG3E,ECRO,IAAMkC,EAAsB,SAAtBA,EAAuBvC,GAClC,IAAAC,EAA0CD,EAAME,YAAxCmB,EAAapB,EAAboB,cAAelB,EAAcF,EAAdE,eACvB,OACES,EAACU,EAAKC,KAAIR,KACJM,EAAa,CACjBG,KAAMxB,EAAMwB,KACZR,UAAWS,EAAW,kCAAmCJ,GAAAA,UAAAA,EAAAA,EAAeL,WAAWC,SAEnFL,EAAC4B,EAAWzB,EAAMZ,CAAAA,EAAAA,EAA6CE,uBAGrE,ECFA,IAAMoC,EAA4B,SAA5BA,EAA6BzC,GACjC,IAAAC,EAA6CD,EAAME,YAA3CC,EAAcF,EAAdE,eAAgBN,EAAQI,EAARJ,SAAUO,EAAMH,EAANG,OAClC,IAAMC,EAAsBF,EAA4CE,mBACxE,IAAMC,EAAUC,GACd,WAAA,OAAOF,EAAmBC,SAAW,EAAE,GACvC,CAACD,EAAmBC,UAGtB,IAAME,EAAWC,EAAMC,gBAAe,SAACgC,GACrC1C,EAAMQ,UAANR,UAAAA,EAAAA,EAAMQ,SAAWkC,EAAEC,OAAOhC,OAC1BN,EAAmBG,UAAnBH,UAAAA,EAAAA,EAAmBG,SAAWkC,EAChC,IAEA,GAAI7C,EAAU,CACZ,OAAOe,EAACgC,EAAM9B,MAAKC,KAAKV,EAAkB,CAAEM,MAAOX,EAAMW,MAAOH,SAAUA,IAC5E,CACA,OACEI,EAAA,OAAA,CAAMI,UAAU,4BAA2BC,SACxCb,EAASA,EAAOJ,EAAMW,MAAOL,GAAWY,EAAgBC,aAAab,EAA7BY,CAAsClB,EAAMW,QAG3F,EAEO,IAAMkC,GAAqB,SAArBA,EAAsB7C,GACjC,IAAQqB,EAAkBrB,EAAME,YAAxBmB,cAER,OACET,EAACU,EAAKC,KAAIR,KACJM,EAAa,CACjBG,KAAMxB,EAAMwB,KACZR,UAAWS,EAAW,iCAAkCJ,GAAAA,UAAAA,EAAAA,EAAeL,WAAWC,SAElFL,EAAC6B,EAAyB1B,EAAA,CAAA,EAAKf,MAGrC,EClCA,IAAM6B,GAAkB,SAAlBA,EAAmB7B,GACvB,IAAAC,EAA6CD,EAAME,YAA3CC,EAAcF,EAAdE,eAAgBN,EAAQI,EAARJ,SAAUO,EAAMH,EAANG,OAClC,IAAMC,EAAsBF,EAA+CE,mBAC3E,IAAAyC,EAAwCC,EAA2B,IAA5DC,EAAYF,EAAA,GAAEG,EAAeH,EAAA,GACpC,IAAAI,EAA0CH,EAA2B,IAA9DI,EAAaD,EAAA,GAAEE,EAAgBF,EAAA,GAEtCG,GAAU,WACR,IAAKxD,EAAU,CACb,IAAMc,EAAQqB,EAAQhC,EAAMW,OAASX,EAAMW,MAAQX,EAAMW,QAAUsB,UAAY,GAAK,CAACjC,EAAMW,OAC3F,GAAIqC,EAAaM,SAAW,EAAG,CAC7BF,EAAiBzC,EAAM4C,KAAI,SAACC,GAAI,MAAM,CAAEC,MAAOD,EAAgB7C,MAAO6C,EAAO,IAC/E,CACA,IAAME,EAAa,GACnB/C,EAAMgD,SAAQ,SAACH,GACb,IAAMb,EAASK,EAAaY,MAAK,SAACC,GAAI,OAAKA,EAAKlD,QAAU6C,KAC1DE,EAAWI,KAAKnB,EAASA,EAAS,CAAEc,MAAOM,OAAOP,GAAO7C,MAAO6C,GAClE,IACAJ,EAAiBM,EACnB,CACF,GAAG,CAAC7D,EAAUQ,EAAmB2D,WAAYhE,EAAMW,MAAOqC,IAE1D,IAAMiB,EAA0BxD,EAAMC,gBAAe,SAACwD,GACpDjB,EAAgBkB,EAAsBD,GAAY,GAAI7D,EAAmB2D,YAC3E,IAEA,IAAMxD,EAAWC,EAAMC,gBAAe,SAACC,EAAOyD,GAC5CpE,EAAMQ,UAANR,UAAAA,EAAAA,EAAMQ,SAAWG,GACjBN,EAAmBG,UAAQ,UAAA,EAA3BH,EAAmBG,SAAWG,EAAOyD,EACvC,IAEA,GAAIvE,EAAU,CACZ,OACEe,EAACyD,EAAetD,KACVV,EAAkB,CACtBM,MAAOX,EAAMW,MACbH,SAAUA,EACVyD,wBAAyBA,IAG/B,CACA,OACEK,EAACC,EAAQ,CAAAtD,UACPL,EAAA,MAAA,CAAK4D,MAAO,CAAEC,QAAS,QAASxD,SAC9BL,EAACyD,EAAetD,KAAKV,EAAkB,CAAE4D,wBAAyBA,OAEpErD,EAAA,OAAA,CAAMI,UAAU,yBAAwBC,SACrCb,EACGA,EAAOJ,EAAMW,MAAOqC,GACpBG,EAAcI,KAAI,SAACmB,EAAKC,GAAK,OAC3B/D,EAACgE,EAAG,CAAaC,MAAO,WAAW5D,SAChCyD,EAAIjB,OADGkB,UAOxB,EAEO,IAAMG,GAA0B,SAA1BA,EAA2B9E,GACtC,IAAQqB,EAAkBrB,EAAME,YAAxBmB,cAER,OACET,EAACU,EAAKC,KAAIR,KACJM,EAAa,CACjBG,KAAMxB,EAAMwB,KACZR,UAAWS,EAAW,sCAAuCJ,GAAAA,UAAAA,EAAAA,EAAeL,WAAWC,SAEvFL,EAACiB,GAAed,EAAA,CAAA,EAAKf,MAG3B,ECxEA,IAAM6B,GAAkB,SAAlBA,EAAmB7B,GACvB,IAAAC,EAA6CD,EAAME,YAA3CC,EAAcF,EAAdE,eAAgBN,EAAQI,EAARJ,SAAUO,EAAMH,EAANG,OAClC,IAAMC,EAAsBF,EAA+CE,mBAC3E,IAAMG,EAAWC,EAAMC,gBAAe,SAACoB,GACrC9B,EAAMQ,UAANR,UAAAA,EAAAA,EAAMQ,SAAWsB,GACjBzB,GAAkB,MAAlBA,EAAoBG,UAAQ,UAAA,EAA5BH,EAAoBG,SAAWsB,EACjC,IAEA,IAAMiD,EAAWxE,GAAQ,WACvB,IAAMyE,EAAqB3E,EAAmB4E,iBAAmB,IACjE,IAAMC,EAAuB7E,EAAmB8E,mBAAqB,IAErE,MAAO,CACLC,YAAaJ,EACbK,cAAeH,EAElB,GAAE,CAAC7E,EAAmB4E,gBAAiB5E,EAAmB8E,oBAE3D,GAAItF,EAAU,CACZ,OAAOe,EAAC0E,EAAavE,KAAKV,EAAkB,CAAEM,MAAOX,EAAMW,MAAOH,SAAUA,IAC9E,CACA,GAAIJ,EAAQ,CACV,OAAOQ,EAAA,OAAA,CAAMI,UAAU,+BAA8BC,SAAEb,EAAOJ,EAAMW,QACtE,CACA,OACEC,EAAA,OAAA,CAAMI,UAAU,+BAA8BC,SAC3CZ,EAAmBkF,cAAgBvF,EAAMW,MACxCC,EAACgE,EAAG,CAACC,MAAM,WAAWL,MAAO,CAAEgB,YAAa,GAAIvE,SAC7C8D,EAASK,cAGZxE,EAACgE,EAAG,CAACJ,MAAO,CAAEgB,YAAa,GAAIvE,SAAE8D,EAASM,iBAIlD,EAEO,IAAMI,GAAwB,SAAxBA,EAAyBzF,GACpC,IAAQqB,EAAkBrB,EAAME,YAAxBmB,cACR,OACET,EAACU,EAAKC,KAAIR,KACJM,EAAa,CACjBG,KAAMxB,EAAMwB,KACZR,UAAWS,EAAW,oCAAqCJ,GAAAA,UAAAA,EAAAA,EAAeL,WAAWC,SAErFL,EAACiB,GAAed,EAAA,CAAA,EAAKf,MAG3B,ECvDA,IAAM0F,GAAsB,SAAtBA,EAAuB1F,GAIvB,IAAA2F,EAAAC,EACJ,IAAMjF,EAAQJ,GAAQ,WAAM,IAAAN,EAC1B,IAAAA,EAAID,EAAME,cAAND,MAAAA,EAAmBG,OAAQ,OAAO6B,UACtC,IAAM4D,EACJC,EAAS9F,EAAMW,QAAUoF,EAAS/F,EAAMW,QAAUqF,EAAUhG,EAAMW,SAAWX,EAAMW,MACrF,IAAKkF,EAAY,CACfI,QAAQC,KAAI,mBAAoBlG,EAAMwB,KAAW2E,OAAAA,KAAKC,UAAUpG,EAAMW,mBACxE,CACA,OAAOkF,EAAa7F,EAAMW,MAAQsB,SACnC,GAAE,EAAA0D,EAAC3F,EAAME,0BAANyF,EAAmBvF,OAAQJ,EAAMwB,KAAMxB,EAAMW,QACjD,IAAM0F,IAAWT,EAAA5F,EAAME,cAAW,MAAjB0F,EAAmBxF,QAAnBwF,UAAAA,EAAAA,EAAmBxF,OAASJ,EAAMW,SAAUA,EAC7D,OAAOC,EAAA,OAAA,CAAAK,SAAOoF,GAChB,EAEO,IAAMC,GAAe,SAAfA,EAAgBtG,GAC3B,OACEY,EAACU,EAAKC,KAAI,CAACgF,QAAO,KAAC/E,KAAMxB,EAAMwB,KAAKP,SAClCL,EAAC8E,GAAmB,CAAClE,KAAMxB,EAAMwB,KAAMtB,YAAaF,EAAME,eAGhE,ECzBO,IAAMsG,GAAmB,SAAnBA,EAAoBxG,GAC/B,IAAAC,EAA0CD,EAAME,YAAxCmB,EAAapB,EAAboB,cAAelB,EAAcF,EAAdE,eACvB,OACES,EAACU,EAAKC,KAAIR,KAAKM,EAAa,CAAEG,KAAMxB,EAAMwB,KAAKP,SAC7CL,EAAC6F,EAAoB1F,EAAMZ,CAAAA,EAAAA,EAA0CE,uBAG3E,sBCLA,IAAMqG,GAA+B,SAA/BA,EACJ1G,GAEA,IAAAC,EAA6CD,EAAME,YAA3CC,EAAcF,EAAdE,eAAgBC,EAAMH,EAANG,OAAQP,EAAQI,EAARJ,SAChC,IAAA8G,EAAqCxG,EAA4CE,mBAAzEY,EAAQ0F,EAAR1F,SAAa2F,EAAUC,EAAAF,EAAAG,IAC/B,GAAIjH,EAAU,CACZ,OACEe,EAACmG,EAAahG,EAAA,CAACiG,SAAS,QAAWJ,EAAU,CAAEjG,MAAOX,EAAMW,MAAOH,SAAUR,EAAMQ,SAASS,SACzFA,IAGP,CACA,OACEL,EAAA,MAAA,CAAKI,UAAU,+BAA8BC,SAC1Cb,EACCA,EAAOJ,EAAMW,OAEbC,EAACmG,EAAahG,EAAA,CAACiG,SAAS,QAAWJ,EAAU,CAAEjG,MAAOX,EAAMW,MAAOsG,SAAU,SAIrF,EAEO,IAAMC,GAAwB,SAAxBA,EAAyBlH,GACpC,IAAQqB,EAAkBrB,EAAME,YAAxBmB,cACR,OACET,EAACU,EAAKC,KAAIR,KACJM,EAAa,CACjBG,KAAMxB,EAAMwB,KACZR,UAAWS,EAAW,oCAAqCJ,GAAAA,UAAAA,EAAAA,EAAeL,WAAWC,SAErFL,EAAC8F,GAA4B3F,EAAA,CAAA,EAAKf,MAGxC,EClBO,IAAMmH,GAAkB,SAAlBA,EAAmBnH,GAC9B,IAAAC,EAAqCD,EAAME,YAAnCC,EAAcF,EAAdE,eAAgBN,EAAQI,EAARJ,SACxB,IAAMuH,EAAcxH,EAAYC,EAAUG,EAAMF,eAChD,IAAMI,EAAcmH,EAAO,GAAIrH,EAAME,YAAa,CAAEL,SAAUuH,IAE9D,IAAME,EAAc,CAClB9F,KAAMxB,EAAMwB,KACZtB,YAAAA,GAGF,IAAIC,GAAc,UAAA,EAAdA,EAAgBoH,QAAS,SAAWH,EAAa,CACnD,OAAOxG,EAACyB,EAAatB,EAAKuG,CAAAA,EAAAA,GAC5B,MAAO,IAAInH,GAAAA,UAAAA,EAAAA,EAAgBoH,QAAS,eAAiBH,EAAa,CAChE,OAAOxG,EAAC2B,EAAmBxB,EAAKuG,CAAAA,EAAAA,GAClC,MAAO,IAAInH,GAAAA,UAAAA,EAAAA,EAAgBoH,QAAS,YAAcH,EAAa,CAC7D,OAAOxG,EAAC4F,GAAgBzF,EAAKuG,CAAAA,EAAAA,GAC/B,MAAO,IAAInH,GAAAA,UAAAA,EAAAA,EAAgBoH,QAAS,qBAAuBH,EAAa,CACtE,OAAOxG,EAACc,EAAyBX,EAAKuG,CAAAA,EAAAA,SACjC,IAAInH,GAAc,UAAA,EAAdA,EAAgBoH,QAAS,yBAA0B,CAC5D,OAAO3G,EAACwB,EAA8BrB,EAAKuG,CAAAA,EAAAA,SACtC,IAAInH,GAAc,UAAA,EAAdA,EAAgBoH,QAAS,kBAAmB,CACrD,OAAO3G,EAACkE,GAAuB/D,EAAKuG,CAAAA,EAAAA,SAC/B,IAAInH,GAAc,UAAA,EAAdA,EAAgBoH,QAAS,gBAAiB,CACnD,OAAO3G,EAACQ,EAAqBL,EAAKuG,CAAAA,EAAAA,SAC7B,IAAInH,GAAc,UAAA,EAAdA,EAAgBoH,QAAS,aAAc,CAChD,OAAO3G,EAACiC,GAAkB9B,EAAKuG,CAAAA,EAAAA,SAC1B,IAAInH,GAAc,UAAA,EAAdA,EAAgBoH,QAAS,gBAAiB,CACnD,OAAO3G,EAACsG,GAAqBnG,EAAKuG,CAAAA,EAAAA,SAC7B,IAAInH,GAAc,UAAA,EAAdA,EAAgBoH,QAAS,gBAAiB,CACnD,OAAO3G,EAAC6E,GAAqB1E,EAAKuG,CAAAA,EAAAA,SAC7B,IAAInH,GAAc,UAAA,EAAdA,EAAgBoH,QAAS,SAAU,CAC5C,OAAOpH,EAAeE,mBAAmB,CACvCmB,KAAMxB,EAAMwB,KACZ3B,SAAUuH,EACVI,aAAcxH,EAAMwH,aACpB1H,cAAeE,EAAMF,eAEzB,CAEA,OAAOc,EAAC0F,GAAYvF,EAAKuG,CAAAA,EAAAA,GAC3B,EChDO,IAAMG,GAAW,SAAXA,EAAYzH,GACvB,IAAM0H,EAAOpG,EAAKqG,kBAClB,IAAAC,EAOI5H,EAAM6H,eANRC,EAAsBF,EAAtBE,uBACAC,EAAkBH,EAAlBG,mBACAC,EAAqBJ,EAArBI,sBACAC,EAA0BL,EAA1BK,2BACAC,EAAyBN,EAAzBM,0BACAC,EAAmBP,EAAnBO,oBAEF,OACEvH,EAACU,EAAK8G,KAAI,CAAC5G,KAAMxB,EAAMwB,KAAKP,SACzB,SAAAA,EAACoH,EAAMC,GAAA,IAAIC,EAAGD,EAAHC,IAAKC,EAAMF,EAANE,OAAM,OACrBlE,EAAAmE,EAAA,CAAAxH,SACG6G,CAAAA,EACGA,EAAuB,CACrBhI,cAAeE,EAAMF,cACrByI,IAAAA,EACA,SAAI5H,GACF,OAAO+G,EAAKgB,cAAc1I,EAAMwH,aAClC,IAEF,KACHa,EAAO9E,KAAI,SAACoF,EAAYhE,GACvB,IAAMiE,EAAcb,EAAmBnE,MAAK,SAACJ,GAAI,OAC/C5D,EAAY4D,EAAK3D,SAAUG,EAAMF,cAAc,IAEjD,IAAMkB,EAAYS,EAChB,+BAA8B,gCACEzB,EAAMwB,KAAK,GAC3C,CAAE,wCAAyCoH,IAE7C,OACEtE,EAAA,MAAA,CAAiBtD,UAAWA,EAAUC,SACnCgH,CAAAA,GAAAA,UAAAA,EAAAA,EAA6B,CAC5BM,IAAAA,EACAC,OAAQ,SAAAA,IACNA,EAAO7D,EACR,EACDkE,kBAAmBlE,EACnB7E,cAAeE,EAAMF,cACrB,SAAIa,GACF,OAAO+G,EAAKgB,cAAa,GAAAI,OAAK9I,EAAMwH,aAAcmB,CAAAA,EAAWnH,OAC/D,IAEF8C,EAACyE,EAAK,CAAA9H,SAAA,CACH8G,EAAmBxE,KAAI,SAACyF,EAAWrE,GAClC,OACE/D,EAACuG,GAAe,CACd3F,KAAM,CAACmH,EAAWnH,KAAMwH,EAAUC,WAClC/I,YAAa8I,EAEblJ,cAAeE,EAAMF,cACrB0H,aAAY,GAAAsB,OAAM9I,EAAMwH,aAAY,CAAEmB,EAAWnH,QAF5CmD,EAKX,IACCiE,EACChI,EAACsI,GAAkB,CACjBf,oBAAqBA,EACrBK,OAAQ,SAAAA,IACNA,EAAO7D,EACP,EACFA,MAAOA,IAEP1C,aAELiG,GAAyB,UAAA,EAAzBA,EAA4B,CAC3BK,IAAAA,EACAM,kBAAmBlE,EACnB7E,cAAeE,EAAMF,cACrB0I,OAAQ,SAAAA,IACNA,EAAO7D,EACR,EACD,SAAIhE,GACF,OAAO+G,EAAKgB,cAAa,GAAAI,OAAK9I,EAAMwH,aAAcmB,CAAAA,EAAWnH,OAC/D,MA3CMmD,EA+Cd,IACCqD,EACGA,EAAsB,CACpBlI,cAAeE,EAAMF,cACrByI,IAAAA,EACA,SAAI5H,GACF,OAAO+G,EAAKgB,cAAc1I,EAAMwH,aAClC,IAEF,OACH,GAIX,EAEA,IAAM0B,GAAqB,SAArBA,EAAsBlJ,GAK1B,OACEY,EAACU,EAAKC,KAAI,CAAAN,SACPjB,EAAMmI,oBACLnI,EAAMmI,oBAAoB,CAAEK,OAAQxI,EAAMwI,OAAQK,kBAAmB7I,EAAM2E,QAE3E/D,EAACuI,EAAM,CAAC5B,KAAK,OAAO6B,OAAM,KAACC,KAAMzI,EAAA0I,MAAoBC,QAASvJ,EAAMwI,OAAOvH,SAAC,QAMpF,EC9GO,IAAMuI,GAAe,SAAfA,EAAgBxJ,GAC3B,GAAIA,EAAME,YAAa,CACrB,GAAI8B,EAAQhC,EAAME,YAAY,uBAAwB,CACpD,IAAM2H,EAAiB7H,EAAME,YAC7B,OACEU,EAAC6G,GAAQ,CACPjG,KAAMxB,EAAMwB,KACZgG,aAAcxH,EAAMwH,aACpBK,eAAgBA,EAChB/H,cAAeE,EAAMF,eAG3B,KAAO,CACL,OACEwE,EAACC,EAAQ,CAAAtD,SAAA,CACPL,EAACuG,GAAe,CACd3F,KAAMxB,EAAMwB,KACZtB,YAAaF,EAAME,YACnBJ,cAAeE,EAAMF,cACrB0H,aAAcxH,EAAMwH,eAErBxH,EAAMyJ,YACL7I,EAACU,EAAKC,KAAI,CAACmI,OAAQ,KAAMlI,KAAMxB,EAAMyJ,YAAYE,UAAU1I,SACzDL,EAACgJ,EAAO,MAER,OAGV,CACF,CACA,OAAOhJ,EAAC0F,GAAY,CAAC9E,KAAMxB,EAAMwB,MACnC,wHCmFO,IAAMqI,GAAgBC,GAAoD,SAAC9J,EAAO+J,GAAQ,IAAAC,EAC/F,IAAMC,EAAO3I,EAAKqG,kBAElB,IAAMuC,EAAoBC,EAA4B,IAEtD,IAAMC,EAAU7J,GAAQ,WACtB,IAAKP,EAAMoK,QAAS,MAAO,GAC3B,OAAOpK,EAAMoK,QAAQ7G,KAAI,SAAC8G,GACxB,IACEnK,EAQEmK,EARFnK,YACAoK,EAOED,EAPFC,iBACAC,EAMEF,EANFE,0BACAC,EAKEH,EALFG,QACAC,EAIEJ,EAJFI,MACAC,EAGEL,EAHFK,iBACAC,EAEEN,EAFFM,SACGC,EAAe/D,EAChBwD,EAAUvD,IACd,IAAM+D,EAAUC,EAAeL,WAAiBA,IAAU,SAC1D,IAAIM,EACJ,GAAIL,GAAoBG,EAAS,CAC/B,UAAWH,IAAqB,SAAU,CACxCK,EACEnK,EAACoK,EAAW,CAACC,QAAQ,UAAUC,aAAc,CAAEC,QAAST,GAAmBzJ,SACxEwJ,GAGP,KAAO,CACLM,EAAcnK,EAACoK,EAAWjK,KAAK2J,EAAgB,CAAAzJ,SAAGwJ,IACpD,CACD,MAAM,GAAID,EAAS,CAClBO,EAAcnK,EAACwK,EAAiB,CAACX,MAAOA,EAAiBD,QAASA,GACpE,KAAO,CACLO,EAAcN,CAChB,CACA,OAAA1J,EAAA,CACE0J,MAAOE,EACL/J,EAACyK,EAAiB,CAACC,KAAMP,EAAaQ,SAAS,SAASC,WAAW,aAEnET,EAEFU,OAAQ,SAAAA,IAAM,IAAAC,EACZ,MAAO,CACLC,SAAQD,EAAA1L,EAAM4L,aAANF,UAAAA,EAAAA,EAAkBG,oBAAqB,SAEnD,GACGjB,EAAe,CAClBxK,OAAQ,SAAAA,EAAC0L,EAAQC,EAAQpH,GACvB,GAAIoH,EAAO,mBAAoB,CAC7B,GAAIxB,EAA2B,CAC7B,OAAOA,EAA0BuB,EAAQC,EAAQpH,EACnD,CACA,OAAOmH,CACT,CACA,IAAME,EAAY,GAAAlD,OAAOmD,EAAyBjM,EAAMwB,MAAa,CAAEuK,EAAOvK,OAC9E,IAAMgG,EAAe6C,EAAWV,UAASb,GAAAA,OAAOkD,EAAc3B,CAAAA,EAAWV,YAAaqC,EACtF,IAAME,EAAe5B,GAAgB,UAAA,EAAhBA,EAAmB,CACtC9I,KAAMgG,EACN1H,cAAeiM,EAAOvK,KACtB2K,UAAWJ,EAAOI,UAClBH,aAAAA,EACArH,MAAAA,IAEF,GAAIuH,EAAc,CAChB,OAAOA,CACT,CAEA,IAAME,SACGlM,IAAgB,WACnBA,EAAY,CACVsB,KAAMgG,EACN1H,cAAeiM,EAAOvK,KACtBwK,aAAAA,EACAK,gBAAiB,SAAAA,IACf,OAAOpC,EAAKvB,cAAcsD,EAC5B,IAEF9L,EACN,OACEU,EAAC4I,GAAY,CACXhI,KAAM6I,EAAWV,UAAY,CAACoC,EAAOvK,KAAM6I,EAAWV,WAAa,CAACoC,EAAOvK,MAC3EgG,aAAcA,EACdtH,YAAakM,EACbtM,cAAeiM,EAAOvK,KACtBiI,YAAaY,EAAWZ,aAG9B,GAEJ,GACD,GAAE,CAACzJ,EAAMoK,QAASpK,EAAMwB,MAAIwI,EAAEhK,EAAM4L,aAAU,UAAA,EAAhB5B,EAAkB6B,oBAEjD,IAAMS,EAAqBhL,EAAKiL,SAASvM,EAAMwB,KAAMyI,GAErDuC,EAAoBzC,GAAK,WACvB,MAAO,CACL0C,kCAAmC,SAAAA,EAACC,GAClC,IAAM/J,EAASuH,EAAkByC,QAAQ/I,MAAK,SAACJ,GAAI,OAAKA,EAAKkJ,MAAQA,KACrE,GAAI/J,EAAQ,CACV,OAAOsH,EAAKvB,cAAaI,GAAAA,OAAKmD,EAAgBjM,EAAMwB,MAAK,CAAEmB,EAAOnB,OACpE,CACA,OAAOS,SACT,EAEJ,IAEA,OACErB,EAAA,MAAA,CAAKI,UAAWS,EAAW,iBAAkB,CAAE,sBAAuBzB,EAAM4M,gBAAkB,UAAW3L,SACvGL,EAACU,EAAK8G,KAAI,CAAC5G,KAAMxB,EAAMwB,KAAMqL,MAAO7M,EAAM6M,MAAM5L,SAC7C,SAAAA,EAACoH,EAAQyE,EAAiBxE,GAAiB,IAAbyE,EAAMzE,EAANyE,OAC7B7C,EAAkByC,QAAUtE,EAC5B,OACE/D,EAAA,MAAA,CACEE,MAAO,CACLwI,aAAc,MACdC,OAAQF,GAAAA,MAAAA,EAAQzJ,OAAS,oBAAsB,yBAC/CrC,SAAA,CAEDjB,EAAMkN,oBAAsBlN,EAAMkN,oBAAoBJ,EAAmBzE,EAAO/E,QAAU,KAC3F1C,EAACuM,EAAKpM,EAAA,CACJqM,OAAQ,CAAEC,EAAG,eACbC,WAAY,MACZC,OAAO,MACPC,KAAK,SACDxN,EAAM4L,WAAU,CACpB6B,WAAYpF,EAAO9E,KAAI,SAACC,GAAS,IAAAkK,EAC/B,IAAMzM,EAAWqL,GAAkB,OAAAoB,EAAlBpB,EAAqB9I,EAAKhC,QAA1BkM,UAAAA,EAAAA,EAAiCzM,SAClD,GAAIA,EAAU,CACZA,EAAS0C,SAAQ,SAACH,GAChBA,EAAK,mBAAqB,IAC5B,GACF,CACA,OAAAzC,KACKyC,EAAI,CACP2I,UAAWW,EACX7L,SAAAA,GAEJ,IACAmJ,QAASA,KAEVpK,EAAM2N,mBACL3N,EAAM2N,mBAAmBb,EAAmBzE,EAAO/E,QAEnD1C,EAACgN,EAAa,CACZrG,KAAK,SACLmC,OAAQ1J,EAAM6N,gBACdtE,QAAS,SAAAA,IAAA,OAAMuD,EAAkBvE,IAAIvI,EAAM8N,wBAAsB,UAAA,EAA5B9N,EAAM8N,yBAA4B,EACvEC,MAAK,KACL1E,KAAMzI,EAAAoN,MACNxJ,MAAO,CAAEyJ,UAAW,IAAKhN,SAC1B,OAIHL,EAACU,EAAK4M,UAAS,CACbnB,OACEA,EAAOzJ,OACH,CACE1C,EAAA,MAAA,CACE4D,MAAO,CACLK,MAAO,UACPsJ,QAAS,OACTlN,SAED8L,KAGL9K,cAKd,KAIR"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["@flatbiz/antd/src/fba-app/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/index.tsx","@flatbiz/antd/src/fba-app/dialog-loading/index.tsx","@flatbiz/antd/src/fba-app/fba-app.tsx","@flatbiz/antd/src/fba-app/index.ts"],"sourcesContent":["import { createContext } from 'react';\nimport { FbaAppAlertProps } from './dialog-alert';\nimport { FbaAppConfirmProps } from './dialog-confirm';\nimport { FbaAppDrawerProps } from './dialog-drawer';\nimport { FbaAppLoadingProps } from './dialog-loading';\nimport { FbaAppModalProps } from './dialog-modal';\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 { isNull, isPromise } from '@dimjs/lang';\nimport { classNames } from '@dimjs/utils';\n\nimport { TNoopDefine } from '@flatbiz/utils';\nimport { hooks } from '@wove/react';\nimport { useSize } from 'ahooks';\nimport { Form, FormInstance, Modal, ModalProps } from 'antd';\nimport { ReactElement, useMemo } from 'react';\nimport { ButtonWrapper, ButtonWrapperProps } from '../../button-wrapper';\nimport { fbaHooks } from '../../fba-hooks';\nimport { FlexLayout } from '../../flex-layout';\nimport { getFbaLocaleMessage } from '../../_utils/i18n';\nimport './style.less';\n\nexport type FbaAppModalProps = Omit<\n ModalProps,\n 'onOk' | 'onCancel' | 'getContainer' | 'okButtonProps' | 'cancelButtonProps' | 'footer'\n> & {\n /**\n * 内置尺寸,根据比例固定高度、宽度,默认:middle\n * ```\n * 1. 如果自定义了width、styles.body.height属性,size中的height、width将对应失效\n * 2. 可传 null 值,取消内置尺寸\n * ```\n */\n size?: 'small' | 'middle' | 'large' | null;\n onOk?: (form: FormInstance, e: React.MouseEvent<HTMLElement>) => void | Promise<void>;\n onCancel?: (form: FormInstance, e: React.MouseEvent<HTMLElement>) => void | Promise<void>;\n onClose?: () => void;\n content: string | ReactElement | ((form: FormInstance, operate: { onClose: TNoopDefine }) => ReactElement);\n okHidden?: boolean;\n cancelHidden?: boolean;\n okButtonProps?: Omit<ButtonWrapperProps, 'hidden' | 'children' | 'onClick'>;\n cancelButtonProps?: Omit<ButtonWrapperProps, 'hidden' | 'children' | 'onClick'>;\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 /** null则隐藏footer */\n footer?: null | ReactElement | ReactElement[];\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 ...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 const sizeFt = size === null ? undefined : size === undefined ? 'middle' : size;\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 operateGroup = [\n <ButtonWrapper key=\"0\" {...cancelButtonProps} onClick={onCancelHandle} hidden={cancelHidden}>\n {cancelText || localMessage.FbaDialogModal?.cancelText}\n </ButtonWrapper>,\n <ButtonWrapper key=\"1\" type=\"primary\" {...okButtonProps} onClick={onOkHandle} hidden={okHidden}>\n {okText || '提交'}\n </ButtonWrapper>,\n ];\n\n const footerNew = isNull(footer) ? null : operateGroup;\n\n const customSize = useMemo(() => {\n if (!htmlSize?.height || !screenType) return undefined;\n if (['xs', 'sm'].includes(screenType)) {\n return {\n height: (htmlSize?.height as number) * 0.7,\n };\n }\n if (sizeFt == 'large') {\n return {\n height: (htmlSize?.height as number) * 0.7,\n width: htmlSize.width * 0.6,\n };\n }\n if (sizeFt == 'small') {\n const width = htmlSize.width * 0.3;\n return {\n height: (htmlSize?.height as number) * 0.4,\n width: width < 470 ? 470 : width,\n };\n }\n\n if (sizeFt == 'middle') {\n return {\n height: (htmlSize?.height as number) * 0.55,\n width: htmlSize.width * 0.5,\n };\n }\n return undefined;\n }, [htmlSize?.height, sizeFt, otherProps.styles?.body?.height, otherProps.width, screenType]);\n\n return (\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 styles={{\n ...otherProps.styles,\n body: {\n height: customSize?.height,\n maxHeight: 'calc(100vh - 200px)',\n ...otherProps.styles?.body,\n },\n }}\n className={classNames('fba-dialog-modal', { 'fba-dialog-modal-title-extra': !!titleExtra }, className)}\n open={props.open}\n footer={footerNew}\n >\n {typeof content === 'function' ? content(form, { onClose }) : content}\n </Modal>\n );\n};\n","import { classNames } from '@dimjs/utils';\nimport { FbaAppModal, FbaAppModalProps } from '../dialog-modal';\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';\nimport { FbaAppModalProps } from '../dialog-modal';\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 { isPromise } from '@dimjs/lang';\nimport { classNames } from '@dimjs/utils';\nimport { hooks } from '@wove/react';\nimport { Drawer, DrawerProps, Form, FormInstance, Space } from 'antd';\nimport { ReactElement, ReactNode, useMemo } from 'react';\nimport { ButtonWrapper, ButtonWrapperProps } from '../../button-wrapper';\nimport { fbaHooks } from '../../fba-hooks';\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?: (form: FormInstance, e: React.MouseEvent<HTMLElement>) => void | Promise<void>;\n onCancel?: (form: FormInstance, e: React.MouseEvent<HTMLElement>) => void | Promise<void>;\n content:\n | string\n | ReactElement\n | ((form: FormInstance, operate: { onClose: DrawerProps['onClose'] }) => ReactElement);\n okButtonExtraProps?: Omit<ButtonWrapperProps, 'onClick' | 'children' | 'loading'>;\n cancelButtonExtraProps?: Omit<ButtonWrapperProps, 'onClick' | 'children'>;\n operatePosition?: 'header' | 'footer';\n operateRender?: (form: FormInstance) => ReactElement;\n okHidden?: boolean;\n cancelHidden?: boolean;\n extra?: ReactNode | ((form: FormInstance) => 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 = 600,\n okHidden,\n cancelHidden,\n extra,\n ...otherProps\n } = props;\n const [form] = Form.useForm();\n const screenType = fbaHooks.useResponsivePoint() || '';\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 customSize = useMemo(() => {\n if (!screenType) return undefined;\n if (['xs', 'sm'].includes(screenType)) {\n return {\n width: '90%',\n maxWidth: '90%',\n };\n }\n return { width: '40%', maxWidth: 'calc(100% - 200px)' };\n }, [screenType]);\n\n const extraRender = typeof extra === 'function' ? extra(form) : extra;\n return (\n <Drawer\n maskClosable={true}\n destroyOnClose\n width={customSize?.width}\n // 5.13.0 新增 styles.wrapper,并废弃 contentWrapperStyle drawerStyle maskStyle 属性\n contentWrapperStyle={{ maxWidth: customSize?.maxWidth }}\n footer={operatePosition === 'footer' ? operateRenderHandle() : null}\n {...otherProps}\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' ? operateRenderHandle() : extraRender}\n open={props.open}\n onClose={onClose}\n >\n {typeof content === 'function' ? content(form, { onClose }) : content}\n </Drawer>\n );\n};\n","import { classNames } from '@dimjs/utils';\nimport { Modal, theme } from 'antd';\nimport { CSSProperties } from 'react';\nimport { BlockLayout } from '../../block-layout';\nimport './style.less';\n\nexport type FbaAppLoadingProps = {\n className?: string;\n message?: string;\n mask?: boolean;\n};\n\nexport const FbaAppLoading = (props: FbaAppLoadingProps & { open?: boolean }) => {\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 { getUuid } from '@flatbiz/utils';\nimport { hooks } from '@wove/react';\nimport { ReactNode, useContext, useState } from 'react';\nimport { FbaAppContext, FbaAppContextApi } from './context';\nimport { FbaAppAlert, FbaAppAlertProps } from './dialog-alert';\nimport { FbaAppConfirm, FbaAppConfirmProps } from './dialog-confirm';\nimport { FbaAppDrawer, FbaAppDrawerProps } from './dialog-drawer';\nimport { FbaAppLoading, FbaAppLoadingProps } from './dialog-loading';\nimport { FbaAppModal, FbaAppModalProps } from './dialog-modal';\n\n/**\n * 不支持多个弹框,第二个弹框可使用useDialogDrawer2\n * @returns\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};\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};\n\n/**\n * 不支持多个弹框,第二个弹框可使用useDialogModal2\n * @returns\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 };\n};\n\n/**\n * 不支持多个弹框\n * @returns\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 };\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>({} as FbaAppDrawerProps);\n const [drawerKey, setDrawerKey] = useState(getUuid());\n\n const [drawerProps2, setDrawerProps2] = useState<FbaAppDrawerProps>({} as FbaAppDrawerProps);\n const [drawerKey2, setDrawerKey2] = useState(getUuid());\n\n const [modalProps, setModalProps] = useState<FbaAppModalProps>({} as FbaAppModalProps);\n const [modalKey, setModalKey] = useState(getUuid());\n\n const [modalProps2, setModalProps2] = useState<FbaAppModalProps>({} as FbaAppModalProps);\n const [modalKey2, setModalKey2] = useState(getUuid());\n\n const [alertProps, setAlertProps] = useState<FbaAppAlertProps>({} as FbaAppAlertProps);\n const [confirmProps, setConfirmProps] = useState<FbaAppConfirmProps>({} as FbaAppConfirmProps);\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'] = 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'] = 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'] = 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'] = 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'] = 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'] = 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'] = 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 {...drawerProps} onClose={dialogDrawerClose} key={drawerKey}></FbaAppDrawer>\n <FbaAppDrawer {...drawerProps2} onClose={dialogDrawerClose2} key={drawerKey2}></FbaAppDrawer>\n <FbaAppModal {...modalProps} onClose={dialogModalClose} key={modalKey}></FbaAppModal>\n <FbaAppModal {...modalProps2} onClose={dialogModalClose2} key={modalKey2}></FbaAppModal>\n <FbaAppAlert {...alertProps} onClose={dialogAlertClose} key={alertKey}></FbaAppAlert>\n <FbaAppConfirm {...confirmProps} onClose={dialogConfirmClose} key={confirmKey}></FbaAppConfirm>\n <FbaAppLoading {...loadingProps} key={loadingKey}></FbaAppLoading>\n {props.children}\n </FbaAppContext.Provider>\n );\n};\n","import { fbaUtils } from '../fba-utils';\nimport {\n FbaApp as FbaAppInner,\n useDialogAlert,\n useDialogConfirm,\n useDialogDrawer,\n useDialogDrawer2,\n useDialogLoading,\n useDialogModal,\n useDialogModal2,\n} from './fba-app';\n\nexport const FbaApp = fbaUtils.attachPropertiesToComponent(FbaAppInner, {\n /** 不支持多次弹框,第二个弹框可使用useDialogDrawer2 */\n useDialogDrawer,\n useDialogDrawer2,\n /** 不支持多次弹框,第二个弹框可使用useDialogModal2 */\n useDialogModal,\n useDialogModal2,\n /** 不支持多次弹框 */\n useDialogConfirm,\n /** 不支持多次弹框 */\n useDialogAlert,\n /** 不支持多次弹框 */\n useDialogLoading,\n});\n"],"names":["FbaAppContext","createContext","FbaAppModal","props","_localMessage$FbaDial","_otherProps$styles","_otherProps$styles2","titleExtra","title","onOk","onCancel","okButtonProps","cancelButtonProps","content","className","okHidden","cancelHidden","footer","cancelText","okText","size","otherProps","_objectWithoutPropertiesLoose","_excluded","_Form$useForm","Form","useForm","form","htmlSize","useSize","document","querySelector","localMessage","getFbaLocaleMessage","screenType","fbaHooks","useResponsivePoint","sizeFt","undefined","onClose","_hooks","useCallbackRef","onCancelHandle","e","response","_isPromise","then","Promise","resolve","onOkHandle","operateGroup","_jsx","ButtonWrapper","_extends","onClick","hidden","children","FbaDialogModal","type","footerNew","_isNull","customSize","useMemo","height","includes","width","styles","body","Modal","maskClosable","_jsxs","FlexLayout","direction","fullIndex","centered","destroyOnClose","maxHeight","_classNames","open","FbaAppConfirm","FbaAppAlert","_form","FbaAppDrawer","okButtonExtraProps","cancelButtonExtraProps","_props$operatePositio","operatePosition","operateRender","extra","Space","operateRenderHandle","maxWidth","extraRender","Drawer","contentWrapperStyle","FbaAppLoading","message","mask","_theme$useToken","theme","useToken","token","colorPrimary","closable","style","BlockLayout","useDialogDrawer","ctx","useContext","dialogDrawerClose","appDialogDrawer","data","dialogDrawerOpen","close","useDialogDrawer2","dialogDrawerClose2","appDialogDrawer2","dialogDrawerOpen2","useDialogModal","dialogModalClose","appDialogModal","dialogModalOpen","useDialogModal2","dialogModalClose2","appDialogModal2","dialogModalOpen2","useDialogAlert","dialogAlertClose","appDialogAlert","dialogAlertOpen","useDialogConfirm","dialogConfirmClose","appDialogConfirm","dialogConfirmOpen","useDialogLoading","dialogLoadingClose","appDialogLoading","dialogLoadingOpen","FbaApp","_useState","useState","drawerProps","setDrawerProps","_useState2","getUuid","drawerKey","setDrawerKey","_useState3","drawerProps2","setDrawerProps2","_useState4","drawerKey2","setDrawerKey2","_useState5","modalProps","setModalProps","_useState6","modalKey","setModalKey","_useState7","modalProps2","setModalProps2","_useState8","modalKey2","setModalKey2","_useState9","alertProps","setAlertProps","_useState10","confirmProps","setConfirmProps","_useState11","loadingProps","setLoadingProps","_useState12","alertKey","setAlertKey","_useState13","confirmKey","setConfirmKey","_useState14","loadingKey","setLoadingKey","setTimeout","Provider","value","_createElement","key","fbaUtils","attachPropertiesToComponent","FbaAppInner"],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sources":["@flatbiz/antd/src/fba-app/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/index.tsx","@flatbiz/antd/src/fba-app/dialog-loading/index.tsx","@flatbiz/antd/src/fba-app/fba-app.tsx","@flatbiz/antd/src/fba-app/index.ts"],"sourcesContent":["import { createContext } from 'react';\nimport { FbaAppAlertProps } from './dialog-alert';\nimport { FbaAppConfirmProps } from './dialog-confirm';\nimport { FbaAppDrawerProps } from './dialog-drawer';\nimport { FbaAppLoadingProps } from './dialog-loading';\nimport { FbaAppModalProps } from './dialog-modal';\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 { isNull, isPromise } from '@dimjs/lang';\nimport { classNames } from '@dimjs/utils';\n\nimport { TNoopDefine } from '@flatbiz/utils';\nimport { hooks } from '@wove/react';\nimport { useSize } from 'ahooks';\nimport { Form, FormInstance, Modal, ModalProps } from 'antd';\nimport { ReactElement, useMemo } from 'react';\nimport { ButtonWrapper, ButtonWrapperProps } from '../../button-wrapper';\nimport { fbaHooks } from '../../fba-hooks';\nimport { FlexLayout } from '../../flex-layout';\nimport { getFbaLocaleMessage } from '../../_utils/i18n';\nimport './style.less';\n\nexport type FbaAppModalProps = Omit<\n ModalProps,\n 'onOk' | 'onCancel' | 'getContainer' | 'okButtonProps' | 'cancelButtonProps' | 'footer'\n> & {\n /**\n * 内置尺寸,根据比例固定高度、宽度,默认:middle\n * ```\n * 1. 如果自定义了width、styles.body.height属性,size中的height、width将对应失效\n * 2. 可传 null 值,取消内置尺寸\n * ```\n */\n size?: 'small' | 'middle' | 'large' | null;\n onOk?: (form: FormInstance, e: React.MouseEvent<HTMLElement>) => void | Promise<void>;\n onCancel?: (form: FormInstance, e: React.MouseEvent<HTMLElement>) => void | Promise<void>;\n onClose?: () => void;\n content: string | ReactElement | ((form: FormInstance, operate: { onClose: TNoopDefine }) => ReactElement);\n okHidden?: boolean;\n cancelHidden?: boolean;\n okButtonProps?: Omit<ButtonWrapperProps, 'hidden' | 'children' | 'onClick'>;\n cancelButtonProps?: Omit<ButtonWrapperProps, 'hidden' | 'children' | 'onClick'>;\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 /** null则隐藏footer */\n footer?: null | ReactElement | ReactElement[];\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 ...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 const sizeFt = size === null ? undefined : size === undefined ? 'middle' : size;\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 operateGroup = [\n <ButtonWrapper key=\"0\" {...cancelButtonProps} onClick={onCancelHandle} hidden={cancelHidden}>\n {cancelText || localMessage.FbaDialogModal?.cancelText}\n </ButtonWrapper>,\n <ButtonWrapper key=\"1\" type=\"primary\" {...okButtonProps} onClick={onOkHandle} hidden={okHidden}>\n {okText || '提交'}\n </ButtonWrapper>,\n ];\n\n const footerNew = isNull(footer) ? null : operateGroup;\n\n const customSize = useMemo(() => {\n if (!htmlSize?.height || !screenType) return undefined;\n if (['xs', 'sm'].includes(screenType)) {\n return {\n height: (htmlSize?.height as number) * 0.7,\n };\n }\n if (sizeFt == 'large') {\n return {\n height: (htmlSize?.height as number) * 0.7,\n width: htmlSize.width * 0.6,\n };\n }\n if (sizeFt == 'small') {\n const width = htmlSize.width * 0.3;\n return {\n height: (htmlSize?.height as number) * 0.4,\n width: width < 470 ? 470 : width,\n };\n }\n\n if (sizeFt == 'middle') {\n return {\n height: (htmlSize?.height as number) * 0.55,\n width: htmlSize.width * 0.5,\n };\n }\n return undefined;\n }, [htmlSize?.height, sizeFt, otherProps.styles?.body?.height, otherProps.width, screenType]);\n\n return (\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 styles={{\n ...otherProps.styles,\n body: {\n height: customSize?.height,\n maxHeight: 'calc(100vh - 200px)',\n ...otherProps.styles?.body,\n },\n }}\n className={classNames('fba-dialog-modal', { 'fba-dialog-modal-title-extra': !!titleExtra }, className)}\n open={props.open}\n footer={footerNew}\n >\n {typeof content === 'function' ? content(form, { onClose }) : content}\n </Modal>\n );\n};\n","import { classNames } from '@dimjs/utils';\nimport { FbaAppModal, FbaAppModalProps } from '../dialog-modal';\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';\nimport { FbaAppModalProps } from '../dialog-modal';\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 { isPromise } from '@dimjs/lang';\nimport { classNames } from '@dimjs/utils';\nimport { hooks } from '@wove/react';\nimport { Drawer, DrawerProps, Form, FormInstance, Space } from 'antd';\nimport { ReactElement, ReactNode, useMemo } from 'react';\nimport { ButtonWrapper, ButtonWrapperProps } from '../../button-wrapper';\nimport { fbaHooks } from '../../fba-hooks';\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?: (form: FormInstance, e: React.MouseEvent<HTMLElement>) => void | Promise<void>;\n onCancel?: (form: FormInstance, e: React.MouseEvent<HTMLElement>) => void | Promise<void>;\n content:\n | string\n | ReactElement\n | ((form: FormInstance, operate: { onClose: DrawerProps['onClose'] }) => ReactElement);\n okButtonExtraProps?: Omit<ButtonWrapperProps, 'onClick' | 'children' | 'loading'>;\n cancelButtonExtraProps?: Omit<ButtonWrapperProps, 'onClick' | 'children'>;\n operatePosition?: 'header' | 'footer';\n operateRender?: (form: FormInstance) => ReactElement;\n okHidden?: boolean;\n cancelHidden?: boolean;\n extra?: ReactNode | ((form: FormInstance) => 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 = 600,\n okHidden,\n cancelHidden,\n extra,\n ...otherProps\n } = props;\n const [form] = Form.useForm();\n const screenType = fbaHooks.useResponsivePoint() || '';\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 customSize = useMemo(() => {\n if (!screenType) return undefined;\n if (['xs', 'sm'].includes(screenType)) {\n return {\n width: '90%',\n maxWidth: '90%',\n };\n }\n return { width: '40%', maxWidth: 'calc(100% - 200px)' };\n }, [screenType]);\n\n const extraRender = typeof extra === 'function' ? extra(form) : extra;\n return (\n <Drawer\n maskClosable={true}\n destroyOnClose\n width={customSize?.width}\n // 5.13.0 新增 styles.wrapper,并废弃 contentWrapperStyle drawerStyle maskStyle 属性\n contentWrapperStyle={{ maxWidth: customSize?.maxWidth }}\n footer={operatePosition === 'footer' ? operateRenderHandle() : null}\n {...otherProps}\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' ? operateRenderHandle() : extraRender}\n open={props.open}\n onClose={onClose}\n >\n {typeof content === 'function' ? content(form, { onClose }) : content}\n </Drawer>\n );\n};\n","import { classNames } from '@dimjs/utils';\nimport { Modal, theme } from 'antd';\nimport { CSSProperties } from 'react';\nimport { BlockLayout } from '../../block-layout';\nimport './style.less';\n\nexport type FbaAppLoadingProps = {\n className?: string;\n message?: string;\n mask?: boolean;\n};\n\nexport const FbaAppLoading = (props: FbaAppLoadingProps & { open?: boolean }) => {\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 { getUuid } from '@flatbiz/utils';\nimport { hooks } from '@wove/react';\nimport { ReactNode, useContext, useState } from 'react';\nimport { FbaAppContext, FbaAppContextApi } from './context';\nimport { FbaAppAlert, FbaAppAlertProps } from './dialog-alert';\nimport { FbaAppConfirm, FbaAppConfirmProps } from './dialog-confirm';\nimport { FbaAppDrawer, FbaAppDrawerProps } from './dialog-drawer';\nimport { FbaAppLoading, FbaAppLoadingProps } from './dialog-loading';\nimport { FbaAppModal, FbaAppModalProps } from './dialog-modal';\n\n/**\n * 不支持多个弹框,第二个弹框可使用useDialogDrawer2\n * ```\n * 1. 配置size属性可使用预设的弹窗尺寸,如果不使用内置尺寸可设置 size = null\n * ```\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};\n\n/**\n * 不支持多个弹框,第二个弹框可使用useDialogDrawer2\n * ```\n * 1. 配置size属性可使用预设的弹窗尺寸,如果不使用内置尺寸可设置 size = null\n * ```\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};\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 };\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 };\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>({} as FbaAppDrawerProps);\n const [drawerKey, setDrawerKey] = useState(getUuid());\n\n const [drawerProps2, setDrawerProps2] = useState<FbaAppDrawerProps>({} as FbaAppDrawerProps);\n const [drawerKey2, setDrawerKey2] = useState(getUuid());\n\n const [modalProps, setModalProps] = useState<FbaAppModalProps>({} as FbaAppModalProps);\n const [modalKey, setModalKey] = useState(getUuid());\n\n const [modalProps2, setModalProps2] = useState<FbaAppModalProps>({} as FbaAppModalProps);\n const [modalKey2, setModalKey2] = useState(getUuid());\n\n const [alertProps, setAlertProps] = useState<FbaAppAlertProps>({} as FbaAppAlertProps);\n const [confirmProps, setConfirmProps] = useState<FbaAppConfirmProps>({} as FbaAppConfirmProps);\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'] = 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'] = 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'] = 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'] = 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'] = 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'] = 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'] = 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 {...drawerProps} onClose={dialogDrawerClose} key={drawerKey}></FbaAppDrawer>\n <FbaAppDrawer {...drawerProps2} onClose={dialogDrawerClose2} key={drawerKey2}></FbaAppDrawer>\n <FbaAppModal {...modalProps} onClose={dialogModalClose} key={modalKey}></FbaAppModal>\n <FbaAppModal {...modalProps2} onClose={dialogModalClose2} key={modalKey2}></FbaAppModal>\n <FbaAppAlert {...alertProps} onClose={dialogAlertClose} key={alertKey}></FbaAppAlert>\n <FbaAppConfirm {...confirmProps} onClose={dialogConfirmClose} key={confirmKey}></FbaAppConfirm>\n <FbaAppLoading {...loadingProps} key={loadingKey}></FbaAppLoading>\n {props.children}\n </FbaAppContext.Provider>\n );\n};\n","import { fbaUtils } from '../fba-utils';\nimport {\n FbaApp as FbaAppInner,\n useDialogAlert,\n useDialogConfirm,\n useDialogDrawer,\n useDialogDrawer2,\n useDialogLoading,\n useDialogModal,\n useDialogModal2,\n} from './fba-app';\n\nexport const FbaApp = fbaUtils.attachPropertiesToComponent(FbaAppInner, {\n /** 不支持多次弹框,第二个弹框可使用useDialogDrawer2 */\n useDialogDrawer,\n useDialogDrawer2,\n /** 不支持多次弹框,第二个弹框可使用useDialogModal2 */\n useDialogModal,\n useDialogModal2,\n /** 不支持多次弹框 */\n useDialogConfirm,\n /** 不支持多次弹框 */\n useDialogAlert,\n /** 不支持多次弹框 */\n useDialogLoading,\n});\n"],"names":["FbaAppContext","createContext","FbaAppModal","props","_localMessage$FbaDial","_otherProps$styles","_otherProps$styles2","titleExtra","title","onOk","onCancel","okButtonProps","cancelButtonProps","content","className","okHidden","cancelHidden","footer","cancelText","okText","size","otherProps","_objectWithoutPropertiesLoose","_excluded","_Form$useForm","Form","useForm","form","htmlSize","useSize","document","querySelector","localMessage","getFbaLocaleMessage","screenType","fbaHooks","useResponsivePoint","sizeFt","undefined","onClose","_hooks","useCallbackRef","onCancelHandle","e","response","_isPromise","then","Promise","resolve","onOkHandle","operateGroup","_jsx","ButtonWrapper","_extends","onClick","hidden","children","FbaDialogModal","type","footerNew","_isNull","customSize","useMemo","height","includes","width","styles","body","Modal","maskClosable","_jsxs","FlexLayout","direction","fullIndex","centered","destroyOnClose","maxHeight","_classNames","open","FbaAppConfirm","FbaAppAlert","_form","FbaAppDrawer","okButtonExtraProps","cancelButtonExtraProps","_props$operatePositio","operatePosition","operateRender","extra","Space","operateRenderHandle","maxWidth","extraRender","Drawer","contentWrapperStyle","FbaAppLoading","message","mask","_theme$useToken","theme","useToken","token","colorPrimary","closable","style","BlockLayout","useDialogDrawer","ctx","useContext","dialogDrawerClose","appDialogDrawer","data","dialogDrawerOpen","close","useDialogDrawer2","dialogDrawerClose2","appDialogDrawer2","dialogDrawerOpen2","useDialogModal","dialogModalClose","appDialogModal","dialogModalOpen","useDialogModal2","dialogModalClose2","appDialogModal2","dialogModalOpen2","useDialogAlert","dialogAlertClose","appDialogAlert","dialogAlertOpen","useDialogConfirm","dialogConfirmClose","appDialogConfirm","dialogConfirmOpen","useDialogLoading","dialogLoadingClose","appDialogLoading","dialogLoadingOpen","FbaApp","_useState","useState","drawerProps","setDrawerProps","_useState2","getUuid","drawerKey","setDrawerKey","_useState3","drawerProps2","setDrawerProps2","_useState4","drawerKey2","setDrawerKey2","_useState5","modalProps","setModalProps","_useState6","modalKey","setModalKey","_useState7","modalProps2","setModalProps2","_useState8","modalKey2","setModalKey2","_useState9","alertProps","setAlertProps","_useState10","confirmProps","setConfirmProps","_useState11","loadingProps","setLoadingProps","_useState12","alertKey","setAlertKey","_useState13","confirmKey","setConfirmKey","_useState14","loadingKey","setLoadingKey","setTimeout","Provider","value","_createElement","key","fbaUtils","attachPropertiesToComponent","FbaAppInner"],"mappings":"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"}
@@ -1 +1 @@
1
- .form-item-text-content{color:rgba(0,0,0,.88);display:inline-flex;font-size:14px;padding:4px 0;width:100%}.form-item-text{overflow:hidden}.fitc-loading .ant-spin-dot{margin-left:0!important}
1
+ .form-item-text-content{color:rgba(0,0,0,.88);display:inline-flex;font-size:14px;padding:4px 0;width:100%}.form-item-text{overflow:hidden}.fitc-loading .ant-spin-dot{margin-left:0!important}.fitc-reload-icon{font-size:14px;padding:0 3px}.fitc-reload-icon:hover{transform:scale(1.1);transition:all .1s ease-in}
@@ -1,10 +1,11 @@
1
1
  /* eslint-disable */
2
- import './../text-css-ellipsis/index.css';
2
+ import './../text-overflow/index.css';
3
3
  import './../fba-hooks/index.css';
4
+ import './../tips-wrapper/index.css';
4
5
  import './../form-item-wrapper/index.css';
5
6
  import './../pre-defined-class-name/index.css';
6
7
  import './../form-item-hidden/index.css';
7
8
  import './index.css';
8
9
  /*! @flatjs/forge MIT @flatbiz/antd */
9
- import{classNames as e}from"@dimjs/utils/cjs/class-names";import{_ as r,a as n}from"../_rollupPluginBabelHelpers-a0769acd.js";import{useState as a,useMemo as i,Fragment as t}from"react";import{isUndefinedOrNull as o,toArray as l}from"@flatbiz/utils";import{Spin as s,Form as u,message as m}from"antd";import{TextCssEllipsis as d}from"../text-css-ellipsis/index.js";import{jsx as c,jsxs as f}from"react/jsx-runtime";import{FormItemWrapper as v}from"../form-item-wrapper/index.js";import{isDeepEqual as p}from"@dimjs/lang/cjs/is-deep-equal";import{fbaHooks as h}from"../fba-hooks/index.js";import{FormItemHidden as g}from"../form-item-hidden/index.js";import"ahooks";import"../pre-defined-class-name/index.js";import"@dimjs/lang/cjs/is-array";import"@wove/react/cjs/hooks";import"../use-responsive-point-21b8c601.js";var y=function e(r){var n=function(){if(o(r.value))return r.placeholderValue;return typeof r.value==="string"?r.value:JSON.stringify(r.value)}();var a=r.wrap?n:c(d,{text:n||""});if(r.loading){return c("span",{className:"form-item-text-content fitc-loading",style:r.style,children:c(s,{spinning:r.loading,size:"small",children:c("span",{style:{textIndent:"-9999px",display:"inline-block"},children:"Loading"})})})}return c("span",{className:"form-item-text-content",style:r.style,children:r.render?r.render(r.value):a})};var x=function e(n){var t=n.serviceConfig;var s=a(false),d=s[0],c=s[1];var f=a(),v=f[0],g=f[1];var y=h.usePrevious(t==null?void 0:t.params);var x=a("init"),j=x[0],w=x[1];var P=u.useFormInstance();var V=i((function(){var e;if(!(t!=null&&t.params)||l(t==null?void 0:t.invalidParamKey).length===0){return t==null?void 0:t.params}var n=r({},t==null?void 0:t.params);t==null||(e=t.invalidParamKey)==null?void 0:e.forEach((function(e){n[e]=undefined}));return n}),[t==null?void 0:t.invalidParamKey,t==null?void 0:t.params]);var N=function e(a){return new Promise((function(e,i){var l=function(e){return function(r){try{c(false);return e&&e.call(this,r)}catch(e){return i(e)}}.bind(this)}.bind(this);var s,u,f,v,p,h;if(!t)return e();u=r({},V,a);if(t!=null&&(s=t.requiredParamsKeys)!=null&&s.length){f=t==null?void 0:t.requiredParamsKeys.find((function(e){return o(u[e])}));if(f){console.warn("FormItemText组件:参数:"+(t==null?void 0:t.requiredParamsKeys.join("、"))+"不能为空");return e()}}var y=function(){try{return e()}catch(e){return i(e)}};var x=function(e){try{console.error(e);w("error");void m.error((e==null?void 0:e.message)||"接口调用异常");return l(y)()}catch(e){return l(i)(e)}};try{if(!d)c(true);return Promise.resolve(t.onRequest(u)).then((function(e){try{v=e;p=n.name?P.getFieldValue(n.name):undefined;h=t.onResponseAdapter?t.onResponseAdapter(v,p):v;g(h);w("success");return l(y)()}catch(e){return x(e)}}),x)}catch(e){x(e)}}))};h.useEffectCustomAsync(N,[]);h.useEffectCustom((function(){if(!t)return;if(y){if(!p(t.params,y)){void N()}}}),[y,t==null?void 0:t.params]);if(!t){return undefined}return{loading:d,status:j,viewValue:v}};var j=["wrap","render","placeholderValue","serviceConfig"];var w=function a(i){var t=i.wrap,o=i.render,l=i.placeholderValue,s=i.serviceConfig,u=n(i,j);var m=x({serviceConfig:s,name:i.name});return c(v,r({},u,{name:undefined,className:e("form-item-text",i.className),children:c(y,{loading:m==null?void 0:m.loading,wrap:t,render:o,placeholderValue:l,value:m==null?void 0:m.viewValue})}))};var P=["wrap","render","placeholderValue"];var V=function a(i){var o=i.wrap,l=i.render,s=i.placeholderValue,u=n(i,P);if(i.serviceConfig){return f(t,{children:[c(g,{name:i.name}),c(w,r({},i))]})}return c(v,r({},u,{className:e("form-item-text",i.className),children:c(y,{wrap:o,render:l,placeholderValue:s})}))};v["domTypeName"]="FormItemText";export{V as FormItemText};
10
+ import{classNames as e}from"@dimjs/utils/cjs/class-names";import{_ as r,a as n}from"../_rollupPluginBabelHelpers-a0769acd.js";import{Fragment as i,useState as t,useRef as o,useMemo as a}from"react";import l from"@ant-design/icons/es/icons/RedoOutlined";import s from"@ant-design/icons/es/icons/QuestionCircleFilled";import{isUndefinedOrNull as u,toArray as c}from"@flatbiz/utils";import{Tooltip as d,Spin as m,Form as f}from"antd";import{TextOverflow as p}from"../text-overflow/index.js";import{TipsWrapper as v}from"../tips-wrapper/index.js";import{jsx as h,jsxs as g}from"react/jsx-runtime";import{FormItemWrapper as y}from"../form-item-wrapper/index.js";import{isDeepEqual as j}from"@dimjs/lang/cjs/is-deep-equal";import{fbaHooks as x}from"../fba-hooks/index.js";import{FormItemHidden as w}from"../form-item-hidden/index.js";import"@dimjs/lang/cjs/is-string";import"ahooks";import"@ant-design/icons/es/icons/QuestionCircleOutlined";import"../pre-defined-class-name/index.js";import"@dimjs/lang/cjs/is-array";import"@wove/react/cjs/hooks";import"../use-responsive-point-21b8c601.js";var C=function e(r){var n=function(){if(u(r.value))return r.placeholderValue;return typeof r.value==="string"?r.value:JSON.stringify(r.value)}();var t=r.wrap?n:h(p,{text:n||""});if(r.status==="error"){return h(i,{children:h(v,{tipType:"tooltip",tooltipProps:{title:r.errorMsg},icon:h(s,{style:{color:"red"}}),gap:6,children:h(d,{title:"点击查询",children:h(l,{style:{color:"red"},onClick:r.onRequest,className:"fitc-reload-icon"})})})})}if(r.loading){return h("span",{className:"form-item-text-content fitc-loading",style:r.style,children:h(m,{spinning:r.loading,size:"small",children:h("span",{style:{textIndent:"-9999px",display:"inline-block"},children:"Loading"})})})}return h("span",{className:"form-item-text-content",style:r.style,children:r.render?r.render(r.value):t})};var V=function e(n){var i=n.serviceConfig;var l=t(false),s=l[0],d=l[1];var m=t(),p=m[0],v=m[1];var h=x.usePrevious(i==null?void 0:i.params);var g=t("init"),y=g[0],w=g[1];var C=o();var V=f.useFormInstance();var N=a((function(){var e;if(!(i!=null&&i.params)||c(i==null?void 0:i.invalidParamKey).length===0){return i==null?void 0:i.params}var n=r({},i==null?void 0:i.params);i==null||(e=i.invalidParamKey)==null?void 0:e.forEach((function(e){n[e]=undefined}));return n}),[i==null?void 0:i.invalidParamKey,i==null?void 0:i.params]);var P=function e(t){return new Promise((function(e,o){var a=function(e){return function(r){try{d(false);return e&&e.call(this,r)}catch(e){return o(e)}}.bind(this)}.bind(this);var l,c,m,f,p,h;if(!i)return e();l=r({},N,t);c=i==null?void 0:i.requiredParamsKeys;if(c!=null&&c.length){m=c.find((function(e){return u(l[e])}));if(m){C.current="缺少必填参数:"+c.join("、");console.warn(C.current);w("error");return e()}}var g=function(){try{return e()}catch(e){return o(e)}};var y=function(e){try{console.error(e);C.current=(e==null?void 0:e.message)||"接口调用异常";w("error");return a(g)()}catch(e){return a(o)(e)}};try{if(!s)d(true);w("init");return Promise.resolve(i.onRequest(l)).then((function(e){try{f=e;p=n.name?V.getFieldValue(n.name):undefined;h=i.onResponseAdapter?i.onResponseAdapter(f,p):f;v(h);w("success");return a(g)()}catch(e){return y(e)}}),y)}catch(e){y(e)}}))};x.useEffectCustomAsync(P,[]);x.useEffectCustom((function(){if(!i)return;if(h){if(!j(i.params,h)){void P()}}}),[h,i==null?void 0:i.params]);if(!i){return undefined}return{loading:s,status:y,viewValue:p,onRequest:P,errorMsg:C.current}};var N=["wrap","render","placeholderValue","serviceConfig"];var P=function i(t){var o=t.wrap,a=t.render,l=t.placeholderValue,s=t.serviceConfig,u=n(t,N);var c=V({serviceConfig:s,name:t.name});return h(y,r({},u,{name:undefined,className:e("form-item-text",t.className),children:h(C,{loading:c==null?void 0:c.loading,wrap:o,render:a,placeholderValue:l,value:c==null?void 0:c.viewValue,status:c==null?void 0:c.status,onRequest:c==null?void 0:c.onRequest,errorMsg:c==null?void 0:c.errorMsg})}))};var R=["wrap","render","placeholderValue"];var b=function t(o){var a=o.wrap,l=o.render,s=o.placeholderValue,u=n(o,R);if(o.serviceConfig){return g(i,{children:[h(w,{name:o.name}),h(P,r({},o))]})}return h(y,r({},u,{className:e("form-item-text",o.className),children:h(C,{wrap:a,render:l,placeholderValue:s})}))};b["domTypeName"]="FormItemText";export{b as FormItemText};
10
11
  //# sourceMappingURL=index.js.map