tdesign-react 0.35.0-alpha.1 → 0.35.0-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.
- package/dist/tdesign.css +70 -53
- package/dist/tdesign.css.map +1 -1
- package/dist/tdesign.js +1681 -1041
- 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 +4 -4
- package/dist/tdesign.min.js.map +1 -1
- package/{esm/_chunks/dep-22976878.js → es/_chunks/dep-2ed7eef7.js} +2 -2
- package/{esm/_chunks/dep-22976878.js.map → es/_chunks/dep-2ed7eef7.js.map} +1 -1
- package/es/_chunks/{dep-a1ce2324.js → dep-3a109495.js} +1 -1
- package/es/_chunks/{dep-a1ce2324.js.map → dep-3a109495.js.map} +1 -1
- package/es/_chunks/{dep-619d2589.js → dep-aec4b56c.js} +1 -1
- package/es/_chunks/{dep-619d2589.js.map → dep-aec4b56c.js.map} +1 -1
- package/es/addon/Addon.js +1 -1
- package/es/addon/Addon.js.map +1 -1
- package/es/calendar/Calendar.js +1 -1
- package/es/calendar/index.js +1 -1
- package/es/card/Card.js +1 -1
- package/es/card/Card.js.map +1 -1
- package/es/cascader/Cascader.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/index.js +1 -1
- package/es/comment/Comment.js +1 -1
- package/es/comment/Comment.js.map +1 -1
- package/es/common/Check.js +1 -1
- package/es/common/Check.js.map +1 -1
- package/es/date-picker/DatePicker.js +23 -30
- package/es/date-picker/DatePicker.js.map +1 -1
- package/es/date-picker/DatePickerPanel.d.ts +7 -0
- package/es/date-picker/DatePickerPanel.js +349 -0
- package/es/date-picker/DatePickerPanel.js.map +1 -0
- package/es/date-picker/DateRangePicker.js +22 -15
- package/es/date-picker/DateRangePicker.js.map +1 -1
- package/es/date-picker/DateRangePickerPanel.d.ts +7 -0
- package/es/date-picker/DateRangePickerPanel.js +457 -0
- package/es/date-picker/DateRangePickerPanel.js.map +1 -0
- package/es/date-picker/base/Cell.d.ts +1 -1
- package/es/date-picker/base/Cell.js +5 -5
- package/es/date-picker/base/Cell.js.map +1 -1
- package/es/date-picker/base/Footer.js +3 -2
- package/es/date-picker/base/Footer.js.map +1 -1
- package/es/date-picker/base/Header.js +2 -2
- package/es/date-picker/base/Header.js.map +1 -1
- package/es/date-picker/base/Table.d.ts +3 -3
- package/es/date-picker/base/Table.js +2 -2
- package/es/date-picker/base/Table.js.map +1 -1
- package/es/date-picker/defaultProps.js +0 -2
- package/es/date-picker/defaultProps.js.map +1 -1
- package/es/date-picker/hooks/useFormat.d.ts +4 -1
- package/es/date-picker/hooks/useFormat.js +31 -19
- package/es/date-picker/hooks/useFormat.js.map +1 -1
- package/es/date-picker/hooks/useRange.d.ts +2 -2
- package/es/date-picker/hooks/useRange.js +52 -113
- package/es/date-picker/hooks/useRange.js.map +1 -1
- package/es/date-picker/hooks/useRangeValue.d.ts +24 -0
- package/es/date-picker/hooks/useRangeValue.js +156 -0
- package/es/date-picker/hooks/useRangeValue.js.map +1 -0
- package/es/date-picker/hooks/useSingle.d.ts +6 -10
- package/es/date-picker/hooks/useSingle.js +52 -72
- package/es/date-picker/hooks/useSingle.js.map +1 -1
- package/es/date-picker/hooks/useSingleValue.d.ts +14 -0
- package/es/date-picker/hooks/useSingleValue.js +101 -0
- package/es/date-picker/hooks/useSingleValue.js.map +1 -0
- package/es/date-picker/{panel → hooks}/useTableData.d.ts +2 -2
- package/es/date-picker/{panel → hooks}/useTableData.js +0 -0
- package/es/date-picker/hooks/useTableData.js.map +1 -0
- package/es/date-picker/index.d.ts +4 -20
- package/es/date-picker/index.js +19 -15
- package/es/date-picker/index.js.map +1 -1
- package/es/date-picker/panel/ExtraContent.d.ts +2 -2
- package/es/date-picker/panel/ExtraContent.js +1 -1
- package/es/date-picker/panel/ExtraContent.js.map +1 -1
- package/es/date-picker/panel/PanelContent.d.ts +17 -17
- package/es/date-picker/panel/PanelContent.js +7 -6
- package/es/date-picker/panel/PanelContent.js.map +1 -1
- package/{lib/date-picker/panel/DateRangePickerPanel.d.ts → es/date-picker/panel/RangePanel.d.ts} +4 -12
- package/es/date-picker/panel/{DateRangePickerPanel.js → RangePanel.js} +23 -17
- package/es/date-picker/panel/RangePanel.js.map +1 -0
- package/es/date-picker/panel/{DatePickerPanel.d.ts → SinglePanel.d.ts} +5 -13
- package/es/date-picker/panel/{DatePickerPanel.js → SinglePanel.js} +33 -27
- package/es/date-picker/panel/SinglePanel.js.map +1 -0
- package/es/date-picker/style/index.css +4 -4
- package/es/date-picker/type.d.ts +138 -9
- package/es/dialog/Dialog.js +1 -0
- package/es/dialog/Dialog.js.map +1 -1
- package/es/dialog/RenderDialog.js +44 -34
- package/es/dialog/RenderDialog.js.map +1 -1
- package/es/dialog/index.js +1 -0
- package/es/dialog/index.js.map +1 -1
- package/es/dialog/plugin.js +1 -0
- package/es/dialog/plugin.js.map +1 -1
- package/es/dialog/style/index.css +34 -23
- package/es/form/Form.js +6 -5
- package/es/form/Form.js.map +1 -1
- package/es/form/FormItem.js +5 -4
- package/es/form/FormItem.js.map +1 -1
- package/es/form/hooks/useFormItemStyle.js +5 -4
- package/es/form/hooks/useFormItemStyle.js.map +1 -1
- package/es/form/index.js +5 -4
- package/es/form/index.js.map +1 -1
- package/es/form/useInitialData.js +4 -3
- package/es/form/useInitialData.js.map +1 -1
- package/es/index.js +11 -6
- package/es/index.js.map +1 -1
- package/es/input/Input.js +1 -1
- package/es/input/Input.js.map +1 -1
- package/es/input/InputGroup.js +1 -1
- package/es/input/InputGroup.js.map +1 -1
- package/es/input-number/InputNumber.js +1 -1
- package/es/input-number/InputNumber.js.map +1 -1
- package/es/input-number/style/index.css +26 -26
- package/es/list/List.js +1 -1
- package/es/list/List.js.map +1 -1
- package/es/list/ListItem.js +1 -1
- package/es/list/ListItem.js.map +1 -1
- package/es/menu/HeadMenu.js +1 -1
- package/es/menu/HeadMenu.js.map +1 -1
- package/es/menu/Menu.js +1 -1
- package/es/menu/Menu.js.map +1 -1
- package/es/menu/MenuItem.js +1 -1
- package/es/menu/MenuItem.js.map +1 -1
- package/es/menu/SubMenu.js +2 -2
- package/es/menu/SubMenu.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/slider/Slider.js +1 -1
- package/es/slider/Slider.js.map +1 -1
- package/es/table/BaseTable.js +1 -0
- package/es/table/BaseTable.js.map +1 -1
- package/es/table/EnhancedTable.js +3 -2
- package/es/table/EnhancedTable.js.map +1 -1
- package/es/table/FilterController.js +2 -2
- package/es/table/PrimaryTable.js +3 -2
- package/es/table/PrimaryTable.js.map +1 -1
- package/es/table/TBody.js +6 -23
- package/es/table/TBody.js.map +1 -1
- package/es/table/TR.d.ts +2 -2
- package/es/table/TR.js +4 -14
- package/es/table/TR.js.map +1 -1
- 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/hooks/useRowspanAndColspan.d.ts +10 -0
- package/es/table/hooks/useRowspanAndColspan.js +74 -0
- package/es/table/hooks/useRowspanAndColspan.js.map +1 -0
- package/es/table/index.js +3 -2
- package/es/table/index.js.map +1 -1
- package/es/table/style/index.css +6 -0
- package/es/textarea/Textarea.js +2 -2
- package/es/textarea/Textarea.js.map +1 -1
- 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/upload/index.js +1 -0
- package/es/upload/index.js.map +1 -1
- package/es/upload/themes/image-card.js +1 -0
- package/es/upload/themes/image-card.js.map +1 -1
- package/es/upload/upload.js +1 -0
- package/es/upload/upload.js.map +1 -1
- package/{es/_chunks/dep-6e402ba5.js → esm/_chunks/dep-04427594.js} +2 -2
- package/{es/_chunks/dep-6e402ba5.js.map → esm/_chunks/dep-04427594.js.map} +1 -1
- package/esm/_chunks/{dep-a1ce2324.js → dep-3a109495.js} +1 -1
- package/esm/_chunks/{dep-a1ce2324.js.map → dep-3a109495.js.map} +1 -1
- package/esm/_chunks/{dep-619d2589.js → dep-aec4b56c.js} +1 -1
- package/esm/_chunks/{dep-619d2589.js.map → dep-aec4b56c.js.map} +1 -1
- package/esm/_common/style/web/components/date-picker-new/_index.less +4 -4
- package/esm/_common/style/web/components/dialog/_index.less +36 -23
- package/esm/_common/style/web/components/input-number/_index.less +4 -4
- package/esm/_common/style/web/components/table/_index.less +7 -0
- package/esm/addon/Addon.js +1 -1
- package/esm/addon/Addon.js.map +1 -1
- package/esm/calendar/Calendar.js +1 -1
- package/esm/calendar/index.js +1 -1
- package/esm/card/Card.js +1 -1
- package/esm/card/Card.js.map +1 -1
- package/esm/cascader/Cascader.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/index.js +1 -1
- package/esm/comment/Comment.js +1 -1
- package/esm/comment/Comment.js.map +1 -1
- package/esm/common/Check.js +1 -1
- package/esm/common/Check.js.map +1 -1
- package/esm/date-picker/DatePicker.js +23 -30
- package/esm/date-picker/DatePicker.js.map +1 -1
- package/esm/date-picker/DatePickerPanel.d.ts +7 -0
- package/esm/date-picker/DatePickerPanel.js +356 -0
- package/esm/date-picker/DatePickerPanel.js.map +1 -0
- package/esm/date-picker/DateRangePicker.js +22 -15
- package/esm/date-picker/DateRangePicker.js.map +1 -1
- package/esm/date-picker/DateRangePickerPanel.d.ts +7 -0
- package/esm/date-picker/DateRangePickerPanel.js +464 -0
- package/esm/date-picker/DateRangePickerPanel.js.map +1 -0
- package/esm/date-picker/base/Cell.d.ts +1 -1
- package/esm/date-picker/base/Cell.js +5 -5
- package/esm/date-picker/base/Cell.js.map +1 -1
- package/esm/date-picker/base/Footer.js +3 -2
- package/esm/date-picker/base/Footer.js.map +1 -1
- package/esm/date-picker/base/Header.js +2 -2
- package/esm/date-picker/base/Header.js.map +1 -1
- package/esm/date-picker/base/Table.d.ts +3 -3
- package/esm/date-picker/base/Table.js +2 -2
- package/esm/date-picker/base/Table.js.map +1 -1
- package/esm/date-picker/defaultProps.js +0 -2
- package/esm/date-picker/defaultProps.js.map +1 -1
- package/esm/date-picker/hooks/useFormat.d.ts +4 -1
- package/esm/date-picker/hooks/useFormat.js +31 -19
- package/esm/date-picker/hooks/useFormat.js.map +1 -1
- package/esm/date-picker/hooks/useRange.d.ts +2 -2
- package/esm/date-picker/hooks/useRange.js +52 -113
- package/esm/date-picker/hooks/useRange.js.map +1 -1
- package/esm/date-picker/hooks/useRangeValue.d.ts +24 -0
- package/esm/date-picker/hooks/useRangeValue.js +156 -0
- package/esm/date-picker/hooks/useRangeValue.js.map +1 -0
- package/esm/date-picker/hooks/useSingle.d.ts +6 -10
- package/esm/date-picker/hooks/useSingle.js +52 -72
- package/esm/date-picker/hooks/useSingle.js.map +1 -1
- package/esm/date-picker/hooks/useSingleValue.d.ts +14 -0
- package/esm/date-picker/hooks/useSingleValue.js +101 -0
- package/esm/date-picker/hooks/useSingleValue.js.map +1 -0
- package/esm/date-picker/{panel → hooks}/useTableData.d.ts +2 -2
- package/esm/date-picker/{panel → hooks}/useTableData.js +0 -0
- package/esm/date-picker/hooks/useTableData.js.map +1 -0
- package/esm/date-picker/index.d.ts +4 -20
- package/esm/date-picker/index.js +20 -16
- package/esm/date-picker/index.js.map +1 -1
- package/esm/date-picker/panel/ExtraContent.d.ts +2 -2
- package/esm/date-picker/panel/ExtraContent.js +1 -1
- package/esm/date-picker/panel/ExtraContent.js.map +1 -1
- package/esm/date-picker/panel/PanelContent.d.ts +17 -17
- package/esm/date-picker/panel/PanelContent.js +7 -6
- package/esm/date-picker/panel/PanelContent.js.map +1 -1
- package/{es/date-picker/panel/DateRangePickerPanel.d.ts → esm/date-picker/panel/RangePanel.d.ts} +4 -12
- package/esm/date-picker/panel/{DateRangePickerPanel.js → RangePanel.js} +23 -17
- package/esm/date-picker/panel/RangePanel.js.map +1 -0
- package/{lib/date-picker/panel/DatePickerPanel.d.ts → esm/date-picker/panel/SinglePanel.d.ts} +5 -13
- package/esm/date-picker/panel/{DatePickerPanel.js → SinglePanel.js} +33 -27
- package/esm/date-picker/panel/SinglePanel.js.map +1 -0
- package/esm/date-picker/type.d.ts +138 -9
- package/esm/dialog/Dialog.js +1 -0
- package/esm/dialog/Dialog.js.map +1 -1
- package/esm/dialog/RenderDialog.js +44 -34
- package/esm/dialog/RenderDialog.js.map +1 -1
- package/esm/dialog/index.js +1 -0
- package/esm/dialog/index.js.map +1 -1
- package/esm/dialog/plugin.js +1 -0
- package/esm/dialog/plugin.js.map +1 -1
- package/esm/form/Form.js +6 -5
- package/esm/form/Form.js.map +1 -1
- package/esm/form/FormItem.js +5 -4
- package/esm/form/FormItem.js.map +1 -1
- package/esm/form/hooks/useFormItemStyle.js +5 -4
- package/esm/form/hooks/useFormItemStyle.js.map +1 -1
- package/esm/form/index.js +5 -4
- package/esm/form/index.js.map +1 -1
- package/esm/form/useInitialData.js +4 -3
- package/esm/form/useInitialData.js.map +1 -1
- package/esm/index.js +11 -6
- package/esm/index.js.map +1 -1
- package/esm/input/Input.js +1 -1
- package/esm/input/Input.js.map +1 -1
- package/esm/input/InputGroup.js +1 -1
- package/esm/input/InputGroup.js.map +1 -1
- package/esm/input-number/InputNumber.js +1 -1
- package/esm/input-number/InputNumber.js.map +1 -1
- package/esm/list/List.js +1 -1
- package/esm/list/List.js.map +1 -1
- package/esm/list/ListItem.js +1 -1
- package/esm/list/ListItem.js.map +1 -1
- package/esm/menu/HeadMenu.js +1 -1
- package/esm/menu/HeadMenu.js.map +1 -1
- package/esm/menu/Menu.js +1 -1
- package/esm/menu/Menu.js.map +1 -1
- package/esm/menu/MenuItem.js +1 -1
- package/esm/menu/MenuItem.js.map +1 -1
- package/esm/menu/SubMenu.js +2 -2
- package/esm/menu/SubMenu.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/slider/Slider.js +1 -1
- package/esm/slider/Slider.js.map +1 -1
- package/esm/table/BaseTable.js +1 -0
- package/esm/table/BaseTable.js.map +1 -1
- package/esm/table/EnhancedTable.js +3 -2
- package/esm/table/EnhancedTable.js.map +1 -1
- package/esm/table/FilterController.js +2 -2
- package/esm/table/PrimaryTable.js +3 -2
- package/esm/table/PrimaryTable.js.map +1 -1
- package/esm/table/TBody.js +6 -23
- package/esm/table/TBody.js.map +1 -1
- package/esm/table/TR.d.ts +2 -2
- package/esm/table/TR.js +4 -14
- package/esm/table/TR.js.map +1 -1
- 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/hooks/useRowspanAndColspan.d.ts +10 -0
- package/esm/table/hooks/useRowspanAndColspan.js +74 -0
- package/esm/table/hooks/useRowspanAndColspan.js.map +1 -0
- package/esm/table/index.js +3 -2
- package/esm/table/index.js.map +1 -1
- package/esm/textarea/Textarea.js +2 -2
- package/esm/textarea/Textarea.js.map +1 -1
- 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/esm/upload/index.js +1 -0
- package/esm/upload/index.js.map +1 -1
- package/esm/upload/themes/image-card.js +1 -0
- package/esm/upload/themes/image-card.js.map +1 -1
- package/esm/upload/upload.js +1 -0
- package/esm/upload/upload.js.map +1 -1
- package/lib/_chunks/{dep-6f4603f8.js → dep-92e2ca45.js} +2 -2
- package/lib/_chunks/{dep-6f4603f8.js.map → dep-92e2ca45.js.map} +1 -1
- package/lib/_chunks/{dep-1b0236bc.js → dep-b8f2445b.js} +1 -1
- package/lib/_chunks/{dep-1b0236bc.js.map → dep-b8f2445b.js.map} +1 -1
- package/lib/_chunks/{dep-202d2d2a.js → dep-cd7ea040.js} +1 -1
- package/lib/_chunks/{dep-202d2d2a.js.map → dep-cd7ea040.js.map} +1 -1
- package/lib/addon/Addon.js +1 -1
- package/lib/addon/Addon.js.map +1 -1
- package/lib/calendar/Calendar.js +1 -1
- package/lib/calendar/index.js +1 -1
- package/lib/card/Card.js +1 -1
- package/lib/card/Card.js.map +1 -1
- package/lib/cascader/Cascader.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/index.js +1 -1
- package/lib/comment/Comment.js +1 -1
- package/lib/comment/Comment.js.map +1 -1
- package/lib/common/Check.js +1 -1
- package/lib/common/Check.js.map +1 -1
- package/lib/date-picker/DatePicker.js +21 -28
- package/lib/date-picker/DatePicker.js.map +1 -1
- package/lib/date-picker/DatePickerPanel.d.ts +7 -0
- package/lib/date-picker/DatePickerPanel.js +343 -0
- package/lib/date-picker/DatePickerPanel.js.map +1 -0
- package/lib/date-picker/DateRangePicker.js +22 -15
- package/lib/date-picker/DateRangePicker.js.map +1 -1
- package/lib/date-picker/DateRangePickerPanel.d.ts +7 -0
- package/lib/date-picker/DateRangePickerPanel.js +451 -0
- package/lib/date-picker/DateRangePickerPanel.js.map +1 -0
- package/lib/date-picker/base/Cell.d.ts +1 -1
- package/lib/date-picker/base/Cell.js +5 -5
- package/lib/date-picker/base/Cell.js.map +1 -1
- package/lib/date-picker/base/Footer.js +3 -2
- package/lib/date-picker/base/Footer.js.map +1 -1
- package/lib/date-picker/base/Header.js +2 -2
- package/lib/date-picker/base/Header.js.map +1 -1
- package/lib/date-picker/base/Table.d.ts +3 -3
- package/lib/date-picker/base/Table.js +2 -2
- package/lib/date-picker/base/Table.js.map +1 -1
- package/lib/date-picker/defaultProps.js +0 -2
- package/lib/date-picker/defaultProps.js.map +1 -1
- package/lib/date-picker/hooks/useFormat.d.ts +4 -1
- package/lib/date-picker/hooks/useFormat.js +31 -19
- package/lib/date-picker/hooks/useFormat.js.map +1 -1
- package/lib/date-picker/hooks/useRange.d.ts +2 -2
- package/lib/date-picker/hooks/useRange.js +52 -113
- package/lib/date-picker/hooks/useRange.js.map +1 -1
- package/lib/date-picker/hooks/useRangeValue.d.ts +24 -0
- package/lib/date-picker/hooks/useRangeValue.js +162 -0
- package/lib/date-picker/hooks/useRangeValue.js.map +1 -0
- package/lib/date-picker/hooks/useSingle.d.ts +6 -10
- package/lib/date-picker/hooks/useSingle.js +52 -72
- package/lib/date-picker/hooks/useSingle.js.map +1 -1
- package/lib/date-picker/hooks/useSingleValue.d.ts +14 -0
- package/lib/date-picker/hooks/useSingleValue.js +106 -0
- package/lib/date-picker/hooks/useSingleValue.js.map +1 -0
- package/lib/date-picker/{panel → hooks}/useTableData.d.ts +2 -2
- package/lib/date-picker/{panel → hooks}/useTableData.js +0 -0
- package/lib/date-picker/hooks/useTableData.js.map +1 -0
- package/lib/date-picker/index.d.ts +4 -20
- package/lib/date-picker/index.js +20 -16
- package/lib/date-picker/index.js.map +1 -1
- package/lib/date-picker/panel/ExtraContent.d.ts +2 -2
- package/lib/date-picker/panel/ExtraContent.js +1 -1
- package/lib/date-picker/panel/ExtraContent.js.map +1 -1
- package/lib/date-picker/panel/PanelContent.d.ts +17 -17
- package/lib/date-picker/panel/PanelContent.js +7 -6
- package/lib/date-picker/panel/PanelContent.js.map +1 -1
- package/{esm/date-picker/panel/DateRangePickerPanel.d.ts → lib/date-picker/panel/RangePanel.d.ts} +4 -12
- package/lib/date-picker/panel/{DateRangePickerPanel.js → RangePanel.js} +24 -18
- package/lib/date-picker/panel/RangePanel.js.map +1 -0
- package/{esm/date-picker/panel/DatePickerPanel.d.ts → lib/date-picker/panel/SinglePanel.d.ts} +5 -13
- package/lib/date-picker/panel/{DatePickerPanel.js → SinglePanel.js} +33 -27
- package/lib/date-picker/panel/SinglePanel.js.map +1 -0
- package/lib/date-picker/type.d.ts +138 -9
- package/lib/dialog/Dialog.js +1 -0
- package/lib/dialog/Dialog.js.map +1 -1
- package/lib/dialog/RenderDialog.js +43 -33
- package/lib/dialog/RenderDialog.js.map +1 -1
- package/lib/dialog/index.js +1 -0
- package/lib/dialog/index.js.map +1 -1
- package/lib/dialog/plugin.js +1 -0
- package/lib/dialog/plugin.js.map +1 -1
- package/lib/form/Form.js +6 -5
- package/lib/form/Form.js.map +1 -1
- package/lib/form/FormItem.js +5 -4
- package/lib/form/FormItem.js.map +1 -1
- package/lib/form/hooks/useFormItemStyle.js +5 -4
- package/lib/form/hooks/useFormItemStyle.js.map +1 -1
- package/lib/form/index.js +5 -4
- package/lib/form/index.js.map +1 -1
- package/lib/form/useInitialData.js +4 -3
- package/lib/form/useInitialData.js.map +1 -1
- package/lib/index-lib.js +11 -6
- package/lib/index-lib.js.map +1 -1
- package/lib/index.js +11 -6
- package/lib/index.js.map +1 -1
- package/lib/input/Input.js +1 -1
- package/lib/input/Input.js.map +1 -1
- package/lib/input/InputGroup.js +1 -1
- package/lib/input/InputGroup.js.map +1 -1
- package/lib/input-number/InputNumber.js +1 -1
- package/lib/input-number/InputNumber.js.map +1 -1
- package/lib/list/List.js +1 -1
- package/lib/list/List.js.map +1 -1
- package/lib/list/ListItem.js +1 -1
- package/lib/list/ListItem.js.map +1 -1
- package/lib/menu/HeadMenu.js +1 -1
- package/lib/menu/HeadMenu.js.map +1 -1
- package/lib/menu/Menu.js +1 -1
- package/lib/menu/Menu.js.map +1 -1
- package/lib/menu/MenuItem.js +1 -1
- package/lib/menu/MenuItem.js.map +1 -1
- package/lib/menu/SubMenu.js +2 -2
- package/lib/menu/SubMenu.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/slider/Slider.js +1 -1
- package/lib/slider/Slider.js.map +1 -1
- package/lib/table/BaseTable.js +1 -0
- package/lib/table/BaseTable.js.map +1 -1
- package/lib/table/EnhancedTable.js +3 -2
- package/lib/table/EnhancedTable.js.map +1 -1
- package/lib/table/FilterController.js +2 -2
- package/lib/table/PrimaryTable.js +3 -2
- package/lib/table/PrimaryTable.js.map +1 -1
- package/lib/table/TBody.js +6 -23
- package/lib/table/TBody.js.map +1 -1
- package/lib/table/TR.d.ts +2 -2
- package/lib/table/TR.js +4 -14
- package/lib/table/TR.js.map +1 -1
- 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/hooks/useRowspanAndColspan.d.ts +10 -0
- package/lib/table/hooks/useRowspanAndColspan.js +78 -0
- package/lib/table/hooks/useRowspanAndColspan.js.map +1 -0
- package/lib/table/index.js +3 -2
- package/lib/table/index.js.map +1 -1
- package/lib/textarea/Textarea.js +2 -2
- package/lib/textarea/Textarea.js.map +1 -1
- 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/lib/upload/index.js +1 -0
- package/lib/upload/index.js.map +1 -1
- package/lib/upload/themes/image-card.js +1 -0
- package/lib/upload/themes/image-card.js.map +1 -1
- package/lib/upload/upload.js +1 -0
- package/lib/upload/upload.js.map +1 -1
- package/package.json +1 -1
- package/es/date-picker/panel/DatePickerPanel.js.map +0 -1
- package/es/date-picker/panel/DateRangePickerPanel.js.map +0 -1
- package/es/date-picker/panel/useTableData.js.map +0 -1
- package/esm/date-picker/panel/DatePickerPanel.js.map +0 -1
- package/esm/date-picker/panel/DateRangePickerPanel.js.map +0 -1
- package/esm/date-picker/panel/useTableData.js.map +0 -1
- package/lib/date-picker/panel/DatePickerPanel.js.map +0 -1
- package/lib/date-picker/panel/DateRangePickerPanel.js.map +0 -1
- package/lib/date-picker/panel/useTableData.js.map +0 -1
|
@@ -11,8 +11,8 @@ import { CalendarIcon } from 'tdesign-icons-react';
|
|
|
11
11
|
import dayjs from 'dayjs';
|
|
12
12
|
import classNames from 'classnames';
|
|
13
13
|
import useConfig from '../../_util/useConfig.js';
|
|
14
|
-
import useControlled from '../../hooks/useControlled.js';
|
|
15
14
|
import useFormat from './useFormat.js';
|
|
15
|
+
import useRange$1 from './useRangeValue.js';
|
|
16
16
|
import '../../_chunks/dep-0e5be0b2.js';
|
|
17
17
|
import '../../_chunks/dep-555da20c.js';
|
|
18
18
|
import '../../_chunks/dep-12690e1d.js';
|
|
@@ -40,16 +40,17 @@ import '../../_chunks/dep-67009882.js';
|
|
|
40
40
|
import '../../locale/zh_CN.js';
|
|
41
41
|
import '../../_common/js/global-config/locale/zh_CN.js';
|
|
42
42
|
import '../../config-provider/zh_CN_config.js';
|
|
43
|
-
import '../../_chunks/dep-0db6b692.js';
|
|
44
|
-
import '../../_chunks/dep-6d2697ef.js';
|
|
45
|
-
import '../../_chunks/dep-42701b6c.js';
|
|
46
|
-
import '../../_chunks/dep-e8f6f682.js';
|
|
47
|
-
import '../../_chunks/dep-863396c0.js';
|
|
48
|
-
import '../../_util/noop.js';
|
|
49
43
|
import '../../_common/js/date-picker/utils-new.js';
|
|
50
44
|
import '../../_chunks/dep-3d09d1f3.js';
|
|
45
|
+
import '../../_chunks/dep-42701b6c.js';
|
|
51
46
|
import '../../_chunks/dep-87214e71.js';
|
|
52
47
|
import '../../_chunks/dep-5ed520e8.js';
|
|
48
|
+
import '../../_chunks/dep-863396c0.js';
|
|
49
|
+
import '../../hooks/useControlled.js';
|
|
50
|
+
import '../../_chunks/dep-0db6b692.js';
|
|
51
|
+
import '../../_chunks/dep-6d2697ef.js';
|
|
52
|
+
import '../../_chunks/dep-e8f6f682.js';
|
|
53
|
+
import '../../_util/noop.js';
|
|
53
54
|
|
|
54
55
|
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; }
|
|
55
56
|
|
|
@@ -58,44 +59,8 @@ var PARTIAL_MAP = {
|
|
|
58
59
|
first: "start",
|
|
59
60
|
second: "end"
|
|
60
61
|
};
|
|
61
|
-
|
|
62
|
-
function initYearMonthTime(value) {
|
|
63
|
-
var mode = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : "date";
|
|
64
|
-
var format = arguments.length > 2 ? arguments[2] : undefined;
|
|
65
|
-
var timeFormat = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : "HH:mm:ss";
|
|
66
|
-
var defaultYearMonthTime = {
|
|
67
|
-
year: [dayjs().year(), dayjs().year()],
|
|
68
|
-
month: [dayjs().month(), dayjs().month()],
|
|
69
|
-
time: [dayjs().format(timeFormat), dayjs().format(timeFormat)]
|
|
70
|
-
};
|
|
71
|
-
|
|
72
|
-
if (mode === "year") {
|
|
73
|
-
defaultYearMonthTime.year[1] += 10;
|
|
74
|
-
} else if (mode === "month") {
|
|
75
|
-
defaultYearMonthTime.year[1] += 1;
|
|
76
|
-
} else if (mode === "date") {
|
|
77
|
-
defaultYearMonthTime.month[1] += 1;
|
|
78
|
-
}
|
|
79
|
-
|
|
80
|
-
if (!value || !Array.isArray(value) || !value.length) {
|
|
81
|
-
return defaultYearMonthTime;
|
|
82
|
-
}
|
|
83
|
-
|
|
84
|
-
return {
|
|
85
|
-
year: value.map(function (v) {
|
|
86
|
-
return dayjs(v, format).year();
|
|
87
|
-
}),
|
|
88
|
-
month: value.map(function (v) {
|
|
89
|
-
return dayjs(v, format).month();
|
|
90
|
-
}),
|
|
91
|
-
time: value.map(function (v) {
|
|
92
|
-
return dayjs(v, format).format(timeFormat);
|
|
93
|
-
})
|
|
94
|
-
};
|
|
95
|
-
}
|
|
96
|
-
|
|
97
62
|
function useRange(props) {
|
|
98
|
-
var
|
|
63
|
+
var _props$placeholder, _props$suffixIcon, _props$popupProps$ove, _props$popupProps, _props$popupProps2;
|
|
99
64
|
|
|
100
65
|
var _useConfig = useConfig(),
|
|
101
66
|
classPrefix = _useConfig.classPrefix,
|
|
@@ -104,36 +69,31 @@ function useRange(props) {
|
|
|
104
69
|
var name = "".concat(classPrefix, "-date-range-picker");
|
|
105
70
|
var isMountedRef = useRef(false);
|
|
106
71
|
var inputRef = useRef();
|
|
107
|
-
var mode = props.mode,
|
|
108
|
-
prefixIcon = props.prefixIcon,
|
|
109
|
-
suffixIcon = props.suffixIcon,
|
|
110
|
-
rangeInputPropsFromProps = props.rangeInputProps,
|
|
111
|
-
popupPropsFromProps = props.popupProps,
|
|
112
|
-
allowInput = props.allowInput,
|
|
113
|
-
clearable = props.clearable,
|
|
114
|
-
_props$placeholder = props.placeholder,
|
|
115
|
-
placeholder = _props$placeholder === void 0 ? globalDatePickerConfig.placeholder[mode] : _props$placeholder,
|
|
116
|
-
_onBlur = props.onBlur,
|
|
117
|
-
_onFocus = props.onFocus,
|
|
118
|
-
onInput = props.onInput;
|
|
119
72
|
|
|
120
|
-
var
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
73
|
+
var _useRangeValue = useRange$1(props),
|
|
74
|
+
value = _useRangeValue.value,
|
|
75
|
+
onChange = _useRangeValue.onChange,
|
|
76
|
+
time = _useRangeValue.time,
|
|
77
|
+
setTime = _useRangeValue.setTime,
|
|
78
|
+
month = _useRangeValue.month,
|
|
79
|
+
setMonth = _useRangeValue.setMonth,
|
|
80
|
+
year = _useRangeValue.year,
|
|
81
|
+
setYear = _useRangeValue.setYear,
|
|
82
|
+
cacheValue = _useRangeValue.cacheValue,
|
|
83
|
+
setCacheValue = _useRangeValue.setCacheValue,
|
|
84
|
+
isFirstValueSelected = _useRangeValue.isFirstValueSelected,
|
|
85
|
+
setIsFirstValueSelected = _useRangeValue.setIsFirstValueSelected;
|
|
124
86
|
|
|
125
87
|
var _useFormat = useFormat({
|
|
126
|
-
mode: mode,
|
|
127
88
|
value: value,
|
|
89
|
+
mode: props.mode,
|
|
128
90
|
format: props.format,
|
|
129
91
|
valueType: props.valueType,
|
|
130
92
|
enableTimePicker: props.enableTimePicker
|
|
131
93
|
}),
|
|
132
|
-
format = _useFormat.format,
|
|
133
94
|
isValidDate = _useFormat.isValidDate,
|
|
134
95
|
timeFormat = _useFormat.timeFormat,
|
|
135
|
-
formatDate = _useFormat.formatDate
|
|
136
|
-
formatTime = _useFormat.formatTime;
|
|
96
|
+
formatDate = _useFormat.formatDate;
|
|
137
97
|
|
|
138
98
|
if (!Array.isArray(value)) {
|
|
139
99
|
console.error("typeof value: ".concat(value, " must be Array!"));
|
|
@@ -156,44 +116,19 @@ function useRange(props) {
|
|
|
156
116
|
activeIndex = _useState6[0],
|
|
157
117
|
setActiveIndex = _useState6[1];
|
|
158
118
|
|
|
159
|
-
var _useState7 = useState(
|
|
119
|
+
var _useState7 = useState(formatDate(value)),
|
|
160
120
|
_useState8 = _slicedToArray(_useState7, 2),
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
var _useState9 = useState(initYearMonthTime(value, mode, format, timeFormat).time),
|
|
165
|
-
_useState10 = _slicedToArray(_useState9, 2),
|
|
166
|
-
timeValue = _useState10[0],
|
|
167
|
-
setTimeValue = _useState10[1];
|
|
121
|
+
inputValue = _useState8[0],
|
|
122
|
+
setInputValue = _useState8[1];
|
|
168
123
|
|
|
169
|
-
var
|
|
170
|
-
_useState12 = _slicedToArray(_useState11, 2),
|
|
171
|
-
month = _useState12[0],
|
|
172
|
-
setMonth = _useState12[1];
|
|
173
|
-
|
|
174
|
-
var _useState13 = useState(initYearMonthTime(value, mode, format).year),
|
|
175
|
-
_useState14 = _slicedToArray(_useState13, 2),
|
|
176
|
-
year = _useState14[0],
|
|
177
|
-
setYear = _useState14[1];
|
|
178
|
-
|
|
179
|
-
var _useState15 = useState(formatDate(value)),
|
|
180
|
-
_useState16 = _slicedToArray(_useState15, 2),
|
|
181
|
-
inputValue = _useState16[0],
|
|
182
|
-
setInputValue = _useState16[1];
|
|
183
|
-
|
|
184
|
-
var _useState17 = useState(formatDate(value)),
|
|
185
|
-
_useState18 = _slicedToArray(_useState17, 2),
|
|
186
|
-
cacheValue = _useState18[0],
|
|
187
|
-
setCacheValue = _useState18[1];
|
|
188
|
-
|
|
189
|
-
var rangeInputProps = _objectSpread(_objectSpread({}, rangeInputPropsFromProps), {}, {
|
|
124
|
+
var rangeInputProps = _objectSpread(_objectSpread({}, props.rangeInputProps), {}, {
|
|
190
125
|
ref: inputRef,
|
|
191
|
-
clearable: clearable,
|
|
192
|
-
prefixIcon: prefixIcon,
|
|
193
|
-
readonly: !allowInput,
|
|
194
|
-
placeholder: placeholder,
|
|
126
|
+
clearable: props.clearable,
|
|
127
|
+
prefixIcon: props.prefixIcon,
|
|
128
|
+
readonly: !props.allowInput,
|
|
129
|
+
placeholder: (_props$placeholder = props.placeholder) !== null && _props$placeholder !== void 0 ? _props$placeholder : globalDatePickerConfig.placeholder[props.mode],
|
|
195
130
|
activeIndex: popupVisible ? activeIndex : void 0,
|
|
196
|
-
suffixIcon: suffixIcon
|
|
131
|
+
suffixIcon: (_props$suffixIcon = props.suffixIcon) !== null && _props$suffixIcon !== void 0 ? _props$suffixIcon : /* @__PURE__ */React.createElement(CalendarIcon, null),
|
|
197
132
|
className: classNames(_defineProperty({}, "".concat(name, "__input--placeholder"), isHoverCell)),
|
|
198
133
|
onClick: function onClick(_ref) {
|
|
199
134
|
var position = _ref.position;
|
|
@@ -209,18 +144,22 @@ function useRange(props) {
|
|
|
209
144
|
});
|
|
210
145
|
},
|
|
211
146
|
onBlur: function onBlur(newVal, _ref3) {
|
|
147
|
+
var _props$onBlur;
|
|
148
|
+
|
|
212
149
|
var e = _ref3.e,
|
|
213
150
|
position = _ref3.position;
|
|
214
|
-
|
|
151
|
+
(_props$onBlur = props.onBlur) === null || _props$onBlur === void 0 ? void 0 : _props$onBlur.call(props, {
|
|
215
152
|
value: newVal,
|
|
216
153
|
partial: PARTIAL_MAP[position],
|
|
217
154
|
e: e
|
|
218
155
|
});
|
|
219
156
|
},
|
|
220
157
|
onFocus: function onFocus(newVal, _ref4) {
|
|
158
|
+
var _props$onFocus;
|
|
159
|
+
|
|
221
160
|
var e = _ref4.e,
|
|
222
161
|
position = _ref4.position;
|
|
223
|
-
|
|
162
|
+
(_props$onFocus = props.onFocus) === null || _props$onFocus === void 0 ? void 0 : _props$onFocus.call(props, {
|
|
224
163
|
value: newVal,
|
|
225
164
|
partial: PARTIAL_MAP[position],
|
|
226
165
|
e: e
|
|
@@ -228,10 +167,12 @@ function useRange(props) {
|
|
|
228
167
|
setActiveIndex(position === "first" ? 0 : 1);
|
|
229
168
|
},
|
|
230
169
|
onChange: function onChange(newVal, _ref5) {
|
|
170
|
+
var _props$onInput;
|
|
171
|
+
|
|
231
172
|
var e = _ref5.e,
|
|
232
173
|
position = _ref5.position;
|
|
233
174
|
var index = position === "first" ? 0 : 1;
|
|
234
|
-
onInput === null || onInput === void 0 ? void 0 : onInput({
|
|
175
|
+
(_props$onInput = props.onInput) === null || _props$onInput === void 0 ? void 0 : _props$onInput.call(props, {
|
|
235
176
|
input: newVal[index],
|
|
236
177
|
value: value,
|
|
237
178
|
partial: PARTIAL_MAP[position],
|
|
@@ -245,18 +186,20 @@ function useRange(props) {
|
|
|
245
186
|
newVal.forEach(function (v, i) {
|
|
246
187
|
newYear.push(dayjs(v).year() || year[i]);
|
|
247
188
|
newMonth.push(dayjs(v).month() || month[i]);
|
|
248
|
-
newTime.push(dayjs(v).format(timeFormat) ||
|
|
189
|
+
newTime.push(dayjs(v).format(timeFormat) || time[i]);
|
|
249
190
|
});
|
|
250
191
|
setYear(newYear);
|
|
251
192
|
setMonth(newMonth);
|
|
252
|
-
|
|
193
|
+
setTime(newTime);
|
|
253
194
|
},
|
|
254
195
|
onEnter: function onEnter(newVal) {
|
|
255
196
|
if (!isValidDate(newVal) && !isValidDate(value)) return;
|
|
256
197
|
setPopupVisible(false);
|
|
257
198
|
|
|
258
199
|
if (isValidDate(newVal)) {
|
|
259
|
-
onChange(formatDate(newVal,
|
|
200
|
+
onChange(formatDate(newVal, {
|
|
201
|
+
formatType: "valueType"
|
|
202
|
+
}), {
|
|
260
203
|
dayjsValue: newVal.map(function (v) {
|
|
261
204
|
return dayjs(v);
|
|
262
205
|
}),
|
|
@@ -272,11 +215,11 @@ function useRange(props) {
|
|
|
272
215
|
|
|
273
216
|
var popupProps = _objectSpread(_objectSpread({
|
|
274
217
|
expandAnimation: true
|
|
275
|
-
},
|
|
276
|
-
overlayStyle: (
|
|
218
|
+
}, props.popupProps), {}, {
|
|
219
|
+
overlayStyle: (_props$popupProps$ove = (_props$popupProps = props.popupProps) === null || _props$popupProps === void 0 ? void 0 : _props$popupProps.overlayStyle) !== null && _props$popupProps$ove !== void 0 ? _props$popupProps$ove : {
|
|
277
220
|
width: "auto"
|
|
278
221
|
},
|
|
279
|
-
overlayClassName: classNames(
|
|
222
|
+
overlayClassName: classNames((_props$popupProps2 = props.popupProps) === null || _props$popupProps2 === void 0 ? void 0 : _props$popupProps2.overlayClassName, "".concat(name, "__panel-container")),
|
|
280
223
|
onVisibleChange: function onVisibleChange(visible, context) {
|
|
281
224
|
if (context.trigger === "trigger-element-click") {
|
|
282
225
|
var indexMap = {
|
|
@@ -303,15 +246,11 @@ function useRange(props) {
|
|
|
303
246
|
useEffect(function () {
|
|
304
247
|
if (!value) {
|
|
305
248
|
setInputValue([]);
|
|
306
|
-
setCacheValue([]);
|
|
307
|
-
setTimeValue([dayjs().format(timeFormat), dayjs().format(timeFormat)]);
|
|
308
249
|
return;
|
|
309
250
|
}
|
|
310
251
|
|
|
311
252
|
if (!isValidDate(value, "valueType")) return;
|
|
312
253
|
setInputValue(formatDate(value));
|
|
313
|
-
setCacheValue(formatDate(value));
|
|
314
|
-
setTimeValue(formatTime(value));
|
|
315
254
|
}, [value]);
|
|
316
255
|
useEffect(function () {
|
|
317
256
|
if (!isMountedRef.current) {
|
|
@@ -331,7 +270,7 @@ function useRange(props) {
|
|
|
331
270
|
year: year,
|
|
332
271
|
month: month,
|
|
333
272
|
value: value,
|
|
334
|
-
|
|
273
|
+
time: time,
|
|
335
274
|
inputValue: inputValue,
|
|
336
275
|
popupVisible: popupVisible,
|
|
337
276
|
rangeInputProps: rangeInputProps,
|
|
@@ -340,7 +279,7 @@ function useRange(props) {
|
|
|
340
279
|
onChange: onChange,
|
|
341
280
|
setYear: setYear,
|
|
342
281
|
setMonth: setMonth,
|
|
343
|
-
|
|
282
|
+
setTime: setTime,
|
|
344
283
|
setIsHoverCell: setIsHoverCell,
|
|
345
284
|
setInputValue: setInputValue,
|
|
346
285
|
setPopupVisible: setPopupVisible,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useRange.js","sources":["../../../src/date-picker/hooks/useRange.tsx"],"sourcesContent":["import React, { useState, useEffect, useRef } from 'react';\nimport { CalendarIcon } from 'tdesign-icons-react';\nimport dayjs from 'dayjs';\nimport classNames from 'classnames';\nimport useConfig from '../../_util/useConfig';\nimport useControlled from '../../hooks/useControlled';\nimport { RangeInputRefInterface } from '../../range-input';\nimport { TdDateRangePickerProps, DateValue } from '../type';\nimport useFormat from './useFormat';\n\nexport const PARTIAL_MAP = { first: 'start', second: 'end' };\n\n// 初始化面板年份月份\nfunction initYearMonthTime(value: DateValue[], mode = 'date', format: string, timeFormat = 'HH:mm:ss') {\n const defaultYearMonthTime = {\n year: [dayjs().year(), dayjs().year()],\n month: [dayjs().month(), dayjs().month()],\n time: [dayjs().format(timeFormat), dayjs().format(timeFormat)],\n };\n if (mode === 'year') {\n defaultYearMonthTime.year[1] += 10;\n } else if (mode === 'month') {\n defaultYearMonthTime.year[1] += 1;\n } else if (mode === 'date') {\n defaultYearMonthTime.month[1] += 1;\n }\n\n if (!value || !Array.isArray(value) || !value.length) {\n return defaultYearMonthTime;\n }\n\n return {\n year: value.map((v) => dayjs(v, format).year()),\n month: value.map((v) => dayjs(v, format).month()),\n time: value.map((v) => dayjs(v, format).format(timeFormat)),\n };\n}\n\nexport default function useRange(props: TdDateRangePickerProps) {\n const { classPrefix, datePicker: globalDatePickerConfig } = useConfig();\n const name = `${classPrefix}-date-range-picker`;\n\n const isMountedRef = useRef(false);\n const inputRef = useRef<RangeInputRefInterface>();\n\n const {\n mode,\n prefixIcon,\n suffixIcon,\n rangeInputProps: rangeInputPropsFromProps,\n popupProps: popupPropsFromProps,\n allowInput,\n clearable,\n placeholder = globalDatePickerConfig.placeholder[mode],\n onBlur,\n onFocus,\n onInput,\n } = props;\n\n const [value, onChange] = useControlled(props, 'value', props.onChange);\n const { format, isValidDate, timeFormat, formatDate, formatTime } = useFormat({\n mode,\n value,\n format: props.format,\n valueType: props.valueType,\n enableTimePicker: props.enableTimePicker,\n });\n\n // warning invalid value\n if (!Array.isArray(value)) {\n console.error(`typeof value: ${value} must be Array!`);\n } else if (!isValidDate(value, 'valueType')) {\n console.error(`value: ${value} is invalid datetime!`);\n }\n\n const [popupVisible, setPopupVisible] = useState(false);\n const [isHoverCell, setIsHoverCell] = useState(false);\n const [activeIndex, setActiveIndex] = useState(0); // 确定当前选中的输入框序号\n const [isFirstValueSelected, setIsFirstValueSelected] = useState(false); // 记录面板点击次数,两次后才自动关闭\n const [timeValue, setTimeValue] = useState(initYearMonthTime(value, mode, format, timeFormat).time);\n const [month, setMonth] = useState<Array<number>>(initYearMonthTime(value, mode, format).month);\n const [year, setYear] = useState<Array<number>>(initYearMonthTime(value, mode, format).year);\n // 未真正选中前可能不断变更输入框的内容\n const [inputValue, setInputValue] = useState(formatDate(value));\n // 选择阶段预选状态\n const [cacheValue, setCacheValue] = useState(formatDate(value));\n\n // input 设置\n const rangeInputProps = {\n ...rangeInputPropsFromProps,\n ref: inputRef,\n clearable,\n prefixIcon,\n readonly: !allowInput,\n placeholder,\n activeIndex: popupVisible ? activeIndex : undefined,\n suffixIcon: suffixIcon || <CalendarIcon />,\n className: classNames({\n [`${name}__input--placeholder`]: isHoverCell,\n }),\n onClick: ({ position }) => {\n setActiveIndex(position === 'first' ? 0 : 1);\n },\n onClear: ({ e }) => {\n e.stopPropagation();\n setPopupVisible(false);\n onChange([], { dayjsValue: [], trigger: 'clear' });\n },\n onBlur: (newVal: string[], { e, position }) => {\n onBlur?.({ value: newVal, partial: PARTIAL_MAP[position], e });\n },\n onFocus: (newVal: string[], { e, position }) => {\n onFocus?.({ value: newVal, partial: PARTIAL_MAP[position], e });\n setActiveIndex(position === 'first' ? 0 : 1);\n },\n onChange: (newVal: string[], { e, position }) => {\n const index = position === 'first' ? 0 : 1;\n\n onInput?.({ input: newVal[index], value, partial: PARTIAL_MAP[position], e });\n setInputValue(newVal);\n\n // 跳过不符合格式化的输入框内容\n if (!isValidDate(newVal)) return;\n const newYear = [];\n const newMonth = [];\n const newTime = [];\n newVal.forEach((v, i) => {\n newYear.push(dayjs(v).year() || year[i]);\n newMonth.push(dayjs(v).month() || month[i]);\n newTime.push(dayjs(v).format(timeFormat) || timeValue[i]);\n });\n setYear(newYear);\n setMonth(newMonth);\n setTimeValue(newTime);\n },\n onEnter: (newVal: string[]) => {\n if (!isValidDate(newVal) && !isValidDate(value)) return;\n\n setPopupVisible(false);\n if (isValidDate(newVal)) {\n onChange(formatDate(newVal, 'valueType') as DateValue[], {\n dayjsValue: newVal.map((v) => dayjs(v)),\n trigger: 'enter',\n });\n } else if (isValidDate(value)) {\n setInputValue(formatDate(value));\n } else {\n setInputValue([]);\n }\n },\n };\n\n // popup 设置\n const popupProps = {\n expandAnimation: true,\n ...popupPropsFromProps,\n overlayStyle: popupPropsFromProps?.overlayStyle ?? { width: 'auto' },\n overlayClassName: classNames(popupPropsFromProps?.overlayClassName, `${name}__panel-container`),\n onVisibleChange: (visible: boolean, context) => {\n // 输入框点击不关闭面板\n if (context.trigger === 'trigger-element-click') {\n const indexMap = { 0: 'first', 1: 'second' };\n inputRef.current.focus({ position: indexMap[activeIndex] });\n return setPopupVisible(true);\n }\n if (visible) {\n // 展开后重置点击次数\n setIsFirstValueSelected(false);\n } else {\n setIsHoverCell(false);\n setInputValue(formatDate(value));\n }\n\n setPopupVisible(visible);\n },\n };\n\n // 输入框响应 value 变化\n useEffect(() => {\n if (!value) {\n setInputValue([]);\n setCacheValue([]);\n setTimeValue([dayjs().format(timeFormat), dayjs().format(timeFormat)]);\n return;\n }\n if (!isValidDate(value, 'valueType')) return;\n\n setInputValue(formatDate(value));\n setCacheValue(formatDate(value));\n setTimeValue(formatTime(value));\n // eslint-disable-next-line\n }, [value]);\n\n // activeIndex 变化自动 focus 对应输入框\n useEffect(() => {\n if (!isMountedRef.current) {\n isMountedRef.current = true;\n return;\n }\n const indexMap = { 0: 'first', 1: 'second' };\n inputRef.current.focus({ position: indexMap[activeIndex] });\n // eslint-disable-next-line\n }, [activeIndex]);\n\n return {\n year,\n month,\n value,\n timeValue,\n inputValue,\n popupVisible,\n rangeInputProps,\n popupProps,\n isHoverCell,\n onChange,\n setYear,\n setMonth,\n setTimeValue,\n setIsHoverCell,\n setInputValue,\n setPopupVisible,\n activeIndex,\n setActiveIndex,\n isFirstValueSelected,\n setIsFirstValueSelected,\n cacheValue,\n setCacheValue,\n };\n}\n"],"names":["PARTIAL_MAP","first","second","initYearMonthTime","value","mode","format","timeFormat","defaultYearMonthTime","year","dayjs","month","time","Array","isArray","length","map","v","useRange","props","useConfig","classPrefix","globalDatePickerConfig","datePicker","name","isMountedRef","useRef","inputRef","prefixIcon","suffixIcon","rangeInputPropsFromProps","rangeInputProps","popupPropsFromProps","popupProps","allowInput","clearable","placeholder","onBlur","onFocus","onInput","useControlled","onChange","useFormat","valueType","enableTimePicker","isValidDate","formatDate","formatTime","console","error","useState","popupVisible","setPopupVisible","isHoverCell","setIsHoverCell","activeIndex","setActiveIndex","isFirstValueSelected","setIsFirstValueSelected","timeValue","setTimeValue","setMonth","setYear","inputValue","setInputValue","cacheValue","setCacheValue","ref","readonly","React","createElement","CalendarIcon","className","classNames","onClick","position","onClear","e","stopPropagation","dayjsValue","trigger","newVal","partial","index","input","newYear","newMonth","newTime","forEach","i","push","onEnter","expandAnimation","overlayStyle","width","overlayClassName","onVisibleChange","visible","context","indexMap","current","focus","useEffect"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"useRange.js","sources":["../../../src/date-picker/hooks/useRange.tsx"],"sourcesContent":["import React, { useState, useEffect, useRef } from 'react';\nimport { CalendarIcon } from 'tdesign-icons-react';\nimport dayjs from 'dayjs';\nimport classNames from 'classnames';\nimport useConfig from '../../_util/useConfig';\nimport { RangeInputRefInterface } from '../../range-input';\nimport { TdDateRangePickerProps, DateValue } from '../type';\nimport useFormat from './useFormat';\nimport useRangeValue from './useRangeValue';\n\nexport const PARTIAL_MAP = { first: 'start', second: 'end' };\n\nexport default function useRange(props: TdDateRangePickerProps) {\n const { classPrefix, datePicker: globalDatePickerConfig } = useConfig();\n const name = `${classPrefix}-date-range-picker`;\n\n const isMountedRef = useRef(false);\n const inputRef = useRef<RangeInputRefInterface>();\n\n const {\n value,\n onChange,\n time,\n setTime,\n month,\n setMonth,\n year,\n setYear,\n cacheValue,\n setCacheValue,\n isFirstValueSelected,\n setIsFirstValueSelected,\n } = useRangeValue(props);\n\n const { isValidDate, timeFormat, formatDate } = useFormat({\n value,\n mode: props.mode,\n format: props.format,\n valueType: props.valueType,\n enableTimePicker: props.enableTimePicker,\n });\n\n // warning invalid value\n if (!Array.isArray(value)) {\n console.error(`typeof value: ${value} must be Array!`);\n } else if (!isValidDate(value, 'valueType')) {\n console.error(`value: ${value} is invalid datetime!`);\n }\n\n const [popupVisible, setPopupVisible] = useState(false);\n const [isHoverCell, setIsHoverCell] = useState(false);\n const [activeIndex, setActiveIndex] = useState(0); // 确定当前选中的输入框序号\n // 未真正选中前可能不断变更输入框的内容\n const [inputValue, setInputValue] = useState(formatDate(value));\n\n // input 设置\n const rangeInputProps = {\n ...props.rangeInputProps,\n ref: inputRef,\n clearable: props.clearable,\n prefixIcon: props.prefixIcon,\n readonly: !props.allowInput,\n placeholder: props.placeholder ?? globalDatePickerConfig.placeholder[props.mode],\n activeIndex: popupVisible ? activeIndex : undefined,\n suffixIcon: props.suffixIcon ?? <CalendarIcon />,\n className: classNames({\n [`${name}__input--placeholder`]: isHoverCell,\n }),\n onClick: ({ position }) => {\n setActiveIndex(position === 'first' ? 0 : 1);\n },\n onClear: ({ e }) => {\n e.stopPropagation();\n setPopupVisible(false);\n onChange([], { dayjsValue: [], trigger: 'clear' });\n },\n onBlur: (newVal: string[], { e, position }) => {\n props.onBlur?.({ value: newVal, partial: PARTIAL_MAP[position], e });\n },\n onFocus: (newVal: string[], { e, position }) => {\n props.onFocus?.({ value: newVal, partial: PARTIAL_MAP[position], e });\n setActiveIndex(position === 'first' ? 0 : 1);\n },\n onChange: (newVal: string[], { e, position }) => {\n const index = position === 'first' ? 0 : 1;\n\n props.onInput?.({ input: newVal[index], value, partial: PARTIAL_MAP[position], e });\n setInputValue(newVal);\n\n // 跳过不符合格式化的输入框内容\n if (!isValidDate(newVal)) return;\n const newYear = [];\n const newMonth = [];\n const newTime = [];\n newVal.forEach((v, i) => {\n newYear.push(dayjs(v).year() || year[i]);\n newMonth.push(dayjs(v).month() || month[i]);\n newTime.push(dayjs(v).format(timeFormat) || time[i]);\n });\n setYear(newYear);\n setMonth(newMonth);\n setTime(newTime);\n },\n onEnter: (newVal: string[]) => {\n if (!isValidDate(newVal) && !isValidDate(value)) return;\n\n setPopupVisible(false);\n if (isValidDate(newVal)) {\n onChange(formatDate(newVal, { formatType: 'valueType' }) as DateValue[], {\n dayjsValue: newVal.map((v) => dayjs(v)),\n trigger: 'enter',\n });\n } else if (isValidDate(value)) {\n setInputValue(formatDate(value));\n } else {\n setInputValue([]);\n }\n },\n };\n\n // popup 设置\n const popupProps = {\n expandAnimation: true,\n ...props.popupProps,\n overlayStyle: props.popupProps?.overlayStyle ?? { width: 'auto' },\n overlayClassName: classNames(props.popupProps?.overlayClassName, `${name}__panel-container`),\n onVisibleChange: (visible: boolean, context) => {\n // 输入框点击不关闭面板\n if (context.trigger === 'trigger-element-click') {\n const indexMap = { 0: 'first', 1: 'second' };\n inputRef.current.focus({ position: indexMap[activeIndex] });\n return setPopupVisible(true);\n }\n if (visible) {\n // 展开后重置点击次数\n setIsFirstValueSelected(false);\n } else {\n setIsHoverCell(false);\n setInputValue(formatDate(value));\n }\n\n setPopupVisible(visible);\n },\n };\n\n // 输入框响应 value 变化\n useEffect(() => {\n if (!value) {\n setInputValue([]);\n return;\n }\n if (!isValidDate(value, 'valueType')) return;\n\n setInputValue(formatDate(value));\n // eslint-disable-next-line\n }, [value]);\n\n // activeIndex 变化自动 focus 对应输入框\n useEffect(() => {\n if (!isMountedRef.current) {\n isMountedRef.current = true;\n return;\n }\n const indexMap = { 0: 'first', 1: 'second' };\n inputRef.current.focus({ position: indexMap[activeIndex] });\n // eslint-disable-next-line\n }, [activeIndex]);\n\n return {\n year,\n month,\n value,\n time,\n inputValue,\n popupVisible,\n rangeInputProps,\n popupProps,\n isHoverCell,\n onChange,\n setYear,\n setMonth,\n setTime,\n setIsHoverCell,\n setInputValue,\n setPopupVisible,\n activeIndex,\n setActiveIndex,\n isFirstValueSelected,\n setIsFirstValueSelected,\n cacheValue,\n setCacheValue,\n };\n}\n"],"names":["PARTIAL_MAP","first","second","useRange","props","useConfig","classPrefix","globalDatePickerConfig","datePicker","name","isMountedRef","useRef","inputRef","useRangeValue","value","onChange","time","setTime","month","setMonth","year","setYear","cacheValue","setCacheValue","isFirstValueSelected","setIsFirstValueSelected","useFormat","mode","format","valueType","enableTimePicker","isValidDate","timeFormat","formatDate","Array","isArray","console","error","useState","popupVisible","setPopupVisible","isHoverCell","setIsHoverCell","activeIndex","setActiveIndex","inputValue","setInputValue","rangeInputProps","ref","clearable","prefixIcon","readonly","allowInput","placeholder","suffixIcon","React","createElement","CalendarIcon","className","classNames","onClick","position","onClear","e","stopPropagation","dayjsValue","trigger","onBlur","newVal","partial","onFocus","index","onInput","input","newYear","newMonth","newTime","forEach","v","i","push","dayjs","onEnter","formatType","map","popupProps","expandAnimation","overlayStyle","width","overlayClassName","onVisibleChange","visible","context","indexMap","current","focus","useEffect"],"mappings":"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"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
/// <reference types="react" />
|
|
2
|
+
import dayjs from 'dayjs';
|
|
3
|
+
import { TdDateRangePickerProps } from '../type';
|
|
4
|
+
export declare const PARTIAL_MAP: {
|
|
5
|
+
first: string;
|
|
6
|
+
second: string;
|
|
7
|
+
};
|
|
8
|
+
export default function useRange(props: TdDateRangePickerProps): {
|
|
9
|
+
value: import("../type").DateRangeValue;
|
|
10
|
+
onChange: import("../../hooks/useControlled").ChangeHandler<import("../type").DateRangeValue, [context: {
|
|
11
|
+
dayjsValue?: dayjs.Dayjs[];
|
|
12
|
+
trigger?: import("../type").DatePickerTriggerSource;
|
|
13
|
+
}]>;
|
|
14
|
+
year: number[];
|
|
15
|
+
setYear: import("react").Dispatch<import("react").SetStateAction<number[]>>;
|
|
16
|
+
month: number[];
|
|
17
|
+
setMonth: import("react").Dispatch<import("react").SetStateAction<number[]>>;
|
|
18
|
+
time: string[];
|
|
19
|
+
setTime: import("react").Dispatch<import("react").SetStateAction<string[]>>;
|
|
20
|
+
isFirstValueSelected: boolean;
|
|
21
|
+
setIsFirstValueSelected: import("react").Dispatch<import("react").SetStateAction<boolean>>;
|
|
22
|
+
cacheValue: any;
|
|
23
|
+
setCacheValue: import("react").Dispatch<any>;
|
|
24
|
+
};
|
|
@@ -0,0 +1,156 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* tdesign v0.34.4
|
|
3
|
+
* (c) 2022 tdesign
|
|
4
|
+
* @license MIT
|
|
5
|
+
*/
|
|
6
|
+
|
|
7
|
+
import { _ as _slicedToArray } from '../../_chunks/dep-744640f5.js';
|
|
8
|
+
import { useState, useEffect } from 'react';
|
|
9
|
+
import dayjs from 'dayjs';
|
|
10
|
+
import useControlled from '../../hooks/useControlled.js';
|
|
11
|
+
import useFormat from './useFormat.js';
|
|
12
|
+
import '../../_chunks/dep-0e5be0b2.js';
|
|
13
|
+
import '../../_chunks/dep-0db6b692.js';
|
|
14
|
+
import '../../_chunks/dep-12690e1d.js';
|
|
15
|
+
import '../../_chunks/dep-6d2697ef.js';
|
|
16
|
+
import '../../_chunks/dep-42701b6c.js';
|
|
17
|
+
import '../../_chunks/dep-e8f6f682.js';
|
|
18
|
+
import '../../_chunks/dep-21baa91f.js';
|
|
19
|
+
import '../../_chunks/dep-4705ff31.js';
|
|
20
|
+
import '../../_chunks/dep-a1fd625f.js';
|
|
21
|
+
import '../../_chunks/dep-863396c0.js';
|
|
22
|
+
import '../../_chunks/dep-12718f01.js';
|
|
23
|
+
import '../../_util/noop.js';
|
|
24
|
+
import '../../_common/js/date-picker/utils-new.js';
|
|
25
|
+
import '../../_chunks/dep-3d09d1f3.js';
|
|
26
|
+
import '../../_chunks/dep-67009882.js';
|
|
27
|
+
import '../../_chunks/dep-1b27e5c2.js';
|
|
28
|
+
import '../../_chunks/dep-8fb1642c.js';
|
|
29
|
+
import '../../_chunks/dep-531703d1.js';
|
|
30
|
+
import '../../_chunks/dep-38424935.js';
|
|
31
|
+
import '../../_chunks/dep-ad150068.js';
|
|
32
|
+
import '../../_chunks/dep-d5f141ac.js';
|
|
33
|
+
import '../../_chunks/dep-bcb59ae2.js';
|
|
34
|
+
import '../../_chunks/dep-f5ab8a5c.js';
|
|
35
|
+
import '../../_chunks/dep-87214e71.js';
|
|
36
|
+
import '../../_chunks/dep-5ed520e8.js';
|
|
37
|
+
|
|
38
|
+
var PARTIAL_MAP = {
|
|
39
|
+
first: "start",
|
|
40
|
+
second: "end"
|
|
41
|
+
};
|
|
42
|
+
|
|
43
|
+
function initYearMonthTime(value) {
|
|
44
|
+
var mode = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : "date";
|
|
45
|
+
var format = arguments.length > 2 ? arguments[2] : undefined;
|
|
46
|
+
var timeFormat = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : "HH:mm:ss";
|
|
47
|
+
var defaultYearMonthTime = {
|
|
48
|
+
year: [dayjs().year(), dayjs().year()],
|
|
49
|
+
month: [dayjs().month(), dayjs().month()],
|
|
50
|
+
time: [dayjs().format(timeFormat), dayjs().format(timeFormat)]
|
|
51
|
+
};
|
|
52
|
+
|
|
53
|
+
if (mode === "year") {
|
|
54
|
+
defaultYearMonthTime.year[1] += 10;
|
|
55
|
+
} else if (mode === "month") {
|
|
56
|
+
defaultYearMonthTime.year[1] += 1;
|
|
57
|
+
} else if (mode === "date") {
|
|
58
|
+
defaultYearMonthTime.month[1] += 1;
|
|
59
|
+
}
|
|
60
|
+
|
|
61
|
+
if (!value || !Array.isArray(value) || !value.length) {
|
|
62
|
+
return defaultYearMonthTime;
|
|
63
|
+
}
|
|
64
|
+
|
|
65
|
+
return {
|
|
66
|
+
year: value.map(function (v) {
|
|
67
|
+
return dayjs(v, format).year();
|
|
68
|
+
}),
|
|
69
|
+
month: value.map(function (v) {
|
|
70
|
+
return dayjs(v, format).month();
|
|
71
|
+
}),
|
|
72
|
+
time: value.map(function (v) {
|
|
73
|
+
return dayjs(v, format).format(timeFormat);
|
|
74
|
+
})
|
|
75
|
+
};
|
|
76
|
+
}
|
|
77
|
+
|
|
78
|
+
function useRange(props) {
|
|
79
|
+
var _useControlled = useControlled(props, "value", props.onChange),
|
|
80
|
+
_useControlled2 = _slicedToArray(_useControlled, 2),
|
|
81
|
+
value = _useControlled2[0],
|
|
82
|
+
onChange = _useControlled2[1];
|
|
83
|
+
|
|
84
|
+
var _useFormat = useFormat({
|
|
85
|
+
value: value,
|
|
86
|
+
mode: props.mode,
|
|
87
|
+
format: props.format,
|
|
88
|
+
valueType: props.valueType,
|
|
89
|
+
enableTimePicker: props.enableTimePicker
|
|
90
|
+
}),
|
|
91
|
+
format = _useFormat.format,
|
|
92
|
+
isValidDate = _useFormat.isValidDate,
|
|
93
|
+
timeFormat = _useFormat.timeFormat,
|
|
94
|
+
formatDate = _useFormat.formatDate,
|
|
95
|
+
formatTime = _useFormat.formatTime;
|
|
96
|
+
|
|
97
|
+
if (!Array.isArray(value)) {
|
|
98
|
+
console.error("typeof value: ".concat(value, " must be Array!"));
|
|
99
|
+
} else if (!isValidDate(value, "valueType")) {
|
|
100
|
+
console.error("value: ".concat(value, " is invalid datetime!"));
|
|
101
|
+
}
|
|
102
|
+
|
|
103
|
+
var _useState = useState(false),
|
|
104
|
+
_useState2 = _slicedToArray(_useState, 2),
|
|
105
|
+
isFirstValueSelected = _useState2[0],
|
|
106
|
+
setIsFirstValueSelected = _useState2[1];
|
|
107
|
+
|
|
108
|
+
var _useState3 = useState(initYearMonthTime(value, props.mode, format, timeFormat).time),
|
|
109
|
+
_useState4 = _slicedToArray(_useState3, 2),
|
|
110
|
+
time = _useState4[0],
|
|
111
|
+
setTime = _useState4[1];
|
|
112
|
+
|
|
113
|
+
var _useState5 = useState(initYearMonthTime(value, props.mode, format).month),
|
|
114
|
+
_useState6 = _slicedToArray(_useState5, 2),
|
|
115
|
+
month = _useState6[0],
|
|
116
|
+
setMonth = _useState6[1];
|
|
117
|
+
|
|
118
|
+
var _useState7 = useState(initYearMonthTime(value, props.mode, format).year),
|
|
119
|
+
_useState8 = _slicedToArray(_useState7, 2),
|
|
120
|
+
year = _useState8[0],
|
|
121
|
+
setYear = _useState8[1];
|
|
122
|
+
|
|
123
|
+
var _useState9 = useState(formatDate(value)),
|
|
124
|
+
_useState10 = _slicedToArray(_useState9, 2),
|
|
125
|
+
cacheValue = _useState10[0],
|
|
126
|
+
setCacheValue = _useState10[1];
|
|
127
|
+
|
|
128
|
+
useEffect(function () {
|
|
129
|
+
if (!value) {
|
|
130
|
+
setCacheValue([]);
|
|
131
|
+
setTime([dayjs().format(timeFormat), dayjs().format(timeFormat)]);
|
|
132
|
+
return;
|
|
133
|
+
}
|
|
134
|
+
|
|
135
|
+
if (!isValidDate(value, "valueType")) return;
|
|
136
|
+
setCacheValue(formatDate(value));
|
|
137
|
+
setTime(formatTime(value));
|
|
138
|
+
}, [value]);
|
|
139
|
+
return {
|
|
140
|
+
value: value,
|
|
141
|
+
onChange: onChange,
|
|
142
|
+
year: year,
|
|
143
|
+
setYear: setYear,
|
|
144
|
+
month: month,
|
|
145
|
+
setMonth: setMonth,
|
|
146
|
+
time: time,
|
|
147
|
+
setTime: setTime,
|
|
148
|
+
isFirstValueSelected: isFirstValueSelected,
|
|
149
|
+
setIsFirstValueSelected: setIsFirstValueSelected,
|
|
150
|
+
cacheValue: cacheValue,
|
|
151
|
+
setCacheValue: setCacheValue
|
|
152
|
+
};
|
|
153
|
+
}
|
|
154
|
+
|
|
155
|
+
export { PARTIAL_MAP, useRange as default };
|
|
156
|
+
//# sourceMappingURL=useRangeValue.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useRangeValue.js","sources":["../../../src/date-picker/hooks/useRangeValue.ts"],"sourcesContent":["import { useState, useEffect } from 'react';\nimport dayjs from 'dayjs';\nimport useControlled from '../../hooks/useControlled';\nimport { TdDateRangePickerProps, DateValue } from '../type';\nimport useFormat from './useFormat';\n\nexport const PARTIAL_MAP = { first: 'start', second: 'end' };\n\n// 初始化面板年份月份\nfunction initYearMonthTime(value: DateValue[], mode = 'date', format: string, timeFormat = 'HH:mm:ss') {\n const defaultYearMonthTime = {\n year: [dayjs().year(), dayjs().year()],\n month: [dayjs().month(), dayjs().month()],\n time: [dayjs().format(timeFormat), dayjs().format(timeFormat)],\n };\n if (mode === 'year') {\n defaultYearMonthTime.year[1] += 10;\n } else if (mode === 'month') {\n defaultYearMonthTime.year[1] += 1;\n } else if (mode === 'date') {\n defaultYearMonthTime.month[1] += 1;\n }\n\n if (!value || !Array.isArray(value) || !value.length) {\n return defaultYearMonthTime;\n }\n\n return {\n year: value.map((v) => dayjs(v, format).year()),\n month: value.map((v) => dayjs(v, format).month()),\n time: value.map((v) => dayjs(v, format).format(timeFormat)),\n };\n}\n\nexport default function useRange(props: TdDateRangePickerProps) {\n const [value, onChange] = useControlled(props, 'value', props.onChange);\n const { format, isValidDate, timeFormat, formatDate, formatTime } = useFormat({\n value,\n mode: props.mode,\n format: props.format,\n valueType: props.valueType,\n enableTimePicker: props.enableTimePicker,\n });\n\n // warning invalid value\n if (!Array.isArray(value)) {\n console.error(`typeof value: ${value} must be Array!`);\n } else if (!isValidDate(value, 'valueType')) {\n console.error(`value: ${value} is invalid datetime!`);\n }\n\n const [isFirstValueSelected, setIsFirstValueSelected] = useState(false); // 记录面板点击次数,两次后才自动关闭\n const [time, setTime] = useState(initYearMonthTime(value, props.mode, format, timeFormat).time);\n const [month, setMonth] = useState<Array<number>>(initYearMonthTime(value, props.mode, format).month);\n const [year, setYear] = useState<Array<number>>(initYearMonthTime(value, props.mode, format).year);\n const [cacheValue, setCacheValue] = useState(formatDate(value)); // 缓存选中值,panel 点击时更改\n\n // 输入框响应 value 变化\n useEffect(() => {\n if (!value) {\n setCacheValue([]);\n setTime([dayjs().format(timeFormat), dayjs().format(timeFormat)]);\n return;\n }\n if (!isValidDate(value, 'valueType')) return;\n\n setCacheValue(formatDate(value));\n setTime(formatTime(value));\n // eslint-disable-next-line\n }, [value]);\n\n return {\n value,\n onChange,\n year,\n setYear,\n month,\n setMonth,\n time,\n setTime,\n isFirstValueSelected,\n setIsFirstValueSelected,\n cacheValue,\n setCacheValue,\n };\n}\n"],"names":["PARTIAL_MAP","first","second","initYearMonthTime","value","mode","format","timeFormat","defaultYearMonthTime","year","dayjs","month","time","Array","isArray","length","map","v","useRange","props","useControlled","onChange","useFormat","valueType","enableTimePicker","isValidDate","formatDate","formatTime","console","error","useState","isFirstValueSelected","setIsFirstValueSelected","setTime","setMonth","setYear","cacheValue","setCacheValue","useEffect"],"mappings":"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"}
|
|
@@ -1,11 +1,10 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
|
-
import
|
|
3
|
-
|
|
4
|
-
export default function useSingle(props: TdDatePickerProps): {
|
|
2
|
+
import { TdDatePickerProps } from '../type';
|
|
3
|
+
export default function useSingleInput(props: TdDatePickerProps): {
|
|
5
4
|
year: number;
|
|
6
5
|
month: number;
|
|
7
|
-
value:
|
|
8
|
-
|
|
6
|
+
value: string;
|
|
7
|
+
time: any;
|
|
9
8
|
inputValue: any;
|
|
10
9
|
popupVisible: boolean;
|
|
11
10
|
inputProps: {
|
|
@@ -112,13 +111,10 @@ export default function useSingle(props: TdDatePickerProps): {
|
|
|
112
111
|
};
|
|
113
112
|
inputRef: React.MutableRefObject<HTMLInputElement>;
|
|
114
113
|
cacheValue: any;
|
|
115
|
-
onChange: import("../../hooks/useControlled").ChangeHandler<
|
|
116
|
-
dayjsValue?: dayjs.Dayjs;
|
|
117
|
-
trigger?: import("../type").DatePickerTriggerSource;
|
|
118
|
-
}]>;
|
|
114
|
+
onChange: import("../../hooks/useControlled").ChangeHandler<string, any>;
|
|
119
115
|
setYear: React.Dispatch<React.SetStateAction<number>>;
|
|
120
116
|
setMonth: React.Dispatch<React.SetStateAction<number>>;
|
|
121
|
-
|
|
117
|
+
setTime: React.Dispatch<any>;
|
|
122
118
|
setIsHoverCell: React.Dispatch<React.SetStateAction<boolean>>;
|
|
123
119
|
setInputValue: React.Dispatch<any>;
|
|
124
120
|
setPopupVisible: React.Dispatch<React.SetStateAction<boolean>>;
|