@xfu0401/form-generator 1.0.21 → 1.0.22

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 (325) hide show
  1. package/package.json +1 -1
  2. package/.eslintrc.js +0 -48
  3. package/@xfu0401/form-generator/package.json +0 -62
  4. package/LICENSE +0 -127
  5. package/README.md +0 -268
  6. package/babel.config.js +0 -22
  7. package/public/favicon.ico +0 -0
  8. package/public/img/show/PixPin_2024-07-17_16-25-59.gif +0 -0
  9. package/public/img/show/PixPin_2024-07-17_16-33-51.png +0 -0
  10. package/public/img/show/file.png +0 -0
  11. package/public/img/show/image.png +0 -0
  12. package/public/img/show/pc/347/253/257/346/270/262/346/237/223.png +0 -0
  13. package/public/img/show/pc/347/253/257/350/257/246/346/203/205.png +0 -0
  14. package/public/img/show//344/272/213/344/273/266.png +0 -0
  15. package/public/img/show//345/205/250/345/261/200/344/272/213/344/273/266.png +0 -0
  16. package/public/img/show//345/205/250/345/261/200/346/240/267/345/274/217.png +0 -0
  17. package/public/img/show//346/240/267/345/274/217/345/261/236/346/200/247.png +0 -0
  18. package/public/img/show//347/247/273/345/212/250/347/253/257/346/270/262/346/237/223.png +0 -0
  19. package/public/img/show//347/247/273/345/212/250/347/253/257/350/257/246/346/203/205.png +0 -0
  20. package/public/img/show//347/274/226/350/276/221/345/231/2502.png +0 -0
  21. package/public/img/show//347/274/226/350/276/221/345/231/2503.png +0 -0
  22. package/public/img/show//347/274/226/350/276/221/345/231/2504.png +0 -0
  23. package/public/img/temp//344/270/273/344/273/216/350/241/250/345/215/225.jpg +0 -0
  24. package/public/img/temp//345/210/206/347/273/204/350/241/250/345/215/225.jpg +0 -0
  25. package/public/img/temp//345/215/225/345/210/227/350/241/250/345/215/225.jpg +0 -0
  26. package/public/img/temp//345/233/272/345/256/232/350/241/250/346/240/274/350/241/250/345/215/225.jpg +0 -0
  27. package/public/img/temp//345/244/232/345/210/227/350/241/250/345/215/225.jpg +0 -0
  28. package/public/img/temp//346/240/207/347/255/276/351/241/265/350/241/250/345/215/225.jpg +0 -0
  29. package/public/index.html +0 -25
  30. package/public/static/js/config.js +0 -2
  31. package/src/App.vue +0 -18
  32. package/src/api/data.js +0 -52
  33. package/src/components/Layout/Layout.vue +0 -28
  34. package/src/components/Layout/LeftMenu.vue +0 -46
  35. package/src/components/SvgIcon/index.vue +0 -43
  36. package/src/components/code/Code.vue +0 -98
  37. package/src/components/common/FGDialog.vue +0 -100
  38. package/src/components/editor/CodeDialog.vue +0 -68
  39. package/src/components/editor/CodeEditor.vue +0 -191
  40. package/src/components/editor/CodeJson.vue +0 -130
  41. package/src/components/editor/CssEditor.vue +0 -84
  42. package/src/components/editor/EventEditor.vue +0 -84
  43. package/src/components/editor/JsonDialog.vue +0 -55
  44. package/src/components/editor/JsonEditor.vue +0 -58
  45. package/src/components/editor/components/EditorLeft.vue +0 -138
  46. package/src/components/fileComs/ExportExcel.vue +0 -49
  47. package/src/components/fileComs/ExportJson.vue +0 -52
  48. package/src/components/fileComs/ImportExcel.vue +0 -96
  49. package/src/components/fileComs/ImportJson.vue +0 -65
  50. package/src/components/formGenerator/components/formExport.vue +0 -52
  51. package/src/components/formGenerator/components/formGeneratorAttrField.vue +0 -1113
  52. package/src/components/formGenerator/components/formGeneratorAttrForm.vue +0 -98
  53. package/src/components/formGenerator/components/formGeneratorCom.vue +0 -108
  54. package/src/components/formGenerator/components/formGeneratorOutline.vue +0 -159
  55. package/src/components/formGenerator/components/formGeneratorTemp.vue +0 -77
  56. package/src/components/formGenerator/components/formImport.vue +0 -62
  57. package/src/components/formGenerator/components/formPreview.vue +0 -102
  58. package/src/components/formGenerator/configComponents/DataConfig.vue +0 -156
  59. package/src/components/formGenerator/configComponents/DataDialog.vue +0 -188
  60. package/src/components/formGenerator/configComponents/EventConfig.vue +0 -56
  61. package/src/components/formGenerator/configComponents/PageConfig.vue +0 -55
  62. package/src/components/formGenerator/configComponents/RegConfig.vue +0 -105
  63. package/src/components/formGenerator/configComponents/ShadowConfig.vue +0 -95
  64. package/src/components/formGenerator/configComponents/SpaceConfig.vue +0 -187
  65. package/src/components/formGenerator/configComponents/StyleConfig.vue +0 -258
  66. package/src/components/formGenerator/configComponents/TableConfig.vue +0 -75
  67. package/src/components/formGenerator/configComponents/TableHead.vue +0 -141
  68. package/src/components/formGenerator/formComponents/pcComponents/assistComs/formButton.vue +0 -25
  69. package/src/components/formGenerator/formComponents/pcComponents/assistComs/formDivider.vue +0 -49
  70. package/src/components/formGenerator/formComponents/pcComponents/assistComs/formHtml.vue +0 -37
  71. package/src/components/formGenerator/formComponents/pcComponents/assistComs/formLink.vue +0 -26
  72. package/src/components/formGenerator/formComponents/pcComponents/assistComs/formNotice.vue +0 -118
  73. package/src/components/formGenerator/formComponents/pcComponents/assistComs/formRemark.vue +0 -29
  74. package/src/components/formGenerator/formComponents/pcComponents/assistComs/formSwipe.vue +0 -39
  75. package/src/components/formGenerator/formComponents/pcComponents/assistComs/formTable.vue +0 -130
  76. package/src/components/formGenerator/formComponents/pcComponents/assistComs/formTableExport.vue +0 -311
  77. package/src/components/formGenerator/formComponents/pcComponents/assistComs/formTag.vue +0 -30
  78. package/src/components/formGenerator/formComponents/pcComponents/assistComs/formText.vue +0 -27
  79. package/src/components/formGenerator/formComponents/pcComponents/assistComs/formTree.vue +0 -47
  80. package/src/components/formGenerator/formComponents/pcComponents/components/emptyTips.vue +0 -24
  81. package/src/components/formGenerator/formComponents/pcComponents/components/esignDialog.vue +0 -86
  82. package/src/components/formGenerator/formComponents/pcComponents/components/filesShow.vue +0 -121
  83. package/src/components/formGenerator/formComponents/pcComponents/components/imageShow.vue +0 -148
  84. package/src/components/formGenerator/formComponents/pcComponents/components/nameShow.vue +0 -54
  85. package/src/components/formGenerator/formComponents/pcComponents/components/tableOptions.vue +0 -56
  86. package/src/components/formGenerator/formComponents/pcComponents/components/tableStyle.vue +0 -58
  87. package/src/components/formGenerator/formComponents/pcComponents/components/userPicker.vue +0 -440
  88. package/src/components/formGenerator/formComponents/pcComponents/inputComs/formAutocomplete.vue +0 -79
  89. package/src/components/formGenerator/formComponents/pcComponents/inputComs/formInput.vue +0 -56
  90. package/src/components/formGenerator/formComponents/pcComponents/inputComs/formInputNumber.vue +0 -51
  91. package/src/components/formGenerator/formComponents/pcComponents/inputComs/formRichText.vue +0 -138
  92. package/src/components/formGenerator/formComponents/pcComponents/layoutComs/formCard.vue +0 -35
  93. package/src/components/formGenerator/formComponents/pcComponents/layoutComs/formCollapse.vue +0 -79
  94. package/src/components/formGenerator/formComponents/pcComponents/layoutComs/formRowContainer.vue +0 -337
  95. package/src/components/formGenerator/formComponents/pcComponents/layoutComs/formSteps.vue +0 -90
  96. package/src/components/formGenerator/formComponents/pcComponents/layoutComs/formSub.vue +0 -219
  97. package/src/components/formGenerator/formComponents/pcComponents/layoutComs/formTableContainer.vue +0 -277
  98. package/src/components/formGenerator/formComponents/pcComponents/layoutComs/formTabsContainer.vue +0 -65
  99. package/src/components/formGenerator/formComponents/pcComponents/selectComs/formCascader.vue +0 -62
  100. package/src/components/formGenerator/formComponents/pcComponents/selectComs/formCheckboxGroup.vue +0 -70
  101. package/src/components/formGenerator/formComponents/pcComponents/selectComs/formColorPicker.vue +0 -39
  102. package/src/components/formGenerator/formComponents/pcComponents/selectComs/formDatePicker.vue +0 -43
  103. package/src/components/formGenerator/formComponents/pcComponents/selectComs/formDaterangePicker.vue +0 -40
  104. package/src/components/formGenerator/formComponents/pcComponents/selectComs/formImage.vue +0 -235
  105. package/src/components/formGenerator/formComponents/pcComponents/selectComs/formOrgPicker.vue +0 -131
  106. package/src/components/formGenerator/formComponents/pcComponents/selectComs/formRadioGroup.vue +0 -59
  107. package/src/components/formGenerator/formComponents/pcComponents/selectComs/formRate.vue +0 -50
  108. package/src/components/formGenerator/formComponents/pcComponents/selectComs/formSelect.vue +0 -62
  109. package/src/components/formGenerator/formComponents/pcComponents/selectComs/formSelectHis.vue +0 -66
  110. package/src/components/formGenerator/formComponents/pcComponents/selectComs/formSelectProject.vue +0 -62
  111. package/src/components/formGenerator/formComponents/pcComponents/selectComs/formSignature.vue +0 -98
  112. package/src/components/formGenerator/formComponents/pcComponents/selectComs/formSlider.vue +0 -46
  113. package/src/components/formGenerator/formComponents/pcComponents/selectComs/formSwitch.vue +0 -37
  114. package/src/components/formGenerator/formComponents/pcComponents/selectComs/formTimePicker.vue +0 -41
  115. package/src/components/formGenerator/formComponents/pcComponents/selectComs/formTimerangePicker.vue +0 -40
  116. package/src/components/formGenerator/formComponents/pcComponents/selectComs/formUpload.vue +0 -253
  117. package/src/components/formGenerator/formComponents/pcComponents/selectComs/formUploadTemp.vue +0 -82
  118. package/src/components/formGenerator/formComponents/pcComponents/selectComs/formUserPicker.vue +0 -142
  119. package/src/components/formGenerator/formComponents/pcForm.vue +0 -155
  120. package/src/components/formGenerator/formComponents/phoneComponents/assistComs/formButton.vue +0 -36
  121. package/src/components/formGenerator/formComponents/phoneComponents/assistComs/formDivider.vue +0 -41
  122. package/src/components/formGenerator/formComponents/phoneComponents/assistComs/formHtml.vue +0 -37
  123. package/src/components/formGenerator/formComponents/phoneComponents/assistComs/formLink.vue +0 -49
  124. package/src/components/formGenerator/formComponents/phoneComponents/assistComs/formNotice.vue +0 -43
  125. package/src/components/formGenerator/formComponents/phoneComponents/assistComs/formRemark.vue +0 -39
  126. package/src/components/formGenerator/formComponents/phoneComponents/assistComs/formSwipe.vue +0 -34
  127. package/src/components/formGenerator/formComponents/phoneComponents/assistComs/formTable.vue +0 -132
  128. package/src/components/formGenerator/formComponents/phoneComponents/assistComs/formTableExport.vue +0 -268
  129. package/src/components/formGenerator/formComponents/phoneComponents/assistComs/formTag.vue +0 -147
  130. package/src/components/formGenerator/formComponents/phoneComponents/assistComs/formText.vue +0 -27
  131. package/src/components/formGenerator/formComponents/phoneComponents/assistComs/formTree.vue +0 -21
  132. package/src/components/formGenerator/formComponents/phoneComponents/components/cascaderPicker.vue +0 -81
  133. package/src/components/formGenerator/formComponents/phoneComponents/components/datePicker.vue +0 -101
  134. package/src/components/formGenerator/formComponents/phoneComponents/components/esignDialog.vue +0 -156
  135. package/src/components/formGenerator/formComponents/phoneComponents/components/filesShow.vue +0 -128
  136. package/src/components/formGenerator/formComponents/phoneComponents/components/imageShow.vue +0 -123
  137. package/src/components/formGenerator/formComponents/phoneComponents/components/nameShow.vue +0 -84
  138. package/src/components/formGenerator/formComponents/phoneComponents/components/orgPicker.vue +0 -343
  139. package/src/components/formGenerator/formComponents/phoneComponents/components/tableShow.vue +0 -149
  140. package/src/components/formGenerator/formComponents/phoneComponents/components/textShow.vue +0 -25
  141. package/src/components/formGenerator/formComponents/phoneComponents/components/timePicker.vue +0 -90
  142. package/src/components/formGenerator/formComponents/phoneComponents/inputComs/formAutocomplete.vue +0 -163
  143. package/src/components/formGenerator/formComponents/phoneComponents/inputComs/formInput.vue +0 -111
  144. package/src/components/formGenerator/formComponents/phoneComponents/inputComs/formInputNumber.vue +0 -65
  145. package/src/components/formGenerator/formComponents/phoneComponents/inputComs/formRichText.vue +0 -147
  146. package/src/components/formGenerator/formComponents/phoneComponents/layoutComs/formCard.vue +0 -59
  147. package/src/components/formGenerator/formComponents/phoneComponents/layoutComs/formCollapse.vue +0 -71
  148. package/src/components/formGenerator/formComponents/phoneComponents/layoutComs/formRowContainer.vue +0 -94
  149. package/src/components/formGenerator/formComponents/phoneComponents/layoutComs/formSteps.vue +0 -112
  150. package/src/components/formGenerator/formComponents/phoneComponents/layoutComs/formSub.vue +0 -130
  151. package/src/components/formGenerator/formComponents/phoneComponents/layoutComs/formTableContainer.vue +0 -93
  152. package/src/components/formGenerator/formComponents/phoneComponents/layoutComs/formTabsContainer.vue +0 -64
  153. package/src/components/formGenerator/formComponents/phoneComponents/selectComs/formCascader.vue +0 -210
  154. package/src/components/formGenerator/formComponents/phoneComponents/selectComs/formCheckboxGroup.vue +0 -86
  155. package/src/components/formGenerator/formComponents/phoneComponents/selectComs/formColorPicker.vue +0 -63
  156. package/src/components/formGenerator/formComponents/phoneComponents/selectComs/formDatePicker.vue +0 -100
  157. package/src/components/formGenerator/formComponents/phoneComponents/selectComs/formDateRangePicker.vue +0 -136
  158. package/src/components/formGenerator/formComponents/phoneComponents/selectComs/formImage.vue +0 -278
  159. package/src/components/formGenerator/formComponents/phoneComponents/selectComs/formOrgPicker.vue +0 -107
  160. package/src/components/formGenerator/formComponents/phoneComponents/selectComs/formRadioGroup.vue +0 -93
  161. package/src/components/formGenerator/formComponents/phoneComponents/selectComs/formRate.vue +0 -85
  162. package/src/components/formGenerator/formComponents/phoneComponents/selectComs/formSelect.vue +0 -138
  163. package/src/components/formGenerator/formComponents/phoneComponents/selectComs/formSelectHis.vue +0 -142
  164. package/src/components/formGenerator/formComponents/phoneComponents/selectComs/formSelectProject.vue +0 -138
  165. package/src/components/formGenerator/formComponents/phoneComponents/selectComs/formSignature.vue +0 -108
  166. package/src/components/formGenerator/formComponents/phoneComponents/selectComs/formSlider.vue +0 -79
  167. package/src/components/formGenerator/formComponents/phoneComponents/selectComs/formSwitch.vue +0 -88
  168. package/src/components/formGenerator/formComponents/phoneComponents/selectComs/formTimePicker.vue +0 -112
  169. package/src/components/formGenerator/formComponents/phoneComponents/selectComs/formTimeRangePicker.vue +0 -155
  170. package/src/components/formGenerator/formComponents/phoneComponents/selectComs/formUpload.vue +0 -310
  171. package/src/components/formGenerator/formComponents/phoneComponents/selectComs/formUploadTemp.vue +0 -81
  172. package/src/components/formGenerator/formComponents/phoneComponents/selectComs/formUserPicker.vue +0 -114
  173. package/src/components/formGenerator/formComponents/phoneForm.vue +0 -134
  174. package/src/components/formGenerator/formGenerator.vue +0 -401
  175. package/src/components/formGenerator/styles/generator.scss +0 -271
  176. package/src/components/formGenerator/styles/index.scss +0 -136
  177. package/src/components/formGenerator/styles/left-coms.scss +0 -57
  178. package/src/components/formGenerator/styles/phone.scss +0 -269
  179. package/src/components/formGenerator/styles/theme.scss +0 -5
  180. package/src/components/formGenerator/utils/attribute.js +0 -107
  181. package/src/components/formGenerator/utils/comMixins.js +0 -148
  182. package/src/components/formGenerator/utils/component.js +0 -26
  183. package/src/components/formGenerator/utils/config.js +0 -1730
  184. package/src/components/formGenerator/utils/event.js +0 -82
  185. package/src/components/formGenerator/utils/formEvent.js +0 -43
  186. package/src/components/formGenerator/utils/index.js +0 -666
  187. package/src/components/formGenerator/utils/rules.js +0 -17
  188. package/src/components/formGenerator/utils/style.js +0 -75
  189. package/src/components/formGenerator/utils/table.js +0 -317
  190. package/src/components/formGenerator/utils/temps.js +0 -15303
  191. package/src/components/huComponents/FGBreadNav.vue +0 -86
  192. package/src/components/huComponents/FGCheckCell.vue +0 -107
  193. package/src/components/huComponents/FGCheckList.vue +0 -318
  194. package/src/components/huComponents/FGCheckPopUp.vue +0 -164
  195. package/src/components/huComponents/FGIconsDialog.vue +0 -124
  196. package/src/components/huComponents/FGNameImg.vue +0 -147
  197. package/src/components/huComponents/FGOptions.vue +0 -118
  198. package/src/components/huComponents/FGSelect.vue +0 -46
  199. package/src/components/huComponents/FGTreeNode.vue +0 -103
  200. package/src/components/huComponents/FGTreeNodeDialog.vue +0 -89
  201. package/src/components/huComponents/InputColor.vue +0 -117
  202. package/src/components/huComponents/InputNumber.vue +0 -78
  203. package/src/components/huComponents/LayoutTree.vue +0 -67
  204. package/src/components/huComponents/MenuButton.vue +0 -57
  205. package/src/components/index.js +0 -14
  206. package/src/icons/index.js +0 -10
  207. package/src/icons/svg/active.svg +0 -1
  208. package/src/icons/svg/addSold.svg +0 -1
  209. package/src/icons/svg/analyse.svg +0 -1
  210. package/src/icons/svg/button.svg +0 -1
  211. package/src/icons/svg/card.svg +0 -1
  212. package/src/icons/svg/cascader.svg +0 -1
  213. package/src/icons/svg/checkbox.svg +0 -1
  214. package/src/icons/svg/collapse.svg +0 -1
  215. package/src/icons/svg/color.svg +0 -1
  216. package/src/icons/svg/component.svg +0 -1
  217. package/src/icons/svg/date-range.svg +0 -1
  218. package/src/icons/svg/date.svg +0 -1
  219. package/src/icons/svg/default-dept.svg +0 -9
  220. package/src/icons/svg/default-role.svg +0 -5
  221. package/src/icons/svg/default-user.svg +0 -16
  222. package/src/icons/svg/dept.svg +0 -1
  223. package/src/icons/svg/divider.svg +0 -1
  224. package/src/icons/svg/ellipsis.svg +0 -2
  225. package/src/icons/svg/html.svg +0 -1
  226. package/src/icons/svg/image.svg +0 -1
  227. package/src/icons/svg/input.svg +0 -1
  228. package/src/icons/svg/link.svg +0 -1
  229. package/src/icons/svg/mp4.svg +0 -19
  230. package/src/icons/svg/notice.svg +0 -1
  231. package/src/icons/svg/noview.svg +0 -1
  232. package/src/icons/svg/number.svg +0 -1
  233. package/src/icons/svg/password.svg +0 -1
  234. package/src/icons/svg/pdf.svg +0 -18
  235. package/src/icons/svg/person.svg +0 -1
  236. package/src/icons/svg/png.svg +0 -18
  237. package/src/icons/svg/ppt.svg +0 -19
  238. package/src/icons/svg/process.svg +0 -1
  239. package/src/icons/svg/radio.svg +0 -1
  240. package/src/icons/svg/rate.svg +0 -1
  241. package/src/icons/svg/remark.svg +0 -1
  242. package/src/icons/svg/rich-text.svg +0 -1
  243. package/src/icons/svg/row.svg +0 -1
  244. package/src/icons/svg/select.svg +0 -1
  245. package/src/icons/svg/signature.svg +0 -1
  246. package/src/icons/svg/slider.svg +0 -1
  247. package/src/icons/svg/steps.svg +0 -1
  248. package/src/icons/svg/sub.svg +0 -1
  249. package/src/icons/svg/swipe.svg +0 -1
  250. package/src/icons/svg/switch.svg +0 -1
  251. package/src/icons/svg/table-edit.svg +0 -1
  252. package/src/icons/svg/table.svg +0 -1
  253. package/src/icons/svg/table2.svg +0 -1
  254. package/src/icons/svg/table3.svg +0 -1
  255. package/src/icons/svg/tabs.svg +0 -1
  256. package/src/icons/svg/tag.svg +0 -1
  257. package/src/icons/svg/text.svg +0 -1
  258. package/src/icons/svg/textarea.svg +0 -1
  259. package/src/icons/svg/time-range.svg +0 -1
  260. package/src/icons/svg/time.svg +0 -1
  261. package/src/icons/svg/tree.svg +0 -1
  262. package/src/icons/svg/unknow.svg +0 -20
  263. package/src/icons/svg/upload.svg +0 -1
  264. package/src/icons/svg/view.svg +0 -1
  265. package/src/icons/svg/word.svg +0 -20
  266. package/src/icons/svg/xlsx.svg +0 -18
  267. package/src/icons/svg/zip.svg +0 -20
  268. package/src/images/phone_bg.png +0 -0
  269. package/src/main.js +0 -26
  270. package/src/package/FGDesigner.vue +0 -114
  271. package/src/package/FGPcForm.vue +0 -100
  272. package/src/package/FGPcShow.vue +0 -69
  273. package/src/package/FGPhoneForm.vue +0 -106
  274. package/src/package/FGPhoneShow.vue +0 -69
  275. package/src/package/common/init.js +0 -23
  276. package/src/package/common/initPc.js +0 -26
  277. package/src/package/common/initPhone.js +0 -28
  278. package/src/package/common/mixins.js +0 -57
  279. package/src/package/index.js +0 -40
  280. package/src/plugins/richEditor/richEditorPc.vue +0 -478
  281. package/src/plugins/richEditor/richEditorPhone.vue +0 -520
  282. package/src/plugins/voiceTxtarea/voiceTxtarea.vue +0 -115
  283. package/src/router.js +0 -111
  284. package/src/store/index.js +0 -14
  285. package/src/store/modules/app.js +0 -54
  286. package/src/store/modules/user.js +0 -23
  287. package/src/style/color.scss +0 -10
  288. package/src/style/main.scss +0 -78
  289. package/src/utils/comsData.js +0 -279
  290. package/src/utils/defaultValue.js +0 -2288
  291. package/src/utils/drawingDefalut.js +0 -2749
  292. package/src/utils/iconData.js +0 -283
  293. package/src/utils/index.js +0 -6
  294. package/src/utils/progress.js +0 -96
  295. package/src/utils/request.js +0 -41
  296. package/src/views/coms/components/Attributes.vue +0 -28
  297. package/src/views/coms/components/ELink.vue +0 -23
  298. package/src/views/coms/components/Events.vue +0 -20
  299. package/src/views/coms/components/Example.vue +0 -42
  300. package/src/views/coms/components/Methods.vue +0 -20
  301. package/src/views/coms/components/VLink.vue +0 -23
  302. package/src/views/coms/comsDesiger.vue +0 -224
  303. package/src/views/coms/comsFormPc.vue +0 -76
  304. package/src/views/coms/comsFormPhone.vue +0 -103
  305. package/src/views/coms/comsShowPc.vue +0 -56
  306. package/src/views/coms/comsShowPhone.vue +0 -89
  307. package/src/views/config/components/configCell.vue +0 -111
  308. package/src/views/config/config.vue +0 -84
  309. package/src/views/demo/demo.vue +0 -235
  310. package/src/views/demo/demo2.vue +0 -131
  311. package/src/views/demo/table.js +0 -321
  312. package/src/views/document/index.vue +0 -140
  313. package/src/views/form/create.vue +0 -44
  314. package/vue.config.js +0 -72
  315. /package/{@xfu0401/form-generator/demo.html → demo.html} +0 -0
  316. /package/{@xfu0401/form-generator/form-generator.common.js → form-generator.common.js} +0 -0
  317. /package/{@xfu0401/form-generator/form-generator.common.js.map → form-generator.common.js.map} +0 -0
  318. /package/{@xfu0401/form-generator/form-generator.css → form-generator.css} +0 -0
  319. /package/{@xfu0401/form-generator/form-generator.umd.js → form-generator.umd.js} +0 -0
  320. /package/{@xfu0401/form-generator/form-generator.umd.js.map → form-generator.umd.js.map} +0 -0
  321. /package/{@xfu0401/form-generator/form-generator.umd.min.js → form-generator.umd.min.js} +0 -0
  322. /package/{@xfu0401/form-generator/form-generator.umd.min.js.map → form-generator.umd.min.js.map} +0 -0
  323. /package/{@xfu0401/form-generator/static → static}/fonts/element-icons.535877f5.woff +0 -0
  324. /package/{@xfu0401/form-generator/static → static}/fonts/element-icons.732389de.ttf +0 -0
  325. /package/{@xfu0401/form-generator/static → static}/img/phone_bg.7ead1463.png +0 -0
