@tarojs/components 3.7.0-alpha.1 → 3.7.0-alpha.3

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 (194) hide show
  1. package/dist/cjs/hls-00fec546.js +25673 -0
  2. package/dist/{esm/index-394db4c1.js → cjs/index-f6805218.js} +2 -6
  3. package/dist/cjs/loader.cjs.js +1 -1
  4. package/dist/cjs/taro-button-core.cjs.entry.js +1 -1
  5. package/dist/cjs/taro-components.cjs.js +1 -1
  6. package/dist/cjs/taro-cover-view-core.cjs.entry.js +1 -1
  7. package/dist/cjs/taro-icon-core.cjs.entry.js +1 -1
  8. package/dist/cjs/taro-image-core.cjs.entry.js +1 -1
  9. package/dist/cjs/taro-input-core.cjs.entry.js +6 -11
  10. package/dist/cjs/taro-navigator-core.cjs.entry.js +1 -1
  11. package/dist/cjs/taro-picker-core_2.cjs.entry.js +23 -20
  12. package/dist/cjs/taro-picker-view-column-core_2.cjs.entry.js +1 -1
  13. package/dist/cjs/taro-pull-to-refresh.cjs.entry.js +1 -1
  14. package/dist/cjs/taro-rich-text-core.cjs.entry.js +6 -0
  15. package/dist/cjs/taro-scroll-view-core.cjs.entry.js +1 -1
  16. package/dist/cjs/taro-swiper-core_2.cjs.entry.js +1 -1
  17. package/dist/cjs/taro-tabbar.cjs.entry.js +1 -1
  18. package/dist/cjs/taro-text-core.cjs.entry.js +9 -6
  19. package/dist/cjs/taro-textarea-core.cjs.entry.js +1 -8
  20. package/dist/cjs/taro-video-control_3.cjs.entry.js +3 -3
  21. package/dist/cjs/taro-view-core.cjs.entry.js +1 -1
  22. package/dist/collection/components/checkbox/checkbox.js +4 -4
  23. package/dist/collection/components/input/input.js +9 -13
  24. package/dist/collection/components/picker/picker-group.js +29 -26
  25. package/dist/collection/components/picker/picker.js +42 -16
  26. package/dist/collection/components/rich-text/rich-text.js +71 -0
  27. package/dist/collection/components/rich-text/style/index.css +16 -0
  28. package/dist/collection/components/text/style/index.css +20 -3
  29. package/dist/collection/components/text/text.js +66 -6
  30. package/dist/collection/components/textarea/textarea.js +4 -10
  31. package/dist/collection/components/video/video.js +1 -1
  32. package/dist/components/hls.js +23206 -24210
  33. package/dist/components/index2.js +1 -7
  34. package/dist/components/picker-group.js +9 -9
  35. package/dist/components/taro-checkbox-core.js +1 -1
  36. package/dist/components/taro-input-core.js +7 -12
  37. package/dist/components/taro-picker-core.js +16 -13
  38. package/dist/components/taro-rich-text-core.js +10 -1
  39. package/dist/components/taro-text-core.js +13 -7
  40. package/dist/components/taro-textarea-core.js +2 -9
  41. package/dist/components/taro-video-core.js +2 -2
  42. package/dist/esm/hls-4018c7ea.js +25671 -0
  43. package/dist/{cjs/index-067a58c1.js → esm/index-c3e4004b.js} +1 -12
  44. package/dist/esm/loader.js +1 -1
  45. package/dist/esm/taro-button-core.entry.js +1 -1
  46. package/dist/esm/taro-components.js +1 -1
  47. package/dist/esm/taro-cover-view-core.entry.js +1 -1
  48. package/dist/esm/taro-icon-core.entry.js +1 -1
  49. package/dist/esm/taro-image-core.entry.js +1 -1
  50. package/dist/esm/taro-input-core.entry.js +6 -11
  51. package/dist/esm/taro-navigator-core.entry.js +1 -1
  52. package/dist/esm/taro-picker-core_2.entry.js +23 -20
  53. package/dist/esm/taro-picker-view-column-core_2.entry.js +1 -1
  54. package/dist/esm/taro-pull-to-refresh.entry.js +1 -1
  55. package/dist/esm/taro-rich-text-core.entry.js +6 -0
  56. package/dist/esm/taro-scroll-view-core.entry.js +1 -1
  57. package/dist/esm/taro-swiper-core_2.entry.js +1 -1
  58. package/dist/esm/taro-tabbar.entry.js +1 -1
  59. package/dist/esm/taro-text-core.entry.js +9 -6
  60. package/dist/esm/taro-textarea-core.entry.js +1 -8
  61. package/dist/esm/taro-video-control_3.entry.js +3 -3
  62. package/dist/esm/taro-view-core.entry.js +1 -1
  63. package/dist/esm-es5/hls-4018c7ea.js +1 -0
  64. package/dist/esm-es5/index-c3e4004b.js +7 -0
  65. package/dist/esm-es5/loader.js +1 -1
  66. package/dist/esm-es5/taro-button-core.entry.js +1 -1
  67. package/dist/esm-es5/taro-components.js +1 -1
  68. package/dist/esm-es5/taro-cover-view-core.entry.js +1 -1
  69. package/dist/esm-es5/taro-icon-core.entry.js +1 -1
  70. package/dist/esm-es5/taro-image-core.entry.js +1 -1
  71. package/dist/esm-es5/taro-input-core.entry.js +1 -1
  72. package/dist/esm-es5/taro-navigator-core.entry.js +1 -1
  73. package/dist/esm-es5/taro-picker-core_2.entry.js +1 -1
  74. package/dist/esm-es5/taro-picker-view-column-core_2.entry.js +1 -1
  75. package/dist/esm-es5/taro-pull-to-refresh.entry.js +1 -1
  76. package/dist/esm-es5/taro-rich-text-core.entry.js +1 -1
  77. package/dist/esm-es5/taro-scroll-view-core.entry.js +1 -1
  78. package/dist/esm-es5/taro-swiper-core_2.entry.js +1 -1
  79. package/dist/esm-es5/taro-tabbar.entry.js +1 -1
  80. package/dist/esm-es5/taro-text-core.entry.js +1 -1
  81. package/dist/esm-es5/taro-textarea-core.entry.js +1 -1
  82. package/dist/esm-es5/taro-video-control_3.entry.js +1 -1
  83. package/dist/esm-es5/taro-view-core.entry.js +1 -1
  84. package/dist/taro-components/p-01e163f8.system.entry.js +1 -0
  85. package/dist/taro-components/p-085076c5.system.entry.js +1 -0
  86. package/dist/taro-components/{p-25adb80c.entry.js → p-091a7153.entry.js} +1 -1
  87. package/dist/taro-components/{p-cd90bead.system.entry.js → p-0cf235de.system.entry.js} +1 -1
  88. package/dist/taro-components/p-0fa96970.entry.js +1 -0
  89. package/dist/taro-components/{p-edbb1a17.system.entry.js → p-1991cc1a.system.entry.js} +1 -1
  90. package/dist/taro-components/{p-c0ec2f41.system.entry.js → p-2accb92c.system.entry.js} +1 -1
  91. package/dist/taro-components/p-2ec68968.system.js +7 -0
  92. package/dist/taro-components/{p-18703731.system.entry.js → p-416cc4dd.system.entry.js} +1 -1
  93. package/dist/taro-components/p-425c209a.entry.js +1 -0
  94. package/dist/taro-components/p-43efbf30.js +1 -0
  95. package/dist/taro-components/{p-385d8aed.entry.js → p-4874f671.entry.js} +1 -1
  96. package/dist/taro-components/{p-2c89af5b.system.entry.js → p-657cb6e4.system.entry.js} +1 -1
  97. package/dist/taro-components/p-6cde180b.entry.js +1 -0
  98. package/dist/taro-components/{p-c490cd45.entry.js → p-7152d85b.entry.js} +1 -1
  99. package/dist/taro-components/{p-ab2d4f12.entry.js → p-719e1eaf.entry.js} +1 -1
  100. package/dist/taro-components/{p-b898d734.entry.js → p-78e4805e.entry.js} +1 -1
  101. package/dist/taro-components/{p-6800ccdc.system.entry.js → p-7ff654e6.system.entry.js} +1 -1
  102. package/dist/taro-components/{p-16336cc6.system.entry.js → p-98f9f50f.system.entry.js} +1 -1
  103. package/dist/taro-components/p-9edea30f.system.entry.js +1 -0
  104. package/dist/taro-components/{p-3f9f3448.entry.js → p-9fe49bab.entry.js} +1 -1
  105. package/dist/taro-components/{p-31bba7c3.entry.js → p-a20ecd3b.entry.js} +1 -1
  106. package/dist/taro-components/p-a20fed0a.entry.js +1 -0
  107. package/dist/taro-components/{p-7c2454dd.system.entry.js → p-a8925584.system.entry.js} +1 -1
  108. package/dist/taro-components/p-a8e7cf87.entry.js +1 -0
  109. package/dist/taro-components/{p-5905e3ef.system.entry.js → p-a96b4b19.system.entry.js} +1 -1
  110. package/dist/taro-components/{p-c2322741.system.entry.js → p-b1d2b575.system.entry.js} +1 -1
  111. package/dist/taro-components/p-c39a46ca.system.entry.js +1 -0
  112. package/dist/taro-components/{p-ca3a269f.entry.js → p-c4b8851b.entry.js} +1 -1
  113. package/dist/taro-components/{p-e5f78321.system.entry.js → p-cdb76676.system.entry.js} +1 -1
  114. package/dist/taro-components/p-de951a46.js +7 -0
  115. package/dist/taro-components/p-e09451c5.system.entry.js +1 -0
  116. package/dist/taro-components/{p-df4c2f21.entry.js → p-e33f3592.entry.js} +1 -1
  117. package/dist/taro-components/p-e78775ce.system.js +1 -0
  118. package/dist/taro-components/p-ebc7b6fc.entry.js +1 -0
  119. package/dist/taro-components/p-ed331c06.system.js +1 -1
  120. package/dist/taro-components/p-f02b6f70.entry.js +1 -0
  121. package/dist/taro-components/{p-1e43a2d5.entry.js → p-f07cd1de.entry.js} +1 -1
  122. package/dist/taro-components/p-f6f6a996.system.entry.js +1 -0
  123. package/dist/taro-components/taro-components.css +1 -1
  124. package/dist/taro-components/taro-components.esm.js +1 -1
  125. package/dist/types/components/checkbox/checkbox.d.ts +1 -1
  126. package/dist/types/components/input/input.d.ts +2 -2
  127. package/dist/types/components/picker/picker-group.d.ts +3 -3
  128. package/dist/types/components/picker/picker.d.ts +7 -2
  129. package/dist/types/components/rich-text/rich-text.d.ts +4 -0
  130. package/dist/types/components/text/text.d.ts +4 -0
  131. package/dist/types/components/textarea/textarea.d.ts +0 -1
  132. package/dist/types/components.d.ts +26 -8
  133. package/lib/react/component-lib/index.js +50 -50
  134. package/lib/react/component-lib/index.js.map +1 -1
  135. package/lib/react/component-lib/reactify-wc.js +1 -1
  136. package/lib/react/component-lib/reactify-wc.js.map +1 -1
  137. package/lib/react/components.d.ts +1 -3
  138. package/lib/react/components.js +2 -2
  139. package/lib/react/components.js.map +1 -1
  140. package/lib/react/helper.d.ts +1 -1
  141. package/lib/react/react-component-lib/createOverlayComponent.js.map +1 -1
  142. package/lib/react/react-component-lib/utils/attachProps.js +1 -4
  143. package/lib/react/react-component-lib/utils/attachProps.js.map +1 -1
  144. package/lib/vue2/components.d.ts +9 -3
  145. package/lib/vue2/components.js +12 -6
  146. package/lib/vue2/components.js.map +1 -1
  147. package/lib/vue2/vue-component-lib/utils.js.map +1 -1
  148. package/lib/vue3/component-lib/index.js +48 -48
  149. package/lib/vue3/component-lib/index.js.map +1 -1
  150. package/lib/vue3/components.d.ts +1 -1
  151. package/lib/vue3/components.js +13 -6
  152. package/lib/vue3/components.js.map +1 -1
  153. package/lib/vue3/vue-component-lib/utils.js.map +1 -1
  154. package/package.json +13 -11
  155. package/types/Button.d.ts +9 -7
  156. package/types/ChannelVideo.d.ts +4 -0
  157. package/types/Form.d.ts +11 -0
  158. package/types/Image.d.ts +5 -0
  159. package/types/Input.d.ts +6 -1
  160. package/types/LivePlayer.d.ts +17 -0
  161. package/types/LivePusher.d.ts +10 -0
  162. package/types/Picker.d.ts +9 -0
  163. package/types/Progress.d.ts +2 -2
  164. package/types/RichText.d.ts +6 -4
  165. package/types/ScrollView.d.ts +5 -5
  166. package/types/ShareElement.d.ts +39 -0
  167. package/types/StickySection.d.ts +0 -1
  168. package/types/Swiper.d.ts +10 -0
  169. package/types/Text.d.ts +8 -3
  170. package/types/Textarea.d.ts +10 -3
  171. package/types/Video.d.ts +12 -0
  172. package/types/View.d.ts +1 -1
  173. package/virtual-list/index.js +2 -2
  174. package/dist/cjs/hls-0f2d4d85.js +0 -26677
  175. package/dist/esm/hls-0e83e558.js +0 -26675
  176. package/dist/esm-es5/hls-0e83e558.js +0 -289
  177. package/dist/esm-es5/index-394db4c1.js +0 -7
  178. package/dist/taro-components/p-198000d8.system.js +0 -289
  179. package/dist/taro-components/p-2fad2a65.js +0 -7
  180. package/dist/taro-components/p-387314fa.system.js +0 -7
  181. package/dist/taro-components/p-3e701660.js +0 -289
  182. package/dist/taro-components/p-4e9bd4f6.entry.js +0 -1
  183. package/dist/taro-components/p-589293fd.entry.js +0 -1
  184. package/dist/taro-components/p-58b19305.system.entry.js +0 -1
  185. package/dist/taro-components/p-5b67a98e.entry.js +0 -1
  186. package/dist/taro-components/p-735c2a72.system.entry.js +0 -1
  187. package/dist/taro-components/p-97f0ad72.system.entry.js +0 -1
  188. package/dist/taro-components/p-a132ebb9.entry.js +0 -1
  189. package/dist/taro-components/p-c43c5e89.system.entry.js +0 -1
  190. package/dist/taro-components/p-cc7b95fd.system.entry.js +0 -1
  191. package/dist/taro-components/p-d9e2e3aa.entry.js +0 -1
  192. package/dist/taro-components/p-dcbb7b2d.entry.js +0 -1
  193. package/dist/taro-components/p-ed011ff9.entry.js +0 -1
  194. package/dist/taro-components/p-fa43177b.system.entry.js +0 -1
