amis 2.0.0-rc.9 → 2.0.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (532) 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 +125 -0
  15. package/esm/renderers/App.js +198 -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 +742 -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 +231 -0
  33. package/esm/renderers/Card.js +372 -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 +151 -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 +213 -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 +226 -0
  82. package/esm/renderers/Form/Combo.d.ts +251 -0
  83. package/esm/renderers/Form/Combo.js +822 -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 +51 -0
  115. package/esm/renderers/Form/InputExcel.js +195 -0
  116. package/esm/renderers/Form/InputFile.d.ts +257 -0
  117. package/esm/renderers/Form/InputFile.js +937 -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 +677 -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 +133 -0
  145. package/esm/renderers/Form/InputText.js +632 -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 +140 -0
  167. package/esm/renderers/Form/Select.js +309 -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 +91 -0
  211. package/esm/renderers/Log.js +247 -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 +371 -0
  275. package/esm/renderers/Table/index.js +1539 -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 +921 -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 +72 -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 +4 -0
  321. package/lib/renderers/App.js +3 -3
  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 +752 -0
  331. package/lib/renderers/Calendar.js +1 -1
  332. package/lib/renderers/Card.js +1 -1
  333. package/lib/renderers/Card2.d.ts +1 -1
  334. package/lib/renderers/Card2.js +3 -3
  335. package/lib/renderers/Cards.d.ts +4 -0
  336. package/lib/renderers/Cards.js +49 -6
  337. package/lib/renderers/Carousel.js +1 -1
  338. package/lib/renderers/Chart.js +19 -3
  339. package/lib/renderers/Code.js +1 -1
  340. package/lib/renderers/Collapse.js +1 -1
  341. package/lib/renderers/CollapseGroup.js +1 -1
  342. package/lib/renderers/Color.js +1 -1
  343. package/lib/renderers/Container.js +1 -1
  344. package/lib/renderers/Copyable.js +1 -1
  345. package/lib/renderers/Custom.js +1 -1
  346. package/lib/renderers/Date.js +1 -1
  347. package/lib/renderers/Dialog.js +1 -1
  348. package/lib/renderers/Divider.js +1 -1
  349. package/lib/renderers/Drawer.js +1 -1
  350. package/lib/renderers/DropDownButton.js +3 -3
  351. package/lib/renderers/Each.js +1 -1
  352. package/lib/renderers/Flex.js +3 -2
  353. package/lib/renderers/Form/ButtonGroupSelect.js +2 -2
  354. package/lib/renderers/Form/ButtonToolbar.js +1 -1
  355. package/lib/renderers/Form/ChainedSelect.js +2 -2
  356. package/lib/renderers/Form/ChartRadios.js +1 -1
  357. package/lib/renderers/Form/Checkbox.js +1 -1
  358. package/lib/renderers/Form/Checkboxes.d.ts +5 -0
  359. package/lib/renderers/Form/Checkboxes.js +8 -3
  360. package/lib/renderers/Form/Combo.d.ts +1 -1
  361. package/lib/renderers/Form/Combo.js +4 -3
  362. package/lib/renderers/Form/ConditionBuilder.d.ts +10 -0
  363. package/lib/renderers/Form/ConditionBuilder.js +7 -3
  364. package/lib/renderers/Form/Control.js +1 -1
  365. package/lib/renderers/Form/DiffEditor.d.ts +705 -141
  366. package/lib/renderers/Form/DiffEditor.js +1 -1
  367. package/lib/renderers/Form/Editor.d.ts +701 -137
  368. package/lib/renderers/Form/Editor.js +1 -1
  369. package/lib/renderers/Form/FieldSet.js +1 -1
  370. package/lib/renderers/Form/Formula.js +1 -1
  371. package/lib/renderers/Form/Group.js +2 -2
  372. package/lib/renderers/Form/Hidden.js +1 -1
  373. package/lib/renderers/Form/IconPicker.js +1 -1
  374. package/lib/renderers/Form/IconPickerIcons.js +1 -1
  375. package/lib/renderers/Form/InputArray.js +1 -1
  376. package/lib/renderers/Form/InputCity.d.ts +40 -40
  377. package/lib/renderers/Form/InputCity.js +1 -1
  378. package/lib/renderers/Form/InputColor.js +1 -1
  379. package/lib/renderers/Form/InputDate.js +1 -1
  380. package/lib/renderers/Form/InputDateRange.js +1 -1
  381. package/lib/renderers/Form/InputExcel.js +1 -1
  382. package/lib/renderers/Form/InputFile.d.ts +5 -0
  383. package/lib/renderers/Form/InputFile.js +34 -15
  384. package/lib/renderers/Form/InputFormula.js +1 -1
  385. package/lib/renderers/Form/InputGroup.js +1 -1
  386. package/lib/renderers/Form/InputImage.js +27 -11
  387. package/lib/renderers/Form/InputMonthRange.js +1 -1
  388. package/lib/renderers/Form/InputNumber.js +1 -1
  389. package/lib/renderers/Form/InputQuarterRange.js +1 -1
  390. package/lib/renderers/Form/InputRange.d.ts +12 -5
  391. package/lib/renderers/Form/InputRange.js +1 -1
  392. package/lib/renderers/Form/InputRating.js +1 -1
  393. package/lib/renderers/Form/InputRepeat.js +1 -1
  394. package/lib/renderers/Form/InputRichText.js +1 -1
  395. package/lib/renderers/Form/InputSubForm.js +1 -1
  396. package/lib/renderers/Form/InputTable.js +2 -2
  397. package/lib/renderers/Form/InputTag.d.ts +34 -0
  398. package/lib/renderers/Form/InputTag.js +78 -40
  399. package/lib/renderers/Form/InputText.js +1 -1
  400. package/lib/renderers/Form/InputTree.d.ts +5 -2
  401. package/lib/renderers/Form/InputTree.js +7 -3
  402. package/lib/renderers/Form/InputYearRange.js +1 -1
  403. package/lib/renderers/Form/JSONSchema.js +1 -1
  404. package/lib/renderers/Form/JSONSchemaEditor.js +1 -1
  405. package/lib/renderers/Form/ListSelect.js +1 -1
  406. package/lib/renderers/Form/LocationPicker.js +1 -1
  407. package/lib/renderers/Form/MatrixCheckboxes.js +1 -1
  408. package/lib/renderers/Form/NestedSelect.js +4 -4
  409. package/lib/renderers/Form/Picker.js +1 -1
  410. package/lib/renderers/Form/Radios.d.ts +6 -1
  411. package/lib/renderers/Form/Radios.js +5 -3
  412. package/lib/renderers/Form/Select.js +1 -1
  413. package/lib/renderers/Form/Static.js +1 -1
  414. package/lib/renderers/Form/Switch.d.ts +3 -0
  415. package/lib/renderers/Form/Switch.js +3 -3
  416. package/lib/renderers/Form/TabsTransfer.js +1 -1
  417. package/lib/renderers/Form/TabsTransferPicker.js +1 -1
  418. package/lib/renderers/Form/Textarea.d.ts +2 -1
  419. package/lib/renderers/Form/Textarea.js +13 -2
  420. package/lib/renderers/Form/Transfer.js +1 -1
  421. package/lib/renderers/Form/TransferPicker.js +1 -1
  422. package/lib/renderers/Form/TreeSelect.js +4 -4
  423. package/lib/renderers/Form/UUID.js +1 -1
  424. package/lib/renderers/Form/UserSelect.js +3 -3
  425. package/lib/renderers/Grid.js +1 -1
  426. package/lib/renderers/Grid2D.js +1 -1
  427. package/lib/renderers/GridNav.js +1 -1
  428. package/lib/renderers/HBox.js +1 -1
  429. package/lib/renderers/IFrame.js +1 -1
  430. package/lib/renderers/Icon.d.ts +1 -1
  431. package/lib/renderers/Icon.js +11 -6
  432. package/lib/renderers/Image.js +1 -1
  433. package/lib/renderers/Images.js +1 -1
  434. package/lib/renderers/Json.d.ts +4 -0
  435. package/lib/renderers/Json.js +5 -4
  436. package/lib/renderers/Link.js +1 -1
  437. package/lib/renderers/List.d.ts +1 -0
  438. package/lib/renderers/List.js +30 -25
  439. package/lib/renderers/Log.js +1 -1
  440. package/lib/renderers/Mapping.js +1 -1
  441. package/lib/renderers/Markdown.js +1 -1
  442. package/lib/renderers/Nav.js +1 -1
  443. package/lib/renderers/Operation.js +1 -1
  444. package/lib/renderers/Page.js +1 -1
  445. package/lib/renderers/Pagination.js +1 -1
  446. package/lib/renderers/PaginationWrapper.js +2 -1
  447. package/lib/renderers/Panel.js +1 -1
  448. package/lib/renderers/Plain.js +1 -1
  449. package/lib/renderers/PopOver.js +4 -4
  450. package/lib/renderers/Portlet.js +1 -1
  451. package/lib/renderers/Progress.js +1 -1
  452. package/lib/renderers/Property.js +1 -1
  453. package/lib/renderers/QRCode.js +1 -1
  454. package/lib/renderers/QuickEdit.js +4 -3
  455. package/lib/renderers/Remark.js +1 -1
  456. package/lib/renderers/SearchBox.js +1 -1
  457. package/lib/renderers/Service.js +1 -1
  458. package/lib/renderers/SparkLine.js +1 -1
  459. package/lib/renderers/Spinner.js +1 -1
  460. package/lib/renderers/Status.js +1 -1
  461. package/lib/renderers/Steps.js +3 -2
  462. package/lib/renderers/Table/ColumnToggler.d.ts +4 -3
  463. package/lib/renderers/Table/ColumnToggler.js +4 -4
  464. package/lib/renderers/Table/HeadCellFilterDropdown.js +3 -3
  465. package/lib/renderers/Table/HeadCellSearchDropdown.js +4 -4
  466. package/lib/renderers/Table/ItemActionsWrapper.js +1 -1
  467. package/lib/renderers/Table/TableBody.js +1 -1
  468. package/lib/renderers/Table/TableCell.js +1 -1
  469. package/lib/renderers/Table/TableContent.js +1 -1
  470. package/lib/renderers/Table/TableRow.js +1 -1
  471. package/lib/renderers/Table/exportExcel.js +6 -6
  472. package/lib/renderers/Table/index.d.ts +2 -1
  473. package/lib/renderers/Table/index.js +24 -4
  474. package/lib/renderers/Table-v2/ColumnToggler.d.ts +18 -2
  475. package/lib/renderers/Table-v2/ColumnToggler.js +72 -2
  476. package/lib/renderers/Table-v2/HeadCellSearchDropdown.js +1 -1
  477. package/lib/renderers/Table-v2/TableCell.js +1 -1
  478. package/lib/renderers/Table-v2/index.d.ts +12 -10
  479. package/lib/renderers/Table-v2/index.js +125 -100
  480. package/lib/renderers/TableView.js +1 -1
  481. package/lib/renderers/Tabs.js +1 -1
  482. package/lib/renderers/Tag.js +1 -1
  483. package/lib/renderers/Tasks.js +1 -1
  484. package/lib/renderers/Timeline.js +1 -1
  485. package/lib/renderers/TooltipWrapper.js +3 -3
  486. package/lib/renderers/Tpl.js +1 -1
  487. package/lib/renderers/VBox.js +1 -1
  488. package/lib/renderers/Video.js +1 -1
  489. package/lib/renderers/WebComponent.js +1 -1
  490. package/lib/renderers/Wizard.d.ts +1 -1
  491. package/lib/renderers/Wizard.js +70 -75
  492. package/lib/renderers/Wrapper.js +1 -1
  493. package/lib/schemaExtend.js +1 -1
  494. package/lib/themes/ang-ie11.css +328 -250
  495. package/lib/themes/ang.css +341 -245
  496. package/lib/themes/antd-ie11.css +346 -268
  497. package/lib/themes/antd.css +345 -245
  498. package/lib/themes/cxd-ie11.css +349 -287
  499. package/lib/themes/cxd.css +356 -276
  500. package/lib/themes/dark-ie11.css +328 -250
  501. package/lib/themes/dark.css +341 -245
  502. package/lib/themes/default-ie11.css +349 -287
  503. package/lib/themes/default.css +356 -276
  504. package/lib/types.d.ts +1 -1
  505. package/package.json +15 -2
  506. package/schema.json +2494 -836
  507. package/sdk/ang-ie11.css +359 -64
  508. package/sdk/ang.css +372 -59
  509. package/sdk/antd-ie11.css +377 -82
  510. package/sdk/antd.css +376 -59
  511. package/sdk/barcode.js +50 -50
  512. package/sdk/charts.js +14 -14
  513. package/sdk/codemirror.js +7 -7
  514. package/sdk/color-picker.js +65 -65
  515. package/sdk/cropperjs.js +2 -2
  516. package/sdk/cxd-ie11.css +380 -106
  517. package/sdk/cxd.css +387 -95
  518. package/sdk/dark-ie11.css +359 -64
  519. package/sdk/dark.css +372 -59
  520. package/sdk/exceljs.js +1 -1
  521. package/sdk/helper.css +0 -1
  522. package/sdk/locale/de-DE.js +2 -1
  523. package/sdk/markdown.js +68 -68
  524. package/sdk/papaparse.js +1 -1
  525. package/sdk/rest.js +24 -24
  526. package/sdk/rich-text.js +62 -62
  527. package/sdk/sdk-ie11.css +380 -106
  528. package/sdk/sdk.css +387 -95
  529. package/sdk/sdk.js +1788 -1710
  530. package/sdk/thirds/hls.js/hls.js +1 -1
  531. package/sdk/thirds/mpegts.js/mpegts.js +1 -1
  532. package/sdk/tinymce.js +57 -57
