@cloudtower/eagle 0.0.0-config-rc-9 → 0.0.0-data-testid

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 (638) hide show
  1. package/dist/__test__/mockLineChart.d.ts +4 -0
  2. package/dist/cjs/UIKitProvider/index.js +15 -40
  3. package/dist/cjs/antd.js +14 -14
  4. package/dist/cjs/core/AccordionCard/index.js +4 -1
  5. package/dist/cjs/core/Alert/index.js +12 -4
  6. package/dist/cjs/core/Arch/index.js +5 -3
  7. package/dist/cjs/core/AutoComplete/AutoComplete.js +42 -0
  8. package/dist/cjs/core/Avatar/index.js +3 -1
  9. package/dist/cjs/core/Banner/banner.style.js +11 -0
  10. package/dist/cjs/core/Banner/index.js +45 -0
  11. package/dist/cjs/core/BasicCTError/BasicCTError.style.js +5 -0
  12. package/dist/cjs/core/BasicCTError/index.js +53 -0
  13. package/dist/cjs/core/Bit/index.js +5 -3
  14. package/dist/cjs/core/BitPerSecond/index.js +8 -6
  15. package/dist/cjs/core/BlankState/index.js +91 -0
  16. package/dist/cjs/core/BlankState/style.js +5 -0
  17. package/dist/cjs/core/Bps/index.js +5 -3
  18. package/dist/cjs/core/Breadcrumb/index.js +4 -1
  19. package/dist/cjs/core/Button/index.js +1 -2
  20. package/dist/cjs/core/ButtonGroup/index.js +3 -1
  21. package/dist/cjs/core/Byte/index.js +7 -5
  22. package/dist/cjs/core/BytePerSecond/index.js +46 -0
  23. package/dist/cjs/core/Card/index.js +7 -3
  24. package/dist/cjs/core/Cascader/cascader.widget.js +12 -11
  25. package/dist/cjs/core/Cascader/index.js +1 -1
  26. package/dist/cjs/core/Checkbox/index.js +1 -1
  27. package/dist/cjs/core/ConfigProvider/index.js +45 -7
  28. package/dist/cjs/core/DetailCard/index.js +7 -3
  29. package/dist/cjs/core/DonutChart/index.js +3 -1
  30. package/dist/cjs/core/DropdownMenu/index.js +9 -4
  31. package/dist/cjs/core/Duration/index.js +79 -0
  32. package/dist/cjs/core/Empty/index.js +6 -3
  33. package/dist/cjs/core/Error/index.js +4 -1
  34. package/dist/cjs/core/FailedLoad/index.js +4 -1
  35. package/dist/cjs/core/Fields/FieldsBoolean/index.js +11 -2
  36. package/dist/cjs/core/Fields/FieldsDateTime/index.js +5 -1
  37. package/dist/cjs/core/Fields/FieldsDateTimeRange/index.js +25 -5
  38. package/dist/cjs/core/Fields/FieldsEnum/index.js +6 -4
  39. package/dist/cjs/core/Fields/FieldsFloat/index.js +6 -3
  40. package/dist/cjs/core/Fields/FieldsInt/index.js +6 -3
  41. package/dist/cjs/core/Fields/FieldsInteger/index.js +6 -3
  42. package/dist/cjs/core/Fields/FieldsString/index.js +14 -4
  43. package/dist/cjs/core/Fields/FieldsTextArea/index.js +6 -3
  44. package/dist/cjs/core/Fields/FieldsTimePicker/index.js +10 -6
  45. package/dist/cjs/core/FormItem/index.js +15 -1
  46. package/dist/cjs/core/Frequency/index.js +5 -3
  47. package/dist/cjs/core/ImmersiveDialog/index.js +230 -0
  48. package/dist/cjs/core/ImmersiveDialog/styles.js +31 -0
  49. package/dist/cjs/core/Input/index.js +15 -3
  50. package/dist/cjs/core/InputInteger/index.js +15 -3
  51. package/dist/cjs/core/InputNumber/index.js +15 -3
  52. package/dist/cjs/core/InputPassword/index.js +15 -3
  53. package/dist/cjs/core/KitStoreProvider/index.js +10 -0
  54. package/dist/cjs/core/{Modal → LegacyModal}/index.js +60 -45
  55. package/dist/cjs/core/LegacySelect/index.js +203 -0
  56. package/dist/cjs/core/LegacySelect/select.style.js +5 -0
  57. package/dist/cjs/core/Legend/index.js +128 -0
  58. package/dist/cjs/core/LineChart/LineChartActions.js +52 -0
  59. package/dist/cjs/core/LineChart/LineChartLegend.js +120 -0
  60. package/dist/cjs/core/LineChart/LineChartToolBar.js +56 -0
  61. package/dist/cjs/core/LineChart/Pointer.js +45 -0
  62. package/dist/cjs/core/LineChart/RenderChart.js +317 -0
  63. package/dist/cjs/core/LineChart/TooltipFormatter.js +71 -0
  64. package/dist/cjs/core/LineChart/index.js +68 -0
  65. package/dist/cjs/core/LineChart/styled.js +35 -0
  66. package/dist/cjs/core/LineChart/type.js +30 -0
  67. package/dist/cjs/core/LineChart/utils.js +394 -0
  68. package/dist/cjs/core/Loading/index.js +23 -2
  69. package/dist/cjs/core/LocalUpload/LocalUpload.hooks.js +66 -0
  70. package/dist/cjs/core/LocalUpload/LocalUpload.js +116 -0
  71. package/dist/cjs/core/LocalUpload/LocalUpload.style.js +13 -0
  72. package/dist/cjs/core/LocalUpload/LocalUpload.widget.js +379 -0
  73. package/dist/cjs/core/MediumDialog/MediumDialog.js +57 -0
  74. package/dist/cjs/core/Metric/index.js +3 -1
  75. package/dist/cjs/core/ModalStack/index.js +6 -0
  76. package/dist/cjs/core/Nav/index.js +5 -2
  77. package/dist/cjs/core/Pagination/index.js +7 -1
  78. package/dist/cjs/core/Percent/index.js +4 -3
  79. package/dist/cjs/core/Progress/index.js +6 -4
  80. package/dist/cjs/core/Progress/progress.widgets.js +6 -7
  81. package/dist/cjs/core/Radio/index.js +15 -7
  82. package/dist/cjs/core/SearchInput/SearchInput.hook.js +124 -0
  83. package/dist/cjs/core/SearchInput/SearchInput.js +253 -0
  84. package/dist/cjs/core/SearchInput/SearchInput.style.js +13 -0
  85. package/dist/cjs/core/SearchInput/index.js +137 -28
  86. package/dist/cjs/core/Second/index.js +16 -5
  87. package/dist/cjs/core/SegmentControl/index.js +1 -1
  88. package/dist/cjs/core/Select/index.js +106 -117
  89. package/dist/cjs/core/Select/select.style.js +11 -0
  90. package/dist/cjs/core/Select/select.widgets.js +63 -0
  91. package/dist/cjs/core/SidebarMenu/SidebarMenu.js +1 -7
  92. package/dist/cjs/core/SimplePagination/index.js +8 -2
  93. package/dist/cjs/core/Skeleton/Content.js +30 -0
  94. package/dist/cjs/core/Skeleton/index.js +13 -0
  95. package/dist/cjs/core/SmallDialog/SmallDialog.js +172 -0
  96. package/dist/cjs/core/SmallDialog/SmallDialog.style.js +17 -0
  97. package/dist/cjs/core/SmallDialog/SmallDialog.widget.js +28 -0
  98. package/dist/cjs/core/Speed/index.js +5 -3
  99. package/dist/cjs/core/StepProgress/index.js +3 -1
  100. package/dist/cjs/core/Styled/index.js +2 -0
  101. package/dist/cjs/core/Switch/index.js +5 -3
  102. package/dist/cjs/core/Tab/Tab.js +118 -0
  103. package/dist/cjs/core/Tab/Tab.style.js +17 -0
  104. package/dist/cjs/core/Tab/Tab.type.js +9 -0
  105. package/dist/cjs/core/Tab/useTabAdaptiveLayout.js +73 -0
  106. package/dist/cjs/core/Table/index.js +7 -3
  107. package/dist/cjs/core/TableForm/AddRowButton.js +13 -5
  108. package/dist/cjs/core/TableForm/Columns/AffixColumn.js +1 -1
  109. package/dist/cjs/core/TableForm/Columns/CheckboxColumn.js +1 -1
  110. package/dist/cjs/core/TableForm/Columns/InputColumn.js +1 -0
  111. package/dist/cjs/core/TableForm/TableFormBodyCell.js +13 -17
  112. package/dist/cjs/core/TableForm/TableFormBodyRows.js +8 -3
  113. package/dist/cjs/core/TableForm/TableFormHeaderCell.js +42 -20
  114. package/dist/cjs/core/TableForm/index.js +41 -21
  115. package/dist/cjs/core/TextArea/index.js +21 -3
  116. package/dist/cjs/core/Time/index.js +9 -8
  117. package/dist/cjs/core/TimePicker/index.js +1 -9
  118. package/dist/cjs/core/TimeZoneSelect/index.js +4 -2
  119. package/dist/cjs/core/Timeline/Timeline.style.js +13 -0
  120. package/dist/cjs/core/Timeline/Timeline.widget.js +114 -0
  121. package/dist/cjs/core/Timeline/index.js +143 -0
  122. package/dist/cjs/core/Tooltip/EllipsisTooltipContent.js +55 -0
  123. package/dist/cjs/core/Tooltip/index.js +4 -1
  124. package/dist/cjs/core/Truncate/index.js +3 -1
  125. package/dist/cjs/core/WizardDialog/index.js +175 -0
  126. package/dist/cjs/core/WizardDialog/styles.js +11 -0
  127. package/dist/cjs/core/index.js +24 -18
  128. package/dist/cjs/core/message/index.js +5 -210
  129. package/dist/cjs/core/message/message.js +245 -0
  130. package/dist/cjs/core/message/useMessage.js +12 -0
  131. package/dist/cjs/core/message-group/index.js +3 -1
  132. package/dist/cjs/coreX/BarChart/index.js +77 -18
  133. package/dist/cjs/coreX/BatchOperation/index.js +4 -1
  134. package/dist/cjs/coreX/ChartWithTooltip/index.js +14 -12
  135. package/dist/cjs/coreX/CheckPointList/checkpointlist.style.js +9 -0
  136. package/dist/cjs/coreX/CheckPointList/index.js +118 -0
  137. package/dist/cjs/coreX/CircleLoading/index.js +66 -0
  138. package/dist/cjs/coreX/Copy/CopyButton.js +40 -0
  139. package/dist/cjs/coreX/Copy/CopyTooltip.js +66 -0
  140. package/dist/cjs/coreX/DateRangePicker/AbsoluteDate.js +2 -1
  141. package/dist/cjs/coreX/DateRangePicker/Calendar.js +82 -61
  142. package/dist/cjs/coreX/DateRangePicker/common.js +7 -5
  143. package/dist/cjs/coreX/DateRangePicker/index.js +25 -8
  144. package/dist/cjs/coreX/DateRangePicker/utils.js +5 -0
  145. package/dist/cjs/coreX/Dialogs/DeleteDialog/DeleteDialog.js +53 -0
  146. package/dist/cjs/coreX/Dialogs/RejectDialog/RejectDialog.js +137 -0
  147. package/dist/cjs/coreX/Dialogs/RejectDialog/RejectDialog.type.js +11 -0
  148. package/dist/cjs/coreX/InfoRowList/InfoRow.js +31 -0
  149. package/dist/cjs/coreX/InfoRowList/InfoRowList.js +60 -0
  150. package/dist/cjs/coreX/KubeConfigModal/KubeConfigModal.style.js +29 -0
  151. package/dist/cjs/coreX/KubeConfigModal/index.js +102 -0
  152. package/dist/cjs/coreX/KubeConfigModal/utils.js +25 -0
  153. package/dist/cjs/coreX/OverflowTooltip/index.js +21 -8
  154. package/dist/cjs/coreX/Show/index.js +20 -0
  155. package/dist/cjs/coreX/Sider/index.js +109 -0
  156. package/dist/cjs/coreX/SummaryTable/index.js +6 -3
  157. package/dist/cjs/coreX/UnderlineTootip/index.js +70 -0
  158. package/dist/cjs/coreX/UnitWithChart/index.js +14 -12
  159. package/dist/cjs/hooks/useAntdPatchEnLocales.js +35 -0
  160. package/dist/cjs/hooks/useCTErrorMsg.js +25 -0
  161. package/dist/cjs/hooks/useFormatDuration.js +35 -0
  162. package/dist/cjs/hooks/useLegacyComponentWarning.js +16 -0
  163. package/dist/cjs/index.js +376 -260
  164. package/dist/cjs/legacy-antd.js +58 -54
  165. package/dist/cjs/stats1.html +1 -1
  166. package/dist/cjs/store/modal.js +3 -0
  167. package/dist/cjs/styles/token/animation.js +22 -1
  168. package/dist/cjs/styles/token/color.js +24 -0
  169. package/dist/cjs/utils/constants.js +10 -6
  170. package/dist/cjs/utils/cterror.js +64 -0
  171. package/dist/cjs/utils/formatDuration.js +67 -0
  172. package/dist/cjs/utils/tower.js +98 -0
  173. package/dist/cjs/utils/unit.js +19 -0
  174. package/dist/components.css +6532 -61924
  175. package/dist/esm/UIKitProvider/index.js +9 -28
  176. package/dist/esm/antd.js +3 -3
  177. package/dist/esm/core/AccordionCard/index.js +4 -1
  178. package/dist/esm/core/Alert/index.js +12 -4
  179. package/dist/esm/core/Arch/index.js +5 -3
  180. package/dist/esm/core/AutoComplete/AutoComplete.js +35 -0
  181. package/dist/esm/core/Avatar/index.js +3 -1
  182. package/dist/esm/core/Banner/banner.style.js +6 -0
  183. package/dist/esm/core/Banner/index.js +38 -0
  184. package/dist/esm/core/BasicCTError/BasicCTError.style.js +3 -0
  185. package/dist/esm/core/BasicCTError/index.js +47 -0
  186. package/dist/esm/core/Bit/index.js +5 -3
  187. package/dist/esm/core/BitPerSecond/index.js +8 -6
  188. package/dist/esm/core/BlankState/index.js +85 -0
  189. package/dist/esm/core/BlankState/style.js +3 -0
  190. package/dist/esm/core/Bps/index.js +5 -3
  191. package/dist/esm/core/Breadcrumb/index.js +4 -1
  192. package/dist/esm/core/Button/index.js +1 -2
  193. package/dist/esm/core/ButtonGroup/index.js +3 -1
  194. package/dist/esm/core/Byte/index.js +7 -5
  195. package/dist/esm/core/BytePerSecond/index.js +40 -0
  196. package/dist/esm/core/Card/index.js +7 -3
  197. package/dist/esm/core/Cascader/cascader.widget.js +3 -2
  198. package/dist/esm/core/Cascader/index.js +2 -2
  199. package/dist/esm/core/Checkbox/index.js +1 -1
  200. package/dist/esm/core/ConfigProvider/index.js +40 -9
  201. package/dist/esm/core/DetailCard/index.js +7 -3
  202. package/dist/esm/core/DonutChart/index.js +3 -1
  203. package/dist/esm/core/DropdownMenu/index.js +9 -4
  204. package/dist/esm/core/Duration/index.js +73 -0
  205. package/dist/esm/core/Empty/index.js +6 -3
  206. package/dist/esm/core/Error/index.js +4 -1
  207. package/dist/esm/core/FailedLoad/index.js +4 -1
  208. package/dist/esm/core/Fields/FieldsBoolean/index.js +11 -2
  209. package/dist/esm/core/Fields/FieldsDateTime/index.js +5 -1
  210. package/dist/esm/core/Fields/FieldsDateTimeRange/index.js +25 -5
  211. package/dist/esm/core/Fields/FieldsEnum/index.js +8 -6
  212. package/dist/esm/core/Fields/FieldsFloat/index.js +6 -3
  213. package/dist/esm/core/Fields/FieldsInt/index.js +6 -3
  214. package/dist/esm/core/Fields/FieldsInteger/index.js +6 -3
  215. package/dist/esm/core/Fields/FieldsString/index.js +14 -4
  216. package/dist/esm/core/Fields/FieldsTextArea/index.js +6 -3
  217. package/dist/esm/core/Fields/FieldsTimePicker/index.js +8 -4
  218. package/dist/esm/core/FormItem/index.js +15 -1
  219. package/dist/esm/core/Frequency/index.js +5 -3
  220. package/dist/esm/core/ImmersiveDialog/index.js +223 -0
  221. package/dist/esm/core/ImmersiveDialog/styles.js +16 -0
  222. package/dist/esm/core/Input/index.js +15 -3
  223. package/dist/esm/core/InputInteger/index.js +15 -3
  224. package/dist/esm/core/InputNumber/index.js +15 -3
  225. package/dist/esm/core/InputPassword/index.js +15 -3
  226. package/dist/esm/core/KitStoreProvider/index.js +10 -1
  227. package/dist/esm/core/{Modal → LegacyModal}/index.js +62 -47
  228. package/dist/esm/core/LegacySelect/index.js +195 -0
  229. package/dist/esm/core/LegacySelect/select.style.js +3 -0
  230. package/dist/esm/core/Legend/index.js +117 -0
  231. package/dist/esm/core/LineChart/LineChartActions.js +46 -0
  232. package/dist/esm/core/LineChart/LineChartLegend.js +110 -0
  233. package/dist/esm/core/LineChart/LineChartToolBar.js +50 -0
  234. package/dist/esm/core/LineChart/Pointer.js +38 -0
  235. package/dist/esm/core/LineChart/RenderChart.js +309 -0
  236. package/dist/esm/core/LineChart/TooltipFormatter.js +64 -0
  237. package/dist/esm/core/LineChart/index.js +59 -0
  238. package/dist/esm/core/LineChart/styled.js +25 -0
  239. package/dist/esm/core/LineChart/type.js +26 -0
  240. package/dist/esm/core/LineChart/utils.js +369 -0
  241. package/dist/esm/core/Loading/index.js +22 -2
  242. package/dist/esm/core/LocalUpload/LocalUpload.hooks.js +63 -0
  243. package/dist/esm/core/LocalUpload/LocalUpload.js +110 -0
  244. package/dist/esm/core/LocalUpload/LocalUpload.style.js +10 -0
  245. package/dist/esm/core/LocalUpload/LocalUpload.widget.js +365 -0
  246. package/dist/esm/core/MediumDialog/MediumDialog.js +51 -0
  247. package/dist/esm/core/Metric/index.js +3 -1
  248. package/dist/esm/core/ModalStack/index.js +7 -1
  249. package/dist/esm/core/Nav/index.js +5 -2
  250. package/dist/esm/core/Pagination/index.js +7 -1
  251. package/dist/esm/core/Percent/index.js +4 -3
  252. package/dist/esm/core/Progress/index.js +7 -5
  253. package/dist/esm/core/Progress/progress.widgets.js +5 -6
  254. package/dist/esm/core/Radio/index.js +15 -7
  255. package/dist/esm/core/SearchInput/SearchInput.hook.js +117 -0
  256. package/dist/esm/core/SearchInput/SearchInput.js +247 -0
  257. package/dist/esm/core/SearchInput/SearchInput.style.js +7 -0
  258. package/dist/esm/core/SearchInput/index.js +137 -28
  259. package/dist/esm/core/Second/index.js +16 -5
  260. package/dist/esm/core/SegmentControl/index.js +2 -2
  261. package/dist/esm/core/Select/index.js +104 -116
  262. package/dist/esm/core/Select/select.style.js +6 -0
  263. package/dist/esm/core/Select/select.widgets.js +57 -0
  264. package/dist/esm/core/SidebarMenu/SidebarMenu.js +2 -8
  265. package/dist/esm/core/SimplePagination/index.js +8 -2
  266. package/dist/esm/core/Skeleton/Content.js +23 -0
  267. package/dist/esm/core/Skeleton/index.js +7 -0
  268. package/dist/esm/core/SmallDialog/SmallDialog.js +165 -0
  269. package/dist/esm/core/SmallDialog/SmallDialog.style.js +9 -0
  270. package/dist/esm/core/SmallDialog/SmallDialog.widget.js +20 -0
  271. package/dist/esm/core/Speed/index.js +5 -3
  272. package/dist/esm/core/StepProgress/index.js +3 -1
  273. package/dist/esm/core/Styled/index.js +2 -1
  274. package/dist/esm/core/Switch/index.js +5 -3
  275. package/dist/esm/core/Tab/Tab.js +112 -0
  276. package/dist/esm/core/Tab/Tab.style.js +12 -0
  277. package/dist/esm/core/Tab/Tab.type.js +7 -0
  278. package/dist/esm/core/Tab/useTabAdaptiveLayout.js +71 -0
  279. package/dist/esm/core/Table/index.js +7 -3
  280. package/dist/esm/core/TableForm/AddRowButton.js +13 -5
  281. package/dist/esm/core/TableForm/Columns/AffixColumn.js +1 -1
  282. package/dist/esm/core/TableForm/Columns/CheckboxColumn.js +1 -1
  283. package/dist/esm/core/TableForm/Columns/InputColumn.js +1 -0
  284. package/dist/esm/core/TableForm/TableFormBodyCell.js +14 -18
  285. package/dist/esm/core/TableForm/TableFormBodyRows.js +8 -3
  286. package/dist/esm/core/TableForm/TableFormHeaderCell.js +39 -17
  287. package/dist/esm/core/TableForm/index.js +42 -22
  288. package/dist/esm/core/TextArea/index.js +21 -3
  289. package/dist/esm/core/Time/index.js +9 -8
  290. package/dist/esm/core/TimePicker/index.js +1 -9
  291. package/dist/esm/core/TimeZoneSelect/index.js +5 -3
  292. package/dist/esm/core/Timeline/Timeline.style.js +7 -0
  293. package/dist/esm/core/Timeline/Timeline.widget.js +107 -0
  294. package/dist/esm/core/Timeline/index.js +136 -0
  295. package/dist/esm/core/Tooltip/EllipsisTooltipContent.js +49 -0
  296. package/dist/esm/core/Tooltip/index.js +4 -1
  297. package/dist/esm/core/Truncate/index.js +3 -1
  298. package/dist/esm/core/WizardDialog/index.js +169 -0
  299. package/dist/esm/core/WizardDialog/styles.js +6 -0
  300. package/dist/esm/core/index.js +6 -2
  301. package/dist/esm/core/message/index.js +4 -180
  302. package/dist/esm/core/message/message.js +209 -0
  303. package/dist/esm/core/message/useMessage.js +9 -0
  304. package/dist/esm/core/message-group/index.js +3 -1
  305. package/dist/esm/coreX/BarChart/index.js +77 -19
  306. package/dist/esm/coreX/BatchOperation/index.js +4 -1
  307. package/dist/esm/coreX/ChartWithTooltip/index.js +2 -0
  308. package/dist/esm/coreX/CheckPointList/checkpointlist.style.js +5 -0
  309. package/dist/esm/coreX/CheckPointList/index.js +110 -0
  310. package/dist/esm/coreX/CircleLoading/index.js +59 -0
  311. package/dist/esm/coreX/Copy/CopyButton.js +34 -0
  312. package/dist/esm/coreX/Copy/CopyTooltip.js +59 -0
  313. package/dist/esm/coreX/DateRangePicker/AbsoluteDate.js +2 -1
  314. package/dist/esm/coreX/DateRangePicker/Calendar.js +83 -62
  315. package/dist/esm/coreX/DateRangePicker/common.js +7 -5
  316. package/dist/esm/coreX/DateRangePicker/index.js +26 -9
  317. package/dist/esm/coreX/DateRangePicker/utils.js +3 -0
  318. package/dist/esm/coreX/Dialogs/DeleteDialog/DeleteDialog.js +47 -0
  319. package/dist/esm/coreX/Dialogs/RejectDialog/RejectDialog.js +131 -0
  320. package/dist/esm/coreX/Dialogs/RejectDialog/RejectDialog.type.js +9 -0
  321. package/dist/esm/coreX/InfoRowList/InfoRow.js +25 -0
  322. package/dist/esm/coreX/InfoRowList/InfoRowList.js +54 -0
  323. package/dist/esm/coreX/KubeConfigModal/KubeConfigModal.style.js +20 -0
  324. package/dist/esm/coreX/KubeConfigModal/index.js +96 -0
  325. package/dist/esm/coreX/KubeConfigModal/utils.js +22 -0
  326. package/dist/esm/coreX/OverflowTooltip/index.js +21 -8
  327. package/dist/esm/coreX/Show/index.js +14 -0
  328. package/dist/esm/coreX/Sider/index.js +102 -0
  329. package/dist/esm/coreX/SummaryTable/index.js +6 -3
  330. package/dist/esm/coreX/UnderlineTootip/index.js +61 -0
  331. package/dist/esm/coreX/UnitWithChart/index.js +2 -0
  332. package/dist/esm/hooks/useAntdPatchEnLocales.js +29 -0
  333. package/dist/esm/hooks/useCTErrorMsg.js +23 -0
  334. package/dist/esm/hooks/useFormatDuration.js +33 -0
  335. package/dist/esm/hooks/useLegacyComponentWarning.js +14 -0
  336. package/dist/esm/index.js +47 -10
  337. package/dist/esm/legacy-antd.js +10 -6
  338. package/dist/esm/stats1.html +1 -1
  339. package/dist/esm/store/modal.js +3 -0
  340. package/dist/esm/styles/token/animation.js +22 -2
  341. package/dist/esm/styles/token/color.js +24 -0
  342. package/dist/esm/utils/constants.js +6 -6
  343. package/dist/esm/utils/cterror.js +58 -0
  344. package/dist/esm/utils/formatDuration.js +65 -0
  345. package/dist/esm/utils/tower.js +93 -1
  346. package/dist/esm/utils/unit.js +17 -0
  347. package/dist/linaria.merged.scss +8642 -0
  348. package/dist/src/UIKitProvider/UIKitProvider.stories.d.ts +1 -2
  349. package/dist/src/UIKitProvider/index.d.ts +4 -6
  350. package/dist/src/antd.d.ts +3 -2
  351. package/dist/src/core/AccordionCard/accordionCard.type.d.ts +1 -0
  352. package/dist/src/core/Alert/alert.type.d.ts +6 -4
  353. package/dist/src/core/Antd5Flex/index.d.ts +2 -0
  354. package/dist/src/core/Antd5Tree/Antd5Tree.d.ts +1 -0
  355. package/dist/src/core/Antd5Tree/Antd5Tree.type.d.ts +4 -0
  356. package/dist/src/core/Antd5Tree/index.d.ts +2 -0
  357. package/dist/src/core/Arch/arch.type.d.ts +1 -0
  358. package/dist/src/core/AutoComplete/AutoComplete.d.ts +6 -0
  359. package/dist/src/core/AutoComplete/index.d.ts +1 -0
  360. package/dist/src/core/Avatar/avatar.type.d.ts +1 -0
  361. package/dist/src/core/Banner/banner.style.d.ts +4 -0
  362. package/dist/src/core/Banner/banner.types.d.ts +29 -0
  363. package/dist/src/core/Banner/index.d.ts +3 -0
  364. package/dist/src/core/BasicCTError/BasicCTError.style.d.ts +1 -0
  365. package/dist/src/core/BasicCTError/BasicCTError.type.d.ts +62 -0
  366. package/dist/src/core/BasicCTError/index.d.ts +3 -0
  367. package/dist/src/core/BitPerSecond/index.d.ts +2 -2
  368. package/dist/src/core/BlankState/index.d.ts +4 -0
  369. package/dist/src/core/BlankState/style.d.ts +1 -0
  370. package/dist/src/core/BlankState/type.d.ts +50 -0
  371. package/dist/src/core/Breadcrumb/breadcrumb.type.d.ts +2 -0
  372. package/dist/src/core/Button/button.type.d.ts +1 -0
  373. package/dist/src/core/BytePerSecond/index.d.ts +3 -0
  374. package/dist/src/core/Card/index.d.ts +8 -0
  375. package/dist/src/core/Cascader/cascader.type.d.ts +3 -1
  376. package/dist/src/core/Checkbox/index.d.ts +1 -1
  377. package/dist/src/core/ConfigProvider/index.d.ts +9 -2
  378. package/dist/src/core/DetailCard/detailCard.type.d.ts +1 -0
  379. package/dist/src/core/DonutChart/index.d.ts +1 -0
  380. package/dist/src/core/DropdownMenu/dropdownMenu.type.d.ts +2 -0
  381. package/dist/src/core/DropdownMenu/index.d.ts +1 -0
  382. package/dist/src/core/Duration/duration.type.d.ts +50 -0
  383. package/dist/src/core/Duration/index.d.ts +4 -0
  384. package/dist/src/core/Empty/index.d.ts +2 -1
  385. package/dist/src/core/Error/index.d.ts +2 -1
  386. package/dist/src/core/FailedLoad/index.d.ts +1 -0
  387. package/dist/src/core/Fields/FieldsBoolean/index.d.ts +1 -1
  388. package/dist/src/core/Fields/FieldsDateTime/index.d.ts +1 -1
  389. package/dist/src/core/Fields/FieldsEnum/fieldsEnum.type.d.ts +1 -0
  390. package/dist/src/core/Fields/FieldsEnum/index.d.ts +1 -1
  391. package/dist/src/core/Fields/FieldsFloat/index.d.ts +1 -1
  392. package/dist/src/core/Fields/FieldsInt/index.d.ts +1 -1
  393. package/dist/src/core/Fields/FieldsInteger/index.d.ts +1 -1
  394. package/dist/src/core/Fields/FieldsString/index.d.ts +1 -1
  395. package/dist/src/core/Fields/FieldsTextArea/index.d.ts +1 -1
  396. package/dist/src/core/Fields/FieldsTimePicker/index.d.ts +1 -1
  397. package/dist/src/core/Fields/__test__/data-testid.test.d.ts +1 -0
  398. package/dist/src/core/Fields/fields.type.d.ts +2 -1
  399. package/dist/src/core/Fields/index.d.ts +13 -9
  400. package/dist/src/core/FormItem/index.d.ts +3 -1
  401. package/dist/src/core/ImmersiveDialog/index.d.ts +3 -0
  402. package/dist/src/core/ImmersiveDialog/styles.d.ts +14 -0
  403. package/dist/src/core/ImmersiveDialog/type.d.ts +156 -0
  404. package/dist/src/core/Input/index.d.ts +2 -4
  405. package/dist/src/core/Input/input.type.d.ts +9 -0
  406. package/dist/src/core/InputPassword/index.d.ts +7 -2
  407. package/dist/src/core/KitStoreProvider/index.d.ts +1 -0
  408. package/dist/src/core/LegacyModal/LegacyModal.type.d.ts +71 -0
  409. package/dist/src/core/LegacyModal/index.d.ts +16 -0
  410. package/dist/src/core/LegacySelect/index.d.ts +4 -0
  411. package/dist/src/core/LegacySelect/select.style.d.ts +1 -0
  412. package/dist/src/core/LegacySelect/select.type.d.ts +32 -0
  413. package/dist/src/core/Legend/__test__/h5_css.test.d.ts +1 -0
  414. package/dist/src/core/Legend/index.d.ts +9 -0
  415. package/dist/src/core/Legend/legend.type.d.ts +27 -0
  416. package/dist/src/core/LineChart/LineChartActions.d.ts +7 -0
  417. package/dist/src/core/LineChart/LineChartLegend.d.ts +18 -0
  418. package/dist/src/core/LineChart/LineChartToolBar.d.ts +20 -0
  419. package/dist/src/core/LineChart/Pointer.d.ts +6 -0
  420. package/dist/src/core/LineChart/RenderChart.d.ts +45 -0
  421. package/dist/src/core/LineChart/TooltipFormatter.d.ts +10 -0
  422. package/dist/src/core/LineChart/__test__/h5_css.test.d.ts +1 -0
  423. package/dist/src/core/LineChart/index.d.ts +8 -0
  424. package/dist/src/core/LineChart/styled.d.ts +12 -0
  425. package/dist/src/core/LineChart/type.d.ts +196 -0
  426. package/dist/src/core/LineChart/utils.d.ts +56 -0
  427. package/dist/src/core/Loading/loading.type.d.ts +2 -2
  428. package/dist/src/core/LocalUpload/LocalUpload.d.ts +15 -0
  429. package/dist/src/core/LocalUpload/LocalUpload.hooks.d.ts +32 -0
  430. package/dist/src/core/LocalUpload/LocalUpload.style.d.ts +3 -0
  431. package/dist/src/core/LocalUpload/LocalUpload.type.d.ts +179 -0
  432. package/dist/src/core/LocalUpload/LocalUpload.widget.d.ts +23 -0
  433. package/dist/src/core/LocalUpload/index.d.ts +2 -0
  434. package/dist/src/core/MediumDialog/MediumDialog.d.ts +3 -0
  435. package/dist/src/core/MediumDialog/MediumDialog.type.d.ts +53 -0
  436. package/dist/src/core/MediumDialog/index.d.ts +1 -0
  437. package/dist/src/core/Metric/index.d.ts +1 -0
  438. package/dist/src/core/Metric/metric.d.ts +1 -1
  439. package/dist/src/core/Nav/nav.type.d.ts +2 -0
  440. package/dist/src/core/Pagination/pagination.type.d.ts +1 -0
  441. package/dist/src/core/Progress/progress.type.d.ts +4 -0
  442. package/dist/src/core/Radio/index.d.ts +3 -1
  443. package/dist/src/core/Radio/radio.type.d.ts +2 -0
  444. package/dist/src/core/SearchInput/SearchInput.d.ts +2 -0
  445. package/dist/src/core/SearchInput/SearchInput.hook.d.ts +9 -0
  446. package/dist/src/core/SearchInput/SearchInput.style.d.ts +5 -0
  447. package/dist/src/core/SearchInput/__test__/SearchInput.hook.test.d.ts +1 -0
  448. package/dist/src/core/SearchInput/index.d.ts +2 -4
  449. package/dist/src/core/SearchInput/searchInput.type.d.ts +149 -2
  450. package/dist/src/core/SegmentControl/__test__/data-testid.test.d.ts +1 -0
  451. package/dist/src/core/SegmentControl/segmentControl.type.d.ts +2 -0
  452. package/dist/src/core/Select/index.d.ts +1 -0
  453. package/dist/src/core/Select/select.style.d.ts +4 -0
  454. package/dist/src/core/Select/select.type.d.ts +6 -31
  455. package/dist/src/core/Select/select.widgets.d.ts +7 -0
  456. package/dist/src/core/SimplePagination/simplePagination.type.d.ts +1 -0
  457. package/dist/src/core/Skeleton/Content.d.ts +8 -0
  458. package/dist/src/core/Skeleton/index.d.ts +8 -0
  459. package/dist/src/core/SmallDialog/SmallDialog.d.ts +3 -0
  460. package/dist/src/core/SmallDialog/SmallDialog.style.d.ts +7 -0
  461. package/dist/src/core/SmallDialog/SmallDialog.type.d.ts +183 -0
  462. package/dist/src/core/SmallDialog/SmallDialog.widget.d.ts +8 -0
  463. package/dist/src/core/SmallDialog/index.d.ts +3 -0
  464. package/dist/src/core/StepProgress/stepProgress.type.d.ts +1 -0
  465. package/dist/src/core/Steps/steps.type.d.ts +1 -0
  466. package/dist/src/core/Styled/index.d.ts +7 -0
  467. package/dist/src/core/Switch/switch.type.d.ts +1 -0
  468. package/dist/src/core/Tab/Tab.d.ts +3 -0
  469. package/dist/src/core/Tab/Tab.style.d.ts +5 -0
  470. package/dist/src/core/Tab/Tab.type.d.ts +46 -0
  471. package/dist/src/core/Tab/index.d.ts +1 -0
  472. package/dist/src/core/Tab/useTabAdaptiveLayout.d.ts +23 -0
  473. package/dist/src/core/Table/table.type.d.ts +166 -7
  474. package/dist/src/core/TableForm/types.d.ts +260 -10
  475. package/dist/src/core/TextArea/textArea.type.d.ts +1 -0
  476. package/dist/src/core/Time/index.d.ts +1 -1
  477. package/dist/src/core/Time/time.type.d.ts +5 -0
  478. package/dist/src/core/TimePicker/index.d.ts +2 -0
  479. package/dist/src/core/TimeZoneSelect/timeZoneSelect.type.d.ts +1 -0
  480. package/dist/src/core/Timeline/Timeline.style.d.ts +5 -0
  481. package/dist/src/core/Timeline/Timeline.type.d.ts +231 -0
  482. package/dist/src/core/Timeline/Timeline.widget.d.ts +5 -0
  483. package/dist/src/core/Timeline/index.d.ts +14 -0
  484. package/dist/src/core/Tooltip/EllipsisTooltipContent.d.ts +4 -0
  485. package/dist/src/core/Tooltip/index.d.ts +7 -1
  486. package/dist/src/core/Tooltip/tooltip.type.d.ts +22 -0
  487. package/dist/src/core/Truncate/index.d.ts +1 -0
  488. package/dist/src/core/Units/units.type.d.ts +76 -0
  489. package/dist/src/core/WizardDialog/index.d.ts +3 -0
  490. package/dist/src/core/WizardDialog/styles.d.ts +4 -0
  491. package/dist/src/core/WizardDialog/type.d.ts +167 -0
  492. package/dist/src/core/__test__/data-testid.test.d.ts +1 -0
  493. package/dist/src/core/index.d.ts +31 -15
  494. package/dist/src/core/message/index.d.ts +4 -52
  495. package/dist/src/core/message/message.d.ts +58 -0
  496. package/dist/src/core/message/useMessage.d.ts +4 -0
  497. package/dist/src/coreX/BarChart/index.d.ts +2 -0
  498. package/dist/src/coreX/CheckPointList/checkpointlist.style.d.ts +3 -0
  499. package/dist/src/coreX/CheckPointList/checkpointlist.type.d.ts +113 -0
  500. package/dist/src/coreX/CheckPointList/index.d.ts +8 -0
  501. package/dist/src/coreX/CircleLoading/index.d.ts +3 -0
  502. package/dist/src/coreX/Copy/CopyButton.d.ts +5 -0
  503. package/dist/src/coreX/Copy/CopyButton.type.d.ts +8 -0
  504. package/dist/src/coreX/Copy/CopyTooltip.d.ts +5 -0
  505. package/dist/src/coreX/Copy/CopyTooltip.typs.d.ts +16 -0
  506. package/dist/src/coreX/Copy/index.d.ts +2 -0
  507. package/dist/src/coreX/DateRangePicker/__tests__/utils.test.d.ts +1 -0
  508. package/dist/src/coreX/DateRangePicker/dateRangePicker.type.d.ts +14 -1
  509. package/dist/src/coreX/DateRangePicker/utils.d.ts +7 -0
  510. package/dist/src/coreX/Dialogs/DeleteDialog/DeleteDialog.d.ts +3 -0
  511. package/dist/src/coreX/Dialogs/DeleteDialog/DeleteDialog.type.d.ts +116 -0
  512. package/dist/src/coreX/Dialogs/DeleteDialog/index.d.ts +2 -0
  513. package/dist/src/coreX/Dialogs/RejectDialog/RejectDialog.d.ts +3 -0
  514. package/dist/src/coreX/Dialogs/RejectDialog/RejectDialog.type.d.ts +181 -0
  515. package/dist/src/coreX/Dialogs/RejectDialog/index.d.ts +2 -0
  516. package/dist/src/coreX/Dialogs/index.d.ts +2 -0
  517. package/dist/src/coreX/InfoRowList/InfoRow.d.ts +7 -0
  518. package/dist/src/coreX/InfoRowList/InfoRowList.d.ts +3 -0
  519. package/dist/src/coreX/InfoRowList/InfoRowList.type.d.ts +63 -0
  520. package/dist/src/coreX/InfoRowList/index.d.ts +1 -0
  521. package/dist/src/coreX/KubeConfigModal/KubeConfigModal.style.d.ts +9 -0
  522. package/dist/src/coreX/KubeConfigModal/KubeConfigModal.type.d.ts +21 -0
  523. package/dist/src/coreX/KubeConfigModal/index.d.ts +4 -0
  524. package/dist/src/coreX/KubeConfigModal/utils.d.ts +2 -0
  525. package/dist/src/coreX/OverflowTooltip/overflowTooltip.type.d.ts +2 -1
  526. package/dist/src/coreX/Show/index.d.ts +3 -0
  527. package/dist/src/coreX/Show/show.type.d.ts +13 -0
  528. package/dist/src/coreX/Sider/Sider.type.d.ts +42 -0
  529. package/dist/src/coreX/Sider/index.d.ts +5 -0
  530. package/dist/src/coreX/SummaryTable/index.d.ts +1 -0
  531. package/dist/src/coreX/UnderlineTootip/index.d.ts +43 -0
  532. package/dist/src/coreX/UnitWithChart/index.d.ts +1 -0
  533. package/dist/src/coreX/index.d.ts +15 -0
  534. package/dist/src/hooks/__tests__/useCTErrorMsg.test.d.ts +1 -0
  535. package/dist/src/hooks/__tests__/useFormatDuration.test.d.ts +1 -0
  536. package/dist/src/hooks/index.d.ts +2 -0
  537. package/dist/src/hooks/useAntdPatchEnLocales.d.ts +431 -0
  538. package/dist/src/hooks/useCTErrorMsg.d.ts +7 -0
  539. package/dist/src/hooks/useFormatDuration.d.ts +31 -0
  540. package/dist/src/hooks/useLegacyComponentWarning.d.ts +2 -0
  541. package/dist/src/spec/base.d.ts +4 -2
  542. package/dist/src/store/modal.d.ts +8 -2
  543. package/dist/src/styles/token/animation.d.ts +6 -0
  544. package/dist/src/styles/token/color.d.ts +24 -0
  545. package/dist/src/utils/__test__/cterror.test.d.ts +1 -0
  546. package/dist/src/utils/__test__/formatDuration.spec.d.ts +1 -0
  547. package/dist/src/utils/__test__/unit.spec.d.ts +1 -0
  548. package/dist/src/utils/constants.d.ts +2 -6
  549. package/dist/src/utils/cterror.d.ts +29 -0
  550. package/dist/src/utils/formatDuration.d.ts +28 -0
  551. package/dist/src/utils/index.d.ts +2 -0
  552. package/dist/src/utils/tower.d.ts +13 -0
  553. package/dist/src/utils/type.d.ts +32 -0
  554. package/dist/src/utils/unit.d.ts +14 -0
  555. package/dist/stories/docs/core/Alert.stories.d.ts +1 -0
  556. package/dist/stories/docs/core/Antd5Tree.stories.d.ts +44 -0
  557. package/dist/stories/docs/core/Arch.stories.d.ts +3 -0
  558. package/dist/stories/docs/core/AutoComplete.stories.d.ts +43 -0
  559. package/dist/stories/docs/core/Banner.stories.d.ts +53 -0
  560. package/dist/stories/docs/core/BasicCTError.stories.d.ts +47 -0
  561. package/dist/stories/docs/core/Bit.stories.d.ts +3 -0
  562. package/dist/stories/docs/core/BitPerSecond.stories.d.ts +3 -0
  563. package/dist/stories/docs/core/BlankState.stories.d.ts +43 -0
  564. package/dist/stories/docs/core/Bps.stories.d.ts +3 -0
  565. package/dist/stories/docs/core/Button.stories.d.ts +11 -0
  566. package/dist/stories/docs/core/Byte.stories.d.ts +3 -0
  567. package/dist/stories/docs/core/BytePerSecond.stories.d.ts +20 -0
  568. package/dist/stories/docs/core/Card.stories.d.ts +1 -0
  569. package/dist/stories/docs/core/Duration.stories.d.ts +88 -0
  570. package/dist/stories/docs/core/EllipsisTooltipContent.stories.d.ts +24 -0
  571. package/dist/stories/docs/core/FieldsBoolean.stories.d.ts +2 -0
  572. package/dist/stories/docs/core/FieldsDateTimeRange.stories.d.ts +1 -0
  573. package/dist/stories/docs/core/FieldsString.stories.d.ts +4 -0
  574. package/dist/stories/docs/core/FieldsTimePicker.stories.d.ts +2 -0
  575. package/dist/stories/docs/core/Frequency.stories.d.ts +3 -0
  576. package/dist/stories/docs/core/ImmersiveDialog.stories.d.ts +180 -0
  577. package/dist/stories/docs/core/Input.simple.stories.d.ts +1 -3
  578. package/dist/stories/docs/core/InputPassword.stories.d.ts +1 -3
  579. package/dist/stories/docs/core/KitStoreProvider.stories.d.ts +1 -1
  580. package/dist/stories/docs/core/LegacyModal.stories.d.ts +23 -0
  581. package/dist/stories/docs/core/{Select.Simple.stories.d.ts → LegacySelect.Simple.stories.d.ts} +3 -3
  582. package/dist/stories/docs/core/LegacySelect.stories.d.ts +16 -0
  583. package/dist/stories/docs/core/Legend.stories.d.ts +19 -0
  584. package/dist/stories/docs/core/LineChart.stories.d.ts +17 -0
  585. package/dist/stories/docs/core/Loading.stories.d.ts +2 -2
  586. package/dist/stories/docs/core/LocalUpload.stories.d.ts +74 -0
  587. package/dist/stories/docs/core/MediumDialog.stories.d.ts +85 -0
  588. package/dist/stories/docs/core/Percent.stories.d.ts +5 -0
  589. package/dist/stories/docs/core/SearchInput.stories.d.ts +52 -14
  590. package/dist/stories/docs/core/Second.stories.d.ts +57 -22
  591. package/dist/stories/docs/core/Select.stories.d.ts +94 -13
  592. package/dist/stories/docs/core/Sider.stories.d.ts +21 -0
  593. package/dist/stories/docs/core/SmallDialog.stories.d.ts +124 -0
  594. package/dist/stories/docs/core/Speed.stories.d.ts +3 -0
  595. package/dist/stories/docs/core/StatusCapsule.stories.d.ts +8 -0
  596. package/dist/stories/docs/core/Tab.stories.d.ts +65 -0
  597. package/dist/stories/docs/core/Table.stories.d.ts +35 -34
  598. package/dist/stories/docs/core/TableForm.stories.d.ts +61 -12
  599. package/dist/stories/docs/core/Timeline.stories.d.ts +41 -0
  600. package/dist/stories/docs/core/Tooltip.stories.d.ts +3 -1
  601. package/dist/stories/docs/core/WizardDialog.stories.d.ts +175 -0
  602. package/dist/stories/docs/core/message-group.stories.d.ts +5 -0
  603. package/dist/stories/docs/core/skeleton.stories.d.ts +13 -0
  604. package/dist/stories/docs/coreX/BarChart.stories.d.ts +1 -0
  605. package/dist/stories/docs/coreX/Calendar.stories.d.ts +11 -0
  606. package/dist/stories/docs/coreX/CheckPointList.stories.d.ts +82 -0
  607. package/dist/stories/docs/coreX/CircleLoading.stories.d.ts +20 -0
  608. package/dist/stories/docs/coreX/Copy/CopyButton.stories.d.ts +66 -0
  609. package/dist/stories/docs/coreX/Copy/CopyTooltip.stories.d.ts +66 -0
  610. package/dist/stories/docs/coreX/DateRangePicker.stories.d.ts +2 -0
  611. package/dist/stories/docs/coreX/Dialogs/DeleteDialog.stories.d.ts +49 -0
  612. package/dist/stories/docs/coreX/Dialogs/RejectDialog.stories.d.ts +103 -0
  613. package/dist/stories/docs/coreX/I18nNameTag.stories.d.ts +8 -0
  614. package/dist/stories/docs/coreX/InfoRowList.stories.d.ts +36 -0
  615. package/dist/stories/docs/coreX/KubeConfigModal.stories.d.ts +83 -0
  616. package/dist/stories/docs/coreX/OverflowTooltip.stories.d.ts +5 -0
  617. package/dist/stories/docs/coreX/Show.stories.d.ts +31 -0
  618. package/dist/stories/docs/coreX/UnserlineTooltip.stories.d.ts +11 -0
  619. package/dist/stories/utils.d.ts +12 -0
  620. package/dist/style.css +6894 -32876
  621. package/dist/token.css +20 -26
  622. package/dist/variables.scss +26 -0
  623. package/docs/core/ImmersiveDialog/guide.md +298 -0
  624. package/docs/core/LegacyModal/migrate-guide.md +422 -0
  625. package/docs/core/MediumDialog/guide.md +263 -0
  626. package/docs/core/SearchInput/guide.md +125 -0
  627. package/docs/core/SmallDialog/guide.md +224 -0
  628. package/docs/core/Table/guide.md +199 -0
  629. package/docs/core/TableForm/guide.md +195 -0
  630. package/docs/core/WizardDialog/guide.md +322 -0
  631. package/docs/coreX/DeleteDialog/guide.md +161 -0
  632. package/docs/coreX/RejectDialog/guide.md +185 -0
  633. package/docs/llms.txt +169 -0
  634. package/package.json +16 -12
  635. package/README.md +0 -64
  636. package/dist/src/core/Modal/index.d.ts +0 -5
  637. package/dist/src/core/Modal/modal.type.d.ts +0 -37
  638. package/dist/stories/docs/core/Modal.stories.d.ts +0 -16
