@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
@@ -4,6 +4,7 @@ import {deepDefaults, palette} from '../../styles/utils';
4
4
  import '../../styles/global';
5
5
 
6
6
  const defaults = {
7
+ get transition() { return theme.transition.middle },
7
8
  fontSize: '12px',
8
9
  lineHeight: '24px',
9
10
  get hoverColor() { return theme.color.primary },
@@ -33,7 +34,7 @@ const defaults = {
33
34
  get line() { return `1px dashed ${theme.color.border}` },
34
35
  };
35
36
 
36
- let tree: any;
37
+ let tree: typeof defaults;
37
38
  setDefault(() => {
38
39
  tree = deepDefaults(theme, {tree: defaults}).tree;
39
40
  });
@@ -87,8 +88,10 @@ export function makeStyles() {
87
88
  width: ${tree.iconWidth};
88
89
  text-align: center;
89
90
  color: ${tree.iconColor};
90
- transform: rotate(-90deg);
91
- transition: transform ${theme.transition};
91
+ &:before {
92
+ transform: rotate(-90deg);
93
+ transition: transform ${tree.transition};
94
+ }
92
95
  }
93
96
 
94
97
  .k-tree-checkbox {
@@ -114,7 +117,7 @@ export function makeStyles() {
114
117
  }
115
118
  }
116
119
  &.k-expanded {
117
- > .k-tree-label .k-tree-icon {
120
+ > .k-tree-label .k-tree-icon:before {
118
121
  transform: rotate(0);
119
122
  }
120
123
  }
@@ -11,30 +11,60 @@ 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` | `undefined` |
20
- | keywords | 如果支持筛选,当前关键词 | `String` | `undefined` |
21
- | 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` |
22
20
  | size | 尺寸 | `"large"` | `"default"` | `"small"` | `"mini"` | `"default"` |
23
- | fluid | 是否宽度100% | `Boolean` | `false` |
24
- | width | 指定宽度,组件自动添加单位`px` | `Number` | `String` | `undefined` |
25
- | container | 指定弹出菜单追加的位置,默认:`Dialog`类型的组件会追加到`Dialog`中,其他会追加到`body`中。你可以传入函数返回一个DOM用来作为插入的容器,或者传入字符串用来给`querySelector`进行查询 | `Function` | `String` | `undefined` |
26
- | inline | 展示内联模式,该模式下,组件没有边框,宽度和高度如同内联元素一样由内容撑开 | `Boolean` | `false` |
27
- | loading | 数据加载状态 | `Boolean` | `false` |
28
- | position | 定义弹层的位置 | `Object` | `{my: 'left top+8', at: 'left bottom'}` |
29
- | data | 要渲染的数据 | `Object` | `undefined` |
30
- | checkbox | 是否展示复选框 | `Boolean` | `false` |
31
- | load | 指定异步加载节点数据的函数,该函数通过`Promise`返回数组来添加子节点数据 | `Function` | `undefined` |
32
- | defaultExpandAll | 是否默认展开所有节点 | `Boolean` | `true` |
33
- | uncorrelated | 是否让父子`checkbox`选中状态互不关联 | `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` | `string` | `undefined` |
28
+ | data | 要渲染的数据 | `TreeDataItem<K>[]` | `undefined` |
29
+ | uncorrelated | 是否让父子`checkbox`选中状态互不关联 | `boolean` | `false` |
30
+ | load | 指定异步加载节点数据的函数,该函数通过`Promise`返回数组来添加子节点数据 | <code>(node: TreeNode<K>) => Proomise<void> &#124; void</code> | `undefined` |
31
+ | showLine | 是否展示`Tree`的对齐线 | `boolean` | `true` |
32
+ | defaultExpandAll | 是否默认展开所有节点 | `boolean` | `true` |
33
+ | checkbox | 是否展示复选框 | `boolean` | `false` |
34
+ | filter | 当支持筛选时,可以自定义筛选规则 | `(keywords: string, data: TreeDataItem<K>) => boolean` | `undefined` |
35
+
36
+ ```ts
37
+ import {Key, Children} from 'intact';
38
+
39
+ export type Container = string | ((parentDom: Element, anchor: Node | null) => Element)
40
+
41
+ export type TreeDataItem<K extends Key> = {
42
+ label?: Children
43
+ key?: K
44
+ disabled?: boolean
45
+ loaded?: boolean
46
+ children?: TreeDataItem<K>[]
47
+ }
48
+
49
+ ```
34
50
 
35
51
  # 扩展点
36
52
 
37
53
  | 名称 | 说明 | 参数 |
38
54
  | --- | --- | --- |
39
- | value | 自定义选择结果的展示 | `value, label` |
55
+ | value | 自定义选择结果的展示 | `([value: any, label: Children]) => Children` |
56
+ | values | 自定义多选的选择结果的展示 | `([values: any[], labels: Children[]]) => Children` |
57
+ | prefix | 自定义输入款前面展示的内容 | - |
58
+ | suffix | 自定义输入框后面展示的内容 | - |
59
+ | menu | 自定义整个菜单的内容 | - |
40
60
 
61
+ ```ts
62
+ import {Children} from 'intact';
63
+ ```
64
+
65
+ # 事件
66
+
67
+ | 事件名 | 说明 | 参数 |
68
+ | --- | --- | --- |
69
+ | show | 菜单弹出时触发 | - |
70
+ | hide | 菜单隐藏时触发 | - |
@@ -21,7 +21,7 @@ describe('TreeSelect', () => {
21
21
  (dropdown.querySelector('.k-tree-text') as HTMLElement).click();
22
22
  expect(instance.get('value')).to.eql('1');
23
23
 
24
- await wait(300);
24
+ await wait(500);
25
25
  expect(getElement('.k-tree-select-menu')).to.be.undefined;
26
26
  });
27
27
 
@@ -39,7 +39,7 @@ describe('TreeSelect', () => {
39
39
  expect(instance.get('values')).to.eql(['1.1']);
40
40
 
41
41
  instance.set('values', ['1']);
42
- await wait(300)
42
+ await wait(500)
43
43
  expect(dropdown.innerHTML).to.matchSnapshot();
44
44
  expect(element.innerHTML).to.matchSnapshot();
45
45
  });
@@ -73,7 +73,7 @@ describe('TreeSelect', () => {
73
73
  const input = element.querySelector('.k-input-inner') as HTMLInputElement;
74
74
  input.value = 'first';
75
75
  dispatchEvent(input, 'input');
76
- await wait(300);
76
+ await wait(500);
77
77
  expect(dropdown.innerHTML).to.matchSnapshot();
78
78
 
79
79
  const [, text2] = dropdown.querySelectorAll('.k-tree-text');
@@ -103,11 +103,11 @@ describe('TreeSelect', () => {
103
103
  await wait();
104
104
  dispatchEvent(select, 'focusout');
105
105
 
106
- await wait(300);
106
+ await wait(500);
107
107
  expect(element.querySelector('.k-form-error')).to.be.null;
108
108
 
109
109
  dispatchEvent(select, 'click');
110
- await wait(300);
110
+ await wait(500);
111
111
  expect(element.querySelector('.k-form-error')).not.to.be.null;
112
112
  });
113
113
  });
@@ -4,11 +4,12 @@ import {deepDefaults, palette} from '../../styles/utils';
4
4
  import '../../styles/global';
5
5
 
6
6
  const defaults = {
7
+ get transition() { return theme.transition.middle },
7
8
  maxHeight: `400px`,
8
9
  padding: `3px 6px`,
9
10
  };
10
11
 
11
- let treeSelect: any;
12
+ let treeSelect: typeof defaults;
12
13
  setDefault(() => {
13
14
  treeSelect = deepDefaults(theme, {treeSelect: defaults}).treeSelect;
14
15
  });
@@ -20,7 +21,7 @@ export function makeStyles() {
20
21
  padding: ${treeSelect.padding};
21
22
  overflow: auto;
22
23
  &:not([class*="-active"]) {
23
- transition: left ${theme.transition}, top ${theme.transition};
24
+ transition: left ${treeSelect.transition}, top ${treeSelect.transition};
24
25
  }
25
26
  `;
26
27
  }
@@ -9,23 +9,49 @@ sidebar: doc
9
9
 
10
10
  | 属性 | 说明 | 类型 | 默认值 |
11
11
  | --- | --- | --- | --- |
12
- | accept | `input`的[accept](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input#attr-accept)属性,支持的文件的类型 | `String` | `undefined` |
13
- | multiple | `input`的`multiple`属性,是否支持多选 | `Boolean` | `false` |
12
+ | accept | `input`的[accept](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input#attr-accept)属性,支持的文件的类型 | `string` | `undefined` |
13
+ | files | 所有已上传和待上传的文件列表 | `UploadFile[]` | `[]` |
14
+ | defaultFiles | 指定初始化上传列表,见示例 | <code>(Partial&lt;UploadFile&gt; & Pick&lt;UploadFile, 'name' &#124; 'url'&gt;)[]</code> | `undefined` |
15
+ | maxSize | 最大上传文件大小限制(kb),默认无限制 | `number` | `undefined` |
16
+ | limit | 最大上传文件数量限制,默认无限制 | `number` | `undefined` |
17
+ | autoUpload | 是否选择文件后即自动上传 | `boolean` | `true` |
18
+ | beforeRemove | 指定文件在删除之前的处理逻辑,如果该函数返回`false`,则取消删除,你也可以使用异步函数或返回`Promise`对象;组件会将当前文件(file)和文件列表(files)传给该函数 | `BeforeCallback` | `undefined` |
19
+ | beforeUpload | 指定文件在开始上传之前的处理逻辑,如果该函数返回`false`,则取消上传,你也可以使用异步函数或返回`Promise`对象;组件会将当前文件(file)和文件列表(files)传给该函数 | `BeforeCallback` | `undefined` |
20
+ | data | 指定上传附加的请求数据,可以为对象或者函数,为函数时,组件会将当前文件对象作为参数传入,函数应返回一个对象作为附加数据 | `DataObject` &#124; `DataFunction` | `undefined` |
21
+ | action | 上传地址 | `string` | `undefined` |
22
+ | headers | 指定上传的请求头 | <code>Record&lt;string &#124; number, string&gt;</code> | `undefined` |
23
+ | name | 指定上传文件字段名,不存在时,组件默认会使用原始文件名 | `string` | `undefined` |
24
+ | withCredentials | 指定跨域请求是是否允许传送cookie | `boolean` | `false` |
14
25
  | type | 组件风格 | `"select"` &#124; `"drag"` &#124; `"gallery"` | `"select"` |
15
- | autoUpload | 是否选择文件后即自动上传 | `Boolean` | `true` |
16
- | disabled | 是否禁用上传 | `Boolean` | `false` |
17
- | action | 上传地址 | `String` | `""` |
18
- | name | 指定上传文件字段名,不存在时,组件默认会使用原始文件名 | `String` | `undefined` |
19
- | headers | 指定上传的请求头 | `Object` | `undefined` |
20
- | data | 指定上传附加的请求数据,可以为对象或者函数,为函数时,组件会将当前文件对象作为参数传入,函数应返回一个对象作为附加数据 | `Object` &#124; `Function` | `undefined` |
21
- | withCredentials | 指定跨域请求是是否允许传送cookie | `Boolean` | `false` |
22
- | limit | 最大上传文件数量限制,默认无限制 | `Number` | `undefined` |
23
- | maxSize | 最大上传文件大小限制(kb),默认无限制 | `Number` | `undefined` |
24
- | defaultFiles | 指定初始化上传列表,见示例 | `Array<Object>` | `undefined` |
25
- | beforeUpload | 指定文件在开始上传之前的处理逻辑,如果该函数返回`false`,则取消上传,你也可以使用异步函数或返回`Promise`对象;组件会将当前文件(file)和文件列表(files)传给该函数 | `Function` | `() => true` |
26
- | beforeRemove | 指定文件在删除之前的处理逻辑,如果该函数返回`false`,则取消删除,你也可以使用异步函数或返回`Promise`对象;组件会将当前文件(file)和文件列表(files)传给该函数 | `Function` | `() => true` |
27
- | files | 所有已上传和待上传的文件列表 | `Array` | `[]` |
28
- | directory | 是否支持上传文件夹 [caniuse](https://caniuse.com/#feat=input-file-directory) | `Boolean` | `false` |
26
+ | directory | 是否支持上传文件夹 [caniuse](https://caniuse.com/#feat=input-file-directory) | `boolean` | `false` |
27
+ | disabled | 是否禁用上传 | `boolean` | `false` |
28
+ | multiple | `input`的`multiple`属性,是否支持多选 | `boolean` | `false` |
29
+
30
+ ```ts
31
+ export type UploadFile = {
32
+ status: UploadFileStatus
33
+ type?: string
34
+ size?: number
35
+ name: string
36
+ percent: number
37
+ uid: number
38
+ raw: File | Partial<UploadFile>
39
+ url?: string
40
+ request?: any
41
+ }
42
+
43
+ export enum UploadFileStatus {
44
+ Done,
45
+ Ready,
46
+ NotReady,
47
+ Uploading,
48
+ Error,
49
+ }
50
+
51
+ type BeforeCallback = (file: UploadFile, files: UploadFile[]) => Promise<boolean> | boolean
52
+ type DataObject = Record<string | number, any>
53
+ type DataFunction = (file: UploadFile) => DataObject
54
+ ```
29
55
 
30
56
  # 扩展点
31
57
 
@@ -45,6 +71,16 @@ sidebar: doc
45
71
 
46
72
  | 事件名 | 说明 | 参数 |
47
73
  | --- | --- | --- |
48
- | error | 文件超出最大文件数量限制,超出文件大小限制,或者上传失败都会抛出该事件 | `Error, file, files` |
49
- | progress | 文件上传过程中会抛出该事件 | `Event, file, files` |
50
- | success | 文件上传成功时会抛出该事件 | `response, file, files` |
74
+ | progress | 文件上传过程中会抛出该事件 | `(event: ProgressEvent, xml: XMLHttpRequest, file: UploadFile, files: UploadFile[]) => void` |
75
+ | success | 文件上传成功时会抛出该事件 | `(res: any, xml: XMLHttpRequest, file: UploadFile, files: UploadFile[]) => void` |
76
+ | error | 文件超出最大文件数量限制,超出文件大小限制,或者上传失败都会抛出该事件 | <code>(err: Error &#124; RequestError, file: File[] &#124; File &#124; UploadFile, files: UploadFile[]) => void</code> |
77
+
78
+ ```ts
79
+ interface RequestError extends Error {
80
+ status: number
81
+ method: string
82
+ url: string
83
+ response: any
84
+ xhr: XMLHttpRequest
85
+ }
86
+ ```
@@ -52,7 +52,7 @@ describe('Upload', () => {
52
52
  unmount();
53
53
  respond = xhr => { xhr.respond(200) };
54
54
  this.xhr.restore();
55
- setTimeout(done, 400);
55
+ setTimeout(done, 500);
56
56
  });
57
57
 
58
58
  it('basic', function(done) {
@@ -9,7 +9,7 @@ import {useShowImage} from './useShowImage';
9
9
  import type {RequestError} from './ajaxUploader';
10
10
  import type {Events} from '../types';
11
11
 
12
- export type {RequestError};
12
+ export type {RequestError, UploadFileStatus};
13
13
 
14
14
  export interface UploadProps {
15
15
  accept?: string
@@ -53,11 +53,10 @@ const handle = (
53
53
 
54
54
  const {removeFile} = this.files;
55
55
  const closeBtn = (value, index, icon) => (
56
- <Button type="none" icon size="mini" class="k-upload-close"
56
+ <Icon class={{"k-upload-close": true, [icon]: true}}
57
57
  ev-click={() => removeFile(value, index)}
58
- >
59
- <Icon class={icon} />
60
- </Button>
58
+ hoverable
59
+ />
61
60
  );
62
61
 
63
62
  const {show, close, image, isShow} = this.showImage;
@@ -4,6 +4,7 @@ import {deepDefaults, palette} from '../../styles/utils';
4
4
  import '../../styles/global';
5
5
 
6
6
  const defaults = {
7
+ get transition() { return theme.transition.middle },
7
8
  fontSize: '12px',
8
9
  tip: {
9
10
  gap: '16px',
@@ -73,7 +74,7 @@ const defaults = {
73
74
  }
74
75
  };
75
76
 
76
- let upload: any;
77
+ let upload: typeof defaults;
77
78
  setDefault(() => {
78
79
  upload = deepDefaults(theme, {upload: defaults}).upload;
79
80
  });
@@ -149,7 +150,7 @@ export function makeStyles() {
149
150
  border-radius: ${upload.drag.borderRadius};
150
151
  cursor: pointer;
151
152
  text-align: center;
152
- transition: border-color ${theme.transition};
153
+ transition: border-color ${upload.transition};
153
154
  &:hover {
154
155
  border-color: ${upload.drag.hoverBorderColor};
155
156
  }
@@ -198,7 +199,7 @@ export function makeStyles() {
198
199
  right: ${upload.gallery.close.right};
199
200
  display: inline-block;
200
201
  opacity: 0;
201
- transition: opacity ${theme.transition};
202
+ transition: opacity ${upload.transition};
202
203
  pointer-events: none;
203
204
  .k-icon {
204
205
  font-size: ${upload.gallery.close.fontSize};
@@ -206,7 +207,7 @@ export function makeStyles() {
206
207
  }
207
208
  .k-upload-icons {
208
209
  opacity: 0;
209
- transition: opacity ${theme.transition};
210
+ transition: opacity ${upload.transition};
210
211
  }
211
212
  &:hover {
212
213
  .k-upload-icons {
@@ -159,7 +159,7 @@ export function getRestProps<T>(component: Component<T>, props = component.get()
159
159
  }
160
160
 
161
161
  const externalLinkReg = /^(https?:)?\/\//;
162
- export function isExternalLink(to?: string) {
162
+ export function isExternalLink(to?: string | object): to is string {
163
163
  if (!isString(to)) return false;
164
164
  return externalLinkReg.test(to);
165
165
  }
@@ -0,0 +1,94 @@
1
+ import {Component, TypeDefs, findDomFromVNode, VNode, nextTick} from 'intact';
2
+ import {isArray} from 'intact-shared';
3
+ import {bind} from '../utils';
4
+ import {makeStyles} from './styles';
5
+ import {theme} from '../../styles/theme';
6
+
7
+ export interface WaveProps {
8
+ disabled?: boolean
9
+ color?: string
10
+ inset?: string
11
+ }
12
+
13
+ const typeDefs: Required<TypeDefs<WaveProps>> = {
14
+ disabled: Boolean,
15
+ color: String,
16
+ inset: String,
17
+ };
18
+
19
+ const defaults = (): Partial<WaveProps> => ({
20
+ color: theme.color.primary,
21
+ inset: '-1px'
22
+ });
23
+
24
+ export class Wave extends Component<WaveProps> {
25
+ static typeDefs = typeDefs;
26
+ static defaults = defaults;
27
+ static template = function(this: Wave) {
28
+ const children = this.get('children') as VNode;
29
+ if (process.env.NODE_ENV !== 'production') {
30
+ if (!children || (isArray(children) && children.length > 1)) {
31
+ throw new Error('Wave must receive only one Element children');
32
+ }
33
+ }
34
+ return children;
35
+ };
36
+
37
+ private instance: HTMLElement | null = null;
38
+ private className!: string;
39
+ private timer: number = 0;
40
+
41
+ private initClassName() {
42
+ const {color, inset} = this.get();
43
+ this.className = makeStyles(color || theme.color.primary, inset!);
44
+ }
45
+
46
+ @bind
47
+ mounted() {
48
+ const children = this.get('children') as VNode;
49
+ const node = findDomFromVNode(children, true) as HTMLElement;
50
+ if (!node || node.nodeType !== 1) {
51
+ return;
52
+ }
53
+
54
+ this.instance = node;
55
+ node.addEventListener('click', this.onClick);
56
+ }
57
+
58
+ beforeUnmount() {
59
+ if (this.instance) {
60
+ this.instance!.removeEventListener('click', this.onClick);
61
+ }
62
+ this.resetAnimation();
63
+ }
64
+
65
+ @bind
66
+ private onClick(e: Event) {
67
+ this.initClassName();
68
+
69
+ const {instance} = this;
70
+ const {disabled} = this.get();
71
+ const node = e.target as HTMLElement;
72
+
73
+ // 点击输入框中的icon时,此时输入框不需要动效
74
+ const isInput = instance!.classList.contains('k-input-wrapper');
75
+ if (disabled || isInput && node!.classList.contains('k-icon')) return;
76
+
77
+ this.resetAnimation();
78
+
79
+ instance!.addEventListener('animationend', this.resetAnimation);
80
+ this.timer = window.setTimeout(() => {
81
+ instance!.classList.add(this.className);
82
+ });
83
+ }
84
+
85
+ @bind
86
+ resetAnimation() {
87
+ const node = this.instance;
88
+ if (!node) return;
89
+
90
+ node.classList.remove(this.className);
91
+ node.removeEventListener('animationend', this.resetAnimation);
92
+ clearTimeout(this.timer);
93
+ }
94
+ }
@@ -0,0 +1,50 @@
1
+ import {css, keyframes} from '@emotion/css';
2
+ import {theme, setDefault} from '../../styles/theme';
3
+ import {deepDefaults, palette} from '../../styles/utils';
4
+ import '../../styles/global';
5
+
6
+ const defaults = {
7
+ inset: '-3px',
8
+ };
9
+
10
+ let wave: typeof defaults;
11
+ setDefault(() => {
12
+ wave = deepDefaults(theme, {wave: defaults}).wave;
13
+ });
14
+
15
+ export function makeStyles(color: string, inset: string) {
16
+ const waveEffect = keyframes`
17
+ 100% {
18
+ top: calc(${inset} + ${wave.inset});
19
+ bottom: calc(${inset} + ${wave.inset});
20
+ left: calc(${inset} + ${wave.inset});
21
+ right: calc(${inset} + ${wave.inset});
22
+ opacity: 0.05;
23
+ }
24
+ `;
25
+
26
+ return css`
27
+ position: relative;
28
+ &::after {
29
+ display: block;
30
+ content: '';
31
+ position: absolute;
32
+ top: ${inset};
33
+ bottom: ${inset};
34
+ left: ${inset};
35
+ right: ${inset};
36
+ opacity: 0.4;
37
+ border-radius: 4px;
38
+ z-index: 2;
39
+ animation: ${waveEffect} .2s ease-in;
40
+ animation-fill-mode: forwards;
41
+ border: 2px solid ${color};
42
+ }
43
+ &.k-circle,
44
+ &.k-radio-wrapper {
45
+ &:after {
46
+ border-radius: calc(${theme.large.height} / 2 + 4px);
47
+ }
48
+ }
49
+ `;
50
+ }
@@ -1,6 +1,6 @@
1
1
  import { Component, TypeDefs } from 'intact';
2
2
  export interface BreadcrumbItemProps {
3
- to?: string;
3
+ to?: string | object;
4
4
  }
5
5
  export declare class BreadcrumbItem extends Component<BreadcrumbItemProps> {
6
6
  static template: string | import("intact").Template<any>;
@@ -4,10 +4,9 @@ import { __decorate } from "tslib";
4
4
  import { Component } from 'intact';
5
5
  import { bind } from '../utils';
6
6
  import template from './item.vdt';
7
- import { isExternalLink } from '../utils';
8
- import { useRouter } from '../../hooks/useRouter';
7
+ import { useRouter, navigate } from '../../hooks/useRouter';
9
8
  var typeDefs = {
10
- to: String
9
+ to: [String, Object]
11
10
  };
12
11
  export var BreadcrumbItem = /*#__PURE__*/function (_Component) {
13
12
  _inheritsLoose(BreadcrumbItem, _Component);
@@ -29,17 +28,7 @@ export var BreadcrumbItem = /*#__PURE__*/function (_Component) {
29
28
  var _proto = BreadcrumbItem.prototype;
30
29
 
31
30
  _proto.onClick = function onClick() {
32
- var to = this.get('to');
33
-
34
- if (to) {
35
- var router = this.router.value;
36
-
37
- if (router && !isExternalLink(to)) {
38
- router.push(to);
39
- } else {
40
- window.location.href = to;
41
- }
42
- }
31
+ navigate(this.router.value, this.get('to'));
43
32
  };
44
33
 
45
34
  return BreadcrumbItem;
@@ -24,5 +24,5 @@ setDefault(function () {
24
24
  }).breadcrumb;
25
25
  });
26
26
  export default function makeStyles() {
27
- return /*#__PURE__*/css("font-size:", breadcrumb.fontSize, ";.k-breadcrumb-item{display:inline-block;&:last-of-type .k-breadcrumb-link{font-weight:", breadcrumb.activeFontWeight, ";color:", breadcrumb.activeColor, ";}}.k-breadcrumb-link,.k-breadcrumb-link a{color:", breadcrumb.color, ";}a.k-breadcrumb-link:hover,.k-breadcrumb-link a:hover{color:", breadcrumb.hoverColor, ";}.k-breadcrumb-separator{margin:0 ", breadcrumb.gap, ";}");
27
+ return /*#__PURE__*/css("font-size:", breadcrumb.fontSize, ";display:flex;align-items:center;.k-breadcrumb-item{&:last-of-type .k-breadcrumb-link{font-weight:", breadcrumb.activeFontWeight, ";color:", breadcrumb.activeColor, ";}}.k-breadcrumb-link,.k-breadcrumb-link a{color:", breadcrumb.color, ";}a.k-breadcrumb-link,.k-breadcrumb-link a{cursor:pointer;&:hover{color:", breadcrumb.hoverColor, ";}}.k-breadcrumb-separator{margin:0 ", breadcrumb.gap, ";}");
28
28
  }
@@ -4,6 +4,8 @@ import { getRestProps } from '../utils';
4
4
  import { Icon } from '../icon';
5
5
  import { makeButtonStyles } from './styles';
6
6
  import { DynamicButton } from './dynamicButton';
7
+ import { Wave } from '../wave';
8
+ import { button as theme } from './styles';
7
9
  export default function ($props, $blocks, $__proto__) {
8
10
  var _classNameObj;
9
11
 
@@ -72,22 +74,29 @@ export default function ($props, $blocks, $__proto__) {
72
74
  var buttonGroup = this.buttonGroup;
73
75
  var checkType = buttonGroup ? buttonGroup.get('checkType') : 'none';
74
76
  var isCheckType = checkType !== 'none';
75
- return _$cc(DynamicButton, _extends({
76
- 'className': _$cn(classNameObj),
77
- 'tagName': tagName
78
- }, getRestProps(this), {
79
- 'ref': this.elementRef,
80
- 'tabindex': disabled || loading ? '-1' : tabindex,
81
- 'ev-click': this.onClick,
82
- 'ev-mouseup': this.onMouseUp,
83
- 'htmlType': htmlType,
84
- 'name': isCheckType ? null : name,
85
- 'children': [loading ? iconSide === 'right' ? [children, loadingIcon] : [loadingIcon, children] : children, isCheckType ? _$ce(64, 'input', null, 1, 'k-button-input', {
86
- 'type': checkType,
87
- 'name': name,
88
- 'checked': checked,
89
- 'tabindex': '-1'
90
- }) : undefined]
91
- }), null, this.elementRef);
77
+ var typeStyles = theme[type];
78
+ var waveColor = typeStyles && typeStyles.borderColor || theme.primary.borderColor;
79
+ return _$cc(Wave, {
80
+ 'disabled': loading || disabled || type === 'none' || type === 'link',
81
+ 'inset': '-2px',
82
+ 'color': waveColor,
83
+ 'children': _$cc(DynamicButton, _extends({
84
+ 'className': _$cn(classNameObj),
85
+ 'tagName': tagName
86
+ }, getRestProps(this), {
87
+ 'ref': this.elementRef,
88
+ 'tabindex': disabled || loading ? '-1' : tabindex,
89
+ 'ev-click': this.onClick,
90
+ 'ev-mouseup': this.onMouseUp,
91
+ 'htmlType': htmlType,
92
+ 'name': isCheckType ? null : name,
93
+ 'children': [loading ? iconSide === 'right' ? [children, loadingIcon] : [loadingIcon, children] : children, isCheckType ? _$ce(64, 'input', null, 1, 'k-button-input', {
94
+ 'type': checkType,
95
+ 'name': name,
96
+ 'checked': checked,
97
+ 'tabindex': '-1'
98
+ }) : undefined]
99
+ }), null, this.elementRef)
100
+ });
92
101
  }
93
102
  ;