amis 1.4.1 → 1.4.2-beta.13

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (516) hide show
  1. package/README.md +1 -1
  2. package/lib/Schema.d.ts +26 -2
  3. package/lib/Schema.js.map +1 -1
  4. package/lib/components/Alert.js +3 -1
  5. package/lib/components/Alert.js.map +2 -2
  6. package/lib/components/AnchorNav.d.ts +22 -21
  7. package/lib/components/AnchorNav.js +7 -3
  8. package/lib/components/AnchorNav.js.map +2 -2
  9. package/lib/components/ArrayInput.d.ts +84 -84
  10. package/lib/components/AssociatedSelection.d.ts +930 -0
  11. package/lib/components/AssociatedSelection.js +89 -0
  12. package/lib/components/AssociatedSelection.js.map +13 -0
  13. package/lib/components/Badge.d.ts +2 -2
  14. package/lib/components/Badge.js +13 -7
  15. package/lib/components/Badge.js.map +2 -2
  16. package/lib/components/{ChainedCheckboxes.d.ts → ChainedSelection.d.ts} +267 -98
  17. package/lib/components/{ChainedCheckboxes.js → ChainedSelection.js} +30 -24
  18. package/lib/components/ChainedSelection.js.map +13 -0
  19. package/lib/components/Collapse.js +1 -1
  20. package/lib/components/Collapse.js.map +2 -2
  21. package/lib/components/ColorPicker.d.ts +84 -84
  22. package/lib/components/DatePicker.d.ts +84 -84
  23. package/lib/components/DatePicker.js +1 -1
  24. package/lib/components/DatePicker.js.map +2 -2
  25. package/lib/components/DateRangePicker.d.ts +84 -84
  26. package/lib/components/DateRangePicker.js +1 -1
  27. package/lib/components/DateRangePicker.js.map +2 -2
  28. package/lib/components/Editor.d.ts +84 -84
  29. package/lib/components/GroupedSelection.d.ts +907 -0
  30. package/lib/components/GroupedSelection.js +48 -0
  31. package/lib/components/GroupedSelection.js.map +13 -0
  32. package/lib/components/InputBox.d.ts +22 -21
  33. package/lib/components/InputBox.js +11 -3
  34. package/lib/components/InputBox.js.map +2 -2
  35. package/lib/components/Link.d.ts +84 -0
  36. package/lib/components/Link.js +43 -0
  37. package/lib/components/Link.js.map +13 -0
  38. package/lib/components/ListGroup.d.ts +21 -21
  39. package/lib/components/ModalManager.js +1 -1
  40. package/lib/components/ModalManager.js.map +2 -2
  41. package/lib/components/MonthRangePicker.d.ts +84 -84
  42. package/lib/components/MonthRangePicker.js +1 -1
  43. package/lib/components/MonthRangePicker.js.map +2 -2
  44. package/lib/components/NumberInput.d.ts +20 -20
  45. package/lib/components/PickerColumn.d.ts +514 -0
  46. package/lib/components/PickerColumn.js +279 -0
  47. package/lib/components/PickerColumn.js.map +13 -0
  48. package/lib/components/PickerContainer.d.ts +513 -0
  49. package/lib/components/PickerContainer.js +96 -0
  50. package/lib/components/PickerContainer.js.map +13 -0
  51. package/lib/components/Radios.d.ts +22 -21
  52. package/lib/components/Radios.js +1 -0
  53. package/lib/components/Radios.js.map +2 -2
  54. package/lib/components/Rating.d.ts +21 -21
  55. package/lib/components/ResultBox.d.ts +84 -84
  56. package/lib/components/ResultBox.js +10 -2
  57. package/lib/components/ResultBox.js.map +2 -2
  58. package/lib/components/RichText.js +17 -53
  59. package/lib/components/RichText.js.map +2 -2
  60. package/lib/components/SearchBox.d.ts +84 -84
  61. package/lib/components/SearchBox.js +4 -4
  62. package/lib/components/SearchBox.js.map +2 -2
  63. package/lib/components/Select.d.ts +245 -237
  64. package/lib/components/Select.js +28 -4
  65. package/lib/components/Select.js.map +2 -2
  66. package/lib/components/{Checkboxes.d.ts → Selection.d.ts} +273 -98
  67. package/lib/components/Selection.js +134 -0
  68. package/lib/components/Selection.js.map +13 -0
  69. package/lib/components/SparkLine.d.ts +85 -84
  70. package/lib/components/SparkLine.js +2 -2
  71. package/lib/components/SparkLine.js.map +2 -2
  72. package/lib/components/{TableCheckboxes.d.ts → TableSelection.d.ts} +266 -96
  73. package/lib/components/{TableCheckboxes.js → TableSelection.js} +30 -30
  74. package/lib/components/TableSelection.js.map +13 -0
  75. package/lib/components/Tabs.d.ts +20 -20
  76. package/lib/components/TabsTransfer.d.ts +84 -84
  77. package/lib/components/TabsTransfer.js +9 -9
  78. package/lib/components/TabsTransfer.js.map +2 -2
  79. package/lib/components/TabsTransferPicker.d.ts +489 -0
  80. package/lib/components/TabsTransferPicker.js +60 -0
  81. package/lib/components/TabsTransferPicker.js.map +13 -0
  82. package/lib/components/Toast.js +2 -2
  83. package/lib/components/Toast.js.map +2 -2
  84. package/lib/components/Transfer.d.ts +908 -274
  85. package/lib/components/Transfer.js +31 -24
  86. package/lib/components/Transfer.js.map +2 -2
  87. package/lib/components/TransferDropDown.d.ts +488 -0
  88. package/lib/components/TransferDropDown.js +59 -0
  89. package/lib/components/TransferDropDown.js.map +13 -0
  90. package/lib/components/TransferPicker.d.ts +493 -0
  91. package/lib/components/TransferPicker.js +60 -0
  92. package/lib/components/TransferPicker.js.map +13 -0
  93. package/lib/components/Tree.d.ts +84 -84
  94. package/lib/components/Tree.js +5 -3
  95. package/lib/components/Tree.js.map +2 -2
  96. package/lib/components/{TreeCheckboxes.d.ts → TreeSelection.d.ts} +269 -99
  97. package/lib/components/{TreeCheckboxes.js → TreeSelection.js} +36 -32
  98. package/lib/components/TreeSelection.js.map +13 -0
  99. package/lib/components/WithRemoteConfig.js +1 -1
  100. package/lib/components/WithRemoteConfig.js.map +2 -2
  101. package/lib/components/condition-builder/Field.js +5 -2
  102. package/lib/components/condition-builder/Field.js.map +2 -2
  103. package/lib/components/condition-builder/Func.js +2 -2
  104. package/lib/components/condition-builder/Func.js.map +2 -2
  105. package/lib/components/condition-builder/InputSwitch.js +2 -2
  106. package/lib/components/condition-builder/InputSwitch.js.map +2 -2
  107. package/lib/components/condition-builder/Item.js +3 -3
  108. package/lib/components/condition-builder/Item.js.map +2 -2
  109. package/lib/components/icons.js +14 -0
  110. package/lib/components/icons.js.map +2 -2
  111. package/lib/components/index.d.ts +8 -8
  112. package/lib/components/index.js +16 -16
  113. package/lib/components/index.js.map +2 -2
  114. package/lib/envOverwrite.js.map +2 -2
  115. package/lib/factory.d.ts +4 -0
  116. package/lib/factory.js +4 -2
  117. package/lib/factory.js.map +2 -2
  118. package/lib/helper.css.map +1 -1
  119. package/lib/hooks/index.d.ts +5 -0
  120. package/lib/hooks/index.js +14 -0
  121. package/lib/hooks/index.js.map +13 -0
  122. package/lib/hooks/use-set-state.d.ts +2 -0
  123. package/lib/hooks/use-set-state.js +15 -0
  124. package/lib/hooks/use-set-state.js.map +13 -0
  125. package/lib/hooks/use-touch.d.ts +16 -0
  126. package/lib/hooks/use-touch.js +73 -0
  127. package/lib/hooks/use-touch.js.map +13 -0
  128. package/lib/hooks/use-update-effect.d.ts +3 -0
  129. package/lib/hooks/use-update-effect.js +17 -0
  130. package/lib/hooks/use-update-effect.js.map +13 -0
  131. package/lib/icons/clock.js +10 -0
  132. package/lib/icons/download.js +7 -0
  133. package/lib/icons/status-close.js +11 -0
  134. package/lib/icons/status-fail.js +11 -0
  135. package/lib/icons/status-info.js +10 -0
  136. package/lib/icons/status-success.js +11 -0
  137. package/lib/icons/status-warning.js +10 -0
  138. package/lib/index.d.ts +3 -0
  139. package/lib/index.js +4 -1
  140. package/lib/index.js.map +2 -2
  141. package/lib/locale/de-DE.js +4 -0
  142. package/lib/locale/de-DE.js.map +2 -2
  143. package/lib/locale/en-US.js +5 -0
  144. package/lib/locale/en-US.js.map +2 -2
  145. package/lib/locale/zh-CN.js +8 -3
  146. package/lib/locale/zh-CN.js.map +2 -2
  147. package/lib/renderers/Action.d.ts +8 -0
  148. package/lib/renderers/Action.js +17 -4
  149. package/lib/renderers/Action.js.map +2 -2
  150. package/lib/renderers/AnchorNav.d.ts +1 -0
  151. package/lib/renderers/AnchorNav.js +2 -2
  152. package/lib/renderers/AnchorNav.js.map +2 -2
  153. package/lib/renderers/Avatar.js +3 -3
  154. package/lib/renderers/Avatar.js.map +2 -2
  155. package/lib/renderers/Breadcrumb.js +1 -1
  156. package/lib/renderers/Breadcrumb.js.map +2 -2
  157. package/lib/renderers/CRUD.d.ts +9 -0
  158. package/lib/renderers/CRUD.js +43 -8
  159. package/lib/renderers/CRUD.js.map +2 -2
  160. package/lib/renderers/Card.d.ts +4 -0
  161. package/lib/renderers/Card.js +29 -23
  162. package/lib/renderers/Card.js.map +2 -2
  163. package/lib/renderers/Chart.js +1 -1
  164. package/lib/renderers/Chart.js.map +2 -2
  165. package/lib/renderers/Collapse.js +3 -2
  166. package/lib/renderers/Collapse.js.map +2 -2
  167. package/lib/renderers/Dialog.js +0 -3
  168. package/lib/renderers/Dialog.js.map +2 -2
  169. package/lib/renderers/Drawer.js +0 -3
  170. package/lib/renderers/Drawer.js.map +2 -2
  171. package/lib/renderers/DropDownButton.d.ts +5 -1
  172. package/lib/renderers/DropDownButton.js +8 -6
  173. package/lib/renderers/DropDownButton.js.map +2 -2
  174. package/lib/renderers/Form/Checkbox.d.ts +5 -0
  175. package/lib/renderers/Form/Checkbox.js +4 -0
  176. package/lib/renderers/Form/Checkbox.js.map +2 -2
  177. package/lib/renderers/Form/Combo.js +2 -2
  178. package/lib/renderers/Form/Combo.js.map +2 -2
  179. package/lib/renderers/Form/DiffEditor.d.ts +4 -3
  180. package/lib/renderers/Form/Editor.d.ts +3 -2
  181. package/lib/renderers/Form/InputCity.d.ts +84 -84
  182. package/lib/renderers/Form/InputCity.js +7 -6
  183. package/lib/renderers/Form/InputCity.js.map +2 -2
  184. package/lib/renderers/Form/InputColor.d.ts +84 -84
  185. package/lib/renderers/Form/InputFile.d.ts +6 -0
  186. package/lib/renderers/Form/InputFile.js +30 -10
  187. package/lib/renderers/Form/InputFile.js.map +2 -2
  188. package/lib/renderers/Form/InputImage.js +16 -7
  189. package/lib/renderers/Form/InputImage.js.map +2 -2
  190. package/lib/renderers/Form/Item.d.ts +1 -1
  191. package/lib/renderers/Form/Item.js.map +1 -1
  192. package/lib/renderers/Form/Options.js +19 -6
  193. package/lib/renderers/Form/Options.js.map +2 -2
  194. package/lib/renderers/Form/Picker.js +2 -2
  195. package/lib/renderers/Form/Picker.js.map +2 -2
  196. package/lib/renderers/Form/Select.d.ts +42 -4
  197. package/lib/renderers/Form/Select.js +37 -3
  198. package/lib/renderers/Form/Select.js.map +2 -2
  199. package/lib/renderers/Form/TabsTransferPicker.d.ts +48 -0
  200. package/lib/renderers/Form/TabsTransferPicker.js +29 -0
  201. package/lib/renderers/Form/TabsTransferPicker.js.map +13 -0
  202. package/lib/renderers/Form/Transfer.js +18 -3
  203. package/lib/renderers/Form/Transfer.js.map +2 -2
  204. package/lib/renderers/Form/TransferPicker.d.ts +52 -0
  205. package/lib/renderers/Form/TransferPicker.js +43 -0
  206. package/lib/renderers/Form/TransferPicker.js.map +13 -0
  207. package/lib/renderers/Form/TreeSelect.js +2 -2
  208. package/lib/renderers/Form/TreeSelect.js.map +2 -2
  209. package/lib/renderers/Form/index.d.ts +5 -0
  210. package/lib/renderers/Form/index.js +5 -3
  211. package/lib/renderers/Form/index.js.map +2 -2
  212. package/lib/renderers/Form/wrapControl.js +15 -3
  213. package/lib/renderers/Form/wrapControl.js.map +2 -2
  214. package/lib/renderers/IFrame.js +3 -5
  215. package/lib/renderers/IFrame.js.map +2 -2
  216. package/lib/renderers/Image.d.ts +1 -0
  217. package/lib/renderers/Image.js +15 -1
  218. package/lib/renderers/Image.js.map +2 -2
  219. package/lib/renderers/Json.d.ts +4 -0
  220. package/lib/renderers/Json.js +4 -13
  221. package/lib/renderers/Json.js.map +2 -2
  222. package/lib/renderers/Link.d.ts +18 -3
  223. package/lib/renderers/Link.js +27 -15
  224. package/lib/renderers/Link.js.map +2 -2
  225. package/lib/renderers/List.js +1 -1
  226. package/lib/renderers/List.js.map +2 -2
  227. package/lib/renderers/Log.d.ts +2 -2
  228. package/lib/renderers/Log.js +7 -1
  229. package/lib/renderers/Log.js.map +2 -2
  230. package/lib/renderers/Mapping.d.ts +9 -2
  231. package/lib/renderers/Mapping.js +18 -6
  232. package/lib/renderers/Mapping.js.map +2 -2
  233. package/lib/renderers/Nav.d.ts +62 -36
  234. package/lib/renderers/Nav.js +272 -96
  235. package/lib/renderers/Nav.js.map +2 -2
  236. package/lib/renderers/Portlet.d.ts +125 -0
  237. package/lib/renderers/Portlet.js +156 -0
  238. package/lib/renderers/Portlet.js.map +13 -0
  239. package/lib/renderers/Property.js +2 -1
  240. package/lib/renderers/Property.js.map +2 -2
  241. package/lib/renderers/SearchBox.d.ts +6 -1
  242. package/lib/renderers/SearchBox.js +19 -5
  243. package/lib/renderers/SearchBox.js.map +2 -2
  244. package/lib/renderers/SparkLine.d.ts +4 -0
  245. package/lib/renderers/SparkLine.js.map +2 -2
  246. package/lib/renderers/Table/ColumnToggler.d.ts +113 -0
  247. package/lib/renderers/Table/ColumnToggler.js +216 -0
  248. package/lib/renderers/Table/ColumnToggler.js.map +13 -0
  249. package/lib/renderers/Table/ItemActionsWrapper.d.ts +11 -0
  250. package/lib/renderers/Table/ItemActionsWrapper.js +31 -0
  251. package/lib/renderers/Table/ItemActionsWrapper.js.map +13 -0
  252. package/lib/renderers/Table/TableBody.d.ts +4 -0
  253. package/lib/renderers/Table/TableCell.js +3 -1
  254. package/lib/renderers/Table/TableCell.js.map +2 -2
  255. package/lib/renderers/Table/TableContent.d.ts +4 -1
  256. package/lib/renderers/Table/TableContent.js +21 -1
  257. package/lib/renderers/Table/TableContent.js.map +2 -2
  258. package/lib/renderers/Table/index.d.ts +19 -2
  259. package/lib/renderers/Table/index.js +172 -57
  260. package/lib/renderers/Table/index.js.map +2 -2
  261. package/lib/renderers/Tabs.js +9 -1
  262. package/lib/renderers/Tabs.js.map +2 -2
  263. package/lib/renderers/WebComponent.js +1 -1
  264. package/lib/renderers/WebComponent.js.map +2 -2
  265. package/lib/store/combo.d.ts +2 -16
  266. package/lib/store/crud.js +3 -7
  267. package/lib/store/crud.js.map +2 -2
  268. package/lib/store/form.d.ts +1 -1
  269. package/lib/store/form.js +5 -6
  270. package/lib/store/form.js.map +2 -2
  271. package/lib/store/service.js +5 -4
  272. package/lib/store/service.js.map +2 -2
  273. package/lib/store/table.d.ts +260 -3
  274. package/lib/store/table.js +69 -11
  275. package/lib/store/table.js.map +2 -2
  276. package/lib/themes/ang-ie11.css +888 -238
  277. package/lib/themes/ang.css +888 -238
  278. package/lib/themes/ang.css.map +1 -1
  279. package/lib/themes/antd-ie11.css +888 -238
  280. package/lib/themes/antd.css +888 -238
  281. package/lib/themes/antd.css.map +1 -1
  282. package/lib/themes/cxd-ie11.css +1446 -457
  283. package/lib/themes/cxd.css +1446 -457
  284. package/lib/themes/cxd.css.map +1 -1
  285. package/lib/themes/dark-ie11.css +888 -238
  286. package/lib/themes/dark.css +888 -238
  287. package/lib/themes/dark.css.map +1 -1
  288. package/lib/themes/default.css +1446 -457
  289. package/lib/themes/default.css.map +1 -1
  290. package/lib/types.d.ts +37 -0
  291. package/lib/types.js +0 -5
  292. package/lib/types.js.map +2 -2
  293. package/lib/utils/api.d.ts +3 -2
  294. package/lib/utils/api.js +31 -15
  295. package/lib/utils/api.js.map +2 -2
  296. package/lib/utils/dom.d.ts +4 -0
  297. package/lib/utils/dom.js +11 -1
  298. package/lib/utils/dom.js.map +2 -2
  299. package/lib/utils/handleAction.d.ts +7 -0
  300. package/lib/utils/handleAction.js +30 -0
  301. package/lib/utils/handleAction.js.map +13 -0
  302. package/lib/utils/helper.d.ts +3 -1
  303. package/lib/utils/helper.js +14 -5
  304. package/lib/utils/helper.js.map +2 -2
  305. package/lib/utils/icon.js +3 -0
  306. package/lib/utils/icon.js.map +2 -2
  307. package/lib/utils/tpl-builtin.d.ts +1 -1
  308. package/lib/utils/tpl-builtin.js +25 -15
  309. package/lib/utils/tpl-builtin.js.map +2 -2
  310. package/package.json +1 -1
  311. package/schema.json +3341 -998
  312. package/scss/_mixins.scss +1 -3
  313. package/scss/_properties.scss +63 -4
  314. package/scss/_utilities.scss +4 -0
  315. package/scss/base/_common.scss +3 -0
  316. package/scss/base/_normalize.scss +2 -0
  317. package/scss/components/_anchor-nav.scss +88 -29
  318. package/scss/components/_button.scss +4 -5
  319. package/scss/components/_card.scss +8 -14
  320. package/scss/components/_collapse.scss +41 -8
  321. package/scss/components/_column-toggler.scss +234 -0
  322. package/scss/components/_dropdown.scss +2 -1
  323. package/scss/components/_images.scss +2 -1
  324. package/scss/components/_input-box.scss +1 -0
  325. package/scss/components/_link.scss +6 -0
  326. package/scss/components/_mapping.scss +6 -0
  327. package/scss/components/_nav.scss +231 -223
  328. package/scss/components/_page.scss +5 -4
  329. package/scss/components/_picker-columns.scss +124 -0
  330. package/scss/components/_popover.scss +13 -0
  331. package/scss/components/_portlet.scss +51 -0
  332. package/scss/components/_progress.scss +2 -0
  333. package/scss/components/_result-box.scss +1 -0
  334. package/scss/components/_status.scss +1 -1
  335. package/scss/components/_steps.scss +1 -1
  336. package/scss/components/_table.scss +51 -1
  337. package/scss/components/form/_checks.scss +0 -351
  338. package/scss/components/form/_color.scss +1 -0
  339. package/scss/components/form/_date-range.scss +2 -0
  340. package/scss/components/form/_date.scss +2 -0
  341. package/scss/components/form/_fieldset.scss +6 -3
  342. package/scss/components/form/_file.scss +16 -4
  343. package/scss/components/form/_form.scss +48 -0
  344. package/scss/components/form/_image.scss +7 -2
  345. package/scss/components/form/_list.scss +1 -0
  346. package/scss/components/form/_location.scss +1 -1
  347. package/scss/components/form/_selection.scss +354 -0
  348. package/scss/components/form/_text.scss +13 -0
  349. package/scss/components/form/_textarea.scss +10 -0
  350. package/scss/components/form/_transfer.scss +77 -18
  351. package/scss/themes/_common.scss +7 -0
  352. package/scss/themes/_cxd-colors.scss +56 -0
  353. package/scss/themes/_cxd-variables.scss +217 -89
  354. package/scss/themes/cxd.scss +370 -0
  355. package/sdk/ang-ie11.css +1117 -392
  356. package/sdk/ang.css +1110 -342
  357. package/sdk/antd-ie11.css +1105 -380
  358. package/sdk/antd.css +1110 -342
  359. package/sdk/charts.js +13 -13
  360. package/sdk/color-picker.js +65 -69
  361. package/sdk/cropperjs.js +2 -2
  362. package/sdk/cxd-ie11.css +2086 -1062
  363. package/sdk/cxd.css +1643 -495
  364. package/sdk/dark-ie11.css +1117 -392
  365. package/sdk/dark.css +1110 -342
  366. package/sdk/exceljs.js +1 -1
  367. package/sdk/helper.css.map +1 -1
  368. package/sdk/iconfont.svg +2513 -0
  369. package/sdk/iconfont.ttf +0 -0
  370. package/sdk/iconfont.woff +0 -0
  371. package/sdk/ie11-patch.css +1 -0
  372. package/sdk/locale/de-DE.js +4 -0
  373. package/sdk/markdown.js +69 -69
  374. package/sdk/papaparse.js +1 -1
  375. package/sdk/renderers/Form/CityDB.js +1 -1
  376. package/sdk/rest.js +20 -28
  377. package/sdk/rich-text.js +62 -62
  378. package/sdk/sdk-ie11.css +2086 -1062
  379. package/sdk/sdk.css +1643 -495
  380. package/sdk/sdk.js +1219 -1165
  381. package/sdk/thirds/hls.js/hls.js +1 -1
  382. package/sdk/thirds/mpegts.js/mpegts.js +1 -1
  383. package/sdk/tinymce.js +57 -57
  384. package/src/Schema.ts +32 -0
  385. package/src/components/Alert.tsx +3 -1
  386. package/src/components/AnchorNav.tsx +15 -4
  387. package/src/components/{AssociatedCheckboxes.tsx → AssociatedSelection.tsx} +41 -37
  388. package/src/components/Badge.tsx +38 -26
  389. package/src/components/{ChainedCheckboxes.tsx → ChainedSelection.tsx} +57 -40
  390. package/src/components/Collapse.tsx +14 -9
  391. package/src/components/DatePicker.tsx +1 -1
  392. package/src/components/DateRangePicker.tsx +23 -11
  393. package/src/components/{ListCheckboxes.tsx → GroupedSelection.tsx} +26 -21
  394. package/src/components/InputBox.tsx +11 -10
  395. package/src/components/Link.tsx +85 -0
  396. package/src/components/ModalManager.ts +1 -1
  397. package/src/components/MonthRangePicker.tsx +10 -2
  398. package/src/components/PickerColumn.tsx +429 -0
  399. package/src/components/PickerContainer.tsx +128 -0
  400. package/src/components/Radios.tsx +3 -8
  401. package/src/components/ResultBox.tsx +9 -9
  402. package/src/components/RichText.tsx +17 -57
  403. package/src/components/SearchBox.tsx +4 -5
  404. package/src/components/Select.tsx +60 -5
  405. package/src/components/{Checkboxes.tsx → Selection.tsx} +75 -21
  406. package/src/components/SparkLine.tsx +4 -1
  407. package/src/components/{TableCheckboxes.tsx → TableSelection.tsx} +46 -25
  408. package/src/components/TabsTransfer.tsx +13 -7
  409. package/src/components/TabsTransferPicker.tsx +85 -0
  410. package/src/components/Toast.tsx +5 -5
  411. package/src/components/Transfer.tsx +71 -50
  412. package/src/components/TransferDropDown.tsx +120 -0
  413. package/src/components/TransferPicker.tsx +91 -0
  414. package/src/components/Tree.tsx +6 -8
  415. package/src/components/{TreeCheckboxes.tsx → TreeSelection.tsx} +33 -26
  416. package/src/components/WithRemoteConfig.tsx +7 -2
  417. package/src/components/condition-builder/Field.tsx +5 -5
  418. package/src/components/condition-builder/Func.tsx +3 -3
  419. package/src/components/condition-builder/InputSwitch.tsx +3 -3
  420. package/src/components/condition-builder/Item.tsx +5 -12
  421. package/src/components/icons.tsx +15 -0
  422. package/src/components/index.tsx +13 -13
  423. package/src/envOverwrite.ts +0 -1
  424. package/src/factory.tsx +18 -3
  425. package/src/hooks/index.ts +5 -0
  426. package/src/hooks/use-set-state.ts +19 -0
  427. package/src/hooks/use-touch.ts +100 -0
  428. package/src/hooks/use-update-effect.ts +16 -0
  429. package/src/icons/clock.svg +1 -0
  430. package/src/icons/download.svg +4 -0
  431. package/src/icons/status-close.svg +10 -0
  432. package/src/icons/status-fail.svg +10 -0
  433. package/src/icons/status-info.svg +8 -0
  434. package/src/icons/status-success.svg +10 -0
  435. package/src/icons/status-warning.svg +8 -0
  436. package/src/index.tsx +3 -0
  437. package/src/locale/de-DE.ts +4 -0
  438. package/src/locale/en-US.ts +5 -0
  439. package/src/locale/zh-CN.ts +8 -3
  440. package/src/renderers/Action.tsx +33 -2
  441. package/src/renderers/AnchorNav.tsx +4 -0
  442. package/src/renderers/Avatar.tsx +8 -4
  443. package/src/renderers/Breadcrumb.tsx +5 -1
  444. package/src/renderers/CRUD.tsx +63 -28
  445. package/src/renderers/Card.tsx +63 -34
  446. package/src/renderers/Chart.tsx +6 -2
  447. package/src/renderers/Collapse.tsx +4 -2
  448. package/src/renderers/Dialog.tsx +0 -4
  449. package/src/renderers/Drawer.tsx +0 -4
  450. package/src/renderers/DropDownButton.tsx +18 -13
  451. package/src/renderers/Form/Checkbox.tsx +8 -0
  452. package/src/renderers/Form/Combo.tsx +2 -3
  453. package/src/renderers/Form/InputCity.tsx +4 -8
  454. package/src/renderers/Form/InputFile.tsx +66 -24
  455. package/src/renderers/Form/InputImage.tsx +16 -5
  456. package/src/renderers/Form/Item.tsx +3 -2
  457. package/src/renderers/Form/Options.tsx +32 -7
  458. package/src/renderers/Form/Picker.tsx +3 -2
  459. package/src/renderers/Form/Select.tsx +162 -21
  460. package/src/renderers/Form/TabsTransferPicker.tsx +123 -0
  461. package/src/renderers/Form/Transfer.tsx +19 -4
  462. package/src/renderers/Form/TransferPicker.tsx +145 -0
  463. package/src/renderers/Form/TreeSelect.tsx +25 -0
  464. package/src/renderers/Form/index.tsx +15 -2
  465. package/src/renderers/Form/wrapControl.tsx +28 -3
  466. package/src/renderers/IFrame.tsx +4 -5
  467. package/src/renderers/Image.tsx +10 -0
  468. package/src/renderers/Json.tsx +9 -9
  469. package/src/renderers/Link.tsx +53 -14
  470. package/src/renderers/List.tsx +1 -1
  471. package/src/renderers/Log.tsx +16 -3
  472. package/src/renderers/Mapping.tsx +27 -11
  473. package/src/renderers/Nav.tsx +325 -122
  474. package/src/renderers/Portlet.tsx +423 -0
  475. package/src/renderers/Property.tsx +3 -2
  476. package/src/renderers/SearchBox.tsx +23 -4
  477. package/src/renderers/SparkLine.tsx +5 -0
  478. package/src/renderers/Table/ColumnToggler.tsx +544 -0
  479. package/src/renderers/Table/ItemActionsWrapper.tsx +44 -0
  480. package/src/renderers/Table/TableCell.tsx +16 -1
  481. package/src/renderers/Table/TableContent.tsx +40 -2
  482. package/src/renderers/Table/index.tsx +257 -80
  483. package/src/renderers/Tabs.tsx +9 -1
  484. package/src/renderers/WebComponent.tsx +2 -2
  485. package/src/store/crud.ts +3 -8
  486. package/src/store/form.ts +5 -10
  487. package/src/store/service.ts +5 -4
  488. package/src/store/table.ts +103 -11
  489. package/src/types.ts +57 -0
  490. package/src/utils/api.ts +52 -23
  491. package/src/utils/dom.tsx +12 -0
  492. package/src/utils/handleAction.ts +41 -0
  493. package/src/utils/helper.ts +12 -4
  494. package/src/utils/icon.tsx +4 -0
  495. package/src/utils/tpl-builtin.ts +48 -17
  496. package/dump.rdb +0 -0
  497. package/lib/components/AssociatedCheckboxes.d.ts +0 -762
  498. package/lib/components/AssociatedCheckboxes.js +0 -90
  499. package/lib/components/AssociatedCheckboxes.js.map +0 -13
  500. package/lib/components/ChainedCheckboxes.js.map +0 -13
  501. package/lib/components/Checkboxes.js +0 -101
  502. package/lib/components/Checkboxes.js.map +0 -13
  503. package/lib/components/ListCheckboxes.d.ts +0 -739
  504. package/lib/components/ListCheckboxes.js +0 -48
  505. package/lib/components/ListCheckboxes.js.map +0 -13
  506. package/lib/components/ListRadios.d.ts +0 -763
  507. package/lib/components/ListRadios.js +0 -86
  508. package/lib/components/ListRadios.js.map +0 -13
  509. package/lib/components/TableCheckboxes.js.map +0 -13
  510. package/lib/components/TreeCheckboxes.js.map +0 -13
  511. package/lib/components/TreeRadios.d.ts +0 -838
  512. package/lib/components/TreeRadios.js +0 -116
  513. package/lib/components/TreeRadios.js.map +0 -13
  514. package/sdk.zip +0 -0
  515. package/src/components/ListRadios.tsx +0 -159
  516. package/src/components/TreeRadios.tsx +0 -202