@@ -0,0 +1,422 @@
1
+ # LegacyModal 迁移指南
2
+
3
+ > **给 Coding Agent 的说明:**
4
+ > 1. 阅读本文档了解 LegacyModal 到新 Dialog 组件的完整迁移映射
5
+ > 2. 阅读替代组件的文档(如 `../SmallDialog/guide.md`)了解新 API
6
+ > 3. 如果遇到本文档未覆盖的边界情况,标注为"建议方案,请确认后再执行",等待开发者确认
7
+ > 4. 不要在没有逐个确认的情况下直接执行批量迁移
8
+
9
+ `LegacyModal` 已被标记为 `@deprecated`,将在未来版本中移除。请根据以下指南将其迁移到对应的新 Dialog 组件。
10
+
11
+ ## 选择替代组件
12
+
13
+ | LegacyModal 使用模式 | 替代组件 | 判断条件 |
14
+ |---|---|---|
15
+ | `normal={true}` 或默认模式 | SmallDialog / MediumDialog | 内容较少(如确认提示、简单表单)使用 SmallDialog(默认宽度 492px);内容较多(如复杂表单、详情展示)使用 MediumDialog(默认宽度 720px) |
16
+ | `fullscreen={true}` | ImmersiveDialog | 需要全屏展示的场景,如大表单、数据编辑 |
17
+ | `wizard={...}` | WizardDialog | 多步骤向导流程,如创建向导、配置引导 |
18
+
19
+ ## Props 映射表
20
+
21
+ ### 通用 Props 对照
22
+
23
+ | LegacyModal | SmallDialog / MediumDialog | ImmersiveDialog | WizardDialog | 说明 |
24
+ |---|---|---|---|---|
25
+ | `title` | `title` | `title` | `title` | 标题,用法不变 |
26
+ | `width` | `width` | 不需要(自动全屏) | 不需要(自动全屏) | SmallDialog 默认 492px,MediumDialog 默认 720px |
27
+ | `confirmLoading` | `confirmLoading` | `confirmLoading` | `confirmLoading` | 确认按钮加载状态,用法不变 |
28
+ | `okText` | `okText` | `okText` | `okText` | 确认按钮文案,用法不变 |
29
+ | `cancelText` | `cancelText` | `cancelText` | `cancelText` | 取消按钮文案,用法不变 |
30
+ | `okButtonProps` | `okButtonProps` | `okButtonProps` | `okButtonProps` | 确认按钮属性,用法不变 |
31
+ | `cancelButtonProps` | `cancelButtonProps` | `cancelButtonProps` | `cancelButtonProps` | 取消按钮属性,用法不变 |
32
+ | `showOk` | `showOk` | `showOk` | `showOk` | 是否显示确认按钮,用法不变 |
33
+ | `showCancel` | 无(始终显示) | `showCancel` | `showCancel` | SmallDialog 始终显示取消按钮 |
34
+ | `error` | `error` | `error` | `error` | 错误信息,用法不变 |
35
+ | `maskClosable` | `maskClosable` | 继承 antd Modal | 继承 antd Modal | 新组件默认值有变化,见下方说明 |
36
+ | `className` | `className` | `className` | `className` | 自定义类名,用法不变 |
37
+ | `closable` | `closable` | 继承 antd Modal | 继承 antd Modal | 用法不变 |
38
+ | `closeIcon` | 无(内置样式) | `closeIcon` | `closeIcon` | SmallDialog 内置了关闭图标样式 |
39
+ | `hideFooterButtonBorder` | 无 | 无 | 无 | 新组件已移除此设计,无需迁移 |
40
+ | `normal` | 无 | 无 | 无 | 新组件无需此参数,通过选择不同组件来区分 |
41
+ | `fullscreen` | 无 | 无 | 无 | 新组件无需此参数,使用 ImmersiveDialog 即为全屏 |
42
+
43
+ ### 新增 Props
44
+
45
+ | Props | 可用组件 | 说明 |
46
+ |---|---|---|
47
+ | `hideFooter` | SmallDialog / MediumDialog / ImmersiveDialog | 是否隐藏底部按钮区域 |
48
+ | `showFooterErrorIcon` | SmallDialog / MediumDialog / ImmersiveDialog | 是否显示错误图标(默认 true) |
49
+ | `initializing` | SmallDialog / MediumDialog / ImmersiveDialog | 初始化加载状态,显示骨架屏 |
50
+ | `initializingError` | SmallDialog / MediumDialog / ImmersiveDialog | 初始化错误内容 |
51
+ | `initializingSkeletonRows` | SmallDialog / MediumDialog | 初始化骨架屏行数 |
52
+ | `isContentFull` | MediumDialog / ImmersiveDialog | 内容是否占满视窗 |
53
+ | `footerLeftAction` | ImmersiveDialog / WizardDialog | 底部左侧操作区域 |
54
+ | `left` / `right` | ImmersiveDialog / WizardDialog | 左侧/右侧自定义内容 |
55
+ | `TitleRender` | SmallDialog / MediumDialog | 自定义标题渲染组件 |
56
+ | `footerClassName` | SmallDialog / MediumDialog | 自定义 footer 类名 |
57
+
58
+ ## 回调签名变化
59
+
60
+ 这是迁移中最关键的变化。新 Dialog 组件的 `onOk` 和 `onCancel` 签名与 LegacyModal 不同:
61
+
62
+ ### LegacyModal(旧)
63
+
64
+ ```typescript
65
+ // onOk 和 onCancel 都接收 MouseEvent,弹窗关闭由内部 redux 状态控制
66
+ onOk?: (e: React.MouseEvent<HTMLElement>) => void;
67
+ onCancel?: (e: React.MouseEvent<HTMLElement>) => void;
68
+ ```
69
+
70
+ ### SmallDialog / MediumDialog(新)
71
+
72
+ ```typescript
73
+ // onOk 和 onCancel 都接收 popModal 函数作为参数
74
+ // 调用 popModal() 关闭弹窗,不调用则弹窗保持打开
75
+ onOk?: (popModal: () => void) => void;
76
+ onCancel?: (popModal: () => void) => void;
77
+ ```
78
+
79
+ SmallDialog / MediumDialog 内部已调用 `usePopModal()`,并将 `popModal` 作为参数传递给回调。这意味着:
80
+
81
+ - 如果不传 `onOk`,点击确认按钮会自动关闭弹窗
82
+ - 如果不传 `onCancel`,点击取消按钮或关闭图标会自动关闭弹窗
83
+ - 如果传了回调,需要在合适的时机手动调用 `popModal()` 来关闭弹窗
84
+
85
+ ### ImmersiveDialog / WizardDialog(新)
86
+
87
+ ```typescript
88
+ // onOk 接收 MouseEvent,需要手动使用 usePopModal() 关闭弹窗
89
+ onOk?: (e: React.MouseEvent<HTMLElement>) => void;
90
+ // onCancel 接收 MouseEvent,组件内部会自动调用 popModal() 关闭
91
+ onCancel?: (e: React.MouseEvent<HTMLElement>) => void;
92
+ ```
93
+
94
+ ImmersiveDialog / WizardDialog 内部也调用了 `usePopModal()`,但行为不同:
95
+
96
+ - 点击取消按钮或关闭图标时,组件内部会先调用 `popModal()` 再触发 `onCancel`
97
+ - 点击确认按钮时,组件内部不会自动关闭弹窗,需要在 `onOk` 中使用 `usePopModal()` 手动关闭
98
+
99
+ ## 迁移前后代码对比
100
+
101
+ ### 场景一:普通弹窗
102
+
103
+ 迁移前(LegacyModal):
104
+
105
+ ```tsx
106
+ import { LegacyModal } from "@cloudtower/eagle";
107
+ import { usePushModal } from "@cloudtower/eagle";
108
+
109
+ function MyPage() {
110
+ const pushModal = usePushModal();
111
+
112
+ const handleOpen = () => {
113
+ pushModal({
114
+ component: () => (
115
+ <LegacyModal
116
+ title="确认删除"
117
+ normal={true}
118
+ onOk={(e) => {
119
+ // 执行删除操作
120
+ deleteItem();
121
+ }}
122
+ onCancel={(e) => {
123
+ // LegacyModal 通过内部 redux 状态控制关闭
124
+ }}
125
+ >
126
+ <p>确定要删除此项吗?</p>
127
+ </LegacyModal>
128
+ ),
129
+ props: {},
130
+ });
131
+ };
132
+
133
+ return <button onClick={handleOpen}>删除</button>;
134
+ }
135
+ ```
136
+
137
+ 迁移后(SmallDialog):
138
+
139
+ ```tsx
140
+ import { SmallDialog } from "@cloudtower/eagle";
141
+ import { usePushModal } from "@cloudtower/eagle";
142
+
143
+ function MyPage() {
144
+ const pushModal = usePushModal();
145
+
146
+ const handleOpen = () => {
147
+ pushModal({
148
+ component: () => (
149
+ <SmallDialog
150
+ title="确认删除"
151
+ onOk={(popModal) => {
152
+ // 执行删除操作
153
+ deleteItem();
154
+ // 手动调用 popModal 关闭弹窗
155
+ popModal();
156
+ }}
157
+ // 不传 onCancel,点击取消时自动关闭
158
+ >
159
+ <p>确定要删除此项吗?</p>
160
+ </SmallDialog>
161
+ ),
162
+ props: {},
163
+ });
164
+ };
165
+
166
+ return <button onClick={handleOpen}>删除</button>;
167
+ }
168
+ ```
169
+
170
+ ### 场景二:全屏弹窗
171
+
172
+ 迁移前(LegacyModal fullscreen):
173
+
174
+ ```tsx
175
+ import { LegacyModal } from "@cloudtower/eagle";
176
+ import { usePushModal } from "@cloudtower/eagle";
177
+
178
+ function MyPage() {
179
+ const pushModal = usePushModal();
180
+
181
+ const handleOpen = () => {
182
+ pushModal({
183
+ component: () => (
184
+ <LegacyModal
185
+ title="编辑配置"
186
+ fullscreen={true}
187
+ confirmLoading={loading}
188
+ onOk={(e) => {
189
+ saveConfig();
190
+ }}
191
+ onCancel={(e) => {
192
+ // 关闭
193
+ }}
194
+ >
195
+ <ConfigForm />
196
+ </LegacyModal>
197
+ ),
198
+ props: {},
199
+ });
200
+ };
201
+
202
+ return <button onClick={handleOpen}>编辑</button>;
203
+ }
204
+ ```
205
+
206
+ 迁移后(ImmersiveDialog):
207
+
208
+ ```tsx
209
+ import { ImmersiveDialog } from "@cloudtower/eagle";
210
+ import { usePushModal, usePopModal } from "@cloudtower/eagle";
211
+
212
+ function ConfigDialog() {
213
+ const popModal = usePopModal();
214
+
215
+ return (
216
+ <ImmersiveDialog
217
+ title="编辑配置"
218
+ confirmLoading={loading}
219
+ onOk={(e) => {
220
+ saveConfig().then(() => {
221
+ // ImmersiveDialog 的 onOk 不会自动关闭弹窗
222
+ // 需要手动调用 popModal()
223
+ popModal();
224
+ });
225
+ }}
226
+ // onCancel 不需要手动关闭,组件内部会自动调用 popModal()
227
+ >
228
+ <ConfigForm />
229
+ </ImmersiveDialog>
230
+ );
231
+ }
232
+
233
+ function MyPage() {
234
+ const pushModal = usePushModal();
235
+
236
+ const handleOpen = () => {
237
+ pushModal({
238
+ component: () => <ConfigDialog />,
239
+ props: {},
240
+ });
241
+ };
242
+
243
+ return <button onClick={handleOpen}>编辑</button>;
244
+ }
245
+ ```
246
+
247
+ ### 场景三:向导弹窗
248
+
249
+ 迁移前(LegacyModal wizard):
250
+
251
+ ```tsx
252
+ import { LegacyModal } from "@cloudtower/eagle";
253
+ import { usePushModal } from "@cloudtower/eagle";
254
+
255
+ function MyPage() {
256
+ const pushModal = usePushModal();
257
+ const [step, setStep] = useState(0);
258
+
259
+ const handleOpen = () => {
260
+ pushModal({
261
+ component: () => (
262
+ <LegacyModal
263
+ title="创建虚拟机"
264
+ fullscreen={true}
265
+ wizard={{
266
+ step: step,
267
+ onStepChange: (s) => setStep(s),
268
+ steps: [
269
+ {
270
+ title: "基本信息",
271
+ render: <BasicInfoStep />,
272
+ onOk: (e) => {
273
+ // 校验后进入下一步
274
+ },
275
+ },
276
+ {
277
+ title: "网络配置",
278
+ render: <NetworkStep />,
279
+ onOk: (e) => {
280
+ // 提交创建
281
+ createVM();
282
+ },
283
+ },
284
+ ],
285
+ }}
286
+ >
287
+ {/* 公共内容 */}
288
+ </LegacyModal>
289
+ ),
290
+ props: {},
291
+ });
292
+ };
293
+
294
+ return <button onClick={handleOpen}>创建</button>;
295
+ }
296
+ ```
297
+
298
+ 迁移后(WizardDialog):
299
+
300
+ ```tsx
301
+ import { WizardDialog } from "@cloudtower/eagle";
302
+ import { usePushModal, usePopModal } from "@cloudtower/eagle";
303
+
304
+ function CreateVMDialog() {
305
+ const popModal = usePopModal();
306
+
307
+ return (
308
+ <WizardDialog
309
+ title="创建虚拟机"
310
+ steps={[
311
+ {
312
+ title: "基本信息",
313
+ children: <BasicInfoStep />,
314
+ },
315
+ {
316
+ title: "网络配置",
317
+ children: <NetworkStep />,
318
+ },
319
+ ]}
320
+ onNextStep={(step) => {
321
+ // 返回 false 可阻止进入下一步(用于校验)
322
+ if (!validate()) return false;
323
+ }}
324
+ onStepChange={(step) => {
325
+ // 步骤变化回调
326
+ }}
327
+ onOk={(e) => {
328
+ // 最后一步点击确认时触发
329
+ createVM().then(() => {
330
+ popModal();
331
+ });
332
+ }}
333
+ >
334
+ {/* 公共内容(可选) */}
335
+ </WizardDialog>
336
+ );
337
+ }
338
+
339
+ function MyPage() {
340
+ const pushModal = usePushModal();
341
+
342
+ const handleOpen = () => {
343
+ pushModal({
344
+ component: () => <CreateVMDialog />,
345
+ props: {},
346
+ });
347
+ };
348
+
349
+ return <button onClick={handleOpen}>创建</button>;
350
+ }
351
+ ```
352
+
353
+ ## 关键差异说明
354
+
355
+ ### 1. 向导步骤配置
356
+
357
+ | 对比项 | LegacyModal wizard | WizardDialog |
358
+ |---|---|---|
359
+ | 步骤内容字段 | `render: React.ReactNode` | `children: React.ReactNode` |
360
+ | 步骤级别的 onOk | 支持(每个 step 可配 `onOk`) | 不支持(统一使用顶层 `onOk`) |
361
+ | 步骤级别的 onPrev | 支持(每个 step 可配 `onPrev`) | 不支持(统一使用 `onPrevStep`) |
362
+ | 步骤级别的 okText | 支持(每个 step 可配 `okText`) | 不支持(统一使用 `nextText` / `okText`) |
363
+ | 步骤级别的 disabled | 支持 | 不支持 |
364
+ | 步骤管理 | 需要外部维护 `step` 状态 | 内部管理(也可通过 `step` prop 受控) |
365
+ | 阻止下一步 | 不支持 | `onNextStep` 返回 `false` 可阻止 |
366
+ | 隐藏左侧步骤 | `hideLeft` | `hideSteps` |
367
+ | 禁用上一步 | `disablePrevStep` | 无(由 `onPrevStep` 自行控制) |
368
+
369
+ ### 2. maskClosable 默认值
370
+
371
+ | 组件 | 默认值 |
372
+ |---|---|
373
+ | LegacyModal | `false` |
374
+ | SmallDialog | `true` |
375
+ | MediumDialog | `true` |
376
+ | ImmersiveDialog | 继承 antd Modal 默认值 |
377
+ | WizardDialog | 继承 antd Modal 默认值 |
378
+
379
+ 如果你的业务场景要求点击遮罩层不关闭弹窗,需要显式设置 `maskClosable={false}`。
380
+
381
+ ### 3. 弹窗关闭机制
382
+
383
+ LegacyModal 通过内部 redux 状态(`closeId`)控制关闭动画和移除,开发者只需在回调中执行业务逻辑。
384
+
385
+ 新 Dialog 组件的关闭行为:
386
+
387
+ - **SmallDialog / MediumDialog**:`onOk` 和 `onCancel` 接收 `popModal` 参数,开发者决定何时关闭
388
+ - **ImmersiveDialog / WizardDialog**:取消操作自动关闭,确认操作需通过 `usePopModal()` 手动关闭
389
+
390
+ ## 迁移步骤
391
+
392
+ 1. **确定 LegacyModal 使用模式** -- 检查是否使用了 `fullscreen`、`wizard` 等 prop,对照上方表格选择替代组件
393
+
394
+ 2. **替换 import**
395
+ ```tsx
396
+ // 迁移前
397
+ import { LegacyModal } from "@cloudtower/eagle";
398
+ // 迁移后(根据场景选择)
399
+ import { SmallDialog } from "@cloudtower/eagle";
400
+ import { MediumDialog } from "@cloudtower/eagle";
401
+ import { ImmersiveDialog } from "@cloudtower/eagle";
402
+ import { WizardDialog } from "@cloudtower/eagle";
403
+ ```
404
+
405
+ 3. **调整 Props** -- 对照 Props 映射表,移除不再支持的 prop(`normal`、`fullscreen`、`hideFooterButtonBorder`),添加必要的新 prop
406
+
407
+ 4. **改写 onOk / onCancel 回调**
408
+ - 如果迁移到 SmallDialog / MediumDialog:将回调签名从 `(e) => {}` 改为 `(popModal) => {}`,在需要关闭弹窗时调用 `popModal()`
409
+ - 如果迁移到 ImmersiveDialog / WizardDialog:在组件内部使用 `usePopModal()` 获取 `popModal`,在 `onOk` 中手动调用关闭。注意,对于 ImmersiveDialog / WizardDialog,需要将弹窗内容抽取为独立组件以便使用 hook
410
+
411
+ 5. **处理向导模式迁移**(仅 wizard 场景)
412
+ - 将 `wizard.steps[].render` 改为 `steps[].children`
413
+ - 移除步骤级别的 `onOk`、`onPrev`、`okText`,统一使用顶层回调
414
+ - 利用 `onNextStep` 返回 `false` 的机制替代步骤级别的校验逻辑
415
+ - 如果之前依赖外部 `step` 状态,可以改为让 WizardDialog 内部管理,通过 `onStepChange` 监听变化
416
+
417
+ 6. **运行类型检查**
418
+ ```bash
419
+ cd packages/eagle && yarn typings
420
+ ```
421
+
422
+ 7. **手动验证功能** -- 检查弹窗的打开、关闭、确认、取消、遮罩层点击等行为是否符合预期
@@ -0,0 +1,263 @@
1
+ # MediumDialog
2
+
3
+ ## 简介
4
+
5
+ MediumDialog 是一个固定 720px 宽度的中型对话框组件,继承 SmallDialog 的全部功能,在此基础上提供更大的显示区域(720px 宽度、60px 水平内边距)和更突出的标题排版(d1s_bold_title)。适用于包含表单输入、内容较多的确认等场景。通过 `isContentFull` 属性可开启全屏模式,使弹窗尺寸变为 `width: calc(100vw - 160px)`、`height: calc(100vh - 80px)`,适合需要大面积展示内容的场景。
6
+
7
+ ## 何时使用
8
+
9
+ - 包含表单输入的弹窗(如编辑虚拟机配置、创建网络策略)
10
+ - 内容较多的确认弹窗,492px 宽度不够展示时
11
+ - 需要大面积展示内容(如表格、拓扑图)的场景,配合 `isContentFull` 使用
12
+
13
+ 不要使用:
14
+
15
+ - 简单确认或信息提示 --> 请用 `SmallDialog`
16
+ - 多步骤向导流程 --> 请用 `WizardDialog`
17
+ - 全屏沉浸式操作 --> 请用 `ImmersiveDialog`
18
+ - 删除确认场景 --> 请用 `DeleteDialog`(已封装删除确认样式和交互)
19
+ - 操作被拒绝 / 不可执行的反馈 --> 请用 `RejectDialog`(支持 Single / All / Part / Custom 四种模式)
20
+
21
+ ## 基础用法
22
+
23
+ ```tsx
24
+ import React from "react";
25
+ import { MediumDialog, Button, KitStoreProvider, ModalStack } from "@cloudtower/eagle";
26
+ import { usePushModal } from "@cloudtower/eagle";
27
+
28
+ const App = () => {
29
+ const pushModal = usePushModal();
30
+
31
+ const openDialog = () => {
32
+ pushModal({
33
+ component: () => (
34
+ <MediumDialog
35
+ title="编辑虚拟机"
36
+ onOk={(popModal) => {
37
+ console.log("保存配置");
38
+ popModal();
39
+ }}
40
+ onCancel={(popModal) => {
41
+ popModal();
42
+ }}
43
+ >
44
+ <form>
45
+ <label>虚拟机名称</label>
46
+ <input defaultValue="vm-prod-01" />
47
+ <label>CPU (核)</label>
48
+ <input type="number" defaultValue={4} />
49
+ <label>内存 (GB)</label>
50
+ <input type="number" defaultValue={8} />
51
+ </form>
52
+ </MediumDialog>
53
+ ),
54
+ props: {},
55
+ });
56
+ };
57
+
58
+ return (
59
+ <Button type="primary" onClick={openDialog}>
60
+ 编辑虚拟机
61
+ </Button>
62
+ );
63
+ };
64
+ ```
65
+
66
+ ## 常见模式
67
+
68
+ ### 模式一:表单提交弹窗
69
+
70
+ 适用于在弹窗中包含表单输入的场景。通过 `confirmLoading` 控制提交按钮加载状态,提交成功后再关闭弹窗。
71
+
72
+ ```tsx
73
+ import React, { useState } from "react";
74
+ import { MediumDialog, Button } from "@cloudtower/eagle";
75
+ import { usePushModal } from "@cloudtower/eagle";
76
+
77
+ const EditVmDialog: React.FC = () => {
78
+ const [loading, setLoading] = useState(false);
79
+ const [error, setError] = useState<string>();
80
+
81
+ return (
82
+ <MediumDialog
83
+ title="编辑虚拟机"
84
+ confirmLoading={loading}
85
+ error={error}
86
+ onOk={async (popModal) => {
87
+ setLoading(true);
88
+ setError(undefined);
89
+ try {
90
+ await saveVmConfig({ name: "vm-prod-01", cpu: 4, memory: 8 });
91
+ popModal();
92
+ } catch (e) {
93
+ setError("保存配置失败,请重试");
94
+ } finally {
95
+ setLoading(false);
96
+ }
97
+ }}
98
+ >
99
+ <form>
100
+ <label>虚拟机名称</label>
101
+ <input defaultValue="vm-prod-01" />
102
+ <label>CPU (核)</label>
103
+ <input type="number" defaultValue={4} />
104
+ <label>内存 (GB)</label>
105
+ <input type="number" defaultValue={8} />
106
+ </form>
107
+ </MediumDialog>
108
+ );
109
+ };
110
+
111
+ // 使用方式
112
+ const App = () => {
113
+ const pushModal = usePushModal();
114
+
115
+ return (
116
+ <Button
117
+ type="primary"
118
+ onClick={() =>
119
+ pushModal({ component: () => <EditVmDialog />, props: {} })
120
+ }
121
+ >
122
+ 编辑虚拟机
123
+ </Button>
124
+ );
125
+ };
126
+ ```
127
+
128
+ ### 模式二:数据展示弹窗
129
+
130
+ 适用于在弹窗中展示较多详情信息的场景。利用 `initializing`、`initializingError` 控制加载状态,加载完成后展示数据。
131
+
132
+ ```tsx
133
+ import React, { useEffect, useMemo, useState } from "react";
134
+ import { MediumDialog, Button } from "@cloudtower/eagle";
135
+ import type { MediumDialogProps } from "@cloudtower/eagle";
136
+ import { usePushModal } from "@cloudtower/eagle";
137
+
138
+ const VmDetailDialog: React.FC = () => {
139
+ const [loading, setLoading] = useState(true);
140
+ const [error, setError] = useState<string>();
141
+ const [data, setData] = useState<{
142
+ name: string;
143
+ cpu: number;
144
+ memory: number;
145
+ disks: string[];
146
+ nics: string[];
147
+ }>();
148
+
149
+ const fetchData = async () => {
150
+ setLoading(true);
151
+ setError(undefined);
152
+ try {
153
+ const result = await fetchVmDetail("vm-prod-01");
154
+ setData(result);
155
+ } catch (e) {
156
+ setError("加载虚拟机详情失败");
157
+ } finally {
158
+ setLoading(false);
159
+ }
160
+ };
161
+
162
+ useEffect(() => {
163
+ fetchData();
164
+ }, []);
165
+
166
+ const modalProps: Partial<MediumDialogProps> = useMemo(() => {
167
+ if (loading) {
168
+ return { title: "", initializing: true, initializingSkeletonRows: 5 };
169
+ }
170
+ if (error) {
171
+ return { title: "", initializingError: error, onOk: fetchData };
172
+ }
173
+ return { title: `虚拟机详情 - ${data?.name}` };
174
+ }, [loading, error, data]);
175
+
176
+ return (
177
+ <MediumDialog showOk={false} cancelText="关闭" {...modalProps}>
178
+ <p>虚拟机名称:{data?.name}</p>
179
+ <p>CPU:{data?.cpu} 核</p>
180
+ <p>内存:{data?.memory} GB</p>
181
+ <p>磁盘:{data?.disks?.join(", ")}</p>
182
+ <p>网卡:{data?.nics?.join(", ")}</p>
183
+ </MediumDialog>
184
+ );
185
+ };
186
+
187
+ // 使用方式
188
+ const App = () => {
189
+ const pushModal = usePushModal();
190
+
191
+ return (
192
+ <Button
193
+ onClick={() =>
194
+ pushModal({ component: () => <VmDetailDialog />, props: {} })
195
+ }
196
+ >
197
+ 查看虚拟机详情
198
+ </Button>
199
+ );
200
+ };
201
+ ```
202
+
203
+ ### 模式三:全屏内容弹窗(isContentFull)
204
+
205
+ 适用于需要大面积展示内容(如表格、拓扑图、日志)的场景。开启 `isContentFull` 后弹窗尺寸变为 `width: calc(100vw - 160px)`、`height: calc(100vh - 80px)`,内容区域自动 flex 填充剩余高度。
206
+
207
+ ```tsx
208
+ import React from "react";
209
+ import { MediumDialog, Button } from "@cloudtower/eagle";
210
+ import { usePushModal } from "@cloudtower/eagle";
211
+
212
+ const App = () => {
213
+ const pushModal = usePushModal();
214
+
215
+ return (
216
+ <Button
217
+ onClick={() =>
218
+ pushModal({
219
+ component: () => (
220
+ <MediumDialog
221
+ title="虚拟机任务日志"
222
+ isContentFull
223
+ showOk={false}
224
+ cancelText="关闭"
225
+ >
226
+ <div style={{ flex: 1, overflow: "auto" }}>
227
+ <pre>
228
+ {`[2024-01-15 10:00:01] 开始迁移虚拟机 vm-prod-01
229
+ [2024-01-15 10:00:05] 正在同步内存页...
230
+ [2024-01-15 10:01:30] 内存同步完成,开始切换
231
+ [2024-01-15 10:01:32] 迁移完成,虚拟机已在目标主机上运行`}
232
+ </pre>
233
+ </div>
234
+ </MediumDialog>
235
+ ),
236
+ props: {},
237
+ })
238
+ }
239
+ >
240
+ 查看任务日志
241
+ </Button>
242
+ );
243
+ };
244
+ ```
245
+
246
+ ## 与 SmallDialog 的差异对比
247
+
248
+ | 特性 | SmallDialog | MediumDialog |
249
+ |------|-------------|--------------|
250
+ | 默认宽度 | 492px | 720px |
251
+ | 水平内边距 | 40px | 60px |
252
+ | 标题排版 | `d2_bold_title` | `d1s_bold_title` |
253
+ | 骨架屏默认行数 | 2 | 3 |
254
+ | 全屏模式 | 不支持 | 支持(`isContentFull`) |
255
+ | 适用场景 | 简单确认、信息提示 | 表单弹窗、内容较多的确认 |
256
+
257
+ ## 相关组件
258
+
259
+ - `SmallDialog` -- 小尺寸对话框(492px),适用于简单确认和信息提示
260
+ - `ImmersiveDialog` -- 全屏沉浸式对话框,适用于需要大量操作空间的场景
261
+ - `WizardDialog` -- 向导式对话框,适用于多步骤流程
262
+ - `DeleteDialog` -- 删除确认对话框,封装了删除场景的标准样式和交互(位于 `@cloudtower/eagle` 的 coreX 模块)
263
+ - `RejectDialog` -- 操作拒绝反馈对话框,支持 Single(单条拒绝)、All(全部拒绝)、Part(部分拒绝)、Custom(自定义内容)四种模式(位于 `@cloudtower/eagle` 的 coreX 模块)