@flatbiz/antd 4.2.82 → 4.2.84

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/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 { isArray } from '@dimjs/lang';\nimport { classNames } from '@dimjs/utils';\nimport { LabelValueItem, TAny } from '@flatbiz/utils';\nimport { hooks } from '@wove/react';\nimport { Checkbox, Form, Tag } from 'antd';\nimport { useMemo } from 'react';\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 viewLabelList = useMemo(() => {\n if (editable) return [];\n const value = isArray(props.value) ? props.value : ([] as TAny[]);\n if (!isArray(options) || options.length === 0) {\n return value.map((item) => ({ label: item, value: item }));\n }\n const returnList = [] as LabelValueItem[];\n value.forEach((item) => {\n const target = options.find((temp) => temp.value === item);\n returnList.push(target ? target : { label: item, value: item });\n });\n return returnList;\n }, [editable, options, props.value]);\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 return (\n <span className=\"editable-checkbox-group-view\">\n {render\n ? render(props.value, options)\n : viewLabelList.map((tag, index) => (\n <Tag key={index} color={'geekblue'}>\n {tag.label}\n </Tag>\n ))}\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 { isArray } from '@dimjs/lang';\nimport { classNames } from '@dimjs/utils';\nimport { LabelValueItem } from '@flatbiz/utils';\nimport { hooks } from '@wove/react';\nimport { Form, Radio, Tag } from 'antd';\nimport { useMemo } from 'react';\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 viewLabel = useMemo(() => {\n if (editable) return [];\n const value = props.value;\n\n if (!isArray(options) || options.length === 0) {\n return value;\n }\n const target = options.find((item) => item.value === value);\n return target?.label || value;\n }, [editable, options, props.value]);\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) : viewLabel ? <Tag color={'geekblue'}>{viewLabel}</Tag> : null}\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 { 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 { 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 === '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 { TAny, toArray, TPlainObject } from '@flatbiz/utils';\nimport { Form, FormListOperation, Table, TableProps } from 'antd';\nimport { FormListFieldData, FormListProps } from 'antd/es/form';\nimport { ColumnsType } from 'antd/lib/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};\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?: 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};\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. table children column 不可编辑\n * 2. 当存在折叠children数据时,组件会在children中内置_isChildrenItem字段\n * 3. 可通过tableChildrenColumnRender自定义渲染 table children column 显示\n * 4. 设置 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 titleRender = <TipsWrapper {...tipsWrapperProps}>{title}</TipsWrapper>;\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 })\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=\"editable-table\">\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 {...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","viewLabelList","value","_isArray","length","map","item","label","returnList","forEach","target","find","temp","push","onChange","_hooks","useCallbackRef","_jsx","Checkbox","Group","_extends","className","children","tag","index","Tag","color","CheckboxGroupFormItem","formItemProps","Form","Item","name","_classNames","DatePickerWrapperFormItem","DatePickerWrapper","allowClear","FormItemContent","data","viewLabel","undefined","join","DateRangePickerWrapper","DateRangePickerWrapperFormItem","InputFormItem","InputWrapper","InputNumberFormItem","InputNumber","RadioGroupFormItemContent","e","Radio","RadioGroupFormItem","_useState","useState","selectorList","setSelectorList","_useState2","setviewLabelList","useEffect","String","fieldNames","onSelectorListAllChange","dataList","arrayField2LabelValue","selectList","SelectorWrapper","_jsxs","Fragment","style","display","SelectorWrapperFormItem","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","TableTitleTooltip","onCell","_props$tableProps","valign","tableProps","cellVerticalAlign","_value","record","tableRowName","toArray","customRender","operation","fieldConfigActual","formListDataSource","useWatch","useImperativeHandle","getTableItemDataByFormListItemKey","key","current","rules","formListOperation","onTableBeforeRender","Table","scroll","x","pagination","rowKey","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/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 { isArray } from '@dimjs/lang';\nimport { classNames } from '@dimjs/utils';\nimport { LabelValueItem, TAny } from '@flatbiz/utils';\nimport { hooks } from '@wove/react';\nimport { Checkbox, Form, Tag } from 'antd';\nimport { useMemo } from 'react';\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 viewLabelList = useMemo(() => {\n if (editable) return [];\n const value = isArray(props.value) ? props.value : ([] as TAny[]);\n if (!isArray(options) || options.length === 0) {\n return value.map((item) => ({ label: item, value: item }));\n }\n const returnList = [] as LabelValueItem[];\n value.forEach((item) => {\n const target = options.find((temp) => temp.value === item);\n returnList.push(target ? target : { label: item, value: item });\n });\n return returnList;\n }, [editable, options, props.value]);\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 return (\n <span className=\"editable-checkbox-group-view\">\n {render\n ? render(props.value, options)\n : viewLabelList.map((tag, index) => (\n <Tag key={index} color={'geekblue'}>\n {tag.label}\n </Tag>\n ))}\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 { isArray } from '@dimjs/lang';\nimport { classNames } from '@dimjs/utils';\nimport { LabelValueItem } from '@flatbiz/utils';\nimport { hooks } from '@wove/react';\nimport { Form, Radio, Tag } from 'antd';\nimport { useMemo } from 'react';\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 viewLabel = useMemo(() => {\n if (editable) return [];\n const value = props.value;\n\n if (!isArray(options) || options.length === 0) {\n return value;\n }\n const target = options.find((item) => item.value === value);\n return target?.label || value;\n }, [editable, options, props.value]);\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) : viewLabel ? <Tag color={'geekblue'}>{viewLabel}</Tag> : null}\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 { 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 { 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 === '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 { TAny, toArray, TPlainObject } from '@flatbiz/utils';\nimport { Form, FormListOperation, Table, TableProps } from 'antd';\nimport { FormListFieldData, FormListProps } from 'antd/es/form';\nimport { ColumnsType } from 'antd/lib/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};\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};\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. table children column 不可编辑\n * 2. 当存在折叠children数据时,组件会在children中内置_isChildrenItem字段\n * 3. 可通过tableChildrenColumnRender自定义渲染 table children column 显示\n * 4. 设置 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 })\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=\"editable-table\">\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 {...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","viewLabelList","value","_isArray","length","map","item","label","returnList","forEach","target","find","temp","push","onChange","_hooks","useCallbackRef","_jsx","Checkbox","Group","_extends","className","children","tag","index","Tag","color","CheckboxGroupFormItem","formItemProps","Form","Item","name","_classNames","DatePickerWrapperFormItem","DatePickerWrapper","allowClear","FormItemContent","data","viewLabel","undefined","join","DateRangePickerWrapper","DateRangePickerWrapperFormItem","InputFormItem","InputWrapper","InputNumberFormItem","InputNumber","RadioGroupFormItemContent","e","Radio","RadioGroupFormItem","_useState","useState","selectorList","setSelectorList","_useState2","setviewLabelList","useEffect","String","fieldNames","onSelectorListAllChange","dataList","arrayField2LabelValue","selectList","SelectorWrapper","_jsxs","Fragment","style","display","SelectorWrapperFormItem","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","formListDataSource","useWatch","useImperativeHandle","getTableItemDataByFormListItemKey","key","current","rules","formListOperation","onTableBeforeRender","Table","scroll","x","pagination","rowKey","dataSource","_formListDataSource$i","onTableAfterRender","ButtonWrapper","hiddenFooterBtn","getAddRowDefaultValues","block","_PlusOutlined","marginTop"],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  /* eslint-disable */
2
2
  import './index.css';
3
3
  /*! @flatjs/forge MIT @flatbiz/antd */
