centaline-data-driven 1.1.54 → 1.1.55

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 (193) hide show
  1. package/.babelrc +12 -12
  2. package/.editorconfig +9 -9
  3. package/.gitattributes +63 -63
  4. package/.postcssrc.js +10 -10
  5. package/Centaline.Front_End.DataDriven.csproj +37 -37
  6. package/Centaline.Front_End.DataDriven.sln +25 -25
  7. package/Properties/launchSettings.json +26 -26
  8. package/README.md +140 -140
  9. package/build/build.js +41 -41
  10. package/build/centaline/centaline.path.js +59 -59
  11. package/build/centaline/webpack.centaline.conf.js +106 -106
  12. package/build/check-versions.js +54 -54
  13. package/build/utils.js +102 -102
  14. package/build/vue-loader.conf.js +22 -22
  15. package/build/webpack.base.conf.js +82 -82
  16. package/build/webpack.dev.conf.js +111 -111
  17. package/build/webpack.prod.conf.js +145 -145
  18. package/config/dev.env.js +12 -12
  19. package/config/index.js +73 -73
  20. package/config/prod.env.js +4 -4
  21. package/index.html +14 -14
  22. package/package.json +75 -75
  23. package/src/App.vue +10 -10
  24. package/src/Detail.vue +26 -26
  25. package/src/Edit.vue +32 -32
  26. package/src/Form.vue +29 -29
  27. package/src/SearchList.vue +40 -40
  28. package/src/SearchTree.vue +51 -51
  29. package/src/Tabs.vue +19 -19
  30. package/src/centaline/api/index.js +249 -249
  31. package/src/centaline/comfirm/index.js +11 -11
  32. package/src/centaline/comfirm/src/comfirm.vue +44 -44
  33. package/src/centaline/common/index.js +738 -738
  34. package/src/centaline/css/common.css +748 -748
  35. package/src/centaline/css/max.css +207 -207
  36. package/src/centaline/dialogList/index.js +11 -11
  37. package/src/centaline/dialogList/src/dialog.vue +210 -210
  38. package/src/centaline/dialogList/src/dialogList.vue +65 -65
  39. package/src/centaline/dialogList/src/dialogNew.vue +78 -78
  40. package/src/centaline/dialogList/src/drag.js +77 -77
  41. package/src/centaline/directives/index.js +23 -23
  42. package/src/centaline/dynamicBtn/index.js +11 -11
  43. package/src/centaline/dynamicBtn/src/dynamicBtn.vue +100 -100
  44. package/src/centaline/dynamicCb/index.js +11 -11
  45. package/src/centaline/dynamicCb/src/dynamicCb.vue +72 -72
  46. package/src/centaline/dynamicCheckbox/index.js +11 -11
  47. package/src/centaline/dynamicCheckbox/src/dynamicCheckbox.vue +128 -128
  48. package/src/centaline/dynamicComboBoxWithTextBox/index.js +11 -11
  49. package/src/centaline/dynamicComboBoxWithTextBox/src/dynamicComboBoxWithTextBox.vue +240 -240
  50. package/src/centaline/dynamicD/index.js +11 -11
  51. package/src/centaline/dynamicD/src/dynamicD.vue +92 -92
  52. package/src/centaline/dynamicDetail/index.js +10 -10
  53. package/src/centaline/dynamicDetail/src/dynamicDetail.vue +40 -40
  54. package/src/centaline/dynamicDetail/src/dynamicPropertyDetailOFI.vue +1280 -1280
  55. package/src/centaline/dynamicDetail/src/dynamicPropertyDetailRET.vue +1293 -1293
  56. package/src/centaline/dynamicDrop/index.js +11 -11
  57. package/src/centaline/dynamicDrop/src/dynamicDrop.vue +54 -54
  58. package/src/centaline/dynamicDtd/index.js +11 -11
  59. package/src/centaline/dynamicDtd/src/dynamicDtd.vue +125 -125
  60. package/src/centaline/dynamicDtd/src/dynamicDtdOld.vue +93 -93
  61. package/src/centaline/dynamicFile/index.js +11 -11
  62. package/src/centaline/dynamicFile/src/dynamicFile.vue +288 -283
  63. package/src/centaline/dynamicForm/index.js +24 -24
  64. package/src/centaline/dynamicForm/src/dynamicForm.vue +564 -564
  65. package/src/centaline/dynamicForm/src/dynamicFormList.vue +209 -209
  66. package/src/centaline/dynamicForm/src/dynamicFormListTable.vue +376 -376
  67. package/src/centaline/dynamicGp/index.js +11 -11
  68. package/src/centaline/dynamicGp/src/dynamicGp.vue +27 -27
  69. package/src/centaline/dynamicHyperLink/index.js +11 -11
  70. package/src/centaline/dynamicHyperLink/src/dynamicHyperLink.vue +54 -54
  71. package/src/centaline/dynamicInput/index.js +35 -35
  72. package/src/centaline/dynamicInput/src/dynamicInput.vue +35 -35
  73. package/src/centaline/dynamicInputNumber/index.js +11 -11
  74. package/src/centaline/dynamicInputNumber/src/dynamicInputNumber.vue +157 -157
  75. package/src/centaline/dynamicIti/index.js +11 -11
  76. package/src/centaline/dynamicIti/src/dynamicIti.vue +148 -148
  77. package/src/centaline/dynamicL/index.js +11 -11
  78. package/src/centaline/dynamicL/src/dynamicL.vue +37 -37
  79. package/src/centaline/dynamicLabel/index.js +11 -11
  80. package/src/centaline/dynamicLabel/src/dynamicLabel.vue +73 -73
  81. package/src/centaline/dynamicLs/index.js +22 -22
  82. package/src/centaline/dynamicLs/src/dynamicLs.vue +233 -233
  83. package/src/centaline/dynamicMo/index.js +13 -13
  84. package/src/centaline/dynamicMo/src/dynamicMo.vue +421 -421
  85. package/src/centaline/dynamicMt/index.js +11 -11
  86. package/src/centaline/dynamicMt/src/dynamicMt.vue +44 -44
  87. package/src/centaline/dynamicPlaceHolder/index.js +11 -11
  88. package/src/centaline/dynamicPlaceHolder/src/dynamicPlaceHolder.vue +29 -29
  89. package/src/centaline/dynamicPopupSearchList/index.js +11 -11
  90. package/src/centaline/dynamicPopupSearchList/src/dynamicPopupSearchList.vue +157 -157
  91. package/src/centaline/dynamicPopupSearchList/src/dynamicPopupSearchListTable.vue +239 -239
  92. package/src/centaline/dynamicRichText/index.js +11 -11
  93. package/src/centaline/dynamicRichText/src/dynamicRichText.vue +33 -33
  94. package/src/centaline/dynamicSearchList/index.js +11 -11
  95. package/src/centaline/dynamicSearchList/src/dynamicSearchCategory.vue +121 -121
  96. package/src/centaline/dynamicSearchList/src/dynamicSearchList.vue +135 -135
  97. package/src/centaline/dynamicSearchList/src/dynamicSearchScreen.vue +206 -206
  98. package/src/centaline/dynamicSearchList/src/dynamicSearchTable.vue +1069 -1069
  99. package/src/centaline/dynamicSearchList/src/dynamicTableStatistics.vue +41 -41
  100. package/src/centaline/dynamicSearchList/src/dynamicTableTip.vue +46 -46
  101. package/src/centaline/dynamicSearchList/src/dynamicTableToolbar.vue +61 -61
  102. package/src/centaline/dynamicSeg/index.js +11 -11
  103. package/src/centaline/dynamicSeg/src/dynamicSeg.vue +100 -100
  104. package/src/centaline/dynamicSensitiveEye/index.js +11 -11
  105. package/src/centaline/dynamicSensitiveEye/src/dynamicSensitiveEye.vue +74 -74
  106. package/src/centaline/dynamicSo/index.js +14 -14
  107. package/src/centaline/dynamicSo/src/dynamicSo.vue +328 -328
  108. package/src/centaline/dynamicSo/src/dynamicSo/345/211/257/346/234/254.vue +69 -69
  109. package/src/centaline/dynamicSos/index.js +14 -14
  110. package/src/centaline/dynamicSos/src/dynamicSos - /345/244/215/345/210/266.vue" +223 -223
  111. package/src/centaline/dynamicSos/src/dynamicSos.vue +260 -260
  112. package/src/centaline/dynamicSw/index.js +11 -11
  113. package/src/centaline/dynamicSw/src/dynamicSw.vue +74 -74
  114. package/src/centaline/dynamicT/index.js +11 -11
  115. package/src/centaline/dynamicT/src/dynamicT.vue +79 -79
  116. package/src/centaline/dynamicTab/index.js +11 -11
  117. package/src/centaline/dynamicTab/src/dynamicTab.vue +49 -49
  118. package/src/centaline/dynamicTabs/index.js +11 -11
  119. package/src/centaline/dynamicTabs/src/dynamicTabs.vue +69 -69
  120. package/src/centaline/dynamicTags/index.js +13 -13
  121. package/src/centaline/dynamicTags/src/dynamicTags - /345/244/215/345/210/266.vue" +391 -391
  122. package/src/centaline/dynamicTags/src/dynamicTags.vue +427 -427
  123. package/src/centaline/dynamicTimeSelect/index.js +11 -11
  124. package/src/centaline/dynamicTimeSelect/src/dynamicTimeSelect.vue +141 -141
  125. package/src/centaline/dynamicTree/index.js +11 -11
  126. package/src/centaline/dynamicTree/src/dynamicSearchTree.vue +66 -66
  127. package/src/centaline/dynamicTree/src/dynamicTree.vue +233 -233
  128. package/src/centaline/dynamicTree/src/dynamicTreeList.vue +74 -74
  129. package/src/centaline/formData/index.js +290 -290
  130. package/src/centaline/imgPreview/index.js +42 -42
  131. package/src/centaline/imgPreview/src/imgPreview.vue +26 -26
  132. package/src/centaline/index.js +51 -51
  133. package/src/centaline/loader/index.js +157 -157
  134. package/src/centaline/loader/src/ctl/Base.js +261 -261
  135. package/src/centaline/loader/src/ctl/Button.js +44 -44
  136. package/src/centaline/loader/src/ctl/Cb.js +27 -27
  137. package/src/centaline/loader/src/ctl/Checkbox.js +107 -107
  138. package/src/centaline/loader/src/ctl/ComboBoxWithTextBox.js +162 -162
  139. package/src/centaline/loader/src/ctl/D.js +31 -31
  140. package/src/centaline/loader/src/ctl/Detail.js +175 -175
  141. package/src/centaline/loader/src/ctl/Dtd.js +115 -115
  142. package/src/centaline/loader/src/ctl/DtdOld.js +129 -129
  143. package/src/centaline/loader/src/ctl/File.js +292 -292
  144. package/src/centaline/loader/src/ctl/Form.js +380 -380
  145. package/src/centaline/loader/src/ctl/FormList.js +428 -428
  146. package/src/centaline/loader/src/ctl/GM.js +20 -20
  147. package/src/centaline/loader/src/ctl/Gp.js +9 -9
  148. package/src/centaline/loader/src/ctl/Hd.js +13 -13
  149. package/src/centaline/loader/src/ctl/HyperLink.js +24 -24
  150. package/src/centaline/loader/src/ctl/InputNumber.js +51 -51
  151. package/src/centaline/loader/src/ctl/Iti.js +108 -108
  152. package/src/centaline/loader/src/ctl/L.js +18 -18
  153. package/src/centaline/loader/src/ctl/Mo.js +183 -183
  154. package/src/centaline/loader/src/ctl/Mt.js +20 -20
  155. package/src/centaline/loader/src/ctl/PlaceHolder.js +17 -17
  156. package/src/centaline/loader/src/ctl/Router.js +273 -273
  157. package/src/centaline/loader/src/ctl/SearchCategory.js +54 -54
  158. package/src/centaline/loader/src/ctl/SearchScreen.js +236 -236
  159. package/src/centaline/loader/src/ctl/SearchTable.js +772 -772
  160. package/src/centaline/loader/src/ctl/Seg.js +37 -37
  161. package/src/centaline/loader/src/ctl/SensitiveEye.js +65 -65
  162. package/src/centaline/loader/src/ctl/So.js +117 -117
  163. package/src/centaline/loader/src/ctl/Sos.js +128 -128
  164. package/src/centaline/loader/src/ctl/Sw.js +27 -27
  165. package/src/centaline/loader/src/ctl/T.js +65 -65
  166. package/src/centaline/loader/src/ctl/Tabs.js +57 -57
  167. package/src/centaline/loader/src/ctl/Tags.js +191 -191
  168. package/src/centaline/loader/src/ctl/TimeSelect.js +87 -87
  169. package/src/centaline/loader/src/ctl/Tree.js +151 -151
  170. package/src/centaline/loader/src/ctl/Ttts.js +78 -78
  171. package/src/centaline/loader/src/ctl/lib/Enum.js +563 -563
  172. package/src/centaline/loader/src/ctl/lib/LibFunction.js +364 -364
  173. package/src/centaline/loader/src/ctl.js +36 -36
  174. package/src/centaline/mixins/dynamicElement.js +151 -151
  175. package/src/centaline/mixins/dynamicSelect.js +84 -84
  176. package/src/centaline/mixins/emitter.js +33 -33
  177. package/src/centaline/progress/index.js +11 -11
  178. package/src/centaline/progress/src/progress.vue +70 -70
  179. package/src/centaline/quickInput/src/quickInput.vue +64 -64
  180. package/src/centaline/selectOption/src/selectOption.vue +61 -61
  181. package/src/centaline/selectOption/src/selectOptionVertical.vue +80 -80
  182. package/src/centaline/templateControls/index.js +17 -17
  183. package/src/centaline/templateControls/src/dynamicTableA.vue +20 -20
  184. package/src/centaline/templateControls/src/dynamicTableCurrency.vue +62 -62
  185. package/src/centaline/templateControls/src/dynamicTableImg.vue +25 -25
  186. package/src/centaline/templates/index.js +34 -34
  187. package/src/centaline/templates/src/ContractSearch.js +67 -67
  188. package/src/centaline/templates/src/test.js +44 -44
  189. package/src/centaline/validate/index.js +332 -332
  190. package/src/main.js +46 -46
  191. package/src/router/index.js +44 -44
  192. package/wwwroot/static/centaline/centaline-data-driven.js +1 -1
  193. package/wwwroot/static/centaline/centaline-data-driven.js.map +1 -1