@@ -1,1113 +0,0 @@
1
- <template>
2
- <!-- 组件属性 -->
3
- <div
4
- class="Fg-field"
5
- v-if="activeData && Object.keys(activeData).length"
6
- :key="activeData.__config__.formId"
7
- >
8
- <!-- <el-form
9
- size="small"
10
- label-position="left"
11
- label-width="90px"
12
- style="margin-top:-16px;padding:5px 0"
13
- >
14
- <el-form-item v-if="activeData.isLock !== undefined" label="是否锁定">
15
- <el-switch :value="activeData.isLock" @change="handleLock(activeData)" />
16
- </el-form-item>
17
- </el-form>-->
18
- <el-form size="small" label-position="left" label-width="90px" :disabled="activeData.isLock">
19
- <div class="Fg-field-name">属性配置</div>
20
- <el-form-item v-if="activeData.__config__.changeTag" label="组件类型">
21
- <el-select
22
- :value="activeData.__config__.label"
23
- placeholder="请选择组件类型"
24
- :style="{ width: '100%' }"
25
- @change="tagChange"
26
- >
27
- <el-option-group v-for="group in tagList" :key="group.label" :label="group.label">
28
- <el-option
29
- v-for="item in group.options"
30
- :key="item.__config__.label"
31
- :label="item.__config__.label"
32
- :value="item.__config__.label"
33
- >
34
- <svg-icon class="node-icon" :icon-class="item.__config__.tagIcon" />
35
- <span>{{ item.__config__.label }}</span>
36
- </el-option>
37
- </el-option-group>
38
- </el-select>
39
- </el-form-item>
40
- <el-form-item required v-if="activeData.__config__.formKey !== undefined" label="标识符">
41
- <el-input
42
- v-model="activeData.__config__.formKey"
43
- placeholder="请输入字段标识符"
44
- :disabled="activeData.__config__.formKeyDisabled ||false"
45
- />
46
- </el-form-item>
47
- <el-form-item v-if="activeData.__config__.componentName !== undefined" label="组件名">
48
- {{ activeData.__config__.componentName }}
49
- <!-- <el-input v-model="activeData.__config__.componentName" placeholder="请输入组件名" maxlength="50" /> -->
50
- </el-form-item>
51
- <el-form-item required v-if="activeData.__config__.label !== undefined" label="标题">
52
- <el-input
53
- v-model="activeData.__config__.label"
54
- placeholder="请输入标题"
55
- @input="changeRenderKey"
56
- />
57
- </el-form-item>
58
- <el-form-item v-if="activeData.header !== undefined" label="标题">
59
- <el-input v-model="activeData.header" placeholder="请输入标题" @input="changeRenderKey" />
60
- </el-form-item>
61
- <el-form-item v-if="activeData.placeholder !== undefined" label="占位提示">
62
- <el-input
63
- v-model="activeData.placeholder"
64
- placeholder="请输入占位提示"
65
- @input="changeRenderKey"
66
- maxlength="50"
67
- />
68
- </el-form-item>
69
- <el-form-item v-if="activeData['start-placeholder'] !== undefined" label="开始占位">
70
- <el-input v-model="activeData['start-placeholder']" placeholder="请输入占位提示" maxlength="50" />
71
- </el-form-item>
72
- <el-form-item v-if="activeData['end-placeholder'] !== undefined" label="结束占位">
73
- <el-input v-model="activeData['end-placeholder']" placeholder="请输入占位提示" maxlength="50" />
74
- </el-form-item>
75
- <el-form-item v-if="activeData.__config__.span !== undefined" label="表单栅格">
76
- <el-slider v-model="activeData.__config__.span" :max="24" :min="1" :marks="{ 12: '' }" />
77
- </el-form-item>
78
- <el-form-item
79
- v-if="
80
- activeData.__config__.tagType == 'layout' &&
81
- activeData.gutter !== undefined
82
- "
83
- label="栅格间隔"
84
- >
85
- <el-input-number v-model="activeData.gutter" :min="0" placeholder="栅格间隔" />
86
- </el-form-item>
87
- <template v-if="activeData.__config__.isStage">
88
- <!-- <el-divider /> -->
89
- <el-form-item v-if="activeData.__config__.defaultValue !==undefined" label="默认选中">
90
- <el-input
91
- :value="setDefaultValue(activeData.__config__.defaultValue)"
92
- placeholder="请输入默认值"
93
- :maxlength="50"
94
- @input="onDefaultValueInput"
95
- />
96
- </el-form-item>
97
- <el-form-item
98
- v-if="
99
- activeData.__config__.tag === 'form-tabs-container' &&
100
- activeData.type !== undefined
101
- "
102
- label="风格类型"
103
- >
104
- <el-radio-group v-model="activeData.type">
105
- <el-radio-button label>默认</el-radio-button>
106
- <el-radio-button label="card">标签</el-radio-button>
107
- <el-radio-button label="border-card">卡片</el-radio-button>
108
- </el-radio-group>
109
- </el-form-item>
110
- <el-form-item v-if="activeData.direction !==undefined" label="显示方向">
111
- <el-radio-group v-model="activeData.direction">
112
- <el-radio-button label="horizontal">水平排列</el-radio-button>
113
- <el-radio-button label="vertical">垂直排列</el-radio-button>
114
- </el-radio-group>
115
- </el-form-item>
116
- <el-form-item v-if="activeData.simple !==undefined" label="显示简洁风格">
117
- <el-switch v-model="activeData.simple" />
118
- </el-form-item>
119
- <FGOptions
120
- v-if="activeData.children!==undefined"
121
- :options.sync="activeData.children"
122
- title="子节点列表"
123
- />
124
- </template>
125
-
126
- <el-form-item
127
- v-if="
128
- activeData.__config__.tag === 'form-row-container' &&
129
- activeData.type !== undefined
130
- "
131
- label="布局模式"
132
- >
133
- <el-radio-group v-model="activeData.type">
134
- <el-radio-button label="default" />
135
- <el-radio-button label="flex" />
136
- </el-radio-group>
137
- </el-form-item>
138
- <el-form-item
139
- v-if="activeData.justify !== undefined && activeData.type === 'flex'"
140
- label="水平排列"
141
- >
142
- <el-select v-model="activeData.justify" placeholder="请选择水平排列" :style="{ width: '100%' }">
143
- <el-option
144
- v-for="(item, index) in justifyOptions"
145
- :key="index"
146
- :label="item.label"
147
- :value="item.value"
148
- />
149
- </el-select>
150
- </el-form-item>
151
- <el-form-item
152
- v-if="activeData.align !== undefined && activeData.type === 'flex'"
153
- label="垂直排列"
154
- >
155
- <el-radio-group v-model="activeData.align">
156
- <el-radio-button label="top" />
157
- <el-radio-button label="middle" />
158
- <el-radio-button label="bottom" />
159
- </el-radio-group>
160
- </el-form-item>
161
- <el-form-item label="栅格间隔" v-if="activeData.gutter !== undefined">
162
- <el-input-number v-model="activeData.gutter" :min="0" placeholder="栅格间隔" />
163
- </el-form-item>
164
- <el-form-item v-if="activeData.__config__.labelWidth !== undefined" label="标签宽度">
165
- <el-input
166
- v-model.number="activeData.__config__.labelWidth"
167
- type="number"
168
- placeholder="请输入标签宽度"
169
- />
170
- </el-form-item>
171
-
172
- <el-form-item
173
- v-if="
174
- activeData.__vModel__ !== undefined &&
175
- !activeData.__config__.defaultValueHidden && activeData.__config__.defaultValue!== undefined
176
- "
177
- label="默认值"
178
- >
179
- <el-input
180
- :value="setDefaultValue(activeData.__config__.defaultValue)"
181
- placeholder="请输入默认值"
182
- :maxlength="activeData.maxlength || 200"
183
- @input="onDefaultValueInput"
184
- />
185
- </el-form-item>
186
- <el-form-item v-if="activeData.html !==undefined" label="HTML内容">
187
- <el-button
188
- type="primary"
189
- plain
190
- size="small"
191
- @click="$refs.HTMLEditor.open(activeData.html)"
192
- >编辑数据</el-button>
193
- <CodeDialog ref="HTMLEditor" v-model="activeData.html" mode="text/html" />
194
- </el-form-item>
195
-
196
- <el-form-item v-if="activeData.__config__.tag === 'form-checkbox-group'" label="至少应选">
197
- <el-input-number
198
- :value="activeData.min"
199
- :min="0"
200
- placeholder="至少应选"
201
- @input="$set(activeData, 'min', $event ? $event : undefined)"
202
- />
203
- </el-form-item>
204
- <el-form-item v-if="activeData.__config__.tag === 'form-checkbox-group'" label="最多可选">
205
- <el-input-number
206
- :value="activeData.max"
207
- :min="0"
208
- placeholder="最多可选"
209
- @input="$set(activeData, 'max', $event ? $event : undefined)"
210
- />
211
- </el-form-item>
212
- <el-form-item
213
- v-if="activeData.__slot__ && activeData.__slot__.prepend !== undefined"
214
- label="前缀"
215
- >
216
- <el-input v-model="activeData.__slot__.prepend" placeholder="请输入前缀" />
217
- </el-form-item>
218
- <el-form-item
219
- v-if="activeData.__slot__ && activeData.__slot__.append !== undefined"
220
- label="后缀"
221
- >
222
- <el-input v-model="activeData.__slot__.append" placeholder="请输入后缀" />
223
- </el-form-item>
224
- <el-form-item v-if="activeData['prefix-icon'] !== undefined" label="前图标">
225
- <el-input v-model="activeData['prefix-icon']" placeholder="请输入前图标名称" clearable>
226
- <el-button slot="append" icon="el-icon-thumb" @click="openIconsDialog('prefix-icon')">选择</el-button>
227
- </el-input>
228
- </el-form-item>
229
- <el-form-item v-if="activeData['suffix-icon'] !== undefined" label="后图标">
230
- <el-input v-model="activeData['suffix-icon']" placeholder="请输入后图标名称" clearable>
231
- <el-button slot="append" icon="el-icon-thumb" @click="openIconsDialog('suffix-icon')">选择</el-button>
232
- </el-input>
233
- </el-form-item>
234
- <el-form-item v-if="activeData.__config__.tag === 'form-cascader'" label="选项分隔符">
235
- <el-input v-model="activeData.separator" placeholder="请输入选项分隔符" />
236
- </el-form-item>
237
- <el-form-item v-if="activeData.autosize !== undefined" label="最小行数">
238
- <el-input-number v-model="activeData.autosize.minRows" :min="1" placeholder="最小行数" />
239
- </el-form-item>
240
- <el-form-item v-if="activeData.autosize !== undefined" label="最大行数">
241
- <el-input-number v-model="activeData.autosize.maxRows" :min="1" placeholder="最大行数" />
242
- </el-form-item>
243
- <el-form-item v-if="isShowMin" label="最小值">
244
- <el-input-number v-model="activeData.min" placeholder="最小值" />
245
- </el-form-item>
246
- <el-form-item v-if="isShowMax" label="最大值">
247
- <el-input-number v-model="activeData.max" placeholder="最大值" />
248
- </el-form-item>
249
-
250
- <el-form-item v-if="activeData.height !== undefined" label="组件高度">
251
- <el-input type="number" v-model.number="activeData.height">
252
- <template slot="append">px</template>
253
- </el-input>
254
- </el-form-item>
255
- <el-form-item v-if="activeData.width !== undefined" label="组件宽度">
256
- <el-input type="number" v-model.number="activeData.width">
257
- <template slot="append">px</template>
258
- </el-input>
259
- </el-form-item>
260
- <el-form-item v-if="isShowStep" label="步长">
261
- <el-input-number v-model="activeData.step" placeholder="步数" />
262
- </el-form-item>
263
- <el-form-item v-if="activeData.__config__.tag === 'form-input-number'" label="精度">
264
- <el-input-number v-model="activeData.precision" :min="0" placeholder="精度" />
265
- </el-form-item>
266
- <el-form-item v-if="activeData.__config__.tag === 'form-input-number'" label="按钮位置">
267
- <el-radio-group v-model="activeData['controls-position']">
268
- <el-radio-button label>默认</el-radio-button>
269
- <el-radio-button label="right">右侧</el-radio-button>
270
- </el-radio-group>
271
- </el-form-item>
272
- <el-form-item v-if="activeData.maxlength !== undefined" label="最多输入">
273
- <el-input v-model="activeData.maxlength" placeholder="请输入字符长度">
274
- <template slot="append">个字符</template>
275
- </el-input>
276
- </el-form-item>
277
- <el-form-item v-if="activeData['active-text'] !== undefined" label="开启提示">
278
- <el-input v-model="activeData['active-text']" placeholder="请输入开启提示" />
279
- </el-form-item>
280
- <el-form-item v-if="activeData['inactive-text'] !== undefined" label="关闭提示">
281
- <el-input v-model="activeData['inactive-text']" placeholder="请输入关闭提示" />
282
- </el-form-item>
283
- <el-form-item v-if="activeData['active-value'] !== undefined" label="开启值">
284
- <el-input
285
- :value="setDefaultValue(activeData['active-value'])"
286
- placeholder="请输入开启值"
287
- @input="onSwitchValueInput($event, 'active-value')"
288
- />
289
- </el-form-item>
290
- <el-form-item v-if="activeData['inactive-value'] !== undefined" label="关闭值">
291
- <el-input
292
- :value="setDefaultValue(activeData['inactive-value'])"
293
- placeholder="请输入关闭值"
294
- @input="onSwitchValueInput($event, 'inactive-value')"
295
- />
296
- </el-form-item>
297
- <el-form-item
298
- v-if="
299
- activeData.type !== undefined &&
300
- 'form-date-picker' === activeData.__config__.tag
301
- "
302
- label="时间类型"
303
- >
304
- <el-select
305
- v-model="activeData.type"
306
- placeholder="请选择时间类型"
307
- :style="{ width: '100%' }"
308
- @change="dateTypeChange"
309
- >
310
- <el-option
311
- v-for="(item, index) in dateOptions"
312
- :key="index"
313
- :label="item.label"
314
- :value="item.value"
315
- />
316
- </el-select>
317
- </el-form-item>
318
-
319
- <el-form-item v-if="activeData.accept !== undefined" label="文件类型">
320
- <el-select
321
- v-model="activeData.accept"
322
- placeholder="请选择文件类型2"
323
- :style="{ width: '100%' }"
324
- clearable
325
- multiple
326
- >
327
- <el-option
328
- v-for="(item, index) in fileTypeOptions"
329
- :key="index"
330
- :label="item.label"
331
- :value="item.value"
332
- />
333
- </el-select>
334
- </el-form-item>
335
- <el-form-item v-if="activeData.__config__.fileSize !== undefined" label="文件大小">
336
- <el-input v-model.number="activeData.__config__.fileSize" placeholder="请输入文件大小">
337
- <el-select
338
- slot="append"
339
- v-model="activeData.__config__.sizeUnit"
340
- :style="{ width: '66px' }"
341
- >
342
- <el-option label="KB" value="KB" />
343
- <el-option label="MB" value="MB" />
344
- <el-option label="GB" value="GB" />
345
- </el-select>
346
- </el-input>
347
- </el-form-item>
348
- <el-form-item v-if="activeData.limit !== undefined" label="最大允许上传个数">
349
- <el-input-number v-model="activeData.limit" />
350
- </el-form-item>
351
- <el-form-item v-if="activeData.isUpload !== undefined" label="接口上传">
352
- <el-switch v-model="activeData.isUpload" />
353
- </el-form-item>
354
- <template v-if="activeData.isUpload!==false">
355
- <el-form-item v-if="activeData.action !== undefined" label="上传地址">
356
- <el-input v-model="activeData.action" placeholder="请输入上传地址" clearable />
357
- </el-form-item>
358
- <el-form-item v-if="activeData.name !== undefined" label="上传字段名">
359
- <el-input v-model="activeData.name" placeholder="请输入上传文件字段名" />
360
- </el-form-item>
361
- <el-form-item v-if="activeData.download !== undefined" label="下载地址">
362
- <el-input v-model="activeData.download" placeholder="请输入下载地址" clearable />
363
- </el-form-item>
364
- <el-form-item v-if="activeData.dName !== undefined" label="下载字段名">
365
- <el-input v-model="activeData.dName" placeholder="请输入下载文件字段名" />
366
- </el-form-item>
367
- </template>
368
- <el-form-item v-if="activeData.remark !== undefined" label="补充说明">
369
- <el-input v-model="activeData.remark" placeholder="请输入" />
370
- </el-form-item>
371
- <el-form-item
372
- v-if="activeData.href !== undefined"
373
- :label="activeData.__config__.tag=='form-upload-temp'?'模板地址':'跳转链接'"
374
- >
375
- <el-input v-model="activeData.href" placeholder="请输入跳转链接" maxlength="200" />
376
- </el-form-item>
377
- <el-form-item v-if="activeData.linkName !== undefined" label="模板名称">
378
- <el-input v-model="activeData.linkName" placeholder="请输入链接名称" maxlength="200" />
379
- </el-form-item>
380
- <el-form-item
381
- v-if="
382
- activeData.type !== undefined &&
383
- (activeData.__config__.tag === 'form-link' || activeData.__config__.tag === 'form-tag')
384
- "
385
- label="类型"
386
- >
387
- <el-select v-model="activeData.type" :style="{ width: '100%' }">
388
- <el-option label="primary" value="primary" />
389
- <el-option label="success" value="success" />
390
- <el-option label="warning" value="warning" />
391
- <el-option label="danger" value="danger" />
392
- <el-option label="info" value="info" />
393
- <el-option
394
- v-if="activeData.__config__.tag === 'form-link'"
395
- label="default"
396
- value="default"
397
- />
398
- </el-select>
399
- </el-form-item>
400
- <el-form-item v-if="activeData.underline !== undefined" label="显示下划线">
401
- <el-switch v-model="activeData.underline" />
402
- </el-form-item>
403
- <el-form-item v-if="activeData.__config__.buttonText !== undefined" label="按钮文字">
404
- <el-input v-model="activeData.__config__.buttonText" placeholder="请输入按钮文字" />
405
- </el-form-item>
406
- <el-form-item v-if="activeData['range-separator'] !== undefined" label="分隔符">
407
- <el-input v-model="activeData['range-separator']" placeholder="请输入分隔符" />
408
- </el-form-item>
409
- <el-form-item v-if="activeData['picker-options'] !== undefined" label="时间段">
410
- <el-input v-model="activeData['picker-options'].selectableRange" placeholder="请输入时间段" />
411
- </el-form-item>
412
- <el-form-item v-if="activeData.format !== undefined" label="时间格式">
413
- <el-input :value="activeData.format" placeholder="请输入时间格式" @input="setTimeValue($event)" />
414
- </el-form-item>
415
- <el-form-item v-if="activeData.description !== undefined" label="辅助文字">
416
- <el-input v-model="activeData.description" placeholder="请输入辅助文字" maxlength="500" />
417
- </el-form-item>
418
- <FGOptions
419
- v-if="activeData.__slot__ && activeData.__slot__.options!==undefined"
420
- :options.sync="activeData.__slot__.options"
421
- />
422
- <!-- 图标 -->
423
- <el-form-item v-if="activeData['icon'] !== undefined" label="图标">
424
- <el-input v-model="activeData['icon']" placeholder="请输入后图标名称" clearable>
425
- <el-button slot="append" icon="el-icon-thumb" @click="openIconsDialog('icon')">选择</el-button>
426
- </el-input>
427
- </el-form-item>
428
- <!-- 画笔粗细 -->
429
- <el-form-item v-if="activeData['lineWidth'] !== undefined" label="画笔粗细">
430
- <el-input-number v-model="activeData.lineWidth" :min="1" :max="10" />
431
- </el-form-item>
432
-
433
- <!-- 选中颜色 -->
434
- <el-form-item
435
- v-if="activeData['color'] !== undefined"
436
- :label="{'form-rate':'选中','':''}[activeData.__config__.tag] || ''+'颜色'"
437
- >
438
- <InputColor v-model="activeData['color']" />
439
- </el-form-item>
440
- <el-form-item v-if="activeData['textColor'] !== undefined" label="文本颜色">
441
- <InputColor v-model="activeData['textColor']" />
442
- </el-form-item>
443
- <!-- 未选中颜色 -->
444
- <el-form-item v-if="activeData['voidColor'] !== undefined" label="未选中颜色">
445
- <InputColor v-model="activeData['voidColor']" />
446
- </el-form-item>
447
- <!-- 背景颜色 -->
448
- <el-form-item v-if="activeData['bgColor'] !== undefined" label="背景颜色">
449
- <InputColor v-model="activeData['bgColor']" />
450
- </el-form-item>
451
- <!-- 画笔颜色 -->
452
- <el-form-item v-if="activeData['lineColor'] !== undefined" label="画笔颜色">
453
- <InputColor v-model="activeData['lineColor']" />
454
- </el-form-item>
455
-
456
- <!-- 轮播图 -->
457
- <template v-if="activeData.__config__.tag=='form-swipe'">
458
- <el-form-item v-if="activeData.type !== undefined">
459
- <span slot="label">
460
- 类型
461
- <el-tooltip content="卡片类型仅在pc端生效" placement="top">
462
- <i class="el-icon-question"></i>
463
- </el-tooltip>
464
- </span>
465
- <el-radio-group v-model="activeData.type">
466
- <el-radio-button label="default">默认</el-radio-button>
467
- <el-radio-button label="card">卡片化</el-radio-button>
468
- </el-radio-group>
469
- </el-form-item>
470
- <el-form-item v-if="activeData.initialIndex !== undefined" label="初始位置索引">
471
- <el-input-number v-model="activeData.initialIndex" :min="0" />
472
- </el-form-item>
473
- <el-form-item v-if="activeData.autoplay !== undefined" label="是否自动切换">
474
- <el-switch v-model="activeData.autoplay" />
475
- </el-form-item>
476
- <el-form-item v-if="activeData.loop !== undefined" label="是否循环显示">
477
- <el-switch v-model="activeData.loop" />
478
- </el-form-item>
479
- <el-form-item v-if="activeData.direction !==undefined" label="展示方向">
480
- <el-radio-group v-model="activeData.direction">
481
- <el-radio-button label="horizontal">水平排列</el-radio-button>
482
- <el-radio-button label="vertical">垂直排列</el-radio-button>
483
- </el-radio-group>
484
- </el-form-item>
485
- <el-form-item v-if="activeData.interval !==undefined" label="自动切换时间">
486
- <!-- <el-input-number v-model="activeData.interval" :min="0" /> -->
487
- <el-input type="number" placeholder="请输入切换时间" v-model.number="activeData.interval">
488
- <template slot="append">ms</template>
489
- </el-input>
490
- </el-form-item>
491
- </template>
492
- <el-form-item v-if="activeData.speed !== undefined" label="滚动速率">
493
- <el-input type="number" v-model.number="activeData.speed">
494
- <template slot="append">px/s</template>
495
- </el-input>
496
- </el-form-item>
497
- <el-form-item v-if="activeData.center !== undefined" label="是否居中">
498
- <el-switch v-model="activeData.center" />
499
- </el-form-item>
500
-
501
- <el-form-item v-if="activeData.__config__.optionType !== undefined" label="选项样式">
502
- <el-radio-group v-model="activeData.__config__.optionType">
503
- <el-radio-button label="default">默认</el-radio-button>
504
- <el-radio-button label="button">按钮</el-radio-button>
505
- </el-radio-group>
506
- </el-form-item>
507
- <el-form-item v-if="activeData['active-color'] !== undefined" label="开启颜色">
508
- <InputColor v-model="activeData['active-color']" />
509
- </el-form-item>
510
- <el-form-item v-if="activeData['inactive-color'] !== undefined" label="关闭颜色">
511
- <InputColor v-model="activeData['inactive-color']" />
512
- </el-form-item>
513
-
514
- <el-form-item
515
- v-if="
516
- activeData.__config__.showLabel !== undefined &&
517
- activeData.__config__.labelWidth !== undefined
518
- "
519
- label="显示标签"
520
- >
521
- <el-switch v-model="activeData.__config__.showLabel" />
522
- </el-form-item>
523
-
524
- <el-form-item v-if="activeData.defaultExpandAll !== undefined" label="默认展开所有节点">
525
- <el-switch v-model="activeData.defaultExpandAll" />
526
- </el-form-item>
527
-
528
- <el-form-item v-if="activeData['allow-half'] !== undefined" label="允许半选">
529
- <el-switch v-model="activeData['allow-half']" />
530
- </el-form-item>
531
- <el-form-item v-if="activeData['show-text'] !== undefined" label="辅助文字">
532
- <el-switch v-model="activeData['show-text']" @change="rateTextChange" />
533
- </el-form-item>
534
- <el-form-item v-if="activeData['show-score'] !== undefined" label="显示分数">
535
- <el-switch v-model="activeData['show-score']" @change="rateScoreChange" />
536
- </el-form-item>
537
- <el-form-item v-if="activeData['show-stops'] !== undefined" label="显示间断点">
538
- <el-switch v-model="activeData['show-stops']" />
539
- </el-form-item>
540
- <el-form-item v-if="activeData.range !== undefined" label="范围选择">
541
- <el-switch v-model="activeData.range" @change="rangeChange" />
542
- </el-form-item>
543
- <el-form-item
544
- v-if="
545
- activeData.__config__.border !== undefined &&
546
- activeData.__config__.optionType === 'default'
547
- "
548
- label="是否带边框"
549
- >
550
- <el-switch v-model="activeData.__config__.border" />
551
- </el-form-item>
552
- <el-form-item v-if="activeData.__config__.tag === 'form-color-picker'" label="颜色格式">
553
- <el-select
554
- v-model="activeData['color-format']"
555
- placeholder="请选择颜色格式"
556
- :style="{ width: '100%' }"
557
- clearable
558
- @change="colorFormatChange"
559
- >
560
- <el-option
561
- v-for="(item, index) in colorFormatOptions"
562
- :key="index"
563
- :label="item.label"
564
- :value="item.value"
565
- />
566
- </el-select>
567
- </el-form-item>
568
- <el-form-item
569
- v-if="
570
- activeData.size !== undefined &&
571
- (activeData.__config__.optionType === 'button' ||
572
- activeData.__config__.border ||
573
- activeData.__config__.tag === 'form-color-picker' ||
574
- activeData.__config__.tag === 'form-button' ||
575
- activeData.__config__.tag === 'form-table'||
576
- activeData.__config__.tag === 'form-tag')
577
- "
578
- label="组件尺寸"
579
- >
580
- <el-radio-group v-model="activeData.size">
581
- <el-radio-button label="medium">中等</el-radio-button>
582
- <el-radio-button label="small">较小</el-radio-button>
583
- <el-radio-button label="mini">迷你</el-radio-button>
584
- </el-radio-group>
585
- </el-form-item>
586
- <el-form-item v-if="activeData.hit !== undefined" label="显示边框描边">
587
- <el-switch v-model="activeData.hit"></el-switch>
588
- </el-form-item>
589
- <el-form-item v-if="activeData.closable !== undefined" label="可关闭">
590
- <el-switch v-model="activeData.closable"></el-switch>
591
- </el-form-item>
592
- <el-form-item v-if="activeData.plain !== undefined" label="是否朴素按钮">
593
- <el-switch v-model="activeData.plain"></el-switch>
594
- </el-form-item>
595
- <el-form-item v-if="activeData.round !== undefined" label="是否为圆角">
596
- <el-switch v-model="activeData.round"></el-switch>
597
- </el-form-item>
598
- <el-form-item v-if="activeData.circle !== undefined" label="是否为圆形">
599
- <el-switch v-model="activeData.circle"></el-switch>
600
- </el-form-item>
601
- <el-form-item v-if="activeData.effect !== undefined" label="主题">
602
- <el-select v-model="activeData.effect" :style="{ width: '100%' }">
603
- <el-option label="dark" value="dark" />
604
- <el-option label="light" value="light" />
605
- <el-option label="plain" value="plain" />
606
- </el-select>
607
- </el-form-item>
608
- <el-form-item v-if="activeData.target !== undefined" label="打开方式">
609
- <el-select v-model="activeData.target" :style="{ width: '100%' }">
610
- <el-option label="当前窗口" value="_self" />
611
- <el-option label="新的窗口" value="_blank" />
612
- <el-option label="父级窗口" value="_parent" />
613
- <el-option label="顶级窗口" value="_top" />
614
- </el-select>
615
- </el-form-item>
616
- <el-form-item v-if="activeData['show-word-limit'] !== undefined" label="输入统计">
617
- <el-switch v-model="activeData['show-word-limit']" />
618
- </el-form-item>
619
- <el-form-item v-if="activeData.__config__.tag === 'form-input-number'" label="严格步数">
620
- <el-switch v-model="activeData['step-strictly']" />
621
- </el-form-item>
622
-
623
- <el-form-item v-if="activeData.__config__.tag === 'form-cascader'" label="展示全路径">
624
- <el-switch v-model="activeData['show-all-levels']" />
625
- </el-form-item>
626
- <el-form-item v-if="activeData.__config__.tag === 'form-cascader'" label="可否筛选">
627
- <el-switch v-model="activeData.filterable" />
628
- </el-form-item>
629
- <el-form-item v-if="activeData.clearable !== undefined" label="能否清空">
630
- <el-switch v-model="activeData.clearable" />
631
- </el-form-item>
632
- <el-form-item v-if="activeData.__config__.showTip !== undefined" label="显示提示">
633
- <el-switch v-model="activeData.__config__.showTip" />
634
- </el-form-item>
635
-
636
- <el-form-item v-if="activeData.__config__.tag === 'form-select'" label="能否搜索">
637
- <el-switch v-model="activeData.filterable" />
638
- </el-form-item>
639
- <el-form-item v-if="activeData.transcoding !== undefined" label="是否开启转码">
640
- <el-switch v-model="activeData.transcoding" />
641
- </el-form-item>
642
- <el-form-item v-if="activeData.checkStrictly !== undefined" label="选择任意一级">
643
- <el-switch v-model="activeData.checkStrictly" />
644
- </el-form-item>
645
- <el-form-item v-if="activeData.multiple !== undefined" label="是否多选">
646
- <el-switch v-model="activeData.multiple" />
647
- </el-form-item>
648
- <!-- <el-form-item v-if="activeData.enablePrint !== undefined" label="可打印">
649
- <el-switch v-model="activeData.enablePrint" />
650
- </el-form-item>-->
651
- <el-form-item v-if="activeData.readonly !== undefined" label="是否只读">
652
- <el-switch v-model="activeData.readonly" />
653
- </el-form-item>
654
- <el-form-item v-if="activeData.disabled !== undefined" label="是否禁用">
655
- <el-switch v-model="activeData.disabled" />
656
- </el-form-item>
657
- <el-form-item v-if="activeData.isHide !== undefined" label="是否隐藏">
658
- <el-switch v-model="activeData.isHide" />
659
- </el-form-item>
660
- <el-form label-width="90px" size="small">
661
- <el-form-item v-if="activeData.isLock !== undefined" label="是否锁定">
662
- <el-switch :value="activeData.isLock" @change="handleLock(activeData)" />
663
- </el-form-item>
664
- </el-form>
665
-
666
- <el-form-item v-if="activeData.contentPosition !== undefined" label="文案位置">
667
- <el-select v-model="activeData.contentPosition" :style="{ width: '100%' }">
668
- <el-option label="left" value="left" />
669
- <el-option label="center" value="center" />
670
- <el-option label="right" value="right" />
671
- </el-select>
672
- </el-form-item>
673
-
674
- <el-form-item v-if="activeData.maxSize !== undefined">
675
- <span slot="label">
676
- 最大行数
677
- <el-tooltip content="允许添加多少条记录" placement="top">
678
- <i class="el-icon-question"></i>
679
- </el-tooltip>
680
- </span>
681
- <el-input-number v-model="activeData.maxSize" :min="1" />
682
- </el-form-item>
683
- <el-form-item v-if="activeData.subType !== undefined" label="布局方式">
684
- <span slot="label">
685
- 布局方式
686
- <el-tooltip content="因尺寸原因,移动端只显示“按表单”布局" placement="top">
687
- <i class="el-icon-question"></i>
688
- </el-tooltip>
689
- </span>
690
- <el-radio-group v-model="activeData.subType">
691
- <el-radio-button label="table">按表格</el-radio-button>
692
- <el-radio-button label="form">按表单</el-radio-button>
693
- </el-radio-group>
694
- </el-form-item>
695
- <el-form-item v-if="activeData.shadow !== undefined" label="阴影显示时机">
696
- <el-select v-model="activeData.shadow" :style="{ width: '100%' }">
697
- <el-option label="常显" value="always" />
698
- <el-option label="不显示" value="never" />
699
- <el-option label="悬浮" value="hover" />
700
- </el-select>
701
- </el-form-item>
702
-
703
- <!-- 表格属性 -->
704
- <template v-if="activeData.subType =='table'||activeData.__config__.tag=='form-table' ">
705
- <el-form-item v-if="activeData.stripe !== undefined" label="是否为斑马纹">
706
- <el-switch v-model="activeData.stripe" />
707
- </el-form-item>
708
- <el-form-item v-if="activeData.border !== undefined" label="是否带有纵向边框">
709
- <el-switch v-model="activeData.border" />
710
- </el-form-item>
711
- <el-form-item v-if="activeData.showHeader !== undefined" label="是否显示表头">
712
- <el-switch v-model="activeData.showHeader" />
713
- </el-form-item>
714
- </template>
715
- <TableConfig v-model="activeData" />
716
- <template v-if="activeData.__config__.layoutTree">
717
- <!-- 布局结构树 -->
718
- <LayoutTree :value="activeData" />
719
- </template>
720
- <!-- 数据配置 -->
721
- <template v-if="activeData.dataObj">
722
- <div class="Fg-field-name">数据配置</div>
723
- <DataConfig
724
- v-if="activeData.dataObj"
725
- v-model="activeData.dataObj"
726
- :isPage="activeData.isPage"
727
- />
728
- </template>
729
- <template v-if="activeData.search">
730
- <div class="Fg-field-name">搜索配置</div>
731
- <DataConfig v-if="activeData.search" v-model="activeData.search" dateType="dynamic" />
732
- </template>
733
- <!-- 分页配置 -->
734
- <el-form-item label="开启分页" v-if="activeData.isPage !== undefined">
735
- <span slot="label">
736
- 开启分页
737
- <el-tooltip content="仅在动态数据模式下通过接口加载数据时生效" placement="top">
738
- <i class="el-icon-question"></i>
739
- </el-tooltip>
740
- </span>
741
- <el-switch v-model="activeData.isPage" />
742
- </el-form-item>
743
- <!-- <el-collapse v-model="activeNames" style="margin-bottom:22px" v-if="activeData.isPage">
744
- <el-collapse-item title="分页管理" name="1">-->
745
- <PageConfig v-model="activeData.pagination" v-if="activeData.isPage" />
746
- <!-- </el-collapse-item>
747
- </el-collapse>-->
748
- <!-- 验证配置 -->
749
- <template v-if="activeData.__config__.regList">
750
- <div class="Fg-field-name">验证配置</div>
751
- <el-form-item v-if="activeData.__config__.required !== undefined" label="是否必填">
752
- <el-switch v-model="activeData.__config__.required" />
753
- </el-form-item>
754
- <RegConfig v-model="activeData.__config__.regList" />
755
- </template>
756
- <!-- 样式配置 -->
757
- <template v-if="activeData.styleObj !== undefined">
758
- <div class="Fg-field-name">样式配置</div>
759
- <StyleConfig
760
- v-model="activeData.styleObj"
761
- :list="formConf?.cssList"
762
- :disabled="activeData.isLock"
763
- />
764
- </template>
765
- <!-- 事件配置 -->
766
- <template v-if="activeData.event !== undefined">
767
- <div class="Fg-field-name">事件配置</div>
768
- <EventConfig v-model="activeData.event" :list="formConf?.eventList" />
769
- </template>
770
- <!-- 图标弹框 -->
771
- <FGIconsDialog ref="IconsVisible" v-model="activeData[currentIconModel]" />
772
- </el-form>
773
- </div>
774
- </template>
775
-
776
- <script>
777
- import FGIconsDialog from "@/components/huComponents/FGIconsDialog.vue";
778
- import FGOptions from "@/components/huComponents/FGOptions.vue";
779
- import FGSelect from "@/components/huComponents/FGSelect.vue";
780
- import InputColor from "@/components/huComponents/InputColor";
781
- import LayoutTree from "@/components/huComponents/LayoutTree.vue";
782
- import ImportExcel from "@/components/fileComs/ImportExcel.vue";
783
- import StyleConfig from "../configComponents/StyleConfig.vue";
784
- import EventConfig from "../configComponents/EventConfig.vue";
785
- import TableConfig from "../configComponents/TableConfig.vue";
786
- import CodeDialog from "@/components/editor/CodeDialog";
787
- import DataConfig from "../configComponents/DataConfig";
788
- import PageConfig from "../configComponents/PageConfig";
789
- import RegConfig from "../configComponents/RegConfig";
790
- import { isNumberStr } from "../utils/index";
791
- import {
792
- dateTimeFormat,
793
- dateTypeOptions,
794
- dateRangeTypeOptions,
795
- colorFormatOptions,
796
- justifyOptions,
797
- fileTypeOptions,
798
- } from "../utils/attribute";
799
- import { inputComponents, selectComponents } from "../utils/config";
800
- import { deepClone } from "../utils";
801
- import store from "@/store";
802
- import { MessageBox } from "element-ui";
803
-
804
- // 使changeRenderKey在目标组件改变时可用
805
- const needRerenderList = ["richText"];
806
- export default {
807
- components: {
808
- FGIconsDialog,
809
- ImportExcel,
810
- FGSelect,
811
- FGOptions,
812
- LayoutTree,
813
- StyleConfig,
814
- TableConfig,
815
- CodeDialog,
816
- EventConfig,
817
- InputColor,
818
- DataConfig,
819
- PageConfig,
820
- RegConfig,
821
- },
822
- props: {
823
- // 表单属性
824
- formConf: {
825
- type: Object,
826
- default: () => {},
827
- },
828
- },
829
- data() {
830
- return {
831
- activeData: {},
832
- currentIconModel: null, // 选择的图标的参数名称
833
- colorFormatOptions,
834
- justifyOptions,
835
- fileTypeOptions,
836
- };
837
- },
838
-
839
- watch: {
840
- activeData: {
841
- immediate: true,
842
- deep: true,
843
- handler(newValue) {
844
- if (JSON.stringify(newValue) !== JSON.stringify(this.currentData)) {
845
- this.setCurrentData(newValue);
846
- }
847
- },
848
- },
849
- currentData: {
850
- immediate: true,
851
- deep: true,
852
- handler(newValue) {
853
- this.activeData = deepClone(newValue);
854
- },
855
- },
856
- },
857
-
858
- computed: {
859
- // 当前选中表单组件
860
- currentData() {
861
- return store.state.app.activeData;
862
- },
863
- tagList() {
864
- return [
865
- { label: "输入型组件", options: inputComponents },
866
- { label: "选择型组件", options: selectComponents },
867
- ];
868
- },
869
- dateOptions() {
870
- if (
871
- this.activeData.type !== undefined &&
872
- this.activeData.__config__.tag === "form-date-picker"
873
- ) {
874
- if (this.activeData["start-placeholder"] === undefined) {
875
- return dateTypeOptions;
876
- }
877
- return dateRangeTypeOptions;
878
- }
879
- return [];
880
- },
881
- activeTag() {
882
- return this.activeData.__config__.tag;
883
- },
884
- isShowMin() {
885
- return ["form-input-number", "form-slider"].indexOf(this.activeTag) > -1;
886
- },
887
- isShowMax() {
888
- return (
889
- ["form-input-number", "form-slider", "form-rate"].indexOf(
890
- this.activeTag
891
- ) > -1
892
- );
893
- },
894
- isShowStep() {
895
- return ["form-input-number", "form-slider"].indexOf(this.activeTag) > -1;
896
- },
897
- },
898
- methods: {
899
- // 锁定
900
- handleLock(item) {
901
- const message = item.isLock
902
- ? "解锁后改组件可以修改任何配置"
903
- : "锁定后该组件将无法再修改任何配置";
904
- MessageBox.confirm(
905
- message,
906
- `确定要${item.isLock ? "解锁" : "锁定"}该组件吗?`,
907
- {
908
- type: "warning",
909
- }
910
- ).then(() => {
911
- item.isLock = !item.isLock;
912
- });
913
- },
914
- setCurrentData(item) {
915
- if (Object.keys(item).length) store.commit("SET_ACTIVEDATA", item);
916
- },
917
- // 打开图标弹框
918
- openIconsDialog(model) {
919
- this.currentIconModel = model;
920
- this.$refs.IconsVisible.onOpen();
921
- },
922
-
923
- addSelectItem() {
924
- this.activeData.__slot__.options.push({
925
- label: "",
926
- value: "",
927
- });
928
- },
929
-
930
- setDefaultValue(val) {
931
- if (Array.isArray(val)) {
932
- return val.join(",");
933
- }
934
- if (typeof val === "boolean") {
935
- return `${val}`;
936
- }
937
- return val;
938
- },
939
- onDefaultValueInput(str) {
940
- if (Array.isArray(this.activeData.__config__.defaultValue)) {
941
- // 数组
942
- this.$set(
943
- this.activeData.__config__,
944
- "defaultValue",
945
- str.split(",").map((val) => (isNumberStr(val) ? +val : val))
946
- );
947
- } else if (["true", "false"].indexOf(str) > -1) {
948
- // 布尔
949
- this.$set(this.activeData.__config__, "defaultValue", JSON.parse(str));
950
- } else {
951
- // 字符串和数字
952
- this.$set(
953
- this.activeData.__config__,
954
- "defaultValue",
955
- isNumberStr(str) ? str + "" : str
956
- );
957
- }
958
- },
959
- onSwitchValueInput(val, name) {
960
- if (["true", "false"].indexOf(val) > -1) {
961
- this.$set(this.activeData, name, JSON.parse(val));
962
- } else {
963
- this.$set(this.activeData, name, isNumberStr(val) ? +val : val);
964
- }
965
- },
966
- setTimeValue(val, type) {
967
- const valueFormat = type === "week" ? dateTimeFormat.date : val;
968
- this.$set(this.activeData.__config__, "defaultValue", null);
969
- this.$set(this.activeData, "value-format", valueFormat);
970
- this.$set(this.activeData, "format", val);
971
- },
972
- spanChange(val) {
973
- this.formConf.span = val;
974
- },
975
-
976
- dateTypeChange(val) {
977
- this.setTimeValue(dateTimeFormat[val], val);
978
- },
979
- rangeChange(val) {
980
- this.$set(
981
- this.activeData.__config__,
982
- "defaultValue",
983
- val
984
- ? this.activeData.min + "," + this.activeData.max
985
- : this.activeData.min
986
- );
987
- },
988
- rateTextChange(val) {
989
- if (val) this.activeData["show-score"] = false;
990
- },
991
- rateScoreChange(val) {
992
- if (val) this.activeData["show-text"] = false;
993
- },
994
- colorFormatChange(val) {
995
- this.activeData.__config__.defaultValue = null;
996
- this.activeData["show-alpha"] = val.indexOf("a") > -1;
997
- this.activeData.__config__.formKey = +new Date(); // 更新renderKey,重新渲染该组件
998
- },
999
-
1000
- setIcon(val) {
1001
- this.activeData[this.currentIconModel] = val;
1002
- },
1003
- tagChange(label) {
1004
- let target = inputComponents.find(
1005
- (item) => item.__config__.label === label
1006
- );
1007
- if (!target)
1008
- target = selectComponents.find(
1009
- (item) => item.__config__.label === label
1010
- );
1011
- // 存储当前控件的id和字段名
1012
- const formId = this.activeData.__config__.formId;
1013
- const formKey = this.activeData.__config__.formKey;
1014
- const __vModel__ = this.activeData.__vModel__;
1015
- this.activeData = deepClone(target);
1016
- // 将旧数据id和字段名赋给新数据
1017
- this.activeData.__config__.formId = formId;
1018
- this.activeData.__config__.formKey = formKey;
1019
- this.activeData.__vModel__ = __vModel__;
1020
- },
1021
- changeRenderKey() {
1022
- if (needRerenderList.includes(this.activeData.__config__.tag)) {
1023
- this.activeData.__config__.formKey = +new Date();
1024
- }
1025
- },
1026
- },
1027
- };
1028
- </script>
1029
-
1030
- <style lang="scss" >
1031
- @import "../styles/generator.scss";
1032
-
1033
- .time-range {
1034
- .el-date-editor {
1035
- width: 227px;
1036
- }
1037
- ::v-deep .el-icon-time {
1038
- display: none;
1039
- }
1040
- }
1041
- .document-link {
1042
- position: absolute;
1043
- display: block;
1044
- width: 26px;
1045
- height: 26px;
1046
- top: 0;
1047
- left: 0;
1048
- cursor: pointer;
1049
- background: $themeColor;
1050
- z-index: 1;
1051
- border-radius: 0 0 6px 0;
1052
- text-align: center;
1053
- line-height: 26px;
1054
- color: #fff;
1055
- font-size: 18px;
1056
- }
1057
- .Fg-field-name {
1058
- // height: 28px;
1059
- // line-height: 28px;
1060
- font-size: 15px;
1061
- margin: 32px -16px;
1062
- margin-bottom: 16px;
1063
- padding: 10px 16px;
1064
- color: $themeColor;
1065
- background: $selectedColor;
1066
- font-weight: bold;
1067
- font-style: italic;
1068
- &:first-child {
1069
- margin-top: -16px;
1070
- }
1071
- }
1072
- .Fg-field {
1073
- .el-select {
1074
- width: 100%;
1075
- }
1076
- .Fg-field--top {
1077
- .el-form-item__label {
1078
- float: none;
1079
- }
1080
- .el-form-item__content {
1081
- margin-left: 0 !important;
1082
- }
1083
- }
1084
- }
1085
- .Fg-reg-item {
1086
- padding: 12px 6px;
1087
- background: #f8f8f8;
1088
- position: relative;
1089
- border-radius: 4px;
1090
- .close-btn {
1091
- position: absolute;
1092
- right: -6px;
1093
- top: -6px;
1094
- display: block;
1095
- width: 16px;
1096
- height: 16px;
1097
- line-height: 16px;
1098
- background: rgba(0, 0, 0, 0.2);
1099
- border-radius: 50%;
1100
- color: #fff;
1101
- text-align: center;
1102
- z-index: 1;
1103
- cursor: pointer;
1104
- font-size: 12px;
1105
- &:hover {
1106
- background: rgba(210, 23, 23, 0.5);
1107
- }
1108
- }
1109
- & + .Fg-reg-item {
1110
- margin-top: 18px;
1111
- }
1112
- }
1113
- </style>