vft 0.0.1 → 0.0.2

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 (758) hide show
  1. package/dist/index.css +1 -0
  2. package/es/component.d.ts +3 -0
  3. package/es/component.mjs +18 -0
  4. package/es/component.mjs.map +1 -0
  5. package/es/components/avatar/avatar.vue.d.ts +64 -0
  6. package/es/components/avatar/avatar.vue.mjs +5 -0
  7. package/es/components/avatar/avatar.vue.mjs.map +1 -0
  8. package/es/components/avatar/avatar.vue2.mjs +51 -0
  9. package/es/components/avatar/avatar.vue2.mjs.map +1 -0
  10. package/es/components/avatar/index.d.ts +62 -0
  11. package/es/components/avatar/index.mjs +9 -0
  12. package/es/components/avatar/index.mjs.map +1 -0
  13. package/es/components/avatar/style/css.d.ts +0 -0
  14. package/es/components/avatar/style/css.mjs +3 -0
  15. package/es/components/avatar/style/css.mjs.map +1 -0
  16. package/es/components/avatar/style/index.d.ts +0 -0
  17. package/es/components/avatar/style/index.mjs +3 -0
  18. package/es/components/avatar/style/index.mjs.map +1 -0
  19. package/es/components/back-top/back-top.vue.d.ts +48 -0
  20. package/es/components/back-top/back-top.vue.mjs +5 -0
  21. package/es/components/back-top/back-top.vue.mjs.map +1 -0
  22. package/es/components/back-top/back-top.vue2.mjs +61 -0
  23. package/es/components/back-top/back-top.vue2.mjs.map +1 -0
  24. package/es/components/back-top/index.d.ts +47 -0
  25. package/es/components/back-top/index.mjs +9 -0
  26. package/es/components/back-top/index.mjs.map +1 -0
  27. package/es/components/back-top/style/css.d.ts +0 -0
  28. package/es/components/back-top/style/css.mjs +3 -0
  29. package/es/components/back-top/style/css.mjs.map +1 -0
  30. package/es/components/back-top/style/index.d.ts +0 -0
  31. package/es/components/back-top/style/index.mjs +3 -0
  32. package/es/components/back-top/style/index.mjs.map +1 -0
  33. package/es/components/back-top/types.d.ts +13 -0
  34. package/es/components/back-top/types.mjs +2 -0
  35. package/es/components/back-top/types.mjs.map +1 -0
  36. package/es/components/back-top/use-back-top.d.ts +5 -0
  37. package/es/components/back-top/use-back-top.mjs +32 -0
  38. package/es/components/back-top/use-back-top.mjs.map +1 -0
  39. package/es/components/base/style/css.d.ts +0 -0
  40. package/es/components/base/style/css.mjs +2 -0
  41. package/es/components/base/style/css.mjs.map +1 -0
  42. package/es/components/base/style/index.d.ts +0 -0
  43. package/es/components/base/style/index.mjs +2 -0
  44. package/es/components/base/style/index.mjs.map +1 -0
  45. package/es/components/divider/divider.vue.d.ts +53 -0
  46. package/es/components/divider/divider.vue.mjs +5 -0
  47. package/es/components/divider/divider.vue.mjs.map +1 -0
  48. package/es/components/divider/divider.vue2.mjs +44 -0
  49. package/es/components/divider/divider.vue2.mjs.map +1 -0
  50. package/es/components/divider/index.d.ts +52 -0
  51. package/es/components/divider/index.mjs +9 -0
  52. package/es/components/divider/index.mjs.map +1 -0
  53. package/es/components/divider/style/css.d.ts +0 -0
  54. package/es/components/divider/style/css.mjs +3 -0
  55. package/es/components/divider/style/css.mjs.map +1 -0
  56. package/es/components/divider/style/index.d.ts +0 -0
  57. package/es/components/divider/style/index.mjs +3 -0
  58. package/es/components/divider/style/index.mjs.map +1 -0
  59. package/es/components/divider/types.d.ts +2 -0
  60. package/es/components/divider/types.mjs +2 -0
  61. package/es/components/divider/types.mjs.map +1 -0
  62. package/es/components/empty/assets/no-collect.png.mjs +5 -0
  63. package/es/components/empty/assets/no-collect.png.mjs.map +1 -0
  64. package/es/components/empty/assets/no-data.png.mjs +5 -0
  65. package/es/components/empty/assets/no-data.png.mjs.map +1 -0
  66. package/es/components/empty/assets/no-filter.png.mjs +5 -0
  67. package/es/components/empty/assets/no-filter.png.mjs.map +1 -0
  68. package/es/components/empty/assets/no-page-data.png.mjs +5 -0
  69. package/es/components/empty/assets/no-page-data.png.mjs.map +1 -0
  70. package/es/components/empty/assets/no-search.png.mjs +5 -0
  71. package/es/components/empty/assets/no-search.png.mjs.map +1 -0
  72. package/es/components/empty/constants.d.ts +12 -0
  73. package/es/components/empty/constants.mjs +5 -0
  74. package/es/components/empty/constants.mjs.map +1 -0
  75. package/es/components/empty/empty.vue.d.ts +39 -0
  76. package/es/components/empty/empty.vue.mjs +5 -0
  77. package/es/components/empty/empty.vue.mjs.map +1 -0
  78. package/es/components/empty/empty.vue2.mjs +98 -0
  79. package/es/components/empty/empty.vue2.mjs.map +1 -0
  80. package/es/components/empty/index.d.ts +37 -0
  81. package/es/components/empty/index.mjs +11 -0
  82. package/es/components/empty/index.mjs.map +1 -0
  83. package/es/components/empty/style/css.d.ts +0 -0
  84. package/es/components/empty/style/css.mjs +3 -0
  85. package/es/components/empty/style/css.mjs.map +1 -0
  86. package/es/components/empty/style/index.d.ts +0 -0
  87. package/es/components/empty/style/index.mjs +3 -0
  88. package/es/components/empty/style/index.mjs.map +1 -0
  89. package/es/components/exception/exception.png.mjs +5 -0
  90. package/es/components/exception/exception.png.mjs.map +1 -0
  91. package/es/components/exception/exception.vue.d.ts +29 -0
  92. package/es/components/exception/exception.vue.mjs +5 -0
  93. package/es/components/exception/exception.vue.mjs.map +1 -0
  94. package/es/components/exception/exception.vue2.mjs +47 -0
  95. package/es/components/exception/exception.vue2.mjs.map +1 -0
  96. package/es/components/exception/index.d.ts +28 -0
  97. package/es/components/exception/index.mjs +9 -0
  98. package/es/components/exception/index.mjs.map +1 -0
  99. package/es/components/exception/style/css.d.ts +0 -0
  100. package/es/components/exception/style/css.mjs +3 -0
  101. package/es/components/exception/style/css.mjs.map +1 -0
  102. package/es/components/exception/style/index.d.ts +0 -0
  103. package/es/components/exception/style/index.mjs +3 -0
  104. package/es/components/exception/style/index.mjs.map +1 -0
  105. package/es/components/icon/icon.vue.d.ts +96 -0
  106. package/es/components/icon/icon.vue.mjs +5 -0
  107. package/es/components/icon/icon.vue.mjs.map +1 -0
  108. package/es/components/icon/icon.vue2.mjs +37 -0
  109. package/es/components/icon/icon.vue2.mjs.map +1 -0
  110. package/es/components/icon/index.d.ts +79 -0
  111. package/es/components/icon/index.mjs +9 -0
  112. package/es/components/icon/index.mjs.map +1 -0
  113. package/es/components/icon/style/css.d.ts +0 -0
  114. package/es/components/icon/style/css.mjs +3 -0
  115. package/es/components/icon/style/css.mjs.map +1 -0
  116. package/es/components/icon/style/index.d.ts +0 -0
  117. package/es/components/icon/style/index.mjs +3 -0
  118. package/es/components/icon/style/index.mjs.map +1 -0
  119. package/es/components/index.d.ts +5 -0
  120. package/es/components/index.mjs +15 -0
  121. package/es/components/index.mjs.map +1 -0
  122. package/es/components/result/index.d.ts +28 -0
  123. package/es/components/result/index.mjs +9 -0
  124. package/es/components/result/index.mjs.map +1 -0
  125. package/es/components/result/result.vue.d.ts +30 -0
  126. package/es/components/result/result.vue.mjs +5 -0
  127. package/es/components/result/result.vue.mjs.map +1 -0
  128. package/es/components/result/result.vue2.mjs +55 -0
  129. package/es/components/result/result.vue2.mjs.map +1 -0
  130. package/es/components/result/style/css.d.ts +0 -0
  131. package/es/components/result/style/css.mjs +3 -0
  132. package/es/components/result/style/css.mjs.map +1 -0
  133. package/es/components/result/style/index.d.ts +0 -0
  134. package/es/components/result/style/index.mjs +3 -0
  135. package/es/components/result/style/index.mjs.map +1 -0
  136. package/es/components/types.mjs +2 -0
  137. package/es/components/types.mjs.map +1 -0
  138. package/es/constants/aria.d.ts +17 -0
  139. package/es/constants/aria.mjs +25 -0
  140. package/es/constants/aria.mjs.map +1 -0
  141. package/es/constants/date.d.ts +3 -0
  142. package/es/constants/date.mjs +24 -0
  143. package/es/constants/date.mjs.map +1 -0
  144. package/es/constants/event.d.ts +3 -0
  145. package/es/constants/event.mjs +7 -0
  146. package/es/constants/event.mjs.map +1 -0
  147. package/es/constants/index.d.ts +5 -0
  148. package/es/constants/index.mjs +17 -0
  149. package/es/constants/index.mjs.map +1 -0
  150. package/es/constants/key.d.ts +1 -0
  151. package/es/constants/key.mjs +5 -0
  152. package/es/constants/key.mjs.map +1 -0
  153. package/es/constants/size.d.ts +7 -0
  154. package/es/constants/size.mjs +10 -0
  155. package/es/constants/size.mjs.map +1 -0
  156. package/es/defaults.d.ts +5 -0
  157. package/es/defaults.mjs +7 -0
  158. package/es/defaults.mjs.map +1 -0
  159. package/es/hooks/index.d.ts +1 -0
  160. package/es/hooks/index.mjs +7 -0
  161. package/es/hooks/index.mjs.map +1 -0
  162. package/es/hooks/use-namespace/index.d.ts +21 -0
  163. package/es/hooks/use-namespace/index.mjs +42 -0
  164. package/es/hooks/use-namespace/index.mjs.map +1 -0
  165. package/es/index.d.ts +8 -0
  166. package/es/index.mjs +38 -0
  167. package/es/index.mjs.map +1 -0
  168. package/es/make-installer.d.ts +5 -0
  169. package/es/make-installer.mjs +12 -0
  170. package/es/make-installer.mjs.map +1 -0
  171. package/es/style.css +1 -0
  172. package/es/theme-style/src/avatar.scss.mjs +5 -0
  173. package/es/theme-style/src/avatar.scss.mjs.map +1 -0
  174. package/es/theme-style/src/back-top.scss.mjs +5 -0
  175. package/es/theme-style/src/back-top.scss.mjs.map +1 -0
  176. package/es/theme-style/src/base.scss.mjs +5 -0
  177. package/es/theme-style/src/base.scss.mjs.map +1 -0
  178. package/es/theme-style/src/divider.scss.mjs +5 -0
  179. package/es/theme-style/src/divider.scss.mjs.map +1 -0
  180. package/es/theme-style/src/empty.scss.mjs +5 -0
  181. package/es/theme-style/src/empty.scss.mjs.map +1 -0
  182. package/es/theme-style/src/icon.scss.mjs +5 -0
  183. package/es/theme-style/src/icon.scss.mjs.map +1 -0
  184. package/es/theme-style/src/result.scss.mjs +5 -0
  185. package/es/theme-style/src/result.scss.mjs.map +1 -0
  186. package/es/utils/error.d.ts +3 -0
  187. package/es/utils/error.mjs +20 -0
  188. package/es/utils/error.mjs.map +1 -0
  189. package/es/utils/helper.d.ts +1 -0
  190. package/es/utils/helper.mjs +5 -0
  191. package/es/utils/helper.mjs.map +1 -0
  192. package/es/utils/index.d.ts +3 -0
  193. package/es/utils/index.mjs +13 -0
  194. package/es/utils/index.mjs.map +1 -0
  195. package/es/utils/vue/index.d.ts +2 -0
  196. package/es/utils/vue/index.mjs +8 -0
  197. package/es/utils/vue/index.mjs.map +1 -0
  198. package/es/utils/vue/install.d.ts +6 -0
  199. package/es/utils/vue/install.mjs +21 -0
  200. package/es/utils/vue/install.mjs.map +1 -0
  201. package/es/utils/vue/typescript.d.ts +5 -0
  202. package/es/utils/vue/typescript.mjs +2 -0
  203. package/es/utils/vue/typescript.mjs.map +1 -0
  204. package/es/version.d.ts +1 -0
  205. package/es/version.mjs +5 -0
  206. package/es/version.mjs.map +1 -0
  207. package/lib/component.d.ts +3 -0
  208. package/lib/component.js +2 -0
  209. package/lib/component.js.map +1 -0
  210. package/lib/components/avatar/avatar.vue.d.ts +64 -0
  211. package/lib/components/avatar/avatar.vue.js +2 -0
  212. package/lib/components/avatar/avatar.vue.js.map +1 -0
  213. package/lib/components/avatar/avatar.vue2.js +2 -0
  214. package/lib/components/avatar/avatar.vue2.js.map +1 -0
  215. package/lib/components/avatar/index.d.ts +62 -0
  216. package/lib/components/avatar/index.js +2 -0
  217. package/lib/components/avatar/index.js.map +1 -0
  218. package/lib/components/avatar/style/css.d.ts +0 -0
  219. package/lib/components/avatar/style/css.js +2 -0
  220. package/lib/components/avatar/style/css.js.map +1 -0
  221. package/lib/components/avatar/style/index.d.ts +0 -0
  222. package/lib/components/avatar/style/index.js +2 -0
  223. package/lib/components/avatar/style/index.js.map +1 -0
  224. package/lib/components/back-top/back-top.vue.d.ts +48 -0
  225. package/lib/components/back-top/back-top.vue.js +2 -0
  226. package/lib/components/back-top/back-top.vue.js.map +1 -0
  227. package/lib/components/back-top/back-top.vue2.js +2 -0
  228. package/lib/components/back-top/back-top.vue2.js.map +1 -0
  229. package/lib/components/back-top/index.d.ts +47 -0
  230. package/lib/components/back-top/index.js +2 -0
  231. package/lib/components/back-top/index.js.map +1 -0
  232. package/lib/components/back-top/style/css.d.ts +0 -0
  233. package/lib/components/back-top/style/css.js +2 -0
  234. package/lib/components/back-top/style/css.js.map +1 -0
  235. package/lib/components/back-top/style/index.d.ts +0 -0
  236. package/lib/components/back-top/style/index.js +2 -0
  237. package/lib/components/back-top/style/index.js.map +1 -0
  238. package/lib/components/back-top/types.d.ts +13 -0
  239. package/lib/components/back-top/types.js +2 -0
  240. package/lib/components/back-top/types.js.map +1 -0
  241. package/lib/components/back-top/use-back-top.d.ts +5 -0
  242. package/lib/components/back-top/use-back-top.js +2 -0
  243. package/lib/components/back-top/use-back-top.js.map +1 -0
  244. package/lib/components/base/style/css.d.ts +0 -0
  245. package/lib/components/base/style/css.js +2 -0
  246. package/lib/components/base/style/css.js.map +1 -0
  247. package/lib/components/base/style/index.d.ts +0 -0
  248. package/lib/components/base/style/index.js +2 -0
  249. package/lib/components/base/style/index.js.map +1 -0
  250. package/lib/components/divider/divider.vue.d.ts +53 -0
  251. package/lib/components/divider/divider.vue.js +2 -0
  252. package/lib/components/divider/divider.vue.js.map +1 -0
  253. package/lib/components/divider/divider.vue2.js +2 -0
  254. package/lib/components/divider/divider.vue2.js.map +1 -0
  255. package/lib/components/divider/index.d.ts +52 -0
  256. package/lib/components/divider/index.js +2 -0
  257. package/lib/components/divider/index.js.map +1 -0
  258. package/lib/components/divider/style/css.d.ts +0 -0
  259. package/lib/components/divider/style/css.js +2 -0
  260. package/lib/components/divider/style/css.js.map +1 -0
  261. package/lib/components/divider/style/index.d.ts +0 -0
  262. package/lib/components/divider/style/index.js +2 -0
  263. package/lib/components/divider/style/index.js.map +1 -0
  264. package/lib/components/divider/types.d.ts +2 -0
  265. package/lib/components/divider/types.js +2 -0
  266. package/lib/components/divider/types.js.map +1 -0
  267. package/lib/components/empty/assets/no-collect.png.js +2 -0
  268. package/lib/components/empty/assets/no-collect.png.js.map +1 -0
  269. package/lib/components/empty/assets/no-data.png.js +2 -0
  270. package/lib/components/empty/assets/no-data.png.js.map +1 -0
  271. package/lib/components/empty/assets/no-filter.png.js +2 -0
  272. package/lib/components/empty/assets/no-filter.png.js.map +1 -0
  273. package/lib/components/empty/assets/no-page-data.png.js +2 -0
  274. package/lib/components/empty/assets/no-page-data.png.js.map +1 -0
  275. package/lib/components/empty/assets/no-search.png.js +2 -0
  276. package/lib/components/empty/assets/no-search.png.js.map +1 -0
  277. package/lib/components/empty/constants.d.ts +12 -0
  278. package/lib/components/empty/constants.js +2 -0
  279. package/lib/components/empty/constants.js.map +1 -0
  280. package/lib/components/empty/empty.vue.d.ts +39 -0
  281. package/lib/components/empty/empty.vue.js +2 -0
  282. package/lib/components/empty/empty.vue.js.map +1 -0
  283. package/lib/components/empty/empty.vue2.js +2 -0
  284. package/lib/components/empty/empty.vue2.js.map +1 -0
  285. package/lib/components/empty/index.d.ts +37 -0
  286. package/lib/components/empty/index.js +2 -0
  287. package/lib/components/empty/index.js.map +1 -0
  288. package/lib/components/empty/style/css.d.ts +0 -0
  289. package/lib/components/empty/style/css.js +2 -0
  290. package/lib/components/empty/style/css.js.map +1 -0
  291. package/lib/components/empty/style/index.d.ts +0 -0
  292. package/lib/components/empty/style/index.js +2 -0
  293. package/lib/components/empty/style/index.js.map +1 -0
  294. package/lib/components/exception/exception.png.js +2 -0
  295. package/lib/components/exception/exception.png.js.map +1 -0
  296. package/lib/components/exception/exception.vue.d.ts +29 -0
  297. package/lib/components/exception/exception.vue.js +2 -0
  298. package/lib/components/exception/exception.vue.js.map +1 -0
  299. package/lib/components/exception/exception.vue2.js +2 -0
  300. package/lib/components/exception/exception.vue2.js.map +1 -0
  301. package/lib/components/exception/index.d.ts +28 -0
  302. package/lib/components/exception/index.js +2 -0
  303. package/lib/components/exception/index.js.map +1 -0
  304. package/lib/components/exception/style/css.d.ts +0 -0
  305. package/lib/components/exception/style/css.js +2 -0
  306. package/lib/components/exception/style/css.js.map +1 -0
  307. package/lib/components/exception/style/index.d.ts +0 -0
  308. package/lib/components/exception/style/index.js +2 -0
  309. package/lib/components/exception/style/index.js.map +1 -0
  310. package/lib/components/icon/icon.vue.d.ts +96 -0
  311. package/lib/components/icon/icon.vue.js +2 -0
  312. package/lib/components/icon/icon.vue.js.map +1 -0
  313. package/lib/components/icon/icon.vue2.js +2 -0
  314. package/lib/components/icon/icon.vue2.js.map +1 -0
  315. package/lib/components/icon/index.d.ts +79 -0
  316. package/lib/components/icon/index.js +2 -0
  317. package/lib/components/icon/index.js.map +1 -0
  318. package/lib/components/icon/style/css.d.ts +0 -0
  319. package/lib/components/icon/style/css.js +2 -0
  320. package/lib/components/icon/style/css.js.map +1 -0
  321. package/lib/components/icon/style/index.d.ts +0 -0
  322. package/lib/components/icon/style/index.js +2 -0
  323. package/lib/components/icon/style/index.js.map +1 -0
  324. package/lib/components/index.d.ts +5 -0
  325. package/lib/components/index.js +2 -0
  326. package/lib/components/index.js.map +1 -0
  327. package/lib/components/result/index.d.ts +28 -0
  328. package/lib/components/result/index.js +2 -0
  329. package/lib/components/result/index.js.map +1 -0
  330. package/lib/components/result/result.vue.d.ts +30 -0
  331. package/lib/components/result/result.vue.js +2 -0
  332. package/lib/components/result/result.vue.js.map +1 -0
  333. package/lib/components/result/result.vue2.js +2 -0
  334. package/lib/components/result/result.vue2.js.map +1 -0
  335. package/lib/components/result/style/css.d.ts +0 -0
  336. package/lib/components/result/style/css.js +2 -0
  337. package/lib/components/result/style/css.js.map +1 -0
  338. package/lib/components/result/style/index.d.ts +0 -0
  339. package/lib/components/result/style/index.js +2 -0
  340. package/lib/components/result/style/index.js.map +1 -0
  341. package/lib/components/types.d.ts +1 -0
  342. package/lib/components/types.js +2 -0
  343. package/lib/components/types.js.map +1 -0
  344. package/lib/constants/aria.d.ts +17 -0
  345. package/lib/constants/aria.js +2 -0
  346. package/lib/constants/aria.js.map +1 -0
  347. package/lib/constants/date.d.ts +3 -0
  348. package/lib/constants/date.js +2 -0
  349. package/lib/constants/date.js.map +1 -0
  350. package/lib/constants/event.d.ts +3 -0
  351. package/lib/constants/event.js +2 -0
  352. package/lib/constants/event.js.map +1 -0
  353. package/lib/constants/index.d.ts +5 -0
  354. package/lib/constants/index.js +2 -0
  355. package/lib/constants/index.js.map +1 -0
  356. package/lib/constants/key.d.ts +1 -0
  357. package/lib/constants/key.js +2 -0
  358. package/lib/constants/key.js.map +1 -0
  359. package/lib/constants/size.d.ts +7 -0
  360. package/lib/constants/size.js +2 -0
  361. package/lib/constants/size.js.map +1 -0
  362. package/lib/defaults.d.ts +5 -0
  363. package/lib/defaults.js +2 -0
  364. package/lib/defaults.js.map +1 -0
  365. package/lib/hooks/index.d.ts +1 -0
  366. package/lib/hooks/index.js +2 -0
  367. package/lib/hooks/index.js.map +1 -0
  368. package/lib/hooks/use-namespace/index.d.ts +21 -0
  369. package/lib/hooks/use-namespace/index.js +2 -0
  370. package/lib/hooks/use-namespace/index.js.map +1 -0
  371. package/lib/index.d.ts +8 -0
  372. package/lib/index.js +2 -0
  373. package/lib/index.js.map +1 -0
  374. package/lib/make-installer.d.ts +5 -0
  375. package/lib/make-installer.js +2 -0
  376. package/lib/make-installer.js.map +1 -0
  377. package/lib/theme-style/src/avatar.scss.js +2 -0
  378. package/lib/theme-style/src/avatar.scss.js.map +1 -0
  379. package/lib/theme-style/src/back-top.scss.js +2 -0
  380. package/lib/theme-style/src/back-top.scss.js.map +1 -0
  381. package/lib/theme-style/src/base.scss.js +2 -0
  382. package/lib/theme-style/src/base.scss.js.map +1 -0
  383. package/lib/theme-style/src/divider.scss.js +2 -0
  384. package/lib/theme-style/src/divider.scss.js.map +1 -0
  385. package/lib/theme-style/src/empty.scss.js +2 -0
  386. package/lib/theme-style/src/empty.scss.js.map +1 -0
  387. package/lib/theme-style/src/icon.scss.js +2 -0
  388. package/lib/theme-style/src/icon.scss.js.map +1 -0
  389. package/lib/theme-style/src/result.scss.js +2 -0
  390. package/lib/theme-style/src/result.scss.js.map +1 -0
  391. package/lib/utils/error.d.ts +3 -0
  392. package/lib/utils/error.js +2 -0
  393. package/lib/utils/error.js.map +1 -0
  394. package/lib/utils/helper.d.ts +1 -0
  395. package/lib/utils/helper.js +2 -0
  396. package/lib/utils/helper.js.map +1 -0
  397. package/lib/utils/index.d.ts +3 -0
  398. package/lib/utils/index.js +2 -0
  399. package/lib/utils/index.js.map +1 -0
  400. package/lib/utils/vue/index.d.ts +2 -0
  401. package/lib/utils/vue/index.js +2 -0
  402. package/lib/utils/vue/index.js.map +1 -0
  403. package/lib/utils/vue/install.d.ts +6 -0
  404. package/lib/utils/vue/install.js +2 -0
  405. package/lib/utils/vue/install.js.map +1 -0
  406. package/lib/utils/vue/typescript.d.ts +5 -0
  407. package/lib/utils/vue/typescript.js +2 -0
  408. package/lib/utils/vue/typescript.js.map +1 -0
  409. package/lib/version.d.ts +1 -0
  410. package/lib/version.js +2 -0
  411. package/lib/version.js.map +1 -0
  412. package/package.json +70 -40
  413. package/theme-style/base.css +1 -0
  414. package/theme-style/dark/css-vars.css +1 -0
  415. package/theme-style/index.css +1 -0
  416. package/{src/web/avatar/index.scss → theme-style/src/avatar.scss} +7 -4
  417. package/{src/web/back-top/index.scss → theme-style/src/back-top.scss} +3 -6
  418. package/theme-style/src/base.scss +2 -0
  419. package/theme-style/src/color/index.scss +17 -0
  420. package/theme-style/src/common/transition.scss +128 -0
  421. package/theme-style/src/common/var.scss +841 -0
  422. package/theme-style/src/dark/css-vars.scss +41 -0
  423. package/theme-style/src/dark/var.scss +221 -0
  424. package/{src/web/divider/index.scss → theme-style/src/divider.scss} +4 -1
  425. package/{src/web/empty/index.scss → theme-style/src/empty.scss} +3 -10
  426. package/{src/web/full-screen/index.scss → theme-style/src/full-screen.scss} +3 -0
  427. package/{src/common/icon/index.scss → theme-style/src/icon.scss} +2 -1
  428. package/{src/web/image/index.scss → theme-style/src/image.scss} +3 -0
  429. package/theme-style/src/index.scss +7 -0
  430. package/{src/web/input/index.scss → theme-style/src/input.scss} +3 -0
  431. package/theme-style/src/mixins/_var.scss +91 -0
  432. package/theme-style/src/mixins/config.scss +5 -0
  433. package/theme-style/src/mixins/function.scss +86 -0
  434. package/theme-style/src/mixins/mixins.scss +258 -0
  435. package/{src/web/result/index.scss → theme-style/src/result.scss} +3 -9
  436. package/theme-style/src/var.scss +73 -0
  437. package/theme-style/vft-avatar.css +1 -0
  438. package/theme-style/vft-back-top.css +1 -0
  439. package/theme-style/vft-divider.css +1 -0
  440. package/theme-style/vft-empty.css +1 -0
  441. package/theme-style/vft-full-screen.css +1 -0
  442. package/theme-style/vft-icon.css +1 -0
  443. package/theme-style/vft-image.css +1 -0
  444. package/theme-style/vft-input.css +1 -0
  445. package/theme-style/vft-result.css +1 -0
  446. package/theme-style/vft-var.css +1 -0
  447. package/theme-style/vft-virtual-list.css +1 -0
  448. package/src/app/index.ts +0 -3
  449. package/src/app/page-loading/assets/spin.gif +0 -0
  450. package/src/app/page-loading/index.less +0 -10
  451. package/src/app/page-loading/index.ts +0 -3
  452. package/src/app/page-loading/index.vue +0 -38
  453. package/src/app/table/assets/sort_triangle.png +0 -0
  454. package/src/app/table/demos/basic.vue +0 -117
  455. package/src/app/table/demos/complex.vue +0 -2543
  456. package/src/app/table/demos/index.vue +0 -453
  457. package/src/app/table/demos/rightAngle.png +0 -0
  458. package/src/app/table/header.vue +0 -203
  459. package/src/app/table/index.less +0 -119
  460. package/src/app/table/index.ts +0 -5
  461. package/src/app/table/index.vue +0 -478
  462. package/src/app/table/md/api.md +0 -23
  463. package/src/app/table/md/demo.md +0 -3
  464. package/src/app/table/types.ts +0 -45
  465. package/src/common/badge/index.scss +0 -78
  466. package/src/common/badge/index.ts +0 -4
  467. package/src/common/badge/index.vue +0 -111
  468. package/src/common/badge/types.ts +0 -1
  469. package/src/common/clamp/clamp-toggle.vue +0 -91
  470. package/src/common/clamp/index.ts +0 -4
  471. package/src/common/clamp/index.vue +0 -247
  472. package/src/common/code/index.less +0 -321
  473. package/src/common/code/index.ts +0 -3
  474. package/src/common/code/index.vue +0 -60
  475. package/src/common/config-provider/index.ts +0 -4
  476. package/src/common/config-provider/index.vue +0 -94
  477. package/src/common/config-provider/types.ts +0 -29
  478. package/src/common/icon/iconfont/iconfont.css +0 -334
  479. package/src/common/icon/index.ts +0 -4
  480. package/src/common/icon/index.vue +0 -74
  481. package/src/common/icon/types.ts +0 -16
  482. package/src/common/index.ts +0 -6
  483. package/src/common/message/index.ts +0 -5
  484. package/src/common/message/instance.ts +0 -29
  485. package/src/common/message/message.scss +0 -108
  486. package/src/common/message/message.ts +0 -80
  487. package/src/common/message/message.vue +0 -162
  488. package/src/common/message/method.ts +0 -172
  489. package/src/common/overlay/index.scss +0 -14
  490. package/src/common/overlay/index.ts +0 -3
  491. package/src/common/overlay/index.vue +0 -117
  492. package/src/constants/comp.ts +0 -1
  493. package/src/constants/index.ts +0 -1
  494. package/src/index.ts +0 -3
  495. package/src/page/index.ts +0 -1
  496. package/src/page/page-wrapper/index.scss +0 -31
  497. package/src/page/page-wrapper/index.ts +0 -5
  498. package/src/page/page-wrapper/index.vue +0 -31
  499. package/src/styles/vars.scss +0 -500
  500. package/src/use/index.ts +0 -14
  501. package/src/use/onPopupReopen.ts +0 -15
  502. package/src/use/use-delayed-toggle/index.ts +0 -30
  503. package/src/use/use-floating/index.ts +0 -121
  504. package/src/use/use-forward-ref.ts +0 -35
  505. package/src/use/use-global-config/index.ts +0 -81
  506. package/src/use/use-id/index.ts +0 -43
  507. package/src/use/use-model-toggle/index.ts +0 -151
  508. package/src/use/use-namespace/index.ts +0 -91
  509. package/src/use/use-ordered-children/index.ts +0 -43
  510. package/src/use/use-popper-container/index.ts +0 -43
  511. package/src/use/use-timeout/index.ts +0 -18
  512. package/src/use/use-z-index/index.ts +0 -20
  513. package/src/use/useGlobalZIndex.ts +0 -24
  514. package/src/use/useLazyRender.ts +0 -17
  515. package/src/use/useLockScroll.ts +0 -66
  516. package/src/utils/aria.ts +0 -126
  517. package/src/utils/arrays.ts +0 -13
  518. package/src/utils/error.ts +0 -23
  519. package/src/utils/event.ts +0 -15
  520. package/src/utils/helper.ts +0 -7
  521. package/src/utils/index.ts +0 -8
  522. package/src/utils/interceptor.ts +0 -39
  523. package/src/utils/mount-component.ts +0 -65
  524. package/src/utils/popper.ts +0 -6
  525. package/src/utils/rand.ts +0 -12
  526. package/src/utils/scroll.ts +0 -101
  527. package/src/utils/vnode.ts +0 -169
  528. package/src/web/avatar/index.ts +0 -3
  529. package/src/web/avatar/index.vue +0 -83
  530. package/src/web/back-top/index.ts +0 -3
  531. package/src/web/back-top/index.vue +0 -72
  532. package/src/web/back-top/types.ts +0 -14
  533. package/src/web/back-top/use-back-top.ts +0 -65
  534. package/src/web/cascader/index.scss +0 -214
  535. package/src/web/cascader/index.ts +0 -5
  536. package/src/web/cascader/index.vue +0 -767
  537. package/src/web/cascader-panel/config.ts +0 -44
  538. package/src/web/cascader-panel/index.scss +0 -134
  539. package/src/web/cascader-panel/index.ts +0 -5
  540. package/src/web/cascader-panel/index.vue +0 -319
  541. package/src/web/cascader-panel/menu.vue +0 -135
  542. package/src/web/cascader-panel/node-content.ts +0 -23
  543. package/src/web/cascader-panel/node.ts +0 -218
  544. package/src/web/cascader-panel/node.vue +0 -197
  545. package/src/web/cascader-panel/store.ts +0 -83
  546. package/src/web/cascader-panel/types.ts +0 -56
  547. package/src/web/cascader-panel/utils.ts +0 -40
  548. package/src/web/cascader-select/README.md +0 -31
  549. package/src/web/cascader-select/index.scss +0 -54
  550. package/src/web/cascader-select/index.ts +0 -5
  551. package/src/web/cascader-select/index.vue +0 -132
  552. package/src/web/cascader-select/types.ts +0 -9
  553. package/src/web/context-menu/createContextMenu.ts +0 -72
  554. package/src/web/context-menu/index.ts +0 -4
  555. package/src/web/context-menu/index.vue +0 -89
  556. package/src/web/context-menu/types.ts +0 -27
  557. package/src/web/context-menu/useContextMenu.ts +0 -14
  558. package/src/web/descriptions/description-item.vue +0 -34
  559. package/src/web/descriptions/description.vue +0 -124
  560. package/src/web/descriptions/descriptions-cell.ts +0 -95
  561. package/src/web/descriptions/descriptions-item.scss +0 -68
  562. package/src/web/descriptions/descriptions-row.vue +0 -49
  563. package/src/web/descriptions/descriptions.scss +0 -153
  564. package/src/web/descriptions/descriptions.type.ts +0 -19
  565. package/src/web/descriptions/index.ts +0 -4
  566. package/src/web/descriptions/token.ts +0 -4
  567. package/src/web/divider/index.ts +0 -5
  568. package/src/web/divider/index.vue +0 -60
  569. package/src/web/divider/types.ts +0 -2
  570. package/src/web/empty/assets/no-collect.png +0 -0
  571. package/src/web/empty/assets/no-data.png +0 -0
  572. package/src/web/empty/assets/no-filter.png +0 -0
  573. package/src/web/empty/assets/no-page-data.png +0 -0
  574. package/src/web/empty/assets/no-search.png +0 -0
  575. package/src/web/empty/constants.ts +0 -12
  576. package/src/web/empty/index.ts +0 -5
  577. package/src/web/empty/index.vue +0 -96
  578. package/src/web/exception/exception.png +0 -0
  579. package/src/web/exception/index.ts +0 -3
  580. package/src/web/exception/index.vue +0 -44
  581. package/src/web/filter/README.md +0 -25
  582. package/src/web/filter/index.scss +0 -14
  583. package/src/web/filter/index.ts +0 -5
  584. package/src/web/filter/index.vue +0 -60
  585. package/src/web/filter/type.ts +0 -13
  586. package/src/web/focus-trap/index.ts +0 -6
  587. package/src/web/focus-trap/index.vue +0 -328
  588. package/src/web/focus-trap/tokens.ts +0 -23
  589. package/src/web/focus-trap/utils.ts +0 -178
  590. package/src/web/full-screen/index.ts +0 -3
  591. package/src/web/full-screen/index.vue +0 -24
  592. package/src/web/icon-text/index.ts +0 -3
  593. package/src/web/icon-text/index.vue +0 -77
  594. package/src/web/image/index.ts +0 -5
  595. package/src/web/image/index.vue +0 -251
  596. package/src/web/image/types.ts +0 -1
  597. package/src/web/index.ts +0 -33
  598. package/src/web/input/index.ts +0 -3
  599. package/src/web/input/index.vue +0 -533
  600. package/src/web/input/utils.ts +0 -102
  601. package/src/web/layouts/blank.vue +0 -4
  602. package/src/web/layouts/footer/index.scss +0 -31
  603. package/src/web/layouts/footer/index.ts +0 -3
  604. package/src/web/layouts/footer/index.vue +0 -38
  605. package/src/web/layouts/header/index.scss +0 -35
  606. package/src/web/layouts/header/index.ts +0 -3
  607. package/src/web/layouts/header/index.vue +0 -47
  608. package/src/web/layouts/iframe/index.scss +0 -18
  609. package/src/web/layouts/iframe/index.vue +0 -36
  610. package/src/web/layouts/iframe/page.vue +0 -30
  611. package/src/web/layouts/index.ts +0 -8
  612. package/src/web/layouts/router-view-content/index.vue +0 -70
  613. package/src/web/link/index.scss +0 -95
  614. package/src/web/link/index.ts +0 -3
  615. package/src/web/link/index.vue +0 -68
  616. package/src/web/loading/directive.ts +0 -104
  617. package/src/web/loading/index.ts +0 -6
  618. package/src/web/loading/loading.scss +0 -108
  619. package/src/web/loading/loading.ts +0 -156
  620. package/src/web/loading/service.ts +0 -145
  621. package/src/web/loading/types.ts +0 -29
  622. package/src/web/logo/index.scss +0 -31
  623. package/src/web/logo/index.ts +0 -5
  624. package/src/web/logo/index.vue +0 -45
  625. package/src/web/logo/types.ts +0 -6
  626. package/src/web/menu/index.scss +0 -336
  627. package/src/web/menu/index.ts +0 -8
  628. package/src/web/menu/menu-collapse-transition.vue +0 -62
  629. package/src/web/menu/menu-item-group.vue +0 -27
  630. package/src/web/menu/menu-item.vue +0 -126
  631. package/src/web/menu/menu.vue +0 -459
  632. package/src/web/menu/sub-menu.vue +0 -440
  633. package/src/web/menu/types.ts +0 -66
  634. package/src/web/menu/use-menu-css-var.ts +0 -11
  635. package/src/web/menu/use-menu.ts +0 -60
  636. package/src/web/menu/utils/menu-bar.ts +0 -19
  637. package/src/web/menu/utils/menu-item.ts +0 -55
  638. package/src/web/menu/utils/submenu.ts +0 -66
  639. package/src/web/multiple-select-flat/index.ts +0 -5
  640. package/src/web/multiple-select-flat/index.vue +0 -53
  641. package/src/web/multiple-select-flat/types.ts +0 -5
  642. package/src/web/multiple-tabs/index.scss +0 -16
  643. package/src/web/multiple-tabs/index.ts +0 -5
  644. package/src/web/multiple-tabs/index.vue +0 -193
  645. package/src/web/multiple-tabs/tab-content.vue +0 -40
  646. package/src/web/multiple-tabs/types.ts +0 -3
  647. package/src/web/multiple-tabs/use/index.ts +0 -2
  648. package/src/web/multiple-tabs/use/use-multiple-tabs.ts +0 -86
  649. package/src/web/multiple-tabs/use/use-tab-dropdown.ts +0 -101
  650. package/src/web/nodata/README.md +0 -42
  651. package/src/web/nodata/fail.vue +0 -13
  652. package/src/web/nodata/img/100.png +0 -0
  653. package/src/web/nodata/img/101.png +0 -0
  654. package/src/web/nodata/img/102.png +0 -0
  655. package/src/web/nodata/img/103.png +0 -0
  656. package/src/web/nodata/img/104.png +0 -0
  657. package/src/web/nodata/img/105.png +0 -0
  658. package/src/web/nodata/img/106.png +0 -0
  659. package/src/web/nodata/img/107.png +0 -0
  660. package/src/web/nodata/img/200.png +0 -0
  661. package/src/web/nodata/img/201.png +0 -0
  662. package/src/web/nodata/img/202.png +0 -0
  663. package/src/web/nodata/img/203.png +0 -0
  664. package/src/web/nodata/index.scss +0 -37
  665. package/src/web/nodata/index.ts +0 -6
  666. package/src/web/nodata/index.vue +0 -46
  667. package/src/web/nodata/types.ts +0 -17
  668. package/src/web/only-child/index.tsx +0 -69
  669. package/src/web/pagination/components/jumper.vue +0 -49
  670. package/src/web/pagination/components/next.vue +0 -40
  671. package/src/web/pagination/components/pager.vue +0 -215
  672. package/src/web/pagination/components/prev.vue +0 -35
  673. package/src/web/pagination/components/sizes.vue +0 -76
  674. package/src/web/pagination/components/total.vue +0 -21
  675. package/src/web/pagination/index.scss +0 -231
  676. package/src/web/pagination/index.ts +0 -5
  677. package/src/web/pagination/pagination.ts +0 -363
  678. package/src/web/pagination/usePagination.ts +0 -13
  679. package/src/web/popover/directive.ts +0 -21
  680. package/src/web/popover/index.scss +0 -58
  681. package/src/web/popover/index.ts +0 -3
  682. package/src/web/popover/index.vue +0 -161
  683. package/src/web/popover/types.ts +0 -26
  684. package/src/web/popper/arrow.vue +0 -45
  685. package/src/web/popper/content.vue +0 -311
  686. package/src/web/popper/index.scss +0 -108
  687. package/src/web/popper/index.ts +0 -11
  688. package/src/web/popper/popper.vue +0 -57
  689. package/src/web/popper/tokens.ts +0 -28
  690. package/src/web/popper/trigger.vue +0 -166
  691. package/src/web/popper/types.ts +0 -49
  692. package/src/web/popper/utils.ts +0 -81
  693. package/src/web/qrcode/drawCanvas.ts +0 -32
  694. package/src/web/qrcode/drawLogo.ts +0 -82
  695. package/src/web/qrcode/index.ts +0 -5
  696. package/src/web/qrcode/index.vue +0 -107
  697. package/src/web/qrcode/qrcodePlus.ts +0 -4
  698. package/src/web/qrcode/toCanvas.ts +0 -11
  699. package/src/web/qrcode/types.ts +0 -38
  700. package/src/web/result/index.ts +0 -3
  701. package/src/web/result/index.vue +0 -63
  702. package/src/web/scrollbar/bar.vue +0 -48
  703. package/src/web/scrollbar/index.scss +0 -91
  704. package/src/web/scrollbar/index.ts +0 -5
  705. package/src/web/scrollbar/index.vue +0 -236
  706. package/src/web/scrollbar/thumb.vue +0 -183
  707. package/src/web/scrollbar/tokens.ts +0 -10
  708. package/src/web/scrollbar/types.ts +0 -7
  709. package/src/web/scrollbar/util.ts +0 -38
  710. package/src/web/select/constants.ts +0 -13
  711. package/src/web/select/index.ts +0 -11
  712. package/src/web/select/index.vue +0 -555
  713. package/src/web/select/option-group.scss +0 -49
  714. package/src/web/select/option-group.vue +0 -97
  715. package/src/web/select/option-item.scss +0 -66
  716. package/src/web/select/option.scss +0 -32
  717. package/src/web/select/option.vue +0 -110
  718. package/src/web/select/select-dropdown.scss +0 -86
  719. package/src/web/select/select-dropdown.vue +0 -51
  720. package/src/web/select/select.scss +0 -213
  721. package/src/web/select/token.ts +0 -56
  722. package/src/web/select/useOption.ts +0 -146
  723. package/src/web/select/useSelect.ts +0 -942
  724. package/src/web/select/utils.ts +0 -5
  725. package/src/web/side-menu/index.scss +0 -66
  726. package/src/web/side-menu/index.ts +0 -4
  727. package/src/web/side-menu/index.vue +0 -228
  728. package/src/web/side-menu/types.ts +0 -20
  729. package/src/web/single-select/index.scss +0 -60
  730. package/src/web/single-select/index.ts +0 -5
  731. package/src/web/single-select/index.vue +0 -70
  732. package/src/web/single-select/select@2x.png +0 -0
  733. package/src/web/single-select/types.ts +0 -5
  734. package/src/web/svg/index.ts +0 -3
  735. package/src/web/svg/index.vue +0 -22
  736. package/src/web/tabs/index.scss +0 -579
  737. package/src/web/tabs/index.ts +0 -6
  738. package/src/web/tabs/index.vue +0 -236
  739. package/src/web/tabs/tab-bar.vue +0 -90
  740. package/src/web/tabs/tab-nav.vue +0 -403
  741. package/src/web/tabs/tab-pane.vue +0 -90
  742. package/src/web/tabs/types.ts +0 -66
  743. package/src/web/tag/index.scss +0 -182
  744. package/src/web/tag/index.ts +0 -5
  745. package/src/web/tag/index.vue +0 -78
  746. package/src/web/tag/types.ts +0 -2
  747. package/src/web/tooltip/content.vue +0 -239
  748. package/src/web/tooltip/index.ts +0 -4
  749. package/src/web/tooltip/tokens.ts +0 -21
  750. package/src/web/tooltip/tooltip.vue +0 -270
  751. package/src/web/tooltip/trigger.vue +0 -119
  752. package/src/web/tooltip/types.ts +0 -56
  753. package/src/web/tooltip/utils.ts +0 -20
  754. package/src/web/transition/collapse-transition.vue +0 -73
  755. package/src/web/transition/index.ts +0 -5
  756. package/tsconfig.json +0 -8
  757. package/types/index.d.ts +0 -286
  758. /package/{types/component.ts → es/components/types.d.ts} +0 -0
