zartui 2.1.6 → 2.1.8
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/action-sheet/index.js +15 -26
- package/es/area/index.js +5 -41
- package/es/avatar/index.js +3 -16
- package/es/back-top/index.js +4 -19
- package/es/badge/index.js +4 -12
- package/es/button/index.js +20 -40
- package/es/calendar/components/Header.js +3 -12
- package/es/calendar/components/Month.js +12 -65
- package/es/calendar/index.js +23 -94
- package/es/calendar/types.js +9 -15
- package/es/calendar/utils.js +5 -16
- package/es/cascader/index.js +4 -37
- package/es/cell/index.js +19 -37
- package/es/cell-group/index.js +5 -8
- package/es/checkbox/index.js +4 -11
- package/es/checkbox-group/index.js +4 -9
- package/es/col/index.js +6 -11
- package/es/collapse/index.js +2 -5
- package/es/collapse-item/index.js +19 -35
- package/es/count-down/index.js +2 -15
- package/es/count-down/utils.js +3 -10
- package/es/datetime-picker/DatePicker.js +12 -70
- package/es/datetime-picker/TimePicker.js +10 -23
- package/es/datetime-picker/index.js +2 -26
- package/es/datetime-picker/shared.js +5 -21
- package/es/datetime-picker/utils.js +0 -5
- package/es/dialog/Dialog.js +6 -21
- package/es/dialog/index.js +0 -16
- package/es/divider/index.js +5 -6
- package/es/dropdown-item/index.js +13 -39
- package/es/dropdown-menu/index.js +4 -9
- package/es/empty/images/Developing.js +0 -3
- package/es/empty/images/EmptyInterface.js +0 -3
- package/es/empty/images/EmptyResult.js +0 -3
- package/es/empty/images/FindNull.js +0 -3
- package/es/empty/images/NetworkError.js +0 -3
- package/es/empty/images/NotFound.js +0 -3
- package/es/empty/images/ReportSuccess.js +0 -3
- package/es/empty/images/Restricted.js +0 -3
- package/es/empty/images/ServerError.js +0 -3
- package/es/empty/index.js +3 -11
- package/es/field/index.js +21 -86
- package/es/fold-dialog/index.js +5 -20
- package/es/form/index.js +2 -18
- package/es/grid/index.js +2 -6
- package/es/grid-item/index.js +18 -30
- package/es/hierarchy-select/breadcrumb.js +2 -6
- package/es/hierarchy-select/index.js +4 -14
- package/es/hierarchy-select/markList.js +5 -30
- package/es/hierarchy-select/svg/SubIcon.js +0 -1
- package/es/icon/index.js +9 -13
- package/es/image/index.js +3 -19
- package/es/image-preview/ImagePreview.js +4 -8
- package/es/image-preview/ImagePreviewItem.js +14 -30
- package/es/image-preview/index.js +0 -12
- package/es/image-preview/shared.js +2 -4
- package/es/index-anchor/index.js +2 -6
- package/es/index-bar/IndexIndicate.js +0 -1
- package/es/index-bar/index.js +7 -28
- package/es/index.js +1 -4
- package/es/info/index.js +6 -8
- package/es/list/index.js +11 -27
- package/es/loading/index.js +7 -15
- package/es/locale/index.js +0 -2
- package/es/media-picker/index.js +35 -128
- package/es/media-picker/media-util.js +2 -5
- package/es/media-picker/type.js +9 -14
- package/es/media-picker/wx-util.js +0 -1
- package/es/media-player/index.js +7 -19
- package/es/mixins/bind-event.js +0 -3
- package/es/mixins/checkbox.js +5 -11
- package/es/mixins/click-outside.js +0 -2
- package/es/mixins/close-on-popstate.js +0 -1
- package/es/mixins/field.js +0 -2
- package/es/mixins/popup/index.js +12 -28
- package/es/mixins/popup/overlay.js +1 -11
- package/es/mixins/portal.js +2 -8
- package/es/mixins/relation.js +0 -8
- package/es/mixins/slots.js +1 -4
- package/es/mixins/touch.js +4 -9
- package/es/multiple-picker/MultiplePickerOptions.js +3 -20
- package/es/multiple-picker/index.js +5 -17
- package/es/nav-bar/index.js +4 -12
- package/es/notice-bar/index.js +10 -28
- package/es/number-keyboard/Key.js +2 -10
- package/es/number-keyboard/index.js +4 -19
- package/es/overlay/index.js +5 -8
- package/es/password-input/index.js +10 -16
- package/es/picker/PickerColumn.js +21 -56
- package/es/picker/index.js +12 -45
- package/es/popover/index.js +65 -90
- package/es/popup/index.js +5 -21
- package/es/pull-refresh/index.js +10 -29
- package/es/radio/index.js +2 -4
- package/es/radio-group/index.js +2 -4
- package/es/rate/index.js +12 -26
- package/es/row/index.js +3 -9
- package/es/search/index.js +9 -15
- package/es/signature/bezier.js +13 -20
- package/es/signature/force-landscape.js +0 -5
- package/es/signature/index.js +5 -24
- package/es/signature/point.js +1 -6
- package/es/signature/throttle.js +1 -10
- package/es/skeleton/index.js +5 -15
- package/es/slider/index.js +19 -55
- package/es/step/index.js +5 -12
- package/es/stepper/index.js +11 -39
- package/es/steps/index.js +2 -4
- package/es/sticky/index.js +8 -50
- package/es/swipe/index.js +19 -62
- package/es/swipe-cell/index.js +7 -23
- package/es/swipe-item/index.js +10 -19
- package/es/switch/index.js +8 -10
- package/es/switch/shared.js +1 -0
- package/es/switch-cell/index.js +7 -7
- package/es/tab/index.js +4 -15
- package/es/tabbar/index.js +4 -14
- package/es/tabbar-item/index.js +7 -15
- package/es/table/index.js +5 -28
- package/es/table/type.js +3 -4
- package/es/tabs/Content.js +5 -9
- package/es/tabs/Title.js +11 -20
- package/es/tabs/index.js +16 -51
- package/es/tabs/utils.js +0 -8
- package/es/tag/index.js +13 -17
- package/es/text-ellipsis/index.js +25 -42
- package/es/timeline/index.js +2 -25
- package/es/toast/Toast.js +11 -23
- package/es/toast/index.js +6 -33
- package/es/toast/lock-click.js +0 -2
- package/es/uploader/index.js +11 -62
- package/es/uploader/utils.js +0 -10
- package/es/utils/constant.js +2 -1
- package/es/utils/create/bem.js +1 -5
- package/es/utils/create/component.js +4 -8
- package/es/utils/create/i18n.js +0 -2
- package/es/utils/deep-assign.js +0 -4
- package/es/utils/deep-clone.js +0 -3
- package/es/utils/dom/event.js +2 -5
- package/es/utils/dom/node.js +0 -1
- package/es/utils/dom/raf.js +7 -6
- package/es/utils/dom/reset-scroll.js +2 -1
- package/es/utils/dom/scroll.js +8 -17
- package/es/utils/dom/style.js +3 -2
- package/es/utils/easings.js +2 -4
- package/es/utils/format/date-util.js +54 -122
- package/es/utils/format/number.js +2 -11
- package/es/utils/format/string.js +0 -3
- package/es/utils/format/unit.js +2 -12
- package/es/utils/functional.js +6 -9
- package/es/utils/getScroll.js +0 -5
- package/es/utils/index.js +3 -5
- package/es/utils/interceptor.js +2 -4
- package/es/utils/media/image-util.js +7 -19
- package/es/utils/raf.js +4 -12
- package/es/utils/router.js +7 -6
- package/es/utils/scrollTo.js +10 -15
- package/es/utils/validate/number.js +2 -2
- package/es/utils/vnodes.js +2 -8
- package/lib/action-sheet/index.js +12 -37
- package/lib/area/index.js +7 -48
- package/lib/avatar/index.js +5 -21
- package/lib/back-top/index.js +6 -28
- package/lib/badge/index.js +6 -18
- package/lib/button/index.js +20 -52
- package/lib/calendar/FastForwardImg.js +2 -3
- package/lib/calendar/SlowForwardImg.js +2 -3
- package/lib/calendar/components/Header.js +5 -21
- package/lib/calendar/components/Month.js +14 -74
- package/lib/calendar/index.js +23 -109
- package/lib/calendar/types.js +11 -22
- package/lib/calendar/utils.js +18 -46
- package/lib/cascader/index.js +6 -49
- package/lib/cell/index.js +19 -50
- package/lib/cell/shared.js +2 -3
- package/lib/cell-group/index.js +6 -17
- package/lib/checkbox/index.js +6 -17
- package/lib/checkbox-group/index.js +6 -16
- package/lib/col/index.js +8 -17
- package/lib/collapse/index.js +4 -11
- package/lib/collapse-item/index.js +20 -46
- package/lib/count-down/index.js +4 -22
- package/lib/count-down/utils.js +5 -17
- package/lib/datetime-picker/DatePicker.js +14 -84
- package/lib/datetime-picker/TimePicker.js +12 -33
- package/lib/datetime-picker/index.js +7 -41
- package/lib/datetime-picker/shared.js +9 -35
- package/lib/datetime-picker/utils.js +2 -11
- package/lib/dialog/Dialog.js +8 -31
- package/lib/dialog/index.js +1 -24
- package/lib/divider/index.js +6 -14
- package/lib/dropdown-item/index.js +14 -52
- package/lib/dropdown-menu/index.js +6 -18
- package/lib/empty/context.js +2 -3
- package/lib/empty/images/Developing.js +2 -9
- package/lib/empty/images/EmptyInterface.js +2 -9
- package/lib/empty/images/EmptyResult.js +2 -9
- package/lib/empty/images/FindNull.js +2 -9
- package/lib/empty/images/NetworkError.js +2 -9
- package/lib/empty/images/NotFound.js +2 -9
- package/lib/empty/images/ReportSuccess.js +2 -9
- package/lib/empty/images/Restricted.js +2 -9
- package/lib/empty/images/ServerError.js +2 -9
- package/lib/empty/index.js +5 -26
- package/lib/field/ClearIcon.js +2 -3
- package/lib/field/SearchIcon.js +2 -3
- package/lib/field/index.js +22 -99
- package/lib/fold-dialog/index.js +7 -25
- package/lib/form/index.js +4 -24
- package/lib/grid/index.js +4 -13
- package/lib/grid-item/index.js +19 -40
- package/lib/hierarchy-select/breadcrumb.js +5 -13
- package/lib/hierarchy-select/index.js +7 -25
- package/lib/hierarchy-select/markList.js +8 -39
- package/lib/hierarchy-select/svg/SubIcon.js +2 -4
- package/lib/icon/index.js +9 -21
- package/lib/image/index.js +4 -25
- package/lib/image-preview/ImagePreview.js +2 -19
- package/lib/image-preview/ImagePreviewItem.js +15 -39
- package/lib/image-preview/index.js +1 -18
- package/lib/image-preview/shared.js +3 -8
- package/lib/index-anchor/index.js +4 -14
- package/lib/index-bar/IndexIndicate.js +2 -4
- package/lib/index-bar/index.js +9 -40
- package/lib/index.js +5 -164
- package/lib/info/index.js +7 -16
- package/lib/lazyload/index.js +1 -5
- package/lib/list/index.js +12 -36
- package/lib/loading/index.js +8 -23
- package/lib/locale/index.js +2 -10
- package/lib/locale/lang/de-DE-formal.js +2 -3
- package/lib/locale/lang/de-DE.js +2 -3
- package/lib/locale/lang/en-US.js +2 -3
- package/lib/locale/lang/es-ES.js +2 -3
- package/lib/locale/lang/fr-FR.js +2 -3
- package/lib/locale/lang/ja-JP.js +2 -3
- package/lib/locale/lang/nb-NO.js +2 -3
- package/lib/locale/lang/ro-RO.js +2 -3
- package/lib/locale/lang/th-TH.js +2 -3
- package/lib/locale/lang/tr-TR.js +2 -3
- package/lib/locale/lang/zh-CN.js +2 -3
- package/lib/locale/lang/zh-HK.js +2 -3
- package/lib/locale/lang/zh-TW.js +2 -3
- package/lib/media-picker/image/DefaultAudioIcon.js +2 -3
- package/lib/media-picker/image/DefaultDocIcon.js +2 -3
- package/lib/media-picker/image/DefaultExcelIcon.js +2 -3
- package/lib/media-picker/image/DefaultFileIcon.js +2 -3
- package/lib/media-picker/image/DefaultPdfIcon.js +2 -3
- package/lib/media-picker/image/DefaultPptIcon.js +2 -3
- package/lib/media-picker/image/DefaultTextIcon.js +2 -3
- package/lib/media-picker/image/DefaultVideoIcon.js +2 -3
- package/lib/media-picker/image/DeleteIcon.js +2 -3
- package/lib/media-picker/image/Img64.js +4 -7
- package/lib/media-picker/image/PickFileIcon.js +2 -3
- package/lib/media-picker/image/PickPhotoIcon.js +2 -3
- package/lib/media-picker/image/ReUpload.js +2 -3
- package/lib/media-picker/image/TakeAudioIcon.js +2 -3
- package/lib/media-picker/image/TakePhotoIcon.js +2 -3
- package/lib/media-picker/image/TakeVideoIcon.js +2 -3
- package/lib/media-picker/index.js +33 -172
- package/lib/media-picker/media-util.js +9 -22
- package/lib/media-picker/type.js +10 -18
- package/lib/media-picker/wx-util.js +4 -15
- package/lib/media-player/index.js +8 -27
- package/lib/mixins/bind-event.js +1 -6
- package/lib/mixins/checkbox.js +8 -21
- package/lib/mixins/click-outside.js +3 -8
- package/lib/mixins/close-on-popstate.js +2 -7
- package/lib/mixins/field.js +2 -5
- package/lib/mixins/popup/context.js +2 -3
- package/lib/mixins/popup/index.js +12 -38
- package/lib/mixins/popup/overlay.js +3 -25
- package/lib/mixins/portal.js +2 -9
- package/lib/mixins/relation.js +0 -11
- package/lib/mixins/slots.js +3 -8
- package/lib/mixins/touch.js +6 -14
- package/lib/multiple-picker/MultiplePickerOptions.js +4 -26
- package/lib/multiple-picker/index.js +7 -29
- package/lib/multiple-picker/shared.js +3 -5
- package/lib/nav-bar/index.js +6 -19
- package/lib/notice-bar/CloseIcon.js +2 -3
- package/lib/notice-bar/MenuIcon.js +2 -3
- package/lib/notice-bar/NoticeIcon.js +2 -3
- package/lib/notice-bar/OpenIcon.js +2 -3
- package/lib/notice-bar/TipIcon.js +2 -3
- package/lib/notice-bar/WarningIcon.js +2 -3
- package/lib/notice-bar/index.js +12 -43
- package/lib/number-keyboard/CollapseIcon.js +2 -3
- package/lib/number-keyboard/DeleteIcon.js +2 -3
- package/lib/number-keyboard/Key.js +4 -20
- package/lib/number-keyboard/index.js +6 -29
- package/lib/overlay/index.js +6 -18
- package/lib/password-input/index.js +11 -25
- package/lib/picker/PickerColumn.js +24 -71
- package/lib/picker/index.js +14 -59
- package/lib/picker/shared.js +3 -5
- package/lib/popover/index.js +65 -104
- package/lib/popup/index.js +7 -30
- package/lib/pull-refresh/index.js +11 -38
- package/lib/radio/index.js +4 -10
- package/lib/radio-group/index.js +4 -11
- package/lib/rate/index.js +13 -34
- package/lib/row/index.js +5 -15
- package/lib/search/index.js +8 -23
- package/lib/signature/bezier.js +14 -25
- package/lib/signature/force-landscape.js +5 -19
- package/lib/signature/index.js +8 -34
- package/lib/signature/point.js +2 -11
- package/lib/signature/throttle.js +1 -11
- package/lib/skeleton/index.js +6 -23
- package/lib/slider/index.js +21 -66
- package/lib/step/index.js +7 -21
- package/lib/stepper/index.js +12 -49
- package/lib/steps/index.js +4 -10
- package/lib/sticky/index.js +10 -62
- package/lib/swipe/index.js +21 -73
- package/lib/swipe-cell/index.js +9 -32
- package/lib/swipe-item/index.js +12 -27
- package/lib/switch/index.js +9 -17
- package/lib/switch/shared.js +3 -4
- package/lib/switch-cell/index.js +7 -18
- package/lib/tab/index.js +6 -24
- package/lib/tabbar/index.js +6 -22
- package/lib/tabbar-item/index.js +7 -24
- package/lib/table/index.js +7 -38
- package/lib/table/type.js +3 -5
- package/lib/tabs/Content.js +7 -18
- package/lib/tabs/Title.js +13 -27
- package/lib/tabs/index.js +17 -68
- package/lib/tabs/utils.js +0 -13
- package/lib/tag/index.js +13 -25
- package/lib/text-ellipsis/index.js +27 -49
- package/lib/timeline/index.js +4 -35
- package/lib/timeline/svg/current.js +2 -3
- package/lib/timeline/svg/pass.js +2 -3
- package/lib/toast/Toast.js +12 -33
- package/lib/toast/index.js +7 -40
- package/lib/toast/lock-click.js +0 -3
- package/lib/toast/svg/SuccessIcon.js +2 -3
- package/lib/toast/svg/WarnIcon.js +2 -3
- package/lib/uploader/index.js +12 -75
- package/lib/uploader/utils.js +4 -21
- package/lib/utils/constant.js +12 -21
- package/lib/utils/create/bem.js +1 -6
- package/lib/utils/create/component.js +6 -17
- package/lib/utils/create/i18n.js +0 -8
- package/lib/utils/create/index.js +0 -4
- package/lib/utils/deep-assign.js +0 -6
- package/lib/utils/deep-clone.js +0 -5
- package/lib/utils/device.js +1 -3
- package/lib/utils/dom/event.js +5 -14
- package/lib/utils/dom/node.js +0 -2
- package/lib/utils/dom/raf.js +9 -13
- package/lib/utils/dom/reset-scroll.js +2 -4
- package/lib/utils/dom/scroll.js +16 -37
- package/lib/utils/dom/style.js +3 -3
- package/lib/utils/easings.js +2 -5
- package/lib/utils/format/date-util.js +88 -203
- package/lib/utils/format/number.js +4 -15
- package/lib/utils/format/string.js +0 -5
- package/lib/utils/format/unit.js +2 -16
- package/lib/utils/functional.js +7 -15
- package/lib/utils/getScroll.js +1 -8
- package/lib/utils/index.js +10 -26
- package/lib/utils/interceptor.js +2 -6
- package/lib/utils/media/image-util.js +10 -28
- package/lib/utils/raf.js +4 -13
- package/lib/utils/router.js +10 -13
- package/lib/utils/scrollTo.js +12 -24
- package/lib/utils/validate/date.js +0 -2
- package/lib/utils/validate/email.js +0 -1
- package/lib/utils/validate/mobile.js +0 -1
- package/lib/utils/validate/number.js +3 -5
- package/lib/utils/validate/system.js +0 -3
- package/lib/utils/vnodes.js +2 -9
- package/lib/zart.js +2325 -4752
- package/lib/zart.min.js +7 -1
- package/package.json +1 -1
package/es/button/index.js
CHANGED
|
@@ -4,71 +4,63 @@ import _mergeJSXProps from "@vue/babel-helper-vue-jsx-merge-props";
|
|
|
4
4
|
import { createNamespace } from '../utils';
|
|
5
5
|
import { emit, inherit } from '../utils/functional';
|
|
6
6
|
import { BORDER_SURROUND } from '../utils/constant';
|
|
7
|
-
import { routeProps, functionalRoute } from '../utils/router';
|
|
7
|
+
import { routeProps, functionalRoute } from '../utils/router';
|
|
8
8
|
|
|
9
|
+
// Components
|
|
9
10
|
import Icon from '../icon';
|
|
10
|
-
import Loading from '../loading';
|
|
11
|
+
import Loading from '../loading';
|
|
11
12
|
|
|
12
|
-
|
|
13
|
-
createComponent = _createNamespace[0],
|
|
14
|
-
bem = _createNamespace[1];
|
|
13
|
+
// Types
|
|
15
14
|
|
|
15
|
+
var _createNamespace = createNamespace('button'),
|
|
16
|
+
createComponent = _createNamespace[0],
|
|
17
|
+
bem = _createNamespace[1];
|
|
16
18
|
function Button(h, props, slots, ctx) {
|
|
17
19
|
var _ref;
|
|
18
|
-
|
|
19
20
|
var tag = props.tag,
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
21
|
+
icon = props.icon,
|
|
22
|
+
type = props.type,
|
|
23
|
+
color = props.color,
|
|
24
|
+
plain = props.plain,
|
|
25
|
+
disabled = props.disabled,
|
|
26
|
+
loading = props.loading,
|
|
27
|
+
blockInner = props.blockInner,
|
|
28
|
+
borderLess = props.borderLess,
|
|
29
|
+
hairline = props.hairline,
|
|
30
|
+
loadingText = props.loadingText,
|
|
31
|
+
iconPosition = props.iconPosition,
|
|
32
|
+
backgroundColor = props.backgroundColor,
|
|
33
|
+
borderColor = props.borderColor;
|
|
33
34
|
var style = {};
|
|
34
|
-
|
|
35
35
|
if (backgroundColor) {
|
|
36
36
|
style.background = backgroundColor;
|
|
37
|
-
|
|
38
37
|
if (backgroundColor.includes('gradient')) {
|
|
39
38
|
style.border = 0;
|
|
40
39
|
} else {
|
|
41
40
|
style.borderColor = backgroundColor;
|
|
42
41
|
}
|
|
43
42
|
}
|
|
44
|
-
|
|
45
43
|
if (borderColor) {
|
|
46
44
|
style.borderColor = borderColor;
|
|
47
45
|
}
|
|
48
|
-
|
|
49
46
|
if (color) {
|
|
50
47
|
style.color = color;
|
|
51
48
|
}
|
|
52
|
-
|
|
53
49
|
if (borderLess) {
|
|
54
50
|
style.border = 0;
|
|
55
51
|
}
|
|
56
|
-
|
|
57
52
|
function onClick(event) {
|
|
58
53
|
if (props.loading) {
|
|
59
54
|
event.preventDefault();
|
|
60
55
|
}
|
|
61
|
-
|
|
62
56
|
if (!loading && !disabled) {
|
|
63
57
|
emit(ctx, 'click', event);
|
|
64
58
|
functionalRoute(ctx);
|
|
65
59
|
}
|
|
66
60
|
}
|
|
67
|
-
|
|
68
61
|
function onTouchstart(event) {
|
|
69
62
|
emit(ctx, 'touchstart', event);
|
|
70
63
|
}
|
|
71
|
-
|
|
72
64
|
var classes = [bem([type, props.size, {
|
|
73
65
|
plain: plain,
|
|
74
66
|
loading: loading,
|
|
@@ -79,7 +71,6 @@ function Button(h, props, slots, ctx) {
|
|
|
79
71
|
round: props.round,
|
|
80
72
|
square: props.square
|
|
81
73
|
}]), (_ref = {}, _ref[BORDER_SURROUND] = hairline, _ref)];
|
|
82
|
-
|
|
83
74
|
function renderIcon() {
|
|
84
75
|
if (loading) {
|
|
85
76
|
return slots.loading ? slots.loading() : h(Loading, {
|
|
@@ -91,13 +82,11 @@ function Button(h, props, slots, ctx) {
|
|
|
91
82
|
}
|
|
92
83
|
});
|
|
93
84
|
}
|
|
94
|
-
|
|
95
85
|
if (slots.icon) {
|
|
96
86
|
return h("div", {
|
|
97
87
|
"class": bem('icon', props.size)
|
|
98
88
|
}, [slots.icon()]);
|
|
99
89
|
}
|
|
100
|
-
|
|
101
90
|
if (icon) {
|
|
102
91
|
return h(Icon, {
|
|
103
92
|
"attrs": {
|
|
@@ -108,35 +97,27 @@ function Button(h, props, slots, ctx) {
|
|
|
108
97
|
});
|
|
109
98
|
}
|
|
110
99
|
}
|
|
111
|
-
|
|
112
100
|
function renderContent() {
|
|
113
101
|
var content = [];
|
|
114
|
-
|
|
115
102
|
if (iconPosition === 'left') {
|
|
116
103
|
content.push(renderIcon());
|
|
117
104
|
}
|
|
118
|
-
|
|
119
105
|
var text;
|
|
120
|
-
|
|
121
106
|
if (loading) {
|
|
122
107
|
text = loadingText;
|
|
123
108
|
} else {
|
|
124
109
|
text = slots.default ? slots.default() : props.text;
|
|
125
110
|
}
|
|
126
|
-
|
|
127
111
|
if (text) {
|
|
128
112
|
content.push(h("span", {
|
|
129
113
|
"class": bem('text')
|
|
130
114
|
}, [text]));
|
|
131
115
|
}
|
|
132
|
-
|
|
133
116
|
if (iconPosition === 'right') {
|
|
134
117
|
content.push(renderIcon());
|
|
135
118
|
}
|
|
136
|
-
|
|
137
119
|
return content;
|
|
138
120
|
}
|
|
139
|
-
|
|
140
121
|
return h(tag, _mergeJSXProps([{
|
|
141
122
|
"style": style,
|
|
142
123
|
"class": classes,
|
|
@@ -152,7 +133,6 @@ function Button(h, props, slots, ctx) {
|
|
|
152
133
|
"class": bem('content')
|
|
153
134
|
}, [renderContent()])]);
|
|
154
135
|
}
|
|
155
|
-
|
|
156
136
|
Button.props = _extends({}, routeProps, {
|
|
157
137
|
text: String,
|
|
158
138
|
icon: String,
|
|
@@ -2,10 +2,8 @@ import { createNamespace } from '../../utils';
|
|
|
2
2
|
import { t, bem } from '../utils';
|
|
3
3
|
import FastForwardImg from "../FastForwardImg";
|
|
4
4
|
import SlowForwardImg from "../SlowForwardImg";
|
|
5
|
-
|
|
6
5
|
var _createNamespace = createNamespace('calendar-header'),
|
|
7
|
-
|
|
8
|
-
|
|
6
|
+
createComponent = _createNamespace[0];
|
|
9
7
|
export default createComponent({
|
|
10
8
|
props: {
|
|
11
9
|
color: String,
|
|
@@ -23,7 +21,6 @@ export default createComponent({
|
|
|
23
21
|
methods: {
|
|
24
22
|
genTitle: function genTitle() {
|
|
25
23
|
var h = this.$createElement;
|
|
26
|
-
|
|
27
24
|
if (this.showTitle) {
|
|
28
25
|
var title = this.slots('title') || this.title || t('title');
|
|
29
26
|
return h("div", {
|
|
@@ -35,21 +32,17 @@ export default createComponent({
|
|
|
35
32
|
if (isMonth && !this.monthPreEnable || isYear && !this.yearPreEnable) {
|
|
36
33
|
return;
|
|
37
34
|
}
|
|
38
|
-
|
|
39
35
|
this.$emit('clickPreIcon', isMonth, isYear);
|
|
40
36
|
},
|
|
41
37
|
onClickNextIcon: function onClickNextIcon(isMonth, isYear) {
|
|
42
38
|
if (isMonth && !this.monthNextEnable || isYear && !this.yearNextEnable) {
|
|
43
39
|
return;
|
|
44
40
|
}
|
|
45
|
-
|
|
46
41
|
this.$emit('clickNextIcon', isMonth, isYear);
|
|
47
42
|
},
|
|
48
43
|
genSubtitle: function genSubtitle() {
|
|
49
44
|
var _this = this;
|
|
50
|
-
|
|
51
45
|
var h = this.$createElement;
|
|
52
|
-
|
|
53
46
|
if (this.showSubtitle) {
|
|
54
47
|
return h("div", {
|
|
55
48
|
"class": bem('header-subtitle')
|
|
@@ -100,13 +93,11 @@ export default createComponent({
|
|
|
100
93
|
},
|
|
101
94
|
genWeekDays: function genWeekDays() {
|
|
102
95
|
var h = this.$createElement;
|
|
103
|
-
|
|
104
96
|
if (!this.showWeekDays) {
|
|
105
97
|
return null;
|
|
106
98
|
}
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
99
|
+
var weekdays = t('weekdays');
|
|
100
|
+
// console.log(" weekdays " + JSON.stringify(weekdays));
|
|
110
101
|
var firstDayOfWeek = this.firstDayOfWeek;
|
|
111
102
|
var renderWeekDays = [].concat(weekdays.slice(firstDayOfWeek, 7), weekdays.slice(0, firstDayOfWeek));
|
|
112
103
|
return h("div", {
|
|
@@ -3,10 +3,8 @@ import { setScrollTop } from '../../utils/dom/scroll';
|
|
|
3
3
|
import { t, bem, compareDay, getPrevDay, getNextDay, formatMonthTitle } from '../utils';
|
|
4
4
|
import { CalendarShowType, CalendarDayType, CalendarTotalDay } from '../types';
|
|
5
5
|
import { getMonthEndDay } from '../../datetime-picker/utils';
|
|
6
|
-
|
|
7
6
|
var _createNamespace = createNamespace('calendar-month'),
|
|
8
|
-
|
|
9
|
-
|
|
7
|
+
createComponent = _createNamespace[0];
|
|
10
8
|
export default createComponent({
|
|
11
9
|
props: {
|
|
12
10
|
showType: String,
|
|
@@ -41,11 +39,9 @@ export default createComponent({
|
|
|
41
39
|
offset: function offset() {
|
|
42
40
|
var firstDayOfWeek = this.firstDayOfWeek;
|
|
43
41
|
var realDay = this.date.getDay();
|
|
44
|
-
|
|
45
42
|
if (!firstDayOfWeek) {
|
|
46
43
|
return realDay;
|
|
47
44
|
}
|
|
48
|
-
|
|
49
45
|
return (realDay + 7 - this.firstDayOfWeek) % 7;
|
|
50
46
|
},
|
|
51
47
|
totalDay: function totalDay() {
|
|
@@ -57,20 +53,17 @@ export default createComponent({
|
|
|
57
53
|
placeholders: function placeholders() {
|
|
58
54
|
var rows = [];
|
|
59
55
|
var count = Math.ceil((this.totalDay + this.offset) / 7);
|
|
60
|
-
|
|
61
56
|
for (var day = 1; day <= count; day++) {
|
|
62
57
|
rows.push({
|
|
63
58
|
type: 'placeholder'
|
|
64
59
|
});
|
|
65
60
|
}
|
|
66
|
-
|
|
67
61
|
return rows;
|
|
68
62
|
},
|
|
69
63
|
days: function days() {
|
|
70
64
|
var days = [];
|
|
71
65
|
var year = this.date.getFullYear();
|
|
72
66
|
var month = this.date.getMonth();
|
|
73
|
-
|
|
74
67
|
if (this.showType && this.showType === CalendarShowType.INLINE) {
|
|
75
68
|
for (var day = this.offset - 1; day >= 0; day--) {
|
|
76
69
|
var date = new Date(year, month, -day);
|
|
@@ -81,57 +74,43 @@ export default createComponent({
|
|
|
81
74
|
text: date.getDate(),
|
|
82
75
|
bottomInfo: this.getBottomInfo(type)
|
|
83
76
|
};
|
|
84
|
-
|
|
85
77
|
if (this.formatter) {
|
|
86
78
|
config = this.formatter(config);
|
|
87
79
|
}
|
|
88
|
-
|
|
89
80
|
days.push(config);
|
|
90
81
|
}
|
|
91
82
|
}
|
|
92
|
-
|
|
93
83
|
for (var _day = 1; _day <= this.totalDay; _day++) {
|
|
94
84
|
var _date = new Date(year, month, _day);
|
|
95
|
-
|
|
96
85
|
var _type = this.getDayType(_date);
|
|
97
|
-
|
|
98
86
|
var _config = {
|
|
99
87
|
date: _date,
|
|
100
88
|
type: _type,
|
|
101
89
|
text: _day,
|
|
102
90
|
bottomInfo: this.getBottomInfo(_type)
|
|
103
91
|
};
|
|
104
|
-
|
|
105
92
|
if (this.formatter) {
|
|
106
93
|
_config = this.formatter(_config);
|
|
107
94
|
}
|
|
108
|
-
|
|
109
95
|
days.push(_config);
|
|
110
96
|
}
|
|
111
|
-
|
|
112
97
|
if (this.showType && this.showType === CalendarShowType.INLINE && days && days.length < CalendarTotalDay) {
|
|
113
98
|
var nextMonthsLength = days.length;
|
|
114
|
-
|
|
115
99
|
for (var _day2 = 1; _day2 <= CalendarTotalDay - nextMonthsLength; _day2++) {
|
|
116
100
|
var _date2 = new Date(year, month + 1, _day2);
|
|
117
|
-
|
|
118
101
|
var _type2 = this.getDayType(_date2, CalendarDayType.PREVIEW);
|
|
119
|
-
|
|
120
102
|
var _config2 = {
|
|
121
103
|
date: _date2,
|
|
122
104
|
type: _type2,
|
|
123
105
|
text: _date2.getDate(),
|
|
124
106
|
bottomInfo: this.getBottomInfo(_type2)
|
|
125
107
|
};
|
|
126
|
-
|
|
127
108
|
if (this.formatter) {
|
|
128
109
|
_config2 = this.formatter(_config2);
|
|
129
110
|
}
|
|
130
|
-
|
|
131
111
|
days.push(_config2);
|
|
132
112
|
}
|
|
133
113
|
}
|
|
134
|
-
|
|
135
114
|
return days;
|
|
136
115
|
}
|
|
137
116
|
},
|
|
@@ -140,7 +119,6 @@ export default createComponent({
|
|
|
140
119
|
if (!this.height) {
|
|
141
120
|
this.height = this.$el.getBoundingClientRect().height;
|
|
142
121
|
}
|
|
143
|
-
|
|
144
122
|
return this.height;
|
|
145
123
|
},
|
|
146
124
|
getMonthTitle: function getMonthTitle() {
|
|
@@ -148,107 +126,88 @@ export default createComponent({
|
|
|
148
126
|
},
|
|
149
127
|
scrollIntoView: function scrollIntoView(body) {
|
|
150
128
|
var _this$$refs = this.$refs,
|
|
151
|
-
|
|
152
|
-
|
|
129
|
+
days = _this$$refs.days,
|
|
130
|
+
month = _this$$refs.month;
|
|
153
131
|
var el = this.showSubtitle ? days : month;
|
|
154
132
|
var scrollTop = el.getBoundingClientRect().top - body.getBoundingClientRect().top + body.scrollTop;
|
|
155
133
|
setScrollTop(body, scrollTop);
|
|
156
134
|
},
|
|
157
135
|
getMultipleDayType: function getMultipleDayType(day) {
|
|
158
136
|
var _this = this;
|
|
159
|
-
|
|
160
137
|
var isSelected = function isSelected(date) {
|
|
161
138
|
return _this.currentDate.some(function (item) {
|
|
162
139
|
return compareDay(item, date) === 0;
|
|
163
140
|
});
|
|
164
141
|
};
|
|
165
|
-
|
|
166
142
|
if (isSelected(day)) {
|
|
167
143
|
var prevDay = getPrevDay(day);
|
|
168
144
|
var nextDay = getNextDay(day);
|
|
169
145
|
var prevSelected = isSelected(prevDay);
|
|
170
146
|
var nextSelected = isSelected(nextDay);
|
|
171
|
-
|
|
172
147
|
if (prevSelected && nextSelected) {
|
|
173
148
|
return 'multiple-middle';
|
|
174
149
|
}
|
|
175
|
-
|
|
176
150
|
if (prevSelected) {
|
|
177
151
|
return 'end';
|
|
178
152
|
}
|
|
179
|
-
|
|
180
153
|
return nextSelected ? 'start' : 'multiple-selected';
|
|
181
154
|
}
|
|
182
|
-
|
|
183
155
|
return '';
|
|
184
156
|
},
|
|
185
157
|
getRangeDayType: function getRangeDayType(day) {
|
|
186
158
|
var _this$currentDate = this.currentDate,
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
159
|
+
startDay = _this$currentDate[0],
|
|
160
|
+
endDay = _this$currentDate[1];
|
|
190
161
|
if (!startDay) {
|
|
191
162
|
return '';
|
|
192
163
|
}
|
|
193
|
-
|
|
194
164
|
var compareToStart = compareDay(day, startDay);
|
|
195
|
-
|
|
196
165
|
if (!endDay) {
|
|
197
166
|
return compareToStart === 0 ? 'start' : '';
|
|
198
167
|
}
|
|
199
|
-
|
|
200
168
|
var compareToEnd = compareDay(day, endDay);
|
|
201
|
-
|
|
202
169
|
if (compareToStart === 0 && compareToEnd === 0 && this.allowSameDay) {
|
|
203
170
|
return 'start-end';
|
|
204
171
|
}
|
|
205
|
-
|
|
206
172
|
if (compareToStart === 0) {
|
|
207
173
|
return 'start';
|
|
208
174
|
}
|
|
209
|
-
|
|
210
175
|
if (compareToEnd === 0) {
|
|
211
176
|
return 'end';
|
|
212
177
|
}
|
|
213
|
-
|
|
214
178
|
if (compareToStart > 0 && compareToEnd < 0) {
|
|
215
179
|
return 'middle';
|
|
216
180
|
}
|
|
217
181
|
},
|
|
218
182
|
getDayType: function getDayType(day, defaultType) {
|
|
219
183
|
var type = this.type,
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
184
|
+
minDate = this.minDate,
|
|
185
|
+
maxDate = this.maxDate,
|
|
186
|
+
currentDate = this.currentDate;
|
|
224
187
|
if (minDate && compareDay(day, minDate) < 0 || maxDate && compareDay(day, maxDate) > 0 || this.disabledDate && this.disabledDate(day)) {
|
|
225
188
|
return 'disabled';
|
|
226
189
|
}
|
|
227
|
-
|
|
228
190
|
if (defaultType) {
|
|
229
191
|
// 仅考虑disable以及defaultType
|
|
230
192
|
return defaultType;
|
|
231
193
|
}
|
|
232
|
-
|
|
233
194
|
if (currentDate === null) {
|
|
234
195
|
return;
|
|
235
196
|
}
|
|
236
|
-
|
|
237
197
|
if (type === 'single') {
|
|
238
198
|
return compareDay(day, currentDate) === 0 ? 'selected' : '';
|
|
239
199
|
}
|
|
240
|
-
|
|
241
200
|
if (type === 'multiple') {
|
|
242
201
|
return this.getMultipleDayType(day);
|
|
243
202
|
}
|
|
244
|
-
/* istanbul ignore else */
|
|
245
|
-
|
|
246
203
|
|
|
204
|
+
/* istanbul ignore else */
|
|
247
205
|
if (type === 'range') {
|
|
248
206
|
return this.getRangeDayType(day);
|
|
249
207
|
}
|
|
250
208
|
},
|
|
251
|
-
getBottomInfo: function getBottomInfo(type) {
|
|
209
|
+
getBottomInfo: function getBottomInfo(type) {
|
|
210
|
+
// 目前选择日期区间时,不需要底部展示开始与结束提示
|
|
252
211
|
// if (this.type === 'range') {
|
|
253
212
|
// if (type === 'start' || type === 'end') {
|
|
254
213
|
// return t(type);
|
|
@@ -262,16 +221,13 @@ export default createComponent({
|
|
|
262
221
|
var style = {
|
|
263
222
|
height: this.rowHeightWithUnit
|
|
264
223
|
};
|
|
265
|
-
|
|
266
224
|
if (type === 'placeholder') {
|
|
267
225
|
style.width = '100%';
|
|
268
226
|
return style;
|
|
269
227
|
}
|
|
270
|
-
|
|
271
228
|
if (index === 0 && text && +text === 1) {
|
|
272
229
|
style.marginLeft = 100 * this.offset / 7 + "%";
|
|
273
230
|
}
|
|
274
|
-
|
|
275
231
|
if (this.color) {
|
|
276
232
|
if (type === 'start' || type === 'end' || type === 'start-end' || type === 'multiple-selected' || type === 'multiple-middle') {
|
|
277
233
|
style.background = this.color;
|
|
@@ -279,12 +235,10 @@ export default createComponent({
|
|
|
279
235
|
style.color = this.color;
|
|
280
236
|
}
|
|
281
237
|
}
|
|
282
|
-
|
|
283
238
|
return style;
|
|
284
239
|
},
|
|
285
240
|
genTitle: function genTitle() {
|
|
286
241
|
var h = this.$createElement;
|
|
287
|
-
|
|
288
242
|
if (this.showMonthTitle) {
|
|
289
243
|
var currentTitle = this.getMonthTitle();
|
|
290
244
|
return h("div", {
|
|
@@ -294,7 +248,6 @@ export default createComponent({
|
|
|
294
248
|
},
|
|
295
249
|
genMark: function genMark() {
|
|
296
250
|
var h = this.$createElement;
|
|
297
|
-
|
|
298
251
|
if (this.showMark && this.shouldRender) {
|
|
299
252
|
return h("div", {
|
|
300
253
|
"class": bem('month-mark')
|
|
@@ -315,7 +268,6 @@ export default createComponent({
|
|
|
315
268
|
genTopInfo: function genTopInfo(item) {
|
|
316
269
|
var h = this.$createElement;
|
|
317
270
|
var slot = this.$scopedSlots['top-info'];
|
|
318
|
-
|
|
319
271
|
if (item.topInfo || slot) {
|
|
320
272
|
return h("div", {
|
|
321
273
|
"class": bem('top-info')
|
|
@@ -327,7 +279,6 @@ export default createComponent({
|
|
|
327
279
|
genBottomInfo: function genBottomInfo(item) {
|
|
328
280
|
var h = this.$createElement;
|
|
329
281
|
var slot = this.$scopedSlots['bottom-info'];
|
|
330
|
-
|
|
331
282
|
if (item.bottomInfo || slot) {
|
|
332
283
|
return h("div", {
|
|
333
284
|
"class": bem('bottom-info')
|
|
@@ -336,19 +287,16 @@ export default createComponent({
|
|
|
336
287
|
},
|
|
337
288
|
genDay: function genDay(item, index) {
|
|
338
289
|
var _this2 = this;
|
|
339
|
-
|
|
340
290
|
var h = this.$createElement;
|
|
341
291
|
var type = item.type,
|
|
342
|
-
|
|
292
|
+
text = item.text;
|
|
343
293
|
var style = this.getDayStyle(type, index, text);
|
|
344
294
|
var disabled = type === 'disabled';
|
|
345
|
-
|
|
346
295
|
var onClick = function onClick() {
|
|
347
296
|
if (!disabled) {
|
|
348
297
|
_this2.$emit('click', item);
|
|
349
298
|
}
|
|
350
299
|
};
|
|
351
|
-
|
|
352
300
|
if (type === 'selected') {
|
|
353
301
|
return h("div", {
|
|
354
302
|
"attrs": {
|
|
@@ -369,7 +317,6 @@ export default createComponent({
|
|
|
369
317
|
}
|
|
370
318
|
}, [this.genTopInfo(item), item.text, this.genBottomInfo(item)])]);
|
|
371
319
|
}
|
|
372
|
-
|
|
373
320
|
return h("div", {
|
|
374
321
|
"attrs": {
|
|
375
322
|
"role": "gridcell",
|