tdesign-vue-next 1.7.2-alpha1 → 1.7.2-alpha2
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/cjs/_chunks/{dep-58e578eb.js → dep-0518b2b0.js} +19 -11
- package/cjs/_chunks/dep-0518b2b0.js.map +1 -0
- package/cjs/_chunks/{dep-d66e5041.js → dep-6d717749.js} +1 -1
- package/cjs/_chunks/{dep-d66e5041.js.map → dep-6d717749.js.map} +1 -1
- package/cjs/_common/js/date-picker/format.js +1 -1
- package/cjs/_common/js/date-picker/utils.d.ts +4 -3
- package/cjs/_common/js/date-picker/utils.js +1 -1
- package/cjs/components.js +1 -1
- package/cjs/date-picker/DatePicker.js +1 -1
- package/cjs/date-picker/DatePickerPanel.js +1 -1
- package/cjs/date-picker/DateRangePicker.d.ts +9 -0
- package/cjs/date-picker/DateRangePicker.js +2 -1
- package/cjs/date-picker/DateRangePicker.js.map +1 -1
- package/cjs/date-picker/DateRangePickerPanel.js +1 -1
- package/cjs/date-picker/base/Cell.js +1 -1
- package/cjs/date-picker/base/Table.js +1 -1
- package/cjs/date-picker/date-range-picker-props.d.ts +4 -0
- package/cjs/date-picker/date-range-picker-props.js +4 -0
- package/cjs/date-picker/date-range-picker-props.js.map +1 -1
- package/cjs/date-picker/hooks/useRange.js +1 -1
- package/cjs/date-picker/hooks/useRangeValue.js +1 -1
- package/cjs/date-picker/hooks/useSingle.js +1 -1
- package/cjs/date-picker/hooks/useSingleValue.js +1 -1
- package/cjs/date-picker/hooks/useTableData.js +3 -2
- package/cjs/date-picker/hooks/useTableData.js.map +1 -1
- package/cjs/date-picker/index.d.ts +19 -0
- package/cjs/date-picker/index.js +1 -1
- package/cjs/date-picker/panel/PanelContent.js +1 -1
- package/cjs/date-picker/panel/RangePanel.d.ts +3 -0
- package/cjs/date-picker/panel/RangePanel.js +10 -5
- package/cjs/date-picker/panel/RangePanel.js.map +1 -1
- package/cjs/date-picker/panel/SinglePanel.js +1 -1
- package/cjs/date-picker/type.d.ts +1 -0
- package/cjs/hooks/useVirtualScrollNew.js +1 -1
- package/cjs/hooks/useVirtualScrollNew.js.map +1 -1
- package/cjs/index-lib.js +2 -2
- package/cjs/index.js +2 -2
- package/dist/tdesign.css +8 -0
- package/dist/tdesign.css.map +1 -1
- package/dist/tdesign.js +35 -16
- 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 +1 -1
- package/dist/tdesign.min.js.map +1 -1
- package/es/_chunks/{dep-65452150.mjs → dep-78809bc1.mjs} +1 -1
- package/es/_chunks/{dep-65452150.mjs.map → dep-78809bc1.mjs.map} +1 -1
- package/es/_chunks/{dep-625810ef.mjs → dep-be3e9bff.mjs} +19 -11
- package/es/_chunks/dep-be3e9bff.mjs.map +1 -0
- package/es/_common/js/date-picker/format.mjs +1 -1
- package/es/_common/js/date-picker/utils.d.ts +4 -3
- package/es/_common/js/date-picker/utils.mjs +1 -1
- package/es/components.mjs +1 -1
- package/es/date-picker/DatePicker.mjs +1 -1
- package/es/date-picker/DatePickerPanel.mjs +1 -1
- package/es/date-picker/DateRangePicker.d.ts +9 -0
- package/es/date-picker/DateRangePicker.mjs +2 -1
- package/es/date-picker/DateRangePicker.mjs.map +1 -1
- package/es/date-picker/DateRangePickerPanel.mjs +1 -1
- package/es/date-picker/base/Cell.mjs +1 -1
- package/es/date-picker/base/Table.mjs +1 -1
- package/es/date-picker/date-range-picker-props.d.ts +4 -0
- package/es/date-picker/date-range-picker-props.mjs +4 -0
- package/es/date-picker/date-range-picker-props.mjs.map +1 -1
- package/es/date-picker/hooks/useRange.mjs +1 -1
- package/es/date-picker/hooks/useRangeValue.mjs +1 -1
- package/es/date-picker/hooks/useSingle.mjs +1 -1
- package/es/date-picker/hooks/useSingleValue.mjs +1 -1
- package/es/date-picker/hooks/useTableData.mjs +3 -2
- package/es/date-picker/hooks/useTableData.mjs.map +1 -1
- package/es/date-picker/index.d.ts +19 -0
- package/es/date-picker/index.mjs +1 -1
- package/es/date-picker/panel/PanelContent.mjs +1 -1
- package/es/date-picker/panel/RangePanel.d.ts +3 -0
- package/es/date-picker/panel/RangePanel.mjs +10 -5
- package/es/date-picker/panel/RangePanel.mjs.map +1 -1
- package/es/date-picker/panel/SinglePanel.mjs +1 -1
- package/es/date-picker/type.d.ts +1 -0
- package/es/hooks/useVirtualScrollNew.mjs +1 -1
- package/es/hooks/useVirtualScrollNew.mjs.map +1 -1
- package/es/index.mjs +2 -2
- package/es/input/style/index.css +8 -0
- package/es/nuxt/components/Affix.mjs +1 -1
- package/es/nuxt/components/Alert.mjs +1 -1
- package/es/nuxt/components/Anchor.mjs +1 -1
- package/es/nuxt/components/AnchorItem.mjs +1 -1
- package/es/nuxt/components/AnchorTarget.mjs +1 -1
- package/es/nuxt/components/Aside.mjs +1 -1
- package/es/nuxt/components/AutoComplete.mjs +1 -1
- package/es/nuxt/components/Avatar.mjs +1 -1
- package/es/nuxt/components/AvatarGroup.mjs +1 -1
- package/es/nuxt/components/BackTop.mjs +1 -1
- package/es/nuxt/components/Badge.mjs +1 -1
- package/es/nuxt/components/BaseTable.mjs +1 -1
- package/es/nuxt/components/Breadcrumb.mjs +1 -1
- package/es/nuxt/components/BreadcrumbItem.mjs +1 -1
- package/es/nuxt/components/Button.mjs +1 -1
- package/es/nuxt/components/Calendar.mjs +1 -1
- package/es/nuxt/components/Card.mjs +1 -1
- package/es/nuxt/components/Cascader.mjs +1 -1
- package/es/nuxt/components/CascaderPanel.mjs +1 -1
- package/es/nuxt/components/CheckTag.mjs +1 -1
- package/es/nuxt/components/CheckTagGroup.mjs +1 -1
- package/es/nuxt/components/Checkbox.mjs +1 -1
- package/es/nuxt/components/CheckboxGroup.mjs +1 -1
- package/es/nuxt/components/Col.mjs +1 -1
- package/es/nuxt/components/Collapse.mjs +1 -1
- package/es/nuxt/components/CollapsePanel.mjs +1 -1
- package/es/nuxt/components/ColorPicker.mjs +1 -1
- package/es/nuxt/components/ColorPickerPanel.mjs +1 -1
- package/es/nuxt/components/Comment.mjs +1 -1
- package/es/nuxt/components/ConfigProvider.mjs +1 -1
- package/es/nuxt/components/Content.mjs +1 -1
- package/es/nuxt/components/DatePicker.mjs +1 -1
- package/es/nuxt/components/DatePickerPanel.mjs +1 -1
- package/es/nuxt/components/DateRangePicker.mjs +1 -1
- package/es/nuxt/components/DateRangePickerPanel.mjs +1 -1
- package/es/nuxt/components/Dialog.mjs +1 -1
- package/es/nuxt/components/DialogPlugin.mjs +1 -1
- package/es/nuxt/components/Divider.mjs +1 -1
- package/es/nuxt/components/Drawer.mjs +1 -1
- package/es/nuxt/components/Dropdown.mjs +1 -1
- package/es/nuxt/components/DropdownItem.mjs +1 -1
- package/es/nuxt/components/DropdownMenu.mjs +1 -1
- package/es/nuxt/components/EnhancedTable.mjs +1 -1
- package/es/nuxt/components/Footer.mjs +1 -1
- package/es/nuxt/components/Form.mjs +1 -1
- package/es/nuxt/components/FormItem.mjs +1 -1
- package/es/nuxt/components/Guide.mjs +1 -1
- package/es/nuxt/components/HeadMenu.mjs +1 -1
- package/es/nuxt/components/Header.mjs +1 -1
- package/es/nuxt/components/HighlightOption.mjs +1 -1
- package/es/nuxt/components/Icon.mjs +1 -1
- package/es/nuxt/components/Image.mjs +1 -1
- package/es/nuxt/components/ImageViewer.mjs +1 -1
- package/es/nuxt/components/Input.mjs +1 -1
- package/es/nuxt/components/InputAdornment.mjs +1 -1
- package/es/nuxt/components/InputGroup.mjs +1 -1
- package/es/nuxt/components/InputNumber.mjs +1 -1
- package/es/nuxt/components/Layout.mjs +1 -1
- package/es/nuxt/components/Link.mjs +1 -1
- package/es/nuxt/components/List.mjs +1 -1
- package/es/nuxt/components/ListItem.mjs +1 -1
- package/es/nuxt/components/ListItemMeta.mjs +1 -1
- package/es/nuxt/components/Loading.mjs +1 -1
- package/es/nuxt/components/LoadingPlugin.mjs +1 -1
- package/es/nuxt/components/Menu.mjs +1 -1
- package/es/nuxt/components/MenuGroup.mjs +1 -1
- package/es/nuxt/components/MenuItem.mjs +1 -1
- package/es/nuxt/components/Message.mjs +1 -1
- package/es/nuxt/components/MessagePlugin.mjs +1 -1
- package/es/nuxt/components/Notification.mjs +1 -1
- package/es/nuxt/components/NotifyPlugin.mjs +1 -1
- package/es/nuxt/components/Option.mjs +1 -1
- package/es/nuxt/components/OptionGroup.mjs +1 -1
- package/es/nuxt/components/Pagination.mjs +1 -1
- package/es/nuxt/components/PaginationMini.mjs +1 -1
- package/es/nuxt/components/Popconfirm.mjs +1 -1
- package/es/nuxt/components/Popup.mjs +1 -1
- package/es/nuxt/components/PrimaryTable.mjs +1 -1
- package/es/nuxt/components/Progress.mjs +1 -1
- package/es/nuxt/components/Radio.mjs +1 -1
- package/es/nuxt/components/RadioButton.mjs +1 -1
- package/es/nuxt/components/RadioGroup.mjs +1 -1
- package/es/nuxt/components/RangeInput.mjs +1 -1
- package/es/nuxt/components/RangeInputPopup.mjs +1 -1
- package/es/nuxt/components/Rate.mjs +1 -1
- package/es/nuxt/components/Row.mjs +1 -1
- package/es/nuxt/components/Select.mjs +1 -1
- package/es/nuxt/components/SelectInput.mjs +1 -1
- package/es/nuxt/components/Skeleton.mjs +1 -1
- package/es/nuxt/components/Slider.mjs +1 -1
- package/es/nuxt/components/SliderButton.mjs +1 -1
- package/es/nuxt/components/Space.mjs +1 -1
- package/es/nuxt/components/Statistic.mjs +1 -1
- package/es/nuxt/components/StepItem.mjs +1 -1
- package/es/nuxt/components/Steps.mjs +1 -1
- package/es/nuxt/components/StickyItem.mjs +1 -1
- package/es/nuxt/components/StickyTool.mjs +1 -1
- package/es/nuxt/components/Submenu.mjs +1 -1
- package/es/nuxt/components/Swiper.mjs +1 -1
- package/es/nuxt/components/SwiperItem.mjs +1 -1
- package/es/nuxt/components/Switch.mjs +1 -1
- package/es/nuxt/components/TabPanel.mjs +1 -1
- package/es/nuxt/components/Table.mjs +1 -1
- package/es/nuxt/components/Tabs.mjs +1 -1
- package/es/nuxt/components/Tag.mjs +1 -1
- package/es/nuxt/components/TagInput.mjs +1 -1
- package/es/nuxt/components/Textarea.mjs +1 -1
- package/es/nuxt/components/TimePicker.mjs +1 -1
- package/es/nuxt/components/TimePickerPanel.mjs +1 -1
- package/es/nuxt/components/TimeRangePicker.mjs +1 -1
- package/es/nuxt/components/Timeline.mjs +1 -1
- package/es/nuxt/components/TimelineItem.mjs +1 -1
- package/es/nuxt/components/Tooltip.mjs +1 -1
- package/es/nuxt/components/Transfer.mjs +1 -1
- package/es/nuxt/components/Tree.mjs +1 -1
- package/es/nuxt/components/TreeSelect.mjs +1 -1
- package/es/nuxt/components/Upload.mjs +1 -1
- package/es/nuxt/components/Watermark.mjs +1 -1
- package/es/nuxt/index.mjs +1 -1
- package/esm/_chunks/{dep-c86ef12e.js → dep-5e9e69f0.js} +1 -1
- package/esm/_chunks/{dep-c86ef12e.js.map → dep-5e9e69f0.js.map} +1 -1
- package/esm/_chunks/{dep-526ee9ad.js → dep-a3c26b92.js} +19 -11
- package/esm/_chunks/dep-a3c26b92.js.map +1 -0
- package/esm/_common/js/date-picker/format.js +1 -1
- package/esm/_common/js/date-picker/utils.d.ts +4 -3
- package/esm/_common/js/date-picker/utils.js +1 -1
- package/esm/_common/style/web/components/input/_mixin.less +4 -0
- package/esm/components.js +1 -1
- package/esm/date-picker/DatePicker.js +1 -1
- package/esm/date-picker/DatePickerPanel.js +1 -1
- package/esm/date-picker/DateRangePicker.d.ts +9 -0
- package/esm/date-picker/DateRangePicker.js +2 -1
- package/esm/date-picker/DateRangePicker.js.map +1 -1
- package/esm/date-picker/DateRangePickerPanel.js +1 -1
- package/esm/date-picker/base/Cell.js +1 -1
- package/esm/date-picker/base/Table.js +1 -1
- package/esm/date-picker/date-range-picker-props.d.ts +4 -0
- package/esm/date-picker/date-range-picker-props.js +4 -0
- package/esm/date-picker/date-range-picker-props.js.map +1 -1
- package/esm/date-picker/hooks/useRange.js +1 -1
- package/esm/date-picker/hooks/useRangeValue.js +1 -1
- package/esm/date-picker/hooks/useSingle.js +1 -1
- package/esm/date-picker/hooks/useSingleValue.js +1 -1
- package/esm/date-picker/hooks/useTableData.js +3 -2
- package/esm/date-picker/hooks/useTableData.js.map +1 -1
- package/esm/date-picker/index.d.ts +19 -0
- package/esm/date-picker/index.js +1 -1
- package/esm/date-picker/panel/PanelContent.js +1 -1
- package/esm/date-picker/panel/RangePanel.d.ts +3 -0
- package/esm/date-picker/panel/RangePanel.js +10 -5
- package/esm/date-picker/panel/RangePanel.js.map +1 -1
- package/esm/date-picker/panel/SinglePanel.js +1 -1
- package/esm/date-picker/type.d.ts +1 -0
- package/esm/hooks/useVirtualScrollNew.js +1 -1
- package/esm/hooks/useVirtualScrollNew.js.map +1 -1
- package/esm/index.js +2 -2
- package/lib/_chunks/{dep-450cf503.js → dep-598ca649.js} +19 -11
- package/lib/_chunks/dep-598ca649.js.map +1 -0
- package/lib/_chunks/{dep-798b6927.js → dep-d285eb90.js} +1 -1
- package/lib/_chunks/{dep-798b6927.js.map → dep-d285eb90.js.map} +1 -1
- package/lib/_common/js/date-picker/format.js +1 -1
- package/lib/_common/js/date-picker/utils.d.ts +4 -3
- package/lib/_common/js/date-picker/utils.js +1 -1
- package/lib/components.js +1 -1
- package/lib/date-picker/DatePicker.js +1 -1
- package/lib/date-picker/DatePickerPanel.js +1 -1
- package/lib/date-picker/DateRangePicker.d.ts +9 -0
- package/lib/date-picker/DateRangePicker.js +2 -1
- package/lib/date-picker/DateRangePicker.js.map +1 -1
- package/lib/date-picker/DateRangePickerPanel.js +1 -1
- package/lib/date-picker/base/Cell.js +1 -1
- package/lib/date-picker/base/Table.js +1 -1
- package/lib/date-picker/date-range-picker-props.d.ts +4 -0
- package/lib/date-picker/date-range-picker-props.js +4 -0
- package/lib/date-picker/date-range-picker-props.js.map +1 -1
- package/lib/date-picker/hooks/useRange.js +1 -1
- package/lib/date-picker/hooks/useRangeValue.js +1 -1
- package/lib/date-picker/hooks/useSingle.js +1 -1
- package/lib/date-picker/hooks/useSingleValue.js +1 -1
- package/lib/date-picker/hooks/useTableData.js +3 -2
- package/lib/date-picker/hooks/useTableData.js.map +1 -1
- package/lib/date-picker/index.d.ts +19 -0
- package/lib/date-picker/index.js +1 -1
- package/lib/date-picker/panel/PanelContent.js +1 -1
- package/lib/date-picker/panel/RangePanel.d.ts +3 -0
- package/lib/date-picker/panel/RangePanel.js +10 -5
- package/lib/date-picker/panel/RangePanel.js.map +1 -1
- package/lib/date-picker/panel/SinglePanel.js +1 -1
- package/lib/date-picker/type.d.ts +1 -0
- package/lib/hooks/useVirtualScrollNew.js +1 -1
- package/lib/hooks/useVirtualScrollNew.js.map +1 -1
- package/lib/index-lib.js +2 -2
- package/lib/index.js +2 -2
- package/package.json +1 -1
- package/cjs/_chunks/dep-58e578eb.js.map +0 -1
- package/es/_chunks/dep-625810ef.mjs.map +0 -1
- package/esm/_chunks/dep-526ee9ad.js.map +0 -1
- package/lib/_chunks/dep-450cf503.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RangePanel.mjs","sources":["../../../src/date-picker/panel/RangePanel.tsx"],"sourcesContent":["import { defineComponent, PropType, computed } from 'vue';\nimport { useConfig, usePrefixClass } from '../../hooks/useConfig';\nimport TPanelContent from './PanelContent';\nimport TExtraContent from './ExtraContent';\nimport { TdDateRangePickerProps } from '../type';\nimport { getDefaultFormat, parseToDayjs } from '../../_common/js/date-picker/format';\nimport useTableData from '../hooks/useTableData';\nimport useDisableDate from '../hooks/useDisableDate';\n\nexport default defineComponent({\n name: 'TRangePanel',\n props: {\n hoverValue: Array as PropType<Array<string>>,\n activeIndex: Number,\n isFirstValueSelected: Boolean,\n disableDate: [Object, Array, Function] as PropType<TdDateRangePickerProps['disableDate']>,\n mode: {\n type: String as PropType<TdDateRangePickerProps['mode']>,\n default: 'date',\n },\n format: String as PropType<TdDateRangePickerProps['format']>,\n presetsPlacement: {\n type: String as PropType<TdDateRangePickerProps['presetsPlacement']>,\n default: 'bottom',\n },\n value: Array as PropType<Array<string>>,\n timePickerProps: Object as PropType<TdDateRangePickerProps['timePickerProps']>,\n presets: Object as PropType<TdDateRangePickerProps['presets']>,\n popupVisible: Boolean,\n enableTimePicker: Boolean,\n panelPreselection: Boolean,\n firstDayOfWeek: Number,\n year: Array as PropType<Array<number>>,\n month: Array as PropType<Array<number>>,\n time: Array as PropType<Array<string>>,\n onClick: Function,\n onCellClick: Function,\n onCellMouseEnter: Function,\n onCellMouseLeave: Function,\n onJumperClick: Function,\n onConfirmClick: Function,\n onPresetClick: Function,\n onYearChange: Function,\n onMonthChange: Function,\n onTimePickerChange: Function,\n },\n setup(props) {\n const COMPONENT_NAME = usePrefixClass('date-range-picker__panel');\n const { globalConfig } = useConfig('datePicker');\n\n const { format } = getDefaultFormat({\n mode: props.mode,\n format: props.format,\n enableTimePicker: props.enableTimePicker,\n });\n\n // 是否隐藏预选状态,只有 value 有值的时候需要隐藏\n const hidePreselection = !props.panelPreselection && props.value.length === 2;\n\n const disableDateOptions = computed(() =>\n useDisableDate({\n format,\n mode: props.mode,\n disableDate: props.disableDate,\n start:\n props.isFirstValueSelected && props.activeIndex === 1\n ? new Date(parseToDayjs(props.value[0], format, 'start').toDate().setHours(0, 0, 0))\n : undefined,\n end:\n props.isFirstValueSelected && props.activeIndex === 0\n ? new Date(parseToDayjs(props.value[1], format).toDate().setHours(23, 59, 59))\n : undefined,\n }),\n );\n\n const startTableData = computed(() =>\n useTableData({\n isRange: true,\n start: props.value[0] ? parseToDayjs(props.value[0] as string, format).toDate() : undefined,\n end: props.value[1] ? parseToDayjs(props.value[1] as string, format).toDate() : undefined,\n hoverStart:\n !hidePreselection && props.hoverValue[0]\n ? parseToDayjs(props.hoverValue[0] as string, format).toDate()\n : undefined,\n hoverEnd:\n !hidePreselection && props.hoverValue[1]\n ? parseToDayjs(props.hoverValue[1] as string, format).toDate()\n : undefined,\n year: props.year[0],\n month: props.month[0],\n mode: props.mode,\n firstDayOfWeek: props.firstDayOfWeek || globalConfig.value.firstDayOfWeek,\n ...disableDateOptions.value,\n }),\n );\n\n const endTableData = computed(() =>\n useTableData({\n isRange: true,\n start: props.value[0] ? parseToDayjs(props.value[0] as string, format).toDate() : undefined,\n end: props.value[1] ? parseToDayjs(props.value[1] as string, format).toDate() : undefined,\n hoverStart:\n !hidePreselection && props.hoverValue[0]\n ? parseToDayjs(props.hoverValue[0] as string, format).toDate()\n : undefined,\n hoverEnd:\n !hidePreselection && props.hoverValue[1]\n ? parseToDayjs(props.hoverValue[1] as string, format).toDate()\n : undefined,\n year: props.year[1],\n month: props.month[1],\n mode: props.mode,\n firstDayOfWeek: props.firstDayOfWeek || globalConfig.value.firstDayOfWeek,\n ...disableDateOptions.value,\n }),\n );\n\n const panelContentProps = computed(() => ({\n format,\n mode: props.mode,\n firstDayOfWeek: props.firstDayOfWeek || globalConfig.value.firstDayOfWeek,\n\n popupVisible: props.popupVisible,\n enableTimePicker: props.enableTimePicker,\n timePickerProps: props.timePickerProps,\n onMonthChange: props.onMonthChange,\n onYearChange: props.onYearChange,\n onJumperClick: props.onJumperClick,\n onCellClick: props.onCellClick,\n onCellMouseEnter: props.onCellMouseEnter,\n onCellMouseLeave: props.onCellMouseLeave,\n onTimePickerChange: props.onTimePickerChange,\n }));\n\n return () => (\n <div\n class={[\n COMPONENT_NAME.value,\n {\n [`${COMPONENT_NAME.value}--direction-row`]: ['left', 'right'].includes(props.presetsPlacement),\n },\n ]}\n onClick={(e) => props.onClick?.({ e })}\n >\n {['top', 'left'].includes(props.presetsPlacement) ? (\n <TExtraContent\n presets={props.presets}\n selectedValue={props.value[props.activeIndex]}\n enableTimePicker={props.enableTimePicker}\n onPresetClick={props.onPresetClick}\n onConfirmClick={props.onConfirmClick}\n presetsPlacement={props.presetsPlacement}\n />\n ) : null}\n <div class={`${COMPONENT_NAME.value}-content-wrapper`}>\n {!props.enableTimePicker ? (\n [\n <TPanelContent\n key=\"startPanel\"\n partial=\"start\"\n year={props.year[0]}\n month={props.month[0]}\n time={props.time[0]}\n value={props.value}\n tableData={startTableData.value}\n {...panelContentProps.value}\n />,\n <TPanelContent\n key=\"endPanel\"\n partial=\"end\"\n year={props.year[1]}\n month={props.month[1]}\n time={props.time[1]}\n value={props.value}\n tableData={endTableData.value}\n {...panelContentProps.value}\n />,\n ]\n ) : (\n <TPanelContent\n key=\"start\"\n partial={props.activeIndex ? 'end' : 'start'}\n year={props.activeIndex ? props.year[1] : props.year[0]}\n month={props.activeIndex ? props.month[1] : props.month[0]}\n time={props.activeIndex ? props.time[1] : props.time[0]}\n value={props.value}\n tableData={props.activeIndex ? endTableData.value : startTableData.value}\n {...panelContentProps.value}\n />\n )}\n </div>\n {['bottom', 'right'].includes(props.presetsPlacement) ? (\n <TExtraContent\n presets={props.presets}\n selectedValue={props.value[props.activeIndex]}\n enableTimePicker={props.enableTimePicker}\n onPresetClick={props.onPresetClick}\n onConfirmClick={props.onConfirmClick}\n presetsPlacement={props.presetsPlacement}\n />\n ) : null}\n </div>\n );\n },\n});\n"],"names":["defineComponent","name","props","hoverValue","Array","activeIndex","Number","isFirstValueSelected","Boolean","disableDate","Object","Function","mode","type","String","format","presetsPlacement","value","timePickerProps","presets","popupVisible","enableTimePicker","panelPreselection","firstDayOfWeek","year","month","time","onClick","onCellClick","onCellMouseEnter","onCellMouseLeave","onJumperClick","onConfirmClick","onPresetClick","onYearChange","onMonthChange","onTimePickerChange","setup","COMPONENT_NAME","usePrefixClass","_useConfig","useConfig","globalConfig","_getDefaultFormat","getDefaultFormat","hidePreselection","length","disableDateOptions","computed","useDisableDate","start","Date","parseToDayjs","toDate","setHours","end","startTableData","useTableData","_objectSpread","isRange","hoverStart","hoverEnd","endTableData","panelContentProps","_createVNode","_defineProperty","concat","includes","e","_props$onClick","call","TExtraContent","TPanelContent","_mergeProps"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"RangePanel.mjs","sources":["../../../src/date-picker/panel/RangePanel.tsx"],"sourcesContent":["import { defineComponent, PropType, computed } from 'vue';\nimport { useConfig, usePrefixClass } from '../../hooks/useConfig';\nimport TPanelContent from './PanelContent';\nimport TExtraContent from './ExtraContent';\nimport { TdDateRangePickerProps } from '../type';\nimport { getDefaultFormat, parseToDayjs } from '../../_common/js/date-picker/format';\nimport useTableData from '../hooks/useTableData';\nimport useDisableDate from '../hooks/useDisableDate';\n\nexport default defineComponent({\n name: 'TRangePanel',\n props: {\n hoverValue: Array as PropType<Array<string>>,\n activeIndex: Number,\n isFirstValueSelected: Boolean,\n disableDate: [Object, Array, Function] as PropType<TdDateRangePickerProps['disableDate']>,\n mode: {\n type: String as PropType<TdDateRangePickerProps['mode']>,\n default: 'date',\n },\n format: String as PropType<TdDateRangePickerProps['format']>,\n presetsPlacement: {\n type: String as PropType<TdDateRangePickerProps['presetsPlacement']>,\n default: 'bottom',\n },\n value: Array as PropType<Array<string>>,\n timePickerProps: Object as PropType<TdDateRangePickerProps['timePickerProps']>,\n presets: Object as PropType<TdDateRangePickerProps['presets']>,\n popupVisible: Boolean,\n enableTimePicker: Boolean,\n panelPreselection: Boolean,\n firstDayOfWeek: Number,\n year: Array as PropType<Array<number>>,\n month: Array as PropType<Array<number>>,\n time: Array as PropType<Array<string>>,\n cancelRangeSelectLimit: Boolean,\n onClick: Function,\n onCellClick: Function,\n onCellMouseEnter: Function,\n onCellMouseLeave: Function,\n onJumperClick: Function,\n onConfirmClick: Function,\n onPresetClick: Function,\n onYearChange: Function,\n onMonthChange: Function,\n onTimePickerChange: Function,\n },\n setup(props) {\n const COMPONENT_NAME = usePrefixClass('date-range-picker__panel');\n const { globalConfig } = useConfig('datePicker');\n\n const { format } = getDefaultFormat({\n mode: props.mode,\n format: props.format,\n enableTimePicker: props.enableTimePicker,\n });\n\n // 是否隐藏预选状态,只有 value 有值的时候需要隐藏\n const hidePreselection = !props.panelPreselection && props.value.length === 2;\n\n const disableDateOptions = computed(() =>\n useDisableDate({\n format,\n mode: props.mode,\n disableDate: props.disableDate,\n start:\n props.isFirstValueSelected && props.activeIndex === 1\n ? new Date(parseToDayjs(props.value[0], format, 'start').toDate().setHours(0, 0, 0))\n : undefined,\n end:\n props.isFirstValueSelected && props.activeIndex === 0\n ? new Date(parseToDayjs(props.value[1], format).toDate().setHours(23, 59, 59))\n : undefined,\n }),\n );\n\n const startTableData = computed(() =>\n useTableData({\n isRange: true,\n start: props.value[0] ? parseToDayjs(props.value[0] as string, format).toDate() : undefined,\n end: props.value[1] ? parseToDayjs(props.value[1] as string, format).toDate() : undefined,\n hoverStart:\n !hidePreselection && props.hoverValue[0]\n ? parseToDayjs(props.hoverValue[0] as string, format).toDate()\n : undefined,\n hoverEnd:\n !hidePreselection && props.hoverValue[1]\n ? parseToDayjs(props.hoverValue[1] as string, format).toDate()\n : undefined,\n year: props.year[0],\n month: props.month[0],\n mode: props.mode,\n firstDayOfWeek: props.firstDayOfWeek || globalConfig.value.firstDayOfWeek,\n ...disableDateOptions.value,\n cancelRangeSelectLimit: props.cancelRangeSelectLimit,\n }),\n );\n\n const endTableData = computed(() =>\n useTableData({\n isRange: true,\n start: props.value[0] ? parseToDayjs(props.value[0] as string, format).toDate() : undefined,\n end: props.value[1] ? parseToDayjs(props.value[1] as string, format).toDate() : undefined,\n hoverStart:\n !hidePreselection && props.hoverValue[0]\n ? parseToDayjs(props.hoverValue[0] as string, format).toDate()\n : undefined,\n hoverEnd:\n !hidePreselection && props.hoverValue[1]\n ? parseToDayjs(props.hoverValue[1] as string, format).toDate()\n : undefined,\n year: props.year[1],\n month: props.month[1],\n mode: props.mode,\n firstDayOfWeek: props.firstDayOfWeek || globalConfig.value.firstDayOfWeek,\n ...disableDateOptions.value,\n cancelRangeSelectLimit: props.cancelRangeSelectLimit,\n }),\n );\n\n const panelContentProps = computed(() => ({\n format,\n mode: props.mode,\n firstDayOfWeek: props.firstDayOfWeek || globalConfig.value.firstDayOfWeek,\n\n popupVisible: props.popupVisible,\n enableTimePicker: props.enableTimePicker,\n timePickerProps: props.timePickerProps,\n onMonthChange: props.onMonthChange,\n onYearChange: props.onYearChange,\n onJumperClick: props.onJumperClick,\n onCellClick: props.onCellClick,\n onCellMouseEnter: props.onCellMouseEnter,\n onCellMouseLeave: props.onCellMouseLeave,\n onTimePickerChange: props.onTimePickerChange,\n }));\n\n return () => (\n <div\n class={[\n COMPONENT_NAME.value,\n {\n [`${COMPONENT_NAME.value}--direction-row`]: ['left', 'right'].includes(props.presetsPlacement),\n },\n ]}\n onClick={(e) => props.onClick?.({ e })}\n >\n {['top', 'left'].includes(props.presetsPlacement) ? (\n <TExtraContent\n presets={props.presets}\n selectedValue={props.value[props.activeIndex]}\n enableTimePicker={props.enableTimePicker}\n onPresetClick={props.onPresetClick}\n onConfirmClick={props.onConfirmClick}\n presetsPlacement={props.presetsPlacement}\n />\n ) : null}\n <div class={`${COMPONENT_NAME.value}-content-wrapper`}>\n {!props.enableTimePicker ? (\n [\n <TPanelContent\n key=\"startPanel\"\n partial=\"start\"\n year={props.year[0]}\n month={props.month[0]}\n time={props.time[0]}\n value={props.value}\n tableData={startTableData.value}\n {...panelContentProps.value}\n />,\n <TPanelContent\n key=\"endPanel\"\n partial=\"end\"\n year={props.year[1]}\n month={props.month[1]}\n time={props.time[1]}\n value={props.value}\n tableData={endTableData.value}\n {...panelContentProps.value}\n />,\n ]\n ) : (\n <TPanelContent\n key=\"start\"\n partial={props.activeIndex ? 'end' : 'start'}\n year={props.activeIndex ? props.year[1] : props.year[0]}\n month={props.activeIndex ? props.month[1] : props.month[0]}\n time={props.activeIndex ? props.time[1] : props.time[0]}\n value={props.value}\n tableData={props.activeIndex ? endTableData.value : startTableData.value}\n {...panelContentProps.value}\n />\n )}\n </div>\n {['bottom', 'right'].includes(props.presetsPlacement) ? (\n <TExtraContent\n presets={props.presets}\n selectedValue={props.value[props.activeIndex]}\n enableTimePicker={props.enableTimePicker}\n onPresetClick={props.onPresetClick}\n onConfirmClick={props.onConfirmClick}\n presetsPlacement={props.presetsPlacement}\n />\n ) : null}\n </div>\n );\n },\n});\n"],"names":["defineComponent","name","props","hoverValue","Array","activeIndex","Number","isFirstValueSelected","Boolean","disableDate","Object","Function","mode","type","String","format","presetsPlacement","value","timePickerProps","presets","popupVisible","enableTimePicker","panelPreselection","firstDayOfWeek","year","month","time","cancelRangeSelectLimit","onClick","onCellClick","onCellMouseEnter","onCellMouseLeave","onJumperClick","onConfirmClick","onPresetClick","onYearChange","onMonthChange","onTimePickerChange","setup","COMPONENT_NAME","usePrefixClass","_useConfig","useConfig","globalConfig","_getDefaultFormat","getDefaultFormat","hidePreselection","length","disableDateOptions","computed","useDisableDate","start","Date","parseToDayjs","toDate","setHours","end","startTableData","useTableData","_objectSpread","isRange","hoverStart","hoverEnd","endTableData","panelContentProps","_createVNode","_defineProperty","concat","includes","e","_props$onClick","call","TExtraContent","TPanelContent","_mergeProps"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AASA,kBAAeA,eAAgB,CAAA;AAC7BC,EAAAA,IAAM,EAAA,aAAA;AACNC,EAAAA,KAAO,EAAA;AACLC,IAAAA,UAAY,EAAAC,KAAA;AACZC,IAAAA,WAAa,EAAAC,MAAA;AACbC,IAAAA,oBAAsB,EAAAC,OAAA;AACtBC,IAAAA,WAAa,EAAA,CAACC,MAAQ,EAAAN,KAAA,EAAOO,QAAQ,CAAA;AACrCC,IAAAA,IAAM,EAAA;AACJC,MAAAA,IAAM,EAAAC,MAAA;MACN,SAAS,EAAA,MAAA;KACX;AACAC,IAAAA,MAAQ,EAAAD,MAAA;AACRE,IAAAA,gBAAkB,EAAA;AAChBH,MAAAA,IAAM,EAAAC,MAAA;MACN,SAAS,EAAA,QAAA;KACX;AACAG,IAAAA,KAAO,EAAAb,KAAA;AACPc,IAAAA,eAAiB,EAAAR,MAAA;AACjBS,IAAAA,OAAS,EAAAT,MAAA;AACTU,IAAAA,YAAc,EAAAZ,OAAA;AACda,IAAAA,gBAAkB,EAAAb,OAAA;AAClBc,IAAAA,iBAAmB,EAAAd,OAAA;AACnBe,IAAAA,cAAgB,EAAAjB,MAAA;AAChBkB,IAAAA,IAAM,EAAApB,KAAA;AACNqB,IAAAA,KAAO,EAAArB,KAAA;AACPsB,IAAAA,IAAM,EAAAtB,KAAA;AACNuB,IAAAA,sBAAwB,EAAAnB,OAAA;AACxBoB,IAAAA,OAAS,EAAAjB,QAAA;AACTkB,IAAAA,WAAa,EAAAlB,QAAA;AACbmB,IAAAA,gBAAkB,EAAAnB,QAAA;AAClBoB,IAAAA,gBAAkB,EAAApB,QAAA;AAClBqB,IAAAA,aAAe,EAAArB,QAAA;AACfsB,IAAAA,cAAgB,EAAAtB,QAAA;AAChBuB,IAAAA,aAAe,EAAAvB,QAAA;AACfwB,IAAAA,YAAc,EAAAxB,QAAA;AACdyB,IAAAA,aAAe,EAAAzB,QAAA;AACf0B,IAAAA,kBAAoB,EAAA1B,QAAAA;GACtB;EACA2B,qBAAMpC,CAAAA,KAAO,EAAA;AACL,IAAA,IAAAqC,cAAA,GAAiBC,eAAe,0BAA0B,CAAA,CAAA;AAChE,IAAA,IAAAC,UAAA,GAAyBC,SAAA,CAAU,YAAY,CAAA;MAAvCC,YAAA,GAAAF,UAAA,CAAAE,YAAA,CAAA;IAEF,IAAAC,iBAAA,GAAaC,gBAAiB,CAAA;QAClCjC,MAAMV,KAAM,CAAAU,IAAA;QACZG,QAAQb,KAAM,CAAAa,MAAA;QACdM,kBAAkBnB,KAAM,CAAAmB,gBAAAA;AAC1B,OAAC,CAAA;MAJON,MAAO,GAAA6B,iBAAA,CAAP7B,MAAO,CAAA;AAOf,IAAA,IAAM+B,mBAAmB,CAAC5C,KAAA,CAAMoB,iBAAqB,IAAApB,KAAA,CAAMe,MAAM8B,MAAW,KAAA,CAAA,CAAA;IAE5E,IAAMC,kBAAqB,GAAAC,QAAA,CAAS,YAAA;AAAA,MAAA,OAClCC,cAAe,CAAA;AACbnC,QAAAA,MAAA,EAAAA,MAAA;QACAH,MAAMV,KAAM,CAAAU,IAAA;QACZH,aAAaP,KAAM,CAAAO,WAAA;AACnB0C,QAAAA,KAAA,EACEjD,MAAMK,oBAAwB,IAAAL,KAAA,CAAMG,gBAAgB,CAChD,GAAA,IAAI+C,IAAK,CAAAC,YAAA,CAAanD,KAAM,CAAAe,KAAA,CAAM,IAAIF,MAAQ,EAAA,OAAO,EAAEuC,MAAO,EAAA,CAAEC,SAAS,CAAG,EAAA,CAAA,EAAG,CAAC,CAAC,CACjF,GAAA,KAAA,CAAA;AACNC,QAAAA,GAAA,EACEtD,MAAMK,oBAAwB,IAAAL,KAAA,CAAMG,gBAAgB,CAChD,GAAA,IAAI+C,KAAKC,YAAa,CAAAnD,KAAA,CAAMe,MAAM,CAAI,CAAA,EAAAF,MAAM,EAAEuC,MAAO,EAAA,CAAEC,SAAS,EAAI,EAAA,EAAA,EAAI,EAAE,CAAC,CAC3E,GAAA,KAAA,CAAA;AACR,OAAC,CAAA,CAAA;AAAA,KACH,CAAA,CAAA;IAEA,IAAME,cAAiB,GAAAR,QAAA,CAAS,YAAA;AAAA,MAAA,OAC9BS,YAAa,CAAAC,aAAA,CAAAA,aAAA,CAAA;AACXC,QAAAA,OAAS,EAAA,IAAA;QACTT,KAAA,EAAOjD,KAAM,CAAAe,KAAA,CAAM,CAAK,CAAA,GAAAoC,YAAA,CAAanD,KAAM,CAAAe,KAAA,CAAM,CAAc,CAAA,EAAAF,MAAM,CAAE,CAAAuC,MAAA,EAAW,GAAA,KAAA,CAAA;QAClFE,GAAA,EAAKtD,KAAM,CAAAe,KAAA,CAAM,CAAK,CAAA,GAAAoC,YAAA,CAAanD,KAAM,CAAAe,KAAA,CAAM,CAAc,CAAA,EAAAF,MAAM,CAAE,CAAAuC,MAAA,EAAW,GAAA,KAAA,CAAA;AAChFO,QAAAA,UACE,EAAA,CAACf,gBAAoB,IAAA5C,KAAA,CAAMC,UAAW,CAAA,CAAA,CAAA,GAClCkD,YAAa,CAAAnD,KAAA,CAAMC,UAAW,CAAA,CAAA,CAAA,EAAcY,MAAM,CAAA,CAAEuC,QACpD,GAAA,KAAA,CAAA;AACNQ,QAAAA,QACE,EAAA,CAAChB,gBAAoB,IAAA5C,KAAA,CAAMC,UAAW,CAAA,CAAA,CAAA,GAClCkD,YAAa,CAAAnD,KAAA,CAAMC,UAAW,CAAA,CAAA,CAAA,EAAcY,MAAM,CAAA,CAAEuC,QACpD,GAAA,KAAA,CAAA;AACN9B,QAAAA,IAAA,EAAMtB,MAAMsB,IAAK,CAAA,CAAA,CAAA;AACjBC,QAAAA,KAAA,EAAOvB,MAAMuB,KAAM,CAAA,CAAA,CAAA;QACnBb,MAAMV,KAAM,CAAAU,IAAA;QACZW,cAAgB,EAAArB,KAAA,CAAMqB,cAAkB,IAAAoB,YAAA,CAAa1B,KAAM,CAAAM,cAAAA;OACxDyB,EAAAA,kBAAmB,CAAA/B,KAAA,CAAA,EAAA,EAAA,EAAA;QACtBU,wBAAwBzB,KAAM,CAAAyB,sBAAAA;AAAA,OAAA,CAC/B,CAAA,CAAA;AAAA,KACH,CAAA,CAAA;IAEA,IAAMoC,YAAe,GAAAd,QAAA,CAAS,YAAA;AAAA,MAAA,OAC5BS,YAAa,CAAAC,aAAA,CAAAA,aAAA,CAAA;AACXC,QAAAA,OAAS,EAAA,IAAA;QACTT,KAAA,EAAOjD,KAAM,CAAAe,KAAA,CAAM,CAAK,CAAA,GAAAoC,YAAA,CAAanD,KAAM,CAAAe,KAAA,CAAM,CAAc,CAAA,EAAAF,MAAM,CAAE,CAAAuC,MAAA,EAAW,GAAA,KAAA,CAAA;QAClFE,GAAA,EAAKtD,KAAM,CAAAe,KAAA,CAAM,CAAK,CAAA,GAAAoC,YAAA,CAAanD,KAAM,CAAAe,KAAA,CAAM,CAAc,CAAA,EAAAF,MAAM,CAAE,CAAAuC,MAAA,EAAW,GAAA,KAAA,CAAA;AAChFO,QAAAA,UACE,EAAA,CAACf,gBAAoB,IAAA5C,KAAA,CAAMC,UAAW,CAAA,CAAA,CAAA,GAClCkD,YAAa,CAAAnD,KAAA,CAAMC,UAAW,CAAA,CAAA,CAAA,EAAcY,MAAM,CAAA,CAAEuC,QACpD,GAAA,KAAA,CAAA;AACNQ,QAAAA,QACE,EAAA,CAAChB,gBAAoB,IAAA5C,KAAA,CAAMC,UAAW,CAAA,CAAA,CAAA,GAClCkD,YAAa,CAAAnD,KAAA,CAAMC,UAAW,CAAA,CAAA,CAAA,EAAcY,MAAM,CAAA,CAAEuC,QACpD,GAAA,KAAA,CAAA;AACN9B,QAAAA,IAAA,EAAMtB,MAAMsB,IAAK,CAAA,CAAA,CAAA;AACjBC,QAAAA,KAAA,EAAOvB,MAAMuB,KAAM,CAAA,CAAA,CAAA;QACnBb,MAAMV,KAAM,CAAAU,IAAA;QACZW,cAAgB,EAAArB,KAAA,CAAMqB,cAAkB,IAAAoB,YAAA,CAAa1B,KAAM,CAAAM,cAAAA;OACxDyB,EAAAA,kBAAmB,CAAA/B,KAAA,CAAA,EAAA,EAAA,EAAA;QACtBU,wBAAwBzB,KAAM,CAAAyB,sBAAAA;AAAA,OAAA,CAC/B,CAAA,CAAA;AAAA,KACH,CAAA,CAAA;IAEM,IAAAqC,iBAAA,GAAoBf,SAAS,YAAA;MAAA,OAAO;AACxClC,QAAAA,MAAA,EAAAA,MAAA;QACAH,MAAMV,KAAM,CAAAU,IAAA;QACZW,cAAgB,EAAArB,KAAA,CAAMqB,cAAkB,IAAAoB,YAAA,CAAa1B,KAAM,CAAAM,cAAA;QAE3DH,cAAclB,KAAM,CAAAkB,YAAA;QACpBC,kBAAkBnB,KAAM,CAAAmB,gBAAA;QACxBH,iBAAiBhB,KAAM,CAAAgB,eAAA;QACvBkB,eAAelC,KAAM,CAAAkC,aAAA;QACrBD,cAAcjC,KAAM,CAAAiC,YAAA;QACpBH,eAAe9B,KAAM,CAAA8B,aAAA;QACrBH,aAAa3B,KAAM,CAAA2B,WAAA;QACnBC,kBAAkB5B,KAAM,CAAA4B,gBAAA;QACxBC,kBAAkB7B,KAAM,CAAA6B,gBAAA;QACxBM,oBAAoBnC,KAAM,CAAAmC,kBAAAA;OAC1B,CAAA;AAAA,KAAA,CAAA,CAAA;IAEK,OAAA,YAAA;AAAA,MAAA,OAAA4B,WAAA,CAAA,KAAA,EAAA;QAAA,OAEI,EAAA,CACL1B,cAAe,CAAAtB,KAAA,EAAAiD,eAAA,CAAAC,EAAAA,EAAAA,EAAAA,CAAAA,MAAA,CAET5B,cAAA,CAAetB,KAAyB,sBAAA,CAAC,QAAQ,OAAO,CAAA,CAAEmD,QAAS,CAAAlE,KAAA,CAAMc,gBAAgB,CAAA,CAEjG,CAAA;QAAA,SACS,EAAA,SAAAY,QAACyC,CAAA,EAAA;AAAA,UAAA,IAAAC,cAAA,CAAA;AAAA,UAAA,OAAA,CAAAA,cAAA,GAAMpE,MAAM0B,OAAU,MAAA,IAAA,IAAA0C,cAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAhBA,cAAA,CAAAC,IAAA,CAAArE,OAAgB;AAAEmE,YAAAA,GAAAA,CAAAA;AAAE,WAAC,CAAA,CAAA;AAAA,SAAA;AAAA,OAAA,EAAA,CAEpC,CAAC,KAAA,EAAO,MAAM,CAAA,CAAED,QAAS,CAAAlE,KAAA,CAAMc,gBAAgB,CAAA,GAAAiD,WAAA,CAAAO,aAAA,EAAA;QAAA,SAEnCtE,EAAAA,KAAA,CAAMiB;yBACAjB,KAAA,CAAMe,KAAM,CAAAf,KAAA,CAAMG,WACjC,CAAA;QAAA,kBAAkBH,EAAAA,KAAM,CAAAmB,gBAAA;QAAA,eACTnB,EAAAA,KAAA,CAAMgC,aACrB;QAAA,gBAAgBhC,EAAAA,KAAM,CAAA+B,cAAA;AAAA,QAAA,kBAAA,EACJ/B,KAAA,CAAMc,gBAAAA;OAExB,EAAA,IAAA,CAAA,GAAA,IAAA,EAAAiD,WAAA,CAAA,KAAA,EAAA;AAAA,QAAA,OAAA,EAAA,EAAA,CAAAE,MAAA,CACW5B,eAAetB,KAC3B,EAAA,kBAAA,CAAA;OAAA,EAAA,CAAA,CAACf,MAAMmB,gBACN,GAAA,CAAA4C,WAAA,CAAAQ,aAAA,EAAAC,UAAA,CAAA;AAAA,QAAA,KAAA,EAEQ,YACJ;AAAA,QAAA,SAAA,EAAQ;gBACFxE,KAAA,CAAMsB,IAAK,CAAA,CAAA,CAAA;AAAA,QAAA,OAAA,EACVtB,KAAA,CAAMuB,MAAM,CACnB,CAAA;AAAA,QAAA,MAAA,EAAMvB,KAAM,CAAAwB,IAAA,CAAK,CACjB,CAAA;QAAA,OAAOxB,EAAAA,KAAM,CAAAe,KAAA;AAAA,QAAA,WAAA,EACFwC,cAAA,CAAexC,KAAAA;OACtB+C,EAAAA,iBAAA,CAAkB/C,KACxB,CAAA,EAAA,IAAA,CAAA,EAAAgD,WAAA,CAAAQ,aAAA,EAAAC,UAAA,CAAA;AAAA,QAAA,KAAA,EAEM,UACJ;AAAA,QAAA,SAAA,EAAQ;gBACFxE,KAAA,CAAMsB,IAAK,CAAA,CAAA,CAAA;AAAA,QAAA,OAAA,EACVtB,KAAA,CAAMuB,MAAM,CACnB,CAAA;AAAA,QAAA,MAAA,EAAMvB,KAAM,CAAAwB,IAAA,CAAK,CACjB,CAAA;QAAA,OAAOxB,EAAAA,KAAM,CAAAe,KAAA;AAAA,QAAA,WAAA,EACF8C,YAAA,CAAa9C,KAAAA;OACpB+C,EAAAA,iBAAA,CAAkB/C,KACxB,CAAA,EAAA,IAAA,CAAA,CACF,GAAAgD,WAAA,CAAAQ,aAAA,EAAAC,UAAA,CAAA;AAAA,QAAA,KAAA,EAGM;mBACKxE,KAAA,CAAMG,WAAc,GAAA,KAAA,GAAQ,OACrC;AAAA,QAAA,MAAA,EAAMH,MAAMG,WAAc,GAAAH,KAAA,CAAMsB,IAAK,CAAA,CAAA,CAAA,GAAKtB,KAAM,CAAAsB,IAAA,CAAK;iBAC9CtB,KAAA,CAAMG,WAAc,GAAAH,KAAA,CAAMuB,KAAM,CAAA,CAAA,CAAA,GAAKvB,MAAMuB,KAAM,CAAA,CAAA,CAAA;AAAA,QAAA,MAAA,EAClDvB,KAAM,CAAAG,WAAA,GAAcH,MAAMwB,IAAK,CAAA,CAAA,CAAA,GAAKxB,KAAM,CAAAwB,IAAA,CAAK,CACrD,CAAA;QAAA,OAAOxB,EAAAA,MAAMe,KACb;QAAA,WAAWf,EAAAA,KAAM,CAAAG,WAAA,GAAc0D,YAAa,CAAA9C,KAAA,GAAQwC,eAAexC,KAAAA;OAC/D+C,EAAAA,iBAAA,CAAkB/C,KACxB,CAAA,EAAA,IAAA,CAAA,IAGH,CAAC,QAAA,EAAU,OAAO,CAAA,CAAEmD,QAAS,CAAAlE,KAAA,CAAMc,gBAAgB,CAAA,GAAAiD,WAAA,CAAAO,aAAA,EAAA;QAAA,SAEvCtE,EAAAA,KAAA,CAAMiB;yBACAjB,KAAA,CAAMe,KAAM,CAAAf,KAAA,CAAMG,WACjC,CAAA;QAAA,kBAAkBH,EAAAA,KAAM,CAAAmB,gBAAA;QAAA,eACTnB,EAAAA,KAAA,CAAMgC,aACrB;QAAA,gBAAgBhC,EAAAA,KAAM,CAAA+B,cAAA;AAAA,QAAA,kBAAA,EACJ/B,KAAA,CAAMc,gBAAAA;iBAExB,IAAA,CAAA,CAAA,CAAA;KAjEL,CAAA;AAoEL,GAAA;AACF,CAAC,CAAA;;;;"}
|
|
@@ -9,7 +9,7 @@ import { defineComponent, computed, createVNode } from 'vue';
|
|
|
9
9
|
import { usePrefixClass } from '../../hooks/useConfig.mjs';
|
|
10
10
|
import TPanelContent from './PanelContent.mjs';
|
|
11
11
|
import TExtraContent from './ExtraContent.mjs';
|
|
12
|
-
import { g as getDefaultFormat, p as parseToDayjs } from '../../_chunks/dep-
|
|
12
|
+
import { g as getDefaultFormat, p as parseToDayjs } from '../../_chunks/dep-be3e9bff.mjs';
|
|
13
13
|
import useTableData from '../hooks/useTableData.mjs';
|
|
14
14
|
import useDisableDate from '../hooks/useDisableDate.mjs';
|
|
15
15
|
import { useConfig } from '../../config-provider/useConfig.mjs';
|
package/es/date-picker/type.d.ts
CHANGED
|
@@ -125,7 +125,7 @@ var useVirtualScroll = function useVirtualScroll(container, params) {
|
|
|
125
125
|
};
|
|
126
126
|
useResizeObserver(isVirtualScroll.value ? container : void 0, refreshVirtualScroll);
|
|
127
127
|
watch(function () {
|
|
128
|
-
return [[].concat(_toConsumableArray(params.value.data), [tScroll, isVirtualScroll, container.value])];
|
|
128
|
+
return [[].concat(_toConsumableArray(params.value.data), [tScroll.value, isVirtualScroll.value, container.value])];
|
|
129
129
|
}, function () {
|
|
130
130
|
if (!isVirtualScroll.value) return;
|
|
131
131
|
var data = params.value.data;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useVirtualScrollNew.mjs","sources":["../../src/hooks/useVirtualScrollNew.ts"],"sourcesContent":["/**\n * 基于原作者(@louiszhai)的思路二次开发,为保证其他组件暂不受影响,单独开一个文件\n * 新增支持以下 3 个特性\n * 1. 支持不同表格高度\n * 2. 支持滚动到特定元素,方便 Select 等组件展开时直接定位到选中元素\n * 3. 支持数据变化不重置,方便支持树形结构虚拟滚动\n */\nimport { ref, computed, watch, Ref } from 'vue';\nimport { TScroll } from '../common';\nimport useResizeObserver from './useResizeObserver';\n\nexport type UseVirtualScrollParams = Ref<{\n /** 列数据 */\n data: { [key: string]: any }[];\n scroll: TScroll;\n}>;\n\nexport interface ScrollToElementParams {\n /** 跳转元素下标 */\n index: number;\n /** 跳转元素距离顶部的距离 */\n top?: number;\n /** 单个元素高度非固定场景下,即 isFixedRowHeight = false。延迟设置元素位置,一般用于依赖不同高度异步渲染等场景,单位:毫秒 */\n time?: number;\n behavior?: 'auto' | 'smooth';\n}\n\nconst useVirtualScroll = (container: Ref<HTMLElement>, params: UseVirtualScrollParams) => {\n /** 注意测试:数据长度为空;数据长度小于表格高度等情况。即期望只有数据量达到一定程度才允许开启虚拟滚动 */\n const visibleData = ref<any[]>([]);\n // 用于显示表格列\n const translateY = ref((params.value.data?.length || 0) * (params.value.scroll?.rowHeight || 50));\n // 滚动高度,用于显示滚动条\n const scrollHeight = ref(0);\n const trScrollTopHeightList = ref<number[]>([]);\n // 已经通过节点渲染计算出来的各自行高\n const trHeightList = ref<number[]>([]);\n const containerHeight = ref(0);\n const containerWidth = ref(0);\n const startAndEndIndex = ref<[number, number]>([0, 15]);\n\n // 设置初始值\n const tScroll = computed(() => {\n const { scroll } = params.value;\n if (!scroll) return {};\n return {\n bufferSize: scroll.bufferSize || 10,\n isFixedRowHeight: scroll.isFixedRowHeight ?? false,\n rowHeight: scroll.rowHeight || 47,\n threshold: scroll.threshold || 100,\n type: scroll.type,\n };\n });\n\n // 当前场景是否满足开启虚拟滚动的条件\n const isVirtualScroll = computed(() => {\n const { data } = params.value;\n return tScroll.value.type === 'virtual' && tScroll.value.threshold < data.length;\n });\n\n const getTrScrollTopHeightList = (trHeightList: number[], containerHeight: number) => {\n const list: number[] = [];\n const { data } = params.value;\n // 当前行滚动高度 = 上一行滚动高度 + 当前行高度 + 容器高度\n for (let i = 0, len = data.length; i < len; i++) {\n list[i] = (list[i - 1] || containerHeight) + (trHeightList[i] || tScroll.value.rowHeight);\n }\n return list;\n };\n\n const tripleBufferSize = computed(() => tScroll.value.bufferSize * 3);\n\n const updateVisibleData = (trScrollTopHeightList: number[], scrollTop: number) => {\n let currentIndex = -1;\n // 获取当前滚动到哪一个元素(大数据场景不建议使用 forEach 一类函数迭代)\n for (let i = 0, len = trScrollTopHeightList.length; i < len; i++) {\n if (trScrollTopHeightList[i] > scrollTop) {\n currentIndex = i;\n break;\n }\n }\n if (currentIndex < 0) return;\n const startIndex = Math.min(currentIndex, trScrollTopHeightList.length - tripleBufferSize.value);\n const endIndex = startIndex + tripleBufferSize.value;\n if (startAndEndIndex.value.join() !== [startIndex, endIndex].join() && startIndex >= 0) {\n visibleData.value = params.value.data.slice(startIndex, endIndex);\n const lastScrollTop = trScrollTopHeightList[startIndex - 1];\n const top = lastScrollTop > 0 ? lastScrollTop - containerHeight.value : 0;\n translateY.value = top;\n startAndEndIndex.value = [startIndex, endIndex];\n }\n };\n\n // 固定高度场景,不需要通过行渲染获取高度(仅非固定高度场景需要)\n const handleRowMounted = (rowData: any) => {\n if (!isVirtualScroll.value || !rowData || tScroll.value.isFixedRowHeight || !container.value) return;\n const trHeight = rowData.ref.value?.getBoundingClientRect().height;\n const rowIndex = rowData.data.VIRTUAL_SCROLL_INDEX;\n const newTrHeightList = trHeightList.value;\n if (newTrHeightList[rowIndex] !== trHeight) {\n newTrHeightList[rowIndex] = trHeight;\n const scrollTopHeightList = getTrScrollTopHeightList(newTrHeightList, containerHeight.value);\n trScrollTopHeightList.value = scrollTopHeightList;\n\n const lastIndex = scrollTopHeightList.length - 1;\n scrollHeight.value = scrollTopHeightList[lastIndex] - containerHeight.value;\n updateVisibleData(scrollTopHeightList, container.value.scrollTop);\n }\n };\n\n const handleScroll = () => {\n if (!isVirtualScroll.value) return;\n updateVisibleData(trScrollTopHeightList.value, container.value.scrollTop);\n };\n\n const refreshVirtualScroll = ([{ contentRect }]: [ResizeObserverEntry]) => {\n // 如果宽度发生变化,重置滚动位置(高度发生变化时,会触发 container 变化,下方的 watch 会计算)\n const maxScrollbarWidth = 16;\n if (Math.abs(contentRect.width - containerWidth.value) > maxScrollbarWidth) {\n container.value.scrollTop = 0;\n translateY.value = 0;\n }\n containerWidth.value = contentRect.width;\n containerHeight.value = contentRect.height;\n };\n\n const addIndexToData = (data: any[]) => {\n data.forEach((item, index) => {\n // eslint-disable-next-line\n item['VIRTUAL_SCROLL_INDEX'] = index;\n });\n };\n\n const updateScrollTop = ({ index, top = 0, behavior }: ScrollToElementParams) => {\n const scrollTop = trScrollTopHeightList.value[index] - containerHeight.value - top;\n container.value.scrollTo({\n top: scrollTop,\n behavior: behavior || 'auto',\n });\n };\n\n /**\n * 滚动到指定元素(对外暴露的方法,谨慎修改)\n */\n const scrollToElement = (p: ScrollToElementParams) => {\n updateScrollTop(p);\n // 不同行高的表格需要异步计算\n if (!tScroll.value.isFixedRowHeight) {\n const duration = p.time ?? 60;\n const timer = setTimeout(() => {\n updateScrollTop(p);\n clearTimeout(timer);\n }, duration);\n }\n };\n\n useResizeObserver(isVirtualScroll.value ? container : undefined, refreshVirtualScroll);\n\n // 固定高度场景,可直接通过数据长度计算出最大滚动高度\n watch(\n () => [[...params.value.data, tScroll, isVirtualScroll, container.value]],\n () => {\n if (!isVirtualScroll.value) return;\n const { data } = params.value;\n addIndexToData(data);\n const startIndex = startAndEndIndex.value[0];\n visibleData.value = data.slice(startIndex, startIndex + tripleBufferSize.value);\n\n // get container dom after one tick\n const timer = setTimeout(() => {\n if (container.value) {\n containerHeight.value = container.value.getBoundingClientRect().height;\n const scrollTopHeightList = getTrScrollTopHeightList(trHeightList.value || [], containerHeight.value);\n trScrollTopHeightList.value = scrollTopHeightList;\n }\n clearTimeout(timer);\n }, 0);\n },\n { immediate: true },\n );\n\n return {\n visibleData,\n translateY,\n scrollHeight,\n isVirtualScroll,\n handleScroll,\n handleRowMounted,\n scrollToElement,\n };\n};\n\nexport type VirtualScrollConfig = ReturnType<typeof useVirtualScroll>;\n\nexport default useVirtualScroll;\n"],"names":["useVirtualScroll","container","params","_params$value$data","_params$value$scroll","visibleData","ref","translateY","value","data","length","scroll","rowHeight","scrollHeight","trScrollTopHeightList","trHeightList","containerHeight","containerWidth","startAndEndIndex","tScroll","computed","_scroll$isFixedRowHei","bufferSize","isFixedRowHeight","threshold","type","isVirtualScroll","getTrScrollTopHeightList","list","i","len","tripleBufferSize","updateVisibleData","scrollTop","currentIndex","startIndex","Math","min","endIndex","join","slice","lastScrollTop","top","handleRowMounted","rowData","_rowData$ref$value","trHeight","getBoundingClientRect","height","rowIndex","VIRTUAL_SCROLL_INDEX","newTrHeightList","scrollTopHeightList","lastIndex","handleScroll","refreshVirtualScroll","_ref2","_slicedToArray","_ref","contentRect","maxScrollbarWidth","abs","width","addIndexToData","forEach","item","index","updateScrollTop","_ref3$top","behavior","scrollTo","scrollToElement","p","_p$time","duration","time","timer","setTimeout","clearTimeout","useResizeObserver","watch","concat","_toConsumableArray","immediate"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"useVirtualScrollNew.mjs","sources":["../../src/hooks/useVirtualScrollNew.ts"],"sourcesContent":["/**\n * 基于原作者(@louiszhai)的思路二次开发,为保证其他组件暂不受影响,单独开一个文件\n * 新增支持以下 3 个特性\n * 1. 支持不同表格高度\n * 2. 支持滚动到特定元素,方便 Select 等组件展开时直接定位到选中元素\n * 3. 支持数据变化不重置,方便支持树形结构虚拟滚动\n */\nimport { ref, computed, watch, Ref } from 'vue';\nimport { TScroll } from '../common';\nimport useResizeObserver from './useResizeObserver';\n\nexport type UseVirtualScrollParams = Ref<{\n /** 列数据 */\n data: { [key: string]: any }[];\n scroll: TScroll;\n}>;\n\nexport interface ScrollToElementParams {\n /** 跳转元素下标 */\n index: number;\n /** 跳转元素距离顶部的距离 */\n top?: number;\n /** 单个元素高度非固定场景下,即 isFixedRowHeight = false。延迟设置元素位置,一般用于依赖不同高度异步渲染等场景,单位:毫秒 */\n time?: number;\n behavior?: 'auto' | 'smooth';\n}\n\nconst useVirtualScroll = (container: Ref<HTMLElement>, params: UseVirtualScrollParams) => {\n /** 注意测试:数据长度为空;数据长度小于表格高度等情况。即期望只有数据量达到一定程度才允许开启虚拟滚动 */\n const visibleData = ref<any[]>([]);\n // 用于显示表格列\n const translateY = ref((params.value.data?.length || 0) * (params.value.scroll?.rowHeight || 50));\n // 滚动高度,用于显示滚动条\n const scrollHeight = ref(0);\n const trScrollTopHeightList = ref<number[]>([]);\n // 已经通过节点渲染计算出来的各自行高\n const trHeightList = ref<number[]>([]);\n const containerHeight = ref(0);\n const containerWidth = ref(0);\n const startAndEndIndex = ref<[number, number]>([0, 15]);\n\n // 设置初始值\n const tScroll = computed(() => {\n const { scroll } = params.value;\n if (!scroll) return {};\n return {\n bufferSize: scroll.bufferSize || 10,\n isFixedRowHeight: scroll.isFixedRowHeight ?? false,\n rowHeight: scroll.rowHeight || 47,\n threshold: scroll.threshold || 100,\n type: scroll.type,\n };\n });\n\n // 当前场景是否满足开启虚拟滚动的条件\n const isVirtualScroll = computed(() => {\n const { data } = params.value;\n return tScroll.value.type === 'virtual' && tScroll.value.threshold < data.length;\n });\n\n const getTrScrollTopHeightList = (trHeightList: number[], containerHeight: number) => {\n const list: number[] = [];\n const { data } = params.value;\n // 当前行滚动高度 = 上一行滚动高度 + 当前行高度 + 容器高度\n for (let i = 0, len = data.length; i < len; i++) {\n list[i] = (list[i - 1] || containerHeight) + (trHeightList[i] || tScroll.value.rowHeight);\n }\n return list;\n };\n\n const tripleBufferSize = computed(() => tScroll.value.bufferSize * 3);\n\n const updateVisibleData = (trScrollTopHeightList: number[], scrollTop: number) => {\n let currentIndex = -1;\n // 获取当前滚动到哪一个元素(大数据场景不建议使用 forEach 一类函数迭代)\n for (let i = 0, len = trScrollTopHeightList.length; i < len; i++) {\n if (trScrollTopHeightList[i] > scrollTop) {\n currentIndex = i;\n break;\n }\n }\n if (currentIndex < 0) return;\n const startIndex = Math.min(currentIndex, trScrollTopHeightList.length - tripleBufferSize.value);\n const endIndex = startIndex + tripleBufferSize.value;\n if (startAndEndIndex.value.join() !== [startIndex, endIndex].join() && startIndex >= 0) {\n visibleData.value = params.value.data.slice(startIndex, endIndex);\n const lastScrollTop = trScrollTopHeightList[startIndex - 1];\n const top = lastScrollTop > 0 ? lastScrollTop - containerHeight.value : 0;\n translateY.value = top;\n startAndEndIndex.value = [startIndex, endIndex];\n }\n };\n\n // 固定高度场景,不需要通过行渲染获取高度(仅非固定高度场景需要)\n const handleRowMounted = (rowData: any) => {\n if (!isVirtualScroll.value || !rowData || tScroll.value.isFixedRowHeight || !container.value) return;\n const trHeight = rowData.ref.value?.getBoundingClientRect().height;\n const rowIndex = rowData.data.VIRTUAL_SCROLL_INDEX;\n const newTrHeightList = trHeightList.value;\n if (newTrHeightList[rowIndex] !== trHeight) {\n newTrHeightList[rowIndex] = trHeight;\n const scrollTopHeightList = getTrScrollTopHeightList(newTrHeightList, containerHeight.value);\n trScrollTopHeightList.value = scrollTopHeightList;\n\n const lastIndex = scrollTopHeightList.length - 1;\n scrollHeight.value = scrollTopHeightList[lastIndex] - containerHeight.value;\n updateVisibleData(scrollTopHeightList, container.value.scrollTop);\n }\n };\n\n const handleScroll = () => {\n if (!isVirtualScroll.value) return;\n updateVisibleData(trScrollTopHeightList.value, container.value.scrollTop);\n };\n\n const refreshVirtualScroll = ([{ contentRect }]: [ResizeObserverEntry]) => {\n // 如果宽度发生变化,重置滚动位置(高度发生变化时,会触发 container 变化,下方的 watch 会计算)\n const maxScrollbarWidth = 16;\n if (Math.abs(contentRect.width - containerWidth.value) > maxScrollbarWidth) {\n container.value.scrollTop = 0;\n translateY.value = 0;\n }\n containerWidth.value = contentRect.width;\n containerHeight.value = contentRect.height;\n };\n\n const addIndexToData = (data: any[]) => {\n data.forEach((item, index) => {\n // eslint-disable-next-line\n item['VIRTUAL_SCROLL_INDEX'] = index;\n });\n };\n\n const updateScrollTop = ({ index, top = 0, behavior }: ScrollToElementParams) => {\n const scrollTop = trScrollTopHeightList.value[index] - containerHeight.value - top;\n container.value.scrollTo({\n top: scrollTop,\n behavior: behavior || 'auto',\n });\n };\n\n /**\n * 滚动到指定元素(对外暴露的方法,谨慎修改)\n */\n const scrollToElement = (p: ScrollToElementParams) => {\n updateScrollTop(p);\n // 不同行高的表格需要异步计算\n if (!tScroll.value.isFixedRowHeight) {\n const duration = p.time ?? 60;\n const timer = setTimeout(() => {\n updateScrollTop(p);\n clearTimeout(timer);\n }, duration);\n }\n };\n\n useResizeObserver(isVirtualScroll.value ? container : undefined, refreshVirtualScroll);\n\n // 固定高度场景,可直接通过数据长度计算出最大滚动高度\n watch(\n () => [[...params.value.data, tScroll.value, isVirtualScroll.value, container.value]],\n () => {\n if (!isVirtualScroll.value) return;\n const { data } = params.value;\n addIndexToData(data);\n const startIndex = startAndEndIndex.value[0];\n visibleData.value = data.slice(startIndex, startIndex + tripleBufferSize.value);\n\n // get container dom after one tick\n const timer = setTimeout(() => {\n if (container.value) {\n containerHeight.value = container.value.getBoundingClientRect().height;\n const scrollTopHeightList = getTrScrollTopHeightList(trHeightList.value || [], containerHeight.value);\n trScrollTopHeightList.value = scrollTopHeightList;\n }\n clearTimeout(timer);\n }, 0);\n },\n { immediate: true },\n );\n\n return {\n visibleData,\n translateY,\n scrollHeight,\n isVirtualScroll,\n handleScroll,\n handleRowMounted,\n scrollToElement,\n };\n};\n\nexport type VirtualScrollConfig = ReturnType<typeof useVirtualScroll>;\n\nexport default useVirtualScroll;\n"],"names":["useVirtualScroll","container","params","_params$value$data","_params$value$scroll","visibleData","ref","translateY","value","data","length","scroll","rowHeight","scrollHeight","trScrollTopHeightList","trHeightList","containerHeight","containerWidth","startAndEndIndex","tScroll","computed","_scroll$isFixedRowHei","bufferSize","isFixedRowHeight","threshold","type","isVirtualScroll","getTrScrollTopHeightList","list","i","len","tripleBufferSize","updateVisibleData","scrollTop","currentIndex","startIndex","Math","min","endIndex","join","slice","lastScrollTop","top","handleRowMounted","rowData","_rowData$ref$value","trHeight","getBoundingClientRect","height","rowIndex","VIRTUAL_SCROLL_INDEX","newTrHeightList","scrollTopHeightList","lastIndex","handleScroll","refreshVirtualScroll","_ref2","_slicedToArray","_ref","contentRect","maxScrollbarWidth","abs","width","addIndexToData","forEach","item","index","updateScrollTop","_ref3$top","behavior","scrollTo","scrollToElement","p","_p$time","duration","time","timer","setTimeout","clearTimeout","useResizeObserver","watch","concat","_toConsumableArray","immediate"],"mappings":"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"}
|
package/es/index.mjs
CHANGED
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
* @license MIT
|
|
5
5
|
*/
|
|
6
6
|
|
|
7
|
-
import { c as components } from './_chunks/dep-
|
|
7
|
+
import { c as components } from './_chunks/dep-78809bc1.mjs';
|
|
8
8
|
import './common.mjs';
|
|
9
9
|
export { Button } from './button/index.mjs';
|
|
10
10
|
export { Icon } from './icon/index.mjs';
|
|
@@ -382,7 +382,7 @@ import './cascader/cascader-panel.mjs';
|
|
|
382
382
|
import './cascader/type.mjs';
|
|
383
383
|
import './date-picker/DatePicker.mjs';
|
|
384
384
|
import './date-picker/hooks/useSingle.mjs';
|
|
385
|
-
import './_chunks/dep-
|
|
385
|
+
import './_chunks/dep-be3e9bff.mjs';
|
|
386
386
|
import './_chunks/dep-6680dfbd.mjs';
|
|
387
387
|
import './date-picker/hooks/useSingleValue.mjs';
|
|
388
388
|
import './date-picker/props.mjs';
|
package/es/input/style/index.css
CHANGED
|
@@ -23,6 +23,10 @@
|
|
|
23
23
|
.input-disabled.t-is-disabled > .t-input__suffix .t-icon {
|
|
24
24
|
color: var(--td-text-color-disabled);
|
|
25
25
|
}
|
|
26
|
+
.input-disabled.t-is-disabled > .t-input__prefix .t-icon:hover,
|
|
27
|
+
.input-disabled.t-is-disabled > .t-input__suffix .t-icon:hover {
|
|
28
|
+
color: var(--td-text-color-disabled);
|
|
29
|
+
}
|
|
26
30
|
.t-tips {
|
|
27
31
|
font-size: var(--td-font-size-body-small);
|
|
28
32
|
}
|
|
@@ -190,6 +194,10 @@
|
|
|
190
194
|
.t-input.t-is-disabled > .t-input__suffix .t-icon {
|
|
191
195
|
color: var(--td-text-color-disabled);
|
|
192
196
|
}
|
|
197
|
+
.t-input.t-is-disabled > .t-input__prefix .t-icon:hover,
|
|
198
|
+
.t-input.t-is-disabled > .t-input__suffix .t-icon:hover {
|
|
199
|
+
color: var(--td-text-color-disabled);
|
|
200
|
+
}
|
|
193
201
|
.t-input.t-input--prefix > .t-input__prefix {
|
|
194
202
|
z-index: 2;
|
|
195
203
|
height: 100%;
|