custom-variant-form 2.3.1 → 2.3.2

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 (314) hide show
  1. package/README.md +2 -180
  2. package/dist/VFormDesigner.css +1 -0
  3. package/dist/VFormDesigner.umd.min.js +35 -0
  4. package/dist/VFormRender.css +1 -1
  5. package/dist/VFormRender.umd.min.js +5 -5
  6. package/package.json +7 -32
  7. package/dist/VFormRender.common-report.html +0 -53
  8. package/dist/VFormRender.common.js +0 -47149
  9. package/dist/VFormRender.common.js.map +0 -1
  10. package/dist/VFormRender.umd-report.html +0 -53
  11. package/dist/VFormRender.umd.js +0 -47159
  12. package/dist/VFormRender.umd.js.map +0 -1
  13. package/dist/VFormRender.umd.min-report.html +0 -53
  14. package/dist/demo.html +0 -10
  15. package/install-render.js +0 -29
  16. package/install.js +0 -41
  17. package/src/App.vue +0 -45
  18. package/src/assets/ft-images/t1.png +0 -0
  19. package/src/assets/ft-images/t2.png +0 -0
  20. package/src/assets/ft-images/t3.png +0 -0
  21. package/src/assets/ft-images/t4.png +0 -0
  22. package/src/assets/ft-images/t5.png +0 -0
  23. package/src/assets/ft-images/t6.png +0 -0
  24. package/src/assets/ft-images/t7.png +0 -0
  25. package/src/assets/ft-images/t8.png +0 -0
  26. package/src/assets/vform-logo.png +0 -0
  27. package/src/components/code-editor/index.vue +0 -134
  28. package/src/components/form-designer/designer.js +0 -962
  29. package/src/components/form-designer/form-widget/container-widget/container-wrapper.vue +0 -107
  30. package/src/components/form-designer/form-widget/container-widget/containerMixin.js +0 -93
  31. package/src/components/form-designer/form-widget/container-widget/grid-col-widget.vue +0 -314
  32. package/src/components/form-designer/form-widget/container-widget/grid-widget.vue +0 -93
  33. package/src/components/form-designer/form-widget/container-widget/index.js +0 -24
  34. package/src/components/form-designer/form-widget/container-widget/tab-widget.vue +0 -123
  35. package/src/components/form-designer/form-widget/container-widget/table-cell-widget.vue +0 -347
  36. package/src/components/form-designer/form-widget/container-widget/table-widget.vue +0 -116
  37. package/src/components/form-designer/form-widget/field-widget/button-widget.vue +0 -87
  38. package/src/components/form-designer/form-widget/field-widget/cascader-widget.vue +0 -120
  39. package/src/components/form-designer/form-widget/field-widget/checkbox-widget.vue +0 -105
  40. package/src/components/form-designer/form-widget/field-widget/color-widget.vue +0 -99
  41. package/src/components/form-designer/form-widget/field-widget/date-range-widget.vue +0 -104
  42. package/src/components/form-designer/form-widget/field-widget/date-widget.vue +0 -103
  43. package/src/components/form-designer/form-widget/field-widget/divider-widget.vue +0 -83
  44. package/src/components/form-designer/form-widget/field-widget/fieldMixin.js +0 -613
  45. package/src/components/form-designer/form-widget/field-widget/file-upload-widget.vue +0 -313
  46. package/src/components/form-designer/form-widget/field-widget/form-item-wrapper.vue +0 -331
  47. package/src/components/form-designer/form-widget/field-widget/html-text-widget.vue +0 -82
  48. package/src/components/form-designer/form-widget/field-widget/index.js +0 -10
  49. package/src/components/form-designer/form-widget/field-widget/input-widget.vue +0 -112
  50. package/src/components/form-designer/form-widget/field-widget/number-widget.vue +0 -103
  51. package/src/components/form-designer/form-widget/field-widget/picture-upload-widget.vue +0 -280
  52. package/src/components/form-designer/form-widget/field-widget/radio-widget.vue +0 -105
  53. package/src/components/form-designer/form-widget/field-widget/rate-widget.vue +0 -102
  54. package/src/components/form-designer/form-widget/field-widget/rich-editor-widget.vue +0 -123
  55. package/src/components/form-designer/form-widget/field-widget/select-widget.vue +0 -123
  56. package/src/components/form-designer/form-widget/field-widget/slider-widget.vue +0 -100
  57. package/src/components/form-designer/form-widget/field-widget/slot-widget.vue +0 -102
  58. package/src/components/form-designer/form-widget/field-widget/static-content-wrapper.vue +0 -196
  59. package/src/components/form-designer/form-widget/field-widget/static-text-widget.vue +0 -83
  60. package/src/components/form-designer/form-widget/field-widget/switch-widget.vue +0 -101
  61. package/src/components/form-designer/form-widget/field-widget/textarea-widget.vue +0 -99
  62. package/src/components/form-designer/form-widget/field-widget/time-range-widget.vue +0 -104
  63. package/src/components/form-designer/form-widget/field-widget/time-widget.vue +0 -103
  64. package/src/components/form-designer/form-widget/index.vue +0 -272
  65. package/src/components/form-designer/index.vue +0 -500
  66. package/src/components/form-designer/refMixinDesign.js +0 -28
  67. package/src/components/form-designer/setting-panel/form-setting.vue +0 -354
  68. package/src/components/form-designer/setting-panel/index.vue +0 -367
  69. package/src/components/form-designer/setting-panel/option-items-setting.vue +0 -234
  70. package/src/components/form-designer/setting-panel/property-editor/allowCreate-editor.vue +0 -24
  71. package/src/components/form-designer/setting-panel/property-editor/appendButton-editor.vue +0 -28
  72. package/src/components/form-designer/setting-panel/property-editor/appendButtonDisabled-editor.vue +0 -23
  73. package/src/components/form-designer/setting-panel/property-editor/automaticDropdown-editor.vue +0 -23
  74. package/src/components/form-designer/setting-panel/property-editor/border-editor.vue +0 -23
  75. package/src/components/form-designer/setting-panel/property-editor/buttonIcon-editor.vue +0 -23
  76. package/src/components/form-designer/setting-panel/property-editor/buttonStyle-editor.vue +0 -23
  77. package/src/components/form-designer/setting-panel/property-editor/clearable-editor.vue +0 -23
  78. package/src/components/form-designer/setting-panel/property-editor/columnWidth-editor.vue +0 -26
  79. package/src/components/form-designer/setting-panel/property-editor/container-grid/colHeight-editor.vue +0 -28
  80. package/src/components/form-designer/setting-panel/property-editor/container-grid/gutter-editor.vue +0 -81
  81. package/src/components/form-designer/setting-panel/property-editor/container-grid-col/grid-col-offset-editor.vue +0 -24
  82. package/src/components/form-designer/setting-panel/property-editor/container-grid-col/grid-col-pull-editor.vue +0 -24
  83. package/src/components/form-designer/setting-panel/property-editor/container-grid-col/grid-col-push-editor.vue +0 -24
  84. package/src/components/form-designer/setting-panel/property-editor/container-grid-col/grid-col-responsive-editor.vue +0 -23
  85. package/src/components/form-designer/setting-panel/property-editor/container-grid-col/grid-col-span-editor.vue +0 -48
  86. package/src/components/form-designer/setting-panel/property-editor/container-sub-form/showBlankRow-editor.vue +0 -23
  87. package/src/components/form-designer/setting-panel/property-editor/container-sub-form/showRowNumber-editor.vue +0 -23
  88. package/src/components/form-designer/setting-panel/property-editor/container-sub-form/sub-form-labelAlign-editor.vue +0 -36
  89. package/src/components/form-designer/setting-panel/property-editor/container-tab/tab-customClass-editor.vue +0 -119
  90. package/src/components/form-designer/setting-panel/property-editor/container-table-cell/cellHeight-editor.vue +0 -23
  91. package/src/components/form-designer/setting-panel/property-editor/container-table-cell/cellWidth-editor.vue +0 -23
  92. package/src/components/form-designer/setting-panel/property-editor/container-table-cell/wordBreak-editor.vue +0 -23
  93. package/src/components/form-designer/setting-panel/property-editor/customClass-editor.vue +0 -40
  94. package/src/components/form-designer/setting-panel/property-editor/defaultValue-editor.vue +0 -25
  95. package/src/components/form-designer/setting-panel/property-editor/disabled-editor.vue +0 -23
  96. package/src/components/form-designer/setting-panel/property-editor/displayStyle-editor.vue +0 -26
  97. package/src/components/form-designer/setting-panel/property-editor/editable-editor.vue +0 -24
  98. package/src/components/form-designer/setting-panel/property-editor/endPlaceholder-editor.vue +0 -23
  99. package/src/components/form-designer/setting-panel/property-editor/event-handler/eventMixin.js +0 -12
  100. package/src/components/form-designer/setting-panel/property-editor/event-handler/onAppendButtonClick-editor.vue +0 -30
  101. package/src/components/form-designer/setting-panel/property-editor/event-handler/onBeforeUpload-editor.vue +0 -30
  102. package/src/components/form-designer/setting-panel/property-editor/event-handler/onBlur-editor.vue +0 -30
  103. package/src/components/form-designer/setting-panel/property-editor/event-handler/onChange-editor.vue +0 -30
  104. package/src/components/form-designer/setting-panel/property-editor/event-handler/onClick-editor.vue +0 -30
  105. package/src/components/form-designer/setting-panel/property-editor/event-handler/onCreated-editor.vue +0 -31
  106. package/src/components/form-designer/setting-panel/property-editor/event-handler/onFileRemove.vue +0 -30
  107. package/src/components/form-designer/setting-panel/property-editor/event-handler/onFocus-editor.vue +0 -30
  108. package/src/components/form-designer/setting-panel/property-editor/event-handler/onInput-editor.vue +0 -30
  109. package/src/components/form-designer/setting-panel/property-editor/event-handler/onMounted-editor.vue +0 -30
  110. package/src/components/form-designer/setting-panel/property-editor/event-handler/onRemoteQuery-editor.vue +0 -30
  111. package/src/components/form-designer/setting-panel/property-editor/event-handler/onSubFormRowAdd-editor.vue +0 -30
  112. package/src/components/form-designer/setting-panel/property-editor/event-handler/onSubFormRowChange-editor.vue +0 -30
  113. package/src/components/form-designer/setting-panel/property-editor/event-handler/onSubFormRowDelete-editor.vue +0 -30
  114. package/src/components/form-designer/setting-panel/property-editor/event-handler/onSubFormRowInsert-editor.vue +0 -30
  115. package/src/components/form-designer/setting-panel/property-editor/event-handler/onUploadError-editor.vue +0 -30
  116. package/src/components/form-designer/setting-panel/property-editor/event-handler/onUploadSuccess-editor.vue +0 -30
  117. package/src/components/form-designer/setting-panel/property-editor/event-handler/onValidate-editor.vue +0 -30
  118. package/src/components/form-designer/setting-panel/property-editor/field-button/button-type-editor.vue +0 -32
  119. package/src/components/form-designer/setting-panel/property-editor/field-button/circle-editor.vue +0 -23
  120. package/src/components/form-designer/setting-panel/property-editor/field-button/icon-editor.vue +0 -23
  121. package/src/components/form-designer/setting-panel/property-editor/field-button/plain-editor.vue +0 -24
  122. package/src/components/form-designer/setting-panel/property-editor/field-button/round-editor.vue +0 -23
  123. package/src/components/form-designer/setting-panel/property-editor/field-cascader/cascader-defaultValue-editor.vue +0 -18
  124. package/src/components/form-designer/setting-panel/property-editor/field-cascader/cascader-multiple-editor.vue +0 -24
  125. package/src/components/form-designer/setting-panel/property-editor/field-cascader/checkStrictly-editor.vue +0 -23
  126. package/src/components/form-designer/setting-panel/property-editor/field-cascader/showAllLevels-editor.vue +0 -23
  127. package/src/components/form-designer/setting-panel/property-editor/field-checkbox/checkbox-defaultValue-editor.vue +0 -18
  128. package/src/components/form-designer/setting-panel/property-editor/field-color/color-defaultValue-editor.vue +0 -25
  129. package/src/components/form-designer/setting-panel/property-editor/field-date/date-defaultValue-editor.vue +0 -26
  130. package/src/components/form-designer/setting-panel/property-editor/field-date/date-format-editor.vue +0 -30
  131. package/src/components/form-designer/setting-panel/property-editor/field-date/date-type-editor.vue +0 -30
  132. package/src/components/form-designer/setting-panel/property-editor/field-date/date-valueFormat-editor.vue +0 -26
  133. package/src/components/form-designer/setting-panel/property-editor/field-date-range/date-range-defaultValue-editor.vue +0 -26
  134. package/src/components/form-designer/setting-panel/property-editor/field-date-range/date-range-format-editor.vue +0 -30
  135. package/src/components/form-designer/setting-panel/property-editor/field-date-range/date-range-type-editor.vue +0 -27
  136. package/src/components/form-designer/setting-panel/property-editor/field-date-range/date-range-valueFormat-editor.vue +0 -26
  137. package/src/components/form-designer/setting-panel/property-editor/field-divider/contentPosition-editor.vue +0 -27
  138. package/src/components/form-designer/setting-panel/property-editor/field-file-upload/file-upload-fileTypes-editor.vue +0 -44
  139. package/src/components/form-designer/setting-panel/property-editor/field-html-text/htmlContent-editor.vue +0 -29
  140. package/src/components/form-designer/setting-panel/property-editor/field-number/controlsPosition-editor.vue +0 -27
  141. package/src/components/form-designer/setting-panel/property-editor/field-picture-upload/picture-upload-fileTypes-editor.vue +0 -44
  142. package/src/components/form-designer/setting-panel/property-editor/field-radio/radio-defaultValue-editor.vue +0 -18
  143. package/src/components/form-designer/setting-panel/property-editor/field-rate/allowHalf-editor.vue +0 -23
  144. package/src/components/form-designer/setting-panel/property-editor/field-rate/highThreshold-editor.vue +0 -24
  145. package/src/components/form-designer/setting-panel/property-editor/field-rate/lowThreshold-editor.vue +0 -24
  146. package/src/components/form-designer/setting-panel/property-editor/field-rate/rate-defaultValue-editor.vue +0 -26
  147. package/src/components/form-designer/setting-panel/property-editor/field-rate/rate-max-editor.vue +0 -25
  148. package/src/components/form-designer/setting-panel/property-editor/field-rate/showScore-editor.vue +0 -23
  149. package/src/components/form-designer/setting-panel/property-editor/field-rate/showText-editor.vue +0 -23
  150. package/src/components/form-designer/setting-panel/property-editor/field-select/select-defaultValue-editor.vue +0 -18
  151. package/src/components/form-designer/setting-panel/property-editor/field-slider/range-editor.vue +0 -23
  152. package/src/components/form-designer/setting-panel/property-editor/field-slider/showStops-editor.vue +0 -23
  153. package/src/components/form-designer/setting-panel/property-editor/field-slider/vertical-editor.vue +0 -23
  154. package/src/components/form-designer/setting-panel/property-editor/field-static-text/fontSize-editor.vue +0 -23
  155. package/src/components/form-designer/setting-panel/property-editor/field-static-text/preWrap-editor.vue +0 -23
  156. package/src/components/form-designer/setting-panel/property-editor/field-static-text/textContent-editor.vue +0 -23
  157. package/src/components/form-designer/setting-panel/property-editor/field-switch/activeColor-editor.vue +0 -23
  158. package/src/components/form-designer/setting-panel/property-editor/field-switch/activeText-editor.vue +0 -23
  159. package/src/components/form-designer/setting-panel/property-editor/field-switch/inactiveColor-editor.vue +0 -23
  160. package/src/components/form-designer/setting-panel/property-editor/field-switch/inactiveText-editor.vue +0 -23
  161. package/src/components/form-designer/setting-panel/property-editor/field-switch/switch-defaultValue-editor.vue +0 -25
  162. package/src/components/form-designer/setting-panel/property-editor/field-switch/switchWidth-editor.vue +0 -23
  163. package/src/components/form-designer/setting-panel/property-editor/field-time/time-defaultValue-editor.vue +0 -26
  164. package/src/components/form-designer/setting-panel/property-editor/field-time/time-format-editor.vue +0 -27
  165. package/src/components/form-designer/setting-panel/property-editor/field-time-range/time-range-defaultValue-editor.vue +0 -26
  166. package/src/components/form-designer/setting-panel/property-editor/field-time-range/time-range-format-editor.vue +0 -27
  167. package/src/components/form-designer/setting-panel/property-editor/fileMaxSize-editor.vue +0 -23
  168. package/src/components/form-designer/setting-panel/property-editor/filterable-editor.vue +0 -23
  169. package/src/components/form-designer/setting-panel/property-editor/hidden-editor.vue +0 -23
  170. package/src/components/form-designer/setting-panel/property-editor/index.js +0 -10
  171. package/src/components/form-designer/setting-panel/property-editor/label-editor.vue +0 -30
  172. package/src/components/form-designer/setting-panel/property-editor/labelAlign-editor.vue +0 -42
  173. package/src/components/form-designer/setting-panel/property-editor/labelHidden-editor.vue +0 -23
  174. package/src/components/form-designer/setting-panel/property-editor/labelIconClass-editor.vue +0 -28
  175. package/src/components/form-designer/setting-panel/property-editor/labelIconPosition-editor.vue +0 -37
  176. package/src/components/form-designer/setting-panel/property-editor/labelTooltip-editor.vue +0 -23
  177. package/src/components/form-designer/setting-panel/property-editor/labelWidth-editor.vue +0 -25
  178. package/src/components/form-designer/setting-panel/property-editor/limit-editor.vue +0 -24
  179. package/src/components/form-designer/setting-panel/property-editor/max-editor.vue +0 -39
  180. package/src/components/form-designer/setting-panel/property-editor/maxLength-editor.vue +0 -40
  181. package/src/components/form-designer/setting-panel/property-editor/min-editor.vue +0 -40
  182. package/src/components/form-designer/setting-panel/property-editor/minLength-editor.vue +0 -41
  183. package/src/components/form-designer/setting-panel/property-editor/multiple-editor.vue +0 -24
  184. package/src/components/form-designer/setting-panel/property-editor/multipleLimit-editor.vue +0 -24
  185. package/src/components/form-designer/setting-panel/property-editor/multipleSelect-editor.vue +0 -24
  186. package/src/components/form-designer/setting-panel/property-editor/name-editor.vue +0 -89
  187. package/src/components/form-designer/setting-panel/property-editor/optionItems-editor.vue +0 -28
  188. package/src/components/form-designer/setting-panel/property-editor/placeholder-editor.vue +0 -24
  189. package/src/components/form-designer/setting-panel/property-editor/precision-editor.vue +0 -23
  190. package/src/components/form-designer/setting-panel/property-editor/prefixIcon-editor.vue +0 -23
  191. package/src/components/form-designer/setting-panel/property-editor/propertyMixin.js +0 -55
  192. package/src/components/form-designer/setting-panel/property-editor/readonly-editor.vue +0 -23
  193. package/src/components/form-designer/setting-panel/property-editor/remote-editor.vue +0 -25
  194. package/src/components/form-designer/setting-panel/property-editor/required-editor.vue +0 -23
  195. package/src/components/form-designer/setting-panel/property-editor/requiredHint-editor.vue +0 -24
  196. package/src/components/form-designer/setting-panel/property-editor/rows-editor.vue +0 -24
  197. package/src/components/form-designer/setting-panel/property-editor/showFileList-editor.vue +0 -23
  198. package/src/components/form-designer/setting-panel/property-editor/showPassword-editor.vue +0 -24
  199. package/src/components/form-designer/setting-panel/property-editor/showWordLimit-editor.vue +0 -23
  200. package/src/components/form-designer/setting-panel/property-editor/size-editor.vue +0 -38
  201. package/src/components/form-designer/setting-panel/property-editor/startPlaceholder-editor.vue +0 -23
  202. package/src/components/form-designer/setting-panel/property-editor/step-editor.vue +0 -23
  203. package/src/components/form-designer/setting-panel/property-editor/suffixIcon-editor.vue +0 -23
  204. package/src/components/form-designer/setting-panel/property-editor/textAlign-editor.vue +0 -35
  205. package/src/components/form-designer/setting-panel/property-editor/type-editor.vue +0 -33
  206. package/src/components/form-designer/setting-panel/property-editor/uploadTip-editor.vue +0 -24
  207. package/src/components/form-designer/setting-panel/property-editor/uploadURL-editor.vue +0 -28
  208. package/src/components/form-designer/setting-panel/property-editor/validation-editor.vue +0 -48
  209. package/src/components/form-designer/setting-panel/property-editor/validationHint-editor.vue +0 -23
  210. package/src/components/form-designer/setting-panel/property-editor/withCredentials-editor.vue +0 -23
  211. package/src/components/form-designer/setting-panel/property-editor-factory.js +0 -173
  212. package/src/components/form-designer/setting-panel/propertyRegister.js +0 -215
  213. package/src/components/form-designer/toolbar-panel/index.vue +0 -886
  214. package/src/components/form-designer/widget-panel/index.vue +0 -394
  215. package/src/components/form-designer/widget-panel/templatesConfig.js +0 -58
  216. package/src/components/form-designer/widget-panel/widgetsConfig.js +0 -934
  217. package/src/components/form-render/container-item/container-item-wrapper.vue +0 -37
  218. package/src/components/form-render/container-item/containerItemMixin.js +0 -221
  219. package/src/components/form-render/container-item/grid-col-item.vue +0 -126
  220. package/src/components/form-render/container-item/grid-item.vue +0 -59
  221. package/src/components/form-render/container-item/index.js +0 -24
  222. package/src/components/form-render/container-item/sub-form-item.vue +0 -417
  223. package/src/components/form-render/container-item/tab-item.vue +0 -99
  224. package/src/components/form-render/container-item/table-cell-item.vue +0 -72
  225. package/src/components/form-render/container-item/table-item.vue +0 -70
  226. package/src/components/form-render/index.vue +0 -721
  227. package/src/components/form-render/refMixin.js +0 -30
  228. package/src/components/svg-icon/index.vue +0 -49
  229. package/src/components/v-table/index.vue +0 -106
  230. package/src/extension/components/tag/index.js +0 -9
  231. package/src/extension/components/tag/tag-item.vue +0 -49
  232. package/src/extension/components/tag/tag-schema.js +0 -33
  233. package/src/extension/components/tag/tag-widget.vue +0 -53
  234. package/src/extension/extension-helper.js +0 -23
  235. package/src/extension/extension-loader.js +0 -174
  236. package/src/extension/samples/alert/alert-widget.vue +0 -72
  237. package/src/extension/samples/card/card-item.vue +0 -100
  238. package/src/extension/samples/card/card-widget.vue +0 -132
  239. package/src/extension/samples/extension-schema.js +0 -36
  240. package/src/extension/samples/extension-sfc-generator.js +0 -50
  241. package/src/iconfont/iconfont.css +0 -29
  242. package/src/iconfont/iconfont.eot +0 -0
  243. package/src/iconfont/iconfont.js +0 -1
  244. package/src/iconfont/iconfont.json +0 -37
  245. package/src/iconfont/iconfont.svg +0 -35
  246. package/src/iconfont/iconfont.ttf +0 -0
  247. package/src/iconfont/iconfont.woff +0 -0
  248. package/src/iconfont/iconfont.woff2 +0 -0
  249. package/src/icons/index.js +0 -3
  250. package/src/icons/svg/alert.svg +0 -1
  251. package/src/icons/svg/button.svg +0 -1
  252. package/src/icons/svg/card.svg +0 -1
  253. package/src/icons/svg/cascader-field.svg +0 -1
  254. package/src/icons/svg/checkbox-field.svg +0 -1
  255. package/src/icons/svg/color-field.svg +0 -1
  256. package/src/icons/svg/custom-component.svg +0 -1
  257. package/src/icons/svg/data-table.svg +0 -1
  258. package/src/icons/svg/date-field.svg +0 -1
  259. package/src/icons/svg/date-range-field.svg +0 -1
  260. package/src/icons/svg/divider.svg +0 -1
  261. package/src/icons/svg/document.svg +0 -1
  262. package/src/icons/svg/drag.svg +0 -1
  263. package/src/icons/svg/file-upload-field.svg +0 -1
  264. package/src/icons/svg/github.svg +0 -1
  265. package/src/icons/svg/grid.svg +0 -1
  266. package/src/icons/svg/html-text.svg +0 -1
  267. package/src/icons/svg/node-tree.svg +0 -1
  268. package/src/icons/svg/number-field.svg +0 -1
  269. package/src/icons/svg/picture-upload-field.svg +0 -1
  270. package/src/icons/svg/radio-field.svg +0 -1
  271. package/src/icons/svg/rate-field.svg +0 -1
  272. package/src/icons/svg/redo.svg +0 -1
  273. package/src/icons/svg/rich-editor-field.svg +0 -1
  274. package/src/icons/svg/section.svg +0 -1
  275. package/src/icons/svg/select-field.svg +0 -1
  276. package/src/icons/svg/slider-field.svg +0 -1
  277. package/src/icons/svg/slot-component.svg +0 -1
  278. package/src/icons/svg/slot-field.svg +0 -1
  279. package/src/icons/svg/static-text.svg +0 -1
  280. package/src/icons/svg/sub-form.svg +0 -1
  281. package/src/icons/svg/switch-field.svg +0 -1
  282. package/src/icons/svg/tab.svg +0 -1
  283. package/src/icons/svg/table.svg +0 -1
  284. package/src/icons/svg/tag-field.svg +0 -4
  285. package/src/icons/svg/text-field.svg +0 -1
  286. package/src/icons/svg/textarea-field.svg +0 -1
  287. package/src/icons/svg/time-field.svg +0 -1
  288. package/src/icons/svg/time-range-field.svg +0 -1
  289. package/src/icons/svg/undo.svg +0 -1
  290. package/src/icons/svg/vue-sfc.svg +0 -1
  291. package/src/lang/en-US.js +0 -354
  292. package/src/lang/en-US_extension.js +0 -35
  293. package/src/lang/en-US_render.js +0 -38
  294. package/src/lang/zh-CN.js +0 -354
  295. package/src/lang/zh-CN_extension.js +0 -35
  296. package/src/lang/zh-CN_render.js +0 -38
  297. package/src/main.js +0 -29
  298. package/src/styles/global.scss +0 -108
  299. package/src/styles/index.scss +0 -15
  300. package/src/utils/beautifierLoader.js +0 -77
  301. package/src/utils/code-generator.js +0 -91
  302. package/src/utils/config.js +0 -9
  303. package/src/utils/debug-console.js +0 -7
  304. package/src/utils/directive.js +0 -74
  305. package/src/utils/emitter.js +0 -34
  306. package/src/utils/format.js +0 -214
  307. package/src/utils/i18n.js +0 -95
  308. package/src/utils/sfc-generator.js +0 -583
  309. package/src/utils/smart-vue-i18n/index.js +0 -56
  310. package/src/utils/smart-vue-i18n/utils.js +0 -47
  311. package/src/utils/util.js +0 -376
  312. package/src/utils/validators.js +0 -127
  313. package/src/utils/vue2js-generator.js +0 -144
  314. package/src/utils/vue3js-generator.js +0 -70