@@ -6,8 +6,8 @@
6
6
  "/src/renderers/Form/wrapControl.tsx"
7
7
  ],
8
8
  "names": [],
9
- "mappings": "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",
9
+ "mappings": "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",
10
10
  "sourcesContent": [
11
- "import React from 'react';\nimport {IFormStore, IFormItemStore} from '../../store/form';\nimport debouce from 'lodash/debounce';\n\nimport {RendererProps, Renderer} from '../../factory';\nimport {ComboStore, IComboStore, IUniqueGroup} from '../../store/combo';\nimport {\n anyChanged,\n promisify,\n isObject,\n guid,\n isEmpty,\n autobind,\n getVariable\n} from '../../utils/helper';\nimport {IIRendererStore, IRendererStore} from '../../store';\nimport {ScopedContext, IScopedContext} from '../../Scoped';\nimport {reaction} from 'mobx';\nimport {FormItemStore} from '../../store/formItem';\nimport {isAlive} from 'mobx-state-tree';\nimport {observer} from 'mobx-react';\nimport hoistNonReactStatic from 'hoist-non-react-statics';\nimport {withRootStore} from '../../WithRootStore';\nimport {FormBaseControl, FormItemWrap} from './Item';\nimport {Api} from '../../types';\n\nexport interface ControlOutterProps extends RendererProps {\n formStore?: IFormStore;\n name?: string;\n value?: any;\n id?: string;\n type?: string;\n required?: boolean;\n validations: string | {[propsName: string]: any};\n validationErrors: {[propsName: string]: any};\n validateOnChange: boolean;\n multiple?: boolean;\n delimiter?: string;\n joinValues?: boolean;\n extractValue?: boolean;\n valueField?: string;\n labelField?: string;\n unique?: boolean;\n selectFirst?: boolean;\n autoFill?: any;\n clearValueOnHidden?: boolean;\n validateApi?: Api;\n submitOnChange?: boolean;\n validate?: (value: any, values: any, name: string) => any;\n formItem?: IFormItemStore;\n addHook?: (fn: () => any, type?: 'validate' | 'init' | 'flush') => void;\n removeHook?: (fn: () => any, type?: 'validate' | 'init' | 'flush') => void;\n $schema: {\n pipeIn?: (value: any, data: any) => any;\n pipeOut?: (value: any, originValue: any, data: any) => any;\n [propName: string]: any;\n };\n store?: IIRendererStore;\n onChange?: (\n value: any,\n name: string,\n submit?: boolean,\n changePristine?: boolean\n ) => void;\n}\n\nexport interface ControlProps {\n onBulkChange?: (values: Object) => void;\n onChange?: (value: any, name: string, submit: boolean) => void;\n store: IIRendererStore;\n}\n\nexport function wrapControl<\n T extends React.ComponentType<React.ComponentProps<T> & ControlProps>\n>(ComposedComponent: T) {\n type OuterProps = JSX.LibraryManagedAttributes<\n T,\n Omit<React.ComponentProps<T>, keyof ControlProps>\n > &\n ControlOutterProps;\n\n const result = hoistNonReactStatic(\n withRootStore(\n observer(\n class extends React.Component<OuterProps> {\n public model: IFormItemStore | undefined;\n control?: any;\n value?: any = undefined;\n hook?: () => any;\n hook2?: () => any;\n hook3?: () => any;\n reaction?: () => void;\n\n static contextType = ScopedContext;\n static defaultProps = {};\n\n lazyEmitChange = debouce(this.emitChange.bind(this), 250, {\n trailing: true,\n leading: false\n });\n\n constructor(props: OuterProps) {\n super(props);\n\n const {\n formStore: form,\n formItem,\n rootStore,\n store,\n onChange,\n data,\n $schema: {\n name,\n id,\n type,\n required,\n validations,\n validationErrors,\n unique,\n value,\n multiple,\n delimiter,\n valueField,\n labelField,\n joinValues,\n extractValue,\n selectFirst,\n autoFill,\n clearValueOnHidden,\n validateApi,\n minLength,\n maxLength\n }\n } = this.props;\n\n this.getValue = this.getValue.bind(this);\n this.setValue = this.setValue.bind(this);\n this.handleChange = this.handleChange.bind(this);\n this.setPrinstineValue = this.setPrinstineValue.bind(this);\n this.controlRef = this.controlRef.bind(this);\n this.handleBlur = this.handleBlur.bind(this);\n\n if (!name) {\n return;\n }\n\n let propValue = this.props.value;\n const model = rootStore.addStore({\n id: guid(),\n path: this.props.$path,\n storeType: FormItemStore.name,\n parentId: store?.id,\n name\n }) as IFormItemStore;\n this.model = model;\n // @issue 打算干掉这个\n formItem?.addSubFormItem(model);\n model.config({\n id,\n type,\n required,\n unique,\n value,\n rules: validations,\n messages: validationErrors,\n multiple,\n delimiter,\n valueField,\n labelField,\n joinValues,\n extractValue,\n selectFirst,\n autoFill,\n clearValueOnHidden,\n validateApi,\n minLength,\n maxLength\n });\n\n // issue 这个逻辑应该在 combo 里面自己实现。\n if (\n this.model.unique &&\n form?.parentStore?.storeType === ComboStore.name\n ) {\n const combo = form.parentStore as IComboStore;\n combo.bindUniuqueItem(model);\n }\n\n // 同步 value\n model.changeTmpValue(\n propValue ?? store?.getValueByName(model.name) ?? value\n );\n\n // 如果没有初始值,通过 onChange 设置过去\n if (\n onChange &&\n typeof propValue === 'undefined' &&\n typeof store?.getValueByName(model.name, false) === 'undefined'\n ) {\n onChange(model.tmpValue, model.name, false, true);\n }\n }\n\n componentDidMount() {\n const {\n store,\n formStore: form,\n $schema: {name, validate},\n addHook\n } = this.props;\n\n // 提交前先把之前的 lazyEmit 执行一下。\n this.hook3 = () => {\n this.lazyEmitChange.flush();\n };\n addHook?.(this.hook3, 'flush');\n\n const formItem = this.model as IFormItemStore;\n if (formItem && validate) {\n let finalValidate = promisify(validate.bind(formItem));\n this.hook2 = () => {\n formItem.clearError('control:valdiate');\n return finalValidate(\n this.props.data,\n this.getValue(),\n name\n ).then((ret: any) => {\n if ((typeof ret === 'string' || Array.isArray(ret)) && ret) {\n formItem.addError(ret, 'control:valdiate');\n }\n });\n };\n addHook?.(this.hook2);\n }\n }\n\n componentDidUpdate(prevProps: OuterProps) {\n const props = this.props;\n const form = props.formStore;\n const model = this.model;\n\n if (\n model &&\n anyChanged(\n [\n 'id',\n 'validations',\n 'validationErrors',\n 'value',\n 'required',\n 'unique',\n 'multiple',\n 'delimiter',\n 'valueField',\n 'labelField',\n 'joinValues',\n 'extractValue',\n 'selectFirst',\n 'autoFill',\n 'clearValueOnHidden',\n 'validateApi'\n ],\n prevProps.$schema,\n props.$schema\n )\n ) {\n model.config({\n required: props.$schema.required,\n id: props.$schema.id,\n unique: props.$schema.unique,\n value: props.$schema.value,\n rules: props.$schema.validations,\n multiple: props.$schema.multiple,\n delimiter: props.$schema.delimiter,\n valueField: props.$schema.valueField,\n labelField: props.$schema.labelField,\n joinValues: props.$schema.joinValues,\n extractValue: props.$schema.extractValue,\n messages: props.$schema.validationErrors,\n selectFirst: props.$schema.selectFirst,\n autoFill: props.$schema.autoFill,\n clearValueOnHidden: props.$schema.clearValueOnHidden,\n validateApi: props.$schema.validateApi,\n minLength: props.minLength,\n maxLength: props.maxLength\n });\n }\n\n if (model && typeof props.value !== 'undefined') {\n // 自己控制的 value 优先\n if (\n props.value !== prevProps.value &&\n props.value !== model.tmpValue\n ) {\n model.changeTmpValue(props.value);\n }\n } else if (\n // 然后才是查看关联的 name 属性值是否变化\n model &&\n props.data !== prevProps.data &&\n (!model.emitedValue || model.emitedValue === model.tmpValue)\n ) {\n model.changeEmitedValue(undefined);\n const value = getVariable(props.data, model.name);\n const prevValue = getVariable(prevProps.data, model.name);\n if (\n (value !== prevValue ||\n getVariable(props.data, model.name, false) !==\n getVariable(prevProps.data, model.name, false)) &&\n value !== model.tmpValue\n ) {\n model.changeTmpValue(value);\n }\n }\n }\n\n componentWillUnmount() {\n this.hook && this.props.removeHook?.(this.hook);\n this.hook2 && this.props.removeHook?.(this.hook2);\n this.hook3 && this.props.removeHook?.(this.hook3, 'flush');\n // this.lazyEmitChange.flush();\n\n this.lazyEmitChange.cancel();\n this.reaction?.();\n this.disposeModel();\n }\n\n disposeModel() {\n const {formStore: form, formItem, rootStore} = this.props;\n\n if (\n this.model &&\n this.model.unique &&\n form?.parentStore &&\n form?.parentStore.storeType === ComboStore.name\n ) {\n const combo = form.parentStore as IComboStore;\n combo.unBindUniuqueItem(this.model);\n }\n\n if (this.model) {\n formItem &&\n isAlive(formItem) &&\n formItem.removeSubFormItem(this.model);\n\n this.model.clearValueOnHidden &&\n this.model.form?.deleteValueByName(this.model.name);\n\n rootStore.removeStore(this.model);\n }\n delete this.model;\n }\n\n controlRef(control: any) {\n const {\n addHook,\n removeHook,\n formStore: form,\n $schema: {name}\n } = this.props;\n\n // 因为 control 有可能被 n 层 hoc 包裹。\n while (control && control.getWrappedInstance) {\n control = control.getWrappedInstance();\n }\n\n if (control && control.validate && this.model) {\n const formItem = this.model as IFormItemStore;\n let validate = promisify(control.validate.bind(control));\n this.hook = () => {\n formItem.clearError('component:valdiate');\n\n return validate(this.props.data, this.getValue(), name).then(\n ret => {\n if (\n (typeof ret === 'string' || Array.isArray(ret)) &&\n ret\n ) {\n formItem.setError(ret, 'component:valdiate');\n }\n }\n );\n };\n addHook?.(this.hook);\n } else if (!control && this.hook) {\n removeHook?.(this.hook);\n this.hook = undefined;\n }\n\n // 注册到 Scoped 上\n const originRef = this.control;\n this.control = control;\n const scoped = this.context as IScopedContext;\n\n if (!this.control) {\n return;\n }\n\n if (control) {\n scoped.registerComponent(this.control);\n } else {\n scoped.unRegisterComponent(originRef);\n }\n }\n\n validate() {\n const {formStore: form, data} = this.props;\n\n if (this.model) {\n if (\n this.model.unique &&\n form?.parentStore &&\n form.parentStore.storeType === ComboStore.name\n ) {\n const combo = form.parentStore as IComboStore;\n const group = combo.uniques.get(\n this.model.name\n ) as IUniqueGroup;\n group.items.forEach(item => item.validate(data));\n } else {\n this.model.validate(data, this.hook);\n form\n ?.getItemsByName(this.model.name)\n .forEach(item => item !== this.model && item.validate(data));\n }\n }\n }\n\n handleChange(\n value: any,\n submitOnChange: boolean = this.props.$schema.submitOnChange,\n changeImmediately: boolean = false\n ) {\n const {\n formStore: form,\n onChange,\n $schema: {\n type,\n pipeOut,\n changeImmediately: conrolChangeImmediately\n },\n formInited,\n data\n } = this.props;\n\n if (\n !this.model ||\n // todo 以后想办法不要強耦合类型。\n ~[\n 'service',\n 'group',\n 'hbox',\n 'panel',\n 'grid',\n 'input-group'\n ].indexOf(type)\n ) {\n onChange && onChange.apply(null, arguments as any);\n return;\n }\n\n if (pipeOut) {\n const oldValue = this.model.value;\n value = pipeOut(value, oldValue, data);\n }\n\n this.model.changeTmpValue(value);\n if (changeImmediately || conrolChangeImmediately || !formInited) {\n this.emitChange(submitOnChange);\n } else {\n // this.props.onTmpValueChange?.(value, this.model.name);\n this.lazyEmitChange(submitOnChange);\n }\n }\n\n emitChange(\n submitOnChange: boolean = this.props.$schema.submitOnChange\n ) {\n const {\n formStore: form,\n onChange,\n $schema: {name, onChange: onFormItemChange, maxLength, minLength},\n data,\n validateOnChange,\n formSubmited\n } = this.props;\n\n if (!this.model) {\n return;\n }\n const value = this.model.tmpValue;\n const oldValue = getVariable(data, this.model.name, false);\n\n if (oldValue === value) {\n return;\n }\n\n this.model.changeEmitedValue(value);\n if (\n onFormItemChange?.(value, oldValue, this.model, form) === false\n ) {\n return;\n }\n const validated = this.model.validated;\n onChange?.(value, name!, submitOnChange === true);\n\n if (\n // 如果配置了 minLength 或者 maxLength 就切成及时验证\n (typeof maxLength && maxLength) ||\n (typeof minLength && minLength) ||\n validateOnChange === true ||\n (validateOnChange !== false && (formSubmited || validated))\n ) {\n this.validate();\n } else if (validateOnChange === false) {\n this.model?.reset();\n }\n }\n\n handleBlur(e: any) {\n const {\n onBlur,\n $schema: {validateOnBlur}\n } = this.props;\n\n if (validateOnBlur && this.model) {\n this.validate();\n }\n\n onBlur && onBlur(e);\n }\n\n setPrinstineValue(value: any) {\n if (!this.model) {\n return;\n }\n\n const {\n formStore: form,\n name,\n $schema: {pipeOut},\n onChange,\n value: oldValue,\n data\n } = this.props;\n\n if (pipeOut) {\n value = pipeOut(value, oldValue, data);\n }\n\n onChange?.(value, name!, false, true);\n }\n\n getValue() {\n const {formStore: data, $schema: control} = this.props;\n let value: any = this.model ? this.model.tmpValue : control.value;\n\n if (control.pipeIn) {\n value = control.pipeIn(value, data);\n }\n\n return value;\n }\n\n // 兼容老版本用法,新版本直接用 onChange 就可以。\n setValue(value: any, key?: string) {\n const {\n $schema: {name},\n onBulkChange\n } = this.props;\n\n if (!key || key === name) {\n this.handleChange(value);\n } else {\n onBulkChange &&\n onBulkChange({\n [key]: value\n });\n }\n }\n\n render() {\n const {\n controlWidth,\n disabled,\n formMode,\n $schema: control,\n store,\n data,\n invisible\n } = this.props;\n\n if (invisible) {\n return null;\n }\n\n const value = this.getValue();\n const model = this.model;\n\n const injectedProps: any = {\n defaultSize: controlWidth,\n disabled: disabled || control.disabled,\n formItem: this.model,\n formMode: control.mode || formMode,\n ref: this.controlRef,\n data: data || store?.data,\n value,\n defaultValue: control.value,\n formItemValue: value, // 为了兼容老版本的自定义组件\n onChange: this.handleChange,\n\n onBlur: this.handleBlur,\n setValue: this.setValue,\n getValue: this.getValue,\n prinstine: model ? model.prinstine : undefined,\n setPrinstineValue: this.setPrinstineValue\n };\n\n return (\n <ComposedComponent\n {...(this.props as JSX.LibraryManagedAttributes<\n T,\n React.ComponentProps<T>\n >)}\n {...injectedProps}\n />\n );\n }\n }\n ) as any\n ),\n ComposedComponent\n );\n\n return result as typeof result & {\n ComposedComponent: T;\n };\n}\n"
11
+ "import React from 'react';\nimport {IFormStore, IFormItemStore} from '../../store/form';\nimport debouce from 'lodash/debounce';\n\nimport {RendererProps, Renderer} from '../../factory';\nimport {ComboStore, IComboStore, IUniqueGroup} from '../../store/combo';\nimport {\n anyChanged,\n promisify,\n isObject,\n guid,\n isEmpty,\n autobind,\n getVariable\n} from '../../utils/helper';\nimport {IIRendererStore, IRendererStore} from '../../store';\nimport {ScopedContext, IScopedContext} from '../../Scoped';\nimport {reaction} from 'mobx';\nimport {FormItemStore} from '../../store/formItem';\nimport {isAlive} from 'mobx-state-tree';\nimport {observer} from 'mobx-react';\nimport hoistNonReactStatic from 'hoist-non-react-statics';\nimport {withRootStore} from '../../WithRootStore';\nimport {FormBaseControl, FormItemWrap} from './Item';\nimport {Api} from '../../types';\n\nexport interface ControlOutterProps extends RendererProps {\n formStore?: IFormStore;\n name?: string;\n value?: any;\n id?: string;\n type?: string;\n required?: boolean;\n validations: string | {[propsName: string]: any};\n validationErrors: {[propsName: string]: any};\n validateOnChange: boolean;\n multiple?: boolean;\n delimiter?: string;\n joinValues?: boolean;\n extractValue?: boolean;\n valueField?: string;\n labelField?: string;\n unique?: boolean;\n selectFirst?: boolean;\n autoFill?: any;\n clearValueOnHidden?: boolean;\n validateApi?: Api;\n submitOnChange?: boolean;\n validate?: (value: any, values: any, name: string) => any;\n formItem?: IFormItemStore;\n addHook?: (fn: () => any, type?: 'validate' | 'init' | 'flush') => void;\n removeHook?: (fn: () => any, type?: 'validate' | 'init' | 'flush') => void;\n $schema: {\n pipeIn?: (value: any, data: any) => any;\n pipeOut?: (value: any, originValue: any, data: any) => any;\n [propName: string]: any;\n };\n store?: IIRendererStore;\n onChange?: (\n value: any,\n name: string,\n submit?: boolean,\n changePristine?: boolean\n ) => void;\n}\n\nexport interface ControlProps {\n onBulkChange?: (values: Object) => void;\n onChange?: (value: any, name: string, submit: boolean) => void;\n store: IIRendererStore;\n}\n\nexport function wrapControl<\n T extends React.ComponentType<React.ComponentProps<T> & ControlProps>\n>(ComposedComponent: T) {\n type OuterProps = JSX.LibraryManagedAttributes<\n T,\n Omit<React.ComponentProps<T>, keyof ControlProps>\n > &\n ControlOutterProps;\n\n const result = hoistNonReactStatic(\n withRootStore(\n observer(\n class extends React.Component<OuterProps> {\n public model: IFormItemStore | undefined;\n control?: any;\n value?: any = undefined;\n hook?: () => any;\n hook2?: () => any;\n hook3?: () => any;\n reaction?: () => void;\n\n static contextType = ScopedContext;\n static defaultProps = {};\n\n lazyEmitChange = debouce(this.emitChange.bind(this), 250, {\n trailing: true,\n leading: false\n });\n\n constructor(props: OuterProps) {\n super(props);\n\n const {\n formStore: form,\n formItem,\n rootStore,\n store,\n onChange,\n data,\n $schema: {\n name,\n id,\n type,\n required,\n validations,\n validationErrors,\n unique,\n value,\n multiple,\n delimiter,\n valueField,\n labelField,\n joinValues,\n extractValue,\n selectFirst,\n autoFill,\n clearValueOnHidden,\n validateApi,\n minLength,\n maxLength\n }\n } = this.props;\n\n this.getValue = this.getValue.bind(this);\n this.setValue = this.setValue.bind(this);\n this.handleChange = this.handleChange.bind(this);\n this.setPrinstineValue = this.setPrinstineValue.bind(this);\n this.controlRef = this.controlRef.bind(this);\n this.handleBlur = this.handleBlur.bind(this);\n\n if (!name) {\n return;\n }\n\n let propValue = this.props.value;\n const model = rootStore.addStore({\n id: guid(),\n path: this.props.$path,\n storeType: FormItemStore.name,\n parentId: store?.id,\n name\n }) as IFormItemStore;\n this.model = model;\n // @issue 打算干掉这个\n formItem?.addSubFormItem(model);\n model.config({\n id,\n type,\n required,\n unique,\n value,\n rules: validations,\n messages: validationErrors,\n multiple,\n delimiter,\n valueField,\n labelField,\n joinValues,\n extractValue,\n selectFirst,\n autoFill,\n clearValueOnHidden,\n validateApi,\n minLength,\n maxLength\n });\n\n // issue 这个逻辑应该在 combo 里面自己实现。\n if (\n this.model.unique &&\n form?.parentStore?.storeType === ComboStore.name\n ) {\n const combo = form.parentStore as IComboStore;\n combo.bindUniuqueItem(model);\n }\n\n // 同步 value\n model.changeTmpValue(\n propValue ?? store?.getValueByName(model.name) ?? value\n );\n\n // 如果没有初始值,通过 onChange 设置过去\n if (\n onChange &&\n typeof propValue === 'undefined' &&\n typeof store?.getValueByName(model.name, false) === 'undefined'\n ) {\n onChange(model.tmpValue, model.name, false, true);\n }\n }\n\n componentDidMount() {\n const {\n store,\n formStore: form,\n $schema: {name, validate},\n addHook\n } = this.props;\n\n // 提交前先把之前的 lazyEmit 执行一下。\n this.hook3 = () => {\n this.lazyEmitChange.flush();\n };\n addHook?.(this.hook3, 'flush');\n\n const formItem = this.model as IFormItemStore;\n if (formItem && validate) {\n let finalValidate = promisify(validate.bind(formItem));\n this.hook2 = () => {\n formItem.clearError('control:valdiate');\n return finalValidate(\n this.props.data,\n this.getValue(),\n name\n ).then((ret: any) => {\n if ((typeof ret === 'string' || Array.isArray(ret)) && ret) {\n formItem.addError(ret, 'control:valdiate');\n }\n });\n };\n addHook?.(this.hook2);\n }\n }\n\n componentDidUpdate(prevProps: OuterProps) {\n const props = this.props;\n const form = props.formStore;\n const model = this.model;\n\n if (\n model &&\n anyChanged(\n [\n 'id',\n 'validations',\n 'validationErrors',\n 'value',\n 'required',\n 'unique',\n 'multiple',\n 'delimiter',\n 'valueField',\n 'labelField',\n 'joinValues',\n 'extractValue',\n 'selectFirst',\n 'autoFill',\n 'clearValueOnHidden',\n 'validateApi'\n ],\n prevProps.$schema,\n props.$schema\n )\n ) {\n model.config({\n required: props.$schema.required,\n id: props.$schema.id,\n unique: props.$schema.unique,\n value: props.$schema.value,\n rules: props.$schema.validations,\n multiple: props.$schema.multiple,\n delimiter: props.$schema.delimiter,\n valueField: props.$schema.valueField,\n labelField: props.$schema.labelField,\n joinValues: props.$schema.joinValues,\n extractValue: props.$schema.extractValue,\n messages: props.$schema.validationErrors,\n selectFirst: props.$schema.selectFirst,\n autoFill: props.$schema.autoFill,\n clearValueOnHidden: props.$schema.clearValueOnHidden,\n validateApi: props.$schema.validateApi,\n minLength: props.minLength,\n maxLength: props.maxLength\n });\n }\n\n if (model && typeof props.value !== 'undefined') {\n // 自己控制的 value 优先\n if (\n props.value !== prevProps.value &&\n props.value !== model.tmpValue\n ) {\n model.changeTmpValue(props.value);\n }\n } else if (\n // 然后才是查看关联的 name 属性值是否变化\n model &&\n props.data !== prevProps.data &&\n (!model.emitedValue || model.emitedValue === model.tmpValue)\n ) {\n model.changeEmitedValue(undefined);\n const value = getVariable(props.data, model.name);\n const prevValue = getVariable(prevProps.data, model.name);\n if (\n (value !== prevValue ||\n getVariable(props.data, model.name, false) !==\n getVariable(prevProps.data, model.name, false)) &&\n value !== model.tmpValue\n ) {\n model.changeTmpValue(value);\n }\n }\n }\n\n componentWillUnmount() {\n this.hook && this.props.removeHook?.(this.hook);\n this.hook2 && this.props.removeHook?.(this.hook2);\n this.hook3 && this.props.removeHook?.(this.hook3, 'flush');\n // this.lazyEmitChange.flush();\n\n this.lazyEmitChange.cancel();\n this.reaction?.();\n this.disposeModel();\n }\n\n disposeModel() {\n const {formStore: form, formItem, rootStore} = this.props;\n\n if (\n this.model &&\n this.model.unique &&\n form?.parentStore &&\n form?.parentStore.storeType === ComboStore.name\n ) {\n const combo = form.parentStore as IComboStore;\n combo.unBindUniuqueItem(this.model);\n }\n\n if (this.model) {\n formItem &&\n isAlive(formItem) &&\n formItem.removeSubFormItem(this.model);\n\n this.model.clearValueOnHidden &&\n this.model.form?.deleteValueByName(this.model.name);\n\n rootStore.removeStore(this.model);\n }\n delete this.model;\n }\n\n controlRef(control: any) {\n const {\n addHook,\n removeHook,\n formStore: form,\n $schema: {name}\n } = this.props;\n\n // 因为 control 有可能被 n 层 hoc 包裹。\n while (control && control.getWrappedInstance) {\n control = control.getWrappedInstance();\n }\n\n if (control && control.validate && this.model) {\n const formItem = this.model as IFormItemStore;\n let validate = promisify(control.validate.bind(control));\n this.hook = () => {\n formItem.clearError('component:valdiate');\n\n return validate(this.props.data, this.getValue(), name).then(\n ret => {\n if (\n (typeof ret === 'string' || Array.isArray(ret)) &&\n ret\n ) {\n formItem.setError(ret, 'component:valdiate');\n }\n }\n );\n };\n addHook?.(this.hook);\n } else if (!control && this.hook) {\n removeHook?.(this.hook);\n this.hook = undefined;\n }\n\n // 注册到 Scoped 上\n const originRef = this.control;\n this.control = control;\n const scoped = this.context as IScopedContext;\n\n if (!this.control) {\n return;\n }\n\n if (control) {\n scoped.registerComponent(this.control);\n } else {\n scoped.unRegisterComponent(originRef);\n }\n }\n\n validate() {\n const {formStore: form, data} = this.props;\n\n if (this.model) {\n if (\n this.model.unique &&\n form?.parentStore &&\n form.parentStore.storeType === ComboStore.name\n ) {\n const combo = form.parentStore as IComboStore;\n const group = combo.uniques.get(\n this.model.name\n ) as IUniqueGroup;\n group.items.forEach(item => item.validate(data));\n } else {\n this.model.validate(data, this.hook);\n form\n ?.getItemsByName(this.model.name)\n .forEach(item => item !== this.model && item.validate(data));\n }\n }\n }\n\n handleChange(\n value: any,\n submitOnChange: boolean = this.props.$schema.submitOnChange,\n changeImmediately: boolean = false\n ) {\n const {\n formStore: form,\n onChange,\n $schema: {\n type,\n pipeOut,\n changeImmediately: conrolChangeImmediately\n },\n formInited,\n data\n } = this.props;\n\n if (\n !this.model ||\n // todo 以后想办法不要強耦合类型。\n ~[\n 'service',\n 'group',\n 'hbox',\n 'panel',\n 'grid',\n 'input-group'\n ].indexOf(type)\n ) {\n onChange && onChange.apply(null, arguments as any);\n return;\n }\n\n if (pipeOut) {\n const oldValue = this.model.value;\n value = pipeOut(value, oldValue, data);\n }\n\n this.model.changeTmpValue(value);\n if (changeImmediately || conrolChangeImmediately || !formInited) {\n this.emitChange(submitOnChange);\n } else {\n // this.props.onTmpValueChange?.(value, this.model.name);\n this.lazyEmitChange(submitOnChange);\n }\n }\n\n emitChange(\n submitOnChange: boolean = this.props.$schema.submitOnChange\n ) {\n const {\n formStore: form,\n onChange,\n $schema: {\n name,\n id,\n label,\n type,\n onChange: onFormItemChange,\n maxLength,\n minLength\n },\n data,\n env,\n validateOnChange,\n formSubmited\n } = this.props;\n\n if (!this.model) {\n return;\n }\n const value = this.model.tmpValue;\n const oldValue = getVariable(data, this.model.name, false);\n\n if (oldValue === value) {\n return;\n }\n\n if (type !== 'input-password') {\n env?.tracker(\n {\n eventType: 'formItemChange',\n eventData: {\n id,\n name,\n label,\n type,\n value\n }\n },\n this.props\n );\n }\n\n this.model.changeEmitedValue(value);\n if (\n onFormItemChange?.(value, oldValue, this.model, form) === false\n ) {\n return;\n }\n const validated = this.model.validated;\n onChange?.(value, name!, submitOnChange === true);\n\n if (\n // 如果配置了 minLength 或者 maxLength 就切成及时验证\n this.model.rules.minLength ||\n this.model.rules.maxLength ||\n validateOnChange === true ||\n (validateOnChange !== false && (formSubmited || validated))\n ) {\n this.validate();\n } else if (validateOnChange === false) {\n this.model?.reset();\n }\n }\n\n handleBlur(e: any) {\n const {\n onBlur,\n $schema: {validateOnBlur}\n } = this.props;\n\n if (validateOnBlur && this.model) {\n this.validate();\n }\n\n onBlur && onBlur(e);\n }\n\n setPrinstineValue(value: any) {\n if (!this.model) {\n return;\n }\n\n const {\n formStore: form,\n name,\n $schema: {pipeOut},\n onChange,\n value: oldValue,\n data\n } = this.props;\n\n if (pipeOut) {\n value = pipeOut(value, oldValue, data);\n }\n\n onChange?.(value, name!, false, true);\n }\n\n getValue() {\n const {formStore: data, $schema: control} = this.props;\n let value: any = this.model ? this.model.tmpValue : control.value;\n\n if (control.pipeIn) {\n value = control.pipeIn(value, data);\n }\n\n return value;\n }\n\n // 兼容老版本用法,新版本直接用 onChange 就可以。\n setValue(value: any, key?: string) {\n const {\n $schema: {name},\n onBulkChange\n } = this.props;\n\n if (!key || key === name) {\n this.handleChange(value);\n } else {\n onBulkChange &&\n onBulkChange({\n [key]: value\n });\n }\n }\n\n render() {\n const {\n controlWidth,\n disabled,\n formMode,\n $schema: control,\n store,\n data,\n invisible\n } = this.props;\n\n if (invisible) {\n return null;\n }\n\n const value = this.getValue();\n const model = this.model;\n\n const injectedProps: any = {\n defaultSize: controlWidth,\n disabled: disabled || control.disabled,\n formItem: this.model,\n formMode: control.mode || formMode,\n ref: this.controlRef,\n data: data || store?.data,\n value,\n defaultValue: control.value,\n formItemValue: value, // 为了兼容老版本的自定义组件\n onChange: this.handleChange,\n\n onBlur: this.handleBlur,\n setValue: this.setValue,\n getValue: this.getValue,\n prinstine: model ? model.prinstine : undefined,\n setPrinstineValue: this.setPrinstineValue\n };\n\n return (\n <ComposedComponent\n {...(this.props as JSX.LibraryManagedAttributes<\n T,\n React.ComponentProps<T>\n >)}\n {...injectedProps}\n />\n );\n }\n }\n ) as any\n ),\n ComposedComponent\n );\n\n return result as typeof result & {\n ComposedComponent: T;\n };\n}\n"
12
12
  ]
