@king-design/intact 2.0.0-beta.0 → 2.0.1

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 (527) hide show
  1. package/README.md +20 -118
  2. package/components/affix/demos/basic.md +2 -1
  3. package/components/affix/demos/custom.md +5 -5
  4. package/components/affix/index.md +2 -2
  5. package/components/affix/styles.ts +1 -1
  6. package/components/badge/demos/text.md +1 -1
  7. package/components/badge/index.md +3 -3
  8. package/components/badge/styles.ts +1 -1
  9. package/components/breadcrumb/demos/basic.md +1 -1
  10. package/components/breadcrumb/index.md +3 -10
  11. package/components/breadcrumb/item.ts +4 -14
  12. package/components/breadcrumb/styles.ts +9 -5
  13. package/components/button/demos/group.md +2 -2
  14. package/components/button/demos/icon.md +1 -0
  15. package/components/button/demos/loading.md +1 -1
  16. package/components/button/demos/tagName.md +0 -1
  17. package/components/button/index.md +13 -13
  18. package/components/button/index.vdt +32 -23
  19. package/components/button/styles.ts +22 -12
  20. package/components/card/demos/basic.md +4 -4
  21. package/components/card/demos/extra.md +13 -7
  22. package/components/card/demos/noHeader.md +4 -4
  23. package/components/card/index.md +3 -3
  24. package/components/card/styles.ts +2 -2
  25. package/components/carousel/index.md +4 -4
  26. package/components/carousel/styles.ts +2 -2
  27. package/components/carousel/useSlide.ts +3 -2
  28. package/components/cascader/demos/loadData.md +1 -1
  29. package/components/cascader/index.md +45 -16
  30. package/components/cascader/index.spec.ts +1 -1
  31. package/components/cascader/styles.ts +1 -1
  32. package/components/checkbox/demos/basic.md +1 -1
  33. package/components/checkbox/demos/indeterminate.md +4 -20
  34. package/components/checkbox/demos/value.md +1 -1
  35. package/components/checkbox/index.md +10 -10
  36. package/components/checkbox/index.vdt +16 -13
  37. package/components/checkbox/styles.ts +3 -7
  38. package/components/code/demos/basic.md +3 -3
  39. package/components/code/index.md +8 -10
  40. package/components/collapse/index.md +8 -8
  41. package/components/collapse/item.vdt +1 -1
  42. package/components/collapse/styles.ts +4 -3
  43. package/components/colorpicker/index.md +3 -3
  44. package/components/colorpicker/index.spec.ts +1 -1
  45. package/components/colorpicker/index.ts +3 -0
  46. package/components/colorpicker/index.vdt +5 -1
  47. package/components/colorpicker/styles.ts +1 -1
  48. package/components/context.ts +14 -7
  49. package/components/datepicker/demos/disabledDate.md +0 -2
  50. package/components/datepicker/demos/format.md +1 -1
  51. package/components/datepicker/demos/shortcuts.md +2 -2
  52. package/components/datepicker/helpers.ts +9 -2
  53. package/components/datepicker/index.md +50 -27
  54. package/components/datepicker/index.spec.ts +1 -1
  55. package/components/datepicker/index.vdt +7 -6
  56. package/components/datepicker/styles.ts +1 -1
  57. package/components/diagram/index.md +108 -59
  58. package/components/diagram/shapes/line.ts +2 -3
  59. package/components/dialog/base.ts +2 -1
  60. package/components/dialog/demos/block.md +10 -56
  61. package/components/dialog/demos/size.md +1 -1
  62. package/components/dialog/index.md +47 -56
  63. package/components/dialog/index.spec.ts +2 -18
  64. package/components/dialog/styles.ts +4 -3
  65. package/components/dialog/useFixBody.ts +16 -0
  66. package/components/drawer/index.md +23 -20
  67. package/components/drawer/index.spec.ts +5 -5
  68. package/components/drawer/styles.ts +2 -2
  69. package/components/dropdown/demos/basic.md +4 -16
  70. package/components/dropdown/demos/contextmenu.md +1 -7
  71. package/components/dropdown/demos/disabled.md +1 -1
  72. package/components/dropdown/demos/nested.md +2 -4
  73. package/components/dropdown/demos/position.md +5 -6
  74. package/components/dropdown/demos/trigger.md +2 -4
  75. package/components/dropdown/dropdown.ts +2 -0
  76. package/components/dropdown/index.md +26 -15
  77. package/components/dropdown/index.spec.ts +3 -3
  78. package/components/dropdown/index.ts +1 -2
  79. package/components/dropdown/styles.ts +2 -2
  80. package/components/editable/index.md +10 -15
  81. package/components/editable/index.vdt +1 -0
  82. package/components/editable/styles.ts +1 -1
  83. package/components/form/demos/basic.md +15 -15
  84. package/components/form/index.md +29 -13
  85. package/components/form/index.spec.ts +8 -8
  86. package/components/form/item.vdt +6 -1
  87. package/components/form/methods.ts +6 -1
  88. package/components/form/styles.ts +1 -1
  89. package/components/form/useError.ts +3 -0
  90. package/components/form/useValidate.ts +2 -2
  91. package/components/grid/col.vdt +1 -1
  92. package/components/grid/index.md +34 -13
  93. package/components/grid/styles.ts +4 -1
  94. package/components/icon/index.md +4 -2
  95. package/components/icon/index.vdt +2 -2
  96. package/components/icon/styles.ts +11 -8
  97. package/components/input/demos/blocks.md +2 -2
  98. package/components/input/demos/clearable.md +3 -3
  99. package/components/input/demos/inline.md +12 -0
  100. package/components/input/demos/size.md +0 -1
  101. package/components/input/index.md +18 -22
  102. package/components/input/index.ts +2 -0
  103. package/components/input/index.vdt +42 -33
  104. package/components/input/search.vdt +4 -1
  105. package/components/input/styles.ts +8 -12
  106. package/components/layout/demos/asideFix.md +2 -3
  107. package/components/layout/index.md +5 -5
  108. package/components/layout/styles.ts +5 -4
  109. package/components/menu/index.md +11 -11
  110. package/components/menu/index.spec.ts +2 -2
  111. package/components/menu/item.ts +5 -12
  112. package/components/menu/styles.ts +6 -5
  113. package/components/message/index.md +23 -25
  114. package/components/message/index.spec.ts +1 -1
  115. package/components/message/styles.ts +7 -3
  116. package/components/pagination/index.md +11 -19
  117. package/components/pagination/styles.ts +2 -2
  118. package/components/progress/demos/customColor.md +1 -1
  119. package/components/progress/index.md +11 -5
  120. package/components/progress/styles.ts +2 -2
  121. package/components/radio/index.md +4 -7
  122. package/components/radio/index.vdt +15 -12
  123. package/components/radio/styles.ts +6 -10
  124. package/components/rate/index.md +5 -5
  125. package/components/rate/styles.ts +3 -2
  126. package/components/scrollSelect/index.md +14 -5
  127. package/components/scrollSelect/styles.ts +7 -2
  128. package/components/select/base.ts +0 -1
  129. package/components/select/base.vdt +128 -112
  130. package/components/select/demos/creatable.md +1 -1
  131. package/components/select/demos/customMenu.md +1 -1
  132. package/components/select/demos/format.md +3 -7
  133. package/components/select/index.md +35 -30
  134. package/components/select/index.spec.ts +1 -1
  135. package/components/select/menu.vdt +1 -0
  136. package/components/select/styles.ts +15 -9
  137. package/components/slider/demos/marks.md +2 -2
  138. package/components/slider/index.md +31 -16
  139. package/components/slider/styles.ts +5 -4
  140. package/components/spin/index.md +2 -2
  141. package/components/spin/styles.ts +1 -1
  142. package/components/spinner/index.md +23 -14
  143. package/components/spinner/index.ts +2 -2
  144. package/components/spinner/styles.ts +1 -1
  145. package/components/split/index.md +7 -7
  146. package/components/split/style.ts +2 -2
  147. package/components/steps/index.md +3 -3
  148. package/components/steps/styles.ts +3 -2
  149. package/components/switch/index.md +10 -19
  150. package/components/switch/styles.ts +5 -4
  151. package/components/table/demos/animation.md +92 -0
  152. package/components/table/demos/basic.md +1 -1
  153. package/components/table/demos/checkedKeys.md +2 -3
  154. package/components/table/demos/disableRow.md +2 -2
  155. package/components/table/demos/empty.md +1 -1
  156. package/components/table/demos/export.md +8 -7
  157. package/components/table/demos/fixColumn.md +2 -2
  158. package/components/table/demos/fixHeader.md +3 -3
  159. package/components/table/demos/group.md +3 -3
  160. package/components/table/demos/mergeCell.md +1 -1
  161. package/components/table/demos/resizable.md +1 -1
  162. package/components/table/demos/rowClassName.md +1 -1
  163. package/components/table/demos/rowExpandable.md +2 -6
  164. package/components/table/demos/sort.md +2 -1
  165. package/components/table/demos/stickHeader.md +3 -3
  166. package/components/table/demos/stickScrollbar.md +3 -3
  167. package/components/table/demos/tooltip.md +1 -2
  168. package/components/table/index.md +92 -66
  169. package/components/table/index.spec.ts +5 -2
  170. package/components/table/index.ts +1 -0
  171. package/components/table/row.vdt +5 -1
  172. package/components/table/styles.ts +17 -5
  173. package/components/table/table.ts +2 -0
  174. package/components/table/table.vdt +91 -86
  175. package/components/table/useFixedColumns.ts +5 -3
  176. package/components/table/useWidth.ts +11 -2
  177. package/components/tabs/index.md +15 -8
  178. package/components/tabs/index.spec.ts +1 -1
  179. package/components/tabs/styles.ts +11 -7
  180. package/components/tabs/tab.vdt +1 -1
  181. package/components/tabs/useActiveBar.ts +3 -2
  182. package/components/tag/base.ts +3 -0
  183. package/components/tag/demos/border.md +2 -1
  184. package/components/tag/index.md +4 -3
  185. package/components/tag/styles.ts +9 -4
  186. package/components/timeline/styles.ts +3 -3
  187. package/components/timepicker/constants.ts +3 -2
  188. package/components/timepicker/demos/basic.md +2 -2
  189. package/components/timepicker/demos/step.md +1 -1
  190. package/components/timepicker/index.md +47 -16
  191. package/components/timepicker/index.spec.ts +11 -10
  192. package/components/timepicker/styles.ts +1 -1
  193. package/components/timepicker/useStep.ts +3 -3
  194. package/components/timepicker/useValue.ts +2 -2
  195. package/components/tip/demos/closable.md +1 -1
  196. package/components/tip/index.md +8 -4
  197. package/components/tip/styles.ts +1 -1
  198. package/components/tooltip/demos/basic.md +2 -13
  199. package/components/tooltip/demos/trigger.md +1 -2
  200. package/components/tooltip/index.md +26 -13
  201. package/components/tooltip/index.spec.ts +24 -15
  202. package/components/tooltip/styles.ts +1 -1
  203. package/components/transfer/index.md +36 -23
  204. package/components/transfer/index.spec.ts +7 -6
  205. package/components/transfer/styles.ts +3 -9
  206. package/components/tree/index.md +76 -49
  207. package/components/tree/index.spec.ts +13 -12
  208. package/components/tree/index.ts +1 -0
  209. package/components/tree/index.vdt +1 -0
  210. package/components/tree/styles.ts +7 -4
  211. package/components/treeSelect/index.md +50 -20
  212. package/components/treeSelect/index.spec.ts +5 -5
  213. package/components/treeSelect/styles.ts +3 -2
  214. package/components/upload/index.md +55 -19
  215. package/components/upload/index.spec.ts +1 -1
  216. package/components/upload/index.ts +1 -1
  217. package/components/upload/index.vdt +3 -4
  218. package/components/upload/styles.ts +5 -4
  219. package/components/utils.ts +1 -1
  220. package/components/wave/index.ts +94 -0
  221. package/components/wave/styles.ts +50 -0
  222. package/es/components/breadcrumb/item.d.ts +1 -1
  223. package/es/components/breadcrumb/item.js +3 -14
  224. package/es/components/breadcrumb/styles.js +1 -1
  225. package/es/components/button/index.vdt.js +26 -17
  226. package/es/components/button/styles.d.ts +82 -1
  227. package/es/components/button/styles.js +16 -2
  228. package/es/components/card/styles.js +1 -1
  229. package/es/components/carousel/styles.js +4 -1
  230. package/es/components/carousel/useSlide.js +10 -9
  231. package/es/components/cascader/index.spec.js +1 -1
  232. package/es/components/checkbox/index.vdt.js +15 -10
  233. package/es/components/checkbox/styles.js +2 -2
  234. package/es/components/collapse/item.vdt.js +2 -1
  235. package/es/components/collapse/styles.js +5 -1
  236. package/es/components/colorpicker/index.d.ts +2 -0
  237. package/es/components/colorpicker/index.js +2 -1
  238. package/es/components/colorpicker/index.spec.js +1 -1
  239. package/es/components/colorpicker/index.vdt.js +3 -1
  240. package/es/components/context.d.ts +5 -2
  241. package/es/components/context.js +7 -4
  242. package/es/components/datepicker/helpers.d.ts +2 -1
  243. package/es/components/datepicker/helpers.js +8 -2
  244. package/es/components/datepicker/index.spec.js +1 -1
  245. package/es/components/datepicker/index.vdt.js +10 -5
  246. package/es/components/datepicker/styles.d.ts +46 -1
  247. package/es/components/diagram/shapes/generateShapes.js +3 -3
  248. package/es/components/diagram/shapes/line.d.ts +2 -2
  249. package/es/components/diagram/shapes/line.js +0 -1
  250. package/es/components/dialog/base.d.ts +2 -0
  251. package/es/components/dialog/base.js +2 -1
  252. package/es/components/dialog/index.spec.js +59 -94
  253. package/es/components/dialog/styles.js +5 -1
  254. package/es/components/dialog/useFixBody.d.ts +6 -0
  255. package/es/components/dialog/useFixBody.js +12 -0
  256. package/es/components/drawer/index.spec.js +5 -5
  257. package/es/components/drawer/styles.js +1 -1
  258. package/es/components/dropdown/dropdown.js +1 -0
  259. package/es/components/dropdown/index.js +1 -2
  260. package/es/components/dropdown/index.spec.js +3 -3
  261. package/es/components/dropdown/styles.js +1 -1
  262. package/es/components/editable/index.vdt.js +2 -1
  263. package/es/components/editable/styles.d.ts +8 -1
  264. package/es/components/form/index.spec.js +8 -8
  265. package/es/components/form/item.vdt.js +13 -9
  266. package/es/components/form/useError.d.ts +4 -0
  267. package/es/components/form/useError.js +3 -1
  268. package/es/components/form/useValidate.js +2 -2
  269. package/es/components/grid/col.vdt.js +4 -2
  270. package/es/components/grid/styles.js +1 -1
  271. package/es/components/grid/useGutter.d.ts +1 -1
  272. package/es/components/icon/index.vdt.js +3 -2
  273. package/es/components/icon/styles.js +8 -4
  274. package/es/components/input/index.d.ts +1 -0
  275. package/es/components/input/index.js +2 -1
  276. package/es/components/input/index.vdt.js +47 -32
  277. package/es/components/input/search.vdt.js +4 -2
  278. package/es/components/input/styles.js +8 -3
  279. package/es/components/layout/styles.d.ts +1 -1
  280. package/es/components/layout/styles.js +7 -3
  281. package/es/components/menu/index.spec.js +2 -2
  282. package/es/components/menu/item.d.ts +1 -1
  283. package/es/components/menu/item.js +4 -13
  284. package/es/components/menu/styles.d.ts +62 -1
  285. package/es/components/menu/styles.js +6 -2
  286. package/es/components/message/index.spec.js +1 -1
  287. package/es/components/message/styles.js +6 -2
  288. package/es/components/pagination/styles.js +1 -1
  289. package/es/components/radio/index.vdt.js +14 -9
  290. package/es/components/radio/styles.js +9 -1
  291. package/es/components/rate/styles.js +5 -1
  292. package/es/components/scrollSelect/styles.d.ts +14 -1
  293. package/es/components/scrollSelect/styles.js +9 -1
  294. package/es/components/select/base.vdt.js +135 -121
  295. package/es/components/select/index.spec.js +1 -1
  296. package/es/components/select/menu.vdt.js +1 -0
  297. package/es/components/select/styles.js +9 -4
  298. package/es/components/select/useSearchable.d.ts +1 -1
  299. package/es/components/slider/styles.js +5 -1
  300. package/es/components/spinner/index.d.ts +1 -1
  301. package/es/components/spinner/index.js +1 -1
  302. package/es/components/split/style.js +1 -1
  303. package/es/components/steps/context.d.ts +1 -1
  304. package/es/components/steps/styles.js +5 -1
  305. package/es/components/switch/styles.js +5 -1
  306. package/es/components/table/index.d.ts +1 -0
  307. package/es/components/table/index.spec.js +3 -2
  308. package/es/components/table/row.vdt.js +12 -4
  309. package/es/components/table/styles.js +6 -1
  310. package/es/components/table/table.d.ts +1 -0
  311. package/es/components/table/table.js +2 -1
  312. package/es/components/table/table.vdt.js +30 -27
  313. package/es/components/table/useColumns.d.ts +1 -1
  314. package/es/components/table/useFixedColumns.d.ts +1 -1
  315. package/es/components/table/useFixedColumns.js +5 -2
  316. package/es/components/table/useGroup.d.ts +1 -1
  317. package/es/components/table/useResizable.d.ts +1 -1
  318. package/es/components/table/useSortable.d.ts +1 -1
  319. package/es/components/table/useWidth.js +13 -2
  320. package/es/components/tabs/index.spec.js +1 -1
  321. package/es/components/tabs/styles.js +9 -2
  322. package/es/components/tabs/tab.vdt.js +2 -1
  323. package/es/components/tabs/useActiveBar.js +6 -3
  324. package/es/components/tag/base.js +1 -0
  325. package/es/components/tag/styles.js +8 -2
  326. package/es/components/timepicker/constants.d.ts +2 -1
  327. package/es/components/timepicker/constants.js +3 -2
  328. package/es/components/timepicker/index.spec.js +36 -35
  329. package/es/components/timepicker/useStep.js +3 -3
  330. package/es/components/timepicker/useValue.js +2 -2
  331. package/es/components/tooltip/index.spec.js +32 -25
  332. package/es/components/transfer/index.spec.js +20 -19
  333. package/es/components/transfer/styles.js +2 -6
  334. package/es/components/tree/index.d.ts +1 -1
  335. package/es/components/tree/index.js +1 -1
  336. package/es/components/tree/index.spec.js +20 -19
  337. package/es/components/tree/index.vdt.js +1 -0
  338. package/es/components/tree/styles.js +5 -1
  339. package/es/components/treeSelect/index.spec.js +5 -5
  340. package/es/components/treeSelect/styles.js +5 -1
  341. package/es/components/upload/index.d.ts +1 -1
  342. package/es/components/upload/index.spec.js +1 -1
  343. package/es/components/upload/index.vdt.js +10 -11
  344. package/es/components/upload/styles.js +5 -1
  345. package/es/components/utils.d.ts +1 -1
  346. package/es/components/wave/index.d.ts +19 -0
  347. package/es/components/wave/index.js +120 -0
  348. package/es/components/wave/styles.d.ts +2 -0
  349. package/es/components/wave/styles.js +17 -0
  350. package/es/hooks/useRouter.d.ts +1 -0
  351. package/es/hooks/useRouter.js +10 -0
  352. package/es/i18n/en-US.d.ts +1 -0
  353. package/es/i18n/en-US.js +1 -0
  354. package/es/index.d.ts +3 -2
  355. package/es/index.js +3 -2
  356. package/es/packages/kpc-react/__tests__/index.js +10 -7
  357. package/es/site/data/components/affix/demos/custom/index.d.ts +2 -2
  358. package/es/site/data/components/affix/demos/custom/index.js +4 -4
  359. package/es/site/data/components/affix/demos/custom/react.d.ts +2 -2
  360. package/es/site/data/components/affix/demos/custom/react.js +6 -6
  361. package/es/site/data/components/button/demos/group/react.js +2 -2
  362. package/es/site/data/components/button/demos/icon/react.js +6 -0
  363. package/es/site/data/components/card/demos/basic/react.js +2 -2
  364. package/es/site/data/components/card/demos/extra/react.js +19 -5
  365. package/es/site/data/components/card/demos/noHeader/react.js +2 -2
  366. package/es/site/data/components/checkbox/demos/indeterminate/index.d.ts +1 -1
  367. package/es/site/data/components/checkbox/demos/indeterminate/index.js +2 -2
  368. package/es/site/data/components/checkbox/demos/indeterminate/react.d.ts +1 -1
  369. package/es/site/data/components/checkbox/demos/indeterminate/react.js +5 -6
  370. package/es/site/data/components/dialog/demos/block/react.d.ts +9 -0
  371. package/es/site/data/components/dialog/demos/block/react.js +88 -0
  372. package/es/site/data/components/dropdown/demos/basic/react.js +1 -3
  373. package/es/site/data/components/dropdown/demos/nested/react.js +1 -3
  374. package/es/site/data/components/dropdown/demos/position/react.js +2 -7
  375. package/es/site/data/components/dropdown/demos/trigger/react.js +1 -3
  376. package/es/site/data/components/input/demos/blocks/react.js +4 -2
  377. package/es/site/data/components/input/demos/clearable/react.js +7 -5
  378. package/es/site/data/components/{dialog/demos/extends → input/demos/inline}/index.d.ts +0 -3
  379. package/es/site/data/components/input/demos/inline/index.js +17 -0
  380. package/es/site/data/components/input/demos/inline/react.d.ts +4 -0
  381. package/es/site/data/components/input/demos/inline/react.js +24 -0
  382. package/es/site/data/components/input/demos/size/react.js +0 -3
  383. package/es/site/data/components/layout/demos/asideFix/react.js +2 -1
  384. package/es/site/data/components/select/demos/creatable/react.js +1 -1
  385. package/es/site/data/components/select/demos/customMenu/react.js +1 -0
  386. package/es/site/data/components/select/demos/format/react.js +11 -18
  387. package/es/site/data/components/table/demos/animation/index.d.ts +23 -0
  388. package/es/site/data/components/table/demos/animation/index.js +78 -0
  389. package/es/site/data/components/table/demos/animation/react.d.ts +23 -0
  390. package/es/site/data/components/table/demos/animation/react.js +113 -0
  391. package/es/site/data/components/table/demos/export/react.js +1 -2
  392. package/es/site/data/components/table/demos/sort/react.js +4 -1
  393. package/es/site/data/components/tag/demos/border/react.js +3 -1
  394. package/es/site/data/components/tip/demos/closable/react.js +1 -0
  395. package/es/site/data/components/tooltip/demos/trigger/react.js +1 -2
  396. package/es/site/data/docs/design/{button → about}/index.d.ts +13 -11
  397. package/es/site/data/docs/design/{8point → about}/index.js +0 -0
  398. package/es/site/data/docs/design/{dialog → guide-1}/index.d.ts +15 -11
  399. package/es/site/data/docs/design/{button → guide-1}/index.js +0 -0
  400. package/es/site/data/docs/design/guide-2/index.d.ts +64 -0
  401. package/es/site/data/docs/design/{color → guide-2}/index.js +0 -0
  402. package/es/site/data/docs/design/guide-3/index.d.ts +64 -0
  403. package/es/site/data/docs/design/{dialog → guide-3}/index.js +0 -0
  404. package/es/site/data/docs/design/guide-4/index.d.ts +64 -0
  405. package/es/site/data/docs/design/{font → guide-4}/index.js +0 -0
  406. package/es/site/data/docs/design/guide-5/index.d.ts +64 -0
  407. package/es/site/data/docs/design/{format → guide-5}/index.js +0 -0
  408. package/es/site/data/docs/design/guide-6/index.d.ts +64 -0
  409. package/es/site/data/docs/design/{gutter → guide-6}/index.js +0 -0
  410. package/es/site/data/docs/design/guide-7/index.d.ts +64 -0
  411. package/es/site/data/docs/design/{hierarchy → guide-7}/index.js +0 -0
  412. package/es/site/data/docs/design/guide-8/index.d.ts +64 -0
  413. package/es/site/data/docs/design/{language → guide-8}/index.js +0 -0
  414. package/es/site/data/docs/design/guide-9/index.d.ts +64 -0
  415. package/es/site/data/docs/design/{navigator → guide-9}/index.js +0 -0
  416. package/es/site/data/docs/design/model/index.d.ts +64 -0
  417. package/es/site/data/docs/design/{tip → model}/index.js +0 -0
  418. package/es/site/data/docs/design/model-1/index.d.ts +64 -0
  419. package/es/site/data/docs/design/{text → model-1}/index.js +0 -0
  420. package/es/site/data/docs/design/pattern-1/index.d.ts +64 -0
  421. package/es/site/data/docs/design/pattern-1/index.js +42 -0
  422. package/es/site/data/docs/design/pattern-2/index.d.ts +64 -0
  423. package/es/site/data/docs/design/pattern-2/index.js +42 -0
  424. package/es/site/data/docs/design/pattern-3/index.d.ts +64 -0
  425. package/es/site/data/docs/design/pattern-3/index.js +42 -0
  426. package/es/site/data/docs/design/pattern-4/index.d.ts +64 -0
  427. package/es/site/data/docs/design/pattern-4/index.js +42 -0
  428. package/es/site/data/docs/design/pattern-5/index.d.ts +64 -0
  429. package/es/site/data/docs/design/pattern-5/index.js +42 -0
  430. package/es/site/data/docs/design/pattern-6/index.d.ts +64 -0
  431. package/es/site/data/docs/design/pattern-6/index.js +42 -0
  432. package/es/site/data/docs/design/{navigator → principle}/index.d.ts +13 -11
  433. package/es/site/data/docs/design/principle/index.js +42 -0
  434. package/es/site/data/docs/design/{tip → value}/index.d.ts +13 -11
  435. package/es/site/data/docs/design/value/index.js +42 -0
  436. package/es/site/data/docs/theme/index.d.ts +0 -2
  437. package/es/site/src/client.js +3 -0
  438. package/es/site/src/components/ImgBox/index.d.ts +21 -0
  439. package/es/site/src/components/ImgBox/index.js +69 -0
  440. package/es/site/src/{pages/designdoc → components/ImgBox}/styles.d.ts +0 -0
  441. package/es/site/src/components/ImgBox/styles.js +13 -0
  442. package/es/site/src/components/WorkflowCard/styles.js +3 -10
  443. package/es/site/src/components/article/index.d.ts +4 -1
  444. package/es/site/src/components/article/index.js +72 -6
  445. package/es/site/src/components/blockquote/index.d.ts +4 -0
  446. package/es/site/src/components/blockquote/index.js +13 -0
  447. package/es/site/src/components/blockquote/slot.d.ts +11 -0
  448. package/es/site/src/components/blockquote/slot.js +19 -0
  449. package/es/site/src/components/card/index.d.ts +1 -1
  450. package/es/site/src/components/card/index.js +4 -1
  451. package/es/site/src/components/card/styles.js +2 -10
  452. package/es/site/src/components/catalogue/index.js +2 -2
  453. package/es/site/src/components/catalogue/styles.js +1 -1
  454. package/es/site/src/components/footer/styles.js +2 -2
  455. package/es/site/src/components/link/index.d.ts +1 -0
  456. package/es/site/src/components/link/index.js +11 -3
  457. package/es/site/src/pages/design/index.d.ts +1 -0
  458. package/es/site/src/pages/design/index.js +19 -0
  459. package/es/site/src/pages/design/styles.d.ts +1 -0
  460. package/es/site/src/pages/design/styles.js +13 -0
  461. package/es/site/src/pages/document/index.d.ts +4 -2
  462. package/es/site/src/pages/document/index.js +89 -46
  463. package/es/site/src/pages/document/styles.js +1 -1
  464. package/es/site/src/pages/iframe/button/styles.js +4 -4
  465. package/es/site/src/pages/iframe/colorProcess/index.d.ts +1 -0
  466. package/es/site/src/pages/iframe/colorProcess/index.js +9 -5
  467. package/es/site/src/pages/iframe/colorProcess/styles.js +1 -1
  468. package/es/site/src/pages/index/BestPractice/index.d.ts +1 -0
  469. package/es/site/src/pages/index/BestPractice/index.js +14 -14
  470. package/es/site/src/pages/index/BestPractice/styles.d.ts +1 -1
  471. package/es/site/src/pages/index/BestPractice/styles.js +3 -3
  472. package/es/site/src/pages/index/ColorProcess/styles.d.ts +1 -1
  473. package/es/site/src/pages/index/ColorProcess/styles.js +14 -2
  474. package/es/site/src/pages/index/KingVersion/styles.js +1 -1
  475. package/es/site/src/pages/index/NewFunction/index.d.ts +1 -0
  476. package/es/site/src/pages/index/NewFunction/index.js +4 -2
  477. package/es/site/src/pages/index/NewFunction/styles.d.ts +1 -1
  478. package/es/site/src/pages/index/NewFunction/styles.js +4 -3
  479. package/es/site/src/pages/index/index.d.ts +2 -7
  480. package/es/site/src/pages/index/index.js +11 -8
  481. package/es/site/src/pages/index/styles.js +2 -4
  482. package/es/site/src/pages/layout.d.ts +2 -0
  483. package/es/site/src/pages/layout.js +33 -4
  484. package/es/site/src/pages/resource/index.d.ts +6 -0
  485. package/es/site/src/pages/resource/index.js +21 -1
  486. package/es/site/src/pages/resource/styles.js +5 -3
  487. package/es/site/src/pages/solution/index.d.ts +6 -0
  488. package/es/site/src/pages/solution/index.js +19 -1
  489. package/es/site/src/pages/solution/styles.js +3 -2
  490. package/es/site/src/pages/styles.d.ts +1 -0
  491. package/es/site/src/pages/styles.js +5 -2
  492. package/es/site/src/router/index.d.ts +1 -0
  493. package/es/site/src/router/index.js +327 -318
  494. package/es/site/src/styles/default.d.ts +1 -0
  495. package/es/site/src/styles/default.js +3 -2
  496. package/es/styles/global.js +4 -3
  497. package/es/styles/theme.d.ts +16 -7
  498. package/es/styles/theme.js +15 -7
  499. package/hooks/useRouter.ts +11 -0
  500. package/i18n/en-US.ts +1 -0
  501. package/index.ts +3 -2
  502. package/package.json +6 -6
  503. package/styles/global.ts +41 -8
  504. package/styles/theme.ts +12 -8
  505. package/typings/global.d.ts +2 -0
  506. package/components/dialog/demos/asyncOpen.md +0 -111
  507. package/components/dialog/demos/extends.md +0 -87
  508. package/es/site/data/components/dialog/demos/asyncOpen/dialog.d.ts +0 -28
  509. package/es/site/data/components/dialog/demos/asyncOpen/dialog.js +0 -45
  510. package/es/site/data/components/dialog/demos/asyncOpen/index.d.ts +0 -13
  511. package/es/site/data/components/dialog/demos/asyncOpen/index.js +0 -58
  512. package/es/site/data/components/dialog/demos/extends/dialog.d.ts +0 -28
  513. package/es/site/data/components/dialog/demos/extends/dialog.js +0 -39
  514. package/es/site/data/components/dialog/demos/extends/index.js +0 -49
  515. package/es/site/data/docs/design/8point/index.d.ts +0 -58
  516. package/es/site/data/docs/design/color/demos/demos0/index.d.ts +0 -3
  517. package/es/site/data/docs/design/color/demos/demos0/index.js +0 -3
  518. package/es/site/data/docs/design/color/index.d.ts +0 -56
  519. package/es/site/data/docs/design/font/index.d.ts +0 -58
  520. package/es/site/data/docs/design/format/index.d.ts +0 -58
  521. package/es/site/data/docs/design/gutter/index.d.ts +0 -58
  522. package/es/site/data/docs/design/hierarchy/index.d.ts +0 -58
  523. package/es/site/data/docs/design/language/index.d.ts +0 -56
  524. package/es/site/data/docs/design/text/index.d.ts +0 -58
  525. package/es/site/src/pages/designdoc/index.d.ts +0 -11
  526. package/es/site/src/pages/designdoc/index.js +0 -21
  527. package/es/site/src/pages/designdoc/styles.js +0 -6
