tntd 2.8.25 → 2.8.27

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.
Files changed (33) hide show
  1. package/es/query-form/Field/Composition/FieldPopover.js +2 -1
  2. package/es/query-form/Field/Composition/FieldPopover.js.map +1 -1
  3. package/es/query-form/Field/Composition/ValueTag.js +3 -2
  4. package/es/query-form/Field/Composition/ValueTag.js.map +1 -1
  5. package/es/query-form/Field/Composition/index.less +2 -1
  6. package/es/query-form/Field/fieldsMap.js +23 -1
  7. package/es/query-form/Field/fieldsMap.js.map +1 -1
  8. package/es/table/resizableTable/index.js +7 -3
  9. package/es/table/resizableTable/index.js.map +1 -1
  10. package/es/tntd-rc-select/style/index.less +0 -7
  11. package/es/tntd-virtual-tree-select/index.js +38 -3
  12. package/es/tntd-virtual-tree-select/index.js.map +1 -1
  13. package/lib/query-form/Field/Composition/FieldPopover.js +2 -1
  14. package/lib/query-form/Field/Composition/FieldPopover.js.map +1 -1
  15. package/lib/query-form/Field/Composition/ValueTag.d.ts +2 -1
  16. package/lib/query-form/Field/Composition/ValueTag.d.ts.map +1 -1
  17. package/lib/query-form/Field/Composition/ValueTag.js +12 -8
  18. package/lib/query-form/Field/Composition/ValueTag.js.map +1 -1
  19. package/lib/query-form/Field/Composition/index.less +2 -1
  20. package/lib/query-form/Field/fieldsMap.d.ts +6 -1
  21. package/lib/query-form/Field/fieldsMap.d.ts.map +1 -1
  22. package/lib/query-form/Field/fieldsMap.js +21 -1
  23. package/lib/query-form/Field/fieldsMap.js.map +1 -1
  24. package/lib/table/resizableTable/index.d.ts +1 -0
  25. package/lib/table/resizableTable/index.d.ts.map +1 -1
  26. package/lib/table/resizableTable/index.js +7 -3
  27. package/lib/table/resizableTable/index.js.map +1 -1
  28. package/lib/tntd-rc-select/style/index.less +0 -7
  29. package/lib/tntd-virtual-tree-select/index.d.ts +2 -1
  30. package/lib/tntd-virtual-tree-select/index.d.ts.map +1 -1
  31. package/lib/tntd-virtual-tree-select/index.js +42 -4
  32. package/lib/tntd-virtual-tree-select/index.js.map +1 -1
  33. package/package.json +1 -1
@@ -287,7 +287,8 @@ const FieldPopover = (_a, ref) => {
287
287
  width: ((_a = fieldProps === null || fieldProps === void 0 ? void 0 : fieldProps.style) === null || _a === void 0 ? void 0 : _a.width) || '250px'
288
288
  }),
289
289
  close: close,
290
- onChange: onFieldChange
290
+ onChange: onFieldChange,
291
+ name: name
291
292
  }))));
292
293
  };
293
294
  return React.createElement(Popover, Object.assign({
@@ -1 +1 @@
1
- {"version":3,"file":"FieldPopover.js","sourceRoot":"","sources":["../../../../src/query-form/Field/Composition/FieldPopover.js"],"names":[],"mappings":"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","sourcesContent":["import React, { useEffect, useState, forwardRef, useImperativeHandle } from 'react'\nimport { cloneDeep, filter, find } from 'lodash'\nimport { Empty } from '../../../empty'\nimport Popover from '../../../popover'\nimport Ellipsis from '../../../ellipsis'\nimport SelectOpt from './Select'\nimport { highlightSubstring, formatLabel, isInput } from './utils'\nimport fieldsMap from '../fieldsMap'\nimport './FieldPopover.less'\n\nconst FieldPopover = (\n {\n visible,\n setVisible,\n searchText,\n children,\n value,\n regex,\n fieldItems,\n propItem,\n setFieldItem,\n onChange,\n form,\n locale,\n clsPrefix,\n ...props\n },\n ref\n) => {\n const [searchTarget, setSearchTarget] = useState(undefined)\n const [popoverContent, setPopoverContent] = useState(false)\n\n const onPropsClick = (props) => {\n const { type = 'input', component } = props || {}\n const copyValue = cloneDeep(value)\n if (!copyValue?.find((v) => v.key === props.name)) {\n copyValue.push({\n key: props.name,\n value: type === 'array' ? [] : undefined,\n })\n }\n setFieldItem(props)\n if (isInput(type) && !component) {\n const target = copyValue.find((v) => v.key === props.name)\n onChange(target, true)\n close()\n return\n }\n setVisible(true)\n setPopoverContent(true)\n onChange(copyValue)\n }\n\n useImperativeHandle(ref, () => ({\n onPropsClick,\n }))\n\n const onSelectChange = (v, isMultiple) => {\n const propObj = v?.propItem || propItem || {}\n const { props: fieldProps } = propObj // 直接搜索拿v.xx的值\n const copyValue = cloneDeep(value || [])\n let index\n if (v?.propItem) {\n // 模糊搜索\n const _index = copyValue.findIndex((vv) => vv.key === v.propItem?.name)\n if (_index > -1) {\n index = _index\n } else {\n copyValue.push({\n key: v.propItem?.name,\n value: isMultiple ? [] : '',\n })\n index = copyValue.length - 1\n }\n setFieldItem(v.propItem)\n } else {\n // 选择值\n index = copyValue.findIndex((v) => v.key === propItem?.name)\n }\n\n if (isMultiple) {\n if (!copyValue[index]?.value?.length) {\n copyValue[index].value = [v?.value]\n } else {\n if (copyValue[index].value?.indexOf(v.value) > -1) {\n copyValue[index].value = copyValue[index].value.filter((val) => val !== v.value)\n } else {\n copyValue[index].value.push(v.value)\n }\n }\n // 如果是模糊搜索-展开多选项\n if (v?.propItem) {\n setFieldItem(v?.propItem)\n setVisible(true)\n setPopoverContent(true)\n }\n } else {\n copyValue[index].value = v?.value\n close()\n }\n onChange(copyValue, false, true)\n fieldProps?.onChange && fieldProps.onChange(copyValue[index].value)\n }\n\n const onFieldChange = (...args) => {\n const { type = 'input', component, props: fieldProps } = propItem || {}\n const copyValue = cloneDeep(value)\n const index = copyValue.findIndex((v) => v.key === propItem?.name)\n copyValue[index].value = args[0]\n if (['date', 'checkbox'].includes(type) || (type === 'dateRange' && args[1]?.[1])) {\n close()\n }\n onChange(copyValue, false, args[0] !== undefined, type !== 'selectInput')\n fieldProps?.onChange && fieldProps.onChange(copyValue[index].value)\n }\n\n const close = () => {\n setVisible(false)\n setTimeout(() => {\n setFieldItem()\n setPopoverContent(false)\n }, 1)\n }\n const handleVisibleChange = () => {\n if (!visible && !regex.test(searchText)) {\n setVisible(true)\n } else {\n close()\n }\n }\n\n useEffect(() => {\n let bool1 = false,\n bool2 = false\n\n if (searchText && !propItem) {\n fieldItems?.forEach((v) => {\n const { name, propsTitle, title, type = 'input', props } = v.props || {}\n const _propsTitle = propsTitle || title || name\n if (_propsTitle?.indexOf(searchText) > -1) {\n bool1 = true\n }\n const sOptions = type !== 'select' ? [] : props?.options || []\n const fieldNames = props?.fieldNames\n const target = sOptions?.find((item) => {\n const labelKey = fieldNames?.label || 'label'\n const label = item instanceof Object ? item[labelKey] : item + ''\n return (React.isValidElement(label) ? formatLabel(label) : label).indexOf(searchText) > -1\n })\n if (target) {\n bool2 = true\n }\n })\n setSearchTarget(!bool2 && !bool1 ? null : { propsTitle: bool1, propsValue: bool2 })\n } else {\n setSearchTarget(undefined)\n }\n }, [fieldItems, searchText, propItem])\n\n const renderFirstOptions = () => {\n const firstItems = searchText\n ? filter(fieldItems, (v) => {\n const { name, propsTitle, title } = v.props || {}\n const _propsTitle = propsTitle || title || name\n return _propsTitle?.indexOf(searchText) > -1\n })\n : fieldItems\n const secondItems = searchText\n ? filter(fieldItems, (v) => {\n const { type = 'input', props } = v.props || {}\n const { options, loadData, fieldNames } = props || {}\n return (\n type === 'select' &&\n !loadData &&\n !!find(options, (item) => {\n const labelKey = fieldNames?.label || 'label'\n const label = item instanceof Object ? item[labelKey] : item + ''\n const isReactDom = React.isValidElement(label)\n const _label = isReactDom ? formatLabel(label) : label\n return _label?.indexOf(searchText) > -1\n })\n )\n })\n : []\n return (\n <div>\n {firstItems.length > 0 && (\n <>\n {(!searchText || searchTarget?.propsTitle) && <label>{locale.propTitle}</label>}\n <ul className=\"ant-select-dropdown-menu\">\n {firstItems.map((v) => {\n const { name, propsTitle, title, type, props } = v.props || {}\n const _propsTitle = propsTitle || title || name\n return (\n <li\n className=\"ant-select-dropdown-menu-item\"\n key={name}\n value={name}\n onMouseDown={(e) => e.preventDefault()}\n onClick={() => {\n onPropsClick(v.props)\n }}\n >\n <Ellipsis\n widthLimit={220}\n title={\n searchText ? (\n <span\n dangerouslySetInnerHTML={{\n __html: highlightSubstring(_propsTitle, searchText),\n }}\n />\n ) : (\n _propsTitle\n )\n }\n />\n </li>\n )\n })}\n </ul>\n </>\n )}\n\n {/* 可以对下拉框值筛选 */}\n {secondItems.length > 0 && (\n <div>\n {searchTarget?.propsValue && <label>{locale.propValue}</label>}\n {fieldItems?.map((v) => {\n const { name, type = 'input', props } = v.props || {}\n const target = value?.find((v) => v.key === name)\n if (type === 'select') {\n return (\n <SelectOpt\n key={name}\n {...props}\n searchText={searchText}\n propItem={v.props}\n onChange={onSelectChange}\n value={target?.value}\n />\n )\n }\n return\n })}\n </div>\n )}\n {!firstItems.length && !secondItems.length && <Empty size=\"mini\" />}\n </div>\n )\n }\n\n const renderSecondOptions = () => {\n const {\n name,\n propsTitle,\n title,\n type = 'input',\n className,\n component,\n props: fieldProps,\n } = propItem || {}\n const target = value?.find((v) => v.key === name)\n const Field = component || fieldsMap[type] || (() => null)\n return (\n <div onClick={(e) => e.stopPropagation()} className={className}>\n <label>{propsTitle || title || name}</label>\n {type === 'select' ? (\n <SelectOpt\n {...fieldProps}\n searchText={searchText}\n propItem={propItem}\n onChange={onSelectChange}\n value={target?.value}\n />\n ) : (\n <div\n className={`${clsPrefix}-field-popover-content`}\n onClick={(e) => e.stopPropagation()}\n >\n <Field\n form={form}\n value={target?.value}\n {...fieldProps}\n style={{\n ...fieldProps?.style,\n width: fieldProps?.style?.width || '250px',\n }}\n close={close}\n onChange={onFieldChange}\n />\n </div>\n )}\n </div>\n )\n }\n\n return (\n <Popover\n trigger=\"click\"\n visible={visible}\n overlayClassName={`${clsPrefix}-field-popover`}\n content={!popoverContent ? renderFirstOptions() : renderSecondOptions()}\n onVisibleChange={handleVisibleChange}\n {...props}\n >\n {children}\n </Popover>\n )\n}\nexport default forwardRef(FieldPopover)\n"]}
1
+ {"version":3,"file":"FieldPopover.js","sourceRoot":"","sources":["../../../../src/query-form/Field/Composition/FieldPopover.js"],"names":[],"mappings":"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","sourcesContent":["import React, { useEffect, useState, forwardRef, useImperativeHandle } from 'react'\nimport { cloneDeep, filter, find } from 'lodash'\nimport { Empty } from '../../../empty'\nimport Popover from '../../../popover'\nimport Ellipsis from '../../../ellipsis'\nimport SelectOpt from './Select'\nimport { highlightSubstring, formatLabel, isInput } from './utils'\nimport fieldsMap from '../fieldsMap'\nimport './FieldPopover.less'\n\nconst FieldPopover = (\n {\n visible,\n setVisible,\n searchText,\n children,\n value,\n regex,\n fieldItems,\n propItem,\n setFieldItem,\n onChange,\n form,\n locale,\n clsPrefix,\n ...props\n },\n ref\n) => {\n const [searchTarget, setSearchTarget] = useState(undefined)\n const [popoverContent, setPopoverContent] = useState(false)\n\n const onPropsClick = (props) => {\n const { type = 'input', component } = props || {}\n const copyValue = cloneDeep(value)\n if (!copyValue?.find((v) => v.key === props.name)) {\n copyValue.push({\n key: props.name,\n value: type === 'array' ? [] : undefined,\n })\n }\n setFieldItem(props)\n if (isInput(type) && !component) {\n const target = copyValue.find((v) => v.key === props.name)\n onChange(target, true)\n close()\n return\n }\n setVisible(true)\n setPopoverContent(true)\n onChange(copyValue)\n }\n\n useImperativeHandle(ref, () => ({\n onPropsClick,\n }))\n\n const onSelectChange = (v, isMultiple) => {\n const propObj = v?.propItem || propItem || {}\n const { props: fieldProps } = propObj // 直接搜索拿v.xx的值\n const copyValue = cloneDeep(value || [])\n let index\n if (v?.propItem) {\n // 模糊搜索\n const _index = copyValue.findIndex((vv) => vv.key === v.propItem?.name)\n if (_index > -1) {\n index = _index\n } else {\n copyValue.push({\n key: v.propItem?.name,\n value: isMultiple ? [] : '',\n })\n index = copyValue.length - 1\n }\n setFieldItem(v.propItem)\n } else {\n // 选择值\n index = copyValue.findIndex((v) => v.key === propItem?.name)\n }\n\n if (isMultiple) {\n if (!copyValue[index]?.value?.length) {\n copyValue[index].value = [v?.value]\n } else {\n if (copyValue[index].value?.indexOf(v.value) > -1) {\n copyValue[index].value = copyValue[index].value.filter((val) => val !== v.value)\n } else {\n copyValue[index].value.push(v.value)\n }\n }\n // 如果是模糊搜索-展开多选项\n if (v?.propItem) {\n setFieldItem(v?.propItem)\n setVisible(true)\n setPopoverContent(true)\n }\n } else {\n copyValue[index].value = v?.value\n close()\n }\n onChange(copyValue, false, true)\n fieldProps?.onChange && fieldProps.onChange(copyValue[index].value)\n }\n\n const onFieldChange = (...args) => {\n const { type = 'input', component, props: fieldProps } = propItem || {}\n const copyValue = cloneDeep(value)\n const index = copyValue.findIndex((v) => v.key === propItem?.name)\n copyValue[index].value = args[0]\n if (['date', 'checkbox'].includes(type) || (type === 'dateRange' && args[1]?.[1])) {\n close()\n }\n onChange(copyValue, false, args[0] !== undefined, type !== 'selectInput')\n fieldProps?.onChange && fieldProps.onChange(copyValue[index].value)\n }\n\n const close = () => {\n setVisible(false)\n setTimeout(() => {\n setFieldItem()\n setPopoverContent(false)\n }, 1)\n }\n const handleVisibleChange = () => {\n if (!visible && !regex.test(searchText)) {\n setVisible(true)\n } else {\n close()\n }\n }\n\n useEffect(() => {\n let bool1 = false,\n bool2 = false\n\n if (searchText && !propItem) {\n fieldItems?.forEach((v) => {\n const { name, propsTitle, title, type = 'input', props } = v.props || {}\n const _propsTitle = propsTitle || title || name\n if (_propsTitle?.indexOf(searchText) > -1) {\n bool1 = true\n }\n const sOptions = type !== 'select' ? [] : props?.options || []\n const fieldNames = props?.fieldNames\n const target = sOptions?.find((item) => {\n const labelKey = fieldNames?.label || 'label'\n const label = item instanceof Object ? item[labelKey] : item + ''\n return (React.isValidElement(label) ? formatLabel(label) : label).indexOf(searchText) > -1\n })\n if (target) {\n bool2 = true\n }\n })\n setSearchTarget(!bool2 && !bool1 ? null : { propsTitle: bool1, propsValue: bool2 })\n } else {\n setSearchTarget(undefined)\n }\n }, [fieldItems, searchText, propItem])\n\n const renderFirstOptions = () => {\n const firstItems = searchText\n ? filter(fieldItems, (v) => {\n const { name, propsTitle, title } = v.props || {}\n const _propsTitle = propsTitle || title || name\n return _propsTitle?.indexOf(searchText) > -1\n })\n : fieldItems\n const secondItems = searchText\n ? filter(fieldItems, (v) => {\n const { type = 'input', props } = v.props || {}\n const { options, loadData, fieldNames } = props || {}\n return (\n type === 'select' &&\n !loadData &&\n !!find(options, (item) => {\n const labelKey = fieldNames?.label || 'label'\n const label = item instanceof Object ? item[labelKey] : item + ''\n const isReactDom = React.isValidElement(label)\n const _label = isReactDom ? formatLabel(label) : label\n return _label?.indexOf(searchText) > -1\n })\n )\n })\n : []\n return (\n <div>\n {firstItems.length > 0 && (\n <>\n {(!searchText || searchTarget?.propsTitle) && <label>{locale.propTitle}</label>}\n <ul className=\"ant-select-dropdown-menu\">\n {firstItems.map((v) => {\n const { name, propsTitle, title, type, props } = v.props || {}\n const _propsTitle = propsTitle || title || name\n return (\n <li\n className=\"ant-select-dropdown-menu-item\"\n key={name}\n value={name}\n onMouseDown={(e) => e.preventDefault()}\n onClick={() => {\n onPropsClick(v.props)\n }}\n >\n <Ellipsis\n widthLimit={220}\n title={\n searchText ? (\n <span\n dangerouslySetInnerHTML={{\n __html: highlightSubstring(_propsTitle, searchText),\n }}\n />\n ) : (\n _propsTitle\n )\n }\n />\n </li>\n )\n })}\n </ul>\n </>\n )}\n\n {/* 可以对下拉框值筛选 */}\n {secondItems.length > 0 && (\n <div>\n {searchTarget?.propsValue && <label>{locale.propValue}</label>}\n {fieldItems?.map((v) => {\n const { name, type = 'input', props } = v.props || {}\n const target = value?.find((v) => v.key === name)\n if (type === 'select') {\n return (\n <SelectOpt\n key={name}\n {...props}\n searchText={searchText}\n propItem={v.props}\n onChange={onSelectChange}\n value={target?.value}\n />\n )\n }\n return\n })}\n </div>\n )}\n {!firstItems.length && !secondItems.length && <Empty size=\"mini\" />}\n </div>\n )\n }\n\n const renderSecondOptions = () => {\n const {\n name,\n propsTitle,\n title,\n type = 'input',\n className,\n component,\n props: fieldProps,\n } = propItem || {}\n const target = value?.find((v) => v.key === name)\n const Field = component || fieldsMap[type] || (() => null)\n return (\n <div onClick={(e) => e.stopPropagation()} className={className}>\n <label>{propsTitle || title || name}</label>\n {type === 'select' ? (\n <SelectOpt\n {...fieldProps}\n searchText={searchText}\n propItem={propItem}\n onChange={onSelectChange}\n value={target?.value}\n />\n ) : (\n <div\n className={`${clsPrefix}-field-popover-content`}\n onClick={(e) => e.stopPropagation()}\n >\n <Field\n form={form}\n value={target?.value}\n {...fieldProps}\n style={{\n ...fieldProps?.style,\n width: fieldProps?.style?.width || '250px',\n }}\n close={close}\n onChange={onFieldChange}\n name={name}\n />\n </div>\n )}\n </div>\n )\n }\n\n return (\n <Popover\n trigger=\"click\"\n visible={visible}\n overlayClassName={`${clsPrefix}-field-popover`}\n content={!popoverContent ? renderFirstOptions() : renderSecondOptions()}\n onVisibleChange={handleVisibleChange}\n {...props}\n >\n {children}\n </Popover>\n )\n}\nexport default forwardRef(FieldPopover)\n"]}
@@ -1,6 +1,6 @@
1
1
  import _cloneDeep from "lodash/cloneDeep";
2
2
  import _find from "lodash/find";
3
- import { useState } from 'react';
3
+ import React, { useState } from 'react';
4
4
  import Popover from '../../../popover';
5
5
  import Tag from '../../../tag';
6
6
  import fieldsMap from '../fieldsMap';
@@ -90,7 +90,8 @@ export default function ValueTag({
90
90
  width: ((_a = fieldProps === null || fieldProps === void 0 ? void 0 : fieldProps.style) === null || _a === void 0 ? void 0 : _a.width) || '250px'
91
91
  }),
92
92
  close: close,
93
- onChange: onFieldChange
93
+ onChange: onFieldChange,
94
+ name: name
94
95
  }))));
