tntd 3.0.7 → 3.0.9

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 (91) hide show
  1. package/es/array-input/index.js +96 -9
  2. package/es/array-input/index.js.map +1 -1
  3. package/es/array-input/index.less +5 -0
  4. package/es/form/style/index.less +6 -0
  5. package/es/index.js +1 -0
  6. package/es/index.js.map +1 -1
  7. package/es/input/input.js +12 -8
  8. package/es/input/input.js.map +1 -1
  9. package/es/input-number/inputNumber.js +8 -3
  10. package/es/input-number/inputNumber.js.map +1 -1
  11. package/es/modal/index.less +1 -4
  12. package/es/modal/modal.less +18 -0
  13. package/es/prev-locale.js +10 -2
  14. package/es/prev-locale.js.map +1 -1
  15. package/es/query-list-scene/index.less +6 -0
  16. package/es/select/select.js +3 -1
  17. package/es/select/select.js.map +1 -1
  18. package/es/select/style/index.less +1 -1
  19. package/es/svg-components/illustration-offline.js +138 -84
  20. package/es/svg-components/illustration-offline.js.map +1 -1
  21. package/es/title/index.less +1 -1
  22. package/es/tntd-cascader/rc-cascader/Cascader.js +5 -1
  23. package/es/tntd-cascader/rc-cascader/Cascader.js.map +1 -1
  24. package/es/tntd-rc-select/index.js +4 -1
  25. package/es/tntd-rc-select/index.js.map +1 -1
  26. package/es/tntd-rc-select/style/index.less +4 -0
  27. package/es/tntd-select/index.js +3 -1
  28. package/es/tntd-select/index.js.map +1 -1
  29. package/es/tntd-virtual-tree-select/VirtualTree.js +125 -0
  30. package/es/tntd-virtual-tree-select/VirtualTree.js.map +1 -0
  31. package/es/tntd-virtual-tree-select/index.js +63 -0
  32. package/es/tntd-virtual-tree-select/index.js.map +1 -0
  33. package/es/tntd-virtual-tree-select/index.less +3 -0
  34. package/es/tntd-virtual-tree-select/tree.less +29 -0
  35. package/es/tntd-virtual-tree-select/utils.js +135 -0
  36. package/es/tntd-virtual-tree-select/utils.js.map +1 -0
  37. package/lib/array-input/index.d.ts.map +1 -1
  38. package/lib/array-input/index.js +107 -13
  39. package/lib/array-input/index.js.map +1 -1
  40. package/lib/array-input/index.less +5 -0
  41. package/lib/form/style/index.less +6 -0
  42. package/lib/index.d.ts +1 -0
  43. package/lib/index.d.ts.map +1 -1
  44. package/lib/index.js +7 -0
  45. package/lib/index.js.map +1 -1
  46. package/lib/input/input.d.ts.map +1 -1
  47. package/lib/input/input.js +14 -6
  48. package/lib/input/input.js.map +1 -1
  49. package/lib/input-number/inputNumber.d.ts.map +1 -1
  50. package/lib/input-number/inputNumber.js +8 -2
  51. package/lib/input-number/inputNumber.js.map +1 -1
  52. package/lib/modal/index.less +1 -4
  53. package/lib/modal/modal.less +18 -0
  54. package/lib/prev-locale.d.ts +6 -0
  55. package/lib/prev-locale.d.ts.map +1 -1
  56. package/lib/prev-locale.js +10 -2
  57. package/lib/prev-locale.js.map +1 -1
  58. package/lib/query-list-scene/index.less +6 -0
  59. package/lib/select/select.d.ts.map +1 -1
  60. package/lib/select/select.js +4 -1
  61. package/lib/select/select.js.map +1 -1
  62. package/lib/select/style/index.less +1 -1
  63. package/lib/svg-components/illustration-offline.d.ts.map +1 -1
  64. package/lib/svg-components/illustration-offline.js +138 -84
  65. package/lib/svg-components/illustration-offline.js.map +1 -1
  66. package/lib/title/index.less +1 -1
  67. package/lib/tntd-cascader/rc-cascader/Cascader.d.ts.map +1 -1
  68. package/lib/tntd-cascader/rc-cascader/Cascader.js +5 -1
  69. package/lib/tntd-cascader/rc-cascader/Cascader.js.map +1 -1
  70. package/lib/tntd-rc-select/index.d.ts.map +1 -1
  71. package/lib/tntd-rc-select/index.js +4 -1
  72. package/lib/tntd-rc-select/index.js.map +1 -1
  73. package/lib/tntd-rc-select/style/index.less +4 -0
  74. package/lib/tntd-select/index.d.ts.map +1 -1
  75. package/lib/tntd-select/index.js +4 -1
  76. package/lib/tntd-select/index.js.map +1 -1
  77. package/lib/tntd-virtual-tree-select/VirtualTree.d.ts +13 -0
  78. package/lib/tntd-virtual-tree-select/VirtualTree.d.ts.map +1 -0
  79. package/lib/tntd-virtual-tree-select/VirtualTree.js +155 -0
  80. package/lib/tntd-virtual-tree-select/VirtualTree.js.map +1 -0
  81. package/lib/tntd-virtual-tree-select/index.d.ts +16 -0
  82. package/lib/tntd-virtual-tree-select/index.d.ts.map +1 -0
  83. package/lib/tntd-virtual-tree-select/index.js +74 -0
  84. package/lib/tntd-virtual-tree-select/index.js.map +1 -0
  85. package/lib/tntd-virtual-tree-select/index.less +3 -0
  86. package/lib/tntd-virtual-tree-select/tree.less +29 -0
  87. package/lib/tntd-virtual-tree-select/utils.d.ts +10 -0
  88. package/lib/tntd-virtual-tree-select/utils.d.ts.map +1 -0
  89. package/lib/tntd-virtual-tree-select/utils.js +167 -0
  90. package/lib/tntd-virtual-tree-select/utils.js.map +1 -0
  91. package/package.json +7 -2
