tenghui-ui 1.0.1 → 1.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.
- package/README.md +21 -6
- package/dist/style.css +1 -0
- package/dist/tenghui-ui.es.js +613 -13
- package/dist/tenghui-ui.es.js.map +1 -1
- package/dist/tenghui-ui.umd.js +1 -1
- package/dist/tenghui-ui.umd.js.map +1 -1
- package/package.json +3 -2
- package/src/config/index.ts +5 -0
- package/src/main.ts +56 -0
- package/src/theme/index.less +20 -0
package/README.md
CHANGED
|
@@ -1,11 +1,26 @@
|
|
|
1
|
-
#
|
|
1
|
+
# tenghui-ui
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
#### 介绍
|
|
4
|
+
前端组件库
|
|
4
5
|
|
|
5
|
-
|
|
6
|
+
#### 软件架构
|
|
7
|
+
软件架构说明
|
|
6
8
|
|
|
7
|
-
- [VSCode](https://code.visualstudio.com/) + [Volar](https://marketplace.visualstudio.com/items?itemName=johnsoncodehk.volar)
|
|
8
9
|
|
|
9
|
-
|
|
10
|
+
#### 安装教程
|
|
10
11
|
|
|
11
|
-
|
|
12
|
+
1. npm i
|
|
13
|
+
2. npm run dev 启动调试
|
|
14
|
+
3. npm run build 发布
|
|
15
|
+
|
|
16
|
+
#### 使用说明
|
|
17
|
+
|
|
18
|
+
1. 组件按packages/template 模板开发
|
|
19
|
+
2. 开发好的组件通过views配置测试组件界面
|
|
20
|
+
|
|
21
|
+
#### 参与贡献
|
|
22
|
+
|
|
23
|
+
1. Fork 本仓库
|
|
24
|
+
2. 新建 Feat_xxx 分支
|
|
25
|
+
3. 提交代码
|
|
26
|
+
4. 新建 Pull Request
|
package/dist/style.css
CHANGED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
.el-menu[data-v-1a7163e6]{width:100%;height:60px!important}.el-submenu .el-menu-item[data-v-1a7163e6]{min-width:unset}.el-submenu__title i[data-v-1a7163e6]{color:unset}.ui-tabs[data-v-65888dc2]{border-bottom:1px solid #ebeef5;padding:0 10px;height:40px;background-color:#fff}.ui-tabs__item[data-v-65888dc2]{float:left;height:31px;border-radius:6px 6px 0 0;border:1px solid #ebeef5;margin-top:10px;box-sizing:border-box;font-size:12px;line-height:30px;padding:0 10px;color:#c0c4cc;cursor:pointer;border-bottom-color:#fff;margin-right:1px;position:relative;transition:all .1s linear}.ui-tabs__item:hover .el-icon-error[data-v-65888dc2]{opacity:1}.ui-tabs__item .el-icon-error[data-v-65888dc2]{position:absolute;right:2px;top:50%;margin-top:-5px;opacity:0;transition:all .1s linear}.ui-tabs__item .el-icon-error[data-v-65888dc2]:hover{color:#409effcc}.ui-tabs__item--active[data-v-65888dc2]{color:#409effcc;padding-right:20px}.ui-tabs__item--active .el-icon-error[data-v-65888dc2]{top:50%;right:5px;font-size:14px;margin-top:-5px;opacity:1}.el-icon-s-tools[data-v-b586e068]{font-size:20px;color:#fff;line-height:60px;margin-right:20px;cursor:pointer}[data-v-613d84c4] .el-dialog__header{border-bottom:1px solid #ededed}[data-v-613d84c4] .el-dialog__header .el-dialog__title{font-size:16px}[data-v-613d84c4] .el-dialog__footer{border-top:1px solid #ededed}[data-v-613d84c4] .el-dialog__body .el-select,[data-v-613d84c4] .el-dialog__body .el-input,[data-v-613d84c4] .el-dialog__body .el-input-number{width:240px}[data-v-613d84c4] .el-dialog__body .el-input-number .el-input__inner{text-align:left}[data-v-613d84c4] .el-dialog__body .ui-item__main{width:100%}[data-v-613d84c4] .el-dialog__body .el-form-item__label{font-size:12px}[data-v-613d84c4] .el-dialog__body .el-input--small .el-input__icon{height:32px}.ui-form__item[data-v-07b0bd64]{display:flex;align-items:center;margin-right:15px}.ui-item__label[data-v-07b0bd64]{margin-right:10px;font-size:12px;width:70px;text-align:right}.ui-operation[data-v-3c6cb9f6]{padding:0 10px}.ui-search[data-v-07c7d454]{margin:10px 10px 0;padding:20px;background-color:#fff;border:1px solid #ebeef5;border-radius:4px}.ui-search__main[data-v-07c7d454]{display:flex}.ui-search__footer[data-v-07c7d454]{margin-top:10px}.ui-search[data-v-07c7d454] .ui-form__item{display:block}.ui-search[data-v-07c7d454] .ui-item__label{width:unset;text-align:left;margin-bottom:5px}.ui-table[data-v-54b3bd8e]{padding:0 10px}.el-table[data-v-54b3bd8e] .el-table__body ::-webkit-scrollbar{width:4px;background-color:#e4e4e5}.el-table[data-v-54b3bd8e] .el-table__body ::-webkit-scrollbar-thumb{border-radius:4px;background-color:#409eff}.ui-pagination[data-v-54b3bd8e]{text-align:center;padding:10px 0}
|
package/dist/tenghui-ui.es.js
CHANGED
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
var render = function() {
|
|
1
|
+
var render$8 = function() {
|
|
2
2
|
var _vm = this;
|
|
3
3
|
var _h = _vm.$createElement;
|
|
4
4
|
var _c = _vm._self._c || _h;
|
|
5
|
-
return _c("div", { staticClass: "ui-template" }, [_c("h1", [_vm._v(_vm._s(_vm.msg))])]);
|
|
5
|
+
return _c("div", { staticClass: "ui-template" }, [_c("h1", [_vm._v(_vm._s(_vm.msg))]), _c("el-table", { staticStyle: { "width": "100%" }, attrs: { "data": _vm.tableData } }, [_c("el-table-column", { attrs: { "prop": "date", "label": "\u65E5\u671F", "width": "180" } }), _c("el-table-column", { attrs: { "prop": "name", "label": "\u59D3\u540D", "width": "180" } }), _c("el-table-column", { attrs: { "prop": "address", "label": "\u5730\u5740" } })], 1)], 1);
|
|
6
6
|
};
|
|
7
|
-
var staticRenderFns = [];
|
|
8
|
-
var index_vue_vue_type_style_index_0_scoped_true_lang = "";
|
|
7
|
+
var staticRenderFns$8 = [];
|
|
8
|
+
var index_vue_vue_type_style_index_0_scoped_true_lang$8 = "";
|
|
9
9
|
function normalizeComponent(scriptExports, render2, staticRenderFns2, functionalTemplate, injectStyles, scopeId, moduleIdentifier, shadowMode) {
|
|
10
10
|
var options = typeof scriptExports === "function" ? scriptExports.options : scriptExports;
|
|
11
11
|
if (render2) {
|
|
@@ -57,31 +57,623 @@ function normalizeComponent(scriptExports, render2, staticRenderFns2, functional
|
|
|
57
57
|
options
|
|
58
58
|
};
|
|
59
59
|
}
|
|
60
|
-
const __vue2_script = {
|
|
60
|
+
const __vue2_script$8 = {
|
|
61
61
|
name: "ComTemplate",
|
|
62
62
|
data() {
|
|
63
63
|
return {
|
|
64
|
-
msg: "\u6D4B\u8BD5\u7EC4\
|
|
64
|
+
msg: "\u6D4B\u8BD5\u7EC4\u4EF611111",
|
|
65
|
+
tableData: [{
|
|
66
|
+
date: "2016-05-02",
|
|
67
|
+
name: "\u738B\u5C0F\u864E",
|
|
68
|
+
address: "\u4E0A\u6D77\u5E02\u666E\u9640\u533A\u91D1\u6C99\u6C5F\u8DEF 1518 \u5F04"
|
|
69
|
+
}, {
|
|
70
|
+
date: "2016-05-04",
|
|
71
|
+
name: "\u738B\u5C0F\u864E",
|
|
72
|
+
address: "\u4E0A\u6D77\u5E02\u666E\u9640\u533A\u91D1\u6C99\u6C5F\u8DEF 1517 \u5F04"
|
|
73
|
+
}, {
|
|
74
|
+
date: "2016-05-01",
|
|
75
|
+
name: "\u738B\u5C0F\u864E",
|
|
76
|
+
address: "\u4E0A\u6D77\u5E02\u666E\u9640\u533A\u91D1\u6C99\u6C5F\u8DEF 1519 \u5F04"
|
|
77
|
+
}, {
|
|
78
|
+
date: "2016-05-03",
|
|
79
|
+
name: "\u738B\u5C0F\u864E",
|
|
80
|
+
address: "\u4E0A\u6D77\u5E02\u666E\u9640\u533A\u91D1\u6C99\u6C5F\u8DEF 1516 \u5F04"
|
|
81
|
+
}]
|
|
65
82
|
};
|
|
66
83
|
},
|
|
67
84
|
methods: {}
|
|
68
85
|
};
|
|
86
|
+
const __cssModules$8 = {};
|
|
87
|
+
var __component__$8 = /* @__PURE__ */ normalizeComponent(__vue2_script$8, render$8, staticRenderFns$8, false, __vue2_injectStyles$8, "183fe45a", null, null);
|
|
88
|
+
function __vue2_injectStyles$8(context) {
|
|
89
|
+
for (let o in __cssModules$8) {
|
|
90
|
+
this[o] = __cssModules$8[o];
|
|
91
|
+
}
|
|
92
|
+
}
|
|
93
|
+
var ComTemplate = /* @__PURE__ */ function() {
|
|
94
|
+
return __component__$8.exports;
|
|
95
|
+
}();
|
|
96
|
+
ComTemplate.install = (app) => {
|
|
97
|
+
app.component(ComTemplate.name, ComTemplate);
|
|
98
|
+
};
|
|
99
|
+
const InComTemplate = ComTemplate;
|
|
100
|
+
var render$7 = function() {
|
|
101
|
+
var _vm = this;
|
|
102
|
+
var _h = _vm.$createElement;
|
|
103
|
+
var _c = _vm._self._c || _h;
|
|
104
|
+
return _c("el-menu", { attrs: { "mode": "horizontal", "background-color": "#545c64", "text-color": "#ccc", "active-text-color": "#FFF", "menu-trigger": "hover", "default-active": _vm.$route.path }, on: { "select": _vm.handleJump } }, [_vm._l(_vm.data, function(item, index) {
|
|
105
|
+
return [item.children ? _c("el-submenu", { attrs: { "index": item.path || item.name } }, [_c("template", { slot: "title" }, [_c("i", { staticClass: "icon-chanpinguanli-chanpinliebiao" }), _c("span", [_vm._v(_vm._s(item.name))])]), _vm._l(item.children, function(_item, _index) {
|
|
106
|
+
return [_item.children ? _c("el-submenu", { attrs: { "index": _item.path || _item.name } }, [_c("template", { slot: "title" }, [_vm._v(_vm._s(_item.name))]), _vm._l(_item.children, function(__item, __index) {
|
|
107
|
+
return _c("el-menu-item", { key: __item.name, attrs: { "index": __item.path || __item.name } }, [_vm._v(_vm._s(__item.name))]);
|
|
108
|
+
})], 2) : _c("el-menu-item", { attrs: { "index": _item.path || _item.name } }, [_vm._v(_vm._s(_item.name))])];
|
|
109
|
+
})], 2) : _c("el-menu-item", { attrs: { "index": item.path || item.name } }, [_c("i", { staticClass: "el-icon-menu" }), _c("span", { attrs: { "slot": "title" }, slot: "title" }, [_vm._v(_vm._s(item.name))])])];
|
|
110
|
+
})], 2);
|
|
111
|
+
};
|
|
112
|
+
var staticRenderFns$7 = [];
|
|
113
|
+
var index_vue_vue_type_style_index_0_scoped_true_lang$7 = "";
|
|
114
|
+
const __vue2_script$7 = {
|
|
115
|
+
name: "ComMenu",
|
|
116
|
+
props: {
|
|
117
|
+
data: {
|
|
118
|
+
type: Array,
|
|
119
|
+
default() {
|
|
120
|
+
return [];
|
|
121
|
+
}
|
|
122
|
+
}
|
|
123
|
+
},
|
|
124
|
+
data() {
|
|
125
|
+
return {};
|
|
126
|
+
},
|
|
127
|
+
computed: {},
|
|
128
|
+
methods: {
|
|
129
|
+
handleJump(path) {
|
|
130
|
+
this.$emit("jump", path);
|
|
131
|
+
}
|
|
132
|
+
}
|
|
133
|
+
};
|
|
134
|
+
const __cssModules$7 = {};
|
|
135
|
+
var __component__$7 = /* @__PURE__ */ normalizeComponent(__vue2_script$7, render$7, staticRenderFns$7, false, __vue2_injectStyles$7, "1a7163e6", null, null);
|
|
136
|
+
function __vue2_injectStyles$7(context) {
|
|
137
|
+
for (let o in __cssModules$7) {
|
|
138
|
+
this[o] = __cssModules$7[o];
|
|
139
|
+
}
|
|
140
|
+
}
|
|
141
|
+
var ComComponent$7 = /* @__PURE__ */ function() {
|
|
142
|
+
return __component__$7.exports;
|
|
143
|
+
}();
|
|
144
|
+
ComComponent$7.install = (app) => {
|
|
145
|
+
app.component(ComComponent$7.name, ComComponent$7);
|
|
146
|
+
};
|
|
147
|
+
const InComComponent$7 = ComComponent$7;
|
|
148
|
+
var render$6 = function() {
|
|
149
|
+
var _vm = this;
|
|
150
|
+
var _h = _vm.$createElement;
|
|
151
|
+
var _c = _vm._self._c || _h;
|
|
152
|
+
return _c("div", { staticClass: "ui-tabs" }, [_c("ul", { staticClass: "clear-fix" }, _vm._l(_vm.data, function(item) {
|
|
153
|
+
return _c("li", { staticClass: "ui-tabs__item", class: { "ui-tabs__item--active": _vm.currentTab.path === item.path }, on: { "click": function($event) {
|
|
154
|
+
return _vm.handleToggle(item.path);
|
|
155
|
+
} } }, [_c("span", [_vm._v(_vm._s(item.name))]), _c("span", { staticClass: "el-icon-error" })]);
|
|
156
|
+
}), 0)]);
|
|
157
|
+
};
|
|
158
|
+
var staticRenderFns$6 = [];
|
|
159
|
+
var index_vue_vue_type_style_index_0_scoped_true_lang$6 = "";
|
|
160
|
+
const __vue2_script$6 = {
|
|
161
|
+
name: "ComTabs",
|
|
162
|
+
props: {
|
|
163
|
+
data: {
|
|
164
|
+
type: Array,
|
|
165
|
+
default() {
|
|
166
|
+
return [];
|
|
167
|
+
}
|
|
168
|
+
},
|
|
169
|
+
currentTab: {
|
|
170
|
+
type: Object,
|
|
171
|
+
default() {
|
|
172
|
+
return {};
|
|
173
|
+
}
|
|
174
|
+
}
|
|
175
|
+
},
|
|
176
|
+
data() {
|
|
177
|
+
return {};
|
|
178
|
+
},
|
|
179
|
+
methods: {
|
|
180
|
+
handleToggle(path) {
|
|
181
|
+
this.$emit("toggle", path);
|
|
182
|
+
}
|
|
183
|
+
}
|
|
184
|
+
};
|
|
185
|
+
const __cssModules$6 = {};
|
|
186
|
+
var __component__$6 = /* @__PURE__ */ normalizeComponent(__vue2_script$6, render$6, staticRenderFns$6, false, __vue2_injectStyles$6, "65888dc2", null, null);
|
|
187
|
+
function __vue2_injectStyles$6(context) {
|
|
188
|
+
for (let o in __cssModules$6) {
|
|
189
|
+
this[o] = __cssModules$6[o];
|
|
190
|
+
}
|
|
191
|
+
}
|
|
192
|
+
var ComComponent$6 = /* @__PURE__ */ function() {
|
|
193
|
+
return __component__$6.exports;
|
|
194
|
+
}();
|
|
195
|
+
ComComponent$6.install = (app) => {
|
|
196
|
+
app.component(ComComponent$6.name, ComComponent$6);
|
|
197
|
+
};
|
|
198
|
+
const InComComponent$6 = ComComponent$6;
|
|
199
|
+
var render$5 = function() {
|
|
200
|
+
var _vm = this;
|
|
201
|
+
var _h = _vm.$createElement;
|
|
202
|
+
var _c = _vm._self._c || _h;
|
|
203
|
+
return _c("el-dropdown", [_c("span", { staticClass: "el-dropdown-link" }, [_c("i", { staticClass: "el-icon-s-tools" })]), _c("el-dropdown-menu", { attrs: { "slot": "dropdown" }, slot: "dropdown" }, [_c("el-dropdown-item", { attrs: { "icon": "icon-tuichudenglu" }, on: { "click": function($event) {
|
|
204
|
+
return _vm.handleOperation("outLogin");
|
|
205
|
+
} } }, [_vm._v("\u9000\u51FA\u767B\u5F55")])], 1)], 1);
|
|
206
|
+
};
|
|
207
|
+
var staticRenderFns$5 = [];
|
|
208
|
+
var index_vue_vue_type_style_index_0_scoped_true_lang$5 = "";
|
|
209
|
+
const __vue2_script$5 = {
|
|
210
|
+
name: "ComTool",
|
|
211
|
+
methods: {
|
|
212
|
+
handleOperation(cmd) {
|
|
213
|
+
switch (cmd) {
|
|
214
|
+
case "outLogin":
|
|
215
|
+
this.$confirm("\u786E\u8BA4\u9000\u51FA\u767B\u5F55?", "\u63D0\u793A", {
|
|
216
|
+
type: "warning"
|
|
217
|
+
}).then(() => {
|
|
218
|
+
console.log("out login");
|
|
219
|
+
});
|
|
220
|
+
break;
|
|
221
|
+
}
|
|
222
|
+
}
|
|
223
|
+
}
|
|
224
|
+
};
|
|
225
|
+
const __cssModules$5 = {};
|
|
226
|
+
var __component__$5 = /* @__PURE__ */ normalizeComponent(__vue2_script$5, render$5, staticRenderFns$5, false, __vue2_injectStyles$5, "b586e068", null, null);
|
|
227
|
+
function __vue2_injectStyles$5(context) {
|
|
228
|
+
for (let o in __cssModules$5) {
|
|
229
|
+
this[o] = __cssModules$5[o];
|
|
230
|
+
}
|
|
231
|
+
}
|
|
232
|
+
var ComComponent$5 = /* @__PURE__ */ function() {
|
|
233
|
+
return __component__$5.exports;
|
|
234
|
+
}();
|
|
235
|
+
ComComponent$5.install = (app) => {
|
|
236
|
+
app.component(ComComponent$5.name, ComComponent$5);
|
|
237
|
+
};
|
|
238
|
+
const InComComponent$5 = ComComponent$5;
|
|
239
|
+
var render$4 = function() {
|
|
240
|
+
var _vm = this;
|
|
241
|
+
var _h = _vm.$createElement;
|
|
242
|
+
var _c = _vm._self._c || _h;
|
|
243
|
+
return _c("el-dialog", { attrs: { "append-to-body": "", "top": _vm.top, "title": _vm.title, "visible": _vm.visible, "width": _vm.width }, on: { "close": _vm.handleClose }, scopedSlots: _vm._u([{ key: "footer", fn: function() {
|
|
244
|
+
return [_vm._t("footer", [_c("el-button", { attrs: { "size": "small" }, on: { "click": function($event) {
|
|
245
|
+
return _vm.$emit("update:visible", false);
|
|
246
|
+
} } }, [_vm._v("\u53D6\u6D88")]), _c("el-button", { attrs: { "size": "small", "type": "primary" }, on: { "click": _vm.handleConfirm } }, [_vm._v("\u786E\u5B9A")])])];
|
|
247
|
+
}, proxy: true }], null, true) }, [_vm._t("default")], 2);
|
|
248
|
+
};
|
|
249
|
+
var staticRenderFns$4 = [];
|
|
250
|
+
var index_vue_vue_type_style_index_0_scoped_true_lang$4 = "";
|
|
251
|
+
const __vue2_script$4 = {
|
|
252
|
+
name: "ComDialog",
|
|
253
|
+
props: {
|
|
254
|
+
visible: {
|
|
255
|
+
type: Boolean,
|
|
256
|
+
default: false
|
|
257
|
+
},
|
|
258
|
+
title: {
|
|
259
|
+
type: String,
|
|
260
|
+
default: "\u6807\u9898"
|
|
261
|
+
},
|
|
262
|
+
width: {
|
|
263
|
+
type: String,
|
|
264
|
+
default: "600px"
|
|
265
|
+
},
|
|
266
|
+
top: {
|
|
267
|
+
type: String,
|
|
268
|
+
default: "50px"
|
|
269
|
+
}
|
|
270
|
+
},
|
|
271
|
+
data() {
|
|
272
|
+
return {
|
|
273
|
+
show: false
|
|
274
|
+
};
|
|
275
|
+
},
|
|
276
|
+
methods: {
|
|
277
|
+
handleClose() {
|
|
278
|
+
this.$emit("close");
|
|
279
|
+
this.$emit("update:visible", false);
|
|
280
|
+
},
|
|
281
|
+
handleConfirm() {
|
|
282
|
+
this.$emit("confirm");
|
|
283
|
+
}
|
|
284
|
+
}
|
|
285
|
+
};
|
|
286
|
+
const __cssModules$4 = {};
|
|
287
|
+
var __component__$4 = /* @__PURE__ */ normalizeComponent(__vue2_script$4, render$4, staticRenderFns$4, false, __vue2_injectStyles$4, "613d84c4", null, null);
|
|
288
|
+
function __vue2_injectStyles$4(context) {
|
|
289
|
+
for (let o in __cssModules$4) {
|
|
290
|
+
this[o] = __cssModules$4[o];
|
|
291
|
+
}
|
|
292
|
+
}
|
|
293
|
+
var ComComponent$4 = /* @__PURE__ */ function() {
|
|
294
|
+
return __component__$4.exports;
|
|
295
|
+
}();
|
|
296
|
+
ComComponent$4.install = (app) => {
|
|
297
|
+
app.component(ComComponent$4.name, ComComponent$4);
|
|
298
|
+
};
|
|
299
|
+
const InComComponent$4 = ComComponent$4;
|
|
300
|
+
var render$3 = function() {
|
|
301
|
+
var _vm = this;
|
|
302
|
+
var _h = _vm.$createElement;
|
|
303
|
+
var _c = _vm._self._c || _h;
|
|
304
|
+
return _c("div", { staticClass: "ui-form__item" }, [_c("div", [_vm._t("label", [_vm.label ? _c("div", { staticClass: "ui-item__label" }, [_c("span", [_vm._v(_vm._s(_vm.label))])]) : _vm._e()])], 2), _c("div", { staticClass: "ui-item__main" }, [_vm.type === "input" ? [_c("el-input", { attrs: { "size": "small", "placeholder": _vm.placeholder, "disabled": _vm.readonly, "maxlength": _vm.maxlength }, model: { value: _vm.modelForm, callback: function($$v) {
|
|
305
|
+
_vm.modelForm = $$v;
|
|
306
|
+
}, expression: "modelForm" } })] : _vm.type === "select" ? [_c("el-select", { attrs: { "size": "small", "placeholder": _vm.placeholder || "\u8BF7\u9009\u62E9", "multiple": _vm.multiple, "disabled": _vm.readonly, "filterable": "", "clearable": "" }, model: { value: _vm.modelForm, callback: function($$v) {
|
|
307
|
+
_vm.modelForm = $$v;
|
|
308
|
+
}, expression: "modelForm" } }, _vm._l(_vm.selectOption, function(item) {
|
|
309
|
+
return _c("el-option", { key: item.value, attrs: { "value": item.value.toString(), "label": item.label } });
|
|
310
|
+
}), 1)] : _vm.type === "textarea" ? [_c("el-input", { attrs: { "size": "small", "type": "textarea", "placeholder": _vm.placeholder || "\u8BF7\u8F93\u5165", "rows": 4, "disabled": _vm.readonly }, model: { value: _vm.modelForm, callback: function($$v) {
|
|
311
|
+
_vm.modelForm = $$v;
|
|
312
|
+
}, expression: "modelForm" } })] : _vm.type === "input-number" ? [_c("el-input-number", { attrs: { "size": "small", "controls-position": "right" }, model: { value: _vm.modelForm, callback: function($$v) {
|
|
313
|
+
_vm.modelForm = $$v;
|
|
314
|
+
}, expression: "modelForm" } })] : _vm.type === "cascader" ? [_c("el-cascader", { attrs: { "size": "small", "options": _vm.options, "props": _vm.props }, on: { "change": _vm.handleChange }, model: { value: _vm.modelForm, callback: function($$v) {
|
|
315
|
+
_vm.modelForm = $$v;
|
|
316
|
+
}, expression: "modelForm" } })] : _vm._e()], 2)]);
|
|
317
|
+
};
|
|
318
|
+
var staticRenderFns$3 = [];
|
|
319
|
+
var index_vue_vue_type_style_index_0_scoped_true_lang$3 = "";
|
|
320
|
+
const __vue2_script$3 = {
|
|
321
|
+
name: "ComFormItem",
|
|
322
|
+
model: {
|
|
323
|
+
prop: "model",
|
|
324
|
+
event: "changes"
|
|
325
|
+
},
|
|
326
|
+
props: {
|
|
327
|
+
model: void 0,
|
|
328
|
+
type: {
|
|
329
|
+
type: String,
|
|
330
|
+
default: "input"
|
|
331
|
+
},
|
|
332
|
+
label: {
|
|
333
|
+
type: String,
|
|
334
|
+
default: ""
|
|
335
|
+
},
|
|
336
|
+
readonly: {
|
|
337
|
+
type: Boolean,
|
|
338
|
+
default: false
|
|
339
|
+
},
|
|
340
|
+
placeholder: {
|
|
341
|
+
type: String,
|
|
342
|
+
default: ""
|
|
343
|
+
},
|
|
344
|
+
maxlength: {
|
|
345
|
+
type: [Array, String],
|
|
346
|
+
default: ""
|
|
347
|
+
},
|
|
348
|
+
multiple: {
|
|
349
|
+
type: Boolean,
|
|
350
|
+
default: false
|
|
351
|
+
},
|
|
352
|
+
options: {
|
|
353
|
+
type: [Object, Array],
|
|
354
|
+
default() {
|
|
355
|
+
return { "1": "\u9009\u9879\u4E00", "2": "\u9009\u9879\u4E8C" };
|
|
356
|
+
}
|
|
357
|
+
},
|
|
358
|
+
props: {
|
|
359
|
+
type: Object,
|
|
360
|
+
default() {
|
|
361
|
+
return { value: "value", label: "label" };
|
|
362
|
+
}
|
|
363
|
+
}
|
|
364
|
+
},
|
|
365
|
+
data() {
|
|
366
|
+
return {
|
|
367
|
+
modelForm: this.model
|
|
368
|
+
};
|
|
369
|
+
},
|
|
370
|
+
computed: {
|
|
371
|
+
selectOption() {
|
|
372
|
+
let tempArr = [];
|
|
373
|
+
if (Array.isArray(this.options) && this.options.length && this.options[0][this.props.label] === void 0) {
|
|
374
|
+
const { label, value } = this.props;
|
|
375
|
+
tempArr = this.options.map((item, index) => {
|
|
376
|
+
const obj = {
|
|
377
|
+
label: item,
|
|
378
|
+
value: index
|
|
379
|
+
};
|
|
380
|
+
return {
|
|
381
|
+
label: obj[label],
|
|
382
|
+
value: obj[value]
|
|
383
|
+
};
|
|
384
|
+
});
|
|
385
|
+
} else if (!Array.isArray(this.options)) {
|
|
386
|
+
tempArr = Object.entries(this.options).map(([value, label]) => {
|
|
387
|
+
return {
|
|
388
|
+
label,
|
|
389
|
+
value
|
|
390
|
+
};
|
|
391
|
+
});
|
|
392
|
+
} else {
|
|
393
|
+
let options = [];
|
|
394
|
+
options.push(...this.options);
|
|
395
|
+
tempArr = options.map((item) => {
|
|
396
|
+
return {
|
|
397
|
+
label: item[this.props.label],
|
|
398
|
+
value: item[this.props.value]
|
|
399
|
+
};
|
|
400
|
+
});
|
|
401
|
+
}
|
|
402
|
+
return tempArr;
|
|
403
|
+
}
|
|
404
|
+
},
|
|
405
|
+
methods: {
|
|
406
|
+
handleChange(val) {
|
|
407
|
+
this.$emit("change", val);
|
|
408
|
+
}
|
|
409
|
+
},
|
|
410
|
+
watch: {
|
|
411
|
+
modelForm(val) {
|
|
412
|
+
this.$emit("changes", val);
|
|
413
|
+
},
|
|
414
|
+
model(val) {
|
|
415
|
+
this.modelForm = val;
|
|
416
|
+
}
|
|
417
|
+
}
|
|
418
|
+
};
|
|
419
|
+
const __cssModules$3 = {};
|
|
420
|
+
var __component__$3 = /* @__PURE__ */ normalizeComponent(__vue2_script$3, render$3, staticRenderFns$3, false, __vue2_injectStyles$3, "07b0bd64", null, null);
|
|
421
|
+
function __vue2_injectStyles$3(context) {
|
|
422
|
+
for (let o in __cssModules$3) {
|
|
423
|
+
this[o] = __cssModules$3[o];
|
|
424
|
+
}
|
|
425
|
+
}
|
|
426
|
+
var ComComponent$3 = /* @__PURE__ */ function() {
|
|
427
|
+
return __component__$3.exports;
|
|
428
|
+
}();
|
|
429
|
+
ComComponent$3.install = (app) => {
|
|
430
|
+
app.component(ComComponent$3.name, ComComponent$3);
|
|
431
|
+
};
|
|
432
|
+
const InComComponent$3 = ComComponent$3;
|
|
433
|
+
var render$2 = function() {
|
|
434
|
+
var _vm = this;
|
|
435
|
+
var _h = _vm.$createElement;
|
|
436
|
+
var _c = _vm._self._c || _h;
|
|
437
|
+
return _c("div", { staticClass: "ui-operation" }, [_vm._t("default")], 2);
|
|
438
|
+
};
|
|
439
|
+
var staticRenderFns$2 = [];
|
|
440
|
+
var index_vue_vue_type_style_index_0_scoped_true_lang$2 = "";
|
|
441
|
+
const __vue2_script$2 = {
|
|
442
|
+
name: "ComOperation",
|
|
443
|
+
prop: {
|
|
444
|
+
type: String,
|
|
445
|
+
default: "main"
|
|
446
|
+
}
|
|
447
|
+
};
|
|
448
|
+
const __cssModules$2 = {};
|
|
449
|
+
var __component__$2 = /* @__PURE__ */ normalizeComponent(__vue2_script$2, render$2, staticRenderFns$2, false, __vue2_injectStyles$2, "3c6cb9f6", null, null);
|
|
450
|
+
function __vue2_injectStyles$2(context) {
|
|
451
|
+
for (let o in __cssModules$2) {
|
|
452
|
+
this[o] = __cssModules$2[o];
|
|
453
|
+
}
|
|
454
|
+
}
|
|
455
|
+
var ComComponent$2 = /* @__PURE__ */ function() {
|
|
456
|
+
return __component__$2.exports;
|
|
457
|
+
}();
|
|
458
|
+
ComComponent$2.install = (app) => {
|
|
459
|
+
app.component(ComComponent$2.name, ComComponent$2);
|
|
460
|
+
};
|
|
461
|
+
const InComComponent$2 = ComComponent$2;
|
|
462
|
+
var render$1 = function() {
|
|
463
|
+
var _vm = this;
|
|
464
|
+
var _h = _vm.$createElement;
|
|
465
|
+
var _c = _vm._self._c || _h;
|
|
466
|
+
return _c("div", { staticClass: "ui-search" }, [_c("div", { staticClass: "ui-search__main" }, [_vm._t("default")], 2), _c("div", { staticClass: "ui-search__footer" }, [_c("el-button", { attrs: { "size": "small", "icon": "el-icon-refresh" }, on: { "click": _vm.handleReset } }, [_vm._v("\u91CD\u7F6E")]), _c("el-button", { attrs: { "size": "small", "icon": "el-icon-search", "type": "primary" }, on: { "click": _vm.handleQuery } }, [_vm._v("\u67E5\u8BE2")])], 1)]);
|
|
467
|
+
};
|
|
468
|
+
var staticRenderFns$1 = [];
|
|
469
|
+
var index_vue_vue_type_style_index_0_scoped_true_lang$1 = "";
|
|
470
|
+
const __vue2_script$1 = {
|
|
471
|
+
name: "ComSearch",
|
|
472
|
+
methods: {
|
|
473
|
+
handleQuery() {
|
|
474
|
+
const queryFn = this.$parent.handleQuery;
|
|
475
|
+
if (queryFn) {
|
|
476
|
+
queryFn();
|
|
477
|
+
} else {
|
|
478
|
+
this.$emit("query");
|
|
479
|
+
}
|
|
480
|
+
},
|
|
481
|
+
handleReset() {
|
|
482
|
+
const resetFn = this.$parent.handleReset;
|
|
483
|
+
if (resetFn) {
|
|
484
|
+
resetFn();
|
|
485
|
+
} else {
|
|
486
|
+
this.$emit("reset");
|
|
487
|
+
}
|
|
488
|
+
}
|
|
489
|
+
}
|
|
490
|
+
};
|
|
491
|
+
const __cssModules$1 = {};
|
|
492
|
+
var __component__$1 = /* @__PURE__ */ normalizeComponent(__vue2_script$1, render$1, staticRenderFns$1, false, __vue2_injectStyles$1, "07c7d454", null, null);
|
|
493
|
+
function __vue2_injectStyles$1(context) {
|
|
494
|
+
for (let o in __cssModules$1) {
|
|
495
|
+
this[o] = __cssModules$1[o];
|
|
496
|
+
}
|
|
497
|
+
}
|
|
498
|
+
var ComComponent$1 = /* @__PURE__ */ function() {
|
|
499
|
+
return __component__$1.exports;
|
|
500
|
+
}();
|
|
501
|
+
ComComponent$1.install = (app) => {
|
|
502
|
+
app.component(ComComponent$1.name, ComComponent$1);
|
|
503
|
+
};
|
|
504
|
+
const InComComponent$1 = ComComponent$1;
|
|
505
|
+
function countTableHeight(staticNum = 0) {
|
|
506
|
+
const pageCountEls = document.querySelectorAll(".ui-page__main:not(.v-leave) > div");
|
|
507
|
+
const paginationEl = document.querySelector(".ui-pagination");
|
|
508
|
+
const headerEl = document.querySelector(".ui-container__header");
|
|
509
|
+
const tabsEl = document.querySelector(".ui-tabs");
|
|
510
|
+
let tableHeight = staticNum;
|
|
511
|
+
tableHeight += paginationEl ? paginationEl.offsetHeight : 0;
|
|
512
|
+
tableHeight += headerEl ? headerEl.offsetHeight : 0;
|
|
513
|
+
tableHeight += tabsEl ? tabsEl.offsetHeight : 0;
|
|
514
|
+
let userAgent = navigator.userAgent;
|
|
515
|
+
for (let i = 0; i < pageCountEls.length; i++) {
|
|
516
|
+
let ele = pageCountEls[i];
|
|
517
|
+
if (!ele || ele.className === "ui-table")
|
|
518
|
+
continue;
|
|
519
|
+
tableHeight += ele.offsetHeight;
|
|
520
|
+
let eleMargin, eleTBMargin;
|
|
521
|
+
let eleCss = document.defaultView.getComputedStyle(ele);
|
|
522
|
+
if (userAgent.indexOf("Firefox") > -1) {
|
|
523
|
+
eleTBMargin = parseInt(eleCss["margin-top"]) + parseInt(eleCss["margin-bottom"]);
|
|
524
|
+
} else if (userAgent.indexOf("compatible") > -1 && userAgent.indexOf("MSIE") > -1 && !(userAgent.indexOf("Opera") > -1)) {
|
|
525
|
+
let ieCss = ele.currentStyle;
|
|
526
|
+
eleTBMargin = parseInt(ieCss["marginTop"]) + parseInt(ieCss["marginBottom"]);
|
|
527
|
+
} else {
|
|
528
|
+
eleMargin = eleCss.margin.split(" ");
|
|
529
|
+
if (eleMargin.length == 1) {
|
|
530
|
+
eleTBMargin = parseInt(eleMargin[0]) * 2;
|
|
531
|
+
} else {
|
|
532
|
+
const [mt, mr, mb, ml] = eleMargin;
|
|
533
|
+
eleTBMargin = parseInt(mb) ? parseInt(mt) + parseInt(mb) : parseInt(mt);
|
|
534
|
+
}
|
|
535
|
+
}
|
|
536
|
+
tableHeight = eleTBMargin + tableHeight;
|
|
537
|
+
}
|
|
538
|
+
tableHeight = window.innerHeight - tableHeight;
|
|
539
|
+
return tableHeight;
|
|
540
|
+
}
|
|
541
|
+
var render = function() {
|
|
542
|
+
var _vm = this;
|
|
543
|
+
var _h = _vm.$createElement;
|
|
544
|
+
var _c = _vm._self._c || _h;
|
|
545
|
+
return _c("div", { staticClass: "ui-table" }, [_c("div", { staticClass: "ui-table__tab" }, [_vm._t("default")], 2), _c("el-table", _vm._b({ ref: "myTable", attrs: { "highlightRow": "", "border": true, "data": _vm.tableData }, on: { "selection-change": _vm.handleSelectionChange }, scopedSlots: _vm._u([{ key: "empty", fn: function() {
|
|
546
|
+
return [!_vm.autoHeight ? _c("div", [_c("el-empty", { directives: [{ name: "show", rawName: "v-show", value: !_vm.tableData.length, expression: "!tableData.length" }], attrs: { "description": "\u6682\u65E0\u6570\u636E" } })], 1) : _vm._e()];
|
|
547
|
+
}, proxy: true }]) }, "el-table", _vm._d({}, [_vm.isBindHeight, _vm.tableHeight, _vm.isBindMaxHeight, _vm.maxHeight])), [_vm.showSelect ? _c("el-table-column", { attrs: { "type": "selection", "width": "35", "selectable": _vm.selectable } }) : _vm._e(), _vm._l(_vm.tableTitle, function(item, index) {
|
|
548
|
+
return _c("el-table-column", { key: _vm.tableProps[index], attrs: { "minWidth": "60px", "label": item, "prop": _vm.tableProps[index], "width": _vm.tableProps[index] === "index" ? "60px" : _vm.tableColsWidth[index] || "" }, scopedSlots: _vm._u([{ key: "header", fn: function(scope) {
|
|
549
|
+
return [_vm._t(_vm.tableProps[index] + "Title", [_c("span", [_vm._v(_vm._s(item))])], { "row": item, "$index": scope.$index })];
|
|
550
|
+
} }, { key: "default", fn: function(scope) {
|
|
551
|
+
return [_vm._t(_vm.tableProps[index], [_c("span", [_vm._v(_vm._s(_vm.tableProps[index] === "index" ? _vm.changeTableInx(scope.$index) : scope.row[_vm.tableProps[index]]))])], { "row": scope.row, "$index": scope.$index })];
|
|
552
|
+
} }], null, true) });
|
|
553
|
+
})], 2), _vm.showPage ? _c("div", { staticClass: "ui-pagination" }, [_c("el-pagination", { ref: "pageRef", attrs: { "layout": "total, sizes, prev, pager, next, jumper", "current-page": _vm.pageData.offset, "page-sizes": _vm.pageSizes, "page-size": _vm.pageData.limit, "total": _vm.pageData.total }, on: { "size-change": function(val) {
|
|
554
|
+
return _vm.handlePageChange("limit", val);
|
|
555
|
+
}, "current-change": function(val) {
|
|
556
|
+
return _vm.handlePageChange("offset", val);
|
|
557
|
+
} } })], 1) : _vm._e()], 1);
|
|
558
|
+
};
|
|
559
|
+
var staticRenderFns = [];
|
|
560
|
+
var index_vue_vue_type_style_index_0_scoped_true_lang = "";
|
|
561
|
+
const __vue2_script = {
|
|
562
|
+
name: "ComTable",
|
|
563
|
+
props: {
|
|
564
|
+
showSelect: { type: Boolean, default: false },
|
|
565
|
+
selectable: { type: Function, default() {
|
|
566
|
+
return () => {
|
|
567
|
+
};
|
|
568
|
+
} },
|
|
569
|
+
tableData: { type: Array, default() {
|
|
570
|
+
return [];
|
|
571
|
+
} },
|
|
572
|
+
tableMap: { type: Object, default() {
|
|
573
|
+
return { index: "\u5E8F\u53F7" };
|
|
574
|
+
} },
|
|
575
|
+
colsWidth: { type: [Array, Object], default() {
|
|
576
|
+
return [];
|
|
577
|
+
} },
|
|
578
|
+
pageData: { type: Object, default() {
|
|
579
|
+
return {};
|
|
580
|
+
} },
|
|
581
|
+
showPage: { type: Boolean, default: true },
|
|
582
|
+
height: { type: String, default: "" },
|
|
583
|
+
autoHeight: { type: Boolean, default: false },
|
|
584
|
+
maxHeight: { type: String, default: "" },
|
|
585
|
+
heightStatic: { type: Number, default: 0 }
|
|
586
|
+
},
|
|
587
|
+
data() {
|
|
588
|
+
return {
|
|
589
|
+
pageSizes: [20, 50, 100, 200],
|
|
590
|
+
tableHeight: ""
|
|
591
|
+
};
|
|
592
|
+
},
|
|
593
|
+
computed: {
|
|
594
|
+
tableTitle() {
|
|
595
|
+
return Object.values(this.tableMap);
|
|
596
|
+
},
|
|
597
|
+
tableProps() {
|
|
598
|
+
return Object.keys(this.tableMap);
|
|
599
|
+
},
|
|
600
|
+
tableColsWidth() {
|
|
601
|
+
if (Array.isArray(this.colsWidth)) {
|
|
602
|
+
return this.colsWidth.map((item) => `${parseInt(item)}px`);
|
|
603
|
+
} else {
|
|
604
|
+
return this.tableProps.map((item) => this.colsWidth[item] ? `${parseInt(this.colsWidth[item])}px` : "");
|
|
605
|
+
}
|
|
606
|
+
},
|
|
607
|
+
isBindHeight() {
|
|
608
|
+
return this.tableHeight ? "height" : "";
|
|
609
|
+
},
|
|
610
|
+
isBindMaxHeight() {
|
|
611
|
+
return this.maxHeight ? "max-height" : "";
|
|
612
|
+
}
|
|
613
|
+
},
|
|
614
|
+
methods: {
|
|
615
|
+
changeTableInx(inx) {
|
|
616
|
+
let i = parseInt(inx) + 1 + "";
|
|
617
|
+
let first = "0";
|
|
618
|
+
return first.repeat(4 - i.length) + i;
|
|
619
|
+
},
|
|
620
|
+
handleRefreshHeight() {
|
|
621
|
+
this.tableHeight = `${countTableHeight() - this.heightStatic}px`;
|
|
622
|
+
console.log(this.tableHeight, "this.tableHeight");
|
|
623
|
+
this.$refs["myTable"] && this.$refs["myTable"].doLayout();
|
|
624
|
+
},
|
|
625
|
+
handlePageChange(type = "offset", val) {
|
|
626
|
+
if (type === "offset") {
|
|
627
|
+
if (this.tempSize > this.pageData.total && this.pageData.offset > 1)
|
|
628
|
+
return;
|
|
629
|
+
this.$emit("pageChange", type, val);
|
|
630
|
+
} else {
|
|
631
|
+
this.tempSize = val;
|
|
632
|
+
this.$emit("pageChange", type, val);
|
|
633
|
+
}
|
|
634
|
+
},
|
|
635
|
+
handleSelectionChange(val) {
|
|
636
|
+
this.$emit("selectionChange", val);
|
|
637
|
+
}
|
|
638
|
+
},
|
|
639
|
+
async mounted() {
|
|
640
|
+
if (!this.autoHeight && !this.height) {
|
|
641
|
+
await this.$nextTick();
|
|
642
|
+
this.handleRefreshHeight();
|
|
643
|
+
window.addEventListener("resize", this.handleRefreshHeight);
|
|
644
|
+
} else if (this.height) {
|
|
645
|
+
this.tableHeight = this.height;
|
|
646
|
+
this.$refs["myTable"] && this.$refs["myTable"].doLayout();
|
|
647
|
+
}
|
|
648
|
+
},
|
|
649
|
+
beforeDestroy() {
|
|
650
|
+
window.removeEventListener("resize", this.handleRefreshHeight);
|
|
651
|
+
}
|
|
652
|
+
};
|
|
69
653
|
const __cssModules = {};
|
|
70
|
-
var __component__ = /* @__PURE__ */ normalizeComponent(__vue2_script, render, staticRenderFns, false, __vue2_injectStyles, "
|
|
654
|
+
var __component__ = /* @__PURE__ */ normalizeComponent(__vue2_script, render, staticRenderFns, false, __vue2_injectStyles, "54b3bd8e", null, null);
|
|
71
655
|
function __vue2_injectStyles(context) {
|
|
72
656
|
for (let o in __cssModules) {
|
|
73
657
|
this[o] = __cssModules[o];
|
|
74
658
|
}
|
|
75
659
|
}
|
|
76
|
-
var
|
|
660
|
+
var ComComponent = /* @__PURE__ */ function() {
|
|
77
661
|
return __component__.exports;
|
|
78
662
|
}();
|
|
79
|
-
|
|
80
|
-
app.component(
|
|
663
|
+
ComComponent.install = (app) => {
|
|
664
|
+
app.component(ComComponent.name, ComComponent);
|
|
81
665
|
};
|
|
82
|
-
const
|
|
666
|
+
const InComComponent = ComComponent;
|
|
83
667
|
const components = [
|
|
84
|
-
InComTemplate
|
|
668
|
+
InComTemplate,
|
|
669
|
+
InComComponent$7,
|
|
670
|
+
InComComponent$6,
|
|
671
|
+
InComComponent$5,
|
|
672
|
+
InComComponent$4,
|
|
673
|
+
InComComponent$3,
|
|
674
|
+
InComComponent$2,
|
|
675
|
+
InComComponent$1,
|
|
676
|
+
InComComponent
|
|
85
677
|
];
|
|
86
678
|
const install = (Vue, ops = { config: {} }) => {
|
|
87
679
|
components.forEach((component) => Vue.component(component.name, component));
|
|
@@ -90,7 +682,15 @@ const install = (Vue, ops = { config: {} }) => {
|
|
|
90
682
|
const defaultConfig = {
|
|
91
683
|
version: "dev",
|
|
92
684
|
install,
|
|
93
|
-
ComTemplate: InComTemplate
|
|
685
|
+
ComTemplate: InComTemplate,
|
|
686
|
+
ComMenu: InComComponent$7,
|
|
687
|
+
ComTabs: InComComponent$6,
|
|
688
|
+
ComTool: InComComponent$5,
|
|
689
|
+
ComDialog: InComComponent$4,
|
|
690
|
+
ComFormItem: InComComponent$3,
|
|
691
|
+
ComOperation: InComComponent$2,
|
|
692
|
+
ComSearch: InComComponent$1,
|
|
693
|
+
ComTable: InComComponent
|
|
94
694
|
};
|
|
95
695
|
try {
|
|
96
696
|
defaultConfig.version = require("../package.json").version;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tenghui-ui.es.js","sources":["../packages/template/src/index.vue?vue&type=template&lang.js","../packages/template/src/index.vue","../packages/template/index.ts","../src/main.ts"],"sourcesContent":["\n<div class=\"ui-template\">\n <h1>{{msg}}</h1>\n</div>\n","<template>\r\n <div class=\"ui-template\">\r\n <h1>{{msg}}</h1>\r\n </div>\r\n</template>\r\n\r\n<script>\r\n export default {\r\n name: \"ComTemplate\",\r\n data() {\r\n return {\r\n msg: '测试组件'\r\n }\r\n },\r\n methods: {\r\n }\r\n }\r\n</script>\r\n\r\n<style scoped>\r\n</style>","import Vue from 'vue';\r\nimport ComTemplate from './src/index.vue';\r\n\r\ntype SFCWithInstall<T> = T & { install(app: typeof Vue): void }; // vue 安装\r\n\r\n// 安装\r\nComTemplate.install = (app: typeof Vue) => {\r\n app.component(ComTemplate.name, ComTemplate);\r\n};\r\nconst InComTemplate: SFCWithInstall<typeof ComTemplate> = ComTemplate; // 增加类型\r\nexport default InComTemplate;","import ComTemplate from '../packages/template';\r\n\r\n\r\nconst components:any[] = [\r\n ComTemplate\r\n];\r\n\r\n/**\r\n * @param { App }\r\n * @returns { Void }\r\n */\r\nconst install = (Vue:any, ops:any = { config: {} }) => {\r\n components.forEach(component => Vue.component(component.name, component));\r\n\r\n // 注册组件时可以带入UI库配置\r\n Vue.prototype.$UICONFIG = ops.config;\r\n}\r\n\r\n\r\nconst defaultConfig = {\r\n version: 'dev',\r\n install,\r\n ComTemplate,\r\n};\r\n\r\ntry {\r\n defaultConfig.version = require('../package.json').version;\r\n} catch(e) {\r\n console.log('no require');\r\n}\r\n\r\nexport default defaultConfig;"],"names":["ComTemplate"],"mappings":"AAAA,IAAI,SAAS,WAAY;AAAC,MAAI,MAAI;AAAK,MAAI,KAAG,IAAI;AAAe,MAAI,KAAG,IAAI,MAAM,MAAI;AAAG,SAAO,GAAG,OAAM,EAAC,aAAY,iBAAe,CAAC,GAAG,MAAK,CAAC,IAAI,GAAG,IAAI,GAAG,IAAI;AAAA;AACjK,IAAI,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACMtB;;;;;;;;;;;;;;;;;;;ACDA,YAAY,UAAU,CAAC,QAAoB;MACnC,UAAU,YAAY,MAAM;AAAA;AAEpC,MAAM,gBAAoD;ACN1D,MAAM,aAAmB;AAAA,EACrBA;AAAAA;AAOJ,MAAM,UAAU,CAAC,KAAS,MAAU,EAAE,QAAQ,SAAS;aACxC,QAAQ,eAAa,IAAI,UAAU,UAAU,MAAM;MAG1D,UAAU,YAAY,IAAI;AAAA;MAI5B,gBAAgB;AAAA,EAClB,SAAS;AAAA,EACT;AAAA,eACAA;AAAAA;AAGJ,IAAI;gBACc,UAAU,QAAQ,mBAAmB;AAAA,SAC/C;UACI,IAAI;AAAA;;"}
|
|
1
|
+
{"version":3,"file":"tenghui-ui.es.js","sources":["../packages/template/src/index.vue?vue&type=template&lang.js","../packages/template/src/index.vue","../packages/template/index.ts","../packages/menu/src/index.vue?vue&type=template&lang.js","../packages/menu/src/index.vue","../packages/menu/index.ts","../packages/tabs/src/index.vue?vue&type=template&lang.js","../packages/tabs/src/index.vue","../packages/tabs/index.ts","../packages/tool/src/index.vue?vue&type=template&lang.js","../packages/tool/src/index.vue","../packages/tool/index.ts","../packages/dialog/src/index.vue?vue&type=template&lang.js","../packages/dialog/src/index.vue","../packages/dialog/index.ts","../packages/form-item/src/index.vue?vue&type=template&lang.js","../packages/form-item/src/index.vue","../packages/form-item/index.ts","../packages/operation/src/index.vue?vue&type=template&lang.js","../packages/operation/src/index.vue","../packages/operation/index.ts","../packages/search/src/index.vue?vue&type=template&lang.js","../packages/search/src/index.vue","../packages/search/index.ts","../utils/index.ts","../packages/table/src/index.vue?vue&type=template&lang.js","../packages/table/src/index.vue","../packages/table/index.ts","../src/main.ts"],"sourcesContent":["\n<div class=\"ui-template\">\n <h1>{{ msg }}</h1>\n <el-table :data=\"tableData\" style=\"width: 100%\">\n <el-table-column prop=\"date\" label=\"日期\" width=\"180\">\n </el-table-column>\n <el-table-column prop=\"name\" label=\"姓名\" width=\"180\">\n </el-table-column>\n <el-table-column prop=\"address\" label=\"地址\">\n </el-table-column>\n </el-table>\n</div>\n","<template>\r\n <div class=\"ui-template\">\r\n <h1>{{ msg }}</h1>\r\n <el-table :data=\"tableData\" style=\"width: 100%\">\r\n <el-table-column prop=\"date\" label=\"日期\" width=\"180\">\r\n </el-table-column>\r\n <el-table-column prop=\"name\" label=\"姓名\" width=\"180\">\r\n </el-table-column>\r\n <el-table-column prop=\"address\" label=\"地址\">\r\n </el-table-column>\r\n </el-table>\r\n </div>\r\n</template>\r\n\r\n<script>\r\nexport default {\r\n name: \"ComTemplate\",\r\n data() {\r\n return {\r\n msg: '测试组件11111',\r\n tableData: [{\r\n date: '2016-05-02',\r\n name: '王小虎',\r\n address: '上海市普陀区金沙江路 1518 弄'\r\n }, {\r\n date: '2016-05-04',\r\n name: '王小虎',\r\n address: '上海市普陀区金沙江路 1517 弄'\r\n }, {\r\n date: '2016-05-01',\r\n name: '王小虎',\r\n address: '上海市普陀区金沙江路 1519 弄'\r\n }, {\r\n date: '2016-05-03',\r\n name: '王小虎',\r\n address: '上海市普陀区金沙江路 1516 弄'\r\n }]\r\n }\r\n },\r\n methods: {\r\n }\r\n}\r\n</script>\r\n\r\n<style scoped>\r\n</style>","import Vue from 'vue';\r\nimport ComTemplate from './src/index.vue';\r\n\r\ntype SFCWithInstall<T> = T & { install(app: typeof Vue): void }; // vue 安装\r\n\r\n// 安装\r\nComTemplate.install = (app: typeof Vue) => {\r\n app.component(ComTemplate.name, ComTemplate);\r\n};\r\nconst InComTemplate: SFCWithInstall<typeof ComTemplate> = ComTemplate; // 增加类型\r\nexport default InComTemplate;","\n<el-menu \n mode=\"horizontal\"\n background-color=\"#545c64\"\n text-color=\"#ccc\"\n active-text-color=\"#FFF\"\n menu-trigger=\"hover\"\n :default-active=\"$route.path\"\n @select=\"handleJump\">\n <template v-for=\"(item, index) in data\">\n <el-submenu v-if=\"item.children\" :index=\"item.path || item.name\">\n <template slot=\"title\">\n <i class=\"icon-chanpinguanli-chanpinliebiao\"></i>\n <span>{{item.name}}</span>\n </template>\n <template v-for=\"(_item, _index) in item.children\">\n <el-submenu v-if=\"_item.children\" \n :index=\"_item.path || _item.name\">\n <template slot=\"title\">{{_item.name}}</template>\n <el-menu-item v-for=\"(__item, __index) in _item.children\" \n :key=\"__item.name\" \n :index=\"__item.path || __item.name\">{{__item.name}}</el-menu-item>\n </el-submenu>\n <el-menu-item v-else :index=\"_item.path || _item.name\">{{_item.name}}</el-menu-item>\n </template>\n </el-submenu>\n <el-menu-item v-else :index=\"item.path || item.name\">\n <i class=\"el-icon-menu\"></i>\n <span slot=\"title\">{{item.name}}</span>\n </el-menu-item>\n </template>\n</el-menu>\n","<template>\r\n <el-menu \r\n mode=\"horizontal\"\r\n background-color=\"#545c64\"\r\n text-color=\"#ccc\"\r\n active-text-color=\"#FFF\"\r\n menu-trigger=\"hover\"\r\n :default-active=\"$route.path\"\r\n @select=\"handleJump\">\r\n <template v-for=\"(item, index) in data\">\r\n <el-submenu v-if=\"item.children\" :index=\"item.path || item.name\">\r\n <template slot=\"title\">\r\n <i class=\"icon-chanpinguanli-chanpinliebiao\"></i>\r\n <span>{{item.name}}</span>\r\n </template>\r\n <template v-for=\"(_item, _index) in item.children\">\r\n <el-submenu v-if=\"_item.children\" \r\n :index=\"_item.path || _item.name\">\r\n <template slot=\"title\">{{_item.name}}</template>\r\n <el-menu-item v-for=\"(__item, __index) in _item.children\" \r\n :key=\"__item.name\" \r\n :index=\"__item.path || __item.name\">{{__item.name}}</el-menu-item>\r\n </el-submenu>\r\n <el-menu-item v-else :index=\"_item.path || _item.name\">{{_item.name}}</el-menu-item>\r\n </template>\r\n </el-submenu>\r\n <el-menu-item v-else :index=\"item.path || item.name\">\r\n <i class=\"el-icon-menu\"></i>\r\n <span slot=\"title\">{{item.name}}</span>\r\n </el-menu-item>\r\n </template>\r\n </el-menu>\r\n</template>\r\n<script>\r\n\r\nexport default {\r\n name: 'ComMenu',\r\n props: {\r\n data: {\r\n type: Array,\r\n default() {\r\n return []\r\n }\r\n }\r\n },\r\n data() {\r\n return {\r\n \r\n }\r\n },\r\n computed: {\r\n \r\n },\r\n methods: {\r\n handleJump(path) {\r\n this.$emit('jump', path);\r\n }\r\n }\r\n}\r\n</script>\r\n<style lang=\"less\" scoped>\r\n .el-menu {\r\n width: 100%;\r\n height: 60px !important;\r\n }\r\n\r\n .el-submenu .el-menu-item {\r\n min-width: unset;\r\n }\r\n\r\n .el-submenu__title i {\r\n color: unset;\r\n }\r\n</style>","import Vue from 'vue';\r\nimport ComComponent from './src/index.vue';\r\n\r\ntype SFCWithInstall<T> = T & { install(app: typeof Vue): void }; // vue 安装\r\n\r\n// 安装\r\nComComponent.install = (app: typeof Vue) => {\r\n app.component(ComComponent.name, ComComponent);\r\n};\r\nconst InComComponent: SFCWithInstall<typeof ComComponent> = ComComponent; // 增加类型\r\nexport default InComComponent;","\n<div class=\"ui-tabs\">\n <ul class=\"clear-fix\">\n <li class=\"ui-tabs__item\" v-for=\"item in data\" :class=\"{ 'ui-tabs__item--active': currentTab.path === item.path }\" \n @click=\"handleToggle(item.path)\">\n <span>{{item.name}}</span>\n <span class=\"el-icon-error\"></span>\n </li>\n </ul>\n</div>\n","<template>\r\n <div class=\"ui-tabs\">\r\n <ul class=\"clear-fix\">\r\n <li class=\"ui-tabs__item\" v-for=\"item in data\" :class=\"{ 'ui-tabs__item--active': currentTab.path === item.path }\" \r\n @click=\"handleToggle(item.path)\">\r\n <span>{{item.name}}</span>\r\n <span class=\"el-icon-error\"></span>\r\n </li>\r\n </ul>\r\n </div>\r\n</template>\r\n<script>\r\nexport default {\r\n name: 'ComTabs',\r\n props: {\r\n data: {\r\n type: Array,\r\n default() {\r\n return []\r\n }\r\n },\r\n currentTab: {\r\n type: Object,\r\n default() {\r\n return {}\r\n }\r\n }\r\n },\r\n data() {\r\n return {\r\n\r\n }\r\n },\r\n methods: {\r\n handleToggle(path) {\r\n this.$emit('toggle', path);\r\n }\r\n }\r\n}\r\n</script>\r\n<style lang=\"less\" scoped>\r\n\r\n .ui-tabs {\r\n\r\n border-bottom: 1px solid @color-border;\r\n padding: 0 10px;\r\n height: 40px;\r\n background-color: #FFF;\r\n \r\n &__item {\r\n float: left;\r\n height: 31px;\r\n border-radius: 6px 6px 0 0;\r\n border: 1px solid @color-border;\r\n margin-top: 10px;\r\n box-sizing: border-box;\r\n font-size: 12px;\r\n line-height: 30px;\r\n padding: 0 10px;\r\n color: @color-f4;\r\n cursor: pointer;\r\n border-bottom-color: #FFF;\r\n margin-right: 1px;\r\n position: relative;\r\n transition: all .1s linear;\r\n\r\n &:hover {\r\n .el-icon-error {\r\n opacity: 1;\r\n }\r\n }\r\n\r\n .el-icon-error {\r\n position: absolute;\r\n right: 2px;\r\n top: 50%;\r\n margin-top: -5px;\r\n opacity: 0;\r\n transition: all .1s linear;\r\n\r\n &:hover {\r\n color: @theme-color2;\r\n }\r\n }\r\n\r\n &--active {\r\n color: @theme-color2;\r\n padding-right: 20px;\r\n\r\n .el-icon-error {\r\n top: 50%;\r\n right: 5px;\r\n font-size: 14px;\r\n margin-top: -5px;\r\n opacity: 1;\r\n }\r\n }\r\n }\r\n }\r\n</style>","import Vue from 'vue';\r\nimport ComComponent from './src/index.vue';\r\n\r\ntype SFCWithInstall<T> = T & { install(app: typeof Vue): void }; // vue 安装\r\n\r\n// 安装\r\nComComponent.install = (app: typeof Vue) => {\r\n app.component(ComComponent.name, ComComponent);\r\n};\r\nconst InComComponent: SFCWithInstall<typeof ComComponent> = ComComponent; // 增加类型\r\nexport default InComComponent;","\n<el-dropdown>\n <span class=\"el-dropdown-link\">\n <i class=\"el-icon-s-tools\"></i>\n </span>\n <el-dropdown-menu slot=\"dropdown\">\n <el-dropdown-item icon=\"icon-tuichudenglu\" @click=\"handleOperation('outLogin')\">退出登录</el-dropdown-item>\n </el-dropdown-menu>\n</el-dropdown>\n","<template>\r\n <el-dropdown>\r\n <span class=\"el-dropdown-link\">\r\n <i class=\"el-icon-s-tools\"></i>\r\n </span>\r\n <el-dropdown-menu slot=\"dropdown\">\r\n <el-dropdown-item icon=\"icon-tuichudenglu\" @click=\"handleOperation('outLogin')\">退出登录</el-dropdown-item>\r\n </el-dropdown-menu>\r\n </el-dropdown>\r\n</template>\r\n<script>\r\nexport default {\r\n name: 'ComTool',\r\n methods: {\r\n handleOperation(cmd) {\r\n switch (cmd) {\r\n case 'outLogin':\r\n this.$confirm('确认退出登录?', '提示', {\r\n type: 'warning'\r\n }).then(() => {\r\n console.log('out login');\r\n })\r\n break;\r\n }\r\n }\r\n }\r\n}\r\n</script>\r\n<style lang=\"less\" scoped>\r\n .el-icon-s-tools {\r\n font-size: 20px;\r\n color: #FFF;\r\n line-height: 60px;\r\n margin-right: 20px;\r\n cursor: pointer;\r\n }\r\n</style>","import Vue from 'vue';\r\nimport ComComponent from './src/index.vue';\r\n\r\ntype SFCWithInstall<T> = T & { install(app: typeof Vue): void }; // vue 安装\r\n\r\n// 安装\r\nComComponent.install = (app: typeof Vue) => {\r\n app.component(ComComponent.name, ComComponent);\r\n};\r\nconst InComComponent: SFCWithInstall<typeof ComComponent> = ComComponent; // 增加类型\r\nexport default InComComponent;","\n<el-dialog \n append-to-body\n :top=\"top\"\n :title=\"title\" \n :visible=\"visible\"\n :width=\"width\"\n @close=\"handleClose\">\n <slot></slot>\n <template v-slot:footer>\n <slot name=\"footer\">\n <el-button size=\"small\" @click=\"$emit('update:visible', false)\">取消</el-button>\n <el-button size=\"small\" type=\"primary\" @click=\"handleConfirm\">确定</el-button>\n </slot>\n </template>\n</el-dialog>\n","<template>\r\n <el-dialog \r\n append-to-body\r\n :top=\"top\"\r\n :title=\"title\" \r\n :visible=\"visible\"\r\n :width=\"width\"\r\n @close=\"handleClose\">\r\n <slot></slot>\r\n <template v-slot:footer>\r\n <slot name=\"footer\">\r\n <el-button size=\"small\" @click=\"$emit('update:visible', false)\">取消</el-button>\r\n <el-button size=\"small\" type=\"primary\" @click=\"handleConfirm\">确定</el-button>\r\n </slot>\r\n </template>\r\n </el-dialog>\r\n</template>\r\n<script>\r\nexport default {\r\n name: 'ComDialog',\r\n props: {\r\n visible: {\r\n type: Boolean,\r\n default: false\r\n },\r\n title: {\r\n type: String,\r\n default: '标题'\r\n },\r\n width: {\r\n type: String,\r\n default: '600px'\r\n },\r\n top: {\r\n type: String,\r\n default: '50px'\r\n }\r\n },\r\n data() {\r\n return {\r\n show: false\r\n }\r\n },\r\n methods: {\r\n handleClose() {\r\n this.$emit('close');\r\n this.$emit('update:visible', false);\r\n },\r\n\r\n handleConfirm() {\r\n this.$emit('confirm');\r\n }\r\n }\r\n}\r\n</script>\r\n<style lang=\"less\" scoped>\r\n/deep/ .el-dialog__header {\r\n border-bottom: 1px solid #ededed;\r\n\r\n .el-dialog__title {\r\n font-size: 16px;\r\n }\r\n}\r\n\r\n/deep/ .el-dialog__footer {\r\n border-top: 1px solid #ededed;\r\n}\r\n\r\n/deep/ .el-dialog__body {\r\n\r\n .el-select {\r\n width: 240px;\r\n }\r\n\r\n .el-input {\r\n width: 240px;\r\n }\r\n\r\n .el-input-number {\r\n width: 240px;\r\n\r\n .el-input__inner {\r\n text-align: left;\r\n }\r\n }\r\n\r\n .ui-item__main {\r\n width: 100%;\r\n }\r\n\r\n .el-form-item__label {\r\n font-size: 12px;\r\n }\r\n\r\n .el-input--small .el-input__icon {\r\n height: 32px;\r\n }\r\n}\r\n</style>","import Vue from 'vue';\r\nimport ComComponent from './src/index.vue';\r\n\r\ntype SFCWithInstall<T> = T & { install(app: typeof Vue): void }; // vue 安装\r\n\r\n// 安装\r\nComComponent.install = (app: typeof Vue) => {\r\n app.component(ComComponent.name, ComComponent);\r\n};\r\nconst InComComponent: SFCWithInstall<typeof ComComponent> = ComComponent; // 增加类型\r\nexport default InComComponent;","\n<div class=\"ui-form__item\">\n <div>\n <slot name=\"label\">\n <div class=\"ui-item__label\" v-if=\"label\">\n <span >{{label}}</span>\n </div>\n </slot>\n </div>\n <div class=\"ui-item__main\">\n <template v-if=\"type === 'input'\">\n <el-input size=\"small\" v-model=\"modelForm\" :placeholder=\"placeholder\" :disabled=\"readonly\" :maxlength=\"maxlength\"></el-input>\n </template>\n <template v-else-if=\"type === 'select'\">\n <el-select size=\"small\" v-model=\"modelForm\" :placeholder=\"placeholder || '请选择'\" :multiple=\"multiple\" :disabled=\"readonly\" filterable clearable>\n <el-option v-for=\"item in selectOption\" :key=\"item.value\" :value=\"item.value.toString()\" :label=\"item.label\"></el-option>\n </el-select>\n </template>\n <template v-else-if=\"type === 'textarea'\">\n <el-input size=\"small\" v-model=\"modelForm\" type=\"textarea\" \n :placeholder=\"placeholder || '请输入'\" \n :rows=\"4\" \n :disabled=\"readonly\"></el-input>\n </template>\n <template v-else-if=\"type === 'input-number'\">\n <el-input-number size=\"small\" v-model=\"modelForm\" controls-position=\"right\"></el-input-number>\n </template>\n <template v-else-if=\"type === 'cascader'\">\n <el-cascader\n size=\"small\"\n v-model=\"modelForm\"\n :options=\"options\"\n :props=\"props\"\n @change=\"handleChange\"></el-cascader>\n </template>\n </div>\n</div>\n","<template>\r\n <div class=\"ui-form__item\">\r\n <div>\r\n <slot name=\"label\">\r\n <div class=\"ui-item__label\" v-if=\"label\">\r\n <span >{{label}}</span>\r\n </div>\r\n </slot>\r\n </div>\r\n <div class=\"ui-item__main\">\r\n <template v-if=\"type === 'input'\">\r\n <el-input size=\"small\" v-model=\"modelForm\" :placeholder=\"placeholder\" :disabled=\"readonly\" :maxlength=\"maxlength\"></el-input>\r\n </template>\r\n <template v-else-if=\"type === 'select'\">\r\n <el-select size=\"small\" v-model=\"modelForm\" :placeholder=\"placeholder || '请选择'\" :multiple=\"multiple\" :disabled=\"readonly\" filterable clearable>\r\n <el-option v-for=\"item in selectOption\" :key=\"item.value\" :value=\"item.value.toString()\" :label=\"item.label\"></el-option>\r\n </el-select>\r\n </template>\r\n <template v-else-if=\"type === 'textarea'\">\r\n <el-input size=\"small\" v-model=\"modelForm\" type=\"textarea\" \r\n :placeholder=\"placeholder || '请输入'\" \r\n :rows=\"4\" \r\n :disabled=\"readonly\"></el-input>\r\n </template>\r\n <template v-else-if=\"type === 'input-number'\">\r\n <el-input-number size=\"small\" v-model=\"modelForm\" controls-position=\"right\"></el-input-number>\r\n </template>\r\n <template v-else-if=\"type === 'cascader'\">\r\n <el-cascader\r\n size=\"small\"\r\n v-model=\"modelForm\"\r\n :options=\"options\"\r\n :props=\"props\"\r\n @change=\"handleChange\"></el-cascader>\r\n </template>\r\n </div>\r\n </div>\r\n</template>\r\n<script>\r\nexport default {\r\n name: 'ComFormItem',\r\n model: {\r\n prop: 'model',\r\n event: 'changes'\r\n },\r\n props: {\r\n\r\n model: undefined,\r\n\r\n // 组件类型\r\n type: {\r\n type: String,\r\n default: 'input'\r\n },\r\n\r\n // item name\r\n label: {\r\n type: String,\r\n default: ''\r\n },\r\n\r\n readonly: {\r\n type: Boolean,\r\n default: false\r\n },\r\n\r\n placeholder: {\r\n type: String,\r\n default: ''\r\n },\r\n\r\n maxlength: {\r\n type: [Array, String],\r\n default: ''\r\n },\r\n\r\n multiple: {\r\n type: Boolean,\r\n default: false\r\n },\r\n\r\n // 选项\r\n options: {\r\n type: [Object, Array],\r\n default() {\r\n return { '1': '选项一', '2': '选项二' }\r\n }\r\n },\r\n\r\n // 选项映射\r\n props: {\r\n type: Object,\r\n default() {\r\n return { value: 'value', label: 'label' }\r\n }\r\n },\r\n },\r\n data() {\r\n return {\r\n modelForm: this.model\r\n }\r\n },\r\n computed: {\r\n selectOption() {\r\n let tempArr = [];\r\n if (Array.isArray(this.options) && this.options.length && this.options[0][this.props.label] === undefined) {\r\n const { label, value } = this.props;\r\n tempArr = this.options.map((item, index) => {\r\n const obj = {\r\n label: item,\r\n value: index\r\n }\r\n return {\r\n label: obj[label],\r\n value: obj[value]\r\n }\r\n })\r\n } else if (!Array.isArray(this.options)){\r\n tempArr = Object.entries(this.options).map(([value, label]) => {\r\n return {\r\n label,\r\n value\r\n }\r\n })\r\n } else {\r\n let options = [];\r\n options.push(...this.options);\r\n tempArr = options.map((item) => {\r\n return {\r\n label: item[this.props.label],\r\n value: item[this.props.value]\r\n }\r\n })\r\n }\r\n return tempArr;\r\n }\r\n },\r\n methods: {\r\n handleChange(val) {\r\n this.$emit('change', val);\r\n }\r\n },\r\n watch: {\r\n modelForm(val) {\r\n this.$emit('changes', val);\r\n },\r\n model(val) {\r\n this.modelForm = val;\r\n }\r\n },\r\n}\r\n</script>\r\n<style lang=\"less\" scoped>\r\n.ui-form__item {\r\n display: flex;\r\n align-items: center;\r\n margin-right: 15px;\r\n}\r\n\r\n.ui-item__label {\r\n margin-right: 10px;\r\n font-size: 12px;\r\n width: 70px;\r\n text-align: right;\r\n}\r\n</style>","import Vue from 'vue';\r\nimport ComComponent from './src/index.vue';\r\n\r\ntype SFCWithInstall<T> = T & { install(app: typeof Vue): void }; // vue 安装\r\n\r\n// 安装\r\nComComponent.install = (app: typeof Vue) => {\r\n app.component(ComComponent.name, ComComponent);\r\n};\r\nconst InComComponent: SFCWithInstall<typeof ComComponent> = ComComponent; // 增加类型\r\nexport default InComComponent;","\n<div class=\"ui-operation\">\n <slot></slot>\n</div>\n","<template>\r\n <div class=\"ui-operation\">\r\n <slot></slot>\r\n </div>\r\n</template>\r\n<script>\r\nexport default {\r\n name: 'ComOperation',\r\n prop: {\r\n type: String,\r\n default: 'main'\r\n }\r\n}\r\n</script>\r\n<style lang=\"less\" scoped>\r\n .ui-operation {\r\n padding: 0 10px;\r\n }\r\n</style>","import Vue from 'vue';\r\nimport ComComponent from './src/index.vue';\r\n\r\ntype SFCWithInstall<T> = T & { install(app: typeof Vue): void }; // vue 安装\r\n\r\n// 安装\r\nComComponent.install = (app: typeof Vue) => {\r\n app.component(ComComponent.name, ComComponent);\r\n};\r\nconst InComComponent: SFCWithInstall<typeof ComComponent> = ComComponent; // 增加类型\r\nexport default InComComponent;","\n<div class=\"ui-search\">\n <div class=\"ui-search__main\">\n <slot></slot>\n </div>\n <div class=\"ui-search__footer\">\n <el-button size=\"small\" icon=\"el-icon-refresh\" @click=\"handleReset\">重置</el-button>\n <el-button size=\"small\" icon=\"el-icon-search\" type=\"primary\" @click=\"handleQuery\">查询</el-button>\n </div>\n</div>\n","<template>\r\n <div class=\"ui-search\">\r\n <div class=\"ui-search__main\">\r\n <slot></slot>\r\n </div>\r\n <div class=\"ui-search__footer\">\r\n <el-button size=\"small\" icon=\"el-icon-refresh\" @click=\"handleReset\">重置</el-button>\r\n <el-button size=\"small\" icon=\"el-icon-search\" type=\"primary\" @click=\"handleQuery\">查询</el-button>\r\n </div>\r\n </div>\r\n</template>\r\n<script>\r\nexport default {\r\n name: 'ComSearch',\r\n methods: {\r\n handleQuery() {\r\n const queryFn = this.$parent.handleQuery;\r\n if (queryFn) {\r\n queryFn();\r\n } else {\r\n this.$emit('query');\r\n }\r\n },\r\n handleReset() {\r\n const resetFn = this.$parent.handleReset;\r\n if (resetFn) {\r\n resetFn();\r\n } else {\r\n this.$emit('reset');\r\n }\r\n }\r\n }\r\n}\r\n</script>\r\n<style lang=\"less\" scoped>\r\n .ui-search {\r\n margin: 10px 10px 0 10px;\r\n padding: 20px;\r\n // box-shadow: 0 0 5px 2px #e7e7e7;\r\n background-color: #FFF;\r\n border: 1px solid @color-border;\r\n border-radius: 4px;\r\n\r\n &__main {\r\n display: flex;\r\n }\r\n\r\n &__footer {\r\n margin-top: 10px;\r\n }\r\n\r\n /deep/ .ui-form__item {\r\n display: block;\r\n }\r\n\r\n /deep/ .ui-item__label {\r\n width: unset;\r\n text-align: left;\r\n margin-bottom: 5px;\r\n }\r\n }\r\n</style>","import Vue from 'vue';\r\nimport ComComponent from './src/index.vue';\r\n\r\ntype SFCWithInstall<T> = T & { install(app: typeof Vue): void }; // vue 安装\r\n\r\n// 安装\r\nComComponent.install = (app: typeof Vue) => {\r\n app.component(ComComponent.name, ComComponent);\r\n};\r\nconst InComComponent: SFCWithInstall<typeof ComComponent> = ComComponent; // 增加类型\r\nexport default InComComponent;","\r\n/**\r\n * 计算表格高度\r\n * staticNum { number } \r\n * */\r\n export function countTableHeight(staticNum = 0) {\r\n\r\n const pageCountEls = document.querySelectorAll('.ui-page__main:not(.v-leave) > div')\r\n const paginationEl = document.querySelector('.ui-pagination');\r\n \r\n const headerEl = document.querySelector('.ui-container__header');\r\n const tabsEl = document.querySelector('.ui-tabs');\r\n\r\n let tableHeight = staticNum;\r\n tableHeight += paginationEl ? paginationEl.offsetHeight : 0;\r\n tableHeight += headerEl ? headerEl.offsetHeight : 0;\r\n tableHeight += tabsEl ? tabsEl.offsetHeight : 0;\r\n\r\n let userAgent = navigator.userAgent;\r\n for (let i = 0; i < pageCountEls.length; i++) {\r\n\r\n // 获取容器元素\r\n let ele = pageCountEls[i];\r\n if (!ele || ele.className === 'ui-table') continue;\r\n tableHeight += ele.offsetHeight;\r\n\r\n let eleMargin, eleTBMargin;\r\n let eleCss = document.defaultView.getComputedStyle(ele);\r\n if (userAgent.indexOf('Firefox') > -1) {\r\n eleTBMargin = parseInt(eleCss['margin-top']) + parseInt(eleCss['margin-bottom']);\r\n } else if (userAgent.indexOf('compatible') > -1 && userAgent.indexOf(\"MSIE\") > -1 && !(userAgent.indexOf(\"Opera\") > -1)) {\r\n let ieCss = ele.currentStyle;\r\n eleTBMargin = parseInt(ieCss['marginTop']) + parseInt(ieCss['marginBottom']);\r\n } else {\r\n eleMargin = eleCss.margin.split(' ');\r\n\r\n if (eleMargin.length == 1) {\r\n eleTBMargin = parseInt(eleMargin[0]) * 2;\r\n } else {\r\n const [mt, mr, mb, ml] = eleMargin;\r\n eleTBMargin = parseInt(mb) ? parseInt(mt) + parseInt(mb) : parseInt(mt);\r\n }\r\n }\r\n\r\n tableHeight = eleTBMargin + tableHeight;\r\n }\r\n tableHeight = window.innerHeight - tableHeight;\r\n return tableHeight;\r\n }\r\n \r\n // 表格INX\r\n export function autoAddTableInx(inx) {\r\n let i = parseInt(inx) + 1 + '';\r\n let first = '0';\r\n return first.repeat(4 - i.length) + i\r\n }","\n<div class=\"ui-table\">\n <div class=\"ui-table__tab\">\n <slot></slot>\n </div>\n <el-table \n ref=\"myTable\"\n highlightRow\n :border=\"true\"\n :data=\"tableData\"\n :[isBindHeight]=\"tableHeight\"\n :[isBindMaxHeight]=\"maxHeight\"\n @selection-change=\"handleSelectionChange\">\n <el-table-column type=\"selection\" width=\"35\" v-if=\"showSelect\" :selectable=\"selectable\"></el-table-column>\n <el-table-column v-for=\"(item, index) in tableTitle\"\n minWidth=\"60px\"\n :label=\"item\"\n :key=\"tableProps[index]\" \n :prop=\"tableProps[index]\" \n :width=\"tableProps[index] === 'index' ? '60px' : (tableColsWidth[index] || '')\">\n\n <!-- 表头插槽 自定义表头-->\n <template v-slot:header=\"scope\">\n <slot \n :name=\"tableProps[index] + 'Title'\" \n :row=\"item\" \n :$index=\"scope.$index\">\n <span>{{ item }}</span>\n </slot>\n </template>\n\n <!-- 内容插槽 -->\n <template v-slot:default=\"scope\">\n <slot \n :name=\"tableProps[index]\" \n :row=\"scope.row\" \n :$index=\"scope.$index\">\n <span>{{ tableProps[index] === 'index' ? changeTableInx(scope.$index) :\n scope.row[tableProps[index]]\n }}</span>\n </slot>\n </template>\n </el-table-column>\n <template v-slot:empty>\n <div v-if=\"!autoHeight\">\n <el-empty v-show=\"!tableData.length\" description=\"暂无数据\"></el-empty>\n </div>\n </template>\n </el-table>\n <div class=\"ui-pagination\" v-if=\"showPage\">\n <el-pagination ref=\"pageRef\" \n layout=\"total, sizes, prev, pager, next, jumper\"\n :current-page=\"pageData.offset\"\n :page-sizes=\"pageSizes\" \n :page-size=\"pageData.limit\" \n :total=\"pageData.total\"\n @size-change=\"val => handlePageChange('limit', val)\"\n @current-change=\"val => handlePageChange('offset', val)\" >\n </el-pagination>\n </div>\n</div>\n","<template>\r\n <div class=\"ui-table\">\r\n <div class=\"ui-table__tab\">\r\n <slot></slot>\r\n </div>\r\n <el-table \r\n ref=\"myTable\"\r\n highlightRow\r\n :border=\"true\"\r\n :data=\"tableData\"\r\n :[isBindHeight]=\"tableHeight\"\r\n :[isBindMaxHeight]=\"maxHeight\"\r\n @selection-change=\"handleSelectionChange\">\r\n <el-table-column type=\"selection\" width=\"35\" v-if=\"showSelect\" :selectable=\"selectable\"></el-table-column>\r\n <el-table-column v-for=\"(item, index) in tableTitle\"\r\n minWidth=\"60px\"\r\n :label=\"item\"\r\n :key=\"tableProps[index]\" \r\n :prop=\"tableProps[index]\" \r\n :width=\"tableProps[index] === 'index' ? '60px' : (tableColsWidth[index] || '')\">\r\n\r\n <!-- 表头插槽 自定义表头-->\r\n <template v-slot:header=\"scope\">\r\n <slot \r\n :name=\"tableProps[index] + 'Title'\" \r\n :row=\"item\" \r\n :$index=\"scope.$index\">\r\n <span>{{ item }}</span>\r\n </slot>\r\n </template>\r\n\r\n <!-- 内容插槽 -->\r\n <template v-slot:default=\"scope\">\r\n <slot \r\n :name=\"tableProps[index]\" \r\n :row=\"scope.row\" \r\n :$index=\"scope.$index\">\r\n <span>{{ tableProps[index] === 'index' ? changeTableInx(scope.$index) :\r\n scope.row[tableProps[index]]\r\n }}</span>\r\n </slot>\r\n </template>\r\n </el-table-column>\r\n <template v-slot:empty>\r\n <div v-if=\"!autoHeight\">\r\n <el-empty v-show=\"!tableData.length\" description=\"暂无数据\"></el-empty>\r\n </div>\r\n </template>\r\n </el-table>\r\n <div class=\"ui-pagination\" v-if=\"showPage\">\r\n <el-pagination ref=\"pageRef\" \r\n layout=\"total, sizes, prev, pager, next, jumper\"\r\n :current-page=\"pageData.offset\"\r\n :page-sizes=\"pageSizes\" \r\n :page-size=\"pageData.limit\" \r\n :total=\"pageData.total\"\r\n @size-change=\"val => handlePageChange('limit', val)\"\r\n @current-change=\"val => handlePageChange('offset', val)\" >\r\n </el-pagination>\r\n </div>\r\n </div>\r\n</template>\r\n<script>\r\nimport { countTableHeight } from '@/utils';\r\nexport default {\r\n name: 'ComTable',\r\n props: {\r\n\r\n // 是否显示勾选框\r\n showSelect: { type: Boolean, default: false },\r\n\r\n // 勾选方法\r\n selectable: { type: Function, default() { return () => { } } },\r\n\r\n // 表格数据\r\n tableData: { type: Array, default() { return [] } },\r\n\r\n // 表头映射\r\n tableMap: { type: Object, default() { return { index: '序号' } } },\r\n\r\n // 列宽度\r\n colsWidth: { type: [Array, Object], default() { return [] } },\r\n\r\n // 分页对象\r\n pageData: { type: Object, default() { return {} } },\r\n\r\n // 是否显示分页\r\n showPage: { type: Boolean, default: true },\r\n\r\n // 固定表格高度\r\n height: { type: String, default: '' },\r\n\r\n // 表格高度自适应\r\n autoHeight: { type: Boolean, default: false },\r\n\r\n // 最大高度 \r\n maxHeight: { type: String, default: '' },\r\n\r\n // 高度占位值 当有特殊情况表格高度需减少指定值\r\n heightStatic: { type: Number, default: 0 }\r\n },\r\n\r\n data() {\r\n return {\r\n pageSizes: [20, 50, 100, 200],\r\n tableHeight: ''\r\n }\r\n },\r\n\r\n computed: {\r\n tableTitle() {\r\n return Object.values(this.tableMap);\r\n },\r\n tableProps() {\r\n return Object.keys(this.tableMap);\r\n },\r\n tableColsWidth() {\r\n if (Array.isArray(this.colsWidth)) {\r\n return this.colsWidth.map(item => `${parseInt(item)}px`);\r\n } else {\r\n return this.tableProps.map(item => this.colsWidth[item] ? `${parseInt(this.colsWidth[item])}px` : '') \r\n }\r\n },\r\n isBindHeight() {\r\n return this.tableHeight ? 'height' : ''\r\n },\r\n isBindMaxHeight() {\r\n return this.maxHeight ? 'max-height' : ''\r\n },\r\n },\r\n methods: {\r\n\r\n changeTableInx(inx) {\r\n let i = parseInt(inx) + 1 + '';\r\n let first = '0';\r\n return first.repeat(4 - i.length) + i\r\n },\r\n\r\n // 刷新表格高度\r\n handleRefreshHeight() {\r\n this.tableHeight = `${countTableHeight() - this.heightStatic}px`;\r\n console.log(this.tableHeight, 'this.tableHeight');\r\n this.$refs['myTable'] && this.$refs['myTable'].doLayout();\r\n },\r\n\r\n // 分页切换\r\n handlePageChange(type = 'offset', val) {\r\n if (type === 'offset') {\r\n if (this.tempSize > this.pageData.total && this.pageData.offset > 1) return;\r\n this.$emit('pageChange', type, val);\r\n } else {\r\n this.tempSize = val;\r\n this.$emit('pageChange', type, val)\r\n }\r\n },\r\n\r\n // 勾选\r\n handleSelectionChange(val) {\r\n this.$emit('selectionChange', val);\r\n }\r\n },\r\n async mounted() {\r\n\r\n // 没设置表格高度 高度根据屏幕高度适应\r\n if (!this.autoHeight && !this.height) {\r\n await this.$nextTick();\r\n this.handleRefreshHeight();\r\n\r\n window.addEventListener('resize', this.handleRefreshHeight);\r\n } else if (this.height) {\r\n this.tableHeight = this.height;\r\n this.$refs['myTable'] && this.$refs['myTable'].doLayout();\r\n }\r\n },\r\n beforeDestroy() {\r\n window.removeEventListener('resize', this.handleRefreshHeight);\r\n }\r\n}\r\n</script>\r\n<style lang=\"less\" scoped>\r\n\r\n .ui-table {\r\n padding: 0 10px;\r\n }\r\n\r\n .el-table {\r\n \r\n\r\n /deep/ .el-table__body {\r\n ::-webkit-scrollbar {\r\n width: 4px;\r\n background-color: #e4e4e5;\r\n }\r\n\r\n ::-webkit-scrollbar-thumb {\r\n border-radius: 4px;\r\n background-color: @theme-color;\r\n }\r\n }\r\n }\r\n\r\n .ui-pagination {\r\n text-align: center;\r\n padding: 10px 0;\r\n }\r\n</style>","import Vue from 'vue';\r\nimport ComComponent from './src/index.vue';\r\n\r\ntype SFCWithInstall<T> = T & { install(app: typeof Vue): void }; // vue 安装\r\n\r\n// 安装\r\nComComponent.install = (app: typeof Vue) => {\r\n app.component(ComComponent.name, ComComponent);\r\n};\r\nconst InComComponent: SFCWithInstall<typeof ComComponent> = ComComponent; // 增加类型\r\nexport default InComComponent;","import ComTemplate from '../packages/template';\r\nimport ComMenu from '../packages/menu';\r\nimport ComTabs from '../packages/tabs';\r\nimport ComTool from '../packages/tool';\r\nimport ComDialog from '../packages/dialog';\r\nimport ComFormItem from '../packages/form-item';\r\nimport ComOperation from '../packages/operation';\r\nimport ComSearch from '../packages/search';\r\nimport ComTable from '../packages/table';\r\n\r\n\r\nconst components:any[] = [\r\n ComTemplate,\r\n ComMenu,\r\n ComTabs,\r\n ComTool,\r\n ComDialog,\r\n ComFormItem,\r\n ComOperation,\r\n ComSearch,\r\n ComTable\r\n];\r\n\r\n/**\r\n * @param { App }\r\n * @returns { Void }\r\n */\r\nconst install = (Vue:any, ops:any = { config: {} }) => {\r\n components.forEach(component => Vue.component(component.name, component));\r\n\r\n // 注册组件时可以带入UI库配置\r\n Vue.prototype.$UICONFIG = ops.config;\r\n}\r\n\r\n\r\nconst defaultConfig = {\r\n version: 'dev',\r\n install,\r\n ComTemplate,\r\n ComMenu,\r\n ComTabs,\r\n ComTool,\r\n ComDialog,\r\n ComFormItem,\r\n ComOperation,\r\n ComSearch,\r\n ComTable\r\n};\r\n\r\ntry {\r\n defaultConfig.version = require('../package.json').version;\r\n} catch(e) {\r\n console.log('no require');\r\n}\r\n\r\nexport default defaultConfig;"],"names":["render","staticRenderFns","ComComponent","InComComponent","ComTemplate","ComMenu","ComTabs","ComTool","ComDialog","ComFormItem","ComOperation","ComSearch","ComTable"],"mappings":"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"}
|
package/dist/tenghui-ui.umd.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
(function(s,a){typeof exports=="object"&&typeof module!="undefined"?module.exports=a():typeof define=="function"&&define.amd?define(a):(s=typeof globalThis!="undefined"?globalThis:s||self,s["tenghui-ui"]=a())})(this,function(){"use strict";var s=function(){var e=this,t=e.$createElement,r=e._self._c||t;return r("div",{staticClass:"ui-template"},[r("h1",[e._v(e._s(e.msg))])])},a=[],F="";function h(e,t,r,y,_,c,p,R){var n=typeof e=="function"?e.options:e;t&&(n.render=t,n.staticRenderFns=r,n._compiled=!0),y&&(n.functional=!0),c&&(n._scopeId="data-v-"+c);var i;if(p?(i=function(o){o=o||this.$vnode&&this.$vnode.ssrContext||this.parent&&this.parent.$vnode&&this.parent.$vnode.ssrContext,!o&&typeof __VUE_SSR_CONTEXT__!="undefined"&&(o=__VUE_SSR_CONTEXT__),_&&_.call(this,o),o&&o._registeredComponents&&o._registeredComponents.add(p)},n._ssrRegister=i):_&&(i=R?function(){_.call(this,(n.functional?this.parent:this).$root.$options.shadowRoot)}:_),i)if(n.functional){n._injectStyles=i;var b=n.render;n.render=function(E,m){return i.call(m),b(E,m)}}else{var v=n.beforeCreate;n.beforeCreate=v?[].concat(v,i):[i]}return{exports:e,options:n}}const C={name:"ComTemplate",data(){return{msg:"\u6D4B\u8BD5\u7EC4\u4EF6"}},methods:{}},l={};var g=h(C,s,a,!1,T,"1f6eab87",null,null);function T(e){for(let t in l)this[t]=l[t]}var f=function(){return g.exports}();f.install=e=>{e.component(f.name,f)};const u=f,$=[u],d={version:"dev",install:(e,t={config:{}})=>{$.forEach(r=>e.component(r.name,r)),e.prototype.$UICONFIG=t.config},ComTemplate:u};try{d.version=require("../package.json").version}catch{console.log("no require")}return d});
|
|
1
|
+
(function(m,h){typeof exports=="object"&&typeof module!="undefined"?module.exports=h():typeof define=="function"&&define.amd?define(h):(m=typeof globalThis!="undefined"?globalThis:m||self,m["tenghui-ui"]=h())})(this,function(){"use strict";var m=function(){var e=this,n=e.$createElement,t=e._self._c||n;return t("div",{staticClass:"ui-template"},[t("h1",[e._v(e._s(e.msg))]),t("el-table",{staticStyle:{width:"100%"},attrs:{data:e.tableData}},[t("el-table-column",{attrs:{prop:"date",label:"\u65E5\u671F",width:"180"}}),t("el-table-column",{attrs:{prop:"name",label:"\u59D3\u540D",width:"180"}}),t("el-table-column",{attrs:{prop:"address",label:"\u5730\u5740"}})],1)],1)},h=[],Ae="";function c(e,n,t,a,l,o,d,u){var s=typeof e=="function"?e.options:e;n&&(s.render=n,s.staticRenderFns=t,s._compiled=!0),a&&(s.functional=!0),o&&(s._scopeId="data-v-"+o);var i;if(d?(i=function(r){r=r||this.$vnode&&this.$vnode.ssrContext||this.parent&&this.parent.$vnode&&this.parent.$vnode.ssrContext,!r&&typeof __VUE_SSR_CONTEXT__!="undefined"&&(r=__VUE_SSR_CONTEXT__),l&&l.call(this,r),r&&r._registeredComponents&&r._registeredComponents.add(d)},s._ssrRegister=i):l&&(i=u?function(){l.call(this,(s.functional?this.parent:this).$root.$options.shadowRoot)}:l),i)if(s.functional){s._injectStyles=i;var p=s.render;s.render=function(Q,f){return i.call(f),p(Q,f)}}else{var _=s.beforeCreate;s.beforeCreate=_?[].concat(_,i):[i]}return{exports:e,options:s}}const U={name:"ComTemplate",data(){return{msg:"\u6D4B\u8BD5\u7EC4\u4EF611111",tableData:[{date:"2016-05-02",name:"\u738B\u5C0F\u864E",address:"\u4E0A\u6D77\u5E02\u666E\u9640\u533A\u91D1\u6C99\u6C5F\u8DEF 1518 \u5F04"},{date:"2016-05-04",name:"\u738B\u5C0F\u864E",address:"\u4E0A\u6D77\u5E02\u666E\u9640\u533A\u91D1\u6C99\u6C5F\u8DEF 1517 \u5F04"},{date:"2016-05-01",name:"\u738B\u5C0F\u864E",address:"\u4E0A\u6D77\u5E02\u666E\u9640\u533A\u91D1\u6C99\u6C5F\u8DEF 1519 \u5F04"},{date:"2016-05-03",name:"\u738B\u5C0F\u864E",address:"\u4E0A\u6D77\u5E02\u666E\u9640\u533A\u91D1\u6C99\u6C5F\u8DEF 1516 \u5F04"}]}},methods:{}},F={};var J=c(U,m,h,!1,V,"183fe45a",null,null);function V(e){for(let n in F)this[n]=F[n]}var v=function(){return J.exports}();v.install=e=>{e.component(v.name,v)};const T=v;var X=function(){var e=this,n=e.$createElement,t=e._self._c||n;return t("el-menu",{attrs:{mode:"horizontal","background-color":"#545c64","text-color":"#ccc","active-text-color":"#FFF","menu-trigger":"hover","default-active":e.$route.path},on:{select:e.handleJump}},[e._l(e.data,function(a,l){return[a.children?t("el-submenu",{attrs:{index:a.path||a.name}},[t("template",{slot:"title"},[t("i",{staticClass:"icon-chanpinguanli-chanpinliebiao"}),t("span",[e._v(e._s(a.name))])]),e._l(a.children,function(o,d){return[o.children?t("el-submenu",{attrs:{index:o.path||o.name}},[t("template",{slot:"title"},[e._v(e._s(o.name))]),e._l(o.children,function(u,s){return t("el-menu-item",{key:u.name,attrs:{index:u.path||u.name}},[e._v(e._s(u.name))])})],2):t("el-menu-item",{attrs:{index:o.path||o.name}},[e._v(e._s(o.name))])]})],2):t("el-menu-item",{attrs:{index:a.path||a.name}},[t("i",{staticClass:"el-icon-menu"}),t("span",{attrs:{slot:"title"},slot:"title"},[e._v(e._s(a.name))])])]})],2)},G=[],De="";const K={name:"ComMenu",props:{data:{type:Array,default(){return[]}}},data(){return{}},computed:{},methods:{handleJump(e){this.$emit("jump",e)}}},H={};var Y=c(K,X,G,!1,Z,"1a7163e6",null,null);function Z(e){for(let n in H)this[n]=H[n]}var g=function(){return Y.exports}();g.install=e=>{e.component(g.name,g)};const I=g;var ee=function(){var e=this,n=e.$createElement,t=e._self._c||n;return t("div",{staticClass:"ui-tabs"},[t("ul",{staticClass:"clear-fix"},e._l(e.data,function(a){return t("li",{staticClass:"ui-tabs__item",class:{"ui-tabs__item--active":e.currentTab.path===a.path},on:{click:function(l){return e.handleToggle(a.path)}}},[t("span",[e._v(e._s(a.name))]),t("span",{staticClass:"el-icon-error"})])}),0)])},te=[],Pe="";const ne={name:"ComTabs",props:{data:{type:Array,default(){return[]}},currentTab:{type:Object,default(){return{}}}},data(){return{}},methods:{handleToggle(e){this.$emit("toggle",e)}}},k={};var ae=c(ne,ee,te,!1,oe,"65888dc2",null,null);function oe(e){for(let n in k)this[n]=k[n]}var b=function(){return ae.exports}();b.install=e=>{e.component(b.name,b)};const O=b;var le=function(){var e=this,n=e.$createElement,t=e._self._c||n;return t("el-dropdown",[t("span",{staticClass:"el-dropdown-link"},[t("i",{staticClass:"el-icon-s-tools"})]),t("el-dropdown-menu",{attrs:{slot:"dropdown"},slot:"dropdown"},[t("el-dropdown-item",{attrs:{icon:"icon-tuichudenglu"},on:{click:function(a){return e.handleOperation("outLogin")}}},[e._v("\u9000\u51FA\u767B\u5F55")])],1)],1)},se=[],Be="";const re={name:"ComTool",methods:{handleOperation(e){switch(e){case"outLogin":this.$confirm("\u786E\u8BA4\u9000\u51FA\u767B\u5F55?","\u63D0\u793A",{type:"warning"}).then(()=>{console.log("out login")});break}}}},R={};var ie=c(re,le,se,!1,ue,"b586e068",null,null);function ue(e){for(let n in R)this[n]=R[n]}var y=function(){return ie.exports}();y.install=e=>{e.component(y.name,y)};const j=y;var ce=function(){var e=this,n=e.$createElement,t=e._self._c||n;return t("el-dialog",{attrs:{"append-to-body":"",top:e.top,title:e.title,visible:e.visible,width:e.width},on:{close:e.handleClose},scopedSlots:e._u([{key:"footer",fn:function(){return[e._t("footer",[t("el-button",{attrs:{size:"small"},on:{click:function(a){return e.$emit("update:visible",!1)}}},[e._v("\u53D6\u6D88")]),t("el-button",{attrs:{size:"small",type:"primary"},on:{click:e.handleConfirm}},[e._v("\u786E\u5B9A")])])]},proxy:!0}],null,!0)},[e._t("default")],2)},de=[],We="";const pe={name:"ComDialog",props:{visible:{type:Boolean,default:!1},title:{type:String,default:"\u6807\u9898"},width:{type:String,default:"600px"},top:{type:String,default:"50px"}},data(){return{show:!1}},methods:{handleClose(){this.$emit("close"),this.$emit("update:visible",!1)},handleConfirm(){this.$emit("confirm")}}},z={};var _e=c(pe,ce,de,!1,me,"613d84c4",null,null);function me(e){for(let n in z)this[n]=z[n]}var $=function(){return _e.exports}();$.install=e=>{e.component($.name,$)};const M=$;var he=function(){var e=this,n=e.$createElement,t=e._self._c||n;return t("div",{staticClass:"ui-form__item"},[t("div",[e._t("label",[e.label?t("div",{staticClass:"ui-item__label"},[t("span",[e._v(e._s(e.label))])]):e._e()])],2),t("div",{staticClass:"ui-item__main"},[e.type==="input"?[t("el-input",{attrs:{size:"small",placeholder:e.placeholder,disabled:e.readonly,maxlength:e.maxlength},model:{value:e.modelForm,callback:function(a){e.modelForm=a},expression:"modelForm"}})]:e.type==="select"?[t("el-select",{attrs:{size:"small",placeholder:e.placeholder||"\u8BF7\u9009\u62E9",multiple:e.multiple,disabled:e.readonly,filterable:"",clearable:""},model:{value:e.modelForm,callback:function(a){e.modelForm=a},expression:"modelForm"}},e._l(e.selectOption,function(a){return t("el-option",{key:a.value,attrs:{value:a.value.toString(),label:a.label}})}),1)]:e.type==="textarea"?[t("el-input",{attrs:{size:"small",type:"textarea",placeholder:e.placeholder||"\u8BF7\u8F93\u5165",rows:4,disabled:e.readonly},model:{value:e.modelForm,callback:function(a){e.modelForm=a},expression:"modelForm"}})]:e.type==="input-number"?[t("el-input-number",{attrs:{size:"small","controls-position":"right"},model:{value:e.modelForm,callback:function(a){e.modelForm=a},expression:"modelForm"}})]:e.type==="cascader"?[t("el-cascader",{attrs:{size:"small",options:e.options,props:e.props},on:{change:e.handleChange},model:{value:e.modelForm,callback:function(a){e.modelForm=a},expression:"modelForm"}})]:e._e()],2)])},fe=[],qe="";const ve={name:"ComFormItem",model:{prop:"model",event:"changes"},props:{model:void 0,type:{type:String,default:"input"},label:{type:String,default:""},readonly:{type:Boolean,default:!1},placeholder:{type:String,default:""},maxlength:{type:[Array,String],default:""},multiple:{type:Boolean,default:!1},options:{type:[Object,Array],default(){return{"1":"\u9009\u9879\u4E00","2":"\u9009\u9879\u4E8C"}}},props:{type:Object,default(){return{value:"value",label:"label"}}}},data(){return{modelForm:this.model}},computed:{selectOption(){let e=[];if(Array.isArray(this.options)&&this.options.length&&this.options[0][this.props.label]===void 0){const{label:n,value:t}=this.props;e=this.options.map((a,l)=>{const o={label:a,value:l};return{label:o[n],value:o[t]}})}else if(!Array.isArray(this.options))e=Object.entries(this.options).map(([n,t])=>({label:t,value:n}));else{let n=[];n.push(...this.options),e=n.map(t=>({label:t[this.props.label],value:t[this.props.value]}))}return e}},methods:{handleChange(e){this.$emit("change",e)}},watch:{modelForm(e){this.$emit("changes",e)},model(e){this.modelForm=e}}},E={};var ge=c(ve,he,fe,!1,be,"07b0bd64",null,null);function be(e){for(let n in E)this[n]=E[n]}var C=function(){return ge.exports}();C.install=e=>{e.component(C.name,C)};const A=C;var ye=function(){var e=this,n=e.$createElement,t=e._self._c||n;return t("div",{staticClass:"ui-operation"},[e._t("default")],2)},$e=[],Le="";const Ce={name:"ComOperation",prop:{type:String,default:"main"}},D={};var xe=c(Ce,ye,$e,!1,Se,"3c6cb9f6",null,null);function Se(e){for(let n in D)this[n]=D[n]}var x=function(){return xe.exports}();x.install=e=>{e.component(x.name,x)};const P=x;var we=function(){var e=this,n=e.$createElement,t=e._self._c||n;return t("div",{staticClass:"ui-search"},[t("div",{staticClass:"ui-search__main"},[e._t("default")],2),t("div",{staticClass:"ui-search__footer"},[t("el-button",{attrs:{size:"small",icon:"el-icon-refresh"},on:{click:e.handleReset}},[e._v("\u91CD\u7F6E")]),t("el-button",{attrs:{size:"small",icon:"el-icon-search",type:"primary"},on:{click:e.handleQuery}},[e._v("\u67E5\u8BE2")])],1)])},Fe=[],Ne="";const Te={name:"ComSearch",methods:{handleQuery(){const e=this.$parent.handleQuery;e?e():this.$emit("query")},handleReset(){const e=this.$parent.handleReset;e?e():this.$emit("reset")}}},B={};var He=c(Te,we,Fe,!1,Ie,"07c7d454",null,null);function Ie(e){for(let n in B)this[n]=B[n]}var S=function(){return He.exports}();S.install=e=>{e.component(S.name,S)};const W=S;function ke(e=0){const n=document.querySelectorAll(".ui-page__main:not(.v-leave) > div"),t=document.querySelector(".ui-pagination"),a=document.querySelector(".ui-container__header"),l=document.querySelector(".ui-tabs");let o=e;o+=t?t.offsetHeight:0,o+=a?a.offsetHeight:0,o+=l?l.offsetHeight:0;let d=navigator.userAgent;for(let u=0;u<n.length;u++){let s=n[u];if(!s||s.className==="ui-table")continue;o+=s.offsetHeight;let i,p,_=document.defaultView.getComputedStyle(s);if(d.indexOf("Firefox")>-1)p=parseInt(_["margin-top"])+parseInt(_["margin-bottom"]);else if(d.indexOf("compatible")>-1&&d.indexOf("MSIE")>-1&&!(d.indexOf("Opera")>-1)){let r=s.currentStyle;p=parseInt(r.marginTop)+parseInt(r.marginBottom)}else if(i=_.margin.split(" "),i.length==1)p=parseInt(i[0])*2;else{const[r,Q,f,Je]=i;p=parseInt(f)?parseInt(r)+parseInt(f):parseInt(r)}o=p+o}return o=window.innerHeight-o,o}var Oe=function(){var e=this,n=e.$createElement,t=e._self._c||n;return t("div",{staticClass:"ui-table"},[t("div",{staticClass:"ui-table__tab"},[e._t("default")],2),t("el-table",e._b({ref:"myTable",attrs:{highlightRow:"",border:!0,data:e.tableData},on:{"selection-change":e.handleSelectionChange},scopedSlots:e._u([{key:"empty",fn:function(){return[e.autoHeight?e._e():t("div",[t("el-empty",{directives:[{name:"show",rawName:"v-show",value:!e.tableData.length,expression:"!tableData.length"}],attrs:{description:"\u6682\u65E0\u6570\u636E"}})],1)]},proxy:!0}])},"el-table",e._d({},[e.isBindHeight,e.tableHeight,e.isBindMaxHeight,e.maxHeight])),[e.showSelect?t("el-table-column",{attrs:{type:"selection",width:"35",selectable:e.selectable}}):e._e(),e._l(e.tableTitle,function(a,l){return t("el-table-column",{key:e.tableProps[l],attrs:{minWidth:"60px",label:a,prop:e.tableProps[l],width:e.tableProps[l]==="index"?"60px":e.tableColsWidth[l]||""},scopedSlots:e._u([{key:"header",fn:function(o){return[e._t(e.tableProps[l]+"Title",[t("span",[e._v(e._s(a))])],{row:a,$index:o.$index})]}},{key:"default",fn:function(o){return[e._t(e.tableProps[l],[t("span",[e._v(e._s(e.tableProps[l]==="index"?e.changeTableInx(o.$index):o.row[e.tableProps[l]]))])],{row:o.row,$index:o.$index})]}}],null,!0)})})],2),e.showPage?t("div",{staticClass:"ui-pagination"},[t("el-pagination",{ref:"pageRef",attrs:{layout:"total, sizes, prev, pager, next, jumper","current-page":e.pageData.offset,"page-sizes":e.pageSizes,"page-size":e.pageData.limit,total:e.pageData.total},on:{"size-change":function(a){return e.handlePageChange("limit",a)},"current-change":function(a){return e.handlePageChange("offset",a)}}})],1):e._e()],1)},Re=[],Qe="";const je={name:"ComTable",props:{showSelect:{type:Boolean,default:!1},selectable:{type:Function,default(){return()=>{}}},tableData:{type:Array,default(){return[]}},tableMap:{type:Object,default(){return{index:"\u5E8F\u53F7"}}},colsWidth:{type:[Array,Object],default(){return[]}},pageData:{type:Object,default(){return{}}},showPage:{type:Boolean,default:!0},height:{type:String,default:""},autoHeight:{type:Boolean,default:!1},maxHeight:{type:String,default:""},heightStatic:{type:Number,default:0}},data(){return{pageSizes:[20,50,100,200],tableHeight:""}},computed:{tableTitle(){return Object.values(this.tableMap)},tableProps(){return Object.keys(this.tableMap)},tableColsWidth(){return Array.isArray(this.colsWidth)?this.colsWidth.map(e=>`${parseInt(e)}px`):this.tableProps.map(e=>this.colsWidth[e]?`${parseInt(this.colsWidth[e])}px`:"")},isBindHeight(){return this.tableHeight?"height":""},isBindMaxHeight(){return this.maxHeight?"max-height":""}},methods:{changeTableInx(e){let n=parseInt(e)+1+"";return"0".repeat(4-n.length)+n},handleRefreshHeight(){this.tableHeight=`${ke()-this.heightStatic}px`,console.log(this.tableHeight,"this.tableHeight"),this.$refs.myTable&&this.$refs.myTable.doLayout()},handlePageChange(e="offset",n){if(e==="offset"){if(this.tempSize>this.pageData.total&&this.pageData.offset>1)return;this.$emit("pageChange",e,n)}else this.tempSize=n,this.$emit("pageChange",e,n)},handleSelectionChange(e){this.$emit("selectionChange",e)}},async mounted(){!this.autoHeight&&!this.height?(await this.$nextTick(),this.handleRefreshHeight(),window.addEventListener("resize",this.handleRefreshHeight)):this.height&&(this.tableHeight=this.height,this.$refs.myTable&&this.$refs.myTable.doLayout())},beforeDestroy(){window.removeEventListener("resize",this.handleRefreshHeight)}},q={};var ze=c(je,Oe,Re,!1,Me,"54b3bd8e",null,null);function Me(e){for(let n in q)this[n]=q[n]}var w=function(){return ze.exports}();w.install=e=>{e.component(w.name,w)};const L=w,Ee=[T,I,O,j,M,A,P,W,L],N={version:"dev",install:(e,n={config:{}})=>{Ee.forEach(t=>e.component(t.name,t)),e.prototype.$UICONFIG=n.config},ComTemplate:T,ComMenu:I,ComTabs:O,ComTool:j,ComDialog:M,ComFormItem:A,ComOperation:P,ComSearch:W,ComTable:L};try{N.version=require("../package.json").version}catch{console.log("no require")}return N});
|
|
2
2
|
//# sourceMappingURL=tenghui-ui.umd.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tenghui-ui.umd.js","sources":["../packages/template/src/index.vue?vue&type=template&lang.js","../packages/template/src/index.vue","../packages/template/index.ts","../src/main.ts"],"sourcesContent":["\n<div class=\"ui-template\">\n <h1>{{msg}}</h1>\n</div>\n","<template>\r\n <div class=\"ui-template\">\r\n <h1>{{msg}}</h1>\r\n </div>\r\n</template>\r\n\r\n<script>\r\n export default {\r\n name: \"ComTemplate\",\r\n data() {\r\n return {\r\n msg: '测试组件'\r\n }\r\n },\r\n methods: {\r\n }\r\n }\r\n</script>\r\n\r\n<style scoped>\r\n</style>","import Vue from 'vue';\r\nimport ComTemplate from './src/index.vue';\r\n\r\ntype SFCWithInstall<T> = T & { install(app: typeof Vue): void }; // vue 安装\r\n\r\n// 安装\r\nComTemplate.install = (app: typeof Vue) => {\r\n app.component(ComTemplate.name, ComTemplate);\r\n};\r\nconst InComTemplate: SFCWithInstall<typeof ComTemplate> = ComTemplate; // 增加类型\r\nexport default InComTemplate;","import ComTemplate from '../packages/template';\r\n\r\n\r\nconst components:any[] = [\r\n ComTemplate\r\n];\r\n\r\n/**\r\n * @param { App }\r\n * @returns { Void }\r\n */\r\nconst install = (Vue:any, ops:any = { config: {} }) => {\r\n components.forEach(component => Vue.component(component.name, component));\r\n\r\n // 注册组件时可以带入UI库配置\r\n Vue.prototype.$UICONFIG = ops.config;\r\n}\r\n\r\n\r\nconst defaultConfig = {\r\n version: 'dev',\r\n install,\r\n ComTemplate,\r\n};\r\n\r\ntry {\r\n defaultConfig.version = require('../package.json').version;\r\n} catch(e) {\r\n console.log('no require');\r\n}\r\n\r\nexport default defaultConfig;"],"names":["ComTemplate"],"mappings":"gPAAA,GAAI,GAAS,UAAY,CAAC,GAAI,GAAI,KAAS,EAAG,EAAI,eAAmB,EAAG,EAAI,MAAM,IAAI,EAAG,MAAO,GAAG,MAAM,CAAC,YAAY,eAAe,CAAC,EAAG,KAAK,CAAC,EAAI,GAAG,EAAI,GAAG,EAAI,WAC7J,EAAkB,mvBCMtB,oNCDA,EAAY,QAAU,AAAC,GAAoB,GACnC,UAAU,EAAY,KAAM,IAEpC,KAAM,GAAoD,ECNpD,EAAmB,CACrBA,GAeE,EAAgB,CAClB,QAAS,MACT,QAVY,CAAC,EAAS,EAAU,CAAE,OAAQ,MAAS,GACxC,QAAQ,GAAa,EAAI,UAAU,EAAU,KAAM,MAG1D,UAAU,UAAY,EAAI,oBAO9BA,GAGJ,GAAI,GACc,QAAU,QAAQ,mBAAmB,sBAE3C,IAAI"}
|
|
1
|
+
{"version":3,"file":"tenghui-ui.umd.js","sources":["../packages/template/src/index.vue?vue&type=template&lang.js","../packages/template/src/index.vue","../packages/template/index.ts","../packages/menu/src/index.vue?vue&type=template&lang.js","../packages/menu/src/index.vue","../packages/menu/index.ts","../packages/tabs/src/index.vue?vue&type=template&lang.js","../packages/tabs/src/index.vue","../packages/tabs/index.ts","../packages/tool/src/index.vue?vue&type=template&lang.js","../packages/tool/src/index.vue","../packages/tool/index.ts","../packages/dialog/src/index.vue?vue&type=template&lang.js","../packages/dialog/src/index.vue","../packages/dialog/index.ts","../packages/form-item/src/index.vue?vue&type=template&lang.js","../packages/form-item/src/index.vue","../packages/form-item/index.ts","../packages/operation/src/index.vue?vue&type=template&lang.js","../packages/operation/src/index.vue","../packages/operation/index.ts","../packages/search/src/index.vue?vue&type=template&lang.js","../packages/search/src/index.vue","../packages/search/index.ts","../utils/index.ts","../packages/table/src/index.vue?vue&type=template&lang.js","../packages/table/src/index.vue","../packages/table/index.ts","../src/main.ts"],"sourcesContent":["\n<div class=\"ui-template\">\n <h1>{{ msg }}</h1>\n <el-table :data=\"tableData\" style=\"width: 100%\">\n <el-table-column prop=\"date\" label=\"日期\" width=\"180\">\n </el-table-column>\n <el-table-column prop=\"name\" label=\"姓名\" width=\"180\">\n </el-table-column>\n <el-table-column prop=\"address\" label=\"地址\">\n </el-table-column>\n </el-table>\n</div>\n","<template>\r\n <div class=\"ui-template\">\r\n <h1>{{ msg }}</h1>\r\n <el-table :data=\"tableData\" style=\"width: 100%\">\r\n <el-table-column prop=\"date\" label=\"日期\" width=\"180\">\r\n </el-table-column>\r\n <el-table-column prop=\"name\" label=\"姓名\" width=\"180\">\r\n </el-table-column>\r\n <el-table-column prop=\"address\" label=\"地址\">\r\n </el-table-column>\r\n </el-table>\r\n </div>\r\n</template>\r\n\r\n<script>\r\nexport default {\r\n name: \"ComTemplate\",\r\n data() {\r\n return {\r\n msg: '测试组件11111',\r\n tableData: [{\r\n date: '2016-05-02',\r\n name: '王小虎',\r\n address: '上海市普陀区金沙江路 1518 弄'\r\n }, {\r\n date: '2016-05-04',\r\n name: '王小虎',\r\n address: '上海市普陀区金沙江路 1517 弄'\r\n }, {\r\n date: '2016-05-01',\r\n name: '王小虎',\r\n address: '上海市普陀区金沙江路 1519 弄'\r\n }, {\r\n date: '2016-05-03',\r\n name: '王小虎',\r\n address: '上海市普陀区金沙江路 1516 弄'\r\n }]\r\n }\r\n },\r\n methods: {\r\n }\r\n}\r\n</script>\r\n\r\n<style scoped>\r\n</style>","import Vue from 'vue';\r\nimport ComTemplate from './src/index.vue';\r\n\r\ntype SFCWithInstall<T> = T & { install(app: typeof Vue): void }; // vue 安装\r\n\r\n// 安装\r\nComTemplate.install = (app: typeof Vue) => {\r\n app.component(ComTemplate.name, ComTemplate);\r\n};\r\nconst InComTemplate: SFCWithInstall<typeof ComTemplate> = ComTemplate; // 增加类型\r\nexport default InComTemplate;","\n<el-menu \n mode=\"horizontal\"\n background-color=\"#545c64\"\n text-color=\"#ccc\"\n active-text-color=\"#FFF\"\n menu-trigger=\"hover\"\n :default-active=\"$route.path\"\n @select=\"handleJump\">\n <template v-for=\"(item, index) in data\">\n <el-submenu v-if=\"item.children\" :index=\"item.path || item.name\">\n <template slot=\"title\">\n <i class=\"icon-chanpinguanli-chanpinliebiao\"></i>\n <span>{{item.name}}</span>\n </template>\n <template v-for=\"(_item, _index) in item.children\">\n <el-submenu v-if=\"_item.children\" \n :index=\"_item.path || _item.name\">\n <template slot=\"title\">{{_item.name}}</template>\n <el-menu-item v-for=\"(__item, __index) in _item.children\" \n :key=\"__item.name\" \n :index=\"__item.path || __item.name\">{{__item.name}}</el-menu-item>\n </el-submenu>\n <el-menu-item v-else :index=\"_item.path || _item.name\">{{_item.name}}</el-menu-item>\n </template>\n </el-submenu>\n <el-menu-item v-else :index=\"item.path || item.name\">\n <i class=\"el-icon-menu\"></i>\n <span slot=\"title\">{{item.name}}</span>\n </el-menu-item>\n </template>\n</el-menu>\n","<template>\r\n <el-menu \r\n mode=\"horizontal\"\r\n background-color=\"#545c64\"\r\n text-color=\"#ccc\"\r\n active-text-color=\"#FFF\"\r\n menu-trigger=\"hover\"\r\n :default-active=\"$route.path\"\r\n @select=\"handleJump\">\r\n <template v-for=\"(item, index) in data\">\r\n <el-submenu v-if=\"item.children\" :index=\"item.path || item.name\">\r\n <template slot=\"title\">\r\n <i class=\"icon-chanpinguanli-chanpinliebiao\"></i>\r\n <span>{{item.name}}</span>\r\n </template>\r\n <template v-for=\"(_item, _index) in item.children\">\r\n <el-submenu v-if=\"_item.children\" \r\n :index=\"_item.path || _item.name\">\r\n <template slot=\"title\">{{_item.name}}</template>\r\n <el-menu-item v-for=\"(__item, __index) in _item.children\" \r\n :key=\"__item.name\" \r\n :index=\"__item.path || __item.name\">{{__item.name}}</el-menu-item>\r\n </el-submenu>\r\n <el-menu-item v-else :index=\"_item.path || _item.name\">{{_item.name}}</el-menu-item>\r\n </template>\r\n </el-submenu>\r\n <el-menu-item v-else :index=\"item.path || item.name\">\r\n <i class=\"el-icon-menu\"></i>\r\n <span slot=\"title\">{{item.name}}</span>\r\n </el-menu-item>\r\n </template>\r\n </el-menu>\r\n</template>\r\n<script>\r\n\r\nexport default {\r\n name: 'ComMenu',\r\n props: {\r\n data: {\r\n type: Array,\r\n default() {\r\n return []\r\n }\r\n }\r\n },\r\n data() {\r\n return {\r\n \r\n }\r\n },\r\n computed: {\r\n \r\n },\r\n methods: {\r\n handleJump(path) {\r\n this.$emit('jump', path);\r\n }\r\n }\r\n}\r\n</script>\r\n<style lang=\"less\" scoped>\r\n .el-menu {\r\n width: 100%;\r\n height: 60px !important;\r\n }\r\n\r\n .el-submenu .el-menu-item {\r\n min-width: unset;\r\n }\r\n\r\n .el-submenu__title i {\r\n color: unset;\r\n }\r\n</style>","import Vue from 'vue';\r\nimport ComComponent from './src/index.vue';\r\n\r\ntype SFCWithInstall<T> = T & { install(app: typeof Vue): void }; // vue 安装\r\n\r\n// 安装\r\nComComponent.install = (app: typeof Vue) => {\r\n app.component(ComComponent.name, ComComponent);\r\n};\r\nconst InComComponent: SFCWithInstall<typeof ComComponent> = ComComponent; // 增加类型\r\nexport default InComComponent;","\n<div class=\"ui-tabs\">\n <ul class=\"clear-fix\">\n <li class=\"ui-tabs__item\" v-for=\"item in data\" :class=\"{ 'ui-tabs__item--active': currentTab.path === item.path }\" \n @click=\"handleToggle(item.path)\">\n <span>{{item.name}}</span>\n <span class=\"el-icon-error\"></span>\n </li>\n </ul>\n</div>\n","<template>\r\n <div class=\"ui-tabs\">\r\n <ul class=\"clear-fix\">\r\n <li class=\"ui-tabs__item\" v-for=\"item in data\" :class=\"{ 'ui-tabs__item--active': currentTab.path === item.path }\" \r\n @click=\"handleToggle(item.path)\">\r\n <span>{{item.name}}</span>\r\n <span class=\"el-icon-error\"></span>\r\n </li>\r\n </ul>\r\n </div>\r\n</template>\r\n<script>\r\nexport default {\r\n name: 'ComTabs',\r\n props: {\r\n data: {\r\n type: Array,\r\n default() {\r\n return []\r\n }\r\n },\r\n currentTab: {\r\n type: Object,\r\n default() {\r\n return {}\r\n }\r\n }\r\n },\r\n data() {\r\n return {\r\n\r\n }\r\n },\r\n methods: {\r\n handleToggle(path) {\r\n this.$emit('toggle', path);\r\n }\r\n }\r\n}\r\n</script>\r\n<style lang=\"less\" scoped>\r\n\r\n .ui-tabs {\r\n\r\n border-bottom: 1px solid @color-border;\r\n padding: 0 10px;\r\n height: 40px;\r\n background-color: #FFF;\r\n \r\n &__item {\r\n float: left;\r\n height: 31px;\r\n border-radius: 6px 6px 0 0;\r\n border: 1px solid @color-border;\r\n margin-top: 10px;\r\n box-sizing: border-box;\r\n font-size: 12px;\r\n line-height: 30px;\r\n padding: 0 10px;\r\n color: @color-f4;\r\n cursor: pointer;\r\n border-bottom-color: #FFF;\r\n margin-right: 1px;\r\n position: relative;\r\n transition: all .1s linear;\r\n\r\n &:hover {\r\n .el-icon-error {\r\n opacity: 1;\r\n }\r\n }\r\n\r\n .el-icon-error {\r\n position: absolute;\r\n right: 2px;\r\n top: 50%;\r\n margin-top: -5px;\r\n opacity: 0;\r\n transition: all .1s linear;\r\n\r\n &:hover {\r\n color: @theme-color2;\r\n }\r\n }\r\n\r\n &--active {\r\n color: @theme-color2;\r\n padding-right: 20px;\r\n\r\n .el-icon-error {\r\n top: 50%;\r\n right: 5px;\r\n font-size: 14px;\r\n margin-top: -5px;\r\n opacity: 1;\r\n }\r\n }\r\n }\r\n }\r\n</style>","import Vue from 'vue';\r\nimport ComComponent from './src/index.vue';\r\n\r\ntype SFCWithInstall<T> = T & { install(app: typeof Vue): void }; // vue 安装\r\n\r\n// 安装\r\nComComponent.install = (app: typeof Vue) => {\r\n app.component(ComComponent.name, ComComponent);\r\n};\r\nconst InComComponent: SFCWithInstall<typeof ComComponent> = ComComponent; // 增加类型\r\nexport default InComComponent;","\n<el-dropdown>\n <span class=\"el-dropdown-link\">\n <i class=\"el-icon-s-tools\"></i>\n </span>\n <el-dropdown-menu slot=\"dropdown\">\n <el-dropdown-item icon=\"icon-tuichudenglu\" @click=\"handleOperation('outLogin')\">退出登录</el-dropdown-item>\n </el-dropdown-menu>\n</el-dropdown>\n","<template>\r\n <el-dropdown>\r\n <span class=\"el-dropdown-link\">\r\n <i class=\"el-icon-s-tools\"></i>\r\n </span>\r\n <el-dropdown-menu slot=\"dropdown\">\r\n <el-dropdown-item icon=\"icon-tuichudenglu\" @click=\"handleOperation('outLogin')\">退出登录</el-dropdown-item>\r\n </el-dropdown-menu>\r\n </el-dropdown>\r\n</template>\r\n<script>\r\nexport default {\r\n name: 'ComTool',\r\n methods: {\r\n handleOperation(cmd) {\r\n switch (cmd) {\r\n case 'outLogin':\r\n this.$confirm('确认退出登录?', '提示', {\r\n type: 'warning'\r\n }).then(() => {\r\n console.log('out login');\r\n })\r\n break;\r\n }\r\n }\r\n }\r\n}\r\n</script>\r\n<style lang=\"less\" scoped>\r\n .el-icon-s-tools {\r\n font-size: 20px;\r\n color: #FFF;\r\n line-height: 60px;\r\n margin-right: 20px;\r\n cursor: pointer;\r\n }\r\n</style>","import Vue from 'vue';\r\nimport ComComponent from './src/index.vue';\r\n\r\ntype SFCWithInstall<T> = T & { install(app: typeof Vue): void }; // vue 安装\r\n\r\n// 安装\r\nComComponent.install = (app: typeof Vue) => {\r\n app.component(ComComponent.name, ComComponent);\r\n};\r\nconst InComComponent: SFCWithInstall<typeof ComComponent> = ComComponent; // 增加类型\r\nexport default InComComponent;","\n<el-dialog \n append-to-body\n :top=\"top\"\n :title=\"title\" \n :visible=\"visible\"\n :width=\"width\"\n @close=\"handleClose\">\n <slot></slot>\n <template v-slot:footer>\n <slot name=\"footer\">\n <el-button size=\"small\" @click=\"$emit('update:visible', false)\">取消</el-button>\n <el-button size=\"small\" type=\"primary\" @click=\"handleConfirm\">确定</el-button>\n </slot>\n </template>\n</el-dialog>\n","<template>\r\n <el-dialog \r\n append-to-body\r\n :top=\"top\"\r\n :title=\"title\" \r\n :visible=\"visible\"\r\n :width=\"width\"\r\n @close=\"handleClose\">\r\n <slot></slot>\r\n <template v-slot:footer>\r\n <slot name=\"footer\">\r\n <el-button size=\"small\" @click=\"$emit('update:visible', false)\">取消</el-button>\r\n <el-button size=\"small\" type=\"primary\" @click=\"handleConfirm\">确定</el-button>\r\n </slot>\r\n </template>\r\n </el-dialog>\r\n</template>\r\n<script>\r\nexport default {\r\n name: 'ComDialog',\r\n props: {\r\n visible: {\r\n type: Boolean,\r\n default: false\r\n },\r\n title: {\r\n type: String,\r\n default: '标题'\r\n },\r\n width: {\r\n type: String,\r\n default: '600px'\r\n },\r\n top: {\r\n type: String,\r\n default: '50px'\r\n }\r\n },\r\n data() {\r\n return {\r\n show: false\r\n }\r\n },\r\n methods: {\r\n handleClose() {\r\n this.$emit('close');\r\n this.$emit('update:visible', false);\r\n },\r\n\r\n handleConfirm() {\r\n this.$emit('confirm');\r\n }\r\n }\r\n}\r\n</script>\r\n<style lang=\"less\" scoped>\r\n/deep/ .el-dialog__header {\r\n border-bottom: 1px solid #ededed;\r\n\r\n .el-dialog__title {\r\n font-size: 16px;\r\n }\r\n}\r\n\r\n/deep/ .el-dialog__footer {\r\n border-top: 1px solid #ededed;\r\n}\r\n\r\n/deep/ .el-dialog__body {\r\n\r\n .el-select {\r\n width: 240px;\r\n }\r\n\r\n .el-input {\r\n width: 240px;\r\n }\r\n\r\n .el-input-number {\r\n width: 240px;\r\n\r\n .el-input__inner {\r\n text-align: left;\r\n }\r\n }\r\n\r\n .ui-item__main {\r\n width: 100%;\r\n }\r\n\r\n .el-form-item__label {\r\n font-size: 12px;\r\n }\r\n\r\n .el-input--small .el-input__icon {\r\n height: 32px;\r\n }\r\n}\r\n</style>","import Vue from 'vue';\r\nimport ComComponent from './src/index.vue';\r\n\r\ntype SFCWithInstall<T> = T & { install(app: typeof Vue): void }; // vue 安装\r\n\r\n// 安装\r\nComComponent.install = (app: typeof Vue) => {\r\n app.component(ComComponent.name, ComComponent);\r\n};\r\nconst InComComponent: SFCWithInstall<typeof ComComponent> = ComComponent; // 增加类型\r\nexport default InComComponent;","\n<div class=\"ui-form__item\">\n <div>\n <slot name=\"label\">\n <div class=\"ui-item__label\" v-if=\"label\">\n <span >{{label}}</span>\n </div>\n </slot>\n </div>\n <div class=\"ui-item__main\">\n <template v-if=\"type === 'input'\">\n <el-input size=\"small\" v-model=\"modelForm\" :placeholder=\"placeholder\" :disabled=\"readonly\" :maxlength=\"maxlength\"></el-input>\n </template>\n <template v-else-if=\"type === 'select'\">\n <el-select size=\"small\" v-model=\"modelForm\" :placeholder=\"placeholder || '请选择'\" :multiple=\"multiple\" :disabled=\"readonly\" filterable clearable>\n <el-option v-for=\"item in selectOption\" :key=\"item.value\" :value=\"item.value.toString()\" :label=\"item.label\"></el-option>\n </el-select>\n </template>\n <template v-else-if=\"type === 'textarea'\">\n <el-input size=\"small\" v-model=\"modelForm\" type=\"textarea\" \n :placeholder=\"placeholder || '请输入'\" \n :rows=\"4\" \n :disabled=\"readonly\"></el-input>\n </template>\n <template v-else-if=\"type === 'input-number'\">\n <el-input-number size=\"small\" v-model=\"modelForm\" controls-position=\"right\"></el-input-number>\n </template>\n <template v-else-if=\"type === 'cascader'\">\n <el-cascader\n size=\"small\"\n v-model=\"modelForm\"\n :options=\"options\"\n :props=\"props\"\n @change=\"handleChange\"></el-cascader>\n </template>\n </div>\n</div>\n","<template>\r\n <div class=\"ui-form__item\">\r\n <div>\r\n <slot name=\"label\">\r\n <div class=\"ui-item__label\" v-if=\"label\">\r\n <span >{{label}}</span>\r\n </div>\r\n </slot>\r\n </div>\r\n <div class=\"ui-item__main\">\r\n <template v-if=\"type === 'input'\">\r\n <el-input size=\"small\" v-model=\"modelForm\" :placeholder=\"placeholder\" :disabled=\"readonly\" :maxlength=\"maxlength\"></el-input>\r\n </template>\r\n <template v-else-if=\"type === 'select'\">\r\n <el-select size=\"small\" v-model=\"modelForm\" :placeholder=\"placeholder || '请选择'\" :multiple=\"multiple\" :disabled=\"readonly\" filterable clearable>\r\n <el-option v-for=\"item in selectOption\" :key=\"item.value\" :value=\"item.value.toString()\" :label=\"item.label\"></el-option>\r\n </el-select>\r\n </template>\r\n <template v-else-if=\"type === 'textarea'\">\r\n <el-input size=\"small\" v-model=\"modelForm\" type=\"textarea\" \r\n :placeholder=\"placeholder || '请输入'\" \r\n :rows=\"4\" \r\n :disabled=\"readonly\"></el-input>\r\n </template>\r\n <template v-else-if=\"type === 'input-number'\">\r\n <el-input-number size=\"small\" v-model=\"modelForm\" controls-position=\"right\"></el-input-number>\r\n </template>\r\n <template v-else-if=\"type === 'cascader'\">\r\n <el-cascader\r\n size=\"small\"\r\n v-model=\"modelForm\"\r\n :options=\"options\"\r\n :props=\"props\"\r\n @change=\"handleChange\"></el-cascader>\r\n </template>\r\n </div>\r\n </div>\r\n</template>\r\n<script>\r\nexport default {\r\n name: 'ComFormItem',\r\n model: {\r\n prop: 'model',\r\n event: 'changes'\r\n },\r\n props: {\r\n\r\n model: undefined,\r\n\r\n // 组件类型\r\n type: {\r\n type: String,\r\n default: 'input'\r\n },\r\n\r\n // item name\r\n label: {\r\n type: String,\r\n default: ''\r\n },\r\n\r\n readonly: {\r\n type: Boolean,\r\n default: false\r\n },\r\n\r\n placeholder: {\r\n type: String,\r\n default: ''\r\n },\r\n\r\n maxlength: {\r\n type: [Array, String],\r\n default: ''\r\n },\r\n\r\n multiple: {\r\n type: Boolean,\r\n default: false\r\n },\r\n\r\n // 选项\r\n options: {\r\n type: [Object, Array],\r\n default() {\r\n return { '1': '选项一', '2': '选项二' }\r\n }\r\n },\r\n\r\n // 选项映射\r\n props: {\r\n type: Object,\r\n default() {\r\n return { value: 'value', label: 'label' }\r\n }\r\n },\r\n },\r\n data() {\r\n return {\r\n modelForm: this.model\r\n }\r\n },\r\n computed: {\r\n selectOption() {\r\n let tempArr = [];\r\n if (Array.isArray(this.options) && this.options.length && this.options[0][this.props.label] === undefined) {\r\n const { label, value } = this.props;\r\n tempArr = this.options.map((item, index) => {\r\n const obj = {\r\n label: item,\r\n value: index\r\n }\r\n return {\r\n label: obj[label],\r\n value: obj[value]\r\n }\r\n })\r\n } else if (!Array.isArray(this.options)){\r\n tempArr = Object.entries(this.options).map(([value, label]) => {\r\n return {\r\n label,\r\n value\r\n }\r\n })\r\n } else {\r\n let options = [];\r\n options.push(...this.options);\r\n tempArr = options.map((item) => {\r\n return {\r\n label: item[this.props.label],\r\n value: item[this.props.value]\r\n }\r\n })\r\n }\r\n return tempArr;\r\n }\r\n },\r\n methods: {\r\n handleChange(val) {\r\n this.$emit('change', val);\r\n }\r\n },\r\n watch: {\r\n modelForm(val) {\r\n this.$emit('changes', val);\r\n },\r\n model(val) {\r\n this.modelForm = val;\r\n }\r\n },\r\n}\r\n</script>\r\n<style lang=\"less\" scoped>\r\n.ui-form__item {\r\n display: flex;\r\n align-items: center;\r\n margin-right: 15px;\r\n}\r\n\r\n.ui-item__label {\r\n margin-right: 10px;\r\n font-size: 12px;\r\n width: 70px;\r\n text-align: right;\r\n}\r\n</style>","import Vue from 'vue';\r\nimport ComComponent from './src/index.vue';\r\n\r\ntype SFCWithInstall<T> = T & { install(app: typeof Vue): void }; // vue 安装\r\n\r\n// 安装\r\nComComponent.install = (app: typeof Vue) => {\r\n app.component(ComComponent.name, ComComponent);\r\n};\r\nconst InComComponent: SFCWithInstall<typeof ComComponent> = ComComponent; // 增加类型\r\nexport default InComComponent;","\n<div class=\"ui-operation\">\n <slot></slot>\n</div>\n","<template>\r\n <div class=\"ui-operation\">\r\n <slot></slot>\r\n </div>\r\n</template>\r\n<script>\r\nexport default {\r\n name: 'ComOperation',\r\n prop: {\r\n type: String,\r\n default: 'main'\r\n }\r\n}\r\n</script>\r\n<style lang=\"less\" scoped>\r\n .ui-operation {\r\n padding: 0 10px;\r\n }\r\n</style>","import Vue from 'vue';\r\nimport ComComponent from './src/index.vue';\r\n\r\ntype SFCWithInstall<T> = T & { install(app: typeof Vue): void }; // vue 安装\r\n\r\n// 安装\r\nComComponent.install = (app: typeof Vue) => {\r\n app.component(ComComponent.name, ComComponent);\r\n};\r\nconst InComComponent: SFCWithInstall<typeof ComComponent> = ComComponent; // 增加类型\r\nexport default InComComponent;","\n<div class=\"ui-search\">\n <div class=\"ui-search__main\">\n <slot></slot>\n </div>\n <div class=\"ui-search__footer\">\n <el-button size=\"small\" icon=\"el-icon-refresh\" @click=\"handleReset\">重置</el-button>\n <el-button size=\"small\" icon=\"el-icon-search\" type=\"primary\" @click=\"handleQuery\">查询</el-button>\n </div>\n</div>\n","<template>\r\n <div class=\"ui-search\">\r\n <div class=\"ui-search__main\">\r\n <slot></slot>\r\n </div>\r\n <div class=\"ui-search__footer\">\r\n <el-button size=\"small\" icon=\"el-icon-refresh\" @click=\"handleReset\">重置</el-button>\r\n <el-button size=\"small\" icon=\"el-icon-search\" type=\"primary\" @click=\"handleQuery\">查询</el-button>\r\n </div>\r\n </div>\r\n</template>\r\n<script>\r\nexport default {\r\n name: 'ComSearch',\r\n methods: {\r\n handleQuery() {\r\n const queryFn = this.$parent.handleQuery;\r\n if (queryFn) {\r\n queryFn();\r\n } else {\r\n this.$emit('query');\r\n }\r\n },\r\n handleReset() {\r\n const resetFn = this.$parent.handleReset;\r\n if (resetFn) {\r\n resetFn();\r\n } else {\r\n this.$emit('reset');\r\n }\r\n }\r\n }\r\n}\r\n</script>\r\n<style lang=\"less\" scoped>\r\n .ui-search {\r\n margin: 10px 10px 0 10px;\r\n padding: 20px;\r\n // box-shadow: 0 0 5px 2px #e7e7e7;\r\n background-color: #FFF;\r\n border: 1px solid @color-border;\r\n border-radius: 4px;\r\n\r\n &__main {\r\n display: flex;\r\n }\r\n\r\n &__footer {\r\n margin-top: 10px;\r\n }\r\n\r\n /deep/ .ui-form__item {\r\n display: block;\r\n }\r\n\r\n /deep/ .ui-item__label {\r\n width: unset;\r\n text-align: left;\r\n margin-bottom: 5px;\r\n }\r\n }\r\n</style>","import Vue from 'vue';\r\nimport ComComponent from './src/index.vue';\r\n\r\ntype SFCWithInstall<T> = T & { install(app: typeof Vue): void }; // vue 安装\r\n\r\n// 安装\r\nComComponent.install = (app: typeof Vue) => {\r\n app.component(ComComponent.name, ComComponent);\r\n};\r\nconst InComComponent: SFCWithInstall<typeof ComComponent> = ComComponent; // 增加类型\r\nexport default InComComponent;","\r\n/**\r\n * 计算表格高度\r\n * staticNum { number } \r\n * */\r\n export function countTableHeight(staticNum = 0) {\r\n\r\n const pageCountEls = document.querySelectorAll('.ui-page__main:not(.v-leave) > div')\r\n const paginationEl = document.querySelector('.ui-pagination');\r\n \r\n const headerEl = document.querySelector('.ui-container__header');\r\n const tabsEl = document.querySelector('.ui-tabs');\r\n\r\n let tableHeight = staticNum;\r\n tableHeight += paginationEl ? paginationEl.offsetHeight : 0;\r\n tableHeight += headerEl ? headerEl.offsetHeight : 0;\r\n tableHeight += tabsEl ? tabsEl.offsetHeight : 0;\r\n\r\n let userAgent = navigator.userAgent;\r\n for (let i = 0; i < pageCountEls.length; i++) {\r\n\r\n // 获取容器元素\r\n let ele = pageCountEls[i];\r\n if (!ele || ele.className === 'ui-table') continue;\r\n tableHeight += ele.offsetHeight;\r\n\r\n let eleMargin, eleTBMargin;\r\n let eleCss = document.defaultView.getComputedStyle(ele);\r\n if (userAgent.indexOf('Firefox') > -1) {\r\n eleTBMargin = parseInt(eleCss['margin-top']) + parseInt(eleCss['margin-bottom']);\r\n } else if (userAgent.indexOf('compatible') > -1 && userAgent.indexOf(\"MSIE\") > -1 && !(userAgent.indexOf(\"Opera\") > -1)) {\r\n let ieCss = ele.currentStyle;\r\n eleTBMargin = parseInt(ieCss['marginTop']) + parseInt(ieCss['marginBottom']);\r\n } else {\r\n eleMargin = eleCss.margin.split(' ');\r\n\r\n if (eleMargin.length == 1) {\r\n eleTBMargin = parseInt(eleMargin[0]) * 2;\r\n } else {\r\n const [mt, mr, mb, ml] = eleMargin;\r\n eleTBMargin = parseInt(mb) ? parseInt(mt) + parseInt(mb) : parseInt(mt);\r\n }\r\n }\r\n\r\n tableHeight = eleTBMargin + tableHeight;\r\n }\r\n tableHeight = window.innerHeight - tableHeight;\r\n return tableHeight;\r\n }\r\n \r\n // 表格INX\r\n export function autoAddTableInx(inx) {\r\n let i = parseInt(inx) + 1 + '';\r\n let first = '0';\r\n return first.repeat(4 - i.length) + i\r\n }","\n<div class=\"ui-table\">\n <div class=\"ui-table__tab\">\n <slot></slot>\n </div>\n <el-table \n ref=\"myTable\"\n highlightRow\n :border=\"true\"\n :data=\"tableData\"\n :[isBindHeight]=\"tableHeight\"\n :[isBindMaxHeight]=\"maxHeight\"\n @selection-change=\"handleSelectionChange\">\n <el-table-column type=\"selection\" width=\"35\" v-if=\"showSelect\" :selectable=\"selectable\"></el-table-column>\n <el-table-column v-for=\"(item, index) in tableTitle\"\n minWidth=\"60px\"\n :label=\"item\"\n :key=\"tableProps[index]\" \n :prop=\"tableProps[index]\" \n :width=\"tableProps[index] === 'index' ? '60px' : (tableColsWidth[index] || '')\">\n\n <!-- 表头插槽 自定义表头-->\n <template v-slot:header=\"scope\">\n <slot \n :name=\"tableProps[index] + 'Title'\" \n :row=\"item\" \n :$index=\"scope.$index\">\n <span>{{ item }}</span>\n </slot>\n </template>\n\n <!-- 内容插槽 -->\n <template v-slot:default=\"scope\">\n <slot \n :name=\"tableProps[index]\" \n :row=\"scope.row\" \n :$index=\"scope.$index\">\n <span>{{ tableProps[index] === 'index' ? changeTableInx(scope.$index) :\n scope.row[tableProps[index]]\n }}</span>\n </slot>\n </template>\n </el-table-column>\n <template v-slot:empty>\n <div v-if=\"!autoHeight\">\n <el-empty v-show=\"!tableData.length\" description=\"暂无数据\"></el-empty>\n </div>\n </template>\n </el-table>\n <div class=\"ui-pagination\" v-if=\"showPage\">\n <el-pagination ref=\"pageRef\" \n layout=\"total, sizes, prev, pager, next, jumper\"\n :current-page=\"pageData.offset\"\n :page-sizes=\"pageSizes\" \n :page-size=\"pageData.limit\" \n :total=\"pageData.total\"\n @size-change=\"val => handlePageChange('limit', val)\"\n @current-change=\"val => handlePageChange('offset', val)\" >\n </el-pagination>\n </div>\n</div>\n","<template>\r\n <div class=\"ui-table\">\r\n <div class=\"ui-table__tab\">\r\n <slot></slot>\r\n </div>\r\n <el-table \r\n ref=\"myTable\"\r\n highlightRow\r\n :border=\"true\"\r\n :data=\"tableData\"\r\n :[isBindHeight]=\"tableHeight\"\r\n :[isBindMaxHeight]=\"maxHeight\"\r\n @selection-change=\"handleSelectionChange\">\r\n <el-table-column type=\"selection\" width=\"35\" v-if=\"showSelect\" :selectable=\"selectable\"></el-table-column>\r\n <el-table-column v-for=\"(item, index) in tableTitle\"\r\n minWidth=\"60px\"\r\n :label=\"item\"\r\n :key=\"tableProps[index]\" \r\n :prop=\"tableProps[index]\" \r\n :width=\"tableProps[index] === 'index' ? '60px' : (tableColsWidth[index] || '')\">\r\n\r\n <!-- 表头插槽 自定义表头-->\r\n <template v-slot:header=\"scope\">\r\n <slot \r\n :name=\"tableProps[index] + 'Title'\" \r\n :row=\"item\" \r\n :$index=\"scope.$index\">\r\n <span>{{ item }}</span>\r\n </slot>\r\n </template>\r\n\r\n <!-- 内容插槽 -->\r\n <template v-slot:default=\"scope\">\r\n <slot \r\n :name=\"tableProps[index]\" \r\n :row=\"scope.row\" \r\n :$index=\"scope.$index\">\r\n <span>{{ tableProps[index] === 'index' ? changeTableInx(scope.$index) :\r\n scope.row[tableProps[index]]\r\n }}</span>\r\n </slot>\r\n </template>\r\n </el-table-column>\r\n <template v-slot:empty>\r\n <div v-if=\"!autoHeight\">\r\n <el-empty v-show=\"!tableData.length\" description=\"暂无数据\"></el-empty>\r\n </div>\r\n </template>\r\n </el-table>\r\n <div class=\"ui-pagination\" v-if=\"showPage\">\r\n <el-pagination ref=\"pageRef\" \r\n layout=\"total, sizes, prev, pager, next, jumper\"\r\n :current-page=\"pageData.offset\"\r\n :page-sizes=\"pageSizes\" \r\n :page-size=\"pageData.limit\" \r\n :total=\"pageData.total\"\r\n @size-change=\"val => handlePageChange('limit', val)\"\r\n @current-change=\"val => handlePageChange('offset', val)\" >\r\n </el-pagination>\r\n </div>\r\n </div>\r\n</template>\r\n<script>\r\nimport { countTableHeight } from '@/utils';\r\nexport default {\r\n name: 'ComTable',\r\n props: {\r\n\r\n // 是否显示勾选框\r\n showSelect: { type: Boolean, default: false },\r\n\r\n // 勾选方法\r\n selectable: { type: Function, default() { return () => { } } },\r\n\r\n // 表格数据\r\n tableData: { type: Array, default() { return [] } },\r\n\r\n // 表头映射\r\n tableMap: { type: Object, default() { return { index: '序号' } } },\r\n\r\n // 列宽度\r\n colsWidth: { type: [Array, Object], default() { return [] } },\r\n\r\n // 分页对象\r\n pageData: { type: Object, default() { return {} } },\r\n\r\n // 是否显示分页\r\n showPage: { type: Boolean, default: true },\r\n\r\n // 固定表格高度\r\n height: { type: String, default: '' },\r\n\r\n // 表格高度自适应\r\n autoHeight: { type: Boolean, default: false },\r\n\r\n // 最大高度 \r\n maxHeight: { type: String, default: '' },\r\n\r\n // 高度占位值 当有特殊情况表格高度需减少指定值\r\n heightStatic: { type: Number, default: 0 }\r\n },\r\n\r\n data() {\r\n return {\r\n pageSizes: [20, 50, 100, 200],\r\n tableHeight: ''\r\n }\r\n },\r\n\r\n computed: {\r\n tableTitle() {\r\n return Object.values(this.tableMap);\r\n },\r\n tableProps() {\r\n return Object.keys(this.tableMap);\r\n },\r\n tableColsWidth() {\r\n if (Array.isArray(this.colsWidth)) {\r\n return this.colsWidth.map(item => `${parseInt(item)}px`);\r\n } else {\r\n return this.tableProps.map(item => this.colsWidth[item] ? `${parseInt(this.colsWidth[item])}px` : '') \r\n }\r\n },\r\n isBindHeight() {\r\n return this.tableHeight ? 'height' : ''\r\n },\r\n isBindMaxHeight() {\r\n return this.maxHeight ? 'max-height' : ''\r\n },\r\n },\r\n methods: {\r\n\r\n changeTableInx(inx) {\r\n let i = parseInt(inx) + 1 + '';\r\n let first = '0';\r\n return first.repeat(4 - i.length) + i\r\n },\r\n\r\n // 刷新表格高度\r\n handleRefreshHeight() {\r\n this.tableHeight = `${countTableHeight() - this.heightStatic}px`;\r\n console.log(this.tableHeight, 'this.tableHeight');\r\n this.$refs['myTable'] && this.$refs['myTable'].doLayout();\r\n },\r\n\r\n // 分页切换\r\n handlePageChange(type = 'offset', val) {\r\n if (type === 'offset') {\r\n if (this.tempSize > this.pageData.total && this.pageData.offset > 1) return;\r\n this.$emit('pageChange', type, val);\r\n } else {\r\n this.tempSize = val;\r\n this.$emit('pageChange', type, val)\r\n }\r\n },\r\n\r\n // 勾选\r\n handleSelectionChange(val) {\r\n this.$emit('selectionChange', val);\r\n }\r\n },\r\n async mounted() {\r\n\r\n // 没设置表格高度 高度根据屏幕高度适应\r\n if (!this.autoHeight && !this.height) {\r\n await this.$nextTick();\r\n this.handleRefreshHeight();\r\n\r\n window.addEventListener('resize', this.handleRefreshHeight);\r\n } else if (this.height) {\r\n this.tableHeight = this.height;\r\n this.$refs['myTable'] && this.$refs['myTable'].doLayout();\r\n }\r\n },\r\n beforeDestroy() {\r\n window.removeEventListener('resize', this.handleRefreshHeight);\r\n }\r\n}\r\n</script>\r\n<style lang=\"less\" scoped>\r\n\r\n .ui-table {\r\n padding: 0 10px;\r\n }\r\n\r\n .el-table {\r\n \r\n\r\n /deep/ .el-table__body {\r\n ::-webkit-scrollbar {\r\n width: 4px;\r\n background-color: #e4e4e5;\r\n }\r\n\r\n ::-webkit-scrollbar-thumb {\r\n border-radius: 4px;\r\n background-color: @theme-color;\r\n }\r\n }\r\n }\r\n\r\n .ui-pagination {\r\n text-align: center;\r\n padding: 10px 0;\r\n }\r\n</style>","import Vue from 'vue';\r\nimport ComComponent from './src/index.vue';\r\n\r\ntype SFCWithInstall<T> = T & { install(app: typeof Vue): void }; // vue 安装\r\n\r\n// 安装\r\nComComponent.install = (app: typeof Vue) => {\r\n app.component(ComComponent.name, ComComponent);\r\n};\r\nconst InComComponent: SFCWithInstall<typeof ComComponent> = ComComponent; // 增加类型\r\nexport default InComComponent;","import ComTemplate from '../packages/template';\r\nimport ComMenu from '../packages/menu';\r\nimport ComTabs from '../packages/tabs';\r\nimport ComTool from '../packages/tool';\r\nimport ComDialog from '../packages/dialog';\r\nimport ComFormItem from '../packages/form-item';\r\nimport ComOperation from '../packages/operation';\r\nimport ComSearch from '../packages/search';\r\nimport ComTable from '../packages/table';\r\n\r\n\r\nconst components:any[] = [\r\n ComTemplate,\r\n ComMenu,\r\n ComTabs,\r\n ComTool,\r\n ComDialog,\r\n ComFormItem,\r\n ComOperation,\r\n ComSearch,\r\n ComTable\r\n];\r\n\r\n/**\r\n * @param { App }\r\n * @returns { Void }\r\n */\r\nconst install = (Vue:any, ops:any = { config: {} }) => {\r\n components.forEach(component => Vue.component(component.name, component));\r\n\r\n // 注册组件时可以带入UI库配置\r\n Vue.prototype.$UICONFIG = ops.config;\r\n}\r\n\r\n\r\nconst defaultConfig = {\r\n version: 'dev',\r\n install,\r\n ComTemplate,\r\n ComMenu,\r\n ComTabs,\r\n ComTool,\r\n ComDialog,\r\n ComFormItem,\r\n ComOperation,\r\n ComSearch,\r\n ComTable\r\n};\r\n\r\ntry {\r\n defaultConfig.version = require('../package.json').version;\r\n} catch(e) {\r\n console.log('no require');\r\n}\r\n\r\nexport default defaultConfig;"],"names":["render","staticRenderFns","ComComponent","InComComponent","ComTemplate","ComMenu","ComTabs","ComTool","ComDialog","ComFormItem","ComOperation","ComSearch","ComTable"],"mappings":"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"}
|
package/package.json
CHANGED
package/src/main.ts
ADDED
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
import ComTemplate from '../packages/template';
|
|
2
|
+
import ComMenu from '../packages/menu';
|
|
3
|
+
import ComTabs from '../packages/tabs';
|
|
4
|
+
import ComTool from '../packages/tool';
|
|
5
|
+
import ComDialog from '../packages/dialog';
|
|
6
|
+
import ComFormItem from '../packages/form-item';
|
|
7
|
+
import ComOperation from '../packages/operation';
|
|
8
|
+
import ComSearch from '../packages/search';
|
|
9
|
+
import ComTable from '../packages/table';
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
const components:any[] = [
|
|
13
|
+
ComTemplate,
|
|
14
|
+
ComMenu,
|
|
15
|
+
ComTabs,
|
|
16
|
+
ComTool,
|
|
17
|
+
ComDialog,
|
|
18
|
+
ComFormItem,
|
|
19
|
+
ComOperation,
|
|
20
|
+
ComSearch,
|
|
21
|
+
ComTable
|
|
22
|
+
];
|
|
23
|
+
|
|
24
|
+
/**
|
|
25
|
+
* @param { App }
|
|
26
|
+
* @returns { Void }
|
|
27
|
+
*/
|
|
28
|
+
const install = (Vue:any, ops:any = { config: {} }) => {
|
|
29
|
+
components.forEach(component => Vue.component(component.name, component));
|
|
30
|
+
|
|
31
|
+
// 注册组件时可以带入UI库配置
|
|
32
|
+
Vue.prototype.$UICONFIG = ops.config;
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
|
|
36
|
+
const defaultConfig = {
|
|
37
|
+
version: 'dev',
|
|
38
|
+
install,
|
|
39
|
+
ComTemplate,
|
|
40
|
+
ComMenu,
|
|
41
|
+
ComTabs,
|
|
42
|
+
ComTool,
|
|
43
|
+
ComDialog,
|
|
44
|
+
ComFormItem,
|
|
45
|
+
ComOperation,
|
|
46
|
+
ComSearch,
|
|
47
|
+
ComTable
|
|
48
|
+
};
|
|
49
|
+
|
|
50
|
+
try {
|
|
51
|
+
defaultConfig.version = require('../package.json').version;
|
|
52
|
+
} catch(e) {
|
|
53
|
+
console.log('no require');
|
|
54
|
+
}
|
|
55
|
+
|
|
56
|
+
export default defaultConfig;
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
// 主题色
|
|
2
|
+
@theme-color: #409EFF;
|
|
3
|
+
@theme-color2: fade(@theme-color, 80%);
|
|
4
|
+
@theme-color3: fade(@theme-color, 30%);
|
|
5
|
+
@theme-color4: fade(@theme-color, 5%);
|
|
6
|
+
|
|
7
|
+
// 辅助色
|
|
8
|
+
@color-success: #67C23A;
|
|
9
|
+
@color-warning: #E6A23C;
|
|
10
|
+
@color-danger: #F56C6C;
|
|
11
|
+
@color-info: #909399;
|
|
12
|
+
|
|
13
|
+
// 字体
|
|
14
|
+
@color-f1: #303133; // 主要文字
|
|
15
|
+
@color-f2: #606266; // 常规文字
|
|
16
|
+
@color-f3: #909399; // 次要文字
|
|
17
|
+
@color-f4: #C0C4CC; // 占位文字
|
|
18
|
+
|
|
19
|
+
// 边框
|
|
20
|
+
@color-border: #ebeef5;
|