@king-design/intact 2.1.1 → 3.0.0-beta.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 (468) hide show
  1. package/README.md +1 -1
  2. package/components/button/demos/basic.md +1 -0
  3. package/components/button/demos/group.md +11 -0
  4. package/components/button/demos/icon.md +1 -0
  5. package/components/button/index.md +1 -1
  6. package/components/button/index.ts +2 -2
  7. package/components/button/styles.ts +10 -2
  8. package/components/card/styles.ts +3 -2
  9. package/components/checkbox/styles.ts +31 -6
  10. package/components/collapse/styles.ts +4 -1
  11. package/components/copy/demos/basic.md +12 -0
  12. package/components/copy/demos/children.md +37 -0
  13. package/components/copy/index.md +21 -0
  14. package/components/copy/index.spec.ts +21 -0
  15. package/components/copy/index.ts +37 -0
  16. package/components/copy/index.vdt +23 -0
  17. package/components/copy/styles.ts +9 -0
  18. package/components/copy/useCopy.ts +91 -0
  19. package/components/datepicker/demos/basic.md +1 -0
  20. package/components/datepicker/index.md +2 -0
  21. package/components/datepicker/index.spec.ts +2 -2
  22. package/components/datepicker/index.vdt +2 -2
  23. package/components/datepicker/styles.ts +13 -5
  24. package/components/dialog/alert.vdt +10 -6
  25. package/components/dialog/base.vdt +4 -5
  26. package/components/dialog/index.spec.ts +4 -4
  27. package/components/dialog/styles.ts +18 -13
  28. package/components/drawer/styles.ts +20 -10
  29. package/components/dropdown/demos/tooltip.md +1 -1
  30. package/components/dropdown/index.spec.ts +1 -1
  31. package/components/dropdown/styles.ts +1 -1
  32. package/components/form/index.spec.ts +1 -1
  33. package/components/form/item.vdt +1 -1
  34. package/components/form/styles.ts +21 -26
  35. package/components/grid/useGutter.ts +7 -6
  36. package/components/icon/demos/disabled.md +21 -0
  37. package/components/icon/demos/icons.md +87 -116
  38. package/components/icon/index.md +1 -0
  39. package/components/icon/index.ts +2 -0
  40. package/components/icon/index.vdt +6 -2
  41. package/components/icon/styles.ts +8 -1
  42. package/components/input/demos/flat.md +16 -0
  43. package/components/input/index.md +1 -0
  44. package/components/input/index.ts +4 -10
  45. package/components/input/index.vdt +2 -1
  46. package/components/input/styles.ts +29 -21
  47. package/components/message/demos/basic.md +1 -1
  48. package/components/message/demos/duration.md +3 -3
  49. package/components/message/index.md +1 -1
  50. package/components/message/message.ts +2 -2
  51. package/components/message/message.vdt +6 -6
  52. package/components/message/styles.ts +10 -19
  53. package/components/pagination/demos/flat.md +22 -0
  54. package/components/pagination/index.md +1 -1
  55. package/components/pagination/index.spec.ts +1 -1
  56. package/components/pagination/index.ts +2 -2
  57. package/components/pagination/index.vdt +15 -18
  58. package/components/pagination/styles.ts +13 -9
  59. package/components/popover/content.ts +40 -0
  60. package/components/popover/content.vdt +32 -0
  61. package/components/popover/demos/basic.md +47 -0
  62. package/components/popover/demos/button.md +49 -0
  63. package/components/popover/demos/content.md +36 -0
  64. package/components/popover/demos/text.md +38 -0
  65. package/components/popover/demos/type.md +51 -0
  66. package/components/popover/index.md +54 -0
  67. package/components/popover/index.spec.ts +91 -0
  68. package/components/popover/index.ts +52 -0
  69. package/components/popover/styles.ts +45 -0
  70. package/components/progress/demos/children.md +1 -1
  71. package/components/progress/demos/circleSize.md +84 -0
  72. package/components/progress/demos/customColor.md +1 -3
  73. package/components/progress/index.ts +1 -1
  74. package/components/progress/index.vdt +36 -7
  75. package/components/progress/styles.ts +34 -21
  76. package/components/radio/styles.ts +28 -9
  77. package/components/rate/styles.ts +1 -0
  78. package/components/select/base.ts +8 -2
  79. package/components/select/base.vdt +40 -39
  80. package/components/select/demos/basic.md +21 -12
  81. package/components/select/demos/creatable.md +1 -1
  82. package/components/select/demos/draggable.md +55 -0
  83. package/components/select/demos/flat.md +42 -0
  84. package/components/select/demos/nowrap.md +24 -0
  85. package/components/select/demos/size.md +41 -1
  86. package/components/select/index.md +2 -0
  87. package/components/select/index.spec.ts +2 -2
  88. package/components/select/menu.vdt +5 -5
  89. package/components/select/styles.ts +55 -64
  90. package/components/select/useDraggble.ts +12 -0
  91. package/components/select/useNowrap.ts +24 -0
  92. package/components/slider/index.spec.ts +32 -1
  93. package/components/slider/index.ts +2 -2
  94. package/components/slider/index.vdt +34 -16
  95. package/components/slider/styles.ts +21 -13
  96. package/components/slider/useValue.ts +15 -3
  97. package/components/spinner/index.md +1 -1
  98. package/components/spinner/index.ts +0 -9
  99. package/components/spinner/index.vdt +13 -8
  100. package/components/spinner/styles.ts +36 -36
  101. package/components/spinner/useChange.ts +2 -2
  102. package/components/spinner/useValue.ts +9 -1
  103. package/components/split/index.vdt +13 -3
  104. package/components/split/memo.ts +29 -0
  105. package/components/steps/demos/basic.md +2 -1
  106. package/components/steps/demos/clickable.md +6 -0
  107. package/components/steps/demos/error.md +25 -5
  108. package/components/steps/demos/line.md +7 -6
  109. package/components/steps/demos/simple.md +0 -6
  110. package/components/steps/demos/vertical.md +79 -0
  111. package/components/steps/index.md +2 -1
  112. package/components/steps/index.spec.ts +1 -1
  113. package/components/steps/index.ts +7 -5
  114. package/components/steps/index.vdt +5 -3
  115. package/components/steps/step.vdt +16 -13
  116. package/components/steps/styles.ts +422 -255
  117. package/components/switch/demos/basic.md +1 -2
  118. package/components/switch/demos/disabled.md +20 -0
  119. package/components/switch/demos/onOff.md +5 -0
  120. package/components/switch/index.spec.ts +15 -10
  121. package/components/switch/styles.ts +29 -37
  122. package/components/table/styles.ts +11 -6
  123. package/components/table/useDraggable.ts +4 -3
  124. package/components/table/useStickyScrollbar.ts +2 -2
  125. package/components/table/useWidth.ts +2 -2
  126. package/components/tabs/demos/basic.md +0 -1
  127. package/components/tabs/demos/beforeChange.md +2 -2
  128. package/components/tabs/demos/card.md +2 -11
  129. package/components/tabs/demos/closable.md +7 -6
  130. package/components/tabs/demos/scroll.md +104 -0
  131. package/components/tabs/demos/vertical.md +1 -9
  132. package/components/tabs/index.md +1 -1
  133. package/components/tabs/index.spec.ts +36 -0
  134. package/components/tabs/index.ts +11 -12
  135. package/components/tabs/index.vdt +8 -9
  136. package/components/tabs/styles.ts +205 -186
  137. package/components/tabs/useScroll.ts +101 -42
  138. package/components/tag/base.ts +2 -2
  139. package/components/tag/demos/border.md +2 -2
  140. package/components/tag/demos/draggable.md +49 -0
  141. package/components/tag/demos/tags.md +72 -0
  142. package/components/tag/index.md +12 -1
  143. package/components/tag/index.spec.ts +70 -2
  144. package/components/tag/index.ts +2 -0
  145. package/components/tag/styles.ts +59 -9
  146. package/components/tag/tags.ts +54 -0
  147. package/components/tag/tags.vdt +49 -0
  148. package/components/tag/useChildren.ts +42 -0
  149. package/components/tag/useDraggable.ts +97 -0
  150. package/components/tag/useNowrap.ts +117 -0
  151. package/components/timepicker/index.md +2 -0
  152. package/components/timepicker/index.spec.ts +1 -1
  153. package/components/tip/index.vdt +1 -3
  154. package/components/tip/styles.ts +8 -2
  155. package/components/tooltip/content.ts +6 -6
  156. package/components/tooltip/content.vdt +8 -7
  157. package/components/tooltip/index.md +3 -6
  158. package/components/tooltip/index.spec.ts +6 -36
  159. package/components/tooltip/styles.ts +10 -8
  160. package/components/transfer/index.vdt +3 -2
  161. package/components/transfer/styles.ts +1 -0
  162. package/components/transfer/useCheck.ts +9 -2
  163. package/components/treeSelect/index.md +2 -0
  164. package/components/upload/demos/manually.md +12 -13
  165. package/components/upload/index.spec.ts +4 -4
  166. package/components/upload/index.vdt +40 -34
  167. package/components/upload/styles.ts +58 -64
  168. package/components/utils.ts +25 -4
  169. package/es/components/button/index.d.ts +1 -1
  170. package/es/components/button/index.js +1 -1
  171. package/es/components/button/styles.js +3 -3
  172. package/es/components/card/styles.js +10 -2
  173. package/es/components/checkbox/styles.js +21 -10
  174. package/es/components/collapse/styles.js +6 -1
  175. package/es/components/copy/index.d.ts +17 -0
  176. package/es/components/copy/index.js +43 -0
  177. package/es/components/copy/index.spec.d.ts +1 -0
  178. package/es/components/copy/index.spec.js +52 -0
  179. package/es/components/copy/index.vdt.js +45 -0
  180. package/es/components/copy/styles.d.ts +2 -0
  181. package/es/components/copy/styles.js +14 -0
  182. package/es/components/copy/useCopy.d.ts +4 -0
  183. package/es/components/copy/useCopy.js +90 -0
  184. package/es/components/datepicker/index.spec.js +1 -1
  185. package/es/components/datepicker/index.vdt.js +1 -1
  186. package/es/components/datepicker/styles.d.ts +1 -1
  187. package/es/components/datepicker/styles.js +5 -2
  188. package/es/components/diagram/shapes/callout.d.ts +1 -1
  189. package/es/components/diagram/shapes/circle.d.ts +1 -1
  190. package/es/components/diagram/shapes/document.d.ts +1 -1
  191. package/es/components/diagram/shapes/ellipse.d.ts +1 -1
  192. package/es/components/diagram/shapes/hexagon.d.ts +1 -1
  193. package/es/components/diagram/shapes/image.d.ts +1 -1
  194. package/es/components/diagram/shapes/parallelogram.d.ts +1 -1
  195. package/es/components/diagram/shapes/rectangle.d.ts +1 -1
  196. package/es/components/diagram/shapes/square.d.ts +1 -1
  197. package/es/components/diagram/shapes/text.d.ts +1 -1
  198. package/es/components/dialog/alert.vdt.js +6 -5
  199. package/es/components/dialog/base.vdt.js +5 -6
  200. package/es/components/dialog/index.spec.js +4 -4
  201. package/es/components/dialog/styles.js +16 -14
  202. package/es/components/drawer/styles.js +20 -5
  203. package/es/components/dropdown/styles.js +1 -1
  204. package/es/components/form/index.spec.js +4 -2
  205. package/es/components/form/item.vdt.js +2 -1
  206. package/es/components/form/styles.js +5 -5
  207. package/es/components/grid/useGutter.js +8 -8
  208. package/es/components/icon/index.d.ts +1 -0
  209. package/es/components/icon/index.js +2 -1
  210. package/es/components/icon/index.vdt.js +4 -2
  211. package/es/components/icon/styles.js +10 -2
  212. package/es/components/input/index.d.ts +1 -0
  213. package/es/components/input/index.js +4 -11
  214. package/es/components/input/index.vdt.js +4 -2
  215. package/es/components/input/styles.js +13 -11
  216. package/es/components/message/message.js +1 -1
  217. package/es/components/message/message.vdt.js +7 -6
  218. package/es/components/message/styles.js +8 -8
  219. package/es/components/pagination/index.d.ts +1 -1
  220. package/es/components/pagination/index.js +1 -1
  221. package/es/components/pagination/index.spec.js +4 -2
  222. package/es/components/pagination/index.vdt.js +16 -18
  223. package/es/components/pagination/styles.js +12 -3
  224. package/es/components/popover/content.d.ts +19 -0
  225. package/es/components/popover/content.js +31 -0
  226. package/es/components/popover/content.vdt.js +68 -0
  227. package/es/components/popover/index.d.ts +16 -0
  228. package/es/components/popover/index.js +44 -0
  229. package/es/components/popover/index.spec.d.ts +1 -0
  230. package/es/components/popover/index.spec.js +195 -0
  231. package/es/components/popover/styles.d.ts +1 -0
  232. package/es/components/popover/styles.js +22 -0
  233. package/es/components/progress/index.js +1 -1
  234. package/es/components/progress/index.vdt.js +46 -8
  235. package/es/components/progress/styles.js +19 -13
  236. package/es/components/radio/styles.js +16 -6
  237. package/es/components/rate/styles.js +1 -1
  238. package/es/components/select/base.d.ts +5 -2
  239. package/es/components/select/base.js +7 -3
  240. package/es/components/select/base.vdt.js +46 -38
  241. package/es/components/select/index.spec.js +2 -2
  242. package/es/components/select/menu.vdt.js +1 -1
  243. package/es/components/select/styles.js +14 -28
  244. package/es/components/select/useDraggble.d.ts +2 -0
  245. package/es/components/select/useDraggble.js +11 -0
  246. package/es/components/select/useNowrap.d.ts +3 -0
  247. package/es/components/select/useNowrap.js +19 -0
  248. package/es/components/slider/index.spec.js +48 -9
  249. package/es/components/slider/index.vdt.js +23 -12
  250. package/es/components/slider/styles.js +23 -14
  251. package/es/components/slider/useValue.d.ts +3 -1
  252. package/es/components/slider/useValue.js +12 -0
  253. package/es/components/spinner/index.d.ts +0 -1
  254. package/es/components/spinner/index.js +1 -19
  255. package/es/components/spinner/index.vdt.js +15 -8
  256. package/es/components/spinner/styles.js +33 -5
  257. package/es/components/spinner/useChange.d.ts +1 -1
  258. package/es/components/spinner/useChange.js +2 -2
  259. package/es/components/spinner/useValue.d.ts +1 -0
  260. package/es/components/spinner/useValue.js +16 -1
  261. package/es/components/split/index.vdt.js +32 -20
  262. package/es/components/split/memo.d.ts +9 -0
  263. package/es/components/split/memo.js +26 -0
  264. package/es/components/steps/index.d.ts +3 -2
  265. package/es/components/steps/index.js +4 -3
  266. package/es/components/steps/index.spec.js +1 -1
  267. package/es/components/steps/index.vdt.js +8 -4
  268. package/es/components/steps/step.vdt.js +17 -9
  269. package/es/components/steps/styles.d.ts +2 -1
  270. package/es/components/steps/styles.js +106 -72
  271. package/es/components/switch/index.spec.js +82 -65
  272. package/es/components/switch/styles.js +20 -34
  273. package/es/components/table/styles.js +9 -4
  274. package/es/components/table/useDraggable.js +3 -10
  275. package/es/components/table/useStickyScrollbar.js +2 -2
  276. package/es/components/table/useWidth.js +2 -2
  277. package/es/components/tabs/index.d.ts +1 -1
  278. package/es/components/tabs/index.js +1 -1
  279. package/es/components/tabs/index.spec.js +67 -0
  280. package/es/components/tabs/index.vdt.js +5 -5
  281. package/es/components/tabs/styles.js +73 -29
  282. package/es/components/tabs/useScroll.d.ts +1 -1
  283. package/es/components/tabs/useScroll.js +75 -48
  284. package/es/components/tag/base.d.ts +1 -0
  285. package/es/components/tag/base.js +2 -2
  286. package/es/components/tag/index.d.ts +1 -0
  287. package/es/components/tag/index.js +2 -1
  288. package/es/components/tag/index.spec.js +147 -4
  289. package/es/components/tag/styles.d.ts +67 -0
  290. package/es/components/tag/styles.js +42 -12
  291. package/es/components/tag/tags.d.ts +27 -0
  292. package/es/components/tag/tags.js +51 -0
  293. package/es/components/tag/tags.vdt.js +79 -0
  294. package/es/components/tag/useChildren.d.ts +2 -0
  295. package/es/components/tag/useChildren.js +39 -0
  296. package/es/components/tag/useDraggable.d.ts +3 -0
  297. package/es/components/tag/useDraggable.js +89 -0
  298. package/es/components/tag/useNowrap.d.ts +7 -0
  299. package/es/components/tag/useNowrap.js +115 -0
  300. package/es/components/timepicker/index.spec.js +1 -1
  301. package/es/components/tip/index.vdt.js +1 -3
  302. package/es/components/tip/styles.js +4 -3
  303. package/es/components/tooltip/content.d.ts +2 -2
  304. package/es/components/tooltip/content.vdt.js +23 -13
  305. package/es/components/tooltip/index.spec.js +56 -108
  306. package/es/components/tooltip/styles.d.ts +1 -0
  307. package/es/components/tooltip/styles.js +13 -8
  308. package/es/components/transfer/index.vdt.js +3 -1
  309. package/es/components/transfer/styles.js +1 -1
  310. package/es/components/transfer/useCheck.d.ts +1 -0
  311. package/es/components/transfer/useCheck.js +8 -1
  312. package/es/components/upload/index.spec.js +5 -6
  313. package/es/components/upload/index.vdt.js +24 -21
  314. package/es/components/upload/styles.js +22 -30
  315. package/es/components/utils.d.ts +2 -0
  316. package/es/components/utils.js +24 -3
  317. package/es/hooks/useResizeObserver.d.ts +1 -1
  318. package/es/hooks/useResizeObserver.js +19 -6
  319. package/es/i18n/en-US.d.ts +6 -2
  320. package/es/i18n/en-US.js +8 -3
  321. package/es/index.d.ts +4 -2
  322. package/es/index.js +4 -2
  323. package/es/packages/kpc-react/__tests__/components/drawer.spec.js +74 -6
  324. package/es/site/data/components/button/demos/basic/react.js +3 -1
  325. package/es/site/data/components/button/demos/group/react.js +26 -0
  326. package/es/site/data/components/button/demos/icon/react.js +6 -0
  327. package/es/site/data/components/copy/demos/basic/react.js +23 -0
  328. package/es/site/data/components/copy/demos/children/react.js +44 -0
  329. package/es/site/data/components/copy/index.d.ts +57 -0
  330. package/es/site/data/components/copy/index.js +42 -0
  331. package/es/site/data/components/datepicker/demos/basic/react.js +8 -0
  332. package/es/site/data/components/dropdown/demos/tooltip/react.js +2 -1
  333. package/es/site/data/components/icon/demos/disabled/index.d.ts +6 -0
  334. package/es/site/data/components/icon/demos/disabled/index.js +18 -0
  335. package/es/site/data/components/icon/demos/disabled/react.d.ts +5 -0
  336. package/es/site/data/components/icon/demos/disabled/react.js +33 -0
  337. package/es/site/data/components/icon/demos/icons/index.js +1 -1
  338. package/es/site/data/components/icon/demos/icons/react.js +1 -1
  339. package/es/site/data/components/input/demos/flat/index.d.ts +5 -0
  340. package/es/site/data/components/input/demos/flat/index.js +17 -0
  341. package/es/site/data/components/input/demos/flat/react.d.ts +4 -0
  342. package/es/site/data/components/input/demos/flat/react.js +29 -0
  343. package/es/site/data/components/message/demos/duration/index.js +2 -2
  344. package/es/site/data/components/message/demos/duration/react.js +2 -2
  345. package/es/site/data/components/pagination/demos/flat/index.d.ts +6 -0
  346. package/es/site/data/components/pagination/demos/flat/index.js +18 -0
  347. package/es/site/data/components/pagination/demos/flat/react.d.ts +5 -0
  348. package/es/site/data/components/pagination/demos/{noBoard → flat}/react.js +12 -8
  349. package/es/site/data/components/popover/demos/basic/react.d.ts +8 -0
  350. package/es/site/data/components/{tooltip/demos/confirm → popover/demos/basic}/react.js +14 -9
  351. package/es/site/data/components/popover/demos/button/index.d.ts +8 -0
  352. package/es/site/data/components/popover/demos/button/index.js +42 -0
  353. package/es/site/data/components/popover/demos/button/react.d.ts +8 -0
  354. package/es/site/data/components/popover/demos/button/react.js +73 -0
  355. package/es/site/data/components/popover/demos/content/index.d.ts +7 -0
  356. package/es/site/data/components/popover/demos/content/index.js +28 -0
  357. package/es/site/data/components/{tooltip/demos/confirm → popover/demos/content}/react.d.ts +0 -1
  358. package/es/site/data/components/popover/demos/content/react.js +43 -0
  359. package/es/site/data/components/popover/demos/text/index.d.ts +7 -0
  360. package/es/site/data/components/popover/demos/text/index.js +28 -0
  361. package/es/site/data/components/popover/demos/text/react.d.ts +6 -0
  362. package/es/site/data/components/popover/demos/text/react.js +36 -0
  363. package/es/site/data/components/popover/demos/type/index.d.ts +11 -0
  364. package/es/site/data/components/popover/demos/type/index.js +34 -0
  365. package/es/site/data/components/popover/demos/type/react.d.ts +11 -0
  366. package/es/site/data/components/popover/demos/type/react.js +58 -0
  367. package/es/site/data/components/popover/index.d.ts +57 -0
  368. package/es/site/data/components/popover/index.js +42 -0
  369. package/es/site/data/components/progress/demos/children/react.js +4 -4
  370. package/es/site/data/components/progress/demos/circleSize/index.d.ts +14 -0
  371. package/es/site/data/components/progress/demos/circleSize/index.js +43 -0
  372. package/es/site/data/components/progress/demos/circleSize/react.d.ts +14 -0
  373. package/es/site/data/components/progress/demos/circleSize/react.js +98 -0
  374. package/es/site/data/components/progress/demos/customColor/react.js +4 -4
  375. package/es/site/data/components/select/demos/basic/react.js +19 -7
  376. package/es/site/data/components/select/demos/creatable/react.js +2 -1
  377. package/es/site/data/components/select/demos/draggable/index.d.ts +10 -0
  378. package/es/site/data/components/select/demos/draggable/index.js +24 -0
  379. package/es/site/data/components/select/demos/draggable/react.d.ts +10 -0
  380. package/es/site/data/components/select/demos/draggable/react.js +85 -0
  381. package/es/site/data/components/select/demos/flat/index.d.ts +5 -0
  382. package/es/site/data/components/select/demos/flat/index.js +17 -0
  383. package/es/site/data/components/select/demos/flat/react.d.ts +4 -0
  384. package/es/site/data/components/select/demos/flat/react.js +73 -0
  385. package/es/site/data/components/select/demos/inline/index.d.ts +5 -0
  386. package/es/site/data/components/select/demos/inline/index.js +17 -0
  387. package/es/site/data/components/select/demos/inline/react.d.ts +4 -0
  388. package/es/site/data/components/select/demos/nowrap/index.d.ts +5 -0
  389. package/es/site/data/components/select/demos/nowrap/index.js +17 -0
  390. package/es/site/data/components/select/demos/nowrap/react.d.ts +4 -0
  391. package/es/site/data/components/select/demos/nowrap/react.js +41 -0
  392. package/es/site/data/components/select/demos/size/index.d.ts +1 -0
  393. package/es/site/data/components/select/demos/size/index.js +2 -1
  394. package/es/site/data/components/select/demos/size/react.d.ts +1 -0
  395. package/es/site/data/components/select/demos/size/react.js +93 -1
  396. package/es/site/data/components/steps/demos/basic/react.js +1 -1
  397. package/es/site/data/components/steps/demos/clickable/react.js +15 -0
  398. package/es/site/data/components/steps/demos/error/react.js +22 -2
  399. package/es/site/data/components/steps/demos/line/react.js +15 -11
  400. package/es/site/data/components/steps/demos/simple/react.js +1 -11
  401. package/es/site/data/components/steps/demos/vertical/index.d.ts +14 -0
  402. package/es/site/data/components/steps/demos/vertical/index.js +40 -0
  403. package/es/site/data/components/steps/demos/vertical/react.d.ts +14 -0
  404. package/es/site/data/components/steps/demos/vertical/react.js +124 -0
  405. package/es/site/data/components/switch/demos/basic/react.js +0 -2
  406. package/es/site/data/components/switch/demos/disabled/index.d.ts +6 -0
  407. package/es/site/data/components/switch/demos/disabled/index.js +18 -0
  408. package/es/site/data/components/switch/demos/disabled/react.d.ts +5 -0
  409. package/es/site/data/components/switch/demos/disabled/react.js +27 -0
  410. package/es/site/data/components/switch/demos/onOff/react.js +11 -0
  411. package/es/site/data/components/tabs/demos/card/react.js +1 -15
  412. package/es/site/data/components/tabs/demos/closable/index.js +1 -1
  413. package/es/site/data/components/tabs/demos/closable/react.js +9 -3
  414. package/es/site/data/components/tabs/demos/scroll/index.d.ts +18 -0
  415. package/es/site/data/components/tabs/demos/scroll/index.js +87 -0
  416. package/es/site/data/components/tabs/demos/scroll/react.d.ts +18 -0
  417. package/es/site/data/components/tabs/demos/scroll/react.js +166 -0
  418. package/es/site/data/components/tabs/demos/vertical/react.js +1 -16
  419. package/es/site/data/components/tag/demos/border/index.js +1 -1
  420. package/es/site/data/components/tag/demos/border/react.js +1 -1
  421. package/es/site/data/components/tag/demos/draggable/index.d.ts +11 -0
  422. package/es/site/data/components/tag/demos/draggable/index.js +24 -0
  423. package/es/site/data/components/tag/demos/draggable/react.d.ts +11 -0
  424. package/es/site/data/components/tag/demos/draggable/react.js +62 -0
  425. package/es/site/data/components/tag/demos/tags/index.d.ts +12 -0
  426. package/es/site/data/components/tag/demos/tags/index.js +39 -0
  427. package/es/site/data/components/tag/demos/tags/react.d.ts +12 -0
  428. package/es/site/data/components/tag/demos/tags/react.js +83 -0
  429. package/es/site/data/components/upload/demos/manually/react.js +5 -7
  430. package/es/site/src/pages/document/styles.js +1 -1
  431. package/es/styles/fonts/iconfont.eot +0 -0
  432. package/es/styles/fonts/iconfont.js +2 -2
  433. package/es/styles/fonts/iconfont.svg +189 -369
  434. package/es/styles/fonts/iconfont.ttf +0 -0
  435. package/es/styles/fonts/iconfont.woff +0 -0
  436. package/es/styles/fonts/ionicons.js +2 -2
  437. package/es/styles/global.js +1 -1
  438. package/es/styles/theme.d.ts +10 -2
  439. package/es/styles/theme.js +23 -21
  440. package/hooks/useResizeObserver.ts +19 -7
  441. package/i18n/en-US.ts +8 -2
  442. package/index.ts +4 -2
  443. package/package.json +5 -1
  444. package/styles/fonts/iconfont.css +172 -289
  445. package/styles/fonts/iconfont.eot +0 -0
  446. package/styles/fonts/iconfont.svg +189 -369
  447. package/styles/fonts/iconfont.ts +256 -370
  448. package/styles/fonts/iconfont.ttf +0 -0
  449. package/styles/fonts/iconfont.woff +0 -0
  450. package/styles/fonts/iconfont.woff2 +0 -0
  451. package/styles/fonts/ionicons.ts +2 -2
  452. package/styles/global.ts +3 -3
  453. package/styles/theme.ts +23 -19
  454. package/components/pagination/demos/noBoard.md +0 -22
  455. package/components/table/useResizeObserver.ts +0 -22
  456. package/components/tooltip/demos/confirm.md +0 -41
  457. package/es/components/table/useResizeObserver.d.ts +0 -2
  458. package/es/components/table/useResizeObserver.js +0 -20
  459. /package/components/select/demos/{noBorder.md → inline.md} +0 -0
  460. /package/es/site/data/components/{select/demos/noBorder → copy/demos/basic}/index.d.ts +0 -0
  461. /package/es/site/data/components/{select/demos/noBorder → copy/demos/basic}/index.js +0 -0
  462. /package/es/site/data/components/{select/demos/noBorder → copy/demos/basic}/react.d.ts +0 -0
  463. /package/es/site/data/components/{pagination/demos/noBoard → copy/demos/children}/index.d.ts +0 -0
  464. /package/es/site/data/components/{pagination/demos/noBoard → copy/demos/children}/index.js +0 -0
  465. /package/es/site/data/components/{pagination/demos/noBoard → copy/demos/children}/react.d.ts +0 -0
  466. /package/es/site/data/components/{tooltip/demos/confirm → popover/demos/basic}/index.d.ts +0 -0
  467. /package/es/site/data/components/{tooltip/demos/confirm → popover/demos/basic}/index.js +0 -0
  468. /package/es/site/data/components/select/demos/{noBorder → inline}/react.js +0 -0
