meixioacomponent 0.1.0

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 (128) hide show
  1. package/README.md +19 -0
  2. package/babel.config.js +5 -0
  3. package/lib/demo.html +10 -0
  4. package/lib/meixicomponent.common.js +40065 -0
  5. package/lib/meixicomponent.common.js.map +1 -0
  6. package/lib/meixicomponent.css +1 -0
  7. package/lib/meixicomponent.umd.js +40075 -0
  8. package/lib/meixicomponent.umd.js.map +1 -0
  9. package/lib/meixicomponent.umd.min.js +20 -0
  10. package/lib/meixicomponent.umd.min.js.map +1 -0
  11. package/package.json +37 -0
  12. package/packages/components/base/baseAnchor/baseAnchor.vue +156 -0
  13. package/packages/components/base/baseAnchor/index.js +6 -0
  14. package/packages/components/base/baseAppendix/baseAppendix.vue +78 -0
  15. package/packages/components/base/baseAppendix/index.js +7 -0
  16. package/packages/components/base/baseArea/area.js +14978 -0
  17. package/packages/components/base/baseArea/areaConfig.js +6 -0
  18. package/packages/components/base/baseArea/baseArea.vue +531 -0
  19. package/packages/components/base/baseArea/index.js +7 -0
  20. package/packages/components/base/baseAvatar/baseAvatar.vue +101 -0
  21. package/packages/components/base/baseAvatar/index.js +6 -0
  22. package/packages/components/base/baseButtonHandle/baseButtonHandle.vue +64 -0
  23. package/packages/components/base/baseButtonHandle/index.js +6 -0
  24. package/packages/components/base/baseDefaultSvg/baseDefaultSvg.vue +52 -0
  25. package/packages/components/base/baseDefaultSvg/index.js +7 -0
  26. package/packages/components/base/baseDialog/index.js +7 -0
  27. package/packages/components/base/baseDialog/index.vue +146 -0
  28. package/packages/components/base/baseDialogTable/dialogTable.vue +186 -0
  29. package/packages/components/base/baseDialogTable/index.js +7 -0
  30. package/packages/components/base/baseDrawer/index.js +8 -0
  31. package/packages/components/base/baseDrawer/index.vue +196 -0
  32. package/packages/components/base/baseEdito/baseEdito.vue +202 -0
  33. package/packages/components/base/baseEdito/index.js +6 -0
  34. package/packages/components/base/baseFixedHeader/baseFixedHeader.vue +168 -0
  35. package/packages/components/base/baseFixedHeader/index.js +6 -0
  36. package/packages/components/base/baseIcon/index.js +6 -0
  37. package/packages/components/base/baseIcon/index.vue +146 -0
  38. package/packages/components/base/baseImageViewer/image-viewer.vue +348 -0
  39. package/packages/components/base/baseImageViewer/index.js +7 -0
  40. package/packages/components/base/baseImg/baseImg.vue +160 -0
  41. package/packages/components/base/baseImg/index.js +6 -0
  42. package/packages/components/base/baseInforWrap/baseInforWrap.vue +66 -0
  43. package/packages/components/base/baseInforWrap/index.js +6 -0
  44. package/packages/components/base/baseLineInfoGroup/baseLineInfoGroup.vue +93 -0
  45. package/packages/components/base/baseLineInfoGroup/index.js +6 -0
  46. package/packages/components/base/baseLineInfoItem/baseLineInfoItem.vue +173 -0
  47. package/packages/components/base/baseLineInfoItem/index.js +6 -0
  48. package/packages/components/base/basePageHeader/basePageHeader.vue +55 -0
  49. package/packages/components/base/basePageHeader/index.js +6 -0
  50. package/packages/components/base/basePagination/index.js +6 -0
  51. package/packages/components/base/basePagination/index.vue +75 -0
  52. package/packages/components/base/basePlainTable/basePlainTable.vue +90 -0
  53. package/packages/components/base/basePlainTable/index.js +6 -0
  54. package/packages/components/base/baseSection/baseSection.vue +121 -0
  55. package/packages/components/base/baseSection/index.js +6 -0
  56. package/packages/components/base/baseSkeleton/baseSkeleton.vue +147 -0
  57. package/packages/components/base/baseSkeleton/index.js +6 -0
  58. package/packages/components/base/baseSvg/index.js +7 -0
  59. package/packages/components/base/baseSvg/index.vue +66 -0
  60. package/packages/components/base/baseTimeTypeSelect/base_time_type_select.vue +293 -0
  61. package/packages/components/base/baseTimeTypeSelect/config.js +47 -0
  62. package/packages/components/base/baseTimeTypeSelect/index.js +6 -0
  63. package/packages/components/base/baseToggle/index.js +7 -0
  64. package/packages/components/base/baseToggle/toggle.vue +131 -0
  65. package/packages/components/base/baseUpload/baseUpload.js +6 -0
  66. package/packages/components/base/baseUpload/baseUpload.vue +111 -0
  67. package/packages/components/base/baseUpload/baseUploadItem.js +6 -0
  68. package/packages/components/base/baseUpload/baseUploadItem.vue +205 -0
  69. package/packages/components/base/baseUpload/mixins.js +46 -0
  70. package/packages/components/base/brieflyItem.vue +198 -0
  71. package/packages/components/base/upload/index.js +6 -0
  72. package/packages/components/base/upload/upload.vue +245 -0
  73. package/packages/components/base/upload/uploadItem.vue +157 -0
  74. package/packages/components/dynamicmount/DynamicMount.js +55 -0
  75. package/packages/components/dynamicmount/dynamicMount.vue +95 -0
  76. package/packages/components/dynamicmount/index.js +46 -0
  77. package/packages/components/index.js +114 -0
  78. package/packages/components/proForm/dialogForm/baseDialogForm.vue +163 -0
  79. package/packages/components/proForm/dialogForm/dialogFormIndex.js +6 -0
  80. package/packages/components/proForm/proForm/index.js +6 -0
  81. package/packages/components/proForm/proForm/pro_form.vue +279 -0
  82. package/packages/components/proForm/proForm/pro_form_item.vue +459 -0
  83. package/packages/components/proForm/proFormWrap/index.js +6 -0
  84. package/packages/components/proForm/proFormWrap/pro_form_wrap.vue +83 -0
  85. package/packages/components/proPageTable/index.js +6 -0
  86. package/packages/components/proPageTable/oa_pro-table-search.vue +190 -0
  87. package/packages/components/proPageTable/oa_pro_colum_config.vue +219 -0
  88. package/packages/components/proPageTable/oa_pro_footer.vue +104 -0
  89. package/packages/components/proPageTable/oa_pro_header.vue +31 -0
  90. package/packages/components/proPageTable/oa_pro_screen.vue +81 -0
  91. package/packages/components/proPageTable/oa_pro_screen_item.vue +174 -0
  92. package/packages/components/proPageTable/oa_pro_table-header.vue +150 -0
  93. package/packages/components/proPageTable/oa_pro_table.vue +804 -0
  94. package/packages/components/proPageTable/oa_pro_table_skeleton.vue +33 -0
  95. package/packages/components/searchHeader/searchHeader.vue +118 -0
  96. package/packages/config/selectStore/SelectStore.js +24 -0
  97. package/packages/config/selectStore/UseSelectStoreClass.js +27 -0
  98. package/packages/config/selectStore/testSelectStore.js +40 -0
  99. package/packages/config/uploadRequest.js +66 -0
  100. package/packages/config/use/UseImg.js +39 -0
  101. package/packages/config/use/UseSelectStore.js +2 -0
  102. package/packages/config/use/UseUpload.js +47 -0
  103. package/packages/config/use/useFixedHeader.js +36 -0
  104. package/packages/utils/upload.js +35 -0
  105. package/packages/utils/uploadRequest.js +66 -0
  106. package/packages/utils/utils.js +186 -0
  107. package/public/favicon.ico +0 -0
  108. package/public/img/icons/android-chrome-192x192.png +0 -0
  109. package/public/img/icons/android-chrome-512x512.png +0 -0
  110. package/public/img/icons/android-chrome-maskable-192x192.png +0 -0
  111. package/public/img/icons/android-chrome-maskable-512x512.png +0 -0
  112. package/public/img/icons/apple-touch-icon-120x120.png +0 -0
  113. package/public/img/icons/apple-touch-icon-152x152.png +0 -0
  114. package/public/img/icons/apple-touch-icon-180x180.png +0 -0
  115. package/public/img/icons/apple-touch-icon-60x60.png +0 -0
  116. package/public/img/icons/apple-touch-icon-76x76.png +0 -0
  117. package/public/img/icons/apple-touch-icon.png +0 -0
  118. package/public/img/icons/favicon-16x16.png +0 -0
  119. package/public/img/icons/favicon-32x32.png +0 -0
  120. package/public/img/icons/msapplication-icon-144x144.png +0 -0
  121. package/public/img/icons/mstile-150x150.png +0 -0
  122. package/public/img/icons/safari-pinned-tab.svg +3 -0
  123. package/public/index.html +17 -0
  124. package/public/robots.txt +2 -0
  125. package/src/assets/logo.png +0 -0
  126. package/src/main.js +9 -0
  127. package/src/router/index.js +29 -0
  128. package/src/store/index.js +15 -0
