@ray-js/components 1.4.0 → 1.4.3

Sign up to get free protection for your applications and to get access to all the features.
Files changed (566) hide show
  1. package/lib/Button/Button.android.js +1 -0
  2. package/lib/Button/Button.ios.js +1 -0
  3. package/lib/Button/Button.native.d.ts +29 -0
  4. package/lib/Button/Button.tuya.d.ts +4 -0
  5. package/lib/Button/Button.tuya.js +43 -0
  6. package/lib/Button/Button.web.js +57 -0
  7. package/lib/Button/index.android.js +1 -0
  8. package/lib/Button/index.ios.js +1 -0
  9. package/lib/Button/index.md +41 -0
  10. package/lib/Button/index.tuya.js +3 -0
  11. package/lib/Button/index.web.js +3 -0
  12. package/lib/Button/index.wechat.js +3 -0
  13. package/lib/Button/props.android.js +1 -0
  14. package/lib/Button/props.ios.js +1 -0
  15. package/lib/Button/props.tuya.js +10 -0
  16. package/lib/Button/props.web.js +10 -0
  17. package/lib/Button/props.wechat.js +10 -0
  18. package/lib/Checkbox/Checkbox.android.js +1 -0
  19. package/lib/Checkbox/Checkbox.ios.js +1 -0
  20. package/lib/Checkbox/Checkbox.native.d.ts +28 -0
  21. package/lib/Checkbox/Checkbox.tuya.d.ts +4 -0
  22. package/lib/Checkbox/Checkbox.tuya.js +22 -0
  23. package/lib/Checkbox/Checkbox.web.js +36 -0
  24. package/lib/Checkbox/index.android.js +1 -0
  25. package/lib/Checkbox/index.ios.js +1 -0
  26. package/lib/Checkbox/index.md +33 -0
  27. package/lib/Checkbox/index.tuya.js +3 -0
  28. package/lib/Checkbox/index.web.js +3 -0
  29. package/lib/Checkbox/index.wechat.js +3 -0
  30. package/lib/Checkbox/props.android.js +1 -0
  31. package/lib/Checkbox/props.ios.js +1 -0
  32. package/lib/Checkbox/props.tuya.js +1 -0
  33. package/lib/Checkbox/props.web.js +1 -0
  34. package/lib/Checkbox/props.wechat.js +1 -0
  35. package/lib/CheckboxGroup/CheckboxGroup.android.js +1 -0
  36. package/lib/CheckboxGroup/CheckboxGroup.ios.js +1 -0
  37. package/lib/CheckboxGroup/CheckboxGroup.native.d.ts +18 -0
  38. package/lib/CheckboxGroup/CheckboxGroup.tuya.d.ts +4 -0
  39. package/lib/CheckboxGroup/CheckboxGroup.tuya.js +35 -0
  40. package/lib/CheckboxGroup/CheckboxGroup.web.js +9 -0
  41. package/lib/CheckboxGroup/index.android.js +1 -0
  42. package/lib/CheckboxGroup/index.ios.js +1 -0
  43. package/lib/CheckboxGroup/index.md +37 -0
  44. package/lib/CheckboxGroup/index.tuya.js +3 -0
  45. package/lib/CheckboxGroup/index.web.js +3 -0
  46. package/lib/CheckboxGroup/index.wechat.js +3 -0
  47. package/lib/CheckboxGroup/props.android.js +1 -0
  48. package/lib/CheckboxGroup/props.ios.js +1 -0
  49. package/lib/CheckboxGroup/props.tuya.js +1 -0
  50. package/lib/CheckboxGroup/props.web.js +1 -0
  51. package/lib/CheckboxGroup/props.wechat.js +1 -0
  52. package/lib/ClickableSimplified/index.android.js +1 -0
  53. package/lib/ClickableSimplified/index.ios.js +1 -0
  54. package/lib/ClickableSimplified/index.native.d.ts +42 -0
  55. package/lib/DatePicker/DatePicker.android.js +1 -0
  56. package/lib/DatePicker/DatePicker.d.ts +4 -0
  57. package/lib/DatePicker/DatePicker.ios.js +1 -0
  58. package/lib/DatePicker/DatePicker.js +10 -0
  59. package/lib/DatePicker/DatePicker.native.d.ts +34 -0
  60. package/lib/DatePicker/DatePicker.tuya.d.ts +4 -0
  61. package/lib/DatePicker/DatePicker.tuya.js +56 -0
  62. package/lib/DatePicker/DatePicker.web.js +10 -0
  63. package/lib/DatePicker/DatePicker.wechat.d.ts +4 -0
  64. package/lib/DatePicker/DatePicker.wechat.js +56 -0
  65. package/lib/DatePicker/index.android.js +1 -0
  66. package/lib/DatePicker/index.d.ts +3 -0
  67. package/lib/DatePicker/index.ios.js +1 -0
  68. package/lib/DatePicker/index.js +3 -0
  69. package/lib/DatePicker/index.md +36 -0
  70. package/lib/DatePicker/index.module.less +0 -0
  71. package/lib/DatePicker/index.tuya.js +3 -0
  72. package/lib/DatePicker/index.web.js +3 -0
  73. package/lib/DatePicker/index.wechat.js +3 -0
  74. package/lib/DatePicker/props.android.js +1 -0
  75. package/lib/DatePicker/props.d.ts +31 -0
  76. package/lib/DatePicker/props.ios.js +1 -0
  77. package/lib/DatePicker/props.js +7 -0
  78. package/lib/DatePicker/props.tuya.js +7 -0
  79. package/lib/DatePicker/props.web.js +7 -0
  80. package/lib/DatePicker/props.wechat.js +7 -0
  81. package/lib/Icon/Icon.android.js +1 -0
  82. package/lib/Icon/Icon.ios.js +1 -0
  83. package/lib/Icon/Icon.native.d.ts +15 -0
  84. package/lib/Icon/Icon.tuya.d.ts +5 -0
  85. package/lib/Icon/Icon.tuya.js +23 -0
  86. package/lib/Icon/Icon.web.js +23 -0
  87. package/lib/Icon/iconfont/iconfont.android.js +1 -0
  88. package/lib/Icon/iconfont/iconfont.ios.js +1 -0
  89. package/lib/Icon/iconfont/iconfont.tuya.js +47 -0
  90. package/lib/Icon/iconfont/iconfont.web.js +47 -0
  91. package/lib/Icon/iconfont/iconfont.wechat.js +47 -0
  92. package/lib/Icon/iconfont-rn/iconfont.json +189 -0
  93. package/lib/Icon/index.android.js +1 -0
  94. package/lib/Icon/index.ios.js +1 -0
  95. package/lib/Icon/index.md +29 -0
  96. package/lib/Icon/index.tuya.js +3 -0
  97. package/lib/Icon/index.web.js +3 -0
  98. package/lib/Icon/index.wechat.js +3 -0
  99. package/lib/Icon/props.android.js +1 -0
  100. package/lib/Icon/props.ios.js +1 -0
  101. package/lib/Icon/props.tuya.js +5 -0
  102. package/lib/Icon/props.web.js +5 -0
  103. package/lib/Icon/props.wechat.js +5 -0
  104. package/lib/Image/Image.android.js +1 -0
  105. package/lib/Image/Image.ios.js +1 -0
  106. package/lib/Image/Image.native.d.ts +28 -0
  107. package/lib/Image/Image.tuya.d.ts +4 -0
  108. package/lib/Image/Image.tuya.js +23 -0
  109. package/lib/Image/Image.web.js +92 -0
  110. package/lib/Image/index.android.js +1 -0
  111. package/lib/Image/index.ios.js +1 -0
  112. package/lib/Image/index.md +50 -0
  113. package/lib/Image/index.tuya.js +3 -0
  114. package/lib/Image/index.web.js +3 -0
  115. package/lib/Image/index.wechat.js +3 -0
  116. package/lib/Image/props.android.js +1 -0
  117. package/lib/Image/props.ios.js +1 -0
  118. package/lib/Image/props.tuya.js +4 -0
  119. package/lib/Image/props.web.js +4 -0
  120. package/lib/Image/props.wechat.js +4 -0
  121. package/lib/Input/Input.android.js +1 -0
  122. package/lib/Input/Input.ios.js +1 -0
  123. package/lib/Input/Input.native.d.ts +32 -0
  124. package/lib/Input/Input.tuya.d.ts +4 -0
  125. package/lib/Input/Input.tuya.js +86 -0
  126. package/lib/Input/Input.web.js +100 -0
  127. package/lib/Input/index.android.js +1 -0
  128. package/lib/Input/index.ios.js +1 -0
  129. package/lib/Input/index.md +43 -0
  130. package/lib/Input/index.tuya.js +3 -0
  131. package/lib/Input/index.web.js +3 -0
  132. package/lib/Input/index.wechat.js +3 -0
  133. package/lib/Input/props.android.js +1 -0
  134. package/lib/Input/props.ios.js +1 -0
  135. package/lib/Input/props.tuya.js +7 -0
  136. package/lib/Input/props.web.js +7 -0
  137. package/lib/Input/props.wechat.js +7 -0
  138. package/lib/Label/Label.android.js +1 -0
  139. package/lib/Label/Label.ios.js +1 -0
  140. package/lib/Label/Label.native.d.ts +4 -0
  141. package/lib/Label/Label.tuya.d.ts +4 -0
  142. package/lib/Label/Label.tuya.js +21 -0
  143. package/lib/Label/Label.web.js +24 -0
  144. package/lib/Label/index.android.js +1 -0
  145. package/lib/Label/index.ios.js +1 -0
  146. package/lib/Label/index.tuya.js +3 -0
  147. package/lib/Label/index.web.js +3 -0
  148. package/lib/Label/index.wechat.js +3 -0
  149. package/lib/Label/props.android.js +1 -0
  150. package/lib/Label/props.ios.js +1 -0
  151. package/lib/Label/props.tuya.js +1 -0
  152. package/lib/Label/props.web.js +1 -0
  153. package/lib/Label/props.wechat.js +1 -0
  154. package/lib/LinearGradient/LinearGradient.android.js +1 -0
  155. package/lib/LinearGradient/LinearGradient.d.ts +4 -0
  156. package/lib/LinearGradient/LinearGradient.ios.js +1 -0
  157. package/lib/LinearGradient/LinearGradient.js +8 -0
  158. package/lib/LinearGradient/LinearGradient.native.d.ts +16 -0
  159. package/lib/LinearGradient/LinearGradient.tuya.d.ts +4 -0
  160. package/lib/LinearGradient/LinearGradient.tuya.js +56 -0
  161. package/lib/LinearGradient/LinearGradient.web.js +8 -0
  162. package/lib/LinearGradient/LinearGradient.wechat.d.ts +4 -0
  163. package/lib/LinearGradient/LinearGradient.wechat.js +53 -0
  164. package/lib/LinearGradient/index.android.js +1 -0
  165. package/lib/LinearGradient/index.d.ts +3 -0
  166. package/lib/LinearGradient/index.ios.js +1 -0
  167. package/lib/LinearGradient/index.js +3 -0
  168. package/lib/LinearGradient/index.md +33 -0
  169. package/lib/LinearGradient/index.module.less +7 -0
  170. package/lib/LinearGradient/index.tuya.js +3 -0
  171. package/lib/LinearGradient/index.web.js +3 -0
  172. package/lib/LinearGradient/index.wechat.js +3 -0
  173. package/lib/LinearGradient/props.android.js +1 -0
  174. package/lib/LinearGradient/props.d.ts +48 -0
  175. package/lib/LinearGradient/props.ios.js +1 -0
  176. package/lib/LinearGradient/props.js +11 -0
  177. package/lib/LinearGradient/props.tuya.js +11 -0
  178. package/lib/LinearGradient/props.web.js +11 -0
  179. package/lib/LinearGradient/props.wechat.js +11 -0
  180. package/lib/Modal/Modal.android.js +1 -0
  181. package/lib/Modal/Modal.d.ts +4 -0
  182. package/lib/Modal/Modal.ios.js +1 -0
  183. package/lib/Modal/Modal.js +10 -0
  184. package/lib/Modal/Modal.native.d.ts +24 -0
  185. package/lib/Modal/Modal.tuya.d.ts +4 -0
  186. package/lib/Modal/Modal.tuya.js +75 -0
  187. package/lib/Modal/Modal.web.js +10 -0
  188. package/lib/Modal/Modal.wechat.d.ts +4 -0
  189. package/lib/Modal/Modal.wechat.js +75 -0
  190. package/lib/Modal/index.android.js +1 -0
  191. package/lib/Modal/index.ios.js +1 -0
  192. package/lib/Modal/index.md +32 -0
  193. package/lib/Modal/index.module.less +46 -0
  194. package/lib/Modal/index.tuya.js +3 -0
  195. package/lib/Modal/index.wechat.js +3 -0
  196. package/lib/Modal/props.android.js +1 -0
  197. package/lib/Modal/props.d.ts +16 -0
  198. package/lib/Modal/props.ios.js +1 -0
  199. package/lib/Modal/props.js +1 -0
  200. package/lib/Modal/props.tuya.js +1 -0
  201. package/lib/Modal/props.web.js +1 -0
  202. package/lib/Modal/props.wechat.js +1 -0
  203. package/lib/Motion/Fade/index.android.js +1 -0
  204. package/lib/Motion/Fade/index.d.ts +4 -0
  205. package/lib/Motion/Fade/index.ios.js +1 -0
  206. package/lib/Motion/Fade/index.js +28 -0
  207. package/lib/Motion/Fade/index.native.d.ts +2 -0
  208. package/lib/Motion/Fade/index.tuya.d.ts +4 -0
  209. package/lib/Motion/Fade/index.tuya.js +78 -0
  210. package/lib/Motion/Fade/index.web.js +28 -0
  211. package/lib/Motion/Fade/index.wechat.d.ts +4 -0
  212. package/lib/Motion/Fade/index.wechat.js +78 -0
  213. package/lib/Motion/PullUp/index.android.js +1 -0
  214. package/lib/Motion/PullUp/index.d.ts +4 -0
  215. package/lib/Motion/PullUp/index.ios.js +1 -0
  216. package/lib/Motion/PullUp/index.js +28 -0
  217. package/lib/Motion/PullUp/index.native.d.ts +2 -0
  218. package/lib/Motion/PullUp/index.tuya.d.ts +4 -0
  219. package/lib/Motion/PullUp/index.tuya.js +82 -0
  220. package/lib/Motion/PullUp/index.web.js +28 -0
  221. package/lib/Motion/PullUp/index.wechat.d.ts +4 -0
  222. package/lib/Motion/PullUp/index.wechat.js +82 -0
  223. package/lib/Motion/PushDown/index.android.js +1 -0
  224. package/lib/Motion/PushDown/index.d.ts +4 -0
  225. package/lib/Motion/PushDown/index.ios.js +1 -0
  226. package/lib/Motion/PushDown/index.js +28 -0
  227. package/lib/Motion/PushDown/index.native.d.ts +2 -0
  228. package/lib/Motion/PushDown/index.tuya.d.ts +4 -0
  229. package/lib/Motion/PushDown/index.tuya.js +82 -0
  230. package/lib/Motion/PushDown/index.web.js +28 -0
  231. package/lib/Motion/PushDown/index.wechat.d.ts +4 -0
  232. package/lib/Motion/PushDown/index.wechat.js +82 -0
  233. package/lib/Motion/ScaleFadeIn/index.android.js +1 -0
  234. package/lib/Motion/ScaleFadeIn/index.d.ts +4 -0
  235. package/lib/Motion/ScaleFadeIn/index.ios.js +1 -0
  236. package/lib/Motion/ScaleFadeIn/index.js +28 -0
  237. package/lib/Motion/ScaleFadeIn/index.native.d.ts +2 -0
  238. package/lib/Motion/ScaleFadeIn/index.tuya.d.ts +4 -0
  239. package/lib/Motion/ScaleFadeIn/index.tuya.js +83 -0
  240. package/lib/Motion/ScaleFadeIn/index.web.js +28 -0
  241. package/lib/Motion/ScaleFadeIn/index.wechat.d.ts +4 -0
  242. package/lib/Motion/ScaleFadeIn/index.wechat.js +83 -0
  243. package/lib/Motion/ScalePullDown/index.android.js +1 -0
  244. package/lib/Motion/ScalePullDown/index.d.ts +4 -0
  245. package/lib/Motion/ScalePullDown/index.ios.js +1 -0
  246. package/lib/Motion/ScalePullDown/index.js +28 -0
  247. package/lib/Motion/ScalePullDown/index.native.d.ts +2 -0
  248. package/lib/Motion/ScalePullDown/index.tuya.d.ts +4 -0
  249. package/lib/Motion/ScalePullDown/index.tuya.js +103 -0
  250. package/lib/Motion/ScalePullDown/index.web.js +28 -0
  251. package/lib/Motion/ScalePullDown/index.wechat.d.ts +4 -0
  252. package/lib/Motion/ScalePullDown/index.wechat.js +103 -0
  253. package/lib/Motion/index.android.js +1 -0
  254. package/lib/Motion/index.d.ts +14 -0
  255. package/lib/Motion/index.ios.js +1 -0
  256. package/lib/Motion/index.js +14 -0
  257. package/lib/Motion/index.md +68 -0
  258. package/lib/Motion/index.tuya.js +14 -0
  259. package/lib/Motion/index.web.js +14 -0
  260. package/lib/Motion/index.wechat.js +14 -0
  261. package/lib/Motion/props.android.js +1 -0
  262. package/lib/Motion/props.d.ts +92 -0
  263. package/lib/Motion/props.ios.js +1 -0
  264. package/lib/Motion/props.js +62 -0
  265. package/lib/Motion/props.tuya.js +62 -0
  266. package/lib/Motion/props.web.js +62 -0
  267. package/lib/Motion/props.wechat.js +62 -0
  268. package/lib/PageContainer/PageContainer.android.js +1 -0
  269. package/lib/PageContainer/PageContainer.ios.js +1 -0
  270. package/lib/PageContainer/PageContainer.tuya.d.ts +3 -0
  271. package/lib/PageContainer/PageContainer.tuya.js +8 -0
  272. package/lib/PageContainer/PageContainer.web.js +10 -0
  273. package/lib/PageContainer/index.android.js +1 -0
  274. package/lib/PageContainer/index.ios.js +1 -0
  275. package/lib/PageContainer/index.md +42 -0
  276. package/lib/PageContainer/index.tuya.js +3 -0
  277. package/lib/PageContainer/index.web.js +3 -0
  278. package/lib/PageContainer/index.wechat.js +3 -0
  279. package/lib/PageContainer/props.android.js +1 -0
  280. package/lib/PageContainer/props.ios.js +1 -0
  281. package/lib/PageContainer/props.tuya.js +9 -0
  282. package/lib/PageContainer/props.web.js +9 -0
  283. package/lib/PageContainer/props.wechat.js +9 -0
  284. package/lib/Picker/Picker.android.js +1 -0
  285. package/lib/Picker/Picker.ios.js +1 -0
  286. package/lib/Picker/Picker.native.d.ts +22 -0
  287. package/lib/Picker/Picker.tuya.d.ts +4 -0
  288. package/lib/Picker/Picker.tuya.js +69 -0
  289. package/lib/Picker/Picker.web.js +11 -0
  290. package/lib/Picker/index.android.js +1 -0
  291. package/lib/Picker/index.ios.js +1 -0
  292. package/lib/Picker/index.md +35 -0
  293. package/lib/Picker/index.tuya.js +3 -0
  294. package/lib/Picker/index.web.js +3 -0
  295. package/lib/Picker/index.wechat.js +3 -0
  296. package/lib/Picker/props.android.js +1 -0
  297. package/lib/Picker/props.d.ts +32 -0
  298. package/lib/Picker/props.ios.js +1 -0
  299. package/lib/Picker/props.js +4 -0
  300. package/lib/Picker/props.tuya.js +4 -0
  301. package/lib/Picker/props.web.js +4 -0
  302. package/lib/Picker/props.wechat.js +4 -0
  303. package/lib/PickerView/PickerView.android.js +1 -0
  304. package/lib/PickerView/PickerView.ios.js +1 -0
  305. package/lib/PickerView/PickerView.native.d.ts +31 -0
  306. package/lib/PickerView/PickerView.tuya.d.ts +4 -0
  307. package/lib/PickerView/PickerView.tuya.js +71 -0
  308. package/lib/PickerView/PickerView.web.js +11 -0
  309. package/lib/PickerView/index.android.js +1 -0
  310. package/lib/PickerView/index.ios.js +1 -0
  311. package/lib/PickerView/index.md +32 -0
  312. package/lib/PickerView/index.tuya.js +3 -0
  313. package/lib/PickerView/index.web.js +3 -0
  314. package/lib/PickerView/index.wechat.js +3 -0
  315. package/lib/PickerView/props.android.js +1 -0
  316. package/lib/PickerView/props.ios.js +1 -0
  317. package/lib/PickerView/props.tuya.js +1 -0
  318. package/lib/PickerView/props.web.js +1 -0
  319. package/lib/PickerView/props.wechat.js +1 -0
  320. package/lib/RadialGradient/RadialGradient.android.js +1 -0
  321. package/lib/RadialGradient/RadialGradient.d.ts +4 -0
  322. package/lib/RadialGradient/RadialGradient.ios.js +1 -0
  323. package/lib/RadialGradient/RadialGradient.js +8 -0
  324. package/lib/RadialGradient/RadialGradient.native.d.ts +17 -0
  325. package/lib/RadialGradient/RadialGradient.tuya.d.ts +4 -0
  326. package/lib/RadialGradient/RadialGradient.tuya.js +36 -0
  327. package/lib/RadialGradient/RadialGradient.web.js +8 -0
  328. package/lib/RadialGradient/RadialGradient.wechat.d.ts +4 -0
  329. package/lib/RadialGradient/RadialGradient.wechat.js +36 -0
  330. package/lib/RadialGradient/index.android.js +1 -0
  331. package/lib/RadialGradient/index.d.ts +3 -0
  332. package/lib/RadialGradient/index.ios.js +1 -0
  333. package/lib/RadialGradient/index.js +3 -0
  334. package/lib/RadialGradient/index.md +33 -0
  335. package/lib/RadialGradient/index.module.less +7 -0
  336. package/lib/RadialGradient/index.tuya.js +3 -0
  337. package/lib/RadialGradient/index.web.js +3 -0
  338. package/lib/RadialGradient/index.wechat.js +3 -0
  339. package/lib/RadialGradient/props.android.js +1 -0
  340. package/lib/RadialGradient/props.d.ts +54 -0
  341. package/lib/RadialGradient/props.ios.js +1 -0
  342. package/lib/RadialGradient/props.js +16 -0
  343. package/lib/RadialGradient/props.tuya.js +16 -0
  344. package/lib/RadialGradient/props.web.js +16 -0
  345. package/lib/RadialGradient/props.wechat.js +16 -0
  346. package/lib/Radio/Radio.android.js +1 -0
  347. package/lib/Radio/Radio.ios.js +1 -0
  348. package/lib/Radio/Radio.native.d.ts +30 -0
  349. package/lib/Radio/Radio.tuya.d.ts +4 -0
  350. package/lib/Radio/Radio.tuya.js +22 -0
  351. package/lib/Radio/Radio.web.js +13 -0
  352. package/lib/Radio/index.android.js +1 -0
  353. package/lib/Radio/index.ios.js +1 -0
  354. package/lib/Radio/index.md +30 -0
  355. package/lib/Radio/index.tuya.js +3 -0
  356. package/lib/Radio/index.web.js +3 -0
  357. package/lib/Radio/index.wechat.js +3 -0
  358. package/lib/Radio/props.android.js +1 -0
  359. package/lib/Radio/props.ios.js +1 -0
  360. package/lib/Radio/props.tuya.js +1 -0
  361. package/lib/Radio/props.web.js +1 -0
  362. package/lib/Radio/props.wechat.js +1 -0
  363. package/lib/RadioGroup/RadioGroup.android.js +1 -0
  364. package/lib/RadioGroup/RadioGroup.ios.js +1 -0
  365. package/lib/RadioGroup/RadioGroup.native.d.ts +18 -0
  366. package/lib/RadioGroup/RadioGroup.tuya.d.ts +4 -0
  367. package/lib/RadioGroup/RadioGroup.tuya.js +35 -0
  368. package/lib/RadioGroup/RadioGroup.web.js +9 -0
  369. package/lib/RadioGroup/index.android.js +1 -0
  370. package/lib/RadioGroup/index.ios.js +1 -0
  371. package/lib/RadioGroup/index.md +39 -0
  372. package/lib/RadioGroup/index.tuya.js +3 -0
  373. package/lib/RadioGroup/index.web.js +3 -0
  374. package/lib/RadioGroup/index.wechat.js +3 -0
  375. package/lib/RadioGroup/props.android.js +1 -0
  376. package/lib/RadioGroup/props.ios.js +1 -0
  377. package/lib/RadioGroup/props.tuya.js +1 -0
  378. package/lib/RadioGroup/props.web.js +1 -0
  379. package/lib/RadioGroup/props.wechat.js +1 -0
  380. package/lib/ScrollView/ScrollView.android.js +1 -0
  381. package/lib/ScrollView/ScrollView.ios.js +1 -0
  382. package/lib/ScrollView/ScrollView.native.d.ts +57 -0
  383. package/lib/ScrollView/ScrollView.tuya.d.ts +4 -0
  384. package/lib/ScrollView/ScrollView.tuya.js +20 -0
  385. package/lib/ScrollView/ScrollView.web.js +169 -0
  386. package/lib/ScrollView/index.android.js +1 -0
  387. package/lib/ScrollView/index.ios.js +1 -0
  388. package/lib/ScrollView/index.md +37 -0
  389. package/lib/ScrollView/index.tuya.js +3 -0
  390. package/lib/ScrollView/index.web.js +3 -0
  391. package/lib/ScrollView/index.wechat.js +3 -0
  392. package/lib/ScrollView/props.android.js +1 -0
  393. package/lib/ScrollView/props.d.ts +43 -0
  394. package/lib/ScrollView/props.ios.js +1 -0
  395. package/lib/ScrollView/props.js +5 -0
  396. package/lib/ScrollView/props.tuya.js +5 -0
  397. package/lib/ScrollView/props.web.js +5 -0
  398. package/lib/ScrollView/props.wechat.js +5 -0
  399. package/lib/Slider/Slider.android.js +1 -0
  400. package/lib/Slider/Slider.ios.js +1 -0
  401. package/lib/Slider/Slider.native.d.ts +21 -0
  402. package/lib/Slider/Slider.tuya.d.ts +4 -0
  403. package/lib/Slider/Slider.tuya.js +37 -0
  404. package/lib/Slider/Slider.web.js +20 -0
  405. package/lib/Slider/index.android.js +1 -0
  406. package/lib/Slider/index.ios.js +1 -0
  407. package/lib/Slider/index.md +63 -0
  408. package/lib/Slider/index.tuya.js +3 -0
  409. package/lib/Slider/index.web.js +3 -0
  410. package/lib/Slider/index.wechat.js +3 -0
  411. package/lib/Slider/props.android.js +1 -0
  412. package/lib/Slider/props.ios.js +1 -0
  413. package/lib/Slider/props.tuya.js +11 -0
  414. package/lib/Slider/props.web.js +11 -0
  415. package/lib/Slider/props.wechat.js +11 -0
  416. package/lib/Swiper/Swiper.android.js +1 -0
  417. package/lib/Swiper/Swiper.ios.js +1 -0
  418. package/lib/Swiper/Swiper.native.d.ts +6 -0
  419. package/lib/Swiper/Swiper.tuya.d.ts +7 -0
  420. package/lib/Swiper/Swiper.tuya.js +54 -0
  421. package/lib/Swiper/Swiper.web.js +10 -0
  422. package/lib/Swiper/index.android.js +1 -0
  423. package/lib/Swiper/index.ios.js +1 -0
  424. package/lib/Swiper/index.md +44 -0
  425. package/lib/Swiper/index.tuya.js +3 -0
  426. package/lib/Swiper/index.web.js +3 -0
  427. package/lib/Swiper/index.wechat.js +3 -0
  428. package/lib/Swiper/props.android.js +1 -0
  429. package/lib/Swiper/props.ios.js +1 -0
  430. package/lib/Swiper/props.tuya.js +16 -0
  431. package/lib/Swiper/props.web.js +16 -0
  432. package/lib/Swiper/props.wechat.js +16 -0
  433. package/lib/Switch/Switch.android.js +1 -0
  434. package/lib/Switch/Switch.ios.js +1 -0
  435. package/lib/Switch/Switch.native.d.ts +25 -0
  436. package/lib/Switch/Switch.tuya.d.ts +4 -0
  437. package/lib/Switch/Switch.tuya.js +35 -0
  438. package/lib/Switch/Switch.web.js +13 -0
  439. package/lib/Switch/index.android.js +1 -0
  440. package/lib/Switch/index.ios.js +1 -0
  441. package/lib/Switch/index.md +31 -0
  442. package/lib/Switch/index.tuya.js +3 -0
  443. package/lib/Switch/index.web.js +3 -0
  444. package/lib/Switch/index.wechat.js +3 -0
  445. package/lib/Switch/props.android.js +1 -0
  446. package/lib/Switch/props.ios.js +1 -0
  447. package/lib/Switch/props.tuya.js +5 -0
  448. package/lib/Switch/props.web.js +5 -0
  449. package/lib/Switch/props.wechat.js +5 -0
  450. package/lib/Text/Text.android.js +1 -0
  451. package/lib/Text/Text.ios.js +1 -0
  452. package/lib/Text/Text.native.d.ts +8 -0
  453. package/lib/Text/Text.tuya.d.ts +4 -0
  454. package/lib/Text/Text.tuya.js +8 -0
  455. package/lib/Text/Text.web.js +41 -0
  456. package/lib/Text/index.android.js +1 -0
  457. package/lib/Text/index.ios.js +1 -0
  458. package/lib/Text/index.md +29 -0
  459. package/lib/Text/index.tuya.js +3 -0
  460. package/lib/Text/index.web.js +3 -0
  461. package/lib/Text/index.wechat.js +3 -0
  462. package/lib/Text/props.android.js +1 -0
  463. package/lib/Text/props.ios.js +1 -0
  464. package/lib/Text/props.tuya.js +1 -0
  465. package/lib/Text/props.web.js +1 -0
  466. package/lib/Text/props.wechat.js +1 -0
  467. package/lib/Textarea/Textarea.android.js +1 -0
  468. package/lib/Textarea/Textarea.ios.js +1 -0
  469. package/lib/Textarea/Textarea.native.d.ts +4 -0
  470. package/lib/Textarea/Textarea.tuya.d.ts +4 -0
  471. package/lib/Textarea/Textarea.tuya.js +60 -0
  472. package/lib/Textarea/Textarea.web.js +120 -0
  473. package/lib/Textarea/index.android.js +1 -0
  474. package/lib/Textarea/index.ios.js +1 -0
  475. package/lib/Textarea/index.md +46 -0
  476. package/lib/Textarea/index.tuya.js +3 -0
  477. package/lib/Textarea/index.web.js +3 -0
  478. package/lib/Textarea/index.wechat.js +3 -0
  479. package/lib/Textarea/props.android.js +1 -0
  480. package/lib/Textarea/props.ios.js +1 -0
  481. package/lib/Textarea/props.tuya.js +1 -0
  482. package/lib/Textarea/props.web.js +1 -0
  483. package/lib/Textarea/props.wechat.js +1 -0
  484. package/lib/TimePicker/TimePicker.android.js +1 -0
  485. package/lib/TimePicker/TimePicker.d.ts +4 -0
  486. package/lib/TimePicker/TimePicker.ios.js +1 -0
  487. package/lib/TimePicker/TimePicker.js +10 -0
  488. package/lib/TimePicker/TimePicker.native.d.ts +39 -0
  489. package/lib/TimePicker/TimePicker.tuya.d.ts +4 -0
  490. package/lib/TimePicker/TimePicker.tuya.js +26 -0
  491. package/lib/TimePicker/TimePicker.web.js +10 -0
  492. package/lib/TimePicker/TimePicker.wechat.d.ts +4 -0
  493. package/lib/TimePicker/TimePicker.wechat.js +56 -0
  494. package/lib/TimePicker/index.android.js +1 -0
  495. package/lib/TimePicker/index.d.ts +3 -0
  496. package/lib/TimePicker/index.ios.js +1 -0
  497. package/lib/TimePicker/index.js +3 -0
  498. package/lib/TimePicker/index.md +35 -0
  499. package/lib/TimePicker/index.module.less +0 -0
  500. package/lib/TimePicker/index.tuya.js +3 -0
  501. package/lib/TimePicker/index.web.js +3 -0
  502. package/lib/TimePicker/index.wechat.js +3 -0
  503. package/lib/TimePicker/props.android.js +1 -0
  504. package/lib/TimePicker/props.d.ts +28 -0
  505. package/lib/TimePicker/props.ios.js +1 -0
  506. package/lib/TimePicker/props.js +6 -0
  507. package/lib/TimePicker/props.tuya.js +6 -0
  508. package/lib/TimePicker/props.web.js +6 -0
  509. package/lib/TimePicker/props.wechat.js +6 -0
  510. package/lib/View/View.android.js +1 -0
  511. package/lib/View/View.ios.js +1 -0
  512. package/lib/View/View.native.d.ts +2 -0
  513. package/lib/View/View.tuya.d.ts +4 -0
  514. package/lib/View/View.tuya.js +76 -0
  515. package/lib/View/View.web.js +70 -0
  516. package/lib/View/index.android.js +1 -0
  517. package/lib/View/index.ios.js +1 -0
  518. package/lib/View/index.md +33 -0
  519. package/lib/View/index.tuya.js +3 -0
  520. package/lib/View/index.web.js +3 -0
  521. package/lib/View/index.wechat.js +3 -0
  522. package/lib/View/props.android.js +1 -0
  523. package/lib/View/props.ios.js +1 -0
  524. package/lib/View/props.tuya.js +4 -0
  525. package/lib/View/props.web.js +4 -0
  526. package/lib/View/props.wechat.js +4 -0
  527. package/lib/assets/icons.android.js +1 -0
  528. package/lib/assets/icons.ios.js +1 -0
  529. package/lib/assets/icons.tuya.js +7 -0
  530. package/lib/assets/icons.web.js +7 -0
  531. package/lib/assets/icons.wechat.js +7 -0
  532. package/lib/core/index.android.js +1 -0
  533. package/lib/core/index.ios.js +1 -0
  534. package/lib/core/index.tuya.js +25 -0
  535. package/lib/core/index.web.js +25 -0
  536. package/lib/core/index.wechat.js +25 -0
  537. package/lib/index.android.js +1 -0
  538. package/lib/index.ios.js +1 -0
  539. package/lib/index.tuya.js +25 -0
  540. package/lib/index.web.js +25 -0
  541. package/lib/index.wechat.js +25 -0
  542. package/lib/types/event.android.js +0 -0
  543. package/lib/types/event.ios.js +0 -0
  544. package/lib/types/event.tuya.js +1 -0
  545. package/lib/types/event.web.js +1 -0
  546. package/lib/types/event.wechat.js +1 -0
  547. package/lib/types/index.android.js +1 -0
  548. package/lib/types/index.ios.js +1 -0
  549. package/lib/types/index.tuya.js +9 -0
  550. package/lib/types/index.web.js +9 -0
  551. package/lib/types/index.wechat.js +9 -0
  552. package/lib/utils/index.android.js +1 -0
  553. package/lib/utils/index.d.ts +10 -0
  554. package/lib/utils/index.ios.js +1 -0
  555. package/lib/utils/index.js +90 -0
  556. package/lib/utils/index.tuya.js +90 -0
  557. package/lib/utils/index.web.js +90 -0
  558. package/lib/utils/index.wechat.js +90 -0
  559. package/lib/utils/interface.android.js +1 -0
  560. package/lib/utils/interface.d.ts +20 -0
  561. package/lib/utils/interface.ios.js +1 -0
  562. package/lib/utils/interface.js +1 -0
  563. package/lib/utils/interface.tuya.js +1 -0
  564. package/lib/utils/interface.web.js +1 -0
  565. package/lib/utils/interface.wechat.js +1 -0
  566. package/package.json +4 -4