@@ -3,14 +3,13 @@ title: 基础用法
3
3
  order: 0
4
4
  ---
5
5
 
6
- 通过`disabled`禁用组件,`v-model`进行数据双向绑定。
6
+ 通过`v-model`进行数据双向绑定。
7
7
 
8
8
  ```vdt
9
9
  import {Switch} from 'kpc';
10
10
 
11
11
  <div>
12
12
  <Switch v-model="value" />
13
- <Switch disabled />
14
13
  </div>
15
14
  ```
16
15
 
@@ -0,0 +1,20 @@
1
+ ---
2
+ title: 禁用状态
3
+ order: 0.1
4
+ ---
5
+
6
+ 添加`disabled`属性
7
+
8
+ ```vdt
9
+ import {Switch} from 'kpc';
10
+
11
+ <div>
12
+ <Switch disabled />
13
+ <Switch value={true} disabled />
14
+ </div>
15
+ ```
16
+
17
+ ```styl
18
+ .k-switch
19
+ margin-right 20px
20
+ ```
@@ -16,6 +16,11 @@ import {Switch} from 'kpc';
16
16
  <b:on><i class="ion-ios-checkmark-empty"></i></b:on>
17
17
  <b:off><i class="ion-ios-close-empty"></i></b:off>
18
18
  </Switch>
