@king-design/vue 2.0.0-beta.1 → 2.0.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/__tests__/__snapshots__/Vue Next Demos.md +1795 -0
- package/__tests__/components/dropdown.spec.ts +72 -0
- package/__tests__/components/select.spec.ts +29 -0
- package/__tests__/index.ts +46 -0
- package/__tests__/karma.conf.js +54 -0
- package/__tests__/webpack.config.js +61 -0
- package/components/breadcrumb/item.d.ts +1 -1
- package/components/breadcrumb/item.js +3 -14
- package/components/breadcrumb/styles.js +1 -1
- package/components/button/index.vdt.js +26 -17
- package/components/button/styles.d.ts +82 -1
- package/components/button/styles.js +16 -2
- package/components/card/styles.js +1 -1
- package/components/carousel/styles.js +4 -1
- package/components/carousel/useSlide.js +10 -9
- package/components/cascader/index.spec.js +89 -1
- package/components/cascader/index.vdt.js +4 -4
- package/components/cascader/useLabel.js +8 -12
- package/components/checkbox/index.vdt.js +15 -10
- package/components/checkbox/styles.js +2 -2
- package/components/collapse/item.vdt.js +2 -1
- package/components/collapse/styles.js +5 -1
- package/components/colorpicker/index.d.ts +2 -0
- package/components/colorpicker/index.js +2 -1
- package/components/colorpicker/index.spec.js +1 -1
- package/components/colorpicker/index.vdt.js +3 -1
- package/components/context.d.ts +5 -2
- package/components/context.js +7 -4
- package/components/datepicker/helpers.d.ts +2 -1
- package/components/datepicker/helpers.js +8 -2
- package/components/datepicker/index.spec.js +1 -1
- package/components/datepicker/index.vdt.js +10 -5
- package/components/datepicker/styles.d.ts +46 -1
- package/components/diagram/shapes/generateShapes.js +3 -3
- package/components/diagram/shapes/line.d.ts +2 -2
- package/components/diagram/shapes/line.js +0 -1
- package/components/dialog/base.d.ts +2 -0
- package/components/dialog/base.js +2 -1
- package/components/dialog/index.spec.js +59 -94
- package/components/dialog/styles.js +5 -1
- package/components/dialog/useFixBody.d.ts +6 -0
- package/components/dialog/useFixBody.js +12 -0
- package/components/drawer/index.spec.js +5 -5
- package/components/drawer/styles.js +1 -1
- package/components/dropdown/dropdown.js +1 -0
- package/components/dropdown/index.js +1 -2
- package/components/dropdown/index.spec.js +3 -3
- package/components/dropdown/styles.js +1 -1
- package/components/editable/index.vdt.js +2 -1
- package/components/editable/styles.d.ts +8 -1
- package/components/form/index.spec.js +10 -12
- package/components/form/item.vdt.js +13 -9
- package/components/form/useError.d.ts +5 -1
- package/components/form/useError.js +3 -1
- package/components/form/useValidate.js +2 -2
- package/components/grid/col.vdt.js +4 -2
- package/components/grid/styles.js +1 -1
- package/components/grid/useGutter.d.ts +1 -1
- package/components/icon/index.vdt.js +3 -2
- package/components/icon/styles.js +8 -4
- package/components/input/index.d.ts +1 -0
- package/components/input/index.js +2 -1
- package/components/input/index.vdt.js +47 -32
- package/components/input/search.vdt.js +4 -2
- package/components/input/styles.js +8 -3
- package/components/layout/styles.d.ts +1 -1
- package/components/layout/styles.js +7 -3
- package/components/menu/index.spec.js +15 -8
- package/components/menu/item.d.ts +1 -2
- package/components/menu/item.js +10 -17
- package/components/menu/item.vdt.js +4 -4
- package/components/menu/menu.d.ts +3 -0
- package/components/menu/menu.js +4 -0
- package/components/menu/styles.d.ts +62 -1
- package/components/menu/styles.js +6 -2
- package/components/menu/useExpanded.d.ts +1 -4
- package/components/menu/useHighlight.d.ts +5 -8
- package/components/menu/useHighlight.js +44 -33
- package/components/message/index.spec.js +1 -1
- package/components/message/styles.js +6 -2
- package/components/pagination/styles.js +1 -1
- package/components/radio/index.vdt.js +14 -9
- package/components/radio/styles.js +9 -1
- package/components/rate/styles.js +5 -1
- package/components/scrollSelect/styles.d.ts +14 -1
- package/components/scrollSelect/styles.js +9 -1
- package/components/select/base.vdt.js +135 -121
- package/components/select/index.spec.js +1 -1
- package/components/select/menu.vdt.js +1 -0
- package/components/select/styles.js +9 -4
- package/components/select/useSearchable.d.ts +1 -1
- package/components/slider/styles.js +5 -1
- package/components/spinner/index.d.ts +1 -1
- package/components/spinner/index.js +1 -1
- package/components/split/style.js +1 -1
- package/components/steps/context.d.ts +1 -1
- package/components/steps/styles.js +5 -1
- package/components/switch/styles.js +5 -1
- package/components/table/index.d.ts +1 -0
- package/components/table/index.spec.js +2 -1
- package/components/table/row.vdt.js +12 -4
- package/components/table/styles.js +6 -1
- package/components/table/table.d.ts +1 -0
- package/components/table/table.js +2 -1
- package/components/table/table.vdt.js +30 -27
- package/components/table/useColumns.d.ts +1 -1
- package/components/table/useFixedColumns.d.ts +1 -1
- package/components/table/useFixedColumns.js +5 -2
- package/components/table/useGroup.d.ts +1 -1
- package/components/table/useResizable.d.ts +1 -1
- package/components/table/useSortable.d.ts +1 -1
- package/components/table/useWidth.js +7 -1
- package/components/tabs/index.spec.js +1 -1
- package/components/tabs/styles.js +9 -2
- package/components/tabs/tab.vdt.js +2 -1
- package/components/tabs/useActiveBar.js +6 -3
- package/components/tag/base.js +1 -0
- package/components/tag/styles.js +8 -2
- package/components/timepicker/constants.d.ts +2 -1
- package/components/timepicker/constants.js +3 -2
- package/components/timepicker/index.spec.js +36 -35
- package/components/timepicker/useStep.js +3 -3
- package/components/timepicker/useValue.js +2 -2
- package/components/tooltip/index.spec.js +32 -25
- package/components/transfer/index.spec.js +20 -19
- package/components/transfer/styles.js +2 -6
- package/components/tree/index.d.ts +1 -1
- package/components/tree/index.js +1 -1
- package/components/tree/index.spec.js +20 -19
- package/components/tree/index.vdt.js +1 -0
- package/components/tree/styles.js +5 -1
- package/components/treeSelect/index.spec.js +5 -5
- package/components/treeSelect/styles.js +5 -1
- package/components/upload/index.d.ts +1 -1
- package/components/upload/index.spec.js +1 -1
- package/components/upload/index.vdt.js +10 -11
- package/components/upload/styles.js +5 -1
- package/components/utils.d.ts +1 -1
- package/components/wave/index.d.ts +19 -0
- package/components/wave/index.js +120 -0
- package/components/wave/styles.d.ts +2 -0
- package/components/wave/styles.js +17 -0
- package/hooks/useRouter.d.ts +1 -0
- package/hooks/useRouter.js +10 -0
- package/i18n/en-US.d.ts +1 -0
- package/i18n/en-US.js +1 -0
- package/index.d.ts +3 -2
- package/index.js +3 -2
- package/install.d.ts +2 -0
- package/package.json +2 -12
- package/styles/global.js +4 -3
- package/styles/theme.d.ts +16 -7
- package/styles/theme.js +15 -7
- package/tsconfig.json +22 -0
|
@@ -66,7 +66,6 @@ export default function ($props, $blocks, $__proto__) {
|
|
|
66
66
|
maxCols = _this$columns$getData.maxCols;
|
|
67
67
|
|
|
68
68
|
var _this$fixedColumns = this.fixedColumns,
|
|
69
|
-
setScrollPosition = _this$fixedColumns.setScrollPosition,
|
|
70
69
|
scrollPosition = _this$fixedColumns.scrollPosition,
|
|
71
70
|
hasFixed = _this$fixedColumns.hasFixed,
|
|
72
71
|
getHasFixedLeft = _this$fixedColumns.getHasFixedLeft,
|
|
@@ -131,16 +130,21 @@ export default function ($props, $blocks, $__proto__) {
|
|
|
131
130
|
'children': _$cc(FixedColumnsContext.Provider, {
|
|
132
131
|
'value': offsetMap,
|
|
133
132
|
'children': _$ce(2, 'thead', _$ma(columns, function ($value, $key) {
|
|
134
|
-
return _$ce(2, 'tr',
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
'
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
'
|
|
143
|
-
|
|
133
|
+
return _$ce(2, 'tr', _$cc(TransitionGroup, {
|
|
134
|
+
'name': 'k-fade-expand',
|
|
135
|
+
'move': false,
|
|
136
|
+
'children': [$key === 0 && checkType !== 'none' ? _$cv('th', _extends({}, getClassAndStyleForFixed({
|
|
137
|
+
fixed: hasFixedLeft ? 'left' : false
|
|
138
|
+
}, 0), {
|
|
139
|
+
'rowspan': maxRows,
|
|
140
|
+
'key': '$checktype'
|
|
141
|
+
}), checkType === 'checkbox' ? _$cc(Checkbox, {
|
|
142
|
+
'value': allCheckedStatus === AllCheckedStatus.All,
|
|
143
|
+
'indeterminate': showIndeterminate && allCheckedStatus == AllCheckedStatus.Indeterminate,
|
|
144
|
+
'ev-$change:value': toggleCheckedAll,
|
|
145
|
+
'disabled': !hasData
|
|
146
|
+
}) : undefined) : undefined, $value]
|
|
147
|
+
}), 2);
|
|
144
148
|
}, $this), 4)
|
|
145
149
|
})
|
|
146
150
|
})
|
|
@@ -165,23 +169,22 @@ export default function ($props, $blocks, $__proto__) {
|
|
|
165
169
|
onRowDragEnd = _this$draggable.onRowDragEnd,
|
|
166
170
|
draggingKey = _this$draggable.draggingKey;
|
|
167
171
|
|
|
168
|
-
var tbody = _$
|
|
169
|
-
'
|
|
170
|
-
|
|
171
|
-
'
|
|
172
|
-
'children': !hasData ? _$ce(2, 'tr', _$ce(2, 'td', (_$blocks['empty'] = function ($super) {
|
|
173
|
-
return _$('/(ㄒoㄒ)/~~ 没有找到亲要的数据哦~');
|
|
174
|
-
}, __$blocks['empty'] = function ($super, data) {
|
|
175
|
-
var block = $blocks['empty'];
|
|
172
|
+
var tbody = _$ce(2, 'tbody', !hasData ? _$ce(2, 'tr', _$ce(2, 'td', (_$blocks['empty'] = function ($super) {
|
|
173
|
+
return _$('/(ㄒoㄒ)/~~ 没有找到亲要的数据哦~');
|
|
174
|
+
}, __$blocks['empty'] = function ($super, data) {
|
|
175
|
+
var block = $blocks['empty'];
|
|
176
176
|
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
177
|
+
var callBlock = function callBlock() {
|
|
178
|
+
return _$blocks['empty'].call($this, $super, data);
|
|
179
|
+
};
|
|
180
180
|
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
181
|
+
return block ? block.call($this, callBlock, data) : callBlock();
|
|
182
|
+
}, __$blocks['empty'](_$no)), 0, 'k-table-empty', {
|
|
183
|
+
'colspan': colCount
|
|
184
|
+
}), 2, null, null, 'table-empty') : _$cc(TransitionGroup, {
|
|
185
|
+
'name': 'k-fade-in-left',
|
|
186
|
+
'move': !draggingKey.value,
|
|
187
|
+
'children': function () {
|
|
185
188
|
var rows = [];
|
|
186
189
|
loopData(function (value, index, level, hidden) {
|
|
187
190
|
// don't render if row is hidden
|
|
@@ -286,7 +289,7 @@ export default function ($props, $blocks, $__proto__) {
|
|
|
286
289
|
});
|
|
287
290
|
return rows;
|
|
288
291
|
}()
|
|
289
|
-
});
|
|
292
|
+
}), 0);
|
|
290
293
|
|
|
291
294
|
var tableWidthPx = tableWidth.value ? tableWidth.value + "px" : null;
|
|
292
295
|
var _this$stickyScrollbar = this.stickyScrollbar,
|
|
@@ -2,7 +2,7 @@ import { VNodeComponentClass, Props } from 'intact-vue-next';
|
|
|
2
2
|
import { TableColumn, TableColumnProps } from './column';
|
|
3
3
|
export declare const context: {
|
|
4
4
|
Provider: import("intact").ComponentConstructor<import("intact").Component<import("../context").ProviderProps<("none" | "radio" | "checkbox") | undefined>, {}, {}, {}>>;
|
|
5
|
-
Consumer: import("intact").ComponentConstructor<import("intact").Component<
|
|
5
|
+
Consumer: import("intact").ComponentConstructor<import("intact").Component<import("../context").ConsumerProps<("none" | "radio" | "checkbox") | undefined>, {}, {}, {}>>;
|
|
6
6
|
};
|
|
7
7
|
export declare function useColumns(): {
|
|
8
8
|
getColumns: () => VNodeComponentClass<TableColumn<any>>[][];
|
|
@@ -6,7 +6,7 @@ import type { useScroll } from './useScroll';
|
|
|
6
6
|
declare type ScrollPosition = 'left' | 'middle' | 'right';
|
|
7
7
|
export declare const context: {
|
|
8
8
|
Provider: import("intact").ComponentConstructor<import("intact").Component<import("../context").ProviderProps<any>, {}, {}, {}>>;
|
|
9
|
-
Consumer: import("intact").ComponentConstructor<import("intact").Component<
|
|
9
|
+
Consumer: import("intact").ComponentConstructor<import("intact").Component<import("../context").ConsumerProps<any>, {}, {}, {}>>;
|
|
10
10
|
};
|
|
11
11
|
export declare function useFixedColumns(getColumns: () => VNodeComponentClass<TableColumn>[][], { scrollRef, callbacks }: ReturnType<typeof useScroll>, widthMap: State<Record<TableRowKey, number>>): {
|
|
12
12
|
scrollPosition: State<ScrollPosition | null>;
|
|
@@ -17,7 +17,10 @@ export function useFixedColumns(getColumns, _ref, widthMap) {
|
|
|
17
17
|
var offsetMap = {};
|
|
18
18
|
callbacks.push(setScrollPosition);
|
|
19
19
|
instance.on('$receive:children', handleFixedColumns);
|
|
20
|
-
watchState(widthMap,
|
|
20
|
+
watchState(widthMap, function () {
|
|
21
|
+
handleFixedColumns();
|
|
22
|
+
updateScrollPositionOnResize();
|
|
23
|
+
});
|
|
21
24
|
var throttleUpdate = throttle(function () {
|
|
22
25
|
if (instance.$unmounted) return;
|
|
23
26
|
updateScrollPositionOnResize();
|
|
@@ -102,7 +105,7 @@ export function useFixedColumns(getColumns, _ref, widthMap) {
|
|
|
102
105
|
if (scrollDom.scrollWidth - scrollDom.offsetWidth <= 0) {
|
|
103
106
|
scrollPosition.set(null);
|
|
104
107
|
} else {
|
|
105
|
-
|
|
108
|
+
setScrollPosition(scrollRef.value.scrollLeft);
|
|
106
109
|
}
|
|
107
110
|
}
|
|
108
111
|
|
|
@@ -4,7 +4,7 @@ declare type ContextValue = {
|
|
|
4
4
|
};
|
|
5
5
|
export declare const context: {
|
|
6
6
|
Provider: import('intact-vue-next').ComponentConstructor<import("intact").Component<import("../context").ProviderProps<ContextValue>, {}, {}, {}>>;
|
|
7
|
-
Consumer: import("intact").ComponentConstructor<import("intact").Component<
|
|
7
|
+
Consumer: import("intact").ComponentConstructor<import("intact").Component<import("../context").ConsumerProps<ContextValue>, {}, {}, {}>>;
|
|
8
8
|
};
|
|
9
9
|
export declare function useGroup(): {
|
|
10
10
|
onSelect: (value: any, groupValue: any, onChange: ContextValue['onChange']) => void;
|
|
@@ -3,7 +3,7 @@ import type { TableRowKey } from './table';
|
|
|
3
3
|
import { State } from '../../hooks/useState';
|
|
4
4
|
export declare const context: {
|
|
5
5
|
Provider: import("intact").ComponentConstructor<import("intact").Component<import("../context").ProviderProps<any>, {}, {}, {}>>;
|
|
6
|
-
Consumer: import("intact").ComponentConstructor<import("intact").Component<
|
|
6
|
+
Consumer: import("intact").ComponentConstructor<import("intact").Component<import("../context").ConsumerProps<any>, {}, {}, {}>>;
|
|
7
7
|
};
|
|
8
8
|
export declare function useResizable(scrollRef: RefObject<HTMLElement>, tableRef: RefObject<HTMLElement>, tableWidth: State<number | null>, widthMap: State<Record<TableRowKey, number>>, storeWidth: () => void): {
|
|
9
9
|
start: (e: MouseEvent) => void;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
export declare const context: {
|
|
2
2
|
Provider: import('intact-vue-next').ComponentConstructor<import("intact").Component<import("../context").ProviderProps<any>, {}, {}, {}>>;
|
|
3
|
-
Consumer: import("intact").ComponentConstructor<import("intact").Component<
|
|
3
|
+
Consumer: import("intact").ComponentConstructor<import("intact").Component<import("../context").ConsumerProps<any>, {}, {}, {}>>;
|
|
4
4
|
};
|
|
5
5
|
export declare function useSortable(): {
|
|
6
6
|
onChange: (key: string) => void;
|
|
@@ -4,6 +4,7 @@ import { useInstance, onMounted, onBeforeUnmount, createRef } from 'intact-vue-n
|
|
|
4
4
|
import ResizeObserver from 'resize-observer-polyfill';
|
|
5
5
|
import { useState } from '../../hooks/useState';
|
|
6
6
|
import { debounce } from '../utils';
|
|
7
|
+
import { scrollbarWidth } from '../position';
|
|
7
8
|
var hasLocalStorage = typeof localStorage !== 'undefined';
|
|
8
9
|
export function useWidth(scrollRef, getColumns) {
|
|
9
10
|
var instance = useInstance();
|
|
@@ -75,7 +76,12 @@ export function useWidth(scrollRef, getColumns) {
|
|
|
75
76
|
if (resizable) {
|
|
76
77
|
var hasBorder = type === 'grid' || type === 'border';
|
|
77
78
|
var _tableWidth = tableRef.value.offsetWidth;
|
|
78
|
-
var
|
|
79
|
+
var container = scrollRef.value;
|
|
80
|
+
var containerWidth = container.offsetWidth + (hasBorder ? -2 : 0); // detect whether the table has vertical scrollbar or not
|
|
81
|
+
|
|
82
|
+
if (container.scrollHeight > container.clientHeight) {
|
|
83
|
+
containerWidth = containerWidth - scrollbarWidth();
|
|
84
|
+
}
|
|
79
85
|
|
|
80
86
|
if (_tableWidth < containerWidth) {
|
|
81
87
|
tableWidth.set(isMount ? null : containerWidth);
|
|
@@ -10,6 +10,10 @@ var closeFontSizeMap = {
|
|
|
10
10
|
mini: '16px'
|
|
11
11
|
};
|
|
12
12
|
var defaults = deepDefaults({
|
|
13
|
+
get transition() {
|
|
14
|
+
return theme.transition.middle;
|
|
15
|
+
},
|
|
16
|
+
|
|
13
17
|
get borderColor() {
|
|
14
18
|
return theme.color.border;
|
|
15
19
|
},
|
|
@@ -55,7 +59,10 @@ var defaults = deepDefaults({
|
|
|
55
59
|
},
|
|
56
60
|
// no-border-card
|
|
57
61
|
noBorderCard: {
|
|
58
|
-
bgColor
|
|
62
|
+
get bgColor() {
|
|
63
|
+
return theme.color.bg;
|
|
64
|
+
},
|
|
65
|
+
|
|
59
66
|
gutter: "4px"
|
|
60
67
|
}
|
|
61
68
|
}, sizes.reduce(function (memo, size) {
|
|
@@ -86,7 +93,7 @@ setDefault(function () {
|
|
|
86
93
|
}).tabs;
|
|
87
94
|
});
|
|
88
95
|
export function makeStyles() {
|
|
89
|
-
return /*#__PURE__*/css("border-bottom:", tabs.border, ";position:relative;line-height:1;.k-tab{margin:", tabs.margin, ";cursor:pointer;display:inline-block;text-align:center;color:", tabs.color, ";position:relative;vertical-align:middle;&:hover,&.k-active{color:", tabs.activeColor, ";}&.k-disabled{color:", theme.color.disabled, ";cursor:not-allowed;}}.k-tab-close{margin-right:-", tabs.closeGutter, ";margin-left:", tabs.closeGutter, ";position:relative;top:-1px;}.k-tabs-active-bar{transition:all ",
|
|
96
|
+
return /*#__PURE__*/css("border-bottom:", tabs.border, ";position:relative;line-height:1;.k-tab{margin:", tabs.margin, ";cursor:pointer;display:inline-block;text-align:center;color:", tabs.color, ";position:relative;vertical-align:middle;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;&:hover,&.k-active{color:", tabs.activeColor, ";}&.k-disabled{color:", theme.color.disabled, ";cursor:not-allowed;}}.k-tab-close{margin-right:-", tabs.closeGutter, ";margin-left:", tabs.closeGutter, ";position:relative;top:-1px;}.k-tabs-active-bar{transition:all ", tabs.transition, ";position:absolute;left:0;height:", tabs.highlight.height, ";background:", tabs.highlight.bgColor, ";bottom:calc(-", tabs.highlight.height, " / 2);}&.k-vertical{display:inline-block;border-bottom:none;border-right:", tabs.border, ";.k-tab{display:block;margin:0;padding:", tabs.verticalPadding, ";}.k-tabs-active-bar{left:auto;top:0;right:calc(-", tabs.highlight.height, " / 2);width:", tabs.highlight.height, ";height:auto;}}&.k-tabs-card{.k-tab{margin:0;}.k-tabs-active-bar{background:#fff;top:0;height:auto;z-index:-1;border-left:", tabs.border, ";border-right:", tabs.border, ";&:before{content:'';display:block;position:absolute;height:", tabs.highlight.height, ";background:", theme.color.primary, ";top:0;left:-", tabs.borderWidth, ";right:-", tabs.borderWidth, ";}}&.k-vertical{.k-tabs-active-bar{left:0;width:auto;border-left:none;border-right:none;border-top:", tabs.border, ";border-bottom:", tabs.border, ";&:before{width:", tabs.highlight.height, ";left:0;right:auto;bottom:0;height:auto;}}}}&.k-tabs-border-card{border:", tabs.border, ";border-bottom:none;background:", tabs.borderCard.bgColor, ";.k-tab{margin:0;}.k-tabs-active-bar{background:#fff;top:0;height:auto;z-index:-1;}&.k-vertical{border-right:none;border-bottom:", tabs.border, ";.k-tabs-active-bar{width:auto;height:0;left:0;bottom:0;right:0;}}}&.k-tabs-no-border-card{border-bottom:none;.k-tab{margin-right:", tabs.noBorderCard.gutter, ";&:before{content:'';display:block;position:absolute;background:", tabs.noBorderCard.bgColor, ";top:0;bottom:0;left:0;right:0;z-index:-1;}}.k-tabs-acitve-bar{border:none;&:before{left:0;right:0;}}&.k-vertical{border-right:none;.k-tab:not(:first-of-type){margin:", tabs.noBorderCard.gutter, " 0 0;}.k-tabs-active-bar{border:none;}}}&:not(.k-vertical){.k-tabs-scroll{overflow:hidden;position:relative;padding-bottom:1px;margin-bottom:-1px;}&.k-tabs-border-card,&.k-tabs-no-border-card{.k-tabs-scroll{padding-bottom:0;margin-bottom:0;}}.k-tabs-wrapper{white-space:nowrap;float:left;transition:transform ", tabs.transition, ";}.k-tabs-prev,.k-tabs-next{position:absolute;top:0;width:", tabs.navigatorWidth, "!important;}.k-tabs-prev{left:0;}.k-tabs-next{right:0;}&.k-is-scroll{padding:0 ", tabs.navigatorWidth, ";}}", _mapInstanceProperty(sizes).call(sizes, function (size) {
|
|
90
97
|
var styles = tabs[size];
|
|
91
98
|
return "\n &.k-" + size + " {\n .k-tab {\n font-size: " + styles.fontSize + ";\n height: " + styles.height + ";\n line-height: " + styles.height + ";\n padding: " + styles.padding + ";\n }\n .k-tab-close .k-icon {\n font-size: " + styles.closeFontSize + ";\n }\n }\n ";
|
|
92
99
|
}), ";");
|
|
@@ -5,7 +5,8 @@ import { Icon } from '../icon';
|
|
|
5
5
|
import { getRestProps } from '../utils';
|
|
6
6
|
import { isNullOrUndefined } from 'intact-shared';
|
|
7
7
|
var _$tmp0 = {
|
|
8
|
-
'className': 'ion-ios-close-empty'
|
|
8
|
+
'className': 'ion-ios-close-empty',
|
|
9
|
+
'hoverable': true
|
|
9
10
|
};
|
|
10
11
|
export default function ($props, $blocks, $__proto__) {
|
|
11
12
|
var _classNameObj;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { useInstance, onMounted, onUpdated, findDomFromVNode } from 'intact-vue-next';
|
|
1
|
+
import { useInstance, onMounted, onUpdated, findDomFromVNode, nextTick } from 'intact-vue-next';
|
|
2
2
|
import { useState } from '../../hooks/useState';
|
|
3
3
|
export function useActiveBar() {
|
|
4
4
|
var instance = useInstance();
|
|
@@ -53,7 +53,10 @@ export function useActiveBar() {
|
|
|
53
53
|
}
|
|
54
54
|
}
|
|
55
55
|
|
|
56
|
-
onMounted(generateStyle);
|
|
57
|
-
|
|
56
|
+
onMounted(generateStyle); // Tabs maybe embed into Transition, therefore handle style nextTick
|
|
57
|
+
|
|
58
|
+
onUpdated(function () {
|
|
59
|
+
return nextTick(generateStyle);
|
|
60
|
+
});
|
|
58
61
|
return styles;
|
|
59
62
|
}
|
package/components/tag/base.js
CHANGED
package/components/tag/styles.js
CHANGED
|
@@ -60,6 +60,12 @@ var defaults = deepDefaults({
|
|
|
60
60
|
fontSize: '16px',
|
|
61
61
|
gap: '2px'
|
|
62
62
|
}
|
|
63
|
+
},
|
|
64
|
+
none: {
|
|
65
|
+
get bgColor() {
|
|
66
|
+
return theme.color.bg;
|
|
67
|
+
}
|
|
68
|
+
|
|
63
69
|
}
|
|
64
70
|
}, types.reduce(function (memo, type) {
|
|
65
71
|
if (type === 'disabled') return memo;
|
|
@@ -82,12 +88,12 @@ setDefault(function () {
|
|
|
82
88
|
}).tag;
|
|
83
89
|
});
|
|
84
90
|
export function makeStyles() {
|
|
85
|
-
return /*#__PURE__*/css("display:inline-flex;align-items:center;padding:", tag.padding, ";border:1px solid ", tag.borderColor, ";border-radius:", tag.borderRadius, ";font-size:", tag.fontSize, ";height:", tag.height, ";.k-tag-close{font-size:", tag.close.fontSize, ";margin-left:", tag.close.gap, ";}", _mapInstanceProperty(types).call(types, function (t) {
|
|
91
|
+
return /*#__PURE__*/css("display:inline-flex;align-items:center;padding:", tag.padding, ";border:1px solid ", tag.borderColor, ";border-radius:", tag.borderRadius, ";font-size:", tag.fontSize, ";height:", tag.height, ";.k-tag-close{font-size:", tag.close.fontSize, ";margin-left:", tag.close.gap, ";}&.k-none{border:none;background:", tag.none.bgColor, ";}", _mapInstanceProperty(types).call(types, function (t) {
|
|
86
92
|
var styles = tag[t];
|
|
87
93
|
return /*#__PURE__*/css("&.k-", t, "{color:", styles.color, ";border-color:", styles.color, ";background:", styles.bgColor, ";}");
|
|
88
94
|
}), " ", _mapInstanceProperty(sizes).call(sizes, function (s) {
|
|
89
95
|
if (s === 'default') return;
|
|
90
96
|
var styles = tag[s];
|
|
91
97
|
return /*#__PURE__*/css("&.k-", s, "{padding:", styles.padding, ";height:", styles.height, ";.k-tag-close{font-size:", styles.close.fontSize, ";margin-left:", styles.close.gap, ";}}");
|
|
92
|
-
}), "&.k-dashed{border-style:dashed;}
|
|
98
|
+
}), "&.k-dashed{border-style:dashed;}");
|
|
93
99
|
}
|
|
@@ -3,7 +3,8 @@ import { BasePickerProps, BasePickerEvents, BasePickerBlocks } from '../datepick
|
|
|
3
3
|
import { TypeDefs } from 'intact-vue-next';
|
|
4
4
|
export declare const YEAR_FORMAT = "YYYY-MM-DD ";
|
|
5
5
|
export declare const TIME_FORMAT = "HH:mm:ss";
|
|
6
|
-
export declare const
|
|
6
|
+
export declare const NOW_START: dayjs.Dayjs;
|
|
7
|
+
export declare const NOW_END: dayjs.Dayjs;
|
|
7
8
|
export declare const PREFIX: string;
|
|
8
9
|
export interface TimepickerProps<M extends boolean = boolean, R extends boolean = boolean> extends BasePickerProps<string, M, R> {
|
|
9
10
|
step?: string;
|
|
@@ -3,8 +3,9 @@ import { getNowDate } from '../datepicker/helpers';
|
|
|
3
3
|
import { BasePicker } from '../datepicker/basepicker';
|
|
4
4
|
export var YEAR_FORMAT = 'YYYY-MM-DD ';
|
|
5
5
|
export var TIME_FORMAT = 'HH:mm:ss';
|
|
6
|
-
export var
|
|
7
|
-
export var
|
|
6
|
+
export var NOW_START = getNowDate();
|
|
7
|
+
export var NOW_END = getNowDate(true);
|
|
8
|
+
export var PREFIX = NOW_START.format(YEAR_FORMAT);
|
|
8
9
|
export var typeDefs = _extends({}, BasePicker.typeDefs, {
|
|
9
10
|
value: [String, Array],
|
|
10
11
|
min: String,
|
|
@@ -18,7 +18,7 @@ describe('Timepicker', function () {
|
|
|
18
18
|
case 0:
|
|
19
19
|
unmount();
|
|
20
20
|
_context.next = 3;
|
|
21
|
-
return wait(
|
|
21
|
+
return wait(500);
|
|
22
22
|
|
|
23
23
|
case 3:
|
|
24
24
|
case "end":
|
|
@@ -34,106 +34,107 @@ describe('Timepicker', function () {
|
|
|
34
34
|
while (1) {
|
|
35
35
|
switch (_context2.prev = _context2.next) {
|
|
36
36
|
case 0:
|
|
37
|
+
this.timeout(0);
|
|
37
38
|
_mount = mount(BasicDemo), instance = _mount[0], element = _mount[1];
|
|
38
39
|
_element$querySelecto = element.querySelectorAll('.k-select'), picker1 = _element$querySelecto[0], picker2 = _element$querySelecto[1];
|
|
39
40
|
picker1.click();
|
|
40
|
-
_context2.next =
|
|
41
|
-
return wait(
|
|
41
|
+
_context2.next = 6;
|
|
42
|
+
return wait(500);
|
|
42
43
|
|
|
43
|
-
case
|
|
44
|
+
case 6:
|
|
44
45
|
dropdown = getElement('.k-time-content');
|
|
45
46
|
expect(dropdown.innerHTML).to.matchSnapshot();
|
|
46
47
|
next = dropdown.querySelector('.k-scroll-select-item:nth-child(11)');
|
|
47
48
|
next.click();
|
|
48
|
-
_context2.next =
|
|
49
|
+
_context2.next = 12;
|
|
49
50
|
return wait();
|
|
50
51
|
|
|
51
|
-
case
|
|
52
|
+
case 12:
|
|
52
53
|
expect(dropdown.innerHTML).to.matchSnapshot();
|
|
53
54
|
expect(instance.get('time')).to.be.null;
|
|
54
55
|
next.click();
|
|
55
|
-
_context2.next =
|
|
56
|
+
_context2.next = 17;
|
|
56
57
|
return wait();
|
|
57
58
|
|
|
58
|
-
case
|
|
59
|
+
case 17:
|
|
59
60
|
expect(instance.get('time')).to.be.null;
|
|
60
61
|
expect(dropdown.innerHTML).to.matchSnapshot();
|
|
61
62
|
ok = dropdown.querySelector('.k-btn');
|
|
62
63
|
ok.click();
|
|
63
|
-
_context2.next =
|
|
64
|
-
return wait(
|
|
64
|
+
_context2.next = 23;
|
|
65
|
+
return wait(500);
|
|
65
66
|
|
|
66
|
-
case
|
|
67
|
+
case 23:
|
|
67
68
|
expect(instance.get('time')).to.eql('02:00:00');
|
|
68
69
|
expect(dropdown.style.display).to.eql('none'); // set time
|
|
69
70
|
|
|
70
71
|
instance.set('time', '03:03:03');
|
|
71
72
|
picker1.click();
|
|
72
|
-
_context2.next =
|
|
73
|
-
return wait(
|
|
73
|
+
_context2.next = 29;
|
|
74
|
+
return wait(500);
|
|
74
75
|
|
|
75
|
-
case
|
|
76
|
+
case 29:
|
|
76
77
|
expect(dropdown.innerHTML).to.matchSnapshot(); // multiple
|
|
77
78
|
|
|
78
79
|
picker2.click();
|
|
79
|
-
_context2.next =
|
|
80
|
-
return wait(
|
|
80
|
+
_context2.next = 33;
|
|
81
|
+
return wait(500);
|
|
81
82
|
|
|
82
|
-
case
|
|
83
|
+
case 33:
|
|
83
84
|
dropdown = getElement('.k-time-content');
|
|
84
85
|
dropdown.querySelector('.k-scroll-select-item:nth-child(11)').click();
|
|
85
86
|
ok2 = dropdown.querySelector('.k-btn');
|
|
86
87
|
ok2.click();
|
|
87
88
|
dropdown.querySelector('.k-scroll-select-item:nth-child(12)').click();
|
|
88
89
|
ok2.click();
|
|
89
|
-
_context2.next =
|
|
90
|
+
_context2.next = 41;
|
|
90
91
|
return wait();
|
|
91
92
|
|
|
92
|
-
case
|
|
93
|
+
case 41:
|
|
93
94
|
expect(instance.get('timeArray')).to.eql(['01:00:00', '02:00:00']); // click the same time will do nothing
|
|
94
95
|
|
|
95
96
|
ok2.click();
|
|
96
|
-
_context2.next =
|
|
97
|
+
_context2.next = 45;
|
|
97
98
|
return wait();
|
|
98
99
|
|
|
99
|
-
case
|
|
100
|
+
case 45:
|
|
100
101
|
expect(instance.get('timeArray')).to.eql(['01:00:00', '02:00:00']); // remove one value
|
|
101
102
|
|
|
102
103
|
_picker2$querySelecto = picker2.querySelectorAll('.k-select-close'), close = _picker2$querySelecto[1];
|
|
103
104
|
close.click();
|
|
104
|
-
_context2.next =
|
|
105
|
+
_context2.next = 50;
|
|
105
106
|
return wait();
|
|
106
107
|
|
|
107
|
-
case
|
|
108
|
+
case 50:
|
|
108
109
|
expect(instance.get('timeArray')).to.eql(['01:00:00']);
|
|
109
110
|
expect(dropdown.innerHTML).to.matchSnapshot(); // clear
|
|
110
111
|
|
|
111
112
|
picker2.querySelector('.k-select-clear').click();
|
|
112
|
-
_context2.next =
|
|
113
|
+
_context2.next = 55;
|
|
113
114
|
return wait();
|
|
114
115
|
|
|
115
|
-
case
|
|
116
|
+
case 55:
|
|
116
117
|
expect(instance.get('timeArray')).to.eql([]);
|
|
117
118
|
ok2.click();
|
|
118
|
-
_context2.next =
|
|
119
|
+
_context2.next = 59;
|
|
119
120
|
return wait();
|
|
120
121
|
|
|
121
|
-
case
|
|
122
|
+
case 59:
|
|
122
123
|
expect(instance.get('timeArray')).to.eql(['00:00:00']); // set value
|
|
123
124
|
|
|
124
125
|
instance.set('timeArray', ['03:03:03', '03:03:04']);
|
|
125
|
-
_context2.next =
|
|
126
|
+
_context2.next = 63;
|
|
126
127
|
return wait();
|
|
127
128
|
|
|
128
|
-
case
|
|
129
|
+
case 63:
|
|
129
130
|
expect(dropdown.innerHTML).to.matchSnapshot();
|
|
130
131
|
|
|
131
|
-
case
|
|
132
|
+
case 64:
|
|
132
133
|
case "end":
|
|
133
134
|
return _context2.stop();
|
|
134
135
|
}
|
|
135
136
|
}
|
|
136
|
-
}, _callee2);
|
|
137
|
+
}, _callee2, this);
|
|
137
138
|
})));
|
|
138
139
|
it('range', /*#__PURE__*/_asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee3() {
|
|
139
140
|
var _mount2, instance, element, picker, dropdown, _dropdown$querySelect, start, end;
|
|
@@ -146,7 +147,7 @@ describe('Timepicker', function () {
|
|
|
146
147
|
picker = element.querySelector('.k-select');
|
|
147
148
|
picker.click();
|
|
148
149
|
_context3.next = 5;
|
|
149
|
-
return wait(
|
|
150
|
+
return wait(500);
|
|
150
151
|
|
|
151
152
|
case 5:
|
|
152
153
|
dropdown = getElement('.k-time-content');
|
|
@@ -169,7 +170,7 @@ describe('Timepicker', function () {
|
|
|
169
170
|
return wait();
|
|
170
171
|
|
|
171
172
|
case 19:
|
|
172
|
-
expect(instance.get('time')).to.eql(['01:00:00', '
|
|
173
|
+
expect(instance.get('time')).to.eql(['01:00:00', '01:59:59']);
|
|
173
174
|
|
|
174
175
|
case 20:
|
|
175
176
|
case "end":
|
|
@@ -227,7 +228,7 @@ describe('Timepicker', function () {
|
|
|
227
228
|
|
|
228
229
|
case 11:
|
|
229
230
|
expect(dropdown.innerHTML).to.matchSnapshot();
|
|
230
|
-
end.querySelector('.k-
|
|
231
|
+
end.querySelector('.k-disabled').nextElementSibling.click();
|
|
231
232
|
_context5.next = 15;
|
|
232
233
|
return wait();
|
|
233
234
|
|
|
@@ -306,7 +307,7 @@ describe('Timepicker', function () {
|
|
|
306
307
|
return wait();
|
|
307
308
|
|
|
308
309
|
case 39:
|
|
309
|
-
expect(instance.get('time3')).eql(['00:30:00.000', '
|
|
310
|
+
expect(instance.get('time3')).eql(['00:30:00.000', '00:30:00.000']);
|
|
310
311
|
expect(input3.innerHTML).to.matchSnapshot();
|
|
311
312
|
|
|
312
313
|
case 41:
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import _mapInstanceProperty from "@babel/runtime-corejs3/core-js/instance/map";
|
|
2
2
|
import { useInstance } from 'intact-vue-next';
|
|
3
3
|
import { useState } from '../../hooks/useState';
|
|
4
|
-
import {
|
|
4
|
+
import { NOW_START, NOW_END } from './constants';
|
|
5
5
|
import { useReceive } from '../../hooks/useReceive';
|
|
6
6
|
export function useStep(_ref, _ref2) {
|
|
7
7
|
var maxDate = _ref.maxDate,
|
|
@@ -18,9 +18,9 @@ export function useStep(_ref, _ref2) {
|
|
|
18
18
|
|
|
19
19
|
if (step) {
|
|
20
20
|
var data = [];
|
|
21
|
-
var maxValue = maxDate.value ||
|
|
21
|
+
var maxValue = maxDate.value || NOW_END;
|
|
22
22
|
var stepValue = parseTime(step);
|
|
23
|
-
var value = minDate.value ||
|
|
23
|
+
var value = minDate.value || NOW_START;
|
|
24
24
|
|
|
25
25
|
var push = function push(value) {
|
|
26
26
|
data.push({
|
|
@@ -5,7 +5,7 @@ import _sliceInstanceProperty from "@babel/runtime-corejs3/core-js/instance/slic
|
|
|
5
5
|
import { useInstance } from 'intact-vue-next';
|
|
6
6
|
import { last } from '../utils';
|
|
7
7
|
import { useValue as useValueBase } from '../datepicker/basepicker';
|
|
8
|
-
import {
|
|
8
|
+
import { NOW_START, NOW_END } from './constants';
|
|
9
9
|
export function useValue(formats, disabled, panel) {
|
|
10
10
|
var instance = useInstance();
|
|
11
11
|
|
|
@@ -34,7 +34,7 @@ export function useValue(formats, disabled, panel) {
|
|
|
34
34
|
});
|
|
35
35
|
|
|
36
36
|
function getPlaceholderDates() {
|
|
37
|
-
return instance.get('range') ? [
|
|
37
|
+
return instance.get('range') ? [NOW_START, NOW_END] : NOW_START;
|
|
38
38
|
}
|
|
39
39
|
|
|
40
40
|
function onChangeTimeByStep(v, flag) {
|