tdesign-react 0.37.2-alpha.1 → 0.37.2-alpha.2

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 (165) hide show
  1. package/dist/tdesign.css +95 -76
  2. package/dist/tdesign.css.map +1 -1
  3. package/dist/tdesign.js +828 -779
  4. package/dist/tdesign.js.map +1 -1
  5. package/dist/tdesign.min.css +1 -1
  6. package/dist/tdesign.min.css.map +1 -1
  7. package/dist/tdesign.min.js +3 -3
  8. package/dist/tdesign.min.js.map +1 -1
  9. package/es/_common/js/date-picker/utils.d.ts +2 -1
  10. package/es/_common/js/date-picker/utils.js +86 -12
  11. package/es/_common/js/date-picker/utils.js.map +1 -1
  12. package/es/alert/style/index.css +1 -1
  13. package/es/anchor/style/index.css +1 -1
  14. package/es/avatar/style/index.css +2 -2
  15. package/es/badge/style/index.css +3 -3
  16. package/es/button/style/index.css +1 -1
  17. package/es/calendar/style/index.css +4 -2
  18. package/es/card/style/index.css +1 -1
  19. package/es/cascader/style/index.css +3 -0
  20. package/es/color-picker/style/index.css +8 -7
  21. package/es/comment/style/index.css +2 -1
  22. package/es/date-picker/hooks/useFormat.js +1 -0
  23. package/es/date-picker/hooks/useFormat.js.map +1 -1
  24. package/es/date-picker/hooks/useRangeValue.js +1 -0
  25. package/es/date-picker/hooks/useRangeValue.js.map +1 -1
  26. package/es/date-picker/hooks/useSingleValue.js +1 -0
  27. package/es/date-picker/hooks/useSingleValue.js.map +1 -1
  28. package/es/date-picker/style/index.css +15 -7
  29. package/es/dialog/style/index.css +2 -9
  30. package/es/drawer/style/index.css +2 -1
  31. package/es/dropdown/style/index.css +0 -1
  32. package/es/grid/Col.d.ts +1 -11
  33. package/es/grid/Col.js +14 -6
  34. package/es/grid/Col.js.map +1 -1
  35. package/es/grid/Row.d.ts +5 -803
  36. package/es/grid/Row.js +14 -15
  37. package/es/grid/Row.js.map +1 -1
  38. package/es/grid/index.d.ts +2 -805
  39. package/es/index.js +2 -2
  40. package/es/loading/style/index.css +1 -1
  41. package/es/menu/style/index.css +1 -1
  42. package/es/message/style/index.css +2 -1
  43. package/es/notification/style/index.css +3 -3
  44. package/es/popconfirm/style/index.css +2 -2
  45. package/es/popup/style/index.css +1 -1
  46. package/es/progress/style/index.css +2 -2
  47. package/es/radio/style/index.css +6 -5
  48. package/es/range-input/style/index.css +1 -0
  49. package/es/select/base/Select.js +3 -3
  50. package/es/select/base/Select.js.map +1 -1
  51. package/es/select/style/index.css +0 -1
  52. package/es/select-input/useOverlayStyle.js +2 -3
  53. package/es/select-input/useOverlayStyle.js.map +1 -1
  54. package/es/skeleton/style/index.css +3 -3
  55. package/es/slider/style/index.css +4 -4
  56. package/es/steps/style/index.css +6 -6
  57. package/es/style/index.css +4 -2
  58. package/es/switch/style/index.css +2 -2
  59. package/es/table/style/index.css +1 -1
  60. package/es/tag/style/index.css +2 -2
  61. package/es/tooltip/style/index.css +1 -0
  62. package/es/transfer/style/index.css +1 -1
  63. package/es/tree/style/index.css +6 -0
  64. package/es/upload/style/index.css +1 -1
  65. package/esm/_common/js/date-picker/utils.d.ts +2 -1
  66. package/esm/_common/js/date-picker/utils.js +86 -12
  67. package/esm/_common/js/date-picker/utils.js.map +1 -1
  68. package/esm/_common/style/web/_global.less +2 -1
  69. package/esm/_common/style/web/_variables.less +2 -1
  70. package/esm/_common/style/web/components/_index.less +2 -0
  71. package/esm/_common/style/web/components/alert/_index.less +1 -1
  72. package/esm/_common/style/web/components/anchor/_index.less +1 -1
  73. package/esm/_common/style/web/components/avatar/_var.less +2 -2
  74. package/esm/_common/style/web/components/badge/_index.less +3 -3
  75. package/esm/_common/style/web/components/badge/_var.less +1 -0
  76. package/esm/_common/style/web/components/button/_index.less +1 -1
  77. package/esm/_common/style/web/components/calendar/_index.less +2 -2
  78. package/esm/_common/style/web/components/calendar/_var.less +2 -2
  79. package/esm/_common/style/web/components/card/_var.less +1 -1
  80. package/esm/_common/style/web/components/cascader/_index.less +2 -0
  81. package/esm/_common/style/web/components/color-picker/_index.less +8 -7
  82. package/esm/_common/style/web/components/comment/_index.less +2 -1
  83. package/esm/_common/style/web/components/date-picker/_index.less +3 -1
  84. package/esm/_common/style/web/components/dialog/_index.less +3 -12
  85. package/esm/_common/style/web/components/dialog/_var.less +2 -2
  86. package/esm/_common/style/web/components/drawer/_index.less +1 -0
  87. package/esm/_common/style/web/components/drawer/_var.less +1 -1
  88. package/esm/_common/style/web/components/dropdown/_index.less +0 -1
  89. package/esm/_common/style/web/components/loading/_index.less +1 -1
  90. package/esm/_common/style/web/components/menu/_docs.less +1 -1
  91. package/esm/_common/style/web/components/menu/_index-v2.less +1 -1
  92. package/esm/_common/style/web/components/menu/_index.less +1 -1
  93. package/esm/_common/style/web/components/message/_index.less +2 -1
  94. package/esm/_common/style/web/components/message/_mixin.less +1 -1
  95. package/esm/_common/style/web/components/message/_var.less +1 -1
  96. package/esm/_common/style/web/components/notification/_index.less +1 -1
  97. package/esm/_common/style/web/components/notification/_mixin.less +1 -1
  98. package/esm/_common/style/web/components/notification/_var.less +2 -2
  99. package/esm/_common/style/web/components/popconfirm/_var.less +1 -1
  100. package/esm/_common/style/web/components/popup/_index.less +1 -1
  101. package/esm/_common/style/web/components/progress/_index.less +2 -2
  102. package/esm/_common/style/web/components/radio/_index.less +4 -4
  103. package/esm/_common/style/web/components/radio/_var.less +1 -1
  104. package/esm/_common/style/web/components/range-input/_index.less +1 -0
  105. package/esm/_common/style/web/components/range-input/_mixin.less +1 -1
  106. package/esm/_common/style/web/components/range-input/_var.less +1 -1
  107. package/esm/_common/style/web/components/select/_index.less +0 -1
  108. package/esm/_common/style/web/components/skeleton/_index.less +7 -7
  109. package/esm/_common/style/web/components/skeleton/_var.less +5 -5
  110. package/esm/_common/style/web/components/slider/_index.less +1 -1
  111. package/esm/_common/style/web/components/slider/_var.less +1 -1
  112. package/esm/_common/style/web/components/steps/_mixin.less +2 -2
  113. package/esm/_common/style/web/components/switch/_index.less +2 -2
  114. package/esm/_common/style/web/components/table/_docs.less +2 -2
  115. package/esm/_common/style/web/components/table/_index.less +1 -1
  116. package/esm/_common/style/web/components/tag/_var.less +1 -1
  117. package/esm/_common/style/web/components/tooltip/_index.less +1 -1
  118. package/esm/_common/style/web/components/transfer/_index.less +1 -1
  119. package/esm/_common/style/web/components/transfer/_var.less +1 -1
  120. package/esm/_common/style/web/components/tree/_docs.less +2 -2
  121. package/esm/_common/style/web/components/tree/_index.less +10 -0
  122. package/esm/_common/style/web/components/upload/_docs.less +1 -1
  123. package/esm/_common/style/web/components/upload/_var.less +1 -1
  124. package/esm/_common/style/web/theme/_radius.less +2 -1
  125. package/esm/date-picker/hooks/useFormat.js +1 -0
  126. package/esm/date-picker/hooks/useFormat.js.map +1 -1
  127. package/esm/date-picker/hooks/useRangeValue.js +1 -0
  128. package/esm/date-picker/hooks/useRangeValue.js.map +1 -1
  129. package/esm/date-picker/hooks/useSingleValue.js +1 -0
  130. package/esm/date-picker/hooks/useSingleValue.js.map +1 -1
  131. package/esm/grid/Col.d.ts +1 -11
  132. package/esm/grid/Col.js +14 -6
  133. package/esm/grid/Col.js.map +1 -1
  134. package/esm/grid/Row.d.ts +5 -803
  135. package/esm/grid/Row.js +14 -15
  136. package/esm/grid/Row.js.map +1 -1
  137. package/esm/grid/index.d.ts +2 -805
  138. package/esm/index.js +2 -2
  139. package/esm/select/base/Select.js +3 -3
  140. package/esm/select/base/Select.js.map +1 -1
  141. package/esm/select-input/useOverlayStyle.js +2 -3
  142. package/esm/select-input/useOverlayStyle.js.map +1 -1
  143. package/lib/_common/js/date-picker/utils.d.ts +2 -1
  144. package/lib/_common/js/date-picker/utils.js +85 -11
  145. package/lib/_common/js/date-picker/utils.js.map +1 -1
  146. package/lib/date-picker/hooks/useFormat.js +1 -0
  147. package/lib/date-picker/hooks/useFormat.js.map +1 -1
  148. package/lib/date-picker/hooks/useRangeValue.js +1 -0
  149. package/lib/date-picker/hooks/useRangeValue.js.map +1 -1
  150. package/lib/date-picker/hooks/useSingleValue.js +1 -0
  151. package/lib/date-picker/hooks/useSingleValue.js.map +1 -1
  152. package/lib/grid/Col.d.ts +1 -11
  153. package/lib/grid/Col.js +13 -5
  154. package/lib/grid/Col.js.map +1 -1
  155. package/lib/grid/Row.d.ts +5 -803
  156. package/lib/grid/Row.js +13 -13
  157. package/lib/grid/Row.js.map +1 -1
  158. package/lib/grid/index.d.ts +2 -805
  159. package/lib/index-lib.js +2 -2
  160. package/lib/index.js +2 -2
  161. package/lib/select/base/Select.js +3 -3
  162. package/lib/select/base/Select.js.map +1 -1
  163. package/lib/select-input/useOverlayStyle.js +2 -3
  164. package/lib/select-input/useOverlayStyle.js.map +1 -1
  165. package/package.json +1 -1