@@ -4,6 +4,8 @@ import {deepDefaults, palette} from '../../styles/utils';
4
4
  import '../../styles/global';
5
5
 
6
6
  const defaults = {
7
+ get transition() { return theme.transition.large },
8
+ // transition: '15000s',
7
9
  border: `1px solid #e5e5e5`,
8
10
  fontSize: `12px`,
9
11
  bgColor: `#fff`,
@@ -61,7 +63,7 @@ const defaults = {
61
63
  draggingOpacity: `.4`,
62
64
  };
63
65
 
64
- let table: any;
66
+ let table: typeof defaults;
65
67
  setDefault(() => {
66
68
  table = deepDefaults(theme, {table: defaults}).table;
67
69
  });
@@ -82,6 +84,11 @@ export function makeStyles() {
82
84
  // border-collapse: collapse;
83
85
  border-spacing: 0;
84
86
  table-layout: fixed;
87
+
88
+ td,
89
+ th{
90
+ transition: all ${table.transition};
91
+ }
85
92
  }
86
93
 
87
94
  // thead
@@ -131,7 +138,8 @@ export function makeStyles() {
131
138
  background: ${table.tbody.hoverBgcolor};
132
139
  }
133
140
  &:last-of-type td {
134
- border-bottom: none;
141
+ // border-bottom: none;
142
+ border-bottom-color: transparent;
135
143
  }
136
144
  }