95
96
  };
96
97
  const _isInput = isInput(type) && !component;
@@ -1 +1 @@
1
- {"version":3,"file":"ValueTag.js","sourceRoot":"","sources":["../../../../src/query-form/Field/Composition/ValueTag.js"],"names":[],"mappings":"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","sourcesContent":["import { useState } from 'react'\nimport { find, cloneDeep } from 'lodash'\nimport Popover from '../../../popover'\nimport Tag from '../../../tag'\nimport fieldsMap from '../fieldsMap'\nimport SelectOpt from './Select'\nimport { getLabel, isInput } from './utils'\nimport './FieldPopover.less'\n\nexport default function ValueTag({\n item,\n fieldItems,\n locale,\n onDelete,\n value,\n onChange,\n clsPrefix,\n form,\n handleTag,\n}) {\n const [visible, setVisible] = useState()\n\n const propItem = find(fieldItems, (it) => it.props.name === item.key)?.props || {}\n const {\n name,\n propsTitle,\n title,\n type = 'input',\n className,\n component,\n props: fieldProps,\n closable = true,\n } = propItem\n\n const handleVisibleChange = (visible) => {\n setVisible(visible)\n }\n\n const close = () => {\n setVisible(false)\n }\n\n const onFieldChange = (...args) => {\n const copyValue = cloneDeep(value)\n const index = copyValue.findIndex((v) => v.key === name)\n copyValue[index].value = args[0]\n if (['date', 'checkbox'].includes(type) || (type === 'dateRange' && args[1]?.[1])) {\n close()\n }\n onChange(copyValue, false, args[0] !== undefined, type !== 'selectInput')\n fieldProps?.onChange && fieldProps.onChange(copyValue[index].value)\n }\n\n const onSelectChange = (v, isMultiple) => {\n const copyValue = cloneDeep(value || [])\n let index = copyValue.findIndex((v) => v.key === name)\n if (isMultiple) {\n if (!copyValue[index]?.value?.length) {\n copyValue[index].value = [v?.value]\n } else {\n if (copyValue[index].value?.indexOf(v.value) > -1) {\n copyValue[index].value = copyValue[index].value.filter((val) => val !== v.value)\n } else {\n copyValue[index].value.push(v.value)\n }\n }\n } else {\n copyValue[index].value = v?.value\n close()\n }\n onChange(copyValue, false, true)\n fieldProps?.onChange && fieldProps.onChange(copyValue[index].value)\n }\n\n const renderSecondOptions = () => {\n const Field = component || fieldsMap[type] || (() => null)\n return (\n <div onClick={(e) => e.stopPropagation()} className={className}>\n <label>{propsTitle || title || name}</label>\n {type === 'select' ? (\n <SelectOpt\n {...fieldProps}\n propItem={propItem}\n onChange={onSelectChange}\n value={item?.value}\n />\n ) : (\n <div\n className={`${clsPrefix}-field-popover-content`}\n onClick={(e) => e.stopPropagation()}\n >\n <Field\n form={form}\n value={item?.value}\n {...fieldProps}\n style={{\n ...fieldProps?.style,\n width: fieldProps?.style?.width || '250px',\n }}\n close={close}\n onChange={onFieldChange}\n />\n </div>\n )}\n </div>\n )\n }\n\n const _isInput = isInput(type) && !component\n\n if (item?.value === undefined) {\n return null\n }\n\n return (\n <Popover\n trigger=\"click\"\n visible={visible && !_isInput}\n onVisibleChange={handleVisibleChange}\n overlayClassName={`${clsPrefix}-field-popover`}\n content={renderSecondOptions()}\n placement=\"bottomLeft\"\n >\n <Tag\n closable={closable}\n onClick={(e) => {\n e.preventDefault()\n e.stopPropagation()\n if (!_isInput) {\n setVisible(true)\n } else {\n handleTag(cloneDeep(item))\n }\n }}\n onClose={(e) => onDelete(item.key, e)}\n ellipsisOptions={{ widthLimit: '140px' }}\n >\n {getLabel(item, fieldItems, locale)}\n </Tag>\n </Popover>\n )\n}\n"]}
1
+ {"version":3,"file":"ValueTag.js","sourceRoot":"","sources":["../../../../src/query-form/Field/Composition/ValueTag.js"],"names":[],"mappings":"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","sourcesContent":["import React, { useState } from 'react'\nimport { find, cloneDeep } from 'lodash'\nimport Popover from '../../../popover'\nimport Tag from '../../../tag'\nimport fieldsMap from '../fieldsMap'\nimport SelectOpt from './Select'\nimport { getLabel, isInput } from './utils'\nimport './FieldPopover.less'\n\nexport default function ValueTag({\n item,\n fieldItems,\n locale,\n onDelete,\n value,\n onChange,\n clsPrefix,\n form,\n handleTag,\n}) {\n const [visible, setVisible] = useState()\n\n const propItem = find(fieldItems, (it) => it.props.name === item.key)?.props || {}\n const {\n name,\n propsTitle,\n title,\n type = 'input',\n className,\n component,\n props: fieldProps,\n closable = true,\n } = propItem\n\n const handleVisibleChange = (visible) => {\n setVisible(visible)\n }\n\n const close = () => {\n setVisible(false)\n }\n\n const onFieldChange = (...args) => {\n const copyValue = cloneDeep(value)\n const index = copyValue.findIndex((v) => v.key === name)\n copyValue[index].value = args[0]\n if (['date', 'checkbox'].includes(type) || (type === 'dateRange' && args[1]?.[1])) {\n close()\n }\n onChange(copyValue, false, args[0] !== undefined, type !== 'selectInput')\n fieldProps?.onChange && fieldProps.onChange(copyValue[index].value)\n }\n\n const onSelectChange = (v, isMultiple) => {\n const copyValue = cloneDeep(value || [])\n let index = copyValue.findIndex((v) => v.key === name)\n if (isMultiple) {\n if (!copyValue[index]?.value?.length) {\n copyValue[index].value = [v?.value]\n } else {\n if (copyValue[index].value?.indexOf(v.value) > -1) {\n copyValue[index].value = copyValue[index].value.filter((val) => val !== v.value)\n } else {\n copyValue[index].value.push(v.value)\n }\n }\n } else {\n copyValue[index].value = v?.value\n close()\n }\n onChange(copyValue, false, true)\n fieldProps?.onChange && fieldProps.onChange(copyValue[index].value)\n }\n\n const renderSecondOptions = () => {\n const Field = component || fieldsMap[type] || (() => null)\n return (\n <div onClick={(e) => e.stopPropagation()} className={className}>\n <label>{propsTitle || title || name}</label>\n {type === 'select' ? (\n <SelectOpt\n {...fieldProps}\n propItem={propItem}\n onChange={onSelectChange}\n value={item?.value}\n />\n ) : (\n <div\n className={`${clsPrefix}-field-popover-content`}\n onClick={(e) => e.stopPropagation()}\n >\n <Field\n form={form}\n value={item?.value}\n {...fieldProps}\n style={{\n ...fieldProps?.style,\n width: fieldProps?.style?.width || '250px',\n }}\n close={close}\n onChange={onFieldChange}\n name={name}\n />\n </div>\n )}\n </div>\n )\n }\n\n const _isInput = isInput(type) && !component\n\n if (item?.value === undefined) {\n return null\n }\n\n return (\n <Popover\n trigger=\"click\"\n visible={visible && !_isInput}\n onVisibleChange={handleVisibleChange}\n overlayClassName={`${clsPrefix}-field-popover`}\n content={renderSecondOptions()}\n placement=\"bottomLeft\"\n >\n <Tag\n closable={closable}\n onClick={(e) => {\n e.preventDefault()\n e.stopPropagation()\n if (!_isInput) {\n setVisible(true)\n } else {\n handleTag(cloneDeep(item))\n }\n }}\n onClose={(e) => onDelete(item.key, e)}\n ellipsisOptions={{ widthLimit: '140px' }}\n >\n {getLabel(item, fieldItems, locale)}\n </Tag>\n </Popover>\n )\n}\n"]}
@@ -81,7 +81,8 @@
81
81
  }
82
82
  &-clear {
83
83
  position: absolute;
84
- right: @margin-sm;
84
+ // right: @margin-sm;
85
+ right: calc(@margin-sm + 30px);
85
86
  top: 50%;
86
87
  transform: translateY(-50%);
87
88
  display: none;
@@ -1,3 +1,11 @@
1
+ var __rest = this && this.__rest || function (s, e) {
2
+ var t = {};
3
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];
4
+ if (s != null && typeof Object.getOwnPropertySymbols === "function") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
5
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];
6
+ }
7
+ return t;
8
+ };
1
9
  import CheckboxField from './Checkbox';
2
10
  import SelectField from './Select';
3
11
  import SelectInput from './SelectInput';
@@ -14,6 +22,20 @@ export const getFieldWidth = type => {
14
22
  selectInput: '320px'
15
23
  }[type] || defaultFieldWidth;
16
24
  };