@@ -0,0 +1 @@
1
+ var _interopRequireDefault=require("@babel/runtime/helpers/interopRequireDefault");Object.defineProperty(exports,"__esModule",{value:true});var _exportNames={};exports.default=void 0;var _Icon=_interopRequireDefault(require("./Icon"));var _props=require("./props");Object.keys(_props).forEach(function(key){if(key==="default"||key==="__esModule")return;if(Object.prototype.hasOwnProperty.call(_exportNames,key))return;if(key in exports&&exports[key]===_props[key])return;Object.defineProperty(exports,key,{enumerable:true,get:function get(){return _props[key];}});});var _default=_Icon.default;exports.default=_default;
@@ -0,0 +1 @@
1
+ var _interopRequireDefault=require("@babel/runtime/helpers/interopRequireDefault");Object.defineProperty(exports,"__esModule",{value:true});var _exportNames={};exports.default=void 0;var _Icon=_interopRequireDefault(require("./Icon"));var _props=require("./props");Object.keys(_props).forEach(function(key){if(key==="default"||key==="__esModule")return;if(Object.prototype.hasOwnProperty.call(_exportNames,key))return;if(key in exports&&exports[key]===_props[key])return;Object.defineProperty(exports,key,{enumerable:true,get:function get(){return _props[key];}});});var _default=_Icon.default;exports.default=_default;
@@ -0,0 +1,29 @@
1
+ ---
2
+ nav:
3
+ title: 组件
4
+ path: /components
5
+ group:
6
+ title: 基础组件
7
+ ---
8
+
9
+ # Icon
10
+
11
+ 图标
12
+
13
+ ## 导入
14
+
15
+ ```js
16
+ import { Icon } from '@ray-js/components';
17
+ ```
18
+
19
+ ## 示例代码
20
+
21
+ <code src="./demos/basic.tsx" title="基本用法" background="#f2f4f6"/>
22
+
23
+ ## Props
24
+
25
+ | 属性 | 类型 | 默认值 | 说明 | 支持平台 |
26
+ | --- | --- | --- | --- | --- |
27
+ | type | string | | 图标类型,类型名等于 https://www.iconfont.cn/manage/index?manage_type=myprojects&projectId=3149224 iconfont 的 font class 名 | 涂鸦、微信、RN |
28
+ | size | number | 16 | 图标大小,单位 px | 涂鸦、微信、RN |
29
+ | color | string | #333333 | 图标颜色 | 涂鸦、微信、RN |
@@ -0,0 +1,3 @@
1
+ import Icon from './Icon';
2
+ export * from './props';
3
+ export default Icon;
@@ -0,0 +1,3 @@
1
+ import Icon from './Icon';
2
+ export * from './props';
3
+ export default Icon;
@@ -0,0 +1,3 @@
1
+ import Icon from './Icon';
2
+ export * from './props';
3
+ export default Icon;
@@ -0,0 +1 @@
1
+ Object.defineProperty(exports,"__esModule",{value:true});exports.defaultIconProps=void 0;var defaultIconProps={size:16,type:'icon-warning',color:'#333333'};exports.defaultIconProps=defaultIconProps;
@@ -0,0 +1 @@
1
+ Object.defineProperty(exports,"__esModule",{value:true});exports.defaultIconProps=void 0;var defaultIconProps={size:16,type:'icon-warning',color:'#333333'};exports.defaultIconProps=defaultIconProps;
@@ -0,0 +1,5 @@
1
+ export var defaultIconProps = {
2
+ size: 16,
3
+ type: 'icon-warning',
4
+ color: '#333333'
5
+ };
@@ -0,0 +1,5 @@
1
+ export var defaultIconProps = {
2
+ size: 16,
3
+ type: 'icon-warning',
4
+ color: '#333333'
5
+ };
@@ -0,0 +1,5 @@
1
+ export var defaultIconProps = {
2
+ size: 16,
3
+ type: 'icon-warning',
4
+ color: '#333333'
5
+ };
@@ -0,0 +1 @@
1
+ var _interopRequireDefault=require("@babel/runtime/helpers/interopRequireDefault");Object.defineProperty(exports,"__esModule",{value:true});exports.default=exports._Image=void 0;var _extends2=_interopRequireDefault(require("@babel/runtime/helpers/extends"));var _objectWithoutProperties2=_interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));var _classCallCheck2=_interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));var _createClass2=_interopRequireDefault(require("@babel/runtime/helpers/createClass"));var _inherits2=_interopRequireDefault(require("@babel/runtime/helpers/inherits"));var _possibleConstructorReturn2=_interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));var _getPrototypeOf2=_interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));var _react=_interopRequireDefault(require("react"));var _reactNative=require("react-native");var _props=require("./props");var _jsxFileName="/Users/noyobo/home/gitlab/godzilla/ray/packages/components/src/Image/Image.native.tsx";var _excluded=["src","mode","style"];function _createSuper(Derived){var hasNativeReflectConstruct=_isNativeReflectConstruct();return function(){var Super=(0,_getPrototypeOf2.default)(Derived),result;if(hasNativeReflectConstruct){var NewTarget=(0,_getPrototypeOf2.default)(this).constructor;result=Reflect.construct(Super,arguments,NewTarget);}else{result=Super.apply(this,arguments);}return(0,_possibleConstructorReturn2.default)(this,result);};}function _isNativeReflectConstruct(){if(typeof Reflect==="undefined"||!Reflect.construct)return false;if(Reflect.construct.sham)return false;if(typeof Proxy==="function")return true;try{Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}));return true;}catch(e){return false;}}var resizeModeMap={scaleToFill:'stretch',aspectFit:'contain',aspectFill:'cover',center:'center'};var _Image=function(_React$Component){(0,_inherits2.default)(_Image,_React$Component);var _super=_createSuper(_Image);function _Image(){var _this;(0,_classCallCheck2.default)(this,_Image);for(var _len=arguments.length,args=new Array(_len),_key=0;_key<_len;_key++){args[_key]=arguments[_key];}_this=_super.call.apply(_super,[this].concat(args));_this.state={ratio:0,layoutWidth:0};_this.hasLayout=false;_this._onLoad=function(){var _this$props=_this.props,onLoad=_this$props.onLoad,src=_this$props.src;if(typeof onLoad==='function'){if(typeof src==='string'){_reactNative.Image.getSize(src,function(width,height){onLoad({width:width,height:height,origin:null});},function(){onLoad({width:0,height:0,origin:null});});}else{var iras=_reactNative.Image.resolveAssetSource(typeof src==='string'?{uri:src}:src);var _ref=iras||{width:0,height:0},width=_ref.width,height=_ref.height;onLoad({width:width,height:height,origin:null});}}};_this._onError=function(){var onError=_this.props.onError;!!onError&&onError({errMsg:'Image is on error',origin:null});};_this.onLayout=function(event){var _this$props2=_this.props,mode=_this$props2.mode,style=_this$props2.style;var layoutWidth=event.nativeEvent.layout.width;var flattenStyle=_reactNative.StyleSheet.flatten(style)||{};if(mode==='widthFix'&&typeof flattenStyle.width==='string'){if(_this.hasLayout)return;_this.setState({layoutWidth:layoutWidth});}if(_this.state.ratio){_this.hasLayout=true;}};_this.loadImg=function(props){var mode=props.mode,src=props.src;if(mode!=='widthFix')return;if(typeof src==='string'){_reactNative.Image.getSize(props.src,function(width,height){if(_this.hasLayout)return;_this.setState({ratio:height/width});});}else{var source=typeof props.src==='string'?{uri:props.src}:props.src;var _ref2=_reactNative.Image.resolveAssetSource(source)||{},width=_ref2.width,height=_ref2.height;if(_this.hasLayout&&!!_this.state.ratio)return;_this.setState({ratio:height/width});}};return _this;}(0,_createClass2.default)(_Image,[{key:"componentDidMount",value:function componentDidMount(){this.loadImg(this.props);}},{key:"shouldComponentUpdate",value:function shouldComponentUpdate(nextProps){if(nextProps.src!==this.props.src){this.hasLayout=false;}return true;}},{key:"componentDidUpdate",value:function componentDidUpdate(prevProps){if(prevProps.src!==this.props.src){this.loadImg(this.props);}}},{key:"render",value:function render(){var _this2=this;var _this$props3=this.props,_this$props3$src=_this$props3.src,src=_this$props3$src===void 0?'':_this$props3$src,_this$props3$mode=_this$props3.mode,mode=_this$props3$mode===void 0?'scaleToFill':_this$props3$mode,style=_this$props3.style,rest=(0,_objectWithoutProperties2.default)(_this$props3,_excluded);var source=typeof src==='string'?{uri:src}:src;var resizeMode=resizeModeMap[mode];var flattenStyle=_reactNative.StyleSheet.flatten(style)||{};var defaultHeight=flattenStyle.height||225;var imageHeight=function(){if(mode==='widthFix'){if(typeof flattenStyle.width==='string'){return _this2.state.layoutWidth*_this2.state.ratio;}else if(typeof flattenStyle.width==='number'){return flattenStyle.width*_this2.state.ratio;}else{return 300*_this2.state.ratio;}}else{return defaultHeight;}}();return _react.default.createElement(_reactNative.Image,(0,_extends2.default)({},rest,{source:source,resizeMode:resizeMode,onLoad:this._onLoad,onError:this._onError,style:[{width:300},style,{height:imageHeight}],__self:this,__source:{fileName:_jsxFileName,lineNumber:177,columnNumber:12}}));}}]);return _Image;}(_react.default.Component);exports._Image=_Image;_Image.defaultProps=_props.defaultImageProps;var _default=_Image;exports.default=_default;
@@ -0,0 +1 @@
1
+ var _interopRequireDefault=require("@babel/runtime/helpers/interopRequireDefault");Object.defineProperty(exports,"__esModule",{value:true});exports.default=exports._Image=void 0;var _extends2=_interopRequireDefault(require("@babel/runtime/helpers/extends"));var _objectWithoutProperties2=_interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));var _classCallCheck2=_interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));var _createClass2=_interopRequireDefault(require("@babel/runtime/helpers/createClass"));var _inherits2=_interopRequireDefault(require("@babel/runtime/helpers/inherits"));var _possibleConstructorReturn2=_interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));var _getPrototypeOf2=_interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));var _react=_interopRequireDefault(require("react"));var _reactNative=require("react-native");var _props=require("./props");var _jsxFileName="/Users/noyobo/home/gitlab/godzilla/ray/packages/components/src/Image/Image.native.tsx";var _excluded=["src","mode","style"];function _createSuper(Derived){var hasNativeReflectConstruct=_isNativeReflectConstruct();return function(){var Super=(0,_getPrototypeOf2.default)(Derived),result;if(hasNativeReflectConstruct){var NewTarget=(0,_getPrototypeOf2.default)(this).constructor;result=Reflect.construct(Super,arguments,NewTarget);}else{result=Super.apply(this,arguments);}return(0,_possibleConstructorReturn2.default)(this,result);};}function _isNativeReflectConstruct(){if(typeof Reflect==="undefined"||!Reflect.construct)return false;if(Reflect.construct.sham)return false;if(typeof Proxy==="function")return true;try{Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}));return true;}catch(e){return false;}}var resizeModeMap={scaleToFill:'stretch',aspectFit:'contain',aspectFill:'cover',center:'center'};var _Image=function(_React$Component){(0,_inherits2.default)(_Image,_React$Component);var _super=_createSuper(_Image);function _Image(){var _this;(0,_classCallCheck2.default)(this,_Image);for(var _len=arguments.length,args=new Array(_len),_key=0;_key<_len;_key++){args[_key]=arguments[_key];}_this=_super.call.apply(_super,[this].concat(args));_this.state={ratio:0,layoutWidth:0};_this.hasLayout=false;_this._onLoad=function(){var _this$props=_this.props,onLoad=_this$props.onLoad,src=_this$props.src;if(typeof onLoad==='function'){if(typeof src==='string'){_reactNative.Image.getSize(src,function(width,height){onLoad({width:width,height:height,origin:null});},function(){onLoad({width:0,height:0,origin:null});});}else{var iras=_reactNative.Image.resolveAssetSource(typeof src==='string'?{uri:src}:src);var _ref=iras||{width:0,height:0},width=_ref.width,height=_ref.height;onLoad({width:width,height:height,origin:null});}}};_this._onError=function(){var onError=_this.props.onError;!!onError&&onError({errMsg:'Image is on error',origin:null});};_this.onLayout=function(event){var _this$props2=_this.props,mode=_this$props2.mode,style=_this$props2.style;var layoutWidth=event.nativeEvent.layout.width;var flattenStyle=_reactNative.StyleSheet.flatten(style)||{};if(mode==='widthFix'&&typeof flattenStyle.width==='string'){if(_this.hasLayout)return;_this.setState({layoutWidth:layoutWidth});}if(_this.state.ratio){_this.hasLayout=true;}};_this.loadImg=function(props){var mode=props.mode,src=props.src;if(mode!=='widthFix')return;if(typeof src==='string'){_reactNative.Image.getSize(props.src,function(width,height){if(_this.hasLayout)return;_this.setState({ratio:height/width});});}else{var source=typeof props.src==='string'?{uri:props.src}:props.src;var _ref2=_reactNative.Image.resolveAssetSource(source)||{},width=_ref2.width,height=_ref2.height;if(_this.hasLayout&&!!_this.state.ratio)return;_this.setState({ratio:height/width});}};return _this;}(0,_createClass2.default)(_Image,[{key:"componentDidMount",value:function componentDidMount(){this.loadImg(this.props);}},{key:"shouldComponentUpdate",value:function shouldComponentUpdate(nextProps){if(nextProps.src!==this.props.src){this.hasLayout=false;}return true;}},{key:"componentDidUpdate",value:function componentDidUpdate(prevProps){if(prevProps.src!==this.props.src){this.loadImg(this.props);}}},{key:"render",value:function render(){var _this2=this;var _this$props3=this.props,_this$props3$src=_this$props3.src,src=_this$props3$src===void 0?'':_this$props3$src,_this$props3$mode=_this$props3.mode,mode=_this$props3$mode===void 0?'scaleToFill':_this$props3$mode,style=_this$props3.style,rest=(0,_objectWithoutProperties2.default)(_this$props3,_excluded);var source=typeof src==='string'?{uri:src}:src;var resizeMode=resizeModeMap[mode];var flattenStyle=_reactNative.StyleSheet.flatten(style)||{};var defaultHeight=flattenStyle.height||225;var imageHeight=function(){if(mode==='widthFix'){if(typeof flattenStyle.width==='string'){return _this2.state.layoutWidth*_this2.state.ratio;}else if(typeof flattenStyle.width==='number'){return flattenStyle.width*_this2.state.ratio;}else{return 300*_this2.state.ratio;}}else{return defaultHeight;}}();return _react.default.createElement(_reactNative.Image,(0,_extends2.default)({},rest,{source:source,resizeMode:resizeMode,onLoad:this._onLoad,onError:this._onError,style:[{width:300},style,{height:imageHeight}],__self:this,__source:{fileName:_jsxFileName,lineNumber:177,columnNumber:12}}));}}]);return _Image;}(_react.default.Component);exports._Image=_Image;_Image.defaultProps=_props.defaultImageProps;var _default=_Image;exports.default=_default;
@@ -0,0 +1,28 @@
1
+ import React from 'react';
2
+ import { LayoutChangeEvent, StyleProp, ImageStyle } from 'react-native';
3
+ import { ImageProps } from './props';
4
+ interface IProps extends Omit<ImageProps, 'mode' | 'style'> {
5
+ mode?: 'aspectFit' | 'aspectFill' | 'scaleToFill' | 'widthFix';
6
+ style?: StyleProp<ImageStyle>;
7
+ }
8
+ export interface ImageState {
9
+ ratio: number;
10
+ layoutWidth: number;
11
+ }
12
+ export declare class _Image extends React.Component<IProps, ImageState> {
13
+ static defaultProps: {
14
+ src: string;
15
+ mode: string;
16
+ };
17
+ state: ImageState;
18
+ hasLayout: boolean;
19
+ _onLoad: () => void;
20
+ _onError: () => void;
21
+ onLayout: (event: LayoutChangeEvent) => void;
22
+ loadImg: (props: IProps) => void;
23
+ componentDidMount(): void;
24
+ shouldComponentUpdate(nextProps: IProps): boolean;
25
+ componentDidUpdate(prevProps: IProps): void;
26
+ render(): JSX.Element;
27
+ }
28
+ export default _Image;
@@ -0,0 +1,4 @@
1
+ import * as React from 'react';
2
+ import { ImageProps } from './props';
3
+ declare const Image: React.FC<ImageProps>;
4
+ export default Image;
@@ -0,0 +1,23 @@
1
+ import _extends from "@babel/runtime/helpers/esm/extends";
2
+ import _objectWithoutProperties from "@babel/runtime/helpers/esm/objectWithoutProperties";
3
+ var _excluded = ["style", "className", "mode"];
4
+ import clsx from 'clsx';
5
+ import * as React from 'react';
6
+ import { inlineStyle } from '@ray-js/framework-shared';
7
+ import { Image as RemaxImage } from '@ray-js/remax-tuya';
8
+
9
+ var Image = function (props) {
10
+ var style = props.style,
11
+ className = props.className,
12
+ _props$mode = props.mode,
13
+ mode = _props$mode === void 0 ? 'scaleToFill' : _props$mode,
14
+ restProps = _objectWithoutProperties(props, _excluded);
15
+
16
+ return /*#__PURE__*/React.createElement(RemaxImage, _extends({
17
+ style: inlineStyle(style),
18
+ className: clsx('ray-image', className),
19
+ mode: mode
20
+ }, restProps));
21
+ };
22
+
23
+ export default Image;
@@ -0,0 +1,92 @@
1
+ import _extends from "@babel/runtime/helpers/esm/extends";
2
+ import _objectWithoutProperties from "@babel/runtime/helpers/esm/objectWithoutProperties";
3
+ var _excluded = ["id", "className", "src", "style", "mode", "onClick", "onLoad", "onError"];
4
+ import clsx from 'clsx';
5
+ import * as React from 'react';
6
+ import { inlineStyle } from '@ray-js/framework-shared';
7
+ import styles from './index.module.less';
8
+ var modeStyle = {
9
+ scaleToFill: {
10
+ backgroundSize: '100% 100%'
11
+ },
12
+ aspectFit: {
13
+ backgroundSize: 'contain',
14
+ backgroundPosition: 'center'
15
+ },
16
+ widthFix: {
17
+ backgroundSize: '100% 100%',
18
+ height: 'auto',
19
+ lineHeight: 0
20
+ },
21
+ heightFix: {
22
+ backgroundSize: '100% 100%',
23
+ width: 'auto',
24
+ lineHeight: 0
25
+ },
26
+ aspectFill: {
27
+ backgroundSize: 'cover',
28
+ backgroundPosition: 'center'
29
+ },
30
+ top: {
31
+ backgroundPosition: 'top'
32
+ },
33
+ bottom: {
34
+ backgroundPosition: 'bottom'
35
+ },
36
+ center: {
37
+ backgroundPosition: 'center'
38
+ },
39
+ left: {
40
+ backgroundPosition: 'center left'
41
+ },
42
+ right: {
43
+ backgroundPosition: 'center right'
44
+ },
45
+ 'top left': {
46
+ backgroundPosition: 'top left'
47
+ },
48
+ 'top right': {
49
+ backgroundPosition: 'top right'
50
+ },
51
+ 'bottom left': {
52
+ backgroundPosition: 'bottom left'
53
+ },
54
+ 'bottom right': {
55
+ backgroundPosition: 'bottom right'
56
+ }
57
+ };
58
+ var Image = /*#__PURE__*/React.forwardRef(function (props, ref) {
59
+ var id = props.id,
60
+ className = props.className,
61
+ src = props.src,
62
+ style = props.style,
63
+ _props$mode = props.mode,
64
+ mode = _props$mode === void 0 ? 'scaleToFill' : _props$mode,
65
+ onClick = props.onClick,
66
+ onLoad = props.onLoad,
67
+ onError = props.onError,
68
+ restProps = _objectWithoutProperties(props, _excluded);
69
+
70
+ var isWidthFixMode = mode === 'widthFix';
71
+ var isHeightFixMode = mode === 'heightFix';
72
+ return /*#__PURE__*/React.createElement("div", _extends({
73
+ onClick: onClick,
74
+ className: clsx('ray-image', styles.image, className),
75
+ style: inlineStyle(style, {
76
+ backgroundImage: "url(".concat(src, ")"),
77
+ backgroundRepeat: "no-repeat"
78
+ }, modeStyle[mode])
79
+ }, restProps), /*#__PURE__*/React.createElement("img", {
80
+ ref: ref,
81
+ src: src,
82
+ style: {
83
+ visibility: 'hidden',
84
+ width: isWidthFixMode ? '100%' : isHeightFixMode ? 'auto' : undefined,
85
+ height: isWidthFixMode ? 'auto' : isHeightFixMode ? '100%' : '0px'
86
+ },
87
+ onLoad: onLoad,
88
+ onError: onError
89
+ }));
90
+ });
91
+ Image.displayName = 'Image';
92
+ export default Image;
@@ -0,0 +1 @@
1
+ var _interopRequireDefault=require("@babel/runtime/helpers/interopRequireDefault");Object.defineProperty(exports,"__esModule",{value:true});var _exportNames={};exports.default=void 0;var _Image=_interopRequireDefault(require("./Image"));var _props=require("./props");Object.keys(_props).forEach(function(key){if(key==="default"||key==="__esModule")return;if(Object.prototype.hasOwnProperty.call(_exportNames,key))return;if(key in exports&&exports[key]===_props[key])return;Object.defineProperty(exports,key,{enumerable:true,get:function get(){return _props[key];}});});var _default=_Image.default;exports.default=_default;
@@ -0,0 +1 @@
1
+ var _interopRequireDefault=require("@babel/runtime/helpers/interopRequireDefault");Object.defineProperty(exports,"__esModule",{value:true});var _exportNames={};exports.default=void 0;var _Image=_interopRequireDefault(require("./Image"));var _props=require("./props");Object.keys(_props).forEach(function(key){if(key==="default"||key==="__esModule")return;if(Object.prototype.hasOwnProperty.call(_exportNames,key))return;if(key in exports&&exports[key]===_props[key])return;Object.defineProperty(exports,key,{enumerable:true,get:function get(){return _props[key];}});});var _default=_Image.default;exports.default=_default;
@@ -0,0 +1,50 @@
1
+ ---
2
+ nav:
3
+ title: 组件
4
+ path: /components
5
+ group:
6
+ title: 基础组件
7
+ ---
8
+
9
+ # Image
10
+
11
+ 图片
12
+
13
+ ## 导入
14
+
15
+ ```js
16
+ import { Image } from '@ray-js/components';
17
+ ```
18
+
19
+ ## 示例代码
20
+
21
+ <code src="./demos/aspectFill.tsx" title="基本使用" background="#f2f4f6"/>
22
+
23
+ ## Props
24
+
25
+ | 属性 | 类型 | 默认值 | 说明 | 支持平台 |
26
+ | --- | --- | --- | --- | --- |
27
+ | className | string | | 样式名 | RN、涂鸦、微信 |
28
+ | src | string | | 图片地址 | RN、涂鸦、微信 |
29
+ | mode | string | 'scaleToFill' | 图片裁剪、缩放的模式,RN 支持部分模式,具体见下表 | RN、涂鸦、微信 |
30
+ | onLoad | (e: { width: number; height: number; origin }) => void | 'scaleToFill' | 图片裁剪、缩放的模式 | RN、涂鸦、微信 |
31
+ | onError | (e: { errMsg: string; origin }) => void | 'scaleToFill' | 图片裁剪、缩放的模式 | RN、涂鸦、微信 |
32
+
33
+ ## mode 合法值
34
+
35
+ | 值 | 说明 | 支持平台 |
36
+ | --- | --- | --- |
37
+ | scaleToFill | 缩放模式,不保持纵横比缩放图片,使图片的宽高完全拉伸至填满 image 元素 | RN、涂鸦、微信 |
38
+ | aspectFit | 缩放模式,保持纵横比缩放图片,使图片的长边能完全显示出来。也就是说,可以完整地将图片显示出来。 | RN、涂鸦、微信 |
39
+ | aspectFill | 缩放模式,保持纵横比缩放图片,只保证图片的短边能完全显示出来。也就是说,图片通常只在水平或垂直方向是完整的,另一个方向将会发生截取。 | RN、涂鸦、微信 |
40
+ | widthFix | 缩放模式,宽度不变,高度自动变化,保持原图宽高比不变 | RN、涂鸦、微信 |
41
+ | heightFix | 缩放模式,高度不变,宽度自动变化,保持原图宽高比不变 | 涂鸦、微信 |
42
+ | top | 裁剪模式,不缩放图片,只显示图片的顶部区域 | 涂鸦、微信 |
43
+ | bottom | 裁剪模式,不缩放图片,只显示图片的底部区域 | 涂鸦、微信 |
44
+ | center | 裁剪模式,不缩放图片,只显示图片的中间区域 | 涂鸦、微信 |
45
+ | left | 裁剪模式,不缩放图片,只显示图片的左边区域 | 涂鸦、微信 |
46
+ | right | 裁剪模式,不缩放图片,只显示图片的右边区域 | 涂鸦、微信 |
47
+ | top left | 裁剪模式,不缩放图片,只显示图片的左上边区域 | 涂鸦、微信 |
48
+ | top right | 裁剪模式,不缩放图片,只显示图片的右上边区域 | 涂鸦、微信 |
49
+ | bottom left | 裁剪模式,不缩放图片,只显示图片的左下边区域 | 涂鸦、微信 |
50
+ | bottom right | 裁剪模式,不缩放图片,只显示图片的右下边区域 | 涂鸦、微信 |
@@ -0,0 +1,3 @@
1
+ import Image from './Image';
2
+ export * from './props';
3
+ export default Image;
@@ -0,0 +1,3 @@
1
+ import Image from './Image';
2
+ export * from './props';
3
+ export default Image;
@@ -0,0 +1,3 @@
1
+ import Image from './Image';
2
+ export * from './props';
3
+ export default Image;
@@ -0,0 +1 @@
1
+ Object.defineProperty(exports,"__esModule",{value:true});exports.defaultImageProps=void 0;var defaultImageProps={src:'',mode:'scaleToFill'};exports.defaultImageProps=defaultImageProps;
@@ -0,0 +1 @@
1
+ Object.defineProperty(exports,"__esModule",{value:true});exports.defaultImageProps=void 0;var defaultImageProps={src:'',mode:'scaleToFill'};exports.defaultImageProps=defaultImageProps;
@@ -0,0 +1,4 @@
1
+ export var defaultImageProps = {
2
+ src: '',
3
+ mode: 'scaleToFill'
4
+ };
@@ -0,0 +1,4 @@
1
+ export var defaultImageProps = {
2
+ src: '',
3
+ mode: 'scaleToFill'
4
+ };
@@ -0,0 +1,4 @@
1
+ export var defaultImageProps = {
2
+ src: '',
3
+ mode: 'scaleToFill'
4
+ };
@@ -0,0 +1 @@
1
+ var _interopRequireDefault=require("@babel/runtime/helpers/interopRequireDefault");Object.defineProperty(exports,"__esModule",{value:true});exports.default=void 0;var _defineProperty2=_interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));var _extends2=_interopRequireDefault(require("@babel/runtime/helpers/extends"));var _objectWithoutProperties2=_interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));var _classCallCheck2=_interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));var _createClass2=_interopRequireDefault(require("@babel/runtime/helpers/createClass"));var _inherits2=_interopRequireDefault(require("@babel/runtime/helpers/inherits"));var _possibleConstructorReturn2=_interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));var _getPrototypeOf2=_interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));var _react=_interopRequireDefault(require("react"));var _reactNative=require("react-native");var _props=require("./props");var _jsxFileName="/Users/noyobo/home/gitlab/godzilla/ray/packages/components/src/Input/Input.native.tsx";var _excluded=["style","value","type","password","placeholder","disabled","maxLength","focus","confirmType","selectionStart","selectionEnd","cursor","_multiline","_autoHeight"];function ownKeys(object,enumerableOnly){var keys=Object.keys(object);if(Object.getOwnPropertySymbols){var symbols=Object.getOwnPropertySymbols(object);enumerableOnly&&(symbols=symbols.filter(function(sym){return Object.getOwnPropertyDescriptor(object,sym).enumerable;})),keys.push.apply(keys,symbols);}return keys;}function _objectSpread(target){for(var i=1;i<arguments.length;i++){var source=null!=arguments[i]?arguments[i]:{};i%2?ownKeys(Object(source),!0).forEach(function(key){(0,_defineProperty2.default)(target,key,source[key]);}):Object.getOwnPropertyDescriptors?Object.defineProperties(target,Object.getOwnPropertyDescriptors(source)):ownKeys(Object(source)).forEach(function(key){Object.defineProperty(target,key,Object.getOwnPropertyDescriptor(source,key));});}return target;}function _createSuper(Derived){var hasNativeReflectConstruct=_isNativeReflectConstruct();return function(){var Super=(0,_getPrototypeOf2.default)(Derived),result;if(hasNativeReflectConstruct){var NewTarget=(0,_getPrototypeOf2.default)(this).constructor;result=Reflect.construct(Super,arguments,NewTarget);}else{result=Super.apply(this,arguments);}return(0,_possibleConstructorReturn2.default)(this,result);};}function _isNativeReflectConstruct(){if(typeof Reflect==="undefined"||!Reflect.construct)return false;if(Reflect.construct.sham)return false;if(typeof Proxy==="function")return true;try{Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}));return true;}catch(e){return false;}}var keyboardTypeMap={text:'default',number:'numeric',idcard:'default',digit:_reactNative.Platform.select({ios:'decimal-pad',android:'numeric'})||''};var Checkbox=function(_React$Component){(0,_inherits2.default)(Checkbox,_React$Component);var _super=_createSuper(Checkbox);function Checkbox(){var _this;(0,_classCallCheck2.default)(this,Checkbox);for(var _len=arguments.length,args=new Array(_len),_key=0;_key<_len;_key++){args[_key]=arguments[_key];}_this=_super.call.apply(_super,[this].concat(args));_this.state={returnValue:undefined,height:0,value:undefined};_this._handleChangeText=function(text){var onInput=_this.props.onInput;_this.tmpValue=text||'';_this.setState({returnValue:text});typeof onInput==='function'&&onInput({type:'input',value:text,origin:null});};_this._handleSubmitEditing=function(event){var _this$props=_this.props,onConfirm=_this$props.onConfirm,_multiline=_this$props._multiline;if(_multiline)return;typeof onConfirm==='function'&&onConfirm({type:'confirm',value:_this.tmpValue,origin:event});};_this._handleBlur=function(event){var onBlur=_this.props.onBlur;typeof onBlur==='function'&&onBlur({type:'blur',value:_this.tmpValue,origin:event});};_this._handleFocus=function(event){var onFocus=_this.props.onFocus;var returnValue=_this.state.returnValue;_this.tmpValue=returnValue||'';typeof onFocus==='function'&&onFocus({type:'focus',value:_this.tmpValue,origin:event});};_this.onContentSizeChange=function(event){var _event$nativeEvent$co=event.nativeEvent.contentSize,width=_event$nativeEvent$co.width,height=_event$nativeEvent$co.height;if(width&&height){var _this$props2=_this.props,_multiline=_this$props2._multiline,_autoHeight=_this$props2._autoHeight,_onLineChange=_this$props2._onLineChange;if(!_multiline||!_autoHeight||height===_this.state.height)return;_this.lineCount+=height>_this.state.height?1:-1;console.log('lineCount',_this.lineCount,height);_onLineChange({height:height,lineCount:_this.lineCount,type:'linechange'});_this.setState({height:height});}};_this._handleKeyPress=function(event){var onConfirm=_this.props.onConfirm;var keyValue=event.nativeEvent.key;if(keyValue!=='Enter')return;typeof onConfirm==='function'&&onConfirm({type:'confirm',value:_this.tmpValue,origin:event});};return _this;}(0,_createClass2.default)(Checkbox,[{key:"render",value:function render(){var _this$props3=this.props,style=_this$props3.style,value=_this$props3.value,type=_this$props3.type,password=_this$props3.password,placeholder=_this$props3.placeholder,disabled=_this$props3.disabled,maxLength=_this$props3.maxLength,focus=_this$props3.focus,confirmType=_this$props3.confirmType,selectionStart=_this$props3.selectionStart,selectionEnd=_this$props3.selectionEnd,cursor=_this$props3.cursor,_multiline=_this$props3._multiline,_autoHeight=_this$props3._autoHeight,rest=(0,_objectWithoutProperties2.default)(_this$props3,_excluded);var selection=function(){if(selectionStart>=0&&selectionEnd>=0){return{start:selectionStart,end:selectionEnd};}else if(typeof cursor==='number'){return{start:cursor,end:cursor};}}();var textAlignVertical=_multiline?'top':'auto';return _react.default.createElement(_reactNative.TextInput,(0,_extends2.default)({},rest,{style:[{padding:4,backgroundColor:'#FFF'},style,_multiline&&_autoHeight&&{height:Math.max(35,this.state.height)}],defaultValue:value,secureTextEntry:!!password,placeholder:placeholder,editable:!disabled,maxLength:maxLength===-1?undefined:maxLength,returnKeyType:confirmType,keyboardType:keyboardTypeMap[type],autoFocus:!!focus,selection:selection,value:this.state.returnValue,onChangeText:this._handleChangeText,onBlur:this._handleBlur,onKeyPress:this._handleKeyPress,onFocus:this._handleFocus,multiline:!!_multiline,onEndEditing:this._handleSubmitEditing,onSubmitEditing:this._handleSubmitEditing,textAlignVertical:textAlignVertical,onContentSizeChange:this.onContentSizeChange,underlineColorAndroid:"rgba(0,0,0,0)",__self:this,__source:{fileName:_jsxFileName,lineNumber:169,columnNumber:12}}));}}],[{key:"getDerivedStateFromProps",value:function getDerivedStateFromProps(props,state){return props.value!==state.value?_objectSpread(_objectSpread({},state),{},{returnValue:props.value}):null;}}]);return Checkbox;}(_react.default.Component);exports.default=Checkbox;Checkbox.defaultProps=_props.defaultInputProps;
@@ -0,0 +1 @@
1
+ var _interopRequireDefault=require("@babel/runtime/helpers/interopRequireDefault");Object.defineProperty(exports,"__esModule",{value:true});exports.default=void 0;var _defineProperty2=_interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));var _extends2=_interopRequireDefault(require("@babel/runtime/helpers/extends"));var _objectWithoutProperties2=_interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));var _classCallCheck2=_interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));var _createClass2=_interopRequireDefault(require("@babel/runtime/helpers/createClass"));var _inherits2=_interopRequireDefault(require("@babel/runtime/helpers/inherits"));var _possibleConstructorReturn2=_interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));var _getPrototypeOf2=_interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));var _react=_interopRequireDefault(require("react"));var _reactNative=require("react-native");var _props=require("./props");var _jsxFileName="/Users/noyobo/home/gitlab/godzilla/ray/packages/components/src/Input/Input.native.tsx";var _excluded=["style","value","type","password","placeholder","disabled","maxLength","focus","confirmType","selectionStart","selectionEnd","cursor","_multiline","_autoHeight"];function ownKeys(object,enumerableOnly){var keys=Object.keys(object);if(Object.getOwnPropertySymbols){var symbols=Object.getOwnPropertySymbols(object);enumerableOnly&&(symbols=symbols.filter(function(sym){return Object.getOwnPropertyDescriptor(object,sym).enumerable;})),keys.push.apply(keys,symbols);}return keys;}function _objectSpread(target){for(var i=1;i<arguments.length;i++){var source=null!=arguments[i]?arguments[i]:{};i%2?ownKeys(Object(source),!0).forEach(function(key){(0,_defineProperty2.default)(target,key,source[key]);}):Object.getOwnPropertyDescriptors?Object.defineProperties(target,Object.getOwnPropertyDescriptors(source)):ownKeys(Object(source)).forEach(function(key){Object.defineProperty(target,key,Object.getOwnPropertyDescriptor(source,key));});}return target;}function _createSuper(Derived){var hasNativeReflectConstruct=_isNativeReflectConstruct();return function(){var Super=(0,_getPrototypeOf2.default)(Derived),result;if(hasNativeReflectConstruct){var NewTarget=(0,_getPrototypeOf2.default)(this).constructor;result=Reflect.construct(Super,arguments,NewTarget);}else{result=Super.apply(this,arguments);}return(0,_possibleConstructorReturn2.default)(this,result);};}function _isNativeReflectConstruct(){if(typeof Reflect==="undefined"||!Reflect.construct)return false;if(Reflect.construct.sham)return false;if(typeof Proxy==="function")return true;try{Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}));return true;}catch(e){return false;}}var keyboardTypeMap={text:'default',number:'numeric',idcard:'default',digit:_reactNative.Platform.select({ios:'decimal-pad',android:'numeric'})||''};var Checkbox=function(_React$Component){(0,_inherits2.default)(Checkbox,_React$Component);var _super=_createSuper(Checkbox);function Checkbox(){var _this;(0,_classCallCheck2.default)(this,Checkbox);for(var _len=arguments.length,args=new Array(_len),_key=0;_key<_len;_key++){args[_key]=arguments[_key];}_this=_super.call.apply(_super,[this].concat(args));_this.state={returnValue:undefined,height:0,value:undefined};_this._handleChangeText=function(text){var onInput=_this.props.onInput;_this.tmpValue=text||'';_this.setState({returnValue:text});typeof onInput==='function'&&onInput({type:'input',value:text,origin:null});};_this._handleSubmitEditing=function(event){var _this$props=_this.props,onConfirm=_this$props.onConfirm,_multiline=_this$props._multiline;if(_multiline)return;typeof onConfirm==='function'&&onConfirm({type:'confirm',value:_this.tmpValue,origin:event});};_this._handleBlur=function(event){var onBlur=_this.props.onBlur;typeof onBlur==='function'&&onBlur({type:'blur',value:_this.tmpValue,origin:event});};_this._handleFocus=function(event){var onFocus=_this.props.onFocus;var returnValue=_this.state.returnValue;_this.tmpValue=returnValue||'';typeof onFocus==='function'&&onFocus({type:'focus',value:_this.tmpValue,origin:event});};_this.onContentSizeChange=function(event){var _event$nativeEvent$co=event.nativeEvent.contentSize,width=_event$nativeEvent$co.width,height=_event$nativeEvent$co.height;if(width&&height){var _this$props2=_this.props,_multiline=_this$props2._multiline,_autoHeight=_this$props2._autoHeight,_onLineChange=_this$props2._onLineChange;if(!_multiline||!_autoHeight||height===_this.state.height)return;_this.lineCount+=height>_this.state.height?1:-1;console.log('lineCount',_this.lineCount,height);_onLineChange({height:height,lineCount:_this.lineCount,type:'linechange'});_this.setState({height:height});}};_this._handleKeyPress=function(event){var onConfirm=_this.props.onConfirm;var keyValue=event.nativeEvent.key;if(keyValue!=='Enter')return;typeof onConfirm==='function'&&onConfirm({type:'confirm',value:_this.tmpValue,origin:event});};return _this;}(0,_createClass2.default)(Checkbox,[{key:"render",value:function render(){var _this$props3=this.props,style=_this$props3.style,value=_this$props3.value,type=_this$props3.type,password=_this$props3.password,placeholder=_this$props3.placeholder,disabled=_this$props3.disabled,maxLength=_this$props3.maxLength,focus=_this$props3.focus,confirmType=_this$props3.confirmType,selectionStart=_this$props3.selectionStart,selectionEnd=_this$props3.selectionEnd,cursor=_this$props3.cursor,_multiline=_this$props3._multiline,_autoHeight=_this$props3._autoHeight,rest=(0,_objectWithoutProperties2.default)(_this$props3,_excluded);var selection=function(){if(selectionStart>=0&&selectionEnd>=0){return{start:selectionStart,end:selectionEnd};}else if(typeof cursor==='number'){return{start:cursor,end:cursor};}}();var textAlignVertical=_multiline?'top':'auto';return _react.default.createElement(_reactNative.TextInput,(0,_extends2.default)({},rest,{style:[{padding:4,backgroundColor:'#FFF'},style,_multiline&&_autoHeight&&{height:Math.max(35,this.state.height)}],defaultValue:value,secureTextEntry:!!password,placeholder:placeholder,editable:!disabled,maxLength:maxLength===-1?undefined:maxLength,returnKeyType:confirmType,keyboardType:keyboardTypeMap[type],autoFocus:!!focus,selection:selection,value:this.state.returnValue,onChangeText:this._handleChangeText,onBlur:this._handleBlur,onKeyPress:this._handleKeyPress,onFocus:this._handleFocus,multiline:!!_multiline,onEndEditing:this._handleSubmitEditing,onSubmitEditing:this._handleSubmitEditing,textAlignVertical:textAlignVertical,onContentSizeChange:this.onContentSizeChange,underlineColorAndroid:"rgba(0,0,0,0)",__self:this,__source:{fileName:_jsxFileName,lineNumber:169,columnNumber:12}}));}}],[{key:"getDerivedStateFromProps",value:function getDerivedStateFromProps(props,state){return props.value!==state.value?_objectSpread(_objectSpread({},state),{},{returnValue:props.value}):null;}}]);return Checkbox;}(_react.default.Component);exports.default=Checkbox;Checkbox.defaultProps=_props.defaultInputProps;
@@ -0,0 +1,32 @@
1
+ import React from 'react';
2
+ import { NativeSyntheticEvent, TextInputFocusEventData, TextInputEndEditingEventData, TextInputKeyPressEventData, TextInputContentSizeChangeEventData, StyleProp, ViewStyle } from 'react-native';
3
+ import { InputProps } from './props';
4
+ export interface IInputProps extends Omit<InputProps, 'style'> {
5
+ style?: StyleProp<ViewStyle>;
6
+ _multiline?: boolean;
7
+ _autoHeight?: boolean;
8
+ _onLineChange?: (evt: {
9
+ type: 'linechange';
10
+ height: number;
11
+ lineCount: number;
12
+ }) => void;
13
+ }
14
+ export interface InputState {
15
+ returnValue?: string;
16
+ height: number;
17
+ value?: string;
18
+ }
19
+ export default class Checkbox extends React.Component<IInputProps, InputState> {
20
+ static defaultProps: Partial<InputProps>;
21
+ static getDerivedStateFromProps(props: InputProps, state: InputState): InputState | null;
22
+ state: InputState;
23
+ tmpValue: string;
24
+ lineCount: number;
25
+ _handleChangeText: (text: string) => void;
26
+ _handleSubmitEditing: (event: NativeSyntheticEvent<TextInputEndEditingEventData>) => void;
27
+ _handleBlur: (event: NativeSyntheticEvent<TextInputFocusEventData>) => void;
28
+ _handleFocus: (event: NativeSyntheticEvent<TextInputFocusEventData>) => void;
29
+ onContentSizeChange: (event: NativeSyntheticEvent<TextInputContentSizeChangeEventData>) => void;
30
+ _handleKeyPress: (event: NativeSyntheticEvent<TextInputKeyPressEventData>) => void;
31
+ render(): JSX.Element;
32
+ }
@@ -0,0 +1,4 @@
1
+ import * as React from 'react';
2
+ import { InputProps } from './props';
3
+ declare const Input: React.ForwardRefExoticComponent<InputProps & React.RefAttributes<HTMLInputElement>>;
4
+ export default Input;
@@ -0,0 +1,86 @@
1
+ import _extends from "@babel/runtime/helpers/esm/extends";
2
+ import _slicedToArray from "@babel/runtime/helpers/esm/slicedToArray";
3
+ import _objectWithoutProperties from "@babel/runtime/helpers/esm/objectWithoutProperties";
4
+ var _excluded = ["name", "id", "className", "style", "disabled", "type", "value", "focus", "maxLength", "onBlur", "onConfirm", "onFocus", "onInput", "password", "placeholder", "placeholderStyle"];
5
+ import "core-js/modules/es.function.name.js";
6
+ import * as React from 'react';
7
+ import clsx from 'clsx';
8
+ import { Input as RemaxInput } from '@ray-js/remax-tuya';
9
+ import { inlineStyle } from '@ray-js/framework-shared';
10
+ import { defaultInputProps } from './props';
11
+ import { nextFrame } from '../core';
12
+ import styles from './index.module.less';
13
+ var Input = /*#__PURE__*/React.forwardRef(function (props, ref) {
14
+ var name = props.name,
15
+ id = props.id,
16
+ className = props.className,
17
+ style = props.style,
18
+ disabled = props.disabled,
19
+ _props$type = props.type,
20
+ type = _props$type === void 0 ? 'text' : _props$type,
21
+ value = props.value,
22
+ focus = props.focus,
23
+ maxLength = props.maxLength,
24
+ onBlur = props.onBlur,
25
+ onConfirm = props.onConfirm,
26
+ onFocus = props.onFocus,
27
+ onInput = props.onInput,
28
+ password = props.password,
29
+ placeholder = props.placeholder,
30
+ placeholderStyle = props.placeholderStyle,
31
+ restProps = _objectWithoutProperties(props, _excluded);
32
+
33
+ var _React$useState = React.useState(value),
34
+ _React$useState2 = _slicedToArray(_React$useState, 2),
35
+ internalValue = _React$useState2[0],
36
+ setInternalValue = _React$useState2[1];
37
+
38
+ var bufferValue = React.useRef(value);
39
+ React.useEffect(function () {
40
+ if (value !== bufferValue.current) {
41
+ // HACK: 避免重复设置相同 value 不渲染的问题
42
+ setInternalValue(bufferValue.current);
43
+ nextFrame(1).then(function () {
44
+ bufferValue.current = value;
45
+ setInternalValue(value);
46
+ });
47
+ }
48
+ }, [value]);
49
+ var selection = focus ? {
50
+ selectionStart: (internalValue === null || internalValue === void 0 ? void 0 : internalValue.length) || -1,
51
+ selectionEnd: (internalValue === null || internalValue === void 0 ? void 0 : internalValue.length) || -1
52
+ } : undefined;
53
+ return /*#__PURE__*/React.createElement(RemaxInput, _extends({
54
+ name: name //@ts-ignore
55
+ ,
56
+ ref: ref,
57
+ id: id,
58
+ style: inlineStyle(style),
59
+ className: clsx('ray-input', styles.input, className),
60
+ disabled: disabled,
61
+ type: type,
62
+ focus: focus,
63
+ password: password,
64
+ placeholder: placeholder,
65
+ placeholderStyle: inlineStyle(placeholderStyle),
66
+ maxlength: maxLength,
67
+ onInput: function (event) {
68
+ var value = event.detail.value; // 内部 value 管控
69
+
70
+ bufferValue.current = value;
71
+ event.value = value;
72
+ onInput === null || onInput === void 0 ? void 0 : onInput(event);
73
+ },
74
+ onBlur: onBlur,
75
+ onConfirm: function (event) {
76
+ var _event$detail$value = event.detail.value,
77
+ value = _event$detail$value === void 0 ? '' : _event$detail$value;
78
+ setInternalValue(value);
79
+ onConfirm === null || onConfirm === void 0 ? void 0 : onConfirm(event);
80
+ },
81
+ onFocus: onFocus,
82
+ value: internalValue
83
+ }, selection, restProps));
84
+ });
85
+ Input.defaultProps = defaultInputProps;
86
+ export default Input;
@@ -0,0 +1,100 @@
1
+ import _extends from "@babel/runtime/helpers/esm/extends";
2
+ import _slicedToArray from "@babel/runtime/helpers/esm/slicedToArray";
3
+ import _objectWithoutProperties from "@babel/runtime/helpers/esm/objectWithoutProperties";
4
+ var _excluded = ["name", "id", "className", "style", "disabled", "type", "confirmType", "value", "focus", "maxLength", "onBlur", "onConfirm", "onFocus", "onInput", "password", "placeholder", "placeholderStyle"];
5
+ import "core-js/modules/es.function.name.js";
6
+ import * as React from 'react';
7
+ import clsx from 'clsx';
8
+ import { inlineStyle, useStylesheet } from '@ray-js/framework-shared';
9
+ import { defaultInputProps } from './props';
10
+ import { generateId } from '../core';
11
+ import styles from './index.module.less';
12
+ var Input = /*#__PURE__*/React.forwardRef(function (props, ref) {
13
+ var name = props.name,
14
+ _props$id = props.id,
15
+ id = _props$id === void 0 ? generateId() : _props$id,
16
+ className = props.className,
17
+ style = props.style,
18
+ disabled = props.disabled,
19
+ type = props.type,
20
+ _props$confirmType = props.confirmType,
21
+ confirmType = _props$confirmType === void 0 ? 'done' : _props$confirmType,
22
+ _props$value = props.value,
23
+ value = _props$value === void 0 ? '' : _props$value,
24
+ focus = props.focus,
25
+ maxLength = props.maxLength,
26
+ onBlur = props.onBlur,
27
+ onConfirm = props.onConfirm,
28
+ onFocus = props.onFocus,
29
+ onInput = props.onInput,
30
+ password = props.password,
31
+ placeholder = props.placeholder,
32
+ placeholderStyle = props.placeholderStyle,
33
+ restProps = _objectWithoutProperties(props, _excluded);
34
+
35
+ var _useStylesheet = useStylesheet(inlineStyle(placeholderStyle)),
36
+ _useStylesheet2 = _slicedToArray(_useStylesheet, 1),
37
+ placeholderStyleClassName = _useStylesheet2[0];
38
+
39
+ var _React$useState = React.useState(value),
40
+ _React$useState2 = _slicedToArray(_React$useState, 2),
41
+ internalValue = _React$useState2[0],
42
+ setValue = _React$useState2[1];
43
+
44
+ var inputType = function () {
45
+ if (password) {
46
+ return 'password';
47
+ } else if (confirmType === 'search') {
48
+ return 'search';
49
+ }
50
+
51
+ return type;
52
+ }();
53
+
54
+ React.useEffect(function () {
55
+ var inputDOM = document.getElementById(id);
56
+
57
+ if (focus) {
58
+ inputDOM.focus();
59
+ } else {
60
+ inputDOM.blur();
61
+ }
62
+ }, [focus]);
63
+ React.useEffect(function () {
64
+ setValue(value);
65
+ }, [value]);
66
+ return /*#__PURE__*/React.createElement("input", _extends({
67
+ ref: ref,
68
+ id: id,
69
+ name: name,
70
+ type: inputType,
71
+ onKeyPress: function (e) {
72
+ if (e.key === 'Enter' && typeof onConfirm === 'function') {
73
+ onConfirm(e);
74
+ }
75
+ },
76
+ style: inlineStyle(style),
77
+ disabled: disabled,
78
+ placeholder: placeholder,
79
+ value: internalValue,
80
+ maxLength: maxLength,
81
+ onFocus: onFocus,
82
+ onBlur: onBlur,
83
+ onChange: function (event) {
84
+ var value = event.target.value;
85
+ event.detail = {
86
+ value: value
87
+ };
88
+ event.value = value;
89
+ setValue(value);
90
+ onInput === null || onInput === void 0 ? void 0 : onInput({
91
+ value: value,
92
+ origin: event
93
+ });
94
+ },
95
+ autoFocus: focus,
96
+ className: clsx('ray-input', styles.input, className, placeholderStyleClassName)
97
+ }, restProps));
98
+ });
99
+ Input.defaultProps = defaultInputProps;
100
+ export default Input;
@@ -0,0 +1 @@
1
+ var _interopRequireDefault=require("@babel/runtime/helpers/interopRequireDefault");Object.defineProperty(exports,"__esModule",{value:true});var _exportNames={};exports.default=void 0;var _Input=_interopRequireDefault(require("./Input"));var _props=require("./props");Object.keys(_props).forEach(function(key){if(key==="default"||key==="__esModule")return;if(Object.prototype.hasOwnProperty.call(_exportNames,key))return;if(key in exports&&exports[key]===_props[key])return;Object.defineProperty(exports,key,{enumerable:true,get:function get(){return _props[key];}});});var _default=_Input.default;exports.default=_default;
@@ -0,0 +1 @@
1
+ var _interopRequireDefault=require("@babel/runtime/helpers/interopRequireDefault");Object.defineProperty(exports,"__esModule",{value:true});var _exportNames={};exports.default=void 0;var _Input=_interopRequireDefault(require("./Input"));var _props=require("./props");Object.keys(_props).forEach(function(key){if(key==="default"||key==="__esModule")return;if(Object.prototype.hasOwnProperty.call(_exportNames,key))return;if(key in exports&&exports[key]===_props[key])return;Object.defineProperty(exports,key,{enumerable:true,get:function get(){return _props[key];}});});var _default=_Input.default;exports.default=_default;