@@ -1,218 +0,0 @@
1
- import { isFunction } from '@vue/shared';
2
- import { capitalize, isEmpty, isUndefined } from '@vri/utils';
3
- import type { VNode } from 'vue';
4
-
5
- export type CascaderNodeValue = string | number
6
- export type CascaderNodePathValue = CascaderNodeValue[]
7
- export type CascaderValue =
8
- | CascaderNodeValue
9
- | CascaderNodePathValue
10
- | (CascaderNodeValue | CascaderNodePathValue)[]
11
- export type CascaderConfig = Required<CascaderProps>
12
- export type ExpandTrigger = 'click' | 'hover'
13
- export type isDisabled = (data: CascaderOption, node: Node) => boolean
14
- export type isLeaf = (data: CascaderOption, node: Node) => boolean
15
- export type Resolve = (dataList?: CascaderOption[]) => void
16
- export type LazyLoad = (node: Node, resolve: Resolve) => void
17
- export type RenderLabel = ({
18
- node: Node,
19
- data: CascaderOption
20
- }) => VNode | VNode[]
21
- export interface CascaderOption extends Record<string, unknown> {
22
- label?: string
23
- value?: CascaderNodeValue
24
- children?: CascaderOption[]
25
- disabled?: boolean
26
- leaf?: boolean
27
- }
28
-
29
- export interface CascaderProps {
30
- expandTrigger?: ExpandTrigger
31
- multiple?: boolean
32
- checkStrictly?: boolean
33
- emitPath?: boolean
34
- lazy?: boolean
35
- lazyLoad?: LazyLoad
36
- value?: string
37
- label?: string
38
- children?: string
39
- disabled?: string | isDisabled
40
- leaf?: string | isLeaf
41
- hoverThreshold?: number
42
- }
43
-
44
- export type Nullable<T> = null | T
45
-
46
- type ChildrenData = CascaderOption[] | undefined
47
-
48
- let uid = 0;
49
-
50
- const calculatePathNodes = (node: Node) => {
51
- const nodes = [node];
52
- let { parent } = node;
53
-
54
- while (parent) {
55
- nodes.unshift(parent);
56
- parent = parent.parent;
57
- }
58
-
59
- return nodes;
60
- };
61
-
62
- class Node {
63
- readonly uid: number = uid++;
64
- readonly level: number;
65
- readonly value: CascaderNodeValue;
66
- readonly label: string;
67
- readonly pathNodes: Node[];
68
- readonly pathValues: CascaderNodePathValue;
69
- readonly pathLabels: string[];
70
-
71
- childrenData: ChildrenData;
72
- children: Node[];
73
- text: string;
74
- loaded: boolean;
75
- checked = false;
76
- indeterminate = false;
77
- loading = false;
78
-
79
- constructor(
80
- readonly data: Nullable<CascaderOption>,
81
- readonly config: CascaderConfig,
82
- readonly parent?: Node,
83
- readonly root = false
84
- ) {
85
- const { value: valueKey, label: labelKey, children: childrenKey } = config;
86
-
87
- const childrenData = data[childrenKey] as ChildrenData;
88
- const pathNodes = calculatePathNodes(this);
89
-
90
- this.level = root ? 0 : parent ? parent.level + 1 : 1;
91
- this.value = data[valueKey] as CascaderNodeValue;
92
- this.label = data[labelKey] as string;
93
- this.pathNodes = pathNodes;
94
- this.pathValues = pathNodes.map((node) => node.value);
95
- this.pathLabels = pathNodes.map((node) => node.label);
96
- this.childrenData = childrenData;
97
- this.children = (childrenData || []).map(
98
- (child) => new Node(child, config, this)
99
- );
100
- this.loaded = !config.lazy || this.isLeaf || !isEmpty(childrenData);
101
- }
102
-
103
- get isDisabled(): boolean {
104
- const { data, parent, config } = this;
105
- const { disabled, checkStrictly } = config;
106
- const isDisabled = isFunction(disabled)
107
- ? disabled(data, this)
108
- : !!data[disabled];
109
- return isDisabled || (!checkStrictly && parent?.isDisabled);
110
- }
111
-
112
- get isLeaf(): boolean {
113
- const { data, config, childrenData, loaded } = this;
114
- const { lazy, leaf } = config;
115
- const isLeaf = isFunction(leaf) ? leaf(data, this) : data[leaf];
116
-
117
- return isUndefined(isLeaf)
118
- ? lazy && !loaded
119
- ? false
120
- : !(Array.isArray(childrenData) && childrenData.length)
121
- : !!isLeaf;
122
- }
123
-
124
- get valueByOption() {
125
- return this.config.emitPath ? this.pathValues : this.value;
126
- }
127
-
128
- appendChild(childData: CascaderOption) {
129
- const { childrenData, children } = this;
130
- const node = new Node(childData, this.config, this);
131
-
132
- if (Array.isArray(childrenData)) {
133
- childrenData.push(childData);
134
- } else {
135
- this.childrenData = [childData];
136
- }
137
-
138
- children.push(node);
139
-
140
- return node;
141
- }
142
-
143
- calcText(allLevels: boolean, separator: string) {
144
- const text = allLevels ? this.pathLabels.join(separator) : this.label;
145
- this.text = text;
146
- return text;
147
- }
148
-
149
- broadcast(event: string, ...args: unknown[]) {
150
- const handlerName = `onParent${capitalize(event)}`;
151
- this.children.forEach((child) => {
152
- if (child) {
153
- // bottom up
154
- child.broadcast(event, ...args);
155
- child[handlerName] && child[handlerName](...args);
156
- }
157
- });
158
- }
159
-
160
- emit(event: string, ...args: unknown[]) {
161
- const { parent } = this;
162
- const handlerName = `onChild${capitalize(event)}`;
163
- if (parent) {
164
- parent[handlerName] && parent[handlerName](...args);
165
- parent.emit(event, ...args);
166
- }
167
- }
168
-
169
- onParentCheck(checked: boolean) {
170
- if (!this.isDisabled) {
171
- this.setCheckState(checked);
172
- }
173
- }
174
-
175
- onChildCheck() {
176
- const { children } = this;
177
- const validChildren = children.filter((child) => !child.isDisabled);
178
- const checked = validChildren.length
179
- ? validChildren.every((child) => child.checked)
180
- : false;
181
-
182
- this.setCheckState(checked);
183
- }
184
-
185
- setCheckState(checked: boolean) {
186
- const totalNum = this.children.length;
187
- const checkedNum = this.children.reduce((c, p) => {
188
- const num = p.checked ? 1 : p.indeterminate ? 0.5 : 0;
189
- return c + num;
190
- }, 0);
191
-
192
- this.checked =
193
- this.loaded &&
194
- this.children
195
- .filter((child) => !child.isDisabled)
196
- .every((child) => child.loaded && child.checked) &&
197
- checked;
198
- this.indeterminate =
199
- this.loaded && checkedNum !== totalNum && checkedNum > 0;
200
- }
201
-
202
- doCheck(checked: boolean) {
203
- if (this.checked === checked) return;
204
-
205
- const { checkStrictly, multiple } = this.config;
206
-
207
- if (checkStrictly || !multiple) {
208
- this.checked = checked;
209
- } else {
210
- // bottom up to unify the calculation of the indeterminate state
211
- this.broadcast('check', checked);
212
- this.setCheckState(checked);
213
- this.emit('check');
214
- }
215
- }
216
- }
217
-
218
- export default Node;
@@ -1,197 +0,0 @@
1
- <template>
2
- <li
3
- :id="`${menuId}-${node.uid}`"
4
- role="menuitem"
5
- :aria-haspopup="!isLeaf"
6
- :aria-owns="isLeaf ? null : menuId"
7
- :aria-expanded="inExpandingPath"
8
- :tabindex="expandable ? -1 : undefined"
9
- :class="[
10
- ns.b(),
11
- ns.is('selectable', checkStrictly),
12
- ns.is('active', node.checked),
13
- ns.is('disabled', !expandable),
14
- inExpandingPath && 'in-active-path',
15
- inCheckedPath && 'in-checked-path',
16
- ]"
17
- @mouseenter="handleHoverExpand"
18
- @focus="handleHoverExpand"
19
- @click="handleClick"
20
- >
21
- <!-- prefix -->
22
- <el-checkbox
23
- v-if="multiple"
24
- :model-value="node.checked"
25
- :indeterminate="node.indeterminate"
26
- :disabled="isDisabled"
27
- @click.stop
28
- @update:model-value="handleSelectCheck"
29
- />
30
- <el-radio
31
- v-else-if="checkStrictly"
32
- :model-value="checkedNodeId"
33
- :label="node.uid"
34
- :disabled="isDisabled"
35
- @update:model-value="handleSelectCheck"
36
- @click.stop
37
- >
38
- <!--
39
- Add an empty element to avoid render label,
40
- do not use empty fragment here for https://github.com/vuejs/vue-next/pull/2485
41
- -->
42
- <span />
43
- </el-radio>
44
- <v-icon v-else-if="isLeaf && node.checked" :class="ns.e('prefix')" icon="vi-success"
45
- :size="14" color="rgb(64, 158, 255)"/>
46
-
47
- <!-- content -->
48
- <node-content />
49
-
50
- <!-- postfix -->
51
- <template v-if="!isLeaf">
52
- <v-icon v-if="node.loading" :class="[ns.is('loading'), ns.e('postfix')]" icon="vi-loading" :size="16" />
53
- <v-icon v-else :class="['arrow-right', ns.e('postfix')]" icon="vi-arrow-right"
54
- :size="16" />
55
- </template>
56
- </li>
57
- </template>
58
-
59
- <script lang="ts">
60
- import { computed, defineComponent, inject } from 'vue';
61
- import {
62
- ElCheckbox,
63
- ElRadio
64
- } from 'element-plus';
65
- import { useNamespace } from '../../use';
66
- import NodeContent from './node-content';
67
- import { CASCADER_PANEL_INJECTION_KEY } from './types';
68
- import type { default as CascaderNode } from './node';
69
- import { Icon as VIcon } from '../../common';
70
- import type { PropType } from 'vue';
71
-
72
- export default defineComponent({
73
- name: 'VriCascaderNode',
74
- components: {
75
- ElCheckbox,
76
- ElRadio,
77
- NodeContent,
78
- VIcon
79
- },
80
- props: {
81
- node: {
82
- type: Object as PropType<CascaderNode>,
83
- required: true
84
- },
85
- menuId: String
86
- },
87
- emits: ['expand'],
88
- setup (props, { emit }) {
89
- const panel = inject(CASCADER_PANEL_INJECTION_KEY)!;
90
-
91
- const ns = useNamespace('cascader-node');
92
- const isHoverMenu = computed(() => panel.isHoverMenu);
93
- const multiple = computed(() => panel.config.multiple);
94
- const checkStrictly = computed(() => panel.config.checkStrictly);
95
- const checkedNodeId = computed(() => panel.checkedNodes[0]?.uid);
96
- const isDisabled = computed(() => props.node.isDisabled);
97
- const isLeaf = computed(() => props.node.isLeaf);
98
- const expandable = computed(
99
- () => (checkStrictly.value && !isLeaf.value) || !isDisabled.value
100
- );
101
- const inExpandingPath = computed(() => isInPath(panel.expandingNode!));
102
- // only useful in check-strictly mode
103
- const inCheckedPath = computed(
104
- () => checkStrictly.value && panel.checkedNodes.some(isInPath)
105
- );
106
-
107
- const isInPath = (node: CascaderNode) => {
108
- const { level, uid } = props.node;
109
- return node?.pathNodes[level - 1]?.uid === uid;
110
- };
111
-
112
- const doExpand = () => {
113
- if (inExpandingPath.value) return;
114
- panel.expandNode(props.node);
115
- };
116
-
117
- const doCheck = (checked: boolean) => {
118
- const { node } = props;
119
- if (checked === node.checked) return;
120
- panel.handleCheckChange(node, checked);
121
- };
122
-
123
- const doLoad = () => {
124
- panel.lazyLoad(props.node, () => {
125
- if (!isLeaf.value) doExpand();
126
- });
127
- };
128
-
129
- const handleHoverExpand = (e: Event) => {
130
- if (!isHoverMenu.value) return;
131
- handleExpand();
132
- !isLeaf.value && emit('expand', e);
133
- };
134
-
135
- const handleExpand = () => {
136
- const { node } = props;
137
- // do not exclude leaf node because the menus expanded might have to reset
138
- if (!expandable.value || node.loading) return;
139
- node.loaded ? doExpand() : doLoad();
140
- };
141
-
142
- const handleClick = () => {
143
- if (isHoverMenu.value && !isLeaf.value) return;
144
-
145
- if (
146
- isLeaf.value &&
147
- !isDisabled.value &&
148
- !checkStrictly.value &&
149
- !multiple.value
150
- ) {
151
- handleCheck(true);
152
- } else {
153
- handleExpand();
154
- }
155
- };
156
-
157
- const handleSelectCheck = (checked: boolean) => {
158
- if (checkStrictly.value) {
159
- doCheck(checked);
160
- if (props.node.loaded) {
161
- doExpand();
162
- }
163
- } else {
164
- handleCheck(checked);
165
- }
166
- };
167
-
168
- const handleCheck = (checked: boolean) => {
169
- if (!props.node.loaded) {
170
- doLoad();
171
- } else {
172
- doCheck(checked);
173
- !checkStrictly.value && doExpand();
174
- }
175
- };
176
-
177
- return {
178
- panel,
179
- isHoverMenu,
180
- multiple,
181
- checkStrictly,
182
- checkedNodeId,
183
- isDisabled,
184
- isLeaf,
185
- expandable,
186
- inExpandingPath,
187
- inCheckedPath,
188
- ns,
189
- handleHoverExpand,
190
- handleExpand,
191
- handleClick,
192
- handleCheck,
193
- handleSelectCheck
194
- };
195
- }
196
- });
197
- </script>
@@ -1,83 +0,0 @@
1
- import { isEqual } from 'lodash';
2
- import Node from './node';
3
-
4
- import type {
5
- CascaderConfig,
6
- CascaderNodePathValue,
7
- CascaderNodeValue,
8
- CascaderOption
9
- } from './node';
10
-
11
- const flatNodes = (nodes: Node[], leafOnly: boolean) => {
12
- return nodes.reduce((res, node) => {
13
- if (node.isLeaf) {
14
- res.push(node);
15
- } else {
16
- !leafOnly && res.push(node);
17
- res = res.concat(flatNodes(node.children, leafOnly));
18
- }
19
- return res;
20
- }, [] as Node[]);
21
- };
22
-
23
- export default class Store {
24
- readonly nodes: Node[];
25
- readonly allNodes: Node[];
26
- readonly leafNodes: Node[];
27
-
28
- constructor(data: CascaderOption[], readonly config: CascaderConfig) {
29
- const nodes = (data || []).map(
30
- (nodeData) => new Node(nodeData, this.config)
31
- );
32
- this.nodes = nodes;
33
- this.allNodes = flatNodes(nodes, false);
34
- this.leafNodes = flatNodes(nodes, true);
35
- }
36
-
37
- getNodes() {
38
- return this.nodes;
39
- }
40
-
41
- getFlattedNodes(leafOnly: boolean) {
42
- return leafOnly ? this.leafNodes : this.allNodes;
43
- }
44
-
45
- appendNode(nodeData: CascaderOption, parentNode?: Node) {
46
- const node = parentNode
47
- ? parentNode.appendChild(nodeData)
48
- : new Node(nodeData, this.config);
49
-
50
- if (!parentNode) this.nodes.push(node);
51
-
52
- this.allNodes.push(node);
53
- node.isLeaf && this.leafNodes.push(node);
54
- }
55
-
56
- appendNodes(nodeDataList: CascaderOption[], parentNode: Node) {
57
- nodeDataList.forEach((nodeData) => this.appendNode(nodeData, parentNode));
58
- }
59
-
60
- // when checkStrictly, leaf node first
61
- getNodeByValue(
62
- value: CascaderNodeValue | CascaderNodePathValue,
63
- leafOnly = false
64
- ): Nullable<Node> {
65
- if (!value && value !== 0) return null;
66
-
67
- const node = this.getFlattedNodes(leafOnly).find(
68
- (node) => isEqual(node.value, value) || isEqual(node.pathValues, value)
69
- );
70
-
71
- return node || null;
72
- }
73
-
74
- getSameNode(node: Node): Nullable<Node> {
75
- if (!node) return null;
76
-
77
- const node_ = this.getFlattedNodes(false).find(
78
- ({ value, level }) => isEqual(node.value, value) && node.level === level
79
- );
80
-
81
- return node_ || null;
82
- }
83
- }
@@ -1,56 +0,0 @@
1
- import type { InjectionKey, VNode } from 'vue';
2
- import type {
3
- default as CascaderNode,
4
- CascaderOption,
5
- CascaderProps,
6
- ExpandTrigger
7
- } from './node';
8
-
9
- export type { CascaderNode, CascaderOption, CascaderProps, ExpandTrigger };
10
-
11
- export type CascaderNodeValue = string | number
12
- export type CascaderNodePathValue = CascaderNodeValue[]
13
- export type CascaderValue =
14
- | CascaderNodeValue
15
- | CascaderNodePathValue
16
- | (CascaderNodeValue | CascaderNodePathValue)[]
17
- export type CascaderConfig = Required<CascaderProps>
18
- export type isDisabled = (data: CascaderOption, node: CascaderNode) => boolean
19
- export type isLeaf = (data: CascaderOption, node: CascaderNode) => boolean
20
- export type Resolve = (dataList?: CascaderOption[]) => void
21
- export type LazyLoad = (node: CascaderNode, resolve: Resolve) => void
22
- export type RenderLabel = ({
23
- node: CascaderNode,
24
- data: CascaderOption
25
- }) => VNode | VNode[]
26
-
27
- export interface Tag {
28
- node?: CascaderNode
29
- key: number
30
- text: string
31
- hitState?: boolean
32
- closable: boolean
33
- isCollapseTag: boolean
34
- }
35
-
36
- export interface VriCascaderPanelContext {
37
- config: CascaderConfig
38
- expandingNode: Nullable<CascaderNode>
39
- checkedNodes: CascaderNode[]
40
- isHoverMenu: boolean
41
- initialLoaded: boolean
42
- renderLabelFn: RenderLabel
43
- lazyLoad: (
44
- node?: CascaderNode,
45
- cb?: (dataList: CascaderOption[]) => void
46
- ) => void
47
- expandNode: (node: CascaderNode, silent?: boolean) => void
48
- handleCheckChange: (
49
- node: CascaderNode,
50
- checked: boolean,
51
- emitClose?: boolean
52
- ) => void
53
- }
54
-
55
- export const CASCADER_PANEL_INJECTION_KEY: InjectionKey<VriCascaderPanelContext> =
56
- Symbol();
@@ -1,40 +0,0 @@
1
- import { isLeaf } from '@vri/utils';
2
- import type { default as CascaderNode } from './node';
3
-
4
- export const getMenuIndex = (el: HTMLElement) => {
5
- if (!el) return 0;
6
- const pieces = el.id.split('-');
7
- return Number(pieces[pieces.length - 2]);
8
- };
9
-
10
- export const checkNode = (el: HTMLElement) => {
11
- if (!el) return;
12
-
13
- const input = el.querySelector('input');
14
- if (input) {
15
- input.click();
16
- } else if (isLeaf(el)) {
17
- el.click();
18
- }
19
- };
20
-
21
- export const sortByOriginalOrder = (
22
- oldNodes: CascaderNode[],
23
- newNodes: CascaderNode[]
24
- ) => {
25
- const newNodesCopy = newNodes.slice(0);
26
- const newIds = newNodesCopy.map((node) => node.uid);
27
- const res = oldNodes.reduce((acc, item) => {
28
- const index = newIds.indexOf(item.uid);
29
- if (index > -1) {
30
- acc.push(item);
31
- newNodesCopy.splice(index, 1);
32
- newIds.splice(index, 1);
33
- }
34
- return acc;
35
- }, [] as CascaderNode[]);
36
-
37
- res.push(...newNodesCopy);
38
-
39
- return res;
40
- };
@@ -1,31 +0,0 @@
1
- # cascader-select 级联选择组件
2
-
3
- ## Usage
4
-
5
- ```html
6
- <vri-cascader-select title="地区" :options="cascaderOptions" @submit="onCascaderSubmit"></vri-cascader-select>
7
- ```
8
-
9
- ## Props
10
-
11
- | 属性名 | 说明 | 类型 | 是否必传 | 默认值 |
12
- | ----------- | ----------------------------- | --------------------- | -------- | -------- |
13
- | title | 标题名称 | string | 是 | - |
14
- | options | 级联选择列表 | Array\<option props\> | 是 | - |
15
- | labelKey | 选择项名称对应的 key 名 | string | 否 | label |
16
- | valueKey | 选择项值对应的 key 名 | string | 否 | value |
17
- | childrenKey | 选择项 children 对应的 key 名 | string | 否 | children |
18
-
19
- ### options props
20
-
21
- | 属性名 | 说明 | 类型 | 是否必传 | 默认值 |
22
- | --------------------------------------------- | --------------- | ------ | -------- | ------ |
23
- | [key:string] (示例: label) | 选择项名 | string | 是 | - |
24
- | [key:string] (示例: value) | 选择项值 | string | 是 | - |
25
- | [key:string] (示例: children\<option props\>) | 选择项 children | Array | 否 | - |
26
-
27
- ## Event
28
-
29
- | 事件名 | 说明 | 参数 |
30
- | ------ | ---------------- | ---------------------------------------------- |
31
- | submit | 确认选择时的回调 | 选中项的值(对象,不同级的值整合到一个 key 中) |
@@ -1,54 +0,0 @@
1
- $name: 'cascader-select';
2
-
3
- @include b($name) {
4
- display: inline-flex;
5
- align-items: center;
6
- gap: 4px;
7
- height: 24px;
8
- cursor: pointer;
9
- @include e(title) {
10
- font-size: 13px;
11
- cursor: pointer;
12
- @include when(show) {
13
- color: #409eff;
14
- }
15
- }
16
-
17
- @include e(icon-arrow-down) {
18
- transition: all 0.2s;
19
- @include when(rotate) {
20
- position: relative;
21
- top: -1px;
22
- transform: rotate(180deg);
23
- }
24
- }
25
- }
26
-
27
- @include e(dropdown) {
28
- :deep(.vri-cascader-menu__wrap.vri-scrollbar__wrap) {
29
- height: unset;
30
- min-height: 204px;
31
- max-height: 330px;
32
- }
33
- :deep(.vri-cascader-node) {
34
- padding: 0 16px;
35
- height: 30px;
36
- line-height: unset;
37
- .vri-cascader-node__label {
38
- padding-right: 24px;
39
- font-size: 13px;
40
- }
41
- }
42
- :deep(.vri-cascader-node.in-active-path) {
43
- color: unset;
44
- font-weight: normal;
45
- }
46
- :deep(.vri-cascader-node.is-selectable.in-checked-path),
47
- :deep(.vri-cascader-node.is-active) {
48
- color: #409eff;
49
- font-weight: normal;
50
- }
51
- :deep(.vri-cascader-menu__empty-text) {
52
- top: 40px;
53
- }
54
- }
@@ -1,5 +0,0 @@
1
- import CascaderSelect from './index.vue';
2
-
3
- export * from './types';
4
-
5
- export { CascaderSelect };