@studio-west/component-sw 0.4.7 → 0.4.9
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +34 -2
- package/dist/{SwDatePicker-CJKPw__p.js → SwDatePicker-Bctnaq6S.js} +1 -1
- package/dist/{SwInput-D-wlfB0T.js → SwInput-D7fFC6uj.js} +1 -1
- package/dist/{SwTabs-DgvDpw7u.js → SwTabs-CC6o0zMR.js} +8 -8
- package/dist/component-sw.css +1 -1
- package/dist/{index-CdPvP8hd.js → index-DvwgKr20.js} +1 -1
- package/dist/index.cjs +1 -1
- package/dist/index.js +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
Находится в разработке !
|
|
2
2
|
# Component SW - UI компоненты с поддержкой светлой и темной системной темы
|
|
3
3
|
|
|
4
|
-
Библиотека компонентов `Component SW` предоставляет набор готовых UI-компонентов на vue 3 для быстрой разработки интерфейсов. Каждый компонент имеет набор свойств, которые можно настраивать для достижения желаемого поведения и внешнего вида. Имеет поддержку светлой и темной системной темы.
|
|
4
|
+
Библиотека компонентов `Component SW` предоставляет набор готовых UI-компонентов на vue 3 для быстрой разработки интерфейсов. Каждый компонент имеет набор свойств, которые можно настраивать для достижения желаемого поведения и внешнего вида. Имеет поддержку светлой и темной системной темы. А также имеет поддержку мобильных систем разработки
|
|
5
5
|
|
|
6
6
|
---
|
|
7
7
|
|
|
@@ -416,7 +416,8 @@ header - клик по всему Header
|
|
|
416
416
|
|
|
417
417
|
## SwSkeleton
|
|
418
418
|
|
|
419
|
-
Компонент SwSkeleton используется для анимации загрузки данных, выступая оболочкой компонента SwSkeletonItem
|
|
419
|
+
Компонент SwSkeleton используется для анимации загрузки данных, выступая оболочкой компонента SwSkeletonItem
|
|
420
|
+
или пользовательского компонента при использовании слота #skeleton, по умолчанию в слот #skeleton добавлен 1 SwSkeletonItem с базовыми настройками
|
|
420
421
|
|
|
421
422
|
### Свойства / Properties
|
|
422
423
|
|
|
@@ -443,6 +444,37 @@ Default - Содержимое
|
|
|
443
444
|
```
|
|
444
445
|
---
|
|
445
446
|
|
|
447
|
+
## SwSkeletonItem
|
|
448
|
+
|
|
449
|
+
Компонент SwSkeletonItem представляет собой полоску псевдо данных с возможностью анимирования.
|
|
450
|
+
|
|
451
|
+
### Свойства / Properties
|
|
452
|
+
|
|
453
|
+
|
|
454
|
+
| Имя | Тип | Значения/Описание |
|
|
455
|
+
|------------|-----------|----------------------------------------------------|
|
|
456
|
+
| `width` | `String` | Ширина элемента в процентах. |
|
|
457
|
+
| `class` | `String` | Добавляет пользовательский CSS-класс к компоненту. |
|
|
458
|
+
| `animate` | `String` | Добавляет анимацию в элемент. |
|
|
459
|
+
| `size` | `String` | Размер поля: `'large'`, `'small'`. |
|
|
460
|
+
|
|
461
|
+
|
|
462
|
+
### Пример использования / Example Usage
|
|
463
|
+
|
|
464
|
+
```html
|
|
465
|
+
<sw-skeleton-item
|
|
466
|
+
v-model="model"
|
|
467
|
+
name="switch"
|
|
468
|
+
class="custom-class"
|
|
469
|
+
id="switch"
|
|
470
|
+
on="on"
|
|
471
|
+
off="off"
|
|
472
|
+
>
|
|
473
|
+
<p>Описание / Description</p>
|
|
474
|
+
</sw-skeleton-item>
|
|
475
|
+
```
|
|
476
|
+
---
|
|
477
|
+
|
|
446
478
|
## SwSwitch
|
|
447
479
|
|
|
448
480
|
Компонент SwSwitch представляет собой чекбокс с возможностью настройки внешнего вида галочка | переключатель | переключатель с подписью и поведения.
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { ref as f, computed as te, createElementBlock as v, openBlock as i, createElementVNode as s, createCommentVNode as S, withModifiers as g, toDisplayString as y, unref as M, Fragment as _, renderList as Y, normalizeClass as H } from "vue";
|
|
2
|
-
import { p as x } from "./index-
|
|
2
|
+
import { p as x } from "./index-DvwgKr20.js";
|
|
3
3
|
const ae = { class: "sw-data-picker" }, ne = { class: "month_year" }, le = { class: "text" }, oe = {
|
|
4
4
|
key: 0,
|
|
5
5
|
class: "week"
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { mergeModels as y, useModel as V, ref as C, computed as I, watch as M, createElementBlock as d, openBlock as i, normalizeClass as A, createBlock as v, renderSlot as _, createCommentVNode as x, withDirectives as E, createTextVNode as N, toDisplayString as R, createElementVNode as T, vModelDynamic as F } from "vue";
|
|
2
|
-
import { S } from "./index-
|
|
2
|
+
import { S } from "./index-DvwgKr20.js";
|
|
3
3
|
const O = ["for"], U = {
|
|
4
4
|
key: 0,
|
|
5
5
|
title: "Это поле обязательно для заполнения."
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { mergeModels as c, ref as
|
|
1
|
+
import { mergeModels as c, ref as u, useModel as f, useSlots as b, provide as i, createElementBlock as s, openBlock as o, normalizeClass as m, createElementVNode as k, renderSlot as S, Fragment as _, renderList as g, toDisplayString as y } from "vue";
|
|
2
2
|
const V = ["onClick"], M = {
|
|
3
3
|
__name: "SwTabs",
|
|
4
4
|
props: /* @__PURE__ */ c({
|
|
@@ -10,17 +10,17 @@ const V = ["onClick"], M = {
|
|
|
10
10
|
}),
|
|
11
11
|
emits: /* @__PURE__ */ c(["tab-click"], ["update:modelValue"]),
|
|
12
12
|
setup(r, { emit: d }) {
|
|
13
|
-
|
|
14
|
-
const
|
|
15
|
-
return
|
|
13
|
+
u(0);
|
|
14
|
+
const e = u([]), p = r, l = f(r, "modelValue"), v = d;
|
|
15
|
+
return e.value = b().default().filter((a) => a.type.__name === "SwTabsPane"), console.log(e.value), i("activeTab", l), i("tabs", e), (a, h) => (o(), s("div", {
|
|
16
16
|
class: m("sw-tabs " + p.class)
|
|
17
17
|
}, [
|
|
18
18
|
k("header", null, [
|
|
19
|
-
(o(!0), s(_, null, g(
|
|
20
|
-
key:
|
|
21
|
-
class: m([{ active: l.value ===
|
|
19
|
+
(o(!0), s(_, null, g(e.value, (n, t) => (o(), s("span", {
|
|
20
|
+
key: t,
|
|
21
|
+
class: m([{ active: l.value === t }]),
|
|
22
22
|
onClick: (w) => {
|
|
23
|
-
l.value =
|
|
23
|
+
l.value = t, v("tab-click", t);
|
|
24
24
|
}
|
|
25
25
|
}, y(n.props.label || n.props.title), 11, V))), 128))
|
|
26
26
|
]),
|
package/dist/component-sw.css
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
@charset "UTF-8";:root{--sw-color-default: #DFDFDF;--sw-color-primary: #3EAF4E;--sw-color-success: #0d588d;--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: #035bff;--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: #035bff;--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-alert-wrapper{position:fixed;z-index:1;top:0}.sw-alert-wrapper .sw-alert{padding:.625rem 1rem;margin-top:1rem;border-radius:var(--sw-border-radius);color:var(--sw-text-color-revers)}.sw-alert-wrapper .sw-alert .svg-icon{flex-shrink:0}.sw-alert-wrapper .sw-alert .svg-icon:first-child{margin-right:1rem}.sw-alert-wrapper .sw-alert .fade-enter-active,.sw-alert-wrapper .sw-alert .fade-leave-active{transition:opacity .5s}.sw-alert-wrapper .sw-alert .fade-enter-from,.sw-alert-wrapper .sw-alert .fade-leave-to{opacity:0}.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;outline:none}.sw-dropdown-popup{z-index:3;padding:8px;min-width:200px;margin:0;-webkit-user-select:none;user-select:none;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;outline:none;-webkit-user-select:none;user-select:none}.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:16rem;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;flex-wrap:wrap;justify-content:center;gap:2rem}.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 button{color:var(--sw-text-color-primary);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(--sw-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-data-picker .year{width:250px;display:grid;grid-template-columns:1fr 1fr 1fr;gap:.2rem;border-top:1px solid var(--sw-color-info)}.sw-data-picker .year>button.disabled{color:var(--sw-color-info);cursor:not-allowed}.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)}.sw-wrapper-alert{position:absolute;top:0;left:0;width:100%;height:100%;z-index:4;display:flex;flex-direction:column;justify-content:flex-start;align-items:center}@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)}
|
|
1
|
+
@charset "UTF-8";:root{--sw-color-default: #DFDFDF;--sw-color-primary: #3EAF4E;--sw-color-success: #75C6ff;--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: #0d588d;--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: #0d588d;--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-alert-wrapper{position:fixed;z-index:1;top:0}.sw-alert-wrapper .sw-alert{padding:.625rem 1rem;margin-top:1rem;border-radius:var(--sw-border-radius);color:var(--sw-text-color-revers)}.sw-alert-wrapper .sw-alert .svg-icon{flex-shrink:0}.sw-alert-wrapper .sw-alert .svg-icon:first-child{margin-right:1rem}.sw-alert-wrapper .sw-alert .fade-enter-active,.sw-alert-wrapper .sw-alert .fade-leave-active{transition:opacity .5s}.sw-alert-wrapper .sw-alert .fade-enter-from,.sw-alert-wrapper .sw-alert .fade-leave-to{opacity:0}.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;outline:none}.sw-dropdown-popup{z-index:3;padding:8px;min-width:200px;margin:0;-webkit-user-select:none;user-select:none;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;outline:none;-webkit-user-select:none;user-select:none}.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:16rem;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;flex-wrap:wrap;justify-content:center;gap:2rem}.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 button{color:var(--sw-text-color-primary);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(--sw-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-data-picker .year{width:250px;display:grid;grid-template-columns:1fr 1fr 1fr;gap:.2rem;border-top:1px solid var(--sw-color-info)}.sw-data-picker .year>button.disabled{color:var(--sw-color-info);cursor:not-allowed}.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)}.sw-wrapper-alert{position:absolute;top:0;left:0;width:100%;height:100%;z-index:4;display:flex;flex-direction:column;justify-content:flex-start;align-items:center}@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)}
|
|
@@ -148,7 +148,7 @@ function w(e = {}) {
|
|
|
148
148
|
}), t = n.mount(document.createElement("div"));
|
|
149
149
|
l.appendChild(t.$el);
|
|
150
150
|
}
|
|
151
|
-
const h = /* @__PURE__ */ Object.assign({ "./components/SwAlert.vue": () => Promise.resolve().then(() => U), "./components/SwButton.vue": () => import("./SwButton-0uPLNlAn.js"), "./components/SwCollapse.vue": () => import("./SwCollapse-ByvwHeVt.js"), "./components/SwDatePicker.vue": () => import("./SwDatePicker-
|
|
151
|
+
const h = /* @__PURE__ */ Object.assign({ "./components/SwAlert.vue": () => Promise.resolve().then(() => U), "./components/SwButton.vue": () => import("./SwButton-0uPLNlAn.js"), "./components/SwCollapse.vue": () => import("./SwCollapse-ByvwHeVt.js"), "./components/SwDatePicker.vue": () => import("./SwDatePicker-Bctnaq6S.js"), "./components/SwDropdown.vue": () => import("./SwDropdown-DT-3bTwS.js"), "./components/SwDropdownItem.vue": () => import("./SwDropdownItem-C3_wJ1DL.js"), "./components/SwFormItem.vue": () => import("./SwFormItem-CfnEis1u.js"), "./components/SwInput.vue": () => import("./SwInput-D7fFC6uj.js"), "./components/SwMessage.vue": () => import("./SwMessage-DQcnzMZB.js"), "./components/SwSection.vue": () => import("./SwSection-CQfw3-el.js"), "./components/SwSelect.vue": () => import("./SwSelect-C2RKinez.js"), "./components/SwSkeleton.vue": () => import("./SwSkeleton-B7ysp8L9.js"), "./components/SwSkeletonItem.vue": () => import("./SwSkeletonItem-CU7LvihY.js"), "./components/SwSwitch.vue": () => import("./SwSwitch-BxSLWRTx.js"), "./components/SwTabs.vue": () => import("./SwTabs-CC6o0zMR.js"), "./components/SwTabsNew.vue": () => import("./SwTabsNew-Dr5Vyz6M.js"), "./components/SwTabsPane.vue": () => import("./SwTabsPane-BUUmFjh7.js"), "./components/SwTabsPaneNew.vue": () => import("./SwTabsPaneNew-DFPu-sRT.js") }), d = {};
|
|
152
152
|
for (const e in h) {
|
|
153
153
|
const n = e.split("/").pop().replace(".vue", "").replace(/-(\w)/g, (t, o) => o.toUpperCase());
|
|
154
154
|
d[n] = O(() => h[e]());
|
package/dist/index.cjs
CHANGED
|
@@ -1 +1 @@
|
|
|
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";function Q(a){return/^(https?:|mailto:|tel:)/.test(a)}function j(a,n){if(arguments.length===0||!a)return null;const t=n||"{Y}-{m}-{d} {G}:{i}:{s}";let o;typeof a=="object"?o=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),o=new Date(a));const l="ru-RU",c={Y:o.getFullYear(),m:(o.getMonth()+1).toString().padStart(2,"0"),d:o.getDate(),dd:o.getDate().toString().padStart(2,"0"),G:o.getHours(),H:o.getHours().toString().padStart(2,"0"),i:o.getMinutes().toString().padStart(2,"0"),s:o.getSeconds().toString().padStart(2,"0"),D:new Intl.DateTimeFormat(l,{weekday:"short"}).format(o),F:new Intl.DateTimeFormat(l,{month:"long"}).format(o),M:new Intl.DateTimeFormat(l,{month:"short"}).format(o)};return t.replace(/{(dd|[YmdGHisDFM])+}/g,(u,p)=>c[p])}const Z=(a,n)=>{const t=a.__vccOpts||a;for(const[o,l]of n)t[o]=l;return t},K={name:"SvgIcon",props:{prefix:{type:String,default:"icon"},iconClass:{type:String,required:!0},className:{type:String,default:""}},computed:{isExt(){return Q(this.iconClass)}}},ee=["href"];function te(a,n,t,o,l,c){return c.isExt?(e.openBlock(),e.createElementBlock("div",e.mergeProps({key:0,style:"mask: url("+t.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 "+t.className,"aria-hidden":"true"},a.$attrs),[e.createElementVNode("use",{href:"#"+t.prefix+"-"+t.iconClass},null,8,ee)],16))}const F=Z(K,[["render",te]]),R={__name:"SwAlert",props:{message:{type:String,default:"Default message"},before:{type:String,default:""},class:{type:String,default:""},after:{type:String,default:""},size:{type:String,default:""},duration:{type:Number,default:6e3},type:{type:String,default:"info",validator:a=>["success","warning","error","info"].includes(a)}},emits:["closed"],setup(a,{emit:n}){const t=a,o=n,l=e.ref(!1);let c=null;const u=()=>{l.value=!0,E()},p=()=>{l.value=!1,o("closed")},d=()=>{c&&(clearTimeout(c),c=null)},f=()=>{E()},E=()=>{c=setTimeout(p,t.duration)};e.onMounted(()=>{u()}),e.onUnmounted(()=>{c&&clearTimeout(c)});const D=e.computed(()=>{const m=["sw-alert"];return t.size.length>0&&m.push(`sw-${t.size}`),t.type.length>0&&m.push(`sw-${t.type}`),t.class.length>0&&m.push(t.class),m});return(m,_)=>(e.openBlock(),e.createBlock(e.Transition,{name:"fade"},{default:e.withCtx(()=>[l.value?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(D.value),onMouseenter:d,onMouseleave:f},[t.before.length>0?(e.openBlock(),e.createBlock(F,{key:0,"icon-class":t.before},null,8,["icon-class"])):e.renderSlot(m.$slots,"prefix",{key:1}),e.renderSlot(m.$slots,"default",{},()=>[e.createTextVNode(e.toDisplayString(t.message),1)]),t.after.length>0?(e.openBlock(),e.createBlock(F,{key:2,"icon-class":t.after,onClick:p},null,8,["icon-class"])):e.renderSlot(m.$slots,"suffix",{key:3})],34)):e.createCommentVNode("",!0)]),_:3}))}},oe=Object.freeze(Object.defineProperty({__proto__:null,default:R},Symbol.toStringTag,{value:"Module"}));let P=document.querySelector("div.sw-alert-wrapper");function A(a={}){P||(P=document.createElement("div"),P.className="sw-alert-wrapper",document.body.appendChild(P));const n=e.createApp({setup(){return()=>e.h(R,{...a,onClose:()=>{P.removeChild(n._container),n.unmount()}})}}),t=n.mount(document.createElement("div"));P.appendChild(t.$el)}const q=Object.assign({"./components/SwAlert.vue":()=>Promise.resolve().then(()=>oe),"./components/SwButton.vue":()=>Promise.resolve().then(()=>ne),"./components/SwCollapse.vue":()=>Promise.resolve().then(()=>ae),"./components/SwDatePicker.vue":()=>Promise.resolve().then(()=>be),"./components/SwDropdown.vue":()=>Promise.resolve().then(()=>$e),"./components/SwDropdownItem.vue":()=>Promise.resolve().then(()=>De),"./components/SwFormItem.vue":()=>Promise.resolve().then(()=>Ee),"./components/SwInput.vue":()=>Promise.resolve().then(()=>Ve),"./components/SwMessage.vue":()=>Promise.resolve().then(()=>Ne),"./components/SwSection.vue":()=>Promise.resolve().then(()=>xe),"./components/SwSelect.vue":()=>Promise.resolve().then(()=>Fe),"./components/SwSkeleton.vue":()=>Promise.resolve().then(()=>Le),"./components/SwSkeletonItem.vue":()=>Promise.resolve().then(()=>Ae),"./components/SwSwitch.vue":()=>Promise.resolve().then(()=>qe),"./components/SwTabs.vue":()=>Promise.resolve().then(()=>Ue),"./components/SwTabsNew.vue":()=>Promise.resolve().then(()=>Ge),"./components/SwTabsPane.vue":()=>Promise.resolve().then(()=>Je),"./components/SwTabsPaneNew.vue":()=>Promise.resolve().then(()=>Ze)}),I={};for(const a in q){const n=a.split("/").pop().replace(".vue","").replace(/-(\w)/g,(t,o)=>o.toUpperCase());I[n]=e.defineAsyncComponent(()=>q[a]())}const le={install(a){Object.keys(I).forEach(n=>{a.component(n,I[n]),console.log(n)}),a.config.globalProperties.$Alert=A,a.provide("Alert",A)}},H={__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 n=a,t=()=>{if(n.href.length>0){const l=document.createElement("a");l.setAttribute("href",n.href),l.setAttribute("target","_blank"),l.click()}},o=e.computed(()=>{let l=["sw-button"];return n.size.length>0&&l.push("sw-"+n.size),n.type.length>0&&l.push("sw-"+n.type),n.round&&l.push("sw-round"),n.text&&l.push("sw-text"),n.link&&l.push("sw-link"),n.class.length>0&&l.push(n.class),l});return(l,c)=>(e.openBlock(),e.createElementBlock("button",{class:e.normalizeClass(o.value),onClick:t},[e.renderSlot(l.$slots,"default")],2))}},ne=Object.freeze(Object.defineProperty({__proto__:null,default:H},Symbol.toStringTag,{value:"Module"})),ae=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"SwCollapse",props:{visual:{type:Boolean,default:!0}},setup(a){e.onMounted(()=>{o.value="0px"});const n=e.ref(null),t=a;e.watch(()=>t.visual,()=>l());const o=e.ref("0px"),l=()=>{n.value&&(o.value=t.visual?n.value.scrollHeight+"px":"0px")};let c;return e.onMounted(()=>{l(),n.value&&(c=new ResizeObserver(l),c.observe(n.value))}),e.onBeforeUnmount(()=>{c&&c.disconnect()}),(u,p)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["sw-collapse",{open:t.visual}]),style:e.normalizeStyle({height:o.value}),ref_key:"collapse",ref:n},[e.renderSlot(u.$slots,"default")],6))}}},Symbol.toStringTag,{value:"Module"})),se={class:"sw-data-picker"},re={class:"month_year"},ce={class:"text"},ie={key:0,class:"week"},de={key:1,class:"year"},pe=["onClick"],me={key:2,class:"month"},fe=["onClick"],ue={key:0},ge={class:"month_year"},he={class:"text"},ye={key:0,class:"week"},_e={key:1,class:"year"},Se=["onClick"],ke={key:2,class:"month"},we=["onClick"],be=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"SwDatePicker",props:{data:Object,limitation:{type:[Boolean,Array],default:()=>!1},range:{type:String,default:"solid"}},emits:["input"],setup(a,{emit:n}){var W,G,X,J;const t=a,o=n,l=e.ref(3),c=e.ref(new Date),u=e.ref(new Date),p=e.ref(new Date().getFullYear()),d=e.ref(new Date().getMonth()),f=e.ref(new Date().getFullYear()),E=e.ref(new Date().getMonth()),D=e.ref(new Date().getMonth()+1),m=e.ref([]),_=e.ref(0),S=e.ref(-1),h=e.ref(-1),w=e.ref(navigator.languages||"ru"),y=/en|zh|ja|he/.test(w.value)?0:1,z=e.computed(()=>Array.from({length:12},(i,s)=>{const r=new Date(2024,s);return new Intl.DateTimeFormat(w.value,{month:"long"}).format(r)})),B=i=>{let s=i.split(i.match(/\D.*?\D?/));return s[0].length>2?s.join("-")+"T00:00:01":s.reverse().join("-")+"T00:00:01"};(W=t.data)!=null&&W.startDate&&(c.value=new Date(B(t.data.startDate)),p.value=c.value.getFullYear(),d.value=c.value.getMonth()),(G=t.data)!=null&&G.endDate&&t.range==="range"&&(u.value=new Date(B(t.data.endDate)),f.value=u.value.getFullYear(),E.value=u.value.getMonth());const k=()=>{m.value=[],_.value=0;const i=new Date(p.value,d.value,0);for(let r=i.getDate()-i.getDay()+y;r<=i.getDate();r++)i.getDay()!==6+y&&(m.value.push({day:r,month:i.getMonth(),year:i.getFullYear(),class:[]}),_.value++);const s=new Date(p.value,d.value+1,0).getDate();for(let r=1;r<=s;r++)m.value.push({day:r,month:d.value,year:p.value,class:[]}),_.value++;if(t.range==="range"){const r=new Date(p.value,d.value+1,1),g=new Date(p.value,d.value+2,0).getDate();for(let M=1;M<=g;M++)m.value.push({day:M,month:r.getMonth(),year:r.getFullYear(),class:[]})}$()},$=()=>{var s;if(!((s=t.data)!=null&&s.holiday))return;const i=(r,g)=>{r.forEach(M=>{const[b,C,N]=M.split("-").map(Number),O=m.value.findIndex(Y=>Y.year===b&&Y.month+1===C&&Y.day===N);O!==-1&&(m.value[O].class[0]=g)})};i(t.data.holiday.preholidays,"preholiday"),i(t.data.holiday.holidays,"weekend"),i(t.data.holiday.holiday,"holiday"),i(t.data.holiday.nowork,"nowork")},x=()=>{if(!t.limitation||t.limitation.length<2)return!1;const i=[...t.limitation].sort((s,r)=>new Date(B(s.startDate)).getTime()-new Date(B(r.startDate)).getTime());for(let s=1;s<i.length;s++){const r=new Date(B(i[s-1].endDate));if(new Date(B(i[s].startDate))<=r)return console.warn("Warning: Диапазоны пересекаются:",i[s-1],i[s]),!0}return!1},v=(i,s,r)=>{if(!t.limitation||t.limitation.length===0)return!0;const g=new Date(i,s,r).getTime();for(let M of t.limitation){const{startDate:b,endDate:C}=M;if(!b&&C){const N=new Date(B(C)).getTime();if(g<=N)return!1}if(b&&!C){const N=new Date(B(b)).getTime();if(g>=N)return!1}if(b&&C){const N=new Date(B(b)).getTime(),O=new Date(B(C)).getTime();if(N<=O){if(g>=N&&g<=O)return!1}else if(g>=N||g<=O)return!1}}return!0},L=(i,s)=>{const r=j(new Date(i.year,i.month,i.day),"{dd}.{m}.{Y}");t.range==="range"?h.value!==-1?(Ke(),S.value=s,m.value[s].class[1]="active"):S.value!==-1?(h.value=s,et(S.value,h.value,r)):(S.value=s,m.value[s].class[1]="active"):(S.value!==-1&&(m.value[S.value].class[1]=""),S.value=s,m.value[s].class[1]="active",o("input",{dateStart:r,count:1}))},Ke=()=>{m.value.forEach(i=>i.class[1]=""),S.value=-1,h.value=-1},et=(i,s,r)=>{let g=j(new Date(m.value[i].year,m.value[i].month,m.value[i].day),"{dd}.{m}.{Y}"),M=tt(i,s);if(s>=i)for(let b=i+1;b<s;b++)m.value[b].class[1]="select";else for(let b=s+1;b<i;b++)m.value[b].class[1]="select";m.value[s].class[1]="active",o("input",{dateStart:g,dateEnd:r,count:M})},tt=(i,s)=>{var b;let r=Math.abs(i-s)+1,[g,M]=[Math.min(i,s),Math.max(i,s)];for(let C=g;C<=M;C++)((b=m.value[C])==null?void 0:b.class[0])==="holiday"&&r--;return r},T=(i,s)=>{v(i,s)&&(c.value=new Date(i,s,1),p.value=c.value.getFullYear(),d.value=c.value.getMonth(),console.log(l.value),t.range==="year"&&l.value===0?L({year:i,month:s,day:1},8):k())};if(k(),x()&&console.error("Ошибка: Найдены пересекающиеся диапазоны!"),(X=t.data)!=null&&X.startDate&&(S.value=m.value.findIndex(i=>i.day===c.value.getDate()&&i.month===d.value&&i.year===p.value),S.value!==-1&&(m.value[S.value].class[1]="active")),(J=t.data)!=null&&J.endDate&&t.range==="range"&&(h.value=m.value.findIndex(i=>i.day===u.value.getDate()&&i.month===E.value&&i.year===f.value),h.value!==-1)){m.value[h.value].class[1]="active";for(let i=S.value+1;i<h.value;i++)m.value[i].class[1]="select"}return(i,s)=>(e.openBlock(),e.createElementBlock("div",se,[e.createElementVNode("div",null,[e.createElementVNode("p",re,[e.createElementVNode("span",null,[e.createElementVNode("button",{onClick:s[0]||(s[0]=e.withModifiers(r=>T(p.value-1,d.value),["prevent"]))},"«"),e.createElementVNode("button",{onClick:s[1]||(s[1]=e.withModifiers(r=>{l.value=0,T(p.value,d.value-1)},["prevent"]))},"‹")]),e.createElementVNode("span",ce,[e.createElementVNode("button",{onClick:s[2]||(s[2]=e.withModifiers(r=>l.value=1,["prevent"]))},e.toDisplayString(p.value),1),e.createElementVNode("button",{onClick:s[3]||(s[3]=e.withModifiers(r=>l.value=1,["prevent"]))},e.toDisplayString(e.unref(j)(c.value.setMonth(d.value),"{F}")),1)]),e.createElementVNode("span",null,[e.createElementVNode("button",{onClick:s[4]||(s[4]=e.withModifiers(r=>{l.value=0,T(p.value,d.value+1)},["prevent"]))},"›"),e.createElementVNode("button",{onClick:s[5]||(s[5]=e.withModifiers(r=>T(p.value+1,d.value),["prevent"]))},"»")])]),t.range==="year"||l.value===1?e.createCommentVNode("",!0):(e.openBlock(),e.createElementBlock("div",ie,[(e.openBlock(),e.createElementBlock(e.Fragment,null,e.renderList(7,(r,g)=>e.createElementVNode("button",{key:g,class:"disabled"},e.toDisplayString(e.unref(j)(new Date(1970,1,r+e.unref(y)),"{D}")),1)),64))])),t.range==="year"||l.value===1?(e.openBlock(),e.createElementBlock("div",de,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(z.value,(r,g)=>(e.openBlock(),e.createElementBlock("button",{key:g,onClick:e.withModifiers(M=>{l.value=0,T(p.value,g)},["prevent"])},e.toDisplayString(r),9,pe))),128))])):(e.openBlock(),e.createElementBlock("div",me,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(m.value,(r,g)=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:g},[g<_.value+(7-new Date(p.value,d.value+1,1).getDay()+e.unref(y))%7?(e.openBlock(),e.createElementBlock("button",{key:0,class:e.normalizeClass(r.month===d.value&&v(r.year,r.month,r.day)?r.class:"disabled"),onClick:e.withModifiers(()=>{r.month===d.value&&L(r,g)},["prevent"])},e.toDisplayString(r.day),11,fe)):e.createCommentVNode("",!0)],64))),128))]))]),t.range==="range"?(e.openBlock(),e.createElementBlock("div",ue,[e.createElementVNode("p",ge,[e.createElementVNode("span",null,[e.createElementVNode("button",{onClick:s[6]||(s[6]=e.withModifiers(r=>T(p.value-1,d.value),["prevent"]))},"«"),e.createElementVNode("button",{onClick:s[7]||(s[7]=e.withModifiers(r=>{l.value=0,T(p.value,d.value-1)},["prevent"]))},"‹")]),e.createElementVNode("span",he,[e.createElementVNode("button",{onClick:s[8]||(s[8]=e.withModifiers(r=>l.value=2,["prevent"]))},e.toDisplayString(new Date(p.value,d.value+1).getFullYear()),1),e.createElementVNode("button",{onClick:s[9]||(s[9]=e.withModifiers(r=>l.value=2,["prevent"]))},e.toDisplayString(e.unref(j)(c.value.setMonth(d.value+1),"{F}")),1)]),e.createElementVNode("span",null,[e.createElementVNode("button",{onClick:s[10]||(s[10]=e.withModifiers(r=>{l.value=0,T(p.value,d.value+1)},["prevent"]))},"›"),e.createElementVNode("button",{onClick:s[11]||(s[11]=e.withModifiers(r=>T(p.value+1,d.value),["prevent"]))},"»")])]),l.value!==2?(e.openBlock(),e.createElementBlock("div",ye,[(e.openBlock(),e.createElementBlock(e.Fragment,null,e.renderList(7,(r,g)=>e.createElementVNode("button",{key:g,class:"disabled"},e.toDisplayString(e.unref(j)(new Date(1970,1,r+e.unref(y)),"{D}")),1)),64))])):e.createCommentVNode("",!0),l.value===2?(e.openBlock(),e.createElementBlock("div",_e,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(z.value,(r,g)=>(e.openBlock(),e.createElementBlock("button",{key:g,onClick:e.withModifiers(M=>{l.value=0,T(p.value,g-1)},["prevent"])},e.toDisplayString(r),9,Se))),128))])):(e.openBlock(),e.createElementBlock("div",ke,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(m.value,(r,g)=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:g},[g>=_.value-(7+new Date(p.value,d.value+1,1).getDay()-e.unref(y))%7?(e.openBlock(),e.createElementBlock("button",{key:0,class:e.normalizeClass(r.month===D.value&&v(r.year,r.month,r.day)?r.class:"disabled"),onClick:e.withModifiers(()=>{r.month===D.value&&L(r,g)},["prevent"])},e.toDisplayString(r.day),11,we)):e.createCommentVNode("",!0)],64))),128))]))])):e.createCommentVNode("",!0)]))}}},Symbol.toStringTag,{value:"Module"})),Be=["id"],$e=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"SwDropdown",props:e.mergeModels({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}},{modelValue:{},modelModifiers:{}}),emits:["update:modelValue"],setup(a,{expose:n}){const t=a;e.computed(()=>"dropdown"+Array.from(document.body.children).indexOf(document.querySelector("ul")));const o=e.useModel(a,"modelValue"),l=e.ref(null),c=e.ref(null),u=e.ref({}),p=Math.ceil(Math.random()*1e3),d=e.computed(()=>{let h=["sw-dropdown"];return t.size.length>0&&h.push("sw-"+t.size),t.type.length>0&&h.push("sw-"+t.type),h}),f=async()=>{if(await e.nextTick(),!c.value)return;const h=window.pageYOffset||document.documentElement.scrollTop,w=window.pageXOffset||document.documentElement.scrollLeft;document.body.style.position="fixed",document.body.style.top=`-${h}px`,document.body.style.left=`-${w}px`,document.body.style.position="",document.body.style.top="",document.body.style.left="",document.documentElement.scrollTop=h,document.documentElement.scrollLeft=w;const y=l.value.getBoundingClientRect(),z=c.value.offsetHeight,B=c.value.offsetWidth;console.log("popupHeight",z),console.log("popupWidth",B);let k=y.left+y.width/2+w,$=y.top+y.height/2+h;const[x,v]=t.placement.split("-",2);switch(console.log(t.placement),x){case"bottom":$=$+y.height/2+8;break;case"top":$=$-y.height/2-8-z;break;case"left":k=k-B-y.width/2-8,$=$-z/2;break;case"right":k=k+y.width/2+8,$=$-z/2;break}switch(v){case"left":k=k-y.width/2;break;case"right":k=k-B+y.width/2;break}k<0&&(k=0),$<0&&($=0),u.value={position:"absolute",top:`${$}px`,left:`${k}px`,maxWidth:t.maxWidth===0?"":`${t.maxWidth}px`}};n({positionPopup:f});const E=()=>{t.trigger==="click"&&(o.value=!o.value),o.value&&f()},D=()=>{t.trigger==="hover"&&(o.value=!o.value),o.value&&f()},m=()=>{t.trigger==="context"&&(o.value=!o.value),o.value&&f()},_=()=>{o.value&&f()},S=h=>{!h.target.closest(`[id="${p}"]`)&&l.value&&!l.value.contains(h.target)&&(o.value=!1)};return e.onMounted(()=>{window.addEventListener("resize",_),window.addEventListener("click",S)}),e.onUnmounted(()=>{window.removeEventListener("resize",_),window.removeEventListener("click",S)}),(h,w)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(d.value),onClick:w[0]||(w[0]=y=>E()),onMouseover:w[1]||(w[1]=e.withModifiers(y=>D(),["stop"])),onMouseleave:w[2]||(w[2]=e.withModifiers(y=>D(),["stop"])),onContextmenu:w[3]||(w[3]=e.withModifiers(y=>m(),["stop"])),ref_key:"dropdownRef",ref:l},[e.renderSlot(h.$slots,"default"),(e.openBlock(),e.createBlock(e.Teleport,{to:"body"},[o.value?(e.openBlock(),e.createElementBlock("ul",{key:0,ref_key:"popupRef",ref:c,id:e.unref(p),class:e.normalizeClass(["sw-dropdown-popup",t.class]),style:e.normalizeStyle(u.value),tabindex:"-1"},[e.renderSlot(h.$slots,"dropdown")],14,Be)):e.createCommentVNode("",!0)]))],34))}}},Symbol.toStringTag,{value:"Module"})),De=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 n=a,t=e.computed(()=>{let o=["sw-dropdown-item"];return n.size.length>0&&o.push("sw-"+n.size),n.type.length>0&&o.push("sw-"+n.type),n.class.length>0&&o.push(n.class),o});return(o,l)=>{const c=e.resolveComponent("svg-icon");return e.openBlock(),e.createElementBlock("li",{class:e.normalizeClass(t.value)},[e.createVNode(c,{"icon-class":a.iconBefore},null,8,["icon-class"]),e.renderSlot(o.$slots,"default")],2)}}}},Symbol.toStringTag,{value:"Module"})),Ee=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"SwFormItem",props:{class:{type:String,default:""},type:{type:String,default:""}},setup(a){const n=a,t=e.computed(()=>{let o=["sw-form-item"];return n.type.length>0&&o.push("sw-"+n.type),n.class.length>0&&o.push(n.class),o});return(o,l)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(t.value)},[e.renderSlot(o.$slots,"default")],2))}}},Symbol.toStringTag,{value:"Module"})),Me=["for"],Ce={key:0,title:"Это поле обязательно для заполнения."},Te=["required","placeholder","type","id","name"],Ve=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","focusInput"],["update:modelValue"]),setup(a,{emit:n}){var m;const t=e.useModel(a,"modelValue"),o=a,l=e.ref(null),c=n,u=_=>{c("focusInput"),_.target.setSelectionRange(t.value.length,t.value.length),l.value!==null&&(l.value.style.top="-.6em")},p=_=>{var S;((S=t.value)==null?void 0:S.length)===0&&l.value!==null&&l.value.removeAttribute("style")};((m=t.value)==null?void 0:m.length)>0&&l.value!==null&&(l.value.style.top="-.6em");const d=()=>{c("suffix")},f=()=>{c("prefix")},E=e.computed(()=>{let _=["sw-input"];return o.size.length>0&&_.push("sw-"+o.size),o.class.length>0&&_.push(o.class),_});e.watch(t,(_,S)=>{o.type==="phone"&&(t.value=D(_,S))});const D=(_,S)=>{if(/^\+[0-9]\s/.test(S)&&_.length===2||/^\+0\s/.test(_))return"";const h=_;if(typeof h>"u"||h.length===0)return h;const w="+0 (___) ___-__-__";let y=0;const z=w.replace(/\D/g,""),B=h.replace(/\D/g,"");let k=w.replace(/[_\d]/g,x=>y<B.length?B.charAt(y++)||z.charAt(y):x);y=k.indexOf("_"),y!==-1&&(y=y<5?3:y,k=k.slice(0,y));let $=w.slice(0,h.length).replace(/_+/g,x=>`\\d{1,${x.length}}`).replace(/[+()]/g,"\\$&");if($=new RegExp(`^${$}$`),k=k.replace(/[-—]$|(\) )$/g,""),!$.test(h)||h.length<5)return k};return(_,S)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(E.value)},[o.before.length>0?(e.openBlock(),e.createBlock(F,{key:0,"icon-class":o.before,onClick:f},null,8,["icon-class"])):e.renderSlot(_.$slots,"prefix",{key:1}),o.label.length>0?(e.openBlock(),e.createElementBlock("label",{key:2,for:o.name,ref_key:"lab",ref:l},[e.createTextVNode(e.toDisplayString(o.label),1),o.required?(e.openBlock(),e.createElementBlock("span",Ce,"*")):e.createCommentVNode("",!0)],8,Me)):e.createCommentVNode("",!0),e.withDirectives(e.createElementVNode("input",{"onUpdate:modelValue":S[0]||(S[0]=h=>t.value=h),required:o.required,placeholder:o.required&&o.label.length===0?o.placeholder+"*":o.placeholder,type:o.type,id:o.name,name:o.name,size:"60",onFocus:u,onBlur:p,maxlength:"128"},null,40,Te),[[e.vModelDynamic,t.value]]),o.after.length>0?(e.openBlock(),e.createBlock(F,{key:3,"icon-class":o.after,onClick:d},null,8,["icon-class"])):e.renderSlot(_.$slots,"suffix",{key:4})],2))}}},Symbol.toStringTag,{value:"Module"})),ze={key:0},Ne=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 n=e.useModel(a,"modelValue"),t=a,o=e.ref(null);return(l,c)=>{const u=e.resolveComponent("svg-icon");return n.value?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(["sw-message",t.class]),ref_key:"messageRef",ref:o},[t.name.length>0?(e.openBlock(),e.createElementBlock("header",ze,[e.renderSlot(l.$slots,"header",{},()=>[e.createTextVNode(e.toDisplayString(t.name)+" ",1),e.createVNode(H,{link:"",type:"primary",onClick:c[0]||(c[0]=p=>n.value=!1)},{default:e.withCtx(()=>[e.createVNode(u,{"icon-class":t.iconAfter},null,8,["icon-class"])]),_:1})])])):e.createCommentVNode("",!0),e.renderSlot(l.$slots,"default"),e.createElementVNode("footer",null,[e.renderSlot(l.$slots,"footer")])],2)):e.createCommentVNode("",!0)}}}},Symbol.toStringTag,{value:"Module"})),xe=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"SwSection",props:{name:{type:String,default:""},class:{type:String,default:""},iconAfter:{type:String,default:""}},emits:["header"],setup(a,{emit:n}){const t=a,o=n,l=()=>{o("header")};return(c,u)=>{const p=e.resolveComponent("svg-icon");return e.openBlock(),e.createElementBlock("section",{class:e.normalizeClass(t.class)},[e.createElementVNode("header",{onClick:l},[e.renderSlot(c.$slots,"header",{},()=>[e.createTextVNode(e.toDisplayString(t.name)+" ",1),e.createVNode(p,{"icon-class":t.iconAfter},null,8,["icon-class"])])]),e.renderSlot(c.$slots,"default"),e.createElementVNode("footer",null,[e.renderSlot(c.$slots,"footer")])],2)}}}},Symbol.toStringTag,{value:"Module"})),je={class:"popup"},Pe={class:"wrapper"},Oe={class:"scrollbar"},ve=["onClick"],Fe=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"SwSelect",props:e.mergeModels({class:{type:String,default:""},size:{type:String,default:"large"},placeholder:{type:String,default:""},token:{type:String,default:""}},{modelValue:{},modelModifiers:{}}),emits:["update:modelValue"],setup(a){const n=e.ref({fullText:""}),t=e.ref(!1),o=e.ref([]),l=e.useModel(a,"modelValue"),c=a;e.watch(l.text,d=>{d.length>3&&(n.value.fullText=d)}),e.watch(n.value.fullText,(d,f)=>{t.value=d.length>3&&d.length>f.length,d.length>3&&u()});const u=()=>{let d="https://suggestions.dadata.ru/suggestions/api/4_1/rs/suggest/address";console.log(n.value.fullText),axios.post(d,{query:n.value.fullText},{headers:{"Content-Type":"application/json",Accept:"application/json",Authorization:"Token "+c.token}}).then(f=>{console.log(f.data.suggestions),o.value=f.data.suggestions,o.value.length===1&&p(o.value[0])}).catch(f=>{console.log(f)})},p=d=>{n.value.fullText=d.value,t.value=!1;const f={};f.text=d.value,f.coords=[Number(d.data.geo_lat),Number(d.data.geo_lon)],f.suggestion=d.data,l.value=f};return(d,f)=>{const E=e.resolveComponent("sw-input");return e.openBlock(),e.createElementBlock("div",je,[e.createVNode(E,{size:c.size,modelValue:n.value.fullText,"onUpdate:modelValue":f[0]||(f[0]=D=>n.value.fullText=D),placeholder:a.placeholder},null,8,["size","modelValue","placeholder"]),e.withDirectives(e.createElementVNode("div",Pe,[e.createElementVNode("ul",Oe,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(o.value,(D,m)=>(e.openBlock(),e.createElementBlock("li",{tabindex:"1",key:m,onClick:_=>p(D)},e.toDisplayString(D.value),9,ve))),128))])],512),[[e.vShow,t.value]])])}}}},Symbol.toStringTag,{value:"Module"})),Ie={key:0},U={__name:"SwSkeletonItem",props:{width:{type:String,default:"100"},class:{type:String,default:""},animate:{type:Boolean,default:!1},size:{type:String,default:""}},setup(a){const n=a,t=e.computed(()=>{let l=["sw-skeleton-item"];return n.size.length>0&&l.push("sw-"+n.size),n.animate&&l.push("sw-animate"),n.class.length>0&&l.push(n.class),l}),o=e.computed(()=>({width:n.width+"%"}));return(l,c)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(t.value),style:e.normalizeStyle(o.value)},[n.animate?(e.openBlock(),e.createElementBlock("div",Ie)):e.createCommentVNode("",!0)],6))}},Ae=Object.freeze(Object.defineProperty({__proto__:null,default:U},Symbol.toStringTag,{value:"Module"})),Le=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"SwSkeleton",props:{class:{type:String,default:""},visual:{type:Boolean,default:!1}},setup(a){const n=a;return(t,o)=>n.visual?e.renderSlot(t.$slots,"default",{key:0}):(e.openBlock(),e.createElementBlock("div",{key:1,class:e.normalizeClass(["sw-skeleton",n.class])},[e.renderSlot(t.$slots,"skeleton",{},()=>[e.createVNode(U,{animate:"",size:"small"})])],2))}}},Symbol.toStringTag,{value:"Module"})),Ye=["name","id"],Re=["for","data-onlabel","data-offlabel"],qe=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 n=e.useModel(a,"modelValue"),t=a,o=e.computed(()=>{let l=["sw-switch"];return t.size.length>0&&l.push("sw-"+t.size),t.checkbox&&l.push("sw-checkbox"),t.class.length>0&&l.push(t.class),l});return(l,c)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(o.value)},[e.withDirectives(e.createElementVNode("input",{type:"checkbox",name:t.name,class:"sw-control",id:t.id,"onUpdate:modelValue":c[0]||(c[0]=u=>n.value=u)},null,8,Ye),[[e.vModelCheckbox,n.value]]),e.createElementVNode("label",{for:t.id,class:"sw-label","data-onlabel":t.on,"data-offlabel":t.off},null,8,Re),e.renderSlot(l.$slots,"default")],2))}}},Symbol.toStringTag,{value:"Module"})),He=["onClick"],Ue=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:n}){e.ref(0);const t=e.ref([]),o=a,l=e.useModel(a,"modelValue"),c=n;return t.value=e.useSlots().default().filter(u=>u.type.__name==="SwTabsPane"),e.provide("activeTab",l),e.provide("tabs",t),(u,p)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass("sw-tabs "+o.class)},[e.createElementVNode("header",null,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.value,(d,f)=>(e.openBlock(),e.createElementBlock("span",{key:f,class:e.normalizeClass([{active:l.value===f}]),onClick:E=>{l.value=f,c("tab-click",f)}},e.toDisplayString(d.props.label||d.props.title),11,He))),128))]),e.renderSlot(u.$slots,"default")],2))}}},Symbol.toStringTag,{value:"Module"})),We=["onClick"],Ge=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:n}){e.ref(0);const t=e.ref([]),o=a,l=e.useModel(a,"modelValue"),c=n;return e.provide("activeTab",l),e.provide("tabs",t),e.provide("registerTab",u=>{t.value.push(u)}),(u,p)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass("sw-tabs "+o.class)},[e.createElementVNode("header",null,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.value,(d,f)=>(e.openBlock(),e.createElementBlock("span",{key:f,class:e.normalizeClass([{active:l.value===f}]),onClick:E=>{l.value=f,c("tab-click",f)}},e.toDisplayString(d.props.label||d.props.title),11,We))),128))]),e.renderSlot(u.$slots,"default")],2))}}},Symbol.toStringTag,{value:"Module"})),Xe={key:0,class:"tab-content"},Je=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"SwTabsPane",props:{title:{type:String,required:!0}},setup(a){const n=a,t=e.inject("activeTab"),o=e.inject("tabs"),l=e.computed(()=>{const c=o.value.findIndex(u=>u.props.title===n.title);return t.value===c});return(c,u)=>l.value?(e.openBlock(),e.createElementBlock("div",Xe,[e.renderSlot(c.$slots,"default")])):e.createCommentVNode("",!0)}}},Symbol.toStringTag,{value:"Module"})),Qe={key:0,class:"tab-content"},Ze=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"SwTabsPaneNew",props:{label:{type:String,required:!0},title:{type:String}},setup(a){const n=a,t=e.inject("registerTab");if(!t)throw new Error("SwTabsPane must be used inside SwTabs");t({props:n});const o=e.inject("activeTab");if(!e.inject("tabs"))throw new Error("Tabs array is not provided by SwTabs");const c=e.inject("tabs").value.length-1;return(u,p)=>e.unref(o)===c?(e.openBlock(),e.createElementBlock("div",Qe,[e.renderSlot(u.$slots,"default")])):e.createCommentVNode("",!0)}}},Symbol.toStringTag,{value:"Module"}));V.Alert=A,V.Library=le,V.components=I,Object.defineProperty(V,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";function Q(a){return/^(https?:|mailto:|tel:)/.test(a)}function j(a,n){if(arguments.length===0||!a)return null;const t=n||"{Y}-{m}-{d} {G}:{i}:{s}";let o;typeof a=="object"?o=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),o=new Date(a));const l="ru-RU",c={Y:o.getFullYear(),m:(o.getMonth()+1).toString().padStart(2,"0"),d:o.getDate(),dd:o.getDate().toString().padStart(2,"0"),G:o.getHours(),H:o.getHours().toString().padStart(2,"0"),i:o.getMinutes().toString().padStart(2,"0"),s:o.getSeconds().toString().padStart(2,"0"),D:new Intl.DateTimeFormat(l,{weekday:"short"}).format(o),F:new Intl.DateTimeFormat(l,{month:"long"}).format(o),M:new Intl.DateTimeFormat(l,{month:"short"}).format(o)};return t.replace(/{(dd|[YmdGHisDFM])+}/g,(u,p)=>c[p])}const Z=(a,n)=>{const t=a.__vccOpts||a;for(const[o,l]of n)t[o]=l;return t},K={name:"SvgIcon",props:{prefix:{type:String,default:"icon"},iconClass:{type:String,required:!0},className:{type:String,default:""}},computed:{isExt(){return Q(this.iconClass)}}},ee=["href"];function te(a,n,t,o,l,c){return c.isExt?(e.openBlock(),e.createElementBlock("div",e.mergeProps({key:0,style:"mask: url("+t.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 "+t.className,"aria-hidden":"true"},a.$attrs),[e.createElementVNode("use",{href:"#"+t.prefix+"-"+t.iconClass},null,8,ee)],16))}const F=Z(K,[["render",te]]),R={__name:"SwAlert",props:{message:{type:String,default:"Default message"},before:{type:String,default:""},class:{type:String,default:""},after:{type:String,default:""},size:{type:String,default:""},duration:{type:Number,default:6e3},type:{type:String,default:"info",validator:a=>["success","warning","error","info"].includes(a)}},emits:["closed"],setup(a,{emit:n}){const t=a,o=n,l=e.ref(!1);let c=null;const u=()=>{l.value=!0,E()},p=()=>{l.value=!1,o("closed")},d=()=>{c&&(clearTimeout(c),c=null)},f=()=>{E()},E=()=>{c=setTimeout(p,t.duration)};e.onMounted(()=>{u()}),e.onUnmounted(()=>{c&&clearTimeout(c)});const D=e.computed(()=>{const m=["sw-alert"];return t.size.length>0&&m.push(`sw-${t.size}`),t.type.length>0&&m.push(`sw-${t.type}`),t.class.length>0&&m.push(t.class),m});return(m,_)=>(e.openBlock(),e.createBlock(e.Transition,{name:"fade"},{default:e.withCtx(()=>[l.value?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(D.value),onMouseenter:d,onMouseleave:f},[t.before.length>0?(e.openBlock(),e.createBlock(F,{key:0,"icon-class":t.before},null,8,["icon-class"])):e.renderSlot(m.$slots,"prefix",{key:1}),e.renderSlot(m.$slots,"default",{},()=>[e.createTextVNode(e.toDisplayString(t.message),1)]),t.after.length>0?(e.openBlock(),e.createBlock(F,{key:2,"icon-class":t.after,onClick:p},null,8,["icon-class"])):e.renderSlot(m.$slots,"suffix",{key:3})],34)):e.createCommentVNode("",!0)]),_:3}))}},oe=Object.freeze(Object.defineProperty({__proto__:null,default:R},Symbol.toStringTag,{value:"Module"}));let P=document.querySelector("div.sw-alert-wrapper");function A(a={}){P||(P=document.createElement("div"),P.className="sw-alert-wrapper",document.body.appendChild(P));const n=e.createApp({setup(){return()=>e.h(R,{...a,onClose:()=>{P.removeChild(n._container),n.unmount()}})}}),t=n.mount(document.createElement("div"));P.appendChild(t.$el)}const q=Object.assign({"./components/SwAlert.vue":()=>Promise.resolve().then(()=>oe),"./components/SwButton.vue":()=>Promise.resolve().then(()=>ne),"./components/SwCollapse.vue":()=>Promise.resolve().then(()=>ae),"./components/SwDatePicker.vue":()=>Promise.resolve().then(()=>be),"./components/SwDropdown.vue":()=>Promise.resolve().then(()=>$e),"./components/SwDropdownItem.vue":()=>Promise.resolve().then(()=>De),"./components/SwFormItem.vue":()=>Promise.resolve().then(()=>Ee),"./components/SwInput.vue":()=>Promise.resolve().then(()=>Ve),"./components/SwMessage.vue":()=>Promise.resolve().then(()=>Ne),"./components/SwSection.vue":()=>Promise.resolve().then(()=>xe),"./components/SwSelect.vue":()=>Promise.resolve().then(()=>Fe),"./components/SwSkeleton.vue":()=>Promise.resolve().then(()=>Le),"./components/SwSkeletonItem.vue":()=>Promise.resolve().then(()=>Ae),"./components/SwSwitch.vue":()=>Promise.resolve().then(()=>qe),"./components/SwTabs.vue":()=>Promise.resolve().then(()=>Ue),"./components/SwTabsNew.vue":()=>Promise.resolve().then(()=>Ge),"./components/SwTabsPane.vue":()=>Promise.resolve().then(()=>Je),"./components/SwTabsPaneNew.vue":()=>Promise.resolve().then(()=>Ze)}),I={};for(const a in q){const n=a.split("/").pop().replace(".vue","").replace(/-(\w)/g,(t,o)=>o.toUpperCase());I[n]=e.defineAsyncComponent(()=>q[a]())}const le={install(a){Object.keys(I).forEach(n=>{a.component(n,I[n]),console.log(n)}),a.config.globalProperties.$Alert=A,a.provide("Alert",A)}},H={__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 n=a,t=()=>{if(n.href.length>0){const l=document.createElement("a");l.setAttribute("href",n.href),l.setAttribute("target","_blank"),l.click()}},o=e.computed(()=>{let l=["sw-button"];return n.size.length>0&&l.push("sw-"+n.size),n.type.length>0&&l.push("sw-"+n.type),n.round&&l.push("sw-round"),n.text&&l.push("sw-text"),n.link&&l.push("sw-link"),n.class.length>0&&l.push(n.class),l});return(l,c)=>(e.openBlock(),e.createElementBlock("button",{class:e.normalizeClass(o.value),onClick:t},[e.renderSlot(l.$slots,"default")],2))}},ne=Object.freeze(Object.defineProperty({__proto__:null,default:H},Symbol.toStringTag,{value:"Module"})),ae=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"SwCollapse",props:{visual:{type:Boolean,default:!0}},setup(a){e.onMounted(()=>{o.value="0px"});const n=e.ref(null),t=a;e.watch(()=>t.visual,()=>l());const o=e.ref("0px"),l=()=>{n.value&&(o.value=t.visual?n.value.scrollHeight+"px":"0px")};let c;return e.onMounted(()=>{l(),n.value&&(c=new ResizeObserver(l),c.observe(n.value))}),e.onBeforeUnmount(()=>{c&&c.disconnect()}),(u,p)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["sw-collapse",{open:t.visual}]),style:e.normalizeStyle({height:o.value}),ref_key:"collapse",ref:n},[e.renderSlot(u.$slots,"default")],6))}}},Symbol.toStringTag,{value:"Module"})),se={class:"sw-data-picker"},re={class:"month_year"},ce={class:"text"},ie={key:0,class:"week"},de={key:1,class:"year"},pe=["onClick"],me={key:2,class:"month"},fe=["onClick"],ue={key:0},ge={class:"month_year"},he={class:"text"},ye={key:0,class:"week"},_e={key:1,class:"year"},Se=["onClick"],ke={key:2,class:"month"},we=["onClick"],be=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"SwDatePicker",props:{data:Object,limitation:{type:[Boolean,Array],default:()=>!1},range:{type:String,default:"solid"}},emits:["input"],setup(a,{emit:n}){var W,G,X,J;const t=a,o=n,l=e.ref(3),c=e.ref(new Date),u=e.ref(new Date),p=e.ref(new Date().getFullYear()),d=e.ref(new Date().getMonth()),f=e.ref(new Date().getFullYear()),E=e.ref(new Date().getMonth()),D=e.ref(new Date().getMonth()+1),m=e.ref([]),_=e.ref(0),S=e.ref(-1),h=e.ref(-1),w=e.ref(navigator.languages||"ru"),y=/en|zh|ja|he/.test(w.value)?0:1,z=e.computed(()=>Array.from({length:12},(i,s)=>{const r=new Date(2024,s);return new Intl.DateTimeFormat(w.value,{month:"long"}).format(r)})),B=i=>{let s=i.split(i.match(/\D.*?\D?/));return s[0].length>2?s.join("-")+"T00:00:01":s.reverse().join("-")+"T00:00:01"};(W=t.data)!=null&&W.startDate&&(c.value=new Date(B(t.data.startDate)),p.value=c.value.getFullYear(),d.value=c.value.getMonth()),(G=t.data)!=null&&G.endDate&&t.range==="range"&&(u.value=new Date(B(t.data.endDate)),f.value=u.value.getFullYear(),E.value=u.value.getMonth());const k=()=>{m.value=[],_.value=0;const i=new Date(p.value,d.value,0);for(let r=i.getDate()-i.getDay()+y;r<=i.getDate();r++)i.getDay()!==6+y&&(m.value.push({day:r,month:i.getMonth(),year:i.getFullYear(),class:[]}),_.value++);const s=new Date(p.value,d.value+1,0).getDate();for(let r=1;r<=s;r++)m.value.push({day:r,month:d.value,year:p.value,class:[]}),_.value++;if(t.range==="range"){const r=new Date(p.value,d.value+1,1),g=new Date(p.value,d.value+2,0).getDate();for(let M=1;M<=g;M++)m.value.push({day:M,month:r.getMonth(),year:r.getFullYear(),class:[]})}$()},$=()=>{var s;if(!((s=t.data)!=null&&s.holiday))return;const i=(r,g)=>{r.forEach(M=>{const[b,C,N]=M.split("-").map(Number),O=m.value.findIndex(Y=>Y.year===b&&Y.month+1===C&&Y.day===N);O!==-1&&(m.value[O].class[0]=g)})};i(t.data.holiday.preholidays,"preholiday"),i(t.data.holiday.holidays,"weekend"),i(t.data.holiday.holiday,"holiday"),i(t.data.holiday.nowork,"nowork")},x=()=>{if(!t.limitation||t.limitation.length<2)return!1;const i=[...t.limitation].sort((s,r)=>new Date(B(s.startDate)).getTime()-new Date(B(r.startDate)).getTime());for(let s=1;s<i.length;s++){const r=new Date(B(i[s-1].endDate));if(new Date(B(i[s].startDate))<=r)return console.warn("Warning: Диапазоны пересекаются:",i[s-1],i[s]),!0}return!1},v=(i,s,r)=>{if(!t.limitation||t.limitation.length===0)return!0;const g=new Date(i,s,r).getTime();for(let M of t.limitation){const{startDate:b,endDate:C}=M;if(!b&&C){const N=new Date(B(C)).getTime();if(g<=N)return!1}if(b&&!C){const N=new Date(B(b)).getTime();if(g>=N)return!1}if(b&&C){const N=new Date(B(b)).getTime(),O=new Date(B(C)).getTime();if(N<=O){if(g>=N&&g<=O)return!1}else if(g>=N||g<=O)return!1}}return!0},L=(i,s)=>{const r=j(new Date(i.year,i.month,i.day),"{dd}.{m}.{Y}");t.range==="range"?h.value!==-1?(Ke(),S.value=s,m.value[s].class[1]="active"):S.value!==-1?(h.value=s,et(S.value,h.value,r)):(S.value=s,m.value[s].class[1]="active"):(S.value!==-1&&(m.value[S.value].class[1]=""),S.value=s,m.value[s].class[1]="active",o("input",{dateStart:r,count:1}))},Ke=()=>{m.value.forEach(i=>i.class[1]=""),S.value=-1,h.value=-1},et=(i,s,r)=>{let g=j(new Date(m.value[i].year,m.value[i].month,m.value[i].day),"{dd}.{m}.{Y}"),M=tt(i,s);if(s>=i)for(let b=i+1;b<s;b++)m.value[b].class[1]="select";else for(let b=s+1;b<i;b++)m.value[b].class[1]="select";m.value[s].class[1]="active",o("input",{dateStart:g,dateEnd:r,count:M})},tt=(i,s)=>{var b;let r=Math.abs(i-s)+1,[g,M]=[Math.min(i,s),Math.max(i,s)];for(let C=g;C<=M;C++)((b=m.value[C])==null?void 0:b.class[0])==="holiday"&&r--;return r},T=(i,s)=>{v(i,s)&&(c.value=new Date(i,s,1),p.value=c.value.getFullYear(),d.value=c.value.getMonth(),console.log(l.value),t.range==="year"&&l.value===0?L({year:i,month:s,day:1},8):k())};if(k(),x()&&console.error("Ошибка: Найдены пересекающиеся диапазоны!"),(X=t.data)!=null&&X.startDate&&(S.value=m.value.findIndex(i=>i.day===c.value.getDate()&&i.month===d.value&&i.year===p.value),S.value!==-1&&(m.value[S.value].class[1]="active")),(J=t.data)!=null&&J.endDate&&t.range==="range"&&(h.value=m.value.findIndex(i=>i.day===u.value.getDate()&&i.month===E.value&&i.year===f.value),h.value!==-1)){m.value[h.value].class[1]="active";for(let i=S.value+1;i<h.value;i++)m.value[i].class[1]="select"}return(i,s)=>(e.openBlock(),e.createElementBlock("div",se,[e.createElementVNode("div",null,[e.createElementVNode("p",re,[e.createElementVNode("span",null,[e.createElementVNode("button",{onClick:s[0]||(s[0]=e.withModifiers(r=>T(p.value-1,d.value),["prevent"]))},"«"),e.createElementVNode("button",{onClick:s[1]||(s[1]=e.withModifiers(r=>{l.value=0,T(p.value,d.value-1)},["prevent"]))},"‹")]),e.createElementVNode("span",ce,[e.createElementVNode("button",{onClick:s[2]||(s[2]=e.withModifiers(r=>l.value=1,["prevent"]))},e.toDisplayString(p.value),1),e.createElementVNode("button",{onClick:s[3]||(s[3]=e.withModifiers(r=>l.value=1,["prevent"]))},e.toDisplayString(e.unref(j)(c.value.setMonth(d.value),"{F}")),1)]),e.createElementVNode("span",null,[e.createElementVNode("button",{onClick:s[4]||(s[4]=e.withModifiers(r=>{l.value=0,T(p.value,d.value+1)},["prevent"]))},"›"),e.createElementVNode("button",{onClick:s[5]||(s[5]=e.withModifiers(r=>T(p.value+1,d.value),["prevent"]))},"»")])]),t.range==="year"||l.value===1?e.createCommentVNode("",!0):(e.openBlock(),e.createElementBlock("div",ie,[(e.openBlock(),e.createElementBlock(e.Fragment,null,e.renderList(7,(r,g)=>e.createElementVNode("button",{key:g,class:"disabled"},e.toDisplayString(e.unref(j)(new Date(1970,1,r+e.unref(y)),"{D}")),1)),64))])),t.range==="year"||l.value===1?(e.openBlock(),e.createElementBlock("div",de,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(z.value,(r,g)=>(e.openBlock(),e.createElementBlock("button",{key:g,onClick:e.withModifiers(M=>{l.value=0,T(p.value,g)},["prevent"])},e.toDisplayString(r),9,pe))),128))])):(e.openBlock(),e.createElementBlock("div",me,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(m.value,(r,g)=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:g},[g<_.value+(7-new Date(p.value,d.value+1,1).getDay()+e.unref(y))%7?(e.openBlock(),e.createElementBlock("button",{key:0,class:e.normalizeClass(r.month===d.value&&v(r.year,r.month,r.day)?r.class:"disabled"),onClick:e.withModifiers(()=>{r.month===d.value&&L(r,g)},["prevent"])},e.toDisplayString(r.day),11,fe)):e.createCommentVNode("",!0)],64))),128))]))]),t.range==="range"?(e.openBlock(),e.createElementBlock("div",ue,[e.createElementVNode("p",ge,[e.createElementVNode("span",null,[e.createElementVNode("button",{onClick:s[6]||(s[6]=e.withModifiers(r=>T(p.value-1,d.value),["prevent"]))},"«"),e.createElementVNode("button",{onClick:s[7]||(s[7]=e.withModifiers(r=>{l.value=0,T(p.value,d.value-1)},["prevent"]))},"‹")]),e.createElementVNode("span",he,[e.createElementVNode("button",{onClick:s[8]||(s[8]=e.withModifiers(r=>l.value=2,["prevent"]))},e.toDisplayString(new Date(p.value,d.value+1).getFullYear()),1),e.createElementVNode("button",{onClick:s[9]||(s[9]=e.withModifiers(r=>l.value=2,["prevent"]))},e.toDisplayString(e.unref(j)(c.value.setMonth(d.value+1),"{F}")),1)]),e.createElementVNode("span",null,[e.createElementVNode("button",{onClick:s[10]||(s[10]=e.withModifiers(r=>{l.value=0,T(p.value,d.value+1)},["prevent"]))},"›"),e.createElementVNode("button",{onClick:s[11]||(s[11]=e.withModifiers(r=>T(p.value+1,d.value),["prevent"]))},"»")])]),l.value!==2?(e.openBlock(),e.createElementBlock("div",ye,[(e.openBlock(),e.createElementBlock(e.Fragment,null,e.renderList(7,(r,g)=>e.createElementVNode("button",{key:g,class:"disabled"},e.toDisplayString(e.unref(j)(new Date(1970,1,r+e.unref(y)),"{D}")),1)),64))])):e.createCommentVNode("",!0),l.value===2?(e.openBlock(),e.createElementBlock("div",_e,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(z.value,(r,g)=>(e.openBlock(),e.createElementBlock("button",{key:g,onClick:e.withModifiers(M=>{l.value=0,T(p.value,g-1)},["prevent"])},e.toDisplayString(r),9,Se))),128))])):(e.openBlock(),e.createElementBlock("div",ke,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(m.value,(r,g)=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:g},[g>=_.value-(7+new Date(p.value,d.value+1,1).getDay()-e.unref(y))%7?(e.openBlock(),e.createElementBlock("button",{key:0,class:e.normalizeClass(r.month===D.value&&v(r.year,r.month,r.day)?r.class:"disabled"),onClick:e.withModifiers(()=>{r.month===D.value&&L(r,g)},["prevent"])},e.toDisplayString(r.day),11,we)):e.createCommentVNode("",!0)],64))),128))]))])):e.createCommentVNode("",!0)]))}}},Symbol.toStringTag,{value:"Module"})),Be=["id"],$e=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"SwDropdown",props:e.mergeModels({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}},{modelValue:{},modelModifiers:{}}),emits:["update:modelValue"],setup(a,{expose:n}){const t=a;e.computed(()=>"dropdown"+Array.from(document.body.children).indexOf(document.querySelector("ul")));const o=e.useModel(a,"modelValue"),l=e.ref(null),c=e.ref(null),u=e.ref({}),p=Math.ceil(Math.random()*1e3),d=e.computed(()=>{let h=["sw-dropdown"];return t.size.length>0&&h.push("sw-"+t.size),t.type.length>0&&h.push("sw-"+t.type),h}),f=async()=>{if(await e.nextTick(),!c.value)return;const h=window.pageYOffset||document.documentElement.scrollTop,w=window.pageXOffset||document.documentElement.scrollLeft;document.body.style.position="fixed",document.body.style.top=`-${h}px`,document.body.style.left=`-${w}px`,document.body.style.position="",document.body.style.top="",document.body.style.left="",document.documentElement.scrollTop=h,document.documentElement.scrollLeft=w;const y=l.value.getBoundingClientRect(),z=c.value.offsetHeight,B=c.value.offsetWidth;console.log("popupHeight",z),console.log("popupWidth",B);let k=y.left+y.width/2+w,$=y.top+y.height/2+h;const[x,v]=t.placement.split("-",2);switch(console.log(t.placement),x){case"bottom":$=$+y.height/2+8;break;case"top":$=$-y.height/2-8-z;break;case"left":k=k-B-y.width/2-8,$=$-z/2;break;case"right":k=k+y.width/2+8,$=$-z/2;break}switch(v){case"left":k=k-y.width/2;break;case"right":k=k-B+y.width/2;break}k<0&&(k=0),$<0&&($=0),u.value={position:"absolute",top:`${$}px`,left:`${k}px`,maxWidth:t.maxWidth===0?"":`${t.maxWidth}px`}};n({positionPopup:f});const E=()=>{t.trigger==="click"&&(o.value=!o.value),o.value&&f()},D=()=>{t.trigger==="hover"&&(o.value=!o.value),o.value&&f()},m=()=>{t.trigger==="context"&&(o.value=!o.value),o.value&&f()},_=()=>{o.value&&f()},S=h=>{!h.target.closest(`[id="${p}"]`)&&l.value&&!l.value.contains(h.target)&&(o.value=!1)};return e.onMounted(()=>{window.addEventListener("resize",_),window.addEventListener("click",S)}),e.onUnmounted(()=>{window.removeEventListener("resize",_),window.removeEventListener("click",S)}),(h,w)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(d.value),onClick:w[0]||(w[0]=y=>E()),onMouseover:w[1]||(w[1]=e.withModifiers(y=>D(),["stop"])),onMouseleave:w[2]||(w[2]=e.withModifiers(y=>D(),["stop"])),onContextmenu:w[3]||(w[3]=e.withModifiers(y=>m(),["stop"])),ref_key:"dropdownRef",ref:l},[e.renderSlot(h.$slots,"default"),(e.openBlock(),e.createBlock(e.Teleport,{to:"body"},[o.value?(e.openBlock(),e.createElementBlock("ul",{key:0,ref_key:"popupRef",ref:c,id:e.unref(p),class:e.normalizeClass(["sw-dropdown-popup",t.class]),style:e.normalizeStyle(u.value),tabindex:"-1"},[e.renderSlot(h.$slots,"dropdown")],14,Be)):e.createCommentVNode("",!0)]))],34))}}},Symbol.toStringTag,{value:"Module"})),De=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 n=a,t=e.computed(()=>{let o=["sw-dropdown-item"];return n.size.length>0&&o.push("sw-"+n.size),n.type.length>0&&o.push("sw-"+n.type),n.class.length>0&&o.push(n.class),o});return(o,l)=>{const c=e.resolveComponent("svg-icon");return e.openBlock(),e.createElementBlock("li",{class:e.normalizeClass(t.value)},[e.createVNode(c,{"icon-class":a.iconBefore},null,8,["icon-class"]),e.renderSlot(o.$slots,"default")],2)}}}},Symbol.toStringTag,{value:"Module"})),Ee=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"SwFormItem",props:{class:{type:String,default:""},type:{type:String,default:""}},setup(a){const n=a,t=e.computed(()=>{let o=["sw-form-item"];return n.type.length>0&&o.push("sw-"+n.type),n.class.length>0&&o.push(n.class),o});return(o,l)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(t.value)},[e.renderSlot(o.$slots,"default")],2))}}},Symbol.toStringTag,{value:"Module"})),Me=["for"],Ce={key:0,title:"Это поле обязательно для заполнения."},Te=["required","placeholder","type","id","name"],Ve=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","focusInput"],["update:modelValue"]),setup(a,{emit:n}){var m;const t=e.useModel(a,"modelValue"),o=a,l=e.ref(null),c=n,u=_=>{c("focusInput"),_.target.setSelectionRange(t.value.length,t.value.length),l.value!==null&&(l.value.style.top="-.6em")},p=_=>{var S;((S=t.value)==null?void 0:S.length)===0&&l.value!==null&&l.value.removeAttribute("style")};((m=t.value)==null?void 0:m.length)>0&&l.value!==null&&(l.value.style.top="-.6em");const d=()=>{c("suffix")},f=()=>{c("prefix")},E=e.computed(()=>{let _=["sw-input"];return o.size.length>0&&_.push("sw-"+o.size),o.class.length>0&&_.push(o.class),_});e.watch(t,(_,S)=>{o.type==="phone"&&(t.value=D(_,S))});const D=(_,S)=>{if(/^\+[0-9]\s/.test(S)&&_.length===2||/^\+0\s/.test(_))return"";const h=_;if(typeof h>"u"||h.length===0)return h;const w="+0 (___) ___-__-__";let y=0;const z=w.replace(/\D/g,""),B=h.replace(/\D/g,"");let k=w.replace(/[_\d]/g,x=>y<B.length?B.charAt(y++)||z.charAt(y):x);y=k.indexOf("_"),y!==-1&&(y=y<5?3:y,k=k.slice(0,y));let $=w.slice(0,h.length).replace(/_+/g,x=>`\\d{1,${x.length}}`).replace(/[+()]/g,"\\$&");if($=new RegExp(`^${$}$`),k=k.replace(/[-—]$|(\) )$/g,""),!$.test(h)||h.length<5)return k};return(_,S)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(E.value)},[o.before.length>0?(e.openBlock(),e.createBlock(F,{key:0,"icon-class":o.before,onClick:f},null,8,["icon-class"])):e.renderSlot(_.$slots,"prefix",{key:1}),o.label.length>0?(e.openBlock(),e.createElementBlock("label",{key:2,for:o.name,ref_key:"lab",ref:l},[e.createTextVNode(e.toDisplayString(o.label),1),o.required?(e.openBlock(),e.createElementBlock("span",Ce,"*")):e.createCommentVNode("",!0)],8,Me)):e.createCommentVNode("",!0),e.withDirectives(e.createElementVNode("input",{"onUpdate:modelValue":S[0]||(S[0]=h=>t.value=h),required:o.required,placeholder:o.required&&o.label.length===0?o.placeholder+"*":o.placeholder,type:o.type,id:o.name,name:o.name,size:"60",onFocus:u,onBlur:p,maxlength:"128"},null,40,Te),[[e.vModelDynamic,t.value]]),o.after.length>0?(e.openBlock(),e.createBlock(F,{key:3,"icon-class":o.after,onClick:d},null,8,["icon-class"])):e.renderSlot(_.$slots,"suffix",{key:4})],2))}}},Symbol.toStringTag,{value:"Module"})),ze={key:0},Ne=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 n=e.useModel(a,"modelValue"),t=a,o=e.ref(null);return(l,c)=>{const u=e.resolveComponent("svg-icon");return n.value?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(["sw-message",t.class]),ref_key:"messageRef",ref:o},[t.name.length>0?(e.openBlock(),e.createElementBlock("header",ze,[e.renderSlot(l.$slots,"header",{},()=>[e.createTextVNode(e.toDisplayString(t.name)+" ",1),e.createVNode(H,{link:"",type:"primary",onClick:c[0]||(c[0]=p=>n.value=!1)},{default:e.withCtx(()=>[e.createVNode(u,{"icon-class":t.iconAfter},null,8,["icon-class"])]),_:1})])])):e.createCommentVNode("",!0),e.renderSlot(l.$slots,"default"),e.createElementVNode("footer",null,[e.renderSlot(l.$slots,"footer")])],2)):e.createCommentVNode("",!0)}}}},Symbol.toStringTag,{value:"Module"})),xe=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"SwSection",props:{name:{type:String,default:""},class:{type:String,default:""},iconAfter:{type:String,default:""}},emits:["header"],setup(a,{emit:n}){const t=a,o=n,l=()=>{o("header")};return(c,u)=>{const p=e.resolveComponent("svg-icon");return e.openBlock(),e.createElementBlock("section",{class:e.normalizeClass(t.class)},[e.createElementVNode("header",{onClick:l},[e.renderSlot(c.$slots,"header",{},()=>[e.createTextVNode(e.toDisplayString(t.name)+" ",1),e.createVNode(p,{"icon-class":t.iconAfter},null,8,["icon-class"])])]),e.renderSlot(c.$slots,"default"),e.createElementVNode("footer",null,[e.renderSlot(c.$slots,"footer")])],2)}}}},Symbol.toStringTag,{value:"Module"})),je={class:"popup"},Pe={class:"wrapper"},Oe={class:"scrollbar"},ve=["onClick"],Fe=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"SwSelect",props:e.mergeModels({class:{type:String,default:""},size:{type:String,default:"large"},placeholder:{type:String,default:""},token:{type:String,default:""}},{modelValue:{},modelModifiers:{}}),emits:["update:modelValue"],setup(a){const n=e.ref({fullText:""}),t=e.ref(!1),o=e.ref([]),l=e.useModel(a,"modelValue"),c=a;e.watch(l.text,d=>{d.length>3&&(n.value.fullText=d)}),e.watch(n.value.fullText,(d,f)=>{t.value=d.length>3&&d.length>f.length,d.length>3&&u()});const u=()=>{let d="https://suggestions.dadata.ru/suggestions/api/4_1/rs/suggest/address";console.log(n.value.fullText),axios.post(d,{query:n.value.fullText},{headers:{"Content-Type":"application/json",Accept:"application/json",Authorization:"Token "+c.token}}).then(f=>{console.log(f.data.suggestions),o.value=f.data.suggestions,o.value.length===1&&p(o.value[0])}).catch(f=>{console.log(f)})},p=d=>{n.value.fullText=d.value,t.value=!1;const f={};f.text=d.value,f.coords=[Number(d.data.geo_lat),Number(d.data.geo_lon)],f.suggestion=d.data,l.value=f};return(d,f)=>{const E=e.resolveComponent("sw-input");return e.openBlock(),e.createElementBlock("div",je,[e.createVNode(E,{size:c.size,modelValue:n.value.fullText,"onUpdate:modelValue":f[0]||(f[0]=D=>n.value.fullText=D),placeholder:a.placeholder},null,8,["size","modelValue","placeholder"]),e.withDirectives(e.createElementVNode("div",Pe,[e.createElementVNode("ul",Oe,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(o.value,(D,m)=>(e.openBlock(),e.createElementBlock("li",{tabindex:"1",key:m,onClick:_=>p(D)},e.toDisplayString(D.value),9,ve))),128))])],512),[[e.vShow,t.value]])])}}}},Symbol.toStringTag,{value:"Module"})),Ie={key:0},U={__name:"SwSkeletonItem",props:{width:{type:String,default:"100"},class:{type:String,default:""},animate:{type:Boolean,default:!1},size:{type:String,default:""}},setup(a){const n=a,t=e.computed(()=>{let l=["sw-skeleton-item"];return n.size.length>0&&l.push("sw-"+n.size),n.animate&&l.push("sw-animate"),n.class.length>0&&l.push(n.class),l}),o=e.computed(()=>({width:n.width+"%"}));return(l,c)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(t.value),style:e.normalizeStyle(o.value)},[n.animate?(e.openBlock(),e.createElementBlock("div",Ie)):e.createCommentVNode("",!0)],6))}},Ae=Object.freeze(Object.defineProperty({__proto__:null,default:U},Symbol.toStringTag,{value:"Module"})),Le=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"SwSkeleton",props:{class:{type:String,default:""},visual:{type:Boolean,default:!1}},setup(a){const n=a;return(t,o)=>n.visual?e.renderSlot(t.$slots,"default",{key:0}):(e.openBlock(),e.createElementBlock("div",{key:1,class:e.normalizeClass(["sw-skeleton",n.class])},[e.renderSlot(t.$slots,"skeleton",{},()=>[e.createVNode(U,{animate:"",size:"small"})])],2))}}},Symbol.toStringTag,{value:"Module"})),Ye=["name","id"],Re=["for","data-onlabel","data-offlabel"],qe=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 n=e.useModel(a,"modelValue"),t=a,o=e.computed(()=>{let l=["sw-switch"];return t.size.length>0&&l.push("sw-"+t.size),t.checkbox&&l.push("sw-checkbox"),t.class.length>0&&l.push(t.class),l});return(l,c)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(o.value)},[e.withDirectives(e.createElementVNode("input",{type:"checkbox",name:t.name,class:"sw-control",id:t.id,"onUpdate:modelValue":c[0]||(c[0]=u=>n.value=u)},null,8,Ye),[[e.vModelCheckbox,n.value]]),e.createElementVNode("label",{for:t.id,class:"sw-label","data-onlabel":t.on,"data-offlabel":t.off},null,8,Re),e.renderSlot(l.$slots,"default")],2))}}},Symbol.toStringTag,{value:"Module"})),He=["onClick"],Ue=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:n}){e.ref(0);const t=e.ref([]),o=a,l=e.useModel(a,"modelValue"),c=n;return t.value=e.useSlots().default().filter(u=>u.type.__name==="SwTabsPane"),console.log(t.value),e.provide("activeTab",l),e.provide("tabs",t),(u,p)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass("sw-tabs "+o.class)},[e.createElementVNode("header",null,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.value,(d,f)=>(e.openBlock(),e.createElementBlock("span",{key:f,class:e.normalizeClass([{active:l.value===f}]),onClick:E=>{l.value=f,c("tab-click",f)}},e.toDisplayString(d.props.label||d.props.title),11,He))),128))]),e.renderSlot(u.$slots,"default")],2))}}},Symbol.toStringTag,{value:"Module"})),We=["onClick"],Ge=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:n}){e.ref(0);const t=e.ref([]),o=a,l=e.useModel(a,"modelValue"),c=n;return e.provide("activeTab",l),e.provide("tabs",t),e.provide("registerTab",u=>{t.value.push(u)}),(u,p)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass("sw-tabs "+o.class)},[e.createElementVNode("header",null,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.value,(d,f)=>(e.openBlock(),e.createElementBlock("span",{key:f,class:e.normalizeClass([{active:l.value===f}]),onClick:E=>{l.value=f,c("tab-click",f)}},e.toDisplayString(d.props.label||d.props.title),11,We))),128))]),e.renderSlot(u.$slots,"default")],2))}}},Symbol.toStringTag,{value:"Module"})),Xe={key:0,class:"tab-content"},Je=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"SwTabsPane",props:{title:{type:String,required:!0}},setup(a){const n=a,t=e.inject("activeTab"),o=e.inject("tabs"),l=e.computed(()=>{const c=o.value.findIndex(u=>u.props.title===n.title);return t.value===c});return(c,u)=>l.value?(e.openBlock(),e.createElementBlock("div",Xe,[e.renderSlot(c.$slots,"default")])):e.createCommentVNode("",!0)}}},Symbol.toStringTag,{value:"Module"})),Qe={key:0,class:"tab-content"},Ze=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"SwTabsPaneNew",props:{label:{type:String,required:!0},title:{type:String}},setup(a){const n=a,t=e.inject("registerTab");if(!t)throw new Error("SwTabsPane must be used inside SwTabs");t({props:n});const o=e.inject("activeTab");if(!e.inject("tabs"))throw new Error("Tabs array is not provided by SwTabs");const c=e.inject("tabs").value.length-1;return(u,p)=>e.unref(o)===c?(e.openBlock(),e.createElementBlock("div",Qe,[e.renderSlot(u.$slots,"default")])):e.createCommentVNode("",!0)}}},Symbol.toStringTag,{value:"Module"}));V.Alert=A,V.Library=le,V.components=I,Object.defineProperty(V,Symbol.toStringTag,{value:"Module"})});
|
package/dist/index.js
CHANGED