@tuya-miniapp/smart-ui 2.5.1-beta-2 → 2.5.1-beta-4

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.
Files changed (117) hide show
  1. package/dist/action-sheet/index.js +3 -1
  2. package/dist/action-sheet/index.wxml +1 -1
  3. package/dist/bottom-sheet/index.css +1 -1
  4. package/dist/bottom-sheet/index.js +4 -4
  5. package/dist/bottom-sheet/index.wxml +7 -1
  6. package/dist/bottom-sheet/index.wxs +12 -0
  7. package/dist/bottom-sheet/index.wxss +1 -1
  8. package/dist/button/index.js +2 -7
  9. package/dist/calendar/calendar.wxml +1 -1
  10. package/dist/calendar/index.wxs +3 -3
  11. package/dist/calendar-header/index.js +2 -2
  12. package/dist/calendar-month/index.wxs +2 -2
  13. package/dist/cascader/index.js +1 -1
  14. package/dist/cell/index.js +4 -4
  15. package/dist/checkbox/index.js +1 -1
  16. package/dist/circle/index.rjs +2 -1
  17. package/dist/common/appLog.js +1 -1
  18. package/dist/common/ty.d.ts +7 -0
  19. package/dist/common/ty.js +33 -0
  20. package/dist/config-provider/index.wxml +1 -1
  21. package/dist/custom-keyboard/index.wxml +3 -7
  22. package/dist/dialog/index.css +1 -1
  23. package/dist/dialog/index.js +1 -1
  24. package/dist/dialog/index.wxss +1 -1
  25. package/dist/dropdown-item/index.js +3 -3
  26. package/dist/dropdown-menu/index.js +4 -4
  27. package/dist/field/index.js +1 -1
  28. package/dist/image/index.js +2 -2
  29. package/dist/image/index.wxs +1 -1
  30. package/dist/loading/index.wxs +2 -2
  31. package/dist/mixins/transition.js +6 -8
  32. package/dist/nav-bar/index.js +1 -1
  33. package/dist/notice-bar/index.js +2 -2
  34. package/dist/picker-column/index.js +6 -8
  35. package/dist/picker-column/index.wxml +1 -1
  36. package/dist/picker-column/index.wxs +8 -11
  37. package/dist/popover/index.js +5 -0
  38. package/dist/popover/index.wxml +10 -2
  39. package/dist/popup/index.css +1 -1
  40. package/dist/popup/index.js +1 -1
  41. package/dist/popup/index.wxs +1 -1
  42. package/dist/popup/index.wxss +1 -1
  43. package/dist/radio/index.js +2 -2
  44. package/dist/rate/index.js +2 -2
  45. package/dist/search/index.js +2 -2
  46. package/dist/skeleton/index.css +1 -1
  47. package/dist/skeleton/index.wxss +1 -1
  48. package/dist/stepper/index.js +3 -3
  49. package/dist/steps/index.js +1 -1
  50. package/dist/switch/index.css +1 -1
  51. package/dist/switch/index.wxss +1 -1
  52. package/dist/tag/index.js +1 -1
  53. package/dist/toast/icons.js +3 -3
  54. package/dist/toast/index.css +1 -1
  55. package/dist/toast/index.wxml +1 -1
  56. package/dist/toast/index.wxss +1 -1
  57. package/dist/toast/toast.js +4 -8
  58. package/dist/tree-select/index.js +2 -2
  59. package/lib/action-sheet/index.js +4 -2
  60. package/lib/action-sheet/index.wxml +1 -1
  61. package/lib/bottom-sheet/index.css +1 -1
  62. package/lib/bottom-sheet/index.js +5 -5
  63. package/lib/bottom-sheet/index.wxml +7 -1
  64. package/lib/bottom-sheet/index.wxs +12 -0
  65. package/lib/bottom-sheet/index.wxss +1 -1
  66. package/lib/button/index.js +2 -7
  67. package/lib/calendar/calendar.wxml +1 -1
  68. package/lib/calendar/index.wxs +3 -3
  69. package/lib/calendar-header/index.js +4 -7
  70. package/lib/calendar-month/index.wxs +2 -2
  71. package/lib/cascader/index.js +2 -5
  72. package/lib/cell/index.js +9 -12
  73. package/lib/checkbox/index.js +2 -5
  74. package/lib/circle/index.rjs +2 -1
  75. package/lib/common/appLog.js +1 -1
  76. package/lib/common/ty.d.ts +7 -0
  77. package/lib/common/ty.js +35 -0
  78. package/lib/config-provider/index.wxml +1 -1
  79. package/lib/custom-keyboard/index.wxml +3 -7
  80. package/lib/dialog/index.css +1 -1
  81. package/lib/dialog/index.js +2 -2
  82. package/lib/dialog/index.wxss +1 -1
  83. package/lib/dropdown-item/index.js +4 -4
  84. package/lib/dropdown-menu/index.js +4 -4
  85. package/lib/field/index.js +2 -5
  86. package/lib/image/index.js +2 -5
  87. package/lib/image/index.wxs +1 -1
  88. package/lib/loading/index.wxs +2 -2
  89. package/lib/mixins/transition.js +13 -12
  90. package/lib/nav-bar/index.js +2 -5
  91. package/lib/notice-bar/index.js +4 -7
  92. package/lib/picker-column/index.js +10 -9
  93. package/lib/picker-column/index.wxml +1 -1
  94. package/lib/picker-column/index.wxs +8 -11
  95. package/lib/popover/index.js +5 -0
  96. package/lib/popover/index.wxml +10 -2
  97. package/lib/popup/index.css +1 -1
  98. package/lib/popup/index.js +3 -6
  99. package/lib/popup/index.wxs +1 -1
  100. package/lib/popup/index.wxss +1 -1
  101. package/lib/radio/index.js +2 -5
  102. package/lib/rate/index.js +4 -7
  103. package/lib/search/index.js +4 -7
  104. package/lib/skeleton/index.css +1 -1
  105. package/lib/skeleton/index.wxss +1 -1
  106. package/lib/stepper/index.js +6 -6
  107. package/lib/steps/index.js +2 -5
  108. package/lib/switch/index.css +1 -1
  109. package/lib/switch/index.wxss +1 -1
  110. package/lib/tag/index.js +2 -5
  111. package/lib/toast/icons.js +6 -9
  112. package/lib/toast/index.css +1 -1
  113. package/lib/toast/index.wxml +1 -1
  114. package/lib/toast/index.wxss +1 -1
  115. package/lib/toast/toast.js +4 -8
  116. package/lib/tree-select/index.js +2 -5
  117. package/package.json +1 -1
