amis 2.0.0-rc.9 → 2.0.2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (542) hide show
  1. package/esm/Schema.d.ts +442 -0
  2. package/esm/compat.d.ts +1 -0
  3. package/esm/compat.js +459 -0
  4. package/esm/index.d.ts +146 -0
  5. package/esm/index.js +144 -0
  6. package/esm/preset.d.ts +1 -0
  7. package/esm/preset.js +40 -0
  8. package/esm/renderers/Action.d.ts +393 -0
  9. package/esm/renderers/Action.js +443 -0
  10. package/esm/renderers/Alert.d.ts +49 -0
  11. package/esm/renderers/Alert.js +35 -0
  12. package/esm/renderers/AnchorNav.d.ts +69 -0
  13. package/esm/renderers/AnchorNav.js +97 -0
  14. package/esm/renderers/App.d.ts +133 -0
  15. package/esm/renderers/App.js +214 -0
  16. package/esm/renderers/Audio.d.ts +88 -0
  17. package/esm/renderers/Audio.js +382 -0
  18. package/esm/renderers/Avatar.d.ts +75 -0
  19. package/esm/renderers/Avatar.js +54 -0
  20. package/esm/renderers/BarCode.d.ts +35 -0
  21. package/esm/renderers/BarCode.js +38 -0
  22. package/esm/renderers/Breadcrumb.d.ts +89 -0
  23. package/esm/renderers/Breadcrumb.js +58 -0
  24. package/esm/renderers/ButtonGroup.d.ts +64 -0
  25. package/esm/renderers/ButtonGroup.js +22 -0
  26. package/esm/renderers/CRUD.d.ts +302 -0
  27. package/esm/renderers/CRUD.js +1244 -0
  28. package/esm/renderers/CRUD2.d.ts +215 -0
  29. package/esm/renderers/CRUD2.js +748 -0
  30. package/esm/renderers/Calendar.d.ts +45 -0
  31. package/esm/renderers/Calendar.js +22 -0
  32. package/esm/renderers/Card.d.ts +236 -0
  33. package/esm/renderers/Card.js +376 -0
  34. package/esm/renderers/Card2.d.ts +77 -0
  35. package/esm/renderers/Card2.js +83 -0
  36. package/esm/renderers/Cards.d.ts +170 -0
  37. package/esm/renderers/Cards.js +555 -0
  38. package/esm/renderers/Carousel.d.ts +103 -0
  39. package/esm/renderers/Carousel.js +329 -0
  40. package/esm/renderers/Chart.d.ts +116 -0
  41. package/esm/renderers/Chart.js +352 -0
  42. package/esm/renderers/Code.d.ts +84 -0
  43. package/esm/renderers/Code.js +130 -0
  44. package/esm/renderers/Collapse.d.ts +83 -0
  45. package/esm/renderers/Collapse.js +47 -0
  46. package/esm/renderers/CollapseGroup.d.ts +42 -0
  47. package/esm/renderers/CollapseGroup.js +35 -0
  48. package/esm/renderers/Color.d.ts +36 -0
  49. package/esm/renderers/Color.js +42 -0
  50. package/esm/renderers/Container.d.ts +44 -0
  51. package/esm/renderers/Container.js +49 -0
  52. package/esm/renderers/Copyable.d.ts +25 -0
  53. package/esm/renderers/Copyable.js +49 -0
  54. package/esm/renderers/Custom.d.ts +51 -0
  55. package/esm/renderers/Custom.js +163 -0
  56. package/esm/renderers/Date.d.ts +58 -0
  57. package/esm/renderers/Date.js +121 -0
  58. package/esm/renderers/Dialog.d.ts +1357 -0
  59. package/esm/renderers/Dialog.js +633 -0
  60. package/esm/renderers/Divider.d.ts +20 -0
  61. package/esm/renderers/Divider.js +38 -0
  62. package/esm/renderers/Drawer.d.ts +153 -0
  63. package/esm/renderers/Drawer.js +608 -0
  64. package/esm/renderers/DropDownButton.d.ts +114 -0
  65. package/esm/renderers/DropDownButton.js +153 -0
  66. package/esm/renderers/Each.d.ts +38 -0
  67. package/esm/renderers/Each.js +59 -0
  68. package/esm/renderers/Flex.d.ts +77 -0
  69. package/esm/renderers/Flex.js +84 -0
  70. package/esm/renderers/Form/ButtonGroupSelect.d.ts +26 -0
  71. package/esm/renderers/Form/ButtonGroupSelect.js +114 -0
  72. package/esm/renderers/Form/ButtonToolbar.d.ts +28 -0
  73. package/esm/renderers/Form/ButtonToolbar.js +50 -0
  74. package/esm/renderers/Form/ChainedSelect.d.ts +36 -0
  75. package/esm/renderers/Form/ChainedSelect.js +218 -0
  76. package/esm/renderers/Form/ChartRadios.d.ts +34 -0
  77. package/esm/renderers/Form/ChartRadios.js +121 -0
  78. package/esm/renderers/Form/Checkbox.d.ts +47 -0
  79. package/esm/renderers/Form/Checkbox.js +83 -0
  80. package/esm/renderers/Form/Checkboxes.d.ts +65 -0
  81. package/esm/renderers/Form/Checkboxes.js +227 -0
  82. package/esm/renderers/Form/Combo.d.ts +253 -0
  83. package/esm/renderers/Form/Combo.js +856 -0
  84. package/esm/renderers/Form/ConditionBuilder.d.ts +56 -0
  85. package/esm/renderers/Form/ConditionBuilder.js +69 -0
  86. package/esm/renderers/Form/Control.d.ts +18 -0
  87. package/esm/renderers/Form/Control.js +38 -0
  88. package/esm/renderers/Form/DiffEditor.d.ts +3925 -0
  89. package/esm/renderers/Form/DiffEditor.js +199 -0
  90. package/esm/renderers/Form/Editor.d.ts +3856 -0
  91. package/esm/renderers/Form/Editor.js +247 -0
  92. package/esm/renderers/Form/FieldSet.d.ts +70 -0
  93. package/esm/renderers/Form/FieldSet.js +59 -0
  94. package/esm/renderers/Form/Formula.d.ts +53 -0
  95. package/esm/renderers/Form/Formula.js +128 -0
  96. package/esm/renderers/Form/Group.d.ts +57 -0
  97. package/esm/renderers/Form/Group.js +99 -0
  98. package/esm/renderers/Form/Hidden.d.ts +15 -0
  99. package/esm/renderers/Form/Hidden.js +35 -0
  100. package/esm/renderers/Form/IconPicker.d.ts +49 -0
  101. package/esm/renderers/Form/IconPicker.js +305 -0
  102. package/esm/renderers/Form/IconPickerIcons.d.ts +8 -0
  103. package/esm/renderers/Form/IconPickerIcons.js +26 -0
  104. package/esm/renderers/Form/InputArray.d.ts +31 -0
  105. package/esm/renderers/Form/InputArray.js +45 -0
  106. package/esm/renderers/Form/InputCity.d.ts +654 -0
  107. package/esm/renderers/Form/InputCity.js +347 -0
  108. package/esm/renderers/Form/InputColor.d.ts +504 -0
  109. package/esm/renderers/Form/InputColor.js +52 -0
  110. package/esm/renderers/Form/InputDate.d.ts +359 -0
  111. package/esm/renderers/Form/InputDate.js +258 -0
  112. package/esm/renderers/Form/InputDateRange.d.ts +121 -0
  113. package/esm/renderers/Form/InputDateRange.js +166 -0
  114. package/esm/renderers/Form/InputExcel.d.ts +52 -0
  115. package/esm/renderers/Form/InputExcel.js +200 -0
  116. package/esm/renderers/Form/InputFile.d.ts +257 -0
  117. package/esm/renderers/Form/InputFile.js +939 -0
  118. package/esm/renderers/Form/InputFormula.d.ts +91 -0
  119. package/esm/renderers/Form/InputFormula.js +67 -0
  120. package/esm/renderers/Form/InputGroup.d.ts +33 -0
  121. package/esm/renderers/Form/InputGroup.js +111 -0
  122. package/esm/renderers/Form/InputImage.d.ts +315 -0
  123. package/esm/renderers/Form/InputImage.js +908 -0
  124. package/esm/renderers/Form/InputMonthRange.d.ts +22 -0
  125. package/esm/renderers/Form/InputMonthRange.js +46 -0
  126. package/esm/renderers/Form/InputNumber.d.ts +128 -0
  127. package/esm/renderers/Form/InputNumber.js +210 -0
  128. package/esm/renderers/Form/InputQuarterRange.d.ts +22 -0
  129. package/esm/renderers/Form/InputQuarterRange.js +46 -0
  130. package/esm/renderers/Form/InputRange.d.ts +271 -0
  131. package/esm/renderers/Form/InputRange.js +388 -0
  132. package/esm/renderers/Form/InputRating.d.ts +74 -0
  133. package/esm/renderers/Form/InputRating.js +82 -0
  134. package/esm/renderers/Form/InputRepeat.d.ts +35 -0
  135. package/esm/renderers/Form/InputRepeat.js +115 -0
  136. package/esm/renderers/Form/InputRichText.d.ts +56 -0
  137. package/esm/renderers/Form/InputRichText.js +177 -0
  138. package/esm/renderers/Form/InputSubForm.d.ts +123 -0
  139. package/esm/renderers/Form/InputSubForm.js +269 -0
  140. package/esm/renderers/Form/InputTable.d.ts +180 -0
  141. package/esm/renderers/Form/InputTable.js +681 -0
  142. package/esm/renderers/Form/InputTag.d.ts +108 -0
  143. package/esm/renderers/Form/InputTag.js +439 -0
  144. package/esm/renderers/Form/InputText.d.ts +141 -0
  145. package/esm/renderers/Form/InputText.js +636 -0
  146. package/esm/renderers/Form/InputTree.d.ts +86 -0
  147. package/esm/renderers/Form/InputTree.js +108 -0
  148. package/esm/renderers/Form/InputYearRange.d.ts +22 -0
  149. package/esm/renderers/Form/InputYearRange.js +46 -0
  150. package/esm/renderers/Form/JSONSchema.d.ts +24 -0
  151. package/esm/renderers/Form/JSONSchema.js +45 -0
  152. package/esm/renderers/Form/JSONSchemaEditor.d.ts +64 -0
  153. package/esm/renderers/Form/JSONSchemaEditor.js +57 -0
  154. package/esm/renderers/Form/ListSelect.d.ts +45 -0
  155. package/esm/renderers/Form/ListSelect.js +89 -0
  156. package/esm/renderers/Form/LocationPicker.d.ts +35 -0
  157. package/esm/renderers/Form/LocationPicker.js +39 -0
  158. package/esm/renderers/Form/MatrixCheckboxes.d.ts +79 -0
  159. package/esm/renderers/Form/MatrixCheckboxes.js +266 -0
  160. package/esm/renderers/Form/NestedSelect.d.ts +91 -0
  161. package/esm/renderers/Form/NestedSelect.js +703 -0
  162. package/esm/renderers/Form/Picker.d.ts +86 -0
  163. package/esm/renderers/Form/Picker.js +361 -0
  164. package/esm/renderers/Form/Radios.d.ts +39 -0
  165. package/esm/renderers/Form/Radios.js +91 -0
  166. package/esm/renderers/Form/Select.d.ts +145 -0
  167. package/esm/renderers/Form/Select.js +310 -0
  168. package/esm/renderers/Form/Static.d.ts +59 -0
  169. package/esm/renderers/Form/Static.js +109 -0
  170. package/esm/renderers/Form/Switch.d.ts +54 -0
  171. package/esm/renderers/Form/Switch.js +77 -0
  172. package/esm/renderers/Form/TabsTransfer.d.ts +30 -0
  173. package/esm/renderers/Form/TabsTransfer.js +241 -0
  174. package/esm/renderers/Form/TabsTransferPicker.d.ts +26 -0
  175. package/esm/renderers/Form/TabsTransferPicker.js +72 -0
  176. package/esm/renderers/Form/Textarea.d.ts +69 -0
  177. package/esm/renderers/Form/Textarea.js +103 -0
  178. package/esm/renderers/Form/Transfer.d.ts +115 -0
  179. package/esm/renderers/Form/Transfer.js +276 -0
  180. package/esm/renderers/Form/TransferPicker.d.ts +26 -0
  181. package/esm/renderers/Form/TransferPicker.js +66 -0
  182. package/esm/renderers/Form/TreeSelect.d.ts +132 -0
  183. package/esm/renderers/Form/TreeSelect.js +376 -0
  184. package/esm/renderers/Form/UUID.d.ts +22 -0
  185. package/esm/renderers/Form/UUID.js +52 -0
  186. package/esm/renderers/Form/UserSelect.d.ts +55 -0
  187. package/esm/renderers/Form/UserSelect.js +194 -0
  188. package/esm/renderers/Grid.d.ts +82 -0
  189. package/esm/renderers/Grid.js +88 -0
  190. package/esm/renderers/Grid2D.d.ts +91 -0
  191. package/esm/renderers/Grid2D.js +113 -0
  192. package/esm/renderers/GridNav.d.ts +99 -0
  193. package/esm/renderers/GridNav.js +80 -0
  194. package/esm/renderers/HBox.d.ts +95 -0
  195. package/esm/renderers/HBox.js +75 -0
  196. package/esm/renderers/IFrame.d.ts +49 -0
  197. package/esm/renderers/IFrame.js +169 -0
  198. package/esm/renderers/Icon.d.ts +28 -0
  199. package/esm/renderers/Icon.js +60 -0
  200. package/esm/renderers/Image.d.ts +415 -0
  201. package/esm/renderers/Image.js +120 -0
  202. package/esm/renderers/Images.d.ts +80 -0
  203. package/esm/renderers/Images.js +89 -0
  204. package/esm/renderers/Json.d.ts +68 -0
  205. package/esm/renderers/Json.js +98 -0
  206. package/esm/renderers/Link.d.ts +56 -0
  207. package/esm/renderers/Link.js +61 -0
  208. package/esm/renderers/List.d.ts +260 -0
  209. package/esm/renderers/List.js +680 -0
  210. package/esm/renderers/Log.d.ts +93 -0
  211. package/esm/renderers/Log.js +278 -0
  212. package/esm/renderers/Mapping.d.ts +354 -0
  213. package/esm/renderers/Mapping.js +160 -0
  214. package/esm/renderers/Markdown.d.ts +42 -0
  215. package/esm/renderers/Markdown.js +97 -0
  216. package/esm/renderers/Nav.d.ts +258 -0
  217. package/esm/renderers/Nav.js +544 -0
  218. package/esm/renderers/Operation.d.ts +28 -0
  219. package/esm/renderers/Operation.js +43 -0
  220. package/esm/renderers/Page.d.ts +228 -0
  221. package/esm/renderers/Page.js +593 -0
  222. package/esm/renderers/Pagination.d.ts +68 -0
  223. package/esm/renderers/Pagination.js +35 -0
  224. package/esm/renderers/PaginationWrapper.d.ts +67 -0
  225. package/esm/renderers/PaginationWrapper.js +74 -0
  226. package/esm/renderers/Panel.d.ts +86 -0
  227. package/esm/renderers/Panel.js +144 -0
  228. package/esm/renderers/Plain.d.ts +35 -0
  229. package/esm/renderers/Plain.js +42 -0
  230. package/esm/renderers/PopOver.d.ts +69 -0
  231. package/esm/renderers/PopOver.js +166 -0
  232. package/esm/renderers/Portlet.d.ts +125 -0
  233. package/esm/renderers/Portlet.js +152 -0
  234. package/esm/renderers/Progress.d.ts +81 -0
  235. package/esm/renderers/Progress.js +61 -0
  236. package/esm/renderers/Property.d.ts +99 -0
  237. package/esm/renderers/Property.js +95 -0
  238. package/esm/renderers/QRCode.d.ts +63 -0
  239. package/esm/renderers/QRCode.js +75 -0
  240. package/esm/renderers/QuickEdit.d.ts +65 -0
  241. package/esm/renderers/QuickEdit.js +337 -0
  242. package/esm/renderers/Remark.d.ts +105 -0
  243. package/esm/renderers/Remark.js +100 -0
  244. package/esm/renderers/SearchBox.d.ts +69 -0
  245. package/esm/renderers/SearchBox.js +77 -0
  246. package/esm/renderers/Service.d.ts +120 -0
  247. package/esm/renderers/Service.js +437 -0
  248. package/esm/renderers/SparkLine.d.ts +44 -0
  249. package/esm/renderers/SparkLine.js +40 -0
  250. package/esm/renderers/Spinner.d.ts +64 -0
  251. package/esm/renderers/Spinner.js +32 -0
  252. package/esm/renderers/Status.d.ts +55 -0
  253. package/esm/renderers/Status.js +84 -0
  254. package/esm/renderers/Steps.d.ts +66 -0
  255. package/esm/renderers/Steps.js +77 -0
  256. package/esm/renderers/Table/ColumnToggler.d.ts +120 -0
  257. package/esm/renderers/Table/ColumnToggler.js +255 -0
  258. package/esm/renderers/Table/HeadCellFilterDropdown.d.ts +32 -0
  259. package/esm/renderers/Table/HeadCellFilterDropdown.js +211 -0
  260. package/esm/renderers/Table/HeadCellSearchDropdown.d.ts +32 -0
  261. package/esm/renderers/Table/HeadCellSearchDropdown.js +193 -0
  262. package/esm/renderers/Table/ItemActionsWrapper.d.ts +11 -0
  263. package/esm/renderers/Table/ItemActionsWrapper.js +35 -0
  264. package/esm/renderers/Table/TableBody.d.ts +90 -0
  265. package/esm/renderers/Table/TableBody.js +105 -0
  266. package/esm/renderers/Table/TableCell.d.ts +21 -0
  267. package/esm/renderers/Table/TableCell.js +139 -0
  268. package/esm/renderers/Table/TableContent.d.ts +54 -0
  269. package/esm/renderers/Table/TableContent.js +69 -0
  270. package/esm/renderers/Table/TableRow.d.ts +27 -0
  271. package/esm/renderers/Table/TableRow.js +129 -0
  272. package/esm/renderers/Table/exportExcel.d.ts +6 -0
  273. package/esm/renderers/Table/exportExcel.js +301 -0
  274. package/esm/renderers/Table/index.d.ts +373 -0
  275. package/esm/renderers/Table/index.js +1583 -0
  276. package/esm/renderers/Table-v2/ColumnToggler.d.ts +19 -0
  277. package/esm/renderers/Table-v2/ColumnToggler.js +88 -0
  278. package/esm/renderers/Table-v2/HeadCellSearchDropdown.d.ts +29 -0
  279. package/esm/renderers/Table-v2/HeadCellSearchDropdown.js +206 -0
  280. package/esm/renderers/Table-v2/TableCell.d.ts +6 -0
  281. package/esm/renderers/Table-v2/TableCell.js +30 -0
  282. package/esm/renderers/Table-v2/index.d.ts +285 -0
  283. package/esm/renderers/Table-v2/index.js +833 -0
  284. package/esm/renderers/TableView.d.ts +136 -0
  285. package/esm/renderers/TableView.js +95 -0
  286. package/esm/renderers/Tabs.d.ts +204 -0
  287. package/esm/renderers/Tabs.js +501 -0
  288. package/esm/renderers/Tag.d.ts +66 -0
  289. package/esm/renderers/Tag.js +50 -0
  290. package/esm/renderers/Tasks.d.ts +140 -0
  291. package/esm/renderers/Tasks.js +209 -0
  292. package/esm/renderers/Timeline.d.ts +65 -0
  293. package/esm/renderers/Timeline.js +54 -0
  294. package/esm/renderers/TooltipWrapper.d.ts +133 -0
  295. package/esm/renderers/TooltipWrapper.js +70 -0
  296. package/esm/renderers/Tpl.d.ts +51 -0
  297. package/esm/renderers/Tpl.js +88 -0
  298. package/esm/renderers/VBox.d.ts +30 -0
  299. package/esm/renderers/VBox.js +48 -0
  300. package/esm/renderers/Video.d.ts +171 -0
  301. package/esm/renderers/Video.js +457 -0
  302. package/esm/renderers/WebComponent.d.ts +33 -0
  303. package/esm/renderers/WebComponent.js +48 -0
  304. package/esm/renderers/Wizard.d.ts +179 -0
  305. package/esm/renderers/Wizard.js +923 -0
  306. package/esm/renderers/Wrapper.d.ts +36 -0
  307. package/esm/renderers/Wrapper.js +53 -0
  308. package/esm/schemaExtend.d.ts +1 -0
  309. package/esm/schemaExtend.js +144 -0
  310. package/esm/types.d.ts +160 -0
  311. package/lib/Schema.d.ts +4 -3
  312. package/lib/compat.js +1 -1
  313. package/lib/helper.css +0 -1
  314. package/lib/index.d.ts +1 -0
  315. package/lib/index.js +2 -1
  316. package/lib/preset.js +1 -1
  317. package/lib/renderers/Action.js +1 -1
  318. package/lib/renderers/Alert.js +1 -1
  319. package/lib/renderers/AnchorNav.js +1 -1
  320. package/lib/renderers/App.d.ts +12 -0
  321. package/lib/renderers/App.js +32 -16
  322. package/lib/renderers/Audio.js +1 -1
  323. package/lib/renderers/Avatar.js +1 -1
  324. package/lib/renderers/BarCode.js +1 -1
  325. package/lib/renderers/Breadcrumb.js +1 -1
  326. package/lib/renderers/ButtonGroup.d.ts +2 -2
  327. package/lib/renderers/ButtonGroup.js +1 -1
  328. package/lib/renderers/CRUD.js +6 -7
  329. package/lib/renderers/CRUD2.d.ts +215 -0
  330. package/lib/renderers/CRUD2.js +758 -0
  331. package/lib/renderers/Calendar.js +1 -1
  332. package/lib/renderers/Card.d.ts +7 -2
  333. package/lib/renderers/Card.js +12 -7
  334. package/lib/renderers/Card2.d.ts +1 -1
  335. package/lib/renderers/Card2.js +3 -3
  336. package/lib/renderers/Cards.d.ts +4 -0
  337. package/lib/renderers/Cards.js +49 -6
  338. package/lib/renderers/Carousel.js +1 -1
  339. package/lib/renderers/Chart.js +19 -3
  340. package/lib/renderers/Code.js +1 -1
  341. package/lib/renderers/Collapse.js +1 -1
  342. package/lib/renderers/CollapseGroup.js +1 -1
  343. package/lib/renderers/Color.js +1 -1
  344. package/lib/renderers/Container.js +1 -1
  345. package/lib/renderers/Copyable.js +1 -1
  346. package/lib/renderers/Custom.js +1 -1
  347. package/lib/renderers/Date.js +1 -1
  348. package/lib/renderers/Dialog.d.ts +40 -40
  349. package/lib/renderers/Dialog.js +1 -1
  350. package/lib/renderers/Divider.js +1 -1
  351. package/lib/renderers/Drawer.js +1 -1
  352. package/lib/renderers/DropDownButton.js +9 -7
  353. package/lib/renderers/Each.js +1 -1
  354. package/lib/renderers/Flex.js +3 -2
  355. package/lib/renderers/Form/ButtonGroupSelect.js +2 -2
  356. package/lib/renderers/Form/ButtonToolbar.js +1 -1
  357. package/lib/renderers/Form/ChainedSelect.d.ts +1 -1
  358. package/lib/renderers/Form/ChainedSelect.js +14 -9
  359. package/lib/renderers/Form/ChartRadios.js +1 -1
  360. package/lib/renderers/Form/Checkbox.js +3 -3
  361. package/lib/renderers/Form/Checkboxes.d.ts +5 -0
  362. package/lib/renderers/Form/Checkboxes.js +10 -4
  363. package/lib/renderers/Form/Combo.d.ts +3 -1
  364. package/lib/renderers/Form/Combo.js +38 -3
  365. package/lib/renderers/Form/ConditionBuilder.d.ts +10 -0
  366. package/lib/renderers/Form/ConditionBuilder.js +7 -3
  367. package/lib/renderers/Form/Control.js +1 -1
  368. package/lib/renderers/Form/DiffEditor.d.ts +707 -143
  369. package/lib/renderers/Form/DiffEditor.js +1 -1
  370. package/lib/renderers/Form/Editor.d.ts +703 -139
  371. package/lib/renderers/Form/Editor.js +1 -1
  372. package/lib/renderers/Form/FieldSet.js +1 -1
  373. package/lib/renderers/Form/Formula.js +1 -1
  374. package/lib/renderers/Form/Group.js +2 -2
  375. package/lib/renderers/Form/Hidden.js +1 -1
  376. package/lib/renderers/Form/IconPicker.js +1 -1
  377. package/lib/renderers/Form/IconPickerIcons.js +1 -1
  378. package/lib/renderers/Form/InputArray.js +1 -1
  379. package/lib/renderers/Form/InputCity.d.ts +40 -40
  380. package/lib/renderers/Form/InputCity.js +1 -1
  381. package/lib/renderers/Form/InputColor.d.ts +40 -40
  382. package/lib/renderers/Form/InputColor.js +1 -1
  383. package/lib/renderers/Form/InputDate.js +1 -1
  384. package/lib/renderers/Form/InputDateRange.js +1 -1
  385. package/lib/renderers/Form/InputExcel.d.ts +1 -0
  386. package/lib/renderers/Form/InputExcel.js +6 -1
  387. package/lib/renderers/Form/InputFile.d.ts +5 -0
  388. package/lib/renderers/Form/InputFile.js +39 -18
  389. package/lib/renderers/Form/InputFormula.js +1 -1
  390. package/lib/renderers/Form/InputGroup.js +1 -1
  391. package/lib/renderers/Form/InputImage.js +27 -11
  392. package/lib/renderers/Form/InputMonthRange.js +1 -1
  393. package/lib/renderers/Form/InputNumber.js +1 -1
  394. package/lib/renderers/Form/InputQuarterRange.js +1 -1
  395. package/lib/renderers/Form/InputRange.d.ts +12 -5
  396. package/lib/renderers/Form/InputRange.js +1 -1
  397. package/lib/renderers/Form/InputRating.js +1 -1
  398. package/lib/renderers/Form/InputRepeat.js +1 -1
  399. package/lib/renderers/Form/InputRichText.js +1 -1
  400. package/lib/renderers/Form/InputSubForm.js +1 -1
  401. package/lib/renderers/Form/InputTable.js +9 -5
  402. package/lib/renderers/Form/InputTag.d.ts +34 -0
  403. package/lib/renderers/Form/InputTag.js +78 -40
  404. package/lib/renderers/Form/InputText.d.ts +8 -0
  405. package/lib/renderers/Form/InputText.js +13 -9
  406. package/lib/renderers/Form/InputTree.d.ts +5 -2
  407. package/lib/renderers/Form/InputTree.js +7 -3
  408. package/lib/renderers/Form/InputYearRange.js +1 -1
  409. package/lib/renderers/Form/JSONSchema.js +1 -1
  410. package/lib/renderers/Form/JSONSchemaEditor.js +1 -1
  411. package/lib/renderers/Form/ListSelect.js +1 -1
  412. package/lib/renderers/Form/LocationPicker.js +1 -1
  413. package/lib/renderers/Form/MatrixCheckboxes.js +1 -1
  414. package/lib/renderers/Form/NestedSelect.js +4 -4
  415. package/lib/renderers/Form/Picker.js +1 -1
  416. package/lib/renderers/Form/Radios.d.ts +6 -1
  417. package/lib/renderers/Form/Radios.js +5 -3
  418. package/lib/renderers/Form/Select.d.ts +5 -0
  419. package/lib/renderers/Form/Select.js +5 -4
  420. package/lib/renderers/Form/Static.js +1 -1
  421. package/lib/renderers/Form/Switch.d.ts +3 -0
  422. package/lib/renderers/Form/Switch.js +3 -3
  423. package/lib/renderers/Form/TabsTransfer.js +1 -1
  424. package/lib/renderers/Form/TabsTransferPicker.js +1 -1
  425. package/lib/renderers/Form/Textarea.d.ts +2 -1
  426. package/lib/renderers/Form/Textarea.js +13 -2
  427. package/lib/renderers/Form/Transfer.js +1 -1
  428. package/lib/renderers/Form/TransferPicker.js +1 -1
  429. package/lib/renderers/Form/TreeSelect.js +4 -4
  430. package/lib/renderers/Form/UUID.js +1 -1
  431. package/lib/renderers/Form/UserSelect.js +3 -3
  432. package/lib/renderers/Grid.js +1 -1
  433. package/lib/renderers/Grid2D.js +1 -1
  434. package/lib/renderers/GridNav.js +1 -1
  435. package/lib/renderers/HBox.js +1 -1
  436. package/lib/renderers/IFrame.js +1 -1
  437. package/lib/renderers/Icon.d.ts +1 -1
  438. package/lib/renderers/Icon.js +11 -6
  439. package/lib/renderers/Image.js +1 -1
  440. package/lib/renderers/Images.js +1 -1
  441. package/lib/renderers/Json.d.ts +4 -0
  442. package/lib/renderers/Json.js +5 -4
  443. package/lib/renderers/Link.js +1 -1
  444. package/lib/renderers/List.d.ts +1 -0
  445. package/lib/renderers/List.js +30 -25
  446. package/lib/renderers/Log.d.ts +8 -6
  447. package/lib/renderers/Log.js +63 -32
  448. package/lib/renderers/Mapping.js +1 -1
  449. package/lib/renderers/Markdown.js +1 -1
  450. package/lib/renderers/Nav.d.ts +10 -10
  451. package/lib/renderers/Nav.js +1 -1
  452. package/lib/renderers/Operation.js +1 -1
  453. package/lib/renderers/Page.js +1 -1
  454. package/lib/renderers/Pagination.js +1 -1
  455. package/lib/renderers/PaginationWrapper.js +2 -1
  456. package/lib/renderers/Panel.js +1 -1
  457. package/lib/renderers/Plain.js +1 -1
  458. package/lib/renderers/PopOver.js +4 -4
  459. package/lib/renderers/Portlet.js +1 -1
  460. package/lib/renderers/Progress.js +1 -1
  461. package/lib/renderers/Property.js +1 -1
  462. package/lib/renderers/QRCode.js +1 -1
  463. package/lib/renderers/QuickEdit.js +4 -3
  464. package/lib/renderers/Remark.d.ts +1 -1
  465. package/lib/renderers/Remark.js +1 -1
  466. package/lib/renderers/SearchBox.js +1 -1
  467. package/lib/renderers/Service.js +1 -1
  468. package/lib/renderers/SparkLine.js +1 -1
  469. package/lib/renderers/Spinner.js +1 -1
  470. package/lib/renderers/Status.js +1 -1
  471. package/lib/renderers/Steps.js +3 -2
  472. package/lib/renderers/Table/ColumnToggler.d.ts +4 -3
  473. package/lib/renderers/Table/ColumnToggler.js +4 -4
  474. package/lib/renderers/Table/HeadCellFilterDropdown.js +3 -3
  475. package/lib/renderers/Table/HeadCellSearchDropdown.js +4 -4
  476. package/lib/renderers/Table/ItemActionsWrapper.js +1 -1
  477. package/lib/renderers/Table/TableBody.js +1 -1
  478. package/lib/renderers/Table/TableCell.js +1 -1
  479. package/lib/renderers/Table/TableContent.js +1 -1
  480. package/lib/renderers/Table/TableRow.js +1 -1
  481. package/lib/renderers/Table/exportExcel.js +6 -6
  482. package/lib/renderers/Table/index.d.ts +4 -1
  483. package/lib/renderers/Table/index.js +94 -30
  484. package/lib/renderers/Table-v2/ColumnToggler.d.ts +18 -2
  485. package/lib/renderers/Table-v2/ColumnToggler.js +72 -2
  486. package/lib/renderers/Table-v2/HeadCellSearchDropdown.js +1 -1
  487. package/lib/renderers/Table-v2/TableCell.js +1 -1
  488. package/lib/renderers/Table-v2/index.d.ts +12 -10
  489. package/lib/renderers/Table-v2/index.js +125 -100
  490. package/lib/renderers/TableView.js +1 -1
  491. package/lib/renderers/Tabs.js +1 -1
  492. package/lib/renderers/Tag.js +3 -3
  493. package/lib/renderers/Tasks.js +1 -1
  494. package/lib/renderers/Timeline.js +1 -1
  495. package/lib/renderers/TooltipWrapper.js +3 -3
  496. package/lib/renderers/Tpl.js +1 -1
  497. package/lib/renderers/VBox.js +1 -1
  498. package/lib/renderers/Video.js +1 -1
  499. package/lib/renderers/WebComponent.js +1 -1
  500. package/lib/renderers/Wizard.d.ts +1 -1
  501. package/lib/renderers/Wizard.js +73 -76
  502. package/lib/renderers/Wrapper.js +1 -1
  503. package/lib/schemaExtend.js +77 -1
  504. package/lib/themes/ang-ie11.css +499 -282
  505. package/lib/themes/ang.css +516 -277
  506. package/lib/themes/antd-ie11.css +517 -300
  507. package/lib/themes/antd.css +520 -277
  508. package/lib/themes/cxd-ie11.css +520 -319
  509. package/lib/themes/cxd.css +531 -308
  510. package/lib/themes/dark-ie11.css +504 -287
  511. package/lib/themes/dark.css +521 -279
  512. package/lib/themes/default-ie11.css +520 -319
  513. package/lib/themes/default.css +531 -308
  514. package/lib/types.d.ts +1 -1
  515. package/package.json +33 -4
  516. package/schema.json +2532 -844
  517. package/sdk/ang-ie11.css +547 -95
  518. package/sdk/ang.css +564 -90
  519. package/sdk/antd-ie11.css +581 -129
  520. package/sdk/antd.css +568 -90
  521. package/sdk/barcode.js +50 -50
  522. package/sdk/charts.js +15 -15
  523. package/sdk/codemirror.js +7 -7
  524. package/sdk/color-picker.js +65 -65
  525. package/sdk/cropperjs.js +2 -2
  526. package/sdk/cxd-ie11.css +590 -159
  527. package/sdk/cxd.css +579 -126
  528. package/sdk/dark-ie11.css +552 -100
  529. package/sdk/dark.css +569 -92
  530. package/sdk/exceljs.js +1 -1
  531. package/sdk/helper.css +0 -1
  532. package/sdk/locale/de-DE.js +3 -1
  533. package/sdk/markdown.js +68 -68
  534. package/sdk/papaparse.js +1 -1
  535. package/sdk/rest.js +24 -24
  536. package/sdk/rich-text.js +62 -62
  537. package/sdk/sdk-ie11.css +590 -159
  538. package/sdk/sdk.css +579 -126
  539. package/sdk/sdk.js +1789 -1711
  540. package/sdk/thirds/hls.js/hls.js +1 -1
  541. package/sdk/thirds/mpegts.js/mpegts.js +1 -1
  542. package/sdk/tinymce.js +57 -57