13
13
  }
@@ -91,21 +91,19 @@ var IFrame = /** @class */ (function (_super) {
91
91
  };
92
92
  IFrame.prototype.render = function () {
93
93
  var _a = this.state, width = _a.width, height = _a.height;
94
- var _b = this.props, className = _b.className, src = _b.src, frameBorder = _b.frameBorder, data = _b.data, style = _b.style;
94
+ var _b = this.props, className = _b.className, src = _b.src, name = _b.name, frameBorder = _b.frameBorder, data = _b.data, style = _b.style;
95
95
  var tempStyle = {};
96
96
  width !== void 0 && (tempStyle.width = width);
97
97
  height !== void 0 && (tempStyle.height = height);
98
98
  style = (0, tslib_1.__assign)((0, tslib_1.__assign)({}, tempStyle), style);
99
- if ((0, tpl_builtin_1.isPureVariable)(src)) {
100
- src = (0, tpl_builtin_1.resolveVariableAndFilter)(src, data, '| raw');
101
- }
99
+ src = (0, tpl_builtin_1.dataMapping)(src, data);
102
100
  var finalSrc = src ? (0, api_1.buildApi)(src, data).url : undefined;
103
101
  if (typeof finalSrc === 'string' &&
104
102
  finalSrc &&
105
103
  !/^(\.\/|\.\.\/|\/|https?\:\/\/|\/\/)/.test(finalSrc)) {
106
104
  return react_1.default.createElement("p", null, "\u8BF7\u586B\u5199\u5408\u6CD5\u7684 iframe \u5730\u5740");
107
105
  }
108
- return (react_1.default.createElement("iframe", { className: className, frameBorder: frameBorder, style: style, ref: this.IFrameRef, onLoad: this.onLoad, src: finalSrc }));
106
+ return (react_1.default.createElement("iframe", { name: name, className: className, frameBorder: frameBorder, style: style, ref: this.IFrameRef, onLoad: this.onLoad, src: finalSrc }));
109
107
  };
110
108
  var _a;
111
109
  IFrame.propsList = ['src', 'className'];
@@ -6,8 +6,8 @@
6
6
  "/src/renderers/IFrame.tsx"
7
7
  ],