@@ -1 +1 @@
1
- {"version":3,"file":"Cascader.js","sourceRoot":"","sources":["../../../src/tntd-cascader/rc-cascader/Cascader.tsx"],"names":[],"mappings":"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","sourcesContent":["// @ts-nocheck\nimport type { BaseSelectProps, BaseSelectPropsWithoutPrivate, BaseSelectRef } from 'rc-select'\nimport { BaseSelect } from 'rc-select'\nimport type { DisplayValueType, Placement } from 'rc-select/lib/BaseSelect'\nimport useId from 'rc-select/lib/hooks/useId'\nimport { conductCheck } from 'rc-tree/lib/utils/conductUtil'\nimport useMergedState from 'rc-util/lib/hooks/useMergedState'\nimport * as React from 'react'\nimport CascaderContext from './context'\nimport useDisplayValues from './hooks/useDisplayValues'\nimport useEntities from './hooks/useEntities'\nimport useMissingValues from './hooks/useMissingValues'\nimport useRefFunc from './hooks/useRefFunc'\nimport useSearchConfig from './hooks/useSearchConfig'\nimport useSearchOptions from './hooks/useSearchOptions'\nimport OptionList from './OptionList'\nimport { fillFieldNames, SHOW_CHILD, SHOW_PARENT, toPathKey, toPathKeys } from './utils/commonUtil'\nimport { formatStrategyValues, toPathOptions } from './utils/treeUtil'\nimport warningProps, { warningNullOptions } from './utils/warningPropsUtil'\nimport { RenderItem } from './context'\nimport './index.less'\n\nexport interface ShowSearchType<OptionType extends BaseOptionType = DefaultOptionType> {\n filter?: (inputValue: string, options: OptionType[], fieldNames: FieldNames) => boolean\n render?: (\n inputValue: string,\n path: OptionType[],\n prefixCls: string,\n fieldNames: FieldNames\n ) => React.ReactNode\n sort?: (a: OptionType[], b: OptionType[], inputValue: string, fieldNames: FieldNames) => number\n matchInputWidth?: boolean\n limit?: number | false\n}\n\nexport interface FieldNames {\n label?: string\n value?: string\n children?: string\n}\n\nexport interface InternalFieldNames extends Required<FieldNames> {\n key: string\n}\n\nexport type SingleValueType = (string | number)[]\n\nexport type ValueType = SingleValueType | SingleValueType[]\nexport type ShowCheckedStrategy = typeof SHOW_PARENT | typeof SHOW_CHILD\n\nexport interface BaseOptionType {\n disabled?: boolean\n [name: string]: any\n}\nexport interface DefaultOptionType extends BaseOptionType {\n label: React.ReactNode\n value?: string | number | null\n children?: DefaultOptionType[]\n}\n\ninterface BaseCascaderProps<OptionType extends BaseOptionType = DefaultOptionType>\n extends Omit<\n BaseSelectPropsWithoutPrivate,\n 'tokenSeparators' | 'labelInValue' | 'mode' | 'showSearch'\n > {\n // MISC\n id?: string\n prefixCls?: string\n fieldNames?: FieldNames\n children?: React.ReactElement\n\n // Value\n value?: ValueType\n defaultValue?: ValueType\n changeOnSelect?: boolean\n displayRender?: (label: string[], selectedOptions?: OptionType[]) => React.ReactNode\n checkable?: boolean | React.ReactNode\n showCheckedStrategy?: ShowCheckedStrategy\n\n // Search\n showSearch?: boolean | ShowSearchType<OptionType>\n searchValue?: string\n onSearch?: (value: string) => void\n\n // Trigger\n expandTrigger?: 'hover' | 'click'\n\n // Options\n options?: OptionType[]\n /** @private Internal usage. Do not use in your production. */\n dropdownPrefixCls?: string\n loadData?: (selectOptions: OptionType[]) => void\n\n // Open\n /** @deprecated Use `open` instead */\n popupVisible?: boolean\n\n /** @deprecated Use `dropdownClassName` instead */\n popupClassName?: string\n dropdownClassName?: string\n dropdownMenuColumnStyle?: React.CSSProperties\n\n /** @deprecated Use `placement` instead */\n popupPlacement?: Placement\n placement?: Placement\n\n /** @deprecated Use `onDropdownVisibleChange` instead */\n onPopupVisibleChange?: (open: boolean) => void\n onDropdownVisibleChange?: (open: boolean) => void\n renderItem?: (item: RenderItem) => React.ReactNode\n\n // Icon\n expandIcon?: React.ReactNode\n loadingIcon?: React.ReactNode\n}\n\ntype OnSingleChange<OptionType> = (value: SingleValueType, selectOptions: OptionType[]) => void\ntype OnMultipleChange<OptionType> = (\n value: SingleValueType[],\n selectOptions: OptionType[][]\n) => void\n\nexport interface SingleCascaderProps<OptionType extends BaseOptionType = DefaultOptionType>\n extends BaseCascaderProps<OptionType> {\n checkable?: false\n\n onChange?: OnSingleChange<OptionType>\n}\n\nexport interface MultipleCascaderProps<OptionType extends BaseOptionType = DefaultOptionType>\n extends BaseCascaderProps<OptionType> {\n checkable: true | React.ReactNode\n\n onChange?: OnMultipleChange<OptionType>\n}\n\nexport type CascaderProps<OptionType extends BaseOptionType = DefaultOptionType> =\n | SingleCascaderProps<OptionType>\n | MultipleCascaderProps<OptionType>\n\nexport type InternalCascaderProps<OptionType extends BaseOptionType = DefaultOptionType> = Omit<\n SingleCascaderProps<OptionType> | MultipleCascaderProps<OptionType>,\n 'onChange'\n> & {\n onChange?: (\n value: SingleValueType | SingleValueType[],\n selectOptions: OptionType[] | OptionType[][]\n ) => void\n}\n\nexport type CascaderRef = Omit<BaseSelectRef, 'scrollTo'>\n\nfunction isMultipleValue(value: ValueType): value is SingleValueType[] {\n return Array.isArray(value) && Array.isArray(value[0])\n}\n\nfunction toRawValues(value: ValueType): SingleValueType[] {\n if (!value) {\n return []\n }\n\n if (isMultipleValue(value)) {\n return value\n }\n\n return (value.length === 0 ? [] : [value]).map((val) => (Array.isArray(val) ? val : [val]))\n}\n\nconst Cascader = React.forwardRef<CascaderRef, InternalCascaderProps>((props, ref) => {\n const {\n // MISC\n id,\n prefixCls = 'rc-cascader',\n fieldNames,\n\n // Value\n defaultValue,\n value,\n changeOnSelect,\n onChange,\n displayRender,\n checkable,\n\n // Search\n searchValue,\n onSearch,\n showSearch,\n\n // Trigger\n expandTrigger,\n\n // Options\n options,\n dropdownPrefixCls,\n loadData,\n\n // Open\n popupVisible,\n open,\n\n popupClassName,\n dropdownClassName,\n dropdownMenuColumnStyle,\n\n popupPlacement,\n placement,\n\n onDropdownVisibleChange,\n onPopupVisibleChange,\n renderItem,\n\n // Icon\n expandIcon = '>',\n loadingIcon,\n\n // Children\n children,\n dropdownMatchSelectWidth = false,\n showCheckedStrategy = SHOW_PARENT,\n ...restProps\n } = props\n\n const mergedId = useId(id)\n const multiple = !!checkable\n const [dropdownVisible, setDropdownVisible] = React.useState(false)\n\n // =========================== Values ===========================\n const [rawValues, setRawValues] = useMergedState<ValueType, SingleValueType[]>(defaultValue, {\n value,\n postState: toRawValues,\n })\n\n // ========================= FieldNames =========================\n const mergedFieldNames = React.useMemo(\n () => fillFieldNames(fieldNames),\n /* eslint-disable react-hooks/exhaustive-deps */\n [JSON.stringify(fieldNames)]\n /* eslint-enable react-hooks/exhaustive-deps */\n )\n\n // =========================== Option ===========================\n const mergedOptions = React.useMemo(() => options || [], [options])\n\n // Only used in multiple mode, this fn will not call in single mode\n const getPathKeyEntities = useEntities(mergedOptions, mergedFieldNames)\n\n /** Convert path key back to value format */\n const getValueByKeyPath = React.useCallback(\n (pathKeys: React.Key[]): SingleValueType[] => {\n const keyPathEntities = getPathKeyEntities()\n\n return pathKeys.map((pathKey) => {\n const { nodes } = keyPathEntities[pathKey]\n\n return nodes.map((node) => node[mergedFieldNames.value])\n })\n },\n [getPathKeyEntities, mergedFieldNames]\n )\n\n // =========================== Search ===========================\n const [mergedSearchValue, setSearchValue] = useMergedState('', {\n value: searchValue,\n postState: (search) => search || '',\n })\n\n const onInternalSearch: BaseSelectProps['onSearch'] = (searchText, info) => {\n setSearchValue(searchText)\n\n if (info.source !== 'blur' && onSearch) {\n onSearch(searchText)\n }\n }\n\n const [mergedShowSearch, searchConfig] = useSearchConfig(showSearch)\n\n const searchOptions = useSearchOptions(\n mergedSearchValue,\n mergedOptions,\n mergedFieldNames,\n dropdownPrefixCls || prefixCls,\n searchConfig,\n changeOnSelect\n )\n\n // =========================== Values ===========================\n const getMissingValues = useMissingValues(mergedOptions, mergedFieldNames)\n\n // Fill `rawValues` with checked conduction values\n const [checkedValues, halfCheckedValues, missingCheckedValues] = React.useMemo(() => {\n const [existValues, missingValues] = getMissingValues(rawValues)\n\n if (!multiple || !rawValues.length) {\n return [existValues, [], missingValues]\n }\n\n const keyPathValues = toPathKeys(existValues)\n const keyPathEntities = getPathKeyEntities()\n\n const { checkedKeys, halfCheckedKeys } = conductCheck(keyPathValues, true, keyPathEntities)\n\n // Convert key back to value cells\n return [getValueByKeyPath(checkedKeys), getValueByKeyPath(halfCheckedKeys), missingValues]\n }, [multiple, rawValues, getPathKeyEntities, getValueByKeyPath, getMissingValues])\n\n const deDuplicatedValues = React.useMemo(() => {\n const checkedKeys = toPathKeys(checkedValues)\n const deduplicateKeys = formatStrategyValues(\n checkedKeys,\n getPathKeyEntities,\n showCheckedStrategy\n )\n\n return [...missingCheckedValues, ...getValueByKeyPath(deduplicateKeys)]\n }, [\n checkedValues,\n getPathKeyEntities,\n getValueByKeyPath,\n missingCheckedValues,\n showCheckedStrategy,\n ])\n\n const displayValues = useDisplayValues(\n deDuplicatedValues,\n mergedOptions,\n mergedFieldNames,\n multiple,\n displayRender\n )\n\n // =========================== Change ===========================\n const triggerChange = useRefFunc((nextValues: ValueType) => {\n setRawValues(nextValues)\n\n // Save perf if no need trigger event\n if (onChange) {\n const nextRawValues = toRawValues(nextValues)\n\n const valueOptions = nextRawValues.map((valueCells) =>\n toPathOptions(valueCells, mergedOptions, mergedFieldNames).map(\n (valueOpt) => valueOpt.option\n )\n )\n\n const triggerValues = multiple ? nextRawValues : nextRawValues[0]\n const triggerOptions = multiple ? valueOptions : valueOptions[0]\n\n onChange(triggerValues, triggerOptions)\n }\n })\n\n // =========================== Select ===========================\n const onInternalSelect = useRefFunc((valuePath: SingleValueType) => {\n setSearchValue('')\n if (!multiple) {\n triggerChange(valuePath)\n } else {\n // Prepare conduct required info\n const pathKey = toPathKey(valuePath)\n const checkedPathKeys = toPathKeys(checkedValues)\n const halfCheckedPathKeys = toPathKeys(halfCheckedValues)\n\n const existInChecked = checkedPathKeys.includes(pathKey)\n const existInMissing = missingCheckedValues.some(\n (valueCells) => toPathKey(valueCells) === pathKey\n )\n\n // Do update\n let nextCheckedValues = checkedValues\n let nextMissingValues = missingCheckedValues\n\n if (existInMissing && !existInChecked) {\n // Missing value only do filter\n nextMissingValues = missingCheckedValues.filter(\n (valueCells) => toPathKey(valueCells) !== pathKey\n )\n } else {\n // Update checked key first\n const nextRawCheckedKeys = existInChecked\n ? checkedPathKeys.filter((key) => key !== pathKey)\n : [...checkedPathKeys, pathKey]\n\n const pathKeyEntities = getPathKeyEntities()\n\n // Conduction by selected or not\n let checkedKeys: React.Key[]\n if (existInChecked) {\n ;({ checkedKeys } = conductCheck(\n nextRawCheckedKeys,\n { checked: false, halfCheckedKeys: halfCheckedPathKeys },\n pathKeyEntities\n ))\n } else {\n ;({ checkedKeys } = conductCheck(nextRawCheckedKeys, true, pathKeyEntities))\n }\n\n // Roll up to parent level keys\n const deDuplicatedKeys = formatStrategyValues(\n checkedKeys,\n getPathKeyEntities,\n showCheckedStrategy\n )\n nextCheckedValues = getValueByKeyPath(deDuplicatedKeys)\n }\n\n triggerChange([...nextMissingValues, ...nextCheckedValues])\n }\n })\n\n // Display Value change logic\n const onDisplayValuesChange: BaseSelectProps['onDisplayValuesChange'] = (_, info) => {\n if (info.type === 'clear') {\n triggerChange([])\n return\n }\n\n // Cascader do not support `add` type. Only support `remove`\n const { valueCells } = info.values[0] as DisplayValueType & { valueCells: SingleValueType }\n onInternalSelect(valueCells)\n }\n\n // ============================ Open ============================\n const mergedOpen = open !== undefined ? open : popupVisible\n\n const mergedDropdownClassName = dropdownClassName || popupClassName\n\n const mergedPlacement = placement || popupPlacement\n\n const onInternalDropdownVisibleChange = (nextVisible: boolean) => {\n onDropdownVisibleChange?.(nextVisible)\n onPopupVisibleChange?.(nextVisible)\n setDropdownVisible(nextVisible)\n }\n\n // ========================== Warning ===========================\n if (process.env.NODE_ENV !== 'production') {\n warningProps(props)\n warningNullOptions(mergedOptions, mergedFieldNames)\n }\n\n // ========================== Context ===========================\n const cascaderContext = React.useMemo(\n () => ({\n options: mergedOptions,\n fieldNames: mergedFieldNames,\n values: checkedValues,\n halfValues: halfCheckedValues,\n changeOnSelect,\n onSelect: onInternalSelect,\n checkable,\n searchOptions,\n dropdownPrefixCls,\n loadData,\n expandTrigger,\n expandIcon,\n loadingIcon,\n dropdownMenuColumnStyle,\n renderItem,\n dropdownVisible,\n }),\n [\n mergedOptions,\n mergedFieldNames,\n checkedValues,\n halfCheckedValues,\n changeOnSelect,\n onInternalSelect,\n checkable,\n searchOptions,\n dropdownPrefixCls,\n loadData,\n expandTrigger,\n expandIcon,\n loadingIcon,\n dropdownMenuColumnStyle,\n renderItem,\n dropdownVisible,\n ]\n )\n\n // ==============================================================\n // == Render ==\n // ==============================================================\n const emptyOptions = !(mergedSearchValue ? searchOptions : mergedOptions).length\n\n const dropdownStyle: React.CSSProperties =\n // Search to match width\n (mergedSearchValue && searchConfig.matchInputWidth) ||\n // Empty keep the width\n emptyOptions\n ? {}\n : {\n minWidth: 'auto',\n }\n return (\n <CascaderContext.Provider value={cascaderContext}>\n <BaseSelect\n {...restProps}\n // MISC\n ref={ref as any}\n id={mergedId}\n prefixCls={prefixCls}\n dropdownMatchSelectWidth={dropdownMatchSelectWidth}\n dropdownStyle={dropdownStyle}\n // Value\n displayValues={displayValues}\n onDisplayValuesChange={onDisplayValuesChange}\n mode={multiple ? 'multiple' : undefined}\n // Search\n searchValue={mergedSearchValue}\n onSearch={onInternalSearch}\n showSearch={mergedShowSearch}\n // Options\n OptionList={OptionList}\n emptyOptions={emptyOptions}\n // Open\n open={mergedOpen}\n dropdownClassName={mergedDropdownClassName}\n placement={mergedPlacement}\n onDropdownVisibleChange={onInternalDropdownVisibleChange}\n // Children\n getRawInputElement={() => children}\n />\n </CascaderContext.Provider>\n )\n}) as unknown as (<OptionType extends BaseOptionType | DefaultOptionType = DefaultOptionType>(\n props: React.PropsWithChildren<CascaderProps<OptionType>> & {\n ref?: React.Ref<BaseSelectRef>\n }\n) => React.ReactElement) & {\n displayName?: string\n SHOW_PARENT: typeof SHOW_PARENT\n SHOW_CHILD: typeof SHOW_CHILD\n}\n\nif (process.env.NODE_ENV !== 'production') {\n Cascader.displayName = 'Cascader'\n}\n\nCascader.SHOW_PARENT = SHOW_PARENT\nCascader.SHOW_CHILD = SHOW_CHILD\nexport default Cascader\n"]}
1
+ {"version":3,"file":"Cascader.js","sourceRoot":"","sources":["../../../src/tntd-cascader/rc-cascader/Cascader.tsx"],"names":[],"mappings":"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","sourcesContent":["// @ts-nocheck\nimport type { BaseSelectProps, BaseSelectPropsWithoutPrivate, BaseSelectRef } from 'rc-select'\nimport { BaseSelect } from 'rc-select'\nimport type { DisplayValueType, Placement } from 'rc-select/lib/BaseSelect'\nimport useId from 'rc-select/lib/hooks/useId'\nimport { conductCheck } from 'rc-tree/lib/utils/conductUtil'\nimport useMergedState from 'rc-util/lib/hooks/useMergedState'\nimport * as React from 'react'\nimport CascaderContext from './context'\nimport useDisplayValues from './hooks/useDisplayValues'\nimport useEntities from './hooks/useEntities'\nimport useMissingValues from './hooks/useMissingValues'\nimport useRefFunc from './hooks/useRefFunc'\nimport useSearchConfig from './hooks/useSearchConfig'\nimport useSearchOptions from './hooks/useSearchOptions'\nimport OptionList from './OptionList'\nimport { fillFieldNames, SHOW_CHILD, SHOW_PARENT, toPathKey, toPathKeys } from './utils/commonUtil'\nimport { formatStrategyValues, toPathOptions } from './utils/treeUtil'\nimport warningProps, { warningNullOptions } from './utils/warningPropsUtil'\nimport { RenderItem } from './context'\nimport { getLanguage, getText } from '../../prev-locale'\nimport './index.less'\n\nconst defaultPlacehlder = getText('select', getLanguage())\n\nexport interface ShowSearchType<OptionType extends BaseOptionType = DefaultOptionType> {\n filter?: (inputValue: string, options: OptionType[], fieldNames: FieldNames) => boolean\n render?: (\n inputValue: string,\n path: OptionType[],\n prefixCls: string,\n fieldNames: FieldNames\n ) => React.ReactNode\n sort?: (a: OptionType[], b: OptionType[], inputValue: string, fieldNames: FieldNames) => number\n matchInputWidth?: boolean\n limit?: number | false\n}\n\nexport interface FieldNames {\n label?: string\n value?: string\n children?: string\n}\n\nexport interface InternalFieldNames extends Required<FieldNames> {\n key: string\n}\n\nexport type SingleValueType = (string | number)[]\n\nexport type ValueType = SingleValueType | SingleValueType[]\nexport type ShowCheckedStrategy = typeof SHOW_PARENT | typeof SHOW_CHILD\n\nexport interface BaseOptionType {\n disabled?: boolean\n [name: string]: any\n}\nexport interface DefaultOptionType extends BaseOptionType {\n label: React.ReactNode\n value?: string | number | null\n children?: DefaultOptionType[]\n}\n\ninterface BaseCascaderProps<OptionType extends BaseOptionType = DefaultOptionType>\n extends Omit<\n BaseSelectPropsWithoutPrivate,\n 'tokenSeparators' | 'labelInValue' | 'mode' | 'showSearch'\n > {\n // MISC\n id?: string\n prefixCls?: string\n fieldNames?: FieldNames\n children?: React.ReactElement\n\n // Value\n value?: ValueType\n defaultValue?: ValueType\n changeOnSelect?: boolean\n displayRender?: (label: string[], selectedOptions?: OptionType[]) => React.ReactNode\n checkable?: boolean | React.ReactNode\n showCheckedStrategy?: ShowCheckedStrategy\n\n // Search\n showSearch?: boolean | ShowSearchType<OptionType>\n searchValue?: string\n onSearch?: (value: string) => void\n\n // Trigger\n expandTrigger?: 'hover' | 'click'\n\n // Options\n options?: OptionType[]\n /** @private Internal usage. Do not use in your production. */\n dropdownPrefixCls?: string\n loadData?: (selectOptions: OptionType[]) => void\n\n // Open\n /** @deprecated Use `open` instead */\n popupVisible?: boolean\n\n /** @deprecated Use `dropdownClassName` instead */\n popupClassName?: string\n dropdownClassName?: string\n dropdownMenuColumnStyle?: React.CSSProperties\n\n /** @deprecated Use `placement` instead */\n popupPlacement?: Placement\n placement?: Placement\n\n /** @deprecated Use `onDropdownVisibleChange` instead */\n onPopupVisibleChange?: (open: boolean) => void\n onDropdownVisibleChange?: (open: boolean) => void\n renderItem?: (item: RenderItem) => React.ReactNode\n\n // Icon\n expandIcon?: React.ReactNode\n loadingIcon?: React.ReactNode\n}\n\ntype OnSingleChange<OptionType> = (value: SingleValueType, selectOptions: OptionType[]) => void\ntype OnMultipleChange<OptionType> = (\n value: SingleValueType[],\n selectOptions: OptionType[][]\n) => void\n\nexport interface SingleCascaderProps<OptionType extends BaseOptionType = DefaultOptionType>\n extends BaseCascaderProps<OptionType> {\n checkable?: false\n\n onChange?: OnSingleChange<OptionType>\n}\n\nexport interface MultipleCascaderProps<OptionType extends BaseOptionType = DefaultOptionType>\n extends BaseCascaderProps<OptionType> {\n checkable: true | React.ReactNode\n\n onChange?: OnMultipleChange<OptionType>\n}\n\nexport type CascaderProps<OptionType extends BaseOptionType = DefaultOptionType> =\n | SingleCascaderProps<OptionType>\n | MultipleCascaderProps<OptionType>\n\nexport type InternalCascaderProps<OptionType extends BaseOptionType = DefaultOptionType> = Omit<\n SingleCascaderProps<OptionType> | MultipleCascaderProps<OptionType>,\n 'onChange'\n> & {\n onChange?: (\n value: SingleValueType | SingleValueType[],\n selectOptions: OptionType[] | OptionType[][]\n ) => void\n}\n\nexport type CascaderRef = Omit<BaseSelectRef, 'scrollTo'>\n\nfunction isMultipleValue(value: ValueType): value is SingleValueType[] {\n return Array.isArray(value) && Array.isArray(value[0])\n}\n\nfunction toRawValues(value: ValueType): SingleValueType[] {\n if (!value) {\n return []\n }\n\n if (isMultipleValue(value)) {\n return value\n }\n\n return (value.length === 0 ? [] : [value]).map((val) => (Array.isArray(val) ? val : [val]))\n}\n\nconst Cascader = React.forwardRef<CascaderRef, InternalCascaderProps>((props, ref) => {\n const {\n // MISC\n id,\n prefixCls = 'rc-cascader',\n fieldNames,\n\n // Value\n defaultValue,\n value,\n changeOnSelect,\n onChange,\n displayRender,\n checkable,\n\n // Search\n searchValue,\n onSearch,\n showSearch,\n\n // Trigger\n expandTrigger,\n\n // Options\n options,\n dropdownPrefixCls,\n loadData,\n\n // Open\n popupVisible,\n open,\n\n popupClassName,\n dropdownClassName,\n dropdownMenuColumnStyle,\n\n popupPlacement,\n placement,\n\n onDropdownVisibleChange,\n onPopupVisibleChange,\n renderItem,\n\n // Icon\n expandIcon = '>',\n loadingIcon,\n\n // Children\n children,\n dropdownMatchSelectWidth = false,\n showCheckedStrategy = SHOW_PARENT,\n ...restProps\n } = props\n\n const mergedId = useId(id)\n const multiple = !!checkable\n const [dropdownVisible, setDropdownVisible] = React.useState(false)\n\n // =========================== Values ===========================\n const [rawValues, setRawValues] = useMergedState<ValueType, SingleValueType[]>(defaultValue, {\n value,\n postState: toRawValues,\n })\n\n // ========================= FieldNames =========================\n const mergedFieldNames = React.useMemo(\n () => fillFieldNames(fieldNames),\n /* eslint-disable react-hooks/exhaustive-deps */\n [JSON.stringify(fieldNames)]\n /* eslint-enable react-hooks/exhaustive-deps */\n )\n\n // =========================== Option ===========================\n const mergedOptions = React.useMemo(() => options || [], [options])\n\n // Only used in multiple mode, this fn will not call in single mode\n const getPathKeyEntities = useEntities(mergedOptions, mergedFieldNames)\n\n /** Convert path key back to value format */\n const getValueByKeyPath = React.useCallback(\n (pathKeys: React.Key[]): SingleValueType[] => {\n const keyPathEntities = getPathKeyEntities()\n\n return pathKeys.map((pathKey) => {\n const { nodes } = keyPathEntities[pathKey]\n\n return nodes.map((node) => node[mergedFieldNames.value])\n })\n },\n [getPathKeyEntities, mergedFieldNames]\n )\n\n // =========================== Search ===========================\n const [mergedSearchValue, setSearchValue] = useMergedState('', {\n value: searchValue,\n postState: (search) => search || '',\n })\n\n const onInternalSearch: BaseSelectProps['onSearch'] = (searchText, info) => {\n setSearchValue(searchText)\n\n if (info.source !== 'blur' && onSearch) {\n onSearch(searchText)\n }\n }\n\n const [mergedShowSearch, searchConfig] = useSearchConfig(showSearch)\n\n const searchOptions = useSearchOptions(\n mergedSearchValue,\n mergedOptions,\n mergedFieldNames,\n dropdownPrefixCls || prefixCls,\n searchConfig,\n changeOnSelect\n )\n\n // =========================== Values ===========================\n const getMissingValues = useMissingValues(mergedOptions, mergedFieldNames)\n\n // Fill `rawValues` with checked conduction values\n const [checkedValues, halfCheckedValues, missingCheckedValues] = React.useMemo(() => {\n const [existValues, missingValues] = getMissingValues(rawValues)\n\n if (!multiple || !rawValues.length) {\n return [existValues, [], missingValues]\n }\n\n const keyPathValues = toPathKeys(existValues)\n const keyPathEntities = getPathKeyEntities()\n\n const { checkedKeys, halfCheckedKeys } = conductCheck(keyPathValues, true, keyPathEntities)\n\n // Convert key back to value cells\n return [getValueByKeyPath(checkedKeys), getValueByKeyPath(halfCheckedKeys), missingValues]\n }, [multiple, rawValues, getPathKeyEntities, getValueByKeyPath, getMissingValues])\n\n const deDuplicatedValues = React.useMemo(() => {\n const checkedKeys = toPathKeys(checkedValues)\n const deduplicateKeys = formatStrategyValues(\n checkedKeys,\n getPathKeyEntities,\n showCheckedStrategy\n )\n\n return [...missingCheckedValues, ...getValueByKeyPath(deduplicateKeys)]\n }, [\n checkedValues,\n getPathKeyEntities,\n getValueByKeyPath,\n missingCheckedValues,\n showCheckedStrategy,\n ])\n\n const displayValues = useDisplayValues(\n deDuplicatedValues,\n mergedOptions,\n mergedFieldNames,\n multiple,\n displayRender\n )\n\n // =========================== Change ===========================\n const triggerChange = useRefFunc((nextValues: ValueType) => {\n setRawValues(nextValues)\n\n // Save perf if no need trigger event\n if (onChange) {\n const nextRawValues = toRawValues(nextValues)\n\n const valueOptions = nextRawValues.map((valueCells) =>\n toPathOptions(valueCells, mergedOptions, mergedFieldNames).map(\n (valueOpt) => valueOpt.option\n )\n )\n\n const triggerValues = multiple ? nextRawValues : nextRawValues[0]\n const triggerOptions = multiple ? valueOptions : valueOptions[0]\n\n onChange(triggerValues, triggerOptions)\n }\n })\n\n // =========================== Select ===========================\n const onInternalSelect = useRefFunc((valuePath: SingleValueType) => {\n setSearchValue('')\n if (!multiple) {\n triggerChange(valuePath)\n } else {\n // Prepare conduct required info\n const pathKey = toPathKey(valuePath)\n const checkedPathKeys = toPathKeys(checkedValues)\n const halfCheckedPathKeys = toPathKeys(halfCheckedValues)\n\n const existInChecked = checkedPathKeys.includes(pathKey)\n const existInMissing = missingCheckedValues.some(\n (valueCells) => toPathKey(valueCells) === pathKey\n )\n\n // Do update\n let nextCheckedValues = checkedValues\n let nextMissingValues = missingCheckedValues\n\n if (existInMissing && !existInChecked) {\n // Missing value only do filter\n nextMissingValues = missingCheckedValues.filter(\n (valueCells) => toPathKey(valueCells) !== pathKey\n )\n } else {\n // Update checked key first\n const nextRawCheckedKeys = existInChecked\n ? checkedPathKeys.filter((key) => key !== pathKey)\n : [...checkedPathKeys, pathKey]\n\n const pathKeyEntities = getPathKeyEntities()\n\n // Conduction by selected or not\n let checkedKeys: React.Key[]\n if (existInChecked) {\n ;({ checkedKeys } = conductCheck(\n nextRawCheckedKeys,\n { checked: false, halfCheckedKeys: halfCheckedPathKeys },\n pathKeyEntities\n ))\n } else {\n ;({ checkedKeys } = conductCheck(nextRawCheckedKeys, true, pathKeyEntities))\n }\n\n // Roll up to parent level keys\n const deDuplicatedKeys = formatStrategyValues(\n checkedKeys,\n getPathKeyEntities,\n showCheckedStrategy\n )\n nextCheckedValues = getValueByKeyPath(deDuplicatedKeys)\n }\n\n triggerChange([...nextMissingValues, ...nextCheckedValues])\n }\n })\n\n // Display Value change logic\n const onDisplayValuesChange: BaseSelectProps['onDisplayValuesChange'] = (_, info) => {\n if (info.type === 'clear') {\n triggerChange([])\n return\n }\n\n // Cascader do not support `add` type. Only support `remove`\n const { valueCells } = info.values[0] as DisplayValueType & { valueCells: SingleValueType }\n onInternalSelect(valueCells)\n }\n\n // ============================ Open ============================\n const mergedOpen = open !== undefined ? open : popupVisible\n\n const mergedDropdownClassName = dropdownClassName || popupClassName\n\n const mergedPlacement = placement || popupPlacement\n\n const onInternalDropdownVisibleChange = (nextVisible: boolean) => {\n onDropdownVisibleChange?.(nextVisible)\n onPopupVisibleChange?.(nextVisible)\n setDropdownVisible(nextVisible)\n }\n\n // ========================== Warning ===========================\n if (process.env.NODE_ENV !== 'production') {\n warningProps(props)\n warningNullOptions(mergedOptions, mergedFieldNames)\n }\n\n // ========================== Context ===========================\n const cascaderContext = React.useMemo(\n () => ({\n options: mergedOptions,\n fieldNames: mergedFieldNames,\n values: checkedValues,\n halfValues: halfCheckedValues,\n changeOnSelect,\n onSelect: onInternalSelect,\n checkable,\n searchOptions,\n dropdownPrefixCls,\n loadData,\n expandTrigger,\n expandIcon,\n loadingIcon,\n dropdownMenuColumnStyle,\n renderItem,\n dropdownVisible,\n }),\n [\n mergedOptions,\n mergedFieldNames,\n checkedValues,\n halfCheckedValues,\n changeOnSelect,\n onInternalSelect,\n checkable,\n searchOptions,\n dropdownPrefixCls,\n loadData,\n expandTrigger,\n expandIcon,\n loadingIcon,\n dropdownMenuColumnStyle,\n renderItem,\n dropdownVisible,\n ]\n )\n\n // ==============================================================\n // == Render ==\n // ==============================================================\n const emptyOptions = !(mergedSearchValue ? searchOptions : mergedOptions).length\n\n const dropdownStyle: React.CSSProperties =\n // Search to match width\n (mergedSearchValue && searchConfig.matchInputWidth) ||\n // Empty keep the width\n emptyOptions\n ? {}\n : {\n minWidth: 'auto',\n }\n return (\n <CascaderContext.Provider value={cascaderContext}>\n <BaseSelect\n placeholder={defaultPlacehlder}\n {...restProps}\n // MISC\n ref={ref as any}\n id={mergedId}\n prefixCls={prefixCls}\n dropdownMatchSelectWidth={dropdownMatchSelectWidth}\n dropdownStyle={dropdownStyle}\n // Value\n displayValues={displayValues}\n onDisplayValuesChange={onDisplayValuesChange}\n mode={multiple ? 'multiple' : undefined}\n // Search\n searchValue={mergedSearchValue}\n onSearch={onInternalSearch}\n showSearch={mergedShowSearch}\n // Options\n OptionList={OptionList}\n emptyOptions={emptyOptions}\n // Open\n open={mergedOpen}\n dropdownClassName={mergedDropdownClassName}\n placement={mergedPlacement}\n onDropdownVisibleChange={onInternalDropdownVisibleChange}\n // Children\n getRawInputElement={() => children}\n />\n </CascaderContext.Provider>\n )\n}) as unknown as (<OptionType extends BaseOptionType | DefaultOptionType = DefaultOptionType>(\n props: React.PropsWithChildren<CascaderProps<OptionType>> & {\n ref?: React.Ref<BaseSelectRef>\n }\n) => React.ReactElement) & {\n displayName?: string\n SHOW_PARENT: typeof SHOW_PARENT\n SHOW_CHILD: typeof SHOW_CHILD\n}\n\nif (process.env.NODE_ENV !== 'production') {\n Cascader.displayName = 'Cascader'\n}\n\nCascader.SHOW_PARENT = SHOW_PARENT\nCascader.SHOW_CHILD = SHOW_CHILD\nexport default Cascader\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/tntd-rc-select/index.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,WAAW,IAAI,aAAa,EAAE,MAAM,WAAW,CAAA;AAC7D,OAAiB,EAAE,aAAa,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,WAAW,CAAA;AACrE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAA;AACvD,OAAO,KAAK,EAAE,cAAc,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAA;AAE7E,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAK9B,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,gCAAgC,CAAA;AAG9D,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,gBAAgB,CAAA;AAK3D,OAAO,oBAAoB,CAAA;AAC3B,aAAK,QAAQ,GAAG,MAAM,GAAG,MAAM,CAAA;AAE/B,OAAO,EAAE,WAAW,EAAE,aAAa,IAAI,cAAc,EAAE,cAAc,EAAE,iBAAiB,EAAE,CAAA;AAE1F,MAAM,WAAW,YAAY;IAC3B,GAAG,CAAC,EAAE,MAAM,CAAA;IACZ,KAAK,EAAE,QAAQ,CAAA;IACf,KAAK,EAAE,KAAK,CAAC,SAAS,CAAA;CACvB;AAED,oBAAY,WAAW,GAAG,QAAQ,GAAG,QAAQ,EAAE,GAAG,YAAY,GAAG,YAAY,EAAE,GAAG,SAAS,CAAA;AAE3F,MAAM,WAAW,mBAAmB,CAClC,SAAS,GAAG,GAAG,EACf,UAAU,SAAS,cAAc,GAAG,iBAAiB,GAAG,iBAAiB,CACzE,SAAQ,IAAI,CAAC,aAAa,CAAC,SAAS,EAAE,UAAU,CAAC,EAAE,MAAM,CAAC;IAC1D,UAAU,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;IAC5B,IAAI,CAAC,EAAE,QAAQ,CAAA;IACf,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,IAAI,CAAC,EAAE,UAAU,GAAG,MAAM,GAAG,iCAAiC,CAAA;IAC9D,QAAQ,CAAC,EAAE,OAAO,CAAA;CACnB;AAED,MAAM,WAAW,WAAW,CAC1B,SAAS,GAAG,GAAG,EACf,UAAU,SAAS,cAAc,GAAG,iBAAiB,GAAG,iBAAiB,CACzE,SAAQ,IAAI,CACV,mBAAmB,CAAC,SAAS,EAAE,UAAU,CAAC,EAC1C,WAAW,GAAG,MAAM,GAAG,iBAAiB,GAAG,oBAAoB,GAAG,UAAU,GAAG,WAAW,CAC3F;IACD,SAAS,CAAC,EAAE,qBAAqB,CAAA;IACjC,IAAI,CAAC,EAAE,UAAU,GAAG,MAAM,CAAA;IAE1B;;;OAGG;IACH,iBAAiB,CAAC,EAAE,MAAM,CAAA;IAC1B,cAAc,CAAC,EAAE,MAAM,CAAA;CACxB;AAiKD,QAAA,MAAM,YAAY;;;;MAOb,MAAM,YAAY;qCACY,MAAM;YAC/B,aAAa;cACX,eAAe;CAC1B,CAAA;AAMD,eAAe,YAAY,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/tntd-rc-select/index.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,WAAW,IAAI,aAAa,EAAE,MAAM,WAAW,CAAA;AAC7D,OAAiB,EAAE,aAAa,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,WAAW,CAAA;AACrE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAA;AACvD,OAAO,KAAK,EAAE,cAAc,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAA;AAE7E,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAK9B,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,gCAAgC,CAAA;AAG9D,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,gBAAgB,CAAA;AAO3D,OAAO,oBAAoB,CAAA;AAG3B,aAAK,QAAQ,GAAG,MAAM,GAAG,MAAM,CAAA;AAE/B,OAAO,EAAE,WAAW,EAAE,aAAa,IAAI,cAAc,EAAE,cAAc,EAAE,iBAAiB,EAAE,CAAA;AAE1F,MAAM,WAAW,YAAY;IAC3B,GAAG,CAAC,EAAE,MAAM,CAAA;IACZ,KAAK,EAAE,QAAQ,CAAA;IACf,KAAK,EAAE,KAAK,CAAC,SAAS,CAAA;CACvB;AAED,oBAAY,WAAW,GAAG,QAAQ,GAAG,QAAQ,EAAE,GAAG,YAAY,GAAG,YAAY,EAAE,GAAG,SAAS,CAAA;AAE3F,MAAM,WAAW,mBAAmB,CAClC,SAAS,GAAG,GAAG,EACf,UAAU,SAAS,cAAc,GAAG,iBAAiB,GAAG,iBAAiB,CACzE,SAAQ,IAAI,CAAC,aAAa,CAAC,SAAS,EAAE,UAAU,CAAC,EAAE,MAAM,CAAC;IAC1D,UAAU,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;IAC5B,IAAI,CAAC,EAAE,QAAQ,CAAA;IACf,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,IAAI,CAAC,EAAE,UAAU,GAAG,MAAM,GAAG,iCAAiC,CAAA;IAC9D,QAAQ,CAAC,EAAE,OAAO,CAAA;CACnB;AAED,MAAM,WAAW,WAAW,CAC1B,SAAS,GAAG,GAAG,EACf,UAAU,SAAS,cAAc,GAAG,iBAAiB,GAAG,iBAAiB,CACzE,SAAQ,IAAI,CACV,mBAAmB,CAAC,SAAS,EAAE,UAAU,CAAC,EAC1C,WAAW,GAAG,MAAM,GAAG,iBAAiB,GAAG,oBAAoB,GAAG,UAAU,GAAG,WAAW,CAC3F;IACD,SAAS,CAAC,EAAE,qBAAqB,CAAA;IACjC,IAAI,CAAC,EAAE,UAAU,GAAG,MAAM,CAAA;IAE1B;;;OAGG;IACH,iBAAiB,CAAC,EAAE,MAAM,CAAA;IAC1B,cAAc,CAAC,EAAE,MAAM,CAAA;CACxB;AAkKD,QAAA,MAAM,YAAY;;;;MAOb,MAAM,YAAY;qCACY,MAAM;YAC/B,aAAa;cACX,eAAe;CAC1B,CAAA;AAMD,eAAe,YAAY,CAAA"}
@@ -18,6 +18,7 @@ var _motion = require("./_util/motion");
18
18
  var _getIcons2 = _interopRequireDefault(require("./_util/getIcons"));
19
19
  var _warning = _interopRequireDefault(require("./_util/warning"));
20
20
  var _useCompactItemContext = require("./_util/useCompactItemContext");
21
+ var _prevLocale = require("../prev-locale");
21
22
  require("./style/index.less");
22
23
  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); }
