tianheng-ui 0.1.10 → 0.1.11

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 (57) hide show
  1. package/lib/theme-chalk/styles/reset.scss +0 -2
  2. package/lib/tianheng-ui.js +14 -14
  3. package/package.json +1 -1
  4. package/packages/FormMaking/GenerateForm.vue +10 -10
  5. package/packages/FormMaking/GenerateFormItem.vue +66 -578
  6. package/packages/FormMaking/GenerateFormItemH5.vue +5 -5
  7. package/packages/FormMaking/Upload/index.vue +0 -1
  8. package/packages/FormMaking/WidgetConfig.vue +66 -30
  9. package/packages/FormMaking/WidgetForm.vue +7 -48
  10. package/packages/FormMaking/WidgetFormItem.vue +41 -65
  11. package/packages/FormMaking/WidgetSelect.vue +160 -0
  12. package/packages/FormMaking/custom/config.js +98 -63
  13. package/packages/FormMaking/custom/configs/grid.vue +4 -4
  14. package/packages/FormMaking/custom/configs/input.vue +135 -28
  15. package/packages/FormMaking/custom/configs/number.vue +2 -2
  16. package/packages/FormMaking/custom/configs/table.vue +2 -2
  17. package/packages/FormMaking/custom/configs/{table_h5.vue → tableH5.vue} +2 -2
  18. package/packages/FormMaking/custom/configs/tabs.vue +6 -6
  19. package/packages/FormMaking/custom/configs/textarea.vue +121 -19
  20. package/packages/FormMaking/custom/index.js +2 -4
  21. package/packages/FormMaking/custom/items/alliance.vue +30 -29
  22. package/packages/FormMaking/custom/items/blank_pro.vue +14 -0
  23. package/packages/FormMaking/custom/items/button.vue +1 -0
  24. package/packages/FormMaking/custom/items/cascader.vue +6 -2
  25. package/packages/FormMaking/custom/items/cell.vue +0 -2
  26. package/packages/FormMaking/custom/items/checkbox.vue +17 -7
  27. package/packages/FormMaking/custom/items/color.vue +1 -1
  28. package/packages/FormMaking/custom/items/date.vue +1 -1
  29. package/packages/FormMaking/custom/items/editor.vue +1 -1
  30. package/packages/FormMaking/custom/items/{grid.vue → grid_dev.vue} +16 -47
  31. package/packages/FormMaking/custom/items/grid_pro.vue +45 -0
  32. package/packages/FormMaking/custom/items/image.vue +0 -28
  33. package/packages/FormMaking/custom/items/input.vue +15 -9
  34. package/packages/FormMaking/custom/items/number.vue +4 -4
  35. package/packages/FormMaking/custom/items/radio.vue +17 -7
  36. package/packages/FormMaking/custom/items/rate.vue +1 -1
  37. package/packages/FormMaking/custom/items/select.vue +12 -6
  38. package/packages/FormMaking/custom/items/slider.vue +1 -1
  39. package/packages/FormMaking/custom/items/switch.vue +1 -1
  40. package/packages/FormMaking/custom/items/{table_h5.vue → tableH5_dev.vue} +44 -49
  41. package/packages/FormMaking/custom/items/tableH5_pro.vue +113 -0
  42. package/packages/FormMaking/custom/items/{table.vue → table_dev.vue} +21 -41
  43. package/packages/FormMaking/custom/items/table_pro.vue +114 -0
  44. package/packages/FormMaking/custom/items/tabs_dev.vue +101 -0
  45. package/packages/FormMaking/custom/items/tabs_pro.vue +50 -0
  46. package/packages/FormMaking/custom/items/text.vue +1 -1
  47. package/packages/FormMaking/custom/items/textarea.vue +4 -13
  48. package/packages/FormMaking/custom/items/time.vue +3 -3
  49. package/packages/FormMaking/custom/items/upload.vue +15 -14
  50. package/packages/FormMaking/custom/mixins/index.js +23 -1
  51. package/packages/FormMaking/custom/register.js +22 -11
  52. package/packages/FormMaking/index.vue +11 -7
  53. package/packages/FormMaking/styles/index.scss +235 -221
  54. package/packages/FormMaking/util/generateCode.js +3 -3
  55. package/packages/FormMaking/util/index.js +33 -23
  56. package/packages/FormMaking/custom/items/tabs.vue +0 -145
  57. /package/packages/FormMaking/custom/items/{blank.vue → blank_dev.vue} +0 -0
