@studio-west/component-sw 0.2.19 → 0.2.21
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/SwDropdown-BxCvLKO7.js +95 -0
- package/dist/SwSelect-0vcmQ8qv.js +71 -0
- package/dist/component-sw.css +1 -1
- package/dist/index.cjs +1 -1
- package/dist/index.js +1 -1
- package/package.json +1 -1
- package/dist/SwDropdown-e2PHGorZ.js +0 -87
|
@@ -0,0 +1,95 @@
|
|
|
1
|
+
import { ref as r, computed as E, onMounted as C, onUnmounted as R, createElementBlock as w, openBlock as c, withModifiers as u, normalizeClass as h, renderSlot as v, createBlock as W, Teleport as L, createCommentVNode as B, normalizeStyle as T, nextTick as H } from "vue";
|
|
2
|
+
const P = {
|
|
3
|
+
__name: "SwDropdown",
|
|
4
|
+
props: {
|
|
5
|
+
class: { type: String, default: "" },
|
|
6
|
+
size: { type: String, default: "" },
|
|
7
|
+
type: { type: String, default: "" },
|
|
8
|
+
trigger: { type: String, default: "click" },
|
|
9
|
+
placement: { type: String, default: "bottom-left" },
|
|
10
|
+
maxWidth: { type: Number, default: 0 },
|
|
11
|
+
manual: { type: Boolean, default: !1 }
|
|
12
|
+
},
|
|
13
|
+
setup(b) {
|
|
14
|
+
const e = b, m = r(null), a = r(null), f = r({}), k = E(
|
|
15
|
+
() => {
|
|
16
|
+
let s = ["sw-dropdown"];
|
|
17
|
+
return e.size.length > 0 && s.push("sw-" + e.size), e.type.length > 0 && s.push("sw-" + e.type), s;
|
|
18
|
+
}
|
|
19
|
+
), i = async () => {
|
|
20
|
+
if (await H(), !a.value) return;
|
|
21
|
+
const s = window.pageYOffset || document.documentElement.scrollTop, o = window.pageXOffset || document.documentElement.scrollLeft;
|
|
22
|
+
document.body.style.position = "fixed", document.body.style.top = `-${s}px`, document.body.style.left = `-${o}px`, a.value.focus(), a.value.addEventListener("blur", () => e.manual = !1), document.body.style.position = "", document.body.style.top = "", document.body.style.left = "", document.documentElement.scrollTop = s, document.documentElement.scrollLeft = o;
|
|
23
|
+
const t = m.value.getBoundingClientRect(), p = a.value.offsetHeight, d = a.value.offsetWidth;
|
|
24
|
+
console.log("popupHeight", p), console.log("popupWidth", d);
|
|
25
|
+
let n = t.left + t.width / 2 + o, l = t.top + t.height / 2 + s;
|
|
26
|
+
const [S, z] = e.placement.split("-", 2);
|
|
27
|
+
switch (console.log(e.placement), S) {
|
|
28
|
+
case "bottom":
|
|
29
|
+
l = l + t.height / 2 + 8;
|
|
30
|
+
break;
|
|
31
|
+
case "top":
|
|
32
|
+
l = l - t.height / 2 - 8 - p;
|
|
33
|
+
break;
|
|
34
|
+
case "left":
|
|
35
|
+
n = n - d - t.width / 2 - 8, l = l - p / 2;
|
|
36
|
+
break;
|
|
37
|
+
case "right":
|
|
38
|
+
n = n + t.width / 2 + 8, l = l - p / 2;
|
|
39
|
+
break;
|
|
40
|
+
}
|
|
41
|
+
switch (z) {
|
|
42
|
+
case "left":
|
|
43
|
+
n = n - d + t.width / 2;
|
|
44
|
+
break;
|
|
45
|
+
case "right":
|
|
46
|
+
n = n + t.width / 2;
|
|
47
|
+
break;
|
|
48
|
+
}
|
|
49
|
+
n < 0 && (n = 0), l < 0 && (l = 0), f.value = {
|
|
50
|
+
position: "absolute",
|
|
51
|
+
top: `${l}px`,
|
|
52
|
+
left: `${n}px`,
|
|
53
|
+
maxWidth: e.maxWidth === 0 ? "" : `${e.maxWidth}px`
|
|
54
|
+
};
|
|
55
|
+
}, x = async () => {
|
|
56
|
+
e.trigger === "click" && (e.manual = !e.manual), e.manual && await i();
|
|
57
|
+
}, g = async () => {
|
|
58
|
+
e.trigger === "hover" && (e.manual = !e.manual), e.manual && await i();
|
|
59
|
+
}, $ = async () => {
|
|
60
|
+
e.trigger === "context" && (e.manual = !e.manual), e.manual && await i();
|
|
61
|
+
}, y = () => {
|
|
62
|
+
e.manual && i();
|
|
63
|
+
};
|
|
64
|
+
return C(() => {
|
|
65
|
+
window.addEventListener("resize", y);
|
|
66
|
+
}), R(() => {
|
|
67
|
+
window.removeEventListener("resize", y);
|
|
68
|
+
}), (s, o) => (c(), w("div", {
|
|
69
|
+
class: h(k.value),
|
|
70
|
+
onClick: o[0] || (o[0] = u((t) => x(), ["stop"])),
|
|
71
|
+
onMouseover: o[1] || (o[1] = u((t) => g(), ["stop"])),
|
|
72
|
+
onMouseleave: o[2] || (o[2] = u((t) => g(), ["stop"])),
|
|
73
|
+
onContextmenu: o[3] || (o[3] = u((t) => $(), ["stop"])),
|
|
74
|
+
ref_key: "dropdownRef",
|
|
75
|
+
ref: m
|
|
76
|
+
}, [
|
|
77
|
+
v(s.$slots, "default"),
|
|
78
|
+
(c(), W(L, { to: "body" }, [
|
|
79
|
+
e.manual ? (c(), w("ul", {
|
|
80
|
+
key: 0,
|
|
81
|
+
ref_key: "popupRef",
|
|
82
|
+
ref: a,
|
|
83
|
+
class: h(["sw-dropdown-popup", e.class]),
|
|
84
|
+
style: T(f.value),
|
|
85
|
+
tabindex: "-1"
|
|
86
|
+
}, [
|
|
87
|
+
v(s.$slots, "dropdown")
|
|
88
|
+
], 6)) : B("", !0)
|
|
89
|
+
]))
|
|
90
|
+
], 34));
|
|
91
|
+
}
|
|
92
|
+
};
|
|
93
|
+
export {
|
|
94
|
+
P as default
|
|
95
|
+
};
|
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
import { mergeModels as x, ref as u, useModel as _, watch as g, resolveComponent as T, createElementBlock as c, openBlock as d, createVNode as k, withDirectives as y, createElementVNode as p, Fragment as S, renderList as b, toDisplayString as V, vShow as w } from "vue";
|
|
2
|
+
const C = { class: "popup" }, N = { class: "wrapper" }, D = { class: "scrollbar" }, M = ["onClick"], A = {
|
|
3
|
+
__name: "SwSelect",
|
|
4
|
+
props: /* @__PURE__ */ x({
|
|
5
|
+
name: { type: String, default: "" },
|
|
6
|
+
class: { type: String, default: "" },
|
|
7
|
+
placeholder: { type: String, default: "" },
|
|
8
|
+
token: { type: String, default: "" }
|
|
9
|
+
}, {
|
|
10
|
+
modelValue: {},
|
|
11
|
+
modelModifiers: {}
|
|
12
|
+
}),
|
|
13
|
+
emits: ["update:modelValue"],
|
|
14
|
+
setup(s) {
|
|
15
|
+
const l = u({ fullText: "" }), n = u(!1), o = u([]), r = _(s, "modelValue"), v = s;
|
|
16
|
+
g(r.text, (e) => {
|
|
17
|
+
e.length > 3 && (l.value.fullText = e);
|
|
18
|
+
}), g(l.value.fullText, (e, t) => {
|
|
19
|
+
n.value = e.length > 3 && e.length > t.length, e.length > 3 && f();
|
|
20
|
+
});
|
|
21
|
+
const f = () => {
|
|
22
|
+
let e = "https://suggestions.dadata.ru/suggestions/api/4_1/rs/suggest/address";
|
|
23
|
+
console.log(l.value.fullText), axios.post(
|
|
24
|
+
e,
|
|
25
|
+
{
|
|
26
|
+
query: l.value.fullText
|
|
27
|
+
},
|
|
28
|
+
{
|
|
29
|
+
headers: {
|
|
30
|
+
"Content-Type": "application/json",
|
|
31
|
+
Accept: "application/json",
|
|
32
|
+
Authorization: "Token " + v.token
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
).then((t) => {
|
|
36
|
+
console.log(t.data.suggestions), o.value = t.data.suggestions, o.value.length === 1 && i(o.value[0]);
|
|
37
|
+
}).catch((t) => {
|
|
38
|
+
console.log(t);
|
|
39
|
+
});
|
|
40
|
+
}, i = (e) => {
|
|
41
|
+
l.value.fullText = e.value, n.value = !1;
|
|
42
|
+
const t = {};
|
|
43
|
+
t.text = e.value, t.coords = [Number(e.data.geo_lat), Number(e.data.geo_lon)], t.suggestion = e.data, r.value = t;
|
|
44
|
+
};
|
|
45
|
+
return (e, t) => {
|
|
46
|
+
const h = T("sw-input");
|
|
47
|
+
return d(), c("div", C, [
|
|
48
|
+
k(h, {
|
|
49
|
+
size: "large",
|
|
50
|
+
modelValue: l.value.fullText,
|
|
51
|
+
"onUpdate:modelValue": t[0] || (t[0] = (a) => l.value.fullText = a),
|
|
52
|
+
placeholder: s.placeholder
|
|
53
|
+
}, null, 8, ["modelValue", "placeholder"]),
|
|
54
|
+
y(p("div", N, [
|
|
55
|
+
p("ul", D, [
|
|
56
|
+
(d(!0), c(S, null, b(o.value, (a, m) => (d(), c("li", {
|
|
57
|
+
tabindex: "1",
|
|
58
|
+
key: m,
|
|
59
|
+
onClick: (j) => i(a)
|
|
60
|
+
}, V(a.value), 9, M))), 128))
|
|
61
|
+
])
|
|
62
|
+
], 512), [
|
|
63
|
+
[w, n.value]
|
|
64
|
+
])
|
|
65
|
+
]);
|
|
66
|
+
};
|
|
67
|
+
}
|
|
68
|
+
};
|
|
69
|
+
export {
|
|
70
|
+
A as default
|
|
71
|
+
};
|
package/dist/component-sw.css
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
@charset "UTF-8";:root{--sw-color-default: #DFDFDF;--sw-color-primary: #3EAF4E;--sw-color-success: #FFE603;--sw-color-info: #C0C0C0;--sw-color-warning: #FF7A00;--sw-color-danger: #CC2D4A;--sw-color-preholiday: #FFE78070;--sw-color-weekend: #ff808070;--sw-color-select: #007bff70;--sw-color-holiday: #ff0000;--sw-color-nowork: #ff0000;--sw-color-active: #007bff;--sw-text-color-primary: #333333;--sw-text-color-secondary: #4C4C4C;--sw-text-color-third: #818181;--sw-text-color-revers: white;--sw-bg-color: #f4f4f4;--sw-bg-color-page: white;--sw-bg-color-second: #FAFAFA;--sw-border-color: #D6D6D6;--sw-border-color-input: #CECECE;--sw-font-size: 1rem;--sw-font-size-small: .875rem;--sw-font-size-large: 1.125rem;--sw-font-size-big: 2.8rem;--sw-border-radius: .625rem;--sw-border-radius-small: .25rem;--sw-border-round: 3.625rem;--sw-component-size-base: 3rem;--sw-component-size-small: 1.625rem;--sw-component-size-large: 3.5rem;--sw-component-size-big: 10.5rem;font-family:Montserrat,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color:var(--sw-text-color-primary);background-color:var(--sw-bg-color);font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}:root.dark{--sw-color-default: #4E4E4E;--sw-color-primary: #38A151;--sw-color-success: #FFE603;--sw-color-info: #808185;--sw-color-warning: #FF7A00;--sw-color-danger: #CC2D4A;--sw-text-color-primary: white;--sw-text-color-secondary: #FAFAFA;--sw-text-color-third: #FAFAFA;--sw-text-color-revers: white;--sw-bg-color: #182127;--sw-bg-color-page: #323741;--sw-bg-color-second: #232832;--sw-border-color: #4E4E4E;--sw-border-color-input: #5C5E63;--sw-shadow: 0 100px 80px rgba(0, 0, 0, .03), 0 41.7776px 33.4221px rgba(0, 0, 0, .0215656), 0 22.3363px 17.869px rgba(0, 0, 0, .0178832), 0 12.5216px 10.0172px rgba(0, 0, 0, .015), 0 6.6501px 5.32008px rgba(0, 0, 0, .0121168), 0 2.76726px 2.21381px rgba(0, 0, 0, .00843437)}@media (prefers-color-scheme: dark){:root:not(.light){--sw-color-default: #4E4E4E;--sw-color-primary: #38A151;--sw-color-success: #FFE603;--sw-color-info: #808185;--sw-color-warning: #FF7A00;--sw-color-danger: #CC2D4A;--sw-text-color-primary: white;--sw-text-color-secondary: #FAFAFA;--sw-text-color-third: #FAFAFA;--sw-text-color-revers: white;--sw-bg-color: #182127;--sw-bg-color-page: #323741;--sw-bg-color-second: #232832;--sw-border-color: #4E4E4E;--sw-border-color-input: #5C5E63;--sw-shadow: 0 100px 80px rgba(0, 0, 0, .03), 0 41.7776px 33.4221px rgba(0, 0, 0, .0215656), 0 22.3363px 17.869px rgba(0, 0, 0, .0178832), 0 12.5216px 10.0172px rgba(0, 0, 0, .015), 0 6.6501px 5.32008px rgba(0, 0, 0, .0121168), 0 2.76726px 2.21381px rgba(0, 0, 0, .00843437)}}.sw-tabs{-webkit-user-select:none;user-select:none}.sw-tabs>header{display:flex;border-bottom:2px solid var(--sw-color-info);color:var(--sw-color-info);-webkit-user-select:none;user-select:none;font-size:var(--sw-font-size-small);font-weight:400;margin-bottom:1.25rem;transition:all .6s ease-out}.sw-tabs>header span{position:relative;top:2px;border-radius:0;padding:5px;cursor:pointer;border:none;background:none;outline:none}.sw-tabs>header span.active{border-bottom:2px solid var(--sw-color-primary);color:var(--sw-color-primary);font-weight:700}.sw-tabs>header span:hover:not(.active){color:var(--sw-border-color)}.sw-input{display:flex;align-items:center;position:relative;gap:0 1.75rem;padding:0 1.2em;border:1px solid var(--sw-border-color-input);border-radius:var(--sw-border-radius)}.sw-input label{text-align:left;transition:all .2s .2s linear;position:absolute;font-size:var(--sw-font-size-large);line-height:1;top:1.1rem;background:var(--sw-bg-color-page)}.sw-input label:hover{top:.8rem}.sw-input label+input::placeholder{opacity:0}.sw-input input{line-height:var(--sw-component-size-base);border:none;width:100%;font-size:var(--sw-font-size-large);background:none;outline:none}.sw-input input::placeholder{color:var(--sw-text-color-secondary);opacity:1;transition:opacity .2s .2s linear}.sw-input input:focus::placeholder{opacity:1}.sw-input .svg-icon{font-size:20px;color:var(--sw-text-color-third)}.sw-input>svg+label{left:4rem}.sw-input.sw-small label{top:.3rem}.sw-input.sw-small label:hover{top:0}.sw-input.sw-small input{line-height:var(--sw-component-size-small)}.sw-input.sw-large label{top:1.22rem}.sw-input.sw-large label:hover{top:1rem}.sw-input.sw-large input{line-height:var(--sw-component-size-large)}.sw-button{border-radius:1rem;border:1px solid var(--sw-color-default);padding:0 1.2em;min-height:var(--sw-component-size-base);font-size:var(--sw-font-size);font-weight:500;cursor:pointer;transition:border-color .25s;background-color:var(--sw-color-default);color:var(--sw-text-color-revers)}.sw-form-item{display:flex;justify-content:space-between;font-size:var(--sw-font-size-small);color:var(--sw-text-color-secondary);gap:1rem}.sw-form-item.sw-start{justify-content:flex-start}.sw-form-item.sw-end{justify-content:flex-end}.sw-form-item.sw-around{justify-content:space-around}.sw-form-item.sw-center{justify-content:center}.sw-dropdown{position:relative;display:inline-block}.sw-dropdown-popup{z-index:3;padding:8px;min-width:200px;margin:0;background-color:var(--sw-bg-color-second);border:1px solid var(--sw-border-color);border-radius:4px;box-shadow:0 2px 8px #0000001a}.sw-dropdown-item{display:block}.sw-dropdown-item svg{margin-right:.5rem}.sw-dropdown-item:hover{color:var(--sw-color-primary)}.sw-collapse{transition:all .3s ease-out;overflow:hidden;box-sizing:border-box;margin:0}.sw-switch{display:inline-flex;align-items:center;box-sizing:border-box;-webkit-user-select:none;user-select:none}.sw-switch>input{display:none}.sw-switch>input:checked+label{background-color:var(--sw-color-primary)}.sw-switch>input:checked+label:before{color:var(--sw-text-color-revers);content:attr(data-onlabel);left:.5rem;right:auto}.sw-switch>input:checked+label:after{background:#f7f7f7;left:2.125rem}.sw-switch>label{background-color:var(--sw-color-info);border-radius:1rem;cursor:pointer;flex:0 0 4rem;height:1.75rem;margin:.5rem;position:relative;transition:all .3s;width:4rem}.sw-switch>label:before{color:var(--sw-text-color-revers);content:attr(data-offlabel);display:block;font-size:1rem;position:absolute;right:.5rem;transition:all .3s}.sw-switch>label:after{background:var(--sw-text-color-revers);border:1px solid var(--sw-color-info);border-radius:50%;content:"";height:2rem;left:-.125rem;position:absolute;top:-.125rem;transition:all .3s;width:2rem}.sw-switch.sw-small>label{width:3.125rem;flex:0 0 3.125rem}.sw-switch.sw-small>label:before{content:""}.sw-switch.sw-small>label:after{content:"";left:.15rem;top:.125rem;width:1.375rem;height:1.375rem}.sw-switch.sw-small>input:checked+label:before{content:""}.sw-switch.sw-small>input:checked+label:after{left:1.475rem}.sw-switch.sw-checkbox label{border-radius:var(--sw-border-radius-small);background:var(--sw-bg-color-pag);border:1px solid var(--sw-border-color-input);height:.875rem;flex:0 0 .875rem}.sw-switch.sw-checkbox label:after{content:none}.sw-switch.sw-checkbox>input:checked+label{background:var(--sw-bg-color-page)}.sw-switch.sw-checkbox>input:checked+label:before{content:"✔";color:var(--sw-color-primary);top:-.9rem;left:0;font-size:1.6rem}.sw-skeleton{display:flex;gap:.5rem;flex-wrap:wrap;align-items:flex-end}.sw-skeleton-item{min-height:var(--sw-component-size-base);width:100%;background:var(--sw-bg-color-second);border-radius:var(--sw-border-radius);border:1px solid var(--sw-bg-color);box-sizing:border-box;overflow:hidden;position:relative}.sw-skeleton-item>div{height:100%;width:10px;background:var(--sw-border-color-input);display:inline-block;animation:sw-skeleton 3s linear infinite normal;position:absolute;transform:skew(-20deg);box-shadow:0 0 20px 20px var(--sw-border-color-input)}.sw-message{position:fixed;z-index:3;background-color:var(--sw-bg-color-page);border:1px solid var(--sw-border-color);border-radius:var(--sw-border-radius);padding:1.875rem;box-sizing:border-box;top:50%;left:50%;transform:translateY(-50%) translate(-50%);min-width:20rem;max-width:95%;max-height:95%}.sw-message>header{display:flex;justify-content:space-between;gap:.5rem;margin-bottom:.5rem}.sw-message>footer{display:flex;justify-content:flex-end;gap:.5rem;margin-top:.5rem;flex-wrap:wrap}.sw-modal-footer{margin-top:1rem;display:flex;gap:.5rem;justify-content:flex-end}.sw-data-picker{display:flex}.sw-data-picker .month_year{display:flex;justify-content:space-around;align-items:center}.sw-data-picker .month_year span:not(.text) button{font-size:1.3em}.sw-data-picker>div:not(:first-child){margin-left:2rem}.sw-data-picker button{height:30px;text-align:center;line-height:30px;cursor:pointer;background:none;border:none;border-radius:.2rem;transition:all .3s ease}.sw-data-picker button:hover:not(.disabled):not(.active){color:var(--sw-color-primary)}.sw-data-picker .week{border-bottom:1px solid var(--sw-color-info);margin-bottom:.5rem}.sw-data-picker .month,.sw-data-picker .week{width:250px;display:grid;grid-template-columns:1fr 1fr 1fr 1fr 1fr 1fr 1fr;gap:.2rem}.sw-data-picker .month>button,.sw-data-picker .week>button{width:30px}.sw-data-picker .month>button.disabled,.sw-data-picker .week>button.disabled{color:var(--el-color-info);cursor:not-allowed}.sw-data-picker .month>button.preholiday,.sw-data-picker .week>button.preholiday{background-color:var(--sw-color-preholiday)}.sw-data-picker .month>button.weekend,.sw-data-picker .week>button.weekend{background-color:var(--sw-color-weekend)}.sw-data-picker .month>button.select,.sw-data-picker .week>button.select{background-color:var(--sw-color-select)}.sw-data-picker .month>button.holiday,.sw-data-picker .week>button.holiday{background-color:var(--sw-color-holiday)}.sw-data-picker .month>button.nowork,.sw-data-picker .week>button.nowork{background-color:var(--sw-color-nowork)}.sw-data-picker .month>button.active,.sw-data-picker .week>button.active{background-color:var(--sw-color-active)}.sw-round{border-radius:var(--sw-border-round)}.sw-small{min-height:var(--sw-component-size-small)}.sw-large{min-height:var(--sw-component-size-large)}.sw-big{min-height:var(--sw-component-size-big)}.sw-primary{background-color:var(--sw-color-primary);border-color:var(--sw-color-primary)}.sw-success{background-color:var(--sw-color-success);border-color:var(--sw-color-success)}.sw-info{background-color:var(--sw-color-info);border-color:var(--sw-color-info)}.sw-warning{background-color:var(--sw-color-warning);border-color:var(--sw-color-warning)}.sw-danger{background-color:var(--sw-color-danger);border-color:var(--sw-color-danger)}.sw-text{color:var(--sw-color-default);background:none}.sw-text.sw-primary{color:var(--sw-color-primary)}.sw-text.sw-success{color:var(--sw-color-success)}.sw-text.sw-info{color:var(--sw-color-info)}.sw-text.sw-warning{color:var(--sw-color-warning)}.sw-text.sw-danger{color:var(--sw-color-danger)}.sw-link{background:none;border:none;padding:0;color:var(--sw-text-color-secondary);min-height:1em}.sw-link:hover.sw-primary{color:var(--sw-color-primary)}.sw-link:hover.sw-success{color:var(--sw-color-success)}.sw-link:hover.sw-info{color:var(--sw-color-info)}.sw-link:hover.sw-warning{color:var(--sw-color-warning)}.sw-link:hover.sw-danger{color:var(--sw-color-danger)}@keyframes sw-skeleton{0%{left:-50px}to{left:calc(50px + 100%)}}
|
|
1
|
+
@charset "UTF-8";:root{--sw-color-default: #DFDFDF;--sw-color-primary: #3EAF4E;--sw-color-success: #FFE603;--sw-color-info: #C0C0C0;--sw-color-warning: #FF7A00;--sw-color-danger: #CC2D4A;--sw-color-preholiday: #FFE78070;--sw-color-weekend: #ff808070;--sw-color-select: #007bff70;--sw-color-holiday: #ff0000;--sw-color-nowork: #ff0000;--sw-color-active: #007bff;--sw-text-color-primary: #333333;--sw-text-color-secondary: #4C4C4C;--sw-text-color-third: #818181;--sw-text-color-revers: white;--sw-bg-color: #f4f4f4;--sw-bg-color-page: white;--sw-bg-color-second: #FAFAFA;--sw-border-color: #D6D6D6;--sw-border-color-input: #CECECE;--sw-font-size: 1rem;--sw-font-size-small: .875rem;--sw-font-size-large: 1.125rem;--sw-font-size-big: 2.8rem;--sw-border-radius: .625rem;--sw-border-radius-small: .25rem;--sw-border-round: 3.625rem;--sw-component-size-base: 3rem;--sw-component-size-small: 1.625rem;--sw-component-size-large: 3.5rem;--sw-component-size-big: 10.5rem;font-family:Montserrat,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color:var(--sw-text-color-primary);background-color:var(--sw-bg-color);font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}:root.dark{--sw-color-default: #4E4E4E;--sw-color-primary: #38A151;--sw-color-success: #FFE603;--sw-color-info: #808185;--sw-color-warning: #FF7A00;--sw-color-danger: #CC2D4A;--sw-text-color-primary: white;--sw-text-color-secondary: #FAFAFA;--sw-text-color-third: #FAFAFA;--sw-text-color-revers: white;--sw-bg-color: #182127;--sw-bg-color-page: #323741;--sw-bg-color-second: #232832;--sw-border-color: #4E4E4E;--sw-border-color-input: #5C5E63;--sw-shadow: 0 100px 80px rgba(0, 0, 0, .03), 0 41.7776px 33.4221px rgba(0, 0, 0, .0215656), 0 22.3363px 17.869px rgba(0, 0, 0, .0178832), 0 12.5216px 10.0172px rgba(0, 0, 0, .015), 0 6.6501px 5.32008px rgba(0, 0, 0, .0121168), 0 2.76726px 2.21381px rgba(0, 0, 0, .00843437)}@media (prefers-color-scheme: dark){:root:not(.light){--sw-color-default: #4E4E4E;--sw-color-primary: #38A151;--sw-color-success: #FFE603;--sw-color-info: #808185;--sw-color-warning: #FF7A00;--sw-color-danger: #CC2D4A;--sw-text-color-primary: white;--sw-text-color-secondary: #FAFAFA;--sw-text-color-third: #FAFAFA;--sw-text-color-revers: white;--sw-bg-color: #182127;--sw-bg-color-page: #323741;--sw-bg-color-second: #232832;--sw-border-color: #4E4E4E;--sw-border-color-input: #5C5E63;--sw-shadow: 0 100px 80px rgba(0, 0, 0, .03), 0 41.7776px 33.4221px rgba(0, 0, 0, .0215656), 0 22.3363px 17.869px rgba(0, 0, 0, .0178832), 0 12.5216px 10.0172px rgba(0, 0, 0, .015), 0 6.6501px 5.32008px rgba(0, 0, 0, .0121168), 0 2.76726px 2.21381px rgba(0, 0, 0, .00843437)}}.sw-tabs{-webkit-user-select:none;user-select:none}.sw-tabs>header{display:flex;border-bottom:2px solid var(--sw-color-info);color:var(--sw-color-info);-webkit-user-select:none;user-select:none;font-size:var(--sw-font-size-small);font-weight:400;margin-bottom:1.25rem;transition:all .6s ease-out}.sw-tabs>header span{position:relative;top:2px;border-radius:0;padding:5px;cursor:pointer;border:none;background:none;outline:none}.sw-tabs>header span.active{border-bottom:2px solid var(--sw-color-primary);color:var(--sw-color-primary);font-weight:700}.sw-tabs>header span:hover:not(.active){color:var(--sw-border-color)}.sw-input{display:flex;align-items:center;position:relative;gap:0 1.75rem;padding:0 1.2em;border:1px solid var(--sw-border-color-input);border-radius:var(--sw-border-radius)}.sw-input label{text-align:left;transition:all .2s .2s linear;position:absolute;font-size:var(--sw-font-size-large);line-height:1;top:1.1rem;background:var(--sw-bg-color-page)}.sw-input label:hover{top:.8rem}.sw-input label+input::placeholder{opacity:0}.sw-input input{line-height:var(--sw-component-size-base);border:none;width:100%;font-size:var(--sw-font-size-large);background:none;outline:none}.sw-input input::placeholder{color:var(--sw-text-color-secondary);opacity:1;transition:opacity .2s .2s linear}.sw-input input:focus::placeholder{opacity:1}.sw-input .svg-icon{font-size:20px;color:var(--sw-text-color-third)}.sw-input>svg+label{left:4rem}.sw-input.sw-small label{top:.3rem}.sw-input.sw-small label:hover{top:0}.sw-input.sw-small input{line-height:var(--sw-component-size-small)}.sw-input.sw-large label{top:1.22rem}.sw-input.sw-large label:hover{top:1rem}.sw-input.sw-large input{line-height:var(--sw-component-size-large)}.sw-button{border-radius:1rem;border:1px solid var(--sw-color-default);padding:0 1.2em;min-height:var(--sw-component-size-base);font-size:var(--sw-font-size);font-weight:500;cursor:pointer;transition:border-color .25s;background-color:var(--sw-color-default);color:var(--sw-text-color-revers)}.sw-form-item{display:flex;justify-content:space-between;font-size:var(--sw-font-size-small);color:var(--sw-text-color-secondary);gap:1rem}.sw-form-item.sw-start{justify-content:flex-start}.sw-form-item.sw-end{justify-content:flex-end}.sw-form-item.sw-around{justify-content:space-around}.sw-form-item.sw-center{justify-content:center}.sw-dropdown{position:relative;display:inline-block}.sw-dropdown-popup{z-index:3;padding:8px;min-width:200px;margin:0;background-color:var(--sw-bg-color-second);border:1px solid var(--sw-border-color);border-radius:4px;box-shadow:0 2px 8px #0000001a}.sw-dropdown-item{display:block}.sw-dropdown-item svg{margin-right:.5rem}.sw-dropdown-item:hover{color:var(--sw-color-primary)}.sw-collapse{transition:all .3s ease-out;overflow:hidden;box-sizing:border-box;margin:0}.sw-switch{display:inline-flex;align-items:center;box-sizing:border-box;-webkit-user-select:none;user-select:none}.sw-switch>input{display:none}.sw-switch>input:checked+label{background-color:var(--sw-color-primary)}.sw-switch>input:checked+label:before{color:var(--sw-text-color-revers);content:attr(data-onlabel);left:.5rem;right:auto}.sw-switch>input:checked+label:after{background:#f7f7f7;left:2.125rem}.sw-switch>label{background-color:var(--sw-color-info);border-radius:1rem;cursor:pointer;flex:0 0 4rem;height:1.75rem;margin:.5rem;position:relative;transition:all .3s;width:4rem}.sw-switch>label:before{color:var(--sw-text-color-revers);content:attr(data-offlabel);display:block;font-size:1rem;position:absolute;right:.5rem;transition:all .3s}.sw-switch>label:after{background:var(--sw-text-color-revers);border:1px solid var(--sw-color-info);border-radius:50%;content:"";height:2rem;left:-.125rem;position:absolute;top:-.125rem;transition:all .3s;width:2rem}.sw-switch.sw-small>label{width:3.125rem;flex:0 0 3.125rem}.sw-switch.sw-small>label:before{content:""}.sw-switch.sw-small>label:after{content:"";left:.15rem;top:.125rem;width:1.375rem;height:1.375rem}.sw-switch.sw-small>input:checked+label:before{content:""}.sw-switch.sw-small>input:checked+label:after{left:1.475rem}.sw-switch.sw-checkbox label{border-radius:var(--sw-border-radius-small);background:var(--sw-bg-color-pag);border:1px solid var(--sw-border-color-input);height:.875rem;flex:0 0 .875rem}.sw-switch.sw-checkbox label:after{content:none}.sw-switch.sw-checkbox>input:checked+label{background:var(--sw-bg-color-page)}.sw-switch.sw-checkbox>input:checked+label:before{content:"✔";color:var(--sw-color-primary);top:-.9rem;left:0;font-size:1.6rem}.sw-skeleton{display:flex;gap:.5rem;flex-wrap:wrap;align-items:flex-end}.sw-skeleton-item{min-height:var(--sw-component-size-base);width:100%;background:var(--sw-bg-color-second);border-radius:var(--sw-border-radius);border:1px solid var(--sw-bg-color);box-sizing:border-box;overflow:hidden;position:relative}.sw-skeleton-item>div{height:100%;width:10px;background:var(--sw-border-color-input);display:inline-block;animation:sw-skeleton 3s linear infinite normal;position:absolute;transform:skew(-20deg);box-shadow:0 0 20px 20px var(--sw-border-color-input)}.sw-message{position:fixed;z-index:3;background-color:var(--sw-bg-color-page);border:1px solid var(--sw-border-color);border-radius:var(--sw-border-radius);padding:1.875rem;box-sizing:border-box;top:50%;left:50%;transform:translateY(-50%) translate(-50%);min-width:20rem;max-width:95%;max-height:95%}.sw-message>header{display:flex;justify-content:space-between;gap:.5rem;margin-bottom:.5rem}.sw-message>footer{display:flex;justify-content:flex-end;gap:.5rem;margin-top:.5rem;flex-wrap:wrap}.sw-modal-footer{margin-top:1rem;display:flex;gap:.5rem;justify-content:flex-end}.sw-data-picker{display:flex}.sw-data-picker .month_year{display:flex;justify-content:space-around;align-items:center}.sw-data-picker .month_year span:not(.text) button{font-size:1.3em}.sw-data-picker>div:not(:first-child){margin-left:2rem}.sw-data-picker button{height:30px;text-align:center;line-height:30px;cursor:pointer;background:none;border:none;border-radius:.2rem;transition:all .3s ease}.sw-data-picker button:hover:not(.disabled):not(.active){color:var(--sw-color-primary)}.sw-data-picker .week{border-bottom:1px solid var(--sw-color-info);margin-bottom:.5rem}.sw-data-picker .month,.sw-data-picker .week{width:250px;display:grid;grid-template-columns:1fr 1fr 1fr 1fr 1fr 1fr 1fr;gap:.2rem}.sw-data-picker .month>button,.sw-data-picker .week>button{width:30px}.sw-data-picker .month>button.disabled,.sw-data-picker .week>button.disabled{color:var(--el-color-info);cursor:not-allowed}.sw-data-picker .month>button.preholiday,.sw-data-picker .week>button.preholiday{background-color:var(--sw-color-preholiday)}.sw-data-picker .month>button.weekend,.sw-data-picker .week>button.weekend{background-color:var(--sw-color-weekend)}.sw-data-picker .month>button.select,.sw-data-picker .week>button.select{background-color:var(--sw-color-select)}.sw-data-picker .month>button.holiday,.sw-data-picker .week>button.holiday{background-color:var(--sw-color-holiday)}.sw-data-picker .month>button.nowork,.sw-data-picker .week>button.nowork{background-color:var(--sw-color-nowork)}.sw-data-picker .month>button.active,.sw-data-picker .week>button.active{background-color:var(--sw-color-active)}.sw-round{border-radius:var(--sw-border-round)}.sw-small{min-height:var(--sw-component-size-small)}.sw-large{min-height:var(--sw-component-size-large)}.sw-big{min-height:var(--sw-component-size-big)}.sw-primary{background-color:var(--sw-color-primary);border-color:var(--sw-color-primary)}.sw-success{background-color:var(--sw-color-success);border-color:var(--sw-color-success)}.sw-info{background-color:var(--sw-color-info);border-color:var(--sw-color-info)}.sw-warning{background-color:var(--sw-color-warning);border-color:var(--sw-color-warning)}.sw-danger{background-color:var(--sw-color-danger);border-color:var(--sw-color-danger)}.sw-text{color:var(--sw-color-default);background:none}.sw-text.sw-primary{color:var(--sw-color-primary)}.sw-text.sw-success{color:var(--sw-color-success)}.sw-text.sw-info{color:var(--sw-color-info)}.sw-text.sw-warning{color:var(--sw-color-warning)}.sw-text.sw-danger{color:var(--sw-color-danger)}.sw-link{background:none;border:none;padding:0;color:var(--sw-text-color-secondary);min-height:1em}.sw-link:hover.sw-primary{color:var(--sw-color-primary)}.sw-link:hover.sw-success{color:var(--sw-color-success)}.sw-link:hover.sw-info{color:var(--sw-color-info)}.sw-link:hover.sw-warning{color:var(--sw-color-warning)}.sw-link:hover.sw-danger{color:var(--sw-color-danger)}@keyframes sw-skeleton{0%{left:-50px}to{left:calc(50px + 100%)}}.popup{position:relative}.popup .wrapper{position:absolute;z-index:1;list-style:none;font-size:.8rem;line-height:1.2;word-break:break-word;padding:0;margin:10px 0 0}.popup .wrapper :before{content:"";border-bottom-color:transparent!important;border-left-color:transparent!important;border:1px solid var(--el-border-color-light);background:var(--el-bg-color-overlay);right:50%;top:-6px;position:absolute;width:10px;height:10px;z-index:1;transform:rotate(-45deg)}.popup .scrollbar{box-shadow:0 0 0 1px var(--el-border-color);border-radius:var(--el-border-radius-base);background:#fff;padding:.5rem 0;margin:0}.popup .scrollbar li{display:flex;align-items:start;white-space:nowrap;list-style:none;line-height:22px;padding:5px 16px;margin:0;font-size:var(--el-font-size-base);color:var(--el-text-color-regular);cursor:pointer;outline:none}.popup .scrollbar li:not(.is-disabled):focus{background:var(--el-dropdown-menuItem-hover-fill);color:var(--el-dropdown-menuItem-hover-color)}
|
package/dist/index.cjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(T,e){typeof exports=="object"&&typeof module<"u"?e(exports,require("vue")):typeof define=="function"&&define.amd?define(["exports","vue"],e):(T=typeof globalThis<"u"?globalThis:T||self,e(T["component-sw"]={},T.vue))})(this,function(T,e){"use strict";const v=Object.assign({"./components/SwButton.vue":()=>Promise.resolve().then(()=>H),"./components/SwCollapse.vue":()=>Promise.resolve().then(()=>W),"./components/SwDataPicker.vue":()=>Promise.resolve().then(()=>se),"./components/SwDropdown.vue":()=>Promise.resolve().then(()=>re),"./components/SwDropdownItem.vue":()=>Promise.resolve().then(()=>ie),"./components/SwFormItem.vue":()=>Promise.resolve().then(()=>ce),"./components/SwInput.vue":()=>Promise.resolve().then(()=>ye),"./components/SwMessage.vue":()=>Promise.resolve().then(()=>Se),"./components/SwSection.vue":()=>Promise.resolve().then(()=>we),"./components/SwSkeleton.vue":()=>Promise.resolve().then(()=>Ee),"./components/SwSkeletonItem.vue":()=>Promise.resolve().then(()=>ke),"./components/SwSwitch.vue":()=>Promise.resolve().then(()=>$e),"./components/SwTabs.vue":()=>Promise.resolve().then(()=>Me),"./components/SwTabsNew.vue":()=>Promise.resolve().then(()=>Ne),"./components/SwTabsPane.vue":()=>Promise.resolve().then(()=>ze),"./components/SwTabsPaneNew.vue":()=>Promise.resolve().then(()=>ve)}),x={};for(const a in v){const o=a.split("/").pop().replace(".vue","").replace(/-(\w)/g,(n,l)=>l.toUpperCase());x[o]=e.defineAsyncComponent(()=>v[a]())}const q={install(a){Object.keys(x).forEach(o=>{a.component(o,x[o]),console.log(o)})}},P={__name:"SwButton",props:{class:{type:String,default:""},size:{type:String,default:""},type:{type:String,default:""},round:{type:Boolean,default:!1},text:{type:Boolean,default:!1},link:{type:Boolean,default:!1},href:{type:String,default:""}},setup(a){const o=a,n=()=>{if(o.href.length>0){const t=document.createElement("a");t.setAttribute("href",o.href),t.setAttribute("target","_blank"),t.click()}},l=e.computed(()=>{let t=["sw-button"];return o.size.length>0&&t.push("sw-"+o.size),o.type.length>0&&t.push("sw-"+o.type),o.round&&t.push("sw-round"),o.text&&t.push("sw-text"),o.link&&t.push("sw-link"),o.class.length>0&&t.push(o.class),t});return(t,u)=>(e.openBlock(),e.createElementBlock("button",{class:e.normalizeClass(l.value),onClick:n},[e.renderSlot(t.$slots,"default")],2))}},H=Object.freeze(Object.defineProperty({__proto__:null,default:P},Symbol.toStringTag,{value:"Module"})),W=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"SwCollapse",props:{visual:{type:Boolean,default:!0}},setup(a){e.onMounted(()=>{l.value="0px"});const o=e.ref(null),n=a,l=e.computed(()=>{var t;return n.visual?((t=o.value)==null?void 0:t.scrollHeight)+"px":"0px"});return(t,u)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["sw-collapse",{open:n.visual}]),style:e.normalizeStyle({height:l.value}),ref_key:"collapse",ref:o},[e.renderSlot(t.$slots,"default")],6))}}},Symbol.toStringTag,{value:"Module"}));function U(a){return/^(https?:|mailto:|tel:)/.test(a)}function N(a,o){if(arguments.length===0||!a)return null;const n=o||"{Y}-{m}-{d} {G}:{i}:{s}";let l;typeof a=="object"?l=a:(typeof a=="string"&&(/^[0-9]+$/.test(a)?a=parseInt(a):a=a.replace(new RegExp(/-/gm),"/")),typeof a=="number"&&a.toString().length===10&&(a=a*1e3),l=new Date(a));const t="ru-RU",u={Y:l.getFullYear(),m:(l.getMonth()+1).toString().padStart(2,"0"),d:l.getDate(),dd:l.getDate().toString().padStart(2,"0"),G:l.getHours(),H:l.getHours().toString().padStart(2,"0"),i:l.getMinutes().toString().padStart(2,"0"),s:l.getSeconds().toString().padStart(2,"0"),D:new Intl.DateTimeFormat(t,{weekday:"short"}).format(l),F:new Intl.DateTimeFormat(t,{month:"long"}).format(l),M:new Intl.DateTimeFormat(t,{month:"short"}).format(l)};return n.replace(/{(dd|[YmdGHisDFM])+}/g,(p,D)=>u[D])}const G={class:"sw-data-picker"},X={class:"month_year"},J={class:"text"},K={class:"week"},Q={class:"month"},Z=["onClick"],ee={key:0},te={class:"month_year"},le={class:"text"},ne={class:"week"},oe={class:"month"},ae=["onClick"],se=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"SwDataPicker",props:{data:Object,limitation:{type:[Boolean,Array],default:()=>!1},range:{type:String,default:()=>"solid"}},emits:["input"],setup(a,{emit:o}){var I,F,Y,L,R,A;const n=e.ref(new Date),l=e.ref(new Date),t=a,u=o,p=e.ref(new Date().getFullYear()),D=e.ref(new Date().getMonth()),B=e.ref(new Date().getFullYear()),m=e.ref(new Date().getMonth()),c=e.ref([]),b=e.ref(0),S=e.ref(0),d=e.ref(-1),h=e.ref(-1),_=e.ref(navigator.languages||"ru"),y=/en|zh|ja|he/.test(_.value)?0:1,k=t.range==="range"?2:1,V=f=>{const r=f.split(f.match(/\D.*?\D?/));return r[0].length>2?r.join("-")+"T00:00:01":r.reverse().join("-")+"T00:00:01"};typeof((I=t.data)==null?void 0:I.startDate)<"u"&&((F=t.data)==null?void 0:F.startDate)!==null&&(n.value=new Date(V(t.data.startDate)),p.value=n.value.getFullYear(),m.value=n.value.getMonth()),typeof((Y=t.data)==null?void 0:Y.endDate)<"u"&&((L=t.data)==null?void 0:L.endDate)!==null&&(l.value=new Date(V(t.data.endDate)),B.value=l.value.getFullYear(),D.value=l.value.getMonth());const z=()=>{var s;let f=new Date(p.value,m.value,0);for(let i=f.getDate()-f.getDay()+y;i<=f.getDate()&&f.getDay()!==6+y;i++)b.value++,c.value.push({day:i,month:f.getMonth(),year:f.getFullYear(),class:[]});for(let i=1;i<=new Date(p.value,m.value+1,0).getDate();i++)b.value++,c.value.push({day:i,month:m.value,year:p.value,class:[]});if(t.range==="range"){S.value=new Date(p.value,m.value+2,0);for(let i=1;i<=S.value.getDate();i++)c.value.push({day:i,month:S.value.getMonth(),year:S.value.getFullYear(),class:[]})}let r=new Date(p.value,m.value+k,1);console.log(r.getDay());for(let i=1;i<=(7-r.getDay()+y)%7&&r.getDay()!==y;i++)c.value.push({day:i,month:r.getMonth(),year:r.getFullYear(),class:[]});typeof((s=t.data)==null?void 0:s.holiday)<"u"&&t.data.holiday.length!==0&&(t.data.holiday.preholidays.forEach(i=>{let g=i.split("-");const E=c.value.findIndex(w=>w.year==g[0]&&w.month+1==g[1]&&w.day==g[2]);E!==-1&&(c.value[E].class[0]="preholiday")}),t.data.holiday.holidays.forEach(i=>{let g=i.split("-");const E=c.value.findIndex(w=>w.year==g[0]&&w.month+1==g[1]&&w.day==g[2]);E!==-1&&(c.value[E].class[0]="weekend")}),t.data.holiday.holiday.forEach(i=>{let g=i.split("-");const E=c.value.findIndex(w=>w.year==g[0]&&w.month+1==g[1]&&w.day==g[2]);E!==-1&&(c.value[E].class[0]="holiday")}),t.data.holiday.nowork.forEach(i=>{let g=i.split("-");const E=c.value.findIndex(w=>w.year==g[0]&&w.month+1==g[1]&&w.day==g[2]);E!==-1&&(c.value[E].class[0]="nowork")}))},M=(f,r)=>{let s=f-r+1;for(let i=0;i<=f-r;i++)c.value[i+r].class[0]==="holiday"&&s--;return s},C=(f,r)=>{console.log(r);const s=N(new Date(f.year,f.month,f.day),"{dd}.{m}.{Y}");if(t.range==="range")if(console.log(d.value),h.value!==-1){if(h.value<=d.value)for(let i=h.value;i<=d.value;i++)c.value[i].class[1]="";else for(let i=d.value;i<=h.value;i++)c.value[i].class[1]="";d.value=r,h.value=-1,c.value[r].class[1]="active"}else if(d.value!==-1){if(h.value=r,h.value>=d.value)for(let g=d.value+1;g<r;g++)c.value[g].class[1]="select";else for(let g=r+1;g<d.value;g++)c.value[g].class[1]="select";c.value[r].class[1]="active";let i=N(new Date(c.value[d.value].year,c.value[d.value].month,c.value[d.value].day),"{dd}.{m}.{Y}");d.value>r?u("input",{dateStart:s,dateEnd:i,count:M(d.value,r)}):u("input",{dateStart:i,dateEnd:s,count:M(r,d.value)})}else d.value=r,c.value[r].class[1]="active";else d.value!==-1&&(c.value[d.value].class[1]=""),d.value=r,c.value[r].class[1]="active",u("input",{dateStart:s,count:1})};if(z(),typeof((R=t.data)==null?void 0:R.startDate)<"u"&&(d.value=c.value.findIndex(f=>f.day===n.value.getDate()&&f.month===m.value&&f.year===p.value),c.value[d.value].class[1]="active"),typeof((A=t.data)==null?void 0:A.endDate)<"u"&&t.range==="range"){h.value=c.value.findIndex(f=>f.day===l.value.getDate()&&f.month===D.value&&f.year===B.value),c.value[h.value].class[1]="active";for(let f=d.value+1;f<h.value;f++)c.value[f].class[1]="select"}const $=(f,r)=>{Pe(f,r)&&(c.value=[],b.value=0,n.value=new Date(f,r,1),p.value=n.value.getFullYear(),m.value=n.value.getMonth(),z())},Pe=(f,r)=>{if(!t.limitation)return!0;if(t.limitation[0].dateStart){console.log(t.limitation[0].dateStart);let s=t.limitation[0].dateStart.split(t.limitation[0].dateStart.match(/\D.*?\D?/));if(s[0].length>2&&s.reverse(),parseInt(s[2])>f||parseInt(s[2])===f&&parseInt(s[1])>r+1)return!1}if(t.limitation[t.limitation.length-1].dateEnd){console.log(t.limitation[t.limitation.length-1].dateEnd);let s=t.limitation[t.limitation.length-1].dateEnd.split(t.limitation[t.limitation.length-1].dateEnd.match(/\D.*?\D?/));if(s[0].length>2&&s.reverse(),parseInt(s[2])<f||parseInt(s[2])===f&&parseInt(s[1])<r+k)return!1}return!0};return(f,r)=>(e.openBlock(),e.createElementBlock("div",G,[e.createElementVNode("div",null,[e.createElementVNode("p",X,[e.createElementVNode("span",null,[e.createElementVNode("button",{onClick:r[0]||(r[0]=e.withModifiers(s=>$(p.value-1,m.value),["prevent"]))},"«"),e.createElementVNode("button",{onClick:r[1]||(r[1]=e.withModifiers(s=>$(p.value,m.value-1),["prevent"]))},"‹")]),e.createElementVNode("span",J,[e.createElementVNode("button",null,e.toDisplayString(p.value),1),e.createElementVNode("button",null,e.toDisplayString(e.unref(N)(n.value.setMonth(m.value),"{F}")),1)]),e.createElementVNode("span",null,[e.createElementVNode("button",{onClick:r[2]||(r[2]=e.withModifiers(s=>$(p.value,m.value+1),["prevent"]))},"›"),e.createElementVNode("button",{onClick:r[3]||(r[3]=e.withModifiers(s=>$(p.value+1,m.value),["prevent"]))},"»")])]),e.createElementVNode("div",K,[(e.openBlock(),e.createElementBlock(e.Fragment,null,e.renderList(7,(s,i)=>e.createElementVNode("button",{key:i,class:"disabled"},e.toDisplayString(e.unref(N)(new Date(1970,1,s+e.unref(y)),"{D}")),1)),64))]),e.createElementVNode("div",Q,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(c.value,(s,i)=>{var g,E;return e.openBlock(),e.createElementBlock(e.Fragment,{key:i},[i<b.value+(7-new Date(p.value,m.value+1,1).getDay()+e.unref(y))%7?(e.openBlock(),e.createElementBlock("button",{key:0,class:e.normalizeClass(s.month===m.value&&(!t.limitation||new Date(s.year,s.month,s.day+1).getTime()>new Date(V((g=t.limitation[0])==null?void 0:g.dateStart)).getTime()&&new Date(s.year,s.month,s.day).getTime()<new Date(V((E=t.limitation[0])==null?void 0:E.dateEnd)).getTime())?s.class:"disabled"),onClick:()=>{s.month===m.value&&C(s,i)}},e.toDisplayString(s.day),11,Z)):e.createCommentVNode("",!0)],64)}),128))])]),t.range==="range"?(e.openBlock(),e.createElementBlock("div",ee,[e.createElementVNode("p",te,[e.createElementVNode("span",null,[e.createElementVNode("button",{onClick:r[4]||(r[4]=s=>$(p.value-1,m.value))},"«"),e.createElementVNode("button",{onClick:r[5]||(r[5]=s=>$(p.value,m.value-1))},"‹")]),e.createElementVNode("span",le,[e.createElementVNode("button",null,e.toDisplayString(new Date(p.value,m.value+1).getFullYear()),1),e.createElementVNode("button",null,e.toDisplayString(e.unref(N)(n.value.setMonth(m.value+1),"{F}")),1)]),e.createElementVNode("span",null,[e.createElementVNode("button",{onClick:r[6]||(r[6]=s=>$(p.value,m.value+1))},"›"),e.createElementVNode("button",{onClick:r[7]||(r[7]=s=>$(p.value+1,m.value))},"»")])]),e.createElementVNode("div",ne,[(e.openBlock(),e.createElementBlock(e.Fragment,null,e.renderList(7,(s,i)=>e.createElementVNode("button",{key:i,class:"disabled"},e.toDisplayString(e.unref(N)(new Date(1970,1,s+e.unref(y)),"{D}")),1)),64))]),e.createElementVNode("div",oe,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(c.value,(s,i)=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:i},[i>=b.value-(7+new Date(p.value,m.value+1,1).getDay()-e.unref(y))%7?(e.openBlock(),e.createElementBlock("button",{key:0,class:e.normalizeClass(s.month===S.value.getMonth()&&(!t.limitation||new Date(s.year,s.month,s.day+1).getTime()>new Date(V(t.limitation[0].dateStart)).getTime()&&new Date(s.year,s.month,s.day).getTime()<new Date(V(t.limitation[0].dateEnd)).getTime())?s.class:"disabled"),onClick:()=>{s.month===S.value.getMonth()&&C(s,i)}},e.toDisplayString(s.day),11,ae)):e.createCommentVNode("",!0)],64))),128))])])):e.createCommentVNode("",!0)]))}}},Symbol.toStringTag,{value:"Module"})),re=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"SwDropdown",props:{class:{type:String,default:""},size:{type:String,default:""},type:{type:String,default:""},trigger:{type:String,default:"click"},placement:{type:String,default:"bottom-left"},maxWidth:{type:Number,default:0}},setup(a){const o=a,n=e.ref(!1),l=e.ref(null),t=e.ref(null),u=e.ref({}),p=e.computed(()=>{let c=["sw-dropdown"];return o.size.length>0&&c.push("sw-"+o.size),o.type.length>0&&c.push("sw-"+o.type),c}),D=async()=>{if(await e.nextTick(),!t.value)return;const c=window.pageYOffset||document.documentElement.scrollTop,b=window.pageXOffset||document.documentElement.scrollLeft;document.body.style.position="fixed",document.body.style.top=`-${c}px`,document.body.style.left=`-${b}px`,t.value.focus(),t.value.addEventListener("blur",()=>n.value=!1),document.body.style.position="",document.body.style.top="",document.body.style.left="",document.documentElement.scrollTop=c,document.documentElement.scrollLeft=b;const S=l.value.getBoundingClientRect(),d=t.value.offsetHeight,h=t.value.offsetWidth;console.log("popupHeight",d),console.log("popupWidth",h);let _=S.left+S.width/2+b,y=S.top+S.height/2+c;const[k,V]=o.placement.split("-",2);switch(console.log(o.placement),k){case"bottom":y=y+S.height/2+8;break;case"top":y=y-S.height/2-8-d;break;case"left":_=_-h-S.width/2-8,y=y-d/2;break;case"right":_=_+S.width/2+8,y=y-d/2;break}switch(V){case"left":_=_-h+S.width/2;break;case"right":_=_+S.width/2;break}_<0&&(_=0),y<0&&(y=0),u.value={position:"absolute",top:`${y}px`,left:`${_}px`,maxWidth:o.maxWidth===0?"":`${o.maxWidth}px`}},B=async()=>{n.value=!n.value,n.value&&await D()},m=()=>{n.value&&D()};return e.onMounted(()=>{window.addEventListener("resize",m)}),e.onUnmounted(()=>{window.removeEventListener("resize",m)}),(c,b)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(p.value),onClick:b[0]||(b[0]=e.withModifiers(S=>B(),["stop"])),ref_key:"dropdownRef",ref:l},[e.renderSlot(c.$slots,"default"),(e.openBlock(),e.createBlock(e.Teleport,{to:"body"},[n.value?(e.openBlock(),e.createElementBlock("ul",{key:0,ref_key:"popupRef",ref:t,class:e.normalizeClass(["sw-dropdown-popup",o.class]),style:e.normalizeStyle(u.value),tabindex:"-1"},[e.renderSlot(c.$slots,"dropdown")],6)):e.createCommentVNode("",!0)]))],2))}}},Symbol.toStringTag,{value:"Module"})),ie=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"SwDropdownItem",props:{class:{type:String,default:""},size:{type:String,default:""},type:{type:String,default:""},iconBefore:{type:String,default:""}},setup(a){const o=a,n=e.computed(()=>{let l=["sw-dropdown-item"];return o.size.length>0&&l.push("sw-"+o.size),o.type.length>0&&l.push("sw-"+o.type),o.class.length>0&&l.push(o.class),l});return(l,t)=>{const u=e.resolveComponent("svg-icon");return e.openBlock(),e.createElementBlock("li",{class:e.normalizeClass(n.value)},[e.createVNode(u,{"icon-class":a.iconBefore},null,8,["icon-class"]),e.renderSlot(l.$slots,"default")],2)}}}},Symbol.toStringTag,{value:"Module"})),ce=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"SwFormItem",props:{class:{type:String,default:""},type:{type:String,default:""}},setup(a){const o=a,n=e.computed(()=>{let l=["sw-form-item"];return o.type.length>0&&l.push("sw-"+o.type),o.class.length>0&&l.push(o.class),l});return(l,t)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(n.value)},[e.renderSlot(l.$slots,"default")],2))}}},Symbol.toStringTag,{value:"Module"})),de=(a,o)=>{const n=a.__vccOpts||a;for(const[l,t]of o)n[l]=t;return n},pe={name:"SvgIcon",props:{prefix:{type:String,default:"icon"},iconClass:{type:String,required:!0},className:{type:String,default:""}},computed:{isExt(){return U(this.iconClass)}}},me=["href"];function fe(a,o,n,l,t,u){return u.isExt?(e.openBlock(),e.createElementBlock("div",e.mergeProps({key:0,style:"mask: url("+n.iconClass+") no-repeat 50% 50%;",class:"svg-external-icon svg-icon"},a.$attrs),null,16)):(e.openBlock(),e.createElementBlock("svg",e.mergeProps({key:1,class:"svg-icon "+n.className,"aria-hidden":"true"},a.$attrs),[e.createElementVNode("use",{href:"#"+n.prefix+"-"+n.iconClass},null,8,me)],16))}const j=de(pe,[["render",fe]]),ue=["for"],ge={key:0,title:"Это поле обязательно для заполнения."},he=["required","placeholder","type","id","name"],ye=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"SwInput",props:e.mergeModels({before:{type:String,default:""},after:{type:String,default:""},placeholder:{type:String,default:""},label:{type:String,default:""},name:{type:String,required:!0},class:{type:String,default:""},size:{type:String,default:""},type:{type:String,default:"text"},required:{type:Boolean,default:!1}},{modelValue:{},modelModifiers:{}}),emits:e.mergeModels(["suffix","prefix"],["update:modelValue"]),setup(a,{emit:o}){var S;const n=e.useModel(a,"modelValue"),l=a,t=e.ref(null),u=o,p=d=>{console.log(d),d.target.setSelectionRange(n.value.length,n.value.length),t.value!==null&&(t.value.style.top="-.6em")},D=d=>{var h;((h=n.value)==null?void 0:h.length)===0&&t.value!==null&&t.value.removeAttribute("style")};((S=n.value)==null?void 0:S.length)>0&&t.value!==null&&(t.value.style.top="-.6em");const B=()=>{u("suffix")},m=()=>{u("prefix")},c=e.computed(()=>{let d=["sw-input"];return l.size.length>0&&d.push("sw-"+l.size),l.class.length>0&&d.push(l.class),d});e.watch(n,(d,h)=>{l.type==="phone"&&(n.value=b(d,h))});const b=(d,h)=>{if(/^\+[0-9]\s/.test(h)&&d.length===2||/^\+0\s/.test(d))return"";const _=d;if(typeof _>"u"||_.length===0)return _;const y="+0 (___) ___-__-__";let k=0;const V=y.replace(/\D/g,""),z=_.replace(/\D/g,"");let M=y.replace(/[_\d]/g,$=>k<z.length?z.charAt(k++)||V.charAt(k):$);k=M.indexOf("_"),k!==-1&&(k=k<5?3:k,M=M.slice(0,k));let C=y.slice(0,_.length).replace(/_+/g,$=>`\\d{1,${$.length}}`).replace(/[+()]/g,"\\$&");if(C=new RegExp(`^${C}$`),M=M.replace(/[-—]$|(\) )$/g,""),!C.test(_)||_.length<5)return M};return(d,h)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(c.value)},[l.before.length>0?(e.openBlock(),e.createBlock(j,{key:0,"icon-class":l.before,onClick:m},null,8,["icon-class"])):e.renderSlot(d.$slots,"prefix",{key:1}),l.label.length>0?(e.openBlock(),e.createElementBlock("label",{key:2,for:l.name,ref_key:"lab",ref:t},[e.createTextVNode(e.toDisplayString(l.label),1),l.required?(e.openBlock(),e.createElementBlock("span",ge,"*")):e.createCommentVNode("",!0)],8,ue)):e.createCommentVNode("",!0),e.withDirectives(e.createElementVNode("input",{"onUpdate:modelValue":h[0]||(h[0]=_=>n.value=_),required:l.required,placeholder:l.required&&l.label.length===0?l.placeholder+"*":l.placeholder,type:l.type,id:l.name,name:l.name,size:"60",onFocus:p,onBlur:D,maxlength:"128"},null,40,he),[[e.vModelDynamic,n.value]]),l.after.length>0?(e.openBlock(),e.createBlock(j,{key:3,"icon-class":l.after,onClick:B},null,8,["icon-class"])):e.renderSlot(d.$slots,"suffix",{key:4})],2))}}},Symbol.toStringTag,{value:"Module"})),_e={key:0},Se=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"SwMessage",props:e.mergeModels({name:{type:String,default:""},class:{type:String,default:""},iconAfter:{type:String,default:""}},{modelValue:{},modelModifiers:{}}),emits:["update:modelValue"],setup(a){const o=e.useModel(a,"modelValue"),n=a,l=e.ref(null);return(t,u)=>{const p=e.resolveComponent("svg-icon");return o.value?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(["sw-message",n.class]),ref_key:"messageRef",ref:l},[n.name.length>0?(e.openBlock(),e.createElementBlock("header",_e,[e.renderSlot(t.$slots,"header",{},()=>[e.createTextVNode(e.toDisplayString(n.name)+" ",1),e.createVNode(P,{link:"",type:"primary",onClick:u[0]||(u[0]=D=>o.value=!1)},{default:e.withCtx(()=>[e.createVNode(p,{"icon-class":n.iconAfter},null,8,["icon-class"])]),_:1})])])):e.createCommentVNode("",!0),e.renderSlot(t.$slots,"default",{},()=>[u[1]||(u[1]=e.createTextVNode("111222"))]),e.createElementVNode("footer",null,[e.renderSlot(t.$slots,"footer")])],2)):e.createCommentVNode("",!0)}}}},Symbol.toStringTag,{value:"Module"})),we=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"SwSection",props:{name:{type:String,default:""},class:{type:String,default:""},iconAfter:{type:String,default:""}},setup(a){const o=a;return(n,l)=>{const t=e.resolveComponent("svg-icon");return e.openBlock(),e.createElementBlock("section",{class:e.normalizeClass(o.class)},[e.createElementVNode("header",null,[e.renderSlot(n.$slots,"header",{},()=>[e.createTextVNode(e.toDisplayString(o.name)+" ",1),e.createVNode(t,{"icon-class":o.iconAfter},null,8,["icon-class"])])]),e.renderSlot(n.$slots,"default"),e.createElementVNode("footer",null,[e.renderSlot(n.$slots,"footer")])],2)}}}},Symbol.toStringTag,{value:"Module"})),be={key:0},O={__name:"SwSkeletonItem",props:{width:{type:String,default:"100"},class:{type:String,default:""},animate:{type:Boolean,default:!1},size:{type:String,default:""}},setup(a){const o=a,n=e.computed(()=>{let t=["sw-skeleton-item"];return o.size.length>0&&t.push("sw-"+o.size),o.animate&&t.push("sw-animate"),o.class.length>0&&t.push(o.class),t}),l=e.computed(()=>({width:o.width+"%"}));return(t,u)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(n.value),style:e.normalizeStyle(l.value)},[o.animate?(e.openBlock(),e.createElementBlock("div",be)):e.createCommentVNode("",!0)],6))}},ke=Object.freeze(Object.defineProperty({__proto__:null,default:O},Symbol.toStringTag,{value:"Module"})),Ee=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"SwSkeleton",props:{class:{type:String,default:""},visual:{type:Boolean,default:!1}},setup(a){const o=a;return(n,l)=>o.visual?e.renderSlot(n.$slots,"default",{key:0},()=>[l[0]||(l[0]=e.createTextVNode("1"))]):(e.openBlock(),e.createElementBlock("div",{key:1,class:e.normalizeClass(["sw-skeleton",o.class])},[e.renderSlot(n.$slots,"skeleton",{},()=>[e.createVNode(O,{animate:"",size:"small"})])],2))}}},Symbol.toStringTag,{value:"Module"})),De=["name","id"],Be=["for","data-onlabel","data-offlabel"],$e=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"SwSwitch",props:e.mergeModels({id:{type:String,default:"checkbox"},class:{type:String,default:""},name:{type:String,default:""},on:{type:String,default:""},off:{type:String,default:""},size:{type:String,default:""},checkbox:{type:Boolean,default:!1}},{modelValue:{},modelModifiers:{}}),emits:["update:modelValue"],setup(a){const o=e.useModel(a,"modelValue"),n=a,l=e.computed(()=>{let t=["sw-switch"];return n.size.length>0&&t.push("sw-"+n.size),n.checkbox&&t.push("sw-checkbox"),n.class.length>0&&t.push(n.class),t});return(t,u)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(l.value)},[e.withDirectives(e.createElementVNode("input",{type:"checkbox",name:n.name,class:"sw-control",id:n.id,"onUpdate:modelValue":u[0]||(u[0]=p=>o.value=p)},null,8,De),[[e.vModelCheckbox,o.value]]),e.createElementVNode("label",{for:n.id,class:"sw-label","data-onlabel":n.on,"data-offlabel":n.off},null,8,Be),e.renderSlot(t.$slots,"default")],2))}}},Symbol.toStringTag,{value:"Module"})),Ve=["onClick"],Me=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"SwTabs",props:e.mergeModels({name:{type:String},class:{type:String,default:""}},{modelValue:{},modelModifiers:{}}),emits:e.mergeModels(["tab-click"],["update:modelValue"]),setup(a,{emit:o}){e.ref(0);const n=e.ref([]),l=a,t=e.useModel(a,"modelValue"),u=o;return n.value=e.useSlots().default().filter(p=>p.type.__name==="SwTabsPane"),e.provide("activeTab",t),e.provide("tabs",n),(p,D)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass("sw-tabs "+l.class)},[e.createElementVNode("header",null,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(n.value,(B,m)=>(e.openBlock(),e.createElementBlock("span",{key:m,class:e.normalizeClass([{active:t.value===m}]),onClick:c=>{t.value=m,u("tab-click",m)}},e.toDisplayString(B.props.label||B.props.title),11,Ve))),128))]),e.renderSlot(p.$slots,"default")],2))}}},Symbol.toStringTag,{value:"Module"})),Te=["onClick"],Ne=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"SwTabsNew",props:e.mergeModels({name:{type:String},class:{type:String,default:""}},{modelValue:{},modelModifiers:{}}),emits:e.mergeModels(["tab-click"],["update:modelValue"]),setup(a,{emit:o}){e.ref(0);const n=e.ref([]),l=a,t=e.useModel(a,"modelValue"),u=o;return e.provide("activeTab",t),e.provide("tabs",n),e.provide("registerTab",p=>{n.value.push(p)}),(p,D)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass("sw-tabs "+l.class)},[e.createElementVNode("header",null,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(n.value,(B,m)=>(e.openBlock(),e.createElementBlock("span",{key:m,class:e.normalizeClass([{active:t.value===m}]),onClick:c=>{t.value=m,u("tab-click",m)}},e.toDisplayString(B.props.label||B.props.title),11,Te))),128))]),e.renderSlot(p.$slots,"default")],2))}}},Symbol.toStringTag,{value:"Module"})),Ce={key:0,class:"tab-content"},ze=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"SwTabsPane",props:{title:{type:String,required:!0}},setup(a){const o=a,n=e.inject("activeTab"),l=e.inject("tabs"),t=e.computed(()=>{const u=l.value.findIndex(p=>p.props.title===o.title);return n.value===u});return(u,p)=>t.value?(e.openBlock(),e.createElementBlock("div",Ce,[e.renderSlot(u.$slots,"default")])):e.createCommentVNode("",!0)}}},Symbol.toStringTag,{value:"Module"})),xe={key:0,class:"tab-content"},ve=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"SwTabsPaneNew",props:{label:{type:String,required:!0},title:{type:String}},setup(a){const o=a,n=e.inject("registerTab");if(!n)throw new Error("SwTabsPane must be used inside SwTabs");n({props:o});const l=e.inject("activeTab");if(!e.inject("tabs"))throw new Error("Tabs array is not provided by SwTabs");const u=e.inject("tabs").value.length-1;return(p,D)=>e.unref(l)===u?(e.openBlock(),e.createElementBlock("div",xe,[e.renderSlot(p.$slots,"default")])):e.createCommentVNode("",!0)}}},Symbol.toStringTag,{value:"Module"}));T.components=x,T.default=q,Object.defineProperties(T,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})});
|
|
1
|
+
(function(V,e){typeof exports=="object"&&typeof module<"u"?e(exports,require("vue")):typeof define=="function"&&define.amd?define(["exports","vue"],e):(V=typeof globalThis<"u"?globalThis:V||self,e(V["component-sw"]={},V.vue))})(this,function(V,e){"use strict";const v=Object.assign({"./components/SwButton.vue":()=>Promise.resolve().then(()=>H),"./components/SwCollapse.vue":()=>Promise.resolve().then(()=>W),"./components/SwDataPicker.vue":()=>Promise.resolve().then(()=>se),"./components/SwDropdown.vue":()=>Promise.resolve().then(()=>re),"./components/SwDropdownItem.vue":()=>Promise.resolve().then(()=>ie),"./components/SwFormItem.vue":()=>Promise.resolve().then(()=>ce),"./components/SwInput.vue":()=>Promise.resolve().then(()=>ye),"./components/SwMessage.vue":()=>Promise.resolve().then(()=>Se),"./components/SwSection.vue":()=>Promise.resolve().then(()=>we),"./components/SwSelect.vue":()=>Promise.resolve().then(()=>De),"./components/SwSkeleton.vue":()=>Promise.resolve().then(()=>Me),"./components/SwSkeletonItem.vue":()=>Promise.resolve().then(()=>Te),"./components/SwSwitch.vue":()=>Promise.resolve().then(()=>xe),"./components/SwTabs.vue":()=>Promise.resolve().then(()=>ze),"./components/SwTabsNew.vue":()=>Promise.resolve().then(()=>je),"./components/SwTabsPane.vue":()=>Promise.resolve().then(()=>Oe),"./components/SwTabsPaneNew.vue":()=>Promise.resolve().then(()=>Fe)}),z={};for(const a in v){const l=a.split("/").pop().replace(".vue","").replace(/-(\w)/g,(o,n)=>n.toUpperCase());z[l]=e.defineAsyncComponent(()=>v[a]())}const q={install(a){Object.keys(z).forEach(l=>{a.component(l,z[l]),console.log(l)})}},j={__name:"SwButton",props:{class:{type:String,default:""},size:{type:String,default:""},type:{type:String,default:""},round:{type:Boolean,default:!1},text:{type:Boolean,default:!1},link:{type:Boolean,default:!1},href:{type:String,default:""}},setup(a){const l=a,o=()=>{if(l.href.length>0){const t=document.createElement("a");t.setAttribute("href",l.href),t.setAttribute("target","_blank"),t.click()}},n=e.computed(()=>{let t=["sw-button"];return l.size.length>0&&t.push("sw-"+l.size),l.type.length>0&&t.push("sw-"+l.type),l.round&&t.push("sw-round"),l.text&&t.push("sw-text"),l.link&&t.push("sw-link"),l.class.length>0&&t.push(l.class),t});return(t,u)=>(e.openBlock(),e.createElementBlock("button",{class:e.normalizeClass(n.value),onClick:o},[e.renderSlot(t.$slots,"default")],2))}},H=Object.freeze(Object.defineProperty({__proto__:null,default:j},Symbol.toStringTag,{value:"Module"})),W=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"SwCollapse",props:{visual:{type:Boolean,default:!0}},setup(a){e.onMounted(()=>{n.value="0px"});const l=e.ref(null),o=a,n=e.computed(()=>{var t;return o.visual?((t=l.value)==null?void 0:t.scrollHeight)+"px":"0px"});return(t,u)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["sw-collapse",{open:o.visual}]),style:e.normalizeStyle({height:n.value}),ref_key:"collapse",ref:l},[e.renderSlot(t.$slots,"default")],6))}}},Symbol.toStringTag,{value:"Module"}));function U(a){return/^(https?:|mailto:|tel:)/.test(a)}function x(a,l){if(arguments.length===0||!a)return null;const o=l||"{Y}-{m}-{d} {G}:{i}:{s}";let n;typeof a=="object"?n=a:(typeof a=="string"&&(/^[0-9]+$/.test(a)?a=parseInt(a):a=a.replace(new RegExp(/-/gm),"/")),typeof a=="number"&&a.toString().length===10&&(a=a*1e3),n=new Date(a));const t="ru-RU",u={Y:n.getFullYear(),m:(n.getMonth()+1).toString().padStart(2,"0"),d:n.getDate(),dd:n.getDate().toString().padStart(2,"0"),G:n.getHours(),H:n.getHours().toString().padStart(2,"0"),i:n.getMinutes().toString().padStart(2,"0"),s:n.getSeconds().toString().padStart(2,"0"),D:new Intl.DateTimeFormat(t,{weekday:"short"}).format(n),F:new Intl.DateTimeFormat(t,{month:"long"}).format(n),M:new Intl.DateTimeFormat(t,{month:"short"}).format(n)};return o.replace(/{(dd|[YmdGHisDFM])+}/g,(p,k)=>u[k])}const G={class:"sw-data-picker"},X={class:"month_year"},J={class:"text"},K={class:"week"},Q={class:"month"},Z=["onClick"],ee={key:0},te={class:"month_year"},le={class:"text"},ne={class:"week"},oe={class:"month"},ae=["onClick"],se=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"SwDataPicker",props:{data:Object,limitation:{type:[Boolean,Array],default:()=>!1},range:{type:String,default:()=>"solid"}},emits:["input"],setup(a,{emit:l}){var I,F,Y,L,A,R;const o=e.ref(new Date),n=e.ref(new Date),t=a,u=l,p=e.ref(new Date().getFullYear()),k=e.ref(new Date().getMonth()),g=e.ref(new Date().getFullYear()),i=e.ref(new Date().getMonth()),m=e.ref([]),b=e.ref(0),_=e.ref(0),r=e.ref(-1),y=e.ref(-1),E=e.ref(navigator.languages||"ru"),S=/en|zh|ja|he/.test(E.value)?0:1,w=t.range==="range"?2:1,T=f=>{const c=f.split(f.match(/\D.*?\D?/));return c[0].length>2?c.join("-")+"T00:00:01":c.reverse().join("-")+"T00:00:01"};typeof((I=t.data)==null?void 0:I.startDate)<"u"&&((F=t.data)==null?void 0:F.startDate)!==null&&(o.value=new Date(T(t.data.startDate)),p.value=o.value.getFullYear(),i.value=o.value.getMonth()),typeof((Y=t.data)==null?void 0:Y.endDate)<"u"&&((L=t.data)==null?void 0:L.endDate)!==null&&(n.value=new Date(T(t.data.endDate)),g.value=n.value.getFullYear(),k.value=n.value.getMonth());const C=()=>{var s;let f=new Date(p.value,i.value,0);for(let d=f.getDate()-f.getDay()+S;d<=f.getDate()&&f.getDay()!==6+S;d++)b.value++,m.value.push({day:d,month:f.getMonth(),year:f.getFullYear(),class:[]});for(let d=1;d<=new Date(p.value,i.value+1,0).getDate();d++)b.value++,m.value.push({day:d,month:i.value,year:p.value,class:[]});if(t.range==="range"){_.value=new Date(p.value,i.value+2,0);for(let d=1;d<=_.value.getDate();d++)m.value.push({day:d,month:_.value.getMonth(),year:_.value.getFullYear(),class:[]})}let c=new Date(p.value,i.value+w,1);console.log(c.getDay());for(let d=1;d<=(7-c.getDay()+S)%7&&c.getDay()!==S;d++)m.value.push({day:d,month:c.getMonth(),year:c.getFullYear(),class:[]});typeof((s=t.data)==null?void 0:s.holiday)<"u"&&t.data.holiday.length!==0&&(t.data.holiday.preholidays.forEach(d=>{let h=d.split("-");const D=m.value.findIndex(B=>B.year==h[0]&&B.month+1==h[1]&&B.day==h[2]);D!==-1&&(m.value[D].class[0]="preholiday")}),t.data.holiday.holidays.forEach(d=>{let h=d.split("-");const D=m.value.findIndex(B=>B.year==h[0]&&B.month+1==h[1]&&B.day==h[2]);D!==-1&&(m.value[D].class[0]="weekend")}),t.data.holiday.holiday.forEach(d=>{let h=d.split("-");const D=m.value.findIndex(B=>B.year==h[0]&&B.month+1==h[1]&&B.day==h[2]);D!==-1&&(m.value[D].class[0]="holiday")}),t.data.holiday.nowork.forEach(d=>{let h=d.split("-");const D=m.value.findIndex(B=>B.year==h[0]&&B.month+1==h[1]&&B.day==h[2]);D!==-1&&(m.value[D].class[0]="nowork")}))},M=(f,c)=>{let s=f-c+1;for(let d=0;d<=f-c;d++)m.value[d+c].class[0]==="holiday"&&s--;return s},N=(f,c)=>{console.log(c);const s=x(new Date(f.year,f.month,f.day),"{dd}.{m}.{Y}");if(t.range==="range")if(console.log(r.value),y.value!==-1){if(y.value<=r.value)for(let d=y.value;d<=r.value;d++)m.value[d].class[1]="";else for(let d=r.value;d<=y.value;d++)m.value[d].class[1]="";r.value=c,y.value=-1,m.value[c].class[1]="active"}else if(r.value!==-1){if(y.value=c,y.value>=r.value)for(let h=r.value+1;h<c;h++)m.value[h].class[1]="select";else for(let h=c+1;h<r.value;h++)m.value[h].class[1]="select";m.value[c].class[1]="active";let d=x(new Date(m.value[r.value].year,m.value[r.value].month,m.value[r.value].day),"{dd}.{m}.{Y}");r.value>c?u("input",{dateStart:s,dateEnd:d,count:M(r.value,c)}):u("input",{dateStart:d,dateEnd:s,count:M(c,r.value)})}else r.value=c,m.value[c].class[1]="active";else r.value!==-1&&(m.value[r.value].class[1]=""),r.value=c,m.value[c].class[1]="active",u("input",{dateStart:s,count:1})};if(C(),typeof((A=t.data)==null?void 0:A.startDate)<"u"&&(r.value=m.value.findIndex(f=>f.day===o.value.getDate()&&f.month===i.value&&f.year===p.value),m.value[r.value].class[1]="active"),typeof((R=t.data)==null?void 0:R.endDate)<"u"&&t.range==="range"){y.value=m.value.findIndex(f=>f.day===n.value.getDate()&&f.month===k.value&&f.year===g.value),m.value[y.value].class[1]="active";for(let f=r.value+1;f<y.value;f++)m.value[f].class[1]="select"}const $=(f,c)=>{Ye(f,c)&&(m.value=[],b.value=0,o.value=new Date(f,c,1),p.value=o.value.getFullYear(),i.value=o.value.getMonth(),C())},Ye=(f,c)=>{if(!t.limitation)return!0;if(t.limitation[0].dateStart){console.log(t.limitation[0].dateStart);let s=t.limitation[0].dateStart.split(t.limitation[0].dateStart.match(/\D.*?\D?/));if(s[0].length>2&&s.reverse(),parseInt(s[2])>f||parseInt(s[2])===f&&parseInt(s[1])>c+1)return!1}if(t.limitation[t.limitation.length-1].dateEnd){console.log(t.limitation[t.limitation.length-1].dateEnd);let s=t.limitation[t.limitation.length-1].dateEnd.split(t.limitation[t.limitation.length-1].dateEnd.match(/\D.*?\D?/));if(s[0].length>2&&s.reverse(),parseInt(s[2])<f||parseInt(s[2])===f&&parseInt(s[1])<c+w)return!1}return!0};return(f,c)=>(e.openBlock(),e.createElementBlock("div",G,[e.createElementVNode("div",null,[e.createElementVNode("p",X,[e.createElementVNode("span",null,[e.createElementVNode("button",{onClick:c[0]||(c[0]=e.withModifiers(s=>$(p.value-1,i.value),["prevent"]))},"«"),e.createElementVNode("button",{onClick:c[1]||(c[1]=e.withModifiers(s=>$(p.value,i.value-1),["prevent"]))},"‹")]),e.createElementVNode("span",J,[e.createElementVNode("button",null,e.toDisplayString(p.value),1),e.createElementVNode("button",null,e.toDisplayString(e.unref(x)(o.value.setMonth(i.value),"{F}")),1)]),e.createElementVNode("span",null,[e.createElementVNode("button",{onClick:c[2]||(c[2]=e.withModifiers(s=>$(p.value,i.value+1),["prevent"]))},"›"),e.createElementVNode("button",{onClick:c[3]||(c[3]=e.withModifiers(s=>$(p.value+1,i.value),["prevent"]))},"»")])]),e.createElementVNode("div",K,[(e.openBlock(),e.createElementBlock(e.Fragment,null,e.renderList(7,(s,d)=>e.createElementVNode("button",{key:d,class:"disabled"},e.toDisplayString(e.unref(x)(new Date(1970,1,s+e.unref(S)),"{D}")),1)),64))]),e.createElementVNode("div",Q,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(m.value,(s,d)=>{var h,D;return e.openBlock(),e.createElementBlock(e.Fragment,{key:d},[d<b.value+(7-new Date(p.value,i.value+1,1).getDay()+e.unref(S))%7?(e.openBlock(),e.createElementBlock("button",{key:0,class:e.normalizeClass(s.month===i.value&&(!t.limitation||new Date(s.year,s.month,s.day+1).getTime()>new Date(T((h=t.limitation[0])==null?void 0:h.dateStart)).getTime()&&new Date(s.year,s.month,s.day).getTime()<new Date(T((D=t.limitation[0])==null?void 0:D.dateEnd)).getTime())?s.class:"disabled"),onClick:()=>{s.month===i.value&&N(s,d)}},e.toDisplayString(s.day),11,Z)):e.createCommentVNode("",!0)],64)}),128))])]),t.range==="range"?(e.openBlock(),e.createElementBlock("div",ee,[e.createElementVNode("p",te,[e.createElementVNode("span",null,[e.createElementVNode("button",{onClick:c[4]||(c[4]=s=>$(p.value-1,i.value))},"«"),e.createElementVNode("button",{onClick:c[5]||(c[5]=s=>$(p.value,i.value-1))},"‹")]),e.createElementVNode("span",le,[e.createElementVNode("button",null,e.toDisplayString(new Date(p.value,i.value+1).getFullYear()),1),e.createElementVNode("button",null,e.toDisplayString(e.unref(x)(o.value.setMonth(i.value+1),"{F}")),1)]),e.createElementVNode("span",null,[e.createElementVNode("button",{onClick:c[6]||(c[6]=s=>$(p.value,i.value+1))},"›"),e.createElementVNode("button",{onClick:c[7]||(c[7]=s=>$(p.value+1,i.value))},"»")])]),e.createElementVNode("div",ne,[(e.openBlock(),e.createElementBlock(e.Fragment,null,e.renderList(7,(s,d)=>e.createElementVNode("button",{key:d,class:"disabled"},e.toDisplayString(e.unref(x)(new Date(1970,1,s+e.unref(S)),"{D}")),1)),64))]),e.createElementVNode("div",oe,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(m.value,(s,d)=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:d},[d>=b.value-(7+new Date(p.value,i.value+1,1).getDay()-e.unref(S))%7?(e.openBlock(),e.createElementBlock("button",{key:0,class:e.normalizeClass(s.month===_.value.getMonth()&&(!t.limitation||new Date(s.year,s.month,s.day+1).getTime()>new Date(T(t.limitation[0].dateStart)).getTime()&&new Date(s.year,s.month,s.day).getTime()<new Date(T(t.limitation[0].dateEnd)).getTime())?s.class:"disabled"),onClick:()=>{s.month===_.value.getMonth()&&N(s,d)}},e.toDisplayString(s.day),11,ae)):e.createCommentVNode("",!0)],64))),128))])])):e.createCommentVNode("",!0)]))}}},Symbol.toStringTag,{value:"Module"})),re=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"SwDropdown",props:{class:{type:String,default:""},size:{type:String,default:""},type:{type:String,default:""},trigger:{type:String,default:"click"},placement:{type:String,default:"bottom-left"},maxWidth:{type:Number,default:0},manual:{type:Boolean,default:!1}},setup(a){const l=a,o=e.ref(null),n=e.ref(null),t=e.ref({}),u=e.computed(()=>{let b=["sw-dropdown"];return l.size.length>0&&b.push("sw-"+l.size),l.type.length>0&&b.push("sw-"+l.type),b}),p=async()=>{if(await e.nextTick(),!n.value)return;const b=window.pageYOffset||document.documentElement.scrollTop,_=window.pageXOffset||document.documentElement.scrollLeft;document.body.style.position="fixed",document.body.style.top=`-${b}px`,document.body.style.left=`-${_}px`,n.value.focus(),n.value.addEventListener("blur",()=>l.manual=!1),document.body.style.position="",document.body.style.top="",document.body.style.left="",document.documentElement.scrollTop=b,document.documentElement.scrollLeft=_;const r=o.value.getBoundingClientRect(),y=n.value.offsetHeight,E=n.value.offsetWidth;console.log("popupHeight",y),console.log("popupWidth",E);let S=r.left+r.width/2+_,w=r.top+r.height/2+b;const[T,C]=l.placement.split("-",2);switch(console.log(l.placement),T){case"bottom":w=w+r.height/2+8;break;case"top":w=w-r.height/2-8-y;break;case"left":S=S-E-r.width/2-8,w=w-y/2;break;case"right":S=S+r.width/2+8,w=w-y/2;break}switch(C){case"left":S=S-E+r.width/2;break;case"right":S=S+r.width/2;break}S<0&&(S=0),w<0&&(w=0),t.value={position:"absolute",top:`${w}px`,left:`${S}px`,maxWidth:l.maxWidth===0?"":`${l.maxWidth}px`}},k=async()=>{l.trigger==="click"&&(l.manual=!l.manual),l.manual&&await p()},g=async()=>{l.trigger==="hover"&&(l.manual=!l.manual),l.manual&&await p()},i=async()=>{l.trigger==="context"&&(l.manual=!l.manual),l.manual&&await p()},m=()=>{l.manual&&p()};return e.onMounted(()=>{window.addEventListener("resize",m)}),e.onUnmounted(()=>{window.removeEventListener("resize",m)}),(b,_)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(u.value),onClick:_[0]||(_[0]=e.withModifiers(r=>k(),["stop"])),onMouseover:_[1]||(_[1]=e.withModifiers(r=>g(),["stop"])),onMouseleave:_[2]||(_[2]=e.withModifiers(r=>g(),["stop"])),onContextmenu:_[3]||(_[3]=e.withModifiers(r=>i(),["stop"])),ref_key:"dropdownRef",ref:o},[e.renderSlot(b.$slots,"default"),(e.openBlock(),e.createBlock(e.Teleport,{to:"body"},[l.manual?(e.openBlock(),e.createElementBlock("ul",{key:0,ref_key:"popupRef",ref:n,class:e.normalizeClass(["sw-dropdown-popup",l.class]),style:e.normalizeStyle(t.value),tabindex:"-1"},[e.renderSlot(b.$slots,"dropdown")],6)):e.createCommentVNode("",!0)]))],34))}}},Symbol.toStringTag,{value:"Module"})),ie=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"SwDropdownItem",props:{class:{type:String,default:""},size:{type:String,default:""},type:{type:String,default:""},iconBefore:{type:String,default:""}},setup(a){const l=a,o=e.computed(()=>{let n=["sw-dropdown-item"];return l.size.length>0&&n.push("sw-"+l.size),l.type.length>0&&n.push("sw-"+l.type),l.class.length>0&&n.push(l.class),n});return(n,t)=>{const u=e.resolveComponent("svg-icon");return e.openBlock(),e.createElementBlock("li",{class:e.normalizeClass(o.value)},[e.createVNode(u,{"icon-class":a.iconBefore},null,8,["icon-class"]),e.renderSlot(n.$slots,"default")],2)}}}},Symbol.toStringTag,{value:"Module"})),ce=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"SwFormItem",props:{class:{type:String,default:""},type:{type:String,default:""}},setup(a){const l=a,o=e.computed(()=>{let n=["sw-form-item"];return l.type.length>0&&n.push("sw-"+l.type),l.class.length>0&&n.push(l.class),n});return(n,t)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(o.value)},[e.renderSlot(n.$slots,"default")],2))}}},Symbol.toStringTag,{value:"Module"})),de=(a,l)=>{const o=a.__vccOpts||a;for(const[n,t]of l)o[n]=t;return o},pe={name:"SvgIcon",props:{prefix:{type:String,default:"icon"},iconClass:{type:String,required:!0},className:{type:String,default:""}},computed:{isExt(){return U(this.iconClass)}}},me=["href"];function ue(a,l,o,n,t,u){return u.isExt?(e.openBlock(),e.createElementBlock("div",e.mergeProps({key:0,style:"mask: url("+o.iconClass+") no-repeat 50% 50%;",class:"svg-external-icon svg-icon"},a.$attrs),null,16)):(e.openBlock(),e.createElementBlock("svg",e.mergeProps({key:1,class:"svg-icon "+o.className,"aria-hidden":"true"},a.$attrs),[e.createElementVNode("use",{href:"#"+o.prefix+"-"+o.iconClass},null,8,me)],16))}const P=de(pe,[["render",ue]]),fe=["for"],ge={key:0,title:"Это поле обязательно для заполнения."},he=["required","placeholder","type","id","name"],ye=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"SwInput",props:e.mergeModels({before:{type:String,default:""},after:{type:String,default:""},placeholder:{type:String,default:""},label:{type:String,default:""},name:{type:String,required:!0},class:{type:String,default:""},size:{type:String,default:""},type:{type:String,default:"text"},required:{type:Boolean,default:!1}},{modelValue:{},modelModifiers:{}}),emits:e.mergeModels(["suffix","prefix"],["update:modelValue"]),setup(a,{emit:l}){var _;const o=e.useModel(a,"modelValue"),n=a,t=e.ref(null),u=l,p=r=>{console.log(r),r.target.setSelectionRange(o.value.length,o.value.length),t.value!==null&&(t.value.style.top="-.6em")},k=r=>{var y;((y=o.value)==null?void 0:y.length)===0&&t.value!==null&&t.value.removeAttribute("style")};((_=o.value)==null?void 0:_.length)>0&&t.value!==null&&(t.value.style.top="-.6em");const g=()=>{u("suffix")},i=()=>{u("prefix")},m=e.computed(()=>{let r=["sw-input"];return n.size.length>0&&r.push("sw-"+n.size),n.class.length>0&&r.push(n.class),r});e.watch(o,(r,y)=>{n.type==="phone"&&(o.value=b(r,y))});const b=(r,y)=>{if(/^\+[0-9]\s/.test(y)&&r.length===2||/^\+0\s/.test(r))return"";const E=r;if(typeof E>"u"||E.length===0)return E;const S="+0 (___) ___-__-__";let w=0;const T=S.replace(/\D/g,""),C=E.replace(/\D/g,"");let M=S.replace(/[_\d]/g,$=>w<C.length?C.charAt(w++)||T.charAt(w):$);w=M.indexOf("_"),w!==-1&&(w=w<5?3:w,M=M.slice(0,w));let N=S.slice(0,E.length).replace(/_+/g,$=>`\\d{1,${$.length}}`).replace(/[+()]/g,"\\$&");if(N=new RegExp(`^${N}$`),M=M.replace(/[-—]$|(\) )$/g,""),!N.test(E)||E.length<5)return M};return(r,y)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(m.value)},[n.before.length>0?(e.openBlock(),e.createBlock(P,{key:0,"icon-class":n.before,onClick:i},null,8,["icon-class"])):e.renderSlot(r.$slots,"prefix",{key:1}),n.label.length>0?(e.openBlock(),e.createElementBlock("label",{key:2,for:n.name,ref_key:"lab",ref:t},[e.createTextVNode(e.toDisplayString(n.label),1),n.required?(e.openBlock(),e.createElementBlock("span",ge,"*")):e.createCommentVNode("",!0)],8,fe)):e.createCommentVNode("",!0),e.withDirectives(e.createElementVNode("input",{"onUpdate:modelValue":y[0]||(y[0]=E=>o.value=E),required:n.required,placeholder:n.required&&n.label.length===0?n.placeholder+"*":n.placeholder,type:n.type,id:n.name,name:n.name,size:"60",onFocus:p,onBlur:k,maxlength:"128"},null,40,he),[[e.vModelDynamic,o.value]]),n.after.length>0?(e.openBlock(),e.createBlock(P,{key:3,"icon-class":n.after,onClick:g},null,8,["icon-class"])):e.renderSlot(r.$slots,"suffix",{key:4})],2))}}},Symbol.toStringTag,{value:"Module"})),_e={key:0},Se=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"SwMessage",props:e.mergeModels({name:{type:String,default:""},class:{type:String,default:""},iconAfter:{type:String,default:""}},{modelValue:{},modelModifiers:{}}),emits:["update:modelValue"],setup(a){const l=e.useModel(a,"modelValue"),o=a,n=e.ref(null);return(t,u)=>{const p=e.resolveComponent("svg-icon");return l.value?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(["sw-message",o.class]),ref_key:"messageRef",ref:n},[o.name.length>0?(e.openBlock(),e.createElementBlock("header",_e,[e.renderSlot(t.$slots,"header",{},()=>[e.createTextVNode(e.toDisplayString(o.name)+" ",1),e.createVNode(j,{link:"",type:"primary",onClick:u[0]||(u[0]=k=>l.value=!1)},{default:e.withCtx(()=>[e.createVNode(p,{"icon-class":o.iconAfter},null,8,["icon-class"])]),_:1})])])):e.createCommentVNode("",!0),e.renderSlot(t.$slots,"default",{},()=>[u[1]||(u[1]=e.createTextVNode("111222"))]),e.createElementVNode("footer",null,[e.renderSlot(t.$slots,"footer")])],2)):e.createCommentVNode("",!0)}}}},Symbol.toStringTag,{value:"Module"})),we=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"SwSection",props:{name:{type:String,default:""},class:{type:String,default:""},iconAfter:{type:String,default:""}},setup(a){const l=a;return(o,n)=>{const t=e.resolveComponent("svg-icon");return e.openBlock(),e.createElementBlock("section",{class:e.normalizeClass(l.class)},[e.createElementVNode("header",null,[e.renderSlot(o.$slots,"header",{},()=>[e.createTextVNode(e.toDisplayString(l.name)+" ",1),e.createVNode(t,{"icon-class":l.iconAfter},null,8,["icon-class"])])]),e.renderSlot(o.$slots,"default"),e.createElementVNode("footer",null,[e.renderSlot(o.$slots,"footer")])],2)}}}},Symbol.toStringTag,{value:"Module"})),be={class:"popup"},ke={class:"wrapper"},Ee={class:"scrollbar"},Be=["onClick"],De=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"SwSelect",props:e.mergeModels({name:{type:String,default:""},class:{type:String,default:""},placeholder:{type:String,default:""},token:{type:String,default:""}},{modelValue:{},modelModifiers:{}}),emits:["update:modelValue"],setup(a){const l=e.ref({fullText:""}),o=e.ref(!1),n=e.ref([]),t=e.useModel(a,"modelValue"),u=a;e.watch(t.text,g=>{g.length>3&&(l.value.fullText=g)}),e.watch(l.value.fullText,(g,i)=>{o.value=g.length>3&&g.length>i.length,g.length>3&&p()});const p=()=>{let g="https://suggestions.dadata.ru/suggestions/api/4_1/rs/suggest/address";console.log(l.value.fullText),axios.post(g,{query:l.value.fullText},{headers:{"Content-Type":"application/json",Accept:"application/json",Authorization:"Token "+u.token}}).then(i=>{console.log(i.data.suggestions),n.value=i.data.suggestions,n.value.length===1&&k(n.value[0])}).catch(i=>{console.log(i)})},k=g=>{l.value.fullText=g.value,o.value=!1;const i={};i.text=g.value,i.coords=[Number(g.data.geo_lat),Number(g.data.geo_lon)],i.suggestion=g.data,t.value=i};return(g,i)=>{const m=e.resolveComponent("sw-input");return e.openBlock(),e.createElementBlock("div",be,[e.createVNode(m,{size:"large",modelValue:l.value.fullText,"onUpdate:modelValue":i[0]||(i[0]=b=>l.value.fullText=b),placeholder:a.placeholder},null,8,["modelValue","placeholder"]),e.withDirectives(e.createElementVNode("div",ke,[e.createElementVNode("ul",Ee,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(n.value,(b,_)=>(e.openBlock(),e.createElementBlock("li",{tabindex:"1",key:_,onClick:r=>k(b)},e.toDisplayString(b.value),9,Be))),128))])],512),[[e.vShow,o.value]])])}}}},Symbol.toStringTag,{value:"Module"})),$e={key:0},O={__name:"SwSkeletonItem",props:{width:{type:String,default:"100"},class:{type:String,default:""},animate:{type:Boolean,default:!1},size:{type:String,default:""}},setup(a){const l=a,o=e.computed(()=>{let t=["sw-skeleton-item"];return l.size.length>0&&t.push("sw-"+l.size),l.animate&&t.push("sw-animate"),l.class.length>0&&t.push(l.class),t}),n=e.computed(()=>({width:l.width+"%"}));return(t,u)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(o.value),style:e.normalizeStyle(n.value)},[l.animate?(e.openBlock(),e.createElementBlock("div",$e)):e.createCommentVNode("",!0)],6))}},Te=Object.freeze(Object.defineProperty({__proto__:null,default:O},Symbol.toStringTag,{value:"Module"})),Me=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"SwSkeleton",props:{class:{type:String,default:""},visual:{type:Boolean,default:!1}},setup(a){const l=a;return(o,n)=>l.visual?e.renderSlot(o.$slots,"default",{key:0},()=>[n[0]||(n[0]=e.createTextVNode("1"))]):(e.openBlock(),e.createElementBlock("div",{key:1,class:e.normalizeClass(["sw-skeleton",l.class])},[e.renderSlot(o.$slots,"skeleton",{},()=>[e.createVNode(O,{animate:"",size:"small"})])],2))}}},Symbol.toStringTag,{value:"Module"})),Ve=["name","id"],Ce=["for","data-onlabel","data-offlabel"],xe=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"SwSwitch",props:e.mergeModels({id:{type:String,default:"checkbox"},class:{type:String,default:""},name:{type:String,default:""},on:{type:String,default:""},off:{type:String,default:""},size:{type:String,default:""},checkbox:{type:Boolean,default:!1}},{modelValue:{},modelModifiers:{}}),emits:["update:modelValue"],setup(a){const l=e.useModel(a,"modelValue"),o=a,n=e.computed(()=>{let t=["sw-switch"];return o.size.length>0&&t.push("sw-"+o.size),o.checkbox&&t.push("sw-checkbox"),o.class.length>0&&t.push(o.class),t});return(t,u)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(n.value)},[e.withDirectives(e.createElementVNode("input",{type:"checkbox",name:o.name,class:"sw-control",id:o.id,"onUpdate:modelValue":u[0]||(u[0]=p=>l.value=p)},null,8,Ve),[[e.vModelCheckbox,l.value]]),e.createElementVNode("label",{for:o.id,class:"sw-label","data-onlabel":o.on,"data-offlabel":o.off},null,8,Ce),e.renderSlot(t.$slots,"default")],2))}}},Symbol.toStringTag,{value:"Module"})),Ne=["onClick"],ze=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"SwTabs",props:e.mergeModels({name:{type:String},class:{type:String,default:""}},{modelValue:{},modelModifiers:{}}),emits:e.mergeModels(["tab-click"],["update:modelValue"]),setup(a,{emit:l}){e.ref(0);const o=e.ref([]),n=a,t=e.useModel(a,"modelValue"),u=l;return o.value=e.useSlots().default().filter(p=>p.type.__name==="SwTabsPane"),e.provide("activeTab",t),e.provide("tabs",o),(p,k)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass("sw-tabs "+n.class)},[e.createElementVNode("header",null,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(o.value,(g,i)=>(e.openBlock(),e.createElementBlock("span",{key:i,class:e.normalizeClass([{active:t.value===i}]),onClick:m=>{t.value=i,u("tab-click",i)}},e.toDisplayString(g.props.label||g.props.title),11,Ne))),128))]),e.renderSlot(p.$slots,"default")],2))}}},Symbol.toStringTag,{value:"Module"})),ve=["onClick"],je=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"SwTabsNew",props:e.mergeModels({name:{type:String},class:{type:String,default:""}},{modelValue:{},modelModifiers:{}}),emits:e.mergeModels(["tab-click"],["update:modelValue"]),setup(a,{emit:l}){e.ref(0);const o=e.ref([]),n=a,t=e.useModel(a,"modelValue"),u=l;return e.provide("activeTab",t),e.provide("tabs",o),e.provide("registerTab",p=>{o.value.push(p)}),(p,k)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass("sw-tabs "+n.class)},[e.createElementVNode("header",null,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(o.value,(g,i)=>(e.openBlock(),e.createElementBlock("span",{key:i,class:e.normalizeClass([{active:t.value===i}]),onClick:m=>{t.value=i,u("tab-click",i)}},e.toDisplayString(g.props.label||g.props.title),11,ve))),128))]),e.renderSlot(p.$slots,"default")],2))}}},Symbol.toStringTag,{value:"Module"})),Pe={key:0,class:"tab-content"},Oe=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"SwTabsPane",props:{title:{type:String,required:!0}},setup(a){const l=a,o=e.inject("activeTab"),n=e.inject("tabs"),t=e.computed(()=>{const u=n.value.findIndex(p=>p.props.title===l.title);return o.value===u});return(u,p)=>t.value?(e.openBlock(),e.createElementBlock("div",Pe,[e.renderSlot(u.$slots,"default")])):e.createCommentVNode("",!0)}}},Symbol.toStringTag,{value:"Module"})),Ie={key:0,class:"tab-content"},Fe=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"SwTabsPaneNew",props:{label:{type:String,required:!0},title:{type:String}},setup(a){const l=a,o=e.inject("registerTab");if(!o)throw new Error("SwTabsPane must be used inside SwTabs");o({props:l});const n=e.inject("activeTab");if(!e.inject("tabs"))throw new Error("Tabs array is not provided by SwTabs");const u=e.inject("tabs").value.length-1;return(p,k)=>e.unref(n)===u?(e.openBlock(),e.createElementBlock("div",Ie,[e.renderSlot(p.$slots,"default")])):e.createCommentVNode("",!0)}}},Symbol.toStringTag,{value:"Module"}));V.components=z,V.default=q,Object.defineProperties(V,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})});
|
package/dist/index.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { defineAsyncComponent as m } from "vue";
|
|
2
|
-
const n = /* @__PURE__ */ Object.assign({ "./components/SwButton.vue": () => import("./SwButton-0uPLNlAn.js"), "./components/SwCollapse.vue": () => import("./SwCollapse-DxAVOWF1.js"), "./components/SwDataPicker.vue": () => import("./SwDataPicker-Zxy4Lv1v.js"), "./components/SwDropdown.vue": () => import("./SwDropdown-
|
|
2
|
+
const n = /* @__PURE__ */ Object.assign({ "./components/SwButton.vue": () => import("./SwButton-0uPLNlAn.js"), "./components/SwCollapse.vue": () => import("./SwCollapse-DxAVOWF1.js"), "./components/SwDataPicker.vue": () => import("./SwDataPicker-Zxy4Lv1v.js"), "./components/SwDropdown.vue": () => import("./SwDropdown-BxCvLKO7.js"), "./components/SwDropdownItem.vue": () => import("./SwDropdownItem-C3_wJ1DL.js"), "./components/SwFormItem.vue": () => import("./SwFormItem-CfnEis1u.js"), "./components/SwInput.vue": () => import("./SwInput-BZa23F_K.js"), "./components/SwMessage.vue": () => import("./SwMessage-BB2yKYsR.js"), "./components/SwSection.vue": () => import("./SwSection-CaY8OFmf.js"), "./components/SwSelect.vue": () => import("./SwSelect-0vcmQ8qv.js"), "./components/SwSkeleton.vue": () => import("./SwSkeleton-DWILNFfF.js"), "./components/SwSkeletonItem.vue": () => import("./SwSkeletonItem-CU7LvihY.js"), "./components/SwSwitch.vue": () => import("./SwSwitch-BxSLWRTx.js"), "./components/SwTabs.vue": () => import("./SwTabs-DgvDpw7u.js"), "./components/SwTabsNew.vue": () => import("./SwTabsNew-Dr5Vyz6M.js"), "./components/SwTabsPane.vue": () => import("./SwTabsPane-BUUmFjh7.js"), "./components/SwTabsPaneNew.vue": () => import("./SwTabsPaneNew-DFPu-sRT.js") }), t = {};
|
|
3
3
|
for (const e in n) {
|
|
4
4
|
const o = e.split("/").pop().replace(".vue", "").replace(/-(\w)/g, (s, p) => p.toUpperCase());
|
|
5
5
|
t[o] = m(() => n[e]());
|
package/package.json
CHANGED
|
@@ -1,87 +0,0 @@
|
|
|
1
|
-
import { ref as d, computed as z, onMounted as E, onUnmounted as $, createElementBlock as h, openBlock as u, withModifiers as R, normalizeClass as w, renderSlot as g, createBlock as W, Teleport as L, createCommentVNode as T, normalizeStyle as B, nextTick as C } from "vue";
|
|
2
|
-
const H = {
|
|
3
|
-
__name: "SwDropdown",
|
|
4
|
-
props: {
|
|
5
|
-
class: { type: String, default: "" },
|
|
6
|
-
size: { type: String, default: "" },
|
|
7
|
-
type: { type: String, default: "" },
|
|
8
|
-
trigger: { type: String, default: "click" },
|
|
9
|
-
placement: { type: String, default: "bottom-left" },
|
|
10
|
-
maxWidth: { type: Number, default: 0 }
|
|
11
|
-
},
|
|
12
|
-
setup(v) {
|
|
13
|
-
const n = v, s = d(!1), r = d(null), p = d(null), f = d({}), b = z(
|
|
14
|
-
() => {
|
|
15
|
-
let l = ["sw-dropdown"];
|
|
16
|
-
return n.size.length > 0 && l.push("sw-" + n.size), n.type.length > 0 && l.push("sw-" + n.type), l;
|
|
17
|
-
}
|
|
18
|
-
), m = async () => {
|
|
19
|
-
if (await C(), !p.value) return;
|
|
20
|
-
const l = window.pageYOffset || document.documentElement.scrollTop, i = window.pageXOffset || document.documentElement.scrollLeft;
|
|
21
|
-
document.body.style.position = "fixed", document.body.style.top = `-${l}px`, document.body.style.left = `-${i}px`, p.value.focus(), p.value.addEventListener("blur", () => s.value = !1), document.body.style.position = "", document.body.style.top = "", document.body.style.left = "", document.documentElement.scrollTop = l, document.documentElement.scrollLeft = i;
|
|
22
|
-
const e = r.value.getBoundingClientRect(), a = p.value.offsetHeight, c = p.value.offsetWidth;
|
|
23
|
-
console.log("popupHeight", a), console.log("popupWidth", c);
|
|
24
|
-
let t = e.left + e.width / 2 + i, o = e.top + e.height / 2 + l;
|
|
25
|
-
const [x, S] = n.placement.split("-", 2);
|
|
26
|
-
switch (console.log(n.placement), x) {
|
|
27
|
-
case "bottom":
|
|
28
|
-
o = o + e.height / 2 + 8;
|
|
29
|
-
break;
|
|
30
|
-
case "top":
|
|
31
|
-
o = o - e.height / 2 - 8 - a;
|
|
32
|
-
break;
|
|
33
|
-
case "left":
|
|
34
|
-
t = t - c - e.width / 2 - 8, o = o - a / 2;
|
|
35
|
-
break;
|
|
36
|
-
case "right":
|
|
37
|
-
t = t + e.width / 2 + 8, o = o - a / 2;
|
|
38
|
-
break;
|
|
39
|
-
}
|
|
40
|
-
switch (S) {
|
|
41
|
-
case "left":
|
|
42
|
-
t = t - c + e.width / 2;
|
|
43
|
-
break;
|
|
44
|
-
case "right":
|
|
45
|
-
t = t + e.width / 2;
|
|
46
|
-
break;
|
|
47
|
-
}
|
|
48
|
-
t < 0 && (t = 0), o < 0 && (o = 0), f.value = {
|
|
49
|
-
position: "absolute",
|
|
50
|
-
top: `${o}px`,
|
|
51
|
-
left: `${t}px`,
|
|
52
|
-
maxWidth: n.maxWidth === 0 ? "" : `${n.maxWidth}px`
|
|
53
|
-
};
|
|
54
|
-
}, k = async () => {
|
|
55
|
-
s.value = !s.value, s.value && await m();
|
|
56
|
-
}, y = () => {
|
|
57
|
-
s.value && m();
|
|
58
|
-
};
|
|
59
|
-
return E(() => {
|
|
60
|
-
window.addEventListener("resize", y);
|
|
61
|
-
}), $(() => {
|
|
62
|
-
window.removeEventListener("resize", y);
|
|
63
|
-
}), (l, i) => (u(), h("div", {
|
|
64
|
-
class: w(b.value),
|
|
65
|
-
onClick: i[0] || (i[0] = R((e) => k(), ["stop"])),
|
|
66
|
-
ref_key: "dropdownRef",
|
|
67
|
-
ref: r
|
|
68
|
-
}, [
|
|
69
|
-
g(l.$slots, "default"),
|
|
70
|
-
(u(), W(L, { to: "body" }, [
|
|
71
|
-
s.value ? (u(), h("ul", {
|
|
72
|
-
key: 0,
|
|
73
|
-
ref_key: "popupRef",
|
|
74
|
-
ref: p,
|
|
75
|
-
class: w(["sw-dropdown-popup", n.class]),
|
|
76
|
-
style: B(f.value),
|
|
77
|
-
tabindex: "-1"
|
|
78
|
-
}, [
|
|
79
|
-
g(l.$slots, "dropdown")
|
|
80
|
-
], 6)) : T("", !0)
|
|
81
|
-
]))
|
|
82
|
-
], 2));
|
|
83
|
-
}
|
|
84
|
-
};
|
|
85
|
-
export {
|
|
86
|
-
H as default
|
|
87
|
-
};
|