@@ -0,0 +1,95 @@
1
+ /**
2
+ * amis v2.0.0
3
+ * Copyright 2018-2022 baidu
4
+ */
5
+
6
+ import { __extends, __decorate } from 'tslib';
7
+ import React from 'react';
8
+ import { resolveVariableAndFilter, visibilityFilter, buildStyle, Renderer } from 'amis-core';
9
+
10
+ /**
11
+ * @file 表格的方式显示只读信息,比如产品详情
12
+ */
13
+ var Property = /** @class */ (function (_super) {
14
+ __extends(Property, _super);
15
+ function Property(props) {
16
+ return _super.call(this, props) || this;
17
+ }
18
+ /**
19
+ * 算好每行的分布情况,方便后续渲染
20
+ */
21
+ Property.prototype.prepareRows = function () {
22
+ var _a = this.props, _b = _a.column, column = _b === void 0 ? 3 : _b, items = _a.items, source = _a.source, data = _a.data;
23
+ var propertyItems = (items
24
+ ? items
25
+ : resolveVariableAndFilter(source, data, '| raw')) || [];
26
+ var rows = [];
27
+ var row = [];
28
+ var columnLeft = column;
29
+ var index = 0;
30
+ var filteredItems = visibilityFilter(propertyItems, data);
31
+ for (var _i = 0, filteredItems_1 = filteredItems; _i < filteredItems_1.length; _i++) {
32
+ var item = filteredItems_1[_i];
33
+ index = index + 1;
34
+ var span = Math.min(item.span || 1, column);
35
+ columnLeft = columnLeft - span;
36
+ var rowItem = {
37
+ label: item.label,
38
+ content: item.content,
39
+ span: span
40
+ };
41
+ // 如果还能放得下就放这一行
42
+ if (columnLeft >= 0) {
43
+ row.push(rowItem);
44
+ }
45
+ else {
46
+ rows.push(row);
47
+ columnLeft = column - span;
48
+ row = [rowItem];
49
+ }
50
+ // 最后一行将最后的数据 push
51
+ if (index === filteredItems.length) {
52
+ rows.push(row);
53
+ }
54
+ }
55
+ return rows;
56
+ };
57
+ Property.prototype.renderRow = function (rows) {
58
+ var _a = this.props, render = _a.render, contentStyle = _a.contentStyle, labelStyle = _a.labelStyle, _b = _a.separator, separator = _b === void 0 ? ': ' : _b, _c = _a.mode, mode = _c === void 0 ? 'table' : _c, data = _a.data;
59
+ return rows.map(function (row, key) {
60
+ return (React.createElement("tr", { key: key }, row.map(function (property, index) {
61
+ return mode === 'table' ? (React.createElement(React.Fragment, { key: "item-".concat(index) },
62
+ React.createElement("th", { style: buildStyle(labelStyle, data) }, render('label', property.label)),
63
+ React.createElement("td", { colSpan: property.span + property.span - 1, style: buildStyle(contentStyle, data) }, render('content', property.content)))) : (React.createElement("td", { colSpan: property.span, style: buildStyle(contentStyle, data), key: "item-".concat(index) },
64
+ React.createElement("span", { style: buildStyle(labelStyle, data) }, render('label', property.label)),
65
+ separator,
66
+ render('content', property.content)));
67
+ })));
68
+ });
69
+ };
70
+ Property.prototype.render = function () {
71
+ var _a = this.props, style = _a.style, title = _a.title, _b = _a.column, column = _b === void 0 ? 3 : _b, cx = _a.classnames, className = _a.className, titleStyle = _a.titleStyle, data = _a.data, _c = _a.mode, mode = _c === void 0 ? 'table' : _c;
72
+ var rows = this.prepareRows();
73
+ return (React.createElement("div", { className: cx('Property', "Property--".concat(mode), className), style: buildStyle(style, data) },
74
+ React.createElement("table", null,
75
+ title ? (React.createElement("thead", null,
76
+ React.createElement("tr", null,
77
+ React.createElement("th", { colSpan: mode === 'table' ? column + column : column, style: buildStyle(titleStyle, data) }, title)))) : null,
78
+ React.createElement("tbody", null, this.renderRow(rows)))));
79
+ };
80
+ return Property;
81
+ }(React.Component));
82
+ /** @class */ ((function (_super) {
83
+ __extends(PropertyRenderer, _super);
84
+ function PropertyRenderer() {
85
+ return _super !== null && _super.apply(this, arguments) || this;
86
+ }
87
+ PropertyRenderer = __decorate([
88
+ Renderer({
89
+ type: 'property'
90
+ })
91
+ ], PropertyRenderer);
92
+ return PropertyRenderer;
93
+ })(Property));
94
+
95
+ export { Property as default };
@@ -0,0 +1,63 @@
1
+ import React from 'react';
2
+ import { FormControlProps } from 'amis-core';
3
+ import { BaseSchema, SchemaClassName } from '../Schema';
4
+ export interface QRCodeImageSettings {
5
+ src: string;
6
+ height: number;
7
+ width: number;
8
+ excavate: boolean;
9
+ x?: number;
10
+ y?: number;
11
+ }
12
+ /**
13
+ * 二维码展示控件。
14
+ * 文档:https://baidu.gitee.io/amis/docs/components/qrcode
15
+ */
16
+ export interface QRCodeSchema extends BaseSchema {
17
+ type: 'qrcode' | 'qr-code';
18
+ /**
19
+ * 关联字段名。
20
+ */
21
+ name?: string;
22
+ /**
23
+ * css 类名
24
+ */
25
+ qrcodeClassName?: SchemaClassName;
26
+ /**
27
+ * 二维码的宽高大小,默认 128
28
+ * @default 128
29
+ */
30
+ codeSize?: number;
31
+ /**
32
+ * 背景色
33
+ */
34
+ backgroundColor?: string;
35
+ /**
36
+ * 前景色
37
+ */
38
+ foregroundColor?: string;
39
+ /**
40
+ * 二维码复杂级别
41
+ */
42
+ level?: 'L' | 'M' | 'Q' | 'H';
43
+ /**
44
+ * 占位符
45
+ */
46
+ placeholder?: string;
47
+ /**
48
+ * 图片配置
49
+ */
50
+ imageSettings?: QRCodeImageSettings;
51
+ }
52
+ export interface QRCodeProps extends FormControlProps, Omit<QRCodeSchema, 'type' | 'className'> {
53
+ }
54
+ export default class QRCode extends React.Component<QRCodeProps, any> {
55
+ static defaultProps: Partial<QRCodeProps>;
56
+ /**
57
+ * 获取图片配置
58
+ */
59
+ getImageSettings(): QRCodeImageSettings | undefined;
60
+ render(): JSX.Element;
61
+ }
62
+ export declare class QRCodeRenderer extends QRCode {
63
+ }
@@ -0,0 +1,75 @@
1
+ /**
2
+ * amis v2.0.0
3
+ * Copyright 2018-2022 baidu
4
+ */
5
+
6
+ import { __extends, __decorate } from 'tslib';
7
+ import React from 'react';
8
+ import cx from 'classnames';
9
+ import { isObject, isPureVariable, resolveVariableAndFilter, isNumeric, getPropValue, filter, Renderer } from 'amis-core';
10
+ import { QRCodeSVG } from 'qrcode.react';
11
+ import mapValues from 'lodash/mapValues';
12
+
13
+ var QRCode = /** @class */ (function (_super) {
14
+ __extends(QRCode, _super);
15
+ function QRCode() {
16
+ return _super !== null && _super.apply(this, arguments) || this;
17
+ }
18
+ /**
19
+ * 获取图片配置
20
+ */
21
+ QRCode.prototype.getImageSettings = function () {
22
+ var _a = this.props, imageSettings = _a.imageSettings, data = _a.data;
23
+ if (!imageSettings ||
24
+ !isObject(imageSettings) ||
25
+ !imageSettings.src ||
26
+ typeof imageSettings.src !== 'string') {
27
+ return undefined;
28
+ }
29
+ if (isPureVariable(imageSettings.src)) {
30
+ imageSettings.src = resolveVariableAndFilter(imageSettings.src, data, '| raw');
31
+ }
32
+ return mapValues(imageSettings, function (value, key) {
33
+ if (!!~['width', 'height', 'x', 'y'].indexOf(key)) {
34
+ /** 处理非数字格式的输入,QRCodeSVG内部会对空值进行默认赋值 */
35
+ return isNumeric(value) ? Number(value) : null;
36
+ }
37
+ return value;
38
+ });
39
+ };
40
+ QRCode.prototype.render = function () {
41
+ var _a = this.props, className = _a.className, qrcodeClassName = _a.qrcodeClassName, codeSize = _a.codeSize, backgroundColor = _a.backgroundColor, foregroundColor = _a.foregroundColor, placeholder = _a.placeholder, level = _a.level, defaultValue = _a.defaultValue, data = _a.data, ns = _a.classPrefix;
42
+ var finalValue = getPropValue(this.props, function () { return filter(defaultValue, data, '| raw') || undefined; });
43
+ return (React.createElement("div", { className: cx("".concat(ns, "QrCode"), className) }, !finalValue ? (React.createElement("span", { className: "".concat(ns, "QrCode--placeholder") }, placeholder)) : finalValue.length > 2953 ? (
44
+ // https://github.com/zpao/qrcode.react/issues/69
45
+ React.createElement("span", { className: "text-danger" }, "\u4E8C\u7EF4\u7801\u503C\u8FC7\u957F\uFF0C\u8BF7\u8BBE\u7F6E2953\u4E2A\u5B57\u7B26\u4EE5\u4E0B\u7684\u6587\u672C")) : (React.createElement(QRCodeSVG
46
+ // @ts-ignore 其实是支持的
47
+ , {
48
+ // @ts-ignore 其实是支持的
49
+ className: qrcodeClassName, value: finalValue, size: codeSize, bgColor: backgroundColor, fgColor: foregroundColor, level: level || 'L', imageSettings: this.getImageSettings() }))));
50
+ };
51
+ QRCode.defaultProps = {
52
+ codeSize: 128,
53
+ qrcodeClassName: '',
54
+ backgroundColor: '#fff',
55
+ foregroundColor: '#000',
56
+ level: 'L',
57
+ placeholder: '-'
58
+ };
59
+ return QRCode;
60
+ }(React.Component));
61
+ /** @class */ ((function (_super) {
62
+ __extends(QRCodeRenderer, _super);
63
+ function QRCodeRenderer() {
64
+ return _super !== null && _super.apply(this, arguments) || this;
65
+ }
66
+ QRCodeRenderer = __decorate([
67
+ Renderer({
68
+ test: /(^|\/)qr\-?code$/,
69
+ name: 'qrcode'
70
+ })
71
+ ], QRCodeRenderer);
72
+ return QRCodeRenderer;
73
+ })(QRCode));
74
+
75
+ export { QRCode as default };
@@ -0,0 +1,65 @@
1
+ /**
2
+ * @file scoped.jsx.
3
+ * @author fex
4
+ */
5
+ import React from 'react';
6
+ import { RendererProps } from 'amis-core';
7
+ import { SchemaCollection, SchemaObject } from '../Schema';
8
+ export declare type SchemaQuickEditObject =
9
+ /**
10
+ * 直接就是个表单项
11
+ */
12
+ ({
13
+ /**
14
+ * 是否立即保存
15
+ */
16
+ saveImmediately?: boolean;
17
+ /**
18
+ * 接口保存失败后,是否重置组件编辑状态
19
+ */
20
+ resetOnFailed?: boolean;
21
+ /**
22
+ * 是否直接内嵌
23
+ */
24
+ mode?: 'inline';
25
+ } & SchemaObject)
26
+ /**
27
+ * 表单项集合
28
+ */
29
+ | {
30
+ /**
31
+ * 是否立即保存
32
+ */
33
+ saveImmediately?: boolean;
34
+ /**
35
+ * 接口保存失败后,是否重置组件编辑状态
36
+ */
37
+ resetOnFailed?: boolean;
38
+ /**
39
+ * 是否直接内嵌
40
+ */
41
+ mode?: 'inline';
42
+ body: SchemaCollection;
43
+ };
44
+ export declare type SchemaQuickEdit = boolean | SchemaQuickEditObject;
45
+ export interface QuickEditConfig {
46
+ saveImmediately?: boolean;
47
+ resetOnFailed?: boolean;
48
+ mode?: 'inline' | 'dialog' | 'popOver' | 'append';
49
+ type?: string;
50
+ body?: any;
51
+ focusable?: boolean;
52
+ popOverClassName?: string;
53
+ [propName: string]: any;
54
+ }
55
+ export interface QuickEditProps extends RendererProps {
56
+ name?: string;
57
+ label?: string;
58
+ quickEdit: boolean | QuickEditConfig;
59
+ quickEditEnabled?: boolean;
60
+ }
61
+ export interface QuickEditState {
62
+ isOpened: boolean;
63
+ }
64
+ export declare const HocQuickEdit: (config?: Partial<QuickEditConfig>) => (Component: React.ComponentType<any>) => any;
65
+ export default HocQuickEdit;
@@ -0,0 +1,337 @@
1
+ /**
2
+ * amis v2.0.0
3
+ * Copyright 2018-2022 baidu
4
+ */
5
+
6
+ import { __extends, __assign } from 'tslib';
7
+ import React from 'react';
8
+ import { findDOMNode } from 'react-dom';
9
+ import hoistNonReactStatic from 'hoist-non-react-statics';
10
+ import keycode from 'keycode';
11
+ import { Overlay, PopOver } from 'amis-core';
12
+ import { Icon } from 'amis-ui';
13
+
14
+ /**
15
+ * @file scoped.jsx.
16
+ * @author fex
17
+ */
18
+ var inited = false;
19
+ var currentOpened;
20
+ var HocQuickEdit = function (config) {
21
+ return function (Component) {
22
+ var QuickEditComponent = /** @class */ (function (_super) {
23
+ __extends(QuickEditComponent, _super);
24
+ function QuickEditComponent(props) {
25
+ var _this = _super.call(this, props) || this;
26
+ _this.openQuickEdit = _this.openQuickEdit.bind(_this);
27
+ _this.closeQuickEdit = _this.closeQuickEdit.bind(_this);
28
+ _this.handleAction = _this.handleAction.bind(_this);
29
+ _this.handleSubmit = _this.handleSubmit.bind(_this);
30
+ _this.handleKeyUp = _this.handleKeyUp.bind(_this);
31
+ _this.overlayRef = _this.overlayRef.bind(_this);
32
+ _this.handleWindowKeyPress = _this.handleWindowKeyPress.bind(_this);
33
+ _this.handleWindowKeyDown = _this.handleWindowKeyDown.bind(_this);
34
+ _this.formRef = _this.formRef.bind(_this);
35
+ _this.handleInit = _this.handleInit.bind(_this);
36
+ _this.handleChange = _this.handleChange.bind(_this);
37
+ _this.state = {
38
+ isOpened: false
39
+ };
40
+ return _this;
41
+ }
42
+ QuickEditComponent.prototype.componentDidMount = function () {
43
+ this.target = findDOMNode(this);
44
+ if (inited) {
45
+ return;
46
+ }
47
+ inited = true;
48
+ document.body.addEventListener('keypress', this.handleWindowKeyPress);
49
+ document.body.addEventListener('keydown', this.handleWindowKeyDown);
50
+ };
51
+ QuickEditComponent.prototype.formRef = function (ref) {
52
+ var _a = this.props, quickEditFormRef = _a.quickEditFormRef, rowIndex = _a.rowIndex, colIndex = _a.colIndex;
53
+ if (quickEditFormRef) {
54
+ while (ref && ref.getWrappedInstance) {
55
+ ref = ref.getWrappedInstance();
56
+ }
57
+ quickEditFormRef(ref, colIndex, rowIndex);
58
+ }
59
+ };
60
+ QuickEditComponent.prototype.handleWindowKeyPress = function (e) {
61
+ var ns = this.props.classPrefix;
62
+ var el = e.target.closest(".".concat(ns, "Field--quickEditable"));
63
+ if (!el) {
64
+ return;
65
+ }
66
+ var table = el.closest('table');
67
+ if (!table) {
68
+ return;
69
+ }
70
+ if (keycode(e) === 'space' &&
71
+ !~['INPUT', 'TEXTAREA'].indexOf(el.tagName)) {
72
+ e.preventDefault();
73
+ e.stopPropagation();
74
+ }
75
+ };
76
+ QuickEditComponent.prototype.handleWindowKeyDown = function (e) {
77
+ var code = keycode(e);
78
+ if (code === 'esc' && currentOpened) {
79
+ currentOpened.closeQuickEdit();
80
+ }
81
+ else if (~['INPUT', 'TEXTAREA'].indexOf(e.target.tagName) ||
82
+ e.target.contentEditable === 'true' ||
83
+ !~['up', 'down', 'left', 'right'].indexOf(code)) {
84
+ return;
85
+ }
86
+ e.preventDefault();
87
+ var ns = this.props.classPrefix;
88
+ var el = e.target.closest(".".concat(ns, "Field--quickEditable")) ||
89
+ document.querySelector(".".concat(ns, "Field--quickEditable"));
90
+ if (!el) {
91
+ return;
92
+ }
93
+ var table = el.closest('table');
94
+ if (!table) {
95
+ return;
96
+ }
97
+ var current = table.querySelector(".".concat(ns, "Field--quickEditable:focus"));
98
+ if (!current) {
99
+ var dom = table.querySelector(".".concat(ns, "Field--quickEditable[tabindex]"));
100
+ dom && dom.focus();
101
+ }
102
+ else {
103
+ var prevTr = void 0, nextTr = void 0, prevTd = void 0, nextTd = void 0;
104
+ switch (code) {
105
+ case 'up':
106
+ prevTr = current.parentNode
107
+ .previousSibling;
108
+ if (prevTr) {
109
+ var index = current.cellIndex;
110
+ prevTr.children[index].focus();
111
+ }
112
+ break;
113
+ case 'down':
114
+ nextTr = current.parentNode
115
+ .nextSibling;
116
+ if (nextTr) {
117
+ var index = current.cellIndex;
118
+ nextTr.children[index].focus();
119
+ }
120
+ break;
121
+ case 'left':
122
+ prevTd = current.previousElementSibling;
123
+ while (prevTd) {
124
+ if (prevTd.matches(".".concat(ns, "Field--quickEditable[tabindex]"))) {
125
+ break;
126
+ }
127
+ prevTd = prevTd.previousElementSibling;
128
+ }
129
+ if (prevTd) {
130
+ prevTd.focus();
131
+ }
132
+ else if (current.parentNode.previousSibling) {
133
+ var tds = current.parentNode
134
+ .previousSibling.querySelectorAll(".".concat(ns, "Field--quickEditable[tabindex]"));
135
+ if (tds.length) {
136
+ tds[tds.length - 1].focus();
137
+ }
138
+ }
139
+ break;
140
+ case 'right':
141
+ nextTd = current.nextSibling;
142
+ while (nextTd) {
143
+ if (nextTd.matches(".".concat(ns, "Field--quickEditable[tabindex]"))) {
144
+ break;
145
+ }
146
+ nextTd = nextTd.nextSibling;
147
+ }
148
+ if (nextTd) {
149
+ nextTd.focus();
150
+ }
151
+ else if (current.parentNode.nextSibling) {
152
+ nextTd = current.parentNode.nextSibling.querySelector(".".concat(ns, "Field--quickEditable[tabindex]"));
153
+ if (nextTd) {
154
+ nextTd.focus();
155
+ }
156
+ }
157
+ break;
158
+ }
159
+ }
160
+ };
161
+ // handleClickOutside() {
162
+ // this.closeQuickEdit();
163
+ // }
164
+ QuickEditComponent.prototype.overlayRef = function (ref) {
165
+ this.overlay = ref;
166
+ };
167
+ QuickEditComponent.prototype.handleAction = function (e, action, ctx) {
168
+ var onAction = this.props.onAction;
169
+ if (action.actionType === 'cancel' || action.actionType === 'close') {
170
+ this.closeQuickEdit();
171
+ return;
172
+ }
173
+ onAction && onAction(e, action, ctx);
174
+ };
175
+ QuickEditComponent.prototype.handleSubmit = function (values) {
176
+ var _a = this.props, onQuickChange = _a.onQuickChange, quickEdit = _a.quickEdit;
177
+ this.closeQuickEdit();
178
+ onQuickChange(values, quickEdit.saveImmediately, false, quickEdit.resetOnFailed);
179
+ return false;
180
+ };
181
+ QuickEditComponent.prototype.handleInit = function (values) {
182
+ var onQuickChange = this.props.onQuickChange;
183
+ onQuickChange(values, false, true);
184
+ };
185
+ QuickEditComponent.prototype.handleChange = function (values) {
186
+ var _a = this.props, onQuickChange = _a.onQuickChange, quickEdit = _a.quickEdit;
187
+ onQuickChange(values, quickEdit.saveImmediately, false, quickEdit.resetOnFailed);
188
+ };
189
+ QuickEditComponent.prototype.openQuickEdit = function () {
190
+ currentOpened = this;
191
+ this.setState({
192
+ isOpened: true
193
+ });
194
+ };
195
+ QuickEditComponent.prototype.closeQuickEdit = function () {
196
+ var _this = this;
197
+ if (!this.state.isOpened) {
198
+ return;
199
+ }
200
+ currentOpened = null;
201
+ var ns = this.props.classPrefix;
202
+ this.setState({
203
+ isOpened: false
204
+ }, function () {
205
+ var el = findDOMNode(_this);
206
+ var table = el.closest('table');
207
+ ((table &&
208
+ table.querySelectorAll("td.".concat(ns, "Field--quickEditable:focus"))
209
+ .length) ||
210
+ el) &&
211
+ el.focus();
212
+ });
213
+ };
214
+ QuickEditComponent.prototype.buildSchema = function () {
215
+ var _a = this.props, quickEdit = _a.quickEdit, name = _a.name, label = _a.label, __ = _a.translate;
216
+ var schema;
217
+ if (quickEdit === true) {
218
+ schema = {
219
+ type: 'form',
220
+ title: '',
221
+ autoFocus: true,
222
+ body: [
223
+ {
224
+ type: 'input-text',
225
+ name: name,
226
+ placeholder: label,
227
+ label: false
228
+ }
229
+ ]
230
+ };
231
+ }
232
+ else if (quickEdit) {
233
+ if (quickEdit.body &&
234
+ !~['combo', 'group', 'panel', 'fieldSet', 'fieldset'].indexOf(quickEdit.type)) {
235
+ schema = __assign(__assign({ title: '', autoFocus: quickEdit.mode !== 'inline' }, quickEdit), { mode: 'normal', type: 'form' });
236
+ }
237
+ else {
238
+ schema = {
239
+ title: '',
240
+ className: quickEdit.formClassName,
241
+ type: 'form',
242
+ autoFocus: quickEdit.mode !== 'inline',
243
+ mode: 'normal',
244
+ body: [
245
+ __assign(__assign({ type: quickEdit.type || 'input-text', name: quickEdit.name || name }, quickEdit), { mode: undefined })
246
+ ]
247
+ };
248
+ }
249
+ }
250
+ if (schema) {
251
+ schema = __assign(__assign({}, schema), { wrapWithPanel: quickEdit.mode !== 'inline', actions: quickEdit.mode === 'inline'
252
+ ? []
253
+ : [
254
+ {
255
+ type: 'button',
256
+ label: __('cancel'),
257
+ actionType: 'cancel'
258
+ },
259
+ {
260
+ label: __('confirm'),
261
+ type: 'submit',
262
+ primary: true
263
+ }
264
+ ] });
265
+ }
266
+ return schema || 'error';
267
+ };
268
+ QuickEditComponent.prototype.handleKeyUp = function (e) {
269
+ var code = keycode(e);
270
+ if (code === 'space' &&
271
+ !~['INPUT', 'TEXTAREA'].indexOf(e.target.tagName)) {
272
+ e.preventDefault();
273
+ e.stopPropagation();
274
+ this.openQuickEdit();
275
+ }
276
+ };
277
+ QuickEditComponent.prototype.renderPopOver = function () {
278
+ var _this = this;
279
+ var _a = this.props, quickEdit = _a.quickEdit, render = _a.render, popOverContainer = _a.popOverContainer, ns = _a.classPrefix, cx = _a.classnames, canAccessSuperData = _a.canAccessSuperData;
280
+ var content = (React.createElement("div", { ref: this.overlayRef, className: cx(quickEdit.className) }, render('quick-edit-form', this.buildSchema(), {
281
+ value: undefined,
282
+ onSubmit: this.handleSubmit,
283
+ onAction: this.handleAction,
284
+ onChange: null,
285
+ formLazyChange: false,
286
+ ref: this.formRef,
287
+ popOverContainer: function () { return _this.overlay; },
288
+ canAccessSuperData: canAccessSuperData,
289
+ formStore: undefined
290
+ })));
291
+ popOverContainer = popOverContainer || (function () { return findDOMNode(_this); });
292
+ return (React.createElement(Overlay, { container: popOverContainer, target: function () { return _this.target; }, onHide: this.closeQuickEdit, placement: "left-top right-top left-bottom right-bottom left-top", show: true },
293
+ React.createElement(PopOver, { classPrefix: ns, className: cx("".concat(ns, "QuickEdit-popover"), quickEdit.popOverClassName), onHide: this.closeQuickEdit, overlay: true }, content)));
294
+ };
295
+ QuickEditComponent.prototype.render = function () {
296
+ var _a = this.props, onQuickChange = _a.onQuickChange, quickEdit = _a.quickEdit, quickEditEnabled = _a.quickEditEnabled, className = _a.className, cx = _a.classnames, render = _a.render, noHoc = _a.noHoc, canAccessSuperData = _a.canAccessSuperData, disabled = _a.disabled;
297
+ if (!quickEdit ||
298
+ !onQuickChange ||
299
+ quickEditEnabled === false ||
300
+ noHoc ||
301
+ disabled) {
302
+ return React.createElement(Component, __assign({}, this.props));
303
+ }
304
+ if (quickEdit.mode === 'inline') {
305
+ return (React.createElement(Component, __assign({}, this.props), render('inline-form', this.buildSchema(), {
306
+ value: undefined,
307
+ wrapperComponent: 'div',
308
+ className: cx('Form--quickEdit'),
309
+ ref: this.formRef,
310
+ simpleMode: true,
311
+ onInit: this.handleInit,
312
+ onChange: this.handleChange,
313
+ formLazyChange: false,
314
+ canAccessSuperData: canAccessSuperData
315
+ })));
316
+ }
317
+ else {
318
+ return (React.createElement(Component, __assign({}, this.props, { className: cx("Field--quickEditable", className, {
319
+ in: this.state.isOpened
320
+ }), tabIndex: quickEdit.focusable === false
321
+ ? undefined
322
+ : '0', onKeyUp: this.handleKeyUp }),
323
+ React.createElement(Component, __assign({}, this.props, { wrapperComponent: '', noHoc: true })),
324
+ React.createElement("span", { key: "edit-btn", className: cx('Field-quickEditBtn'), onClick: this.openQuickEdit },
325
+ React.createElement(Icon, { icon: "edit", className: "icon" })),
326
+ this.state.isOpened ? this.renderPopOver() : null));
327
+ }
328
+ };
329
+ QuickEditComponent.ComposedComponent = Component;
330
+ return QuickEditComponent;
331
+ }(React.PureComponent));
332
+ hoistNonReactStatic(QuickEditComponent, Component);
333
+ return QuickEditComponent;
334
+ };
335
+ };
336
+
337
+ export { HocQuickEdit, HocQuickEdit as default };