package/esm/index.js CHANGED
@@ -79,8 +79,6 @@ import './layout/type.js';
79
79
  import './grid/Row.js';
80
80
  import './_chunks/dep-ed4647ea.js';
81
81
  import './_chunks/dep-2e8c2cb9.js';
82
- import './grid/Col.js';
83
- import './grid/defaultProps.js';
84
82
  import './_util/dom.js';
85
83
  import 'raf';
86
84
  import './_chunks/dep-8326b1dd.js';
@@ -88,6 +86,8 @@ import './_chunks/dep-ac1c12aa.js';
88
86
  import './_chunks/dep-35f9fa66.js';
89
87
  import './_chunks/dep-3f31c41f.js';
90
88
  import './_util/easing.js';
89
+ import './grid/defaultProps.js';
90
+ import './grid/Col.js';
91
91
  import './grid/style/index.js';
92
92
  import './grid/type.js';
93
93
  import './loading/Loading.js';
@@ -300,7 +300,7 @@ var Select = forwardRefWithStatics(function (props, ref) {
300
300
  });
301
301
  }
302
302
 
303
- return get_1(selectedOptions[0] || {}, (keys === null || keys === void 0 ? void 0 : keys.label) || "label") || "";
303
+ return get_1(selectedOptions[0] || {}, (keys === null || keys === void 0 ? void 0 : keys.label) || "label") || void 0;
304
304
  }, [selectedOptions, keys, multiple]);
