@king-design/intact 2.0.0-beta.1 → 2.0.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (544) 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 +60 -1
  31. package/components/cascader/index.vdt +4 -4
  32. package/components/cascader/styles.ts +1 -1
  33. package/components/cascader/useLabel.ts +9 -9
  34. package/components/checkbox/demos/basic.md +1 -1
  35. package/components/checkbox/demos/indeterminate.md +4 -20
  36. package/components/checkbox/demos/value.md +1 -1
  37. package/components/checkbox/index.md +10 -10
  38. package/components/checkbox/index.vdt +16 -13
  39. package/components/checkbox/styles.ts +3 -7
  40. package/components/code/demos/basic.md +3 -3
  41. package/components/code/index.md +8 -10
  42. package/components/collapse/index.md +8 -8
  43. package/components/collapse/item.vdt +1 -1
  44. package/components/collapse/styles.ts +4 -3
  45. package/components/colorpicker/index.md +3 -3
  46. package/components/colorpicker/index.spec.ts +1 -1
  47. package/components/colorpicker/index.ts +3 -0
  48. package/components/colorpicker/index.vdt +5 -1
  49. package/components/colorpicker/styles.ts +1 -1
  50. package/components/context.ts +14 -7
  51. package/components/datepicker/demos/disabledDate.md +0 -2
  52. package/components/datepicker/demos/format.md +1 -1
  53. package/components/datepicker/demos/shortcuts.md +2 -2
  54. package/components/datepicker/helpers.ts +9 -2
  55. package/components/datepicker/index.md +50 -27
  56. package/components/datepicker/index.spec.ts +1 -1
  57. package/components/datepicker/index.vdt +7 -6
  58. package/components/datepicker/styles.ts +1 -1
  59. package/components/diagram/index.md +108 -59
  60. package/components/diagram/shapes/line.ts +2 -3
  61. package/components/dialog/base.ts +2 -1
  62. package/components/dialog/demos/block.md +10 -56
  63. package/components/dialog/demos/size.md +1 -1
  64. package/components/dialog/index.md +47 -56
  65. package/components/dialog/index.spec.ts +2 -18
  66. package/components/dialog/styles.ts +4 -3
  67. package/components/dialog/useFixBody.ts +16 -0
  68. package/components/drawer/index.md +23 -20
  69. package/components/drawer/index.spec.ts +5 -5
  70. package/components/drawer/styles.ts +2 -2
  71. package/components/dropdown/demos/basic.md +4 -16
  72. package/components/dropdown/demos/contextmenu.md +1 -7
  73. package/components/dropdown/demos/disabled.md +1 -1
  74. package/components/dropdown/demos/nested.md +2 -4
  75. package/components/dropdown/demos/position.md +5 -6
  76. package/components/dropdown/demos/trigger.md +2 -4
  77. package/components/dropdown/dropdown.ts +2 -0
  78. package/components/dropdown/index.md +26 -15
  79. package/components/dropdown/index.spec.ts +3 -3
  80. package/components/dropdown/index.ts +1 -2
  81. package/components/dropdown/styles.ts +2 -2
  82. package/components/editable/index.md +10 -15
  83. package/components/editable/index.vdt +1 -0
  84. package/components/editable/styles.ts +1 -1
  85. package/components/form/demos/basic.md +15 -15
  86. package/components/form/index.md +29 -13
  87. package/components/form/index.spec.ts +9 -9
  88. package/components/form/item.vdt +6 -1
  89. package/components/form/methods.ts +6 -1
  90. package/components/form/styles.ts +1 -1
  91. package/components/form/useError.ts +3 -0
  92. package/components/form/useValidate.ts +2 -2
  93. package/components/grid/col.vdt +1 -1
  94. package/components/grid/index.md +34 -13
  95. package/components/grid/styles.ts +4 -1
  96. package/components/icon/index.md +4 -2
  97. package/components/icon/index.vdt +2 -2
  98. package/components/icon/styles.ts +11 -8
  99. package/components/input/demos/blocks.md +2 -2
  100. package/components/input/demos/clearable.md +3 -3
  101. package/components/input/demos/inline.md +12 -0
  102. package/components/input/demos/size.md +0 -1
  103. package/components/input/index.md +18 -22
  104. package/components/input/index.ts +2 -0
  105. package/components/input/index.vdt +42 -33
  106. package/components/input/search.vdt +4 -1
  107. package/components/input/styles.ts +8 -12
  108. package/components/layout/demos/asideFix.md +2 -3
  109. package/components/layout/index.md +5 -5
  110. package/components/layout/styles.ts +5 -4
  111. package/components/menu/demos/collapse.md +3 -1
  112. package/components/menu/index.md +11 -11
  113. package/components/menu/index.spec.ts +12 -6
  114. package/components/menu/item.ts +10 -16
  115. package/components/menu/item.vdt +3 -3
  116. package/components/menu/menu.ts +4 -0
  117. package/components/menu/styles.ts +6 -5
  118. package/components/menu/useExpanded.ts +1 -1
  119. package/components/menu/useHighlight.ts +45 -40
  120. package/components/message/index.md +23 -25
  121. package/components/message/index.spec.ts +1 -1
  122. package/components/message/styles.ts +7 -3
  123. package/components/pagination/index.md +11 -19
  124. package/components/pagination/styles.ts +2 -2
  125. package/components/progress/demos/customColor.md +1 -1
  126. package/components/progress/index.md +11 -5
  127. package/components/progress/styles.ts +2 -2
  128. package/components/radio/index.md +4 -7
  129. package/components/radio/index.vdt +15 -12
  130. package/components/radio/styles.ts +6 -10
  131. package/components/rate/index.md +5 -5
  132. package/components/rate/styles.ts +3 -2
  133. package/components/scrollSelect/index.md +14 -5
  134. package/components/scrollSelect/styles.ts +7 -2
  135. package/components/select/base.ts +0 -1
  136. package/components/select/base.vdt +128 -112
  137. package/components/select/demos/creatable.md +1 -1
  138. package/components/select/demos/customMenu.md +1 -1
  139. package/components/select/demos/format.md +3 -7
  140. package/components/select/index.md +35 -30
  141. package/components/select/index.spec.ts +1 -1
  142. package/components/select/menu.vdt +1 -0
  143. package/components/select/styles.ts +15 -9
  144. package/components/slider/demos/marks.md +2 -2
  145. package/components/slider/index.md +31 -16
  146. package/components/slider/styles.ts +5 -4
  147. package/components/spin/index.md +2 -2
  148. package/components/spin/styles.ts +1 -1
  149. package/components/spinner/index.md +23 -14
  150. package/components/spinner/index.ts +2 -2
  151. package/components/spinner/styles.ts +1 -1
  152. package/components/split/index.md +7 -7
  153. package/components/split/style.ts +2 -2
  154. package/components/steps/index.md +3 -3
  155. package/components/steps/styles.ts +3 -2
  156. package/components/switch/index.md +10 -19
  157. package/components/switch/styles.ts +5 -4
  158. package/components/table/demos/animation.md +92 -0
  159. package/components/table/demos/basic.md +1 -1
  160. package/components/table/demos/checkedKeys.md +2 -3
  161. package/components/table/demos/disableRow.md +2 -2
  162. package/components/table/demos/empty.md +1 -1
  163. package/components/table/demos/export.md +8 -7
  164. package/components/table/demos/fixColumn.md +2 -2
  165. package/components/table/demos/fixHeader.md +3 -3
  166. package/components/table/demos/group.md +3 -3
  167. package/components/table/demos/mergeCell.md +1 -1
  168. package/components/table/demos/resizable.md +1 -1
  169. package/components/table/demos/rowClassName.md +1 -1
  170. package/components/table/demos/rowExpandable.md +2 -6
  171. package/components/table/demos/sort.md +2 -1
  172. package/components/table/demos/stickHeader.md +3 -3
  173. package/components/table/demos/stickScrollbar.md +3 -3
  174. package/components/table/demos/tooltip.md +1 -2
  175. package/components/table/index.md +92 -66
  176. package/components/table/index.spec.ts +4 -1
  177. package/components/table/index.ts +1 -0
  178. package/components/table/row.vdt +5 -1
  179. package/components/table/styles.ts +17 -5
  180. package/components/table/table.ts +2 -0
  181. package/components/table/table.vdt +91 -86
  182. package/components/table/useFixedColumns.ts +5 -3
  183. package/components/table/useWidth.ts +8 -1
  184. package/components/tabs/index.md +15 -8
  185. package/components/tabs/index.spec.ts +1 -1
  186. package/components/tabs/styles.ts +11 -7
  187. package/components/tabs/tab.vdt +1 -1
  188. package/components/tabs/useActiveBar.ts +3 -2
  189. package/components/tag/base.ts +3 -0
  190. package/components/tag/demos/border.md +2 -1
  191. package/components/tag/index.md +4 -3
  192. package/components/tag/styles.ts +9 -4
  193. package/components/timeline/styles.ts +3 -3
  194. package/components/timepicker/constants.ts +3 -2
  195. package/components/timepicker/demos/basic.md +2 -2
  196. package/components/timepicker/demos/step.md +1 -1
  197. package/components/timepicker/index.md +47 -16
  198. package/components/timepicker/index.spec.ts +11 -10
  199. package/components/timepicker/styles.ts +1 -1
  200. package/components/timepicker/useStep.ts +3 -3
  201. package/components/timepicker/useValue.ts +2 -2
  202. package/components/tip/demos/closable.md +1 -1
  203. package/components/tip/index.md +8 -4
  204. package/components/tip/styles.ts +1 -1
  205. package/components/tooltip/demos/basic.md +2 -13
  206. package/components/tooltip/demos/trigger.md +1 -2
  207. package/components/tooltip/index.md +26 -13
  208. package/components/tooltip/index.spec.ts +24 -15
  209. package/components/tooltip/styles.ts +1 -1
  210. package/components/transfer/index.md +36 -23
  211. package/components/transfer/index.spec.ts +7 -6
  212. package/components/transfer/styles.ts +3 -9
  213. package/components/tree/index.md +76 -49
  214. package/components/tree/index.spec.ts +13 -12
  215. package/components/tree/index.ts +1 -0
  216. package/components/tree/index.vdt +1 -0
  217. package/components/tree/styles.ts +7 -4
  218. package/components/treeSelect/index.md +50 -20
  219. package/components/treeSelect/index.spec.ts +5 -5
  220. package/components/treeSelect/styles.ts +3 -2
  221. package/components/upload/index.md +55 -19
  222. package/components/upload/index.spec.ts +1 -1
  223. package/components/upload/index.ts +1 -1
  224. package/components/upload/index.vdt +3 -4
  225. package/components/upload/styles.ts +5 -4
  226. package/components/utils.ts +1 -1
  227. package/components/wave/index.ts +94 -0
  228. package/components/wave/styles.ts +50 -0
  229. package/es/components/breadcrumb/item.d.ts +1 -1
  230. package/es/components/breadcrumb/item.js +3 -14
  231. package/es/components/breadcrumb/styles.js +1 -1
  232. package/es/components/button/index.vdt.js +26 -17
  233. package/es/components/button/styles.d.ts +82 -1
  234. package/es/components/button/styles.js +16 -2
  235. package/es/components/card/styles.js +1 -1
  236. package/es/components/carousel/styles.js +4 -1
  237. package/es/components/carousel/useSlide.js +10 -9
  238. package/es/components/cascader/index.spec.js +89 -1
  239. package/es/components/cascader/index.vdt.js +4 -4
  240. package/es/components/cascader/useLabel.js +8 -12
  241. package/es/components/checkbox/index.vdt.js +15 -10
  242. package/es/components/checkbox/styles.js +2 -2
  243. package/es/components/collapse/item.vdt.js +2 -1
  244. package/es/components/collapse/styles.js +5 -1
  245. package/es/components/colorpicker/index.d.ts +2 -0
  246. package/es/components/colorpicker/index.js +2 -1
  247. package/es/components/colorpicker/index.spec.js +1 -1
  248. package/es/components/colorpicker/index.vdt.js +3 -1
  249. package/es/components/context.d.ts +5 -2
  250. package/es/components/context.js +7 -4
  251. package/es/components/datepicker/helpers.d.ts +2 -1
  252. package/es/components/datepicker/helpers.js +8 -2
  253. package/es/components/datepicker/index.spec.js +1 -1
  254. package/es/components/datepicker/index.vdt.js +10 -5
  255. package/es/components/datepicker/styles.d.ts +46 -1
  256. package/es/components/diagram/shapes/generateShapes.js +3 -3
  257. package/es/components/diagram/shapes/line.d.ts +2 -2
  258. package/es/components/diagram/shapes/line.js +0 -1
  259. package/es/components/dialog/base.d.ts +2 -0
  260. package/es/components/dialog/base.js +2 -1
  261. package/es/components/dialog/index.spec.js +59 -94
  262. package/es/components/dialog/styles.js +5 -1
  263. package/es/components/dialog/useFixBody.d.ts +6 -0
  264. package/es/components/dialog/useFixBody.js +12 -0
  265. package/es/components/drawer/index.spec.js +5 -5
  266. package/es/components/drawer/styles.js +1 -1
  267. package/es/components/dropdown/dropdown.js +1 -0
  268. package/es/components/dropdown/index.js +1 -2
  269. package/es/components/dropdown/index.spec.js +3 -3
  270. package/es/components/dropdown/styles.js +1 -1
  271. package/es/components/editable/index.vdt.js +2 -1
  272. package/es/components/editable/styles.d.ts +8 -1
  273. package/es/components/form/index.spec.js +10 -12
  274. package/es/components/form/item.vdt.js +13 -9
  275. package/es/components/form/useError.d.ts +4 -0
  276. package/es/components/form/useError.js +3 -1
  277. package/es/components/form/useValidate.js +2 -2
  278. package/es/components/grid/col.vdt.js +4 -2
  279. package/es/components/grid/styles.js +1 -1
  280. package/es/components/grid/useGutter.d.ts +1 -1
  281. package/es/components/icon/index.vdt.js +3 -2
  282. package/es/components/icon/styles.js +8 -4
  283. package/es/components/input/index.d.ts +1 -0
  284. package/es/components/input/index.js +2 -1
  285. package/es/components/input/index.vdt.js +47 -32
  286. package/es/components/input/search.vdt.js +4 -2
  287. package/es/components/input/styles.js +8 -3
  288. package/es/components/layout/styles.d.ts +1 -1
  289. package/es/components/layout/styles.js +7 -3
  290. package/es/components/menu/index.spec.js +15 -8
  291. package/es/components/menu/item.d.ts +1 -2
  292. package/es/components/menu/item.js +10 -17
  293. package/es/components/menu/item.vdt.js +4 -4
  294. package/es/components/menu/menu.d.ts +3 -0
  295. package/es/components/menu/menu.js +4 -0
  296. package/es/components/menu/styles.d.ts +62 -1
  297. package/es/components/menu/styles.js +6 -2
  298. package/es/components/menu/useExpanded.d.ts +1 -4
  299. package/es/components/menu/useHighlight.d.ts +5 -8
  300. package/es/components/menu/useHighlight.js +44 -33
  301. package/es/components/message/index.spec.js +1 -1
  302. package/es/components/message/styles.js +6 -2
  303. package/es/components/pagination/styles.js +1 -1
  304. package/es/components/radio/index.vdt.js +14 -9
  305. package/es/components/radio/styles.js +9 -1
  306. package/es/components/rate/styles.js +5 -1
  307. package/es/components/scrollSelect/styles.d.ts +14 -1
  308. package/es/components/scrollSelect/styles.js +9 -1
  309. package/es/components/select/base.vdt.js +135 -121
  310. package/es/components/select/index.spec.js +1 -1
  311. package/es/components/select/menu.vdt.js +1 -0
  312. package/es/components/select/styles.js +9 -4
  313. package/es/components/select/useSearchable.d.ts +1 -1
  314. package/es/components/slider/styles.js +5 -1
  315. package/es/components/spinner/index.d.ts +1 -1
  316. package/es/components/spinner/index.js +1 -1
  317. package/es/components/split/style.js +1 -1
  318. package/es/components/steps/context.d.ts +1 -1
  319. package/es/components/steps/styles.js +5 -1
  320. package/es/components/switch/styles.js +5 -1
  321. package/es/components/table/index.d.ts +1 -0
  322. package/es/components/table/index.spec.js +2 -1
  323. package/es/components/table/row.vdt.js +12 -4
  324. package/es/components/table/styles.js +6 -1
  325. package/es/components/table/table.d.ts +1 -0
  326. package/es/components/table/table.js +2 -1
  327. package/es/components/table/table.vdt.js +30 -27
  328. package/es/components/table/useColumns.d.ts +1 -1
  329. package/es/components/table/useFixedColumns.d.ts +1 -1
  330. package/es/components/table/useFixedColumns.js +5 -2
  331. package/es/components/table/useGroup.d.ts +1 -1
  332. package/es/components/table/useResizable.d.ts +1 -1
  333. package/es/components/table/useSortable.d.ts +1 -1
  334. package/es/components/table/useWidth.js +7 -1
  335. package/es/components/tabs/index.spec.js +1 -1
  336. package/es/components/tabs/styles.js +9 -2
  337. package/es/components/tabs/tab.vdt.js +2 -1
  338. package/es/components/tabs/useActiveBar.js +6 -3
  339. package/es/components/tag/base.js +1 -0
  340. package/es/components/tag/styles.js +8 -2
  341. package/es/components/timepicker/constants.d.ts +2 -1
  342. package/es/components/timepicker/constants.js +3 -2
  343. package/es/components/timepicker/index.spec.js +36 -35
  344. package/es/components/timepicker/useStep.js +3 -3
  345. package/es/components/timepicker/useValue.js +2 -2
  346. package/es/components/tooltip/index.spec.js +32 -25
  347. package/es/components/transfer/index.spec.js +20 -19
  348. package/es/components/transfer/styles.js +2 -6
  349. package/es/components/tree/index.d.ts +1 -1
  350. package/es/components/tree/index.js +1 -1
  351. package/es/components/tree/index.spec.js +20 -19
  352. package/es/components/tree/index.vdt.js +1 -0
  353. package/es/components/tree/styles.js +5 -1
  354. package/es/components/treeSelect/index.spec.js +5 -5
  355. package/es/components/treeSelect/styles.js +5 -1
  356. package/es/components/upload/index.d.ts +1 -1
  357. package/es/components/upload/index.spec.js +1 -1
  358. package/es/components/upload/index.vdt.js +10 -11
  359. package/es/components/upload/styles.js +5 -1
  360. package/es/components/utils.d.ts +1 -1
  361. package/es/components/wave/index.d.ts +19 -0
  362. package/es/components/wave/index.js +120 -0
  363. package/es/components/wave/styles.d.ts +2 -0
  364. package/es/components/wave/styles.js +17 -0
  365. package/es/hooks/useRouter.d.ts +1 -0
  366. package/es/hooks/useRouter.js +10 -0
  367. package/es/i18n/en-US.d.ts +1 -0
  368. package/es/i18n/en-US.js +1 -0
  369. package/es/index.d.ts +3 -2
  370. package/es/index.js +3 -2
  371. package/es/packages/kpc-react/__tests__/index.js +10 -7
  372. package/es/site/data/components/affix/demos/custom/index.d.ts +2 -2
  373. package/es/site/data/components/affix/demos/custom/index.js +4 -4
  374. package/es/site/data/components/affix/demos/custom/react.d.ts +2 -2
  375. package/es/site/data/components/affix/demos/custom/react.js +6 -6
  376. package/es/site/data/components/button/demos/group/react.js +2 -2
  377. package/es/site/data/components/button/demos/icon/react.js +6 -0
  378. package/es/site/data/components/card/demos/basic/react.js +2 -2
  379. package/es/site/data/components/card/demos/extra/react.js +19 -5
  380. package/es/site/data/components/card/demos/noHeader/react.js +2 -2
  381. package/es/site/data/components/checkbox/demos/indeterminate/index.d.ts +1 -1
  382. package/es/site/data/components/checkbox/demos/indeterminate/index.js +2 -2
  383. package/es/site/data/components/checkbox/demos/indeterminate/react.d.ts +1 -1
  384. package/es/site/data/components/checkbox/demos/indeterminate/react.js +5 -6
  385. package/es/site/data/components/dialog/demos/block/react.d.ts +9 -0
  386. package/es/site/data/components/dialog/demos/block/react.js +88 -0
  387. package/es/site/data/components/dropdown/demos/basic/react.js +1 -3
  388. package/es/site/data/components/dropdown/demos/nested/react.js +1 -3
  389. package/es/site/data/components/dropdown/demos/position/react.js +2 -7
  390. package/es/site/data/components/dropdown/demos/trigger/react.js +1 -3
  391. package/es/site/data/components/input/demos/blocks/react.js +4 -2
  392. package/es/site/data/components/input/demos/clearable/react.js +7 -5
  393. package/es/site/data/components/{dialog/demos/extends → input/demos/inline}/index.d.ts +0 -3
  394. package/es/site/data/components/input/demos/inline/index.js +17 -0
  395. package/es/site/data/components/input/demos/inline/react.d.ts +4 -0
  396. package/es/site/data/components/input/demos/inline/react.js +24 -0
  397. package/es/site/data/components/input/demos/size/react.js +0 -3
  398. package/es/site/data/components/layout/demos/asideFix/react.js +2 -1
  399. package/es/site/data/components/menu/demos/collapse/index.js +1 -0
  400. package/es/site/data/components/menu/demos/collapse/react.js +7 -0
  401. package/es/site/data/components/select/demos/creatable/react.js +1 -1
  402. package/es/site/data/components/select/demos/customMenu/react.js +1 -0
  403. package/es/site/data/components/select/demos/format/react.js +11 -18
  404. package/es/site/data/components/table/demos/animation/index.d.ts +23 -0
  405. package/es/site/data/components/table/demos/animation/index.js +78 -0
  406. package/es/site/data/components/table/demos/animation/react.d.ts +23 -0
  407. package/es/site/data/components/table/demos/animation/react.js +113 -0
  408. package/es/site/data/components/table/demos/export/react.js +1 -2
  409. package/es/site/data/components/table/demos/sort/react.js +4 -1
  410. package/es/site/data/components/tag/demos/border/react.js +3 -1
  411. package/es/site/data/components/tip/demos/closable/react.js +1 -0
  412. package/es/site/data/components/tooltip/demos/trigger/react.js +1 -2
  413. package/es/site/data/docs/design/{button → about}/index.d.ts +13 -11
  414. package/es/site/data/docs/design/{8point → about}/index.js +0 -0
  415. package/es/site/data/docs/design/{dialog → guide-1}/index.d.ts +15 -11
  416. package/es/site/data/docs/design/{button → guide-1}/index.js +0 -0
  417. package/es/site/data/docs/design/guide-2/index.d.ts +64 -0
  418. package/es/site/data/docs/design/{color → guide-2}/index.js +0 -0
  419. package/es/site/data/docs/design/guide-3/index.d.ts +64 -0
  420. package/es/site/data/docs/design/{dialog → guide-3}/index.js +0 -0
  421. package/es/site/data/docs/design/guide-4/index.d.ts +64 -0
  422. package/es/site/data/docs/design/{font → guide-4}/index.js +0 -0
  423. package/es/site/data/docs/design/guide-5/index.d.ts +64 -0
  424. package/es/site/data/docs/design/{format → guide-5}/index.js +0 -0
  425. package/es/site/data/docs/design/guide-6/index.d.ts +64 -0
  426. package/es/site/data/docs/design/{gutter → guide-6}/index.js +0 -0
  427. package/es/site/data/docs/design/guide-7/index.d.ts +64 -0
  428. package/es/site/data/docs/design/{hierarchy → guide-7}/index.js +0 -0
  429. package/es/site/data/docs/design/guide-8/index.d.ts +64 -0
  430. package/es/site/data/docs/design/{language → guide-8}/index.js +0 -0
  431. package/es/site/data/docs/design/guide-9/index.d.ts +64 -0
  432. package/es/site/data/docs/design/{navigator → guide-9}/index.js +0 -0
  433. package/es/site/data/docs/design/model/index.d.ts +64 -0
  434. package/es/site/data/docs/design/{tip → model}/index.js +0 -0
  435. package/es/site/data/docs/design/model-1/index.d.ts +64 -0
  436. package/es/site/data/docs/design/{text → model-1}/index.js +0 -0
  437. package/es/site/data/docs/design/pattern-1/index.d.ts +64 -0
  438. package/es/site/data/docs/design/pattern-1/index.js +42 -0
  439. package/es/site/data/docs/design/pattern-2/index.d.ts +64 -0
  440. package/es/site/data/docs/design/pattern-2/index.js +42 -0
  441. package/es/site/data/docs/design/pattern-3/index.d.ts +64 -0
  442. package/es/site/data/docs/design/pattern-3/index.js +42 -0
  443. package/es/site/data/docs/design/pattern-4/index.d.ts +64 -0
  444. package/es/site/data/docs/design/pattern-4/index.js +42 -0
  445. package/es/site/data/docs/design/pattern-5/index.d.ts +64 -0
  446. package/es/site/data/docs/design/pattern-5/index.js +42 -0
  447. package/es/site/data/docs/design/pattern-6/index.d.ts +64 -0
  448. package/es/site/data/docs/design/pattern-6/index.js +42 -0
  449. package/es/site/data/docs/design/{navigator → principle}/index.d.ts +13 -11
  450. package/es/site/data/docs/design/principle/index.js +42 -0
  451. package/es/site/data/docs/design/{tip → value}/index.d.ts +13 -11
  452. package/es/site/data/docs/design/value/index.js +42 -0
  453. package/es/site/data/docs/theme/index.d.ts +0 -2
  454. package/es/site/src/client.js +4 -1
  455. package/es/site/src/components/ImgBox/index.d.ts +21 -0
  456. package/es/site/src/components/ImgBox/index.js +69 -0
  457. package/es/site/src/{pages/designdoc → components/ImgBox}/styles.d.ts +0 -0
  458. package/es/site/src/components/ImgBox/styles.js +13 -0
  459. package/es/site/src/components/WorkflowCard/styles.js +3 -10
  460. package/es/site/src/components/article/index.d.ts +4 -1
  461. package/es/site/src/components/article/index.js +72 -6
  462. package/es/site/src/components/blockquote/index.d.ts +4 -0
  463. package/es/site/src/components/blockquote/index.js +13 -0
  464. package/es/site/src/components/blockquote/slot.d.ts +11 -0
  465. package/es/site/src/components/blockquote/slot.js +19 -0
  466. package/es/site/src/components/card/index.d.ts +1 -1
  467. package/es/site/src/components/card/index.js +4 -1
  468. package/es/site/src/components/card/styles.js +2 -10
  469. package/es/site/src/components/catalogue/index.js +2 -2
  470. package/es/site/src/components/catalogue/styles.js +1 -1
  471. package/es/site/src/components/footer/styles.js +2 -2
  472. package/es/site/src/components/link/index.d.ts +1 -0
  473. package/es/site/src/components/link/index.js +11 -3
  474. package/es/site/src/pages/design/index.d.ts +1 -0
  475. package/es/site/src/pages/design/index.js +19 -0
  476. package/es/site/src/pages/design/styles.d.ts +1 -0
  477. package/es/site/src/pages/design/styles.js +13 -0
  478. package/es/site/src/pages/document/index.d.ts +4 -2
  479. package/es/site/src/pages/document/index.js +89 -46
  480. package/es/site/src/pages/document/styles.js +1 -1
  481. package/es/site/src/pages/iframe/button/styles.js +4 -4
  482. package/es/site/src/pages/iframe/colorProcess/index.d.ts +1 -0
  483. package/es/site/src/pages/iframe/colorProcess/index.js +9 -5
  484. package/es/site/src/pages/iframe/colorProcess/styles.js +1 -1
  485. package/es/site/src/pages/index/BestPractice/index.d.ts +1 -0
  486. package/es/site/src/pages/index/BestPractice/index.js +14 -14
  487. package/es/site/src/pages/index/BestPractice/styles.d.ts +1 -1
  488. package/es/site/src/pages/index/BestPractice/styles.js +3 -3
  489. package/es/site/src/pages/index/ColorProcess/styles.d.ts +1 -1
  490. package/es/site/src/pages/index/ColorProcess/styles.js +14 -2
  491. package/es/site/src/pages/index/KingVersion/styles.js +1 -1
  492. package/es/site/src/pages/index/NewFunction/index.d.ts +1 -0
  493. package/es/site/src/pages/index/NewFunction/index.js +4 -2
  494. package/es/site/src/pages/index/NewFunction/styles.d.ts +1 -1
  495. package/es/site/src/pages/index/NewFunction/styles.js +4 -3
  496. package/es/site/src/pages/index/index.d.ts +2 -7
  497. package/es/site/src/pages/index/index.js +11 -8
  498. package/es/site/src/pages/index/styles.js +2 -4
  499. package/es/site/src/pages/layout.d.ts +2 -0
  500. package/es/site/src/pages/layout.js +33 -4
  501. package/es/site/src/pages/resource/index.d.ts +6 -0
  502. package/es/site/src/pages/resource/index.js +21 -1
  503. package/es/site/src/pages/resource/styles.js +5 -3
  504. package/es/site/src/pages/solution/index.d.ts +6 -0
  505. package/es/site/src/pages/solution/index.js +19 -1
  506. package/es/site/src/pages/solution/styles.js +3 -2
  507. package/es/site/src/pages/styles.d.ts +1 -0
  508. package/es/site/src/pages/styles.js +5 -2
  509. package/es/site/src/router/index.d.ts +1 -0
  510. package/es/site/src/router/index.js +327 -318
  511. package/es/site/src/styles/default.d.ts +1 -0
  512. package/es/site/src/styles/default.js +3 -2
  513. package/es/styles/global.js +4 -3
  514. package/es/styles/theme.d.ts +16 -7
  515. package/es/styles/theme.js +15 -7
  516. package/hooks/useRouter.ts +11 -0
  517. package/i18n/en-US.ts +1 -0
  518. package/index.ts +3 -2
  519. package/package.json +6 -6
  520. package/styles/global.ts +41 -8
  521. package/styles/theme.ts +12 -8
  522. package/typings/global.d.ts +2 -0
  523. package/components/dialog/demos/asyncOpen.md +0 -111
  524. package/components/dialog/demos/extends.md +0 -87
  525. package/es/site/data/components/dialog/demos/asyncOpen/dialog.d.ts +0 -28
  526. package/es/site/data/components/dialog/demos/asyncOpen/dialog.js +0 -45
  527. package/es/site/data/components/dialog/demos/asyncOpen/index.d.ts +0 -13
  528. package/es/site/data/components/dialog/demos/asyncOpen/index.js +0 -58
  529. package/es/site/data/components/dialog/demos/extends/dialog.d.ts +0 -28
  530. package/es/site/data/components/dialog/demos/extends/dialog.js +0 -39
  531. package/es/site/data/components/dialog/demos/extends/index.js +0 -49
  532. package/es/site/data/docs/design/8point/index.d.ts +0 -58
  533. package/es/site/data/docs/design/color/demos/demos0/index.d.ts +0 -3
  534. package/es/site/data/docs/design/color/demos/demos0/index.js +0 -3
  535. package/es/site/data/docs/design/color/index.d.ts +0 -56
  536. package/es/site/data/docs/design/font/index.d.ts +0 -58
  537. package/es/site/data/docs/design/format/index.d.ts +0 -58
  538. package/es/site/data/docs/design/gutter/index.d.ts +0 -58
  539. package/es/site/data/docs/design/hierarchy/index.d.ts +0 -58
  540. package/es/site/data/docs/design/language/index.d.ts +0 -56
  541. package/es/site/data/docs/design/text/index.d.ts +0 -58
  542. package/es/site/src/pages/designdoc/index.d.ts +0 -11
  543. package/es/site/src/pages/designdoc/index.js +0 -21
  544. package/es/site/src/pages/designdoc/styles.js +0 -6