@@ -0,0 +1,301 @@
1
+ /**
2
+ * amis v2.0.2
3
+ * Copyright 2018-2022 baidu
4
+ */
5
+
6
+ import { __awaiter, __generator } from 'tslib';
7
+ import { removeHTMLTag, filter, getImageDimensions, toDataURL, getVariable, createObject, isPureVariable, resolveVariableAndFilter, TableStore } from 'amis-core';
8
+ import './ColumnToggler.js';
9
+ import { saveAs } from 'file-saver';
10
+ import { getSnapshot } from 'mobx-state-tree';
11
+ import moment from 'moment';
12
+
13
+ /**
14
+ * 导出 Excel 功能
15
+ */
16
+ /**
17
+ * 将 url 转成绝对地址
18
+ */
19
+ var getAbsoluteUrl = (function () {
20
+ var link;
21
+ return function (url) {
22
+ if (!link)
23
+ link = document.createElement('a');
24
+ link.href = url;
25
+ return link.href;
26
+ };
27
+ })();
28
+ function exportExcel(ExcelJS, props, toolbar) {
29
+ var _a, _b;
30
+ return __awaiter(this, void 0, void 0, function () {
31
+ var store, env, __, data, columns, rows, tmpStore, filename, res, workbook, worksheet, exportColumnNames, _i, columns_1, column, filteredColumns, firstRowLabels, firstRow, remoteMappingCache, rowIndex, _c, rows_1, row, rowData, sheetRow, columIndex, _d, filteredColumns_1, column, name_1, value, type, imageData, imageDimensions, imageWidth, imageHeight, imageMaxSize, imageMatch, imageExt, imageId, linkURL, e_1, href, linkURL, body, text, absoluteURL, map, source, sourceValue, mapKey, res, viewValue, viewValue, _e, fromNow, _f, format, _g, valueFormat, ISODate, NormalDate, buffer, blob;
32
+ return __generator(this, function (_h) {
33
+ switch (_h.label) {
34
+ case 0:
35
+ store = props.store, env = props.env, props.classnames, __ = props.translate, data = props.data;
36
+ columns = store.exportColumns || [];
37
+ rows = [];
38
+ filename = 'data';
39
+ if (!(typeof toolbar === 'object' && toolbar.api)) return [3 /*break*/, 2];
40
+ return [4 /*yield*/, env.fetcher(toolbar.api, data)];
41
+ case 1:
42
+ res = _h.sent();
43
+ if (!res.data) {
44
+ env.notify('warning', __('placeholder.noData'));
45
+ return [2 /*return*/];
46
+ }
47
+ if (Array.isArray(res.data)) {
48
+ rows = res.data;
49
+ }
50
+ else {
51
+ rows = res.data.rows || res.data.items;
52
+ }
53
+ // 因为很多方法是 store 里的,所以需要构建 store 来处理
54
+ tmpStore = TableStore.create(getSnapshot(store));
55
+ tmpStore.initRows(rows);
56
+ rows = tmpStore.rows;
57
+ return [3 /*break*/, 3];
58
+ case 2:
59
+ rows = store.rows;
60
+ _h.label = 3;
61
+ case 3:
62
+ if (typeof toolbar === 'object' && toolbar.filename) {
63
+ filename = filter(toolbar.filename, data, '| raw');
64
+ }
65
+ if (rows.length === 0) {
66
+ env.notify('warning', __('placeholder.noData'));
67
+ return [2 /*return*/];
68
+ }
69
+ workbook = new ExcelJS.Workbook();
70
+ worksheet = workbook.addWorksheet('sheet', {
71
+ properties: { defaultColWidth: 15 }
72
+ });
73
+ worksheet.views = [{ state: 'frozen', xSplit: 0, ySplit: 1 }];
74
+ exportColumnNames = toolbar.columns;
75
+ if (isPureVariable(exportColumnNames)) {
76
+ exportColumnNames = resolveVariableAndFilter(exportColumnNames, data, '| raw');
77
+ }
78
+ // 自定义导出列配置
79
+ if (toolbar.exportColumns && Array.isArray(toolbar.exportColumns)) {
80
+ columns = toolbar.exportColumns;
81
+ // 因为后面列 props 都是从 pristine 里获取,所以这里归一一下
82
+ for (_i = 0, columns_1 = columns; _i < columns_1.length; _i++) {
83
+ column = columns_1[_i];
84
+ column.pristine = column;
85
+ }
86
+ }
87
+ filteredColumns = exportColumnNames
88
+ ? columns.filter(function (column) {
89
+ var filterColumnsNames = exportColumnNames;
90
+ if (column.name && filterColumnsNames.indexOf(column.name) !== -1) {
91
+ return true;
92
+ }
93
+ return false;
94
+ })
95
+ : columns;
96
+ firstRowLabels = filteredColumns.map(function (column) {
97
+ return column.label;
98
+ });
99
+ firstRow = worksheet.getRow(1);
100
+ firstRow.values = firstRowLabels;
101
+ worksheet.autoFilter = {
102
+ from: {
103
+ row: 1,
104
+ column: 1
105
+ },
106
+ to: {
107
+ row: 1,
108
+ column: firstRowLabels.length
109
+ }
110
+ };
111
+ remoteMappingCache = {};
112
+ rowIndex = 1;
113
+ _c = 0, rows_1 = rows;
114
+ _h.label = 4;
115
+ case 4:
116
+ if (!(_c < rows_1.length)) return [3 /*break*/, 19];
117
+ row = rows_1[_c];
118
+ rowData = createObject(data, row.data);
119
+ rowIndex += 1;
120
+ sheetRow = worksheet.getRow(rowIndex);
121
+ columIndex = 0;
122
+ _d = 0, filteredColumns_1 = filteredColumns;
123
+ _h.label = 5;
124
+ case 5:
125
+ if (!(_d < filteredColumns_1.length)) return [3 /*break*/, 18];
126
+ column = filteredColumns_1[_d];
127
+ columIndex += 1;
128
+ name_1 = column.name;
129
+ value = getVariable(rowData, name_1);
130
+ if (typeof value === 'undefined' && !column.pristine.tpl) {
131
+ return [3 /*break*/, 17];
132
+ }
133
+ // 处理合并单元格
134
+ if (name_1 in row.rowSpans) {
135
+ if (row.rowSpans[name_1] === 0) {
136
+ return [3 /*break*/, 17];
137
+ }
138
+ else {
139
+ // start row, start column, end row, end column
140
+ worksheet.mergeCells(rowIndex, columIndex, rowIndex + row.rowSpans[name_1] - 1, columIndex);
141
+ }
142
+ }
143
+ type = column.type || 'plain';
144
+ if (!((type === 'image' || type === 'static-image') && value)) return [3 /*break*/, 11];
145
+ _h.label = 6;
146
+ case 6:
147
+ _h.trys.push([6, 9, , 10]);
148
+ return [4 /*yield*/, toDataURL(value)];
149
+ case 7:
150
+ imageData = _h.sent();
151
+ return [4 /*yield*/, getImageDimensions(imageData)];
152
+ case 8:
153
+ imageDimensions = _h.sent();
154
+ imageWidth = imageDimensions.width;
155
+ imageHeight = imageDimensions.height;
156
+ imageMaxSize = 100;
157
+ if (imageWidth > imageHeight) {
158
+ if (imageWidth > imageMaxSize) {
159
+ imageHeight = (imageMaxSize * imageHeight) / imageWidth;
160
+ imageWidth = imageMaxSize;
161
+ }
162
+ }
163
+ else {
164
+ if (imageHeight > imageMaxSize) {
165
+ imageWidth = (imageMaxSize * imageWidth) / imageHeight;
166
+ imageHeight = imageMaxSize;
167
+ }
168
+ }
169
+ imageMatch = imageData.match(/data:image\/(.*);/);
170
+ imageExt = 'png';
171
+ if (imageMatch) {
172
+ imageExt = imageMatch[1];
173
+ }
174
+ // 目前 excel 只支持这些格式,所以其它格式直接输出 url
175
+ if (imageExt != 'png' && imageExt != 'jpeg' && imageExt != 'gif') {
176
+ sheetRow.getCell(columIndex).value = value;
177
+ return [3 /*break*/, 17];
178
+ }
179
+ imageId = workbook.addImage({
180
+ base64: imageData,
181
+ extension: imageExt
182
+ });
183
+ linkURL = getAbsoluteUrl(value);
184
+ worksheet.addImage(imageId, {
185
+ // 这里坐标位置是从 0 开始的,所以要减一
186
+ tl: { col: columIndex - 1, row: rowIndex - 1 },
187
+ ext: {
188
+ width: imageWidth,
189
+ height: imageHeight
190
+ },
191
+ hyperlinks: {
192
+ tooltip: linkURL
193
+ }
194
+ });
195
+ return [3 /*break*/, 10];
196
+ case 9:
197
+ e_1 = _h.sent();
198
+ console.warn(e_1.stack);
199
+ return [3 /*break*/, 10];
200
+ case 10: return [3 /*break*/, 17];
201
+ case 11:
202
+ if (!(type == 'link' || type === 'static-link')) return [3 /*break*/, 12];
203
+ href = column.pristine.href;
204
+ linkURL = (typeof href === 'string' && href
205
+ ? filter(href, rowData, '| raw')
206
+ : undefined) || value;
207
+ body = column.pristine.body;
208
+ text = typeof body === 'string' && body
209
+ ? filter(body, rowData, '| raw')
210
+ : undefined;
211
+ absoluteURL = getAbsoluteUrl(linkURL);
212
+ sheetRow.getCell(columIndex).value = {
213
+ text: text || absoluteURL,
214
+ hyperlink: absoluteURL
215
+ };
216
+ return [3 /*break*/, 17];
217
+ case 12:
218
+ if (!(type === 'mapping' || type === 'static-mapping')) return [3 /*break*/, 16];
219
+ map = column.pristine.map;
220
+ source = column.pristine.source;
221
+ if (!source) return [3 /*break*/, 15];
222
+ sourceValue = source;
223
+ if (isPureVariable(source)) {
224
+ sourceValue = resolveVariableAndFilter(source, rowData, '| raw');
225
+ }
226
+ mapKey = JSON.stringify(source);
227
+ if (!(mapKey in remoteMappingCache)) return [3 /*break*/, 13];
228
+ map = remoteMappingCache[mapKey];
229
+ return [3 /*break*/, 15];
230
+ case 13: return [4 /*yield*/, env.fetcher(sourceValue, rowData)];
231
+ case 14:
232
+ res = _h.sent();
233
+ if (res.data) {
234
+ remoteMappingCache[mapKey] = res.data;
235
+ map = res.data;
236
+ }
237
+ _h.label = 15;
238
+ case 15:
239
+ if (typeof value !== 'undefined' && map && ((_a = map[value]) !== null && _a !== void 0 ? _a : map['*'])) {
240
+ viewValue = (_b = map[value]) !== null && _b !== void 0 ? _b : (value === true && map['1']
241
+ ? map['1']
242
+ : value === false && map['0']
243
+ ? map['0']
244
+ : map['*']);
245
+ sheetRow.getCell(columIndex).value = removeHTMLTag(viewValue);
246
+ }
247
+ else {
248
+ sheetRow.getCell(columIndex).value = removeHTMLTag(value);
249
+ }
250
+ return [3 /*break*/, 17];
251
+ case 16:
252
+ if (type === 'date' || type === 'static-date') {
253
+ viewValue = void 0;
254
+ _e = column.pristine, fromNow = _e.fromNow, _f = _e.format, format = _f === void 0 ? 'YYYY-MM-DD' : _f, _g = _e.valueFormat, valueFormat = _g === void 0 ? 'X' : _g;
255
+ if (value) {
256
+ ISODate = moment(value, moment.ISO_8601);
257
+ NormalDate = moment(value, valueFormat);
258
+ viewValue = ISODate.isValid()
259
+ ? ISODate.format(format)
260
+ : NormalDate.isValid()
261
+ ? NormalDate.format(format)
262
+ : false;
263
+ }
264
+ if (fromNow) {
265
+ viewValue = moment(value).fromNow();
266
+ }
267
+ if (viewValue) {
268
+ sheetRow.getCell(columIndex).value = viewValue;
269
+ }
270
+ }
271
+ else {
272
+ if (column.pristine.tpl) {
273
+ sheetRow.getCell(columIndex).value = removeHTMLTag(filter(column.pristine.tpl, rowData));
274
+ }
275
+ else {
276
+ sheetRow.getCell(columIndex).value = value;
277
+ }
278
+ }
279
+ _h.label = 17;
280
+ case 17:
281
+ _d++;
282
+ return [3 /*break*/, 5];
283
+ case 18:
284
+ _c++;
285
+ return [3 /*break*/, 4];
286
+ case 19: return [4 /*yield*/, workbook.xlsx.writeBuffer()];
287
+ case 20:
288
+ buffer = _h.sent();
289
+ if (buffer) {
290
+ blob = new Blob([buffer], {
291
+ type: 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet'
292
+ });
293
+ saveAs(blob, filename + '.xlsx');
294
+ }
295
+ return [2 /*return*/];
296
+ }
297
+ });
298
+ });
299
+ }
300
+
301
+ export { exportExcel };
@@ -0,0 +1,373 @@
1
+ import React from 'react';
2
+ import { IScopedContext } from 'amis-core';
3
+ import { RendererProps } from 'amis-core';
4
+ import { SchemaNode, ActionObject } from 'amis-core';
5
+ import { BadgeObject } from 'amis-ui';
6
+ import { ITableStore } from 'amis-core';
7
+ import Sortable from 'sortablejs';
8
+ import { TableCell } from './TableCell';
9
+ import { BaseSchema, SchemaApi, SchemaClassName, SchemaObject, SchemaTokenizeableString, SchemaTpl } from '../../Schema';
10
+ import { SchemaPopOver } from '../PopOver';
11
+ import { SchemaQuickEdit } from '../QuickEdit';
12
+ import { SchemaCopyable } from '../Copyable';
13
+ import { SchemaRemark } from '../Remark';
14
+ import type { IColumn, IRow } from 'amis-core/lib/store/table';
15
+ /**
16
+ * 表格列,不指定类型时默认为文本类型。
17
+ */
18
+ export declare type TableColumnObject = {
19
+ /**
20
+ * 列标题
21
+ */
22
+ label: string;
23
+ /**
24
+ * 配置是否固定当前列
25
+ */
26
+ fixed?: 'left' | 'right' | 'none';
27
+ /**
28
+ * 绑定字段名
29
+ */
30
+ name?: string;
31
+ /**
32
+ * 配置查看详情功能
33
+ */
34
+ popOver?: SchemaPopOver;
35
+ /**
36
+ * 配置快速编辑功能
37
+ */
38
+ quickEdit?: SchemaQuickEdit;
39
+ /**
40
+ * 作为表单项时,可以单独配置编辑时的快速编辑面板。
41
+ */
42
+ quickEditOnUpdate?: SchemaQuickEdit;
43
+ /**
44
+ * 配置点击复制功能
45
+ */
46
+ copyable?: SchemaCopyable;
47
+ /**
48
+ * 配置是否可以排序
49
+ */
50
+ sortable?: boolean;
51
+ /**
52
+ * 是否可快速搜索
53
+ */
54
+ searchable?: boolean | SchemaObject;
55
+ /**
56
+ * 配置是否默认展示
57
+ */
58
+ toggled?: boolean;
59
+ /**
60
+ * 列宽度
61
+ */
62
+ width?: number | string;
63
+ /**
64
+ * 列对齐方式
65
+ */
66
+ align?: 'left' | 'right' | 'center' | 'justify';
67
+ /**
68
+ * 列样式表
69
+ */
70
+ className?: string;
71
+ /**
72
+ * 单元格样式表达式
73
+ */
74
+ classNameExpr?: string;
75
+ /**
76
+ * 列头样式表
77
+ */
78
+ labelClassName?: string;
79
+ /**
80
+ * todo
81
+ */
82
+ filterable?: boolean | {
83
+ source?: string;
84
+ options?: Array<any>;
85
+ };
86
+ /**
87
+ * 结合表格的 footable 一起使用。
88
+ * 填写 *、xs、sm、md、lg指定 footable 的触发条件,可以填写多个用空格隔开
89
+ */
90
+ breakpoint?: '*' | 'xs' | 'sm' | 'md' | 'lg';
91
+ /**
92
+ * 提示信息
93
+ */
94
+ remark?: SchemaRemark;
95
+ /**
96
+ * 默认值, 只有在 inputTable 里面才有用
97
+ */
98
+ value?: any;
99
+ /**
100
+ * 是否唯一, 只有在 inputTable 里面才有用
101
+ */
102
+ unique?: boolean;
103
+ };
104
+ export declare type TableColumnWithType = SchemaObject & TableColumnObject;
105
+ export declare type TableColumn = TableColumnWithType | TableColumnObject;
106
+ /**
107
+ * Table 表格渲染器。
108
+ * 文档:https://baidu.gitee.io/amis/docs/components/table
109
+ */
110
+ export interface TableSchema extends BaseSchema {
111
+ /**
112
+ * 指定为表格渲染器。
113
+ */
114
+ type: 'table' | 'static-table';
115
+ /**
116
+ * 是否固定表头
117
+ */
118
+ affixHeader?: boolean;
119
+ /**
120
+ * 表格的列信息
121
+ */
122
+ columns?: Array<TableColumn>;
123
+ /**
124
+ * 展示列显示开关,自动即:列数量大于或等于5个时自动开启
125
+ */
126
+ columnsTogglable?: boolean | 'auto';
127
+ /**
128
+ * 是否开启底部展示功能,适合移动端展示
129
+ */
130
+ footable?: boolean | {
131
+ expand?: 'first' | 'all' | 'none';
132
+ /**
133
+ * 是否为手风琴模式
134
+ */
135
+ accordion?: boolean;
136
+ };
137
+ /**
138
+ * 底部外层 CSS 类名
139
+ */
140
+ footerClassName?: SchemaClassName;
141
+ /**
142
+ * 顶部外层 CSS 类名
143
+ */
144
+ headerClassName?: SchemaClassName;
145
+ /**
146
+ * 占位符
147
+ */
148
+ placeholder?: string | SchemaTpl;
149
+ /**
150
+ * 是否显示底部
151
+ */
152
+ showFooter?: boolean;
153
+ /**
154
+ * 是否显示头部
155
+ */
156
+ showHeader?: boolean;
157
+ /**
158
+ * 数据源:绑定当前环境变量
159
+ */
160
+ source?: SchemaTokenizeableString;
161
+ /**
162
+ * 表格 CSS 类名
163
+ */
164
+ tableClassName?: SchemaClassName;
165
+ /**
166
+ * 标题
167
+ */
168
+ title?: string;
169
+ /**
170
+ * 工具栏 CSS 类名
171
+ */
172
+ toolbarClassName?: SchemaClassName;
173
+ /**
174
+ * 合并单元格配置,配置数字表示从左到右的多少列自动合并单元格。
175
+ */
176
+ combineNum?: number;
177
+ /**
178
+ * 合并单元格配置,配置从第几列开始合并。
179
+ */
180
+ combineFromIndex?: number;
181
+ /**
182
+ * 顶部总结行
183
+ */
184
+ prefixRow?: Array<SchemaObject>;
185
+ /**
186
+ * 底部总结行
187
+ */
188
+ affixRow?: Array<SchemaObject>;
189
+ /**
190
+ * 是否可调整列宽
191
+ */
192
+ resizable?: boolean;
193
+ /**
194
+ * 行样式表表达式
195
+ */
196
+ rowClassNameExpr?: string;
197
+ /**
198
+ * 行角标
199
+ */
200
+ itemBadge?: BadgeObject;
201
+ /**
202
+ * 开启查询区域,会根据列元素的searchable属性值,自动生成查询条件表单
203
+ */
204
+ autoGenerateFilter?: boolean;
205
+ }
206
+ export interface TableProps extends RendererProps {
207
+ title?: string;
208
+ header?: SchemaNode;
209
+ footer?: SchemaNode;
210
+ actions?: ActionObject[];
211
+ className?: string;
212
+ headerClassName?: string;
213
+ footerClassName?: string;
214
+ store: ITableStore;
215
+ columns?: Array<any>;
216
+ headingClassName?: string;
217
+ toolbarClassName?: string;
218
+ headerToolbarClassName?: string;
219
+ footerToolbarClassName?: string;
220
+ tableClassName?: string;
221
+ source?: string;
222
+ selectable?: boolean;
223
+ selected?: Array<any>;
224
+ maxKeepItemSelectionLength?: number;
225
+ valueField?: string;
226
+ draggable?: boolean;
227
+ columnsTogglable?: boolean | 'auto';
228
+ affixHeader?: boolean;
229
+ affixColumns?: boolean;
230
+ combineNum?: number | string;
231
+ combineFromIndex?: number;
232
+ footable?: boolean | {
233
+ expand?: 'first' | 'all' | 'none';
234
+ expandAll?: boolean;
235
+ accordion?: boolean;
236
+ };
237
+ expandConfig?: {
238
+ expand?: 'first' | 'all' | 'none';
239
+ expandAll?: boolean;
240
+ accordion?: boolean;
241
+ };
242
+ itemCheckableOn?: string;
243
+ itemDraggableOn?: string;
244
+ itemActions?: Array<ActionObject>;
245
+ onSelect: (selectedItems: Array<object>, unSelectedItems: Array<object>) => void;
246
+ onPristineChange?: (data: object, rowIndexe: string) => void;
247
+ onSave?: (items: Array<object> | object, diff: Array<object> | object, rowIndexes: Array<string> | string, unModifiedItems?: Array<object>, rowOrigins?: Array<object> | object, resetOnFailed?: boolean) => void;
248
+ onSaveOrder?: (moved: Array<object>, items: Array<object>) => void;
249
+ onQuery: (values: object) => void;
250
+ onImageEnlarge?: (data: any, target: any) => void;
251
+ buildItemProps?: (item: any, index: number) => any;
252
+ checkOnItemClick?: boolean;
253
+ hideCheckToggler?: boolean;
254
+ rowClassName?: string;
255
+ rowClassNameExpr?: string;
256
+ popOverContainer?: any;
257
+ canAccessSuperData?: boolean;
258
+ reUseRow?: boolean;
259
+ itemBadge?: BadgeObject;
260
+ loading?: boolean;
261
+ }
262
+ export declare type ExportExcelToolbar = SchemaNode & {
263
+ api?: SchemaApi;
264
+ columns?: string[];
265
+ exportColumns?: any[];
266
+ filename?: string;
267
+ };
268
+ export declare type TableRendererEvent = 'selectedChange' | 'columnSort' | 'columnFilter' | 'columnSearch' | 'columnToggled' | 'orderChange' | 'rowClick';
269
+ export declare type TableRendererAction = 'selectAll' | 'clearAll' | 'select' | 'initDrag';
270
+ export default class Table extends React.Component<TableProps, object> {
271
+ static contextType: React.Context<IScopedContext>;
272
+ static propsList: Array<string>;
273
+ static defaultProps: Partial<TableProps>;
274
+ table?: HTMLTableElement;
275
+ sortable?: Sortable;
276
+ dragTip?: HTMLElement;
277
+ affixedTable?: HTMLTableElement;
278
+ parentNode?: HTMLElement | Window;
279
+ lastScrollLeft: number;
280
+ lastScrollTop: number;
281
+ totalWidth: number;
282
+ totalHeight: number;
283
+ outterWidth: number;
284
+ outterHeight: number;
285
+ unSensor?: Function;
286
+ updateTableInfoLazy: () => void;
287
+ widths: {
288
+ [propName: string]: number;
289
+ };
290
+ widths2: {
291
+ [propName: string]: number;
292
+ };
293
+ heights: {
294
+ [propName: string]: number;
295
+ };
296
+ renderedToolbars: Array<string>;
297
+ subForms: any;
298
+ timer: ReturnType<typeof setTimeout>;
299
+ constructor(props: TableProps, context: IScopedContext);
300
+ static syncRows(store: ITableStore, props: TableProps, prevProps?: TableProps): boolean;
301
+ componentDidMount(): void;
302
+ /**
303
+ * 自动设置表格高度占满界面剩余区域
304
+ * 用 css 实现有点麻烦,要改很多结构,所以先用 dom hack 了,避免对之前的功能有影响
305
+ */
306
+ updateAutoFillHeight(): void;
307
+ componentDidUpdate(prevProps: TableProps): void;
308
+ componentWillUnmount(): void;
309
+ subFormRef(form: any, x: number, y: number): void;
310
+ handleAction(e: React.UIEvent<any> | undefined, action: ActionObject, ctx: object): void;
311
+ handleCheck(item: IRow, value: boolean, shift?: boolean): Promise<void>;
312
+ handleCheckAll(): Promise<void>;
313
+ handleQuickChange(item: IRow, values: object, saveImmediately?: boolean | any, savePristine?: boolean, resetOnFailed?: boolean): void;
314
+ handleSave(): Promise<void>;
315
+ handleSaveOrder(): Promise<void>;
316
+ syncSelected(): void;
317
+ reset(): void;
318
+ bulkUpdate(value: any, items: Array<object>): void;
319
+ getSelected(): any[];
320
+ affixDetect(): void;
321
+ updateTableInfo(): void;
322
+ handleOutterScroll(): void;
323
+ handleFixedColumnsScroll(event: React.UIEvent<any>): void;
324
+ tableRef(ref: HTMLTableElement): void;
325
+ dragTipRef(ref: any): void;
326
+ affixedTableRef(ref: HTMLTableElement): void;
327
+ initDragging(): void;
328
+ destroyDragging(): void;
329
+ getPopOverContainer(): Element | Text | null;
330
+ handleMouseMove(e: React.MouseEvent<any>): void;
331
+ handleMouseLeave(): void;
332
+ draggingTr: HTMLTableRowElement;
333
+ originIndex: number;
334
+ draggingSibling: Array<HTMLTableRowElement>;
335
+ handleDragStart(e: React.DragEvent): void;
336
+ handleDragOver(e: any): void;
337
+ handleDrop(): Promise<void>;
338
+ handleDragEnd(): void;
339
+ handleImageEnlarge(info: any, target: {
340
+ rowIndex: number;
341
+ colIndex: number;
342
+ }): void;
343
+ resizeLine: HTMLElement;
344
+ resizeLineLeft: number;
345
+ targetTh: HTMLElement;
346
+ targetThWidth: number;
347
+ lineStartX: number;
348
+ handleColResizeMouseDown(e: React.MouseEvent<HTMLElement>): void;
349
+ handleColResizeMouseMove(e: MouseEvent): void;
350
+ handleColResizeMouseUp(e: MouseEvent): void;
351
+ handleColumnToggle(columns: Array<IColumn>): void;
352
+ renderAutoFilterForm(): React.ReactNode;
353
+ renderHeading(): JSX.Element | null;
354
+ renderHeadCell(column: IColumn, props?: any): JSX.Element;
355
+ renderCell(region: string, column: IColumn, item: IRow, props: any, ignoreDrag?: boolean): JSX.Element | null;
356
+ renderAffixHeader(tableClassName: string): JSX.Element | null;
357
+ renderFixedColumns(rows: Array<any>, columns: Array<IColumn>, headerOnly?: boolean, tableClassName?: string): JSX.Element;
358
+ renderToolbar(toolbar: SchemaNode): JSX.Element | null | undefined;
359
+ renderColumnsToggler(config?: any): JSX.Element | null;
360
+ renderDragToggler(): JSX.Element | null;
361
+ renderExportExcel(toolbar: ExportExcelToolbar): JSX.Element | null;
362
+ renderActions(region: string): JSX.Element | null;
363
+ renderHeader(editable?: boolean): JSX.Element | JSX.Element[] | null;
364
+ renderFooter(): JSX.Element | JSX.Element[] | null;
365
+ renderTableContent(): JSX.Element;
366
+ doAction(action: ActionObject, args: any, throwErrors: boolean): any;
367
+ render(): JSX.Element;
368
+ }
369
+ export declare class TableRenderer extends Table {
370
+ receive(values: any, subPath?: string): void;
371
+ reload(subPath?: string, query?: any, ctx?: any): void;
372
+ }
373
+ export { TableCell };