@tuya-miniapp/smart-ui 2.1.10 → 2.1.11-beta-2
Sign up to get free protection for your applications and to get access to all the features.
- package/dist/action-sheet/index.css +1 -1
- package/dist/action-sheet/index.js +0 -8
- package/dist/action-sheet/index.wxml +1 -1
- package/dist/action-sheet/index.wxss +1 -1
- package/dist/cell/index.js +10 -4
- package/dist/common/utils.d.ts +1 -0
- package/dist/common/utils.js +6 -0
- package/dist/datetime-picker/demo/index.js +20 -0
- package/dist/datetime-picker/index.js +92 -14
- package/dist/datetime-picker/index.wxml +1 -0
- package/dist/field/index.js +1 -1
- package/dist/icon/index.wxs +3 -1
- package/dist/notice-bar/index.js +1 -1
- package/dist/picker/demo/index.js +1 -0
- package/dist/picker/index.wxml +2 -1
- package/dist/picker/shared.d.ts +4 -0
- package/dist/picker/shared.js +4 -0
- package/dist/picker-column/index.css +1 -1
- package/dist/picker-column/index.js +154 -44
- package/dist/picker-column/index.wxml +22 -11
- package/dist/picker-column/index.wxs +22 -5
- package/dist/picker-column/index.wxss +1 -1
- package/dist/stepper/index.js +2 -0
- package/dist/tag/index.js +1 -1
- package/lib/action-sheet/index.css +1 -1
- package/lib/action-sheet/index.js +0 -8
- package/lib/action-sheet/index.wxml +1 -1
- package/lib/action-sheet/index.wxss +1 -1
- package/lib/cell/index.js +15 -9
- package/lib/common/utils.d.ts +1 -0
- package/lib/common/utils.js +8 -1
- package/lib/datetime-picker/demo/index.js +20 -0
- package/lib/datetime-picker/index.js +97 -18
- package/lib/datetime-picker/index.wxml +1 -0
- package/lib/field/index.js +2 -2
- package/lib/icon/index.wxs +3 -1
- package/lib/notice-bar/index.js +2 -2
- package/lib/picker/demo/index.js +1 -0
- package/lib/picker/index.wxml +2 -1
- package/lib/picker/shared.d.ts +4 -0
- package/lib/picker/shared.js +4 -0
- package/lib/picker-column/index.css +1 -1
- package/lib/picker-column/index.js +192 -44
- package/lib/picker-column/index.wxml +22 -11
- package/lib/picker-column/index.wxs +22 -5
- package/lib/picker-column/index.wxss +1 -1
- package/lib/stepper/index.js +2 -0
- package/lib/tag/index.js +2 -2
- package/package.json +3 -3
@@ -9,18 +9,29 @@
|
|
9
9
|
bind:touchend="onTouchEnd"
|
10
10
|
bind:touchcancel="onTouchEnd"
|
11
11
|
>
|
12
|
-
<view style="{{ computed.wrapperStyle({ offset, itemHeight, visibleItemCount, animate, duration, renderStart, unit }) }}"
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
|
12
|
+
<view class="smart-picker-column__offset" style="height: {{ itemHeight * options.length }}px;{{ computed.wrapperStyle({ offset, itemHeight, visibleItemCount, animate, duration, renderStart, unit }) }}" id="options">
|
13
|
+
<view class="smart-picker-column__visual" style="{{ computed.wrapperInterStyle({ offset, itemHeight, visibleItemCount, renderStart }) }}">
|
14
|
+
<view
|
15
|
+
wx:for="{{ optionsV }}"
|
16
|
+
wx:for-item="option"
|
17
|
+
wx:key="index"
|
18
|
+
data-index="{{ renderStart + index }}"
|
19
|
+
style="height: {{ itemHeight }}px;{{renderStart + index === currentIndex ? activeStyle : ''}}"
|
20
|
+
class="smart-ellipsis {{ utils.bem('picker-column__item', { disabled: option && option.disabled, selected: renderStart + index === currentIndex }) }} {{ renderStart + index === currentIndex ? 'active-class' : '' }}"
|
21
|
+
>
|
22
|
+
{{ computed.optionText(option, valueKey) }}
|
23
|
+
</view>
|
24
|
+
</view>
|
25
|
+
</view>
|
26
|
+
<view class="smart-picker-column__mask">
|
27
|
+
<view
|
28
|
+
wx:for="{{ visibleItemCount }}"
|
18
29
|
wx:key="index"
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
|
30
|
+
class="smart-picker-column__mask__item"
|
31
|
+
data-index="{{ currentIndex + index - 2 }}"
|
32
|
+
bind:tap="onClickItem"
|
33
|
+
>
|
34
|
+
</view>
|
24
35
|
</view>
|
25
36
|
<view wx:if="{{unit}}" class="smart-picker-column__unit" style="height: {{ itemHeight }}px">
|
26
37
|
<view class="smart-picker-column__unit_text smart-picker-column__unit_hidden" >{{unit}}</view>
|
@@ -20,15 +20,11 @@ function rootStyle(data) {
|
|
20
20
|
function wrapperStyle(data) {
|
21
21
|
var offset =
|
22
22
|
data.offset + (data.itemHeight * (data.visibleItemCount - 1)) / 2;
|
23
|
-
// 长列表优化
|
24
|
-
if (data.renderStart) {
|
25
|
-
offset += data.renderStart * data.itemHeight;
|
26
|
-
}
|
27
23
|
offset = addUnit(offset);
|
28
24
|
if (data.animate) {
|
29
25
|
return style({
|
30
26
|
'text-indent': data.unit ? '-8rpx' : '0',
|
31
|
-
transition: 'transform ' + data.duration + 'ms',
|
27
|
+
transition: 'transform ' + data.duration + 'ms ease-out',
|
32
28
|
'line-height': addUnit(data.itemHeight),
|
33
29
|
transform: 'translate3d(0, ' + offset + ', 0)',
|
34
30
|
});
|
@@ -40,8 +36,29 @@ function wrapperStyle(data) {
|
|
40
36
|
});
|
41
37
|
}
|
42
38
|
|
39
|
+
function wrapperInterStyle(data) {
|
40
|
+
var offset = data.renderStart * data.itemHeight;
|
41
|
+
offset = addUnit(offset);
|
42
|
+
return style({
|
43
|
+
'padding-top': offset,
|
44
|
+
});
|
45
|
+
}
|
46
|
+
|
47
|
+
// function wrapperItemStyle(data) {
|
48
|
+
// const { index, animationIndex: currentIndex } = data;
|
49
|
+
// const offsetIndex = currentIndex - index;
|
50
|
+
// const rotateX = offsetIndex * 25 > 0 ? Math.min(offsetIndex * 25, 25 * 2) : Math.max(offsetIndex * 25, -25 * 2)
|
51
|
+
// const scale = Math.min(Math.abs(offsetIndex * 0.05), 0.05 * 2)
|
52
|
+
// return style({
|
53
|
+
// transition: 'transform ' + data.duration + 'ms ease-out',
|
54
|
+
// transform: `rotateX(${rotateX}deg) scale(${1 - scale})`
|
55
|
+
// });
|
56
|
+
// }
|
57
|
+
|
43
58
|
module.exports = {
|
44
59
|
optionText: optionText,
|
45
60
|
rootStyle: rootStyle,
|
46
61
|
wrapperStyle: wrapperStyle,
|
62
|
+
wrapperInterStyle: wrapperInterStyle,
|
63
|
+
// wrapperItemStyle: wrapperItemStyle
|
47
64
|
};
|
@@ -1 +1 @@
|
|
1
|
-
@import '../common/index.wxss';.smart-picker-column{color:var(--picker-option-selected-text-color,var(--app-B6-N1,#000));font-size:var(--picker-option-font-size,16px);font-weight:var(--font-weight-bold,500);position:relative;
|
1
|
+
@import '../common/index.wxss';.smart-picker-column{color:var(--picker-option-selected-text-color,var(--app-B6-N1,#000));font-size:var(--picker-option-font-size,16px);font-weight:var(--font-weight-bold,500);text-align:center}.smart-picker-column,.smart-picker-column__offset{position:relative;width:100%}.smart-picker-column__visual{position:absolute;top:0;width:100%}.smart-picker-column__item{pointer-events:none}.smart-picker-column__item--selected{color:var(--picker-option-selected-text-color,var(--app-B6-N1,#000));font-weight:var(--font-weight-bold,500)}.smart-picker-column__item--disabled{opacity:var(--picker-option-disabled-opacity,.3)}.smart-picker-column__mask{background:transparent;display:flex;flex-direction:column;height:100%;position:absolute;top:0;width:100%;z-index:10}.smart-picker-column__mask__item{flex:1}.smart-picker-column__unit{align-items:center;display:flex;justify-content:center;position:absolute;top:50%;transform:translateY(-50%);width:100%}.smart-picker-column__unit_text{color:var(--picker-option-unit-text-color,var(--app-B6-N4,rgba(0,0,0,.4)));font-size:var(--picker-option-unit-font-size,12px)}.smart-picker-column__unit_hidden{opacity:0}.smart-picker-column__max-text{font-weight:var(--font-weight-bold,500);opacity:0}
|
package/lib/stepper/index.js
CHANGED
@@ -160,6 +160,8 @@ function equal(value1, value2) {
|
|
160
160
|
var value = this.format(add(+this.data.currentValue, diff));
|
161
161
|
this.emitChange(value);
|
162
162
|
this.$emit(type);
|
163
|
+
// @ts-ignore
|
164
|
+
ty.vibrateShort({ type: 'light' });
|
163
165
|
},
|
164
166
|
longPressStep: function () {
|
165
167
|
var _this = this;
|
package/lib/tag/index.js
CHANGED
@@ -3,7 +3,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
3
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
4
4
|
};
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
6
|
-
var
|
6
|
+
var Xmark_js_1 = __importDefault(require("@tuya-miniapp/icons/dist/svg/Xmark.js"));
|
7
7
|
var component_1 = require("../common/component");
|
8
8
|
(0, component_1.SmartComponent)({
|
9
9
|
props: {
|
@@ -23,7 +23,7 @@ var component_1 = require("../common/component");
|
|
23
23
|
closeable: Boolean,
|
24
24
|
},
|
25
25
|
data: {
|
26
|
-
crossIcon:
|
26
|
+
crossIcon: Xmark_js_1.default,
|
27
27
|
closeColor: '#fff',
|
28
28
|
},
|
29
29
|
methods: {
|
package/package.json
CHANGED
@@ -1,12 +1,12 @@
|
|
1
1
|
{
|
2
2
|
"name": "@tuya-miniapp/smart-ui",
|
3
|
-
"version": "2.1.
|
3
|
+
"version": "2.1.11-beta-2",
|
4
4
|
"author": "MiniApp Team",
|
5
5
|
"license": "MIT",
|
6
6
|
"miniprogram": "lib",
|
7
7
|
"description": "轻量、可靠的智能小程序 UI 组件库",
|
8
8
|
"scripts": {
|
9
|
-
"prepublishOnly": "node ./build/
|
9
|
+
"prepublishOnly": "node ./build/prepublishOnly.js",
|
10
10
|
"dev": "NODE_OPTIONS=--no-experimental-fetch node build/dev.mjs",
|
11
11
|
"lint": "eslint ./packages --ext .js,.ts --fix",
|
12
12
|
"lint:style": "stylelint \"packages/**/*.less\" --fix",
|
@@ -78,7 +78,7 @@
|
|
78
78
|
"iOS >= 9"
|
79
79
|
],
|
80
80
|
"dependencies": {
|
81
|
-
"@ray-js/components-ty-slider": "^0.
|
81
|
+
"@ray-js/components-ty-slider": "^0.3.1",
|
82
82
|
"@tuya-miniapp/icons": "^2.1.7"
|
83
83
|
},
|
84
84
|
"maintainers": [
|