8
8
  "names": [],
9
- "mappings": "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",
9
+ "mappings": "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",
10
10
  "sourcesContent": [
11
- "import React from 'react';\nimport {Renderer, RendererProps} from '../factory';\nimport {filter} from '../utils/tpl';\nimport {autobind, createObject} from '../utils/helper';\nimport {ScopedContext, IScopedContext} from '../Scoped';\nimport {buildApi, isApiOutdated} from '../utils/api';\nimport {BaseSchema, SchemaUrlPath} from '../Schema';\nimport {ActionSchema} from './Action';\nimport {isPureVariable, resolveVariableAndFilter} from '../utils/tpl-builtin';\n\n/**\n * IFrame 渲染器\n * 文档:https://baidu.gitee.io/amis/docs/components/iframe\n */\nexport interface IFrameSchema extends BaseSchema {\n type: 'iframe';\n\n /**\n * 页面地址\n */\n src: SchemaUrlPath;\n\n /**\n * 事件相应,配置后当 iframe 通过 postMessage 发送事件时,可以触发 AMIS 内部的动作。\n */\n events?: {\n [eventName: string]: ActionSchema;\n };\n\n width?: number | string;\n height?: number | string;\n}\n\nexport interface IFrameProps\n extends RendererProps,\n Omit<IFrameSchema, 'type' | 'className'> {}\n\nexport default class IFrame extends React.Component<IFrameProps, object> {\n IFrameRef: React.RefObject<HTMLIFrameElement> = React.createRef();\n static propsList: Array<string> = ['src', 'className'];\n static defaultProps: Partial<IFrameProps> = {\n className: '',\n frameBorder: 0\n };\n\n state = {\n width: this.props.width || '100%',\n height: this.props.height || '100%'\n };\n\n componentDidMount() {\n window.addEventListener('message', this.onMessage);\n }\n\n componentDidUpdate(prevProps: IFrameProps) {\n const data = this.props.data;\n\n if (data !== prevProps.data) {\n this.postMessage('update', data);\n } else if (\n this.props.width !== prevProps.width ||\n this.props.height !== prevProps.height\n ) {\n this.setState({\n width: this.props.width || '100%',\n height: this.props.height || '100%'\n });\n }\n }\n\n componentWillUnmount() {\n window.removeEventListener('message', this.onMessage);\n }\n\n @autobind\n onMessage(e: MessageEvent) {\n const {events, onAction, data} = this.props;\n\n if (typeof e?.data?.type !== 'string' || !events) {\n return;\n }\n\n const [prefix, type] = e.data.type.split(':');\n\n if (prefix !== 'amis' || !type) {\n return;\n }\n\n if (type === 'resize' && e.data.data) {\n this.setState({\n width: e.data.data.width || '100%',\n height: e.data.data.height || '100%'\n });\n } else {\n const action = events[type];\n action && onAction(e, action, createObject(data, e.data.data));\n }\n }\n\n @autobind\n onLoad() {\n const {src, data} = this.props;\n src && this.postMessage('init', data);\n }\n\n // 当别的组件通知 iframe reload 的时候执行。\n @autobind\n reload(subpath?: any, query?: any) {\n if (query) {\n return this.receive(query);\n }\n\n const {src, data} = this.props;\n\n if (src) {\n (this.IFrameRef.current as HTMLIFrameElement).src = buildApi(\n src,\n data\n ).url;\n }\n }\n\n // 当别的组件把数据发给 iframe 里面的时候执行。\n @autobind\n receive(values: object) {\n const {src, data} = this.props;\n const newData = createObject(data, values);\n\n this.postMessage('receive', newData);\n\n if (isApiOutdated(src, src, data, newData)) {\n (this.IFrameRef.current as HTMLIFrameElement).src = buildApi(\n src,\n newData\n ).url;\n }\n }\n\n @autobind\n postMessage(type: string, data: any) {\n (this.IFrameRef.current as HTMLIFrameElement)?.contentWindow?.postMessage(\n {\n type: `amis:${type}`,\n data\n },\n '*'\n );\n }\n\n render() {\n const {width, height} = this.state;\n let {className, src, frameBorder, data, style} = this.props;\n\n let tempStyle: any = {};\n\n width !== void 0 && (tempStyle.width = width);\n height !== void 0 && (tempStyle.height = height);\n\n style = {\n ...tempStyle,\n ...style\n };\n\n if (isPureVariable(src)) {\n src = resolveVariableAndFilter(src, data, '| raw');\n }\n\n const finalSrc = src ? buildApi(src, data).url : undefined;\n\n if (\n typeof finalSrc === 'string' &&\n finalSrc &&\n !/^(\\.\\/|\\.\\.\\/|\\/|https?\\:\\/\\/|\\/\\/)/.test(finalSrc)\n ) {\n return <p>请填写合法的 iframe 地址</p>;\n }\n\n return (\n <iframe\n className={className}\n frameBorder={frameBorder}\n style={style}\n ref={this.IFrameRef}\n onLoad={this.onLoad}\n src={finalSrc}\n />\n );\n }\n}\n\n@Renderer({\n type: 'iframe'\n})\nexport class IFrameRenderer extends IFrame {\n static contextType = ScopedContext;\n\n constructor(props: IFrameProps, context: IScopedContext) {\n super(props);\n\n const scoped = context;\n scoped.registerComponent(this);\n }\n\n componentWillUnmount() {\n const scoped = this.context as IScopedContext;\n scoped.unRegisterComponent(this);\n }\n}\n"
11
+ "import React from 'react';\nimport {Renderer, RendererProps} from '../factory';\nimport {filter} from '../utils/tpl';\nimport {autobind, createObject} from '../utils/helper';\nimport {ScopedContext, IScopedContext} from '../Scoped';\nimport {buildApi, isApiOutdated} from '../utils/api';\nimport {BaseSchema, SchemaUrlPath} from '../Schema';\nimport {ActionSchema} from './Action';\nimport {dataMapping} from '../utils/tpl-builtin';\n\n/**\n * IFrame 渲染器\n * 文档:https://baidu.gitee.io/amis/docs/components/iframe\n */\nexport interface IFrameSchema extends BaseSchema {\n type: 'iframe';\n\n /**\n * 页面地址\n */\n src: SchemaUrlPath;\n\n /**\n * 事件相应,配置后当 iframe 通过 postMessage 发送事件时,可以触发 AMIS 内部的动作。\n */\n events?: {\n [eventName: string]: ActionSchema;\n };\n\n width?: number | string;\n height?: number | string;\n}\n\nexport interface IFrameProps\n extends RendererProps,\n Omit<IFrameSchema, 'type' | 'className'> {}\n\nexport default class IFrame extends React.Component<IFrameProps, object> {\n IFrameRef: React.RefObject<HTMLIFrameElement> = React.createRef();\n static propsList: Array<string> = ['src', 'className'];\n static defaultProps: Partial<IFrameProps> = {\n className: '',\n frameBorder: 0\n };\n\n state = {\n width: this.props.width || '100%',\n height: this.props.height || '100%'\n };\n\n componentDidMount() {\n window.addEventListener('message', this.onMessage);\n }\n\n componentDidUpdate(prevProps: IFrameProps) {\n const data = this.props.data;\n\n if (data !== prevProps.data) {\n this.postMessage('update', data);\n } else if (\n this.props.width !== prevProps.width ||\n this.props.height !== prevProps.height\n ) {\n this.setState({\n width: this.props.width || '100%',\n height: this.props.height || '100%'\n });\n }\n }\n\n componentWillUnmount() {\n window.removeEventListener('message', this.onMessage);\n }\n\n @autobind\n onMessage(e: MessageEvent) {\n const {events, onAction, data} = this.props;\n\n if (typeof e?.data?.type !== 'string' || !events) {\n return;\n }\n\n const [prefix, type] = e.data.type.split(':');\n\n if (prefix !== 'amis' || !type) {\n return;\n }\n\n if (type === 'resize' && e.data.data) {\n this.setState({\n width: e.data.data.width || '100%',\n height: e.data.data.height || '100%'\n });\n } else {\n const action = events[type];\n action && onAction(e, action, createObject(data, e.data.data));\n }\n }\n\n @autobind\n onLoad() {\n const {src, data} = this.props;\n src && this.postMessage('init', data);\n }\n\n // 当别的组件通知 iframe reload 的时候执行。\n @autobind\n reload(subpath?: any, query?: any) {\n if (query) {\n return this.receive(query);\n }\n\n const {src, data} = this.props;\n\n if (src) {\n (this.IFrameRef.current as HTMLIFrameElement).src = buildApi(\n src,\n data\n ).url;\n }\n }\n\n // 当别的组件把数据发给 iframe 里面的时候执行。\n @autobind\n receive(values: object) {\n const {src, data} = this.props;\n const newData = createObject(data, values);\n\n this.postMessage('receive', newData);\n\n if (isApiOutdated(src, src, data, newData)) {\n (this.IFrameRef.current as HTMLIFrameElement).src = buildApi(\n src,\n newData\n ).url;\n }\n }\n\n @autobind\n postMessage(type: string, data: any) {\n (this.IFrameRef.current as HTMLIFrameElement)?.contentWindow?.postMessage(\n {\n type: `amis:${type}`,\n data\n },\n '*'\n );\n }\n\n render() {\n const {width, height} = this.state;\n let {className, src, name, frameBorder, data, style} = this.props;\n\n let tempStyle: any = {};\n\n width !== void 0 && (tempStyle.width = width);\n height !== void 0 && (tempStyle.height = height);\n\n style = {\n ...tempStyle,\n ...style\n };\n\n src = dataMapping(src, data);\n\n const finalSrc = src ? buildApi(src, data).url : undefined;\n\n if (\n typeof finalSrc === 'string' &&\n finalSrc &&\n !/^(\\.\\/|\\.\\.\\/|\\/|https?\\:\\/\\/|\\/\\/)/.test(finalSrc)\n ) {\n return <p>请填写合法的 iframe 地址</p>;\n }\n\n return (\n <iframe\n name={name}\n className={className}\n frameBorder={frameBorder}\n style={style}\n ref={this.IFrameRef}\n onLoad={this.onLoad}\n src={finalSrc}\n />\n );\n }\n}\n\n@Renderer({\n type: 'iframe'\n})\nexport class IFrameRenderer extends IFrame {\n static contextType = ScopedContext;\n\n constructor(props: IFrameProps, context: IScopedContext) {\n super(props);\n\n const scoped = context;\n scoped.registerComponent(this);\n }\n\n componentWillUnmount() {\n const scoped = this.context as IScopedContext;\n scoped.unRegisterComponent(this);\n }\n}\n"
12
12
  ]
