@flatbiz/antd 4.5.53 → 4.5.55
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/esm/button-operate/index.js +1 -1
- package/esm/button-operate/index.js.map +1 -1
- package/esm/cascader-wrapper/index.css +1 -1
- package/esm/cascader-wrapper/index.js +1 -1
- package/esm/cascader-wrapper/index.js.map +1 -1
- package/esm/copy-wrapper/index.js +1 -1
- package/esm/copy-wrapper/index.js.map +1 -1
- package/esm/drag-editable-table/index.js +1 -1
- package/esm/drag-editable-table/index.js.map +1 -1
- package/esm/editable-table/index.js +1 -1
- package/esm/editable-table/index.js.map +1 -1
- package/esm/index-636a568e.js +8 -0
- package/esm/index-636a568e.js.map +1 -0
- package/esm/index.js +1 -2
- package/esm/request-status/index.css +1 -1
- package/esm/request-status/index.js +2 -1
- package/esm/request-status/index.js.map +1 -1
- package/esm/resizable-drawer/index.js +1 -6
- package/esm/resizable-drawer/index.js.map +1 -1
- package/esm/selector-wrapper/index.css +1 -1
- package/esm/selector-wrapper/index.js +1 -1
- package/esm/selector-wrapper/index.js.map +1 -1
- package/esm/selector-wrapper-search/index.js +1 -1
- package/esm/selector-wrapper-search/index.js.map +1 -1
- package/esm/selector-wrapper-simple/index.js +1 -1
- package/esm/selector-wrapper-simple/index.js.map +1 -1
- package/esm/styles/index.css +1 -1
- package/esm/tree-modal/index.js +1 -1
- package/esm/tree-modal/index.js.map +1 -1
- package/esm/tree-modal-selector/index.js +1 -1
- package/esm/tree-modal-selector/index.js.map +1 -1
- package/esm/tree-selector-wrapper/index.js +1 -1
- package/esm/tree-selector-wrapper/index.js.map +1 -1
- package/esm/tree-wrapper/index.js +2 -2
- package/esm/tree-wrapper/index.js.map +1 -1
- package/index.d.ts +12 -25
- package/package.json +1 -1
- package/esm/ai-search/index.css +0 -0
- package/esm/ai-search/index.js +0 -11
- package/esm/ai-search/index.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["@flatbiz/antd/src/editable-table/utils.ts","@flatbiz/antd/src/editable-table/form-item/checkbox-group.tsx","@flatbiz/antd/src/editable-table/form-item/date-picker-wrapper.tsx","@flatbiz/antd/src/editable-table/form-item/date-range-picker-wrapper.tsx","@flatbiz/antd/src/editable-table/form-item/input.tsx","@flatbiz/antd/src/editable-table/form-item/input-number.tsx","@flatbiz/antd/src/editable-table/form-item/radio-group.tsx","@flatbiz/antd/src/editable-table/form-item/selector-wrapper.tsx","@flatbiz/antd/src/editable-table/form-item/switch-wrapper.tsx","@flatbiz/antd/src/editable-table/form-item/text.tsx","@flatbiz/antd/src/editable-table/form-item/textarea.tsx","@flatbiz/antd/src/editable-table/form-item/upload-wrapper.tsx","@flatbiz/antd/src/editable-table/form-item/index.tsx","@flatbiz/antd/src/editable-table/form-list-item/form-list.tsx","@flatbiz/antd/src/editable-table/form-list-item/index.tsx","@flatbiz/antd/src/editable-table/editable-table.tsx"],"sourcesContent":["import { FieldSingleConfig } from './type';\n\nexport const getEditable = (editable: FieldSingleConfig['editable'], tableRowIndex: number) => {\n return typeof editable === 'boolean' ? editable : editable?.({ tableRowIndex });\n};\n","import { classNames } from '@dimjs/utils';\nimport { LabelValueItem, TAny } from '@flatbiz/utils';\nimport { hooks } from '@wove/react';\nimport { Checkbox, Form } from 'antd';\nimport { useMemo } from 'react';\nimport { tableCellRender } from '../../table-cell-render';\nimport { EditableCheckboxGroupConfig, EditableFormItemProps } from '../type';\n\ntype CheckboxGroupFormItemContent = Omit<EditableFormItemProps, 'formItemProps'> & {\n value?: Array<string | number>;\n onChange?: (value: TAny) => void;\n};\n\nconst CheckboxGroupFormItemContent = (props: CheckboxGroupFormItemContent) => {\n const { editableConfig, editable, render } = props.fieldConfig;\n const editableComptProps = (editableConfig as EditableCheckboxGroupConfig).editableComptProps;\n const options = useMemo(\n () => (editableComptProps.options || []) as LabelValueItem[],\n [editableComptProps.options],\n );\n const onChange = hooks.useCallbackRef((value) => {\n props.onChange?.(value);\n editableComptProps.onChange?.(value);\n });\n\n if (editable) {\n return <Checkbox.Group {...editableComptProps} value={props.value} onChange={onChange} />;\n }\n\n return (\n <span className=\"editable-checkbox-group-view\">\n {render ? render(props.value, options) : tableCellRender.selectorCell(options)(props.value)}\n </span>\n );\n};\n\nexport const CheckboxGroupFormItem = (props: EditableFormItemProps) => {\n const { formItemProps } = props.fieldConfig;\n\n return (\n <Form.Item\n {...formItemProps}\n name={props.name}\n className={classNames('editable-checkbox-group-form-item', formItemProps?.className)}\n >\n <CheckboxGroupFormItemContent {...props} />\n </Form.Item>\n );\n};\n","import { classNames } from '@dimjs/utils';\nimport { Form } from 'antd';\nimport { DatePickerWrapper } from '../../date-picker-wrapper';\nimport { EditableDatePickerWrapperConfig, EditableFormItemProps } from '../type';\n\nexport const DatePickerWrapperFormItem = (props: EditableFormItemProps) => {\n const { formItemProps, editableConfig } = props.fieldConfig;\n return (\n <Form.Item\n {...formItemProps}\n name={props.name}\n className={classNames('editable-date-picker-wraper-form-item', formItemProps?.className)}\n >\n <DatePickerWrapper\n allowClear\n {...(editableConfig as EditableDatePickerWrapperConfig).editableComptProps}\n />\n </Form.Item>\n );\n};\n","import { isArray } from '@dimjs/lang';\nimport { classNames } from '@dimjs/utils';\nimport { hooks } from '@wove/react';\nimport { Form } from 'antd';\nimport { useMemo } from 'react';\nimport { DateRangePickerWrapper } from '../../date-range-picker-wrapper';\nimport { EditableDateRangePickerWrapperConfig, EditableFormItemProps } from '../type';\n\ntype FormItemContentProps = Omit<EditableFormItemProps, 'formItemProps'> & {\n value?: [string, string];\n onChange?: (value?: [string, string]) => void;\n};\n\nconst FormItemContent = (props: FormItemContentProps) => {\n const { editableConfig, editable, render } = props.fieldConfig;\n const editableComptProps = (editableConfig as EditableDateRangePickerWrapperConfig).editableComptProps;\n\n const onChange = hooks.useCallbackRef((data) => {\n props.onChange?.(data);\n editableComptProps?.onChange?.(data);\n });\n\n const viewLabel = useMemo(() => {\n const value = isArray(props.value) ? props.value : ([] as any[]);\n if (editable) return undefined;\n return value.join('~');\n }, [editable, props.value]);\n\n if (editable) {\n return (\n <DateRangePickerWrapper allowClear {...editableComptProps} value={props.value} onChange={onChange} />\n );\n }\n return <span className=\"editable-date-range-picker-view\">{render ? render(props.value) : viewLabel}</span>;\n};\n\nexport const DateRangePickerWrapperFormItem = (props: EditableFormItemProps) => {\n const { formItemProps } = props.fieldConfig;\n return (\n <Form.Item\n {...formItemProps}\n name={props.name}\n className={classNames('editable-date-range-picker-wraper-form-item', formItemProps?.className)}\n >\n <FormItemContent {...props} />\n </Form.Item>\n );\n};\n","import { Form } from 'antd';\nimport { InputWrapper } from '../../input-wrapper';\nimport { EditableFormItemProps, EditableInputConfig } from '../type';\n\nexport const InputFormItem = (props: EditableFormItemProps) => {\n const { formItemProps, editableConfig } = props.fieldConfig;\n\n return (\n <Form.Item {...formItemProps} name={props.name}>\n <InputWrapper allowClear {...(editableConfig as EditableInputConfig).editableComptProps} />\n </Form.Item>\n );\n};\n","import { classNames } from '@dimjs/utils';\nimport { Form, InputNumber } from 'antd';\nimport { EditableFormItemProps, EditableInputNumberConfig } from '../type';\n\nexport const InputNumberFormItem = (props: EditableFormItemProps) => {\n const { formItemProps, editableConfig } = props.fieldConfig;\n return (\n <Form.Item\n {...formItemProps}\n name={props.name}\n className={classNames('editable-input-number-form-item', formItemProps?.className)}\n >\n <InputNumber {...(editableConfig as EditableInputNumberConfig).editableComptProps} />\n </Form.Item>\n );\n};\n","import { classNames } from '@dimjs/utils';\nimport { LabelValueItem } from '@flatbiz/utils';\nimport { hooks } from '@wove/react';\nimport { Form, Radio } from 'antd';\nimport { useMemo } from 'react';\nimport { tableCellRender } from '../../table-cell-render';\nimport { EditableFormItemProps, EditableRadioGroupConfig } from '../type';\n\ntype RadioGroupFormItemContent = Omit<EditableFormItemProps, 'formItemProps'> & {\n value?: string | number;\n onChange?: (value: string | number) => void;\n};\n\nconst RadioGroupFormItemContent = (props: RadioGroupFormItemContent) => {\n const { editableConfig, editable, render } = props.fieldConfig;\n const editableComptProps = (editableConfig as EditableRadioGroupConfig).editableComptProps;\n const options = useMemo(\n () => (editableComptProps.options || []) as LabelValueItem<string | number>[],\n [editableComptProps.options],\n );\n\n const onChange = hooks.useCallbackRef((e) => {\n props.onChange?.(e.target.value as string | number);\n editableComptProps.onChange?.(e);\n });\n\n if (editable) {\n return <Radio.Group {...editableComptProps} value={props.value} onChange={onChange} />;\n }\n return (\n <span className=\"editable-radio-group-view\">\n {render ? render(props.value, options) : tableCellRender.selectorCell(options)(props.value)}\n </span>\n );\n};\n\nexport const RadioGroupFormItem = (props: EditableFormItemProps) => {\n const { formItemProps } = props.fieldConfig;\n\n return (\n <Form.Item\n {...formItemProps}\n name={props.name}\n className={classNames('editable-radio-group-form-item', formItemProps?.className)}\n >\n <RadioGroupFormItemContent {...props} />\n </Form.Item>\n );\n};\n","import { isArray } from '@dimjs/lang';\nimport { classNames } from '@dimjs/utils';\nimport { arrayField2LabelValue, LabelValueItem, TAny, TPlainObject } from '@flatbiz/utils';\nimport { hooks } from '@wove/react';\nimport { Form, Tag } from 'antd';\nimport { Fragment, useEffect, useState } from 'react';\nimport { SelectorWrapper } from '../../selector-wrapper';\nimport { EditableFormItemProps, EditableSelectWrapperConfig } from '../type';\n\ntype FormItemContentProps = Omit<EditableFormItemProps, 'formItemProps'> & {\n value?: string | number | Array<string | number>;\n onChange?: (value: TAny) => void;\n};\n\nconst FormItemContent = (props: FormItemContentProps) => {\n const { editableConfig, editable, render } = props.fieldConfig;\n const editableComptProps = (editableConfig as EditableSelectWrapperConfig).editableComptProps;\n const [selectorList, setSelectorList] = useState<LabelValueItem[]>([]);\n const [viewLabelList, setviewLabelList] = useState<LabelValueItem[]>([]);\n\n useEffect(() => {\n if (!editable) {\n const value = isArray(props.value) ? props.value : props.value === undefined ? [] : [props.value];\n if (selectorList.length === 0) {\n setviewLabelList(value.map((item) => ({ label: item as string, value: item })));\n }\n const returnList = [] as LabelValueItem[];\n value.forEach((item) => {\n const target = selectorList.find((temp) => temp.value === item);\n returnList.push(target ? target : { label: String(item), value: item });\n });\n setviewLabelList(returnList);\n }\n }, [editable, editableComptProps.fieldNames, props.value, selectorList]);\n\n const onSelectorListAllChange = hooks.useCallbackRef((dataList: TPlainObject[]) => {\n setSelectorList(arrayField2LabelValue(dataList || [], editableComptProps.fieldNames));\n });\n\n const onChange = hooks.useCallbackRef((value, selectList) => {\n props.onChange?.(value);\n editableComptProps.onChange?.(value, selectList);\n });\n\n if (editable) {\n return (\n <SelectorWrapper\n {...editableComptProps}\n value={props.value}\n onChange={onChange}\n onSelectorListAllChange={onSelectorListAllChange}\n />\n );\n }\n return (\n <Fragment>\n <div style={{ display: 'none' }}>\n <SelectorWrapper {...editableComptProps} onSelectorListAllChange={onSelectorListAllChange} />\n </div>\n <span className=\"editable-selector-view\">\n {render\n ? render(props.value, selectorList)\n : viewLabelList.map((tag, index) => (\n <Tag key={index} color={'geekblue'}>\n {tag.label}\n </Tag>\n ))}\n </span>\n </Fragment>\n );\n};\n\nexport const SelectorWrapperFormItem = (props: EditableFormItemProps) => {\n const { formItemProps } = props.fieldConfig;\n\n return (\n <Form.Item\n {...formItemProps}\n name={props.name}\n className={classNames('editable-selector-wrapper-form-item', formItemProps?.className)}\n >\n <FormItemContent {...props} />\n </Form.Item>\n );\n};\n","import { classNames } from '@dimjs/utils';\nimport { hooks } from '@wove/react';\nimport { Form, Tag } from 'antd';\nimport { useMemo } from 'react';\nimport { SwitchWrapper } from '../../switch-wrapper';\nimport { EditableFormItemProps, EditableSwitchWrapperConfig } from '../type';\n\ntype FormItemContentProps = Omit<EditableFormItemProps, 'formItemProps'> & {\n value?: string | number | boolean;\n onChange?: (value?: string | number | boolean) => void;\n};\n\nconst FormItemContent = (props: FormItemContentProps) => {\n const { editableConfig, editable, render } = props.fieldConfig;\n const editableComptProps = (editableConfig as EditableSwitchWrapperConfig).editableComptProps;\n const onChange = hooks.useCallbackRef((data) => {\n props.onChange?.(data);\n editableComptProps?.onChange?.(data);\n });\n\n const viewData = useMemo(() => {\n const defaultCheckedText = editableComptProps.checkedChildren || '是';\n const defaultUnCheckedText = editableComptProps.unCheckedChildren || '否';\n\n return {\n checkedText: defaultCheckedText,\n unCheckedText: defaultUnCheckedText,\n };\n }, [editableComptProps.checkedChildren, editableComptProps.unCheckedChildren]);\n\n if (editable) {\n return <SwitchWrapper {...editableComptProps} value={props.value} onChange={onChange} />;\n }\n if (render) {\n return <span className=\"editable-switch-wrapper-view\">{render(props.value)}</span>;\n }\n return (\n <span className=\"editable-switch-wrapper-view\">\n {editableComptProps.checkedValue == props.value ? (\n <Tag color=\"geekblue\" style={{ marginRight: 0 }}>\n {viewData.checkedText}\n </Tag>\n ) : (\n <Tag style={{ marginRight: 0 }}>{viewData.unCheckedText}</Tag>\n )}\n </span>\n );\n};\n\nexport const SwitchWrapperFormItem = (props: EditableFormItemProps) => {\n const { formItemProps } = props.fieldConfig;\n return (\n <Form.Item\n {...formItemProps}\n name={props.name}\n className={classNames('editable-switch-wrapper-form-item', formItemProps?.className)}\n >\n <FormItemContent {...props} />\n </Form.Item>\n );\n};\n","import { isBoolean, isNumber, isString } from '@dimjs/lang';\nimport { Form } from 'antd';\nimport { useMemo } from 'react';\nimport { EditableFormItemProps, FieldSingleConfig } from '../type';\n\nconst FormItemTextContent = (props: {\n value?: string | number;\n name: EditableFormItemProps['name'];\n fieldConfig?: FieldSingleConfig;\n}) => {\n const value = useMemo(() => {\n if (props.fieldConfig?.render) return undefined;\n const isBaseData =\n isString(props.value) || isNumber(props.value) || isBoolean(props.value) || !props.value;\n if (!isBaseData) {\n console.warn(`Form.List name:【${props.name}】数据【${JSON.stringify(props.value)}】不能渲染在页面中`);\n }\n return isBaseData ? props.value : undefined;\n }, [props.fieldConfig?.render, props.name, props.value]);\n const viewText = props.fieldConfig?.render?.(props.value) || value;\n return <span>{viewText}</span>;\n};\n\nexport const TextFormItem = (props: { name: Array<number | string>; fieldConfig?: FieldSingleConfig }) => {\n return (\n <Form.Item noStyle name={props.name}>\n <FormItemTextContent name={props.name} fieldConfig={props.fieldConfig} />\n </Form.Item>\n );\n};\n","import { Form } from 'antd';\nimport { InputTextAreaWrapper } from '../../input-text-area-wrapper';\nimport { EditableFormItemProps, EditableTextareaConfig } from '../type';\n\nexport const TextAreaFormItem = (props: EditableFormItemProps) => {\n const { formItemProps, editableConfig } = props.fieldConfig;\n return (\n <Form.Item {...formItemProps} name={props.name}>\n <InputTextAreaWrapper {...(editableConfig as EditableTextareaConfig).editableComptProps} />\n </Form.Item>\n );\n};\n","import { classNames } from '@dimjs/utils';\nimport { TAny } from '@flatbiz/utils';\nimport { Form } from 'antd';\nimport { UploadWrapper } from '../../upload-wrapper';\nimport { EditableFileUploadConfig, EditableFormItemProps } from '../type';\n\nconst UploadWrapperFormItemContent = (\n props: EditableFormItemProps & { value?: TAny; onChange?: (value?: TAny) => void },\n) => {\n const { editableConfig, render, editable } = props.fieldConfig;\n const { children, ...otherProps } = (editableConfig as EditableFileUploadConfig).editableComptProps;\n if (editable) {\n return (\n <UploadWrapper listType=\"text\" {...otherProps} value={props.value} onChange={props.onChange}>\n {children}\n </UploadWrapper>\n );\n }\n return (\n <div className=\"upload-wrapper-selector-view\">\n {render ? (\n render(props.value)\n ) : (\n <UploadWrapper listType=\"text\" {...otherProps} value={props.value} disabled={true} />\n )}\n </div>\n );\n};\n\nexport const UploadWrapperFormItem = (props: EditableFormItemProps) => {\n const { formItemProps } = props.fieldConfig;\n return (\n <Form.Item\n {...formItemProps}\n name={props.name}\n className={classNames('editable-upload-wrapper-form-item', formItemProps?.className)}\n >\n <UploadWrapperFormItemContent {...props} />\n </Form.Item>\n );\n};\n","import { extend } from '@dimjs/utils';\nimport { FieldSingleConfig } from '../type';\nimport { getEditable } from '../utils';\nimport { CheckboxGroupFormItem } from './checkbox-group';\nimport { DatePickerWrapperFormItem } from './date-picker-wrapper';\nimport { DateRangePickerWrapperFormItem } from './date-range-picker-wrapper';\nimport { InputFormItem } from './input';\nimport { InputNumberFormItem } from './input-number';\nimport { RadioGroupFormItem } from './radio-group';\nimport { SelectorWrapperFormItem } from './selector-wrapper';\nimport { SwitchWrapperFormItem } from './switch-wrapper';\nimport { TextFormItem } from './text';\nimport { TextAreaFormItem } from './textarea';\nimport { UploadWrapperFormItem } from './upload-wrapper';\n\nexport type FormItemAdapterProps = {\n name: Array<number | string>;\n completeName: Array<number | string>;\n fieldConfig: FieldSingleConfig;\n tableRowIndex: number;\n};\n\nexport const FormItemAdapter = (props: FormItemAdapterProps) => {\n const { editableConfig, editable } = props.fieldConfig;\n const newEditable = getEditable(editable, props.tableRowIndex);\n const fieldConfig = extend({}, props.fieldConfig, { editable: newEditable });\n\n const commomProps = {\n name: props.name,\n fieldConfig,\n };\n\n if (editableConfig?.type === 'input' && newEditable) {\n return <InputFormItem {...commomProps} />;\n } else if (editableConfig?.type === 'inputNumber' && newEditable) {\n return <InputNumberFormItem {...commomProps} />;\n } else if (editableConfig?.type === 'textArea' && newEditable) {\n return <TextAreaFormItem {...commomProps} />;\n } else if (editableConfig?.type === 'datePickerWrapper' && newEditable) {\n return <DatePickerWrapperFormItem {...commomProps} />;\n } else if (editableConfig?.type === 'dateRangePickerWrapper') {\n return <DateRangePickerWrapperFormItem {...commomProps} />;\n } else if (editableConfig?.type === 'selectorWrapper') {\n return <SelectorWrapperFormItem {...commomProps} />;\n } else if (editableConfig?.type === 'checkboxGroup') {\n return <CheckboxGroupFormItem {...commomProps} />;\n } else if (editableConfig?.type === 'radioGroup') {\n return <RadioGroupFormItem {...commomProps} />;\n } else if (editableConfig?.type === 'uploadWrapper') {\n return <UploadWrapperFormItem {...commomProps} />;\n } else if (editableConfig?.type === 'switchWrapper') {\n return <SwitchWrapperFormItem {...commomProps} />;\n } else if (editableConfig?.type === 'custom') {\n return editableConfig.editableComptProps({\n name: props.name,\n editable: newEditable,\n completeName: props.completeName,\n tableRowIndex: props.tableRowIndex,\n });\n }\n\n return <TextFormItem {...commomProps} />;\n};\n","import { DeleteOutlined } from '@ant-design/icons';\nimport { classNames } from '@dimjs/utils';\nimport { Button, Form, Space } from 'antd';\nimport { FormItemAdapter } from '../form-item';\nimport { FormListConfig } from '../type';\nimport { getEditable } from '../utils';\n\nexport type FormListProps = {\n name: Array<number | string>;\n formListConfig: FormListConfig;\n tableRowIndex: number;\n completeName: (string | number)[];\n};\n\nexport const FormList = (props: FormListProps) => {\n const from = Form.useFormInstance();\n const {\n onFormListBeforeRender,\n editableConfigList,\n onFormListAfterRender,\n onFormListItemBeforeRender,\n onFormListItemAfterRender,\n deleteOperateRender,\n } = props.formListConfig;\n return (\n <Form.List name={props.name}>\n {(fields, { add, remove }) => (\n <>\n {onFormListBeforeRender\n ? onFormListBeforeRender({\n tableRowIndex: props.tableRowIndex,\n add,\n get value() {\n return from.getFieldValue(props.completeName);\n },\n })\n : null}\n {fields.map((fieldChild, index) => {\n const hasEditable = editableConfigList.find((item) =>\n getEditable(item.editable, props.tableRowIndex),\n );\n const className = classNames(\n 'editable-inner-formlist-item',\n `editable-inner-formlist-item-${props.name[1]}`,\n { 'editable-inner-formlist-item_preview': !hasEditable },\n );\n return (\n <div key={index} className={className}>\n {onFormListItemBeforeRender?.({\n add,\n remove: () => {\n remove(index);\n },\n formListItemIndex: index,\n tableRowIndex: props.tableRowIndex,\n get value() {\n return from.getFieldValue([...props.completeName, fieldChild.name]);\n },\n })}\n <Space>\n {editableConfigList.map((fieldItem, index) => {\n return (\n <FormItemAdapter\n name={[fieldChild.name, fieldItem.fieldName]}\n fieldConfig={fieldItem}\n key={index}\n tableRowIndex={props.tableRowIndex}\n completeName={[...props.completeName, fieldChild.name]}\n />\n );\n })}\n {hasEditable ? (\n <DeleteFormListItem\n deleteOperateRender={deleteOperateRender}\n remove={() => {\n remove(index);\n }}\n index={index}\n />\n ) : undefined}\n </Space>\n {onFormListItemAfterRender?.({\n add,\n formListItemIndex: index,\n tableRowIndex: props.tableRowIndex,\n remove: () => {\n remove(index);\n },\n get value() {\n return from.getFieldValue([...props.completeName, fieldChild.name]);\n },\n })}\n </div>\n );\n })}\n {onFormListAfterRender\n ? onFormListAfterRender({\n tableRowIndex: props.tableRowIndex,\n add,\n get value() {\n return from.getFieldValue(props.completeName);\n },\n })\n : null}\n </>\n )}\n </Form.List>\n );\n};\n\nconst DeleteFormListItem = (props: {\n deleteOperateRender: FormListConfig['deleteOperateRender'];\n remove: () => void;\n index: number;\n}) => {\n return (\n <Form.Item>\n {props.deleteOperateRender ? (\n props.deleteOperateRender({ remove: props.remove, formListItemIndex: props.index })\n ) : (\n <Button type=\"link\" danger icon={<DeleteOutlined />} onClick={props.remove}>\n 删除\n </Button>\n )}\n </Form.Item>\n );\n};\n","import { isArray } from '@dimjs/lang';\nimport { toArray } from '@flatbiz/utils';\nimport { Fragment } from 'react';\nimport { FormItemHidden } from '../../form-item-hidden';\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 hiddenFieldList?: { 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.hiddenFieldList?.map((item, index) => {\n return <FormItemHidden key={index} name={[props.tableRowIndex, ...toArray(item.dataIndex)]} />;\n })}\n </Fragment>\n );\n }\n }\n return <TextFormItem name={props.name} />;\n};\n","import { PlusOutlined } from '@ant-design/icons';\nimport { classNames } from '@dimjs/utils';\nimport { isUndefinedOrNull, toArray, type TAny, type TPlainObject } from '@flatbiz/utils';\nimport { Form, message, Table, type FormListFieldData, type FormListOperation, type TableProps } from 'antd';\nimport type { FormListProps } from 'antd/es/form';\nimport { ColumnsType } from 'antd/es/table';\nimport { CSSProperties, isValidElement, ReactElement, useEffect, useMemo, useRef } from 'react';\nimport { ButtonWrapper } from '../button-wrapper';\nimport { TextSymbolWrapper } from '../text-symbol-wrapper';\nimport { TipsWrapper, type TipsWrapperProps } from '../tips-wrapper/tips-wrapper';\nimport { FormListItem } from './form-list-item';\nimport './style.less';\nimport { EditableTableName, EditableTableRecordType, FieldSingleConfig, FormListConfig } from './type';\n\ntype fieldConfigFunctionParams = {\n tableRowIndex: number;\n name: EditableTableName;\n tableRowName: EditableTableName;\n getTableRowData: () => TPlainObject;\n};\n/**\n * antd 默认render功能此处不能使用\n */\nexport type EditableTableColumn = Omit<ColumnsType['0'], 'render'> & {\n /**\n * @description 请使用 tipsWrapperProps 属性配置\n * ```\n * 会在 title 之后展示一个 icon,hover 之后提示一些信息\n * 1. title为string类型、ReactElement有效\n * 2. hoverArea 默认值:icon\n * ```\n */\n // tooltip?: string | { content: string; icon?: ReactElement; hoverArea?: 'icon' | 'all' };\n /**\n * 会在 title 之后展示一个 icon\n * ```\n * 1. title为string类型有效\n * 2. 可为icon添加提示效果\n * 3. 可为icon添加点击事件\n * ```\n */\n tipsWrapperProps?: string | TipsWrapperProps;\n dataIndex?: string;\n fieldConfig?:\n | FieldSingleConfig\n | FormListConfig\n | ((data: fieldConfigFunctionParams) => FieldSingleConfig | FormListConfig);\n /** 隐藏域字段 */\n hiddenField?:\n | {\n dataIndex: string;\n }\n | {\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 getTableRowData: () => TPlainObject;\n }) => ReactElement | null;\n /** table datasource children column 自定义渲染 */\n tableChildrenColumnRender?: (value: TAny, record: TPlainObject, index: number) => ReactElement | null;\n /** 为表格header中的字段添加必填标识,无验证拦截功能 */\n required?: boolean;\n};\n\nexport type EditableTableProps = {\n /** FormList name属性 */\n name: EditableTableName;\n\n /**\n * 当前Edittable处在formList内部时(必填),完整formItem的name\n * ```\n * 例如 处在formList内部\n * 1. name=[0,dataList]\n * 2. completeName=[xxxList, 0, dataList]\n * ```\n */\n completeName?: Array<string | number>;\n /**\n * 表格行数据,唯一值字段Key\n * ```\n * 1. 如果数据中没有可前端添加key\n * 2. 有问题可咨询 xg15472\n * ```\n */\n uidFieldKey: string;\n /**\n * ```\n * antd table属性\n * 1. 新增cellVerticalAlign,单元格竖直方向对齐方式,设置table column onCell属性后失效\n * ```\n */\n tableProps?: Omit<TableProps<EditableTableRecordType>, 'dataSource' | 'columns' | 'rowKey'> & {\n cellVerticalAlign?: 'baseline' | 'middle' | 'top' | 'bottom';\n };\n columns: EditableTableColumn[];\n onTableBeforeRender?: (formListOperation: FormListOperation, nextRowIndex: number) => ReactElement | null;\n /**\n * 设置后,将覆盖底部`新增`按钮\n */\n onTableAfterRender?: (formListOperation: FormListOperation, nextRowIndex: number) => ReactElement | null;\n\n /** 新增行默认值,自定义onTableAfterRender后失效 */\n getAddRowDefaultValues?: () => TPlainObject;\n\n /** 隐藏底部`新增`按钮,设置 onTableAfterRender后 失效 */\n hiddenFooterBtn?: boolean;\n /**\n * Form.List rules\n * ```\n rules={[\n {\n validator: async (_, names) => {\n if (!names || names.length < 2) {\n return Promise.reject(new Error('At least 2 passengers'));\n }\n },\n },\n ]}\n * ```\n */\n rules?: FormListProps['rules'];\n /** 空效果显示尺寸,默认值:small */\n emptyShowSize?: 'small' | 'large';\n className?: string;\n style?: CSSProperties;\n};\n\n/**\n * 可编辑表格(通过FormList实现)\n * @deprecated 已过期,请使用 EditableTablePro 组件\n * demo:https://fex.qa.tcshuke.com/docs/admin/main/table/row-editable1\n * ```\n * 1. 表格数据必须要有唯一值字段,通过属性uidFieldKey设置\n * 2. 通过 tableProps 设置Table属性,table size默认:small\n * 3. Table children column 不可编辑\n * 4. 当存在折叠children数据时,组件会在children中内置_isChildrenItem字段\n * 5. 可通过tableChildrenColumnRender自定义渲染 table children column 显示\n * 6. 4.5.0版本移除 ref.getTableItemDataByFormListItemKey 功能,可选择表格参考(https://fex.qa.tcshuke.com/docs/admin/main/table/row-editable2)\n * ```\n */\nexport const EditableTable = (props: EditableTableProps) => {\n const form = Form.useFormInstance();\n\n const formListFieldsRef = useRef<FormListFieldData[]>([]);\n\n const columnsIncludeUidKey = useMemo(() => {\n const hasUid = props.columns.find((item) => item['dataIndex'] === props.uidFieldKey);\n return !!hasUid;\n }, [props.columns, props.uidFieldKey]);\n\n const columns = useMemo(() => {\n if (!props.columns) return [];\n return props.columns.map((columnItem) => {\n const {\n fieldConfig,\n renderMiddleware,\n tableChildrenColumnRender,\n // tooltip,\n title,\n tipsWrapperProps,\n required,\n align,\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 }\n // else if (tooltip) {\n // titleRender = <TableTitleTooltip title={title as string} tooltip={tooltip} />;\n // }\n else {\n titleRender = title as string;\n }\n return {\n title: required ? (\n <TextSymbolWrapper\n style={{ marginLeft: align === 'center' ? undefined : 10 }}\n text={titleRender}\n position=\"before\"\n symbolType=\"required\"\n />\n ) : (\n titleRender\n ),\n onCell: () => {\n return {\n valign: props.tableProps?.cellVerticalAlign || 'middle',\n };\n },\n ...otherColumnItem,\n render: (value, record, index) => {\n if (record['_isChildrenItem']) {\n if (tableChildrenColumnRender) {\n return tableChildrenColumnRender(value, record, index);\n }\n return value;\n }\n const tableRowName = [...toArray<string | number>(props.name as TAny), record.name];\n const completeName = columnItem.dataIndex ? [...tableRowName, columnItem.dataIndex] : tableRowName;\n const customRender = renderMiddleware?.({\n name: completeName,\n tableRowIndex: record.name,\n operation: record.operation,\n tableRowName,\n index,\n getTableRowData: () => {\n if (props.completeName) {\n return form.getFieldValue([...props.completeName, record.name]);\n }\n return form.getFieldValue(tableRowName);\n },\n });\n if (customRender) {\n return customRender;\n }\n\n const fieldConfigActual =\n typeof fieldConfig === 'function'\n ? fieldConfig({\n name: completeName,\n tableRowIndex: record.name,\n tableRowName,\n getTableRowData: () => {\n if (props.completeName) {\n return form.getFieldValue([...props.completeName, record.name]);\n }\n return form.getFieldValue(tableRowName);\n },\n })\n : fieldConfig;\n let hiddenFieldList = toArray<{ dataIndex: string }>(columnItem.hiddenField);\n if (!columnsIncludeUidKey && index === 0) {\n hiddenFieldList = hiddenFieldList.concat([{ dataIndex: props.uidFieldKey }]);\n }\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 hiddenFieldList={hiddenFieldList}\n />\n );\n },\n };\n }) as ColumnsType<EditableTableRecordType>;\n }, [\n props.columns,\n props.tableProps,\n props.name,\n props.completeName,\n props.uidFieldKey,\n columnsIncludeUidKey,\n form,\n ]);\n\n const formListDataSource = Form.useWatch(props.completeName ? props.completeName : props.name, form);\n\n useEffect(() => {\n const names = toArray<string>(props.name);\n if (/^\\d+$/.test(`${names?.[0]}`) && props.completeName === undefined) {\n void message.error('当前Editable处在FormList内部,必须赋值completeName参数');\n }\n }, [props.completeName, props.name]);\n\n return (\n <div\n className={classNames(\n 'editable-table',\n { 'et-empty-show-large': props.emptyShowSize === 'large' },\n props.className,\n )}\n style={props.style}\n >\n <Form.List name={props.name} rules={props.rules}>\n {(fields, formListOperation, { errors }) => {\n formListFieldsRef.current = fields;\n return (\n <div\n style={{\n borderRadius: '6px',\n border: errors?.length ? '1px solid #ff4d4f' : '1px solid transparent',\n }}\n >\n {props.onTableBeforeRender ? props.onTableBeforeRender(formListOperation, fields.length) : null}\n <Table\n scroll={{ x: 'max-content' }}\n pagination={false}\n size=\"small\"\n {...props.tableProps}\n rowKey={(record) => {\n const completeName = props.completeName || [];\n const names = toArray(props.name);\n\n const prevName = completeName.length ? completeName : names;\n let target;\n if (record['_isChildrenItem']) {\n target = form.getFieldValue([\n ...prevName,\n record['_parentIndex'],\n 'children',\n record['_index'],\n ]);\n } else {\n target = form.getFieldValue([...prevName, record['_index']]);\n }\n const key = target?.[props.uidFieldKey];\n if (isUndefinedOrNull(key)) {\n console.warn(\n `EditableTable 通过入参uidFieldKey:${props.uidFieldKey},未获取到表格行唯一值数据`,\n );\n }\n return key;\n }}\n dataSource={fields.map((item, index) => {\n const children = formListDataSource?.[item.name]?.children as TPlainObject[] | undefined;\n if (children) {\n children.forEach((item, itemIndex) => {\n item['_isChildrenItem'] = true;\n item['_parentIndex'] = index;\n item['_index'] = itemIndex;\n });\n }\n return {\n ...item,\n _index: index,\n operation: formListOperation,\n children,\n };\n })}\n columns={columns}\n />\n {props.onTableAfterRender ? (\n props.onTableAfterRender(formListOperation, fields.length)\n ) : (\n <ButtonWrapper\n type=\"dashed\"\n hidden={props.hiddenFooterBtn}\n onClick={() => formListOperation.add(props.getAddRowDefaultValues?.())}\n block\n icon={<PlusOutlined />}\n style={{ marginTop: 15 }}\n >\n 新增\n </ButtonWrapper>\n )}\n <Form.ErrorList\n errors={\n errors.length\n ? [\n <div\n style={{\n color: '#ff4d4f',\n padding: '5px',\n }}\n key=\"0\"\n >\n {errors}\n </div>,\n ]\n : undefined\n }\n />\n </div>\n );\n }}\n </Form.List>\n </div>\n );\n};\n"],"names":["getEditable","editable","tableRowIndex","CheckboxGroupFormItemContent","props","_props$fieldConfig","fieldConfig","editableConfig","render","editableComptProps","options","useMemo","onChange","_hooks","useCallbackRef","value","_jsx","Checkbox","Group","_extends","className","children","tableCellRender","selectorCell","CheckboxGroupFormItem","formItemProps","Form","Item","name","_classNames","DatePickerWrapperFormItem","DatePickerWrapper","allowClear","FormItemContent","data","viewLabel","_isArray","undefined","join","DateRangePickerWrapper","DateRangePickerWrapperFormItem","InputFormItem","InputWrapper","InputNumberFormItem","InputNumber","RadioGroupFormItemContent","e","target","Radio","RadioGroupFormItem","_useState","useState","selectorList","setSelectorList","_useState2","viewLabelList","setviewLabelList","useEffect","length","map","item","label","returnList","forEach","find","temp","push","String","fieldNames","onSelectorListAllChange","dataList","arrayField2LabelValue","selectList","SelectorWrapper","_jsxs","Fragment","style","display","tag","index","Tag","color","SelectorWrapperFormItem","viewData","defaultCheckedText","checkedChildren","defaultUnCheckedText","unCheckedChildren","checkedText","unCheckedText","SwitchWrapper","checkedValue","marginRight","SwitchWrapperFormItem","FormItemTextContent","_props$fieldConfig2","_props$fieldConfig3","isBaseData","_isString","_isNumber","_isBoolean","console","warn","JSON","stringify","viewText","TextFormItem","noStyle","TextAreaFormItem","InputTextAreaWrapper","UploadWrapperFormItemContent","_editableComptProps","otherProps","_objectWithoutPropertiesLoose","_excluded","UploadWrapper","listType","disabled","UploadWrapperFormItem","FormItemAdapter","newEditable","_extend","commomProps","type","completeName","FormList","from","useFormInstance","_props$formListConfig","formListConfig","onFormListBeforeRender","editableConfigList","onFormListAfterRender","onFormListItemBeforeRender","onFormListItemAfterRender","deleteOperateRender","List","fields","_ref","add","remove","_Fragment","getFieldValue","fieldChild","hasEditable","formListItemIndex","concat","Space","fieldItem","fieldName","DeleteFormListItem","Button","danger","icon","_DeleteOutlined","onClick","FormListItem","_props$hiddenFieldLis","hiddenFieldList","FormItemHidden","toArray","dataIndex","EditableTable","form","formListFieldsRef","useRef","columnsIncludeUidKey","hasUid","columns","uidFieldKey","columnItem","renderMiddleware","tableChildrenColumnRender","title","tipsWrapperProps","required","align","otherColumnItem","support","isValidElement","titleRender","TipsWrapper","tipType","popoverProps","content","TextSymbolWrapper","marginLeft","text","position","symbolType","onCell","_props$tableProps","valign","tableProps","cellVerticalAlign","record","tableRowName","customRender","operation","getTableRowData","fieldConfigActual","hiddenField","formListDataSource","useWatch","names","test","message","error","emptyShowSize","rules","formListOperation","errors","current","borderRadius","border","onTableBeforeRender","Table","scroll","x","pagination","size","rowKey","_target","prevName","key","isUndefinedOrNull","dataSource","_formListDataSource$i","itemIndex","_index","onTableAfterRender","ButtonWrapper","hidden","hiddenFooterBtn","getAddRowDefaultValues","block","_PlusOutlined","marginTop","ErrorList","padding"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sources":["@flatbiz/antd/src/editable-table/utils.ts","@flatbiz/antd/src/editable-table/form-item/checkbox-group.tsx","@flatbiz/antd/src/editable-table/form-item/date-picker-wrapper.tsx","@flatbiz/antd/src/editable-table/form-item/date-range-picker-wrapper.tsx","@flatbiz/antd/src/editable-table/form-item/input.tsx","@flatbiz/antd/src/editable-table/form-item/input-number.tsx","@flatbiz/antd/src/editable-table/form-item/radio-group.tsx","@flatbiz/antd/src/editable-table/form-item/selector-wrapper.tsx","@flatbiz/antd/src/editable-table/form-item/switch-wrapper.tsx","@flatbiz/antd/src/editable-table/form-item/text.tsx","@flatbiz/antd/src/editable-table/form-item/textarea.tsx","@flatbiz/antd/src/editable-table/form-item/upload-wrapper.tsx","@flatbiz/antd/src/editable-table/form-item/index.tsx","@flatbiz/antd/src/editable-table/form-list-item/form-list.tsx","@flatbiz/antd/src/editable-table/form-list-item/index.tsx","@flatbiz/antd/src/editable-table/editable-table.tsx"],"sourcesContent":["import { FieldSingleConfig } from './type';\n\nexport const getEditable = (editable: FieldSingleConfig['editable'], tableRowIndex: number) => {\n return typeof editable === 'boolean' ? editable : editable?.({ tableRowIndex });\n};\n","import { classNames } from '@dimjs/utils';\nimport { LabelValueItem, TAny } from '@flatbiz/utils';\nimport { hooks } from '@wove/react';\nimport { Checkbox, Form } from 'antd';\nimport { useMemo } from 'react';\nimport { tableCellRender } from '../../table-cell-render';\nimport { EditableCheckboxGroupConfig, EditableFormItemProps } from '../type';\n\ntype CheckboxGroupFormItemContent = Omit<EditableFormItemProps, 'formItemProps'> & {\n value?: Array<string | number>;\n onChange?: (value: TAny) => void;\n};\n\nconst CheckboxGroupFormItemContent = (props: CheckboxGroupFormItemContent) => {\n const { editableConfig, editable, render } = props.fieldConfig;\n const editableComptProps = (editableConfig as EditableCheckboxGroupConfig).editableComptProps;\n const options = useMemo(\n () => (editableComptProps.options || []) as LabelValueItem[],\n [editableComptProps.options],\n );\n const onChange = hooks.useCallbackRef((value) => {\n props.onChange?.(value);\n editableComptProps.onChange?.(value);\n });\n\n if (editable) {\n return <Checkbox.Group {...editableComptProps} value={props.value} onChange={onChange} />;\n }\n\n return (\n <span className=\"editable-checkbox-group-view\">\n {render ? render(props.value, options) : tableCellRender.selectorCell(options)(props.value)}\n </span>\n );\n};\n\nexport const CheckboxGroupFormItem = (props: EditableFormItemProps) => {\n const { formItemProps } = props.fieldConfig;\n\n return (\n <Form.Item\n {...formItemProps}\n name={props.name}\n className={classNames('editable-checkbox-group-form-item', formItemProps?.className)}\n >\n <CheckboxGroupFormItemContent {...props} />\n </Form.Item>\n );\n};\n","import { classNames } from '@dimjs/utils';\nimport { Form } from 'antd';\nimport { DatePickerWrapper } from '../../date-picker-wrapper';\nimport { EditableDatePickerWrapperConfig, EditableFormItemProps } from '../type';\n\nexport const DatePickerWrapperFormItem = (props: EditableFormItemProps) => {\n const { formItemProps, editableConfig } = props.fieldConfig;\n return (\n <Form.Item\n {...formItemProps}\n name={props.name}\n className={classNames('editable-date-picker-wraper-form-item', formItemProps?.className)}\n >\n <DatePickerWrapper\n allowClear\n {...(editableConfig as EditableDatePickerWrapperConfig).editableComptProps}\n />\n </Form.Item>\n );\n};\n","import { isArray } from '@dimjs/lang';\nimport { classNames } from '@dimjs/utils';\nimport { hooks } from '@wove/react';\nimport { Form } from 'antd';\nimport { useMemo } from 'react';\nimport { DateRangePickerWrapper } from '../../date-range-picker-wrapper';\nimport { EditableDateRangePickerWrapperConfig, EditableFormItemProps } from '../type';\n\ntype FormItemContentProps = Omit<EditableFormItemProps, 'formItemProps'> & {\n value?: [string, string];\n onChange?: (value?: [string, string]) => void;\n};\n\nconst FormItemContent = (props: FormItemContentProps) => {\n const { editableConfig, editable, render } = props.fieldConfig;\n const editableComptProps = (editableConfig as EditableDateRangePickerWrapperConfig).editableComptProps;\n\n const onChange = hooks.useCallbackRef((data) => {\n props.onChange?.(data);\n editableComptProps?.onChange?.(data);\n });\n\n const viewLabel = useMemo(() => {\n const value = isArray(props.value) ? props.value : ([] as any[]);\n if (editable) return undefined;\n return value.join('~');\n }, [editable, props.value]);\n\n if (editable) {\n return (\n <DateRangePickerWrapper allowClear {...editableComptProps} value={props.value} onChange={onChange} />\n );\n }\n return <span className=\"editable-date-range-picker-view\">{render ? render(props.value) : viewLabel}</span>;\n};\n\nexport const DateRangePickerWrapperFormItem = (props: EditableFormItemProps) => {\n const { formItemProps } = props.fieldConfig;\n return (\n <Form.Item\n {...formItemProps}\n name={props.name}\n className={classNames('editable-date-range-picker-wraper-form-item', formItemProps?.className)}\n >\n <FormItemContent {...props} />\n </Form.Item>\n );\n};\n","import { Form } from 'antd';\nimport { InputWrapper } from '../../input-wrapper';\nimport { EditableFormItemProps, EditableInputConfig } from '../type';\n\nexport const InputFormItem = (props: EditableFormItemProps) => {\n const { formItemProps, editableConfig } = props.fieldConfig;\n\n return (\n <Form.Item {...formItemProps} name={props.name}>\n <InputWrapper allowClear {...(editableConfig as EditableInputConfig).editableComptProps} />\n </Form.Item>\n );\n};\n","import { classNames } from '@dimjs/utils';\nimport { Form, InputNumber } from 'antd';\nimport { EditableFormItemProps, EditableInputNumberConfig } from '../type';\n\nexport const InputNumberFormItem = (props: EditableFormItemProps) => {\n const { formItemProps, editableConfig } = props.fieldConfig;\n return (\n <Form.Item\n {...formItemProps}\n name={props.name}\n className={classNames('editable-input-number-form-item', formItemProps?.className)}\n >\n <InputNumber {...(editableConfig as EditableInputNumberConfig).editableComptProps} />\n </Form.Item>\n );\n};\n","import { classNames } from '@dimjs/utils';\nimport { LabelValueItem } from '@flatbiz/utils';\nimport { hooks } from '@wove/react';\nimport { Form, Radio } from 'antd';\nimport { useMemo } from 'react';\nimport { tableCellRender } from '../../table-cell-render';\nimport { EditableFormItemProps, EditableRadioGroupConfig } from '../type';\n\ntype RadioGroupFormItemContent = Omit<EditableFormItemProps, 'formItemProps'> & {\n value?: string | number;\n onChange?: (value: string | number) => void;\n};\n\nconst RadioGroupFormItemContent = (props: RadioGroupFormItemContent) => {\n const { editableConfig, editable, render } = props.fieldConfig;\n const editableComptProps = (editableConfig as EditableRadioGroupConfig).editableComptProps;\n const options = useMemo(\n () => (editableComptProps.options || []) as LabelValueItem<string | number>[],\n [editableComptProps.options],\n );\n\n const onChange = hooks.useCallbackRef((e) => {\n props.onChange?.(e.target.value as string | number);\n editableComptProps.onChange?.(e);\n });\n\n if (editable) {\n return <Radio.Group {...editableComptProps} value={props.value} onChange={onChange} />;\n }\n return (\n <span className=\"editable-radio-group-view\">\n {render ? render(props.value, options) : tableCellRender.selectorCell(options)(props.value)}\n </span>\n );\n};\n\nexport const RadioGroupFormItem = (props: EditableFormItemProps) => {\n const { formItemProps } = props.fieldConfig;\n\n return (\n <Form.Item\n {...formItemProps}\n name={props.name}\n className={classNames('editable-radio-group-form-item', formItemProps?.className)}\n >\n <RadioGroupFormItemContent {...props} />\n </Form.Item>\n );\n};\n","import { isArray } from '@dimjs/lang';\nimport { classNames } from '@dimjs/utils';\nimport { arrayField2LabelValue, LabelValueItem, TAny, TPlainObject } from '@flatbiz/utils';\nimport { hooks } from '@wove/react';\nimport { Form, Tag } from 'antd';\nimport { Fragment, useEffect, useState } from 'react';\nimport { SelectorWrapper } from '../../selector-wrapper';\nimport { EditableFormItemProps, EditableSelectWrapperConfig } from '../type';\n\ntype FormItemContentProps = Omit<EditableFormItemProps, 'formItemProps'> & {\n value?: string | number | Array<string | number>;\n onChange?: (value: TAny) => void;\n};\n\nconst FormItemContent = (props: FormItemContentProps) => {\n const { editableConfig, editable, render } = props.fieldConfig;\n const editableComptProps = (editableConfig as EditableSelectWrapperConfig).editableComptProps;\n const [selectorList, setSelectorList] = useState<LabelValueItem[]>([]);\n const [viewLabelList, setviewLabelList] = useState<LabelValueItem[]>([]);\n\n useEffect(() => {\n if (!editable) {\n const value = isArray(props.value) ? props.value : props.value === undefined ? [] : [props.value];\n if (selectorList.length === 0) {\n setviewLabelList(value.map((item) => ({ label: item as string, value: item })));\n }\n const returnList = [] as LabelValueItem[];\n value.forEach((item) => {\n const target = selectorList.find((temp) => temp.value === item);\n returnList.push(target ? target : { label: String(item), value: item });\n });\n setviewLabelList(returnList);\n }\n }, [editable, editableComptProps.fieldNames, props.value, selectorList]);\n\n const onSelectorListAllChange = hooks.useCallbackRef((dataList: TPlainObject[]) => {\n setSelectorList(arrayField2LabelValue(dataList || [], editableComptProps.fieldNames));\n });\n\n const onChange = hooks.useCallbackRef((value, selectList) => {\n props.onChange?.(value);\n editableComptProps.onChange?.(value, selectList);\n });\n\n if (editable) {\n return (\n <SelectorWrapper\n {...editableComptProps}\n value={props.value}\n onChange={onChange}\n onSelectorListAllChange={onSelectorListAllChange}\n />\n );\n }\n return (\n <Fragment>\n <div style={{ display: 'none' }}>\n <SelectorWrapper {...editableComptProps} onSelectorListAllChange={onSelectorListAllChange} />\n </div>\n <span className=\"editable-selector-view\">\n {render\n ? render(props.value, selectorList)\n : viewLabelList.map((tag, index) => (\n <Tag key={index} color={'geekblue'}>\n {tag.label}\n </Tag>\n ))}\n </span>\n </Fragment>\n );\n};\n\nexport const SelectorWrapperFormItem = (props: EditableFormItemProps) => {\n const { formItemProps } = props.fieldConfig;\n\n return (\n <Form.Item\n {...formItemProps}\n name={props.name}\n className={classNames('editable-selector-wrapper-form-item', formItemProps?.className)}\n >\n <FormItemContent {...props} />\n </Form.Item>\n );\n};\n","import { classNames } from '@dimjs/utils';\nimport { hooks } from '@wove/react';\nimport { Form, Tag } from 'antd';\nimport { useMemo } from 'react';\nimport { SwitchWrapper } from '../../switch-wrapper';\nimport { EditableFormItemProps, EditableSwitchWrapperConfig } from '../type';\n\ntype FormItemContentProps = Omit<EditableFormItemProps, 'formItemProps'> & {\n value?: string | number | boolean;\n onChange?: (value?: string | number | boolean) => void;\n};\n\nconst FormItemContent = (props: FormItemContentProps) => {\n const { editableConfig, editable, render } = props.fieldConfig;\n const editableComptProps = (editableConfig as EditableSwitchWrapperConfig).editableComptProps;\n const onChange = hooks.useCallbackRef((data) => {\n props.onChange?.(data);\n editableComptProps?.onChange?.(data);\n });\n\n const viewData = useMemo(() => {\n const defaultCheckedText = editableComptProps.checkedChildren || '是';\n const defaultUnCheckedText = editableComptProps.unCheckedChildren || '否';\n\n return {\n checkedText: defaultCheckedText,\n unCheckedText: defaultUnCheckedText,\n };\n }, [editableComptProps.checkedChildren, editableComptProps.unCheckedChildren]);\n\n if (editable) {\n return <SwitchWrapper {...editableComptProps} value={props.value} onChange={onChange} />;\n }\n if (render) {\n return <span className=\"editable-switch-wrapper-view\">{render(props.value)}</span>;\n }\n return (\n <span className=\"editable-switch-wrapper-view\">\n {editableComptProps.checkedValue == props.value ? (\n <Tag color=\"geekblue\" style={{ marginRight: 0 }}>\n {viewData.checkedText}\n </Tag>\n ) : (\n <Tag style={{ marginRight: 0 }}>{viewData.unCheckedText}</Tag>\n )}\n </span>\n );\n};\n\nexport const SwitchWrapperFormItem = (props: EditableFormItemProps) => {\n const { formItemProps } = props.fieldConfig;\n return (\n <Form.Item\n {...formItemProps}\n name={props.name}\n className={classNames('editable-switch-wrapper-form-item', formItemProps?.className)}\n >\n <FormItemContent {...props} />\n </Form.Item>\n );\n};\n","import { isBoolean, isNumber, isString } from '@dimjs/lang';\nimport { Form } from 'antd';\nimport { useMemo } from 'react';\nimport { EditableFormItemProps, FieldSingleConfig } from '../type';\n\nconst FormItemTextContent = (props: {\n value?: string | number;\n name: EditableFormItemProps['name'];\n fieldConfig?: FieldSingleConfig;\n}) => {\n const value = useMemo(() => {\n if (props.fieldConfig?.render) return undefined;\n const isBaseData =\n isString(props.value) || isNumber(props.value) || isBoolean(props.value) || !props.value;\n if (!isBaseData) {\n console.warn(`Form.List name:【${props.name}】数据【${JSON.stringify(props.value)}】不能渲染在页面中`);\n }\n return isBaseData ? props.value : undefined;\n }, [props.fieldConfig?.render, props.name, props.value]);\n const viewText = props.fieldConfig?.render?.(props.value) || value;\n return <span>{viewText}</span>;\n};\n\nexport const TextFormItem = (props: { name: Array<number | string>; fieldConfig?: FieldSingleConfig }) => {\n return (\n <Form.Item noStyle name={props.name}>\n <FormItemTextContent name={props.name} fieldConfig={props.fieldConfig} />\n </Form.Item>\n );\n};\n","import { Form } from 'antd';\nimport { InputTextAreaWrapper } from '../../input-text-area-wrapper';\nimport { EditableFormItemProps, EditableTextareaConfig } from '../type';\n\nexport const TextAreaFormItem = (props: EditableFormItemProps) => {\n const { formItemProps, editableConfig } = props.fieldConfig;\n return (\n <Form.Item {...formItemProps} name={props.name}>\n <InputTextAreaWrapper {...(editableConfig as EditableTextareaConfig).editableComptProps} />\n </Form.Item>\n );\n};\n","import { classNames } from '@dimjs/utils';\nimport { TAny } from '@flatbiz/utils';\nimport { Form } from 'antd';\nimport { UploadWrapper } from '../../upload-wrapper';\nimport { EditableFileUploadConfig, EditableFormItemProps } from '../type';\n\nconst UploadWrapperFormItemContent = (\n props: EditableFormItemProps & { value?: TAny; onChange?: (value?: TAny) => void },\n) => {\n const { editableConfig, render, editable } = props.fieldConfig;\n const { children, ...otherProps } = (editableConfig as EditableFileUploadConfig).editableComptProps;\n if (editable) {\n return (\n <UploadWrapper listType=\"text\" {...otherProps} value={props.value} onChange={props.onChange}>\n {children}\n </UploadWrapper>\n );\n }\n return (\n <div className=\"upload-wrapper-selector-view\">\n {render ? (\n render(props.value)\n ) : (\n <UploadWrapper listType=\"text\" {...otherProps} value={props.value} disabled={true} />\n )}\n </div>\n );\n};\n\nexport const UploadWrapperFormItem = (props: EditableFormItemProps) => {\n const { formItemProps } = props.fieldConfig;\n return (\n <Form.Item\n {...formItemProps}\n name={props.name}\n className={classNames('editable-upload-wrapper-form-item', formItemProps?.className)}\n >\n <UploadWrapperFormItemContent {...props} />\n </Form.Item>\n );\n};\n","import { extend } from '@dimjs/utils';\nimport { FieldSingleConfig } from '../type';\nimport { getEditable } from '../utils';\nimport { CheckboxGroupFormItem } from './checkbox-group';\nimport { DatePickerWrapperFormItem } from './date-picker-wrapper';\nimport { DateRangePickerWrapperFormItem } from './date-range-picker-wrapper';\nimport { InputFormItem } from './input';\nimport { InputNumberFormItem } from './input-number';\nimport { RadioGroupFormItem } from './radio-group';\nimport { SelectorWrapperFormItem } from './selector-wrapper';\nimport { SwitchWrapperFormItem } from './switch-wrapper';\nimport { TextFormItem } from './text';\nimport { TextAreaFormItem } from './textarea';\nimport { UploadWrapperFormItem } from './upload-wrapper';\n\nexport type FormItemAdapterProps = {\n name: Array<number | string>;\n completeName: Array<number | string>;\n fieldConfig: FieldSingleConfig;\n tableRowIndex: number;\n};\n\nexport const FormItemAdapter = (props: FormItemAdapterProps) => {\n const { editableConfig, editable } = props.fieldConfig;\n const newEditable = getEditable(editable, props.tableRowIndex);\n const fieldConfig = extend({}, props.fieldConfig, { editable: newEditable });\n\n const commomProps = {\n name: props.name,\n fieldConfig,\n };\n\n if (editableConfig?.type === 'input' && newEditable) {\n return <InputFormItem {...commomProps} />;\n } else if (editableConfig?.type === 'inputNumber' && newEditable) {\n return <InputNumberFormItem {...commomProps} />;\n } else if (editableConfig?.type === 'textArea' && newEditable) {\n return <TextAreaFormItem {...commomProps} />;\n } else if (editableConfig?.type === 'datePickerWrapper' && newEditable) {\n return <DatePickerWrapperFormItem {...commomProps} />;\n } else if (editableConfig?.type === 'dateRangePickerWrapper') {\n return <DateRangePickerWrapperFormItem {...commomProps} />;\n } else if (editableConfig?.type === 'selectorWrapper') {\n return <SelectorWrapperFormItem {...commomProps} />;\n } else if (editableConfig?.type === 'checkboxGroup') {\n return <CheckboxGroupFormItem {...commomProps} />;\n } else if (editableConfig?.type === 'radioGroup') {\n return <RadioGroupFormItem {...commomProps} />;\n } else if (editableConfig?.type === 'uploadWrapper') {\n return <UploadWrapperFormItem {...commomProps} />;\n } else if (editableConfig?.type === 'switchWrapper') {\n return <SwitchWrapperFormItem {...commomProps} />;\n } else if (editableConfig?.type === 'custom') {\n return editableConfig.editableComptProps({\n name: props.name,\n editable: newEditable,\n completeName: props.completeName,\n tableRowIndex: props.tableRowIndex,\n });\n }\n\n return <TextFormItem {...commomProps} />;\n};\n","import { DeleteOutlined } from '@ant-design/icons';\nimport { classNames } from '@dimjs/utils';\nimport { Button, Form, Space } from 'antd';\nimport { FormItemAdapter } from '../form-item';\nimport { FormListConfig } from '../type';\nimport { getEditable } from '../utils';\n\nexport type FormListProps = {\n name: Array<number | string>;\n formListConfig: FormListConfig;\n tableRowIndex: number;\n completeName: (string | number)[];\n};\n\nexport const FormList = (props: FormListProps) => {\n const from = Form.useFormInstance();\n const {\n onFormListBeforeRender,\n editableConfigList,\n onFormListAfterRender,\n onFormListItemBeforeRender,\n onFormListItemAfterRender,\n deleteOperateRender,\n } = props.formListConfig;\n return (\n <Form.List name={props.name}>\n {(fields, { add, remove }) => (\n <>\n {onFormListBeforeRender\n ? onFormListBeforeRender({\n tableRowIndex: props.tableRowIndex,\n add,\n get value() {\n return from.getFieldValue(props.completeName);\n },\n })\n : null}\n {fields.map((fieldChild, index) => {\n const hasEditable = editableConfigList.find((item) =>\n getEditable(item.editable, props.tableRowIndex),\n );\n const className = classNames(\n 'editable-inner-formlist-item',\n `editable-inner-formlist-item-${props.name[1]}`,\n { 'editable-inner-formlist-item_preview': !hasEditable },\n );\n return (\n <div key={index} className={className}>\n {onFormListItemBeforeRender?.({\n add,\n remove: () => {\n remove(index);\n },\n formListItemIndex: index,\n tableRowIndex: props.tableRowIndex,\n get value() {\n return from.getFieldValue([...props.completeName, fieldChild.name]);\n },\n })}\n <Space>\n {editableConfigList.map((fieldItem, index) => {\n return (\n <FormItemAdapter\n name={[fieldChild.name, fieldItem.fieldName]}\n fieldConfig={fieldItem}\n key={index}\n tableRowIndex={props.tableRowIndex}\n completeName={[...props.completeName, fieldChild.name]}\n />\n );\n })}\n {hasEditable ? (\n <DeleteFormListItem\n deleteOperateRender={deleteOperateRender}\n remove={() => {\n remove(index);\n }}\n index={index}\n />\n ) : undefined}\n </Space>\n {onFormListItemAfterRender?.({\n add,\n formListItemIndex: index,\n tableRowIndex: props.tableRowIndex,\n remove: () => {\n remove(index);\n },\n get value() {\n return from.getFieldValue([...props.completeName, fieldChild.name]);\n },\n })}\n </div>\n );\n })}\n {onFormListAfterRender\n ? onFormListAfterRender({\n tableRowIndex: props.tableRowIndex,\n add,\n get value() {\n return from.getFieldValue(props.completeName);\n },\n })\n : null}\n </>\n )}\n </Form.List>\n );\n};\n\nconst DeleteFormListItem = (props: {\n deleteOperateRender: FormListConfig['deleteOperateRender'];\n remove: () => void;\n index: number;\n}) => {\n return (\n <Form.Item>\n {props.deleteOperateRender ? (\n props.deleteOperateRender({ remove: props.remove, formListItemIndex: props.index })\n ) : (\n <Button type=\"link\" danger icon={<DeleteOutlined />} onClick={props.remove}>\n 删除\n </Button>\n )}\n </Form.Item>\n );\n};\n","import { isArray } from '@dimjs/lang';\nimport { toArray } from '@flatbiz/utils';\nimport { Fragment } from 'react';\nimport { FormItemHidden } from '../../form-item-hidden';\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 hiddenFieldList?: { 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.hiddenFieldList?.map((item, index) => {\n return <FormItemHidden key={index} name={[props.tableRowIndex, ...toArray(item.dataIndex)]} />;\n })}\n </Fragment>\n );\n }\n }\n return <TextFormItem name={props.name} />;\n};\n","import { PlusOutlined } from '@ant-design/icons';\nimport { classNames } from '@dimjs/utils';\nimport { isUndefinedOrNull, toArray, type TAny, type TPlainObject } from '@flatbiz/utils';\nimport { Form, message, Table, type FormListFieldData, type FormListOperation, type TableProps } from 'antd';\nimport type { FormListProps } from 'antd/es/form';\nimport { ColumnsType } from 'antd/es/table';\nimport { CSSProperties, isValidElement, ReactElement, useEffect, useMemo, useRef } from 'react';\nimport { ButtonWrapper } from '../button-wrapper';\nimport { TextSymbolWrapper } from '../text-symbol-wrapper';\nimport { TipsWrapper, type TipsWrapperProps } from '../tips-wrapper/tips-wrapper';\nimport { FormListItem } from './form-list-item';\nimport './style.less';\nimport { EditableTableName, EditableTableRecordType, FieldSingleConfig, FormListConfig } from './type';\n\ntype fieldConfigFunctionParams = {\n tableRowIndex: number;\n name: EditableTableName;\n tableRowName: EditableTableName;\n getTableRowData: () => TPlainObject;\n};\n/**\n * antd 默认render功能此处不能使用\n */\nexport type EditableTableColumn = Omit<ColumnsType['0'], 'render'> & {\n /**\n * @description 请使用 tipsWrapperProps 属性配置\n * ```\n * 会在 title 之后展示一个 icon,hover 之后提示一些信息\n * 1. title为string类型、ReactElement有效\n * 2. hoverArea 默认值:icon\n * ```\n */\n // tooltip?: string | { content: string; icon?: ReactElement; hoverArea?: 'icon' | 'all' };\n /**\n * 会在 title 之后展示一个 icon\n * ```\n * 1. title为string类型有效\n * 2. 可为icon添加提示效果\n * 3. 可为icon添加点击事件\n * ```\n */\n tipsWrapperProps?: string | TipsWrapperProps;\n dataIndex?: string;\n fieldConfig?:\n | FieldSingleConfig\n | FormListConfig\n | ((data: fieldConfigFunctionParams) => FieldSingleConfig | FormListConfig);\n /** 隐藏域字段 */\n hiddenField?:\n | {\n dataIndex: string;\n }\n | {\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 getTableRowData: () => TPlainObject;\n }) => ReactElement | null;\n /** table datasource children column 自定义渲染 */\n tableChildrenColumnRender?: (value: TAny, record: TPlainObject, index: number) => ReactElement | null;\n /** 为表格header中的字段添加必填标识,无验证拦截功能 */\n required?: boolean;\n};\n\nexport type EditableTableProps = {\n /** FormList name属性 */\n name: EditableTableName;\n\n /**\n * 当前Edittable处在formList内部时(必填),完整formItem的name\n * ```\n * 例如 处在formList内部\n * 1. name=[0,dataList]\n * 2. completeName=[xxxList, 0, dataList]\n * ```\n */\n completeName?: Array<string | number>;\n /**\n * 表格行数据,唯一值字段Key\n * ```\n * 1. 如果数据中没有可前端添加key\n * 2. 有问题可咨询 xg15472\n * ```\n */\n uidFieldKey: string;\n /**\n * ```\n * antd table属性\n * 1. 新增cellVerticalAlign,单元格竖直方向对齐方式,设置table column onCell属性后失效\n * ```\n */\n tableProps?: Omit<TableProps<EditableTableRecordType>, 'dataSource' | 'columns' | 'rowKey'> & {\n cellVerticalAlign?: 'baseline' | 'middle' | 'top' | 'bottom';\n };\n columns: EditableTableColumn[];\n onTableBeforeRender?: (formListOperation: FormListOperation, nextRowIndex: number) => ReactElement | null;\n /**\n * 设置后,将覆盖底部`新增`按钮\n */\n onTableAfterRender?: (formListOperation: FormListOperation, nextRowIndex: number) => ReactElement | null;\n\n /** 新增行默认值,自定义onTableAfterRender后失效 */\n getAddRowDefaultValues?: () => TPlainObject;\n\n /** 隐藏底部`新增`按钮,设置 onTableAfterRender后 失效 */\n hiddenFooterBtn?: boolean;\n /**\n * Form.List rules\n * ```\n rules={[\n {\n validator: async (_, names) => {\n if (!names || names.length < 2) {\n return Promise.reject(new Error('At least 2 passengers'));\n }\n },\n },\n ]}\n * ```\n */\n rules?: FormListProps['rules'];\n /** 空效果显示尺寸,默认值:small */\n emptyShowSize?: 'small' | 'large';\n className?: string;\n style?: CSSProperties;\n};\n\n/**\n * 可编辑表格(通过FormList实现)\n * @deprecated 已过期,请使用 EditableTablePro 组件\n * demo:https://fex.qa.tcshuke.com/docs/admin/main/table/row-editable1\n * ```\n * 1. 表格数据必须要有唯一值字段,通过属性uidFieldKey设置\n * 2. 通过 tableProps 设置Table属性,table size默认:small\n * 3. Table children column 不可编辑\n * 4. 当存在折叠children数据时,组件会在children中内置_isChildrenItem字段\n * 5. 可通过tableChildrenColumnRender自定义渲染 table children column 显示\n * 6. 4.5.0版本移除 ref.getTableItemDataByFormListItemKey 功能,可选择表格参考(https://fex.qa.tcshuke.com/docs/admin/main/table/row-editable2)\n * ```\n */\nexport const EditableTable = (props: EditableTableProps) => {\n const form = Form.useFormInstance();\n\n const formListFieldsRef = useRef<FormListFieldData[]>([]);\n\n const columnsIncludeUidKey = useMemo(() => {\n const hasUid = props.columns.find((item) => item['dataIndex'] === props.uidFieldKey);\n return !!hasUid;\n }, [props.columns, props.uidFieldKey]);\n\n const columns = useMemo(() => {\n if (!props.columns) return [];\n return props.columns.map((columnItem) => {\n const {\n fieldConfig,\n renderMiddleware,\n tableChildrenColumnRender,\n // tooltip,\n title,\n tipsWrapperProps,\n required,\n align,\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 }\n // else if (tooltip) {\n // titleRender = <TableTitleTooltip title={title as string} tooltip={tooltip} />;\n // }\n else {\n titleRender = title as string;\n }\n return {\n title: required ? (\n <TextSymbolWrapper\n style={{ marginLeft: align === 'center' ? undefined : 10 }}\n text={titleRender}\n position=\"before\"\n symbolType=\"required\"\n />\n ) : (\n titleRender\n ),\n onCell: () => {\n return {\n valign: props.tableProps?.cellVerticalAlign || 'middle',\n };\n },\n ...otherColumnItem,\n render: (value, record, index) => {\n if (record['_isChildrenItem']) {\n if (tableChildrenColumnRender) {\n return tableChildrenColumnRender(value, record, index);\n }\n return value;\n }\n const tableRowName = [...toArray<string | number>(props.name as TAny), record.name];\n const completeName = columnItem.dataIndex ? [...tableRowName, columnItem.dataIndex] : tableRowName;\n const customRender = renderMiddleware?.({\n name: completeName,\n tableRowIndex: record.name,\n operation: record.operation,\n tableRowName,\n index,\n getTableRowData: () => {\n if (props.completeName) {\n return form.getFieldValue([...props.completeName, record.name]);\n }\n return form.getFieldValue(tableRowName);\n },\n });\n if (customRender) {\n return customRender;\n }\n\n const fieldConfigActual =\n typeof fieldConfig === 'function'\n ? fieldConfig({\n name: completeName,\n tableRowIndex: record.name,\n tableRowName,\n getTableRowData: () => {\n if (props.completeName) {\n return form.getFieldValue([...props.completeName, record.name]);\n }\n return form.getFieldValue(tableRowName);\n },\n })\n : fieldConfig;\n let hiddenFieldList = toArray<{ dataIndex: string }>(columnItem.hiddenField);\n if (!columnsIncludeUidKey && index === 0) {\n hiddenFieldList = hiddenFieldList.concat([{ dataIndex: props.uidFieldKey }]);\n }\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 hiddenFieldList={hiddenFieldList}\n />\n );\n },\n };\n }) as ColumnsType<EditableTableRecordType>;\n }, [\n props.columns,\n props.tableProps,\n props.name,\n props.completeName,\n props.uidFieldKey,\n columnsIncludeUidKey,\n form,\n ]);\n\n const formListDataSource = Form.useWatch(props.completeName ? props.completeName : props.name, form);\n\n useEffect(() => {\n const names = toArray<string>(props.name);\n if (/^\\d+$/.test(`${names?.[0]}`) && props.completeName === undefined) {\n void message.error('当前Editable处在FormList内部,必须赋值completeName参数');\n }\n }, [props.completeName, props.name]);\n\n return (\n <div\n className={classNames(\n 'editable-table',\n { 'et-empty-show-large': props.emptyShowSize === 'large' },\n props.className,\n )}\n style={props.style}\n >\n <Form.List name={props.name} rules={props.rules}>\n {(fields, formListOperation, { errors }) => {\n formListFieldsRef.current = fields;\n return (\n <div\n style={{\n borderRadius: '6px',\n border: errors?.length ? '1px solid #ff4d4f' : '1px solid transparent',\n }}\n >\n {props.onTableBeforeRender ? props.onTableBeforeRender(formListOperation, fields.length) : null}\n <Table\n scroll={{ x: 'max-content' }}\n pagination={false}\n size=\"small\"\n {...props.tableProps}\n rowKey={(record) => {\n const completeName = props.completeName || [];\n const names = toArray(props.name);\n\n const prevName = completeName.length ? completeName : names;\n let target;\n if (record['_isChildrenItem']) {\n target = form.getFieldValue([\n ...prevName,\n record['_parentIndex'],\n 'children',\n record['_index'],\n ]);\n } else {\n target = form.getFieldValue([...prevName, record['_index']]);\n }\n const key = target?.[props.uidFieldKey];\n if (isUndefinedOrNull(key)) {\n console.warn(\n `EditableTable 通过入参uidFieldKey:${props.uidFieldKey},未获取到表格行唯一值数据`,\n );\n }\n return key;\n }}\n dataSource={fields.map((item, index) => {\n const children = formListDataSource?.[item.name]?.children as TPlainObject[] | undefined;\n if (children) {\n children.forEach((item, itemIndex) => {\n item['_isChildrenItem'] = true;\n item['_parentIndex'] = index;\n item['_index'] = itemIndex;\n });\n }\n return {\n ...item,\n _index: index,\n operation: formListOperation,\n children,\n };\n })}\n columns={columns}\n />\n {props.onTableAfterRender ? (\n props.onTableAfterRender(formListOperation, fields.length)\n ) : (\n <ButtonWrapper\n type=\"dashed\"\n hidden={props.hiddenFooterBtn}\n onClick={() => formListOperation.add(props.getAddRowDefaultValues?.())}\n block\n icon={<PlusOutlined />}\n style={{ marginTop: 15 }}\n >\n 新增\n </ButtonWrapper>\n )}\n <Form.ErrorList\n errors={\n errors.length\n ? [\n <div\n style={{\n color: '#ff4d4f',\n padding: '5px',\n }}\n key=\"0\"\n >\n {errors}\n </div>,\n ]\n : undefined\n }\n />\n </div>\n );\n }}\n </Form.List>\n </div>\n );\n};\n"],"names":["getEditable","editable","tableRowIndex","CheckboxGroupFormItemContent","props","_props$fieldConfig","fieldConfig","editableConfig","render","editableComptProps","options","useMemo","onChange","_hooks","useCallbackRef","value","_jsx","Checkbox","Group","_extends","className","children","tableCellRender","selectorCell","CheckboxGroupFormItem","formItemProps","Form","Item","name","_classNames","DatePickerWrapperFormItem","DatePickerWrapper","allowClear","FormItemContent","data","viewLabel","_isArray","undefined","join","DateRangePickerWrapper","DateRangePickerWrapperFormItem","InputFormItem","InputWrapper","InputNumberFormItem","InputNumber","RadioGroupFormItemContent","e","target","Radio","RadioGroupFormItem","_useState","useState","selectorList","setSelectorList","_useState2","viewLabelList","setviewLabelList","useEffect","length","map","item","label","returnList","forEach","find","temp","push","String","fieldNames","onSelectorListAllChange","dataList","arrayField2LabelValue","selectList","SelectorWrapper","_jsxs","Fragment","style","display","tag","index","Tag","color","SelectorWrapperFormItem","viewData","defaultCheckedText","checkedChildren","defaultUnCheckedText","unCheckedChildren","checkedText","unCheckedText","SwitchWrapper","checkedValue","marginRight","SwitchWrapperFormItem","FormItemTextContent","_props$fieldConfig2","_props$fieldConfig3","isBaseData","_isString","_isNumber","_isBoolean","console","warn","JSON","stringify","viewText","TextFormItem","noStyle","TextAreaFormItem","InputTextAreaWrapper","UploadWrapperFormItemContent","_editableComptProps","otherProps","_objectWithoutPropertiesLoose","_excluded","UploadWrapper","listType","disabled","UploadWrapperFormItem","FormItemAdapter","newEditable","_extend","commomProps","type","completeName","FormList","from","useFormInstance","_props$formListConfig","formListConfig","onFormListBeforeRender","editableConfigList","onFormListAfterRender","onFormListItemBeforeRender","onFormListItemAfterRender","deleteOperateRender","List","fields","_ref","add","remove","_Fragment","getFieldValue","fieldChild","hasEditable","formListItemIndex","concat","Space","fieldItem","fieldName","DeleteFormListItem","Button","danger","icon","_DeleteOutlined","onClick","FormListItem","_props$hiddenFieldLis","hiddenFieldList","FormItemHidden","toArray","dataIndex","EditableTable","form","formListFieldsRef","useRef","columnsIncludeUidKey","hasUid","columns","uidFieldKey","columnItem","renderMiddleware","tableChildrenColumnRender","title","tipsWrapperProps","required","align","otherColumnItem","support","isValidElement","titleRender","TipsWrapper","tipType","popoverProps","content","TextSymbolWrapper","marginLeft","text","position","symbolType","onCell","_props$tableProps","valign","tableProps","cellVerticalAlign","record","tableRowName","customRender","operation","getTableRowData","fieldConfigActual","hiddenField","formListDataSource","useWatch","names","test","message","error","emptyShowSize","rules","formListOperation","errors","current","borderRadius","border","onTableBeforeRender","Table","scroll","x","pagination","size","rowKey","_target","prevName","key","isUndefinedOrNull","dataSource","_formListDataSource$i","itemIndex","_index","onTableAfterRender","ButtonWrapper","hidden","hiddenFooterBtn","getAddRowDefaultValues","block","_PlusOutlined","marginTop","ErrorList","padding"],"mappings":"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"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
/*! @flatjs/forge MIT @flatbiz/antd */
|
|
2
|
+
function r(r){return r&&r.__esModule&&Object.prototype.hasOwnProperty.call(r,"default")?r["default"]:r}var t={exports:{}};
|
|
3
|
+
/*!
|
|
4
|
+
Copyright (c) 2018 Jed Watson.
|
|
5
|
+
Licensed under the MIT License (MIT), see
|
|
6
|
+
http://jedwatson.github.io/classnames
|
|
7
|
+
*/(function(r){(function(){var t={}.hasOwnProperty;function e(){var r="";for(var t=0;t<arguments.length;t++){var e=arguments[t];if(e){r=o(r,n(e))}}return r}function n(r){if(typeof r==="string"||typeof r==="number"){return r}if(typeof r!=="object"){return""}if(Array.isArray(r)){return e.apply(null,r)}if(r.toString!==Object.prototype.toString&&!r.toString.toString().includes("[native code]")){return r.toString()}var n="";for(var i in r){if(t.call(r,i)&&r[i]){n=o(n,i)}}return n}function o(r,t){if(!t){return r}if(r){return r+" "+t}return r+t}if(r.exports){e.default=e;r.exports=e}else{window.classNames=e}})()})(t);var e=t.exports;var n=r(e);export{n as c};
|
|
8
|
+
//# sourceMappingURL=index-636a568e.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index-636a568e.js","sources":["@flatbiz/antd/node_modules/classnames/index.js"],"sourcesContent":["/*!\n\tCopyright (c) 2018 Jed Watson.\n\tLicensed under the MIT License (MIT), see\n\thttp://jedwatson.github.io/classnames\n*/\n/* global define */\n\n(function () {\n\t'use strict';\n\n\tvar hasOwn = {}.hasOwnProperty;\n\n\tfunction classNames () {\n\t\tvar classes = '';\n\n\t\tfor (var i = 0; i < arguments.length; i++) {\n\t\t\tvar arg = arguments[i];\n\t\t\tif (arg) {\n\t\t\t\tclasses = appendClass(classes, parseValue(arg));\n\t\t\t}\n\t\t}\n\n\t\treturn classes;\n\t}\n\n\tfunction parseValue (arg) {\n\t\tif (typeof arg === 'string' || typeof arg === 'number') {\n\t\t\treturn arg;\n\t\t}\n\n\t\tif (typeof arg !== 'object') {\n\t\t\treturn '';\n\t\t}\n\n\t\tif (Array.isArray(arg)) {\n\t\t\treturn classNames.apply(null, arg);\n\t\t}\n\n\t\tif (arg.toString !== Object.prototype.toString && !arg.toString.toString().includes('[native code]')) {\n\t\t\treturn arg.toString();\n\t\t}\n\n\t\tvar classes = '';\n\n\t\tfor (var key in arg) {\n\t\t\tif (hasOwn.call(arg, key) && arg[key]) {\n\t\t\t\tclasses = appendClass(classes, key);\n\t\t\t}\n\t\t}\n\n\t\treturn classes;\n\t}\n\n\tfunction appendClass (value, newClass) {\n\t\tif (!newClass) {\n\t\t\treturn value;\n\t\t}\n\t\n\t\tif (value) {\n\t\t\treturn value + ' ' + newClass;\n\t\t}\n\t\n\t\treturn value + newClass;\n\t}\n\n\tif (typeof module !== 'undefined' && module.exports) {\n\t\tclassNames.default = classNames;\n\t\tmodule.exports = classNames;\n\t} else if (typeof define === 'function' && typeof define.amd === 'object' && define.amd) {\n\t\t// register as 'classnames', consistent with npm package name\n\t\tdefine('classnames', [], function () {\n\t\t\treturn classNames;\n\t\t});\n\t} else {\n\t\twindow.classNames = classNames;\n\t}\n}());\n"],"names":["hasOwn","hasOwnProperty","classNames","classes","i","arguments","length","arg","appendClass","parseValue","Array","isArray","apply","toString","Object","prototype","includes","key","call","value","newClass","module","exports","default","window"],"mappings":";;;;;;gBAOC,WAGA,IAAIA,EAAS,CAAE,EAACC,eAEhB,SAASC,IACR,IAAIC,EAAU,GAEd,IAAK,IAAIC,EAAI,EAAGA,EAAIC,UAAUC,OAAQF,IAAK,CAC1C,IAAIG,EAAMF,UAAUD,GACpB,GAAIG,EAAK,CACRJ,EAAUK,EAAYL,EAASM,EAAWF,GAC1C,CACD,CAED,OAAOJ,CACP,CAED,SAASM,EAAYF,GACpB,UAAWA,IAAQ,iBAAmBA,IAAQ,SAAU,CACvD,OAAOA,CACP,CAED,UAAWA,IAAQ,SAAU,CAC5B,MAAO,EACP,CAED,GAAIG,MAAMC,QAAQJ,GAAM,CACvB,OAAOL,EAAWU,MAAM,KAAML,EAC9B,CAED,GAAIA,EAAIM,WAAaC,OAAOC,UAAUF,WAAaN,EAAIM,SAASA,WAAWG,SAAS,iBAAkB,CACrG,OAAOT,EAAIM,UACX,CAED,IAAIV,EAAU,GAEd,IAAK,IAAIc,KAAOV,EAAK,CACpB,GAAIP,EAAOkB,KAAKX,EAAKU,IAAQV,EAAIU,GAAM,CACtCd,EAAUK,EAAYL,EAASc,EAC/B,CACD,CAED,OAAOd,CACP,CAED,SAASK,EAAaW,EAAOC,GAC5B,IAAKA,EAAU,CACd,OAAOD,CACP,CAED,GAAIA,EAAO,CACV,OAAOA,EAAQ,IAAMC,CACrB,CAED,OAAOD,EAAQC,CACf,CAED,GAAqCC,EAAOC,QAAS,CACpDpB,EAAWqB,QAAUrB,EACrBmB,EAAAC,QAAiBpB,CACnB,KAKQ,CACNsB,OAAOtB,WAAaA,CACpB,CACF,EArEA","x_google_ignoreList":[0]}
|
package/esm/index.js
CHANGED
|
@@ -11,7 +11,6 @@ import './types/index.css';
|
|
|
11
11
|
import './fba-utils/index.css';
|
|
12
12
|
import './ace-editor-mysql/index.css';
|
|
13
13
|
import './ace-editor-xml/index.css';
|
|
14
|
-
import './ai-search/index.css';
|
|
15
14
|
import './alert-wrapper/index.css';
|
|
16
15
|
import './amount-fen-input/index.css';
|
|
17
16
|
import './amount-fen-input-form-item/index.css';
|
|
@@ -144,5 +143,5 @@ import './tree-selector-wrapper/index.css';
|
|
|
144
143
|
import './x-mind-preview/index.css';
|
|
145
144
|
import './index.css';
|
|
146
145
|
/*! @flatjs/forge MIT @flatbiz/antd */
|
|
147
|
-
export{AceEditorGroovy}from"./ace-editor-groovy/index.js";export{AceEditorJava}from"./ace-editor-java/index.js";export{AceEditorJson}from"./ace-editor-json/index.js";export{AceEditorMysql}from"./ace-editor-mysql/index.js";export{AceEditorXml}from"./ace-editor-xml/index.js";export{AiSearch}from"./ai-search/index.js";export{AlertWrapper}from"./alert-wrapper/index.js";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{BlockLayout}from"./block-layout/index.js";export{Bootstrap}from"./bootstrap/index.js";export{BoxGrid,useBoxBreakpoint}from"./box-grid/index.js";export{ButtonOperate,ButtonOperateItemContent}from"./button-operate/index.js";export{ButtonWrapper}from"./button-wrapper/index.js";export{CardLayout}from"./card-layout/index.js";export{CardWrapper}from"./card-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{C as ConfigProviderWrapper}from"./index-83bede1b.js";export{CopyWrapper}from"./copy-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{DeleteNode}from"./delete-node/index.js";export{dialogAlert}from"./dialog-alert/index.js";export{dialogConfirm}from"./dialog-confirm/index.js";export{dialogDragModal}from"./dialog-drag-modal/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{dialogPreviewImage}from"./dialog-preview-image/index.js";export{DragCollapse}from"./drag-collapse/index.js";export{DragCollapseFormList}from"./drag-collapse-form-list/index.js";export{DragEditableCard}from"./drag-editable-card/index.js";export{DragEditableTable}from"./drag-editable-table/index.js";export{DragEditableTablePro}from"./drag-editable-table-pro/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{EasyForm}from"./easy-form/index.js";export{EasyTable}from"./easy-table/index.js";export{EditableCard}from"./editable-card/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{EditableTablePro}from"./editable-table-pro/index.js";export{EditorWrapper}from"./editor-wrapper/index.js";export{ErrorBoundaryWrapper}from"./error-boundary-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{FileExport}from"./file-export/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{FormItemSpan}from"./form-item-span/index.js";export{FormItemText}from"./form-item-text/index.js";export{FormItemWrapper}from"./form-item-wrapper/index.js";export{FormItemWrapperDependencies}from"./form-item-wrapper-dependencies/index.js";export{FormListWrapper}from"./form-list-wrapper/index.js";export{FormWrapper}from"./form-wrapper/index.js";export{FullScreen}from"./full-screen/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{JsonEditor}from"./json-editor/index.js";export{LabelValueLayout}from"./label-value-layout/index.js";export{LabelValueRender}from"./label-value-render/index.js";export{LocalLoading}from"./local-loading/index.js";export{MentionEditor}from"./mention-editor/index.js";export{MentionsWrapper}from"./mentions-wrapper/index.js";export{ModalAction}from"./modal-action/index.js";export{ModalWrapper}from"./modal-wrapper/index.js";export{NumberRangeFormItem}from"./number-range-form-item/index.js";export{PageFixedFooter}from"./page-fixed-footer/index.js";export{Page404}from"./page404/index.js";export{PaginationWrapper}from"./pagination-wrapper/index.js";export{Pdf}from"./pdf/index.js";export{PdfPreview}from"./pdf-preview/index.js";export{PdfPreview2}from"./pdf-preview2/index.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{ResizableDrawer}from"./resizable-drawer/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{SearchForm}from"./search-form/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{SplitWrapper}from"./split-wrapper/index.js";export{styles}from"./styles/index.js";export{SvgHttpView}from"./svg-http-view/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{TabsSticky}from"./tabs-sticky/index.js";export{TabsWrapper}from"./tabs-wrapper/index.js";export{TagGroup}from"./tag-group/index.js";export{TagListRender}from"./tag-list-render/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{TextOverflow}from"./text-overflow/index.js";export{TextOverflowRender}from"./text-overflow-render/index.js";export{TextSymbolWrapper}from"./text-symbol-wrapper/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{TreeModal}from"./tree-modal/index.js";export{TreeModalSelector}from"./tree-modal-selector/index.js";export{TreeSelectorWrapper}from"./tree-selector-wrapper/index.js";export{TreeWrapper}from"./tree-wrapper/index.js";export{UploadWrapper}from"./upload-wrapper/index.js";export{XMindPreview}from"./x-mind-preview/index.js";import"./_rollupPluginBabelHelpers-c0dbec57.js";import"@dimjs/utils/cjs/class-names";import"@wove/react/cjs/hooks";import"@dimjs/lang/cjs/is-object";import"@flatbiz/utils";import"react";import"react-ace";import"ace-builds/src-noconflict/ext-language_tools";import"ace-builds/src-noconflict/mode-groovy";import"ace-builds/src-noconflict/snippets/groovy";import"react/jsx-runtime";import"ace-builds/src-noconflict/mode-java";import"ace-builds/src-noconflict/snippets/java";import"ace-builds/src-noconflict/mode-json";import"ace-builds/src-noconflict/snippets/json";import"sql-formatter";import"ace-builds/src-noconflict/mode-mysql";import"ace-builds/src-noconflict/snippets/mysql";import"antd";import"xml-formatter";import"ace-builds/src-noconflict/mode-xml";import"ace-builds/src-noconflict/snippets/xml";import"@flatbiz/ai-request";import"@dimjs/utils/cjs/get";import"@dimjs/lang/cjs/is-number";import"ahooks";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"@ant-design/icons/es/icons/LoadingOutlined";import"@dimjs/lang/cjs/is-array";import"@dimjs/utils/cjs/extend";import"@ant-design/icons/es/icons/CloseCircleFilled";import"@ant-design/icons/es/icons/RedoOutlined";import"@wove/react/cjs/create-ctx";import"@ant-design/icons/es/icons/CloseCircleOutlined";import"antd/es/locale/en_US";import"antd/es/locale/zh_CN";import"dayjs";import"dayjs/locale/en";import"dayjs/locale/zh-cn";import"dayjs/plugin/advancedFormat";import"dayjs/plugin/customParseFormat";import"dayjs/plugin/localeData";import"dayjs/plugin/utc";import"dayjs/plugin/weekday";import"dayjs/plugin/weekOfYear";import"dayjs/plugin/weekYear";import"@ant-design/icons/es/icons/CopyOutlined";import"@ant-design/icons/es/icons/CheckOutlined";import"copy-to-clipboard";import"@dimjs/model-react";import"./time-53b3f55f.js";import"@ant-design/icons/es/icons/DeleteOutlined";import"@ant-design/icons/es/icons/CloseOutlined";import"react-dom/client";import"react-draggable";import"./context-1f2093c6.js";import"./dom-4d04aa64.js";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/PlusOutlined";import"@ant-design/icons/es/icons/EditOutlined";import"./context-62955871.js";import"@dimjs/lang/cjs/is-boolean";import"@dimjs/model";import"@wove/react/cjs/editor";import"./use-responsive-point-21b8c601.js";import"@dimjs/utils/cjs/uuid";import"@ant-design/icons/es/icons/QuestionCircleFilled";import"@dimjs/lang/cjs/is-deep-equal";import"react-dom";import"react-resizable";import"@tinymce/tinymce-react";import"@ant-design/icons/es/icons/PlusCircleOutlined";import"@ant-design/icons/es/icons/FullscreenOutlined";import"@dimjs/utils/cjs/json";import"pubsub-js";import"react-split";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"simple-mind-map";
|
|
146
|
+
export{AceEditorGroovy}from"./ace-editor-groovy/index.js";export{AceEditorJava}from"./ace-editor-java/index.js";export{AceEditorJson}from"./ace-editor-json/index.js";export{AceEditorMysql}from"./ace-editor-mysql/index.js";export{AceEditorXml}from"./ace-editor-xml/index.js";export{AlertWrapper}from"./alert-wrapper/index.js";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{BlockLayout}from"./block-layout/index.js";export{Bootstrap}from"./bootstrap/index.js";export{BoxGrid,useBoxBreakpoint}from"./box-grid/index.js";export{ButtonOperate,ButtonOperateItemContent}from"./button-operate/index.js";export{ButtonWrapper}from"./button-wrapper/index.js";export{CardLayout}from"./card-layout/index.js";export{CardWrapper}from"./card-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{C as ConfigProviderWrapper}from"./index-83bede1b.js";export{CopyWrapper}from"./copy-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{DeleteNode}from"./delete-node/index.js";export{dialogAlert}from"./dialog-alert/index.js";export{dialogConfirm}from"./dialog-confirm/index.js";export{dialogDragModal}from"./dialog-drag-modal/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{dialogPreviewImage}from"./dialog-preview-image/index.js";export{DragCollapse}from"./drag-collapse/index.js";export{DragCollapseFormList}from"./drag-collapse-form-list/index.js";export{DragEditableCard}from"./drag-editable-card/index.js";export{DragEditableTable}from"./drag-editable-table/index.js";export{DragEditableTablePro}from"./drag-editable-table-pro/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{EasyForm}from"./easy-form/index.js";export{EasyTable}from"./easy-table/index.js";export{EditableCard}from"./editable-card/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{EditableTablePro}from"./editable-table-pro/index.js";export{EditorWrapper}from"./editor-wrapper/index.js";export{ErrorBoundaryWrapper}from"./error-boundary-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{FileExport}from"./file-export/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{FormItemSpan}from"./form-item-span/index.js";export{FormItemText}from"./form-item-text/index.js";export{FormItemWrapper}from"./form-item-wrapper/index.js";export{FormItemWrapperDependencies}from"./form-item-wrapper-dependencies/index.js";export{FormListWrapper}from"./form-list-wrapper/index.js";export{FormWrapper}from"./form-wrapper/index.js";export{FullScreen}from"./full-screen/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{JsonEditor}from"./json-editor/index.js";export{LabelValueLayout}from"./label-value-layout/index.js";export{LabelValueRender}from"./label-value-render/index.js";export{LocalLoading}from"./local-loading/index.js";export{MentionEditor}from"./mention-editor/index.js";export{MentionsWrapper}from"./mentions-wrapper/index.js";export{ModalAction}from"./modal-action/index.js";export{ModalWrapper}from"./modal-wrapper/index.js";export{NumberRangeFormItem}from"./number-range-form-item/index.js";export{PageFixedFooter}from"./page-fixed-footer/index.js";export{Page404}from"./page404/index.js";export{PaginationWrapper}from"./pagination-wrapper/index.js";export{Pdf}from"./pdf/index.js";export{PdfPreview}from"./pdf-preview/index.js";export{PdfPreview2}from"./pdf-preview2/index.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{ResizableDrawer}from"./resizable-drawer/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{SearchForm}from"./search-form/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{SplitWrapper}from"./split-wrapper/index.js";export{styles}from"./styles/index.js";export{SvgHttpView}from"./svg-http-view/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{TabsSticky}from"./tabs-sticky/index.js";export{TabsWrapper}from"./tabs-wrapper/index.js";export{TagGroup}from"./tag-group/index.js";export{TagListRender}from"./tag-list-render/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{TextOverflow}from"./text-overflow/index.js";export{TextOverflowRender}from"./text-overflow-render/index.js";export{TextSymbolWrapper}from"./text-symbol-wrapper/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{TreeModal}from"./tree-modal/index.js";export{TreeModalSelector}from"./tree-modal-selector/index.js";export{TreeSelectorWrapper}from"./tree-selector-wrapper/index.js";export{TreeWrapper}from"./tree-wrapper/index.js";export{UploadWrapper}from"./upload-wrapper/index.js";export{XMindPreview}from"./x-mind-preview/index.js";import"./_rollupPluginBabelHelpers-c0dbec57.js";import"@dimjs/utils/cjs/class-names";import"@wove/react/cjs/hooks";import"@dimjs/lang/cjs/is-object";import"@flatbiz/utils";import"react";import"react-ace";import"ace-builds/src-noconflict/ext-language_tools";import"ace-builds/src-noconflict/mode-groovy";import"ace-builds/src-noconflict/snippets/groovy";import"react/jsx-runtime";import"ace-builds/src-noconflict/mode-java";import"ace-builds/src-noconflict/snippets/java";import"ace-builds/src-noconflict/mode-json";import"ace-builds/src-noconflict/snippets/json";import"sql-formatter";import"ace-builds/src-noconflict/mode-mysql";import"ace-builds/src-noconflict/snippets/mysql";import"antd";import"xml-formatter";import"ace-builds/src-noconflict/mode-xml";import"ace-builds/src-noconflict/snippets/xml";import"@dimjs/utils/cjs/get";import"@dimjs/lang/cjs/is-number";import"ahooks";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"@ant-design/icons/es/icons/LoadingOutlined";import"@dimjs/lang/cjs/is-array";import"@dimjs/utils/cjs/extend";import"@ant-design/icons/es/icons/CloseCircleFilled";import"@ant-design/icons/es/icons/RedoOutlined";import"@wove/react/cjs/create-ctx";import"@ant-design/icons/es/icons/CloseCircleOutlined";import"antd/es/locale/en_US";import"antd/es/locale/zh_CN";import"dayjs";import"dayjs/locale/en";import"dayjs/locale/zh-cn";import"dayjs/plugin/advancedFormat";import"dayjs/plugin/customParseFormat";import"dayjs/plugin/localeData";import"dayjs/plugin/utc";import"dayjs/plugin/weekday";import"dayjs/plugin/weekOfYear";import"dayjs/plugin/weekYear";import"@ant-design/icons/es/icons/CopyOutlined";import"@ant-design/icons/es/icons/CheckOutlined";import"copy-to-clipboard";import"@dimjs/model-react";import"./time-53b3f55f.js";import"@ant-design/icons/es/icons/DeleteOutlined";import"@ant-design/icons/es/icons/CloseOutlined";import"react-dom/client";import"react-draggable";import"./context-1f2093c6.js";import"./dom-4d04aa64.js";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/PlusOutlined";import"@ant-design/icons/es/icons/EditOutlined";import"./context-62955871.js";import"@dimjs/lang/cjs/is-boolean";import"@dimjs/model";import"@wove/react/cjs/editor";import"./use-responsive-point-21b8c601.js";import"@dimjs/utils/cjs/uuid";import"@ant-design/icons/es/icons/QuestionCircleFilled";import"@dimjs/lang/cjs/is-deep-equal";import"./index-636a568e.js";import"react-dom";import"react-resizable";import"@tinymce/tinymce-react";import"@ant-design/icons/es/icons/PlusCircleOutlined";import"@ant-design/icons/es/icons/FullscreenOutlined";import"@ant-design/icons/es/icons/SyncOutlined";import"@dimjs/utils/cjs/json";import"pubsub-js";import"react-split";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"simple-mind-map";
|
|
148
147
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
.v-request-status{margin:16px 0;position:relative}.v-request-status .ant-empty{margin:8px 0}.v-request-status .ant-spin{left:50%;position:absolute;top:50%;transform:translate(-50%,-50%)}
|
|
1
|
+
.text-overflow{display:flex}.text-overflow,.tow-content{overflow:hidden;position:relative;width:100%}.tow-content{display:inline-block;text-align:inherit;text-overflow:ellipsis;white-space:nowrap}.tow-hidden{display:inline-block;height:0;left:0;overflow:hidden;position:absolute;top:0;width:0}.tow-hidden span{white-space:nowrap}.tow-hidden span,.tow-inner-text{display:inline-block}.tow-trigger .tow-content,.tow-trigger .tow-cut-content{color:#1677ff;transition:color .3s}.tow-trigger .tow-show-text{cursor:pointer}.tow-trigger .tow-show-text:hover{color:#69b1ff}.v-request-status{margin:16px 0;position:relative}.v-request-status .ant-empty{margin:8px 0}.v-request-status .ant-spin{left:50%;position:absolute;top:50%;transform:translate(-50%,-50%)}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
/* eslint-disable */
|
|
2
|
+
import './../fba-hooks/index.css';
|
|
2
3
|
import './index.css';
|
|
3
4
|
/*! @flatjs/forge MIT @flatbiz/antd */
|
|
4
|
-
import{extend as r}from"@dimjs/utils/cjs/extend";import{valueIsEqual as
|
|
5
|
+
import{extend as r}from"@dimjs/utils/cjs/extend";import{valueIsEqual as s}from"@flatbiz/utils";import{Empty as e,Spin as t}from"antd";import{c as i}from"../index-636a568e.js";import{useMemo as o}from"react";import{TextOverflow as n}from"../text-overflow/index.js";import{jsxs as a,jsx as m}from"react/jsx-runtime";import"../_rollupPluginBabelHelpers-c0dbec57.js";import"@dimjs/lang/cjs/is-string";import"@dimjs/utils/cjs/class-names";import"ahooks";import"../fba-hooks/index.js";import"@dimjs/lang/cjs/is-array";import"@wove/react/cjs/hooks";import"../use-responsive-point-21b8c601.js";import"@dimjs/utils/cjs/uuid";var u=function u(p){var c=r({"request-success":"暂无数据","request-progress":"数据查询中","request-error":"数据查询异常","request-init":"暂无数据","no-dependencies-params":"未获取到必要的查询条件","request-search-keyword-empty":"请输入搜索关键字"},p.messageConfig);var d=o((function(){if(p.status&&s(p.status,["request-success","request-progress","request-error","no-dependencies-params","request-search-keyword-empty"])){return c[p.status]}return c["request-init"]}),[c,p.status]);var l=p.status==="request-error";return a(e,{image:e.PRESENTED_IMAGE_SIMPLE,description:m("div",{style:{width:"100%",overflow:"hidden"},children:m(n,{text:d})}),className:i("v-request-status"),children:[m(t,{spinning:p.loading||false}),l?p.errorButton:null]})};export{u as RequestStatus};
|
|
5
6
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["@flatbiz/antd/src/request-status/request-status.tsx"],"sourcesContent":["import { extend } from '@dimjs/utils';\nimport { valueIsEqual } from '@flatbiz/utils';\nimport { Empty, Spin } from 'antd';\nimport { ReactElement, useMemo } from 'react';\nimport './style.less';\n\nexport type TRequestStatus =\n | 'request-init'\n | 'request-progress'\n | 'request-success'\n | 'request-error'\n | 'no-dependencies-params';\nexport type TRequestStatusProps = {\n status?: TRequestStatus;\n errorButton?: ReactElement;\n messageConfig?: Partial<Record<TRequestStatus, string>>;\n loading?: boolean;\n};\nexport const RequestStatus = (props: TRequestStatusProps) => {\n const messageConfig = extend(\n {\n 'request-success': '暂无数据',\n 'request-progress': '数据查询中',\n 'request-error': '数据查询异常',\n 'request-init': '暂无数据',\n 'no-dependencies-params': '
|
|
1
|
+
{"version":3,"file":"index.js","sources":["@flatbiz/antd/src/request-status/request-status.tsx"],"sourcesContent":["import { extend } from '@dimjs/utils';\nimport { valueIsEqual } from '@flatbiz/utils';\nimport { Empty, Spin } from 'antd';\nimport classNames from 'classnames';\nimport { ReactElement, useMemo } from 'react';\nimport { TextOverflow } from '../text-overflow/text-overflow';\nimport './style.less';\n\nexport type TRequestStatus =\n | 'request-init'\n | 'request-progress'\n | 'request-success'\n | 'request-error'\n | 'request-search-keyword-empty'\n | 'no-dependencies-params';\nexport type TRequestStatusProps = {\n status?: TRequestStatus;\n errorButton?: ReactElement;\n messageConfig?: Partial<Record<TRequestStatus, string>>;\n loading?: boolean;\n};\nexport const RequestStatus = (props: TRequestStatusProps) => {\n const messageConfig = extend(\n {\n 'request-success': '暂无数据',\n 'request-progress': '数据查询中',\n 'request-error': '数据查询异常',\n 'request-init': '暂无数据',\n 'no-dependencies-params': '未获取到必要的查询条件',\n 'request-search-keyword-empty': '请输入搜索关键字',\n },\n props.messageConfig,\n );\n const description = useMemo(() => {\n if (\n props.status &&\n valueIsEqual(props.status, [\n 'request-success',\n 'request-progress',\n 'request-error',\n 'no-dependencies-params',\n 'request-search-keyword-empty',\n ])\n ) {\n return messageConfig[props.status];\n }\n return messageConfig['request-init'];\n }, [messageConfig, props.status]);\n\n const isError = props.status === 'request-error';\n return (\n <Empty\n image={Empty.PRESENTED_IMAGE_SIMPLE}\n description={\n <div style={{ width: '100%', overflow: 'hidden' }}>\n <TextOverflow text={description} />\n </div>\n }\n className={classNames('v-request-status')}\n >\n <Spin spinning={props.loading || false}></Spin>\n {isError ? props.errorButton : null}\n </Empty>\n );\n};\n"],"names":["RequestStatus","props","messageConfig","_extend","description","useMemo","status","valueIsEqual","isError","_jsxs","Empty","image","PRESENTED_IMAGE_SIMPLE","_jsx","style","width","overflow","children","TextOverflow","text","className","classNames","Spin","spinning","loading","errorButton"],"mappings":";4mBAqBaA,EAAgB,SAAhBA,EAAiBC,GAC5B,IAAMC,EAAgBC,EACpB,CACE,kBAAmB,OACnB,mBAAoB,QACpB,gBAAiB,SACjB,eAAgB,OAChB,yBAA0B,cAC1B,+BAAgC,YAElCF,EAAMC,eAER,IAAME,EAAcC,GAAQ,WAC1B,GACEJ,EAAMK,QACNC,EAAaN,EAAMK,OAAQ,CACzB,kBACA,mBACA,gBACA,yBACA,iCAEF,CACA,OAAOJ,EAAcD,EAAMK,OAC7B,CACA,OAAOJ,EAAc,eACtB,GAAE,CAACA,EAAeD,EAAMK,SAEzB,IAAME,EAAUP,EAAMK,SAAW,gBACjC,OACEG,EAACC,EAAK,CACJC,MAAOD,EAAME,uBACbR,YACES,EAAA,MAAA,CAAKC,MAAO,CAAEC,MAAO,OAAQC,SAAU,UAAWC,SAChDJ,EAACK,EAAY,CAACC,KAAMf,MAGxBgB,UAAWC,EAAW,oBAAoBJ,SAAA,CAE1CJ,EAACS,EAAI,CAACC,SAAUtB,EAAMuB,SAAW,QAChChB,EAAUP,EAAMwB,YAAc,OAGrC"}
|
|
@@ -6,10 +6,5 @@ import './../types/index.css';
|
|
|
6
6
|
import './../fba-utils/index.css';
|
|
7
7
|
import './index.css';
|
|
8
8
|
/*! @flatjs/forge MIT @flatbiz/antd */
|
|
9
|
-
import e from"@ant-design/icons/es/icons/CloseOutlined";import{_ as r}from"../_rollupPluginBabelHelpers-c0dbec57.js";import{isPromise as
|
|
10
|
-
/*!
|
|
11
|
-
Copyright (c) 2018 Jed Watson.
|
|
12
|
-
Licensed under the MIT License (MIT), see
|
|
13
|
-
http://jedwatson.github.io/classnames
|
|
14
|
-
*/(function(e){(function(){var r={}.hasOwnProperty;function t(){var e="";for(var r=0;r<arguments.length;r++){var t=arguments[r];if(t){e=o(e,i(t))}}return e}function i(e){if(typeof e==="string"||typeof e==="number"){return e}if(typeof e!=="object"){return""}if(Array.isArray(e)){return t.apply(null,e)}if(e.toString!==Object.prototype.toString&&!e.toString.toString().includes("[native code]")){return e.toString()}var i="";for(var a in e){if(r.call(e,a)&&e[a]){i=o(i,a)}}return i}function o(e,r){if(!r){return e}if(e){return e+" "+r}return e+r}if(e.exports){t.default=t;e.exports=t}else{window.classNames=t}})()})(v);var y=v.exports;var h=f(y);var j=n((function(e,t){return p("div",r({ref:t},e,{className:"resize-border"}))}));var b=10;var g=function e(){b++;return b};var w=function n(f){var v=f.open,y=f.onClose,b=f.title,w=b===void 0?"抽屉标题":b,x=f.width,z=x===void 0?600:x,k=f.children,N=f.footer,C=f.maskClosable,S=C===void 0?true:C,P=f.className,O=f.style,_=f.mask,E=_===void 0?true:_,R=f.styles,A=f.headerExtraRender,F=f.zIndex,I=f.onOk,q=f.okText,H=f.cancelText,T=f.hidenFooter;var X=s(z),Y=X[0],B=X[1];var D=function e(r,t){var i=t.size;B(i.width)};var L=function e(r){r.stopPropagation();if(S){y()}};var M=typeof Y==="number"?Y+"px":Y;var U=v?{transform:"translateX(0)",opacity:1}:{transform:"translateX(100%)",opacity:0};var G=v?1:0;var J=l((function(){return F?F:10+g()}),[F]);var K=i.useCallbackRef((function(e){if(I){var r=I(e);if(r&&t(r)){return r.then(y)}}return y()}));return d(u("div",{className:h("drawer-resizable",{"drawer-resizable-visible":v},P),style:!E?{width:M,zIndex:J}:{left:0,zIndex:J},children:[E?p("div",{className:"drawer-resizable-mask",style:{opacity:G},onClick:L}):null,u("div",{className:"drawer-resizable-content",style:r({width:M},U,O),children:[u("div",{className:"drawer-resizable-header",style:R==null?void 0:R.header,children:[u("div",{className:"drawer-resizable-title",children:[p(o,{type:"text",className:"drawer-resizable-title-close",icon:p(e,{}),onClick:function e(r){r.stopPropagation();y()}}),p("div",{className:"",children:w})]}),A?p("div",{className:"drawer-resizable-title-extra",children:A}):null]}),p("div",{className:"drawer-resizable-body",style:R==null?void 0:R.body,children:p(c,{onResize:D,width:Y,handle:p(j,{}),axis:"x",resizeHandles:["w"],minConstraints:[400,0],maxConstraints:[1200,0],style:{height:"100%"},onResizeStop:function e(r){r.stopPropagation();var t=document.querySelectorAll("iframe");t.forEach((function(e){e.style.pointerEvents=""}))},onResizeStart:function e(r){r.stopPropagation();var t=document.querySelectorAll("iframe");t.forEach((function(e){e.style.pointerEvents="none"}))},children:k})}),T?null:N?p("div",{className:"drawer-footer",style:R==null?void 0:R.footer,children:N}):p("div",{className:"drawer-footer",style:R==null?void 0:R.footer,children:u(a,{children:[p(m,{onClick:y,children:H||"取消"}),p(m,{onClick:K,type:"primary",loadingPosition:"center",children:q||"确定"})]})})]})]}),document.body)};export{w as ResizableDrawer};
|
|
9
|
+
import e from"@ant-design/icons/es/icons/CloseOutlined";import{_ as r}from"../_rollupPluginBabelHelpers-c0dbec57.js";import{isPromise as i}from"@dimjs/lang/cjs/is-promise";import{hooks as t}from"@wove/react/cjs/hooks";import{Button as o,Space as a}from"antd";import{c as s}from"../index-636a568e.js";import{forwardRef as n,useState as l,useMemo as d}from"react";import{createPortal as c}from"react-dom";import{Resizable as m}from"react-resizable";import{ButtonWrapper as p}from"../button-wrapper/index.js";import{jsx as u,jsxs as f}from"react/jsx-runtime";import"@ant-design/icons/es/icons/LoadingOutlined";import"@dimjs/utils/cjs/class-names";import"@flatbiz/utils";import"../index-83bede1b.js";import"antd/es/locale/en_US";import"antd/es/locale/zh_CN";import"dayjs";import"dayjs/locale/en";import"dayjs/locale/zh-cn";import"dayjs/plugin/advancedFormat";import"dayjs/plugin/customParseFormat";import"dayjs/plugin/localeData";import"dayjs/plugin/utc";import"dayjs/plugin/weekday";import"dayjs/plugin/weekOfYear";import"dayjs/plugin/weekYear";import"../fba-hooks/index.js";import"@dimjs/lang/cjs/is-array";import"../use-responsive-point-21b8c601.js";import"@dimjs/utils/cjs/uuid";import"@dimjs/utils/cjs/extend";import"../fba-utils/index.js";import"@dimjs/model";var v=n((function(e,i){return u("div",r({ref:i},e,{className:"resize-border"}))}));var y=10;var h=function e(){y++;return y};var j=function n(y){var j=y.open,b=y.onClose,w=y.title,z=w===void 0?"抽屉标题":w,x=y.width,g=x===void 0?600:x,k=y.children,N=y.footer,C=y.maskClosable,P=C===void 0?true:C,E=y.className,R=y.style,S=y.mask,O=S===void 0?true:S,_=y.styles,F=y.headerExtraRender,I=y.zIndex,q=y.onOk,A=y.okText,H=y.cancelText,T=y.hidenFooter;var X=l(g),Y=X[0],B=X[1];var D=function e(r,i){var t=i.size;B(t.width)};var L=function e(r){r.stopPropagation();if(P){b()}};var U=typeof Y==="number"?Y+"px":Y;var G=j?{transform:"translateX(0)",opacity:1}:{transform:"translateX(100%)",opacity:0};var J=j?1:0;var K=d((function(){return I?I:10+h()}),[I]);var M=t.useCallbackRef((function(e){if(q){var r=q(e);if(r&&i(r)){return r.then(b)}}return b()}));return c(f("div",{className:s("drawer-resizable",{"drawer-resizable-visible":j},E),style:!O?{width:U,zIndex:K}:{left:0,zIndex:K},children:[O?u("div",{className:"drawer-resizable-mask",style:{opacity:J},onClick:L}):null,f("div",{className:"drawer-resizable-content",style:r({width:U},G,R),children:[f("div",{className:"drawer-resizable-header",style:_==null?void 0:_.header,children:[f("div",{className:"drawer-resizable-title",children:[u(o,{type:"text",className:"drawer-resizable-title-close",icon:u(e,{}),onClick:function e(r){r.stopPropagation();b()}}),u("div",{className:"",children:z})]}),F?u("div",{className:"drawer-resizable-title-extra",children:F}):null]}),u("div",{className:"drawer-resizable-body",style:_==null?void 0:_.body,children:u(m,{onResize:D,width:Y,handle:u(v,{}),axis:"x",resizeHandles:["w"],minConstraints:[400,0],maxConstraints:[1200,0],style:{height:"100%"},onResizeStop:function e(r){r.stopPropagation();var i=document.querySelectorAll("iframe");i.forEach((function(e){e.style.pointerEvents=""}))},onResizeStart:function e(r){r.stopPropagation();var i=document.querySelectorAll("iframe");i.forEach((function(e){e.style.pointerEvents="none"}))},children:k})}),T?null:N?u("div",{className:"drawer-footer",style:_==null?void 0:_.footer,children:N}):u("div",{className:"drawer-footer",style:_==null?void 0:_.footer,children:f(a,{children:[u(p,{onClick:b,children:H||"取消"}),u(p,{onClick:M,type:"primary",loadingPosition:"center",children:A||"确定"})]})})]})]}),document.body)};export{j as ResizableDrawer};
|
|
15
10
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["@flatbiz/antd/node_modules/classnames/index.js","@flatbiz/antd/src/resizable-drawer/resize-handle/index.tsx","@flatbiz/antd/src/resizable-drawer/utils.ts","@flatbiz/antd/src/resizable-drawer/drawer.tsx"],"sourcesContent":["/*!\n\tCopyright (c) 2018 Jed Watson.\n\tLicensed under the MIT License (MIT), see\n\thttp://jedwatson.github.io/classnames\n*/\n/* global define */\n\n(function () {\n\t'use strict';\n\n\tvar hasOwn = {}.hasOwnProperty;\n\n\tfunction classNames () {\n\t\tvar classes = '';\n\n\t\tfor (var i = 0; i < arguments.length; i++) {\n\t\t\tvar arg = arguments[i];\n\t\t\tif (arg) {\n\t\t\t\tclasses = appendClass(classes, parseValue(arg));\n\t\t\t}\n\t\t}\n\n\t\treturn classes;\n\t}\n\n\tfunction parseValue (arg) {\n\t\tif (typeof arg === 'string' || typeof arg === 'number') {\n\t\t\treturn arg;\n\t\t}\n\n\t\tif (typeof arg !== 'object') {\n\t\t\treturn '';\n\t\t}\n\n\t\tif (Array.isArray(arg)) {\n\t\t\treturn classNames.apply(null, arg);\n\t\t}\n\n\t\tif (arg.toString !== Object.prototype.toString && !arg.toString.toString().includes('[native code]')) {\n\t\t\treturn arg.toString();\n\t\t}\n\n\t\tvar classes = '';\n\n\t\tfor (var key in arg) {\n\t\t\tif (hasOwn.call(arg, key) && arg[key]) {\n\t\t\t\tclasses = appendClass(classes, key);\n\t\t\t}\n\t\t}\n\n\t\treturn classes;\n\t}\n\n\tfunction appendClass (value, newClass) {\n\t\tif (!newClass) {\n\t\t\treturn value;\n\t\t}\n\t\n\t\tif (value) {\n\t\t\treturn value + ' ' + newClass;\n\t\t}\n\t\n\t\treturn value + newClass;\n\t}\n\n\tif (typeof module !== 'undefined' && module.exports) {\n\t\tclassNames.default = classNames;\n\t\tmodule.exports = classNames;\n\t} else if (typeof define === 'function' && typeof define.amd === 'object' && define.amd) {\n\t\t// register as 'classnames', consistent with npm package name\n\t\tdefine('classnames', [], function () {\n\t\t\treturn classNames;\n\t\t});\n\t} else {\n\t\twindow.classNames = classNames;\n\t}\n}());\n","import { forwardRef } from 'react';\nimport './style.less';\nexport const ResizeHandle = forwardRef<HTMLDivElement>((props, ref) => {\n return <div ref={ref} {...props} className=\"resize-border\" />;\n});\n","let zIndex = 10;\n\nexport const getZindex = () => {\n zIndex++;\n return zIndex;\n};\n","import { CloseOutlined } from '@ant-design/icons';\nimport { isPromise } from '@dimjs/lang';\nimport { hooks } from '@wove/react';\nimport { Button, Space } from 'antd';\nimport classNames from 'classnames';\nimport React, { useMemo, useState, type CSSProperties, type ReactElement } from 'react';\nimport { createPortal } from 'react-dom';\nimport { Resizable } from 'react-resizable';\nimport { ButtonWrapper } from '../button-wrapper';\nimport { ResizeHandle } from './resize-handle';\nimport './style.less';\nimport { getZindex } from './utils';\n\ntype ResizableDrawerProps = {\n open?: boolean;\n onClose: () => void;\n title?: React.ReactNode;\n width?: number | string;\n children?: React.ReactNode;\n footer?: React.ReactNode | null;\n hidenFooter?: boolean;\n maskClosable?: boolean;\n mask?: boolean;\n className?: string;\n style?: React.CSSProperties;\n styles?: {\n header?: CSSProperties;\n body?: CSSProperties;\n footer?: CSSProperties;\n };\n headerExtraRender?: ReactElement;\n zIndex?: number;\n cancelText?: string;\n okText?: string;\n onOk?: (e: React.MouseEvent<HTMLElement>) => void | Promise<void>;\n};\n\nexport const ResizableDrawer: React.FC<ResizableDrawerProps> = ({\n open,\n onClose,\n title = '抽屉标题',\n width: initialWidth = 600,\n children,\n footer,\n maskClosable = true,\n className,\n style,\n mask = true,\n styles,\n headerExtraRender,\n zIndex,\n onOk,\n okText,\n cancelText,\n hidenFooter,\n}) => {\n const [width, setWidth] = useState(initialWidth);\n\n const onResize = (_, data) => {\n const { size } = data;\n setWidth(size.width);\n };\n // 遮罩层点击\n const handleMaskClick = (e: React.MouseEvent<HTMLDivElement>) => {\n e.stopPropagation();\n if (maskClosable) {\n onClose();\n }\n };\n\n // 计算宽度样式\n const widthStyle = typeof width === 'number' ? `${width}px` : width;\n\n const drawerStyle = open\n ? {\n transform: 'translateX(0)',\n opacity: 1,\n }\n : {\n transform: 'translateX(100%)',\n opacity: 0,\n };\n\n const maskOpacity = open ? 1 : 0;\n\n const zIndexInner = useMemo(() => {\n return zIndex ? zIndex : 10 + getZindex();\n }, [zIndex]);\n\n const onOkHandle = hooks.useCallbackRef((e) => {\n if (onOk) {\n const response = onOk(e);\n if (response && isPromise(response)) {\n return response.then(onClose);\n }\n }\n return onClose();\n });\n\n return createPortal(\n <div\n className={classNames('drawer-resizable', { 'drawer-resizable-visible': open }, className)}\n style={!mask ? { width: widthStyle, zIndex: zIndexInner } : { left: 0, zIndex: zIndexInner }}\n >\n {mask ? (\n <div className=\"drawer-resizable-mask\" style={{ opacity: maskOpacity }} onClick={handleMaskClick} />\n ) : null}\n\n <div\n className=\"drawer-resizable-content\"\n style={{\n width: widthStyle,\n ...drawerStyle,\n ...style,\n }}\n >\n {/* 头部 */}\n <div className=\"drawer-resizable-header\" style={styles?.header}>\n <div className=\"drawer-resizable-title\">\n <Button\n type=\"text\"\n className=\"drawer-resizable-title-close\"\n icon={<CloseOutlined />}\n onClick={(event) => {\n event.stopPropagation();\n onClose();\n }}\n ></Button>\n <div className=\"\">{title}</div>\n </div>\n {headerExtraRender ? <div className=\"drawer-resizable-title-extra\">{headerExtraRender}</div> : null}\n </div>\n\n {/* 内容区域 */}\n <div className=\"drawer-resizable-body\" style={styles?.body}>\n <Resizable\n onResize={onResize}\n width={width}\n handle={<ResizeHandle />}\n axis=\"x\"\n resizeHandles={['w']}\n minConstraints={[400, 0]}\n maxConstraints={[1200, 0]}\n style={{ height: '100%' }}\n onResizeStop={(e) => {\n e.stopPropagation();\n const iframeList = document.querySelectorAll('iframe');\n iframeList.forEach((item) => {\n item.style.pointerEvents = '';\n });\n }}\n onResizeStart={(e) => {\n e.stopPropagation();\n const iframeList = document.querySelectorAll('iframe');\n iframeList.forEach((item) => {\n item.style.pointerEvents = 'none';\n });\n }}\n >\n {children}\n </Resizable>\n </div>\n {/* 底部 */}\n {hidenFooter ? null : footer ? (\n <div className=\"drawer-footer\" style={styles?.footer}>\n {footer}\n </div>\n ) : (\n <div className=\"drawer-footer\" style={styles?.footer}>\n <Space>\n <ButtonWrapper onClick={onClose}>{cancelText || '取消'}</ButtonWrapper>\n <ButtonWrapper onClick={onOkHandle} type=\"primary\" loadingPosition=\"center\">\n {okText || '确定'}\n </ButtonWrapper>\n </Space>\n </div>\n )}\n </div>\n </div>,\n document.body,\n );\n};\n"],"names":["hasOwn","hasOwnProperty","classNames","classes","i","arguments","length","arg","appendClass","parseValue","Array","isArray","apply","toString","Object","prototype","includes","key","call","value","newClass","module","exports","default","window","ResizeHandle","forwardRef","props","ref","_jsx","_extends","className","zIndex","getZindex","ResizableDrawer","_ref","open","onClose","_ref$title","title","_ref$width","width","initialWidth","children","footer","_ref$maskClosable","maskClosable","style","_ref$mask","mask","styles","headerExtraRender","onOk","okText","cancelText","hidenFooter","_useState","useState","setWidth","onResize","_","data","size","handleMaskClick","e","stopPropagation","widthStyle","drawerStyle","transform","opacity","maskOpacity","zIndexInner","useMemo","onOkHandle","_hooks","useCallbackRef","response","_isPromise","then","createPortal","_jsxs","left","onClick","header","Button","type","icon","_CloseOutlined","event","body","Resizable","handle","axis","resizeHandles","minConstraints","maxConstraints","height","onResizeStop","iframeList","document","querySelectorAll","forEach","item","pointerEvents","onResizeStart","Space","ButtonWrapper","loadingPosition"],"mappings":"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","x_google_ignoreList":[0]}
|
|
1
|
+
{"version":3,"file":"index.js","sources":["@flatbiz/antd/src/resizable-drawer/resize-handle/index.tsx","@flatbiz/antd/src/resizable-drawer/utils.ts","@flatbiz/antd/src/resizable-drawer/drawer.tsx"],"sourcesContent":["import { forwardRef } from 'react';\nimport './style.less';\nexport const ResizeHandle = forwardRef<HTMLDivElement>((props, ref) => {\n return <div ref={ref} {...props} className=\"resize-border\" />;\n});\n","let zIndex = 10;\n\nexport const getZindex = () => {\n zIndex++;\n return zIndex;\n};\n","import { CloseOutlined } from '@ant-design/icons';\nimport { isPromise } from '@dimjs/lang';\nimport { hooks } from '@wove/react';\nimport { Button, Space } from 'antd';\nimport classNames from 'classnames';\nimport React, { useMemo, useState, type CSSProperties, type ReactElement } from 'react';\nimport { createPortal } from 'react-dom';\nimport { Resizable } from 'react-resizable';\nimport { ButtonWrapper } from '../button-wrapper';\nimport { ResizeHandle } from './resize-handle';\nimport './style.less';\nimport { getZindex } from './utils';\n\ntype ResizableDrawerProps = {\n open?: boolean;\n onClose: () => void;\n title?: React.ReactNode;\n width?: number | string;\n children?: React.ReactNode;\n footer?: React.ReactNode | null;\n hidenFooter?: boolean;\n maskClosable?: boolean;\n mask?: boolean;\n className?: string;\n style?: React.CSSProperties;\n styles?: {\n header?: CSSProperties;\n body?: CSSProperties;\n footer?: CSSProperties;\n };\n headerExtraRender?: ReactElement;\n zIndex?: number;\n cancelText?: string;\n okText?: string;\n onOk?: (e: React.MouseEvent<HTMLElement>) => void | Promise<void>;\n};\n\nexport const ResizableDrawer: React.FC<ResizableDrawerProps> = ({\n open,\n onClose,\n title = '抽屉标题',\n width: initialWidth = 600,\n children,\n footer,\n maskClosable = true,\n className,\n style,\n mask = true,\n styles,\n headerExtraRender,\n zIndex,\n onOk,\n okText,\n cancelText,\n hidenFooter,\n}) => {\n const [width, setWidth] = useState(initialWidth);\n\n const onResize = (_, data) => {\n const { size } = data;\n setWidth(size.width);\n };\n // 遮罩层点击\n const handleMaskClick = (e: React.MouseEvent<HTMLDivElement>) => {\n e.stopPropagation();\n if (maskClosable) {\n onClose();\n }\n };\n\n // 计算宽度样式\n const widthStyle = typeof width === 'number' ? `${width}px` : width;\n\n const drawerStyle = open\n ? {\n transform: 'translateX(0)',\n opacity: 1,\n }\n : {\n transform: 'translateX(100%)',\n opacity: 0,\n };\n\n const maskOpacity = open ? 1 : 0;\n\n const zIndexInner = useMemo(() => {\n return zIndex ? zIndex : 10 + getZindex();\n }, [zIndex]);\n\n const onOkHandle = hooks.useCallbackRef((e) => {\n if (onOk) {\n const response = onOk(e);\n if (response && isPromise(response)) {\n return response.then(onClose);\n }\n }\n return onClose();\n });\n\n return createPortal(\n <div\n className={classNames('drawer-resizable', { 'drawer-resizable-visible': open }, className)}\n style={!mask ? { width: widthStyle, zIndex: zIndexInner } : { left: 0, zIndex: zIndexInner }}\n >\n {mask ? (\n <div className=\"drawer-resizable-mask\" style={{ opacity: maskOpacity }} onClick={handleMaskClick} />\n ) : null}\n\n <div\n className=\"drawer-resizable-content\"\n style={{\n width: widthStyle,\n ...drawerStyle,\n ...style,\n }}\n >\n {/* 头部 */}\n <div className=\"drawer-resizable-header\" style={styles?.header}>\n <div className=\"drawer-resizable-title\">\n <Button\n type=\"text\"\n className=\"drawer-resizable-title-close\"\n icon={<CloseOutlined />}\n onClick={(event) => {\n event.stopPropagation();\n onClose();\n }}\n ></Button>\n <div className=\"\">{title}</div>\n </div>\n {headerExtraRender ? <div className=\"drawer-resizable-title-extra\">{headerExtraRender}</div> : null}\n </div>\n\n {/* 内容区域 */}\n <div className=\"drawer-resizable-body\" style={styles?.body}>\n <Resizable\n onResize={onResize}\n width={width}\n handle={<ResizeHandle />}\n axis=\"x\"\n resizeHandles={['w']}\n minConstraints={[400, 0]}\n maxConstraints={[1200, 0]}\n style={{ height: '100%' }}\n onResizeStop={(e) => {\n e.stopPropagation();\n const iframeList = document.querySelectorAll('iframe');\n iframeList.forEach((item) => {\n item.style.pointerEvents = '';\n });\n }}\n onResizeStart={(e) => {\n e.stopPropagation();\n const iframeList = document.querySelectorAll('iframe');\n iframeList.forEach((item) => {\n item.style.pointerEvents = 'none';\n });\n }}\n >\n {children}\n </Resizable>\n </div>\n {/* 底部 */}\n {hidenFooter ? null : footer ? (\n <div className=\"drawer-footer\" style={styles?.footer}>\n {footer}\n </div>\n ) : (\n <div className=\"drawer-footer\" style={styles?.footer}>\n <Space>\n <ButtonWrapper onClick={onClose}>{cancelText || '取消'}</ButtonWrapper>\n <ButtonWrapper onClick={onOkHandle} type=\"primary\" loadingPosition=\"center\">\n {okText || '确定'}\n </ButtonWrapper>\n </Space>\n </div>\n )}\n </div>\n </div>,\n document.body,\n );\n};\n"],"names":["ResizeHandle","forwardRef","props","ref","_jsx","_extends","className","zIndex","getZindex","ResizableDrawer","_ref","open","onClose","_ref$title","title","_ref$width","width","initialWidth","children","footer","_ref$maskClosable","maskClosable","style","_ref$mask","mask","styles","headerExtraRender","onOk","okText","cancelText","hidenFooter","_useState","useState","setWidth","onResize","_","data","size","handleMaskClick","e","stopPropagation","widthStyle","drawerStyle","transform","opacity","maskOpacity","zIndexInner","useMemo","onOkHandle","_hooks","useCallbackRef","response","_isPromise","then","createPortal","_jsxs","classNames","left","onClick","header","Button","type","icon","_CloseOutlined","event","body","Resizable","handle","axis","resizeHandles","minConstraints","maxConstraints","height","onResizeStop","iframeList","document","querySelectorAll","forEach","item","pointerEvents","onResizeStart","Space","ButtonWrapper","loadingPosition"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
.v-selector-item-icon{margin-right:5px}
|
|
1
|
+
.v-selector-item-icon{margin-right:5px}.v-flex-layout{display:flex}.v-flex-vertical{flex-direction:column}.icon-wrapper{align-items:center;border-radius:6px;display:inline-flex;margin:0 -6px;padding:6px}.icon-wrapper .anticon+.icon-wrapper-text{margin-left:3px}.icon-wrapper .icon-wrapper-text{display:inline-flex}.icon-wrapper-tigger{cursor:pointer}.icon-wrapper-tigger:hover{background-color:rgba(0,0,0,.06);position:relative;transform:scale(1.1);transition:all .1s ease-in}.icon-wrapper-small{border-radius:3px;font-size:14px;margin:0 -3px;padding:3px}.icon-wrapper-middle{font-size:16px}.icon-wrapper-large{font-size:20px}.icon-wrapper.icon-wrapper-hidden-hover-bgcolor{margin:0;padding:0}.icon-wrapper.icon-wrapper-hidden-hover-bgcolor:hover{background-color:transparent}.text-overflow{display:flex}.text-overflow,.tow-content{overflow:hidden;position:relative;width:100%}.tow-content{display:inline-block;text-align:inherit;text-overflow:ellipsis;white-space:nowrap}.tow-hidden{display:inline-block;height:0;left:0;overflow:hidden;position:absolute;top:0;width:0}.tow-hidden span{white-space:nowrap}.tow-hidden span,.tow-inner-text{display:inline-block}.tow-trigger .tow-content,.tow-trigger .tow-cut-content{color:#1677ff;transition:color .3s}.tow-trigger .tow-show-text{cursor:pointer}.tow-trigger .tow-show-text:hover{color:#69b1ff}.v-request-status{margin:16px 0;position:relative}.v-request-status .ant-empty{margin:8px 0}.v-request-status .ant-spin{left:50%;position:absolute;top:50%;transform:translate(-50%,-50%)}
|