23
24
  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; }
@@ -35,6 +36,7 @@ var __rest = void 0 && (void 0).__rest || function (s, e) {
35
36
  }
36
37
  return t;
37
38
  };
39
+ var defaultPlacehlder = (0, _prevLocale.getText)('select', (0, _prevLocale.getLanguage)());
38
40
  var SECRET_COMBOBOX_MODE_DO_NOT_USE = 'SECRET_COMBOBOX_MODE_DO_NOT_USE';
39
41
  var InternalSelect = function InternalSelect(_a, ref) {
40
42
  var customizePrefixCls = _a.prefixCls,
@@ -129,7 +131,8 @@ var InternalSelect = function InternalSelect(_a, ref) {
129
131
  return React.createElement(_rcSelect["default"], Object.assign({
130
132
  ref: ref,
131
133
  virtual: virtual,
132
- dropdownMatchSelectWidth: dropdownMatchSelectWidth
134
+ dropdownMatchSelectWidth: dropdownMatchSelectWidth,
135
+ placeholder: defaultPlacehlder
133
136
  }, selectProps, {
134
137
  transitionName: (0, _motion.getTransitionName)(rootPrefixCls, (0, _motion.getTransitionDirection)(placement), props.transitionName),
135
138
  listHeight: listHeight,
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/tntd-rc-select/index.tsx"],"names":[],"mappings":"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","sourcesContent":["// TODO: 4.0 - codemod should help to change `filterOption` to support node props.\n\nimport classNames from 'classnames'\nimport type { SelectProps as RcSelectProps } from 'rc-select'\nimport RcSelect, { BaseSelectRef, OptGroup, Option } from 'rc-select'\nimport type { OptionProps } from 'rc-select/lib/Option'\nimport type { BaseOptionType, DefaultOptionType } from 'rc-select/lib/Select'\nimport omit from 'rc-util/lib/omit'\nimport * as React from 'react'\nimport { useContext } from 'react'\nimport { ConfigContext } from './_util/context'\nimport defaultRenderEmpty from './_util/defaultRenderEmpty'\nimport DisabledContext from '../config-provider/DisabledContext'\nimport type { SizeType } from '../config-provider/SizeContext'\nimport SizeContext from '../config-provider/SizeContext'\nimport { FormItemInputContext } from './_util/FormItemInputContext'\nimport type { SelectCommonPlacement } from './_util/motion'\nimport { getTransitionDirection, getTransitionName } from './_util/motion'\nimport getIcons from './_util/getIcons'\nimport warning from './_util/warning'\nimport { useCompactItemContext } from './_util/useCompactItemContext'\nimport './style/index.less'\ntype RawValue = string | number\n\nexport { OptionProps, BaseSelectRef as RefSelectProps, BaseOptionType, DefaultOptionType }\n\nexport interface LabeledValue {\n key?: string\n value: RawValue\n label: React.ReactNode\n}\n\nexport type SelectValue = RawValue | RawValue[] | LabeledValue | LabeledValue[] | undefined\n\nexport interface InternalSelectProps<\n ValueType = any,\n OptionType extends BaseOptionType | DefaultOptionType = DefaultOptionType\n> extends Omit<RcSelectProps<ValueType, OptionType>, 'mode'> {\n suffixIcon?: React.ReactNode\n size?: SizeType\n disabled?: boolean\n mode?: 'multiple' | 'tags' | 'SECRET_COMBOBOX_MODE_DO_NOT_USE'\n bordered?: boolean\n}\n\nexport interface SelectProps<\n ValueType = any,\n OptionType extends BaseOptionType | DefaultOptionType = DefaultOptionType\n> extends Omit<\n InternalSelectProps<ValueType, OptionType>,\n 'inputIcon' | 'mode' | 'getInputElement' | 'getRawInputElement' | 'backfill' | 'placement'\n > {\n placement?: SelectCommonPlacement\n mode?: 'multiple' | 'tags'\n // status?: InputStatus;\n /**\n * @deprecated `dropdownClassName` is deprecated which will be removed in next major\n * version.Please use `popupClassName` instead.\n */\n dropdownClassName?: string\n popupClassName?: string\n}\n\nconst SECRET_COMBOBOX_MODE_DO_NOT_USE = 'SECRET_COMBOBOX_MODE_DO_NOT_USE'\n\nconst InternalSelect = <OptionType extends BaseOptionType | DefaultOptionType = DefaultOptionType>(\n {\n prefixCls: customizePrefixCls,\n bordered = true,\n className,\n getPopupContainer,\n dropdownClassName,\n popupClassName,\n listHeight = 256,\n placement,\n listItemHeight = 24,\n size: customizeSize,\n disabled: customDisabled,\n notFoundContent,\n // status: customStatus,\n showArrow,\n ...props\n }: SelectProps<OptionType>,\n ref: React.Ref<BaseSelectRef>\n) => {\n const {\n getPopupContainer: getContextPopupContainer,\n getPrefixCls,\n renderEmpty,\n direction,\n virtual,\n dropdownMatchSelectWidth,\n } = React.useContext(ConfigContext)\n const size = React.useContext(SizeContext)\n\n const prefixCls = getPrefixCls('select', customizePrefixCls)\n\n const rootPrefixCls = getPrefixCls()\n\n const { compactSize, compactItemClassnames } = useCompactItemContext(prefixCls, direction)\n\n const mode = React.useMemo(() => {\n const { mode: m } = props as InternalSelectProps<OptionType>\n\n if ((m as any) === 'combobox') {\n return undefined\n }\n\n if (m === SECRET_COMBOBOX_MODE_DO_NOT_USE) {\n return 'combobox'\n }\n\n return m\n }, [props.mode])\n\n const isMultiple = mode === 'multiple' || mode === 'tags'\n const mergedShowArrow =\n showArrow !== undefined ? showArrow : props.loading || !(isMultiple || mode === 'combobox')\n\n // =================== Warning =====================\n warning(\n !dropdownClassName,\n 'Select',\n '`dropdownClassName` is deprecated which will be removed in next major version. Please use `popupClassName` instead.'\n )\n\n // ===================== Form Status =====================\n const {\n status: contextStatus,\n hasFeedback,\n isFormItemInput,\n feedbackIcon,\n } = useContext(FormItemInputContext)\n // const mergedStatus = getMergedStatus(contextStatus, customStatus);\n\n // ===================== Empty =====================\n let mergedNotFound: React.ReactNode\n if (notFoundContent !== undefined) {\n mergedNotFound = notFoundContent\n } else if (mode === 'combobox') {\n mergedNotFound = null\n } else {\n mergedNotFound = (renderEmpty || defaultRenderEmpty)('Select')\n }\n\n // ===================== Icons =====================\n const { suffixIcon, itemIcon, removeIcon, clearIcon } = getIcons({\n ...props,\n multiple: isMultiple,\n hasFeedback,\n feedbackIcon,\n showArrow: mergedShowArrow,\n prefixCls,\n })\n\n const selectProps = omit(props as typeof props & { itemIcon: any }, ['suffixIcon', 'itemIcon'])\n\n const rcSelectRtlDropdownClassName = classNames(popupClassName || dropdownClassName, {\n [`${prefixCls}-dropdown-${direction}`]: direction === 'rtl',\n })\n\n const mergedSize = compactSize || customizeSize || size\n\n // ===================== Disabled =====================\n const disabled = React.useContext(DisabledContext)\n const mergedDisabled = customDisabled ?? disabled\n\n const mergedClassName = classNames(\n {\n [`${prefixCls}-lg`]: mergedSize === 'large',\n [`${prefixCls}-sm`]: mergedSize === 'small',\n [`${prefixCls}-rtl`]: direction === 'rtl',\n [`${prefixCls}-borderless`]: !bordered,\n [`${prefixCls}-in-form-item`]: isFormItemInput,\n },\n // prefixCls||hasFeedback,\n // getStatusClassNames(prefixCls, mergedStatus, hasFeedback),\n compactItemClassnames,\n className\n )\n\n // ===================== Placement =====================\n const getPlacement = () => {\n if (placement !== undefined) {\n return placement\n }\n return direction === 'rtl'\n ? ('bottomRight' as SelectCommonPlacement)\n : ('bottomLeft' as SelectCommonPlacement)\n }\n\n return (\n <RcSelect<any, any>\n ref={ref as any}\n virtual={virtual}\n dropdownMatchSelectWidth={dropdownMatchSelectWidth}\n {...selectProps}\n transitionName={getTransitionName(\n rootPrefixCls,\n getTransitionDirection(placement),\n props.transitionName\n )}\n listHeight={listHeight}\n listItemHeight={listItemHeight}\n mode={mode as any}\n prefixCls={prefixCls}\n placement={getPlacement()}\n direction={direction}\n inputIcon={suffixIcon}\n menuItemSelectedIcon={itemIcon}\n removeIcon={removeIcon}\n clearIcon={clearIcon}\n notFoundContent={mergedNotFound}\n className={mergedClassName}\n getPopupContainer={getPopupContainer || getContextPopupContainer}\n dropdownClassName={rcSelectRtlDropdownClassName}\n showArrow={hasFeedback || showArrow}\n disabled={mergedDisabled}\n />\n )\n}\n\nconst TntdRcSelect = React.forwardRef(InternalSelect) as unknown as (<\n ValueType = any,\n OptionType extends BaseOptionType | DefaultOptionType = DefaultOptionType\n>(\n props: React.PropsWithChildren<SelectProps<ValueType, OptionType>> & {\n ref?: React.Ref<BaseSelectRef>\n }\n) => React.ReactElement) & {\n SECRET_COMBOBOX_MODE_DO_NOT_USE: string\n Option: typeof Option\n OptGroup: typeof OptGroup\n}\n\nTntdRcSelect.SECRET_COMBOBOX_MODE_DO_NOT_USE = SECRET_COMBOBOX_MODE_DO_NOT_USE\nTntdRcSelect.Option = Option\nTntdRcSelect.OptGroup = OptGroup\n\nexport default TntdRcSelect\n"]}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/tntd-rc-select/index.tsx"],"names":[],"mappings":"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","sourcesContent":["// TODO: 4.0 - codemod should help to change `filterOption` to support node props.\n\nimport classNames from 'classnames'\nimport type { SelectProps as RcSelectProps } from 'rc-select'\nimport RcSelect, { BaseSelectRef, OptGroup, Option } from 'rc-select'\nimport type { OptionProps } from 'rc-select/lib/Option'\nimport type { BaseOptionType, DefaultOptionType } from 'rc-select/lib/Select'\nimport omit from 'rc-util/lib/omit'\nimport * as React from 'react'\nimport { useContext } from 'react'\nimport { ConfigContext } from './_util/context'\nimport defaultRenderEmpty from './_util/defaultRenderEmpty'\nimport DisabledContext from '../config-provider/DisabledContext'\nimport type { SizeType } from '../config-provider/SizeContext'\nimport SizeContext from '../config-provider/SizeContext'\nimport { FormItemInputContext } from './_util/FormItemInputContext'\nimport type { SelectCommonPlacement } from './_util/motion'\nimport { getTransitionDirection, getTransitionName } from './_util/motion'\nimport getIcons from './_util/getIcons'\nimport warning from './_util/warning'\nimport { useCompactItemContext } from './_util/useCompactItemContext'\nimport { getLanguage, getText } from '../prev-locale'\n\nimport './style/index.less'\n\nconst defaultPlacehlder = getText('select', getLanguage())\ntype RawValue = string | number\n\nexport { OptionProps, BaseSelectRef as RefSelectProps, BaseOptionType, DefaultOptionType }\n\nexport interface LabeledValue {\n key?: string\n value: RawValue\n label: React.ReactNode\n}\n\nexport type SelectValue = RawValue | RawValue[] | LabeledValue | LabeledValue[] | undefined\n\nexport interface InternalSelectProps<\n ValueType = any,\n OptionType extends BaseOptionType | DefaultOptionType = DefaultOptionType\n> extends Omit<RcSelectProps<ValueType, OptionType>, 'mode'> {\n suffixIcon?: React.ReactNode\n size?: SizeType\n disabled?: boolean\n mode?: 'multiple' | 'tags' | 'SECRET_COMBOBOX_MODE_DO_NOT_USE'\n bordered?: boolean\n}\n\nexport interface SelectProps<\n ValueType = any,\n OptionType extends BaseOptionType | DefaultOptionType = DefaultOptionType\n> extends Omit<\n InternalSelectProps<ValueType, OptionType>,\n 'inputIcon' | 'mode' | 'getInputElement' | 'getRawInputElement' | 'backfill' | 'placement'\n > {\n placement?: SelectCommonPlacement\n mode?: 'multiple' | 'tags'\n // status?: InputStatus;\n /**\n * @deprecated `dropdownClassName` is deprecated which will be removed in next major\n * version.Please use `popupClassName` instead.\n */\n dropdownClassName?: string\n popupClassName?: string\n}\n\nconst SECRET_COMBOBOX_MODE_DO_NOT_USE = 'SECRET_COMBOBOX_MODE_DO_NOT_USE'\n\nconst InternalSelect = <OptionType extends BaseOptionType | DefaultOptionType = DefaultOptionType>(\n {\n prefixCls: customizePrefixCls,\n bordered = true,\n className,\n getPopupContainer,\n dropdownClassName,\n popupClassName,\n listHeight = 256,\n placement,\n listItemHeight = 24,\n size: customizeSize,\n disabled: customDisabled,\n notFoundContent,\n // status: customStatus,\n showArrow,\n ...props\n }: SelectProps<OptionType>,\n ref: React.Ref<BaseSelectRef>\n) => {\n const {\n getPopupContainer: getContextPopupContainer,\n getPrefixCls,\n renderEmpty,\n direction,\n virtual,\n dropdownMatchSelectWidth,\n } = React.useContext(ConfigContext)\n const size = React.useContext(SizeContext)\n\n const prefixCls = getPrefixCls('select', customizePrefixCls)\n\n const rootPrefixCls = getPrefixCls()\n\n const { compactSize, compactItemClassnames } = useCompactItemContext(prefixCls, direction)\n\n const mode = React.useMemo(() => {\n const { mode: m } = props as InternalSelectProps<OptionType>\n\n if ((m as any) === 'combobox') {\n return undefined\n }\n\n if (m === SECRET_COMBOBOX_MODE_DO_NOT_USE) {\n return 'combobox'\n }\n\n return m\n }, [props.mode])\n\n const isMultiple = mode === 'multiple' || mode === 'tags'\n const mergedShowArrow =\n showArrow !== undefined ? showArrow : props.loading || !(isMultiple || mode === 'combobox')\n\n // =================== Warning =====================\n warning(\n !dropdownClassName,\n 'Select',\n '`dropdownClassName` is deprecated which will be removed in next major version. Please use `popupClassName` instead.'\n )\n\n // ===================== Form Status =====================\n const {\n status: contextStatus,\n hasFeedback,\n isFormItemInput,\n feedbackIcon,\n } = useContext(FormItemInputContext)\n // const mergedStatus = getMergedStatus(contextStatus, customStatus);\n\n // ===================== Empty =====================\n let mergedNotFound: React.ReactNode\n if (notFoundContent !== undefined) {\n mergedNotFound = notFoundContent\n } else if (mode === 'combobox') {\n mergedNotFound = null\n } else {\n mergedNotFound = (renderEmpty || defaultRenderEmpty)('Select')\n }\n\n // ===================== Icons =====================\n const { suffixIcon, itemIcon, removeIcon, clearIcon } = getIcons({\n ...props,\n multiple: isMultiple,\n hasFeedback,\n feedbackIcon,\n showArrow: mergedShowArrow,\n prefixCls,\n })\n\n const selectProps = omit(props as typeof props & { itemIcon: any }, ['suffixIcon', 'itemIcon'])\n\n const rcSelectRtlDropdownClassName = classNames(popupClassName || dropdownClassName, {\n [`${prefixCls}-dropdown-${direction}`]: direction === 'rtl',\n })\n\n const mergedSize = compactSize || customizeSize || size\n\n // ===================== Disabled =====================\n const disabled = React.useContext(DisabledContext)\n const mergedDisabled = customDisabled ?? disabled\n\n const mergedClassName = classNames(\n {\n [`${prefixCls}-lg`]: mergedSize === 'large',\n [`${prefixCls}-sm`]: mergedSize === 'small',\n [`${prefixCls}-rtl`]: direction === 'rtl',\n [`${prefixCls}-borderless`]: !bordered,\n [`${prefixCls}-in-form-item`]: isFormItemInput,\n },\n // prefixCls||hasFeedback,\n // getStatusClassNames(prefixCls, mergedStatus, hasFeedback),\n compactItemClassnames,\n className\n )\n\n // ===================== Placement =====================\n const getPlacement = () => {\n if (placement !== undefined) {\n return placement\n }\n return direction === 'rtl'\n ? ('bottomRight' as SelectCommonPlacement)\n : ('bottomLeft' as SelectCommonPlacement)\n }\n\n return (\n <RcSelect<any, any>\n ref={ref as any}\n virtual={virtual}\n dropdownMatchSelectWidth={dropdownMatchSelectWidth}\n placeholder={defaultPlacehlder}\n {...selectProps}\n transitionName={getTransitionName(\n rootPrefixCls,\n getTransitionDirection(placement),\n props.transitionName\n )}\n listHeight={listHeight}\n listItemHeight={listItemHeight}\n mode={mode as any}\n prefixCls={prefixCls}\n placement={getPlacement()}\n direction={direction}\n inputIcon={suffixIcon}\n menuItemSelectedIcon={itemIcon}\n removeIcon={removeIcon}\n clearIcon={clearIcon}\n notFoundContent={mergedNotFound}\n className={mergedClassName}\n getPopupContainer={getPopupContainer || getContextPopupContainer}\n dropdownClassName={rcSelectRtlDropdownClassName}\n showArrow={hasFeedback || showArrow}\n disabled={mergedDisabled}\n />\n )\n}\n\nconst TntdRcSelect = React.forwardRef(InternalSelect) as unknown as (<\n ValueType = any,\n OptionType extends BaseOptionType | DefaultOptionType = DefaultOptionType\n>(\n props: React.PropsWithChildren<SelectProps<ValueType, OptionType>> & {\n ref?: React.Ref<BaseSelectRef>\n }\n) => React.ReactElement) & {\n SECRET_COMBOBOX_MODE_DO_NOT_USE: string\n Option: typeof Option\n OptGroup: typeof OptGroup\n}\n\nTntdRcSelect.SECRET_COMBOBOX_MODE_DO_NOT_USE = SECRET_COMBOBOX_MODE_DO_NOT_USE\nTntdRcSelect.Option = Option\nTntdRcSelect.OptGroup = OptGroup\n\nexport default TntdRcSelect\n"]}
@@ -1759,3 +1759,7 @@
1759
1759
  padding-right: 0;
1760
1760
  padding-left: 21px;
1761
1761
  }
1762
+
1763
+ .tntd-rc-select:not(.tntd-rc-select-customize-input) .tntd-rc-select-selector {
1764
+ border-radius: @border-radius-base;
1765
+ }
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/tntd-select/index.js"],"names":[],"mappings":";AA0BA;IACE,wBAqCC;IAjCC,oBAAqD;IAOrD;;;;;;MAMC;IAED,iBAA2E;IAE3E,yBAA8D;IAE9D,mBAA2C;IAE3C,qBAAwB;IAExB,sBAAsB;IAEtB,gBAAgB;IAEhB,kBAAkB;IAGlB,0BAA2C;IAE3C,WAA6B;IAG/B,0BAUC;IAED,uCAiBC;IAED,yBA6BC;IAGD,4DAMC;IAED,yCAkCC;IAED,6BAEC;IAED;;;;;MAKE;IAEF,+BAEC;IAED,qBAWC;IAVC,sCAAqE;IAMrE,qCAAqD;IAOvD,4BA2CC;IAED,qBAAyD;IAEzD,yBAQC;IAPC,2BAAwC;IAS1C,6BAOC;IAGD,gCAA2E;IAE3E;;;MAOC;IAGD,6CAeC;IATG,uCAAsD;IAW1D,gDA0BC;IAED,iCAGC;IAGD,yCAwBC;IAED,2BAoCC;IAED,+CAIC;IAED,yCAsBC;IAED,wBAMC;IAED,4BAiFC;IA1EC,8BAA8D;IA0C3C,kGAAiB;IAuBxB,sCAAe;CAU9B;;;;;;AA5eD,wFAA4B"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/tntd-select/index.js"],"names":[],"mappings":";AA6BA;IACE,wBAqCC;IAjCC,oBAAqD;IAOrD;;;;;;MAMC;IAED,iBAA2E;IAE3E,yBAA8D;IAE9D,mBAA2C;IAE3C,qBAAwB;IAExB,sBAAsB;IAEtB,gBAAgB;IAEhB,kBAAkB;IAGlB,0BAA2C;IAE3C,WAA6B;IAG/B,0BAUC;IAED,uCAiBC;IAED,yBA6BC;IAGD,4DAMC;IAED,yCAkCC;IAED,6BAEC;IAED;;;;;MAKE;IAEF,+BAEC;IAED,qBAWC;IAVC,sCAAqE;IAMrE,qCAAqD;IAOvD,4BA2CC;IAED,qBAAyD;IAEzD,yBAQC;IAPC,2BAAwC;IAS1C,6BAOC;IAGD,gCAA2E;IAE3E;;;MAOC;IAGD,6CAeC;IATG,uCAAsD;IAW1D,gDA0BC;IAED,iCAGC;IAGD,yCAwBC;IAED,2BAoCC;IAED,+CAIC;IAED,yCAsBC;IAED,wBAMC;IAED,4BAiFC;IA1EC,8BAA8D;IA0C3C,kGAAiB;IAuBxB,sCAAe;CAU9B;;;;;;AA5eD,wFAA4B"}
@@ -11,6 +11,7 @@ var _select = _interopRequireDefault(require("../select"));
11
11
  var _spin = _interopRequireDefault(require("../spin"));
12
12
  var _utils = require("../utils");
13
13
  var _DropDownWrap = _interopRequireDefault(require("./DropDownWrap"));
14
+ var _prevLocale = require("../prev-locale");
14
15
  require("./index.less");
15
16
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
16
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); }
@@ -35,6 +36,7 @@ var __rest = void 0 && (void 0).__rest || function (s, e) {
35
36
  }