@@ -1,500 +0,0 @@
1
- <!--
2
- /**
3
- * author: vformAdmin
4
- * email: vdpadmin@163.com
5
- * website: https://www.vform666.com
6
- * date: 2021.08.18
7
- * remark: 如果要分发VForm源码,需在本文件顶部保留此文件头信息!!
8
- */
9
- -->
10
-
11
- <template>
12
- <el-container class="main-container full-height">
13
- <el-header class="main-header">
14
- <div class="float-left main-title">
15
- <img src="../../assets/vform-logo.png" @click="openHome">
16
- <span class="bold">VForm</span> {{i18nt('application.productTitle')}} <span class="version-span">Ver {{vFormVersion}}</span></div>
17
- <div class="float-right external-link">
18
- <el-dropdown v-if="showLink('languageMenu')" :hide-timeout="2000" @command="handleLanguageChanged">
19
- <span class="el-dropdown-link">{{curLangName}}<i class="el-icon-arrow-down el-icon--right"></i></span>
20
- <el-dropdown-menu slot="dropdown">
21
- <el-dropdown-item command="zh-CN">{{i18nt('application.zh-CN')}}</el-dropdown-item>
22
- <el-dropdown-item command="en-US">{{i18nt('application.en-US')}}</el-dropdown-item>
23
- </el-dropdown-menu>
24
- </el-dropdown>
25
- <a v-if="showLink('externalLink')" href="javascript:void(0)" @click="(ev) => openUrl(ev, gitUrl)" target="_blank"><svg-icon icon-class="github" />{{i18nt('application.github')}}</a>
26
- <a v-if="showLink('externalLink')" href="javascript:void(0)" @click="(ev) => openUrl(ev, docUrl)" target="_blank"><svg-icon icon-class="document" />{{i18nt('application.document')}}</a>
27
- <a v-if="showLink('externalLink')" href="javascript:void(0)" @click="(ev) => openUrl(ev, chatUrl)" target="_blank">{{i18nt('application.qqGroup')}}</a>
28
- <a v-if="showLink('externalLink')" href="javascript:void(0)" @click="(ev) => openUrl(ev, subScribeUrl)" target="_blank">
29
- {{i18nt('application.subscription')}}<i class="el-icon-top-right"></i></a>
30
- </div>
31
- </el-header>
32
-
33
- <el-container>
34
- <el-aside class="side-panel">
35
- <widget-panel :designer="designer" />
36
- </el-aside>
37
-
38
- <el-container class="center-layout-container">
39
- <el-header class="toolbar-header">
40
- <toolbar-panel :designer="designer" :global-dsv="globalDsv" ref="toolbarRef">
41
- <template v-for="(idx, slotName) in $slots" #[slotName]>
42
- <slot :name="slotName"></slot>
43
- </template>
44
- </toolbar-panel>
45
- </el-header>
46
- <el-main class="form-widget-main">
47
- <el-scrollbar class="container-scroll-bar" :style="{height: scrollerHeight}">
48
- <v-form-widget :designer="designer" :form-config="designer.formConfig" :global-dsv="globalDsv" ref="formRef">
49
- </v-form-widget>
50
- </el-scrollbar>
51
- </el-main>
52
- </el-container>
53
-
54
- <el-aside>
55
- <setting-panel :designer="designer" :selected-widget="designer.selectedWidget"
56
- :form-config="designer.formConfig" :global-dsv="globalDsv" />
57
- </el-aside>
58
- </el-container>
59
-
60
- </el-container>
61
- </template>
62
-
63
- <script>
64
- import WidgetPanel from './widget-panel/index'
65
- import ToolbarPanel from './toolbar-panel/index'
66
- import SettingPanel from './setting-panel/index'
67
- import VFormWidget from './form-widget/index'
68
- import {createDesigner} from "@/components/form-designer/designer"
69
- import {
70
- addWindowResizeHandler,
71
- deepClone,
72
- getAllContainerWidgets,
73
- getAllFieldWidgets,
74
- getQueryParam, traverseAllWidgets
75
- } from "@/utils/util"
76
- import {MOCK_CASE_URL, VARIANT_FORM_VERSION} from "@/utils/config"
77
- import i18n, { changeLocale } from "@/utils/i18n"
78
- import axios from "axios"
79
- import SvgIcon from '@/components/svg-icon'
80
-
81
- export default {
82
- name: "VFormDesigner",
83
- componentName: "VFormDesigner",
84
- mixins: [i18n],
85
- components: {
86
- WidgetPanel,
87
- ToolbarPanel,
88
- SettingPanel,
89
- VFormWidget,
90
- SvgIcon,
91
- },
92
- props: {
93
- /* 后端字段列表API */
94
- fieldListApi: {
95
- type: Object,
96
- default: null,
97
- },
98
-
99
- /* 禁止显示的组件名称数组 */
100
- bannedWidgets: {
101
- type: Array,
102
- default: () => []
103
- },
104
-
105
- designerConfig: {
106
- type: Object,
107
- default: () => {
108
- return {
109
- languageMenu: true, //是否显示语言切换菜单
110
- externalLink: true, //是否显示GitHub、文档等外部链接
111
- formTemplates: true, //是否显示表单模板
112
- eventCollapse: true, //是否显示组件事件属性折叠面板
113
- widgetNameReadonly: false, //禁止修改组件名称
114
-
115
- clearDesignerButton: true, //是否显示清空设计器按钮
116
- previewFormButton: true, //是否显示预览表单按钮
117
- importJsonButton: true, //是否显示导入JSON按钮
118
- exportJsonButton: true, //是否显示导出JSON器按钮
119
- exportCodeButton: true, //是否显示导出代码按钮
120
- generateSFCButton: true, //是否显示生成SFC按钮
121
- toolbarMaxWidth: 420, //设计器工具按钮栏最大宽度(单位像素)
122
- toolbarMinWidth: 300, //设计器工具按钮栏最小宽度(单位像素)
123
-
124
- presetCssCode: '', //设计器预设CSS样式代码
125
-
126
- resetFormJson: false, //是否在设计器初始化时将表单内容重置为空
127
- }
128
- }
129
- },
130
-
131
- /* 全局数据源变量 */
132
- globalDsv: {
133
- type: Object,
134
- default: () => ({})
135
- },
136
-
137
- },
138
- data() {
139
- return {
140
- vFormVersion: VARIANT_FORM_VERSION,
141
- curLangName: '',
142
-
143
- vsCodeFlag: false,
144
- caseName: '',
145
-
146
- docUrl: 'https://www.vform666.com/document.html',
147
- gitUrl: 'https://github.com/vform666/variant-form',
148
- chatUrl: 'https://www.vform666.com/pages/chat-group/',
149
- subScribeUrl: 'https://www.vform666.com/pages/pro/',
150
-
151
- scrollerHeight: 0,
152
-
153
- designer: createDesigner(this),
154
-
155
- fieldList: []
156
- }
157
- },
158
- provide() {
159
- return {
160
- serverFieldList: this.fieldList,
161
- getDesignerConfig: () => this.designerConfig,
162
- getBannedWidgets: () => this.bannedWidgets,
163
- }
164
- },
165
- created() {
166
- this.vsCodeFlag = getQueryParam('vscode') == 1
167
- this.caseName = getQueryParam('case')
168
- },
169
- mounted() {
170
- this.initLocale()
171
-
172
- this.scrollerHeight = window.innerHeight - 56 - 36 + 'px'
173
- addWindowResizeHandler(() => {
174
- this.$nextTick(() => {
175
- this.scrollerHeight = window.innerHeight - 56 - 36 + 'px'
176
- })
177
- })
178
-
179
- this.loadCase()
180
-
181
- this.loadFieldListFromServer()
182
- },
183
- methods: {
184
- showLink(configName) {
185
- if (this.designerConfig[configName] === undefined) {
186
- return true
187
- }
188
-
189
- return !!this.designerConfig[configName]
190
- },
191
-
192
- openHome() {
193
- if (!!this.vsCodeFlag) {
194
- const msgObj = {
195
- cmd: 'openUrl',
196
- data: {
197
- url: 'https://www.vform666.com/'
198
- }
199
- }
200
- window.parent.postMessage(msgObj, '*')
201
- }
202
- },
203
-
204
- openUrl(event, url) {
205
- if (!!this.vsCodeFlag) {
206
- const msgObj = {
207
- cmd: 'openUrl',
208
- data: {
209
- url
210
- }
211
- }
212
- window.parent.postMessage(msgObj, '*')
213
- } else {
214
- let aDom = event.currentTarget
215
- aDom.href = url
216
- //window.open(url, '_blank') //直接打开新窗口,会被浏览器拦截
217
- }
218
- },
219
-
220
- loadCase() {
221
- if (!this.caseName) {
222
- return
223
- }
224
-
225
- axios.get(MOCK_CASE_URL + this.caseName + '.txt').then(res => {
226
- if (!!res.data.code) {
227
- this.$message.error(this.i18nt('designer.hint.sampleLoadedFail'))
228
- return
229
- }
230
-
231
- this.setFormJson(res.data)
232
- this.$message.success(this.i18nt('designer.hint.sampleLoadedSuccess'))
233
- }).catch(error => {
234
- this.$message.error(this.i18nt('designer.hint.sampleLoadedFail') + ':' + error)
235
- })
236
- },
237
-
238
- initLocale() {
239
- let curLocale = localStorage.getItem('v_form_locale')
240
- if (!!this.vsCodeFlag) {
241
- curLocale = curLocale || 'en-US'
242
- } else {
243
- curLocale = curLocale || 'zh-CN'
244
- }
245
- this.curLangName = this.i18nt('application.' + curLocale)
246
- this.changeLanguage(curLocale)
247
- },
248
-
249
- loadFieldListFromServer() {
250
- if (!this.fieldListApi) {
251
- return
252
- }
253
-
254
- let headers = this.fieldListApi.headers || {}
255
- axios.get(this.fieldListApi.URL, {'headers': headers}).then(res => {
256
- let labelKey = this.fieldListApi.labelKey || 'label'
257
- let nameKey = this.fieldListApi.nameKey || 'name'
258
-
259
- this.fieldList.splice(0, this.fieldList.length) //清空已有
260
- res.data.forEach(fieldItem => {
261
- this.fieldList.push({
262
- label: fieldItem[labelKey],
263
- name: fieldItem[nameKey]
264
- })
265
- })
266
- }).catch(error => {
267
- this.$message.error(error)
268
- })
269
- },
270
-
271
- handleLanguageChanged(command) {
272
- this.changeLanguage(command)
273
- this.curLangName = this.i18nt('application.' + command)
274
- },
275
-
276
- changeLanguage(langName) {
277
- changeLocale(langName)
278
- },
279
-
280
- setFormJson(formJson) {
281
- let modifiedFlag = false
282
- if (!!formJson) {
283
- if (typeof formJson === 'string') {
284
- modifiedFlag = this.designer.loadFormJson( JSON.parse(formJson) )
285
- } else if (formJson.constructor === Object) {
286
- modifiedFlag = this.designer.loadFormJson(formJson)
287
- }
288
-
289
- if (modifiedFlag) {
290
- this.designer.emitHistoryChange()
291
- }
292
- }
293
- },
294
-
295
- getFormJson() {
296
- return {
297
- widgetList: deepClone(this.designer.widgetList),
298
- formConfig: deepClone(this.designer.formConfig)
299
- }
300
- },
301
-
302
- clearDesigner() {
303
- this.$refs.toolbarRef.clearFormWidget()
304
- },
305
-
306
-
307
- /**
308
- * 刷新表单设计器
309
- */
310
- refreshDesigner() {
311
- //this.designer.loadFormJson( this.getFormJson() ) //只有第一次调用生效??
312
-
313
- let fJson = this.getFormJson()
314
- this.designer.clearDesigner(true) //不触发历史记录变更
315
- this.designer.loadFormJson(fJson)
316
- },
317
-
318
- /**
319
- * 预览表单
320
- */
321
- previewForm() {
322
- this.$refs.toolbarRef.previewForm()
323
- },
324
-
325
- /**
326
- * 导入表单JSON
327
- */
328
- importJson() {
329
- this.$refs.toolbarRef.importJson()
330
- },
331
-
332
- /**
333
- * 导出表单JSON
334
- */
335
- exportJson() {
336
- this.$refs.toolbarRef.exportJson()
337
- },
338
-
339
- /**
340
- * 导出Vue/HTML代码
341
- */
342
- exportCode() {
343
- this.$refs.toolbarRef.exportCode()
344
- },
345
-
346
- /**
347
- * 生成SFC代码
348
- */
349
- generateSFC() {
350
- this.$refs.toolbarRef.generateSFC()
351
- },
352
-
353
- /**
354
- * 获取所有字段组件
355
- * @returns {*[]}
356
- */
357
- getFieldWidgets(widgetList = null) {
358
- return !!widgetList ? getAllFieldWidgets(widgetList) : getAllFieldWidgets(this.designer.widgetList)
359
- },
360
-
361
- /**
362
- * 获取所有容器组件
363
- * @returns {*[]}
364
- */
365
- getContainerWidgets(widgetList = null) {
366
- return !!widgetList ? getAllContainerWidgets(widgetList) : getAllContainerWidgets(this.designer.widgetList)
367
- },
368
-
369
- /**
370
- * 升级表单json,以补充最新的组件属性
371
- * @param formJson
372
- */
373
- upgradeFormJson(formJson) {
374
- if (!formJson.widgetList || !formJson.formConfig) {
375
- this.$message.error('Invalid form json!')
376
- return
377
- }
378
-
379
- traverseAllWidgets(formJson.widgetList, (w) => {
380
- this.designer.upgradeWidgetConfig(w)
381
- })
382
- this.designer.upgradeFormConfig(formJson.formConfig)
383
-
384
- return formJson
385
- },
386
-
387
- getWidgetRef(widgetName, showError = false) {
388
- return this.$refs['formRef'].getWidgetRef(widgetName, showError)
389
- },
390
-
391
- getSelectedWidgetRef() {
392
- return this.$refs['formRef'].getSelectedWidgetRef()
393
- },
394
-
395
- //TODO: 增加更多方法!!
396
-
397
- }
398
- }
399
- </script>
400
-
401
- <style lang="scss" scoped>
402
- .el-container.main-container {
403
- background: #fff;
404
-
405
- ::v-deep aside { /* 防止aside样式被外部样式覆盖!! */
406
- margin: 0;
407
- padding: 0;
408
- background: inherit;
409
- }
410
- }
411
-
412
- .el-container.full-height {
413
- height: 100%;
414
- overflow-y: hidden;
415
- }
416
-
417
- .el-container.center-layout-container {
418
- min-width: 680px;
419
- border-left: 2px dotted #EBEEF5;
420
- border-right: 2px dotted #EBEEF5;
421
- }
422
-
423
- .el-header.main-header {
424
- border-bottom: 2px dotted #EBEEF5;
425
- height: 48px !important;
426
- line-height: 48px !important;
427
- min-width: 800px;
428
- }
429
-
430
- div.main-title {
431
- font-size: 18px;
432
- color: #242424;
433
- display: flex;
434
- align-items: center;
435
- justify-items: center;
436
-
437
- img {
438
- cursor: pointer;
439
- width: 36px;
440
- height: 36px;
441
- }
442
-
443
- span.bold {
444
- font-size: 20px;
445
- font-weight: bold;
446
- margin: 0 6px 0 6px;
447
- }
448
-
449
- span.version-span {
450
- font-size: 14px;
451
- color: #101F1C;
452
- margin-left: 6px;
453
- }
454
- }
455
-
456
- .float-left {
457
- float: left;
458
- }
459
-
460
- .float-right {
461
- float: right;
462
- }
463
-
464
- .el-dropdown-link {
465
- margin-right: 12px;
466
- cursor: pointer;
467
- }
468
-
469
- div.external-link a {
470
- font-size: 13px;
471
- text-decoration: none;
472
- margin-right: 10px;
473
- color: #606266;
474
- }
475
-
476
- .el-header.toolbar-header {
477
- font-size: 14px;
478
- border-bottom: 1px dotted #CCCCCC;
479
- height: 42px !important;
480
- //line-height: 42px !important;
481
- }
482
-
483
- .el-aside.side-panel {
484
- width: 260px !important;
485
- overflow-y: hidden;
486
- }
487
-
488
- .el-main.form-widget-main {
489
- padding: 0;
490
-
491
- position: relative;
492
- overflow-x: hidden;
493
- }
494
-
495
- .container-scroll-bar {
496
- ::v-deep .el-scrollbar__wrap, ::v-deep .el-scrollbar__view {
497
- overflow-x: hidden;
498
- }
499
- }
500
- </style>
@@ -1,28 +0,0 @@
1
- export default {
2
- methods: {
3
- initRefList() {
4
- if ((this.refList !== null) && !!this.widget.options.name) {
5
- this.refList[this.widget.options.name] = this
6
- }
7
- },
8
-
9
- getWidgetRef(widgetName, showError = false) {
10
- let foundRef = this.refList[widgetName]
11
- if (!foundRef && !!showError) {
12
- this.$message.error(this.i18nt('render.hint.refNotFound') + widgetName)
13
- }
14
- return foundRef
15
- },
16
-
17
- /* 该方法用于组件重名检查!! */
18
- registerToRefList(oldRefName) {
19
- if ((this.refList !== null) && !!this.widget.options.name) {
20
- if (!!oldRefName) {
21
- delete this.refList[oldRefName]
22
- }
23
- this.refList[this.widget.options.name] = this
24
- }
25
- },
26
-
27
- }
28
- }