tntd 3.0.35-beta.1 → 3.0.35-beta.3
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 +5 -1
- package/es/query-form/Field/Composition/index.js.map +1 -1
- package/es/query-list-scene/QueryForm.js +6 -4
- package/es/query-list-scene/QueryForm.js.map +1 -1
- package/lib/query-form/Field/Composition/index.js +5 -1
- package/lib/query-form/Field/Composition/index.js.map +1 -1
- package/lib/query-list-scene/QueryForm.d.ts.map +1 -1
- package/lib/query-list-scene/QueryForm.js +6 -4
- package/lib/query-list-scene/QueryForm.js.map +1 -1
- package/package.json +2 -2
- package/CHANGELOG.json +0 -1034
- package/CHANGELOG.md +0 -605
- package/es/checkbox/checkbox-group.js +0 -5
- package/es/checkbox/checkbox-group.js.map +0 -1
- package/es/query-form-backup/Field/Composition/FieldPopover.less +0 -35
- package/es/query-form-backup/Field/Composition/index.less +0 -114
- package/es/query-form-backup/index.less +0 -90
- package/es/radio/radio-group.js +0 -5
- package/es/radio/radio-group.js.map +0 -1
- package/es/steps/stepStyle/small.less +0 -5
- package/es/table/total-shower.js +0 -10
- package/es/table/total-shower.js.map +0 -1
- package/es/utils/simple-template.js +0 -10
- package/es/utils/simple-template.js.map +0 -1
- package/lib/checkbox/checkbox-group.d.ts +0 -8
- package/lib/checkbox/checkbox-group.d.ts.map +0 -1
- package/lib/checkbox/checkbox-group.js +0 -12
- package/lib/checkbox/checkbox-group.js.map +0 -1
- package/lib/query-form-backup/Field/Composition/FieldPopover.less +0 -35
- package/lib/query-form-backup/Field/Composition/index.less +0 -114
- package/lib/query-form-backup/index.less +0 -90
- package/lib/radio/radio-group.d.ts +0 -8
- package/lib/radio/radio-group.d.ts.map +0 -1
- package/lib/radio/radio-group.js +0 -12
- package/lib/radio/radio-group.js.map +0 -1
- package/lib/steps/stepStyle/small.less +0 -5
- package/lib/table/total-shower.d.ts +0 -9
- package/lib/table/total-shower.d.ts.map +0 -1
- package/lib/table/total-shower.js +0 -16
- package/lib/table/total-shower.js.map +0 -1
- package/lib/utils/simple-template.d.ts +0 -9
- package/lib/utils/simple-template.d.ts.map +0 -1
- package/lib/utils/simple-template.js +0 -19
- package/lib/utils/simple-template.js.map +0 -1
|
@@ -49,6 +49,7 @@ const CompositionInput = ({
|
|
|
49
49
|
const inputRef = useRef(null);
|
|
50
50
|
const widthRef = useRef(null);
|
|
51
51
|
const fieldRef = useRef(null);
|
|
52
|
+
const eventRef = useRef(false);
|
|
52
53
|
fieldItemsRef.current = fieldItems;
|
|
53
54
|
const updateValues = useCallback(obj => {
|
|
54
55
|
const newValueArr = parseObjectToArray(obj, fieldItemsRef.current);
|
|
@@ -59,9 +60,12 @@ const CompositionInput = ({
|
|
|
59
60
|
[name]: value
|
|
60
61
|
});
|
|
61
62
|
}, []);
|
|
62
|
-
|
|
63
|
+
if (!eventRef.current) {
|
|
64
|
+
eventRef.current = true;
|
|
63
65
|
form.on('setValue', updateValue);
|
|
64
66
|
form.on('setValues', updateValues);
|
|
67
|
+
}
|
|
68
|
+
useEffect(() => {
|
|
65
69
|
return () => {
|
|
66
70
|
form.off('setValue', updateValue);
|
|
67
71
|
form.off('setValues', updateValues);
|
|
@@ -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\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 useEffect(() => {\n form.on('setValue', updateValue)\n form.on('setValues', updateValues)\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 }\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"]}
|
|
@@ -140,10 +140,12 @@ class QueryForm extends React.PureComponent {
|
|
|
140
140
|
if (qlsProps.memory || memory) {
|
|
141
141
|
const formData = Object.assign(Object.assign({}, initialValues), actions.getFormData());
|
|
142
142
|
actions.setData('formData', formData);
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
143
|
+
if (Object.keys(formData).length > 0) {
|
|
144
|
+
setTimeout(() => {
|
|
145
|
+
// 回写Composition
|
|
146
|
+
this.form.setValues(formData);
|
|
147
|
+
}, 100);
|
|
148
|
+
}
|
|
147
149
|
} else {
|
|
148
150
|
actions.setData('formData', initialValues);
|
|
149
151
|
}
|
|
@@ -1 +1 @@
|
|
|
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;
|
|
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"]}
|
|
@@ -85,6 +85,7 @@ var CompositionInput = function CompositionInput(_ref, ref) {
|
|
|
85
85
|
var inputRef = (0, _react.useRef)(null);
|
|
86
86
|
var widthRef = (0, _react.useRef)(null);
|
|
87
87
|
var fieldRef = (0, _react.useRef)(null);
|
|
88
|
+
var eventRef = (0, _react.useRef)(false);
|
|
88
89
|
fieldItemsRef.current = fieldItems;
|
|
89
90
|
var updateValues = (0, _react.useCallback)(function (obj) {
|
|
90
91
|
var newValueArr = (0, _utils.parseObjectToArray)(obj, fieldItemsRef.current);
|
|
@@ -93,9 +94,12 @@ var CompositionInput = function CompositionInput(_ref, ref) {
|
|
|
93
94
|
var updateValue = (0, _react.useCallback)(function (name, value) {
|
|
94
95
|
updateValues(_defineProperty({}, name, value));
|
|
95
96
|
}, []);
|
|
96
|
-
(
|
|
97
|
+
if (!eventRef.current) {
|
|
98
|
+
eventRef.current = true;
|
|
97
99
|
form.on('setValue', updateValue);
|
|
98
100
|
form.on('setValues', updateValues);
|
|
101
|
+
}
|
|
102
|
+
(0, _react.useEffect)(function () {
|
|
99
103
|
return function () {
|
|
100
104
|
form.off('setValue', updateValue);
|
|
101
105
|
form.off('setValues', updateValues);
|
|
@@ -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/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\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 useEffect(() => {\n form.on('setValue', updateValue)\n form.on('setValues', updateValues)\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/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 +1 @@
|
|
|
1
|
-
{"version":3,"file":"QueryForm.d.ts","sourceRoot":"","sources":["../../src/query-list-scene/QueryForm.js"],"names":[],"mappings":";AAQA;IACE,wBAQC;IAJC,UAAqC;IAMvC,4BAiBC;IAED,
|
|
1
|
+
{"version":3,"file":"QueryForm.d.ts","sourceRoot":"","sources":["../../src/query-list-scene/QueryForm.js"],"names":[],"mappings":";AAQA;IACE,wBAQC;IAJC,UAAqC;IAMvC,4BAiBC;IAED,0BAkBC;IAED,kDAgBC;IAED,oBAYC;IAED,qDAKC;IAED,kDAKC;IAED,yCAKC;IAED,6BAKC;CACF"}
|
|
@@ -162,10 +162,12 @@ var QueryForm = /*#__PURE__*/function (_React$PureComponent) {
|
|
|
162
162
|
if (qlsProps.memory || memory) {
|
|
163
163
|
var formData = Object.assign(Object.assign({}, initialValues), actions.getFormData());
|
|
164
164
|
actions.setData('formData', formData);
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
165
|
+
if (Object.keys(formData).length > 0) {
|
|
166
|
+
setTimeout(function () {
|
|
167
|
+
// 回写Composition
|
|
168
|
+
_this2.form.setValues(formData);
|
|
169
|
+
}, 100);
|
|
170
|
+
}
|
|
169
171
|
} else {
|
|
170
172
|
actions.setData('formData', initialValues);
|
|
171
173
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"QueryForm.js","sourceRoot":"","sources":["../../src/query-list-scene/QueryForm.js"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,4DAAmC;AACnC,kDAAyB;AACzB,mCAAmC;AACnC,+DAAgC;AAChC,gEAAuC;AAEvC,MAAM,SAAS,GAAG,8BAA8B,CAAA;AAEhD,MAAM,SAAU,SAAQ,eAAK,CAAC,aAAa;IACzC,YAAY,KAAK;QACf,KAAK,CAAC,KAAK,CAAC,CAAA;
|
|
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"]}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "tntd",
|
|
3
|
-
"version": "3.0.35-beta.
|
|
3
|
+
"version": "3.0.35-beta.3",
|
|
4
4
|
"license": "MIT",
|
|
5
5
|
"scripts": {
|
|
6
6
|
"start": "heft start --storybook",
|
|
@@ -114,4 +114,4 @@
|
|
|
114
114
|
"main": "lib/index.js",
|
|
115
115
|
"module": "es/index.js",
|
|
116
116
|
"typings": "lib/index.d.ts"
|
|
117
|
-
}
|
|
117
|
+
}
|