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,240 +1,240 @@
1
- <template>
2
- <div class="field-top">
3
- <div style="width:100%;display:flex">
4
- <div style="flex:1" class="ct-combobox-with-textbox" :class="[(focus || showDrop)?'isfocus':'',model.attrs.size?'ct-combobox-with-textbox-'+model.attrs.size:''
5
- ]" @mouseover="mouseOverHandle" @mouseout="mouseOutHandle">
6
- <div :class="[model.showLabel?'el-input-group el-input-group--prepend':'',!valid?'inputError':'']">
7
- <div v-if="model.showLabel && model.label" class="el-input-group__prepend" :class="[model.labelClass]">
8
- {{model.label}}
9
- </div>
10
- <div class="ct-combobox-with-textbox-label">
11
- <el-select v-model="model.value" size="mini" v-bind="model.attrs"
12
- :placeholder="model.placeholder"
13
- @change="onChangeHandler"
14
- @visible-change="visibleChangeHandle"
15
- :disabled="model.lock"
16
- clearable>
17
- <el-option v-for="item in model.options"
18
- :key="item.code"
19
- :label="item.name"
20
- :value="item.code">
21
- </el-option>
22
- </el-select>
23
- <el-select v-if="model.id1"
24
- v-model="model.value1" v-bind="model.attrs"
25
- :placeholder="model.placeholder1"
26
- @change="onChangeHandler1"
27
- @visible-change="visibleChangeHandle1"
28
- :disabled="model.lock"
29
- clearable>
30
- <el-option v-for="item in model.options1"
31
- :key="item.code"
32
- :label="item.name"
33
- :value="item.code">
34
- </el-option>
35
- </el-select>
36
- <el-select v-if="model.id2" size="mini" v-bind="model.attrs"
37
- v-model="model.value2" :placeholder="model.placeholder2"
38
- @change="onChangeHandler2"
39
- @visible-change="visibleChangeHandle2"
40
- :disabled="model.lock"
41
- clearable>
42
- <el-option v-for="item in model.options2"
43
- :key="item.code"
44
- :label="item.name"
45
- :value="item.code">
46
- </el-option>
47
- </el-select>
48
- <el-input v-if="model.id3" v-bind="model.attrs"
49
- :placeholder="model.placeholder3" v-model="model.value3"
50
- @input="inputHandler($event)" @change="changeHandler($event)"
51
- :disabled="model.lock" :maxlength="model.max"></el-input>
52
- </div>
53
- </div>
54
- </div>
55
- <transition name="el-fade-in">
56
- <span v-show="!valid" class="errorMessage">
57
- {{validMessage}}
58
- </span>
59
- </transition>
60
- </div>
61
- </div>
62
- </template>
63
-
64
- <script>
65
- import dynamicElement from '../../mixins/dynamicElement'
66
- export default {
67
- name: 'ct-combobox-with-textbox',
68
- mixins: [dynamicElement],
69
- components: {
70
- },
71
- props: {
72
- api: String,
73
- vmodel: Object,
74
- popShow: {
75
- type: Boolean,
76
- default: true
77
- }
78
- },
79
- data() {
80
- return {
81
- focus: false,
82
- showDrop: false,
83
- showClear: false
84
- }
85
- },
86
- created() {
87
- if (typeof this.vmodel === 'undefined') {
88
- this.model = this.loaderObj.ComboBoxWithTextBox(this.source);
89
- }
90
- else {
91
- this.model = this.vmodel;
92
- }
93
- this.$watch('model.value', (n, o) => {
94
- if (typeof this.model.child !== 'undefined') {
95
- this.model.child.value = this.model.child.defaultValue || '';
96
- this.model.child.text = this.model.child.defaultText || '';
97
- }
98
- });
99
- },
100
- computed: {
101
- soPlaceholder: {
102
- get: function () {
103
- if (this.model.value !== '') {
104
- return '';
105
- }
106
- else {
107
- return this.model.label;
108
- }
109
- },
110
- set: function (v) {
111
-
112
- }
113
- }
114
- },
115
- mounted() {
116
- var self = this;
117
- this.$nextTick(function () {
118
- self.$watch('model.options', function (newVal, oldVal) {
119
-
120
- }, { deep: true, immediate: true });
121
- });
122
- },
123
- methods: {
124
- getOptions: function () {
125
- this.model.getOptions(this.api);
126
- },
127
- soChange: function () {
128
- var self = this;
129
- if (typeof this.model.child !== 'undefined') {
130
- this.model.child.value = this.model.child.defaultValue || '';
131
- this.model.child.text = this.model.child.defaultText || '';
132
- }
133
- this.inputHandler(self.model.value);
134
- this.changeHandler(self.model.value);
135
- },
136
- onChangeHandler: function () {
137
- this.model.value1 = '';
138
- this.model.value2 = '';
139
- this.inputHandler(this.model.value);
140
- this.changeHandler(this.model.value);
141
- },
142
- onChangeHandler1: function () {
143
- this.model.value2 = '';
144
- this.inputHandler(this.model.value1);
145
- this.changeHandler(this.model.value1);
146
- },
147
- onChangeHandler2: function () {
148
- this.inputHandler(this.model.value2);
149
- this.changeHandler(this.model.value2);
150
- },
151
- visibleChangeHandle: function (visible) {
152
- if (visible) {
153
- this.model.getOptions(this.api, '');
154
- }
155
- },
156
- visibleChangeHandle1: function (visible) {
157
- if (visible) {
158
- if (this.model.value !== '') {
159
- this.model.getOptions(this.api, '1', this.model.value);
160
- }
161
- else {
162
- this.model.options1.splice(0, this.model.options1.length)
163
- }
164
- }
165
- },
166
- visibleChangeHandle2: function (visible) {
167
- if (visible) {
168
- if (this.model.value1 !== '') {
169
- this.model.getOptions(this.api, '2', this.model.value1);
170
- }
171
- else {
172
- this.model.options2.splice(0, this.model.options2.length)
173
- }
174
- }
175
- },
176
- getOptionText: function (value) {
177
- var self = this;
178
- var option = this.model.options.find((v) => { return v[self.model.optionAttrs.value] === value });
179
- if (option) {
180
- return option[self.model.optionAttrs.label];
181
- } else {
182
- return value;
183
- }
184
- },
185
- getOptionSelect(value) {
186
- if (this.model.value === value) {
187
- return "danger";
188
- }
189
- else {
190
- return "success";
191
- }
192
- },
193
- selectOption(value) {
194
- if (this.model.value === value) {
195
- //this.model.value = '';
196
- this.$set(this, 'showDrop', false);
197
- return;
198
- }
199
- else {
200
- this.model.value = value;
201
- }
202
- this.soChange();
203
- this.$set(this, 'showDrop', false);
204
- },
205
- mouseOverHandle: function () {
206
- if (this.model.value !== '' && this.model.clearable) {
207
- this.$set(this, 'showClear', true);
208
- }
209
- },
210
- mouseOutHandle: function () {
211
- this.$set(this, 'showClear', false);
212
- },
213
- clearClickHandle: function () {
214
- this.model.value = '';
215
- this.soChange();
216
- }
217
- }
218
- }
219
- </script>
220
- <style>
221
- .ct-combobox-with-textbox {
222
- font-size: 12px;
223
- align-items: center;
224
- height: 26px;
225
- }
226
-
227
- .ct-combobox-with-textbox .ct-combobox-with-textbox-label {
228
- align-items: center;
229
- display: flex;
230
- font-size: 12px;
231
- }
232
-
233
- .ct-combobox-with-textbox .ct-combobox-div {
234
- position: relative;
235
- }
236
-
237
- .ct-combobox-with-textbox .el-input.is-focus .el-input__inner {
238
- border: 1px solid #409EFF !important;
239
- }
240
- </style>
1
+ <template>
2
+ <div class="field-top">
3
+ <div style="width:100%;display:flex">
4
+ <div style="flex:1" class="ct-combobox-with-textbox" :class="[(focus || showDrop)?'isfocus':'',model.attrs.size?'ct-combobox-with-textbox-'+model.attrs.size:''
5
+ ]" @mouseover="mouseOverHandle" @mouseout="mouseOutHandle">
6
+ <div :class="[model.showLabel?'el-input-group el-input-group--prepend':'',!valid?'inputError':'']">
7
+ <div v-if="model.showLabel && model.label" class="el-input-group__prepend" :class="[model.labelClass]">
8
+ {{model.label}}
9
+ </div>
10
+ <div class="ct-combobox-with-textbox-label">
11
+ <el-select v-model="model.value" size="mini" v-bind="model.attrs"
12
+ :placeholder="model.placeholder"
13
+ @change="onChangeHandler"
14
+ @visible-change="visibleChangeHandle"
15
+ :disabled="model.lock"
16
+ clearable>
17
+ <el-option v-for="item in model.options"
18
+ :key="item.code"
19
+ :label="item.name"
20
+ :value="item.code">
21
+ </el-option>
22
+ </el-select>
23
+ <el-select v-if="model.id1"
24
+ v-model="model.value1" v-bind="model.attrs"
25
+ :placeholder="model.placeholder1"
26
+ @change="onChangeHandler1"
27
+ @visible-change="visibleChangeHandle1"
28
+ :disabled="model.lock"
29
+ clearable>
30
+ <el-option v-for="item in model.options1"
31
+ :key="item.code"
32
+ :label="item.name"
33
+ :value="item.code">
34
+ </el-option>
35
+ </el-select>
36
+ <el-select v-if="model.id2" size="mini" v-bind="model.attrs"
37
+ v-model="model.value2" :placeholder="model.placeholder2"
38
+ @change="onChangeHandler2"
39
+ @visible-change="visibleChangeHandle2"
40
+ :disabled="model.lock"
41
+ clearable>
42
+ <el-option v-for="item in model.options2"
43
+ :key="item.code"
44
+ :label="item.name"
45
+ :value="item.code">
46
+ </el-option>
47
+ </el-select>
48
+ <el-input v-if="model.id3" v-bind="model.attrs"
49
+ :placeholder="model.placeholder3" v-model="model.value3"
50
+ @input="inputHandler($event)" @change="changeHandler($event)"
51
+ :disabled="model.lock" :maxlength="model.max"></el-input>
52
+ </div>
53
+ </div>
54
+ </div>
55
+ <transition name="el-fade-in">
56
+ <span v-show="!valid" class="errorMessage">
57
+ {{validMessage}}
58
+ </span>
59
+ </transition>
60
+ </div>
61
+ </div>
62
+ </template>
63
+
64
+ <script>
65
+ import dynamicElement from '../../mixins/dynamicElement'
66
+ export default {
67
+ name: 'ct-combobox-with-textbox',
68
+ mixins: [dynamicElement],
69
+ components: {
70
+ },
71
+ props: {
72
+ api: String,
73
+ vmodel: Object,
74
+ popShow: {
75
+ type: Boolean,
76
+ default: true
77
+ }
78
+ },
79
+ data() {
80
+ return {
81
+ focus: false,
82
+ showDrop: false,
83
+ showClear: false
84
+ }
85
+ },
86
+ created() {
87
+ if (typeof this.vmodel === 'undefined') {
88
+ this.model = this.loaderObj.ComboBoxWithTextBox(this.source);
89
+ }
90
+ else {
91
+ this.model = this.vmodel;
92
+ }
93
+ this.$watch('model.value', (n, o) => {
94
+ if (typeof this.model.child !== 'undefined') {
95
+ this.model.child.value = this.model.child.defaultValue || '';
96
+ this.model.child.text = this.model.child.defaultText || '';
97
+ }
98
+ });
99
+ },
100
+ computed: {
101
+ soPlaceholder: {
102
+ get: function () {
103
+ if (this.model.value !== '') {
104
+ return '';
105
+ }
106
+ else {
107
+ return this.model.label;
108
+ }
109
+ },
110
+ set: function (v) {
111
+
112
+ }
113
+ }
114
+ },
115
+ mounted() {
116
+ var self = this;
117
+ this.$nextTick(function () {
118
+ self.$watch('model.options', function (newVal, oldVal) {
119
+
120
+ }, { deep: true, immediate: true });
121
+ });
122
+ },
123
+ methods: {
124
+ getOptions: function () {
125
+ this.model.getOptions(this.api);
126
+ },
127
+ soChange: function () {
128
+ var self = this;
129
+ if (typeof this.model.child !== 'undefined') {
130
+ this.model.child.value = this.model.child.defaultValue || '';
131
+ this.model.child.text = this.model.child.defaultText || '';
132
+ }
133
+ this.inputHandler(self.model.value);
134
+ this.changeHandler(self.model.value);
135
+ },
136
+ onChangeHandler: function () {
137
+ this.model.value1 = '';
138
+ this.model.value2 = '';
139
+ this.inputHandler(this.model.value);
140
+ this.changeHandler(this.model.value);
141
+ },
142
+ onChangeHandler1: function () {
143
+ this.model.value2 = '';
144
+ this.inputHandler(this.model.value1);
145
+ this.changeHandler(this.model.value1);
146
+ },
147
+ onChangeHandler2: function () {
148
+ this.inputHandler(this.model.value2);
149
+ this.changeHandler(this.model.value2);
150
+ },
151
+ visibleChangeHandle: function (visible) {
152
+ if (visible) {
153
+ this.model.getOptions(this.api, '');
154
+ }
155
+ },
156
+ visibleChangeHandle1: function (visible) {
157
+ if (visible) {
158
+ if (this.model.value !== '') {
159
+ this.model.getOptions(this.api, '1', this.model.value);
160
+ }
161
+ else {
162
+ this.model.options1.splice(0, this.model.options1.length)
163
+ }
164
+ }
165
+ },
166
+ visibleChangeHandle2: function (visible) {
167
+ if (visible) {
168
+ if (this.model.value1 !== '') {
169
+ this.model.getOptions(this.api, '2', this.model.value1);
170
+ }
171
+ else {
172
+ this.model.options2.splice(0, this.model.options2.length)
173
+ }
174
+ }
175
+ },
176
+ getOptionText: function (value) {
177
+ var self = this;
178
+ var option = this.model.options.find((v) => { return v[self.model.optionAttrs.value] === value });
179
+ if (option) {
180
+ return option[self.model.optionAttrs.label];
181
+ } else {
182
+ return value;
183
+ }
184
+ },
185
+ getOptionSelect(value) {
186
+ if (this.model.value === value) {
187
+ return "danger";
188
+ }
189
+ else {
190
+ return "success";
191
+ }
192
+ },
193
+ selectOption(value) {
194
+ if (this.model.value === value) {
195
+ //this.model.value = '';
196
+ this.$set(this, 'showDrop', false);
197
+ return;
198
+ }
199
+ else {
200
+ this.model.value = value;
201
+ }
202
+ this.soChange();
203
+ this.$set(this, 'showDrop', false);
204
+ },
205
+ mouseOverHandle: function () {
206
+ if (this.model.value !== '' && this.model.clearable) {
207
+ this.$set(this, 'showClear', true);
208
+ }
209
+ },
210
+ mouseOutHandle: function () {
211
+ this.$set(this, 'showClear', false);
212
+ },
213
+ clearClickHandle: function () {
214
+ this.model.value = '';
215
+ this.soChange();
216
+ }
217
+ }
218
+ }
219
+ </script>
220
+ <style>
221
+ .ct-combobox-with-textbox {
222
+ font-size: 12px;
223
+ align-items: center;
224
+ height: 26px;
225
+ }
226
+
227
+ .ct-combobox-with-textbox .ct-combobox-with-textbox-label {
228
+ align-items: center;
229
+ display: flex;
230
+ font-size: 12px;
231
+ }
232
+
233
+ .ct-combobox-with-textbox .ct-combobox-div {
234
+ position: relative;
235
+ }
236
+
237
+ .ct-combobox-with-textbox .el-input.is-focus .el-input__inner {
238
+ border: 1px solid #409EFF !important;
239
+ }
240
+ </style>
@@ -1,11 +1,11 @@
1
- import dynamicD from './src/dynamicD'
2
-
3
- dynamicD.install = function (Vue) {
4
- Vue.component(dynamicD.name, dynamicD);
5
- }
6
-
7
- if (typeof window !== 'undefined' && window.Vue) {
8
- window.Vue.use(dynamicD);
9
- }
10
-
11
- export default dynamicD;
1
+ import dynamicD from './src/dynamicD'
2
+
3
+ dynamicD.install = function (Vue) {
4
+ Vue.component(dynamicD.name, dynamicD);
5
+ }
6
+
7
+ if (typeof window !== 'undefined' && window.Vue) {
8
+ window.Vue.use(dynamicD);
9
+ }
10
+
11
+ export default dynamicD;