13
13
  }
@@ -607,6 +607,7 @@ export interface ImageFieldProps extends RendererProps {
607
607
  export declare class ImageField extends React.Component<ImageFieldProps, object> {
608
608
  static defaultProps: Pick<ImageFieldProps, 'defaultImage' | 'thumbMode' | 'thumbRatio' | 'placeholder'>;
609
609
  handleEnlarge({ src, originalSrc, title, caption, thumbMode, thumbRatio }: ImageThumbProps): void;
610
+ handleClick(e: React.MouseEvent<HTMLElement>): void;
610
611
  render(): JSX.Element;
611
612
  }
612
613
  export declare class ImageFieldRenderer extends ImageField {
@@ -9,6 +9,7 @@ var theme_1 = require("../theme");
9
9
  var helper_1 = require("../utils/helper");
10
10
  var icons_1 = require("../components/icons");
11
11
  var locale_1 = require("../locale");
12
+ var handleAction_1 = (0, tslib_1.__importDefault)(require("../utils/handleAction"));
12
13
  var ImageThumb = /** @class */ (function (_super) {
13
14
  (0, tslib_1.__extends)(ImageThumb, _super);
14
15
  function ImageThumb() {
@@ -69,6 +70,12 @@ var ImageField = /** @class */ (function (_super) {
69
70
  thumbRatio: thumbRatio
70
71
  }, this.props);
71
72
  };
73
+ ImageField.prototype.handleClick = function (e) {
74
+ var clickAction = this.props.clickAction;
75
+ if (clickAction) {
76
+ (0, handleAction_1.default)(e, clickAction, this.props);
77
+ }
78
+ };
72
79
  ImageField.prototype.render = function () {
73
80
  var _a;
74
81
  var _b = this.props, className = _b.className, defaultImage = _b.defaultImage, imageCaption = _b.imageCaption, title = _b.title, data = _b.data, imageClassName = _b.imageClassName, thumbClassName = _b.thumbClassName, height = _b.height, width = _b.width, cx = _b.classnames, src = _b.src, href = _b.href, thumbMode = _b.thumbMode, thumbRatio = _b.thumbRatio, placeholder = _b.placeholder, originalSrc = _b.originalSrc, enlargeAble = _b.enlargeAble, imageMode = _b.imageMode;
@@ -77,8 +84,9 @@ var ImageField = /** @class */ (function (_super) {
77
84
  var finnalHref = href ? (0, tpl_1.filter)(href, data, '| raw') : '';
78
85
  return (react_1.default.createElement("div", { className: cx('ImageField', imageMode === 'original'
79
86
  ? 'ImageField--original'
80
- : 'ImageField--thumb', className) }, value ? (react_1.default.createElement(ThemedImageThumb, { imageClassName: imageClassName, thumbClassName: thumbClassName, height: height, width: width, src: value, href: finnalHref, title: (0, tpl_1.filter)(title, data), caption: (0, tpl_1.filter)(imageCaption, data), thumbMode: thumbMode, thumbRatio: thumbRatio, originalSrc: (_a = (0, tpl_1.filter)(originalSrc, data, '| raw')) !== null && _a !== void 0 ? _a : value, enlargeAble: enlargeAble && value !== defaultImage, onEnlarge: this.handleEnlarge, imageMode: imageMode })) : (react_1.default.createElement("span", { className: "text-muted" }, placeholder))));
87
+ : 'ImageField--thumb', className), onClick: this.handleClick }, value ? (react_1.default.createElement(ThemedImageThumb, { imageClassName: imageClassName, thumbClassName: thumbClassName, height: height, width: width, src: value, href: finnalHref, title: (0, tpl_1.filter)(title, data), caption: (0, tpl_1.filter)(imageCaption, data), thumbMode: thumbMode, thumbRatio: thumbRatio, originalSrc: (_a = (0, tpl_1.filter)(originalSrc, data, '| raw')) !== null && _a !== void 0 ? _a : value, enlargeAble: enlargeAble && value !== defaultImage, onEnlarge: this.handleEnlarge, imageMode: imageMode })) : (react_1.default.createElement("span", { className: "text-muted" }, placeholder))));
81
88
  };
89
+ var _a;
82
90
  ImageField.defaultProps = {
83
91
  defaultImage: exports.imagePlaceholder,
84
92
  thumbMode: 'contain',
@@ -91,6 +99,12 @@ var ImageField = /** @class */ (function (_super) {
91
99
  (0, tslib_1.__metadata)("design:paramtypes", [Object]),
92
100
  (0, tslib_1.__metadata)("design:returntype", void 0)
93
101
  ], ImageField.prototype, "handleEnlarge", null);
102
+ (0, tslib_1.__decorate)([
103
+ helper_1.autobind,
104
+ (0, tslib_1.__metadata)("design:type", Function),
105
+ (0, tslib_1.__metadata)("design:paramtypes", [typeof (_a = typeof react_1.default !== "undefined" && react_1.default.MouseEvent) === "function" ? _a : Object]),
106
+ (0, tslib_1.__metadata)("design:returntype", void 0)
107
+ ], ImageField.prototype, "handleClick", null);
94
108
  return ImageField;
95
109
  }(react_1.default.Component));
96
110
  exports.ImageField = ImageField;
@@ -6,8 +6,8 @@
6
6
  "/src/renderers/Image.tsx"
7
7
  ],
