uview-ultra 4.5.46

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 (1015) hide show
  1. package/LICENSE +20 -0
  2. package/README.md +76 -0
  3. package/changelog.md +1421 -0
  4. package/components/up-action-sheet/actionSheet.js +26 -0
  5. package/components/up-action-sheet/actionSheet.uts +36 -0
  6. package/components/up-action-sheet/props.js +62 -0
  7. package/components/up-action-sheet/props.uts +66 -0
  8. package/components/up-action-sheet/types.uts +86 -0
  9. package/components/up-action-sheet/up-action-sheet.uvue +390 -0
  10. package/components/up-action-sheet/up-action-sheet.vue +348 -0
  11. package/components/up-action-sheet-data/up-action-sheet-data.uvue +112 -0
  12. package/components/up-action-sheet-data/up-action-sheet-data.vue +109 -0
  13. package/components/up-agreement/up-agreement.uvue +80 -0
  14. package/components/up-agreement/up-agreement.vue +91 -0
  15. package/components/up-album/album.js +28 -0
  16. package/components/up-album/album.uts +28 -0
  17. package/components/up-album/props.js +93 -0
  18. package/components/up-album/props.uts +84 -0
  19. package/components/up-album/up-album.uvue +377 -0
  20. package/components/up-album/up-album.vue +261 -0
  21. package/components/up-alert/alert.js +22 -0
  22. package/components/up-alert/alert.uts +22 -0
  23. package/components/up-alert/props.js +46 -0
  24. package/components/up-alert/props.uts +48 -0
  25. package/components/up-alert/up-alert.uvue +286 -0
  26. package/components/up-alert/up-alert.vue +231 -0
  27. package/components/up-avatar/avatar.js +28 -0
  28. package/components/up-avatar/avatar.uts +28 -0
  29. package/components/up-avatar/props.js +82 -0
  30. package/components/up-avatar/props.uts +82 -0
  31. package/components/up-avatar/up-avatar.uvue +242 -0
  32. package/components/up-avatar/up-avatar.vue +168 -0
  33. package/components/up-avatar-group/avatarGroup.js +23 -0
  34. package/components/up-avatar-group/avatarGroup.uts +23 -0
  35. package/components/up-avatar-group/props.js +54 -0
  36. package/components/up-avatar-group/props.uts +55 -0
  37. package/components/up-avatar-group/up-avatar-group.uvue +160 -0
  38. package/components/up-avatar-group/up-avatar-group.vue +109 -0
  39. package/components/up-back-top/backtop.js +27 -0
  40. package/components/up-back-top/backtop.uts +27 -0
  41. package/components/up-back-top/props.js +56 -0
  42. package/components/up-back-top/props.uts +57 -0
  43. package/components/up-back-top/up-back-top.uvue +161 -0
  44. package/components/up-back-top/up-back-top.vue +141 -0
  45. package/components/up-badge/badge.js +27 -0
  46. package/components/up-badge/badge.uts +27 -0
  47. package/components/up-badge/props.js +79 -0
  48. package/components/up-badge/props.uts +89 -0
  49. package/components/up-badge/up-badge.uvue +266 -0
  50. package/components/up-badge/up-badge.vue +157 -0
  51. package/components/up-barcode/up-barcode.uvue +818 -0
  52. package/components/up-barcode/up-barcode.vue +902 -0
  53. package/components/up-box/box.js +24 -0
  54. package/components/up-box/box.uts +24 -0
  55. package/components/up-box/props.js +57 -0
  56. package/components/up-box/props.uts +58 -0
  57. package/components/up-box/up-box.uvue +143 -0
  58. package/components/up-box/up-box.vue +104 -0
  59. package/components/up-button/button.js +42 -0
  60. package/components/up-button/button.uts +42 -0
  61. package/components/up-button/nvue.scss +46 -0
  62. package/components/up-button/props.js +155 -0
  63. package/components/up-button/props.uts +164 -0
  64. package/components/up-button/up-button.uvue +611 -0
  65. package/components/up-button/up-button.vue +456 -0
  66. package/components/up-button/vue.scss +85 -0
  67. package/components/up-calendar/calendar.js +75 -0
  68. package/components/up-calendar/calendar.uts +61 -0
  69. package/components/up-calendar/header.uvue +233 -0
  70. package/components/up-calendar/header.vue +239 -0
  71. package/components/up-calendar/month.uvue +565 -0
  72. package/components/up-calendar/month.vue +709 -0
  73. package/components/up-calendar/props.js +262 -0
  74. package/components/up-calendar/props.uts +244 -0
  75. package/components/up-calendar/types.uts +18 -0
  76. package/components/up-calendar/up-calendar.uvue +829 -0
  77. package/components/up-calendar/up-calendar.vue +922 -0
  78. package/components/up-calendar/util.js +86 -0
  79. package/components/up-calendar/util.uts +93 -0
  80. package/components/up-calendar-strip/calendarStrip.js +36 -0
  81. package/components/up-calendar-strip/props.js +70 -0
  82. package/components/up-calendar-strip/up-calendar-strip.vue +515 -0
  83. package/components/up-canvas/up-canvas.uvue +508 -0
  84. package/components/up-canvas/up-canvas.vue +655 -0
  85. package/components/up-car-keyboard/carKeyboard.js +15 -0
  86. package/components/up-car-keyboard/carKeyboard.uts +16 -0
  87. package/components/up-car-keyboard/props.js +17 -0
  88. package/components/up-car-keyboard/props.uts +27 -0
  89. package/components/up-car-keyboard/up-car-keyboard.uvue +369 -0
  90. package/components/up-car-keyboard/up-car-keyboard.vue +357 -0
  91. package/components/up-card/card.uts +58 -0
  92. package/components/up-card/props.js +140 -0
  93. package/components/up-card/props.uts +150 -0
  94. package/components/up-card/up-card.uvue +308 -0
  95. package/components/up-card/up-card.vue +188 -0
  96. package/components/up-cascader/up-cascader.uvue +427 -0
  97. package/components/up-cascader/up-cascader.vue +331 -0
  98. package/components/up-cate-tab/up-cate-tab.uvue +426 -0
  99. package/components/up-cate-tab/up-cate-tab.vue +374 -0
  100. package/components/up-cell/cell.js +35 -0
  101. package/components/up-cell/cell.uts +35 -0
  102. package/components/up-cell/props.js +113 -0
  103. package/components/up-cell/props.uts +108 -0
  104. package/components/up-cell/up-cell.uvue +336 -0
  105. package/components/up-cell/up-cell.vue +266 -0
  106. package/components/up-cell-group/cellGroup.js +16 -0
  107. package/components/up-cell-group/cellGroup.uts +16 -0
  108. package/components/up-cell-group/props.js +16 -0
  109. package/components/up-cell-group/props.uts +26 -0
  110. package/components/up-cell-group/up-cell-group.uvue +70 -0
  111. package/components/up-cell-group/up-cell-group.vue +72 -0
  112. package/components/up-checkbox/checkbox.js +27 -0
  113. package/components/up-checkbox/checkbox.uts +27 -0
  114. package/components/up-checkbox/props.js +76 -0
  115. package/components/up-checkbox/props.uts +77 -0
  116. package/components/up-checkbox/up-checkbox.uvue +533 -0
  117. package/components/up-checkbox/up-checkbox.vue +409 -0
  118. package/components/up-checkbox-group/checkboxGroup.js +29 -0
  119. package/components/up-checkbox-group/checkboxGroup.uts +29 -0
  120. package/components/up-checkbox-group/props.js +93 -0
  121. package/components/up-checkbox-group/props.uts +84 -0
  122. package/components/up-checkbox-group/up-checkbox-group.uvue +211 -0
  123. package/components/up-checkbox-group/up-checkbox-group.vue +185 -0
  124. package/components/up-choose/up-choose.uvue +130 -0
  125. package/components/up-choose/up-choose.vue +117 -0
  126. package/components/up-circle-progress/circleProgress.js +15 -0
  127. package/components/up-circle-progress/props.js +10 -0
  128. package/components/up-circle-progress/up-circle-progress.vue +187 -0
  129. package/components/up-city-locate/up-city-locate.uvue +188 -0
  130. package/components/up-city-locate/up-city-locate.vue +162 -0
  131. package/components/up-code/code.js +21 -0
  132. package/components/up-code/code.uts +20 -0
  133. package/components/up-code/props.js +36 -0
  134. package/components/up-code/props.uts +47 -0
  135. package/components/up-code/up-code.uvue +184 -0
  136. package/components/up-code/up-code.vue +117 -0
  137. package/components/up-code-input/codeInput.js +29 -0
  138. package/components/up-code-input/codeInput.uts +29 -0
  139. package/components/up-code-input/props.js +90 -0
  140. package/components/up-code-input/props.uts +83 -0
  141. package/components/up-code-input/up-code-input.uvue +365 -0
  142. package/components/up-code-input/up-code-input.vue +269 -0
  143. package/components/up-col/col.js +19 -0
  144. package/components/up-col/col.uts +19 -0
  145. package/components/up-col/props.js +32 -0
  146. package/components/up-col/props.uts +41 -0
  147. package/components/up-col/up-col.uvue +215 -0
  148. package/components/up-col/up-col.vue +160 -0
  149. package/components/up-collapse/collapse.js +17 -0
  150. package/components/up-collapse/collapse.uts +17 -0
  151. package/components/up-collapse/props.js +21 -0
  152. package/components/up-collapse/props.uts +23 -0
  153. package/components/up-collapse/up-collapse.uvue +133 -0
  154. package/components/up-collapse/up-collapse.vue +116 -0
  155. package/components/up-collapse-item/collapseItem.js +26 -0
  156. package/components/up-collapse-item/collapseItem.uts +26 -0
  157. package/components/up-collapse-item/props.js +66 -0
  158. package/components/up-collapse-item/props.uts +69 -0
  159. package/components/up-collapse-item/up-collapse-item.uvue +294 -0
  160. package/components/up-collapse-item/up-collapse-item.vue +279 -0
  161. package/components/up-color-picker/up-color-picker.uvue +1045 -0
  162. package/components/up-color-picker/up-color-picker.vue +1081 -0
  163. package/components/up-column-notice/columnNotice.js +24 -0
  164. package/components/up-column-notice/columnNotice.uts +24 -0
  165. package/components/up-column-notice/props.js +57 -0
  166. package/components/up-column-notice/props.uts +59 -0
  167. package/components/up-column-notice/up-column-notice.uvue +198 -0
  168. package/components/up-column-notice/up-column-notice.vue +162 -0
  169. package/components/up-copy/up-copy.uvue +77 -0
  170. package/components/up-copy/up-copy.vue +75 -0
  171. package/components/up-count-down/countDown.js +18 -0
  172. package/components/up-count-down/countDown.uts +18 -0
  173. package/components/up-count-down/props.js +26 -0
  174. package/components/up-count-down/props.uts +37 -0
  175. package/components/up-count-down/up-count-down.uvue +198 -0
  176. package/components/up-count-down/up-count-down.vue +186 -0
  177. package/components/up-count-down/utils.js +62 -0
  178. package/components/up-count-down/utils.uts +67 -0
  179. package/components/up-count-to/countTo.js +25 -0
  180. package/components/up-count-to/countTo.uts +25 -0
  181. package/components/up-count-to/props.js +61 -0
  182. package/components/up-count-to/props.uts +72 -0
  183. package/components/up-count-to/up-count-to.uvue +309 -0
  184. package/components/up-count-to/up-count-to.vue +209 -0
  185. package/components/up-coupon/up-coupon.uvue +346 -0
  186. package/components/up-coupon/up-coupon.vue +415 -0
  187. package/components/up-cropper/up-cropper.uvue +899 -0
  188. package/components/up-cropper/up-cropper.vue +1392 -0
  189. package/components/up-datetime-picker/datetimePicker.js +40 -0
  190. package/components/up-datetime-picker/datetimePicker.uts +45 -0
  191. package/components/up-datetime-picker/dayjs.esm.min.js +7 -0
  192. package/components/up-datetime-picker/props.js +165 -0
  193. package/components/up-datetime-picker/props.uts +169 -0
  194. package/components/up-datetime-picker/up-datetime-picker.uvue +960 -0
  195. package/components/up-datetime-picker/up-datetime-picker.vue +765 -0
  196. package/components/up-divider/divider.js +23 -0
  197. package/components/up-divider/divider.uts +22 -0
  198. package/components/up-divider/props.js +46 -0
  199. package/components/up-divider/props.uts +57 -0
  200. package/components/up-divider/up-divider.uvue +151 -0
  201. package/components/up-divider/up-divider.vue +112 -0
  202. package/components/up-dragsort/up-dragsort.uvue +821 -0
  203. package/components/up-dragsort/up-dragsort.vue +410 -0
  204. package/components/up-dropdown/dropdown.uts +25 -0
  205. package/components/up-dropdown/props.js +61 -0
  206. package/components/up-dropdown/props.uts +72 -0
  207. package/components/up-dropdown/types.uts +5 -0
  208. package/components/up-dropdown/up-dropdown.uvue +366 -0
  209. package/components/up-dropdown/up-dropdown.vue +297 -0
  210. package/components/up-dropdown-item/dropdown-item.uts +25 -0
  211. package/components/up-dropdown-item/props.js +47 -0
  212. package/components/up-dropdown-item/props.uts +56 -0
  213. package/components/up-dropdown-item/up-dropdown-item.uvue +196 -0
  214. package/components/up-dropdown-item/up-dropdown-item.vue +123 -0
  215. package/components/up-empty/empty.js +26 -0
  216. package/components/up-empty/empty.uts +24 -0
  217. package/components/up-empty/props.js +61 -0
  218. package/components/up-empty/props.uts +71 -0
  219. package/components/up-empty/up-empty.uvue +193 -0
  220. package/components/up-empty/up-empty.vue +116 -0
  221. package/components/up-flex/flex.js +10 -0
  222. package/components/up-flex/flex.uts +10 -0
  223. package/components/up-flex/props.js +12 -0
  224. package/components/up-flex/props.uts +13 -0
  225. package/components/up-flex/up-flex.uvue +71 -0
  226. package/components/up-flex/up-flex.vue +62 -0
  227. package/components/up-float-button/up-float-button.uvue +194 -0
  228. package/components/up-float-button/up-float-button.vue +160 -0
  229. package/components/up-form/form.js +22 -0
  230. package/components/up-form/form.uts +22 -0
  231. package/components/up-form/props.js +47 -0
  232. package/components/up-form/props.uts +57 -0
  233. package/components/up-form/types.uts +18 -0
  234. package/components/up-form/up-form.uvue +480 -0
  235. package/components/up-form/up-form.vue +297 -0
  236. package/components/up-form-item/formItem.js +24 -0
  237. package/components/up-form-item/formItem.uts +24 -0
  238. package/components/up-form-item/props.js +55 -0
  239. package/components/up-form-item/props.uts +65 -0
  240. package/components/up-form-item/up-form-item.uvue +349 -0
  241. package/components/up-form-item/up-form-item.vue +276 -0
  242. package/components/up-gap/gap.js +19 -0
  243. package/components/up-gap/gap.uts +19 -0
  244. package/components/up-gap/props.js +27 -0
  245. package/components/up-gap/props.uts +36 -0
  246. package/components/up-gap/up-gap.uvue +53 -0
  247. package/components/up-gap/up-gap.vue +38 -0
  248. package/components/up-goods-sku/up-goods-sku.uvue +564 -0
  249. package/components/up-goods-sku/up-goods-sku.vue +436 -0
  250. package/components/up-grid/grid.js +17 -0
  251. package/components/up-grid/grid.uts +17 -0
  252. package/components/up-grid/props.js +29 -0
  253. package/components/up-grid/props.uts +37 -0
  254. package/components/up-grid/up-grid.uvue +161 -0
  255. package/components/up-grid/up-grid.vue +119 -0
  256. package/components/up-grid-item/gridItem.js +16 -0
  257. package/components/up-grid-item/gridItem.uts +16 -0
  258. package/components/up-grid-item/props.js +16 -0
  259. package/components/up-grid-item/props.uts +27 -0
  260. package/components/up-grid-item/up-grid-item.uvue +227 -0
  261. package/components/up-grid-item/up-grid-item.vue +244 -0
  262. package/components/up-guide/guide.js +16 -0
  263. package/components/up-guide/props.js +53 -0
  264. package/components/up-guide/up-guide.vue +274 -0
  265. package/components/up-icon/icon.js +36 -0
  266. package/components/up-icon/icon.uts +33 -0
  267. package/components/up-icon/icons.js +426 -0
  268. package/components/up-icon/icons.uts +222 -0
  269. package/components/up-icon/props.js +92 -0
  270. package/components/up-icon/props.uts +101 -0
  271. package/components/up-icon/up-icon.uvue +300 -0
  272. package/components/up-icon/up-icon.vue +259 -0
  273. package/components/up-icon/upicon.ttf +0 -0
  274. package/components/up-icon/util.js +212 -0
  275. package/components/up-image/image.js +30 -0
  276. package/components/up-image/image.uts +30 -0
  277. package/components/up-image/props.js +87 -0
  278. package/components/up-image/props.uts +88 -0
  279. package/components/up-image/up-image.uvue +254 -0
  280. package/components/up-image/up-image.vue +253 -0
  281. package/components/up-index-anchor/indexAnchor.js +19 -0
  282. package/components/up-index-anchor/indexAnchor.uts +19 -0
  283. package/components/up-index-anchor/props.js +31 -0
  284. package/components/up-index-anchor/props.uts +41 -0
  285. package/components/up-index-anchor/up-index-anchor.uvue +146 -0
  286. package/components/up-index-anchor/up-index-anchor.vue +124 -0
  287. package/components/up-index-item/indexItem.uts +15 -0
  288. package/components/up-index-item/props.js +8 -0
  289. package/components/up-index-item/props.uts +15 -0
  290. package/components/up-index-item/up-index-item.uvue +109 -0
  291. package/components/up-index-item/up-index-item.vue +105 -0
  292. package/components/up-index-list/indexList.js +21 -0
  293. package/components/up-index-list/indexList.uts +21 -0
  294. package/components/up-index-list/props.js +41 -0
  295. package/components/up-index-list/props.uts +51 -0
  296. package/components/up-index-list/up-index-list.uvue +594 -0
  297. package/components/up-index-list/up-index-list.vue +643 -0
  298. package/components/up-input/input.js +48 -0
  299. package/components/up-input/input.uts +49 -0
  300. package/components/up-input/props.js +198 -0
  301. package/components/up-input/props.uts +198 -0
  302. package/components/up-input/up-input.uvue +571 -0
  303. package/components/up-input/up-input.vue +441 -0
  304. package/components/up-keyboard/keyboard.js +30 -0
  305. package/components/up-keyboard/keyboard.uts +30 -0
  306. package/components/up-keyboard/props.js +86 -0
  307. package/components/up-keyboard/props.uts +97 -0
  308. package/components/up-keyboard/up-keyboard.uvue +253 -0
  309. package/components/up-keyboard/up-keyboard.vue +188 -0
  310. package/components/up-lazy-load/lazyLoad.uts +19 -0
  311. package/components/up-lazy-load/props.uts +74 -0
  312. package/components/up-lazy-load/up-lazy-load.uvue +340 -0
  313. package/components/up-lazy-load/up-lazy-load.vue +280 -0
  314. package/components/up-line/line.js +20 -0
  315. package/components/up-line/line.uts +20 -0
  316. package/components/up-line/props.js +36 -0
  317. package/components/up-line/props.uts +37 -0
  318. package/components/up-line/up-line.uvue +97 -0
  319. package/components/up-line/up-line.vue +61 -0
  320. package/components/up-line-progress/lineProgress.js +19 -0
  321. package/components/up-line-progress/lineProgress.uts +9 -0
  322. package/components/up-line-progress/props.js +30 -0
  323. package/components/up-line-progress/up-line-progress.uvue +165 -0
  324. package/components/up-line-progress/up-line-progress.vue +155 -0
  325. package/components/up-link/link.js +26 -0
  326. package/components/up-link/link.uts +23 -0
  327. package/components/up-link/props.js +41 -0
  328. package/components/up-link/props.uts +43 -0
  329. package/components/up-link/up-link.uvue +136 -0
  330. package/components/up-link/up-link.vue +75 -0
  331. package/components/up-list/list.js +28 -0
  332. package/components/up-list/list.uts +33 -0
  333. package/components/up-list/props.js +101 -0
  334. package/components/up-list/props.uts +111 -0
  335. package/components/up-list/up-list.uvue +255 -0
  336. package/components/up-list/up-list.vue +230 -0
  337. package/components/up-list-item/listItem.js +15 -0
  338. package/components/up-list-item/listItem.uts +15 -0
  339. package/components/up-list-item/props.js +11 -0
  340. package/components/up-list-item/props.uts +21 -0
  341. package/components/up-list-item/up-list-item.uvue +126 -0
  342. package/components/up-list-item/up-list-item.vue +155 -0
  343. package/components/up-loading-icon/loadingIcon.js +30 -0
  344. package/components/up-loading-icon/loadingIcon.uts +28 -0
  345. package/components/up-loading-icon/props.js +62 -0
  346. package/components/up-loading-icon/props.uts +71 -0
  347. package/components/up-loading-icon/up-loading-icon.uvue +439 -0
  348. package/components/up-loading-icon/up-loading-icon.vue +357 -0
  349. package/components/up-loading-page/loadingPage.js +24 -0
  350. package/components/up-loading-page/loadingPage.uts +24 -0
  351. package/components/up-loading-page/props.js +57 -0
  352. package/components/up-loading-page/props.uts +58 -0
  353. package/components/up-loading-page/up-loading-page.uvue +197 -0
  354. package/components/up-loading-page/up-loading-page.vue +109 -0
  355. package/components/up-loadmore/loadmore.js +32 -0
  356. package/components/up-loadmore/loadmore.uts +32 -0
  357. package/components/up-loadmore/props.js +96 -0
  358. package/components/up-loadmore/props.uts +107 -0
  359. package/components/up-loadmore/up-loadmore.uvue +247 -0
  360. package/components/up-loadmore/up-loadmore.vue +132 -0
  361. package/components/up-markdown/marked.esm.js +7 -0
  362. package/components/up-markdown/up-markdown.uvue +171 -0
  363. package/components/up-markdown/up-markdown.vue +289 -0
  364. package/components/up-message-input/up-message-input.uvue +113 -0
  365. package/components/up-message-input/up-message-input.vue +111 -0
  366. package/components/up-modal/modal.js +36 -0
  367. package/components/up-modal/modal.uts +36 -0
  368. package/components/up-modal/props.js +111 -0
  369. package/components/up-modal/props.uts +113 -0
  370. package/components/up-modal/up-modal.uvue +407 -0
  371. package/components/up-modal/up-modal.vue +268 -0
  372. package/components/up-navbar/navbar.js +33 -0
  373. package/components/up-navbar/navbar.uts +34 -0
  374. package/components/up-navbar/props.js +97 -0
  375. package/components/up-navbar/props.uts +98 -0
  376. package/components/up-navbar/theme-vars.scss +26 -0
  377. package/components/up-navbar/up-navbar.uvue +467 -0
  378. package/components/up-navbar/up-navbar.vue +316 -0
  379. package/components/up-navbar-mini/navbarMini.js +23 -0
  380. package/components/up-navbar-mini/navbarMini.uts +23 -0
  381. package/components/up-navbar-mini/props.js +51 -0
  382. package/components/up-navbar-mini/props.uts +53 -0
  383. package/components/up-navbar-mini/up-navbar-mini.uvue +184 -0
  384. package/components/up-navbar-mini/up-navbar-mini.vue +135 -0
  385. package/components/up-no-network/noNetwork.js +18 -0
  386. package/components/up-no-network/noNetwork.uts +18 -0
  387. package/components/up-no-network/props.js +21 -0
  388. package/components/up-no-network/props.uts +31 -0
  389. package/components/up-no-network/up-no-network.uvue +218 -0
  390. package/components/up-no-network/up-no-network.vue +231 -0
  391. package/components/up-notice-bar/noticeBar.js +27 -0
  392. package/components/up-notice-bar/noticeBar.uts +27 -0
  393. package/components/up-notice-bar/props.js +72 -0
  394. package/components/up-notice-bar/props.uts +74 -0
  395. package/components/up-notice-bar/theme-vars.scss +25 -0
  396. package/components/up-notice-bar/up-notice-bar.uvue +179 -0
  397. package/components/up-notice-bar/up-notice-bar.vue +110 -0
  398. package/components/up-notify/notify.js +22 -0
  399. package/components/up-notify/notify.uts +22 -0
  400. package/components/up-notify/props.js +51 -0
  401. package/components/up-notify/props.uts +56 -0
  402. package/components/up-notify/up-notify.uvue +327 -0
  403. package/components/up-notify/up-notify.vue +248 -0
  404. package/components/up-novel-reader/content-normalizer.js +80 -0
  405. package/components/up-novel-reader/content-normalizer.uts +112 -0
  406. package/components/up-novel-reader/layout-engine.js +222 -0
  407. package/components/up-novel-reader/layout-engine.uts +256 -0
  408. package/components/up-novel-reader/measure-adapter.js +69 -0
  409. package/components/up-novel-reader/measure-adapter.uts +56 -0
  410. package/components/up-novel-reader/novelReader.js +35 -0
  411. package/components/up-novel-reader/novelReader.uts +37 -0
  412. package/components/up-novel-reader/persistence.js +143 -0
  413. package/components/up-novel-reader/persistence.uts +137 -0
  414. package/components/up-novel-reader/props.js +97 -0
  415. package/components/up-novel-reader/props.uts +97 -0
  416. package/components/up-novel-reader/reader-catalog.uvue +92 -0
  417. package/components/up-novel-reader/reader-catalog.vue +202 -0
  418. package/components/up-novel-reader/reader-content.uvue +167 -0
  419. package/components/up-novel-reader/reader-content.vue +227 -0
  420. package/components/up-novel-reader/reader-core.js +158 -0
  421. package/components/up-novel-reader/reader-core.uts +175 -0
  422. package/components/up-novel-reader/reader-settings.uvue +136 -0
  423. package/components/up-novel-reader/reader-settings.vue +215 -0
  424. package/components/up-novel-reader/reader-toolbar.uvue +127 -0
  425. package/components/up-novel-reader/reader-toolbar.vue +303 -0
  426. package/components/up-novel-reader/theme-vars.scss +49 -0
  427. package/components/up-novel-reader/up-novel-reader.uvue +831 -0
  428. package/components/up-novel-reader/up-novel-reader.vue +760 -0
  429. package/components/up-number-box/numberBox.js +40 -0
  430. package/components/up-number-box/numberBox.uts +40 -0
  431. package/components/up-number-box/props.js +145 -0
  432. package/components/up-number-box/props.uts +148 -0
  433. package/components/up-number-box/up-number-box.uvue +630 -0
  434. package/components/up-number-box/up-number-box.vue +417 -0
  435. package/components/up-number-keyboard/numberKeyboard.js +17 -0
  436. package/components/up-number-keyboard/numberKeyboard.uts +17 -0
  437. package/components/up-number-keyboard/props.js +21 -0
  438. package/components/up-number-keyboard/props.uts +32 -0
  439. package/components/up-number-keyboard/up-number-keyboard.uvue +223 -0
  440. package/components/up-number-keyboard/up-number-keyboard.vue +234 -0
  441. package/components/up-overlay/overlay.js +18 -0
  442. package/components/up-overlay/overlay.uts +18 -0
  443. package/components/up-overlay/props.js +26 -0
  444. package/components/up-overlay/props.uts +28 -0
  445. package/components/up-overlay/up-overlay.uvue +96 -0
  446. package/components/up-overlay/up-overlay.vue +67 -0
  447. package/components/up-pagination/up-pagination.uvue +417 -0
  448. package/components/up-pagination/up-pagination.vue +283 -0
  449. package/components/up-parse/node/node.vue +599 -0
  450. package/components/up-parse/parse.js +22 -0
  451. package/components/up-parse/parser.js +1334 -0
  452. package/components/up-parse/props.js +48 -0
  453. package/components/up-parse/props.uts +68 -0
  454. package/components/up-parse/up-parse.uvue +561 -0
  455. package/components/up-parse/up-parse.vue +554 -0
  456. package/components/up-pdf-reader/props.js +19 -0
  457. package/components/up-pdf-reader/props.uts +19 -0
  458. package/components/up-pdf-reader/up-pdf-reader.uvue +83 -0
  459. package/components/up-pdf-reader/up-pdf-reader.vue +58 -0
  460. package/components/up-picker/picker.js +31 -0
  461. package/components/up-picker/picker.uts +31 -0
  462. package/components/up-picker/props.js +108 -0
  463. package/components/up-picker/props.uts +119 -0
  464. package/components/up-picker/up-picker.uvue +550 -0
  465. package/components/up-picker/up-picker.vue +336 -0
  466. package/components/up-picker-column/props.js +7 -0
  467. package/components/up-picker-column/props.uts +7 -0
  468. package/components/up-picker-column/up-picker-column.uvue +25 -0
  469. package/components/up-picker-column/up-picker-column.vue +36 -0
  470. package/components/up-picker-data/up-picker-data.uvue +149 -0
  471. package/components/up-picker-data/up-picker-data.vue +137 -0
  472. package/components/up-popover/props.js +59 -0
  473. package/components/up-popover/props.uts +58 -0
  474. package/components/up-popover/up-popover.uvue +161 -0
  475. package/components/up-popover/up-popover.vue +109 -0
  476. package/components/up-popup/popup.js +30 -0
  477. package/components/up-popup/popup.uts +29 -0
  478. package/components/up-popup/props.js +86 -0
  479. package/components/up-popup/props.uts +96 -0
  480. package/components/up-popup/up-popup.uvue +433 -0
  481. package/components/up-popup/up-popup.vue +378 -0
  482. package/components/up-poster/up-poster.uvue +944 -0
  483. package/components/up-poster/up-poster.vue +628 -0
  484. package/components/up-pull-refresh/up-pull-refresh.uvue +326 -0
  485. package/components/up-pull-refresh/up-pull-refresh.vue +319 -0
  486. package/components/up-qrcode/qrcode.js +1275 -0
  487. package/components/up-qrcode/qrcode.uts +480 -0
  488. package/components/up-qrcode/up-qrcode.uvue +502 -0
  489. package/components/up-qrcode/up-qrcode.vue +493 -0
  490. package/components/up-radio/props.js +71 -0
  491. package/components/up-radio/props.uts +81 -0
  492. package/components/up-radio/radio.js +27 -0
  493. package/components/up-radio/radio.uts +27 -0
  494. package/components/up-radio/up-radio.uvue +512 -0
  495. package/components/up-radio/up-radio.vue +382 -0
  496. package/components/up-radio-group/props.js +95 -0
  497. package/components/up-radio-group/props.uts +90 -0
  498. package/components/up-radio-group/radioGroup.js +30 -0
  499. package/components/up-radio-group/radioGroup.uts +30 -0
  500. package/components/up-radio-group/up-radio-group.uvue +211 -0
  501. package/components/up-radio-group/up-radio-group.vue +184 -0
  502. package/components/up-rate/props.js +80 -0
  503. package/components/up-rate/props.uts +82 -0
  504. package/components/up-rate/rate.js +26 -0
  505. package/components/up-rate/rate.uts +27 -0
  506. package/components/up-rate/up-rate.uvue +484 -0
  507. package/components/up-rate/up-rate.vue +367 -0
  508. package/components/up-read-more/props.js +63 -0
  509. package/components/up-read-more/props.uts +61 -0
  510. package/components/up-read-more/readMore.js +23 -0
  511. package/components/up-read-more/readMore.uts +23 -0
  512. package/components/up-read-more/up-read-more.uvue +252 -0
  513. package/components/up-read-more/up-read-more.vue +169 -0
  514. package/components/up-refresh-virtual-list/up-refresh-virtual-list.uvue +95 -0
  515. package/components/up-refresh-virtual-list/up-refresh-virtual-list.vue +100 -0
  516. package/components/up-root-toast-host/up-root-toast-host.vue +12 -0
  517. package/components/up-row/props.js +22 -0
  518. package/components/up-row/props.uts +31 -0
  519. package/components/up-row/row.js +17 -0
  520. package/components/up-row/row.uts +17 -0
  521. package/components/up-row/up-row.uvue +137 -0
  522. package/components/up-row/up-row.vue +104 -0
  523. package/components/up-row-notice/props.js +41 -0
  524. package/components/up-row-notice/props.uts +43 -0
  525. package/components/up-row-notice/rowNotice.js +21 -0
  526. package/components/up-row-notice/rowNotice.uts +21 -0
  527. package/components/up-row-notice/up-row-notice.uvue +310 -0
  528. package/components/up-row-notice/up-row-notice.vue +346 -0
  529. package/components/up-safe-bottom/props.js +7 -0
  530. package/components/up-safe-bottom/props.uts +6 -0
  531. package/components/up-safe-bottom/up-safe-bottom.uvue +60 -0
  532. package/components/up-safe-bottom/up-safe-bottom.vue +54 -0
  533. package/components/up-scroll-list/nvue.js +31 -0
  534. package/components/up-scroll-list/props.js +36 -0
  535. package/components/up-scroll-list/props.uts +38 -0
  536. package/components/up-scroll-list/scrollList.js +20 -0
  537. package/components/up-scroll-list/scrollList.uts +20 -0
  538. package/components/up-scroll-list/scrollWxs.wxs +50 -0
  539. package/components/up-scroll-list/up-scroll-list.uvue +262 -0
  540. package/components/up-scroll-list/up-scroll-list.vue +253 -0
  541. package/components/up-search/props.js +156 -0
  542. package/components/up-search/props.uts +152 -0
  543. package/components/up-search/search.js +41 -0
  544. package/components/up-search/search.uts +41 -0
  545. package/components/up-search/up-search.uvue +537 -0
  546. package/components/up-search/up-search.vue +347 -0
  547. package/components/up-section/section.js +16 -0
  548. package/components/up-section/section.uts +16 -0
  549. package/components/up-select/up-select.uvue +323 -0
  550. package/components/up-select/up-select.vue +239 -0
  551. package/components/up-short-video/up-short-video.uvue +659 -0
  552. package/components/up-short-video/up-short-video.vue +488 -0
  553. package/components/up-signature/up-signature.uvue +563 -0
  554. package/components/up-signature/up-signature.vue +534 -0
  555. package/components/up-skeleton/props.js +61 -0
  556. package/components/up-skeleton/props.uts +69 -0
  557. package/components/up-skeleton/skeleton.js +25 -0
  558. package/components/up-skeleton/skeleton.uts +22 -0
  559. package/components/up-skeleton/up-skeleton.uvue +279 -0
  560. package/components/up-skeleton/up-skeleton.vue +246 -0
  561. package/components/up-slider/props.js +95 -0
  562. package/components/up-slider/props.uts +102 -0
  563. package/components/up-slider/slider.js +28 -0
  564. package/components/up-slider/slider.uts +25 -0
  565. package/components/up-slider/up-slider.uvue +679 -0
  566. package/components/up-slider/up-slider.vue +524 -0
  567. package/components/up-status-bar/props.js +10 -0
  568. package/components/up-status-bar/props.uts +12 -0
  569. package/components/up-status-bar/statusBar.js +15 -0
  570. package/components/up-status-bar/statusBar.uts +15 -0
  571. package/components/up-status-bar/up-status-bar.uvue +52 -0
  572. package/components/up-status-bar/up-status-bar.vue +46 -0
  573. package/components/up-steps/props.js +41 -0
  574. package/components/up-steps/props.uts +43 -0
  575. package/components/up-steps/steps.js +21 -0
  576. package/components/up-steps/steps.uts +22 -0
  577. package/components/up-steps/up-steps.uvue +153 -0
  578. package/components/up-steps/up-steps.vue +118 -0
  579. package/components/up-steps-item/props.js +31 -0
  580. package/components/up-steps-item/props.uts +33 -0
  581. package/components/up-steps-item/stepsItem.js +18 -0
  582. package/components/up-steps-item/stepsItem.uts +18 -0
  583. package/components/up-steps-item/up-steps-item.uvue +448 -0
  584. package/components/up-steps-item/up-steps-item.vue +349 -0
  585. package/components/up-sticky/props.js +42 -0
  586. package/components/up-sticky/props.uts +52 -0
  587. package/components/up-sticky/sticky.js +20 -0
  588. package/components/up-sticky/sticky.uts +20 -0
  589. package/components/up-sticky/up-sticky.uvue +238 -0
  590. package/components/up-sticky/up-sticky.vue +220 -0
  591. package/components/up-subsection/props.js +66 -0
  592. package/components/up-subsection/props.uts +68 -0
  593. package/components/up-subsection/subsection.js +26 -0
  594. package/components/up-subsection/subsection.uts +26 -0
  595. package/components/up-subsection/theme-vars.scss +41 -0
  596. package/components/up-subsection/up-subsection.uvue +404 -0
  597. package/components/up-subsection/up-subsection.vue +327 -0
  598. package/components/up-swipe-action/props.js +16 -0
  599. package/components/up-swipe-action/props.uts +18 -0
  600. package/components/up-swipe-action/swipeAction.js +15 -0
  601. package/components/up-swipe-action/swipeAction.uts +16 -0
  602. package/components/up-swipe-action/up-swipe-action.uvue +105 -0
  603. package/components/up-swipe-action/up-swipe-action.vue +95 -0
  604. package/components/up-swipe-action-item/alipay.sjs +229 -0
  605. package/components/up-swipe-action-item/index.wxs +252 -0
  606. package/components/up-swipe-action-item/nvue.js +174 -0
  607. package/components/up-swipe-action-item/other.js +178 -0
  608. package/components/up-swipe-action-item/other.uts +176 -0
  609. package/components/up-swipe-action-item/props.js +52 -0
  610. package/components/up-swipe-action-item/props.uts +53 -0
  611. package/components/up-swipe-action-item/swipeActionItem.js +23 -0
  612. package/components/up-swipe-action-item/swipeActionItem.uts +24 -0
  613. package/components/up-swipe-action-item/types.uts +11 -0
  614. package/components/up-swipe-action-item/up-swipe-action-item.uvue +476 -0
  615. package/components/up-swipe-action-item/up-swipe-action-item.vue +752 -0
  616. package/components/up-swipe-action-item/wxs.js +15 -0
  617. package/components/up-swiper/props.js +132 -0
  618. package/components/up-swiper/props.uts +142 -0
  619. package/components/up-swiper/swiper.js +40 -0
  620. package/components/up-swiper/swiper.uts +39 -0
  621. package/components/up-swiper/up-swiper.uvue +455 -0
  622. package/components/up-swiper/up-swiper.vue +274 -0
  623. package/components/up-swiper-indicator/props.js +31 -0
  624. package/components/up-swiper-indicator/props.uts +41 -0
  625. package/components/up-swiper-indicator/swipterIndicator.js +19 -0
  626. package/components/up-swiper-indicator/swipterIndicator.uts +19 -0
  627. package/components/up-swiper-indicator/up-swiper-indicator.uvue +147 -0
  628. package/components/up-swiper-indicator/up-swiper-indicator.vue +112 -0
  629. package/components/up-switch/props.js +64 -0
  630. package/components/up-switch/props.uts +82 -0
  631. package/components/up-switch/switch.js +24 -0
  632. package/components/up-switch/switch.uts +27 -0
  633. package/components/up-switch/theme-vars.scss +41 -0
  634. package/components/up-switch/up-switch.uvue +257 -0
  635. package/components/up-switch/up-switch.vue +211 -0
  636. package/components/up-tabbar/props.js +57 -0
  637. package/components/up-tabbar/props.uts +66 -0
  638. package/components/up-tabbar/tabbar.js +24 -0
  639. package/components/up-tabbar/tabbar.uts +24 -0
  640. package/components/up-tabbar/up-tabbar.uvue +254 -0
  641. package/components/up-tabbar/up-tabbar.vue +208 -0
  642. package/components/up-tabbar-item/midButtonGeometry.js +23 -0
  643. package/components/up-tabbar-item/midButtonGeometry.uts +15 -0
  644. package/components/up-tabbar-item/props.js +71 -0
  645. package/components/up-tabbar-item/props.uts +81 -0
  646. package/components/up-tabbar-item/tabbarItem.js +27 -0
  647. package/components/up-tabbar-item/tabbarItem.uts +27 -0
  648. package/components/up-tabbar-item/up-tabbar-item.uvue +554 -0
  649. package/components/up-tabbar-item/up-tabbar-item.vue +428 -0
  650. package/components/up-table/props.js +7 -0
  651. package/components/up-table/props.uts +39 -0
  652. package/components/up-table/table.uts +21 -0
  653. package/components/up-table/up-table.uvue +128 -0
  654. package/components/up-table/up-table.vue +132 -0
  655. package/components/up-table2/tableRow.uvue +389 -0
  656. package/components/up-table2/tableRow.vue +329 -0
  657. package/components/up-table2/up-table2.uvue +1504 -0
  658. package/components/up-table2/up-table2.vue +911 -0
  659. package/components/up-tabs/props.js +76 -0
  660. package/components/up-tabs/props.uts +73 -0
  661. package/components/up-tabs/tabs.js +34 -0
  662. package/components/up-tabs/tabs.uts +35 -0
  663. package/components/up-tabs/types.uts +19 -0
  664. package/components/up-tabs/up-tabs.uvue +691 -0
  665. package/components/up-tabs/up-tabs.vue +561 -0
  666. package/components/up-tabs-item/props.js +7 -0
  667. package/components/up-tabs-item/props.uts +7 -0
  668. package/components/up-tabs-item/up-tabs-item.uvue +23 -0
  669. package/components/up-tabs-item/up-tabs-item.vue +34 -0
  670. package/components/up-tabs-pro/up-tabs-pro.uvue +242 -0
  671. package/components/up-tabs-pro/up-tabs-pro.vue +202 -0
  672. package/components/up-tag/props.js +91 -0
  673. package/components/up-tag/props.uts +100 -0
  674. package/components/up-tag/tag.js +30 -0
  675. package/components/up-tag/tag.uts +30 -0
  676. package/components/up-tag/theme-vars.scss +21 -0
  677. package/components/up-tag/up-tag.uvue +469 -0
  678. package/components/up-tag/up-tag.vue +377 -0
  679. package/components/up-td/props.js +7 -0
  680. package/components/up-td/props.uts +7 -0
  681. package/components/up-td/td.uts +19 -0
  682. package/components/up-td/up-td.uvue +124 -0
  683. package/components/up-td/up-td.vue +99 -0
  684. package/components/up-text/props.js +123 -0
  685. package/components/up-text/props.uts +159 -0
  686. package/components/up-text/text.js +40 -0
  687. package/components/up-text/text.uts +45 -0
  688. package/components/up-text/up-text.uvue +536 -0
  689. package/components/up-text/up-text.vue +365 -0
  690. package/components/up-text/value.js +87 -0
  691. package/components/up-textarea/props.js +132 -0
  692. package/components/up-textarea/props.uts +130 -0
  693. package/components/up-textarea/textarea.js +40 -0
  694. package/components/up-textarea/textarea.uts +40 -0
  695. package/components/up-textarea/up-textarea.uvue +440 -0
  696. package/components/up-textarea/up-textarea.vue +294 -0
  697. package/components/up-th/props.js +7 -0
  698. package/components/up-th/props.uts +7 -0
  699. package/components/up-th/th.uts +16 -0
  700. package/components/up-th/up-th.uvue +93 -0
  701. package/components/up-th/up-th.vue +69 -0
  702. package/components/up-title/up-title.uvue +27 -0
  703. package/components/up-title/up-title.vue +38 -0
  704. package/components/up-toast/toast.js +30 -0
  705. package/components/up-toast/toast.uts +29 -0
  706. package/components/up-toast/up-toast.uvue +390 -0
  707. package/components/up-toast/up-toast.vue +354 -0
  708. package/components/up-toolbar/props.js +41 -0
  709. package/components/up-toolbar/props.uts +43 -0
  710. package/components/up-toolbar/toolbar.js +21 -0
  711. package/components/up-toolbar/toolbar.uts +20 -0
  712. package/components/up-toolbar/up-toolbar.uvue +162 -0
  713. package/components/up-toolbar/up-toolbar.vue +131 -0
  714. package/components/up-tooltip/props.js +61 -0
  715. package/components/up-tooltip/props.uts +69 -0
  716. package/components/up-tooltip/tooltip.js +25 -0
  717. package/components/up-tooltip/up-tooltip.uvue +514 -0
  718. package/components/up-tooltip/up-tooltip.vue +325 -0
  719. package/components/up-tr/props.js +7 -0
  720. package/components/up-tr/props.uts +7 -0
  721. package/components/up-tr/up-tr.uvue +19 -0
  722. package/components/up-tr/up-tr.vue +37 -0
  723. package/components/up-transition/nvue-ani-map.js +75 -0
  724. package/components/up-transition/props.js +27 -0
  725. package/components/up-transition/props.uts +36 -0
  726. package/components/up-transition/transition.js +18 -0
  727. package/components/up-transition/transition.uts +18 -0
  728. package/components/up-transition/transitionMixin.js +164 -0
  729. package/components/up-transition/up-transition.uvue +182 -0
  730. package/components/up-transition/up-transition.vue +280 -0
  731. package/components/up-transition/vue.ani-style.scss +113 -0
  732. package/components/up-tree/tree-node.uvue +185 -0
  733. package/components/up-tree/tree-node.vue +141 -0
  734. package/components/up-tree/up-tree.uvue +825 -0
  735. package/components/up-tree/up-tree.vue +604 -0
  736. package/components/up-upload/mixin.js +23 -0
  737. package/components/up-upload/mixin.uts +24 -0
  738. package/components/up-upload/props.js +176 -0
  739. package/components/up-upload/props.uts +176 -0
  740. package/components/up-upload/types.uts +38 -0
  741. package/components/up-upload/up-upload.uvue +1131 -0
  742. package/components/up-upload/up-upload.vue +930 -0
  743. package/components/up-upload/upload.js +46 -0
  744. package/components/up-upload/upload.uts +46 -0
  745. package/components/up-upload/utils.js +183 -0
  746. package/components/up-upload/utils.uts +213 -0
  747. package/components/up-video/danmaku.js +96 -0
  748. package/components/up-video/danmaku.uts +106 -0
  749. package/components/up-video/props.js +200 -0
  750. package/components/up-video/types.uts +48 -0
  751. package/components/up-video/up-video.uvue +1451 -0
  752. package/components/up-video/up-video.vue +1349 -0
  753. package/components/up-video/video-danmaku.uvue +296 -0
  754. package/components/up-video/video-danmaku.vue +264 -0
  755. package/components/up-video/video-slider.uvue +210 -0
  756. package/components/up-video/video-slider.vue +201 -0
  757. package/components/up-video/video-utils.js +105 -0
  758. package/components/up-video/video-utils.uts +127 -0
  759. package/components/up-video/video.js +77 -0
  760. package/components/up-video/video.uts +78 -0
  761. package/components/up-view/up-view.uvue +93 -0
  762. package/components/up-view/up-view.vue +95 -0
  763. package/components/up-virtual-list/up-virtual-list.uvue +265 -0
  764. package/components/up-virtual-list/up-virtual-list.vue +241 -0
  765. package/components/up-waterfall/props.uts +49 -0
  766. package/components/up-waterfall/up-waterfall.uvue +456 -0
  767. package/components/up-waterfall/up-waterfall.vue +444 -0
  768. package/components/up-waterfall/waterfall.uts +20 -0
  769. package/index.js +344 -0
  770. package/index.scss +28 -0
  771. package/index.uts +91 -0
  772. package/libs/composable/useFuncIndex.uts +873 -0
  773. package/libs/composable/useUltraUI.js +201 -0
  774. package/libs/composable/useUltraUI.uts +184 -0
  775. package/libs/config/color.js +19 -0
  776. package/libs/config/color.uts +17 -0
  777. package/libs/config/config.js +48 -0
  778. package/libs/config/config.uts +33 -0
  779. package/libs/config/props.js +210 -0
  780. package/libs/config/props.uts +6 -0
  781. package/libs/config/zIndex.js +20 -0
  782. package/libs/config/zIndex.uts +20 -0
  783. package/libs/css/color.scss +311 -0
  784. package/libs/css/common.scss +121 -0
  785. package/libs/css/components.scss +37 -0
  786. package/libs/css/flex.scss +368 -0
  787. package/libs/css/h5.scss +0 -0
  788. package/libs/css/mixin.scss +8 -0
  789. package/libs/css/mp.scss +0 -0
  790. package/libs/css/nvue.scss +0 -0
  791. package/libs/css/theme-legacy-bridge.scss +6 -0
  792. package/libs/css/theme-vars-core.scss +201 -0
  793. package/libs/css/theme-vars.scss +1 -0
  794. package/libs/css/vue.scss +35 -0
  795. package/libs/function/calc.js +70 -0
  796. package/libs/function/colorGradient.js +134 -0
  797. package/libs/function/colorGradient.uts +316 -0
  798. package/libs/function/debounce.js +29 -0
  799. package/libs/function/debounce.uts +33 -0
  800. package/libs/function/digit.js +167 -0
  801. package/libs/function/digit.uts +182 -0
  802. package/libs/function/index.js +853 -0
  803. package/libs/function/index.uts +852 -0
  804. package/libs/function/platform.js +75 -0
  805. package/libs/function/platform.uts +75 -0
  806. package/libs/function/test.js +332 -0
  807. package/libs/function/test.uts +337 -0
  808. package/libs/function/throttle.js +34 -0
  809. package/libs/function/throttle.uts +36 -0
  810. package/libs/i18n/index.js +88 -0
  811. package/libs/i18n/index.uts +141 -0
  812. package/libs/i18n/locale-packs.js +11 -0
  813. package/libs/i18n/locale-packs.uts +11 -0
  814. package/libs/i18n/locales/all.js +23 -0
  815. package/libs/i18n/locales/all.uts +23 -0
  816. package/libs/i18n/locales/de.js +99 -0
  817. package/libs/i18n/locales/de.uts +99 -0
  818. package/libs/i18n/locales/en.js +99 -0
  819. package/libs/i18n/locales/en.uts +99 -0
  820. package/libs/i18n/locales/es.js +99 -0
  821. package/libs/i18n/locales/es.uts +99 -0
  822. package/libs/i18n/locales/fr.js +99 -0
  823. package/libs/i18n/locales/fr.uts +99 -0
  824. package/libs/i18n/locales/ja.js +99 -0
  825. package/libs/i18n/locales/ja.uts +99 -0
  826. package/libs/i18n/locales/ko.js +99 -0
  827. package/libs/i18n/locales/ko.uts +99 -0
  828. package/libs/i18n/locales/ru.js +99 -0
  829. package/libs/i18n/locales/ru.uts +99 -0
  830. package/libs/i18n/locales/th.js +99 -0
  831. package/libs/i18n/locales/th.uts +99 -0
  832. package/libs/i18n/locales/zh-Hans.js +99 -0
  833. package/libs/i18n/locales/zh-Hans.uts +99 -0
  834. package/libs/i18n/locales/zh-Hant.js +99 -0
  835. package/libs/i18n/locales/zh-Hant.uts +99 -0
  836. package/libs/luch-request/adapters/index.js +97 -0
  837. package/libs/luch-request/adapters/index.uts +114 -0
  838. package/libs/luch-request/core/InterceptorManager.js +50 -0
  839. package/libs/luch-request/core/InterceptorManager.uts +41 -0
  840. package/libs/luch-request/core/Request.js +198 -0
  841. package/libs/luch-request/core/Request.uts +134 -0
  842. package/libs/luch-request/core/buildFullPath.js +20 -0
  843. package/libs/luch-request/core/buildFullPath.uts +20 -0
  844. package/libs/luch-request/core/defaults.js +29 -0
  845. package/libs/luch-request/core/defaults.uts +30 -0
  846. package/libs/luch-request/core/dispatchRequest.js +3 -0
  847. package/libs/luch-request/core/dispatchRequest.uts +89 -0
  848. package/libs/luch-request/core/mergeConfig.js +103 -0
  849. package/libs/luch-request/core/mergeConfig.uts +115 -0
  850. package/libs/luch-request/core/settle.js +16 -0
  851. package/libs/luch-request/core/settle.uts +32 -0
  852. package/libs/luch-request/helpers/buildURL.js +69 -0
  853. package/libs/luch-request/helpers/buildURL.uts +64 -0
  854. package/libs/luch-request/helpers/combineURLs.js +14 -0
  855. package/libs/luch-request/helpers/combineURLs.uts +14 -0
  856. package/libs/luch-request/helpers/isAbsoluteURL.js +14 -0
  857. package/libs/luch-request/helpers/isAbsoluteURL.uts +14 -0
  858. package/libs/luch-request/index.d.ts +116 -0
  859. package/libs/luch-request/index.js +3 -0
  860. package/libs/luch-request/index.uts +3 -0
  861. package/libs/luch-request/utils/clone.js +264 -0
  862. package/libs/luch-request/utils/clone.uts +38 -0
  863. package/libs/luch-request/utils.js +131 -0
  864. package/libs/luch-request/utils.uts +66 -0
  865. package/libs/marked-uts/LICENSE +21 -0
  866. package/libs/marked-uts/common/Hooks.uts +71 -0
  867. package/libs/marked-uts/common/Instance.uts +273 -0
  868. package/libs/marked-uts/common/Lexer.uts +1083 -0
  869. package/libs/marked-uts/common/Parser.uts +367 -0
  870. package/libs/marked-uts/common/Renderer.uts +244 -0
  871. package/libs/marked-uts/common/TextRenderer.uts +74 -0
  872. package/libs/marked-uts/common/Tokenizer.uts +1122 -0
  873. package/libs/marked-uts/common/defaults.uts +25 -0
  874. package/libs/marked-uts/common/helpers.uts +165 -0
  875. package/libs/marked-uts/common/marked.uts +8 -0
  876. package/libs/marked-uts/common/rules.uts +603 -0
  877. package/libs/marked-uts/package.json +102 -0
  878. package/libs/marked-uts/readme.md +159 -0
  879. package/libs/marked-uts/utssdk/Hooks.interface.uts +34 -0
  880. package/libs/marked-uts/utssdk/Lexer.interface.uts +51 -0
  881. package/libs/marked-uts/utssdk/Marked.interface.uts +35 -0
  882. package/libs/marked-uts/utssdk/MarkedOptions.interface.uts +155 -0
  883. package/libs/marked-uts/utssdk/Parser.interface.uts +20 -0
  884. package/libs/marked-uts/utssdk/Renderer.interface.uts +34 -0
  885. package/libs/marked-uts/utssdk/Rules.interface.uts +296 -0
  886. package/libs/marked-uts/utssdk/TextRenderer.interface.uts +14 -0
  887. package/libs/marked-uts/utssdk/Tokenizer.interface.uts +38 -0
  888. package/libs/marked-uts/utssdk/Tokens.interface.uts +312 -0
  889. package/libs/marked-uts/utssdk/app-android/config.json +3 -0
  890. package/libs/marked-uts/utssdk/app-android/index.uts +23 -0
  891. package/libs/marked-uts/utssdk/app-android/libs/JSReg3.jar +0 -0
  892. package/libs/marked-uts/utssdk/app-harmony/index.uts +2 -0
  893. package/libs/marked-uts/utssdk/app-ios/config.json +3 -0
  894. package/libs/marked-uts/utssdk/app-ios/index.uts +85 -0
  895. package/libs/marked-uts/utssdk/app-js/index.uts +2 -0
  896. package/libs/marked-uts/utssdk/interface.uts +933 -0
  897. package/libs/marked-uts/utssdk/mp-weixin/index.uts +2 -0
  898. package/libs/marked-uts/utssdk/unierror.uts +39 -0
  899. package/libs/marked-uts/utssdk/web/index.uts +2 -0
  900. package/libs/root/LICENSE +21 -0
  901. package/libs/root/root-toast-host.vue +31 -0
  902. package/libs/root/runtime.js +11 -0
  903. package/libs/theme/runtime.js +440 -0
  904. package/libs/theme/theme.js +681 -0
  905. package/libs/util/async-validator.js +1343 -0
  906. package/libs/util/async-validator.uts +412 -0
  907. package/libs/util/calendar.js +546 -0
  908. package/libs/util/calendar.uts +546 -0
  909. package/libs/util/emitter.js +51 -0
  910. package/libs/util/route.js +124 -0
  911. package/libs/util/route.uts +130 -0
  912. package/libs/vite/app-icon-font.js +95 -0
  913. package/libs/vite/index.js +50 -0
  914. package/libs/vite/utils.js +48 -0
  915. package/libs/vue.js +3 -0
  916. package/libs/vue.uts +8 -0
  917. package/package.json +113 -0
  918. package/theme.scss +116 -0
  919. package/types/common.uts +14 -0
  920. package/types/comps/_common.d.ts +9 -0
  921. package/types/comps/actionSheet.d.ts +125 -0
  922. package/types/comps/album.d.ts +91 -0
  923. package/types/comps/alert.d.ts +55 -0
  924. package/types/comps/avatar.d.ts +85 -0
  925. package/types/comps/avatarGroup.d.ts +62 -0
  926. package/types/comps/backTop.d.ts +74 -0
  927. package/types/comps/badge.d.ts +76 -0
  928. package/types/comps/button.d.ts +169 -0
  929. package/types/comps/calendar.d.ts +271 -0
  930. package/types/comps/calendarStrip.d.ts +115 -0
  931. package/types/comps/cell.d.ts +133 -0
  932. package/types/comps/cellGroup.d.ts +27 -0
  933. package/types/comps/checkbox.d.ts +81 -0
  934. package/types/comps/checkboxGroup.d.ts +93 -0
  935. package/types/comps/code.d.ts +69 -0
  936. package/types/comps/codeInput.d.ts +98 -0
  937. package/types/comps/col.d.ts +43 -0
  938. package/types/comps/collapse.d.ts +52 -0
  939. package/types/comps/collapseItem.d.ts +83 -0
  940. package/types/comps/countDown.d.ts +60 -0
  941. package/types/comps/countTo.d.ts +88 -0
  942. package/types/comps/datetimePicker.d.ts +178 -0
  943. package/types/comps/divider.d.ts +58 -0
  944. package/types/comps/empty.d.ts +72 -0
  945. package/types/comps/form.d.ts +102 -0
  946. package/types/comps/formItem.d.ts +68 -0
  947. package/types/comps/gap.d.ts +35 -0
  948. package/types/comps/grid.d.ts +34 -0
  949. package/types/comps/gridItem.d.ts +28 -0
  950. package/types/comps/guide.d.ts +45 -0
  951. package/types/comps/icon.d.ts +98 -0
  952. package/types/comps/image.d.ts +119 -0
  953. package/types/comps/indexAnchor.d.ts +38 -0
  954. package/types/comps/indexItem.d.ts +18 -0
  955. package/types/comps/indexList.d.ts +39 -0
  956. package/types/comps/input.d.ts +234 -0
  957. package/types/comps/keyboard.d.ts +129 -0
  958. package/types/comps/line.d.ts +44 -0
  959. package/types/comps/lineProgress.d.ts +51 -0
  960. package/types/comps/link.d.ts +51 -0
  961. package/types/comps/list.d.ts +92 -0
  962. package/types/comps/listItem.d.ts +18 -0
  963. package/types/comps/loadMore.d.ts +108 -0
  964. package/types/comps/loadingIcon.d.ts +68 -0
  965. package/types/comps/loadingPage.d.ts +58 -0
  966. package/types/comps/modal.d.ts +115 -0
  967. package/types/comps/navbar.d.ts +113 -0
  968. package/types/comps/navbarMini.d.ts +78 -0
  969. package/types/comps/noNetwork.d.ts +40 -0
  970. package/types/comps/noticeBar.d.ts +85 -0
  971. package/types/comps/notify.d.ts +73 -0
  972. package/types/comps/novelReader.d.ts +103 -0
  973. package/types/comps/numberBox.d.ts +219 -0
  974. package/types/comps/overlay.d.ts +46 -0
  975. package/types/comps/pagination.d.ts +96 -0
  976. package/types/comps/parse.d.ts +101 -0
  977. package/types/comps/picker.d.ts +119 -0
  978. package/types/comps/popup.d.ts +107 -0
  979. package/types/comps/radio.d.ts +81 -0
  980. package/types/comps/radioGroup.d.ts +97 -0
  981. package/types/comps/rate.d.ts +85 -0
  982. package/types/comps/readMore.d.ts +80 -0
  983. package/types/comps/rootToastHost.d.ts +3 -0
  984. package/types/comps/row.d.ts +34 -0
  985. package/types/comps/safeBottom.d.ts +16 -0
  986. package/types/comps/scrollList.d.ts +51 -0
  987. package/types/comps/search.d.ts +167 -0
  988. package/types/comps/skeleton.d.ts +70 -0
  989. package/types/comps/slider.d.ts +79 -0
  990. package/types/comps/statusBar.d.ts +22 -0
  991. package/types/comps/steps.d.ts +48 -0
  992. package/types/comps/stepsItem.d.ts +41 -0
  993. package/types/comps/sticky.d.ts +48 -0
  994. package/types/comps/subsection.d.ts +79 -0
  995. package/types/comps/swipeAction.d.ts +24 -0
  996. package/types/comps/swipeActionItem.d.ts +71 -0
  997. package/types/comps/swiper.d.ts +147 -0
  998. package/types/comps/swiperIndicator.d.ts +37 -0
  999. package/types/comps/switch.d.ts +73 -0
  1000. package/types/comps/tabbar.d.ts +54 -0
  1001. package/types/comps/tabbarItem.d.ts +78 -0
  1002. package/types/comps/tabs.d.ts +91 -0
  1003. package/types/comps/tabsPro.d.ts +64 -0
  1004. package/types/comps/tag.d.ts +93 -0
  1005. package/types/comps/text.d.ts +115 -0
  1006. package/types/comps/textarea.d.ts +163 -0
  1007. package/types/comps/toast.d.ts +59 -0
  1008. package/types/comps/tooltip.d.ts +71 -0
  1009. package/types/comps/transition.d.ts +61 -0
  1010. package/types/comps/upload.d.ts +163 -0
  1011. package/types/comps/video.d.ts +170 -0
  1012. package/types/comps.d.ts +120 -0
  1013. package/types/index.d.ts +374 -0
  1014. package/types/index.uts +11 -0
  1015. package/types/package.json +26 -0