137
145
  }
@@ -152,7 +160,7 @@ export function makeStyles() {
152
160
  &:after {
153
161
  content: '';
154
162
  display: block;
155
- transition: box-shadow ${theme.transition};
163
+ transition: box-shadow ${table.transition};
156
164
  position: absolute;
157
165
  top: 0;
158
166
  bottom: 0px;
@@ -192,6 +200,9 @@ export function makeStyles() {
192
200
  .k-affix-wrapper {
193
201
  overflow: hidden;
194
202
  }
203
+ &.k-fixed {
204
+ position: relative;
205
+ }
195
206
  }
196
207
 
197
208
  // type
@@ -233,7 +244,7 @@ export function makeStyles() {
233
244
  // position: absolute;
234
245
  // top: -1px;
235
246
  // left: 2px;
236
- transition: transform ${theme.transition};
247
+ transition: transform ${table.transition};
237
248
  }
238
249
  &.k-dropdown-open .k-icon {
239
250
  transform: rotate(180deg);
@@ -293,6 +304,7 @@ export function makeStyles() {
293
304
  }
294
305
  .k-table-expand {
295
306
  border-top: ${table.border};
307
+ box-sizing: content-box;
296
308
  }
297
309
 
298
310
  // select
@@ -306,7 +318,7 @@ export function makeStyles() {
306
318
  // }
307
319
  .k-table-arrow {
308
320
  margin-right: ${table.arrow.gap};
309
- transition: transform ${theme.transition};
321
+ transition: transform ${table.transition};
310
322
  position: relative;
311
323
  top: -1px;
312
324
  }
@@ -58,6 +58,7 @@ export interface TableProps<
58
58
  resizable?: boolean
59
59
  minColWidth?: number
60
60
  widthStoreKey?: string
61
+ draggable?: boolean
61
62
  }
62
63
 
63
64
  export interface TableEvents<T = any, K extends TableRowKey = number> {
@@ -114,6 +115,7 @@ const typeDefs: Required<TypeDefs<TableProps<unknown>>> = {
114
115
  resizable: Boolean,
115
116
  minColWidth: Number,
116
117
  widthStoreKey: String,
118
+ draggable: Boolean,
117
119
  };
118
120
 
119
121
  const defaults = (): Partial<TableProps> => ({
@@ -26,7 +26,7 @@ const {
26
26
  draggable,
27
27
  } = this.get();
28
28
  const {columns, cols, maxRows, maxCols} = this.columns.getData();
29
- const {setScrollPosition, scrollPosition, hasFixed, getHasFixedLeft, getOffsetMap} = this.fixedColumns;
29
+ const {scrollPosition, hasFixed, getHasFixedLeft, getOffsetMap} = this.fixedColumns;
30
30
  const {scrollRef} = this.scroll;
31
31
  const {stickHeader, excludeStickHeader, elementRef, headRef} = this.stickyHeader;
32
32
  const classNameObj = {
@@ -71,20 +71,23 @@ const thead = (
71
71
  <FixedColumnsContext.Provider value={offsetMap}>
72
72
  <thead>
73
73
  <tr v-for={columns}>
74
- <th v-if={$key === 0 && checkType !== 'none'}
75
- {...getClassAndStyleForFixed({
76
- fixed: hasFixedLeft ? 'left' : false,
77
- }, 0)}
78
- rowspan={maxRows}
79
- >
80
- <Checkbox v-if={checkType === 'checkbox'}
81
- value={allCheckedStatus === AllCheckedStatus.All}
82
- indeterminate={showIndeterminate && allCheckedStatus == AllCheckedStatus.Indeterminate}
83
- ev-$change:value={toggleCheckedAll}
84
- disabled={!hasData}
85
- />
86
- </th>
87
- {$value}
74
+ <TransitionGroup name="k-fade-expand" move={false}>
75
+ <th v-if={$key === 0 && checkType !== 'none'}
76
+ {...getClassAndStyleForFixed({
77
+ fixed: hasFixedLeft ? 'left' : false,
78
+ }, 0)}
79
+ rowspan={maxRows}
80
+ key="$checktype"
81
+ >
82
+ <Checkbox v-if={checkType === 'checkbox'}
83
+ value={allCheckedStatus === AllCheckedStatus.All}
84
+ indeterminate={showIndeterminate && allCheckedStatus == AllCheckedStatus.Indeterminate}
85
+ ev-$change:value={toggleCheckedAll}
86
+ disabled={!hasData}
87
+ />
88
+ </th>
89
+ {$value}
90
+ </TransitionGroup>
88
91
  </tr>
89
92
  </thead>
90
93
  </FixedColumnsContext.Provider>
@@ -104,91 +107,93 @@ const {isSelected} = this.selected;
104
107
  const {loopData, isSpreaded, toggleSpreadRow} = this.tree;
105
108
  const {onRowDragStart, onRowDragOver, onRowDragEnd, draggingKey} = this.draggable;
106
109
  const tbody = (
107
- <TransitionGroup tag="tbody" name="k-fade" move={!draggingKey.value}>
110
+ <tbody>
108
111
  {!hasData ?
109
112
  <tr key="table-empty">
110
113
  <td colspan={colCount} class="k-table-empty">
111
114
  <b:empty>{_$('/(ㄒoㄒ)/~~ 没有找到亲要的数据哦~')}</b:empty>
112
115
  </td>
113
116
  </tr> :
114
- (() => {
115
- const rows = [];
116
- loopData((value, index, level, hidden) => {
117
- // don't render if row is hidden
118
- if (hidden) return hidden;
117
+ <TransitionGroup name="k-fade-in-left" move={!draggingKey.value}>
118
+ {(() => {
119
+ const rows = [];
120
+ loopData((value, index, level, hidden) => {
121
+ // don't render if row is hidden
122
+ if (hidden) return hidden;
119
123
 
120
- const status = allStatus[index];
121
- const key = allKeys[index];
122
- const spreaded = isSpreaded(key);
123
- const hasChildren = !!childrenKey && Array.isArray(value[childrenKey]);
124
- const indentSize = indent ? indent * level : 0;
124
+ const status = allStatus[index];
125
+ const key = allKeys[index];
126
+ const spreaded = isSpreaded(key);
127
+ const hasChildren = !!childrenKey && Array.isArray(value[childrenKey]);
128
+ const indentSize = indent ? indent * level : 0;
125
129
 
126
- let row = <TableRow
127
- key={key}
128
- cols={cols}
129
- data={value}
130
- checkType={checkType}
131
- hasFixedLeft={hasFixedLeft}
132
- onClick={this.clickRow}
133
- checked={status.checked}
134
- indeterminate={status.indeterminate}
135
- index={index}
136
- disabled={status.disabled}
137
- allDisabled={status.allDisabled}
138
- className={rowClassName && rowClassName(value, index, key)}
139
- merge={merge}
140
- grid={getGrid()}
141
- onChangeChecked={onChangeChecked}
142
- selected={isSelected(key)}
143
- spreaded={spreaded}
144
- hasChildren={hasChildren}
145
- indent={indentSize}
146
- onToggleSpreadRow={toggleSpreadRow}
147
- onBeforeUnmount={this.resetRowStatus.onRowBeforeUnmount}
148
- offsetMap={offsetMap}
130
+ let row = <TableRow
131
+ key={key}
132
+ cols={cols}
133
+ data={value}
134
+ checkType={checkType}
135
+ hasFixedLeft={hasFixedLeft}
136
+ onClick={this.clickRow}
137
+ checked={status.checked}
138
+ indeterminate={status.indeterminate}
139
+ index={index}
140
+ disabled={status.disabled}
141
+ allDisabled={status.allDisabled}
142
+ className={rowClassName && rowClassName(value, index, key)}
143
+ merge={merge}
144
+ grid={getGrid()}
145
+ onChangeChecked={onChangeChecked}
146
+ selected={isSelected(key)}
147
+ spreaded={spreaded}
148
+ hasChildren={hasChildren}
149
+ indent={indentSize}
150
+ onToggleSpreadRow={toggleSpreadRow}
151
+ onBeforeUnmount={this.resetRowStatus.onRowBeforeUnmount}
152
+ offsetMap={offsetMap}
149
153
 
150
- draggable={draggable}
151
- draggingKey={draggingKey.value}
152
- onRowDragStart={onRowDragStart}
153
- onRowDragEnd={onRowDragEnd}
154
- onRowDragOver={onRowDragOver}
155
- />
154
+ draggable={draggable}
155
+ draggingKey={draggingKey.value}
156
+ onRowDragStart={onRowDragStart}
157
+ onRowDragEnd={onRowDragEnd}
158
+ onRowDragOver={onRowDragOver}
159
+ />
156
160
 
157
- if ($blocks.tooltip) {
158
- const content = <b:tooltip params={[value, index]} />;
159
- row = (
160
- <Tooltip key={key} position={tooltipPosition} container={tooltipContainer}>
161
- <template>{row}</template>
162
- <b:content>{content}</b:content>
163
- </Tooltip>
164
- );
165
- }
161
+ if ($blocks.tooltip) {
162
+ const content = <b:tooltip params={[value, index]} />;
163
+ row = (
164
+ <Tooltip key={key} position={tooltipPosition} container={tooltipContainer}>
165
+ <template>{row}</template>
166
+ <b:content>{content}</b:content>
167
+ </Tooltip>
168
+ );
169
+ }
166
170
 
167
- rows.push(row);
168
- if ($blocks.expand) {
169
- const expanded = isExpanded(key);
170
- rows.push(
171
- <tr class={{"k-expand": true, 'k-expanded': expanded}}
172
- key={`${key}.$expand`}
173
- >
174
- <td colspan={colCount}>
175
- <Transition {...expandAnimationCallbacks}>
176
- <div v-if={expanded} class="k-table-expand">
177
- <b:expand params={[value, index]} />
178
- </div>
179
- </Transition>
180
- </td>
181
- </tr>
182
- );
183
- }
171
+ rows.push(row);
172
+ if ($blocks.expand) {
173
+ const expanded = isExpanded(key);
174
+ rows.push(
175
+ <tr class={{"k-expand": true, 'k-expanded': expanded}}
176
+ key={`${key}.$expand`}
177
+ >
178
+ <td colspan={colCount}>
179
+ <Transition {...expandAnimationCallbacks}>
180
+ <div v-if={expanded} class="k-table-expand">
181
+ <b:expand params={[value, index]} />
182
+ </div>
183
+ </Transition>
184
+ </td>
185
+ </tr>
186
+ );
187
+ }
184
188
 
185
- return hidden || !spreaded;
186
- });
189
+ return hidden || !spreaded;
190
+ });
187
191
 
188
- return rows;
189
- })()
192
+ return rows;
193
+ })()}
194
+ </TransitionGroup>
190
195
  }
191
- </TransitionGroup>
196
+ </tbody>
192
197
  );
193
198
 
194
199
  const tableWidthPx = tableWidth.value ? `${tableWidth.value}px` : null;
@@ -41,7 +41,10 @@ export function useFixedColumns(
41
41
  callbacks.push(setScrollPosition);
42
42
 
43
43
  instance.on('$receive:children', handleFixedColumns);
44
- watchState(widthMap, handleFixedColumns);
44
+ watchState(widthMap, () => {
45
+ handleFixedColumns();
46
+ updateScrollPositionOnResize();
47
+ });
45
48
 
46
49
  const throttleUpdate = throttle(() => {
47
50
  if (instance.$unmounted) return;
@@ -122,13 +125,12 @@ export function useFixedColumns(
122
125
  );
123
126
  }
124
127
 
125
-
126
128
  function updateScrollPositionOnResize() {
127
129
  const scrollDom = scrollRef.value!;
128
130
  if (scrollDom.scrollWidth - scrollDom.offsetWidth <= 0) {
129
131
  scrollPosition.set(null);
130
132
  } else {
131
- scrollPosition.set('left');
133
+ setScrollPosition(scrollRef.value!.scrollLeft);
132
134
  }
133
135
  }
134
136
 
@@ -4,6 +4,7 @@ import type {Table, TableRowKey} from './table';
4
4
  import type {TableColumn} from './column';
5
5
  import {useState} from '../../hooks/useState';
6
6
  import {debounce} from '../utils';
7
+ import {scrollbarWidth} from '../position';
7
8
 
8
9
  const hasLocalStorage = typeof localStorage !== 'undefined';
9
10
 
@@ -68,10 +69,18 @@ export function useWidth(
68
69
 
69
70
  function checkTableWidth(isMount: boolean) {
70
71
  checkColumnMinWidth(false);
72
+ const {resizable, type} = instance.get();
71
73
 
72
- if (instance.get('resizable')) {
74
+ if (resizable) {
75
+ const hasBorder = type === 'grid' || type === 'border';
73
76
  const _tableWidth = tableRef.value!.offsetWidth;
74
- const containerWidth = scrollRef.value!.offsetWidth;
77
+ const container = scrollRef.value!;
78
+ let containerWidth = container.offsetWidth + (hasBorder ? -2 : 0);
79
+ // detect whether the table has vertical scrollbar or not
80
+ if (container.scrollHeight > container.clientHeight) {
81
+ containerWidth = containerWidth - scrollbarWidth();
82
+ }
83
+
75
84
  if (_tableWidth < containerWidth) {
76
85
  tableWidth.set(isMount ? null : containerWidth);
77
86
 
@@ -14,25 +14,32 @@ sidebar: doc
14
14
 
15
15
  | 属性 | 说明 | 类型 | 默认值 |
16
16
  | --- | --- | --- | --- |
17
- | data | 选项卡数据 | `Array` | `[]` |
18
- | value | 被选中的选项卡,使用`v-model`进行双向绑定 | `*` | `undefined`|
19
- | vertical | 垂直排列 | `Boolean` | `undefined` |
17
+ | value | 被选中的选项卡,使用`v-model`进行双向绑定 | `T = any` | `undefined`|
18
+ | vertical | 垂直排列 | `boolean` | `undefined` |
20
19
  | size | 选项卡尺寸 | `"large"` &#124; `"default"` &#124; `"small"` &#124; `"mini"` | `"default"` |
21
20
  | type | 选项卡类型 | `"default"` &#124; `"card"` &#124; `"border-card"` &#124; `"no-border-card"` | `"default"` |
22
- | beforeChange | 切换选项卡之前的拦截函数,如果该函数返回`false`则阻止本次切换,支持异步函数,参数为当前`Tab` `value` | `Function` | `undefined` |
21
+ | closable | 是否展示选项卡关闭按钮 | `boolean` | `false` |
22
+ | beforeChange | 切换选项卡之前的拦截函数,如果该函数返回`false`则阻止本次切换,支持异步函数,参数为当前`Tab` `value` | <code>(value: T) => boolean &#124; Promise&lt;boolean&gt;</code> | `undefined` |
23
23
 
24
24
  ## Tab
25
25
 
26
26
  | 属性 | 说明 | 类型 | 默认值 |
27
27
  | --- | --- | --- | --- |
28
- | value | 选中的值 | `*` | `undefined` |
29
- | to | 点击标签的跳转地址 | `String` | `undefined` |
30
- | disabled | 是否禁用 | `Boolean` | `false` |
28
+ | value | 选中的值 | `any` | `undefined` |
29
+ | disabled | 是否禁用 | `boolean` | `false` |
30
+ | to | 点击标签的跳转地址 | `string` | `undefined` |
31
+ | closable | 是否展示选项卡关闭按钮 | `boolean` | `false` |
31
32
 
32
33
  # 事件
33
34
 
35
+ ## Tabs
36
+
37
+ | 事件名 | 说明 | 参数 |
38
+ | --- | --- | --- |
39
+ | remove | 关闭选项卡时触发 | `(value: T) => void` |
40
+
34
41
  ## Tab
35
42
 
36
43
  | 事件名 | 说明 | 参数 |
37
44
  | --- | --- | --- |
38
- | click | `Tab`点击事件,发生在`value`改变之后,`disabled`状态不会触发 | `Event` |
45
+ | click | `Tab`点击事件,发生在`value`改变之后,`disabled`状态不会触发 | `(e: MouseEvent) => void` |
@@ -14,7 +14,7 @@ describe('Tabs', () => {
14
14
 
15
15
  // add tab
16
16
  instance._add();
17
- await wait(300);
17
+ await wait(500);
18
18
  expect(tabs.outerHTML).to.matchSnapshot();
19
19
 
20
20
  // prev & next
@@ -19,6 +19,7 @@ const closeFontSizeMap: Record<Sizes, string> = {
19
19
 
20
20
  const defaults = deepDefaults(
21
21
  {
22
+ get transition() { return theme.transition.middle },
22
23
  get borderColor() { return theme.color.border },
23
24
  borderWidth: '1px',
24
25
  get border() { return `${tabs.borderWidth} solid ${tabs.borderColor}` },
@@ -47,7 +48,7 @@ const defaults = deepDefaults(
47
48
 
48
49
  // no-border-card
49
50
  noBorderCard: {
50
- bgColor: `#eee`,
51
+ get bgColor() { return theme.color.bg },
51
52
  gutter: `4px`,
52
53
  }
53
54
  },
@@ -63,7 +64,7 @@ const defaults = deepDefaults(
63
64
  }, {} as Record<Sizes, SizeStyles>)
64
65
  );
65
66
 
66
- let tabs: any;
67
+ let tabs: typeof defaults;
67
68
  setDefault(() => {
68
69
  tabs = deepDefaults(theme, {tabs: defaults}).tabs;
69
70
  });
@@ -81,6 +82,9 @@ export function makeStyles() {
81
82
  color: ${tabs.color};
82
83
  position: relative;
83
84
  vertical-align: middle;
85
+ white-space: nowrap;
86
+ overflow: hidden;
87
+ text-overflow: ellipsis;
84
88
  &:hover,
85
89
  &.k-active {
86
90
  color: ${tabs.activeColor};
@@ -99,7 +103,7 @@ export function makeStyles() {
99
103
 
100
104
  // active-bar
101
105
  .k-tabs-active-bar {
102
- transition: all ${theme.transition};
106
+ transition: all ${tabs.transition};
103
107
  position: absolute;
104
108
  left: 0;
105
109
  height: ${tabs.highlight.height};
@@ -222,10 +226,10 @@ export function makeStyles() {
222
226
  right: 0;
223
227
  }
224
228
  }
225
- .k-vertical {
229
+ &.k-vertical {
226
230
  border-right: none;
227
- .k-tab {
228
- margin-top: ${tabs.noBorderCard.gutter};
231
+ .k-tab:not(:first-of-type) {
232
+ margin: ${tabs.noBorderCard.gutter} 0 0;
229
233
  }
230
234
  .k-tabs-active-bar {
231
235
  border: none;
@@ -252,7 +256,7 @@ export function makeStyles() {
252
256
  .k-tabs-wrapper {
253
257
  white-space: nowrap;
254
258
  float: left;
255
- transition: transform ${theme.transition};
259
+ transition: transform ${tabs.transition};
256
260
  }
257
261
  .k-tabs-prev,
258
262
  .k-tabs-next {
@@ -26,6 +26,6 @@ const classNameObj = {
26
26
  v-if={isNullOrUndefined(closable) ? this.tabs.get('closable') : closable}
27
27
  ev-click={this.remove}
28
28
  >
29
- <Icon class="ion-ios-close-empty" />
29
+ <Icon class="ion-ios-close-empty" hoverable />
30
30
  </Button>
31
31
  </div>
@@ -1,4 +1,4 @@
1
- import {useInstance, onMounted, onUpdated, findDomFromVNode} from 'intact';
1
+ import {useInstance, onMounted, onUpdated, findDomFromVNode, nextTick} from 'intact';
2
2
  import type {Tabs} from './';
3
3
  import {useState} from '../../hooks/useState';
4
4
 
@@ -42,7 +42,8 @@ export function useActiveBar() {
42
42
  }
43
43
 
44
44
  onMounted(generateStyle);
45
- onUpdated(generateStyle);
45
+ // Tabs maybe embed into Transition, therefore handle style nextTick
46
+ onUpdated(() => nextTick(generateStyle));
46
47
 
47
48
  return styles;
48
49
  }
@@ -51,6 +51,9 @@ export class Tag<
51
51
  @bind
52
52
  private onClose(e: MouseEvent): void {
53
53
  e.stopPropagation();
54
+
55
+ if (this.get('disabled')) return;
56
+
54
57
  this.trigger('close', e);
55
58
  if (!e.defaultPrevented) {
56
59
  this.set('closed', true);
@@ -13,8 +13,9 @@ import {Tag} from 'kpc';
13
13
  <Tag v-for={this.get('types')}
14
14
  type={$value}
15
15
  border={border}
16
+ closable
16
17
  >{$value}</Tag>
17
- <Tag disabled border={border}>disabled</Tag>
18
+ <Tag disabled closable border={border}>disabled</Tag>
18
19
  </div>
19
20
  </div>
20
21
  ```
@@ -10,8 +10,9 @@ sidebar: doc
10
10
  | 属性 | 说明 | 类型 | 默认值 |
11
11
  | --- | --- | --- | --- |
12
12
  | type | 组件类型 | `"default"` &#124; `"primary"` &#124; `"success"` &#124; `"warning"` &#124; `"danger"` | `"default"` |
13
- | disabled | 是否展示禁用状态 | `Boolean` | `false` |
14
- | closable | 是否可关闭 | `Boolean` | `false` |
13
+ | closable | 是否可关闭 | `boolean` | `false` |
14
+ | closed | 是否已关闭 | `boolean` | `false` |
15
+ | disabled | 是否展示禁用状态 | `boolean` | `false` |
15
16
  | size | 组件尺寸 | `"large"` &#124; `"default"` &#124; `"small"` &#124; `"mini"` | `"default"` |
16
17
  | border | 定义边框样式 | `"solid"` &#124; `"dashed"` &#124; `"none"` | `"solid"` |
17
18
 
@@ -19,4 +20,4 @@ sidebar: doc
19
20
 
20
21
  | 事件名 | 说明 | 参数 |
21
22
  | --- | --- | --- |
22
- | close | 标签关闭事件 | - |
23
+ | close | 标签关闭事件 | `(e: MouseEvent) => void` |
@@ -52,6 +52,9 @@ const defaults = deepDefaults(
52
52
  gap: '2px'
53
53
  }
54
54
  },
55
+ none: {
56
+ get bgColor() { return theme.color.bg },
57
+ }
55
58
  },
56
59
  types.reduce((memo, type) => {
57
60
  if (type === 'disabled') return memo;
@@ -63,7 +66,7 @@ const defaults = deepDefaults(
63
66
  }, {} as {[key in Exclude<Types, 'disabled'>]: TypeStyles}),
64
67
  );
65
68
 
66
- let tag: any;
69
+ let tag: typeof defaults;
67
70
  setDefault(() => {
68
71
  tag = deepDefaults(theme, {tag: defaults}).tag;
69
72
  });
@@ -83,6 +86,11 @@ export function makeStyles() {
83
86
  margin-left: ${tag.close.gap};
84
87
  }
85
88
 
89
+ &.k-none {
90
+ border: none;
91
+ background: ${tag.none.bgColor};
92
+ }
93
+
86
94
  ${types.map(t => {
87
95
  const styles = tag[t];
88
96
  return css`
@@ -113,8 +121,5 @@ export function makeStyles() {
113
121
  &.k-dashed {
114
122
  border-style: dashed;
115
123
  }
116
- &.k-none {
117
- border: none;
118
- }
119
124
  `;
120
125
  }
@@ -1,5 +1,5 @@
1
1
  import {css} from '@emotion/css';
2
- import {theme, ThemeValue, setDefault} from '../../styles/theme';
2
+ import {theme, setDefault} from '../../styles/theme';
3
3
  import {deepDefaults, Sizes, sizes, palette} from '../../styles/utils';
4
4
  import '../../styles/global';
5
5
 
@@ -8,7 +8,7 @@ type ValueOf<T extends readonly any[]> = T[number]
8
8
  export type Types = ValueOf<typeof types>
9
9
 
10
10
  type TypeStyles = {
11
- color: ThemeValue<string>
11
+ color: string
12
12
  }
13
13
 
14
14
  type SizeStyles = {
@@ -55,7 +55,7 @@ const defaults = deepDefaults(
55
55
  sizeStyles
56
56
  );
57
57
 
58
- let timeline: any;
58
+ let timeline: typeof defaults;
59
59
  setDefault(() => {
60
60
  timeline = deepDefaults(theme, {timeline: defaults}).timeline;
61
61
  });
@@ -10,8 +10,9 @@ import {TypeDefs} from 'intact';
10
10
 
11
11
  export const YEAR_FORMAT = 'YYYY-MM-DD ';
12
12
  export const TIME_FORMAT = 'HH:mm:ss';
13
- export const NOW = getNowDate();
14
- export const PREFIX = NOW.format(YEAR_FORMAT);
13
+ export const NOW_START = getNowDate();
14
+ export const NOW_END = getNowDate(true);
15
+ export const PREFIX = NOW_START.format(YEAR_FORMAT);
15
16
 
16
17
  export interface TimepickerProps<
17
18
  M extends boolean = boolean,
@@ -3,8 +3,8 @@ title: 基础使用
3
3
  order: 0
4
4
  ---
5
5
 
6
- 基础用法,通过`v-model`双向绑定,值为时间字符串,并非`Date`对象。添加`multiple`属性可以支持多选;
7
- 通过`min` `max`属性可以指定最小最大可选时间
6
+ 基础用法,通过`v-model`双向绑定,值为任意合法的日期或时间字符串,组件最终都会处理成时间字符串,
7
+ 日期信息将被忽略。添加`multiple`属性可以支持多选;通过`min` `max`属性可以指定最小最大可选时间
8
8
 
9
9
  ```vdt
10
10
  import {Timepicker} from 'kpc';
@@ -6,7 +6,7 @@ order: 2
6
6
  当指定了`step`属性时,组件将展示成`Select`样式,只能选择固定的几个时间点。通过`min`和`max`限定
7
7
  选择时间范围(默认:00:00:00 ~ 23:59:59),`step`指定步长,它们值类型都为时间字符串
8
8
 
9
- > `@since v1.1.0` `step`不能隐藏“秒”,可以通过`showFomart`或`format`来格式化时间字符串
9
+ > 可以通过`showFomart`或`format`来格式化时间字符串,来隐藏“秒”
10
10
 
11
11
  ```vdt
12
12
  import {Timepicker} from 'kpc';