bulade-ui 1.0.0

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 (308) hide show
  1. package/.babelrc +12 -0
  2. package/.vscode/extensions.json +7 -0
  3. package/.vscode/settings.json +33 -0
  4. package/LICENSE +21 -0
  5. package/README.md +43 -0
  6. package/gulpfile.js +26 -0
  7. package/miniprogram_dist/assets/font/iconfont.ttf +0 -0
  8. package/miniprogram_dist/assets/font/iconfont.wxss +186 -0
  9. package/miniprogram_dist/assets/style/border.wxss +95 -0
  10. package/miniprogram_dist/bld-button/index.js +112 -0
  11. package/miniprogram_dist/bld-button/index.json +7 -0
  12. package/miniprogram_dist/bld-button/index.wxml +3 -0
  13. package/miniprogram_dist/bld-button/index.wxss +33 -0
  14. package/miniprogram_dist/bld-card/index.js +102 -0
  15. package/miniprogram_dist/bld-card/index.json +3 -0
  16. package/miniprogram_dist/bld-card/index.wxml +5 -0
  17. package/miniprogram_dist/bld-card/index.wxss +6 -0
  18. package/miniprogram_dist/bld-cell/index.js +127 -0
  19. package/miniprogram_dist/bld-cell/index.json +7 -0
  20. package/miniprogram_dist/bld-cell/index.wxml +42 -0
  21. package/miniprogram_dist/bld-cell/index.wxss +39 -0
  22. package/miniprogram_dist/bld-cell-field/index.js +110 -0
  23. package/miniprogram_dist/bld-cell-field/index.json +6 -0
  24. package/miniprogram_dist/bld-cell-field/index.wxml +8 -0
  25. package/miniprogram_dist/bld-cell-field/index.wxss +19 -0
  26. package/miniprogram_dist/bld-cell-group/index.js +110 -0
  27. package/miniprogram_dist/bld-cell-group/index.json +3 -0
  28. package/miniprogram_dist/bld-cell-group/index.wxml +14 -0
  29. package/miniprogram_dist/bld-cell-group/index.wxss +11 -0
  30. package/miniprogram_dist/bld-form/bld-form-item/bld-form-date/index.js +267 -0
  31. package/miniprogram_dist/bld-form/bld-form-item/bld-form-date/index.json +6 -0
  32. package/miniprogram_dist/bld-form/bld-form-item/bld-form-date/index.wxml +44 -0
  33. package/miniprogram_dist/bld-form/bld-form-item/bld-form-date/index.wxss +56 -0
  34. package/miniprogram_dist/bld-form/bld-form-item/bld-form-input/index.js +148 -0
  35. package/miniprogram_dist/bld-form/bld-form-item/bld-form-input/index.json +5 -0
  36. package/miniprogram_dist/bld-form/bld-form-item/bld-form-input/index.wxml +26 -0
  37. package/miniprogram_dist/bld-form/bld-form-item/bld-form-input/index.wxss +27 -0
  38. package/miniprogram_dist/bld-form/bld-form-item/bld-form-select-input/index.js +245 -0
  39. package/miniprogram_dist/bld-form/bld-form-item/bld-form-select-input/index.json +6 -0
  40. package/miniprogram_dist/bld-form/bld-form-item/bld-form-select-input/index.wxml +53 -0
  41. package/miniprogram_dist/bld-form/bld-form-item/bld-form-select-input/index.wxss +120 -0
  42. package/miniprogram_dist/bld-form/bld-form-item/bld-form-step/index.js +158 -0
  43. package/miniprogram_dist/bld-form/bld-form-item/bld-form-step/index.json +5 -0
  44. package/miniprogram_dist/bld-form/bld-form-item/bld-form-step/index.wxml +28 -0
  45. package/miniprogram_dist/bld-form/bld-form-item/bld-form-step/index.wxss +44 -0
  46. package/miniprogram_dist/bld-form/bld-form-item/bld-form-switch/index.js +137 -0
  47. package/miniprogram_dist/bld-form/bld-form-item/bld-form-switch/index.json +5 -0
  48. package/miniprogram_dist/bld-form/bld-form-item/bld-form-switch/index.wxml +7 -0
  49. package/miniprogram_dist/bld-form/bld-form-item/bld-form-switch/index.wxss +21 -0
  50. package/miniprogram_dist/bld-form/bld-form-item/bld-form-textarea/index.js +144 -0
  51. package/miniprogram_dist/bld-form/bld-form-item/bld-form-textarea/index.json +5 -0
  52. package/miniprogram_dist/bld-form/bld-form-item/bld-form-textarea/index.wxml +25 -0
  53. package/miniprogram_dist/bld-form/bld-form-item/bld-form-textarea/index.wxss +27 -0
  54. package/miniprogram_dist/bld-form/bld-form-item/bld-form-time/index.js +209 -0
  55. package/miniprogram_dist/bld-form/bld-form-item/bld-form-time/index.json +6 -0
  56. package/miniprogram_dist/bld-form/bld-form-item/bld-form-time/index.wxml +44 -0
  57. package/miniprogram_dist/bld-form/bld-form-item/bld-form-time/index.wxss +56 -0
  58. package/miniprogram_dist/bld-half-screen/index.js +278 -0
  59. package/miniprogram_dist/bld-half-screen/index.json +5 -0
  60. package/miniprogram_dist/bld-half-screen/index.wxml +36 -0
  61. package/miniprogram_dist/bld-half-screen/index.wxss +107 -0
  62. package/miniprogram_dist/bld-icon/index.js +106 -0
  63. package/miniprogram_dist/bld-icon/index.json +3 -0
  64. package/miniprogram_dist/bld-icon/index.wxml +1 -0
  65. package/miniprogram_dist/bld-icon/index.wxss +171 -0
  66. package/miniprogram_dist/bld-loading/index.js +108 -0
  67. package/miniprogram_dist/bld-loading/index.json +6 -0
  68. package/miniprogram_dist/bld-loading/index.wxml +8 -0
  69. package/miniprogram_dist/bld-loading/index.wxss +29 -0
  70. package/miniprogram_dist/bld-message/index.js +193 -0
  71. package/miniprogram_dist/bld-message/index.json +3 -0
  72. package/miniprogram_dist/bld-message/index.wxml +9 -0
  73. package/miniprogram_dist/bld-message/index.wxss +77 -0
  74. package/miniprogram_dist/bld-message/message.js +163 -0
  75. package/miniprogram_dist/bld-nav-bar/index.js +180 -0
  76. package/miniprogram_dist/bld-nav-bar/index.json +6 -0
  77. package/miniprogram_dist/bld-nav-bar/index.wxml +24 -0
  78. package/miniprogram_dist/bld-nav-bar/index.wxss +36 -0
  79. package/miniprogram_dist/bld-overlay/index.js +116 -0
  80. package/miniprogram_dist/bld-overlay/index.json +3 -0
  81. package/miniprogram_dist/bld-overlay/index.wxml +11 -0
  82. package/miniprogram_dist/bld-overlay/index.wxss +11 -0
  83. package/miniprogram_dist/bld-page/index.js +177 -0
  84. package/miniprogram_dist/bld-page/index.json +7 -0
  85. package/miniprogram_dist/bld-page/index.wxml +28 -0
  86. package/miniprogram_dist/bld-page/index.wxss +16 -0
  87. package/miniprogram_dist/bld-retry/index.js +122 -0
  88. package/miniprogram_dist/bld-retry/index.json +3 -0
  89. package/miniprogram_dist/bld-retry/index.wxml +5 -0
  90. package/miniprogram_dist/bld-retry/index.wxss +23 -0
  91. package/miniprogram_dist/bld-scroll-view/index.js +129 -0
  92. package/miniprogram_dist/bld-scroll-view/index.json +7 -0
  93. package/miniprogram_dist/bld-scroll-view/index.wxml +42 -0
  94. package/miniprogram_dist/bld-scroll-view/index.wxss +7 -0
  95. package/miniprogram_dist/bld-text/index.js +145 -0
  96. package/miniprogram_dist/bld-text/index.json +3 -0
  97. package/miniprogram_dist/bld-text/index.wxml +3 -0
  98. package/miniprogram_dist/bld-text/index.wxss +26 -0
  99. package/miniprogram_dist/bld-toast/index.js +218 -0
  100. package/miniprogram_dist/bld-toast/index.json +6 -0
  101. package/miniprogram_dist/bld-toast/index.wxml +27 -0
  102. package/miniprogram_dist/bld-toast/index.wxss +95 -0
  103. package/miniprogram_dist/bld-toast/toast.js +137 -0
  104. package/miniprogram_dist/bld-wrapper/index.js +172 -0
  105. package/miniprogram_dist/bld-wrapper/index.json +5 -0
  106. package/miniprogram_dist/bld-wrapper/index.wxml +6 -0
  107. package/miniprogram_dist/bld-wrapper/index.wxss +7 -0
  108. package/miniprogram_dist/button/index.js +197 -0
  109. package/miniprogram_dist/button/index.json +3 -0
  110. package/miniprogram_dist/button/index.wxml +42 -0
  111. package/miniprogram_dist/button/index.wxss +176 -0
  112. package/miniprogram_dist/cell/index.js +178 -0
  113. package/miniprogram_dist/cell/index.json +6 -0
  114. package/miniprogram_dist/cell/index.wxml +25 -0
  115. package/miniprogram_dist/cell/index.wxss +63 -0
  116. package/miniprogram_dist/cell-group/index.js +169 -0
  117. package/miniprogram_dist/cell-group/index.json +3 -0
  118. package/miniprogram_dist/cell-group/index.wxml +10 -0
  119. package/miniprogram_dist/cell-group/index.wxss +29 -0
  120. package/miniprogram_dist/grid/index.js +167 -0
  121. package/miniprogram_dist/grid/index.json +4 -0
  122. package/miniprogram_dist/grid/index.wxml +3 -0
  123. package/miniprogram_dist/grid/index.wxss +20 -0
  124. package/miniprogram_dist/grid-item/index.js +171 -0
  125. package/miniprogram_dist/grid-item/index.json +6 -0
  126. package/miniprogram_dist/grid-item/index.wxml +46 -0
  127. package/miniprogram_dist/grid-item/index.wxss +51 -0
  128. package/miniprogram_dist/icon/index.js +141 -0
  129. package/miniprogram_dist/icon/index.json +3 -0
  130. package/miniprogram_dist/icon/index.wxml +35 -0
  131. package/miniprogram_dist/icon/index.wxss +200 -0
  132. package/miniprogram_dist/timeline/index.js +148 -0
  133. package/miniprogram_dist/timeline/index.json +3 -0
  134. package/miniprogram_dist/timeline/index.wxml +1 -0
  135. package/miniprogram_dist/timeline/index.wxss +0 -0
  136. package/miniprogram_dist/timeline-item/index.js +127 -0
  137. package/miniprogram_dist/timeline-item/index.json +6 -0
  138. package/miniprogram_dist/timeline-item/index.wxml +10 -0
  139. package/miniprogram_dist/timeline-item/index.wxss +31 -0
  140. package/miniprogram_dist/utils/systemInfo.js +51 -0
  141. package/package.json +72 -0
  142. package/src/assets/font/iconfont.ttf +0 -0
  143. package/src/assets/font/iconfont.wxss +186 -0
  144. package/src/assets/style/border.wxss +95 -0
  145. package/src/bld-button/index.js +13 -0
  146. package/src/bld-button/index.json +7 -0
  147. package/src/bld-button/index.scss +39 -0
  148. package/src/bld-button/index.wxml +3 -0
  149. package/src/bld-button/index.wxss +33 -0
  150. package/src/bld-card/index.js +3 -0
  151. package/src/bld-card/index.json +3 -0
  152. package/src/bld-card/index.scss +6 -0
  153. package/src/bld-card/index.wxml +5 -0
  154. package/src/bld-card/index.wxss +6 -0
  155. package/src/bld-cell/index.js +28 -0
  156. package/src/bld-cell/index.json +7 -0
  157. package/src/bld-cell/index.scss +42 -0
  158. package/src/bld-cell/index.wxml +42 -0
  159. package/src/bld-cell/index.wxss +39 -0
  160. package/src/bld-cell-field/index.js +11 -0
  161. package/src/bld-cell-field/index.json +6 -0
  162. package/src/bld-cell-field/index.scss +21 -0
  163. package/src/bld-cell-field/index.wxml +8 -0
  164. package/src/bld-cell-field/index.wxss +19 -0
  165. package/src/bld-cell-group/index.js +11 -0
  166. package/src/bld-cell-group/index.json +3 -0
  167. package/src/bld-cell-group/index.scss +13 -0
  168. package/src/bld-cell-group/index.wxml +14 -0
  169. package/src/bld-cell-group/index.wxss +11 -0
  170. package/src/bld-form/bld-form-item/bld-form-date/index.js +167 -0
  171. package/src/bld-form/bld-form-item/bld-form-date/index.json +6 -0
  172. package/src/bld-form/bld-form-item/bld-form-date/index.scss +54 -0
  173. package/src/bld-form/bld-form-item/bld-form-date/index.wxml +44 -0
  174. package/src/bld-form/bld-form-item/bld-form-date/index.wxss +56 -0
  175. package/src/bld-form/bld-form-item/bld-form-input/index.js +48 -0
  176. package/src/bld-form/bld-form-item/bld-form-input/index.json +5 -0
  177. package/src/bld-form/bld-form-item/bld-form-input/index.scss +25 -0
  178. package/src/bld-form/bld-form-item/bld-form-input/index.wxml +26 -0
  179. package/src/bld-form/bld-form-item/bld-form-input/index.wxss +27 -0
  180. package/src/bld-form/bld-form-item/bld-form-select-input/index.js +145 -0
  181. package/src/bld-form/bld-form-item/bld-form-select-input/index.json +6 -0
  182. package/src/bld-form/bld-form-item/bld-form-select-input/index.scss +117 -0
  183. package/src/bld-form/bld-form-item/bld-form-select-input/index.wxml +53 -0
  184. package/src/bld-form/bld-form-item/bld-form-select-input/index.wxss +120 -0
  185. package/src/bld-form/bld-form-item/bld-form-step/index.js +58 -0
  186. package/src/bld-form/bld-form-item/bld-form-step/index.json +5 -0
  187. package/src/bld-form/bld-form-item/bld-form-step/index.scss +42 -0
  188. package/src/bld-form/bld-form-item/bld-form-step/index.wxml +28 -0
  189. package/src/bld-form/bld-form-item/bld-form-step/index.wxss +44 -0
  190. package/src/bld-form/bld-form-item/bld-form-switch/index.js +37 -0
  191. package/src/bld-form/bld-form-item/bld-form-switch/index.json +5 -0
  192. package/src/bld-form/bld-form-item/bld-form-switch/index.scss +23 -0
  193. package/src/bld-form/bld-form-item/bld-form-switch/index.wxml +7 -0
  194. package/src/bld-form/bld-form-item/bld-form-switch/index.wxss +21 -0
  195. package/src/bld-form/bld-form-item/bld-form-textarea/index.js +44 -0
  196. package/src/bld-form/bld-form-item/bld-form-textarea/index.json +5 -0
  197. package/src/bld-form/bld-form-item/bld-form-textarea/index.scss +25 -0
  198. package/src/bld-form/bld-form-item/bld-form-textarea/index.wxml +25 -0
  199. package/src/bld-form/bld-form-item/bld-form-textarea/index.wxss +27 -0
  200. package/src/bld-form/bld-form-item/bld-form-time/index.js +108 -0
  201. package/src/bld-form/bld-form-item/bld-form-time/index.json +6 -0
  202. package/src/bld-form/bld-form-item/bld-form-time/index.scss +54 -0
  203. package/src/bld-form/bld-form-item/bld-form-time/index.wxml +44 -0
  204. package/src/bld-form/bld-form-item/bld-form-time/index.wxss +56 -0
  205. package/src/bld-half-screen/index.js +167 -0
  206. package/src/bld-half-screen/index.json +5 -0
  207. package/src/bld-half-screen/index.scss +109 -0
  208. package/src/bld-half-screen/index.wxml +36 -0
  209. package/src/bld-half-screen/index.wxss +107 -0
  210. package/src/bld-icon/index.js +8 -0
  211. package/src/bld-icon/index.json +3 -0
  212. package/src/bld-icon/index.scss +176 -0
  213. package/src/bld-icon/index.wxml +1 -0
  214. package/src/bld-icon/index.wxss +171 -0
  215. package/src/bld-loading/index.js +9 -0
  216. package/src/bld-loading/index.json +6 -0
  217. package/src/bld-loading/index.scss +25 -0
  218. package/src/bld-loading/index.wxml +8 -0
  219. package/src/bld-loading/index.wxss +29 -0
  220. package/src/bld-message/index.js +91 -0
  221. package/src/bld-message/index.json +3 -0
  222. package/src/bld-message/index.scss +67 -0
  223. package/src/bld-message/index.wxml +9 -0
  224. package/src/bld-message/index.wxss +77 -0
  225. package/src/bld-message/message.js +62 -0
  226. package/src/bld-nav-bar/index.js +90 -0
  227. package/src/bld-nav-bar/index.json +6 -0
  228. package/src/bld-nav-bar/index.scss +40 -0
  229. package/src/bld-nav-bar/index.wxml +24 -0
  230. package/src/bld-nav-bar/index.wxss +36 -0
  231. package/src/bld-overlay/index.js +17 -0
  232. package/src/bld-overlay/index.json +3 -0
  233. package/src/bld-overlay/index.scss +11 -0
  234. package/src/bld-overlay/index.wxml +11 -0
  235. package/src/bld-overlay/index.wxss +11 -0
  236. package/src/bld-page/index.js +78 -0
  237. package/src/bld-page/index.json +7 -0
  238. package/src/bld-page/index.scss +16 -0
  239. package/src/bld-page/index.wxml +28 -0
  240. package/src/bld-page/index.wxss +16 -0
  241. package/src/bld-retry/index.js +23 -0
  242. package/src/bld-retry/index.json +3 -0
  243. package/src/bld-retry/index.scss +26 -0
  244. package/src/bld-retry/index.wxml +5 -0
  245. package/src/bld-retry/index.wxss +23 -0
  246. package/src/bld-scroll-view/index.js +28 -0
  247. package/src/bld-scroll-view/index.json +7 -0
  248. package/src/bld-scroll-view/index.scss +7 -0
  249. package/src/bld-scroll-view/index.wxml +42 -0
  250. package/src/bld-scroll-view/index.wxss +7 -0
  251. package/src/bld-text/index.js +46 -0
  252. package/src/bld-text/index.json +3 -0
  253. package/src/bld-text/index.scss +30 -0
  254. package/src/bld-text/index.wxml +3 -0
  255. package/src/bld-text/index.wxss +26 -0
  256. package/src/bld-toast/index.js +115 -0
  257. package/src/bld-toast/index.json +6 -0
  258. package/src/bld-toast/index.scss +112 -0
  259. package/src/bld-toast/index.wxml +27 -0
  260. package/src/bld-toast/index.wxss +95 -0
  261. package/src/bld-toast/toast.js +35 -0
  262. package/src/bld-wrapper/index.js +75 -0
  263. package/src/bld-wrapper/index.json +5 -0
  264. package/src/bld-wrapper/index.scss +7 -0
  265. package/src/bld-wrapper/index.wxml +6 -0
  266. package/src/bld-wrapper/index.wxss +7 -0
  267. package/src/button/index.js +92 -0
  268. package/src/button/index.json +3 -0
  269. package/src/button/index.scss +207 -0
  270. package/src/button/index.wxml +42 -0
  271. package/src/button/index.wxss +176 -0
  272. package/src/cell/index.js +81 -0
  273. package/src/cell/index.json +6 -0
  274. package/src/cell/index.scss +74 -0
  275. package/src/cell/index.wxml +25 -0
  276. package/src/cell/index.wxss +63 -0
  277. package/src/cell-group/index.js +71 -0
  278. package/src/cell-group/index.json +3 -0
  279. package/src/cell-group/index.scss +32 -0
  280. package/src/cell-group/index.wxml +10 -0
  281. package/src/cell-group/index.wxss +29 -0
  282. package/src/grid/index.js +67 -0
  283. package/src/grid/index.json +4 -0
  284. package/src/grid/index.scss +21 -0
  285. package/src/grid/index.wxml +3 -0
  286. package/src/grid/index.wxss +20 -0
  287. package/src/grid-item/index.js +72 -0
  288. package/src/grid-item/index.json +6 -0
  289. package/src/grid-item/index.scss +59 -0
  290. package/src/grid-item/index.wxml +46 -0
  291. package/src/grid-item/index.wxss +51 -0
  292. package/src/icon/index.js +42 -0
  293. package/src/icon/index.json +3 -0
  294. package/src/icon/index.scss +17 -0
  295. package/src/icon/index.wxml +35 -0
  296. package/src/icon/index.wxss +200 -0
  297. package/src/timeline/index.js +50 -0
  298. package/src/timeline/index.json +3 -0
  299. package/src/timeline/index.scss +0 -0
  300. package/src/timeline/index.wxml +1 -0
  301. package/src/timeline/index.wxss +0 -0
  302. package/src/timeline-item/index.js +28 -0
  303. package/src/timeline-item/index.json +6 -0
  304. package/src/timeline-item/index.scss +37 -0
  305. package/src/timeline-item/index.wxml +10 -0
  306. package/src/timeline-item/index.wxss +31 -0
  307. package/src/utils/systemInfo.js +51 -0
  308. package/tsconfig.json +25 -0
