amis-editor 4.2.0-beta.0 → 5.2.0-beta.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (552) hide show
  1. package/lib/component/BaseControl.d.ts +1831 -0
  2. package/lib/component/BaseControl.js +366 -0
  3. package/{dist/component/base → lib/component}/InputComponentName.d.ts +0 -0
  4. package/lib/component/InputComponentName.js +44 -0
  5. package/{dist → lib}/component/TableViewEditor.d.ts +2 -2
  6. package/lib/component/TableViewEditor.js +528 -0
  7. package/lib/event-action/actions.d.ts +3 -0
  8. package/lib/event-action/actions.js +188 -0
  9. package/lib/event-action/schema.d.ts +13 -0
  10. package/lib/event-action/schema.js +134 -0
  11. package/{dist → lib}/index.d.ts +26 -33
  12. package/lib/index.js +181 -0
  13. package/{dist → lib}/plugin/Alert.d.ts +4 -2
  14. package/lib/plugin/Alert.js +113 -0
  15. package/lib/plugin/AnchorNav.d.ts +48 -0
  16. package/lib/plugin/AnchorNav.js +297 -0
  17. package/{dist → lib}/plugin/Audio.d.ts +1 -1
  18. package/lib/plugin/Audio.js +157 -0
  19. package/{dist → lib}/plugin/Avatar.d.ts +11 -2
  20. package/lib/plugin/Avatar.js +305 -0
  21. package/{dist → lib}/plugin/Breadcrumb.d.ts +1 -1
  22. package/lib/plugin/Breadcrumb.js +116 -0
  23. package/{dist → lib}/plugin/Button.d.ts +6 -2
  24. package/lib/plugin/Button.js +297 -0
  25. package/lib/plugin/ButtonGroup.d.ts +39 -0
  26. package/lib/plugin/ButtonGroup.js +139 -0
  27. package/{dist → lib}/plugin/ButtonToolbar.d.ts +5 -11
  28. package/lib/plugin/ButtonToolbar.js +89 -0
  29. package/{dist → lib}/plugin/CRUD.d.ts +3 -1
  30. package/lib/plugin/CRUD.js +1528 -0
  31. package/{dist → lib}/plugin/Card.d.ts +1 -1
  32. package/lib/plugin/Card.js +233 -0
  33. package/{dist → lib}/plugin/Cards.d.ts +1 -1
  34. package/lib/plugin/Cards.js +254 -0
  35. package/{dist → lib}/plugin/Carousel.d.ts +1 -1
  36. package/lib/plugin/Carousel.js +358 -0
  37. package/{dist → lib}/plugin/Chart.d.ts +3 -1
  38. package/lib/plugin/Chart.js +192 -0
  39. package/{dist → lib}/plugin/CodeView.d.ts +1 -1
  40. package/lib/plugin/CodeView.js +68 -0
  41. package/{dist → lib}/plugin/Collapse.d.ts +2 -1
  42. package/lib/plugin/Collapse.js +138 -0
  43. package/{dist → lib}/plugin/CollapseGroup.d.ts +29 -5
  44. package/lib/plugin/CollapseGroup.js +237 -0
  45. package/{dist → lib}/plugin/Container.d.ts +3 -2
  46. package/lib/plugin/Container.js +100 -0
  47. package/{dist → lib}/plugin/Custom.d.ts +1 -1
  48. package/lib/plugin/Custom.js +109 -0
  49. package/{dist → lib}/plugin/CustomRegion.d.ts +1 -1
  50. package/lib/plugin/CustomRegion.js +154 -0
  51. package/{dist → lib}/plugin/Date.d.ts +1 -1
  52. package/lib/plugin/Date.js +82 -0
  53. package/{dist → lib}/plugin/Datetime.d.ts +1 -1
  54. package/lib/plugin/Datetime.js +77 -0
  55. package/{dist → lib}/plugin/Dialog.d.ts +12 -2
  56. package/lib/plugin/Dialog.js +214 -0
  57. package/{dist → lib}/plugin/Divider.d.ts +1 -1
  58. package/lib/plugin/Divider.js +49 -0
  59. package/{dist → lib}/plugin/Drawer.d.ts +12 -2
  60. package/lib/plugin/Drawer.js +240 -0
  61. package/{dist → lib}/plugin/DropDownButton.d.ts +12 -11
  62. package/lib/plugin/DropDownButton.js +229 -0
  63. package/{dist → lib}/plugin/Each.d.ts +1 -1
  64. package/lib/plugin/Each.js +131 -0
  65. package/{dist → lib}/plugin/Flex.d.ts +1 -1
  66. package/lib/plugin/Flex.js +203 -0
  67. package/{dist → lib}/plugin/Form/ButtonGroupSelect.d.ts +7 -2
  68. package/lib/plugin/Form/ButtonGroupSelect.js +161 -0
  69. package/{dist → lib}/plugin/Form/ButtonToolbar.d.ts +8 -7
  70. package/lib/plugin/Form/ButtonToolbar.js +107 -0
  71. package/{dist → lib}/plugin/Form/ChainedSelect.d.ts +8 -2
  72. package/lib/plugin/Form/ChainedSelect.js +183 -0
  73. package/{dist → lib}/plugin/Form/Checkbox.d.ts +7 -2
  74. package/lib/plugin/Form/Checkbox.js +174 -0
  75. package/{dist → lib}/plugin/Form/Checkboxes.d.ts +8 -2
  76. package/lib/plugin/Form/Checkboxes.js +213 -0
  77. package/lib/plugin/Form/CodeEditor.d.ts +25 -0
  78. package/lib/plugin/Form/CodeEditor.js +201 -0
  79. package/{dist → lib}/plugin/Form/Combo.d.ts +4 -1
  80. package/lib/plugin/Form/Combo.js +546 -0
  81. package/{dist → lib}/plugin/Form/ConditionBuilder.d.ts +1 -1
  82. package/lib/plugin/Form/ConditionBuilder.js +302 -0
  83. package/{dist → lib}/plugin/Form/Control.d.ts +6 -2
  84. package/lib/plugin/Form/Control.js +88 -0
  85. package/{dist → lib}/plugin/Form/DiffEditor.d.ts +8 -2
  86. package/lib/plugin/Form/DiffEditor.js +204 -0
  87. package/{dist → lib}/plugin/Form/FieldSet.d.ts +1 -1
  88. package/lib/plugin/Form/FieldSet.js +152 -0
  89. package/{dist → lib}/plugin/Form/Form.d.ts +7 -1
  90. package/lib/plugin/Form/Form.js +846 -0
  91. package/{dist → lib}/plugin/Form/Formula.d.ts +2 -26
  92. package/lib/plugin/Form/Formula.js +82 -0
  93. package/{dist → lib}/plugin/Form/Group.d.ts +1 -1
  94. package/lib/plugin/Form/Group.js +252 -0
  95. package/{dist → lib}/plugin/Form/Hidden.d.ts +1 -1
  96. package/lib/plugin/Form/Hidden.js +58 -0
  97. package/{dist → lib}/plugin/Form/InputArray.d.ts +1 -1
  98. package/lib/plugin/Form/InputArray.js +181 -0
  99. package/{dist → lib}/plugin/Form/InputCity.d.ts +6 -2
  100. package/lib/plugin/Form/InputCity.js +139 -0
  101. package/{dist → lib}/plugin/Form/InputColor.d.ts +20 -18
  102. package/lib/plugin/Form/InputColor.js +295 -0
  103. package/lib/plugin/Form/InputDate.d.ts +26 -0
  104. package/lib/plugin/Form/InputDate.js +357 -0
  105. package/lib/plugin/Form/InputDateRange.d.ts +26 -0
  106. package/lib/plugin/Form/InputDateRange.js +350 -0
  107. package/{dist → lib}/plugin/Form/InputDateTime.d.ts +4 -4
  108. package/lib/plugin/Form/InputDateTime.js +50 -0
  109. package/lib/plugin/Form/InputDateTimeRange.d.ts +20 -0
  110. package/lib/plugin/Form/InputDateTimeRange.js +51 -0
  111. package/{dist → lib}/plugin/Form/InputEmail.d.ts +1 -0
  112. package/lib/plugin/Form/InputEmail.js +45 -0
  113. package/lib/plugin/Form/InputExcel.d.ts +23 -0
  114. package/lib/plugin/Form/InputExcel.js +121 -0
  115. package/{dist → lib}/plugin/Form/InputFile.d.ts +7 -3
  116. package/lib/plugin/Form/InputFile.js +354 -0
  117. package/{dist → lib}/plugin/Form/InputGroup.d.ts +1 -1
  118. package/lib/plugin/Form/InputGroup.js +100 -0
  119. package/{dist → lib}/plugin/Form/InputImage.d.ts +6 -2
  120. package/lib/plugin/Form/InputImage.js +271 -0
  121. package/{dist → lib}/plugin/Form/InputKV.d.ts +7 -1
  122. package/lib/plugin/Form/InputKV.js +129 -0
  123. package/{dist → lib}/plugin/Form/InputMonth.d.ts +1 -0
  124. package/lib/plugin/Form/InputMonth.js +48 -0
  125. package/{dist → lib}/plugin/Form/InputMonthRange.d.ts +4 -4
  126. package/lib/plugin/Form/InputMonthRange.js +51 -0
  127. package/{dist → lib}/plugin/Form/InputNumber.d.ts +7 -2
  128. package/lib/plugin/Form/InputNumber.js +263 -0
  129. package/{dist → lib}/plugin/Form/InputPassword.d.ts +1 -0
  130. package/lib/plugin/Form/InputPassword.js +45 -0
  131. package/{dist → lib}/plugin/Form/InputQuarter.d.ts +1 -0
  132. package/lib/plugin/Form/InputQuarter.js +48 -0
  133. package/{dist → lib}/plugin/Form/InputQuarterRange.d.ts +4 -4
  134. package/lib/plugin/Form/InputQuarterRange.js +51 -0
  135. package/{dist → lib}/plugin/Form/InputRange.d.ts +7 -2
  136. package/lib/plugin/Form/InputRange.js +292 -0
  137. package/lib/plugin/Form/InputRating.d.ts +25 -0
  138. package/lib/plugin/Form/InputRating.js +357 -0
  139. package/{dist → lib}/plugin/Form/InputRepeat.d.ts +1 -1
  140. package/lib/plugin/Form/InputRepeat.js +65 -0
  141. package/{dist → lib}/plugin/Form/InputRichText.d.ts +1 -1
  142. package/lib/plugin/Form/InputRichText.js +193 -0
  143. package/{dist → lib}/plugin/Form/InputSubForm.d.ts +1 -1
  144. package/lib/plugin/Form/InputSubForm.js +160 -0
  145. package/{dist → lib}/plugin/Form/InputTable.d.ts +1 -1
  146. package/lib/plugin/Form/InputTable.js +400 -0
  147. package/{dist → lib}/plugin/Form/InputTag.d.ts +6 -2
  148. package/lib/plugin/Form/InputTag.js +155 -0
  149. package/lib/plugin/Form/InputText.d.ts +42 -0
  150. package/lib/plugin/Form/InputText.js +328 -0
  151. package/{dist → lib}/plugin/Form/InputTime.d.ts +3 -3
  152. package/lib/plugin/Form/InputTime.js +48 -0
  153. package/{dist/plugin/Form/InputDateTimeRange.d.ts → lib/plugin/Form/InputTimeRange.d.ts} +4 -4
  154. package/lib/plugin/Form/InputTimeRange.js +51 -0
  155. package/{dist → lib}/plugin/Form/InputTree.d.ts +6 -2
  156. package/lib/plugin/Form/InputTree.js +375 -0
  157. package/{dist → lib}/plugin/Form/InputURL.d.ts +1 -0
  158. package/lib/plugin/Form/InputURL.js +46 -0
  159. package/{dist → lib}/plugin/Form/InputYear.d.ts +1 -0
  160. package/lib/plugin/Form/InputYear.js +48 -0
  161. package/{dist/plugin/Form/InputDate.d.ts → lib/plugin/Form/InputYearRange.d.ts} +4 -4
  162. package/lib/plugin/Form/InputYearRange.js +51 -0
  163. package/{dist → lib}/plugin/Form/Item.d.ts +2 -2
  164. package/lib/plugin/Form/Item.js +265 -0
  165. package/{dist → lib}/plugin/Form/ListSelect.d.ts +6 -2
  166. package/lib/plugin/Form/ListSelect.js +130 -0
  167. package/{dist/plugin/Form/InputDateRange.d.ts → lib/plugin/Form/LocationPicker.d.ts} +5 -6
  168. package/lib/plugin/Form/LocationPicker.js +74 -0
  169. package/{dist → lib}/plugin/Form/MatrixCheckboxes.d.ts +7 -2
  170. package/lib/plugin/Form/MatrixCheckboxes.js +234 -0
  171. package/{dist → lib}/plugin/Form/NestedSelect.d.ts +8 -2
  172. package/lib/plugin/Form/NestedSelect.js +328 -0
  173. package/{dist → lib}/plugin/Form/Picker.d.ts +1 -1
  174. package/lib/plugin/Form/Picker.js +169 -0
  175. package/{dist → lib}/plugin/Form/Radios.d.ts +7 -2
  176. package/lib/plugin/Form/Radios.js +189 -0
  177. package/{dist → lib}/plugin/Form/Select.d.ts +7 -2
  178. package/lib/plugin/Form/Select.js +304 -0
  179. package/{dist → lib}/plugin/Form/Static.d.ts +4 -3
  180. package/lib/plugin/Form/Static.js +312 -0
  181. package/{dist → lib}/plugin/Form/Switch.d.ts +7 -2
  182. package/lib/plugin/Form/Switch.js +219 -0
  183. package/{dist → lib}/plugin/Form/TabsTransfer.d.ts +5 -2
  184. package/lib/plugin/Form/TabsTransfer.js +348 -0
  185. package/{dist → lib}/plugin/Form/Textarea.d.ts +8 -2
  186. package/lib/plugin/Form/Textarea.js +190 -0
  187. package/{dist → lib}/plugin/Form/Transfer.d.ts +5 -2
  188. package/lib/plugin/Form/Transfer.js +414 -0
  189. package/{dist → lib}/plugin/Form/TreeSelect.d.ts +6 -2
  190. package/lib/plugin/Form/TreeSelect.js +375 -0
  191. package/{dist → lib}/plugin/Form/UUID.d.ts +1 -1
  192. package/lib/plugin/Form/UUID.js +55 -0
  193. package/{dist → lib}/plugin/Grid.d.ts +2 -2
  194. package/lib/plugin/Grid.js +680 -0
  195. package/{dist → lib}/plugin/HBox.d.ts +2 -2
  196. package/lib/plugin/HBox.js +594 -0
  197. package/{dist → lib}/plugin/IFrame.d.ts +3 -2
  198. package/lib/plugin/IFrame.js +94 -0
  199. package/{dist → lib}/plugin/Image.d.ts +1 -1
  200. package/lib/plugin/Image.js +264 -0
  201. package/{dist → lib}/plugin/Images.d.ts +1 -1
  202. package/lib/plugin/Images.js +214 -0
  203. package/{dist → lib}/plugin/Json.d.ts +1 -1
  204. package/lib/plugin/Json.js +82 -0
  205. package/{dist → lib}/plugin/Link.d.ts +2 -1
  206. package/lib/plugin/Link.js +120 -0
  207. package/{dist → lib}/plugin/List.d.ts +1 -1
  208. package/lib/plugin/List.js +220 -0
  209. package/{dist → lib}/plugin/ListItem.d.ts +1 -1
  210. package/lib/plugin/ListItem.js +195 -0
  211. package/{dist → lib}/plugin/Log.d.ts +1 -1
  212. package/lib/plugin/Log.js +62 -0
  213. package/{dist → lib}/plugin/Mapping.d.ts +1 -1
  214. package/lib/plugin/Mapping.js +149 -0
  215. package/{dist → lib}/plugin/Markdown.d.ts +1 -1
  216. package/lib/plugin/Markdown.js +58 -0
  217. package/lib/plugin/Nav.d.ts +48 -0
  218. package/lib/plugin/Nav.js +181 -0
  219. package/{dist → lib}/plugin/Operation.d.ts +1 -1
  220. package/lib/plugin/Operation.js +84 -0
  221. package/{dist → lib}/plugin/Others/Action.d.ts +6 -2
  222. package/lib/plugin/Others/Action.js +350 -0
  223. package/{dist → lib}/plugin/Others/TableCell.d.ts +1 -1
  224. package/lib/plugin/Others/TableCell.js +393 -0
  225. package/{dist → lib}/plugin/Page.d.ts +6 -3
  226. package/lib/plugin/Page.js +363 -0
  227. package/lib/plugin/Pagination.d.ts +51 -0
  228. package/lib/plugin/Pagination.js +247 -0
  229. package/{dist → lib}/plugin/Panel.d.ts +1 -1
  230. package/lib/plugin/Panel.js +222 -0
  231. package/{dist → lib}/plugin/Plain.d.ts +1 -1
  232. package/lib/plugin/Plain.js +88 -0
  233. package/{dist → lib}/plugin/Progress.d.ts +6 -2
  234. package/lib/plugin/Progress.js +258 -0
  235. package/{dist → lib}/plugin/Property.d.ts +1 -1
  236. package/lib/plugin/Property.js +147 -0
  237. package/{dist → lib}/plugin/QRCode.d.ts +1 -1
  238. package/lib/plugin/QRCode.js +107 -0
  239. package/{dist → lib}/plugin/Reset.d.ts +0 -0
  240. package/lib/plugin/Reset.js +38 -0
  241. package/{dist → lib}/plugin/Service.d.ts +4 -1
  242. package/lib/plugin/Service.js +217 -0
  243. package/{dist → lib}/plugin/Sparkline.d.ts +1 -1
  244. package/lib/plugin/Sparkline.js +50 -0
  245. package/{dist → lib}/plugin/Status.d.ts +1 -1
  246. package/lib/plugin/Status.js +86 -0
  247. package/{dist → lib}/plugin/Steps.d.ts +1 -1
  248. package/lib/plugin/Steps.js +136 -0
  249. package/{dist → lib}/plugin/Submit.d.ts +0 -0
  250. package/lib/plugin/Submit.js +38 -0
  251. package/{dist → lib}/plugin/Table.d.ts +6 -1
  252. package/lib/plugin/Table.js +594 -0
  253. package/{dist → lib}/plugin/TableView.d.ts +1 -1
  254. package/lib/plugin/TableView.js +744 -0
  255. package/{dist → lib}/plugin/Tabs.d.ts +33 -2
  256. package/lib/plugin/Tabs.js +429 -0
  257. package/{dist → lib}/plugin/Tasks.d.ts +1 -1
  258. package/lib/plugin/Tasks.js +263 -0
  259. package/{dist → lib}/plugin/Time.d.ts +1 -1
  260. package/lib/plugin/Time.js +77 -0
  261. package/{dist → lib}/plugin/TooltipWrapper.d.ts +11 -1
  262. package/lib/plugin/TooltipWrapper.js +281 -0
  263. package/{dist → lib}/plugin/Tpl.d.ts +3 -2
  264. package/lib/plugin/Tpl.js +183 -0
  265. package/{dist → lib}/plugin/Video.d.ts +1 -1
  266. package/lib/plugin/Video.js +140 -0
  267. package/{dist → lib}/plugin/WebComponent.d.ts +1 -1
  268. package/lib/plugin/WebComponent.js +70 -0
  269. package/{dist → lib}/plugin/Wizard.d.ts +5 -2
  270. package/lib/plugin/Wizard.js +799 -0
  271. package/{dist → lib}/plugin/Wrapper.d.ts +1 -1
  272. package/lib/plugin/Wrapper.js +136 -0
  273. package/lib/renderer/APIControl.d.ts +7526 -0
  274. package/lib/renderer/APIControl.js +791 -0
  275. package/lib/renderer/BadgeControl.d.ts +133 -0
  276. package/lib/renderer/BadgeControl.js +290 -0
  277. package/lib/renderer/DataBindingControl.d.ts +14 -0
  278. package/lib/renderer/DataBindingControl.js +91 -0
  279. package/lib/renderer/DataMappingControl.d.ts +11 -0
  280. package/lib/renderer/DataMappingControl.js +73 -0
  281. package/lib/renderer/DataPickerControl.d.ts +13 -0
  282. package/lib/renderer/DataPickerControl.js +83 -0
  283. package/lib/renderer/DateShortCutControl.d.ts +83 -0
  284. package/lib/renderer/DateShortCutControl.js +254 -0
  285. package/lib/renderer/FormulaControl.d.ts +96 -0
  286. package/lib/renderer/FormulaControl.js +324 -0
  287. package/{dist/component/Control → lib/renderer}/OptionControl.d.ts +23 -34
  288. package/lib/renderer/OptionControl.js +672 -0
  289. package/{dist/component/Control → lib/renderer}/PopoverEdit.d.ts +0 -0
  290. package/lib/renderer/RangePartsControl.d.ts +91 -0
  291. package/lib/renderer/RangePartsControl.js +392 -0
  292. package/lib/renderer/StatusControl.d.ts +39 -0
  293. package/lib/renderer/StatusControl.js +171 -0
  294. package/lib/renderer/SwitchMoreControl.d.ts +222 -0
  295. package/lib/renderer/SwitchMoreControl.js +302 -0
  296. package/lib/renderer/ValidationControl.d.ts +65 -0
  297. package/lib/renderer/ValidationControl.js +279 -0
  298. package/lib/renderer/ValidationItem.d.ts +46 -0
  299. package/lib/renderer/ValidationItem.js +147 -0
  300. package/lib/renderer/style-control/Background.d.ts +17 -0
  301. package/lib/renderer/style-control/Background.js +493 -0
  302. package/lib/renderer/style-control/Border.d.ts +18 -0
  303. package/lib/renderer/style-control/Border.js +191 -0
  304. package/lib/renderer/style-control/BoxModel.d.ts +17 -0
  305. package/lib/renderer/style-control/BoxModel.js +73 -0
  306. package/lib/renderer/style-control/BoxShadow.d.ts +18 -0
  307. package/lib/renderer/style-control/BoxShadow.js +125 -0
  308. package/lib/renderer/style-control/Display.d.ts +14 -0
  309. package/lib/renderer/style-control/Display.js +233 -0
  310. package/lib/renderer/style-control/Font.d.ts +16 -0
  311. package/lib/renderer/style-control/Font.js +239 -0
  312. package/lib/renderer/style-control/font-family.d.ts +11 -0
  313. package/lib/renderer/style-control/font-family.js +149 -0
  314. package/lib/renderer/style-control/transformation.d.ts +29 -0
  315. package/lib/renderer/style-control/transformation.js +84 -0
  316. package/lib/renderer/style-control/types.d.ts +8 -0
  317. package/lib/tpl/api.d.ts +1 -0
  318. package/lib/tpl/api.js +378 -0
  319. package/lib/tpl/common.d.ts +1 -0
  320. package/lib/tpl/common.js +808 -0
  321. package/lib/tpl/horizontal.d.ts +1 -0
  322. package/lib/tpl/horizontal.js +260 -0
  323. package/lib/tpl/index.d.ts +7 -0
  324. package/lib/tpl/options.d.ts +1 -0
  325. package/lib/tpl/options.js +265 -0
  326. package/{dist/component/schemaTpl.d.ts → lib/tpl/style.d.ts} +0 -4
  327. package/lib/tpl/style.js +372 -0
  328. package/lib/tpl/validations.d.ts +1 -0
  329. package/lib/tpl/validations.js +568 -0
  330. package/lib/util.d.ts +23 -0
  331. package/lib/util.js +64 -0
  332. package/lib/validator.d.ts +62 -0
  333. package/lib/validator.js +417 -0
  334. package/package.json +36 -32
  335. package/dist/cebfe0bc5a1dbde02da1.svg +0 -10
  336. package/dist/compat.d.ts +0 -30
  337. package/dist/component/Breadcrumb.d.ts +0 -33
  338. package/dist/component/ClassNameControl.d.ts +0 -31
  339. package/dist/component/CommonConfigWrapper.d.ts +0 -6
  340. package/dist/component/ContainerWrapper.d.ts +0 -12
  341. package/dist/component/Control/APIControl.d.ts +0 -504
  342. package/dist/component/Control/ValidationControl.d.ts +0 -30
  343. package/dist/component/Editor.d.ts +0 -81
  344. package/dist/component/HighlightBox.d.ts +0 -29
  345. package/dist/component/IFrameBridge.d.ts +0 -32
  346. package/dist/component/IFramePreview.d.ts +0 -38
  347. package/dist/component/MiniEditor.d.ts +0 -9
  348. package/dist/component/NodeWrapper.d.ts +0 -20
  349. package/dist/component/Panel/AMisCodeEditor.d.ts +0 -37
  350. package/dist/component/Panel/AvailableRenderersPanel.d.ts +0 -10
  351. package/dist/component/Panel/CodeEditorPanel.d.ts +0 -6
  352. package/dist/component/Panel/ContextMenuPanel.d.ts +0 -8
  353. package/dist/component/Panel/DrawerPanel.d.ts +0 -15
  354. package/dist/component/Panel/DrawerRendererPanel.d.ts +0 -15
  355. package/dist/component/Panel/InsertSubRendererPanel.d.ts +0 -11
  356. package/dist/component/Panel/LeftPanels.d.ts +0 -20
  357. package/dist/component/Panel/Outline.d.ts +0 -18
  358. package/dist/component/Panel/RenderersPanel.d.ts +0 -31
  359. package/dist/component/Panel/RightPanels.d.ts +0 -21
  360. package/dist/component/Panel/TargetNamePanel.d.ts +0 -7
  361. package/dist/component/PopOverForm.d.ts +0 -22
  362. package/dist/component/Preview.d.ts +0 -67
  363. package/dist/component/RegionHLBox.d.ts +0 -20
  364. package/dist/component/RegionWrapper.d.ts +0 -196
  365. package/dist/component/RendererThumb.d.ts +0 -22
  366. package/dist/component/ScaffoldModal.d.ts +0 -24
  367. package/dist/component/SubEditor.d.ts +0 -67
  368. package/dist/component/VRenderer.d.ts +0 -181
  369. package/dist/component/base/BackTop.d.ts +0 -26
  370. package/dist/component/base/ErrorRenderer.d.ts +0 -4
  371. package/dist/component/base/SearchCustomRendererPanel.d.ts +0 -15
  372. package/dist/component/base/SearchPanel.d.ts +0 -83
  373. package/dist/component/base/SearchRendererPanel.d.ts +0 -19
  374. package/dist/component/base/WidthDraggableBtn.d.ts +0 -16
  375. package/dist/component/base/WidthDraggableContainer.d.ts +0 -2
  376. package/dist/component/remarkTpl.d.ts +0 -150
  377. package/dist/dnd/default.d.ts +0 -47
  378. package/dist/dnd/index.d.ts +0 -119
  379. package/dist/dnd/interface.d.ts +0 -14
  380. package/dist/dnd/position-h.d.ts +0 -7
  381. package/dist/env.d.ts +0 -5
  382. package/dist/exports.d.ts +0 -8
  383. package/dist/exports.min.js +0 -1
  384. package/dist/icons/index.d.ts +0 -2
  385. package/dist/index.min.js +0 -1
  386. package/dist/manager.d.ts +0 -457
  387. package/dist/mocker.d.ts +0 -1
  388. package/dist/plugin/AnchorNav.d.ts +0 -67
  389. package/dist/plugin/ButtonGroup.d.ts +0 -60
  390. package/dist/plugin/ErrorRenderer.d.ts +0 -7
  391. package/dist/plugin/Form/CodeEditor.d.ts +0 -40
  392. package/dist/plugin/Form/InputExcel.d.ts +0 -58
  393. package/dist/plugin/Form/InputRating.d.ts +0 -19
  394. package/dist/plugin/Form/InputText.d.ts +0 -20
  395. package/dist/plugin/Form/LocationPicker.d.ts +0 -48
  396. package/dist/plugin/Nav.d.ts +0 -163
  397. package/dist/plugin/Others/BasicToolbar.d.ts +0 -11
  398. package/dist/plugin/Others/DataDebug.d.ts +0 -19
  399. package/dist/plugin/Others/Unknown.d.ts +0 -5
  400. package/dist/plugin/Panel/AvailableRenderers.d.ts +0 -8
  401. package/dist/plugin/Panel/Code.d.ts +0 -9
  402. package/dist/plugin/Panel/Name.d.ts +0 -8
  403. package/dist/plugin/Panel/Outline.d.ts +0 -8
  404. package/dist/plugin.d.ts +0 -601
  405. package/dist/store/editor.d.ts +0 -1021
  406. package/dist/store/node.d.ts +0 -265
  407. package/dist/style.css +0 -1
  408. package/dist/util.d.ts +0 -72
  409. package/src/component/schemaTpl.tsx +0 -2157
  410. package/src/plugin/Alert.tsx +0 -87
  411. package/src/plugin/AnchorNav.tsx +0 -233
  412. package/src/plugin/Audio.tsx +0 -154
  413. package/src/plugin/Avatar.tsx +0 -77
  414. package/src/plugin/Breadcrumb.tsx +0 -107
  415. package/src/plugin/Button.tsx +0 -281
  416. package/src/plugin/ButtonGroup.tsx +0 -85
  417. package/src/plugin/ButtonToolbar.tsx +0 -87
  418. package/src/plugin/CRUD.tsx +0 -1835
  419. package/src/plugin/Card.tsx +0 -290
  420. package/src/plugin/Cards.tsx +0 -318
  421. package/src/plugin/Carousel.tsx +0 -377
  422. package/src/plugin/Chart.tsx +0 -218
  423. package/src/plugin/CodeView.tsx +0 -60
  424. package/src/plugin/Collapse.tsx +0 -136
  425. package/src/plugin/CollapseGroup.tsx +0 -167
  426. package/src/plugin/Container.tsx +0 -40
  427. package/src/plugin/Custom.tsx +0 -128
  428. package/src/plugin/CustomRegion.tsx +0 -156
  429. package/src/plugin/Date.tsx +0 -74
  430. package/src/plugin/Datetime.tsx +0 -68
  431. package/src/plugin/Dialog.tsx +0 -176
  432. package/src/plugin/Divider.tsx +0 -36
  433. package/src/plugin/Drawer.tsx +0 -214
  434. package/src/plugin/DropDownButton.tsx +0 -235
  435. package/src/plugin/Each.tsx +0 -150
  436. package/src/plugin/ErrorRenderer.tsx +0 -15
  437. package/src/plugin/Flex.tsx +0 -151
  438. package/src/plugin/Form/ButtonGroupSelect.tsx +0 -75
  439. package/src/plugin/Form/ButtonToolbar.tsx +0 -110
  440. package/src/plugin/Form/ChainedSelect.tsx +0 -70
  441. package/src/plugin/Form/Checkbox.tsx +0 -87
  442. package/src/plugin/Form/Checkboxes.tsx +0 -167
  443. package/src/plugin/Form/CodeEditor.tsx +0 -81
  444. package/src/plugin/Form/Combo.tsx +0 -582
  445. package/src/plugin/Form/ConditionBuilder.tsx +0 -315
  446. package/src/plugin/Form/Control.tsx +0 -139
  447. package/src/plugin/Form/DiffEditor.tsx +0 -111
  448. package/src/plugin/Form/FieldSet.tsx +0 -163
  449. package/src/plugin/Form/Form.tsx +0 -687
  450. package/src/plugin/Form/Formula.tsx +0 -79
  451. package/src/plugin/Form/Group.tsx +0 -295
  452. package/src/plugin/Form/Hidden.tsx +0 -44
  453. package/src/plugin/Form/InputArray.tsx +0 -228
  454. package/src/plugin/Form/InputCity.tsx +0 -93
  455. package/src/plugin/Form/InputColor.tsx +0 -123
  456. package/src/plugin/Form/InputDate.tsx +0 -175
  457. package/src/plugin/Form/InputDateRange.tsx +0 -225
  458. package/src/plugin/Form/InputDateTime.tsx +0 -183
  459. package/src/plugin/Form/InputDateTimeRange.tsx +0 -221
  460. package/src/plugin/Form/InputEmail.tsx +0 -33
  461. package/src/plugin/Form/InputExcel.tsx +0 -85
  462. package/src/plugin/Form/InputFile.tsx +0 -221
  463. package/src/plugin/Form/InputGroup.tsx +0 -96
  464. package/src/plugin/Form/InputImage.tsx +0 -266
  465. package/src/plugin/Form/InputKV.tsx +0 -72
  466. package/src/plugin/Form/InputMonth.tsx +0 -35
  467. package/src/plugin/Form/InputMonthRange.tsx +0 -195
  468. package/src/plugin/Form/InputNumber.tsx +0 -89
  469. package/src/plugin/Form/InputPassword.tsx +0 -33
  470. package/src/plugin/Form/InputQuarter.tsx +0 -35
  471. package/src/plugin/Form/InputQuarterRange.tsx +0 -195
  472. package/src/plugin/Form/InputRange.tsx +0 -121
  473. package/src/plugin/Form/InputRating.tsx +0 -78
  474. package/src/plugin/Form/InputRepeat.tsx +0 -57
  475. package/src/plugin/Form/InputRichText.tsx +0 -186
  476. package/src/plugin/Form/InputSubForm.tsx +0 -189
  477. package/src/plugin/Form/InputTable.tsx +0 -434
  478. package/src/plugin/Form/InputTag.tsx +0 -70
  479. package/src/plugin/Form/InputText.tsx +0 -186
  480. package/src/plugin/Form/InputTime.tsx +0 -85
  481. package/src/plugin/Form/InputTree.tsx +0 -229
  482. package/src/plugin/Form/InputURL.tsx +0 -34
  483. package/src/plugin/Form/InputYear.tsx +0 -35
  484. package/src/plugin/Form/Item.tsx +0 -327
  485. package/src/plugin/Form/ListSelect.tsx +0 -73
  486. package/src/plugin/Form/LocationPicker.tsx +0 -62
  487. package/src/plugin/Form/MatrixCheckboxes.tsx +0 -136
  488. package/src/plugin/Form/NestedSelect.tsx +0 -211
  489. package/src/plugin/Form/Picker.tsx +0 -209
  490. package/src/plugin/Form/Radios.tsx +0 -119
  491. package/src/plugin/Form/Select.tsx +0 -233
  492. package/src/plugin/Form/Static.tsx +0 -322
  493. package/src/plugin/Form/Switch.tsx +0 -107
  494. package/src/plugin/Form/TabsTransfer.tsx +0 -259
  495. package/src/plugin/Form/Textarea.tsx +0 -83
  496. package/src/plugin/Form/Transfer.tsx +0 -368
  497. package/src/plugin/Form/TreeSelect.tsx +0 -263
  498. package/src/plugin/Form/UUID.tsx +0 -48
  499. package/src/plugin/Grid.tsx +0 -798
  500. package/src/plugin/HBox.tsx +0 -727
  501. package/src/plugin/IFrame.tsx +0 -70
  502. package/src/plugin/Image.tsx +0 -314
  503. package/src/plugin/Images.tsx +0 -231
  504. package/src/plugin/Json.tsx +0 -69
  505. package/src/plugin/Link.tsx +0 -93
  506. package/src/plugin/List.tsx +0 -278
  507. package/src/plugin/ListItem.tsx +0 -229
  508. package/src/plugin/Log.tsx +0 -52
  509. package/src/plugin/Mapping.tsx +0 -149
  510. package/src/plugin/Markdown.tsx +0 -47
  511. package/src/plugin/Nav.tsx +0 -184
  512. package/src/plugin/Operation.tsx +0 -95
  513. package/src/plugin/Others/Action.tsx +0 -426
  514. package/src/plugin/Others/BasicToolbar.tsx +0 -585
  515. package/src/plugin/Others/DataDebug.tsx +0 -134
  516. package/src/plugin/Others/TableCell.tsx +0 -480
  517. package/src/plugin/Others/Unknown.tsx +0 -37
  518. package/src/plugin/Page.tsx +0 -306
  519. package/src/plugin/Panel/AvailableRenderers.tsx +0 -41
  520. package/src/plugin/Panel/Code.tsx +0 -44
  521. package/src/plugin/Panel/Name.tsx +0 -26
  522. package/src/plugin/Panel/Outline.tsx +0 -40
  523. package/src/plugin/Panel.tsx +0 -243
  524. package/src/plugin/Plain.tsx +0 -84
  525. package/src/plugin/Progress.tsx +0 -125
  526. package/src/plugin/Property.tsx +0 -139
  527. package/src/plugin/QRCode.tsx +0 -96
  528. package/src/plugin/Reset.tsx +0 -23
  529. package/src/plugin/Service.tsx +0 -162
  530. package/src/plugin/Sparkline.tsx +0 -40
  531. package/src/plugin/Status.tsx +0 -76
  532. package/src/plugin/Steps.tsx +0 -128
  533. package/src/plugin/Submit.tsx +0 -23
  534. package/src/plugin/Table.tsx +0 -428
  535. package/src/plugin/TableView.tsx +0 -709
  536. package/src/plugin/Tabs.tsx +0 -362
  537. package/src/plugin/Tasks.tsx +0 -274
  538. package/src/plugin/Time.tsx +0 -68
  539. package/src/plugin/TooltipWrapper.tsx +0 -193
  540. package/src/plugin/Tpl.tsx +0 -158
  541. package/src/plugin/Video.tsx +0 -158
  542. package/src/plugin/WebComponent.tsx +0 -53
  543. package/src/plugin/Wizard.tsx +0 -740
  544. package/src/plugin/Wrapper.tsx +0 -107
  545. package/src/plugin.ts +0 -1050
  546. package/static/Code-hover.png +0 -0
  547. package/static/Code.png +0 -0
  548. package/static/Outline-hover.png +0 -0
  549. package/static/Outline.png +0 -0
  550. package/static/Renderers-hover.png +0 -0
  551. package/static/Renderers.png +0 -0
  552. package/static/side_hide_left.svg +0 -10
