@keyblade/pro-components 1.13.8-alpha.8 → 1.14.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/es/components.d.ts +7 -0
- package/es/global-props.d.ts +21 -2
- package/es/global-props.js +6 -2
- package/es/index.d.ts +7 -0
- package/es/index.js +47 -28
- package/es/inerface.d.ts +5 -1
- package/es/pro-calendar/calendar.vue.d.ts +75 -0
- package/es/pro-calendar/calendar.vue.js +159 -0
- package/es/pro-calendar/calendar.vue3.js +5 -0
- package/es/pro-calendar/enum.d.ts +6 -0
- package/es/pro-calendar/enum.js +4 -0
- package/es/pro-calendar/header.vue.d.ts +35 -0
- package/es/pro-calendar/header.vue.js +146 -0
- package/es/pro-calendar/header.vue2.js +4 -0
- package/es/pro-calendar/hooks/useCellClassName.d.ts +12 -0
- package/es/pro-calendar/hooks/useCellClassName.js +40 -0
- package/es/pro-calendar/index.d.ts +117 -0
- package/es/pro-calendar/index.js +12 -0
- package/es/pro-calendar/interface.d.ts +89 -0
- package/es/pro-calendar/month.d.ts +5 -0
- package/es/pro-calendar/month.js +53 -0
- package/es/pro-calendar/month.vue.d.ts +22 -0
- package/es/pro-calendar/month.vue.js +126 -0
- package/es/pro-calendar/month.vue2.js +4 -0
- package/es/pro-calendar/week.vue.d.ts +3 -0
- package/es/pro-calendar/week.vue.js +34 -0
- package/es/pro-calendar/week.vue2.js +4 -0
- package/es/pro-calendar/year.vue.d.ts +3 -0
- package/es/pro-calendar/year.vue.js +123 -0
- package/es/pro-calendar/year.vue2.js +4 -0
- package/es/pro-date-range-picker/index.d.ts +183 -13
- package/es/pro-date-range-picker/index.js +6 -7
- package/es/pro-date-range-picker/interface.d.ts +38 -0
- package/es/pro-date-range-picker/pro-date-range-picker.vue.d.ts +173 -6
- package/es/pro-date-range-picker/pro-date-range-picker.vue.js +1 -1
- package/es/pro-date-range-picker/pro-date-range-picker.vue2.js +127 -97
- package/es/pro-dates-picker/index.d.ts +49 -0
- package/es/pro-dates-picker/index.js +11 -0
- package/es/pro-dates-picker/index.vue.d.ts +29 -0
- package/es/pro-dates-picker/index.vue.js +135 -0
- package/es/pro-dates-picker/index.vue3.js +5 -0
- package/es/pro-dates-picker/interface.d.ts +38 -0
- package/es/pro-dates-picker/util.d.ts +12 -0
- package/es/pro-dates-picker/util.js +9 -0
- package/es/pro-find-password/enum.d.ts +8 -0
- package/es/pro-find-password/enum.js +4 -0
- package/es/pro-find-password/index.d.ts +11 -0
- package/es/pro-find-password/index.js +11 -0
- package/es/pro-find-password/index.vue.d.ts +4459 -0
- package/es/pro-find-password/index.vue.js +176 -0
- package/es/pro-find-password/index.vue3.js +5 -0
- package/es/pro-find-password/interface.d.ts +45 -0
- package/es/pro-find-password/reset-password.vue.d.ts +591 -0
- package/es/pro-find-password/reset-password.vue.js +179 -0
- package/es/pro-find-password/reset-password.vue2.js +4 -0
- package/es/pro-find-password/verify-user-name.vue.d.ts +795 -0
- package/es/pro-find-password/verify-user-name.vue.js +112 -0
- package/es/pro-find-password/verify-user-name.vue3.js +5 -0
- package/es/pro-footer-bar/index.d.ts +6 -3
- package/es/pro-footer-bar/index.js +6 -7
- package/es/pro-footer-bar/index.vue.d.ts +1 -1
- package/es/pro-footer-bar/index.vue.js +2 -2
- package/es/pro-footer-bar/index.vue2.js +24 -26
- package/es/pro-footer-bar/{inerface.d.ts → interface.d.ts} +1 -0
- package/es/pro-form-group/index.d.ts +7 -6
- package/es/pro-form-group/index.js +6 -8
- package/es/pro-form-group/index.vue.d.ts +2 -2
- package/es/pro-form-group/index.vue.js +1 -1
- package/es/pro-form-group/index.vue2.js +31 -32
- package/es/pro-image-upload/cropper.vue.js +2 -2
- package/es/pro-image-upload/cropper.vue2.js +200 -190
- package/es/pro-image-upload/image-upload.vue.d.ts +1124 -371
- package/es/pro-image-upload/image-upload.vue.js +178 -144
- package/es/pro-image-upload/index.d.ts +1727 -1001
- package/es/pro-image-upload/index.js +6 -8
- package/es/pro-keep-alive-router-view/index.d.ts +1 -0
- package/es/pro-keep-alive-router-view/pro-keep-alive-router-view.vue.js +17 -18
- package/es/pro-layout/hooks.d.ts +80 -1
- package/es/pro-layout/hooks.js +133 -84
- package/es/pro-layout/index.d.ts +9 -6
- package/es/pro-layout/index.js +6 -11
- package/es/pro-layout/pro-layout.vue.d.ts +4 -2
- package/es/pro-layout/pro-layout.vue.js +220 -208
- package/es/pro-loader/index.d.ts +43 -0
- package/es/pro-loader/index.js +11 -0
- package/es/pro-loader/index.vue.d.ts +28 -0
- package/es/pro-loader/index.vue.js +112 -0
- package/es/pro-loader/index.vue3.js +5 -0
- package/es/pro-loader/interface.d.ts +16 -0
- package/es/pro-login/enum.d.ts +6 -0
- package/es/pro-login/enum.js +4 -0
- package/es/pro-login/form-mobile.vue.d.ts +797 -0
- package/es/pro-login/form-mobile.vue.js +146 -0
- package/es/pro-login/form-mobile.vue2.js +4 -0
- package/es/pro-login/form-password.vue.d.ts +584 -0
- package/es/pro-login/form-password.vue.js +99 -0
- package/es/pro-login/form-password.vue2.js +4 -0
- package/es/pro-login/index.d.ts +11 -0
- package/es/pro-login/index.js +11 -0
- package/es/pro-login/index.vue.d.ts +4429 -0
- package/es/pro-login/index.vue.js +105 -0
- package/es/pro-login/index.vue3.js +5 -0
- package/es/pro-login/interface.d.ts +72 -0
- package/es/pro-login/regexp.d.ts +17 -0
- package/es/pro-login/regexp.js +28 -0
- package/es/pro-menu/index.d.ts +18 -80
- package/es/pro-menu/index.js +6 -7
- package/es/pro-menu/interface.d.ts +31 -0
- package/es/pro-menu/menu-item.vue.d.ts +27 -0
- package/es/pro-menu/menu-item.vue.js +35 -0
- package/es/pro-menu/menu-item.vue2.js +4 -0
- package/es/pro-menu/pro-menu-item.vue.d.ts +9 -0
- package/es/pro-menu/pro-menu-item.vue.js +63 -0
- package/es/pro-menu/pro-menu-item.vue2.js +4 -0
- package/es/pro-menu/pro-menu.vue.d.ts +9 -55
- package/es/pro-menu/pro-menu.vue.js +36 -119
- package/es/pro-menu/sub-menu.vue.d.ts +22 -0
- package/es/pro-menu/sub-menu.vue.js +55 -0
- package/es/pro-menu/sub-menu.vue2.js +4 -0
- package/es/pro-menu/util.d.ts +9 -0
- package/es/pro-menu/util.js +7 -0
- package/es/pro-page-container/constant.d.ts +2 -0
- package/es/pro-page-container/constant.js +9 -0
- package/es/pro-page-container/index.d.ts +7 -21
- package/es/pro-page-container/index.js +6 -8
- package/es/pro-page-container/interface.d.ts +12 -0
- package/es/pro-page-container/pro-page-container.vue.d.ts +4 -15
- package/es/pro-page-container/pro-page-container.vue.js +58 -38
- package/es/pro-page-header/constant.d.ts +2 -0
- package/es/pro-page-header/constant.js +13 -0
- package/es/pro-page-header/index.d.ts +12 -146
- package/es/pro-page-header/index.js +6 -8
- package/es/pro-page-header/interface.d.ts +21 -0
- package/es/pro-page-header/pro-page-header.vue.d.ts +18 -103
- package/es/pro-page-header/pro-page-header.vue.js +141 -124
- package/es/pro-reuse-tabs/index.d.ts +8 -6
- package/es/pro-reuse-tabs/index.js +6 -7
- package/es/pro-reuse-tabs/pro-reuse-tabs.vue.d.ts +2 -2
- package/es/pro-reuse-tabs/pro-reuse-tabs.vue.js +33 -35
- package/es/pro-table/index.d.ts +18 -18
- package/es/pro-table/index.js +6 -7
- package/es/pro-table/index.vue.d.ts +6 -6
- package/es/pro-table/index.vue.js +94 -39
- package/es/pro-table/interface.d.ts +73 -65
- package/es/pro-textarea/index.d.ts +7 -5
- package/es/pro-textarea/index.js +5 -6
- package/es/pro-textarea/index.vue.d.ts +1 -1
- package/es/pro-textarea/index.vue.js +1 -1
- package/es/pro-textarea/index.vue2.js +14 -16
- package/es/pro-textarea/{inerface.d.ts → interface.d.ts} +19 -18
- package/es/style.css +1 -1
- package/es/utils.d.ts +6 -0
- package/es/utils.js +7 -0
- package/package.json +5 -4
- package/es/pro-date-range-picker/type.d.ts +0 -22
- package/es/pro-page-container/inerface.d.ts +0 -12
|
@@ -1,10 +1,17 @@
|
|
|
1
|
-
import { defineComponent as
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
4
|
-
|
|
1
|
+
import { defineComponent as X, useCssVars as Y, ref as w, useSlots as Z, computed as _, provide as C, onMounted as x, watch as D, createBlock as n, openBlock as s, unref as e, normalizeClass as o, withCtx as a, createCommentVNode as d, createVNode as u, createElementVNode as y, renderSlot as p, createElementBlock as h, Fragment as k, createTextVNode as T, toDisplayString as P } from "vue";
|
|
2
|
+
import { Layout as B, LayoutHeader as ee, Space as F, TypographyTitle as N, LayoutSider as le, Button as te, Affix as oe, LayoutContent as se, LayoutFooter as ae } from "@arco-design/web-vue";
|
|
3
|
+
import { IconMenuUnfold as de, IconMenuFold as re } from "@arco-design/web-vue/es/icon";
|
|
4
|
+
import ie from "../pro-keep-alive-router-view/pro-keep-alive-router-view.vue.js";
|
|
5
|
+
import ne from "../pro-reuse-tabs/pro-reuse-tabs.vue.js";
|
|
6
|
+
/* empty css */
|
|
7
|
+
import O from "../pro-menu/pro-menu.vue.js";
|
|
8
|
+
/* empty css */
|
|
9
|
+
import { useHooks as ue } from "./hooks.js";
|
|
10
|
+
import { ProLayoutMode as pe, ProLayoutMenuType as g } from "./enum.js";
|
|
11
|
+
const fe = ["src"], me = ["src"], t = "keyblade-pro-layout", ce = 48, Be = /* @__PURE__ */ X({
|
|
5
12
|
__name: "pro-layout",
|
|
6
13
|
props: {
|
|
7
|
-
layout: { default:
|
|
14
|
+
layout: { default: pe.mix },
|
|
8
15
|
hideHeader: { type: Boolean, default: !1 },
|
|
9
16
|
hiderSider: { type: Boolean, default: !1 },
|
|
10
17
|
headerHeight: { default: 60 },
|
|
@@ -26,226 +33,231 @@ const ue = ["src"], pe = ["src"], t = "keyblade-pro-layout", ce = 48, he = /* @_
|
|
|
26
33
|
},
|
|
27
34
|
emits: {
|
|
28
35
|
/** 收缩事件 */
|
|
29
|
-
collapse: (
|
|
36
|
+
collapse: (b) => !0,
|
|
30
37
|
/** keepAlive改变事件 */
|
|
31
|
-
keepAliveIncludeChange: (
|
|
38
|
+
keepAliveIncludeChange: (b) => !0
|
|
32
39
|
},
|
|
33
|
-
setup(
|
|
34
|
-
|
|
35
|
-
"
|
|
36
|
-
"
|
|
37
|
-
"
|
|
40
|
+
setup(b, { emit: V }) {
|
|
41
|
+
Y((l) => ({
|
|
42
|
+
"60f0bf10": L.value,
|
|
43
|
+
"30e69946": J,
|
|
44
|
+
"6cb36c08": Q
|
|
38
45
|
}));
|
|
39
|
-
const
|
|
40
|
-
topMenuItems:
|
|
46
|
+
const f = b, I = V, c = Z(), M = _(() => f.hiderSider || $.value.length > 0 && H.value.length === 0), {
|
|
47
|
+
topMenuItems: $,
|
|
41
48
|
siderMenuItems: H,
|
|
42
|
-
topMenuSelectedKeys:
|
|
49
|
+
topMenuSelectedKeys: E,
|
|
43
50
|
siderMenuSelectedKeys: R,
|
|
44
|
-
|
|
45
|
-
|
|
51
|
+
topMenuOpenKeys: U,
|
|
52
|
+
siderMenuOpenKeys: j,
|
|
53
|
+
breadcrumbItems: q,
|
|
54
|
+
tabs: S,
|
|
46
55
|
keepAliveInclude: v,
|
|
47
|
-
onProMenuItemClick:
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
56
|
+
onProMenuItemClick: K,
|
|
57
|
+
onProMenuOpenKeysChange: z,
|
|
58
|
+
onTabClick: G,
|
|
59
|
+
onTabDelete: A
|
|
60
|
+
} = ue(f);
|
|
61
|
+
C("ProBreadcrumbItems", q), C("ProKeepAliveInclude", v), C("onProReuseTabDelete", A);
|
|
62
|
+
const L = w(`${f.headerHeight}px`), J = `${f.siderWidth}px`, Q = `${ce}px`, r = w(f.siderCollapsed), W = (l) => {
|
|
63
|
+
r.value = l, I("collapse", l);
|
|
54
64
|
};
|
|
55
|
-
return
|
|
56
|
-
|
|
57
|
-
}),
|
|
58
|
-
r.value =
|
|
59
|
-
}, { immediate: !0 }),
|
|
60
|
-
|
|
61
|
-
}, { immediate: !0 }), (
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
class: a(`${t}-header-left-logo-img`),
|
|
65
|
+
return x(() => {
|
|
66
|
+
f.hideHeader && (L.value = "0px");
|
|
67
|
+
}), D(() => f.siderCollapsed, () => {
|
|
68
|
+
r.value = f.siderCollapsed;
|
|
69
|
+
}, { immediate: !0 }), D(v, () => {
|
|
70
|
+
I("keepAliveIncludeChange", v.value);
|
|
71
|
+
}, { immediate: !0 }), (l, i) => (s(), n(e(B), {
|
|
72
|
+
class: o([t, `${t}-${l.layout}`])
|
|
73
|
+
}, {
|
|
74
|
+
default: a(() => [
|
|
75
|
+
l.hideHeader ? d("", !0) : (s(), n(e(ee), {
|
|
76
|
+
key: 0,
|
|
77
|
+
class: o([`${t}-header`, { [`${t}-header-collapsed`]: r.value }])
|
|
78
|
+
}, {
|
|
79
|
+
default: a(() => [
|
|
80
|
+
y("div", {
|
|
81
|
+
class: o(`${t}-header-left`)
|
|
82
|
+
}, [
|
|
83
|
+
e(c)["header-left"] ? p(l.$slots, "header-left", { key: 0 }) : (s(), h(k, { key: 1 }, [
|
|
84
|
+
l.layout !== "side" ? (s(), h("div", {
|
|
85
|
+
key: 0,
|
|
86
|
+
class: o(`${t}-header-left-logo`)
|
|
87
|
+
}, [
|
|
88
|
+
u(e(F), null, {
|
|
89
|
+
default: a(() => [
|
|
90
|
+
p(l.$slots, "header-left-logo-img", {}, () => [
|
|
91
|
+
y("img", {
|
|
92
|
+
class: o(`${t}-header-left-logo-img`),
|
|
84
93
|
alt: "logo",
|
|
85
|
-
src:
|
|
86
|
-
}, null, 10,
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
94
|
+
src: l.logo
|
|
95
|
+
}, null, 10, fe)
|
|
96
|
+
]),
|
|
97
|
+
r.value ? d("", !0) : p(l.$slots, "header-left-logo-title", { key: 0 }, () => [
|
|
98
|
+
u(e(N), {
|
|
99
|
+
class: o(`${t}-header-left-logo-title`),
|
|
90
100
|
heading: 5
|
|
91
101
|
}, {
|
|
92
|
-
default:
|
|
93
|
-
T(P(
|
|
94
|
-
]),
|
|
95
|
-
_: 1
|
|
96
|
-
}, 8, ["class"]))
|
|
97
|
-
]),
|
|
98
|
-
_: 1
|
|
99
|
-
})
|
|
100
|
-
], 2)) : n("", !0)
|
|
101
|
-
], 64))
|
|
102
|
-
], 2),
|
|
103
|
-
h("div", {
|
|
104
|
-
class: a(`${t}-header-center`)
|
|
105
|
-
}, [
|
|
106
|
-
o(f)["header-center-left"] ? c(e.$slots, "header-center-left", { key: 0 }) : n("", !0),
|
|
107
|
-
o(b).length > 0 ? (l(), m(k, { key: 1 }, [
|
|
108
|
-
o(b).length > 0 ? (l(), i(D, {
|
|
109
|
-
key: 0,
|
|
110
|
-
mode: "horizontal",
|
|
111
|
-
"selected-keys": o(L),
|
|
112
|
-
items: o(b),
|
|
113
|
-
"menu-props": e.menuProps,
|
|
114
|
-
onMenuItemClick: y[0] || (y[0] = (_) => o(S)(o(F).top, _))
|
|
115
|
-
}, null, 8, ["selected-keys", "items", "menu-props"])) : n("", !0)
|
|
116
|
-
], 64)) : (l(), m(k, { key: 2 }, [
|
|
117
|
-
o(f)["header-center-center"] ? c(e.$slots, "header-center-center", { key: 0 }) : n("", !0)
|
|
118
|
-
], 64)),
|
|
119
|
-
o(f)["header-center-right"] ? c(e.$slots, "header-center-right", { key: 3 }) : n("", !0)
|
|
120
|
-
], 2),
|
|
121
|
-
h("div", {
|
|
122
|
-
class: a(`${t}-header-right`)
|
|
123
|
-
}, [
|
|
124
|
-
c(e.$slots, "header-right")
|
|
125
|
-
], 2)
|
|
126
|
-
]),
|
|
127
|
-
_: 3
|
|
128
|
-
}, 8, ["class"])),
|
|
129
|
-
p($, null, {
|
|
130
|
-
default: d(() => [
|
|
131
|
-
I.value ? n("", !0) : (l(), i(Y, {
|
|
132
|
-
key: 0,
|
|
133
|
-
class: a([`${t}-sider`, { [`${t}-sider-collapsed`]: r.value }]),
|
|
134
|
-
width: e.siderWidth,
|
|
135
|
-
collapsible: !0,
|
|
136
|
-
breakpoint: e.siderBreakpoint,
|
|
137
|
-
collapsed: r.value,
|
|
138
|
-
"hide-trigger": !0,
|
|
139
|
-
onCollapse: W
|
|
140
|
-
}, {
|
|
141
|
-
default: d(() => [
|
|
142
|
-
h("div", {
|
|
143
|
-
class: a(`${t}-sider-content`)
|
|
144
|
-
}, [
|
|
145
|
-
o(f)["sider-top"] ? c(e.$slots, "sider-top", { key: 0 }) : (l(), m(k, { key: 1 }, [
|
|
146
|
-
e.layout === "side" ? (l(), m("div", {
|
|
147
|
-
key: 0,
|
|
148
|
-
class: a(`${t}-sider-content-logo`)
|
|
149
|
-
}, [
|
|
150
|
-
p(K, null, {
|
|
151
|
-
default: d(() => [
|
|
152
|
-
h("img", {
|
|
153
|
-
class: a(`${t}-sider-content-logo-img`),
|
|
154
|
-
alt: "logo",
|
|
155
|
-
src: e.logo
|
|
156
|
-
}, null, 10, pe),
|
|
157
|
-
r.value ? n("", !0) : (l(), i(A, {
|
|
158
|
-
key: 0,
|
|
159
|
-
class: a(`${t}-sider-content-logo-title`),
|
|
160
|
-
heading: 5
|
|
161
|
-
}, {
|
|
162
|
-
default: d(() => [
|
|
163
|
-
T(P(e.title), 1)
|
|
164
|
-
]),
|
|
165
|
-
_: 1
|
|
166
|
-
}, 8, ["class"]))
|
|
102
|
+
default: a(() => [
|
|
103
|
+
T(P(l.title), 1)
|
|
167
104
|
]),
|
|
168
105
|
_: 1
|
|
169
|
-
})
|
|
170
|
-
]
|
|
171
|
-
], 64)),
|
|
172
|
-
p(D, {
|
|
173
|
-
mode: "vertical",
|
|
174
|
-
collapsed: r.value,
|
|
175
|
-
"selected-keys": o(R),
|
|
176
|
-
items: o(H),
|
|
177
|
-
"menu-props": e.menuProps,
|
|
178
|
-
onMenuItemClick: y[1] || (y[1] = (_) => o(S)(o(F).side, _))
|
|
179
|
-
}, null, 8, ["collapsed", "selected-keys", "items", "menu-props"])
|
|
180
|
-
], 2),
|
|
181
|
-
p(X, {
|
|
182
|
-
class: a(`${t}-sider-collapse-btn`),
|
|
183
|
-
size: "mini",
|
|
184
|
-
onClick: y[2] || (y[2] = (_) => W(!r.value))
|
|
185
|
-
}, {
|
|
186
|
-
icon: d(() => [
|
|
187
|
-
r.value ? (l(), i(Q, { key: 0 })) : (l(), i(U, { key: 1 }))
|
|
106
|
+
}, 8, ["class"])
|
|
107
|
+
])
|
|
188
108
|
]),
|
|
189
|
-
_:
|
|
190
|
-
}
|
|
191
|
-
]),
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
109
|
+
_: 3
|
|
110
|
+
})
|
|
111
|
+
], 2)) : d("", !0)
|
|
112
|
+
], 64))
|
|
113
|
+
], 2),
|
|
114
|
+
y("div", {
|
|
115
|
+
class: o(`${t}-header-center`)
|
|
116
|
+
}, [
|
|
117
|
+
e(c)["header-center-left"] ? p(l.$slots, "header-center-left", { key: 0 }) : d("", !0),
|
|
118
|
+
e($).length > 0 ? (s(), n(O, {
|
|
119
|
+
key: 1,
|
|
120
|
+
mode: "horizontal",
|
|
121
|
+
"selected-keys": e(E),
|
|
122
|
+
"open-keys": e(U),
|
|
123
|
+
items: e($),
|
|
124
|
+
"menu-props": l.menuProps,
|
|
125
|
+
onMenuItemClick: i[0] || (i[0] = (m) => e(K)(e(g).top, m)),
|
|
126
|
+
onOpenKeysChange: i[1] || (i[1] = (m) => e(z)(e(g).side, m))
|
|
127
|
+
}, null, 8, ["selected-keys", "open-keys", "items", "menu-props"])) : (s(), h(k, { key: 2 }, [
|
|
128
|
+
e(c)["header-center-center"] ? p(l.$slots, "header-center-center", { key: 0 }) : d("", !0)
|
|
129
|
+
], 64)),
|
|
130
|
+
e(c)["header-center-right"] ? p(l.$slots, "header-center-right", { key: 3 }) : d("", !0)
|
|
131
|
+
], 2),
|
|
132
|
+
y("div", {
|
|
133
|
+
class: o(`${t}-header-right`)
|
|
134
|
+
}, [
|
|
135
|
+
p(l.$slots, "header-right")
|
|
136
|
+
], 2)
|
|
137
|
+
]),
|
|
138
|
+
_: 3
|
|
139
|
+
}, 8, ["class"])),
|
|
140
|
+
u(e(B), null, {
|
|
141
|
+
default: a(() => [
|
|
142
|
+
M.value ? d("", !0) : (s(), n(e(le), {
|
|
143
|
+
key: 0,
|
|
144
|
+
class: o([`${t}-sider`, { [`${t}-sider-collapsed`]: r.value }]),
|
|
145
|
+
width: l.siderWidth,
|
|
146
|
+
collapsible: !0,
|
|
147
|
+
breakpoint: l.siderBreakpoint,
|
|
148
|
+
collapsed: r.value,
|
|
149
|
+
"hide-trigger": !0,
|
|
150
|
+
onCollapse: W
|
|
151
|
+
}, {
|
|
152
|
+
default: a(() => [
|
|
153
|
+
y("div", {
|
|
154
|
+
class: o(`${t}-sider-content`)
|
|
155
|
+
}, [
|
|
156
|
+
e(c)["sider-top"] ? p(l.$slots, "sider-top", { key: 0 }) : (s(), h(k, { key: 1 }, [
|
|
157
|
+
l.layout === "side" ? (s(), h("div", {
|
|
158
|
+
key: 0,
|
|
159
|
+
class: o(`${t}-sider-content-logo`)
|
|
160
|
+
}, [
|
|
161
|
+
u(e(F), null, {
|
|
162
|
+
default: a(() => [
|
|
163
|
+
y("img", {
|
|
164
|
+
class: o(`${t}-sider-content-logo-img`),
|
|
165
|
+
alt: "logo",
|
|
166
|
+
src: l.logo
|
|
167
|
+
}, null, 10, me),
|
|
168
|
+
r.value ? d("", !0) : (s(), n(e(N), {
|
|
169
|
+
key: 0,
|
|
170
|
+
class: o(`${t}-sider-content-logo-title`),
|
|
171
|
+
heading: 5
|
|
172
|
+
}, {
|
|
173
|
+
default: a(() => [
|
|
174
|
+
T(P(l.title), 1)
|
|
175
|
+
]),
|
|
176
|
+
_: 1
|
|
177
|
+
}, 8, ["class"]))
|
|
178
|
+
]),
|
|
179
|
+
_: 1
|
|
180
|
+
})
|
|
181
|
+
], 2)) : d("", !0)
|
|
182
|
+
], 64)),
|
|
183
|
+
u(O, {
|
|
184
|
+
mode: "vertical",
|
|
185
|
+
collapsed: r.value,
|
|
186
|
+
"selected-keys": e(R),
|
|
187
|
+
"open-keys": e(j),
|
|
188
|
+
items: e(H),
|
|
189
|
+
"menu-props": l.menuProps,
|
|
190
|
+
onMenuItemClick: i[2] || (i[2] = (m) => e(K)(e(g).side, m)),
|
|
191
|
+
onOpenKeysChange: i[3] || (i[3] = (m) => e(z)(e(g).side, m))
|
|
192
|
+
}, null, 8, ["collapsed", "selected-keys", "open-keys", "items", "menu-props"])
|
|
193
|
+
], 2),
|
|
194
|
+
u(e(te), {
|
|
195
|
+
class: o(`${t}-sider-collapse-btn`),
|
|
196
|
+
size: "mini",
|
|
197
|
+
onClick: i[4] || (i[4] = (m) => W(!r.value))
|
|
198
|
+
}, {
|
|
199
|
+
icon: a(() => [
|
|
200
|
+
r.value ? (s(), n(e(de), { key: 0 })) : (s(), n(e(re), { key: 1 }))
|
|
201
|
+
]),
|
|
202
|
+
_: 1
|
|
203
|
+
}, 8, ["class"])
|
|
204
|
+
]),
|
|
205
|
+
_: 3
|
|
206
|
+
}, 8, ["class", "width", "breakpoint", "collapsed"])),
|
|
207
|
+
u(e(B), {
|
|
208
|
+
class: o([
|
|
209
|
+
`${t}-body`,
|
|
210
|
+
{ [`${t}-body-hide-sider`]: M.value },
|
|
211
|
+
{ [`${t}-body-collapsed`]: r.value }
|
|
212
|
+
])
|
|
213
|
+
}, {
|
|
214
|
+
default: a(() => [
|
|
215
|
+
l.hideTabs ? d("", !0) : (s(), n(e(oe), {
|
|
216
|
+
key: 0,
|
|
217
|
+
class: o(`${t}-body-affix`),
|
|
218
|
+
offsetTop: l.hideHeader ? 0 : l.headerHeight
|
|
219
|
+
}, {
|
|
220
|
+
default: a(() => [
|
|
221
|
+
e(S).length > 0 ? (s(), n(ne, {
|
|
222
|
+
key: 0,
|
|
223
|
+
tabs: e(S),
|
|
224
|
+
"tabs-size": l.tabsSize,
|
|
225
|
+
"tabs-type": l.tabsType,
|
|
226
|
+
"tabs-header-padding": l.tabsHeaderPadding,
|
|
227
|
+
onTabClick: e(G),
|
|
228
|
+
onTabDelete: e(A)
|
|
229
|
+
}, null, 8, ["tabs", "tabs-size", "tabs-type", "tabs-header-padding", "onTabClick", "onTabDelete"])) : d("", !0)
|
|
230
|
+
]),
|
|
231
|
+
_: 1
|
|
232
|
+
}, 8, ["class", "offsetTop"])),
|
|
233
|
+
u(e(se), null, {
|
|
234
|
+
default: a(() => [
|
|
235
|
+
u(ie)
|
|
236
|
+
]),
|
|
237
|
+
_: 1
|
|
238
|
+
}),
|
|
239
|
+
l.hideFooter ? d("", !0) : (s(), h(k, { key: 1 }, [
|
|
240
|
+
e(c).footer !== void 0 ? p(l.$slots, "footer", { key: 0 }) : (s(), n(e(ae), {
|
|
241
|
+
key: 1,
|
|
242
|
+
class: o(`${t}-body-footer`)
|
|
206
243
|
}, {
|
|
207
|
-
default:
|
|
208
|
-
|
|
209
|
-
key: 0,
|
|
210
|
-
tabs: o(M),
|
|
211
|
-
"tabs-size": e.tabsSize,
|
|
212
|
-
"tabs-type": e.tabsType,
|
|
213
|
-
"tabs-header-padding": e.tabsHeaderPadding,
|
|
214
|
-
onTabClick: o(q),
|
|
215
|
-
onTabDelete: o(w)
|
|
216
|
-
}, null, 8, ["tabs", "tabs-size", "tabs-type", "tabs-header-padding", "onTabClick", "onTabDelete"])) : n("", !0)
|
|
217
|
-
]),
|
|
218
|
-
_: 1
|
|
219
|
-
}, 8, ["class", "offsetTop"])),
|
|
220
|
-
p(te, null, {
|
|
221
|
-
default: d(() => [
|
|
222
|
-
p(ee)
|
|
244
|
+
default: a(() => [
|
|
245
|
+
T(P(l.footerTitle), 1)
|
|
223
246
|
]),
|
|
224
247
|
_: 1
|
|
225
|
-
})
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
], 64))
|
|
237
|
-
]),
|
|
238
|
-
_: 3
|
|
239
|
-
}, 8, ["class"])
|
|
240
|
-
]),
|
|
241
|
-
_: 3
|
|
242
|
-
})
|
|
243
|
-
]),
|
|
244
|
-
_: 3
|
|
245
|
-
}, 8, ["class"]);
|
|
246
|
-
};
|
|
248
|
+
}, 8, ["class"]))
|
|
249
|
+
], 64))
|
|
250
|
+
]),
|
|
251
|
+
_: 3
|
|
252
|
+
}, 8, ["class"])
|
|
253
|
+
]),
|
|
254
|
+
_: 3
|
|
255
|
+
})
|
|
256
|
+
]),
|
|
257
|
+
_: 3
|
|
258
|
+
}, 8, ["class"]));
|
|
247
259
|
}
|
|
248
260
|
});
|
|
249
261
|
export {
|
|
250
|
-
|
|
262
|
+
Be as default
|
|
251
263
|
};
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
import { App } from 'vue';
|
|
2
|
+
declare const ProLoader: {
|
|
3
|
+
new (...args: any[]): import('vue').CreateComponentPublicInstanceWithMixins<Readonly<import('./interface').IProLoader> & Readonly<{}>, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, import('vue').PublicProps, {
|
|
4
|
+
size: number | string;
|
|
5
|
+
loading: boolean;
|
|
6
|
+
animation: import('./interface').IProLoaderAnimation;
|
|
7
|
+
tip: string;
|
|
8
|
+
}, false, {}, {}, import('vue').GlobalComponents, import('vue').GlobalDirectives, string, {
|
|
9
|
+
divRef: HTMLDivElement;
|
|
10
|
+
}, HTMLDivElement, import('vue').ComponentProvideOptions, {
|
|
11
|
+
P: {};
|
|
12
|
+
B: {};
|
|
13
|
+
D: {};
|
|
14
|
+
C: {};
|
|
15
|
+
M: {};
|
|
16
|
+
Defaults: {};
|
|
17
|
+
}, Readonly<import('./interface').IProLoader> & Readonly<{}>, {}, {}, {}, {}, {
|
|
18
|
+
size: number | string;
|
|
19
|
+
loading: boolean;
|
|
20
|
+
animation: import('./interface').IProLoaderAnimation;
|
|
21
|
+
tip: string;
|
|
22
|
+
}>;
|
|
23
|
+
__isFragment?: never;
|
|
24
|
+
__isTeleport?: never;
|
|
25
|
+
__isSuspense?: never;
|
|
26
|
+
} & import('vue').ComponentOptionsBase<Readonly<import('./interface').IProLoader> & Readonly<{}>, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, {
|
|
27
|
+
size: number | string;
|
|
28
|
+
loading: boolean;
|
|
29
|
+
animation: import('./interface').IProLoaderAnimation;
|
|
30
|
+
tip: string;
|
|
31
|
+
}, {}, string, {}, import('vue').GlobalComponents, import('vue').GlobalDirectives, string, import('vue').ComponentProvideOptions> & import('vue').VNodeProps & import('vue').AllowedComponentProps & import('vue').ComponentCustomProps & (new () => {
|
|
32
|
+
$slots: {
|
|
33
|
+
tip?(_: {}): any;
|
|
34
|
+
default?(_: {}): any;
|
|
35
|
+
};
|
|
36
|
+
}) & {
|
|
37
|
+
install: (app: App) => void;
|
|
38
|
+
};
|
|
39
|
+
/** 导出类型 */
|
|
40
|
+
export * from './interface';
|
|
41
|
+
/** 导出组件 */
|
|
42
|
+
export { ProLoader };
|
|
43
|
+
export default ProLoader;
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import { IProLoader } from './interface';
|
|
2
|
+
declare function __VLS_template(): {
|
|
3
|
+
attrs: Partial<{}>;
|
|
4
|
+
slots: {
|
|
5
|
+
tip?(_: {}): any;
|
|
6
|
+
default?(_: {}): any;
|
|
7
|
+
};
|
|
8
|
+
refs: {
|
|
9
|
+
divRef: HTMLDivElement;
|
|
10
|
+
};
|
|
11
|
+
rootEl: HTMLDivElement;
|
|
12
|
+
};
|
|
13
|
+
type __VLS_TemplateResult = ReturnType<typeof __VLS_template>;
|
|
14
|
+
declare const __VLS_component: import('vue').DefineComponent<IProLoader, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<IProLoader> & Readonly<{}>, {
|
|
15
|
+
size: number | string;
|
|
16
|
+
loading: boolean;
|
|
17
|
+
animation: import('./interface').IProLoaderAnimation;
|
|
18
|
+
tip: string;
|
|
19
|
+
}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {
|
|
20
|
+
divRef: HTMLDivElement;
|
|
21
|
+
}, HTMLDivElement>;
|
|
22
|
+
declare const _default: __VLS_WithTemplateSlots<typeof __VLS_component, __VLS_TemplateResult["slots"]>;
|
|
23
|
+
export default _default;
|
|
24
|
+
type __VLS_WithTemplateSlots<T, S> = T & {
|
|
25
|
+
new (): {
|
|
26
|
+
$slots: S;
|
|
27
|
+
};
|
|
28
|
+
};
|
|
@@ -0,0 +1,112 @@
|
|
|
1
|
+
import { defineComponent as x, ref as h, useSlots as w, computed as i, watch as m, createElementBlock as a, openBlock as r, normalizeStyle as p, normalizeClass as o, createCommentVNode as $, renderSlot as k, unref as z, createElementVNode as c, createStaticVNode as b, toDisplayString as B } from "vue";
|
|
2
|
+
import { conclude as M } from "vue-global-config";
|
|
3
|
+
import { globalProps as N } from "../global-props.js";
|
|
4
|
+
const e = "keyblade-pro-loader", F = /* @__PURE__ */ x({
|
|
5
|
+
__name: "index",
|
|
6
|
+
props: {
|
|
7
|
+
size: { default: "100px" },
|
|
8
|
+
loading: { type: Boolean, default: !0 },
|
|
9
|
+
color: {},
|
|
10
|
+
tip: { default: "" },
|
|
11
|
+
animation: { default: () => ({
|
|
12
|
+
startStrokeWidth: 2,
|
|
13
|
+
endStrokeWidth: 3
|
|
14
|
+
}) }
|
|
15
|
+
},
|
|
16
|
+
setup(C) {
|
|
17
|
+
const d = h(), l = C, n = h(l.loading), u = w(), S = i(() => l.loading ? "" : `${e}-fade-out`), f = i(() => {
|
|
18
|
+
const t = typeof s.value.size == "number" ? `${s.value.size}px` : s.value.size;
|
|
19
|
+
return {
|
|
20
|
+
width: t,
|
|
21
|
+
height: t
|
|
22
|
+
};
|
|
23
|
+
});
|
|
24
|
+
m(() => l.loading, (t) => {
|
|
25
|
+
t && (n.value = !0);
|
|
26
|
+
}), m(d, (t) => {
|
|
27
|
+
t && (t == null || t.addEventListener("transitionend", () => {
|
|
28
|
+
l.loading || (n.value = !1);
|
|
29
|
+
}));
|
|
30
|
+
});
|
|
31
|
+
const s = i(() => M([l, N.loader || {}]));
|
|
32
|
+
return (t, v) => {
|
|
33
|
+
var y, g;
|
|
34
|
+
return r(), a("div", {
|
|
35
|
+
class: o(e),
|
|
36
|
+
style: p({ minHeight: `calc(${f.value.height} + ${t.tip ? "24px" : "0px"})` })
|
|
37
|
+
}, [
|
|
38
|
+
n.value ? (r(), a("div", {
|
|
39
|
+
key: 0,
|
|
40
|
+
ref_key: "divRef",
|
|
41
|
+
ref: d,
|
|
42
|
+
class: o([`${e}-container`, S.value, `${s.value.color ? e + "-custom-color" : ""}`]),
|
|
43
|
+
style: p({
|
|
44
|
+
position: z(u).default ? "absolute" : void 0,
|
|
45
|
+
"--start-stroke-width": `${(y = s.value.animation) == null ? void 0 : y.startStrokeWidth}`,
|
|
46
|
+
"--end-stroke-width": `${(g = s.value.animation) == null ? void 0 : g.endStrokeWidth}`,
|
|
47
|
+
"--loader-color": `${s.value.color}`
|
|
48
|
+
})
|
|
49
|
+
}, [
|
|
50
|
+
c("div", {
|
|
51
|
+
class: o(`${e}-svg-container`)
|
|
52
|
+
}, [
|
|
53
|
+
(r(), a("svg", {
|
|
54
|
+
class: o(`${e}-svg-logo`),
|
|
55
|
+
style: p(f.value),
|
|
56
|
+
viewBox: "0 0 243.8 320.3"
|
|
57
|
+
}, [
|
|
58
|
+
v[0] || (v[0] = b('<defs><linearGradient id="css-gradient" x1="0%" y1="0%" x2="100%" y2="0%"><stop offset="0%" style="stop-color:#4ade80;stop-opacity:1;"></stop><stop offset="25%" style="stop-color:#22d3ee;stop-opacity:1;"></stop><stop offset="50%" style="stop-color:#818cf8;stop-opacity:1;"></stop><stop offset="60%" style="stop-color:#c084fc;stop-opacity:1;"></stop><stop offset="75%" style="stop-color:#f472b6;stop-opacity:1;"></stop><stop offset="100%" style="stop-color:#FFB134;stop-opacity:1;"></stop></linearGradient></defs>', 1)),
|
|
59
|
+
c("path", {
|
|
60
|
+
class: o(`${e}-svg-path`),
|
|
61
|
+
stroke: "url(#css-gradient)",
|
|
62
|
+
d: `M70.1,236.7c-4-0.5-7.4-0.1-10.9-0.7c-14.8-2.8-25.2-15.3-25.3-30.3c0-5.1,0-10.2,0-15.3c0-5.1,3.1-8.7,7.5-9
|
|
63
|
+
c4.5-0.3,8,2.7,8.5,8c0.4,4.8,0.5,9.7,0.2,14.5c-0.7,10,5.8,16.5,16,16.8c5.4,0.2,10.8,0,16.2,0.1c1.6,0,2.7-0.6,3.8-1.8
|
|
64
|
+
c2.9-3.3,6-6.5,8.9-9.9c14.2-16.9,37.9-17.8,53.2-1.9c3.6,3.8,7,7.8,10.4,11.6c0.8,0.9,1.7,1.9,3.1,1.9c6.7-0.1,13.5,0.6,20.2-0.4
|
|
65
|
+
c7.8-1.2,12.5-6.7,12.6-14.5c0-4.5-0.1-9.1,0-13.6c0-1.8,0.2-3.7,0.7-5.4c0.9-3.3,4.5-5.6,8.1-5.3c3.9,0.3,7.2,3,7.3,7
|
|
66
|
+
c0.3,7.5,0.9,15.1-0.3,22.5c-2.5,14.9-15.2,25.5-30.3,25.7c-1.5,0-3.7-0.8-4.3,0.6c-0.6,1.4,1.5,2.4,2.5,3.5
|
|
67
|
+
c1.2,1.4,2.5,2.7,3.2,4.4c1.5,3.5,0.4,7.4-2.6,9.6c-3.2,2.3-7.2,2.2-10.1-0.8c-4.8-5-9.4-10.2-14-15.4c-6.1-6.8-12.1-13.8-18.4-20.4
|
|
68
|
+
c-7.9-8.4-20-8.4-27.9,0.2c-10.2,11.2-20.2,22.6-30.3,33.9c-0.9,1-1.8,2.1-2.8,2.9c-3.3,2.7-7.9,2.4-10.8-0.4
|
|
69
|
+
c-2.8-2.9-3.1-7.6-0.4-10.8C65.9,241.4,67.9,239.3,70.1,236.7z`
|
|
70
|
+
}, null, 2),
|
|
71
|
+
c("path", {
|
|
72
|
+
class: o(`${e}-svg-path`),
|
|
73
|
+
stroke: "url(#css-gradient)",
|
|
74
|
+
d: `M123.4,173.2c-33.2-0.5-65-3.1-96.3-10.9c-1.3-0.3-2.6-0.7-3.9-1.2c-4.1-1.5-6.2-5.5-5-9.5c1.2-4,5.1-6.5,9.3-5.4
|
|
75
|
+
c13.6,3.5,27.4,5.7,41.3,7.5c9.9,1.3,19.9,2.1,30,2.6c9.5,0.5,19.1,0.7,28.6,0.6c29.7-0.5,59.1-3.4,88-10.5c6.6-1.6,11.6,2,11.2,8.1
|
|
76
|
+
c-0.3,3.6-2.5,6.1-6.7,7.3c-7.7,2.2-15.6,3.7-23.5,5.1c-20.9,3.5-41.8,5.7-63,5.9C129.6,172.8,126,173.3,123.4,173.2z`
|
|
77
|
+
}, null, 2),
|
|
78
|
+
c("path", {
|
|
79
|
+
class: o(`${e}-svg-path`),
|
|
80
|
+
stroke: "url(#css-gradient)",
|
|
81
|
+
d: `M210.9,114.1c0,3.9,0,7.7,0,11.6c-0.1,4.8-3.2,8.4-7.5,8.8c-4.4,0.3-8.2-2.7-8.5-7.7c-0.4-6.8-0.3-13.7-0.3-20.5
|
|
82
|
+
c0-9.7-5.5-15.2-15.2-15.2c-6.8-0.1-13.7,0-20.5-0.1c-5-0.1-8.3-3.2-8.4-7.7c-0.1-4.6,2.9-8.2,7.8-8.3c9.1-0.2,18.2-0.9,27.2,0.5
|
|
83
|
+
c15.1,2.3,25.5,14.6,25.5,29.7C210.9,108.1,210.9,111.1,210.9,114.1z`
|
|
84
|
+
}, null, 2),
|
|
85
|
+
c("path", {
|
|
86
|
+
class: o(`${e}-svg-path`),
|
|
87
|
+
stroke: "url(#css-gradient)",
|
|
88
|
+
d: `M34.1,112.9c0.2-4-0.5-9.1,0.5-14.2c2.3-12,13.5-22.1,25.7-23.4c8.2-0.9,16.4-0.4,24.6-0.5c2,0,4.1,0.2,5.8,1.4
|
|
89
|
+
c2.9,1.9,4.1,4.6,3.5,8c-0.5,3.2-2.5,5.2-5.5,6.1c-1.6,0.5-3.2,0.6-4.9,0.6c-6.3,0-12.6,0-18.8,0c-9.3,0.1-15.2,6-15.3,15.2
|
|
90
|
+
c0,6.5,0,12.9-0.1,19.4c0,5-3.4,8.7-7.8,8.7c-4.3,0-7.8-3.7-7.9-8.7C34,121.7,34.1,117.9,34.1,112.9z`
|
|
91
|
+
}, null, 2),
|
|
92
|
+
c("path", {
|
|
93
|
+
class: o(`${e}-svg-path`),
|
|
94
|
+
stroke: "url(#css-gradient)",
|
|
95
|
+
d: `M130.4,97c0,8,0,16,0,24c0,5.3-3.3,8.8-8,8.7c-4.4-0.1-7.8-3.8-7.8-8.7c0-16.1,0-32.2,0.1-48.3c0-4.7,3.5-8.4,7.8-8.5
|
|
96
|
+
c4.6-0.1,7.9,3.3,7.9,8.4C130.3,80.8,130.3,88.9,130.4,97C130.3,97,130.3,97,130.4,97z`
|
|
97
|
+
}, null, 2)
|
|
98
|
+
], 6))
|
|
99
|
+
], 2),
|
|
100
|
+
z(u).tip ? k(t.$slots, "tip", { key: 0 }) : s.value.tip ? (r(), a("div", {
|
|
101
|
+
key: 1,
|
|
102
|
+
class: o(`${e}-tip`)
|
|
103
|
+
}, B(s.value.tip), 3)) : $("", !0)
|
|
104
|
+
], 6)) : $("", !0),
|
|
105
|
+
k(t.$slots, "default")
|
|
106
|
+
], 4);
|
|
107
|
+
};
|
|
108
|
+
}
|
|
109
|
+
});
|
|
110
|
+
export {
|
|
111
|
+
F as default
|
|
112
|
+
};
|