@@ -0,0 +1,56 @@
1
+ .item-box {
2
+ width: 100%;
3
+ margin: 0 auto;
4
+ position: relative;
5
+ display: flex;
6
+ align-items: center;
7
+ justify-content: space-between;
8
+ }
9
+ .item-box .item-label-box {
10
+ display: flex;
11
+ align-items: center;
12
+ }
13
+ .item-box .item-label-box .item-label-required {
14
+ color: #ff0007;
15
+ margin-right: 8rpx;
16
+ }
17
+ .item-box .item-label-box .item-label {
18
+ font-size: 30rpx;
19
+ }
20
+ .item-box .item-value-box {
21
+ flex: 1;
22
+ display: flex;
23
+ align-items: center;
24
+ justify-content: flex-end;
25
+ }
26
+ .item-box .item-value-box .item-value-text {
27
+ flex: 1;
28
+ margin-right: 15rpx;
29
+ text-align: right;
30
+ }
31
+ .item-box .item-value-box .value-placeholder {
32
+ color: #999;
33
+ }
34
+ .item-box .item-value-box .arrow-icon {
35
+ width: 20rpx;
36
+ height: 30rpx;
37
+ transform: scale(0.8);
38
+ }
39
+
40
+ .mark-box,
41
+ .container-box {
42
+ z-index: 1000 !important;
43
+ }
44
+
45
+ .sure-button {
46
+ width: 678rpx;
47
+ height: 100rpx;
48
+ background: #ff0007;
49
+ border-radius: 50rpx;
50
+ font-weight: 600;
51
+ font-size: 34rpx;
52
+ color: #ffffff;
53
+ line-height: 100rpx;
54
+ text-align: center;
55
+ margin: 0 auto;
56
+ }
@@ -0,0 +1,278 @@
1
+ module.exports =
2
+ /******/ (function(modules) { // webpackBootstrap
3
+ /******/ // The module cache
4
+ /******/ var installedModules = {};
5
+ /******/
6
+ /******/ // The require function
7
+ /******/ function __webpack_require__(moduleId) {
8
+ /******/
9
+ /******/ // Check if module is in cache
10
+ /******/ if(installedModules[moduleId]) {
11
+ /******/ return installedModules[moduleId].exports;
12
+ /******/ }
13
+ /******/ // Create a new module (and put it into the cache)
14
+ /******/ var module = installedModules[moduleId] = {
15
+ /******/ i: moduleId,
16
+ /******/ l: false,
17
+ /******/ exports: {}
18
+ /******/ };
19
+ /******/
20
+ /******/ // Execute the module function
21
+ /******/ modules[moduleId].call(module.exports, module, module.exports, __webpack_require__);
22
+ /******/
23
+ /******/ // Flag the module as loaded
24
+ /******/ module.l = true;
25
+ /******/
26
+ /******/ // Return the exports of the module
27
+ /******/ return module.exports;
28
+ /******/ }
29
+ /******/
30
+ /******/
31
+ /******/ // expose the modules object (__webpack_modules__)
32
+ /******/ __webpack_require__.m = modules;
33
+ /******/
34
+ /******/ // expose the module cache
35
+ /******/ __webpack_require__.c = installedModules;
36
+ /******/
37
+ /******/ // define getter function for harmony exports
38
+ /******/ __webpack_require__.d = function(exports, name, getter) {
39
+ /******/ if(!__webpack_require__.o(exports, name)) {
40
+ /******/ Object.defineProperty(exports, name, { enumerable: true, get: getter });
41
+ /******/ }
42
+ /******/ };
43
+ /******/
44
+ /******/ // define __esModule on exports
45
+ /******/ __webpack_require__.r = function(exports) {
46
+ /******/ if(typeof Symbol !== 'undefined' && Symbol.toStringTag) {
47
+ /******/ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
48
+ /******/ }
49
+ /******/ Object.defineProperty(exports, '__esModule', { value: true });
50
+ /******/ };
51
+ /******/
52
+ /******/ // create a fake namespace object
53
+ /******/ // mode & 1: value is a module id, require it
54
+ /******/ // mode & 2: merge all properties of value into the ns
55
+ /******/ // mode & 4: return value when already ns object
56
+ /******/ // mode & 8|1: behave like require
57
+ /******/ __webpack_require__.t = function(value, mode) {
58
+ /******/ if(mode & 1) value = __webpack_require__(value);
59
+ /******/ if(mode & 8) return value;
60
+ /******/ if((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;
61
+ /******/ var ns = Object.create(null);
62
+ /******/ __webpack_require__.r(ns);
63
+ /******/ Object.defineProperty(ns, 'default', { enumerable: true, value: value });
64
+ /******/ if(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));
65
+ /******/ return ns;
66
+ /******/ };
67
+ /******/
68
+ /******/ // getDefaultExport function for compatibility with non-harmony modules
69
+ /******/ __webpack_require__.n = function(module) {
70
+ /******/ var getter = module && module.__esModule ?
71
+ /******/ function getDefault() { return module['default']; } :
72
+ /******/ function getModuleExports() { return module; };
73
+ /******/ __webpack_require__.d(getter, 'a', getter);
74
+ /******/ return getter;
75
+ /******/ };
76
+ /******/
77
+ /******/ // Object.prototype.hasOwnProperty.call
78
+ /******/ __webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };
79
+ /******/
80
+ /******/ // __webpack_public_path__
81
+ /******/ __webpack_require__.p = "";
82
+ /******/
83
+ /******/
84
+ /******/ // Load entry module and return exports
85
+ /******/ return __webpack_require__(__webpack_require__.s = 8);
86
+ /******/ })
87
+ /************************************************************************/
88
+ /******/ ({
89
+
90
+ /***/ 8:
91
+ /***/ (function(module, exports, __webpack_require__) {
92
+
93
+ "use strict";
94
+
95
+
96
+ var _wx$worklet = wx.worklet,
97
+ shared = _wx$worklet.shared,
98
+ timing = _wx$worklet.timing;
99
+
100
+
101
+ var GestureState = {
102
+ POSSIBLE: 0, // 0 此时手势未识别,如 panDown等
103
+ BEGIN: 1, // 1 手势已识别
104
+ ACTIVE: 2, // 2 连续手势活跃状态
105
+ END: 3, // 3 手势终止
106
+ CANCELLED: 4 // 4 手势取消,
107
+ };
108
+
109
+ Component({
110
+ externalClasses: ["referenceClass", "containerClass", "headerClass", "headerTittleClass", "contentClass", "markClass"],
111
+ properties: {
112
+ showHalfScreen: {
113
+ type: Boolean,
114
+ value: false
115
+ },
116
+ mark: {
117
+ type: Boolean,
118
+ value: false
119
+ },
120
+ maskClosable: {
121
+ type: Boolean,
122
+ value: true
123
+ },
124
+ containerHeight: {
125
+ type: String,
126
+ value: "50vh"
127
+ },
128
+ showClose: {
129
+ type: Boolean,
130
+ value: true
131
+ },
132
+ canClose: {
133
+ type: Boolean,
134
+ value: true
135
+ }
136
+ },
137
+ options: {
138
+ multipleSlots: true // 在组件定义时的选项中启用多slot支持
139
+ },
140
+ data: {
141
+ showMark: false
142
+ },
143
+ observers: {
144
+ showHalfScreen: function showHalfScreen(newShow) {
145
+ if (newShow) {
146
+ this.openComment(300);
147
+ } else {
148
+ this.closeComment();
149
+ }
150
+ },
151
+ canClose: function canClose() {
152
+ this.canCloseSelect = this.properties.canClose;
153
+ }
154
+ },
155
+ lifetimes: {
156
+ created: function created() {
157
+ this.transY = shared(1000);
158
+ this.scrollTop = shared(0);
159
+ this.startPan = shared(true);
160
+ this.commentHeight = shared(1000);
161
+ this.canCloseSelect = this.properties.canClose;
162
+ this.setData({
163
+ showMark: this.properties.mark
164
+ });
165
+ },
166
+ ready: function ready() {
167
+ var _this = this;
168
+
169
+ var query = this.createSelectorQuery();
170
+ // ready 生命周期里才能获取到首屏的布局信息
171
+ query.select(".comment-container").boundingClientRect();
172
+ query.exec(function (res) {
173
+ _this.transY.value = _this.commentHeight.value = res[0].height;
174
+ });
175
+ // 通过 transY 一个 SharedValue 控制半屏的位置
176
+ this.applyAnimatedStyle(".comment-container", function () {
177
+ "worklet";
178
+
179
+ return { transform: "translateY(" + _this.transY.value + "px)" };
180
+ });
181
+ }
182
+ },
183
+ methods: {
184
+ scrollToLower: function scrollToLower() {
185
+ this.triggerEvent("scrollToLower");
186
+ },
187
+ scrollTouUpPer: function scrollTouUpPer() {
188
+ this.triggerEvent("scrollTouUpPer");
189
+ },
190
+ onTapOpenComment: function onTapOpenComment() {
191
+ this.openComment(300);
192
+ },
193
+ changeMask: function changeMask(mark) {
194
+ if (this.properties.mark) {
195
+ this.setData({
196
+ showMark: mark
197
+ });
198
+ } else {
199
+ this.triggerEvent("closeHalfScreen");
200
+ }
201
+ },
202
+ openComment: function openComment(duration) {
203
+ "worklet";
204
+
205
+ wx.worklet.runOnJS(this.changeMask.bind(this))(true);
206
+ this.transY.value = timing(0, { duration: duration });
207
+ },
208
+ onTapCloseComment: function onTapCloseComment() {
209
+ this.closeComment();
210
+ },
211
+ closeByMark: function closeByMark() {
212
+ if (this.properties.maskClosable) {
213
+ this.closeComment();
214
+ }
215
+ },
216
+ closeComment: function closeComment() {
217
+ "worklet";
218
+
219
+ if (!this.canCloseSelect) return;
220
+ wx.worklet.runOnJS(this.changeMask.bind(this))(false);
221
+ this.transY.value = timing(this.commentHeight.value, { duration: 500 });
222
+ },
223
+ shouldPanResponse: function shouldPanResponse() {
224
+ "worklet";
225
+
226
+ return this.startPan.value;
227
+ },
228
+ shouldScrollViewResponse: function shouldScrollViewResponse(pointerEvent) {
229
+ "worklet";
230
+ // transY > 0 说明 pan 手势在移动半屏,此时滚动不应生效
231
+
232
+ if (this.transY.value > 0) return false;
233
+ var scrollTop = this.scrollTop.value;
234
+ var deltaY = pointerEvent.deltaY;
235
+ // deltaY > 0 是往上滚动,scrollTop <= 0 是滚动到顶部边界,此时 pan 开始生效,滚动不生效
236
+
237
+ var result = scrollTop <= 0 && deltaY > 0;
238
+ this.startPan.value = result;
239
+ return !result;
240
+ },
241
+ handlePan: function handlePan(gestureEvent) {
242
+ "worklet";
243
+
244
+ if (!this.canCloseSelect) return;
245
+ if (gestureEvent.state === GestureState.ACTIVE) {
246
+ var curPosition = this.transY.value;
247
+ var destination = Math.max(0, curPosition + gestureEvent.deltaY);
248
+ if (curPosition === destination) return;
249
+ this.transY.value = destination;
250
+ }
251
+
252
+ if (gestureEvent.state === GestureState.END || gestureEvent.state === GestureState.CANCELLED) {
253
+ if (gestureEvent.velocityY > 500 && this.transY.value > 50) {
254
+ this.closeComment();
255
+ } else if (this.transY.value > this.commentHeight.value / 2) {
256
+ this.closeComment();
257
+ } else {
258
+ this.openComment(100);
259
+ }
260
+ }
261
+ },
262
+ adjustDecelerationVelocity: function adjustDecelerationVelocity(velocity) {
263
+ "worklet";
264
+
265
+ var scrollTop = this.scrollTop.value;
266
+ return scrollTop <= 0 ? 0 : velocity;
267
+ },
268
+ handleScroll: function handleScroll(evt) {
269
+ "worklet";
270
+
271
+ this.scrollTop.value = evt.detail.scrollTop;
272
+ }
273
+ }
274
+ });
275
+
276
+ /***/ })
277
+
278
+ /******/ });
@@ -0,0 +1,5 @@
1
+ {
2
+ "component": true,
3
+ "usingComponents": {
4
+ }
5
+ }
@@ -0,0 +1,36 @@
1
+ <root-portal>
2
+ <view class="mask-box markClass" wx:if="{{showHalfScreen&&mark && showMark}}" bind:tap="closeByMark"></view>
3
+ <view class="comment-container containerClass" style="height:{{containerHeight}};">
4
+
5
+ <!-- 顶部不参与手势协商,单独控制 -->
6
+ <pan-gesture-handler worklet:ongesture="handlePan" style="flex-shrink: 0;">
7
+ <view class="comment-header headerClass">
8
+ <view class="close-comment" wx:if="{{showClose}}"
9
+ bind:tap="onTapCloseComment">×
10
+ </view>
11
+ <view class="comment-header-title headerTittleClass">
12
+ <slot name="header" />
13
+ </view>
14
+ </view>
15
+ </pan-gesture-handler>
16
+ <!-- 滚动区要与 pan 手势协商 -->
17
+ <pan-gesture-handler id="pan" worklet:should-response-on-move="shouldPanResponse"
18
+ simultaneous-handlers="{{['scroll']}}" worklet:ongesture="handlePan">
19
+ <vertical-drag-gesture-handler id="scroll" native-view="scroll-view"
20
+ worklet:should-response-on-move="shouldScrollViewResponse"
21
+ simultaneous-handlers="{{['pan']}}">
22
+ <scroll-view class="comment-list contentClass" scroll-y
23
+ worklet:adjust-deceleration-velocity="adjustDecelerationVelocity"
24
+ worklet:onscrollupdate="handleScroll" type="list" show-scrollbar="{{false}}"
25
+ bind:scrolltolower="scrollToLower" bind:scrolltoupper="scrollTouUpPer"
26
+ >
27
+ <slot name="content" />
28
+ </scroll-view>
29
+ </vertical-drag-gesture-handler>
30
+ </pan-gesture-handler>
31
+ <view class="safe-area-inset-bottom">
32
+ <slot name="footer"></slot>
33
+ </view>
34
+
35
+ </view>
36
+ </root-portal>
@@ -0,0 +1,107 @@
1
+ pan-gesture-handler, vertical-drag-gesture-handler {
2
+ display: flex;
3
+ flex-direction: column;
4
+ overflow: hidden;
5
+ }
6
+
7
+ .open-comment {
8
+ display: flex;
9
+ flex-direction: column;
10
+ flex-shrink: 0;
11
+ width: 100%;
12
+ background-color: white;
13
+ }
14
+
15
+ .safe-area-inset-bottom {
16
+ margin-bottom: env(safe-area-inset-bottom);
17
+ }
18
+
19
+ .mask-box {
20
+ width: 100%;
21
+ height: 100%;
22
+ position: fixed;
23
+ background: rgba(0, 0, 0, 0.2);
24
+ }
25
+
26
+ .comment-container {
27
+ width: 100%;
28
+ height: 50%;
29
+ display: flex;
30
+ flex-direction: column;
31
+ position: fixed;
32
+ bottom: 0;
33
+ left: 0;
34
+ z-index: 999;
35
+ background-color: white;
36
+ border-top-left-radius: 20px;
37
+ border-top-right-radius: 20px;
38
+ transform: translateY(100%);
39
+ }
40
+
41
+ .comment-header {
42
+ width: 100%;
43
+ font-size: 40rpx;
44
+ color: #333333;
45
+ line-height: 56rpx;
46
+ text-align: left;
47
+ padding: 30rpx 0;
48
+ align-items: center;
49
+ }
50
+
51
+ .close-comment {
52
+ position: absolute;
53
+ right: 44rpx;
54
+ font-size: 50rpx;
55
+ font-weight: bold;
56
+ line-height: 30rpx;
57
+ z-index: 1;
58
+ width: 50rpx;
59
+ height: 50rpx;
60
+ text-align: center;
61
+ }
62
+
63
+ .comment-header-title {
64
+ margin-left: 62rpx;
65
+ }
66
+
67
+ .comment-list {
68
+ flex: 1;
69
+ overflow: hidden;
70
+ }
71
+
72
+ .comment-item {
73
+ padding: 0 20px 20px;
74
+ font-size: 13px;
75
+ line-height: 1.4;
76
+ }
77
+
78
+ .main-comment, .sub-comment {
79
+ display: flex;
80
+ flex-direction: row;
81
+ }
82
+
83
+ .sub-comment {
84
+ padding: 10px 22px 0;
85
+ }
86
+
87
+ .user-head-img {
88
+ width: 33px;
89
+ height: 33px;
90
+ border-radius: 50%;
91
+ margin-top: 5px;
92
+ }
93
+
94
+ .others {
95
+ flex: 1;
96
+ margin-left: 10px;
97
+ }
98
+
99
+ .user-name {
100
+ white-space: nowrap;
101
+ overflow: hidden;
102
+ text-overflow: ellipsis;
103
+ }
104
+
105
+ .content {
106
+ margin-top: 2px;
107
+ }
@@ -0,0 +1,106 @@
1
+ module.exports =
2
+ /******/ (function(modules) { // webpackBootstrap
3
+ /******/ // The module cache
4
+ /******/ var installedModules = {};
5
+ /******/
6
+ /******/ // The require function
7
+ /******/ function __webpack_require__(moduleId) {
8
+ /******/
9
+ /******/ // Check if module is in cache
10
+ /******/ if(installedModules[moduleId]) {
11
+ /******/ return installedModules[moduleId].exports;
12
+ /******/ }
13
+ /******/ // Create a new module (and put it into the cache)
14
+ /******/ var module = installedModules[moduleId] = {
15
+ /******/ i: moduleId,
16
+ /******/ l: false,
17
+ /******/ exports: {}
18
+ /******/ };
19
+ /******/
20
+ /******/ // Execute the module function
21
+ /******/ modules[moduleId].call(module.exports, module, module.exports, __webpack_require__);
22
+ /******/
23
+ /******/ // Flag the module as loaded
24
+ /******/ module.l = true;
25
+ /******/
26
+ /******/ // Return the exports of the module
27
+ /******/ return module.exports;
28
+ /******/ }
29
+ /******/
30
+ /******/
31
+ /******/ // expose the modules object (__webpack_modules__)
32
+ /******/ __webpack_require__.m = modules;
33
+ /******/
34
+ /******/ // expose the module cache
35
+ /******/ __webpack_require__.c = installedModules;
36
+ /******/
37
+ /******/ // define getter function for harmony exports
38
+ /******/ __webpack_require__.d = function(exports, name, getter) {
39
+ /******/ if(!__webpack_require__.o(exports, name)) {
40
+ /******/ Object.defineProperty(exports, name, { enumerable: true, get: getter });
41
+ /******/ }
42
+ /******/ };
43
+ /******/
44
+ /******/ // define __esModule on exports
45
+ /******/ __webpack_require__.r = function(exports) {
46
+ /******/ if(typeof Symbol !== 'undefined' && Symbol.toStringTag) {
47
+ /******/ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
48
+ /******/ }
49
+ /******/ Object.defineProperty(exports, '__esModule', { value: true });
50
+ /******/ };
51
+ /******/
52
+ /******/ // create a fake namespace object
53
+ /******/ // mode & 1: value is a module id, require it
54
+ /******/ // mode & 2: merge all properties of value into the ns
55
+ /******/ // mode & 4: return value when already ns object
56
+ /******/ // mode & 8|1: behave like require
57
+ /******/ __webpack_require__.t = function(value, mode) {
58
+ /******/ if(mode & 1) value = __webpack_require__(value);
59
+ /******/ if(mode & 8) return value;
60
+ /******/ if((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;
61
+ /******/ var ns = Object.create(null);
62
+ /******/ __webpack_require__.r(ns);
63
+ /******/ Object.defineProperty(ns, 'default', { enumerable: true, value: value });
64
+ /******/ if(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));
65
+ /******/ return ns;
66
+ /******/ };
67
+ /******/
68
+ /******/ // getDefaultExport function for compatibility with non-harmony modules
69
+ /******/ __webpack_require__.n = function(module) {
70
+ /******/ var getter = module && module.__esModule ?
71
+ /******/ function getDefault() { return module['default']; } :
72
+ /******/ function getModuleExports() { return module; };
73
+ /******/ __webpack_require__.d(getter, 'a', getter);
74
+ /******/ return getter;
75
+ /******/ };
76
+ /******/
77
+ /******/ // Object.prototype.hasOwnProperty.call
78
+ /******/ __webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };
79
+ /******/
80
+ /******/ // __webpack_public_path__
81
+ /******/ __webpack_require__.p = "";
82
+ /******/
83
+ /******/
84
+ /******/ // Load entry module and return exports
85
+ /******/ return __webpack_require__(__webpack_require__.s = 1);
86
+ /******/ })
87
+ /************************************************************************/
88
+ /******/ ([
89
+ /* 0 */,
90
+ /* 1 */
91
+ /***/ (function(module, exports, __webpack_require__) {
92
+
93
+ "use strict";
94
+
95
+
96
+ Component({
97
+ externalClasses: ["iclass"],
98
+ properties: {
99
+ name: {
100
+ type: String
101
+ }
102
+ }
103
+ });
104
+
105
+ /***/ })
106
+ /******/ ]);
@@ -0,0 +1,3 @@
1
+ {
2
+ "component": true
3
+ }
@@ -0,0 +1 @@
1
+ <view class="iclass bld-iconfont icon-{{ name }}" />