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
|
@@ -39,6 +39,7 @@ export interface TdDatePickerProps {
|
|
|
39
39
|
firstDayOfWeek?: number;
|
|
40
40
|
/**
|
|
41
41
|
* 用于格式化日期,全局配置默认为:'YYYY-MM-DD',[详细文档](https://day.js.org/docs/en/display/format)
|
|
42
|
+
* @default ''
|
|
42
43
|
*/
|
|
43
44
|
format?: string;
|
|
44
45
|
/**
|
|
@@ -71,11 +72,6 @@ export interface TdDatePickerProps {
|
|
|
71
72
|
* @default bottom
|
|
72
73
|
*/
|
|
73
74
|
presetsPlacement?: 'left' | 'top' | 'right' | 'bottom';
|
|
74
|
-
/**
|
|
75
|
-
* 是否呈现为日期范围选择器(临时 API,后期将调整为是 DateRangePicker 组件)
|
|
76
|
-
* @default false
|
|
77
|
-
*/
|
|
78
|
-
range?: boolean;
|
|
79
75
|
/**
|
|
80
76
|
* 用于自定义组件后置图标
|
|
81
77
|
*/
|
|
@@ -86,15 +82,17 @@ export interface TdDatePickerProps {
|
|
|
86
82
|
timePickerProps?: TimePickerProps;
|
|
87
83
|
/**
|
|
88
84
|
* 选中值
|
|
85
|
+
* @default ''
|
|
89
86
|
*/
|
|
90
87
|
value?: DateValue;
|
|
91
88
|
/**
|
|
92
89
|
* 选中值,非受控属性
|
|
90
|
+
* @default ''
|
|
93
91
|
*/
|
|
94
92
|
defaultValue?: DateValue;
|
|
95
93
|
/**
|
|
96
94
|
* 用于格式化日期,默认为:'YYYY-MM-DD',可选值:'date/time-stamp/YYY-MM-DD' 等,[更多可选值见 Dayjs 详细文档](https://day.js.org/docs/en/display/format)。<br /> 其中 `valueType=date` 表示 `value` 数据类型为 `Date`;`valueType='time-stamp'` 表示 `value` 数据类型为时间戳
|
|
97
|
-
* @default
|
|
95
|
+
* @default ''
|
|
98
96
|
*/
|
|
99
97
|
valueType?: string;
|
|
100
98
|
/**
|
|
@@ -146,7 +144,7 @@ export interface TdDateRangePickerProps {
|
|
|
146
144
|
* 是否禁用组件,值为数组表示可分别控制开始日期和结束日期是否禁用
|
|
147
145
|
* @default false
|
|
148
146
|
*/
|
|
149
|
-
disabled?: boolean
|
|
147
|
+
disabled?: boolean;
|
|
150
148
|
/**
|
|
151
149
|
* 禁用日期,示例:['A', 'B'] 表示日期 A 和日期 B 会被禁用。{ from: 'A', to: 'B' } 表示在 A 到 B 之间的日期会被禁用。{ before: 'A', after: 'B' } 表示在 A 之前和在 B 之后的日期都会被禁用。其中 A = '2021-01-01',B = '2021-02-01'。值类型为 Function 则表示返回值为 true 的日期会被禁用
|
|
152
150
|
*/
|
|
@@ -162,7 +160,7 @@ export interface TdDateRangePickerProps {
|
|
|
162
160
|
firstDayOfWeek?: number;
|
|
163
161
|
/**
|
|
164
162
|
* 用于格式化日期,[详细文档](https://day.js.org/docs/en/display/format)
|
|
165
|
-
* @default '
|
|
163
|
+
* @default ''
|
|
166
164
|
*/
|
|
167
165
|
format?: string;
|
|
168
166
|
/**
|
|
@@ -210,15 +208,17 @@ export interface TdDateRangePickerProps {
|
|
|
210
208
|
timePickerProps?: TimePickerProps;
|
|
211
209
|
/**
|
|
212
210
|
* 选中值
|
|
211
|
+
* @default []
|
|
213
212
|
*/
|
|
214
213
|
value?: DateRangeValue;
|
|
215
214
|
/**
|
|
216
215
|
* 选中值,非受控属性
|
|
216
|
+
* @default []
|
|
217
217
|
*/
|
|
218
218
|
defaultValue?: DateRangeValue;
|
|
219
219
|
/**
|
|
220
220
|
* 用于格式化日期,默认为:'YYYY-MM-DD',可选值:'date/time-stamp/YYY-MM-DD' 等,[更多可选值见 Dayjs 详细文档](https://day.js.org/docs/en/display/format)。<br /> 其中 `valueType=date` 表示 `value` 数据类型为 `Date`;`valueType='time-stamp'` 表示 `value` 数据类型为时间戳
|
|
221
|
-
* @default
|
|
221
|
+
* @default ''
|
|
222
222
|
*/
|
|
223
223
|
valueType?: string;
|
|
224
224
|
/**
|
|
@@ -258,6 +258,132 @@ export interface TdDateRangePickerProps {
|
|
|
258
258
|
*/
|
|
259
259
|
onPick?: (value: DateValue, context: PickContext) => void;
|
|
260
260
|
}
|
|
261
|
+
export interface TdDatePickerPanelProps extends Pick<TdDatePickerProps, 'value' | 'defaultValue' | 'valueType' | 'disabled' | 'disableDate' | 'enableTimePicker' | 'firstDayOfWeek' | 'format' | 'mode' | 'presets' | 'presetsPlacement' | 'timePickerProps'> {
|
|
262
|
+
/**
|
|
263
|
+
* 点击日期单元格时触发
|
|
264
|
+
*/
|
|
265
|
+
onCellClick?: (context: {
|
|
266
|
+
date: Date;
|
|
267
|
+
e: MouseEvent<HTMLDivElement>;
|
|
268
|
+
}) => void;
|
|
269
|
+
/**
|
|
270
|
+
* 选中值发生变化时触发。参数 `context.trigger` 表示触发当前事件的来源,不同的模式触发来源也会不同
|
|
271
|
+
*/
|
|
272
|
+
onChange?: (value: DateValue, context: {
|
|
273
|
+
dayjsValue?: Dayjs;
|
|
274
|
+
e?: MouseEvent<HTMLDivElement>;
|
|
275
|
+
trigger?: DatePickerTriggerSource;
|
|
276
|
+
}) => void;
|
|
277
|
+
/**
|
|
278
|
+
* 如果存在“确认”按钮,则点击“确认”按钮时触发
|
|
279
|
+
*/
|
|
280
|
+
onConfirm?: (context: {
|
|
281
|
+
date: Date;
|
|
282
|
+
e: MouseEvent<HTMLDivElement>;
|
|
283
|
+
}) => void;
|
|
284
|
+
/**
|
|
285
|
+
* 月份切换发生变化时触发
|
|
286
|
+
*/
|
|
287
|
+
onMonthChange?: (context: {
|
|
288
|
+
month: number;
|
|
289
|
+
date: Date;
|
|
290
|
+
e?: MouseEvent<HTMLDivElement>;
|
|
291
|
+
trigger: DatePickerMonthChangeTrigger;
|
|
292
|
+
}) => void;
|
|
293
|
+
/**
|
|
294
|
+
* 点击面板时触发
|
|
295
|
+
*/
|
|
296
|
+
onPanelClick?: (context: {
|
|
297
|
+
e: MouseEvent<HTMLDivElement>;
|
|
298
|
+
}) => void;
|
|
299
|
+
/**
|
|
300
|
+
* 如果存在“确认”按钮,则点击“确认”按钮时触发
|
|
301
|
+
*/
|
|
302
|
+
onPresetClick?: (context: {
|
|
303
|
+
preset: PresetDate;
|
|
304
|
+
e: MouseEvent<HTMLDivElement>;
|
|
305
|
+
}) => void;
|
|
306
|
+
/**
|
|
307
|
+
* 时间切换发生变化时触发
|
|
308
|
+
*/
|
|
309
|
+
onTimeChange?: (context: {
|
|
310
|
+
time: string;
|
|
311
|
+
date: Date;
|
|
312
|
+
trigger: DatePickerTimeChangeTrigger;
|
|
313
|
+
e?: MouseEvent<HTMLDivElement>;
|
|
314
|
+
}) => void;
|
|
315
|
+
/**
|
|
316
|
+
* 年份切换发生变化时触发
|
|
317
|
+
*/
|
|
318
|
+
onYearChange?: (context: {
|
|
319
|
+
year: number;
|
|
320
|
+
date: Date;
|
|
321
|
+
trigger: DatePickerYearChangeTrigger;
|
|
322
|
+
e?: MouseEvent<HTMLDivElement>;
|
|
323
|
+
}) => void;
|
|
324
|
+
}
|
|
325
|
+
export interface TdDateRangePickerPanelProps extends Pick<TdDateRangePickerProps, 'value' | 'defaultValue' | 'valueType' | 'disabled' | 'disableDate' | 'enableTimePicker' | 'firstDayOfWeek' | 'format' | 'mode' | 'presets' | 'presetsPlacement' | 'timePickerProps'> {
|
|
326
|
+
/**
|
|
327
|
+
* 点击日期单元格时触发
|
|
328
|
+
*/
|
|
329
|
+
onCellClick?: (context: {
|
|
330
|
+
date: Date[];
|
|
331
|
+
partial: DateRangePickerPartial;
|
|
332
|
+
e: MouseEvent<HTMLDivElement>;
|
|
333
|
+
}) => void;
|
|
334
|
+
/**
|
|
335
|
+
* 选中值发生变化时触发。参数 `context.trigger` 表示触发当前事件的来源,不同的模式触发来源也会不同
|
|
336
|
+
*/
|
|
337
|
+
onChange?: (value: DateRangeValue, context: {
|
|
338
|
+
dayjsValue?: Dayjs[];
|
|
339
|
+
partial: DateRangePickerPartial;
|
|
340
|
+
e?: MouseEvent<HTMLDivElement>;
|
|
341
|
+
trigger?: DatePickerTriggerSource;
|
|
342
|
+
}) => void;
|
|
343
|
+
/**
|
|
344
|
+
* 如果存在“确认”按钮,则点击“确认”按钮时触发
|
|
345
|
+
*/
|
|
346
|
+
onConfirm?: (context: {
|
|
347
|
+
date: Date[];
|
|
348
|
+
e: MouseEvent<HTMLDivElement>;
|
|
349
|
+
}) => void;
|
|
350
|
+
/**
|
|
351
|
+
* 月份切换发生变化时触发
|
|
352
|
+
*/
|
|
353
|
+
onMonthChange?: (context: {
|
|
354
|
+
month: number;
|
|
355
|
+
date: Date[];
|
|
356
|
+
partial: DateRangePickerPartial;
|
|
357
|
+
e?: MouseEvent<HTMLDivElement>;
|
|
358
|
+
trigger: DatePickerMonthChangeTrigger;
|
|
359
|
+
}) => void;
|
|
360
|
+
/**
|
|
361
|
+
* 点击面板时触发
|
|
362
|
+
*/
|
|
363
|
+
onPanelClick?: (context: {
|
|
364
|
+
e: MouseEvent<HTMLDivElement>;
|
|
365
|
+
}) => void;
|
|
366
|
+
/**
|
|
367
|
+
* 时间切换发生变化时触发
|
|
368
|
+
*/
|
|
369
|
+
onTimeChange?: (context: {
|
|
370
|
+
time: string;
|
|
371
|
+
date: Date[];
|
|
372
|
+
partial: DateRangePickerPartial;
|
|
373
|
+
trigger: DatePickerTimeChangeTrigger;
|
|
374
|
+
e?: MouseEvent<HTMLDivElement>;
|
|
375
|
+
}) => void;
|
|
376
|
+
/**
|
|
377
|
+
* 年份切换发生变化时触发
|
|
378
|
+
*/
|
|
379
|
+
onYearChange?: (context: {
|
|
380
|
+
year: number;
|
|
381
|
+
date: Date[];
|
|
382
|
+
partial: DateRangePickerPartial;
|
|
383
|
+
trigger: DatePickerYearChangeTrigger;
|
|
384
|
+
e?: MouseEvent<HTMLDivElement>;
|
|
385
|
+
}) => void;
|
|
386
|
+
}
|
|
261
387
|
export declare type DisableDate = Array<DateValue> | DisableDateObj | ((date: DateValue) => boolean);
|
|
262
388
|
export interface DisableDateObj {
|
|
263
389
|
from?: string;
|
|
@@ -284,3 +410,6 @@ export interface PickContext {
|
|
|
284
410
|
e: MouseEvent<HTMLDivElement>;
|
|
285
411
|
partial: DateRangePickerPartial;
|
|
286
412
|
}
|
|
413
|
+
export declare type DatePickerMonthChangeTrigger = 'month-select' | 'month-arrow-next' | 'month-arrow-previous';
|
|
414
|
+
export declare type DatePickerTimeChangeTrigger = 'time-hour' | 'time-minute' | 'time-second';
|
|
415
|
+
export declare type DatePickerYearChangeTrigger = 'year-select' | 'year-arrow-next' | 'year-arrow-previous';
|
package/lib/dialog/Dialog.js
CHANGED
|
@@ -63,6 +63,7 @@ require('../_common/js/utils/helper.js');
|
|
|
63
63
|
require('../loading/defaultProps.js');
|
|
64
64
|
require('../loading/plugin.js');
|
|
65
65
|
require('../button/defaultProps.js');
|
|
66
|
+
require('../_chunks/dep-bc80a1a5.js');
|
|
66
67
|
require('react-transition-group');
|
|
67
68
|
require('../_util/useLayoutEffect.js');
|
|
68
69
|
require('../_util/useDialogEsc.js');
|
package/lib/dialog/Dialog.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Dialog.js","sources":["../../src/dialog/Dialog.tsx"],"sourcesContent":["import React, { forwardRef, useEffect, useMemo, useRef, isValidElement } from 'react';\nimport isString from 'lodash/isString';\nimport isObject from 'lodash/isObject';\nimport isFunction from 'lodash/isFunction';\nimport { CloseIcon, InfoCircleFilledIcon, CheckCircleFilledIcon } from 'tdesign-icons-react';\nimport { useLocaleReceiver } from '../locale/LocalReceiver';\nimport Button, { ButtonProps } from '../button';\nimport { TdDialogProps, DialogInstance } from './type';\nimport { StyledProps } from '../common';\nimport noop from '../_util/noop';\nimport RenderDialog from './RenderDialog';\nimport useSetState from '../_util/useSetState';\nimport useConfig from '../_util/useConfig';\nimport { dialogDefaultProps } from './defaultProps';\n\nexport interface DialogProps extends TdDialogProps, StyledProps {\n /**\n * 是否以插件形式调用\n */\n isPlugin?: boolean;\n}\n\nconst renderDialogButton = (btn: TdDialogProps['cancelBtn'], defaultProps: ButtonProps) => {\n let result = null;\n\n if (isString(btn)) {\n result = <Button {...defaultProps}>{btn}</Button>;\n } else if (isValidElement(btn)) {\n result = btn;\n } else if (isObject(btn)) {\n result = <Button {...defaultProps} {...(btn as {})} />;\n } else if (isFunction(btn)) {\n result = btn();\n }\n\n return result;\n};\n\nconst Dialog = forwardRef((props: DialogProps, ref: React.Ref<DialogInstance>) => {\n const { classPrefix } = useConfig();\n const dialogDom = useRef<HTMLDivElement>();\n const [state, setState] = useSetState<DialogProps>({\n width: 520,\n visible: false,\n zIndex: 2500,\n placement: 'center',\n mode: 'modal',\n showOverlay: true,\n destroyOnClose: false,\n draggable: false,\n preventScrollThrough: true,\n isPlugin: false,\n ...props,\n });\n\n const [local, t] = useLocaleReceiver('dialog');\n const confirmText = t(local.confirm);\n const cancelText = t(local.cancel);\n\n const {\n visible,\n attach = 'body',\n closeBtn,\n footer,\n onCancel = noop,\n onConfirm = noop,\n cancelBtn = cancelText,\n confirmBtn = confirmText,\n onClose = noop,\n isPlugin = false,\n ...restState\n } = state;\n\n useEffect(() => {\n // 插件式调用不会更新props, 只有组件式调用才会更新props\n if (!isPlugin) {\n setState((prevState) => ({\n ...prevState,\n ...props,\n }));\n }\n }, [props, setState, isPlugin]);\n\n const prefixCls = `${classPrefix}-dialog`;\n const renderCloseIcon = () => {\n if (closeBtn === false) return null;\n if (closeBtn === true) return <CloseIcon style={{ verticalAlign: 'unset' }} />;\n return closeBtn || <CloseIcon style={{ verticalAlign: 'unset' }} />;\n };\n\n React.useImperativeHandle(ref, () => ({\n show() {\n setState({ visible: true });\n },\n hide() {\n setState({ visible: false });\n },\n destroy() {\n setState({ visible: false, destroyOnClose: true });\n },\n update(newOptions) {\n setState((prevState) => ({\n ...prevState,\n ...(newOptions as DialogProps),\n }));\n },\n }));\n\n const renderHeader = useMemo(() => {\n if (!state.header) return null;\n\n const iconMap = {\n info: <InfoCircleFilledIcon className={`${classPrefix}-is-info`} />,\n warning: <InfoCircleFilledIcon className={`${classPrefix}-is-warning`} />,\n error: <InfoCircleFilledIcon className={`${classPrefix}-is-error`} />,\n success: <CheckCircleFilledIcon className={`${classPrefix}-is-success`} />,\n };\n return (\n <div className={`${prefixCls}__header`}>\n {iconMap[state.theme]}\n {state.header}\n </div>\n );\n }, [state.header, state.theme, prefixCls, classPrefix]);\n\n const handleCancel = (e: React.MouseEvent<HTMLButtonElement>) => {\n onCancel({ e });\n onClose({ e, trigger: 'cancel' });\n };\n\n const handleConfirm = (e: React.MouseEvent<HTMLButtonElement>) => {\n onConfirm({ e });\n };\n\n const defaultFooter = () => {\n const renderCancelBtn = renderDialogButton(cancelBtn, { variant: 'outline' });\n const renderConfirmBtn = renderDialogButton(confirmBtn, { theme: 'primary' });\n\n return (\n <>\n {renderCancelBtn &&\n React.cloneElement(renderCancelBtn, {\n onClick: handleCancel,\n ...renderCancelBtn.props,\n })}\n {renderConfirmBtn &&\n React.cloneElement(renderConfirmBtn, {\n onClick: handleConfirm,\n ...renderConfirmBtn.props,\n })}\n </>\n );\n };\n\n return (\n <RenderDialog\n {...restState}\n visible={visible}\n prefixCls={prefixCls}\n header={renderHeader}\n attach={attach}\n closeBtn={renderCloseIcon()}\n classPrefix={classPrefix}\n onClose={onClose}\n footer={footer === undefined ? defaultFooter() : footer}\n ref={dialogDom}\n />\n );\n});\n\nDialog.displayName = 'Dialog';\nDialog.defaultProps = dialogDefaultProps;\n\nexport default Dialog;\n"],"names":["renderDialogButton","btn","defaultProps","result","isString","React","createElement","Button","isValidElement","isObject","isFunction","Dialog","forwardRef","props","ref","useConfig","classPrefix","dialogDom","useRef","useSetState","width","visible","zIndex","placement","mode","showOverlay","destroyOnClose","draggable","preventScrollThrough","isPlugin","_slicedToArray","state","setState","useLocaleReceiver","local","t","confirmText","confirm","cancelText","cancel","attach","closeBtn","footer","onCancel","noop","onConfirm","cancelBtn","confirmBtn","onClose","restState","useEffect","prevState","prefixCls","renderCloseIcon","CloseIcon","style","verticalAlign","useImperativeHandle","show","hide","destroy","update","newOptions","renderHeader","useMemo","header","iconMap","info","InfoCircleFilledIcon","className","warning","error","success","CheckCircleFilledIcon","theme","handleCancel","e","trigger","handleConfirm","defaultFooter","renderCancelBtn","variant","renderConfirmBtn","Fragment","cloneElement","onClick","RenderDialog","displayName","dialogDefaultProps"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Dialog.js","sources":["../../src/dialog/Dialog.tsx"],"sourcesContent":["import React, { forwardRef, useEffect, useMemo, useRef, isValidElement } from 'react';\nimport isString from 'lodash/isString';\nimport isObject from 'lodash/isObject';\nimport isFunction from 'lodash/isFunction';\nimport { CloseIcon, InfoCircleFilledIcon, CheckCircleFilledIcon } from 'tdesign-icons-react';\nimport { useLocaleReceiver } from '../locale/LocalReceiver';\nimport Button, { ButtonProps } from '../button';\nimport { TdDialogProps, DialogInstance } from './type';\nimport { StyledProps } from '../common';\nimport noop from '../_util/noop';\nimport RenderDialog from './RenderDialog';\nimport useSetState from '../_util/useSetState';\nimport useConfig from '../_util/useConfig';\nimport { dialogDefaultProps } from './defaultProps';\n\nexport interface DialogProps extends TdDialogProps, StyledProps {\n /**\n * 是否以插件形式调用\n */\n isPlugin?: boolean;\n}\n\nconst renderDialogButton = (btn: TdDialogProps['cancelBtn'], defaultProps: ButtonProps) => {\n let result = null;\n\n if (isString(btn)) {\n result = <Button {...defaultProps}>{btn}</Button>;\n } else if (isValidElement(btn)) {\n result = btn;\n } else if (isObject(btn)) {\n result = <Button {...defaultProps} {...(btn as {})} />;\n } else if (isFunction(btn)) {\n result = btn();\n }\n\n return result;\n};\n\nconst Dialog = forwardRef((props: DialogProps, ref: React.Ref<DialogInstance>) => {\n const { classPrefix } = useConfig();\n const dialogDom = useRef<HTMLDivElement>();\n const [state, setState] = useSetState<DialogProps>({\n width: 520,\n visible: false,\n zIndex: 2500,\n placement: 'center',\n mode: 'modal',\n showOverlay: true,\n destroyOnClose: false,\n draggable: false,\n preventScrollThrough: true,\n isPlugin: false,\n ...props,\n });\n\n const [local, t] = useLocaleReceiver('dialog');\n const confirmText = t(local.confirm);\n const cancelText = t(local.cancel);\n\n const {\n visible,\n attach = 'body',\n closeBtn,\n footer,\n onCancel = noop,\n onConfirm = noop,\n cancelBtn = cancelText,\n confirmBtn = confirmText,\n onClose = noop,\n isPlugin = false,\n ...restState\n } = state;\n\n useEffect(() => {\n // 插件式调用不会更新props, 只有组件式调用才会更新props\n if (!isPlugin) {\n setState((prevState) => ({\n ...prevState,\n ...props,\n }));\n }\n }, [props, setState, isPlugin]);\n\n const prefixCls = `${classPrefix}-dialog`;\n const renderCloseIcon = () => {\n if (closeBtn === false) return null;\n if (closeBtn === true) return <CloseIcon style={{ verticalAlign: 'unset' }} />;\n return closeBtn || <CloseIcon style={{ verticalAlign: 'unset' }} />;\n };\n\n React.useImperativeHandle(ref, () => ({\n show() {\n setState({ visible: true });\n },\n hide() {\n setState({ visible: false });\n },\n destroy() {\n setState({ visible: false, destroyOnClose: true });\n },\n update(newOptions) {\n setState((prevState) => ({\n ...prevState,\n ...(newOptions as DialogProps),\n }));\n },\n }));\n\n const renderHeader = useMemo(() => {\n if (!state.header) return null;\n\n const iconMap = {\n info: <InfoCircleFilledIcon className={`${classPrefix}-is-info`} />,\n warning: <InfoCircleFilledIcon className={`${classPrefix}-is-warning`} />,\n error: <InfoCircleFilledIcon className={`${classPrefix}-is-error`} />,\n success: <CheckCircleFilledIcon className={`${classPrefix}-is-success`} />,\n };\n return (\n <div className={`${prefixCls}__header`}>\n {iconMap[state.theme]}\n {state.header}\n </div>\n );\n }, [state.header, state.theme, prefixCls, classPrefix]);\n\n const handleCancel = (e: React.MouseEvent<HTMLButtonElement>) => {\n onCancel({ e });\n onClose({ e, trigger: 'cancel' });\n };\n\n const handleConfirm = (e: React.MouseEvent<HTMLButtonElement>) => {\n onConfirm({ e });\n };\n\n const defaultFooter = () => {\n const renderCancelBtn = renderDialogButton(cancelBtn, { variant: 'outline' });\n const renderConfirmBtn = renderDialogButton(confirmBtn, { theme: 'primary' });\n\n return (\n <>\n {renderCancelBtn &&\n React.cloneElement(renderCancelBtn, {\n onClick: handleCancel,\n ...renderCancelBtn.props,\n })}\n {renderConfirmBtn &&\n React.cloneElement(renderConfirmBtn, {\n onClick: handleConfirm,\n ...renderConfirmBtn.props,\n })}\n </>\n );\n };\n\n return (\n <RenderDialog\n {...restState}\n visible={visible}\n prefixCls={prefixCls}\n header={renderHeader}\n attach={attach}\n closeBtn={renderCloseIcon()}\n classPrefix={classPrefix}\n onClose={onClose}\n footer={footer === undefined ? defaultFooter() : footer}\n ref={dialogDom}\n />\n );\n});\n\nDialog.displayName = 'Dialog';\nDialog.defaultProps = dialogDefaultProps;\n\nexport default Dialog;\n"],"names":["renderDialogButton","btn","defaultProps","result","isString","React","createElement","Button","isValidElement","isObject","isFunction","Dialog","forwardRef","props","ref","useConfig","classPrefix","dialogDom","useRef","useSetState","width","visible","zIndex","placement","mode","showOverlay","destroyOnClose","draggable","preventScrollThrough","isPlugin","_slicedToArray","state","setState","useLocaleReceiver","local","t","confirmText","confirm","cancelText","cancel","attach","closeBtn","footer","onCancel","noop","onConfirm","cancelBtn","confirmBtn","onClose","restState","useEffect","prevState","prefixCls","renderCloseIcon","CloseIcon","style","verticalAlign","useImperativeHandle","show","hide","destroy","update","newOptions","renderHeader","useMemo","header","iconMap","info","InfoCircleFilledIcon","className","warning","error","success","CheckCircleFilledIcon","theme","handleCancel","e","trigger","handleConfirm","defaultFooter","renderCancelBtn","variant","renderConfirmBtn","Fragment","cloneElement","onClick","RenderDialog","displayName","dialogDefaultProps"],"mappings":"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"}
|
|
@@ -9,6 +9,8 @@
|
|
|
9
9
|
Object.defineProperty(exports, '__esModule', { value: true });
|
|
10
10
|
|
|
11
11
|
var defineProperty = require('../_chunks/dep-a1655de1.js');
|
|
12
|
+
var _typeof = require('../_chunks/dep-3405bda4.js');
|
|
13
|
+
var isNumber = require('../_chunks/dep-bc80a1a5.js');
|
|
12
14
|
var React = require('react');
|
|
13
15
|
var reactTransitionGroup = require('react-transition-group');
|
|
14
16
|
var classNames = require('classnames');
|
|
@@ -17,14 +19,13 @@ var _util_noop = require('../_util/noop.js');
|
|
|
17
19
|
var _util_useLayoutEffect = require('../_util/useLayoutEffect.js');
|
|
18
20
|
var _util_useDialogEsc = require('../_util/useDialogEsc.js');
|
|
19
21
|
var dialog_defaultProps = require('./defaultProps.js');
|
|
20
|
-
require('../_chunks/dep-
|
|
22
|
+
require('../_chunks/dep-fcf32c81.js');
|
|
23
|
+
require('../_chunks/dep-b1a67107.js');
|
|
21
24
|
require('react-dom');
|
|
22
25
|
require('../_util/dom.js');
|
|
23
26
|
require('raf');
|
|
24
27
|
require('../_chunks/dep-1d819290.js');
|
|
25
|
-
require('../_chunks/dep-fcf32c81.js');
|
|
26
28
|
require('../_chunks/dep-c90cc28f.js');
|
|
27
|
-
require('../_chunks/dep-b1a67107.js');
|
|
28
29
|
require('../_util/easing.js');
|
|
29
30
|
require('../_util/useConfig.js');
|
|
30
31
|
require('../_chunks/dep-b15f51d2.js');
|
|
@@ -184,14 +185,17 @@ var RenderDialog = /*#__PURE__*/React.forwardRef(function (props, ref) {
|
|
|
184
185
|
|
|
185
186
|
if (!isModal) {
|
|
186
187
|
var style = dialog.current.style;
|
|
187
|
-
style.
|
|
188
|
-
style.
|
|
188
|
+
style.position = "relative";
|
|
189
|
+
style.left = "unset";
|
|
190
|
+
style.top = "unset";
|
|
189
191
|
}
|
|
190
192
|
|
|
191
193
|
onClosed && onClosed();
|
|
192
194
|
};
|
|
193
195
|
|
|
194
196
|
var onMaskClick = function onMaskClick(e) {
|
|
197
|
+
if (mode !== "modal") return;
|
|
198
|
+
|
|
195
199
|
if (e.target === e.currentTarget && closeOnOverlayClick) {
|
|
196
200
|
onOverlayClick({
|
|
197
201
|
e: e
|
|
@@ -233,7 +237,7 @@ var RenderDialog = /*#__PURE__*/React.forwardRef(function (props, ref) {
|
|
|
233
237
|
}
|
|
234
238
|
};
|
|
235
239
|
|
|
236
|
-
var renderDialog = function renderDialog(
|
|
240
|
+
var renderDialog = function renderDialog() {
|
|
237
241
|
var dest = {};
|
|
238
242
|
|
|
239
243
|
if (props.width !== void 0) {
|
|
@@ -251,6 +255,9 @@ var RenderDialog = /*#__PURE__*/React.forwardRef(function (props, ref) {
|
|
|
251
255
|
onClick: handleCloseBtnClick,
|
|
252
256
|
className: "".concat(prefixCls, "__close")
|
|
253
257
|
}, closeBtn);
|
|
258
|
+
var validWindow = (typeof window === "undefined" ? "undefined" : _typeof._typeof(window)) === "object";
|
|
259
|
+
var screenHeight = validWindow ? window.innerHeight || document.documentElement.clientHeight : void 0;
|
|
260
|
+
var screenWidth = validWindow ? window.innerWidth || document.documentElement.clientWidth : void 0;
|
|
254
261
|
|
|
255
262
|
var style = _objectSpread(_objectSpread({}, dest), props.style);
|
|
256
263
|
|
|
@@ -263,30 +270,14 @@ var RenderDialog = /*#__PURE__*/React.forwardRef(function (props, ref) {
|
|
|
263
270
|
var _dialog$current = dialog.current,
|
|
264
271
|
style2 = _dialog$current.style,
|
|
265
272
|
offsetWidth = _dialog$current.offsetWidth,
|
|
266
|
-
offsetHeight = _dialog$current.offsetHeight
|
|
267
|
-
clientHeight = _dialog$current.clientHeight,
|
|
268
|
-
clientWidth = _dialog$current.clientWidth;
|
|
269
|
-
var halfHeight = clientHeight / 2;
|
|
270
|
-
var halfWidth = clientWidth / 2;
|
|
273
|
+
offsetHeight = _dialog$current.offsetHeight;
|
|
271
274
|
var diffX = e.clientX - dialogOffset.x;
|
|
272
275
|
var diffY = e.clientY - dialogOffset.y;
|
|
273
|
-
|
|
274
|
-
if (
|
|
275
|
-
|
|
276
|
-
|
|
277
|
-
|
|
278
|
-
if (diffX > window.innerWidth - offsetWidth + halfWidth) {
|
|
279
|
-
diffX = window.innerWidth - offsetWidth + halfWidth;
|
|
280
|
-
}
|
|
281
|
-
|
|
282
|
-
if (diffY < halfHeight) {
|
|
283
|
-
diffY = halfHeight;
|
|
284
|
-
}
|
|
285
|
-
|
|
286
|
-
if (diffY > window.innerHeight - offsetHeight + halfHeight) {
|
|
287
|
-
diffY = window.innerHeight - offsetHeight + halfHeight;
|
|
288
|
-
}
|
|
289
|
-
|
|
276
|
+
if (diffX < 0) diffX = 0;
|
|
277
|
+
if (diffY < 0) diffY = 0;
|
|
278
|
+
if (screenWidth - offsetWidth - diffX < 0) diffX = screenWidth - offsetWidth;
|
|
279
|
+
if (screenHeight - offsetHeight - diffY < 0) diffY = screenHeight - offsetHeight;
|
|
280
|
+
style2.position = "absolute";
|
|
290
281
|
style2.left = "".concat(diffX, "px");
|
|
291
282
|
style2.top = "".concat(diffY, "px");
|
|
292
283
|
};
|
|
@@ -301,7 +292,10 @@ var RenderDialog = /*#__PURE__*/React.forwardRef(function (props, ref) {
|
|
|
301
292
|
if (canDraggable) {
|
|
302
293
|
var _dialog$current2 = dialog.current,
|
|
303
294
|
offsetLeft = _dialog$current2.offsetLeft,
|
|
304
|
-
offsetTop = _dialog$current2.offsetTop
|
|
295
|
+
offsetTop = _dialog$current2.offsetTop,
|
|
296
|
+
offsetHeight = _dialog$current2.offsetHeight,
|
|
297
|
+
offsetWidth = _dialog$current2.offsetWidth;
|
|
298
|
+
if (offsetWidth > screenWidth || offsetHeight > screenHeight) return;
|
|
305
299
|
dialog.current.style.cursor = "move";
|
|
306
300
|
var diffX = e.clientX - offsetLeft;
|
|
307
301
|
var diffY = e.clientY - offsetTop;
|
|
@@ -314,12 +308,29 @@ var RenderDialog = /*#__PURE__*/React.forwardRef(function (props, ref) {
|
|
|
314
308
|
}
|
|
315
309
|
};
|
|
316
310
|
|
|
311
|
+
var positionStyle = {};
|
|
312
|
+
|
|
313
|
+
if (props.top !== void 0) {
|
|
314
|
+
if (isNumber.isNumber_1(props.top) && props.top < 0) {
|
|
315
|
+
positionStyle.paddingTop = "".concat(props.top, "px");
|
|
316
|
+
} else {
|
|
317
|
+
positionStyle.paddingTop = props.top;
|
|
318
|
+
}
|
|
319
|
+
}
|
|
320
|
+
|
|
321
|
+
var classNames = classNames__default["default"]("".concat(prefixCls, "__position"), defineProperty._defineProperty({}, "".concat(prefixCls, "--top"), !!props.top), "".concat(props.placement && !props.top ? "".concat(prefixCls, "--").concat(props.placement) : ""));
|
|
317
322
|
var dialogElement = /* @__PURE__ */React__default["default"].createElement("div", {
|
|
323
|
+
className: "".concat(prefixCls, "__wrap"),
|
|
324
|
+
onClick: onMaskClick
|
|
325
|
+
}, /* @__PURE__ */React__default["default"].createElement("div", {
|
|
326
|
+
className: classNames,
|
|
327
|
+
style: positionStyle
|
|
328
|
+
}, /* @__PURE__ */React__default["default"].createElement("div", {
|
|
318
329
|
ref: dialog,
|
|
319
330
|
style: style,
|
|
320
|
-
className: classNames__default["default"]("".concat(prefixCls), "".concat(prefixCls, "--default")
|
|
331
|
+
className: classNames__default["default"]("".concat(prefixCls), "".concat(prefixCls, "--default")),
|
|
321
332
|
onMouseDown: onDialogMoveStart
|
|
322
|
-
}, closer, header, body, footer);
|
|
333
|
+
}, closer, header, body, footer)));
|
|
323
334
|
return /* @__PURE__ */React__default["default"].createElement(reactTransitionGroup.CSSTransition, {
|
|
324
335
|
"in": props.visible,
|
|
325
336
|
appear: true,
|
|
@@ -347,7 +358,6 @@ var RenderDialog = /*#__PURE__*/React.forwardRef(function (props, ref) {
|
|
|
347
358
|
nodeRef: maskRef
|
|
348
359
|
}, /* @__PURE__ */React__default["default"].createElement("div", {
|
|
349
360
|
ref: maskRef,
|
|
350
|
-
onClick: onMaskClick,
|
|
351
361
|
className: "".concat(prefixCls, "__mask")
|
|
352
362
|
}));
|
|
353
363
|
}
|
|
@@ -366,7 +376,7 @@ var RenderDialog = /*#__PURE__*/React.forwardRef(function (props, ref) {
|
|
|
366
376
|
zIndex: zIndex
|
|
367
377
|
});
|
|
368
378
|
|
|
369
|
-
var dialogBody = renderDialog(
|
|
379
|
+
var dialogBody = renderDialog();
|
|
370
380
|
var wrapClass = classNames__default["default"](props.className, "".concat(prefixCls, "__ctx"), "".concat(prefixCls, "__ctx--fixed"), visible ? dialogOpenClass : "");
|
|
371
381
|
var dialog2 = /* @__PURE__ */React__default["default"].createElement("div", {
|
|
372
382
|
ref: wrap,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RenderDialog.js","sources":["../../src/dialog/RenderDialog.tsx"],"sourcesContent":["import React, { useRef, CSSProperties, useEffect, forwardRef, useImperativeHandle } from 'react';\nimport { CSSTransition } from 'react-transition-group';\nimport classnames from 'classnames';\nimport Portal from '../common/Portal';\nimport noop from '../_util/noop';\nimport useLayoutEffect from '../_util/useLayoutEffect';\nimport { DialogProps } from './Dialog';\nimport useDialogEsc from '../_util/useDialogEsc';\nimport { dialogDefaultProps } from './defaultProps';\n\nenum KeyCode {\n ESC = 27,\n}\n\nexport interface RenderDialogProps extends DialogProps {\n prefixCls?: string;\n classPrefix: string;\n}\n\nconst transitionTime = 300;\nlet mousePosition: { x: number; y: number } | null;\nconst getClickPosition = (e: MouseEvent) => {\n mousePosition = {\n x: e.clientX,\n y: e.clientY,\n };\n setTimeout(() => {\n mousePosition = null;\n }, 100);\n};\nif (typeof window !== 'undefined' && window.document && window.document.documentElement) {\n document.documentElement.addEventListener('click', getClickPosition, true);\n}\nconst RenderDialog = forwardRef((props: RenderDialogProps, ref: React.Ref<HTMLDivElement>) => {\n const {\n prefixCls,\n attach,\n visible,\n mode,\n zIndex,\n showOverlay,\n onEscKeydown = noop,\n onClosed = noop,\n onClose = noop,\n onCloseBtnClick = noop,\n onOverlayClick = noop,\n preventScrollThrough,\n closeBtn,\n closeOnEscKeydown,\n closeOnOverlayClick,\n destroyOnClose,\n } = props;\n const wrap = useRef<HTMLDivElement>();\n const dialog = useRef<HTMLDivElement>();\n const maskRef = useRef<HTMLDivElement>();\n const portalRef = useRef<HTMLDivElement>();\n const bodyOverflow = useRef<string>();\n const bodyCssTextRef = useRef<string>();\n const isModal = mode === 'modal';\n const canDraggable = props.draggable && mode === 'modeless';\n const dialogOpenClass = `${prefixCls}__open`;\n useDialogEsc(visible, wrap);\n useImperativeHandle(ref, () => wrap.current);\n useLayoutEffect(() => {\n bodyOverflow.current = document.body.style.overflow;\n bodyCssTextRef.current = document.body.style.cssText;\n }, []);\n\n useLayoutEffect(() => {\n if (visible) {\n if (isModal && bodyOverflow.current !== 'hidden' && preventScrollThrough) {\n const scrollWidth = window.innerWidth - document.body.offsetWidth;\n // 减少回流\n if (bodyCssTextRef.current === '') {\n let bodyCssText = 'overflow: hidden;';\n if (scrollWidth > 0) {\n bodyCssText += `position: relative;width: calc(100% - ${scrollWidth}px);`;\n }\n document.body.style.cssText = bodyCssText;\n } else {\n if (scrollWidth > 0) {\n document.body.style.width = `calc(100% - ${scrollWidth}px)`;\n document.body.style.position = 'relative';\n }\n document.body.style.overflow = 'hidden';\n }\n }\n if (wrap.current) {\n wrap.current.focus();\n }\n } else if (isModal) {\n const openDialogDom = document.querySelectorAll(`.${dialogOpenClass}`);\n if (openDialogDom.length < 1) {\n document.body.style.cssText = bodyCssTextRef.current;\n }\n }\n\n // 组件销毁后重置 body 样式\n return () => {\n if (isModal) {\n const openDialogDom = document.querySelectorAll(`.${dialogOpenClass}`);\n if (openDialogDom.length < 1) {\n document.body.style.cssText = bodyCssTextRef.current;\n document.body.style.overflow = bodyOverflow.current;\n }\n } else {\n document.body.style.cssText = bodyCssTextRef.current;\n document.body.style.overflow = bodyOverflow.current;\n }\n };\n }, [preventScrollThrough, attach, visible, mode, isModal, dialogOpenClass]);\n\n useEffect(() => {\n if (visible) {\n if (mousePosition && dialog.current) {\n dialog.current.style.transformOrigin = `${mousePosition.x - dialog.current.offsetLeft}px ${\n mousePosition.y - dialog.current.offsetTop\n }px`;\n }\n }\n }, [visible]);\n\n const onAnimateLeave = () => {\n if (wrap.current) {\n wrap.current.style.display = 'none';\n }\n if (isModal && preventScrollThrough) {\n // 还原body的滚动条\n const openDialogDom = document.querySelectorAll(`.${dialogOpenClass}`);\n if (isModal && openDialogDom.length < 1) {\n document.body.style.overflow = bodyOverflow.current;\n }\n }\n if (!isModal) {\n const { style } = dialog.current;\n style.left = '50%';\n style.top = '50%';\n }\n onClosed && onClosed();\n };\n\n const onMaskClick = (e: React.MouseEvent<HTMLDivElement>) => {\n if (e.target === e.currentTarget && closeOnOverlayClick) {\n onOverlayClick({ e });\n onClose({ e, trigger: 'overlay' });\n }\n };\n\n const handleCloseBtnClick = (e: React.MouseEvent<HTMLDivElement>) => {\n onCloseBtnClick({ e });\n onClose({ e, trigger: 'close-btn' });\n };\n\n const handleKeyDown = (e: React.KeyboardEvent<HTMLDivElement>) => {\n // https://developer.mozilla.org/en-US/docs/Web/API/KeyboardEvent/keyCode\n if (+e.code === KeyCode.ESC || e.keyCode === KeyCode.ESC) {\n e.stopPropagation();\n onEscKeydown({ e });\n if (closeOnEscKeydown) {\n onClose({ e, trigger: 'esc' });\n }\n }\n };\n\n const renderDialog = (classNames) => {\n const dest: any = {};\n if (props.width !== undefined) {\n dest.width = props.width;\n }\n\n const footer = props.footer ? <div className={`${prefixCls}__footer`}>{props.footer}</div> : null;\n\n const { header } = props;\n\n const body = <div className={`${prefixCls}__body`}>{props.body || props.children}</div>;\n\n const closer = closeBtn && (\n <span onClick={handleCloseBtnClick} className={`${prefixCls}__close`}>\n {closeBtn}\n </span>\n );\n\n const style = { ...dest, ...props.style };\n let dialogOffset = { x: 0, y: 0 };\n const onDialogMove = (e: MouseEvent) => {\n const { style, offsetWidth, offsetHeight, clientHeight, clientWidth } = dialog.current;\n const halfHeight = clientHeight / 2;\n const halfWidth = clientWidth / 2;\n\n let diffX = e.clientX - dialogOffset.x;\n let diffY = e.clientY - dialogOffset.y;\n\n if (diffX < halfWidth) {\n diffX = halfWidth;\n }\n if (diffX > window.innerWidth - offsetWidth + halfWidth) {\n diffX = window.innerWidth - offsetWidth + halfWidth;\n }\n\n if (diffY < halfHeight) {\n diffY = halfHeight;\n }\n\n if (diffY > window.innerHeight - offsetHeight + halfHeight) {\n diffY = window.innerHeight - offsetHeight + halfHeight;\n }\n style.left = `${diffX}px`;\n style.top = `${diffY}px`;\n };\n\n const onDialogMoveEnd = () => {\n dialog.current.style.cursor = 'default';\n document.removeEventListener('mousemove', onDialogMove);\n document.removeEventListener('mouseup', onDialogMoveEnd);\n };\n\n const onDialogMoveStart = (e: React.MouseEvent<HTMLDivElement>) => {\n if (canDraggable) {\n const { offsetLeft, offsetTop } = dialog.current;\n dialog.current.style.cursor = 'move';\n const diffX = e.clientX - offsetLeft;\n const diffY = e.clientY - offsetTop;\n dialogOffset = {\n x: diffX,\n y: diffY,\n };\n\n document.addEventListener('mousemove', onDialogMove);\n document.addEventListener('mouseup', onDialogMoveEnd);\n }\n };\n\n const dialogElement = (\n <div\n ref={dialog}\n style={style}\n className={classnames(`${prefixCls}`, `${prefixCls}--default`, classNames)}\n onMouseDown={onDialogMoveStart}\n >\n {closer}\n {header}\n {body}\n {footer}\n </div>\n );\n\n return (\n <CSSTransition\n in={props.visible}\n appear\n mountOnEnter\n unmountOnExit={destroyOnClose}\n timeout={transitionTime}\n classNames={`${prefixCls}-zoom`}\n onEntered={props.onOpened}\n onExited={onAnimateLeave}\n nodeRef={dialog}\n >\n {dialogElement}\n </CSSTransition>\n );\n };\n\n const renderMask = () => {\n let maskElement;\n if (showOverlay) {\n maskElement = (\n <CSSTransition\n in={visible}\n appear\n timeout={transitionTime}\n classNames={`${prefixCls}-fade`}\n mountOnEnter\n unmountOnExit\n nodeRef={maskRef}\n >\n <div ref={maskRef} onClick={onMaskClick} className={`${prefixCls}__mask`} />\n </CSSTransition>\n );\n }\n return maskElement;\n };\n\n const render = () => {\n const style: CSSProperties = {};\n if (visible) {\n style.display = 'block';\n }\n const wrapStyle = {\n ...style,\n zIndex,\n };\n\n const dialogBody = renderDialog(`${props.placement ? `${prefixCls}--${props.placement}` : ''}`);\n const wrapClass = classnames(\n props.className,\n `${prefixCls}__ctx`,\n `${prefixCls}__ctx--fixed`,\n visible ? dialogOpenClass : '',\n );\n const dialog = (\n <div ref={wrap} className={wrapClass} style={wrapStyle} onKeyDown={handleKeyDown} tabIndex={0}>\n {mode === 'modal' && renderMask()}\n {dialogBody}\n </div>\n );\n\n let dom = null;\n\n if (visible || wrap.current) {\n if (!attach) {\n dom = dialog;\n } else {\n dom = (\n <CSSTransition\n in={visible}\n appear\n timeout={transitionTime}\n mountOnEnter\n unmountOnExit={destroyOnClose}\n nodeRef={portalRef}\n >\n <Portal attach={attach} ref={portalRef}>\n {dialog}\n </Portal>\n </CSSTransition>\n );\n }\n }\n return dom;\n };\n\n return render();\n});\n\nRenderDialog.defaultProps = dialogDefaultProps;\n\nexport default RenderDialog;\n"],"names":["transitionTime","mousePosition","getClickPosition","e","x","clientX","y","clientY","setTimeout","window","document","documentElement","addEventListener","RenderDialog","forwardRef","props","ref","prefixCls","attach","visible","mode","zIndex","showOverlay","onEscKeydown","noop","onClosed","onClose","onCloseBtnClick","onOverlayClick","preventScrollThrough","closeBtn","closeOnEscKeydown","closeOnOverlayClick","destroyOnClose","wrap","useRef","dialog","maskRef","portalRef","bodyOverflow","bodyCssTextRef","isModal","canDraggable","draggable","dialogOpenClass","useDialogEsc","useImperativeHandle","current","useLayoutEffect","body","style","overflow","cssText","scrollWidth","innerWidth","offsetWidth","bodyCssText","width","position","focus","openDialogDom","querySelectorAll","length","useEffect","transformOrigin","offsetLeft","offsetTop","onAnimateLeave","display","left","top","onMaskClick","target","currentTarget","trigger","handleCloseBtnClick","handleKeyDown","code","keyCode","stopPropagation","renderDialog","classNames","dest","footer","React","createElement","className","header","children","closer","onClick","dialogOffset","onDialogMove","style2","offsetHeight","clientHeight","clientWidth","halfHeight","halfWidth","diffX","diffY","innerHeight","onDialogMoveEnd","cursor","removeEventListener","onDialogMoveStart","dialogElement","classnames","onMouseDown","CSSTransition","appear","mountOnEnter","unmountOnExit","timeout","onEntered","onOpened","onExited","nodeRef","renderMask","maskElement","render","wrapStyle","dialogBody","placement","wrapClass","dialog2","onKeyDown","tabIndex","dom","Portal","defaultProps","dialogDefaultProps"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"RenderDialog.js","sources":["../../src/dialog/RenderDialog.tsx"],"sourcesContent":["import isNumber from 'lodash/isNumber';\nimport React, { useRef, CSSProperties, useEffect, forwardRef, useImperativeHandle } from 'react';\nimport { CSSTransition } from 'react-transition-group';\nimport classnames from 'classnames';\nimport Portal from '../common/Portal';\nimport noop from '../_util/noop';\nimport useLayoutEffect from '../_util/useLayoutEffect';\nimport { DialogProps } from './Dialog';\nimport useDialogEsc from '../_util/useDialogEsc';\nimport { dialogDefaultProps } from './defaultProps';\n\nenum KeyCode {\n ESC = 27,\n}\n\nexport interface RenderDialogProps extends DialogProps {\n prefixCls?: string;\n classPrefix: string;\n}\n\nconst transitionTime = 300;\nlet mousePosition: { x: number; y: number } | null;\nconst getClickPosition = (e: MouseEvent) => {\n mousePosition = {\n x: e.clientX,\n y: e.clientY,\n };\n setTimeout(() => {\n mousePosition = null;\n }, 100);\n};\nif (typeof window !== 'undefined' && window.document && window.document.documentElement) {\n document.documentElement.addEventListener('click', getClickPosition, true);\n}\nconst RenderDialog = forwardRef((props: RenderDialogProps, ref: React.Ref<HTMLDivElement>) => {\n const {\n prefixCls,\n attach,\n visible,\n mode,\n zIndex,\n showOverlay,\n onEscKeydown = noop,\n onClosed = noop,\n onClose = noop,\n onCloseBtnClick = noop,\n onOverlayClick = noop,\n preventScrollThrough,\n closeBtn,\n closeOnEscKeydown,\n closeOnOverlayClick,\n destroyOnClose,\n } = props;\n const wrap = useRef<HTMLDivElement>();\n const dialog = useRef<HTMLDivElement>();\n const maskRef = useRef<HTMLDivElement>();\n const portalRef = useRef<HTMLDivElement>();\n const bodyOverflow = useRef<string>();\n const bodyCssTextRef = useRef<string>();\n const isModal = mode === 'modal';\n const canDraggable = props.draggable && mode === 'modeless';\n const dialogOpenClass = `${prefixCls}__open`;\n useDialogEsc(visible, wrap);\n useImperativeHandle(ref, () => wrap.current);\n useLayoutEffect(() => {\n bodyOverflow.current = document.body.style.overflow;\n bodyCssTextRef.current = document.body.style.cssText;\n }, []);\n\n useLayoutEffect(() => {\n if (visible) {\n if (isModal && bodyOverflow.current !== 'hidden' && preventScrollThrough) {\n const scrollWidth = window.innerWidth - document.body.offsetWidth;\n // 减少回流\n if (bodyCssTextRef.current === '') {\n let bodyCssText = 'overflow: hidden;';\n if (scrollWidth > 0) {\n bodyCssText += `position: relative;width: calc(100% - ${scrollWidth}px);`;\n }\n document.body.style.cssText = bodyCssText;\n } else {\n if (scrollWidth > 0) {\n document.body.style.width = `calc(100% - ${scrollWidth}px)`;\n document.body.style.position = 'relative';\n }\n document.body.style.overflow = 'hidden';\n }\n }\n if (wrap.current) {\n wrap.current.focus();\n }\n } else if (isModal) {\n const openDialogDom = document.querySelectorAll(`.${dialogOpenClass}`);\n if (openDialogDom.length < 1) {\n document.body.style.cssText = bodyCssTextRef.current;\n }\n }\n\n // 组件销毁后重置 body 样式\n return () => {\n if (isModal) {\n const openDialogDom = document.querySelectorAll(`.${dialogOpenClass}`);\n if (openDialogDom.length < 1) {\n document.body.style.cssText = bodyCssTextRef.current;\n document.body.style.overflow = bodyOverflow.current;\n }\n } else {\n document.body.style.cssText = bodyCssTextRef.current;\n document.body.style.overflow = bodyOverflow.current;\n }\n };\n }, [preventScrollThrough, attach, visible, mode, isModal, dialogOpenClass]);\n\n useEffect(() => {\n // 动画渲染初始位置\n if (visible) {\n if (mousePosition && dialog.current) {\n dialog.current.style.transformOrigin = `${mousePosition.x - dialog.current.offsetLeft}px ${\n mousePosition.y - dialog.current.offsetTop\n }px`;\n }\n }\n }, [visible]);\n\n const onAnimateLeave = () => {\n if (wrap.current) {\n wrap.current.style.display = 'none';\n }\n if (isModal && preventScrollThrough) {\n // 还原body的滚动条\n const openDialogDom = document.querySelectorAll(`.${dialogOpenClass}`);\n if (isModal && openDialogDom.length < 1) {\n document.body.style.overflow = bodyOverflow.current;\n }\n }\n if (!isModal) {\n // 关闭弹窗 清空拖拽设置的相关css\n const { style } = dialog.current;\n style.position = 'relative';\n style.left = 'unset';\n style.top = 'unset';\n }\n onClosed && onClosed();\n };\n\n const onMaskClick = (e: React.MouseEvent<HTMLDivElement>) => {\n // 如果不是modal模式 默认没有mask 也就没有相关点击事件\n if (mode !== 'modal') return;\n if (e.target === e.currentTarget && closeOnOverlayClick) {\n onOverlayClick({ e });\n onClose({ e, trigger: 'overlay' });\n }\n };\n\n const handleCloseBtnClick = (e: React.MouseEvent<HTMLDivElement>) => {\n onCloseBtnClick({ e });\n onClose({ e, trigger: 'close-btn' });\n };\n\n const handleKeyDown = (e: React.KeyboardEvent<HTMLDivElement>) => {\n // https://developer.mozilla.org/en-US/docs/Web/API/KeyboardEvent/keyCode\n if (+e.code === KeyCode.ESC || e.keyCode === KeyCode.ESC) {\n e.stopPropagation();\n onEscKeydown({ e });\n if (closeOnEscKeydown) {\n onClose({ e, trigger: 'esc' });\n }\n }\n };\n\n const renderDialog = () => {\n const dest: any = {};\n if (props.width !== undefined) {\n dest.width = props.width;\n }\n\n const footer = props.footer ? <div className={`${prefixCls}__footer`}>{props.footer}</div> : null;\n\n const { header } = props;\n\n const body = <div className={`${prefixCls}__body`}>{props.body || props.children}</div>;\n\n const closer = closeBtn && (\n <span onClick={handleCloseBtnClick} className={`${prefixCls}__close`}>\n {closeBtn}\n </span>\n );\n const validWindow = typeof window === 'object';\n\n const screenHeight = validWindow ? window.innerHeight || document.documentElement.clientHeight : undefined;\n const screenWidth = validWindow ? window.innerWidth || document.documentElement.clientWidth : undefined;\n\n const style = { ...dest, ...props.style };\n let dialogOffset = { x: 0, y: 0 };\n // 拖拽代码实现部分\n const onDialogMove = (e: MouseEvent) => {\n const { style, offsetWidth, offsetHeight } = dialog.current;\n \n let diffX = e.clientX - dialogOffset.x;\n let diffY = e.clientY - dialogOffset.y;\n // 拖拽上左边界限制\n if (diffX < 0) diffX = 0;\n if (diffY < 0) diffY = 0;\n if (screenWidth - offsetWidth - diffX < 0) diffX = screenWidth - offsetWidth;\n if (screenHeight - offsetHeight - diffY < 0) diffY = screenHeight - offsetHeight;\n style.position = 'absolute';\n style.left = `${diffX}px`;\n style.top = `${diffY}px`;\n };\n\n const onDialogMoveEnd = () => {\n dialog.current.style.cursor = 'default';\n document.removeEventListener('mousemove', onDialogMove);\n document.removeEventListener('mouseup', onDialogMoveEnd);\n };\n\n const onDialogMoveStart = (e: React.MouseEvent<HTMLDivElement>) => {\n if (canDraggable) {\n const { offsetLeft, offsetTop, offsetHeight, offsetWidth } = dialog.current;\n // 如果弹出框超出屏幕范围 不能进行拖拽\n if (offsetWidth > screenWidth || offsetHeight > screenHeight) return;\n dialog.current.style.cursor = 'move';\n // 计算鼠标\n const diffX = e.clientX - offsetLeft;\n const diffY = e.clientY - offsetTop;\n dialogOffset = {\n x: diffX,\n y: diffY,\n };\n\n document.addEventListener('mousemove', onDialogMove);\n document.addEventListener('mouseup', onDialogMoveEnd);\n }\n };\n const positionStyle: any = {};\n if (props.top !== undefined) {\n // 判断是否时数字\n if (isNumber(props.top) && props.top < 0) {\n positionStyle.paddingTop = `${props.top}px`;\n } else {\n positionStyle.paddingTop = props.top;\n }\n \n }\n // 此处获取定位方式 top 优先级较高 存在时 默认使用top定位\n const classNames = classnames(\n `${prefixCls}__position`,\n { [`${prefixCls}--top`]: !!props.top },\n `${props.placement && !props.top ? `${prefixCls}--${props.placement}` : ''}`,\n );\n const dialogElement = (\n <div className={`${prefixCls}__wrap`} onClick={onMaskClick}>\n <div className={classNames} style={positionStyle}>\n <div\n ref={dialog}\n style={style}\n className={classnames(`${prefixCls}`, `${prefixCls}--default`)}\n onMouseDown={onDialogMoveStart}\n >\n {closer}\n {header}\n {body}\n {footer}\n </div>\n </div>\n </div>\n );\n\n return (\n <CSSTransition\n in={props.visible}\n appear\n mountOnEnter\n unmountOnExit={destroyOnClose}\n timeout={transitionTime}\n classNames={`${prefixCls}-zoom`}\n onEntered={props.onOpened}\n onExited={onAnimateLeave}\n nodeRef={dialog}\n >\n {dialogElement}\n </CSSTransition>\n );\n };\n\n const renderMask = () => {\n let maskElement;\n if (showOverlay) {\n maskElement = (\n <CSSTransition\n in={visible}\n appear\n timeout={transitionTime}\n classNames={`${prefixCls}-fade`}\n mountOnEnter\n unmountOnExit\n nodeRef={maskRef}\n >\n <div ref={maskRef} className={`${prefixCls}__mask`} />\n </CSSTransition>\n );\n }\n return maskElement;\n };\n\n const render = () => {\n const style: CSSProperties = {};\n if (visible) {\n style.display = 'block';\n }\n const wrapStyle = {\n ...style,\n zIndex,\n };\n\n const dialogBody = renderDialog();\n const wrapClass = classnames(\n props.className,\n `${prefixCls}__ctx`,\n `${prefixCls}__ctx--fixed`,\n visible ? dialogOpenClass : '',\n );\n const dialog = (\n <div ref={wrap} className={wrapClass} style={wrapStyle} onKeyDown={handleKeyDown} tabIndex={0}>\n {mode === 'modal' && renderMask()}\n {dialogBody}\n </div>\n );\n\n let dom = null;\n\n if (visible || wrap.current) {\n if (!attach) {\n dom = dialog;\n } else {\n dom = (\n <CSSTransition\n in={visible}\n appear\n timeout={transitionTime}\n mountOnEnter\n unmountOnExit={destroyOnClose}\n nodeRef={portalRef}\n >\n <Portal attach={attach} ref={portalRef}>\n {dialog}\n </Portal>\n </CSSTransition>\n );\n }\n }\n return dom;\n };\n\n return render();\n});\n\nRenderDialog.defaultProps = dialogDefaultProps;\n\nexport default RenderDialog;\n"],"names":["transitionTime","mousePosition","getClickPosition","e","x","clientX","y","clientY","setTimeout","window","document","documentElement","addEventListener","RenderDialog","forwardRef","props","ref","prefixCls","attach","visible","mode","zIndex","showOverlay","onEscKeydown","noop","onClosed","onClose","onCloseBtnClick","onOverlayClick","preventScrollThrough","closeBtn","closeOnEscKeydown","closeOnOverlayClick","destroyOnClose","wrap","useRef","dialog","maskRef","portalRef","bodyOverflow","bodyCssTextRef","isModal","canDraggable","draggable","dialogOpenClass","useDialogEsc","useImperativeHandle","current","useLayoutEffect","body","style","overflow","cssText","scrollWidth","innerWidth","offsetWidth","bodyCssText","width","position","focus","openDialogDom","querySelectorAll","length","useEffect","transformOrigin","offsetLeft","offsetTop","onAnimateLeave","display","left","top","onMaskClick","target","currentTarget","trigger","handleCloseBtnClick","handleKeyDown","code","keyCode","stopPropagation","renderDialog","dest","footer","React","createElement","className","header","children","closer","onClick","validWindow","screenHeight","innerHeight","clientHeight","screenWidth","clientWidth","dialogOffset","onDialogMove","style2","offsetHeight","diffX","diffY","onDialogMoveEnd","cursor","removeEventListener","onDialogMoveStart","positionStyle","isNumber","paddingTop","classNames","classnames","_defineProperty","placement","dialogElement","onMouseDown","CSSTransition","appear","mountOnEnter","unmountOnExit","timeout","onEntered","onOpened","onExited","nodeRef","renderMask","maskElement","render","wrapStyle","dialogBody","wrapClass","dialog2","onKeyDown","tabIndex","dom","Portal","defaultProps","dialogDefaultProps"],"mappings":"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"}
|
package/lib/dialog/index.js
CHANGED
|
@@ -63,6 +63,7 @@ require('../loading/plugin.js');
|
|
|
63
63
|
require('../button/defaultProps.js');
|
|
64
64
|
require('../_util/noop.js');
|
|
65
65
|
require('./RenderDialog.js');
|
|
66
|
+
require('../_chunks/dep-bc80a1a5.js');
|
|
66
67
|
require('react-transition-group');
|
|
67
68
|
require('../_util/useLayoutEffect.js');
|
|
68
69
|
require('../_util/useDialogEsc.js');
|
package/lib/dialog/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../../src/dialog/index.tsx"],"sourcesContent":["import _Dialog from './Dialog';\nimport { DialogPlugin as _DialogPlugin } from './plugin';\n\nimport './style/index.js';\n\nexport type { DialogProps } from './Dialog';\nexport * from './type';\n\nexport const Dialog = _Dialog;\nexport const dialog = _DialogPlugin;\nexport const DialogPlugin = _DialogPlugin;\n\nexport default Dialog;\n"],"names":["Dialog","_Dialog","dialog","_DialogPlugin","DialogPlugin"],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../../src/dialog/index.tsx"],"sourcesContent":["import _Dialog from './Dialog';\nimport { DialogPlugin as _DialogPlugin } from './plugin';\n\nimport './style/index.js';\n\nexport type { DialogProps } from './Dialog';\nexport * from './type';\n\nexport const Dialog = _Dialog;\nexport const dialog = _DialogPlugin;\nexport const DialogPlugin = _DialogPlugin;\n\nexport default Dialog;\n"],"names":["Dialog","_Dialog","dialog","_DialogPlugin","DialogPlugin"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAIO,IAAMA,MAAM,GAAGC,yBAAf;AACA,IAAMC,MAAM,GAAGC,2BAAf;AACA,IAAMC,YAAY,GAAGD;;;;;;;"}
|
package/lib/dialog/plugin.js
CHANGED
|
@@ -62,6 +62,7 @@ require('../loading/plugin.js');
|
|
|
62
62
|
require('../button/defaultProps.js');
|
|
63
63
|
require('../_util/noop.js');
|
|
64
64
|
require('./RenderDialog.js');
|
|
65
|
+
require('../_chunks/dep-bc80a1a5.js');
|
|
65
66
|
require('react-transition-group');
|
|
66
67
|
require('../_util/useLayoutEffect.js');
|
|
67
68
|
require('../_util/useDialogEsc.js');
|
package/lib/dialog/plugin.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"plugin.js","sources":["../../src/dialog/plugin.tsx"],"sourcesContent":["import React from 'react';\nimport ReactDOM from 'react-dom';\nimport DialogComponent, { DialogProps } from './Dialog';\n\nimport { getAttach } from '../_util/dom';\nimport { DialogOptions, DialogMethod, DialogConfirmMethod, DialogAlertMethod, DialogInstance } from './type';\n\nexport interface DialogPluginType extends DialogMethod {\n alert?: DialogAlertMethod;\n confirm?: DialogConfirmMethod;\n}\n\nconst createDialog: DialogPluginType = (props: DialogOptions): DialogInstance => {\n const dialogRef = React.createRef<DialogInstance>();\n const options = { ...props };\n const fragment = document.createDocumentFragment();\n\n ReactDOM.render(\n <DialogComponent {...(options as DialogProps)} visible={true} ref={dialogRef} isPlugin />,\n fragment,\n () => {\n (document.activeElement as HTMLElement).blur();\n },\n );\n const container = getAttach(options.attach);\n if (container) {\n container.appendChild(fragment);\n } else {\n console.error('attach is not exist');\n }\n\n const dialogNode: DialogInstance = {\n show: () => {\n container.appendChild(fragment);\n dialogRef.current?.show();\n },\n hide: () => {\n dialogRef.current?.destroy();\n },\n update: (updateOptions: DialogOptions) => {\n dialogRef.current?.update(updateOptions);\n },\n destroy: () => {\n dialogRef.current?.destroy();\n },\n };\n return dialogNode;\n};\n\nconst confirm: DialogConfirmMethod = (props: DialogOptions) => createDialog(props);\n\nconst alert: DialogAlertMethod = (props: Omit<DialogOptions, 'confirmBtn'>) => {\n const options = { ...props };\n options.cancelBtn = null;\n return createDialog(options);\n};\n\ncreateDialog.alert = alert;\ncreateDialog.confirm = confirm;\n\nexport const DialogPlugin = createDialog;\n"],"names":["createDialog","props","dialogRef","React","createRef","options","fragment","document","createDocumentFragment","ReactDOM","render","createElement","DialogComponent","visible","ref","isPlugin","activeElement","blur","container","getAttach","attach","appendChild","console","error","dialogNode","show","current","hide","destroy","update","updateOptions","confirm","alert","cancelBtn","DialogPlugin"],"mappings":"
|
|
1
|
+
{"version":3,"file":"plugin.js","sources":["../../src/dialog/plugin.tsx"],"sourcesContent":["import React from 'react';\nimport ReactDOM from 'react-dom';\nimport DialogComponent, { DialogProps } from './Dialog';\n\nimport { getAttach } from '../_util/dom';\nimport { DialogOptions, DialogMethod, DialogConfirmMethod, DialogAlertMethod, DialogInstance } from './type';\n\nexport interface DialogPluginType extends DialogMethod {\n alert?: DialogAlertMethod;\n confirm?: DialogConfirmMethod;\n}\n\nconst createDialog: DialogPluginType = (props: DialogOptions): DialogInstance => {\n const dialogRef = React.createRef<DialogInstance>();\n const options = { ...props };\n const fragment = document.createDocumentFragment();\n\n ReactDOM.render(\n <DialogComponent {...(options as DialogProps)} visible={true} ref={dialogRef} isPlugin />,\n fragment,\n () => {\n (document.activeElement as HTMLElement).blur();\n },\n );\n const container = getAttach(options.attach);\n if (container) {\n container.appendChild(fragment);\n } else {\n console.error('attach is not exist');\n }\n\n const dialogNode: DialogInstance = {\n show: () => {\n container.appendChild(fragment);\n dialogRef.current?.show();\n },\n hide: () => {\n dialogRef.current?.destroy();\n },\n update: (updateOptions: DialogOptions) => {\n dialogRef.current?.update(updateOptions);\n },\n destroy: () => {\n dialogRef.current?.destroy();\n },\n };\n return dialogNode;\n};\n\nconst confirm: DialogConfirmMethod = (props: DialogOptions) => createDialog(props);\n\nconst alert: DialogAlertMethod = (props: Omit<DialogOptions, 'confirmBtn'>) => {\n const options = { ...props };\n options.cancelBtn = null;\n return createDialog(options);\n};\n\ncreateDialog.alert = alert;\ncreateDialog.confirm = confirm;\n\nexport const DialogPlugin = createDialog;\n"],"names":["createDialog","props","dialogRef","React","createRef","options","fragment","document","createDocumentFragment","ReactDOM","render","createElement","DialogComponent","visible","ref","isPlugin","activeElement","blur","container","getAttach","attach","appendChild","console","error","dialogNode","show","current","hide","destroy","update","updateOptions","confirm","alert","cancelBtn","DialogPlugin"],"mappings":"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"}
|