19
+ <Switch on="开" off="关" />
20
+ <Switch value={true}>
21
+ <b:on><i class="ion-ios-checkmark-empty"></i></b:on>
22
+ <b:off><i class="ion-ios-close-empty"></i></b:off>
23
+ </Switch>
19
24
  </div>
20
25
  ```
21
26
 
@@ -1,4 +1,5 @@
1
1
  import BasicDemo from '~/components/switch/demos/basic';
2
+ import DisabledDemo from '~/components/switch/demos/disabled';
2
3
  import ValueDemo from '~/components/switch/demos/value';
3
4
  import WidthHeightDemo from '~/components/switch/demos/widthHeight';
4
5
  import {mount, unmount, dispatchEvent, wait} from '../../test/utils';
@@ -9,7 +10,7 @@ describe('Switch', () => {
9
10
  it('change value by clicking', async () => {
10
11
  const [instance, element] = mount(BasicDemo);
11
12
 
12
- const [el, disabledEl] = element.querySelectorAll<HTMLElement>('.k-switch');
13
+ const [el] = element.querySelectorAll<HTMLElement>('.k-switch');
13
14
  el.click();
14
15
  await wait();
15
16
  expect(element.outerHTML).to.matchSnapshot();
@@ -23,8 +24,19 @@ describe('Switch', () => {
23
24
  handle.click();
24
25
  await wait();
25
26
  expect(instance.get('value')).to.be.false;
27
+ });
28
+
29
+ it('disabled', async () => {
30
+ const [instance, element] = mount(DisabledDemo);
26
31
 
27
- disabledEl.click();
32
+ const el = element.querySelector<HTMLDivElement>('.k-switch')!;
33
+ el.click();
34
+ await wait();
35
+ expect(element.outerHTML).to.matchSnapshot();
36
+
37
+ dispatchEvent(el, 'mousedown', {which: 1, clientX: 0});
38
+ dispatchEvent(document, 'mousemove', {clientX: 30});
39
+ dispatchEvent(document, 'mouseup', {clientX: 30});
28
40
  await wait();
29
41
  expect(element.outerHTML).to.matchSnapshot();
30
42
  });
@@ -32,7 +44,7 @@ describe('Switch', () => {
32
44
  it('change value by draging', async () => {
33
45
  const [instance, element] = mount(BasicDemo);
34
46
 
35
- const [el, disabledEl] = element.querySelectorAll<HTMLElement>('.k-switch-handle');
47
+ const [el] = element.querySelectorAll<HTMLElement>('.k-switch-handle');
36
48
  dispatchEvent(el, 'mousedown', {which: 1, clientX: 0});
37
49
  dispatchEvent(document, 'mousemove', {clientX: 1});
38
50
  await wait();
@@ -62,13 +74,6 @@ describe('Switch', () => {
62
74
  dispatchEvent(document, 'mouseup', {clientX: 0});
63
75
  await wait();
64
76
  expect(instance.get('value')).to.be.true;
65
-
66
- // disabled
67
- dispatchEvent(disabledEl, 'mousedown', {which: 1, clientX: 0});
68
- dispatchEvent(document, 'mousemove', {clientX: 30});
69
- dispatchEvent(document, 'mouseup', {clientX: 30});
70
- await wait();
71
- expect(element.outerHTML).to.matchSnapshot();
72
77
  });
73
78
 
74
79
  it('drag switch which has custom width and height', async () => {
@@ -1,50 +1,49 @@
1
1
  import {css} from '@emotion/css';
2
2
  import {theme, setDefault} from '../../styles/theme';
3
- import {deepDefaults, sizes} from '../../styles/utils';
3
+ import {deepDefaults, sizes, palette} from '../../styles/utils';
4
4
  import '../../styles/global';
5
5
 
6
6
  const defaults = {
7
7
  get transition() { return theme.transition.middle },
8
- bgColor: `#fff`,
8
+ get bgColor() { return theme.color.border },
9
9
  fontSize: `12px`,
