@opentiny/vue-renderless 3.6.0-alpha.1 → 3.6.0
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/README.md +26 -0
- package/action-menu/index.js +5 -0
- package/action-menu/vue.js +6 -4
- package/dropdown-item/vue.js +6 -1
- package/dropdown-menu/vue.js +5 -2
- package/multi-select/index.js +23 -22
- package/package.json +13 -5
- package/pull-refresh/index.js +21 -17
- package/pull-refresh/vue.js +14 -2
- package/transfer/index.js +53 -47
- package/wheel/index.js +31 -45
package/README.md
ADDED
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
<p align="center">
|
|
2
|
+
<a href="https://tinyuidesign.cloudbu.huawei.com/" target="_blank" rel="noopener noreferrer">
|
|
3
|
+
<img alt="TinyVue Logo" src="./logo.svg" height="100" style="max-width:100%;">
|
|
4
|
+
</a>
|
|
5
|
+
</p>
|
|
6
|
+
|
|
7
|
+
<p align="center">Tiny-Vue-Renderless 是 TinyVue 组件库的逻辑层 </p>
|
|
8
|
+
|
|
9
|
+
## 如何使用
|
|
10
|
+
|
|
11
|
+
使用组件库时,只需安装 `@opentiny/vue` , `@opentiny/vue-renderless` 会同步完成安装
|
|
12
|
+
|
|
13
|
+
## 本地开发
|
|
14
|
+
```shell
|
|
15
|
+
git clone git@github.com:opentiny/tiny-vue-renderless.git
|
|
16
|
+
cd tiny-vue-renderless
|
|
17
|
+
npm i
|
|
18
|
+
```
|
|
19
|
+
- 克隆的 tiny-vue-renderless 工程放在与 tiny-vue 工程同个目录文件夹
|
|
20
|
+
- 安装 tiny-vue-renderless 的依赖
|
|
21
|
+
- 然后启动 tiny-vue 工程
|
|
22
|
+
- 本地启动 tiny-vue 工程后,即可调试 tiny-vue-renderless 工程
|
|
23
|
+
|
|
24
|
+
## 开源协议
|
|
25
|
+
|
|
26
|
+
[MIT](LICENSE)
|
package/action-menu/index.js
CHANGED
|
@@ -7,4 +7,9 @@ export var handleItemClick = function handleItemClick(emit) {
|
|
|
7
7
|
return function (data) {
|
|
8
8
|
emit('item-click', data);
|
|
9
9
|
};
|
|
10
|
+
};
|
|
11
|
+
export var visibleChange = function visibleChange(emit) {
|
|
12
|
+
return function (status) {
|
|
13
|
+
emit('visible-change', status);
|
|
14
|
+
};
|
|
10
15
|
};
|
package/action-menu/vue.js
CHANGED
|
@@ -1,12 +1,14 @@
|
|
|
1
|
-
import { handleMoreClick, handleItemClick } from './index';
|
|
2
|
-
export var api = ['state', 'handleMoreClick', 'handleItemClick'];
|
|
1
|
+
import { handleMoreClick, handleItemClick, visibleChange } from './index';
|
|
2
|
+
export var api = ['state', 'handleMoreClick', 'handleItemClick', 'visibleChange'];
|
|
3
3
|
export var renderless = function renderless(props, _ref, _ref2) {
|
|
4
4
|
var computed = _ref.computed,
|
|
5
5
|
reactive = _ref.reactive;
|
|
6
|
-
var emit = _ref2.emit
|
|
6
|
+
var emit = _ref2.emit,
|
|
7
|
+
nextTick = _ref2.nextTick;
|
|
7
8
|
var api = {
|
|
8
9
|
handleMoreClick: handleMoreClick(emit),
|
|
9
|
-
handleItemClick: handleItemClick(emit)
|
|
10
|
+
handleItemClick: handleItemClick(emit),
|
|
11
|
+
visibleChange: visibleChange(emit)
|
|
10
12
|
};
|
|
11
13
|
var state = reactive({
|
|
12
14
|
visibleOptions: computed(function () {
|
package/dropdown-item/vue.js
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import _toConsumableArray from "@babel/runtime/helpers/toConsumableArray";
|
|
1
2
|
import { tagClick, confirm, clickOutside, getOptionStyle, reset, getTitle, bindScroll, toggle, onScroll, open, opened, close, closed, clickItem, clickWrapper, getItemStyle, handleClick } from './index';
|
|
2
3
|
export var api = ['state', 'confirm', 'clickOutside', 'getOptionStyle', 'reset', 'tagClick', 'clickItem', 'clickWrapper', 'toggle', 'open', 'opened', 'close', 'closed', 'handleClick'];
|
|
3
4
|
var initState = function initState(_ref) {
|
|
@@ -110,9 +111,13 @@ export var renderless = function renderless(props, _ref3, _ref4) {
|
|
|
110
111
|
var parent = _ref4.parent,
|
|
111
112
|
emit = _ref4.emit,
|
|
112
113
|
vm = _ref4.vm,
|
|
113
|
-
dispatch = _ref4.dispatch
|
|
114
|
+
dispatch = _ref4.dispatch,
|
|
115
|
+
mode = _ref4.mode;
|
|
114
116
|
var api = {};
|
|
115
117
|
var dropdownMenu = inject('dropdownMenu', null);
|
|
118
|
+
if (mode === 'mobile') {
|
|
119
|
+
dropdownMenu.state.children = [].concat(_toConsumableArray(dropdownMenu.state.children), [vm]);
|
|
120
|
+
}
|
|
116
121
|
parent = parent.$parent;
|
|
117
122
|
var state = initState({
|
|
118
123
|
reactive: reactive,
|
package/dropdown-menu/vue.js
CHANGED
|
@@ -2,10 +2,12 @@ import { toggleItem, updateOffset, clickOutside, getScroller, useVuePopper } fro
|
|
|
2
2
|
export var api = ['state', 'toggleItem', 'updateOffset', 'clickOutside', 'doDestroy'];
|
|
3
3
|
export var renderless = function renderless(props, hooks, instance) {
|
|
4
4
|
var api = {};
|
|
5
|
-
var reactive = hooks.reactive
|
|
5
|
+
var reactive = hooks.reactive,
|
|
6
|
+
provide = hooks.provide;
|
|
6
7
|
var refs = instance.refs,
|
|
7
8
|
nextTick = instance.nextTick,
|
|
8
|
-
mode = instance.mode
|
|
9
|
+
mode = instance.mode,
|
|
10
|
+
vm = instance.vm;
|
|
9
11
|
var state = reactive({
|
|
10
12
|
offset: 0,
|
|
11
13
|
scroller: null,
|
|
@@ -14,6 +16,7 @@ export var renderless = function renderless(props, hooks, instance) {
|
|
|
14
16
|
showPopper: false
|
|
15
17
|
});
|
|
16
18
|
if (mode === 'mobile') {
|
|
19
|
+
provide('dropdownMenu', vm);
|
|
17
20
|
nextTick(function () {
|
|
18
21
|
state.scroller = getScroller(refs.menu);
|
|
19
22
|
});
|
package/multi-select/index.js
CHANGED
|
@@ -53,14 +53,16 @@ export var confirm = function confirm(_ref3) {
|
|
|
53
53
|
emit = _ref3.emit;
|
|
54
54
|
return function () {
|
|
55
55
|
var wheelLevelItems = getWheelLevelItems(state.wheelData, state.defaultSelectedIndexs);
|
|
56
|
-
var
|
|
56
|
+
var _getSelected = getSelected(wheelLevelItems, state.defaultSelectedIndexs),
|
|
57
|
+
selectedLabels = _getSelected.selectedLabels,
|
|
58
|
+
selectedItems = _getSelected.selectedItems;
|
|
57
59
|
state.headerInfo[state.headerIndex] = {
|
|
58
60
|
isSelected: true,
|
|
59
|
-
title:
|
|
61
|
+
title: selectedLabels,
|
|
60
62
|
isUP: false
|
|
61
63
|
};
|
|
62
64
|
state.defaultSelectedArray[state.headerIndex] = state.defaultSelectedIndexs;
|
|
63
|
-
emit('confirm', state.
|
|
65
|
+
emit('confirm', selectedItems, state.headerIndex, state.defaultSelectedIndexs);
|
|
64
66
|
state.showWheel = false;
|
|
65
67
|
};
|
|
66
68
|
};
|
|
@@ -78,7 +80,7 @@ export var reset = function reset(_ref4) {
|
|
|
78
80
|
};
|
|
79
81
|
state.defaultSelectedIndexs = (_props$defaultSelecte = props.defaultSelectedArray[state.headerIndex]) !== null && _props$defaultSelecte !== void 0 ? _props$defaultSelecte : api.loadDefault(state.headerIndex);
|
|
80
82
|
state.defaultSelectedArray[state.headerIndex] = state.defaultSelectedIndexs;
|
|
81
|
-
emit('reset', state.headerIndex);
|
|
83
|
+
emit('reset', [], state.headerIndex, state.defaultSelectedIndexs);
|
|
82
84
|
state.showWheel = false;
|
|
83
85
|
};
|
|
84
86
|
};
|
|
@@ -90,7 +92,7 @@ export var wheelChange = function wheelChange(state) {
|
|
|
90
92
|
export var clickWheelItem = function clickWheelItem(_ref5) {
|
|
91
93
|
var state = _ref5.state,
|
|
92
94
|
emit = _ref5.emit;
|
|
93
|
-
return function (indexs, text) {
|
|
95
|
+
return function (indexs, text, item) {
|
|
94
96
|
if (indexs.length === 0) {
|
|
95
97
|
state.defaultSelectedIndexs = [-1];
|
|
96
98
|
state.headerInfo[state.headerIndex] = {
|
|
@@ -107,17 +109,12 @@ export var clickWheelItem = function clickWheelItem(_ref5) {
|
|
|
107
109
|
};
|
|
108
110
|
}
|
|
109
111
|
state.defaultSelectedArray[state.headerIndex] = state.defaultSelectedIndexs;
|
|
110
|
-
emit('confirm',
|
|
112
|
+
emit('confirm', item, state.headerIndex, indexs);
|
|
111
113
|
state.showWheel = false;
|
|
112
114
|
};
|
|
113
115
|
};
|
|
114
116
|
export var getWheelLevelItems = function getWheelLevelItems(wheelData, newIndexs) {
|
|
115
|
-
var level_1 = wheelData
|
|
116
|
-
var label = _ref6.label;
|
|
117
|
-
return {
|
|
118
|
-
label: label
|
|
119
|
-
};
|
|
120
|
-
});
|
|
117
|
+
var level_1 = wheelData;
|
|
121
118
|
var level_n = getNextLevel([], wheelData, newIndexs, 0);
|
|
122
119
|
var wheelLevelItems = [];
|
|
123
120
|
if (level_n.length === 0) {
|
|
@@ -137,21 +134,25 @@ export var getNextLevel = function getNextLevel(levelItems, children, nextIndexs
|
|
|
137
134
|
return levelItems;
|
|
138
135
|
}
|
|
139
136
|
};
|
|
140
|
-
export var
|
|
141
|
-
var
|
|
137
|
+
export var getSelected = function getSelected(wheelLevelItems, selectedIndexs) {
|
|
138
|
+
var selectedItems = [];
|
|
142
139
|
wheelLevelItems.forEach(function (levelItem, i) {
|
|
143
|
-
var _levelItem$index;
|
|
144
140
|
var index = selectedIndexs[i];
|
|
145
|
-
if (
|
|
146
|
-
|
|
147
|
-
selectedLabels.push((_levelItem$index2 = levelItem[index]) === null || _levelItem$index2 === void 0 ? void 0 : _levelItem$index2.label);
|
|
141
|
+
if (levelItem[index]) {
|
|
142
|
+
selectedItems.push(levelItem[index]);
|
|
148
143
|
}
|
|
149
144
|
});
|
|
150
|
-
|
|
145
|
+
var selectedLabels = selectedItems.map(function (item) {
|
|
146
|
+
return item === null || item === void 0 ? void 0 : item.label;
|
|
147
|
+
}).join(' ');
|
|
148
|
+
return {
|
|
149
|
+
selectedLabels: selectedLabels,
|
|
150
|
+
selectedItems: selectedItems
|
|
151
|
+
};
|
|
151
152
|
};
|
|
152
|
-
export var loadDefault = function loadDefault(
|
|
153
|
-
var props =
|
|
154
|
-
state =
|
|
153
|
+
export var loadDefault = function loadDefault(_ref6) {
|
|
154
|
+
var props = _ref6.props,
|
|
155
|
+
state = _ref6.state;
|
|
155
156
|
return function (value) {
|
|
156
157
|
var _props$defaultSelecte2, _state$dataSource$sta;
|
|
157
158
|
var current = (_props$defaultSelecte2 = props.defaultSelectedArray[value]) !== null && _props$defaultSelecte2 !== void 0 ? _props$defaultSelecte2 : [];
|
package/package.json
CHANGED
|
@@ -1,16 +1,24 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@opentiny/vue-renderless",
|
|
3
|
-
"version": "3.6.0
|
|
4
|
-
"description": "
|
|
3
|
+
"version": "3.6.0",
|
|
4
|
+
"description": "An enterprise-class UI component library, support both Vue.js 2 and Vue.js 3, as well as PC and mobile.",
|
|
5
|
+
"homepage": "https://opentiny.design/tiny-vue",
|
|
5
6
|
"repository": {
|
|
6
7
|
"type": "git",
|
|
7
|
-
"url": ""
|
|
8
|
+
"url": "https://github.com/opentiny/tiny-vue-renderless"
|
|
8
9
|
},
|
|
9
10
|
"keywords": [
|
|
10
11
|
"vue",
|
|
11
|
-
"
|
|
12
|
+
"vue3",
|
|
13
|
+
"frontend",
|
|
14
|
+
"component-library",
|
|
15
|
+
"components",
|
|
16
|
+
"vue-components",
|
|
17
|
+
"opentiny",
|
|
18
|
+
"renderless-components",
|
|
19
|
+
"headless-components"
|
|
12
20
|
],
|
|
13
|
-
"author": "
|
|
21
|
+
"author": "OpenTiny Team",
|
|
14
22
|
"license": "MIT",
|
|
15
23
|
"sideEffects": false,
|
|
16
24
|
"scripts": {
|
package/pull-refresh/index.js
CHANGED
|
@@ -32,13 +32,17 @@ export var onTouchstart = function onTouchstart(state) {
|
|
|
32
32
|
state.draggposition = event.touches[0].clientY;
|
|
33
33
|
};
|
|
34
34
|
};
|
|
35
|
-
export var onTouchmove = function onTouchmove(
|
|
35
|
+
export var onTouchmove = function onTouchmove(_ref2) {
|
|
36
|
+
var props = _ref2.props,
|
|
37
|
+
state = _ref2.state;
|
|
36
38
|
return function (event) {
|
|
37
39
|
if (event.touches[0].clientY < state.draggposition) {
|
|
38
40
|
if (!state.pullUp.pullUpDisabled) {
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
41
|
+
if (props.hasMore) {
|
|
42
|
+
state.translate3d = (event.touches[0].clientY - state.draggposition) / 2;
|
|
43
|
+
state.pullUpReplaces = Math.abs(state.translate3d) > state.pullUp.footHeight ? state.loosingText : state.pullUp.pullingUpText;
|
|
44
|
+
state.pullDownReplaces = '';
|
|
45
|
+
}
|
|
42
46
|
}
|
|
43
47
|
} else {
|
|
44
48
|
if (!state.pullDown.pullDownDisabled) {
|
|
@@ -52,10 +56,10 @@ export var onTouchmove = function onTouchmove(state) {
|
|
|
52
56
|
state.pullDownLoading = false;
|
|
53
57
|
};
|
|
54
58
|
};
|
|
55
|
-
export var onTouchend = function onTouchend(
|
|
56
|
-
var api =
|
|
57
|
-
props =
|
|
58
|
-
state =
|
|
59
|
+
export var onTouchend = function onTouchend(_ref3) {
|
|
60
|
+
var api = _ref3.api,
|
|
61
|
+
props = _ref3.props,
|
|
62
|
+
state = _ref3.state;
|
|
59
63
|
return function () {
|
|
60
64
|
state.animationDuration = props.animationDuration;
|
|
61
65
|
if (Math.abs(state.translate3d) >= state.pullDown.headHeight || Math.abs(state.translate3d) >= state.pullUp.footHeight) {
|
|
@@ -98,9 +102,9 @@ export var onTouchend = function onTouchend(_ref2) {
|
|
|
98
102
|
}
|
|
99
103
|
};
|
|
100
104
|
};
|
|
101
|
-
export var mountedHandler = function mountedHandler(
|
|
102
|
-
var api =
|
|
103
|
-
refs =
|
|
105
|
+
export var mountedHandler = function mountedHandler(_ref4) {
|
|
106
|
+
var api = _ref4.api,
|
|
107
|
+
refs = _ref4.refs;
|
|
104
108
|
return function () {
|
|
105
109
|
var track = refs.track;
|
|
106
110
|
on(track, 'touchstart', api.onTouchstart);
|
|
@@ -108,9 +112,9 @@ export var mountedHandler = function mountedHandler(_ref3) {
|
|
|
108
112
|
on(track, 'touchend', api.onTouchend);
|
|
109
113
|
};
|
|
110
114
|
};
|
|
111
|
-
export var beforeUnmountHandler = function beforeUnmountHandler(
|
|
112
|
-
var api =
|
|
113
|
-
refs =
|
|
115
|
+
export var beforeUnmountHandler = function beforeUnmountHandler(_ref5) {
|
|
116
|
+
var api = _ref5.api,
|
|
117
|
+
refs = _ref5.refs;
|
|
114
118
|
return function () {
|
|
115
119
|
var track = refs.track;
|
|
116
120
|
off(track, 'touchstart', api.onTouchstart);
|
|
@@ -118,9 +122,9 @@ export var beforeUnmountHandler = function beforeUnmountHandler(_ref4) {
|
|
|
118
122
|
off(track, 'touchend', api.onTouchend);
|
|
119
123
|
};
|
|
120
124
|
};
|
|
121
|
-
export var handlerModelValue = function handlerModelValue(
|
|
122
|
-
var api =
|
|
123
|
-
state =
|
|
125
|
+
export var handlerModelValue = function handlerModelValue(_ref6) {
|
|
126
|
+
var api = _ref6.api,
|
|
127
|
+
state = _ref6.state;
|
|
124
128
|
return function (value, result) {
|
|
125
129
|
state.pullUpLoading = false;
|
|
126
130
|
state.pullDownLoading = false;
|
package/pull-refresh/vue.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { mountedHandler, beforeUnmountHandler, handlerModelValue, onTouchstart, onTouchmove, onTouchend, initPullRefresh, clearPullRefresh } from './index';
|
|
2
2
|
export var api = ['state'];
|
|
3
3
|
export var renderless = function renderless(props, _ref, _ref2) {
|
|
4
|
-
var
|
|
4
|
+
var watch = _ref.watch,
|
|
5
5
|
onMounted = _ref.onMounted,
|
|
6
6
|
reactive = _ref.reactive,
|
|
7
7
|
onBeforeUnmount = _ref.onBeforeUnmount;
|
|
@@ -19,6 +19,7 @@ export var renderless = function renderless(props, _ref, _ref2) {
|
|
|
19
19
|
loosingText: '',
|
|
20
20
|
successText: '',
|
|
21
21
|
failedText: '',
|
|
22
|
+
noMoreText: '',
|
|
22
23
|
pullUp: null,
|
|
23
24
|
pullDown: null,
|
|
24
25
|
successDuration: props.successDuration,
|
|
@@ -27,7 +28,10 @@ export var renderless = function renderless(props, _ref, _ref2) {
|
|
|
27
28
|
Object.assign(api, {
|
|
28
29
|
state: state,
|
|
29
30
|
onTouchstart: onTouchstart(state),
|
|
30
|
-
onTouchmove: onTouchmove(
|
|
31
|
+
onTouchmove: onTouchmove({
|
|
32
|
+
props: props,
|
|
33
|
+
state: state
|
|
34
|
+
}),
|
|
31
35
|
onTouchend: onTouchend({
|
|
32
36
|
api: api,
|
|
33
37
|
props: props,
|
|
@@ -52,6 +56,14 @@ export var renderless = function renderless(props, _ref, _ref2) {
|
|
|
52
56
|
}),
|
|
53
57
|
clearPullRefresh: clearPullRefresh(state)
|
|
54
58
|
});
|
|
59
|
+
watch(function () {
|
|
60
|
+
return props.hasMore;
|
|
61
|
+
}, function (value) {
|
|
62
|
+
if (!value) {
|
|
63
|
+
state.noMoreText = t('ui.pullRefresh.noMore');
|
|
64
|
+
api.clearPullRefresh();
|
|
65
|
+
}
|
|
66
|
+
});
|
|
55
67
|
onMounted(function () {
|
|
56
68
|
api.mountedHandler({
|
|
57
69
|
api: api,
|
package/transfer/index.js
CHANGED
|
@@ -105,22 +105,25 @@ export var addToLeft = function addToLeft(_ref5) {
|
|
|
105
105
|
props = _ref5.props,
|
|
106
106
|
state = _ref5.state;
|
|
107
107
|
return function (value) {
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
state.rightChecked.forEach(function (item) {
|
|
116
|
-
var index = currentValue.indexOf(item);
|
|
117
|
-
if (index > -1) {
|
|
118
|
-
currentValue.splice(index, 1);
|
|
108
|
+
var change = function change() {
|
|
109
|
+
state.isToLeft = true;
|
|
110
|
+
var currentValue = props.modelValue.slice();
|
|
111
|
+
if (value === 'all') {
|
|
112
|
+
state.rightChecked = state.rightData.map(function (item) {
|
|
113
|
+
return item[props.props.key];
|
|
114
|
+
});
|
|
119
115
|
}
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
116
|
+
state.rightChecked.forEach(function (item) {
|
|
117
|
+
var index = currentValue.indexOf(item);
|
|
118
|
+
if (index > -1) {
|
|
119
|
+
currentValue.splice(index, 1);
|
|
120
|
+
}
|
|
121
|
+
});
|
|
122
|
+
state.rightChecked = state.rightChecked.slice(0);
|
|
123
|
+
emit('update:modelValue', currentValue);
|
|
124
|
+
emit('change', currentValue, 'left', state.rightChecked);
|
|
125
|
+
};
|
|
126
|
+
props.beforeTransfer ? props.beforeTransfer(change) : change();
|
|
124
127
|
};
|
|
125
128
|
};
|
|
126
129
|
export var addToRight = function addToRight(_ref6) {
|
|
@@ -130,40 +133,43 @@ export var addToRight = function addToRight(_ref6) {
|
|
|
130
133
|
state = _ref6.state,
|
|
131
134
|
Tree = _ref6.Tree;
|
|
132
135
|
return function (value) {
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
if (
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
if (value === 'all') {
|
|
147
|
-
state.leftData.forEach(function (item) {
|
|
148
|
-
var itemKey = item[key];
|
|
149
|
-
if (props.modelValue.indexOf(itemKey) === -1) {
|
|
150
|
-
itemsToBeMoved.push(itemKey);
|
|
151
|
-
}
|
|
152
|
-
});
|
|
153
|
-
state.leftChecked = itemsToBeMoved.slice();
|
|
136
|
+
var change = function change() {
|
|
137
|
+
state.isToLeft = false;
|
|
138
|
+
var currentValue = props.modelValue.slice();
|
|
139
|
+
var itemsToBeMoved = [];
|
|
140
|
+
var key = props.props.key;
|
|
141
|
+
if (props.render && props.render.plugin.name === Tree) {
|
|
142
|
+
if (!props.treeOp.checkStrictly) {
|
|
143
|
+
currentValue = refs.leftPanel.$refs.plugin.getCheckedKeys();
|
|
144
|
+
} else {
|
|
145
|
+
state.leftChecked.forEach(function (item) {
|
|
146
|
+
return currentValue.indexOf(item) === -1 && currentValue.push(item);
|
|
147
|
+
});
|
|
148
|
+
}
|
|
154
149
|
} else {
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
150
|
+
if (value === 'all') {
|
|
151
|
+
state.leftData.forEach(function (item) {
|
|
152
|
+
var itemKey = item[key];
|
|
153
|
+
if (props.modelValue.indexOf(itemKey) === -1) {
|
|
154
|
+
itemsToBeMoved.push(itemKey);
|
|
155
|
+
}
|
|
156
|
+
});
|
|
157
|
+
state.leftChecked = itemsToBeMoved.slice();
|
|
158
|
+
} else {
|
|
159
|
+
props.data.forEach(function (item) {
|
|
160
|
+
var itemKey = item[key];
|
|
161
|
+
if (state.leftChecked.indexOf(itemKey) > -1 && props.modelValue.indexOf(itemKey) === -1) {
|
|
162
|
+
itemsToBeMoved.push(itemKey);
|
|
163
|
+
}
|
|
164
|
+
});
|
|
165
|
+
}
|
|
166
|
+
currentValue = props.targetOrder === 'unshift' ? itemsToBeMoved.concat(currentValue) : currentValue.concat(itemsToBeMoved);
|
|
161
167
|
}
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
168
|
+
state.rightDisabled = false;
|
|
169
|
+
emit('update:modelValue', currentValue);
|
|
170
|
+
emit('change', currentValue, 'right', state.leftChecked);
|
|
171
|
+
};
|
|
172
|
+
props.beforeTransfer ? props.beforeTransfer(change) : change();
|
|
167
173
|
};
|
|
168
174
|
};
|
|
169
175
|
export var clearQuery = function clearQuery(refs) {
|
package/wheel/index.js
CHANGED
|
@@ -12,12 +12,7 @@ export var loadPickerData = function loadPickerData(_ref) {
|
|
|
12
12
|
return function () {
|
|
13
13
|
state.dataSource = cloneDeep(props.dataSource);
|
|
14
14
|
state.defaultSelectedIndexs = cloneDeep(props.defaultSelectedIndexs);
|
|
15
|
-
var level_1 = state.dataSource
|
|
16
|
-
var label = _ref2.label;
|
|
17
|
-
return {
|
|
18
|
-
label: label
|
|
19
|
-
};
|
|
20
|
-
});
|
|
15
|
+
var level_1 = state.dataSource;
|
|
21
16
|
var level_n = getNextLevel([], state.dataSource, state.defaultSelectedIndexs, 0);
|
|
22
17
|
if (level_n.length === 0) {
|
|
23
18
|
state.pickerData = [level_1];
|
|
@@ -36,9 +31,9 @@ export var getNextLevel = function getNextLevel(levelItems, children, nextIndexs
|
|
|
36
31
|
return levelItems;
|
|
37
32
|
}
|
|
38
33
|
};
|
|
39
|
-
export var wheelChanged = function wheelChanged(
|
|
40
|
-
var api =
|
|
41
|
-
state =
|
|
34
|
+
export var wheelChanged = function wheelChanged(_ref2) {
|
|
35
|
+
var api = _ref2.api,
|
|
36
|
+
state = _ref2.state;
|
|
42
37
|
return function (newIndexs, oldIndexs) {
|
|
43
38
|
if (newIndexs.length > 1) {
|
|
44
39
|
newIndexs.forEach(function (ii, ri) {
|
|
@@ -61,10 +56,10 @@ export var getChildren = function getChildren(levelItems, newIndexs, start, maxL
|
|
|
61
56
|
return levelItem;
|
|
62
57
|
}
|
|
63
58
|
};
|
|
64
|
-
export var wheelsTo = function wheelsTo(
|
|
65
|
-
var api =
|
|
66
|
-
state =
|
|
67
|
-
nextTick =
|
|
59
|
+
export var wheelsTo = function wheelsTo(_ref3) {
|
|
60
|
+
var api = _ref3.api,
|
|
61
|
+
state = _ref3.state,
|
|
62
|
+
nextTick = _ref3.nextTick;
|
|
68
63
|
return function (indexs) {
|
|
69
64
|
nextTick(function () {
|
|
70
65
|
state.wheels.forEach(function (wheel, i) {
|
|
@@ -81,13 +76,13 @@ export var refreshWheel = function refreshWheel(nextTick) {
|
|
|
81
76
|
});
|
|
82
77
|
};
|
|
83
78
|
};
|
|
84
|
-
export var loadWheels = function loadWheels(
|
|
85
|
-
var api =
|
|
86
|
-
props =
|
|
87
|
-
state =
|
|
88
|
-
nextTick =
|
|
89
|
-
refs =
|
|
90
|
-
return function (
|
|
79
|
+
export var loadWheels = function loadWheels(_ref4) {
|
|
80
|
+
var api = _ref4.api,
|
|
81
|
+
props = _ref4.props,
|
|
82
|
+
state = _ref4.state,
|
|
83
|
+
nextTick = _ref4.nextTick,
|
|
84
|
+
refs = _ref4.refs;
|
|
85
|
+
return function () {
|
|
91
86
|
if (state.wheels.length === 0) {
|
|
92
87
|
nextTick(function () {
|
|
93
88
|
state.wheels = [];
|
|
@@ -103,11 +98,11 @@ export var loadWheels = function loadWheels(_ref5) {
|
|
|
103
98
|
}
|
|
104
99
|
};
|
|
105
100
|
};
|
|
106
|
-
export var createWheelHasFooter = function createWheelHasFooter(
|
|
107
|
-
var api =
|
|
108
|
-
state =
|
|
109
|
-
emit =
|
|
110
|
-
BScroll =
|
|
101
|
+
export var createWheelHasFooter = function createWheelHasFooter(_ref5) {
|
|
102
|
+
var api = _ref5.api,
|
|
103
|
+
state = _ref5.state,
|
|
104
|
+
emit = _ref5.emit,
|
|
105
|
+
BScroll = _ref5.BScroll;
|
|
111
106
|
return function (wheelWrapper, i) {
|
|
112
107
|
var wheels = state.wheels;
|
|
113
108
|
if (!wheels[i]) {
|
|
@@ -125,16 +120,7 @@ export var createWheelHasFooter = function createWheelHasFooter(_ref6) {
|
|
|
125
120
|
var currentSelectedIndexs = [].concat(_toConsumableArray(state.prevSelectedIndexs.slice(0, i)), [currentSelectedIndex], _toConsumableArray(new Array(state.defaultSelectedIndexs.length - i - 1).fill(0)));
|
|
126
121
|
api.wheelChanged(currentSelectedIndexs, state.prevSelectedIndexs);
|
|
127
122
|
state.prevSelectedIndexs = currentSelectedIndexs;
|
|
128
|
-
|
|
129
|
-
state.pickerData.forEach(function (data, i) {
|
|
130
|
-
var _data$index;
|
|
131
|
-
var index = currentSelectedIndexs[i];
|
|
132
|
-
if ((_data$index = data[index]) !== null && _data$index !== void 0 && _data$index.label) {
|
|
133
|
-
var _data$index2;
|
|
134
|
-
selectedLabels.push((_data$index2 = data[index]) === null || _data$index2 === void 0 ? void 0 : _data$index2.label);
|
|
135
|
-
}
|
|
136
|
-
});
|
|
137
|
-
emit('change', currentSelectedIndexs, selectedLabels.join(' '));
|
|
123
|
+
emit('change', currentSelectedIndexs);
|
|
138
124
|
});
|
|
139
125
|
api.wheelsTo(state.defaultSelectedIndexs);
|
|
140
126
|
api.changeWheelItemStyle(state.pickerData, state.defaultSelectedIndexs);
|
|
@@ -144,10 +130,10 @@ export var createWheelHasFooter = function createWheelHasFooter(_ref6) {
|
|
|
144
130
|
return wheels[i];
|
|
145
131
|
};
|
|
146
132
|
};
|
|
147
|
-
export var createWheelNoFooter = function createWheelNoFooter(
|
|
148
|
-
var api =
|
|
149
|
-
state =
|
|
150
|
-
BScroll =
|
|
133
|
+
export var createWheelNoFooter = function createWheelNoFooter(_ref6) {
|
|
134
|
+
var api = _ref6.api,
|
|
135
|
+
state = _ref6.state,
|
|
136
|
+
BScroll = _ref6.BScroll;
|
|
151
137
|
return function (wheelWrapper) {
|
|
152
138
|
var wheels = state.wheels;
|
|
153
139
|
if (!wheels[0]) {
|
|
@@ -184,18 +170,18 @@ export var dealWheels = function dealWheels(state) {
|
|
|
184
170
|
state.defaultSelectedIndexs = [];
|
|
185
171
|
};
|
|
186
172
|
};
|
|
187
|
-
export var clickWheelItem = function clickWheelItem(
|
|
188
|
-
var api =
|
|
189
|
-
state =
|
|
190
|
-
emit =
|
|
173
|
+
export var clickWheelItem = function clickWheelItem(_ref7) {
|
|
174
|
+
var api = _ref7.api,
|
|
175
|
+
state = _ref7.state,
|
|
176
|
+
emit = _ref7.emit;
|
|
191
177
|
return function (index) {
|
|
192
178
|
api.changeWheelItemStyle(state.pickerData, [index]);
|
|
193
179
|
var rItem = state.pickerData[0][index];
|
|
194
180
|
if (state.defaultSelectedIndexs[0] !== index) {
|
|
195
181
|
var selectedLabel = rItem === null || rItem === void 0 ? void 0 : rItem.label;
|
|
196
|
-
emit('clickWheelItem', [index], selectedLabel);
|
|
182
|
+
emit('clickWheelItem', [index], selectedLabel, rItem);
|
|
197
183
|
} else {
|
|
198
|
-
emit('clickWheelItem', [], '');
|
|
184
|
+
emit('clickWheelItem', [], '', []);
|
|
199
185
|
}
|
|
200
186
|
};
|
|
201
187
|
};
|