4
- import{_ as r}from"../_rollupPluginBabelHelpers-fc015ef2.js";import{classNames as l}from"@dimjs/utils/cjs/class-names";import{toArray as e}from"@flatbiz/utils";import{Children as i,cloneElement as t}from"react";import{jsx as a}from"react/jsx-runtime";var o=function o(s){var n=i.toArray(s.children);var m=s.direction||"vertical";var c=s.gap?s.gap:0;var f=e(s.fullIndex);return a("div",{className:l("v-flex-layout","v-flex-"+m,s.className),style:s.style,onClick:s.onClick,children:n.map((function(l,e){var i;var a=((i=l.props)==null?void 0:i.style)||{};var o=f.includes(e)?r({flex:1},a):a;if(e<n.length-1&&c>0){if(m==="horizontal"){o.marginRight=c}else{o.marginBottom=c}}return t(l,{style:o,key:e})}))})};export{o as FlexLayout};
4
+ import{_ as r}from"../_rollupPluginBabelHelpers-fc015ef2.js";import{classNames as l}from"@dimjs/utils/cjs/class-names";import{toArray as e}from"@flatbiz/utils";import{Children as i,cloneElement as t}from"react";import{jsx as a}from"react/jsx-runtime";var o=function o(n){var s=i.toArray(n.children);var m=n.direction||"vertical";var c=n.gap?n.gap:0;var f=e(n.fullIndex);return a("div",{className:l("v-flex-layout","v-flex-"+m,n.className),style:n.style,onClick:n.onClick,children:s.map((function(l,e){var i;var a=((i=l.props)==null?void 0:i.style)||{};var o=f.includes(e)?r({flex:1},a):r({flexShrink:0},a);if(e<s.length-1&&c>0){if(m==="horizontal"){o.marginRight=c}else{o.marginBottom=c}}return t(l,{style:o,key:e})}))})};export{o as FlexLayout};
5
5
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["@flatbiz/antd/src/flex-layout/flex-layout.tsx"],"sourcesContent":["import { classNames } from '@dimjs/utils';\nimport { toArray } from '@flatbiz/utils';\nimport { Children, cloneElement, CSSProperties, ReactElement, ReactNode } from 'react';\nimport './style.less';\n\nexport type FlexLayoutProps = {\n className?: string;\n fullIndex?: number | number[];\n direction?: 'vertical' | 'horizontal';\n onClick?: () => void;\n style?: CSSProperties;\n gap?: number;\n children?: ReactNode | null | Array<ReactNode | null>;\n};\n/**\n * flex布局\n * 1. direction:默认值vertical\n * 2. gap间隙距离\n * 3. fullIndex:指定children数组索引值对象flex=1\n * 4. 为children添加key属性\n * @param props\n * @returns\n */\nexport const FlexLayout = (props: FlexLayoutProps) => {\n const childrens = Children.toArray(props.children) as ReactElement[];\n const direction = props.direction || 'vertical';\n const gap = props.gap ? props.gap : 0;\n const fullIndexList = toArray<number>(props.fullIndex);\n return (\n <div\n className={classNames('v-flex-layout', `v-flex-${direction}`, props.className)}\n style={props.style}\n onClick={props.onClick}\n >\n {childrens.map((children, index) => {\n const childrenStyle = children.props?.style || {};\n const style = fullIndexList.includes(index) ? { flex: 1, ...childrenStyle } : childrenStyle;\n if (index < childrens.length - 1 && gap > 0) {\n if (direction === 'horizontal') {\n style.marginRight = gap;\n } else {\n style.marginBottom = gap;\n }\n }\n return cloneElement(children, { style, key: index });\n })}\n </div>\n );\n};\n"],"names":["FlexLayout","props","childrens","Children","toArray","children","direction","gap","fullIndexList","fullIndex","_jsx","className","_classNames","style","onClick","map","index","_children$props","childrenStyle","includes","_extends","flex","length","marginRight","marginBottom","cloneElement","key"],"mappings":";+PAuBaA,EAAa,SAAbA,EAAcC,GACzB,IAAMC,EAAYC,EAASC,QAAQH,EAAMI,UACzC,IAAMC,EAAYL,EAAMK,WAAa,WACrC,IAAMC,EAAMN,EAAMM,IAAMN,EAAMM,IAAM,EACpC,IAAMC,EAAgBJ,EAAgBH,EAAMQ,WAC5C,OACEC,EAAA,MAAA,CACEC,UAAWC,EAAW,gBAAe,UAAYN,EAAaL,EAAMU,WACpEE,MAAOZ,EAAMY,MACbC,QAASb,EAAMa,QAAQT,SAEtBH,EAAUa,KAAI,SAACV,EAAUW,GAAU,IAAAC,EAClC,IAAMC,IAAgBD,EAAAZ,EAASJ,QAAK,UAAA,EAAdgB,EAAgBJ,QAAS,CAAA,EAC/C,IAAMA,EAAQL,EAAcW,SAASH,GAAMI,EAAA,CAAKC,KAAM,GAAMH,GAAkBA,EAC9E,GAAIF,EAAQd,EAAUoB,OAAS,GAAKf,EAAM,EAAG,CAC3C,GAAID,IAAc,aAAc,CAC9BO,EAAMU,YAAchB,CACtB,KAAO,CACLM,EAAMW,aAAejB,CACvB,CACF,CACA,OAAOkB,EAAapB,EAAU,CAAEQ,MAAAA,EAAOa,IAAKV,QAIpD"}
1
+ {"version":3,"file":"index.js","sources":["@flatbiz/antd/src/flex-layout/flex-layout.tsx"],"sourcesContent":["import { classNames } from '@dimjs/utils';\nimport { toArray } from '@flatbiz/utils';\nimport { Children, cloneElement, CSSProperties, ReactElement, ReactNode } from 'react';\nimport './style.less';\n\nexport type FlexLayoutProps = {\n className?: string;\n fullIndex?: number | number[];\n direction?: 'vertical' | 'horizontal';\n onClick?: () => void;\n style?: CSSProperties;\n gap?: number;\n children?: ReactNode | null | Array<ReactNode | null>;\n};\n/**\n * flex布局\n * 1. direction:默认值vertical\n * 2. gap间隙距离\n * 3. fullIndex:指定children数组索引值对象flex=1\n * 4. 为children添加key属性\n * @param props\n * @returns\n */\nexport const FlexLayout = (props: FlexLayoutProps) => {\n const childrens = Children.toArray(props.children) as ReactElement[];\n const direction = props.direction || 'vertical';\n const gap = props.gap ? props.gap : 0;\n const fullIndexList = toArray<number>(props.fullIndex);\n\n return (\n <div\n className={classNames('v-flex-layout', `v-flex-${direction}`, props.className)}\n style={props.style}\n onClick={props.onClick}\n >\n {childrens.map((children, index) => {\n const childrenStyle = children.props?.style || {};\n const style = fullIndexList.includes(index)\n ? { flex: 1, ...childrenStyle }\n : { flexShrink: 0, ...childrenStyle };\n if (index < childrens.length - 1 && gap > 0) {\n if (direction === 'horizontal') {\n style.marginRight = gap;\n } else {\n style.marginBottom = gap;\n }\n }\n return cloneElement(children, { style, key: index });\n })}\n </div>\n );\n};\n"],"names":["FlexLayout","props","childrens","Children","toArray","children","direction","gap","fullIndexList","fullIndex","_jsx","className","_classNames","style","onClick","map","index","_children$props","childrenStyle","includes","_extends","flex","flexShrink","length","marginRight","marginBottom","cloneElement","key"],"mappings":";+PAuBaA,EAAa,SAAbA,EAAcC,GACzB,IAAMC,EAAYC,EAASC,QAAQH,EAAMI,UACzC,IAAMC,EAAYL,EAAMK,WAAa,WACrC,IAAMC,EAAMN,EAAMM,IAAMN,EAAMM,IAAM,EACpC,IAAMC,EAAgBJ,EAAgBH,EAAMQ,WAE5C,OACEC,EAAA,MAAA,CACEC,UAAWC,EAAW,gBAAe,UAAYN,EAAaL,EAAMU,WACpEE,MAAOZ,EAAMY,MACbC,QAASb,EAAMa,QAAQT,SAEtBH,EAAUa,KAAI,SAACV,EAAUW,GAAU,IAAAC,EAClC,IAAMC,IAAgBD,EAAAZ,EAASJ,QAAK,UAAA,EAAdgB,EAAgBJ,QAAS,CAAA,EAC/C,IAAMA,EAAQL,EAAcW,SAASH,GAAMI,EAAA,CACrCC,KAAM,GAAMH,GAAaE,EAAA,CACzBE,WAAY,GAAMJ,GACxB,GAAIF,EAAQd,EAAUqB,OAAS,GAAKhB,EAAM,EAAG,CAC3C,GAAID,IAAc,aAAc,CAC9BO,EAAMW,YAAcjB,CACtB,KAAO,CACLM,EAAMY,aAAelB,CACvB,CACF,CACA,OAAOmB,EAAarB,EAAU,CAAEQ,MAAAA,EAAOc,IAAKX,QAIpD"}
package/esm/index.js CHANGED
@@ -32,6 +32,7 @@ import './dialog-loading/index.css';
32
32
  import './drag-collapse/index.css';
33
33
  import './drag-collapse-form-list/index.css';
34
34
  import './drag-form-list/index.css';
35
+ import './drag-table/index.css';
35
36
  import './drawer-wrapper/index.css';
36
37
  import './dynamic-node/index.css';
37
38
  import './easy-table/index.css';
@@ -73,6 +74,7 @@ import './rich-text-viewer/index.css';
73
74
  import './roll-location-center/index.css';
74
75
  import './roll-location-in-view/index.css';
75
76
  import './rule-describe/index.css';
77
+ import './search-menu/index.css';
76
78
  import './selector-wrapper-search/index.css';
77
79
  import './selector-wrapper-simple/index.css';
78
80
  import './sms-count-down/index.css';
@@ -94,5 +96,5 @@ import './tree-selector-wrapper/index.css';
94
96
  import './tree-wrapper/index.css';
95
97
  import './index.css';
96
98
  /*! @flatjs/forge MIT @flatbiz/antd */
