@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
@@ -5,6 +5,7 @@ import '../../styles/global';
5
5
 
6
6
  const defaults = {
7
7
  color: '#ccc',
8
+ get transition() { return theme.transition.middle },
8
9
  get activeColor() { return theme.color.warning },
9
10
  iconFontSize: '24px',
10
11
 
@@ -14,7 +15,7 @@ const defaults = {
14
15
  },
15
16
  };
16
17
 
17
- let rate: any;
18
+ let rate: typeof defaults;
18
19
  setDefault(() => {
19
20
  rate = deepDefaults(theme, {rate: defaults}).rate;
20
21
  });
@@ -28,7 +29,7 @@ export function makeStyles() {
28
29
  cursor: pointer;
29
30
  position: relative;
30
31
  color: ${rate.color};
31
- transition: all ${theme.transition};
32
+ transition: all ${rate.transition};
32
33
  &:hover {
33
34
  transform: ${rate.item.hoverTransform};
34
35
  }
@@ -9,11 +9,20 @@ sidebar: doc
9
9
 
10
10
  | 属性 | 说明 | 类型 | 默认值 |
11
11
  | --- | --- | --- | --- |
12
- | value | 当前取值,可用`v-model`进行双向绑定 | `*` | `undefined` |
13
- | data | 组件的可选项 | `Array<Object> [{label, value}]` | `[]` |
14
- | disabled | 是否禁用组件 | `Boolean` | `false` |
15
- | disable | 定义选项禁用逻辑,返回`true`则禁用该项 | `Function` | `undefined` |
16
- | count | 渲染可选项的DOM的个数,如果选区较大,可以增大该值 | `Number` | `19` |
12
+ | value | 当前取值,可用`v-model`进行双向绑定 | `T` | `undefined` |
13
+ | count | 渲染可选项的DOM的个数,如果选区较大,可以增大该值 | `number` | `19` |
14
+ | data | 组件的可选项 | `Data<T>` | `[]` |
15
+ | disabled | 是否禁用组件 | `boolean` | `false` |
16
+ | disable | 定义选项禁用逻辑,返回`true`则禁用该项 | `(v: T) => boolean` | `undefined` |
17
+
18
+ ```ts
19
+ export type DataItem<T = any> = {
20
+ value: T
21
+ label: Children
22
+ }
23
+
24
+ type Data<T> = DataItem<T>[] | ((v: T) => DataItem<T>[])
25
+ ```
17
26
 
18
27
  # 扩展点
19
28
 
@@ -12,18 +12,20 @@ type SizeStyles = {
12
12
  }
13
13
 
14
14
  const defaults = {
15
+ get transition() { return theme.transition.middle },
15
16
  height: `125px`,
16
17
  item: {
17
18
  height: `30px`,
18
19
  get color() { return theme.color.text },
19
20
  get activeColor() { return theme.color.primary },
21
+ get hoverBgColor() { return theme.color.bg },
20
22
  activeFontSize: `1.1em`,
21
23
  get disabledColor() { return theme.color.disabled },
22
24
  border: `1px solid #e5e5e5`,
23
25
  }
24
26
  };
25
27
 
26
- let scrollSelect: any;
28
+ let scrollSelect: typeof defaults;
27
29
  setDefault(() => {
28
30
  scrollSelect = deepDefaults(theme, {scrollSelect: defaults}).scrollSelect;
29
31
  });
@@ -39,7 +41,7 @@ export function makeStyles() {
39
41
  user-select: none;
40
42
  position: relative;
41
43
  .k-scroll-select-wrapper {
42
- transition: transform ${theme.transition};
44
+ transition: transform ${scrollSelect.transition};
43
45
  }
44
46
  &.k-dragging {
45
47
  .k-scroll-select-wrapper {
@@ -59,6 +61,9 @@ export function makeStyles() {
59
61
  color: ${scrollSelect.item.color};
60
62
  cursor: pointer;
61
63
  white-space: nowrap;
64
+ &:hover {
65
+ background: ${scrollSelect.item.hoverBgColor };
66
+ }
62
67
  &.k-active {
63
68
  color: ${scrollSelect.item.activeColor};
64
69
  font-size: ${scrollSelect.item.activeFontSize};
@@ -22,7 +22,6 @@ import {isNullOrUndefined} from 'intact-shared';
22
22
 
23
23
  export interface BaseSelectProps<V, Multipe extends boolean = boolean, Attach = V | null> {
24
24
  value?: Multipe extends true ? V[] : Attach
25
- // value?: any
26
25
  multiple?: Multipe
27
26
  filterable?: boolean
28
27
  loading?: boolean
@@ -1,10 +1,12 @@
1
1
  import {TransitionGroup, Transition} from 'intact';
2
2
  import {Input} from '../input';
3
3
  import {Icon} from '../icon';
4
- import {isNullOrUndefined} from 'intact-shared';
4
+ import {isNullOrUndefined, isStringOrNumber} from 'intact-shared';
5
5
  import makeStyles from './styles';
6
6
  import {Dropdown} from '../dropdown';
7
7
  import {getRestProps, addStyle} from '../utils';
8
+ import {Wave} from '../wave';
9
+ import {context as ErrorContext} from '../form/useError';
8
10
 
9
11
  const {
10
12
  value, multiple,
@@ -34,115 +36,129 @@ const hasValue = this.hasValue();
34
36
  const {onInput, inputRef, keywords: {value: keywords}} = this.input;
35
37
  const {onFocusout, triggerRef} = this.focusout;
36
38
 
37
- <Dropdown
38
- trigger="click"
39
- ref={this.dropdownRef}
40
- disabled={disabled}
41
- container={container}
42
- v-model="_show"
43
- >
44
- <div {...getRestProps(this)}
45
- class={classNameObj}
46
- tabindex={disabled ? '-1' : '0'}
47
- ev-keydown={this.onKeydown}
48
- ev-focusout={onFocusout}
49
- style={!isNullOrUndefined(width) ? addStyle(style, {width: `${width}px`}) : style}
50
- ref={triggerRef}
51
- >
52
- <div class="k-select-prefix" v-if={$blocks.prefix}>
53
- <b:prefix />
54
- </div>
55
- <div class="k-select-main">
56
- <input type="hidden" value={value} name={name} key="hidden-input" />
57
- {/* TODO: Need mode on Transition */}
58
- <TransitionGroup name="k-fade" appear={false}>
59
- <Input v-if={!multiple && filterable}
60
- value={_show ? keywords : label}
61
- ev-$change:value={onInput}
62
- disabled={disabled}
63
- placeholder={label || placeholder}
64
- ref={inputRef}
65
- size={size}
66
- fluid
67
- inline
68
- key="input"
69
- readonly={!_show}
70
- />
71
- <div class="k-select-placeholder c-ellipsis"
72
- v-else-if={!filterable && !hasValue}
73
- key="placeholder"
74
- >{placeholder}</div>
75
- <div class="k-select-value c-ellipsis" v-else-if={!multiple} key="value">
76
- <b:value params={[value, label]}>
77
- {label}
78
- </b:value>
79
- </div>
80
- <div v-else
81
- class={{
82
- "k-select-values": true,
83
- "k-with-values": $blocks.values,
84
- }}
85
- key="values"
39
+ <ErrorContext.Consumer defaultValue={false}>
40
+ {isInvalid => {
41
+ return <Wave disabled={disabled || isInvalid || inline} inset="-2px">
42
+ <Dropdown
43
+ trigger="click"
44
+ ref={this.dropdownRef}
45
+ disabled={disabled}
46
+ container={container}
47
+ v-model="_show"
48
+ >
49
+ <div {...getRestProps(this)}
50
+ class={classNameObj}
51
+ tabindex={disabled ? '-1' : '0'}
52
+ ev-keydown={this.onKeydown}
53
+ ev-focusout={onFocusout}
54
+ style={!isNullOrUndefined(width) ? addStyle(style, {width: `${width}px`}) : style}
55
+ ref={triggerRef}
86
56
  >
87
- <TransitionGroup name="k-fade">
88
- <template>
89
- <b:values params={[value, label]}>
90
- <div class="k-select-tag"
91
- v-for={label}
92
- v-for-value="$label"
93
- key={$label}
94
- >
95
- <span class="k-select-text">
96
- <b:value params={[value[$key], $label]}>
97
- {$label}
98
- </b:value>
99
- </span>
100
- <Icon class="ion-ios-close k-select-close"
101
- ev-click={this.delete.bind(this, $key)}
102
- hoverable={!disabled}
103
- />
104
- </div>
105
- </b:values>
106
- </template>
107
- </TransitionGroup>
108
- <Input v-if={filterable}
109
- class="k-select-input"
110
- value={keywords}
111
- ev-$change:value={onInput}
112
- disabled={disabled}
113
- placeholder={!hasValue ? placeholder : ''}
114
- ref={inputRef}
115
- autoWidth
116
- inline
117
- size={size}
118
- key="filter"
119
- readonly={!_show}
120
- />
121
- </div>
122
- </TransitionGroup>
123
- </div>
124
- <span class="k-select-suffix" v-if={!hideIcon || clearable || loading || $blocks.suffix}>
125
- <Icon v-if={clearable && !disabled}
126
- class={{"k-select-clear ion-ios-close": true, "k-show": hasValue}}
127
- ev-click={this.clear}
128
- hoverable
129
- />
130
- <span class="k-select-suffix-icon">
131
- <b:suffix>
132
- <Icon class="ion-load-c" rotate v-if={loading} />
133
- <Icon v-else-if={!hideIcon}
134
- class={{
135
- "k-select-arrow ion-ios-arrow-down": true,
136
- 'k-disabled': $props.isDisableArrow
137
- }}
138
- />
139
- </b:suffix>
140
- </span>
141
- </span>
142
- </div>
143
- <template>
144
- <b:base-menu>
145
- <div>should be implemeted</div>
146
- </b:base-menu>
147
- </template>
148
- </Dropdown>
57
+ <div class="k-select-prefix" v-if={$blocks.prefix}>
58
+ <b:prefix />
59
+ </div>
60
+ <div class="k-select-main">
61
+ <input type="hidden" value={value} name={name} key="hidden-input" />
62
+ {/* TODO: Need mode on Transition */}
63
+ <TransitionGroup name="k-fade" appear={false}>
64
+ <Input v-if={!multiple && filterable}
65
+ value={_show ? keywords : label}
66
+ ev-$change:value={onInput}
67
+ disabled={disabled}
68
+ placeholder={label || placeholder}
69
+ ref={inputRef}
70
+ size={size}
71
+ fluid
72
+ inline
73
+ key="input"
74
+ readonly={!_show}
75
+ waveDisabled={true}
76
+ />
77
+ <div class="k-select-placeholder c-ellipsis"
78
+ v-else-if={!filterable && !hasValue}
79
+ key="placeholder"
80
+ >{placeholder}</div>
81
+ <div class="k-select-value c-ellipsis" v-else-if={!multiple} key="value">
82
+ <b:value params={[value, label]}>
83
+ {label}
84
+ </b:value>
85
+ </div>
86
+ <div v-else
87
+ class={{
88
+ "k-select-values": true,
89
+ "k-with-values": $blocks.values,
90
+ }}
91
+ key="values"
92
+ >
93
+ <TransitionGroup name="k-fade">
94
+ <template>
95
+ <b:values params={[value, label]}>
96
+ <div class="k-select-tag"
97
+ v-for={label}
98
+ v-for-value="$label"
99
+ key={
100
+ isStringOrNumber($label) ?
101
+ $label :
102
+ isStringOrNumber(value[$key]) ?
103
+ value[$key] :
104
+ undefined
105
+ }
106
+ >
107
+ <span class="k-select-text">
108
+ <b:value params={[value[$key], $label]}>
109
+ {$label}
110
+ </b:value>
111
+ </span>
112
+ <Icon class="ion-ios-close k-select-close"
113
+ ev-click={this.delete.bind(this, $key)}
114
+ hoverable={!disabled}
115
+ />
116
+ </div>
117
+ </b:values>
118
+ </template>
119
+ </TransitionGroup>
120
+ <Input v-if={filterable}
121
+ class="k-select-input"
122
+ value={keywords}
123
+ ev-$change:value={onInput}
124
+ disabled={disabled}
125
+ placeholder={!hasValue ? placeholder : ''}
126
+ ref={inputRef}
127
+ autoWidth
128
+ inline
129
+ size={size}
130
+ key="filter"
131
+ readonly={!_show}
132
+ waveDisabled={true}
133
+ />
134
+ </div>
135
+ </TransitionGroup>
136
+ </div>
137
+ <span class="k-select-suffix" v-if={!hideIcon || clearable || loading || $blocks.suffix}>
138
+ <Icon v-if={clearable && !disabled}
139
+ class={{"k-select-clear ion-ios-close": true, "k-show": hasValue}}
140
+ ev-click={this.clear}
141
+ hoverable
142
+ />
143
+ <span class="k-select-suffix-icon">
144
+ <b:suffix>
145
+ <Icon class="ion-load-c" rotate v-if={loading} />
146
+ <Icon v-else-if={!hideIcon}
147
+ class={{
148
+ "k-select-arrow ion-ios-arrow-down": true,
149
+ 'k-disabled': $props.isDisableArrow
150
+ }}
151
+ />
152
+ </b:suffix>
153
+ </span>
154
+ </span>
155
+ </div>
156
+ <template>
157
+ <b:base-menu>
158
+ <div>should be implemeted</div>
159
+ </b:base-menu>
160
+ </template>
161
+ </Dropdown>
162
+ </Wave>
163
+ }}
164
+ </ErrorContext.Consumer>
@@ -19,7 +19,7 @@ import {Select, Option} from 'kpc';
19
19
  <Option value="Sunday">星期天</Option>
20
20
  </Select>
21
21
  Day: {this.get('day')}
22
- <br />
22
+ <br /><br />
23
23
  <Select v-model="days" filterable multiple creatable style="margin-right: 10px">
24
24
  <Option value="Monday">星期一</Option>
25
25
  <Option value="Tuesday">星期二</Option>
@@ -13,7 +13,7 @@ import {Select, Table, TableColumn, Input, Button, Icon} from 'kpc';
13
13
  ref="select"
14
14
  >
15
15
  <b:menu>
16
- <Input placeholder="请输入关键字" size="small" fluid v-model="keywords">
16
+ <Input placeholder="请输入关键字" size="small" fluid v-model="keywords" waveDisabled={true}>
17
17
  <b:suffix><Icon class="ion-ios-search" /></b:suffix>
18
18
  </Input>
19
19
  <Table data={this.filter()}
@@ -8,8 +8,7 @@ order: 5.1
8
8
  > 存在`value`扩展点时,不能指定`filterable`来筛选
9
9
 
10
10
  ```vdt
11
- import {Select, Option} from 'kpc';
12
- import {Icon} from 'kpc';
11
+ import {Select, Option, Icon} from 'kpc';
13
12
 
14
13
  <div>
15
14
  <div class="item">
@@ -20,9 +19,6 @@ import {Icon} from 'kpc';
20
19
  >
21
20
  <div style={{borderBottom: `1px ${$value} #666`}} class="line"></div>
22
21
  </Option>
23
- <b:value args="[value, label]">
24
- <div style={{borderBottom: `1px ${value} #666`}}></div>
25
- </b:value>
26
22
  </Select>
27
23
  <div style={{border: `1px ${this.get('type')} #b2b2b2`}} class="rect">
28
24
  Rectangle
@@ -37,7 +33,7 @@ import {Icon} from 'kpc';
37
33
  <Icon class={$value} />
38
34
  </Option>
39
35
  <b:value args="[value, label]">
40
- <Icon class={value} />
36
+ <Icon class={value} style="vertical-align: middle;" />
41
37
  <span class="c-middle">{value}</span>
42
38
  </b:value>
43
39
  </Select>
@@ -59,7 +55,7 @@ import {Icon} from 'kpc';
59
55
  ```
60
56
 
61
57
  ```styl
62
- /.line
58
+ /.k-select-option .line
63
59
  margin-top 16px
64
60
  .item
65
61
  margin-bottom 16px
@@ -11,37 +11,44 @@ sidebar: doc
11
11
 
12
12
  | 属性 | 说明 | 类型 | 默认值 |
13
13
  | --- | --- | --- | --- |
14
- | value | 当前选择的元素,可用`v-model`双向绑定 | `*` | `""` |
15
- | multiple | 是否支持多选 | `Boolean` | `false` |
16
- | disabled | 是否禁用 | `Boolean` | `false` |
17
- | clearable | 是否可清空 | `Boolean` | `false` |
18
- | filterable | 是否支持筛选 | `Boolean` | `false` |
19
- | filter | 当支持筛选时,可以自定义筛选规则 | `Function` | `(keywords, props) => ...` |
20
- | creatable | 是否支持创建新的选项,可以配合`filterable`使用 | `Boolean` | `false` |
21
- | keywords | 如果支持筛选,当前关键词 | `String` | `undefined` |
22
- | placeholder | 占位文案 | `String` | `"请选择"` |
14
+ | value | 当前选择的元素,可用`v-model`双向绑定 | `any` | `""` |
15
+ | multiple | 是否支持多选 | `boolean` | `false` |
16
+ | filterable | 是否支持筛选 | `boolean` | `false` |
17
+ | loading | 数据加载状态 | `boolean` | `false` |
18
+ | disabled | 是否禁用 | `boolean` | `false` |
19
+ | name | 表单元素的`name` | `string` | `undefined` |
23
20
  | size | 尺寸 | `"large"` &#124; `"default"` &#124; `"small"` &#124; `"mini"` | `"default"` |
24
- | fluid | 是否宽度100% | `Boolean` | `false` |
25
- | width | 指定宽度,组件自动添加单位`px` | `Number` &#124; `String` | `undefined` |
26
- | container | 指定弹出菜单追加的位置,默认:`Dialog`类型的组件会追加到`Dialog`中,其他会追加到`body`中。你可以传入函数返回一个DOM用来作为插入的容器,或者传入字符串用来给`querySelector`进行查询 | `Function` &#124; `String` | `undefined` |
27
- | inline | 展示内联模式,该模式下,组件没有边框,宽度和高度如同内联元素一样由内容撑开 | `Boolean` | `false` |
28
- | loading | 数据加载状态 | `Boolean` | `false` |
29
- | position | 定义弹层的位置 | `Object` | `{my: 'left top+8', at: 'left bottom'}` |
30
- | searchable | 是否将在弹出菜单中展示搜索框 | `Boolean` | `false` |
21
+ | hideIcon | 是否隐藏后面的图标 | `boolean` | `false` |
22
+ | clearable | 是否可清空 | `boolean` | `false` |
23
+ | fluid | 是否宽度100% | `boolean` | `false` |
24
+ | inline | 展示内联模式,该模式下,组件没有边框,宽度和高度如同内联元素一样由内容撑开 | `boolean` | `false` |
25
+ | placeholder | 占位文案 | `string` | `"请选择"` |
26
+ | container | 指定弹出菜单追加的位置,默认:`Dialog`类型的组件会追加到`Dialog`中,其他会追加到`body`中。你可以传入函数返回一个DOM用来作为插入的容器,或者传入字符串用来给`querySelector`进行查询 | `Container` | `undefined` |
27
+ | width | 指定宽度,组件自动添加单位`px` | `number` &#124; `string` | `undefined` |
28
+ | filter | 当支持筛选时,可以自定义筛选规则 | `(keywords: string, props: any) => boolean` | `(keywords: string, props: any) => props.label.toLowerCase().includes(keywords) || props.value.toLowerCase().includes(keywords)` |
29
+ | searchable | 是否将在弹出菜单中展示搜索框 | `boolean` | `false` |
30
+ | creatable | 是否支持创建新的选项,可以配合`filterable`使用 | `boolean` | `false` |
31
+ | labelMap | 建立值`value`到展示标签`label`的映射,可以在`value`不在`Option`集合中时,依然能够正确展示相应的`label` | `Map<any, string>` | `new Map()` |
32
+ | card | 是否展示`card`模式 | `boolean` | `false` |
33
+ | autoDisableArrow | 是否在没有更多可选项时,给箭头一个`disabled`状态来提示用户 | `boolean` | `false` |
34
+
35
+ ```ts
36
+ export type Container = string | ((parentDom: Element, anchor: Node | null) => Element)
37
+ ```
31
38
 
32
39
  ## Option
33
40
 
34
41
  | 属性 | 说明 | 类型 | 默认值 |
35
42
  | --- | --- | --- | --- |
36
- | value | 选中的值 | `*` | `undefined` |
37
- | label | 该值有两个作用,1. 当`children`不存在时,作为展示文案;2. 作为筛选的内容,不存在时,则使用`children`的文本作为筛选内容 | `String` | `undefined` |
38
- | disabled | 是否禁用该项选择 | `Boolean` | `false` |
43
+ | value | 选中的值 | `any` | `undefined` |
44
+ | label | 该值有两个作用,1. 当`children`不存在时,作为展示文案;2. 作为筛选的内容,不存在时,则使用`children`的文本作为筛选内容 | `string` | `undefined` |
45
+ | disabled | 是否禁用该项选择 | `boolean` | `false` |
39
46
 
40
47
  ## OptionGroup
41
48
 
42
49
  | 属性 | 说明 | 类型 | 默认值 |
43
50
  | --- | --- | --- | --- |
44
- | label | 分组标签名 | `String` &#124; `Number` &#124; `vNode` | `""` |
51
+ | label | 分组标签名 | `string` &#124; `number` &#124; `VNode` | `undefined` |
45
52
 
46
53
 
47
54
  # 扩展点
@@ -50,24 +57,22 @@ sidebar: doc
50
57
 
51
58
  | 名称 | 说明 | 参数 |
52
59
  | --- | --- | --- |
53
- | value | 自定义选择结果的展示 | `value, label` |
54
- | values | 自定义多选的选择结果的展示 | `values, labels` |
60
+ | value | 自定义选择结果的展示 | `([value: any, label: Children]) => Children` |
61
+ | values | 自定义多选的选择结果的展示 | `([values: any[], labels: Children[]]) => Children` |
62
+ | prefix | 自定义输入款前面展示的内容 | - |
63
+ | suffix | 自定义输入框后面展示的内容 | - |
55
64
  | menu | 自定义整个菜单的内容 | - |
56
65
 
66
+ ```ts
67
+ import {Children} from 'intact';
68
+ ```
69
+
57
70
  ## OptionGroup
58
71
 
59
72
  | 名称 | 说明 |
60
73
  | --- | --- |
61
74
  | label | 定义复杂的分组标签名 |
62
75
 
63
- # 方法
64
-
65
- ## Select
66
-
67
- | 方法名 | 说明 | 参数 | 返回值 |
68
- | --- | --- | --- | --- |
69
- | show | 展开菜单 | - | `undefined` |
70
- | hide | 隐藏菜单 | - | `undefined` |
71
76
 
72
77
  # 事件
73
78
 
@@ -13,7 +13,7 @@ import SearchableDemo from '~/components/select/demos/searchable';
13
13
  describe('Select', () => {
14
14
  afterEach((done) => {
15
15
  unmount();
16
- setTimeout(done, 400);
16
+ setTimeout(done, 500);
17
17
  });
18
18
 
19
19
  it('should select value correctly', async () => {
@@ -59,6 +59,7 @@ if (searchable) {
59
59
  value={keywords.value}
60
60
  ev-$change:value={onInput}
61
61
  clearable
62
+ waveDisabled={true}
62
63
  >
63
64
  <b:suffix><Icon class="ion-ios-search" /></b:suffix>
64
65
  </Input>
@@ -13,13 +13,15 @@ type SizeStyles = {
13
13
 
14
14
  const defaults = deepDefaults(
15
15
  {
16
+ get transition() { return theme.transition.middle },
16
17
  width: `300px`,
17
18
  get height() { return theme.default.height },
18
19
  bgColor: '#fff',
19
20
  get fontSize() { return theme.default.fontSize },
20
21
  get border() { return `1px solid ${theme.color.border}` },
21
22
  get focusBorder() { return `1px solid ${theme.color.primary}` },
22
- get hoverBorder() { return `1px solid ${theme.color.darkBorder}` },
23
+ // get hoverBorder() { return `1px solid ${theme.color.darkBorder}` },
24
+ get hoverBorder() { return `1px solid ${theme.color.primary}` },
23
25
  get iconColor() { return theme.color.placeholder },
24
26
  get activeColor() { return theme.color.primary },
25
27
  get borderRadius() { return theme.borderRadius },
@@ -56,7 +58,7 @@ const defaults = deepDefaults(
56
58
  },
57
59
  tag: {
58
60
  margin: `3px 8px 3px 0`,
59
- padding: `4px 8px`,
61
+ padding: `5px 8px`,
60
62
  get borderRadius() { return theme.borderRadius },
61
63
  get bgColor() { return theme.color.bg },
62
64
  disabledBgColor: '#eee',
@@ -122,7 +124,7 @@ const defaults = deepDefaults(
122
124
  }, {} as Record<Sizes, SizeStyles>)
123
125
  );
124
126
 
125
- let select: any;
127
+ let select: typeof defaults;
126
128
  setDefault(() => {
127
129
  select = deepDefaults(theme, {select: defaults}).select;
128
130
  });
@@ -138,7 +140,7 @@ export default function makeStyles() {
138
140
  outline: none;
139
141
  border: ${select.border};
140
142
  background: ${select.bgColor};
141
- transition: border ${theme.transition}, background ${theme.transition}, box-shadow ${theme.transition};
143
+ transition: border ${select.transition}, background ${select.transition}, box-shadow ${select.transition};
142
144
  border-radius: ${select.borderRadius};
143
145
  .k-select-main {
144
146
  flex: 1;
@@ -146,6 +148,7 @@ export default function makeStyles() {
146
148
  .k-select-prefix,
147
149
  .k-select-suffix {
148
150
  color: ${select.iconColor};
151
+ position: relative;
149
152
  }
150
153
  .k-select-suffix {
151
154
  margin-left: ${select.suffixGap};
@@ -163,10 +166,13 @@ export default function makeStyles() {
163
166
  // clearable
164
167
  .k-select-clear {
165
168
  opacity: 0;
166
- transition: opacity ${theme.transition}, color ${theme.transition} !important;
169
+ transition: opacity ${select.transition}, color ${select.transition} !important;
167
170
  pointer-events: none;
168
171
  position: absolute;
169
172
  z-index: 1;
173
+ top: 50%;
174
+ left: 50%;
175
+ transform: translate(-50%, -50%);
170
176
  }
171
177
  &:hover {
172
178
  border: ${select.hoverBorder};
@@ -180,12 +186,12 @@ export default function makeStyles() {
180
186
  }
181
187
  .k-select-suffix-icon {
182
188
  display: inline-block;
183
- transition: opacity ${theme.transition};
189
+ transition: opacity ${select.transition};
184
190
  }
185
191
 
186
192
  .k-select-arrow {
187
193
  display: inline-block;
188
- transition: transform ${theme.transition};
194
+ transition: transform ${select.transition};
189
195
  &.k-disabled {
190
196
  color: ${select.disabledArrowColor};
191
197
  }
@@ -195,7 +201,7 @@ export default function makeStyles() {
195
201
  &.k-dropdown-open {
196
202
  border: ${select.focusBorder};
197
203
  .k-select-arrow {
198
- transform: rotate(180deg);
204
+ transform: rotateX(180deg);
199
205
  }
200
206
  }
201
207
  &:focus {
@@ -278,7 +284,7 @@ export function makeMenuStyles() {
278
284
  max-height: ${select.menuMaxHeight};
279
285
  overflow: auto;
280
286
  &:not([class*="-active"]) {
281
- transition: left ${theme.transition}, top ${theme.transition};
287
+ transition: left ${select.transition}, top ${select.transition};
282
288
  }
283
289
  .k-select-empty {
284
290
  padding: ${select.empty.padding};
@@ -4,9 +4,9 @@ order: 5
4
4
  ---
5
5
 
6
6
  通过`marks`属性,可以给`Slider`标注刻度,该属性类型为`Object`,`key`表示组件的值,`value`为该
7
- 值对应展示的标注文案。如果`value`为`String`类型,则直接展示成文案;如果`value`为`Array`,则数组
7
+ 值对应展示的标注文案。如果`value`为`string`类型,则直接展示成文案;如果`value`为`Array`,则数组
8
8
  第一项为未选中状态的文案,第二项为选中状态的文案,如果没有定义第二项,则会取第一项作为选中状态的文案,
9
- 此时与`value`为`String`类型的表现是一样的。
9
+ 此时与`value`为`string`类型的表现是一样的。
10
10
 
11
11
  ```vdt
12
12
  import {Slider} from 'kpc';