@@ -1,5 +1,6 @@
1
- import checkMarkIcon from '@tuya-miniapp/icons/dist/svg/Check';
1
+ import { Check as checkMarkIcon } from '@tuya-miniapp/icons';
2
2
  import { SmartComponent } from '../common/component';
3
+ import ty from '../common/ty';
3
4
  import { button } from '../mixins/button';
4
5
  SmartComponent({
5
6
  classes: ['list-class'],
@@ -51,6 +52,7 @@ SmartComponent({
51
52
  },
52
53
  data: {
53
54
  checkMarkIcon,
55
+ isWX: ty.isWX(),
54
56
  },
55
57
  methods: {
56
58
  onSelect(event) {
@@ -26,7 +26,7 @@
26
26
  <view wx:if="{{ description }}" class="smart-action-sheet__description smart-hairline--bottom">
27
27
  {{ description }}
28
28
  </view>
29
- <scroll-view wx:if="{{ actions && actions.length }}" class="smart-action-sheet__list list-class">
29
+ <scroll-view scroll-y="{{isWX}}" wx:if="{{ actions && actions.length }}" class="smart-action-sheet__list list-class">
30
30
  <!-- button外包一层view,防止actions动态变化,导致渲染时button被打散 -->
31
31
  <button
32
32
  wx:for="{{ actions }}"
@@ -1 +1 @@
1
- @import '../common/index.css';.smart-bottom-sheet{color:var(--bottom-sheet-font-color,var(--app-B4-N1,#000));display:flex;flex-direction:column;max-height:var(--bottom-sheet-max-height,50%)!important;min-height:var(--bottom-sheet-min-height,auto);padding:var(--bottom-sheet-padding,0 16px);padding-bottom:env(safe-area-inset-bottom);width:var(--bottom-sheet-width,100%)!important}.smart-bottom-sheet__header{color:var(--bottom-sheet-header-color,var(--app-B4-N1,#000));font-size:var(--bottom-sheet-header-font-size,17px);font-weight:var(--bottom-sheet-header-font-weight,600);line-height:var(--bottom-sheet-header-height,56px);text-align:center}.smart-bottom-sheet__content{overflow-y:scroll}.smart-bottom-sheet__icon{margin:var(--bottom-sheet-icon-margin,16px 16px 0 0);position:absolute;right:0;top:0}
1
+ @import '../common/index.css';.smart-bottom-sheet{color:var(--bottom-sheet-font-color,var(--app-B4-N1,#000));display:flex;flex-direction:column;max-height:var(--bottom-sheet-max-height,50%);min-height:var(--bottom-sheet-min-height,auto);padding-bottom:env(safe-area-inset-bottom);width:var(--bottom-sheet-width,100%)}.smart-bottom-sheet__header{color:var(--bottom-sheet-header-color,var(--app-B4-N1,#000));font-size:var(--bottom-sheet-header-font-size,17px);font-weight:var(--bottom-sheet-header-font-weight,600);line-height:var(--bottom-sheet-header-height,56px);padding:var(--bottom-sheet-header-padding,0 16px);text-align:center}.smart-bottom-sheet__content{box-sizing:border-box;overflow-y:auto;padding:var(--bottom-sheet-padding,0 16px);position:relative}.smart-bottom-sheet__icon{margin:var(--bottom-sheet-icon-margin,16px 16px 0 0);position:absolute;right:0;top:0}
@@ -1,5 +1,6 @@
1
- import xmarkIcon from '@tuya-miniapp/icons/dist/svg/Xmark';
1
+ import { Xmark as xmarkIcon } from '@tuya-miniapp/icons';
2
2
  import { SmartComponent } from '../common/component';
3
+ import ty from '../common/ty';
3
4
  SmartComponent({
4
5
  props: {
5
6
  show: Boolean,
@@ -10,6 +11,7 @@ SmartComponent({
10
11
  type: null,
11
12
  value: 24,
12
13
  },
14
+ contentHeight: null,
13
15
  round: {
14
16
  type: Boolean,
15
17
  value: true,
@@ -36,9 +38,7 @@ SmartComponent({
36
38
  xmarkIconColor: 'rgba(0, 0, 0, 0.5)',
37
39
  },
38
40
  mounted() {
39
- var _a;
40
- // @ts-ignore
41
- const themeInfo = (_a = ty === null || ty === void 0 ? void 0 : ty.getThemeInfo()) !== null && _a !== void 0 ? _a : {};
41
+ const themeInfo = ty.getThemeInfo() || {};
42
42
  const xmarkIconColor = this.data.iconColor || themeInfo['--app-B4-N3'] || 'rgba(0, 0, 0, 0.5)';
43
43
  this.setData({ xmarkIconColor });
44
44
  },
@@ -1,4 +1,5 @@
1
1
  <wxs src="../wxs/utils.wxs" module="utils" />
2
+ <wxs src="./index.wxs" module="computed" />
2
3
 
3
4
  <smart-popup
4
5
  show="{{ show }}"
@@ -8,6 +9,7 @@
8
9
  overlay="{{ overlay }}"
9
10
  custom-class="smart-bottom-sheet custom-class"
10
11
  native-disabled="{{ nativeDisabled }}"
12
+ customStyle="{{contentHeight ? 'max-height: fit-content;' : ''}}"
11
13
  safe-area-inset-bottom="{{false}}"
12
14
  close-on-click-overlay="{{ closeOnClickOverlay }}"
13
15
  root-portal="{{ rootPortal }}"
@@ -23,7 +25,11 @@
23
25
  {{ title }}
24
26
  <smart-icon bind:click="onClose" name="{{ xmarkIcon }}" class="smart-bottom-sheet__icon" size="{{ iconSize }}" color="{{ xmarkIconColor }}" />
25
27
  </view>
26
- <view class="smart-bottom-sheet__content">
28
+
29
+ <view wx:if="{{ contentHeight !== null }}" class="smart-bottom-sheet__content" style="{{computed.getHeight(contentHeight)}}">
27
30
  <slot />
28
31
  </view>
32
+ <scroll-view wx:else class="smart-bottom-sheet__content">
33
+ <slot />
34
+ </scroll-view>
29
35
  </smart-popup>
@@ -0,0 +1,12 @@
1
+ function getHeight(contentHeight) {
2
+ var height = contentHeight
3
+ ? typeof contentHeight === 'number'
4
+ ? contentHeight + 'rpx'
5
+ : contentHeight
6
+ : 'undefined';
7
+ return 'height: ' + height + ';';
8
+ }
9
+
10
+ module.exports = {
11
+ getHeight: getHeight,
12
+ };
@@ -1 +1 @@
1
- @import '../common/index.wxss';.smart-bottom-sheet{color:var(--bottom-sheet-font-color,var(--app-B4-N1,#000));display:flex;flex-direction:column;max-height:var(--bottom-sheet-max-height,50%)!important;min-height:var(--bottom-sheet-min-height,auto);padding:var(--bottom-sheet-padding,0 16px);padding-bottom:env(safe-area-inset-bottom);width:var(--bottom-sheet-width,100%)!important}.smart-bottom-sheet__header{color:var(--bottom-sheet-header-color,var(--app-B4-N1,#000));font-size:var(--bottom-sheet-header-font-size,17px);font-weight:var(--bottom-sheet-header-font-weight,600);line-height:var(--bottom-sheet-header-height,56px);text-align:center}.smart-bottom-sheet__content{overflow-y:scroll}.smart-bottom-sheet__icon{margin:var(--bottom-sheet-icon-margin,16px 16px 0 0);position:absolute;right:0;top:0}
1
+ @import '../common/index.wxss';.smart-bottom-sheet{color:var(--bottom-sheet-font-color,var(--app-B4-N1,#000));display:flex;flex-direction:column;max-height:var(--bottom-sheet-max-height,50%);min-height:var(--bottom-sheet-min-height,auto);padding-bottom:env(safe-area-inset-bottom);width:var(--bottom-sheet-width,100%)}.smart-bottom-sheet__header{color:var(--bottom-sheet-header-color,var(--app-B4-N1,#000));font-size:var(--bottom-sheet-header-font-size,17px);font-weight:var(--bottom-sheet-header-font-weight,600);line-height:var(--bottom-sheet-header-height,56px);padding:var(--bottom-sheet-header-padding,0 16px);text-align:center}.smart-bottom-sheet__content{box-sizing:border-box;overflow-y:auto;padding:var(--bottom-sheet-padding,0 16px);position:relative}.smart-bottom-sheet__icon{margin:var(--bottom-sheet-icon-margin,16px 16px 0 0);position:absolute;right:0;top:0}
@@ -1,12 +1,7 @@
1
1
  import { SmartComponent } from '../common/component';
2
2
  import { button } from '../mixins/button';
3
- // import { canIUseFormFieldButton } from '../common/version';
4
- const mixins = [button];
5
- // if (canIUseFormFieldButton()) {
6
- // mixins.push('wx://form-field-button');
7
- // }
8
3
  SmartComponent({
9
- mixins,
4
+ mixins: [button],
10
5
  classes: ['hover-class', 'loading-class'],
11
6
  data: {
12
7
  baseStyle: '',
@@ -52,7 +47,7 @@ SmartComponent({
52
47
  onClick(event) {
53
48
  this.$emit('click', event);
54
49
  const { canIUseGetUserProfile, openType, getUserProfileDesc, lang } = this.data;
55
- if (openType === 'getUserInfo' && canIUseGetUserProfile) {
50
+ if (openType === 'getUserInfo' && canIUseGetUserProfile && typeof wx !== 'undefined') {
56
51
  wx.getUserProfile({
57
52
  desc: getUserProfileDesc || ' ',
58
53
  lang: lang || 'en',
@@ -1,6 +1,6 @@
1
1
  <wxs src="./index.wxs" module="computed" />
2
2
  <wxs src="../wxs/utils.wxs" module="utils" />
3
- <view class="smart-calendar">
3
+ <view class="smart-calendar custom-class">
4
4
  <header
5
5
  title="{{ title }}"
6
6
  showTitle="{{ showTitle }}"
@@ -38,15 +38,15 @@ function getVisible(visibleIndex, curIndex) {
38
38
  function formatMonthTitle(date, formatter = 'YYYY-MM') {
39
39
  if (!date) return '';
40
40
  date = getDate(date);
41
- const year = date.getFullYear();
42
- const month = date.getMonth() + 1 < 10 ? '0' + (date.getMonth() + 1) : date.getMonth() + 1 + '';
41
+ var year = date.getFullYear();
42
+ var month = date.getMonth() + 1 < 10 ? '0' + (date.getMonth() + 1) : date.getMonth() + 1 + '';
43
43
  return formatter.replace('YYYY', year + '').replace('MM', month);
44
44
  }
45
45
 
46
46
  function formatYearTitle(date, offset, formatter = 'YYYY') {
47
47
  if (!date) return '';
48
48
  date = getDate(date);
49
- const year = date.getFullYear();
49
+ var year = date.getFullYear();
50
50
  return formatter.replace('YYYY', year + '');
51
51
  }
52
52
 
@@ -1,6 +1,6 @@
1
1
  import { SmartComponent } from '../common/component';
2
- import LeftIcon from '@tuya-miniapp/icons/dist/svg/Left';
3
- import RightIcon from '@tuya-miniapp/icons/dist/svg/Right';
2
+ import { Left as LeftIcon } from '@tuya-miniapp/icons';
3
+ import { Right as RightIcon } from '@tuya-miniapp/icons';
4
4
  SmartComponent({
5
5
  props: {
6
6
  title: {
@@ -48,8 +48,8 @@ function getDayStyle(type, index, date, rowHeight, color, firstDayOfWeek) {
48
48
 
49
49
  function formatMonthTitle(date, formatter = 'YYYY-MM') {
50
50
  date = getDate(date);
51
- const year = date.getFullYear();
52
- const month = date.getMonth() + 1 < 10 ? "0" + (date.getMonth() + 1) : date.getMonth() + 1 + "";
51
+ var year = date.getFullYear();
52
+ var month = date.getMonth() + 1 < 10 ? "0" + (date.getMonth() + 1) : date.getMonth() + 1 + "";
53
53
  return formatter.replace('YYYY', year + '').replace('MM', month);
54
54
  }
55
55
 
@@ -1,5 +1,5 @@
1
1
  import { SmartComponent } from '../common/component';
2
- import closeIcon from '@tuya-miniapp/icons/dist/svg/Xmark';
2
+ import { Xmark as closeIcon } from '@tuya-miniapp/icons';
3
3
  SmartComponent({
4
4
  props: {
5
5
  title: String,
@@ -1,7 +1,7 @@
1
- import upIcon from '@tuya-miniapp/icons/dist/svg/Up';
2
- import downIcon from '@tuya-miniapp/icons/dist/svg/Down';
3
- import leftIcon from '@tuya-miniapp/icons/dist/svg/Left';
4
- import rightIcon from '@tuya-miniapp/icons/dist/svg/Right';
1
+ import { Up as upIcon } from '@tuya-miniapp/icons';
2
+ import { Down as downIcon } from '@tuya-miniapp/icons';
3
+ import { Left as leftIcon } from '@tuya-miniapp/icons';
4
+ import { Right as rightIcon } from '@tuya-miniapp/icons';
5
5
  import { link } from '../mixins/link';
6
6
  import { SmartComponent } from '../common/component';
7
7
  SmartComponent({
@@ -1,4 +1,4 @@
1
- import CheckIcon from '@tuya-miniapp/icons/dist/svg/Check';
1
+ import { Check as CheckIcon } from '@tuya-miniapp/icons';
2
2
  import { useParent } from '../common/relation';
3
3
  import { SmartComponent } from '../common/component';
4
4
  function emit(target, value) {
@@ -190,7 +190,7 @@ export default Render({
190
190
  ctx.stroke();
191
191
 
192
192
  // 绘制进度条
193
- const progressAngle = progress * (Math.PI * 2); // 根据进度计算角度
193
+ const progressAngle = progress * (Math.PI * 2.12); // 根据进度计算角度
194
194
  ctx.beginPath();
195
195
  ctx.arc(this.width / 2, this.height / 2, radius, startAngle, startAngle + progressAngle);
196
196
  ctx.lineWidth = lineWidth;
@@ -217,6 +217,7 @@ export default Render({
217
217
  drawProgressBar(progress, this.fillColor); // 25%的蓝色进度条
218
218
  },
219
219
  render(val) {
220
+ val = Math.min(Math.max(0, val), 100)
220
221
  if (this.mode === 'basic') {
221
222
  this.renderAll(val / 100, this.round ? { lineCap: 'round' } : { lineCap: '' });
222
223
  }
@@ -12,7 +12,7 @@ export const init = (tag) => {
12
12
  return Log;
13
13
  }
14
14
  // @ts-ignore
15
- if (typeof ty !== 'undefined' && !ty.getLogManager) {
15
+ if (typeof ty === 'undefined' || (typeof ty !== 'undefined' && !ty.getLogManager)) {
16
16
  // console.warn('不支持ty.getLogManager');
17
17
  return null;
18
18
  }
@@ -0,0 +1,7 @@
1
+ declare const tyApi: {
2
+ vibrateShort: (v: any) => void;
3
+ nativeDisabled: (v: boolean) => void;
4
+ getThemeInfo: () => any;
5
+ isWX: () => boolean;
6
+ };
7
+ export default tyApi;
@@ -0,0 +1,33 @@
1
+ const tyApi = {
2
+ vibrateShort: (v) => {
3
+ // @ts-ignore
4
+ if (typeof ty !== 'undefined') {
5
+ // @ts-ignore
6
+ ty.vibrateShort(v);
7
+ }
8
+ else if (typeof wx !== 'undefined') {
9
+ wx.vibrateShort(v);
10
+ }
11
+ },
12
+ nativeDisabled: (v) => {
13
+ var _a;
14
+ // @ts-ignore
15
+ if (typeof ty !== 'undefined') {
16
+ // @ts-ignore
17
+ (_a = ty.nativeDisabled) === null || _a === void 0 ? void 0 : _a.call(ty, v);
18
+ }
19
+ },
20
+ getThemeInfo: () => {
21
+ var _a;
22
+ // @ts-ignore
23
+ if (typeof ty !== 'undefined') {
24
+ // @ts-ignore
25
+ return (_a = ty.getThemeInfo) === null || _a === void 0 ? void 0 : _a.call(ty);
26
+ }
27
+ },
28
+ isWX: () => {
29
+ // @ts-ignore
30
+ return typeof ty === 'undefined' && !!wx;
31
+ },
32
+ };
33
+ export default tyApi;
@@ -1,5 +1,5 @@
1
1
  <wxs src="./index.wxs" module="computed" />
2
2
 
3
- <view class="smart-config-provider" style="{{ computed.mapThemeVarsToCSSVars(themeVars) }}">
3
+ <view class="smart-config-provider custom-class" style="{{ computed.mapThemeVarsToCSSVars(themeVars) }}">
4
4
  <slot />
5
5
  </view>
@@ -1,8 +1,6 @@
1
1
  <view class="{{prefix}} {{prefix}}-container" style="{{inputContainerStyle}}">
2
2
  <view class="{{prefix}}-textView" bind:tap="handlePassword">
3
- <text class="{{prefix}}-pwdText {{currValue !== '' ? prefix + '-password' : null}}" style="{{valueTextStyle}}">
4
- {{currValue || placeholder}}
5
- </text>
3
+ <text class="{{prefix}}-pwdText {{currValue !== '' ? prefix + '-password' : null}}" style="{{valueTextStyle}}">{{currValue || placeholder}}</text>
6
4
  </view>
7
5
  <slot name="custom-button" />
8
6
  </view>
@@ -14,7 +12,7 @@
14
12
  >
15
13
  <view class="{{prefix}}-popup-container">
16
14
  <view class="{{prefix}}-number-wrap" style="height: {{row * 56}}px">
17
- <view wx:for="{{numberArray}}" wx:key="index" bind:tap="changeValue" hover-class="{{prefix}}-hover-class" data-item="{{ item }}" class="{{prefix}}-number-item" style="{{(item === 0 || item === 10) && numberArray.length === 11 ? 'width: 175px' : ''}}">
15
+ <view wx:for="{{numberArray}}" wx:key="index" bind:tap="changeValue" hover-class="{{prefix}}-hover-class" data-item="{{ item }}" class="{{prefix}}-number-item" style="{{(item === 0 || item === 10) && numberArray.length === 11 ? 'width: 345rpx' : ''}}">
18
16
  <view
19
17
  wx:if="{{item === -2}}"
20
18
  class="{{prefix}}-hidden-image"
@@ -39,9 +37,7 @@
39
37
  bind:tap="confirm"
40
38
  hover-class="{{prefix}}-hover-class"
41
39
  >
42
- <text class="{{prefix}}-confirm-text" style="{{confirmTextStyle}}">
43
- {{confirmText}}
44
- </text>
40
+ <text class="{{prefix}}-confirm-text" space="false" style="{{confirmTextStyle}}">{{confirmText}}</text>
45
41
  </button >
46
42
  </view>
47
43
  </view>
@@ -1 +1 @@
1
- @import '../common/index.css';.smart-dialog{background-color:var(--dialog-background-color,var(--app-B4,#fff));border-radius:var(--dialog-border-radius,16px);font-size:var(--dialog-font-size,16px);overflow:hidden;top:45%!important;width:var(--dialog-width,311px)}@media (max-width:321px){.smart-dialog{width:var(--dialog-small-screen-width,90%)}}.smart-dialog__header{color:var(--dialog-header-font-color,var(--app-B4-N1,#000));font-weight:var(--dialog-header-font-weight,400);line-height:var(--dialog-header-line-height,24px);padding:var(--dialog-header-padding,0);padding-top:var(--dialog-header-padding-top,24px);text-align:center}.smart-dialog__header-icon{border-radius:100%;display:block;font-size:var(--dialog-header-icon-size,39px);height:var(--dialog-header-icon-size,39px);margin:auto auto 12px;width:var(--dialog-header-icon-size,39px)}.smart-dialog__header--isolated{padding:var(--dialog-header-isolated-padding,24px 0)}.smart-dialog__message{-webkit-overflow-scrolling:touch;color:var(--dialog-message-text-color,var(--app-B4-N1,#000));font-size:var(--dialog-message-font-size,16px);line-height:var(--dialog-message-line-height,20px);max-height:var(--dialog-message-max-height,60vh);overflow-y:auto;padding:var(--dialog-message-padding,24px);text-align:center}.smart-dialog__message-text{word-wrap:break-word}.smart-dialog__message--hasTitle{color:var(--dialog-has-title-message-text-color,var(--app-B4-N3,rgba(0,0,0,.5)));font-size:var(--dialog-has-title-message-font-size,14px);padding-top:var(--dialog-has-title-message-padding-top,8px)}.smart-dialog__message--round-button{padding-bottom:16px}.smart-dialog__message--left{text-align:left}.smart-dialog__message--right{text-align:right}.smart-dialog__message--justify{text-align:justify}.smart-dialog__input{background-color:var(--dialog-input-background-color,var(--app-B4-N9,rgba(0,0,0,.05)));border-radius:var(--dialog-input-border-radius,10px);font-size:var(--dialog-input-font-size,14px);height:var(--dialog-input-height,40px);margin:var(--dialog-input-margin,0 16px 24px);padding:var(--dialog-input-padding,0 10px)}.smart-dialog__footer{display:flex}.smart-dialog__footer--round-button{height:40px!important;padding:8px 20px 16px!important;position:relative!important}.smart-dialog__button{flex:1}.smart-dialog-bounce-enter{opacity:0;transform:translate3d(-50%,-50%,0) scale(.7)}.smart-dialog-bounce-leave-active{opacity:0;transform:translate3d(-50%,-50%,0) scale(.9)}.smart-dialog--round-button .smart-dialog__cancel,.smart-dialog--round-button .smart-dialog__confirm{border-radius:var(--dialog--round-button-border-radius,20px)!important}
1
+ @import '../common/index.css';.smart-dialog{background-color:var(--dialog-background-color,var(--app-B4,#fff));border-radius:var(--dialog-border-radius,16px);font-size:var(--dialog-font-size,16px);overflow:hidden;top:45%!important;width:var(--dialog-width,311px)}@media (max-width:321px){.smart-dialog{width:var(--dialog-small-screen-width,90%)}}.smart-dialog__header{color:var(--dialog-header-font-color,var(--app-B4-N1,#000));font-weight:var(--dialog-header-font-weight,400);line-height:var(--dialog-header-line-height,24px);padding:var(--dialog-header-padding,0);padding-top:var(--dialog-header-padding-top,24px);text-align:center}.smart-dialog__header-icon{border-radius:100%;display:block;font-size:var(--dialog-header-icon-size,39px);height:var(--dialog-header-icon-size,39px);margin:auto auto 12px;width:var(--dialog-header-icon-size,39px)}.smart-dialog__header--isolated{padding:var(--dialog-header-isolated-padding,24px 0)}.smart-dialog__message{-webkit-overflow-scrolling:touch;color:var(--dialog-message-text-color,var(--app-B4-N1,#000));font-size:var(--dialog-message-font-size,16px);line-height:var(--dialog-message-line-height,20px);max-height:var(--dialog-message-max-height,60vh);overflow-y:auto;padding:var(--dialog-message-padding,24px);text-align:center}.smart-dialog__message-text{word-wrap:break-word}.smart-dialog__message--hasTitle{color:var(--dialog-has-title-message-text-color,var(--app-B4-N3,rgba(0,0,0,.5)));font-size:var(--dialog-has-title-message-font-size,14px);padding-top:var(--dialog-has-title-message-padding-top,8px)}.smart-dialog__message--round-button{--hairline-right-width:0;padding-bottom:16px}.smart-dialog__message--left{text-align:left}.smart-dialog__message--right{text-align:right}.smart-dialog__message--justify{text-align:justify}.smart-dialog__input{background-color:var(--dialog-input-background-color,var(--app-B4-N9,rgba(0,0,0,.05)));border-radius:var(--dialog-input-border-radius,10px);font-size:var(--dialog-input-font-size,14px);height:var(--dialog-input-height,40px);margin:var(--dialog-input-margin,0 16px 24px);padding:var(--dialog-input-padding,0 10px)}.smart-dialog__footer{display:flex}.smart-dialog__footer--round-button{--hairline-right-width:0;height:40px!important;padding:8px 20px 16px!important;position:relative!important}.smart-dialog__button{flex:1}.smart-dialog__cancel,.smart-dialog__confirm{border:0!important;border-radius:0!important}.smart-dialog-bounce-enter{opacity:0;transform:translate3d(-50%,-50%,0) scale(.7)}.smart-dialog-bounce-leave-active{opacity:0;transform:translate3d(-50%,-50%,0) scale(.9)}.smart-dialog--round-button .smart-dialog__cancel,.smart-dialog--round-button .smart-dialog__confirm{border-radius:var(--dialog--round-button-border-radius,20px)!important}
@@ -1,4 +1,4 @@
1
- import warningIcon from '@tuya-miniapp/icons/dist/svg/Warning';
1
+ import { Warning as warningIcon } from '@tuya-miniapp/icons';
2
2
  import { SmartComponent } from '../common/component';
3
3
  import { button } from '../mixins/button';
4
4
  import appLog from '../common/appLog';
@@ -1 +1 @@
1
- @import '../common/index.wxss';.smart-dialog{background-color:var(--dialog-background-color,var(--app-B4,#fff));border-radius:var(--dialog-border-radius,16px);font-size:var(--dialog-font-size,16px);overflow:hidden;top:45%!important;width:var(--dialog-width,311px)}@media (max-width:321px){.smart-dialog{width:var(--dialog-small-screen-width,90%)}}.smart-dialog__header{color:var(--dialog-header-font-color,var(--app-B4-N1,#000));font-weight:var(--dialog-header-font-weight,400);line-height:var(--dialog-header-line-height,24px);padding:var(--dialog-header-padding,0);padding-top:var(--dialog-header-padding-top,24px);text-align:center}.smart-dialog__header-icon{border-radius:100%;display:block;font-size:var(--dialog-header-icon-size,39px);height:var(--dialog-header-icon-size,39px);margin:auto auto 12px;width:var(--dialog-header-icon-size,39px)}.smart-dialog__header--isolated{padding:var(--dialog-header-isolated-padding,24px 0)}.smart-dialog__message{-webkit-overflow-scrolling:touch;color:var(--dialog-message-text-color,var(--app-B4-N1,#000));font-size:var(--dialog-message-font-size,16px);line-height:var(--dialog-message-line-height,20px);max-height:var(--dialog-message-max-height,60vh);overflow-y:auto;padding:var(--dialog-message-padding,24px);text-align:center}.smart-dialog__message-text{word-wrap:break-word}.smart-dialog__message--hasTitle{color:var(--dialog-has-title-message-text-color,var(--app-B4-N3,rgba(0,0,0,.5)));font-size:var(--dialog-has-title-message-font-size,14px);padding-top:var(--dialog-has-title-message-padding-top,8px)}.smart-dialog__message--round-button{padding-bottom:16px}.smart-dialog__message--left{text-align:left}.smart-dialog__message--right{text-align:right}.smart-dialog__message--justify{text-align:justify}.smart-dialog__input{background-color:var(--dialog-input-background-color,var(--app-B4-N9,rgba(0,0,0,.05)));border-radius:var(--dialog-input-border-radius,10px);font-size:var(--dialog-input-font-size,14px);height:var(--dialog-input-height,40px);margin:var(--dialog-input-margin,0 16px 24px);padding:var(--dialog-input-padding,0 10px)}.smart-dialog__footer{display:flex}.smart-dialog__footer--round-button{height:40px!important;padding:8px 20px 16px!important;position:relative!important}.smart-dialog__button{flex:1}.smart-dialog-bounce-enter{opacity:0;transform:translate3d(-50%,-50%,0) scale(.7)}.smart-dialog-bounce-leave-active{opacity:0;transform:translate3d(-50%,-50%,0) scale(.9)}.smart-dialog--round-button .smart-dialog__cancel,.smart-dialog--round-button .smart-dialog__confirm{border-radius:var(--dialog--round-button-border-radius,20px)!important}
1
+ @import '../common/index.wxss';.smart-dialog{background-color:var(--dialog-background-color,var(--app-B4,#fff));border-radius:var(--dialog-border-radius,16px);font-size:var(--dialog-font-size,16px);overflow:hidden;top:45%!important;width:var(--dialog-width,311px)}@media (max-width:321px){.smart-dialog{width:var(--dialog-small-screen-width,90%)}}.smart-dialog__header{color:var(--dialog-header-font-color,var(--app-B4-N1,#000));font-weight:var(--dialog-header-font-weight,400);line-height:var(--dialog-header-line-height,24px);padding:var(--dialog-header-padding,0);padding-top:var(--dialog-header-padding-top,24px);text-align:center}.smart-dialog__header-icon{border-radius:100%;display:block;font-size:var(--dialog-header-icon-size,39px);height:var(--dialog-header-icon-size,39px);margin:auto auto 12px;width:var(--dialog-header-icon-size,39px)}.smart-dialog__header--isolated{padding:var(--dialog-header-isolated-padding,24px 0)}.smart-dialog__message{-webkit-overflow-scrolling:touch;color:var(--dialog-message-text-color,var(--app-B4-N1,#000));font-size:var(--dialog-message-font-size,16px);line-height:var(--dialog-message-line-height,20px);max-height:var(--dialog-message-max-height,60vh);overflow-y:auto;padding:var(--dialog-message-padding,24px);text-align:center}.smart-dialog__message-text{word-wrap:break-word}.smart-dialog__message--hasTitle{color:var(--dialog-has-title-message-text-color,var(--app-B4-N3,rgba(0,0,0,.5)));font-size:var(--dialog-has-title-message-font-size,14px);padding-top:var(--dialog-has-title-message-padding-top,8px)}.smart-dialog__message--round-button{--hairline-right-width:0;padding-bottom:16px}.smart-dialog__message--left{text-align:left}.smart-dialog__message--right{text-align:right}.smart-dialog__message--justify{text-align:justify}.smart-dialog__input{background-color:var(--dialog-input-background-color,var(--app-B4-N9,rgba(0,0,0,.05)));border-radius:var(--dialog-input-border-radius,10px);font-size:var(--dialog-input-font-size,14px);height:var(--dialog-input-height,40px);margin:var(--dialog-input-margin,0 16px 24px);padding:var(--dialog-input-padding,0 10px)}.smart-dialog__footer{display:flex}.smart-dialog__footer--round-button{--hairline-right-width:0;height:40px!important;padding:8px 20px 16px!important;position:relative!important}.smart-dialog__button{flex:1}.smart-dialog__cancel,.smart-dialog__confirm{border:0!important;border-radius:0!important}.smart-dialog-bounce-enter{opacity:0;transform:translate3d(-50%,-50%,0) scale(.7)}.smart-dialog-bounce-leave-active{opacity:0;transform:translate3d(-50%,-50%,0) scale(.9)}.smart-dialog--round-button .smart-dialog__cancel,.smart-dialog--round-button .smart-dialog__confirm{border-radius:var(--dialog--round-button-border-radius,20px)!important}
@@ -1,6 +1,7 @@
1
1
  import { useParent } from '../common/relation';
2
2
  import { SmartComponent } from '../common/component';
3
- import checkMarkIcon from '@tuya-miniapp/icons/dist/svg/Check';
3
+ import { Check as checkMarkIcon } from '@tuya-miniapp/icons';
4
+ import ty from '../common/ty';
4
5
  SmartComponent({
5
6
  classes: ['item-title-class'],
6
7
  field: true,
@@ -48,8 +49,7 @@ SmartComponent({
48
49
  },
49
50
  mounted() {
50
51
  var _a;
51
- // @ts-ignore
52
- const themeInfo = (_a = ty === null || ty === void 0 ? void 0 : ty.getThemeInfo()) !== null && _a !== void 0 ? _a : {};
52
+ const themeInfo = (_a = ty.getThemeInfo()) !== null && _a !== void 0 ? _a : {};
53
53
  const checkMarkIconColor = this.data.activeColor || themeInfo['--app-M1'] || '#3678E3';
54
54
  this.setData({ checkMarkIconColor });
55
55
  },
@@ -1,7 +1,8 @@
1
1
  import { SmartComponent } from '../common/component';
2
2
  import { useChildren } from '../common/relation';
3
3
  import { addUnit, getRect, getSystemInfoSync } from '../common/utils';
4
- import triangleDown from '@tuya-miniapp/icons/dist/svg/TriangleDown';
4
+ import { TriangleDown } from '@tuya-miniapp/icons';
5
+ import ty from '../common/ty';
5
6
  let ARRAY = [];
6
7
  SmartComponent({
7
8
  field: true,
@@ -53,14 +54,13 @@ SmartComponent({
53
54
  },
54
55
  },
55
56
  data: {
56
- triangleDown,
57
+ triangleDown: TriangleDown,
57
58
  activeColorStatic: '',
58
59
  itemListData: [],
59
60
  },
60
61
  mounted() {
61
62
  var _a;
62
- // @ts-ignore
63
- const themeInfo = (_a = ty === null || ty === void 0 ? void 0 : ty.getThemeInfo()) !== null && _a !== void 0 ? _a : {};
63
+ const themeInfo = (_a = ty.getThemeInfo()) !== null && _a !== void 0 ? _a : {};
64
64
  const activeColorStatic = this.data.activeColor || themeInfo['--app-M1'] || '#3678E3';
65
65
  this.setData({ activeColorStatic });
66
66
  },
@@ -1,7 +1,7 @@
1
1
  import { nextTick } from '../common/utils';
2
2
  import { SmartComponent } from '../common/component';
3
3
  import { commonProps, inputProps, textareaProps } from './props';
4
- import Xmark from '@tuya-miniapp/icons/dist/svg/Xmark';
4
+ import { Xmark } from '@tuya-miniapp/icons';
5
5
  SmartComponent({
6
6
  field: true,
7
7
  classes: ['input-class', 'right-icon-class', 'label-class'],
@@ -1,6 +1,6 @@
1
1
  import { SmartComponent } from '../common/component';
2
2
  import { button } from '../mixins/button';
3
- import LoadingSvg from '@tuya-miniapp/icons/dist/svg/Loading';
3
+ import { Loading } from '@tuya-miniapp/icons';
4
4
  SmartComponent({
5
5
  mixins: [button],
6
6
  classes: ['custom-class', 'loading-class', 'error-class', 'image-class'],
@@ -46,7 +46,7 @@ SmartComponent({
46
46
  data: {
47
47
  error: false,
48
48
  loading: true,
49
- loadingSvg: LoadingSvg,
49
+ loadingSvg: Loading,
50
50
  viewStyle: '',
51
51
  },
52
52
  methods: {
@@ -30,7 +30,7 @@ function mode(fit) {
30
30
 
31
31
 
32
32
  function maskStyle(url, color) {
33
- const str = 'mask-image: url(' + url + ');-webkit-mask-image: url(' + url + ');background: ' + color + ';'
33
+ var str = 'mask-image: url(' + url + ');-webkit-mask-image: url(' + url + ');background: ' + color + ';'
34
34
  return str
35
35
  }
36
36
 
@@ -3,7 +3,7 @@ var style = require('../wxs/style.wxs');
3
3
  var addUnit = require('../wxs/add-unit.wxs');
4
4
 
5
5
  function textStyle(data) {
6
- const ret = style({
6
+ var ret = style({
7
7
  'font-size': addUnit(data.textSize),
8
8
  color: data.color,
9
9
  });
@@ -12,7 +12,7 @@ function textStyle(data) {
12
12
  }
13
13
 
14
14
  function loadingStyle(data) {
15
- let iconSrc = ''
15
+ var iconSrc = ''
16
16
 
17
17
  if (data.type === 'spinner') {
18
18
  iconSrc = data.spinner
@@ -10,6 +10,7 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
10
10
  // @ts-nocheck
11
11
  import { requestAnimationFrame } from '../common/utils';
12
12
  import { isObj } from '../common/validator';
13
+ import ty from '../common/ty';
13
14
  const getClassNames = (name) => ({
14
15
  enter: `smart-${name}-enter smart-${name}-enter-active enter-class enter-active-class`,
15
16
  'enter-to': `smart-${name}-enter-to smart-${name}-enter-active enter-to-class enter-active-class`,
@@ -65,14 +66,13 @@ export function transition(showDefaultValue) {
65
66
  });
66
67
  // eslint-disable-next-line no-async-promise-executor
67
68
  this.enterFinishedPromise = new Promise((resolve) => __awaiter(this, void 0, void 0, function* () {
68
- var _a;
69
69
  const { duration, name } = this.data;
70
70
  const classNames = getClassNames(name);
71
71
  const currentDuration = isObj(duration) ? duration.enter : duration;
72
- this.$emit('before-enter');
73
72
  if (this.data.nativeDisabled) {
74
- (_a = ty === null || ty === void 0 ? void 0 : ty.nativeDisabled) === null || _a === void 0 ? void 0 : _a.call(ty, true);
73
+ ty.nativeDisabled(true);
75
74
  }
75
+ this.$emit('before-enter');
76
76
  yield requestAnimationFrame();
77
77
  this.$emit('enter');
78
78
  this.setData({
@@ -125,12 +125,11 @@ export function transition(showDefaultValue) {
125
125
  this.transitionEnded = false;
126
126
  clearTimeout(this.timer);
127
127
  setTimeout(() => {
128
- var _a;
129
128
  this.enterFinishedPromise = null;
130
- this.$emit('after-leave');
131
129
  if (this.data.nativeDisabled) {
132
- (_a = ty === null || ty === void 0 ? void 0 : ty.nativeDisabled) === null || _a === void 0 ? void 0 : _a.call(ty, false);
130
+ ty.nativeDisabled(false);
133
131
  }
132
+ this.$emit('after-leave');
134
133
  this.setData({
135
134
  display: false,
136
135
  animating: false,
@@ -140,13 +139,12 @@ export function transition(showDefaultValue) {
140
139
  this.setData({ classes: classNames['leave-to'] });
141
140
  }))
142
141
  .catch(err => {
143
- var _a;
144
142
  this.enterFinishedPromise = null;
145
143
  this.setData({ animating: false });
146
144
  console.log(err, '---error-leave');
147
145
  this.$emit('leave-error', err);
148
146
  if (this.data.nativeDisabled) {
149
- (_a = ty === null || ty === void 0 ? void 0 : ty.nativeDisabled) === null || _a === void 0 ? void 0 : _a.call(ty, false);
147
+ ty.nativeDisabled(false);
150
148
  }
151
149
  });
152
150
  });
@@ -1,4 +1,4 @@
1
- import Left from '@tuya-miniapp/icons/dist/svg/Left';
1
+ import { Left } from '@tuya-miniapp/icons';
2
2
  import { SmartComponent } from '../common/component';
3
3
  import { getRect, getSystemInfoSync } from '../common/utils';
4
4
  SmartComponent({
@@ -1,7 +1,7 @@
1
1
  import { SmartComponent } from '../common/component';
2
2
  import { getRect, requestAnimationFrame } from '../common/utils';
3
- import Xmark from '@tuya-miniapp/icons/dist/svg/Xmark';
4
- import Right from '@tuya-miniapp/icons/dist/svg/Right';
3
+ import { Xmark } from '@tuya-miniapp/icons';
4
+ import { Right } from '@tuya-miniapp/icons';
5
5
  SmartComponent({
6
6
  props: {
7
7
  text: {
@@ -10,6 +10,7 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
10
10
  import { SmartComponent } from '../common/component';
11
11
  import { range } from '../common/utils';
12
12
  import { isObj } from '../common/validator';
13
+ import ty from '../common/ty';
13
14
  const DEFAULT_DURATION = 400;
14
15
  SmartComponent({
15
16
  classes: ['active-class'],
@@ -135,10 +136,10 @@ SmartComponent({
135
136
  // @ts-ignore
136
137
  this.vibrateShort();
137
138
  }
138
- // const animationIndex = Math.abs(-offset / data.itemHeight);
139
+ const animationIndex = Math.abs(-offset / data.itemHeight);
139
140
  this.setData({
140
141
  offset,
141
- // animationIndex: animationIndex,
142
+ animationIndex: animationIndex,
142
143
  preOffsetList: [...data.preOffsetList, offset],
143
144
  animate: false,
144
145
  });
@@ -184,7 +185,7 @@ SmartComponent({
184
185
  // 最终定位索引
185
186
  this.setData({
186
187
  duration: isSameTouch ? 150 : data.animationTime,
187
- // animationIndex: index,
188
+ animationIndex: index,
188
189
  offset: offsetData,
189
190
  animate: true,
190
191
  });
@@ -226,7 +227,6 @@ SmartComponent({
226
227
  },
227
228
  vibrateShort(count, time = 1000) {
228
229
  if (!count) {
229
- // @ts-ignore
230
230
  ty.vibrateShort({ type: 'light' });
231
231
  return;
232
232
  }
@@ -324,7 +324,7 @@ SmartComponent({
324
324
  if (animate) {
325
325
  return this.set({
326
326
  currentIndex: index,
327
- // animationIndex: index,
327
+ animationIndex: index,
328
328
  offset,
329
329
  animate: true,
330
330
  duration: time,
@@ -344,11 +344,9 @@ SmartComponent({
344
344
  });
345
345
  }
346
346
  return this.set({
347
- optionsV: data.options,
348
347
  offset,
349
348
  currentIndex: index,
350
- // animationIndex: index,
351
- renderStart: 0,
349
+ animationIndex: index,
352
350
  animate: !!animate,
353
351
  }).then(() => {
354
352
  if (!userAction) {
@@ -16,7 +16,7 @@
16
16
  wx:for-item="option"
17
17
  wx:key="index"
18
18
  data-index="{{ renderStart + index }}"
19
- style="{{computed.wrapperItemStyle({ itemHeight, fontStyle, activeStyle: renderStart + index === currentIndex ? activeStyle : ''})}}"
19
+ style="{{computed.wrapperItemStyle({ itemHeight, fontStyle, activeStyle: renderStart + index === currentIndex ? activeStyle : '', animationIndex, index: renderStart + index })}}"
20
20
  class="smart-ellipsis {{ utils.bem('picker-column__item', { disabled: option && option.disabled, selected: renderStart + index === currentIndex }) }} {{ renderStart + index === currentIndex ? 'active-class' : '' }}"
21
21
  >
22
22
  {{ computed.optionText(option, valueKey) }}