97
- export{AmountFenInput}from"./amount-fen-input/index.js";export{AmountFenInputFormItem}from"./amount-fen-input-form-item/index.js";export{AnchorSteps}from"./anchor-steps/index.js";export{ButtonOperate,ButtonOperateItemContent}from"./button-operate/index.js";export{ButtonWrapper}from"./button-wrapper/index.js";export{CascaderWrapper}from"./cascader-wrapper/index.js";export{CheckList}from"./check-list/index.js";export{CheckboxWrapper}from"./checkbox-wrapper/index.js";export{ColorPickerWrapper}from"./color-picker-wrapper/index.js";export{ConfigProviderWrapper}from"./config-provider-wrapper/index.js";export{createDrawerWrapperModel}from"./create-drawer-wrapper-model/index.js";export{createModalWrapperModel}from"./create-modal-wrapper-model/index.js";export{CssNodeHover}from"./css-node-hover/index.js";export{DataRender}from"./data-render/index.js";export{DatePickerWrapper}from"./date-picker-wrapper/index.js";export{DateRangePickerWrapper}from"./date-range-picker-wrapper/index.js";export{DateRangePickerWrapperFormItem}from"./date-range-picker-wrapper-form-item/index.js";export{dialogAlert}from"./dialog-alert/index.js";export{dialogConfirm}from"./dialog-confirm/index.js";export{dialogDrawer}from"./dialog-drawer/index.js";export{DialogDrawerContent}from"./dialog-drawer-content/index.js";export{dialogLoading}from"./dialog-loading/index.js";export{dialogModal}from"./dialog-modal/index.js";export{DragCollapse}from"./drag-collapse/index.js";export{DragCollapseFormList}from"./drag-collapse-form-list/index.js";export{DragFormList}from"./drag-form-list/index.js";export{DrawerWrapper}from"./drawer-wrapper/index.js";export{DropdownMenuWrapper}from"./dropdown-menu-wrapper/index.js";export{dynamicNode}from"./dynamic-node/index.js";export{EasyTable}from"./easy-table/index.js";export{EditableField}from"./editable-field/index.js";export{EditableFieldProvider}from"./editable-field-provider/index.js";export{EditableTable}from"./editable-table/index.js";export{EditorWrapper}from"./editor-wrapper/index.js";export{FbaApp}from"./fba-app/index.js";export{fbaHooks}from"./fba-hooks/index.js";export{fbaUtils}from"./fba-utils/index.js";export{FileImport}from"./file-import/index.js";export{FileSelect}from"./file-select/index.js";export{FlexLayout}from"./flex-layout/index.js";export{FormGrid}from"./form-grid/index.js";export{FormItemGroup}from"./form-item-group/index.js";export{FormItemHidden}from"./form-item-hidden/index.js";export{FormItemWrapper}from"./form-item-wrapper/index.js";export{FormListWrapper}from"./form-list-wrapper/index.js";export{Gap}from"./gap/index.js";export{IconWrapper}from"./icon-wrapper/index.js";export{InputSearchWrapper}from"./input-search-wrapper/index.js";export{InputTextAreaWrapper}from"./input-text-area-wrapper/index.js";export{InputWrapper}from"./input-wrapper/index.js";export{LabelValueLayout}from"./label-value-layout/index.js";export{LocalLoading}from"./local-loading/index.js";export{ModalAction}from"./modal-action/index.js";export{ModalWrapper}from"./modal-wrapper/index.js";export{PageFixedFooter}from"./page-fixed-footer/index.js";export{Page404}from"./page404/index.js";export{P as PaginationWrapper}from"./index-e98b9352.js";export{Permission}from"./permission/index.js";export{preDefinedClassName}from"./pre-defined-class-name/index.js";export{RadioGroupWrapper}from"./radio-group-wrapper/index.js";export{RelationTree}from"./relation-tree/index.js";export{RequestStatus}from"./request-status/index.js";export{RichTextEditor}from"./rich-text-editor/index.js";export{RichTextViewer}from"./rich-text-viewer/index.js";export{RollLocationCenter}from"./roll-location-center/index.js";export{RollLocationInView}from"./roll-location-in-view/index.js";export{RuleDescribe}from"./rule-describe/index.js";export{SelectorWrapper}from"./selector-wrapper/index.js";export{SelectorWrapperSearch}from"./selector-wrapper-search/index.js";export{SelectorWrapperSimple}from"./selector-wrapper-simple/index.js";export{SimpleLayout}from"./simple-layout/index.js";export{SmsCountDown}from"./sms-count-down/index.js";export{styles}from"./styles/index.js";export{SwitchConfirmWrapper}from"./switch-confirm-wrapper/index.js";export{SwitchWrapper}from"./switch-wrapper/index.js";export{tableCellRender}from"./table-cell-render/index.js";export{TableScrollbar}from"./table-scrollbar/index.js";export{TableTitleTooltip}from"./table-title-tooltip/index.js";export{TabsWrapper}from"./tabs-wrapper/index.js";export{TagGroup}from"./tag-group/index.js";export{TagListSelect}from"./tag-list-select/index.js";export{TagWrapper}from"./tag-wrapper/index.js";export{TextCssEllipsis}from"./text-css-ellipsis/index.js";export{TextOverflowRender}from"./text-overflow-render/index.js";export{TimePickerWrapper}from"./time-picker-wrapper/index.js";export{TimeRangePickerWrapper}from"./time-range-picker-wrapper/index.js";export{TimeRangePickerWrapperFormItem}from"./time-range-picker-wrapper-form-item/index.js";export{TipsTitle}from"./tips-title/index.js";export{TipsWrapper}from"./tips-wrapper/index.js";export{TreeSelectorWrapper}from"./tree-selector-wrapper/index.js";export{TreeWrapper}from"./tree-wrapper/index.js";export{UploadWrapper}from"./upload-wrapper/index.js";import"./_rollupPluginBabelHelpers-fc015ef2.js";import"@flatbiz/utils";import"antd";import"react/jsx-runtime";import"@dimjs/utils/cjs/class-names";import"react";import"@ant-design/icons/es/icons/MoreOutlined";import"@dimjs/lang/cjs/is-undefined";import"@dimjs/lang/cjs/is-plain-object";import"@dimjs/lang/cjs/is-string";import"@dimjs/lang/cjs/is-promise";import"@wove/react/cjs/hooks";import"@ant-design/icons/es/icons/LoadingOutlined";import"@ant-design/icons/es/icons/RedoOutlined";import"@dimjs/utils/cjs/extend";import"@dimjs/model";import"@dimjs/model-react";import"@wove/react/cjs/create-ctx";import"@ant-design/icons/es/icons/CloseCircleOutlined";import"@flatbiz/antd";import"antd/es/locale/en_US";import"antd/es/locale/zh_CN";import"dayjs";import"dayjs/locale/en";import"dayjs/locale/zh-cn";import"dayjs/plugin/advancedFormat";import"dayjs/plugin/customParseFormat";import"dayjs/plugin/localeData";import"dayjs/plugin/utc";import"dayjs/plugin/weekday";import"dayjs/plugin/weekOfYear";import"dayjs/plugin/weekYear";import"./time-53b3f55f.js";import"@dimjs/lang/cjs/is-array";import"react-dom/client";import"./dom-4d04aa64.js";import"./context-1f2093c6.js";import"ahooks";import"@dimjs/utils/cjs/array";import"@dnd-kit/core";import"@dnd-kit/sortable";import"@ant-design/icons/es/icons/DragOutlined";import"@dnd-kit/utilities";import"@ant-design/icons/es/icons/SaveOutlined";import"@ant-design/icons/es/icons/ExclamationCircleFilled";import"@ant-design/icons/es/icons/DownOutlined";import"@ant-design/icons/es/icons/UpOutlined";import"react-is";import"@ant-design/icons/es/icons/CloseOutlined";import"@ant-design/icons/es/icons/CheckOutlined";import"@dimjs/lang/cjs/is-number";import"@ant-design/icons/es/icons/EditOutlined";import"./context-25d0b686.js";import"@ant-design/icons/es/icons/PlusOutlined";import"@dimjs/lang/cjs/is-boolean";import"@ant-design/icons/es/icons/DeleteOutlined";import"@wove/react/cjs/editor";import"./use-responsive-point-21b8c601.js";import"@dimjs/lang/cjs/is-deep-equal";import"@tinymce/tinymce-react";import"@ant-design/icons/es/icons/PlusCircleOutlined";import"@ant-design/icons/es/icons/FullscreenOutlined";import"@dimjs/utils/cjs/get";import"@dimjs/utils/cjs/json";import"pubsub-js";import"@dimjs/lang/cjs/is-object";import"@dimjs/lang/cjs/is-empty";import"@ant-design/icons/es/icons/QuestionCircleOutlined";import"dayjs/plugin/isSameOrAfter";import"dayjs/plugin/isSameOrBefore";import"@ant-design/icons/es/icons/CaretDownFilled";import"dequal";import"@dimjs/utils/cjs/tree";import"react-dom";
99
+ export{AmountFenInput}from"./amount-fen-input/index.js";export{AmountFenInputFormItem}from"./amount-fen-input-form-item/index.js";export{AnchorSteps}from"./anchor-steps/index.js";export{ButtonOperate,ButtonOperateItemContent}from"./button-operate/index.js";export{ButtonWrapper}from"./button-wrapper/index.js";export{CascaderWrapper}from"./cascader-wrapper/index.js";export{CheckList}from"./check-list/index.js";export{CheckboxWrapper}from"./checkbox-wrapper/index.js";export{ColorPickerWrapper}from"./color-picker-wrapper/index.js";export{ConfigProviderWrapper}from"./config-provider-wrapper/index.js";export{createDrawerWrapperModel}from"./create-drawer-wrapper-model/index.js";export{createModalWrapperModel}from"./create-modal-wrapper-model/index.js";export{CssNodeHover}from"./css-node-hover/index.js";export{DataRender}from"./data-render/index.js";export{DatePickerWrapper}from"./date-picker-wrapper/index.js";export{DateRangePickerWrapper}from"./date-range-picker-wrapper/index.js";export{DateRangePickerWrapperFormItem}from"./date-range-picker-wrapper-form-item/index.js";export{dialogAlert}from"./dialog-alert/index.js";export{dialogConfirm}from"./dialog-confirm/index.js";export{dialogDrawer}from"./dialog-drawer/index.js";export{DialogDrawerContent}from"./dialog-drawer-content/index.js";export{dialogLoading}from"./dialog-loading/index.js";export{dialogModal}from"./dialog-modal/index.js";export{DragCollapse}from"./drag-collapse/index.js";export{DragCollapseFormList}from"./drag-collapse-form-list/index.js";export{DragFormList}from"./drag-form-list/index.js";export{DragTable}from"./drag-table/index.js";export{DrawerWrapper}from"./drawer-wrapper/index.js";export{DropdownMenuWrapper}from"./dropdown-menu-wrapper/index.js";export{dynamicNode}from"./dynamic-node/index.js";export{EasyTable}from"./easy-table/index.js";export{EditableField}from"./editable-field/index.js";export{EditableFieldProvider}from"./editable-field-provider/index.js";export{EditableTable}from"./editable-table/index.js";export{EditorWrapper}from"./editor-wrapper/index.js";export{FbaApp}from"./fba-app/index.js";export{fbaHooks}from"./fba-hooks/index.js";export{fbaUtils}from"./fba-utils/index.js";export{FileImport}from"./file-import/index.js";export{FileSelect}from"./file-select/index.js";export{FlexLayout}from"./flex-layout/index.js";export{FormGrid}from"./form-grid/index.js";export{FormItemGroup}from"./form-item-group/index.js";export{FormItemHidden}from"./form-item-hidden/index.js";export{FormItemWrapper}from"./form-item-wrapper/index.js";export{FormListWrapper}from"./form-list-wrapper/index.js";export{Gap}from"./gap/index.js";export{IconWrapper}from"./icon-wrapper/index.js";export{InputSearchWrapper}from"./input-search-wrapper/index.js";export{InputTextAreaWrapper}from"./input-text-area-wrapper/index.js";export{InputWrapper}from"./input-wrapper/index.js";export{LabelValueLayout}from"./label-value-layout/index.js";export{LocalLoading}from"./local-loading/index.js";export{ModalAction}from"./modal-action/index.js";export{ModalWrapper}from"./modal-wrapper/index.js";export{PageFixedFooter}from"./page-fixed-footer/index.js";export{Page404}from"./page404/index.js";export{P as PaginationWrapper}from"./index-e98b9352.js";export{Permission}from"./permission/index.js";export{preDefinedClassName}from"./pre-defined-class-name/index.js";export{RadioGroupWrapper}from"./radio-group-wrapper/index.js";export{RelationTree}from"./relation-tree/index.js";export{RequestStatus}from"./request-status/index.js";export{RichTextEditor}from"./rich-text-editor/index.js";export{RichTextViewer}from"./rich-text-viewer/index.js";export{RollLocationCenter}from"./roll-location-center/index.js";export{RollLocationInView}from"./roll-location-in-view/index.js";export{RuleDescribe}from"./rule-describe/index.js";export{SearchMenu}from"./search-menu/index.js";export{SelectorWrapper}from"./selector-wrapper/index.js";export{SelectorWrapperSearch}from"./selector-wrapper-search/index.js";export{SelectorWrapperSimple}from"./selector-wrapper-simple/index.js";export{SimpleLayout}from"./simple-layout/index.js";export{SmsCountDown}from"./sms-count-down/index.js";export{styles}from"./styles/index.js";export{SwitchConfirmWrapper}from"./switch-confirm-wrapper/index.js";export{SwitchWrapper}from"./switch-wrapper/index.js";export{tableCellRender}from"./table-cell-render/index.js";export{TableScrollbar}from"./table-scrollbar/index.js";export{TableTitleTooltip}from"./table-title-tooltip/index.js";export{TabsWrapper}from"./tabs-wrapper/index.js";export{TagGroup}from"./tag-group/index.js";export{TagListSelect}from"./tag-list-select/index.js";export{TagWrapper}from"./tag-wrapper/index.js";export{TextCssEllipsis}from"./text-css-ellipsis/index.js";export{TextOverflowRender}from"./text-overflow-render/index.js";export{TimePickerWrapper}from"./time-picker-wrapper/index.js";export{TimeRangePickerWrapper}from"./time-range-picker-wrapper/index.js";export{TimeRangePickerWrapperFormItem}from"./time-range-picker-wrapper-form-item/index.js";export{TipsTitle}from"./tips-title/index.js";export{TipsWrapper}from"./tips-wrapper/index.js";export{TreeSelectorWrapper}from"./tree-selector-wrapper/index.js";export{TreeWrapper}from"./tree-wrapper/index.js";export{UploadWrapper}from"./upload-wrapper/index.js";import"./_rollupPluginBabelHelpers-fc015ef2.js";import"@flatbiz/utils";import"antd";import"react/jsx-runtime";import"@dimjs/utils/cjs/class-names";import"react";import"@ant-design/icons/es/icons/MoreOutlined";import"@dimjs/lang/cjs/is-undefined";import"@dimjs/lang/cjs/is-plain-object";import"@dimjs/lang/cjs/is-string";import"@dimjs/lang/cjs/is-promise";import"@wove/react/cjs/hooks";import"@ant-design/icons/es/icons/LoadingOutlined";import"@ant-design/icons/es/icons/RedoOutlined";import"@dimjs/utils/cjs/extend";import"@dimjs/model";import"@dimjs/model-react";import"@wove/react/cjs/create-ctx";import"@ant-design/icons/es/icons/CloseCircleOutlined";import"@flatbiz/antd";import"antd/es/locale/en_US";import"antd/es/locale/zh_CN";import"dayjs";import"dayjs/locale/en";import"dayjs/locale/zh-cn";import"dayjs/plugin/advancedFormat";import"dayjs/plugin/customParseFormat";import"dayjs/plugin/localeData";import"dayjs/plugin/utc";import"dayjs/plugin/weekday";import"dayjs/plugin/weekOfYear";import"dayjs/plugin/weekYear";import"./time-53b3f55f.js";import"@dimjs/lang/cjs/is-array";import"react-dom/client";import"./dom-4d04aa64.js";import"./context-1f2093c6.js";import"ahooks";import"@dimjs/utils/cjs/array";import"@dnd-kit/core";import"@dnd-kit/sortable";import"@ant-design/icons/es/icons/DragOutlined";import"@dnd-kit/utilities";import"@dnd-kit/modifiers";import"@ant-design/icons/es/icons/SaveOutlined";import"@ant-design/icons/es/icons/ExclamationCircleFilled";import"@ant-design/icons/es/icons/DownOutlined";import"@ant-design/icons/es/icons/UpOutlined";import"react-is";import"@ant-design/icons/es/icons/CloseOutlined";import"@ant-design/icons/es/icons/CheckOutlined";import"@dimjs/lang/cjs/is-number";import"@ant-design/icons/es/icons/EditOutlined";import"./context-25d0b686.js";import"@ant-design/icons/es/icons/PlusOutlined";import"@dimjs/lang/cjs/is-boolean";import"@ant-design/icons/es/icons/DeleteOutlined";import"@wove/react/cjs/editor";import"./use-responsive-point-21b8c601.js";import"@dimjs/lang/cjs/is-deep-equal";import"@tinymce/tinymce-react";import"@ant-design/icons/es/icons/PlusCircleOutlined";import"@ant-design/icons/es/icons/FullscreenOutlined";import"@dimjs/utils/cjs/get";import"@dimjs/utils/cjs/json";import"pubsub-js";import"@dimjs/lang/cjs/is-object";import"@dimjs/lang/cjs/is-empty";import"@ant-design/icons/es/icons/QuestionCircleOutlined";import"dayjs/plugin/isSameOrAfter";import"dayjs/plugin/isSameOrBefore";import"@ant-design/icons/es/icons/CaretDownFilled";import"dequal";import"@dimjs/utils/cjs/tree";import"react-dom";
98
100
  //# sourceMappingURL=index.js.map
