jky-component-lib 0.0.77 → 0.0.88
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/index.js +2 -0
- package/dist/es/modal/Footer.vue.d.ts +10 -0
- package/dist/es/modal/Footer.vue.js +59 -0
- package/dist/es/modal/Footer.vue2.js +4 -0
- package/dist/es/modal/Header.vue.d.ts +37 -0
- package/dist/es/modal/Header.vue.js +79 -0
- package/dist/es/modal/Header.vue2.js +4 -0
- package/dist/es/modal/Modal.vue.d.ts +75 -0
- package/dist/es/modal/Modal.vue.js +224 -0
- package/dist/es/modal/Modal.vue3.js +5 -0
- package/dist/es/modal/index.d.ts +5 -0
- package/dist/es/modal/index.js +8 -0
- package/dist/es/modal/style.css +8 -0
- package/dist/es/package.json.js +1 -1
- package/dist/es/page-layout/PageLayout.vue.d.ts +1 -0
- package/dist/es/page-layout/PageLayout.vue.js +10 -10
- package/dist/es/style.css +116 -0
- package/dist/es/styles.css +1 -1
- package/dist/es/tabs/style.css +1 -0
- package/dist/lib/components.d.ts +1 -0
- package/dist/lib/components.js +21 -18
- package/dist/lib/index.js +14 -12
- package/dist/lib/modal/Footer.vue.d.ts +10 -0
- package/dist/lib/modal/Footer.vue.js +59 -0
- package/dist/lib/modal/Footer.vue2.js +4 -0
- package/dist/lib/modal/Header.vue.d.ts +37 -0
- package/dist/lib/modal/Header.vue.js +79 -0
- package/dist/lib/modal/Header.vue2.js +4 -0
- package/dist/lib/modal/Modal.vue.d.ts +75 -0
- package/dist/lib/modal/Modal.vue.js +224 -0
- package/dist/lib/modal/Modal.vue3.js +5 -0
- package/dist/lib/modal/index.d.ts +5 -0
- package/dist/lib/modal/index.js +8 -0
- package/dist/lib/modal/style.css +8 -0
- package/dist/lib/package.json.js +1 -1
- package/dist/lib/page-layout/PageLayout.vue.d.ts +1 -0
- package/dist/lib/page-layout/PageLayout.vue.js +9 -9
- package/dist/lib/style.css +116 -0
- package/dist/lib/styles.css +1 -1
- package/dist/lib/tabs/style.css +1 -0
- package/package.json +5 -4
|
@@ -29,7 +29,7 @@ var __objRest = (source, exclude) => {
|
|
|
29
29
|
}
|
|
30
30
|
return target;
|
|
31
31
|
};
|
|
32
|
-
import { defineComponent, ref, computed, watch, resolveComponent, openBlock, createElementBlock, normalizeClass, createBlock, unref, withCtx, createElementVNode, createVNode, createCommentVNode, normalizeStyle, resolveDynamicComponent, Transition, KeepAlive } from "vue";
|
|
32
|
+
import { defineComponent, useAttrs, ref, computed, watch, resolveComponent, openBlock, createElementBlock, normalizeClass, createBlock, unref, withCtx, createElementVNode, createVNode, createCommentVNode, normalizeStyle, resolveDynamicComponent, Transition, KeepAlive } from "vue";
|
|
33
33
|
import { ElCard, ElAside, ElScrollbar } from "element-plus";
|
|
34
34
|
import { cloneDeep } from "lodash-es";
|
|
35
35
|
import { useRouter, useRoute, RouterView } from "vue-router";
|
|
@@ -64,12 +64,14 @@ const _sfc_main = /* @__PURE__ */ defineComponent(__spreadProps(__spreadValues({
|
|
|
64
64
|
topLevels: {},
|
|
65
65
|
sideLevels: {},
|
|
66
66
|
topMenuTrigger: { default: "click" },
|
|
67
|
-
topMenuSingleLevel: { type: Boolean, default: true }
|
|
67
|
+
topMenuSingleLevel: { type: Boolean, default: true },
|
|
68
|
+
sideMenuWithParent: { type: Boolean, default: true }
|
|
68
69
|
},
|
|
69
70
|
setup(__props) {
|
|
70
71
|
const props = __props;
|
|
71
72
|
const router = useRouter();
|
|
72
73
|
const route = useRoute();
|
|
74
|
+
const attrs = useAttrs();
|
|
73
75
|
const { useTabsStore } = createTabsStore({
|
|
74
76
|
enableCache: props.cachable
|
|
75
77
|
});
|
|
@@ -130,7 +132,6 @@ const _sfc_main = /* @__PURE__ */ defineComponent(__spreadProps(__spreadValues({
|
|
|
130
132
|
});
|
|
131
133
|
const displayedSideMenu = computed(() => {
|
|
132
134
|
if (menuData.value.length === 0) {
|
|
133
|
-
console.warn("displayedSideMenu: menuData is empty");
|
|
134
135
|
return [];
|
|
135
136
|
}
|
|
136
137
|
const topMenuItem = route.matched[0];
|
|
@@ -144,6 +145,9 @@ const _sfc_main = /* @__PURE__ */ defineComponent(__spreadProps(__spreadValues({
|
|
|
144
145
|
return [];
|
|
145
146
|
}
|
|
146
147
|
if ((found == null ? void 0 : found.children) && found.children.length > 0) {
|
|
148
|
+
if (props.sideMenuWithParent || attrs["side-menu-with-parent"]) {
|
|
149
|
+
return [found];
|
|
150
|
+
}
|
|
147
151
|
return found.children;
|
|
148
152
|
}
|
|
149
153
|
return [];
|
|
@@ -163,7 +167,6 @@ const _sfc_main = /* @__PURE__ */ defineComponent(__spreadProps(__spreadValues({
|
|
|
163
167
|
return (_a = r.meta) == null ? void 0 : _a.title;
|
|
164
168
|
});
|
|
165
169
|
if (matchedMenus.length === 0) {
|
|
166
|
-
console.warn("No matching menu item found for route:", routePath);
|
|
167
170
|
return;
|
|
168
171
|
}
|
|
169
172
|
activeSideMenu.value = routePath;
|
|
@@ -172,15 +175,10 @@ const _sfc_main = /* @__PURE__ */ defineComponent(__spreadProps(__spreadValues({
|
|
|
172
175
|
} else {
|
|
173
176
|
activeTopMenu.value = matchedMenus[0].path;
|
|
174
177
|
}
|
|
175
|
-
console.warn("Updated menu:", {
|
|
176
|
-
activeTopMenu: activeTopMenu.value,
|
|
177
|
-
activeSideMenu: activeSideMenu.value
|
|
178
|
-
});
|
|
179
178
|
},
|
|
180
179
|
{ immediate: true }
|
|
181
180
|
);
|
|
182
|
-
function handleMenuOpen(
|
|
183
|
-
console.warn("handleMenuOpen called with index:", index);
|
|
181
|
+
function handleMenuOpen(_index) {
|
|
184
182
|
}
|
|
185
183
|
function handleMenuSelect(index) {
|
|
186
184
|
router.push(index);
|
|
@@ -230,6 +228,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent(__spreadProps(__spreadValues({
|
|
|
230
228
|
mode: "vertical",
|
|
231
229
|
"default-active": activeSideMenu.value,
|
|
232
230
|
"menu-data": displayedSideMenu.value,
|
|
231
|
+
class: "jky-page-layout__side-menu",
|
|
233
232
|
onSelect: handleMenuSelect
|
|
234
233
|
}, null, 8, ["default-active", "menu-data"])
|
|
235
234
|
]),
|
|
@@ -239,6 +238,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent(__spreadProps(__spreadValues({
|
|
|
239
238
|
mode: "vertical",
|
|
240
239
|
"default-active": activeSideMenu.value,
|
|
241
240
|
"menu-data": displayedSideMenu.value,
|
|
241
|
+
class: "jky-page-layout__side-menu",
|
|
242
242
|
onSelect: handleMenuSelect
|
|
243
243
|
}, null, 8, ["default-active", "menu-data"])
|
|
244
244
|
]),
|
package/dist/es/style.css
CHANGED
|
@@ -11,6 +11,7 @@
|
|
|
11
11
|
--tw-skew-x: initial;
|
|
12
12
|
--tw-skew-y: initial;
|
|
13
13
|
--tw-space-y-reverse: 0;
|
|
14
|
+
--tw-space-x-reverse: 0;
|
|
14
15
|
--tw-divide-y-reverse: 0;
|
|
15
16
|
--tw-border-style: solid;
|
|
16
17
|
--tw-gradient-position: initial;
|
|
@@ -132,6 +133,7 @@
|
|
|
132
133
|
--color-gray-700: oklch(37.3% .034 259.733);
|
|
133
134
|
--color-gray-800: oklch(27.8% .033 256.848);
|
|
134
135
|
--color-gray-900: oklch(21% .034 264.665);
|
|
136
|
+
--color-black: #000;
|
|
135
137
|
--color-white: #fff;
|
|
136
138
|
--spacing: .25rem;
|
|
137
139
|
--container-2xl: 42rem;
|
|
@@ -604,6 +606,10 @@
|
|
|
604
606
|
margin-right: calc(var(--spacing) * 4);
|
|
605
607
|
}
|
|
606
608
|
|
|
609
|
+
.mb-0\! {
|
|
610
|
+
margin-bottom: calc(var(--spacing) * 0) !important;
|
|
611
|
+
}
|
|
612
|
+
|
|
607
613
|
.mb-1 {
|
|
608
614
|
margin-bottom: calc(var(--spacing) * 1);
|
|
609
615
|
}
|
|
@@ -1404,6 +1410,38 @@
|
|
|
1404
1410
|
mask-repeat: no-repeat;
|
|
1405
1411
|
}
|
|
1406
1412
|
|
|
1413
|
+
.icon-\[mi--switch\] {
|
|
1414
|
+
width: 1em;
|
|
1415
|
+
height: 1em;
|
|
1416
|
+
-webkit-mask-image: var(--svg);
|
|
1417
|
+
-webkit-mask-image: var(--svg);
|
|
1418
|
+
-webkit-mask-image: var(--svg);
|
|
1419
|
+
mask-image: var(--svg);
|
|
1420
|
+
--svg: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cpath fill='black' d='M14.293 2.293a1 1 0 0 1 1.414 0l4 4a1 1 0 0 1 0 1.414l-4 4a1 1 0 0 1-1.414-1.414L16.586 8H5a1 1 0 0 1 0-2h11.586l-2.293-2.293a1 1 0 0 1 0-1.414m-4.586 10a1 1 0 0 1 0 1.414L7.414 16H19a1 1 0 1 1 0 2H7.414l2.293 2.293a1 1 0 0 1-1.414 1.414l-4-4a1 1 0 0 1 0-1.414l4-4a1 1 0 0 1 1.414 0'/%3E%3C/svg%3E");
|
|
1421
|
+
background-color: currentColor;
|
|
1422
|
+
display: inline-block;
|
|
1423
|
+
-webkit-mask-size: 100% 100%;
|
|
1424
|
+
mask-size: 100% 100%;
|
|
1425
|
+
-webkit-mask-repeat: no-repeat;
|
|
1426
|
+
mask-repeat: no-repeat;
|
|
1427
|
+
}
|
|
1428
|
+
|
|
1429
|
+
.icon-\[radix-icons--exit-full-screen\] {
|
|
1430
|
+
width: 1em;
|
|
1431
|
+
height: 1em;
|
|
1432
|
+
-webkit-mask-image: var(--svg);
|
|
1433
|
+
-webkit-mask-image: var(--svg);
|
|
1434
|
+
-webkit-mask-image: var(--svg);
|
|
1435
|
+
mask-image: var(--svg);
|
|
1436
|
+
--svg: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 15 15' width='15' height='15'%3E%3Cpath fill='black' d='M5.5 9a.5.5 0 0 1 .5.5v3a.5.5 0 0 1-1 0V10H2.5a.5.5 0 0 1 0-1zm7 0a.5.5 0 0 1 0 1H10v2.5a.5.5 0 0 1-1 0v-3a.5.5 0 0 1 .5-.5zm-7-7a.5.5 0 0 1 .5.5v3a.5.5 0 0 1-.5.5h-3a.5.5 0 0 1 0-1H5V2.5a.5.5 0 0 1 .5-.5m4 0a.5.5 0 0 1 .5.5V5h2.5a.5.5 0 0 1 0 1h-3a.5.5 0 0 1-.5-.5v-3a.5.5 0 0 1 .5-.5'/%3E%3C/svg%3E");
|
|
1437
|
+
background-color: currentColor;
|
|
1438
|
+
display: inline-block;
|
|
1439
|
+
-webkit-mask-size: 100% 100%;
|
|
1440
|
+
mask-size: 100% 100%;
|
|
1441
|
+
-webkit-mask-repeat: no-repeat;
|
|
1442
|
+
mask-repeat: no-repeat;
|
|
1443
|
+
}
|
|
1444
|
+
|
|
1407
1445
|
.icon-\[ri--logout-circle-line\] {
|
|
1408
1446
|
width: 1em;
|
|
1409
1447
|
height: 1em;
|
|
@@ -1420,6 +1458,22 @@
|
|
|
1420
1458
|
mask-repeat: no-repeat;
|
|
1421
1459
|
}
|
|
1422
1460
|
|
|
1461
|
+
.icon-\[streamline-ultimate--direction-button-2\] {
|
|
1462
|
+
width: 1em;
|
|
1463
|
+
height: 1em;
|
|
1464
|
+
-webkit-mask-image: var(--svg);
|
|
1465
|
+
-webkit-mask-image: var(--svg);
|
|
1466
|
+
-webkit-mask-image: var(--svg);
|
|
1467
|
+
mask-image: var(--svg);
|
|
1468
|
+
--svg: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24'%3E%3Cpath fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='M9 11.998a3 3 0 1 0 6 0a3 3 0 0 0-6 0m-7.974-.629a.853.853 0 0 0 0 1.257l3.118 2.858A.66.66 0 0 0 5.25 15V9a.66.66 0 0 0-1.106-.486zm21.947 1.257a.85.85 0 0 0 0-1.257l-3.117-2.858A.66.66 0 0 0 18.75 9v6a.659.659 0 0 0 1.105.486zM11.372 22.971a.85.85 0 0 0 1.256 0l2.858-3.118A.659.659 0 0 0 15 18.748H9a.66.66 0 0 0-.487 1.105zm1.256-21.947a.85.85 0 0 0-1.256 0L8.514 4.142A.66.66 0 0 0 9 5.248h6a.66.66 0 0 0 .486-1.106z'/%3E%3C/svg%3E");
|
|
1469
|
+
background-color: currentColor;
|
|
1470
|
+
display: inline-block;
|
|
1471
|
+
-webkit-mask-size: 100% 100%;
|
|
1472
|
+
mask-size: 100% 100%;
|
|
1473
|
+
-webkit-mask-repeat: no-repeat;
|
|
1474
|
+
mask-repeat: no-repeat;
|
|
1475
|
+
}
|
|
1476
|
+
|
|
1423
1477
|
.block {
|
|
1424
1478
|
display: block;
|
|
1425
1479
|
}
|
|
@@ -1592,6 +1646,10 @@
|
|
|
1592
1646
|
flex: 1;
|
|
1593
1647
|
}
|
|
1594
1648
|
|
|
1649
|
+
.flex-none {
|
|
1650
|
+
flex: none;
|
|
1651
|
+
}
|
|
1652
|
+
|
|
1595
1653
|
.shrink-0 {
|
|
1596
1654
|
flex-shrink: 0;
|
|
1597
1655
|
}
|
|
@@ -1705,6 +1763,16 @@
|
|
|
1705
1763
|
margin-block-end: calc(calc(var(--spacing) * 6) * calc(1 - var(--tw-space-y-reverse)));
|
|
1706
1764
|
}
|
|
1707
1765
|
|
|
1766
|
+
.gap-x-2 {
|
|
1767
|
+
column-gap: calc(var(--spacing) * 2);
|
|
1768
|
+
}
|
|
1769
|
+
|
|
1770
|
+
:where(.space-x-4 > :not(:last-child)) {
|
|
1771
|
+
--tw-space-x-reverse: 0;
|
|
1772
|
+
margin-inline-start: calc(calc(var(--spacing) * 4) * var(--tw-space-x-reverse));
|
|
1773
|
+
margin-inline-end: calc(calc(var(--spacing) * 4) * calc(1 - var(--tw-space-x-reverse)));
|
|
1774
|
+
}
|
|
1775
|
+
|
|
1708
1776
|
:where(.divide-y > :not(:last-child)) {
|
|
1709
1777
|
--tw-divide-y-reverse: 0;
|
|
1710
1778
|
border-bottom-style: var(--tw-border-style);
|
|
@@ -1721,6 +1789,12 @@
|
|
|
1721
1789
|
align-self: center;
|
|
1722
1790
|
}
|
|
1723
1791
|
|
|
1792
|
+
.truncate {
|
|
1793
|
+
text-overflow: ellipsis;
|
|
1794
|
+
white-space: nowrap;
|
|
1795
|
+
overflow: hidden;
|
|
1796
|
+
}
|
|
1797
|
+
|
|
1724
1798
|
.overflow-hidden {
|
|
1725
1799
|
overflow: hidden;
|
|
1726
1800
|
}
|
|
@@ -1806,6 +1880,26 @@
|
|
|
1806
1880
|
border-color: var(--color-yellow-200);
|
|
1807
1881
|
}
|
|
1808
1882
|
|
|
1883
|
+
.border-t-black\/15 {
|
|
1884
|
+
border-top-color: #00000026;
|
|
1885
|
+
}
|
|
1886
|
+
|
|
1887
|
+
@supports (color: color-mix(in lab, red, red)) {
|
|
1888
|
+
.border-t-black\/15 {
|
|
1889
|
+
border-top-color: color-mix(in oklab, var(--color-black) 15%, transparent);
|
|
1890
|
+
}
|
|
1891
|
+
}
|
|
1892
|
+
|
|
1893
|
+
.border-b-black\/15 {
|
|
1894
|
+
border-bottom-color: #00000026;
|
|
1895
|
+
}
|
|
1896
|
+
|
|
1897
|
+
@supports (color: color-mix(in lab, red, red)) {
|
|
1898
|
+
.border-b-black\/15 {
|
|
1899
|
+
border-bottom-color: color-mix(in oklab, var(--color-black) 15%, transparent);
|
|
1900
|
+
}
|
|
1901
|
+
}
|
|
1902
|
+
|
|
1809
1903
|
.border-l-\(--el-color-primary\) {
|
|
1810
1904
|
border-left-color: var(--el-color-primary);
|
|
1811
1905
|
}
|
|
@@ -2129,6 +2223,10 @@
|
|
|
2129
2223
|
padding: calc(var(--spacing) * 0);
|
|
2130
2224
|
}
|
|
2131
2225
|
|
|
2226
|
+
.p-0\! {
|
|
2227
|
+
padding: calc(var(--spacing) * 0) !important;
|
|
2228
|
+
}
|
|
2229
|
+
|
|
2132
2230
|
.p-2 {
|
|
2133
2231
|
padding: calc(var(--spacing) * 2);
|
|
2134
2232
|
}
|
|
@@ -2165,6 +2263,10 @@
|
|
|
2165
2263
|
padding-inline: calc(var(--spacing) * 4);
|
|
2166
2264
|
}
|
|
2167
2265
|
|
|
2266
|
+
.px-4\! {
|
|
2267
|
+
padding-inline: calc(var(--spacing) * 4) !important;
|
|
2268
|
+
}
|
|
2269
|
+
|
|
2168
2270
|
.px-6 {
|
|
2169
2271
|
padding-inline: calc(var(--spacing) * 6);
|
|
2170
2272
|
}
|
|
@@ -2201,6 +2303,10 @@
|
|
|
2201
2303
|
padding-block: calc(var(--spacing) * 16);
|
|
2202
2304
|
}
|
|
2203
2305
|
|
|
2306
|
+
.pt-0\! {
|
|
2307
|
+
padding-top: calc(var(--spacing) * 0) !important;
|
|
2308
|
+
}
|
|
2309
|
+
|
|
2204
2310
|
.pt-4 {
|
|
2205
2311
|
padding-top: calc(var(--spacing) * 4);
|
|
2206
2312
|
}
|
|
@@ -2619,6 +2725,10 @@
|
|
|
2619
2725
|
background-color: var(--color-yellow-200);
|
|
2620
2726
|
}
|
|
2621
2727
|
|
|
2728
|
+
.hover\:text-\(--el-color-primary\):hover {
|
|
2729
|
+
color: var(--el-color-primary);
|
|
2730
|
+
}
|
|
2731
|
+
|
|
2622
2732
|
.hover\:text-blue-900:hover {
|
|
2623
2733
|
color: var(--color-blue-900);
|
|
2624
2734
|
}
|
|
@@ -2762,6 +2872,12 @@
|
|
|
2762
2872
|
initial-value: 0;
|
|
2763
2873
|
}
|
|
2764
2874
|
|
|
2875
|
+
@property --tw-space-x-reverse {
|
|
2876
|
+
syntax: "*";
|
|
2877
|
+
inherits: false;
|
|
2878
|
+
initial-value: 0;
|
|
2879
|
+
}
|
|
2880
|
+
|
|
2765
2881
|
@property --tw-divide-y-reverse {
|
|
2766
2882
|
syntax: "*";
|
|
2767
2883
|
inherits: false;
|
package/dist/es/styles.css
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
:root{--jky-add-input-gap:12px;--jky-add-input-row-gap:8px;--jky-add-input-min-width:100px;--jky-add-input-action-width:80px}.jky-add-input{display:flex;flex-direction:column;gap:var(--jky-add-input-row-gap);min-width:var(--jky-add-input-min-width)}.jky-add-input__row{align-items:center;display:flex;gap:var(--jky-add-input-gap)}.jky-add-input__key,.jky-add-input__value{flex:1;min-width:0}.jky-add-input__actions{display:flex;flex-shrink:0;gap:var(--jky-add-input-gap);width:var(--jky-add-input-action-width)}:root{--jky-button-primary-bg:#007bff;--jky-button-primary-text:#fff;--jky-button-primary-hover-bg:#0056b3;--jky-button-success-bg:#28a745;--jky-button-success-text:#fff;--jky-button-success-hover-bg:#1e7e34;--jky-button-warning-bg:#ffc107;--jky-button-warning-text:#fff;--jky-button-warning-hover-bg:#e0a800;--jky-button-danger-bg:#dc3545;--jky-button-danger-text:#fff;--jky-button-danger-hover-bg:#c82333;--jky-button-info-bg:#6c757d;--jky-button-info-text:#fff;--jky-button-info-hover-bg:#5a6268;--jky-button-default-bg:#fff;--jky-button-default-text:#606266;--jky-button-default-border:#dcdfe6;--jky-button-default-hover-bg:#f5f7fa;--jky-button-font-size:14px;--jky-button-font-size-small:12px;--jky-button-font-size-large:16px;--jky-button-padding:0 16px;--jky-button-padding-small:0 12px;--jky-button-padding-large:0 20px;--jky-button-height:40px;--jky-button-height-small:32px;--jky-button-height-large:48px;--jky-button-border-radius:0.375rem;--jky-button-disabled-opacity:0.5;--jky-button-disabled-bg:#f5f7fa;--jky-button-disabled-text:#c0c4cc;--jky-button-loading-opacity:0.7;--jky-button-icon-size:1.25rem;--jky-button-icon-margin:0.5rem}.jky-button{align-items:center;background-color:var(--jky-button-default-bg);border:1px solid var(--jky-button-default-border);border-radius:var(--jky-button-border-radius);color:var(--jky-button-default-text);cursor:pointer;display:inline-flex;font-size:var(--jky-button-font-size);font-weight:500;height:var(--jky-button-height);justify-content:center;padding:var(--jky-button-padding);transition:color .2s,background-color .2s}.jky-button--primary{background-color:var(--jky-button-primary-bg);border:none;color:var(--jky-button-primary-text)}.jky-button--primary:hover{background-color:var(--jky-button-primary-hover-bg)}.jky-button--success{background-color:var(--jky-button-success-bg);border:none;color:var(--jky-button-success-text)}.jky-button--success:hover{background-color:var(--jky-button-success-hover-bg)}.jky-button--warning{background-color:var(--jky-button-warning-bg);border:none;color:var(--jky-button-warning-text)}.jky-button--warning:hover{background-color:var(--jky-button-warning-hover-bg)}.jky-button--danger{background-color:var(--jky-button-danger-bg);border:none;color:var(--jky-button-danger-text)}.jky-button--danger:hover{background-color:var(--jky-button-danger-hover-bg)}.jky-button--info{background-color:var(--jky-button-info-bg);border:none;color:var(--jky-button-info-text)}.jky-button--info:hover{background-color:var(--jky-button-info-hover-bg)}.jky-button--small{font-size:var(--jky-button-font-size-small);height:var(--jky-button-height-small);padding:var(--jky-button-padding-small)}.jky-button--large{font-size:var(--jky-button-font-size-large);height:var(--jky-button-height-large);padding:var(--jky-button-padding-large)}.jky-button.is-disabled{background-color:var(--jky-button-disabled-bg);color:var(--jky-button-disabled-text);cursor:not-allowed;opacity:var(--jky-button-disabled-opacity);pointer-events:none}.jky-button.is-loading{opacity:var(--jky-button-loading-opacity);pointer-events:none;position:relative}.jky-button__loading{display:flex;inset:0;position:absolute}.jky-button__icon,.jky-button__loading{align-items:center;justify-content:center}.jky-button__icon{display:inline-flex;font-size:1em;margin-right:var(--jky-button-icon-margin)}.jky-button__icon:only-child{margin-right:0}.jky-button--suffix .jky-button__icon{margin-left:var(--jky-button-icon-margin);margin-right:0}.jky-button:focus-visible{box-shadow:0 0 0 2px #fff,0 0 0 4px #000;outline:2px solid transparent;outline-offset:2px}.loading-spinner{animation:spin 1s linear infinite;height:var(--jky-button-icon-size);width:var(--jky-button-icon-size)}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}:root{--jky-button-nav-active-bg:var(--el-color-primary);--jky-button-nav-active-text:#fff;--jky-button-nav-inactive-bg:var(--el-fill-color-light);--jky-button-nav-inactive-text:var(--el-text-color-regular);--el-dropdown-menu-margin-left:12px}.jky-button-nav{align-items:center;display:flex;flex-wrap:wrap;.el-dropdown{margin-left:var(--el-dropdown-menu-margin-left)}}.jky-button-nav-item{background-color:var(--jky-button-nav-inactive-bg);color:var(--jky-button-nav-inactive-text);&.is-active,&[aria-pressed=true]{background-color:var(--jky-button-nav-active-bg);color:var(--jky-button-nav-active-text)}}:root{--j-code-mirror-border-color:#dcdfe6;--j-code-mirror-border-radius:4px;--j-code-mirror-height:400px}.j-code-mirror-editor{border-radius:var(--j-code-mirror-border-radius);height:var(--j-code-mirror-height);overflow:hidden;width:100%}.code-mirror-container{height:100%;overflow:auto;width:100%}.code-mirror-container .cm-editor{height:100%}.code-mirror-container .cm-scroller{font-family:Consolas,Monaco,Courier New,monospace;font-size:14px;line-height:1.5;overflow:auto}.code-mirror-container .cm-gutters{background-color:#2c2d2d;border-color:#4c4d4f;color:#909399}:root{--jky-form-item-border-width:4px;--jky-form-item-border-color:var(--el-color-primary);--jky-form-item-bg-color:rgba(var(--el-color-primary-rgb),0.5);--jky-form-grid-cols-xs:1;--jky-form-grid-cols-sm:2;--jky-form-grid-cols-md:2;--jky-form-grid-cols-lg:3;--jky-form-grid-cols-xl:3;--jky-form-grid-cols-2xl:4;--jky-form-grid-cols-3xl:4}.jky-form--grid{display:grid;gap:var(--el-form-item-gutter,16px);grid-template-columns:repeat(var(--jky-form-grid-cols-xs),minmax(0,1fr))}.el-form--inline.jky-form--grid .el-form-item{margin-right:0;.el-form-item__content{align-items:flex-start}}@media (min-width:640px){.jky-form--grid{grid-template-columns:repeat(var(--jky-form-grid-cols-sm,var(--jky-form-grid-cols-xs)),minmax(0,1fr))}}@media (min-width:768px){.jky-form--grid{grid-template-columns:repeat(var(--jky-form-grid-cols-md,var(--jky-form-grid-cols-sm)),minmax(0,1fr))}}@media (min-width:1024px){.jky-form--grid{grid-template-columns:repeat(var(--jky-form-grid-cols-lg,var(--jky-form-grid-cols-md)),minmax(0,1fr))}}@media (min-width:1280px){.jky-form--grid{grid-template-columns:repeat(var(--jky-form-grid-cols-xl,var(--jky-form-grid-cols-lg)),minmax(0,1fr))}}@media (min-width:1536px){.jky-form--grid{grid-template-columns:repeat(var(--jky-form-grid-cols-2xl,var(--jky-form-grid-cols-xl)),minmax(0,1fr))}}@media (min-width:1920px){.jky-form--grid{grid-template-columns:repeat(var(--jky-form-grid-cols-3xl,var(--jky-form-grid-cols-2xl)),minmax(0,1fr))}}:root{--jky-menu-bg-color:#fff;--jky-menu-text-color:#303133;--jky-menu-active-color:#409eff;--jky-menu-hover-bg-color:#f5f7fa;--jky-menu-hover-text-color:#606266;--jky-menu-item-height:56px;--jky-menu-item-padding:0 20px;--jky-menu-item-font-size:14px;--jky-menu-icon-size:18px;--jky-menu-icon-margin:8px;--jky-menu-border-color:#e4e7ed;--jky-menu-disabled-opacity:0.5;--jky-menu-disabled-text-color:#c0c4cc}.jky-menu{li+li{margin-top:0}}:root{--jky-page-header-bg-color:#1890ff;--jky-page-header-bg-size:cover;--jky-page-header-bg-position:center;--jky-page-header-box-shadow:0 2px 8px rgba(0,0,0,.15);--jky-page-header-padding-x:24px;--jky-page-header-padding-x-mobile:16px;--jky-page-header-gap:16px;--jky-page-header-gap-mobile:12px;--jky-page-header-gap-left:12px;--jky-page-header-gap-status:12px;--jky-page-header-gap-center:24px;--jky-page-header-gap-center-mobile:12px;--jky-page-header-title-color:#fff;--jky-page-header-title-size:20px;--jky-page-header-title-size-mobile:16px;--jky-page-header-title-weight:600;--jky-page-header-text-color:hsla(0,0%,100%,.85);--jky-page-header-text-size:16px;--jky-page-header-icon-color:#fff;--jky-page-header-icon-size:20px;--jky-page-header-icon-hover-opacity:0.8;--jky-page-header-logo-height:40px;--jky-page-header-avatar-size:32px}.jky-page-header{background-color:var(--jky-page-header-bg-color);background-position:var(--jky-page-header-bg-position);background-size:var(--jky-page-header-bg-size);box-shadow:var(--jky-page-header-box-shadow);width:100%}.jky-page-header__container{align-items:center;display:flex;height:100%;justify-content:space-between;margin:0 auto;max-width:100%;padding:0 var(--jky-page-header-padding-x)}.jky-page-header__left{align-items:center;display:flex;flex-shrink:0;gap:var(--jky-page-header-gap-left)}.jky-page-header__logo{height:var(--jky-page-header-logo-height);object-fit:contain;width:auto}.jky-page-header__title{color:var(--jky-page-header-title-color);font-size:var(--jky-page-header-title-size);font-weight:var(--jky-page-header-title-weight);white-space:nowrap}.jky-page-header__center{align-items:center;display:flex;flex:1;justify-content:center;margin:0 var(--jky-page-header-gap-center);min-width:0}.jky-page-header__right{align-items:center;display:flex;flex-shrink:0;gap:var(--jky-page-header-gap)}.jky-page-header__status-icons{align-items:center;display:flex;gap:var(--jky-page-header-gap-status)}.jky-page-header__status-icon{color:var(--jky-page-header-icon-color);cursor:pointer;transition:opacity .2s;&:hover{opacity:var(--jky-page-header-icon-hover-opacity)}}.jky-page-header__time{color:var(--jky-page-header-text-color);font-size:var(--jky-page-header-text-size);white-space:nowrap}.jky-page-header__user{align-items:center;color:var(--jky-page-header-text-color);cursor:pointer;display:flex;gap:8px}.jky-page-header__avatar{color:var(--jky-page-header-icon-color);img{height:100%;object-fit:cover;width:100%}}.jky-page-header__username{white-space:nowrap}.jky-page-header__logout,.jky-page-header__username{color:var(--jky-page-header-text-color);font-size:var(--jky-page-header-text-size)}@media (max-width:768px){.jky-page-header__container{padding:0 var(--jky-page-header-padding-x-mobile)}.jky-page-header__title{font-size:var(--jky-page-header-title-size-mobile)}.jky-page-header__center{margin:0 var(--jky-page-header-gap-center-mobile)}.jky-page-header__right{gap:var(--jky-page-header-gap-mobile)}}:root{--jky-page-layout-gap:5}.jky-page-layout{column-gap:calc(var(--spacing)*var(--jky-page-layout-gap));.el-menu{border-right:none}}.jky-page-table{--jky-page-table_pagination-position:flex-end;.jky-page-table__pagination{.el-scrollbar__view{display:flex;justify-content:var(--jky-page-table_pagination-position)}}}:root{--jky-rich-editor-border:#d9d9d9;--jky-rich-editor-border-hover:#409eff;--jky-rich-editor-border-radius:4px;--jky-rich-editor-box-shadow:0 0 0 1px #409eff}.jky-rich-editor{width:100%}.jky-rich-editor .tox-tinymce{border:1px solid var(--jky-rich-editor-border);border-radius:var(--jky-rich-editor-border-radius);transition:border-color .2s}.jky-rich-editor .tox-tinymce:hover{border-color:var(--jky-rich-editor-border-hover)}.jky-rich-editor .tox-tinymce:focus-within{border-color:var(--jky-rich-editor-border-hover);box-shadow:var(--jky-rich-editor-box-shadow)}.jky-rich-editor.is-disabled .tox-tinymce{background-color:#f5f7fa;cursor:not-allowed}.jky-rich-editor.is-readonly .tox-tinymce{background-color:#fafafa}:root{--jky-say-hello-bg:#42b883;--jky-say-hello-text:#fff;--jky-say-hello-hover-bg:#3aa876;--jky-say-hello-font-size:16px;--jky-say-hello-padding:8px 20px;--jky-say-hello-margin:4px 2px;--jky-say-hello-border-radius:6px}.jky-say-hello{background-color:var(--jky-say-hello-bg);border-radius:var(--jky-say-hello-border-radius);color:var(--jky-say-hello-text);cursor:pointer;display:inline-block;font-size:var(--jky-say-hello-font-size);margin:var(--jky-say-hello-margin);padding:var(--jky-say-hello-padding);text-align:center;text-decoration:none;transition:background-color .2s ease}.jky-say-hello:hover{background-color:var(--jky-say-hello-hover-bg)}@import "tailwindcss";@plugin "@iconify/tailwind4";@source "../node_modules/jky-component-lib/dist/es/";@source "../docs/**/*.md";@source "./**/*.md";@source "./**/*.vue";@source "./**/*.css";@custom-variant dark (&:is(.dark *));.jky-tabs{.el-tabs__content{display:none}.el-tabs__header{margin-bottom:0}}.jky-tabs-round{--el-tabs-header-height:32px;--el-tabs-item-background:#fff;--el-tabs-active-item-background:var(--el-color-primary);.el-tabs__header{--el-border-color-light:transparent}.el-tabs__item{background-color:var(--el-tabs-item-background);border-radius:999px;margin-left:1rem;&.is-active{background-color:var(--el-tabs-active-item-background);.el-icon,.jky-tabs-__item-label{color:var(--el-color-white)}}&.first-child{margin-left:0}}}.jky-tabs-context-menu{display:inline-block}
|
|
1
|
+
:root{--jky-add-input-gap:12px;--jky-add-input-row-gap:8px;--jky-add-input-min-width:100px;--jky-add-input-action-width:80px}.jky-add-input{display:flex;flex-direction:column;gap:var(--jky-add-input-row-gap);min-width:var(--jky-add-input-min-width)}.jky-add-input__row{align-items:center;display:flex;gap:var(--jky-add-input-gap)}.jky-add-input__key,.jky-add-input__value{flex:1;min-width:0}.jky-add-input__actions{display:flex;flex-shrink:0;gap:var(--jky-add-input-gap);width:var(--jky-add-input-action-width)}:root{--jky-button-primary-bg:#007bff;--jky-button-primary-text:#fff;--jky-button-primary-hover-bg:#0056b3;--jky-button-success-bg:#28a745;--jky-button-success-text:#fff;--jky-button-success-hover-bg:#1e7e34;--jky-button-warning-bg:#ffc107;--jky-button-warning-text:#fff;--jky-button-warning-hover-bg:#e0a800;--jky-button-danger-bg:#dc3545;--jky-button-danger-text:#fff;--jky-button-danger-hover-bg:#c82333;--jky-button-info-bg:#6c757d;--jky-button-info-text:#fff;--jky-button-info-hover-bg:#5a6268;--jky-button-default-bg:#fff;--jky-button-default-text:#606266;--jky-button-default-border:#dcdfe6;--jky-button-default-hover-bg:#f5f7fa;--jky-button-font-size:14px;--jky-button-font-size-small:12px;--jky-button-font-size-large:16px;--jky-button-padding:0 16px;--jky-button-padding-small:0 12px;--jky-button-padding-large:0 20px;--jky-button-height:40px;--jky-button-height-small:32px;--jky-button-height-large:48px;--jky-button-border-radius:0.375rem;--jky-button-disabled-opacity:0.5;--jky-button-disabled-bg:#f5f7fa;--jky-button-disabled-text:#c0c4cc;--jky-button-loading-opacity:0.7;--jky-button-icon-size:1.25rem;--jky-button-icon-margin:0.5rem}.jky-button{align-items:center;background-color:var(--jky-button-default-bg);border:1px solid var(--jky-button-default-border);border-radius:var(--jky-button-border-radius);color:var(--jky-button-default-text);cursor:pointer;display:inline-flex;font-size:var(--jky-button-font-size);font-weight:500;height:var(--jky-button-height);justify-content:center;padding:var(--jky-button-padding);transition:color .2s,background-color .2s}.jky-button--primary{background-color:var(--jky-button-primary-bg);border:none;color:var(--jky-button-primary-text)}.jky-button--primary:hover{background-color:var(--jky-button-primary-hover-bg)}.jky-button--success{background-color:var(--jky-button-success-bg);border:none;color:var(--jky-button-success-text)}.jky-button--success:hover{background-color:var(--jky-button-success-hover-bg)}.jky-button--warning{background-color:var(--jky-button-warning-bg);border:none;color:var(--jky-button-warning-text)}.jky-button--warning:hover{background-color:var(--jky-button-warning-hover-bg)}.jky-button--danger{background-color:var(--jky-button-danger-bg);border:none;color:var(--jky-button-danger-text)}.jky-button--danger:hover{background-color:var(--jky-button-danger-hover-bg)}.jky-button--info{background-color:var(--jky-button-info-bg);border:none;color:var(--jky-button-info-text)}.jky-button--info:hover{background-color:var(--jky-button-info-hover-bg)}.jky-button--small{font-size:var(--jky-button-font-size-small);height:var(--jky-button-height-small);padding:var(--jky-button-padding-small)}.jky-button--large{font-size:var(--jky-button-font-size-large);height:var(--jky-button-height-large);padding:var(--jky-button-padding-large)}.jky-button.is-disabled{background-color:var(--jky-button-disabled-bg);color:var(--jky-button-disabled-text);cursor:not-allowed;opacity:var(--jky-button-disabled-opacity);pointer-events:none}.jky-button.is-loading{opacity:var(--jky-button-loading-opacity);pointer-events:none;position:relative}.jky-button__loading{display:flex;inset:0;position:absolute}.jky-button__icon,.jky-button__loading{align-items:center;justify-content:center}.jky-button__icon{display:inline-flex;font-size:1em;margin-right:var(--jky-button-icon-margin)}.jky-button__icon:only-child{margin-right:0}.jky-button--suffix .jky-button__icon{margin-left:var(--jky-button-icon-margin);margin-right:0}.jky-button:focus-visible{box-shadow:0 0 0 2px #fff,0 0 0 4px #000;outline:2px solid transparent;outline-offset:2px}.loading-spinner{animation:spin 1s linear infinite;height:var(--jky-button-icon-size);width:var(--jky-button-icon-size)}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}:root{--jky-button-nav-active-bg:var(--el-color-primary);--jky-button-nav-active-text:#fff;--jky-button-nav-inactive-bg:var(--el-fill-color-light);--jky-button-nav-inactive-text:var(--el-text-color-regular);--el-dropdown-menu-margin-left:12px}.jky-button-nav{align-items:center;display:flex;flex-wrap:wrap;.el-dropdown{margin-left:var(--el-dropdown-menu-margin-left)}}.jky-button-nav-item{background-color:var(--jky-button-nav-inactive-bg);color:var(--jky-button-nav-inactive-text);&.is-active,&[aria-pressed=true]{background-color:var(--jky-button-nav-active-bg);color:var(--jky-button-nav-active-text)}}:root{--j-code-mirror-border-color:#dcdfe6;--j-code-mirror-border-radius:4px;--j-code-mirror-height:400px}.j-code-mirror-editor{border-radius:var(--j-code-mirror-border-radius);height:var(--j-code-mirror-height);overflow:hidden;width:100%}.code-mirror-container{height:100%;overflow:auto;width:100%}.code-mirror-container .cm-editor{height:100%}.code-mirror-container .cm-scroller{font-family:Consolas,Monaco,Courier New,monospace;font-size:14px;line-height:1.5;overflow:auto}.code-mirror-container .cm-gutters{background-color:#2c2d2d;border-color:#4c4d4f;color:#909399}:root{--jky-form-item-border-width:4px;--jky-form-item-border-color:var(--el-color-primary);--jky-form-item-bg-color:rgba(var(--el-color-primary-rgb),0.5);--jky-form-grid-cols-xs:1;--jky-form-grid-cols-sm:2;--jky-form-grid-cols-md:2;--jky-form-grid-cols-lg:3;--jky-form-grid-cols-xl:3;--jky-form-grid-cols-2xl:4;--jky-form-grid-cols-3xl:4}.jky-form--grid{display:grid;gap:var(--el-form-item-gutter,16px);grid-template-columns:repeat(var(--jky-form-grid-cols-xs),minmax(0,1fr))}.el-form--inline.jky-form--grid .el-form-item{margin-right:0;.el-form-item__content{align-items:flex-start}}@media (min-width:640px){.jky-form--grid{grid-template-columns:repeat(var(--jky-form-grid-cols-sm,var(--jky-form-grid-cols-xs)),minmax(0,1fr))}}@media (min-width:768px){.jky-form--grid{grid-template-columns:repeat(var(--jky-form-grid-cols-md,var(--jky-form-grid-cols-sm)),minmax(0,1fr))}}@media (min-width:1024px){.jky-form--grid{grid-template-columns:repeat(var(--jky-form-grid-cols-lg,var(--jky-form-grid-cols-md)),minmax(0,1fr))}}@media (min-width:1280px){.jky-form--grid{grid-template-columns:repeat(var(--jky-form-grid-cols-xl,var(--jky-form-grid-cols-lg)),minmax(0,1fr))}}@media (min-width:1536px){.jky-form--grid{grid-template-columns:repeat(var(--jky-form-grid-cols-2xl,var(--jky-form-grid-cols-xl)),minmax(0,1fr))}}@media (min-width:1920px){.jky-form--grid{grid-template-columns:repeat(var(--jky-form-grid-cols-3xl,var(--jky-form-grid-cols-2xl)),minmax(0,1fr))}}:root{--jky-menu-bg-color:#fff;--jky-menu-text-color:#303133;--jky-menu-active-color:#409eff;--jky-menu-hover-bg-color:#f5f7fa;--jky-menu-hover-text-color:#606266;--jky-menu-item-height:56px;--jky-menu-item-padding:0 20px;--jky-menu-item-font-size:14px;--jky-menu-icon-size:18px;--jky-menu-icon-margin:8px;--jky-menu-border-color:#e4e7ed;--jky-menu-disabled-opacity:0.5;--jky-menu-disabled-text-color:#c0c4cc}.jky-menu{li+li{margin-top:0}}:root{--jky-page-header-bg-color:#1890ff;--jky-page-header-bg-size:cover;--jky-page-header-bg-position:center;--jky-page-header-box-shadow:0 2px 8px rgba(0,0,0,.15);--jky-page-header-padding-x:24px;--jky-page-header-padding-x-mobile:16px;--jky-page-header-gap:16px;--jky-page-header-gap-mobile:12px;--jky-page-header-gap-left:12px;--jky-page-header-gap-status:12px;--jky-page-header-gap-center:24px;--jky-page-header-gap-center-mobile:12px;--jky-page-header-title-color:#fff;--jky-page-header-title-size:20px;--jky-page-header-title-size-mobile:16px;--jky-page-header-title-weight:600;--jky-page-header-text-color:hsla(0,0%,100%,.85);--jky-page-header-text-size:16px;--jky-page-header-icon-color:#fff;--jky-page-header-icon-size:20px;--jky-page-header-icon-hover-opacity:0.8;--jky-page-header-logo-height:40px;--jky-page-header-avatar-size:32px}.jky-page-header{background-color:var(--jky-page-header-bg-color);background-position:var(--jky-page-header-bg-position);background-size:var(--jky-page-header-bg-size);box-shadow:var(--jky-page-header-box-shadow);width:100%}.jky-page-header__container{align-items:center;display:flex;height:100%;justify-content:space-between;margin:0 auto;max-width:100%;padding:0 var(--jky-page-header-padding-x)}.jky-page-header__left{align-items:center;display:flex;flex-shrink:0;gap:var(--jky-page-header-gap-left)}.jky-page-header__logo{height:var(--jky-page-header-logo-height);object-fit:contain;width:auto}.jky-page-header__title{color:var(--jky-page-header-title-color);font-size:var(--jky-page-header-title-size);font-weight:var(--jky-page-header-title-weight);white-space:nowrap}.jky-page-header__center{align-items:center;display:flex;flex:1;justify-content:center;margin:0 var(--jky-page-header-gap-center);min-width:0}.jky-page-header__right{align-items:center;display:flex;flex-shrink:0;gap:var(--jky-page-header-gap)}.jky-page-header__status-icons{align-items:center;display:flex;gap:var(--jky-page-header-gap-status)}.jky-page-header__status-icon{color:var(--jky-page-header-icon-color);cursor:pointer;transition:opacity .2s;&:hover{opacity:var(--jky-page-header-icon-hover-opacity)}}.jky-page-header__time{color:var(--jky-page-header-text-color);font-size:var(--jky-page-header-text-size);white-space:nowrap}.jky-page-header__user{align-items:center;color:var(--jky-page-header-text-color);cursor:pointer;display:flex;gap:8px}.jky-page-header__avatar{color:var(--jky-page-header-icon-color);img{height:100%;object-fit:cover;width:100%}}.jky-page-header__username{white-space:nowrap}.jky-page-header__logout,.jky-page-header__username{color:var(--jky-page-header-text-color);font-size:var(--jky-page-header-text-size)}@media (max-width:768px){.jky-page-header__container{padding:0 var(--jky-page-header-padding-x-mobile)}.jky-page-header__title{font-size:var(--jky-page-header-title-size-mobile)}.jky-page-header__center{margin:0 var(--jky-page-header-gap-center-mobile)}.jky-page-header__right{gap:var(--jky-page-header-gap-mobile)}}:root{--jky-page-layout-gap:5}.jky-page-layout{column-gap:calc(var(--spacing)*var(--jky-page-layout-gap));.el-menu{border-right:none}}.jky-page-table{--jky-page-table_pagination-position:flex-end;.jky-page-table__pagination{.el-scrollbar__view{display:flex;justify-content:var(--jky-page-table_pagination-position)}}}:root{--jky-rich-editor-border:#d9d9d9;--jky-rich-editor-border-hover:#409eff;--jky-rich-editor-border-radius:4px;--jky-rich-editor-box-shadow:0 0 0 1px #409eff}.jky-rich-editor{width:100%}.jky-rich-editor .tox-tinymce{border:1px solid var(--jky-rich-editor-border);border-radius:var(--jky-rich-editor-border-radius);transition:border-color .2s}.jky-rich-editor .tox-tinymce:hover{border-color:var(--jky-rich-editor-border-hover)}.jky-rich-editor .tox-tinymce:focus-within{border-color:var(--jky-rich-editor-border-hover);box-shadow:var(--jky-rich-editor-box-shadow)}.jky-rich-editor.is-disabled .tox-tinymce{background-color:#f5f7fa;cursor:not-allowed}.jky-rich-editor.is-readonly .tox-tinymce{background-color:#fafafa}:root{--jky-say-hello-bg:#42b883;--jky-say-hello-text:#fff;--jky-say-hello-hover-bg:#3aa876;--jky-say-hello-font-size:16px;--jky-say-hello-padding:8px 20px;--jky-say-hello-margin:4px 2px;--jky-say-hello-border-radius:6px}.jky-say-hello{background-color:var(--jky-say-hello-bg);border-radius:var(--jky-say-hello-border-radius);color:var(--jky-say-hello-text);cursor:pointer;display:inline-block;font-size:var(--jky-say-hello-font-size);margin:var(--jky-say-hello-margin);padding:var(--jky-say-hello-padding);text-align:center;text-decoration:none;transition:background-color .2s ease}.jky-say-hello:hover{background-color:var(--jky-say-hello-hover-bg)}@import "tailwindcss";@plugin "@iconify/tailwind4";@source "../node_modules/jky-component-lib/dist/es/";@source "../docs/**/*.md";@source "./**/*.md";@source "./**/*.vue";@source "./**/*.css";@custom-variant dark (&:is(.dark *));.jky-tabs{.el-tabs__content{display:none}.el-tabs__header{margin-bottom:0}}.jky-tabs-round{--el-tabs-header-height:32px;--el-tabs-item-background:#fff;--el-tabs-active-item-background:var(--el-color-primary);.el-tabs__header{--el-border-color-light:transparent}.el-tabs__item{background-color:var(--el-tabs-item-background);border-bottom:none!important;border-radius:999px;margin-left:1rem;&.is-active{background-color:var(--el-tabs-active-item-background);.el-icon,.jky-tabs-__item-label{color:var(--el-color-white)}}&.first-child{margin-left:0}}}.jky-tabs-context-menu{display:inline-block}
|
package/dist/es/tabs/style.css
CHANGED
package/dist/lib/components.d.ts
CHANGED
package/dist/lib/components.js
CHANGED
|
@@ -6,25 +6,27 @@ const index$2 = require("./button-nav/index.js");
|
|
|
6
6
|
const index$3 = require("./code-mirror-editor/index.js");
|
|
7
7
|
const index$4 = require("./form/index.js");
|
|
8
8
|
const index$5 = require("./menu/index.js");
|
|
9
|
-
const index$6 = require("./
|
|
10
|
-
const index$7 = require("./page-
|
|
11
|
-
const index$8 = require("./page-
|
|
12
|
-
const index$9 = require("./
|
|
13
|
-
const index$a = require("./
|
|
14
|
-
const index$b = require("./
|
|
9
|
+
const index$6 = require("./modal/index.js");
|
|
10
|
+
const index$7 = require("./page-header/index.js");
|
|
11
|
+
const index$8 = require("./page-layout/index.js");
|
|
12
|
+
const index$9 = require("./page-table/index.js");
|
|
13
|
+
const index$a = require("./rich-editor/index.js");
|
|
14
|
+
const index$b = require("./say-hello/index.js");
|
|
15
|
+
const index$c = require("./tabs/index.js");
|
|
15
16
|
const components = [
|
|
16
|
-
index$
|
|
17
|
+
index$b.JkySayHello,
|
|
17
18
|
index$1.JkyButton,
|
|
18
19
|
index$2.JkyButtonNav,
|
|
19
|
-
index$
|
|
20
|
+
index$7.JkyPageHeader,
|
|
20
21
|
index$5.JkyMenu,
|
|
21
22
|
index$4.JkyForm,
|
|
22
23
|
index$3.JkyCodeMirrorEditor,
|
|
23
24
|
index.JkyAddInput,
|
|
24
|
-
index$
|
|
25
|
-
index$
|
|
26
|
-
index$
|
|
27
|
-
index$
|
|
25
|
+
index$a.JkyRichEditor,
|
|
26
|
+
index$9.JkyPageTable,
|
|
27
|
+
index$8.JkyPageLayout,
|
|
28
|
+
index$c.JkyTabs,
|
|
29
|
+
index$6.JkyModal
|
|
28
30
|
];
|
|
29
31
|
exports.JkyAddInput = index.JkyAddInput;
|
|
30
32
|
exports.JkyButton = index$1.JkyButton;
|
|
@@ -32,10 +34,11 @@ exports.JkyButtonNav = index$2.JkyButtonNav;
|
|
|
32
34
|
exports.JkyCodeMirrorEditor = index$3.JkyCodeMirrorEditor;
|
|
33
35
|
exports.JkyForm = index$4.JkyForm;
|
|
34
36
|
exports.JkyMenu = index$5.JkyMenu;
|
|
35
|
-
exports.
|
|
36
|
-
exports.
|
|
37
|
-
exports.
|
|
38
|
-
exports.
|
|
39
|
-
exports.
|
|
40
|
-
exports.
|
|
37
|
+
exports.JkyModal = index$6.JkyModal;
|
|
38
|
+
exports.JkyPageHeader = index$7.JkyPageHeader;
|
|
39
|
+
exports.JkyPageLayout = index$8.JkyPageLayout;
|
|
40
|
+
exports.JkyPageTable = index$9.JkyPageTable;
|
|
41
|
+
exports.JkyRichEditor = index$a.JkyRichEditor;
|
|
42
|
+
exports.JkySayHello = index$b.JkySayHello;
|
|
43
|
+
exports.JkyTabs = index$c.JkyTabs;
|
|
41
44
|
exports.components = components;
|
package/dist/lib/index.js
CHANGED
|
@@ -10,12 +10,13 @@ const index$2 = require("./button-nav/index.js");
|
|
|
10
10
|
const index$3 = require("./code-mirror-editor/index.js");
|
|
11
11
|
const index$4 = require("./form/index.js");
|
|
12
12
|
const index$5 = require("./menu/index.js");
|
|
13
|
-
const index$6 = require("./
|
|
14
|
-
const index$7 = require("./page-
|
|
15
|
-
const index$8 = require("./page-
|
|
16
|
-
const index$9 = require("./
|
|
17
|
-
const index$a = require("./
|
|
18
|
-
const index$b = require("./
|
|
13
|
+
const index$6 = require("./modal/index.js");
|
|
14
|
+
const index$7 = require("./page-header/index.js");
|
|
15
|
+
const index$8 = require("./page-layout/index.js");
|
|
16
|
+
const index$9 = require("./page-table/index.js");
|
|
17
|
+
const index$a = require("./rich-editor/index.js");
|
|
18
|
+
const index$b = require("./say-hello/index.js");
|
|
19
|
+
const index$c = require("./tabs/index.js");
|
|
19
20
|
const createTabsGuard = require("./tabs/createTabsGuard.js");
|
|
20
21
|
const useTabsStore = require("./tabs/useTabsStore.js");
|
|
21
22
|
const installer = installer$1.createInstaller(components.components);
|
|
@@ -29,12 +30,13 @@ exports.JkyButtonNav = index$2.JkyButtonNav;
|
|
|
29
30
|
exports.JkyCodeMirrorEditor = index$3.JkyCodeMirrorEditor;
|
|
30
31
|
exports.JkyForm = index$4.JkyForm;
|
|
31
32
|
exports.JkyMenu = index$5.JkyMenu;
|
|
32
|
-
exports.
|
|
33
|
-
exports.
|
|
34
|
-
exports.
|
|
35
|
-
exports.
|
|
36
|
-
exports.
|
|
37
|
-
exports.
|
|
33
|
+
exports.JkyModal = index$6.JkyModal;
|
|
34
|
+
exports.JkyPageHeader = index$7.JkyPageHeader;
|
|
35
|
+
exports.JkyPageLayout = index$8.JkyPageLayout;
|
|
36
|
+
exports.JkyPageTable = index$9.JkyPageTable;
|
|
37
|
+
exports.JkyRichEditor = index$a.JkyRichEditor;
|
|
38
|
+
exports.JkySayHello = index$b.JkySayHello;
|
|
39
|
+
exports.JkyTabs = index$c.JkyTabs;
|
|
38
40
|
exports.createTabsGuard = createTabsGuard.createTabsGuard;
|
|
39
41
|
exports.createTabsStore = useTabsStore.createTabsStore;
|
|
40
42
|
exports.default = installer;
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { ModalProps } from './types';
|
|
2
|
+
type __VLS_Props = Pick<ModalProps, 'confirmText' | 'cancelText'>;
|
|
3
|
+
declare const _default: import('vue').DefineComponent<__VLS_Props, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
|
|
4
|
+
cancel: (...args: any[]) => void;
|
|
5
|
+
confirm: (...args: any[]) => void;
|
|
6
|
+
}, string, import('vue').PublicProps, Readonly<__VLS_Props> & Readonly<{
|
|
7
|
+
onCancel?: ((...args: any[]) => any) | undefined;
|
|
8
|
+
onConfirm?: ((...args: any[]) => any) | undefined;
|
|
9
|
+
}>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, HTMLDivElement>;
|
|
10
|
+
export default _default;
|
|
@@ -0,0 +1,59 @@
|
|
|
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
|
+
Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: "Module" } });
|
|
22
|
+
const vue = require("vue");
|
|
23
|
+
const _hoisted_1 = { class: "w-full sticky bottom-0 bg-white flex justify-end items-center p-4" };
|
|
24
|
+
const _sfc_main = /* @__PURE__ */ vue.defineComponent(__spreadProps(__spreadValues({}, {
|
|
25
|
+
name: "JkyModalFooter"
|
|
26
|
+
}), {
|
|
27
|
+
__name: "Footer",
|
|
28
|
+
props: {
|
|
29
|
+
confirmText: {},
|
|
30
|
+
cancelText: {}
|
|
31
|
+
},
|
|
32
|
+
emits: ["confirm", "cancel"],
|
|
33
|
+
setup(__props) {
|
|
34
|
+
const props = __props;
|
|
35
|
+
return (_ctx, _cache) => {
|
|
36
|
+
const _component_el_button = vue.resolveComponent("el-button");
|
|
37
|
+
return vue.openBlock(), vue.createElementBlock("div", _hoisted_1, [
|
|
38
|
+
vue.createVNode(_component_el_button, {
|
|
39
|
+
type: "primary",
|
|
40
|
+
onClick: _cache[0] || (_cache[0] = ($event) => _ctx.$emit("confirm"))
|
|
41
|
+
}, {
|
|
42
|
+
default: vue.withCtx(() => [
|
|
43
|
+
vue.createTextVNode(vue.toDisplayString(props.confirmText || "确认"), 1)
|
|
44
|
+
]),
|
|
45
|
+
_: 1
|
|
46
|
+
}),
|
|
47
|
+
vue.createVNode(_component_el_button, {
|
|
48
|
+
onClick: _cache[1] || (_cache[1] = ($event) => _ctx.$emit("cancel"))
|
|
49
|
+
}, {
|
|
50
|
+
default: vue.withCtx(() => [
|
|
51
|
+
vue.createTextVNode(vue.toDisplayString(props.cancelText || "取消"), 1)
|
|
52
|
+
]),
|
|
53
|
+
_: 1
|
|
54
|
+
})
|
|
55
|
+
]);
|
|
56
|
+
};
|
|
57
|
+
}
|
|
58
|
+
}));
|
|
59
|
+
exports.default = _sfc_main;
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: "Module" } });
|
|
3
|
+
const Footer_vue_vue_type_script_setup_true_lang = require("./Footer.vue.js");
|
|
4
|
+
exports.default = Footer_vue_vue_type_script_setup_true_lang.default;
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
type __VLS_Props = {
|
|
2
|
+
title: string;
|
|
3
|
+
fullscreen: boolean;
|
|
4
|
+
mode?: 'dialog' | 'drawer';
|
|
5
|
+
drawerDirection?: 'rtl' | 'ltr' | 'ttb' | 'btt';
|
|
6
|
+
};
|
|
7
|
+
declare function __VLS_template(): {
|
|
8
|
+
attrs: Partial<{}>;
|
|
9
|
+
slots: {
|
|
10
|
+
default?(_: {}): any;
|
|
11
|
+
direction?(_: {}): any;
|
|
12
|
+
toggle?(_: {}): any;
|
|
13
|
+
fullscreen?(_: {}): any;
|
|
14
|
+
close?(_: {}): any;
|
|
15
|
+
};
|
|
16
|
+
refs: {};
|
|
17
|
+
rootEl: HTMLDivElement;
|
|
18
|
+
};
|
|
19
|
+
type __VLS_TemplateResult = ReturnType<typeof __VLS_template>;
|
|
20
|
+
declare const __VLS_component: import('vue').DefineComponent<__VLS_Props, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {} & {
|
|
21
|
+
close: () => any;
|
|
22
|
+
toggle: () => any;
|
|
23
|
+
fullscreen: () => any;
|
|
24
|
+
toggleDirection: () => any;
|
|
25
|
+
}, string, import('vue').PublicProps, Readonly<__VLS_Props> & Readonly<{
|
|
26
|
+
onClose?: (() => any) | undefined;
|
|
27
|
+
onToggle?: (() => any) | undefined;
|
|
28
|
+
onFullscreen?: (() => any) | undefined;
|
|
29
|
+
onToggleDirection?: (() => any) | undefined;
|
|
30
|
+
}>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, HTMLDivElement>;
|
|
31
|
+
declare const _default: __VLS_WithTemplateSlots<typeof __VLS_component, __VLS_TemplateResult["slots"]>;
|
|
32
|
+
export default _default;
|
|
33
|
+
type __VLS_WithTemplateSlots<T, S> = T & {
|
|
34
|
+
new (): {
|
|
35
|
+
$slots: S;
|
|
36
|
+
};
|
|
37
|
+
};
|
|
@@ -0,0 +1,79 @@
|
|
|
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
|
+
Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: "Module" } });
|
|
22
|
+
const vue = require("vue");
|
|
23
|
+
const _hoisted_1 = { class: "jky-modal-header w-full flex items-center justify-between p-4 border-b border-solid border-b-black/15" };
|
|
24
|
+
const _hoisted_2 = { class: "flex-1 truncate jky-modal-header__title" };
|
|
25
|
+
const _hoisted_3 = { class: "flex-none flex items-center text-lg gap-x-2 jky-modal-header__btns" };
|
|
26
|
+
const _sfc_main = /* @__PURE__ */ vue.defineComponent(__spreadProps(__spreadValues({}, {
|
|
27
|
+
name: "JkyModalHeader"
|
|
28
|
+
}), {
|
|
29
|
+
__name: "Header",
|
|
30
|
+
props: {
|
|
31
|
+
title: {},
|
|
32
|
+
fullscreen: { type: Boolean },
|
|
33
|
+
mode: {},
|
|
34
|
+
drawerDirection: {}
|
|
35
|
+
},
|
|
36
|
+
emits: ["toggle", "fullscreen", "close", "toggleDirection"],
|
|
37
|
+
setup(__props) {
|
|
38
|
+
return (_ctx, _cache) => {
|
|
39
|
+
return vue.openBlock(), vue.createElementBlock("div", _hoisted_1, [
|
|
40
|
+
vue.createElementVNode("div", _hoisted_2, [
|
|
41
|
+
vue.renderSlot(_ctx.$slots, "default", {}, () => [
|
|
42
|
+
vue.createElementVNode("span", null, vue.toDisplayString(__props.title), 1)
|
|
43
|
+
])
|
|
44
|
+
]),
|
|
45
|
+
vue.createElementVNode("div", _hoisted_3, [
|
|
46
|
+
__props.mode === "drawer" ? vue.renderSlot(_ctx.$slots, "direction", { key: 0 }, () => [
|
|
47
|
+
vue.createElementVNode("span", {
|
|
48
|
+
title: "切换方向(左/右)",
|
|
49
|
+
class: "icon-[streamline-ultimate--direction-button-2] hover:text-(--el-color-primary) cursor-pointer",
|
|
50
|
+
onClick: _cache[0] || (_cache[0] = ($event) => _ctx.$emit("toggleDirection"))
|
|
51
|
+
})
|
|
52
|
+
]) : vue.createCommentVNode("", true),
|
|
53
|
+
vue.renderSlot(_ctx.$slots, "toggle", {}, () => [
|
|
54
|
+
vue.createElementVNode("span", {
|
|
55
|
+
title: "切换风格(弹窗/抽屉)",
|
|
56
|
+
class: "icon-[mi--switch] hover:text-(--el-color-primary) cursor-pointer",
|
|
57
|
+
onClick: _cache[1] || (_cache[1] = ($event) => _ctx.$emit("toggle"))
|
|
58
|
+
})
|
|
59
|
+
]),
|
|
60
|
+
vue.renderSlot(_ctx.$slots, "fullscreen", {}, () => [
|
|
61
|
+
vue.createElementVNode("span", {
|
|
62
|
+
title: "切换全屏",
|
|
63
|
+
class: vue.normalizeClass(["cursor-pointer hover:text-(--el-color-primary)", [__props.fullscreen ? "icon-[radix-icons--exit-full-screen]" : "icon-[mdi--fullscreen]"]]),
|
|
64
|
+
onClick: _cache[2] || (_cache[2] = ($event) => _ctx.$emit("fullscreen"))
|
|
65
|
+
}, null, 2)
|
|
66
|
+
]),
|
|
67
|
+
vue.renderSlot(_ctx.$slots, "close", {}, () => [
|
|
68
|
+
vue.createElementVNode("span", {
|
|
69
|
+
title: "关闭",
|
|
70
|
+
class: "icon-[carbon--close] hover:text-(--el-color-primary) cursor-pointer",
|
|
71
|
+
onClick: _cache[3] || (_cache[3] = ($event) => _ctx.$emit("close"))
|
|
72
|
+
})
|
|
73
|
+
])
|
|
74
|
+
])
|
|
75
|
+
]);
|
|
76
|
+
};
|
|
77
|
+
}
|
|
78
|
+
}));
|
|
79
|
+
exports.default = _sfc_main;
|