jky-component-lib 0.0.64 → 0.0.67
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/dist/es/components.d.ts +1 -0
- package/dist/es/components.js +4 -1
- package/dist/es/form/Form.vue.d.ts +10 -6
- package/dist/es/form/Form.vue.js +131 -81
- package/dist/es/form/FormItem.vue.js +55 -3
- package/dist/es/form/SelectTable.vue.d.ts +38 -0
- package/dist/es/form/SelectTable.vue.js +217 -0
- package/dist/es/form/SelectTable.vue3.js +5 -0
- package/dist/es/form/style.css +56 -0
- package/dist/es/index.js +15 -0
- package/dist/es/package.json.js +1 -1
- package/dist/es/page-header/PageHeader.vue.js +2 -2
- package/dist/es/page-header/PopoverMenu.vue.js +2 -2
- package/dist/es/page-layout/PageLayout.vue.js +1 -1
- package/dist/es/page-layout/style.css +2 -0
- package/dist/es/page-table/PageTable.vue.d.ts +44 -28
- package/dist/es/page-table/PageTable.vue.js +91 -25
- package/dist/es/page-table/style.css +9 -1
- package/dist/es/style.css +164 -26
- package/dist/es/styles.css +1 -1
- package/dist/es/tabs/TabContent.vue.d.ts +16 -0
- package/dist/es/tabs/TabContent.vue.js +65 -0
- package/dist/es/tabs/TabContent.vue3.js +5 -0
- package/dist/es/tabs/Tabs.vue.d.ts +46 -0
- package/dist/es/tabs/Tabs.vue.js +275 -0
- package/dist/es/tabs/Tabs.vue3.js +5 -0
- package/dist/es/tabs/index.d.ts +9 -0
- package/dist/es/tabs/index.js +8 -0
- package/dist/es/tabs/routeListener.d.ts +19 -0
- package/dist/es/tabs/routeListener.js +26 -0
- package/dist/es/tabs/style.css +29 -0
- package/dist/es/tabs/useTabs.d.ts +27 -0
- package/dist/es/tabs/useTabs.js +59 -0
- package/dist/es/tabs/useTabsStore.d.ts +53 -0
- package/dist/es/tabs/useTabsStore.js +208 -0
- package/dist/lib/components.d.ts +1 -0
- package/dist/lib/components.js +4 -1
- package/dist/lib/form/Form.vue.d.ts +10 -6
- package/dist/lib/form/Form.vue.js +129 -79
- package/dist/lib/form/FormItem.vue.js +54 -2
- package/dist/lib/form/SelectTable.vue.d.ts +38 -0
- package/dist/lib/form/SelectTable.vue.js +217 -0
- package/dist/lib/form/SelectTable.vue3.js +5 -0
- package/dist/lib/form/style.css +56 -0
- package/dist/lib/index.js +15 -0
- package/dist/lib/package.json.js +1 -1
- package/dist/lib/page-header/PageHeader.vue.js +3 -3
- package/dist/lib/page-header/PopoverMenu.vue.js +2 -2
- package/dist/lib/page-layout/PageLayout.vue.js +1 -1
- package/dist/lib/page-layout/style.css +2 -0
- package/dist/lib/page-table/PageTable.vue.d.ts +44 -28
- package/dist/lib/page-table/PageTable.vue.js +90 -24
- package/dist/lib/page-table/style.css +9 -1
- package/dist/lib/style.css +164 -26
- package/dist/lib/styles.css +1 -1
- package/dist/lib/tabs/TabContent.vue.d.ts +16 -0
- package/dist/lib/tabs/TabContent.vue.js +65 -0
- package/dist/lib/tabs/TabContent.vue3.js +5 -0
- package/dist/lib/tabs/Tabs.vue.d.ts +46 -0
- package/dist/lib/tabs/Tabs.vue.js +275 -0
- package/dist/lib/tabs/Tabs.vue3.js +5 -0
- package/dist/lib/tabs/index.d.ts +9 -0
- package/dist/lib/tabs/index.js +8 -0
- package/dist/lib/tabs/routeListener.d.ts +19 -0
- package/dist/lib/tabs/routeListener.js +26 -0
- package/dist/lib/tabs/style.css +29 -0
- package/dist/lib/tabs/useTabs.d.ts +27 -0
- package/dist/lib/tabs/useTabs.js +59 -0
- package/dist/lib/tabs/useTabsStore.d.ts +53 -0
- package/dist/lib/tabs/useTabsStore.js +208 -0
- package/package.json +10 -2
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
import { SelectTableProps } from './types';
|
|
2
|
+
declare const _default: import('vue').DefineComponent<globalThis.ExtractPropTypes<__VLS_WithDefaults<__VLS_TypePropsToOption<SelectTableProps>, {
|
|
3
|
+
multiple: boolean;
|
|
4
|
+
labelField: string;
|
|
5
|
+
idField: string;
|
|
6
|
+
readonly: boolean;
|
|
7
|
+
disabled: boolean;
|
|
8
|
+
}>>, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
|
|
9
|
+
"update:modelValue": (value: string | number | (string | number)[]) => any;
|
|
10
|
+
change: (value: string | number | (string | number)[], selectedData: any[]) => any;
|
|
11
|
+
}, string, import('vue').PublicProps, Readonly<globalThis.ExtractPropTypes<__VLS_WithDefaults<__VLS_TypePropsToOption<SelectTableProps>, {
|
|
12
|
+
multiple: boolean;
|
|
13
|
+
labelField: string;
|
|
14
|
+
idField: string;
|
|
15
|
+
readonly: boolean;
|
|
16
|
+
disabled: boolean;
|
|
17
|
+
}>>> & Readonly<{
|
|
18
|
+
"onUpdate:modelValue"?: ((value: string | number | (string | number)[]) => any) | undefined;
|
|
19
|
+
onChange?: ((value: string | number | (string | number)[], selectedData: any[]) => any) | undefined;
|
|
20
|
+
}>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, any>;
|
|
21
|
+
export default _default;
|
|
22
|
+
type __VLS_WithDefaults<P, D> = {
|
|
23
|
+
[K in keyof Pick<P, keyof P>]: K extends keyof D ? __VLS_PrettifyLocal<P[K] & {
|
|
24
|
+
default: D[K];
|
|
25
|
+
}> : P[K];
|
|
26
|
+
};
|
|
27
|
+
type __VLS_NonUndefinedable<T> = T extends undefined ? never : T;
|
|
28
|
+
type __VLS_TypePropsToOption<T> = {
|
|
29
|
+
[K in keyof T]-?: {} extends Pick<T, K> ? {
|
|
30
|
+
type: import('vue').PropType<__VLS_NonUndefinedable<T[K]>>;
|
|
31
|
+
} : {
|
|
32
|
+
type: import('vue').PropType<T[K]>;
|
|
33
|
+
required: true;
|
|
34
|
+
};
|
|
35
|
+
};
|
|
36
|
+
type __VLS_PrettifyLocal<T> = {
|
|
37
|
+
[K in keyof T]: T[K];
|
|
38
|
+
} & {};
|
|
@@ -0,0 +1,217 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __defProp = Object.defineProperty;
|
|
3
|
+
var __defProps = Object.defineProperties;
|
|
4
|
+
var __getOwnPropDescs = Object.getOwnPropertyDescriptors;
|
|
5
|
+
var __getOwnPropSymbols = Object.getOwnPropertySymbols;
|
|
6
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
7
|
+
var __propIsEnum = Object.prototype.propertyIsEnumerable;
|
|
8
|
+
var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
9
|
+
var __spreadValues = (a, b) => {
|
|
10
|
+
for (var prop in b || (b = {}))
|
|
11
|
+
if (__hasOwnProp.call(b, prop))
|
|
12
|
+
__defNormalProp(a, prop, b[prop]);
|
|
13
|
+
if (__getOwnPropSymbols)
|
|
14
|
+
for (var prop of __getOwnPropSymbols(b)) {
|
|
15
|
+
if (__propIsEnum.call(b, prop))
|
|
16
|
+
__defNormalProp(a, prop, b[prop]);
|
|
17
|
+
}
|
|
18
|
+
return a;
|
|
19
|
+
};
|
|
20
|
+
var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
|
|
21
|
+
var __async = (__this, __arguments, generator) => {
|
|
22
|
+
return new Promise((resolve, reject) => {
|
|
23
|
+
var fulfilled = (value) => {
|
|
24
|
+
try {
|
|
25
|
+
step(generator.next(value));
|
|
26
|
+
} catch (e) {
|
|
27
|
+
reject(e);
|
|
28
|
+
}
|
|
29
|
+
};
|
|
30
|
+
var rejected = (value) => {
|
|
31
|
+
try {
|
|
32
|
+
step(generator.throw(value));
|
|
33
|
+
} catch (e) {
|
|
34
|
+
reject(e);
|
|
35
|
+
}
|
|
36
|
+
};
|
|
37
|
+
var step = (x) => x.done ? resolve(x.value) : Promise.resolve(x.value).then(fulfilled, rejected);
|
|
38
|
+
step((generator = generator.apply(__this, __arguments)).next());
|
|
39
|
+
});
|
|
40
|
+
};
|
|
41
|
+
Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: "Module" } });
|
|
42
|
+
const vue = require("vue");
|
|
43
|
+
const ElementPlus = require("element-plus");
|
|
44
|
+
const index = require("../page-table/index.js");
|
|
45
|
+
const _hoisted_1 = { class: "jky-select-table" };
|
|
46
|
+
const _hoisted_2 = { class: "jky-select-table__tags" };
|
|
47
|
+
const _hoisted_3 = { class: "jky-select-table__dropdown" };
|
|
48
|
+
const __default__ = {
|
|
49
|
+
name: "JkySelectTable"
|
|
50
|
+
};
|
|
51
|
+
const _sfc_main = /* @__PURE__ */ vue.defineComponent(__spreadProps(__spreadValues(__spreadValues({}, __default__), {
|
|
52
|
+
name: "JkySelectTable",
|
|
53
|
+
inheritAttrs: false
|
|
54
|
+
}), {
|
|
55
|
+
props: {
|
|
56
|
+
modelValue: {},
|
|
57
|
+
multiple: { type: Boolean, default: false },
|
|
58
|
+
labelField: { default: "label" },
|
|
59
|
+
idField: { default: "id" },
|
|
60
|
+
detailApi: {},
|
|
61
|
+
tableProps: {},
|
|
62
|
+
filterItems: {},
|
|
63
|
+
dataSource: {},
|
|
64
|
+
responseProps: {},
|
|
65
|
+
pagination: { type: Boolean },
|
|
66
|
+
readonly: { type: Boolean, default: false },
|
|
67
|
+
disabled: { type: Boolean, default: false }
|
|
68
|
+
},
|
|
69
|
+
emits: ["update:modelValue", "change"],
|
|
70
|
+
setup(__props, { emit: __emit }) {
|
|
71
|
+
const props = __props;
|
|
72
|
+
const emit = __emit;
|
|
73
|
+
const showTable = vue.ref(false);
|
|
74
|
+
const selectedData = vue.ref([]);
|
|
75
|
+
const selectedRows = vue.ref([]);
|
|
76
|
+
const selectedValue = vue.computed({
|
|
77
|
+
get: () => props.modelValue,
|
|
78
|
+
set: (val) => {
|
|
79
|
+
emit("update:modelValue", val);
|
|
80
|
+
}
|
|
81
|
+
});
|
|
82
|
+
function initSelectedData() {
|
|
83
|
+
return __async(this, null, function* () {
|
|
84
|
+
const ids = getIdsFromModelValue(props.modelValue);
|
|
85
|
+
if (!ids || ids.length === 0) {
|
|
86
|
+
selectedData.value = [];
|
|
87
|
+
selectedRows.value = [];
|
|
88
|
+
return;
|
|
89
|
+
}
|
|
90
|
+
if (props.detailApi) {
|
|
91
|
+
try {
|
|
92
|
+
const result = yield props.detailApi({ ids: ids.join(",") });
|
|
93
|
+
selectedData.value = Array.isArray(result) ? result : [result];
|
|
94
|
+
selectedRows.value = [...selectedData.value];
|
|
95
|
+
} catch (error) {
|
|
96
|
+
console.error("加载已选数据失败:", error);
|
|
97
|
+
selectedData.value = [];
|
|
98
|
+
selectedRows.value = [];
|
|
99
|
+
}
|
|
100
|
+
} else {
|
|
101
|
+
selectedData.value = ids.map((id) => ({
|
|
102
|
+
[props.idField]: id,
|
|
103
|
+
[props.labelField]: id
|
|
104
|
+
}));
|
|
105
|
+
selectedRows.value = [...selectedData.value];
|
|
106
|
+
}
|
|
107
|
+
});
|
|
108
|
+
}
|
|
109
|
+
function getIdsFromModelValue(modelValue) {
|
|
110
|
+
if (!modelValue)
|
|
111
|
+
return [];
|
|
112
|
+
if (Array.isArray(modelValue))
|
|
113
|
+
return modelValue;
|
|
114
|
+
return [modelValue];
|
|
115
|
+
}
|
|
116
|
+
function removeTag(item) {
|
|
117
|
+
if (props.disabled || props.readonly)
|
|
118
|
+
return;
|
|
119
|
+
const id = item[props.idField];
|
|
120
|
+
if (props.multiple) {
|
|
121
|
+
const currentIds = getIdsFromModelValue(props.modelValue);
|
|
122
|
+
const newIds = currentIds.filter((v) => v !== id);
|
|
123
|
+
selectedValue.value = newIds;
|
|
124
|
+
} else {
|
|
125
|
+
selectedValue.value = "";
|
|
126
|
+
}
|
|
127
|
+
selectedData.value = selectedData.value.filter((v) => v[props.idField] !== id);
|
|
128
|
+
selectedRows.value = selectedRows.value.filter((v) => v[props.idField] !== id);
|
|
129
|
+
emit("change", selectedValue.value, selectedData.value);
|
|
130
|
+
}
|
|
131
|
+
function handleSelectionChange(selection) {
|
|
132
|
+
selectedRows.value = selection;
|
|
133
|
+
if (props.multiple) {
|
|
134
|
+
const ids = selection.map((item) => item[props.idField]);
|
|
135
|
+
selectedValue.value = ids;
|
|
136
|
+
selectedData.value = selection;
|
|
137
|
+
} else {
|
|
138
|
+
if (selection.length > 0) {
|
|
139
|
+
const item = selection[0];
|
|
140
|
+
selectedValue.value = item[props.idField];
|
|
141
|
+
selectedData.value = [item];
|
|
142
|
+
} else {
|
|
143
|
+
selectedValue.value = "";
|
|
144
|
+
selectedData.value = [];
|
|
145
|
+
}
|
|
146
|
+
}
|
|
147
|
+
emit("change", selectedValue.value, selectedData.value);
|
|
148
|
+
}
|
|
149
|
+
vue.watch(
|
|
150
|
+
() => props.modelValue,
|
|
151
|
+
(newVal) => {
|
|
152
|
+
if (newVal && (Array.isArray(newVal) ? newVal.length > 0 : newVal)) {
|
|
153
|
+
initSelectedData();
|
|
154
|
+
}
|
|
155
|
+
},
|
|
156
|
+
{ immediate: true }
|
|
157
|
+
);
|
|
158
|
+
function toggleTable() {
|
|
159
|
+
if (props.disabled || props.readonly)
|
|
160
|
+
return;
|
|
161
|
+
showTable.value = !showTable.value;
|
|
162
|
+
}
|
|
163
|
+
const pageTableProps = vue.computed(() => {
|
|
164
|
+
var _a, _b, _c;
|
|
165
|
+
const dataSource = ((_a = props.tableProps) == null ? void 0 : _a.dataSource) || props.dataSource;
|
|
166
|
+
const filterItems = ((_b = props.tableProps) == null ? void 0 : _b.filterItems) || props.filterItems;
|
|
167
|
+
const columns = ((_c = props.tableProps) == null ? void 0 : _c.columns) || [];
|
|
168
|
+
return __spreadProps(__spreadValues({}, props.tableProps), {
|
|
169
|
+
columns,
|
|
170
|
+
dataSource,
|
|
171
|
+
filterItems,
|
|
172
|
+
selection: true,
|
|
173
|
+
selectedRows: selectedRows.value
|
|
174
|
+
});
|
|
175
|
+
});
|
|
176
|
+
return (_ctx, _cache) => {
|
|
177
|
+
return vue.openBlock(), vue.createElementBlock("div", _hoisted_1, [
|
|
178
|
+
vue.createElementVNode("div", _hoisted_2, [
|
|
179
|
+
(vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(selectedData.value, (item) => {
|
|
180
|
+
return vue.openBlock(), vue.createBlock(vue.unref(ElementPlus.ElTag), {
|
|
181
|
+
key: item[__props.idField],
|
|
182
|
+
closable: "",
|
|
183
|
+
"disable-transitions": false,
|
|
184
|
+
onClose: ($event) => removeTag(item)
|
|
185
|
+
}, {
|
|
186
|
+
default: vue.withCtx(() => [
|
|
187
|
+
vue.createTextVNode(vue.toDisplayString(item[__props.labelField]), 1)
|
|
188
|
+
]),
|
|
189
|
+
_: 2
|
|
190
|
+
}, 1032, ["onClose"]);
|
|
191
|
+
}), 128)),
|
|
192
|
+
!__props.readonly && !__props.disabled ? (vue.openBlock(), vue.createBlock(vue.unref(ElementPlus.ElButton), {
|
|
193
|
+
key: 0,
|
|
194
|
+
text: "",
|
|
195
|
+
type: "primary",
|
|
196
|
+
onClick: toggleTable
|
|
197
|
+
}, {
|
|
198
|
+
default: vue.withCtx(() => [
|
|
199
|
+
vue.createTextVNode(vue.toDisplayString(selectedData.value.length > 0 ? "更换" : "选择"), 1)
|
|
200
|
+
]),
|
|
201
|
+
_: 1
|
|
202
|
+
})) : vue.createCommentVNode("", true)
|
|
203
|
+
]),
|
|
204
|
+
vue.withDirectives(vue.createElementVNode("div", _hoisted_3, [
|
|
205
|
+
vue.createVNode(vue.unref(index.JkyPageTable), vue.mergeProps(pageTableProps.value, {
|
|
206
|
+
selection: true,
|
|
207
|
+
"selected-rows": selectedRows.value,
|
|
208
|
+
onSelectionChange: handleSelectionChange
|
|
209
|
+
}), null, 16, ["selected-rows"])
|
|
210
|
+
], 512), [
|
|
211
|
+
[vue.vShow, showTable.value]
|
|
212
|
+
])
|
|
213
|
+
]);
|
|
214
|
+
};
|
|
215
|
+
}
|
|
216
|
+
}));
|
|
217
|
+
exports.default = _sfc_main;
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: "Module" } });
|
|
3
|
+
const SelectTable_vue_vue_type_script_setup_true_lang = require("./SelectTable.vue.js");
|
|
4
|
+
;/* empty css */
|
|
5
|
+
exports.default = SelectTable_vue_vue_type_script_setup_true_lang.default;
|
package/dist/lib/form/style.css
CHANGED
|
@@ -4,6 +4,15 @@
|
|
|
4
4
|
--jky-form-item-border-width: 4px;
|
|
5
5
|
--jky-form-item-border-color: var(--el-color-primary);
|
|
6
6
|
--jky-form-item-bg-color: rgba(var(--el-color-primary-rgb), 0.5);
|
|
7
|
+
|
|
8
|
+
/* Grid 布局默认列数(可通过响应式变量覆盖) */
|
|
9
|
+
--jky-form-grid-cols-xs: 1;
|
|
10
|
+
--jky-form-grid-cols-sm: 2;
|
|
11
|
+
--jky-form-grid-cols-md: 2;
|
|
12
|
+
--jky-form-grid-cols-lg: 3;
|
|
13
|
+
--jky-form-grid-cols-xl: 3;
|
|
14
|
+
--jky-form-grid-cols-2xl: 4;
|
|
15
|
+
--jky-form-grid-cols-3xl: 4;
|
|
7
16
|
}
|
|
8
17
|
|
|
9
18
|
|
|
@@ -11,6 +20,53 @@
|
|
|
11
20
|
.jky-form {
|
|
12
21
|
/* 表单容器样式 */
|
|
13
22
|
}
|
|
23
|
+
|
|
24
|
+
|
|
25
|
+
/* Grid 布局模式 */
|
|
26
|
+
.jky-form--grid {
|
|
27
|
+
display: grid;
|
|
28
|
+
grid-template-columns: repeat(var(--jky-form-grid-cols-xs), minmax(0, 1fr));
|
|
29
|
+
gap: var(--el-form-item-gutter, 16px);
|
|
30
|
+
}
|
|
31
|
+
.el-form--inline.jky-form--grid .el-form-item {
|
|
32
|
+
margin-right: 0;
|
|
33
|
+
.el-form-item__content {
|
|
34
|
+
align-items: flex-start;
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
|
|
39
|
+
/* 响应式断点 */
|
|
40
|
+
@media (min-width: 640px) {
|
|
41
|
+
.jky-form--grid {
|
|
42
|
+
grid-template-columns: repeat(var(--jky-form-grid-cols-sm, var(--jky-form-grid-cols-xs)), minmax(0, 1fr));
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
@media (min-width: 768px) {
|
|
46
|
+
.jky-form--grid {
|
|
47
|
+
grid-template-columns: repeat(var(--jky-form-grid-cols-md, var(--jky-form-grid-cols-sm)), minmax(0, 1fr));
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
@media (min-width: 1024px) {
|
|
51
|
+
.jky-form--grid {
|
|
52
|
+
grid-template-columns: repeat(var(--jky-form-grid-cols-lg, var(--jky-form-grid-cols-md)), minmax(0, 1fr));
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
@media (min-width: 1280px) {
|
|
56
|
+
.jky-form--grid {
|
|
57
|
+
grid-template-columns: repeat(var(--jky-form-grid-cols-xl, var(--jky-form-grid-cols-lg)), minmax(0, 1fr));
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
@media (min-width: 1536px) {
|
|
61
|
+
.jky-form--grid {
|
|
62
|
+
grid-template-columns: repeat(var(--jky-form-grid-cols-2xl, var(--jky-form-grid-cols-xl)), minmax(0, 1fr));
|
|
63
|
+
}
|
|
64
|
+
}
|
|
65
|
+
@media (min-width: 1920px) {
|
|
66
|
+
.jky-form--grid {
|
|
67
|
+
grid-template-columns: repeat(var(--jky-form-grid-cols-3xl, var(--jky-form-grid-cols-2xl)), minmax(0, 1fr));
|
|
68
|
+
}
|
|
69
|
+
}
|
|
14
70
|
.jky-form__title {
|
|
15
71
|
/* 表单标题样式 */
|
|
16
72
|
}
|
package/dist/lib/index.js
CHANGED
|
@@ -4,6 +4,8 @@ const components = require("./components.js");
|
|
|
4
4
|
const installer$1 = require("./utils/installer.js");
|
|
5
5
|
;/* empty css */
|
|
6
6
|
const resolver = require("./resolver.js");
|
|
7
|
+
const TabContent_vue_vue_type_script_setup_true_lang = require("./tabs/TabContent.vue.js");
|
|
8
|
+
;/* empty css */
|
|
7
9
|
const index = require("./add-input/index.js");
|
|
8
10
|
const index$1 = require("./button/index.js");
|
|
9
11
|
const index$2 = require("./button-nav/index.js");
|
|
@@ -15,11 +17,16 @@ const index$7 = require("./page-layout/index.js");
|
|
|
15
17
|
const index$8 = require("./page-table/index.js");
|
|
16
18
|
const index$9 = require("./rich-editor/index.js");
|
|
17
19
|
const index$a = require("./say-hello/index.js");
|
|
20
|
+
const index$b = require("./tabs/index.js");
|
|
21
|
+
const routeListener = require("./tabs/routeListener.js");
|
|
22
|
+
const useTabsStore = require("./tabs/useTabsStore.js");
|
|
23
|
+
const useTabs = require("./tabs/useTabs.js");
|
|
18
24
|
const installer = installer$1.createInstaller(components.components);
|
|
19
25
|
const install = installer.install;
|
|
20
26
|
const version = installer.version;
|
|
21
27
|
exports.components = components.components;
|
|
22
28
|
exports.JkyComponentLibResolver = resolver.JkyComponentLibResolver;
|
|
29
|
+
exports.JkyTabContent = TabContent_vue_vue_type_script_setup_true_lang.default;
|
|
23
30
|
exports.JkyAddInput = index.JkyAddInput;
|
|
24
31
|
exports.JkyButton = index$1.JkyButton;
|
|
25
32
|
exports.JkyButtonNav = index$2.JkyButtonNav;
|
|
@@ -31,6 +38,14 @@ exports.JkyPageLayout = index$7.JkyPageLayout;
|
|
|
31
38
|
exports.JkyPageTable = index$8.JkyPageTable;
|
|
32
39
|
exports.JkyRichEditor = index$9.JkyRichEditor;
|
|
33
40
|
exports.JkySayHello = index$a.JkySayHello;
|
|
41
|
+
exports.JkyTabs = index$b.JkyTabs;
|
|
42
|
+
exports.clearRouteListeners = routeListener.clearRouteListeners;
|
|
43
|
+
exports.emitRouteChange = routeListener.emitRouteChange;
|
|
44
|
+
exports.onRouteChange = routeListener.onRouteChange;
|
|
45
|
+
exports.createTabsStore = useTabsStore.createTabsStore;
|
|
46
|
+
exports.resetTabsStore = useTabsStore.resetTabsStore;
|
|
47
|
+
exports.useTabsStore = useTabsStore.useTabsStore;
|
|
48
|
+
exports.useTabs = useTabs.useTabs;
|
|
34
49
|
exports.default = installer;
|
|
35
50
|
exports.install = install;
|
|
36
51
|
exports.version = version;
|
package/dist/lib/package.json.js
CHANGED
|
@@ -76,13 +76,13 @@ const _sfc_main = /* @__PURE__ */ vue.defineComponent(__spreadProps(__spreadValu
|
|
|
76
76
|
function handleCommand(command) {
|
|
77
77
|
emit("command", command);
|
|
78
78
|
}
|
|
79
|
-
const heightValue = computed(() => {
|
|
79
|
+
const heightValue = vue.computed(() => {
|
|
80
80
|
if (typeof props.height === "number") {
|
|
81
81
|
return `${props.height}px`;
|
|
82
82
|
}
|
|
83
83
|
return props.height;
|
|
84
84
|
});
|
|
85
|
-
const backgroundStyle = computed(() => {
|
|
85
|
+
const backgroundStyle = vue.computed(() => {
|
|
86
86
|
const style = {};
|
|
87
87
|
if (props.backgroundImage) {
|
|
88
88
|
style.backgroundImage = `url(${props.backgroundImage})`;
|
|
@@ -98,7 +98,7 @@ const _sfc_main = /* @__PURE__ */ vue.defineComponent(__spreadProps(__spreadValu
|
|
|
98
98
|
var _a, _b, _c, _d;
|
|
99
99
|
return vue.openBlock(), vue.createElementBlock("header", {
|
|
100
100
|
class: "jky-page-header",
|
|
101
|
-
style: vue.normalizeStyle([
|
|
101
|
+
style: vue.normalizeStyle([backgroundStyle.value, { height: heightValue.value }])
|
|
102
102
|
}, [
|
|
103
103
|
vue.createElementVNode("div", _hoisted_1, [
|
|
104
104
|
__props.showPopover && ((_b = (_a = __props.popover) == null ? void 0 : _a.menus) == null ? void 0 : _b.length) ? (vue.openBlock(), vue.createBlock(PopoverMenu_vue_vue_type_script_setup_true_lang.default, vue.normalizeProps(vue.mergeProps({ key: 0 }, __props.popover)), null, 16)) : vue.createCommentVNode("", true),
|
|
@@ -29,7 +29,7 @@ const _sfc_main = /* @__PURE__ */ vue.defineComponent({
|
|
|
29
29
|
},
|
|
30
30
|
setup(__props) {
|
|
31
31
|
const props = __props;
|
|
32
|
-
const popoverIndex = ref("");
|
|
32
|
+
const popoverIndex = vue.ref("");
|
|
33
33
|
function onPopoverButtonClick(item) {
|
|
34
34
|
var _a;
|
|
35
35
|
if (props.highlightCurrent) {
|
|
@@ -61,7 +61,7 @@ const _sfc_main = /* @__PURE__ */ vue.defineComponent({
|
|
|
61
61
|
key: item.value,
|
|
62
62
|
disabled: item.disabled,
|
|
63
63
|
class: vue.normalizeClass(["w-fit! h-fit! ml-0!", [__props.elButtonClass, item.elButtonClass]]),
|
|
64
|
-
type:
|
|
64
|
+
type: popoverIndex.value === item.value ? "primary" : __props.elButtonType || "default",
|
|
65
65
|
onClick: ($event) => onPopoverButtonClick(item)
|
|
66
66
|
}, {
|
|
67
67
|
default: vue.withCtx(() => [
|
|
@@ -22,7 +22,7 @@ Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toString
|
|
|
22
22
|
const vue = require("vue");
|
|
23
23
|
const ElementPlus = require("element-plus");
|
|
24
24
|
const _hoisted_1 = {
|
|
25
|
-
class: "jky-page-layout flex h-full w-full overflow-hidden
|
|
25
|
+
class: "jky-page-layout flex h-full w-full overflow-hidden",
|
|
26
26
|
style: { "--el-menu-border-color": "transparent" }
|
|
27
27
|
};
|
|
28
28
|
const _sfc_main = /* @__PURE__ */ vue.defineComponent(__spreadProps(__spreadValues({}, {
|