@kne-components/components-core 0.4.12 → 0.4.13
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/build/asset-manifest.json +95 -95
- package/build/index.html +1 -1
- package/build/remoteEntry.js +1 -1
- package/build/remoteEntry.js.map +1 -1
- package/build/static/css/1996.b4f38679.chunk.css +2 -0
- package/build/static/css/{1996.b1436cc8.chunk.css.map → 1996.b4f38679.chunk.css.map} +1 -1
- package/build/static/css/2004.99fe0683.chunk.css +2 -0
- package/build/static/css/{2004.c035d26e.chunk.css.map → 2004.99fe0683.chunk.css.map} +1 -1
- package/build/static/css/206.05852c5d.chunk.css +2 -0
- package/build/static/css/206.05852c5d.chunk.css.map +1 -0
- package/build/static/css/254.10beca73.chunk.css +2 -0
- package/build/static/css/{254.a12729ab.chunk.css.map → 254.10beca73.chunk.css.map} +1 -1
- package/build/static/css/2628.21fc08fe.chunk.css +2 -0
- package/build/static/css/{2628.3188c686.chunk.css.map → 2628.21fc08fe.chunk.css.map} +1 -1
- package/build/static/css/3404.67a9e351.chunk.css +2 -0
- package/build/static/css/{3404.b9717d24.chunk.css.map → 3404.67a9e351.chunk.css.map} +1 -1
- package/build/static/css/3652.e8f881ae.chunk.css +2 -0
- package/build/static/css/{3652.86f3b6bb.chunk.css.map → 3652.e8f881ae.chunk.css.map} +1 -1
- package/build/static/css/3771.53c92dd6.chunk.css +2 -0
- package/build/static/css/{3771.446d3735.chunk.css.map → 3771.53c92dd6.chunk.css.map} +1 -1
- package/build/static/css/{3790.d1b530a4.chunk.css → 3790.0bd5dcca.chunk.css} +2 -2
- package/build/static/css/{3790.d1b530a4.chunk.css.map → 3790.0bd5dcca.chunk.css.map} +1 -1
- package/build/static/css/{4277.3194c080.chunk.css → 4277.1e6d3ee3.chunk.css} +2 -2
- package/build/static/css/{4277.3194c080.chunk.css.map → 4277.1e6d3ee3.chunk.css.map} +1 -1
- package/build/static/css/4741.8c1069d9.chunk.css +2 -0
- package/build/static/css/{4741.5a84abe3.chunk.css.map → 4741.8c1069d9.chunk.css.map} +1 -1
- package/build/static/css/4832.01d63eb8.chunk.css +2 -0
- package/build/static/css/4832.01d63eb8.chunk.css.map +1 -0
- package/build/static/css/5195.5df3263a.chunk.css +2 -0
- package/build/static/css/5195.5df3263a.chunk.css.map +1 -0
- package/build/static/css/6763.dd66ef2f.chunk.css +2 -0
- package/build/static/css/{6763.42d76eb7.chunk.css.map → 6763.dd66ef2f.chunk.css.map} +1 -1
- package/build/static/css/6980.5f0b0cb2.chunk.css +12 -0
- package/build/static/css/{6980.f5424a2c.chunk.css.map → 6980.5f0b0cb2.chunk.css.map} +1 -1
- package/build/static/css/7227.748fb9a1.chunk.css +2 -0
- package/build/static/css/{7227.e83fd744.chunk.css.map → 7227.748fb9a1.chunk.css.map} +1 -1
- package/build/static/css/760.aed85987.chunk.css +2 -0
- package/build/static/css/{760.7efd69c3.chunk.css.map → 760.aed85987.chunk.css.map} +1 -1
- package/build/static/css/8593.44f6d410.chunk.css +2 -0
- package/build/static/css/{8593.df922b83.chunk.css.map → 8593.44f6d410.chunk.css.map} +1 -1
- package/build/static/css/9556.e0c6c7f6.chunk.css +2 -0
- package/build/static/css/{9556.3024763d.chunk.css.map → 9556.e0c6c7f6.chunk.css.map} +1 -1
- package/build/static/css/9772.94f5f083.chunk.css +2 -0
- package/build/static/css/{9772.e21859cf.chunk.css.map → 9772.94f5f083.chunk.css.map} +1 -1
- package/build/static/js/{1014.ac7e07be.chunk.js → 1014.e5b4dfc7.chunk.js} +1 -1
- package/build/static/js/{1996.1779e813.chunk.js → 1996.3a236927.chunk.js} +2 -2
- package/build/static/js/{1996.1779e813.chunk.js.map → 1996.3a236927.chunk.js.map} +1 -1
- package/build/static/js/{2004.182c7c0f.chunk.js → 2004.f8dd7cdf.chunk.js} +3 -3
- package/build/static/js/{2004.182c7c0f.chunk.js.map → 2004.f8dd7cdf.chunk.js.map} +1 -1
- package/build/static/js/206.6d11e36b.chunk.js +2 -0
- package/build/static/js/{206.870edee0.chunk.js.map → 206.6d11e36b.chunk.js.map} +1 -1
- package/build/static/js/{2097.0567ed2b.chunk.js → 2097.cb0ebbbb.chunk.js} +2 -2
- package/build/static/js/{2097.0567ed2b.chunk.js.map → 2097.cb0ebbbb.chunk.js.map} +1 -1
- package/build/static/js/254.bb219d2f.chunk.js +2 -0
- package/build/static/js/{254.238ab8af.chunk.js.map → 254.bb219d2f.chunk.js.map} +1 -1
- package/build/static/js/{2628.13f2cd3d.chunk.js → 2628.f675039d.chunk.js} +2 -2
- package/build/static/js/{2628.13f2cd3d.chunk.js.map → 2628.f675039d.chunk.js.map} +1 -1
- package/build/static/js/{3404.1b947536.chunk.js → 3404.94f6275b.chunk.js} +3 -3
- package/build/static/js/{3404.1b947536.chunk.js.map → 3404.94f6275b.chunk.js.map} +1 -1
- package/build/static/js/{3652.5d13bc4c.chunk.js → 3652.e5a28adc.chunk.js} +2 -2
- package/build/static/js/{3652.5d13bc4c.chunk.js.map → 3652.e5a28adc.chunk.js.map} +1 -1
- package/build/static/js/{3771.60b0504e.chunk.js → 3771.998da4f9.chunk.js} +2 -2
- package/build/static/js/{3771.60b0504e.chunk.js.map → 3771.998da4f9.chunk.js.map} +1 -1
- package/build/static/js/{3790.72c7a465.chunk.js → 3790.effe004b.chunk.js} +2 -2
- package/build/static/js/{3790.72c7a465.chunk.js.map → 3790.effe004b.chunk.js.map} +1 -1
- package/build/static/js/3856.d51e240b.chunk.js +2 -0
- package/build/static/js/{3856.29d5e528.chunk.js.map → 3856.d51e240b.chunk.js.map} +1 -1
- package/build/static/js/4277.c0f74e50.chunk.js +2 -0
- package/build/static/js/{4277.de810104.chunk.js.map → 4277.c0f74e50.chunk.js.map} +1 -1
- package/build/static/js/4474.8524d82a.chunk.js +2 -0
- package/build/static/js/{4474.dfb83cf2.chunk.js.map → 4474.8524d82a.chunk.js.map} +1 -1
- package/build/static/js/4832.e478f6cf.chunk.js +2 -0
- package/build/static/js/{4832.cf55c52c.chunk.js.map → 4832.e478f6cf.chunk.js.map} +1 -1
- package/build/static/js/5195.c7f2e172.chunk.js +2 -0
- package/build/static/js/{5195.9ac8caa0.chunk.js.map → 5195.c7f2e172.chunk.js.map} +1 -1
- package/build/static/js/{6183.23d57d24.chunk.js → 6183.9f9ecead.chunk.js} +2 -2
- package/build/static/js/6183.9f9ecead.chunk.js.map +1 -0
- package/build/static/js/{6454.d8a2bc1e.chunk.js → 6454.1dea34c5.chunk.js} +1 -1
- package/build/static/js/{6617.94f51cff.chunk.js → 6617.1cb118cb.chunk.js} +1 -1
- package/build/static/js/{6763.97f4747b.chunk.js → 6763.c0930523.chunk.js} +2 -2
- package/build/static/js/{6763.97f4747b.chunk.js.map → 6763.c0930523.chunk.js.map} +1 -1
- package/build/static/js/{6980.5b98fb8f.chunk.js → 6980.eb0ca6af.chunk.js} +2 -2
- package/build/static/js/6980.eb0ca6af.chunk.js.map +1 -0
- package/build/static/js/7227.6e355494.chunk.js +3 -0
- package/build/static/js/{7227.65b21900.chunk.js.map → 7227.6e355494.chunk.js.map} +1 -1
- package/build/static/js/{7338.0c458623.chunk.js → 7338.18d781f2.chunk.js} +2 -2
- package/build/static/js/{7338.0c458623.chunk.js.map → 7338.18d781f2.chunk.js.map} +1 -1
- package/build/static/js/{760.bc8726da.chunk.js → 760.0e9d9610.chunk.js} +2 -2
- package/build/static/js/{760.bc8726da.chunk.js.map → 760.0e9d9610.chunk.js.map} +1 -1
- package/build/static/js/8593.c2266549.chunk.js +2 -0
- package/build/static/js/{8593.a7cfca38.chunk.js.map → 8593.c2266549.chunk.js.map} +1 -1
- package/build/static/js/9556.e0e3aa34.chunk.js +3 -0
- package/build/static/js/{9556.bd02b06f.chunk.js.map → 9556.e0e3aa34.chunk.js.map} +1 -1
- package/build/static/js/{9772.8953d82a.chunk.js → 9772.2e6315a6.chunk.js} +2 -2
- package/build/static/js/9772.2e6315a6.chunk.js.map +1 -0
- package/build/static/js/{main.83f21429.js → main.d69b3bad.js} +2 -2
- package/build/static/js/{main.83f21429.js.map → main.d69b3bad.js.map} +1 -1
- package/package.json +2 -2
- package/build/static/css/1996.b1436cc8.chunk.css +0 -2
- package/build/static/css/2004.c035d26e.chunk.css +0 -2
- package/build/static/css/206.c2648b4c.chunk.css +0 -2
- package/build/static/css/206.c2648b4c.chunk.css.map +0 -1
- package/build/static/css/254.a12729ab.chunk.css +0 -2
- package/build/static/css/2628.3188c686.chunk.css +0 -2
- package/build/static/css/3404.b9717d24.chunk.css +0 -2
- package/build/static/css/3652.86f3b6bb.chunk.css +0 -2
- package/build/static/css/3771.446d3735.chunk.css +0 -2
- package/build/static/css/4741.5a84abe3.chunk.css +0 -2
- package/build/static/css/4832.ee29b4d5.chunk.css +0 -2
- package/build/static/css/4832.ee29b4d5.chunk.css.map +0 -1
- package/build/static/css/5195.9d6bb120.chunk.css +0 -2
- package/build/static/css/5195.9d6bb120.chunk.css.map +0 -1
- package/build/static/css/6763.42d76eb7.chunk.css +0 -2
- package/build/static/css/6980.f5424a2c.chunk.css +0 -12
- package/build/static/css/7227.e83fd744.chunk.css +0 -2
- package/build/static/css/760.7efd69c3.chunk.css +0 -2
- package/build/static/css/8593.df922b83.chunk.css +0 -2
- package/build/static/css/9556.3024763d.chunk.css +0 -2
- package/build/static/css/9772.e21859cf.chunk.css +0 -2
- package/build/static/js/206.870edee0.chunk.js +0 -2
- package/build/static/js/254.238ab8af.chunk.js +0 -2
- package/build/static/js/3856.29d5e528.chunk.js +0 -2
- package/build/static/js/4277.de810104.chunk.js +0 -2
- package/build/static/js/4474.dfb83cf2.chunk.js +0 -2
- package/build/static/js/4832.cf55c52c.chunk.js +0 -2
- package/build/static/js/5195.9ac8caa0.chunk.js +0 -2
- package/build/static/js/6183.23d57d24.chunk.js.map +0 -1
- package/build/static/js/6980.5b98fb8f.chunk.js.map +0 -1
- package/build/static/js/7227.65b21900.chunk.js +0 -3
- package/build/static/js/8593.a7cfca38.chunk.js +0 -2
- package/build/static/js/9556.bd02b06f.chunk.js +0 -3
- package/build/static/js/9772.8953d82a.chunk.js.map +0 -1
- /package/build/static/js/{2004.182c7c0f.chunk.js.LICENSE.txt → 2004.f8dd7cdf.chunk.js.LICENSE.txt} +0 -0
- /package/build/static/js/{3404.1b947536.chunk.js.LICENSE.txt → 3404.94f6275b.chunk.js.LICENSE.txt} +0 -0
- /package/build/static/js/{7227.65b21900.chunk.js.LICENSE.txt → 7227.6e355494.chunk.js.LICENSE.txt} +0 -0
- /package/build/static/js/{9556.bd02b06f.chunk.js.LICENSE.txt → 9556.e0e3aa34.chunk.js.LICENSE.txt} +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"static/js/4474.dfb83cf2.chunk.js","mappings":"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","sources":["components/FlexBox/index.js","components/FormInfo/fields/AddressSelect.js","components/FormInfo/FormInfo.js","components/FormInfo/FormModal.js","components/FormInfo/fields/InputUpperCase/index.js","components/FormInfo/fields/ColorPicker.js","components/FormInfo/fields/Switch/index.js","components/FormInfo/fields/index.js","webpack://@kne-components/components-core/./src/components/FormInfo/SelectInnerInput/style.module.scss?b967","components/FormInfo/SelectInnerInput/context.js","components/FormInfo/SelectInnerInput/index.js","components/File/Download.js","components/File/List/index.js","components/File/index.js","webpack://@kne-components/components-core/./src/components/FileList/style.module.scss?bd2d","components/FileList/Title.js","components/FileList/locale/index.js","components/FileList/context.js","components/FileList/DragArea.js","components/FileList/FileList.js","components/FileList/FileUpload.js","webpack://@kne-components/components-core/./src/components/Tooltip/style.module.scss?c30c","components/Tooltip/Tooltip.js","components/Tooltip/TooltipInfoLabel.js","components/Tooltip/TooltipFetch.js","components/FormInfo/fields/AdvancedSelect.js","components/FormInfo/FormItem.js","components/FormInfo/fields/SuperSelect.js","components/FormInfo/FormApiButton.js","webpack://@kne-components/components-core/./src/components/FormInfo/fields/SalaryInput/style.module.scss?6af8","components/FormInfo/fields/SalaryInput/index.js","components/FormInfo/ErrorTip.js","components/FormInfo/FormLangProvider.js","components/FormInfo/HelperGuideLabel.js","webpack://@kne-components/components-core/./src/components/FormInfo/style.module.scss?d1ff","components/ConfirmButton/index.js","components/FormInfo/FormDrawer.js","components/FormInfo/locale/index.js","components/FormInfo/fields/TypeDateRangePicker.js","components/FormInfo/preset.js","components/FormInfo/computedModalCommonProps.js","components/FormInfo/fields/IndustrySelect.js","components/FormInfo/fields/FunctionSelect.js","components/FormInfo/fields/Cascader.js","components/FormInfo/fields/Text/index.js","components/FormInfo/formModule.js","components/FormInfo/Form.js","components/FormInfo/List.js","webpack://@kne-components/components-core/./src/components/FormInfo/fields/Upload/style.module.scss?391a","components/FormInfo/fields/Upload/index.js","webpack://@kne-components/components-core/./src/components/FormInfo/fields/MoneyInput/style.module.scss?25be","components/FormInfo/fields/MoneyInput/index.js","components/FormInfo/FormStepModal.js","components/FormInfo/index.js","webpack://@kne-components/components-core/./src/components/FormInfo/fields/Avatar/style.module.scss?d6b0","components/FormInfo/fields/Avatar/index.js","components/FormInfo/TableList.js","components/FormInfo/MultiField.js"],"sourcesContent":["import {FlexBoxFetch, default as FlexBox} from \"@kne/flex-box\";\n\nexport * from '@kne/flex-box';\n\nFlexBox.Fetch = FlexBoxFetch;\nexport default FlexBox;\n","import { hooks } from \"@kne/react-form-antd\";\nimport { AddressInputField, AddressSelectField } from \"@components/Common\";\n\nconst { useOnChange, useDecorator } = hooks;\nconst AddressSelect = (props) => {\n const render = useOnChange(\n Object.assign({}, { placeholder: \"请选择\" + props.label }, props)\n );\n return render(AddressSelectField);\n};\n\nAddressSelect.Field = AddressSelectField;\nAddressSelect.AddressEnum = AddressSelectField.AddressEnum;\nAddressSelect.createAddressApi = AddressSelectField.createAddressApi;\nAddressSelect.withAddressApi = AddressSelectField.withAddressApi;\n\nexport default AddressSelect;\n\nexport const AddressInput = (props) => {\n const render = useDecorator(\n Object.assign(\n {},\n {\n placeholder: \"请选择\" + props.label,\n inputPlaceholder: \"请输入\" + props.label,\n },\n props\n )\n );\n return render(AddressInputField);\n};\n\nAddressInput.Field = AddressInputField;\n","import {Row, Col} from \"antd\";\nimport {cloneElement} from \"react\";\nimport InfoPage from \"@components/InfoPage\";\nimport {useFlexBox} from \"@components/FlexBox\";\nimport {FormInfo as FormInfoBase} from '@kne/react-form-plus';\nimport style from \"./style.module.scss\";\nimport classnames from \"classnames\";\n\nconst FormInfo = ({\n list = [],\n groupArgs,\n itemRender,\n column = 2,\n gap,\n className,\n outer = <InfoPage.Part/>,\n children: renderChildren,\n ...props\n }) => {\n const isFlexBox = !(Number.isInteger(column) && column > 0);\n const {ref: flexBoxRef, column: flexBoxColumn} = useFlexBox(isFlexBox ? column : {});\n\n const renderInner = (column, notLayout) => {\n return <FormInfoBase list={list} column={column} groupArgs={groupArgs} itemRender={(children, props) => {\n return typeof itemRender === 'function' ? itemRender(children, props) :\n <Col span={props.span}>{children}</Col>;\n }}>{(children, props) => {\n return <Row\n gutter={[gap || 24, 0]}\n className={classnames({\n [style[\"column-not-layout\"]]: notLayout,\n })}\n >{typeof renderChildren === 'function' ? renderChildren(children, props) : children}</Row>\n }}</FormInfoBase>;\n };\n\n const renderColumn = () => {\n if (!isFlexBox) {\n return renderInner(column);\n }\n if (flexBoxColumn) {\n return renderInner(flexBoxColumn.col);\n }\n\n return renderInner(2, true);\n };\n\n return cloneElement(outer, Object.assign({}, props, {\n className: classnames(className, style[\"form-info\"]),\n }), <>\n <div ref={flexBoxRef}/>\n {renderColumn()}\n </>);\n};\n\nexport default FormInfo;\n","import Modal, { useModal } from \"@components/Modal\";\nimport FetchButton from \"@common/components/FetchButton\";\nimport { Button } from \"antd\";\nimport computedCommonProps from \"./computedModalCommonProps\";\nimport style from \"./style.module.scss\";\n\nconst FormModal = (props) => {\n return (\n <Modal\n {...computedCommonProps(\n Object.assign({}, props, { className: style[\"form-modal\"] })\n )}\n />\n );\n};\n\nexport default FormModal;\n\nexport const useFormModal = () => {\n const modal = useModal();\n return (props) =>\n modal(\n computedCommonProps(\n Object.assign({}, props, { className: style[\"form-modal\"] })\n )\n );\n};\n\nexport const FormModalButton = ({ classNames, ...props }) => {\n const formModal = useFormModal();\n if (!props.api) {\n const { modalProps, ...others } = props;\n return (\n <Button\n {...others}\n onClick={() => {\n formModal(modalProps);\n }}\n />\n );\n }\n return <FetchButton {...props} modalFunc={formModal} />;\n};\n","import { Input } from \"antd\";\nimport useControlValue from \"@kne/use-control-value\";\nimport { createWithRemoteLoader } from \"@kne/remote-loader\";\n\nconst InputUpperCaseField = ({ ...props }) => {\n const [value, onChange] = useControlValue(props);\n\n return (\n <Input\n {...props}\n value={value}\n onChange={(e) => {\n onChange(\n e.target.value ? e.target.value.toUpperCase() : e.target.value,\n e\n );\n }}\n />\n );\n};\n\nconst InputUpperCase = createWithRemoteLoader({\n modules: [\"FormInfo@formModule\"],\n})(({ remoteModules, ...props }) => {\n const [formModule] = remoteModules;\n const { hooks } = formModule;\n const { useDecorator } = hooks;\n const render = useDecorator(\n Object.assign({ placeholder: `请输入${props.label || \"\"}` }, props)\n );\n return render(InputUpperCaseField);\n});\n\nInputUpperCase.field = InputUpperCaseField;\n\nexport default InputUpperCase;\n","import {hooks} from \"@kne/react-form-antd\";\nimport {ColorPicker as ColorPickerFieldAntd} from 'antd';\n\nconst {useOnChange} = hooks;\n\nconst ColorPickerField = (props) => {\n return <ColorPickerFieldAntd {...props} onChange={(value) => {\n return props.onChange(value.toHexString());\n }}/>;\n};\n\nconst ColorPicker = (props) => {\n const render = useOnChange(Object.assign({}, props));\n return render(ColorPickerField);\n};\n\nColorPicker.Field = ColorPicker;\nexport default ColorPicker;\n","import { Switch as AntdSwitch, Space } from \"antd\";\nimport { hooks, hoc } from \"@kne/react-form-antd\";\n\nconst { useOnChange, useCheckedToValue } = hooks;\nconst { withChecked } = hoc;\nconst WithSwitch = withChecked(({ checked, children = null, ...props }) => {\n return (\n <Space>\n <AntdSwitch checked={checked} {...props} />\n {typeof children === \"function\" ? children({ checked }) : children}\n </Space>\n );\n});\n\nconst Switch = (props) => {\n props = Object.assign(\n {},\n {\n fieldName: \"switch\",\n },\n props\n );\n const checkedProps = useCheckedToValue(props);\n const render = useOnChange(checkedProps);\n return render(WithSwitch);\n};\n\nSwitch.Field = AntdSwitch;\n\nexport default Switch;\n","import {\n DatePicker as ReactDatePicker,\n DatePickerToday as ReactDatePickerToday,\n Input as ReactInput,\n InputNumber as ReactInputNumber,\n Select as ReactSelect,\n TextArea as ReactTextArea,\n TimePicker as ReactTimePicker,\n TreeSelect as ReactTreeSelect,\n RadioGroup,\n Checkbox,\n CheckboxGroup,\n Rate,\n Slider,\n} from \"@kne/react-form-antd\";\nimport AdvancedSelectField from \"./AdvancedSelect\";\nimport SuperSelectField, {\n SuperSelectTableList as SuperSelectTableListField, SuperSelectUser as SuperSelectUserField,\n} from \"./SuperSelect\";\nimport AddressSelect, {AddressInput} from \"./AddressSelect\";\nimport Cascader from \"./Cascader\";\nimport ColorPicker from './ColorPicker';\nimport FunctionSelect from \"./FunctionSelect\";\nimport IndustrySelect from \"./IndustrySelect\";\nimport MoneyInput from \"./MoneyInput\";\nimport PhoneNumber from \"./PhoneNumber\";\nimport Switch from \"./Switch\";\nimport Upload from \"./Upload\";\nimport Avatar from \"./Avatar\";\nimport SalaryInput from \"./SalaryInput\";\nimport InputUpperCaseField from \"./InputUpperCase\";\nimport compose from \"@kne/compose\";\nimport {forwardRef} from \"react\";\nimport {FormattedMessage, useIntl} from \"@components/Intl\";\nimport {useGroup} from \"@kne/react-form-antd\";\nimport get from \"lodash/get\";\nimport {get as _get} from \"lodash\";\nimport {useFormLang} from \"@components/FormInfo/FormLangProvider\";\nimport TypeDateRangePicker from \"./TypeDateRangePicker\";\nimport Tooltip from \"@components/Tooltip\";\nimport Icon from \"@components/Icon\";\nimport {Space} from \"antd\";\nimport classnames from \"classnames\";\nimport style from \"../style.module.scss\";\n\nconst createWithFieldDecorator = (decoratorList) => (WrappedComponent) => {\n const TargetComponent = compose(...decoratorList)(({forwardedRef, label, placeholder, ...props}) => {\n return (<WrappedComponent\n {...props}\n label={label}\n placeholder={placeholder}\n labelRender={() => props.tips ? (<Space>\n {label}\n <Tooltip content={props.tips}>\n <span\n className={classnames(style[\"field-tips\"], {\n [style[\"label-hidden\"]]: props.labelHidden,\n })}\n >\n <Icon type=\"icon-xinxi-miaobian\"/>\n </span>\n </Tooltip>\n </Space>) : (label)}\n ref={forwardedRef}\n />)\n });\n const ForwardComponent = forwardRef((props, ref) => {\n return <TargetComponent {...props} forwardedRef={ref}/>;\n });\n Object.keys(WrappedComponent)\n .filter((key) => {\n return [\"$$typeof\", \"render\", \"field\"].indexOf(key) === -1;\n })\n .forEach((key) => {\n ForwardComponent[key] = WrappedComponent[key];\n });\n\n return ForwardComponent;\n};\n\nconst withInputDefaultPlaceholder = (WrappedComponent) => {\n return ({placeholder, label, ...props}) => (<FormattedMessage\n id=\"defaultInputPlaceholder\"\n moduleName=\"FormInfo\"\n values={{label}}\n >\n {(text) => (<WrappedComponent\n {...props}\n label={label}\n placeholder={placeholder || text}\n />)}\n </FormattedMessage>);\n};\n\nconst withSelectDefaultPlaceholder = (WrappedComponent) => {\n return ({placeholder, label, ...props}) => (<FormattedMessage\n id=\"defaultSelectPlaceholder\"\n moduleName=\"FormInfo\"\n values={{label}}\n >\n {(text) => (<WrappedComponent\n {...props}\n label={label}\n placeholder={placeholder || text}\n />)}\n </FormattedMessage>);\n};\n\nconst withLang = (WrappedComponent) => {\n return (props) => {\n const group = useGroup();\n const groupName = get(group, \"name\");\n const groupIndex = _get(group, \"index\");\n const lang = useFormLang();\n if (lang && Array.isArray(lang) && lang.length > 0) {\n return lang.map((item) => {\n if (typeof item === \"string\") {\n return <WrappedComponent {...props} key={item}/>;\n }\n const {name, label, options} = item;\n const ignoreList = get(options, \"ignore\", []), disabledList = get(options, \"disabled\", []),\n fields = get(options, \"fields\", []);\n const getCurrentField = (item) => props.name === item.name && !(item.hasOwnProperty(\"groupName\") && item.groupName !== groupName) && !(item.hasOwnProperty(\"groupIndex\") && item.groupIndex !== groupIndex);\n\n if (ignoreList.length > 0 && ignoreList.find(getCurrentField)) {\n return null;\n }\n\n if (fields.length > 0 && !fields.find(getCurrentField)) {\n return null;\n }\n\n let newProps = Object.assign({}, props, {\n name: get(options, \"nameTransform\", (name, langName) => `${name}${langName}`)(props.name, name),\n label: get(options, \"labelTransform\", (label, langLabel) => label && `${label}${langLabel}`)(props.label, label),\n });\n\n if (disabledList.length > 0 && disabledList.find(getCurrentField)) {\n newProps.disabled = true;\n newProps.rule = \"\";\n }\n return <WrappedComponent {...newProps} key={name}/>;\n });\n }\n\n return <WrappedComponent {...props} />;\n };\n};\n\nconst Input = createWithFieldDecorator([withLang, withInputDefaultPlaceholder])(ReactInput);\n\nconst InputNumber = createWithFieldDecorator([withLang, withInputDefaultPlaceholder,])(ReactInputNumber);\nInput.Password = createWithFieldDecorator([withLang, withInputDefaultPlaceholder,])(ReactInput.Password);\n\nconst DatePicker = createWithFieldDecorator([withLang, withSelectDefaultPlaceholder,])(ReactDatePicker);\nDatePicker.MonthPicker = createWithFieldDecorator([withLang, withSelectDefaultPlaceholder,])(ReactDatePicker.MonthPicker);\n\nDatePicker.RangePicker = createWithFieldDecorator([withLang, withSelectDefaultPlaceholder,])(ReactDatePicker.RangePicker);\n\nDatePicker.WeekPicker = createWithFieldDecorator([withLang, withSelectDefaultPlaceholder,])(ReactDatePicker.WeekPicker);\n\nconst TimePicker = createWithFieldDecorator([withLang, withSelectDefaultPlaceholder,])(ReactTimePicker);\n\nTimePicker.RangePicker = createWithFieldDecorator([withLang, withSelectDefaultPlaceholder,])(ReactTimePicker.RangePicker);\n\nconst DatePickerToday = createWithFieldDecorator([withLang])(({placeholder, label, soFarText, ...props}) => {\n const {formatMessage} = useIntl({moduleName: \"FormInfo\"});\n return (<ReactDatePickerToday\n {...props}\n label={label}\n placeholder={[formatMessage({id: \"startDate\"}), formatMessage({id: \"endDate\"}),]}\n soFarText={soFarText || formatMessage({id: \"soFarText\"})}\n />);\n});\n\nconst fields = {\n Input,\n Checkbox,\n Password: Input.Password,\n InputNumber,\n DatePicker,\n MonthPicker: DatePicker.MonthPicker,\n WeekPicker: DatePicker.WeekPicker,\n DateRangePicker: DatePicker.RangePicker,\n TimeRangePicker: TimePicker.RangePicker,\n TimePicker,\n DatePickerToday,\n RadioGroup: createWithFieldDecorator([withLang])(RadioGroup),\n CheckboxGroup: createWithFieldDecorator([withLang])(CheckboxGroup),\n Rate: createWithFieldDecorator([withLang])(Rate),\n Switch: createWithFieldDecorator([withLang])(Switch),\n Slider: createWithFieldDecorator([withLang])(Slider),\n SalaryInput: createWithFieldDecorator([withLang, withInputDefaultPlaceholder])(SalaryInput),\n TypeDateRangePicker: createWithFieldDecorator([withLang])(TypeDateRangePicker),\n MoneyInput: createWithFieldDecorator([withLang, withInputDefaultPlaceholder])(MoneyInput),\n PhoneNumber: createWithFieldDecorator([withLang, withInputDefaultPlaceholder])(PhoneNumber),\n Upload: createWithFieldDecorator([withLang])(Upload),\n Avatar: createWithFieldDecorator([withLang])(Avatar),\n FunctionSelect: createWithFieldDecorator([withLang, withSelectDefaultPlaceholder,])(FunctionSelect),\n IndustrySelect: createWithFieldDecorator([withLang, withSelectDefaultPlaceholder,])(IndustrySelect),\n Cascader: createWithFieldDecorator([withLang, withSelectDefaultPlaceholder])(Cascader),\n ColorPicker: createWithFieldDecorator([withLang, withSelectDefaultPlaceholder])(ColorPicker),\n AddressSelect: createWithFieldDecorator([withLang, withSelectDefaultPlaceholder,])(AddressSelect),\n AddressInput: createWithFieldDecorator([withLang, withSelectDefaultPlaceholder,])(AddressInput),\n TreeSelect: createWithFieldDecorator([withLang, withSelectDefaultPlaceholder,])(ReactTreeSelect),\n ReactInputNumber: createWithFieldDecorator([withLang, withInputDefaultPlaceholder,])(ReactInputNumber),\n InputUpperCase: createWithFieldDecorator([withLang, withInputDefaultPlaceholder,])(InputUpperCaseField),\n Select: createWithFieldDecorator([withLang, withSelectDefaultPlaceholder])(ReactSelect),\n TextArea: createWithFieldDecorator([withLang, withInputDefaultPlaceholder])(ReactTextArea),\n AdvancedSelect: createWithFieldDecorator([withLang, withSelectDefaultPlaceholder,])(AdvancedSelectField),\n SuperSelect: createWithFieldDecorator([withLang, withSelectDefaultPlaceholder,])(SuperSelectField),\n SuperSelectTableList: createWithFieldDecorator([withLang, withSelectDefaultPlaceholder,])(SuperSelectTableListField),\n SuperSelectUser: createWithFieldDecorator([withLang, withSelectDefaultPlaceholder,])(SuperSelectUserField),\n};\n\nexport default fields;\n\nexport const fieldDecorator = {\n createWithFieldDecorator, withInputDefaultPlaceholder, withSelectDefaultPlaceholder, withLang,\n};\n","// extracted by mini-css-extract-plugin\nexport default {\"ant-tag\":\"style_ant-tag__7ct2q__RltKb\",\"overlay\":\"style_overlay__CXfU5__RltKb\",\"input\":\"style_input__+OpvV__RltKb\",\"is-disabled\":\"style_is-disabled__uX4qq__RltKb\",\"input-icon\":\"style_input-icon__E3NjK__RltKb\",\"large\":\"style_large__vMozz__RltKb\",\"small\":\"style_small__ubqQ+__RltKb\",\"input-inner\":\"style_input-inner__sY-6k__RltKb\",\"input-custom\":\"style_input-custom__Kxq3n__RltKb\",\"display-content\":\"style_display-content__qA1jn__RltKb\",\"overlay-footer-extra\":\"style_overlay-footer-extra__yCzWX__RltKb\",\"selected-tag\":\"style_selected-tag__BZsMM__RltKb\",\"selected-tag-list\":\"style_selected-tag-list__As0ho__RltKb\",\"selected-tag-inner\":\"style_selected-tag-inner__2NH59__RltKb\",\"text-inner\":\"style_text-inner__Bq2Ji__RltKb\",\"placeholder\":\"style_placeholder__odotY__RltKb\",\"is-modal\":\"style_is-modal__4cj8L__RltKb\",\"overlay-content\":\"style_overlay-content__kpGRn__RltKb\"};","import createContext from \"@common/utils/createContext\";\n\nexport const { context, useContext, Provider, Consumer } = createContext();\n\nexport default context;\n","import style from \"./style.module.scss\";\nimport { Provider, useContext } from \"./context\";\nimport {\n forwardRef,\n useEffect,\n useImperativeHandle,\n useRef,\n useState,\n} from \"react\";\nimport useControlValue from \"@kne/use-control-value\";\nimport { withFetch } from \"@kne/react-fetch\";\nimport get from \"lodash/get\";\nimport { App, Popover, Space, Tag } from \"antd\";\nimport classnames from \"classnames\";\nimport Modal from \"@components/Modal\";\nimport Icon from \"@components/Icon\";\nimport isNil from \"lodash/isNil\";\nimport clone from \"lodash/clone\";\nimport last from \"lodash/last\";\nimport SimpleBar from \"@common/components/SimpleBar\";\n\nconst createValueWithMaxLength =\n ({ maxLength, single, setValue, value, message }) =>\n (newValue) =>\n setValue(\n (() => {\n if (\n !single &&\n Number.isInteger(maxLength) &&\n maxLength > 0 &&\n newValue.length > maxLength\n ) {\n message(`最多选择${maxLength}个`);\n return value;\n }\n return newValue;\n })()\n );\n\nconst renderDisplayLabel = ({ single, value, mapping, onClose }) => {\n if (!value || !Array.isArray(value) || value.length === 0) {\n return null;\n }\n\n if (single) {\n return (\n <span className={style[\"text-inner\"]}>\n {get(mapping.get(value[0]), \"label\") || value[0]}\n </span>\n );\n }\n\n return value.map((item) => {\n const mappingItem = mapping.get(item);\n return (\n <Tag\n key={item}\n className={style[\"display-tag\"]}\n closable\n onClose={(e) => {\n e.preventDefault();\n onClose(item, mappingItem);\n }}\n >\n <span className={style[\"tag-inner\"]}>\n {get(mappingItem, \"label\") || item}\n </span>\n </Tag>\n );\n });\n};\n\nconst ModalContent = forwardRef(\n (\n {\n value: propsValue,\n onChange,\n extra,\n showSelectedTag,\n renderSelectedContent,\n children,\n ...props\n },\n ref\n ) => {\n const [value, setValue] = useState(propsValue);\n const propsValueRef = useRef(propsValue);\n propsValueRef.current = propsValue;\n const [modalOpen, setModalOpen] = useState(false);\n const { message } = App.useApp();\n const setValueWithMaxLength = createValueWithMaxLength({\n maxLength: props.maxLength,\n single: props.single,\n setValue,\n value,\n message: message.error,\n });\n useEffect(() => {\n if (modalOpen) {\n setValue(propsValueRef.current);\n }\n }, [modalOpen]);\n useImperativeHandle(ref, () => {\n return {\n modalOpen: () => {\n setModalOpen(true);\n },\n close: () => {\n setModalOpen(false);\n },\n };\n });\n return (\n <Modal\n {...props}\n open={modalOpen}\n onConfirm={() => {\n onChange(value);\n }}\n onClose={() => {\n setModalOpen(false);\n }}\n footer={\n (showSelectedTag || extra) && (\n <Space direction=\"vertical\" className={style[\"overlay-footer\"]}>\n {extra && (\n <div className={style[\"overlay-footer-extra\"]}>{extra}</div>\n )}\n {showSelectedTag &&\n renderSelectedContent({\n value,\n setValue: setValueWithMaxLength,\n })}\n </Space>\n )\n }\n >\n {typeof children === \"function\"\n ? children({ value, setValue: setValueWithMaxLength })\n : children}\n </Modal>\n );\n }\n);\n\nconst PopupContent = forwardRef(\n (\n {\n value,\n setValue,\n children,\n renderSelectedContent,\n showSelectedTag,\n placement,\n inputContent,\n single,\n extra,\n overlayWidth,\n wrapClassName,\n ...props\n },\n ref\n ) => {\n const [open, setOpen] = useState(false);\n useImperativeHandle(\n ref,\n () => {\n return {\n close: () => {\n setOpen(false);\n },\n };\n },\n []\n );\n return (\n <Popover\n {...props}\n open={open}\n onOpenChange={setOpen}\n overlayClassName={style[\"overlay\"]}\n arrow={false}\n content={\n <div\n style={overlayWidth ? { \"--overlay-width\": overlayWidth } : {}}\n className={style[\"overlay-content\"]}\n onClick={(e) => {\n e.stopPropagation();\n }}\n >\n <div className={style[\"overlay-inner\"]}>\n {typeof children === \"function\"\n ? children({\n value,\n setValue: (newValue) => {\n !(single && value[0] === newValue[0]) &&\n setValue(newValue);\n single && setOpen(false);\n },\n })\n : children}\n </div>\n {(showSelectedTag || extra) && (\n <div className={style[\"overlay-footer\"]}>\n {extra && (\n <div className={style[\"overlay-footer-extra\"]}>{extra}</div>\n )}\n {showSelectedTag && renderSelectedContent({ value, setValue })}\n </div>\n )}\n </div>\n }\n trigger=\"click\"\n placement={placement}\n >\n <div className={style[\"input-inner\"]}>{inputContent}</div>\n </Popover>\n );\n }\n);\n\nconst DisplayLabel = withFetch(\n ({ setFetchApi, wrapClassName, ...fetchApi }) => {\n const [hover, setHover] = useState(false);\n const modalRef = useRef(null);\n const popupRef = useRef(null);\n const selectInnerContext = useContext();\n const { valueState, mapping, props } = selectInnerContext;\n const [value, setValue] = valueState;\n const {\n single,\n placement,\n getPopupContainer,\n placeholder,\n isPopup,\n disabled,\n showSelectedTag,\n extra,\n inputContent: inputContentRender,\n } = props;\n const fetchApiRef = useRef(fetchApi);\n fetchApiRef.current = fetchApi;\n\n useEffect(() => {\n setFetchApi(\n Object.assign({}, fetchApiRef.current, {\n data: fetchApi.data,\n isComplete: fetchApi.isComplete,\n })\n );\n }, [fetchApi.data, setFetchApi, fetchApi.isComplete]);\n\n const inner = renderDisplayLabel({\n single,\n value,\n mapping,\n onClose: (item) => {\n setValue((value) => {\n const newValue = value.slice(0);\n const index = value.indexOf(item);\n index > -1 && newValue.splice(index, 1);\n return newValue;\n });\n },\n });\n\n const renderSelectedContent = ({ value, setValue }) => (\n <Space className={style[\"selected-tag\"]} align={\"center\"} wrap>\n <div>\n 已选\n {!props.single &&\n Number.isInteger(props.maxLength) &&\n props.maxLength > 0\n ? `(${value.length}/${props.maxLength})`\n : \"\"}\n :\n </div>\n <SimpleBar className={style[\"selected-tag-list\"]}>\n <div className={style[\"selected-tag-inner\"]}>\n {renderDisplayLabel({\n value,\n mapping,\n onClose: (item) => {\n setValue((value) => {\n const newValue = value.slice(0);\n const index = value.indexOf(item);\n index > -1 && newValue.splice(index, 1);\n return newValue;\n });\n },\n })}\n </div>\n </SimpleBar>\n </Space>\n );\n\n const inputContent = inputContentRender ? (\n inputContentRender(selectInnerContext)\n ) : (\n <Space\n className={style[\"display-content\"]}\n onMouseOver={() => {\n setHover(true);\n }}\n onMouseOut={() => {\n setHover(false);\n }}\n >\n <div>\n {inner || <span className={style[\"placeholder\"]}>{placeholder}</span>}\n </div>\n {hover && value && value.length > 0 && !disabled ? (\n <Icon\n className={classnames(\n style[\"close\"],\n style[\"input-icon\"],\n \"close\",\n \"input-icon\"\n )}\n type=\"icon-shibai\"\n onClick={(e) => {\n e.stopPropagation();\n setValue([]);\n }}\n />\n ) : (\n <Icon\n className={classnames(\n style[\"input-icon\"],\n \"input-icon-arrow\",\n \"input-icon\"\n )}\n type=\"icon-arrow-thin-down\"\n />\n )}\n </Space>\n );\n\n if (isPopup) {\n return (\n <PopupContent\n ref={popupRef}\n overlayWidth={props.overlayWidth}\n value={value}\n setValue={setValue}\n single={single}\n inputContent={inputContent}\n extra={\n typeof extra === \"function\"\n ? extra({\n close: () => popupRef.current.close(),\n context: selectInnerContext,\n })\n : extra\n }\n renderSelectedContent={renderSelectedContent}\n showSelectedTag={showSelectedTag}\n trigger=\"click\"\n placement={placement}\n getPopupContainer={getPopupContainer}\n >\n {props.children}\n </PopupContent>\n );\n }\n\n return (\n <div\n className={style[\"input-inner\"]}\n onClick={() => {\n modalRef.current.modalOpen();\n }}\n >\n <ModalContent\n size={props.modalSize}\n ref={modalRef}\n single={props.single}\n maxLength={props.maxLength}\n disabledScroller\n wrapClassName={classnames(\n style[\"overlay\"],\n style[\"is-modal\"],\n wrapClassName\n )}\n title={props.placeholder}\n value={value}\n onChange={setValue}\n extra={\n typeof extra === \"function\"\n ? extra({\n close: () => modalRef.current.close(),\n context: selectInnerContext,\n })\n : extra\n }\n showSelectedTag={showSelectedTag}\n renderSelectedContent={renderSelectedContent}\n >\n {props.children}\n </ModalContent>\n {inputContent}\n </div>\n );\n }\n);\n\nconst getValueInType = (value, mapping, type) => {\n if (type !== \"all\") {\n return value;\n }\n return value.map((item) => mapping.get(item));\n};\n\nconst setValueInType = (value, setMapping, type) => {\n if (type !== \"all\") {\n return value;\n }\n setMapping(value);\n return value.map((item) => item.value);\n};\n\nconst SelectInnerInput = ({\n api,\n className,\n displayItems,\n wrapClassName,\n ...props\n}) => {\n const [searchText, setSearchText] = useState(\"\");\n const [mapping, setMapping] = useState(\n new Map(displayItems.map((item) => [item.value, item]))\n );\n const [fetchApi, setFetchApi] = useState({});\n const { message } = App.useApp();\n const appendMapping = (items) => {\n const newItems = items.filter((item) => mapping.get(item.value) !== item);\n if (newItems.length === 0) {\n return;\n }\n\n setMapping((mapping) => {\n const newMapping = clone(mapping);\n newItems.forEach((item) => {\n newMapping.set(item.value, item);\n });\n return newMapping;\n });\n };\n\n const transformValue = (value) => {\n return setValueInType(\n props.single ? (isNil(value) ? [] : [value]) : value || [],\n appendMapping,\n props.valueType\n );\n };\n\n const [value, setValue] = useControlValue(\n Object.assign(\n {},\n props,\n {\n onChange: (value) => {\n const newValue = getValueInType(value, mapping, props.valueType);\n props.onChange &&\n props.onChange(props.single ? last(newValue) : newValue);\n },\n },\n \"value\" in props\n ? { value: transformValue(props.value) }\n : { defaultValue: transformValue(props.defaultValue) }\n )\n );\n\n const setValueWithMaxLength = createValueWithMaxLength({\n maxLength: props.maxLength,\n single: props.single,\n setValue,\n value,\n message: message.error,\n });\n\n return (\n <Provider\n value={{\n mapping,\n searchText,\n setSearchText,\n appendMapping,\n setItems: (data) => {\n fetchApi.setData(data);\n appendMapping(get(props.dataFormat(data), \"list\", []));\n },\n fetchApi,\n valueState: [value, setValueWithMaxLength],\n props,\n }}\n >\n <div\n className={classnames(\n style[\n `input${\n props.inputContent && typeof props.inputContent === \"function\"\n ? \"-custom\"\n : \"\"\n }`\n ],\n className\n )}\n >\n <DisplayLabel\n {...api}\n wrapClassName={wrapClassName}\n loading={null}\n setFetchApi={setFetchApi}\n onRequestSuccess={(data) => {\n appendMapping(get(props.dataFormat(data), \"list\", []));\n api.onRequestSuccess && api.onRequestSuccess(data);\n }}\n />\n </div>\n </Provider>\n );\n};\n\nSelectInnerInput.defaultProps = {\n placeholder: \"请选择\",\n displayItems: [],\n extra: null,\n api: {\n loader: () => [],\n },\n dataFormat: (data) => {\n return { list: data };\n },\n placement: \"bottomLeft\",\n getPopupContainer: null,\n showSelectedTag: true,\n};\n\nSelectInnerInput.useContext = useContext;\n\nexport default SelectInnerInput;\n","import { Download, useDownload, downloadBlobFile } from \"@kne/react-file\";\n\nDownload.useDownload = useDownload;\nDownload.downloadBlobFile = downloadBlobFile;\n\nexport default Download;\nexport { useDownload, downloadBlobFile };\n","import {FileList, FileListOptionButtons} from \"@kne/react-file\";\nimport dropRight from \"lodash/dropRight\";\nimport last from \"lodash/last\";\nimport FormInfo, {Input, useFormModal} from \"@components/FormInfo\";\nimport Modal from \"@components/Modal\";\n\nconst useEdit = ({apis}) => {\n const formModal = useFormModal();\n return typeof apis?.onEditModalShow === 'function' ? apis.onEditModalShow : (item, apis) => {\n const modalApi = formModal({\n size: \"small\",\n title: \"修改文件名称\",\n formProps: {\n data: {\n name: dropRight(item.filename.split(\".\")).join(\".\"),\n },\n onSubmit: async (data) => {\n const res =\n apis?.onEdit &&\n (await apis?.onEdit({\n formData: Object.assign({}, data, {\n name: `${data.name}.${last(item.filename.split(\".\"))}`,\n }),\n item,\n }));\n if (res !== false) {\n modalApi.close();\n }\n },\n },\n children: (\n <FormInfo\n column={1}\n list={[<Input name=\"name\" label={\"文件名称\"} rule=\"REQ LEN-0-100\"/>]}\n />\n ),\n });\n };\n};\n\nconst List = ({apis, ...p}) => {\n const handlerEdit = useEdit({apis});\n return (\n <FileList\n {...p}\n apis={apis}\n onEdit={(item) => handlerEdit(item, apis)}\n onDelete={apis?.onDelete}\n renderModal={typeof p.renderModal === 'function' ? p.renderModal : ({onCancel, ...modalProps}) => {\n return <Modal {...Object.assign({}, modalProps)} onClose={onCancel}/>;\n }}\n />\n );\n};\n\nconst OptionButtons = (props) => {\n const handlerEdit = useEdit({apis: props.apis});\n return (\n <FileListOptionButtons\n {...props}\n onEdit={(item) => handlerEdit(item, props.apis)}\n onDelete={props.apis?.onDelete}\n renderModal={typeof props.renderModal === 'function' ? props.renderModal : ({onCancel, ...modalProps}) => {\n return <Modal {...Object.assign({}, modalProps)} onClose={onCancel}/>;\n }}\n />\n );\n};\n\nexport default List;\n\nexport {OptionButtons};\n","import \"@kne/react-file/dist/index.css\";\nimport useRefCallback from \"@kne/use-ref-callback\";\nimport {\n FileButton as FileButtonBase, useFileModalProps, download\n} from \"@kne/react-file\";\nimport Modal, {useModal} from \"@components/Modal\";\nimport classnames from \"classnames\";\n\nexport const FileButton = (p) => {\n return (<FileButtonBase\n {...Object.assign({}, p, {\n modalProps: {\n renderModal: ({onCancel, ...modalProps}) => {\n return (<Modal {...Object.assign({}, modalProps)} onClose={onCancel}/>);\n },\n },\n })}\n />);\n};\n\nexport const FileLink = (p) => {\n const {className, ...props} = Object.assign({}, p);\n return (<FileButton\n {...props}\n className={classnames(className, \"btn-no-padding\")}\n type=\"link\"\n >\n {props.children || props.filename || props.originName}\n </FileButton>);\n};\n\nexport const useFileModal = (p) => {\n const {title, children, footer} = useFileModalProps(Object.assign({}, p));\n const modal = useModal();\n return useRefCallback(() => {\n return modal({\n title, children, footer,\n });\n });\n};\n\nexport {download};\nexport {default as Download, downloadBlobFile, useDownload} from \"./Download\";\nexport {default as List, OptionButtons} from \"./List\";\nexport {default, PrintButton} from \"./File\";","// extracted by mini-css-extract-plugin\nexport default {\"file-list-outer\":\"style_file-list-outer__wPhbb__RltKb\",\"file-list-title\":\"style_file-list-title__zXM5r__RltKb\",\"container\":\"style_container__P4RaF__RltKb\",\"file-preview-inner\":\"style_file-preview-inner__cvE72__RltKb\",\"file-preview\":\"style_file-preview__M-Asq__RltKb\",\"drag-area\":\"style_drag-area__Q+lm7__RltKb\",\"upload-drag-close\":\"style_upload-drag-close__u5o8W__RltKb\",\"upload-drag-tips\":\"style_upload-drag-tips__z7puZ__RltKb\",\"upload-drag-icon\":\"style_upload-drag-icon__sGGoS__RltKb\",\"upload-drag-title\":\"style_upload-drag-title__9Afmb__RltKb\",\"upload-drag-text\":\"style_upload-drag-text__o38vS__RltKb\",\"list-item-outer\":\"style_list-item-outer__qfopH__RltKb\",\"list-item\":\"style_list-item__QUzqW__RltKb\",\"split\":\"style_split__8HVlD__RltKb\",\"loading\":\"style_loading__OSlYB__RltKb\",\"list-options\":\"style_list-options__4l3QJ__RltKb\",\"list-time\":\"style_list-time__canbk__RltKb\",\"title-group\":\"style_title-group__8IJkS__RltKb\",\"upload-btn\":\"style_upload-btn__Q+Jxn__RltKb\",\"total-count\":\"style_total-count__z1fyd__RltKb\",\"file-select\":\"style_file-select__mHqyI__RltKb\",\"file-name\":\"style_file-name__QkvMn__RltKb\",\"file-select-info\":\"style_file-select-info__fOLiM__RltKb\",\"file-select-option\":\"style_file-select-option__AbDrD__RltKb\"};","import style from \"./style.module.scss\";\nimport {Col, Row, Segmented, Select, Space, Typography} from \"antd\";\nimport FileType from \"@kne/react-file-type\";\nimport last from \"lodash/last\";\nimport dayjs from \"dayjs\";\nimport Icon from \"@components/Icon\";\nimport {OptionButtons} from \"@components/File\";\nimport {FormattedMessage} from \"@components/Intl\";\nimport classnames from 'classnames';\n\nconst Title = ({\n currentTab,\n setCurrentTab,\n previewMap,\n previewList,\n getPermission,\n currentPreviewFileId,\n setCurrentPreviewFileId,\n itemApis,\n children,\n maxWidth = 260,\n getPopupContainer,\n }) => {\n return (<div className={style[\"file-list-title\"]}>\n <Row align=\"middle\" justify=\"space-between\" wrap={false}>\n <Col>\n <Space className={classnames(style[\"title-group\"], 'core-file-list-title-group')} size={4}>\n <Segmented\n value={currentTab}\n onChange={setCurrentTab}\n options={[{\n label: (<Space size={4}>\n <Icon type=\"icon-shitu-liebiao\"/>\n <FormattedMessage id=\"listText\" moduleName=\"FileList\"/>\n </Space>), value: \"list\",\n }, {\n label: (<Space size={4}>\n <Icon type=\"icon-shitu-yulan\"/>\n <FormattedMessage\n id=\"previewText\"\n moduleName=\"FileList\"\n />\n </Space>), value: \"preview\",\n },]}\n />\n {currentTab === \"preview\" && currentPreviewFileId && previewMap.get(currentPreviewFileId) && (<>\n <Select\n className={style[\"file-select\"]}\n variant=\"borderless\"\n popupMatchSelectWidth={false}\n value={currentPreviewFileId}\n onChange={setCurrentPreviewFileId}\n getPopupContainer={getPopupContainer}\n >\n {previewList.map(({filename, userName, date, id}) => {\n return (<Select.Option\n className={style[\"file-select-option\"]}\n key={id}\n value={id}\n >\n <Space direction=\"vertical\">\n <Space size={4} align=\"start\">\n <FileType\n type={last(filename.split(\".\"))}\n size={14}\n ></FileType>\n <Typography.Text\n className={style[\"file-name\"]}\n ellipsis\n style={{\"--max-width\": `${maxWidth}px`}}\n >\n {filename}\n </Typography.Text>\n </Space>\n {userName || date ? (<Space\n className={style[\"file-select-info\"]}\n size={24}\n >\n <div>\n <FormattedMessage\n id=\"uploadUser\"\n moduleName=\"FileList\"\n />\n :{userName}\n </div>\n <div>\n <FormattedMessage\n id=\"uploadTime\"\n moduleName=\"FileList\"\n />\n :\n {date && dayjs(date).format(\"YYYY-MM-DD HH:mm:ss\")}\n </div>\n </Space>) : null}\n </Space>\n </Select.Option>);\n })}\n </Select>\n <OptionButtons\n hasPreview={false}\n getPermission={getPermission}\n item={previewMap.get(currentPreviewFileId)}\n apis={itemApis}\n />\n <div className={style[\"total-count\"]}>\n <FormattedMessage\n id=\"totalCount\"\n values={{count: previewList.length}}\n moduleName=\"FileList\"\n />\n </div>\n </>)}\n </Space>\n </Col>\n <Col>{children}</Col>\n </Row>\n </div>);\n};\n\nexport default Title;\n","const importMessages = (locale) => {\n return {\n \"en-US\": () => import(\"./en-US\"),\n \"zh-CN\": () => import(\"./zh-CN\"),\n }[locale]();\n};\n\nexport default importMessages;\n","import { createContext, useContext as useReactContext } from \"react\";\n\nconst context = createContext({});\nexport const { Provider } = context;\n\nexport const useContext = () => {\n return useReactContext(context);\n};\n\nexport default context;\n","import style from \"./style.module.scss\";\nimport {useRef, useState} from \"react\";\nimport {Button, Space, Typography} from \"antd\";\nimport importMessages from \"./locale\";\nimport useOutside from \"@kne/use-click-outside\";\nimport classnames from \"classnames\";\nimport {Provider, useContext} from \"./context\";\nimport Icon from \"@components/Icon\";\nimport {FormattedMessage, useIntl, IntlProvider} from \"@components/Intl\";\nimport {FileInput} from \"@kne/react-file\";\nimport acceptFunc from \"@common/utils/accept\";\n\nexport const DragButton = ({children}) => {\n const {onOpenChange, getDragButtonEl} = useContext();\n return (<div\n ref={getDragButtonEl}\n className={style[\"upload-btn\"]}\n onClick={() => {\n onOpenChange((open) => !open);\n }}\n >\n <Typography.Text className=\"ant-btn\">\n <Icon type=\"icon-tuozhuaishangchuan\"/>\n {children || <FormattedMessage id=\"dragText\" moduleName=\"FileList\"/>}\n </Typography.Text>\n </div>);\n};\n\nexport const UploadButton = ({children}) => {\n const {accept, onFileSelected} = useContext();\n return (<FileInput\n className={classnames(style[\"upload-btn\"], \"btn-no-padding\")}\n accept={accept}\n multiple\n onChange={onFileSelected}\n >\n {({children: input, ...props}) => {\n return (<Button {...props} type=\"text\">\n <Icon type=\"icon-tianjia\"/>\n {children}\n {input}\n </Button>);\n }}\n </FileInput>);\n};\nexport const DragAreaOuter = ({\n title,\n accept = [\".png\", \".jpg\", \".pdf\", \".docx\", \".doc\"],\n fileSize = 20,\n maxLength,\n onFileSelected,\n children,\n className,\n defaultOpen = false\n }) => {\n const [open, onOpenChange] = useState(defaultOpen);\n const dragButtonRef = useRef(null);\n const dragOuterRef = useOutside((e) => {\n if (!dragButtonRef.current) {\n return;\n }\n if (dragButtonRef.current.contains(e.target) || e.target === dragButtonRef.current) {\n return;\n }\n onOpenChange(false);\n });\n return (<IntlProvider importMessages={importMessages} moduleName=\"FileList\">\n <Provider\n value={{\n open, onOpenChange, accept, fileSize, maxLength, onFileSelected, getDragButtonEl: (el) => {\n dragButtonRef.current = el;\n },\n }}\n >\n <Space className={style[\"file-list-outer\"]} direction=\"vertical\">\n {title}\n <div\n className={classnames(style[\"container\"], className)}\n ref={dragOuterRef}\n onDragEnter={() => {\n onOpenChange(true);\n }}\n >\n {children}\n </div>\n </Space>\n </Provider>\n </IntlProvider>);\n};\n\nexport const UploadTips = ({\n icon, title, renderTips = (defaultTips) => {\n return defaultTips;\n }\n }) => {\n const {accept, fileSize, maxLength} = useContext();\n const intl = useIntl({moduleName: \"FileList\"});\n const tipsText = renderTips(intl.formatMessage({id: \"dragTips\"}, {\n accept: accept.map((str) => str.replace(/^\\./, \"\")).join(\"、\"), size: fileSize,\n }), {\n fileSize, maxLength, accept,\n });\n\n return (<div className={classnames(style[\"upload-drag-tips\"], \"upload-drag-tips\")}>\n <div className={style[\"upload-drag-icon\"]}>\n {icon || <Icon type=\"icon-shangchuan\" size={64}/>}\n </div>\n <div className={style[\"upload-drag-title\"]}>\n {title || <FormattedMessage id=\"dragTitle\" moduleName=\"FileList\"/>}\n </div>\n <div className={style[\"upload-drag-text\"]}>{tipsText}</div>\n </div>);\n};\n\nconst DragArea = ({children = <UploadTips/>, className}) => {\n const {open, accept, onOpenChange, onFileSelected} = useContext();\n if (!open) {\n return null;\n }\n return (<div\n className={classnames(style[\"drag-area\"], className)}\n onDragOver={(e) => {\n e.stopPropagation();\n e.preventDefault();\n e.dataTransfer.dropEffect = \"copy\";\n }}\n onDrop={(e) => {\n e.stopPropagation();\n e.preventDefault();\n if (e.dataTransfer.files.length === 0) {\n return;\n }\n onOpenChange(false);\n const fileList = Array.from(e.dataTransfer.files).filter((file) => {\n return acceptFunc(file, accept);\n });\n onFileSelected(fileList);\n }}\n onDragEnd={() => {\n onOpenChange(false);\n }}\n >\n <Button\n className={style[\"upload-drag-close\"]}\n type=\"text\"\n shape=\"circle\"\n size=\"small\"\n icon={<Icon type=\"icon-close-bold\"/>}\n onClick={() => {\n onOpenChange(false);\n }}\n />\n {children}\n </div>);\n};\n\nexport default DragArea;\n","import {useState, useMemo, useEffect} from \"react\";\nimport get from \"lodash/get\";\nimport {App, Space, Divider, Empty} from \"antd\";\nimport Title from \"./Title\";\nimport DragArea, {DragAreaOuter, DragButton, UploadButton} from \"./DragArea\";\nimport {List} from \"@components/File\";\nimport FilePreview from \"@components/FilePreview\";\nimport {useIntl, IntlProvider} from \"@components/Intl\";\nimport {useFileUpload} from \"@kne/react-file\";\nimport {usePreset} from \"@components/Global\";\nimport importMessages from \"./locale\";\nimport style from \"./style.module.scss\";\n\nconst FileListInner = ({\n className,\n maxLength = Number.MAX_VALUE,\n list: _previewList,\n setList,\n infoItemRenders,\n defaultTab = \"list\",\n defaultPreviewFileId,\n apis: currentApis,\n getPermission = () => true,\n titleExtra = null,\n fileSize = 20,\n accept = [\".png\", \".jpg\", \".pdf\", \".docx\", \".doc\"],\n getPopupContainer,\n }) => {\n const {apis: baseApis} = usePreset();\n const apis = Object.assign({}, baseApis, currentApis);\n\n const previewList = (_previewList || []).map((item) => {\n return Object.assign({}, {id: item.ossId}, item);\n });\n\n const {fileList: uploadingList, onFileSelected} = useFileUpload({\n maxLength, multiple: true, value: previewList, onChange: setList, concurrentCount: 1, onAdd: () => {\n setCurrentTab(\"list\");\n }, onSave: async (response, ...args) => {\n if (typeof apis.onSave === \"function\") {\n const res = await apis.onSave(response, ...args);\n return Object.assign({}, {id: res?.ossId}, res);\n }\n return get(response, 'data') || {};\n }, onUpload: apis.onUpload || apis.ossUpload,\n });\n const [currentTab, setCurrentTab] = useState(defaultTab);\n const {formatMessage} = useIntl({moduleName: \"FileList\"});\n const {message} = App.useApp();\n const previewMap = useMemo(() => {\n return new Map(previewList.map((item) => {\n return [item.id, item];\n }));\n }, [previewList]);\n const [currentPreviewFileId, setCurrentPreviewFileId] = useState(defaultPreviewFileId || get(previewList, \"[0].id\", null));\n useEffect(() => {\n if (currentPreviewFileId && previewMap.get(currentPreviewFileId)) {\n return;\n }\n setCurrentPreviewFileId(get(previewList, \"[0].id\", null));\n }, [previewList, previewMap, currentPreviewFileId]);\n const itemApis = {\n ...apis, onPreview: (item) => {\n setCurrentPreviewFileId(item.id);\n setCurrentTab(\"preview\");\n }, onDelete: async (item) => {\n if (apis.onDelete && (await apis.onDelete(item)) === false) {\n return;\n }\n setList((list) => {\n const newList = list.slice(0);\n const index = list.findIndex(({id}) => id === item.id);\n index > -1 && newList.splice(index, 1);\n return newList;\n });\n message.success(formatMessage({id: \"successDelete\"}, {name: item.filename}));\n }, onEdit: async ({formData, item}) => {\n const res = apis.onEdit && (await apis.onEdit({formData, item}));\n if (res !== false) {\n setList((list) => {\n const newList = list.slice(0);\n const index = list.findIndex(({id}) => id === item.id);\n index > -1 && newList.splice(index, 1, Object.assign({}, item, {filename: formData.name}));\n return newList;\n });\n message.success(formatMessage({id: \"successEditFileName\"}, {name: item.filename}));\n }\n\n return res;\n },\n };\n\n const titleExtraInner = typeof titleExtra === \"function\" ? titleExtra({\n currentPreviewFileId, currentTab,\n }) : titleExtra;\n\n return (<div className={className}>\n <DragAreaOuter\n title={<Title\n currentTab={currentTab}\n setCurrentTab={setCurrentTab}\n previewMap={previewMap}\n previewList={previewList}\n getPermission={getPermission}\n currentPreviewFileId={currentPreviewFileId}\n setCurrentPreviewFileId={setCurrentPreviewFileId}\n itemApis={itemApis}\n getPopupContainer={getPopupContainer}\n >\n <Space split={<Divider type=\"vertical\"/>}>\n {titleExtraInner}\n {getPermission(\"add\", {}) ? (<>\n <DragButton>\n {formatMessage({id: 'dragText'})}\n </DragButton>\n <UploadButton>\n {formatMessage({id: 'uploadFile'})}\n </UploadButton>\n </>) : null}\n </Space>\n </Title>}\n fileSize={fileSize}\n maxLength={maxLength}\n onFileSelected={onFileSelected}\n accept={accept}\n defaultOpen={previewList.length === 0}\n >\n {currentTab === \"list\" ? (<List\n dataSource={[...previewList, ...uploadingList]}\n getPermission={getPermission}\n apis={itemApis}\n infoItemRenders={infoItemRenders}\n />) : null}\n {currentTab === \"preview\" ? (currentPreviewFileId ? (<div className={style[\"file-preview-inner\"]}>\n <FilePreview\n className={style[\"file-preview\"]}\n src={previewMap.get(currentPreviewFileId)?.src}\n id={currentPreviewFileId}\n apis={apis}\n filename={previewMap.get(currentPreviewFileId)?.filename}\n />\n </div>) : (<Empty\n image={Empty.PRESENTED_IMAGE_SIMPLE}\n className=\"ant-empty-normal\"\n />)) : null}\n <DragArea/>\n </DragAreaOuter>\n </div>);\n};\n\nconst FileList = (props) => {\n return (<IntlProvider importMessages={importMessages} moduleName=\"FileList\">\n <FileListInner {...props} />\n </IntlProvider>);\n};\n\nexport default FileList;\n","import {Space, Divider, Row, Col} from \"antd\";\nimport DragArea, {DragAreaOuter, DragButton, UploadButton} from \"./DragArea\";\nimport {List} from \"@components/File\";\nimport {useFileUpload} from \"@kne/react-file\";\nimport {usePreset} from \"@components/Global\";\nimport useControlValue from \"@kne/use-control-value\";\nimport get from \"lodash/get\";\n\nconst FileUpload = ({\n maxLength = Number.MAX_VALUE,\n apis: currentApis,\n getPermission = () => true,\n fileSize = 20,\n accept = [\".png\", \".jpg\", \".pdf\", \".docx\", \".doc\"],\n defaultList = [],\n ...props\n }) => {\n const {apis: baseApis} = usePreset();\n const apis = Object.assign({}, baseApis, currentApis);\n const [previewList, setList] = useControlValue({defaultList, ...props}, {\n defaultValue: \"defaultList\",\n value: \"list\",\n onChange: \"setList\",\n });\n const {fileList: uploadingList, onFileSelected} = useFileUpload({\n maxLength,\n multiple: true,\n value: previewList,\n onChange: setList,\n concurrentCount: 1,\n onSave: async (response, ...args) => {\n if (typeof apis.onSave === \"function\") {\n const res = await apis.onSave(response, ...args);\n return Object.assign({}, {id: res?.ossId}, res);\n }\n return get(response, 'data') || {};\n },\n onUpload: apis.ossUpload,\n });\n return (\n <DragAreaOuter\n title={\n <Row>\n <Col flex={1}></Col>\n <Col>\n <Space split={<Divider type=\"vertical\"/>}>\n <DragButton/>\n <UploadButton>上传</UploadButton>\n </Space>\n </Col>\n </Row>\n }\n fileSize={fileSize}\n maxLength={maxLength}\n onFileSelected={onFileSelected}\n accept={accept}\n >\n <List\n dataSource={[...uploadingList, ...previewList]}\n getPermission={getPermission}\n apis={apis}\n />\n <DragArea/>\n </DragAreaOuter>\n );\n};\n\nexport default FileUpload;\n","// extracted by mini-css-extract-plugin\nexport default {\"tooltip\":\"style_tooltip__zHGMI__RltKb\",\"large\":\"style_large__lvmsm__RltKb\",\"small\":\"style_small__nUt0r__RltKb\",\"popup-content\":\"style_popup-content__-rKQN__RltKb\",\"title\":\"style_title__1EQPq__RltKb\",\"important-info\":\"style_important-info__qTSZY__RltKb\",\"error\":\"style_error__yTTq3__RltKb\",\"warning\":\"style_warning__CMJxz__RltKb\",\"success\":\"style_success__AvJVx__RltKb\",\"sub-title\":\"style_sub-title__uD8CH__RltKb\",\"content\":\"style_content__lzgUz__RltKb\",\"alone\":\"style_alone__q6q82__RltKb\",\"fetch-content\":\"style_fetch-content__tEOEV__RltKb\",\"fetch-loading\":\"style_fetch-loading__tN-WB__RltKb\",\"title-info-icon\":\"style_title-info-icon__iY8Q+__RltKb\"};","import { Space, Tooltip as AntdTooltip } from \"antd\";\nimport classnames from \"classnames\";\nimport style from \"./style.module.scss\";\n\nconst Tooltip = ({\n overlayClassName,\n title,\n size,\n subtitle,\n content,\n importantInfo,\n importantInfoType,\n moreInfo,\n ...props\n}) => {\n return (\n <AntdTooltip\n {...props}\n rootClassName={classnames(overlayClassName, style[\"tooltip\"], {\n [style[\"small\"]]: size === \"small\",\n [style[\"large\"]]: size === \"large\",\n })}\n title={\n <Space direction=\"vertical\" className={style[\"popup-content\"]}>\n {title && <div className={style[\"title\"]}>{title}</div>}\n {importantInfo && (\n <div\n className={classnames(style[\"important-info\"], {\n [style[\"success\"]]: importantInfoType === \"success\",\n [style[\"warning\"]]: importantInfoType === \"warning\",\n [style[\"error\"]]: importantInfoType === \"error\",\n })}\n >\n {importantInfo}\n </div>\n )}\n {subtitle && <div className={style[\"sub-title\"]}>{subtitle}</div>}\n {content && (\n <div\n className={classnames(style[\"content\"], {\n [style[\"alone\"]]: [\n title,\n subtitle,\n importantInfo,\n moreInfo,\n ].every((item) => !item),\n })}\n >\n {content}\n </div>\n )}\n {moreInfo && <div>{moreInfo}</div>}\n </Space>\n }\n />\n );\n};\n\nexport default Tooltip;\n","import style from \"./style.module.scss\";\nimport Tooltip from \"./Tooltip\";\nimport Icon from \"@components/Icon\";\n\nconst TooltipInfoLabel = ({ title, tooltipTitle }) => {\n return (\n <div>\n {title}\n {tooltipTitle ? (\n <Tooltip {...tooltipTitle}>\n <span>\n <Icon\n type=\"icon-xinxi-miaobian\"\n className={style[\"title-info-icon\"]}\n size={14}\n />\n </span>\n </Tooltip>\n ) : null}\n </div>\n );\n};\n\nexport default TooltipInfoLabel;\n","import {useState} from \"react\";\nimport {useFetch} from \"@kne/react-fetch\";\nimport {Spin} from \"antd\";\nimport style from \"./style.module.scss\";\nimport Tooltip from \"./Tooltip\";\nimport classnames from \"classnames\";\n\nconst TooltipFetch = ({\n api, children, fetchContent, showLoading = true, loadingClassName, force, ...props\n }) => {\n const [open, setOpen] = useState(false);\n const fetchApi = useFetch(Object.assign({}, api, {auto: false}));\n const {isComplete, isLoading, data, send} = fetchApi;\n return (<Tooltip\n {...Object.assign({}, props, isComplete ? fetchContent(data, fetchApi) : {})}\n open={open}\n onOpenChange={async (open) => {\n if (open && (!isComplete || force)) {\n await send({type: \"refresh\"});\n }\n setOpen(open);\n }}\n >\n <span className={style[\"fetch-content\"]}>\n {children}\n {showLoading && isLoading ? (<Spin\n size=\"small\"\n className={classnames(loadingClassName, style[\"fetch-loading\"])}\n />) : null}\n </span>\n </Tooltip>);\n};\n\nexport default TooltipFetch;\n","import { hooks } from \"@kne/react-form-antd\";\nimport {\n AdvancedSelectField,\n createListField,\n TableField,\n UserField,\n} from \"@components/Common\";\n\nconst { useOnChange } = hooks;\n\nconst createdField = (WrappedComponent) => {\n const List = (props) => {\n const render = useOnChange(\n Object.assign({}, { placeholder: \"请选择\" + props.label }, props)\n );\n return render(WrappedComponent);\n };\n\n List.field = List.Field = WrappedComponent;\n\n return List;\n};\n\nexport const createdList = ({ renderList, defaultProps }) =>\n createdField(\n createListField({\n renderList,\n defaultProps,\n })\n );\n\nexport const User = createdField(UserField);\nexport const Table = createdField(TableField);\n\nconst AdvancedSelect = createdField(AdvancedSelectField);\nAdvancedSelect.createdList = createdList;\nAdvancedSelect.User = User;\nAdvancedSelect.Table = Table;\nexport default AdvancedSelect;\n","import { useFormContext } from \"@kne/react-form-antd\";\n\nconst FormItem = ({ children }) => {\n const { openApi, formData } = useFormContext();\n return children({ ...openApi, formData });\n};\n\nexport default FormItem;\n","import { hooks } from \"@kne/react-form-antd\";\nimport {\n SuperSelectField,\n SuperSelectTableListField,\n} from \"@components/Common\";\nimport { SuperSelectUserField } from \"../../../common/components/SuperSelectField\";\n\nconst { useOnChange } = hooks;\n\nconst createdField = (WrappedComponent) => {\n const List = (props) => {\n const render = useOnChange(\n Object.assign({}, { placeholder: \"请选择\" + props.label }, props)\n );\n return render(WrappedComponent);\n };\n\n List.field = List.Field = WrappedComponent;\n\n return List;\n};\nconst SuperSelect = createdField(SuperSelectField);\nexport const SuperSelectUser = createdField(SuperSelectUserField);\nexport const SuperSelectTableList = createdField(SuperSelectTableListField);\nexport default SuperSelect;\n","import { useFormContext } from \"@kne/react-form-antd\";\nimport LoadingButton from \"@components/LoadingButton\";\n\nconst FormApiButton = ({ onClick, ...props }) => {\n const context = useFormContext();\n return (\n <LoadingButton\n {...props}\n onClick={(e) => {\n return onClick(context, e);\n }}\n />\n );\n};\n\nexport default FormApiButton;\n","// extracted by mini-css-extract-plugin\nexport default {\"salary\":\"style_salary__sUOtT__RltKb\",\"salary-type\":\"style_salary-type__Sl1LC__RltKb\",\"input-number\":\"style_input-number__eoEZr__RltKb\",\"full\":\"style_full__NPqJm__RltKb\",\"input-group\":\"style_input-group__toLB7__RltKb\",\"input-group-no-mb\":\"style_input-group-no-mb__C4nzh__RltKb\"};","import React, {cloneElement} from \"react\";\nimport {withFetch} from \"@kne/react-fetch\";\nimport {hooks} from \"@kne/react-form-antd\";\nimport useSimulationBlur from \"@kne/use-simulation-blur\";\nimport {Col, Input, InputNumber, Row, Select} from \"antd\";\nimport style from \"./style.module.scss\";\nimport {IntlProvider, useIntl} from \"@components/Intl\";\nimport importMessages from \"../../locale\";\nimport Enum from \"@components/Enum\";\nimport useControlValue from \"@kne/use-control-value\";\nimport {get} from \"lodash\";\n\nconst SelectField = withFetch(({data, ...props}) => {\n return <Select {...props} options={data}/>;\n});\n\nconst {useDecorator, useUIDecorator} = hooks;\n\nexport const InputNumberField = (props) => {\n const render = useUIDecorator(props);\n return render(InputNumber);\n};\nconst numberFormat = (value) => {\n if (!value) return \"\";\n const _value = isNaN(Number(value)) ? value : Math.abs(Number(value));\n return value.split(\".\")[1] && value.split(\".\")[1].length > 2 ? _value.toFixed(2) : _value;\n};\n\nconst FormField = ({children, isError}) => {\n return (<div\n style={{marginBottom: 0}}\n className={`react-form__field ${isError ? \"is-error\" : \"\"}`}\n >\n <div className=\"react-form__field-main\">\n <div className=\"react-form__field-input\">\n {cloneElement(children, {className: \"react-form__field-component\"})}\n </div>\n </div>\n </div>);\n};\n\nconst SalaryInputField = ({\n getPopupContainer,\n onBlur,\n api,\n isRange = true,\n placeholder,\n disabled,\n showMonth,\n remindUnit,\n req,\n ...props\n }) => {\n const [value, onChange] = useControlValue(props);\n const {formatMessage} = useIntl({moduleName: \"FormInfo\"});\n const _placeholder = formatMessage({id: \"defaultSelectPlaceholder\"}, {label: \"\"});\n const _placeholderInput = formatMessage({id: \"defaultInputPlaceholder\"}, {label: \"\"});\n\n const isTenThousand = [6].indexOf(get(value, \"type\")) > -1, isFace = get(value, \"type\") === 1,\n isOther = get(value, \"type\") === 7;\n\n const transform = (value) => {\n if (!value) {\n return;\n }\n return isTenThousand ? value / 10000 : value;\n };\n\n const ref = useSimulationBlur(onBlur ? onBlur : () => {\n });\n\n return (<div ref={ref} className={style[\"salary\"]}>\n <Row wrap={false} gutter={10}>\n <Col>\n <SelectField\n className={style[\"salary-type\"]}\n {...api}\n value={get(value, \"type\")}\n onChange={(type) => {\n onChange && onChange(Object.assign({}, isFace ? {} : value, {\n type, min: \"\", max: \"\",\n }));\n }}\n placeholder={placeholder || _placeholder}\n getPopupContainer={getPopupContainer}\n disabled={disabled}\n />\n </Col>\n {isFace ? null : (<Col flex={1}>\n {isRange && (<Row\n className={remindUnit && [5, 6].includes(value?.type) ? style[\"input-group\"] : style[\"input-group-no-mb\"]}\n wrap={false}\n >\n <Col flex={1}>\n <FormField isError={!get(value, \"min\") && req}>\n <InputNumber\n disabled={disabled}\n placeholder={_placeholderInput}\n formatter={numberFormat}\n value={transform(get(value, \"min\"))}\n style={{\n textAlign: \"center\",\n }}\n onChange={(min) => {\n onChange(Object.assign({}, value, {\n min: isTenThousand ? min * 10000 : min,\n }));\n }}\n // status={'warning'}\n description={remindUnit && [5, 6].includes(value?.type) ? (\n <span style={{color: \"#fc3333\"}}>\n 注意:\n <Enum\n name={value?.type}\n moduleName=\"salaryTypeEnum\"\n />\n 的单位为\n {isTenThousand ? formatMessage({id: \"thousand\"}) : isOther ? \"\" : formatMessage({id: \"yuan\"})}\n </span>) : null}\n />\n </FormField>\n </Col>\n <Col>\n <Input\n style={{\n width: 30, borderLeft: 0, borderRight: 0, pointerEvents: \"none\",\n }}\n placeholder=\"~\"\n disabled\n />\n </Col>\n <Col flex={1}>\n <FormField isError={!get(value, \"max\") && req}>\n <InputNumber\n disabled={disabled}\n placeholder={_placeholderInput}\n formatter={numberFormat}\n value={transform(get(value, \"max\"))}\n style={{\n textAlign: \"center\",\n }}\n addonAfter={isTenThousand ? formatMessage({id: \"thousand\"}) : isOther ? \"\" : formatMessage({id: \"yuan\"})}\n onChange={(max) => {\n onChange(Object.assign({}, value, {\n max: isTenThousand ? max * 10000 : max,\n }));\n }}\n />\n </FormField>\n </Col>\n {get(value, \"type\") === 5 && showMonth && (<Col>\n <span\n className={get(value, \"max\") && get(value, \"min\") && !get(value, \"month\") && req ? \"error\" : \"\"}\n >\n <span className={style[\"input-number\"]}>X</span>\n <InputNumber\n min={12}\n disabled={disabled}\n value={get(value, \"month\")}\n onChange={(v) => {\n onChange(Object.assign({}, value, {month: v}));\n }}\n style={{\n width: 100, textAlign: \"center\",\n }}\n placeholder=\"数量\"\n addonAfter=\"月\"\n />\n </span>\n </Col>)}\n </Row>)}\n {!isRange && !isOther && (<InputNumber\n disabled={disabled}\n min={0}\n max={100000000}\n placeholder={_placeholderInput}\n className={style.full}\n formatter={numberFormat}\n value={transform(get(value, \"max\"))}\n style={{\n textAlign: \"center\",\n }}\n addonAfter={isTenThousand ? formatMessage({id: \"thousand\"}) : isOther ? \"\" : formatMessage({id: \"yuan\"})}\n onChange={(max) => {\n onChange(Object.assign({}, value, {\n max: isTenThousand ? max * 10000 : max,\n }));\n }}\n />)}\n {!isRange && isOther && (<Input\n disabled={disabled}\n placeholder={_placeholderInput}\n className={style.full}\n onChange={(e) => {\n onChange(Object.assign({}, value, {max: e.target.value}));\n }}\n value={get(value, \"max\")}\n style={{\n textAlign: \"center\",\n }}\n />)}\n </Col>)}\n </Row>\n </div>);\n};\n\nconst defaultPropsApi = {\n loader: () => {\n return [{\n value: 1, label: \"面议\",\n }, {\n value: 2, label: \"时薪\",\n }, {\n value: 3, label: \"日薪\",\n }, {\n value: 4, label: \"周薪\",\n }, {\n value: 5, label: \"月薪\",\n }, {\n value: 6, label: \"年薪\",\n },];\n },\n};\n\nconst defaultPropsValue = {\n type: 5, min: \"\", max: \"\", month: 12,\n};\n\nconst SalaryField = ({api = defaultPropsApi, defaultValue = defaultPropsValue, ...props}) => {\n return (<IntlProvider moduleName=\"FormInfo\" importMessages={importMessages}>\n <SalaryInputField {...props} api={api} defaultValue={defaultValue}/>\n </IntlProvider>);\n};\n\nconst SalaryInput = (props) => {\n const render = useDecorator({\n ...props, req: props?.rule?.indexOf(\"REQ\") > -1,\n });\n return render(SalaryField);\n};\n\nSalaryInput.Field = SalaryField;\n\nexport default SalaryInput;\n","import {useFormContext, util} from \"@kne/react-form-antd\";\nimport {Popover} from \"antd\";\nimport {useLayoutEffect, useState, useRef, useEffect} from \"react\";\nimport classnames from \"classnames\";\nimport useClickOutside from \"@kne/use-click-outside\";\nimport style from \"./style.module.scss\";\n\nconst useErrorMsg = ({name, groupName, groupIndex}) => {\n const {emitter, formState} = useFormContext();\n const targetFieldInfo = useRef({name, groupName, groupIndex});\n targetFieldInfo.current = {name, groupName, groupIndex};\n const formStateRef = useRef(formState);\n formStateRef.current = formState;\n const [currentError, setCurrentError] = useState(null);\n useEffect(() => {\n const target = emitter.addListener(\n \"form-field-validate-complete\",\n ({id, validate}) => {\n const field = formStateRef.current[id];\n if (!field) {\n return;\n }\n const currentField = targetFieldInfo.current;\n if (\n field.name === currentField.name &&\n (!currentField.groupName ||\n (field.groupName === currentField.groupName &&\n field.groupIndex === currentField.groupIndex))\n ) {\n setCurrentError(\n validate.status === 2\n ? Object.assign({}, validate, {\n label: field.label,\n errMsg: util.compileErrMsg(validate.msg, field.label),\n })\n : null\n );\n }\n }\n );\n return () => {\n target && target.remove();\n };\n }, [emitter]);\n return currentError;\n};\n\nconst ErrorTip = ({\n name,\n groupName,\n overlayClassName,\n errorRender = () => {\n return null;\n },\n groupIndex,\n children,\n }) => {\n const currentError = useErrorMsg({name, groupName, groupIndex});\n const [isHover, setIsHover] = useState(false);\n const open = currentError && isHover;\n const errorContent =\n open &&\n errorRender(\n Object.assign({}, currentError, {closeHover: () => setIsHover(false)})\n );\n const popoverChildrenRef = useRef(null),\n popoverContentRef = useRef(null);\n\n const outerRef = useClickOutside(() => {\n setIsHover(false);\n });\n outerRef.current = {\n contains: (target) => {\n return (\n popoverChildrenRef.current.contains(target) ||\n (popoverContentRef.current &&\n popoverContentRef.current.contains(target))\n );\n },\n };\n const [width, setWidth] = useState(0);\n useLayoutEffect(() => {\n const callback = () => {\n const target = popoverChildrenRef.current.querySelector(\n \".react-form__field-component\"\n );\n target && setWidth(target.clientWidth);\n };\n callback();\n const resizeObserver = new ResizeObserver(callback);\n resizeObserver.observe(popoverChildrenRef.current);\n const mutationObserver = new MutationObserver(callback);\n mutationObserver.observe(popoverChildrenRef.current, {\n subtree: true,\n childList: true,\n });\n return () => {\n mutationObserver.disconnect();\n resizeObserver.disconnect();\n };\n }, []);\n return (\n <Popover\n open={!!errorContent}\n rootClassName={classnames(\n overlayClassName,\n style[\"error-tip-overlay\"]\n )}\n content={\n errorContent && (\n <div\n ref={popoverContentRef}\n style={{width}}\n className={classnames(style[\"error-tip-overlay-content\"])}\n >\n {errorContent}\n </div>\n )\n }\n placement=\"bottom\"\n transitionName={\"ant-slide-up\"}\n arrow={false}\n >\n <div\n className={classnames(\"error-tip\")}\n ref={popoverChildrenRef}\n onMouseEnter={() => {\n setIsHover(true);\n }}\n >\n {children}\n </div>\n </Popover>\n );\n};\n\nexport default ErrorTip;\n","import { createContext, useContext } from \"react\";\n\nconst context = createContext([]);\n\nexport const { Provider, Consumer } = context;\n\nexport const useFormLang = () => {\n return useContext(context);\n};\n\nexport default Provider;\n","import HelperGuide from \"@components/HelperGuide\";\nimport { createContext, useContext as useReactContext } from \"react\";\nimport { useGroup } from \"@kne/react-form-antd\";\nimport style from \"./style.module.scss\";\n\nconst context = createContext(\"\");\nexport const { Provider } = context;\n\nconst useContext = () => {\n return useReactContext(context);\n};\n\nconst HelperGuideLabel = ({ name }) => {\n const helperGuideName = useContext();\n const group = useGroup();\n return (\n helperGuideName && (\n <HelperGuide\n className={style[\"helper-guide-field\"]}\n name={\n helperGuideName + \"-\" + (group.name ? group.name + \"-\" : \"\") + name\n }\n />\n )\n );\n};\n\nexport default HelperGuideLabel;\n","// extracted by mini-css-extract-plugin\nexport default {\"form-outer\":\"style_form-outer__IWUs0__RltKb\",\"form-drawer\":\"style_form-drawer__uYDXS__RltKb\",\"table-list\":\"style_table-list__6lp-A__RltKb\",\"list-item\":\"style_list-item__hVzQa__RltKb\",\"table-list-inner\":\"style_table-list-inner__uc8DK__RltKb\",\"table-list-field\":\"style_table-list-field__JSJfB__RltKb\",\"table-list-header\":\"style_table-list-header__KXvKa__RltKb\",\"is-req\":\"style_is-req__LfXQf__RltKb\",\"table-list-extra\":\"style_table-list-extra__faYTK__RltKb\",\"list-btn\":\"style_list-btn__WKYkm__RltKb\",\"form-info\":\"style_form-info__B8bAP__RltKb\",\"list-part\":\"style_list-part__Ld0GA__RltKb\",\"is-important\":\"style_is-important__vaBk1__RltKb\",\"list-item-part\":\"style_list-item-part__MzKP7__RltKb\",\"money-input\":\"style_money-input__J86Pb__RltKb\",\"money-description\":\"style_money-description__Gz3p7__RltKb\",\"components-upload-wrapper\":\"style_components-upload-wrapper__Ir0gz__RltKb\",\"textarea-wrapped-component\":\"style_textarea-wrapped-component__r1oKc__RltKb\",\"helper-guide-field\":\"style_helper-guide-field__Wke3w__RltKb\",\"error-tip-overlay\":\"style_error-tip-overlay__aNCGc__RltKb\",\"error-tip-overlay-content\":\"style_error-tip-overlay-content__kDOoQ__RltKb\",\"column-not-layout\":\"style_column-not-layout__+SXC+__RltKb\",\"mult-field-item\":\"style_mult-field-item__eS0nJ__RltKb\",\"react-form__field-label\":\"style_react-form__field-label__2U91E__RltKb\",\"mult-field-add-btn\":\"style_mult-field-add-btn__5Baxz__RltKb\",\"form-step-section\":\"style_form-step-section__RvkHy__RltKb\"};","import \"@kne/button-group/dist/index.css\";\n\nimport {ConfirmButton, ConfirmLink, ConfirmText, withConfirm} from '@kne/button-group';\n\nexport {ConfirmButton, ConfirmLink, ConfirmText, withConfirm};\n\nexport default ConfirmButton;\n","import Drawer, { useDrawer } from \"@components/Drawer\";\nimport FetchButton from \"@common/components/FetchButton\";\nimport style from \"./style.module.scss\";\nimport computedCommonProps from \"./computedModalCommonProps\";\n\nconst FormDrawer = (props) => {\n return (\n <Drawer\n {...computedCommonProps(\n Object.assign({}, props, { className: style[\"form-drawer\"] })\n )}\n />\n );\n};\n\nexport default FormDrawer;\n\nexport const useFormDrawer = () => {\n const drawer = useDrawer();\n return (props) =>\n drawer(\n computedCommonProps(\n Object.assign({}, props, { className: style[\"form-drawer\"] })\n )\n );\n};\n\nexport const FormDrawerButton = (props) => {\n const formDrawer = useFormDrawer();\n return <FetchButton {...props} modalFunc={formDrawer} />;\n};\n","const importMessages = (locale) => {\n return {\n \"en-US\": () => import(\"./en-US\"),\n \"zh-CN\": () => import(\"./zh-CN\"),\n }[locale]();\n};\n\nexport default importMessages;\n","import TypeDateRangePickerField from \"@common/components/TypeDateRangePickerField\";\nimport { hooks } from \"@kne/react-form-antd\";\n\nconst { useOnChange } = hooks;\n\nconst TypeDateRangePicker = (props) => {\n const render = useOnChange(Object.assign({}, {}, props));\n return render(TypeDateRangePickerField);\n};\n\nTypeDateRangePicker.Field = TypeDateRangePickerField;\n\nexport default TypeDateRangePicker;\n","import {interceptors, preset, RULES} from \"@kne/react-form-antd\";\nimport dayjs from \"dayjs\";\nimport merge from \"lodash/merge\";\nimport get from \"lodash/get\";\nimport \"@kne/react-form-antd/dist/index.css\";\nimport {PHONE_NUMBER_INPUT} from \"./fields/PhoneNumber\";\nimport HelperGuideLabel from \"@components/FormInfo/HelperGuideLabel\";\nimport {loadModule} from \"@kne/remote-loader\";\n\nconst _olderREQ = RULES.REQ;\nconst _olderLEN = RULES.LEN;\n\nconst formPreset = async (options, otherOptions) => {\n const {locale} = Object.assign({}, otherOptions);\n\n interceptors.input.use(\"photo-string\", (value) => {\n if (value && typeof value === \"string\") {\n const id = value.split(\"?\")[0];\n return {id};\n }\n return value;\n });\n\n interceptors.output.use(\"photo-string\", (value) => {\n if (!value || typeof value === \"string\") {\n return value;\n }\n return value.id?.split(\"?\")?.[0] || value.id;\n });\n\n interceptors.input.use(\"photo-string-list\", (value) => {\n if (value && Array.isArray(value) && value.length > 0) {\n return value.map((item) => ({id: item.split(\"?\")[0]}));\n }\n return value;\n });\n\n interceptors.output.use(\"photo-string-list\", (value) => {\n if (value && Array.isArray(value) && value.length > 0) {\n return value.map((item) => item?.id);\n }\n return value;\n });\n\n interceptors.input.use(\"to-array\", (value) => {\n return Array.isArray(value) ? value[0] : value;\n });\n\n interceptors.output.use(\"to-array\", (value) => {\n return [value];\n });\n\n interceptors.input.use(\"array-single\", (value) => {\n return value ? [value] : [];\n });\n\n interceptors.output.use(\"array-single\", (value) => {\n return value ? value[0] : null;\n });\n\n interceptors.input.use(\"boolean-number\", (value) => {\n return value === 1 || value === \"1\";\n });\n\n interceptors.output.use(\"boolean-number\", (value) => {\n return value ? 1 : 0;\n });\n\n interceptors.input.use(\"un-boolean\", (value) => {\n return !value;\n });\n\n interceptors.output.use(\"un-boolean\", (value) => {\n return !value;\n });\n\n interceptors.output.use(\"object-output-value\", (value) => {\n if (!value) {\n return value;\n }\n return value.value || value.id;\n });\n\n interceptors.input.use(\"date-string\", (value) => {\n return value ? dayjs(value) : null;\n });\n\n interceptors.output.use(\"date-string\", (value) => {\n return value ? new Date(value.valueOf()).toISOString() : \"\";\n });\n\n interceptors.input.use(\"date-range-string\", (value) => {\n if (!Array.isArray(value)) {\n return [];\n }\n\n const output = [];\n\n if (value[0]) {\n output.push(dayjs(value[0]));\n }\n if (value[0] && value[1] && value[1] === \"sofar\") {\n output.push(\"至今\");\n }\n if (value[0] && value[1] && value[1] !== \"至今\") {\n output.push(dayjs(value[1]));\n }\n\n return output;\n });\n\n interceptors.output.use(\"date-range-string\", (value) => {\n if (!Array.isArray(value)) {\n return [];\n }\n\n const output = [];\n\n if (value[0]) {\n output.push(new Date(value[0].valueOf()).toISOString());\n }\n if (value[0] && value[1] && value[1] === \"至今\") {\n output.push(\"sofar\");\n }\n if (value[0] && value[1] && value[1] !== \"至今\") {\n output.push(new Date(value[1].valueOf()).toISOString());\n }\n return output;\n });\n\n interceptors.output.use(\"file-format\", (value) => {\n if (!Array.isArray(value)) {\n return [];\n }\n return value.map((item) => Object.assign({}, item, {\n id: item.id || item.ossId, originalName: item.filename,\n }));\n });\n\n interceptors.input.use(\"file-format\", (value) => {\n if (!Array.isArray(value)) {\n return [];\n }\n return value.map((item) => ({\n id: item.id || item.ossId, ossId: item.id || item.ossId, filename: item.originalName || item.filename,\n }));\n });\n\n const {default: loadCountyList} = await loadModule(\"components-iconfont:CountyFlag@load\");\n const countyList = await loadCountyList();\n\n const countyAbMap = new Map(countyList.map(({ab, country_code}) => [ab, country_code]));\n const countyCodeMap = new Map(countyList.map(({ab, country_code}) => [country_code, ab]));\n\n interceptors.output.use(\"phone-number-string\", (value) => {\n if (!(value?.code && value?.value)) {\n return \"\";\n }\n\n return `+${countyAbMap.get(value.code)} ${value.value.replace(/\\s+/g, \"\")}`;\n });\n\n interceptors.input.use(\"phone-number-string\", (value) => {\n if (!value) {\n return {};\n }\n const matcher = value.match(/^\\+(\\d+)\\s(.*)/);\n if (!(matcher && matcher.length >= 3)) {\n return {code: countyCodeMap.get(86), value};\n }\n return {code: countyCodeMap.get(Number(matcher[1])), value: matcher[2]};\n });\n\n const getLocaleMsg = (type, values) => {\n values = Object.assign({}, values);\n const mapping = {\n REQ: {\n \"zh-CN\": \"%s不能为空\", \"en-US\": \"%s cannot be empty \",\n }, EMAIL: {\n \"zh-CN\": \"请输入有效的%s\", \"en-US\": \"Please enter a valid %s\",\n }, LENGTH_EQUAL: {\n \"zh-CN\": `%s必须等于${values.end}`, \"en-US\": `%s must be equal to ${values.end}`,\n }, LENGTH_MORE: {\n \"zh-CN\": `%s必须大于${values.start}`, \"en-US\": `%s must be greater than ${values.start}`,\n }, LENGTH_LESS: {\n \"zh-CN\": `%s必须小于${values.end}`, \"en-US\": `%s must be less than ${values.end}`,\n },\n };\n const target = get(mapping, `${type}.${locale}`);\n if (target) {\n return target;\n }\n return get(mapping, `${type}.zh-CN`);\n };\n\n preset(merge({}, {\n type: \"inner\", rules: {\n REQ: (...args) => {\n return Object.assign({}, _olderREQ(...args), {\n errMsg: getLocaleMsg(\"REQ\"),\n });\n }, LEN: (...args) => {\n const [value, start, end] = args;\n let ruleName = \"\";\n if (end === start && value.length !== Number(end)) {\n ruleName = \"LENGTH_EQUAL\";\n }\n if (value.length < start) {\n ruleName = \"LENGTH_MORE\";\n }\n if (end && value.length > end) {\n ruleName = \"LENGTH_LESS\";\n }\n return Object.assign({}, _olderLEN(...args), {\n errMsg: getLocaleMsg(ruleName, {start, end}),\n });\n }, EMAIL: function (value) {\n return {\n result: /^([a-zA-Z0-9_.-])+@(([a-zA-Z0-9-])+\\.)+([a-zA-Z0-9]{2,4})+$/.test(value),\n errMsg: getLocaleMsg('EMAIL')\n };\n }, PHONE_NUMBER_INPUT, ARRAY_LENGTH: (value, start, end) => {\n if (end === start && value.length !== Number(end)) {\n return {\n result: false, errMsg: getLocaleMsg(\"LENGTH_EQUAL\", {start, end}),\n };\n }\n if (value.length < start) {\n return {\n result: false, errMsg: getLocaleMsg(\"LENGTH_MORE\", {start, end}),\n };\n }\n if (end && value.length > end) {\n return {\n result: false, errMsg: getLocaleMsg(\"LENGTH_LESS\", {start, end}),\n };\n }\n return {result: true};\n },\n }, field: {\n datePicker: {\n defaultProps: {\n interceptor: \"date-string\",\n },\n }, rangeDatePicker: {\n defaultProps: {\n interceptor: \"date-range-string\",\n },\n }, inputNumber: {\n defaultProps: {\n changeOnWheel: false,\n },\n }, textArea: {\n defaultProps: {\n autoSize: {\n minRows: 2, maxRows: 6,\n },\n },\n },\n }, globalProps: {\n labelTips: (props) => {\n return <HelperGuideLabel {...props} />;\n },\n },\n }, typeof options === \"function\" ? options({interceptors, RULES}) : options));\n};\n\nexport default formPreset;\n","import importMessages from \"./locale\";\nimport {CancelButton, SubmitButton} from \"@kne/react-form-antd\";\nimport {IntlProvider, FormattedMessage} from \"@components/Intl\";\nimport {Form} from \"./formModule\";\nimport classnames from \"classnames\";\nimport style from \"./style.module.scss\";\n\nconst localeModuleName = \"FormInfo\";\n\nconst computedCommonProps = ({\n className,\n withDecorator,\n footerButtons,\n formProps,\n cancelText,\n saveText,\n autoClose = true,\n ...modalProps\n }) => {\n return {\n ...modalProps, footerButtons: footerButtons || [{\n children: (<IntlProvider\n importMessages={importMessages}\n moduleName={localeModuleName}\n >\n {cancelText || (<FormattedMessage id={\"Cancel\"} moduleName={localeModuleName}/>)}\n </IntlProvider>), ButtonComponent: CancelButton,\n }, {\n type: \"primary\", children: (<IntlProvider\n importMessages={importMessages}\n moduleName={localeModuleName}\n >\n {saveText || (<FormattedMessage id={\"Save\"} moduleName={localeModuleName}/>)}\n </IntlProvider>), ButtonComponent: SubmitButton, autoClose: false,\n },], withDecorator: (render, args) => {\n const innerRender = (props) => {\n const {\n onSubmit, ..._formProps\n } = Object.assign({}, typeof formProps === \"function\" ? formProps(props) : formProps);\n return (<Form\n {..._formProps}\n onSubmit={async (data, ...args) => {\n const res = onSubmit && (await onSubmit(data, Object.assign({}, props), ...args));\n if (res !== false) {\n autoClose && props.close();\n }\n }}\n >\n <IntlProvider importMessages={importMessages} moduleName=\"FormInfo\">\n {render(props)}\n </IntlProvider>\n </Form>);\n };\n return typeof withDecorator === \"function\" ? withDecorator(innerRender, args) : innerRender(args);\n }, className: classnames(className, style[\"form-outer\"]),\n };\n};\n\nexport default computedCommonProps;\n","import { IndustrySelectField } from \"@components/Common\";\nimport { hooks } from \"@kne/react-form-antd\";\n\nconst { useOnChange } = hooks;\n\nconst IndustrySelect = (props) => {\n const render = useOnChange(\n Object.assign({}, { placeholder: \"请选择\" + props.label }, props)\n );\n return render(IndustrySelectField);\n};\n\nIndustrySelect.Field = IndustrySelectField;\nIndustrySelect.Enum = IndustrySelectField.Enum;\n\nexport default IndustrySelect;\n","import { FunctionSelectField } from \"@components/Common\";\nimport { hooks } from \"@kne/react-form-antd\";\n\nconst { useOnChange } = hooks;\n\nconst FunctionSelect = (props) => {\n const render = useOnChange(\n Object.assign({}, { placeholder: \"请选择\" + props.label }, props)\n );\n return render(FunctionSelectField);\n};\n\nFunctionSelect.Field = FunctionSelectField;\nFunctionSelect.Enum = FunctionSelectField.Enum;\n\nexport default FunctionSelect;\n","import { hooks } from \"@kne/react-form-antd\";\nimport { CascaderField, createTreeUtils } from \"@components/Common\";\nconst { useOnChange } = hooks;\n\nconst Cascader = (props) => {\n const render = useOnChange(\n Object.assign({}, { placeholder: \"请选择\" + props.label }, props)\n );\n return render(CascaderField);\n};\n\nCascader.Field = CascaderField;\nCascader.createTreeUtils = createTreeUtils;\n\nexport { createTreeUtils };\nexport default Cascader;\n","import { hooks } from \"@kne/react-form-antd\";\nimport { Input, Typography } from \"antd\";\nimport useControlValue from \"@kne/use-control-value\";\n\nconst { useDecorator } = hooks;\n\nconst TextField = ({ children, ...props }) => {\n const [value] = useControlValue(props);\n return (\n <Typography.Text {...props}>\n <div style={{ height: 0, width: 0, overflow: \"hidden\" }}>\n <Input value={value} />\n </div>\n {children ? children : value}\n </Typography.Text>\n );\n};\n\nconst Text = (props) => {\n const render = useDecorator(props);\n return render(TextField);\n};\n\nText.Field = TextField;\n\nexport default Text;\n","import * as reactFormAntd from \"@kne/react-form-antd\";\nimport {\n DatePicker as ReactDatePicker,\n DatePickerToday as ReactDatePickerToday,\n Input as ReactInput,\n InputNumber as ReactInputNumber,\n Select as ReactSelect,\n TextArea as ReactTextArea,\n TimePicker as ReactTimePicker,\n TreeSelect as ReactTreeSelect,\n Rate,\n Switch,\n Slider,\n} from \"@kne/react-form-antd\";\nimport Form from \"./Form\";\nimport { FormattedMessage, useIntl } from \"@components/Intl\";\nimport { forwardRef } from \"react\";\nimport FormItem from \"./FormItem\";\nimport style from \"./style.module.scss\";\nimport AdvancedSelectField from \"./fields/AdvancedSelect\";\nimport SuperSelectField, {\n SuperSelectTableList as SuperSelectTableListField,\n SuperSelectUser as SuperSelectUserField,\n} from \"./fields/SuperSelect\";\nimport AddressSelect, {\n AddressInput as AddressInputField,\n} from \"./fields/AddressSelect\";\nimport Cascader from \"./fields/Cascader\";\nimport FunctionSelect from \"./fields/FunctionSelect\";\nimport IndustrySelect from \"./fields/IndustrySelect\";\nimport MoneyInput from \"./fields/MoneyInput\";\nimport PhoneNumber from \"./fields/PhoneNumber\";\nimport Upload from \"./fields/Upload\";\nimport Avatar from \"./fields/Avatar\";\nimport SalaryInput from \"./fields/SalaryInput\";\nimport InputUpperCaseField from \"./fields/InputUpperCase\";\nimport TypeDateRangePicker from \"./fields/TypeDateRangePicker\";\nimport Text from \"./fields/Text\";\nimport ErrorTip from \"./ErrorTip\";\n\nconst withInputDefaultPlaceholder = (WrappedComponent) => {\n const TargetComponent = forwardRef(\n ({ placeholder, label, ...props }, ref) => (\n <FormattedMessage\n id=\"defaultInputPlaceholder\"\n moduleName=\"FormInfo\"\n values={{ label }}\n >\n {(text) => (\n <WrappedComponent\n {...props}\n ref={ref}\n label={label}\n placeholder={placeholder || text}\n />\n )}\n </FormattedMessage>\n )\n );\n Object.keys(WrappedComponent)\n .filter((key) => {\n return [\"$$typeof\", \"render\", \"field\"].indexOf(key) === -1;\n })\n .forEach((key) => {\n TargetComponent[key] = WrappedComponent[key];\n });\n\n return TargetComponent;\n};\n\nconst withTextAreaDefaultPlaceholder =\n (WrappedComponent) =>\n ({ placeholder, label, className, ...props }) =>\n (\n <FormattedMessage\n id=\"defaultInputPlaceholder\"\n moduleName=\"FormInfo\"\n values={{ label }}\n >\n {(text) => (\n <div className={style[\"textarea-wrapped-component\"]}>\n <WrappedComponent\n {...props}\n label={label}\n placeholder={placeholder || text}\n />\n </div>\n )}\n </FormattedMessage>\n );\n\nconst withSelectDefaultPlaceholder = (WrappedComponent) => {\n const TargetComponent = forwardRef(\n ({ placeholder, label, ...props }, ref) => (\n <FormattedMessage\n id=\"defaultSelectPlaceholder\"\n moduleName=\"FormInfo\"\n values={{ label }}\n >\n {(text) => (\n <WrappedComponent\n {...props}\n ref={ref}\n label={label}\n placeholder={placeholder || text}\n />\n )}\n </FormattedMessage>\n )\n );\n\n Object.keys(WrappedComponent)\n .filter((key) => {\n return [\"$$typeof\", \"render\", \"field\"].indexOf(key) === -1;\n })\n .forEach((key) => {\n TargetComponent[key] = WrappedComponent[key];\n });\n\n return TargetComponent;\n};\n\nexport { default as ErrorTip } from \"./ErrorTip\";\n\nexport { default as FormItem } from \"./FormItem\";\n\n// export { default as AdvancedSelect } from \"./fields/AdvancedSelect\";\nexport const AdvancedSelect = withSelectDefaultPlaceholder(AdvancedSelectField);\nexport const SuperSelect = withSelectDefaultPlaceholder(SuperSelectField);\nexport const SuperSelectTableList = withSelectDefaultPlaceholder(\n SuperSelectTableListField\n);\nexport const SuperSelectUser =\n withSelectDefaultPlaceholder(SuperSelectUserField);\nexport { default as AddressSelect } from \"./fields/AddressSelect\";\nexport const AddressInput = withSelectDefaultPlaceholder(AddressInputField);\n\nexport {\n Cascader,\n FunctionSelect,\n IndustrySelect,\n MoneyInput,\n PhoneNumber,\n Upload,\n Avatar,\n SalaryInput,\n Text,\n Rate,\n Switch,\n Slider,\n TypeDateRangePicker,\n};\nexport const InputUpperCase = withInputDefaultPlaceholder(InputUpperCaseField);\nexport const Input = withInputDefaultPlaceholder(ReactInput);\nInput.Password = withInputDefaultPlaceholder(ReactInput.Password);\n\nexport const TextArea = withTextAreaDefaultPlaceholder(ReactTextArea);\n\nexport const Select = withSelectDefaultPlaceholder(ReactSelect);\n\nexport const InputNumber = withInputDefaultPlaceholder(ReactInputNumber);\n\nexport const TreeSelect = withSelectDefaultPlaceholder(ReactTreeSelect);\n\nexport const TimePicker = withSelectDefaultPlaceholder(ReactTimePicker);\n\nTimePicker.RangePicker = withSelectDefaultPlaceholder(\n ReactTimePicker.RangePicker\n);\n\nexport const DatePicker = withSelectDefaultPlaceholder(ReactDatePicker);\n\nDatePicker.MonthPicker = withSelectDefaultPlaceholder(\n ReactDatePicker.MonthPicker\n);\n\nDatePicker.RangePicker = withSelectDefaultPlaceholder(\n ReactDatePicker.RangePicker\n);\n\nDatePicker.WeekPicker = withSelectDefaultPlaceholder(\n ReactDatePicker.WeekPicker\n);\n\nexport const DatePickerToday = ({\n placeholder,\n label,\n soFarText,\n ...props\n}) => {\n const { formatMessage } = useIntl({ moduleName: \"FormInfo\" });\n return (\n <ReactDatePickerToday\n {...props}\n label={label}\n placeholder={[\n formatMessage({ id: \"startDate\" }),\n formatMessage({ id: \"endDate\" }),\n ]}\n soFarText={soFarText || formatMessage({ id: \"soFarText\" })}\n />\n );\n};\n\nexport { Form };\n\nexport const formModule = Object.assign({}, reactFormAntd, {\n Input,\n InputUpperCase,\n TextArea,\n Select,\n InputNumber,\n TreeSelect,\n TimePicker,\n DatePicker,\n DatePickerToday,\n Form,\n FormItem,\n AdvancedSelect,\n SuperSelect,\n SuperSelectTableList,\n SuperSelectUser,\n AddressSelect,\n AddressInput,\n MoneyInput,\n PhoneNumber,\n Cascader,\n FunctionSelect,\n IndustrySelect,\n TypeDateRangePicker,\n Upload,\n Avatar,\n SalaryInput,\n Text,\n Rate,\n Switch,\n Slider,\n ErrorTip,\n});\n","import {forwardRef, useEffect, useState} from \"react\";\nimport {usePreset} from \"@components/Global\";\nimport get from \"lodash/get\";\nimport formPreset from \"@components/FormInfo/preset\";\nimport {IntlProvider} from \"@components/Intl\";\nimport importMessages from \"@components/FormInfo/locale\";\nimport FormLangProvider from \"@components/FormInfo/FormLangProvider\";\nimport InfoPage from \"@components/InfoPage\";\nimport {Provider as HelperGuideProvider} from \"@components/FormInfo/HelperGuideLabel\";\nimport {FormAntd as ReactForm} from \"@kne/react-form-antd\";\nimport classnames from \"classnames\";\nimport style from \"@components/FormInfo/style.module.scss\";\n\nconst SetPreset = ({children}) => {\n const [isPreset, setIsPreset] = useState(false);\n const preset = usePreset();\n const formInfo = get(preset, \"formInfo\", {}),\n locale = get(preset, \"locale\");\n useEffect(() => {\n Promise.resolve(formPreset(formInfo, {locale})).then(() => {\n setIsPreset(true);\n });\n }, [formInfo, locale]);\n if (!isPreset) {\n return null;\n }\n return children;\n};\n\nconst Form = forwardRef(\n ({className, helperGuideName, children, lang, ...props}, ref) => {\n return (\n <IntlProvider importMessages={importMessages} moduleName=\"FormInfo\">\n <FormLangProvider value={lang}>\n <HelperGuideProvider value={helperGuideName}>\n <SetPreset>\n <ReactForm\n {...props}\n ref={ref}\n className={classnames(className, style[\"form-outer\"])}\n >\n <InfoPage>{children}</InfoPage>\n </ReactForm>\n </SetPreset>\n </HelperGuideProvider>\n </FormLangProvider>\n </IntlProvider>\n );\n }\n);\nexport default Form;\n","import {cloneElement} from \"react\";\nimport {SubList} from '@kne/react-form-plus';\nimport {Typography, Divider} from \"antd\";\nimport Icon from \"@components/Icon\";\nimport InfoPage from \"@components/InfoPage\";\nimport ConfirmButton from \"@components/ConfirmButton\";\nimport FormInfo from \"./FormInfo\";\nimport classnames from \"classnames\";\nimport importMessages from \"./locale\";\nimport {createWithIntl, FormattedMessage, useIntl} from \"@components/Intl\";\nimport style from \"./style.module.scss\";\n\nconst List = createWithIntl({moduleName: \"FormInfo\", importMessages})(({\n addText,\n className,\n important,\n outer = <Outer/>,\n renderChildren = (children) => children,\n deleteButtonProps,\n title,\n ...props\n }) => {\n const {formatMessage} = useIntl({moduleName: \"FormInfo\"});\n return <SubList {...props} listRender={({list, title, id, allowRemove, onRemove, ...others}) => {\n return <div key={id} className={classnames(style[\"list-item\"], {\n [style[\"is-important\"]]: important,\n })}>\n <FormInfo {...others} title={title} list={list} className={style[\"list-item-part\"]} gap={16}\n extra={<FormattedMessage id=\"delText\" moduleName=\"FormInfo\">\n {(text) => allowRemove ? (<ConfirmButton\n danger\n className={\"btn-no-padding\"}\n message={formatMessage({id: \"delConfirm\"}, {name: title})}\n type=\"link\"\n onClick={() => {\n onRemove(id);\n }}\n {...Object.assign({}, deleteButtonProps)}\n >\n {deleteButtonProps?.children ? (deleteButtonProps?.children) : (<>\n <Icon type=\"icon-shanchu\"/>\n {text}\n </>)}\n </ConfirmButton>) : null}\n </FormattedMessage>}/>\n <Divider/>\n </div>\n }}>{(children, {allowAdd, onAdd}) => {\n return cloneElement(outer, {\n title,\n addText,\n className: classnames(className, style[\"list-part\"]),\n allowAdd,\n add: () => onAdd({isUnshift: false}),\n }, renderChildren(children));\n }}</SubList>\n});\n\nconst Outer = ({add, addText, className, allowAdd, ...props}) => {\n return (<InfoPage.Part\n {...props}\n className={className}\n extra={allowAdd && (<FormattedMessage id=\"addText\" moduleName=\"FormInfo\">\n {(text) => (<Typography.Text className={style[\"list-btn\"]} onClick={add}>\n <Icon type=\"icon-tianjia\"/>\n {addText || text}\n </Typography.Text>)}\n </FormattedMessage>)}\n />);\n};\n\nexport default List;\n","// extracted by mini-css-extract-plugin\nexport default {\"upload\":\"style_upload__t422Q__RltKb\",\"upload-list\":\"style_upload-list__Q9HDc__RltKb\",\"upload-input\":\"style_upload-input__vXk4w__RltKb\",\"tips\":\"style_tips__3Gpnu__RltKb\"};","import {Space, Flex} from \"antd\";\nimport classnames from \"classnames\";\nimport useControlValue from \"@kne/use-control-value\";\nimport style from \"./style.module.scss\";\nimport {List as FileList} from \"@components/File\";\nimport {hooks} from \"@kne/react-form-antd\";\nimport {createWithIntl, useIntl} from '@components/Intl';\nimport omit from \"lodash/omit\";\nimport {InputFileButton, useFileUpload} from \"@common/hocs/withInputFile\";\nimport importMessages from \"@components/FormInfo/locale\";\n\nconst {useOnChange} = hooks;\n\nconst UploadField = createWithIntl({\n importMessages, moduleName: 'FormInfo'\n})((p) => {\n const {formatMessage} = useIntl({moduleName: \"FormInfo\"});\n const {\n className,\n fileSize,\n maxLength,\n multiple,\n size,\n accept,\n children,\n renderTips,\n showUploadList,\n onSave,\n ossUpload,\n onUpload,\n getPermission,\n concurrentCount,\n ...props\n } = Object.assign({}, {\n defaultValue: [],\n children: formatMessage({id: 'uploadButtonText'}),\n accept: [\n \".pdf\",\n \".jpg\",\n \".png\",\n \".jpeg\",\n \".doc\",\n \".docx\",\n \".xls\",\n \".xlsx\",\n \".html\",\n \".msg\",\n \".eml\",\n \".zip\",\n ],\n renderTips: (defaultTips) => {\n return defaultTips;\n },\n multiple: true,\n showUploadList: true,\n maxLength: 10,\n fileSize: 30,\n concurrentCount: 10\n }, p);\n const [propsValue, onChange] = useControlValue(props);\n const value = propsValue || [];\n const {fileList: uploadingList, onFileSelected} = useFileUpload({\n multiple,\n onSave,\n onUpload: ossUpload || onUpload,\n fileSize,\n maxLength,\n value,\n onChange,\n concurrentCount,\n });\n const previewFileList = [...uploadingList, ...value];\n const tipsText = renderTips(formatMessage({id: 'uploadTips'}, {\n extensionNames: accept\n .map((str) => str.replace(/^\\./, \"\"))\n .join(\",\"), maxLength, fileSize\n }),\n {\n fileSize,\n maxLength,\n accept,\n }\n );\n\n return (\n <Space direction=\"vertical\">\n <Flex align=\"start\" gap={8} vertical>\n <InputFileButton\n {...omit(props, [\"value\", \"onChange\"])}\n size={size}\n multiple={multiple}\n accept={accept}\n className={classnames(style[\"upload\"], className)}\n onChange={onFileSelected}\n >\n {children}\n </InputFileButton>\n {tipsText && <div className={style[\"tips\"]}>{tipsText}</div>}\n </Flex>\n {showUploadList && previewFileList.length > 0 && (\n <FileList\n className={style[\"upload-list\"]}\n dataSource={previewFileList}\n infoItemRenders={[]}\n getPermission={\n getPermission\n ? getPermission\n : (type) => {\n return type === \"delete\";\n }\n }\n apis={{\n onDelete: (target) => {\n const newList = value.slice(0);\n const index = newList.indexOf(target);\n index > -1 && newList.splice(index, 1);\n onChange(newList);\n },\n }}\n />\n )}\n </Space>\n );\n});\n\nconst Upload = ({interceptor = \"file-format\", ...props}) => {\n const render = useOnChange({interceptor, ...props});\n return render(UploadField);\n};\n\nUpload.Field = UploadField;\n\nexport default Upload;\n","// extracted by mini-css-extract-plugin\nexport default {\"money-input\":\"style_money-input__Pyur7__RltKb\",\"money-description\":\"style_money-description__9pFk4__RltKb\"};","import useControlValue from \"@kne/use-control-value\";\nimport { hooks, util, formUtils } from \"@kne/react-form-antd\";\nimport { InputNumber } from \"antd\";\nimport changeMoneyToChinese, {\n MAX_NUM,\n} from \"@common/utils/changeMoneyToChinese\";\nimport style from \"./style.module.scss\";\nimport classnames from \"classnames\";\nimport merge from \"lodash/merge\";\nimport { useState } from \"react\";\n\nconst { isNotEmpty } = util || formUtils;\nconst { useOnChange } = hooks;\nconst MoneyInputField = ({\n chineseEmpty,\n className,\n showError,\n errorDesc,\n transformMoneyToChinese,\n onBlur,\n moneyFormat,\n ...props\n}) => {\n const [status, setStatus] = useState(\"\");\n const [value, onChange] = useControlValue(props);\n const inputNumberProps = merge(\n {\n controls: false,\n precision: 2,\n addonAfter: \"元\",\n },\n props,\n {\n max: isNotEmpty(props.max)\n ? props.max > MAX_NUM\n ? MAX_NUM\n : props.max\n : MAX_NUM,\n }\n );\n return (\n <div className={classnames(className, \"money-input\", style[\"money-input\"])}>\n <InputNumber\n {...inputNumberProps}\n status={status}\n formatter={\n moneyFormat\n ? (value) => {\n return `${value}`.replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\");\n }\n : null\n }\n parser={(parserValue) => {\n const value = moneyFormat\n ? parserValue?.replace(/\\$\\s?|(,*)/g, \"\")\n : parserValue;\n if (isNotEmpty(value)) {\n if (\n Number(value) > Number(inputNumberProps.max) ||\n (isNotEmpty(inputNumberProps.min) &&\n Number(value) < Number(inputNumberProps.min))\n ) {\n setStatus(\"error\");\n }\n } else {\n setStatus(\"\");\n }\n return isNotEmpty(value) ? Number(value) : null;\n }}\n onChange={(val) => {\n onChange(val);\n }}\n onBlur={(e) => {\n onBlur && onBlur(e, setStatus);\n }}\n />\n <div className={classnames(style[\"money-description\"])}>\n {status === \"error\" && showError\n ? errorDesc\n : isNotEmpty(value)\n ? changeMoneyToChinese(\n transformMoneyToChinese ? transformMoneyToChinese(value) : value\n )\n : chineseEmpty}\n </div>\n </div>\n );\n};\n\nconst MoneyInput = (props) => {\n const render = useOnChange(\n Object.assign({ placeholder: `请输入${props.label || \"\"}` }, props)\n );\n return render(MoneyInputField);\n};\n\nMoneyInput.Field = MoneyInputField;\nMoneyInput.toChineseCharacter = changeMoneyToChinese;\n\nexport default MoneyInput;\n","import Modal, { useModal } from \"@components/Modal\";\nimport { useState, useRef } from \"react\";\nimport { CancelButton, SubmitButton } from \"@kne/react-form-antd\";\nimport FetchButton from \"@common/components/FetchButton\";\nimport { IntlProvider, FormattedMessage } from \"@components/Intl\";\nimport style from \"./style.module.scss\";\nimport importMessages from \"./locale\";\nimport { Button, Steps, Flex } from \"antd\";\nimport computedModalCommonProps from \"./computedModalCommonProps\";\n\nconst localeModuleName = \"FormInfo\";\n\nconst FormStepState = ({ items, children }) => {\n const [currentIndex, setCurrentIndex] = useState(0);\n const stepCacheRef = useRef({});\n return children({\n currentIndex,\n setCurrentIndex,\n stepCacheRef,\n isLastStep: currentIndex === items.length - 1,\n currentProps: Object.assign({}, items[currentIndex]),\n });\n};\n\nconst computedCommonProps = ({\n footerButtons,\n cancelText,\n completeText,\n nextText,\n items,\n withDecorator,\n ...others\n}) => {\n return computedModalCommonProps(\n Object.assign({}, others, {\n footerButtons: ({ currentIndex, isLastStep }) => {\n const { footerButtons } = Object.assign({}, items[currentIndex]);\n return (\n footerButtons || [\n {\n children: (\n <IntlProvider\n importMessages={importMessages}\n moduleName={localeModuleName}\n >\n {cancelText || (\n <FormattedMessage\n id={\"Cancel\"}\n moduleName={localeModuleName}\n />\n )}\n </IntlProvider>\n ),\n ButtonComponent: CancelButton,\n },\n {\n type: \"primary\",\n children: (\n <IntlProvider\n importMessages={importMessages}\n moduleName={localeModuleName}\n >\n {isLastStep\n ? completeText || (\n <FormattedMessage\n id={\"Complete\"}\n moduleName={localeModuleName}\n />\n )\n : nextText || (\n <FormattedMessage\n id={\"Next\"}\n moduleName={localeModuleName}\n />\n )}\n </IntlProvider>\n ),\n ButtonComponent: SubmitButton,\n autoClose: false,\n },\n ]\n );\n },\n withDecorator: (render, args) => {\n const innerRender = (props) => {\n return (\n <FormStepState items={items}>\n {({\n currentIndex,\n isLastStep,\n setCurrentIndex,\n currentProps,\n stepCacheRef,\n }) => {\n const { formProps, title, ...otherProps } = currentProps;\n const { onSubmit, ..._formProps } =\n typeof formProps === \"function\"\n ? formProps(props)\n : formProps;\n\n const formData = Object.assign(\n {},\n _formProps.data,\n stepCacheRef.current[currentIndex]?.data\n );\n\n return render(\n Object.assign({}, props, otherProps, {\n currentIndex,\n isLastStep,\n setCurrentIndex,\n stepCacheRef,\n stepSection: (\n <Steps\n className={style[\"form-step-section\"]}\n current={currentIndex}\n items={items.map(({ title }) => ({ title }))}\n />\n ),\n formProps: Object.assign({}, _formProps, {\n key: currentIndex,\n data: formData,\n onSubmit: async (data, ...args) => {\n stepCacheRef.current[currentIndex] = { data };\n const res =\n onSubmit &&\n (await onSubmit(\n data,\n Object.assign({}, props, {\n currentIndex,\n isLastStep,\n setCurrentIndex,\n currentProps,\n stepCacheRef,\n }),\n ...args\n ));\n if (others.autoClose && !isLastStep && res !== false) {\n setCurrentIndex((currentIndex) => currentIndex + 1);\n }\n if (!isLastStep) {\n return false;\n }\n\n return res;\n },\n }),\n })\n );\n }}\n </FormStepState>\n );\n };\n return typeof withDecorator === \"function\"\n ? withDecorator(innerRender, args)\n : innerRender(args);\n },\n formProps: ({ formProps, ...others }) =>\n Object.assign({}, others, formProps),\n children: ({ children, stepSection, ...props }) => {\n return (\n <Flex vertical gap={24}>\n <Flex justify=\"center\">{stepSection}</Flex>\n {typeof children === \"function\" ? children(props) : children}\n </Flex>\n );\n },\n })\n );\n};\n\nconst FormStepModal = (props) => {\n return (\n <Modal\n {...computedCommonProps(\n Object.assign({}, props, { className: style[\"form-modal\"] })\n )}\n />\n );\n};\n\nexport default FormStepModal;\n\nexport const useFormStepModal = () => {\n const modal = useModal();\n return (props) =>\n modal(\n computedCommonProps(\n Object.assign({}, props, { className: style[\"form-modal\"] })\n )\n );\n};\n\nexport const FormStepModalButton = (props) => {\n const formModal = useFormStepModal();\n if (!props.api) {\n const { modalProps, ...others } = props;\n return (\n <Button\n {...others}\n onClick={() => {\n formModal(modalProps);\n }}\n />\n );\n }\n return <FetchButton {...props} modalFunc={formModal} />;\n};\n","import preset from \"./preset\";\nimport FormInfo from \"./FormInfo\";\nimport fields, { fieldDecorator } from \"./fields\";\nimport List from \"./List\";\nimport TableList from \"./TableList\";\nimport FormApiButton from \"./FormApiButton\";\nimport FormModal, { useFormModal, FormModalButton } from \"./FormModal\";\nimport FormStepModal, {\n useFormStepModal,\n FormStepModalButton,\n} from \"./FormStepModal\";\nimport FormDrawer, { useFormDrawer, FormDrawerButton } from \"./FormDrawer\";\nimport Form from \"./Form\";\nimport FormItem from \"./FormItem\";\nimport ErrorTip from \"./ErrorTip\";\nimport MultiField from \"./MultiField\";\nimport {\n SubmitButton,\n CancelButton,\n useFormContext,\n hooks,\n widget,\n utils,\n formUtils,\n} from \"@kne/react-form-antd\";\n\npreset();\n\nFormInfo.fields = fields;\nFormInfo.List = List;\nFormInfo.TableList = TableList;\nFormInfo.FormApiButton = FormApiButton;\nFormInfo.FormModal = FormModal;\nFormInfo.useFormModal = useFormModal;\nFormInfo.FormModalButton = FormModalButton;\nFormInfo.FormStepModal = FormStepModal;\nFormInfo.useFormStepModal = useFormStepModal;\nFormInfo.FormStepModalButton = FormStepModalButton;\nFormInfo.FormDrawer = FormDrawer;\nFormInfo.useFormDrawer = useFormDrawer;\nFormInfo.FormDrawerButton = FormDrawerButton;\nFormInfo.Form = Form;\nFormInfo.FormItem = FormItem;\nFormInfo.ErrorTip = ErrorTip;\nFormInfo.SubmitButton = SubmitButton;\nFormInfo.CancelButton = CancelButton;\nFormInfo.fieldDecorator = fieldDecorator;\nFormInfo.MultiField = MultiField;\nFormInfo.useFormContext = useFormContext;\nFormInfo.hooks = hooks;\nFormInfo.widget = widget;\nFormInfo.utils = utils;\nFormInfo.formUtils = formUtils;\n\nexport * from \"@kne/react-form-antd\";\n\nexport * from \"./formModule\";\n\nexport {\n Form,\n FormItem,\n ErrorTip,\n fields,\n fieldDecorator,\n List,\n TableList,\n FormApiButton,\n FormModal,\n useFormModal,\n FormModalButton,\n FormStepModal,\n useFormStepModal,\n FormStepModalButton,\n FormDrawer,\n useFormDrawer,\n FormDrawerButton,\n MultiField,\n};\n\nexport { default as SelectInnerInput } from \"./SelectInnerInput\";\n\nexport default FormInfo;\n","// extracted by mini-css-extract-plugin\nexport default {\"upload-btn\":\"style_upload-btn__-6XtP__RltKb\",\"square\":\"style_square__UPkfA__RltKb\",\"is-loading\":\"style_is-loading__wx6Pd__RltKb\",\"upload-btn-tips\":\"style_upload-btn-tips__YtxWz__RltKb\",\"drop-tips\":\"style_drop-tips__N-v59__RltKb\",\"preview-area\":\"style_preview-area__aV3SN__RltKb\"};","import {forwardRef, useLayoutEffect, useRef, useState} from \"react\";\nimport withInputFile, {InputFileLink} from \"@common/hocs/withInputFile\";\nimport Image from \"@components/Image\";\nimport {usePreset} from \"@components/Global\";\nimport {useModal} from \"@components/Modal\";\nimport Icon from \"@components/Icon\";\nimport {\n Avatar as AntdAvatar, Col, message, Row, Slider, Space, Spin, Tooltip,\n} from \"antd\";\nimport AvatarEditor from \"react-avatar-editor\";\nimport get from \"lodash/get\";\nimport classnames from \"classnames\";\nimport {useDebouncedCallback} from \"use-debounce\";\nimport {hooks} from \"@kne/react-form-antd\";\nimport merge from \"lodash/merge\";\nimport style from \"./style.module.scss\";\nimport defaultAvatarIcon from \"../../../../defaultAvatar.svg\";\nimport {IntlProvider, FormattedMessage, useIntl} from \"@components/Intl\";\nimport importMessages from \"@components/FormInfo/locale\";\nimport {createWithIntl} from \"../../../Intl\";\n\nconst {useOnChange} = hooks;\n\nconst AvatarDisplay = Image.Avatar;\n\nconst localeModuleName = \"FormInfo\";\n\nconst UploadButton = withInputFile(({\n className,\n icon,\n loading,\n value,\n gender,\n width,\n height,\n children,\n shape,\n defaultAvatar,\n displayAvatar,\n apis,\n }) => {\n const inner = (<>\n <AvatarDisplay\n {...Object.assign({}, typeof displayAvatar === 'function' ? displayAvatar(value) : {id: get(value, \"id\")})}\n gender={gender}\n width={(64 * width) / height}\n height={64}\n shape={shape}\n defaultAvatar={defaultAvatar}\n apis={apis}\n />\n <div className={style[\"upload-btn-tips\"]}>\n {icon || <Icon type=\"icon-chuanzhaopian\" size={16}/>}\n </div>\n {children}\n </>);\n return (<div\n className={classnames(className, style[\"upload-btn\"], {\n [style[\"is-loading\"]]: loading, [style[\"square\"]]: shape === \"square\" || !(width && width === height),\n })}\n style={{width: (64 * width) / height}}\n >\n {loading ? <Spin>{inner}</Spin> : inner}\n </div>);\n});\n\nconst dataURLtoBlob = (dataURL) => {\n let arr = dataURL.split(\",\");\n // 注意base64的最后面中括号和引号是不转译的\n let _arr = arr[1].substring(0, arr[1].length - 2);\n let mime = arr[0].match(/:(.*?);/)[1], bstr = atob(_arr), n = bstr.length, u8arr = new Uint8Array(n);\n while (n--) {\n u8arr[n] = bstr.charCodeAt(n);\n }\n return new Blob([u8arr], {\n type: mime,\n });\n};\n\nconst ControlAvatarEditor = forwardRef(({\n image: propsImage,\n width,\n height,\n borderRadius,\n preview,\n fileSize,\n accept,\n renderTips,\n getApi,\n shape,\n border = 1,\n ...props\n }, ref) => {\n const intl = useIntl({moduleName: localeModuleName});\n const [baseWidth, setBaseWidth] = useState(0);\n const outerRef = useRef(null);\n const [image, setImage] = useState(propsImage);\n const [scale, setScale] = useState(1);\n const [rotate, setRotate] = useState(0);\n const [previewImg, setPreviewImg] = useState(\"\");\n const editorRef = useRef(null);\n\n useLayoutEffect(() => {\n setBaseWidth((outerRef.current.clientWidth * 2) / 3);\n }, []);\n getApi({\n getImage: () => {\n const canvas = editorRef.current.getImage();\n\n const targetCanvas = document.createElement(\"canvas\");\n const targetCtx = targetCanvas.getContext(\"2d\");\n targetCanvas.width = width;\n targetCanvas.height = height;\n\n targetCtx.drawImage(canvas, 0, 0, targetCanvas.width, targetCanvas.height);\n\n return new window.File([dataURLtoBlob(targetCanvas.toDataURL())], image.name, {type: image.type});\n },\n });\n const makePreviewInner = () => {\n setPreviewImg(editorRef.current.getImage().toDataURL());\n };\n const makePreview = useDebouncedCallback(makePreviewInner, 500);\n\n return (<div ref={outerRef}>\n <Row wrap={false} align=\"middle\">\n <Col span={preview ? 16 : 24}>\n {baseWidth && (<Space direction=\"vertical\">\n <AvatarEditor\n {...props}\n ref={editorRef}\n image={image}\n scale={scale}\n rotate={rotate}\n width={baseWidth - border * 2}\n height={(height * baseWidth) / width - (border * 2 * height) / width}\n border={border}\n color={[0, 0, 0, 0.6]}\n borderRadius={(borderRadius * baseWidth) / width}\n onImageReady={makePreviewInner}\n onImageChange={makePreview}\n />\n <div className={style[\"drop-tips\"]}>\n {renderTips(`${intl.formatMessage({id: \"PictureFormat\"})}${accept\n .map((str) => str.replace(/^\\./, \"\"))\n .join(\" \")} ${intl.formatMessage({\n id: \"ImageSize\",\n })}${intl.formatMessage({id: \"NotExceeding\"}, {size: fileSize})}`, {\n accept, fileSize,\n })}\n </div>\n <Row gutter={14} align=\"middle\">\n <Col>\n <Tooltip\n title={intl.formatMessage({id: \"Rotate\"})}\n placement=\"bottom\"\n >\n <Icon\n type=\"icon-xuanzhuan\"\n onClick={() => {\n setRotate((rotate) => {\n return (rotate - 90) % 360;\n });\n }}\n />\n </Tooltip>\n </Col>\n <Col>\n <Tooltip\n title={intl.formatMessage({id: \"ImageFull\"})}\n placement=\"bottom\"\n >\n <Icon\n type=\"icon-chongman\"\n onClick={() => {\n setScale(1);\n }}\n />\n </Tooltip>\n </Col>\n <Col flex={1}>\n <Slider\n tooltip={{\n placement: \"bottom\", formatter: () => intl.formatMessage({id: \"Size\"}),\n }}\n value={scale}\n step={0.05}\n min={0.2}\n max={3}\n onChange={setScale}\n />\n </Col>\n <Col>\n <InputFileLink\n accept={accept}\n onChange={(fileList) => {\n if (fileList[0].size > fileSize * 1024 * 1024) {\n message.error(intl.formatMessage({id: \"FileNotExceeding\"}, {\n name: fileList[0].name, size: fileSize\n }));\n return;\n }\n setRotate(0);\n setScale(1);\n setImage(fileList[0]);\n }}\n >\n {intl.formatMessage({id: 'ReUpload'})}\n </InputFileLink>\n </Col>\n </Row>\n </Space>)}\n </Col>\n {preview && (<Col span={8}>\n <div className={style[\"preview-area\"]}>\n <Space direction=\"vertical\">\n <AntdAvatar\n src={previewImg}\n // alt=\"预览\"\n shape={shape}\n style={{\n width: baseWidth / 2 - 36, height: ((baseWidth / 2 - 36) * height) / width,\n }}\n />\n <div\n style={{\n textAlign: \"center\",\n }}\n >\n {intl.formatMessage({id: 'Preview'})}\n </div>\n </Space>\n </div>\n </Col>)}\n </Row>\n </div>);\n});\n\nconst useDropModal = () => {\n const modal = useModal();\n return (props) => {\n const {\n image,\n width,\n height,\n borderRadius,\n getApi,\n preview,\n fileSize,\n accept,\n renderTips,\n border,\n dropModalSize,\n ...others\n } = Object.assign({}, {\n title: \"编辑头像\",\n width: 200,\n height: 200,\n borderRadius: props.shape === \"circle\" && props.width && props.width === props.height ? props.width / 2 : 2,\n preview: true,\n }, props);\n return modal({\n ...others, size: dropModalSize, children: (<ControlAvatarEditor\n preview={preview}\n fileSize={fileSize}\n accept={accept}\n getApi={getApi}\n renderTips={renderTips}\n width={width}\n height={height}\n shape={props.shape === \"circle\" && props.width && props.width === props.height ? \"circle\" : \"square\"}\n borderRadius={borderRadius}\n image={image}\n border={border}\n scale={1}\n rotate={0}\n />),\n });\n };\n};\n\nconst AvatarField = createWithIntl({importMessages, moduleName: \"FormInfo\"})(({\n value,\n gender,\n fileSize = 2,\n accept = [\".jpg\", \".png\", \".jpeg\"],\n openEditor = true,\n apis: currentApis,\n renderTips = (defaultTips) => {\n return defaultTips;\n },\n onChange,\n shape = \"circle\",\n width = 200,\n height = 200,\n title = <IntlProvider\n importMessages={importMessages}\n moduleName=\"FormInfo\">\n <FormattedMessage id={\"Crop\"}\n moduleName=\"FormInfo\"/>\n </IntlProvider>,\n border = 1,\n icon,\n dropModalSize = \"small\",\n defaultAvatar = defaultAvatarIcon,\n displayAvatar,\n }) => {\n const [loading, setLoading] = useState(false);\n const {apis: baseApis} = usePreset();\n const apis = merge({}, baseApis, currentApis);\n const ossUpload = apis.ossUpload || apis.upload || apis.file?.upload;\n const dropRef = useRef(null);\n const dropModal = useDropModal();\n const intl = useIntl({moduleName: localeModuleName});\n return (<UploadButton\n value={value}\n gender={gender}\n accept={accept}\n width={width}\n height={height}\n shape={shape}\n icon={icon}\n loading={loading}\n defaultAvatar={defaultAvatar}\n displayAvatar={displayAvatar}\n apis={apis}\n onChange={(fileList) => {\n if (fileList[0].size > fileSize * 1024 * 1024) {\n message.error(intl.formatMessage({id: \"FileNotExceeding\"}, {\n name: fileList[0].name, size: fileSize\n }));\n return;\n }\n const doUpload = (file) => {\n setLoading(true);\n return ossUpload({file})\n .then(({data}) => {\n if (data.code !== 0) {\n message.error(intl.formatMessage({id: \"UploadFailed\"}, {msg: data.msg ? \":\" + data.msg : \"\"}));\n return;\n }\n onChange(data.data);\n })\n .finally(() => {\n setLoading(false);\n });\n };\n if (openEditor) {\n dropModal({\n image: fileList[0],\n width,\n height,\n title,\n shape,\n border,\n dropModalSize,\n getApi: (api) => (dropRef.current = api),\n fileSize,\n accept,\n renderTips,\n onConfirm: () => {\n doUpload(dropRef.current.getImage());\n },\n });\n return;\n }\n doUpload(fileList[0]);\n }}\n />);\n});\n\nconst Avatar = (props) => {\n const render = useOnChange(props);\n return render(AvatarField);\n};\n\nAvatar.Field = AvatarField;\nAvatar.useDropModal = useDropModal;\n\nexport default Avatar;\n","import {Col, Row, Button, Typography} from \"antd\";\nimport Icon from '@components/Icon';\nimport classnames from \"classnames\";\nimport style from \"./style.module.scss\";\nimport {TableList as TableListBase} from '@kne/react-form-plus';\nimport InfoPage from \"@components/InfoPage\";\nimport {createWithIntl, useIntl} from \"@components/Intl\";\nimport importMessages from \"./locale\";\n\nconst TableList = createWithIntl({moduleName: \"FormInfo\", importMessages})(({className, ...props}) => {\n const {formatMessage} = useIntl({moduleName: \"FormInfo\"});\n return <div className={classnames(className, style['table-list'])}>\n <TableListBase {...props}\n className={classnames(className, style[\"table-list\"])}\n headerRender={(children, {width}) => {\n return <Row\n wrap={false}\n className={style[\"table-list-header\"]}\n style={{\n \"--col-width\": width,\n }}\n >\n {children}\n <Col\n className={style[\"table-list-extra\"]}></Col>\n </Row>\n }} headerItemRender={(children, {\n id, isReq\n }) => {\n return <Col key={id} className={classnames({\n [style[\"is-req\"]]: isReq,\n })}>\n {children}\n </Col>\n }} listRender={(children, {id, width, onRemove, allowRemove}) => {\n return <Row key={id} wrap={false} style={{\n \"--col-width\": width,\n }}>\n {children}\n <Col className={style[\"table-list-extra\"]}><Button type=\"link\" onClick={onRemove} danger\n disabled={!allowRemove}><span><Icon\n type=\"shanchu\"/>{formatMessage({id: 'delText'})}</span></Button></Col>\n </Row>\n }} itemRender={(children) => {\n return <Col className={style[\"table-list-field\"]} flex={1}>\n {children}\n </Col>\n }}>{(children, {title, allowAdd, onAdd}) => {\n return <InfoPage.Part title={title} className={classnames(style[\"table-list-inner\"])}\n extra={allowAdd && <Typography.Link className={style[\"list-btn\"]}\n onClick={() => onAdd({isUnshift: false})}>\n <Icon type=\"tianjia\"/>{formatMessage({id: 'addText'})}\n </Typography.Link>}>\n {children}\n </InfoPage.Part>\n }}</TableListBase></div>;\n});\n\nexport default TableList;\n","import {Button} from \"antd\";\nimport {createWithIntl, useIntl} from \"@components/Intl\";\nimport Icon from \"@components/Icon\";\nimport style from \"./style.module.scss\";\nimport classnames from \"classnames\";\nimport importMessages from \"./locale\";\nimport {MultiField as MultiFieldBase} from '@kne/react-form-plus';\n\n\nconst MultiField = createWithIntl({moduleName: \"FormInfo\", importMessages})((props) => {\n const {formatMessage} = useIntl({moduleName: \"FormInfo\"});\n return <MultiFieldBase {...props} itemRender={(children, {id, index, allowRemove, onRemove}) => {\n return <div\n key={id}\n className={classnames(style[\"mult-field-item\"], \"mult-field-item\", {\n [style[\"first-item\"]]: index === 0,\n })}\n >\n {children}\n <div className={classnames('form-info-mult-option')}>\n <div\n className={classnames(style[\"react-form__field-label\"], \"react-form__field-label\", \"mult-field-delete--label\")}\n />\n <Button\n icon={<Icon type=\"shanchu\"/>}\n onClick={onRemove}\n disabled={!allowRemove}\n />\n </div>\n </div>\n }}>{(children, {allowAdd, onAdd}) => {\n return <div className={classnames(style[\"mult-field\"], \"mult-field\")}>\n {children}\n {allowAdd && (<div className={classnames('form-info-mult-add-btn')}>\n <Button className={style[\"mult-field-add-btn\"]} type=\"dashed\" onClick={() => onAdd({isUnshift: false})}>\n <Icon type=\"tianjia\"/>\n {formatMessage({id: \"addSomeThing\"}, {label: props.label})}\n </Button>\n </div>)}\n </div>\n }}</MultiFieldBase>;\n});\n\nexport default MultiField;\n"],"names":["FlexBox","FlexBoxFetch","useOnChange","useDecorator","hooks","AddressSelect","props","Object","assign","placeholder","label","render","AddressSelectField","Field","AddressEnum","createAddressApi","withAddressApi","AddressInput","inputPlaceholder","AddressInputField","_ref","list","groupArgs","itemRender","column","gap","className","outer","_jsx","InfoPage","children","renderChildren","isFlexBox","Number","isInteger","ref","flexBoxRef","flexBoxColumn","useFlexBox","renderInner","notLayout","FormInfoBase","Col","span","Row","gutter","classnames","style","cloneElement","_jsxs","_Fragment","col","Modal","computedCommonProps","useFormModal","modal","useModal","FormModalButton","classNames","formModal","api","modalProps","others","Button","onClick","FetchButton","modalFunc","InputUpperCaseField","value","onChange","useControlValue","Input","e","target","toUpperCase","InputUpperCase","createWithRemoteLoader","modules","_ref2","remoteModules","formModule","field","ColorPickerField","ColorPickerFieldAntd","toHexString","ColorPicker","useCheckedToValue","withChecked","hoc","WithSwitch","checked","Space","AntdSwitch","Switch","fieldName","checkedProps","createWithFieldDecorator","decoratorList","WrappedComponent","TargetComponent","compose","forwardedRef","labelRender","tips","Tooltip","content","labelHidden","Icon","type","ForwardComponent","forwardRef","keys","filter","key","indexOf","forEach","withInputDefaultPlaceholder","FormattedMessage","id","moduleName","values","text","withSelectDefaultPlaceholder","_ref3","withLang","group","useGroup","groupName","get","groupIndex","_get","lang","useFormLang","Array","isArray","length","map","item","_createElement","name","options","ignoreList","disabledList","fields","getCurrentField","hasOwnProperty","find","newProps","langName","langLabel","disabled","rule","ReactInput","InputNumber","ReactInputNumber","Password","DatePicker","ReactDatePicker","MonthPicker","RangePicker","WeekPicker","TimePicker","ReactTimePicker","DatePickerToday","_ref4","soFarText","formatMessage","useIntl","ReactDatePickerToday","Checkbox","DateRangePicker","TimeRangePicker","RadioGroup","CheckboxGroup","Rate","Slider","SalaryInput","TypeDateRangePicker","MoneyInput","PhoneNumber","Upload","Avatar","FunctionSelect","IndustrySelect","Cascader","TreeSelect","ReactTreeSelect","Select","ReactSelect","TextArea","ReactTextArea","AdvancedSelect","AdvancedSelectField","SuperSelect","SuperSelectField","SuperSelectTableList","SuperSelectTableListField","SuperSelectUser","SuperSelectUserField","fieldDecorator","context","useContext","Provider","Consumer","createContext","createValueWithMaxLength","maxLength","single","setValue","message","newValue","renderDisplayLabel","mapping","onClose","mappingItem","Tag","closable","preventDefault","ModalContent","propsValue","extra","showSelectedTag","renderSelectedContent","useState","propsValueRef","useRef","current","modalOpen","setModalOpen","App","useApp","setValueWithMaxLength","error","useEffect","useImperativeHandle","close","open","onConfirm","footer","direction","PopupContent","placement","inputContent","overlayWidth","wrapClassName","setOpen","Popover","onOpenChange","overlayClassName","arrow","stopPropagation","trigger","DisplayLabel","withFetch","_ref5","setFetchApi","fetchApi","hover","setHover","modalRef","popupRef","selectInnerContext","valueState","getPopupContainer","isPopup","inputContentRender","fetchApiRef","data","isComplete","inner","slice","index","splice","_ref6","align","wrap","SimpleBar","onMouseOver","onMouseOut","size","modalSize","disabledScroller","title","SelectInnerInput","_ref7","displayItems","searchText","setSearchText","setMapping","Map","appendMapping","items","newItems","newMapping","clone","set","transformValue","setValueInType","isNil","valueType","getValueInType","last","defaultValue","setItems","setData","dataFormat","loading","onRequestSuccess","defaultProps","loader","Download","useDownload","downloadBlobFile","useEdit","apis","onEditModalShow","modalApi","formProps","dropRight","filename","split","join","onSubmit","async","onEdit","formData","FormInfo","OptionButtons","_props$apis","handlerEdit","FileListOptionButtons","onDelete","renderModal","onCancel","p","FileList","FileButton","FileButtonBase","FileLink","originName","useFileModal","useFileModalProps","useRefCallback","currentTab","setCurrentTab","previewMap","previewList","getPermission","currentPreviewFileId","setCurrentPreviewFileId","itemApis","maxWidth","justify","Segmented","variant","popupMatchSelectWidth","userName","date","Option","FileType","Typography","Text","ellipsis","dayjs","format","hasPreview","count","locale","en-US","zh-CN","useReactContext","DragButton","getDragButtonEl","UploadButton","accept","onFileSelected","FileInput","multiple","input","DragAreaOuter","fileSize","defaultOpen","dragButtonRef","dragOuterRef","useOutside","contains","IntlProvider","importMessages","el","onDragEnter","UploadTips","icon","renderTips","defaultTips","tipsText","str","replace","onDragOver","dataTransfer","dropEffect","onDrop","files","fileList","from","file","acceptFunc","onDragEnd","shape","FileListInner","_previewMap$get","_previewMap$get2","MAX_VALUE","_previewList","setList","infoItemRenders","defaultTab","defaultPreviewFileId","currentApis","titleExtra","baseApis","usePreset","ossId","uploadingList","useFileUpload","concurrentCount","onAdd","onSave","response","_len","arguments","args","_key","res","onUpload","ossUpload","useMemo","onPreview","newList","findIndex","success","titleExtraInner","Title","Divider","List","dataSource","FilePreview","src","Empty","image","PRESENTED_IMAGE_SIMPLE","DragArea","defaultList","flex","subtitle","importantInfo","importantInfoType","moreInfo","AntdTooltip","rootClassName","every","tooltipTitle","fetchContent","showLoading","loadingClassName","force","useFetch","auto","isLoading","send","Spin","createdField","User","UserField","Table","TableField","createdList","renderList","createListField","openApi","useFormContext","LoadingButton","SelectField","useUIDecorator","numberFormat","_value","isNaN","Math","abs","toFixed","FormField","isError","marginBottom","SalaryInputField","onBlur","isRange","showMonth","remindUnit","req","_placeholder","_placeholderInput","isTenThousand","isFace","isOther","transform","useSimulationBlur","min","max","includes","formatter","textAlign","description","color","Enum","width","borderLeft","borderRight","pointerEvents","addonAfter","v","month","defaultPropsApi","defaultPropsValue","SalaryField","_props$rule","errorRender","currentError","emitter","formState","targetFieldInfo","formStateRef","setCurrentError","addListener","validate","currentField","status","errMsg","util","compileErrMsg","msg","remove","useErrorMsg","isHover","setIsHover","errorContent","closeHover","popoverChildrenRef","popoverContentRef","useClickOutside","setWidth","useLayoutEffect","callback","querySelector","clientWidth","resizeObserver","ResizeObserver","observe","mutationObserver","MutationObserver","subtree","childList","disconnect","transitionName","onMouseEnter","helperGuideName","HelperGuide","ConfirmButton","Drawer","useFormDrawer","drawer","useDrawer","FormDrawerButton","formDrawer","TypeDateRangePickerField","_olderREQ","RULES","REQ","_olderLEN","LEN","otherOptions","interceptors","use","output","_value$id","_value$id$split","Date","valueOf","toISOString","push","originalName","default","loadCountyList","loadModule","countyList","countyAbMap","ab","country_code","countyCodeMap","code","matcher","match","getLocaleMsg","EMAIL","LENGTH_EQUAL","end","LENGTH_MORE","start","LENGTH_LESS","preset","merge","rules","ruleName","result","test","PHONE_NUMBER_INPUT","ARRAY_LENGTH","datePicker","interceptor","rangeDatePicker","inputNumber","changeOnWheel","textArea","autoSize","minRows","maxRows","globalProps","labelTips","HelperGuideLabel","localeModuleName","withDecorator","footerButtons","cancelText","saveText","autoClose","ButtonComponent","CancelButton","SubmitButton","innerRender","_formProps","Form","IndustrySelectField","FunctionSelectField","CascaderField","createTreeUtils","TextField","height","overflow","reactFormAntd","FormItem","ErrorTip","SetPreset","isPreset","setIsPreset","formInfo","Promise","resolve","formPreset","then","FormLangProvider","HelperGuideProvider","ReactForm","createWithIntl","addText","important","Outer","deleteButtonProps","SubList","listRender","allowRemove","onRemove","danger","allowAdd","add","isUnshift","UploadField","showUploadList","previewFileList","extensionNames","Flex","vertical","InputFileButton","omit","isNotEmpty","formUtils","MoneyInputField","chineseEmpty","showError","errorDesc","transformMoneyToChinese","moneyFormat","setStatus","inputNumberProps","controls","precision","MAX_NUM","parser","parserValue","val","changeMoneyToChinese","toChineseCharacter","FormStepState","currentIndex","setCurrentIndex","stepCacheRef","isLastStep","currentProps","completeText","nextText","computedModalCommonProps","_stepCacheRef$current","otherProps","stepSection","Steps","useFormStepModal","FormStepModalButton","TableList","FormApiButton","FormModal","FormStepModal","FormDrawer","MultiField","widget","utils","AvatarDisplay","Image","withInputFile","gender","defaultAvatar","displayAvatar","dataURLtoBlob","dataURL","arr","_arr","substring","mime","bstr","atob","n","u8arr","Uint8Array","charCodeAt","Blob","ControlAvatarEditor","propsImage","borderRadius","preview","getApi","border","intl","baseWidth","setBaseWidth","outerRef","setImage","scale","setScale","rotate","setRotate","previewImg","setPreviewImg","editorRef","getImage","canvas","targetCanvas","document","createElement","targetCtx","getContext","drawImage","window","File","toDataURL","makePreviewInner","makePreview","useDebouncedCallback","AvatarEditor","onImageReady","onImageChange","tooltip","step","InputFileLink","AntdAvatar","useDropModal","dropModalSize","AvatarField","_apis$file","openEditor","defaultAvatarIcon","setLoading","upload","dropRef","dropModal","doUpload","finally","TableListBase","headerRender","headerItemRender","isReq","Link","MultiFieldBase"],"sourceRoot":""}
|
|
1
|
+
{"version":3,"file":"static/js/4474.8524d82a.chunk.js","mappings":"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","sources":["components/FlexBox/index.js","components/FormInfo/fields/AddressSelect.js","components/FormInfo/FormInfo.js","components/FormInfo/FormModal.js","components/FormInfo/fields/InputUpperCase/index.js","components/FormInfo/fields/ColorPicker.js","components/FormInfo/fields/Switch/index.js","components/FormInfo/fields/index.js","webpack://@kne-components/components-core/./src/components/FormInfo/SelectInnerInput/style.module.scss?b967","components/FormInfo/SelectInnerInput/context.js","components/FormInfo/SelectInnerInput/index.js","components/File/Download.js","components/File/List/index.js","components/File/index.js","webpack://@kne-components/components-core/./src/components/FileList/style.module.scss?bd2d","components/FileList/Title.js","components/FileList/locale/index.js","components/FileList/context.js","components/FileList/DragArea.js","components/FileList/FileList.js","components/FileList/FileUpload.js","webpack://@kne-components/components-core/./src/components/Tooltip/style.module.scss?c30c","components/Tooltip/Tooltip.js","components/Tooltip/TooltipInfoLabel.js","components/Tooltip/TooltipFetch.js","components/FormInfo/fields/AdvancedSelect.js","components/FormInfo/FormItem.js","components/FormInfo/fields/SuperSelect.js","components/FormInfo/FormApiButton.js","webpack://@kne-components/components-core/./src/components/FormInfo/fields/SalaryInput/style.module.scss?6af8","components/FormInfo/fields/SalaryInput/index.js","components/FormInfo/ErrorTip.js","components/FormInfo/FormLangProvider.js","components/FormInfo/HelperGuideLabel.js","webpack://@kne-components/components-core/./src/components/FormInfo/style.module.scss?d1ff","components/ConfirmButton/index.js","components/FormInfo/FormDrawer.js","components/FormInfo/locale/index.js","components/FormInfo/fields/TypeDateRangePicker.js","components/FormInfo/preset.js","components/FormInfo/computedModalCommonProps.js","components/FormInfo/fields/IndustrySelect.js","components/FormInfo/fields/FunctionSelect.js","components/FormInfo/fields/Cascader.js","components/FormInfo/fields/Text/index.js","components/FormInfo/formModule.js","components/FormInfo/Form.js","components/FormInfo/List.js","webpack://@kne-components/components-core/./src/components/FormInfo/fields/Upload/style.module.scss?391a","components/FormInfo/fields/Upload/index.js","webpack://@kne-components/components-core/./src/components/FormInfo/fields/MoneyInput/style.module.scss?25be","components/FormInfo/fields/MoneyInput/index.js","components/FormInfo/FormStepModal.js","components/FormInfo/index.js","webpack://@kne-components/components-core/./src/components/FormInfo/fields/Avatar/style.module.scss?d6b0","components/FormInfo/fields/Avatar/index.js","components/FormInfo/TableList.js","components/FormInfo/MultiField.js"],"sourcesContent":["import {FlexBoxFetch, default as FlexBox} from \"@kne/flex-box\";\n\nexport * from '@kne/flex-box';\n\nFlexBox.Fetch = FlexBoxFetch;\nexport default FlexBox;\n","import { hooks } from \"@kne/react-form-antd\";\nimport { AddressInputField, AddressSelectField } from \"@components/Common\";\n\nconst { useOnChange, useDecorator } = hooks;\nconst AddressSelect = (props) => {\n const render = useOnChange(\n Object.assign({}, { placeholder: \"请选择\" + props.label }, props)\n );\n return render(AddressSelectField);\n};\n\nAddressSelect.Field = AddressSelectField;\nAddressSelect.AddressEnum = AddressSelectField.AddressEnum;\nAddressSelect.createAddressApi = AddressSelectField.createAddressApi;\nAddressSelect.withAddressApi = AddressSelectField.withAddressApi;\n\nexport default AddressSelect;\n\nexport const AddressInput = (props) => {\n const render = useDecorator(\n Object.assign(\n {},\n {\n placeholder: \"请选择\" + props.label,\n inputPlaceholder: \"请输入\" + props.label,\n },\n props\n )\n );\n return render(AddressInputField);\n};\n\nAddressInput.Field = AddressInputField;\n","import {Row, Col} from \"antd\";\nimport {cloneElement} from \"react\";\nimport InfoPage from \"@components/InfoPage\";\nimport {useFlexBox} from \"@components/FlexBox\";\nimport {FormInfo as FormInfoBase} from '@kne/react-form-plus';\nimport style from \"./style.module.scss\";\nimport classnames from \"classnames\";\n\nconst FormInfo = ({\n list = [],\n groupArgs,\n itemRender,\n column = 2,\n gap,\n className,\n outer = <InfoPage.Part/>,\n children: renderChildren,\n ...props\n }) => {\n const isFlexBox = !(Number.isInteger(column) && column > 0);\n const {ref: flexBoxRef, column: flexBoxColumn} = useFlexBox(isFlexBox ? column : {});\n\n const renderInner = (column, notLayout) => {\n return <FormInfoBase list={list} column={column} groupArgs={groupArgs} itemRender={(children, props) => {\n return typeof itemRender === 'function' ? itemRender(children, props) :\n <Col span={props.span}>{children}</Col>;\n }}>{(children, props) => {\n return <Row\n gutter={[gap || 24, 0]}\n className={classnames({\n [style[\"column-not-layout\"]]: notLayout,\n })}\n >{typeof renderChildren === 'function' ? renderChildren(children, props) : children}</Row>\n }}</FormInfoBase>;\n };\n\n const renderColumn = () => {\n if (!isFlexBox) {\n return renderInner(column);\n }\n if (flexBoxColumn) {\n return renderInner(flexBoxColumn.col);\n }\n\n return renderInner(2, true);\n };\n\n return cloneElement(outer, Object.assign({}, props, {\n className: classnames(className, style[\"form-info\"]),\n }), <>\n <div ref={flexBoxRef}/>\n {renderColumn()}\n </>);\n};\n\nexport default FormInfo;\n","import Modal, { useModal } from \"@components/Modal\";\nimport FetchButton from \"@common/components/FetchButton\";\nimport { Button } from \"antd\";\nimport computedCommonProps from \"./computedModalCommonProps\";\nimport style from \"./style.module.scss\";\n\nconst FormModal = (props) => {\n return (\n <Modal\n {...computedCommonProps(\n Object.assign({}, props, { className: style[\"form-modal\"] })\n )}\n />\n );\n};\n\nexport default FormModal;\n\nexport const useFormModal = () => {\n const modal = useModal();\n return (props) =>\n modal(\n computedCommonProps(\n Object.assign({}, props, { className: style[\"form-modal\"] })\n )\n );\n};\n\nexport const FormModalButton = ({ classNames, ...props }) => {\n const formModal = useFormModal();\n if (!props.api) {\n const { modalProps, ...others } = props;\n return (\n <Button\n {...others}\n onClick={() => {\n formModal(modalProps);\n }}\n />\n );\n }\n return <FetchButton {...props} modalFunc={formModal} />;\n};\n","import { Input } from \"antd\";\nimport useControlValue from \"@kne/use-control-value\";\nimport { createWithRemoteLoader } from \"@kne/remote-loader\";\n\nconst InputUpperCaseField = ({ ...props }) => {\n const [value, onChange] = useControlValue(props);\n\n return (\n <Input\n {...props}\n value={value}\n onChange={(e) => {\n onChange(\n e.target.value ? e.target.value.toUpperCase() : e.target.value,\n e\n );\n }}\n />\n );\n};\n\nconst InputUpperCase = createWithRemoteLoader({\n modules: [\"FormInfo@formModule\"],\n})(({ remoteModules, ...props }) => {\n const [formModule] = remoteModules;\n const { hooks } = formModule;\n const { useDecorator } = hooks;\n const render = useDecorator(\n Object.assign({ placeholder: `请输入${props.label || \"\"}` }, props)\n );\n return render(InputUpperCaseField);\n});\n\nInputUpperCase.field = InputUpperCaseField;\n\nexport default InputUpperCase;\n","import {hooks} from \"@kne/react-form-antd\";\nimport {ColorPicker as ColorPickerFieldAntd} from 'antd';\n\nconst {useOnChange} = hooks;\n\nconst ColorPickerField = (props) => {\n return <ColorPickerFieldAntd {...props} onChange={(value) => {\n return props.onChange(value.toHexString());\n }}/>;\n};\n\nconst ColorPicker = (props) => {\n const render = useOnChange(Object.assign({}, props));\n return render(ColorPickerField);\n};\n\nColorPicker.Field = ColorPicker;\nexport default ColorPicker;\n","import { Switch as AntdSwitch, Space } from \"antd\";\nimport { hooks, hoc } from \"@kne/react-form-antd\";\n\nconst { useOnChange, useCheckedToValue } = hooks;\nconst { withChecked } = hoc;\nconst WithSwitch = withChecked(({ checked, children = null, ...props }) => {\n return (\n <Space>\n <AntdSwitch checked={checked} {...props} />\n {typeof children === \"function\" ? children({ checked }) : children}\n </Space>\n );\n});\n\nconst Switch = (props) => {\n props = Object.assign(\n {},\n {\n fieldName: \"switch\",\n },\n props\n );\n const checkedProps = useCheckedToValue(props);\n const render = useOnChange(checkedProps);\n return render(WithSwitch);\n};\n\nSwitch.Field = AntdSwitch;\n\nexport default Switch;\n","import {\n DatePicker as ReactDatePicker,\n DatePickerToday as ReactDatePickerToday,\n Input as ReactInput,\n InputNumber as ReactInputNumber,\n Select as ReactSelect,\n TextArea as ReactTextArea,\n TimePicker as ReactTimePicker,\n TreeSelect as ReactTreeSelect,\n RadioGroup,\n Checkbox,\n CheckboxGroup,\n Rate,\n Slider,\n} from \"@kne/react-form-antd\";\nimport AdvancedSelectField from \"./AdvancedSelect\";\nimport SuperSelectField, {\n SuperSelectTableList as SuperSelectTableListField, SuperSelectUser as SuperSelectUserField,\n} from \"./SuperSelect\";\nimport AddressSelect, {AddressInput} from \"./AddressSelect\";\nimport Cascader from \"./Cascader\";\nimport ColorPicker from './ColorPicker';\nimport FunctionSelect from \"./FunctionSelect\";\nimport IndustrySelect from \"./IndustrySelect\";\nimport MoneyInput from \"./MoneyInput\";\nimport PhoneNumber from \"./PhoneNumber\";\nimport Switch from \"./Switch\";\nimport Upload from \"./Upload\";\nimport Avatar from \"./Avatar\";\nimport SalaryInput from \"./SalaryInput\";\nimport InputUpperCaseField from \"./InputUpperCase\";\nimport compose from \"@kne/compose\";\nimport {forwardRef} from \"react\";\nimport {FormattedMessage, useIntl} from \"@components/Intl\";\nimport {useGroup} from \"@kne/react-form-antd\";\nimport get from \"lodash/get\";\nimport {get as _get} from \"lodash\";\nimport {useFormLang} from \"@components/FormInfo/FormLangProvider\";\nimport TypeDateRangePicker from \"./TypeDateRangePicker\";\nimport Tooltip from \"@components/Tooltip\";\nimport Icon from \"@components/Icon\";\nimport {Space} from \"antd\";\nimport classnames from \"classnames\";\nimport style from \"../style.module.scss\";\n\nconst createWithFieldDecorator = (decoratorList) => (WrappedComponent) => {\n const TargetComponent = compose(...decoratorList)(({forwardedRef, label, placeholder, ...props}) => {\n return (<WrappedComponent\n {...props}\n label={label}\n placeholder={placeholder}\n labelRender={() => props.tips ? (<Space>\n {label}\n <Tooltip content={props.tips}>\n <span\n className={classnames(style[\"field-tips\"], {\n [style[\"label-hidden\"]]: props.labelHidden,\n })}\n >\n <Icon type=\"icon-xinxi-miaobian\"/>\n </span>\n </Tooltip>\n </Space>) : (label)}\n ref={forwardedRef}\n />)\n });\n const ForwardComponent = forwardRef((props, ref) => {\n return <TargetComponent {...props} forwardedRef={ref}/>;\n });\n Object.keys(WrappedComponent)\n .filter((key) => {\n return [\"$$typeof\", \"render\", \"field\"].indexOf(key) === -1;\n })\n .forEach((key) => {\n ForwardComponent[key] = WrappedComponent[key];\n });\n\n return ForwardComponent;\n};\n\nconst withInputDefaultPlaceholder = (WrappedComponent) => {\n return ({placeholder, label, ...props}) => (<FormattedMessage\n id=\"defaultInputPlaceholder\"\n moduleName=\"FormInfo\"\n values={{label}}\n >\n {(text) => (<WrappedComponent\n {...props}\n label={label}\n placeholder={placeholder || text}\n />)}\n </FormattedMessage>);\n};\n\nconst withSelectDefaultPlaceholder = (WrappedComponent) => {\n return ({placeholder, label, ...props}) => (<FormattedMessage\n id=\"defaultSelectPlaceholder\"\n moduleName=\"FormInfo\"\n values={{label}}\n >\n {(text) => (<WrappedComponent\n {...props}\n label={label}\n placeholder={placeholder || text}\n />)}\n </FormattedMessage>);\n};\n\nconst withLang = (WrappedComponent) => {\n return (props) => {\n const group = useGroup();\n const groupName = get(group, \"name\");\n const groupIndex = _get(group, \"index\");\n const lang = useFormLang();\n if (lang && Array.isArray(lang) && lang.length > 0) {\n return lang.map((item) => {\n if (typeof item === \"string\") {\n return <WrappedComponent {...props} key={item}/>;\n }\n const {name, label, options} = item;\n const ignoreList = get(options, \"ignore\", []), disabledList = get(options, \"disabled\", []),\n fields = get(options, \"fields\", []);\n const getCurrentField = (item) => props.name === item.name && !(item.hasOwnProperty(\"groupName\") && item.groupName !== groupName) && !(item.hasOwnProperty(\"groupIndex\") && item.groupIndex !== groupIndex);\n\n if (ignoreList.length > 0 && ignoreList.find(getCurrentField)) {\n return null;\n }\n\n if (fields.length > 0 && !fields.find(getCurrentField)) {\n return null;\n }\n\n let newProps = Object.assign({}, props, {\n name: get(options, \"nameTransform\", (name, langName) => `${name}${langName}`)(props.name, name),\n label: get(options, \"labelTransform\", (label, langLabel) => label && `${label}${langLabel}`)(props.label, label),\n });\n\n if (disabledList.length > 0 && disabledList.find(getCurrentField)) {\n newProps.disabled = true;\n newProps.rule = \"\";\n }\n return <WrappedComponent {...newProps} key={name}/>;\n });\n }\n\n return <WrappedComponent {...props} />;\n };\n};\n\nconst Input = createWithFieldDecorator([withLang, withInputDefaultPlaceholder])(ReactInput);\n\nconst InputNumber = createWithFieldDecorator([withLang, withInputDefaultPlaceholder,])(ReactInputNumber);\nInput.Password = createWithFieldDecorator([withLang, withInputDefaultPlaceholder,])(ReactInput.Password);\n\nconst DatePicker = createWithFieldDecorator([withLang, withSelectDefaultPlaceholder,])(ReactDatePicker);\nDatePicker.MonthPicker = createWithFieldDecorator([withLang, withSelectDefaultPlaceholder,])(ReactDatePicker.MonthPicker);\n\nDatePicker.RangePicker = createWithFieldDecorator([withLang, withSelectDefaultPlaceholder,])(ReactDatePicker.RangePicker);\n\nDatePicker.WeekPicker = createWithFieldDecorator([withLang, withSelectDefaultPlaceholder,])(ReactDatePicker.WeekPicker);\n\nconst TimePicker = createWithFieldDecorator([withLang, withSelectDefaultPlaceholder,])(ReactTimePicker);\n\nTimePicker.RangePicker = createWithFieldDecorator([withLang, withSelectDefaultPlaceholder,])(ReactTimePicker.RangePicker);\n\nconst DatePickerToday = createWithFieldDecorator([withLang])(({placeholder, label, soFarText, ...props}) => {\n const {formatMessage} = useIntl({moduleName: \"FormInfo\"});\n return (<ReactDatePickerToday\n {...props}\n label={label}\n placeholder={[formatMessage({id: \"startDate\"}), formatMessage({id: \"endDate\"}),]}\n soFarText={soFarText || formatMessage({id: \"soFarText\"})}\n />);\n});\n\nconst fields = {\n Input,\n Checkbox,\n Password: Input.Password,\n InputNumber,\n DatePicker,\n MonthPicker: DatePicker.MonthPicker,\n WeekPicker: DatePicker.WeekPicker,\n DateRangePicker: DatePicker.RangePicker,\n TimeRangePicker: TimePicker.RangePicker,\n TimePicker,\n DatePickerToday,\n RadioGroup: createWithFieldDecorator([withLang])(RadioGroup),\n CheckboxGroup: createWithFieldDecorator([withLang])(CheckboxGroup),\n Rate: createWithFieldDecorator([withLang])(Rate),\n Switch: createWithFieldDecorator([withLang])(Switch),\n Slider: createWithFieldDecorator([withLang])(Slider),\n SalaryInput: createWithFieldDecorator([withLang, withInputDefaultPlaceholder])(SalaryInput),\n TypeDateRangePicker: createWithFieldDecorator([withLang])(TypeDateRangePicker),\n MoneyInput: createWithFieldDecorator([withLang, withInputDefaultPlaceholder])(MoneyInput),\n PhoneNumber: createWithFieldDecorator([withLang, withInputDefaultPlaceholder])(PhoneNumber),\n Upload: createWithFieldDecorator([withLang])(Upload),\n Avatar: createWithFieldDecorator([withLang])(Avatar),\n FunctionSelect: createWithFieldDecorator([withLang, withSelectDefaultPlaceholder,])(FunctionSelect),\n IndustrySelect: createWithFieldDecorator([withLang, withSelectDefaultPlaceholder,])(IndustrySelect),\n Cascader: createWithFieldDecorator([withLang, withSelectDefaultPlaceholder])(Cascader),\n ColorPicker: createWithFieldDecorator([withLang, withSelectDefaultPlaceholder])(ColorPicker),\n AddressSelect: createWithFieldDecorator([withLang, withSelectDefaultPlaceholder,])(AddressSelect),\n AddressInput: createWithFieldDecorator([withLang, withSelectDefaultPlaceholder,])(AddressInput),\n TreeSelect: createWithFieldDecorator([withLang, withSelectDefaultPlaceholder,])(ReactTreeSelect),\n ReactInputNumber: createWithFieldDecorator([withLang, withInputDefaultPlaceholder,])(ReactInputNumber),\n InputUpperCase: createWithFieldDecorator([withLang, withInputDefaultPlaceholder,])(InputUpperCaseField),\n Select: createWithFieldDecorator([withLang, withSelectDefaultPlaceholder])(ReactSelect),\n TextArea: createWithFieldDecorator([withLang, withInputDefaultPlaceholder])(ReactTextArea),\n AdvancedSelect: createWithFieldDecorator([withLang, withSelectDefaultPlaceholder,])(AdvancedSelectField),\n SuperSelect: createWithFieldDecorator([withLang, withSelectDefaultPlaceholder,])(SuperSelectField),\n SuperSelectTableList: createWithFieldDecorator([withLang, withSelectDefaultPlaceholder,])(SuperSelectTableListField),\n SuperSelectUser: createWithFieldDecorator([withLang, withSelectDefaultPlaceholder,])(SuperSelectUserField),\n};\n\nexport default fields;\n\nexport const fieldDecorator = {\n createWithFieldDecorator, withInputDefaultPlaceholder, withSelectDefaultPlaceholder, withLang,\n};\n","// extracted by mini-css-extract-plugin\nexport default {\"ant-tag\":\"style_ant-tag__7ct2q__DHs+D\",\"overlay\":\"style_overlay__CXfU5__DHs+D\",\"input\":\"style_input__+OpvV__DHs+D\",\"is-disabled\":\"style_is-disabled__uX4qq__DHs+D\",\"input-icon\":\"style_input-icon__E3NjK__DHs+D\",\"large\":\"style_large__vMozz__DHs+D\",\"small\":\"style_small__ubqQ+__DHs+D\",\"input-inner\":\"style_input-inner__sY-6k__DHs+D\",\"input-custom\":\"style_input-custom__Kxq3n__DHs+D\",\"display-content\":\"style_display-content__qA1jn__DHs+D\",\"overlay-footer-extra\":\"style_overlay-footer-extra__yCzWX__DHs+D\",\"selected-tag\":\"style_selected-tag__BZsMM__DHs+D\",\"selected-tag-list\":\"style_selected-tag-list__As0ho__DHs+D\",\"selected-tag-inner\":\"style_selected-tag-inner__2NH59__DHs+D\",\"text-inner\":\"style_text-inner__Bq2Ji__DHs+D\",\"placeholder\":\"style_placeholder__odotY__DHs+D\",\"is-modal\":\"style_is-modal__4cj8L__DHs+D\",\"overlay-content\":\"style_overlay-content__kpGRn__DHs+D\"};","import createContext from \"@common/utils/createContext\";\n\nexport const { context, useContext, Provider, Consumer } = createContext();\n\nexport default context;\n","import style from \"./style.module.scss\";\nimport { Provider, useContext } from \"./context\";\nimport {\n forwardRef,\n useEffect,\n useImperativeHandle,\n useRef,\n useState,\n} from \"react\";\nimport useControlValue from \"@kne/use-control-value\";\nimport { withFetch } from \"@kne/react-fetch\";\nimport get from \"lodash/get\";\nimport { App, Popover, Space, Tag } from \"antd\";\nimport classnames from \"classnames\";\nimport Modal from \"@components/Modal\";\nimport Icon from \"@components/Icon\";\nimport isNil from \"lodash/isNil\";\nimport clone from \"lodash/clone\";\nimport last from \"lodash/last\";\nimport SimpleBar from \"@common/components/SimpleBar\";\n\nconst createValueWithMaxLength =\n ({ maxLength, single, setValue, value, message }) =>\n (newValue) =>\n setValue(\n (() => {\n if (\n !single &&\n Number.isInteger(maxLength) &&\n maxLength > 0 &&\n newValue.length > maxLength\n ) {\n message(`最多选择${maxLength}个`);\n return value;\n }\n return newValue;\n })()\n );\n\nconst renderDisplayLabel = ({ single, value, mapping, onClose }) => {\n if (!value || !Array.isArray(value) || value.length === 0) {\n return null;\n }\n\n if (single) {\n return (\n <span className={style[\"text-inner\"]}>\n {get(mapping.get(value[0]), \"label\") || value[0]}\n </span>\n );\n }\n\n return value.map((item) => {\n const mappingItem = mapping.get(item);\n return (\n <Tag\n key={item}\n className={style[\"display-tag\"]}\n closable\n onClose={(e) => {\n e.preventDefault();\n onClose(item, mappingItem);\n }}\n >\n <span className={style[\"tag-inner\"]}>\n {get(mappingItem, \"label\") || item}\n </span>\n </Tag>\n );\n });\n};\n\nconst ModalContent = forwardRef(\n (\n {\n value: propsValue,\n onChange,\n extra,\n showSelectedTag,\n renderSelectedContent,\n children,\n ...props\n },\n ref\n ) => {\n const [value, setValue] = useState(propsValue);\n const propsValueRef = useRef(propsValue);\n propsValueRef.current = propsValue;\n const [modalOpen, setModalOpen] = useState(false);\n const { message } = App.useApp();\n const setValueWithMaxLength = createValueWithMaxLength({\n maxLength: props.maxLength,\n single: props.single,\n setValue,\n value,\n message: message.error,\n });\n useEffect(() => {\n if (modalOpen) {\n setValue(propsValueRef.current);\n }\n }, [modalOpen]);\n useImperativeHandle(ref, () => {\n return {\n modalOpen: () => {\n setModalOpen(true);\n },\n close: () => {\n setModalOpen(false);\n },\n };\n });\n return (\n <Modal\n {...props}\n open={modalOpen}\n onConfirm={() => {\n onChange(value);\n }}\n onClose={() => {\n setModalOpen(false);\n }}\n footer={\n (showSelectedTag || extra) && (\n <Space direction=\"vertical\" className={style[\"overlay-footer\"]}>\n {extra && (\n <div className={style[\"overlay-footer-extra\"]}>{extra}</div>\n )}\n {showSelectedTag &&\n renderSelectedContent({\n value,\n setValue: setValueWithMaxLength,\n })}\n </Space>\n )\n }\n >\n {typeof children === \"function\"\n ? children({ value, setValue: setValueWithMaxLength })\n : children}\n </Modal>\n );\n }\n);\n\nconst PopupContent = forwardRef(\n (\n {\n value,\n setValue,\n children,\n renderSelectedContent,\n showSelectedTag,\n placement,\n inputContent,\n single,\n extra,\n overlayWidth,\n wrapClassName,\n ...props\n },\n ref\n ) => {\n const [open, setOpen] = useState(false);\n useImperativeHandle(\n ref,\n () => {\n return {\n close: () => {\n setOpen(false);\n },\n };\n },\n []\n );\n return (\n <Popover\n {...props}\n open={open}\n onOpenChange={setOpen}\n overlayClassName={style[\"overlay\"]}\n arrow={false}\n content={\n <div\n style={overlayWidth ? { \"--overlay-width\": overlayWidth } : {}}\n className={style[\"overlay-content\"]}\n onClick={(e) => {\n e.stopPropagation();\n }}\n >\n <div className={style[\"overlay-inner\"]}>\n {typeof children === \"function\"\n ? children({\n value,\n setValue: (newValue) => {\n !(single && value[0] === newValue[0]) &&\n setValue(newValue);\n single && setOpen(false);\n },\n })\n : children}\n </div>\n {(showSelectedTag || extra) && (\n <div className={style[\"overlay-footer\"]}>\n {extra && (\n <div className={style[\"overlay-footer-extra\"]}>{extra}</div>\n )}\n {showSelectedTag && renderSelectedContent({ value, setValue })}\n </div>\n )}\n </div>\n }\n trigger=\"click\"\n placement={placement}\n >\n <div className={style[\"input-inner\"]}>{inputContent}</div>\n </Popover>\n );\n }\n);\n\nconst DisplayLabel = withFetch(\n ({ setFetchApi, wrapClassName, ...fetchApi }) => {\n const [hover, setHover] = useState(false);\n const modalRef = useRef(null);\n const popupRef = useRef(null);\n const selectInnerContext = useContext();\n const { valueState, mapping, props } = selectInnerContext;\n const [value, setValue] = valueState;\n const {\n single,\n placement,\n getPopupContainer,\n placeholder,\n isPopup,\n disabled,\n showSelectedTag,\n extra,\n inputContent: inputContentRender,\n } = props;\n const fetchApiRef = useRef(fetchApi);\n fetchApiRef.current = fetchApi;\n\n useEffect(() => {\n setFetchApi(\n Object.assign({}, fetchApiRef.current, {\n data: fetchApi.data,\n isComplete: fetchApi.isComplete,\n })\n );\n }, [fetchApi.data, setFetchApi, fetchApi.isComplete]);\n\n const inner = renderDisplayLabel({\n single,\n value,\n mapping,\n onClose: (item) => {\n setValue((value) => {\n const newValue = value.slice(0);\n const index = value.indexOf(item);\n index > -1 && newValue.splice(index, 1);\n return newValue;\n });\n },\n });\n\n const renderSelectedContent = ({ value, setValue }) => (\n <Space className={style[\"selected-tag\"]} align={\"center\"} wrap>\n <div>\n 已选\n {!props.single &&\n Number.isInteger(props.maxLength) &&\n props.maxLength > 0\n ? `(${value.length}/${props.maxLength})`\n : \"\"}\n :\n </div>\n <SimpleBar className={style[\"selected-tag-list\"]}>\n <div className={style[\"selected-tag-inner\"]}>\n {renderDisplayLabel({\n value,\n mapping,\n onClose: (item) => {\n setValue((value) => {\n const newValue = value.slice(0);\n const index = value.indexOf(item);\n index > -1 && newValue.splice(index, 1);\n return newValue;\n });\n },\n })}\n </div>\n </SimpleBar>\n </Space>\n );\n\n const inputContent = inputContentRender ? (\n inputContentRender(selectInnerContext)\n ) : (\n <Space\n className={style[\"display-content\"]}\n onMouseOver={() => {\n setHover(true);\n }}\n onMouseOut={() => {\n setHover(false);\n }}\n >\n <div>\n {inner || <span className={style[\"placeholder\"]}>{placeholder}</span>}\n </div>\n {hover && value && value.length > 0 && !disabled ? (\n <Icon\n className={classnames(\n style[\"close\"],\n style[\"input-icon\"],\n \"close\",\n \"input-icon\"\n )}\n type=\"icon-shibai\"\n onClick={(e) => {\n e.stopPropagation();\n setValue([]);\n }}\n />\n ) : (\n <Icon\n className={classnames(\n style[\"input-icon\"],\n \"input-icon-arrow\",\n \"input-icon\"\n )}\n type=\"icon-arrow-thin-down\"\n />\n )}\n </Space>\n );\n\n if (isPopup) {\n return (\n <PopupContent\n ref={popupRef}\n overlayWidth={props.overlayWidth}\n value={value}\n setValue={setValue}\n single={single}\n inputContent={inputContent}\n extra={\n typeof extra === \"function\"\n ? extra({\n close: () => popupRef.current.close(),\n context: selectInnerContext,\n })\n : extra\n }\n renderSelectedContent={renderSelectedContent}\n showSelectedTag={showSelectedTag}\n trigger=\"click\"\n placement={placement}\n getPopupContainer={getPopupContainer}\n >\n {props.children}\n </PopupContent>\n );\n }\n\n return (\n <div\n className={style[\"input-inner\"]}\n onClick={() => {\n modalRef.current.modalOpen();\n }}\n >\n <ModalContent\n size={props.modalSize}\n ref={modalRef}\n single={props.single}\n maxLength={props.maxLength}\n disabledScroller\n wrapClassName={classnames(\n style[\"overlay\"],\n style[\"is-modal\"],\n wrapClassName\n )}\n title={props.placeholder}\n value={value}\n onChange={setValue}\n extra={\n typeof extra === \"function\"\n ? extra({\n close: () => modalRef.current.close(),\n context: selectInnerContext,\n })\n : extra\n }\n showSelectedTag={showSelectedTag}\n renderSelectedContent={renderSelectedContent}\n >\n {props.children}\n </ModalContent>\n {inputContent}\n </div>\n );\n }\n);\n\nconst getValueInType = (value, mapping, type) => {\n if (type !== \"all\") {\n return value;\n }\n return value.map((item) => mapping.get(item));\n};\n\nconst setValueInType = (value, setMapping, type) => {\n if (type !== \"all\") {\n return value;\n }\n setMapping(value);\n return value.map((item) => item.value);\n};\n\nconst SelectInnerInput = ({\n api,\n className,\n displayItems,\n wrapClassName,\n ...props\n}) => {\n const [searchText, setSearchText] = useState(\"\");\n const [mapping, setMapping] = useState(\n new Map(displayItems.map((item) => [item.value, item]))\n );\n const [fetchApi, setFetchApi] = useState({});\n const { message } = App.useApp();\n const appendMapping = (items) => {\n const newItems = items.filter((item) => mapping.get(item.value) !== item);\n if (newItems.length === 0) {\n return;\n }\n\n setMapping((mapping) => {\n const newMapping = clone(mapping);\n newItems.forEach((item) => {\n newMapping.set(item.value, item);\n });\n return newMapping;\n });\n };\n\n const transformValue = (value) => {\n return setValueInType(\n props.single ? (isNil(value) ? [] : [value]) : value || [],\n appendMapping,\n props.valueType\n );\n };\n\n const [value, setValue] = useControlValue(\n Object.assign(\n {},\n props,\n {\n onChange: (value) => {\n const newValue = getValueInType(value, mapping, props.valueType);\n props.onChange &&\n props.onChange(props.single ? last(newValue) : newValue);\n },\n },\n \"value\" in props\n ? { value: transformValue(props.value) }\n : { defaultValue: transformValue(props.defaultValue) }\n )\n );\n\n const setValueWithMaxLength = createValueWithMaxLength({\n maxLength: props.maxLength,\n single: props.single,\n setValue,\n value,\n message: message.error,\n });\n\n return (\n <Provider\n value={{\n mapping,\n searchText,\n setSearchText,\n appendMapping,\n setItems: (data) => {\n fetchApi.setData(data);\n appendMapping(get(props.dataFormat(data), \"list\", []));\n },\n fetchApi,\n valueState: [value, setValueWithMaxLength],\n props,\n }}\n >\n <div\n className={classnames(\n style[\n `input${\n props.inputContent && typeof props.inputContent === \"function\"\n ? \"-custom\"\n : \"\"\n }`\n ],\n className\n )}\n >\n <DisplayLabel\n {...api}\n wrapClassName={wrapClassName}\n loading={null}\n setFetchApi={setFetchApi}\n onRequestSuccess={(data) => {\n appendMapping(get(props.dataFormat(data), \"list\", []));\n api.onRequestSuccess && api.onRequestSuccess(data);\n }}\n />\n </div>\n </Provider>\n );\n};\n\nSelectInnerInput.defaultProps = {\n placeholder: \"请选择\",\n displayItems: [],\n extra: null,\n api: {\n loader: () => [],\n },\n dataFormat: (data) => {\n return { list: data };\n },\n placement: \"bottomLeft\",\n getPopupContainer: null,\n showSelectedTag: true,\n};\n\nSelectInnerInput.useContext = useContext;\n\nexport default SelectInnerInput;\n","import { Download, useDownload, downloadBlobFile } from \"@kne/react-file\";\n\nDownload.useDownload = useDownload;\nDownload.downloadBlobFile = downloadBlobFile;\n\nexport default Download;\nexport { useDownload, downloadBlobFile };\n","import {FileList, FileListOptionButtons} from \"@kne/react-file\";\nimport dropRight from \"lodash/dropRight\";\nimport last from \"lodash/last\";\nimport FormInfo, {Input, useFormModal} from \"@components/FormInfo\";\nimport Modal from \"@components/Modal\";\n\nconst useEdit = ({apis}) => {\n const formModal = useFormModal();\n return typeof apis?.onEditModalShow === 'function' ? apis.onEditModalShow : (item, apis) => {\n const modalApi = formModal({\n size: \"small\",\n title: \"修改文件名称\",\n formProps: {\n data: {\n name: dropRight(item.filename.split(\".\")).join(\".\"),\n },\n onSubmit: async (data) => {\n const res =\n apis?.onEdit &&\n (await apis?.onEdit({\n formData: Object.assign({}, data, {\n name: `${data.name}.${last(item.filename.split(\".\"))}`,\n }),\n item,\n }));\n if (res !== false) {\n modalApi.close();\n }\n },\n },\n children: (\n <FormInfo\n column={1}\n list={[<Input name=\"name\" label={\"文件名称\"} rule=\"REQ LEN-0-100\"/>]}\n />\n ),\n });\n };\n};\n\nconst List = ({apis, ...p}) => {\n const handlerEdit = useEdit({apis});\n return (\n <FileList\n {...p}\n apis={apis}\n onEdit={(item) => handlerEdit(item, apis)}\n onDelete={apis?.onDelete}\n renderModal={typeof p.renderModal === 'function' ? p.renderModal : ({onCancel, ...modalProps}) => {\n return <Modal {...Object.assign({}, modalProps)} onClose={onCancel}/>;\n }}\n />\n );\n};\n\nconst OptionButtons = (props) => {\n const handlerEdit = useEdit({apis: props.apis});\n return (\n <FileListOptionButtons\n {...props}\n onEdit={(item) => handlerEdit(item, props.apis)}\n onDelete={props.apis?.onDelete}\n renderModal={typeof props.renderModal === 'function' ? props.renderModal : ({onCancel, ...modalProps}) => {\n return <Modal {...Object.assign({}, modalProps)} onClose={onCancel}/>;\n }}\n />\n );\n};\n\nexport default List;\n\nexport {OptionButtons};\n","import \"@kne/react-file/dist/index.css\";\nimport useRefCallback from \"@kne/use-ref-callback\";\nimport {\n FileButton as FileButtonBase, useFileModalProps, download\n} from \"@kne/react-file\";\nimport Modal, {useModal} from \"@components/Modal\";\nimport classnames from \"classnames\";\n\nexport const FileButton = (p) => {\n return (<FileButtonBase\n {...Object.assign({}, p, {\n modalProps: {\n renderModal: ({onCancel, ...modalProps}) => {\n return (<Modal {...Object.assign({}, modalProps)} onClose={onCancel}/>);\n },\n },\n })}\n />);\n};\n\nexport const FileLink = (p) => {\n const {className, ...props} = Object.assign({}, p);\n return (<FileButton\n {...props}\n className={classnames(className, \"btn-no-padding\")}\n type=\"link\"\n >\n {props.children || props.filename || props.originName}\n </FileButton>);\n};\n\nexport const useFileModal = (p) => {\n const {title, children, footer} = useFileModalProps(Object.assign({}, p));\n const modal = useModal();\n return useRefCallback(() => {\n return modal({\n title, children, footer,\n });\n });\n};\n\nexport {download};\nexport {default as Download, downloadBlobFile, useDownload} from \"./Download\";\nexport {default as List, OptionButtons} from \"./List\";\nexport {default, PrintButton} from \"./File\";","// extracted by mini-css-extract-plugin\nexport default {\"file-list-outer\":\"style_file-list-outer__wPhbb__DHs+D\",\"file-list-title\":\"style_file-list-title__zXM5r__DHs+D\",\"container\":\"style_container__P4RaF__DHs+D\",\"file-preview-inner\":\"style_file-preview-inner__cvE72__DHs+D\",\"file-preview\":\"style_file-preview__M-Asq__DHs+D\",\"drag-area\":\"style_drag-area__Q+lm7__DHs+D\",\"upload-drag-close\":\"style_upload-drag-close__u5o8W__DHs+D\",\"upload-drag-tips\":\"style_upload-drag-tips__z7puZ__DHs+D\",\"upload-drag-icon\":\"style_upload-drag-icon__sGGoS__DHs+D\",\"upload-drag-title\":\"style_upload-drag-title__9Afmb__DHs+D\",\"upload-drag-text\":\"style_upload-drag-text__o38vS__DHs+D\",\"list-item-outer\":\"style_list-item-outer__qfopH__DHs+D\",\"list-item\":\"style_list-item__QUzqW__DHs+D\",\"split\":\"style_split__8HVlD__DHs+D\",\"loading\":\"style_loading__OSlYB__DHs+D\",\"list-options\":\"style_list-options__4l3QJ__DHs+D\",\"list-time\":\"style_list-time__canbk__DHs+D\",\"title-group\":\"style_title-group__8IJkS__DHs+D\",\"upload-btn\":\"style_upload-btn__Q+Jxn__DHs+D\",\"total-count\":\"style_total-count__z1fyd__DHs+D\",\"file-select\":\"style_file-select__mHqyI__DHs+D\",\"file-name\":\"style_file-name__QkvMn__DHs+D\",\"file-select-info\":\"style_file-select-info__fOLiM__DHs+D\",\"file-select-option\":\"style_file-select-option__AbDrD__DHs+D\"};","import style from \"./style.module.scss\";\nimport {Col, Row, Segmented, Select, Space, Typography} from \"antd\";\nimport FileType from \"@kne/react-file-type\";\nimport last from \"lodash/last\";\nimport dayjs from \"dayjs\";\nimport Icon from \"@components/Icon\";\nimport {OptionButtons} from \"@components/File\";\nimport {FormattedMessage} from \"@components/Intl\";\nimport classnames from 'classnames';\n\nconst Title = ({\n currentTab,\n setCurrentTab,\n previewMap,\n previewList,\n getPermission,\n currentPreviewFileId,\n setCurrentPreviewFileId,\n itemApis,\n children,\n maxWidth = 260,\n getPopupContainer,\n }) => {\n return (<div className={style[\"file-list-title\"]}>\n <Row align=\"middle\" justify=\"space-between\" wrap={false}>\n <Col>\n <Space className={classnames(style[\"title-group\"], 'core-file-list-title-group')} size={4}>\n <Segmented\n value={currentTab}\n onChange={setCurrentTab}\n options={[{\n label: (<Space size={4}>\n <Icon type=\"icon-shitu-liebiao\"/>\n <FormattedMessage id=\"listText\" moduleName=\"FileList\"/>\n </Space>), value: \"list\",\n }, {\n label: (<Space size={4}>\n <Icon type=\"icon-shitu-yulan\"/>\n <FormattedMessage\n id=\"previewText\"\n moduleName=\"FileList\"\n />\n </Space>), value: \"preview\",\n },]}\n />\n {currentTab === \"preview\" && currentPreviewFileId && previewMap.get(currentPreviewFileId) && (<>\n <Select\n className={style[\"file-select\"]}\n variant=\"borderless\"\n popupMatchSelectWidth={false}\n value={currentPreviewFileId}\n onChange={setCurrentPreviewFileId}\n getPopupContainer={getPopupContainer}\n >\n {previewList.map(({filename, userName, date, id}) => {\n return (<Select.Option\n className={style[\"file-select-option\"]}\n key={id}\n value={id}\n >\n <Space direction=\"vertical\">\n <Space size={4} align=\"start\">\n <FileType\n type={last(filename.split(\".\"))}\n size={14}\n ></FileType>\n <Typography.Text\n className={style[\"file-name\"]}\n ellipsis\n style={{\"--max-width\": `${maxWidth}px`}}\n >\n {filename}\n </Typography.Text>\n </Space>\n {userName || date ? (<Space\n className={style[\"file-select-info\"]}\n size={24}\n >\n <div>\n <FormattedMessage\n id=\"uploadUser\"\n moduleName=\"FileList\"\n />\n :{userName}\n </div>\n <div>\n <FormattedMessage\n id=\"uploadTime\"\n moduleName=\"FileList\"\n />\n :\n {date && dayjs(date).format(\"YYYY-MM-DD HH:mm:ss\")}\n </div>\n </Space>) : null}\n </Space>\n </Select.Option>);\n })}\n </Select>\n <OptionButtons\n hasPreview={false}\n getPermission={getPermission}\n item={previewMap.get(currentPreviewFileId)}\n apis={itemApis}\n />\n <div className={style[\"total-count\"]}>\n <FormattedMessage\n id=\"totalCount\"\n values={{count: previewList.length}}\n moduleName=\"FileList\"\n />\n </div>\n </>)}\n </Space>\n </Col>\n <Col>{children}</Col>\n </Row>\n </div>);\n};\n\nexport default Title;\n","const importMessages = (locale) => {\n return {\n \"en-US\": () => import(\"./en-US\"),\n \"zh-CN\": () => import(\"./zh-CN\"),\n }[locale]();\n};\n\nexport default importMessages;\n","import { createContext, useContext as useReactContext } from \"react\";\n\nconst context = createContext({});\nexport const { Provider } = context;\n\nexport const useContext = () => {\n return useReactContext(context);\n};\n\nexport default context;\n","import style from \"./style.module.scss\";\nimport {useRef, useState} from \"react\";\nimport {Button, Space, Typography} from \"antd\";\nimport importMessages from \"./locale\";\nimport useOutside from \"@kne/use-click-outside\";\nimport classnames from \"classnames\";\nimport {Provider, useContext} from \"./context\";\nimport Icon from \"@components/Icon\";\nimport {FormattedMessage, useIntl, IntlProvider} from \"@components/Intl\";\nimport {FileInput} from \"@kne/react-file\";\nimport acceptFunc from \"@common/utils/accept\";\n\nexport const DragButton = ({children}) => {\n const {onOpenChange, getDragButtonEl} = useContext();\n return (<div\n ref={getDragButtonEl}\n className={style[\"upload-btn\"]}\n onClick={() => {\n onOpenChange((open) => !open);\n }}\n >\n <Typography.Text className=\"ant-btn\">\n <Icon type=\"icon-tuozhuaishangchuan\"/>\n {children || <FormattedMessage id=\"dragText\" moduleName=\"FileList\"/>}\n </Typography.Text>\n </div>);\n};\n\nexport const UploadButton = ({children}) => {\n const {accept, onFileSelected} = useContext();\n return (<FileInput\n className={classnames(style[\"upload-btn\"], \"btn-no-padding\")}\n accept={accept}\n multiple\n onChange={onFileSelected}\n >\n {({children: input, ...props}) => {\n return (<Button {...props} type=\"text\">\n <Icon type=\"icon-tianjia\"/>\n {children}\n {input}\n </Button>);\n }}\n </FileInput>);\n};\nexport const DragAreaOuter = ({\n title,\n accept = [\".png\", \".jpg\", \".pdf\", \".docx\", \".doc\"],\n fileSize = 20,\n maxLength,\n onFileSelected,\n children,\n className,\n defaultOpen = false\n }) => {\n const [open, onOpenChange] = useState(defaultOpen);\n const dragButtonRef = useRef(null);\n const dragOuterRef = useOutside((e) => {\n if (!dragButtonRef.current) {\n return;\n }\n if (dragButtonRef.current.contains(e.target) || e.target === dragButtonRef.current) {\n return;\n }\n onOpenChange(false);\n });\n return (<IntlProvider importMessages={importMessages} moduleName=\"FileList\">\n <Provider\n value={{\n open, onOpenChange, accept, fileSize, maxLength, onFileSelected, getDragButtonEl: (el) => {\n dragButtonRef.current = el;\n },\n }}\n >\n <Space className={style[\"file-list-outer\"]} direction=\"vertical\">\n {title}\n <div\n className={classnames(style[\"container\"], className)}\n ref={dragOuterRef}\n onDragEnter={() => {\n onOpenChange(true);\n }}\n >\n {children}\n </div>\n </Space>\n </Provider>\n </IntlProvider>);\n};\n\nexport const UploadTips = ({\n icon, title, renderTips = (defaultTips) => {\n return defaultTips;\n }\n }) => {\n const {accept, fileSize, maxLength} = useContext();\n const intl = useIntl({moduleName: \"FileList\"});\n const tipsText = renderTips(intl.formatMessage({id: \"dragTips\"}, {\n accept: accept.map((str) => str.replace(/^\\./, \"\")).join(\"、\"), size: fileSize,\n }), {\n fileSize, maxLength, accept,\n });\n\n return (<div className={classnames(style[\"upload-drag-tips\"], \"upload-drag-tips\")}>\n <div className={style[\"upload-drag-icon\"]}>\n {icon || <Icon type=\"icon-shangchuan\" size={64}/>}\n </div>\n <div className={style[\"upload-drag-title\"]}>\n {title || <FormattedMessage id=\"dragTitle\" moduleName=\"FileList\"/>}\n </div>\n <div className={style[\"upload-drag-text\"]}>{tipsText}</div>\n </div>);\n};\n\nconst DragArea = ({children = <UploadTips/>, className}) => {\n const {open, accept, onOpenChange, onFileSelected} = useContext();\n if (!open) {\n return null;\n }\n return (<div\n className={classnames(style[\"drag-area\"], className)}\n onDragOver={(e) => {\n e.stopPropagation();\n e.preventDefault();\n e.dataTransfer.dropEffect = \"copy\";\n }}\n onDrop={(e) => {\n e.stopPropagation();\n e.preventDefault();\n if (e.dataTransfer.files.length === 0) {\n return;\n }\n onOpenChange(false);\n const fileList = Array.from(e.dataTransfer.files).filter((file) => {\n return acceptFunc(file, accept);\n });\n onFileSelected(fileList);\n }}\n onDragEnd={() => {\n onOpenChange(false);\n }}\n >\n <Button\n className={style[\"upload-drag-close\"]}\n type=\"text\"\n shape=\"circle\"\n size=\"small\"\n icon={<Icon type=\"icon-close-bold\"/>}\n onClick={() => {\n onOpenChange(false);\n }}\n />\n {children}\n </div>);\n};\n\nexport default DragArea;\n","import {useState, useMemo, useEffect} from \"react\";\nimport get from \"lodash/get\";\nimport {App, Space, Divider, Empty} from \"antd\";\nimport Title from \"./Title\";\nimport DragArea, {DragAreaOuter, DragButton, UploadButton} from \"./DragArea\";\nimport {List} from \"@components/File\";\nimport FilePreview from \"@components/FilePreview\";\nimport {useIntl, IntlProvider} from \"@components/Intl\";\nimport {useFileUpload} from \"@kne/react-file\";\nimport {usePreset} from \"@components/Global\";\nimport importMessages from \"./locale\";\nimport style from \"./style.module.scss\";\n\nconst FileListInner = ({\n className,\n maxLength = Number.MAX_VALUE,\n list: _previewList,\n setList,\n infoItemRenders,\n defaultTab = \"list\",\n defaultPreviewFileId,\n apis: currentApis,\n getPermission = () => true,\n titleExtra = null,\n fileSize = 20,\n accept = [\".png\", \".jpg\", \".pdf\", \".docx\", \".doc\"],\n getPopupContainer,\n }) => {\n const {apis: baseApis} = usePreset();\n const apis = Object.assign({}, baseApis, currentApis);\n\n const previewList = (_previewList || []).map((item) => {\n return Object.assign({}, {id: item.ossId}, item);\n });\n\n const {fileList: uploadingList, onFileSelected} = useFileUpload({\n maxLength, multiple: true, value: previewList, onChange: setList, concurrentCount: 1, onAdd: () => {\n setCurrentTab(\"list\");\n }, onSave: async (response, ...args) => {\n if (typeof apis.onSave === \"function\") {\n const res = await apis.onSave(response, ...args);\n return Object.assign({}, {id: res?.ossId}, res);\n }\n return get(response, 'data') || {};\n }, onUpload: apis.onUpload || apis.ossUpload,\n });\n const [currentTab, setCurrentTab] = useState(defaultTab);\n const {formatMessage} = useIntl({moduleName: \"FileList\"});\n const {message} = App.useApp();\n const previewMap = useMemo(() => {\n return new Map(previewList.map((item) => {\n return [item.id, item];\n }));\n }, [previewList]);\n const [currentPreviewFileId, setCurrentPreviewFileId] = useState(defaultPreviewFileId || get(previewList, \"[0].id\", null));\n useEffect(() => {\n if (currentPreviewFileId && previewMap.get(currentPreviewFileId)) {\n return;\n }\n setCurrentPreviewFileId(get(previewList, \"[0].id\", null));\n }, [previewList, previewMap, currentPreviewFileId]);\n const itemApis = {\n ...apis, onPreview: (item) => {\n setCurrentPreviewFileId(item.id);\n setCurrentTab(\"preview\");\n }, onDelete: async (item) => {\n if (apis.onDelete && (await apis.onDelete(item)) === false) {\n return;\n }\n setList((list) => {\n const newList = list.slice(0);\n const index = list.findIndex(({id}) => id === item.id);\n index > -1 && newList.splice(index, 1);\n return newList;\n });\n message.success(formatMessage({id: \"successDelete\"}, {name: item.filename}));\n }, onEdit: async ({formData, item}) => {\n const res = apis.onEdit && (await apis.onEdit({formData, item}));\n if (res !== false) {\n setList((list) => {\n const newList = list.slice(0);\n const index = list.findIndex(({id}) => id === item.id);\n index > -1 && newList.splice(index, 1, Object.assign({}, item, {filename: formData.name}));\n return newList;\n });\n message.success(formatMessage({id: \"successEditFileName\"}, {name: item.filename}));\n }\n\n return res;\n },\n };\n\n const titleExtraInner = typeof titleExtra === \"function\" ? titleExtra({\n currentPreviewFileId, currentTab,\n }) : titleExtra;\n\n return (<div className={className}>\n <DragAreaOuter\n title={<Title\n currentTab={currentTab}\n setCurrentTab={setCurrentTab}\n previewMap={previewMap}\n previewList={previewList}\n getPermission={getPermission}\n currentPreviewFileId={currentPreviewFileId}\n setCurrentPreviewFileId={setCurrentPreviewFileId}\n itemApis={itemApis}\n getPopupContainer={getPopupContainer}\n >\n <Space split={<Divider type=\"vertical\"/>}>\n {titleExtraInner}\n {getPermission(\"add\", {}) ? (<>\n <DragButton>\n {formatMessage({id: 'dragText'})}\n </DragButton>\n <UploadButton>\n {formatMessage({id: 'uploadFile'})}\n </UploadButton>\n </>) : null}\n </Space>\n </Title>}\n fileSize={fileSize}\n maxLength={maxLength}\n onFileSelected={onFileSelected}\n accept={accept}\n defaultOpen={previewList.length === 0}\n >\n {currentTab === \"list\" ? (<List\n dataSource={[...previewList, ...uploadingList]}\n getPermission={getPermission}\n apis={itemApis}\n infoItemRenders={infoItemRenders}\n />) : null}\n {currentTab === \"preview\" ? (currentPreviewFileId ? (<div className={style[\"file-preview-inner\"]}>\n <FilePreview\n className={style[\"file-preview\"]}\n src={previewMap.get(currentPreviewFileId)?.src}\n id={currentPreviewFileId}\n apis={apis}\n filename={previewMap.get(currentPreviewFileId)?.filename}\n />\n </div>) : (<Empty\n image={Empty.PRESENTED_IMAGE_SIMPLE}\n className=\"ant-empty-normal\"\n />)) : null}\n <DragArea/>\n </DragAreaOuter>\n </div>);\n};\n\nconst FileList = (props) => {\n return (<IntlProvider importMessages={importMessages} moduleName=\"FileList\">\n <FileListInner {...props} />\n </IntlProvider>);\n};\n\nexport default FileList;\n","import {Space, Divider, Row, Col} from \"antd\";\nimport DragArea, {DragAreaOuter, DragButton, UploadButton} from \"./DragArea\";\nimport {List} from \"@components/File\";\nimport {useFileUpload} from \"@kne/react-file\";\nimport {usePreset} from \"@components/Global\";\nimport useControlValue from \"@kne/use-control-value\";\nimport get from \"lodash/get\";\n\nconst FileUpload = ({\n maxLength = Number.MAX_VALUE,\n apis: currentApis,\n getPermission = () => true,\n fileSize = 20,\n accept = [\".png\", \".jpg\", \".pdf\", \".docx\", \".doc\"],\n defaultList = [],\n ...props\n }) => {\n const {apis: baseApis} = usePreset();\n const apis = Object.assign({}, baseApis, currentApis);\n const [previewList, setList] = useControlValue({defaultList, ...props}, {\n defaultValue: \"defaultList\",\n value: \"list\",\n onChange: \"setList\",\n });\n const {fileList: uploadingList, onFileSelected} = useFileUpload({\n maxLength,\n multiple: true,\n value: previewList,\n onChange: setList,\n concurrentCount: 1,\n onSave: async (response, ...args) => {\n if (typeof apis.onSave === \"function\") {\n const res = await apis.onSave(response, ...args);\n return Object.assign({}, {id: res?.ossId}, res);\n }\n return get(response, 'data') || {};\n },\n onUpload: apis.ossUpload,\n });\n return (\n <DragAreaOuter\n title={\n <Row>\n <Col flex={1}></Col>\n <Col>\n <Space split={<Divider type=\"vertical\"/>}>\n <DragButton/>\n <UploadButton>上传</UploadButton>\n </Space>\n </Col>\n </Row>\n }\n fileSize={fileSize}\n maxLength={maxLength}\n onFileSelected={onFileSelected}\n accept={accept}\n >\n <List\n dataSource={[...uploadingList, ...previewList]}\n getPermission={getPermission}\n apis={apis}\n />\n <DragArea/>\n </DragAreaOuter>\n );\n};\n\nexport default FileUpload;\n","// extracted by mini-css-extract-plugin\nexport default {\"tooltip\":\"style_tooltip__zHGMI__DHs+D\",\"large\":\"style_large__lvmsm__DHs+D\",\"small\":\"style_small__nUt0r__DHs+D\",\"popup-content\":\"style_popup-content__-rKQN__DHs+D\",\"title\":\"style_title__1EQPq__DHs+D\",\"important-info\":\"style_important-info__qTSZY__DHs+D\",\"error\":\"style_error__yTTq3__DHs+D\",\"warning\":\"style_warning__CMJxz__DHs+D\",\"success\":\"style_success__AvJVx__DHs+D\",\"sub-title\":\"style_sub-title__uD8CH__DHs+D\",\"content\":\"style_content__lzgUz__DHs+D\",\"alone\":\"style_alone__q6q82__DHs+D\",\"fetch-content\":\"style_fetch-content__tEOEV__DHs+D\",\"fetch-loading\":\"style_fetch-loading__tN-WB__DHs+D\",\"title-info-icon\":\"style_title-info-icon__iY8Q+__DHs+D\"};","import { Space, Tooltip as AntdTooltip } from \"antd\";\nimport classnames from \"classnames\";\nimport style from \"./style.module.scss\";\n\nconst Tooltip = ({\n overlayClassName,\n title,\n size,\n subtitle,\n content,\n importantInfo,\n importantInfoType,\n moreInfo,\n ...props\n}) => {\n return (\n <AntdTooltip\n {...props}\n rootClassName={classnames(overlayClassName, style[\"tooltip\"], {\n [style[\"small\"]]: size === \"small\",\n [style[\"large\"]]: size === \"large\",\n })}\n title={\n <Space direction=\"vertical\" className={style[\"popup-content\"]}>\n {title && <div className={style[\"title\"]}>{title}</div>}\n {importantInfo && (\n <div\n className={classnames(style[\"important-info\"], {\n [style[\"success\"]]: importantInfoType === \"success\",\n [style[\"warning\"]]: importantInfoType === \"warning\",\n [style[\"error\"]]: importantInfoType === \"error\",\n })}\n >\n {importantInfo}\n </div>\n )}\n {subtitle && <div className={style[\"sub-title\"]}>{subtitle}</div>}\n {content && (\n <div\n className={classnames(style[\"content\"], {\n [style[\"alone\"]]: [\n title,\n subtitle,\n importantInfo,\n moreInfo,\n ].every((item) => !item),\n })}\n >\n {content}\n </div>\n )}\n {moreInfo && <div>{moreInfo}</div>}\n </Space>\n }\n />\n );\n};\n\nexport default Tooltip;\n","import style from \"./style.module.scss\";\nimport Tooltip from \"./Tooltip\";\nimport Icon from \"@components/Icon\";\n\nconst TooltipInfoLabel = ({ title, tooltipTitle }) => {\n return (\n <div>\n {title}\n {tooltipTitle ? (\n <Tooltip {...tooltipTitle}>\n <span>\n <Icon\n type=\"icon-xinxi-miaobian\"\n className={style[\"title-info-icon\"]}\n size={14}\n />\n </span>\n </Tooltip>\n ) : null}\n </div>\n );\n};\n\nexport default TooltipInfoLabel;\n","import {useState} from \"react\";\nimport {useFetch} from \"@kne/react-fetch\";\nimport {Spin} from \"antd\";\nimport style from \"./style.module.scss\";\nimport Tooltip from \"./Tooltip\";\nimport classnames from \"classnames\";\n\nconst TooltipFetch = ({\n api, children, fetchContent, showLoading = true, loadingClassName, force, ...props\n }) => {\n const [open, setOpen] = useState(false);\n const fetchApi = useFetch(Object.assign({}, api, {auto: false}));\n const {isComplete, isLoading, data, send} = fetchApi;\n return (<Tooltip\n {...Object.assign({}, props, isComplete ? fetchContent(data, fetchApi) : {})}\n open={open}\n onOpenChange={async (open) => {\n if (open && (!isComplete || force)) {\n await send({type: \"refresh\"});\n }\n setOpen(open);\n }}\n >\n <span className={style[\"fetch-content\"]}>\n {children}\n {showLoading && isLoading ? (<Spin\n size=\"small\"\n className={classnames(loadingClassName, style[\"fetch-loading\"])}\n />) : null}\n </span>\n </Tooltip>);\n};\n\nexport default TooltipFetch;\n","import { hooks } from \"@kne/react-form-antd\";\nimport {\n AdvancedSelectField,\n createListField,\n TableField,\n UserField,\n} from \"@components/Common\";\n\nconst { useOnChange } = hooks;\n\nconst createdField = (WrappedComponent) => {\n const List = (props) => {\n const render = useOnChange(\n Object.assign({}, { placeholder: \"请选择\" + props.label }, props)\n );\n return render(WrappedComponent);\n };\n\n List.field = List.Field = WrappedComponent;\n\n return List;\n};\n\nexport const createdList = ({ renderList, defaultProps }) =>\n createdField(\n createListField({\n renderList,\n defaultProps,\n })\n );\n\nexport const User = createdField(UserField);\nexport const Table = createdField(TableField);\n\nconst AdvancedSelect = createdField(AdvancedSelectField);\nAdvancedSelect.createdList = createdList;\nAdvancedSelect.User = User;\nAdvancedSelect.Table = Table;\nexport default AdvancedSelect;\n","import { useFormContext } from \"@kne/react-form-antd\";\n\nconst FormItem = ({ children }) => {\n const { openApi, formData } = useFormContext();\n return children({ ...openApi, formData });\n};\n\nexport default FormItem;\n","import { hooks } from \"@kne/react-form-antd\";\nimport {\n SuperSelectField,\n SuperSelectTableListField,\n} from \"@components/Common\";\nimport { SuperSelectUserField } from \"../../../common/components/SuperSelectField\";\n\nconst { useOnChange } = hooks;\n\nconst createdField = (WrappedComponent) => {\n const List = (props) => {\n const render = useOnChange(\n Object.assign({}, { placeholder: \"请选择\" + props.label }, props)\n );\n return render(WrappedComponent);\n };\n\n List.field = List.Field = WrappedComponent;\n\n return List;\n};\nconst SuperSelect = createdField(SuperSelectField);\nexport const SuperSelectUser = createdField(SuperSelectUserField);\nexport const SuperSelectTableList = createdField(SuperSelectTableListField);\nexport default SuperSelect;\n","import { useFormContext } from \"@kne/react-form-antd\";\nimport LoadingButton from \"@components/LoadingButton\";\n\nconst FormApiButton = ({ onClick, ...props }) => {\n const context = useFormContext();\n return (\n <LoadingButton\n {...props}\n onClick={(e) => {\n return onClick(context, e);\n }}\n />\n );\n};\n\nexport default FormApiButton;\n","// extracted by mini-css-extract-plugin\nexport default {\"salary\":\"style_salary__sUOtT__DHs+D\",\"salary-type\":\"style_salary-type__Sl1LC__DHs+D\",\"input-number\":\"style_input-number__eoEZr__DHs+D\",\"full\":\"style_full__NPqJm__DHs+D\",\"input-group\":\"style_input-group__toLB7__DHs+D\",\"input-group-no-mb\":\"style_input-group-no-mb__C4nzh__DHs+D\"};","import React, {cloneElement} from \"react\";\nimport {withFetch} from \"@kne/react-fetch\";\nimport {hooks} from \"@kne/react-form-antd\";\nimport useSimulationBlur from \"@kne/use-simulation-blur\";\nimport {Col, Input, InputNumber, Row, Select} from \"antd\";\nimport style from \"./style.module.scss\";\nimport {IntlProvider, useIntl} from \"@components/Intl\";\nimport importMessages from \"../../locale\";\nimport Enum from \"@components/Enum\";\nimport useControlValue from \"@kne/use-control-value\";\nimport {get} from \"lodash\";\n\nconst SelectField = withFetch(({data, ...props}) => {\n return <Select {...props} options={data}/>;\n});\n\nconst {useDecorator, useUIDecorator} = hooks;\n\nexport const InputNumberField = (props) => {\n const render = useUIDecorator(props);\n return render(InputNumber);\n};\nconst numberFormat = (value) => {\n if (!value) return \"\";\n const _value = isNaN(Number(value)) ? value : Math.abs(Number(value));\n return value.split(\".\")[1] && value.split(\".\")[1].length > 2 ? _value.toFixed(2) : _value;\n};\n\nconst FormField = ({children, isError}) => {\n return (<div\n style={{marginBottom: 0}}\n className={`react-form__field ${isError ? \"is-error\" : \"\"}`}\n >\n <div className=\"react-form__field-main\">\n <div className=\"react-form__field-input\">\n {cloneElement(children, {className: \"react-form__field-component\"})}\n </div>\n </div>\n </div>);\n};\n\nconst SalaryInputField = ({\n getPopupContainer,\n onBlur,\n api,\n isRange = true,\n placeholder,\n disabled,\n showMonth,\n remindUnit,\n req,\n ...props\n }) => {\n const [value, onChange] = useControlValue(props);\n const {formatMessage} = useIntl({moduleName: \"FormInfo\"});\n const _placeholder = formatMessage({id: \"defaultSelectPlaceholder\"}, {label: \"\"});\n const _placeholderInput = formatMessage({id: \"defaultInputPlaceholder\"}, {label: \"\"});\n\n const isTenThousand = [6].indexOf(get(value, \"type\")) > -1, isFace = get(value, \"type\") === 1,\n isOther = get(value, \"type\") === 7;\n\n const transform = (value) => {\n if (!value) {\n return;\n }\n return isTenThousand ? value / 10000 : value;\n };\n\n const ref = useSimulationBlur(onBlur ? onBlur : () => {\n });\n\n return (<div ref={ref} className={style[\"salary\"]}>\n <Row wrap={false} gutter={10}>\n <Col>\n <SelectField\n className={style[\"salary-type\"]}\n {...api}\n value={get(value, \"type\")}\n onChange={(type) => {\n onChange && onChange(Object.assign({}, isFace ? {} : value, {\n type, min: \"\", max: \"\",\n }));\n }}\n placeholder={placeholder || _placeholder}\n getPopupContainer={getPopupContainer}\n disabled={disabled}\n />\n </Col>\n {isFace ? null : (<Col flex={1}>\n {isRange && (<Row\n className={remindUnit && [5, 6].includes(value?.type) ? style[\"input-group\"] : style[\"input-group-no-mb\"]}\n wrap={false}\n >\n <Col flex={1}>\n <FormField isError={!get(value, \"min\") && req}>\n <InputNumber\n disabled={disabled}\n placeholder={_placeholderInput}\n formatter={numberFormat}\n value={transform(get(value, \"min\"))}\n style={{\n textAlign: \"center\",\n }}\n onChange={(min) => {\n onChange(Object.assign({}, value, {\n min: isTenThousand ? min * 10000 : min,\n }));\n }}\n // status={'warning'}\n description={remindUnit && [5, 6].includes(value?.type) ? (\n <span style={{color: \"#fc3333\"}}>\n 注意:\n <Enum\n name={value?.type}\n moduleName=\"salaryTypeEnum\"\n />\n 的单位为\n {isTenThousand ? formatMessage({id: \"thousand\"}) : isOther ? \"\" : formatMessage({id: \"yuan\"})}\n </span>) : null}\n />\n </FormField>\n </Col>\n <Col>\n <Input\n style={{\n width: 30, borderLeft: 0, borderRight: 0, pointerEvents: \"none\",\n }}\n placeholder=\"~\"\n disabled\n />\n </Col>\n <Col flex={1}>\n <FormField isError={!get(value, \"max\") && req}>\n <InputNumber\n disabled={disabled}\n placeholder={_placeholderInput}\n formatter={numberFormat}\n value={transform(get(value, \"max\"))}\n style={{\n textAlign: \"center\",\n }}\n addonAfter={isTenThousand ? formatMessage({id: \"thousand\"}) : isOther ? \"\" : formatMessage({id: \"yuan\"})}\n onChange={(max) => {\n onChange(Object.assign({}, value, {\n max: isTenThousand ? max * 10000 : max,\n }));\n }}\n />\n </FormField>\n </Col>\n {get(value, \"type\") === 5 && showMonth && (<Col>\n <span\n className={get(value, \"max\") && get(value, \"min\") && !get(value, \"month\") && req ? \"error\" : \"\"}\n >\n <span className={style[\"input-number\"]}>X</span>\n <InputNumber\n min={12}\n disabled={disabled}\n value={get(value, \"month\")}\n onChange={(v) => {\n onChange(Object.assign({}, value, {month: v}));\n }}\n style={{\n width: 100, textAlign: \"center\",\n }}\n placeholder=\"数量\"\n addonAfter=\"月\"\n />\n </span>\n </Col>)}\n </Row>)}\n {!isRange && !isOther && (<InputNumber\n disabled={disabled}\n min={0}\n max={100000000}\n placeholder={_placeholderInput}\n className={style.full}\n formatter={numberFormat}\n value={transform(get(value, \"max\"))}\n style={{\n textAlign: \"center\",\n }}\n addonAfter={isTenThousand ? formatMessage({id: \"thousand\"}) : isOther ? \"\" : formatMessage({id: \"yuan\"})}\n onChange={(max) => {\n onChange(Object.assign({}, value, {\n max: isTenThousand ? max * 10000 : max,\n }));\n }}\n />)}\n {!isRange && isOther && (<Input\n disabled={disabled}\n placeholder={_placeholderInput}\n className={style.full}\n onChange={(e) => {\n onChange(Object.assign({}, value, {max: e.target.value}));\n }}\n value={get(value, \"max\")}\n style={{\n textAlign: \"center\",\n }}\n />)}\n </Col>)}\n </Row>\n </div>);\n};\n\nconst defaultPropsApi = {\n loader: () => {\n return [{\n value: 1, label: \"面议\",\n }, {\n value: 2, label: \"时薪\",\n }, {\n value: 3, label: \"日薪\",\n }, {\n value: 4, label: \"周薪\",\n }, {\n value: 5, label: \"月薪\",\n }, {\n value: 6, label: \"年薪\",\n },];\n },\n};\n\nconst defaultPropsValue = {\n type: 5, min: \"\", max: \"\", month: 12,\n};\n\nconst SalaryField = ({api = defaultPropsApi, defaultValue = defaultPropsValue, ...props}) => {\n return (<IntlProvider moduleName=\"FormInfo\" importMessages={importMessages}>\n <SalaryInputField {...props} api={api} defaultValue={defaultValue}/>\n </IntlProvider>);\n};\n\nconst SalaryInput = (props) => {\n const render = useDecorator({\n ...props, req: props?.rule?.indexOf(\"REQ\") > -1,\n });\n return render(SalaryField);\n};\n\nSalaryInput.Field = SalaryField;\n\nexport default SalaryInput;\n","import {useFormContext, util} from \"@kne/react-form-antd\";\nimport {Popover} from \"antd\";\nimport {useLayoutEffect, useState, useRef, useEffect} from \"react\";\nimport classnames from \"classnames\";\nimport useClickOutside from \"@kne/use-click-outside\";\nimport style from \"./style.module.scss\";\n\nconst useErrorMsg = ({name, groupName, groupIndex}) => {\n const {emitter, formState} = useFormContext();\n const targetFieldInfo = useRef({name, groupName, groupIndex});\n targetFieldInfo.current = {name, groupName, groupIndex};\n const formStateRef = useRef(formState);\n formStateRef.current = formState;\n const [currentError, setCurrentError] = useState(null);\n useEffect(() => {\n const target = emitter.addListener(\n \"form-field-validate-complete\",\n ({id, validate}) => {\n const field = formStateRef.current[id];\n if (!field) {\n return;\n }\n const currentField = targetFieldInfo.current;\n if (\n field.name === currentField.name &&\n (!currentField.groupName ||\n (field.groupName === currentField.groupName &&\n field.groupIndex === currentField.groupIndex))\n ) {\n setCurrentError(\n validate.status === 2\n ? Object.assign({}, validate, {\n label: field.label,\n errMsg: util.compileErrMsg(validate.msg, field.label),\n })\n : null\n );\n }\n }\n );\n return () => {\n target && target.remove();\n };\n }, [emitter]);\n return currentError;\n};\n\nconst ErrorTip = ({\n name,\n groupName,\n overlayClassName,\n errorRender = () => {\n return null;\n },\n groupIndex,\n children,\n }) => {\n const currentError = useErrorMsg({name, groupName, groupIndex});\n const [isHover, setIsHover] = useState(false);\n const open = currentError && isHover;\n const errorContent =\n open &&\n errorRender(\n Object.assign({}, currentError, {closeHover: () => setIsHover(false)})\n );\n const popoverChildrenRef = useRef(null),\n popoverContentRef = useRef(null);\n\n const outerRef = useClickOutside(() => {\n setIsHover(false);\n });\n outerRef.current = {\n contains: (target) => {\n return (\n popoverChildrenRef.current.contains(target) ||\n (popoverContentRef.current &&\n popoverContentRef.current.contains(target))\n );\n },\n };\n const [width, setWidth] = useState(0);\n useLayoutEffect(() => {\n const callback = () => {\n const target = popoverChildrenRef.current.querySelector(\n \".react-form__field-component\"\n );\n target && setWidth(target.clientWidth);\n };\n callback();\n const resizeObserver = new ResizeObserver(callback);\n resizeObserver.observe(popoverChildrenRef.current);\n const mutationObserver = new MutationObserver(callback);\n mutationObserver.observe(popoverChildrenRef.current, {\n subtree: true,\n childList: true,\n });\n return () => {\n mutationObserver.disconnect();\n resizeObserver.disconnect();\n };\n }, []);\n return (\n <Popover\n open={!!errorContent}\n rootClassName={classnames(\n overlayClassName,\n style[\"error-tip-overlay\"]\n )}\n content={\n errorContent && (\n <div\n ref={popoverContentRef}\n style={{width}}\n className={classnames(style[\"error-tip-overlay-content\"])}\n >\n {errorContent}\n </div>\n )\n }\n placement=\"bottom\"\n transitionName={\"ant-slide-up\"}\n arrow={false}\n >\n <div\n className={classnames(\"error-tip\")}\n ref={popoverChildrenRef}\n onMouseEnter={() => {\n setIsHover(true);\n }}\n >\n {children}\n </div>\n </Popover>\n );\n};\n\nexport default ErrorTip;\n","import { createContext, useContext } from \"react\";\n\nconst context = createContext([]);\n\nexport const { Provider, Consumer } = context;\n\nexport const useFormLang = () => {\n return useContext(context);\n};\n\nexport default Provider;\n","import HelperGuide from \"@components/HelperGuide\";\nimport { createContext, useContext as useReactContext } from \"react\";\nimport { useGroup } from \"@kne/react-form-antd\";\nimport style from \"./style.module.scss\";\n\nconst context = createContext(\"\");\nexport const { Provider } = context;\n\nconst useContext = () => {\n return useReactContext(context);\n};\n\nconst HelperGuideLabel = ({ name }) => {\n const helperGuideName = useContext();\n const group = useGroup();\n return (\n helperGuideName && (\n <HelperGuide\n className={style[\"helper-guide-field\"]}\n name={\n helperGuideName + \"-\" + (group.name ? group.name + \"-\" : \"\") + name\n }\n />\n )\n );\n};\n\nexport default HelperGuideLabel;\n","// extracted by mini-css-extract-plugin\nexport default {\"form-outer\":\"style_form-outer__IWUs0__DHs+D\",\"form-drawer\":\"style_form-drawer__uYDXS__DHs+D\",\"table-list\":\"style_table-list__6lp-A__DHs+D\",\"list-item\":\"style_list-item__hVzQa__DHs+D\",\"table-list-inner\":\"style_table-list-inner__uc8DK__DHs+D\",\"table-list-field\":\"style_table-list-field__JSJfB__DHs+D\",\"table-list-header\":\"style_table-list-header__KXvKa__DHs+D\",\"is-req\":\"style_is-req__LfXQf__DHs+D\",\"table-list-extra\":\"style_table-list-extra__faYTK__DHs+D\",\"list-btn\":\"style_list-btn__WKYkm__DHs+D\",\"form-info\":\"style_form-info__B8bAP__DHs+D\",\"list-part\":\"style_list-part__Ld0GA__DHs+D\",\"is-important\":\"style_is-important__vaBk1__DHs+D\",\"list-item-part\":\"style_list-item-part__MzKP7__DHs+D\",\"money-input\":\"style_money-input__J86Pb__DHs+D\",\"money-description\":\"style_money-description__Gz3p7__DHs+D\",\"components-upload-wrapper\":\"style_components-upload-wrapper__Ir0gz__DHs+D\",\"textarea-wrapped-component\":\"style_textarea-wrapped-component__r1oKc__DHs+D\",\"helper-guide-field\":\"style_helper-guide-field__Wke3w__DHs+D\",\"error-tip-overlay\":\"style_error-tip-overlay__aNCGc__DHs+D\",\"error-tip-overlay-content\":\"style_error-tip-overlay-content__kDOoQ__DHs+D\",\"column-not-layout\":\"style_column-not-layout__+SXC+__DHs+D\",\"mult-field-item\":\"style_mult-field-item__eS0nJ__DHs+D\",\"react-form__field-label\":\"style_react-form__field-label__2U91E__DHs+D\",\"mult-field-add-btn\":\"style_mult-field-add-btn__5Baxz__DHs+D\",\"form-step-section\":\"style_form-step-section__RvkHy__DHs+D\"};","import \"@kne/button-group/dist/index.css\";\n\nimport {ConfirmButton, ConfirmLink, ConfirmText, withConfirm} from '@kne/button-group';\n\nexport {ConfirmButton, ConfirmLink, ConfirmText, withConfirm};\n\nexport default ConfirmButton;\n","import Drawer, { useDrawer } from \"@components/Drawer\";\nimport FetchButton from \"@common/components/FetchButton\";\nimport style from \"./style.module.scss\";\nimport computedCommonProps from \"./computedModalCommonProps\";\n\nconst FormDrawer = (props) => {\n return (\n <Drawer\n {...computedCommonProps(\n Object.assign({}, props, { className: style[\"form-drawer\"] })\n )}\n />\n );\n};\n\nexport default FormDrawer;\n\nexport const useFormDrawer = () => {\n const drawer = useDrawer();\n return (props) =>\n drawer(\n computedCommonProps(\n Object.assign({}, props, { className: style[\"form-drawer\"] })\n )\n );\n};\n\nexport const FormDrawerButton = (props) => {\n const formDrawer = useFormDrawer();\n return <FetchButton {...props} modalFunc={formDrawer} />;\n};\n","const importMessages = (locale) => {\n return {\n \"en-US\": () => import(\"./en-US\"),\n \"zh-CN\": () => import(\"./zh-CN\"),\n }[locale]();\n};\n\nexport default importMessages;\n","import TypeDateRangePickerField from \"@common/components/TypeDateRangePickerField\";\nimport { hooks } from \"@kne/react-form-antd\";\n\nconst { useOnChange } = hooks;\n\nconst TypeDateRangePicker = (props) => {\n const render = useOnChange(Object.assign({}, {}, props));\n return render(TypeDateRangePickerField);\n};\n\nTypeDateRangePicker.Field = TypeDateRangePickerField;\n\nexport default TypeDateRangePicker;\n","import {interceptors, preset, RULES} from \"@kne/react-form-antd\";\nimport dayjs from \"dayjs\";\nimport merge from \"lodash/merge\";\nimport get from \"lodash/get\";\nimport \"@kne/react-form-antd/dist/index.css\";\nimport {PHONE_NUMBER_INPUT} from \"./fields/PhoneNumber\";\nimport HelperGuideLabel from \"@components/FormInfo/HelperGuideLabel\";\nimport {loadModule} from \"@kne/remote-loader\";\n\nconst _olderREQ = RULES.REQ;\nconst _olderLEN = RULES.LEN;\n\nconst formPreset = async (options, otherOptions) => {\n const {locale} = Object.assign({}, otherOptions);\n\n interceptors.input.use(\"photo-string\", (value) => {\n if (value && typeof value === \"string\") {\n const id = value.split(\"?\")[0];\n return {id};\n }\n return value;\n });\n\n interceptors.output.use(\"photo-string\", (value) => {\n if (!value || typeof value === \"string\") {\n return value;\n }\n return value.id?.split(\"?\")?.[0] || value.id;\n });\n\n interceptors.input.use(\"photo-string-list\", (value) => {\n if (value && Array.isArray(value) && value.length > 0) {\n return value.map((item) => ({id: item.split(\"?\")[0]}));\n }\n return value;\n });\n\n interceptors.output.use(\"photo-string-list\", (value) => {\n if (value && Array.isArray(value) && value.length > 0) {\n return value.map((item) => item?.id);\n }\n return value;\n });\n\n interceptors.input.use(\"to-array\", (value) => {\n return Array.isArray(value) ? value[0] : value;\n });\n\n interceptors.output.use(\"to-array\", (value) => {\n return [value];\n });\n\n interceptors.input.use(\"array-single\", (value) => {\n return value ? [value] : [];\n });\n\n interceptors.output.use(\"array-single\", (value) => {\n return value ? value[0] : null;\n });\n\n interceptors.input.use(\"boolean-number\", (value) => {\n return value === 1 || value === \"1\";\n });\n\n interceptors.output.use(\"boolean-number\", (value) => {\n return value ? 1 : 0;\n });\n\n interceptors.input.use(\"un-boolean\", (value) => {\n return !value;\n });\n\n interceptors.output.use(\"un-boolean\", (value) => {\n return !value;\n });\n\n interceptors.output.use(\"object-output-value\", (value) => {\n if (!value) {\n return value;\n }\n return value.value || value.id;\n });\n\n interceptors.input.use(\"date-string\", (value) => {\n return value ? dayjs(value) : null;\n });\n\n interceptors.output.use(\"date-string\", (value) => {\n return value ? new Date(value.valueOf()).toISOString() : \"\";\n });\n\n interceptors.input.use(\"date-range-string\", (value) => {\n if (!Array.isArray(value)) {\n return [];\n }\n\n const output = [];\n\n if (value[0]) {\n output.push(dayjs(value[0]));\n }\n if (value[0] && value[1] && value[1] === \"sofar\") {\n output.push(\"至今\");\n }\n if (value[0] && value[1] && value[1] !== \"至今\") {\n output.push(dayjs(value[1]));\n }\n\n return output;\n });\n\n interceptors.output.use(\"date-range-string\", (value) => {\n if (!Array.isArray(value)) {\n return [];\n }\n\n const output = [];\n\n if (value[0]) {\n output.push(new Date(value[0].valueOf()).toISOString());\n }\n if (value[0] && value[1] && value[1] === \"至今\") {\n output.push(\"sofar\");\n }\n if (value[0] && value[1] && value[1] !== \"至今\") {\n output.push(new Date(value[1].valueOf()).toISOString());\n }\n return output;\n });\n\n interceptors.output.use(\"file-format\", (value) => {\n if (!Array.isArray(value)) {\n return [];\n }\n return value.map((item) => Object.assign({}, item, {\n id: item.id || item.ossId, originalName: item.filename,\n }));\n });\n\n interceptors.input.use(\"file-format\", (value) => {\n if (!Array.isArray(value)) {\n return [];\n }\n return value.map((item) => ({\n id: item.id || item.ossId, ossId: item.id || item.ossId, filename: item.originalName || item.filename,\n }));\n });\n\n const {default: loadCountyList} = await loadModule(\"components-iconfont:CountyFlag@load\");\n const countyList = await loadCountyList();\n\n const countyAbMap = new Map(countyList.map(({ab, country_code}) => [ab, country_code]));\n const countyCodeMap = new Map(countyList.map(({ab, country_code}) => [country_code, ab]));\n\n interceptors.output.use(\"phone-number-string\", (value) => {\n if (!(value?.code && value?.value)) {\n return \"\";\n }\n\n return `+${countyAbMap.get(value.code)} ${value.value.replace(/\\s+/g, \"\")}`;\n });\n\n interceptors.input.use(\"phone-number-string\", (value) => {\n if (!value) {\n return {};\n }\n const matcher = value.match(/^\\+(\\d+)\\s(.*)/);\n if (!(matcher && matcher.length >= 3)) {\n return {code: countyCodeMap.get(86), value};\n }\n return {code: countyCodeMap.get(Number(matcher[1])), value: matcher[2]};\n });\n\n const getLocaleMsg = (type, values) => {\n values = Object.assign({}, values);\n const mapping = {\n REQ: {\n \"zh-CN\": \"%s不能为空\", \"en-US\": \"%s cannot be empty \",\n }, EMAIL: {\n \"zh-CN\": \"请输入有效的%s\", \"en-US\": \"Please enter a valid %s\",\n }, LENGTH_EQUAL: {\n \"zh-CN\": `%s必须等于${values.end}`, \"en-US\": `%s must be equal to ${values.end}`,\n }, LENGTH_MORE: {\n \"zh-CN\": `%s必须大于${values.start}`, \"en-US\": `%s must be greater than ${values.start}`,\n }, LENGTH_LESS: {\n \"zh-CN\": `%s必须小于${values.end}`, \"en-US\": `%s must be less than ${values.end}`,\n },\n };\n const target = get(mapping, `${type}.${locale}`);\n if (target) {\n return target;\n }\n return get(mapping, `${type}.zh-CN`);\n };\n\n preset(merge({}, {\n type: \"inner\", rules: {\n REQ: (...args) => {\n return Object.assign({}, _olderREQ(...args), {\n errMsg: getLocaleMsg(\"REQ\"),\n });\n }, LEN: (...args) => {\n const [value, start, end] = args;\n let ruleName = \"\";\n if (end === start && value.length !== Number(end)) {\n ruleName = \"LENGTH_EQUAL\";\n }\n if (value.length < start) {\n ruleName = \"LENGTH_MORE\";\n }\n if (end && value.length > end) {\n ruleName = \"LENGTH_LESS\";\n }\n return Object.assign({}, _olderLEN(...args), {\n errMsg: getLocaleMsg(ruleName, {start, end}),\n });\n }, EMAIL: function (value) {\n return {\n result: /^([a-zA-Z0-9_.-])+@(([a-zA-Z0-9-])+\\.)+([a-zA-Z0-9]{2,4})+$/.test(value),\n errMsg: getLocaleMsg('EMAIL')\n };\n }, PHONE_NUMBER_INPUT, ARRAY_LENGTH: (value, start, end) => {\n if (end === start && value.length !== Number(end)) {\n return {\n result: false, errMsg: getLocaleMsg(\"LENGTH_EQUAL\", {start, end}),\n };\n }\n if (value.length < start) {\n return {\n result: false, errMsg: getLocaleMsg(\"LENGTH_MORE\", {start, end}),\n };\n }\n if (end && value.length > end) {\n return {\n result: false, errMsg: getLocaleMsg(\"LENGTH_LESS\", {start, end}),\n };\n }\n return {result: true};\n },\n }, field: {\n datePicker: {\n defaultProps: {\n interceptor: \"date-string\",\n },\n }, rangeDatePicker: {\n defaultProps: {\n interceptor: \"date-range-string\",\n },\n }, inputNumber: {\n defaultProps: {\n changeOnWheel: false,\n },\n }, textArea: {\n defaultProps: {\n autoSize: {\n minRows: 2, maxRows: 6,\n },\n },\n },\n }, globalProps: {\n labelTips: (props) => {\n return <HelperGuideLabel {...props} />;\n },\n },\n }, typeof options === \"function\" ? options({interceptors, RULES}) : options));\n};\n\nexport default formPreset;\n","import importMessages from \"./locale\";\nimport {CancelButton, SubmitButton} from \"@kne/react-form-antd\";\nimport {IntlProvider, FormattedMessage} from \"@components/Intl\";\nimport {Form} from \"./formModule\";\nimport classnames from \"classnames\";\nimport style from \"./style.module.scss\";\n\nconst localeModuleName = \"FormInfo\";\n\nconst computedCommonProps = ({\n className,\n withDecorator,\n footerButtons,\n formProps,\n cancelText,\n saveText,\n autoClose = true,\n ...modalProps\n }) => {\n return {\n ...modalProps, footerButtons: footerButtons || [{\n children: (<IntlProvider\n importMessages={importMessages}\n moduleName={localeModuleName}\n >\n {cancelText || (<FormattedMessage id={\"Cancel\"} moduleName={localeModuleName}/>)}\n </IntlProvider>), ButtonComponent: CancelButton,\n }, {\n type: \"primary\", children: (<IntlProvider\n importMessages={importMessages}\n moduleName={localeModuleName}\n >\n {saveText || (<FormattedMessage id={\"Save\"} moduleName={localeModuleName}/>)}\n </IntlProvider>), ButtonComponent: SubmitButton, autoClose: false,\n },], withDecorator: (render, args) => {\n const innerRender = (props) => {\n const {\n onSubmit, ..._formProps\n } = Object.assign({}, typeof formProps === \"function\" ? formProps(props) : formProps);\n return (<Form\n {..._formProps}\n onSubmit={async (data, ...args) => {\n const res = onSubmit && (await onSubmit(data, Object.assign({}, props), ...args));\n if (res !== false) {\n autoClose && props.close();\n }\n }}\n >\n <IntlProvider importMessages={importMessages} moduleName=\"FormInfo\">\n {render(props)}\n </IntlProvider>\n </Form>);\n };\n return typeof withDecorator === \"function\" ? withDecorator(innerRender, args) : innerRender(args);\n }, className: classnames(className, style[\"form-outer\"]),\n };\n};\n\nexport default computedCommonProps;\n","import { IndustrySelectField } from \"@components/Common\";\nimport { hooks } from \"@kne/react-form-antd\";\n\nconst { useOnChange } = hooks;\n\nconst IndustrySelect = (props) => {\n const render = useOnChange(\n Object.assign({}, { placeholder: \"请选择\" + props.label }, props)\n );\n return render(IndustrySelectField);\n};\n\nIndustrySelect.Field = IndustrySelectField;\nIndustrySelect.Enum = IndustrySelectField.Enum;\n\nexport default IndustrySelect;\n","import { FunctionSelectField } from \"@components/Common\";\nimport { hooks } from \"@kne/react-form-antd\";\n\nconst { useOnChange } = hooks;\n\nconst FunctionSelect = (props) => {\n const render = useOnChange(\n Object.assign({}, { placeholder: \"请选择\" + props.label }, props)\n );\n return render(FunctionSelectField);\n};\n\nFunctionSelect.Field = FunctionSelectField;\nFunctionSelect.Enum = FunctionSelectField.Enum;\n\nexport default FunctionSelect;\n","import { hooks } from \"@kne/react-form-antd\";\nimport { CascaderField, createTreeUtils } from \"@components/Common\";\nconst { useOnChange } = hooks;\n\nconst Cascader = (props) => {\n const render = useOnChange(\n Object.assign({}, { placeholder: \"请选择\" + props.label }, props)\n );\n return render(CascaderField);\n};\n\nCascader.Field = CascaderField;\nCascader.createTreeUtils = createTreeUtils;\n\nexport { createTreeUtils };\nexport default Cascader;\n","import { hooks } from \"@kne/react-form-antd\";\nimport { Input, Typography } from \"antd\";\nimport useControlValue from \"@kne/use-control-value\";\n\nconst { useDecorator } = hooks;\n\nconst TextField = ({ children, ...props }) => {\n const [value] = useControlValue(props);\n return (\n <Typography.Text {...props}>\n <div style={{ height: 0, width: 0, overflow: \"hidden\" }}>\n <Input value={value} />\n </div>\n {children ? children : value}\n </Typography.Text>\n );\n};\n\nconst Text = (props) => {\n const render = useDecorator(props);\n return render(TextField);\n};\n\nText.Field = TextField;\n\nexport default Text;\n","import * as reactFormAntd from \"@kne/react-form-antd\";\nimport {\n DatePicker as ReactDatePicker,\n DatePickerToday as ReactDatePickerToday,\n Input as ReactInput,\n InputNumber as ReactInputNumber,\n Select as ReactSelect,\n TextArea as ReactTextArea,\n TimePicker as ReactTimePicker,\n TreeSelect as ReactTreeSelect,\n Rate,\n Switch,\n Slider,\n} from \"@kne/react-form-antd\";\nimport Form from \"./Form\";\nimport { FormattedMessage, useIntl } from \"@components/Intl\";\nimport { forwardRef } from \"react\";\nimport FormItem from \"./FormItem\";\nimport style from \"./style.module.scss\";\nimport AdvancedSelectField from \"./fields/AdvancedSelect\";\nimport SuperSelectField, {\n SuperSelectTableList as SuperSelectTableListField,\n SuperSelectUser as SuperSelectUserField,\n} from \"./fields/SuperSelect\";\nimport AddressSelect, {\n AddressInput as AddressInputField,\n} from \"./fields/AddressSelect\";\nimport Cascader from \"./fields/Cascader\";\nimport FunctionSelect from \"./fields/FunctionSelect\";\nimport IndustrySelect from \"./fields/IndustrySelect\";\nimport MoneyInput from \"./fields/MoneyInput\";\nimport PhoneNumber from \"./fields/PhoneNumber\";\nimport Upload from \"./fields/Upload\";\nimport Avatar from \"./fields/Avatar\";\nimport SalaryInput from \"./fields/SalaryInput\";\nimport InputUpperCaseField from \"./fields/InputUpperCase\";\nimport TypeDateRangePicker from \"./fields/TypeDateRangePicker\";\nimport Text from \"./fields/Text\";\nimport ErrorTip from \"./ErrorTip\";\n\nconst withInputDefaultPlaceholder = (WrappedComponent) => {\n const TargetComponent = forwardRef(\n ({ placeholder, label, ...props }, ref) => (\n <FormattedMessage\n id=\"defaultInputPlaceholder\"\n moduleName=\"FormInfo\"\n values={{ label }}\n >\n {(text) => (\n <WrappedComponent\n {...props}\n ref={ref}\n label={label}\n placeholder={placeholder || text}\n />\n )}\n </FormattedMessage>\n )\n );\n Object.keys(WrappedComponent)\n .filter((key) => {\n return [\"$$typeof\", \"render\", \"field\"].indexOf(key) === -1;\n })\n .forEach((key) => {\n TargetComponent[key] = WrappedComponent[key];\n });\n\n return TargetComponent;\n};\n\nconst withTextAreaDefaultPlaceholder =\n (WrappedComponent) =>\n ({ placeholder, label, className, ...props }) =>\n (\n <FormattedMessage\n id=\"defaultInputPlaceholder\"\n moduleName=\"FormInfo\"\n values={{ label }}\n >\n {(text) => (\n <div className={style[\"textarea-wrapped-component\"]}>\n <WrappedComponent\n {...props}\n label={label}\n placeholder={placeholder || text}\n />\n </div>\n )}\n </FormattedMessage>\n );\n\nconst withSelectDefaultPlaceholder = (WrappedComponent) => {\n const TargetComponent = forwardRef(\n ({ placeholder, label, ...props }, ref) => (\n <FormattedMessage\n id=\"defaultSelectPlaceholder\"\n moduleName=\"FormInfo\"\n values={{ label }}\n >\n {(text) => (\n <WrappedComponent\n {...props}\n ref={ref}\n label={label}\n placeholder={placeholder || text}\n />\n )}\n </FormattedMessage>\n )\n );\n\n Object.keys(WrappedComponent)\n .filter((key) => {\n return [\"$$typeof\", \"render\", \"field\"].indexOf(key) === -1;\n })\n .forEach((key) => {\n TargetComponent[key] = WrappedComponent[key];\n });\n\n return TargetComponent;\n};\n\nexport { default as ErrorTip } from \"./ErrorTip\";\n\nexport { default as FormItem } from \"./FormItem\";\n\n// export { default as AdvancedSelect } from \"./fields/AdvancedSelect\";\nexport const AdvancedSelect = withSelectDefaultPlaceholder(AdvancedSelectField);\nexport const SuperSelect = withSelectDefaultPlaceholder(SuperSelectField);\nexport const SuperSelectTableList = withSelectDefaultPlaceholder(\n SuperSelectTableListField\n);\nexport const SuperSelectUser =\n withSelectDefaultPlaceholder(SuperSelectUserField);\nexport { default as AddressSelect } from \"./fields/AddressSelect\";\nexport const AddressInput = withSelectDefaultPlaceholder(AddressInputField);\n\nexport {\n Cascader,\n FunctionSelect,\n IndustrySelect,\n MoneyInput,\n PhoneNumber,\n Upload,\n Avatar,\n SalaryInput,\n Text,\n Rate,\n Switch,\n Slider,\n TypeDateRangePicker,\n};\nexport const InputUpperCase = withInputDefaultPlaceholder(InputUpperCaseField);\nexport const Input = withInputDefaultPlaceholder(ReactInput);\nInput.Password = withInputDefaultPlaceholder(ReactInput.Password);\n\nexport const TextArea = withTextAreaDefaultPlaceholder(ReactTextArea);\n\nexport const Select = withSelectDefaultPlaceholder(ReactSelect);\n\nexport const InputNumber = withInputDefaultPlaceholder(ReactInputNumber);\n\nexport const TreeSelect = withSelectDefaultPlaceholder(ReactTreeSelect);\n\nexport const TimePicker = withSelectDefaultPlaceholder(ReactTimePicker);\n\nTimePicker.RangePicker = withSelectDefaultPlaceholder(\n ReactTimePicker.RangePicker\n);\n\nexport const DatePicker = withSelectDefaultPlaceholder(ReactDatePicker);\n\nDatePicker.MonthPicker = withSelectDefaultPlaceholder(\n ReactDatePicker.MonthPicker\n);\n\nDatePicker.RangePicker = withSelectDefaultPlaceholder(\n ReactDatePicker.RangePicker\n);\n\nDatePicker.WeekPicker = withSelectDefaultPlaceholder(\n ReactDatePicker.WeekPicker\n);\n\nexport const DatePickerToday = ({\n placeholder,\n label,\n soFarText,\n ...props\n}) => {\n const { formatMessage } = useIntl({ moduleName: \"FormInfo\" });\n return (\n <ReactDatePickerToday\n {...props}\n label={label}\n placeholder={[\n formatMessage({ id: \"startDate\" }),\n formatMessage({ id: \"endDate\" }),\n ]}\n soFarText={soFarText || formatMessage({ id: \"soFarText\" })}\n />\n );\n};\n\nexport { Form };\n\nexport const formModule = Object.assign({}, reactFormAntd, {\n Input,\n InputUpperCase,\n TextArea,\n Select,\n InputNumber,\n TreeSelect,\n TimePicker,\n DatePicker,\n DatePickerToday,\n Form,\n FormItem,\n AdvancedSelect,\n SuperSelect,\n SuperSelectTableList,\n SuperSelectUser,\n AddressSelect,\n AddressInput,\n MoneyInput,\n PhoneNumber,\n Cascader,\n FunctionSelect,\n IndustrySelect,\n TypeDateRangePicker,\n Upload,\n Avatar,\n SalaryInput,\n Text,\n Rate,\n Switch,\n Slider,\n ErrorTip,\n});\n","import {forwardRef, useEffect, useState} from \"react\";\nimport {usePreset} from \"@components/Global\";\nimport get from \"lodash/get\";\nimport formPreset from \"@components/FormInfo/preset\";\nimport {IntlProvider} from \"@components/Intl\";\nimport importMessages from \"@components/FormInfo/locale\";\nimport FormLangProvider from \"@components/FormInfo/FormLangProvider\";\nimport InfoPage from \"@components/InfoPage\";\nimport {Provider as HelperGuideProvider} from \"@components/FormInfo/HelperGuideLabel\";\nimport {FormAntd as ReactForm} from \"@kne/react-form-antd\";\nimport classnames from \"classnames\";\nimport style from \"@components/FormInfo/style.module.scss\";\n\nconst SetPreset = ({children}) => {\n const [isPreset, setIsPreset] = useState(false);\n const preset = usePreset();\n const formInfo = get(preset, \"formInfo\", {}),\n locale = get(preset, \"locale\");\n useEffect(() => {\n Promise.resolve(formPreset(formInfo, {locale})).then(() => {\n setIsPreset(true);\n });\n }, [formInfo, locale]);\n if (!isPreset) {\n return null;\n }\n return children;\n};\n\nconst Form = forwardRef(\n ({className, helperGuideName, children, lang, ...props}, ref) => {\n return (\n <IntlProvider importMessages={importMessages} moduleName=\"FormInfo\">\n <FormLangProvider value={lang}>\n <HelperGuideProvider value={helperGuideName}>\n <SetPreset>\n <ReactForm\n {...props}\n ref={ref}\n className={classnames(className, style[\"form-outer\"])}\n >\n <InfoPage>{children}</InfoPage>\n </ReactForm>\n </SetPreset>\n </HelperGuideProvider>\n </FormLangProvider>\n </IntlProvider>\n );\n }\n);\nexport default Form;\n","import {cloneElement} from \"react\";\nimport {SubList} from '@kne/react-form-plus';\nimport {Typography, Divider} from \"antd\";\nimport Icon from \"@components/Icon\";\nimport InfoPage from \"@components/InfoPage\";\nimport ConfirmButton from \"@components/ConfirmButton\";\nimport FormInfo from \"./FormInfo\";\nimport classnames from \"classnames\";\nimport importMessages from \"./locale\";\nimport {createWithIntl, FormattedMessage, useIntl} from \"@components/Intl\";\nimport style from \"./style.module.scss\";\n\nconst List = createWithIntl({moduleName: \"FormInfo\", importMessages})(({\n addText,\n className,\n important,\n outer = <Outer/>,\n renderChildren = (children) => children,\n deleteButtonProps,\n title,\n ...props\n }) => {\n const {formatMessage} = useIntl({moduleName: \"FormInfo\"});\n return <SubList {...props} listRender={({list, title, id, allowRemove, onRemove, ...others}) => {\n return <div key={id} className={classnames(style[\"list-item\"], {\n [style[\"is-important\"]]: important,\n })}>\n <FormInfo {...others} title={title} list={list} className={style[\"list-item-part\"]} gap={16}\n extra={<FormattedMessage id=\"delText\" moduleName=\"FormInfo\">\n {(text) => allowRemove ? (<ConfirmButton\n danger\n className={\"btn-no-padding\"}\n message={formatMessage({id: \"delConfirm\"}, {name: title})}\n type=\"link\"\n onClick={() => {\n onRemove(id);\n }}\n {...Object.assign({}, deleteButtonProps)}\n >\n {deleteButtonProps?.children ? (deleteButtonProps?.children) : (<>\n <Icon type=\"icon-shanchu\"/>\n {text}\n </>)}\n </ConfirmButton>) : null}\n </FormattedMessage>}/>\n <Divider/>\n </div>\n }}>{(children, {allowAdd, onAdd}) => {\n return cloneElement(outer, {\n title,\n addText,\n className: classnames(className, style[\"list-part\"]),\n allowAdd,\n add: () => onAdd({isUnshift: false}),\n }, renderChildren(children));\n }}</SubList>\n});\n\nconst Outer = ({add, addText, className, allowAdd, ...props}) => {\n return (<InfoPage.Part\n {...props}\n className={className}\n extra={allowAdd && (<FormattedMessage id=\"addText\" moduleName=\"FormInfo\">\n {(text) => (<Typography.Text className={style[\"list-btn\"]} onClick={add}>\n <Icon type=\"icon-tianjia\"/>\n {addText || text}\n </Typography.Text>)}\n </FormattedMessage>)}\n />);\n};\n\nexport default List;\n","// extracted by mini-css-extract-plugin\nexport default {\"upload\":\"style_upload__t422Q__DHs+D\",\"upload-list\":\"style_upload-list__Q9HDc__DHs+D\",\"upload-input\":\"style_upload-input__vXk4w__DHs+D\",\"tips\":\"style_tips__3Gpnu__DHs+D\"};","import {Space, Flex} from \"antd\";\nimport classnames from \"classnames\";\nimport useControlValue from \"@kne/use-control-value\";\nimport style from \"./style.module.scss\";\nimport {List as FileList} from \"@components/File\";\nimport {hooks} from \"@kne/react-form-antd\";\nimport {createWithIntl, useIntl} from '@components/Intl';\nimport omit from \"lodash/omit\";\nimport {InputFileButton, useFileUpload} from \"@common/hocs/withInputFile\";\nimport importMessages from \"@components/FormInfo/locale\";\n\nconst {useOnChange} = hooks;\n\nconst UploadField = createWithIntl({\n importMessages, moduleName: 'FormInfo'\n})((p) => {\n const {formatMessage} = useIntl({moduleName: \"FormInfo\"});\n const {\n className,\n fileSize,\n maxLength,\n multiple,\n size,\n accept,\n children,\n renderTips,\n showUploadList,\n onSave,\n ossUpload,\n onUpload,\n getPermission,\n concurrentCount,\n ...props\n } = Object.assign({}, {\n defaultValue: [],\n children: formatMessage({id: 'uploadButtonText'}),\n accept: [\n \".pdf\",\n \".jpg\",\n \".png\",\n \".jpeg\",\n \".doc\",\n \".docx\",\n \".xls\",\n \".xlsx\",\n \".html\",\n \".msg\",\n \".eml\",\n \".zip\",\n ],\n renderTips: (defaultTips) => {\n return defaultTips;\n },\n multiple: true,\n showUploadList: true,\n maxLength: 10,\n fileSize: 30,\n concurrentCount: 10\n }, p);\n const [propsValue, onChange] = useControlValue(props);\n const value = propsValue || [];\n const {fileList: uploadingList, onFileSelected} = useFileUpload({\n multiple,\n onSave,\n onUpload: ossUpload || onUpload,\n fileSize,\n maxLength,\n value,\n onChange,\n concurrentCount,\n });\n const previewFileList = [...uploadingList, ...value];\n const tipsText = renderTips(formatMessage({id: 'uploadTips'}, {\n extensionNames: accept\n .map((str) => str.replace(/^\\./, \"\"))\n .join(\",\"), maxLength, fileSize\n }),\n {\n fileSize,\n maxLength,\n accept,\n }\n );\n\n return (\n <Space direction=\"vertical\">\n <Flex align=\"start\" gap={8} vertical>\n <InputFileButton\n {...omit(props, [\"value\", \"onChange\"])}\n size={size}\n multiple={multiple}\n accept={accept}\n className={classnames(style[\"upload\"], className)}\n onChange={onFileSelected}\n >\n {children}\n </InputFileButton>\n {tipsText && <div className={style[\"tips\"]}>{tipsText}</div>}\n </Flex>\n {showUploadList && previewFileList.length > 0 && (\n <FileList\n className={style[\"upload-list\"]}\n dataSource={previewFileList}\n infoItemRenders={[]}\n getPermission={\n getPermission\n ? getPermission\n : (type) => {\n return type === \"delete\";\n }\n }\n apis={{\n onDelete: (target) => {\n const newList = value.slice(0);\n const index = newList.indexOf(target);\n index > -1 && newList.splice(index, 1);\n onChange(newList);\n },\n }}\n />\n )}\n </Space>\n );\n});\n\nconst Upload = ({interceptor = \"file-format\", ...props}) => {\n const render = useOnChange({interceptor, ...props});\n return render(UploadField);\n};\n\nUpload.Field = UploadField;\n\nexport default Upload;\n","// extracted by mini-css-extract-plugin\nexport default {\"money-input\":\"style_money-input__Pyur7__DHs+D\",\"money-description\":\"style_money-description__9pFk4__DHs+D\"};","import useControlValue from \"@kne/use-control-value\";\nimport { hooks, util, formUtils } from \"@kne/react-form-antd\";\nimport { InputNumber } from \"antd\";\nimport changeMoneyToChinese, {\n MAX_NUM,\n} from \"@common/utils/changeMoneyToChinese\";\nimport style from \"./style.module.scss\";\nimport classnames from \"classnames\";\nimport merge from \"lodash/merge\";\nimport { useState } from \"react\";\n\nconst { isNotEmpty } = util || formUtils;\nconst { useOnChange } = hooks;\nconst MoneyInputField = ({\n chineseEmpty,\n className,\n showError,\n errorDesc,\n transformMoneyToChinese,\n onBlur,\n moneyFormat,\n ...props\n}) => {\n const [status, setStatus] = useState(\"\");\n const [value, onChange] = useControlValue(props);\n const inputNumberProps = merge(\n {\n controls: false,\n precision: 2,\n addonAfter: \"元\",\n },\n props,\n {\n max: isNotEmpty(props.max)\n ? props.max > MAX_NUM\n ? MAX_NUM\n : props.max\n : MAX_NUM,\n }\n );\n return (\n <div className={classnames(className, \"money-input\", style[\"money-input\"])}>\n <InputNumber\n {...inputNumberProps}\n status={status}\n formatter={\n moneyFormat\n ? (value) => {\n return `${value}`.replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\");\n }\n : null\n }\n parser={(parserValue) => {\n const value = moneyFormat\n ? parserValue?.replace(/\\$\\s?|(,*)/g, \"\")\n : parserValue;\n if (isNotEmpty(value)) {\n if (\n Number(value) > Number(inputNumberProps.max) ||\n (isNotEmpty(inputNumberProps.min) &&\n Number(value) < Number(inputNumberProps.min))\n ) {\n setStatus(\"error\");\n }\n } else {\n setStatus(\"\");\n }\n return isNotEmpty(value) ? Number(value) : null;\n }}\n onChange={(val) => {\n onChange(val);\n }}\n onBlur={(e) => {\n onBlur && onBlur(e, setStatus);\n }}\n />\n <div className={classnames(style[\"money-description\"])}>\n {status === \"error\" && showError\n ? errorDesc\n : isNotEmpty(value)\n ? changeMoneyToChinese(\n transformMoneyToChinese ? transformMoneyToChinese(value) : value\n )\n : chineseEmpty}\n </div>\n </div>\n );\n};\n\nconst MoneyInput = (props) => {\n const render = useOnChange(\n Object.assign({ placeholder: `请输入${props.label || \"\"}` }, props)\n );\n return render(MoneyInputField);\n};\n\nMoneyInput.Field = MoneyInputField;\nMoneyInput.toChineseCharacter = changeMoneyToChinese;\n\nexport default MoneyInput;\n","import Modal, { useModal } from \"@components/Modal\";\nimport { useState, useRef } from \"react\";\nimport { CancelButton, SubmitButton } from \"@kne/react-form-antd\";\nimport FetchButton from \"@common/components/FetchButton\";\nimport { IntlProvider, FormattedMessage } from \"@components/Intl\";\nimport style from \"./style.module.scss\";\nimport importMessages from \"./locale\";\nimport { Button, Steps, Flex } from \"antd\";\nimport computedModalCommonProps from \"./computedModalCommonProps\";\n\nconst localeModuleName = \"FormInfo\";\n\nconst FormStepState = ({ items, children }) => {\n const [currentIndex, setCurrentIndex] = useState(0);\n const stepCacheRef = useRef({});\n return children({\n currentIndex,\n setCurrentIndex,\n stepCacheRef,\n isLastStep: currentIndex === items.length - 1,\n currentProps: Object.assign({}, items[currentIndex]),\n });\n};\n\nconst computedCommonProps = ({\n footerButtons,\n cancelText,\n completeText,\n nextText,\n items,\n withDecorator,\n ...others\n}) => {\n return computedModalCommonProps(\n Object.assign({}, others, {\n footerButtons: ({ currentIndex, isLastStep }) => {\n const { footerButtons } = Object.assign({}, items[currentIndex]);\n return (\n footerButtons || [\n {\n children: (\n <IntlProvider\n importMessages={importMessages}\n moduleName={localeModuleName}\n >\n {cancelText || (\n <FormattedMessage\n id={\"Cancel\"}\n moduleName={localeModuleName}\n />\n )}\n </IntlProvider>\n ),\n ButtonComponent: CancelButton,\n },\n {\n type: \"primary\",\n children: (\n <IntlProvider\n importMessages={importMessages}\n moduleName={localeModuleName}\n >\n {isLastStep\n ? completeText || (\n <FormattedMessage\n id={\"Complete\"}\n moduleName={localeModuleName}\n />\n )\n : nextText || (\n <FormattedMessage\n id={\"Next\"}\n moduleName={localeModuleName}\n />\n )}\n </IntlProvider>\n ),\n ButtonComponent: SubmitButton,\n autoClose: false,\n },\n ]\n );\n },\n withDecorator: (render, args) => {\n const innerRender = (props) => {\n return (\n <FormStepState items={items}>\n {({\n currentIndex,\n isLastStep,\n setCurrentIndex,\n currentProps,\n stepCacheRef,\n }) => {\n const { formProps, title, ...otherProps } = currentProps;\n const { onSubmit, ..._formProps } =\n typeof formProps === \"function\"\n ? formProps(props)\n : formProps;\n\n const formData = Object.assign(\n {},\n _formProps.data,\n stepCacheRef.current[currentIndex]?.data\n );\n\n return render(\n Object.assign({}, props, otherProps, {\n currentIndex,\n isLastStep,\n setCurrentIndex,\n stepCacheRef,\n stepSection: (\n <Steps\n className={style[\"form-step-section\"]}\n current={currentIndex}\n items={items.map(({ title }) => ({ title }))}\n />\n ),\n formProps: Object.assign({}, _formProps, {\n key: currentIndex,\n data: formData,\n onSubmit: async (data, ...args) => {\n stepCacheRef.current[currentIndex] = { data };\n const res =\n onSubmit &&\n (await onSubmit(\n data,\n Object.assign({}, props, {\n currentIndex,\n isLastStep,\n setCurrentIndex,\n currentProps,\n stepCacheRef,\n }),\n ...args\n ));\n if (others.autoClose && !isLastStep && res !== false) {\n setCurrentIndex((currentIndex) => currentIndex + 1);\n }\n if (!isLastStep) {\n return false;\n }\n\n return res;\n },\n }),\n })\n );\n }}\n </FormStepState>\n );\n };\n return typeof withDecorator === \"function\"\n ? withDecorator(innerRender, args)\n : innerRender(args);\n },\n formProps: ({ formProps, ...others }) =>\n Object.assign({}, others, formProps),\n children: ({ children, stepSection, ...props }) => {\n return (\n <Flex vertical gap={24}>\n <Flex justify=\"center\">{stepSection}</Flex>\n {typeof children === \"function\" ? children(props) : children}\n </Flex>\n );\n },\n })\n );\n};\n\nconst FormStepModal = (props) => {\n return (\n <Modal\n {...computedCommonProps(\n Object.assign({}, props, { className: style[\"form-modal\"] })\n )}\n />\n );\n};\n\nexport default FormStepModal;\n\nexport const useFormStepModal = () => {\n const modal = useModal();\n return (props) =>\n modal(\n computedCommonProps(\n Object.assign({}, props, { className: style[\"form-modal\"] })\n )\n );\n};\n\nexport const FormStepModalButton = (props) => {\n const formModal = useFormStepModal();\n if (!props.api) {\n const { modalProps, ...others } = props;\n return (\n <Button\n {...others}\n onClick={() => {\n formModal(modalProps);\n }}\n />\n );\n }\n return <FetchButton {...props} modalFunc={formModal} />;\n};\n","import preset from \"./preset\";\nimport FormInfo from \"./FormInfo\";\nimport fields, { fieldDecorator } from \"./fields\";\nimport List from \"./List\";\nimport TableList from \"./TableList\";\nimport FormApiButton from \"./FormApiButton\";\nimport FormModal, { useFormModal, FormModalButton } from \"./FormModal\";\nimport FormStepModal, {\n useFormStepModal,\n FormStepModalButton,\n} from \"./FormStepModal\";\nimport FormDrawer, { useFormDrawer, FormDrawerButton } from \"./FormDrawer\";\nimport Form from \"./Form\";\nimport FormItem from \"./FormItem\";\nimport ErrorTip from \"./ErrorTip\";\nimport MultiField from \"./MultiField\";\nimport {\n SubmitButton,\n CancelButton,\n useFormContext,\n hooks,\n widget,\n utils,\n formUtils,\n} from \"@kne/react-form-antd\";\n\npreset();\n\nFormInfo.fields = fields;\nFormInfo.List = List;\nFormInfo.TableList = TableList;\nFormInfo.FormApiButton = FormApiButton;\nFormInfo.FormModal = FormModal;\nFormInfo.useFormModal = useFormModal;\nFormInfo.FormModalButton = FormModalButton;\nFormInfo.FormStepModal = FormStepModal;\nFormInfo.useFormStepModal = useFormStepModal;\nFormInfo.FormStepModalButton = FormStepModalButton;\nFormInfo.FormDrawer = FormDrawer;\nFormInfo.useFormDrawer = useFormDrawer;\nFormInfo.FormDrawerButton = FormDrawerButton;\nFormInfo.Form = Form;\nFormInfo.FormItem = FormItem;\nFormInfo.ErrorTip = ErrorTip;\nFormInfo.SubmitButton = SubmitButton;\nFormInfo.CancelButton = CancelButton;\nFormInfo.fieldDecorator = fieldDecorator;\nFormInfo.MultiField = MultiField;\nFormInfo.useFormContext = useFormContext;\nFormInfo.hooks = hooks;\nFormInfo.widget = widget;\nFormInfo.utils = utils;\nFormInfo.formUtils = formUtils;\n\nexport * from \"@kne/react-form-antd\";\n\nexport * from \"./formModule\";\n\nexport {\n Form,\n FormItem,\n ErrorTip,\n fields,\n fieldDecorator,\n List,\n TableList,\n FormApiButton,\n FormModal,\n useFormModal,\n FormModalButton,\n FormStepModal,\n useFormStepModal,\n FormStepModalButton,\n FormDrawer,\n useFormDrawer,\n FormDrawerButton,\n MultiField,\n};\n\nexport { default as SelectInnerInput } from \"./SelectInnerInput\";\n\nexport default FormInfo;\n","// extracted by mini-css-extract-plugin\nexport default {\"upload-btn\":\"style_upload-btn__-6XtP__DHs+D\",\"square\":\"style_square__UPkfA__DHs+D\",\"is-loading\":\"style_is-loading__wx6Pd__DHs+D\",\"upload-btn-tips\":\"style_upload-btn-tips__YtxWz__DHs+D\",\"drop-tips\":\"style_drop-tips__N-v59__DHs+D\",\"preview-area\":\"style_preview-area__aV3SN__DHs+D\"};","import {forwardRef, useLayoutEffect, useRef, useState} from \"react\";\nimport withInputFile, {InputFileLink} from \"@common/hocs/withInputFile\";\nimport Image from \"@components/Image\";\nimport {usePreset} from \"@components/Global\";\nimport {useModal} from \"@components/Modal\";\nimport Icon from \"@components/Icon\";\nimport {\n Avatar as AntdAvatar, Col, message, Row, Slider, Space, Spin, Tooltip,\n} from \"antd\";\nimport AvatarEditor from \"react-avatar-editor\";\nimport get from \"lodash/get\";\nimport classnames from \"classnames\";\nimport {useDebouncedCallback} from \"use-debounce\";\nimport {hooks} from \"@kne/react-form-antd\";\nimport merge from \"lodash/merge\";\nimport style from \"./style.module.scss\";\nimport defaultAvatarIcon from \"../../../../defaultAvatar.svg\";\nimport {IntlProvider, FormattedMessage, useIntl} from \"@components/Intl\";\nimport importMessages from \"@components/FormInfo/locale\";\nimport {createWithIntl} from \"../../../Intl\";\n\nconst {useOnChange} = hooks;\n\nconst AvatarDisplay = Image.Avatar;\n\nconst localeModuleName = \"FormInfo\";\n\nconst UploadButton = withInputFile(({\n className,\n icon,\n loading,\n value,\n gender,\n width,\n height,\n children,\n shape,\n defaultAvatar,\n displayAvatar,\n apis,\n }) => {\n const inner = (<>\n <AvatarDisplay\n {...Object.assign({}, typeof displayAvatar === 'function' ? displayAvatar(value) : {id: get(value, \"id\")})}\n gender={gender}\n width={(64 * width) / height}\n height={64}\n shape={shape}\n defaultAvatar={defaultAvatar}\n apis={apis}\n />\n <div className={style[\"upload-btn-tips\"]}>\n {icon || <Icon type=\"icon-chuanzhaopian\" size={16}/>}\n </div>\n {children}\n </>);\n return (<div\n className={classnames(className, style[\"upload-btn\"], {\n [style[\"is-loading\"]]: loading, [style[\"square\"]]: shape === \"square\" || !(width && width === height),\n })}\n style={{width: (64 * width) / height}}\n >\n {loading ? <Spin>{inner}</Spin> : inner}\n </div>);\n});\n\nconst dataURLtoBlob = (dataURL) => {\n let arr = dataURL.split(\",\");\n // 注意base64的最后面中括号和引号是不转译的\n let _arr = arr[1].substring(0, arr[1].length - 2);\n let mime = arr[0].match(/:(.*?);/)[1], bstr = atob(_arr), n = bstr.length, u8arr = new Uint8Array(n);\n while (n--) {\n u8arr[n] = bstr.charCodeAt(n);\n }\n return new Blob([u8arr], {\n type: mime,\n });\n};\n\nconst ControlAvatarEditor = forwardRef(({\n image: propsImage,\n width,\n height,\n borderRadius,\n preview,\n fileSize,\n accept,\n renderTips,\n getApi,\n shape,\n border = 1,\n ...props\n }, ref) => {\n const intl = useIntl({moduleName: localeModuleName});\n const [baseWidth, setBaseWidth] = useState(0);\n const outerRef = useRef(null);\n const [image, setImage] = useState(propsImage);\n const [scale, setScale] = useState(1);\n const [rotate, setRotate] = useState(0);\n const [previewImg, setPreviewImg] = useState(\"\");\n const editorRef = useRef(null);\n\n useLayoutEffect(() => {\n setBaseWidth((outerRef.current.clientWidth * 2) / 3);\n }, []);\n getApi({\n getImage: () => {\n const canvas = editorRef.current.getImage();\n\n const targetCanvas = document.createElement(\"canvas\");\n const targetCtx = targetCanvas.getContext(\"2d\");\n targetCanvas.width = width;\n targetCanvas.height = height;\n\n targetCtx.drawImage(canvas, 0, 0, targetCanvas.width, targetCanvas.height);\n\n return new window.File([dataURLtoBlob(targetCanvas.toDataURL())], image.name, {type: image.type});\n },\n });\n const makePreviewInner = () => {\n setPreviewImg(editorRef.current.getImage().toDataURL());\n };\n const makePreview = useDebouncedCallback(makePreviewInner, 500);\n\n return (<div ref={outerRef}>\n <Row wrap={false} align=\"middle\">\n <Col span={preview ? 16 : 24}>\n {baseWidth && (<Space direction=\"vertical\">\n <AvatarEditor\n {...props}\n ref={editorRef}\n image={image}\n scale={scale}\n rotate={rotate}\n width={baseWidth - border * 2}\n height={(height * baseWidth) / width - (border * 2 * height) / width}\n border={border}\n color={[0, 0, 0, 0.6]}\n borderRadius={(borderRadius * baseWidth) / width}\n onImageReady={makePreviewInner}\n onImageChange={makePreview}\n />\n <div className={style[\"drop-tips\"]}>\n {renderTips(`${intl.formatMessage({id: \"PictureFormat\"})}${accept\n .map((str) => str.replace(/^\\./, \"\"))\n .join(\" \")} ${intl.formatMessage({\n id: \"ImageSize\",\n })}${intl.formatMessage({id: \"NotExceeding\"}, {size: fileSize})}`, {\n accept, fileSize,\n })}\n </div>\n <Row gutter={14} align=\"middle\">\n <Col>\n <Tooltip\n title={intl.formatMessage({id: \"Rotate\"})}\n placement=\"bottom\"\n >\n <Icon\n type=\"icon-xuanzhuan\"\n onClick={() => {\n setRotate((rotate) => {\n return (rotate - 90) % 360;\n });\n }}\n />\n </Tooltip>\n </Col>\n <Col>\n <Tooltip\n title={intl.formatMessage({id: \"ImageFull\"})}\n placement=\"bottom\"\n >\n <Icon\n type=\"icon-chongman\"\n onClick={() => {\n setScale(1);\n }}\n />\n </Tooltip>\n </Col>\n <Col flex={1}>\n <Slider\n tooltip={{\n placement: \"bottom\", formatter: () => intl.formatMessage({id: \"Size\"}),\n }}\n value={scale}\n step={0.05}\n min={0.2}\n max={3}\n onChange={setScale}\n />\n </Col>\n <Col>\n <InputFileLink\n accept={accept}\n onChange={(fileList) => {\n if (fileList[0].size > fileSize * 1024 * 1024) {\n message.error(intl.formatMessage({id: \"FileNotExceeding\"}, {\n name: fileList[0].name, size: fileSize\n }));\n return;\n }\n setRotate(0);\n setScale(1);\n setImage(fileList[0]);\n }}\n >\n {intl.formatMessage({id: 'ReUpload'})}\n </InputFileLink>\n </Col>\n </Row>\n </Space>)}\n </Col>\n {preview && (<Col span={8}>\n <div className={style[\"preview-area\"]}>\n <Space direction=\"vertical\">\n <AntdAvatar\n src={previewImg}\n // alt=\"预览\"\n shape={shape}\n style={{\n width: baseWidth / 2 - 36, height: ((baseWidth / 2 - 36) * height) / width,\n }}\n />\n <div\n style={{\n textAlign: \"center\",\n }}\n >\n {intl.formatMessage({id: 'Preview'})}\n </div>\n </Space>\n </div>\n </Col>)}\n </Row>\n </div>);\n});\n\nconst useDropModal = () => {\n const modal = useModal();\n return (props) => {\n const {\n image,\n width,\n height,\n borderRadius,\n getApi,\n preview,\n fileSize,\n accept,\n renderTips,\n border,\n dropModalSize,\n ...others\n } = Object.assign({}, {\n title: \"编辑头像\",\n width: 200,\n height: 200,\n borderRadius: props.shape === \"circle\" && props.width && props.width === props.height ? props.width / 2 : 2,\n preview: true,\n }, props);\n return modal({\n ...others, size: dropModalSize, children: (<ControlAvatarEditor\n preview={preview}\n fileSize={fileSize}\n accept={accept}\n getApi={getApi}\n renderTips={renderTips}\n width={width}\n height={height}\n shape={props.shape === \"circle\" && props.width && props.width === props.height ? \"circle\" : \"square\"}\n borderRadius={borderRadius}\n image={image}\n border={border}\n scale={1}\n rotate={0}\n />),\n });\n };\n};\n\nconst AvatarField = createWithIntl({importMessages, moduleName: \"FormInfo\"})(({\n value,\n gender,\n fileSize = 2,\n accept = [\".jpg\", \".png\", \".jpeg\"],\n openEditor = true,\n apis: currentApis,\n renderTips = (defaultTips) => {\n return defaultTips;\n },\n onChange,\n shape = \"circle\",\n width = 200,\n height = 200,\n title = <IntlProvider\n importMessages={importMessages}\n moduleName=\"FormInfo\">\n <FormattedMessage id={\"Crop\"}\n moduleName=\"FormInfo\"/>\n </IntlProvider>,\n border = 1,\n icon,\n dropModalSize = \"small\",\n defaultAvatar = defaultAvatarIcon,\n displayAvatar,\n }) => {\n const [loading, setLoading] = useState(false);\n const {apis: baseApis} = usePreset();\n const apis = merge({}, baseApis, currentApis);\n const ossUpload = apis.ossUpload || apis.upload || apis.file?.upload;\n const dropRef = useRef(null);\n const dropModal = useDropModal();\n const intl = useIntl({moduleName: localeModuleName});\n return (<UploadButton\n value={value}\n gender={gender}\n accept={accept}\n width={width}\n height={height}\n shape={shape}\n icon={icon}\n loading={loading}\n defaultAvatar={defaultAvatar}\n displayAvatar={displayAvatar}\n apis={apis}\n onChange={(fileList) => {\n if (fileList[0].size > fileSize * 1024 * 1024) {\n message.error(intl.formatMessage({id: \"FileNotExceeding\"}, {\n name: fileList[0].name, size: fileSize\n }));\n return;\n }\n const doUpload = (file) => {\n setLoading(true);\n return ossUpload({file})\n .then(({data}) => {\n if (data.code !== 0) {\n message.error(intl.formatMessage({id: \"UploadFailed\"}, {msg: data.msg ? \":\" + data.msg : \"\"}));\n return;\n }\n onChange(data.data);\n })\n .finally(() => {\n setLoading(false);\n });\n };\n if (openEditor) {\n dropModal({\n image: fileList[0],\n width,\n height,\n title,\n shape,\n border,\n dropModalSize,\n getApi: (api) => (dropRef.current = api),\n fileSize,\n accept,\n renderTips,\n onConfirm: () => {\n doUpload(dropRef.current.getImage());\n },\n });\n return;\n }\n doUpload(fileList[0]);\n }}\n />);\n});\n\nconst Avatar = (props) => {\n const render = useOnChange(props);\n return render(AvatarField);\n};\n\nAvatar.Field = AvatarField;\nAvatar.useDropModal = useDropModal;\n\nexport default Avatar;\n","import {Col, Row, Button, Typography} from \"antd\";\nimport Icon from '@components/Icon';\nimport classnames from \"classnames\";\nimport style from \"./style.module.scss\";\nimport {TableList as TableListBase} from '@kne/react-form-plus';\nimport InfoPage from \"@components/InfoPage\";\nimport {createWithIntl, useIntl} from \"@components/Intl\";\nimport importMessages from \"./locale\";\n\nconst TableList = createWithIntl({moduleName: \"FormInfo\", importMessages})(({className, ...props}) => {\n const {formatMessage} = useIntl({moduleName: \"FormInfo\"});\n return <div className={classnames(className, style['table-list'])}>\n <TableListBase {...props}\n className={classnames(className, style[\"table-list\"])}\n headerRender={(children, {width}) => {\n return <Row\n wrap={false}\n className={style[\"table-list-header\"]}\n style={{\n \"--col-width\": width,\n }}\n >\n {children}\n <Col\n className={style[\"table-list-extra\"]}></Col>\n </Row>\n }} headerItemRender={(children, {\n id, isReq\n }) => {\n return <Col key={id} className={classnames({\n [style[\"is-req\"]]: isReq,\n })}>\n {children}\n </Col>\n }} listRender={(children, {id, width, onRemove, allowRemove}) => {\n return <Row key={id} wrap={false} style={{\n \"--col-width\": width,\n }}>\n {children}\n <Col className={style[\"table-list-extra\"]}><Button type=\"link\" onClick={onRemove} danger\n disabled={!allowRemove}><span><Icon\n type=\"shanchu\"/>{formatMessage({id: 'delText'})}</span></Button></Col>\n </Row>\n }} itemRender={(children) => {\n return <Col className={style[\"table-list-field\"]} flex={1}>\n {children}\n </Col>\n }}>{(children, {title, allowAdd, onAdd}) => {\n return <InfoPage.Part title={title} className={classnames(style[\"table-list-inner\"])}\n extra={allowAdd && <Typography.Link className={style[\"list-btn\"]}\n onClick={() => onAdd({isUnshift: false})}>\n <Icon type=\"tianjia\"/>{formatMessage({id: 'addText'})}\n </Typography.Link>}>\n {children}\n </InfoPage.Part>\n }}</TableListBase></div>;\n});\n\nexport default TableList;\n","import {Button} from \"antd\";\nimport {createWithIntl, useIntl} from \"@components/Intl\";\nimport Icon from \"@components/Icon\";\nimport style from \"./style.module.scss\";\nimport classnames from \"classnames\";\nimport importMessages from \"./locale\";\nimport {MultiField as MultiFieldBase} from '@kne/react-form-plus';\n\n\nconst MultiField = createWithIntl({moduleName: \"FormInfo\", importMessages})((props) => {\n const {formatMessage} = useIntl({moduleName: \"FormInfo\"});\n return <MultiFieldBase {...props} itemRender={(children, {id, index, allowRemove, onRemove}) => {\n return <div\n key={id}\n className={classnames(style[\"mult-field-item\"], \"mult-field-item\", {\n [style[\"first-item\"]]: index === 0,\n })}\n >\n {children}\n <div className={classnames('form-info-mult-option')}>\n <div\n className={classnames(style[\"react-form__field-label\"], \"react-form__field-label\", \"mult-field-delete--label\")}\n />\n <Button\n icon={<Icon type=\"shanchu\"/>}\n onClick={onRemove}\n disabled={!allowRemove}\n />\n </div>\n </div>\n }}>{(children, {allowAdd, onAdd}) => {\n return <div className={classnames(style[\"mult-field\"], \"mult-field\")}>\n {children}\n {allowAdd && (<div className={classnames('form-info-mult-add-btn')}>\n <Button className={style[\"mult-field-add-btn\"]} type=\"dashed\" onClick={() => onAdd({isUnshift: false})}>\n <Icon type=\"tianjia\"/>\n {formatMessage({id: \"addSomeThing\"}, {label: props.label})}\n </Button>\n </div>)}\n </div>\n }}</MultiFieldBase>;\n});\n\nexport default MultiField;\n"],"names":["FlexBox","FlexBoxFetch","useOnChange","useDecorator","hooks","AddressSelect","props","Object","assign","placeholder","label","render","AddressSelectField","Field","AddressEnum","createAddressApi","withAddressApi","AddressInput","inputPlaceholder","AddressInputField","_ref","list","groupArgs","itemRender","column","gap","className","outer","_jsx","InfoPage","children","renderChildren","isFlexBox","Number","isInteger","ref","flexBoxRef","flexBoxColumn","useFlexBox","renderInner","notLayout","FormInfoBase","Col","span","Row","gutter","classnames","style","cloneElement","_jsxs","_Fragment","col","Modal","computedCommonProps","useFormModal","modal","useModal","FormModalButton","classNames","formModal","api","modalProps","others","Button","onClick","FetchButton","modalFunc","InputUpperCaseField","value","onChange","useControlValue","Input","e","target","toUpperCase","InputUpperCase","createWithRemoteLoader","modules","_ref2","remoteModules","formModule","field","ColorPickerField","ColorPickerFieldAntd","toHexString","ColorPicker","useCheckedToValue","withChecked","hoc","WithSwitch","checked","Space","AntdSwitch","Switch","fieldName","checkedProps","createWithFieldDecorator","decoratorList","WrappedComponent","TargetComponent","compose","forwardedRef","labelRender","tips","Tooltip","content","labelHidden","Icon","type","ForwardComponent","forwardRef","keys","filter","key","indexOf","forEach","withInputDefaultPlaceholder","FormattedMessage","id","moduleName","values","text","withSelectDefaultPlaceholder","_ref3","withLang","group","useGroup","groupName","get","groupIndex","_get","lang","useFormLang","Array","isArray","length","map","item","_createElement","name","options","ignoreList","disabledList","fields","getCurrentField","hasOwnProperty","find","newProps","langName","langLabel","disabled","rule","ReactInput","InputNumber","ReactInputNumber","Password","DatePicker","ReactDatePicker","MonthPicker","RangePicker","WeekPicker","TimePicker","ReactTimePicker","DatePickerToday","_ref4","soFarText","formatMessage","useIntl","ReactDatePickerToday","Checkbox","DateRangePicker","TimeRangePicker","RadioGroup","CheckboxGroup","Rate","Slider","SalaryInput","TypeDateRangePicker","MoneyInput","PhoneNumber","Upload","Avatar","FunctionSelect","IndustrySelect","Cascader","TreeSelect","ReactTreeSelect","Select","ReactSelect","TextArea","ReactTextArea","AdvancedSelect","AdvancedSelectField","SuperSelect","SuperSelectField","SuperSelectTableList","SuperSelectTableListField","SuperSelectUser","SuperSelectUserField","fieldDecorator","context","useContext","Provider","Consumer","createContext","createValueWithMaxLength","maxLength","single","setValue","message","newValue","renderDisplayLabel","mapping","onClose","mappingItem","Tag","closable","preventDefault","ModalContent","propsValue","extra","showSelectedTag","renderSelectedContent","useState","propsValueRef","useRef","current","modalOpen","setModalOpen","App","useApp","setValueWithMaxLength","error","useEffect","useImperativeHandle","close","open","onConfirm","footer","direction","PopupContent","placement","inputContent","overlayWidth","wrapClassName","setOpen","Popover","onOpenChange","overlayClassName","arrow","stopPropagation","trigger","DisplayLabel","withFetch","_ref5","setFetchApi","fetchApi","hover","setHover","modalRef","popupRef","selectInnerContext","valueState","getPopupContainer","isPopup","inputContentRender","fetchApiRef","data","isComplete","inner","slice","index","splice","_ref6","align","wrap","SimpleBar","onMouseOver","onMouseOut","size","modalSize","disabledScroller","title","SelectInnerInput","_ref7","displayItems","searchText","setSearchText","setMapping","Map","appendMapping","items","newItems","newMapping","clone","set","transformValue","setValueInType","isNil","valueType","getValueInType","last","defaultValue","setItems","setData","dataFormat","loading","onRequestSuccess","defaultProps","loader","Download","useDownload","downloadBlobFile","useEdit","apis","onEditModalShow","modalApi","formProps","dropRight","filename","split","join","onSubmit","async","onEdit","formData","FormInfo","OptionButtons","_props$apis","handlerEdit","FileListOptionButtons","onDelete","renderModal","onCancel","p","FileList","FileButton","FileButtonBase","FileLink","originName","useFileModal","useFileModalProps","useRefCallback","currentTab","setCurrentTab","previewMap","previewList","getPermission","currentPreviewFileId","setCurrentPreviewFileId","itemApis","maxWidth","justify","Segmented","variant","popupMatchSelectWidth","userName","date","Option","FileType","Typography","Text","ellipsis","dayjs","format","hasPreview","count","locale","en-US","zh-CN","useReactContext","DragButton","getDragButtonEl","UploadButton","accept","onFileSelected","FileInput","multiple","input","DragAreaOuter","fileSize","defaultOpen","dragButtonRef","dragOuterRef","useOutside","contains","IntlProvider","importMessages","el","onDragEnter","UploadTips","icon","renderTips","defaultTips","tipsText","str","replace","onDragOver","dataTransfer","dropEffect","onDrop","files","fileList","from","file","acceptFunc","onDragEnd","shape","FileListInner","_previewMap$get","_previewMap$get2","MAX_VALUE","_previewList","setList","infoItemRenders","defaultTab","defaultPreviewFileId","currentApis","titleExtra","baseApis","usePreset","ossId","uploadingList","useFileUpload","concurrentCount","onAdd","onSave","response","_len","arguments","args","_key","res","onUpload","ossUpload","useMemo","onPreview","newList","findIndex","success","titleExtraInner","Title","Divider","List","dataSource","FilePreview","src","Empty","image","PRESENTED_IMAGE_SIMPLE","DragArea","defaultList","flex","subtitle","importantInfo","importantInfoType","moreInfo","AntdTooltip","rootClassName","every","tooltipTitle","fetchContent","showLoading","loadingClassName","force","useFetch","auto","isLoading","send","Spin","createdField","User","UserField","Table","TableField","createdList","renderList","createListField","openApi","useFormContext","LoadingButton","SelectField","useUIDecorator","numberFormat","_value","isNaN","Math","abs","toFixed","FormField","isError","marginBottom","SalaryInputField","onBlur","isRange","showMonth","remindUnit","req","_placeholder","_placeholderInput","isTenThousand","isFace","isOther","transform","useSimulationBlur","min","max","includes","formatter","textAlign","description","color","Enum","width","borderLeft","borderRight","pointerEvents","addonAfter","v","month","defaultPropsApi","defaultPropsValue","SalaryField","_props$rule","errorRender","currentError","emitter","formState","targetFieldInfo","formStateRef","setCurrentError","addListener","validate","currentField","status","errMsg","util","compileErrMsg","msg","remove","useErrorMsg","isHover","setIsHover","errorContent","closeHover","popoverChildrenRef","popoverContentRef","useClickOutside","setWidth","useLayoutEffect","callback","querySelector","clientWidth","resizeObserver","ResizeObserver","observe","mutationObserver","MutationObserver","subtree","childList","disconnect","transitionName","onMouseEnter","helperGuideName","HelperGuide","ConfirmButton","Drawer","useFormDrawer","drawer","useDrawer","FormDrawerButton","formDrawer","TypeDateRangePickerField","_olderREQ","RULES","REQ","_olderLEN","LEN","otherOptions","interceptors","use","output","_value$id","_value$id$split","Date","valueOf","toISOString","push","originalName","default","loadCountyList","loadModule","countyList","countyAbMap","ab","country_code","countyCodeMap","code","matcher","match","getLocaleMsg","EMAIL","LENGTH_EQUAL","end","LENGTH_MORE","start","LENGTH_LESS","preset","merge","rules","ruleName","result","test","PHONE_NUMBER_INPUT","ARRAY_LENGTH","datePicker","interceptor","rangeDatePicker","inputNumber","changeOnWheel","textArea","autoSize","minRows","maxRows","globalProps","labelTips","HelperGuideLabel","localeModuleName","withDecorator","footerButtons","cancelText","saveText","autoClose","ButtonComponent","CancelButton","SubmitButton","innerRender","_formProps","Form","IndustrySelectField","FunctionSelectField","CascaderField","createTreeUtils","TextField","height","overflow","reactFormAntd","FormItem","ErrorTip","SetPreset","isPreset","setIsPreset","formInfo","Promise","resolve","formPreset","then","FormLangProvider","HelperGuideProvider","ReactForm","createWithIntl","addText","important","Outer","deleteButtonProps","SubList","listRender","allowRemove","onRemove","danger","allowAdd","add","isUnshift","UploadField","showUploadList","previewFileList","extensionNames","Flex","vertical","InputFileButton","omit","isNotEmpty","formUtils","MoneyInputField","chineseEmpty","showError","errorDesc","transformMoneyToChinese","moneyFormat","setStatus","inputNumberProps","controls","precision","MAX_NUM","parser","parserValue","val","changeMoneyToChinese","toChineseCharacter","FormStepState","currentIndex","setCurrentIndex","stepCacheRef","isLastStep","currentProps","completeText","nextText","computedModalCommonProps","_stepCacheRef$current","otherProps","stepSection","Steps","useFormStepModal","FormStepModalButton","TableList","FormApiButton","FormModal","FormStepModal","FormDrawer","MultiField","widget","utils","AvatarDisplay","Image","withInputFile","gender","defaultAvatar","displayAvatar","dataURLtoBlob","dataURL","arr","_arr","substring","mime","bstr","atob","n","u8arr","Uint8Array","charCodeAt","Blob","ControlAvatarEditor","propsImage","borderRadius","preview","getApi","border","intl","baseWidth","setBaseWidth","outerRef","setImage","scale","setScale","rotate","setRotate","previewImg","setPreviewImg","editorRef","getImage","canvas","targetCanvas","document","createElement","targetCtx","getContext","drawImage","window","File","toDataURL","makePreviewInner","makePreview","useDebouncedCallback","AvatarEditor","onImageReady","onImageChange","tooltip","step","InputFileLink","AntdAvatar","useDropModal","dropModalSize","AvatarField","_apis$file","openEditor","defaultAvatarIcon","setLoading","upload","dropRef","dropModal","doUpload","finally","TableListBase","headerRender","headerItemRender","isReq","Link","MultiFieldBase"],"sourceRoot":""}
|