36
37
  return t;
37
38
  };
39
+ var defaultPlacehlder = (0, _prevLocale.getText)('select', (0, _prevLocale.getLanguage)());
38
40
  // 页面实际渲染的下拉菜单数量,实际为 2 * ITEM_ELEMENT_NUMBER
39
41
  var ITEM_ELEMENT_NUMBER = 30;
40
42
  // Select size 配置
@@ -580,7 +582,8 @@ var SuperSelect = /*#__PURE__*/function (_PureComponent) {
580
582
  dropdownStyle = _a.dropdownStyle,
581
583
  optionLabelProp = _a.optionLabelProp,
582
584
  dropdownClassName = _a.dropdownClassName,
583
- placeholder = _a.placeholder,
585
+ _a$placeholder = _a.placeholder,
586
+ placeholder = _a$placeholder === void 0 ? defaultPlacehlder : _a$placeholder,
584
587
  capitalize = _a.capitalize,
585
588
  props = __rest(_a, ["dropdownStyle", "optionLabelProp", "dropdownClassName", "placeholder", "capitalize"]);
586
589
  this.allList = this.getUseChildrenList();
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/tntd-select/index.js"],"names":[],"mappings":"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","sourcesContent":["import React, { PureComponent } from 'react'\nimport Empty from '../empty'\nimport Select from '../select'\nimport Spin from '../spin'\nimport { capitalizeFirstLetter } from '../utils'\nimport DropDownWrap from './DropDownWrap'\nimport './index.less'\n\n// 页面实际渲染的下拉菜单数量,实际为 2 * ITEM_ELEMENT_NUMBER\nconst ITEM_ELEMENT_NUMBER = 30\n// Select size 配置\nconst ITEM_HEIGHT_CFG = {\n small: 24,\n large: 40,\n default: 32,\n}\n\nconst ARROW_CODE = {\n 40: 'down',\n 38: 'up',\n}\n\nconst DROPDOWN_HEIGHT = 224\n\nconst Option = Select.Option\n\nclass SuperSelect extends PureComponent {\n constructor(props) {\n super(props)\n\n const { mode, defaultValue, value, optionHeight, children: arr } = props\n this.isMultiple = ['tags', 'multiple'].includes(mode)\n const children = this.turnChildren(arr)\n\n // 设置默认 value\n let defaultV = this.isMultiple ? [] : ''\n defaultV = value || defaultValue || defaultV\n\n this.state = {\n children: children || [],\n filterChildren: null, // 筛选后的 options,优先显示,所以清除筛选后手动设为 null\n value: defaultV,\n maxWidth: null,\n selectWidth: null,\n }\n // 下拉菜单项行高\n this.ITEM_HEIGHT = optionHeight || ITEM_HEIGHT_CFG[props.size || 'default']\n // 可视区 dom 高度\n this.visibleDomHeight = this.ITEM_HEIGHT * ITEM_ELEMENT_NUMBER\n // 滚动时重新渲染的 scrollTop 判断值,大于 reactDelta 则刷新下拉列表\n this.reactDelta = this.visibleDomHeight / 3\n // 是否拖动滚动条快速滚动状态\n this.isStopReact = false\n // 上一次滚动的 scrollTop 值\n this.prevScrollTop = 0\n // 上一次按下方向键时 scrollTop 值\n this.prevTop = 0\n\n this.scrollTop = 0\n\n // className\n this.dropdownClassName = `dc${+new Date()}`\n\n this.id = `sid${+new Date()}`\n }\n\n componentDidMount() {\n // defaultOpens=true 时添加滚动事件\n setTimeout(() => {\n this.addEvent()\n }, 500)\n const { children: arr } = this.props\n const children = this.turnChildren(arr)\n // if (children && children.length > 0) {\n this.formulaWidth()\n // }\n }\n\n turnChildren = (children) => {\n if (!children) return []\n let arr = []\n if (children && children.props) {\n arr.push(children)\n } else {\n children.forEach((item) => {\n if (item) {\n if (item instanceof Array) {\n arr = arr.concat(item)\n } else {\n arr.push(item)\n }\n }\n })\n }\n return arr\n }\n\n formulaWidth = () => {\n // 获取dom设置宽度\n const { children: arr2, dropdownMatchSelectWidth = true, maxWidth } = this.props\n const selectDom = document.getElementById(this.id)\n let selectWidth\n if(selectDom){\n selectWidth = selectDom.clientWidth || selectDom.offsetWidth\n }\n let arr = []\n let formulaMaxWidth = 10\n if (!dropdownMatchSelectWidth) {\n formulaMaxWidth = maxWidth || 10\n }\n if (!dropdownMatchSelectWidth && !maxWidth) {\n const children = this.turnChildren(arr2)\n for (let i = 0; i < children.length; i++) {\n const val = children[i].props.children\n const textWidth = this.getTextPixelWith(val)\n arr.push(textWidth.toFixed(2))\n }\n if (arr.length > 0) {\n formulaMaxWidth = Math.max(...arr)\n }\n }\n\n this.setState({\n selectWidth,\n maxWidth: formulaMaxWidth,\n })\n }\n\n // 获取单行文本的像素宽度\n getTextPixelWith = (text, fontStyle = '14px') => {\n let canvas = document.createElement('canvas') // 创建 canvas 画布\n let context = canvas.getContext('2d') // 获取 canvas 绘图上下文环境\n context.font = fontStyle // 设置字体样式,使用前设置好对应的 font 样式才能准确获取文字的像素长度\n let dimension = context.measureText(text) // 测量文字\n return dimension.width\n }\n\n componentDidUpdate(prevProps) {\n const { mode, defaultValue, value, children } = this.props\n let arr = this.turnChildren(children)\n if (prevProps.children !== children) {\n this.isMultiple = ['tags', 'multiple'].includes(mode)\n\n this.setState(\n {\n children: arr || [],\n filterChildren: null,\n },\n () => {\n if (arr && arr.length > 0) {\n // 设置下拉列表显示数据\n if (!value) {\n this.scrollTop = 0\n this.scrollEle && this.scrollEle.scrollTo(0, 0)\n this.setSuperDrowDownMenu(true)\n }\n this.formulaWidth()\n if (!this.inputEle) {\n this.removeEvent()\n this.addEvent()\n }\n }\n }\n )\n }\n if (prevProps.value !== value) {\n // 更新时设置默认 value\n let defaultV = this.isMultiple ? [] : ''\n defaultV = value || defaultValue || defaultV\n this.setState({ value: defaultV })\n }\n }\n\n componentWillUnmount() {\n this.removeEvent()\n }\n\n getItemStyle = (i) => ({\n position: 'absolute',\n top: this.ITEM_HEIGHT * i,\n width: '100%',\n height: this.ITEM_HEIGHT,\n })\n\n preventEvent = (e) => {\n e.preventDefault()\n }\n\n addEvent = () => {\n this.scrollEle = document.querySelector(`.${this.dropdownClassName}`)\n // 下拉菜单未展开时元素不存在\n if (!this.scrollEle) return\n\n this.scrollEle.addEventListener('mousedown', this.preventEvent, false)\n this.scrollEle.addEventListener('scroll', this.onScroll, false)\n this.inputEle = document.querySelector(`#${this.id}`)\n\n if (!this.inputEle) return\n this.inputEle.addEventListener('keydown', this.onKeyDown, false)\n }\n\n // 模拟 antd select 按下 上下箭头 键时滚动列表\n onKeyDown = (e) => {\n const { keyCode } = e || {}\n\n setTimeout(() => {\n const activeItem = document.querySelector(\n `.${this.dropdownClassName} .ant-select-dropdown-menu-item-active`\n )\n if (!activeItem) return\n\n const { offsetTop } = activeItem\n const isUp = ARROW_CODE[keyCode] === 'up'\n const isDown = ARROW_CODE[keyCode] === 'down'\n\n // 在所有列表第一行按上键\n if (offsetTop - this.prevTop > DROPDOWN_HEIGHT && isUp && this.scrollEle) {\n this.scrollEle.scrollTo(0, this.allHeight - DROPDOWN_HEIGHT)\n this.prevTop = this.allHeight\n\n return\n }\n\n // 在所有列表中最后一行按下键\n if (this.prevTop > offsetTop + DROPDOWN_HEIGHT && isDown && this.scrollEle) {\n this.scrollEle.scrollTo(0, 0)\n this.prevTop = 0\n\n return\n }\n\n this.prevTop = offsetTop\n // 向下滚动到下拉框最后一行时,向下滚动一行的高度\n if (\n offsetTop > this.scrollEle.scrollTop + DROPDOWN_HEIGHT - this.ITEM_HEIGHT + 10 &&\n isDown\n ) {\n this.scrollEle.scrollTo(0, this.scrollTop + this.ITEM_HEIGHT)\n return\n }\n // 向上滚动到下拉框第一一行时,向上滚动一行的高度\n if (offsetTop < this.scrollEle.scrollTop && isUp) {\n this.scrollEle.scrollTo(0, this.scrollTop - this.ITEM_HEIGHT)\n }\n }, 100)\n }\n\n onScroll = () => this.throttleByHeight(this.onScrollReal)\n\n onScrollReal = () => {\n this.allList = this.getUseChildrenList()\n const { startIndex, endIndex } = this.getStartAndEndIndex()\n\n this.prevScrollTop = this.scrollTop\n // 重新渲染列表组件 Wrap\n const allHeight = this.allList.length * this.ITEM_HEIGHT || 100\n this.wrap.reactList(allHeight, startIndex, endIndex)\n }\n\n throttleByHeight = () => {\n this.scrollTop = this.scrollEle.scrollTop\n // 滚动的高度\n let delta = this.prevScrollTop - this.scrollTop\n delta = delta < 0 ? 0 - delta : delta\n\n delta > this.reactDelta && this.onScrollReal()\n }\n\n // 列表可展示所有 children\n getUseChildrenList = () => this.state.filterChildren || this.state.children\n\n getStartAndEndIndex = () => {\n // 滚动后显示在列表可视区中的第一个 item 的 index\n const showIndex = Number((this.scrollTop / this.ITEM_HEIGHT).toFixed(0))\n\n const startIndex = showIndex - ITEM_ELEMENT_NUMBER < 0 ? 0 : showIndex - ITEM_ELEMENT_NUMBER / 2\n const endIndex = showIndex + ITEM_ELEMENT_NUMBER\n return { startIndex, endIndex }\n }\n\n // 须使用 setTimeout 确保在 dom 加载完成之后添加事件\n setSuperDrowDownMenu = (visible) => {\n if (!visible) return\n\n this.allList = this.getUseChildrenList()\n\n if (!this.eventTimer || !this.scrollEle) {\n this.eventTimer = setTimeout(() => this.addEvent(), 0)\n } else {\n const allHeight = this.allList.length * this.ITEM_HEIGHT || 100\n // 下拉列表单独重新渲染\n const { startIndex, endIndex } = this.getStartAndEndIndex()\n setTimeout(() => {\n this.wrap && this.wrap.reactList(allHeight, startIndex, endIndex)\n }, 0)\n }\n }\n\n onDropdownVisibleChange = (visible) => {\n const { onDropdownVisibleChange } = this.props\n onDropdownVisibleChange && onDropdownVisibleChange(visible)\n\n const { value, children } = this.state\n // 关闭下拉框前清空筛选条件,防止下次打开任然显示筛选后的 options\n if (!visible) {\n // 定时器确保关闭后再设置 filterChildren,防止列表刷新闪烁\n setTimeout(() => {\n this.setState({ filterChildren: null })\n this.setDefaultScrollTop(value)\n }, 100)\n // this.removeEvent();\n } else {\n // this.addEvent();\n if (value) {\n // 如果已有 value, 设置默认滚动位置\n this.setDefaultScrollTop()\n // 设置下拉列表显示数据\n this.setSuperDrowDownMenu(visible)\n } else if (!value && value !== 0 && children && children.length > 0) {\n // 无数据时,下拉回归至第一个\n const val = children[0].props.value\n this.setDefaultScrollTop(val)\n }\n }\n }\n\n onDeselect = (value) => {\n const { onDeselect } = this.props\n onDeselect && onDeselect(value)\n }\n\n // 在搜索重新计算下拉滚动条高度\n onChange = (value, opt) => {\n const { showSearch, onChange, autoClearSearchValue, maxCount, mode } = this.props\n if (showSearch || this.isMultiple) {\n // 搜索模式下选择后是否需要重置搜索状态\n if (autoClearSearchValue !== false) {\n this.setState({ filterChildren: null }, () => {\n // 搜索成功后重新设置列表的总高度\n this.setSuperDrowDownMenu(true)\n })\n }\n }\n\n if (mode === 'multiple') {\n if (value.length <= maxCount) {\n this.setState({ value })\n }\n } else {\n this.setState({ value })\n }\n onChange && onChange(value, opt)\n\n if (mode !== 'multiple') {\n this.select && this.select.blur()\n }\n }\n\n onSearch = (v) => {\n const { showSearch, onSearch, filterOption, children: arr } = this.props\n let children = this.turnChildren(arr)\n if (showSearch && filterOption !== false) {\n // 须根据 filterOption(如有该自定义函数)手动 filter 搜索匹配的列表\n let filterChildren = null\n if (typeof filterOption === 'function') {\n filterChildren = children.filter((item) => filterOption(v, item))\n } else if (filterOption === undefined) {\n filterChildren = children.filter((item) => this.filterOption(v, item))\n }\n\n // 搜索框有值,去除disabled=true的children\n let newFilterChild = []\n filterChildren &&\n filterChildren.forEach((item, index) => {\n if (!item.props.disabled) {\n newFilterChild.push(item)\n }\n })\n filterChildren = newFilterChild\n\n // 设置下拉列表显示数据\n this.setState({ filterChildren: v === '' ? null : filterChildren }, () => {\n setTimeout(() => {\n // 搜索后需要重置滚动位置到0,防止上次 scrollTop 位置无数据\n if (filterChildren && this.scrollEle) {\n this.scrollTop = 0\n this.scrollEle.scrollTo(0, 0)\n }\n // 搜索成功后需要重新设置列表的总高度\n this.setSuperDrowDownMenu(true)\n }, 0)\n })\n }\n onSearch && onSearch(v)\n }\n\n filterOption = (v, option) => {\n // 自定义过滤对应的 option 属性配置\n const filterProps = this.props.optionFilterProp || 'value'\n return `${option.props[filterProps]}`.indexOf(v) >= 0\n }\n\n setDefaultScrollTop = (data) => {\n const { value } = this.state\n const { children: arr } = this.props\n const children = this.turnChildren(arr)\n\n let val = data || data === 0 ? data : value\n\n for (let i = 0; i < children.length; i++) {\n const item = children[i]\n const itemValue = item.props.value\n if (itemValue === val || (Array.isArray(val) && val.includes(itemValue))) {\n const targetScrollTop = i * this.ITEM_HEIGHT\n\n setTimeout(() => {\n if (!this.scrollEle) {\n this.addEvent()\n }\n this.scrollEle && this.scrollEle.scrollTo(0, targetScrollTop)\n }, 100)\n return\n }\n }\n }\n\n removeEvent = () => {\n if (!this.scrollEle) return\n this.scrollEle.removeEventListener('mousedown', this.preventEvent, false)\n this.scrollEle.removeEventListener('scroll', this.onScroll, false)\n if (!this.inputEle) return\n this.inputEle.removeEventListener('keydown', this.onKeyDown, false)\n }\n\n render() {\n const { maxWidth, selectWidth } = this.state\n let { dropdownStyle, optionLabelProp, dropdownClassName, placeholder, capitalize, ...props } =\n this.props\n\n this.allList = this.getUseChildrenList()\n\n this.allHeight = this.allList.length * this.ITEM_HEIGHT || 100\n const { startIndex, endIndex } = this.getStartAndEndIndex()\n\n let dynamicWidth = maxWidth\n if (this.allList.length === 0 || maxWidth < selectWidth) {\n dynamicWidth = selectWidth\n }\n\n dropdownStyle = {\n maxHeight: `${DROPDOWN_HEIGHT}px`,\n ...dropdownStyle,\n overflow: 'auto',\n position: 'relative',\n maxWidth: dynamicWidth,\n }\n\n const { value } = this.state\n // 判断处于 antd Form 中时不自动设置 value\n const _props = { ...props }\n // 先删除 value,再手动赋值,防止空 value 影响 placeholder\n delete _props.value\n\n // value 为空字符会隐藏 placeholder,改为 undefined\n if (typeof value === 'string' && !value) {\n _props.value = undefined\n } else {\n _props.value = value\n }\n\n optionLabelProp = optionLabelProp || 'children'\n return (\n <Select\n {..._props}\n id={this.id}\n placeholder={capitalizeFirstLetter(placeholder, capitalize)}\n onSearch={this.onSearch}\n onChange={this.onChange}\n dropdownClassName={`${this.dropdownClassName} ${dropdownClassName || ''}`}\n optionLabelProp={optionLabelProp}\n dropdownStyle={dropdownStyle}\n onDropdownVisibleChange={this.onDropdownVisibleChange}\n onDeselect={this.onDeselect}\n ref={(ele) => (this.select = ele)}\n dropdownRender={(menu, props) => {\n if (_props.loading) {\n return <Spin size=\"small\" style={{ marginLeft: 8 }} />\n }\n if (this.allList.length === 0) {\n return (\n <div className=\"tntd-select-empty-container\">\n <Empty image={Empty.PRESENTED_IMAGE_SIMPLE} />\n </div>\n )\n }\n\n return (\n <DropDownWrap\n {...{\n startIndex,\n endIndex,\n allHeight: this.allHeight,\n menu,\n itemHeight: this.ITEM_HEIGHT,\n }}\n ref={(ele) => {\n this.wrap = ele\n }}\n />\n )\n }}\n >\n {this.allList}\n </Select>\n )\n }\n}\n\nSuperSelect.Option = Option\n\nexport default SuperSelect\n"]}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/tntd-select/index.js"],"names":[],"mappings":"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","sourcesContent":["import React, { PureComponent } from 'react'\nimport Empty from '../empty'\nimport Select from '../select'\nimport Spin from '../spin'\nimport { capitalizeFirstLetter } from '../utils'\nimport DropDownWrap from './DropDownWrap'\nimport { getLanguage, getText } from '../prev-locale'\nimport './index.less'\n\nconst defaultPlacehlder = getText('select', getLanguage())\n\n// 页面实际渲染的下拉菜单数量,实际为 2 * ITEM_ELEMENT_NUMBER\nconst ITEM_ELEMENT_NUMBER = 30\n// Select size 配置\nconst ITEM_HEIGHT_CFG = {\n small: 24,\n large: 40,\n default: 32,\n}\n\nconst ARROW_CODE = {\n 40: 'down',\n 38: 'up',\n}\n\nconst DROPDOWN_HEIGHT = 224\n\nconst Option = Select.Option\n\nclass SuperSelect extends PureComponent {\n constructor(props) {\n super(props)\n\n const { mode, defaultValue, value, optionHeight, children: arr } = props\n this.isMultiple = ['tags', 'multiple'].includes(mode)\n const children = this.turnChildren(arr)\n\n // 设置默认 value\n let defaultV = this.isMultiple ? [] : ''\n defaultV = value || defaultValue || defaultV\n\n this.state = {\n children: children || [],\n filterChildren: null, // 筛选后的 options,优先显示,所以清除筛选后手动设为 null\n value: defaultV,\n maxWidth: null,\n selectWidth: null,\n }\n // 下拉菜单项行高\n this.ITEM_HEIGHT = optionHeight || ITEM_HEIGHT_CFG[props.size || 'default']\n // 可视区 dom 高度\n this.visibleDomHeight = this.ITEM_HEIGHT * ITEM_ELEMENT_NUMBER\n // 滚动时重新渲染的 scrollTop 判断值,大于 reactDelta 则刷新下拉列表\n this.reactDelta = this.visibleDomHeight / 3\n // 是否拖动滚动条快速滚动状态\n this.isStopReact = false\n // 上一次滚动的 scrollTop 值\n this.prevScrollTop = 0\n // 上一次按下方向键时 scrollTop 值\n this.prevTop = 0\n\n this.scrollTop = 0\n\n // className\n this.dropdownClassName = `dc${+new Date()}`\n\n this.id = `sid${+new Date()}`\n }\n\n componentDidMount() {\n // defaultOpens=true 时添加滚动事件\n setTimeout(() => {\n this.addEvent()\n }, 500)\n const { children: arr } = this.props\n const children = this.turnChildren(arr)\n // if (children && children.length > 0) {\n this.formulaWidth()\n // }\n }\n\n turnChildren = (children) => {\n if (!children) return []\n let arr = []\n if (children && children.props) {\n arr.push(children)\n } else {\n children.forEach((item) => {\n if (item) {\n if (item instanceof Array) {\n arr = arr.concat(item)\n } else {\n arr.push(item)\n }\n }\n })\n }\n return arr\n }\n\n formulaWidth = () => {\n // 获取dom设置宽度\n const { children: arr2, dropdownMatchSelectWidth = true, maxWidth } = this.props\n const selectDom = document.getElementById(this.id)\n let selectWidth\n if(selectDom){\n selectWidth = selectDom.clientWidth || selectDom.offsetWidth\n }\n let arr = []\n let formulaMaxWidth = 10\n if (!dropdownMatchSelectWidth) {\n formulaMaxWidth = maxWidth || 10\n }\n if (!dropdownMatchSelectWidth && !maxWidth) {\n const children = this.turnChildren(arr2)\n for (let i = 0; i < children.length; i++) {\n const val = children[i].props.children\n const textWidth = this.getTextPixelWith(val)\n arr.push(textWidth.toFixed(2))\n }\n if (arr.length > 0) {\n formulaMaxWidth = Math.max(...arr)\n }\n }\n\n this.setState({\n selectWidth,\n maxWidth: formulaMaxWidth,\n })\n }\n\n // 获取单行文本的像素宽度\n getTextPixelWith = (text, fontStyle = '14px') => {\n let canvas = document.createElement('canvas') // 创建 canvas 画布\n let context = canvas.getContext('2d') // 获取 canvas 绘图上下文环境\n context.font = fontStyle // 设置字体样式,使用前设置好对应的 font 样式才能准确获取文字的像素长度\n let dimension = context.measureText(text) // 测量文字\n return dimension.width\n }\n\n componentDidUpdate(prevProps) {\n const { mode, defaultValue, value, children } = this.props\n let arr = this.turnChildren(children)\n if (prevProps.children !== children) {\n this.isMultiple = ['tags', 'multiple'].includes(mode)\n\n this.setState(\n {\n children: arr || [],\n filterChildren: null,\n },\n () => {\n if (arr && arr.length > 0) {\n // 设置下拉列表显示数据\n if (!value) {\n this.scrollTop = 0\n this.scrollEle && this.scrollEle.scrollTo(0, 0)\n this.setSuperDrowDownMenu(true)\n }\n this.formulaWidth()\n if (!this.inputEle) {\n this.removeEvent()\n this.addEvent()\n }\n }\n }\n )\n }\n if (prevProps.value !== value) {\n // 更新时设置默认 value\n let defaultV = this.isMultiple ? [] : ''\n defaultV = value || defaultValue || defaultV\n this.setState({ value: defaultV })\n }\n }\n\n componentWillUnmount() {\n this.removeEvent()\n }\n\n getItemStyle = (i) => ({\n position: 'absolute',\n top: this.ITEM_HEIGHT * i,\n width: '100%',\n height: this.ITEM_HEIGHT,\n })\n\n preventEvent = (e) => {\n e.preventDefault()\n }\n\n addEvent = () => {\n this.scrollEle = document.querySelector(`.${this.dropdownClassName}`)\n // 下拉菜单未展开时元素不存在\n if (!this.scrollEle) return\n\n this.scrollEle.addEventListener('mousedown', this.preventEvent, false)\n this.scrollEle.addEventListener('scroll', this.onScroll, false)\n this.inputEle = document.querySelector(`#${this.id}`)\n\n if (!this.inputEle) return\n this.inputEle.addEventListener('keydown', this.onKeyDown, false)\n }\n\n // 模拟 antd select 按下 上下箭头 键时滚动列表\n onKeyDown = (e) => {\n const { keyCode } = e || {}\n\n setTimeout(() => {\n const activeItem = document.querySelector(\n `.${this.dropdownClassName} .ant-select-dropdown-menu-item-active`\n )\n if (!activeItem) return\n\n const { offsetTop } = activeItem\n const isUp = ARROW_CODE[keyCode] === 'up'\n const isDown = ARROW_CODE[keyCode] === 'down'\n\n // 在所有列表第一行按上键\n if (offsetTop - this.prevTop > DROPDOWN_HEIGHT && isUp && this.scrollEle) {\n this.scrollEle.scrollTo(0, this.allHeight - DROPDOWN_HEIGHT)\n this.prevTop = this.allHeight\n\n return\n }\n\n // 在所有列表中最后一行按下键\n if (this.prevTop > offsetTop + DROPDOWN_HEIGHT && isDown && this.scrollEle) {\n this.scrollEle.scrollTo(0, 0)\n this.prevTop = 0\n\n return\n }\n\n this.prevTop = offsetTop\n // 向下滚动到下拉框最后一行时,向下滚动一行的高度\n if (\n offsetTop > this.scrollEle.scrollTop + DROPDOWN_HEIGHT - this.ITEM_HEIGHT + 10 &&\n isDown\n ) {\n this.scrollEle.scrollTo(0, this.scrollTop + this.ITEM_HEIGHT)\n return\n }\n // 向上滚动到下拉框第一一行时,向上滚动一行的高度\n if (offsetTop < this.scrollEle.scrollTop && isUp) {\n this.scrollEle.scrollTo(0, this.scrollTop - this.ITEM_HEIGHT)\n }\n }, 100)\n }\n\n onScroll = () => this.throttleByHeight(this.onScrollReal)\n\n onScrollReal = () => {\n this.allList = this.getUseChildrenList()\n const { startIndex, endIndex } = this.getStartAndEndIndex()\n\n this.prevScrollTop = this.scrollTop\n // 重新渲染列表组件 Wrap\n const allHeight = this.allList.length * this.ITEM_HEIGHT || 100\n this.wrap.reactList(allHeight, startIndex, endIndex)\n }\n\n throttleByHeight = () => {\n this.scrollTop = this.scrollEle.scrollTop\n // 滚动的高度\n let delta = this.prevScrollTop - this.scrollTop\n delta = delta < 0 ? 0 - delta : delta\n\n delta > this.reactDelta && this.onScrollReal()\n }\n\n // 列表可展示所有 children\n getUseChildrenList = () => this.state.filterChildren || this.state.children\n\n getStartAndEndIndex = () => {\n // 滚动后显示在列表可视区中的第一个 item 的 index\n const showIndex = Number((this.scrollTop / this.ITEM_HEIGHT).toFixed(0))\n\n const startIndex = showIndex - ITEM_ELEMENT_NUMBER < 0 ? 0 : showIndex - ITEM_ELEMENT_NUMBER / 2\n const endIndex = showIndex + ITEM_ELEMENT_NUMBER\n return { startIndex, endIndex }\n }\n\n // 须使用 setTimeout 确保在 dom 加载完成之后添加事件\n setSuperDrowDownMenu = (visible) => {\n if (!visible) return\n\n this.allList = this.getUseChildrenList()\n\n if (!this.eventTimer || !this.scrollEle) {\n this.eventTimer = setTimeout(() => this.addEvent(), 0)\n } else {\n const allHeight = this.allList.length * this.ITEM_HEIGHT || 100\n // 下拉列表单独重新渲染\n const { startIndex, endIndex } = this.getStartAndEndIndex()\n setTimeout(() => {\n this.wrap && this.wrap.reactList(allHeight, startIndex, endIndex)\n }, 0)\n }\n }\n\n onDropdownVisibleChange = (visible) => {\n const { onDropdownVisibleChange } = this.props\n onDropdownVisibleChange && onDropdownVisibleChange(visible)\n\n const { value, children } = this.state\n // 关闭下拉框前清空筛选条件,防止下次打开任然显示筛选后的 options\n if (!visible) {\n // 定时器确保关闭后再设置 filterChildren,防止列表刷新闪烁\n setTimeout(() => {\n this.setState({ filterChildren: null })\n this.setDefaultScrollTop(value)\n }, 100)\n // this.removeEvent();\n } else {\n // this.addEvent();\n if (value) {\n // 如果已有 value, 设置默认滚动位置\n this.setDefaultScrollTop()\n // 设置下拉列表显示数据\n this.setSuperDrowDownMenu(visible)\n } else if (!value && value !== 0 && children && children.length > 0) {\n // 无数据时,下拉回归至第一个\n const val = children[0].props.value\n this.setDefaultScrollTop(val)\n }\n }\n }\n\n onDeselect = (value) => {\n const { onDeselect } = this.props\n onDeselect && onDeselect(value)\n }\n\n // 在搜索重新计算下拉滚动条高度\n onChange = (value, opt) => {\n const { showSearch, onChange, autoClearSearchValue, maxCount, mode } = this.props\n if (showSearch || this.isMultiple) {\n // 搜索模式下选择后是否需要重置搜索状态\n if (autoClearSearchValue !== false) {\n this.setState({ filterChildren: null }, () => {\n // 搜索成功后重新设置列表的总高度\n this.setSuperDrowDownMenu(true)\n })\n }\n }\n\n if (mode === 'multiple') {\n if (value.length <= maxCount) {\n this.setState({ value })\n }\n } else {\n this.setState({ value })\n }\n onChange && onChange(value, opt)\n\n if (mode !== 'multiple') {\n this.select && this.select.blur()\n }\n }\n\n onSearch = (v) => {\n const { showSearch, onSearch, filterOption, children: arr } = this.props\n let children = this.turnChildren(arr)\n if (showSearch && filterOption !== false) {\n // 须根据 filterOption(如有该自定义函数)手动 filter 搜索匹配的列表\n let filterChildren = null\n if (typeof filterOption === 'function') {\n filterChildren = children.filter((item) => filterOption(v, item))\n } else if (filterOption === undefined) {\n filterChildren = children.filter((item) => this.filterOption(v, item))\n }\n\n // 搜索框有值,去除disabled=true的children\n let newFilterChild = []\n filterChildren &&\n filterChildren.forEach((item, index) => {\n if (!item.props.disabled) {\n newFilterChild.push(item)\n }\n })\n filterChildren = newFilterChild\n\n // 设置下拉列表显示数据\n this.setState({ filterChildren: v === '' ? null : filterChildren }, () => {\n setTimeout(() => {\n // 搜索后需要重置滚动位置到0,防止上次 scrollTop 位置无数据\n if (filterChildren && this.scrollEle) {\n this.scrollTop = 0\n this.scrollEle.scrollTo(0, 0)\n }\n // 搜索成功后需要重新设置列表的总高度\n this.setSuperDrowDownMenu(true)\n }, 0)\n })\n }\n onSearch && onSearch(v)\n }\n\n filterOption = (v, option) => {\n // 自定义过滤对应的 option 属性配置\n const filterProps = this.props.optionFilterProp || 'value'\n return `${option.props[filterProps]}`.indexOf(v) >= 0\n }\n\n setDefaultScrollTop = (data) => {\n const { value } = this.state\n const { children: arr } = this.props\n const children = this.turnChildren(arr)\n\n let val = data || data === 0 ? data : value\n\n for (let i = 0; i < children.length; i++) {\n const item = children[i]\n const itemValue = item.props.value\n if (itemValue === val || (Array.isArray(val) && val.includes(itemValue))) {\n const targetScrollTop = i * this.ITEM_HEIGHT\n\n setTimeout(() => {\n if (!this.scrollEle) {\n this.addEvent()\n }\n this.scrollEle && this.scrollEle.scrollTo(0, targetScrollTop)\n }, 100)\n return\n }\n }\n }\n\n removeEvent = () => {\n if (!this.scrollEle) return\n this.scrollEle.removeEventListener('mousedown', this.preventEvent, false)\n this.scrollEle.removeEventListener('scroll', this.onScroll, false)\n if (!this.inputEle) return\n this.inputEle.removeEventListener('keydown', this.onKeyDown, false)\n }\n\n render() {\n const { maxWidth, selectWidth } = this.state\n let { dropdownStyle, optionLabelProp, dropdownClassName, placeholder = defaultPlacehlder, capitalize, ...props } =\n this.props\n\n this.allList = this.getUseChildrenList()\n\n this.allHeight = this.allList.length * this.ITEM_HEIGHT || 100\n const { startIndex, endIndex } = this.getStartAndEndIndex()\n\n let dynamicWidth = maxWidth\n if (this.allList.length === 0 || maxWidth < selectWidth) {\n dynamicWidth = selectWidth\n }\n\n dropdownStyle = {\n maxHeight: `${DROPDOWN_HEIGHT}px`,\n ...dropdownStyle,\n overflow: 'auto',\n position: 'relative',\n maxWidth: dynamicWidth,\n }\n\n const { value } = this.state\n // 判断处于 antd Form 中时不自动设置 value\n const _props = { ...props }\n // 先删除 value,再手动赋值,防止空 value 影响 placeholder\n delete _props.value\n\n // value 为空字符会隐藏 placeholder,改为 undefined\n if (typeof value === 'string' && !value) {\n _props.value = undefined\n } else {\n _props.value = value\n }\n\n optionLabelProp = optionLabelProp || 'children'\n return (\n <Select\n {..._props}\n id={this.id}\n placeholder={capitalizeFirstLetter(placeholder, capitalize)}\n onSearch={this.onSearch}\n onChange={this.onChange}\n dropdownClassName={`${this.dropdownClassName} ${dropdownClassName || ''}`}\n optionLabelProp={optionLabelProp}\n dropdownStyle={dropdownStyle}\n onDropdownVisibleChange={this.onDropdownVisibleChange}\n onDeselect={this.onDeselect}\n ref={(ele) => (this.select = ele)}\n dropdownRender={(menu, props) => {\n if (_props.loading) {\n return <Spin size=\"small\" style={{ marginLeft: 8 }} />\n }\n if (this.allList.length === 0) {\n return (\n <div className=\"tntd-select-empty-container\">\n <Empty image={Empty.PRESENTED_IMAGE_SIMPLE} />\n </div>\n )\n }\n\n return (\n <DropDownWrap\n {...{\n startIndex,\n endIndex,\n allHeight: this.allHeight,\n menu,\n itemHeight: this.ITEM_HEIGHT,\n }}\n ref={(ele) => {\n this.wrap = ele\n }}\n />\n )\n }}\n >\n {this.allList}\n </Select>\n )\n }\n}\n\nSuperSelect.Option = Option\n\nexport default SuperSelect\n"]}
@@ -0,0 +1,13 @@
1
+ export default VirtualTree;
2
+ declare function VirtualTree({ value, onChange, treeDefaultExpandAll, fieldNames, treeExpandedKeys, showSearch, treeData, renderItem }: {
3
+ value: any;
4
+ onChange: any;
5
+ treeDefaultExpandAll: any;
6
+ fieldNames: any;
7
+ treeExpandedKeys: any;
8
+ showSearch: any;
9
+ treeData: any;
10
+ renderItem: any;
11
+ }): React.JSX.Element;
12
+ import React from "react";
13
+ //# sourceMappingURL=VirtualTree.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"VirtualTree.d.ts","sourceRoot":"","sources":["../../src/tntd-virtual-tree-select/VirtualTree.jsx"],"names":[],"mappings":";AAgBA;;;;;;;;;sBA2GC"}
@@ -0,0 +1,155 @@
1
+ "use strict";
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); }
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports["default"] = void 0;
8
+ var _react = _interopRequireWildcard(require("react"));
9
+ var _rcVirtualList = _interopRequireDefault(require("rc-virtual-list"));
10
+ var _icon = _interopRequireDefault(require("../icon"));
11
+ var _ellipsis = _interopRequireDefault(require("../ellipsis"));
12
+ var _empty = _interopRequireDefault(require("../empty"));
13
+ var _input = _interopRequireDefault(require("../input"));
14
+ var _utils = require("./utils");
15
+ require("./tree.less");
16
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
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; }
19
+ function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }
20
+ function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
21
+ function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); }
22
+ function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }
23
+ function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
24
+ 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."); }
25
+ function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
26
+ function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
27
+ function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t["return"] && (u = t["return"](), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }
28
+ function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; } /*
29
+ * @Descripttion: 最简单的tree下拉框,增加了虚拟滚动
30
+ * @Author: 郑泳健
31
+ * @Date: 2024-07-31 14:46:55
32
+ * @LastEditors: 郑泳健
33
+ * @LastEditTime: 2024-08-05 15:58:47
34
+ */
35
+ var VirtualTree = function VirtualTree(_ref) {
36
+ var value = _ref.value,
37
+ onChange = _ref.onChange,
38
+ treeDefaultExpandAll = _ref.treeDefaultExpandAll,
39
+ fieldNames = _ref.fieldNames,
40
+ treeExpandedKeys = _ref.treeExpandedKeys,
41
+ showSearch = _ref.showSearch,
42
+ treeData = _ref.treeData,
43
+ renderItem = _ref.renderItem;
44
+ var ref = _react["default"].useRef(null);
45
+ // 展开的节点列表
46
+ var _useState = (0, _react.useState)([]),
47
+ _useState2 = _slicedToArray(_useState, 2),
48
+ expandedKeys = _useState2[0],
49
+ setExpandedKeys = _useState2[1];
50
+ var _useState3 = (0, _react.useState)([]),
51
+ _useState4 = _slicedToArray(_useState3, 2),
52
+ choosedValue = _useState4[0],
53
+ setChoosedValue = _useState4[1];
54
+ var _useState5 = (0, _react.useState)(undefined),
55
+ _useState6 = _slicedToArray(_useState5, 2),
56
+ filterKey = _useState6[0],
57
+ setFilterKey = _useState6[1];
58
+ (0, _react.useEffect)(function () {
59
+ if (!['', null, undefined].includes(value)) {
60
+ setChoosedValue(value);
61
+ } else {
62
+ setChoosedValue(undefined);
63
+ }
64
+ }, [value]);
65
+ /** 给每个节点增加属性keys,值为其下面所有节点的集合 */
66
+ var treeDataWithKeys = (0, _react.useMemo)(function () {
67
+ return (0, _utils.addTreeNodeKeys)(treeData, fieldNames);
68
+ }, [treeData, fieldNames]);
69
+ var mergeTreeDefaultExpandAll = (0, _react.useMemo)(function () {
70
+ if (Array.isArray(treeExpandedKeys) && treeExpandedKeys.length) {
71
+ return false;
72
+ }
73
+ return treeDefaultExpandAll;
74
+ }, [treeDefaultExpandAll, treeExpandedKeys]);
75
+ /** 获取到所有展开的节点,因为treeDataWithKeys可能传入的是最后一级 */
76
+ (0, _react.useEffect)(function () {
77
+ var transTreeExpandedKeys = Array.isArray(treeExpandedKeys) ? treeExpandedKeys : [];
78
+ if (value) {
79
+ transTreeExpandedKeys = [].concat(_toConsumableArray(treeExpandedKeys), [value]);
80
+ }
81
+ var _expandedKeys = (0, _utils.getFullExpandedKeys)(treeDataWithKeys, transTreeExpandedKeys, mergeTreeDefaultExpandAll);
82
+ setExpandedKeys(_expandedKeys);
83
+ }, [treeDataWithKeys, treeExpandedKeys, mergeTreeDefaultExpandAll, value]);
84
+ /** 最终渲染的数据 */
85
+ var renderData = (0, _react.useMemo)(function () {
86
+ return (0, _utils.flatTreeData)(treeDataWithKeys, filterKey, expandedKeys);
87
+ }, [treeDataWithKeys, filterKey, expandedKeys]);
88
+ /** 切换展开/收起 */
89
+ var handleToggle = function handleToggle(item) {
90
+ var _ref2 = item || {},
91
+ value = _ref2.value;
92
+ var bool = Array.isArray(expandedKeys) ? expandedKeys.includes(value) : false;
93
+ if (bool) {
94
+ var list = Array.isArray(expandedKeys) ? expandedKeys.filter(function (i) {
95
+ return i !== value;
96
+ }) : [];
97
+ setExpandedKeys(list);
98
+ } else {
99
+ setExpandedKeys([].concat(_toConsumableArray(expandedKeys), [value]));
100
+ }
101
+ };
102
+ var defaultRenderItem = function defaultRenderItem(item, expandedKeys) {
103
+ return _react["default"].createElement(_ellipsis["default"], {
104
+ title: item.title,
105
+ widthLimit: '100%'
106
+ });
107
+ };
108
+ var handleChange = function handleChange(_value) {
109
+ setChoosedValue(_value);
110
+ onChange === null || onChange === void 0 ? void 0 : onChange(_value);
111
+ };
112
+ var handleInput = function handleInput(e) {
113
+ var _filterValue = e.target.value;
114
+ setFilterKey(_filterValue);
115
+ };
116
+ return _react["default"].createElement("div", {
117
+ className: 'tntd-tree-select'
118
+ }, showSearch && Array.isArray(treeData) && !!treeData.length ? _react["default"].createElement(_input["default"], {
119
+ onChange: handleInput,
120
+ allowClear: true
121
+ }) : '', !Array.isArray(renderData) || !renderData.length ? _react["default"].createElement(_empty["default"], {
122
+ size: 'small'
123
+ }) : _react["default"].createElement(_rcVirtualList["default"], {
124
+ ref: ref,
125
+ height: 300,
126
+ itemHeight: 44,
127
+ data: renderData
128
+ }, function (item) {
129
+ var level = item.level,
130
+ children = item.children;
131
+ var bool = expandedKeys.includes(item.value);
132
+ return _react["default"].createElement("div", {
133
+ className: "tntd-tree-select-item",
134
+ style: {
135
+ paddingLeft: level * 18
136
+ }
137
+ }, _react["default"].createElement("div", {
138
+ style: {
139
+ width: 18,
140
+ paddingLeft: 3
141
+ }
142
+ }, Array.isArray(children) && !!children.length ? _react["default"].createElement(_icon["default"], {
143
+ type: bool ? 'caret-down' : 'caret-right',
144
+ onClick: function onClick() {
145
+ return handleToggle(item);
146
+ }
147
+ }) : _react["default"].createElement(_icon["default"], null)), _react["default"].createElement("div", {
148
+ className: "tntd-tree-select-item-title ".concat(choosedValue === item.value ? 'tntd-tree-select-item-title_active' : ''),
149
+ onClick: function onClick() {
150
+ return handleChange(item.value);
151
+ }
152
+ }, renderItem ? renderItem(item, expandedKeys) : defaultRenderItem(item, expandedKeys)));
153
+ }));
154
+ };
155
+ var _default = exports["default"] = VirtualTree;