10
- get color() { return theme.color.text },
11
- checkedBgColor: `#fff`,
10
+ color: '#fff',
12
11
  handleBorderRadius: `100%`,
13
- get handleBgColor() { return theme.color.border },
14
- get border() { return `1px solid ${theme.color.border}` },
12
+ handleBgColor: '#fff',
15
13
 
16
14
  // checked
17
15
  checked: {
18
- get borderColor() { return theme.color.primary },
19
- get color() { return theme.color.primary },
20
16
  get bgColor() { return theme.color.primary },
17
+ get disabledBgColor() {
18
+ return palette(theme.color.primary, -3);
19
+ }
21
20
  },
22
21
 
23
22
  // default
24
23
  default: {
25
- width: `36px`,
26
- height: `18px`,
27
- padding: `2px`,
24
+ width: `45px`,
25
+ height: `24px`,
26
+ padding: `3px`,
28
27
  },
29
28
 
30
29
  // large
31
30
  large: {
32
- width: `52px`,
33
- height: `26px`,
34
- padding: `2px`,
31
+ width: `58px`,
32
+ height: `30px`,
33
+ padding: `3px`,
35
34
  },
36
35
 
37
36
  // small
38
37
  small: {
39
- width: `32px`,
38
+ width: `30px`,
40
39
  height: `16px`,
41
40
  padding: `2px`,
42
41
  },