@@ -1,145 +0,0 @@
1
- <template>
2
- <el-tabs
3
- v-model="widget.options.defaultValue"
4
- :type="widget.options.type"
5
- :tab-position="widget.options.tabPosition"
6
- >
7
- <el-tab-pane
8
- v-for="(column, columnIndex) in widget.tabs"
9
- :key="`tabs_${column.value}`"
10
- :label="column.label"
11
- :name="column.value"
12
- >
13
- <draggable
14
- v-model="column.list"
15
- :no-transition-on-drag="true"
16
- v-bind="{
17
- group: 'people',
18
- ghostClass: 'ghost',
19
- animation: 200,
20
- handle: '.drag-widget'
21
- }"
22
- @add="handleWidgetTabAdd($event, widget, columnIndex)"
23
- >
24
- <transition-group name="fade" tag="div" class="widget-col-list">
25
- <widget-form-item
26
- v-for="(element, elementIndex) in column.list.filter(item => {
27
- return item.key;
28
- })"
29
- :key="element.key"
30
- :widget="element"
31
- :widgetIndex="elementIndex"
32
- :widgetArray="column"
33
- :select.sync="selectWidget"
34
- :config="config"
35
- ></widget-form-item>
36
- </transition-group>
37
- </draggable>
38
- </el-tab-pane>
39
- </el-tabs>
40
- </template>
41
-
42
- <script>
43
- import { itemsComponent } from "../mixins/index";
44
- import Draggable from "vuedraggable";
45
- import WidgetFormItem from "../../WidgetFormItem.vue";
46
- export default {
47
- components: { Draggable, WidgetFormItem },
48
- mixins: [itemsComponent],
49
- data() {
50
- return {
51
- selectWidget: {}
52
- };
53
- },
54
- watch: {
55
- select(val) {
56
- this.selectWidget = val;
57
- },
58
- selectWidget: {
59
- handler(val) {
60
- this.$emit("update:select", val);
61
- },
62
- deep: true
63
- }
64
- },
65
- methods: {
66
- handleWidgetTabAdd($event, row, colIndex) {
67
- const newIndex = $event.newIndex;
68
- const oldIndex = $event.oldIndex;
69
- const item = $event.item;
70
-
71
- // 防止布局元素的嵌套拖拽
72
- if (
73
- item.className.indexOf("tabs") !== -1 ||
74
- item.className.indexOf("alliance") !== -1
75
- ) {
76
- // 如果是列表中拖拽的元素需要还原到原来位置
77
- item.tagName === "DIV" &&
78
- this.widgetArray.list.splice(
79
- oldIndex,
80
- 0,
81
- row.tabs[colIndex].list[newIndex]
82
- );
83
-
84
- row.tabs[colIndex].list.splice(newIndex, 1);
85
-
86
- return false;
87
- }
88
-
89
- const key =
90
- Date.parse(new Date()) + "_" + Math.ceil(Math.random() * 99999);
91
-
92
- this.$set(row.tabs[colIndex].list, newIndex, {
93
- ...row.tabs[colIndex].list[newIndex],
94
- options: {
95
- ...row.tabs[colIndex].list[newIndex].options
96
- // remoteFunc: "func_" + key
97
- },
98
- key,
99
- // 绑定键值
100
- model: row.tabs[colIndex].list[newIndex].type + "_" + key,
101
- rules: []
102
- });
103
-
104
- if (
105
- row.tabs[colIndex].list[newIndex].type === "radio" ||
106
- row.tabs[colIndex].list[newIndex].type === "checkbox" ||
107
- row.tabs[colIndex].list[newIndex].type === "select"
108
- ) {
109
- this.$set(row.tabs[colIndex].list, newIndex, {
110
- ...row.tabs[colIndex].list[newIndex],
111
- options: {
112
- ...row.tabs[colIndex].list[newIndex].options,
113
- options: row.tabs[colIndex].list[newIndex].options.options.map(
114
- item => ({
115
- ...item
116
- })
117
- )
118
- }
119
- });
120
- }
121
-
122
- if (row.tabs[colIndex].list[newIndex].type === "grid") {
123
- this.$set(
124
- row.tabs[colIndex].list,
125
- newIndex,
126
- JSON.parse(JSON.stringify(row.tabs[colIndex].list[newIndex]))
127
- );
128
- }
129
-
130
- if (row.tabs[colIndex].list[newIndex].type === "table") {
131
- this.$set(row.tabs[colIndex].list, newIndex, {
132
- ...row.tabs[colIndex].list[newIndex],
133
- list: row.tabs[colIndex].list[newIndex].list.map(item => ({
134
- ...item
135
- }))
136
- });
137
- }
138
-
139
- this.selectWidget = row.tabs[colIndex].list[newIndex];
140
- }
141
- }
142
- };
143
- </script>
144
-
145
- <style></style>