25
+ function DataRange(_a) {
26
+ var {
27
+ onChange,
28
+ check
29
+ } = _a,
30
+ otherProps = __rest(_a, ["onChange", "check"]);
31
+ return React.createElement(DatePicker.RangePicker, Object.assign({}, otherProps, {
32
+ onChange: check ? (dates, dateStrings) => {
33
+ if (check(dates, dateStrings)) {
34
+ onChange(dates, dateStrings);
35
+ }
36
+ } : onChange
37
+ }));
38
+ }
17
39
  export default {
18
40
  string: Input,
19
41
  input: Input,
@@ -23,6 +45,6 @@ export default {
23
45
  select: SelectField,
24
46
  checkbox: CheckboxField,
25
47
  date: DatePicker,
26
- dateRange: DatePicker.RangePicker,
48
+ dateRange: DataRange,
27
49
  selectInput: SelectInput
28
50
  };
@@ -1 +1 @@
1
- {"version":3,"file":"fieldsMap.js","sourceRoot":"","sources":["../../../src/query-form/Field/fieldsMap.js"],"names":[],"mappings":"AAAA,OAAO,aAAa,MAAM,YAAY,CAAA;AACtC,OAAO,WAAW,MAAM,UAAU,CAAA;AAClC,OAAO,WAAW,MAAM,eAAe,CAAA;AACvC,OAAO,UAAU,MAAM,mBAAmB,CAAA;AAC1C,OAAO,KAAK,MAAM,aAAa,CAAA;AAC/B,OAAO,WAAW,MAAM,oBAAoB,CAAA;AAE5C,MAAM,CAAC,MAAM,iBAAiB,GAAG,OAAO,CAAA;AAExC,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,IAAI,EAAE,EAAE;IACpC,IAAI,IAAI,KAAK,WAAW,EAAE;QACxB,OAAO,OAAO,CAAA;KACf;IAED,OAAO,CACL;QACE,SAAS,EAAE,OAAO;QAClB,WAAW,EAAE,OAAO;KACrB,CAAC,IAAI,CAAC,IAAI,iBAAiB,CAC7B,CAAA;AACH,CAAC,CAAA;AAED,eAAe;IACb,MAAM,EAAE,KAAK;IACb,KAAK,EAAE,KAAK;IACZ,MAAM,EAAE,KAAK,CAAC,MAAM;IACpB,WAAW,EAAE,WAAW;IACxB,MAAM,EAAE,WAAW;IACnB,MAAM,EAAE,WAAW;IACnB,QAAQ,EAAE,aAAa;IACvB,IAAI,EAAE,UAAU;IAChB,SAAS,EAAE,UAAU,CAAC,WAAW;IACjC,WAAW,EAAE,WAAW;CACzB,CAAA","sourcesContent":["import CheckboxField from './Checkbox'\nimport SelectField from './Select'\nimport SelectInput from './SelectInput'\nimport DatePicker from '../../date-picker'\nimport Input from '../../input'\nimport InputNumber from '../../input-number'\n\nexport const defaultFieldWidth = '200px'\n\nexport const getFieldWidth = (type) => {\n if (type === 'dateRange') {\n return '340px'\n }\n\n return (\n {\n dateRange: '340px',\n selectInput: '320px',\n }[type] || defaultFieldWidth\n )\n}\n\nexport default {\n string: Input,\n input: Input,\n search: Input.Search,\n inputNumber: InputNumber,\n number: InputNumber,\n select: SelectField,\n checkbox: CheckboxField,\n date: DatePicker,\n dateRange: DatePicker.RangePicker,\n selectInput: SelectInput,\n}\n"]}
1
+ {"version":3,"file":"fieldsMap.js","sourceRoot":"","sources":["../../../src/query-form/Field/fieldsMap.js"],"names":[],"mappings":";;;;;;;;;;;AAAA,OAAO,aAAa,MAAM,YAAY,CAAA;AACtC,OAAO,WAAW,MAAM,UAAU,CAAA;AAClC,OAAO,WAAW,MAAM,eAAe,CAAA;AACvC,OAAO,UAAU,MAAM,mBAAmB,CAAA;AAC1C,OAAO,KAAK,MAAM,aAAa,CAAA;AAC/B,OAAO,WAAW,MAAM,oBAAoB,CAAA;AAE5C,MAAM,CAAC,MAAM,iBAAiB,GAAG,OAAO,CAAA;AAExC,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,IAAI,EAAE,EAAE;IACpC,IAAI,IAAI,KAAK,WAAW,EAAE;QACxB,OAAO,OAAO,CAAA;KACf;IAED,OAAO,CACL;QACE,SAAS,EAAE,OAAO;QAClB,WAAW,EAAE,OAAO;KACrB,CAAC,IAAI,CAAC,IAAI,iBAAiB,CAC7B,CAAA;AACH,CAAC,CAAA;AAED,SAAS,SAAS,CAAC,EAAkC;QAAlC,EAAE,QAAQ,EAAE,KAAK,OAAiB,EAAZ,UAAU,cAAhC,qBAAkC,CAAF;IACjD,OAAO,CACL,oBAAC,UAAU,CAAC,WAAW,oBACjB,UAAU,IACd,QAAQ,EACN,KAAK;YACH,CAAC,CAAC,CAAC,KAAK,EAAE,WAAW,EAAE,EAAE;gBACrB,IAAI,KAAK,CAAC,KAAK,EAAE,WAAW,CAAC,EAAE;oBAC7B,QAAQ,CAAC,KAAK,EAAE,WAAW,CAAC,CAAA;iBAC7B;YACH,CAAC;YACH,CAAC,CAAC,QAAQ,IAEd,CACH,CAAA;AACH,CAAC;AAED,eAAe;IACb,MAAM,EAAE,KAAK;IACb,KAAK,EAAE,KAAK;IACZ,MAAM,EAAE,KAAK,CAAC,MAAM;IACpB,WAAW,EAAE,WAAW;IACxB,MAAM,EAAE,WAAW;IACnB,MAAM,EAAE,WAAW;IACnB,QAAQ,EAAE,aAAa;IACvB,IAAI,EAAE,UAAU;IAChB,SAAS,EAAE,SAAS;IACpB,WAAW,EAAE,WAAW;CACzB,CAAA","sourcesContent":["import CheckboxField from './Checkbox'\nimport SelectField from './Select'\nimport SelectInput from './SelectInput'\nimport DatePicker from '../../date-picker'\nimport Input from '../../input'\nimport InputNumber from '../../input-number'\n\nexport const defaultFieldWidth = '200px'\n\nexport const getFieldWidth = (type) => {\n if (type === 'dateRange') {\n return '340px'\n }\n\n return (\n {\n dateRange: '340px',\n selectInput: '320px',\n }[type] || defaultFieldWidth\n )\n}\n\nfunction DataRange({ onChange, check, ...otherProps }) {\n return (\n <DatePicker.RangePicker\n {...otherProps}\n onChange={\n check\n ? (dates, dateStrings) => {\n if (check(dates, dateStrings)) {\n onChange(dates, dateStrings)\n }\n }\n : onChange\n }\n />\n )\n}\n\nexport default {\n string: Input,\n input: Input,\n search: Input.Search,\n inputNumber: InputNumber,\n number: InputNumber,\n select: SelectField,\n checkbox: CheckboxField,\n date: DatePicker,\n dateRange: DataRange,\n selectInput: SelectInput,\n}\n"]}
@@ -39,12 +39,12 @@ const ResizableTitle = props => {
39
39
  const MyComponent = (props, ref) => {
40
40
  const [columns, setColumns] = useState([]);
41
41
  const dataRef = useRef([]);
42
- const handleResize = index => _throttle((e, {
42
+ const handleResize = (index, minWidth) => _throttle((e, {
43
43
  size
44
44
  }) => {
45
45
  const updatedColumns = dataRef.current || [];
46
46
  setColumns(updatedColumns.map((column, idx) => idx === index ? Object.assign(Object.assign({}, column), {
47
- width: size.width
47
+ width: Math.max(size.width, minWidth || 40)
48
48
  }) : column));
49
49
  }, 25);
50
50
  const buildColumns = columns => columns === null || columns === void 0 ? void 0 : columns.map((column, index) => {
@@ -55,12 +55,16 @@ const MyComponent = (props, ref) => {
55
55
  return Object.assign(Object.assign({}, column), {
56
56
  onHeaderCell: column => {
57
57
  let width = column.width;
58
+ let minWidth = column.minWidth;
58
59
  if (typeof width === 'string' && !width.includes('%')) {
59
60
  width = Number(width.replace(/[^\d]/g, ''));
60
61
  }
62
+ if (minWidth && typeof minWidth === 'string' && !minWidth.includes('%')) {
63
+ minWidth = Number(minWidth.replace(/[^\d]/g, ''));
64
+ }
61
65
  return {
62
66
  width,
63
- onResize: handleResize(index)
67
+ onResize: handleResize(index, minWidth)
64
68
  };
65
69
  }
66
70
  });
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/table/resizableTable/index.tsx"],"names":[],"mappings":"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","sourcesContent":["import React, { useState, forwardRef, useRef, useEffect } from 'react'\nimport cn from 'classnames'\nimport { throttle } from 'lodash'\nimport { Resizable } from 'react-resizable'\nimport { Table } from '../table'\nimport './index.less'\n\nconst ResizableTitle = (\n props: React.HTMLAttributes<any> & {\n onResize: (e: React.SyntheticEvent<Element>, data: any) => void\n width: number\n }\n) => {\n const { onResize, width, ...restProps } = props\n\n if (!width) {\n return <th {...restProps} />\n }\n\n return (\n <Resizable\n width={width}\n height={0}\n handle={\n <span\n className=\"react-resizable-handle\"\n onClick={(e) => {\n e.stopPropagation()\n }}\n />\n }\n onResize={onResize}\n draggableOpts={{ enableUserSelectHack: false }}\n >\n <th {...restProps} />\n </Resizable>\n )\n}\n\ninterface ColumnType {\n width?: any\n}\n\ninterface MyComponentProps {\n columns?: ColumnType[]\n className?: string\n}\n\nconst MyComponent: React.ForwardRefRenderFunction<any, MyComponentProps> = (props, ref) => {\n const [columns, setColumns] = useState<ColumnType[]>([])\n const dataRef = useRef<ColumnType[]>([])\n\n const handleResize = (index: number) =>\n throttle((e, { size }) => {\n const updatedColumns = dataRef.current || []\n setColumns(\n updatedColumns.map((column, idx) =>\n idx === index ? { ...column, width: size.width } : column\n )\n )\n }, 25)\n\n const buildColumns = (columns: ColumnType[]) =>\n columns?.map((column, index) => {\n if (typeof column?.width === 'string' && column?.width?.includes('%')) {\n return column\n }\n return {\n ...column,\n onHeaderCell: (column: ColumnType) => {\n let width = column.width\n if (typeof width === 'string' && !width.includes('%')) {\n width = Number(width.replace(/[^\\d]/g, ''))\n }\n return { width, onResize: handleResize(index) }\n },\n }\n })\n\n useEffect(() => {\n if (Array.isArray(props?.columns)) {\n const curColumns = buildColumns(props.columns)\n setColumns(curColumns || [])\n }\n }, [props?.columns])\n\n useEffect(() => {\n dataRef.current = columns\n }, [columns])\n\n return (\n <Table\n {...props}\n {...(Array.isArray(props?.columns) ? { columns } : {})}\n className={cn('tnt-resizable-table', { [props.className!]: props.className })}\n components={{ header: { cell: ResizableTitle } }}\n />\n )\n}\n\nexport default forwardRef(MyComponent)\n"]}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/table/resizableTable/index.tsx"],"names":[],"mappings":"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","sourcesContent":["import React, { useState, forwardRef, useRef, useEffect } from 'react'\nimport cn from 'classnames'\nimport { throttle } from 'lodash'\nimport { Resizable } from 'react-resizable'\nimport { Table } from '../table'\nimport './index.less'\n\nconst ResizableTitle = (\n props: React.HTMLAttributes<any> & {\n onResize: (e: React.SyntheticEvent<Element>, data: any) => void\n width: number\n }\n) => {\n const { onResize, width, ...restProps } = props\n\n if (!width) {\n return <th {...restProps} />\n }\n\n return (\n <Resizable\n width={width}\n height={0}\n handle={\n <span\n className=\"react-resizable-handle\"\n onClick={(e) => {\n e.stopPropagation()\n }}\n />\n }\n onResize={onResize}\n draggableOpts={{ enableUserSelectHack: false }}\n >\n <th {...restProps} />\n </Resizable>\n )\n}\n\ninterface ColumnType {\n width?: any\n minWidth?: any\n}\n\ninterface MyComponentProps {\n columns?: ColumnType[]\n className?: string\n}\n\nconst MyComponent: React.ForwardRefRenderFunction<any, MyComponentProps> = (props, ref) => {\n const [columns, setColumns] = useState<ColumnType[]>([])\n const dataRef = useRef<ColumnType[]>([])\n\n const handleResize = (index: number, minWidth: number) =>\n throttle((e, { size }) => {\n const updatedColumns = dataRef.current || []\n setColumns(\n updatedColumns.map((column, idx) =>\n idx === index ? { ...column, width: Math.max(size.width, minWidth || 40) } : column\n )\n )\n }, 25)\n\n const buildColumns = (columns: ColumnType[]) =>\n columns?.map((column, index) => {\n if (typeof column?.width === 'string' && column?.width?.includes('%')) {\n return column\n }\n return {\n ...column,\n onHeaderCell: (column: ColumnType) => {\n let width = column.width\n let minWidth = column.minWidth\n if (typeof width === 'string' && !width.includes('%')) {\n width = Number(width.replace(/[^\\d]/g, ''))\n }\n\n if (minWidth && typeof minWidth === 'string' && !minWidth.includes('%')) {\n minWidth = Number(minWidth.replace(/[^\\d]/g, ''))\n }\n return { width, onResize: handleResize(index, minWidth) }\n },\n }\n })\n\n useEffect(() => {\n if (Array.isArray(props?.columns)) {\n const curColumns = buildColumns(props.columns)\n setColumns(curColumns || [])\n }\n }, [props?.columns])\n\n useEffect(() => {\n dataRef.current = columns\n }, [columns])\n\n return (\n <Table\n {...props}\n {...(Array.isArray(props?.columns) ? { columns } : {})}\n className={cn('tnt-resizable-table', { [props.className!]: props.className })}\n components={{ header: { cell: ResizableTitle } }}\n />\n )\n}\n\nexport default forwardRef(MyComponent)\n"]}
@@ -1764,10 +1764,3 @@
1764
1764
  .tntd-rc-select:not(.tntd-rc-select-customize-input) .tntd-rc-select-selector {
1765
1765
  border-radius: @border-radius-base;
1766
1766
  }
1767
-
1768
- .tntd-rc-select{
1769
- &:active{
1770
- border-color: @blue-5;
1771
- box-shadow: 0 0 0 2px fade(@blue-6, 20);
1772
- }
1773
- }
@@ -11,15 +11,50 @@ var __rest = this && this.__rest || function (s, e) {
11
11
  * @Author: 郑泳健
12
12
  * @Date: 2024-08-05 10:50:17
13
13
  * @LastEditors: 郑泳健
14
- * @LastEditTime: 2024-11-06 16:05:58
14
+ * @LastEditTime: 2024-11-08 18:26:37
15
15
  */
16
16
  import React, { useState, useRef, useMemo } from 'react';
17
17
  import RcSelect from '../tntd-rc-select';
18
+ import Icon from '../icon';
19
+ import Ellipsis from '../ellipsis';
18
20
  import TntdVirtualTree from '../tntd-virtual-tree';
19
21
  import { filterLastestNode, flatWithParents, getLableByValue, flatTreeData } from './utils.js';
20
22
  import './index.less';
23
+ const mapResult = {
24
+ 1: {
25
+ icon: 'crowd'
26
+ },
27
+ 2: {
28
+ icon: 'corporation'
29
+ }
30
+ };
31
+ const defaultDisplayRender = (selectValue, value, treeList, isOrg = false) => {
32
+ const item = Array.isArray(treeList) ? treeList.find(i => i.value === value) : {};
33
+ if (isOrg) {
34
+ const result = mapResult[item === null || item === void 0 ? void 0 : item.orgAttribute] || {};
35
+ return selectValue ? {
36
+ key: value,
37
+ label: selectValue ? React.createElement("div", null, React.createElement(Icon, {
38
+ type: result === null || result === void 0 ? void 0 : result['icon'],
39
+ style: {
40
+ marginRight: 4
41
+ }
42
+ }), React.createElement("div", {
43
+ style: {
44
+ display: 'inline-block',
45
+ width: '100%'
46
+ }
47
+ }, React.createElement(Ellipsis, {
48
+ title: selectValue,
49
+ widthLimit: 'calc(100% - 20px)'
50
+ }))) : undefined
51
+ } : undefined;
52
+ }
53
+ return selectValue || undefined;
54
+ };
21
55
  const TntdVirtualTreeSelect = _a => {
22
56
  var {
57
+ displayRender,
23
58
  indent = 24,
24
59
  itemHeight,
25
60
  isOrg = false,
@@ -41,7 +76,7 @@ const TntdVirtualTreeSelect = _a => {
41
76
  onTreeExpand,
42
77
  treeTitleRender
43
78
  } = _a,
44
- restProps = __rest(_a, ["indent", "itemHeight", "isOrg", "showPrefixIcon", "dropdownClassName", "value", "onChange", "treeData", "showSearch", "fieldNames", "dropdownMatchSelectWidth", "dropdownStyle", "showCheckedStrategy", "treeCheckable", "treeCheckStrictly", "treeDefaultExpandAll", "treeExpandedKeys", "onTreeCheck", "onTreeExpand", "treeTitleRender"]);
79
+ restProps = __rest(_a, ["displayRender", "indent", "itemHeight", "isOrg", "showPrefixIcon", "dropdownClassName", "value", "onChange", "treeData", "showSearch", "fieldNames", "dropdownMatchSelectWidth", "dropdownStyle", "showCheckedStrategy", "treeCheckable", "treeCheckStrictly", "treeDefaultExpandAll", "treeExpandedKeys", "onTreeCheck", "onTreeExpand", "treeTitleRender"]);
45
80
  const selectRef = useRef(null);
46
81
  const [filterKey, setFilterKey] = useState(undefined);
47
82
  const mergeDropdownStyle = useMemo(() => {
@@ -107,7 +142,7 @@ const TntdVirtualTreeSelect = _a => {
107
142
  };
108
143
  return React.createElement(RcSelect, Object.assign({
109
144
  ref: selectRef,
110
- value: selectValue,
145
+ value: displayRender ? displayRender(selectValue, value, treeList) : defaultDisplayRender(selectValue, value, treeList, isOrg),
111
146
  onChange: handleChange,
112
147
  showSearch: showSearch,
113
148
  onSearch: handleSearch
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/tntd-virtual-tree-select/index.jsx"],"names":[],"mappings":"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","sourcesContent":["/*\n * @Descripttion: 用select包裹虚拟树\n * @Author: 郑泳健\n * @Date: 2024-08-05 10:50:17\n * @LastEditors: 郑泳健\n * @LastEditTime: 2024-11-06 16:05:58\n */\nimport React, { useState, useRef, useMemo } from 'react';\nimport RcSelect from '../tntd-rc-select';\nimport TntdVirtualTree from '../tntd-virtual-tree';\nimport { filterLastestNode, flatWithParents, getLableByValue, flatTreeData } from './utils.js'\nimport './index.less';\n\nconst TntdVirtualTreeSelect = ({\n indent = 24,\n itemHeight,\n isOrg = false,\n showPrefixIcon= false,\n dropdownClassName,\n value,\n onChange,\n treeData,\n showSearch,\n fieldNames,\n dropdownMatchSelectWidth,\n dropdownStyle,\n showCheckedStrategy,\n treeCheckable,\n treeCheckStrictly,\n treeDefaultExpandAll,\n treeExpandedKeys,\n onTreeCheck,\n onTreeExpand,\n treeTitleRender,\n ...restProps\n}) => {\n const selectRef = useRef(null);\n const [filterKey, setFilterKey] = useState(undefined);\n\n const mergeDropdownStyle = useMemo(() => {\n return Array.isArray(treeData) && treeData.length ? dropdownStyle : {};\n }, [dropdownStyle, treeData]);\n\n const mergeDropdownMatchSelectWidth = useMemo(() => {\n return Array.isArray(treeData) && treeData.length ? dropdownMatchSelectWidth : true;\n }, [dropdownMatchSelectWidth, treeData]);\n\n const treeNodeWithParents = useMemo(() => {\n return flatWithParents(treeData, fieldNames)\n }, [treeData, fieldNames])\n\n const treeList = useMemo(() => {\n return flatTreeData(treeData, fieldNames)\n }, [treeData, fieldNames])\n\n\n const selectValue = useMemo(() => {\n if(!treeCheckable) {\n return getLableByValue(treeList, value)\n }\n\n if(Array.isArray(value)) {\n if(showCheckedStrategy === TntdVirtualTreeSelect.SHOW_ALL) {\n return value.map(i => getLableByValue(treeList, i))\n }\n // 过滤掉有子节点,\n const filterList = value.filter(i => {\n return filterLastestNode(treeNodeWithParents, i, value)\n })\n return filterList.map(i => getLableByValue(treeList, i))\n }\n return undefined\n\n }, [treeCheckable, treeNodeWithParents, value, showCheckedStrategy, treeList])\n\n const mergeMode = useMemo(() => {\n if(treeCheckable) {\n return {\n multiple: true,\n mode: 'tags'\n }\n }\n return {}\n }, [treeCheckable])\n\n const handleRender = ({ showSearch, ...rest }) => {\n return (\n <div className=\"virtual-tree-options\">\n <TntdVirtualTree {...rest} />\n </div>\n );\n };\n\n const handleChange = (val) => {\n onChange(val);\n };\n\n const handleSearch = (val) => {\n setFilterKey(val);\n };\n\n const handleSelect = (val) => {\n const item = Array.isArray(treeList) ? treeList.find(i => i.value === val) : {}\n onChange?.(val, item);\n if (selectRef.current) {\n // 主动触发下拉框消失\n selectRef.current?.blur();\n }\n };\n\n return (\n <RcSelect\n ref={selectRef}\n value={selectValue}\n onChange={handleChange}\n showSearch={showSearch}\n onSearch={handleSearch}\n {...mergeMode}\n {...restProps}\n dropdownClassName={`${dropdownClassName} tntd-virtual-tree-select-dropdown`}\n dropdownMatchSelectWidth={mergeDropdownMatchSelectWidth}\n dropdownStyle={{ maxHeight: '100vh', overflow: 'auto', ...mergeDropdownStyle }}\n dropdownRender={() => {\n let obj = {\n indent,\n itemHeight,\n isOrg,\n showPrefixIcon,\n height: restProps?.height || 300,\n treeData,\n filterKey,\n defaultExpandAll: treeDefaultExpandAll,\n expandedKeys: treeExpandedKeys,\n fieldNames,\n onExpand: onTreeExpand,\n titleRender: treeTitleRender,\n onSelect: handleSelect\n };\n if (treeCheckable) {\n obj = { ...obj, checkedKeys: value, checkStrictly: treeCheckStrictly, checkable: treeCheckable, onCheck: onTreeCheck };\n } else {\n obj = { ...obj, value };\n }\n return handleRender(obj);\n }}\n />\n );\n};\n\nTntdVirtualTreeSelect.SHOW_CHILD = 'SHOW_CHILD'\nTntdVirtualTreeSelect.SHOW_ALL = 'SHOW_ALL'\n\nexport default TntdVirtualTreeSelect;\n"]}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/tntd-virtual-tree-select/index.jsx"],"names":[],"mappings":"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","sourcesContent":["/*\n * @Descripttion: 用select包裹虚拟树\n * @Author: 郑泳健\n * @Date: 2024-08-05 10:50:17\n * @LastEditors: 郑泳健\n * @LastEditTime: 2024-11-08 18:26:37\n */\nimport React, { useState, useRef, useMemo } from 'react';\nimport RcSelect from '../tntd-rc-select';\nimport Icon from '../icon'\nimport Ellipsis from '../ellipsis'\nimport TntdVirtualTree from '../tntd-virtual-tree';\nimport { filterLastestNode, flatWithParents, getLableByValue, flatTreeData } from './utils.js'\nimport './index.less';\n\nconst mapResult = {\n 1: {\n icon: 'crowd'\n },\n 2: {\n icon: 'corporation'\n }\n};\n\nconst defaultDisplayRender = (selectValue, value, treeList, isOrg = false) => {\n const item = Array.isArray(treeList)? treeList.find(i => i.value === value) : {}\n if(isOrg) {\n const result = mapResult[item?.orgAttribute] || {};\n return selectValue ? {\n key: value,\n label: selectValue ? <div>\n <Icon type={result?.['icon']} style={{ marginRight: 4}} />\n <div style={{ display: 'inline-block', width: '100%' }}>\n <Ellipsis title={selectValue} widthLimit={'calc(100% - 20px)'} />\n </div>\n </div> : undefined\n } : undefined\n }\n return selectValue || undefined\n}\n\nconst TntdVirtualTreeSelect = ({\n displayRender,\n indent = 24,\n itemHeight,\n isOrg = false,\n showPrefixIcon= false,\n dropdownClassName,\n value,\n onChange,\n treeData,\n showSearch,\n fieldNames,\n dropdownMatchSelectWidth,\n dropdownStyle,\n showCheckedStrategy,\n treeCheckable,\n treeCheckStrictly,\n treeDefaultExpandAll,\n treeExpandedKeys,\n onTreeCheck,\n onTreeExpand,\n treeTitleRender,\n ...restProps\n}) => {\n const selectRef = useRef(null);\n const [filterKey, setFilterKey] = useState(undefined);\n\n const mergeDropdownStyle = useMemo(() => {\n return Array.isArray(treeData) && treeData.length ? dropdownStyle : {};\n }, [dropdownStyle, treeData]);\n\n const mergeDropdownMatchSelectWidth = useMemo(() => {\n return Array.isArray(treeData) && treeData.length ? dropdownMatchSelectWidth : true;\n }, [dropdownMatchSelectWidth, treeData]);\n\n const treeNodeWithParents = useMemo(() => {\n return flatWithParents(treeData, fieldNames)\n }, [treeData, fieldNames])\n\n const treeList = useMemo(() => {\n return flatTreeData(treeData, fieldNames)\n }, [treeData, fieldNames])\n\n\n const selectValue = useMemo(() => {\n if(!treeCheckable) {\n return getLableByValue(treeList, value)\n }\n\n if(Array.isArray(value)) {\n if(showCheckedStrategy === TntdVirtualTreeSelect.SHOW_ALL) {\n return value.map(i => getLableByValue(treeList, i))\n }\n // 过滤掉有子节点,\n const filterList = value.filter(i => {\n return filterLastestNode(treeNodeWithParents, i, value)\n })\n return filterList.map(i => getLableByValue(treeList, i))\n }\n return undefined\n\n }, [treeCheckable, treeNodeWithParents, value, showCheckedStrategy, treeList])\n\n const mergeMode = useMemo(() => {\n if(treeCheckable) {\n return {\n multiple: true,\n mode: 'tags'\n }\n }\n return {}\n }, [treeCheckable])\n\n const handleRender = ({ showSearch, ...rest }) => {\n return (\n <div className=\"virtual-tree-options\">\n <TntdVirtualTree {...rest} />\n </div>\n );\n };\n\n const handleChange = (val) => {\n onChange(val);\n };\n\n const handleSearch = (val) => {\n setFilterKey(val);\n };\n\n const handleSelect = (val) => {\n const item = Array.isArray(treeList) ? treeList.find(i => i.value === val) : {}\n onChange?.(val, item);\n if (selectRef.current) {\n // 主动触发下拉框消失\n selectRef.current?.blur();\n }\n };\n\n return (\n <RcSelect\n ref={selectRef}\n value={displayRender ? displayRender(selectValue, value, treeList) : defaultDisplayRender(selectValue, value, treeList, isOrg)}\n onChange={handleChange}\n showSearch={showSearch}\n onSearch={handleSearch}\n {...mergeMode}\n {...restProps}\n dropdownClassName={`${dropdownClassName} tntd-virtual-tree-select-dropdown`}\n dropdownMatchSelectWidth={mergeDropdownMatchSelectWidth}\n dropdownStyle={{ maxHeight: '100vh', overflow: 'auto', ...mergeDropdownStyle }}\n dropdownRender={() => {\n let obj = {\n indent,\n itemHeight,\n isOrg,\n showPrefixIcon,\n height: restProps?.height || 300,\n treeData,\n filterKey,\n defaultExpandAll: treeDefaultExpandAll,\n expandedKeys: treeExpandedKeys,\n fieldNames,\n onExpand: onTreeExpand,\n titleRender: treeTitleRender,\n onSelect: handleSelect\n };\n if (treeCheckable) {\n obj = { ...obj, checkedKeys: value, checkStrictly: treeCheckStrictly, checkable: treeCheckable, onCheck: onTreeCheck };\n } else {\n obj = { ...obj, value };\n }\n return handleRender(obj);\n }}\n />\n );\n};\n\nTntdVirtualTreeSelect.SHOW_CHILD = 'SHOW_CHILD'\nTntdVirtualTreeSelect.SHOW_ALL = 'SHOW_ALL'\n\nexport default TntdVirtualTreeSelect;\n"]}
@@ -326,7 +326,8 @@ var FieldPopover = function FieldPopover(_a, ref) {
326
326
  width: ((_a = fieldProps === null || fieldProps === void 0 ? void 0 : fieldProps.style) === null || _a === void 0 ? void 0 : _a.width) || '250px'
327
327
  }),
328
328
  close: close,
329
- onChange: onFieldChange
329
+ onChange: onFieldChange,
330
+ name: name
330
331
  }))));
331
332
  };
332
333
  return _react["default"].createElement(_popover["default"], Object.assign({
@@ -1 +1 @@
1
- {"version":3,"file":"FieldPopover.js","sourceRoot":"","sources":["../../../../src/query-form/Field/Composition/FieldPopover.js"],"names":[],"mappings":"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","sourcesContent":["import React, { useEffect, useState, forwardRef, useImperativeHandle } from 'react'\nimport { cloneDeep, filter, find } from 'lodash'\nimport { Empty } from '../../../empty'\nimport Popover from '../../../popover'\nimport Ellipsis from '../../../ellipsis'\nimport SelectOpt from './Select'\nimport { highlightSubstring, formatLabel, isInput } from './utils'\nimport fieldsMap from '../fieldsMap'\nimport './FieldPopover.less'\n\nconst FieldPopover = (\n {\n visible,\n setVisible,\n searchText,\n children,\n value,\n regex,\n fieldItems,\n propItem,\n setFieldItem,\n onChange,\n form,\n locale,\n clsPrefix,\n ...props\n },\n ref\n) => {\n const [searchTarget, setSearchTarget] = useState(undefined)\n const [popoverContent, setPopoverContent] = useState(false)\n\n const onPropsClick = (props) => {\n const { type = 'input', component } = props || {}\n const copyValue = cloneDeep(value)\n if (!copyValue?.find((v) => v.key === props.name)) {\n copyValue.push({\n key: props.name,\n value: type === 'array' ? [] : undefined,\n })\n }\n setFieldItem(props)\n if (isInput(type) && !component) {\n const target = copyValue.find((v) => v.key === props.name)\n onChange(target, true)\n close()\n return\n }\n setVisible(true)\n setPopoverContent(true)\n onChange(copyValue)\n }\n\n useImperativeHandle(ref, () => ({\n onPropsClick,\n }))\n\n const onSelectChange = (v, isMultiple) => {\n const propObj = v?.propItem || propItem || {}\n const { props: fieldProps } = propObj // 直接搜索拿v.xx的值\n const copyValue = cloneDeep(value || [])\n let index\n if (v?.propItem) {\n // 模糊搜索\n const _index = copyValue.findIndex((vv) => vv.key === v.propItem?.name)\n if (_index > -1) {\n index = _index\n } else {\n copyValue.push({\n key: v.propItem?.name,\n value: isMultiple ? [] : '',\n })\n index = copyValue.length - 1\n }\n setFieldItem(v.propItem)\n } else {\n // 选择值\n index = copyValue.findIndex((v) => v.key === propItem?.name)\n }\n\n if (isMultiple) {\n if (!copyValue[index]?.value?.length) {\n copyValue[index].value = [v?.value]\n } else {\n if (copyValue[index].value?.indexOf(v.value) > -1) {\n copyValue[index].value = copyValue[index].value.filter((val) => val !== v.value)\n } else {\n copyValue[index].value.push(v.value)\n }\n }\n // 如果是模糊搜索-展开多选项\n if (v?.propItem) {\n setFieldItem(v?.propItem)\n setVisible(true)\n setPopoverContent(true)\n }\n } else {\n copyValue[index].value = v?.value\n close()\n }\n onChange(copyValue, false, true)\n fieldProps?.onChange && fieldProps.onChange(copyValue[index].value)\n }\n\n const onFieldChange = (...args) => {\n const { type = 'input', component, props: fieldProps } = propItem || {}\n const copyValue = cloneDeep(value)\n const index = copyValue.findIndex((v) => v.key === propItem?.name)\n copyValue[index].value = args[0]\n if (['date', 'checkbox'].includes(type) || (type === 'dateRange' && args[1]?.[1])) {\n close()\n }\n onChange(copyValue, false, args[0] !== undefined, type !== 'selectInput')\n fieldProps?.onChange && fieldProps.onChange(copyValue[index].value)\n }\n\n const close = () => {\n setVisible(false)\n setTimeout(() => {\n setFieldItem()\n setPopoverContent(false)\n }, 1)\n }\n const handleVisibleChange = () => {\n if (!visible && !regex.test(searchText)) {\n setVisible(true)\n } else {\n close()\n }\n }\n\n useEffect(() => {\n let bool1 = false,\n bool2 = false\n\n if (searchText && !propItem) {\n fieldItems?.forEach((v) => {\n const { name, propsTitle, title, type = 'input', props } = v.props || {}\n const _propsTitle = propsTitle || title || name\n if (_propsTitle?.indexOf(searchText) > -1) {\n bool1 = true\n }\n const sOptions = type !== 'select' ? [] : props?.options || []\n const fieldNames = props?.fieldNames\n const target = sOptions?.find((item) => {\n const labelKey = fieldNames?.label || 'label'\n const label = item instanceof Object ? item[labelKey] : item + ''\n return (React.isValidElement(label) ? formatLabel(label) : label).indexOf(searchText) > -1\n })\n if (target) {\n bool2 = true\n }\n })\n setSearchTarget(!bool2 && !bool1 ? null : { propsTitle: bool1, propsValue: bool2 })\n } else {\n setSearchTarget(undefined)\n }\n }, [fieldItems, searchText, propItem])\n\n const renderFirstOptions = () => {\n const firstItems = searchText\n ? filter(fieldItems, (v) => {\n const { name, propsTitle, title } = v.props || {}\n const _propsTitle = propsTitle || title || name\n return _propsTitle?.indexOf(searchText) > -1\n })\n : fieldItems\n const secondItems = searchText\n ? filter(fieldItems, (v) => {\n const { type = 'input', props } = v.props || {}\n const { options, loadData, fieldNames } = props || {}\n return (\n type === 'select' &&\n !loadData &&\n !!find(options, (item) => {\n const labelKey = fieldNames?.label || 'label'\n const label = item instanceof Object ? item[labelKey] : item + ''\n const isReactDom = React.isValidElement(label)\n const _label = isReactDom ? formatLabel(label) : label\n return _label?.indexOf(searchText) > -1\n })\n )\n })\n : []\n return (\n <div>\n {firstItems.length > 0 && (\n <>\n {(!searchText || searchTarget?.propsTitle) && <label>{locale.propTitle}</label>}\n <ul className=\"ant-select-dropdown-menu\">\n {firstItems.map((v) => {\n const { name, propsTitle, title, type, props } = v.props || {}\n const _propsTitle = propsTitle || title || name\n return (\n <li\n className=\"ant-select-dropdown-menu-item\"\n key={name}\n value={name}\n onMouseDown={(e) => e.preventDefault()}\n onClick={() => {\n onPropsClick(v.props)\n }}\n >\n <Ellipsis\n widthLimit={220}\n title={\n searchText ? (\n <span\n dangerouslySetInnerHTML={{\n __html: highlightSubstring(_propsTitle, searchText),\n }}\n />\n ) : (\n _propsTitle\n )\n }\n />\n </li>\n )\n })}\n </ul>\n </>\n )}\n\n {/* 可以对下拉框值筛选 */}\n {secondItems.length > 0 && (\n <div>\n {searchTarget?.propsValue && <label>{locale.propValue}</label>}\n {fieldItems?.map((v) => {\n const { name, type = 'input', props } = v.props || {}\n const target = value?.find((v) => v.key === name)\n if (type === 'select') {\n return (\n <SelectOpt\n key={name}\n {...props}\n searchText={searchText}\n propItem={v.props}\n onChange={onSelectChange}\n value={target?.value}\n />\n )\n }\n return\n })}\n </div>\n )}\n {!firstItems.length && !secondItems.length && <Empty size=\"mini\" />}\n </div>\n )\n }\n\n const renderSecondOptions = () => {\n const {\n name,\n propsTitle,\n title,\n type = 'input',\n className,\n component,\n props: fieldProps,\n } = propItem || {}\n const target = value?.find((v) => v.key === name)\n const Field = component || fieldsMap[type] || (() => null)\n return (\n <div onClick={(e) => e.stopPropagation()} className={className}>\n <label>{propsTitle || title || name}</label>\n {type === 'select' ? (\n <SelectOpt\n {...fieldProps}\n searchText={searchText}\n propItem={propItem}\n onChange={onSelectChange}\n value={target?.value}\n />\n ) : (\n <div\n className={`${clsPrefix}-field-popover-content`}\n onClick={(e) => e.stopPropagation()}\n >\n <Field\n form={form}\n value={target?.value}\n {...fieldProps}\n style={{\n ...fieldProps?.style,\n width: fieldProps?.style?.width || '250px',\n }}\n close={close}\n onChange={onFieldChange}\n />\n </div>\n )}\n </div>\n )\n }\n\n return (\n <Popover\n trigger=\"click\"\n visible={visible}\n overlayClassName={`${clsPrefix}-field-popover`}\n content={!popoverContent ? renderFirstOptions() : renderSecondOptions()}\n onVisibleChange={handleVisibleChange}\n {...props}\n >\n {children}\n </Popover>\n )\n}\nexport default forwardRef(FieldPopover)\n"]}
1
+ {"version":3,"file":"FieldPopover.js","sourceRoot":"","sources":["../../../../src/query-form/Field/Composition/FieldPopover.js"],"names":[],"mappings":"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","sourcesContent":["import React, { useEffect, useState, forwardRef, useImperativeHandle } from 'react'\nimport { cloneDeep, filter, find } from 'lodash'\nimport { Empty } from '../../../empty'\nimport Popover from '../../../popover'\nimport Ellipsis from '../../../ellipsis'\nimport SelectOpt from './Select'\nimport { highlightSubstring, formatLabel, isInput } from './utils'\nimport fieldsMap from '../fieldsMap'\nimport './FieldPopover.less'\n\nconst FieldPopover = (\n {\n visible,\n setVisible,\n searchText,\n children,\n value,\n regex,\n fieldItems,\n propItem,\n setFieldItem,\n onChange,\n form,\n locale,\n clsPrefix,\n ...props\n },\n ref\n) => {\n const [searchTarget, setSearchTarget] = useState(undefined)\n const [popoverContent, setPopoverContent] = useState(false)\n\n const onPropsClick = (props) => {\n const { type = 'input', component } = props || {}\n const copyValue = cloneDeep(value)\n if (!copyValue?.find((v) => v.key === props.name)) {\n copyValue.push({\n key: props.name,\n value: type === 'array' ? [] : undefined,\n })\n }\n setFieldItem(props)\n if (isInput(type) && !component) {\n const target = copyValue.find((v) => v.key === props.name)\n onChange(target, true)\n close()\n return\n }\n setVisible(true)\n setPopoverContent(true)\n onChange(copyValue)\n }\n\n useImperativeHandle(ref, () => ({\n onPropsClick,\n }))\n\n const onSelectChange = (v, isMultiple) => {\n const propObj = v?.propItem || propItem || {}\n const { props: fieldProps } = propObj // 直接搜索拿v.xx的值\n const copyValue = cloneDeep(value || [])\n let index\n if (v?.propItem) {\n // 模糊搜索\n const _index = copyValue.findIndex((vv) => vv.key === v.propItem?.name)\n if (_index > -1) {\n index = _index\n } else {\n copyValue.push({\n key: v.propItem?.name,\n value: isMultiple ? [] : '',\n })\n index = copyValue.length - 1\n }\n setFieldItem(v.propItem)\n } else {\n // 选择值\n index = copyValue.findIndex((v) => v.key === propItem?.name)\n }\n\n if (isMultiple) {\n if (!copyValue[index]?.value?.length) {\n copyValue[index].value = [v?.value]\n } else {\n if (copyValue[index].value?.indexOf(v.value) > -1) {\n copyValue[index].value = copyValue[index].value.filter((val) => val !== v.value)\n } else {\n copyValue[index].value.push(v.value)\n }\n }\n // 如果是模糊搜索-展开多选项\n if (v?.propItem) {\n setFieldItem(v?.propItem)\n setVisible(true)\n setPopoverContent(true)\n }\n } else {\n copyValue[index].value = v?.value\n close()\n }\n onChange(copyValue, false, true)\n fieldProps?.onChange && fieldProps.onChange(copyValue[index].value)\n }\n\n const onFieldChange = (...args) => {\n const { type = 'input', component, props: fieldProps } = propItem || {}\n const copyValue = cloneDeep(value)\n const index = copyValue.findIndex((v) => v.key === propItem?.name)\n copyValue[index].value = args[0]\n if (['date', 'checkbox'].includes(type) || (type === 'dateRange' && args[1]?.[1])) {\n close()\n }\n onChange(copyValue, false, args[0] !== undefined, type !== 'selectInput')\n fieldProps?.onChange && fieldProps.onChange(copyValue[index].value)\n }\n\n const close = () => {\n setVisible(false)\n setTimeout(() => {\n setFieldItem()\n setPopoverContent(false)\n }, 1)\n }\n const handleVisibleChange = () => {\n if (!visible && !regex.test(searchText)) {\n setVisible(true)\n } else {\n close()\n }\n }\n\n useEffect(() => {\n let bool1 = false,\n bool2 = false\n\n if (searchText && !propItem) {\n fieldItems?.forEach((v) => {\n const { name, propsTitle, title, type = 'input', props } = v.props || {}\n const _propsTitle = propsTitle || title || name\n if (_propsTitle?.indexOf(searchText) > -1) {\n bool1 = true\n }\n const sOptions = type !== 'select' ? [] : props?.options || []\n const fieldNames = props?.fieldNames\n const target = sOptions?.find((item) => {\n const labelKey = fieldNames?.label || 'label'\n const label = item instanceof Object ? item[labelKey] : item + ''\n return (React.isValidElement(label) ? formatLabel(label) : label).indexOf(searchText) > -1\n })\n if (target) {\n bool2 = true\n }\n })\n setSearchTarget(!bool2 && !bool1 ? null : { propsTitle: bool1, propsValue: bool2 })\n } else {\n setSearchTarget(undefined)\n }\n }, [fieldItems, searchText, propItem])\n\n const renderFirstOptions = () => {\n const firstItems = searchText\n ? filter(fieldItems, (v) => {\n const { name, propsTitle, title } = v.props || {}\n const _propsTitle = propsTitle || title || name\n return _propsTitle?.indexOf(searchText) > -1\n })\n : fieldItems\n const secondItems = searchText\n ? filter(fieldItems, (v) => {\n const { type = 'input', props } = v.props || {}\n const { options, loadData, fieldNames } = props || {}\n return (\n type === 'select' &&\n !loadData &&\n !!find(options, (item) => {\n const labelKey = fieldNames?.label || 'label'\n const label = item instanceof Object ? item[labelKey] : item + ''\n const isReactDom = React.isValidElement(label)\n const _label = isReactDom ? formatLabel(label) : label\n return _label?.indexOf(searchText) > -1\n })\n )\n })\n : []\n return (\n <div>\n {firstItems.length > 0 && (\n <>\n {(!searchText || searchTarget?.propsTitle) && <label>{locale.propTitle}</label>}\n <ul className=\"ant-select-dropdown-menu\">\n {firstItems.map((v) => {\n const { name, propsTitle, title, type, props } = v.props || {}\n const _propsTitle = propsTitle || title || name\n return (\n <li\n className=\"ant-select-dropdown-menu-item\"\n key={name}\n value={name}\n onMouseDown={(e) => e.preventDefault()}\n onClick={() => {\n onPropsClick(v.props)\n }}\n >\n <Ellipsis\n widthLimit={220}\n title={\n searchText ? (\n <span\n dangerouslySetInnerHTML={{\n __html: highlightSubstring(_propsTitle, searchText),\n }}\n />\n ) : (\n _propsTitle\n )\n }\n />\n </li>\n )\n })}\n </ul>\n </>\n )}\n\n {/* 可以对下拉框值筛选 */}\n {secondItems.length > 0 && (\n <div>\n {searchTarget?.propsValue && <label>{locale.propValue}</label>}\n {fieldItems?.map((v) => {\n const { name, type = 'input', props } = v.props || {}\n const target = value?.find((v) => v.key === name)\n if (type === 'select') {\n return (\n <SelectOpt\n key={name}\n {...props}\n searchText={searchText}\n propItem={v.props}\n onChange={onSelectChange}\n value={target?.value}\n />\n )\n }\n return\n })}\n </div>\n )}\n {!firstItems.length && !secondItems.length && <Empty size=\"mini\" />}\n </div>\n )\n }\n\n const renderSecondOptions = () => {\n const {\n name,\n propsTitle,\n title,\n type = 'input',\n className,\n component,\n props: fieldProps,\n } = propItem || {}\n const target = value?.find((v) => v.key === name)\n const Field = component || fieldsMap[type] || (() => null)\n return (\n <div onClick={(e) => e.stopPropagation()} className={className}>\n <label>{propsTitle || title || name}</label>\n {type === 'select' ? (\n <SelectOpt\n {...fieldProps}\n searchText={searchText}\n propItem={propItem}\n onChange={onSelectChange}\n value={target?.value}\n />\n ) : (\n <div\n className={`${clsPrefix}-field-popover-content`}\n onClick={(e) => e.stopPropagation()}\n >\n <Field\n form={form}\n value={target?.value}\n {...fieldProps}\n style={{\n ...fieldProps?.style,\n width: fieldProps?.style?.width || '250px',\n }}\n close={close}\n onChange={onFieldChange}\n name={name}\n />\n </div>\n )}\n </div>\n )\n }\n\n return (\n <Popover\n trigger=\"click\"\n visible={visible}\n overlayClassName={`${clsPrefix}-field-popover`}\n content={!popoverContent ? renderFirstOptions() : renderSecondOptions()}\n onVisibleChange={handleVisibleChange}\n {...props}\n >\n {children}\n </Popover>\n )\n}\nexport default forwardRef(FieldPopover)\n"]}
@@ -8,5 +8,6 @@ export default function ValueTag({ item, fieldItems, locale, onDelete, value, on
8
8
  clsPrefix: any;
9
9
  form: any;
10
10
  handleTag: any;
11
- }): import("react").JSX.Element | null;
11
+ }): React.JSX.Element | null;
12
+ import React from "react";
12
13
  //# sourceMappingURL=ValueTag.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ValueTag.d.ts","sourceRoot":"","sources":["../../../../src/query-form/Field/Composition/ValueTag.js"],"names":[],"mappings":"AASA;;;;;;;;;;uCAoIC"}
1
+ {"version":3,"file":"ValueTag.d.ts","sourceRoot":"","sources":["../../../../src/query-form/Field/Composition/ValueTag.js"],"names":[],"mappings":"AASA;;;;;;;;;;6BAqIC"}
@@ -1,18 +1,21 @@
1
1
  "use strict";
2
2
 
3
+ function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
3
4
  Object.defineProperty(exports, "__esModule", {
4
5
  value: true
5
6
  });
6
7
  exports["default"] = ValueTag;
7
8
  var _cloneDeep2 = _interopRequireDefault(require("lodash/cloneDeep"));
8
9
  var _find2 = _interopRequireDefault(require("lodash/find"));
9
- var _react = require("react");
10
+ var _react = _interopRequireWildcard(require("react"));
10
11
  var _popover = _interopRequireDefault(require("../../../popover"));
11
12
  var _tag = _interopRequireDefault(require("../../../tag"));
12
13
  var _fieldsMap = _interopRequireDefault(require("../fieldsMap"));
13
14
  var _Select = _interopRequireDefault(require("./Select"));
14
15
  var _utils = require("./utils");
15
16
  require("./FieldPopover.less");
17
+ function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
18
+ function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { "default": e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n["default"] = e, t && t.set(e, n), n; }
16
19
  function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; }
17
20
  function _slicedToArray(r, e) { return _arrayWithHoles(r) || _iterableToArrayLimit(r, e) || _unsupportedIterableToArray(r, e) || _nonIterableRest(); }
18
21
  function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
@@ -97,21 +100,21 @@ function ValueTag(_ref) {
97
100
  var Field = component || _fieldsMap["default"][type] || function () {
98
101
  return null;
99
102
  };
100
- return React.createElement("div", {
103
+ return _react["default"].createElement("div", {
101
104
  onClick: function onClick(e) {
102
105
  return e.stopPropagation();
103
106
  },
104
107
  className: className
105
- }, React.createElement("label", null, propsTitle || title || name), type === 'select' ? React.createElement(_Select["default"], Object.assign({}, fieldProps, {
108
+ }, _react["default"].createElement("label", null, propsTitle || title || name), type === 'select' ? _react["default"].createElement(_Select["default"], Object.assign({}, fieldProps, {
106
109
  propItem: propItem,
107
110
  onChange: onSelectChange,
108
111
  value: item === null || item === void 0 ? void 0 : item.value
109
- })) : React.createElement("div", {
112
+ })) : _react["default"].createElement("div", {
110
113
  className: "".concat(clsPrefix, "-field-popover-content"),
111
114
  onClick: function onClick(e) {
112
115
  return e.stopPropagation();
113
116
  }
114
- }, React.createElement(Field, Object.assign({
117
+ }, _react["default"].createElement(Field, Object.assign({
115
118
  form: form,
116
119
  value: item === null || item === void 0 ? void 0 : item.value
117
120
  }, fieldProps, {
@@ -119,21 +122,22 @@ function ValueTag(_ref) {
119
122
  width: ((_a = fieldProps === null || fieldProps === void 0 ? void 0 : fieldProps.style) === null || _a === void 0 ? void 0 : _a.width) || '250px'
120
123
  }),
121
124
  close: close,
122
- onChange: onFieldChange
125
+ onChange: onFieldChange,
126
+ name: name
123
127
  }))));
124
128
  };
125
129
  var _isInput = (0, _utils.isInput)(type) && !component;
126
130
  if ((item === null || item === void 0 ? void 0 : item.value) === undefined) {
127
131
  return null;
128
132
  }
129
- return React.createElement(_popover["default"], {
133
+ return _react["default"].createElement(_popover["default"], {
130
134
  trigger: "click",
131
135
  visible: visible && !_isInput,
132
136
  onVisibleChange: handleVisibleChange,
133
137
  overlayClassName: "".concat(clsPrefix, "-field-popover"),
134
138
  content: renderSecondOptions(),
135
139
  placement: "bottomLeft"
136
- }, React.createElement(_tag["default"], {
140
+ }, _react["default"].createElement(_tag["default"], {
137
141
  closable: closable,
138
142
  onClick: function onClick(e) {
139
143
  e.preventDefault();
@@ -1 +1 @@
1
- {"version":3,"file":"ValueTag.js","sourceRoot":"","sources":["../../../../src/query-form/Field/Composition/ValueTag.js"],"names":[],"mappings":"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","sourcesContent":["import { useState } from 'react'\nimport { find, cloneDeep } from 'lodash'\nimport Popover from '../../../popover'\nimport Tag from '../../../tag'\nimport fieldsMap from '../fieldsMap'\nimport SelectOpt from './Select'\nimport { getLabel, isInput } from './utils'\nimport './FieldPopover.less'\n\nexport default function ValueTag({\n item,\n fieldItems,\n locale,\n onDelete,\n value,\n onChange,\n clsPrefix,\n form,\n handleTag,\n}) {\n const [visible, setVisible] = useState()\n\n const propItem = find(fieldItems, (it) => it.props.name === item.key)?.props || {}\n const {\n name,\n propsTitle,\n title,\n type = 'input',\n className,\n component,\n props: fieldProps,\n closable = true,\n } = propItem\n\n const handleVisibleChange = (visible) => {\n setVisible(visible)\n }\n\n const close = () => {\n setVisible(false)\n }\n\n const onFieldChange = (...args) => {\n const copyValue = cloneDeep(value)\n const index = copyValue.findIndex((v) => v.key === name)\n copyValue[index].value = args[0]\n if (['date', 'checkbox'].includes(type) || (type === 'dateRange' && args[1]?.[1])) {\n close()\n }\n onChange(copyValue, false, args[0] !== undefined, type !== 'selectInput')\n fieldProps?.onChange && fieldProps.onChange(copyValue[index].value)\n }\n\n const onSelectChange = (v, isMultiple) => {\n const copyValue = cloneDeep(value || [])\n let index = copyValue.findIndex((v) => v.key === name)\n if (isMultiple) {\n if (!copyValue[index]?.value?.length) {\n copyValue[index].value = [v?.value]\n } else {\n if (copyValue[index].value?.indexOf(v.value) > -1) {\n copyValue[index].value = copyValue[index].value.filter((val) => val !== v.value)\n } else {\n copyValue[index].value.push(v.value)\n }\n }\n } else {\n copyValue[index].value = v?.value\n close()\n }\n onChange(copyValue, false, true)\n fieldProps?.onChange && fieldProps.onChange(copyValue[index].value)\n }\n\n const renderSecondOptions = () => {\n const Field = component || fieldsMap[type] || (() => null)\n return (\n <div onClick={(e) => e.stopPropagation()} className={className}>\n <label>{propsTitle || title || name}</label>\n {type === 'select' ? (\n <SelectOpt\n {...fieldProps}\n propItem={propItem}\n onChange={onSelectChange}\n value={item?.value}\n />\n ) : (\n <div\n className={`${clsPrefix}-field-popover-content`}\n onClick={(e) => e.stopPropagation()}\n >\n <Field\n form={form}\n value={item?.value}\n {...fieldProps}\n style={{\n ...fieldProps?.style,\n width: fieldProps?.style?.width || '250px',\n }}\n close={close}\n onChange={onFieldChange}\n />\n </div>\n )}\n </div>\n )\n }\n\n const _isInput = isInput(type) && !component\n\n if (item?.value === undefined) {\n return null\n }\n\n return (\n <Popover\n trigger=\"click\"\n visible={visible && !_isInput}\n onVisibleChange={handleVisibleChange}\n overlayClassName={`${clsPrefix}-field-popover`}\n content={renderSecondOptions()}\n placement=\"bottomLeft\"\n >\n <Tag\n closable={closable}\n onClick={(e) => {\n e.preventDefault()\n e.stopPropagation()\n if (!_isInput) {\n setVisible(true)\n } else {\n handleTag(cloneDeep(item))\n }\n }}\n onClose={(e) => onDelete(item.key, e)}\n ellipsisOptions={{ widthLimit: '140px' }}\n >\n {getLabel(item, fieldItems, locale)}\n </Tag>\n </Popover>\n )\n}\n"]}
1
+ {"version":3,"file":"ValueTag.js","sourceRoot":"","sources":["../../../../src/query-form/Field/Composition/ValueTag.js"],"names":[],"mappings":"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","sourcesContent":["import React, { useState } from 'react'\nimport { find, cloneDeep } from 'lodash'\nimport Popover from '../../../popover'\nimport Tag from '../../../tag'\nimport fieldsMap from '../fieldsMap'\nimport SelectOpt from './Select'\nimport { getLabel, isInput } from './utils'\nimport './FieldPopover.less'\n\nexport default function ValueTag({\n item,\n fieldItems,\n locale,\n onDelete,\n value,\n onChange,\n clsPrefix,\n form,\n handleTag,\n}) {\n const [visible, setVisible] = useState()\n\n const propItem = find(fieldItems, (it) => it.props.name === item.key)?.props || {}\n const {\n name,\n propsTitle,\n title,\n type = 'input',\n className,\n component,\n props: fieldProps,\n closable = true,\n } = propItem\n\n const handleVisibleChange = (visible) => {\n setVisible(visible)\n }\n\n const close = () => {\n setVisible(false)\n }\n\n const onFieldChange = (...args) => {\n const copyValue = cloneDeep(value)\n const index = copyValue.findIndex((v) => v.key === name)\n copyValue[index].value = args[0]\n if (['date', 'checkbox'].includes(type) || (type === 'dateRange' && args[1]?.[1])) {\n close()\n }\n onChange(copyValue, false, args[0] !== undefined, type !== 'selectInput')\n fieldProps?.onChange && fieldProps.onChange(copyValue[index].value)\n }\n\n const onSelectChange = (v, isMultiple) => {\n const copyValue = cloneDeep(value || [])\n let index = copyValue.findIndex((v) => v.key === name)\n if (isMultiple) {\n if (!copyValue[index]?.value?.length) {\n copyValue[index].value = [v?.value]\n } else {\n if (copyValue[index].value?.indexOf(v.value) > -1) {\n copyValue[index].value = copyValue[index].value.filter((val) => val !== v.value)\n } else {\n copyValue[index].value.push(v.value)\n }\n }\n } else {\n copyValue[index].value = v?.value\n close()\n }\n onChange(copyValue, false, true)\n fieldProps?.onChange && fieldProps.onChange(copyValue[index].value)\n }\n\n const renderSecondOptions = () => {\n const Field = component || fieldsMap[type] || (() => null)\n return (\n <div onClick={(e) => e.stopPropagation()} className={className}>\n <label>{propsTitle || title || name}</label>\n {type === 'select' ? (\n <SelectOpt\n {...fieldProps}\n propItem={propItem}\n onChange={onSelectChange}\n value={item?.value}\n />\n ) : (\n <div\n className={`${clsPrefix}-field-popover-content`}\n onClick={(e) => e.stopPropagation()}\n >\n <Field\n form={form}\n value={item?.value}\n {...fieldProps}\n style={{\n ...fieldProps?.style,\n width: fieldProps?.style?.width || '250px',\n }}\n close={close}\n onChange={onFieldChange}\n name={name}\n />\n </div>\n )}\n </div>\n )\n }\n\n const _isInput = isInput(type) && !component\n\n if (item?.value === undefined) {\n return null\n }\n\n return (\n <Popover\n trigger=\"click\"\n visible={visible && !_isInput}\n onVisibleChange={handleVisibleChange}\n overlayClassName={`${clsPrefix}-field-popover`}\n content={renderSecondOptions()}\n placement=\"bottomLeft\"\n >\n <Tag\n closable={closable}\n onClick={(e) => {\n e.preventDefault()\n e.stopPropagation()\n if (!_isInput) {\n setVisible(true)\n } else {\n handleTag(cloneDeep(item))\n }\n }}\n onClose={(e) => onDelete(item.key, e)}\n ellipsisOptions={{ widthLimit: '140px' }}\n >\n {getLabel(item, fieldItems, locale)}\n </Tag>\n </Popover>\n )\n}\n"]}
@@ -81,7 +81,8 @@
81
81
  }
82
82
  &-clear {
83
83
  position: absolute;
84
- right: @margin-sm;
84
+ // right: @margin-sm;
85
+ right: calc(@margin-sm + 30px);
85
86
  top: 50%;
86
87
  transform: translateY(-50%);
87
88
  display: none;
@@ -11,7 +11,7 @@ declare namespace _default {
11
11
  export { SelectField as select };
12
12
  export { CheckboxField as checkbox };
13
13
  export { DatePicker as date };
14
- export const dateRange: import("react").ClassicComponentClass<import("antd/lib/date-picker/interface").RangePickerProps>;
14
+ export { DataRange as dateRange };
15
15
  export { SelectInput as selectInput };
16
16
  }
17
17
  export default _default;
@@ -20,5 +20,10 @@ import InputNumber from "../../input-number";
20
20
  import SelectField from "./Select";
21
21
  import CheckboxField from "./Checkbox";
22
22
  import DatePicker from "../../date-picker";
23
+ declare function DataRange({ onChange, check, ...otherProps }: {
24
+ [x: string]: any;
25
+ onChange: any;
26
+ check: any;
27
+ }): import("react").JSX.Element;
23
28
  import SelectInput from "./SelectInput";
24
29
  //# sourceMappingURL=fieldsMap.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"fieldsMap.d.ts","sourceRoot":"","sources":["../../../src/query-form/Field/fieldsMap.js"],"names":[],"mappings":"AAOA,wCAAwC;AAEjC,8CAWN"}
1
+ {"version":3,"file":"fieldsMap.d.ts","sourceRoot":"","sources":["../../../src/query-form/Field/fieldsMap.js"],"names":[],"mappings":"AAOA,wCAAwC;AAEjC,8CAWN;;;;;;;;;;;;;;;;;;;;;AAED;;;;gCAeC"}
@@ -11,6 +11,14 @@ var _datePicker = _interopRequireDefault(require("../../date-picker"));
11
11
  var _input = _interopRequireDefault(require("../../input"));
12
12
  var _inputNumber = _interopRequireDefault(require("../../input-number"));
13
13
  function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; }
14
+ var __rest = void 0 && (void 0).__rest || function (s, e) {
15
+ var t = {};
16
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];
17
+ if (s != null && typeof Object.getOwnPropertySymbols === "function") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
18
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];
19
+ }
20
+ return t;
21
+ };
14
22
  var defaultFieldWidth = exports.defaultFieldWidth = '200px';
15
23
  var getFieldWidth = exports.getFieldWidth = function getFieldWidth(type) {
16
24
  if (type === 'dateRange') {
@@ -21,6 +29,18 @@ var getFieldWidth = exports.getFieldWidth = function getFieldWidth(type) {
21
29
  selectInput: '320px'
22
30
  }[type] || defaultFieldWidth;
23
31
  };
32
+ function DataRange(_a) {
33
+ var onChange = _a.onChange,
34
+ check = _a.check,
35
+ otherProps = __rest(_a, ["onChange", "check"]);
36
+ return React.createElement(_datePicker["default"].RangePicker, Object.assign({}, otherProps, {
37
+ onChange: check ? function (dates, dateStrings) {
38
+ if (check(dates, dateStrings)) {
39
+ onChange(dates, dateStrings);
40
+ }
41
+ } : onChange
42
+ }));
43
+ }
24
44
  var _default = exports["default"] = {
25
45
  string: _input["default"],
26
46
  input: _input["default"],
@@ -30,6 +50,6 @@ var _default = exports["default"] = {
30
50
  select: _Select["default"],
31
51
  checkbox: _Checkbox["default"],
32
52
  date: _datePicker["default"],
33
- dateRange: _datePicker["default"].RangePicker,
53
+ dateRange: DataRange,
34
54
  selectInput: _SelectInput["default"]
35
55
  };
@@ -1 +1 @@
1
- {"version":3,"file":"fieldsMap.js","sourceRoot":"","sources":["../../../src/query-form/Field/fieldsMap.js"],"names":[],"mappings":";;;;;;AAAA,0DAAsC;AACtC,sDAAkC;AAClC,gEAAuC;AACvC,oEAA0C;AAC1C,wDAA+B;AAC/B,sEAA4C;AAE/B,QAAA,iBAAiB,GAAG,OAAO,CAAA;AAEjC,MAAM,aAAa,GAAG,CAAC,IAAI,EAAE,EAAE;IACpC,IAAI,IAAI,KAAK,WAAW,EAAE;QACxB,OAAO,OAAO,CAAA;KACf;IAED,OAAO,CACL;QACE,SAAS,EAAE,OAAO;QAClB,WAAW,EAAE,OAAO;KACrB,CAAC,IAAI,CAAC,IAAI,yBAAiB,CAC7B,CAAA;AACH,CAAC,CAAA;AAXY,QAAA,aAAa,iBAWzB;AAED,kBAAe;IACb,MAAM,EAAE,eAAK;IACb,KAAK,EAAE,eAAK;IACZ,MAAM,EAAE,eAAK,CAAC,MAAM;IACpB,WAAW,EAAE,sBAAW;IACxB,MAAM,EAAE,sBAAW;IACnB,MAAM,EAAE,gBAAW;IACnB,QAAQ,EAAE,kBAAa;IACvB,IAAI,EAAE,qBAAU;IAChB,SAAS,EAAE,qBAAU,CAAC,WAAW;IACjC,WAAW,EAAE,qBAAW;CACzB,CAAA","sourcesContent":["import CheckboxField from './Checkbox'\nimport SelectField from './Select'\nimport SelectInput from './SelectInput'\nimport DatePicker from '../../date-picker'\nimport Input from '../../input'\nimport InputNumber from '../../input-number'\n\nexport const defaultFieldWidth = '200px'\n\nexport const getFieldWidth = (type) => {\n if (type === 'dateRange') {\n return '340px'\n }\n\n return (\n {\n dateRange: '340px',\n selectInput: '320px',\n }[type] || defaultFieldWidth\n )\n}\n\nexport default {\n string: Input,\n input: Input,\n search: Input.Search,\n inputNumber: InputNumber,\n number: InputNumber,\n select: SelectField,\n checkbox: CheckboxField,\n date: DatePicker,\n dateRange: DatePicker.RangePicker,\n selectInput: SelectInput,\n}\n"]}
1
+ {"version":3,"file":"fieldsMap.js","sourceRoot":"","sources":["../../../src/query-form/Field/fieldsMap.js"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,0DAAsC;AACtC,sDAAkC;AAClC,gEAAuC;AACvC,oEAA0C;AAC1C,wDAA+B;AAC/B,sEAA4C;AAE/B,QAAA,iBAAiB,GAAG,OAAO,CAAA;AAEjC,MAAM,aAAa,GAAG,CAAC,IAAI,EAAE,EAAE;IACpC,IAAI,IAAI,KAAK,WAAW,EAAE;QACxB,OAAO,OAAO,CAAA;KACf;IAED,OAAO,CACL;QACE,SAAS,EAAE,OAAO;QAClB,WAAW,EAAE,OAAO;KACrB,CAAC,IAAI,CAAC,IAAI,yBAAiB,CAC7B,CAAA;AACH,CAAC,CAAA;AAXY,QAAA,aAAa,iBAWzB;AAED,SAAS,SAAS,CAAC,EAAkC;QAAlC,EAAE,QAAQ,EAAE,KAAK,OAAiB,EAAZ,UAAU,cAAhC,qBAAkC,CAAF;IACjD,OAAO,CACL,oBAAC,qBAAU,CAAC,WAAW,oBACjB,UAAU,IACd,QAAQ,EACN,KAAK;YACH,CAAC,CAAC,CAAC,KAAK,EAAE,WAAW,EAAE,EAAE;gBACrB,IAAI,KAAK,CAAC,KAAK,EAAE,WAAW,CAAC,EAAE;oBAC7B,QAAQ,CAAC,KAAK,EAAE,WAAW,CAAC,CAAA;iBAC7B;YACH,CAAC;YACH,CAAC,CAAC,QAAQ,IAEd,CACH,CAAA;AACH,CAAC;AAED,kBAAe;IACb,MAAM,EAAE,eAAK;IACb,KAAK,EAAE,eAAK;IACZ,MAAM,EAAE,eAAK,CAAC,MAAM;IACpB,WAAW,EAAE,sBAAW;IACxB,MAAM,EAAE,sBAAW;IACnB,MAAM,EAAE,gBAAW;IACnB,QAAQ,EAAE,kBAAa;IACvB,IAAI,EAAE,qBAAU;IAChB,SAAS,EAAE,SAAS;IACpB,WAAW,EAAE,qBAAW;CACzB,CAAA","sourcesContent":["import CheckboxField from './Checkbox'\nimport SelectField from './Select'\nimport SelectInput from './SelectInput'\nimport DatePicker from '../../date-picker'\nimport Input from '../../input'\nimport InputNumber from '../../input-number'\n\nexport const defaultFieldWidth = '200px'\n\nexport const getFieldWidth = (type) => {\n if (type === 'dateRange') {\n return '340px'\n }\n\n return (\n {\n dateRange: '340px',\n selectInput: '320px',\n }[type] || defaultFieldWidth\n )\n}\n\nfunction DataRange({ onChange, check, ...otherProps }) {\n return (\n <DatePicker.RangePicker\n {...otherProps}\n onChange={\n check\n ? (dates, dateStrings) => {\n if (check(dates, dateStrings)) {\n onChange(dates, dateStrings)\n }\n }\n : onChange\n }\n />\n )\n}\n\nexport default {\n string: Input,\n input: Input,\n search: Input.Search,\n inputNumber: InputNumber,\n number: InputNumber,\n select: SelectField,\n checkbox: CheckboxField,\n date: DatePicker,\n dateRange: DataRange,\n selectInput: SelectInput,\n}\n"]}
@@ -2,6 +2,7 @@ import React from 'react';
2
2
  import './index.less';
3
3
  interface ColumnType {
4
4
  width?: any;
5
+ minWidth?: any;
5
6
  }
6
7
  interface MyComponentProps {
7
8
  columns?: ColumnType[];
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/table/resizableTable/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAkD,MAAM,OAAO,CAAA;AAKtE,OAAO,cAAc,CAAA;AAkCrB,UAAU,UAAU;IAClB,KAAK,CAAC,EAAE,GAAG,CAAA;CACZ;AAED,UAAU,gBAAgB;IACxB,OAAO,CAAC,EAAE,UAAU,EAAE,CAAA;IACtB,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB;;AAsDD,wBAAsC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/table/resizableTable/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAkD,MAAM,OAAO,CAAA;AAKtE,OAAO,cAAc,CAAA;AAkCrB,UAAU,UAAU;IAClB,KAAK,CAAC,EAAE,GAAG,CAAA;IACX,QAAQ,CAAC,EAAE,GAAG,CAAA;CACf;AAED,UAAU,gBAAgB;IACxB,OAAO,CAAC,EAAE,UAAU,EAAE,CAAA;IACtB,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB;;AA2DD,wBAAsC"}
@@ -59,13 +59,13 @@ var MyComponent = function MyComponent(props, ref) {
59
59
  columns = _useState2[0],
60
60
  setColumns = _useState2[1];
61
61
  var dataRef = (0, _react.useRef)([]);
62
- var handleResize = function handleResize(index) {
62
+ var handleResize = function handleResize(index, minWidth) {
63
63
  return (0, _throttle2["default"])(function (e, _ref) {
64
64
  var size = _ref.size;
65
65
  var updatedColumns = dataRef.current || [];
66
66
  setColumns(updatedColumns.map(function (column, idx) {
67
67
  return idx === index ? Object.assign(Object.assign({}, column), {
68
- width: size.width
68
+ width: Math.max(size.width, minWidth || 40)
69
69
  }) : column;
70
70
  }));
71
71
  }, 25);
@@ -79,12 +79,16 @@ var MyComponent = function MyComponent(props, ref) {
79
79
  return Object.assign(Object.assign({}, column), {
80
80
  onHeaderCell: function onHeaderCell(column) {
81
81
  var width = column.width;
82
+ var minWidth = column.minWidth;
82
83
  if (typeof width === 'string' && !width.includes('%')) {
83
84
  width = Number(width.replace(/[^\d]/g, ''));
84
85
  }
86
+ if (minWidth && typeof minWidth === 'string' && !minWidth.includes('%')) {
87
+ minWidth = Number(minWidth.replace(/[^\d]/g, ''));
88
+ }
85
89
  return {
86
90
  width: width,
87
- onResize: handleResize(index)
91
+ onResize: handleResize(index, minWidth)
88
92
  };
89
93
  }
90
94
  });
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/table/resizableTable/index.tsx"],"names":[],"mappings":"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","sourcesContent":["import React, { useState, forwardRef, useRef, useEffect } from 'react'\nimport cn from 'classnames'\nimport { throttle } from 'lodash'\nimport { Resizable } from 'react-resizable'\nimport { Table } from '../table'\nimport './index.less'\n\nconst ResizableTitle = (\n props: React.HTMLAttributes<any> & {\n onResize: (e: React.SyntheticEvent<Element>, data: any) => void\n width: number\n }\n) => {\n const { onResize, width, ...restProps } = props\n\n if (!width) {\n return <th {...restProps} />\n }\n\n return (\n <Resizable\n width={width}\n height={0}\n handle={\n <span\n className=\"react-resizable-handle\"\n onClick={(e) => {\n e.stopPropagation()\n }}\n />\n }\n onResize={onResize}\n draggableOpts={{ enableUserSelectHack: false }}\n >\n <th {...restProps} />\n </Resizable>\n )\n}\n\ninterface ColumnType {\n width?: any\n}\n\ninterface MyComponentProps {\n columns?: ColumnType[]\n className?: string\n}\n\nconst MyComponent: React.ForwardRefRenderFunction<any, MyComponentProps> = (props, ref) => {\n const [columns, setColumns] = useState<ColumnType[]>([])\n const dataRef = useRef<ColumnType[]>([])\n\n const handleResize = (index: number) =>\n throttle((e, { size }) => {\n const updatedColumns = dataRef.current || []\n setColumns(\n updatedColumns.map((column, idx) =>\n idx === index ? { ...column, width: size.width } : column\n )\n )\n }, 25)\n\n const buildColumns = (columns: ColumnType[]) =>\n columns?.map((column, index) => {\n if (typeof column?.width === 'string' && column?.width?.includes('%')) {\n return column\n }\n return {\n ...column,\n onHeaderCell: (column: ColumnType) => {\n let width = column.width\n if (typeof width === 'string' && !width.includes('%')) {\n width = Number(width.replace(/[^\\d]/g, ''))\n }\n return { width, onResize: handleResize(index) }\n },\n }\n })\n\n useEffect(() => {\n if (Array.isArray(props?.columns)) {\n const curColumns = buildColumns(props.columns)\n setColumns(curColumns || [])\n }\n }, [props?.columns])\n\n useEffect(() => {\n dataRef.current = columns\n }, [columns])\n\n return (\n <Table\n {...props}\n {...(Array.isArray(props?.columns) ? { columns } : {})}\n className={cn('tnt-resizable-table', { [props.className!]: props.className })}\n components={{ header: { cell: ResizableTitle } }}\n />\n )\n}\n\nexport default forwardRef(MyComponent)\n"]}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/table/resizableTable/index.tsx"],"names":[],"mappings":"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","sourcesContent":["import React, { useState, forwardRef, useRef, useEffect } from 'react'\nimport cn from 'classnames'\nimport { throttle } from 'lodash'\nimport { Resizable } from 'react-resizable'\nimport { Table } from '../table'\nimport './index.less'\n\nconst ResizableTitle = (\n props: React.HTMLAttributes<any> & {\n onResize: (e: React.SyntheticEvent<Element>, data: any) => void\n width: number\n }\n) => {\n const { onResize, width, ...restProps } = props\n\n if (!width) {\n return <th {...restProps} />\n }\n\n return (\n <Resizable\n width={width}\n height={0}\n handle={\n <span\n className=\"react-resizable-handle\"\n onClick={(e) => {\n e.stopPropagation()\n }}\n />\n }\n onResize={onResize}\n draggableOpts={{ enableUserSelectHack: false }}\n >\n <th {...restProps} />\n </Resizable>\n )\n}\n\ninterface ColumnType {\n width?: any\n minWidth?: any\n}\n\ninterface MyComponentProps {\n columns?: ColumnType[]\n className?: string\n}\n\nconst MyComponent: React.ForwardRefRenderFunction<any, MyComponentProps> = (props, ref) => {\n const [columns, setColumns] = useState<ColumnType[]>([])\n const dataRef = useRef<ColumnType[]>([])\n\n const handleResize = (index: number, minWidth: number) =>\n throttle((e, { size }) => {\n const updatedColumns = dataRef.current || []\n setColumns(\n updatedColumns.map((column, idx) =>\n idx === index ? { ...column, width: Math.max(size.width, minWidth || 40) } : column\n )\n )\n }, 25)\n\n const buildColumns = (columns: ColumnType[]) =>\n columns?.map((column, index) => {\n if (typeof column?.width === 'string' && column?.width?.includes('%')) {\n return column\n }\n return {\n ...column,\n onHeaderCell: (column: ColumnType) => {\n let width = column.width\n let minWidth = column.minWidth\n if (typeof width === 'string' && !width.includes('%')) {\n width = Number(width.replace(/[^\\d]/g, ''))\n }\n\n if (minWidth && typeof minWidth === 'string' && !minWidth.includes('%')) {\n minWidth = Number(minWidth.replace(/[^\\d]/g, ''))\n }\n return { width, onResize: handleResize(index, minWidth) }\n },\n }\n })\n\n useEffect(() => {\n if (Array.isArray(props?.columns)) {\n const curColumns = buildColumns(props.columns)\n setColumns(curColumns || [])\n }\n }, [props?.columns])\n\n useEffect(() => {\n dataRef.current = columns\n }, [columns])\n\n return (\n <Table\n {...props}\n {...(Array.isArray(props?.columns) ? { columns } : {})}\n className={cn('tnt-resizable-table', { [props.className!]: props.className })}\n components={{ header: { cell: ResizableTitle } }}\n />\n )\n}\n\nexport default forwardRef(MyComponent)\n"]}
@@ -1764,10 +1764,3 @@
1764
1764
  .tntd-rc-select:not(.tntd-rc-select-customize-input) .tntd-rc-select-selector {
1765
1765
  border-radius: @border-radius-base;
1766
1766
  }
1767
-
1768
- .tntd-rc-select{
1769
- &:active{
1770
- border-color: @blue-5;
1771
- box-shadow: 0 0 0 2px fade(@blue-6, 20);
1772
- }
1773
- }
@@ -1,6 +1,7 @@
1
1
  export default TntdVirtualTreeSelect;
2
- declare function TntdVirtualTreeSelect({ indent, itemHeight, isOrg, showPrefixIcon, dropdownClassName, value, onChange, treeData, showSearch, fieldNames, dropdownMatchSelectWidth, dropdownStyle, showCheckedStrategy, treeCheckable, treeCheckStrictly, treeDefaultExpandAll, treeExpandedKeys, onTreeCheck, onTreeExpand, treeTitleRender, ...restProps }: {
2
+ declare function TntdVirtualTreeSelect({ displayRender, indent, itemHeight, isOrg, showPrefixIcon, dropdownClassName, value, onChange, treeData, showSearch, fieldNames, dropdownMatchSelectWidth, dropdownStyle, showCheckedStrategy, treeCheckable, treeCheckStrictly, treeDefaultExpandAll, treeExpandedKeys, onTreeCheck, onTreeExpand, treeTitleRender, ...restProps }: {
3
3
  [x: string]: any;
4
+ displayRender: any;
4
5
  indent?: number | undefined;
5
6
  itemHeight: any;
6
7
  isOrg?: boolean | undefined;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/tntd-virtual-tree-select/index.jsx"],"names":[],"mappings":";AAaA;;;;;;;;;;;;;;;;;;;;;;sBAsIC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/tntd-virtual-tree-select/index.jsx"],"names":[],"mappings":";AAyCA;;;;;;;;;;;;;;;;;;;;;;;sBAuIC"}
@@ -7,6 +7,8 @@ Object.defineProperty(exports, "__esModule", {
7
7
  exports["default"] = void 0;
8
8
  var _react = _interopRequireWildcard(require("react"));
9
9
  var _tntdRcSelect = _interopRequireDefault(require("../tntd-rc-select"));
10
+ var _icon = _interopRequireDefault(require("../icon"));
11
+ var _ellipsis = _interopRequireDefault(require("../ellipsis"));
10
12
  var _tntdVirtualTree = _interopRequireDefault(require("../tntd-virtual-tree"));
11
13
  var _utils = require("./utils.js");
12
14
  require("./index.less");
@@ -32,11 +34,47 @@ var __rest = void 0 && (void 0).__rest || function (s, e) {
32
34
  * @Author: 郑泳健
33
35
  * @Date: 2024-08-05 10:50:17
34
36
  * @LastEditors: 郑泳健
35
- * @LastEditTime: 2024-11-06 16:05:58
37
+ * @LastEditTime: 2024-11-08 18:26:37
36
38
  */
37
39
 
40
+ var mapResult = {
41
+ 1: {
42
+ icon: 'crowd'
43
+ },
44
+ 2: {
45
+ icon: 'corporation'
46
+ }
47
+ };
48
+ var defaultDisplayRender = function defaultDisplayRender(selectValue, value, treeList) {
49
+ var isOrg = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : false;
50
+ var item = Array.isArray(treeList) ? treeList.find(function (i) {
51
+ return i.value === value;
52
+ }) : {};
53
+ if (isOrg) {
54
+ var result = mapResult[item === null || item === void 0 ? void 0 : item.orgAttribute] || {};
55
+ return selectValue ? {
56
+ key: value,
57
+ label: selectValue ? _react["default"].createElement("div", null, _react["default"].createElement(_icon["default"], {
58
+ type: result === null || result === void 0 ? void 0 : result['icon'],
59
+ style: {
60
+ marginRight: 4
61
+ }
62
+ }), _react["default"].createElement("div", {
63
+ style: {
64
+ display: 'inline-block',
65
+ width: '100%'
66
+ }
67
+ }, _react["default"].createElement(_ellipsis["default"], {
68
+ title: selectValue,
69
+ widthLimit: 'calc(100% - 20px)'
70
+ }))) : undefined
71
+ } : undefined;
72
+ }
73
+ return selectValue || undefined;
74
+ };
38
75
  var _TntdVirtualTreeSelect = function TntdVirtualTreeSelect(_a) {
39
- var _a$indent = _a.indent,
76
+ var displayRender = _a.displayRender,
77
+ _a$indent = _a.indent,
40
78
  indent = _a$indent === void 0 ? 24 : _a$indent,
41
79
  itemHeight = _a.itemHeight,
42
80
  _a$isOrg = _a.isOrg,
@@ -59,7 +97,7 @@ var _TntdVirtualTreeSelect = function TntdVirtualTreeSelect(_a) {
59
97
  onTreeCheck = _a.onTreeCheck,
60
98
  onTreeExpand = _a.onTreeExpand,
61
99
  treeTitleRender = _a.treeTitleRender,
62
- restProps = __rest(_a, ["indent", "itemHeight", "isOrg", "showPrefixIcon", "dropdownClassName", "value", "onChange", "treeData", "showSearch", "fieldNames", "dropdownMatchSelectWidth", "dropdownStyle", "showCheckedStrategy", "treeCheckable", "treeCheckStrictly", "treeDefaultExpandAll", "treeExpandedKeys", "onTreeCheck", "onTreeExpand", "treeTitleRender"]);
100
+ restProps = __rest(_a, ["displayRender", "indent", "itemHeight", "isOrg", "showPrefixIcon", "dropdownClassName", "value", "onChange", "treeData", "showSearch", "fieldNames", "dropdownMatchSelectWidth", "dropdownStyle", "showCheckedStrategy", "treeCheckable", "treeCheckStrictly", "treeDefaultExpandAll", "treeExpandedKeys", "onTreeCheck", "onTreeExpand", "treeTitleRender"]);
63
101
  var selectRef = (0, _react.useRef)(null);
64
102
  var _useState = (0, _react.useState)(undefined),
65
103
  _useState2 = _slicedToArray(_useState, 2),
@@ -132,7 +170,7 @@ var _TntdVirtualTreeSelect = function TntdVirtualTreeSelect(_a) {
132
170
  };
133
171
  return _react["default"].createElement(_tntdRcSelect["default"], Object.assign({
134
172
  ref: selectRef,
135
- value: selectValue,
173
+ value: displayRender ? displayRender(selectValue, value, treeList) : defaultDisplayRender(selectValue, value, treeList, isOrg),
136
174
  onChange: handleChange,
137
175
  showSearch: showSearch,
138
176
  onSearch: handleSearch
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/tntd-virtual-tree-select/index.jsx"],"names":[],"mappings":"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","sourcesContent":["/*\n * @Descripttion: 用select包裹虚拟树\n * @Author: 郑泳健\n * @Date: 2024-08-05 10:50:17\n * @LastEditors: 郑泳健\n * @LastEditTime: 2024-11-06 16:05:58\n */\nimport React, { useState, useRef, useMemo } from 'react';\nimport RcSelect from '../tntd-rc-select';\nimport TntdVirtualTree from '../tntd-virtual-tree';\nimport { filterLastestNode, flatWithParents, getLableByValue, flatTreeData } from './utils.js'\nimport './index.less';\n\nconst TntdVirtualTreeSelect = ({\n indent = 24,\n itemHeight,\n isOrg = false,\n showPrefixIcon= false,\n dropdownClassName,\n value,\n onChange,\n treeData,\n showSearch,\n fieldNames,\n dropdownMatchSelectWidth,\n dropdownStyle,\n showCheckedStrategy,\n treeCheckable,\n treeCheckStrictly,\n treeDefaultExpandAll,\n treeExpandedKeys,\n onTreeCheck,\n onTreeExpand,\n treeTitleRender,\n ...restProps\n}) => {\n const selectRef = useRef(null);\n const [filterKey, setFilterKey] = useState(undefined);\n\n const mergeDropdownStyle = useMemo(() => {\n return Array.isArray(treeData) && treeData.length ? dropdownStyle : {};\n }, [dropdownStyle, treeData]);\n\n const mergeDropdownMatchSelectWidth = useMemo(() => {\n return Array.isArray(treeData) && treeData.length ? dropdownMatchSelectWidth : true;\n }, [dropdownMatchSelectWidth, treeData]);\n\n const treeNodeWithParents = useMemo(() => {\n return flatWithParents(treeData, fieldNames)\n }, [treeData, fieldNames])\n\n const treeList = useMemo(() => {\n return flatTreeData(treeData, fieldNames)\n }, [treeData, fieldNames])\n\n\n const selectValue = useMemo(() => {\n if(!treeCheckable) {\n return getLableByValue(treeList, value)\n }\n\n if(Array.isArray(value)) {\n if(showCheckedStrategy === TntdVirtualTreeSelect.SHOW_ALL) {\n return value.map(i => getLableByValue(treeList, i))\n }\n // 过滤掉有子节点,\n const filterList = value.filter(i => {\n return filterLastestNode(treeNodeWithParents, i, value)\n })\n return filterList.map(i => getLableByValue(treeList, i))\n }\n return undefined\n\n }, [treeCheckable, treeNodeWithParents, value, showCheckedStrategy, treeList])\n\n const mergeMode = useMemo(() => {\n if(treeCheckable) {\n return {\n multiple: true,\n mode: 'tags'\n }\n }\n return {}\n }, [treeCheckable])\n\n const handleRender = ({ showSearch, ...rest }) => {\n return (\n <div className=\"virtual-tree-options\">\n <TntdVirtualTree {...rest} />\n </div>\n );\n };\n\n const handleChange = (val) => {\n onChange(val);\n };\n\n const handleSearch = (val) => {\n setFilterKey(val);\n };\n\n const handleSelect = (val) => {\n const item = Array.isArray(treeList) ? treeList.find(i => i.value === val) : {}\n onChange?.(val, item);\n if (selectRef.current) {\n // 主动触发下拉框消失\n selectRef.current?.blur();\n }\n };\n\n return (\n <RcSelect\n ref={selectRef}\n value={selectValue}\n onChange={handleChange}\n showSearch={showSearch}\n onSearch={handleSearch}\n {...mergeMode}\n {...restProps}\n dropdownClassName={`${dropdownClassName} tntd-virtual-tree-select-dropdown`}\n dropdownMatchSelectWidth={mergeDropdownMatchSelectWidth}\n dropdownStyle={{ maxHeight: '100vh', overflow: 'auto', ...mergeDropdownStyle }}\n dropdownRender={() => {\n let obj = {\n indent,\n itemHeight,\n isOrg,\n showPrefixIcon,\n height: restProps?.height || 300,\n treeData,\n filterKey,\n defaultExpandAll: treeDefaultExpandAll,\n expandedKeys: treeExpandedKeys,\n fieldNames,\n onExpand: onTreeExpand,\n titleRender: treeTitleRender,\n onSelect: handleSelect\n };\n if (treeCheckable) {\n obj = { ...obj, checkedKeys: value, checkStrictly: treeCheckStrictly, checkable: treeCheckable, onCheck: onTreeCheck };\n } else {\n obj = { ...obj, value };\n }\n return handleRender(obj);\n }}\n />\n );\n};\n\nTntdVirtualTreeSelect.SHOW_CHILD = 'SHOW_CHILD'\nTntdVirtualTreeSelect.SHOW_ALL = 'SHOW_ALL'\n\nexport default TntdVirtualTreeSelect;\n"]}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/tntd-virtual-tree-select/index.jsx"],"names":[],"mappings":"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","sourcesContent":["/*\n * @Descripttion: 用select包裹虚拟树\n * @Author: 郑泳健\n * @Date: 2024-08-05 10:50:17\n * @LastEditors: 郑泳健\n * @LastEditTime: 2024-11-08 18:26:37\n */\nimport React, { useState, useRef, useMemo } from 'react';\nimport RcSelect from '../tntd-rc-select';\nimport Icon from '../icon'\nimport Ellipsis from '../ellipsis'\nimport TntdVirtualTree from '../tntd-virtual-tree';\nimport { filterLastestNode, flatWithParents, getLableByValue, flatTreeData } from './utils.js'\nimport './index.less';\n\nconst mapResult = {\n 1: {\n icon: 'crowd'\n },\n 2: {\n icon: 'corporation'\n }\n};\n\nconst defaultDisplayRender = (selectValue, value, treeList, isOrg = false) => {\n const item = Array.isArray(treeList)? treeList.find(i => i.value === value) : {}\n if(isOrg) {\n const result = mapResult[item?.orgAttribute] || {};\n return selectValue ? {\n key: value,\n label: selectValue ? <div>\n <Icon type={result?.['icon']} style={{ marginRight: 4}} />\n <div style={{ display: 'inline-block', width: '100%' }}>\n <Ellipsis title={selectValue} widthLimit={'calc(100% - 20px)'} />\n </div>\n </div> : undefined\n } : undefined\n }\n return selectValue || undefined\n}\n\nconst TntdVirtualTreeSelect = ({\n displayRender,\n indent = 24,\n itemHeight,\n isOrg = false,\n showPrefixIcon= false,\n dropdownClassName,\n value,\n onChange,\n treeData,\n showSearch,\n fieldNames,\n dropdownMatchSelectWidth,\n dropdownStyle,\n showCheckedStrategy,\n treeCheckable,\n treeCheckStrictly,\n treeDefaultExpandAll,\n treeExpandedKeys,\n onTreeCheck,\n onTreeExpand,\n treeTitleRender,\n ...restProps\n}) => {\n const selectRef = useRef(null);\n const [filterKey, setFilterKey] = useState(undefined);\n\n const mergeDropdownStyle = useMemo(() => {\n return Array.isArray(treeData) && treeData.length ? dropdownStyle : {};\n }, [dropdownStyle, treeData]);\n\n const mergeDropdownMatchSelectWidth = useMemo(() => {\n return Array.isArray(treeData) && treeData.length ? dropdownMatchSelectWidth : true;\n }, [dropdownMatchSelectWidth, treeData]);\n\n const treeNodeWithParents = useMemo(() => {\n return flatWithParents(treeData, fieldNames)\n }, [treeData, fieldNames])\n\n const treeList = useMemo(() => {\n return flatTreeData(treeData, fieldNames)\n }, [treeData, fieldNames])\n\n\n const selectValue = useMemo(() => {\n if(!treeCheckable) {\n return getLableByValue(treeList, value)\n }\n\n if(Array.isArray(value)) {\n if(showCheckedStrategy === TntdVirtualTreeSelect.SHOW_ALL) {\n return value.map(i => getLableByValue(treeList, i))\n }\n // 过滤掉有子节点,\n const filterList = value.filter(i => {\n return filterLastestNode(treeNodeWithParents, i, value)\n })\n return filterList.map(i => getLableByValue(treeList, i))\n }\n return undefined\n\n }, [treeCheckable, treeNodeWithParents, value, showCheckedStrategy, treeList])\n\n const mergeMode = useMemo(() => {\n if(treeCheckable) {\n return {\n multiple: true,\n mode: 'tags'\n }\n }\n return {}\n }, [treeCheckable])\n\n const handleRender = ({ showSearch, ...rest }) => {\n return (\n <div className=\"virtual-tree-options\">\n <TntdVirtualTree {...rest} />\n </div>\n );\n };\n\n const handleChange = (val) => {\n onChange(val);\n };\n\n const handleSearch = (val) => {\n setFilterKey(val);\n };\n\n const handleSelect = (val) => {\n const item = Array.isArray(treeList) ? treeList.find(i => i.value === val) : {}\n onChange?.(val, item);\n if (selectRef.current) {\n // 主动触发下拉框消失\n selectRef.current?.blur();\n }\n };\n\n return (\n <RcSelect\n ref={selectRef}\n value={displayRender ? displayRender(selectValue, value, treeList) : defaultDisplayRender(selectValue, value, treeList, isOrg)}\n onChange={handleChange}\n showSearch={showSearch}\n onSearch={handleSearch}\n {...mergeMode}\n {...restProps}\n dropdownClassName={`${dropdownClassName} tntd-virtual-tree-select-dropdown`}\n dropdownMatchSelectWidth={mergeDropdownMatchSelectWidth}\n dropdownStyle={{ maxHeight: '100vh', overflow: 'auto', ...mergeDropdownStyle }}\n dropdownRender={() => {\n let obj = {\n indent,\n itemHeight,\n isOrg,\n showPrefixIcon,\n height: restProps?.height || 300,\n treeData,\n filterKey,\n defaultExpandAll: treeDefaultExpandAll,\n expandedKeys: treeExpandedKeys,\n fieldNames,\n onExpand: onTreeExpand,\n titleRender: treeTitleRender,\n onSelect: handleSelect\n };\n if (treeCheckable) {\n obj = { ...obj, checkedKeys: value, checkStrictly: treeCheckStrictly, checkable: treeCheckable, onCheck: onTreeCheck };\n } else {\n obj = { ...obj, value };\n }\n return handleRender(obj);\n }}\n />\n );\n};\n\nTntdVirtualTreeSelect.SHOW_CHILD = 'SHOW_CHILD'\nTntdVirtualTreeSelect.SHOW_ALL = 'SHOW_ALL'\n\nexport default TntdVirtualTreeSelect;\n"]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "tntd",
3
- "version": "2.8.25",
3
+ "version": "2.8.27",
4
4
  "license": "MIT",
5
5
  "scripts": {
6
6
  "start": "heft start --storybook",