File without changes
@@ -0,0 +1,7 @@
1
+ /* eslint-disable */
2
+ import './../fba-hooks/index.css';
3
+ import './../input-search-wrapper/index.css';
4
+ import './index.css';
5
+ /*! @flatjs/forge MIT @flatbiz/antd */
6
+ import{hooks as e}from"@wove/react/cjs/hooks";import{_ as r}from"../_rollupPluginBabelHelpers-fc015ef2.js";import{cloneState as n}from"@dimjs/model";import{treeFieldNameChangeAdapter as l,treeFilter as i,treeToArray as o,valueIsEqual as t}from"@flatbiz/utils";import{Menu as a}from"antd";import{useState as u,useRef as c,useMemo as d}from"react";import{fbaHooks as s}from"../fba-hooks/index.js";import{InputSearchWrapper as f}from"../input-search-wrapper/index.js";import{jsxs as m,jsx as p}from"react/jsx-runtime";import"@dimjs/lang/cjs/is-array";import"../use-responsive-point-21b8c601.js";function v(v){var h=v.value,y=v.onChange,k=v.dataSource,b=v.searchKeyList,j=v.wrapStyle,g=v.style,C=v.placeholder,w=v.fieldNames,S=v.renderItem,x=v.lazySearch,N=v.className;var K=u([]),z=K[0],E=K[1];var I=c();var P=d((function(){return r({label:"label",key:"key",children:"children"},w)}),[w]);var _=b!=null&&b.length?b:[P.label];var B=d((function(){var e=P.label,n=P.key,i=P.children;return l(z,(function(l){return r({},l,{label:S?S(l):l==null?void 0:l[e],key:l==null?void 0:l[n],children:l==null?void 0:l[i]})}))}),[z,P,S]);s.useEffectCustom((function(){H("")}),[k]);var H=function e(r){if(!r){I.current=undefined;E(n(k)||[]);return}var l=i(n(k),(function(e){return!!(_!=null&&_.find((function(n){var l;return(l=e[n])==null?void 0:l.includes(r)})))}),{childrenName:P.children});I.current=o(l,P.children).map((function(e){return String(e[P.key])}));E(l)};var L=function e(r){H(r.target.value)};var R=e.useCallbackRef((function(e){var r=o(k,P.children).find((function(r){return t(e.key,r[P.key])}));y==null?void 0:y(e.key,e.keyPath,r)}));return m("div",{style:j,className:N,children:[p(f,{onSearch:x?H:undefined,onChange:!x?L:undefined,placeholder:C||"请输入搜索关键词",allowClear:true}),p(a,{openKeys:I.current,mode:"inline",items:B,selectedKeys:h?[h]:undefined,onClick:R,style:r({overflowY:"auto",borderInlineEnd:"none"},g)})]})}export{v as SearchMenu};
7
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sources":["@flatbiz/antd/src/search-menu/search-menu.tsx"],"sourcesContent":["import { cloneState } from '@dimjs/model';\nimport { PlainObject } from '@dimjs/utils';\nimport {\n TAny,\n TPlainObject,\n treeFieldNameChangeAdapter,\n treeFilter,\n treeToArray,\n valueIsEqual,\n} from '@flatbiz/utils';\nimport { hooks } from '@wove/react';\nimport { Menu } from 'antd';\nimport { ItemType, MenuItemType } from 'antd/es/menu/hooks/useItems';\nimport { FC, useMemo, useRef, useState } from 'react';\nimport { fbaHooks } from '../fba-hooks';\nimport { InputSearchWrapper, InputSearchWrapperProps } from '../input-search-wrapper';\n\nexport interface ISearchMenuProps {\n /**\n * 如果传了value,就变成受控组件\n * 目前只支持单选\n */\n value?: string;\n onChange?: (key: string, keyPath: string[], targetItem?: PlainObject) => void;\n /** 树型源数据 */\n dataSource: TPlainObject[];\n /** 惰性搜索 */\n lazySearch?: boolean;\n /** 搜索目标字段 */\n searchKeyList?: string[];\n /** 格式化参数 */\n fieldNames?: {\n label?: string;\n key?: string;\n children?: string;\n };\n /** 自定义渲染条目 */\n renderItem?: FC<TAny>;\n /** 搜索框参数 */\n inputProps?: InputSearchWrapperProps;\n placeholder?: string;\n className?: string;\n wrapStyle?: React.CSSProperties;\n style?: React.CSSProperties;\n}\n\n/**\n * 列表搜索\n * @param props\n * @returns\n */\nexport function SearchMenu(props: ISearchMenuProps) {\n const {\n value,\n onChange,\n dataSource,\n searchKeyList,\n wrapStyle,\n style,\n placeholder,\n fieldNames,\n renderItem,\n lazySearch,\n className,\n } = props;\n const [listFilter, setListFilter] = useState<TPlainObject[]>([]);\n const openKeysRef = useRef<string[]>();\n\n /** 格式化对象 */\n const mergeFormatOption = useMemo(() => {\n return {\n label: 'label',\n key: 'key',\n children: 'children',\n ...fieldNames,\n };\n }, [fieldNames]);\n\n /** 可搜索的字段值 */\n const targetSearchKeyList = searchKeyList?.length ? searchKeyList : [mergeFormatOption.label];\n\n /** 生成菜单列表 */\n const menuList = useMemo(() => {\n const { label, key, children } = mergeFormatOption;\n return treeFieldNameChangeAdapter(listFilter, (item) => {\n return {\n ...item,\n label: renderItem ? renderItem(item) : item?.[label],\n key: item?.[key],\n children: item?.[children],\n };\n }) as ItemType<MenuItemType>[];\n }, [listFilter, mergeFormatOption, renderItem]);\n\n /**\n * 数据格式化\n */\n fbaHooks.useEffectCustom(() => {\n handleSearch('');\n }, [dataSource]);\n\n /** 搜索 */\n const handleSearch = (searchWord: string) => {\n if (!searchWord) {\n // 清空搜索词还原列表\n openKeysRef.current = undefined;\n setListFilter(cloneState(dataSource) || []);\n return;\n }\n const resList = treeFilter(\n cloneState(dataSource),\n (item) => {\n return !!targetSearchKeyList?.find((key) => {\n return item[key]?.includes(searchWord);\n });\n },\n {\n childrenName: mergeFormatOption.children,\n },\n ) as TPlainObject[];\n openKeysRef.current = treeToArray(resList, mergeFormatOption.children).map((item) =>\n String(item[mergeFormatOption.key]),\n );\n setListFilter(resList);\n };\n\n /**\n * 搜索词变换\n * @param e\n */\n const handleWordChange = (e) => {\n handleSearch(e.target.value);\n };\n\n /**\n * 点击菜单\n */\n const onClick = hooks.useCallbackRef((data) => {\n const targetItem = treeToArray(dataSource, mergeFormatOption.children).find((item) =>\n valueIsEqual(data.key, item[mergeFormatOption.key]),\n );\n onChange?.(data.key, data.keyPath, targetItem);\n });\n\n return (\n <div style={wrapStyle} className={className}>\n <InputSearchWrapper\n onSearch={lazySearch ? handleSearch : undefined}\n onChange={!lazySearch ? handleWordChange : undefined}\n placeholder={placeholder || '请输入搜索关键词'}\n allowClear\n />\n <Menu\n openKeys={openKeysRef.current}\n mode=\"inline\"\n items={menuList}\n selectedKeys={value ? [value] : undefined}\n onClick={onClick}\n style={{\n overflowY: 'auto',\n borderInlineEnd: 'none',\n ...style,\n }}\n />\n </div>\n );\n}\n"],"names":["SearchMenu","props","value","onChange","dataSource","searchKeyList","wrapStyle","style","placeholder","fieldNames","renderItem","lazySearch","className","_useState","useState","listFilter","setListFilter","openKeysRef","useRef","mergeFormatOption","useMemo","_extends","label","key","children","targetSearchKeyList","length","menuList","treeFieldNameChangeAdapter","item","fbaHooks","useEffectCustom","handleSearch","searchWord","current","undefined","cloneState","resList","treeFilter","find","_item$key","includes","childrenName","treeToArray","map","String","handleWordChange","e","target","onClick","_hooks","useCallbackRef","data","targetItem","valueIsEqual","keyPath","_jsxs","_jsx","InputSearchWrapper","onSearch","allowClear","Menu","openKeys","mode","items","selectedKeys","overflowY","borderInlineEnd"],"mappings":";glBAmDO,SAASA,EAAWC,GACzB,IACEC,EAWED,EAXFC,MACAC,EAUEF,EAVFE,SACAC,EASEH,EATFG,WACAC,EAQEJ,EARFI,cACAC,EAOEL,EAPFK,UACAC,EAMEN,EANFM,MACAC,EAKEP,EALFO,YACAC,EAIER,EAJFQ,WACAC,EAGET,EAHFS,WACAC,EAEEV,EAFFU,WACAC,EACEX,EADFW,UAEF,IAAAC,EAAoCC,EAAyB,IAAtDC,EAAUF,EAAA,GAAEG,EAAaH,EAAA,GAChC,IAAMI,EAAcC,IAGpB,IAAMC,EAAoBC,GAAQ,WAChC,OAAAC,EAAA,CACEC,MAAO,QACPC,IAAK,MACLC,SAAU,YACPf,EAEP,GAAG,CAACA,IAGJ,IAAMgB,EAAsBpB,GAAa,MAAbA,EAAeqB,OAASrB,EAAgB,CAACc,EAAkBG,OAGvF,IAAMK,EAAWP,GAAQ,WACvB,IAAQE,EAAyBH,EAAzBG,MAAOC,EAAkBJ,EAAlBI,IAAKC,EAAaL,EAAbK,SACpB,OAAOI,EAA2Bb,GAAY,SAACc,GAC7C,OAAAR,KACKQ,EAAI,CACPP,MAAOZ,EAAaA,EAAWmB,GAAQA,GAAI,UAAA,EAAJA,EAAOP,GAC9CC,IAAKM,GAAI,UAAA,EAAJA,EAAON,GACZC,SAAUK,GAAAA,UAAAA,EAAAA,EAAOL,IAErB,GACD,GAAE,CAACT,EAAYI,EAAmBT,IAKnCoB,EAASC,iBAAgB,WACvBC,EAAa,GACf,GAAG,CAAC5B,IAGJ,IAAM4B,EAAe,SAAfA,EAAgBC,GACpB,IAAKA,EAAY,CAEfhB,EAAYiB,QAAUC,UACtBnB,EAAcoB,EAAWhC,IAAe,IACxC,MACF,CACA,IAAMiC,EAAUC,EACdF,EAAWhC,IACX,SAACyB,GACC,SAASJ,GAAAA,MAAAA,EAAqBc,MAAK,SAAChB,GAAQ,IAAAiB,EAC1C,OAAAA,EAAOX,EAAKN,KAALiB,UAAAA,EAAAA,EAAWC,SAASR,EAC5B,IACH,GACA,CACES,aAAcvB,EAAkBK,WAGpCP,EAAYiB,QAAUS,EAAYN,EAASlB,EAAkBK,UAAUoB,KAAI,SAACf,GAAI,OAC9EgB,OAAOhB,EAAKV,EAAkBI,KAAK,IAErCP,EAAcqB,IAOhB,IAAMS,EAAmB,SAAnBA,EAAoBC,GACxBf,EAAae,EAAEC,OAAO9C,QAMxB,IAAM+C,EAAUC,EAAMC,gBAAe,SAACC,GACpC,IAAMC,EAAaV,EAAYvC,EAAYe,EAAkBK,UAAUe,MAAK,SAACV,GAAI,OAC/EyB,EAAaF,EAAK7B,IAAKM,EAAKV,EAAkBI,KAAK,IAErDpB,GAAAA,UAAAA,EAAAA,EAAWiD,EAAK7B,IAAK6B,EAAKG,QAASF,EACrC,IAEA,OACEG,EAAA,MAAA,CAAKjD,MAAOD,EAAWM,UAAWA,EAAUY,SAAA,CAC1CiC,EAACC,EAAkB,CACjBC,SAAUhD,EAAaqB,EAAeG,UACtChC,UAAWQ,EAAamC,EAAmBX,UAC3C3B,YAAaA,GAAe,WAC5BoD,WAAU,OAEZH,EAACI,EAAI,CACHC,SAAU7C,EAAYiB,QACtB6B,KAAK,SACLC,MAAOrC,EACPsC,aAAc/D,EAAQ,CAACA,GAASiC,UAChCc,QAASA,EACT1C,MAAKc,EAAA,CACH6C,UAAW,OACXC,gBAAiB,QACd5D,OAKb"}
@@ -1 +1 @@
1
- .simple-layout{background-color:#fff;border-radius:6px;padding:15px}.simple-layout>.ant-form{margin-bottom:-15px}.simple-layout>.ant-form .ant-form-item{margin:0 0 15px}.simple-layout>.ant-form .ant-form-item-label{width:82px}.simple-layout>.ant-form .ant-form-item-label.ant-col-auto{width:auto}.simple-layout .ant-table-thead>tr>th{background:#f6f6f6}.simple-layout .ant-descriptions-item{padding-bottom:10px}.simple-layout .ant-descriptions-item-label{color:#999}.simple-layout .ant-table-pagination.ant-pagination{margin:16px 0 0}.simple-layout .simple-layout-content{position:relative}.simple-layout .simple-layout-content>.ant-row:last-child{margin-bottom:0}.simple-layout .simple-layout-content>.ant-row:last-child .ant-upload-list{padding-bottom:15px}.simple-layout .simple-layout-content>.ant-descriptions:not(.ant-descriptions-bordered):last-child{margin-bottom:-10px}.simple-layout .v-tree-wrapper-tree{padding:5px 0 0}.simple-layout-title-sign{padding-left:10px;position:relative}.simple-layout-title-sign:before{background:var(--simple-layout-colorPrimary);border-radius:3px;content:"";height:14px;left:0;margin-top:-7px;position:absolute;top:50%;width:3px}.simple-layout-title{color:rgba(0,0,0,.85);font-size:16px;font-weight:500;overflow:hidden;position:relative;text-overflow:ellipsis;white-space:nowrap}.simple-layout-title+.simple-layout-content,.simple-layout-title-sign+.simple-layout-content{margin-top:10px}.simple-layout-desc{color:rgba(0,0,0,.55);font-size:12px}.simple-layout+.simple-layout,.simple-layout-desc+.simple-layout-content{margin-top:10px}.simple-layout+.ant-divider{margin:0 0 15px}.simple-layout-formlabel-left .ant-form-item-label{text-align:left}.simple-layout-tight.simple-layout{margin-top:0;padding:0}.simple-layout-title-extra-space{justify-content:space-between;width:100%}.simple-layout-title-fixed{display:flex;flex-direction:column;height:100%;overflow:hidden}.simple-layout-title-fixed>.simple-layout-content{flex:1;overflow-y:auto}.simple-layout-small.simple-layout{padding:8px 15px}.simple-layout-small.simple-layout>.ant-form{margin-bottom:-8px}.simple-layout-small.simple-layout>.ant-form .ant-form-item{margin:0 0 8px}
1
+ .simple-layout{background-color:#fff;border-radius:6px;padding:15px}.simple-layout>.simple-layout-content>.ant-form{margin-bottom:-15px}.simple-layout>.simple-layout-content>.ant-form .ant-form-item{margin:0 0 15px}.simple-layout>.simple-layout-content>.ant-form .ant-form-item-label{width:82px}.simple-layout>.simple-layout-content>.ant-form .ant-form-item-label.ant-col-auto{width:auto}.simple-layout .ant-table-thead>tr>th{background:#f6f6f6}.simple-layout .ant-descriptions-item{padding-bottom:10px}.simple-layout .ant-descriptions-item-label{color:#999}.simple-layout .ant-table-pagination.ant-pagination{margin:16px 0 0}.simple-layout .simple-layout-content{position:relative}.simple-layout .simple-layout-content>.ant-row:last-child{margin-bottom:0}.simple-layout .simple-layout-content>.ant-row:last-child .ant-upload-list{padding-bottom:15px}.simple-layout .simple-layout-content>.ant-descriptions:not(.ant-descriptions-bordered):last-child{margin-bottom:-10px}.simple-layout .v-tree-wrapper-tree{padding:5px 0 0}.simple-layout-title-sign{padding-left:10px;position:relative}.simple-layout-title-sign:before{background:var(--simple-layout-colorPrimary);border-radius:3px;content:"";height:14px;left:0;margin-top:-7px;position:absolute;top:50%;width:3px}.simple-layout-title{color:rgba(0,0,0,.85);font-size:16px;font-weight:500;overflow:hidden;position:relative;text-overflow:ellipsis;white-space:nowrap}.simple-layout-title+.simple-layout-content,.simple-layout-title-sign+.simple-layout-content{margin-top:10px}.simple-layout-desc{color:rgba(0,0,0,.55);font-size:12px}.simple-layout+.simple-layout,.simple-layout-desc+.simple-layout-content{margin-top:10px}.simple-layout+.ant-divider{margin:0 0 15px}.simple-layout-formlabel-left .ant-form-item-label{text-align:left}.simple-layout-tight.simple-layout{margin-top:0;padding:0}.simple-layout-title-extra-space{justify-content:space-between;width:100%}.simple-layout-title-fixed{display:flex;flex-direction:column;height:100%;overflow:hidden}.simple-layout-title-fixed>.simple-layout-content{flex:1;overflow-y:auto}.simple-layout-small.simple-layout{padding:8px 15px}.simple-layout-small.simple-layout>.simple-layout-content>.ant-form{margin-bottom:-8px}.simple-layout-small.simple-layout>.simple-layout-content>.ant-form .ant-form-item{margin:0 0 8px}
@@ -12,5 +12,5 @@ import './../flex-layout/index.css';
12
12
  import './../input-search-wrapper/index.css';
13
13
  import './index.css';
14
14
  /*! @flatjs/forge MIT @flatbiz/antd */
15
- import{treeToArray as e,treeToTiledArray as r,treeLeafParentsArray as t,isUndefinedOrNull as n,treeFilter as a,attachPropertiesToComponent as i}from"@flatbiz/utils";import{isArray as l}from"@dimjs/lang/cjs/is-array";import{Model as s}from"@dimjs/model-react";import o from"@ant-design/icons/es/icons/CaretDownFilled";import u from"@ant-design/icons/es/icons/MoreOutlined";import{classNames as c}from"@dimjs/utils/cjs/class-names";import{extend as d}from"@dimjs/utils/cjs/extend";import{hooks as v}from"@wove/react/cjs/hooks";import{a as f,_ as p}from"../_rollupPluginBabelHelpers-fc015ef2.js";import{cloneState as m}from"@dimjs/model";import{Spin as h,Tree as g,Button as b,message as y}from"antd";import{forwardRef as L,useState as j,useMemo as w,useRef as C,useImperativeHandle as N,Fragment as R,isValidElement as q}from"react";import{ButtonOperate as k}from"../button-operate/index.js";import{DropdownMenuWrapper as x}from"../dropdown-menu-wrapper/index.js";import{fbaHooks as S}from"../fba-hooks/index.js";import{InputSearchWrapper as T}from"../input-search-wrapper/index.js";import{RequestStatus as P}from"../request-status/index.js";import{tree as D}from"@dimjs/utils/cjs/tree";import{isObject as E}from"@dimjs/lang/cjs/is-object";import"dequal";import{jsxs as A,jsx as _}from"react/jsx-runtime";import"@dimjs/lang/cjs/is-undefined";import"@dimjs/lang/cjs/is-plain-object";import"@dimjs/lang/cjs/is-string";import"@dimjs/lang/cjs/is-promise";import"../button-wrapper/index.js";import"@ant-design/icons/es/icons/LoadingOutlined";import"../config-provider-wrapper/index.js";import"antd/es/locale/en_US";import"antd/es/locale/zh_CN";import"dayjs";import"dayjs/locale/en";import"dayjs/locale/zh-cn";import"dayjs/plugin/advancedFormat";import"dayjs/plugin/customParseFormat";import"dayjs/plugin/localeData";import"dayjs/plugin/utc";import"dayjs/plugin/weekday";import"dayjs/plugin/weekOfYear";import"dayjs/plugin/weekYear";import"../fba-utils/index.js";import"@ant-design/icons/es/icons/ExclamationCircleFilled";import"../dialog-confirm/index.js";import"../dialog-modal/index.js";import"ahooks";import"react-dom/client";import"../flex-layout/index.js";import"../use-responsive-point-21b8c601.js";var I={treeList:[],treeTiledArray:[],queryIsEmpty:false};var O={actions:{setTreeList:function r(t){return function(r){r.treeList=t.treeList||[];r.treeTiledArray=e(r.treeList,t.childrenName);r.requestStatus="request-success"}},resetTreeList:function e(){return function(e){e.treeList=[]}},changeRequestStatus:function e(r){return function(e){e.requestStatus=r;if(r==="request-error"){e.treeList=[]}}},treeListAppendChildren:function r(t){return function(r){var n=e(r.treeList,t.childrenName);var a=n.find((function(e){return e[t.valueName]===t.value}));if(a){if(l(t.appendList)&&t.appendList.length>0){a[t.childrenName]=t.appendList}else{a.isLeaf=true}}r.treeTiledArray=e(r.treeList,t.childrenName)}}},state:I};var V={};var F=function e(r){if(!V[r]){V[r]=s(O)}return V[r]};var K=function e(r){var t=F(r).getState();return t.treeList};var M=function e(n,a,i){var l=r(a,i);return t(n,l,true,{value:"value",parentValue:"parentValue"})};var U=function e(r,t){var a=n(r)?[]:r;a=l(a)?a:[a];a=a.map((function(e){if(E(e))return e[t.value];return e}));return a};var z=function e(r,t,n){var a=n.node.key;var i=n.dragNode.key;var l=n.node.pos.split("-");var s=n.dropPosition-Number(l[l.length-1]);var o=t.value;var u=t.children;var c=function e(r,t,n){for(var a=0;a<r.length;a++){if(r[a][o]===t){return n(r[a],a,r)}if(r[a][u]){e(r[a][u],t,n)}}};var d=m(r);var v;c(d,i,(function(e,r,t){t.splice(r,1);v=e}));if(!n.dropToGap){c(d,a,(function(e){e[u]=e[u]||[];e[u].unshift(v)}))}else if((n.node.props.children||[]).length>0&&n.node.props.expanded&&s===1){c(d,a,(function(e){e[u]=e[u]||[];e[u].unshift(v)}))}else{var f=[];var p;c(d,a,(function(e,r,t){f=t;p=r}));if(s===-1){f.splice(p,0,v)}else{f.splice(p+1,0,v)}}return{dataList:d,dragNodeData:B(i,d,t)}};var B=function r(t,n,a){var i;var l=a.value;var s=a.children;D.walkThroughTree((i={},i[l]=undefined,i[s]=n,i),(function(e,r,t){e["__index"]=r;e["__parentId"]=t==null?void 0:t[l]}),s);var o=e(n,s);var u=o.find((function(e){return e[l]===t}));return{parentId:u==null?void 0:u["__parentId"],id:u==null?void 0:u[l],index:u==null?void 0:u["__index"]}};var H=["style","serviceConfig","effectDependencyList","selectorTreeList","value","onChange","modelKey","checkableResponseParentNode","checkable","onSelectorTreeListChange","onRequestResponseChange","treeItemDataAdapter","searchValue","showSearch","searchPlaceholder","requestMessageConfig","labelInValueFieldNames","labelInValue","disabledCanUse","menuLayoutType","menuTriggerType","initRootExpand","searchResultType","onDropNodeHandle","onDropPrev","labelRender","searchStyle","className","defaultExpandAll","menus"];var Y=L((function(t,i){var s=t.style,L=t.serviceConfig,D=t.effectDependencyList,E=t.selectorTreeList,I=t.value,O=t.onChange,V=t.modelKey,K=t.checkableResponseParentNode,B=K===void 0?true:K,Y=t.checkable,G=t.onSelectorTreeListChange,W=t.onRequestResponseChange,J=t.treeItemDataAdapter,Q=t.searchValue,X=t.showSearch,Z=t.searchPlaceholder,$=t.requestMessageConfig,ee=t.labelInValueFieldNames,re=t.labelInValue,te=t.disabledCanUse,ne=t.menuLayoutType,ae=t.menuTriggerType,ie=t.initRootExpand,le=t.searchResultType,se=t.onDropNodeHandle,oe=t.onDropPrev,ue=t.labelRender,ce=t.searchStyle,de=t.className,ve=t.defaultExpandAll,fe=t.menus,pe=f(t,H);var me=t.hasOwnProperty("selectorTreeList");var he=L||{};var ge=D||[];var be=j([]),ye=be[0],Le=be[1];var je=F(V).useStore(),we=je[0],Ce=je[1];var Ne=S.useSafeState(false),Re=Ne[0],qe=Ne[1];var ke="request-progress-"+t.modelKey;var xe=w((function(){return p({label:"label",value:"value",children:"children"},t.fieldNames)}),[t.fieldNames]);var Se=ne===undefined?"fold":ne;var Te=ae===undefined?"click":ae;var Pe=C(true);var De=w((function(){return p({label:"label",value:"value"},ee)}),[ee]);var Ee=j(),Ae=Ee[0],_e=Ee[1];var Ie=C();var Oe=w((function(){var e=U(I,De);return e}),[De,I]);S.useEffectCustom((function(){if(we.treeList.length>0){if(Pe.current){Pe.current=false;if(ve){var r=e(we.treeList,xe.children).map((function(e){return e[xe.value]}));Le(r);return}else if(ie&&we.treeList.length){Le([we.treeList[0][xe.value]]);return}}if(!n(I)){var t=Ue(Oe,true);Le(Array.from(new Set(ye==null?void 0:ye.concat(t))))}}}),[I,we.treeList,Oe]);var Ve=function e(r){return r===""||n(r)};var Fe=function e(r){var t=he.onRequestResultAdapter?he.onRequestResultAdapter(r):r;return t};S.useEffectCustom((function(){_e(Q)}),[Q]);var Ke=v.useCallbackRef((function(){return new Promise((function(e,r){var t,n,a,i,l,s;var o=function(){try{return e()}catch(e){return r(e)}};var u=function(e){try{Pe.current=false;qe(false);void y.error(e.message||"数据查询异常...");return o()}catch(e){return r(e)}};try{if(!he.onRequest){throw new Error("onRequest 调用接口服务不能为空")}t=he.requiredParamsKeys;n=d({},he.params);if(t){a=t.find((function(e){return Ve(n[e])}));if(a){console.warn("TreeWrapper组件:参数:"+t.join("、")+"不能为空");return e()}}var c=function(){try{return o()}catch(e){return u(e)}};var v=function(e){try{window[ke]=false;qe(false);void Ce.changeRequestStatus("request-error");return c()}catch(e){return u(e)}};try{qe(true);return Promise.resolve(Ce.changeRequestStatus("request-progress")).then((function(e){try{window[ke]=true;return Promise.resolve(he.onRequest==null?void 0:he.onRequest(n)).then((function(e){try{i=e;W==null?void 0:W(i);l=Fe(i);s=l||[];if(s.length===0){Pe.current=false}Me(s);qe(false);window[ke]=false;return c()}catch(e){return v(e)}}),v)}catch(e){return v(e)}}),v)}catch(e){v(e)}}catch(e){u(e)}}))}));S.useEffectCustom((function(){if(me)return;if(Boolean(ge.length)){void Ke();return}var e=F(V).getState();if(e.requestStatus==="request-success"){G==null?void 0:G(e.treeList);return}if(!window[ke]){void Ke()}else{G==null?void 0:G(e.treeList)}}),ge);S.useEffectCustom((function(){if(me){Me(E||[])}}),[E]);var Me=v.useCallbackRef((function(e){if((e==null?void 0:e.length)===0&&we.treeList.length===0){void Ce.changeRequestStatus("request-success");return}void Ce.setTreeList({treeList:e||[],childrenName:xe.children});G==null?void 0:G(e)}));var Ue=function e(r,t){var n=[];r.forEach((function(e){if(!t&&ye!=null&&ye.includes(e))return;var r=M(e,we.treeList,xe);n=n.concat(r.map((function(e){return e.value})))}));return n};v.useUpdateEffect((function(){if(Ae){var e=r(we.treeList||[],xe);var t=e.filter((function(e){var r;return(r=e.label)==null?void 0:r.includes(Ae||"")}));Le((function(e){var r=Ue(t.map((function(e){return e.value}))).concat(e||[]);return Array.from(new Set(r))}))}else{Le([])}}),[Ae]);N(i,(function(){return{onClearSelectorList:function e(){void Ce.resetTreeList()},getTreeDataList:function e(){return we.treeList},onChangeExpandedKeys:function e(r){Le(r)}}}));var ze=v.useCallbackRef((function(e){Le(e)}));var Be=v.useCallbackRef((function(e,r,t,a){Ie.current=e;var i=n(r)?[]:l(r)?r:[r];if(n(e)){O==null?void 0:O(e,r,t);return}if(re){var s=De.label;var o=De.value;var u=i.map((function(e){var r;return r={},r[s]=e[xe.label],r[o]=e[xe.value],r}));if(l(e)){O==null?void 0:O(u,i,t,a)}else{O==null?void 0:O(u[0],i[0],t,a)}}else{if(l(e)){O==null?void 0:O(e,i,t,a)}else{O==null?void 0:O(e,i[0],t,a)}}}));var He=v.useCallbackRef((function(e,r){var a=n(e)?[]:e;a=t.checkStrictly?e.checked:e;a=l(a)?a:[a];var i=[];var s=[];var o=[];var u=[];a.forEach((function(e){var r=we.treeTiledArray.find((function(r){return r[xe.value]===e}));if(!r)return;var t=r==null?void 0:r[xe.children];if(!l(t)||t.length===0){i.push(r);s.push(r[xe.value])}o.push(r);u.push(r[xe.value])}));if(Y){Le((function(e){var r=Ue(s).concat(e||[]);return Array.from(new Set(r))}));if(!B&&!t.checkStrictly){Be(s,i,o,r)}else{Be(u,o,o,r)}}else{if(a[0]){var c=o.find((function(e){return e[xe.value]===a[0]}));Be(a[0],c,[c],r)}else{var d=r.node[xe.value];var v=we.treeTiledArray.find((function(e){return e[xe.value]===d}));Be(undefined,v,[v],r)}}}));var Ye=v.useCallbackRef((function(e){return J==null?void 0:J(e)}));var Ge=w((function(){var e=m(we.treeList||[]);if(Ae&&le!=="highlight"){return a(m(we.treeList||[]),(function(e){var r;var t=(r=e[xe.label])==null?void 0:r.toLowerCase();return t.indexOf(Ae.toLowerCase())>=0}),{childrenName:xe.children})}return e}),[xe.children,xe.label,le,we.treeList,Ae]);var We=w((function(){var e=function e(r){return r==null?void 0:r.map((function(r){var t;var n=(Ye==null?void 0:Ye(r))||r;var a=te?undefined:n.disabled;var i=n[xe.label];var s;if(Ae){var o=i.indexOf(Ae);var u=i.substring(0,o);var d=i.slice(o+Ae.length);s=o>-1?A("span",{className:c({"v-tree-item-disabled":n.disabled}),children:[u,_("span",{className:"site-tree-search-value",children:Ae}),d]}):null}if(!s&&n.disabled){s=_("span",{className:c({"v-tree-item-disabled":n.disabled}),children:i})}var v=n[xe.children];return p({},n,(t={disabled:a},t[xe.label]=s||i,t._treeItemName=i,t._disabled=n.disabled,t[xe.children]=l(v)&&v.length>0?e(v):undefined,t))}))};return e(Ge)}),[Ge,Ye,te,xe.label,xe.children,Ae]);var Je=v.useCallbackRef((function(e){return new Promise((function(r,n){return new Promise((function(a,i){var l,s,o,u;if(e[xe.children]){r();return a()}var c=function(){try{return a()}catch(e){return i(e)}};var d=function(e){try{void y.error(e.message||"数据加载异常...");n();return c()}catch(e){return i(e)}};try{return Promise.resolve((l=t.loadDataServiceConfig)==null||l.onRequest==null?void 0:l.onRequest((s=t.loadDataServiceConfig)==null||s.getParams==null?void 0:s.getParams(e))).then((function(t){try{o=t;u=he.onRequestResultAdapter?he.onRequestResultAdapter(o):o;void Ce.treeListAppendChildren({value:e[xe.value],appendList:u,childrenName:xe.children,valueName:xe.value}).then((function(e){Me(e.treeList);r()}));return c()}catch(e){return d(e)}}),d)}catch(e){d(e)}}))}))}));var Qe=v.useCallbackRef((function(e){var r=e==null?void 0:e[xe.children];var n=t.loadDataFlag;var a=n?!e.isLeaf:false;var i=r&&r.length>0||a;return!i}));var Xe=v.useCallbackRef((function(e){var r,n,a;var i=e._treeItemName||e[xe.label];var l=fe==null?void 0:fe(p({},e,(r={},r[xe.label]=i,r)));if(l){return A(R,{children:[_("span",{className:"tree-item-title",children:(ue==null?void 0:ue(e))||(e==null?void 0:e[xe.label])}),_(k,p({gap:5},l,{dropdownMenuProps:p({placement:"bottomRight",isFixed:true},l==null?void 0:l.dropdownMenuProps),className:c("tree-item-title-operate",l.className)}))]})}if(Se==="fold"){var s;var o=[];if((s=t.menuOptions)!=null&&s.fold){var d,v,f;o=((d=t.menuOptions)==null||(v=d[Se])==null?void 0:v.call(d,p({},e,(f={},f[xe.label]=i,f))))||[]}else{var m;o=(t.getMenuOptions==null?void 0:t.getMenuOptions(p({},e,(m={},m[xe.label]=i,m))))||[]}return A(R,{children:[_("span",{className:"tree-item-title",children:(ue==null?void 0:ue(e))||(e==null?void 0:e[xe.label])}),o.length>0&&_(x,{menuList:o,placement:"bottomRight",children:_(u,{})})]})}var h=(n=t.menuOptions)==null||n.tile==null?void 0:n.tile(p({},e,(a={},a[xe.label]=i,a)));return A(R,{children:[_("span",{className:"tree-item-title",children:(ue==null?void 0:ue(e))||(e==null?void 0:e[xe.label])}),h?_(k,p({gap:5},h,{className:c("tree-item-title-operate",h.className)})):null]})}));var Ze=v.useDebounceCallback((function(e){_e(e);t.onSearchValueChange==null?void 0:t.onSearchValueChange(e)}),300);var $e=v.useCallbackRef((function(e){Ze(e.target.value)}));var er=v.useCallbackRef((function(e){if(!t.icon)return null;if(q(t.icon))return t.icon;var r=Qe(e.data);return t.icon(p({},e,{isParent:!r,isLeaf:r}))}));var rr=w((function(){return{title:xe.label,key:xe.value,children:xe.children}}),[xe]);var tr=We.length>0&&we.requestStatus!=="request-error";var nr=p({showLine:{showLeafIcon:false},titleRender:Xe,blockNode:true,switcherIcon:_(o,{}),onDrop:function e(r){if(oe){var t=oe(r);if(!t)return}var n=z(Ge,xe,r),a=n.dataList,i=n.dragNodeData;se==null?void 0:se(i);Me(a)},expandedKeys:ye},pe,{fieldNames:rr,treeData:We,onExpand:ze,loadData:t.loadDataFlag?Je:undefined,style:{width:"100%"},icon:er});var ar={onCheck:He,checkable:Y,checkedKeys:Oe};var ir={onSelect:He,multiple:false,selectedKeys:Oe};var lr=Y?ar:ir;var sr=c("v-tree-wrapper","v-tree-wrapper-menu-"+Te,de);var or=we.treeList.length>0&&!tr&&Ae;return A("div",{className:sr,style:s,children:[!!X&&A("div",{className:"v-tree-wrapper-search-area",style:ce,children:[_(T,{className:"v-tree-wrapper-search",placeholder:Z,onChange:$e,value:Q,allowClear:true}),!!t.searchExtraElement&&_("span",{className:"v-tree-wrapper-search-extra",children:t.searchExtraElement})]}),tr?A("div",{className:"v-tree-wrapper-tree-wrapper",children:[_(h,{spinning:we.requestStatus==="request-progress"}),_(g,p({},lr,nr,{className:"v-tree-wrapper-tree"}))]}):_(P,{status:we.requestStatus,loading:Re,messageConfig:p({"request-success":or?"搜索结果为空":"暂无数据"},$),errorButton:_(b,{type:"primary",onClick:Ke,children:"重新获取数据"})})]})}));Y.defaultProps={disabledCanUse:true};var G=i(Y,{getTreeDataList:K});export{G as TreeWrapper};
15
+ import{treeToArray as e,treeToTiledArray as r,treeLeafParentsArray as t,isUndefinedOrNull as n,treeFilter as a,attachPropertiesToComponent as i}from"@flatbiz/utils";import{isArray as l}from"@dimjs/lang/cjs/is-array";import{Model as s}from"@dimjs/model-react";import o from"@ant-design/icons/es/icons/CaretDownFilled";import u from"@ant-design/icons/es/icons/MoreOutlined";import{classNames as c}from"@dimjs/utils/cjs/class-names";import{extend as d}from"@dimjs/utils/cjs/extend";import{hooks as v}from"@wove/react/cjs/hooks";import{a as f,_ as p}from"../_rollupPluginBabelHelpers-fc015ef2.js";import{cloneState as m}from"@dimjs/model";import{Spin as h,Tree as g,Button as b,message as y}from"antd";import{forwardRef as L,useState as w,useMemo as C,useRef as j,useImperativeHandle as N,Fragment as R,isValidElement as q}from"react";import{ButtonOperate as k}from"../button-operate/index.js";import{DropdownMenuWrapper as x}from"../dropdown-menu-wrapper/index.js";import{fbaHooks as S}from"../fba-hooks/index.js";import{InputSearchWrapper as T}from"../input-search-wrapper/index.js";import{RequestStatus as P}from"../request-status/index.js";import{tree as D}from"@dimjs/utils/cjs/tree";import{isObject as E}from"@dimjs/lang/cjs/is-object";import"dequal";import{jsxs as A,jsx as _}from"react/jsx-runtime";import"@dimjs/lang/cjs/is-undefined";import"@dimjs/lang/cjs/is-plain-object";import"@dimjs/lang/cjs/is-string";import"@dimjs/lang/cjs/is-promise";import"../button-wrapper/index.js";import"@ant-design/icons/es/icons/LoadingOutlined";import"../config-provider-wrapper/index.js";import"antd/es/locale/en_US";import"antd/es/locale/zh_CN";import"dayjs";import"dayjs/locale/en";import"dayjs/locale/zh-cn";import"dayjs/plugin/advancedFormat";import"dayjs/plugin/customParseFormat";import"dayjs/plugin/localeData";import"dayjs/plugin/utc";import"dayjs/plugin/weekday";import"dayjs/plugin/weekOfYear";import"dayjs/plugin/weekYear";import"../fba-utils/index.js";import"@ant-design/icons/es/icons/ExclamationCircleFilled";import"../dialog-confirm/index.js";import"../dialog-modal/index.js";import"ahooks";import"react-dom/client";import"../flex-layout/index.js";import"../use-responsive-point-21b8c601.js";var I={treeList:[],treeTiledArray:[],queryIsEmpty:false};var O={actions:{setTreeList:function r(t){return function(r){r.treeList=t.treeList||[];r.treeTiledArray=e(r.treeList,t.childrenName);r.requestStatus="request-success"}},resetTreeList:function e(){return function(e){e.treeList=[]}},changeRequestStatus:function e(r){return function(e){e.requestStatus=r;if(r==="request-error"){e.treeList=[]}}},treeListAppendChildren:function r(t){return function(r){var n=e(r.treeList,t.childrenName);var a=n.find((function(e){return e[t.valueName]===t.value}));if(a){if(l(t.appendList)&&t.appendList.length>0){a[t.childrenName]=t.appendList}else{a.isLeaf=true}}r.treeTiledArray=e(r.treeList,t.childrenName)}}},state:I};var V={};var F=function e(r){if(!V[r]){V[r]=s(O)}return V[r]};var K=function e(r){var t=F(r).getState();return t.treeList};var M=function e(n,a,i){var l=r(a,i);return t(n,l,true,{value:"value",parentValue:"parentValue"})};var U=function e(r,t){var a=n(r)?[]:r;a=l(a)?a:[a];a=a.map((function(e){if(E(e))return e[t.value];return e}));return a};var z=function e(r,t,n){var a=n.node.key;var i=n.dragNode.key;var l=n.node.pos.split("-");var s=n.dropPosition-Number(l[l.length-1]);var o=t.value;var u=t.children;var c=function e(r,t,n){for(var a=0;a<r.length;a++){if(r[a][o]===t){return n(r[a],a,r)}if(r[a][u]){e(r[a][u],t,n)}}};var d=m(r);var v;c(d,i,(function(e,r,t){t.splice(r,1);v=e}));if(!n.dropToGap){c(d,a,(function(e){e[u]=e[u]||[];e[u].unshift(v)}))}else if((n.node.props.children||[]).length>0&&n.node.props.expanded&&s===1){c(d,a,(function(e){e[u]=e[u]||[];e[u].unshift(v)}))}else{var f=[];var p;c(d,a,(function(e,r,t){f=t;p=r}));if(s===-1){f.splice(p,0,v)}else{f.splice(p+1,0,v)}}return{dataList:d,dragNodeData:B(i,d,t)}};var B=function r(t,n,a){var i;var l=a.value;var s=a.children;D.walkThroughTree((i={},i[l]=undefined,i[s]=n,i),(function(e,r,t){e["__index"]=r;e["__parentId"]=t==null?void 0:t[l]}),s);var o=e(n,s);var u=o.find((function(e){return e[l]===t}));return{parentId:u==null?void 0:u["__parentId"],id:u==null?void 0:u[l],index:u==null?void 0:u["__index"]}};var H=["style","serviceConfig","effectDependencyList","selectorTreeList","value","onChange","modelKey","checkableResponseParentNode","checkable","onSelectorTreeListChange","onRequestResponseChange","treeItemDataAdapter","searchValue","showSearch","searchPlaceholder","requestMessageConfig","labelInValueFieldNames","labelInValue","disabledCanUse","menuLayoutType","menuTriggerType","initRootExpand","searchResultType","onDropNodeHandle","onDropPrev","labelRender","searchStyle","className","defaultExpandAll","menus"];var Y=L((function(t,i){var s=t.style,L=t.serviceConfig,D=t.effectDependencyList,E=t.selectorTreeList,I=t.value,O=t.onChange,V=t.modelKey,K=t.checkableResponseParentNode,B=K===void 0?true:K,Y=t.checkable,G=t.onSelectorTreeListChange,W=t.onRequestResponseChange,J=t.treeItemDataAdapter,Q=t.searchValue,X=t.showSearch,Z=t.searchPlaceholder,$=t.requestMessageConfig,ee=t.labelInValueFieldNames,re=t.labelInValue,te=t.disabledCanUse,ne=t.menuLayoutType,ae=t.menuTriggerType,ie=t.initRootExpand,le=t.searchResultType,se=t.onDropNodeHandle,oe=t.onDropPrev,ue=t.labelRender,ce=t.searchStyle,de=t.className,ve=t.defaultExpandAll,fe=t.menus,pe=f(t,H);var me=t.hasOwnProperty("selectorTreeList");var he=L||{};var ge=D||[];var be=w([]),ye=be[0],Le=be[1];var we=F(V).useStore(),Ce=we[0],je=we[1];var Ne=S.useSafeState(false),Re=Ne[0],qe=Ne[1];var ke="request-progress-"+t.modelKey;var xe=C((function(){return p({label:"label",value:"value",children:"children"},t.fieldNames)}),[t.fieldNames]);var Se=ne===undefined?"fold":ne;var Te=ae===undefined?"click":ae;var Pe=j(true);var De=C((function(){return p({label:"label",value:"value"},ee)}),[ee]);var Ee=w(),Ae=Ee[0],_e=Ee[1];var Ie=j();var Oe=C((function(){var e=U(I,De);return e}),[De,I]);S.useEffectCustom((function(){if(Ce.treeList.length>0){if(Pe.current){Pe.current=false;if(ve){var r=e(Ce.treeList,xe.children).map((function(e){return e[xe.value]}));Le(r);return}else if(ie&&Ce.treeList.length){Le([Ce.treeList[0][xe.value]]);return}}if(!n(I)){var t=Ue(Oe,true);Le(Array.from(new Set(ye==null?void 0:ye.concat(t))))}}}),[I,Ce.treeList,Oe]);var Ve=function e(r){return r===""||n(r)};var Fe=function e(r){var t=he.onRequestResultAdapter?he.onRequestResultAdapter(r):r;return t};S.useEffectCustom((function(){_e(Q)}),[Q]);var Ke=v.useCallbackRef((function(){return new Promise((function(e,r){var t,n,a,i,l,s;var o=function(){try{return e()}catch(e){return r(e)}};var u=function(e){try{Pe.current=false;qe(false);void y.error(e.message||"数据查询异常...");return o()}catch(e){return r(e)}};try{if(!he.onRequest){throw new Error("onRequest 调用接口服务不能为空")}t=he.requiredParamsKeys;n=d({},he.params);if(t){a=t.find((function(e){return Ve(n[e])}));if(a){console.warn("TreeWrapper组件:参数:"+t.join("、")+"不能为空");return e()}}var c=function(){try{return o()}catch(e){return u(e)}};var v=function(e){try{window[ke]=false;qe(false);void je.changeRequestStatus("request-error");return c()}catch(e){return u(e)}};try{qe(true);return Promise.resolve(je.changeRequestStatus("request-progress")).then((function(e){try{window[ke]=true;return Promise.resolve(he.onRequest==null?void 0:he.onRequest(n)).then((function(e){try{i=e;W==null?void 0:W(i);l=Fe(i);s=l||[];if(s.length===0){Pe.current=false}Me(s);qe(false);window[ke]=false;return c()}catch(e){return v(e)}}),v)}catch(e){return v(e)}}),v)}catch(e){v(e)}}catch(e){u(e)}}))}));S.useEffectCustom((function(){if(me)return;if(Boolean(ge.length)){void Ke();return}var e=F(V).getState();if(e.requestStatus==="request-success"){G==null?void 0:G(e.treeList);return}if(!window[ke]){void Ke()}else{G==null?void 0:G(e.treeList)}}),ge);S.useEffectCustom((function(){if(me){Me(E||[])}}),[E]);var Me=v.useCallbackRef((function(e){if((e==null?void 0:e.length)===0&&Ce.treeList.length===0){void je.changeRequestStatus("request-success");return}void je.setTreeList({treeList:e||[],childrenName:xe.children});G==null?void 0:G(e)}));var Ue=function e(r,t){var n=[];r.forEach((function(e){if(!t&&ye!=null&&ye.includes(e))return;var r=M(e,Ce.treeList,xe);n=n.concat(r.map((function(e){return e.value})))}));return n};v.useUpdateEffect((function(){if(Ae){var e=r(Ce.treeList||[],xe);var t=e.filter((function(e){var r;return(r=e.label)==null?void 0:r.includes(Ae||"")}));Le((function(e){var r=Ue(t.map((function(e){return e.value}))).concat(e||[]);return Array.from(new Set(r))}))}else{Le([])}}),[Ae]);N(i,(function(){return{onClearSelectorList:function e(){void je.resetTreeList()},getTreeDataList:function e(){return Ce.treeList},onChangeExpandedKeys:function e(r){Le(r)}}}));var ze=v.useCallbackRef((function(e){Le(e)}));var Be=v.useCallbackRef((function(e,r,t,a){Ie.current=e;var i=n(r)?[]:l(r)?r:[r];if(n(e)){O==null?void 0:O(e,r,t);return}if(re){var s=De.label;var o=De.value;var u=i.map((function(e){var r;return r={},r[s]=e[xe.label],r[o]=e[xe.value],r}));if(l(e)){O==null?void 0:O(u,i,t,a)}else{O==null?void 0:O(u[0],i[0],t,a)}}else{if(l(e)){O==null?void 0:O(e,i,t,a)}else{O==null?void 0:O(e,i[0],t,a)}}}));var He=v.useCallbackRef((function(e,r){var a=n(e)?[]:e;a=t.checkStrictly?e.checked:e;a=l(a)?a:[a];var i=[];var s=[];var o=[];var u=[];a.forEach((function(e){var r=Ce.treeTiledArray.find((function(r){return r[xe.value]===e}));if(!r)return;var t=r==null?void 0:r[xe.children];if(!l(t)||t.length===0){i.push(r);s.push(r[xe.value])}o.push(r);u.push(r[xe.value])}));if(Y){Le((function(e){var r=Ue(s).concat(e||[]);return Array.from(new Set(r))}));if(!B&&!t.checkStrictly){Be(s,i,o,r)}else{Be(u,o,o,r)}}else{if(a[0]){var c=o.find((function(e){return e[xe.value]===a[0]}));Be(a[0],c,[c],r)}else{var d=r.node[xe.value];var v=Ce.treeTiledArray.find((function(e){return e[xe.value]===d}));Be(undefined,v,[v],r)}}}));var Ye=v.useCallbackRef((function(e){return J==null?void 0:J(e)}));var Ge=C((function(){var e=m(Ce.treeList||[]);if(Ae&&le!=="highlight"){return a(m(Ce.treeList||[]),(function(e){var r;var t=(r=e[xe.label])==null?void 0:r.toLowerCase();return t.indexOf(Ae.toLowerCase())>=0}),{childrenName:xe.children})}return e}),[xe.children,xe.label,le,Ce.treeList,Ae]);var We=C((function(){var e=function e(r){return r==null?void 0:r.map((function(r){var t;var n=(Ye==null?void 0:Ye(r))||r;var a=te?undefined:n.disabled;var i=n[xe.label].toLocaleLowerCase();var s;if(Ae){var o=i.indexOf(Ae.toLocaleLowerCase());var u=i.substring(0,o);var d=i.slice(o+Ae.length);var v=i.slice(o,o+Ae.length);s=o>-1?A("span",{className:c({"v-tree-item-disabled":n.disabled}),children:[u,_("span",{className:"site-tree-search-value",children:v}),d]}):null}if(!s&&n.disabled){s=_("span",{className:c({"v-tree-item-disabled":n.disabled}),children:i})}var f=n[xe.children];return p({},n,(t={disabled:a},t[xe.label]=s||i,t._treeItemName=i,t._disabled=n.disabled,t[xe.children]=l(f)&&f.length>0?e(f):undefined,t))}))};return e(Ge)}),[Ge,Ye,te,xe.label,xe.children,Ae]);var Je=v.useCallbackRef((function(e){return new Promise((function(r,n){return new Promise((function(a,i){var l,s,o,u;if(e[xe.children]){r();return a()}var c=function(){try{return a()}catch(e){return i(e)}};var d=function(e){try{void y.error(e.message||"数据加载异常...");n();return c()}catch(e){return i(e)}};try{return Promise.resolve((l=t.loadDataServiceConfig)==null||l.onRequest==null?void 0:l.onRequest(((s=t.loadDataServiceConfig)==null||s.getParams==null?void 0:s.getParams(e))||{})).then((function(t){try{o=t;u=he.onRequestResultAdapter?he.onRequestResultAdapter(o):o;void je.treeListAppendChildren({value:e[xe.value],appendList:u,childrenName:xe.children,valueName:xe.value}).then((function(e){Me(e.treeList);r()}));return c()}catch(e){return d(e)}}),d)}catch(e){d(e)}}))}))}));var Qe=v.useCallbackRef((function(e){var r=e==null?void 0:e[xe.children];var n=t.loadDataFlag;var a=n?!e.isLeaf:false;var i=r&&r.length>0||a;return!i}));var Xe=v.useCallbackRef((function(e){var r,n,a;var i=e._treeItemName||e[xe.label];var l=fe==null?void 0:fe(p({},e,(r={},r[xe.label]=i,r)));if(l){return A(R,{children:[_("span",{className:"tree-item-title",children:(ue==null?void 0:ue(e))||(e==null?void 0:e[xe.label])}),_(k,p({gap:5},l,{dropdownMenuProps:p({placement:"bottomRight",isFixed:true},l==null?void 0:l.dropdownMenuProps),className:c("tree-item-title-operate",l.className)}))]})}if(Se==="fold"){var s;var o=[];if((s=t.menuOptions)!=null&&s.fold){var d,v,f;o=((d=t.menuOptions)==null||(v=d[Se])==null?void 0:v.call(d,p({},e,(f={},f[xe.label]=i,f))))||[]}else{var m;o=(t.getMenuOptions==null?void 0:t.getMenuOptions(p({},e,(m={},m[xe.label]=i,m))))||[]}return A(R,{children:[_("span",{className:"tree-item-title",children:(ue==null?void 0:ue(e))||(e==null?void 0:e[xe.label])}),o.length>0&&_(x,{menuList:o,placement:"bottomRight",children:_(u,{})})]})}var h=(n=t.menuOptions)==null||n.tile==null?void 0:n.tile(p({},e,(a={},a[xe.label]=i,a)));return A(R,{children:[_("span",{className:"tree-item-title",children:(ue==null?void 0:ue(e))||(e==null?void 0:e[xe.label])}),h?_(k,p({gap:5},h,{className:c("tree-item-title-operate",h.className)})):null]})}));var Ze=v.useDebounceCallback((function(e){_e(e);t.onSearchValueChange==null?void 0:t.onSearchValueChange(e)}),300);var $e=v.useCallbackRef((function(e){Ze(e.target.value)}));var er=v.useCallbackRef((function(e){if(!t.icon)return null;if(q(t.icon))return t.icon;var r=Qe(e.data);return t.icon(p({},e,{isParent:!r,isLeaf:r}))}));var rr=C((function(){return{title:xe.label,key:xe.value,children:xe.children}}),[xe]);var tr=We.length>0&&Ce.requestStatus!=="request-error";var nr=p({showLine:{showLeafIcon:false},titleRender:Xe,blockNode:true,switcherIcon:_(o,{}),onDrop:function e(r){if(oe){var t=oe(r);if(!t)return}var n=z(Ge,xe,r),a=n.dataList,i=n.dragNodeData;se==null?void 0:se(i);Me(a)},expandedKeys:ye},pe,{fieldNames:rr,treeData:We,onExpand:ze,loadData:t.loadDataFlag?Je:undefined,style:{width:"100%"},icon:er});var ar={onCheck:He,checkable:Y,checkedKeys:Oe};var ir={onSelect:He,multiple:false,selectedKeys:Oe};var lr=Y?ar:ir;var sr=c("v-tree-wrapper","v-tree-wrapper-menu-"+Te,de);var or=Ce.treeList.length>0&&!tr&&Ae;return A("div",{className:sr,style:s,children:[!!X&&A("div",{className:"v-tree-wrapper-search-area",style:ce,children:[_(T,{className:"v-tree-wrapper-search",placeholder:Z,onChange:$e,value:Q,allowClear:true}),!!t.searchExtraElement&&_("span",{className:"v-tree-wrapper-search-extra",children:t.searchExtraElement})]}),tr?A("div",{className:"v-tree-wrapper-tree-wrapper",children:[_(h,{spinning:Ce.requestStatus==="request-progress"}),_(g,p({},lr,nr,{className:"v-tree-wrapper-tree"}))]}):_(P,{status:Ce.requestStatus,loading:Re,messageConfig:p({"request-success":or?"搜索结果为空":"暂无数据"},$),errorButton:_(b,{type:"primary",onClick:Ke,children:"重新获取数据"})})]})}));Y.defaultProps={disabledCanUse:true};var G=i(Y,{getTreeDataList:K});export{G as TreeWrapper};
16
16
  //# sourceMappingURL=index.js.map