create-uniapps 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 (538) hide show
  1. package/README.md +191 -0
  2. package/index.mjs +187 -0
  3. package/package.json +40 -0
  4. package/template/.prettierrc +11 -0
  5. package/template/eslint.config.mjs +30 -0
  6. package/template/index.html +23 -0
  7. package/template/package-lock.json +14557 -0
  8. package/template/package.json +101 -0
  9. package/template/prettier.config.ts +4 -0
  10. package/template/shims-uni.d.ts +10 -0
  11. package/template/src/App.vue +18 -0
  12. package/template/src/auto-imports.d.ts +334 -0
  13. package/template/src/components.d.ts +14 -0
  14. package/template/src/env.d.ts +8 -0
  15. package/template/src/main.ts +22 -0
  16. package/template/src/manifest.json +72 -0
  17. package/template/src/pages/index/index.vue +9 -0
  18. package/template/src/pages.json +23 -0
  19. package/template/src/shime-uni.d.ts +6 -0
  20. package/template/src/static/css/index.scss +14 -0
  21. package/template/src/static/css/tailwind.css +1 -0
  22. package/template/src/static/logo.png +0 -0
  23. package/template/src/uni.scss +77 -0
  24. package/template/src/uni_modules/uview-plus/LICENSE +21 -0
  25. package/template/src/uni_modules/uview-plus/README.md +74 -0
  26. package/template/src/uni_modules/uview-plus/changelog.md +940 -0
  27. package/template/src/uni_modules/uview-plus/components/u--form/u--form.vue +85 -0
  28. package/template/src/uni_modules/uview-plus/components/u--image/u--image.vue +50 -0
  29. package/template/src/uni_modules/uview-plus/components/u--input/u--input.vue +74 -0
  30. package/template/src/uni_modules/uview-plus/components/u--text/u--text.vue +45 -0
  31. package/template/src/uni_modules/uview-plus/components/u--textarea/u--textarea.vue +47 -0
  32. package/template/src/uni_modules/uview-plus/components/u-action-sheet/actionSheet.js +26 -0
  33. package/template/src/uni_modules/uview-plus/components/u-action-sheet/props.js +62 -0
  34. package/template/src/uni_modules/uview-plus/components/u-action-sheet/u-action-sheet.vue +282 -0
  35. package/template/src/uni_modules/uview-plus/components/u-action-sheet-data/u-action-sheet-data.vue +109 -0
  36. package/template/src/uni_modules/uview-plus/components/u-album/album.js +28 -0
  37. package/template/src/uni_modules/uview-plus/components/u-album/props.js +86 -0
  38. package/template/src/uni_modules/uview-plus/components/u-album/u-album.vue +300 -0
  39. package/template/src/uni_modules/uview-plus/components/u-alert/alert.js +22 -0
  40. package/template/src/uni_modules/uview-plus/components/u-alert/props.js +46 -0
  41. package/template/src/uni_modules/uview-plus/components/u-alert/u-alert.vue +250 -0
  42. package/template/src/uni_modules/uview-plus/components/u-avatar/avatar.js +28 -0
  43. package/template/src/uni_modules/uview-plus/components/u-avatar/props.js +81 -0
  44. package/template/src/uni_modules/uview-plus/components/u-avatar/u-avatar.vue +179 -0
  45. package/template/src/uni_modules/uview-plus/components/u-avatar-group/avatarGroup.js +23 -0
  46. package/template/src/uni_modules/uview-plus/components/u-avatar-group/props.js +54 -0
  47. package/template/src/uni_modules/uview-plus/components/u-avatar-group/u-avatar-group.vue +109 -0
  48. package/template/src/uni_modules/uview-plus/components/u-back-top/backtop.js +27 -0
  49. package/template/src/uni_modules/uview-plus/components/u-back-top/props.js +56 -0
  50. package/template/src/uni_modules/uview-plus/components/u-back-top/u-back-top.vue +132 -0
  51. package/template/src/uni_modules/uview-plus/components/u-badge/badge.js +27 -0
  52. package/template/src/uni_modules/uview-plus/components/u-badge/props.js +79 -0
  53. package/template/src/uni_modules/uview-plus/components/u-badge/u-badge.vue +176 -0
  54. package/template/src/uni_modules/uview-plus/components/u-box/props.js +27 -0
  55. package/template/src/uni_modules/uview-plus/components/u-box/u-box.vue +91 -0
  56. package/template/src/uni_modules/uview-plus/components/u-button/button.js +43 -0
  57. package/template/src/uni_modules/uview-plus/components/u-button/nvue.scss +46 -0
  58. package/template/src/uni_modules/uview-plus/components/u-button/props.js +159 -0
  59. package/template/src/uni_modules/uview-plus/components/u-button/u-button.vue +503 -0
  60. package/template/src/uni_modules/uview-plus/components/u-button/vue.scss +81 -0
  61. package/template/src/uni_modules/uview-plus/components/u-calendar/calendar.js +45 -0
  62. package/template/src/uni_modules/uview-plus/components/u-calendar/header.vue +109 -0
  63. package/template/src/uni_modules/uview-plus/components/u-calendar/month.vue +608 -0
  64. package/template/src/uni_modules/uview-plus/components/u-calendar/props.js +160 -0
  65. package/template/src/uni_modules/uview-plus/components/u-calendar/u-calendar.vue +411 -0
  66. package/template/src/uni_modules/uview-plus/components/u-calendar/util.js +86 -0
  67. package/template/src/uni_modules/uview-plus/components/u-car-keyboard/carKeyboard.js +15 -0
  68. package/template/src/uni_modules/uview-plus/components/u-car-keyboard/props.js +17 -0
  69. package/template/src/uni_modules/uview-plus/components/u-car-keyboard/u-car-keyboard.vue +314 -0
  70. package/template/src/uni_modules/uview-plus/components/u-card/card.js +40 -0
  71. package/template/src/uni_modules/uview-plus/components/u-card/props.js +134 -0
  72. package/template/src/uni_modules/uview-plus/components/u-card/u-card.vue +184 -0
  73. package/template/src/uni_modules/uview-plus/components/u-cate-tab/u-cate-tab.vue +342 -0
  74. package/template/src/uni_modules/uview-plus/components/u-cell/cell.js +35 -0
  75. package/template/src/uni_modules/uview-plus/components/u-cell/props.js +112 -0
  76. package/template/src/uni_modules/uview-plus/components/u-cell/u-cell.vue +267 -0
  77. package/template/src/uni_modules/uview-plus/components/u-cell-group/cellGroup.js +17 -0
  78. package/template/src/uni_modules/uview-plus/components/u-cell-group/props.js +16 -0
  79. package/template/src/uni_modules/uview-plus/components/u-cell-group/u-cell-group.vue +66 -0
  80. package/template/src/uni_modules/uview-plus/components/u-checkbox/checkbox.js +27 -0
  81. package/template/src/uni_modules/uview-plus/components/u-checkbox/props.js +76 -0
  82. package/template/src/uni_modules/uview-plus/components/u-checkbox/u-checkbox.vue +388 -0
  83. package/template/src/uni_modules/uview-plus/components/u-checkbox-group/checkboxGroup.js +29 -0
  84. package/template/src/uni_modules/uview-plus/components/u-checkbox-group/props.js +93 -0
  85. package/template/src/uni_modules/uview-plus/components/u-checkbox-group/u-checkbox-group.vue +133 -0
  86. package/template/src/uni_modules/uview-plus/components/u-circle-progress/circleProgress.js +15 -0
  87. package/template/src/uni_modules/uview-plus/components/u-circle-progress/props.js +10 -0
  88. package/template/src/uni_modules/uview-plus/components/u-circle-progress/u-circle-progress.vue +200 -0
  89. package/template/src/uni_modules/uview-plus/components/u-city-locate/u-city-locate.vue +161 -0
  90. package/template/src/uni_modules/uview-plus/components/u-code/code.js +21 -0
  91. package/template/src/uni_modules/uview-plus/components/u-code/props.js +36 -0
  92. package/template/src/uni_modules/uview-plus/components/u-code/u-code.vue +131 -0
  93. package/template/src/uni_modules/uview-plus/components/u-code-input/codeInput.js +29 -0
  94. package/template/src/uni_modules/uview-plus/components/u-code-input/props.js +90 -0
  95. package/template/src/uni_modules/uview-plus/components/u-code-input/u-code-input.vue +299 -0
  96. package/template/src/uni_modules/uview-plus/components/u-col/col.js +19 -0
  97. package/template/src/uni_modules/uview-plus/components/u-col/props.js +31 -0
  98. package/template/src/uni_modules/uview-plus/components/u-col/u-col.vue +169 -0
  99. package/template/src/uni_modules/uview-plus/components/u-collapse/collapse.js +17 -0
  100. package/template/src/uni_modules/uview-plus/components/u-collapse/props.js +21 -0
  101. package/template/src/uni_modules/uview-plus/components/u-collapse/u-collapse.vue +90 -0
  102. package/template/src/uni_modules/uview-plus/components/u-collapse-item/collapseItem.js +31 -0
  103. package/template/src/uni_modules/uview-plus/components/u-collapse-item/props.js +97 -0
  104. package/template/src/uni_modules/uview-plus/components/u-collapse-item/u-collapse-item.vue +243 -0
  105. package/template/src/uni_modules/uview-plus/components/u-column-notice/columnNotice.js +25 -0
  106. package/template/src/uni_modules/uview-plus/components/u-column-notice/props.js +61 -0
  107. package/template/src/uni_modules/uview-plus/components/u-column-notice/u-column-notice.vue +165 -0
  108. package/template/src/uni_modules/uview-plus/components/u-copy/u-copy.vue +70 -0
  109. package/template/src/uni_modules/uview-plus/components/u-count-down/countDown.js +18 -0
  110. package/template/src/uni_modules/uview-plus/components/u-count-down/props.js +26 -0
  111. package/template/src/uni_modules/uview-plus/components/u-count-down/u-count-down.vue +165 -0
  112. package/template/src/uni_modules/uview-plus/components/u-count-down/utils.js +62 -0
  113. package/template/src/uni_modules/uview-plus/components/u-count-to/countTo.js +25 -0
  114. package/template/src/uni_modules/uview-plus/components/u-count-to/props.js +61 -0
  115. package/template/src/uni_modules/uview-plus/components/u-count-to/u-count-to.vue +187 -0
  116. package/template/src/uni_modules/uview-plus/components/u-datetime-picker/datetimePicker.js +42 -0
  117. package/template/src/uni_modules/uview-plus/components/u-datetime-picker/props.js +168 -0
  118. package/template/src/uni_modules/uview-plus/components/u-datetime-picker/u-datetime-picker.vue +520 -0
  119. package/template/src/uni_modules/uview-plus/components/u-divider/divider.js +23 -0
  120. package/template/src/uni_modules/uview-plus/components/u-divider/props.js +46 -0
  121. package/template/src/uni_modules/uview-plus/components/u-divider/u-divider.vue +120 -0
  122. package/template/src/uni_modules/uview-plus/components/u-dragsort/u-dragsort.vue +372 -0
  123. package/template/src/uni_modules/uview-plus/components/u-dropdown/props.js +61 -0
  124. package/template/src/uni_modules/uview-plus/components/u-dropdown/u-dropdown.vue +259 -0
  125. package/template/src/uni_modules/uview-plus/components/u-dropdown-item/props.js +47 -0
  126. package/template/src/uni_modules/uview-plus/components/u-dropdown-item/u-dropdown-item.vue +120 -0
  127. package/template/src/uni_modules/uview-plus/components/u-empty/empty.js +26 -0
  128. package/template/src/uni_modules/uview-plus/components/u-empty/props.js +61 -0
  129. package/template/src/uni_modules/uview-plus/components/u-empty/u-empty.vue +132 -0
  130. package/template/src/uni_modules/uview-plus/components/u-float-button/u-float-button.vue +167 -0
  131. package/template/src/uni_modules/uview-plus/components/u-form/form.js +22 -0
  132. package/template/src/uni_modules/uview-plus/components/u-form/props.js +47 -0
  133. package/template/src/uni_modules/uview-plus/components/u-form/u-form.vue +258 -0
  134. package/template/src/uni_modules/uview-plus/components/u-form-item/formItem.js +24 -0
  135. package/template/src/uni_modules/uview-plus/components/u-form-item/props.js +55 -0
  136. package/template/src/uni_modules/uview-plus/components/u-form-item/u-form-item.vue +261 -0
  137. package/template/src/uni_modules/uview-plus/components/u-gap/gap.js +19 -0
  138. package/template/src/uni_modules/uview-plus/components/u-gap/props.js +26 -0
  139. package/template/src/uni_modules/uview-plus/components/u-gap/u-gap.vue +40 -0
  140. package/template/src/uni_modules/uview-plus/components/u-grid/grid.js +17 -0
  141. package/template/src/uni_modules/uview-plus/components/u-grid/props.js +26 -0
  142. package/template/src/uni_modules/uview-plus/components/u-grid/u-grid.vue +113 -0
  143. package/template/src/uni_modules/uview-plus/components/u-grid-item/gridItem.js +16 -0
  144. package/template/src/uni_modules/uview-plus/components/u-grid-item/props.js +16 -0
  145. package/template/src/uni_modules/uview-plus/components/u-grid-item/u-grid-item.vue +218 -0
  146. package/template/src/uni_modules/uview-plus/components/u-icon/icon.js +36 -0
  147. package/template/src/uni_modules/uview-plus/components/u-icon/icons.js +214 -0
  148. package/template/src/uni_modules/uview-plus/components/u-icon/props.js +91 -0
  149. package/template/src/uni_modules/uview-plus/components/u-icon/u-icon.vue +237 -0
  150. package/template/src/uni_modules/uview-plus/components/u-icon/util.js +75 -0
  151. package/template/src/uni_modules/uview-plus/components/u-image/image.js +30 -0
  152. package/template/src/uni_modules/uview-plus/components/u-image/props.js +86 -0
  153. package/template/src/uni_modules/uview-plus/components/u-image/u-image.vue +267 -0
  154. package/template/src/uni_modules/uview-plus/components/u-index-anchor/indexAnchor.js +19 -0
  155. package/template/src/uni_modules/uview-plus/components/u-index-anchor/props.js +31 -0
  156. package/template/src/uni_modules/uview-plus/components/u-index-anchor/u-index-anchor.vue +110 -0
  157. package/template/src/uni_modules/uview-plus/components/u-index-item/props.js +8 -0
  158. package/template/src/uni_modules/uview-plus/components/u-index-item/u-index-item.vue +89 -0
  159. package/template/src/uni_modules/uview-plus/components/u-index-list/indexList.js +20 -0
  160. package/template/src/uni_modules/uview-plus/components/u-index-list/props.js +36 -0
  161. package/template/src/uni_modules/uview-plus/components/u-index-list/u-index-list.vue +593 -0
  162. package/template/src/uni_modules/uview-plus/components/u-input/input.js +48 -0
  163. package/template/src/uni_modules/uview-plus/components/u-input/props.js +198 -0
  164. package/template/src/uni_modules/uview-plus/components/u-input/u-input.vue +399 -0
  165. package/template/src/uni_modules/uview-plus/components/u-keyboard/keyboard.js +30 -0
  166. package/template/src/uni_modules/uview-plus/components/u-keyboard/props.js +86 -0
  167. package/template/src/uni_modules/uview-plus/components/u-keyboard/u-keyboard.vue +166 -0
  168. package/template/src/uni_modules/uview-plus/components/u-lazy-load/u-lazy-load.vue +260 -0
  169. package/template/src/uni_modules/uview-plus/components/u-line/line.js +20 -0
  170. package/template/src/uni_modules/uview-plus/components/u-line/props.js +35 -0
  171. package/template/src/uni_modules/uview-plus/components/u-line/u-line.vue +64 -0
  172. package/template/src/uni_modules/uview-plus/components/u-line-progress/lineProgress.js +20 -0
  173. package/template/src/uni_modules/uview-plus/components/u-line-progress/props.js +35 -0
  174. package/template/src/uni_modules/uview-plus/components/u-line-progress/u-line-progress.vue +152 -0
  175. package/template/src/uni_modules/uview-plus/components/u-link/link.js +26 -0
  176. package/template/src/uni_modules/uview-plus/components/u-link/props.js +41 -0
  177. package/template/src/uni_modules/uview-plus/components/u-link/u-link.vue +86 -0
  178. package/template/src/uni_modules/uview-plus/components/u-list/list.js +28 -0
  179. package/template/src/uni_modules/uview-plus/components/u-list/props.js +101 -0
  180. package/template/src/uni_modules/uview-plus/components/u-list/u-list.vue +182 -0
  181. package/template/src/uni_modules/uview-plus/components/u-list-item/listItem.js +15 -0
  182. package/template/src/uni_modules/uview-plus/components/u-list-item/props.js +11 -0
  183. package/template/src/uni_modules/uview-plus/components/u-list-item/u-list-item.vue +118 -0
  184. package/template/src/uni_modules/uview-plus/components/u-loading-icon/loadingIcon.js +30 -0
  185. package/template/src/uni_modules/uview-plus/components/u-loading-icon/props.js +61 -0
  186. package/template/src/uni_modules/uview-plus/components/u-loading-icon/u-loading-icon.vue +348 -0
  187. package/template/src/uni_modules/uview-plus/components/u-loading-page/loadingPage.js +24 -0
  188. package/template/src/uni_modules/uview-plus/components/u-loading-page/props.js +57 -0
  189. package/template/src/uni_modules/uview-plus/components/u-loading-page/u-loading-page.vue +121 -0
  190. package/template/src/uni_modules/uview-plus/components/u-loadmore/loadmore.js +32 -0
  191. package/template/src/uni_modules/uview-plus/components/u-loadmore/props.js +96 -0
  192. package/template/src/uni_modules/uview-plus/components/u-loadmore/u-loadmore.vue +154 -0
  193. package/template/src/uni_modules/uview-plus/components/u-message-input/u-message-input.vue +318 -0
  194. package/template/src/uni_modules/uview-plus/components/u-modal/modal.js +35 -0
  195. package/template/src/uni_modules/uview-plus/components/u-modal/props.js +111 -0
  196. package/template/src/uni_modules/uview-plus/components/u-modal/u-modal.vue +265 -0
  197. package/template/src/uni_modules/uview-plus/components/u-navbar/navbar.js +33 -0
  198. package/template/src/uni_modules/uview-plus/components/u-navbar/props.js +97 -0
  199. package/template/src/uni_modules/uview-plus/components/u-navbar/u-navbar.vue +200 -0
  200. package/template/src/uni_modules/uview-plus/components/u-navbar-mini/props.js +51 -0
  201. package/template/src/uni_modules/uview-plus/components/u-navbar-mini/u-navbar-mini.vue +137 -0
  202. package/template/src/uni_modules/uview-plus/components/u-no-network/noNetwork.js +18 -0
  203. package/template/src/uni_modules/uview-plus/components/u-no-network/props.js +21 -0
  204. package/template/src/uni_modules/uview-plus/components/u-no-network/u-no-network.vue +222 -0
  205. package/template/src/uni_modules/uview-plus/components/u-notice-bar/noticeBar.js +28 -0
  206. package/template/src/uni_modules/uview-plus/components/u-notice-bar/props.js +76 -0
  207. package/template/src/uni_modules/uview-plus/components/u-notice-bar/u-notice-bar.vue +105 -0
  208. package/template/src/uni_modules/uview-plus/components/u-notify/notify.js +22 -0
  209. package/template/src/uni_modules/uview-plus/components/u-notify/props.js +51 -0
  210. package/template/src/uni_modules/uview-plus/components/u-notify/u-notify.vue +216 -0
  211. package/template/src/uni_modules/uview-plus/components/u-number-box/numberBox.js +39 -0
  212. package/template/src/uni_modules/uview-plus/components/u-number-box/props.js +140 -0
  213. package/template/src/uni_modules/uview-plus/components/u-number-box/u-number-box.vue +478 -0
  214. package/template/src/uni_modules/uview-plus/components/u-number-keyboard/numberKeyboard.js +17 -0
  215. package/template/src/uni_modules/uview-plus/components/u-number-keyboard/props.js +21 -0
  216. package/template/src/uni_modules/uview-plus/components/u-number-keyboard/u-number-keyboard.vue +198 -0
  217. package/template/src/uni_modules/uview-plus/components/u-overlay/overlay.js +18 -0
  218. package/template/src/uni_modules/uview-plus/components/u-overlay/props.js +26 -0
  219. package/template/src/uni_modules/uview-plus/components/u-overlay/u-overlay.vue +71 -0
  220. package/template/src/uni_modules/uview-plus/components/u-pagination/u-pagination.vue +283 -0
  221. package/template/src/uni_modules/uview-plus/components/u-parse/node/node.vue +598 -0
  222. package/template/src/uni_modules/uview-plus/components/u-parse/parse.js +22 -0
  223. package/template/src/uni_modules/uview-plus/components/u-parse/parser.js +1400 -0
  224. package/template/src/uni_modules/uview-plus/components/u-parse/props.js +48 -0
  225. package/template/src/uni_modules/uview-plus/components/u-parse/u-parse.vue +504 -0
  226. package/template/src/uni_modules/uview-plus/components/u-picker/picker.js +40 -0
  227. package/template/src/uni_modules/uview-plus/components/u-picker/props.js +147 -0
  228. package/template/src/uni_modules/uview-plus/components/u-picker/u-picker.vue +472 -0
  229. package/template/src/uni_modules/uview-plus/components/u-picker-column/props.js +7 -0
  230. package/template/src/uni_modules/uview-plus/components/u-picker-column/u-picker-column.vue +28 -0
  231. package/template/src/uni_modules/uview-plus/components/u-picker-data/u-picker-data.vue +130 -0
  232. package/template/src/uni_modules/uview-plus/components/u-popup/popup.js +29 -0
  233. package/template/src/uni_modules/uview-plus/components/u-popup/props.js +81 -0
  234. package/template/src/uni_modules/uview-plus/components/u-popup/u-popup.vue +335 -0
  235. package/template/src/uni_modules/uview-plus/components/u-qrcode/qrcode.js +1319 -0
  236. package/template/src/uni_modules/uview-plus/components/u-qrcode/u-qrcode.vue +449 -0
  237. package/template/src/uni_modules/uview-plus/components/u-radio/props.js +71 -0
  238. package/template/src/uni_modules/uview-plus/components/u-radio/radio.js +27 -0
  239. package/template/src/uni_modules/uview-plus/components/u-radio/u-radio.vue +350 -0
  240. package/template/src/uni_modules/uview-plus/components/u-radio-group/props.js +100 -0
  241. package/template/src/uni_modules/uview-plus/components/u-radio-group/radioGroup.js +31 -0
  242. package/template/src/uni_modules/uview-plus/components/u-radio-group/u-radio-group.vue +136 -0
  243. package/template/src/uni_modules/uview-plus/components/u-rate/props.js +80 -0
  244. package/template/src/uni_modules/uview-plus/components/u-rate/rate.js +26 -0
  245. package/template/src/uni_modules/uview-plus/components/u-rate/u-rate.vue +327 -0
  246. package/template/src/uni_modules/uview-plus/components/u-read-more/props.js +63 -0
  247. package/template/src/uni_modules/uview-plus/components/u-read-more/readMore.js +22 -0
  248. package/template/src/uni_modules/uview-plus/components/u-read-more/u-read-more.vue +165 -0
  249. package/template/src/uni_modules/uview-plus/components/u-row/props.js +21 -0
  250. package/template/src/uni_modules/uview-plus/components/u-row/row.js +17 -0
  251. package/template/src/uni_modules/uview-plus/components/u-row/u-row.vue +96 -0
  252. package/template/src/uni_modules/uview-plus/components/u-row-notice/props.js +41 -0
  253. package/template/src/uni_modules/uview-plus/components/u-row-notice/rowNotice.js +21 -0
  254. package/template/src/uni_modules/uview-plus/components/u-row-notice/u-row-notice.vue +336 -0
  255. package/template/src/uni_modules/uview-plus/components/u-safe-bottom/props.js +7 -0
  256. package/template/src/uni_modules/uview-plus/components/u-safe-bottom/u-safe-bottom.vue +59 -0
  257. package/template/src/uni_modules/uview-plus/components/u-scroll-list/nvue.js +31 -0
  258. package/template/src/uni_modules/uview-plus/components/u-scroll-list/other.js +0 -0
  259. package/template/src/uni_modules/uview-plus/components/u-scroll-list/props.js +36 -0
  260. package/template/src/uni_modules/uview-plus/components/u-scroll-list/scrollList.js +20 -0
  261. package/template/src/uni_modules/uview-plus/components/u-scroll-list/scrollWxs.wxs +50 -0
  262. package/template/src/uni_modules/uview-plus/components/u-scroll-list/u-scroll-list.vue +233 -0
  263. package/template/src/uni_modules/uview-plus/components/u-search/props.js +138 -0
  264. package/template/src/uni_modules/uview-plus/components/u-search/search.js +38 -0
  265. package/template/src/uni_modules/uview-plus/components/u-search/u-search.vue +342 -0
  266. package/template/src/uni_modules/uview-plus/components/u-section/section.js +24 -0
  267. package/template/src/uni_modules/uview-plus/components/u-select/u-select.vue +218 -0
  268. package/template/src/uni_modules/uview-plus/components/u-skeleton/props.js +61 -0
  269. package/template/src/uni_modules/uview-plus/components/u-skeleton/skeleton.js +25 -0
  270. package/template/src/uni_modules/uview-plus/components/u-skeleton/u-skeleton.vue +248 -0
  271. package/template/src/uni_modules/uview-plus/components/u-slider/mpother.js +113 -0
  272. package/template/src/uni_modules/uview-plus/components/u-slider/mpwxs.js +43 -0
  273. package/template/src/uni_modules/uview-plus/components/u-slider/mpwxs.wxs +121 -0
  274. package/template/src/uni_modules/uview-plus/components/u-slider/nvue.js +193 -0
  275. package/template/src/uni_modules/uview-plus/components/u-slider/props.js +91 -0
  276. package/template/src/uni_modules/uview-plus/components/u-slider/slider.js +27 -0
  277. package/template/src/uni_modules/uview-plus/components/u-slider/u-slider.vue +506 -0
  278. package/template/src/uni_modules/uview-plus/components/u-status-bar/props.js +15 -0
  279. package/template/src/uni_modules/uview-plus/components/u-status-bar/statusBar.js +16 -0
  280. package/template/src/uni_modules/uview-plus/components/u-status-bar/u-status-bar.vue +63 -0
  281. package/template/src/uni_modules/uview-plus/components/u-steps/props.js +41 -0
  282. package/template/src/uni_modules/uview-plus/components/u-steps/steps.js +21 -0
  283. package/template/src/uni_modules/uview-plus/components/u-steps/u-steps.vue +94 -0
  284. package/template/src/uni_modules/uview-plus/components/u-steps-item/props.js +31 -0
  285. package/template/src/uni_modules/uview-plus/components/u-steps-item/stepsItem.js +18 -0
  286. package/template/src/uni_modules/uview-plus/components/u-steps-item/u-steps-item.vue +342 -0
  287. package/template/src/uni_modules/uview-plus/components/u-sticky/props.js +42 -0
  288. package/template/src/uni_modules/uview-plus/components/u-sticky/sticky.js +20 -0
  289. package/template/src/uni_modules/uview-plus/components/u-sticky/u-sticky.vue +221 -0
  290. package/template/src/uni_modules/uview-plus/components/u-subsection/props.js +67 -0
  291. package/template/src/uni_modules/uview-plus/components/u-subsection/subsection.js +26 -0
  292. package/template/src/uni_modules/uview-plus/components/u-subsection/u-subsection.vue +401 -0
  293. package/template/src/uni_modules/uview-plus/components/u-swipe-action/props.js +16 -0
  294. package/template/src/uni_modules/uview-plus/components/u-swipe-action/swipeAction.js +15 -0
  295. package/template/src/uni_modules/uview-plus/components/u-swipe-action/u-swipe-action.vue +84 -0
  296. package/template/src/uni_modules/uview-plus/components/u-swipe-action-item/alipay.sjs +229 -0
  297. package/template/src/uni_modules/uview-plus/components/u-swipe-action-item/index - backup.wxs +256 -0
  298. package/template/src/uni_modules/uview-plus/components/u-swipe-action-item/index.wxs +234 -0
  299. package/template/src/uni_modules/uview-plus/components/u-swipe-action-item/nvue - backup.js +270 -0
  300. package/template/src/uni_modules/uview-plus/components/u-swipe-action-item/nvue.js +174 -0
  301. package/template/src/uni_modules/uview-plus/components/u-swipe-action-item/other.js +178 -0
  302. package/template/src/uni_modules/uview-plus/components/u-swipe-action-item/props.js +47 -0
  303. package/template/src/uni_modules/uview-plus/components/u-swipe-action-item/swipeActionItem.js +22 -0
  304. package/template/src/uni_modules/uview-plus/components/u-swipe-action-item/u-swipe-action-item.vue +249 -0
  305. package/template/src/uni_modules/uview-plus/components/u-swipe-action-item/wxs.js +15 -0
  306. package/template/src/uni_modules/uview-plus/components/u-swiper/props.js +127 -0
  307. package/template/src/uni_modules/uview-plus/components/u-swiper/swiper.js +39 -0
  308. package/template/src/uni_modules/uview-plus/components/u-swiper/u-swiper.vue +269 -0
  309. package/template/src/uni_modules/uview-plus/components/u-swiper-indicator/props.js +31 -0
  310. package/template/src/uni_modules/uview-plus/components/u-swiper-indicator/swipterIndicator.js +19 -0
  311. package/template/src/uni_modules/uview-plus/components/u-swiper-indicator/u-swiper-indicator.vue +114 -0
  312. package/template/src/uni_modules/uview-plus/components/u-switch/props.js +64 -0
  313. package/template/src/uni_modules/uview-plus/components/u-switch/switch.js +24 -0
  314. package/template/src/uni_modules/uview-plus/components/u-switch/u-switch.vue +215 -0
  315. package/template/src/uni_modules/uview-plus/components/u-tabbar/props.js +47 -0
  316. package/template/src/uni_modules/uview-plus/components/u-tabbar/tabbar.js +22 -0
  317. package/template/src/uni_modules/uview-plus/components/u-tabbar/u-tabbar.vue +144 -0
  318. package/template/src/uni_modules/uview-plus/components/u-tabbar-item/props.js +37 -0
  319. package/template/src/uni_modules/uview-plus/components/u-tabbar-item/tabbarItem.js +20 -0
  320. package/template/src/uni_modules/uview-plus/components/u-tabbar-item/u-tabbar-item.vue +157 -0
  321. package/template/src/uni_modules/uview-plus/components/u-table/props.js +7 -0
  322. package/template/src/uni_modules/uview-plus/components/u-table/u-table.vue +104 -0
  323. package/template/src/uni_modules/uview-plus/components/u-table2/u-table2.vue +517 -0
  324. package/template/src/uni_modules/uview-plus/components/u-tabs/props.js +71 -0
  325. package/template/src/uni_modules/uview-plus/components/u-tabs/tabs.js +33 -0
  326. package/template/src/uni_modules/uview-plus/components/u-tabs/u-tabs.vue +411 -0
  327. package/template/src/uni_modules/uview-plus/components/u-tabs-item/props.js +7 -0
  328. package/template/src/uni_modules/uview-plus/components/u-tabs-item/u-tabs-item.vue +31 -0
  329. package/template/src/uni_modules/uview-plus/components/u-tag/props.js +116 -0
  330. package/template/src/uni_modules/uview-plus/components/u-tag/tag.js +35 -0
  331. package/template/src/uni_modules/uview-plus/components/u-tag/u-tag.vue +402 -0
  332. package/template/src/uni_modules/uview-plus/components/u-td/props.js +7 -0
  333. package/template/src/uni_modules/uview-plus/components/u-td/u-td.vue +98 -0
  334. package/template/src/uni_modules/uview-plus/components/u-text/props.js +117 -0
  335. package/template/src/uni_modules/uview-plus/components/u-text/text.js +39 -0
  336. package/template/src/uni_modules/uview-plus/components/u-text/u-text.vue +234 -0
  337. package/template/src/uni_modules/uview-plus/components/u-text/value.js +87 -0
  338. package/template/src/uni_modules/uview-plus/components/u-textarea/props.js +127 -0
  339. package/template/src/uni_modules/uview-plus/components/u-textarea/textarea.js +36 -0
  340. package/template/src/uni_modules/uview-plus/components/u-textarea/u-textarea.vue +285 -0
  341. package/template/src/uni_modules/uview-plus/components/u-th/props.js +7 -0
  342. package/template/src/uni_modules/uview-plus/components/u-th/u-th.vue +66 -0
  343. package/template/src/uni_modules/uview-plus/components/u-title/u-title.vue +36 -0
  344. package/template/src/uni_modules/uview-plus/components/u-toast/toast.js +30 -0
  345. package/template/src/uni_modules/uview-plus/components/u-toast/u-toast.vue +304 -0
  346. package/template/src/uni_modules/uview-plus/components/u-toolbar/props.js +41 -0
  347. package/template/src/uni_modules/uview-plus/components/u-toolbar/toolbar.js +21 -0
  348. package/template/src/uni_modules/uview-plus/components/u-toolbar/u-toolbar.vue +125 -0
  349. package/template/src/uni_modules/uview-plus/components/u-tooltip/props.js +61 -0
  350. package/template/src/uni_modules/uview-plus/components/u-tooltip/tooltip.js +25 -0
  351. package/template/src/uni_modules/uview-plus/components/u-tooltip/u-tooltip.vue +341 -0
  352. package/template/src/uni_modules/uview-plus/components/u-tr/props.js +7 -0
  353. package/template/src/uni_modules/uview-plus/components/u-tr/u-tr.vue +34 -0
  354. package/template/src/uni_modules/uview-plus/components/u-transition/nvue-ani-map.js +68 -0
  355. package/template/src/uni_modules/uview-plus/components/u-transition/props.js +26 -0
  356. package/template/src/uni_modules/uview-plus/components/u-transition/transition.js +18 -0
  357. package/template/src/uni_modules/uview-plus/components/u-transition/transitionMixin.js +163 -0
  358. package/template/src/uni_modules/uview-plus/components/u-transition/u-transition.vue +207 -0
  359. package/template/src/uni_modules/uview-plus/components/u-transition/vue.ani-style.scss +113 -0
  360. package/template/src/uni_modules/uview-plus/components/u-tree/tree-node.vue +128 -0
  361. package/template/src/uni_modules/uview-plus/components/u-tree/u-tree.vue +117 -0
  362. package/template/src/uni_modules/uview-plus/components/u-upload/mixin.js +23 -0
  363. package/template/src/uni_modules/uview-plus/components/u-upload/props.js +176 -0
  364. package/template/src/uni_modules/uview-plus/components/u-upload/u-upload.vue +925 -0
  365. package/template/src/uni_modules/uview-plus/components/u-upload/upload.js +46 -0
  366. package/template/src/uni_modules/uview-plus/components/u-upload/utils.js +184 -0
  367. package/template/src/uni_modules/uview-plus/components/u-view/u-view.vue +71 -0
  368. package/template/src/uni_modules/uview-plus/components/u-waterfall/u-waterfall.vue +244 -0
  369. package/template/src/uni_modules/uview-plus/components/uview-plus/uview-plus.vue +15 -0
  370. package/template/src/uni_modules/uview-plus/index.js +154 -0
  371. package/template/src/uni_modules/uview-plus/index.scss +25 -0
  372. package/template/src/uni_modules/uview-plus/libs/config/color.js +17 -0
  373. package/template/src/uni_modules/uview-plus/libs/config/config.js +54 -0
  374. package/template/src/uni_modules/uview-plus/libs/config/props.js +216 -0
  375. package/template/src/uni_modules/uview-plus/libs/config/zIndex.js +20 -0
  376. package/template/src/uni_modules/uview-plus/libs/css/color.scss +311 -0
  377. package/template/src/uni_modules/uview-plus/libs/css/common.scss +112 -0
  378. package/template/src/uni_modules/uview-plus/libs/css/components.scss +34 -0
  379. package/template/src/uni_modules/uview-plus/libs/css/flex.scss +368 -0
  380. package/template/src/uni_modules/uview-plus/libs/css/h5.scss +0 -0
  381. package/template/src/uni_modules/uview-plus/libs/css/mixin.scss +8 -0
  382. package/template/src/uni_modules/uview-plus/libs/css/mp.scss +0 -0
  383. package/template/src/uni_modules/uview-plus/libs/css/nvue.scss +0 -0
  384. package/template/src/uni_modules/uview-plus/libs/css/vue.scss +28 -0
  385. package/template/src/uni_modules/uview-plus/libs/function/calc.js +64 -0
  386. package/template/src/uni_modules/uview-plus/libs/function/colorGradient.js +134 -0
  387. package/template/src/uni_modules/uview-plus/libs/function/debounce.js +29 -0
  388. package/template/src/uni_modules/uview-plus/libs/function/digit.js +167 -0
  389. package/template/src/uni_modules/uview-plus/libs/function/http.js +4 -0
  390. package/template/src/uni_modules/uview-plus/libs/function/index.js +853 -0
  391. package/template/src/uni_modules/uview-plus/libs/function/platform.js +75 -0
  392. package/template/src/uni_modules/uview-plus/libs/function/test.js +327 -0
  393. package/template/src/uni_modules/uview-plus/libs/function/throttle.js +30 -0
  394. package/template/src/uni_modules/uview-plus/libs/luch-request/adapters/index.js +97 -0
  395. package/template/src/uni_modules/uview-plus/libs/luch-request/core/InterceptorManager.js +50 -0
  396. package/template/src/uni_modules/uview-plus/libs/luch-request/core/Request.js +199 -0
  397. package/template/src/uni_modules/uview-plus/libs/luch-request/core/buildFullPath.js +20 -0
  398. package/template/src/uni_modules/uview-plus/libs/luch-request/core/defaults.js +29 -0
  399. package/template/src/uni_modules/uview-plus/libs/luch-request/core/dispatchRequest.js +3 -0
  400. package/template/src/uni_modules/uview-plus/libs/luch-request/core/mergeConfig.js +103 -0
  401. package/template/src/uni_modules/uview-plus/libs/luch-request/core/settle.js +16 -0
  402. package/template/src/uni_modules/uview-plus/libs/luch-request/helpers/buildURL.js +69 -0
  403. package/template/src/uni_modules/uview-plus/libs/luch-request/helpers/combineURLs.js +14 -0
  404. package/template/src/uni_modules/uview-plus/libs/luch-request/helpers/isAbsoluteURL.js +14 -0
  405. package/template/src/uni_modules/uview-plus/libs/luch-request/index.d.ts +116 -0
  406. package/template/src/uni_modules/uview-plus/libs/luch-request/index.js +3 -0
  407. package/template/src/uni_modules/uview-plus/libs/luch-request/utils/clone.js +264 -0
  408. package/template/src/uni_modules/uview-plus/libs/luch-request/utils.js +131 -0
  409. package/template/src/uni_modules/uview-plus/libs/mixin/button.js +18 -0
  410. package/template/src/uni_modules/uview-plus/libs/mixin/mixin.js +201 -0
  411. package/template/src/uni_modules/uview-plus/libs/mixin/mpMixin.js +13 -0
  412. package/template/src/uni_modules/uview-plus/libs/mixin/mpShare.js +26 -0
  413. package/template/src/uni_modules/uview-plus/libs/mixin/openType.js +27 -0
  414. package/template/src/uni_modules/uview-plus/libs/mixin/style.js +249 -0
  415. package/template/src/uni_modules/uview-plus/libs/mixin/touch.js +61 -0
  416. package/template/src/uni_modules/uview-plus/libs/util/async-validator.js +1343 -0
  417. package/template/src/uni_modules/uview-plus/libs/util/calendar.js +546 -0
  418. package/template/src/uni_modules/uview-plus/libs/util/emitter.js +51 -0
  419. package/template/src/uni_modules/uview-plus/libs/util/gcanvas/bridge/bridge-weex.js +241 -0
  420. package/template/src/uni_modules/uview-plus/libs/util/gcanvas/context-2d/FillStyleLinearGradient.js +18 -0
  421. package/template/src/uni_modules/uview-plus/libs/util/gcanvas/context-2d/FillStylePattern.js +8 -0
  422. package/template/src/uni_modules/uview-plus/libs/util/gcanvas/context-2d/FillStyleRadialGradient.js +17 -0
  423. package/template/src/uni_modules/uview-plus/libs/util/gcanvas/context-2d/RenderingContext.js +666 -0
  424. package/template/src/uni_modules/uview-plus/libs/util/gcanvas/context-webgl/ActiveInfo.js +11 -0
  425. package/template/src/uni_modules/uview-plus/libs/util/gcanvas/context-webgl/Buffer.js +21 -0
  426. package/template/src/uni_modules/uview-plus/libs/util/gcanvas/context-webgl/Framebuffer.js +21 -0
  427. package/template/src/uni_modules/uview-plus/libs/util/gcanvas/context-webgl/GLenum.js +298 -0
  428. package/template/src/uni_modules/uview-plus/libs/util/gcanvas/context-webgl/GLmethod.js +142 -0
  429. package/template/src/uni_modules/uview-plus/libs/util/gcanvas/context-webgl/GLtype.js +23 -0
  430. package/template/src/uni_modules/uview-plus/libs/util/gcanvas/context-webgl/Program.js +21 -0
  431. package/template/src/uni_modules/uview-plus/libs/util/gcanvas/context-webgl/Renderbuffer.js +21 -0
  432. package/template/src/uni_modules/uview-plus/libs/util/gcanvas/context-webgl/RenderingContext.js +1191 -0
  433. package/template/src/uni_modules/uview-plus/libs/util/gcanvas/context-webgl/Shader.js +22 -0
  434. package/template/src/uni_modules/uview-plus/libs/util/gcanvas/context-webgl/ShaderPrecisionFormat.js +11 -0
  435. package/template/src/uni_modules/uview-plus/libs/util/gcanvas/context-webgl/Texture.js +22 -0
  436. package/template/src/uni_modules/uview-plus/libs/util/gcanvas/context-webgl/UniformLocation.js +22 -0
  437. package/template/src/uni_modules/uview-plus/libs/util/gcanvas/context-webgl/classUtils.js +3 -0
  438. package/template/src/uni_modules/uview-plus/libs/util/gcanvas/env/canvas.js +74 -0
  439. package/template/src/uni_modules/uview-plus/libs/util/gcanvas/env/image.js +96 -0
  440. package/template/src/uni_modules/uview-plus/libs/util/gcanvas/env/tool.js +24 -0
  441. package/template/src/uni_modules/uview-plus/libs/util/gcanvas/index.js +39 -0
  442. package/template/src/uni_modules/uview-plus/libs/util/route.js +124 -0
  443. package/template/src/uni_modules/uview-plus/libs/vue.js +3 -0
  444. package/template/src/uni_modules/uview-plus/package.json +113 -0
  445. package/template/src/uni_modules/uview-plus/theme.scss +44 -0
  446. package/template/src/uni_modules/uview-plus/types/comps/_common.d.ts +9 -0
  447. package/template/src/uni_modules/uview-plus/types/comps/actionSheet.d.ts +121 -0
  448. package/template/src/uni_modules/uview-plus/types/comps/album.d.ts +82 -0
  449. package/template/src/uni_modules/uview-plus/types/comps/alert.d.ts +55 -0
  450. package/template/src/uni_modules/uview-plus/types/comps/avatar.d.ts +85 -0
  451. package/template/src/uni_modules/uview-plus/types/comps/avatarGroup.d.ts +62 -0
  452. package/template/src/uni_modules/uview-plus/types/comps/backTop.d.ts +74 -0
  453. package/template/src/uni_modules/uview-plus/types/comps/badge.d.ts +76 -0
  454. package/template/src/uni_modules/uview-plus/types/comps/button.d.ts +169 -0
  455. package/template/src/uni_modules/uview-plus/types/comps/calendar.d.ts +164 -0
  456. package/template/src/uni_modules/uview-plus/types/comps/cell.d.ts +133 -0
  457. package/template/src/uni_modules/uview-plus/types/comps/cellGroup.d.ts +27 -0
  458. package/template/src/uni_modules/uview-plus/types/comps/checkbox.d.ts +69 -0
  459. package/template/src/uni_modules/uview-plus/types/comps/checkboxGroup.d.ts +93 -0
  460. package/template/src/uni_modules/uview-plus/types/comps/code.d.ts +69 -0
  461. package/template/src/uni_modules/uview-plus/types/comps/codeInput.d.ts +98 -0
  462. package/template/src/uni_modules/uview-plus/types/comps/col.d.ts +43 -0
  463. package/template/src/uni_modules/uview-plus/types/comps/collapse.d.ts +52 -0
  464. package/template/src/uni_modules/uview-plus/types/comps/collapseItem.d.ts +83 -0
  465. package/template/src/uni_modules/uview-plus/types/comps/countDown.d.ts +60 -0
  466. package/template/src/uni_modules/uview-plus/types/comps/countTo.d.ts +88 -0
  467. package/template/src/uni_modules/uview-plus/types/comps/datetimePicker.d.ts +146 -0
  468. package/template/src/uni_modules/uview-plus/types/comps/divider.d.ts +58 -0
  469. package/template/src/uni_modules/uview-plus/types/comps/empty.d.ts +72 -0
  470. package/template/src/uni_modules/uview-plus/types/comps/form.d.ts +76 -0
  471. package/template/src/uni_modules/uview-plus/types/comps/formItem.d.ts +68 -0
  472. package/template/src/uni_modules/uview-plus/types/comps/gap.d.ts +35 -0
  473. package/template/src/uni_modules/uview-plus/types/comps/grid.d.ts +34 -0
  474. package/template/src/uni_modules/uview-plus/types/comps/gridItem.d.ts +28 -0
  475. package/template/src/uni_modules/uview-plus/types/comps/icon.d.ts +93 -0
  476. package/template/src/uni_modules/uview-plus/types/comps/image.d.ts +119 -0
  477. package/template/src/uni_modules/uview-plus/types/comps/indexAnchor.d.ts +38 -0
  478. package/template/src/uni_modules/uview-plus/types/comps/indexItem.d.ts +18 -0
  479. package/template/src/uni_modules/uview-plus/types/comps/indexList.d.ts +39 -0
  480. package/template/src/uni_modules/uview-plus/types/comps/input.d.ts +234 -0
  481. package/template/src/uni_modules/uview-plus/types/comps/keyboard.d.ts +125 -0
  482. package/template/src/uni_modules/uview-plus/types/comps/line.d.ts +44 -0
  483. package/template/src/uni_modules/uview-plus/types/comps/lineProgress.d.ts +51 -0
  484. package/template/src/uni_modules/uview-plus/types/comps/link.d.ts +51 -0
  485. package/template/src/uni_modules/uview-plus/types/comps/list.d.ts +92 -0
  486. package/template/src/uni_modules/uview-plus/types/comps/listItem.d.ts +18 -0
  487. package/template/src/uni_modules/uview-plus/types/comps/loadMore.d.ts +108 -0
  488. package/template/src/uni_modules/uview-plus/types/comps/loadingIcon.d.ts +68 -0
  489. package/template/src/uni_modules/uview-plus/types/comps/loadingPage.d.ts +58 -0
  490. package/template/src/uni_modules/uview-plus/types/comps/modal.d.ts +115 -0
  491. package/template/src/uni_modules/uview-plus/types/comps/navbar.d.ts +118 -0
  492. package/template/src/uni_modules/uview-plus/types/comps/noNetwork.d.ts +40 -0
  493. package/template/src/uni_modules/uview-plus/types/comps/noticeBar.d.ts +85 -0
  494. package/template/src/uni_modules/uview-plus/types/comps/notify.d.ts +73 -0
  495. package/template/src/uni_modules/uview-plus/types/comps/numberBox.d.ts +155 -0
  496. package/template/src/uni_modules/uview-plus/types/comps/overlay.d.ts +46 -0
  497. package/template/src/uni_modules/uview-plus/types/comps/parse.d.ts +101 -0
  498. package/template/src/uni_modules/uview-plus/types/comps/picker.d.ts +115 -0
  499. package/template/src/uni_modules/uview-plus/types/comps/popup.d.ts +103 -0
  500. package/template/src/uni_modules/uview-plus/types/comps/qrcode.d.ts +77 -0
  501. package/template/src/uni_modules/uview-plus/types/comps/radio.d.ts +77 -0
  502. package/template/src/uni_modules/uview-plus/types/comps/radioGroup.d.ts +97 -0
  503. package/template/src/uni_modules/uview-plus/types/comps/rate.d.ts +85 -0
  504. package/template/src/uni_modules/uview-plus/types/comps/readMore.d.ts +80 -0
  505. package/template/src/uni_modules/uview-plus/types/comps/row.d.ts +34 -0
  506. package/template/src/uni_modules/uview-plus/types/comps/safeBottom.d.ts +16 -0
  507. package/template/src/uni_modules/uview-plus/types/comps/scrollList.d.ts +51 -0
  508. package/template/src/uni_modules/uview-plus/types/comps/search.d.ts +180 -0
  509. package/template/src/uni_modules/uview-plus/types/comps/skeleton.d.ts +70 -0
  510. package/template/src/uni_modules/uview-plus/types/comps/slider.d.ts +79 -0
  511. package/template/src/uni_modules/uview-plus/types/comps/statusBar.d.ts +22 -0
  512. package/template/src/uni_modules/uview-plus/types/comps/steps.d.ts +48 -0
  513. package/template/src/uni_modules/uview-plus/types/comps/stepsItem.d.ts +41 -0
  514. package/template/src/uni_modules/uview-plus/types/comps/sticky.d.ts +48 -0
  515. package/template/src/uni_modules/uview-plus/types/comps/subsection.d.ts +80 -0
  516. package/template/src/uni_modules/uview-plus/types/comps/swipeAction.d.ts +24 -0
  517. package/template/src/uni_modules/uview-plus/types/comps/swipeActionItem.d.ts +58 -0
  518. package/template/src/uni_modules/uview-plus/types/comps/swiper.d.ts +142 -0
  519. package/template/src/uni_modules/uview-plus/types/comps/swiperIndicator.d.ts +37 -0
  520. package/template/src/uni_modules/uview-plus/types/comps/switch.d.ts +73 -0
  521. package/template/src/uni_modules/uview-plus/types/comps/tabbar.d.ts +54 -0
  522. package/template/src/uni_modules/uview-plus/types/comps/tabbarItem.d.ts +52 -0
  523. package/template/src/uni_modules/uview-plus/types/comps/tabs.d.ts +85 -0
  524. package/template/src/uni_modules/uview-plus/types/comps/tag.d.ts +93 -0
  525. package/template/src/uni_modules/uview-plus/types/comps/text.d.ts +110 -0
  526. package/template/src/uni_modules/uview-plus/types/comps/textarea.d.ts +158 -0
  527. package/template/src/uni_modules/uview-plus/types/comps/toast.d.ts +63 -0
  528. package/template/src/uni_modules/uview-plus/types/comps/tooltip.d.ts +71 -0
  529. package/template/src/uni_modules/uview-plus/types/comps/transition.d.ts +61 -0
  530. package/template/src/uni_modules/uview-plus/types/comps/upload.d.ts +204 -0
  531. package/template/src/uni_modules/uview-plus/types/comps.d.ts +102 -0
  532. package/template/src/uni_modules/uview-plus/types/index.d.ts +172 -0
  533. package/template/src/uni_modules/uview-plus/types/package.json +26 -0
  534. package/template/src/utils/request.ts +3 -0
  535. package/template/src/uview-plus.d.ts +2 -0
  536. package/template/tailwind.config.ts +15 -0
  537. package/template/tsconfig.json +26 -0
  538. package/template/vite.config.ts +45 -0
