tntd 3.0.35-beta.3 → 3.0.35-beta.5
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/es/query-form/Field/Composition/index.js +7 -0
- package/es/query-form/Field/Composition/index.js.map +1 -1
- package/es/query-form/index.js +3 -1
- package/es/query-form/index.js.map +1 -1
- package/es/query-list-scene/QueryForm.js +4 -4
- package/es/query-list-scene/QueryForm.js.map +1 -1
- package/lib/query-form/Field/Composition/index.js +7 -0
- package/lib/query-form/Field/Composition/index.js.map +1 -1
- package/lib/query-form/index.js +3 -1
- package/lib/query-form/index.js.map +1 -1
- package/lib/query-list-scene/QueryForm.js +4 -5
- package/lib/query-list-scene/QueryForm.js.map +1 -1
- package/package.json +1 -1
|
@@ -129,12 +129,19 @@ const CompositionInput = ({
|
|
|
129
129
|
}
|
|
130
130
|
};
|
|
131
131
|
const onDelete = (key, e) => {
|
|
132
|
+
var _a, _b;
|
|
132
133
|
e.preventDefault();
|
|
133
134
|
if (value.length > 0) {
|
|
134
135
|
const newValue = value.filter(v => v.key !== key);
|
|
135
136
|
setValue(newValue);
|
|
136
137
|
const deleteKeys = [key];
|
|
137
138
|
onChange(parseArrayToObject(newValue), deleteKeys, true);
|
|
139
|
+
// 删除的时候也触发Field的onChange -- 泳建提的需求
|
|
140
|
+
const fieldProps = (_a = _find(fieldItems, it => {
|
|
141
|
+
var _a;
|
|
142
|
+
return ((_a = it.props) === null || _a === void 0 ? void 0 : _a.name) === key;
|
|
143
|
+
})) === null || _a === void 0 ? void 0 : _a.props;
|
|
144
|
+
((_b = fieldProps === null || fieldProps === void 0 ? void 0 : fieldProps.props) === null || _b === void 0 ? void 0 : _b.onChange) && fieldProps.props.onChange(undefined);
|
|
138
145
|
}
|
|
139
146
|
};
|
|
140
147
|
const focusInput = value => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/query-form/Field/Composition/index.js"],"names":[],"mappings":"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","sourcesContent":["import React, {\n useEffect,\n useState,\n useRef,\n useImperativeHandle,\n forwardRef,\n useCallback,\n} from 'react'\nimport LocaleReceiver from 'antd/es/locale-provider/LocaleReceiver'\nimport { find } from 'lodash'\nimport Icon from '../../../icon'\nimport Input from '../../../input'\nimport FieldPopover from './FieldPopover'\nimport ValueTag from './ValueTag'\nimport { parseArrayToObject, parseObjectToArray, getLabel } from './utils'\nimport './index.less'\n\n/**\n * @param value: [{\n key: 'key1',\n value: 'value1',\n label: 'key1:value1'\n }, {\n key: 'key2',\n value: ['value2', 'value3'],\n label: 'key1:value2|value3'\n }]\n * @param {*} ref \n * @returns \n */\nconst regex = /^.+:.*$/\nconst CompositionInput = (\n {\n fieldItems,\n initialValues,\n onChange,\n form,\n compositionShowReset,\n clsPrefix,\n _onReset,\n _onSearch,\n },\n ref\n) => {\n const prefix = `${clsPrefix}-composition-input`\n const [value, setValue] = useState(parseObjectToArray(initialValues, fieldItems))\n const [tempItem, setTempItem] = useState()\n const [searchText, setSearchText] = useState('')\n const [visible, setVisible] = useState(false)\n const [fieldItem, setFieldItem] = useState(undefined)\n const fieldItemsRef = useRef(fieldItems)\n const _fieldItem = fieldItem\n ? find(fieldItems, (f) => f.props?.name === fieldItem.name)?.props || fieldItem\n : {}\n const { props } = fieldItem || {}\n\n const inputRef = useRef(null)\n const widthRef = useRef(null)\n const fieldRef = useRef(null)\n const eventRef = useRef(false)\n\n fieldItemsRef.current = fieldItems\n\n const updateValues = useCallback((obj) => {\n const newValueArr = parseObjectToArray(obj, fieldItemsRef.current)\n setValue(newValueArr)\n }, [])\n\n const updateValue = useCallback((name, value) => {\n updateValues({ [name]: value })\n }, [])\n\n if(!eventRef.current) {\n eventRef.current = true\n form.on('setValue', updateValue)\n form.on('setValues', updateValues)\n }\n\n useEffect(() => {\n return () => {\n form.off('setValue', updateValue)\n form.off('setValues', updateValues)\n }\n }, [])\n\n const handleFocus = (e) => {\n e.preventDefault()\n setTimeout(() => {\n inputRef?.current?.focus()\n }, 10)\n if (!visible && !regex.test(searchText)) {\n setVisible(true)\n }\n }\n\n useImperativeHandle(ref, () => ({\n changeVal: () => {\n return value\n },\n }))\n\n const onClear = (e) => {\n e.stopPropagation()\n const initKeys = Object.keys(initialValues || {})\n const deleteKeys = value?.filter(({ key }) => !initKeys.includes(key)).map(({ key }) => key)\n setValue(parseObjectToArray(initialValues || {}, fieldItems))\n onChange({ ...(initialValues || {}) }, deleteKeys, false, true)\n // 清除其他数据\n setSearchText('')\n setTempItem()\n _onReset()\n }\n\n const doSearch = (e) => {\n e.stopPropagation()\n const inputValue = searchText?.match(/[^:]+:(.*)/)?.[1] || null\n if (tempItem && inputValue) {\n // tempItem.label = searchText\n tempItem.value = inputValue // 得到输入值\n if (!value?.find((v) => v.key === tempItem.key)) {\n const newValue = [...value, tempItem]\n setValue(newValue)\n onChange(parseArrayToObject(newValue))\n } else {\n const newValue = value.map((v) => (v.key === tempItem.key ? tempItem : v))\n setValue(newValue)\n onChange(parseArrayToObject(newValue))\n }\n e.target.value = inputValue\n form.emit('search', { [tempItem.key]: inputValue, current: 1 })\n setTempItem()\n setSearchText('')\n } else {\n _onSearch()\n }\n }\n\n const onDelete = (key, e) => {\n e.preventDefault()\n if (value.length > 0) {\n const newValue = value.filter((v) => v.key !== key)\n setValue(newValue)\n const deleteKeys = [key]\n onChange(parseArrayToObject(newValue), deleteKeys, true)\n }\n }\n\n const focusInput = (value) => {\n inputRef?.current?.focus()\n setSearchText(getLabel(value, fieldItems))\n setTempItem(value)\n setTimeout(() => {\n inputRef?.current?.focus()\n }, 10)\n }\n\n const handleFieldChange = (value, isInput, hasValue, needSearch = true) => {\n if (isInput) {\n focusInput(value)\n return\n }\n setValue(value)\n setSearchText('')\n setTempItem()\n if (hasValue) onChange(parseArrayToObject(value), undefined, needSearch)\n }\n\n // 输入框事件方法\n const onInputChange = (e) => {\n const value = e.target.value\n if (tempItem) {\n if (regex.test(value)) {\n // 有输入值\n setSearchText(value)\n } else {\n // 没有输入值, 清空选择的属性类型重新显示属性列表\n setSearchText('')\n setTempItem()\n }\n } else {\n setSearchText(value)\n }\n }\n\n const onPressEnter = (e) => {\n const inputValue = searchText?.match(/[^:]+:(.*)/)?.[1] || null\n if (tempItem && inputValue) {\n setVisible(false)\n // tempItem.label = searchText\n tempItem.value = inputValue // 得到输入值\n if (!value?.find((v) => v.key === tempItem.key)) {\n const newValue = [...value, tempItem]\n setValue(newValue)\n onChange(parseArrayToObject(newValue))\n } else {\n const newValue = value.map((v) => (v.key === tempItem.key ? tempItem : v))\n setValue(newValue)\n onChange(parseArrayToObject(newValue))\n }\n e.target.value = inputValue\n form.emit('search', { [tempItem.key]: inputValue, current: 1 })\n props?.onPressEnter && props.onPressEnter(e)\n }\n setTempItem()\n setSearchText('')\n }\n\n return (\n <LocaleReceiver componentName=\"QueryForm\">\n {(locale) => {\n return (\n <div className={prefix} onClick={handleFocus}>\n <span className={`${prefix}-width`} ref={widthRef}>\n {searchText}\n </span>\n <ul className={`${prefix}-items`}>\n {value &&\n value.map((item, index) => (\n <li key={item.key} className={`${prefix}-items-item`}>\n <ValueTag\n onChange={handleFieldChange}\n value={value}\n item={item}\n fieldItems={fieldItems}\n locale={locale}\n onDelete={onDelete}\n handleTag={focusInput}\n clsPrefix={clsPrefix}\n form={form}\n />\n </li>\n ))}\n <li className={`${prefix}-items-input`}>\n <FieldPopover\n ref={fieldRef}\n onChange={handleFieldChange}\n clsPrefix={clsPrefix}\n fieldItems={fieldItems}\n propItem={_fieldItem}\n setFieldItem={setFieldItem}\n form={form}\n regex={regex}\n visible={visible}\n value={value}\n setVisible={setVisible}\n searchText={searchText}\n locale={locale}\n placement=\"bottomLeft\"\n >\n <Input\n ref={inputRef}\n value={searchText}\n className=\"inputClass\"\n placeholder={!value?.length ? locale.placeholder : undefined}\n {...props}\n onPressEnter={onPressEnter}\n onChange={onInputChange}\n />\n </FieldPopover>\n </li>\n </ul>\n <div className={`${prefix}-prefix`}>\n <Icon type=\"filter\" />\n </div>\n {compositionShowReset && (\n <div className={`${prefix}-clear`}>\n <Icon onClick={onClear} type=\"close-circle\" theme=\"filled\" />\n </div>\n )}\n <div className={`${prefix}-search`} onClick={doSearch}>\n <Icon type=\"search\" />\n </div>\n </div>\n )\n }}\n </LocaleReceiver>\n )\n}\nexport default forwardRef(CompositionInput)\n"]}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/query-form/Field/Composition/index.js"],"names":[],"mappings":"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","sourcesContent":["import React, {\n useEffect,\n useState,\n useRef,\n useImperativeHandle,\n forwardRef,\n useCallback,\n} from 'react'\nimport LocaleReceiver from 'antd/es/locale-provider/LocaleReceiver'\nimport { find } from 'lodash'\nimport Icon from '../../../icon'\nimport Input from '../../../input'\nimport FieldPopover from './FieldPopover'\nimport ValueTag from './ValueTag'\nimport { parseArrayToObject, parseObjectToArray, getLabel } from './utils'\nimport './index.less'\n\n/**\n * @param value: [{\n key: 'key1',\n value: 'value1',\n label: 'key1:value1'\n }, {\n key: 'key2',\n value: ['value2', 'value3'],\n label: 'key1:value2|value3'\n }]\n * @param {*} ref \n * @returns \n */\nconst regex = /^.+:.*$/\nconst CompositionInput = (\n {\n fieldItems,\n initialValues,\n onChange,\n form,\n compositionShowReset,\n clsPrefix,\n _onReset,\n _onSearch,\n },\n ref\n) => {\n const prefix = `${clsPrefix}-composition-input`\n const [value, setValue] = useState(parseObjectToArray(initialValues, fieldItems))\n const [tempItem, setTempItem] = useState()\n const [searchText, setSearchText] = useState('')\n const [visible, setVisible] = useState(false)\n const [fieldItem, setFieldItem] = useState(undefined)\n const fieldItemsRef = useRef(fieldItems)\n const _fieldItem = fieldItem\n ? find(fieldItems, (f) => f.props?.name === fieldItem.name)?.props || fieldItem\n : {}\n const { props } = fieldItem || {}\n\n const inputRef = useRef(null)\n const widthRef = useRef(null)\n const fieldRef = useRef(null)\n const eventRef = useRef(false)\n\n fieldItemsRef.current = fieldItems\n\n const updateValues = useCallback((obj) => {\n const newValueArr = parseObjectToArray(obj, fieldItemsRef.current)\n setValue(newValueArr)\n }, [])\n\n const updateValue = useCallback((name, value) => {\n updateValues({ [name]: value })\n }, [])\n\n if (!eventRef.current) {\n eventRef.current = true\n form.on('setValue', updateValue)\n form.on('setValues', updateValues)\n }\n\n useEffect(() => {\n return () => {\n form.off('setValue', updateValue)\n form.off('setValues', updateValues)\n }\n }, [])\n\n const handleFocus = (e) => {\n e.preventDefault()\n setTimeout(() => {\n inputRef?.current?.focus()\n }, 10)\n if (!visible && !regex.test(searchText)) {\n setVisible(true)\n }\n }\n\n useImperativeHandle(ref, () => ({\n changeVal: () => {\n return value\n },\n }))\n\n const onClear = (e) => {\n e.stopPropagation()\n const initKeys = Object.keys(initialValues || {})\n const deleteKeys = value?.filter(({ key }) => !initKeys.includes(key)).map(({ key }) => key)\n setValue(parseObjectToArray(initialValues || {}, fieldItems))\n onChange({ ...(initialValues || {}) }, deleteKeys, false, true)\n // 清除其他数据\n setSearchText('')\n setTempItem()\n _onReset()\n }\n\n const doSearch = (e) => {\n e.stopPropagation()\n const inputValue = searchText?.match(/[^:]+:(.*)/)?.[1] || null\n if (tempItem && inputValue) {\n // tempItem.label = searchText\n tempItem.value = inputValue // 得到输入值\n if (!value?.find((v) => v.key === tempItem.key)) {\n const newValue = [...value, tempItem]\n setValue(newValue)\n onChange(parseArrayToObject(newValue))\n } else {\n const newValue = value.map((v) => (v.key === tempItem.key ? tempItem : v))\n setValue(newValue)\n onChange(parseArrayToObject(newValue))\n }\n e.target.value = inputValue\n form.emit('search', { [tempItem.key]: inputValue, current: 1 })\n setTempItem()\n setSearchText('')\n } else {\n _onSearch()\n }\n }\n\n const onDelete = (key, e) => {\n e.preventDefault()\n if (value.length > 0) {\n const newValue = value.filter((v) => v.key !== key)\n setValue(newValue)\n const deleteKeys = [key]\n onChange(parseArrayToObject(newValue), deleteKeys, true)\n // 删除的时候也触发Field的onChange -- 泳建提的需求\n const fieldProps = find(fieldItems, (it) => it.props?.name === key)?.props\n fieldProps?.props?.onChange && fieldProps.props.onChange(undefined)\n }\n }\n\n const focusInput = (value) => {\n inputRef?.current?.focus()\n setSearchText(getLabel(value, fieldItems))\n setTempItem(value)\n setTimeout(() => {\n inputRef?.current?.focus()\n }, 10)\n }\n\n const handleFieldChange = (value, isInput, hasValue, needSearch = true) => {\n if (isInput) {\n focusInput(value)\n return\n }\n setValue(value)\n setSearchText('')\n setTempItem()\n if (hasValue) onChange(parseArrayToObject(value), undefined, needSearch)\n }\n\n // 输入框事件方法\n const onInputChange = (e) => {\n const value = e.target.value\n if (tempItem) {\n if (regex.test(value)) {\n // 有输入值\n setSearchText(value)\n } else {\n // 没有输入值, 清空选择的属性类型重新显示属性列表\n setSearchText('')\n setTempItem()\n }\n } else {\n setSearchText(value)\n }\n }\n\n const onPressEnter = (e) => {\n const inputValue = searchText?.match(/[^:]+:(.*)/)?.[1] || null\n if (tempItem && inputValue) {\n setVisible(false)\n // tempItem.label = searchText\n tempItem.value = inputValue // 得到输入值\n if (!value?.find((v) => v.key === tempItem.key)) {\n const newValue = [...value, tempItem]\n setValue(newValue)\n onChange(parseArrayToObject(newValue))\n } else {\n const newValue = value.map((v) => (v.key === tempItem.key ? tempItem : v))\n setValue(newValue)\n onChange(parseArrayToObject(newValue))\n }\n e.target.value = inputValue\n form.emit('search', { [tempItem.key]: inputValue, current: 1 })\n props?.onPressEnter && props.onPressEnter(e)\n }\n setTempItem()\n setSearchText('')\n }\n\n return (\n <LocaleReceiver componentName=\"QueryForm\">\n {(locale) => {\n return (\n <div className={prefix} onClick={handleFocus}>\n <span className={`${prefix}-width`} ref={widthRef}>\n {searchText}\n </span>\n <ul className={`${prefix}-items`}>\n {value &&\n value.map((item, index) => (\n <li key={item.key} className={`${prefix}-items-item`}>\n <ValueTag\n onChange={handleFieldChange}\n value={value}\n item={item}\n fieldItems={fieldItems}\n locale={locale}\n onDelete={onDelete}\n handleTag={focusInput}\n clsPrefix={clsPrefix}\n form={form}\n />\n </li>\n ))}\n <li className={`${prefix}-items-input`}>\n <FieldPopover\n ref={fieldRef}\n onChange={handleFieldChange}\n clsPrefix={clsPrefix}\n fieldItems={fieldItems}\n propItem={_fieldItem}\n setFieldItem={setFieldItem}\n form={form}\n regex={regex}\n visible={visible}\n value={value}\n setVisible={setVisible}\n searchText={searchText}\n locale={locale}\n placement=\"bottomLeft\"\n >\n <Input\n ref={inputRef}\n value={searchText}\n className=\"inputClass\"\n placeholder={!value?.length ? locale.placeholder : undefined}\n {...props}\n onPressEnter={onPressEnter}\n onChange={onInputChange}\n />\n </FieldPopover>\n </li>\n </ul>\n <div className={`${prefix}-prefix`}>\n <Icon type=\"filter\" />\n </div>\n {compositionShowReset && (\n <div className={`${prefix}-clear`}>\n <Icon onClick={onClear} type=\"close-circle\" theme=\"filled\" />\n </div>\n )}\n <div className={`${prefix}-search`} onClick={doSearch}>\n <Icon type=\"search\" />\n </div>\n </div>\n )\n }}\n </LocaleReceiver>\n )\n}\nexport default forwardRef(CompositionInput)\n"]}
|
package/es/query-form/index.js
CHANGED
|
@@ -88,7 +88,9 @@ const QueryForm = forwardRef(({
|
|
|
88
88
|
if (onSearch) {
|
|
89
89
|
onSearch(newValues, true);
|
|
90
90
|
} else {
|
|
91
|
-
onChange(newValues, {
|
|
91
|
+
onChange(newValues, {
|
|
92
|
+
name: deleteKeys[0]
|
|
93
|
+
});
|
|
92
94
|
}
|
|
93
95
|
} else if (needSearch && !hasOnChange) {
|
|
94
96
|
formRef.current.emit('search', Object.assign(Object.assign({}, newValues), {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/query-form/index.js"],"names":[],"mappings":"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","sourcesContent":["import React, { useMemo, useRef, useEffect, useState, useImperativeHandle, forwardRef } from 'react'\nimport cn from 'classnames'\nimport Composition from './Field/Composition'\nimport Button from '../button'\nimport Form from '../form'\nimport { getLanguage, getText } from '../prev-locale'\nimport createActions from './createActions'\nimport Field from './Field'\nimport useForm from './useForm'\n\nimport './index.less'\n\nconst clsPrefix = 'tnt-queryform'\n\nconst QueryForm = forwardRef(\n (\n {\n form,\n className = '',\n initialValues: _initialValues,\n language,\n onSearch,\n onReset,\n hasOnChange,\n onChange,\n renderActions,\n extraActions,\n children,\n showSearch = false,\n showReset = false,\n showFieldCount = 3,\n minGroupCount = 3, // 最小聚合个数\n compositionShowReset = true,\n inline,\n },\n ref\n ) => {\n const [initialValues, setInitialValues] = useState(_initialValues || {})\n const formRef = useRef(form || createActions())\n\n useImperativeHandle(\n ref,\n () => ({\n form: formRef.current,\n }),\n []\n )\n\n useEffect(() => {\n const _search = (params = {}) => {\n onSearch?.({\n ...formRef.current.getValues(),\n ...params,\n })\n }\n formRef.current.setData('initialValues', initialValues)\n formRef.current.setData('values', initialValues)\n formRef.current.on('search', _search)\n return () => {\n formRef.current.off('search', _search)\n }\n }, [])\n\n const _getText = (key) => {\n return getText(key, language || getLanguage())\n }\n const _onSearch = () => {\n onSearch?.(formRef.current.getValues())\n }\n\n const _onReset = () => {\n formRef.current.setValues({ ...initialValues })\n onReset?.(initialValues)\n setInitialValues({ ...initialValues })\n }\n\n const _onFieldChange = (name, value, ...rest) => {\n const values = formRef.current.getValues()\n const newValues = {\n ...values,\n [name]: value,\n }\n const changedInfo = { name, value, preValue: values?.[name] }\n formRef.current.setData('values', newValues)\n onChange && onChange(newValues, changedInfo, ...rest)\n }\n\n const _onCompositionFieldChange = (value, deleteKeys, needSearch, isReset) => {\n const values = formRef.current.getValues()\n const newValues = {\n ...values,\n ...value,\n }\n const changeKeys = Object.keys(newValues)\n if (deleteKeys?.length) {\n deleteKeys?.forEach((key) => {\n if (values?.[key] || values?.[key] === 0 || values?.[key] === false) {\n delete newValues[key]\n }\n })\n }\n formRef.current.setData('values', newValues)\n if (isReset) {\n return\n } else if (deleteKeys?.length === 1) {\n // 删除一定要搜索\n if (onSearch) {\n onSearch(newValues, true)\n } else {\n onChange(newValues, {})\n }\n } else if (needSearch && !hasOnChange) {\n formRef.current.emit('search', { ...newValues, current: 1 })\n } else if (onChange) {\n changeKeys.forEach((key) => {\n if (JSON.stringify(value[key]) !== JSON.stringify(values[key])) {\n const changedInfo = { name: key, value: value[key], preValue: values?.[key] }\n onChange(newValues, changedInfo)\n }\n })\n }\n }\n\n const [groupFields, outFields, rightChildren, compositionInitValues] = useMemo(() => {\n let groupFields = []\n let outFields = []\n let otherFields = []\n const rightChildren = []\n const compositionInitValues = {}\n React.Children.map(children, (child) => {\n if (child) {\n if (child.props?.align === 'right') {\n rightChildren.push(child)\n return\n } else if (child.props?.isGroup === false) {\n outFields.push(child)\n } else {\n groupFields.push(child)\n }\n otherFields.push(child)\n }\n })\n if (groupFields.length <= minGroupCount) {\n groupFields = []\n outFields = otherFields\n } else {\n // 初始值\n for (let i = 0; i < groupFields.length; i++) {\n const name = groupFields[i].props?.name\n if (initialValues[name] !== undefined) {\n compositionInitValues[name] = initialValues[name]\n }\n }\n }\n return [\n groupFields,\n outFields,\n rightChildren,\n Object.keys(compositionInitValues).length > 0 ? compositionInitValues : undefined,\n ]\n }, [children, minGroupCount, initialValues])\n\n const isGroupMode = groupFields.length > 0\n const hasOutField = outFields.length > 0\n const showExtra = rightChildren.length > 0 || extraActions\n\n return (\n <div className={cn(clsPrefix, className, { [`${clsPrefix}-inline`]: inline })}>\n <Form layout=\"inline\">\n <div className={`${clsPrefix}-top`}>\n <div className={`${clsPrefix}-top-body`}>\n {outFields.map((child, i) =>\n React.cloneElement(child, {\n form: formRef.current,\n initialValue: initialValues?.[child.props?.name],\n onChange: _onFieldChange,\n key: i,\n })\n )}\n {isGroupMode && (!hasOutField || inline) && (\n <Composition\n clsPrefix={clsPrefix}\n fieldItems={groupFields}\n initialValues={compositionInitValues}\n _onReset={_onReset}\n _onSearch={_onSearch}\n onChange={_onCompositionFieldChange}\n form={formRef.current}\n compositionShowReset={compositionShowReset}\n />\n )}\n {renderActions ? (\n renderActions()\n ) : (\n <>\n {/* {showSearch && (\n <Button type=\"primary\" onClick={_onSearch}>\n {_getText('search')}\n </Button>\n )}\n {showReset && <Button onClick={_onReset}>{_getText('reset')}</Button>} */}\n </>\n )}\n </div>\n {showExtra && (\n <div className={`${clsPrefix}-extra`}>\n {rightChildren}\n {extraActions}\n </div>\n )}\n </div>\n {isGroupMode && hasOutField && !inline && (\n <div className={`${clsPrefix}-bottom`}>\n <Composition\n clsPrefix={clsPrefix}\n fieldItems={groupFields}\n initialValues={compositionInitValues}\n _onReset={_onReset}\n _onSearch={_onSearch}\n onChange={_onCompositionFieldChange}\n form={formRef.current}\n compositionShowReset={compositionShowReset}\n />\n </div>\n )}\n </Form>\n </div>\n )\n }\n)\n\nQueryForm.Field = Field\nQueryForm.useForm = useForm\nQueryForm.createForm = createActions\n\nexport default QueryForm\n"]}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/query-form/index.js"],"names":[],"mappings":"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","sourcesContent":["import React, { useMemo, useRef, useEffect, useState, useImperativeHandle, forwardRef } from 'react'\nimport cn from 'classnames'\nimport Composition from './Field/Composition'\nimport Button from '../button'\nimport Form from '../form'\nimport { getLanguage, getText } from '../prev-locale'\nimport createActions from './createActions'\nimport Field from './Field'\nimport useForm from './useForm'\n\nimport './index.less'\n\nconst clsPrefix = 'tnt-queryform'\n\nconst QueryForm = forwardRef(\n (\n {\n form,\n className = '',\n initialValues: _initialValues,\n language,\n onSearch,\n onReset,\n hasOnChange,\n onChange,\n renderActions,\n extraActions,\n children,\n showSearch = false,\n showReset = false,\n showFieldCount = 3,\n minGroupCount = 3, // 最小聚合个数\n compositionShowReset = true,\n inline,\n },\n ref\n ) => {\n const [initialValues, setInitialValues] = useState(_initialValues || {})\n const formRef = useRef(form || createActions())\n\n useImperativeHandle(\n ref,\n () => ({\n form: formRef.current,\n }),\n []\n )\n\n useEffect(() => {\n const _search = (params = {}) => {\n onSearch?.({\n ...formRef.current.getValues(),\n ...params,\n })\n }\n formRef.current.setData('initialValues', initialValues)\n formRef.current.setData('values', initialValues)\n formRef.current.on('search', _search)\n return () => {\n formRef.current.off('search', _search)\n }\n }, [])\n\n const _getText = (key) => {\n return getText(key, language || getLanguage())\n }\n const _onSearch = () => {\n onSearch?.(formRef.current.getValues())\n }\n\n const _onReset = () => {\n formRef.current.setValues({ ...initialValues })\n onReset?.(initialValues)\n setInitialValues({ ...initialValues })\n }\n\n const _onFieldChange = (name, value, ...rest) => {\n const values = formRef.current.getValues()\n const newValues = {\n ...values,\n [name]: value,\n }\n const changedInfo = { name, value, preValue: values?.[name] }\n formRef.current.setData('values', newValues)\n onChange && onChange(newValues, changedInfo, ...rest)\n }\n\n const _onCompositionFieldChange = (value, deleteKeys, needSearch, isReset) => {\n const values = formRef.current.getValues()\n const newValues = {\n ...values,\n ...value,\n }\n const changeKeys = Object.keys(newValues)\n if (deleteKeys?.length) {\n deleteKeys?.forEach((key) => {\n if (values?.[key] || values?.[key] === 0 || values?.[key] === false) {\n delete newValues[key]\n }\n })\n }\n formRef.current.setData('values', newValues)\n if (isReset) {\n return\n } else if (deleteKeys?.length === 1) {\n // 删除一定要搜索\n if (onSearch) {\n onSearch(newValues, true)\n } else {\n onChange(newValues, { name: deleteKeys[0] })\n }\n } else if (needSearch && !hasOnChange) {\n formRef.current.emit('search', { ...newValues, current: 1 })\n } else if (onChange) {\n changeKeys.forEach((key) => {\n if (JSON.stringify(value[key]) !== JSON.stringify(values[key])) {\n const changedInfo = { name: key, value: value[key], preValue: values?.[key] }\n onChange(newValues, changedInfo)\n }\n })\n }\n }\n\n const [groupFields, outFields, rightChildren, compositionInitValues] = useMemo(() => {\n let groupFields = []\n let outFields = []\n let otherFields = []\n const rightChildren = []\n const compositionInitValues = {}\n React.Children.map(children, (child) => {\n if (child) {\n if (child.props?.align === 'right') {\n rightChildren.push(child)\n return\n } else if (child.props?.isGroup === false) {\n outFields.push(child)\n } else {\n groupFields.push(child)\n }\n otherFields.push(child)\n }\n })\n if (groupFields.length <= minGroupCount) {\n groupFields = []\n outFields = otherFields\n } else {\n // 初始值\n for (let i = 0; i < groupFields.length; i++) {\n const name = groupFields[i].props?.name\n if (initialValues[name] !== undefined) {\n compositionInitValues[name] = initialValues[name]\n }\n }\n }\n return [\n groupFields,\n outFields,\n rightChildren,\n Object.keys(compositionInitValues).length > 0 ? compositionInitValues : undefined,\n ]\n }, [children, minGroupCount, initialValues])\n\n const isGroupMode = groupFields.length > 0\n const hasOutField = outFields.length > 0\n const showExtra = rightChildren.length > 0 || extraActions\n\n return (\n <div className={cn(clsPrefix, className, { [`${clsPrefix}-inline`]: inline })}>\n <Form layout=\"inline\">\n <div className={`${clsPrefix}-top`}>\n <div className={`${clsPrefix}-top-body`}>\n {outFields.map((child, i) =>\n React.cloneElement(child, {\n form: formRef.current,\n initialValue: initialValues?.[child.props?.name],\n onChange: _onFieldChange,\n key: i,\n })\n )}\n {isGroupMode && (!hasOutField || inline) && (\n <Composition\n clsPrefix={clsPrefix}\n fieldItems={groupFields}\n initialValues={compositionInitValues}\n _onReset={_onReset}\n _onSearch={_onSearch}\n onChange={_onCompositionFieldChange}\n form={formRef.current}\n compositionShowReset={compositionShowReset}\n />\n )}\n {renderActions ? (\n renderActions()\n ) : (\n <>\n {/* {showSearch && (\n <Button type=\"primary\" onClick={_onSearch}>\n {_getText('search')}\n </Button>\n )}\n {showReset && <Button onClick={_onReset}>{_getText('reset')}</Button>} */}\n </>\n )}\n </div>\n {showExtra && (\n <div className={`${clsPrefix}-extra`}>\n {rightChildren}\n {extraActions}\n </div>\n )}\n </div>\n {isGroupMode && hasOutField && !inline && (\n <div className={`${clsPrefix}-bottom`}>\n <Composition\n clsPrefix={clsPrefix}\n fieldItems={groupFields}\n initialValues={compositionInitValues}\n _onReset={_onReset}\n _onSearch={_onSearch}\n onChange={_onCompositionFieldChange}\n form={formRef.current}\n compositionShowReset={compositionShowReset}\n />\n </div>\n )}\n </Form>\n </div>\n )\n }\n)\n\nQueryForm.Field = Field\nQueryForm.useForm = useForm\nQueryForm.createForm = createActions\n\nexport default QueryForm\n"]}
|
|
@@ -141,10 +141,10 @@ class QueryForm extends React.PureComponent {
|
|
|
141
141
|
const formData = Object.assign(Object.assign({}, initialValues), actions.getFormData());
|
|
142
142
|
actions.setData('formData', formData);
|
|
143
143
|
if (Object.keys(formData).length > 0) {
|
|
144
|
-
setTimeout(() => {
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
}, 100)
|
|
144
|
+
// setTimeout(() => {
|
|
145
|
+
// 回写Composition
|
|
146
|
+
this.form.setValues(formData);
|
|
147
|
+
// }, 100)
|
|
148
148
|
}
|
|
149
149
|
} else {
|
|
150
150
|
actions.setData('formData', initialValues);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"QueryForm.js","sourceRoot":"","sources":["../../src/query-list-scene/QueryForm.js"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"QueryForm.js","sourceRoot":"","sources":["../../src/query-list-scene/QueryForm.js"],"names":[],"mappings":";;;;;;;;;;;AAAA,OAAO,UAAU,MAAM,YAAY,CAAA;AACnC,OAAO,KAAK,MAAM,OAAO,CAAA;AACzB,mCAAmC;AACnC,OAAO,IAAI,MAAM,eAAe,CAAA;AAChC,OAAO,KAAK,MAAM,qBAAqB,CAAA;AAEvC,MAAM,SAAS,GAAG,8BAA8B,CAAA;AAEhD,MAAM,SAAU,SAAQ,KAAK,CAAC,aAAa;IACzC,YAAY,KAAK;QACf,KAAK,CAAC,KAAK,CAAC,CAAA;QAgDd;;;;mBAAW,CAAC,SAAS,EAAE,QAAQ,EAAE,EAAE;gBACjC,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,GAAG,IAAI,CAAC,KAAK,CAAA;gBACxC,IAAI,QAAQ,EAAE;oBACZ,cAAc;oBACd,OAAO,CAAC,WAAW,iCAAM,SAAS,KAAE,OAAO,EAAE,CAAC,IAAG,CAAA;oBACjD,OAAM;iBACP;gBACD,MAAM,MAAM,GAAG,OAAO,CAAC,WAAW,EAAE,CAAA;gBACpC,MAAM,MAAM,iDAAQ,MAAM,GAAK,CAAC,SAAS,IAAI,EAAE,CAAC,KAAE,OAAO,EAAE,CAAC,GAAE,CAAA;gBAE9D,gCAAgC;gBAChC,OAAO,CAAC,OAAO,CAAC,UAAU,EAAE,MAAM,CAAC,CAAA;gBACnC,OAAO,CAAC,OAAO,EAAE,CAAC,IAAI,CAAC,GAAG,EAAE;oBAC1B,QAAQ,IAAI,QAAQ,CAAC,MAAM,CAAC,CAAA;oBAC5B,OAAO,CAAC,IAAI,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAA;gBAChC,CAAC,CAAC,CAAA;YACJ,CAAC;WAAA;QAED;;;;mBAAU,GAAG,EAAE;gBACb,MAAM,EAAE,aAAa,GAAG,EAAE,EAAE,OAAO,EAAE,OAAO,EAAE,GAAG,IAAI,CAAC,KAAK,CAAA;gBAE3D,MAAM,WAAW,mCACZ,aAAa,KAChB,QAAQ,EAAE,aAAa,CAAC,QAAQ,IAAI,EAAE,GACvC,CAAA;gBAED,OAAO,CAAC,WAAW,CAAC,WAAW,EAAE,KAAK,CAAC,CAAA;gBAEvC,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAG,aAAa,CAAC,CAAA;gBACxB,IAAI,CAAC,QAAQ,EAAE,CAAA;YACjB,CAAC;WAAA;QAED;;;;mBAAW,CAAC,SAAS,EAAE,WAAW,EAAE,EAAE;gBACpC,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,GAAG,IAAI,CAAC,KAAK,CAAA;gBAExC,OAAO,CAAC,WAAW,CAAC,SAAS,EAAE,KAAK,CAAC,CAAA;gBACrC,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAG,SAAS,EAAE,WAAW,CAAC,CAAA;YACpC,CAAC;WAAA;QAED;;;;mBAAc,CAAC,IAAI,EAAE,UAAU,EAAE,EAAE;gBACjC,MAAM,EAAE,OAAO,EAAE,GAAG,IAAI,CAAC,KAAK,CAAA;gBAC9B,OAAO,CAAC,OAAO,CAAC,UAAU,EAAE,IAAI,CAAC,CAAA;gBACjC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAA;gBACzB,UAAU,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAA;YAC/B,CAAC;WAAA;QAED;;;;mBAAgB,CAAC,UAAU,EAAE,EAAE;gBAC7B,MAAM,EAAE,aAAa,EAAE,OAAO,EAAE,GAAG,IAAI,CAAC,KAAK,CAAA;gBAE7C,OAAO,CAAC,WAAW,CAAC,aAAa,EAAE,UAAU,CAAC,CAAA;gBAC9C,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,CAAA;YACzB,CAAC;WAAA;QAlGC,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,GAAG,KAAK,CAAA;QAE/B,IAAI,CAAC,IAAI,GAAG,IAAI,IAAI,IAAI,CAAC,UAAU,EAAE,CAAA;QAErC,OAAO,CAAC,EAAE,CAAC,aAAa,EAAE,IAAI,CAAC,WAAW,CAAC,CAAA;QAC3C,OAAO,CAAC,EAAE,CAAC,eAAe,EAAE,IAAI,CAAC,aAAa,CAAC,CAAA;IACjD,CAAC;IAED,MAAM;QACJ,MAAM,KACJ,IAAI,CAAC,KAAK,EADN,EAAE,SAAS,EAAE,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,QAAQ,EAAE,QAAQ,OAC/D,EADoE,KAAK,cAA/E,iFAAiF,CAC3E,CAAA;QAEZ,OAAO,CACL,oBAAC,IAAI,oBACC,KAAK,IACT,IAAI,EAAE,IAAI,CAAC,IAAI,EACf,SAAS,EAAE,UAAU,CAAC,SAAS,EAAE,SAAS,CAAC;YAC3C,sBAAsB;YACtB,YAAY,EAAE,YAAY,IAAI,aAAa,EAC3C,WAAW,EAAE,CAAC,CAAC,QAAQ,EACvB,QAAQ,EAAE,IAAI,CAAC,QAAQ,EACvB,QAAQ,EAAE,IAAI,CAAC,QAAQ,EACvB,OAAO,EAAE,IAAI,CAAC,OAAO,IACrB,CACH,CAAA;IACH,CAAC;IAED,iBAAiB;QACf,MAAM,EAAE,aAAa,GAAG,EAAE,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC,KAAK,CAAA;QAEpE,IAAI,QAAQ,CAAC,MAAM,IAAI,MAAM,EAAE;YAC7B,MAAM,QAAQ,mCACT,aAAa,GACb,OAAO,CAAC,WAAW,EAAE,CACzB,CAAA;YACD,OAAO,CAAC,OAAO,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAA;YACrC,IAAI,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE;gBACpC,qBAAqB;gBACrB,gBAAgB;gBAChB,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAA;gBAC7B,UAAU;aACX;SACF;aAAM;YACL,OAAO,CAAC,OAAO,CAAC,UAAU,EAAE,aAAa,CAAC,CAAA;SAC3C;IACH,CAAC;IAuDD,oBAAoB;QAClB,MAAM,EAAE,OAAO,EAAE,GAAG,IAAI,CAAC,KAAK,CAAA;QAE9B,OAAO,CAAC,cAAc,CAAC,aAAa,EAAE,IAAI,CAAC,WAAW,CAAC,CAAA;QACvD,OAAO,CAAC,cAAc,CAAC,eAAe,EAAE,IAAI,CAAC,aAAa,CAAC,CAAA;IAC7D,CAAC;CACF;AAED,SAAS,CAAC,KAAK,GAAG,KAAK,CAAA;AAEvB,eAAe,SAAS,CAAA","sourcesContent":["import classnames from 'classnames'\nimport React from 'react'\n// import Form from '../query-form'\nimport Form from '../query-form'\nimport Field from '../query-form/Field'\n\nconst clsPrefix = 'tnt-querylistscene-queryform'\n\nclass QueryForm extends React.PureComponent {\n constructor(props) {\n super(props)\n const { actions, form } = props\n\n this.form = form || Form.createForm()\n\n actions.on('setFormData', this.setFormData)\n actions.on('resetFormData', this.resetFormData)\n }\n\n render() {\n const { className, actions, extraActions, extralActions, qlsProps, onChange, ...props } =\n this.props\n\n return (\n <Form\n {...props}\n form={this.form}\n className={classnames(clsPrefix, className)}\n // 前期拼写错误,导致需要兼容错误的api\n extraActions={extraActions || extralActions}\n hasOnChange={!!onChange}\n onChange={this.onChange}\n onSearch={this.onSearch}\n onReset={this.onReset}\n />\n )\n }\n\n componentDidMount() {\n const { initialValues = {}, actions, qlsProps, memory } = this.props\n\n if (qlsProps.memory || memory) {\n const formData = {\n ...initialValues,\n ...actions.getFormData(),\n }\n actions.setData('formData', formData)\n if (Object.keys(formData).length > 0) {\n // setTimeout(() => {\n // 回写Composition\n this.form.setValues(formData)\n // }, 100)\n }\n } else {\n actions.setData('formData', initialValues)\n }\n }\n\n onSearch = (searchObj, isDelete) => {\n const { onSearch, actions } = this.props\n if (isDelete) {\n // 如果是删除-》直接搜索\n actions.setFormData({ ...searchObj, current: 1 })\n return\n }\n const values = actions.getFormData()\n const params = { ...values, ...(searchObj || {}), current: 1 }\n\n // memory 与 url解析setForm时 监听事件异步\n actions.setData('formData', values)\n Promise.resolve().then(() => {\n onSearch && onSearch(params)\n actions.emit('search', params)\n })\n }\n\n onReset = () => {\n const { initialValues = {}, onReset, actions } = this.props\n\n const resetValues = {\n ...initialValues,\n pageSize: initialValues.pageSize || 10, // Set default pageSize if not provided\n }\n\n actions.setFormData(resetValues, false)\n\n onReset?.(initialValues)\n this.onSearch()\n }\n\n onChange = (newValues, changedInfo) => {\n const { onChange, actions } = this.props\n\n actions.setFormData(newValues, false)\n onChange?.(newValues, changedInfo)\n }\n\n setFormData = (data, needSearch) => {\n const { actions } = this.props\n actions.setData('formData', data)\n this.form.setValues(data)\n needSearch && this.onSearch()\n }\n\n resetFormData = (needSearch) => {\n const { initialValues, actions } = this.props\n\n actions.setFormData(initialValues, needSearch)\n this.form.resetValues()\n }\n\n componentWillUnmount() {\n const { actions } = this.props\n\n actions.removeListener('setFormData', this.setFormData)\n actions.removeListener('resetFormData', this.resetFormData)\n }\n}\n\nQueryForm.Field = Field\n\nexport default QueryForm\n"]}
|
|
@@ -168,6 +168,7 @@ var CompositionInput = function CompositionInput(_ref, ref) {
|
|
|
168
168
|
}
|
|
169
169
|
};
|
|
170
170
|
var onDelete = function onDelete(key, e) {
|
|
171
|
+
var _a, _b;
|
|
171
172
|
e.preventDefault();
|
|
172
173
|
if (value.length > 0) {
|
|
173
174
|
var newValue = value.filter(function (v) {
|
|
@@ -176,6 +177,12 @@ var CompositionInput = function CompositionInput(_ref, ref) {
|
|
|
176
177
|
setValue(newValue);
|
|
177
178
|
var deleteKeys = [key];
|
|
178
179
|
onChange((0, _utils.parseArrayToObject)(newValue), deleteKeys, true);
|
|
180
|
+
// 删除的时候也触发Field的onChange -- 泳建提的需求
|
|
181
|
+
var fieldProps = (_a = (0, _find2["default"])(fieldItems, function (it) {
|
|
182
|
+
var _a;
|
|
183
|
+
return ((_a = it.props) === null || _a === void 0 ? void 0 : _a.name) === key;
|
|
184
|
+
})) === null || _a === void 0 ? void 0 : _a.props;
|
|
185
|
+
((_b = fieldProps === null || fieldProps === void 0 ? void 0 : fieldProps.props) === null || _b === void 0 ? void 0 : _b.onChange) && fieldProps.props.onChange(undefined);
|
|
179
186
|
}
|
|
180
187
|
};
|
|
181
188
|
var focusInput = function focusInput(value) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/query-form/Field/Composition/index.js"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,+CAOc;AACd,4FAAmE;AACnE,mCAA6B;AAC7B,yDAAgC;AAChC,2DAAkC;AAClC,kEAAyC;AACzC,0DAAiC;AACjC,mCAA0E;AAC1E,wBAAqB;AAErB;;;;;;;;;;;;GAYG;AACH,MAAM,KAAK,GAAG,SAAS,CAAA;AACvB,MAAM,gBAAgB,GAAG,CACvB,EACE,UAAU,EACV,aAAa,EACb,QAAQ,EACR,IAAI,EACJ,oBAAoB,EACpB,SAAS,EACT,QAAQ,EACR,SAAS,GACV,EACD,GAAG,EACH,EAAE;;IACF,MAAM,MAAM,GAAG,GAAG,SAAS,oBAAoB,CAAA;IAC/C,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,IAAA,gBAAQ,EAAC,IAAA,0BAAkB,EAAC,aAAa,EAAE,UAAU,CAAC,CAAC,CAAA;IACjF,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,GAAG,IAAA,gBAAQ,GAAE,CAAA;IAC1C,MAAM,CAAC,UAAU,EAAE,aAAa,CAAC,GAAG,IAAA,gBAAQ,EAAC,EAAE,CAAC,CAAA;IAChD,MAAM,CAAC,OAAO,EAAE,UAAU,CAAC,GAAG,IAAA,gBAAQ,EAAC,KAAK,CAAC,CAAA;IAC7C,MAAM,CAAC,SAAS,EAAE,YAAY,CAAC,GAAG,IAAA,gBAAQ,EAAC,SAAS,CAAC,CAAA;IACrD,MAAM,aAAa,GAAG,IAAA,cAAM,EAAC,UAAU,CAAC,CAAA;IACxC,MAAM,UAAU,GAAG,SAAS;QAC1B,CAAC,CAAC,CAAA,MAAA,IAAA,aAAI,EAAC,UAAU,EAAE,CAAC,CAAC,EAAE,EAAE,WAAC,OAAA,CAAA,MAAA,CAAC,CAAC,KAAK,0CAAE,IAAI,MAAK,SAAS,CAAC,IAAI,CAAA,EAAA,CAAC,0CAAE,KAAK,KAAI,SAAS;QAC/E,CAAC,CAAC,EAAE,CAAA;IACN,MAAM,EAAE,KAAK,EAAE,GAAG,SAAS,IAAI,EAAE,CAAA;IAEjC,MAAM,QAAQ,GAAG,IAAA,cAAM,EAAC,IAAI,CAAC,CAAA;IAC7B,MAAM,QAAQ,GAAG,IAAA,cAAM,EAAC,IAAI,CAAC,CAAA;IAC7B,MAAM,QAAQ,GAAG,IAAA,cAAM,EAAC,IAAI,CAAC,CAAA;IAC7B,MAAM,QAAQ,GAAG,IAAA,cAAM,EAAC,KAAK,CAAC,CAAA;IAE9B,aAAa,CAAC,OAAO,GAAG,UAAU,CAAA;IAElC,MAAM,YAAY,GAAG,IAAA,mBAAW,EAAC,CAAC,GAAG,EAAE,EAAE;QACvC,MAAM,WAAW,GAAG,IAAA,0BAAkB,EAAC,GAAG,EAAE,aAAa,CAAC,OAAO,CAAC,CAAA;QAClE,QAAQ,CAAC,WAAW,CAAC,CAAA;IACvB,CAAC,EAAE,EAAE,CAAC,CAAA;IAEN,MAAM,WAAW,GAAG,IAAA,mBAAW,EAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE;QAC9C,YAAY,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,CAAC,CAAA;IACjC,CAAC,EAAE,EAAE,CAAC,CAAA;IAEN,IAAG,CAAC,QAAQ,CAAC,OAAO,EAAE;QACpB,QAAQ,CAAC,OAAO,GAAG,IAAI,CAAA;QACvB,IAAI,CAAC,EAAE,CAAC,UAAU,EAAE,WAAW,CAAC,CAAA;QAChC,IAAI,CAAC,EAAE,CAAC,WAAW,EAAE,YAAY,CAAC,CAAA;KACnC;IAED,IAAA,iBAAS,EAAC,GAAG,EAAE;QACb,OAAO,GAAG,EAAE;YACV,IAAI,CAAC,GAAG,CAAC,UAAU,EAAE,WAAW,CAAC,CAAA;YACjC,IAAI,CAAC,GAAG,CAAC,WAAW,EAAE,YAAY,CAAC,CAAA;QACrC,CAAC,CAAA;IACH,CAAC,EAAE,EAAE,CAAC,CAAA;IAEN,MAAM,WAAW,GAAG,CAAC,CAAC,EAAE,EAAE;QACxB,CAAC,CAAC,cAAc,EAAE,CAAA;QAClB,UAAU,CAAC,GAAG,EAAE;;YACd,MAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,OAAO,0CAAE,KAAK,EAAE,CAAA;QAC5B,CAAC,EAAE,EAAE,CAAC,CAAA;QACN,IAAI,CAAC,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE;YACvC,UAAU,CAAC,IAAI,CAAC,CAAA;SACjB;IACH,CAAC,CAAA;IAED,IAAA,2BAAmB,EAAC,GAAG,EAAE,GAAG,EAAE,CAAC,CAAC;QAC9B,SAAS,EAAE,GAAG,EAAE;YACd,OAAO,KAAK,CAAA;QACd,CAAC;KACF,CAAC,CAAC,CAAA;IAEH,MAAM,OAAO,GAAG,CAAC,CAAC,EAAE,EAAE;QACpB,CAAC,CAAC,eAAe,EAAE,CAAA;QACnB,MAAM,QAAQ,GAAG,MAAM,CAAC,IAAI,CAAC,aAAa,IAAI,EAAE,CAAC,CAAA;QACjD,MAAM,UAAU,GAAG,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,MAAM,CAAC,CAAC,EAAE,GAAG,EAAE,EAAE,EAAE,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,GAAG,CAAC,CAAC,EAAE,GAAG,EAAE,EAAE,EAAE,CAAC,GAAG,CAAC,CAAA;QAC5F,QAAQ,CAAC,IAAA,0BAAkB,EAAC,aAAa,IAAI,EAAE,EAAE,UAAU,CAAC,CAAC,CAAA;QAC7D,QAAQ,mBAAM,CAAC,aAAa,IAAI,EAAE,CAAC,GAAI,UAAU,EAAE,KAAK,EAAE,IAAI,CAAC,CAAA;QAC/D,SAAS;QACT,aAAa,CAAC,EAAE,CAAC,CAAA;QACjB,WAAW,EAAE,CAAA;QACb,QAAQ,EAAE,CAAA;IACZ,CAAC,CAAA;IAED,MAAM,QAAQ,GAAG,CAAC,CAAC,EAAE,EAAE;;QACrB,CAAC,CAAC,eAAe,EAAE,CAAA;QACnB,MAAM,UAAU,GAAG,CAAA,MAAA,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAE,KAAK,CAAC,YAAY,CAAC,0CAAG,CAAC,CAAC,KAAI,IAAI,CAAA;QAC/D,IAAI,QAAQ,IAAI,UAAU,EAAE;YAC1B,8BAA8B;YAC9B,QAAQ,CAAC,KAAK,GAAG,UAAU,CAAA,CAAC,QAAQ;YACpC,IAAI,CAAC,CAAA,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,KAAK,QAAQ,CAAC,GAAG,CAAC,CAAA,EAAE;gBAC/C,MAAM,QAAQ,GAAG,CAAC,GAAG,KAAK,EAAE,QAAQ,CAAC,CAAA;gBACrC,QAAQ,CAAC,QAAQ,CAAC,CAAA;gBAClB,QAAQ,CAAC,IAAA,0BAAkB,EAAC,QAAQ,CAAC,CAAC,CAAA;aACvC;iBAAM;gBACL,MAAM,QAAQ,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,GAAG,KAAK,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;gBAC1E,QAAQ,CAAC,QAAQ,CAAC,CAAA;gBAClB,QAAQ,CAAC,IAAA,0BAAkB,EAAC,QAAQ,CAAC,CAAC,CAAA;aACvC;YACD,CAAC,CAAC,MAAM,CAAC,KAAK,GAAG,UAAU,CAAA;YAC3B,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,UAAU,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC,CAAA;YAC/D,WAAW,EAAE,CAAA;YACb,aAAa,CAAC,EAAE,CAAC,CAAA;SAClB;aAAM;YACL,SAAS,EAAE,CAAA;SACZ;IACH,CAAC,CAAA;IAED,MAAM,QAAQ,GAAG,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE;QAC1B,CAAC,CAAC,cAAc,EAAE,CAAA;QAClB,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE;YACpB,MAAM,QAAQ,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,KAAK,GAAG,CAAC,CAAA;YACnD,QAAQ,CAAC,QAAQ,CAAC,CAAA;YAClB,MAAM,UAAU,GAAG,CAAC,GAAG,CAAC,CAAA;YACxB,QAAQ,CAAC,IAAA,0BAAkB,EAAC,QAAQ,CAAC,EAAE,UAAU,EAAE,IAAI,CAAC,CAAA;SACzD;IACH,CAAC,CAAA;IAED,MAAM,UAAU,GAAG,CAAC,KAAK,EAAE,EAAE;;QAC3B,MAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,OAAO,0CAAE,KAAK,EAAE,CAAA;QAC1B,aAAa,CAAC,IAAA,gBAAQ,EAAC,KAAK,EAAE,UAAU,CAAC,CAAC,CAAA;QAC1C,WAAW,CAAC,KAAK,CAAC,CAAA;QAClB,UAAU,CAAC,GAAG,EAAE;;YACd,MAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,OAAO,0CAAE,KAAK,EAAE,CAAA;QAC5B,CAAC,EAAE,EAAE,CAAC,CAAA;IACR,CAAC,CAAA;IAED,MAAM,iBAAiB,GAAG,CAAC,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,UAAU,GAAG,IAAI,EAAE,EAAE;QACxE,IAAI,OAAO,EAAE;YACX,UAAU,CAAC,KAAK,CAAC,CAAA;YACjB,OAAM;SACP;QACD,QAAQ,CAAC,KAAK,CAAC,CAAA;QACf,aAAa,CAAC,EAAE,CAAC,CAAA;QACjB,WAAW,EAAE,CAAA;QACb,IAAI,QAAQ;YAAE,QAAQ,CAAC,IAAA,0BAAkB,EAAC,KAAK,CAAC,EAAE,SAAS,EAAE,UAAU,CAAC,CAAA;IAC1E,CAAC,CAAA;IAED,UAAU;IACV,MAAM,aAAa,GAAG,CAAC,CAAC,EAAE,EAAE;QAC1B,MAAM,KAAK,GAAG,CAAC,CAAC,MAAM,CAAC,KAAK,CAAA;QAC5B,IAAI,QAAQ,EAAE;YACZ,IAAI,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE;gBACrB,OAAO;gBACP,aAAa,CAAC,KAAK,CAAC,CAAA;aACrB;iBAAM;gBACL,2BAA2B;gBAC3B,aAAa,CAAC,EAAE,CAAC,CAAA;gBACjB,WAAW,EAAE,CAAA;aACd;SACF;aAAM;YACL,aAAa,CAAC,KAAK,CAAC,CAAA;SACrB;IACH,CAAC,CAAA;IAED,MAAM,YAAY,GAAG,CAAC,CAAC,EAAE,EAAE;;QACzB,MAAM,UAAU,GAAG,CAAA,MAAA,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAE,KAAK,CAAC,YAAY,CAAC,0CAAG,CAAC,CAAC,KAAI,IAAI,CAAA;QAC/D,IAAI,QAAQ,IAAI,UAAU,EAAE;YAC1B,UAAU,CAAC,KAAK,CAAC,CAAA;YACjB,8BAA8B;YAC9B,QAAQ,CAAC,KAAK,GAAG,UAAU,CAAA,CAAC,QAAQ;YACpC,IAAI,CAAC,CAAA,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,KAAK,QAAQ,CAAC,GAAG,CAAC,CAAA,EAAE;gBAC/C,MAAM,QAAQ,GAAG,CAAC,GAAG,KAAK,EAAE,QAAQ,CAAC,CAAA;gBACrC,QAAQ,CAAC,QAAQ,CAAC,CAAA;gBAClB,QAAQ,CAAC,IAAA,0BAAkB,EAAC,QAAQ,CAAC,CAAC,CAAA;aACvC;iBAAM;gBACL,MAAM,QAAQ,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,GAAG,KAAK,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;gBAC1E,QAAQ,CAAC,QAAQ,CAAC,CAAA;gBAClB,QAAQ,CAAC,IAAA,0BAAkB,EAAC,QAAQ,CAAC,CAAC,CAAA;aACvC;YACD,CAAC,CAAC,MAAM,CAAC,KAAK,GAAG,UAAU,CAAA;YAC3B,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,UAAU,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC,CAAA;YAC/D,CAAA,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,YAAY,KAAI,KAAK,CAAC,YAAY,CAAC,CAAC,CAAC,CAAA;SAC7C;QACD,WAAW,EAAE,CAAA;QACb,aAAa,CAAC,EAAE,CAAC,CAAA;IACnB,CAAC,CAAA;IAED,OAAO,CACL,8BAAC,wBAAc,IAAC,aAAa,EAAC,WAAW,IACtC,CAAC,MAAM,EAAE,EAAE;QACV,OAAO,CACL,uCAAK,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,WAAW;YAC1C,wCAAM,SAAS,EAAE,GAAG,MAAM,QAAQ,EAAE,GAAG,EAAE,QAAQ,IAC9C,UAAU,CACN;YACP,sCAAI,SAAS,EAAE,GAAG,MAAM,QAAQ;gBAC7B,KAAK;oBACJ,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,CACzB,sCAAI,GAAG,EAAE,IAAI,CAAC,GAAG,EAAE,SAAS,EAAE,GAAG,MAAM,aAAa;wBAClD,8BAAC,kBAAQ,IACP,QAAQ,EAAE,iBAAiB,EAC3B,KAAK,EAAE,KAAK,EACZ,IAAI,EAAE,IAAI,EACV,UAAU,EAAE,UAAU,EACtB,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,QAAQ,EAClB,SAAS,EAAE,UAAU,EACrB,SAAS,EAAE,SAAS,EACpB,IAAI,EAAE,IAAI,GACV,CACC,CACN,CAAC;gBACJ,sCAAI,SAAS,EAAE,GAAG,MAAM,cAAc;oBACpC,8BAAC,sBAAY,IACX,GAAG,EAAE,QAAQ,EACb,QAAQ,EAAE,iBAAiB,EAC3B,SAAS,EAAE,SAAS,EACpB,UAAU,EAAE,UAAU,EACtB,QAAQ,EAAE,UAAU,EACpB,YAAY,EAAE,YAAY,EAC1B,IAAI,EAAE,IAAI,EACV,KAAK,EAAE,KAAK,EACZ,OAAO,EAAE,OAAO,EAChB,KAAK,EAAE,KAAK,EACZ,UAAU,EAAE,UAAU,EACtB,UAAU,EAAE,UAAU,EACtB,MAAM,EAAE,MAAM,EACd,SAAS,EAAC,YAAY;wBAEtB,8BAAC,eAAK,kBACJ,GAAG,EAAE,QAAQ,EACb,KAAK,EAAE,UAAU,EACjB,SAAS,EAAC,YAAY,EACtB,WAAW,EAAE,CAAC,CAAA,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,MAAM,CAAA,CAAC,CAAC,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS,IACxD,KAAK,IACT,YAAY,EAAE,YAAY,EAC1B,QAAQ,EAAE,aAAa,IACvB,CACW,CACZ,CACF;YACL,uCAAK,SAAS,EAAE,GAAG,MAAM,SAAS;gBAChC,8BAAC,cAAI,IAAC,IAAI,EAAC,QAAQ,GAAG,CAClB;YACL,oBAAoB,IAAI,CACvB,uCAAK,SAAS,EAAE,GAAG,MAAM,QAAQ;gBAC/B,8BAAC,cAAI,IAAC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAC,cAAc,EAAC,KAAK,EAAC,QAAQ,GAAG,CACzD,CACP;YACD,uCAAK,SAAS,EAAE,GAAG,MAAM,SAAS,EAAE,OAAO,EAAE,QAAQ;gBACnD,8BAAC,cAAI,IAAC,IAAI,EAAC,QAAQ,GAAG,CAClB,CACF,CACP,CAAA;IACH,CAAC,CACc,CAClB,CAAA;AACH,CAAC,CAAA;AACD,kBAAe,IAAA,kBAAU,EAAC,gBAAgB,CAAC,CAAA","sourcesContent":["import React, {\n useEffect,\n useState,\n useRef,\n useImperativeHandle,\n forwardRef,\n useCallback,\n} from 'react'\nimport LocaleReceiver from 'antd/lib/locale-provider/LocaleReceiver'\nimport { find } from 'lodash'\nimport Icon from '../../../icon'\nimport Input from '../../../input'\nimport FieldPopover from './FieldPopover'\nimport ValueTag from './ValueTag'\nimport { parseArrayToObject, parseObjectToArray, getLabel } from './utils'\nimport './index.less'\n\n/**\n * @param value: [{\n key: 'key1',\n value: 'value1',\n label: 'key1:value1'\n }, {\n key: 'key2',\n value: ['value2', 'value3'],\n label: 'key1:value2|value3'\n }]\n * @param {*} ref \n * @returns \n */\nconst regex = /^.+:.*$/\nconst CompositionInput = (\n {\n fieldItems,\n initialValues,\n onChange,\n form,\n compositionShowReset,\n clsPrefix,\n _onReset,\n _onSearch,\n },\n ref\n) => {\n const prefix = `${clsPrefix}-composition-input`\n const [value, setValue] = useState(parseObjectToArray(initialValues, fieldItems))\n const [tempItem, setTempItem] = useState()\n const [searchText, setSearchText] = useState('')\n const [visible, setVisible] = useState(false)\n const [fieldItem, setFieldItem] = useState(undefined)\n const fieldItemsRef = useRef(fieldItems)\n const _fieldItem = fieldItem\n ? find(fieldItems, (f) => f.props?.name === fieldItem.name)?.props || fieldItem\n : {}\n const { props } = fieldItem || {}\n\n const inputRef = useRef(null)\n const widthRef = useRef(null)\n const fieldRef = useRef(null)\n const eventRef = useRef(false)\n\n fieldItemsRef.current = fieldItems\n\n const updateValues = useCallback((obj) => {\n const newValueArr = parseObjectToArray(obj, fieldItemsRef.current)\n setValue(newValueArr)\n }, [])\n\n const updateValue = useCallback((name, value) => {\n updateValues({ [name]: value })\n }, [])\n\n if(!eventRef.current) {\n eventRef.current = true\n form.on('setValue', updateValue)\n form.on('setValues', updateValues)\n }\n\n useEffect(() => {\n return () => {\n form.off('setValue', updateValue)\n form.off('setValues', updateValues)\n }\n }, [])\n\n const handleFocus = (e) => {\n e.preventDefault()\n setTimeout(() => {\n inputRef?.current?.focus()\n }, 10)\n if (!visible && !regex.test(searchText)) {\n setVisible(true)\n }\n }\n\n useImperativeHandle(ref, () => ({\n changeVal: () => {\n return value\n },\n }))\n\n const onClear = (e) => {\n e.stopPropagation()\n const initKeys = Object.keys(initialValues || {})\n const deleteKeys = value?.filter(({ key }) => !initKeys.includes(key)).map(({ key }) => key)\n setValue(parseObjectToArray(initialValues || {}, fieldItems))\n onChange({ ...(initialValues || {}) }, deleteKeys, false, true)\n // 清除其他数据\n setSearchText('')\n setTempItem()\n _onReset()\n }\n\n const doSearch = (e) => {\n e.stopPropagation()\n const inputValue = searchText?.match(/[^:]+:(.*)/)?.[1] || null\n if (tempItem && inputValue) {\n // tempItem.label = searchText\n tempItem.value = inputValue // 得到输入值\n if (!value?.find((v) => v.key === tempItem.key)) {\n const newValue = [...value, tempItem]\n setValue(newValue)\n onChange(parseArrayToObject(newValue))\n } else {\n const newValue = value.map((v) => (v.key === tempItem.key ? tempItem : v))\n setValue(newValue)\n onChange(parseArrayToObject(newValue))\n }\n e.target.value = inputValue\n form.emit('search', { [tempItem.key]: inputValue, current: 1 })\n setTempItem()\n setSearchText('')\n } else {\n _onSearch()\n }\n }\n\n const onDelete = (key, e) => {\n e.preventDefault()\n if (value.length > 0) {\n const newValue = value.filter((v) => v.key !== key)\n setValue(newValue)\n const deleteKeys = [key]\n onChange(parseArrayToObject(newValue), deleteKeys, true)\n }\n }\n\n const focusInput = (value) => {\n inputRef?.current?.focus()\n setSearchText(getLabel(value, fieldItems))\n setTempItem(value)\n setTimeout(() => {\n inputRef?.current?.focus()\n }, 10)\n }\n\n const handleFieldChange = (value, isInput, hasValue, needSearch = true) => {\n if (isInput) {\n focusInput(value)\n return\n }\n setValue(value)\n setSearchText('')\n setTempItem()\n if (hasValue) onChange(parseArrayToObject(value), undefined, needSearch)\n }\n\n // 输入框事件方法\n const onInputChange = (e) => {\n const value = e.target.value\n if (tempItem) {\n if (regex.test(value)) {\n // 有输入值\n setSearchText(value)\n } else {\n // 没有输入值, 清空选择的属性类型重新显示属性列表\n setSearchText('')\n setTempItem()\n }\n } else {\n setSearchText(value)\n }\n }\n\n const onPressEnter = (e) => {\n const inputValue = searchText?.match(/[^:]+:(.*)/)?.[1] || null\n if (tempItem && inputValue) {\n setVisible(false)\n // tempItem.label = searchText\n tempItem.value = inputValue // 得到输入值\n if (!value?.find((v) => v.key === tempItem.key)) {\n const newValue = [...value, tempItem]\n setValue(newValue)\n onChange(parseArrayToObject(newValue))\n } else {\n const newValue = value.map((v) => (v.key === tempItem.key ? tempItem : v))\n setValue(newValue)\n onChange(parseArrayToObject(newValue))\n }\n e.target.value = inputValue\n form.emit('search', { [tempItem.key]: inputValue, current: 1 })\n props?.onPressEnter && props.onPressEnter(e)\n }\n setTempItem()\n setSearchText('')\n }\n\n return (\n <LocaleReceiver componentName=\"QueryForm\">\n {(locale) => {\n return (\n <div className={prefix} onClick={handleFocus}>\n <span className={`${prefix}-width`} ref={widthRef}>\n {searchText}\n </span>\n <ul className={`${prefix}-items`}>\n {value &&\n value.map((item, index) => (\n <li key={item.key} className={`${prefix}-items-item`}>\n <ValueTag\n onChange={handleFieldChange}\n value={value}\n item={item}\n fieldItems={fieldItems}\n locale={locale}\n onDelete={onDelete}\n handleTag={focusInput}\n clsPrefix={clsPrefix}\n form={form}\n />\n </li>\n ))}\n <li className={`${prefix}-items-input`}>\n <FieldPopover\n ref={fieldRef}\n onChange={handleFieldChange}\n clsPrefix={clsPrefix}\n fieldItems={fieldItems}\n propItem={_fieldItem}\n setFieldItem={setFieldItem}\n form={form}\n regex={regex}\n visible={visible}\n value={value}\n setVisible={setVisible}\n searchText={searchText}\n locale={locale}\n placement=\"bottomLeft\"\n >\n <Input\n ref={inputRef}\n value={searchText}\n className=\"inputClass\"\n placeholder={!value?.length ? locale.placeholder : undefined}\n {...props}\n onPressEnter={onPressEnter}\n onChange={onInputChange}\n />\n </FieldPopover>\n </li>\n </ul>\n <div className={`${prefix}-prefix`}>\n <Icon type=\"filter\" />\n </div>\n {compositionShowReset && (\n <div className={`${prefix}-clear`}>\n <Icon onClick={onClear} type=\"close-circle\" theme=\"filled\" />\n </div>\n )}\n <div className={`${prefix}-search`} onClick={doSearch}>\n <Icon type=\"search\" />\n </div>\n </div>\n )\n }}\n </LocaleReceiver>\n )\n}\nexport default forwardRef(CompositionInput)\n"]}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/query-form/Field/Composition/index.js"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,+CAOc;AACd,4FAAmE;AACnE,mCAA6B;AAC7B,yDAAgC;AAChC,2DAAkC;AAClC,kEAAyC;AACzC,0DAAiC;AACjC,mCAA0E;AAC1E,wBAAqB;AAErB;;;;;;;;;;;;GAYG;AACH,MAAM,KAAK,GAAG,SAAS,CAAA;AACvB,MAAM,gBAAgB,GAAG,CACvB,EACE,UAAU,EACV,aAAa,EACb,QAAQ,EACR,IAAI,EACJ,oBAAoB,EACpB,SAAS,EACT,QAAQ,EACR,SAAS,GACV,EACD,GAAG,EACH,EAAE;;IACF,MAAM,MAAM,GAAG,GAAG,SAAS,oBAAoB,CAAA;IAC/C,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,IAAA,gBAAQ,EAAC,IAAA,0BAAkB,EAAC,aAAa,EAAE,UAAU,CAAC,CAAC,CAAA;IACjF,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,GAAG,IAAA,gBAAQ,GAAE,CAAA;IAC1C,MAAM,CAAC,UAAU,EAAE,aAAa,CAAC,GAAG,IAAA,gBAAQ,EAAC,EAAE,CAAC,CAAA;IAChD,MAAM,CAAC,OAAO,EAAE,UAAU,CAAC,GAAG,IAAA,gBAAQ,EAAC,KAAK,CAAC,CAAA;IAC7C,MAAM,CAAC,SAAS,EAAE,YAAY,CAAC,GAAG,IAAA,gBAAQ,EAAC,SAAS,CAAC,CAAA;IACrD,MAAM,aAAa,GAAG,IAAA,cAAM,EAAC,UAAU,CAAC,CAAA;IACxC,MAAM,UAAU,GAAG,SAAS;QAC1B,CAAC,CAAC,CAAA,MAAA,IAAA,aAAI,EAAC,UAAU,EAAE,CAAC,CAAC,EAAE,EAAE,WAAC,OAAA,CAAA,MAAA,CAAC,CAAC,KAAK,0CAAE,IAAI,MAAK,SAAS,CAAC,IAAI,CAAA,EAAA,CAAC,0CAAE,KAAK,KAAI,SAAS;QAC/E,CAAC,CAAC,EAAE,CAAA;IACN,MAAM,EAAE,KAAK,EAAE,GAAG,SAAS,IAAI,EAAE,CAAA;IAEjC,MAAM,QAAQ,GAAG,IAAA,cAAM,EAAC,IAAI,CAAC,CAAA;IAC7B,MAAM,QAAQ,GAAG,IAAA,cAAM,EAAC,IAAI,CAAC,CAAA;IAC7B,MAAM,QAAQ,GAAG,IAAA,cAAM,EAAC,IAAI,CAAC,CAAA;IAC7B,MAAM,QAAQ,GAAG,IAAA,cAAM,EAAC,KAAK,CAAC,CAAA;IAE9B,aAAa,CAAC,OAAO,GAAG,UAAU,CAAA;IAElC,MAAM,YAAY,GAAG,IAAA,mBAAW,EAAC,CAAC,GAAG,EAAE,EAAE;QACvC,MAAM,WAAW,GAAG,IAAA,0BAAkB,EAAC,GAAG,EAAE,aAAa,CAAC,OAAO,CAAC,CAAA;QAClE,QAAQ,CAAC,WAAW,CAAC,CAAA;IACvB,CAAC,EAAE,EAAE,CAAC,CAAA;IAEN,MAAM,WAAW,GAAG,IAAA,mBAAW,EAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE;QAC9C,YAAY,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,CAAC,CAAA;IACjC,CAAC,EAAE,EAAE,CAAC,CAAA;IAEN,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE;QACrB,QAAQ,CAAC,OAAO,GAAG,IAAI,CAAA;QACvB,IAAI,CAAC,EAAE,CAAC,UAAU,EAAE,WAAW,CAAC,CAAA;QAChC,IAAI,CAAC,EAAE,CAAC,WAAW,EAAE,YAAY,CAAC,CAAA;KACnC;IAED,IAAA,iBAAS,EAAC,GAAG,EAAE;QACb,OAAO,GAAG,EAAE;YACV,IAAI,CAAC,GAAG,CAAC,UAAU,EAAE,WAAW,CAAC,CAAA;YACjC,IAAI,CAAC,GAAG,CAAC,WAAW,EAAE,YAAY,CAAC,CAAA;QACrC,CAAC,CAAA;IACH,CAAC,EAAE,EAAE,CAAC,CAAA;IAEN,MAAM,WAAW,GAAG,CAAC,CAAC,EAAE,EAAE;QACxB,CAAC,CAAC,cAAc,EAAE,CAAA;QAClB,UAAU,CAAC,GAAG,EAAE;;YACd,MAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,OAAO,0CAAE,KAAK,EAAE,CAAA;QAC5B,CAAC,EAAE,EAAE,CAAC,CAAA;QACN,IAAI,CAAC,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE;YACvC,UAAU,CAAC,IAAI,CAAC,CAAA;SACjB;IACH,CAAC,CAAA;IAED,IAAA,2BAAmB,EAAC,GAAG,EAAE,GAAG,EAAE,CAAC,CAAC;QAC9B,SAAS,EAAE,GAAG,EAAE;YACd,OAAO,KAAK,CAAA;QACd,CAAC;KACF,CAAC,CAAC,CAAA;IAEH,MAAM,OAAO,GAAG,CAAC,CAAC,EAAE,EAAE;QACpB,CAAC,CAAC,eAAe,EAAE,CAAA;QACnB,MAAM,QAAQ,GAAG,MAAM,CAAC,IAAI,CAAC,aAAa,IAAI,EAAE,CAAC,CAAA;QACjD,MAAM,UAAU,GAAG,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,MAAM,CAAC,CAAC,EAAE,GAAG,EAAE,EAAE,EAAE,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,GAAG,CAAC,CAAC,EAAE,GAAG,EAAE,EAAE,EAAE,CAAC,GAAG,CAAC,CAAA;QAC5F,QAAQ,CAAC,IAAA,0BAAkB,EAAC,aAAa,IAAI,EAAE,EAAE,UAAU,CAAC,CAAC,CAAA;QAC7D,QAAQ,mBAAM,CAAC,aAAa,IAAI,EAAE,CAAC,GAAI,UAAU,EAAE,KAAK,EAAE,IAAI,CAAC,CAAA;QAC/D,SAAS;QACT,aAAa,CAAC,EAAE,CAAC,CAAA;QACjB,WAAW,EAAE,CAAA;QACb,QAAQ,EAAE,CAAA;IACZ,CAAC,CAAA;IAED,MAAM,QAAQ,GAAG,CAAC,CAAC,EAAE,EAAE;;QACrB,CAAC,CAAC,eAAe,EAAE,CAAA;QACnB,MAAM,UAAU,GAAG,CAAA,MAAA,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAE,KAAK,CAAC,YAAY,CAAC,0CAAG,CAAC,CAAC,KAAI,IAAI,CAAA;QAC/D,IAAI,QAAQ,IAAI,UAAU,EAAE;YAC1B,8BAA8B;YAC9B,QAAQ,CAAC,KAAK,GAAG,UAAU,CAAA,CAAC,QAAQ;YACpC,IAAI,CAAC,CAAA,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,KAAK,QAAQ,CAAC,GAAG,CAAC,CAAA,EAAE;gBAC/C,MAAM,QAAQ,GAAG,CAAC,GAAG,KAAK,EAAE,QAAQ,CAAC,CAAA;gBACrC,QAAQ,CAAC,QAAQ,CAAC,CAAA;gBAClB,QAAQ,CAAC,IAAA,0BAAkB,EAAC,QAAQ,CAAC,CAAC,CAAA;aACvC;iBAAM;gBACL,MAAM,QAAQ,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,GAAG,KAAK,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;gBAC1E,QAAQ,CAAC,QAAQ,CAAC,CAAA;gBAClB,QAAQ,CAAC,IAAA,0BAAkB,EAAC,QAAQ,CAAC,CAAC,CAAA;aACvC;YACD,CAAC,CAAC,MAAM,CAAC,KAAK,GAAG,UAAU,CAAA;YAC3B,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,UAAU,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC,CAAA;YAC/D,WAAW,EAAE,CAAA;YACb,aAAa,CAAC,EAAE,CAAC,CAAA;SAClB;aAAM;YACL,SAAS,EAAE,CAAA;SACZ;IACH,CAAC,CAAA;IAED,MAAM,QAAQ,GAAG,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE;;QAC1B,CAAC,CAAC,cAAc,EAAE,CAAA;QAClB,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE;YACpB,MAAM,QAAQ,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,KAAK,GAAG,CAAC,CAAA;YACnD,QAAQ,CAAC,QAAQ,CAAC,CAAA;YAClB,MAAM,UAAU,GAAG,CAAC,GAAG,CAAC,CAAA;YACxB,QAAQ,CAAC,IAAA,0BAAkB,EAAC,QAAQ,CAAC,EAAE,UAAU,EAAE,IAAI,CAAC,CAAA;YACxD,oCAAoC;YACpC,MAAM,UAAU,GAAG,MAAA,IAAA,aAAI,EAAC,UAAU,EAAE,CAAC,EAAE,EAAE,EAAE,WAAC,OAAA,CAAA,MAAA,EAAE,CAAC,KAAK,0CAAE,IAAI,MAAK,GAAG,CAAA,EAAA,CAAC,0CAAE,KAAK,CAAA;YAC1E,CAAA,MAAA,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAE,KAAK,0CAAE,QAAQ,KAAI,UAAU,CAAC,KAAK,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAA;SACpE;IACH,CAAC,CAAA;IAED,MAAM,UAAU,GAAG,CAAC,KAAK,EAAE,EAAE;;QAC3B,MAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,OAAO,0CAAE,KAAK,EAAE,CAAA;QAC1B,aAAa,CAAC,IAAA,gBAAQ,EAAC,KAAK,EAAE,UAAU,CAAC,CAAC,CAAA;QAC1C,WAAW,CAAC,KAAK,CAAC,CAAA;QAClB,UAAU,CAAC,GAAG,EAAE;;YACd,MAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,OAAO,0CAAE,KAAK,EAAE,CAAA;QAC5B,CAAC,EAAE,EAAE,CAAC,CAAA;IACR,CAAC,CAAA;IAED,MAAM,iBAAiB,GAAG,CAAC,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,UAAU,GAAG,IAAI,EAAE,EAAE;QACxE,IAAI,OAAO,EAAE;YACX,UAAU,CAAC,KAAK,CAAC,CAAA;YACjB,OAAM;SACP;QACD,QAAQ,CAAC,KAAK,CAAC,CAAA;QACf,aAAa,CAAC,EAAE,CAAC,CAAA;QACjB,WAAW,EAAE,CAAA;QACb,IAAI,QAAQ;YAAE,QAAQ,CAAC,IAAA,0BAAkB,EAAC,KAAK,CAAC,EAAE,SAAS,EAAE,UAAU,CAAC,CAAA;IAC1E,CAAC,CAAA;IAED,UAAU;IACV,MAAM,aAAa,GAAG,CAAC,CAAC,EAAE,EAAE;QAC1B,MAAM,KAAK,GAAG,CAAC,CAAC,MAAM,CAAC,KAAK,CAAA;QAC5B,IAAI,QAAQ,EAAE;YACZ,IAAI,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE;gBACrB,OAAO;gBACP,aAAa,CAAC,KAAK,CAAC,CAAA;aACrB;iBAAM;gBACL,2BAA2B;gBAC3B,aAAa,CAAC,EAAE,CAAC,CAAA;gBACjB,WAAW,EAAE,CAAA;aACd;SACF;aAAM;YACL,aAAa,CAAC,KAAK,CAAC,CAAA;SACrB;IACH,CAAC,CAAA;IAED,MAAM,YAAY,GAAG,CAAC,CAAC,EAAE,EAAE;;QACzB,MAAM,UAAU,GAAG,CAAA,MAAA,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAE,KAAK,CAAC,YAAY,CAAC,0CAAG,CAAC,CAAC,KAAI,IAAI,CAAA;QAC/D,IAAI,QAAQ,IAAI,UAAU,EAAE;YAC1B,UAAU,CAAC,KAAK,CAAC,CAAA;YACjB,8BAA8B;YAC9B,QAAQ,CAAC,KAAK,GAAG,UAAU,CAAA,CAAC,QAAQ;YACpC,IAAI,CAAC,CAAA,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,KAAK,QAAQ,CAAC,GAAG,CAAC,CAAA,EAAE;gBAC/C,MAAM,QAAQ,GAAG,CAAC,GAAG,KAAK,EAAE,QAAQ,CAAC,CAAA;gBACrC,QAAQ,CAAC,QAAQ,CAAC,CAAA;gBAClB,QAAQ,CAAC,IAAA,0BAAkB,EAAC,QAAQ,CAAC,CAAC,CAAA;aACvC;iBAAM;gBACL,MAAM,QAAQ,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,GAAG,KAAK,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;gBAC1E,QAAQ,CAAC,QAAQ,CAAC,CAAA;gBAClB,QAAQ,CAAC,IAAA,0BAAkB,EAAC,QAAQ,CAAC,CAAC,CAAA;aACvC;YACD,CAAC,CAAC,MAAM,CAAC,KAAK,GAAG,UAAU,CAAA;YAC3B,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,UAAU,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC,CAAA;YAC/D,CAAA,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,YAAY,KAAI,KAAK,CAAC,YAAY,CAAC,CAAC,CAAC,CAAA;SAC7C;QACD,WAAW,EAAE,CAAA;QACb,aAAa,CAAC,EAAE,CAAC,CAAA;IACnB,CAAC,CAAA;IAED,OAAO,CACL,8BAAC,wBAAc,IAAC,aAAa,EAAC,WAAW,IACtC,CAAC,MAAM,EAAE,EAAE;QACV,OAAO,CACL,uCAAK,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,WAAW;YAC1C,wCAAM,SAAS,EAAE,GAAG,MAAM,QAAQ,EAAE,GAAG,EAAE,QAAQ,IAC9C,UAAU,CACN;YACP,sCAAI,SAAS,EAAE,GAAG,MAAM,QAAQ;gBAC7B,KAAK;oBACJ,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,CACzB,sCAAI,GAAG,EAAE,IAAI,CAAC,GAAG,EAAE,SAAS,EAAE,GAAG,MAAM,aAAa;wBAClD,8BAAC,kBAAQ,IACP,QAAQ,EAAE,iBAAiB,EAC3B,KAAK,EAAE,KAAK,EACZ,IAAI,EAAE,IAAI,EACV,UAAU,EAAE,UAAU,EACtB,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,QAAQ,EAClB,SAAS,EAAE,UAAU,EACrB,SAAS,EAAE,SAAS,EACpB,IAAI,EAAE,IAAI,GACV,CACC,CACN,CAAC;gBACJ,sCAAI,SAAS,EAAE,GAAG,MAAM,cAAc;oBACpC,8BAAC,sBAAY,IACX,GAAG,EAAE,QAAQ,EACb,QAAQ,EAAE,iBAAiB,EAC3B,SAAS,EAAE,SAAS,EACpB,UAAU,EAAE,UAAU,EACtB,QAAQ,EAAE,UAAU,EACpB,YAAY,EAAE,YAAY,EAC1B,IAAI,EAAE,IAAI,EACV,KAAK,EAAE,KAAK,EACZ,OAAO,EAAE,OAAO,EAChB,KAAK,EAAE,KAAK,EACZ,UAAU,EAAE,UAAU,EACtB,UAAU,EAAE,UAAU,EACtB,MAAM,EAAE,MAAM,EACd,SAAS,EAAC,YAAY;wBAEtB,8BAAC,eAAK,kBACJ,GAAG,EAAE,QAAQ,EACb,KAAK,EAAE,UAAU,EACjB,SAAS,EAAC,YAAY,EACtB,WAAW,EAAE,CAAC,CAAA,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,MAAM,CAAA,CAAC,CAAC,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS,IACxD,KAAK,IACT,YAAY,EAAE,YAAY,EAC1B,QAAQ,EAAE,aAAa,IACvB,CACW,CACZ,CACF;YACL,uCAAK,SAAS,EAAE,GAAG,MAAM,SAAS;gBAChC,8BAAC,cAAI,IAAC,IAAI,EAAC,QAAQ,GAAG,CAClB;YACL,oBAAoB,IAAI,CACvB,uCAAK,SAAS,EAAE,GAAG,MAAM,QAAQ;gBAC/B,8BAAC,cAAI,IAAC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAC,cAAc,EAAC,KAAK,EAAC,QAAQ,GAAG,CACzD,CACP;YACD,uCAAK,SAAS,EAAE,GAAG,MAAM,SAAS,EAAE,OAAO,EAAE,QAAQ;gBACnD,8BAAC,cAAI,IAAC,IAAI,EAAC,QAAQ,GAAG,CAClB,CACF,CACP,CAAA;IACH,CAAC,CACc,CAClB,CAAA;AACH,CAAC,CAAA;AACD,kBAAe,IAAA,kBAAU,EAAC,gBAAgB,CAAC,CAAA","sourcesContent":["import React, {\n useEffect,\n useState,\n useRef,\n useImperativeHandle,\n forwardRef,\n useCallback,\n} from 'react'\nimport LocaleReceiver from 'antd/lib/locale-provider/LocaleReceiver'\nimport { find } from 'lodash'\nimport Icon from '../../../icon'\nimport Input from '../../../input'\nimport FieldPopover from './FieldPopover'\nimport ValueTag from './ValueTag'\nimport { parseArrayToObject, parseObjectToArray, getLabel } from './utils'\nimport './index.less'\n\n/**\n * @param value: [{\n key: 'key1',\n value: 'value1',\n label: 'key1:value1'\n }, {\n key: 'key2',\n value: ['value2', 'value3'],\n label: 'key1:value2|value3'\n }]\n * @param {*} ref \n * @returns \n */\nconst regex = /^.+:.*$/\nconst CompositionInput = (\n {\n fieldItems,\n initialValues,\n onChange,\n form,\n compositionShowReset,\n clsPrefix,\n _onReset,\n _onSearch,\n },\n ref\n) => {\n const prefix = `${clsPrefix}-composition-input`\n const [value, setValue] = useState(parseObjectToArray(initialValues, fieldItems))\n const [tempItem, setTempItem] = useState()\n const [searchText, setSearchText] = useState('')\n const [visible, setVisible] = useState(false)\n const [fieldItem, setFieldItem] = useState(undefined)\n const fieldItemsRef = useRef(fieldItems)\n const _fieldItem = fieldItem\n ? find(fieldItems, (f) => f.props?.name === fieldItem.name)?.props || fieldItem\n : {}\n const { props } = fieldItem || {}\n\n const inputRef = useRef(null)\n const widthRef = useRef(null)\n const fieldRef = useRef(null)\n const eventRef = useRef(false)\n\n fieldItemsRef.current = fieldItems\n\n const updateValues = useCallback((obj) => {\n const newValueArr = parseObjectToArray(obj, fieldItemsRef.current)\n setValue(newValueArr)\n }, [])\n\n const updateValue = useCallback((name, value) => {\n updateValues({ [name]: value })\n }, [])\n\n if (!eventRef.current) {\n eventRef.current = true\n form.on('setValue', updateValue)\n form.on('setValues', updateValues)\n }\n\n useEffect(() => {\n return () => {\n form.off('setValue', updateValue)\n form.off('setValues', updateValues)\n }\n }, [])\n\n const handleFocus = (e) => {\n e.preventDefault()\n setTimeout(() => {\n inputRef?.current?.focus()\n }, 10)\n if (!visible && !regex.test(searchText)) {\n setVisible(true)\n }\n }\n\n useImperativeHandle(ref, () => ({\n changeVal: () => {\n return value\n },\n }))\n\n const onClear = (e) => {\n e.stopPropagation()\n const initKeys = Object.keys(initialValues || {})\n const deleteKeys = value?.filter(({ key }) => !initKeys.includes(key)).map(({ key }) => key)\n setValue(parseObjectToArray(initialValues || {}, fieldItems))\n onChange({ ...(initialValues || {}) }, deleteKeys, false, true)\n // 清除其他数据\n setSearchText('')\n setTempItem()\n _onReset()\n }\n\n const doSearch = (e) => {\n e.stopPropagation()\n const inputValue = searchText?.match(/[^:]+:(.*)/)?.[1] || null\n if (tempItem && inputValue) {\n // tempItem.label = searchText\n tempItem.value = inputValue // 得到输入值\n if (!value?.find((v) => v.key === tempItem.key)) {\n const newValue = [...value, tempItem]\n setValue(newValue)\n onChange(parseArrayToObject(newValue))\n } else {\n const newValue = value.map((v) => (v.key === tempItem.key ? tempItem : v))\n setValue(newValue)\n onChange(parseArrayToObject(newValue))\n }\n e.target.value = inputValue\n form.emit('search', { [tempItem.key]: inputValue, current: 1 })\n setTempItem()\n setSearchText('')\n } else {\n _onSearch()\n }\n }\n\n const onDelete = (key, e) => {\n e.preventDefault()\n if (value.length > 0) {\n const newValue = value.filter((v) => v.key !== key)\n setValue(newValue)\n const deleteKeys = [key]\n onChange(parseArrayToObject(newValue), deleteKeys, true)\n // 删除的时候也触发Field的onChange -- 泳建提的需求\n const fieldProps = find(fieldItems, (it) => it.props?.name === key)?.props\n fieldProps?.props?.onChange && fieldProps.props.onChange(undefined)\n }\n }\n\n const focusInput = (value) => {\n inputRef?.current?.focus()\n setSearchText(getLabel(value, fieldItems))\n setTempItem(value)\n setTimeout(() => {\n inputRef?.current?.focus()\n }, 10)\n }\n\n const handleFieldChange = (value, isInput, hasValue, needSearch = true) => {\n if (isInput) {\n focusInput(value)\n return\n }\n setValue(value)\n setSearchText('')\n setTempItem()\n if (hasValue) onChange(parseArrayToObject(value), undefined, needSearch)\n }\n\n // 输入框事件方法\n const onInputChange = (e) => {\n const value = e.target.value\n if (tempItem) {\n if (regex.test(value)) {\n // 有输入值\n setSearchText(value)\n } else {\n // 没有输入值, 清空选择的属性类型重新显示属性列表\n setSearchText('')\n setTempItem()\n }\n } else {\n setSearchText(value)\n }\n }\n\n const onPressEnter = (e) => {\n const inputValue = searchText?.match(/[^:]+:(.*)/)?.[1] || null\n if (tempItem && inputValue) {\n setVisible(false)\n // tempItem.label = searchText\n tempItem.value = inputValue // 得到输入值\n if (!value?.find((v) => v.key === tempItem.key)) {\n const newValue = [...value, tempItem]\n setValue(newValue)\n onChange(parseArrayToObject(newValue))\n } else {\n const newValue = value.map((v) => (v.key === tempItem.key ? tempItem : v))\n setValue(newValue)\n onChange(parseArrayToObject(newValue))\n }\n e.target.value = inputValue\n form.emit('search', { [tempItem.key]: inputValue, current: 1 })\n props?.onPressEnter && props.onPressEnter(e)\n }\n setTempItem()\n setSearchText('')\n }\n\n return (\n <LocaleReceiver componentName=\"QueryForm\">\n {(locale) => {\n return (\n <div className={prefix} onClick={handleFocus}>\n <span className={`${prefix}-width`} ref={widthRef}>\n {searchText}\n </span>\n <ul className={`${prefix}-items`}>\n {value &&\n value.map((item, index) => (\n <li key={item.key} className={`${prefix}-items-item`}>\n <ValueTag\n onChange={handleFieldChange}\n value={value}\n item={item}\n fieldItems={fieldItems}\n locale={locale}\n onDelete={onDelete}\n handleTag={focusInput}\n clsPrefix={clsPrefix}\n form={form}\n />\n </li>\n ))}\n <li className={`${prefix}-items-input`}>\n <FieldPopover\n ref={fieldRef}\n onChange={handleFieldChange}\n clsPrefix={clsPrefix}\n fieldItems={fieldItems}\n propItem={_fieldItem}\n setFieldItem={setFieldItem}\n form={form}\n regex={regex}\n visible={visible}\n value={value}\n setVisible={setVisible}\n searchText={searchText}\n locale={locale}\n placement=\"bottomLeft\"\n >\n <Input\n ref={inputRef}\n value={searchText}\n className=\"inputClass\"\n placeholder={!value?.length ? locale.placeholder : undefined}\n {...props}\n onPressEnter={onPressEnter}\n onChange={onInputChange}\n />\n </FieldPopover>\n </li>\n </ul>\n <div className={`${prefix}-prefix`}>\n <Icon type=\"filter\" />\n </div>\n {compositionShowReset && (\n <div className={`${prefix}-clear`}>\n <Icon onClick={onClear} type=\"close-circle\" theme=\"filled\" />\n </div>\n )}\n <div className={`${prefix}-search`} onClick={doSearch}>\n <Icon type=\"search\" />\n </div>\n </div>\n )\n }}\n </LocaleReceiver>\n )\n}\nexport default forwardRef(CompositionInput)\n"]}
|
package/lib/query-form/index.js
CHANGED
|
@@ -118,7 +118,9 @@ var QueryForm = (0, _react.forwardRef)(function (_ref, ref) {
|
|
|
118
118
|
if (onSearch) {
|
|
119
119
|
onSearch(newValues, true);
|
|
120
120
|
} else {
|
|
121
|
-
onChange(newValues, {
|
|
121
|
+
onChange(newValues, {
|
|
122
|
+
name: deleteKeys[0]
|
|
123
|
+
});
|
|
122
124
|
}
|
|
123
125
|
} else if (needSearch && !hasOnChange) {
|
|
124
126
|
formRef.current.emit('search', Object.assign(Object.assign({}, newValues), {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/query-form/index.js"],"names":[],"mappings":"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","sourcesContent":["import React, { useMemo, useRef, useEffect, useState, useImperativeHandle, forwardRef } from 'react'\nimport cn from 'classnames'\nimport Composition from './Field/Composition'\nimport Button from '../button'\nimport Form from '../form'\nimport { getLanguage, getText } from '../prev-locale'\nimport createActions from './createActions'\nimport Field from './Field'\nimport useForm from './useForm'\n\nimport './index.less'\n\nconst clsPrefix = 'tnt-queryform'\n\nconst QueryForm = forwardRef(\n (\n {\n form,\n className = '',\n initialValues: _initialValues,\n language,\n onSearch,\n onReset,\n hasOnChange,\n onChange,\n renderActions,\n extraActions,\n children,\n showSearch = false,\n showReset = false,\n showFieldCount = 3,\n minGroupCount = 3, // 最小聚合个数\n compositionShowReset = true,\n inline,\n },\n ref\n ) => {\n const [initialValues, setInitialValues] = useState(_initialValues || {})\n const formRef = useRef(form || createActions())\n\n useImperativeHandle(\n ref,\n () => ({\n form: formRef.current,\n }),\n []\n )\n\n useEffect(() => {\n const _search = (params = {}) => {\n onSearch?.({\n ...formRef.current.getValues(),\n ...params,\n })\n }\n formRef.current.setData('initialValues', initialValues)\n formRef.current.setData('values', initialValues)\n formRef.current.on('search', _search)\n return () => {\n formRef.current.off('search', _search)\n }\n }, [])\n\n const _getText = (key) => {\n return getText(key, language || getLanguage())\n }\n const _onSearch = () => {\n onSearch?.(formRef.current.getValues())\n }\n\n const _onReset = () => {\n formRef.current.setValues({ ...initialValues })\n onReset?.(initialValues)\n setInitialValues({ ...initialValues })\n }\n\n const _onFieldChange = (name, value, ...rest) => {\n const values = formRef.current.getValues()\n const newValues = {\n ...values,\n [name]: value,\n }\n const changedInfo = { name, value, preValue: values?.[name] }\n formRef.current.setData('values', newValues)\n onChange && onChange(newValues, changedInfo, ...rest)\n }\n\n const _onCompositionFieldChange = (value, deleteKeys, needSearch, isReset) => {\n const values = formRef.current.getValues()\n const newValues = {\n ...values,\n ...value,\n }\n const changeKeys = Object.keys(newValues)\n if (deleteKeys?.length) {\n deleteKeys?.forEach((key) => {\n if (values?.[key] || values?.[key] === 0 || values?.[key] === false) {\n delete newValues[key]\n }\n })\n }\n formRef.current.setData('values', newValues)\n if (isReset) {\n return\n } else if (deleteKeys?.length === 1) {\n // 删除一定要搜索\n if (onSearch) {\n onSearch(newValues, true)\n } else {\n onChange(newValues, {})\n }\n } else if (needSearch && !hasOnChange) {\n formRef.current.emit('search', { ...newValues, current: 1 })\n } else if (onChange) {\n changeKeys.forEach((key) => {\n if (JSON.stringify(value[key]) !== JSON.stringify(values[key])) {\n const changedInfo = { name: key, value: value[key], preValue: values?.[key] }\n onChange(newValues, changedInfo)\n }\n })\n }\n }\n\n const [groupFields, outFields, rightChildren, compositionInitValues] = useMemo(() => {\n let groupFields = []\n let outFields = []\n let otherFields = []\n const rightChildren = []\n const compositionInitValues = {}\n React.Children.map(children, (child) => {\n if (child) {\n if (child.props?.align === 'right') {\n rightChildren.push(child)\n return\n } else if (child.props?.isGroup === false) {\n outFields.push(child)\n } else {\n groupFields.push(child)\n }\n otherFields.push(child)\n }\n })\n if (groupFields.length <= minGroupCount) {\n groupFields = []\n outFields = otherFields\n } else {\n // 初始值\n for (let i = 0; i < groupFields.length; i++) {\n const name = groupFields[i].props?.name\n if (initialValues[name] !== undefined) {\n compositionInitValues[name] = initialValues[name]\n }\n }\n }\n return [\n groupFields,\n outFields,\n rightChildren,\n Object.keys(compositionInitValues).length > 0 ? compositionInitValues : undefined,\n ]\n }, [children, minGroupCount, initialValues])\n\n const isGroupMode = groupFields.length > 0\n const hasOutField = outFields.length > 0\n const showExtra = rightChildren.length > 0 || extraActions\n\n return (\n <div className={cn(clsPrefix, className, { [`${clsPrefix}-inline`]: inline })}>\n <Form layout=\"inline\">\n <div className={`${clsPrefix}-top`}>\n <div className={`${clsPrefix}-top-body`}>\n {outFields.map((child, i) =>\n React.cloneElement(child, {\n form: formRef.current,\n initialValue: initialValues?.[child.props?.name],\n onChange: _onFieldChange,\n key: i,\n })\n )}\n {isGroupMode && (!hasOutField || inline) && (\n <Composition\n clsPrefix={clsPrefix}\n fieldItems={groupFields}\n initialValues={compositionInitValues}\n _onReset={_onReset}\n _onSearch={_onSearch}\n onChange={_onCompositionFieldChange}\n form={formRef.current}\n compositionShowReset={compositionShowReset}\n />\n )}\n {renderActions ? (\n renderActions()\n ) : (\n <>\n {/* {showSearch && (\n <Button type=\"primary\" onClick={_onSearch}>\n {_getText('search')}\n </Button>\n )}\n {showReset && <Button onClick={_onReset}>{_getText('reset')}</Button>} */}\n </>\n )}\n </div>\n {showExtra && (\n <div className={`${clsPrefix}-extra`}>\n {rightChildren}\n {extraActions}\n </div>\n )}\n </div>\n {isGroupMode && hasOutField && !inline && (\n <div className={`${clsPrefix}-bottom`}>\n <Composition\n clsPrefix={clsPrefix}\n fieldItems={groupFields}\n initialValues={compositionInitValues}\n _onReset={_onReset}\n _onSearch={_onSearch}\n onChange={_onCompositionFieldChange}\n form={formRef.current}\n compositionShowReset={compositionShowReset}\n />\n </div>\n )}\n </Form>\n </div>\n )\n }\n)\n\nQueryForm.Field = Field\nQueryForm.useForm = useForm\nQueryForm.createForm = createActions\n\nexport default QueryForm\n"]}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/query-form/index.js"],"names":[],"mappings":"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","sourcesContent":["import React, { useMemo, useRef, useEffect, useState, useImperativeHandle, forwardRef } from 'react'\nimport cn from 'classnames'\nimport Composition from './Field/Composition'\nimport Button from '../button'\nimport Form from '../form'\nimport { getLanguage, getText } from '../prev-locale'\nimport createActions from './createActions'\nimport Field from './Field'\nimport useForm from './useForm'\n\nimport './index.less'\n\nconst clsPrefix = 'tnt-queryform'\n\nconst QueryForm = forwardRef(\n (\n {\n form,\n className = '',\n initialValues: _initialValues,\n language,\n onSearch,\n onReset,\n hasOnChange,\n onChange,\n renderActions,\n extraActions,\n children,\n showSearch = false,\n showReset = false,\n showFieldCount = 3,\n minGroupCount = 3, // 最小聚合个数\n compositionShowReset = true,\n inline,\n },\n ref\n ) => {\n const [initialValues, setInitialValues] = useState(_initialValues || {})\n const formRef = useRef(form || createActions())\n\n useImperativeHandle(\n ref,\n () => ({\n form: formRef.current,\n }),\n []\n )\n\n useEffect(() => {\n const _search = (params = {}) => {\n onSearch?.({\n ...formRef.current.getValues(),\n ...params,\n })\n }\n formRef.current.setData('initialValues', initialValues)\n formRef.current.setData('values', initialValues)\n formRef.current.on('search', _search)\n return () => {\n formRef.current.off('search', _search)\n }\n }, [])\n\n const _getText = (key) => {\n return getText(key, language || getLanguage())\n }\n const _onSearch = () => {\n onSearch?.(formRef.current.getValues())\n }\n\n const _onReset = () => {\n formRef.current.setValues({ ...initialValues })\n onReset?.(initialValues)\n setInitialValues({ ...initialValues })\n }\n\n const _onFieldChange = (name, value, ...rest) => {\n const values = formRef.current.getValues()\n const newValues = {\n ...values,\n [name]: value,\n }\n const changedInfo = { name, value, preValue: values?.[name] }\n formRef.current.setData('values', newValues)\n onChange && onChange(newValues, changedInfo, ...rest)\n }\n\n const _onCompositionFieldChange = (value, deleteKeys, needSearch, isReset) => {\n const values = formRef.current.getValues()\n const newValues = {\n ...values,\n ...value,\n }\n const changeKeys = Object.keys(newValues)\n if (deleteKeys?.length) {\n deleteKeys?.forEach((key) => {\n if (values?.[key] || values?.[key] === 0 || values?.[key] === false) {\n delete newValues[key]\n }\n })\n }\n formRef.current.setData('values', newValues)\n if (isReset) {\n return\n } else if (deleteKeys?.length === 1) {\n // 删除一定要搜索\n if (onSearch) {\n onSearch(newValues, true)\n } else {\n onChange(newValues, { name: deleteKeys[0] })\n }\n } else if (needSearch && !hasOnChange) {\n formRef.current.emit('search', { ...newValues, current: 1 })\n } else if (onChange) {\n changeKeys.forEach((key) => {\n if (JSON.stringify(value[key]) !== JSON.stringify(values[key])) {\n const changedInfo = { name: key, value: value[key], preValue: values?.[key] }\n onChange(newValues, changedInfo)\n }\n })\n }\n }\n\n const [groupFields, outFields, rightChildren, compositionInitValues] = useMemo(() => {\n let groupFields = []\n let outFields = []\n let otherFields = []\n const rightChildren = []\n const compositionInitValues = {}\n React.Children.map(children, (child) => {\n if (child) {\n if (child.props?.align === 'right') {\n rightChildren.push(child)\n return\n } else if (child.props?.isGroup === false) {\n outFields.push(child)\n } else {\n groupFields.push(child)\n }\n otherFields.push(child)\n }\n })\n if (groupFields.length <= minGroupCount) {\n groupFields = []\n outFields = otherFields\n } else {\n // 初始值\n for (let i = 0; i < groupFields.length; i++) {\n const name = groupFields[i].props?.name\n if (initialValues[name] !== undefined) {\n compositionInitValues[name] = initialValues[name]\n }\n }\n }\n return [\n groupFields,\n outFields,\n rightChildren,\n Object.keys(compositionInitValues).length > 0 ? compositionInitValues : undefined,\n ]\n }, [children, minGroupCount, initialValues])\n\n const isGroupMode = groupFields.length > 0\n const hasOutField = outFields.length > 0\n const showExtra = rightChildren.length > 0 || extraActions\n\n return (\n <div className={cn(clsPrefix, className, { [`${clsPrefix}-inline`]: inline })}>\n <Form layout=\"inline\">\n <div className={`${clsPrefix}-top`}>\n <div className={`${clsPrefix}-top-body`}>\n {outFields.map((child, i) =>\n React.cloneElement(child, {\n form: formRef.current,\n initialValue: initialValues?.[child.props?.name],\n onChange: _onFieldChange,\n key: i,\n })\n )}\n {isGroupMode && (!hasOutField || inline) && (\n <Composition\n clsPrefix={clsPrefix}\n fieldItems={groupFields}\n initialValues={compositionInitValues}\n _onReset={_onReset}\n _onSearch={_onSearch}\n onChange={_onCompositionFieldChange}\n form={formRef.current}\n compositionShowReset={compositionShowReset}\n />\n )}\n {renderActions ? (\n renderActions()\n ) : (\n <>\n {/* {showSearch && (\n <Button type=\"primary\" onClick={_onSearch}>\n {_getText('search')}\n </Button>\n )}\n {showReset && <Button onClick={_onReset}>{_getText('reset')}</Button>} */}\n </>\n )}\n </div>\n {showExtra && (\n <div className={`${clsPrefix}-extra`}>\n {rightChildren}\n {extraActions}\n </div>\n )}\n </div>\n {isGroupMode && hasOutField && !inline && (\n <div className={`${clsPrefix}-bottom`}>\n <Composition\n clsPrefix={clsPrefix}\n fieldItems={groupFields}\n initialValues={compositionInitValues}\n _onReset={_onReset}\n _onSearch={_onSearch}\n onChange={_onCompositionFieldChange}\n form={formRef.current}\n compositionShowReset={compositionShowReset}\n />\n </div>\n )}\n </Form>\n </div>\n )\n }\n)\n\nQueryForm.Field = Field\nQueryForm.useForm = useForm\nQueryForm.createForm = createActions\n\nexport default QueryForm\n"]}
|
|
@@ -152,7 +152,6 @@ var QueryForm = /*#__PURE__*/function (_React$PureComponent) {
|
|
|
152
152
|
}, {
|
|
153
153
|
key: "componentDidMount",
|
|
154
154
|
value: function componentDidMount() {
|
|
155
|
-
var _this2 = this;
|
|
156
155
|
var _this$props5 = this.props,
|
|
157
156
|
_this$props5$initialV = _this$props5.initialValues,
|
|
158
157
|
initialValues = _this$props5$initialV === void 0 ? {} : _this$props5$initialV,
|
|
@@ -163,10 +162,10 @@ var QueryForm = /*#__PURE__*/function (_React$PureComponent) {
|
|
|
163
162
|
var formData = Object.assign(Object.assign({}, initialValues), actions.getFormData());
|
|
164
163
|
actions.setData('formData', formData);
|
|
165
164
|
if (Object.keys(formData).length > 0) {
|
|
166
|
-
setTimeout(
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
}, 100)
|
|
165
|
+
// setTimeout(() => {
|
|
166
|
+
// 回写Composition
|
|
167
|
+
this.form.setValues(formData);
|
|
168
|
+
// }, 100)
|
|
170
169
|
}
|
|
171
170
|
} else {
|
|
172
171
|
actions.setData('formData', initialValues);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"QueryForm.js","sourceRoot":"","sources":["../../src/query-list-scene/QueryForm.js"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"QueryForm.js","sourceRoot":"","sources":["../../src/query-list-scene/QueryForm.js"],"names":[],"mappings":"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","sourcesContent":["import classnames from 'classnames'\nimport React from 'react'\n// import Form from '../query-form'\nimport Form from '../query-form'\nimport Field from '../query-form/Field'\n\nconst clsPrefix = 'tnt-querylistscene-queryform'\n\nclass QueryForm extends React.PureComponent {\n constructor(props) {\n super(props)\n const { actions, form } = props\n\n this.form = form || Form.createForm()\n\n actions.on('setFormData', this.setFormData)\n actions.on('resetFormData', this.resetFormData)\n }\n\n render() {\n const { className, actions, extraActions, extralActions, qlsProps, onChange, ...props } =\n this.props\n\n return (\n <Form\n {...props}\n form={this.form}\n className={classnames(clsPrefix, className)}\n // 前期拼写错误,导致需要兼容错误的api\n extraActions={extraActions || extralActions}\n hasOnChange={!!onChange}\n onChange={this.onChange}\n onSearch={this.onSearch}\n onReset={this.onReset}\n />\n )\n }\n\n componentDidMount() {\n const { initialValues = {}, actions, qlsProps, memory } = this.props\n\n if (qlsProps.memory || memory) {\n const formData = {\n ...initialValues,\n ...actions.getFormData(),\n }\n actions.setData('formData', formData)\n if (Object.keys(formData).length > 0) {\n // setTimeout(() => {\n // 回写Composition\n this.form.setValues(formData)\n // }, 100)\n }\n } else {\n actions.setData('formData', initialValues)\n }\n }\n\n onSearch = (searchObj, isDelete) => {\n const { onSearch, actions } = this.props\n if (isDelete) {\n // 如果是删除-》直接搜索\n actions.setFormData({ ...searchObj, current: 1 })\n return\n }\n const values = actions.getFormData()\n const params = { ...values, ...(searchObj || {}), current: 1 }\n\n // memory 与 url解析setForm时 监听事件异步\n actions.setData('formData', values)\n Promise.resolve().then(() => {\n onSearch && onSearch(params)\n actions.emit('search', params)\n })\n }\n\n onReset = () => {\n const { initialValues = {}, onReset, actions } = this.props\n\n const resetValues = {\n ...initialValues,\n pageSize: initialValues.pageSize || 10, // Set default pageSize if not provided\n }\n\n actions.setFormData(resetValues, false)\n\n onReset?.(initialValues)\n this.onSearch()\n }\n\n onChange = (newValues, changedInfo) => {\n const { onChange, actions } = this.props\n\n actions.setFormData(newValues, false)\n onChange?.(newValues, changedInfo)\n }\n\n setFormData = (data, needSearch) => {\n const { actions } = this.props\n actions.setData('formData', data)\n this.form.setValues(data)\n needSearch && this.onSearch()\n }\n\n resetFormData = (needSearch) => {\n const { initialValues, actions } = this.props\n\n actions.setFormData(initialValues, needSearch)\n this.form.resetValues()\n }\n\n componentWillUnmount() {\n const { actions } = this.props\n\n actions.removeListener('setFormData', this.setFormData)\n actions.removeListener('resetFormData', this.resetFormData)\n }\n}\n\nQueryForm.Field = Field\n\nexport default QueryForm\n"]}
|