vft 0.0.1 → 0.0.3

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 (756) 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 +62 -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 +6 -0
  120. package/es/components/index.mjs +17 -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 +56 -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 +9 -0
  166. package/es/index.mjs +44 -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/package.json.mjs +5 -0
  172. package/es/package.json.mjs.map +1 -0
  173. package/es/style.css +1 -0
  174. package/es/theme-style/src/avatar.scss.mjs +5 -0
  175. package/es/theme-style/src/avatar.scss.mjs.map +1 -0
  176. package/es/theme-style/src/back-top.scss.mjs +5 -0
  177. package/es/theme-style/src/back-top.scss.mjs.map +1 -0
  178. package/es/theme-style/src/base.scss.mjs +5 -0
  179. package/es/theme-style/src/base.scss.mjs.map +1 -0
  180. package/es/theme-style/src/divider.scss.mjs +5 -0
  181. package/es/theme-style/src/divider.scss.mjs.map +1 -0
  182. package/es/theme-style/src/empty.scss.mjs +5 -0
  183. package/es/theme-style/src/empty.scss.mjs.map +1 -0
  184. package/es/theme-style/src/icon.scss.mjs +5 -0
  185. package/es/theme-style/src/icon.scss.mjs.map +1 -0
  186. package/es/theme-style/src/result.scss.mjs +5 -0
  187. package/es/theme-style/src/result.scss.mjs.map +1 -0
  188. package/es/utils/error.d.ts +3 -0
  189. package/es/utils/error.mjs +20 -0
  190. package/es/utils/error.mjs.map +1 -0
  191. package/es/utils/helper.d.ts +1 -0
  192. package/es/utils/helper.mjs +5 -0
  193. package/es/utils/helper.mjs.map +1 -0
  194. package/es/utils/index.d.ts +3 -0
  195. package/es/utils/index.mjs +13 -0
  196. package/es/utils/index.mjs.map +1 -0
  197. package/es/utils/vue/index.d.ts +2 -0
  198. package/es/utils/vue/index.mjs +8 -0
  199. package/es/utils/vue/index.mjs.map +1 -0
  200. package/es/utils/vue/install.d.ts +6 -0
  201. package/es/utils/vue/install.mjs +21 -0
  202. package/es/utils/vue/install.mjs.map +1 -0
  203. package/es/utils/vue/typescript.d.ts +5 -0
  204. package/es/utils/vue/typescript.mjs +2 -0
  205. package/es/utils/vue/typescript.mjs.map +1 -0
  206. package/lib/component.d.ts +3 -0
  207. package/lib/component.js +2 -0
  208. package/lib/component.js.map +1 -0
  209. package/lib/components/avatar/avatar.vue.d.ts +64 -0
  210. package/lib/components/avatar/avatar.vue.js +2 -0
  211. package/lib/components/avatar/avatar.vue.js.map +1 -0
  212. package/lib/components/avatar/avatar.vue2.js +2 -0
  213. package/lib/components/avatar/avatar.vue2.js.map +1 -0
  214. package/lib/components/avatar/index.d.ts +62 -0
  215. package/lib/components/avatar/index.js +2 -0
  216. package/lib/components/avatar/index.js.map +1 -0
  217. package/lib/components/avatar/style/css.d.ts +0 -0
  218. package/lib/components/avatar/style/css.js +2 -0
  219. package/lib/components/avatar/style/css.js.map +1 -0
  220. package/lib/components/avatar/style/index.d.ts +0 -0
  221. package/lib/components/avatar/style/index.js +2 -0
  222. package/lib/components/avatar/style/index.js.map +1 -0
  223. package/lib/components/back-top/back-top.vue.d.ts +48 -0
  224. package/lib/components/back-top/back-top.vue.js +2 -0
  225. package/lib/components/back-top/back-top.vue.js.map +1 -0
  226. package/lib/components/back-top/back-top.vue2.js +2 -0
  227. package/lib/components/back-top/back-top.vue2.js.map +1 -0
  228. package/lib/components/back-top/index.d.ts +47 -0
  229. package/lib/components/back-top/index.js +2 -0
  230. package/lib/components/back-top/index.js.map +1 -0
  231. package/lib/components/back-top/style/css.d.ts +0 -0
  232. package/lib/components/back-top/style/css.js +2 -0
  233. package/lib/components/back-top/style/css.js.map +1 -0
  234. package/lib/components/back-top/style/index.d.ts +0 -0
  235. package/lib/components/back-top/style/index.js +2 -0
  236. package/lib/components/back-top/style/index.js.map +1 -0
  237. package/lib/components/back-top/types.d.ts +13 -0
  238. package/lib/components/back-top/types.js +2 -0
  239. package/lib/components/back-top/types.js.map +1 -0
  240. package/lib/components/back-top/use-back-top.d.ts +5 -0
  241. package/lib/components/back-top/use-back-top.js +2 -0
  242. package/lib/components/back-top/use-back-top.js.map +1 -0
  243. package/lib/components/base/style/css.d.ts +0 -0
  244. package/lib/components/base/style/css.js +2 -0
  245. package/lib/components/base/style/css.js.map +1 -0
  246. package/lib/components/base/style/index.d.ts +0 -0
  247. package/lib/components/base/style/index.js +2 -0
  248. package/lib/components/base/style/index.js.map +1 -0
  249. package/lib/components/divider/divider.vue.d.ts +53 -0
  250. package/lib/components/divider/divider.vue.js +2 -0
  251. package/lib/components/divider/divider.vue.js.map +1 -0
  252. package/lib/components/divider/divider.vue2.js +2 -0
  253. package/lib/components/divider/divider.vue2.js.map +1 -0
  254. package/lib/components/divider/index.d.ts +52 -0
  255. package/lib/components/divider/index.js +2 -0
  256. package/lib/components/divider/index.js.map +1 -0
  257. package/lib/components/divider/style/css.d.ts +0 -0
  258. package/lib/components/divider/style/css.js +2 -0
  259. package/lib/components/divider/style/css.js.map +1 -0
  260. package/lib/components/divider/style/index.d.ts +0 -0
  261. package/lib/components/divider/style/index.js +2 -0
  262. package/lib/components/divider/style/index.js.map +1 -0
  263. package/lib/components/divider/types.d.ts +2 -0
  264. package/lib/components/divider/types.js +2 -0
  265. package/lib/components/divider/types.js.map +1 -0
  266. package/lib/components/empty/assets/no-collect.png.js +2 -0
  267. package/lib/components/empty/assets/no-collect.png.js.map +1 -0
  268. package/lib/components/empty/assets/no-data.png.js +2 -0
  269. package/lib/components/empty/assets/no-data.png.js.map +1 -0
  270. package/lib/components/empty/assets/no-filter.png.js +2 -0
  271. package/lib/components/empty/assets/no-filter.png.js.map +1 -0
  272. package/lib/components/empty/assets/no-page-data.png.js +2 -0
  273. package/lib/components/empty/assets/no-page-data.png.js.map +1 -0
  274. package/lib/components/empty/assets/no-search.png.js +2 -0
  275. package/lib/components/empty/assets/no-search.png.js.map +1 -0
  276. package/lib/components/empty/constants.d.ts +12 -0
  277. package/lib/components/empty/constants.js +2 -0
  278. package/lib/components/empty/constants.js.map +1 -0
  279. package/lib/components/empty/empty.vue.d.ts +39 -0
  280. package/lib/components/empty/empty.vue.js +2 -0
  281. package/lib/components/empty/empty.vue.js.map +1 -0
  282. package/lib/components/empty/empty.vue2.js +2 -0
  283. package/lib/components/empty/empty.vue2.js.map +1 -0
  284. package/lib/components/empty/index.d.ts +37 -0
  285. package/lib/components/empty/index.js +2 -0
  286. package/lib/components/empty/index.js.map +1 -0
  287. package/lib/components/empty/style/css.d.ts +0 -0
  288. package/lib/components/empty/style/css.js +2 -0
  289. package/lib/components/empty/style/css.js.map +1 -0
  290. package/lib/components/empty/style/index.d.ts +0 -0
  291. package/lib/components/empty/style/index.js +2 -0
  292. package/lib/components/empty/style/index.js.map +1 -0
  293. package/lib/components/exception/exception.png.js +2 -0
  294. package/lib/components/exception/exception.png.js.map +1 -0
  295. package/lib/components/exception/exception.vue.d.ts +29 -0
  296. package/lib/components/exception/exception.vue.js +2 -0
  297. package/lib/components/exception/exception.vue.js.map +1 -0
  298. package/lib/components/exception/exception.vue2.js +2 -0
  299. package/lib/components/exception/exception.vue2.js.map +1 -0
  300. package/lib/components/exception/index.d.ts +28 -0
  301. package/lib/components/exception/index.js +2 -0
  302. package/lib/components/exception/index.js.map +1 -0
  303. package/lib/components/exception/style/css.d.ts +0 -0
  304. package/lib/components/exception/style/css.js +2 -0
  305. package/lib/components/exception/style/css.js.map +1 -0
  306. package/lib/components/exception/style/index.d.ts +0 -0
  307. package/lib/components/exception/style/index.js +2 -0
  308. package/lib/components/exception/style/index.js.map +1 -0
  309. package/lib/components/icon/icon.vue.d.ts +96 -0
  310. package/lib/components/icon/icon.vue.js +2 -0
  311. package/lib/components/icon/icon.vue.js.map +1 -0
  312. package/lib/components/icon/icon.vue2.js +2 -0
  313. package/lib/components/icon/icon.vue2.js.map +1 -0
  314. package/lib/components/icon/index.d.ts +79 -0
  315. package/lib/components/icon/index.js +2 -0
  316. package/lib/components/icon/index.js.map +1 -0
  317. package/lib/components/icon/style/css.d.ts +0 -0
  318. package/lib/components/icon/style/css.js +2 -0
  319. package/lib/components/icon/style/css.js.map +1 -0
  320. package/lib/components/icon/style/index.d.ts +0 -0
  321. package/lib/components/icon/style/index.js +2 -0
  322. package/lib/components/icon/style/index.js.map +1 -0
  323. package/lib/components/index.d.ts +6 -0
  324. package/lib/components/index.js +2 -0
  325. package/lib/components/index.js.map +1 -0
  326. package/lib/components/result/index.d.ts +28 -0
  327. package/lib/components/result/index.js +2 -0
  328. package/lib/components/result/index.js.map +1 -0
  329. package/lib/components/result/result.vue.d.ts +30 -0
  330. package/lib/components/result/result.vue.js +2 -0
  331. package/lib/components/result/result.vue.js.map +1 -0
  332. package/lib/components/result/result.vue2.js +2 -0
  333. package/lib/components/result/result.vue2.js.map +1 -0
  334. package/lib/components/result/style/css.d.ts +0 -0
  335. package/lib/components/result/style/css.js +2 -0
  336. package/lib/components/result/style/css.js.map +1 -0
  337. package/lib/components/result/style/index.d.ts +0 -0
  338. package/lib/components/result/style/index.js +2 -0
  339. package/lib/components/result/style/index.js.map +1 -0
  340. package/lib/components/types.d.ts +1 -0
  341. package/lib/components/types.js +2 -0
  342. package/lib/components/types.js.map +1 -0
  343. package/lib/constants/aria.d.ts +17 -0
  344. package/lib/constants/aria.js +2 -0
  345. package/lib/constants/aria.js.map +1 -0
  346. package/lib/constants/date.d.ts +3 -0
  347. package/lib/constants/date.js +2 -0
  348. package/lib/constants/date.js.map +1 -0
  349. package/lib/constants/event.d.ts +3 -0
  350. package/lib/constants/event.js +2 -0
  351. package/lib/constants/event.js.map +1 -0
  352. package/lib/constants/index.d.ts +5 -0
  353. package/lib/constants/index.js +2 -0
  354. package/lib/constants/index.js.map +1 -0
  355. package/lib/constants/key.d.ts +1 -0
  356. package/lib/constants/key.js +2 -0
  357. package/lib/constants/key.js.map +1 -0
  358. package/lib/constants/size.d.ts +7 -0
  359. package/lib/constants/size.js +2 -0
  360. package/lib/constants/size.js.map +1 -0
  361. package/lib/defaults.d.ts +5 -0
  362. package/lib/defaults.js +2 -0
  363. package/lib/defaults.js.map +1 -0
  364. package/lib/hooks/index.d.ts +1 -0
  365. package/lib/hooks/index.js +2 -0
  366. package/lib/hooks/index.js.map +1 -0
  367. package/lib/hooks/use-namespace/index.d.ts +21 -0
  368. package/lib/hooks/use-namespace/index.js +2 -0
  369. package/lib/hooks/use-namespace/index.js.map +1 -0
  370. package/lib/index.d.ts +9 -0
  371. package/lib/index.js +2 -0
  372. package/lib/index.js.map +1 -0
  373. package/lib/make-installer.d.ts +5 -0
  374. package/lib/make-installer.js +2 -0
  375. package/lib/make-installer.js.map +1 -0
  376. package/lib/package.json.js +2 -0
  377. package/lib/package.json.js.map +1 -0
  378. package/lib/theme-style/src/avatar.scss.js +2 -0
  379. package/lib/theme-style/src/avatar.scss.js.map +1 -0
  380. package/lib/theme-style/src/back-top.scss.js +2 -0
  381. package/lib/theme-style/src/back-top.scss.js.map +1 -0
  382. package/lib/theme-style/src/base.scss.js +2 -0
  383. package/lib/theme-style/src/base.scss.js.map +1 -0
  384. package/lib/theme-style/src/divider.scss.js +2 -0
  385. package/lib/theme-style/src/divider.scss.js.map +1 -0
  386. package/lib/theme-style/src/empty.scss.js +2 -0
  387. package/lib/theme-style/src/empty.scss.js.map +1 -0
  388. package/lib/theme-style/src/icon.scss.js +2 -0
  389. package/lib/theme-style/src/icon.scss.js.map +1 -0
  390. package/lib/theme-style/src/result.scss.js +2 -0
  391. package/lib/theme-style/src/result.scss.js.map +1 -0
  392. package/lib/utils/error.d.ts +3 -0
  393. package/lib/utils/error.js +2 -0
  394. package/lib/utils/error.js.map +1 -0
  395. package/lib/utils/helper.d.ts +1 -0
  396. package/lib/utils/helper.js +2 -0
  397. package/lib/utils/helper.js.map +1 -0
  398. package/lib/utils/index.d.ts +3 -0
  399. package/lib/utils/index.js +2 -0
  400. package/lib/utils/index.js.map +1 -0
  401. package/lib/utils/vue/index.d.ts +2 -0
  402. package/lib/utils/vue/index.js +2 -0
  403. package/lib/utils/vue/index.js.map +1 -0
  404. package/lib/utils/vue/install.d.ts +6 -0
  405. package/lib/utils/vue/install.js +2 -0
  406. package/lib/utils/vue/install.js.map +1 -0
  407. package/lib/utils/vue/typescript.d.ts +5 -0
  408. package/lib/utils/vue/typescript.js +2 -0
  409. package/lib/utils/vue/typescript.js.map +1 -0
  410. package/package.json +50 -44
  411. package/theme-style/base.css +1 -0
  412. package/theme-style/dark/css-vars.css +1 -0
  413. package/theme-style/index.css +1 -0
  414. package/{src/web/avatar/index.scss → theme-style/src/avatar.scss} +7 -4
  415. package/{src/web/back-top/index.scss → theme-style/src/back-top.scss} +3 -6
  416. package/theme-style/src/base.scss +2 -0
  417. package/theme-style/src/color/index.scss +17 -0
  418. package/theme-style/src/common/transition.scss +128 -0
  419. package/theme-style/src/common/var.scss +841 -0
  420. package/theme-style/src/dark/css-vars.scss +41 -0
  421. package/theme-style/src/dark/var.scss +221 -0
  422. package/{src/web/divider/index.scss → theme-style/src/divider.scss} +4 -1
  423. package/{src/web/empty/index.scss → theme-style/src/empty.scss} +3 -10
  424. package/{src/web/full-screen/index.scss → theme-style/src/full-screen.scss} +3 -0
  425. package/{src/common/icon/index.scss → theme-style/src/icon.scss} +2 -1
  426. package/{src/web/image/index.scss → theme-style/src/image.scss} +3 -0
  427. package/theme-style/src/index.scss +7 -0
  428. package/{src/web/input/index.scss → theme-style/src/input.scss} +3 -0
  429. package/theme-style/src/mixins/_var.scss +91 -0
  430. package/theme-style/src/mixins/config.scss +5 -0
  431. package/theme-style/src/mixins/function.scss +86 -0
  432. package/theme-style/src/mixins/mixins.scss +258 -0
  433. package/{src/web/result/index.scss → theme-style/src/result.scss} +3 -9
  434. package/theme-style/src/var.scss +73 -0
  435. package/theme-style/vft-avatar.css +1 -0
  436. package/theme-style/vft-back-top.css +1 -0
  437. package/theme-style/vft-divider.css +1 -0
  438. package/theme-style/vft-empty.css +1 -0
  439. package/theme-style/vft-full-screen.css +1 -0
  440. package/theme-style/vft-icon.css +1 -0
  441. package/theme-style/vft-image.css +1 -0
  442. package/theme-style/vft-input.css +1 -0
  443. package/theme-style/vft-result.css +1 -0
  444. package/theme-style/vft-var.css +1 -0
  445. package/theme-style/vft-virtual-list.css +1 -0
  446. package/src/app/index.ts +0 -3
  447. package/src/app/page-loading/assets/spin.gif +0 -0
  448. package/src/app/page-loading/index.less +0 -10
  449. package/src/app/page-loading/index.ts +0 -3
  450. package/src/app/page-loading/index.vue +0 -38
  451. package/src/app/table/assets/sort_triangle.png +0 -0
  452. package/src/app/table/demos/basic.vue +0 -117
  453. package/src/app/table/demos/complex.vue +0 -2543
  454. package/src/app/table/demos/index.vue +0 -453
  455. package/src/app/table/demos/rightAngle.png +0 -0
  456. package/src/app/table/header.vue +0 -203
  457. package/src/app/table/index.less +0 -119
  458. package/src/app/table/index.ts +0 -5
  459. package/src/app/table/index.vue +0 -478
  460. package/src/app/table/md/api.md +0 -23
  461. package/src/app/table/md/demo.md +0 -3
  462. package/src/app/table/types.ts +0 -45
  463. package/src/common/badge/index.scss +0 -78
  464. package/src/common/badge/index.ts +0 -4
  465. package/src/common/badge/index.vue +0 -111
  466. package/src/common/badge/types.ts +0 -1
  467. package/src/common/clamp/clamp-toggle.vue +0 -91
  468. package/src/common/clamp/index.ts +0 -4
  469. package/src/common/clamp/index.vue +0 -247
  470. package/src/common/code/index.less +0 -321
  471. package/src/common/code/index.ts +0 -3
  472. package/src/common/code/index.vue +0 -60
  473. package/src/common/config-provider/index.ts +0 -4
  474. package/src/common/config-provider/index.vue +0 -94
  475. package/src/common/config-provider/types.ts +0 -29
  476. package/src/common/icon/iconfont/iconfont.css +0 -334
  477. package/src/common/icon/index.ts +0 -4
  478. package/src/common/icon/index.vue +0 -74
  479. package/src/common/icon/types.ts +0 -16
  480. package/src/common/index.ts +0 -6
  481. package/src/common/message/index.ts +0 -5
  482. package/src/common/message/instance.ts +0 -29
  483. package/src/common/message/message.scss +0 -108
  484. package/src/common/message/message.ts +0 -80
  485. package/src/common/message/message.vue +0 -162
  486. package/src/common/message/method.ts +0 -172
  487. package/src/common/overlay/index.scss +0 -14
  488. package/src/common/overlay/index.ts +0 -3
  489. package/src/common/overlay/index.vue +0 -117
  490. package/src/constants/comp.ts +0 -1
  491. package/src/constants/index.ts +0 -1
  492. package/src/index.ts +0 -3
  493. package/src/page/index.ts +0 -1
  494. package/src/page/page-wrapper/index.scss +0 -31
  495. package/src/page/page-wrapper/index.ts +0 -5
  496. package/src/page/page-wrapper/index.vue +0 -31
  497. package/src/styles/vars.scss +0 -500
  498. package/src/use/index.ts +0 -14
  499. package/src/use/onPopupReopen.ts +0 -15
  500. package/src/use/use-delayed-toggle/index.ts +0 -30
  501. package/src/use/use-floating/index.ts +0 -121
  502. package/src/use/use-forward-ref.ts +0 -35
  503. package/src/use/use-global-config/index.ts +0 -81
  504. package/src/use/use-id/index.ts +0 -43
  505. package/src/use/use-model-toggle/index.ts +0 -151
  506. package/src/use/use-namespace/index.ts +0 -91
  507. package/src/use/use-ordered-children/index.ts +0 -43
  508. package/src/use/use-popper-container/index.ts +0 -43
  509. package/src/use/use-timeout/index.ts +0 -18
  510. package/src/use/use-z-index/index.ts +0 -20
  511. package/src/use/useGlobalZIndex.ts +0 -24
  512. package/src/use/useLazyRender.ts +0 -17
  513. package/src/use/useLockScroll.ts +0 -66
  514. package/src/utils/aria.ts +0 -126
  515. package/src/utils/arrays.ts +0 -13
  516. package/src/utils/error.ts +0 -23
  517. package/src/utils/event.ts +0 -15
  518. package/src/utils/helper.ts +0 -7
  519. package/src/utils/index.ts +0 -8
  520. package/src/utils/interceptor.ts +0 -39
  521. package/src/utils/mount-component.ts +0 -65
  522. package/src/utils/popper.ts +0 -6
  523. package/src/utils/rand.ts +0 -12
  524. package/src/utils/scroll.ts +0 -101
  525. package/src/utils/vnode.ts +0 -169
  526. package/src/web/avatar/index.ts +0 -3
  527. package/src/web/avatar/index.vue +0 -83
  528. package/src/web/back-top/index.ts +0 -3
  529. package/src/web/back-top/index.vue +0 -72
  530. package/src/web/back-top/types.ts +0 -14
  531. package/src/web/back-top/use-back-top.ts +0 -65
  532. package/src/web/cascader/index.scss +0 -214
  533. package/src/web/cascader/index.ts +0 -5
  534. package/src/web/cascader/index.vue +0 -767
  535. package/src/web/cascader-panel/config.ts +0 -44
  536. package/src/web/cascader-panel/index.scss +0 -134
  537. package/src/web/cascader-panel/index.ts +0 -5
  538. package/src/web/cascader-panel/index.vue +0 -319
  539. package/src/web/cascader-panel/menu.vue +0 -135
  540. package/src/web/cascader-panel/node-content.ts +0 -23
  541. package/src/web/cascader-panel/node.ts +0 -218
  542. package/src/web/cascader-panel/node.vue +0 -197
  543. package/src/web/cascader-panel/store.ts +0 -83
  544. package/src/web/cascader-panel/types.ts +0 -56
  545. package/src/web/cascader-panel/utils.ts +0 -40
  546. package/src/web/cascader-select/README.md +0 -31
  547. package/src/web/cascader-select/index.scss +0 -54
  548. package/src/web/cascader-select/index.ts +0 -5
  549. package/src/web/cascader-select/index.vue +0 -132
  550. package/src/web/cascader-select/types.ts +0 -9
  551. package/src/web/context-menu/createContextMenu.ts +0 -72
  552. package/src/web/context-menu/index.ts +0 -4
  553. package/src/web/context-menu/index.vue +0 -89
  554. package/src/web/context-menu/types.ts +0 -27
  555. package/src/web/context-menu/useContextMenu.ts +0 -14
  556. package/src/web/descriptions/description-item.vue +0 -34
  557. package/src/web/descriptions/description.vue +0 -124
  558. package/src/web/descriptions/descriptions-cell.ts +0 -95
  559. package/src/web/descriptions/descriptions-item.scss +0 -68
  560. package/src/web/descriptions/descriptions-row.vue +0 -49
  561. package/src/web/descriptions/descriptions.scss +0 -153
  562. package/src/web/descriptions/descriptions.type.ts +0 -19
  563. package/src/web/descriptions/index.ts +0 -4
  564. package/src/web/descriptions/token.ts +0 -4
  565. package/src/web/divider/index.ts +0 -5
  566. package/src/web/divider/index.vue +0 -60
  567. package/src/web/divider/types.ts +0 -2
  568. package/src/web/empty/assets/no-collect.png +0 -0
  569. package/src/web/empty/assets/no-data.png +0 -0
  570. package/src/web/empty/assets/no-filter.png +0 -0
  571. package/src/web/empty/assets/no-page-data.png +0 -0
  572. package/src/web/empty/assets/no-search.png +0 -0
  573. package/src/web/empty/constants.ts +0 -12
  574. package/src/web/empty/index.ts +0 -5
  575. package/src/web/empty/index.vue +0 -96
  576. package/src/web/exception/exception.png +0 -0
  577. package/src/web/exception/index.ts +0 -3
  578. package/src/web/exception/index.vue +0 -44
  579. package/src/web/filter/README.md +0 -25
  580. package/src/web/filter/index.scss +0 -14
  581. package/src/web/filter/index.ts +0 -5
  582. package/src/web/filter/index.vue +0 -60
  583. package/src/web/filter/type.ts +0 -13
  584. package/src/web/focus-trap/index.ts +0 -6
  585. package/src/web/focus-trap/index.vue +0 -328
  586. package/src/web/focus-trap/tokens.ts +0 -23
  587. package/src/web/focus-trap/utils.ts +0 -178
  588. package/src/web/full-screen/index.ts +0 -3
  589. package/src/web/full-screen/index.vue +0 -24
  590. package/src/web/icon-text/index.ts +0 -3
  591. package/src/web/icon-text/index.vue +0 -77
  592. package/src/web/image/index.ts +0 -5
  593. package/src/web/image/index.vue +0 -251
  594. package/src/web/image/types.ts +0 -1
  595. package/src/web/index.ts +0 -33
  596. package/src/web/input/index.ts +0 -3
  597. package/src/web/input/index.vue +0 -533
  598. package/src/web/input/utils.ts +0 -102
  599. package/src/web/layouts/blank.vue +0 -4
  600. package/src/web/layouts/footer/index.scss +0 -31
  601. package/src/web/layouts/footer/index.ts +0 -3
  602. package/src/web/layouts/footer/index.vue +0 -38
  603. package/src/web/layouts/header/index.scss +0 -35
  604. package/src/web/layouts/header/index.ts +0 -3
  605. package/src/web/layouts/header/index.vue +0 -47
  606. package/src/web/layouts/iframe/index.scss +0 -18
  607. package/src/web/layouts/iframe/index.vue +0 -36
  608. package/src/web/layouts/iframe/page.vue +0 -30
  609. package/src/web/layouts/index.ts +0 -8
  610. package/src/web/layouts/router-view-content/index.vue +0 -70
  611. package/src/web/link/index.scss +0 -95
  612. package/src/web/link/index.ts +0 -3
  613. package/src/web/link/index.vue +0 -68
  614. package/src/web/loading/directive.ts +0 -104
  615. package/src/web/loading/index.ts +0 -6
  616. package/src/web/loading/loading.scss +0 -108
  617. package/src/web/loading/loading.ts +0 -156
  618. package/src/web/loading/service.ts +0 -145
  619. package/src/web/loading/types.ts +0 -29
  620. package/src/web/logo/index.scss +0 -31
  621. package/src/web/logo/index.ts +0 -5
  622. package/src/web/logo/index.vue +0 -45
  623. package/src/web/logo/types.ts +0 -6
  624. package/src/web/menu/index.scss +0 -336
  625. package/src/web/menu/index.ts +0 -8
  626. package/src/web/menu/menu-collapse-transition.vue +0 -62
  627. package/src/web/menu/menu-item-group.vue +0 -27
  628. package/src/web/menu/menu-item.vue +0 -126
  629. package/src/web/menu/menu.vue +0 -459
  630. package/src/web/menu/sub-menu.vue +0 -440
  631. package/src/web/menu/types.ts +0 -66
  632. package/src/web/menu/use-menu-css-var.ts +0 -11
  633. package/src/web/menu/use-menu.ts +0 -60
  634. package/src/web/menu/utils/menu-bar.ts +0 -19
  635. package/src/web/menu/utils/menu-item.ts +0 -55
  636. package/src/web/menu/utils/submenu.ts +0 -66
  637. package/src/web/multiple-select-flat/index.ts +0 -5
  638. package/src/web/multiple-select-flat/index.vue +0 -53
  639. package/src/web/multiple-select-flat/types.ts +0 -5
  640. package/src/web/multiple-tabs/index.scss +0 -16
  641. package/src/web/multiple-tabs/index.ts +0 -5
  642. package/src/web/multiple-tabs/index.vue +0 -193
  643. package/src/web/multiple-tabs/tab-content.vue +0 -40
  644. package/src/web/multiple-tabs/types.ts +0 -3
  645. package/src/web/multiple-tabs/use/index.ts +0 -2
  646. package/src/web/multiple-tabs/use/use-multiple-tabs.ts +0 -86
  647. package/src/web/multiple-tabs/use/use-tab-dropdown.ts +0 -101
  648. package/src/web/nodata/README.md +0 -42
  649. package/src/web/nodata/fail.vue +0 -13
  650. package/src/web/nodata/img/100.png +0 -0
  651. package/src/web/nodata/img/101.png +0 -0
  652. package/src/web/nodata/img/102.png +0 -0
  653. package/src/web/nodata/img/103.png +0 -0
  654. package/src/web/nodata/img/104.png +0 -0
  655. package/src/web/nodata/img/105.png +0 -0
  656. package/src/web/nodata/img/106.png +0 -0
  657. package/src/web/nodata/img/107.png +0 -0
  658. package/src/web/nodata/img/200.png +0 -0
  659. package/src/web/nodata/img/201.png +0 -0
  660. package/src/web/nodata/img/202.png +0 -0
  661. package/src/web/nodata/img/203.png +0 -0
  662. package/src/web/nodata/index.scss +0 -37
  663. package/src/web/nodata/index.ts +0 -6
  664. package/src/web/nodata/index.vue +0 -46
  665. package/src/web/nodata/types.ts +0 -17
  666. package/src/web/only-child/index.tsx +0 -69
  667. package/src/web/pagination/components/jumper.vue +0 -49
  668. package/src/web/pagination/components/next.vue +0 -40
  669. package/src/web/pagination/components/pager.vue +0 -215
  670. package/src/web/pagination/components/prev.vue +0 -35
  671. package/src/web/pagination/components/sizes.vue +0 -76
  672. package/src/web/pagination/components/total.vue +0 -21
  673. package/src/web/pagination/index.scss +0 -231
  674. package/src/web/pagination/index.ts +0 -5
  675. package/src/web/pagination/pagination.ts +0 -363
  676. package/src/web/pagination/usePagination.ts +0 -13
  677. package/src/web/popover/directive.ts +0 -21
  678. package/src/web/popover/index.scss +0 -58
  679. package/src/web/popover/index.ts +0 -3
  680. package/src/web/popover/index.vue +0 -161
  681. package/src/web/popover/types.ts +0 -26
  682. package/src/web/popper/arrow.vue +0 -45
  683. package/src/web/popper/content.vue +0 -311
  684. package/src/web/popper/index.scss +0 -108
  685. package/src/web/popper/index.ts +0 -11
  686. package/src/web/popper/popper.vue +0 -57
  687. package/src/web/popper/tokens.ts +0 -28
  688. package/src/web/popper/trigger.vue +0 -166
  689. package/src/web/popper/types.ts +0 -49
  690. package/src/web/popper/utils.ts +0 -81
  691. package/src/web/qrcode/drawCanvas.ts +0 -32
  692. package/src/web/qrcode/drawLogo.ts +0 -82
  693. package/src/web/qrcode/index.ts +0 -5
  694. package/src/web/qrcode/index.vue +0 -107
  695. package/src/web/qrcode/qrcodePlus.ts +0 -4
  696. package/src/web/qrcode/toCanvas.ts +0 -11
  697. package/src/web/qrcode/types.ts +0 -38
  698. package/src/web/result/index.ts +0 -3
  699. package/src/web/result/index.vue +0 -63
  700. package/src/web/scrollbar/bar.vue +0 -48
  701. package/src/web/scrollbar/index.scss +0 -91
  702. package/src/web/scrollbar/index.ts +0 -5
  703. package/src/web/scrollbar/index.vue +0 -236
  704. package/src/web/scrollbar/thumb.vue +0 -183
  705. package/src/web/scrollbar/tokens.ts +0 -10
  706. package/src/web/scrollbar/types.ts +0 -7
  707. package/src/web/scrollbar/util.ts +0 -38
  708. package/src/web/select/constants.ts +0 -13
  709. package/src/web/select/index.ts +0 -11
  710. package/src/web/select/index.vue +0 -555
  711. package/src/web/select/option-group.scss +0 -49
  712. package/src/web/select/option-group.vue +0 -97
  713. package/src/web/select/option-item.scss +0 -66
  714. package/src/web/select/option.scss +0 -32
  715. package/src/web/select/option.vue +0 -110
  716. package/src/web/select/select-dropdown.scss +0 -86
  717. package/src/web/select/select-dropdown.vue +0 -51
  718. package/src/web/select/select.scss +0 -213
  719. package/src/web/select/token.ts +0 -56
  720. package/src/web/select/useOption.ts +0 -146
  721. package/src/web/select/useSelect.ts +0 -942
  722. package/src/web/select/utils.ts +0 -5
  723. package/src/web/side-menu/index.scss +0 -66
  724. package/src/web/side-menu/index.ts +0 -4
  725. package/src/web/side-menu/index.vue +0 -228
  726. package/src/web/side-menu/types.ts +0 -20
  727. package/src/web/single-select/index.scss +0 -60
  728. package/src/web/single-select/index.ts +0 -5
  729. package/src/web/single-select/index.vue +0 -70
  730. package/src/web/single-select/select@2x.png +0 -0
  731. package/src/web/single-select/types.ts +0 -5
  732. package/src/web/svg/index.ts +0 -3
  733. package/src/web/svg/index.vue +0 -22
  734. package/src/web/tabs/index.scss +0 -579
  735. package/src/web/tabs/index.ts +0 -6
  736. package/src/web/tabs/index.vue +0 -236
  737. package/src/web/tabs/tab-bar.vue +0 -90
  738. package/src/web/tabs/tab-nav.vue +0 -403
  739. package/src/web/tabs/tab-pane.vue +0 -90
  740. package/src/web/tabs/types.ts +0 -66
  741. package/src/web/tag/index.scss +0 -182
  742. package/src/web/tag/index.ts +0 -5
  743. package/src/web/tag/index.vue +0 -78
  744. package/src/web/tag/types.ts +0 -2
  745. package/src/web/tooltip/content.vue +0 -239
  746. package/src/web/tooltip/index.ts +0 -4
  747. package/src/web/tooltip/tokens.ts +0 -21
  748. package/src/web/tooltip/tooltip.vue +0 -270
  749. package/src/web/tooltip/trigger.vue +0 -119
  750. package/src/web/tooltip/types.ts +0 -56
  751. package/src/web/tooltip/utils.ts +0 -20
  752. package/src/web/transition/collapse-transition.vue +0 -73
  753. package/src/web/transition/index.ts +0 -5
  754. package/tsconfig.json +0 -8
  755. package/types/index.d.ts +0 -286
  756. /package/{types/component.ts → es/components/types.d.ts} +0 -0
