tdesign-react 0.37.2-alpha.2 → 0.37.2-alpha.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/tdesign.css +23 -0
- package/dist/tdesign.css.map +1 -1
- package/dist/tdesign.js +277 -41
- package/dist/tdesign.js.map +1 -1
- package/dist/tdesign.min.css +1 -1
- package/dist/tdesign.min.css.map +1 -1
- package/dist/tdesign.min.js +3 -3
- package/dist/tdesign.min.js.map +1 -1
- package/{esm/_chunks/dep-b0e383a7.js → es/_chunks/dep-4bc86630.js} +1 -1
- package/{esm/_chunks/dep-b0e383a7.js.map → es/_chunks/dep-4bc86630.js.map} +1 -1
- package/es/_chunks/{dep-890db007.js → dep-63330981.js} +1 -1
- package/es/_chunks/{dep-890db007.js.map → dep-63330981.js.map} +1 -1
- package/{esm/_chunks/dep-c6af222f.js → es/_chunks/dep-a7ee72fa.js} +1 -1
- package/es/_chunks/{dep-c6af222f.js.map → dep-a7ee72fa.js.map} +1 -1
- package/es/avatar/AvararGroup.js +1 -1
- package/es/avatar/Avatar.js +1 -1
- package/es/avatar/index.js +1 -1
- package/es/calendar/Calendar.js +1 -1
- package/es/calendar/index.js +1 -1
- package/es/cascader/Cascader.js +1 -1
- package/es/cascader/CascaderPanel.js +1 -1
- package/es/cascader/components/Item.js +1 -1
- package/es/cascader/components/Panel.js +1 -1
- package/es/cascader/index.js +1 -1
- package/es/checkbox/Checkbox.js +1 -1
- package/es/checkbox/CheckboxGroup.js +1 -1
- package/es/checkbox/index.js +1 -1
- package/es/color-picker/ColorPicker.js +1 -1
- package/es/color-picker/ColorPickerPanel.js +1 -1
- package/es/color-picker/components/panel/header.js +1 -1
- package/es/color-picker/components/panel/index.js +1 -1
- package/es/color-picker/components/panel/index.js.map +1 -1
- package/es/color-picker/index.js +1 -1
- package/es/date-picker/DatePicker.js +1 -0
- package/es/date-picker/DatePicker.js.map +1 -1
- package/es/date-picker/DatePickerPanel.js +1 -0
- package/es/date-picker/DatePickerPanel.js.map +1 -1
- package/es/date-picker/DateRangePicker.js +3 -2
- package/es/date-picker/DateRangePicker.js.map +1 -1
- package/es/date-picker/DateRangePickerPanel.js +1 -0
- package/es/date-picker/DateRangePickerPanel.js.map +1 -1
- package/es/date-picker/hooks/useFormat.js +28 -0
- package/es/date-picker/hooks/useFormat.js.map +1 -1
- package/es/date-picker/hooks/useRangeValue.d.ts +6 -1
- package/es/date-picker/hooks/useRangeValue.js +7 -9
- package/es/date-picker/hooks/useRangeValue.js.map +1 -1
- package/es/date-picker/hooks/useSingle.d.ts +6 -2
- package/es/date-picker/hooks/useSingleValue.d.ts +6 -2
- package/es/date-picker/hooks/useSingleValue.js.map +1 -1
- package/es/date-picker/hooks/useTableData.js +3 -1
- package/es/date-picker/hooks/useTableData.js.map +1 -1
- package/es/date-picker/panel/PanelContent.js +2 -1
- package/es/date-picker/panel/PanelContent.js.map +1 -1
- package/es/date-picker/type.d.ts +2 -2
- package/es/form/Form.js +1 -1
- package/es/form/FormItem.js +1 -1
- package/es/form/index.js +1 -1
- package/es/form/useInitialData.js +1 -1
- package/es/hooks/useControlled.d.ts +6 -1
- package/es/hooks/useControlled.js +2 -2
- package/es/hooks/useControlled.js.map +1 -1
- package/es/index.d.ts +1 -0
- package/es/index.js +8 -3
- package/es/index.js.map +1 -1
- package/es/radio/Radio.js +1 -1
- package/es/radio/RadioGroup.js +1 -1
- package/es/radio/index.js +1 -1
- package/es/rate/Rate.d.ts +9 -0
- package/es/rate/Rate.js +249 -0
- package/es/rate/Rate.js.map +1 -0
- package/es/rate/defaultProps.js +3 -2
- package/es/rate/defaultProps.js.map +1 -1
- package/es/rate/index.d.ts +10 -0
- package/es/rate/index.js +88 -0
- package/es/rate/index.js.map +1 -0
- package/es/rate/style/css.d.ts +1 -0
- package/es/rate/style/css.js +1 -0
- package/es/rate/style/index.css +22 -0
- package/es/rate/style/index.d.ts +1 -0
- package/es/rate/style/index.js +7 -0
- package/es/rate/style/index.js.map +1 -0
- package/es/rate/type.d.ts +1 -1
- package/es/select/base/Select.js +29 -29
- package/es/select/base/Select.js.map +1 -1
- package/es/select/defaultProps.js +0 -2
- package/es/select/defaultProps.js.map +1 -1
- package/es/table/EnhancedTable.js +2 -2
- package/es/table/FilterController.js +2 -2
- package/es/table/PrimaryTable.js +2 -2
- package/es/table/hooks/useColumnController.js +1 -1
- package/es/table/hooks/useFilter.js +2 -2
- package/es/table/hooks/useRowSelect.js +2 -2
- package/es/table/index.js +2 -2
- package/es/transfer/Transfer.js +1 -1
- package/es/transfer/TransferList.js +1 -1
- package/es/transfer/index.js +1 -1
- package/es/tree/Tree.js +1 -1
- package/es/tree/TreeItem.js +1 -1
- package/es/tree/index.js +1 -1
- package/es/tree-select/TreeSelect.js +1 -1
- package/es/tree-select/index.js +1 -1
- package/{es/_chunks/dep-b0e383a7.js → esm/_chunks/dep-4bc86630.js} +1 -1
- package/{es/_chunks/dep-b0e383a7.js.map → esm/_chunks/dep-4bc86630.js.map} +1 -1
- package/esm/_chunks/{dep-890db007.js → dep-63330981.js} +1 -1
- package/esm/_chunks/{dep-890db007.js.map → dep-63330981.js.map} +1 -1
- package/{es/_chunks/dep-c6af222f.js → esm/_chunks/dep-a7ee72fa.js} +1 -1
- package/esm/_chunks/{dep-c6af222f.js.map → dep-a7ee72fa.js.map} +1 -1
- package/esm/_common/style/web/components/_index.less +0 -2
- package/esm/avatar/AvararGroup.js +1 -1
- package/esm/avatar/Avatar.js +1 -1
- package/esm/avatar/index.js +1 -1
- package/esm/calendar/Calendar.js +1 -1
- package/esm/calendar/index.js +1 -1
- package/esm/cascader/Cascader.js +1 -1
- package/esm/cascader/CascaderPanel.js +1 -1
- package/esm/cascader/components/Item.js +1 -1
- package/esm/cascader/components/Panel.js +1 -1
- package/esm/cascader/index.js +1 -1
- package/esm/checkbox/Checkbox.js +1 -1
- package/esm/checkbox/CheckboxGroup.js +1 -1
- package/esm/checkbox/index.js +1 -1
- package/esm/color-picker/ColorPicker.js +1 -1
- package/esm/color-picker/ColorPickerPanel.js +1 -1
- package/esm/color-picker/components/panel/header.js +1 -1
- package/esm/color-picker/components/panel/index.js +1 -1
- package/esm/color-picker/components/panel/index.js.map +1 -1
- package/esm/color-picker/index.js +1 -1
- package/esm/date-picker/DatePicker.js +1 -0
- package/esm/date-picker/DatePicker.js.map +1 -1
- package/esm/date-picker/DatePickerPanel.js +1 -0
- package/esm/date-picker/DatePickerPanel.js.map +1 -1
- package/esm/date-picker/DateRangePicker.js +3 -2
- package/esm/date-picker/DateRangePicker.js.map +1 -1
- package/esm/date-picker/DateRangePickerPanel.js +1 -0
- package/esm/date-picker/DateRangePickerPanel.js.map +1 -1
- package/esm/date-picker/hooks/useFormat.js +28 -0
- package/esm/date-picker/hooks/useFormat.js.map +1 -1
- package/esm/date-picker/hooks/useRangeValue.d.ts +6 -1
- package/esm/date-picker/hooks/useRangeValue.js +7 -9
- package/esm/date-picker/hooks/useRangeValue.js.map +1 -1
- package/esm/date-picker/hooks/useSingle.d.ts +6 -2
- package/esm/date-picker/hooks/useSingleValue.d.ts +6 -2
- package/esm/date-picker/hooks/useSingleValue.js.map +1 -1
- package/esm/date-picker/hooks/useTableData.js +3 -1
- package/esm/date-picker/hooks/useTableData.js.map +1 -1
- package/esm/date-picker/panel/PanelContent.js +2 -1
- package/esm/date-picker/panel/PanelContent.js.map +1 -1
- package/esm/date-picker/type.d.ts +2 -2
- package/esm/form/Form.js +1 -1
- package/esm/form/FormItem.js +1 -1
- package/esm/form/index.js +1 -1
- package/esm/form/useInitialData.js +1 -1
- package/esm/hooks/useControlled.d.ts +6 -1
- package/esm/hooks/useControlled.js +2 -2
- package/esm/hooks/useControlled.js.map +1 -1
- package/esm/index.d.ts +1 -0
- package/esm/index.js +8 -3
- package/esm/index.js.map +1 -1
- package/esm/radio/Radio.js +1 -1
- package/esm/radio/RadioGroup.js +1 -1
- package/esm/radio/index.js +1 -1
- package/esm/rate/Rate.d.ts +9 -0
- package/esm/rate/Rate.js +249 -0
- package/esm/rate/Rate.js.map +1 -0
- package/esm/rate/defaultProps.js +3 -2
- package/esm/rate/defaultProps.js.map +1 -1
- package/esm/rate/index.d.ts +10 -0
- package/esm/rate/index.js +88 -0
- package/esm/rate/index.js.map +1 -0
- package/esm/rate/style/css.d.ts +1 -0
- package/esm/rate/style/index.d.ts +1 -0
- package/esm/rate/style/index.js +1 -0
- package/esm/rate/type.d.ts +1 -1
- package/esm/select/base/Select.js +29 -29
- package/esm/select/base/Select.js.map +1 -1
- package/esm/select/defaultProps.js +0 -2
- package/esm/select/defaultProps.js.map +1 -1
- package/esm/table/EnhancedTable.js +2 -2
- package/esm/table/FilterController.js +2 -2
- package/esm/table/PrimaryTable.js +2 -2
- package/esm/table/hooks/useColumnController.js +1 -1
- package/esm/table/hooks/useFilter.js +2 -2
- package/esm/table/hooks/useRowSelect.js +2 -2
- package/esm/table/index.js +2 -2
- package/esm/transfer/Transfer.js +1 -1
- package/esm/transfer/TransferList.js +1 -1
- package/esm/transfer/index.js +1 -1
- package/esm/tree/Tree.js +1 -1
- package/esm/tree/TreeItem.js +1 -1
- package/esm/tree/index.js +1 -1
- package/esm/tree-select/TreeSelect.js +1 -1
- package/esm/tree-select/index.js +1 -1
- package/lib/_chunks/{dep-982647a2.js → dep-1976c9fc.js} +1 -1
- package/lib/_chunks/{dep-982647a2.js.map → dep-1976c9fc.js.map} +1 -1
- package/lib/_chunks/{dep-4991ff57.js → dep-28416881.js} +1 -1
- package/lib/_chunks/{dep-4991ff57.js.map → dep-28416881.js.map} +1 -1
- package/lib/_chunks/{dep-096a9275.js → dep-9d52544c.js} +1 -1
- package/lib/_chunks/{dep-096a9275.js.map → dep-9d52544c.js.map} +1 -1
- package/lib/avatar/AvararGroup.js +1 -1
- package/lib/avatar/Avatar.js +1 -1
- package/lib/avatar/index.js +1 -1
- package/lib/calendar/Calendar.js +1 -1
- package/lib/calendar/index.js +1 -1
- package/lib/cascader/Cascader.js +1 -1
- package/lib/cascader/CascaderPanel.js +1 -1
- package/lib/cascader/components/Item.js +1 -1
- package/lib/cascader/components/Panel.js +1 -1
- package/lib/cascader/index.js +1 -1
- package/lib/checkbox/Checkbox.js +1 -1
- package/lib/checkbox/CheckboxGroup.js +1 -1
- package/lib/checkbox/index.js +1 -1
- package/lib/color-picker/ColorPicker.js +1 -1
- package/lib/color-picker/ColorPickerPanel.js +1 -1
- package/lib/color-picker/components/panel/header.js +1 -1
- package/lib/color-picker/components/panel/index.js +1 -1
- package/lib/color-picker/components/panel/index.js.map +1 -1
- package/lib/color-picker/index.js +1 -1
- package/lib/date-picker/DatePicker.js +1 -0
- package/lib/date-picker/DatePicker.js.map +1 -1
- package/lib/date-picker/DatePickerPanel.js +1 -0
- package/lib/date-picker/DatePickerPanel.js.map +1 -1
- package/lib/date-picker/DateRangePicker.js +3 -2
- package/lib/date-picker/DateRangePicker.js.map +1 -1
- package/lib/date-picker/DateRangePickerPanel.js +1 -0
- package/lib/date-picker/DateRangePickerPanel.js.map +1 -1
- package/lib/date-picker/hooks/useFormat.js +28 -0
- package/lib/date-picker/hooks/useFormat.js.map +1 -1
- package/lib/date-picker/hooks/useRangeValue.d.ts +6 -1
- package/lib/date-picker/hooks/useRangeValue.js +6 -7
- package/lib/date-picker/hooks/useRangeValue.js.map +1 -1
- package/lib/date-picker/hooks/useSingle.d.ts +6 -2
- package/lib/date-picker/hooks/useSingleValue.d.ts +6 -2
- package/lib/date-picker/hooks/useSingleValue.js.map +1 -1
- package/lib/date-picker/hooks/useTableData.js +2 -0
- package/lib/date-picker/hooks/useTableData.js.map +1 -1
- package/lib/date-picker/panel/PanelContent.js +2 -1
- package/lib/date-picker/panel/PanelContent.js.map +1 -1
- package/lib/date-picker/type.d.ts +2 -2
- package/lib/form/Form.js +1 -1
- package/lib/form/FormItem.js +1 -1
- package/lib/form/index.js +1 -1
- package/lib/form/useInitialData.js +1 -1
- package/lib/hooks/useControlled.d.ts +6 -1
- package/lib/hooks/useControlled.js +2 -2
- package/lib/hooks/useControlled.js.map +1 -1
- package/lib/index-lib.js +7 -3
- package/lib/index-lib.js.map +1 -1
- package/lib/index.d.ts +1 -0
- package/lib/index.js +7 -3
- package/lib/index.js.map +1 -1
- package/lib/radio/Radio.js +1 -1
- package/lib/radio/RadioGroup.js +1 -1
- package/lib/radio/index.js +1 -1
- package/lib/rate/Rate.d.ts +9 -0
- package/lib/rate/Rate.js +249 -0
- package/lib/rate/Rate.js.map +1 -0
- package/lib/rate/defaultProps.js +3 -2
- package/lib/rate/defaultProps.js.map +1 -1
- package/lib/rate/index.d.ts +10 -0
- package/lib/rate/index.js +83 -0
- package/lib/rate/index.js.map +1 -0
- package/lib/rate/style/css.d.ts +1 -0
- package/lib/rate/style/index.d.ts +1 -0
- package/lib/rate/type.d.ts +1 -1
- package/lib/select/base/Select.js +29 -29
- package/lib/select/base/Select.js.map +1 -1
- package/lib/select/defaultProps.js +0 -2
- package/lib/select/defaultProps.js.map +1 -1
- package/lib/table/EnhancedTable.js +2 -2
- package/lib/table/FilterController.js +2 -2
- package/lib/table/PrimaryTable.js +2 -2
- package/lib/table/hooks/useColumnController.js +1 -1
- package/lib/table/hooks/useFilter.js +2 -2
- package/lib/table/hooks/useRowSelect.js +2 -2
- package/lib/table/index.js +2 -2
- package/lib/transfer/Transfer.js +1 -1
- package/lib/transfer/TransferList.js +1 -1
- package/lib/transfer/index.js +1 -1
- package/lib/tree/Tree.js +1 -1
- package/lib/tree/TreeItem.js +1 -1
- package/lib/tree/index.js +1 -1
- package/lib/tree-select/TreeSelect.js +1 -1
- package/lib/tree-select/index.js +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Select.js","sources":["../../../src/select/base/Select.tsx"],"sourcesContent":["import React, { useState, useEffect, Ref, useMemo, useCallback, useRef } from 'react';\nimport classNames from 'classnames';\nimport isFunction from 'lodash/isFunction';\nimport get from 'lodash/get';\nimport useControlled from '../../hooks/useControlled';\nimport { useLocaleReceiver } from '../../locale/LocalReceiver';\nimport useConfig from '../../_util/useConfig';\nimport forwardRefWithStatics from '../../_util/forwardRefWithStatics';\nimport { getSelectValueArr, getValueToOption } from '../util/helper';\nimport noop from '../../_util/noop';\n\nimport FakeArrow from '../../common/FakeArrow';\nimport Loading from '../../loading';\nimport SelectInput from '../../select-input';\nimport Option from './Option';\nimport OptionGroup from './OptionGroup';\nimport PopupContent from './PopupContent';\nimport Tag from '../../tag';\n\nimport { TdSelectProps, TdOptionProps, SelectOption, SelectValueChangeTrigger } from '../type';\nimport { StyledProps } from '../../common';\nimport { selectDefaultProps } from '../defaultProps';\n\nexport interface SelectProps extends TdSelectProps, StyledProps {\n // 子节点\n children?: React.ReactNode;\n}\n\ntype OptionsType = TdOptionProps[];\n\nconst Select = forwardRefWithStatics(\n (props: SelectProps, ref: Ref<HTMLDivElement>) => {\n // 国际化文本初始化\n const [local, t] = useLocaleReceiver('select');\n const emptyText = t(local.loadingText);\n\n const {\n readonly,\n bordered,\n borderless,\n autoWidth,\n creatable,\n filter,\n loadingText = emptyText,\n max,\n popupProps,\n popupVisible,\n onPopupVisibleChange,\n reserveKeyword,\n className,\n style,\n disabled,\n size,\n multiple,\n placeholder,\n clearable,\n prefixIcon,\n options,\n filterable,\n loading,\n onFocus,\n onBlur,\n onClear = noop,\n onCreate,\n onRemove,\n onSearch,\n empty,\n valueType,\n keys,\n children,\n collapsedItems,\n minCollapsedNum,\n valueDisplay,\n onEnter,\n onVisibleChange,\n showArrow,\n inputProps,\n panelBottomContent,\n panelTopContent,\n selectInputProps,\n tagInputProps,\n tagProps,\n } = props;\n\n const selectPopupRef = useRef();\n\n const [value, onChange] = useControlled(props, 'value', props.onChange);\n const { classPrefix } = useConfig();\n const { overlayClassName, ...restPopupProps } = popupProps || {};\n\n const name = `${classPrefix}-select`; // t-select\n\n const [showPopup, setShowPopup] = useState(popupVisible || false);\n const [inputValue, onInputChange] = useControlled(props, 'inputValue', props.onInputChange);\n const [currentOptions, setCurrentOptions] = useState([]);\n const [tmpPropOptions, setTmpPropOptions] = useState([]);\n const [valueToOption, setValueToOption] = useState({});\n const [selectedOptions, setSelectedOptions] = useState([]);\n\n // 处理设置 option 的逻辑\n useEffect(() => {\n if (keys) {\n // 如果有定制 keys 先做转换\n const transformedOptions = options?.map((option) => ({\n ...option,\n value: get(option, keys?.value || 'value'),\n label: get(option, keys?.label || 'label'),\n }));\n setCurrentOptions(transformedOptions);\n setTmpPropOptions(transformedOptions);\n } else {\n setCurrentOptions(options);\n setTmpPropOptions(options);\n }\n setValueToOption(getValueToOption(children, options, keys) || {});\n }, [options, keys, children]);\n\n // 同步 value 对应的 options\n useEffect(() => {\n setSelectedOptions((oldSelectedOptions) => {\n const valueKey = keys?.value || 'value';\n const labelKey = keys?.label || 'label';\n if (Array.isArray(value)) {\n return value\n .map((item) => {\n if (valueType === 'value') {\n return (\n valueToOption[item as string | number] ||\n oldSelectedOptions.find((option) => get(option, valueKey) === item) || {\n [valueKey]: item,\n [labelKey]: item,\n }\n );\n }\n return item;\n })\n .filter(Boolean);\n }\n\n if (value !== undefined && value !== null) {\n if (valueType === 'value') {\n return [\n valueToOption[value as string | number] ||\n oldSelectedOptions.find((option) => get(option, valueKey) === value) || {\n [valueKey]: value,\n [labelKey]: value,\n },\n ].filter(Boolean);\n }\n return [value];\n }\n return [];\n });\n }, [value, keys, valueType, valueToOption]);\n\n const selectedLabel = useMemo(() => {\n if (multiple) {\n return selectedOptions.map((selectedOption) => get(selectedOption || {}, keys?.label || 'label') || '');\n }\n return get(selectedOptions[0] || {}, keys?.label || 'label') || undefined;\n }, [selectedOptions, keys, multiple]);\n\n const handleShowPopup = (visible: boolean) => {\n if (disabled) return;\n setShowPopup(visible);\n onVisibleChange?.(visible);\n visible && onInputChange('');\n };\n\n // 可以根据触发来源,自由定制标签变化时的筛选器行为\n const onTagChange = (_currentTags, context) => {\n const { trigger, index, item, e } = context;\n // backspace\n if (trigger === 'backspace') {\n e.stopPropagation();\n\n let closest = -1;\n let len = index;\n while (len >= 0) {\n if (!selectedOptions[len]?.disabled) {\n closest = len;\n break;\n }\n len -= 1;\n }\n if (closest < 0) {\n return;\n }\n const values = getSelectValueArr(value, value[closest], true, valueType, keys);\n onChange(values, { e, trigger });\n return;\n }\n\n if (trigger === 'clear') {\n e.stopPropagation();\n onChange([], { e, trigger });\n return;\n }\n\n if (trigger === 'tag-remove') {\n e.stopPropagation();\n const values = getSelectValueArr(value, value[index], true, valueType, keys);\n onChange(values, { e, trigger });\n if (isFunction(onRemove)) {\n onRemove({\n value: value[index],\n data: {\n label: item,\n value: value[index],\n },\n e,\n });\n }\n }\n };\n\n // 选中 Popup 某项\n const handleChange = (\n value: string | number,\n context: { e: React.MouseEvent; trigger: SelectValueChangeTrigger },\n ) => {\n const { e, trigger } = context;\n if (multiple) {\n !reserveKeyword && onInputChange('', { trigger: 'clear' });\n }\n if (creatable && isFunction(onCreate)) {\n if ((options as OptionsType).filter((option) => option.value === value).length === 0) {\n onCreate(value);\n }\n }\n onChange?.(value, { e, trigger });\n };\n\n // 处理filter逻辑\n const handleFilter = (value: string) => {\n let filteredOptions: OptionsType = [];\n if (!value) {\n setCurrentOptions(tmpPropOptions);\n return;\n }\n\n if (filter && isFunction(filter)) {\n // 如果有自定义的filter方法 使用自定义的filter方法\n if (Array.isArray(tmpPropOptions)) {\n filteredOptions = tmpPropOptions.filter((option) => filter(value, option));\n }\n } else if (Array.isArray(tmpPropOptions)) {\n const upperValue = value.toUpperCase();\n filteredOptions = tmpPropOptions.filter((option) => (option?.label || '').toUpperCase().includes(upperValue)); // 不区分大小写\n }\n\n if (creatable) {\n filteredOptions = filteredOptions.concat([{ label: value, value }]);\n }\n setCurrentOptions(filteredOptions);\n };\n\n // 处理输入框逻辑\n const handleInputChange = (value: string) => {\n onInputChange(value);\n if (value === undefined) return;\n\n if (isFunction(onSearch)) {\n onSearch(value);\n return;\n }\n };\n\n const onClearValue = (context) => {\n context.e.stopPropagation();\n if (Array.isArray(value)) {\n onChange([], context);\n } else {\n onChange(null, context);\n }\n onInputChange(undefined);\n onClear(context);\n };\n\n useEffect(() => {\n if (inputValue) {\n handleFilter(String(inputValue));\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [inputValue]);\n\n // 渲染后置图标\n const renderSuffixIcon = () => {\n if (loading) {\n return (\n <Loading className={classNames(`${name}__right-icon`, `${name}__active-icon`)} loading={true} size=\"small\" />\n );\n }\n\n return (\n showArrow && <FakeArrow overlayClassName={`${name}__right-icon`} isActive={showPopup} disabled={disabled} />\n );\n };\n\n // 渲染主体内容\n const renderContent = () => {\n const popupContentProps = {\n onChange: handleChange,\n value,\n className,\n size,\n multiple,\n showPopup,\n setShowPopup,\n options: currentOptions,\n empty,\n max,\n loadingText,\n loading,\n valueType,\n keys,\n panelBottomContent,\n panelTopContent,\n };\n return (\n <PopupContent {...popupContentProps} ref={selectPopupRef}>\n {children}\n </PopupContent>\n );\n };\n\n const renderValueDisplay = () => {\n if (!valueDisplay) {\n if (!multiple) {\n if (typeof selectedLabel !== 'string') {\n return selectedLabel;\n }\n return '';\n }\n return ({ value: val }) =>\n val.slice(0, minCollapsedNum ? minCollapsedNum : val.length).map((v: string, key: number) => {\n const filterOption: SelectOption & { disabled?: boolean } = options?.find((option) => option.label === v);\n return (\n <Tag\n key={key}\n onClose={({ e }) => {\n e.stopPropagation();\n const values = getSelectValueArr(value, value[key], true, valueType, keys);\n onChange(values, null);\n return;\n }}\n closable={!filterOption?.disabled}\n >\n {v}\n </Tag>\n );\n });\n }\n if (typeof valueDisplay === 'string') {\n return valueDisplay;\n }\n if (multiple) {\n return ({ onClose }) => valueDisplay({ value: selectedLabel, onClose });\n }\n return selectedLabel.length ? (valueDisplay({ value: selectedLabel[0], onClose: noop }) as string) : '';\n };\n\n const renderCollapsedItems = useMemo(\n () =>\n collapsedItems\n ? () =>\n collapsedItems({\n value: selectedLabel,\n collapsedSelectedItems: selectedLabel.slice(minCollapsedNum, selectedLabel.length),\n count: selectedLabel.length - minCollapsedNum,\n })\n : null,\n [selectedLabel, collapsedItems, minCollapsedNum],\n );\n\n // 将第一个选中的 option 置于列表可见范围的最后一位\n const updateScrollTop = useCallback(\n (content: HTMLDivElement) => {\n if (!selectPopupRef?.current) {\n return;\n }\n const firstSelectedNode: HTMLDivElement = (selectPopupRef?.current as HTMLUListElement).querySelector(\n `.${classPrefix}-is-selected`,\n );\n if (firstSelectedNode && content) {\n const { paddingBottom } = getComputedStyle(firstSelectedNode);\n const { marginBottom } = getComputedStyle(content);\n const elementBottomHeight = parseInt(paddingBottom, 10) + parseInt(marginBottom, 10);\n // 小于0时不需要特殊处理,会被设为0\n const updateValue =\n firstSelectedNode.offsetTop -\n content.offsetTop -\n (content.clientHeight - firstSelectedNode.clientHeight) +\n elementBottomHeight;\n // eslint-disable-next-line no-param-reassign\n content.scrollTop = updateValue;\n }\n },\n [classPrefix],\n );\n\n return (\n <div className={classNames(`${name}__wrap`, className)} style={style}>\n <SelectInput\n autoWidth={!style?.width && autoWidth}\n className={name}\n ref={ref}\n readonly={readonly}\n allowInput={(filterable ?? local.filterable) || isFunction(filter)}\n multiple={multiple}\n value={selectedLabel}\n valueDisplay={renderValueDisplay()}\n clearable={clearable}\n disabled={disabled}\n borderless={borderless || !bordered}\n label={prefixIcon}\n suffixIcon={renderSuffixIcon()}\n panel={renderContent()}\n placeholder={!multiple && showPopup && selectedLabel ? selectedLabel : placeholder || t(local.placeholder)}\n inputValue={showPopup ? inputValue : ''}\n tagInputProps={{\n autoWidth: true,\n ...tagInputProps,\n }}\n tagProps={tagProps}\n inputProps={{\n size,\n ...inputProps,\n }}\n minCollapsedNum={minCollapsedNum}\n collapsedItems={renderCollapsedItems}\n popupProps={{\n overlayClassName: [`${name}__dropdown`, ['narrow-scrollbar'], overlayClassName],\n ...restPopupProps,\n }}\n popupVisible={showPopup}\n onPopupVisibleChange={onPopupVisibleChange || handleShowPopup}\n onTagChange={onTagChange}\n onInputChange={handleInputChange}\n onFocus={onFocus}\n onEnter={onEnter}\n onBlur={onBlur}\n onClear={(context) => {\n onClearValue(context);\n }}\n updateScrollTop={updateScrollTop}\n {...selectInputProps}\n ></SelectInput>\n </div>\n );\n },\n {\n Option,\n OptionGroup,\n },\n);\n\nSelect.displayName = 'Select';\nSelect.defaultProps = selectDefaultProps;\n\nexport default Select;\n"],"names":["Select","forwardRefWithStatics","props","ref","useLocaleReceiver","local","t","emptyText","loadingText","readonly","bordered","borderless","autoWidth","creatable","filter","max","popupProps","popupVisible","onPopupVisibleChange","reserveKeyword","className","style","disabled","size","multiple","placeholder","clearable","prefixIcon","options","filterable","loading","onFocus","onBlur","onClear","noop","onCreate","onRemove","onSearch","empty","valueType","keys","children","collapsedItems","minCollapsedNum","valueDisplay","onEnter","onVisibleChange","showArrow","inputProps","panelBottomContent","panelTopContent","selectInputProps","tagInputProps","tagProps","selectPopupRef","useRef","useControlled","onChange","value","useConfig","classPrefix","overlayClassName","restPopupProps","name","useState","showPopup","setShowPopup","onInputChange","inputValue","currentOptions","setCurrentOptions","tmpPropOptions","setTmpPropOptions","valueToOption","setValueToOption","selectedOptions","setSelectedOptions","useEffect","transformedOptions","map","option","get","label","getValueToOption","oldSelectedOptions","valueKey","labelKey","Array","isArray","item","find","Boolean","selectedLabel","useMemo","selectedOption","handleShowPopup","visible","onTagChange","_currentTags","context","trigger","index","e","stopPropagation","closest","len","values","getSelectValueArr","isFunction","data","handleChange","value2","length","handleFilter","filteredOptions","upperValue","toUpperCase","includes","concat","handleInputChange","onClearValue","String","renderSuffixIcon","React","createElement","Loading","classNames","FakeArrow","isActive","renderContent","popupContentProps","PopupContent","renderValueDisplay","val","slice","v","key","filterOption","Tag","onClose","closable","renderCollapsedItems","collapsedSelectedItems","count","updateScrollTop","useCallback","content","current","firstSelectedNode","querySelector","getComputedStyle","paddingBottom","marginBottom","elementBottomHeight","parseInt","updateValue","offsetTop","clientHeight","scrollTop","SelectInput","width","allowInput","suffixIcon","panel","Option","OptionGroup","displayName","defaultProps","selectDefaultProps"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Select.js","sources":["../../../src/select/base/Select.tsx"],"sourcesContent":["import React, { useState, useEffect, Ref, useMemo, useCallback, useRef } from 'react';\nimport classNames from 'classnames';\nimport isFunction from 'lodash/isFunction';\nimport get from 'lodash/get';\nimport useControlled from '../../hooks/useControlled';\nimport { useLocaleReceiver } from '../../locale/LocalReceiver';\nimport useConfig from '../../_util/useConfig';\nimport forwardRefWithStatics from '../../_util/forwardRefWithStatics';\nimport { getSelectValueArr, getValueToOption } from '../util/helper';\nimport noop from '../../_util/noop';\nimport FakeArrow from '../../common/FakeArrow';\nimport Loading from '../../loading';\nimport SelectInput from '../../select-input';\nimport Option from './Option';\nimport OptionGroup from './OptionGroup';\nimport PopupContent from './PopupContent';\nimport Tag from '../../tag';\nimport { TdSelectProps, TdOptionProps, SelectOption, SelectValueChangeTrigger } from '../type';\nimport { StyledProps } from '../../common';\nimport { selectDefaultProps } from '../defaultProps';\nimport { PopupVisibleChangeContext } from '../../popup';\n\nexport interface SelectProps extends TdSelectProps, StyledProps {\n // 子节点\n children?: React.ReactNode;\n}\n\ntype OptionsType = TdOptionProps[];\n\nconst Select = forwardRefWithStatics(\n (props: SelectProps, ref: Ref<HTMLDivElement>) => {\n // 国际化文本初始化\n const [local, t] = useLocaleReceiver('select');\n const emptyText = t(local.loadingText);\n\n const {\n readonly,\n bordered,\n borderless,\n autoWidth,\n creatable,\n filter,\n loadingText = emptyText,\n max,\n popupProps,\n reserveKeyword,\n className,\n style,\n disabled,\n size,\n multiple,\n placeholder,\n clearable,\n prefixIcon,\n options,\n filterable,\n loading,\n onFocus,\n onBlur,\n onClear = noop,\n onCreate,\n onRemove,\n onSearch,\n empty,\n valueType,\n keys,\n children,\n collapsedItems,\n minCollapsedNum,\n valueDisplay,\n onEnter,\n onVisibleChange,\n showArrow,\n inputProps,\n panelBottomContent,\n panelTopContent,\n selectInputProps,\n tagInputProps,\n tagProps,\n } = props;\n\n const selectPopupRef = useRef();\n\n const [value, onChange] = useControlled(props, 'value', props.onChange);\n const { classPrefix } = useConfig();\n const { overlayClassName, ...restPopupProps } = popupProps || {};\n\n const name = `${classPrefix}-select`; // t-select\n\n const [showPopup, setShowPopup] = useControlled(props, 'popupVisible', props.onPopupVisibleChange);\n const [inputValue, onInputChange] = useControlled(props, 'inputValue', props.onInputChange);\n const [currentOptions, setCurrentOptions] = useState([]);\n const [tmpPropOptions, setTmpPropOptions] = useState([]);\n const [valueToOption, setValueToOption] = useState({});\n const [selectedOptions, setSelectedOptions] = useState([]);\n\n // 处理设置 option 的逻辑\n useEffect(() => {\n if (keys) {\n // 如果有定制 keys 先做转换\n const transformedOptions = options?.map((option) => ({\n ...option,\n value: get(option, keys?.value || 'value'),\n label: get(option, keys?.label || 'label'),\n }));\n setCurrentOptions(transformedOptions);\n setTmpPropOptions(transformedOptions);\n } else {\n setCurrentOptions(options);\n setTmpPropOptions(options);\n }\n setValueToOption(getValueToOption(children, options, keys) || {});\n }, [options, keys, children]);\n\n // 同步 value 对应的 options\n useEffect(() => {\n setSelectedOptions((oldSelectedOptions) => {\n const valueKey = keys?.value || 'value';\n const labelKey = keys?.label || 'label';\n if (Array.isArray(value)) {\n return value\n .map((item) => {\n if (valueType === 'value') {\n return (\n valueToOption[item as string | number] ||\n oldSelectedOptions.find((option) => get(option, valueKey) === item) || {\n [valueKey]: item,\n [labelKey]: item,\n }\n );\n }\n return item;\n })\n .filter(Boolean);\n }\n\n if (value !== undefined && value !== null) {\n if (valueType === 'value') {\n return [\n valueToOption[value as string | number] ||\n oldSelectedOptions.find((option) => get(option, valueKey) === value) || {\n [valueKey]: value,\n [labelKey]: value,\n },\n ].filter(Boolean);\n }\n return [value];\n }\n return [];\n });\n }, [value, keys, valueType, valueToOption]);\n\n const selectedLabel = useMemo(() => {\n if (multiple) {\n return selectedOptions.map((selectedOption) => get(selectedOption || {}, keys?.label || 'label') || '');\n }\n return get(selectedOptions[0] || {}, keys?.label || 'label') || undefined;\n }, [selectedOptions, keys, multiple]);\n\n const handleShowPopup = (visible: boolean, ctx: PopupVisibleChangeContext) => {\n if (disabled) return;\n setShowPopup(visible, ctx);\n onVisibleChange?.(visible);\n visible && onInputChange('');\n };\n\n // 可以根据触发来源,自由定制标签变化时的筛选器行为\n const onTagChange = (_currentTags, context) => {\n const { trigger, index, item, e } = context;\n // backspace\n if (trigger === 'backspace') {\n e.stopPropagation();\n\n let closest = -1;\n let len = index;\n while (len >= 0) {\n if (!selectedOptions[len]?.disabled) {\n closest = len;\n break;\n }\n len -= 1;\n }\n if (closest < 0) {\n return;\n }\n const values = getSelectValueArr(value, value[closest], true, valueType, keys);\n onChange(values, { e, trigger });\n return;\n }\n\n if (trigger === 'clear') {\n e.stopPropagation();\n onChange([], { e, trigger });\n return;\n }\n\n if (trigger === 'tag-remove') {\n e.stopPropagation();\n const values = getSelectValueArr(value, value[index], true, valueType, keys);\n onChange(values, { e, trigger });\n if (isFunction(onRemove)) {\n onRemove({\n value: value[index],\n data: {\n label: item,\n value: value[index],\n },\n e,\n });\n }\n }\n };\n\n // 选中 Popup 某项\n const handleChange = (\n value: string | number,\n context: { e: React.MouseEvent; trigger: SelectValueChangeTrigger },\n ) => {\n const { e, trigger } = context;\n if (multiple) {\n !reserveKeyword && onInputChange('', { trigger: 'clear' });\n }\n if (creatable && isFunction(onCreate)) {\n if ((options as OptionsType).filter((option) => option.value === value).length === 0) {\n onCreate(value);\n }\n }\n onChange?.(value, { e, trigger });\n };\n\n // 处理filter逻辑\n const handleFilter = (value: string) => {\n let filteredOptions: OptionsType = [];\n if (!value) {\n setCurrentOptions(tmpPropOptions);\n return;\n }\n\n if (filter && isFunction(filter)) {\n // 如果有自定义的filter方法 使用自定义的filter方法\n if (Array.isArray(tmpPropOptions)) {\n filteredOptions = tmpPropOptions.filter((option) => filter(value, option));\n }\n } else if (Array.isArray(tmpPropOptions)) {\n const upperValue = value.toUpperCase();\n filteredOptions = tmpPropOptions.filter((option) => (option?.label || '').toUpperCase().includes(upperValue)); // 不区分大小写\n }\n\n if (creatable) {\n filteredOptions = filteredOptions.concat([{ label: value, value }]);\n }\n setCurrentOptions(filteredOptions);\n };\n\n // 处理输入框逻辑\n const handleInputChange = (value: string) => {\n onInputChange(value);\n if (value === undefined) return;\n\n if (isFunction(onSearch)) {\n onSearch(value);\n return;\n }\n };\n\n const onClearValue = (context) => {\n context.e.stopPropagation();\n if (Array.isArray(value)) {\n onChange([], context);\n } else {\n onChange(null, context);\n }\n onInputChange(undefined);\n onClear(context);\n };\n\n useEffect(() => {\n if (typeof inputValue !== 'undefined') {\n handleFilter(String(inputValue));\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [inputValue]);\n\n // 渲染后置图标\n const renderSuffixIcon = () => {\n if (loading) {\n return (\n <Loading className={classNames(`${name}__right-icon`, `${name}__active-icon`)} loading={true} size=\"small\" />\n );\n }\n\n return (\n showArrow && <FakeArrow overlayClassName={`${name}__right-icon`} isActive={showPopup} disabled={disabled} />\n );\n };\n\n // 渲染主体内容\n const renderContent = () => {\n const popupContentProps = {\n onChange: handleChange,\n value,\n className,\n size,\n multiple,\n showPopup,\n // popup弹出层内容只会在点击事件之后触发 并且无任何透传参数\n setShowPopup: (show) => handleShowPopup(show, {}),\n options: currentOptions,\n empty,\n max,\n loadingText,\n loading,\n valueType,\n keys,\n panelBottomContent,\n panelTopContent,\n };\n return (\n <PopupContent {...popupContentProps} ref={selectPopupRef}>\n {children}\n </PopupContent>\n );\n };\n\n const renderValueDisplay = () => {\n if (!valueDisplay) {\n if (!multiple) {\n if (typeof selectedLabel !== 'string') {\n return selectedLabel;\n }\n return '';\n }\n return ({ value: val }) =>\n val.slice(0, minCollapsedNum ? minCollapsedNum : val.length).map((v: string, key: number) => {\n const filterOption: SelectOption & { disabled?: boolean } = options?.find((option) => option.label === v);\n return (\n <Tag\n key={key}\n onClose={({ e }) => {\n e.stopPropagation();\n const values = getSelectValueArr(value, value[key], true, valueType, keys);\n onChange(values, null);\n return;\n }}\n closable={!filterOption?.disabled}\n >\n {v}\n </Tag>\n );\n });\n }\n if (typeof valueDisplay === 'string') {\n return valueDisplay;\n }\n if (multiple) {\n return ({ onClose }) => valueDisplay({ value: selectedLabel, onClose });\n }\n return selectedLabel.length ? (valueDisplay({ value: selectedLabel[0], onClose: noop }) as string) : '';\n };\n\n const renderCollapsedItems = useMemo(\n () =>\n collapsedItems\n ? () =>\n collapsedItems({\n value: selectedLabel,\n collapsedSelectedItems: selectedLabel.slice(minCollapsedNum, selectedLabel.length),\n count: selectedLabel.length - minCollapsedNum,\n })\n : null,\n [selectedLabel, collapsedItems, minCollapsedNum],\n );\n\n // 将第一个选中的 option 置于列表可见范围的最后一位\n const updateScrollTop = useCallback(\n (content: HTMLDivElement) => {\n if (!selectPopupRef?.current) {\n return;\n }\n const firstSelectedNode: HTMLDivElement = (selectPopupRef?.current as HTMLUListElement).querySelector(\n `.${classPrefix}-is-selected`,\n );\n if (firstSelectedNode && content) {\n const { paddingBottom } = getComputedStyle(firstSelectedNode);\n const { marginBottom } = getComputedStyle(content);\n const elementBottomHeight = parseInt(paddingBottom, 10) + parseInt(marginBottom, 10);\n // 小于0时不需要特殊处理,会被设为0\n const updateValue =\n firstSelectedNode.offsetTop -\n content.offsetTop -\n (content.clientHeight - firstSelectedNode.clientHeight) +\n elementBottomHeight;\n // eslint-disable-next-line no-param-reassign\n content.scrollTop = updateValue;\n }\n },\n [classPrefix],\n );\n\n return (\n <div className={classNames(`${name}__wrap`, className)} style={style}>\n <SelectInput\n autoWidth={!style?.width && autoWidth}\n className={name}\n ref={ref}\n readonly={readonly}\n allowInput={(filterable ?? local.filterable) || isFunction(filter)}\n multiple={multiple}\n value={selectedLabel}\n valueDisplay={renderValueDisplay()}\n clearable={clearable}\n disabled={disabled}\n borderless={borderless || !bordered}\n label={prefixIcon}\n suffixIcon={renderSuffixIcon()}\n panel={renderContent()}\n placeholder={!multiple && showPopup && selectedLabel ? selectedLabel : placeholder || t(local.placeholder)}\n inputValue={inputValue}\n tagInputProps={{\n autoWidth: true,\n ...tagInputProps,\n }}\n tagProps={tagProps}\n inputProps={{\n size,\n ...inputProps,\n }}\n minCollapsedNum={minCollapsedNum}\n collapsedItems={renderCollapsedItems}\n popupProps={{\n overlayClassName: [`${name}__dropdown`, ['narrow-scrollbar'], overlayClassName],\n ...restPopupProps,\n }}\n popupVisible={showPopup}\n onPopupVisibleChange={handleShowPopup}\n onTagChange={onTagChange}\n onInputChange={handleInputChange}\n onFocus={onFocus}\n onEnter={onEnter}\n onBlur={onBlur}\n onClear={(context) => {\n onClearValue(context);\n }}\n updateScrollTop={updateScrollTop}\n {...selectInputProps}\n ></SelectInput>\n </div>\n );\n },\n {\n Option,\n OptionGroup,\n },\n);\n\nSelect.displayName = 'Select';\nSelect.defaultProps = selectDefaultProps;\n\nexport default Select;\n"],"names":["Select","forwardRefWithStatics","props","ref","useLocaleReceiver","local","t","emptyText","loadingText","readonly","bordered","borderless","autoWidth","creatable","filter","max","popupProps","reserveKeyword","className","style","disabled","size","multiple","placeholder","clearable","prefixIcon","options","filterable","loading","onFocus","onBlur","onClear","noop","onCreate","onRemove","onSearch","empty","valueType","keys","children","collapsedItems","minCollapsedNum","valueDisplay","onEnter","onVisibleChange","showArrow","inputProps","panelBottomContent","panelTopContent","selectInputProps","tagInputProps","tagProps","selectPopupRef","useRef","useControlled","onChange","value","useConfig","classPrefix","overlayClassName","restPopupProps","name","onPopupVisibleChange","showPopup","setShowPopup","onInputChange","inputValue","useState","currentOptions","setCurrentOptions","tmpPropOptions","setTmpPropOptions","valueToOption","setValueToOption","selectedOptions","setSelectedOptions","useEffect","transformedOptions","map","option","get","label","getValueToOption","oldSelectedOptions","valueKey","labelKey","Array","isArray","item","find","Boolean","selectedLabel","useMemo","selectedOption","handleShowPopup","visible","ctx","onTagChange","_currentTags","context","trigger","index","e","stopPropagation","closest","len","values","getSelectValueArr","isFunction","data","handleChange","value2","length","handleFilter","filteredOptions","upperValue","toUpperCase","includes","concat","handleInputChange","onClearValue","String","renderSuffixIcon","React","createElement","Loading","classNames","FakeArrow","isActive","renderContent","popupContentProps","show","PopupContent","renderValueDisplay","val","slice","v","key","filterOption","Tag","onClose","closable","renderCollapsedItems","collapsedSelectedItems","count","updateScrollTop","useCallback","content","current","firstSelectedNode","querySelector","getComputedStyle","paddingBottom","marginBottom","elementBottomHeight","parseInt","updateValue","offsetTop","clientHeight","scrollTop","SelectInput","width","allowInput","suffixIcon","panel","popupVisible","Option","OptionGroup","displayName","defaultProps","selectDefaultProps"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"defaultProps.js","sources":["../../src/select/defaultProps.ts"],"sourcesContent":["/**\n * 该文件为脚本自动生成文件,请勿随意修改。如需修改请联系 PMC\n * */\n\nimport { TdOptionProps, TdOptionGroupProps, TdSelectProps } from './type';\n\nexport const optionDefaultProps: TdOptionProps = {};\n\nexport const optionGroupDefaultProps: TdOptionGroupProps = { divider: true };\n\nexport const selectDefaultProps: TdSelectProps = {\n autoWidth: false,\n bordered: true,\n borderless: false,\n clearable: false,\n creatable: false,\n loading: false,\n max: 0,\n minCollapsedNum: 0,\n multiple: false,\n
|
|
1
|
+
{"version":3,"file":"defaultProps.js","sources":["../../src/select/defaultProps.ts"],"sourcesContent":["/**\n * 该文件为脚本自动生成文件,请勿随意修改。如需修改请联系 PMC\n * */\n\nimport { TdOptionProps, TdOptionGroupProps, TdSelectProps } from './type';\n\nexport const optionDefaultProps: TdOptionProps = {};\n\nexport const optionGroupDefaultProps: TdOptionGroupProps = { divider: true };\n\nexport const selectDefaultProps: TdSelectProps = {\n autoWidth: false,\n bordered: true,\n borderless: false,\n clearable: false,\n creatable: false,\n loading: false,\n max: 0,\n minCollapsedNum: 0,\n multiple: false,\n readonly: false,\n reserveKeyword: false,\n showArrow: true,\n size: 'medium',\n valueType: 'value',\n};\n"],"names":["optionDefaultProps","optionGroupDefaultProps","divider","selectDefaultProps","autoWidth","bordered","borderless","clearable","creatable","loading","max","minCollapsedNum","multiple","readonly","reserveKeyword","showArrow","size","valueType"],"mappings":";;;;;;AAAO,IAAMA,kBAAkB,GAAG,GAA3B;AACA,IAAMC,uBAAuB,GAAG;AAAEC,EAAAA,OAAO,EAAE,IAAA;AAAX,EAAhC;AACA,IAAMC,kBAAkB,GAAG;AAChCC,EAAAA,SAAS,EAAE,KADqB;AAEhCC,EAAAA,QAAQ,EAAE,IAFsB;AAGhCC,EAAAA,UAAU,EAAE,KAHoB;AAIhCC,EAAAA,SAAS,EAAE,KAJqB;AAKhCC,EAAAA,SAAS,EAAE,KALqB;AAMhCC,EAAAA,OAAO,EAAE,KANuB;AAOhCC,EAAAA,GAAG,EAAE,CAP2B;AAQhCC,EAAAA,eAAe,EAAE,CARe;AAShCC,EAAAA,QAAQ,EAAE,KATsB;AAUhCC,EAAAA,QAAQ,EAAE,KAVsB;AAWhCC,EAAAA,cAAc,EAAE,KAXgB;AAYhCC,EAAAA,SAAS,EAAE,IAZqB;AAahCC,EAAAA,IAAI,EAAE,QAb0B;AAchCC,EAAAA,SAAS,EAAE,OAAA;AAdqB;;;;"}
|
|
@@ -204,7 +204,7 @@ import '../_chunks/dep-b9633972.js';
|
|
|
204
204
|
import '../_chunks/dep-8ef93358.js';
|
|
205
205
|
import '../_chunks/dep-0c51e3ee.js';
|
|
206
206
|
import '../checkbox/index.js';
|
|
207
|
-
import '../_chunks/dep-
|
|
207
|
+
import '../_chunks/dep-4bc86630.js';
|
|
208
208
|
import '../common/Check.js';
|
|
209
209
|
import '../checkbox/defaultProps.js';
|
|
210
210
|
import '../checkbox/style/css.js';
|
|
@@ -218,7 +218,7 @@ import '../_util/useSetState.js';
|
|
|
218
218
|
import './hooks/useRowExpand.js';
|
|
219
219
|
import './hooks/useRowSelect.js';
|
|
220
220
|
import '../radio/index.js';
|
|
221
|
-
import '../_chunks/dep-
|
|
221
|
+
import '../_chunks/dep-63330981.js';
|
|
222
222
|
import '../radio/defaultProps.js';
|
|
223
223
|
import '../radio/style/css.js';
|
|
224
224
|
import '../radio/type.js';
|
|
@@ -78,7 +78,7 @@ import '../_util/useWindowSize.js';
|
|
|
78
78
|
import '../popup/defaultProps.js';
|
|
79
79
|
import '../popup/style/css.js';
|
|
80
80
|
import '../popup/type.js';
|
|
81
|
-
import '../_chunks/dep-
|
|
81
|
+
import '../_chunks/dep-4bc86630.js';
|
|
82
82
|
import '../_util/forwardRefWithStatics.js';
|
|
83
83
|
import 'hoist-non-react-statics';
|
|
84
84
|
import '../common/Check.js';
|
|
@@ -89,7 +89,7 @@ import '../_chunks/dep-acdcb021.js';
|
|
|
89
89
|
import '../checkbox/defaultProps.js';
|
|
90
90
|
import '../checkbox/style/css.js';
|
|
91
91
|
import '../checkbox/type.js';
|
|
92
|
-
import '../_chunks/dep-
|
|
92
|
+
import '../_chunks/dep-63330981.js';
|
|
93
93
|
import '../_util/useCommonClassName.js';
|
|
94
94
|
import '../radio/defaultProps.js';
|
|
95
95
|
import '../radio/style/css.js';
|
package/es/table/PrimaryTable.js
CHANGED
|
@@ -210,7 +210,7 @@ import '../_chunks/dep-b9633972.js';
|
|
|
210
210
|
import '../_chunks/dep-8ef93358.js';
|
|
211
211
|
import '../_chunks/dep-0c51e3ee.js';
|
|
212
212
|
import '../checkbox/index.js';
|
|
213
|
-
import '../_chunks/dep-
|
|
213
|
+
import '../_chunks/dep-4bc86630.js';
|
|
214
214
|
import '../common/Check.js';
|
|
215
215
|
import '../checkbox/defaultProps.js';
|
|
216
216
|
import '../checkbox/style/css.js';
|
|
@@ -222,7 +222,7 @@ import '../_util/useDialogEsc.js';
|
|
|
222
222
|
import '../dialog/defaultProps.js';
|
|
223
223
|
import '../_util/useSetState.js';
|
|
224
224
|
import '../radio/index.js';
|
|
225
|
-
import '../_chunks/dep-
|
|
225
|
+
import '../_chunks/dep-63330981.js';
|
|
226
226
|
import '../radio/defaultProps.js';
|
|
227
227
|
import '../radio/style/css.js';
|
|
228
228
|
import '../radio/type.js';
|
|
@@ -41,7 +41,7 @@ import '../../_chunks/dep-c15f436a.js';
|
|
|
41
41
|
import '../../_chunks/dep-42f0ea3e.js';
|
|
42
42
|
import '../../_chunks/dep-e5f5ac1d.js';
|
|
43
43
|
import '../../_chunks/dep-f8c485f3.js';
|
|
44
|
-
import '../../_chunks/dep-
|
|
44
|
+
import '../../_chunks/dep-4bc86630.js';
|
|
45
45
|
import '../../_util/forwardRefWithStatics.js';
|
|
46
46
|
import 'hoist-non-react-statics';
|
|
47
47
|
import '../../common/Check.js';
|
|
@@ -95,7 +95,7 @@ import '../../popup/defaultProps.js';
|
|
|
95
95
|
import '../../popup/style/css.js';
|
|
96
96
|
import '../../popup/type.js';
|
|
97
97
|
import '../../checkbox/index.js';
|
|
98
|
-
import '../../_chunks/dep-
|
|
98
|
+
import '../../_chunks/dep-4bc86630.js';
|
|
99
99
|
import '../../_util/forwardRefWithStatics.js';
|
|
100
100
|
import 'hoist-non-react-statics';
|
|
101
101
|
import '../../common/Check.js';
|
|
@@ -106,7 +106,7 @@ import '../../checkbox/defaultProps.js';
|
|
|
106
106
|
import '../../checkbox/style/css.js';
|
|
107
107
|
import '../../checkbox/type.js';
|
|
108
108
|
import '../../radio/index.js';
|
|
109
|
-
import '../../_chunks/dep-
|
|
109
|
+
import '../../_chunks/dep-63330981.js';
|
|
110
110
|
import '../../_util/useCommonClassName.js';
|
|
111
111
|
import '../../radio/defaultProps.js';
|
|
112
112
|
import '../../radio/style/css.js';
|
|
@@ -44,7 +44,7 @@ import '../../_chunks/dep-04502b00.js';
|
|
|
44
44
|
import '../../_chunks/dep-995f30fb.js';
|
|
45
45
|
import '../../_chunks/dep-03939090.js';
|
|
46
46
|
import '../../_util/noop.js';
|
|
47
|
-
import '../../_chunks/dep-
|
|
47
|
+
import '../../_chunks/dep-4bc86630.js';
|
|
48
48
|
import '../../_util/forwardRefWithStatics.js';
|
|
49
49
|
import 'hoist-non-react-statics';
|
|
50
50
|
import '../../common/Check.js';
|
|
@@ -70,7 +70,7 @@ import '../../_chunks/dep-acdcb021.js';
|
|
|
70
70
|
import '../../checkbox/defaultProps.js';
|
|
71
71
|
import '../../checkbox/style/css.js';
|
|
72
72
|
import '../../checkbox/type.js';
|
|
73
|
-
import '../../_chunks/dep-
|
|
73
|
+
import '../../_chunks/dep-63330981.js';
|
|
74
74
|
import '../../_util/useCommonClassName.js';
|
|
75
75
|
import '../../radio/defaultProps.js';
|
|
76
76
|
import '../../_util/useMutationObserver.js';
|
package/es/table/index.js
CHANGED
|
@@ -206,7 +206,7 @@ import '../_chunks/dep-b9633972.js';
|
|
|
206
206
|
import '../_chunks/dep-8ef93358.js';
|
|
207
207
|
import '../_chunks/dep-0c51e3ee.js';
|
|
208
208
|
import '../checkbox/index.js';
|
|
209
|
-
import '../_chunks/dep-
|
|
209
|
+
import '../_chunks/dep-4bc86630.js';
|
|
210
210
|
import '../common/Check.js';
|
|
211
211
|
import '../checkbox/defaultProps.js';
|
|
212
212
|
import '../checkbox/style/css.js';
|
|
@@ -220,7 +220,7 @@ import '../_util/useSetState.js';
|
|
|
220
220
|
import './hooks/useRowExpand.js';
|
|
221
221
|
import './hooks/useRowSelect.js';
|
|
222
222
|
import '../radio/index.js';
|
|
223
|
-
import '../_chunks/dep-
|
|
223
|
+
import '../_chunks/dep-63330981.js';
|
|
224
224
|
import '../radio/defaultProps.js';
|
|
225
225
|
import '../radio/style/css.js';
|
|
226
226
|
import '../radio/type.js';
|
package/es/transfer/Transfer.js
CHANGED
|
@@ -82,7 +82,7 @@ import '../button/type.js';
|
|
|
82
82
|
import '../_chunks/dep-d9425a8a.js';
|
|
83
83
|
import '../_chunks/dep-4421a283.js';
|
|
84
84
|
import '../checkbox/index.js';
|
|
85
|
-
import '../_chunks/dep-
|
|
85
|
+
import '../_chunks/dep-4bc86630.js';
|
|
86
86
|
import '../_util/forwardRefWithStatics.js';
|
|
87
87
|
import 'hoist-non-react-statics';
|
|
88
88
|
import '../common/Check.js';
|
|
@@ -50,7 +50,7 @@ import '../_chunks/dep-228966c6.js';
|
|
|
50
50
|
import '../locale/zh_CN.js';
|
|
51
51
|
import '../_common/js/global-config/locale/zh_CN.js';
|
|
52
52
|
import '../_common/js/global-config/default-config.js';
|
|
53
|
-
import '../_chunks/dep-
|
|
53
|
+
import '../_chunks/dep-4bc86630.js';
|
|
54
54
|
import '../_util/forwardRefWithStatics.js';
|
|
55
55
|
import 'hoist-non-react-statics';
|
|
56
56
|
import '../common/Check.js';
|
package/es/transfer/index.js
CHANGED
|
@@ -83,7 +83,7 @@ import '../_chunks/dep-d9425a8a.js';
|
|
|
83
83
|
import '../_chunks/dep-4421a283.js';
|
|
84
84
|
import './utils.js';
|
|
85
85
|
import '../checkbox/index.js';
|
|
86
|
-
import '../_chunks/dep-
|
|
86
|
+
import '../_chunks/dep-4bc86630.js';
|
|
87
87
|
import '../_util/forwardRefWithStatics.js';
|
|
88
88
|
import 'hoist-non-react-statics';
|
|
89
89
|
import '../common/Check.js';
|
package/es/tree/Tree.js
CHANGED
|
@@ -79,7 +79,7 @@ import '../_util/useRipple.js';
|
|
|
79
79
|
import '../_util/useAnimation.js';
|
|
80
80
|
import '../_util/setStyle.js';
|
|
81
81
|
import '../checkbox/index.js';
|
|
82
|
-
import '../_chunks/dep-
|
|
82
|
+
import '../_chunks/dep-4bc86630.js';
|
|
83
83
|
import '../_util/forwardRefWithStatics.js';
|
|
84
84
|
import 'hoist-non-react-statics';
|
|
85
85
|
import '../common/Check.js';
|
package/es/tree/TreeItem.js
CHANGED
|
@@ -64,7 +64,7 @@ import '../loading/style/css.js';
|
|
|
64
64
|
import '../loading/type.js';
|
|
65
65
|
import '../_util/useAnimation.js';
|
|
66
66
|
import '../_util/setStyle.js';
|
|
67
|
-
import '../_chunks/dep-
|
|
67
|
+
import '../_chunks/dep-4bc86630.js';
|
|
68
68
|
import '../_util/forwardRefWithStatics.js';
|
|
69
69
|
import 'hoist-non-react-statics';
|
|
70
70
|
import '../common/Check.js';
|
package/es/tree/index.js
CHANGED
|
@@ -81,7 +81,7 @@ import '../_util/useRipple.js';
|
|
|
81
81
|
import '../_util/useAnimation.js';
|
|
82
82
|
import '../_util/setStyle.js';
|
|
83
83
|
import '../checkbox/index.js';
|
|
84
|
-
import '../_chunks/dep-
|
|
84
|
+
import '../_chunks/dep-4bc86630.js';
|
|
85
85
|
import '../_util/forwardRefWithStatics.js';
|
|
86
86
|
import 'hoist-non-react-statics';
|
|
87
87
|
import '../common/Check.js';
|
|
@@ -87,7 +87,7 @@ import '../_util/useRipple.js';
|
|
|
87
87
|
import '../_util/useAnimation.js';
|
|
88
88
|
import '../_util/setStyle.js';
|
|
89
89
|
import '../checkbox/index.js';
|
|
90
|
-
import '../_chunks/dep-
|
|
90
|
+
import '../_chunks/dep-4bc86630.js';
|
|
91
91
|
import '../_util/forwardRefWithStatics.js';
|
|
92
92
|
import 'hoist-non-react-statics';
|
|
93
93
|
import '../common/Check.js';
|
package/es/tree-select/index.js
CHANGED
|
@@ -83,7 +83,7 @@ import '../_util/useRipple.js';
|
|
|
83
83
|
import '../_util/useAnimation.js';
|
|
84
84
|
import '../_util/setStyle.js';
|
|
85
85
|
import '../checkbox/index.js';
|
|
86
|
-
import '../_chunks/dep-
|
|
86
|
+
import '../_chunks/dep-4bc86630.js';
|
|
87
87
|
import '../_util/forwardRefWithStatics.js';
|
|
88
88
|
import 'hoist-non-react-statics';
|
|
89
89
|
import '../common/Check.js';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dep-b0e383a7.js","sources":["../../src/checkbox/CheckboxGroup.tsx","../../src/checkbox/Checkbox.tsx"],"sourcesContent":["import React, { ReactElement, useEffect, useMemo, useState } from 'react';\nimport classNames from 'classnames';\nimport isNumber from 'lodash/isNumber';\nimport useConfig from '../_util/useConfig';\nimport { CheckContext, CheckContextValue } from '../common/Check';\nimport { CheckboxOption, CheckboxOptionObj, TdCheckboxGroupProps, TdCheckboxProps } from './type';\nimport { StyledProps } from '../common';\nimport useControlled from '../hooks/useControlled';\nimport Checkbox from './Checkbox';\nimport { checkboxGroupDefaultProps } from './defaultProps';\n\nexport interface CheckboxGroupProps extends TdCheckboxGroupProps, StyledProps {\n children?: React.ReactNode;\n}\n\n// 将 checkBox 的 value 转换为 string|number\nconst getCheckboxValue = (v: CheckboxOption): string | number => {\n switch (typeof v) {\n case 'number':\n return v as number;\n case 'string':\n return v as string;\n case 'object': {\n const vs = v as CheckboxOptionObj;\n return vs.value;\n }\n default:\n return undefined;\n }\n};\n\n/**\n * 多选选项组,里面可以嵌套 <Checkbox />\n */\nconst CheckboxGroup = (props: CheckboxGroupProps) => {\n const { classPrefix } = useConfig();\n const { onChange, disabled, className, style, children, max, options = [] } = props;\n\n // 去掉所有 checkAll 之后的 options\n const intervalOptions =\n Array.isArray(options) && options.length > 0\n ? options\n : React.Children.map(children, (child) => (child as ReactElement).props) || [];\n\n const optionsWithoutCheckAll = intervalOptions.filter((t) => typeof t !== 'object' || !t.checkAll);\n const optionsWithoutCheckAllValues = [];\n optionsWithoutCheckAll.forEach((v) => {\n const vs = getCheckboxValue(v);\n optionsWithoutCheckAllValues.push(vs);\n });\n\n const [internalValue, setInternalValue] = useControlled(props, 'value', onChange);\n const [localMax, setLocalMax] = useState(max);\n\n const checkedSet = useMemo(() => {\n if (!Array.isArray(internalValue)) return new Set([]);\n return new Set([].concat(internalValue));\n }, [internalValue]);\n\n // 用于决定全选状态的属性\n const indeterminate = useMemo(() => {\n const list = Array.from(checkedSet);\n return list.length !== 0 && list.length !== optionsWithoutCheckAll.length;\n }, [checkedSet, optionsWithoutCheckAll]);\n\n const checkAllChecked = useMemo(() => {\n const list = Array.from(checkedSet);\n return list.length === optionsWithoutCheckAll.length;\n }, [checkedSet, optionsWithoutCheckAll]);\n\n useEffect(() => {\n if (!isNumber(max)) return;\n if (max < checkedSet.size) {\n console.warn('[TDesign] max should be less than the length of value, change is invalid');\n } else {\n setLocalMax(max);\n }\n }, [max, checkedSet]);\n\n const context: CheckContextValue = {\n inject: (checkProps) => {\n // 如果已经受控,则不注入\n if (typeof checkProps.checked !== 'undefined') {\n return checkProps;\n }\n\n const { value: checkValue } = checkProps;\n\n return {\n ...checkProps,\n checked: checkProps.checkAll ? checkAllChecked : checkedSet.has(checkValue),\n indeterminate: checkProps.checkAll ? indeterminate : checkProps.indeterminate,\n disabled: checkProps.disabled || disabled || (checkedSet.size >= localMax && !checkedSet.has(checkValue)),\n onChange(checked, { e }) {\n if (typeof checkProps.onChange === 'function') {\n checkProps.onChange(checked, { e });\n }\n\n // 全选时的逻辑处理\n if (checkProps.checkAll) {\n checkedSet.clear();\n if (checked) {\n optionsWithoutCheckAllValues.forEach((v) => {\n checkedSet.add(v);\n });\n }\n } else if (checked) {\n if (checkedSet.size >= localMax && isNumber(max)) return;\n checkedSet.add(checkValue);\n } else {\n checkedSet.delete(checkValue);\n }\n\n setInternalValue(Array.from(checkedSet), {\n e,\n current: checkProps.checkAll ? undefined : (checkValue as TdCheckboxProps),\n type: checked ? 'check' : 'uncheck',\n });\n },\n };\n },\n };\n\n // options 和 children 的抉择,在未明确说明时,暂时以 options 优先\n const useOptions = Array.isArray(options) && options.length !== 0;\n\n return (\n <div className={classNames(`${classPrefix}-checkbox-group`, className)} style={style}>\n <CheckContext.Provider value={context}>\n {useOptions\n ? options.map((v, index) => {\n const type = typeof v;\n switch (type) {\n case 'string': {\n const vs = v as string;\n return (\n <Checkbox key={index} label={vs} value={vs}>\n {v}\n </Checkbox>\n );\n }\n case 'number': {\n const vs = v as number;\n return (\n <Checkbox key={index} label={vs} value={vs}>\n {v}\n </Checkbox>\n );\n }\n case 'object': {\n const vs = v as CheckboxOptionObj;\n // CheckAll 的 checkBox 不存在 value,故用 checkAll_index 来保证尽量不和用户的 value 冲突.\n return vs.checkAll ? (\n <Checkbox {...v} key={`checkAll_${index}`} indeterminate={indeterminate} />\n ) : (\n <Checkbox {...v} key={index} disabled={vs.disabled || disabled} />\n );\n }\n default:\n return null;\n }\n })\n : children}\n </CheckContext.Provider>\n </div>\n );\n};\n\nCheckboxGroup.displayName = 'CheckboxGroup';\nCheckboxGroup.defaultProps = checkboxGroupDefaultProps;\n\nexport default CheckboxGroup;\n","import React, { Ref } from 'react';\nimport forwardRefWithStatics from '../_util/forwardRefWithStatics';\nimport Check, { CheckProps } from '../common/Check';\nimport CheckboxGroup from './CheckboxGroup';\nimport { checkboxDefaultProps } from './defaultProps';\n\nexport type CheckboxProps = Omit<CheckProps, 'type'>;\n\nconst Checkbox = forwardRefWithStatics(\n (props: CheckboxProps, ref: Ref<HTMLLabelElement>) => <Check ref={ref} type=\"checkbox\" {...props} />,\n { Group: CheckboxGroup },\n);\n\nCheckbox.displayName = 'Checkbox';\nCheckbox.defaultProps = checkboxDefaultProps;\n\nexport default Checkbox;\n"],"names":["getCheckboxValue","v","vs","value","CheckboxGroup","props","useConfig","classPrefix","onChange","disabled","className","style","children","max","options","intervalOptions","Array","isArray","length","React","Children","map","child","optionsWithoutCheckAll","filter","t","checkAll","optionsWithoutCheckAllValues","forEach","push","useControlled","internalValue","setInternalValue","useState","localMax","setLocalMax","checkedSet","useMemo","Set","concat","indeterminate","list","from","checkAllChecked","useEffect","isNumber","size","console","warn","context","inject","checkProps","checked","checkValue","_objectSpread","has","e","clear","add","current","type","useOptions","createElement","classNames","CheckContext","Provider","index","Checkbox","key","label","displayName","defaultProps","checkboxGroupDefaultProps","forwardRefWithStatics","ref","Check","Group","checkboxDefaultProps"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"dep-4bc86630.js","sources":["../../src/checkbox/CheckboxGroup.tsx","../../src/checkbox/Checkbox.tsx"],"sourcesContent":["import React, { ReactElement, useEffect, useMemo, useState } from 'react';\nimport classNames from 'classnames';\nimport isNumber from 'lodash/isNumber';\nimport useConfig from '../_util/useConfig';\nimport { CheckContext, CheckContextValue } from '../common/Check';\nimport { CheckboxOption, CheckboxOptionObj, TdCheckboxGroupProps, TdCheckboxProps } from './type';\nimport { StyledProps } from '../common';\nimport useControlled from '../hooks/useControlled';\nimport Checkbox from './Checkbox';\nimport { checkboxGroupDefaultProps } from './defaultProps';\n\nexport interface CheckboxGroupProps extends TdCheckboxGroupProps, StyledProps {\n children?: React.ReactNode;\n}\n\n// 将 checkBox 的 value 转换为 string|number\nconst getCheckboxValue = (v: CheckboxOption): string | number => {\n switch (typeof v) {\n case 'number':\n return v as number;\n case 'string':\n return v as string;\n case 'object': {\n const vs = v as CheckboxOptionObj;\n return vs.value;\n }\n default:\n return undefined;\n }\n};\n\n/**\n * 多选选项组,里面可以嵌套 <Checkbox />\n */\nconst CheckboxGroup = (props: CheckboxGroupProps) => {\n const { classPrefix } = useConfig();\n const { onChange, disabled, className, style, children, max, options = [] } = props;\n\n // 去掉所有 checkAll 之后的 options\n const intervalOptions =\n Array.isArray(options) && options.length > 0\n ? options\n : React.Children.map(children, (child) => (child as ReactElement).props) || [];\n\n const optionsWithoutCheckAll = intervalOptions.filter((t) => typeof t !== 'object' || !t.checkAll);\n const optionsWithoutCheckAllValues = [];\n optionsWithoutCheckAll.forEach((v) => {\n const vs = getCheckboxValue(v);\n optionsWithoutCheckAllValues.push(vs);\n });\n\n const [internalValue, setInternalValue] = useControlled(props, 'value', onChange);\n const [localMax, setLocalMax] = useState(max);\n\n const checkedSet = useMemo(() => {\n if (!Array.isArray(internalValue)) return new Set([]);\n return new Set([].concat(internalValue));\n }, [internalValue]);\n\n // 用于决定全选状态的属性\n const indeterminate = useMemo(() => {\n const list = Array.from(checkedSet);\n return list.length !== 0 && list.length !== optionsWithoutCheckAll.length;\n }, [checkedSet, optionsWithoutCheckAll]);\n\n const checkAllChecked = useMemo(() => {\n const list = Array.from(checkedSet);\n return list.length === optionsWithoutCheckAll.length;\n }, [checkedSet, optionsWithoutCheckAll]);\n\n useEffect(() => {\n if (!isNumber(max)) return;\n if (max < checkedSet.size) {\n console.warn('[TDesign] max should be less than the length of value, change is invalid');\n } else {\n setLocalMax(max);\n }\n }, [max, checkedSet]);\n\n const context: CheckContextValue = {\n inject: (checkProps) => {\n // 如果已经受控,则不注入\n if (typeof checkProps.checked !== 'undefined') {\n return checkProps;\n }\n\n const { value: checkValue } = checkProps;\n\n return {\n ...checkProps,\n checked: checkProps.checkAll ? checkAllChecked : checkedSet.has(checkValue),\n indeterminate: checkProps.checkAll ? indeterminate : checkProps.indeterminate,\n disabled: checkProps.disabled || disabled || (checkedSet.size >= localMax && !checkedSet.has(checkValue)),\n onChange(checked, { e }) {\n if (typeof checkProps.onChange === 'function') {\n checkProps.onChange(checked, { e });\n }\n\n // 全选时的逻辑处理\n if (checkProps.checkAll) {\n checkedSet.clear();\n if (checked) {\n optionsWithoutCheckAllValues.forEach((v) => {\n checkedSet.add(v);\n });\n }\n } else if (checked) {\n if (checkedSet.size >= localMax && isNumber(max)) return;\n checkedSet.add(checkValue);\n } else {\n checkedSet.delete(checkValue);\n }\n\n setInternalValue(Array.from(checkedSet), {\n e,\n current: checkProps.checkAll ? undefined : (checkValue as TdCheckboxProps),\n type: checked ? 'check' : 'uncheck',\n });\n },\n };\n },\n };\n\n // options 和 children 的抉择,在未明确说明时,暂时以 options 优先\n const useOptions = Array.isArray(options) && options.length !== 0;\n\n return (\n <div className={classNames(`${classPrefix}-checkbox-group`, className)} style={style}>\n <CheckContext.Provider value={context}>\n {useOptions\n ? options.map((v, index) => {\n const type = typeof v;\n switch (type) {\n case 'string': {\n const vs = v as string;\n return (\n <Checkbox key={index} label={vs} value={vs}>\n {v}\n </Checkbox>\n );\n }\n case 'number': {\n const vs = v as number;\n return (\n <Checkbox key={index} label={vs} value={vs}>\n {v}\n </Checkbox>\n );\n }\n case 'object': {\n const vs = v as CheckboxOptionObj;\n // CheckAll 的 checkBox 不存在 value,故用 checkAll_index 来保证尽量不和用户的 value 冲突.\n return vs.checkAll ? (\n <Checkbox {...v} key={`checkAll_${index}`} indeterminate={indeterminate} />\n ) : (\n <Checkbox {...v} key={index} disabled={vs.disabled || disabled} />\n );\n }\n default:\n return null;\n }\n })\n : children}\n </CheckContext.Provider>\n </div>\n );\n};\n\nCheckboxGroup.displayName = 'CheckboxGroup';\nCheckboxGroup.defaultProps = checkboxGroupDefaultProps;\n\nexport default CheckboxGroup;\n","import React, { Ref } from 'react';\nimport forwardRefWithStatics from '../_util/forwardRefWithStatics';\nimport Check, { CheckProps } from '../common/Check';\nimport CheckboxGroup from './CheckboxGroup';\nimport { checkboxDefaultProps } from './defaultProps';\n\nexport type CheckboxProps = Omit<CheckProps, 'type'>;\n\nconst Checkbox = forwardRefWithStatics(\n (props: CheckboxProps, ref: Ref<HTMLLabelElement>) => <Check ref={ref} type=\"checkbox\" {...props} />,\n { Group: CheckboxGroup },\n);\n\nCheckbox.displayName = 'Checkbox';\nCheckbox.defaultProps = checkboxDefaultProps;\n\nexport default Checkbox;\n"],"names":["getCheckboxValue","v","vs","value","CheckboxGroup","props","useConfig","classPrefix","onChange","disabled","className","style","children","max","options","intervalOptions","Array","isArray","length","React","Children","map","child","optionsWithoutCheckAll","filter","t","checkAll","optionsWithoutCheckAllValues","forEach","push","useControlled","internalValue","setInternalValue","useState","localMax","setLocalMax","checkedSet","useMemo","Set","concat","indeterminate","list","from","checkAllChecked","useEffect","isNumber","size","console","warn","context","inject","checkProps","checked","checkValue","_objectSpread","has","e","clear","add","current","type","useOptions","createElement","classNames","CheckContext","Provider","index","Checkbox","key","label","displayName","defaultProps","checkboxGroupDefaultProps","forwardRefWithStatics","ref","Check","Group","checkboxDefaultProps"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dep-890db007.js","sources":["../../src/radio/RadioGroup.tsx","../../src/radio/Radio.tsx"],"sourcesContent":["import React, { ReactNode, useState, useEffect, useRef } from 'react';\nimport classNames from 'classnames';\nimport useConfig from '../_util/useConfig';\nimport { TdRadioGroupProps } from './type';\nimport useControlled from '../hooks/useControlled';\nimport useCommonClassName from '../_util/useCommonClassName';\nimport { StyledProps } from '../common';\nimport { CheckContext, CheckContextValue } from '../common/Check';\nimport Radio from './Radio';\nimport useMutationObservable from '../_util/useMutationObserver';\nimport { radioGroupDefaultProps } from './defaultProps';\n\n/**\n * RadioGroup 组件所接收的属性\n */\nexport interface RadioGroupProps extends TdRadioGroupProps, StyledProps {\n children?: ReactNode;\n}\n\n/**\n * 单选选项组,里面可以嵌套 <Radio />\n */\nconst RadioGroup = (props: RadioGroupProps) => {\n const { classPrefix } = useConfig();\n const { disabled, children, onChange, size, variant, options = [], className, style } = props;\n\n const [internalValue, setInternalValue] = useControlled(props, 'value', onChange);\n const [barStyle, setBarStyle] = useState({});\n const groupRef = useRef(null);\n\n const checkedRadioCls = `.${classPrefix}-radio-button.${classPrefix}-is-checked`;\n const { SIZE: sizeMap } = useCommonClassName();\n\n const context: CheckContextValue = {\n inject: (checkProps) => {\n // 如果已经受控,则不注入\n if (typeof checkProps.checked !== 'undefined') {\n return checkProps;\n }\n\n const { value: checkValue } = checkProps;\n\n return {\n ...checkProps,\n checked: internalValue === checkProps.value,\n disabled: checkProps.disabled || disabled,\n onChange(checked, { e }) {\n if (typeof checkProps.onChange === 'function') {\n checkProps.onChange(checked, { e });\n }\n setInternalValue(checkValue, { e });\n },\n };\n },\n };\n\n const calcBarStyle = () => {\n if (!variant.includes('filled')) return;\n const checkedRadio = groupRef.current.querySelector(checkedRadioCls);\n if (!checkedRadio) return setBarStyle({ width: 0 });\n\n const { offsetWidth, offsetLeft } = checkedRadio;\n setBarStyle({ width: `${offsetWidth}px`, left: `${offsetLeft}px` });\n };\n\n useEffect(() => {\n calcBarStyle();\n }, [groupRef.current, internalValue]); // eslint-disable-line react-hooks/exhaustive-deps\n\n useMutationObservable(groupRef.current, calcBarStyle);\n\n const renderBlock = () => {\n if (!variant.includes('filled')) return null;\n return <div style={barStyle} className={`${classPrefix}-radio-group__bg-block`}></div>;\n };\n\n const renderOptions = () =>\n options.map((item) => {\n if (typeof item === 'string' || typeof item === 'number') {\n return (\n <Radio value={item} key={item}>\n {item}\n </Radio>\n );\n }\n return (\n <Radio value={item.value} key={item.value} disabled={item.disabled}>\n {item.label}\n </Radio>\n );\n });\n\n return (\n <CheckContext.Provider value={context}>\n <div\n ref={groupRef}\n style={style}\n className={classNames(`${classPrefix}-radio-group`, sizeMap[size], className, {\n [`${classPrefix}-radio-group__outline`]: variant === 'outline',\n [`${classPrefix}-radio-group--filled`]: variant.includes('filled'),\n [`${classPrefix}-radio-group--primary-filled`]: variant === 'primary-filled',\n })}\n >\n {children || renderOptions()}\n {renderBlock()}\n </div>\n </CheckContext.Provider>\n );\n};\n\nRadioGroup.displayName = 'RadioGroup';\nRadioGroup.defaultProps = radioGroupDefaultProps;\n\nexport default RadioGroup;\n","import React, { Ref, forwardRef } from 'react';\nimport forwardRefWithStatics from '../_util/forwardRefWithStatics';\nimport Check, { CheckProps } from '../common/Check';\nimport RadioGroup from './RadioGroup';\nimport { radioDefaultProps } from './defaultProps';\n\nexport type RadioProps = Omit<CheckProps, 'type'>;\n\nconst Radio = forwardRefWithStatics(\n (props: RadioProps, ref: Ref<HTMLLabelElement>) => <Check ref={ref} type=\"radio\" {...props} />,\n {\n Group: RadioGroup,\n Button: forwardRef((props: RadioProps, ref: Ref<HTMLLabelElement>) => (\n <Check ref={ref} type=\"radio-button\" {...props} />\n )),\n },\n);\n\nRadio.displayName = 'Radio';\nRadio.defaultProps = radioDefaultProps;\n\nexport default Radio;\n"],"names":["RadioGroup","props","useConfig","classPrefix","disabled","children","onChange","size","variant","options","className","style","useControlled","internalValue","setInternalValue","useState","barStyle","setBarStyle","groupRef","useRef","checkedRadioCls","useCommonClassName","sizeMap","SIZE","context","inject","checkProps","checked","checkValue","value","_objectSpread","e","calcBarStyle","includes","checkedRadio","current","querySelector","width","offsetWidth","offsetLeft","left","useEffect","useMutationObservable","renderBlock","React","createElement","renderOptions","map","item","Radio","key","label","CheckContext","Provider","ref","classNames","displayName","defaultProps","radioGroupDefaultProps","forwardRefWithStatics","Check","type","Group","Button","forwardRef","radioDefaultProps"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"dep-63330981.js","sources":["../../src/radio/RadioGroup.tsx","../../src/radio/Radio.tsx"],"sourcesContent":["import React, { ReactNode, useState, useEffect, useRef } from 'react';\nimport classNames from 'classnames';\nimport useConfig from '../_util/useConfig';\nimport { TdRadioGroupProps } from './type';\nimport useControlled from '../hooks/useControlled';\nimport useCommonClassName from '../_util/useCommonClassName';\nimport { StyledProps } from '../common';\nimport { CheckContext, CheckContextValue } from '../common/Check';\nimport Radio from './Radio';\nimport useMutationObservable from '../_util/useMutationObserver';\nimport { radioGroupDefaultProps } from './defaultProps';\n\n/**\n * RadioGroup 组件所接收的属性\n */\nexport interface RadioGroupProps extends TdRadioGroupProps, StyledProps {\n children?: ReactNode;\n}\n\n/**\n * 单选选项组,里面可以嵌套 <Radio />\n */\nconst RadioGroup = (props: RadioGroupProps) => {\n const { classPrefix } = useConfig();\n const { disabled, children, onChange, size, variant, options = [], className, style } = props;\n\n const [internalValue, setInternalValue] = useControlled(props, 'value', onChange);\n const [barStyle, setBarStyle] = useState({});\n const groupRef = useRef(null);\n\n const checkedRadioCls = `.${classPrefix}-radio-button.${classPrefix}-is-checked`;\n const { SIZE: sizeMap } = useCommonClassName();\n\n const context: CheckContextValue = {\n inject: (checkProps) => {\n // 如果已经受控,则不注入\n if (typeof checkProps.checked !== 'undefined') {\n return checkProps;\n }\n\n const { value: checkValue } = checkProps;\n\n return {\n ...checkProps,\n checked: internalValue === checkProps.value,\n disabled: checkProps.disabled || disabled,\n onChange(checked, { e }) {\n if (typeof checkProps.onChange === 'function') {\n checkProps.onChange(checked, { e });\n }\n setInternalValue(checkValue, { e });\n },\n };\n },\n };\n\n const calcBarStyle = () => {\n if (!variant.includes('filled')) return;\n const checkedRadio = groupRef.current.querySelector(checkedRadioCls);\n if (!checkedRadio) return setBarStyle({ width: 0 });\n\n const { offsetWidth, offsetLeft } = checkedRadio;\n setBarStyle({ width: `${offsetWidth}px`, left: `${offsetLeft}px` });\n };\n\n useEffect(() => {\n calcBarStyle();\n }, [groupRef.current, internalValue]); // eslint-disable-line react-hooks/exhaustive-deps\n\n useMutationObservable(groupRef.current, calcBarStyle);\n\n const renderBlock = () => {\n if (!variant.includes('filled')) return null;\n return <div style={barStyle} className={`${classPrefix}-radio-group__bg-block`}></div>;\n };\n\n const renderOptions = () =>\n options.map((item) => {\n if (typeof item === 'string' || typeof item === 'number') {\n return (\n <Radio value={item} key={item}>\n {item}\n </Radio>\n );\n }\n return (\n <Radio value={item.value} key={item.value} disabled={item.disabled}>\n {item.label}\n </Radio>\n );\n });\n\n return (\n <CheckContext.Provider value={context}>\n <div\n ref={groupRef}\n style={style}\n className={classNames(`${classPrefix}-radio-group`, sizeMap[size], className, {\n [`${classPrefix}-radio-group__outline`]: variant === 'outline',\n [`${classPrefix}-radio-group--filled`]: variant.includes('filled'),\n [`${classPrefix}-radio-group--primary-filled`]: variant === 'primary-filled',\n })}\n >\n {children || renderOptions()}\n {renderBlock()}\n </div>\n </CheckContext.Provider>\n );\n};\n\nRadioGroup.displayName = 'RadioGroup';\nRadioGroup.defaultProps = radioGroupDefaultProps;\n\nexport default RadioGroup;\n","import React, { Ref, forwardRef } from 'react';\nimport forwardRefWithStatics from '../_util/forwardRefWithStatics';\nimport Check, { CheckProps } from '../common/Check';\nimport RadioGroup from './RadioGroup';\nimport { radioDefaultProps } from './defaultProps';\n\nexport type RadioProps = Omit<CheckProps, 'type'>;\n\nconst Radio = forwardRefWithStatics(\n (props: RadioProps, ref: Ref<HTMLLabelElement>) => <Check ref={ref} type=\"radio\" {...props} />,\n {\n Group: RadioGroup,\n Button: forwardRef((props: RadioProps, ref: Ref<HTMLLabelElement>) => (\n <Check ref={ref} type=\"radio-button\" {...props} />\n )),\n },\n);\n\nRadio.displayName = 'Radio';\nRadio.defaultProps = radioDefaultProps;\n\nexport default Radio;\n"],"names":["RadioGroup","props","useConfig","classPrefix","disabled","children","onChange","size","variant","options","className","style","useControlled","internalValue","setInternalValue","useState","barStyle","setBarStyle","groupRef","useRef","checkedRadioCls","useCommonClassName","sizeMap","SIZE","context","inject","checkProps","checked","checkValue","value","_objectSpread","e","calcBarStyle","includes","checkedRadio","current","querySelector","width","offsetWidth","offsetLeft","left","useEffect","useMutationObservable","renderBlock","React","createElement","renderOptions","map","item","Radio","key","label","CheckContext","Provider","ref","classNames","displayName","defaultProps","radioGroupDefaultProps","forwardRefWithStatics","Check","type","Group","Button","forwardRef","radioDefaultProps"],"mappings":"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"}
|