@@ -1,798 +0,0 @@
1
- import {Button} from 'amis';
2
- import React from 'react';
3
- import {registerEditorPlugin} from '../manager';
4
- import {
5
- BaseEventContext,
6
- BasePlugin,
7
- ContextMenuEventContext,
8
- ContextMenuItem,
9
- PluginEvent,
10
- ResizeMoveEventContext,
11
- RendererJSONSchemaResolveEventContext,
12
- VRendererConfig
13
- } from '../plugin';
14
- import {defaultValue, getSchemaTpl} from '../component/schemaTpl';
15
- import {EditorNodeType} from '../store/node';
16
- import {Schema} from 'amis/lib/types';
17
- import {VRenderer} from '../component/VRenderer';
18
- import {RegionWrapper as Region} from '../component/RegionWrapper';
19
- import {Icon} from '../icons/index';
20
- import {JSONChangeInArray, JSONPipeIn, repeatArray} from '../util';
21
-
22
- export class GridPlugin extends BasePlugin {
23
- // 关联渲染器名字
24
- rendererName = 'grid';
25
- $schema = '/schemas/GridSchema.json';
26
-
27
- // 组件名称
28
- name = '分栏';
29
- isBaseComponent = true;
30
- description = '分栏布局';
31
- docLink = '/amis/zh-CN/components/grid';
32
- tags = ['容器'];
33
- icon = 'fa fa-th';
34
-
35
- /*
36
- scaffolds = [
37
- {
38
- name: '两栏',
39
- description: '两栏布局',
40
- scaffold: {
41
- type: 'grid',
42
- columns: [
43
- {
44
- body: []
45
- },
46
- {
47
- body: []
48
- }
49
- ]
50
- },
51
-
52
- previewSchema: {
53
- type: 'grid',
54
- columns: [
55
- {
56
- body: [
57
- {
58
- type: 'tpl',
59
- tpl: '栏',
60
- inline: false,
61
- className: 'bg-light wrapper'
62
- }
63
- ]
64
- },
65
- {
66
- body: [
67
- {
68
- type: 'tpl',
69
- tpl: '栏',
70
- className: 'bg-light wrapper',
71
- inline: false
72
- }
73
- ]
74
- }
75
- ]
76
- }
77
- },
78
-
79
- {
80
- name: '三栏',
81
- description: '三栏布局',
82
- scaffold: {
83
- type: 'grid',
84
- columns: [
85
- {
86
- body: []
87
- },
88
- {
89
- body: []
90
- },
91
- {
92
- body: []
93
- }
94
- ]
95
- },
96
-
97
- previewSchema: {
98
- type: 'grid',
99
- columns: [
100
- {
101
- body: [
102
- {
103
- type: 'tpl',
104
- tpl: '栏',
105
- inline: false,
106
- className: 'bg-light wrapper'
107
- }
108
- ]
109
- },
110
- {
111
- body: [
112
- {
113
- type: 'tpl',
114
- tpl: '栏',
115
- className: 'bg-light wrapper',
116
- inline: false
117
- }
118
- ]
119
- },
120
- {
121
- body: [
122
- {
123
- type: 'tpl',
124
- tpl: '栏',
125
- className: 'bg-light wrapper',
126
- inline: false
127
- }
128
- ]
129
- }
130
- ]
131
- }
132
- }
133
- ];
134
- */
135
-
136
- // 仅保留一个分栏布局
137
- scaffold = {
138
- type: 'grid',
139
- columns: [
140
- {
141
- body: []
142
- },
143
- {
144
- body: []
145
- }
146
- ]
147
- };
148
-
149
- previewSchema = {
150
- type: 'grid',
151
- columns: [
152
- {
153
- body: [
154
- {
155
- type: 'tpl',
156
- tpl: '栏',
157
- inline: false,
158
- className: 'bg-light wrapper'
159
- }
160
- ]
161
- },
162
- {
163
- body: [
164
- {
165
- type: 'tpl',
166
- tpl: '栏',
167
- className: 'bg-light wrapper',
168
- inline: false
169
- }
170
- ]
171
- }
172
- ]
173
- };
174
-
175
- panelTitle = '分栏布局';
176
- panelWithOutOthers = false;
177
- panelBodyCreator(context: BaseEventContext) {
178
- const asSecondFactor = context.secondFactor;
179
- return [
180
- getSchemaTpl('fieldSet', {
181
- title: '插入',
182
- collapsable: false,
183
- body: [
184
- asSecondFactor
185
- ? null
186
- : {
187
- type: 'wrapper',
188
- size: 'none',
189
- className: 'grid grid-cols-2 gap-4 mb-4',
190
- body: [
191
- {
192
- children: (
193
- <Button
194
- size="sm"
195
- onClick={() => this.insertRowAfter(context.node)}
196
- >
197
- <Icon className="icon" icon="arrow-to-bottom" />
198
- <span>下方插入新行</span>
199
- </Button>
200
- )
201
- },
202
- {
203
- children: (
204
- <Button
205
- size="sm"
206
- onClick={() => this.insertRowBefore(context.node)}
207
- >
208
- <Icon className="icon" icon="top-arrow-to-top" />
209
- <span>上方插入新行</span>
210
- </Button>
211
- )
212
- }
213
- ]
214
- },
215
-
216
- {
217
- label: '列数',
218
- name: 'columns',
219
- type: 'select',
220
- pipeIn: (value: any) =>
221
- Array.isArray(value) ? value.length : undefined,
222
- pipeOut: (value: any, origin: any) => {
223
- if (Array.isArray(origin)) {
224
- if (origin.length > value) {
225
- origin = origin.concat();
226
- origin.splice(value - 1, origin.length - value);
227
- } else {
228
- origin = origin.concat(
229
- repeatArray(
230
- {
231
- body: []
232
- },
233
- value - origin.length
234
- )
235
- );
236
- }
237
- }
238
-
239
- return origin;
240
- },
241
- options: repeatArray(null, 12).map((_, index) => ({
242
- label: `${index + 1}`,
243
- value: index + 1
244
- }))
245
- },
246
-
247
- {
248
- type: 'button-group-select',
249
- name: 'gap',
250
- label: '列间距',
251
- size: 'sm',
252
- clearable: true,
253
- tiled: true,
254
- options: [
255
- {
256
- label: '无',
257
- value: 'none'
258
- },
259
- {
260
- label: '极小',
261
- value: 'xs'
262
- },
263
- {
264
- label: '小',
265
- value: 'sm'
266
- },
267
- {
268
- label: '正常',
269
- value: 'base'
270
- },
271
- {
272
- label: '中',
273
- value: 'md'
274
- },
275
- {
276
- label: '大',
277
- value: 'lg'
278
- }
279
- ]
280
- }
281
- ].filter(item => item)
282
- }),
283
-
284
- getSchemaTpl('fieldSet', {
285
- title: '对齐',
286
- collapsable: false,
287
- body: [
288
- {
289
- type: 'button-group-select',
290
- name: 'align',
291
- size: 'sm',
292
- label: '水平对齐',
293
- tiled: true,
294
- pipeIn: defaultValue('left'),
295
- options: [
296
- {
297
- value: 'left',
298
- label: '左对齐'
299
- },
300
- {
301
- value: 'center',
302
- label: '中间对齐'
303
- },
304
- {
305
- value: 'right',
306
- label: '右对齐'
307
- },
308
- {
309
- value: 'between',
310
- label: '两端对齐'
311
- }
312
- ]
313
- },
314
- {
315
- type: 'button-group-select',
316
- name: 'valign',
317
- size: 'sm',
318
- label: '垂直对齐',
319
- tiled: true,
320
- pipeIn: defaultValue('top'),
321
- options: [
322
- {
323
- value: 'top',
324
- label: '顶部对齐'
325
- },
326
- {
327
- value: 'middle',
328
- label: '中间对齐'
329
- },
330
- {
331
- value: 'bottom',
332
- label: '底部对齐'
333
- },
334
- {
335
- value: 'between',
336
- label: '两端对齐'
337
- }
338
- ]
339
- }
340
- ]
341
- }),
342
-
343
- this.panelWithOutOthers
344
- ? null
345
- : getSchemaTpl('fieldSet', {
346
- title: '其他',
347
- collapsable: true,
348
- body: [
349
- getSchemaTpl('className'),
350
- getSchemaTpl('subFormItemMode'),
351
- getSchemaTpl('subFormHorizontalMode'),
352
- getSchemaTpl('subFormHorizontal')
353
- ]
354
- })
355
- ].filter(item => item);
356
- }
357
-
358
- vRendererConfig: VRendererConfig = {
359
- regions: {
360
- body: {
361
- key: 'body',
362
- label: '内容区',
363
- placeholder: '栏',
364
- wrapperResolve: (dom: HTMLElement) => dom
365
- }
366
- },
367
- panelTitle: '栏',
368
- panelBodyCreator: (context: BaseEventContext) => {
369
- const host = context.node.host;
370
-
371
- return [
372
- getSchemaTpl('fieldSet', {
373
- title: '插入',
374
- collapsable: false,
375
- body: [
376
- {
377
- type: 'wrapper',
378
- size: 'none',
379
- className: 'grid grid-cols-2 gap-4',
380
- body: [
381
- host.isSecondFactor
382
- ? null
383
- : {
384
- children: (
385
- <Button
386
- size="sm"
387
- onClick={() => this.insertRowAfter(context.node.host)}
388
- >
389
- <Icon className="icon" icon="arrow-to-bottom" />
390
- <span>下方插入新行</span>
391
- </Button>
392
- )
393
- },
394
- host.isSecondFactor
395
- ? null
396
- : {
397
- children: (
398
- <Button
399
- size="sm"
400
- onClick={() =>
401
- this.insertRowBefore(context.node.host)
402
- }
403
- >
404
- <Icon className="icon" icon="top-arrow-to-top" />
405
- <span>上方插入新行</span>
406
- </Button>
407
- )
408
- },
409
- {
410
- children: (
411
- <Button
412
- size="sm"
413
- onClick={() => this.insertColumnBefore(context)}
414
- >
415
- <Icon className="icon" icon="left-arrow-to-left" />
416
- <span>左侧插入新列</span>
417
- </Button>
418
- )
419
- },
420
- {
421
- children: (
422
- <Button
423
- size="sm"
424
- onClick={() => this.insertColumnAfter(context)}
425
- >
426
- <Icon className="icon" icon="arrow-to-right" />
427
- <span>右侧插入新列</span>
428
- </Button>
429
- )
430
- }
431
- ].filter(item => item)
432
- }
433
- ]
434
- }),
435
- getSchemaTpl('fieldSet', {
436
- title: '宽度设置',
437
- collapsable: false,
438
- body: [
439
- {
440
- type: 'button-group-select',
441
- name: 'md',
442
- size: 'sm',
443
- label: false,
444
- pipeIn: (value: any) =>
445
- typeof value === 'number' ? 'manual' : value || '',
446
- pipeOut: (value: any) => (value === 'manual' ? 1 : value),
447
- tiled: true,
448
- options: [
449
- {
450
- value: '',
451
- label: '适配宽度'
452
- },
453
- {
454
- value: 'auto',
455
- label: '适配内容'
456
- },
457
- {
458
- value: 'manual',
459
- label: '手动'
460
- }
461
- ]
462
- },
463
-
464
- {
465
- visibleOn: 'typeof this.md === "number"',
466
- label: '宽度占比',
467
- type: 'input-range',
468
- name: 'md',
469
- min: 1,
470
- max: 12,
471
- step: 1
472
- }
473
- ]
474
- }),
475
-
476
- getSchemaTpl('fieldSet', {
477
- title: '垂直对齐',
478
- collapsable: false,
479
- body: [
480
- {
481
- type: 'button-group-select',
482
- name: 'valign',
483
- size: 'sm',
484
- label: false,
485
- tiled: true,
486
- clearable: true,
487
- options: [
488
- {
489
- value: 'top',
490
- label: '顶部对齐'
491
- },
492
- {
493
- value: 'middle',
494
- label: '中间对齐'
495
- },
496
- {
497
- value: 'bottom',
498
- label: '底部对齐'
499
- },
500
- {
501
- value: 'between',
502
- label: '两端对齐'
503
- }
504
- ]
505
- }
506
- ]
507
- }),
508
-
509
- this.panelWithOutOthers
510
- ? null
511
- : getSchemaTpl('fieldSet', {
512
- title: 'CSS 设置',
513
- body: [
514
- getSchemaTpl('className', {
515
- label: '栏 CSS 类名',
516
- name: 'columnClassName'
517
- })
518
- ]
519
- })
520
- ].filter(item => item);
521
- }
522
- };
523
-
524
- vWrapperResolve = (dom: HTMLElement) => dom;
525
- overrides = {
526
- renderColumn: function (
527
- this: any,
528
- node: Schema,
529
- index: number,
530
- length: number
531
- ) {
532
- let dom = this.super(node, index, length);
533
- const info = this.props.$$editor;
534
-
535
- if (info && node.$$id) {
536
- const plugin: GridPlugin = info.plugin as any;
537
- const region = plugin.vRendererConfig?.regions?.body;
538
- if (!region) {
539
- return dom;
540
- }
541
-
542
- return (
543
- <VRenderer
544
- key={`${node.$$id}-${index}`}
545
- plugin={info.plugin}
546
- renderer={info.renderer}
547
- $schema="/schemas/GridColumn.json"
548
- hostId={info.id}
549
- memberIndex={index}
550
- name={`第${index + 1}栏`}
551
- id={node.$$id}
552
- draggable={false}
553
- schemaPath={`${info.schemaPath}/grid/${index}`}
554
- wrapperResolve={plugin.vWrapperResolve}
555
- path={`${this.props.$path}/${index}`} // 好像没啥用
556
- data={this.props.data} // 好像没啥用
557
- widthMutable
558
- >
559
- {region ? (
560
- <Region
561
- key={region.key}
562
- preferTag={region.preferTag}
563
- name={region.key}
564
- label={region.label}
565
- regionConfig={region}
566
- placeholder={region.placeholder}
567
- editorStore={plugin.manager.store}
568
- manager={plugin.manager}
569
- children={dom}
570
- wrapperResolve={region.wrapperResolve}
571
- rendererName={info.renderer.name}
572
- />
573
- ) : (
574
- dom
575
- )}
576
- </VRenderer>
577
- );
578
- }
579
- return dom;
580
- }
581
- };
582
-
583
- afterResolveJsonSchema(
584
- event: PluginEvent<RendererJSONSchemaResolveEventContext>
585
- ) {
586
- const context = event.context;
587
- const parent = context.node.parent?.host as EditorNodeType;
588
-
589
- if (parent?.info?.plugin === this) {
590
- event.setData('/schemas/GridColumn.json');
591
- }
592
- }
593
-
594
- buildEditorContextMenu(
595
- context: ContextMenuEventContext,
596
- menus: Array<ContextMenuItem>
597
- ) {
598
- if (context.selections.length || context.info?.plugin !== this) {
599
- return;
600
- }
601
-
602
- if (context.node.isVitualRenderer) {
603
- menus.push('|');
604
-
605
- menus.push({
606
- label: '左侧插入一栏',
607
- onSelect: () => this.insertColumnBefore(context)
608
- });
609
-
610
- menus.push({
611
- label: '右侧插入一栏',
612
- onSelect: () => this.insertColumnAfter(context)
613
- });
614
-
615
- menus.push('|');
616
-
617
- menus.push({
618
- label: '上方插入一行',
619
- onSelect: () => this.insertRowBefore(context.node.host)
620
- });
621
-
622
- menus.push({
623
- label: '下方插入一行',
624
- onSelect: () => this.insertRowAfter(context.node.host)
625
- });
626
- } else {
627
- menus.push('|');
628
-
629
- menus.push({
630
- label: '上方插入一行',
631
- onSelect: () => this.insertRowBefore(context.node)
632
- });
633
-
634
- menus.push({
635
- label: '下方插入一行',
636
- onSelect: () => this.insertRowAfter(context.node)
637
- });
638
- }
639
- }
640
-
641
- onWidthChangeStart(
642
- event: PluginEvent<
643
- ResizeMoveEventContext,
644
- {
645
- onMove(e: MouseEvent): void;
646
- onEnd(e: MouseEvent): void;
647
- }
648
- >
649
- ) {
650
- const context = event.context;
651
- const node = context.node;
652
- if (node.info?.plugin !== this) {
653
- return;
654
- }
655
- const host = node.host;
656
- if (!host || host.info?.plugin !== this) {
657
- return;
658
- }
659
-
660
- const dom = context.dom;
661
- const parent = dom.parentElement as HTMLElement;
662
- if (!parent) {
663
- return;
664
- }
665
- const resizer = context.resizer;
666
- const frameRect = parent.getBoundingClientRect();
667
- let columns = host.schema.columns;
668
- const index = node.index;
669
- let finalMd = columns[index].md;
670
- const rect = dom.getBoundingClientRect();
671
-
672
- event.setData({
673
- onMove: (e: MouseEvent) => {
674
- const width = e.pageX - rect.left;
675
- const md = (finalMd = Math.max(
676
- 1,
677
- Math.min(12, Math.round((12 * width) / frameRect.width))
678
- ));
679
- columns = columns.concat();
680
- columns[index] = {
681
- ...columns[index],
682
- md
683
- };
684
- resizer.setAttribute('data-value', `${md}`);
685
-
686
- host.updateState({
687
- columns
688
- });
689
- requestAnimationFrame(() => {
690
- node.calculateHighlightBox();
691
- });
692
- },
693
- onEnd: () => {
694
- host.updateState({}, true);
695
- resizer.removeAttribute('data-value');
696
- node.updateSchema({
697
- md: finalMd
698
- });
699
- requestAnimationFrame(() => {
700
- node.calculateHighlightBox();
701
- });
702
- }
703
- });
704
- }
705
-
706
- insertRowAfter(node: EditorNodeType) {
707
- if (node.info?.plugin !== this) {
708
- return;
709
- }
710
- const store = this.manager.store;
711
- const schema = store.schema;
712
- const id = node.id;
713
- store.traceableSetSchema(
714
- JSONChangeInArray(schema, id, (arr: any[], node: any, index: number) => {
715
- arr.splice(
716
- index + 1,
717
- 0,
718
- JSONPipeIn({
719
- type: this.rendererName || 'grid',
720
- align: node.align,
721
- valign: node.valign,
722
- columns: node.columns.map((column: any) => ({
723
- body: [],
724
- md: column?.md
725
- }))
726
- })
727
- );
728
- })
729
- );
730
- }
731
- insertRowBefore(node: EditorNodeType) {
732
- if (node.info?.plugin !== this) {
733
- return;
734
- }
735
- const store = this.manager.store;
736
- const schema = store.schema;
737
- const id = node.id;
738
- store.traceableSetSchema(
739
- JSONChangeInArray(schema, id, (arr: any[], node: any, index: number) => {
740
- arr.splice(
741
- index,
742
- 0,
743
- JSONPipeIn({
744
- type: this.rendererName || 'grid',
745
- align: node.align,
746
- valign: node.valign,
747
- columns: node.columns.map((column: any) => ({
748
- body: [],
749
- md: column?.md
750
- }))
751
- })
752
- );
753
- })
754
- );
755
- }
756
- insertColumnBefore(context: BaseEventContext) {
757
- const node = context.node;
758
- if (node.info?.plugin !== this) {
759
- return;
760
- }
761
- const store = this.manager.store;
762
- const id = context.id;
763
- const schema = store.schema;
764
- store.traceableSetSchema(
765
- JSONChangeInArray(schema, id, (arr: any[], node: any, index: number) => {
766
- arr.splice(
767
- index,
768
- 0,
769
- JSONPipeIn({
770
- body: []
771
- })
772
- );
773
- })
774
- );
775
- }
776
- insertColumnAfter(context: BaseEventContext) {
777
- const node = context.node;
778
- if (node.info?.plugin !== this) {
779
- return;
780
- }
781
- const store = this.manager.store;
782
- const schema = store.schema;
783
- const id = context.id;
784
- store.traceableSetSchema(
785
- JSONChangeInArray(schema, id, (arr: any[], node: any, index: number) => {
786
- arr.splice(
787
- index + 1,
788
- 0,
789
- JSONPipeIn({
790
- body: []
791
- })
792
- );
793
- })
794
- );
795
- }
796
- }
797
-
798
- registerEditorPlugin(GridPlugin);