@@ -0,0 +1,459 @@
1
+ <template>
2
+ <div
3
+ :class="{
4
+ 'form-item-wrap': true,
5
+ disabled: config.disabled,
6
+ }"
7
+ >
8
+ <div class="item-content" v-if="!isEdit">
9
+ <span
10
+ v-if="!spContentType"
11
+ class="content-value"
12
+ @click="handleClick('content')"
13
+ :class="[`${config.click ? 'click' : config.color}`]"
14
+ >{{ contentValue }}</span
15
+ >
16
+
17
+ <!-- 单选框 -->
18
+ <el-radio-group
19
+ v-model="module"
20
+ disabled
21
+ size="mini"
22
+ v-if="config.type == 'radio'"
23
+ >
24
+ <el-radio-button
25
+ :key="index"
26
+ :label="item.value"
27
+ v-for="(item, index) in config.list"
28
+ >{{ item.label }}</el-radio-button
29
+ >
30
+ </el-radio-group>
31
+
32
+ <!-- checkbox多选框 -->
33
+ <el-checkbox-group
34
+ :min="checkMin"
35
+ :max="checkMax"
36
+ v-model="module"
37
+ style="width: 100%"
38
+ v-else-if="config.type == 'checkbox'"
39
+ >
40
+ <el-checkbox
41
+ v-for="(item, index) in config.list"
42
+ :key="index"
43
+ :label="item"
44
+ disabled
45
+ >{{ item }}</el-checkbox
46
+ >
47
+ </el-checkbox-group>
48
+ <!-- textarea -->
49
+ <el-input
50
+ autosize
51
+ disabled
52
+ type="textarea"
53
+ v-model="module"
54
+ v-if="config.type == 'textarea'"
55
+ >
56
+ </el-input>
57
+
58
+ <base-icon
59
+ :size="`s`"
60
+ :event="true"
61
+ :title="`修改`"
62
+ v-show="!isEdit && !config.disabled"
63
+ :name="`icon-edit`"
64
+ @iconClick="handleClick('edit')"
65
+ ></base-icon>
66
+ </div>
67
+ <div class="item-handle-wrap" :class="[`${config.type}`]" v-else>
68
+ <!-- input输入框 -->
69
+ <el-input
70
+ v-if="config.type == 'input'"
71
+ size="small"
72
+ v-model="module"
73
+ style="width: 100%; height: 100%"
74
+ >
75
+ </el-input>
76
+ <!-- 数字类型无小数 -->
77
+ <el-input-number
78
+ size="small"
79
+ v-else-if="config.type == 'number'"
80
+ v-model.number="module"
81
+ :controls="false"
82
+ ></el-input-number>
83
+ <!--数字类型两位小数 -->
84
+ <el-input-number
85
+ size="small"
86
+ :precision="2"
87
+ v-model.number="module"
88
+ :controls="false"
89
+ v-else-if="config.type == 'number2'"
90
+ ></el-input-number>
91
+ <!-- select选择器 -->
92
+ <el-select
93
+ size="small"
94
+ v-model="module"
95
+ placeholder="请选择"
96
+ :multiple="multiple"
97
+ :loading="selectLoading"
98
+ @visible-change="visibleChange"
99
+ style="width: 100%; height: 100%"
100
+ v-else-if="config.type == 'select'"
101
+ :multipleLimit="config.multipleLimit"
102
+ >
103
+ <el-option
104
+ v-for="item in selectData"
105
+ :key="item.value"
106
+ :label="item.label"
107
+ :value="item.value"
108
+ >
109
+ </el-option>
110
+ </el-select>
111
+ <!-- 时间选择器 -->
112
+ <el-date-picker
113
+ type="date"
114
+ align="right"
115
+ v-model="module"
116
+ size="small"
117
+ placeholder="选择日期"
118
+ value-format="timestamp"
119
+ :prefix-icon="`el-icon-time`"
120
+ style="width: 100%; height: 100%"
121
+ v-else-if="config.type == 'time'"
122
+ :picker-options="config.pickerOptions"
123
+ >
124
+ </el-date-picker>
125
+ <!-- 单选框 -->
126
+ <el-radio-group
127
+ v-model="module"
128
+ size="mini"
129
+ v-else-if="config.type == 'radio'"
130
+ >
131
+ <el-radio-button
132
+ :key="index"
133
+ :label="item.value"
134
+ v-for="(item, index) in config.list"
135
+ >{{ item.label }}</el-radio-button
136
+ >
137
+ </el-radio-group>
138
+ <!-- 选择器 -->
139
+ <el-checkbox-group
140
+ :min="checkMin"
141
+ :max="checkMax"
142
+ v-model="module"
143
+ style="width: 100%"
144
+ v-else-if="config.type == 'checkbox'"
145
+ >
146
+ <el-checkbox
147
+ :key="index"
148
+ :label="item"
149
+ v-for="(item, index) in config.list"
150
+ >{{ item }}</el-checkbox
151
+ >
152
+ </el-checkbox-group>
153
+ <!-- 文本输入框 -->
154
+ <el-input
155
+ autosize
156
+ type="textarea"
157
+ v-model="module"
158
+ v-if="config.type == 'textarea'"
159
+ >
160
+ </el-input>
161
+ <!-- 插槽 -->
162
+ <slot name="template" v-else-if="config.type == 'template'"></slot>
163
+ </div>
164
+ <!-- 确定的按钮 -->
165
+ <div class="bottom-handle-wrap" v-show="isEdit && !form">
166
+ <el-button
167
+ type="info"
168
+ size="small"
169
+ icon="el-icon-check"
170
+ class="dropdown-button"
171
+ @click="handleClick('confirm')"
172
+ plain
173
+ ></el-button>
174
+ <el-button
175
+ type="info"
176
+ size="small"
177
+ icon="el-icon-close"
178
+ class="dropdown-button"
179
+ @click="handleClick('edit')"
180
+ plain
181
+ ></el-button>
182
+ </div>
183
+ </div>
184
+ </template>
185
+
186
+ <script>
187
+ import { FilterTime } from "../../../utils/utils";
188
+ //
189
+ import UseSelectStore from "../../../config/use/UseSelectStore";
190
+ export default {
191
+ data() {
192
+ return {
193
+ isEdit: false,
194
+ oldValue: null,
195
+ };
196
+ },
197
+ created() {
198
+ this.init();
199
+ },
200
+ props: {
201
+ config: {
202
+ type: Object,
203
+ },
204
+
205
+ form: {
206
+ type: Boolean,
207
+ default: false,
208
+ },
209
+
210
+ value: {},
211
+ },
212
+
213
+ computed: {
214
+ multiple() {
215
+ return this.$props.config.multipleLimit ? true : false;
216
+ },
217
+ selectLoading() {
218
+ return this.selectStore.getLoading();
219
+ },
220
+ selectStore() {
221
+ // console.log()
222
+ return UseSelectStore.getStore(this.$props.config.useStore);
223
+ },
224
+
225
+ selectData() {
226
+ return this.selectStore.getData();
227
+ },
228
+
229
+ spContentType() {
230
+ let configType = this.$props.config.type;
231
+ if (
232
+ configType == "radio" ||
233
+ configType == "label" ||
234
+ configType == "checkbox" ||
235
+ configType == "textarea"
236
+ ) {
237
+ return true;
238
+ }
239
+ return false;
240
+ },
241
+ contentValue() {
242
+ let type = this.$props.config.type;
243
+ switch (type) {
244
+ case "input":
245
+ case "textarea":
246
+ return this.module;
247
+
248
+ case "select":
249
+ let list = this.selectData;
250
+ if (list.length > 0) {
251
+ if (!this.multiple) {
252
+ let index = list.findIndex((item) => {
253
+ return item.value == this.module;
254
+ });
255
+ return list[index].label;
256
+ } else {
257
+ let text = "";
258
+ this.module.forEach((item) => {
259
+ let index = list.findIndex((citem) => {
260
+ return citem.value == item;
261
+ });
262
+
263
+ text += text ? ` / ${list[index].label}` : list[index].label;
264
+ });
265
+ return text;
266
+ }
267
+ } else {
268
+ this.loadSelectData();
269
+ return this.$props.config.value;
270
+ }
271
+
272
+ case "time":
273
+ let config = this.$props.config;
274
+ let format = config.format ? config.format : "YYYY-MM-DD";
275
+ return FilterTime(this.module, format);
276
+ default:
277
+ return this.module;
278
+ }
279
+ },
280
+ type() {
281
+ return this.$props.config.type;
282
+ },
283
+
284
+ checkMax() {
285
+ let max = this.$props.config.max;
286
+ return max ? max : this.$props.config.list.length;
287
+ },
288
+
289
+ checkMin() {
290
+ let min = this.$props.config.min;
291
+ return min < 0 || min == undefined || min == null ? 0 : min;
292
+ },
293
+ module: {
294
+ get() {
295
+ let type = this.$props.config.type;
296
+ if (type == "select") {
297
+ if (this.selectData.length <= 0) {
298
+ this.loadSelectData();
299
+ }
300
+ }
301
+
302
+ return this.$props.value;
303
+ },
304
+ set(val) {
305
+ this.$emit("input", val);
306
+ },
307
+ },
308
+ },
309
+ methods: {
310
+ init() {
311
+ if (this.$props.form) {
312
+ this.isEdit = true;
313
+ }
314
+ },
315
+ handleContent() {
316
+ if (this.$props.config.click) {
317
+ this.$props.config.click(this.$props.config);
318
+ }
319
+ },
320
+ handleClick(type) {
321
+ switch (type) {
322
+ case "edit":
323
+ this.isEdit = !this.isEdit;
324
+ if (this.isEdit) {
325
+ this.oldValue = this.value;
326
+ } else {
327
+ this.module = this.oldValue;
328
+ this.oldValue = null;
329
+ }
330
+ break;
331
+ case "content":
332
+ this.handleContent();
333
+ break;
334
+ case "confirm":
335
+ this.$emit("formItemConfirm", {
336
+ this: this,
337
+ config: this.$props.config,
338
+ });
339
+ break;
340
+ default:
341
+ break;
342
+ }
343
+ },
344
+ handleConfirm() {
345
+ this.isEdit = false;
346
+ },
347
+ loadSelectData() {
348
+ this.selectStore.loadData();
349
+ },
350
+ visibleChange(visible) {
351
+ if (!visible) return;
352
+ if (this.selectData.length > 0) return;
353
+ this.loadSelectData();
354
+ },
355
+ },
356
+ };
357
+ </script>
358
+
359
+ <style lang="less" scoped>
360
+ .form-item-wrap {
361
+ width: 100%;
362
+ height: auto;
363
+ position: relative;
364
+ border-radius: calc(var(--radius) * 2);
365
+ .item-content {
366
+ display: flex;
367
+ min-height: 32px;
368
+ align-items: center;
369
+ flex-flow: row nowrap;
370
+ box-sizing: border-box;
371
+ border-radius: inherit;
372
+ background: var(--color-gray-s);
373
+ justify-content: space-between;
374
+ border: 2px solid var(--font-color-ds);
375
+ padding: var(--padding-1) var(--padding-3);
376
+
377
+ &:hover {
378
+ /deep/ .base-icon-wrap {
379
+ visibility: visible;
380
+ }
381
+ }
382
+ /deep/ .base-icon-wrap {
383
+ width: 24px;
384
+ height: 24px;
385
+ visibility: hidden;
386
+ }
387
+ .content-value {
388
+ display: inline-block;
389
+ color: var(--font-color-d);
390
+ font-size: var(--font-size-s);
391
+ font-weight: var(--font-weight-g);
392
+ }
393
+ .warn {
394
+ color: var(--color-warn);
395
+ }
396
+ .error {
397
+ color: var(--color-error);
398
+ }
399
+ .success {
400
+ color: var(--color-success);
401
+ }
402
+ .click {
403
+ cursor: pointer;
404
+ font-weight: var(--font-weight-kg);
405
+ color: var(--color-primary) !important;
406
+ &:hover {
407
+ text-decoration: underline;
408
+ }
409
+ }
410
+ }
411
+ .item-handle-wrap {
412
+ width: 100%;
413
+ min-height: 32px;
414
+ border-radius: inherit;
415
+ /deep/ .el-input__inner {
416
+ font-weight: var(--font-weight-kg) !important;
417
+ }
418
+ /deep/ .el-input__prefix {
419
+ i {
420
+ font-weight: var(--font-weight-kg) !important;
421
+ }
422
+ }
423
+ }
424
+
425
+ .radio,
426
+ .checkbox,
427
+ .template,
428
+ .textarea {
429
+ box-sizing: border-box;
430
+ background: var(--hover-gray);
431
+ border: 2px solid var(--color-border);
432
+ padding: var(--padding-1) var(--padding-3);
433
+ }
434
+
435
+ .bottom-handle-wrap {
436
+ z-index: 2;
437
+ right: 0px;
438
+ width: auto;
439
+ height: auto;
440
+ display: flex;
441
+ bottom: -10px;
442
+ position: absolute;
443
+ align-items: center;
444
+ flex-flow: row nowrap;
445
+ transform: translateY(100%);
446
+ justify-content: space-between;
447
+ .dropdown-button {
448
+ box-shadow: var(--shadow);
449
+ }
450
+ }
451
+ }
452
+ .disabled {
453
+ cursor: not-allowed !important;
454
+
455
+ .content-value {
456
+ color: var(--font-color-ds) !important;
457
+ }
458
+ }
459
+ </style>
@@ -0,0 +1,6 @@
1
+ import proFormWrap from "./pro_form_wrap.vue";
2
+
3
+ proFormWrap.install = function (Vue) {
4
+ Vue.component(proFormWrap.name, proFormWrap);
5
+ };
6
+ export default proFormWrap;
@@ -0,0 +1,83 @@
1
+ <template>
2
+ <div class="pro-form-wrap">
3
+ <baseSectionVue :headerText="formTitle" v-model="sectionOpen">
4
+ <base-icon :name="iconClass" :size="`l`" slot="header-prefix"></base-icon>
5
+ <template slot="sectionContent">
6
+ <pro_formVue
7
+ ref="proForm"
8
+ :form="false"
9
+ :rules="rules"
10
+ :footer="false"
11
+ :formList="formList"
12
+ :labelWidth="labelWidth"
13
+ @formItemConfirm="formItemConfirm"
14
+ ></pro_formVue> </template
15
+ ></baseSectionVue>
16
+ </div>
17
+ </template>
18
+
19
+ <script>
20
+ import pro_formVue from "../proForm/pro_form.vue";
21
+ import baseSectionVue from "../../base/baseSection/baseSection.vue";
22
+ export default {
23
+ name: "baseFormWrap",
24
+ data() {
25
+ return {
26
+ sectionOpen: true,
27
+ };
28
+ },
29
+ props: {
30
+ formTitle: {
31
+ type: String,
32
+ require: true,
33
+ },
34
+
35
+ labelWidth: {
36
+ type: String,
37
+ default: "100px",
38
+ },
39
+
40
+ formList: {
41
+ type: Array,
42
+ },
43
+
44
+ rules: {
45
+ type: Object,
46
+ },
47
+ },
48
+ computed: {
49
+ iconClass() {
50
+ if (this.sectionOpen) {
51
+ return "icon-shouqi";
52
+ }
53
+ return "icon-xiala";
54
+ },
55
+ },
56
+ components: {
57
+ pro_formVue,
58
+ baseSectionVue,
59
+ },
60
+ methods: {
61
+ formItemConfirm(configItem) {
62
+ this.$emit("formItemConfirm", configItem);
63
+ },
64
+
65
+ getFormValue() {
66
+ return this.$refs.proForm.returnFormValue();
67
+ },
68
+ },
69
+ };
70
+ </script>
71
+
72
+ <style lang="less" scoped>
73
+ .pro-form-wrap {
74
+ width: 100%;
75
+ height: auto;
76
+ margin-bottom: var(--margin-5);
77
+ .pro-form-wrap-header {
78
+ width: 100%;
79
+ height: auto;
80
+ background: var(--hover-gray);
81
+ }
82
+ }
83
+ </style>
@@ -0,0 +1,6 @@
1
+ import baseProTable from "./oa_pro_table.vue";
2
+
3
+ baseProTable.install = function (Vue) {
4
+ Vue.component(baseProTable.name, baseProTable);
5
+ };
6
+ export default baseProTable;