@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.
Files changed (49) hide show
  1. package/dist/action-sheet/index.css +1 -1
  2. package/dist/action-sheet/index.js +0 -8
  3. package/dist/action-sheet/index.wxml +1 -1
  4. package/dist/action-sheet/index.wxss +1 -1
  5. package/dist/cell/index.js +10 -4
  6. package/dist/common/utils.d.ts +1 -0
  7. package/dist/common/utils.js +6 -0
  8. package/dist/datetime-picker/demo/index.js +20 -0
  9. package/dist/datetime-picker/index.js +92 -14
  10. package/dist/datetime-picker/index.wxml +1 -0
  11. package/dist/field/index.js +1 -1
  12. package/dist/icon/index.wxs +3 -1
  13. package/dist/notice-bar/index.js +1 -1
  14. package/dist/picker/demo/index.js +1 -0
  15. package/dist/picker/index.wxml +2 -1
  16. package/dist/picker/shared.d.ts +4 -0
  17. package/dist/picker/shared.js +4 -0
  18. package/dist/picker-column/index.css +1 -1
  19. package/dist/picker-column/index.js +154 -44
  20. package/dist/picker-column/index.wxml +22 -11
  21. package/dist/picker-column/index.wxs +22 -5
  22. package/dist/picker-column/index.wxss +1 -1
  23. package/dist/stepper/index.js +2 -0
  24. package/dist/tag/index.js +1 -1
  25. package/lib/action-sheet/index.css +1 -1
  26. package/lib/action-sheet/index.js +0 -8
  27. package/lib/action-sheet/index.wxml +1 -1
  28. package/lib/action-sheet/index.wxss +1 -1
  29. package/lib/cell/index.js +15 -9
  30. package/lib/common/utils.d.ts +1 -0
  31. package/lib/common/utils.js +8 -1
  32. package/lib/datetime-picker/demo/index.js +20 -0
  33. package/lib/datetime-picker/index.js +97 -18
  34. package/lib/datetime-picker/index.wxml +1 -0
  35. package/lib/field/index.js +2 -2
  36. package/lib/icon/index.wxs +3 -1
  37. package/lib/notice-bar/index.js +2 -2
  38. package/lib/picker/demo/index.js +1 -0
  39. package/lib/picker/index.wxml +2 -1
  40. package/lib/picker/shared.d.ts +4 -0
  41. package/lib/picker/shared.js +4 -0
  42. package/lib/picker-column/index.css +1 -1
  43. package/lib/picker-column/index.js +192 -44
  44. package/lib/picker-column/index.wxml +22 -11
  45. package/lib/picker-column/index.wxs +22 -5
  46. package/lib/picker-column/index.wxss +1 -1
  47. package/lib/stepper/index.js +2 -0
  48. package/lib/tag/index.js +2 -2
  49. 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
- bind:transitionend="onTransitionEnd"
14
- id="options">
15
- <view
16
- wx:for="{{ optionsV }}"
17
- wx:for-item="option"
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
- data-index="{{ renderStart + index }}"
20
- style="height: {{ itemHeight }}px;{{renderStart + index === currentIndex ? activeStyle : ''}}"
21
- class="smart-ellipsis {{ utils.bem('picker-column__item', { disabled: option && option.disabled, selected: renderStart + index === currentIndex }) }} {{ renderStart + index === currentIndex ? 'active-class' : '' }}"
22
- bindtap="onClickItem"
23
- >{{ computed.optionText(option, valueKey) }}</view>
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;text-align:center}.smart-picker-column__item{padding:0 5px}.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__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}
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}
@@ -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 Xmark_1 = __importDefault(require("@tuya-miniapp/icons/dist/svg/Xmark"));
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: Xmark_1.default,
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.10",
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/transCSSVar.js",
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.2.52",
81
+ "@ray-js/components-ty-slider": "^0.3.1",
82
82
  "@tuya-miniapp/icons": "^2.1.7"
83
83
  },
84
84
  "maintainers": [