8
8
  "names": [],
9
- "mappings": "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",
9
+ "mappings": "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",
10
10
  "sourcesContent": [
11
- "import React from 'react';\nimport {Renderer, RendererProps} from '../factory';\nimport {filter} from '../utils/tpl';\nimport {ClassNamesFn, themeable, ThemeProps} from '../theme';\nimport {autobind, getPropValue} from '../utils/helper';\nimport {Icon} from '../components/icons';\nimport {LocaleProps, localeable} from '../locale';\nimport {BaseSchema, SchemaClassName, SchemaTpl, SchemaUrlPath} from '../Schema';\nimport {resolveVariable} from '../utils/tpl-builtin';\n\n/**\n * 图片展示控件。\n * 文档:https://baidu.gitee.io/amis/docs/components/image\n */\nexport interface ImageSchema extends BaseSchema {\n /**\n * 指定为图片展示类型\n */\n type: 'image' | 'static-image';\n\n /**\n * 默认图片地址\n */\n defaultImage?: SchemaUrlPath;\n\n /**\n * 图片标题\n */\n title?: SchemaTpl;\n\n /**\n * 关联字段名,也可以直接配置 src\n */\n name?: string;\n\n /**\n * 图片描述信息\n */\n imageCaption?: SchemaTpl;\n\n /**\n * 图片地址,如果配置了 name,这个属性不用配置。\n */\n src?: SchemaUrlPath;\n\n /**\n * 大图地址,不设置用 src\n */\n originalSrc?: SchemaUrlPath;\n\n /**\n * 是否启动放大功能。\n */\n enlargeAble?: boolean;\n\n /**\n * 是否显示尺寸。\n */\n // showDimensions?: boolean;\n\n /**\n * 图片无法显示时的替换文本\n */\n alt?: string;\n\n /**\n * 高度\n */\n height?: number;\n\n /**\n * 宽度\n */\n width?: number;\n\n /**\n * 图片 css 类名\n */\n imageClassName?: SchemaClassName;\n\n /**\n * 外层 css 类名\n */\n className?: SchemaClassName;\n\n /**\n * 图片缩率图外层 css 类名\n */\n thumbClassName?: SchemaClassName;\n\n caption?: SchemaTpl;\n\n /**\n * 图片展示模式,默认为缩略图模式、可以配置成原图模式\n */\n imageMode?: 'thumb' | 'original';\n\n /**\n * 预览图模式\n */\n thumbMode?: 'w-full' | 'h-full' | 'contain' | 'cover';\n\n /**\n * 预览图比率\n */\n thumbRatio?: '1:1' | '4:3' | '16:9';\n\n /**\n * 链接地址\n */\n href?: SchemaTpl;\n\n /**\n * 是否新窗口打开\n */\n blank?: boolean;\n\n /**\n * 链接的 target\n */\n htmlTarget?: string;\n}\n\nexport interface ImageThumbProps\n extends LocaleProps,\n ThemeProps,\n Omit<ImageSchema, 'type' | 'className'> {\n onEnlarge?: (info: ImageThumbProps) => void;\n index?: number;\n onLoad?: React.EventHandler<any>;\n overlays?: JSX.Element;\n}\n\nexport class ImageThumb extends React.Component<ImageThumbProps> {\n @autobind\n handleEnlarge() {\n const {onEnlarge, ...rest} = this.props;\n onEnlarge && onEnlarge(rest);\n }\n\n render() {\n const {\n classnames: cx,\n className,\n imageClassName,\n thumbClassName,\n thumbMode,\n thumbRatio,\n height,\n width,\n src,\n alt,\n title,\n caption,\n href,\n blank = true,\n htmlTarget,\n onLoad,\n enlargeAble,\n translate: __,\n overlays,\n imageMode\n } = this.props;\n\n let image = (\n <div\n className={cx(\n 'Image',\n imageMode === 'original' ? 'Image--original' : 'Image--thumb',\n className\n )}\n >\n {imageMode === 'original' ? (\n <div\n className={cx(\n 'Image-origin',\n thumbMode ? `Image-origin--${thumbMode}` : ''\n )}\n style={{height: height, width: width}}\n >\n <img\n onLoad={onLoad}\n className={cx('Image-image', imageClassName)}\n src={src}\n alt={alt}\n />\n </div>\n ) : (\n <div className={cx('Image-thumbWrap')}>\n <div\n className={cx(\n 'Image-thumb',\n thumbClassName,\n thumbMode ? `Image-thumb--${thumbMode}` : '',\n thumbRatio\n ? `Image-thumb--${thumbRatio.replace(/:/g, '-')}`\n : ''\n )}\n style={{height: height, width: width}}\n >\n <img\n onLoad={onLoad}\n className={cx('Image-image', imageClassName)}\n src={src}\n alt={alt}\n />\n </div>\n {enlargeAble || overlays ? (\n <div key=\"overlay\" className={cx('Image-overlay')}>\n {enlargeAble ? (\n <a\n data-tooltip={__('Image.zoomIn')}\n data-position=\"bottom\"\n target=\"_blank\"\n onClick={this.handleEnlarge}\n >\n <Icon icon=\"view\" className=\"icon\" />\n </a>\n ) : null}\n {overlays}\n </div>\n ) : null}\n </div>\n )}\n\n {title || caption ? (\n <div key=\"caption\" className={cx('Image-info')}>\n {title ? (\n <div className={cx('Image-title')} title={title}>\n {title}\n </div>\n ) : null}\n {caption ? (\n <div className={cx('Image-caption')} title={caption}>\n {caption}\n </div>\n ) : null}\n </div>\n ) : null}\n </div>\n );\n\n if (href) {\n image = (\n <a\n href={href}\n target={htmlTarget || (blank ? '_blank' : '_self')}\n className={cx('Link', className)}\n title={title}\n >\n {image}\n </a>\n );\n }\n\n return image;\n }\n}\nconst ThemedImageThumb = themeable(localeable(ImageThumb));\nexport default ThemedImageThumb;\n\nexport const imagePlaceholder = `data:image/svg+xml,%3C%3Fxml version='1.0' standalone='no'%3F%3E%3C!DOCTYPE svg PUBLIC '-//W3C//DTD SVG 1.1//EN' 'http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd'%3E%3Csvg t='1631083237695' class='icon' viewBox='0 0 1024 1024' version='1.1' xmlns='http://www.w3.org/2000/svg' p-id='2420' xmlns:xlink='http://www.w3.org/1999/xlink' width='1024' height='1024'%3E%3Cdefs%3E%3Cstyle type='text/css'%3E%3C/style%3E%3C/defs%3E%3Cpath d='M959.872 128c0.032 0.032 0.096 0.064 0.128 0.128v767.776c-0.032 0.032-0.064 0.096-0.128 0.128H64.096c-0.032-0.032-0.096-0.064-0.128-0.128V128.128c0.032-0.032 0.064-0.096 0.128-0.128h895.776zM960 64H64C28.8 64 0 92.8 0 128v768c0 35.2 28.8 64 64 64h896c35.2 0 64-28.8 64-64V128c0-35.2-28.8-64-64-64z' p-id='2421' fill='%23bfbfbf'%3E%3C/path%3E%3Cpath d='M832 288c0 53.024-42.976 96-96 96s-96-42.976-96-96 42.976-96 96-96 96 42.976 96 96zM896 832H128V704l224-384 256 320h64l224-192z' p-id='2422' fill='%23bfbfbf'%3E%3C/path%3E%3C/svg%3E`;\n\nexport interface ImageFieldProps extends RendererProps {\n className?: string;\n imageClassName?: string;\n placeholder: string;\n description?: string;\n enlargeTitle?: string;\n enlargeCaption?: string;\n imageMode?: 'thumb' | 'original';\n thumbMode: 'w-full' | 'h-full' | 'contain' | 'cover';\n thumbRatio: '1:1' | '4:3' | '16:9';\n originalSrc?: string; // 原图\n enlargeAble?: boolean;\n onImageEnlarge?: (\n info: {\n src: string;\n originalSrc: string;\n title?: string;\n caption?: string;\n thumbMode?: 'w-full' | 'h-full' | 'contain' | 'cover';\n thumbRatio?: '1:1' | '4:3' | '16:9';\n },\n target: any\n ) => void;\n}\n\nexport class ImageField extends React.Component<ImageFieldProps, object> {\n static defaultProps: Pick<\n ImageFieldProps,\n 'defaultImage' | 'thumbMode' | 'thumbRatio' | 'placeholder'\n > = {\n defaultImage: imagePlaceholder,\n thumbMode: 'contain',\n thumbRatio: '1:1',\n placeholder: '-'\n };\n\n @autobind\n handleEnlarge({\n src,\n originalSrc,\n title,\n caption,\n thumbMode,\n thumbRatio\n }: ImageThumbProps) {\n const {onImageEnlarge, enlargeTitle, enlargeCaption} = this.props;\n\n onImageEnlarge &&\n onImageEnlarge(\n {\n src: src!,\n originalSrc: originalSrc || src!,\n title: enlargeTitle || title,\n caption: enlargeCaption || caption,\n thumbMode,\n thumbRatio\n },\n this.props\n );\n }\n\n render() {\n const {\n className,\n defaultImage,\n imageCaption,\n title,\n data,\n imageClassName,\n thumbClassName,\n height,\n width,\n classnames: cx,\n src,\n href,\n thumbMode,\n thumbRatio,\n placeholder,\n originalSrc,\n enlargeAble,\n imageMode\n } = this.props;\n\n const finnalSrc = src ? filter(src, data, '| raw') : '';\n let value =\n finnalSrc || getPropValue(this.props) || defaultImage || imagePlaceholder;\n\n const finnalHref = href ? filter(href, data, '| raw') : '';\n\n return (\n <div\n className={cx(\n 'ImageField',\n imageMode === 'original'\n ? 'ImageField--original'\n : 'ImageField--thumb',\n className\n )}\n >\n {value ? (\n <ThemedImageThumb\n imageClassName={imageClassName}\n thumbClassName={thumbClassName}\n height={height}\n width={width}\n src={value}\n href={finnalHref}\n title={filter(title, data)}\n caption={filter(imageCaption, data)}\n thumbMode={thumbMode}\n thumbRatio={thumbRatio}\n originalSrc={filter(originalSrc, data, '| raw') ?? value}\n enlargeAble={enlargeAble && value !== defaultImage}\n onEnlarge={this.handleEnlarge}\n imageMode={imageMode}\n />\n ) : (\n <span className=\"text-muted\">{placeholder}</span>\n )}\n </div>\n );\n }\n}\n\n@Renderer({\n type: 'image'\n})\nexport class ImageFieldRenderer extends ImageField {}\n"
11
+ "import React from 'react';\nimport {Renderer, RendererProps} from '../factory';\nimport {filter} from '../utils/tpl';\nimport {ClassNamesFn, themeable, ThemeProps} from '../theme';\nimport {autobind, getPropValue} from '../utils/helper';\nimport {Icon} from '../components/icons';\nimport {LocaleProps, localeable} from '../locale';\nimport {BaseSchema, SchemaClassName, SchemaTpl, SchemaUrlPath} from '../Schema';\nimport {resolveVariable} from '../utils/tpl-builtin';\nimport handleAction from '../utils/handleAction';\n\n/**\n * 图片展示控件。\n * 文档:https://baidu.gitee.io/amis/docs/components/image\n */\nexport interface ImageSchema extends BaseSchema {\n /**\n * 指定为图片展示类型\n */\n type: 'image' | 'static-image';\n\n /**\n * 默认图片地址\n */\n defaultImage?: SchemaUrlPath;\n\n /**\n * 图片标题\n */\n title?: SchemaTpl;\n\n /**\n * 关联字段名,也可以直接配置 src\n */\n name?: string;\n\n /**\n * 图片描述信息\n */\n imageCaption?: SchemaTpl;\n\n /**\n * 图片地址,如果配置了 name,这个属性不用配置。\n */\n src?: SchemaUrlPath;\n\n /**\n * 大图地址,不设置用 src\n */\n originalSrc?: SchemaUrlPath;\n\n /**\n * 是否启动放大功能。\n */\n enlargeAble?: boolean;\n\n /**\n * 是否显示尺寸。\n */\n // showDimensions?: boolean;\n\n /**\n * 图片无法显示时的替换文本\n */\n alt?: string;\n\n /**\n * 高度\n */\n height?: number;\n\n /**\n * 宽度\n */\n width?: number;\n\n /**\n * 图片 css 类名\n */\n imageClassName?: SchemaClassName;\n\n /**\n * 外层 css 类名\n */\n className?: SchemaClassName;\n\n /**\n * 图片缩率图外层 css 类名\n */\n thumbClassName?: SchemaClassName;\n\n caption?: SchemaTpl;\n\n /**\n * 图片展示模式,默认为缩略图模式、可以配置成原图模式\n */\n imageMode?: 'thumb' | 'original';\n\n /**\n * 预览图模式\n */\n thumbMode?: 'w-full' | 'h-full' | 'contain' | 'cover';\n\n /**\n * 预览图比率\n */\n thumbRatio?: '1:1' | '4:3' | '16:9';\n\n /**\n * 链接地址\n */\n href?: SchemaTpl;\n\n /**\n * 是否新窗口打开\n */\n blank?: boolean;\n\n /**\n * 链接的 target\n */\n htmlTarget?: string;\n}\n\nexport interface ImageThumbProps\n extends LocaleProps,\n ThemeProps,\n Omit<ImageSchema, 'type' | 'className'> {\n onEnlarge?: (info: ImageThumbProps) => void;\n index?: number;\n onLoad?: React.EventHandler<any>;\n overlays?: JSX.Element;\n}\n\nexport class ImageThumb extends React.Component<ImageThumbProps> {\n @autobind\n handleEnlarge() {\n const {onEnlarge, ...rest} = this.props;\n onEnlarge && onEnlarge(rest);\n }\n\n render() {\n const {\n classnames: cx,\n className,\n imageClassName,\n thumbClassName,\n thumbMode,\n thumbRatio,\n height,\n width,\n src,\n alt,\n title,\n caption,\n href,\n blank = true,\n htmlTarget,\n onLoad,\n enlargeAble,\n translate: __,\n overlays,\n imageMode\n } = this.props;\n\n let image = (\n <div\n className={cx(\n 'Image',\n imageMode === 'original' ? 'Image--original' : 'Image--thumb',\n className\n )}\n >\n {imageMode === 'original' ? (\n <div\n className={cx(\n 'Image-origin',\n thumbMode ? `Image-origin--${thumbMode}` : ''\n )}\n style={{height: height, width: width}}\n >\n <img\n onLoad={onLoad}\n className={cx('Image-image', imageClassName)}\n src={src}\n alt={alt}\n />\n </div>\n ) : (\n <div className={cx('Image-thumbWrap')}>\n <div\n className={cx(\n 'Image-thumb',\n thumbClassName,\n thumbMode ? `Image-thumb--${thumbMode}` : '',\n thumbRatio\n ? `Image-thumb--${thumbRatio.replace(/:/g, '-')}`\n : ''\n )}\n style={{height: height, width: width}}\n >\n <img\n onLoad={onLoad}\n className={cx('Image-image', imageClassName)}\n src={src}\n alt={alt}\n />\n </div>\n {enlargeAble || overlays ? (\n <div key=\"overlay\" className={cx('Image-overlay')}>\n {enlargeAble ? (\n <a\n data-tooltip={__('Image.zoomIn')}\n data-position=\"bottom\"\n target=\"_blank\"\n onClick={this.handleEnlarge}\n >\n <Icon icon=\"view\" className=\"icon\" />\n </a>\n ) : null}\n {overlays}\n </div>\n ) : null}\n </div>\n )}\n\n {title || caption ? (\n <div key=\"caption\" className={cx('Image-info')}>\n {title ? (\n <div className={cx('Image-title')} title={title}>\n {title}\n </div>\n ) : null}\n {caption ? (\n <div className={cx('Image-caption')} title={caption}>\n {caption}\n </div>\n ) : null}\n </div>\n ) : null}\n </div>\n );\n\n if (href) {\n image = (\n <a\n href={href}\n target={htmlTarget || (blank ? '_blank' : '_self')}\n className={cx('Link', className)}\n title={title}\n >\n {image}\n </a>\n );\n }\n\n return image;\n }\n}\nconst ThemedImageThumb = themeable(localeable(ImageThumb));\nexport default ThemedImageThumb;\n\nexport const imagePlaceholder = `data:image/svg+xml,%3C%3Fxml version='1.0' standalone='no'%3F%3E%3C!DOCTYPE svg PUBLIC '-//W3C//DTD SVG 1.1//EN' 'http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd'%3E%3Csvg t='1631083237695' class='icon' viewBox='0 0 1024 1024' version='1.1' xmlns='http://www.w3.org/2000/svg' p-id='2420' xmlns:xlink='http://www.w3.org/1999/xlink' width='1024' height='1024'%3E%3Cdefs%3E%3Cstyle type='text/css'%3E%3C/style%3E%3C/defs%3E%3Cpath d='M959.872 128c0.032 0.032 0.096 0.064 0.128 0.128v767.776c-0.032 0.032-0.064 0.096-0.128 0.128H64.096c-0.032-0.032-0.096-0.064-0.128-0.128V128.128c0.032-0.032 0.064-0.096 0.128-0.128h895.776zM960 64H64C28.8 64 0 92.8 0 128v768c0 35.2 28.8 64 64 64h896c35.2 0 64-28.8 64-64V128c0-35.2-28.8-64-64-64z' p-id='2421' fill='%23bfbfbf'%3E%3C/path%3E%3Cpath d='M832 288c0 53.024-42.976 96-96 96s-96-42.976-96-96 42.976-96 96-96 96 42.976 96 96zM896 832H128V704l224-384 256 320h64l224-192z' p-id='2422' fill='%23bfbfbf'%3E%3C/path%3E%3C/svg%3E`;\n\nexport interface ImageFieldProps extends RendererProps {\n className?: string;\n imageClassName?: string;\n placeholder: string;\n description?: string;\n enlargeTitle?: string;\n enlargeCaption?: string;\n imageMode?: 'thumb' | 'original';\n thumbMode: 'w-full' | 'h-full' | 'contain' | 'cover';\n thumbRatio: '1:1' | '4:3' | '16:9';\n originalSrc?: string; // 原图\n enlargeAble?: boolean;\n onImageEnlarge?: (\n info: {\n src: string;\n originalSrc: string;\n title?: string;\n caption?: string;\n thumbMode?: 'w-full' | 'h-full' | 'contain' | 'cover';\n thumbRatio?: '1:1' | '4:3' | '16:9';\n },\n target: any\n ) => void;\n}\n\nexport class ImageField extends React.Component<ImageFieldProps, object> {\n static defaultProps: Pick<\n ImageFieldProps,\n 'defaultImage' | 'thumbMode' | 'thumbRatio' | 'placeholder'\n > = {\n defaultImage: imagePlaceholder,\n thumbMode: 'contain',\n thumbRatio: '1:1',\n placeholder: '-'\n };\n\n @autobind\n handleEnlarge({\n src,\n originalSrc,\n title,\n caption,\n thumbMode,\n thumbRatio\n }: ImageThumbProps) {\n const {onImageEnlarge, enlargeTitle, enlargeCaption} = this.props;\n\n onImageEnlarge &&\n onImageEnlarge(\n {\n src: src!,\n originalSrc: originalSrc || src!,\n title: enlargeTitle || title,\n caption: enlargeCaption || caption,\n thumbMode,\n thumbRatio\n },\n this.props\n );\n }\n\n @autobind\n handleClick(e: React.MouseEvent<HTMLElement>) {\n const clickAction = this.props.clickAction;\n if (clickAction) {\n handleAction(e, clickAction, this.props);\n }\n }\n\n render() {\n const {\n className,\n defaultImage,\n imageCaption,\n title,\n data,\n imageClassName,\n thumbClassName,\n height,\n width,\n classnames: cx,\n src,\n href,\n thumbMode,\n thumbRatio,\n placeholder,\n originalSrc,\n enlargeAble,\n imageMode\n } = this.props;\n\n const finnalSrc = src ? filter(src, data, '| raw') : '';\n let value =\n finnalSrc || getPropValue(this.props) || defaultImage || imagePlaceholder;\n\n const finnalHref = href ? filter(href, data, '| raw') : '';\n\n return (\n <div\n className={cx(\n 'ImageField',\n imageMode === 'original'\n ? 'ImageField--original'\n : 'ImageField--thumb',\n className\n )}\n onClick={this.handleClick}\n >\n {value ? (\n <ThemedImageThumb\n imageClassName={imageClassName}\n thumbClassName={thumbClassName}\n height={height}\n width={width}\n src={value}\n href={finnalHref}\n title={filter(title, data)}\n caption={filter(imageCaption, data)}\n thumbMode={thumbMode}\n thumbRatio={thumbRatio}\n originalSrc={filter(originalSrc, data, '| raw') ?? value}\n enlargeAble={enlargeAble && value !== defaultImage}\n onEnlarge={this.handleEnlarge}\n imageMode={imageMode}\n />\n ) : (\n <span className=\"text-muted\">{placeholder}</span>\n )}\n </div>\n );\n }\n}\n\n@Renderer({\n type: 'image'\n})\nexport class ImageFieldRenderer extends ImageField {}\n"
12
12
  ]