@@ -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
 
@@ -73,7 +74,13 @@ export function useWidth(
73
74
  if (resizable) {
74
75
  const hasBorder = type === 'grid' || type === 'border';
75
76
  const _tableWidth = tableRef.value!.offsetWidth;
76
- const containerWidth = scrollRef.value!.offsetWidth + (hasBorder ? -2 : 0);
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
+
77
84
  if (_tableWidth < containerWidth) {
78
85
  tableWidth.set(isMount ? null : containerWidth);
79
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';
@@ -9,24 +9,55 @@ sidebar: doc
9
9
 
10
10
  | 属性 | 说明 | 类型 | 默认值 |
11
11
  | --- | --- | --- | --- |
12
- | value | 当前选中的时间字符串 | `String` | `undefind` |
13
- | clearable | 是否能清空当前值 | `Boolean` | `false` |
14
- | step | 固定时间点的步长 | `String` | `undefined` |
15
- | max | 最大可选时间 | `String` | `undefined` |
16
- | min | 最小可选时间 | `String` | `undefined` |
17
- | placeholder | 占位文字 | `String` | `"请选择时间"` |
18
- | disabled | 是否禁用 | `Boolean` | `false` |
19
- | multiple | 是否支持多选 | `Boolean` | `false` |
20
- | size | 组件尺寸 | `"large"` &#124; `"default"` &#124; `"small"` &#124; `"mini"` | `"default"` |
21
- | range | 是否选择时间范围 | `Boolean` | `false` |
22
- | container | 指定弹出选择层追加的位置,默认:`Dialog`类型的组件会追加到`Dialog`中,其他会追加到`body`中。你可以传入函数返回一个DOM用来作为插入的容器,或者传入字符串用来给`querySelector`进行查询 | `Function` &#124; `String` | `undefined` |
23
- | format | 指定时间格式化字符串 | `String` | `HH:mm:ss` |
24
- | valueFormat | 指定`value`值时间格式化字符串 | `String` | `undefined` |
25
- | showFormat | 指定展示的时间格式化字符串 | `String` | `undefined` |
12
+ | value | 当前选中的时间字符串,可用`v-model`双向绑定,你可以传入任意合法的日期,组件最终都会处理成时间字符串,日期信息将被忽略 | `Value` &#124; `Value[]` &#124; `[Value, Value]` &#124; `[Value, Value][]` | `""` |
13
+ | multiple | 是否支持多选 | `boolean` | `false` |
14
+ | disabled | 是否禁用 | `boolean` | `false` |
15
+ | name | 表单元素的`name` | `string` | `undefined` |
16
+ | size | 尺寸 | `"large"` &#124; `"default"` &#124; `"small"` &#124; `"mini"` | `"default"` |
17
+ | hideIcon | 是否隐藏后面的图标 | `boolean` | `false` |
18
+ | clearable | 是否可清空 | `boolean` | `false` |
19
+ | fluid | 是否宽度100% | `boolean` | `false` |
20
+ | inline | 展示内联模式,该模式下,组件没有边框,宽度和高度如同内联元素一样由内容撑开 | `boolean` | `false` |
21
+ | placeholder | 占位文案 | `string` | `"请选择时间"` |
22
+ | container | 指定弹出菜单追加的位置,默认:`Dialog`类型的组件会追加到`Dialog`中,其他会追加到`body`中。你可以传入函数返回一个DOM用来作为插入的容器,或者传入字符串用来给`querySelector`进行查询 | `Container` | `undefined` |
23
+ | width | 指定宽度,组件自动添加单位`px` | `number` &#124; `string` | `undefined` |
24
+ | range | 是否选择时间范围 | `boolean` | `false` |
25
+ | format | 指定日期格式化字符串 | `string` | `YYYY-MM-DD HH:mm:ss` |
26
+ | valueFormat | 指定`value`值日期格式化字符串 | `string` | `undefined` |
27
+ | showFormat | 指定展示的日期格式化字符串 | `string` | `undefined` |
28
+ | max | 最大可选时间 | `Value` | `undefind` |
29
+ | min | 最小可选时间 | `Value` | `undefind` |
30
+ | disabledDate | 该属性值是一个函数,用于定义那些日期被禁止选择,函数参数为日期字符串,返回`true`则表示禁用该日期 | `(v: Dayjs) => boolean` | `undefined` |
31
+ | step | 固定时间点的步长 | `string` | `undefined` |
32
+
33
+ ```ts
34
+ import {Dayjs} from 'dayjs';
35
+ import {VNode} from 'intact';
36
+
37
+ export type Value = string | Date | number | Dayjs;
38
+ export type Container = string | ((parentDom: Element, anchor: Node | null) => Element)
39
+ ```
40
+
41
+ # 扩展点
42
+
43
+ ## Select
44
+
45
+ | 名称 | 说明 | 参数 |
46
+ | --- | --- | --- |
47
+ | value | 自定义选择结果的展示 | `([value: any, label: Children]) => Children` |
48
+ | values | 自定义多选的选择结果的展示 | `([values: any[], labels: Children[]]) => Children` |
49
+ | prefix | 自定义输入款前面展示的内容 | - |
50
+ | suffix | 自定义输入框后面展示的内容 | - |
51
+
52
+ ```ts
53
+ import {Children} from 'intact';
54
+ ```
26
55
 
27
56
  # 事件
28
57
 
29
58
  | 事件名 | 说明 | 参数 |
30
59
  | --- | --- | --- |
31
- | selectStart | 该事件尽在范围选择(`range`),并且只选择了第一个值时触发 | `timeString` |
32
- | change | 当用户操作完成且值`value`变化时触发 | `dateString` |
60
+ | show | 菜单弹出时触发 | - |
61
+ | hide | 菜单隐藏时触发 | - |
62
+ | selecting | 该事件尽在范围选择(`range`)触发,表示用户正在操作选择,可能只选了一个值,或者正在修改日期的时间 | `(value: [Dayjs, Dayjs?]) => void` |
63
+ | change | 当用户操作完成且值`value`变化时触发 | `(value: string) => void` |
@@ -11,15 +11,16 @@ describe('Timepicker', () => {
11
11
 
12
12
  afterEach(async () => {
13
13
  unmount();
14
- await wait(400);
14
+ await wait(500);
15
15
  });
16
16
 
17
- it('select time', async () => {
17
+ it('select time', async function() {
18
+ this.timeout(0);
18
19
  const [instance, element] = mount(BasicDemo);
19
20
 
20
21
  const [picker1, picker2] = element.querySelectorAll('.k-select') as NodeListOf<HTMLElement>;
21
22
  picker1.click();
22
- await wait(300);
23
+ await wait(500);
23
24
  let dropdown = getElement('.k-time-content')!;
24
25
  expect(dropdown.innerHTML).to.matchSnapshot();
25
26
  const next = dropdown.querySelector('.k-scroll-select-item:nth-child(11)') as HTMLElement;
@@ -33,18 +34,18 @@ describe('Timepicker', () => {
33
34
  expect(dropdown.innerHTML).to.matchSnapshot();
34
35
  const ok = dropdown.querySelector('.k-btn') as HTMLElement;
35
36
  ok.click();
36
- await wait(300);
37
+ await wait(500);
37
38
  expect(instance.get('time')).to.eql('02:00:00');
38
39
  expect(dropdown.style.display).to.eql('none');
39
40
  // set time
40
41
  instance.set('time', '03:03:03');
41
42
  picker1.click();
42
- await wait(300);
43
+ await wait(500);
43
44
  expect(dropdown.innerHTML).to.matchSnapshot();
44
45
 
45
46
  // multiple
46
47
  picker2.click();
47
- await wait(300);
48
+ await wait(500);
48
49
  dropdown = getElement('.k-time-content')!;
49
50
  dropdown.querySelector<HTMLElement>('.k-scroll-select-item:nth-child(11)')!.click();
50
51
  const ok2 = dropdown.querySelector('.k-btn') as HTMLElement;
@@ -83,7 +84,7 @@ describe('Timepicker', () => {
83
84
 
84
85
  const picker = element.querySelector('.k-select') as HTMLElement;
85
86
  picker.click();
86
- await wait(300);
87
+ await wait(500);
87
88
  const dropdown = getElement('.k-time-content')!;
88
89
  expect(dropdown.innerHTML).to.matchSnapshot();
89
90
  const [start, end] = dropdown.querySelectorAll<HTMLElement>('.k-datepicker-calendar-wrapper');
@@ -95,7 +96,7 @@ describe('Timepicker', () => {
95
96
  expect(dropdown.innerHTML).to.matchSnapshot();
96
97
  dropdown.querySelector<HTMLElement>('.k-btn')!.click();
97
98
  await wait();
98
- expect(instance.get('time')).to.eql(['01:00:00', '02:00:00']);
99
+ expect(instance.get('time')).to.eql(['01:00:00', '01:59:59']);
99
100
  });
100
101
 
101
102
  it('step', async () => {
@@ -122,7 +123,7 @@ describe('Timepicker', () => {
122
123
  (start.querySelector('.k-active')!.nextElementSibling as HTMLElement).click();
123
124
  await wait();
124
125
  expect(dropdown.innerHTML).to.matchSnapshot();
125
- (end.querySelector('.k-active')!.nextElementSibling as HTMLElement).click();
126
+ (end.querySelector('.k-disabled')!.nextElementSibling as HTMLElement).click();
126
127
  await wait();
127
128
  expect(dropdown.innerHTML).to.matchSnapshot();
128
129
  dropdown.querySelector<HTMLElement>('.k-btn')!.click();
@@ -165,7 +166,7 @@ describe('Timepicker', () => {
165
166
  expect(content.innerHTML).to.matchSnapshot();
166
167
  content.querySelector<HTMLElement>('.k-btn')!.click();
167
168
  await wait();
168
- expect(instance.get('time3')).eql(['00:30:00.000', '01:00:00.000']);
169
+ expect(instance.get('time3')).eql(['00:30:00.000', '00:30:00.000']);
169
170
  expect(input3.innerHTML).to.matchSnapshot();
170
171
  });
171
172
 
@@ -18,7 +18,7 @@ const defaults = {
18
18
  },
19
19
  };
20
20
 
21
- let timepicker: any;
21
+ let timepicker: typeof defaults;
22
22
  setDefault(() => {
23
23
  timepicker = deepDefaults(theme, {timepicker: defaults}).timepicker;
24
24
  });
@@ -3,7 +3,7 @@ import type {TimepickerProps} from './';
3
3
  import {useState} from '../../hooks/useState';
4
4
  import type {useDisabled} from '../datepicker/useDisabled';
5
5
  import type {useFormats} from './useFormats';
6
- import {NOW} from './constants'
6
+ import {NOW_START, NOW_END} from './constants'
7
7
  import {Dayjs} from 'dayjs';
8
8
  import {useReceive} from '../../hooks/useReceive';
9
9
 
@@ -28,9 +28,9 @@ export function useStep(
28
28
 
29
29
  if (step) {
30
30
  const data: Option[] = [];
31
- const maxValue = maxDate.value || NOW.hour(23).minute(59).second(59);
31
+ const maxValue = maxDate.value || NOW_END;
32
32
  const stepValue = parseTime(step);
33
- let value = minDate.value || NOW;
33
+ let value = minDate.value || NOW_START;
34
34
 
35
35
  const push = (value: Dayjs) => {
36
36
  data.push({
@@ -9,7 +9,7 @@ import {
9
9
  } from '../datepicker/basepicker';
10
10
  import type {useDisabled} from '../datepicker/useDisabled';
11
11
  import type {usePanel} from '../datepicker/usePanel';
12
- import {NOW} from './constants';
12
+ import {NOW_START, NOW_END} from './constants';
13
13
  import {PanelFlags} from '../datepicker/usePanel';
14
14
 
15
15
  export function useValue(
@@ -47,7 +47,7 @@ export function useValue(
47
47
  });
48
48
 
49
49
  function getPlaceholderDates(): StateValueItem {
50
- return instance.get('range') ? [NOW, NOW] : NOW;
50
+ return instance.get('range') ? [NOW_START, NOW_END] : NOW_START;
51
51
  }
52
52
 
53
53
  function onChangeTimeByStep(v: string, flag: PanelFlags) {
@@ -19,7 +19,7 @@ import {Tip} from 'kpc';
19
19
  type={$value}
20
20
  closable
21
21
  >{$value}</Tip>
22
- <Tip closable>
22
+ <Tip closable border="dashed">
23
23
  custom closing content
24
24
  <b:close>No longer show</b:close>
25
25
  </Tip>
@@ -5,15 +5,19 @@ order: 89
5
5
  sidebar: doc
6
6
  ---
7
7
 
8
- > `Tip`组件继承`Tag`组件,所以很多属性都是一样的
8
+ > `Tip`组件继承`Tag`组件,所以属性是一样的
9
9
 
10
10
  # 属性
11
11
 
12
12
  | 属性 | 说明 | 类型 | 默认值 |
13
13
  | --- | --- | --- | --- |
14
14
  | type | 组件类型 | `"default"` &#124; `"primary"` &#124; `"success"` &#124; `"warning"` &#124; `"danger"` | `"default"` |
15
- | disabled | 是否展示禁用状态 | `Boolean` | `false` |
16
- | closable | 是否可关闭 | `Boolean` | `false` |
15
+ | closable | 是否可关闭 | `boolean` | `false` |
16
+ | closed | 是否已关闭 | `boolean` | `false` |
17
+ | disabled | 是否展示禁用状态 | `boolean` | `false` |
18
+ | size | 组件尺寸 | `"large"` &#124; `"default"` &#124; `"small"` &#124; `"mini"` | `"default"` |
19
+ | border | 定义边框样式 | `"solid"` &#124; `"dashed"` &#124; `"none"` | `"solid"` |
20
+
17
21
 
18
22
  # 扩展点
19
23
 
@@ -26,4 +30,4 @@ sidebar: doc
26
30
 
27
31
  | 事件名 | 说明 | 参数 |
28
32
  | --- | --- | --- |
29
- | close | 标签关闭事件 | - |
33
+ | close | 标签关闭事件 | `(e: MouseEvent) => void` |
@@ -12,7 +12,7 @@ const defaults = {
12
12
  get padding() { return `6px ${theme.default.padding}` },
13
13
  };
14
14
 
15
- let tip: any;
15
+ let tip: typeof defaults;
16
16
  setDefault(() => {
17
17
  tip = deepDefaults(theme, {tip: defaults}).tip;
18
18
  });
@@ -6,19 +6,8 @@ order: 0
6
6
  使用`Tooltip`包裹需要展示提示的元素,使用`content`属性指定提示文本即可,组件默认为深色主题`dark`,你可以通过
7
7
  `theme`指定浅色主题`light`,通过`disabled`属性可以禁用提示,通过`size`可以指弹层的大小:`small` `default`
8
8
 
9
- > 由于`Tooltip`是一个宏函数,Intact下,会返回两个元素,所以不要当做模板的顶级元素,
10
- > 因为Intact模板只能返回一个元素,此时应该用一个元素将它包起来
11
-
12
- > `@since 1.0.0` `Tooltip`在`Vue/React`下渲染不会被元素包裹,这可能会影响你之前项目中定义的样式,
13
- > 如需渲染包裹元素,请做如下配置
14
- > ```js
15
- > // @code
16
- > import {configure} from 'kpc';
17
- >
18
- > // 该配置全局生效
19
- > configure({useWrapper: true});
20
- > ```
21
-
9
+ > 与`Dropdown`一样,`Tooltip`会返回两个元素(触发器和菜单),所以不要作为Vue2.0的模板顶层返回元素
10
+ > 因为Vue2.0只支持返回一个元素
22
11
 
23
12
  ```vdt
24
13
  import {Tooltip} from 'kpc';
@@ -7,8 +7,7 @@ order: 2
7
7
  鼠标离开触发器,弹层就会消失,如果我们需要鼠标能离开触发器并悬浮在弹层上,需要添加`canHover`属性
8
8
 
9
9
  ```vdt
10
- import {Tooltip} from 'kpc';
11
- import {ButtonGroup, Button} from 'kpc';
10
+ import {Tooltip, ButtonGroup, Button} from 'kpc';
12
11
 
13
12
  <ButtonGroup>
14
13
  <Tooltip content="hover">