zartui 3.0.5 → 3.0.7
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/es/button/Button.d.ts +3 -0
- package/es/button/Button.mjs +2 -0
- package/es/button/index.d.ts +2 -0
- package/es/cascader/Cascader.mjs +0 -2
- package/es/cascader/index.css +1 -1
- package/es/checkbox/Checkbox.d.ts +1 -1
- package/es/checkbox/Checker.d.ts +2 -2
- package/es/checkbox/index.d.ts +1 -1
- package/es/collapse-item/CollapseItem.mjs +3 -1
- package/es/date-time-picker/DateTimePicker.d.ts +1 -1
- package/es/date-time-picker/DateTimePicker.mjs +9 -3
- package/es/date-time-picker/DateTimePickerWrapper.d.ts +1 -1
- package/es/date-time-picker/index.d.ts +1 -1
- package/es/dialog/index.css +1 -1
- package/es/divider/index.css +1 -1
- package/es/dropdown-item/DropdownItem.mjs +7 -4
- package/es/dropdown-menu/DropdownMenu.mjs +2 -2
- package/es/dropdown-menu/types.d.ts +1 -0
- package/es/empty/Images.mjs +9 -9
- package/es/empty/index.css +1 -1
- package/es/hierarchy-select/Breadcrumb.d.ts +43 -0
- package/es/hierarchy-select/Breadcrumb.mjs +56 -0
- package/es/hierarchy-select/HierarchySelect.d.ts +104 -0
- package/es/hierarchy-select/HierarchySelect.mjs +221 -0
- package/es/hierarchy-select/index.css +1 -0
- package/es/hierarchy-select/index.d.ts +79 -0
- package/es/hierarchy-select/index.mjs +8 -0
- package/es/hierarchy-select/style/index.d.ts +1 -0
- package/es/hierarchy-select/style/index.mjs +8 -0
- package/es/hierarchy-select/svg/SubIcon.d.ts +1 -0
- package/es/hierarchy-select/svg/SubIcon.mjs +33 -0
- package/es/hierarchy-select/types.d.ts +7 -0
- package/es/hierarchy-select/types.mjs +0 -0
- package/es/icon/config.mjs +3 -1
- package/es/icon/index.css +1 -1
- package/es/image-preview/ImagePreview.mjs +1 -1
- package/es/index-anchor/IndexAnchor.d.ts +11 -0
- package/es/index-anchor/IndexAnchor.mjs +88 -0
- package/es/index-anchor/index.css +1 -0
- package/es/index-anchor/index.d.ts +14 -0
- package/es/index-anchor/index.mjs +10 -0
- package/es/index-anchor/style/index.d.ts +1 -0
- package/es/index-anchor/style/index.mjs +3 -0
- package/es/index-anchor/types.d.ts +11 -0
- package/es/index-anchor/types.mjs +0 -0
- package/es/index-bar/IndexBar.d.ts +64 -0
- package/es/index-bar/IndexBar.mjs +275 -0
- package/es/index-bar/index.css +1 -0
- package/es/index-bar/index.d.ts +50 -0
- package/es/index-bar/index.mjs +10 -0
- package/es/index-bar/style/index.d.ts +1 -0
- package/es/index-bar/style/index.mjs +2 -0
- package/es/index-bar/types.d.ts +16 -0
- package/es/index-bar/types.mjs +0 -0
- package/es/index.d.ts +8 -1
- package/es/index.mjs +22 -1
- package/es/lazyload/vue-lazyload/index.mjs +5 -0
- package/es/lazyload/vue-lazyload/lazy.mjs +81 -0
- package/es/lazyload/vue-lazyload/listener.mjs +45 -0
- package/es/list/List.mjs +2 -4
- package/es/list/index.css +1 -1
- package/es/locale/lang/en-US.d.ts +7 -23
- package/es/locale/lang/en-US.mjs +7 -23
- package/es/locale/lang/zh-CN.d.ts +7 -23
- package/es/locale/lang/zh-CN.mjs +7 -23
- package/es/media-picker/MediaPicker.mjs +20 -0
- package/es/media-picker/image/PickFileIcon.mjs +1 -1
- package/es/media-picker/image/PickPhotoIcon.mjs +1 -1
- package/es/media-picker/image/TakeAudioIcon.mjs +1 -1
- package/es/media-picker/image/TakePhotoIcon.mjs +1 -1
- package/es/media-picker/image/TakeVideoIcon.mjs +1 -1
- package/es/media-picker/index.css +1 -1
- package/es/media-picker/util/media-util.mjs +3 -0
- package/es/media-picker/watermark/image-processor.mjs +10 -6
- package/es/media-picker/watermark/resize-options.mjs +1 -0
- package/es/media-picker/watermark/watermark.mjs +4 -0
- package/es/multiple-picker/MultiplePicker.d.ts +4 -4
- package/es/multiple-picker/MultiplePicker.mjs +3 -3
- package/es/multiple-picker/MultiplePickerOptions.d.ts +4 -4
- package/es/multiple-picker/MultiplePickerOptions.mjs +3 -3
- package/es/multiple-picker/index.d.ts +3 -3
- package/es/notice-bar/index.css +1 -1
- package/es/picker/Picker.mjs +7 -4
- package/es/picker/PickerToolbar.mjs +1 -0
- package/es/popover/Popover.d.ts +13 -0
- package/es/popover/Popover.mjs +91 -4
- package/es/popover/index.css +1 -1
- package/es/popover/index.d.ts +9 -0
- package/es/popup/Popup.mjs +1 -0
- package/es/popup/index.css +1 -1
- package/es/popup/shared.mjs +12 -0
- package/es/radio/Radio.d.ts +1 -1
- package/es/radio/index.d.ts +1 -1
- package/es/rate/index.css +1 -1
- package/es/search/Search.d.ts +1 -1
- package/es/search/Search.mjs +1 -0
- package/es/search/index.d.ts +1 -1
- package/es/signature/Signature.mjs +13 -10
- package/es/signature/index.css +1 -1
- package/es/step/Step.mjs +10 -6
- package/es/step/index.css +1 -1
- package/es/stepper/Stepper.mjs +2 -0
- package/es/stepper/index.css +1 -1
- package/es/steps/index.css +1 -1
- package/es/sticky/Sticky.mjs +2 -0
- package/es/style/base.css +1 -1
- package/es/style/css-variables.css +1 -1
- package/es/swipe/Swipe.d.ts +3 -1
- package/es/swipe/Swipe.mjs +19 -2
- package/es/swipe/index.d.ts +3 -1
- package/es/swipe-cell/SwipeCell.d.ts +44 -0
- package/es/swipe-cell/SwipeCell.mjs +163 -0
- package/es/swipe-cell/index.css +1 -0
- package/es/swipe-cell/index.d.ts +39 -0
- package/es/swipe-cell/index.mjs +10 -0
- package/es/swipe-cell/style/index.d.ts +1 -0
- package/es/swipe-cell/style/index.mjs +2 -0
- package/es/swipe-cell/types.d.ts +9 -0
- package/es/swipe-cell/types.mjs +0 -0
- package/es/switch/index.css +1 -1
- package/es/tabbar-item/index.css +1 -1
- package/es/table/Table.d.ts +113 -0
- package/es/table/Table.mjs +118 -0
- package/es/table/index.css +1 -0
- package/es/table/index.d.ts +75 -0
- package/es/table/index.mjs +10 -0
- package/es/table/style/index.d.ts +1 -0
- package/es/table/style/index.mjs +2 -0
- package/es/tabs/Tabs.mjs +2 -0
- package/es/tabs/index.css +1 -1
- package/es/tag/Tag.d.ts +18 -1
- package/es/tag/Tag.mjs +47 -2
- package/es/tag/index.css +1 -1
- package/es/tag/index.d.ts +13 -1
- package/es/text-ellipsis/TextEllipsis.d.ts +76 -0
- package/es/text-ellipsis/TextEllipsis.mjs +118 -0
- package/es/text-ellipsis/index.css +1 -0
- package/es/text-ellipsis/index.d.ts +60 -0
- package/es/text-ellipsis/index.mjs +10 -0
- package/es/text-ellipsis/style/index.d.ts +1 -0
- package/es/text-ellipsis/style/index.mjs +2 -0
- package/es/text-ellipsis/types.d.ts +3 -0
- package/es/text-ellipsis/types.mjs +0 -0
- package/es/timeline/Timeline.d.ts +113 -0
- package/es/timeline/Timeline.mjs +162 -0
- package/es/timeline/index.css +1 -0
- package/es/timeline/index.d.ts +75 -0
- package/es/timeline/index.mjs +10 -0
- package/es/timeline/style/index.d.ts +1 -0
- package/es/timeline/style/index.mjs +4 -0
- package/es/uploader/Uploader.d.ts +1 -1
- package/es/uploader/index.d.ts +1 -1
- package/es/uploader/utils.mjs +1 -1
- package/es/utils/dom.d.ts +1 -0
- package/es/utils/dom.mjs +11 -0
- package/lib/action-sheet/index.js +4 -0
- package/lib/avatar/Avatar.js +4 -0
- package/lib/avatar/index.js +4 -0
- package/lib/badge/index.js +4 -0
- package/lib/button/Button.d.ts +3 -0
- package/lib/button/Button.js +2 -0
- package/lib/button/index.d.ts +2 -0
- package/lib/button/index.js +4 -0
- package/lib/calendar/Calendar.js +4 -0
- package/lib/calendar/CalendarMonth.js +4 -0
- package/lib/calendar/index.js +4 -0
- package/lib/cascader/Cascader.js +4 -2
- package/lib/cascader/index.css +1 -1
- package/lib/cascader/index.js +4 -0
- package/lib/cell/index.js +4 -0
- package/lib/cell-group/index.js +4 -0
- package/lib/checkbox/Checkbox.d.ts +1 -1
- package/lib/checkbox/Checkbox.js +4 -0
- package/lib/checkbox/Checker.d.ts +2 -2
- package/lib/checkbox/index.d.ts +1 -1
- package/lib/checkbox/index.js +4 -0
- package/lib/checkbox-group/index.js +4 -0
- package/lib/col/index.js +4 -0
- package/lib/collapse/index.js +4 -0
- package/lib/collapse-item/CollapseItem.js +7 -1
- package/lib/collapse-item/index.js +4 -0
- package/lib/config-provider/index.js +4 -0
- package/lib/date-time-picker/DateTimePicker.d.ts +1 -1
- package/lib/date-time-picker/DateTimePicker.js +13 -3
- package/lib/date-time-picker/DateTimePickerWrapper.d.ts +1 -1
- package/lib/date-time-picker/DateTimePickerWrapper.js +4 -0
- package/lib/date-time-picker/index.d.ts +1 -1
- package/lib/date-time-picker/index.js +4 -0
- package/lib/dialog/function-call.js +4 -0
- package/lib/dialog/index.css +1 -1
- package/lib/dialog/index.js +4 -0
- package/lib/divider/index.css +1 -1
- package/lib/divider/index.js +4 -0
- package/lib/dropdown-item/DropdownItem.js +6 -3
- package/lib/dropdown-item/index.js +4 -0
- package/lib/dropdown-menu/DropdownMenu.js +6 -2
- package/lib/dropdown-menu/index.js +4 -0
- package/lib/dropdown-menu/types.d.ts +1 -0
- package/lib/empty/Images.js +9 -9
- package/lib/empty/index.css +1 -1
- package/lib/empty/index.js +4 -0
- package/lib/field/index.js +4 -0
- package/lib/form/index.js +4 -0
- package/lib/grid/index.js +4 -0
- package/lib/grid-item/index.js +4 -0
- package/lib/hierarchy-select/Breadcrumb.d.ts +43 -0
- package/lib/hierarchy-select/Breadcrumb.js +85 -0
- package/lib/hierarchy-select/HierarchySelect.d.ts +104 -0
- package/lib/hierarchy-select/HierarchySelect.js +250 -0
- package/lib/hierarchy-select/index.css +1 -0
- package/lib/hierarchy-select/index.d.ts +79 -0
- package/lib/hierarchy-select/index.js +37 -0
- package/lib/hierarchy-select/style/index.d.ts +1 -0
- package/lib/hierarchy-select/style/index.js +8 -0
- package/lib/hierarchy-select/svg/SubIcon.d.ts +1 -0
- package/lib/hierarchy-select/svg/SubIcon.js +52 -0
- package/lib/hierarchy-select/types.d.ts +7 -0
- package/lib/hierarchy-select/types.js +15 -0
- package/lib/icon/config.js +3 -1
- package/lib/icon/index.css +1 -1
- package/lib/icon/index.js +4 -0
- package/lib/image/index.js +4 -0
- package/lib/image-preview/ImagePreview.js +5 -1
- package/lib/image-preview/function-call.js +4 -0
- package/lib/image-preview/index.js +4 -0
- package/lib/index-anchor/IndexAnchor.d.ts +11 -0
- package/lib/index-anchor/IndexAnchor.js +107 -0
- package/lib/index-anchor/index.css +1 -0
- package/lib/index-anchor/index.d.ts +14 -0
- package/lib/index-anchor/index.js +39 -0
- package/lib/index-anchor/style/index.d.ts +1 -0
- package/lib/index-anchor/style/index.js +3 -0
- package/lib/index-anchor/types.d.ts +11 -0
- package/lib/index-anchor/types.js +15 -0
- package/lib/index-bar/IndexBar.d.ts +64 -0
- package/lib/index-bar/IndexBar.js +294 -0
- package/lib/index-bar/index.css +1 -0
- package/lib/index-bar/index.d.ts +50 -0
- package/lib/index-bar/index.js +39 -0
- package/lib/index-bar/style/index.d.ts +1 -0
- package/lib/index-bar/style/index.js +2 -0
- package/lib/index-bar/types.d.ts +16 -0
- package/lib/index-bar/types.js +15 -0
- package/lib/index.css +1 -1
- package/lib/index.d.ts +8 -1
- package/lib/index.js +22 -1
- package/lib/lazyload/vue-lazyload/index.js +9 -0
- package/lib/lazyload/vue-lazyload/lazy.js +85 -0
- package/lib/lazyload/vue-lazyload/listener.js +45 -0
- package/lib/list/List.js +2 -4
- package/lib/list/index.css +1 -1
- package/lib/list/index.js +4 -0
- package/lib/loading/index.js +4 -0
- package/lib/locale/index.js +4 -0
- package/lib/locale/lang/en-US.d.ts +7 -23
- package/lib/locale/lang/en-US.js +7 -23
- package/lib/locale/lang/zh-CN.d.ts +7 -23
- package/lib/locale/lang/zh-CN.js +7 -23
- package/lib/media-picker/MediaPicker.js +24 -0
- package/lib/media-picker/image/PickFileIcon.js +1 -1
- package/lib/media-picker/image/PickPhotoIcon.js +1 -1
- package/lib/media-picker/image/TakeAudioIcon.js +1 -1
- package/lib/media-picker/image/TakePhotoIcon.js +1 -1
- package/lib/media-picker/image/TakeVideoIcon.js +1 -1
- package/lib/media-picker/index.css +1 -1
- package/lib/media-picker/index.js +4 -0
- package/lib/media-picker/util/media-util.js +3 -0
- package/lib/media-picker/watermark/image-processor.js +10 -6
- package/lib/media-picker/watermark/resize-options.js +1 -0
- package/lib/media-picker/watermark/watermark.js +4 -0
- package/lib/media-player/MediaPlayer.js +4 -0
- package/lib/media-player/index.js +4 -0
- package/lib/multiple-picker/MultiplePicker.d.ts +4 -4
- package/lib/multiple-picker/MultiplePicker.js +7 -3
- package/lib/multiple-picker/MultiplePickerOptions.d.ts +4 -4
- package/lib/multiple-picker/MultiplePickerOptions.js +3 -3
- package/lib/multiple-picker/index.d.ts +3 -3
- package/lib/multiple-picker/index.js +4 -0
- package/lib/nav-bar/index.js +4 -0
- package/lib/notice-bar/NoticeBar.js +4 -0
- package/lib/notice-bar/index.css +1 -1
- package/lib/notice-bar/index.js +4 -0
- package/lib/notify/function-call.js +4 -0
- package/lib/notify/index.js +4 -0
- package/lib/number-keyboard/NumberKeyboard.js +4 -0
- package/lib/number-keyboard/NumberKeyboardKey.js +4 -0
- package/lib/number-keyboard/index.js +4 -0
- package/lib/overlay/index.js +4 -0
- package/lib/password-input/index.js +4 -0
- package/lib/picker/Picker.js +10 -3
- package/lib/picker/PickerToolbar.js +1 -0
- package/lib/picker/index.js +4 -0
- package/lib/popover/Popover.d.ts +13 -0
- package/lib/popover/Popover.js +90 -3
- package/lib/popover/index.css +1 -1
- package/lib/popover/index.d.ts +9 -0
- package/lib/popover/index.js +4 -0
- package/lib/popup/Popup.js +1 -0
- package/lib/popup/index.css +1 -1
- package/lib/popup/index.js +4 -0
- package/lib/popup/shared.js +12 -0
- package/lib/pull-refresh/index.js +4 -0
- package/lib/radio/Radio.d.ts +1 -1
- package/lib/radio/Radio.js +4 -0
- package/lib/radio/index.d.ts +1 -1
- package/lib/radio/index.js +4 -0
- package/lib/radio-group/index.js +4 -0
- package/lib/rate/index.css +1 -1
- package/lib/rate/index.js +4 -0
- package/lib/row/index.js +4 -0
- package/lib/search/Search.d.ts +1 -1
- package/lib/search/Search.js +1 -0
- package/lib/search/index.d.ts +1 -1
- package/lib/search/index.js +4 -0
- package/lib/signature/Signature.js +16 -9
- package/lib/signature/index.css +1 -1
- package/lib/signature/index.js +4 -0
- package/lib/skeleton/index.js +4 -0
- package/lib/step/Step.js +10 -6
- package/lib/step/index.css +1 -1
- package/lib/step/index.js +4 -0
- package/lib/stepper/Stepper.js +6 -0
- package/lib/stepper/index.css +1 -1
- package/lib/stepper/index.js +4 -0
- package/lib/steps/index.css +1 -1
- package/lib/steps/index.js +4 -0
- package/lib/sticky/Sticky.js +2 -0
- package/lib/sticky/index.js +4 -0
- package/lib/style/base.css +1 -1
- package/lib/style/css-variables.css +1 -1
- package/lib/swipe/Swipe.d.ts +3 -1
- package/lib/swipe/Swipe.js +19 -2
- package/lib/swipe/index.d.ts +3 -1
- package/lib/swipe/index.js +4 -0
- package/lib/swipe-cell/SwipeCell.d.ts +44 -0
- package/lib/swipe-cell/SwipeCell.js +182 -0
- package/lib/swipe-cell/index.css +1 -0
- package/lib/swipe-cell/index.d.ts +39 -0
- package/lib/swipe-cell/index.js +39 -0
- package/lib/swipe-cell/style/index.d.ts +1 -0
- package/lib/swipe-cell/style/index.js +2 -0
- package/lib/swipe-cell/types.d.ts +9 -0
- package/lib/swipe-cell/types.js +15 -0
- package/lib/swipe-item/index.js +4 -0
- package/lib/switch/index.css +1 -1
- package/lib/switch/index.js +4 -0
- package/lib/tab/index.js +4 -0
- package/lib/tabbar/index.js +4 -0
- package/lib/tabbar-item/index.css +1 -1
- package/lib/tabbar-item/index.js +4 -0
- package/lib/table/Table.d.ts +113 -0
- package/lib/table/Table.js +137 -0
- package/lib/table/index.css +1 -0
- package/lib/table/index.d.ts +75 -0
- package/lib/table/index.js +39 -0
- package/lib/table/style/index.d.ts +1 -0
- package/lib/table/style/index.js +2 -0
- package/lib/tabs/Tabs.js +6 -0
- package/lib/tabs/index.css +1 -1
- package/lib/tabs/index.js +4 -0
- package/lib/tag/Tag.d.ts +18 -1
- package/lib/tag/Tag.js +47 -2
- package/lib/tag/index.css +1 -1
- package/lib/tag/index.d.ts +13 -1
- package/lib/tag/index.js +4 -0
- package/lib/text-ellipsis/TextEllipsis.d.ts +76 -0
- package/lib/text-ellipsis/TextEllipsis.js +137 -0
- package/lib/text-ellipsis/index.css +1 -0
- package/lib/text-ellipsis/index.d.ts +60 -0
- package/lib/text-ellipsis/index.js +39 -0
- package/lib/text-ellipsis/style/index.d.ts +1 -0
- package/lib/text-ellipsis/style/index.js +2 -0
- package/lib/text-ellipsis/types.d.ts +3 -0
- package/lib/text-ellipsis/types.js +15 -0
- package/lib/time-picker/TimePicker.js +4 -0
- package/lib/time-picker/TimePickerColumn.js +4 -0
- package/lib/time-picker/index.js +4 -0
- package/lib/timeline/Timeline.d.ts +113 -0
- package/lib/timeline/Timeline.js +191 -0
- package/lib/timeline/index.css +1 -0
- package/lib/timeline/index.d.ts +75 -0
- package/lib/timeline/index.js +39 -0
- package/lib/timeline/style/index.d.ts +1 -0
- package/lib/timeline/style/index.js +4 -0
- package/lib/toast/function-call.js +4 -0
- package/lib/toast/index.js +4 -0
- package/lib/uploader/Uploader.d.ts +1 -1
- package/lib/uploader/Uploader.js +4 -0
- package/lib/uploader/index.d.ts +1 -1
- package/lib/uploader/index.js +4 -0
- package/lib/uploader/utils.js +1 -1
- package/lib/utils/create.js +4 -0
- package/lib/utils/dom.d.ts +1 -0
- package/lib/utils/dom.js +11 -0
- package/lib/web-types.json +1 -1
- package/lib/zartui.cjs.js +2619 -1019
- package/lib/zartui.es.js +2671 -1071
- package/lib/zartui.js +3354 -1218
- package/lib/zartui.min.js +1 -1
- package/package.json +24 -23
- package/README.md +0 -25
|
@@ -0,0 +1,118 @@
|
|
|
1
|
+
import { createVNode as _createVNode } from "vue";
|
|
2
|
+
import { ref, watch, onMounted, defineComponent } from "vue";
|
|
3
|
+
import { useEventListener } from "@zartui/use";
|
|
4
|
+
import { makeNumericProp, makeStringProp, createNamespace } from "../utils/index.mjs";
|
|
5
|
+
const [name, bem] = createNamespace("text-ellipsis");
|
|
6
|
+
const textEllipsisProps = {
|
|
7
|
+
rows: makeNumericProp(1),
|
|
8
|
+
content: makeStringProp(""),
|
|
9
|
+
expandText: makeStringProp(""),
|
|
10
|
+
collapseText: makeStringProp(""),
|
|
11
|
+
highlight: makeStringProp("")
|
|
12
|
+
};
|
|
13
|
+
var stdin_default = defineComponent({
|
|
14
|
+
name,
|
|
15
|
+
props: textEllipsisProps,
|
|
16
|
+
emits: ["clickAction"],
|
|
17
|
+
setup(props, {
|
|
18
|
+
emit
|
|
19
|
+
}) {
|
|
20
|
+
const text = ref("");
|
|
21
|
+
const expanded = ref(false);
|
|
22
|
+
const hasAction = ref(false);
|
|
23
|
+
const root = ref();
|
|
24
|
+
const pxToNum = (value) => {
|
|
25
|
+
if (!value)
|
|
26
|
+
return 0;
|
|
27
|
+
const match = value.match(/^\d*(\.\d*)?/);
|
|
28
|
+
return match ? Number(match[0]) : 0;
|
|
29
|
+
};
|
|
30
|
+
const calcEllipsised = () => {
|
|
31
|
+
const cloneContainer = () => {
|
|
32
|
+
if (!root.value)
|
|
33
|
+
return;
|
|
34
|
+
const originStyle = window.getComputedStyle(root.value);
|
|
35
|
+
const container2 = document.createElement("div");
|
|
36
|
+
const styleNames = Array.prototype.slice.apply(originStyle);
|
|
37
|
+
styleNames.forEach((name2) => {
|
|
38
|
+
container2.style.setProperty(name2, originStyle.getPropertyValue(name2));
|
|
39
|
+
});
|
|
40
|
+
container2.style.position = "fixed";
|
|
41
|
+
container2.style.zIndex = "-9999";
|
|
42
|
+
container2.style.top = "-9999px";
|
|
43
|
+
container2.style.height = "auto";
|
|
44
|
+
container2.style.minHeight = "auto";
|
|
45
|
+
container2.style.maxHeight = "auto";
|
|
46
|
+
container2.innerText = props.content;
|
|
47
|
+
document.body.appendChild(container2);
|
|
48
|
+
return container2;
|
|
49
|
+
};
|
|
50
|
+
const calcEllipsisText = (container2, maxHeight2) => {
|
|
51
|
+
const {
|
|
52
|
+
content,
|
|
53
|
+
expandText
|
|
54
|
+
} = props;
|
|
55
|
+
const dot = "...";
|
|
56
|
+
let left = 0;
|
|
57
|
+
let right = content.length;
|
|
58
|
+
let res = -1;
|
|
59
|
+
while (left <= right) {
|
|
60
|
+
const mid = Math.floor((left + right) / 2);
|
|
61
|
+
container2.innerText = content.slice(0, mid) + dot + expandText;
|
|
62
|
+
if (container2.offsetHeight <= maxHeight2) {
|
|
63
|
+
left = mid + 1;
|
|
64
|
+
res = mid;
|
|
65
|
+
} else {
|
|
66
|
+
right = mid - 1;
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
return content.slice(0, res) + dot;
|
|
70
|
+
};
|
|
71
|
+
const container = cloneContainer();
|
|
72
|
+
if (!container)
|
|
73
|
+
return;
|
|
74
|
+
const {
|
|
75
|
+
paddingBottom,
|
|
76
|
+
paddingTop,
|
|
77
|
+
lineHeight
|
|
78
|
+
} = container.style;
|
|
79
|
+
const maxHeight = (Number(props.rows) + 0.5) * pxToNum(lineHeight) + pxToNum(paddingTop) + pxToNum(paddingBottom);
|
|
80
|
+
if (maxHeight < container.offsetHeight) {
|
|
81
|
+
hasAction.value = true;
|
|
82
|
+
text.value = calcEllipsisText(container, maxHeight);
|
|
83
|
+
} else {
|
|
84
|
+
hasAction.value = false;
|
|
85
|
+
text.value = props.content;
|
|
86
|
+
}
|
|
87
|
+
document.body.removeChild(container);
|
|
88
|
+
};
|
|
89
|
+
const onClickAction = (event) => {
|
|
90
|
+
expanded.value = !expanded.value;
|
|
91
|
+
emit("clickAction", event);
|
|
92
|
+
};
|
|
93
|
+
const formatSearchKeyword = (keywords, text2) => {
|
|
94
|
+
if (!keywords)
|
|
95
|
+
return text2;
|
|
96
|
+
const replaceReg = new RegExp(keywords, "ig");
|
|
97
|
+
const replaceString = `<span style="color: #0091FA; background: rgba(0, 145, 250, 0.1);">${keywords}</span>`;
|
|
98
|
+
return text2.replace(replaceReg, replaceString);
|
|
99
|
+
};
|
|
100
|
+
const renderAction = () => _createVNode("span", {
|
|
101
|
+
"class": bem("action"),
|
|
102
|
+
"onClick": onClickAction
|
|
103
|
+
}, [expanded.value ? props.collapseText : props.expandText]);
|
|
104
|
+
onMounted(calcEllipsised);
|
|
105
|
+
watch(() => [props.content, props.rows], calcEllipsised);
|
|
106
|
+
useEventListener("resize", calcEllipsised);
|
|
107
|
+
return () => _createVNode("div", {
|
|
108
|
+
"ref": root,
|
|
109
|
+
"class": bem()
|
|
110
|
+
}, [_createVNode("span", {
|
|
111
|
+
"innerHTML": formatSearchKeyword(props.highlight, expanded.value ? props.content : text.value)
|
|
112
|
+
}, null), hasAction.value ? renderAction() : null]);
|
|
113
|
+
}
|
|
114
|
+
});
|
|
115
|
+
export {
|
|
116
|
+
stdin_default as default,
|
|
117
|
+
textEllipsisProps
|
|
118
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
:root{--zt-text-ellipsis-line-height:calc(200% - 8px);--zt-text-ellipsis-action-color: var(--zt-blue)}.zt-text-ellipsis{line-height:var(--zt-text-ellipsis-line-height);white-space:pre-wrap;word-break:break-all}.zt-text-ellipsis__action{cursor:pointer;color:var(--zt-text-ellipsis-action-color)}.zt-text-ellipsis__action:active{opacity:var(--zt-active-opacity)}
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
export declare const TextEllipsis: import("../utils").WithInstall<import("vue").DefineComponent<{
|
|
2
|
+
rows: {
|
|
3
|
+
type: (NumberConstructor | StringConstructor)[];
|
|
4
|
+
default: number;
|
|
5
|
+
};
|
|
6
|
+
content: {
|
|
7
|
+
type: import("vue").PropType<string>;
|
|
8
|
+
default: string;
|
|
9
|
+
};
|
|
10
|
+
expandText: {
|
|
11
|
+
type: import("vue").PropType<string>;
|
|
12
|
+
default: string;
|
|
13
|
+
};
|
|
14
|
+
collapseText: {
|
|
15
|
+
type: import("vue").PropType<string>;
|
|
16
|
+
default: string;
|
|
17
|
+
};
|
|
18
|
+
highlight: {
|
|
19
|
+
type: import("vue").PropType<string>;
|
|
20
|
+
default: string;
|
|
21
|
+
};
|
|
22
|
+
}, () => JSX.Element, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, "clickAction"[], "clickAction", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
|
|
23
|
+
rows: {
|
|
24
|
+
type: (NumberConstructor | StringConstructor)[];
|
|
25
|
+
default: number;
|
|
26
|
+
};
|
|
27
|
+
content: {
|
|
28
|
+
type: import("vue").PropType<string>;
|
|
29
|
+
default: string;
|
|
30
|
+
};
|
|
31
|
+
expandText: {
|
|
32
|
+
type: import("vue").PropType<string>;
|
|
33
|
+
default: string;
|
|
34
|
+
};
|
|
35
|
+
collapseText: {
|
|
36
|
+
type: import("vue").PropType<string>;
|
|
37
|
+
default: string;
|
|
38
|
+
};
|
|
39
|
+
highlight: {
|
|
40
|
+
type: import("vue").PropType<string>;
|
|
41
|
+
default: string;
|
|
42
|
+
};
|
|
43
|
+
}>> & {
|
|
44
|
+
onClickAction?: ((...args: any[]) => any) | undefined;
|
|
45
|
+
}, {
|
|
46
|
+
content: string;
|
|
47
|
+
rows: string | number;
|
|
48
|
+
expandText: string;
|
|
49
|
+
collapseText: string;
|
|
50
|
+
highlight: string;
|
|
51
|
+
}>>;
|
|
52
|
+
export default TextEllipsis;
|
|
53
|
+
export { textEllipsisProps } from './TextEllipsis';
|
|
54
|
+
export type { TextEllipsisProps } from './TextEllipsis';
|
|
55
|
+
export type { TextEllipsisThemeVars } from './types';
|
|
56
|
+
declare module 'vue' {
|
|
57
|
+
interface GlobalComponents {
|
|
58
|
+
ZtTextEllipsis: typeof TextEllipsis;
|
|
59
|
+
}
|
|
60
|
+
}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { withInstall } from "../utils/index.mjs";
|
|
2
|
+
import _TextEllipsis from "./TextEllipsis.mjs";
|
|
3
|
+
const TextEllipsis = withInstall(_TextEllipsis);
|
|
4
|
+
var stdin_default = TextEllipsis;
|
|
5
|
+
import { textEllipsisProps } from "./TextEllipsis.mjs";
|
|
6
|
+
export {
|
|
7
|
+
TextEllipsis,
|
|
8
|
+
stdin_default as default,
|
|
9
|
+
textEllipsisProps
|
|
10
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
File without changes
|
|
@@ -0,0 +1,113 @@
|
|
|
1
|
+
import type { ExtractPropTypes } from 'vue';
|
|
2
|
+
export declare type TimelineProcessOption = {
|
|
3
|
+
human: string;
|
|
4
|
+
avatar?: string;
|
|
5
|
+
department: string;
|
|
6
|
+
timestamp: string;
|
|
7
|
+
opinion: string;
|
|
8
|
+
stage: string;
|
|
9
|
+
action: string;
|
|
10
|
+
nextAction: string;
|
|
11
|
+
nextDepartment: string;
|
|
12
|
+
nextHuman: string;
|
|
13
|
+
folded?: boolean;
|
|
14
|
+
};
|
|
15
|
+
export declare const timelineProps: {
|
|
16
|
+
title: {
|
|
17
|
+
type: import("vue").PropType<string>;
|
|
18
|
+
default: string;
|
|
19
|
+
};
|
|
20
|
+
defaultFold: {
|
|
21
|
+
type: BooleanConstructor;
|
|
22
|
+
default: boolean;
|
|
23
|
+
};
|
|
24
|
+
collapseCount: {
|
|
25
|
+
type: NumberConstructor;
|
|
26
|
+
default: number;
|
|
27
|
+
};
|
|
28
|
+
processes: {
|
|
29
|
+
type: import("vue").PropType<TimelineProcessOption[]>;
|
|
30
|
+
default: () => TimelineProcessOption[];
|
|
31
|
+
};
|
|
32
|
+
opinionKey: {
|
|
33
|
+
type: import("vue").PropType<string>;
|
|
34
|
+
default: string;
|
|
35
|
+
};
|
|
36
|
+
enableSingleFold: {
|
|
37
|
+
type: BooleanConstructor;
|
|
38
|
+
default: true;
|
|
39
|
+
};
|
|
40
|
+
dot: {
|
|
41
|
+
type: BooleanConstructor;
|
|
42
|
+
default: boolean;
|
|
43
|
+
};
|
|
44
|
+
};
|
|
45
|
+
export declare type TimelineProps = ExtractPropTypes<typeof timelineProps>;
|
|
46
|
+
declare const _default: import("vue").DefineComponent<{
|
|
47
|
+
title: {
|
|
48
|
+
type: import("vue").PropType<string>;
|
|
49
|
+
default: string;
|
|
50
|
+
};
|
|
51
|
+
defaultFold: {
|
|
52
|
+
type: BooleanConstructor;
|
|
53
|
+
default: boolean;
|
|
54
|
+
};
|
|
55
|
+
collapseCount: {
|
|
56
|
+
type: NumberConstructor;
|
|
57
|
+
default: number;
|
|
58
|
+
};
|
|
59
|
+
processes: {
|
|
60
|
+
type: import("vue").PropType<TimelineProcessOption[]>;
|
|
61
|
+
default: () => TimelineProcessOption[];
|
|
62
|
+
};
|
|
63
|
+
opinionKey: {
|
|
64
|
+
type: import("vue").PropType<string>;
|
|
65
|
+
default: string;
|
|
66
|
+
};
|
|
67
|
+
enableSingleFold: {
|
|
68
|
+
type: BooleanConstructor;
|
|
69
|
+
default: true;
|
|
70
|
+
};
|
|
71
|
+
dot: {
|
|
72
|
+
type: BooleanConstructor;
|
|
73
|
+
default: boolean;
|
|
74
|
+
};
|
|
75
|
+
}, () => JSX.Element, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<ExtractPropTypes<{
|
|
76
|
+
title: {
|
|
77
|
+
type: import("vue").PropType<string>;
|
|
78
|
+
default: string;
|
|
79
|
+
};
|
|
80
|
+
defaultFold: {
|
|
81
|
+
type: BooleanConstructor;
|
|
82
|
+
default: boolean;
|
|
83
|
+
};
|
|
84
|
+
collapseCount: {
|
|
85
|
+
type: NumberConstructor;
|
|
86
|
+
default: number;
|
|
87
|
+
};
|
|
88
|
+
processes: {
|
|
89
|
+
type: import("vue").PropType<TimelineProcessOption[]>;
|
|
90
|
+
default: () => TimelineProcessOption[];
|
|
91
|
+
};
|
|
92
|
+
opinionKey: {
|
|
93
|
+
type: import("vue").PropType<string>;
|
|
94
|
+
default: string;
|
|
95
|
+
};
|
|
96
|
+
enableSingleFold: {
|
|
97
|
+
type: BooleanConstructor;
|
|
98
|
+
default: true;
|
|
99
|
+
};
|
|
100
|
+
dot: {
|
|
101
|
+
type: BooleanConstructor;
|
|
102
|
+
default: boolean;
|
|
103
|
+
};
|
|
104
|
+
}>>, {
|
|
105
|
+
title: string;
|
|
106
|
+
dot: boolean;
|
|
107
|
+
defaultFold: boolean;
|
|
108
|
+
collapseCount: number;
|
|
109
|
+
processes: TimelineProcessOption[];
|
|
110
|
+
opinionKey: string;
|
|
111
|
+
enableSingleFold: boolean;
|
|
112
|
+
}>;
|
|
113
|
+
export default _default;
|
|
@@ -0,0 +1,162 @@
|
|
|
1
|
+
import { createTextVNode as _createTextVNode, createVNode as _createVNode } from "vue";
|
|
2
|
+
import { defineComponent, computed, ref } from "vue";
|
|
3
|
+
import Switch from "../switch/index.mjs";
|
|
4
|
+
import { BORDER_BOTTOM, createNamespace, makeArrayProp, makeNumberProp, makeStringProp, truthProp } from "../utils/index.mjs";
|
|
5
|
+
const [name, bem] = createNamespace("timeline");
|
|
6
|
+
const timelineProps = {
|
|
7
|
+
title: makeStringProp("\u529E\u7406\u7ECF\u8FC7"),
|
|
8
|
+
// 默认折叠显示
|
|
9
|
+
defaultFold: {
|
|
10
|
+
type: Boolean,
|
|
11
|
+
default: false
|
|
12
|
+
},
|
|
13
|
+
// 折叠时显示几条数据
|
|
14
|
+
collapseCount: makeNumberProp(0),
|
|
15
|
+
processes: makeArrayProp([]),
|
|
16
|
+
opinionKey: makeStringProp("\u5904\u7406\u610F\u89C1"),
|
|
17
|
+
enableSingleFold: truthProp,
|
|
18
|
+
dot: {
|
|
19
|
+
type: Boolean,
|
|
20
|
+
default: false
|
|
21
|
+
}
|
|
22
|
+
};
|
|
23
|
+
var stdin_default = defineComponent({
|
|
24
|
+
name,
|
|
25
|
+
props: timelineProps,
|
|
26
|
+
setup(props, {
|
|
27
|
+
slots
|
|
28
|
+
}) {
|
|
29
|
+
const isFold = ref(props.defaultFold);
|
|
30
|
+
const genTopBar = () => {
|
|
31
|
+
if (slots["top-bar"]) {
|
|
32
|
+
return _createVNode("div", {
|
|
33
|
+
"class": [bem("top-bar"), BORDER_BOTTOM]
|
|
34
|
+
}, [slots["top-bar"]()]);
|
|
35
|
+
} else {
|
|
36
|
+
return _createVNode("div", {
|
|
37
|
+
"class": [bem("top-bar"), BORDER_BOTTOM]
|
|
38
|
+
}, [_createVNode("div", {
|
|
39
|
+
"class": bem("top-left")
|
|
40
|
+
}, [_createVNode("div", {
|
|
41
|
+
"class": bem("bar")
|
|
42
|
+
}, null), _createVNode("div", {
|
|
43
|
+
"class": bem("title")
|
|
44
|
+
}, [props.title])]), _createVNode("div", {
|
|
45
|
+
"class": bem("top-right")
|
|
46
|
+
}, [_createVNode("span", {
|
|
47
|
+
"class": bem("fold-text")
|
|
48
|
+
}, [_createTextVNode("\u6298\u53E0"), props.title]), _createVNode(Switch, {
|
|
49
|
+
"modelValue": isFold.value,
|
|
50
|
+
"onUpdate:modelValue": ($event) => isFold.value = $event
|
|
51
|
+
}, null)])]);
|
|
52
|
+
}
|
|
53
|
+
};
|
|
54
|
+
const genAvatar = (item) => {
|
|
55
|
+
if (slots.avatar) {
|
|
56
|
+
return _createVNode("div", {
|
|
57
|
+
"class": bem("avatar-box")
|
|
58
|
+
}, [slots.avatar(item)]);
|
|
59
|
+
}
|
|
60
|
+
if (props.dot) {
|
|
61
|
+
return _createVNode("div", {
|
|
62
|
+
"class": bem("dot")
|
|
63
|
+
}, null);
|
|
64
|
+
}
|
|
65
|
+
return _createVNode("div", {
|
|
66
|
+
"class": bem("avatar-box")
|
|
67
|
+
}, [item.avatar ? _createVNode("img", {
|
|
68
|
+
"class": bem("avatar"),
|
|
69
|
+
"src": item.avatar,
|
|
70
|
+
"alt": ""
|
|
71
|
+
}, null) : _createVNode("div", {
|
|
72
|
+
"class": bem("avatar")
|
|
73
|
+
}, [item.human.slice(-2)])]);
|
|
74
|
+
};
|
|
75
|
+
const genTitle = (item) => {
|
|
76
|
+
if (slots.title) {
|
|
77
|
+
return _createVNode("div", {
|
|
78
|
+
"class": bem("title-box")
|
|
79
|
+
}, [slots.title(item)]);
|
|
80
|
+
}
|
|
81
|
+
return _createVNode("div", {
|
|
82
|
+
"class": bem("title-box")
|
|
83
|
+
}, [_createVNode("span", {
|
|
84
|
+
"class": bem("title")
|
|
85
|
+
}, [`${item.department}[${item.human}]`]), _createVNode("span", {
|
|
86
|
+
"class": bem("time")
|
|
87
|
+
}, [item.timestamp])]);
|
|
88
|
+
};
|
|
89
|
+
const genOpinion = (item) => {
|
|
90
|
+
if (slots.opinion) {
|
|
91
|
+
return _createVNode("div", {
|
|
92
|
+
"class": bem("opinion-box")
|
|
93
|
+
}, [slots.opinion(item)]);
|
|
94
|
+
}
|
|
95
|
+
return _createVNode("div", {
|
|
96
|
+
"class": bem("opinion-box")
|
|
97
|
+
}, [_createVNode("div", {
|
|
98
|
+
"class": bem("opinion-label")
|
|
99
|
+
}, [props.opinionKey]), _createVNode("div", {
|
|
100
|
+
"class": bem("opinion")
|
|
101
|
+
}, [item.opinion || "\u65E0"])]);
|
|
102
|
+
};
|
|
103
|
+
const genContent = (item) => {
|
|
104
|
+
if (slots.content) {
|
|
105
|
+
return _createVNode("div", {
|
|
106
|
+
"class": [bem("content-box"), BORDER_BOTTOM]
|
|
107
|
+
}, [slots.content(item)]);
|
|
108
|
+
}
|
|
109
|
+
return _createVNode("div", {
|
|
110
|
+
"class": [bem("content-box"), BORDER_BOTTOM]
|
|
111
|
+
}, [_createTextVNode("\u5728"), _createVNode("span", null, [item.stage]), _createTextVNode("\u9636\u6BB5"), _createVNode("span", {
|
|
112
|
+
"class": bem("text-bold")
|
|
113
|
+
}, [_createTextVNode(" "), item.action, _createTextVNode(" ")]), _createTextVNode("\u5230"), _createVNode("span", null, [item.nextAction]), _createVNode("span", null, [item.nextDepartment]), _createVNode("span", {
|
|
114
|
+
"class": bem("text-bold")
|
|
115
|
+
}, [_createTextVNode(" ["), item.nextHuman, _createTextVNode("]")])]);
|
|
116
|
+
};
|
|
117
|
+
const genProcessItem = (item, isLast) => {
|
|
118
|
+
function itemClicked() {
|
|
119
|
+
if (!props.enableSingleFold) {
|
|
120
|
+
return;
|
|
121
|
+
}
|
|
122
|
+
item.folded = !item.folded;
|
|
123
|
+
}
|
|
124
|
+
return _createVNode("div", {
|
|
125
|
+
"class": bem("item") + ` ${isLast ? "last-item" : ""}`,
|
|
126
|
+
"onClick": itemClicked
|
|
127
|
+
}, [_createVNode("div", {
|
|
128
|
+
"class": [bem("left-container"), props.dot ? bem("dot-container") : ""]
|
|
129
|
+
}, [genAvatar(item), _createVNode("div", {
|
|
130
|
+
"class": bem(props.dot ? "line-dot" : "line")
|
|
131
|
+
}, null)]), _createVNode("div", {
|
|
132
|
+
"class": bem("right-container")
|
|
133
|
+
}, [genTitle(item), !item.folded && _createVNode("div", {
|
|
134
|
+
"class": bem("main-container")
|
|
135
|
+
}, [genContent(item), genOpinion(item)])])]);
|
|
136
|
+
};
|
|
137
|
+
const computedProcesses = computed(() => {
|
|
138
|
+
const wrapper = props.processes.map((v) => {
|
|
139
|
+
v.folded = false;
|
|
140
|
+
return v;
|
|
141
|
+
});
|
|
142
|
+
if (isFold.value) {
|
|
143
|
+
const showProcesses = wrapper.slice(0, props.collapseCount);
|
|
144
|
+
return showProcesses.map((item, index) => genProcessItem(item, index === showProcesses.length - 1));
|
|
145
|
+
} else {
|
|
146
|
+
return wrapper.map((item, index) => genProcessItem(item, index === wrapper.length - 1));
|
|
147
|
+
}
|
|
148
|
+
});
|
|
149
|
+
return () => {
|
|
150
|
+
var _a;
|
|
151
|
+
return _createVNode("div", {
|
|
152
|
+
"class": bem()
|
|
153
|
+
}, [genTopBar(), ((_a = computedProcesses.value) == null ? void 0 : _a.length) > 0 && _createVNode("div", {
|
|
154
|
+
"class": bem("container")
|
|
155
|
+
}, [computedProcesses.value])]);
|
|
156
|
+
};
|
|
157
|
+
}
|
|
158
|
+
});
|
|
159
|
+
export {
|
|
160
|
+
stdin_default as default,
|
|
161
|
+
timelineProps
|
|
162
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
:root{--zt-timeline-title-color: var(--zt-gray-default);--zt-timeline-sub-title-color: var(--zt-gray-a6);--zt-timeline-content-color: var(--zt-gray-default);--zt-timeline-background: var(--zt-white);--zt-timeline-bar-background: var(--zt-primary-color);--zt-timeline-time-color: var(--zt-gray-a8)}.zt-timeline{background-color:var(--zt-timeline-background)}.zt-timeline__top-bar{height:44px;display:flex;justify-content:space-between;align-items:center}.zt-timeline__top-left{display:flex;align-items:center}.zt-timeline__bar{width:4px;height:16px;background:var(--zt-timeline-bar-background);margin-right:12px}.zt-timeline__title{font-size:16px;font-weight:700;color:var(--zt-timeline-title-color);line-height:24px}.zt-timeline__top-right{padding-right:16px;display:flex;align-items:center}.zt-timeline__top-right .zt-switch--on{background:var(--zt-timeline-bar-background)}.zt-timeline__fold-text{font-size:16px;color:var(--zt-gray-a6);line-height:24px;margin-right:8px}.zt-timeline__container{padding-top:16px}.zt-timeline__item{padding:0 16px 16px;display:flex}.zt-timeline__item.last-item .zt-timeline__line-dot,.zt-timeline__item.last-item .zt-timeline__line{height:0}.zt-timeline__item.last-item .zt-timeline__dot{border-color:var(--zt-timeline-bar-background)}.zt-timeline__left-container{margin-right:8px;display:flex;flex-direction:column;align-items:center;position:relative}.zt-timeline__right-container{flex:1}.zt-timeline__dot-container{top:5px}.zt-timeline__dot{width:12px;height:12px;background-color:#fff;border:1px solid rgba(45,75,115,.2);border-radius:50%;z-index:2}.zt-timeline__avatar-box{width:40px;height:40px;z-index:2}.zt-timeline__avatar{width:40px;height:40px;background:#0091fa;border-radius:4px;font-size:14px;font-weight:700;text-align:center;color:#fff;line-height:40px}.zt-timeline__line{background-color:#f5f5f5;width:2px;height:100%;margin-top:4px;margin-bottom:-12px}.zt-timeline__line-dot{position:absolute;background-color:#f5f5f5;width:2px;height:calc(100% + 16px)}.zt-timeline__title-box{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.zt-timeline__time{font-size:12px;color:var(--zt-timeline-time-color);line-height:16px}.zt-timeline__content-box{font-size:14px;color:var(--zt-timeline-content-color);line-height:20px;padding-bottom:8px}.zt-timeline__main-container{background:rgba(0,0,0,.02);border-radius:4px;padding:8px 12px}.zt-timeline__main-container:before{border-radius:4px}.zt-timeline__main-container .zt-timeline__text-bold{font-weight:700}.zt-timeline__opinion-box{padding-top:7px}.zt-timeline__opinion-label{margin-bottom:4px;font-size:14px;color:var(--zt-timeline-sub-title-color);line-height:20px}.zt-timeline__opinion{font-size:14px;color:var(--zt-timeline-content-color);line-height:20px;word-break:break-all}
|
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
export declare const Timeline: import("../utils").WithInstall<import("vue").DefineComponent<{
|
|
2
|
+
title: {
|
|
3
|
+
type: import("vue").PropType<string>;
|
|
4
|
+
default: string;
|
|
5
|
+
};
|
|
6
|
+
defaultFold: {
|
|
7
|
+
type: BooleanConstructor;
|
|
8
|
+
default: boolean;
|
|
9
|
+
};
|
|
10
|
+
collapseCount: {
|
|
11
|
+
type: NumberConstructor;
|
|
12
|
+
default: number;
|
|
13
|
+
};
|
|
14
|
+
processes: {
|
|
15
|
+
type: import("vue").PropType<import("./Timeline").TimelineProcessOption[]>;
|
|
16
|
+
default: () => import("./Timeline").TimelineProcessOption[];
|
|
17
|
+
};
|
|
18
|
+
opinionKey: {
|
|
19
|
+
type: import("vue").PropType<string>;
|
|
20
|
+
default: string;
|
|
21
|
+
};
|
|
22
|
+
enableSingleFold: {
|
|
23
|
+
type: BooleanConstructor;
|
|
24
|
+
default: true;
|
|
25
|
+
};
|
|
26
|
+
dot: {
|
|
27
|
+
type: BooleanConstructor;
|
|
28
|
+
default: boolean;
|
|
29
|
+
};
|
|
30
|
+
}, () => JSX.Element, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
|
|
31
|
+
title: {
|
|
32
|
+
type: import("vue").PropType<string>;
|
|
33
|
+
default: string;
|
|
34
|
+
};
|
|
35
|
+
defaultFold: {
|
|
36
|
+
type: BooleanConstructor;
|
|
37
|
+
default: boolean;
|
|
38
|
+
};
|
|
39
|
+
collapseCount: {
|
|
40
|
+
type: NumberConstructor;
|
|
41
|
+
default: number;
|
|
42
|
+
};
|
|
43
|
+
processes: {
|
|
44
|
+
type: import("vue").PropType<import("./Timeline").TimelineProcessOption[]>;
|
|
45
|
+
default: () => import("./Timeline").TimelineProcessOption[];
|
|
46
|
+
};
|
|
47
|
+
opinionKey: {
|
|
48
|
+
type: import("vue").PropType<string>;
|
|
49
|
+
default: string;
|
|
50
|
+
};
|
|
51
|
+
enableSingleFold: {
|
|
52
|
+
type: BooleanConstructor;
|
|
53
|
+
default: true;
|
|
54
|
+
};
|
|
55
|
+
dot: {
|
|
56
|
+
type: BooleanConstructor;
|
|
57
|
+
default: boolean;
|
|
58
|
+
};
|
|
59
|
+
}>>, {
|
|
60
|
+
title: string;
|
|
61
|
+
dot: boolean;
|
|
62
|
+
defaultFold: boolean;
|
|
63
|
+
collapseCount: number;
|
|
64
|
+
processes: import("./Timeline").TimelineProcessOption[];
|
|
65
|
+
opinionKey: string;
|
|
66
|
+
enableSingleFold: boolean;
|
|
67
|
+
}>>;
|
|
68
|
+
export default Timeline;
|
|
69
|
+
export { timelineProps } from './Timeline';
|
|
70
|
+
export type { TimelineProcessOption, TimelineProps } from './Timeline';
|
|
71
|
+
declare module 'vue' {
|
|
72
|
+
interface GlobalComponents {
|
|
73
|
+
ZtTimeline: typeof Timeline;
|
|
74
|
+
}
|
|
75
|
+
}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { withInstall } from "../utils/index.mjs";
|
|
2
|
+
import _Timeline from "./Timeline.mjs";
|
|
3
|
+
const Timeline = withInstall(_Timeline);
|
|
4
|
+
var stdin_default = Timeline;
|
|
5
|
+
import { timelineProps } from "./Timeline.mjs";
|
|
6
|
+
export {
|
|
7
|
+
Timeline,
|
|
8
|
+
stdin_default as default,
|
|
9
|
+
timelineProps
|
|
10
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -195,8 +195,8 @@ declare const _default: import("vue").DefineComponent<{
|
|
|
195
195
|
onClickPreview?: ((...args: any[]) => any) | undefined;
|
|
196
196
|
}, {
|
|
197
197
|
name: string | number;
|
|
198
|
-
accept: string;
|
|
199
198
|
disabled: boolean;
|
|
199
|
+
accept: string;
|
|
200
200
|
modelValue: UploaderFileListItem[];
|
|
201
201
|
readonly: boolean;
|
|
202
202
|
multiple: boolean;
|
package/es/uploader/index.d.ts
CHANGED
|
@@ -128,8 +128,8 @@ export declare const Uploader: import("../utils").WithInstall<import("vue").Defi
|
|
|
128
128
|
onClickPreview?: ((...args: any[]) => any) | undefined;
|
|
129
129
|
}, {
|
|
130
130
|
name: string | number;
|
|
131
|
-
accept: string;
|
|
132
131
|
disabled: boolean;
|
|
132
|
+
accept: string;
|
|
133
133
|
modelValue: import("./types").UploaderFileListItem[];
|
|
134
134
|
readonly: boolean;
|
|
135
135
|
multiple: boolean;
|
package/es/uploader/utils.mjs
CHANGED
|
@@ -40,7 +40,7 @@ function filterFiles(items, maxSize) {
|
|
|
40
40
|
});
|
|
41
41
|
return { valid, invalid };
|
|
42
42
|
}
|
|
43
|
-
const IMAGE_REGEXP = /\.(jpeg|jpg|gif|png|svg|webp|jfif|bmp|dpg)/i;
|
|
43
|
+
const IMAGE_REGEXP = /\.(jpeg|jpg|gif|png|svg|webp|jfif|bmp|dpg|avif)/i;
|
|
44
44
|
const isImageUrl = (url) => IMAGE_REGEXP.test(url);
|
|
45
45
|
function isImageFile(item) {
|
|
46
46
|
if (item.isImage) {
|
package/es/utils/dom.d.ts
CHANGED
|
@@ -9,4 +9,5 @@ export declare function resetScroll(): void;
|
|
|
9
9
|
export declare const stopPropagation: (event: Event) => void;
|
|
10
10
|
export declare function preventDefault(event: Event, isStopPropagation?: boolean): void;
|
|
11
11
|
export declare function isHidden(elementRef: HTMLElement | Ref<HTMLElement | undefined>): boolean;
|
|
12
|
+
export declare function colorFromCSSClass(className: string, defaultColor: string): string;
|
|
12
13
|
export declare const windowWidth: Ref<number>, windowHeight: Ref<number>;
|
package/es/utils/dom.mjs
CHANGED
|
@@ -51,8 +51,19 @@ function isHidden(elementRef) {
|
|
|
51
51
|
const parentHidden = el.offsetParent === null && style.position !== "fixed";
|
|
52
52
|
return hidden || parentHidden;
|
|
53
53
|
}
|
|
54
|
+
function colorFromCSSClass(className, defaultColor) {
|
|
55
|
+
var _a;
|
|
56
|
+
const tmp = document.createElement("div");
|
|
57
|
+
tmp.style.cssText = "position:fixed;left:-100px;top:-100px;width:1px;height:1px";
|
|
58
|
+
tmp.className = className;
|
|
59
|
+
document.body.appendChild(tmp);
|
|
60
|
+
const classColor = (_a = getComputedStyle(tmp)) == null ? void 0 : _a.getPropertyValue("color");
|
|
61
|
+
document.body.removeChild(tmp);
|
|
62
|
+
return !classColor ? defaultColor : classColor;
|
|
63
|
+
}
|
|
54
64
|
const { width: windowWidth, height: windowHeight } = useWindowSize();
|
|
55
65
|
export {
|
|
66
|
+
colorFromCSSClass,
|
|
56
67
|
getElementTop,
|
|
57
68
|
getRootScrollTop,
|
|
58
69
|
getScrollTop,
|
|
@@ -17,6 +17,10 @@ var __copyProps = (to, from, except, desc) => {
|
|
|
17
17
|
return to;
|
|
18
18
|
};
|
|
19
19
|
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
|
|
20
|
+
// If the importer is in node compatibility mode or this is not an ESM
|
|
21
|
+
// file that has been converted to a CommonJS file using a Babel-
|
|
22
|
+
// compatible transform (i.e. "__esModule" has not been set), then set
|
|
23
|
+
// "default" to the CommonJS "module.exports" for node compatibility.
|
|
20
24
|
isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
|
|
21
25
|
mod
|
|
22
26
|
));
|
package/lib/avatar/Avatar.js
CHANGED
|
@@ -17,6 +17,10 @@ var __copyProps = (to, from, except, desc) => {
|
|
|
17
17
|
return to;
|
|
18
18
|
};
|
|
19
19
|
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
|
|
20
|
+
// If the importer is in node compatibility mode or this is not an ESM
|
|
21
|
+
// file that has been converted to a CommonJS file using a Babel-
|
|
22
|
+
// compatible transform (i.e. "__esModule" has not been set), then set
|
|
23
|
+
// "default" to the CommonJS "module.exports" for node compatibility.
|
|
20
24
|
isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
|
|
21
25
|
mod
|
|
22
26
|
));
|