13
13
  }
@@ -23,6 +23,10 @@ export interface JsonSchema extends BaseSchema {
23
23
  * 是否可修改
24
24
  */
25
25
  mutable?: boolean;
26
+ /**
27
+ * 是否显示数据类型
28
+ */
29
+ displayDataTypes?: boolean;
26
30
  }
27
31
  export interface JSONProps extends RendererProps, JsonSchema {
28
32
  levelExpand: number;
@@ -31,22 +31,12 @@ var JSONField = /** @class */ (function (_super) {
31
31
  JSONField.prototype.render = function () {
32
32
  var _a;
33
33
  var _b;
34
- var _c = this.props, className = _c.className, jsonTheme = _c.jsonTheme, cx = _c.classnames, placeholder = _c.placeholder, source = _c.source, levelExpand = _c.levelExpand, mutable = _c.mutable, name = _c.name;
34
+ var _c = this.props, className = _c.className, jsonTheme = _c.jsonTheme, cx = _c.classnames, placeholder = _c.placeholder, source = _c.source, levelExpand = _c.levelExpand, mutable = _c.mutable, displayDataTypes = _c.displayDataTypes, name = _c.name;
35
35
  var value = (0, helper_1.getPropValue)(this.props);
36
36
  var data = value;
37
37
  if (source !== undefined && (0, tpl_builtin_1.isPureVariable)(source)) {
38
38
  data = (0, tpl_builtin_1.resolveVariableAndFilter)(source, this.props.data, '| raw');
39
39
  }
40
- else if (typeof value === 'string') {
41
- try {
42
- data = JSON.parse(value);
43
- }
44
- catch (e) {
45
- data = {
46
- error: e.message
47
- };
48
- }
49
- }
50
40
  var jsonThemeValue = jsonTheme;
51
41
  if ((0, tpl_builtin_1.isPureVariable)(jsonTheme)) {
52
42
  jsonThemeValue = (0, tpl_builtin_1.resolveVariableAndFilter)(jsonTheme, this.props.data, '| raw');
@@ -57,13 +47,14 @@ var JSONField = /** @class */ (function (_super) {
57
47
  _a[typeof data] = data,
58
48
  _a);
59
49
  }
60
- return (react_1.default.createElement("div", { className: cx('JsonField', className) }, typeof data === 'undefined' || data === null ? (placeholder) : (react_1.default.createElement(react_json_view_1.default, { name: false, src: data, theme: (_b = jsonThemeValue) !== null && _b !== void 0 ? _b : 'rjv-default', shouldCollapse: this.shouldExpandNode, enableClipboard: false, iconStyle: "square", onEdit: name && mutable ? this.emitChange : false, onDelete: name && mutable ? this.emitChange : false, onAdd: name && mutable ? this.emitChange : false }))));
50
+ return (react_1.default.createElement("div", { className: cx('JsonField', className) }, typeof data === 'undefined' || data === null ? (placeholder) : (react_1.default.createElement(react_json_view_1.default, { name: false, src: data, theme: (_b = jsonThemeValue) !== null && _b !== void 0 ? _b : 'rjv-default', shouldCollapse: this.shouldExpandNode, enableClipboard: false, displayDataTypes: displayDataTypes, iconStyle: "square", onEdit: name && mutable ? this.emitChange : false, onDelete: name && mutable ? this.emitChange : false, onAdd: name && mutable ? this.emitChange : false }))));
61
51
  };
62
52
  var _a;
63
53
  JSONField.defaultProps = {
64
54
  placeholder: '-',
65
55
  levelExpand: 1,
66
- source: ''
56
+ source: '',
57
+ displayDataTypes: false
67
58
  };
68
59
  (0, tslib_1.__decorate)([
69
60
  helper_1.autobind,
@@ -6,8 +6,8 @@
6
6
  "/src/renderers/Json.tsx"
7
7
  ],
8
8
  "names": [],
9
- "mappings": "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",
9
+ "mappings": "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",
10
10
  "sourcesContent": [
11
- "import React from 'react';\nimport {Renderer, RendererProps} from '../factory';\n\nimport JsonView, {InteractionProps} from 'react-json-view';\nimport {autobind, getPropValue, noop} from '../utils/helper';\nimport {BaseSchema} from '../Schema';\nimport {resolveVariableAndFilter, isPureVariable} from '../utils/tpl-builtin';\n/**\n * JSON 数据展示控件。\n * 文档:https://baidu.gitee.io/amis/docs/components/json\n */\nexport interface JsonSchema extends BaseSchema {\n /**\n * 指定为Json展示类型\n */\n type: 'json' | 'static-json';\n\n /**\n * 默认展开的级别\n */\n levelExpand?: number;\n\n /**\n * 支持从数据链取值\n */\n source?: string;\n\n /**\n * 是否可修改\n */\n mutable?: boolean;\n}\n\nexport interface JSONProps extends RendererProps, JsonSchema {\n levelExpand: number;\n className?: string;\n placeholder?: string;\n jsonTheme: string;\n hideRoot?: boolean;\n source?: string;\n}\n\nexport class JSONField extends React.Component<JSONProps, object> {\n static defaultProps: Partial<JSONProps> = {\n placeholder: '-',\n levelExpand: 1,\n source: ''\n };\n\n @autobind\n emitChange(e: InteractionProps) {\n const {onChange, name} = this.props;\n\n if (!name || !onChange) {\n return false;\n }\n\n onChange(e.updated_src, name);\n return true;\n }\n\n @autobind\n shouldExpandNode({namespace}: {namespace: Array<string | null>}) {\n const {levelExpand} = this.props;\n\n if (typeof levelExpand !== 'number') {\n return false;\n }\n\n return namespace.length > levelExpand;\n }\n\n render() {\n const {\n className,\n jsonTheme,\n classnames: cx,\n placeholder,\n source,\n levelExpand,\n mutable,\n name\n } = this.props;\n\n const value = getPropValue(this.props);\n\n let data = value;\n if (source !== undefined && isPureVariable(source)) {\n data = resolveVariableAndFilter(source, this.props.data, '| raw');\n } else if (typeof value === 'string') {\n try {\n data = JSON.parse(value);\n } catch (e) {\n data = {\n error: e.message\n };\n }\n }\n\n let jsonThemeValue = jsonTheme;\n if (isPureVariable(jsonTheme)) {\n jsonThemeValue = resolveVariableAndFilter(\n jsonTheme,\n this.props.data,\n '| raw'\n );\n }\n\n // JsonView 只支持对象,所以不是对象格式需要转成对象格式。\n if (data && ~['string', 'number'].indexOf(typeof data)) {\n data = {\n [typeof data]: data\n };\n }\n\n return (\n <div className={cx('JsonField', className)}>\n {typeof data === 'undefined' || data === null ? (\n placeholder\n ) : (\n <JsonView\n name={false}\n src={data}\n theme={(jsonThemeValue as any) ?? 'rjv-default'}\n shouldCollapse={this.shouldExpandNode}\n enableClipboard={false}\n iconStyle=\"square\"\n onEdit={name && mutable ? this.emitChange : false}\n onDelete={name && mutable ? this.emitChange : false}\n onAdd={name && mutable ? this.emitChange : false}\n />\n )}\n </div>\n );\n }\n}\n\n@Renderer({\n type: 'json'\n})\nexport class JSONFieldRenderer extends JSONField {}\n"
11
+ "import React from 'react';\nimport {Renderer, RendererProps} from '../factory';\n\nimport JsonView, {InteractionProps} from 'react-json-view';\nimport {autobind, getPropValue, noop} from '../utils/helper';\nimport {BaseSchema} from '../Schema';\nimport {resolveVariableAndFilter, isPureVariable} from '../utils/tpl-builtin';\n/**\n * JSON 数据展示控件。\n * 文档:https://baidu.gitee.io/amis/docs/components/json\n */\nexport interface JsonSchema extends BaseSchema {\n /**\n * 指定为Json展示类型\n */\n type: 'json' | 'static-json';\n\n /**\n * 默认展开的级别\n */\n levelExpand?: number;\n\n /**\n * 支持从数据链取值\n */\n source?: string;\n\n /**\n * 是否可修改\n */\n mutable?: boolean;\n\n /**\n * 是否显示数据类型\n */\n displayDataTypes?: boolean;\n}\n\nexport interface JSONProps extends RendererProps, JsonSchema {\n levelExpand: number;\n className?: string;\n placeholder?: string;\n jsonTheme: string;\n hideRoot?: boolean;\n source?: string;\n}\n\nexport class JSONField extends React.Component<JSONProps, object> {\n static defaultProps: Partial<JSONProps> = {\n placeholder: '-',\n levelExpand: 1,\n source: '',\n displayDataTypes: false\n };\n\n @autobind\n emitChange(e: InteractionProps) {\n const {onChange, name} = this.props;\n\n if (!name || !onChange) {\n return false;\n }\n\n onChange(e.updated_src, name);\n return true;\n }\n\n @autobind\n shouldExpandNode({namespace}: {namespace: Array<string | null>}) {\n const {levelExpand} = this.props;\n\n if (typeof levelExpand !== 'number') {\n return false;\n }\n\n return namespace.length > levelExpand;\n }\n\n render() {\n const {\n className,\n jsonTheme,\n classnames: cx,\n placeholder,\n source,\n levelExpand,\n mutable,\n displayDataTypes,\n name\n } = this.props;\n\n const value = getPropValue(this.props);\n\n let data = value;\n if (source !== undefined && isPureVariable(source)) {\n data = resolveVariableAndFilter(source, this.props.data, '| raw');\n }\n\n let jsonThemeValue = jsonTheme;\n if (isPureVariable(jsonTheme)) {\n jsonThemeValue = resolveVariableAndFilter(\n jsonTheme,\n this.props.data,\n '| raw'\n );\n }\n\n // JsonView 只支持对象,所以不是对象格式需要转成对象格式。\n if (data && ~['string', 'number'].indexOf(typeof data)) {\n data = {\n [typeof data]: data\n };\n }\n\n return (\n <div className={cx('JsonField', className)}>\n {typeof data === 'undefined' || data === null ? (\n placeholder\n ) : (\n <JsonView\n name={false}\n src={data}\n theme={(jsonThemeValue as any) ?? 'rjv-default'}\n shouldCollapse={this.shouldExpandNode}\n enableClipboard={false}\n displayDataTypes={displayDataTypes}\n iconStyle=\"square\"\n onEdit={name && mutable ? this.emitChange : false}\n onDelete={name && mutable ? this.emitChange : false}\n onAdd={name && mutable ? this.emitChange : false}\n />\n )}\n </div>\n );\n }\n}\n\n@Renderer({\n type: 'json'\n})\nexport class JSONFieldRenderer extends JSONField {}\n"
12
12
  ]
13
13
  }
@@ -23,15 +23,30 @@ export interface LinkSchema extends BaseSchema {
23
23
  * 角标
24
24
  */
25
25
  badge?: BadgeSchema;
26
+ /**
27
+ * a标签原生target属性
28
+ */
29
+ htmlTarget?: string;
30
+ /**
31
+ * 图标
32
+ */
33
+ icon?: string;
34
+ /**
35
+ * 右侧图标
36
+ */
37
+ rightIcon?: string;
26
38
  }
27
39
  export interface LinkProps extends RendererProps, Omit<LinkSchema, 'type' | 'className'> {
28
40
  }
29
- export declare class LinkField extends React.Component<LinkProps, object> {
41
+ export declare class LinkCmpt extends React.Component<LinkProps, object> {
30
42
  static defaultProps: {
31
- className: string;
32
43
  blank: boolean;
44
+ disabled: boolean;
45
+ htmlTarget: string;
33
46
  };
47
+ handleClick(href: string): void;
48
+ getHref(): void;
34
49
  render(): JSX.Element;
35
50
  }
36
- export declare class LinkFieldRenderer extends LinkField {
51
+ export declare class LinkFieldRenderer extends LinkCmpt {
37
52
  }
@@ -1,30 +1,42 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.LinkFieldRenderer = exports.LinkField = void 0;
3
+ exports.LinkFieldRenderer = exports.LinkCmpt = void 0;
4
4
  var tslib_1 = require("tslib");
5
5
  var react_1 = (0, tslib_1.__importDefault)(require("react"));
6
6
  var factory_1 = require("../factory");
7
7
  var helper_1 = require("../utils/helper");
8
8
  var tpl_1 = require("../utils/tpl");
9
9
  var Badge_1 = require("../components/Badge");
10
- var LinkField = /** @class */ (function (_super) {
11
- (0, tslib_1.__extends)(LinkField, _super);
12
- function LinkField() {
10
+ var Link_1 = (0, tslib_1.__importDefault)(require("../components/Link"));
11
+ var LinkCmpt = /** @class */ (function (_super) {
12
+ (0, tslib_1.__extends)(LinkCmpt, _super);
13
+ function LinkCmpt() {
13
14
  return _super !== null && _super.apply(this, arguments) || this;
14
15
  }
15
- LinkField.prototype.render = function () {
16
- var _a = this.props, className = _a.className, body = _a.body, href = _a.href, cx = _a.classnames, blank = _a.blank, htmlTarget = _a.htmlTarget, data = _a.data, render = _a.render, __ = _a.translate, title = _a.title;
17
- var value = (0, helper_1.getPropValue)(this.props);
18
- var finnalHref = href ? (0, tpl_1.filter)(href, data, '| raw') : '';
19
- return (react_1.default.createElement("a", { href: finnalHref || value, target: htmlTarget || (blank ? '_blank' : '_self'), className: cx('Link', className), title: title }, body ? render('body', body) : finnalHref || value || __('link')));
16
+ LinkCmpt.prototype.handleClick = function (href) {
17
+ var _a = this.props, env = _a.env, blank = _a.blank, body = _a.body;
18
+ env === null || env === void 0 ? void 0 : env.tracker({
19
+ eventType: 'url',
20
+ // 需要和 action 里命名一致方便后续分析
21
+ eventData: { url: href, blank: blank, label: body }
22
+ }, this.props);
20
23
  };
21
- LinkField.defaultProps = {
22
- className: '',
23
- blank: false
24
+ LinkCmpt.prototype.getHref = function () { };
25
+ LinkCmpt.prototype.render = function () {
26
+ var _a = this.props, className = _a.className, body = _a.body, href = _a.href, cx = _a.classnames, blank = _a.blank, disabled = _a.disabled, htmlTarget = _a.htmlTarget, data = _a.data, render = _a.render, __ = _a.translate, title = _a.title, icon = _a.icon, rightIcon = _a.rightIcon;
27
+ var value = (typeof href === 'string' && href
28
+ ? (0, tpl_1.filter)(href, data, '| raw')
29
+ : undefined) || (0, helper_1.getPropValue)(this.props);
30
+ return (react_1.default.createElement(Link_1.default, { className: className, href: value, disabled: disabled, title: title, htmlTarget: htmlTarget || (blank ? '_blank' : '_self'), icon: icon, rightIcon: rightIcon }, body ? render('body', body) : value || __('link')));
24
31
  };
25
- return LinkField;
32
+ LinkCmpt.defaultProps = {
33
+ blank: true,
34
+ disabled: false,
35
+ htmlTarget: ''
36
+ };
37
+ return LinkCmpt;
26
38
  }(react_1.default.Component));
27
- exports.LinkField = LinkField;
39
+ exports.LinkCmpt = LinkCmpt;
28
40
  var LinkFieldRenderer = /** @class */ (function (_super) {
29
41
  (0, tslib_1.__extends)(LinkFieldRenderer, _super);
30
42
  function LinkFieldRenderer() {
@@ -39,6 +51,6 @@ var LinkFieldRenderer = /** @class */ (function (_super) {
39
51
  Badge_1.withBadge
40
52
  ], LinkFieldRenderer);
41
53
  return LinkFieldRenderer;
42
- }(LinkField));
54
+ }(LinkCmpt));
43
55
  exports.LinkFieldRenderer = LinkFieldRenderer;
44
56
  //# sourceMappingURL=./renderers/Link.js.map