@@ -69,11 +69,11 @@ export class Checkbox {
69
69
  "reflect": false
70
70
  },
71
71
  "value": {
72
- "type": "string",
73
- "mutable": false,
72
+ "type": "any",
73
+ "mutable": true,
74
74
  "complexType": {
75
- "original": "string",
76
- "resolved": "string",
75
+ "original": "string | number",
76
+ "resolved": "number | string",
77
77
  "references": {}
78
78
  },
79
79
  "required": false,
@@ -114,7 +114,7 @@ export class Input {
114
114
  this.isOnComposition = true;
115
115
  }
116
116
  };
117
- this.handleBeforeinput = (e) => {
117
+ this.handleBeforeInput = (e) => {
118
118
  if (!e.data)
119
119
  return;
120
120
  const isNumber = e.data && /[0-9]/.test(e.data);
@@ -127,7 +127,7 @@ export class Input {
127
127
  }
128
128
  }
129
129
  };
130
- this.value = undefined;
130
+ this.value = '';
131
131
  this.type = undefined;
132
132
  this.password = false;
133
133
  this.placeholder = undefined;
@@ -164,14 +164,9 @@ export class Input {
164
164
  else {
165
165
  (_b = this.inputRef) === null || _b === void 0 ? void 0 : _b.addEventListener('compositionstart', this.handleComposition);
166
166
  (_c = this.inputRef) === null || _c === void 0 ? void 0 : _c.addEventListener('compositionend', this.handleComposition);
167
- (_d = this.inputRef) === null || _d === void 0 ? void 0 : _d.addEventListener('beforeinput', this.handleBeforeinput);
168
- (_e = this.inputRef) === null || _e === void 0 ? void 0 : _e.addEventListener('textInput', this.handleBeforeinput);
167
+ (_d = this.inputRef) === null || _d === void 0 ? void 0 : _d.addEventListener('beforeinput', this.handleBeforeInput);
168
+ (_e = this.inputRef) === null || _e === void 0 ? void 0 : _e.addEventListener('textInput', this.handleBeforeInput);
169
169
  }
170
- Object.defineProperty(this.el, 'value', {
171
- get: () => this.inputRef.value,
172
- set: value => this.value !== value && (this.value = value),
173
- configurable: true
174
- });
175
170
  }