@@ -0,0 +1,1319 @@
1
+ let QRCode = {};
2
+ (function () {
3
+ /**
4
+ * 获取单个字符的utf8编码
5
+ * unicode BMP平面约65535个字符
6
+ * @param {num} code
7
+ * return {array}
8
+ */
9
+ function unicodeFormat8(code) {
10
+ // 1 byte
11
+ var c0, c1, c2;
12
+ if (code < 128) {
13
+ return [code];
14
+ // 2 bytes
15
+ } else if (code < 2048) {
16
+ c0 = 192 + (code >> 6);
17
+ c1 = 128 + (code & 63);
18
+ return [c0, c1];
19
+ // 3 bytes
20
+ } else {
21
+ c0 = 224 + (code >> 12);
22
+ c1 = 128 + (code >> 6 & 63);
23
+ c2 = 128 + (code & 63);
24
+ return [c0, c1, c2];
25
+ }
26
+ }
27
+ /**
28
+ * 获取字符串的utf8编码字节串
29
+ * @param {string} string
30
+ * @return {array}
31
+ */
32
+ function getUTF8Bytes(string) {
33
+ var utf8codes = [];
34
+ for (var i = 0; i < string.length; i++) {
35
+ var code = string.charCodeAt(i);
36
+ var utf8 = unicodeFormat8(code);
37
+ for (var j = 0; j < utf8.length; j++) {
38
+ utf8codes.push(utf8[j]);
39
+ }
40
+ }
41
+ return utf8codes;
42
+ }
43
+ /**
44
+ * 二维码算法实现
45
+ * @param {string} data 要编码的信息字符串
46
+ * @param {num} errorCorrectLevel 纠错等级
47
+ */
48
+ function QRCodeAlg(data, errorCorrectLevel) {
49
+ this.typeNumber = -1; //版本
50
+ this.errorCorrectLevel = errorCorrectLevel;
51
+ this.modules = null; //二维矩阵,存放最终结果
52
+ this.moduleCount = 0; //矩阵大小
53
+ this.dataCache = null; //数据缓存
54
+ this.rsBlocks = null; //版本数据信息
55
+ this.totalDataCount = -1; //可使用的数据量
56
+ this.data = data;
57
+ this.utf8bytes = getUTF8Bytes(data);
58
+ this.make();
59
+ }
60
+ QRCodeAlg.prototype = {
61
+ constructor: QRCodeAlg,
62
+ /**
63
+ * 获取二维码矩阵大小
64
+ * @return {num} 矩阵大小
65
+ */
66
+ getModuleCount: function () {
67
+ return this.moduleCount;
68
+ },
69
+ /**
70
+ * 编码
71
+ */
72
+ make: function () {
73
+ this.getRightType();
74
+ this.dataCache = this.createData();
75
+ this.createQrcode();
76
+ },
77
+ /**
78
+ * 设置二位矩阵功能图形
79
+ * @param {bool} test 表示是否在寻找最好掩膜阶段
80
+ * @param {num} maskPattern 掩膜的版本
81
+ */
82
+ makeImpl: function (maskPattern) {
83
+ this.moduleCount = this.typeNumber * 4 + 17;
84
+ this.modules = new Array(this.moduleCount);
85
+ for (var row = 0; row < this.moduleCount; row++) {
86
+ this.modules[row] = new Array(this.moduleCount);
87
+ }
88
+ this.setupPositionProbePattern(0, 0);
89
+ this.setupPositionProbePattern(this.moduleCount - 7, 0);
90
+ this.setupPositionProbePattern(0, this.moduleCount - 7);
91
+ this.setupPositionAdjustPattern();
92
+ this.setupTimingPattern();
93
+ this.setupTypeInfo(true, maskPattern);
94
+ if (this.typeNumber >= 7) {
95
+ this.setupTypeNumber(true);
96
+ }
97
+ this.mapData(this.dataCache, maskPattern);
98
+ },
99
+ /**
100
+ * 设置二维码的位置探测图形
101
+ * @param {num} row 探测图形的中心横坐标
102
+ * @param {num} col 探测图形的中心纵坐标
103
+ */
104
+ setupPositionProbePattern: function (row, col) {
105
+ for (var r = -1; r <= 7; r++) {
106
+ if (row + r <= -1 || this.moduleCount <= row + r) continue;
107
+ for (var c = -1; c <= 7; c++) {
108
+ if (col + c <= -1 || this.moduleCount <= col + c) continue;
109
+ if ((0 <= r && r <= 6 && (c == 0 || c == 6)) || (0 <= c && c <= 6 && (r == 0 || r == 6)) || (2 <= r && r <= 4 && 2 <= c && c <= 4)) {
110
+ this.modules[row + r][col + c] = true;
111
+ } else {
112
+ this.modules[row + r][col + c] = false;
113
+ }
114
+ }
115
+ }
116
+ },
117
+ /**
118
+ * 创建二维码
119
+ * @return {[type]} [description]
120
+ */
121
+ createQrcode: function () {
122
+ var minLostPoint = 0;
123
+ var pattern = 0;
124
+ var bestModules = null;
125
+ for (var i = 0; i < 8; i++) {
126
+ this.makeImpl(i);
127
+ var lostPoint = QRUtil.getLostPoint(this);
128
+ if (i == 0 || minLostPoint > lostPoint) {
129
+ minLostPoint = lostPoint;
130
+ pattern = i;
131
+ bestModules = this.modules;
132
+ }
133
+ }
134
+ this.modules = bestModules;
135
+ this.setupTypeInfo(false, pattern);
136
+ if (this.typeNumber >= 7) {
137
+ this.setupTypeNumber(false);
138
+ }
139
+ },
140
+ /**
141
+ * 设置定位图形
142
+ * @return {[type]} [description]
143
+ */
144
+ setupTimingPattern: function () {
145
+ for (var r = 8; r < this.moduleCount - 8; r++) {
146
+ if (this.modules[r][6] != null) {
147
+ continue;
148
+ }
149
+ this.modules[r][6] = (r % 2 == 0);
150
+ if (this.modules[6][r] != null) {
151
+ continue;
152
+ }
153
+ this.modules[6][r] = (r % 2 == 0);
154
+ }
155
+ },
156
+ /**
157
+ * 设置矫正图形
158
+ * @return {[type]} [description]
159
+ */
160
+ setupPositionAdjustPattern: function () {
161
+ var pos = QRUtil.getPatternPosition(this.typeNumber);
162
+ for (var i = 0; i < pos.length; i++) {
163
+ for (var j = 0; j < pos.length; j++) {
164
+ var row = pos[i];
165
+ var col = pos[j];
166
+ if (this.modules[row][col] != null) {
167
+ continue;
168
+ }
169
+ for (var r = -2; r <= 2; r++) {
170
+ for (var c = -2; c <= 2; c++) {
171
+ if (r == -2 || r == 2 || c == -2 || c == 2 || (r == 0 && c == 0)) {
172
+ this.modules[row + r][col + c] = true;
173
+ } else {
174
+ this.modules[row + r][col + c] = false;
175
+ }
176
+ }
177
+ }
178
+ }
179
+ }
180
+ },
181
+ /**
182
+ * 设置版本信息(7以上版本才有)
183
+ * @param {bool} test 是否处于判断最佳掩膜阶段
184
+ * @return {[type]} [description]
185
+ */
186
+ setupTypeNumber: function (test) {
187
+ var bits = QRUtil.getBCHTypeNumber(this.typeNumber);
188
+ for (var i = 0; i < 18; i++) {
189
+ var mod = (!test && ((bits >> i) & 1) == 1);
190
+ this.modules[Math.floor(i / 3)][i % 3 + this.moduleCount - 8 - 3] = mod;
191
+ this.modules[i % 3 + this.moduleCount - 8 - 3][Math.floor(i / 3)] = mod;
192
+ }
193
+ },
194
+ /**
195
+ * 设置格式信息(纠错等级和掩膜版本)
196
+ * @param {bool} test
197
+ * @param {num} maskPattern 掩膜版本
198
+ * @return {}
199
+ */
200
+ setupTypeInfo: function (test, maskPattern) {
201
+ var data = (QRErrorCorrectLevel[this.errorCorrectLevel] << 3) | maskPattern;
202
+ var bits = QRUtil.getBCHTypeInfo(data);
203
+ // vertical
204
+ for (var i = 0; i < 15; i++) {
205
+ var mod = (!test && ((bits >> i) & 1) == 1);
206
+ if (i < 6) {
207
+ this.modules[i][8] = mod;
208
+ } else if (i < 8) {
209
+ this.modules[i + 1][8] = mod;
210
+ } else {
211
+ this.modules[this.moduleCount - 15 + i][8] = mod;
212
+ }
213
+ // horizontal
214
+ var mod = (!test && ((bits >> i) & 1) == 1);
215
+ if (i < 8) {
216
+ this.modules[8][this.moduleCount - i - 1] = mod;
217
+ } else if (i < 9) {
218
+ this.modules[8][15 - i - 1 + 1] = mod;
219
+ } else {
220
+ this.modules[8][15 - i - 1] = mod;
221
+ }
222
+ }
223
+ // fixed module
224
+ this.modules[this.moduleCount - 8][8] = (!test);
225
+ },
226
+ /**
227
+ * 数据编码
228
+ * @return {[type]} [description]
229
+ */
230
+ createData: function () {
231
+ var buffer = new QRBitBuffer();
232
+ var lengthBits = this.typeNumber > 9 ? 16 : 8;
233
+ buffer.put(4, 4); //添加模式
234
+ buffer.put(this.utf8bytes.length, lengthBits);
235
+ for (var i = 0, l = this.utf8bytes.length; i < l; i++) {
236
+ buffer.put(this.utf8bytes[i], 8);
237
+ }
238
+ if (buffer.length + 4 <= this.totalDataCount * 8) {
239
+ buffer.put(0, 4);
240
+ }
241
+ // padding
242
+ while (buffer.length % 8 != 0) {
243
+ buffer.putBit(false);
244
+ }
245
+ // padding
246
+ while (true) {
247
+ if (buffer.length >= this.totalDataCount * 8) {
248
+ break;
249
+ }
250
+ buffer.put(QRCodeAlg.PAD0, 8);
251
+ if (buffer.length >= this.totalDataCount * 8) {
252
+ break;
253
+ }
254
+ buffer.put(QRCodeAlg.PAD1, 8);
255
+ }
256
+ return this.createBytes(buffer);
257
+ },
258
+ /**
259
+ * 纠错码编码
260
+ * @param {buffer} buffer 数据编码
261
+ * @return {[type]}
262
+ */
263
+ createBytes: function (buffer) {
264
+ var offset = 0;
265
+ var maxDcCount = 0;
266
+ var maxEcCount = 0;
267
+ var length = this.rsBlock.length / 3;
268
+ var rsBlocks = new Array();
269
+ for (var i = 0; i < length; i++) {
270
+ var count = this.rsBlock[i * 3 + 0];
271
+ var totalCount = this.rsBlock[i * 3 + 1];
272
+ var dataCount = this.rsBlock[i * 3 + 2];
273
+ for (var j = 0; j < count; j++) {
274
+ rsBlocks.push([dataCount, totalCount]);
275
+ }
276
+ }
277
+ var dcdata = new Array(rsBlocks.length);
278
+ var ecdata = new Array(rsBlocks.length);
279
+ for (var r = 0; r < rsBlocks.length; r++) {
280
+ var dcCount = rsBlocks[r][0];
281
+ var ecCount = rsBlocks[r][1] - dcCount;
282
+ maxDcCount = Math.max(maxDcCount, dcCount);
283
+ maxEcCount = Math.max(maxEcCount, ecCount);
284
+ dcdata[r] = new Array(dcCount);
285
+ for (var i = 0; i < dcdata[r].length; i++) {
286
+ dcdata[r][i] = 0xff & buffer.buffer[i + offset];
287
+ }
288
+ offset += dcCount;
289
+ var rsPoly = QRUtil.getErrorCorrectPolynomial(ecCount);
290
+ var rawPoly = new QRPolynomial(dcdata[r], rsPoly.getLength() - 1);
291
+ var modPoly = rawPoly.mod(rsPoly);
292
+ ecdata[r] = new Array(rsPoly.getLength() - 1);
293
+ for (var i = 0; i < ecdata[r].length; i++) {
294
+ var modIndex = i + modPoly.getLength() - ecdata[r].length;
295
+ ecdata[r][i] = (modIndex >= 0) ? modPoly.get(modIndex) : 0;
296
+ }
297
+ }
298
+ var data = new Array(this.totalDataCount);
299
+ var index = 0;
300
+ for (var i = 0; i < maxDcCount; i++) {
301
+ for (var r = 0; r < rsBlocks.length; r++) {
302
+ if (i < dcdata[r].length) {
303
+ data[index++] = dcdata[r][i];
304
+ }
305
+ }
306
+ }
307
+ for (var i = 0; i < maxEcCount; i++) {
308
+ for (var r = 0; r < rsBlocks.length; r++) {
309
+ if (i < ecdata[r].length) {
310
+ data[index++] = ecdata[r][i];
311
+ }
312
+ }
313
+ }
314
+ return data;
315
+
316
+ },
317
+ /**
318
+ * 布置模块,构建最终信息
319
+ * @param {} data
320
+ * @param {} maskPattern
321
+ * @return {}
322
+ */
323
+ mapData: function (data, maskPattern) {
324
+ var inc = -1;
325
+ var row = this.moduleCount - 1;
326
+ var bitIndex = 7;
327
+ var byteIndex = 0;
328
+ for (var col = this.moduleCount - 1; col > 0; col -= 2) {
329
+ if (col == 6) col--;
330
+ while (true) {
331
+ for (var c = 0; c < 2; c++) {
332
+ if (this.modules[row][col - c] == null) {
333
+ var dark = false;
334
+ if (byteIndex < data.length) {
335
+ dark = (((data[byteIndex] >>> bitIndex) & 1) == 1);
336
+ }
337
+ var mask = QRUtil.getMask(maskPattern, row, col - c);
338
+ if (mask) {
339
+ dark = !dark;
340
+ }
341
+ this.modules[row][col - c] = dark;
342
+ bitIndex--;
343
+ if (bitIndex == -1) {
344
+ byteIndex++;
345
+ bitIndex = 7;
346
+ }
347
+ }
348
+ }
349
+ row += inc;
350
+ if (row < 0 || this.moduleCount <= row) {
351
+ row -= inc;
352
+ inc = -inc;
353
+ break;
354
+ }
355
+ }
356
+ }
357
+ }
358
+ };
359
+ /**
360
+ * 填充字段
361
+ */
362
+ QRCodeAlg.PAD0 = 0xEC;
363
+ QRCodeAlg.PAD1 = 0x11;
364
+ //---------------------------------------------------------------------
365
+ // 纠错等级对应的编码
366
+ //---------------------------------------------------------------------
367
+ var QRErrorCorrectLevel = [1, 0, 3, 2];
368
+ //---------------------------------------------------------------------
369
+ // 掩膜版本
370
+ //---------------------------------------------------------------------
371
+ var QRMaskPattern = {
372
+ PATTERN000: 0,
373
+ PATTERN001: 1,
374
+ PATTERN010: 2,
375
+ PATTERN011: 3,
376
+ PATTERN100: 4,
377
+ PATTERN101: 5,
378
+ PATTERN110: 6,
379
+ PATTERN111: 7
380
+ };
381
+ //---------------------------------------------------------------------
382
+ // 工具类
383
+ //---------------------------------------------------------------------
384
+ var QRUtil = {
385
+ /*
386
+ 每个版本矫正图形的位置
387
+ */
388
+ PATTERN_POSITION_TABLE: [
389
+ [],
390
+ [6, 18],
391
+ [6, 22],
392
+ [6, 26],
393
+ [6, 30],
394
+ [6, 34],
395
+ [6, 22, 38],
396
+ [6, 24, 42],
397
+ [6, 26, 46],
398
+ [6, 28, 50],
399
+ [6, 30, 54],
400
+ [6, 32, 58],
401
+ [6, 34, 62],
402
+ [6, 26, 46, 66],
403
+ [6, 26, 48, 70],
404
+ [6, 26, 50, 74],
405
+ [6, 30, 54, 78],
406
+ [6, 30, 56, 82],
407
+ [6, 30, 58, 86],
408
+ [6, 34, 62, 90],
409
+ [6, 28, 50, 72, 94],
410
+ [6, 26, 50, 74, 98],
411
+ [6, 30, 54, 78, 102],
412
+ [6, 28, 54, 80, 106],
413
+ [6, 32, 58, 84, 110],
414
+ [6, 30, 58, 86, 114],
415
+ [6, 34, 62, 90, 118],
416
+ [6, 26, 50, 74, 98, 122],
417
+ [6, 30, 54, 78, 102, 126],
418
+ [6, 26, 52, 78, 104, 130],
419
+ [6, 30, 56, 82, 108, 134],
420
+ [6, 34, 60, 86, 112, 138],
421
+ [6, 30, 58, 86, 114, 142],
422
+ [6, 34, 62, 90, 118, 146],
423
+ [6, 30, 54, 78, 102, 126, 150],
424
+ [6, 24, 50, 76, 102, 128, 154],
425
+ [6, 28, 54, 80, 106, 132, 158],
426
+ [6, 32, 58, 84, 110, 136, 162],
427
+ [6, 26, 54, 82, 110, 138, 166],
428
+ [6, 30, 58, 86, 114, 142, 170]
429
+ ],
430
+ G15: (1 << 10) | (1 << 8) | (1 << 5) | (1 << 4) | (1 << 2) | (1 << 1) | (1 << 0),
431
+ G18: (1 << 12) | (1 << 11) | (1 << 10) | (1 << 9) | (1 << 8) | (1 << 5) | (1 << 2) | (1 << 0),
432
+ G15_MASK: (1 << 14) | (1 << 12) | (1 << 10) | (1 << 4) | (1 << 1),
433
+ /*
434
+ BCH编码格式信息
435
+ */
436
+ getBCHTypeInfo: function (data) {
437
+ var d = data << 10;
438
+ while (QRUtil.getBCHDigit(d) - QRUtil.getBCHDigit(QRUtil.G15) >= 0) {
439
+ d ^= (QRUtil.G15 << (QRUtil.getBCHDigit(d) - QRUtil.getBCHDigit(QRUtil.G15)));
440
+ }
441
+ return ((data << 10) | d) ^ QRUtil.G15_MASK;
442
+ },
443
+ /*
444
+ BCH编码版本信息
445
+ */
446
+ getBCHTypeNumber: function (data) {
447
+ var d = data << 12;
448
+ while (QRUtil.getBCHDigit(d) - QRUtil.getBCHDigit(QRUtil.G18) >= 0) {
449
+ d ^= (QRUtil.G18 << (QRUtil.getBCHDigit(d) - QRUtil.getBCHDigit(QRUtil.G18)));
450
+ }
451
+ return (data << 12) | d;
452
+ },
453
+ /*
454
+ 获取BCH位信息
455
+ */
456
+ getBCHDigit: function (data) {
457
+ var digit = 0;
458
+ while (data != 0) {
459
+ digit++;
460
+ data >>>= 1;
461
+ }
462
+ return digit;
463
+ },
464
+ /*
465
+ 获取版本对应的矫正图形位置
466
+ */
467
+ getPatternPosition: function (typeNumber) {
468
+ return QRUtil.PATTERN_POSITION_TABLE[typeNumber - 1];
469
+ },
470
+ /*
471
+ 掩膜算法
472
+ */
473
+ getMask: function (maskPattern, i, j) {
474
+ switch (maskPattern) {
475
+ case QRMaskPattern.PATTERN000:
476
+ return (i + j) % 2 == 0;
477
+ case QRMaskPattern.PATTERN001:
478
+ return i % 2 == 0;
479
+ case QRMaskPattern.PATTERN010:
480
+ return j % 3 == 0;
481
+ case QRMaskPattern.PATTERN011:
482
+ return (i + j) % 3 == 0;
483
+ case QRMaskPattern.PATTERN100:
484
+ return (Math.floor(i / 2) + Math.floor(j / 3)) % 2 == 0;
485
+ case QRMaskPattern.PATTERN101:
486
+ return (i * j) % 2 + (i * j) % 3 == 0;
487
+ case QRMaskPattern.PATTERN110:
488
+ return ((i * j) % 2 + (i * j) % 3) % 2 == 0;
489
+ case QRMaskPattern.PATTERN111:
490
+ return ((i * j) % 3 + (i + j) % 2) % 2 == 0;
491
+ default:
492
+ throw new Error("bad maskPattern:" + maskPattern);
493
+ }
494
+ },
495
+ /*
496
+ 获取RS的纠错多项式
497
+ */
498
+ getErrorCorrectPolynomial: function (errorCorrectLength) {
499
+ var a = new QRPolynomial([1], 0);
500
+ for (var i = 0; i < errorCorrectLength; i++) {
501
+ a = a.multiply(new QRPolynomial([1, QRMath.gexp(i)], 0));
502
+ }
503
+ return a;
504
+ },
505
+ /*
506
+ 获取评价
507
+ */
508
+ getLostPoint: function (qrCode) {
509
+ var moduleCount = qrCode.getModuleCount(),
510
+ lostPoint = 0,
511
+ darkCount = 0;
512
+ for (var row = 0; row < moduleCount; row++) {
513
+ var sameCount = 0;
514
+ var head = qrCode.modules[row][0];
515
+ for (var col = 0; col < moduleCount; col++) {
516
+ var current = qrCode.modules[row][col];
517
+ //level 3 评价
518
+ if (col < moduleCount - 6) {
519
+ if (current && !qrCode.modules[row][col + 1] && qrCode.modules[row][col + 2] && qrCode.modules[row][col + 3] && qrCode.modules[row][col + 4] && !qrCode.modules[row][col + 5] && qrCode.modules[row][col + 6]) {
520
+ if (col < moduleCount - 10) {
521
+ if (qrCode.modules[row][col + 7] && qrCode.modules[row][col + 8] && qrCode.modules[row][col + 9] && qrCode.modules[row][col + 10]) {
522
+ lostPoint += 40;
523
+ }
524
+ } else if (col > 3) {
525
+ if (qrCode.modules[row][col - 1] && qrCode.modules[row][col - 2] && qrCode.modules[row][col - 3] && qrCode.modules[row][col - 4]) {
526
+ lostPoint += 40;
527
+ }
528
+ }
529
+ }
530
+ }
531
+ //level 2 评价
532
+ if ((row < moduleCount - 1) && (col < moduleCount - 1)) {
533
+ var count = 0;
534
+ if (current) count++;
535
+ if (qrCode.modules[row + 1][col]) count++;
536
+ if (qrCode.modules[row][col + 1]) count++;
537
+ if (qrCode.modules[row + 1][col + 1]) count++;
538
+ if (count == 0 || count == 4) {
539
+ lostPoint += 3;
540
+ }
541
+ }
542
+ //level 1 评价
543
+ if (head ^ current) {
544
+ sameCount++;
545
+ } else {
546
+ head = current;
547
+ if (sameCount >= 5) {
548
+ lostPoint += (3 + sameCount - 5);
549
+ }
550
+ sameCount = 1;
551
+ }
552
+ //level 4 评价
553
+ if (current) {
554
+ darkCount++;
555
+ }
556
+ }
557
+ }
558
+ for (var col = 0; col < moduleCount; col++) {
559
+ var sameCount = 0;
560
+ var head = qrCode.modules[0][col];
561
+ for (var row = 0; row < moduleCount; row++) {
562
+ var current = qrCode.modules[row][col];
563
+ //level 3 评价
564
+ if (row < moduleCount - 6) {
565
+ if (current && !qrCode.modules[row + 1][col] && qrCode.modules[row + 2][col] && qrCode.modules[row + 3][col] && qrCode.modules[row + 4][col] && !qrCode.modules[row + 5][col] && qrCode.modules[row + 6][col]) {
566
+ if (row < moduleCount - 10) {
567
+ if (qrCode.modules[row + 7][col] && qrCode.modules[row + 8][col] && qrCode.modules[row + 9][col] && qrCode.modules[row + 10][col]) {
568
+ lostPoint += 40;
569
+ }
570
+ } else if (row > 3) {
571
+ if (qrCode.modules[row - 1][col] && qrCode.modules[row - 2][col] && qrCode.modules[row - 3][col] && qrCode.modules[row - 4][col]) {
572
+ lostPoint += 40;
573
+ }
574
+ }
575
+ }
576
+ }
577
+ //level 1 评价
578
+ if (head ^ current) {
579
+ sameCount++;
580
+ } else {
581
+ head = current;
582
+ if (sameCount >= 5) {
583
+ lostPoint += (3 + sameCount - 5);
584
+ }
585
+ sameCount = 1;
586
+ }
587
+ }
588
+ }
589
+ // LEVEL4
590
+ var ratio = Math.abs(100 * darkCount / moduleCount / moduleCount - 50) / 5;
591
+ lostPoint += ratio * 10;
592
+ return lostPoint;
593
+ }
594
+
595
+ };
596
+ //---------------------------------------------------------------------
597
+ // QRMath使用的数学工具
598
+ //---------------------------------------------------------------------
599
+ var QRMath = {
600
+ /*
601
+ 将n转化为a^m
602
+ */
603
+ glog: function (n) {
604
+ if (n < 1) {
605
+ throw new Error("glog(" + n + ")");
606
+ }
607
+ return QRMath.LOG_TABLE[n];
608
+ },
609
+ /*
610
+ 将a^m转化为n
611
+ */
612
+ gexp: function (n) {
613
+ while (n < 0) {
614
+ n += 255;
615
+ }
616
+ while (n >= 256) {
617
+ n -= 255;
618
+ }
619
+ return QRMath.EXP_TABLE[n];
620
+ },
621
+ EXP_TABLE: new Array(256),
622
+ LOG_TABLE: new Array(256)
623
+
624
+ };
625
+ for (var i = 0; i < 8; i++) {
626
+ QRMath.EXP_TABLE[i] = 1 << i;
627
+ }
628
+ for (var i = 8; i < 256; i++) {
629
+ QRMath.EXP_TABLE[i] = QRMath.EXP_TABLE[i - 4] ^ QRMath.EXP_TABLE[i - 5] ^ QRMath.EXP_TABLE[i - 6] ^ QRMath.EXP_TABLE[i - 8];
630
+ }
631
+ for (var i = 0; i < 255; i++) {
632
+ QRMath.LOG_TABLE[QRMath.EXP_TABLE[i]] = i;
633
+ }
634
+ //---------------------------------------------------------------------
635
+ // QRPolynomial 多项式
636
+ //---------------------------------------------------------------------
637
+ /**
638
+ * 多项式类
639
+ * @param {Array} num 系数
640
+ * @param {num} shift a^shift
641
+ */
642
+ function QRPolynomial(num, shift) {
643
+ if (num.length == undefined) {
644
+ throw new Error(num.length + "/" + shift);
645
+ }
646
+ var offset = 0;
647
+ while (offset < num.length && num[offset] == 0) {
648
+ offset++;
649
+ }
650
+ this.num = new Array(num.length - offset + shift);
651
+ for (var i = 0; i < num.length - offset; i++) {
652
+ this.num[i] = num[i + offset];
653
+ }
654
+ }
655
+ QRPolynomial.prototype = {
656
+ get: function (index) {
657
+ return this.num[index];
658
+ },
659
+ getLength: function () {
660
+ return this.num.length;
661
+ },
662
+ /**
663
+ * 多项式乘法
664
+ * @param {QRPolynomial} e 被乘多项式
665
+ * @return {[type]} [description]
666
+ */
667
+ multiply: function (e) {
668
+ var num = new Array(this.getLength() + e.getLength() - 1);
669
+ for (var i = 0; i < this.getLength(); i++) {
670
+ for (var j = 0; j < e.getLength(); j++) {
671
+ num[i + j] ^= QRMath.gexp(QRMath.glog(this.get(i)) + QRMath.glog(e.get(j)));
672
+ }
673
+ }
674
+ return new QRPolynomial(num, 0);
675
+ },
676
+ /**
677
+ * 多项式模运算
678
+ * @param {QRPolynomial} e 模多项式
679
+ * @return {}
680
+ */
681
+ mod: function (e) {
682
+ var tl = this.getLength(),
683
+ el = e.getLength();
684
+ if (tl - el < 0) {
685
+ return this;
686
+ }
687
+ var num = new Array(tl);
688
+ for (var i = 0; i < tl; i++) {
689
+ num[i] = this.get(i);
690
+ }
691
+ while (num.length >= el) {
692
+ var ratio = QRMath.glog(num[0]) - QRMath.glog(e.get(0));
693
+
694
+ for (var i = 0; i < e.getLength(); i++) {
695
+ num[i] ^= QRMath.gexp(QRMath.glog(e.get(i)) + ratio);
696
+ }
697
+ while (num[0] == 0) {
698
+ num.shift();
699
+ }
700
+ }
701
+ return new QRPolynomial(num, 0);
702
+ }
703
+ };
704
+
705
+ //---------------------------------------------------------------------
706
+ // RS_BLOCK_TABLE
707
+ //---------------------------------------------------------------------
708
+ /*
709
+ 二维码各个版本信息[块数, 每块中的数据块数, 每块中的信息块数]
710
+ */
711
+ var RS_BLOCK_TABLE = [
712
+ // L
713
+ // M
714
+ // Q
715
+ // H
716
+ // 1
717
+ [1, 26, 19],
718
+ [1, 26, 16],
719
+ [1, 26, 13],
720
+ [1, 26, 9],
721
+
722
+ // 2
723
+ [1, 44, 34],
724
+ [1, 44, 28],
725
+ [1, 44, 22],
726
+ [1, 44, 16],
727
+
728
+ // 3
729
+ [1, 70, 55],
730
+ [1, 70, 44],
731
+ [2, 35, 17],
732
+ [2, 35, 13],
733
+
734
+ // 4
735
+ [1, 100, 80],
736
+ [2, 50, 32],
737
+ [2, 50, 24],
738
+ [4, 25, 9],
739
+
740
+ // 5
741
+ [1, 134, 108],
742
+ [2, 67, 43],
743
+ [2, 33, 15, 2, 34, 16],
744
+ [2, 33, 11, 2, 34, 12],
745
+
746
+ // 6
747
+ [2, 86, 68],
748
+ [4, 43, 27],
749
+ [4, 43, 19],
750
+ [4, 43, 15],
751
+
752
+ // 7
753
+ [2, 98, 78],
754
+ [4, 49, 31],
755
+ [2, 32, 14, 4, 33, 15],
756
+ [4, 39, 13, 1, 40, 14],
757
+
758
+ // 8
759
+ [2, 121, 97],
760
+ [2, 60, 38, 2, 61, 39],
761
+ [4, 40, 18, 2, 41, 19],
762
+ [4, 40, 14, 2, 41, 15],
763
+
764
+ // 9
765
+ [2, 146, 116],
766
+ [3, 58, 36, 2, 59, 37],
767
+ [4, 36, 16, 4, 37, 17],
768
+ [4, 36, 12, 4, 37, 13],
769
+
770
+ // 10
771
+ [2, 86, 68, 2, 87, 69],
772
+ [4, 69, 43, 1, 70, 44],
773
+ [6, 43, 19, 2, 44, 20],
774
+ [6, 43, 15, 2, 44, 16],
775
+
776
+ // 11
777
+ [4, 101, 81],
778
+ [1, 80, 50, 4, 81, 51],
779
+ [4, 50, 22, 4, 51, 23],
780
+ [3, 36, 12, 8, 37, 13],
781
+
782
+ // 12
783
+ [2, 116, 92, 2, 117, 93],
784
+ [6, 58, 36, 2, 59, 37],
785
+ [4, 46, 20, 6, 47, 21],
786
+ [7, 42, 14, 4, 43, 15],
787
+
788
+ // 13
789
+ [4, 133, 107],
790
+ [8, 59, 37, 1, 60, 38],
791
+ [8, 44, 20, 4, 45, 21],
792
+ [12, 33, 11, 4, 34, 12],
793
+
794
+ // 14
795
+ [3, 145, 115, 1, 146, 116],
796
+ [4, 64, 40, 5, 65, 41],
797
+ [11, 36, 16, 5, 37, 17],
798
+ [11, 36, 12, 5, 37, 13],
799
+
800
+ // 15
801
+ [5, 109, 87, 1, 110, 88],
802
+ [5, 65, 41, 5, 66, 42],
803
+ [5, 54, 24, 7, 55, 25],
804
+ [11, 36, 12],
805
+
806
+ // 16
807
+ [5, 122, 98, 1, 123, 99],
808
+ [7, 73, 45, 3, 74, 46],
809
+ [15, 43, 19, 2, 44, 20],
810
+ [3, 45, 15, 13, 46, 16],
811
+
812
+ // 17
813
+ [1, 135, 107, 5, 136, 108],
814
+ [10, 74, 46, 1, 75, 47],
815
+ [1, 50, 22, 15, 51, 23],
816
+ [2, 42, 14, 17, 43, 15],
817
+
818
+ // 18
819
+ [5, 150, 120, 1, 151, 121],
820
+ [9, 69, 43, 4, 70, 44],
821
+ [17, 50, 22, 1, 51, 23],
822
+ [2, 42, 14, 19, 43, 15],
823
+
824
+ // 19
825
+ [3, 141, 113, 4, 142, 114],
826
+ [3, 70, 44, 11, 71, 45],
827
+ [17, 47, 21, 4, 48, 22],
828
+ [9, 39, 13, 16, 40, 14],
829
+
830
+ // 20
831
+ [3, 135, 107, 5, 136, 108],
832
+ [3, 67, 41, 13, 68, 42],
833
+ [15, 54, 24, 5, 55, 25],
834
+ [15, 43, 15, 10, 44, 16],
835
+
836
+ // 21
837
+ [4, 144, 116, 4, 145, 117],
838
+ [17, 68, 42],
839
+ [17, 50, 22, 6, 51, 23],
840
+ [19, 46, 16, 6, 47, 17],
841
+
842
+ // 22
843
+ [2, 139, 111, 7, 140, 112],
844
+ [17, 74, 46],
845
+ [7, 54, 24, 16, 55, 25],
846
+ [34, 37, 13],
847
+
848
+ // 23
849
+ [4, 151, 121, 5, 152, 122],
850
+ [4, 75, 47, 14, 76, 48],
851
+ [11, 54, 24, 14, 55, 25],
852
+ [16, 45, 15, 14, 46, 16],
853
+
854
+ // 24
855
+ [6, 147, 117, 4, 148, 118],
856
+ [6, 73, 45, 14, 74, 46],
857
+ [11, 54, 24, 16, 55, 25],
858
+ [30, 46, 16, 2, 47, 17],
859
+
860
+ // 25
861
+ [8, 132, 106, 4, 133, 107],
862
+ [8, 75, 47, 13, 76, 48],
863
+ [7, 54, 24, 22, 55, 25],
864
+ [22, 45, 15, 13, 46, 16],
865
+
866
+ // 26
867
+ [10, 142, 114, 2, 143, 115],
868
+ [19, 74, 46, 4, 75, 47],
869
+ [28, 50, 22, 6, 51, 23],
870
+ [33, 46, 16, 4, 47, 17],
871
+
872
+ // 27
873
+ [8, 152, 122, 4, 153, 123],
874
+ [22, 73, 45, 3, 74, 46],
875
+ [8, 53, 23, 26, 54, 24],
876
+ [12, 45, 15, 28, 46, 16],
877
+
878
+ // 28
879
+ [3, 147, 117, 10, 148, 118],
880
+ [3, 73, 45, 23, 74, 46],
881
+ [4, 54, 24, 31, 55, 25],
882
+ [11, 45, 15, 31, 46, 16],
883
+
884
+ // 29
885
+ [7, 146, 116, 7, 147, 117],
886
+ [21, 73, 45, 7, 74, 46],
887
+ [1, 53, 23, 37, 54, 24],
888
+ [19, 45, 15, 26, 46, 16],
889
+
890
+ // 30
891
+ [5, 145, 115, 10, 146, 116],
892
+ [19, 75, 47, 10, 76, 48],
893
+ [15, 54, 24, 25, 55, 25],
894
+ [23, 45, 15, 25, 46, 16],
895
+
896
+ // 31
897
+ [13, 145, 115, 3, 146, 116],
898
+ [2, 74, 46, 29, 75, 47],
899
+ [42, 54, 24, 1, 55, 25],
900
+ [23, 45, 15, 28, 46, 16],
901
+
902
+ // 32
903
+ [17, 145, 115],
904
+ [10, 74, 46, 23, 75, 47],
905
+ [10, 54, 24, 35, 55, 25],
906
+ [19, 45, 15, 35, 46, 16],
907
+
908
+ // 33
909
+ [17, 145, 115, 1, 146, 116],
910
+ [14, 74, 46, 21, 75, 47],
911
+ [29, 54, 24, 19, 55, 25],
912
+ [11, 45, 15, 46, 46, 16],
913
+
914
+ // 34
915
+ [13, 145, 115, 6, 146, 116],
916
+ [14, 74, 46, 23, 75, 47],
917
+ [44, 54, 24, 7, 55, 25],
918
+ [59, 46, 16, 1, 47, 17],
919
+
920
+ // 35
921
+ [12, 151, 121, 7, 152, 122],
922
+ [12, 75, 47, 26, 76, 48],
923
+ [39, 54, 24, 14, 55, 25],
924
+ [22, 45, 15, 41, 46, 16],
925
+
926
+ // 36
927
+ [6, 151, 121, 14, 152, 122],
928
+ [6, 75, 47, 34, 76, 48],
929
+ [46, 54, 24, 10, 55, 25],
930
+ [2, 45, 15, 64, 46, 16],
931
+
932
+ // 37
933
+ [17, 152, 122, 4, 153, 123],
934
+ [29, 74, 46, 14, 75, 47],
935
+ [49, 54, 24, 10, 55, 25],
936
+ [24, 45, 15, 46, 46, 16],
937
+
938
+ // 38
939
+ [4, 152, 122, 18, 153, 123],
940
+ [13, 74, 46, 32, 75, 47],
941
+ [48, 54, 24, 14, 55, 25],
942
+ [42, 45, 15, 32, 46, 16],
943
+
944
+ // 39
945
+ [20, 147, 117, 4, 148, 118],
946
+ [40, 75, 47, 7, 76, 48],
947
+ [43, 54, 24, 22, 55, 25],
948
+ [10, 45, 15, 67, 46, 16],
949
+
950
+ // 40
951
+ [19, 148, 118, 6, 149, 119],
952
+ [18, 75, 47, 31, 76, 48],
953
+ [34, 54, 24, 34, 55, 25],
954
+ [20, 45, 15, 61, 46, 16]
955
+ ];
956
+
957
+ /**
958
+ * 根据数据获取对应版本
959
+ * @return {[type]} [description]
960
+ */
961
+ QRCodeAlg.prototype.getRightType = function () {
962
+ for (var typeNumber = 1; typeNumber < 41; typeNumber++) {
963
+ var rsBlock = RS_BLOCK_TABLE[(typeNumber - 1) * 4 + this.errorCorrectLevel];
964
+ if (rsBlock == undefined) {
965
+ throw new Error("bad rs block @ typeNumber:" + typeNumber + "/errorCorrectLevel:" + this.errorCorrectLevel);
966
+ }
967
+ var length = rsBlock.length / 3;
968
+ var totalDataCount = 0;
969
+ for (var i = 0; i < length; i++) {
970
+ var count = rsBlock[i * 3 + 0];
971
+ var dataCount = rsBlock[i * 3 + 2];
972
+ totalDataCount += dataCount * count;
973
+ }
974
+ var lengthBytes = typeNumber > 9 ? 2 : 1;
975
+ if (this.utf8bytes.length + lengthBytes < totalDataCount || typeNumber == 40) {
976
+ this.typeNumber = typeNumber;
977
+ this.rsBlock = rsBlock;
978
+ this.totalDataCount = totalDataCount;
979
+ break;
980
+ }
981
+ }
982
+ };
983
+
984
+ //---------------------------------------------------------------------
985
+ // QRBitBuffer
986
+ //---------------------------------------------------------------------
987
+ function QRBitBuffer() {
988
+ this.buffer = new Array();
989
+ this.length = 0;
990
+ }
991
+ QRBitBuffer.prototype = {
992
+ get: function (index) {
993
+ var bufIndex = Math.floor(index / 8);
994
+ return ((this.buffer[bufIndex] >>> (7 - index % 8)) & 1);
995
+ },
996
+ put: function (num, length) {
997
+ for (var i = 0; i < length; i++) {
998
+ this.putBit(((num >>> (length - i - 1)) & 1));
999
+ }
1000
+ },
1001
+ putBit: function (bit) {
1002
+ var bufIndex = Math.floor(this.length / 8);
1003
+ if (this.buffer.length <= bufIndex) {
1004
+ this.buffer.push(0);
1005
+ }
1006
+ if (bit) {
1007
+ this.buffer[bufIndex] |= (0x80 >>> (this.length % 8));
1008
+ }
1009
+ this.length++;
1010
+ }
1011
+ };
1012
+
1013
+
1014
+
1015
+ // xzedit
1016
+ let qrcodeAlgObjCache = [];
1017
+ /**
1018
+ * 二维码构造函数,主要用于绘制
1019
+ * @param {参数列表} opt 传递参数
1020
+ * @return {}
1021
+ */
1022
+ QRCode = function (opt) {
1023
+ //设置默认参数
1024
+ this.options = {
1025
+ text: '',
1026
+ size: 256,
1027
+ correctLevel: 3,
1028
+ background: '#ffffff',
1029
+ foreground: '#000000',
1030
+ pdground: '#000000',
1031
+ image: '',
1032
+ imageSize: 30,
1033
+ canvasId: opt.canvasId,
1034
+ nvueContext: opt.nvueContext,
1035
+ context: opt.context,
1036
+ usingComponents: opt.usingComponents,
1037
+ showLoading: opt.showLoading,
1038
+ loadingText: opt.loadingText,
1039
+ };
1040
+
1041
+ let canvas = null;
1042
+
1043
+ if (typeof opt === 'string') { // 只编码ASCII字符串
1044
+ opt = {
1045
+ text: opt
1046
+ };
1047
+ }
1048
+ if (opt) {
1049
+ for (var i in opt) {
1050
+ this.options[i] = opt[i];
1051
+ }
1052
+ }
1053
+ //使用QRCodeAlg创建二维码结构
1054
+ var qrCodeAlg = null;
1055
+ for (var i = 0, l = qrcodeAlgObjCache.length; i < l; i++) {
1056
+ if (qrcodeAlgObjCache[i].text == this.options.text && qrcodeAlgObjCache[i].text.correctLevel == this.options.correctLevel) {
1057
+ qrCodeAlg = qrcodeAlgObjCache[i].obj;
1058
+ break;
1059
+ }
1060
+ }
1061
+ if (i == l) {
1062
+ qrCodeAlg = new QRCodeAlg(this.options.text, this.options.correctLevel);
1063
+ qrcodeAlgObjCache.push({
1064
+ text: this.options.text,
1065
+ correctLevel: this.options.correctLevel,
1066
+ obj: qrCodeAlg
1067
+ });
1068
+ }
1069
+ /**
1070
+ * 计算矩阵点的前景色
1071
+ * @param {Obj} config
1072
+ * @param {Number} config.row 点x坐标
1073
+ * @param {Number} config.col 点y坐标
1074
+ * @param {Number} config.count 矩阵大小
1075
+ * @param {Number} config.options 组件的options
1076
+ * @return {String}
1077
+ */
1078
+ let getForeGround = function (config) {
1079
+ var options = config.options;
1080
+ if (options.pdground && (
1081
+ (config.row > 1 && config.row < 5 && config.col > 1 && config.col < 5) ||
1082
+ (config.row > (config.count - 6) && config.row < (config.count - 2) && config.col > 1 && config.col < 5) ||
1083
+ (config.row > 1 && config.row < 5 && config.col > (config.count - 6) && config.col < (config.count - 2))
1084
+ )) {
1085
+ return options.pdground;
1086
+ }
1087
+ return options.foreground;
1088
+ }
1089
+
1090
+ let getCanvas = async (id) => {
1091
+ return new Promise((resolve, reject)=>{
1092
+ try {
1093
+ const query = uni.createSelectorQuery().in(this.options.context);
1094
+ query.select(`#${id}`)
1095
+ .fields({ node: true, size: true })
1096
+ .exec((res) => {
1097
+ resolve(res[0].node)
1098
+ })
1099
+ }
1100
+ catch (e) {
1101
+ console.error("createCanvasContextFail",e)
1102
+ }
1103
+ })
1104
+ }
1105
+ // 创建canvas
1106
+ let createCanvas = async function (options) {
1107
+ let isApp = false;
1108
+ // #ifdef APP
1109
+ isApp = true;
1110
+ // #endif
1111
+
1112
+ if(options.showLoading){
1113
+ uni.showLoading({
1114
+ title: options.loadingText,
1115
+ mask: true
1116
+ });
1117
+ }
1118
+ var ctx = '';
1119
+ if (options.nvueContext) {
1120
+ ctx = options.nvueContext;
1121
+ }
1122
+ else {
1123
+ // 获取canvas node节点
1124
+ canvas = await getCanvas(options.canvasId);
1125
+ // #ifdef MP
1126
+ // 不清楚是小程序的bug还是什么原因,canvas的node节点宽高和设置的宽高不一致 重新设置下
1127
+ canvas.width = options.size;
1128
+ canvas.height = options.size;
1129
+ // #endif
1130
+ // #ifdef APP
1131
+ ctx = uni.createCanvasContext(options.canvasId, options.context);
1132
+ // #endif
1133
+ // #ifndef APP
1134
+ ctx = canvas.getContext('2d');
1135
+ // #endif
1136
+
1137
+ }
1138
+ // 设置组件中data里面的ctx
1139
+ options.context.ctx = ctx;
1140
+ options.context.canvas = canvas;
1141
+
1142
+ var count = qrCodeAlg.getModuleCount();
1143
+ var ratioSize = options.size;
1144
+ var ratioImgSize = options.imageSize;
1145
+ //计算每个点的长宽
1146
+ var tileW = (ratioSize / count).toPrecision(4);
1147
+ var tileH = (ratioSize / count).toPrecision(4);
1148
+ //绘制
1149
+ for (var row = 0; row < count; row++) {
1150
+ for (var col = 0; col < count; col++) {
1151
+ var w = (Math.ceil((col + 1) * tileW) - Math.floor(col * tileW));
1152
+ var h = (Math.ceil((row + 1) * tileH) - Math.floor(row * tileH));
1153
+ var foreground = getForeGround({
1154
+ row: row,
1155
+ col: col,
1156
+ count: count,
1157
+ options: options
1158
+ });
1159
+ if (options.nvueContext) {
1160
+ ctx.setFillStyle(qrCodeAlg.modules[row][col] ? foreground : options.background);
1161
+ } else {
1162
+ ctx.fillStyle = qrCodeAlg.modules[row][col] ? foreground : options.background;
1163
+ }
1164
+ ctx.fillRect(Math.round(col * tileW), Math.round(row * tileH), w, h);
1165
+ }
1166
+ }
1167
+ if (options.image) {
1168
+ var x = Number(((ratioSize - ratioImgSize) / 2).toFixed(2));
1169
+ var y = Number(((ratioSize - ratioImgSize) / 2).toFixed(2));
1170
+ drawRoundedRect(ctx, x, y, ratioImgSize, ratioImgSize, 2, 6, true, true)
1171
+ if (options.nvueContext) {
1172
+ ctx.drawImage(options.image, x, y, ratioImgSize, ratioImgSize);
1173
+ }
1174
+ else {
1175
+ // #ifdef H5 || APP
1176
+ const img = new Image();
1177
+ // #endif
1178
+
1179
+ // #ifndef H5 || APP
1180
+ const img = canvas.createImage();
1181
+ // #endif
1182
+
1183
+ img.onload = () => {
1184
+ ctx.drawImage(img, x, y, ratioImgSize, ratioImgSize);
1185
+ };
1186
+ img.src = options.image;
1187
+ }
1188
+ // 画圆角矩形
1189
+ function drawRoundedRect(ctxi, x, y, width, height, r, lineWidth, fill, stroke) {
1190
+ if (options.nvueContext || isApp) {
1191
+ ctxi.setLineWidth(lineWidth);
1192
+ ctxi.setFillStyle(options.background);
1193
+ ctxi.setStrokeStyle(options.background);
1194
+ }
1195
+ else {
1196
+ ctxi.lineWidth = lineWidth;
1197
+ ctxi.fillStyle = options.background;
1198
+ ctxi.strokeStyle = options.background;
1199
+ }
1200
+ ctxi.beginPath(); // draw top and top right corner
1201
+ ctxi.moveTo(x + r, y);
1202
+ ctxi.lineTo(x + width, y); // move to top-right corner
1203
+ ctxi.arc(x + width - r, y + r, r, -Math.PI / 2, 0); // draw right side and bottom right corner
1204
+
1205
+ ctxi.lineTo(x + width, y + height - r);
1206
+ ctxi.arc(x + width - r, y + height - r, r, 0, Math.PI / 2); // draw bottom and bottom left corner
1207
+
1208
+ ctxi.lineTo(x + r, y + height);
1209
+ ctxi.arc(x + r, y + height - r, r, Math.PI / 2, Math.PI);// draw left and top left corner
1210
+
1211
+ ctxi.lineTo(x, y + r);
1212
+ ctxi.arc(x + r, y + r, r, Math.PI, Math.PI * 3 / 2);
1213
+
1214
+ ctxi.closePath();
1215
+ if (fill) {
1216
+ ctxi.fill();
1217
+ }
1218
+ if (stroke) {
1219
+ ctxi.stroke();
1220
+ }
1221
+ }
1222
+ }
1223
+ setTimeout(() => {
1224
+ // canvas2 绘制是自动的不需要手动绘制
1225
+ if(options.nvueContext || isApp){
1226
+ ctx.draw(true, () => {
1227
+ // 保存到临时区域
1228
+ setTimeout(() => {
1229
+ if (options.nvueContext) {
1230
+ ctx.toTempFilePath(
1231
+ 0,
1232
+ 0,
1233
+ options.width,
1234
+ options.height,
1235
+ options.width,
1236
+ options.height,
1237
+ "",
1238
+ 1,
1239
+ function(res) {
1240
+ if (options.cbResult) {
1241
+ options.cbResult(res.tempFilePath)
1242
+ }
1243
+ }
1244
+ );
1245
+ } else {
1246
+ uni.canvasToTempFilePath({
1247
+ width: options.width,
1248
+ height: options.height,
1249
+ destWidth: options.width,
1250
+ destHeight: options.height,
1251
+ canvasId: options.canvasId,
1252
+ quality: Number(1),
1253
+ success: function (res) {
1254
+ if (options.cbResult) {
1255
+ // 由于官方还没有统一此接口的输出字段,所以先判定下 支付宝为 res.apFilePath
1256
+ if (!empty(res.tempFilePath)) {
1257
+ options.cbResult(res.tempFilePath)
1258
+ } else if (!empty(res.apFilePath)) {
1259
+ options.cbResult(res.apFilePath)
1260
+ } else {
1261
+ options.cbResult(res.tempFilePath)
1262
+ }
1263
+ }
1264
+ },
1265
+ fail: function (res) {
1266
+ if (options.cbResult) {
1267
+ options.cbResult(res)
1268
+ }
1269
+ },
1270
+ complete: function () {
1271
+ uni.hideLoading();
1272
+ },
1273
+ }, options.context);
1274
+ }
1275
+ }, options.text.length + 100);
1276
+ });
1277
+ }
1278
+ else{
1279
+ options.cbResult("")
1280
+ }
1281
+
1282
+ }, options.usingComponents ? 0 : 150);
1283
+ }
1284
+ createCanvas(this.options);
1285
+ // 空判定
1286
+ let empty = function (v) {
1287
+ let tp = typeof v,
1288
+ rt = false;
1289
+ if (tp == "number" && String(v) == "") {
1290
+ rt = true
1291
+ } else if (tp == "undefined") {
1292
+ rt = true
1293
+ } else if (tp == "object") {
1294
+ if (JSON.stringify(v) == "{}" || JSON.stringify(v) == "[]" || v == null) rt = true
1295
+ } else if (tp == "string") {
1296
+ if (v == "" || v == "undefined" || v == "null" || v == "{}" || v == "[]") rt = true
1297
+ } else if (tp == "function") {
1298
+ rt = false
1299
+ }
1300
+ return rt
1301
+ }
1302
+ };
1303
+ QRCode.prototype.clear = function (fn) {
1304
+ var ctx = '';
1305
+ if (options.nvueContext) {
1306
+ ctx = options.nvueContext;
1307
+ } else {
1308
+ uni.createCanvasContext(this.options.canvasId, this.options.context)
1309
+ }
1310
+ ctx.clearRect(0, 0, this.options.size, this.options.size)
1311
+ ctx.draw(false, () => {
1312
+ if (fn) {
1313
+ fn()
1314
+ }
1315
+ })
1316
+ };
1317
+ })()
1318
+
1319
+ export default QRCode