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,16 @@
1
+ page {
2
+ height: 100%;
3
+ width: 100%;
4
+ }
5
+
6
+ .page {
7
+ height: 100%;
8
+ }
9
+
10
+ .container {
11
+ display: flex;
12
+ flex-direction: column;
13
+ overflow: hidden;
14
+ flex: 1;
15
+ width: 100%;
16
+ }
@@ -0,0 +1,23 @@
1
+ Component({
2
+ externalClasses: ["iclass"],
3
+ properties: {
4
+ title: {
5
+ type: String,
6
+ value: "加载失败",
7
+ },
8
+ description: {
9
+ type: String,
10
+ value: "发生了一些错误",
11
+ },
12
+ actionText: {
13
+ type: String,
14
+ value: "点击重试",
15
+ },
16
+ },
17
+
18
+ methods: {
19
+ retry() {
20
+ this.triggerEvent("on-retry");
21
+ },
22
+ },
23
+ });
@@ -0,0 +1,3 @@
1
+ {
2
+ "component": true
3
+ }
@@ -0,0 +1,26 @@
1
+ .retry {
2
+ padding: 24rpx;
3
+ color: #333;
4
+ padding: 24rpx 12rpx;
5
+ border-radius: 12rpx;
6
+ background: #fff;
7
+ display: flex;
8
+ flex-direction: column;
9
+ justify-content: center;
10
+ align-items: center;
11
+ }
12
+
13
+ .title {
14
+ margin-bottom: 24rpx;
15
+ }
16
+
17
+ .action, .description {
18
+ font-size: var(--font-size-sm);
19
+ }
20
+
21
+ .description {
22
+ margin-bottom: 24rpx;
23
+ }
24
+
25
+
26
+
@@ -0,0 +1,5 @@
1
+ <view class="iclass retry" bind:tap="retry">
2
+ <view class="title">{{ title }}</view>
3
+ <view class="description">{{ description }}</view>
4
+ <view class="action">{{actionText}}</view>
5
+ </view>
@@ -0,0 +1,23 @@
1
+ .retry {
2
+ padding: 24rpx;
3
+ color: #333;
4
+ padding: 24rpx 12rpx;
5
+ border-radius: 12rpx;
6
+ background: #fff;
7
+ display: flex;
8
+ flex-direction: column;
9
+ justify-content: center;
10
+ align-items: center;
11
+ }
12
+
13
+ .title {
14
+ margin-bottom: 24rpx;
15
+ }
16
+
17
+ .action, .description {
18
+ font-size: var(--font-size-sm);
19
+ }
20
+
21
+ .description {
22
+ margin-bottom: 24rpx;
23
+ }
@@ -0,0 +1,28 @@
1
+ Component({
2
+ externalClasses: ["iclass"],
3
+ properties: {
4
+ type: {
5
+ type: String,
6
+ value: "list",
7
+ },
8
+ mode: {
9
+ type: String,
10
+ value: "nav-to-bottom",
11
+ },
12
+ scrollTop: {
13
+ type: Number,
14
+ value: 0,
15
+ },
16
+ },
17
+ methods: {
18
+ scroll(e) {
19
+ this.triggerEvent("scroll", { ...e.detail });
20
+ },
21
+ scrollEnd(e) {
22
+ this.triggerEvent("scrollEnd", { ...e.detail });
23
+ },
24
+ scrollToLower(e) {
25
+ this.triggerEvent("scrollToLower", { ...e.detail });
26
+ },
27
+ },
28
+ });
@@ -0,0 +1,7 @@
1
+ {
2
+ "component": true,
3
+ "styleIsolation": "apply-shared",
4
+ "usingComponents": {
5
+ "bld-wrapper": "../bld-wrapper/index"
6
+ }
7
+ }
@@ -0,0 +1,7 @@
1
+ .container {
2
+ display: flex;
3
+ flex-direction: column;
4
+ overflow: auto;
5
+ height: 100%;
6
+ width: 100%;
7
+ }
@@ -0,0 +1,42 @@
1
+ <template
2
+ is="{{ type }}"
3
+ data="{{ mode, scrollTop }}"
4
+ />
5
+
6
+ <template name="list">
7
+ <bld-wrapper mode="{{ mode }}">
8
+ <scroll-view
9
+ enable-passive="{{ true }}"
10
+ show-scrollbar="{{ false }}"
11
+ type="list"
12
+ class="iclass container"
13
+ scroll-y
14
+ scroll-top="{{ scrollTop }}"
15
+ bind:scroll="scroll"
16
+ bind:scrollend="scrollEnd"
17
+ bind:scrolltolower="scrollToLower"
18
+ >
19
+ <slot />
20
+ <view style="height: 100rpx;" />
21
+ </scroll-view>
22
+ </bld-wrapper>
23
+ </template>
24
+
25
+ <template name="custom">
26
+ <bld-wrapper mode="{{ mode }}">
27
+ <scroll-view
28
+ enable-passive="{{ true }}"
29
+ show-scrollbar="{{ false }}"
30
+ type="custom"
31
+ class="iclass container"
32
+ scroll-y
33
+ scroll-top="{{ scrollTop }}"
34
+ bind:scroll="scroll"
35
+ bind:scrollend="scrollEnd"
36
+ bind:scrolltolower="scrollToLower"
37
+ >
38
+ <slot />
39
+ <view style="height: 100rpx;" />
40
+ </scroll-view>
41
+ </bld-wrapper>
42
+ </template>
@@ -0,0 +1,7 @@
1
+ .container {
2
+ display: flex;
3
+ flex-direction: column;
4
+ overflow: auto;
5
+ height: 100%;
6
+ width: 100%;
7
+ }
@@ -0,0 +1,46 @@
1
+ Component({
2
+ externalClasses: ["iclass"],
3
+ properties: {
4
+ text: {
5
+ type: String,
6
+ value: "加载中...",
7
+ },
8
+ maxLines: {
9
+ type: Number,
10
+ value: 3,
11
+ },
12
+ stripHtml: {
13
+ type: Boolean,
14
+ value: true,
15
+ },
16
+ stripInVisible: {
17
+ type: Boolean,
18
+ value: true,
19
+ },
20
+ size: {
21
+ type: String,
22
+ value: "lg-r",
23
+ },
24
+ },
25
+ data: {
26
+ formattedText: "加载中...",
27
+ },
28
+ observers: {
29
+ text() {
30
+ let formattedText = this.data.text;
31
+ if (this.data.stripHtml) {
32
+ // 替换 html 标签
33
+ formattedText = formattedText.replace(/<[^>]*>|&nbsp;/gm, "");
34
+ }
35
+
36
+ if (this.data.stripInVisible) {
37
+ // 替换不可见字符
38
+ formattedText = formattedText.replace(/[\u0000-\u001F\u007F-\u009F]/g, "");
39
+ }
40
+
41
+ this.setData({
42
+ formattedText,
43
+ });
44
+ },
45
+ },
46
+ });
@@ -0,0 +1,3 @@
1
+ {
2
+ "component": true
3
+ }
@@ -0,0 +1,30 @@
1
+ .content {
2
+ display: -webkit-box;
3
+ -webkit-box-orient: vertical;
4
+ overflow: hidden;
5
+ text-overflow: ellipsis;
6
+
7
+ &.sm {
8
+ line-height: calc(var(--font-size-sm) * 1.8);
9
+ letter-spacing: 1rpx;
10
+ font-size: var(--font-size-sm);
11
+ }
12
+
13
+ &.md {
14
+ line-height: calc(var(--font-size-md) * 1.8);
15
+ letter-spacing: 1rpx;
16
+ font-size: var(--font-size-md);
17
+ }
18
+
19
+ &.lg-r {
20
+ line-height: calc(var(--font-size-lg-r) * 1.8);
21
+ letter-spacing: 1rpx;
22
+ font-size: var(--font-size-lg-r);
23
+ }
24
+
25
+ &.lg {
26
+ line-height: calc(var(--font-size-lg) * 1.8);
27
+ letter-spacing: 1rpx;
28
+ font-size: var(--font-size-lg);
29
+ }
30
+ }
@@ -0,0 +1,3 @@
1
+ <view class="content {{size}} iclass" style="-webkit-line-clamp: {{maxLines}}; line-clamp: {{maxLines}};">
2
+ <text max-lines="{{ maxLines }}" overflow="ellipsis">{{ formattedText }}</text>
3
+ </view>
@@ -0,0 +1,26 @@
1
+ .content {
2
+ display: -webkit-box;
3
+ -webkit-box-orient: vertical;
4
+ overflow: hidden;
5
+ text-overflow: ellipsis;
6
+ }
7
+ .content.sm {
8
+ line-height: calc(var(--font-size-sm) * 1.8);
9
+ letter-spacing: 1rpx;
10
+ font-size: var(--font-size-sm);
11
+ }
12
+ .content.md {
13
+ line-height: calc(var(--font-size-md) * 1.8);
14
+ letter-spacing: 1rpx;
15
+ font-size: var(--font-size-md);
16
+ }
17
+ .content.lg-r {
18
+ line-height: calc(var(--font-size-lg-r) * 1.8);
19
+ letter-spacing: 1rpx;
20
+ font-size: var(--font-size-lg-r);
21
+ }
22
+ .content.lg {
23
+ line-height: calc(var(--font-size-lg) * 1.8);
24
+ letter-spacing: 1rpx;
25
+ font-size: var(--font-size-lg);
26
+ }
@@ -0,0 +1,115 @@
1
+ const defaults_data = {
2
+ visible: false,
3
+ show: false,
4
+ mask: false,
5
+ ghost: true,
6
+ message: '',
7
+ position: 'middle', //top middle bottom
8
+ duration: 20000,
9
+ image: '',
10
+ icon: '',
11
+ iconColor: '#fff',
12
+ iconSize: 80,
13
+ type: '',
14
+ zIndex: -1
15
+ }
16
+
17
+ Component({
18
+ externalClasses: ['custom-class'],
19
+
20
+ options: {
21
+ addGlobalClass: true,
22
+ },
23
+
24
+ data: {
25
+ ...defaults_data,
26
+ transformStyle: '',
27
+ },
28
+
29
+ ready() {
30
+ if (wx.canIUse('getWindowInfo')) {
31
+ const windowInfo = wx.getWindowInfo()
32
+ this.computedBarH(windowInfo)
33
+ } else {
34
+ // 该方法为同步
35
+ wx.getSystemInfo({
36
+ success: (windowInfo) => {
37
+ this.computedBarH(windowInfo)
38
+ }
39
+ })
40
+ }
41
+ },
42
+
43
+ methods: {
44
+ computedBarH(windowInfo) {
45
+ const {
46
+ screenHeight,
47
+ windowHeight,
48
+ statusBarHeight
49
+ } = windowInfo;
50
+
51
+ // 自定义导航栏
52
+ if (screenHeight === windowHeight) {
53
+ let customBarH = 44;
54
+ let capsule = wx.getMenuButtonBoundingClientRect();
55
+ if (capsule) {
56
+ customBarH = capsule.bottom - statusBarHeight + 4;
57
+ }
58
+
59
+ defaults_data.top = customBarH + statusBarHeight + 'px'
60
+ this.setData({
61
+ top: customBarH + statusBarHeight + 'px'
62
+ })
63
+ }
64
+ },
65
+
66
+ open(options) {
67
+ debugger
68
+ const {
69
+ type = '',
70
+ icon = '',
71
+ image = '',
72
+ duration = 20000,
73
+ position = 'middle',
74
+ mask = false,
75
+ ghost = true,
76
+ zIndex = 2001
77
+ } = options
78
+
79
+ this.setData({
80
+ ...options,
81
+ type,
82
+ icon,
83
+ image,
84
+ mask,
85
+ ghost,
86
+ position,
87
+ visible: true,
88
+ zIndex
89
+ }, () => {
90
+ this.setData({
91
+ show: true
92
+ })
93
+ })
94
+
95
+ if (this.timer) clearTimeout(this.timer)
96
+
97
+ if (duration) {
98
+ this.timer = setTimeout(() => {
99
+ this.close()
100
+ this.timer = null
101
+ }, duration)
102
+ }
103
+ },
104
+
105
+ handleHide() {
106
+
107
+ },
108
+
109
+ close() {
110
+ this.setData({
111
+ ...defaults_data
112
+ })
113
+ }
114
+ }
115
+ })
@@ -0,0 +1,6 @@
1
+ {
2
+ "component": true,
3
+ "usingComponents": {
4
+ "m-icon": "../icon/index"
5
+ }
6
+ }
@@ -0,0 +1,112 @@
1
+ .m-toast__mask {
2
+ z-index: 2000;
3
+ position: fixed;
4
+ top: 0;
5
+ bottom: 0;
6
+ left: 0;
7
+ right: 0;
8
+ background-color: var(--color-mask, rgba(0, 0, 0, 0.55));
9
+ }
10
+
11
+ .m-toast__wrap {
12
+ opacity: 0;
13
+ z-index: 2001;
14
+ position: fixed;
15
+ left: 50%;
16
+ transform: translate(-50%, -50%);
17
+ transition: opacity 0.15s ease-in;
18
+
19
+ &.m-toast--top {
20
+ top: 110rpx;
21
+ animation: toast-top 0.25s ease-in-out;
22
+ }
23
+
24
+ &.m-toast--middle {
25
+ top: 45%;
26
+ }
27
+
28
+ &.m-toast--bottom {
29
+ bottom: 110rpx;
30
+ animation: toast-bottom 0.25s ease-in-out;
31
+ }
32
+
33
+ &.m-toast--show {
34
+ opacity: 1;
35
+ }
36
+
37
+ .m-toast {
38
+ margin: 0 auto;
39
+ padding: 24rpx 40rpx;
40
+ color: #fff;
41
+ font-size: 28rpx;
42
+ line-height: 28rpx;
43
+ text-align: center;
44
+ border-radius: 4rpx;
45
+ box-sizing: border-box;
46
+ background: rgba(0, 0, 0, 0.75);
47
+
48
+ .m-toast__icon {
49
+ padding: 30rpx 0 60rpx;
50
+ }
51
+
52
+ .m-toast__image {
53
+ padding-bottom: 20rpx;
54
+
55
+ .m-toast__image__inner {
56
+ max-width: 160rpx;
57
+ max-height: 160rpx;
58
+ }
59
+ }
60
+
61
+ .m-toast__loading {
62
+ display: inline-block;
63
+ margin: 26rpx 36rpx 36rpx;
64
+ width: 54rpx;
65
+ height: 54rpx;
66
+ border-radius: 50%;
67
+ border: 6rpx solid #fff;
68
+ border-left-color: transparent;
69
+ vertical-align: middle;
70
+ background: 0 0;
71
+ animation: btn-spinner 0.8s linear infinite;
72
+ }
73
+ }
74
+
75
+ @keyframes toast-top {
76
+ 0% {
77
+ top: 40rpx;
78
+ }
79
+
80
+ 60% {
81
+ top: 130rpx;
82
+ }
83
+
84
+ 100% {
85
+ top: 110rpx;
86
+ }
87
+ }
88
+
89
+ @keyframes toast-bottom {
90
+ 0% {
91
+ bottom: 40rpx;
92
+ }
93
+
94
+ 60% {
95
+ bottom: 130rpx;
96
+ }
97
+
98
+ 100% {
99
+ bottom: 110rpx;
100
+ }
101
+ }
102
+
103
+ @keyframes btn-spinner {
104
+ 0% {
105
+ transform: rotate(0);
106
+ }
107
+
108
+ 100% {
109
+ transform: rotate(360deg);
110
+ }
111
+ }
112
+ }
@@ -0,0 +1,27 @@
1
+ <view
2
+ class="m-toast__mask"
3
+ style="{{ 'z-index:' + zIndex + ';' + ghost ? 'opacity: 0' : '' }}"
4
+ wx:if="{{ visible && mask }}"
5
+ bindtap="handleHide"
6
+ ></view>
7
+
8
+ <view
9
+ class="custom-class m-toast__wrap m-toast--{{ position }} {{ show ? 'm-toast--show' : '' }}"
10
+ style="z-index: {{ zIndex }};{{ position === 'top' ? transformStyle : '' }}"
11
+ hidden="{{ !visible }}"
12
+ >
13
+ <view class="m-toast">
14
+
15
+ <view wx:if="{{ icon }}" class="m-toast__icon">
16
+ <m-icon size="{{ iconSize }}" name="{{ icon }}" color="{{ iconColor }}" />
17
+ </view>
18
+
19
+ <view wx:elif="{{ image }}" class="m-toast__image">
20
+ <image class="m-toast__image__inner" src="{{ image }}" />
21
+ </view>
22
+
23
+ <view wx:if="{{ type === 'loading' }}" class="m-toast__loading"></view>
24
+ <view wx:if="{{ message }}">{{ message }}</view>
25
+
26
+ </view>
27
+ </view>
@@ -0,0 +1,95 @@
1
+ .m-toast__mask {
2
+ z-index: 2000;
3
+ position: fixed;
4
+ top: 0;
5
+ bottom: 0;
6
+ left: 0;
7
+ right: 0;
8
+ background-color: var(--color-mask, rgba(0, 0, 0, 0.55));
9
+ }
10
+
11
+ .m-toast__wrap {
12
+ opacity: 0;
13
+ z-index: 2001;
14
+ position: fixed;
15
+ left: 50%;
16
+ transform: translate(-50%, -50%);
17
+ transition: opacity 0.15s ease-in;
18
+ }
19
+ .m-toast__wrap.m-toast--top {
20
+ top: 110rpx;
21
+ animation: toast-top 0.25s ease-in-out;
22
+ }
23
+ .m-toast__wrap.m-toast--middle {
24
+ top: 45%;
25
+ }
26
+ .m-toast__wrap.m-toast--bottom {
27
+ bottom: 110rpx;
28
+ animation: toast-bottom 0.25s ease-in-out;
29
+ }
30
+ .m-toast__wrap.m-toast--show {
31
+ opacity: 1;
32
+ }
33
+ .m-toast__wrap .m-toast {
34
+ margin: 0 auto;
35
+ padding: 24rpx 40rpx;
36
+ color: #fff;
37
+ font-size: 28rpx;
38
+ line-height: 28rpx;
39
+ text-align: center;
40
+ border-radius: 4rpx;
41
+ box-sizing: border-box;
42
+ background: rgba(0, 0, 0, 0.75);
43
+ }
44
+ .m-toast__wrap .m-toast .m-toast__icon {
45
+ padding: 30rpx 0 60rpx;
46
+ }
47
+ .m-toast__wrap .m-toast .m-toast__image {
48
+ padding-bottom: 20rpx;
49
+ }
50
+ .m-toast__wrap .m-toast .m-toast__image .m-toast__image__inner {
51
+ max-width: 160rpx;
52
+ max-height: 160rpx;
53
+ }
54
+ .m-toast__wrap .m-toast .m-toast__loading {
55
+ display: inline-block;
56
+ margin: 26rpx 36rpx 36rpx;
57
+ width: 54rpx;
58
+ height: 54rpx;
59
+ border-radius: 50%;
60
+ border: 6rpx solid #fff;
61
+ border-left-color: transparent;
62
+ vertical-align: middle;
63
+ background: 0 0;
64
+ animation: btn-spinner 0.8s linear infinite;
65
+ }
66
+ @keyframes toast-top {
67
+ 0% {
68
+ top: 40rpx;
69
+ }
70
+ 60% {
71
+ top: 130rpx;
72
+ }
73
+ 100% {
74
+ top: 110rpx;
75
+ }
76
+ }
77
+ @keyframes toast-bottom {
78
+ 0% {
79
+ bottom: 40rpx;
80
+ }
81
+ 60% {
82
+ bottom: 130rpx;
83
+ }
84
+ 100% {
85
+ bottom: 110rpx;
86
+ }
87
+ }
88
+ @keyframes btn-spinner {
89
+ 0% {
90
+ transform: rotate(0);
91
+ }
92
+ 100% {
93
+ transform: rotate(360deg);
94
+ }
95
+ }