@@ -1,533 +0,0 @@
1
- <script lang="ts" setup>
2
- /* eslint-disable @typescript-eslint/no-unused-vars */
3
- import { UPDATE_MODEL_EVENT } from '@vri/constants';
4
- import { useAttrs } from '@vri/use';
5
- import { isObject, noop, isString, singleAttrToObj, addUnit } from '@vri/utils';
6
- import { isClient, useResizeObserver } from '@vueuse/core';
7
- import { useCursor, useDisabled, useFormItem, useFormItemInputId, useSize } from 'element-plus';
8
- import { isNil } from 'lodash';
9
- import { Icon as VriIcon, type IconProps } from '../../common';
10
- import type { StyleValue } from 'vue';
11
- import {
12
- computed,
13
- nextTick,
14
- onMounted,
15
- ref,
16
- shallowRef,
17
- useAttrs as useRawAttrs,
18
- useSlots,
19
- watch,
20
- getCurrentInstance
21
- } from 'vue';
22
- import { calcTextareaHeight } from './utils';
23
- import { useNamespace } from '../../use';
24
- import { debugWarn } from '../../utils';
25
-
26
- type TargetElement = HTMLInputElement | HTMLTextAreaElement;
27
-
28
- interface InputProps {
29
- id?: string;
30
- size?: 'default' | 'small' | 'large';
31
- disabled?: boolean;
32
- modelValue?: string | number;
33
- type?: string;
34
- resize?: 'none' | 'both' | 'horizontal' | 'vertical';
35
- autosize?: {minRows?: number; maxRows?: number} | boolean;
36
- autocomplete?: string;
37
- formatter?: Function;
38
- parser?: Function;
39
- placeholder?: string;
40
- form?: string;
41
- readonly?: boolean;
42
- clearable?: boolean;
43
- showPassword?: boolean;
44
- showWordLimit?: boolean;
45
- suffixIcon?: IconProps;
46
- prefixIcon?: IconProps;
47
- clearIcon?: IconProps;
48
- containerRole?: string;
49
- label?: string;
50
- tabindex?: string | number;
51
- validateEvent?: boolean;
52
- inputStyle?: StyleValue;
53
- focusWidth?: Numberish
54
- }
55
-
56
- const {
57
- id,
58
- size = '',
59
- disabled,
60
- type = 'text',
61
- autosize = false,
62
- autocomplete = 'off',
63
- tabindex = 0,
64
- validateEvent = true,
65
- modelValue,
66
- resize,
67
- formatter,
68
- parser,
69
- placeholder,
70
- form,
71
- readonly,
72
- clearable,
73
- showPassword,
74
- showWordLimit,
75
- suffixIcon,
76
- prefixIcon,
77
- clearIcon,
78
- containerRole,
79
- label,
80
- inputStyle,
81
- focusWidth
82
- } = defineProps<InputProps>();
83
-
84
- const emit = defineEmits({
85
- [UPDATE_MODEL_EVENT]: (value: string) => isString(value),
86
- input: (value: string) => isString(value),
87
- change: (value: string) => isString(value),
88
- suffixclick: (value) => isString(value),
89
- focus: (evt: FocusEvent) => evt instanceof FocusEvent,
90
- blur: (evt: FocusEvent) => evt instanceof FocusEvent,
91
- clear: () => true,
92
- mouseleave: (evt: MouseEvent) => evt instanceof MouseEvent,
93
- mouseenter: (evt: MouseEvent) => evt instanceof MouseEvent,
94
- // NOTE: when autofill by browser, the keydown event is instanceof Event, not KeyboardEvent
95
- // relative bug report https://github.com/element-plus/element-plus/issues/6665
96
- keydown: (evt: KeyboardEvent | Event) => evt instanceof Event,
97
- compositionstart: (evt: CompositionEvent) => evt instanceof CompositionEvent,
98
- compositionupdate: (evt: CompositionEvent) => evt instanceof CompositionEvent,
99
- compositionend: (evt: CompositionEvent) => evt instanceof CompositionEvent
100
- });
101
-
102
- const rawAttrs = useRawAttrs();
103
- const slots = useSlots();
104
-
105
- const containerAttrs = computed(() => {
106
- const comboBoxAttrs: Record<string, unknown> = {};
107
- if (containerRole === 'combobox') {
108
- comboBoxAttrs['aria-haspopup'] = rawAttrs['aria-haspopup'];
109
- comboBoxAttrs['aria-owns'] = rawAttrs['aria-owns'];
110
- comboBoxAttrs['aria-expanded'] = rawAttrs['aria-expanded'];
111
- }
112
- return comboBoxAttrs;
113
- });
114
-
115
- const containerKls = computed(() => [
116
- type === 'textarea' ? nsTextarea.b() : nsInput.b(),
117
- nsInput.m(inputSize.value),
118
- nsInput.is('disabled', inputDisabled.value),
119
- nsInput.is('exceed', inputExceed.value),
120
- nsInput.is('focus', focused.value),
121
- {
122
- [nsInput.b('group')]: slots.prepend || slots.append,
123
- [nsInput.bm('group', 'append')]: slots.append,
124
- [nsInput.bm('group', 'prepend')]: slots.prepend,
125
- [nsInput.m('prefix')]: slots.prefix || prefixIcon,
126
- [nsInput.m('suffix')]: slots.suffix || suffixIcon || clearable || showPassword,
127
- [nsInput.bm('suffix', 'password-clear')]: showClear.value && showPwdVisible.value
128
- },
129
- rawAttrs.class
130
- ]);
131
-
132
- const instance = getCurrentInstance()!;
133
-
134
- const wrapperKls = computed(() => [nsInput.e('wrapper'), nsInput.is('focus', focused.value)]);
135
-
136
- const attrs = useAttrs({
137
- excludeKeys: computed<string[]>(() => {
138
- return Object.keys(containerAttrs.value);
139
- })
140
- });
141
-
142
- const { form: _form, formItem } = useFormItem();
143
- const { inputId } = useFormItemInputId(instance.props, {
144
- formItemContext: formItem
145
- });
146
- const inputSize = useSize();
147
- const inputDisabled = useDisabled();
148
- const nsInput = useNamespace('input');
149
- const nsTextarea = useNamespace('textarea');
150
-
151
- const input = shallowRef<HTMLInputElement>();
152
- const textarea = shallowRef<HTMLTextAreaElement>();
153
-
154
- const focused = ref(false);
155
- const hovering = ref(false);
156
- const isComposing = ref(false);
157
- const passwordVisible = ref(false);
158
- const countStyle = ref<StyleValue>();
159
- const textareaCalcStyle = shallowRef(inputStyle);
160
-
161
- const _ref = computed(() => input.value || textarea.value);
162
-
163
- const _prefixIcon = computed(() => {
164
- return singleAttrToObj(prefixIcon, 'icon') as IconProps;
165
- });
166
-
167
- const _suffixIcon = computed(() => {
168
- return singleAttrToObj(suffixIcon, 'icon') as IconProps;
169
- });
170
-
171
- const _clearIcon = computed(() => {
172
- return singleAttrToObj(clearIcon, 'icon', { icon: 'vi-close-full', size: 16 }) as IconProps;
173
- });
174
-
175
- const needStatusIcon = computed(() => _form?.statusIcon ?? false);
176
- const validateState = computed(() => formItem?.validateState || '');
177
- const validateIcon = computed(() => validateState.value && 'vi-user');
178
- const passwordIcon = computed(
179
- () => (passwordVisible.value ? { icon: 'vi-view', size: 16 } : { icon: 'vi-no-view', size: 16 }));
180
- const containerStyle = computed<StyleValue>(() => [rawAttrs.style as StyleValue, inputStyle!,
181
- focusWidth && focused.value ? { width: addUnit(focusWidth) } : {}]);
182
-
183
- const textareaStyle = computed<StyleValue>(
184
- () => [inputStyle!, textareaCalcStyle.value as StyleValue, { resize: resize }]);
185
- const nativeInputValue = computed(() => (isNil(modelValue) ? '' : String(modelValue)));
186
- const showClear = computed(
187
- () => clearable && !inputDisabled.value && !readonly && !!nativeInputValue.value && (focused.value || hovering.value));
188
- const showPwdVisible = computed(
189
- () => showPassword && !inputDisabled.value && !readonly && !!nativeInputValue.value && (!!nativeInputValue.value || focused.value));
190
- const isWordLimitVisible = computed(
191
- () => showWordLimit && !!attrs.value.maxlength && (type === 'text' || type === 'textarea') && !inputDisabled.value && !readonly && !showPassword);
192
- const textLength = computed(() => Array.from(nativeInputValue.value).length);
193
- const inputExceed = computed(
194
- () =>
195
- // show exceed style if length of initial value greater then maxlength
196
- !!isWordLimitVisible.value && textLength.value > Number(attrs.value.maxlength)
197
- );
198
- const suffixVisible = computed(
199
- () => !!slots.suffix || !!suffixIcon || showClear.value || showPassword || isWordLimitVisible.value || (!!validateState.value && needStatusIcon.value));
200
-
201
- const [recordCursor, setCursor] = useCursor(input);
202
-
203
- useResizeObserver(textarea, (entries) => {
204
- if (!isWordLimitVisible.value || resize !== 'both') return;
205
- const entry = entries[0];
206
- const { width } = entry.contentRect;
207
- countStyle.value = {
208
- /** right: 100% - width + padding(15) + right(6) */
209
- right: `calc(100% - ${width + 15 + 6}px)`
210
- };
211
- });
212
-
213
- const resizeTextarea = () => {
214
- if (!isClient || type !== 'textarea') return;
215
-
216
- if (autosize) {
217
- const minRows = isObject(autosize) ? autosize.minRows : undefined;
218
- const maxRows = isObject(autosize) ? autosize.maxRows : undefined;
219
- textareaCalcStyle.value = {
220
- ...calcTextareaHeight(textarea.value!, minRows, maxRows)
221
- };
222
- } else {
223
- textareaCalcStyle.value = {
224
- minHeight: calcTextareaHeight(textarea.value!).minHeight
225
- };
226
- }
227
- };
228
-
229
- const setNativeInputValue = () => {
230
- const input = _ref.value;
231
- if (!input || input.value === nativeInputValue.value) return;
232
- input.value = nativeInputValue.value;
233
- };
234
-
235
- const handleInput = async(event: InputEvent) => {
236
- recordCursor();
237
-
238
- let { value } = event.target as TargetElement;
239
-
240
- // 处理 number 下 maxlength 失效的问题
241
- if (attrs.value.maxlength && value.length >= attrs.value.maxlength) {
242
- value = value.slice(0, Number(attrs.value.maxlength));
243
- }
244
-
245
- if (formatter) {
246
- value = parser ? parser(value) : value;
247
- value = formatter(value);
248
- }
249
-
250
- // should not emit input during composition
251
- // see: https://github.com/ElemeFE/element/issues/10516
252
- if (isComposing.value) return;
253
-
254
- // hack for https://github.com/ElemeFE/element/issues/8548
255
- // should remove the following line when we don't support IE
256
- if (value === nativeInputValue.value) {
257
- setNativeInputValue();
258
- return;
259
- }
260
-
261
- emit(UPDATE_MODEL_EVENT, value);
262
- emit('input', value);
263
-
264
- // ensure native input value is controlled
265
- // see: https://github.com/ElemeFE/element/issues/12850
266
- await nextTick();
267
- setNativeInputValue();
268
- setCursor();
269
- };
270
-
271
- const handleChange = (event: Event) => {
272
- emit('change', (event.target as TargetElement).value);
273
- };
274
-
275
- const handleSuffixClick = () => {
276
- emit('suffixclick', modelValue);
277
- };
278
-
279
- const handleCompositionStart = (event: CompositionEvent) => {
280
- emit('compositionstart', event);
281
- isComposing.value = true;
282
- };
283
-
284
- const isKorean = (text: string) => /([(\uAC00-\uD7AF)|(\u3130-\u318F)])+/gi.test(text);
285
-
286
- const handleCompositionUpdate = (event: CompositionEvent) => {
287
- emit('compositionupdate', event);
288
- const text = (event.target as HTMLInputElement)?.value;
289
- const lastCharacter = text[text.length - 1] || '';
290
- isComposing.value = !isKorean(lastCharacter);
291
- };
292
-
293
- const handleCompositionEnd = (event: CompositionEvent) => {
294
- emit('compositionend', event);
295
- if (isComposing.value) {
296
- isComposing.value = false;
297
- handleInput(event);
298
- }
299
- };
300
-
301
- const handlePasswordVisible = () => {
302
- passwordVisible.value = !passwordVisible.value;
303
- focus();
304
- };
305
-
306
- const focus = async() => {
307
- // see: https://github.com/ElemeFE/element/issues/18573
308
- await nextTick();
309
- _ref.value?.focus();
310
- };
311
-
312
- const blur = () => _ref.value?.blur();
313
-
314
- const handleFocus = (event: FocusEvent) => {
315
- focused.value = true;
316
- emit('focus', event);
317
- };
318
-
319
- const handleBlur = (event: FocusEvent) => {
320
- focused.value = false;
321
- emit('blur', event);
322
- if (validateEvent) {
323
- formItem?.validate?.('blur').catch((err) => debugWarn(err));
324
- }
325
- };
326
-
327
- const handleMouseLeave = (evt: MouseEvent) => {
328
- hovering.value = false;
329
- emit('mouseleave', evt);
330
- };
331
-
332
- const handleMouseEnter = (evt: MouseEvent) => {
333
- hovering.value = true;
334
- emit('mouseenter', evt);
335
- };
336
-
337
- const handleKeydown = (evt: KeyboardEvent) => {
338
- let key = evt.key;
339
- if ((evt.target as TargetElement).type === 'number') {
340
- const forbidKey = ['e', '+', '-0', 'E'];
341
- if (forbidKey.includes(key)){
342
- evt.returnValue = false;
343
- return false;
344
- }
345
- }
346
-
347
- emit('keydown', evt);
348
- };
349
-
350
- const select = () => {
351
- _ref.value?.select();
352
- };
353
-
354
- const clear = () => {
355
- emit(UPDATE_MODEL_EVENT, '');
356
- emit('change', '');
357
- emit('clear');
358
- emit('input', '');
359
- };
360
-
361
- watch(
362
- () => modelValue,
363
- () => {
364
- nextTick(() => resizeTextarea());
365
- if (validateEvent) {
366
- formItem?.validate?.('change').catch((err) => debugWarn(err));
367
- }
368
- }
369
- );
370
-
371
- // native input value is set explicitly
372
- // do not use v-model / :value in template
373
- // see: https://github.com/ElemeFE/element/issues/14521
374
- watch(nativeInputValue, () => setNativeInputValue());
375
-
376
- // when change between <input> and <textarea>,
377
- // update DOM dependent value and styles
378
- // https://github.com/ElemeFE/element/issues/14857
379
- watch(
380
- () => type,
381
- async() => {
382
- await nextTick();
383
- setNativeInputValue();
384
- resizeTextarea();
385
- }
386
- );
387
-
388
- onMounted(() => {
389
- if (!formatter && parser) {
390
- debugWarn('VriInput', 'If you set the parser, you also need to set the formatter.');
391
- }
392
- setNativeInputValue();
393
- nextTick(resizeTextarea);
394
- });
395
-
396
- defineExpose({
397
- /** @description HTML input element */
398
- input,
399
- /** @description HTML textarea element */
400
- textarea,
401
- /** @description HTML element, input or textarea */
402
- ref: _ref,
403
- /** @description style of textarea. */
404
- textareaStyle,
405
-
406
- /** @description from props (used on unit test) */
407
- autosize,
408
-
409
- /** @description HTML input element native method */
410
- focus,
411
- /** @description HTML input element native method */
412
- blur,
413
- /** @description HTML input element native method */
414
- select,
415
- /** @description clear input value */
416
- clear,
417
- /** @description resize textarea. */
418
- resizeTextarea
419
- });
420
- </script>
421
-
422
- <template>
423
- <div v-show="type !== 'hidden'" v-bind="containerAttrs" :class="containerKls"
424
- :style="containerStyle" :role="containerRole" @mouseenter="handleMouseEnter"
425
- @mouseleave="handleMouseLeave">
426
- <!-- input -->
427
- <template v-if="type !== 'textarea'">
428
- <!-- prepend slot -->
429
- <div v-if="$slots.prepend" :class="nsInput.be('group', 'prepend')">
430
- <slot name="prepend" />
431
- </div>
432
-
433
- <div :class="wrapperKls">
434
- <!-- prefix slot -->
435
- <span v-if="$slots.prefix || _prefixIcon?.icon" :class="nsInput.e('prefix')">
436
- <span :class="nsInput.e('prefix-inner')" @click="focus">
437
- <slot name="prefix" />
438
- <vri-icon v-if="_prefixIcon?.icon" v-bind="_prefixIcon" :class="nsInput.e('icon')" />
439
- </span>
440
- </span>
441
-
442
- <input
443
- :id="inputId"
444
- ref="input"
445
- :class="nsInput.e('inner')"
446
- v-bind="attrs"
447
- :type="showPassword ? (passwordVisible ? 'text' : 'password') : type"
448
- :disabled="inputDisabled"
449
- :formatter="formatter"
450
- :parser="parser"
451
- :readonly="readonly"
452
- :autocomplete="autocomplete"
453
- :tabindex="tabindex"
454
- :aria-label="label"
455
- :placeholder="placeholder"
456
- :style="inputStyle"
457
- :form="form"
458
- @compositionstart="handleCompositionStart"
459
- @compositionupdate="handleCompositionUpdate"
460
- @compositionend="handleCompositionEnd"
461
- @input="handleInput"
462
- @focus="handleFocus"
463
- @blur="handleBlur"
464
- @change="handleChange"
465
- @keydown="handleKeydown"
466
- />
467
-
468
- <!-- suffix slot -->
469
- <span v-if="suffixVisible" :class="nsInput.e('suffix')">
470
- <span :class="nsInput.e('suffix-inner')" @click="focus">
471
- <template v-if="!showClear || !showPwdVisible || !isWordLimitVisible">
472
- <slot name="suffix" />
473
- <vri-icon
474
- @click="handleSuffixClick"
475
- v-if="_suffixIcon?.icon" v-bind="_suffixIcon" :class="nsInput.e('icon')" />
476
- </template>
477
- <vri-icon v-if="showClear" :class="[nsInput.e('icon'), nsInput.e('clear')]"
478
- v-bind="_clearIcon" @mousedown.prevent="noop" @click="clear" />
479
- <vri-icon v-if="showPwdVisible" v-bind="passwordIcon"
480
- :class="[nsInput.e('icon'), nsInput.e('password')]" @click="handlePasswordVisible" />
481
- <span v-if="isWordLimitVisible" :class="nsInput.e('count')">
482
- <span
483
- :class="nsInput.e('count-inner')">{{ textLength }} / {{ attrs.maxlength }}</span>
484
- </span>
485
- <vri-icon
486
- v-if="validateState && validateIcon && needStatusIcon"
487
- :icon="validateIcon"
488
- :class="[nsInput.e('icon'), nsInput.e('validateIcon'), nsInput.is('loading', validateState === 'validating')]"
489
- />
490
- </span>
491
- </span>
492
- </div>
493
-
494
- <!-- append slot -->
495
- <div v-if="$slots.append" :class="nsInput.be('group', 'append')">
496
- <slot name="append" />
497
- </div>
498
- </template>
499
-
500
- <!-- textarea -->
501
- <template v-else>
502
- <textarea
503
- :id="inputId"
504
- ref="textarea"
505
- :class="nsTextarea.e('inner')"
506
- v-bind="attrs"
507
- :tabindex="tabindex"
508
- :disabled="inputDisabled"
509
- :readonly="readonly"
510
- :autocomplete="autocomplete"
511
- :style="textareaStyle"
512
- :aria-label="label"
513
- :placeholder="placeholder"
514
- :form="form"
515
- @compositionstart="handleCompositionStart"
516
- @compositionupdate="handleCompositionUpdate"
517
- @compositionend="handleCompositionEnd"
518
- @input="handleInput"
519
- @focus="handleFocus"
520
- @blur="handleBlur"
521
- @change="handleChange"
522
- @keydown="handleKeydown"
523
- />
524
- <span v-if="isWordLimitVisible" :style="countStyle"
525
- :class="nsInput.e('count')">{{ textLength }} / {{ attrs.maxlength }}</span>
526
- </template>
527
- </div>
528
- </template>
529
-
530
-
531
- <style lang="scss">
532
- @import './index.scss';
533
- </style>
@@ -1,102 +0,0 @@
1
- import { isNumber } from '@vri/utils';
2
-
3
- let hiddenTextarea: HTMLTextAreaElement | undefined = undefined;
4
-
5
- const HIDDEN_STYLE = `
6
- height:0 !important;
7
- visibility:hidden !important;
8
- overflow:hidden !important;
9
- position:absolute !important;
10
- z-index:-1000 !important;
11
- top:0 !important;
12
- right:0 !important;
13
- `;
14
-
15
- const CONTEXT_STYLE = [
16
- 'letter-spacing',
17
- 'line-height',
18
- 'padding-top',
19
- 'padding-bottom',
20
- 'font-family',
21
- 'font-weight',
22
- 'font-size',
23
- 'text-rendering',
24
- 'text-transform',
25
- 'width',
26
- 'text-indent',
27
- 'padding-left',
28
- 'padding-right',
29
- 'border-width',
30
- 'box-sizing'
31
- ];
32
-
33
- type NodeStyle = {
34
- contextStyle: string;
35
- boxSizing: string;
36
- paddingSize: number;
37
- borderSize: number;
38
- };
39
-
40
- type TextAreaHeight = {
41
- height: string;
42
- minHeight?: string;
43
- };
44
-
45
- function calculateNodeStyling(targetElement: Element): NodeStyle {
46
- const style = window.getComputedStyle(targetElement);
47
-
48
- const boxSizing = style.getPropertyValue('box-sizing');
49
-
50
- const paddingSize = Number.parseFloat(style.getPropertyValue('padding-bottom')) + Number.parseFloat(style.getPropertyValue('padding-top'));
51
-
52
- const borderSize = Number.parseFloat(style.getPropertyValue('border-bottom-width')) + Number.parseFloat(style.getPropertyValue('border-top-width'));
53
-
54
- const contextStyle = CONTEXT_STYLE.map((name) => `${name}:${style.getPropertyValue(name)}`).join(';');
55
-
56
- return { contextStyle, paddingSize, borderSize, boxSizing };
57
- }
58
-
59
- export function calcTextareaHeight(targetElement: HTMLTextAreaElement, minRows = 1, maxRows?: number): TextAreaHeight {
60
- if (!hiddenTextarea) {
61
- hiddenTextarea = document.createElement('textarea');
62
- document.body.appendChild(hiddenTextarea);
63
- }
64
-
65
- const { paddingSize, borderSize, boxSizing, contextStyle } = calculateNodeStyling(targetElement);
66
-
67
- hiddenTextarea.setAttribute('style', `${contextStyle};${HIDDEN_STYLE}`);
68
- hiddenTextarea.value = targetElement.value || targetElement.placeholder || '';
69
-
70
- let height = hiddenTextarea.scrollHeight;
71
- const result = {} as TextAreaHeight;
72
-
73
- if (boxSizing === 'border-box') {
74
- height = height + borderSize;
75
- } else if (boxSizing === 'content-box') {
76
- height = height - paddingSize;
77
- }
78
-
79
- hiddenTextarea.value = '';
80
- const singleRowHeight = hiddenTextarea.scrollHeight - paddingSize;
81
-
82
- if (isNumber(minRows)) {
83
- let minHeight = singleRowHeight * minRows;
84
- if (boxSizing === 'border-box') {
85
- minHeight = minHeight + paddingSize + borderSize;
86
- }
87
- height = Math.max(minHeight, height);
88
- result.minHeight = `${minHeight}px`;
89
- }
90
- if (isNumber(maxRows)) {
91
- let maxHeight = singleRowHeight * maxRows;
92
- if (boxSizing === 'border-box') {
93
- maxHeight = maxHeight + paddingSize + borderSize;
94
- }
95
- height = Math.min(maxHeight, height);
96
- }
97
- result.height = `${height}px`;
98
- hiddenTextarea.parentNode?.removeChild(hiddenTextarea);
99
- hiddenTextarea = undefined;
100
-
101
- return result;
102
- }
@@ -1,4 +0,0 @@
1
- <template>
2
- <div/>
3
- </template>
4
-
@@ -1,31 +0,0 @@
1
- $name: layout-footer;
2
-
3
- @include set-root-css-vars($name, $layout-footer);
4
-
5
- @function getCompCssVar($value) {
6
- @return getCssVar($name, $value);
7
- }
8
-
9
- @include b($name) {
10
- // noinspection CssInvalidPropertyValue
11
- width: calc(100% - getCompCssVar('left'));
12
- background-color: getCompCssVar('bg-color');
13
- height: getCompCssVar('height');
14
- border-top: getCompCssVar('border-top');
15
- display: flex;
16
- justify-content: space-between;
17
- align-items: center;
18
- flex: none;
19
- overflow: hidden;
20
- position: relative;
21
- transition: left .5s;
22
- left: getCompCssVar('left');
23
-
24
- @include e(left) {
25
- min-width: getCompCssVar('left-min-width');
26
- }
27
-
28
- @include e(right) {
29
- min-width: getCompCssVar('right-min-width');
30
- }
31
- }
@@ -1,3 +0,0 @@
1
- import LayoutFooter from './index.vue';
2
-
3
- export { LayoutFooter };