176
171
  disconnectedCallback() {
177
172
  var _a, _b, _c, _d, _e;
@@ -181,8 +176,8 @@ export class Input {
181
176
  else {
182
177
  (_b = this.inputRef) === null || _b === void 0 ? void 0 : _b.removeEventListener('compositionstart', this.handleComposition);
183
178
  (_c = this.inputRef) === null || _c === void 0 ? void 0 : _c.removeEventListener('compositionend', this.handleComposition);
184
- (_d = this.inputRef) === null || _d === void 0 ? void 0 : _d.removeEventListener('beforeinput', this.handleBeforeinput);
185
- (_e = this.inputRef) === null || _e === void 0 ? void 0 : _e.removeEventListener('textInput', this.handleBeforeinput);
179
+ (_d = this.inputRef) === null || _d === void 0 ? void 0 : _d.removeEventListener('beforeinput', this.handleBeforeInput);
180
+ (_e = this.inputRef) === null || _e === void 0 ? void 0 : _e.removeEventListener('textInput', this.handleBeforeInput);
186
181
  }
187
182
  }
188
183
  render() {
@@ -221,7 +216,8 @@ export class Input {
221
216
  "text": ""
222
217
  },
223
218
  "attribute": "value",
224
- "reflect": false
219
+ "reflect": false,
220
+ "defaultValue": "''"
225
221
  },
226
222
  "type": {
227
223
  "type": "string",
@@ -326,7 +322,7 @@ export class Input {
326
322
  "text": ""
327
323
  },
328
324
  "attribute": "focus",
329
- "reflect": true,
325
+ "reflect": false,
330
326
  "defaultValue": "false"
331
327
  },
332
328
  "confirmType": {
@@ -1,4 +1,4 @@
1
- import { h, Host } from '@stencil/core';
1
+ import { Host, h } from '@stencil/core';
2
2
  import { TOP, LINE_HEIGHT, MASK_HEIGHT } from './constant';
3
3
  export class TaroPickerGroup {
4
4
  constructor() {
@@ -8,7 +8,6 @@ export class TaroPickerGroup {
8
8
  this.height = undefined;
9
9
  this.columnId = undefined;
10
10
  this.updateHeight = undefined;
11
- this.onColumnChange = undefined;
12
11
  this.updateDay = undefined;
13
12
  this.startY = undefined;
14
13
  this.preY = undefined;
@@ -78,7 +77,7 @@ export class TaroPickerGroup {
78
77
  this.updateHeight(newPos, this.columnId);
79
78
  }
80
79
  async handleMoveEnd(clientY) {
81
- const { mode, range, height, updateHeight, onColumnChange, columnId } = this;
80
+ const { mode, range, height, updateHeight, columnId } = this;
82
81
  const max = 0;
83
82
  const min = -LINE_HEIGHT * (range.length - 1);
84
83
  const endY = clientY;
@@ -129,7 +128,7 @@ export class TaroPickerGroup {
129
128
  // 先按公式算出 index, 再用此 index 算出一个整数高度
130
129
  const index = Math.round(absoluteHeight / -LINE_HEIGHT);
131
130
  const relativeHeight = TOP - LINE_HEIGHT * index;
132
- if (this.mode === 'date') {
131
+ if (this.mode === 'date' && typeof this.updateDay === 'function') {
133
132
  if (this.columnId === '0') {
134
133
  this.updateDay(+this.range[index].replace(/[^0-9]/gi, ''), 0);
135
134
  }
@@ -141,14 +140,16 @@ export class TaroPickerGroup {
141
140
  }
142
141
  }
143
142
  updateHeight(relativeHeight, columnId, mode === 'time');
144
- onColumnChange && onColumnChange(relativeHeight, columnId);
143
+ this.onColumnChange.emit({
144
+ columnId,
145
+ height: relativeHeight,
146
+ });
145
147
  }
146
148
  onMouseDown(e) {
147
149
  this.isMove = true;
148
150
  this.handleMoveStart(e.clientY);
149
151
  }
150
152
  onMouseMove(e) {
151
- e.preventDefault();
152
153
  if (!this.isMove)
153
154
  return;
154
155
  this.handleMoving(e.clientY);
@@ -163,7 +164,6 @@ export class TaroPickerGroup {
163
164
  this.handleMoveStart(e.changedTouches[0].clientY);
164
165
  }
165
166
  onTouchMove(e) {
166
- e.preventDefault();
167
167
  this.handleMoving(e.changedTouches[0].clientY);
168
168
  }
169
169
  onTouchEnd(e) {
@@ -279,31 +279,16 @@ export class TaroPickerGroup {
279
279
  "text": ""
280
280
  }
281
281
  },
282
- "onColumnChange": {
283
- "type": "unknown",
284
- "mutable": false,
285
- "complexType": {
286
- "original": "(height: number, columnId: string) => void",
287
- "resolved": "(height: number, columnId: string) => void",
288
- "references": {}
289
- },
290
- "required": false,
291
- "optional": false,
292
- "docs": {
293
- "tags": [],
294
- "text": ""
295
- }
296
- },
297
282
  "updateDay": {
298
283
  "type": "unknown",
299
284
  "mutable": false,
300
285
  "complexType": {
301
286
  "original": "(value: number, fields: number) => void",
302
- "resolved": "(value: number, fields: number) => void",
287
+ "resolved": "((value: number, fields: number) => void) | undefined",
303
288
  "references": {}
304
289
  },
305
290
  "required": false,
306
- "optional": false,
291
+ "optional": true,
307
292
  "docs": {
308
293
  "tags": [],
309
294
  "text": ""
@@ -320,6 +305,24 @@ export class TaroPickerGroup {
320
305
  "isMove": {}
321
306
  };
322
307
  }
308
+ static get events() {
309
+ return [{
310
+ "method": "onColumnChange",
311
+ "name": "columnChange",
312
+ "bubbles": true,
313
+ "cancelable": true,
314
+ "composed": true,
315
+ "docs": {
316
+ "tags": [],
317
+ "text": ""
318
+ },
319
+ "complexType": {
320
+ "original": "any",
321
+ "resolved": "any",
322
+ "references": {}
323
+ }
324
+ }];
325
+ }
323
326
  static get methods() {
324
327
  return {
325
328
  "handleMoveStart": {
@@ -392,7 +395,7 @@ export class TaroPickerGroup {
392
395
  "name": "mousemove",
393
396
  "method": "onMouseMove",
394
397
  "target": undefined,
395
- "capture": false,
398
+ "capture": true,
396
399
  "passive": true
397
400
  }, {
398
401
  "name": "mouseup",
@@ -416,7 +419,7 @@ export class TaroPickerGroup {
416
419
  "name": "touchmove",
417
420
  "method": "onTouchMove",
418
421
  "target": undefined,
419
- "capture": false,
422
+ "capture": true,
420
423
  "passive": true
421
424
  }, {
422
425
  "name": "touchend",
@@ -1,4 +1,4 @@
1
- import { h, Host } from '@stencil/core';
1
+ import { Host, h } from '@stencil/core';
2
2
  import classNames from 'classnames';
3
3
  import { hoursRange, minutesRange, compareTime, verifyValue, verifyTime, verifyDate, getYearRange, getMonthRange, getDayRange, formatValue } from './utils';
4
4
  import { TOP, LINE_HEIGHT } from './constant';
@@ -68,11 +68,19 @@ export class Picker {
68
68
  })
69
69
  .join('-');
70
70
  }
71
- this.pickerValue = value;
71
+ this.value = value;
72
+ this.pickerValue = this.value;
72
73
  this.onChange.emit({
73
74
  value
74
75
  });
75
76
  };
77
+ this.handleColumnChange = (e) => {
78
+ const { columnId, height } = e.detail;
79
+ this.onColumnChange.emit({
80
+ column: Number(columnId),
81
+ value: (TOP - height) / LINE_HEIGHT
82
+ });
83
+ };
76
84
  // 点击取消按钮或蒙层
77
85
  this.handleCancel = () => {
78
86
  this.hidePicker();
@@ -110,12 +118,6 @@ export class Picker {
110
118
  }
111
119
  }
112
120
  };
113
- this.handleColumnChange = (height, columnId) => {
114
- this.onColumnChange.emit({
115
- column: Number(columnId),
116
- value: (TOP - height) / LINE_HEIGHT
117
- });
118
- };
119
121
  this.updateDay = (value, fields) => {
120
122
  const { _start, _end, _updateValue } = this.pickerDate;
121
123
  _updateValue[fields] = value;
@@ -201,6 +203,7 @@ export class Picker {
201
203
  this.end = '';
202
204
  this.fields = 'day';
203
205
  this.name = '';
206
+ this.textProps = {};
204
207
  this.pickerValue = [];
205
208
  this.height = [];
206
209
  this.hidden = true;
@@ -212,11 +215,6 @@ export class Picker {
212
215
  this.handleProps();
213
216
  }
214
217
  componentDidLoad() {
215
- Object.defineProperty(this.el, 'value', {
216
- get: () => this.pickerValue,
217
- set: value => this.value !== value && (this.value = value),
218
- configurable: true
219
- });
220
218
  if (this.overlay) {
221
219
  document.body.appendChild(this.overlay);
222
220
  }
@@ -295,6 +293,9 @@ export class Picker {
295
293
  throw new Error('Date Interval Error');
296
294
  }
297
295
  }
296
+ else {
297
+ throw new Error(`Picker not support "${mode}" mode.`);
298
+ }
298
299
  // Prop 变化时,无论是否正在显示弹层,都更新 height 值
299
300
  this.height = this.getHeightByIndex();
300
301
  // 同步表单 value 值,用于 form submit
@@ -310,6 +311,7 @@ export class Picker {
310
311
  }
311
312
  }
312
313
  render() {
314
+ var _a, _b;
313
315
  const { name, mode, fadeOut, hidden } = this;
314
316
  // 选项条
315
317
  let pickerGroup;
@@ -334,7 +336,7 @@ export class Picker {
334
336
  'weui-animate-slide-down': fadeOut
335
337
  });
336
338
  const shouldDivHidden = hidden ? { display: 'none' } : {};
337
- return (h(Host, null, h("div", { onClick: this.showPicker }, h("slot", null), h("input", { type: 'hidden', name: name, value: formatValue(this.pickerValue) })), h("div", { class: 'weui-picker__overlay', style: shouldDivHidden, ref: el => { this.overlay = el; } }, h("div", { class: clsMask, onClick: this.handleCancel }), h("div", { class: clsSlider }, h("div", { class: 'weui-picker__hd' }, h("div", { class: 'weui-picker__action', onClick: this.handleCancel }, "\u53D6\u6D88"), h("div", { class: 'weui-picker__action', onClick: this.handleChange }, "\u786E\u5B9A")), h("div", { class: 'weui-picker__bd' }, pickerGroup), h("input", { type: 'hidden', name: name, value: formatValue(this.pickerValue) })))));
339
+ return (h(Host, null, h("div", { onClick: this.showPicker }, h("slot", null), h("input", { type: 'hidden', name: name, value: formatValue(this.pickerValue) })), h("div", { class: 'weui-picker__overlay', style: shouldDivHidden, ref: el => { this.overlay = el; } }, h("div", { class: clsMask, onClick: this.handleCancel }), h("div", { class: clsSlider }, h("div", { class: 'weui-picker__hd' }, h("div", { class: 'weui-picker__action', onClick: this.handleCancel }, (_a = this.textProps.cancelText) !== null && _a !== void 0 ? _a : '取消'), h("div", { class: 'weui-picker__action', onClick: this.handleChange }, (_b = this.textProps.okText) !== null && _b !== void 0 ? _b : '确定')), h("div", { class: 'weui-picker__bd' }, pickerGroup), h("input", { type: 'hidden', name: name, value: formatValue(this.pickerValue) })))));
338
340
  }
339
341
  static get is() { return "taro-picker-core"; }
340
342
  static get originalStyleUrls() {
@@ -426,9 +428,13 @@ export class Picker {
426
428
  "type": "any",
427
429
  "mutable": true,
428
430
  "complexType": {
429
- "original": "number | number[] | string",
431
+ "original": "PickerValue",
430
432
  "resolved": "number | number[] | string",
431
- "references": {}
433
+ "references": {
434
+ "PickerValue": {
435
+ "location": "local"
436
+ }
437
+ }
432
438
  },
433
439
  "required": false,
434
440
  "optional": false,
@@ -514,6 +520,26 @@ export class Picker {
514
520
  "attribute": "name",
515
521
  "reflect": false,
516
522
  "defaultValue": "''"
523
+ },
524
+ "textProps": {
525
+ "type": "unknown",
526
+ "mutable": false,
527
+ "complexType": {
528
+ "original": "PickerText",
529
+ "resolved": "PickerText",
530
+ "references": {
531
+ "PickerText": {
532
+ "location": "local"
533
+ }
534
+ }
535
+ },
536
+ "required": false,
537
+ "optional": false,
538
+ "docs": {
539
+ "tags": [],
540
+ "text": ""
541
+ },
542
+ "defaultValue": "{}"
517
543
  }
518
544
  };
519
545
  }
@@ -48,6 +48,9 @@ export class RichText {
48
48
  return null;
49
49
  };
50
50
  this.nodes = undefined;
51
+ this.selectable = false;
52
+ this.userSelect = false;
53
+ this.space = undefined;
51
54
  }
52
55
  render() {
53
56
  const { nodes, renderNode } = this;
@@ -59,6 +62,16 @@ export class RichText {
59
62
  }
60
63
  }
61
64
  static get is() { return "taro-rich-text-core"; }
65
+ static get originalStyleUrls() {
66
+ return {
67
+ "$": ["./style/index.scss"]
68
+ };
69
+ }
70
+ static get styleUrls() {
71
+ return {
72
+ "$": ["./style/index.css"]
73
+ };
74
+ }
62
75
  static get properties() {
63
76
  return {
64
77
  "nodes": {
@@ -81,6 +94,64 @@ export class RichText {
81
94
  },
82
95
  "attribute": "nodes",
83
96
  "reflect": false
97
+ },
98
+ "selectable": {
99
+ "type": "boolean",
100
+ "mutable": true,
101
+ "complexType": {
102
+ "original": "boolean",
103
+ "resolved": "boolean",
104
+ "references": {}
105
+ },
106
+ "required": false,
107
+ "optional": false,
108
+ "docs": {
109
+ "tags": [],
110
+ "text": ""
111
+ },
112
+ "attribute": "selectable",
113
+ "reflect": false,
114
+ "defaultValue": "false"
115
+ },
116
+ "userSelect": {
117
+ "type": "boolean",
118
+ "mutable": true,
119
+ "complexType": {
120
+ "original": "boolean",
121
+ "resolved": "boolean",
122
+ "references": {}
123
+ },
124
+ "required": false,
125
+ "optional": false,
126
+ "docs": {
127
+ "tags": [],
128
+ "text": ""
129
+ },
130
+ "attribute": "user-select",
131
+ "reflect": false,
132
+ "defaultValue": "false"
133
+ },
134
+ "space": {
135
+ "type": "string",
136
+ "mutable": false,
137
+ "complexType": {
138
+ "original": "keyof TextProps.TSpace",
139
+ "resolved": "\"emsp\" | \"ensp\" | \"nbsp\" | undefined",
140
+ "references": {
141
+ "TextProps": {
142
+ "location": "import",
143
+ "path": "types"
144
+ }
145
+ }
146
+ },
147
+ "required": false,
148
+ "optional": true,
149
+ "docs": {
150
+ "tags": [],
151
+ "text": ""
152
+ },
153
+ "attribute": "space",
154
+ "reflect": false
84
155
  }
85
156
  };
86
157
  }
@@ -0,0 +1,16 @@
1
+ taro-rich-text-core {
2
+ user-select: none;
3
+ }
4
+ taro-rich-text-core[selectable=true], taro-rich-text-core[user-select=true] {
5
+ display: block;
6
+ user-select: text;
7
+ }
8
+ taro-rich-text-core[space] {
9
+ white-space: pre-wrap;
10
+ }
11
+ taro-rich-text-core[space=ensp] {
12
+ word-spacing: 0.5em;
13
+ }
14
+ taro-rich-text-core[space=nbsp] {
15
+ word-spacing: 1em;
16
+ }
@@ -1,9 +1,26 @@
1
1
  taro-text-core {
2
2
  display: inline;
3
3
  user-select: none;
4
- white-space: pre-wrap;
5
4
  }
6
-
7
- .taro-text__selectable {
5
+ taro-text-core[selectable=true], taro-text-core[user-select=true] {
6
+ display: inline-block;
8
7
  user-select: text;
8
+ }
9
+ taro-text-core[space] {
10
+ white-space: pre-wrap;
11
+ }
12
+ taro-text-core[space=ensp] {
13
+ word-spacing: 0.5em;
14
+ }
15
+ taro-text-core[space=nbsp] {
16
+ word-spacing: 1em;
17
+ }
18
+ taro-text-core[number-of-lines] {
19
+ --line-clamp: 2;
20
+ display: -webkit-box;
21
+ -webkit-box-orient: vertical;
22
+ word-wrap: break-word;
23
+ overflow: hidden;
24
+ text-overflow: ellipsis;
25
+ -webkit-line-clamp: var(--line-clamp);
9
26
  }
@@ -1,14 +1,17 @@
1
1
  import { h, Host } from '@stencil/core';
2
- import classNames from 'classnames';
3
2
  export class Text {
4
3
  constructor() {
5
4
  this.selectable = false;
5
+ this.userSelect = false;
6
+ this.space = undefined;
7
+ this.numberOfLines = undefined;
6
8
  }
7
9
  render() {
8
- const cls = classNames({
9
- 'taro-text__selectable': this.selectable
10
- });
11
- return (h(Host, { class: cls }, h("slot", null)));
10
+ const style = {};
11
+ if (typeof this.numberOfLines === 'number') {
12
+ style['--line-clamp'] = this.numberOfLines;
13
+ }
14
+ return (h(Host, { style: style }, h("slot", null)));
12
15
  }
13
16
  static get is() { return "taro-text-core"; }
14
17
  static get originalStyleUrls() {
@@ -25,7 +28,7 @@ export class Text {
25
28
  return {
26
29
  "selectable": {
27
30
  "type": "boolean",
28
- "mutable": false,
31
+ "mutable": true,
29
32
  "complexType": {
30
33
  "original": "boolean",
31
34
  "resolved": "boolean",
@@ -40,6 +43,63 @@ export class Text {
40
43
  "attribute": "selectable",
41
44
  "reflect": false,
42
45
  "defaultValue": "false"
46
+ },
47
+ "userSelect": {
48
+ "type": "boolean",
49
+ "mutable": true,
50
+ "complexType": {
51
+ "original": "boolean",
52
+ "resolved": "boolean",
53
+ "references": {}
54
+ },
55
+ "required": false,
56
+ "optional": false,
57
+ "docs": {
58
+ "tags": [],
59
+ "text": ""
60
+ },
61
+ "attribute": "user-select",
62
+ "reflect": false,
63
+ "defaultValue": "false"
64
+ },
65
+ "space": {
66
+ "type": "string",
67
+ "mutable": true,
68
+ "complexType": {
69
+ "original": "keyof TextProps.TSpace",
70
+ "resolved": "\"emsp\" | \"ensp\" | \"nbsp\" | undefined",
71
+ "references": {
72
+ "TextProps": {
73
+ "location": "import",
74
+ "path": "types"
75
+ }
76
+ }
77
+ },
78
+ "required": false,
79
+ "optional": true,
80
+ "docs": {
81
+ "tags": [],
82
+ "text": ""
83
+ },
84
+ "attribute": "space",
85
+ "reflect": false
86
+ },
87
+ "numberOfLines": {
88
+ "type": "number",
89
+ "mutable": false,
90
+ "complexType": {
91
+ "original": "number",
92
+ "resolved": "number | undefined",
93
+ "references": {}
94
+ },
95
+ "required": false,
96
+ "optional": true,
97
+ "docs": {
98
+ "tags": [],
99
+ "text": ""
100
+ },
101
+ "attribute": "number-of-lines",
102
+ "reflect": false
43
103
  }
44
104
  };
45
105
  }
@@ -96,7 +96,7 @@ export class Textarea {
96
96
  numberOfLines = Math.floor(taHeight / taLineHeight);
97
97
  return numberOfLines;
98
98
  };
99
- this.value = undefined;
99
+ this.value = '';
100
100
  this.placeholder = undefined;
101
101
  this.disabled = false;
102
102
  this.maxlength = 140;
@@ -115,13 +115,6 @@ export class Textarea {
115
115
  async focus() {
116
116
  this.textareaRef.focus();
117
117
  }
118
- componentDidLoad() {
119
- Object.defineProperty(this.el, 'value', {
120
- get: () => this.textareaRef.value,
121
- set: value => this.value !== value && (this.value = value),
122
- configurable: true
123
- });
124
- }
125
118
  render() {
126
119
  const { value, placeholder, disabled, maxlength, autoFocus, autoHeight, name, nativeProps, handleInput, handleFocus, handleBlur, handleChange } = this;
127
120
  const otherProps = {};
@@ -164,7 +157,8 @@ export class Textarea {
164
157
  "text": ""
165
158
  },
166
159
  "attribute": "value",
167
- "reflect": false
160
+ "reflect": false,
161
+ "defaultValue": "''"
168
162
  },
169
163
  "placeholder": {
170
164
  "type": "string",
@@ -234,7 +228,7 @@ export class Textarea {
234
228
  "text": ""
235
229
  },
236
230
  "attribute": "focus",
237
- "reflect": true,
231
+ "reflect": false,
238
232
  "defaultValue": "false"
239
233
  },
240
234
  "autoHeight": {
@@ -60,7 +60,7 @@ export class Video {
60
60
  const { src, videoRef } = this;
61
61
  if (isHls(src)) {
62
62
  import(
63
- /* webpackMode: "weak" */
63
+ /* webpackExports: ["default"] */
64
64
  'hls.js').then(e => {
65
65
  const Hls = e.default;
66
66
  this.HLS = Hls;