43
42
 
44
43
  // mini
45
44
  mini: {
46
- width: `24px`,
47
- height: `12px`,
45
+ width: `18px`,
46
+ height: `10px`,
48
47
  padding: `1px`,
49
48
  },
50
49
 
@@ -66,7 +65,6 @@ export function makeStyles() {
66
65
  cursor: pointer;
67
66
  user-select: none;
68
67
  overflow: hidden;
69
- border: ${kswitch.border};
70
68
  box-sizing: content-box;
71
69
  input {
72
70
  opacity: 0;
@@ -119,13 +117,12 @@ export function makeStyles() {
119
117
  &.k-dragging {
120
118
  .k-switch-bar,
121
119
  .k-switch-wrapper {
122
- background: ${kswitch.checkedBgColor};
120
+ background: ${kswitch.checked.bgColor};
123
121
  transition: background ${kswitch.transition};
124
122
  }
125
123
  }
126
124
  &:focus {
127
125
  outline: none;
128
- border-color: ${kswitch.checked.borderColor};
129
126
  }
130
127
 
131
128
  // size
@@ -164,16 +161,9 @@ export function makeStyles() {
164
161
 
165
162
  // checked
166
163
  &.k-checked {
167
- border-color: ${kswitch.checked.borderColor};
168
- .k-switch-on {
169
- color: ${kswitch.checked.color};
170
- }
171
- .k-switch-handle {
172
- background: ${kswitch.checked.bgColor};
173
- }
174
164
  .k-switch-bar,
175
165
  .k-switch-wrapper {
176
- background: ${kswitch.checkedBgColor};
166
+ background: ${kswitch.checked.bgColor};
177
167
  }
178
168
  .k-switch-bar {
179
169
  width: 100%;
@@ -182,19 +172,21 @@ export function makeStyles() {
182
172
 
183
173
  // disabled
184
174
  &.k-disabled {
185
- background: ${kswitch.disabledBgColor};
186
- cursor: not-allowed;
175
+ &,
176
+ .k-switch-handle {
177
+ cursor: not-allowed;
178
+ }
179
+ &,
187
180
  .k-switch-bar,
188
181
  .k-switch-wrapper {
189
182
  background: ${kswitch.disabledBgColor};
190
183
  }
191
- }
192
-
193
- &:not(.k-checked) {
194
- .k-switch-bar,
195
- .k-switch-wrapper {
196
- border-top-right-radius: 0;
197
- border-bottom-right-radius: 0;
184
+ &.k-checked {
185
+ &,
186
+ .k-switch-bar,
187
+ .k-switch-wrapper {
188
+ background: ${kswitch.checked.disabledBgColor};
189
+ }
198
190
  }
199
191
  }
200
192
  `;
@@ -6,7 +6,8 @@ import '../../styles/global';
6
6
  const defaults = {
7
7
  get transition() { return theme.transition.large },
8
8
  // transition: '15000s',
9
- border: `1px solid #e5e5e5`,
9
+ border: `1px solid #e2e5e8`,
10
+ get borderRadius() { return theme.borderRadius },
10
11
  fontSize: `12px`,
11
12
  bgColor: `#fff`,
12
13
  get color() { return theme.color.text },
@@ -20,7 +21,7 @@ const defaults = {
20
21
  fontSize: `12px`,
21
22
  fontWeight: `bold`,
22
23
  textAlign: 'left',
23
- height: `30px`,
24
+ height: `40px`,
24
25
  delimiterHeight: '12px',
25
26
  delimiterColor: '#bfbfbf',
26
27
  },
@@ -49,7 +50,7 @@ const defaults = {
49
50
  sort: {
50
51
  iconHeight: `7px`,
51
52
  gap: `10px`,
52
- color: `#a6a6a6`,
53
+ color: `#d0d5d9`,
53
54
  disabledColor: `#ddd`,
54
55
  },
55
56
 
@@ -76,19 +77,18 @@ export function makeStyles() {
76
77
  return css`
77
78
  font-size: ${table.fontSize};
78
79
  color: ${table.color};
79
- border-top: ${table.border};
80
80
  position: relative;
81
81
  z-index: 0;
82
82
  .k-table-wrapper {
83
83
  border-bottom: ${table.border};
84
84
  overflow: auto;
85
+ border-radius: ${table.borderRadius};
85
86
  }
86
87
  table {
87
88
  width: 100%;
88
89
  // border-collapse: collapse;
89
90
  border-spacing: 0;
90
91
  table-layout: fixed;
91
-
92
92
  td,
93
93
  th{
94
94
  transition: all ${table.transition};
@@ -105,12 +105,16 @@ export function makeStyles() {
105
105
  z-index: 2;
106
106
  tr {
107
107
  height: ${table.thead.height};
108
+ &:not(:last-of-type) th {
109
+ border-bottom: ${table.border};
110
+ }
108
111
  }
109
112
  }
110
113
  th {
111
114
  padding: ${table.thead.padding};
112
115
  position: relative;
113
116
  background: ${table.thead.bgColor};
117
+ line-height: normal;
114
118
  &:before {
115
119
  content: '';
116
120
  height: ${table.thead.delimiterHeight};
@@ -124,12 +128,12 @@ export function makeStyles() {
124
128
  &:first-of-type:before {
125
129
  display: none;
126
130
  }
127
- border-bottom: ${table.border};
128
131
  }
129
132
  .k-table-title {
130
133
  display: inline-flex;
131
134
  align-items: center;
132
135
  max-width: 100%;
136
+ color: ${theme.color.lightBlack};
133
137
  }
134
138
  .k-table-title-text {
135
139
  flex: 1;
@@ -213,6 +217,7 @@ export function makeStyles() {
213
217
  &.k-border,
214
218
  &.k-grid {
215
219
  .k-table-wrapper {
220
+ border-top: ${table.border};
216
221
  border-left: ${table.border};
217
222
  border-right: ${table.border};
218
223
  }
@@ -2,6 +2,7 @@ import {useInstance, nextTick} from 'intact';
2
2
  import type {Table, TableRowKey} from './table';
3
3
  import {useState, State} from '../../hooks/useState';
4
4
  import type {TableRow} from './row';
5
+ import {swap} from '../utils';
5
6
 
6
7
  export function useDraggable(data: State<unknown[] | undefined>) {
7
8
  const instance = useInstance() as Table<any, TableRowKey>;
@@ -29,13 +30,13 @@ export function useDraggable(data: State<unknown[] | undefined>) {
29
30
  e.preventDefault();
30
31
  e.stopPropagation();
31
32
 
33
+ if (draggingKey.value === null) return;
34
+
32
35
  const newIndex = tableRow.get('index');
33
36
  if (newIndex === draggingIndex) return;
34
37
 
35
38
  // swap data
36
- const newData = data.value!.slice();
37
- const item = newData.splice(draggingIndex, 1)[0];
38
- newData.splice(newIndex, 0, item);
39
+ const newData = swap(data.value!, draggingIndex, newIndex);
39
40
 
40
41
  draggingIndex = newIndex;
41
42
 
@@ -5,7 +5,7 @@ import type {Table} from './';
5
5
  import {isStringOrNumber, isNull} from 'intact-shared';
6
6
  import {debounce} from '../utils';
7
7
  import type {useScroll} from './useScroll';
8
- import {useResizeObserver} from './useResizeObserver';
8
+ import {useResizeObserver} from '../../hooks/useResizeObserver';
9
9
 
10
10
  export function useStickyScrollbar(
11
11
  elementRef: RefObject<HTMLElement>,
@@ -23,7 +23,7 @@ export function useStickyScrollbar(
23
23
  stick.set(v === true ? 0 : isStringOrNumber(v) ? +v : null);
24
24
  });
25
25
 
26
- useResizeObserver(scrollRef, setTableActualWidth);
26
+ useResizeObserver(scrollRef, setTableActualWidth, true);
27
27
 
28
28
  onMounted(() => {
29
29
  setTableActualWidth();
@@ -3,7 +3,7 @@ import type {Table, TableRowKey} from './table';
3
3
  import type {TableColumn} from './column';
4
4
  import {useState} from '../../hooks/useState';
5
5
  import {scrollbarWidth} from '../position';
6
- import {useResizeObserver} from './useResizeObserver';
6
+ import {useResizeObserver} from '../../hooks/useResizeObserver';
7
7
 
8
8
  const hasLocalStorage = typeof localStorage !== 'undefined';
9
9
 
@@ -19,7 +19,7 @@ export function useWidth(
19
19
  initWidthFromStore();
20
20
 
21
21
  onMounted(() => checkTableWidth(true));
22
- useResizeObserver(scrollRef, () => checkTableWidth(false));
22
+ useResizeObserver(scrollRef, () => checkTableWidth(false), true);
23
23
 
24
24
  // if exist widthStoreKey, we get the default width from localStorage
25
25
  function initWidthFromStore() {
@@ -14,7 +14,6 @@ import {Tabs, Tab} from 'kpc';
14
14
  <Tab value="ruleout">出站规则</Tab>
15
15
  <Tab value="relatedVM">关联云主机</Tab>
16
16
  </Tabs>
17
-
18
17
  <div class="content">
19
18
  <div v-if={this.get('tab') === 'rulein'}>入站规则</div>
20
19
  <div v-else-if={this.get('tab') === 'ruleout'}>出站规则</div>
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  title: 定义卡片切换前的拦截函数
3
- order: 7
3
+ order: 8
4
4
  ---
5
5
 
6
6
  给`Tabs`添加`beforeChange`函数,来定义卡片切换之前的逻辑,如果该函数返回`true`则成功切换,否则忽略本次切换
@@ -22,7 +22,7 @@ import {Tabs, Tab} from 'kpc';
22
22
  <div class="content">
23
23
  <div v-if={this.get('tab') === 'rulein'}>入站规则</div>
24
24
  <div v-else-if={this.get('tab') === 'ruleout'}>出站规则</div>
25
- <div v-else>关联云主机</div>
25
+ <div v-else>关联云主机</div>
26
26
  </div>
27
27
  </div>
28
28
  ```
@@ -3,8 +3,7 @@ title: 卡片样式
3
3
  order: 5
4
4
  ---
5
5
 
6
- 改变`type`属性,可以呈现不同的样式,可选取值为:`default` `card` `border-card` `no-border-card`。
7
- 其中`no-border-card`适用于具有背景色的场景
6
+ 改变`type`属性,可以呈现不同的样式,可选取值为:`default` `card` `flat-card`。
8
7
 
9
8
  ```vdt
10
9
  import {Tabs, Tab} from 'kpc';
@@ -15,12 +14,7 @@ import {Tabs, Tab} from 'kpc';
15
14
  <Tab value="ruleout">出站规则</Tab>
16
15
  <Tab value="relatedVM">关联云主机</Tab>
17
16
  </Tabs>
18
- <Tabs type="border-card" v-model="tab">
19
- <Tab value="rulein">入站规则</Tab>
20
- <Tab value="ruleout">出站规则</Tab>
21
- <Tab value="relatedVM">关联云主机</Tab>
22
- </Tabs>
23
- <Tabs type="no-border-card" v-model="tab">
17
+ <Tabs type="flat-card" v-model="tab">
24
18
  <Tab value="rulein">入站规则</Tab>
25
19
  <Tab value="ruleout">出站规则</Tab>
26
20
  <Tab value="relatedVM">关联云主机</Tab>
@@ -31,9 +25,6 @@ import {Tabs, Tab} from 'kpc';
31
25
  ```styl
32
26
  .k-tabs
33
27
  margin-bottom 16px
34
- .k-no-border-card
35
- padding 10px
36
- background #f1f1f5
37
28
  ```
38
29
 
39
30
  ```ts
@@ -8,7 +8,7 @@ order: 6
8
8
  作为参数传给事件回调函数
9
9
 
10
10
  ```vdt
11
- import {Tabs, Tab, Button, ButtonGroup} from 'kpc';
11
+ import {Tabs, Tab, Button, ButtonGroup, Icon} from 'kpc';
12
12
 
13
13
  <div>
14
14
  <ButtonGroup v-model="size" checkType="radio">
@@ -29,7 +29,10 @@ import {Tabs, Tab, Button, ButtonGroup} from 'kpc';
29
29
  value={$value.value}
30
30
  key={$value.value}
31
31
  closable={$value.value !== 10}
32
- >{$value.label}</Tab>
32
+ >
33
+ <Icon class="k-icon-paper" size={this.get('size')} style="margin-right: 8px;" />
34
+ {$value.label}
35
+ </Tab>
33
36
  </Tabs>
34
37
  </div>
35
38
  ```
@@ -37,8 +40,6 @@ import {Tabs, Tab, Button, ButtonGroup} from 'kpc';
37
40
  ```styl
38
41
  .k-tabs
39
42
  margin 16px 0
40
- .k-no-border-card
41
- background #f1f1f5
42
43
  ```
43
44
 
44
45
  ```ts
@@ -47,7 +48,7 @@ import {bind, TabsProps} from 'kpc';
47
48
  interface Props {
48
49
  tab?: number
49
50
  tabs: TabItem[]
50
- size: TabsProps['size']
51
+ size: TabsProps['size']
51
52
  types: TabsProps['type'][]
52
53
  }
53
54
 
@@ -69,7 +70,7 @@ export default class extends Component<Props> {
69
70
  {value: 3, label: 'Tab 3'},
70
71
  ],
71
72
  size: 'large',
72
- types: ['default', 'card', 'border-card', 'no-border-card']
73
+ types: ['default', 'card', 'flat-card']
73
74
  } as Props;
74
75
  }
75
76
 
@@ -0,0 +1,104 @@
1
+ ---
2
+ title: 可滚动
3
+ order: 7
4
+ ---
5
+
6
+ 当选项卡过多时可滚动
7
+
8
+ ```vdt
9
+ import {Tabs, Tab, Button, ButtonGroup} from 'kpc';
10
+
11
+ <div style="width: 600px;">
12
+ <ButtonGroup v-model="size" checkType="radio">
13
+ <Button v-for={['large', 'default', 'small', 'mini']}
14
+ value={$value}
15
+ >{$value}</Button>
16
+ </ButtonGroup>
17
+ <br /><br />
18
+ <Tabs v-model="tab"
19
+ v-for={this.get('types')}
20
+ type={$value}
21
+ size={this.get('size')}
22
+ >
23
+ <Tab v-for={this.get('tabs')}
24
+ value={$value.value}
25
+ key={$value.value}
26
+ >{$value.label}</Tab>
27
+ </Tabs>
28
+
29
+ <br /><br />
30
+
31
+ <div style="display: flex">
32
+ <div v-for={this.get('types')} key={$value} style={{height: '200px'}}>
33
+ <Tabs v-model="tab"
34
+ type={$value}
35
+ size={this.get('size')}
36
+ vertical
37
+ >
38
+ <Tab v-for={this.get('tabs')}
39
+ value={$value.value}
40
+ key={$value.value}
41
+ >{$value.label}</Tab>
42
+ </Tabs>
43
+ </div>
44
+ </div>
45
+ </div>
46
+ ```
47
+
48
+ ```styl
49
+ .k-tabs
50
+ margin 16px 0
51
+
52
+ .k-tabs.k-vertical
53
+ margin 0 16px
54
+ ```
55
+
56
+ ```ts
57
+ import {bind, TabsProps} from 'kpc';
58
+
59
+ interface Props {
60
+ tab?: number
61
+ tabs: TabItem[]
62
+ size: TabsProps['size']
63
+ types: TabsProps['type'][]
64
+ }
65
+
66
+ type TabItem = {
67
+ value: number
68
+ label: string
69
+ }
70
+
71
+ export default class extends Component<Props> {
72
+ static template = template;
73
+
74
+ static defaults() {
75
+ return {
76
+ tab: 1,
77
+ tabs: [
78
+ { value: 1, label: 'Table 1'},
79
+ { value: 2, label: 'Table 2'},
80
+ { value: 3, label: 'Table 3'},
81
+ { value: 4, label: 'Table 4'},
82
+ { value: 5, label: 'Table 5'},
83
+ { value: 6, label: 'Table 6'},
84
+ { value: 7, label: 'Table 7'},
85
+ { value: 8, label: 'Table 8'},
86
+ { value: 9, label: 'Table 9'},
87
+ { value: 10, label: 'Table 10'},
88
+ { value: 11, label: 'Table 11'},
89
+ { value: 12, label: 'Table 12'},
90
+ { value: 13, label: 'Table 13'},
91
+ { value: 14, label: 'Table 14'},
92
+ { value: 15, label: 'Table 15'},
93
+ { value: 16, label: 'Table 16'},
94
+ { value: 17, label: 'Table 17'},
95
+ { value: 18, label: 'Table 18'},
96
+ { value: 19, label: 'Table 19'},
97
+ { value: 20, label: 'Table 20'},
98
+ ],
99
+ size: 'default',
100
+ types: ['default', 'card', 'flat-card']
101
+ } as Props;
102
+ }
103
+ }
104
+ ```
@@ -19,12 +19,7 @@ import {Tabs, Tab} from 'kpc';
19
19
  <Tab value="ruleout">出站规则</Tab>
20
20
  <Tab value="relatedVM">关联云主机</Tab>
21
21
  </Tabs>
22
- <Tabs v-model="tab" vertical type="border-card">
23
- <Tab value="rulein">入站规则</Tab>
24
- <Tab value="ruleout">出站规则</Tab>
25
- <Tab value="relatedVM">关联云主机</Tab>
26
- </Tabs>
27
- <Tabs v-model="tab" vertical type="no-border-card">
22
+ <Tabs v-model="tab" vertical type="flat-card">
28
23
  <Tab value="rulein">入站规则</Tab>
29
24
  <Tab value="ruleout">出站规则</Tab>
30
25
  <Tab value="relatedVM">关联云主机</Tab>
@@ -35,9 +30,6 @@ import {Tabs, Tab} from 'kpc';
35
30
  ```styl
36
31
  .k-tabs
37
32
  margin-right 16px
38
- .k-no-border-card
39
- padding 10px
40
- background #f1f1f5
41
33
  ```
42
34
 
43
35
  ```ts
@@ -17,7 +17,7 @@ sidebar: doc
17
17
  | value | 被选中的选项卡,使用`v-model`进行双向绑定 | `T = any` | `undefined`|
18
18
  | vertical | 垂直排列 | `boolean` | `undefined` |
19
19
  | size | 选项卡尺寸 | `"large"` &#124; `"default"` &#124; `"small"` &#124; `"mini"` | `"default"` |
20
- | type | 选项卡类型 | `"default"` &#124; `"card"` &#124; `"border-card"` &#124; `"no-border-card"` | `"default"` |
20
+ | type | 选项卡类型 | `"default"` &#124; `"card"` &#124; `"flat-card"` | `"default"` |
21
21
  | closable | 是否展示选项卡关闭按钮 | `boolean` | `false` |
22
22
  | beforeChange | 切换选项卡之前的拦截函数,如果该函数返回`false`则阻止本次切换,支持异步函数,参数为当前`Tab` `value` | <code>(value: T) => boolean &#124; Promise&lt;boolean&gt;</code> | `undefined` |
23
23