@@ -1,78 +1,78 @@
1
- <template>
2
- <div class="ct-dialog">
3
- <el-dialog :top="topHeigth"
4
- :title="vmodel.title" :close-on-click-modal="false"
5
- :visible.sync="dialogVisible"
6
- :width="vmodel.content[0].attrs.width"
7
- :before-close="handleClose">
8
- <div :style="v.style" v-for="(v,index) in vmodel.content" :key="index">
9
- <component v-bind="v.attrs" :is="v.component" v-on="v.on"></component>
10
- </div>
11
- </el-dialog>
12
- </div>
13
- </template>
14
- <script>
15
- export default {
16
- name: 'ct-dialog-new',
17
- props: {
18
- vmodel: Object,
19
- zindex: Number
20
- },
21
- data() {
22
- return {
23
- dialogVisible: true,
24
- divHeigth: '500px'
25
- }
26
- },
27
- mounted() {
28
- for (var index in this.vmodel.content) {
29
- const v = this.vmodel.content[index];
30
- if (v.component === 'ct-searchlist' && parseInt(v.attrs.height) < 300) {
31
- v.attrs.height = '450px';
32
- }
33
-
34
- this.$set(v, 'style', {
35
- width: '100%',
36
- 'min-height': v.component === 'ct-searchlist' ? "" : v.attrs.height,
37
- 'height': v.component === 'ct-searchlist' ? v.attrs.height : ""
38
- })
39
-
40
- if (typeof v.on === "undefined") {
41
- }
42
- else if (typeof v.on.loaded === "undefined") {
43
- v.on.loaded = (model) => {
44
- this.vmodel.title = (model && model.title) ? model.title : this.vmodel.title;
45
- }
46
- }
47
- }
48
- },
49
- computed: {
50
- topHeigth: function () {
51
- let height;
52
- let vh = 0;
53
- this.vmodel.content[0].attrs.height = '50px';
54
- if (this.vmodel.content[0].attrs.height) {
55
- height = parseInt(this.vmodel.content[0].attrs.height) + 20;
56
- }
57
- if (document.documentElement.clientHeight > height) {
58
- height = document.documentElement.clientHeight - height;
59
- height = parseInt(height/2);
60
- vh = height * 100 / document.documentElement.clientHeight;
61
- vh = parseInt(vh);
62
- }
63
- if (vh < 3) {
64
- vh = 3;
65
- }
66
- if (vh > 13) {
67
- vh = 13;
68
- }
69
- return vh + 'vh';
70
- },
71
- },
72
- methods: {
73
- handleClose() {
74
- this.$emit('close', this);
75
- }
76
- }
77
- }
78
- </script>
1
+ <template>
2
+ <div class="ct-dialog">
3
+ <el-dialog :top="topHeigth"
4
+ :title="vmodel.title" :close-on-click-modal="false"
5
+ :visible.sync="dialogVisible"
6
+ :width="vmodel.content[0].attrs.width"
7
+ :before-close="handleClose">
8
+ <div :style="v.style" v-for="(v,index) in vmodel.content" :key="index">
9
+ <component v-bind="v.attrs" :is="v.component" v-on="v.on"></component>
10
+ </div>
11
+ </el-dialog>
12
+ </div>
13
+ </template>
14
+ <script>
15
+ export default {
16
+ name: 'ct-dialog-new',
17
+ props: {
18
+ vmodel: Object,
19
+ zindex: Number
20
+ },
21
+ data() {
22
+ return {
23
+ dialogVisible: true,
24
+ divHeigth: '500px'
25
+ }
26
+ },
27
+ mounted() {
28
+ for (var index in this.vmodel.content) {
29
+ const v = this.vmodel.content[index];
30
+ if (v.component === 'ct-searchlist' && parseInt(v.attrs.height) < 300) {
31
+ v.attrs.height = '450px';
32
+ }
33
+
34
+ this.$set(v, 'style', {
35
+ width: '100%',
36
+ 'min-height': v.component === 'ct-searchlist' ? "" : v.attrs.height,
37
+ 'height': v.component === 'ct-searchlist' ? v.attrs.height : ""
38
+ })
39
+
40
+ if (typeof v.on === "undefined") {
41
+ }
42
+ else if (typeof v.on.loaded === "undefined") {
43
+ v.on.loaded = (model) => {
44
+ this.vmodel.title = (model && model.title) ? model.title : this.vmodel.title;
45
+ }
46
+ }
47
+ }
48
+ },
49
+ computed: {
50
+ topHeigth: function () {
51
+ let height;
52
+ let vh = 0;
53
+ this.vmodel.content[0].attrs.height = '50px';
54
+ if (this.vmodel.content[0].attrs.height) {
55
+ height = parseInt(this.vmodel.content[0].attrs.height) + 20;
56
+ }
57
+ if (document.documentElement.clientHeight > height) {
58
+ height = document.documentElement.clientHeight - height;
59
+ height = parseInt(height/2);
60
+ vh = height * 100 / document.documentElement.clientHeight;
61
+ vh = parseInt(vh);
62
+ }
63
+ if (vh < 3) {
64
+ vh = 3;
65
+ }
66
+ if (vh > 13) {
67
+ vh = 13;
68
+ }
69
+ return vh + 'vh';
70
+ },
71
+ },
72
+ methods: {
73
+ handleClose() {
74
+ this.$emit('close', this);
75
+ }
76
+ }
77
+ }
78
+ </script>
@@ -1,77 +1,77 @@
1
- export default {
2
- bind(el, binding, vnode) {
3
- const dialogHeaderEl = el.querySelector('.el-dialog__header')
4
- const dragDom = el.querySelector('.el-dialog')
5
- dialogHeaderEl.style.cssText += ';cursor:move;'
6
- dragDom.style.cssText += ';top:0px;'
7
-
8
- // 获取原有属性 ie dom元素.currentStyle 火狐谷歌 window.getComputedStyle(dom元素, null);
9
- const getStyle = (function() {
10
- if (window.document.currentStyle) {
11
- return (dom, attr) => dom.currentStyle[attr]
12
- } else {
13
- return (dom, attr) => getComputedStyle(dom, false)[attr]
14
- }
15
- })()
16
-
17
- dialogHeaderEl.onmousedown = (e) => {
18
- // 鼠标按下,计算当前元素距离可视区的距离
19
- const disX = e.clientX - dialogHeaderEl.offsetLeft
20
- const disY = e.clientY - dialogHeaderEl.offsetTop
21
-
22
- const dragDomWidth = dragDom.offsetWidth
23
- const dragDomHeight = dragDom.offsetHeight
24
-
25
- const screenWidth = document.body.clientWidth
26
- const screenHeight = document.body.clientHeight
27
-
28
- const minDragDomLeft = dragDom.offsetLeft
29
- const maxDragDomLeft = screenWidth - dragDom.offsetLeft - dragDomWidth
30
-
31
- const minDragDomTop = dragDom.offsetTop
32
- const maxDragDomTop = screenHeight - dragDom.offsetTop - dragDomHeight
33
-
34
- // 获取到的值带px 正则匹配替换
35
- let styL = getStyle(dragDom, 'left')
36
- let styT = getStyle(dragDom, 'top')
37
-
38
- if (styL.includes('%')) {
39
- styL = +document.body.clientWidth * (+styL.replace(/\%/g, '') / 100)
40
- styT = +document.body.clientHeight * (+styT.replace(/\%/g, '') / 100)
41
- } else {
42
- styL = +styL.replace(/\px/g, '')
43
- styT = +styT.replace(/\px/g, '')
44
- }
45
-
46
- document.onmousemove = function(e) {
47
- // 通过事件委托,计算移动的距离
48
- let left = e.clientX - disX
49
- let top = e.clientY - disY
50
-
51
- // 边界处理
52
- if (-(left) > minDragDomLeft) {
53
- left = -minDragDomLeft
54
- } else if (left > maxDragDomLeft) {
55
- left = maxDragDomLeft
56
- }
57
-
58
- if (-(top) > minDragDomTop) {
59
- top = -minDragDomTop
60
- } else if (top > maxDragDomTop) {
61
- top = maxDragDomTop
62
- }
63
-
64
- // 移动当前元素
65
- dragDom.style.cssText += `;left:${left + styL}px;top:${top + styT}px;`
66
-
67
- // emit onDrag event
68
- vnode.child.$emit('dragDialog')
69
- }
70
-
71
- document.onmouseup = function(e) {
72
- document.onmousemove = null
73
- document.onmouseup = null
74
- }
75
- }
76
- }
77
- }
1
+ export default {
2
+ bind(el, binding, vnode) {
3
+ const dialogHeaderEl = el.querySelector('.el-dialog__header')
4
+ const dragDom = el.querySelector('.el-dialog')
5
+ dialogHeaderEl.style.cssText += ';cursor:move;'
6
+ dragDom.style.cssText += ';top:0px;'
7
+
8
+ // 获取原有属性 ie dom元素.currentStyle 火狐谷歌 window.getComputedStyle(dom元素, null);
9
+ const getStyle = (function() {
10
+ if (window.document.currentStyle) {
11
+ return (dom, attr) => dom.currentStyle[attr]
12
+ } else {
13
+ return (dom, attr) => getComputedStyle(dom, false)[attr]
14
+ }
15
+ })()
16
+
17
+ dialogHeaderEl.onmousedown = (e) => {
18
+ // 鼠标按下,计算当前元素距离可视区的距离
19
+ const disX = e.clientX - dialogHeaderEl.offsetLeft
20
+ const disY = e.clientY - dialogHeaderEl.offsetTop
21
+
22
+ const dragDomWidth = dragDom.offsetWidth
23
+ const dragDomHeight = dragDom.offsetHeight
24
+
25
+ const screenWidth = document.body.clientWidth
26
+ const screenHeight = document.body.clientHeight
27
+
28
+ const minDragDomLeft = dragDom.offsetLeft
29
+ const maxDragDomLeft = screenWidth - dragDom.offsetLeft - dragDomWidth
30
+
31
+ const minDragDomTop = dragDom.offsetTop
32
+ const maxDragDomTop = screenHeight - dragDom.offsetTop - dragDomHeight
33
+
34
+ // 获取到的值带px 正则匹配替换
35
+ let styL = getStyle(dragDom, 'left')
36
+ let styT = getStyle(dragDom, 'top')
37
+
38
+ if (styL.includes('%')) {
39
+ styL = +document.body.clientWidth * (+styL.replace(/\%/g, '') / 100)
40
+ styT = +document.body.clientHeight * (+styT.replace(/\%/g, '') / 100)
41
+ } else {
42
+ styL = +styL.replace(/\px/g, '')
43
+ styT = +styT.replace(/\px/g, '')
44
+ }
45
+
46
+ document.onmousemove = function(e) {
47
+ // 通过事件委托,计算移动的距离
48
+ let left = e.clientX - disX
49
+ let top = e.clientY - disY
50
+
51
+ // 边界处理
52
+ if (-(left) > minDragDomLeft) {
53
+ left = -minDragDomLeft
54
+ } else if (left > maxDragDomLeft) {
55
+ left = maxDragDomLeft
56
+ }
57
+
58
+ if (-(top) > minDragDomTop) {
59
+ top = -minDragDomTop
60
+ } else if (top > maxDragDomTop) {
61
+ top = maxDragDomTop
62
+ }
63
+
64
+ // 移动当前元素
65
+ dragDom.style.cssText += `;left:${left + styL}px;top:${top + styT}px;`
66
+
67
+ // emit onDrag event
68
+ vnode.child.$emit('dragDialog')
69
+ }
70
+
71
+ document.onmouseup = function(e) {
72
+ document.onmousemove = null
73
+ document.onmouseup = null
74
+ }
75
+ }
76
+ }
77
+ }
@@ -1,23 +1,23 @@
1
-
2
- const directives = {
3
- install: function (Vue,options) {
4
- Vue.directive('focus', {
5
- bind: function (el, binding, vnode) {
6
- if (binding.value) {
7
- setTimeout(function () {
8
- el.focus();
9
- }, 1);
10
- }
11
- },
12
- componentUpdated: function (el, binding, vnode) {
13
- if (binding.value) {
14
- setTimeout(function () {
15
- el.focus();
16
- }, 1);
17
- }
18
- }
19
- });
20
- }
21
- };
22
-
23
- export default directives;
1
+
2
+ const directives = {
3
+ install: function (Vue,options) {
4
+ Vue.directive('focus', {
5
+ bind: function (el, binding, vnode) {
6
+ if (binding.value) {
7
+ setTimeout(function () {
8
+ el.focus();
9
+ }, 1);
10
+ }
11
+ },
12
+ componentUpdated: function (el, binding, vnode) {
13
+ if (binding.value) {
14
+ setTimeout(function () {
15
+ el.focus();
16
+ }, 1);
17
+ }
18
+ }
19
+ });
20
+ }
21
+ };
22
+
23
+ export default directives;
@@ -1,11 +1,11 @@
1
- import dynamicBtn from './src/dynamicBtn'
2
-
3
- dynamicBtn.install = function (Vue) {
4
- Vue.component(dynamicBtn.name, dynamicBtn);
5
- }
6
-
7
- if (typeof window !== 'undefined' && window.Vue) {
8
- window.Vue.use(dynamicBtn);
9
- }
10
-
11
- export default dynamicBtn
1
+ import dynamicBtn from './src/dynamicBtn'
2
+
3
+ dynamicBtn.install = function (Vue) {
4
+ Vue.component(dynamicBtn.name, dynamicBtn);
5
+ }
6
+
7
+ if (typeof window !== 'undefined' && window.Vue) {
8
+ window.Vue.use(dynamicBtn);
9
+ }
10
+
11
+ export default dynamicBtn
@@ -1,100 +1,100 @@
1
- <template>
2
- <el-dropdown v-if="model.isDropdown"
3
- trigger="click"
4
- v-bind="model.attrs"
5
- placement="bottom"
6
- @click.native="dropClick"
7
- @command="commandClick"
8
- :disabled="model.disabled">
9
- <el-button type="primary">
10
- {{model.label}}<i class="el-icon-arrow-down el-icon--right"></i>
11
- </el-button>
12
- <el-dropdown-menu slot="dropdown">
13
- <el-dropdown-item v-for="item in model.elementOptions" :key="item.code" :command="item.code">{{item.name}}</el-dropdown-item>
14
- </el-dropdown-menu>
15
- </el-dropdown>
16
- <el-button v-else-if="!model.isImport"
17
- :type="model.isHyperLink ? 'text' : 'primary'"
18
- v-bind="model.attrs" @click="$emit('click',model)"
19
- :style="{color:model.textColor,backgroundColor:model.bgColor,borderColor:model.borderColor}"
20
- :icon="model.icon"
21
- :disabled="model.disabled">
22
- <!-- <i v-if="model.isShowIocn" :class="model.iconClass"></i> -->
23
- {{model.label}}</el-button>
24
- <el-upload v-else
25
- :action="model.action"
26
- v-bind="model.attrs"
27
- size="mini"
28
- :data="uploadData"
29
- :headers="headers"
30
- :multiple="false"
31
- :show-file-list="false"
32
- :on-success="handleAvatarSuccess"
33
- :on-error="handleAvatarError">
34
- <el-button size="mini" type="primary">{{model.label}}</el-button>
35
- </el-upload>
36
- </template>
37
- <script>
38
- import dynamicElement from '../../mixins/dynamicElement'
39
- export default {
40
- name: 'ct-btn',
41
- props: {
42
- vmodel: Object,
43
- fileData: Object,
44
- optionApi:String,
45
- },
46
- mixins: [dynamicElement],
47
- data: function () {
48
- return {};
49
- },
50
- created() {
51
- if (typeof this.vmodel === 'undefined') {
52
- this.model = this.loaderObj.Button(this.source);
53
- }
54
- else {
55
- this.model = this.vmodel;
56
- }
57
- },
58
- computed: {
59
- uploadData() {
60
- //因传输方式是FormData,故需要对Value是object的进行转化
61
- let data = {};
62
- for (var key in this.fileData) {
63
- if (typeof this.fileData[key] === "object") {
64
- data[key] = JSON.stringify(this.fileData[key]);
65
- }
66
- else {
67
- data[key] = this.fileData[key];
68
- }
69
- }
70
- return data;
71
- },
72
- headers() {
73
- return this.$common.getDataDrivenOpts().handler.getRequestHeaders();
74
- }
75
- },
76
- methods: {
77
- handleAvatarSuccess(res) {
78
- let self = this;
79
- this.$api.postThenHandler({ data: res}).then(function () {
80
- self.$emit('importComplete', res);
81
- });
82
- },
83
- handleAvatarError(info) {
84
- this.$message.warning("失败,请重试");
85
- },
86
- dropClick(event) {
87
- var self = this;
88
- this.$nextTick(function () {
89
- if (self.optionApi) {
90
- self.model.getOptions(self.optionApi);
91
- }
92
- });
93
- },
94
- commandClick(code){
95
- this.model.selectOptionCode=code;
96
- this.$emit('click', this.model);
97
- },
98
- }
99
- }
100
- </script>
1
+ <template>
2
+ <el-dropdown v-if="model.isDropdown"
3
+ trigger="click"
4
+ v-bind="model.attrs"
5
+ placement="bottom"
6
+ @click.native="dropClick"
7
+ @command="commandClick"
8
+ :disabled="model.disabled">
9
+ <el-button type="primary">
10
+ {{model.label}}<i class="el-icon-arrow-down el-icon--right"></i>
11
+ </el-button>
12
+ <el-dropdown-menu slot="dropdown">
13
+ <el-dropdown-item v-for="item in model.elementOptions" :key="item.code" :command="item.code">{{item.name}}</el-dropdown-item>
14
+ </el-dropdown-menu>
15
+ </el-dropdown>
16
+ <el-button v-else-if="!model.isImport"
17
+ :type="model.isHyperLink ? 'text' : 'primary'"
18
+ v-bind="model.attrs" @click="$emit('click',model)"
19
+ :style="{color:model.textColor,backgroundColor:model.bgColor,borderColor:model.borderColor}"
20
+ :icon="model.icon"
21
+ :disabled="model.disabled">
22
+ <!-- <i v-if="model.isShowIocn" :class="model.iconClass"></i> -->
23
+ {{model.label}}</el-button>
24
+ <el-upload v-else
25
+ :action="model.action"
26
+ v-bind="model.attrs"
27
+ size="mini"
28
+ :data="uploadData"
29
+ :headers="headers"
30
+ :multiple="false"
31
+ :show-file-list="false"
32
+ :on-success="handleAvatarSuccess"
33
+ :on-error="handleAvatarError">
34
+ <el-button size="mini" type="primary">{{model.label}}</el-button>
35
+ </el-upload>
36
+ </template>
37
+ <script>
38
+ import dynamicElement from '../../mixins/dynamicElement'
39
+ export default {
40
+ name: 'ct-btn',
41
+ props: {
42
+ vmodel: Object,
43
+ fileData: Object,
44
+ optionApi:String,
45
+ },
46
+ mixins: [dynamicElement],
47
+ data: function () {
48
+ return {};
49
+ },
50
+ created() {
51
+ if (typeof this.vmodel === 'undefined') {
52
+ this.model = this.loaderObj.Button(this.source);
53
+ }
54
+ else {
55
+ this.model = this.vmodel;
56
+ }
57
+ },
58
+ computed: {
59
+ uploadData() {
60
+ //因传输方式是FormData,故需要对Value是object的进行转化
61
+ let data = {};
62
+ for (var key in this.fileData) {
63
+ if (typeof this.fileData[key] === "object") {
64
+ data[key] = JSON.stringify(this.fileData[key]);
65
+ }
66
+ else {
67
+ data[key] = this.fileData[key];
68
+ }
69
+ }
70
+ return data;
71
+ },
72
+ headers() {
73
+ return this.$common.getDataDrivenOpts().handler.getRequestHeaders();
74
+ }
75
+ },
76
+ methods: {
77
+ handleAvatarSuccess(res) {
78
+ let self = this;
79
+ this.$api.postThenHandler({ data: res}).then(function () {
80
+ self.$emit('importComplete', res);
81
+ });
82
+ },
83
+ handleAvatarError(info) {
84
+ this.$message.warning("失败,请重试");
85
+ },
86
+ dropClick(event) {
87
+ var self = this;
88
+ this.$nextTick(function () {
89
+ if (self.optionApi) {
90
+ self.model.getOptions(self.optionApi);
91
+ }
92
+ });
93
+ },
94
+ commandClick(code){
95
+ this.model.selectOptionCode=code;
96
+ this.$emit('click', this.model);
97
+ },
98
+ }
99
+ }
100
+ </script>
@@ -1,11 +1,11 @@
1
- import dynamicCb from './src/dynamicCb'
2
-
3
- dynamicCb.install = function (Vue, options) {
4
- Vue.component(dynamicCb.name, dynamicCb);
5
- }
6
-
7
- if (typeof window !== 'undefined' && window.Vue) {
8
- window.Vue.use(dynamicCb);
9
- }
10
-
11
- export default dynamicCb;
1
+ import dynamicCb from './src/dynamicCb'
2
+
3
+ dynamicCb.install = function (Vue, options) {
4
+ Vue.component(dynamicCb.name, dynamicCb);
5
+ }
6
+
7
+ if (typeof window !== 'undefined' && window.Vue) {
8
+ window.Vue.use(dynamicCb);
9
+ }
10
+
11
+ export default dynamicCb;