305
305
 
306
306
  var handleShowPopup = function handleShowPopup(visible) {
@@ -310,7 +310,7 @@ var Select = forwardRefWithStatics(function (props, ref) {
310
310
  visible && onInputChange("");
311
311
  };
312
312
 
313
- var onTagChange = function onTagChange(currentTags, context) {
313
+ var onTagChange = function onTagChange(_currentTags, context) {
314
314
  var trigger = context.trigger,
315
315
  index = context.index,
316
316
  item = context.item,
@@ -433,7 +433,7 @@ var Select = forwardRefWithStatics(function (props, ref) {
433
433
 
434
434
  var handleInputChange = function handleInputChange(value2) {
435
435
  onInputChange(value2);
436
- if (selectedLabel === value2) return;
436
+ if (value2 === void 0) return;
437
437
 
438
438
  if (isFunction_1(onSearch)) {
439
439
  onSearch(value2);
@@ -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') || '';\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 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 (selectedLabel === value) 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, key) => {\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';\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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"}
@@ -47,9 +47,8 @@ function useOverlayStyle(props) {
47
47
 
48
48
  var onInnerPopupVisibleChange = function onInnerPopupVisibleChange(visible, context) {
49
49
  if (readonly) return;
50
- var newVisible = context.trigger === "trigger-element-click" ? true : visible;
51
- setInnerPopupVisible(newVisible);
52
- onPopupVisibleChange === null || onPopupVisibleChange === void 0 ? void 0 : onPopupVisibleChange(newVisible, context);
50
+ setInnerPopupVisible(visible);
51
+ onPopupVisibleChange === null || onPopupVisibleChange === void 0 ? void 0 : onPopupVisibleChange(visible, context);
53
52
  };
54
53
 
55
54
  var tOverlayStyle = useMemo(function () {
@@ -1 +1 @@
1
- {"version":3,"file":"useOverlayStyle.js","sources":["../../src/select-input/useOverlayStyle.ts"],"sourcesContent":["import React, { useMemo, useState } from 'react';\nimport isObject from 'lodash/isObject';\nimport isFunction from 'lodash/isFunction';\nimport { TdSelectInputProps } from './type';\nimport { TdPopupProps, PopupVisibleChangeContext } from '../popup';\n\nexport type overlayStyleProps = Pick<\n TdSelectInputProps,\n 'popupProps' | 'autoWidth' | 'readonly' | 'onPopupVisibleChange'\n>;\n\n// 单位:px\nconst MAX_POPUP_WIDTH = 1000;\n\nexport default function useOverlayStyle(props: overlayStyleProps) {\n const { popupProps, autoWidth, readonly, onPopupVisibleChange } = props;\n const [innerPopupVisible, setInnerPopupVisible] = useState(false);\n\n const matchWidthFunc = (triggerElement: HTMLElement, popupElement: HTMLElement) => {\n if (!triggerElement || !popupElement) return;\n // 避免因滚动条出现文本省略,预留宽度 8\n const SCROLLBAR_WIDTH = popupElement.scrollHeight > popupElement.offsetHeight ? 8 : 0;\n const width =\n popupElement.offsetWidth + SCROLLBAR_WIDTH >= triggerElement.offsetWidth\n ? popupElement.offsetWidth\n : triggerElement.offsetWidth;\n let otherOverlayStyle: React.CSSProperties = {};\n if (popupProps && typeof popupProps.overlayStyle === 'object' && !popupProps.overlayStyle.width) {\n otherOverlayStyle = popupProps.overlayStyle;\n }\n return {\n width: `${Math.min(width, MAX_POPUP_WIDTH)}px`,\n ...otherOverlayStyle,\n };\n };\n\n const onInnerPopupVisibleChange = (visible: boolean, context: PopupVisibleChangeContext) => {\n if (readonly) return;\n // 如果点击触发元素(输入框),则永久显示下拉框\n const newVisible = context.trigger === 'trigger-element-click' ? true : visible;\n setInnerPopupVisible(newVisible);\n onPopupVisibleChange?.(newVisible, context);\n };\n\n const tOverlayStyle = useMemo(() => {\n let result: TdPopupProps['overlayStyle'] = {};\n const overlayStyle = popupProps?.overlayStyle || {};\n if (isFunction(overlayStyle) || (isObject(overlayStyle) && overlayStyle.width)) {\n result = overlayStyle;\n } else if (!autoWidth) {\n result = matchWidthFunc;\n }\n return result;\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [autoWidth, popupProps?.overlayStyle]);\n\n return {\n tOverlayStyle,\n innerPopupVisible,\n onInnerPopupVisibleChange,\n };\n}\n"],"names":["MAX_POPUP_WIDTH","useOverlayStyle","props","popupProps","autoWidth","readonly","onPopupVisibleChange","useState","innerPopupVisible","setInnerPopupVisible","matchWidthFunc","triggerElement","popupElement","SCROLLBAR_WIDTH","scrollHeight","offsetHeight","width","offsetWidth","otherOverlayStyle","overlayStyle","Math","min","onInnerPopupVisibleChange","visible","context","newVisible","trigger","tOverlayStyle","useMemo","result","isFunction","isObject"],"mappings":"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"}
1
+ {"version":3,"file":"useOverlayStyle.js","sources":["../../src/select-input/useOverlayStyle.ts"],"sourcesContent":["import React, { useMemo, useState } from 'react';\nimport isObject from 'lodash/isObject';\nimport isFunction from 'lodash/isFunction';\nimport { TdSelectInputProps } from './type';\nimport { TdPopupProps, PopupVisibleChangeContext } from '../popup';\n\nexport type overlayStyleProps = Pick<\n TdSelectInputProps,\n 'popupProps' | 'autoWidth' | 'readonly' | 'onPopupVisibleChange'\n>;\n\n// 单位:px\nconst MAX_POPUP_WIDTH = 1000;\n\nexport default function useOverlayStyle(props: overlayStyleProps) {\n const { popupProps, autoWidth, readonly, onPopupVisibleChange } = props;\n const [innerPopupVisible, setInnerPopupVisible] = useState(false);\n\n const matchWidthFunc = (triggerElement: HTMLElement, popupElement: HTMLElement) => {\n if (!triggerElement || !popupElement) return;\n // 避免因滚动条出现文本省略,预留宽度 8\n const SCROLLBAR_WIDTH = popupElement.scrollHeight > popupElement.offsetHeight ? 8 : 0;\n const width =\n popupElement.offsetWidth + SCROLLBAR_WIDTH >= triggerElement.offsetWidth\n ? popupElement.offsetWidth\n : triggerElement.offsetWidth;\n let otherOverlayStyle: React.CSSProperties = {};\n if (popupProps && typeof popupProps.overlayStyle === 'object' && !popupProps.overlayStyle.width) {\n otherOverlayStyle = popupProps.overlayStyle;\n }\n return {\n width: `${Math.min(width, MAX_POPUP_WIDTH)}px`,\n ...otherOverlayStyle,\n };\n };\n\n const onInnerPopupVisibleChange = (visible: boolean, context: PopupVisibleChangeContext) => {\n if (readonly) return;\n setInnerPopupVisible(visible);\n onPopupVisibleChange?.(visible, context);\n };\n\n const tOverlayStyle = useMemo(() => {\n let result: TdPopupProps['overlayStyle'] = {};\n const overlayStyle = popupProps?.overlayStyle || {};\n if (isFunction(overlayStyle) || (isObject(overlayStyle) && overlayStyle.width)) {\n result = overlayStyle;\n } else if (!autoWidth) {\n result = matchWidthFunc;\n }\n return result;\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [autoWidth, popupProps?.overlayStyle]);\n\n return {\n tOverlayStyle,\n innerPopupVisible,\n onInnerPopupVisibleChange,\n };\n}\n"],"names":["MAX_POPUP_WIDTH","useOverlayStyle","props","popupProps","autoWidth","readonly","onPopupVisibleChange","useState","innerPopupVisible","setInnerPopupVisible","matchWidthFunc","triggerElement","popupElement","SCROLLBAR_WIDTH","scrollHeight","offsetHeight","width","offsetWidth","otherOverlayStyle","overlayStyle","Math","min","onInnerPopupVisibleChange","visible","context","tOverlayStyle","useMemo","result","isFunction","isObject"],"mappings":"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"}
@@ -69,13 +69,14 @@ export interface OptionsType {
69
69
  disableDate: DisableDate;
70
70
  minDate: Date;
71
71
  maxDate: Date;
72
- showWeekOfYear: Boolean;
72
+ showWeekOfYear?: Boolean;
73
73
  monthLocal?: string[];
74
74
  }
75
75
  export declare function getWeeks({ year, month }: {
76
76
  year: number;
77
77
  month: number;
78
78
  }, { firstDayOfWeek, showWeekOfYear, disableDate, minDate, maxDate, }: OptionsType): any[][];
79
+ export declare function getQuarters(year: number, { disableDate, minDate, maxDate, }: OptionsType): any[][];
79
80
  export declare function getYears(year: number, { disableDate, minDate, maxDate, }: OptionsType): any[][];
80
81
  export declare function getMonths(year: number, params: OptionsType): any[][];
81
82
  export interface DateTime {
@@ -9,6 +9,7 @@
9
9
  Object.defineProperty(exports, '__esModule', { value: true });
10
10
 
11
11
  var slicedToArray = require('../../../_chunks/dep-f6e23313.js');
12
+ var defineProperty = require('../../../_chunks/dep-2de33c1d.js');
12
13
  var dayjs = require('dayjs');
13
14
  var _baseGetTag = require('../../../_chunks/dep-6654f94e.js');
14
15
  var customParseFormat = require('../../../_chunks/dep-e437c41e.js');
@@ -233,6 +234,47 @@ var weekOfYear$1 = {exports: {}};
233
234
 
234
235
  var weekOfYear = weekOfYear$1.exports;
235
236
 
237
+ var quarterOfYear$1 = {exports: {}};
238
+
239
+ (function (module, exports) {
240
+ !function (t, n) {
241
+ module.exports = n() ;
242
+ }(_baseGetTag.commonjsGlobal, function () {
243
+
244
+ var t = "month",
245
+ n = "quarter";
246
+ return function (e, i) {
247
+ var r = i.prototype;
248
+
249
+ r.quarter = function (t) {
250
+ return this.$utils().u(t) ? Math.ceil((this.month() + 1) / 3) : this.month(this.month() % 3 + 3 * (t - 1));
251
+ };
252
+
253
+ var s = r.add;
254
+
255
+ r.add = function (e, i) {
256
+ return e = Number(e), this.$utils().p(i) === n ? this.add(3 * e, t) : s.bind(this)(e, i);
257
+ };
258
+
259
+ var u = r.startOf;
260
+
261
+ r.startOf = function (e, i) {
262
+ var r = this.$utils(),
263
+ s = !!r.u(i) || i;
264
+
265
+ if (r.p(e) === n) {
266
+ var o = this.quarter() - 1;
267
+ return s ? this.month(3 * o).startOf(t).startOf("day") : this.month(3 * o + 2).endOf(t).endOf("day");
268
+ }
269
+
270
+ return u.bind(this)(e, i);
271
+ };
272
+ };
273
+ });
274
+ })(quarterOfYear$1);
275
+
276
+ var quarterOfYear = quarterOfYear$1.exports;
277
+
236
278
  var isoWeek$1 = {exports: {}};
237
279
 
238
280
  (function (module, exports) {
@@ -401,10 +443,14 @@ function chunk(array, size, guard) {
401
443
 
402
444
  var chunk_1 = chunk;
403
445
 
446
+ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
447
+
448
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { defineProperty._defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
404
449
  dayjs__default["default"].extend(isoWeek);
405
450
  dayjs__default["default"].extend(weekYear);
406
451
  dayjs__default["default"].extend(localeData);
407
452
  dayjs__default["default"].extend(weekOfYear);
453
+ dayjs__default["default"].extend(quarterOfYear);
408
454
  dayjs__default["default"].extend(advancedFormat);
409
455
  dayjs__default["default"].extend(customParseFormat.customParseFormat);
410
456
  dayjs__default["default"].extend(dayJsIsBetween);
@@ -438,6 +484,10 @@ function isSameYear(date1, date2) {
438
484
  return date1.getFullYear() === date2.getFullYear();
439
485
  }
440
486
 
487
+ function isSameQuarter(date1, date2) {
488
+ return isSameYear(date1, date2) && dayjs__default["default"](date1).quarter() === dayjs__default["default"](date2).quarter();
489
+ }
490
+
441
491
  function isSameMonth(date1, date2) {
442
492
  return isSameYear(date1, date2) && date1.getMonth() === date2.getMonth();
443
493
  }
@@ -462,6 +512,7 @@ function isSame(date1, date2) {
462
512
  var type = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : "date";
463
513
  var func = {
464
514
  isSameYear: isSameYear,
515
+ isSameQuarter: isSameQuarter,
465
516
  isSameMonth: isSameMonth,
466
517
  isSameWeek: isSameWeek,
467
518
  isSameDate: isSameDate
@@ -579,24 +630,46 @@ function getWeeks(_ref4, _ref5) {
579
630
 
580
631
  if (showWeekOfYear) {
581
632
  dataList.forEach(function (d) {
582
- d.unshift({
633
+ d.unshift(_objectSpread(_objectSpread({}, d[0]), {}, {
583
634
  active: false,
584
- weekOfYear: true,
585
635
  value: d[0].value,
586
636
  text: dayjs__default["default"](d[0].value).week()
587
- });
637
+ }));
588
638
  });
589
639
  }
590
640
 
591
641
  return dataList;
592
642
  }
593
- function getYears(year, _ref6) {
643
+ function getQuarters(year, _ref6) {
594
644
  var _ref6$disableDate = _ref6.disableDate,
595
645
  disableDate = _ref6$disableDate === void 0 ? function () {
596
646
  return false;
597
647
  } : _ref6$disableDate,
598
648
  minDate = _ref6.minDate,
599
649
  maxDate = _ref6.maxDate;
650
+ var quarterArr = [];
651
+ var today = getToday();
652
+
653
+ for (var i = 1; i <= 4; i++) {
654
+ var date = dayjs__default["default"](new Date(year, 0)).quarter(i).toDate();
655
+ quarterArr.push({
656
+ value: date,
657
+ now: isSame(date, today, "quarter"),
658
+ disabled: typeof disableDate === "function" && disableDate(date) || outOfRanges(date, minDate, maxDate),
659
+ active: false,
660
+ text: "Q".concat(i)
661
+ });
662
+ }
663
+
664
+ return chunk_1(quarterArr, 4);
665
+ }
666
+ function getYears(year, _ref7) {
667
+ var _ref7$disableDate = _ref7.disableDate,
668
+ disableDate = _ref7$disableDate === void 0 ? function () {
669
+ return false;
670
+ } : _ref7$disableDate,
671
+ minDate = _ref7.minDate,
672
+ maxDate = _ref7.maxDate;
600
673
  var startYear = parseInt((year / 10).toString(), 10) * 10;
601
674
  var endYear = startYear + 9;
602
675
  var yearArr = [];
@@ -661,8 +734,8 @@ function getMonths(year, params) {
661
734
 
662
735
  return chunk_1(MonthArr, 3);
663
736
  }
664
- function flagActive(data, _ref7) {
665
- var args = _extends({}, _ref7);
737
+ function flagActive(data, _ref8) {
738
+ var args = _extends({}, _ref8);
666
739
 
667
740
  var start = args.start,
668
741
  end = args.end,
@@ -741,11 +814,11 @@ function extractTimeObj() {
741
814
  meridiem: matchedMeridiem[0]
742
815
  };
743
816
  }
744
- function isEnabledDate(_ref8) {
745
- var value = _ref8.value,
746
- disableDate = _ref8.disableDate,
747
- mode = _ref8.mode,
748
- format = _ref8.format;
817
+ function isEnabledDate(_ref9) {
818
+ var value = _ref9.value,
819
+ disableDate = _ref9.disableDate,
820
+ mode = _ref9.mode,
821
+ format = _ref9.format;
749
822
  if (!disableDate) return true;
750
823
  var isEnabled = true;
751
824
 
@@ -803,6 +876,7 @@ exports.firstUpperCase = firstUpperCase;
803
876
  exports.flagActive = flagActive;
804
877
  exports.getDateObj = getDateObj;
805
878
  exports.getMonths = getMonths;
879
+ exports.getQuarters = getQuarters;
806
880
  exports.getToday = getToday;
807
881
  exports.getWeeks = getWeeks;
808
882
  exports.getYears = getYears;