@@ -0,0 +1,247 @@
1
+ <template>
2
+ <view
3
+ class="up-loadmore"
4
+ :style="rootStyle"
5
+ >
6
+ <up-line
7
+ length="140rpx"
8
+ :color="lineColor"
9
+ :hairline="false"
10
+ :dashed="dashed"
11
+ v-if="line"
12
+ ></up-line>
13
+ <!-- 加载中和没有更多的状态才显示两边的横线 -->
14
+ <view
15
+ :class="status == 'loadmore' || status == 'nomore' ? 'up-more' : ''"
16
+ class="up-loadmore__content"
17
+ >
18
+ <view
19
+ class="up-loadmore__content__icon-wrap"
20
+ v-if="status === 'loading' && icon"
21
+ >
22
+ <up-loading-icon
23
+ :color="iconColor"
24
+ :size="iconSize"
25
+ :mode="loadingIcon"
26
+ ></up-loading-icon>
27
+ </view>
28
+ <!-- 如果没有更多的状态下,显示内容为dot(粗点),加载特定样式 -->
29
+ <text
30
+ class="up-line-11"
31
+ :style="loadTextStyle"
32
+ :class="[(status == 'nomore' && isDot == true) ? 'up-loadmore__content__dot-text' : 'up-loadmore__content__text']"
33
+ @tap="loadMore"
34
+ >{{ showText }}</text>
35
+ </view>
36
+ <up-line
37
+ length="140rpx"
38
+ :color="lineColor"
39
+ :hairline="false"
40
+ :dashed="dashed"
41
+ v-if="line"
42
+ ></up-line>
43
+ </view>
44
+ </template>
45
+
46
+ <script setup lang="uts">
47
+ import { computed } from 'vue'
48
+ import defProps from './loadmore'
49
+ import { addUnit, addStyle } from '../../libs/function/index.uts'
50
+
51
+ /**
52
+ * loadmore 加载更多
53
+ * @description 此组件一般用于标识页面底部加载数据时的状态。
54
+ * @tutorial https://ijry.github.io/uview-plus/components/loadMore.html
55
+ * @property {String} status 组件状态(默认 'loadmore' )
56
+ * @property {String} bgColor 组件背景颜色,在页面是非白色时会用到(默认 'transparent' )
57
+ * @property {Boolean} icon 加载中时是否显示图标(默认 true )
58
+ * @property {String | Number} fontSize 字体大小(默认 14 )
59
+ * @property {String | Number} iconSize 图标大小(默认 17 )
60
+ * @property {String} color 字体颜色(默认 '#606266' )
61
+ * @property {String} loadingIcon 加载图标(默认 'circle' )
62
+ * @property {String} loadmoreText 加载前的提示语(默认 '加载更多' )
63
+ * @property {String} loadingText 加载中提示语(默认 '正在加载...' )
64
+ * @property {String} nomoreText 没有更多的提示语(默认 '没有更多了' )
65
+ * @property {Boolean} isDot 到上一个相邻元素的距离 (默认 false )
66
+ * @property {String} iconColor 加载中图标的颜色 (默认 '#b7b7b7' )
67
+ * @property {String} lineColor 线条颜色(默认 #E6E8EB )
68
+ * @property {String | Number} marginTop 上边距 (默认 10 )
69
+ * @property {String | Number} marginBottom 下边距 (默认 10 )
70
+ * @property {String | Number} height 高度,单位px (默认 'auto' )
71
+ * @property {Boolean} line 是否显示左边分割线 (默认 false )
72
+ * @property {Boolean} dashed // 是否虚线,true-虚线,false-实线 (默认 false )
73
+ * @event {Function} loadmore status为loadmore时,点击组件会发出此事件
74
+ * @example <up-loadmore :status="status" icon-type="iconType" load-text="loadText" />
75
+ */
76
+ defineOptions({
77
+ styleIsolation: 'app-and-page',
78
+ name: 'up-loadmore'
79
+ })
80
+
81
+ const props = defineProps({
82
+ // 组件状态,loadmore-加载前的状态,loading-加载中的状态,nomore-没有更多的状态
83
+ status: {
84
+ type: String,
85
+ default: defProps.getString('loadmore.status')
86
+ },
87
+ // 组件背景色
88
+ bgColor: {
89
+ type: String,
90
+ default: defProps.getString('loadmore.bgColor')
91
+ },
92
+ // 是否显示加载中的图标
93
+ icon: {
94
+ type: Boolean,
95
+ default: defProps.getBoolean('loadmore.icon')
96
+ },
97
+ // 字体大小
98
+ fontSize: {
99
+ type: [String, Number],
100
+ default: defProps.getNumber('loadmore.fontSize')
101
+ },
102
+ // 图标大小
103
+ iconSize: {
104
+ type: [String, Number],
105
+ default: defProps.getNumber('loadmore.iconSize')
106
+ },
107
+ // 字体颜色
108
+ color: {
109
+ type: String,
110
+ default: defProps.getString('loadmore.color')
111
+ },
112
+ // 加载中状态的图标,spinner-花朵状图标,circle-圆圈状,semicircle-半圆
113
+ loadingIcon: {
114
+ type: String,
115
+ default: defProps.getString('loadmore.loadingIcon')
116
+ },
117
+ // 加载前的提示语
118
+ loadmoreText: {
119
+ type: String,
120
+ default: defProps.getString('loadmore.loadmoreText')
121
+ },
122
+ // 加载中提示语
123
+ loadingText: {
124
+ type: String,
125
+ default: defProps.getString('loadmore.loadingText')
126
+ },
127
+ // 没有更多的提示语
128
+ nomoreText: {
129
+ type: String,
130
+ default: defProps.getString('loadmore.nomoreText')
131
+ },
132
+ // 在"没有更多"状态下,是否显示粗点
133
+ isDot: {
134
+ type: Boolean,
135
+ default: defProps.getBoolean('loadmore.isDot')
136
+ },
137
+ // 加载中图标的颜色
138
+ iconColor: {
139
+ type: String,
140
+ default: defProps.getString('loadmore.iconColor')
141
+ },
142
+ // 上边距
143
+ marginTop: {
144
+ type: [String, Number],
145
+ default: defProps.getNumber('loadmore.marginTop')
146
+ },
147
+ // 下边距
148
+ marginBottom: {
149
+ type: [String, Number],
150
+ default: defProps.getNumber('loadmore.marginBottom')
151
+ },
152
+ // 高度,单位px
153
+ height: {
154
+ type: [String, Number],
155
+ default: defProps.getString('loadmore.height')
156
+ },
157
+ // 是否显示左边分割线
158
+ line: {
159
+ type: Boolean,
160
+ default: defProps.getBoolean('loadmore.line')
161
+ },
162
+ // 线条颜色
163
+ lineColor: {
164
+ type: String,
165
+ default: defProps.getString('loadmore.lineColor')
166
+ },
167
+ // 是否虚线,true-虚线,false-实线
168
+ dashed: {
169
+ type: Boolean,
170
+ default: defProps.getBoolean('loadmore.dashed')
171
+ },
172
+ customStyle: {
173
+ type: [Object, String],
174
+ default: () => ({})
175
+ }
176
+ })
177
+
178
+ const emit = defineEmits(['loadmore'])
179
+ // 粗点
180
+ const dotText = '●'
181
+
182
+ const rootStyle = computed((): UTSJSONObject => {
183
+ const style = addStyle(props.customStyle) as UTSJSONObject
184
+ style['backgroundColor'] = props.bgColor
185
+ style['marginBottom'] = addUnit(props.marginBottom)
186
+ style['marginTop'] = addUnit(props.marginTop)
187
+ style['height'] = addUnit(props.height)
188
+ return style
189
+ })
190
+
191
+ // 加载的文字显示的样式
192
+ const loadTextStyle = computed((): UTSJSONObject => {
193
+ return {
194
+ color: props.color,
195
+ fontSize: addUnit(props.fontSize),
196
+ // lineHeight: addUnit(props.fontSize),
197
+ backgroundColor: props.bgColor
198
+ } as UTSJSONObject
199
+ })
200
+
201
+ // 显示的提示文字
202
+ const showText = computed((): string => {
203
+ let text = ''
204
+ if (props.status == 'loadmore') text = props.loadmoreText
205
+ else if (props.status == 'loading') text = props.loadingText
206
+ else if (props.status == 'nomore' && props.isDot) text = dotText
207
+ else text = props.nomoreText
208
+ return text
209
+ })
210
+
211
+ const loadMore = (): void => {
212
+ // 只有在"加载更多"的状态下才发送点击事件,内容不满一屏时无法触发底部上拉事件,所以需要点击来触发
213
+ if (props.status == 'loadmore') emit('loadmore')
214
+ }
215
+ </script>
216
+
217
+ <style lang="scss" scoped>
218
+ @import "../../libs/css/components.scss";
219
+
220
+ .up-loadmore {
221
+ @include flex(row);
222
+ align-items: center;
223
+ justify-content: center;
224
+ flex: 1;
225
+
226
+ &__content {
227
+ margin: 0 15px;
228
+ @include flex(row);
229
+ align-items: center;
230
+ justify-content: center;
231
+
232
+ &__icon-wrap {
233
+ margin-right: 8px;
234
+ }
235
+
236
+ &__text {
237
+ font-size: 14px;
238
+ color: $up-content-color;
239
+ }
240
+
241
+ &__dot-text {
242
+ font-size: 15px;
243
+ color: $up-tips-color;
244
+ }
245
+ }
246
+ }
247
+ </style>
@@ -0,0 +1,132 @@
1
+ <template>
2
+ <view
3
+ class="up-loadmore"
4
+ :style="[
5
+ addStyle(customStyle),
6
+ {
7
+ backgroundColor: bgColor,
8
+ marginBottom: addUnit(marginBottom),
9
+ marginTop: addUnit(marginTop),
10
+ height: addUnit(height),
11
+ },
12
+ ]"
13
+ >
14
+ <up-line
15
+ length="140rpx"
16
+ :color="lineColor"
17
+ :hairline="false"
18
+ :dashed="dashed"
19
+ v-if="line"
20
+ ></up-line>
21
+ <!-- 加载中和没有更多的状态才显示两边的横线 -->
22
+ <view
23
+ :class="status == 'loadmore' || status == 'nomore' ? 'up-more' : ''"
24
+ class="up-loadmore__content"
25
+ >
26
+ <view
27
+ class="up-loadmore__content__icon-wrap"
28
+ v-if="status === 'loading' && icon"
29
+ >
30
+ <up-loading-icon
31
+ :color="iconColor"
32
+ :size="iconSize"
33
+ :mode="loadingIcon"
34
+ ></up-loading-icon>
35
+ </view>
36
+ <!-- 如果没有更多的状态下,显示内容为dot(粗点),加载特定样式 -->
37
+ <text
38
+ class="up-line-1"
39
+ :style="[loadTextStyle]"
40
+ :class="[(status == 'nomore' && isDot == true) ? 'up-loadmore__content__dot-text' : 'up-loadmore__content__text']"
41
+ @tap="loadMore"
42
+ >{{ showText }}</text>
43
+ </view>
44
+ <up-line
45
+ length="140rpx"
46
+ :color="lineColor"
47
+ :hairline="false"
48
+ :dashed="dashed"
49
+ v-if="line"
50
+ ></up-line>
51
+ </view>
52
+ </template>
53
+
54
+ <script setup>
55
+ import { computed } from 'vue'
56
+ import { props as loadmoreProps } from './props.js'
57
+ import { commonProps } from '../../libs/composable/useUltraUI.js'
58
+ import { addUnit, addStyle } from '../../libs/function/index.js'
59
+
60
+ defineOptions({
61
+ name: 'up-loadmore',
62
+ // #ifdef MP-WEIXIN
63
+ options: {
64
+ virtualHost: true
65
+ }
66
+ // #endif
67
+ })
68
+
69
+ const props = defineProps({
70
+ ...commonProps,
71
+ ...loadmoreProps.props
72
+ })
73
+ const emit = defineEmits(['loadmore'])
74
+ const dotText = '●'
75
+
76
+ // 加载的文字显示的样式
77
+ const loadTextStyle = computed(() => {
78
+ return {
79
+ color: props.color,
80
+ fontSize: addUnit(props.fontSize),
81
+ lineHeight: addUnit(props.fontSize),
82
+ backgroundColor: props.bgColor,
83
+ }
84
+ })
85
+
86
+ // 显示的提示文字
87
+ const showText = computed(() => {
88
+ let text = ''
89
+ if (props.status == 'loadmore') text = props.loadmoreText
90
+ else if (props.status == 'loading') text = props.loadingText
91
+ else if (props.status == 'nomore' && props.isDot) text = dotText
92
+ else text = props.nomoreText
93
+ return text
94
+ })
95
+
96
+ function loadMore() {
97
+ // 只有在“加载更多”的状态下才发送点击事件,内容不满一屏时无法触发底部上拉事件,所以需要点击来触发
98
+ if (props.status == 'loadmore') emit('loadmore')
99
+ }
100
+ </script>
101
+
102
+ <style lang="scss" scoped>
103
+ @import "../../libs/css/components.scss";
104
+
105
+ .up-loadmore {
106
+ @include flex(row);
107
+ align-items: center;
108
+ justify-content: center;
109
+ flex: 1;
110
+
111
+ &__content {
112
+ margin: 0 15px;
113
+ @include flex(row);
114
+ align-items: center;
115
+ justify-content: center;
116
+
117
+ &__icon-wrap {
118
+ margin-right: 8px;
119
+ }
120
+
121
+ &__text {
122
+ font-size: 14px;
123
+ color: $up-content-color;
124
+ }
125
+
126
+ &__dot-text {
127
+ font-size: 15px;
128
+ color: $up-tips-color;
129
+ }
130
+ }
131
+ }
132
+ </style>
@@ -0,0 +1,7 @@
1
+ /**
2
+ * Bundled by jsDelivr using Rollup v2.79.2 and Terser v5.39.0.
3
+ * Original file: /npm/marked@16.1.2/lib/marked.esm.js
4
+ *
5
+ * Do NOT use SRI with dynamically generated files! More information: https://www.jsdelivr.com/using-sri-with-dynamic-files
6
+ */
7
+ function e(){return{async:!1,breaks:!1,extensions:null,gfm:!0,hooks:null,pedantic:!1,renderer:null,silent:!1,tokenizer:null,walkTokens:null}}var t={async:!1,breaks:!1,extensions:null,gfm:!0,hooks:null,pedantic:!1,renderer:null,silent:!1,tokenizer:null,walkTokens:null};function n(e){t=e}var r={exec:()=>null};function s(e,t=""){let n="string"==typeof e?e:e.source,r={replace:(e,t)=>{let s="string"==typeof t?t:t.source;return s=s.replace(l.caret,"$1"),n=n.replace(e,s),r},getRegex:()=>new RegExp(n,t)};return r}var l={codeRemoveIndent:/^(?: {1,4}| {0,3}\t)/gm,outputLinkReplace:/\\([\[\]])/g,indentCodeCompensation:/^(\s+)(?:```)/,beginningSpace:/^\s+/,endingHash:/#$/,startingSpaceChar:/^ /,endingSpaceChar:/ $/,nonSpaceChar:/[^ ]/,newLineCharGlobal:/\n/g,tabCharGlobal:/\t/g,multipleSpaceGlobal:/\s+/g,blankLine:/^[ \t]*$/,doubleBlankLine:/\n[ \t]*\n[ \t]*$/,blockquoteStart:/^ {0,3}>/,blockquoteSetextReplace:/\n {0,3}((?:=+|-+) *)(?=\n|$)/g,blockquoteSetextReplace2:/^ {0,3}>[ \t]?/gm,listReplaceTabs:/^\t+/,listReplaceNesting:/^ {1,4}(?=( {4})*[^ ])/g,listIsTask:/^\[[ xX]\] /,listReplaceTask:/^\[[ xX]\] +/,anyLine:/\n.*\n/,hrefBrackets:/^<(.*)>$/,tableDelimiter:/[:|]/,tableAlignChars:/^\||\| *$/g,tableRowBlankLine:/\n[ \t]*$/,tableAlignRight:/^ *-+: *$/,tableAlignCenter:/^ *:-+: *$/,tableAlignLeft:/^ *:-+ *$/,startATag:/^<a /i,endATag:/^<\/a>/i,startPreScriptTag:/^<(pre|code|kbd|script)(\s|>)/i,endPreScriptTag:/^<\/(pre|code|kbd|script)(\s|>)/i,startAngleBracket:/^</,endAngleBracket:/>$/,pedanticHrefTitle:/^([^'"]*[^\s])\s+(['"])(.*)\2/,unicodeAlphaNumeric:/[a-zA-Z0-9\u00C0-\u02AF\u0300-\u036F\u0400-\u04FF\u0500-\u052F\u1E00-\u1EFF]/u,escapeTest:/[&<>"']/,escapeReplace:/[&<>"']/g,escapeTestNoEncode:/[<>"']|&(?!(#\d{1,7}|#[Xx][a-fA-F0-9]{1,6}|\w+);)/,escapeReplaceNoEncode:/[<>"']|&(?!(#\d{1,7}|#[Xx][a-fA-F0-9]{1,6}|\w+);)/g,unescapeTest:/&(#(?:\d+)|(?:#x[0-9A-Fa-f]+)|(?:\w+));?/gi,caret:/(^|[^\[])\^/g,percentDecode:/%25/g,findPipe:/\|/g,splitPipe:/ \|/,slashPipe:/\\\|/g,carriageReturn:/\r\n|\r/g,spaceLine:/^ +$/gm,notSpaceStart:/^\S*/,endingNewline:/\n$/,listItemRegex:e=>new RegExp(`^( {0,3}${e})((?:[\t ][^\\n]*)?(?:\\n|$))`),nextBulletRegex:e=>new RegExp(`^ {0,${Math.min(3,e-1)}}(?:[*+-]|\\d{1,9}[.)])((?:[ \t][^\\n]*)?(?:\\n|$))`),hrRegex:e=>new RegExp(`^ {0,${Math.min(3,e-1)}}((?:- *){3,}|(?:_ *){3,}|(?:\\* *){3,})(?:\\n+|$)`),fencesBeginRegex:e=>new RegExp(`^ {0,${Math.min(3,e-1)}}(?:\`\`\`|~~~)`),headingBeginRegex:e=>new RegExp(`^ {0,${Math.min(3,e-1)}}#`),htmlBeginRegex:e=>new RegExp(`^ {0,${Math.min(3,e-1)}}<(?:[a-z].*>|!--)`,"i")},i=/^ {0,3}((?:-[\t ]*){3,}|(?:_[ \t]*){3,}|(?:\*[ \t]*){3,})(?:\n+|$)/,a=/(?:[*+-]|\d{1,9}[.)])/,o=/^(?!bull |blockCode|fences|blockquote|heading|html|table)((?:.|\n(?!\s*?\n|bull |blockCode|fences|blockquote|heading|html|table))+?)\n {0,3}(=+|-+) *(?:\n+|$)/,c=s(o).replace(/bull/g,a).replace(/blockCode/g,/(?: {4}| {0,3}\t)/).replace(/fences/g,/ {0,3}(?:`{3,}|~{3,})/).replace(/blockquote/g,/ {0,3}>/).replace(/heading/g,/ {0,3}#{1,6}/).replace(/html/g,/ {0,3}<[^\n>]+>\n/).replace(/\|table/g,"").getRegex(),h=s(o).replace(/bull/g,a).replace(/blockCode/g,/(?: {4}| {0,3}\t)/).replace(/fences/g,/ {0,3}(?:`{3,}|~{3,})/).replace(/blockquote/g,/ {0,3}>/).replace(/heading/g,/ {0,3}#{1,6}/).replace(/html/g,/ {0,3}<[^\n>]+>\n/).replace(/table/g,/ {0,3}\|?(?:[:\- ]*\|)+[\:\- ]*\n/).getRegex(),p=/^([^\n]+(?:\n(?!hr|heading|lheading|blockquote|fences|list|html|table| +\n)[^\n]+)*)/,u=/(?!\s*\])(?:\\.|[^\[\]\\])+/,g=s(/^ {0,3}\[(label)\]: *(?:\n[ \t]*)?([^<\s][^\s]*|<.*?>)(?:(?: +(?:\n[ \t]*)?| *\n[ \t]*)(title))? *(?:\n+|$)/).replace("label",u).replace("title",/(?:"(?:\\"?|[^"\\])*"|'[^'\n]*(?:\n[^'\n]+)*\n?'|\([^()]*\))/).getRegex(),k=s(/^( {0,3}bull)([ \t][^\n]+?)?(?:\n|$)/).replace(/bull/g,a).getRegex(),d="address|article|aside|base|basefont|blockquote|body|caption|center|col|colgroup|dd|details|dialog|dir|div|dl|dt|fieldset|figcaption|figure|footer|form|frame|frameset|h[1-6]|head|header|hr|html|iframe|legend|li|link|main|menu|menuitem|meta|nav|noframes|ol|optgroup|option|p|param|search|section|summary|table|tbody|td|tfoot|th|thead|title|tr|track|ul",f=/<!--(?:-?>|[\s\S]*?(?:-->|$))/,x=s("^ {0,3}(?:<(script|pre|style|textarea)[\\s>][\\s\\S]*?(?:</\\1>[^\\n]*\\n+|$)|comment[^\\n]*(\\n+|$)|<\\?[\\s\\S]*?(?:\\?>\\n*|$)|<![A-Z][\\s\\S]*?(?:>\\n*|$)|<!\\[CDATA\\[[\\s\\S]*?(?:\\]\\]>\\n*|$)|</?(tag)(?: +|\\n|/?>)[\\s\\S]*?(?:(?:\\n[ \t]*)+\\n|$)|<(?!script|pre|style|textarea)([a-z][\\w-]*)(?:attribute)*? */?>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n[ \t]*)+\\n|$)|</(?!script|pre|style|textarea)[a-z][\\w-]*\\s*>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n[ \t]*)+\\n|$))","i").replace("comment",f).replace("tag",d).replace("attribute",/ +[a-zA-Z:_][\w.:-]*(?: *= *"[^"\n]*"| *= *'[^'\n]*'| *= *[^\s"'=<>`]+)?/).getRegex(),b=s(p).replace("hr",i).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("|lheading","").replace("|table","").replace("blockquote"," {0,3}>").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html","</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)").replace("tag",d).getRegex(),w={blockquote:s(/^( {0,3}> ?(paragraph|[^\n]*)(?:\n|$))+/).replace("paragraph",b).getRegex(),code:/^((?: {4}| {0,3}\t)[^\n]+(?:\n(?:[ \t]*(?:\n|$))*)?)+/,def:g,fences:/^ {0,3}(`{3,}(?=[^`\n]*(?:\n|$))|~{3,})([^\n]*)(?:\n|$)(?:|([\s\S]*?)(?:\n|$))(?: {0,3}\1[~`]* *(?=\n|$)|$)/,heading:/^ {0,3}(#{1,6})(?=\s|$)(.*)(?:\n+|$)/,hr:i,html:x,lheading:c,list:k,newline:/^(?:[ \t]*(?:\n|$))+/,paragraph:b,table:r,text:/^[^\n]+/},m=s("^ *([^\\n ].*)\\n {0,3}((?:\\| *)?:?-+:? *(?:\\| *:?-+:? *)*(?:\\| *)?)(?:\\n((?:(?! *\\n|hr|heading|blockquote|code|fences|list|html).*(?:\\n|$))*)\\n*|$)").replace("hr",i).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("blockquote"," {0,3}>").replace("code","(?: {4}| {0,3}\t)[^\\n]").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html","</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)").replace("tag",d).getRegex(),y={...w,lheading:h,table:m,paragraph:s(p).replace("hr",i).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("|lheading","").replace("table",m).replace("blockquote"," {0,3}>").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html","</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)").replace("tag",d).getRegex()},$={...w,html:s("^ *(?:comment *(?:\\n|\\s*$)|<(tag)[\\s\\S]+?</\\1> *(?:\\n{2,}|\\s*$)|<tag(?:\"[^\"]*\"|'[^']*'|\\s[^'\"/>\\s]*)*?/?> *(?:\\n{2,}|\\s*$))").replace("comment",f).replace(/tag/g,"(?!(?:a|em|strong|small|s|cite|q|dfn|abbr|data|time|code|var|samp|kbd|sub|sup|i|b|u|mark|ruby|rt|rp|bdi|bdo|span|br|wbr|ins|del|img)\\b)\\w+(?!:|[^\\w\\s@]*@)\\b").getRegex(),def:/^ *\[([^\]]+)\]: *<?([^\s>]+)>?(?: +(["(][^\n]+[")]))? *(?:\n+|$)/,heading:/^(#{1,6})(.*)(?:\n+|$)/,fences:r,lheading:/^(.+?)\n {0,3}(=+|-+) *(?:\n+|$)/,paragraph:s(p).replace("hr",i).replace("heading"," *#{1,6} *[^\n]").replace("lheading",c).replace("|table","").replace("blockquote"," {0,3}>").replace("|fences","").replace("|list","").replace("|html","").replace("|tag","").getRegex()},R=/^( {2,}|\\)\n(?!\s*$)/,S=/[!"#$%&'()*+,-./:;<=>?@[\]^_`{|}~·!¥……()——《》「」『』【】、;:‘’“”,。、]/u,T=/[\s!"#$%&'()*+,-./:;<=>?@[\]^_`{|}~·!¥……()——《》「」『』【】、;:‘’“”,。、]/,z=/[^a-zA-Z0-9\u4e00-\u9fa5\s!"#$%&'()*+,-./:;<=>?@[\]^_`{|}~·!¥……()——《》「」『』【】、;:‘’“”,。、]/,A=s(/^((?![*_])punctSpace)/,"u").replace(/punctSpace/g,T).getRegex(),_=/[!"#$%&'()*+,-./:;<=>?@[\]^_`{|}·!¥……()——《》「」『』【】、;:‘’“”,。、]/,P=/^(?:\*+(?:((?!\*)punct)|[^\s*]))|^_+(?:((?!_)punct)|([^\s_]))/,I=s(P,"u").replace(/punct/g,S).getRegex(),L=s(P,"u").replace(/punct/g,_).getRegex(),B="^[^_*]*?__[^_*]*?\\*[^_*]*?(?=__)|[^*]+(?=[^*])|(?!\\*)punct(\\*+)(?=[\\s]|$)|notPunctSpace(\\*+)(?!\\*)(?=punctSpace|$)|(?!\\*)punctSpace(\\*+)(?=notPunctSpace)|[\\s](\\*+)(?!\\*)(?=punct)|(?!\\*)punct(\\*+)(?!\\*)(?=punct)|notPunctSpace(\\*+)(?=notPunctSpace)",C=s(B,"gu").replace(/notPunctSpace/g,z).replace(/punctSpace/g,T).replace(/punct/g,S).getRegex(),q=s(B,"gu").replace(/notPunctSpace/g,/[a-zA-Z0-9\u4e00-\u9fa5~]/).replace(/punctSpace/g,/[\s!"#$%&'()*+,-./:;<=>?@[\]^_`{|}·!¥……()——《》「」『』【】、;:‘’“”,。、]/).replace(/punct/g,_).getRegex(),E=s("^[^_*]*?\\*\\*[^_*]*?_[^_*]*?(?=\\*\\*)|[^_]+(?=[^_])|(?!_)punct(_+)(?=[\\s]|$)|notPunctSpace(_+)(?!_)(?=punctSpace|$)|(?!_)punctSpace(_+)(?=notPunctSpace)|[\\s](_+)(?!_)(?=punct)|(?!_)punct(_+)(?!_)(?=punct)","gu").replace(/notPunctSpace/g,z).replace(/punctSpace/g,T).replace(/punct/g,S).getRegex(),v=s(/\\(punct)/,"gu").replace(/punct/g,S).getRegex(),Z=s(/^<(scheme:[^\s\x00-\x1f<>]*|email)>/).replace("scheme",/[a-zA-Z][a-zA-Z0-9+.-]{1,31}/).replace("email",/[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+(@)[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)+(?![-_])/).getRegex(),D=s(f).replace("(?:--\x3e|$)","--\x3e").getRegex(),M=s("^comment|^</[a-zA-Z][\\w:-]*\\s*>|^<[a-zA-Z][\\w-]*(?:attribute)*?\\s*/?>|^<\\?[\\s\\S]*?\\?>|^<![a-zA-Z]+\\s[\\s\\S]*?>|^<!\\[CDATA\\[[\\s\\S]*?\\]\\]>").replace("comment",D).replace("attribute",/\s+[a-zA-Z:_][\w.:-]*(?:\s*=\s*"[^"]*"|\s*=\s*'[^']*'|\s*=\s*[^\s"'=<>`]+)?/).getRegex(),O=/(?:\[(?:\\.|[^\[\]\\])*\]|\\.|`[^`]*`|[^\[\]\\`])*?/,Q=s(/^!?\[(label)\]\(\s*(href)(?:(?:[ \t]*(?:\n[ \t]*)?)(title))?\s*\)/).replace("label",O).replace("href",/<(?:\\.|[^\n<>\\])+>|[^ \t\n\x00-\x1f]*/).replace("title",/"(?:\\"?|[^"\\])*"|'(?:\\'?|[^'\\])*'|\((?:\\\)?|[^)\\])*\)/).getRegex(),N=s(/^!?\[(label)\]\[(ref)\]/).replace("label",O).replace("ref",u).getRegex(),j=s(/^!?\[(ref)\](?:\[\])?/).replace("ref",u).getRegex(),G={_backpedal:r,anyPunctuation:v,autolink:Z,blockSkip:/\[[^[\]]*?\]\((?:\\.|[^\\\(\)]|\((?:\\.|[^\\\(\)])*\))*\)|`[^`]*?`|<(?! )[^<>]*?>/g,br:R,code:/^(`+)([^`]|[^`][\s\S]*?[^`])\1(?!`)/,del:r,emStrongLDelim:I,emStrongRDelimAst:C,emStrongRDelimUnd:E,escape:/^\\([!"#$%&'()*+,\-./:;<=>?@\[\]\\^_`{|}~])/,link:Q,nolink:j,punctuation:A,reflink:N,reflinkSearch:s("reflink|nolink(?!\\()","g").replace("reflink",N).replace("nolink",j).getRegex(),tag:M,text:/^(`+|[^`])(?:(?= {2,}\n)|[\s\S]*?(?:(?=[\\<!\[`*_]|\b_|$)|[^ ](?= {2,}\n)))/,url:r},H={...G,link:s(/^!?\[(label)\]\((.*?)\)/).replace("label",O).getRegex(),reflink:s(/^!?\[(label)\]\s*\[([^\]]*)\]/).replace("label",O).getRegex()},W={...G,emStrongRDelimAst:q,emStrongLDelim:L,url:s(/^((?:ftp|https?):\/\/|www\.)(?:[a-zA-Z0-9\-]+\.?)+[^\s<]*|^email/,"i").replace("email",/[A-Za-z0-9._+-]+(@)[a-zA-Z0-9-_]+(?:\.[a-zA-Z0-9-_]*[a-zA-Z0-9])+(?![-_])/).getRegex(),_backpedal:/(?:[^?!.,:;*_'"~()&]+|\([^)]*\)|&(?![a-zA-Z0-9]+;$)|[?!.,:;*_'"~)]+(?!$))+/,del:/^(~~?)(?=[^\s~])((?:\\.|[^\\])*?(?:\\.|[^\s~\\]))\1(?=[^~]|$)/,text:/^([`~]+|[^`~])(?:(?= {2,}\n)|(?=[a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-]+@)|[\s\S]*?(?:(?=[\\<!\[`*~_]|\b_|https?:\/\/|ftp:\/\/|www\.|$)|[^ ](?= {2,}\n)|[^a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-](?=[a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-]+@)))/},X={...W,br:s(R).replace("{2,}","*").getRegex(),text:s(W.text).replace("\\b_","\\b_| {2,}\\n").replace(/\{2,\}/g,"*").getRegex()},F={normal:w,gfm:y,pedantic:$},U={normal:G,gfm:W,breaks:X,pedantic:H},J={"&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#39;"},K=e=>J[e];function V(e,t){if(t){if(l.escapeTest.test(e))return e.replace(l.escapeReplace,K)}else if(l.escapeTestNoEncode.test(e))return e.replace(l.escapeReplaceNoEncode,K);return e}function Y(e){try{e=encodeURI(e).replace(l.percentDecode,"%")}catch{return null}return e}function ee(e,t){let n=e.replace(l.findPipe,((e,t,n)=>{let r=!1,s=t;for(;--s>=0&&"\\"===n[s];)r=!r;return r?"|":" |"})).split(l.splitPipe),r=0;if(n[0].trim()||n.shift(),n.length>0&&!n.at(-1)?.trim()&&n.pop(),t)if(n.length>t)n.splice(t);else for(;n.length<t;)n.push("");for(;r<n.length;r++)n[r]=n[r].trim().replace(l.slashPipe,"|");return n}function te(e,t,n){let r=e.length;if(0===r)return"";let s=0;for(;s<r;){let l=e.charAt(r-s-1);if(l!==t||n){if(l===t||!n)break;s++}else s++}return e.slice(0,r-s)}function ne(e,t,n,r,s){let l=t.href,i=t.title||null,a=e[1].replace(s.other.outputLinkReplace,"$1");r.state.inLink=!0;let o={type:"!"===e[0].charAt(0)?"image":"link",raw:n,href:l,title:i,text:a,tokens:r.inlineTokens(a)};return r.state.inLink=!1,o}var re=class{options;rules;lexer;constructor(e){this.options=e||t}space(e){let t=this.rules.block.newline.exec(e);if(t&&t[0].length>0)return{type:"space",raw:t[0]}}code(e){let t=this.rules.block.code.exec(e);if(t){let e=t[0].replace(this.rules.other.codeRemoveIndent,"");return{type:"code",raw:t[0],codeBlockStyle:"indented",text:this.options.pedantic?e:te(e,"\n")}}}fences(e){let t=this.rules.block.fences.exec(e);if(t){let e=t[0],n=function(e,t,n){let r=e.match(n.other.indentCodeCompensation);if(null===r)return t;let s=r[1];return t.split("\n").map((e=>{let t=e.match(n.other.beginningSpace);if(null===t)return e;let[r]=t;return r.length>=s.length?e.slice(s.length):e})).join("\n")}(e,t[3]||"",this.rules);return{type:"code",raw:e,lang:t[2]?t[2].trim().replace(this.rules.inline.anyPunctuation,"$1"):t[2],text:n}}}heading(e){let t=this.rules.block.heading.exec(e);if(t){let e=t[2].trim();if(this.rules.other.endingHash.test(e)){let t=te(e,"#");(this.options.pedantic||!t||this.rules.other.endingSpaceChar.test(t))&&(e=t.trim())}return{type:"heading",raw:t[0],depth:t[1].length,text:e,tokens:this.lexer.inline(e)}}}hr(e){let t=this.rules.block.hr.exec(e);if(t)return{type:"hr",raw:te(t[0],"\n")}}blockquote(e){let t=this.rules.block.blockquote.exec(e);if(t){let e=te(t[0],"\n").split("\n"),n="",r="",s=[];for(;e.length>0;){let t,l=!1,i=[];for(t=0;t<e.length;t++)if(this.rules.other.blockquoteStart.test(e[t]))i.push(e[t]),l=!0;else{if(l)break;i.push(e[t])}e=e.slice(t);let a=i.join("\n"),o=a.replace(this.rules.other.blockquoteSetextReplace,"\n $1").replace(this.rules.other.blockquoteSetextReplace2,"");n=n?`${n}\n${a}`:a,r=r?`${r}\n${o}`:o;let c=this.lexer.state.top;if(this.lexer.state.top=!0,this.lexer.blockTokens(o,s,!0),this.lexer.state.top=c,0===e.length)break;let h=s.at(-1);if("code"===h?.type)break;if("blockquote"===h?.type){let t=h,l=t.raw+"\n"+e.join("\n"),i=this.blockquote(l);s[s.length-1]=i,n=n.substring(0,n.length-t.raw.length)+i.raw,r=r.substring(0,r.length-t.text.length)+i.text;break}if("list"!==h?.type);else{let t=h,l=t.raw+"\n"+e.join("\n"),i=this.list(l);s[s.length-1]=i,n=n.substring(0,n.length-h.raw.length)+i.raw,r=r.substring(0,r.length-t.raw.length)+i.raw,e=l.substring(s.at(-1).raw.length).split("\n")}}return{type:"blockquote",raw:n,tokens:s,text:r}}}list(e){let t=this.rules.block.list.exec(e);if(t){let n=t[1].trim(),r=n.length>1,s={type:"list",raw:"",ordered:r,start:r?+n.slice(0,-1):"",loose:!1,items:[]};n=r?`\\d{1,9}\\${n.slice(-1)}`:`\\${n}`,this.options.pedantic&&(n=r?n:"[*+-]");let l=this.rules.other.listItemRegex(n),i=!1;for(;e;){let n=!1,r="",a="";if(!(t=l.exec(e))||this.rules.block.hr.test(e))break;r=t[0],e=e.substring(r.length);let o=t[2].split("\n",1)[0].replace(this.rules.other.listReplaceTabs,(e=>" ".repeat(3*e.length))),c=e.split("\n",1)[0],h=!o.trim(),p=0;if(this.options.pedantic?(p=2,a=o.trimStart()):h?p=t[1].length+1:(p=t[2].search(this.rules.other.nonSpaceChar),p=p>4?1:p,a=o.slice(p),p+=t[1].length),h&&this.rules.other.blankLine.test(c)&&(r+=c+"\n",e=e.substring(c.length+1),n=!0),!n){let t=this.rules.other.nextBulletRegex(p),n=this.rules.other.hrRegex(p),s=this.rules.other.fencesBeginRegex(p),l=this.rules.other.headingBeginRegex(p),i=this.rules.other.htmlBeginRegex(p);for(;e;){let u,g=e.split("\n",1)[0];if(c=g,this.options.pedantic?(c=c.replace(this.rules.other.listReplaceNesting," "),u=c):u=c.replace(this.rules.other.tabCharGlobal," "),s.test(c)||l.test(c)||i.test(c)||t.test(c)||n.test(c))break;if(u.search(this.rules.other.nonSpaceChar)>=p||!c.trim())a+="\n"+u.slice(p);else{if(h||o.replace(this.rules.other.tabCharGlobal," ").search(this.rules.other.nonSpaceChar)>=4||s.test(o)||l.test(o)||n.test(o))break;a+="\n"+c}!h&&!c.trim()&&(h=!0),r+=g+"\n",e=e.substring(g.length+1),o=u.slice(p)}}s.loose||(i?s.loose=!0:this.rules.other.doubleBlankLine.test(r)&&(i=!0));let u,g=null;this.options.gfm&&(g=this.rules.other.listIsTask.exec(a),g&&(u="[ ] "!==g[0],a=a.replace(this.rules.other.listReplaceTask,""))),s.items.push({type:"list_item",raw:r,task:!!g,checked:u,loose:!1,text:a,tokens:[]}),s.raw+=r}let a=s.items.at(-1);if(!a)return;a.raw=a.raw.trimEnd(),a.text=a.text.trimEnd(),s.raw=s.raw.trimEnd();for(let e=0;e<s.items.length;e++)if(this.lexer.state.top=!1,s.items[e].tokens=this.lexer.blockTokens(s.items[e].text,[]),!s.loose){let t=s.items[e].tokens.filter((e=>"space"===e.type)),n=t.length>0&&t.some((e=>this.rules.other.anyLine.test(e.raw)));s.loose=n}if(s.loose)for(let e=0;e<s.items.length;e++)s.items[e].loose=!0;return s}}html(e){let t=this.rules.block.html.exec(e);if(t)return{type:"html",block:!0,raw:t[0],pre:"pre"===t[1]||"script"===t[1]||"style"===t[1],text:t[0]}}def(e){let t=this.rules.block.def.exec(e);if(t){let e=t[1].toLowerCase().replace(this.rules.other.multipleSpaceGlobal," "),n=t[2]?t[2].replace(this.rules.other.hrefBrackets,"$1").replace(this.rules.inline.anyPunctuation,"$1"):"",r=t[3]?t[3].substring(1,t[3].length-1).replace(this.rules.inline.anyPunctuation,"$1"):t[3];return{type:"def",tag:e,raw:t[0],href:n,title:r}}}table(e){let t=this.rules.block.table.exec(e);if(!t||!this.rules.other.tableDelimiter.test(t[2]))return;let n=ee(t[1]),r=t[2].replace(this.rules.other.tableAlignChars,"").split("|"),s=t[3]?.trim()?t[3].replace(this.rules.other.tableRowBlankLine,"").split("\n"):[],l={type:"table",raw:t[0],header:[],align:[],rows:[]};if(n.length===r.length){for(let e of r)this.rules.other.tableAlignRight.test(e)?l.align.push("right"):this.rules.other.tableAlignCenter.test(e)?l.align.push("center"):this.rules.other.tableAlignLeft.test(e)?l.align.push("left"):l.align.push(null);for(let e=0;e<n.length;e++)l.header.push({text:n[e],tokens:this.lexer.inline(n[e]),header:!0,align:l.align[e]});for(let e of s)l.rows.push(ee(e,l.header.length).map(((e,t)=>({text:e,tokens:this.lexer.inline(e),header:!1,align:l.align[t]}))));return l}}lheading(e){let t=this.rules.block.lheading.exec(e);if(t)return{type:"heading",raw:t[0],depth:"="===t[2].charAt(0)?1:2,text:t[1],tokens:this.lexer.inline(t[1])}}paragraph(e){let t=this.rules.block.paragraph.exec(e);if(t){let e="\n"===t[1].charAt(t[1].length-1)?t[1].slice(0,-1):t[1];return{type:"paragraph",raw:t[0],text:e,tokens:this.lexer.inline(e)}}}text(e){let t=this.rules.block.text.exec(e);if(t)return{type:"text",raw:t[0],text:t[0],tokens:this.lexer.inline(t[0])}}escape(e){let t=this.rules.inline.escape.exec(e);if(t)return{type:"escape",raw:t[0],text:t[1]}}tag(e){let t=this.rules.inline.tag.exec(e);if(t)return!this.lexer.state.inLink&&this.rules.other.startATag.test(t[0])?this.lexer.state.inLink=!0:this.lexer.state.inLink&&this.rules.other.endATag.test(t[0])&&(this.lexer.state.inLink=!1),!this.lexer.state.inRawBlock&&this.rules.other.startPreScriptTag.test(t[0])?this.lexer.state.inRawBlock=!0:this.lexer.state.inRawBlock&&this.rules.other.endPreScriptTag.test(t[0])&&(this.lexer.state.inRawBlock=!1),{type:"html",raw:t[0],inLink:this.lexer.state.inLink,inRawBlock:this.lexer.state.inRawBlock,block:!1,text:t[0]}}link(e){let t=this.rules.inline.link.exec(e);if(t){let e=t[2].trim();if(!this.options.pedantic&&this.rules.other.startAngleBracket.test(e)){if(!this.rules.other.endAngleBracket.test(e))return;let t=te(e.slice(0,-1),"\\");if((e.length-t.length)%2==0)return}else{let e=function(e,t){if(-1===e.indexOf(t[1]))return-1;let n=0;for(let r=0;r<e.length;r++)if("\\"===e[r])r++;else if(e[r]===t[0])n++;else if(e[r]===t[1]&&(n--,n<0))return r;return n>0?-2:-1}(t[2],"()");if(-2===e)return;if(e>-1){let n=(0===t[0].indexOf("!")?5:4)+t[1].length+e;t[2]=t[2].substring(0,e),t[0]=t[0].substring(0,n).trim(),t[3]=""}}let n=t[2],r="";if(this.options.pedantic){let e=this.rules.other.pedanticHrefTitle.exec(n);e&&(n=e[1],r=e[3])}else r=t[3]?t[3].slice(1,-1):"";return n=n.trim(),this.rules.other.startAngleBracket.test(n)&&(n=this.options.pedantic&&!this.rules.other.endAngleBracket.test(e)?n.slice(1):n.slice(1,-1)),ne(t,{href:n&&n.replace(this.rules.inline.anyPunctuation,"$1"),title:r&&r.replace(this.rules.inline.anyPunctuation,"$1")},t[0],this.lexer,this.rules)}}reflink(e,t){let n;if((n=this.rules.inline.reflink.exec(e))||(n=this.rules.inline.nolink.exec(e))){let e=t[(n[2]||n[1]).replace(this.rules.other.multipleSpaceGlobal," ").toLowerCase()];if(!e){let e=n[0].charAt(0);return{type:"text",raw:e,text:e}}return ne(n,e,n[0],this.lexer,this.rules)}}emStrong(e,t,n=""){let r=this.rules.inline.emStrongLDelim.exec(e);if(!(!r||r[3]&&n.match(this.rules.other.unicodeAlphaNumeric))&&(!r[1]&&!r[2]||!n||this.rules.inline.punctuation.exec(n))){let n,s,l=[...r[0]].length-1,i=l,a=0,o="*"===r[0][0]?this.rules.inline.emStrongRDelimAst:this.rules.inline.emStrongRDelimUnd;for(o.lastIndex=0,t=t.slice(-1*e.length+l);null!=(r=o.exec(t));){if(n=r[1]||r[2]||r[3]||r[4]||r[5]||r[6],!n)continue;if(s=[...n].length,r[3]||r[4]){i+=s;continue}if((r[5]||r[6])&&l%3&&!((l+s)%3)){a+=s;continue}if(i-=s,i>0)continue;s=Math.min(s,s+i+a);let t=[...r[0]][0].length,o=e.slice(0,l+r.index+t+s);if(Math.min(l,s)%2){let e=o.slice(1,-1);return{type:"em",raw:o,text:e,tokens:this.lexer.inlineTokens(e)}}let c=o.slice(2,-2);return{type:"strong",raw:o,text:c,tokens:this.lexer.inlineTokens(c)}}}}codespan(e){let t=this.rules.inline.code.exec(e);if(t){let e=t[2].replace(this.rules.other.newLineCharGlobal," "),n=this.rules.other.nonSpaceChar.test(e),r=this.rules.other.startingSpaceChar.test(e)&&this.rules.other.endingSpaceChar.test(e);return n&&r&&(e=e.substring(1,e.length-1)),{type:"codespan",raw:t[0],text:e}}}br(e){let t=this.rules.inline.br.exec(e);if(t)return{type:"br",raw:t[0]}}del(e){let t=this.rules.inline.del.exec(e);if(t)return{type:"del",raw:t[0],text:t[2],tokens:this.lexer.inlineTokens(t[2])}}autolink(e){let t=this.rules.inline.autolink.exec(e);if(t){let e,n;return"@"===t[2]?(e=t[1],n="mailto:"+e):(e=t[1],n=e),{type:"link",raw:t[0],text:e,href:n,tokens:[{type:"text",raw:e,text:e}]}}}url(e){let t;if(t=this.rules.inline.url.exec(e)){let e,n;if("@"===t[2])e=t[0],n="mailto:"+e;else{let r;do{r=t[0],t[0]=this.rules.inline._backpedal.exec(t[0])?.[0]??""}while(r!==t[0]);e=t[0],n="www."===t[1]?"http://"+t[0]:t[0]}return{type:"link",raw:t[0],text:e,href:n,tokens:[{type:"text",raw:e,text:e}]}}}inlineText(e){let t=this.rules.inline.text.exec(e);if(t){let e=this.lexer.state.inRawBlock;return{type:"text",raw:t[0],text:t[0],escaped:e}}}},se=class e{tokens;options;state;tokenizer;inlineQueue;constructor(e){this.tokens=[],this.tokens.links=Object.create(null),this.options=e||t,this.options.tokenizer=this.options.tokenizer||new re,this.tokenizer=this.options.tokenizer,this.tokenizer.options=this.options,this.tokenizer.lexer=this,this.inlineQueue=[],this.state={inLink:!1,inRawBlock:!1,top:!0};let n={other:l,block:F.normal,inline:U.normal};this.options.pedantic?(n.block=F.pedantic,n.inline=U.pedantic):this.options.gfm&&(n.block=F.gfm,this.options.breaks?n.inline=U.breaks:n.inline=U.gfm),this.tokenizer.rules=n}static get rules(){return{block:F,inline:U}}static lex(t,n){return new e(n).lex(t)}static lexInline(t,n){return new e(n).inlineTokens(t)}lex(e){e=e.replace(l.carriageReturn,"\n"),this.blockTokens(e,this.tokens);for(let e=0;e<this.inlineQueue.length;e++){let t=this.inlineQueue[e];this.inlineTokens(t.src,t.tokens)}return this.inlineQueue=[],this.tokens}blockTokens(e,t=[],n=!1){for(this.options.pedantic&&(e=e.replace(l.tabCharGlobal," ").replace(l.spaceLine,""));e;){let r;if(this.options.extensions?.block?.some((n=>!!(r=n.call({lexer:this},e,t))&&(e=e.substring(r.raw.length),t.push(r),!0))))continue;if(r=this.tokenizer.space(e)){e=e.substring(r.raw.length);let n=t.at(-1);1===r.raw.length&&void 0!==n?n.raw+="\n":t.push(r);continue}if(r=this.tokenizer.code(e)){e=e.substring(r.raw.length);let n=t.at(-1);"paragraph"===n?.type||"text"===n?.type?(n.raw+=(n.raw.endsWith("\n")?"":"\n")+r.raw,n.text+="\n"+r.text,this.inlineQueue.at(-1).src=n.text):t.push(r);continue}if(r=this.tokenizer.fences(e)){e=e.substring(r.raw.length),t.push(r);continue}if(r=this.tokenizer.heading(e)){e=e.substring(r.raw.length),t.push(r);continue}if(r=this.tokenizer.hr(e)){e=e.substring(r.raw.length),t.push(r);continue}if(r=this.tokenizer.blockquote(e)){e=e.substring(r.raw.length),t.push(r);continue}if(r=this.tokenizer.list(e)){e=e.substring(r.raw.length),t.push(r);continue}if(r=this.tokenizer.html(e)){e=e.substring(r.raw.length),t.push(r);continue}if(r=this.tokenizer.def(e)){e=e.substring(r.raw.length);let n=t.at(-1);"paragraph"===n?.type||"text"===n?.type?(n.raw+=(n.raw.endsWith("\n")?"":"\n")+r.raw,n.text+="\n"+r.raw,this.inlineQueue.at(-1).src=n.text):this.tokens.links[r.tag]||(this.tokens.links[r.tag]={href:r.href,title:r.title});continue}if(r=this.tokenizer.table(e)){e=e.substring(r.raw.length),t.push(r);continue}if(r=this.tokenizer.lheading(e)){e=e.substring(r.raw.length),t.push(r);continue}let s=e;if(this.options.extensions?.startBlock){let t,n=1/0,r=e.slice(1);this.options.extensions.startBlock.forEach((e=>{t=e.call({lexer:this},r),"number"==typeof t&&t>=0&&(n=Math.min(n,t))})),n<1/0&&n>=0&&(s=e.substring(0,n+1))}if(this.state.top&&(r=this.tokenizer.paragraph(s))){let l=t.at(-1);n&&"paragraph"===l?.type?(l.raw+=(l.raw.endsWith("\n")?"":"\n")+r.raw,l.text+="\n"+r.text,this.inlineQueue.pop(),this.inlineQueue.at(-1).src=l.text):t.push(r),n=s.length!==e.length,e=e.substring(r.raw.length)}else if(r=this.tokenizer.text(e)){e=e.substring(r.raw.length);let n=t.at(-1);"text"===n?.type?(n.raw+=(n.raw.endsWith("\n")?"":"\n")+r.raw,n.text+="\n"+r.text,this.inlineQueue.pop(),this.inlineQueue.at(-1).src=n.text):t.push(r)}else if(e){let t="Infinite loop on byte: "+e.charCodeAt(0);if(this.options.silent){console.error(t);break}throw new Error(t)}}return this.state.top=!0,t}inline(e,t=[]){return this.inlineQueue.push({src:e,tokens:t}),t}inlineTokens(e,t=[]){let n=e,r=null;if(this.tokens.links){let e=Object.keys(this.tokens.links);if(e.length>0)for(;null!=(r=this.tokenizer.rules.inline.reflinkSearch.exec(n));)e.includes(r[0].slice(r[0].lastIndexOf("[")+1,-1))&&(n=n.slice(0,r.index)+"["+"a".repeat(r[0].length-2)+"]"+n.slice(this.tokenizer.rules.inline.reflinkSearch.lastIndex))}for(;null!=(r=this.tokenizer.rules.inline.anyPunctuation.exec(n));)n=n.slice(0,r.index)+"++"+n.slice(this.tokenizer.rules.inline.anyPunctuation.lastIndex);for(;null!=(r=this.tokenizer.rules.inline.blockSkip.exec(n));)n=n.slice(0,r.index)+"["+"a".repeat(r[0].length-2)+"]"+n.slice(this.tokenizer.rules.inline.blockSkip.lastIndex);let s=!1,l="";for(;e;){let r;if(s||(l=""),s=!1,this.options.extensions?.inline?.some((n=>!!(r=n.call({lexer:this},e,t))&&(e=e.substring(r.raw.length),t.push(r),!0))))continue;if(r=this.tokenizer.escape(e)){e=e.substring(r.raw.length),t.push(r);continue}if(r=this.tokenizer.tag(e)){e=e.substring(r.raw.length),t.push(r);continue}if(r=this.tokenizer.link(e)){e=e.substring(r.raw.length),t.push(r);continue}if(r=this.tokenizer.reflink(e,this.tokens.links)){e=e.substring(r.raw.length);let n=t.at(-1);"text"===r.type&&"text"===n?.type?(n.raw+=r.raw,n.text+=r.text):t.push(r);continue}if(r=this.tokenizer.emStrong(e,n,l)){e=e.substring(r.raw.length),t.push(r);continue}if(r=this.tokenizer.codespan(e)){e=e.substring(r.raw.length),t.push(r);continue}if(r=this.tokenizer.br(e)){e=e.substring(r.raw.length),t.push(r);continue}if(r=this.tokenizer.del(e)){e=e.substring(r.raw.length),t.push(r);continue}if(r=this.tokenizer.autolink(e)){e=e.substring(r.raw.length),t.push(r);continue}if(!this.state.inLink&&(r=this.tokenizer.url(e))){e=e.substring(r.raw.length),t.push(r);continue}let i=e;if(this.options.extensions?.startInline){let t,n=1/0,r=e.slice(1);this.options.extensions.startInline.forEach((e=>{t=e.call({lexer:this},r),"number"==typeof t&&t>=0&&(n=Math.min(n,t))})),n<1/0&&n>=0&&(i=e.substring(0,n+1))}if(r=this.tokenizer.inlineText(i)){e=e.substring(r.raw.length),"_"!==r.raw.slice(-1)&&(l=r.raw.slice(-1)),s=!0;let n=t.at(-1);"text"===n?.type?(n.raw+=r.raw,n.text+=r.text):t.push(r)}else if(e){let t="Infinite loop on byte: "+e.charCodeAt(0);if(this.options.silent){console.error(t);break}throw new Error(t)}}return t}},le=class{options;parser;constructor(e){this.options=e||t}space(e){return""}code({text:e,lang:t,escaped:n}){let r=(t||"").match(l.notSpaceStart)?.[0],s=e.replace(l.endingNewline,"")+"\n";return r?'<pre><code class="language-'+V(r)+'">'+(n?s:V(s,!0))+"</code></pre>\n":"<pre><code>"+(n?s:V(s,!0))+"</code></pre>\n"}blockquote({tokens:e}){return`<blockquote>\n${this.parser.parse(e)}</blockquote>\n`}html({text:e}){return e}heading({tokens:e,depth:t}){return`<h${t}>${this.parser.parseInline(e)}</h${t}>\n`}hr(e){return"<hr>\n"}list(e){let t=e.ordered,n=e.start,r="";for(let t=0;t<e.items.length;t++){let n=e.items[t];r+=this.listitem(n)}let s=t?"ol":"ul";return"<"+s+(t&&1!==n?' start="'+n+'"':"")+">\n"+r+"</"+s+">\n"}listitem(e){let t="";if(e.task){let n=this.checkbox({checked:!!e.checked});e.loose?"paragraph"===e.tokens[0]?.type?(e.tokens[0].text=n+" "+e.tokens[0].text,e.tokens[0].tokens&&e.tokens[0].tokens.length>0&&"text"===e.tokens[0].tokens[0].type&&(e.tokens[0].tokens[0].text=n+" "+V(e.tokens[0].tokens[0].text),e.tokens[0].tokens[0].escaped=!0)):e.tokens.unshift({type:"text",raw:n+" ",text:n+" ",escaped:!0}):t+=n+" "}return t+=this.parser.parse(e.tokens,!!e.loose),`<li>${t}</li>\n`}checkbox({checked:e}){return"<input "+(e?'checked="" ':"")+'disabled="" type="checkbox">'}paragraph({tokens:e}){return`<p>${this.parser.parseInline(e)}</p>\n`}table(e){let t="",n="";for(let t=0;t<e.header.length;t++)n+=this.tablecell(e.header[t]);t+=this.tablerow({text:n});let r="";for(let t=0;t<e.rows.length;t++){let s=e.rows[t];n="";for(let e=0;e<s.length;e++)n+=this.tablecell(s[e]);r+=this.tablerow({text:n})}return r&&(r=`<tbody>${r}</tbody>`),"<table>\n<thead>\n"+t+"</thead>\n"+r+"</table>\n"}tablerow({text:e}){return`<tr>\n${e}</tr>\n`}tablecell(e){let t=this.parser.parseInline(e.tokens),n=e.header?"th":"td";return(e.align?`<${n} align="${e.align}">`:`<${n}>`)+t+`</${n}>\n`}strong({tokens:e}){return`<strong>${this.parser.parseInline(e)}</strong>`}em({tokens:e}){return`<em>${this.parser.parseInline(e)}</em>`}codespan({text:e}){return`<code>${V(e,!0)}</code>`}br(e){return"<br>"}del({tokens:e}){return`<del>${this.parser.parseInline(e)}</del>`}link({href:e,title:t,tokens:n}){let r=this.parser.parseInline(n),s=Y(e);if(null===s)return r;let l='<a href="'+(e=s)+'"';return t&&(l+=' title="'+V(t)+'"'),l+=">"+r+"</a>",l}image({href:e,title:t,text:n,tokens:r}){r&&(n=this.parser.parseInline(r,this.parser.textRenderer));let s=Y(e);if(null===s)return V(n);let l=`<img src="${e=s}" alt="${n}"`;return t&&(l+=` title="${V(t)}"`),l+=">",l}text(e){return"tokens"in e&&e.tokens?this.parser.parseInline(e.tokens):"escaped"in e&&e.escaped?e.text:V(e.text)}},ie=class{strong({text:e}){return e}em({text:e}){return e}codespan({text:e}){return e}del({text:e}){return e}html({text:e}){return e}text({text:e}){return e}link({text:e}){return""+e}image({text:e}){return""+e}br(){return""}},ae=class e{options;renderer;textRenderer;constructor(e){this.options=e||t,this.options.renderer=this.options.renderer||new le,this.renderer=this.options.renderer,this.renderer.options=this.options,this.renderer.parser=this,this.textRenderer=new ie}static parse(t,n){return new e(n).parse(t)}static parseInline(t,n){return new e(n).parseInline(t)}parse(e,t=!0){let n="";for(let r=0;r<e.length;r++){let s=e[r];if(this.options.extensions?.renderers?.[s.type]){let e=s,t=this.options.extensions.renderers[e.type].call({parser:this},e);if(!1!==t||!["space","hr","heading","code","table","blockquote","list","html","paragraph","text"].includes(e.type)){n+=t||"";continue}}let l=s;switch(l.type){case"space":n+=this.renderer.space(l);continue;case"hr":n+=this.renderer.hr(l);continue;case"heading":n+=this.renderer.heading(l);continue;case"code":n+=this.renderer.code(l);continue;case"table":n+=this.renderer.table(l);continue;case"blockquote":n+=this.renderer.blockquote(l);continue;case"list":n+=this.renderer.list(l);continue;case"html":n+=this.renderer.html(l);continue;case"paragraph":n+=this.renderer.paragraph(l);continue;case"text":{let s=l,i=this.renderer.text(s);for(;r+1<e.length&&"text"===e[r+1].type;)s=e[++r],i+="\n"+this.renderer.text(s);n+=t?this.renderer.paragraph({type:"paragraph",raw:i,text:i,tokens:[{type:"text",raw:i,text:i,escaped:!0}]}):i;continue}default:{let e='Token with "'+l.type+'" type was not found.';if(this.options.silent)return console.error(e),"";throw new Error(e)}}}return n}parseInline(e,t=this.renderer){let n="";for(let r=0;r<e.length;r++){let s=e[r];if(this.options.extensions?.renderers?.[s.type]){let e=this.options.extensions.renderers[s.type].call({parser:this},s);if(!1!==e||!["escape","html","link","image","strong","em","codespan","br","del","text"].includes(s.type)){n+=e||"";continue}}let l=s;switch(l.type){case"escape":case"text":n+=t.text(l);break;case"html":n+=t.html(l);break;case"link":n+=t.link(l);break;case"image":n+=t.image(l);break;case"strong":n+=t.strong(l);break;case"em":n+=t.em(l);break;case"codespan":n+=t.codespan(l);break;case"br":n+=t.br(l);break;case"del":n+=t.del(l);break;default:{let e='Token with "'+l.type+'" type was not found.';if(this.options.silent)return console.error(e),"";throw new Error(e)}}}return n}},oe=class{options;block;constructor(e){this.options=e||t}static passThroughHooks=new Set(["preprocess","postprocess","processAllTokens"]);preprocess(e){return e}postprocess(e){return e}processAllTokens(e){return e}provideLexer(){return this.block?se.lex:se.lexInline}provideParser(){return this.block?ae.parse:ae.parseInline}},ce=class{defaults={async:!1,breaks:!1,extensions:null,gfm:!0,hooks:null,pedantic:!1,renderer:null,silent:!1,tokenizer:null,walkTokens:null};options=this.setOptions;parse=this.parseMarkdown(!0);parseInline=this.parseMarkdown(!1);Parser=ae;Renderer=le;TextRenderer=ie;Lexer=se;Tokenizer=re;Hooks=oe;constructor(...e){this.use(...e)}walkTokens(e,t){let n=[];for(let r of e)switch(n=n.concat(t.call(this,r)),r.type){case"table":{let e=r;for(let r of e.header)n=n.concat(this.walkTokens(r.tokens,t));for(let r of e.rows)for(let e of r)n=n.concat(this.walkTokens(e.tokens,t));break}case"list":{let e=r;n=n.concat(this.walkTokens(e.items,t));break}default:{let e=r;this.defaults.extensions?.childTokens?.[e.type]?this.defaults.extensions.childTokens[e.type].forEach((r=>{let s=e[r].flat(1/0);n=n.concat(this.walkTokens(s,t))})):e.tokens&&(n=n.concat(this.walkTokens(e.tokens,t)))}}return n}use(...e){let t=this.defaults.extensions||{renderers:{},childTokens:{}};return e.forEach((e=>{let n={...e};if(n.async=this.defaults.async||n.async||!1,e.extensions&&(e.extensions.forEach((e=>{if(!e.name)throw new Error("extension name required");if("renderer"in e){let n=t.renderers[e.name];t.renderers[e.name]=n?function(...t){let r=e.renderer.apply(this,t);return!1===r&&(r=n.apply(this,t)),r}:e.renderer}if("tokenizer"in e){if(!e.level||"block"!==e.level&&"inline"!==e.level)throw new Error("extension level must be 'block' or 'inline'");let n=t[e.level];n?n.unshift(e.tokenizer):t[e.level]=[e.tokenizer],e.start&&("block"===e.level?t.startBlock?t.startBlock.push(e.start):t.startBlock=[e.start]:"inline"===e.level&&(t.startInline?t.startInline.push(e.start):t.startInline=[e.start]))}"childTokens"in e&&e.childTokens&&(t.childTokens[e.name]=e.childTokens)})),n.extensions=t),e.renderer){let t=this.defaults.renderer||new le(this.defaults);for(let n in e.renderer){if(!(n in t))throw new Error(`renderer '${n}' does not exist`);if(["options","parser"].includes(n))continue;let r=n,s=e.renderer[r],l=t[r];t[r]=(...e)=>{let n=s.apply(t,e);return!1===n&&(n=l.apply(t,e)),n||""}}n.renderer=t}if(e.tokenizer){let t=this.defaults.tokenizer||new re(this.defaults);for(let n in e.tokenizer){if(!(n in t))throw new Error(`tokenizer '${n}' does not exist`);if(["options","rules","lexer"].includes(n))continue;let r=n,s=e.tokenizer[r],l=t[r];t[r]=(...e)=>{let n=s.apply(t,e);return!1===n&&(n=l.apply(t,e)),n}}n.tokenizer=t}if(e.hooks){let t=this.defaults.hooks||new oe;for(let n in e.hooks){if(!(n in t))throw new Error(`hook '${n}' does not exist`);if(["options","block"].includes(n))continue;let r=n,s=e.hooks[r],l=t[r];oe.passThroughHooks.has(n)?t[r]=e=>{if(this.defaults.async)return Promise.resolve(s.call(t,e)).then((e=>l.call(t,e)));let n=s.call(t,e);return l.call(t,n)}:t[r]=(...e)=>{let n=s.apply(t,e);return!1===n&&(n=l.apply(t,e)),n}}n.hooks=t}if(e.walkTokens){let t=this.defaults.walkTokens,r=e.walkTokens;n.walkTokens=function(e){let n=[];return n.push(r.call(this,e)),t&&(n=n.concat(t.call(this,e))),n}}this.defaults={...this.defaults,...n}})),this}setOptions(e){return this.defaults={...this.defaults,...e},this}lexer(e,t){return se.lex(e,t??this.defaults)}parser(e,t){return ae.parse(e,t??this.defaults)}parseMarkdown(e){return(t,n)=>{let r={...n},s={...this.defaults,...r},l=this.onError(!!s.silent,!!s.async);if(!0===this.defaults.async&&!1===r.async)return l(new Error("marked(): The async option was set to true by an extension. Remove async: false from the parse options object to return a Promise."));if(typeof t>"u"||null===t)return l(new Error("marked(): input parameter is undefined or null"));if("string"!=typeof t)return l(new Error("marked(): input parameter is of type "+Object.prototype.toString.call(t)+", string expected"));s.hooks&&(s.hooks.options=s,s.hooks.block=e);let i=s.hooks?s.hooks.provideLexer():e?se.lex:se.lexInline,a=s.hooks?s.hooks.provideParser():e?ae.parse:ae.parseInline;if(s.async)return Promise.resolve(s.hooks?s.hooks.preprocess(t):t).then((e=>i(e,s))).then((e=>s.hooks?s.hooks.processAllTokens(e):e)).then((e=>s.walkTokens?Promise.all(this.walkTokens(e,s.walkTokens)).then((()=>e)):e)).then((e=>a(e,s))).then((e=>s.hooks?s.hooks.postprocess(e):e)).catch(l);try{s.hooks&&(t=s.hooks.preprocess(t));let e=i(t,s);s.hooks&&(e=s.hooks.processAllTokens(e)),s.walkTokens&&this.walkTokens(e,s.walkTokens);let n=a(e,s);return s.hooks&&(n=s.hooks.postprocess(n)),n}catch(e){return l(e)}}}onError(e,t){return n=>{if(n.message+="\nPlease report this to https://github.com/markedjs/marked.",e){let e="<p>An error occurred:</p><pre>"+V(n.message+"",!0)+"</pre>";return t?Promise.resolve(e):e}if(t)return Promise.reject(n);throw n}}},he=new ce;function pe(e,t){return he.parse(e,t)}pe.options=pe.setOptions=function(e){return he.setOptions(e),pe.defaults=he.defaults,n(pe.defaults),pe},pe.getDefaults=e,pe.defaults=t,pe.use=function(...e){return he.use(...e),pe.defaults=he.defaults,n(pe.defaults),pe},pe.walkTokens=function(e,t){return he.walkTokens(e,t)},pe.parseInline=he.parseInline,pe.Parser=ae,pe.parser=ae.parse,pe.Renderer=le,pe.TextRenderer=ie,pe.Lexer=se,pe.lexer=se.lex,pe.Tokenizer=re,pe.Hooks=oe,pe.parse=pe;var ue=pe.options,ge=pe.setOptions,ke=pe.use,de=pe.walkTokens,fe=pe.parseInline,xe=pe,be=ae.parse,we=se.lex;export{oe as Hooks,se as Lexer,ce as Marked,ae as Parser,le as Renderer,ie as TextRenderer,re as Tokenizer,t as defaults,e as getDefaults,we as lexer,pe as marked,ue as options,xe as parse,fe as parseInline,be as parser,ge as setOptions,ke as use,de as walkTokens};export default null;
@@ -0,0 +1,171 @@
1
+ <template>
2
+ <view class="up-markdown" :class="theme" :style="markdownStyle">
3
+ <up-parse
4
+ :content="parsedContent"
5
+ :previewImg="previewImg"
6
+ :tag-style="markdownTagStyle"
7
+ ></up-parse>
8
+ </view>
9
+ </template>
10
+
11
+ <script setup lang="uts">
12
+ import { computed, ref, watch } from 'vue'
13
+ import { useMarked } from '../../libs/marked-uts/common/marked'
14
+
15
+ const marked = useMarked()
16
+
17
+ async function renderMarkdown(content: string): Promise<string> {
18
+ const parsed = await marked.parse(content, null) as string
19
+ return parsed
20
+ }
21
+
22
+ function addLineNumbers(code: string): string {
23
+ const lines = code.split('\n')
24
+ let result = ''
25
+ let lineNumber = 1
26
+ for (let i = 0; i < lines.length; i++) {
27
+ if (i == lines.length - 1 && lines[i].length == 0) continue
28
+ if (result.length > 0) result += '\n'
29
+ result += lineNumber.toString() + ' ' + lines[i]
30
+ lineNumber++
31
+ }
32
+ return result
33
+ }
34
+
35
+ function addLineNumbersToCodeBlocks(html: string): string {
36
+ const closeCode = '</code></pre>'
37
+ let result = ''
38
+ let index = 0
39
+ while (index < html.length) {
40
+ const preStart = html.indexOf('<pre><code', index)
41
+ if (preStart == -1) {
42
+ result += html.substring(index)
43
+ break
44
+ }
45
+ const codeStart = html.indexOf('>', preStart)
46
+ const codeEnd = html.indexOf(closeCode, codeStart + 1)
47
+ if (codeStart == -1 || codeEnd == -1) {
48
+ result += html.substring(index)
49
+ break
50
+ }
51
+ result += html.substring(index, codeStart + 1)
52
+ result += addLineNumbers(html.substring(codeStart + 1, codeEnd))
53
+ result += closeCode
54
+ index = codeEnd + closeCode.length
55
+ }
56
+ return result
57
+ }
58
+
59
+ function styleMap(theme: string): UTSJSONObject {
60
+ const dark = theme == 'dark'
61
+ const textColor = dark ? '#dcdcdc' : '#333333'
62
+ const mutedColor = dark ? '#bbbbbb' : '#666666'
63
+ const linkColor = dark ? '#4da6ff' : '#007aff'
64
+ const codeBackground = dark ? '#2d2d2d' : '#f6f8fa'
65
+ const borderColor = dark ? '#4b5563' : '#dfe2e5'
66
+ const tableRowBackground = dark ? '#252525' : '#f6f8fa'
67
+ return {
68
+ h1: 'font-size:32px;margin:8px 0;font-weight:bold;color:' + textColor,
69
+ h2: 'font-size:24px;margin:8px 0;font-weight:bold;color:' + textColor,
70
+ h3: 'font-size:18px;margin:7px 0;font-weight:bold;color:' + textColor,
71
+ h4: 'font-size:16px;margin:7px 0;font-weight:bold;color:' + textColor,
72
+ h5: 'font-size:13px;margin:6px 0;font-weight:bold;color:' + textColor,
73
+ h6: 'font-size:10px;margin:5px 0;font-weight:bold;color:' + textColor,
74
+ p: 'margin:16px 0;color:' + textColor,
75
+ a: 'color:' + linkColor + ';text-decoration:none',
76
+ ul: 'margin:16px 0;padding-left:32px;color:' + textColor,
77
+ ol: 'margin:16px 0;padding-left:32px;color:' + textColor,
78
+ li: 'margin:8px 0;color:' + textColor,
79
+ blockquote: 'margin:8px 0;padding:0 10px;border-left:4px solid #cccccc;color:' + mutedColor,
80
+ code: 'font-family:monospace;font-size:14px;background-color:' + codeBackground + ';padding:3px 6px;color:' + textColor,
81
+ pre: 'font-family:monospace;font-size:14px;background-color:' + codeBackground + ';padding:16px;overflow:auto;border-radius:6px;margin:16px 0;color:' + textColor,
82
+ table: 'border-collapse:collapse;margin:16px 0;width:100%;color:' + textColor,
83
+ th: 'padding:6px 13px;border:1px solid ' + borderColor + ';font-weight:600;background-color:' + tableRowBackground,
84
+ td: 'padding:6px 13px;border:1px solid ' + borderColor,
85
+ img: 'max-width:100%;box-sizing:content-box;background-color:#ffffff;margin:16px 0',
86
+ hr: 'height:1px;padding:0;margin:24px 0;background-color:' + borderColor + ';border:0'
87
+ } as UTSJSONObject
88
+ }
89
+
90
+ defineOptions({
91
+ styleIsolation: 'app-and-page',
92
+ name: 'up-markdown'
93
+ })
94
+
95
+ const props = defineProps({
96
+ // markdown内容
97
+ content: {
98
+ type: String,
99
+ default: ''
100
+ },
101
+ // 是否启用图片预览
102
+ previewImg: {
103
+ type: Boolean,
104
+ default: true
105
+ },
106
+ // 是否显示代码块行号
107
+ showLineNumber: {
108
+ type: Boolean,
109
+ default: false
110
+ },
111
+ // 主题样式 'light' | 'dark'
112
+ theme: {
113
+ type: String,
114
+ default: 'light'
115
+ }
116
+ })
117
+
118
+ const parsedContent = ref('')
119
+
120
+ const markdownStyle = computed((): string => {
121
+ if (props.theme == 'dark') {
122
+ return 'background-color:#1e1e1e;color:#cccccc'
123
+ }
124
+ return ''
125
+ })
126
+
127
+ const markdownTagStyle = computed((): UTSJSONObject => {
128
+ return styleMap(props.theme)
129
+ })
130
+
131
+ // 解析markdown内容
132
+ const parseMarkdown = async (content: string): Promise<void> => {
133
+ if (content.length == 0) {
134
+ parsedContent.value = ''
135
+ return
136
+ }
137
+
138
+ let parsed = await renderMarkdown(content)
139
+ if (props.showLineNumber) {
140
+ parsed = addLineNumbersToCodeBlocks(parsed)
141
+ }
142
+ parsedContent.value = parsed
143
+ }
144
+
145
+ watch((): string => props.content, (newVal: string) => {
146
+ parseMarkdown(newVal)
147
+ }, { immediate: true })
148
+ </script>
149
+
150
+ <style lang="scss" scoped>
151
+ .up-markdown {
152
+ font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, 'Open Sans', 'Helvetica Neue', sans-serif;
153
+ font-size: 16px;
154
+ line-height: 1.6;
155
+ color: #333;
156
+ padding: 16px;
157
+
158
+ /* 标题样式 */
159
+ /* 段落样式 */
160
+ /* 链接样式 */
161
+ /* 列表样式 */
162
+ /* 引用样式 */
163
+ /* 代码样式 */
164
+ /* 表格样式 */
165
+ /* 图片样式 */
166
+ /* 分割线样式 */
167
+ /* 深色主题 */
168
+ }
169
+
170
+ /* 代码块行号样式 */
171
+ </style>