@topvisor/ui 0.9.30 → 0.9.32
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/.chunks/datepicker-5QMJRJn-.amd.js +247 -0
- package/.chunks/datepicker-5QMJRJn-.amd.js.map +1 -0
- package/.chunks/datepicker-D1JLNEmV.es.js +289 -0
- package/.chunks/datepicker-D1JLNEmV.es.js.map +1 -0
- package/.chunks/{forms-0MQ_zU80.amd.js → forms-B2NcBl7S.amd.js} +3 -3
- package/.chunks/forms-B2NcBl7S.amd.js.map +1 -0
- package/.chunks/{forms-BkBLBZBn.es.js → forms-S36M7cBH.es.js} +68 -69
- package/.chunks/forms-S36M7cBH.es.js.map +1 -0
- package/.chunks/{listItem.vue_vue_type_script_setup_true_lang-CmrUY2go.es.js → listItem.vue_vue_type_script_setup_true_lang-BfCj7kQR.es.js} +20 -20
- package/.chunks/listItem.vue_vue_type_script_setup_true_lang-BfCj7kQR.es.js.map +1 -0
- package/.chunks/{listItem.vue_vue_type_script_setup_true_lang-Cr9e1nzK.amd.js → listItem.vue_vue_type_script_setup_true_lang-C7tg-67i.amd.js} +2 -2
- package/.chunks/listItem.vue_vue_type_script_setup_true_lang-C7tg-67i.amd.js.map +1 -0
- package/.chunks/{menu-BGUYnOx6.amd.js → menu-S1Hk7D3W.amd.js} +2 -2
- package/.chunks/menu-S1Hk7D3W.amd.js.map +1 -0
- package/.chunks/{menu-DMBqYUnZ.es.js → menu-v5knQbeF.es.js} +9 -9
- package/.chunks/menu-v5knQbeF.es.js.map +1 -0
- package/.chunks/{popup-CTCFSYwA.es.js → popup-BK3xlBZm.es.js} +485 -431
- package/.chunks/popup-BK3xlBZm.es.js.map +1 -0
- package/.chunks/{popup-CcxDRowY.amd.js → popup-DncRq57t.amd.js} +440 -386
- package/.chunks/popup-DncRq57t.amd.js.map +1 -0
- package/.chunks/store-Bl79G7T_.amd.js.map +1 -1
- package/.chunks/store-PoMCiuBr.es.js.map +1 -1
- package/.chunks/{widgetInput-Crf7T-Na.es.js → widgetInput-Br5COpvG.es.js} +3 -3
- package/.chunks/widgetInput-Br5COpvG.es.js.map +1 -0
- package/.chunks/{widgetInput-DfOBj0qz.amd.js → widgetInput-CrrUoVPc.amd.js} +2 -2
- package/.chunks/widgetInput-CrrUoVPc.amd.js.map +1 -0
- package/README.md +86 -86
- package/assets/core.css +1 -1
- package/assets/dark.css +1 -1
- package/assets/forms.css +1 -1
- package/assets/formsExt.css +1 -1
- package/assets/light.css +1 -1
- package/assets/menu.css +1 -1
- package/assets/tabs.css +1 -1
- package/assets/tabsView.css +1 -1
- package/assets/widgetInput.css +1 -1
- package/core/core.amd.js +1 -1
- package/core/core.js +1 -1
- package/forms/forms.amd.js +1 -1
- package/forms/forms.js +1 -1
- package/forms/helpers.amd.js.map +1 -1
- package/forms/helpers.js.map +1 -1
- package/formsExt/formsExt.amd.js +1 -1
- package/formsExt/formsExt.amd.js.map +1 -1
- package/formsExt/formsExt.js +6 -5
- package/formsExt/formsExt.js.map +1 -1
- package/icomoon/Read Me.txt +7 -7
- package/icomoon/demo-files/demo.css +161 -161
- package/icomoon/demo-files/demo.js +30 -30
- package/icomoon/demo.html +3379 -3239
- package/icomoon/fonts/Topvisor-2.svg +263 -253
- package/icomoon/fonts/Topvisor-2.ttf +0 -0
- package/icomoon/fonts/Topvisor-2.woff +0 -0
- package/icomoon/selection.json +1 -1
- package/icomoon/style.css +740 -710
- package/package.json +24 -24
- package/popup/popup.amd.js +1 -1
- package/popup/popup.js +2 -2
- package/popup/worker.amd.js +1 -1
- package/popup/worker.amd.js.map +1 -1
- package/popup/worker.js +2 -2
- package/popup/worker.js.map +1 -1
- package/project/project.amd.js +1 -1
- package/project/project.amd.js.map +1 -1
- package/project/project.js +38 -40
- package/project/project.js.map +1 -1
- package/require/css.amd.js +11 -17
- package/src/components/forms/button/button.stories.d.ts +3 -3
- package/src/components/forms/button/button.vue.d.ts +7 -5
- package/src/components/forms/checkbox/checkbox.stories.d.ts +8 -7
- package/src/components/forms/checkbox/checkbox.vue.d.ts +10 -6
- package/src/components/forms/controlLabel/controlLabel.stories.d.ts +3 -3
- package/src/components/forms/controlLabel/controlLabel.vue.d.ts +4 -2
- package/src/components/forms/hint/hint.stories.d.ts +12 -76
- package/src/components/forms/input/input.stories.d.ts +3 -3
- package/src/components/forms/input/input.vue.d.ts +6 -4
- package/src/components/forms/inputDate/datepicker.d.ts +0 -2
- package/src/components/forms/inputRange/inputRange.stories.d.ts +15 -47
- package/src/components/forms/inputRange/inputRange.vue.d.ts +4 -2
- package/src/components/forms/radio/radio.stories.d.ts +3 -3
- package/src/components/forms/radio/radio.vue.d.ts +6 -4
- package/src/components/forms/select/select.stories.d.ts +2 -2
- package/src/components/forms/select/select.vue.d.ts +4 -2
- package/src/components/forms/switcher/switcher.stories.d.ts +3 -3
- package/src/components/forms/switcher/switcher.vue.d.ts +6 -4
- package/src/components/formsExt/editInput/editInput.stories.d.ts +3 -3
- package/src/components/formsExt/editInput/editInput.vue.d.ts +6 -4
- package/src/components/formsExt/menu/menu.stories.d.ts +1 -1
- package/src/components/formsExt/menu/menu.vue.d.ts +1 -1
- package/src/components/formsExt/selector2/api.d.ts +3 -3
- package/src/components/formsExt/selector2/selector2.stories.d.ts +36 -35
- package/src/components/formsExt/selector2/selector2.vue.d.ts +19 -17
- package/src/components/popup/popup/listItem.vue.d.ts +7 -5
- package/src/components/popup/popup/opener.vue.d.ts +6 -4
- package/src/components/popup/popup/popup.stories.d.ts +21 -85
- package/src/components/popup/popup/popup.vue.d.ts +11 -9
- package/src/components/project/selectorCompetitors/composables.d.ts +5 -0
- package/src/components/project/selectorCompetitors/selectorCompetitors.d.ts +4 -2
- package/src/components/project/selectorCompetitors/selectorCompetitors.stories.d.ts +2 -2
- package/src/components/project/selectorCompetitors/selectorCompetitors.vue.d.ts +4 -2
- package/src/components/project/selectorCompetitors/stories/items.d.ts +2 -4
- package/src/components/project/selectorCompetitors/types/competitor.d.ts +7 -0
- package/src/components/tabs/tabs/content.vue.d.ts +4 -2
- package/src/components/tabs/tabs/tab.vue.d.ts +4 -2
- package/src/components/tabs/tabs/tabs.stories.d.ts +27 -91
- package/src/components/tabs/tabs/tabs.vue.d.ts +4 -2
- package/src/components/tabsView/tabsView/menu.vue.d.ts +6 -4
- package/src/components/tabsView/tabsView/menuItem.vue.d.ts +6 -4
- package/src/components/tabsView/tabsView/menuTitle.vue.d.ts +4 -2
- package/src/components/tabsView/tabsView/store.d.ts +18 -18
- package/src/components/tabsView/tabsView/tabsView.stories.d.ts +12 -12
- package/src/components/tabsView/tabsView/tabsView.vue.d.ts +6 -4
- package/src/components/tabsView/tabsView//320/255/320/273/320/265/320/274/320/265/320/275/321/202/321/213/MenuItem.stories.d.ts +9 -9
- package/src/components/tabsView/tabsView//320/255/320/273/320/265/320/274/320/265/320/275/321/202/321/213/MenuTitle.stories.d.ts +9 -9
- package/src/core/core/core.d.ts +1 -1
- package/src/core/utils/common.d.ts +1 -1
- package/src/core/utils/css.d.ts +2 -3
- package/src/core/utils/device.d.ts +0 -3
- package/src/core/utils/dom.d.ts +1 -1
- package/src/core/utils/price.d.ts +1 -1
- package/src/core/utils/store/localStorage.d.ts +1 -1
- package/src/core/utils/store/store.d.ts +2 -2
- package/src/core/utils/string.d.ts +1 -1
- package/tabs/tabs.amd.js +1 -1
- package/tabs/tabs.js +2 -2
- package/tabsView/tabsView.amd.js +1 -1
- package/tabsView/tabsView.amd.js.map +1 -1
- package/tabsView/tabsView.js +3 -3
- package/tabsView/tabsView.js.map +1 -1
- package/utils/check.amd.js.map +1 -1
- package/utils/check.js.map +1 -1
- package/utils/common.amd.js.map +1 -1
- package/utils/common.js.map +1 -1
- package/utils/css.amd.js +1 -1
- package/utils/css.amd.js.map +1 -1
- package/utils/css.js +33 -24
- package/utils/css.js.map +1 -1
- package/utils/date.amd.js +1 -1
- package/utils/date.js +1 -1
- package/utils/device.amd.js +1 -1
- package/utils/device.js +1 -1
- package/utils/dom.amd.js.map +1 -1
- package/utils/dom.js.map +1 -1
- package/utils/keyboard.amd.js.map +1 -1
- package/utils/keyboard.js.map +1 -1
- package/utils/price.amd.js.map +1 -1
- package/utils/price.js.map +1 -1
- package/utils/route.amd.js.map +1 -1
- package/utils/route.js.map +1 -1
- package/utils/scroll.amd.js +1 -1
- package/utils/scroll.amd.js.map +1 -1
- package/utils/scroll.js +1 -1
- package/utils/scroll.js.map +1 -1
- package/utils/string.amd.js.map +1 -1
- package/utils/string.js.map +1 -1
- package/utils/system.amd.js.map +1 -1
- package/utils/system.js.map +1 -1
- package/utils/url.amd.js.map +1 -1
- package/utils/url.js.map +1 -1
- package/utils/window.amd.js +1 -1
- package/utils/window.js +1 -1
- package/.chunks/datepicker-C5qdwKuQ.es.js +0 -276
- package/.chunks/datepicker-C5qdwKuQ.es.js.map +0 -1
- package/.chunks/datepicker-CCrqadMd.amd.js +0 -234
- package/.chunks/datepicker-CCrqadMd.amd.js.map +0 -1
- package/.chunks/forms-0MQ_zU80.amd.js.map +0 -1
- package/.chunks/forms-BkBLBZBn.es.js.map +0 -1
- package/.chunks/listItem.vue_vue_type_script_setup_true_lang-CmrUY2go.es.js.map +0 -1
- package/.chunks/listItem.vue_vue_type_script_setup_true_lang-Cr9e1nzK.amd.js.map +0 -1
- package/.chunks/menu-BGUYnOx6.amd.js.map +0 -1
- package/.chunks/menu-DMBqYUnZ.es.js.map +0 -1
- package/.chunks/popup-CTCFSYwA.es.js.map +0 -1
- package/.chunks/popup-CcxDRowY.amd.js.map +0 -1
- package/.chunks/widgetInput-Crf7T-Na.es.js.map +0 -1
- package/.chunks/widgetInput-DfOBj0qz.amd.js.map +0 -1
package/assets/forms.css
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
.top-avatar{width:var(--5365dc30);height:var(--5365dc30);display:flex;flex-grow:0;flex-shrink:0;position:relative;top:0;left:0}.top-avatar_image{border-radius:50%;width:100%;height:100%}.top-avatar_status{border-radius:50%;border:2px solid var(--content-background-color);background-color:var(--color-green-500);width:25%;height:25%;position:absolute;right:0;bottom:0}.top-button{cursor:pointer;box-sizing:border-box;box-shadow:var(--top-button-box-shadow);border-radius:var(--top-forms-radius);border:var(--top-forms-border-width) solid var(--top-forms-border-color);background-color:var(--top-button-background-color);height:var(--top-forms-base-height);padding:0 var(--top-forms-padding);color:var(--top-button-color);line-height:1;white-space:nowrap;display:inline-flex;align-items:center;justify-content:center;transition:background-color .15s,border-color .15s,box-shadow .15s}.top-button:hover{box-shadow:var(--top-button-box-shadow-hover);background-color:var(--top-button-background-color-hover)}.top-button:active{box-shadow:var(--top-button-box-shadow-active);background-color:var(--top-button-background-color-active)}.top-button.top-active{box-shadow:var(--top-button-box-shadow-selected);background-color:var(--top-button-background-color-selected)}.top-button.top-button-progress{cursor:help;box-shadow:inset #00000080 0 0 64px;background-image:linear-gradient(-45deg,rgba(255,255,255,.2) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.2) 50%,rgba(255,255,255,.2) 75%,transparent 75%,transparent);background-size:32px 32px;animation:_progress_1hqxk_1 1s linear infinite}@keyframes _progress_1hqxk_1{0%{background-position-x:0px}to{background-position-x:32px}}a.top-button,button.top-button{min-width:100px;text-decoration:none}a.top-button,a.top-button:hover{min-width:var(--top-forms-base-height);text-decoration:none}.top-button[data-top-icon]:not(:empty):not(.top-button-withoutText),.top-button[data-top-icon2]:not(:empty):not(.top-button-withoutText){justify-content:flex-start;text-align:left}.top-button[data-top-icon]{padding-left:0}.top-button[data-top-icon2]{padding-right:var(--top-select_arrow-width)}.top-button[data-top-icon2]:after{margin-left:auto}.top-button:empty,.top-button.top-button-withoutText{min-width:var(--top-forms-base-height)}.top-button[data-top-icon]:empty,.top-button[data-top-icon2]:empty,.top-button[data-top-icon].top-button-withoutText,.top-button[data-top-icon2].top-button-withoutText{padding:0}.top-button.top-color_blue{--top-button-background-color: var(--color-blue-500)}.top-button.top-color_green{--top-button-background-color: var(--color-green-500)}.top-button.top-color_orange{--top-button-background-color: var(--color-orange-500)}.top-button.top-color_red{--top-button-background-color: var(--color-red-500)}.top-button.top-color_pink{--top-button-background-color: var(--color-pink-500)}.top-button.top-color_theme{--top-button-box-shadow-hover: none;--top-button-box-shadow-active: none;--top-button-box-shadow-selected: none;--top-icon-color: var(--color-text-2);--top-icon2-color: var(--color-text-2);--top-button-color: var(--color-text-1);--top-button-background-color: transparent;--top-button-background-color-hover: var(--color-secondary-opacity);--top-button-background-color-active: var(--color-secondary-2-opacity);--top-button-background-color-selected: var(--color-secondary-2-opacity)}.top-button.top-color_theme.top-active{--top-icon-color: var(--color-text-2)}.top-button.top-style_outline{--top-button-box-shadow: none;--top-button-box-shadow-hover: none;--top-button-box-shadow-active: none;--top-button-box-shadow-selected: none;--top-forms-border-color: var(--top-style_outline-color);--top-style_outline-color: var(--color-steel-400);--top-button-color: var(--top-style_outline-color);--top-button-background-color: var(--content-background-color);--top-button-background-color-hover: var(--color-secondary-2-opacity);--top-button-background-color-active: var(--color-secondary-3-opacity);--top-button-background-color-selected: var(--color-secondary-3-opacity);--top-forms-border-width: 1px}.top-button.top-style_outline.top-color_theme{--top-button-color: var(--color-text)}.top-button.top-style_outline.top-color_blue{--top-style_outline-color: var(--color-blue-500)}.top-button.top-style_outline.top-color_green{--top-style_outline-color: var(--color-green-500)}.top-button.top-style_outline.top-color_orange{--top-style_outline-color: var(--color-orange-500)}.top-button.top-style_outline.top-color_red{--top-style_outline-color: var(--color-red-500)}.top-button.top-style_outline.top-color_pink{--top-style_outline-color: var(--color-pink-500)}.top-button.top-style_soft{--top-shadow-darken: none;--top-shadow-darken-2: none;--top-shadow-darken-3: none;--top-button-color: var(--color-text);--top-button-background-color: var(--color-secondary-opacity);--top-button-background-color-hover: var(--color-secondary-2-opacity);--top-button-background-color-active: var(--color-secondary-3-opacity);--top-button-background-color-selected: var(--color-secondary-3-opacity)}.top-button.top-style_soft.top-color_blue{--top-button-color: var(--color-blue-550)}.top-button.top-style_soft.top-color_orange{--top-button-color: var(--color-orange-500)}.top-button.top-style_soft.top-color_green{--top-button-color: var(--color-green-500)}.top-button.top-style_soft.top-color_red{--top-button-color: var(--color-red-500)}.top-button.top-style_soft.top-color_pink{--top-button-color: var(--color-pink-500)}.top-button.top-style_transparent{--top-shadow-darken: none;--top-shadow-darken-2: none;--top-shadow-darken-3: none;--top-button-color: var(--color-text);--top-button-background-color: transparent;--top-button-background-color-hover: transparent;--top-button-background-color-active: transparent;--top-button-background-color-selected: var(--color-steel-200)}.top-button.top-style_transparent:hover{opacity:.8}.top-button.top-style_transparent.top-color_blue{--top-button-color: var(--color-blue-450)}.top-button.top-style_transparent.top-color_green{--top-button-color: var(--color-green-450)}.top-button.top-style_transparent.top-color_orange{--top-button-color: var(--color-orange-450)}.top-button.top-style_transparent.top-color_red{--top-button-color: var(--color-red-450)}.top-button.top-style_transparent.top-color_pink{--top-button-color: var(--color-pink-450)}.top-button{--top-button-color: var(--color-white);--top-button-background-color: transparent;--top-button-background-color-hover: var(--top-button-background-color);--top-button-background-color-active: var(--top-button-background-color-hover);--top-button-background-color-selected: var(--top-button-background-color-hover);--top-button-box-shadow: none;--top-button-box-shadow-hover: var(--top-shadow-darken-2);--top-button-box-shadow-active: var(--top-shadow-darken-3);--top-button-box-shadow-selected: var(--top-shadow-darken-3);--top-forms-border-width: 0px;--top-icon-width: calc(var(--top-icon-size) + var(--top-forms-padding));--top-icon2-width: calc(var(--top-icon2-size) + var(--top-forms-padding))}.top-button.top-size_l{--top-forms-padding: var(--top-forms-padding_l);--top-forms-base-height: var(--top-forms-base-height_l)}.top-button.top-size_xl{--top-forms-padding: var(--top-forms-padding_xl);--top-forms-base-height: var(--top-forms-base-height_xl)}.top-forms-optionLabel{flex-grow:1}.top-forms-optionLabel_title{min-height:var(--top-forms-option-height);display:flex;align-items:center}.top-forms-optionLabel_title-disabled{color:var(--color-text-3)}.top-forms-optionLabel_description{color:var(--color-text-2);font-size:.85em;line-height:var(--top-forms-option-height)}.top-forms-optionLabel_description-disabled{color:var(--color-text-3)}.top-checkbox{cursor:pointer;display:inline-flex}.top-checkbox_input{cursor:inherit;border-radius:4px;background:var(--content-background-color);border:1px solid var(--top-forms-border-color);width:calc(var(--top-forms-option-height) - 3px * 2);height:calc(var(--top-forms-option-height) - 3px * 2)}.top-checkbox_input:before{content:" ";color:#fff;font-family:Topvisor-2;font-size:16px}.top-checkbox_input:hover{border-color:var(--top-forms-option-color);background:var(--color-theme-50)}.top-checkbox_input:checked,.top-checkbox_input:indeterminate{border-color:var(--top-forms-option-color);background:var(--top-forms-option-color)}.top-checkbox_input:checked:before{content:""}.top-checkbox_input:indeterminate:before{content:""}.top-checkbox_input:checked:hover,.top-checkbox_input:indeterminate:hover{border-color:var(--top-forms-option-color-hover);background:var(--top-forms-option-color-hover)}.top-checkbox_input:disabled{border-color:var(--color-line-1-opacity);background:var(--color-theme-50)}.top-checkbox_input:checked:disabled,.top-checkbox_input:indeterminate:disabled{border-color:transparent;background:var(--color-theme-400)}.top-checkbox_input.top-error{border-color:var(--color-negative)}.top-checkbox_input.top-error:hover{border-color:var(--color-negative-2)}.top-checkbox_input:checked.top-error,.top-checkbox_input:indeterminate.top-error{background:var(--color-negative)}.top-checkbox_input:checked.top-error:hover,.top-checkbox_input:indeterminate.top-error:hover{background:var(--color-negative-2)}.top-hint{--top-icon-size: 16px;--top-icon-width: var(--top-icon-size);border-radius:50%;background:var(--content-background-color);padding:1px;color:var(--color-text-4);line-height:1;z-index:1;pointer-events:all}.top-hint:hover{color:var(--color-text-3)}.top-input-datepicker{width:calc(105px + var(--top-icon-width) + var(--top-icon2-width))}.top-input_input-date{opacity:0;position:absolute;inset:0;z-index:-1}.top-input_input-date::-webkit-inner-spin-button{display:none}.top-input_input-date::-webkit-calendar-picker-indicator{opacity:0}.top-inputRange{max-width:320px;vertical-align:baseline;display:inline-flex;gap:8px}.top-inputRange_dash{height:var(--top-forms-base-height);color:var(--color-text-4);align-self:flex-end;display:inline-flex;align-items:center}.top-inputRange>.top-input{flex-grow:1}:root{--top-radio-background-color: var(--content-background-color);--top-radio-background-color-hover: var(--top-radio-background-color);--top-radio-background-color-active: var(--top-radio-background-color)}.top-radio{cursor:pointer}.top-radio_input{border-radius:50%;background:var(--content-background-color);border:1px solid var(--top-forms-border-color);width:calc(var(--top-forms-option-height) - 3px * 2);height:calc(var(--top-forms-option-height) - 3px * 2)}.top-radio_input:hover{border-color:var(--top-forms-option-color);background:var(--color-theme-50)}.top-radio_input:checked{border-color:var(--top-forms-option-color);border-width:5px}.top-radio_input:checked:hover{border-color:var(--top-forms-option-color-hover)}.top-radio_input:disabled{border-color:var(--color-line-1-opacity);background:var(--color-theme-50)}.top-radio_input:checked:disabled{border-color:var(--color-theme-400)}.top-radio_input.top-error{border-color:var(--color-negative)}.top-radio_input.top-error:hover{border-color:var(--color-negative-2)}.top-checkboxSwitcher{cursor:pointer;display:inline-flex;gap:4px}.top-checkboxSwitcher_input{border-radius:9px;border:none;background:var(--color-theme-100);width:36px;height:18px;position:relative}.top-checkboxSwitcher_input:before{content:"";border-radius:50%;background:var(--color-white);width:12px;height:12px;margin:3px;position:absolute;top:0;left:0;transition:left .1s}.top-checkboxSwitcher_input:hover{background:var(--color-theme-150)}.top-checkboxSwitcher_input:checked{background:var(--top-forms-option-color)}.top-checkboxSwitcher_input:checked:hover{background:var(--top-forms-option-color-hover)}.top-checkboxSwitcher_input:checked:before{left:50%}.top-checkboxSwitcher_input:disabled{background:var(--color-theme-400)}.top-checkboxSwitcher_input.top-error{background:var(--color-negative)}.top-checkboxSwitcher_input.top-error:hover{background:var(--color-negative-2)}.top-textarea{width:180px;display:inline-flex;align-items:center;position:relative}.top-textarea_textarea{background:var(--top-forms-background-color);width:100%;padding:var(--top-forms-padding);resize:none}.top-textarea_textarea:hover{background:var(--top-forms-background-color-hover)}.top-textarea_textarea:focus{outline-color:var(--color-theme-75);outline-offset:0px}.top-textarea_textarea.top-textarea_textarea-expandable{width:100%;height:100%;overflow:hidden;position:absolute;top:0;left:0}.top-textarea_pseudoContent{box-sizing:border-box;min-height:var(--c35baa86);padding:var(--top-forms-padding);font-size:14px;white-space:pre-wrap;overflow-wrap:anywhere;pointer-events:none;opacity:0;z-index:-1}.top-textarea_hint{position:absolute;top:2px;right:2px}.top-select{--top-icon-color: var(--color-text-3);--top-icon2-color: var(--color-text-2);align-items:center;width:180px;max-width:100%;display:inline-flex}.top-select-error{--top-icon-color: var(--color-negative);--top-icon2-color: var(--color-negative)}.top-select_select{background-color:var(--top-forms-background-color);padding-left:var(--top-forms-padding);text-indent:clamp(0px,calc(var(--top-icon-both-width) - var(--top-forms-padding)),calc(var(--top-icon-both-width) - var(--top-forms-padding)));width:100%;height:var(--top-forms-base-height);text-overflow:ellipsis;white-space:nowrap;flex-grow:1;overflow:hidden}.top-select_select:focus{outline-color:var(--color-theme-75);outline-offset:0}.top-select_select:disabled{background:var(--color-theme-50)}.top-select optgroup{color:var(--color-text-1);font-style:normal}.top-select option:not(:disabled){background:var(--content-background-color);color:var(--color-text-1)}.top-select option:disabled{background:unset;color:unset}@-moz-document url-prefix(){.top-select_select{text-indent:calc(clamp(0px,calc(var(--top-icon-both-width) - var(--top-forms-padding)),calc(var(--top-icon-both-width) - var(--top-forms-padding)))/2)}}@media only screen and (min-width: 900px){.top-changer{cursor:pointer;border-radius:100%;width:0;transform:translate(-44px);color:var(--color-text-secondary-2);font-size:16px;line-height:1;display:none;z-index:2;order:4}.top-changer:hover{color:var(--color-primary)}.top-changer:after{content:"";background-color:var(--top-forms-background-color);font-family:Topvisor-2}*:hover>.top-changer{display:block}}:root{--top-loadbar-duration: 10s;--top-loadbar-color: var(--color-blue-500)}.top-loadbar{background:var(--top-loadbar-color);width:0;height:4px;position:absolute;top:0;left:0;animation:top-loadbar var(--top-loadbar-duration) forwards}@keyframes top-loadbar{0%{width:4px}4%{width:4%}5%{width:5%}to{width:95%}}.top-input{--top-forms_clear-width: 0px;border-radius:var(--top-forms-radius);width:180px;position:relative;display:inline-flex;align-items:center;gap:var(--top-gap-1)}.top-input_input{background:var(--top-forms-background-color);height:var(--top-forms-base-height);padding:0;padding-right:max(var(--top-forms-padding),calc(var(--top-icon2-width) + var(--top-forms_clear-width)));padding-left:max(var(--top-forms-padding),var(--top-icon-width))}.top-input_input:hover{background:var(--top-forms-background-color-hover)}.top-input_input:focus{outline-color:var(--color-theme-75);outline-offset:0}.top-input[data-top-icon]:before,.top-input[data-top-icon2]:after{--top-icon-color: var(--color-text-secondary);--top-icon2-color: var(--color-text-secondary);position:absolute;z-index:3}.top-input[data-top-icon]:before{left:0}.top-input[data-top-icon2]:after{right:0}.top-input-withCleaner{--top-forms_clear-width: 24px}.top-input_cleaner{--top-icon-size: 16px;--top-icon-width: 20px;--top-icon-color: var(--color-text-3);cursor:pointer;border-radius:50%;width:20px;height:16px;position:absolute;right:calc(var(--top-forms-border-width) + max(var(--top-icon2-width),var(--top-forms-padding) / 2));z-index:1;display:flex;align-items:center;justify-content:center}.top-input_cleaner:hover{--top-icon-color: var(--color-text-2)}.top-input_input{width:50%;flex-grow:1}.top-input .top-loadbar{border-radius:var(--top-forms-radius) 0 0 0}
|
|
1
|
+
.top-avatar{width:var(--15bd2dfc);height:var(--15bd2dfc);display:flex;flex-grow:0;flex-shrink:0;position:relative;top:0;left:0}.top-avatar_image{border-radius:50%;width:100%;height:100%}.top-avatar_status{border-radius:50%;border:2px solid var(--content-background-color);background-color:var(--color-bg-positive-2);width:25%;height:25%;position:absolute;right:0;bottom:0}.top-button{cursor:pointer;box-sizing:border-box;box-shadow:var(--top-button-box-shadow);border-radius:var(--top-forms-radius);border:var(--top-forms-border-width) solid var(--top-forms-border-color);background-color:var(--top-button-background-color);height:var(--top-forms-base-height);padding:0 var(--top-forms-padding);color:var(--top-button-color);line-height:1;white-space:nowrap;display:inline-flex;align-items:center;justify-content:center;transition:background-color .15s,border-color .15s,box-shadow .15s}.top-button:hover{box-shadow:var(--top-button-box-shadow-hover);background-color:var(--top-button-background-color-hover)}.top-button:active{box-shadow:var(--top-button-box-shadow-active);background-color:var(--top-button-background-color-active)}.top-button.top-active{box-shadow:var(--top-button-box-shadow-selected);background-color:var(--top-button-background-color-selected)}.top-button.top-button-progress{cursor:help;box-shadow:inset #00000080 0 0 64px;background-image:linear-gradient(-45deg,rgba(255,255,255,.2) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.2) 50%,rgba(255,255,255,.2) 75%,transparent 75%,transparent);background-size:32px 32px;animation:_progress_1f1nw_1 1s linear infinite}@keyframes _progress_1f1nw_1{0%{background-position-x:0px}to{background-position-x:32px}}a.top-button,button.top-button{min-width:100px;text-decoration:none}a.top-button,a.top-button:hover{min-width:var(--top-forms-base-height);text-decoration:none}.top-button[data-top-icon]:not(:empty):not(.top-button-withoutText),.top-button[data-top-icon2]:not(:empty):not(.top-button-withoutText){justify-content:flex-start;text-align:left}.top-button[data-top-icon]{padding-left:0}.top-button[data-top-icon2]{padding-right:var(--top-select_arrow-width)}.top-button[data-top-icon2]:after{margin-left:auto}.top-button:empty,.top-button.top-button-withoutText{min-width:var(--top-forms-base-height)}.top-button[data-top-icon]:empty,.top-button[data-top-icon2]:empty,.top-button[data-top-icon].top-button-withoutText,.top-button[data-top-icon2].top-button-withoutText{padding:0}.top-button.top-color_blue{--top-button-background-color: var(--color-bg-primary-2)}.top-button.top-color_green{--top-button-background-color: var(--color-bg-positive-2)}.top-button.top-color_orange{--top-button-background-color: var(--color-bg-warning-2)}.top-button.top-color_red{--top-button-background-color: var(--color-bg-negative-2)}.top-button.top-color_pink{--top-button-background-color: var(--color-bg-info-2)}.top-button.top-color_theme{--top-button-box-shadow-hover: none;--top-button-box-shadow-active: none;--top-button-box-shadow-selected: none;--top-icon-color: var(--color-icon-2);--top-icon2-color: var(--color-icon-2);--top-button-color: var(--color-text-1);--top-button-background-color: transparent;--top-button-background-color-hover: var(--color-layer-secondary-1);--top-button-background-color-active: var(--color-layer-secondary-3);--top-button-background-color-selected: var(--color-layer-secondary-2)}.top-button.top-color_theme:hover{--top-icon-color: var(--color-icon-1);--top-icon2-color: var(--color-icon-1)}.top-button.top-color_theme.top-active{--top-icon-color: var(--color-text-2)}.top-button.top-style_outline{--top-button-box-shadow: none;--top-button-box-shadow-hover: none;--top-button-box-shadow-active: none;--top-button-box-shadow-selected: none;--top-forms-border-color: var(--top-style_outline-color);--top-style_outline-color: var(--color-line-2);--top-button-color: var(--top-style_outline-color);--top-button-background-color: var(--content-background-color);--top-button-background-color-hover: var(--top-button-background-color-hover);--top-button-background-color-active: var(--top-button-background-color-active);--top-button-background-color-selected: var(--top-button-background-color-selected);--top-forms-border-width: 1px}.top-button.top-style_outline.top-color_theme{--top-button-color: var(--color-text-1);--top-icon-color: var(--color-icon-2);--top-icon2-color: var(--color-icon-2);--top-style_outline-color: var(--color-line-2);--top-button-background-color-hover: var(--color-layer-secondary-1);--top-button-background-color-active: var(--color-layer-secondary-2);--top-button-background-color-selected: var(--color-layer-secondary-3)}.top-button.top-style_outline.top-color_theme:hover{--top-button-color: var(--color-text-1);--top-icon-color: var(--color-icon-1);--top-icon2-color: var(--color-icon-1)}.top-button.top-style_outline.top-color_blue{--top-button-color: var(--color-text-primary-2);--top-style_outline-color: var(--color-line-primary-1);--top-icon-color: var(--color-icon-primary-1);--top-icon2-color: var(--color-icon-primary-1);--top-button-background-color-hover: var(--color-layer-primary-1);--top-button-background-color-active: var(--color-layer-primary-2);--top-button-background-color-selected: var(--color-layer-primary-3)}.top-button.top-style_outline.top-color_blue:hover{--top-button-color: var(--color-text-primary-1);--top-icon-color: var(--color-icon-primary-2);--top-icon2-color: var(--color-icon-primary-2)}.top-button.top-style_outline.top-color_green{--top-button-color: var(--color-text-positive-2);--top-style_outline-color: var(--color-line-positive-1);--top-button-background-color-hover: var(--color-layer-positive-1);--top-button-background-color-active: var(--color-layer-positive-2);--top-button-background-color-selected: var(--color-layer-positive-3)}.top-button.top-style_outline.top-color_green:hover{--top-button-color: var(--color-text-positive-1);--top-icon-color: var(--color-icon-positive-2);--top-icon2-color: var(--color-icon-positive-2)}.top-button.top-style_outline.top-color_orange{--top-button-color: var(--color-text-warning-2);--top-style_outline-color: var(--color-line-warning-1);--top-button-background-color-hover: var(--color-layer-warning-1);--top-button-background-color-active: var(--color-layer-warning-2);--top-button-background-color-selected: var(--color-layer-warning-3)}.top-button.top-style_outline.top-color_orange:hover{--top-button-color: var(--color-text-warning-1);--top-icon-color: var(--color-icon-warning-2);--top-icon2-color: var(--color-icon-warning-2)}.top-button.top-style_outline.top-color_red{--top-button-color: var(--color-text-negative-2);--top-style_outline-color: var(--color-line-negative-1);--top-button-background-color-hover: var(--color-layer-negative-1);--top-button-background-color-active: var(--color-layer-negative-2);--top-button-background-color-selected: var(--color-layer-negative-3)}.top-button.top-style_outline.top-color_red:hover{--top-button-color: var(--color-text-negative-1);--top-icon-color: var(--color-icon-negative-2);--top-icon2-color: var(--color-icon-negative-2)}.top-button.top-style_outline.top-color_pink{--top-button-color: var(--color-text-info-2);--top-style_outline-color: var(--color-line-info-1);--top-button-background-color-hover: var(--color-layer-info-1);--top-button-background-color-active: var(--color-layer-info-2);--top-button-background-color-selected: var(--color-layer-info-3)}.top-button.top-style_outline.top-color_pink:hover{--top-button-color: var(--color-text-info-1);--top-icon-color: var(--color-icon-info-2);--top-icon2-color: var(--color-icon-info-2)}.top-button.top-style_soft{--top-shadow-darken: none;--top-shadow-darken-2: none;--top-shadow-darken-3: none}.top-button.top-style_soft.top-color_theme{--top-button-color: var(--color-text-1);--top-icon-color: var(--color-icon-2);--top-icon2-color: var(--color-icon-2);--top-button-background-color: var(--color-layer-secondary-1);--top-button-background-color-hover: var(--color-layer-secondary-2);--top-button-background-color-active: var(--color-layer-secondary-4);--top-button-background-color-selected: var(--color-layer-secondary-3)}.top-button.top-style_soft.top-color_blue{--top-button-color: var(--color-text-primary-1);--top-icon-color: var(--color-icon-primary-1);--top-icon2-color: var(--color-icon-primary-1);--top-button-background-color: var(--color-layer-primary-1);--top-button-background-color-hover: var(--color-layer-primary-2);--top-button-background-color-active: var(--color-layer-primary-4);--top-button-background-color-selected: var(--color-layer-primary-3)}.top-button.top-style_soft.top-color_green{--top-button-color: var(--color-text-positive-1);--top-icon-color: var(--color-icon-positive-1);--top-icon2-color: var(--color-icon-positive-1);--top-button-background-color: var(--color-layer-positive-1);--top-button-background-color-hover: var(--color-layer-positive-2);--top-button-background-color-active: var(--color-layer-positive-4);--top-button-background-color-selected: var(--color-layer-positive-3)}.top-button.top-style_soft.top-color_orange{--top-button-color: var(--color-text-warning-1);--top-icon-color: var(--color-icon-warning-1);--top-icon2-color: var(--color-icon-warning-1);--top-button-background-color: var(--color-layer-warning-1);--top-button-background-color-hover: var(--color-layer-warning-2);--top-button-background-color-active: var(--color-layer-warning-4);--top-button-background-color-selected: var(--color-layer-warning-3)}.top-button.top-style_soft.top-color_red{--top-button-color: var(--color-text-negative-1);--top-icon-color: var(--color-icon-negative-1);--top-icon2-color: var(--color-icon-negative-1);--top-button-background-color: var(--color-layer-negative-1);--top-button-background-color-hover: var(--color-layer-negative-2);--top-button-background-color-active: var(--color-layer-negative-4);--top-button-background-color-selected: var(--color-layer-negative-3)}.top-button.top-style_soft.top-color_pink{--top-button-color: var(--color-text-info-1);--top-icon-color: var(--color-icon-info-1);--top-icon2-color: var(--color-icon-info-1);--top-button-background-color: var(--color-layer-info-1);--top-button-background-color-hover: var(--color-layer-info-2);--top-button-background-color-active: var(--color-layer-info-4);--top-button-background-color-selected: var(--color-layer-info-3)}.top-button.top-style_transparent{--top-shadow-darken: none;--top-shadow-darken-2: none;--top-shadow-darken-3: none;--top-button-color: var(--color-text);--top-button-background-color: transparent;--top-button-background-color-hover: transparent;--top-button-background-color-active: transparent;--top-button-background-color-selected: var(--color-steel-200)}.top-button.top-style_transparent:hover{opacity:.8}.top-button.top-style_transparent.top-color_blue{--top-button-color: var(--color-text-primary-2)}.top-button.top-style_transparent.top-color_green{--top-button-color: var(--color-text-positive-2)}.top-button.top-style_transparent.top-color_orange{--top-button-color: var(--color-text-warning-2)}.top-button.top-style_transparent.top-color_red{--top-button-color: var(--color-text-negative-2)}.top-button.top-style_transparent.top-color_pink{--top-button-color: var(--color-text-info-1)}.top-button{--top-button-color: var(--color-white);--top-button-background-color: transparent;--top-button-background-color-hover: var(--top-button-background-color);--top-button-background-color-active: var(--top-button-background-color-hover);--top-button-background-color-selected: var(--top-button-background-color-hover);--top-button-box-shadow: none;--top-button-box-shadow-hover: var(--top-shadow-darken-2);--top-button-box-shadow-active: var(--top-shadow-darken-3);--top-button-box-shadow-selected: var(--top-shadow-darken-3);--top-forms-border-width: 0px;--top-icon-width: calc(var(--top-icon-size) + var(--top-forms-padding));--top-icon2-width: calc(var(--top-icon2-size) + var(--top-forms-padding))}.top-button.top-size_l{--top-forms-padding: var(--top-forms-padding_l);--top-forms-base-height: var(--top-forms-base-height_l)}.top-button.top-size_xl{--top-forms-padding: var(--top-forms-padding_xl);--top-forms-base-height: var(--top-forms-base-height_xl)}.top-forms-optionLabel{flex-grow:1}.top-forms-optionLabel_title{color:var(--color-text-1);min-height:var(--top-forms-option-height);display:flex;align-items:center}.top-forms-optionLabel_title-disabled{color:var(--color-text-3)}.top-forms-optionLabel_description{color:var(--color-text-2);font-size:.85em;line-height:var(--top-forms-option-height)}.top-forms-optionLabel_description-disabled{color:var(--color-text-3)}.top-checkbox{cursor:pointer;display:inline-flex}.top-checkbox_input{cursor:inherit;border-radius:4px;background:var(--content-background-color);border:1px solid var(--top-forms-border-color);width:calc(var(--top-forms-option-height) - 3px * 2);height:calc(var(--top-forms-option-height) - 3px * 2)}.top-checkbox_input:before{content:" ";color:#fff;font-family:Topvisor-2;font-size:16px}.top-checkbox_input:hover{border-color:var(--top-forms-border-color-hover);background:var(--color-theme-100)}.top-checkbox_input:checked,.top-checkbox_input:indeterminate{border-color:var(--color-bg-primary-2);background:var(--color-bg-primary-2)}.top-checkbox_input:checked:before{content:""}.top-checkbox_input:indeterminate:before{content:""}.top-checkbox_input:checked:hover,.top-checkbox_input:indeterminate:hover{border-color:var(--color-bg-primary-1);background:var(--color-bg-primary-1)}.top-checkbox_input:disabled{border-color:var(--color-line-1);background:var(--color-theme-100)}.top-checkbox_input:checked:disabled,.top-checkbox_input:indeterminate:disabled{border-color:transparent;background:var(--color-theme-400)}.top-checkbox_input.top-error{border-color:var(--color-bg-negative-2)}.top-checkbox_input.top-error:hover{border-color:var(--color-bg-negative-1)}.top-checkbox_input:checked.top-error,.top-checkbox_input:indeterminate.top-error{background:var(--color-bg-negative-2)}.top-checkbox_input:checked.top-error:hover,.top-checkbox_input:indeterminate.top-error:hover{background:var(--color-bg-negative-1)}.top-hint{--top-icon-size: 16px;--top-icon-width: var(--top-icon-size);border-radius:50%;background:var(--content-background-color);padding:1px;color:var(--color-icon-3);line-height:1;z-index:1;pointer-events:all}.top-hint:hover{color:var(--color-icon-2)}.top-input-datepicker{width:calc(105px + var(--top-icon-width) + var(--top-icon2-width))}.top-input_input-date{opacity:0;position:absolute;inset:0;z-index:-1}.top-input_input-date::-webkit-inner-spin-button{display:none}.top-input_input-date::-webkit-calendar-picker-indicator{opacity:0}.top-inputRange{max-width:320px;vertical-align:baseline;display:inline-flex;gap:8px}.top-inputRange_dash{height:var(--top-forms-base-height);color:var(--color-text-4);align-self:flex-end;display:inline-flex;align-items:center}.top-inputRange>.top-input{flex-grow:1}:root{--top-radio-background-color: var(--content-background-color);--top-radio-background-color-hover: var(--top-radio-background-color);--top-radio-background-color-active: var(--top-radio-background-color)}.top-radio{cursor:pointer}.top-radio_input{border-radius:50%;background:var(--content-background-color);border:1px solid var(--color-line-3);width:calc(var(--top-forms-option-height) - 3px * 2);height:calc(var(--top-forms-option-height) - 3px * 2)}.top-radio_input:hover{border-color:var(--color-line-3);background:var(--color-layer-secondary-1)}.top-radio_input:checked{border-color:var(--color-line-primary-1);border-width:5px}.top-radio_input:checked:hover{border-color:var(--color-line-primary-2)}.top-radio_input:disabled{border-color:var(--color-line-1-opacity);background:var(--color-theme-100)}.top-radio_input:checked:disabled{border-color:var(--color-theme-400)}.top-radio_input.top-error{border-color:var(--color-line-negative-1)}.top-radio_input.top-error:hover{border-color:var(--color-line-negative-2)}.top-checkboxSwitcher{cursor:pointer;display:inline-flex;gap:4px}.top-checkboxSwitcher_input{border-radius:9px;border:none;background:var(--color-layer-secondary-2);width:36px;height:18px;position:relative}.top-checkboxSwitcher_input:before{content:"";border-radius:50%;background:var(--color-white);width:12px;height:12px;margin:3px;position:absolute;top:0;left:0;transition:left .1s}.top-checkboxSwitcher_input:hover{background:var(--color-layer-secondary-4)}.top-checkboxSwitcher_input:checked{background:var(--color-bg-primary-2)}.top-checkboxSwitcher_input:checked:hover{background:var(--color-bg-primary-1)}.top-checkboxSwitcher_input:checked:before{left:50%}.top-checkboxSwitcher_input:disabled{background:var(--color-theme-400)}.top-checkboxSwitcher_input.top-error{background:var(--color-layer-negative-3)}.top-checkboxSwitcher_input.top-error:hover{background:var(--color-layer-negative-4)}.top-checkboxSwitcher_input.top-error:checked{background:var(--color-bg-negative-2)}.top-checkboxSwitcher_input.top-error:checked:hover{background:var(--color-bg-negative-1)}.top-textarea{width:180px;display:inline-flex;align-items:center;position:relative}.top-textarea_textarea{color:var(--color-text-1);background:var(--top-forms-background-color);width:100%;padding:var(--top-forms-padding);resize:none}.top-textarea_textarea:hover{background:var(--top-forms-background-color-hover)}.top-textarea_textarea:focus{border-color:var(--color-line-primary-1);outline:none}.top-textarea_textarea.top-textarea_textarea-expandable{width:100%;height:100%;overflow:hidden;position:absolute;top:0;left:0}.top-textarea_pseudoContent{box-sizing:border-box;min-height:var(--6e3fbb58);padding:var(--top-forms-padding);font-size:14px;white-space:pre-wrap;overflow-wrap:anywhere;pointer-events:none;opacity:0;z-index:-1}.top-textarea_hint{position:absolute;top:2px;right:2px}.top-select{color:var(--color-text-1);--top-icon-color: var(--color-icon-2);--top-icon2-color: var(--color-icon-2);align-items:center;width:180px;max-width:100%;display:inline-flex}.top-select-error{--top-icon-color: var(--color-icon-negative-1);--top-icon2-color: var(--color-icon-negative-1)}.top-select_select{background-color:var(--top-forms-background-color);padding-left:var(--top-forms-padding);text-indent:clamp(0px,calc(var(--top-icon-both-width) - var(--top-forms-padding)),calc(var(--top-icon-both-width) - var(--top-forms-padding)));width:100%;height:var(--top-forms-base-height);text-overflow:ellipsis;white-space:nowrap;flex-grow:1;overflow:hidden}.top-select_select:disabled{color:var(--color-text-3)}.top-select optgroup{color:var(--color-text-1);font-style:normal}.top-select option:not(:disabled){background:var(--content-background-color);color:var(--color-text-1)}.top-select option:disabled{background:unset;color:unset}@-moz-document url-prefix(){.top-select_select{text-indent:calc(clamp(0px,calc(var(--top-icon-both-width) - var(--top-forms-padding)),calc(var(--top-icon-both-width) - var(--top-forms-padding)))/2)}}@media only screen and (min-width: 900px){.top-changer{cursor:pointer;border-radius:100%;width:0;transform:translate(-44px);color:var(--color-text-2);font-size:16px;line-height:1;display:none;z-index:2;order:4}.top-changer:hover{color:var(--color-primary)}.top-changer:after{content:"";background-color:var(--top-forms-background-color);font-family:Topvisor-2}*:hover>.top-changer{display:block}}:root{--top-loadbar-duration: 10s;--top-loadbar-color: var(--color-line-primary-2)}.top-loadbar{background:var(--top-loadbar-color);width:0;height:4px;position:absolute;top:0;left:0;animation:top-loadbar var(--top-loadbar-duration) forwards}@keyframes top-loadbar{0%{width:4px}4%{width:4%}5%{width:5%}to{width:95%}}.top-input{--top-forms_clear-width: 0px;border-radius:var(--top-forms-radius);width:180px;position:relative;display:inline-flex;align-items:center;gap:var(--top-gap-1)}.top-input_input{color:var(--color-text-2);background:var(--top-forms-background-color);height:var(--top-forms-base-height);padding:0;padding-right:max(var(--top-forms-padding),calc(var(--top-icon2-width) + var(--top-forms_clear-width)));padding-left:max(var(--top-forms-padding),var(--top-icon-width))}.top-input_input:hover{background:var(--top-forms-background-color-hover)}.top-input_input:focus{color:var(--color-text-1);border-color:var(--color-line-primary-1);outline:none}.top-input[data-top-icon]:before,.top-input[data-top-icon2]:after{--top-icon-color: var(--color-icon-2);--top-icon2-color: var(--color-icon-2);position:absolute;z-index:3;font-size:20px}.top-input[data-top-icon]:before{left:0}.top-input[data-top-icon2]:after{right:0}.top-input-withCleaner{--top-forms_clear-width: 24px}.top-input_cleaner{--top-icon-size: 16px;--top-icon-width: 20px;--top-icon-color: var(--color-icon-3);cursor:pointer;border-radius:50%;width:20px;height:16px;position:absolute;right:calc(var(--top-forms-border-width) + max(var(--top-icon2-width),var(--top-forms-padding) / 2));z-index:1;display:flex;align-items:center;justify-content:center}.top-input_cleaner:hover{--top-icon-color: var(--color-icon-2)}.top-input_input{width:50%;flex-grow:1}.top-input .top-loadbar{border-radius:var(--top-forms-radius) 0 0 0}
|
package/assets/formsExt.css
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
.top-editArea{display:flex;flex-direction:column;gap:6px}.top-editArea_title{font-size:12px}.top-editArea_form{
|
|
1
|
+
.top-editArea{display:flex;flex-direction:column;gap:6px}.top-editArea_title{font-size:12px}.top-editArea_form{flex-direction:column}.top-editArea_form-focus{border-color:var(--color-primary)}.top-editArea_form:hover{border-color:var(--top-forms-border-color-hover)}.top-editArea_form.top-focus{border-color:var(--color-line-primary-1);outline:none}.top-textarea{width:100%}.top-editArea_element.top-textarea_textarea{border:none;outline:none;animation:none}.top-editArea_footer{padding:var(--top-forms-padding);display:flex;min-height:32px;justify-content:flex-end;gap:var(--top-forms-padding)}.top-editArea-attachedToKeyboard{background:var(--top-forms-background-color);margin-bottom:env(keyboard-inset-height,0);position:fixed;bottom:0;right:0;left:0;z-index:2;gap:0}.top-editArea-attachedToKeyboard .top-editArea_form{border-radius:0;border:none;border-top:1px solid var(--top-forms-border-color)}.top-editArea-attachedToKeyboard .top-editArea_title{cursor:pointer;border-top:1px solid var(--color-line-2-opacity);padding:var(--top-forms-padding)}.top-editArea-attachedToKeyboard .top-editArea_footer>[data-top-icon]{border-radius:100%}.top-editArea-attachedToKeyboard .top-button.top-editArea_button{min-width:auto;padding:0}.top-editInput{width:220px;flex-grow:1;display:flex;align-items:flex-end;gap:var(--top-gap-1)}.top-editInput .top-input{width:unset;flex-grow:1}.top-scrollBarXHidding{scrollbar-width:none;overflow-x:auto;overflow-y:hidden}.top-scrollBarXHidding:hover{scrollbar-width:thin}.top-scrollBarXHidding::-webkit-scrollbar{height:6px;display:none}.top-scrollBarXHidding:hover::-webkit-scrollbar{display:block;scrollbar-width:thin}.top-scrollBarXHidding::-webkit-scrollbar-track{background-color:transparent;box-shadow:inset #0000000f 0 0 0 10px}.top-scrollBarXHidding::-webkit-scrollbar-track:hover{box-shadow:inset #00000014 0 0 0 10px}.top-scrollBarXHidding::-webkit-scrollbar-track:active{box-shadow:inset #0000001a 0 0 0 10px}.top-scrollBarXHidding::-webkit-scrollbar-thumb{background-color:var(--color-line-1-opacity)}.top-scrollBarXHidding::-webkit-scrollbar-thumb:hover{background-color:var(--color-line-2-opacity)}.top-scrollBarXHidding::-webkit-scrollbar-thumb:active{background-color:var(--color-line-3-opacity)}.top-scrollBarXHidding::-webkit-scrollbar-button{width:0;height:0}.top-radioGroup{-webkit-user-select:none;user-select:none;box-sizing:border-box;border-radius:8px;background-color:var(--color-bg-2);height:var(--top-forms-base-height);padding:2px;gap:2px;display:flex;align-items:flex-start}.top-radioGroup_item{color:var(--color-text-2);cursor:pointer;box-sizing:border-box;border-radius:6px;height:calc(var(--top-forms-base-height) - 4px);padding:0 16px;font-weight:400;white-space:nowrap;display:flex;align-items:center;justify-content:center;flex-grow:1;gap:4px}.top-radioGroup_item:hover{background-color:var(--color-bg-3);box-shadow:0 4px 32px #0409541a,0 0 4px #04095414}.top-radioGroup_item-selected{color:var(--color-text-1);pointer-events:none;background-color:var(--color-bg-secondary-1);box-shadow:0 4px 32px #0409541a,0 0 4px #04095414}.top-radioGroup_circle{content:"";box-sizing:border-box;border:1px solid var(--color-line-3-opacity);border-radius:50%;padding:3px;margin-left:auto;width:calc(var(--top-forms-option-height) - 3px * 2);height:calc(var(--top-forms-option-height) - 3px * 2)}.top-radioGroup_item:hover .top-radioGroup_circle:before{border-color:var(--color-line-primary-1)}.top-radioGroup_item-selected .top-radioGroup_circle{border-color:var(--color-line-primary-1);border-width:5px}.top-radioGroup_item-selected:hover .top-radioGroup_circle{border-color:var(--color-line-primary-2)}.top-radioGroup_item.top-disabled{--top-icon-color: var(--color-text-3);color:var(--color-text-3)}.top-radioGroup_item.top-disabled .top-radioGroup_circle{border-color:var(--color-theme-400);background-color:var(--color-theme-100)}.top-radioGroup.top-error .top-radioGroup_item:not(.top-disabled) .top-radioGroup_circle{border-color:var(--color-negative)}.top-selector2_itemMulti{box-sizing:border-box;padding-left:var(--top-padding-2);border-radius:var(--top-radius-1, 4px);border:1px solid var(--color-line-primary-1);background:var(--color-layer-primary-2);min-height:22px;max-width:100%;color:var(--color-text-1);flex-grow:0;display:inline-flex;align-items:center;gap:var(--top-gap-1)}.top-selector2_itemMultiDelete{--top-icon-size: 14px;--top-icon-width: 18px;--top-icon-color: var(--color-icon-1);display:flex;align-items:center;justify-content:center;height:100%;cursor:pointer}.top-selector2_itemMultiDelete:hover{background:var(--color-layer-primary-2)}@media screen and (min-width: 900px){.top-selector2.top-active .top-selector2_itemMultiDelete{z-index:calc(var(--top-popup-z-index) + 1)}}.top-selector2{width:180px;min-height:var(--top-forms-base-height);box-sizing:border-box;position:relative;display:flex;overflow:hidden;padding:var(--top-padding-1) var(--top-forms-padding);color:var(--top-forms-placeholder-color);border-radius:var(--top-radius-2);border:1px solid var(--top-forms-border-color);background:var(--top-forms-background-color)}.top-selector2-multiselect{width:unset;min-width:180px;padding:var(--top-padding-1)}.top-selector2.top-active{--top-forms-border-color: var(--top-forms-border-color-hover);--top-forms-background-color: var(--top-forms-background-color-hover)}.top-selector2_activeItems{display:flex;flex-wrap:wrap;gap:var(--top-padding-1);max-width:100%}.top-selector2_activeName{white-space:nowrap}.top-changer-selector{transform:translate(-16px)}
|
package/assets/light.css
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
:root{--color-primary: var(--color-blue-500);--color-primary-light: var(--color-blue-100);--color-primary-light-opacity: rgba(25, 117, 255, .11);--color-primary-2: var(--color-blue-550);--color-primary-2-light: var(--color-blue-150);--color-primary-2-light-opacity: rgba(25, 117, 255, .22);--color-secondary-opacity: rgba(14, 65, 142, .06);--color-secondary-2-opacity: rgba(14, 65, 142, .08);--color-secondary-3-opacity: rgba(14, 65, 142, .12);--color-positive: var(--color-green-500);--color-positive-opacity: rgba(22, 196, 96, .3);--color-positive-light: var(--color-green-100);--color-positive-light-opacity: rgba(22, 196, 96, .11);--color-positive-2: var(--color-green-550);--color-positive-2-light: var(--color-green-150);--color-positive-2-light-opacity: rgba(22, 196, 96, .22);--color-warning: var(--color-orange-500);--color-warning-opacity: rgba(255, 170, 51, .3);--color-warning-light: var(--color-orange-100);--color-warning-light-opacity: rgba(255, 170, 51, .12);--color-warning-2: var(--color-orange-550);--color-warning-2-light: var(--color-orange-150);--color-warning-2-light-opacity: rgba(255, 159, 25, .22);--color-negative: var(--color-red-500);--color-negative-opacity: rgba(234, 65, 50, .3);--color-negative-light: var(--color-red-100);--color-negative-light-opacity: rgba(234, 65, 50, .11);--color-negative-2: var(--color-red-550);--color-negative-2-light: var(--color-red-150);--color-negative-2-light-opacity: rgba(234, 65, 50, .22);--color-text-1: var(--color-theme-975);--color-text-2: var(--color-theme-750);--color-text-3: var(--color-theme-550);--color-text-4: var(--color-theme-450);--color-text: var(--color-text-1);--color-text-secondary: var(--color-gray-250);--color-text-secondary-2: var(--color-gray-350);--color-text-link: var(--color-blue-550);--color-text-link-hover: var(--color-blue-600);--color-overlay: rgba(0, 0, 0, .5);--color-placeholder: var(--color-gray-500);--color-placeholder-active: var(--color-gray-300);--color-bg-1: var(--color-steel-300);--color-bg-2: var(--color-steel-150);--color-bg-3: var(--color-white);--color-line-1-opacity: rgba(14, 65, 142, .1);--color-line-2-opacity: rgba(191, 203, 218, .67);--color-line-3-opacity: rgba(143, 158, 178, .74);--scroll-thumb-color: var(--color-theme-250);--scroll-thumb-color-hover: var(--color-theme-350);--scroll-thumb-color-active: var(--color-theme-500);--body-background-color: var(--content-background-color);--content-background-color: var(--color-bg-3);--color-theme-0: var(--color-bg-3);--color-theme-25: rgba(251, 252, 253, 1);--color-theme-50: rgba(248, 250, 252, 1);--color-theme-75: rgba(241, 243, 247, 1);--color-theme-100: rgba(233, 238, 243, 1);--color-theme-125: rgba(226, 232, 238, 1);--color-theme-150: rgba(220, 226, 234, 1);--color-theme-200: rgba(213, 220, 230, 1);--color-theme-250: rgba(206, 215, 226, 1);--color-theme-300: rgba(199, 209, 222, 1);--color-theme-350: rgba(191, 203, 218, 1);--color-theme-400: rgba(181, 193, 208, 1);--color-theme-450: rgba(172, 183, 198, 1);--color-theme-500: rgba(161, 173, 188, 1);--color-theme-525: rgba(151, 162, 178, 1);--color-theme-550: rgba(141, 152, 167, 1);--color-theme-600: rgba(129, 142, 161, 1);--color-theme-650: rgba(117, 131, 150, 1);--color-theme-700: rgba(105, 118, 135, 1);--color-theme-750: rgba(94, 105, 120, 1);--color-theme-800: rgba(82, 92, 105, 1);--color-theme-850: rgba(70, 79, 90, 1);--color-theme-875: rgba(59, 66, 75, 1);--color-theme-900: rgba(47, 52, 60, 1);--color-theme-925: rgba(35, 39, 45, 1);--color-theme-950: rgba(23, 26, 30, 1);--color-theme-975: rgba(12, 13, 15, 1);--color-theme-1000: rgba(0, 0, 0, 1);--top-shadow-s: 0px 0px 3px rgba(112, 144, 176, .07), 0px 5px 25px rgba(112, 144, 176, .12);--top-shadow: 0px 0px 4px rgba(4, 9, 84, .08), 0px 4px 32px rgba(4, 9, 84, .1);--top-shadow-b: 0px 0px 4px rgba(4, 36, 84, .08), 0px 18px 32px rgba(4, 25, 84, .18);--top-shadow-darken: inset 1000px 1000px 1000px 1000px rgba(0, 0, 0, .03);--top-shadow-darken-2: inset 1000px 1000px 1000px 1000px rgba(0, 0, 0, .07);--top-shadow-darken-3: inset 1000px 1000px 1000px 1000px rgba(0, 0, 0, .14)}:root{--top-forms-color: var(--color-text-1);--top-forms-color-disabled: var(--color-text-3);--top-forms-border-color: var(--color-line-2-opacity);--top-forms-border-color-hover: var(--color-primary);--top-forms-border-color-disabled: var(--color-line-1-opacity);--top-forms-placeholder-color: var(--color-text-3);--top-forms-placeholder-color-disabled: var(--color-text-4);--top-forms-background-color: var(--color-bg-3);--top-forms-background-color-hover: var(--color-bg-3)}
|
|
1
|
+
:root{--color-theme-0: rgba(255, 255, 255, 1);--color-theme-100: rgba(243, 246, 250, 1);--color-theme-150: rgba(229, 235, 243, 1);--color-theme-200: rgba(219, 226, 236, 1);--color-theme-250: rgba(204, 211, 222, 1);--color-theme-300: rgba(191, 199, 210, 1);--color-theme-350: rgba(172, 181, 193, 1);--color-theme-400: rgba(160, 170, 182, 1);--color-theme-450: rgba(131, 141, 156, 1);--color-theme-500: rgba(104, 112, 124, 1);--color-theme-550: rgba(96, 103, 113, 1);--color-theme-600: rgba(89, 95, 104, 1);--color-theme-650: rgba(78, 82, 89, 1);--color-theme-700: rgba(72, 75, 80, 1);--color-theme-750: rgba(56, 58, 62, 1);--color-theme-800: rgba(48, 50, 52, 1);--color-theme-850: rgba(45, 47, 48, 1);--color-theme-900: rgba(40, 41, 42, 1);--color-theme-950: rgba(33, 33, 34, 1);--color-theme-960: rgba(28, 28, 29, 1);--color-theme-970: rgba(22, 22, 23, 1);--color-theme-1000: rgba(0, 0, 0, 1);--color-white: rgba(255, 255, 255, 1);--color-black: rgba(0, 0, 0, 1);--color-primary-100: rgba(219, 234, 255, 1);--color-primary-200: rgba(189, 215, 255, 1);--color-primary-300: rgba(122, 175, 255, 1);--color-primary-400: rgba(61, 139, 255, 1);--color-primary-500: rgba(10, 108, 255, 1);--color-primary-600: rgba(0, 94, 235, 1);--color-primary-700: rgba(0, 84, 209, 1);--color-primary-800: rgba(0, 53, 133, 1);--color-primary-900: rgba(0, 31, 77, 1);--color-positive-100: rgba(195, 244, 207, 1);--color-positive-200: rgba(135, 232, 159, 1);--color-positive-300: rgba(52, 199, 89, 1);--color-positive-400: rgba(0, 163, 41, 1);--color-positive-500: rgba(0, 138, 34, 1);--color-positive-600: rgba(0, 122, 31, 1);--color-positive-700: rgba(0, 107, 27, 1);--color-positive-800: rgba(9, 73, 25, 1);--color-positive-900: rgba(5, 46, 15, 1);--color-warning-100: rgba(255, 230, 191, 1);--color-warning-200: rgba(255, 202, 122, 1);--color-warning-300: rgba(255, 155, 5, 1);--color-warning-400: rgba(209, 125, 0, 1);--color-warning-500: rgba(171, 104, 3, 1);--color-warning-600: rgba(150, 91, 3, 1);--color-warning-700: rgba(135, 82, 3, 1);--color-warning-800: rgba(84, 51, 2, 1);--color-warning-900: rgba(48, 29, 1, 1);--color-negative-100: rgba(255, 226, 224, 1);--color-negative-200: rgba(255, 202, 199, 1);--color-negative-300: rgba(255, 124, 117, 1);--color-negative-400: rgba(255, 59, 48, 1);--color-negative-500: rgba(235, 12, 0, 1);--color-negative-600: rgba(209, 10, 0, 1);--color-negative-700: rgba(189, 9, 0, 1);--color-negative-800: rgba(122, 6, 0, 1);--color-negative-900: rgba(71, 4, 0, 1);--color-info-100: rgba(241, 229, 255, 1);--color-info-200: rgba(229, 209, 255, 1);--color-info-300: rgba(197, 153, 255, 1);--color-info-400: rgba(171, 107, 255, 1);--color-info-500: rgba(151, 71, 255, 1);--color-info-600: rgba(134, 41, 255, 1);--color-info-700: rgba(116, 10, 255, 1);--color-info-800: rgba(73, 0, 168, 1);--color-info-900: rgba(44, 0, 102, 1);--color-layer-secondary-1: rgba(81, 107, 147, .06);--color-layer-secondary-2: rgba(81, 107, 147, .1);--color-layer-secondary-3: rgba(81, 107, 147, .14);--color-layer-secondary-4: rgba(81, 107, 147, .18);--color-layer-primary-1: rgba(10, 108, 255, .06);--color-layer-primary-2: rgba(10, 108, 255, .12);--color-layer-primary-3: rgba(10, 108, 255, .18);--color-layer-primary-4: rgba(10, 108, 255, .24);--color-layer-positive-1: rgba(0, 138, 34, .06);--color-layer-positive-2: rgba(0, 138, 34, .12);--color-layer-positive-3: rgba(0, 138, 34, .18);--color-layer-positive-4: rgba(0, 138, 34, .24);--color-layer-warning-1: rgba(255, 155, 5, .06);--color-layer-warning-2: rgba(255, 155, 5, .12);--color-layer-warning-3: rgba(255, 155, 5, .18);--color-layer-warning-4: rgba(255, 155, 5, .24);--color-layer-negative-1: rgba(235, 12, 0, .06);--color-layer-negative-2: rgba(235, 12, 0, .12);--color-layer-negative-3: rgba(235, 12, 0, .18);--color-layer-negative-4: rgba(235, 12, 0, .24);--color-layer-info-1: rgba(151, 71, 255, .06);--color-layer-info-2: rgba(151, 71, 255, .12);--color-layer-info-3: rgba(151, 71, 255, .18);--color-layer-info-4: rgba(151, 71, 255, .24);--color-top-3: #3198DD;--color-top-10: #21936C;--color-top-30: #1ABC9C;--color-top-50: #A6E0A3;--color-top-100: #C7D7D7;--color-top-10000: #FCC94A;--top-shadow-xs: 0px 0px 3px rgba(112, 144, 176, .07), 0px 5px 25px rgba(112, 144, 176, .06);--top-shadow-s: 0px 0px 3px rgba(112, 144, 176, .07), 0px 5px 25px rgba(112, 144, 176, .12);--top-shadow: 0px 0px 4px rgba(4, 9, 84, .08), 0px 4px 32px rgba(4, 9, 84, .1);--top-shadow-b: 0px 0px 4px rgba(4, 36, 84, .08), 0px 18px 32px rgba(4, 25, 84, .18);--top-shadow-darken: inset 1000px 1000px 1000px 1000px rgba(0, 0, 0, .03);--top-shadow-darken-2: inset 1000px 1000px 1000px 1000px rgba(0, 0, 0, .09);--top-shadow-darken-3: inset 1000px 1000px 1000px 1000px rgba(0, 0, 0, .18)}:root{--color-bg-1: var(--color-theme-150);--color-bg-2: var(--color-theme-100);--color-bg-3: var(--color-theme-0);--color-bg-secondary-1: var(--color-theme-0);--color-bg-secondary-2: var(--color-theme-100);--color-bg-secondary-3: var(--color-theme-150);--color-bg-primary-1: var(--color-primary-700);--color-bg-primary-2: var(--color-primary-500);--color-bg-primary-3: var(--color-primary-300);--color-bg-positive-1: var(--color-positive-600);--color-bg-positive-2: var(--color-positive-300);--color-bg-warning-1: var(--color-warning-600);--color-bg-warning-2: var(--color-warning-300);--color-bg-negative-1: var(--color-negative-700);--color-bg-negative-2: var(--color-negative-400);--color-bg-info-1: var(--color-info-700);--color-bg-info-2: var(--color-info-400);--color-text-1: var(--color-theme-850);--color-text-2: var(--color-theme-600);--color-text-3: var(--color-theme-450);--color-text-4: var(--color-theme-350);--color-text-1-inverse: var(--color-theme-0);--color-text-white: var(--color-white);--color-text-primary-1: var(--color-primary-600);--color-text-primary-2: var(--color-primary-500);--color-text-primary-3: var(--color-primary-400);--color-text-positive-1: var(--color-positive-600);--color-text-positive-2: var(--color-positive-500);--color-text-positive-3: var(--color-positive-400);--color-text-warning-1: var(--color-warning-500);--color-text-warning-2: var(--color-warning-400);--color-text-warning-3: var(--color-warning-300);--color-text-negative-1: var(--color-negative-600);--color-text-negative-2: var(--color-negative-500);--color-text-negative-3: var(--color-negative-400);--color-text-info-1: var(--color-info-600);--color-text-info-2: var(--color-info-500);--color-text-info-3: var(--color-info-400);--color-line-1: var(--color-theme-200);--color-line-2: var(--color-theme-250);--color-line-3: var(--color-theme-400);--color-line-1-opacity: rgba(14, 65, 142, .1);--color-line-2-opacity: rgba(191, 203, 218, .67);--color-line-3-opacity: rgba(143, 158, 178, .74);--color-line-primary-1: var(--color-primary-400);--color-line-primary-2: var(--color-primary-600);--color-line-positive-1: var(--color-positive-400);--color-line-positive-2: var(--color-positive-600);--color-line-warning-1: var(--color-warning-300);--color-line-warning-2: var(--color-warning-500);--color-line-negative-1: var(--color-negative-400);--color-line-negative-2: var(--color-negative-600);--color-line-info-1: var(--color-info-400);--color-line-info-2: var(--color-info-600);--color-icon-1: var(--color-theme-960);--color-icon-2: var(--color-theme-550);--color-icon-3: var(--color-theme-450);--color-icon-4: var(--color-theme-400);--color-icon-1-inverse: var(--color-theme-0);--color-icon-white: var(--color-white);--color-icon-primary-1: var(--color-primary-500);--color-icon-primary-2: var(--color-primary-700);--color-icon-positive-1: var(--color-positive-400);--color-icon-positive-2: var(--color-positive-600);--color-icon-warning-1: var(--color-warning-300);--color-icon-warning-2: var(--color-warning-400);--color-icon-negative-1: var(--color-negative-400);--color-icon-negative-2: var(--color-negative-600);--color-icon-info-1: var(--color-info-400);--color-icon-info-2: var(--color-info-500);--color-cell-secondary-1: #FCFCFD;--color-cell-secondary-2: #F5F6F9;--color-cell-secondary-3: #EAEDF2;--color-cell-secondary-4: #E0E4EC;--color-cell-secondary-5: #D5DBE5;--color-cell-primary-1: #F8FBFF;--color-cell-primary-2: #F0F6FF;--color-cell-primary-3: #E2EDFF;--color-cell-primary-4: #D3E5FF;--color-cell-primary-5: #C4DCFF;--color-cell-positive-1: #F7FBF8;--color-cell-positive-2: #F0F8F2;--color-cell-positive-3: #E0F1E4;--color-cell-positive-4: #D1EAD7;--color-cell-positive-5: #C2E3CA;--color-cell-warning-1: #FFFCF8;--color-cell-warning-2: #FFF9F0;--color-cell-warning-3: #FFF3E1;--color-cell-warning-4: #FFEDD2;--color-cell-warning-5: #FFE7C3;--color-cell-negative-1: #FEF8F7;--color-cell-negative-2: #FEF0F0;--color-cell-negative-3: #FDE2E0;--color-cell-negative-4: #FBD3D1;--color-cell-negative-5: #FAC5C2;--color-cell-info-1: #FCF9FF;--color-cell-info-2: #F9F4FF;--color-cell-info-3: #F3E9FF;--color-cell-info-4: #ECDEFF;--color-cell-info-5: #E6D3FF;--scroll-thumb-color: var(--color-theme-250);--scroll-thumb-color-hover: var(--color-theme-300);--scroll-thumb-color-active: var(--color-theme-400);--body-background-color: var(--content-background-color);--content-background-color: var(--color-bg-3)}:root{--top-forms-color: var(--color-text-1);--top-forms-color-disabled: var(--color-text-3);--top-forms-option-text-color: var(--color-text-primary-1);--top-forms-option-text-color-hover: var(--color-text-primary-2);--top-forms-icon-color: var(--color-icon-1);--top-forms-icon-color-disabled: var(--color-icon-4);--top-forms-option-icon-color: var(--color-icon-primary-1);--top-forms-option-icon-color-hover: var(--color-icon-primary-2);--top-forms-border-color: var(--color-line-1);--top-forms-border-color-hover: var(--color-line-3);--top-forms-border-color-active-hover: var(--color-line-primary-2);--top-forms-border-color-disabled: var(--color-line-3);--top-forms-option-border-color: var(--color-line-primary-1);--top-forms-option-border-color-hover: var(--color-line-primary-2);--top-forms-placeholder-color: var(--color-text-3);--top-forms-placeholder-color-active: var(--color-text-2);--top-forms-background-color: var(--color-bg-3);--top-forms-background-color-hover: var(--color-bg-3)}
|
package/assets/menu.css
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
.top-menu{--scroll-thumb-color: var(--color-line-1
|
|
1
|
+
.top-menu{--scroll-thumb-color: var(--color-line-1);--scroll-thumb-color-hover: var(--color-line-2);--scroll-thumb-color-active: var(--color-line-3);max-width:100%;display:flex;align-items:flex-start;gap:var(--top-gap-2);overflow-x:auto;scrollbar-width:none;overscroll-behavior-x:contain}.top-menu::-webkit-scrollbar{display:none}.top-menu .top-menu_item{--top-button-color: var(--color-text-2);outline-offset:-2px!important;min-width:0;margin:0;flex-shrink:0}.top-menu .top-menu_item[data-top-icon]{--top-icon-color: var(--color-text-2)}.top-menu_selectAll{position:sticky;right:0;background:var(--content-background-color);border-left:1px solid var(--color-line-1-opacity);padding-left:var(--top-padding-1);box-shadow:var(--content-background-color) var(--top-padding-2) 0}.top-menu.top-style_default .top-menu_item{--top-forms-radius: 0;--top-forms-border-color: transparent;--top-forms-border-width: 2px;filter:none;box-shadow:none;border:none;border-bottom:var(--top-forms-border-width) solid var(--top-forms-border-color);background:none}.top-menu.top-style_default .top-menu_item:hover{--top-icon-color: var(--color-text-1);--top-button-color: var(--color-text-1);--top-forms-border-color: var(--color-line-2-opacity)}.top-menu.top-style_default .top-menu_item:active,.top-menu.top-style_default .top-menu_item.top-active{--top-icon-color: var(--color-icon-primary-2);--top-button-color: var(--color-text-1);--top-forms-border-color: var(--color-line-primary-1)}.top-menu.top-style_default .top-menu_selectAll{padding-left:var(--top-padding-2)}.top-menu.top-style_bar{border-radius:var(--top-radius-3);border:1px solid var(--color-line-2-opacity);padding:var(--top-padding-1);gap:3px}.top-menu.top-style_bar .top-menu_item{--top-button-background-color-hover: var(--color-layer-secondary-1);--top-button-background-color-active: var(--color-layer-secondary-2);--top-button-background-color-selected: var(--color-layer-primary-1);position:relative}.top-menu.top-style_bar .top-menu_item:hover{--top-icon-color: var(--color-icon-1);--top-button-color: var(--color-text-1)}.top-menu.top-style_bar .top-menu_item.top-active{--top-icon-color: var(--color-icon-primary-2);--top-button-color: var(--color-text-primary-1)}.top-menu.top-style_bar .top-menu_item:not(:first-child):not(.top-active):not(:hover):after{content:"";background:var(--color-line-1-opacity);width:1px;height:60%;display:block;position:absolute;left:-2px}.top-menu.top-style_bar .top-menu_item.top-active+.top-menu_item:after,.top-menu.top-style_bar .top-menu_item:hover+.top-menu_item:after{content:none!important}.top-menu.top-unwrap-x{padding-right:var(--top-unwrap-x);padding-left:var(--top-unwrap-x);margin-right:calc(0px - var(--top-unwrap-x));margin-left:calc(0px - var(--top-unwrap-x))}
|
package/assets/tabs.css
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
.top-tabs{background:var(--content-background-color);border-radius:8px;border:1px solid var(--color-line-2-opacity);padding:0;display:flex;flex-wrap:wrap;align-items:stretch}.top-tabs_header{padding:6px;margin-left:auto;display:flex;align-items:center;gap:8px;flex-wrap:wrap}.top-tabs_contents{border-top:1px solid var(--color-line-2-opacity);width:100%;margin-top:-1px}.top-tabs_tabInput:checked:nth-child(1)~.top-tabs_contents>.top-tabs_content:nth-child(1),.top-tabs_tabInput:checked:nth-child(3)~.top-tabs_contents>.top-tabs_content:nth-child(2),.top-tabs_tabInput:checked:nth-child(5)~.top-tabs_contents>.top-tabs_content:nth-child(3),.top-tabs_tabInput:checked:nth-child(7)~.top-tabs_contents>.top-tabs_content:nth-child(4),.top-tabs_tabInput:checked:nth-child(9)~.top-tabs_contents>.top-tabs_content:nth-child(5),.top-tabs_tabInput:checked:nth-child(11)~.top-tabs_contents>.top-tabs_content:nth-child(6){display:block}.top-tabs_tabLabel{cursor:pointer;border-bottom:2px solid transparent;padding:14px 20px;position:relative;display:flex;align-items:center}.top-tabs_tabLabel:hover{border-color:var(--color-line-2-opacity)}.top-tabs_tabInput:checked+.top-tabs_tabLabel{border-color:var(--color-primary);color:var(--color-primary)}.top-tabs_tabLabel.top-disabled{color:var(--color-text-3)}.top-tabs_content{padding:14px;overflow:auto;display:none}
|
|
1
|
+
.top-tabs{background:var(--content-background-color);border-radius:8px;border:1px solid var(--color-line-2-opacity);padding:0;display:flex;flex-wrap:wrap;align-items:stretch}.top-tabs_header{padding:6px;margin-left:auto;display:flex;align-items:center;gap:8px;flex-wrap:wrap}.top-tabs_contents{border-top:1px solid var(--color-line-2-opacity);width:100%;margin-top:-1px}.top-tabs_tabInput:checked:nth-child(1)~.top-tabs_contents>.top-tabs_content:nth-child(1),.top-tabs_tabInput:checked:nth-child(3)~.top-tabs_contents>.top-tabs_content:nth-child(2),.top-tabs_tabInput:checked:nth-child(5)~.top-tabs_contents>.top-tabs_content:nth-child(3),.top-tabs_tabInput:checked:nth-child(7)~.top-tabs_contents>.top-tabs_content:nth-child(4),.top-tabs_tabInput:checked:nth-child(9)~.top-tabs_contents>.top-tabs_content:nth-child(5),.top-tabs_tabInput:checked:nth-child(11)~.top-tabs_contents>.top-tabs_content:nth-child(6){display:block}.top-tabs_tabLabel{color:var(--color-text-1);cursor:pointer;border-bottom:2px solid transparent;padding:14px 20px;position:relative;display:flex;align-items:center}.top-tabs_tabLabel:hover{border-color:var(--color-line-2-opacity)}.top-tabs_tabInput:checked+.top-tabs_tabLabel{border-color:var(--color-line-primary-1);color:var(--color-text-primary-1)}.top-tabs_tabLabel.top-disabled{color:var(--color-text-3)}.top-tabs_content{padding:14px;overflow:auto;display:none}
|
package/assets/tabsView.css
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
.top-tabsView_menuItem{--top-icon-color: var(--color-
|
|
1
|
+
.top-tabsView_menuItem{--top-icon-color: var(--color-icon-2);--top-icon-width: calc(var(--top-icon-size));cursor:pointer;box-sizing:border-box;border:none;border-radius:var(--top-radius-2);padding:var(--top-padding-2);background:transparent;height:40px;color:var(--color-text-1);text-decoration:none;white-space:nowrap;display:flex;gap:var(--top-gap-2);align-items:center;justify-content:flex-start;transition:background var(--transition)}.top-tabsView_menuItem:hover{background:var(--color-layer-secondary-2);--top-icon-color: var(--color-icon-1);text-decoration:none}.top-tabsView_menuItem.top-active{cursor:unset;background:var(--color-bg-3)}.top-tabsView_menuItem:disabled:not(option):not(optgroup):not(.top-forms-option),.top-tabsView_menuItem:disabled~.top-formsCaption,.top-tabsView_menuItem.top-disabled[data-top-icon]:before,.top-tabsView_menuItem.top-disabled[data-top-icon2]:after{opacity:unset;filter:unset}.top-tabsView_menuItem.top-disabled{--top-icon-color: var(--color-text-4);color:var(--color-text-4)}.top-tabsView-pageMod .top-tabsView_menu{box-sizing:border-box;position:sticky;top:var(--top-tabsView-top);z-index:10}.top-tabsView-pageMod .top-tabsView_menu-inPopup_0{height:calc(var(--100vh) - var(--top-tabsView-top))}.top-tabsView_menu-inPopup_0{box-sizing:border-box;width:var(--top-tabsView-menu-width);display:flex;flex-direction:column;justify-content:space-between}.top-tabsView_menu-inPopup_1{border-bottom:1px solid var(--color-line-2-opacity)}.top-tabsView_menu-short{width:auto}.top-tabsView_menu>.top-tabsView_menuOpener{display:flex;justify-content:flex-end}.top-tabsView_menu>.top-tabsView_menuOpener:hover{background:var(--color-layer-secondary-1)}.top-tabsView_menuOpenerIcon{display:flex}.top-tabsView_menuOpenerActiveItem{--top-forms-padding: 0px;box-sizing:border-box;padding:var(--top-padding-2);max-width:calc(100% - var(--top-forms-base-height));white-space:nowrap;flex-grow:1;display:flex;align-items:center;gap:var(--top-padding-2)}.top-tabsView_menuList,.top-tabsView_menuFooter{padding:var(--top-padding-2);display:flex;flex-direction:column;gap:var(--top-gap-2)}.top-tabsView_menuList{overflow-y:auto}.top-tabsView_menu-short .top-tabsView_menuFooter>.top-tabsView_menuItem{--top-icon-width: 100%}:root{--top-tabsView-top: 0px;--top-tabsView-menu-width: 220px;--top-tabsView-contents-offset-top: 0px}.top-tabsView{background:var(--color-bg-2);width:100%;height:100%;display:flex;flex-direction:row}.top-tabsView_contents{border-radius:var(--top-radius-4);background:var(--color-bg-3);padding:var(--top-padding-4);flex-grow:1;overflow:auto;position:relative}.top-tabsView_contents-isLoading{pointer-events:none}.top-tabsView_contents-noScrollable{width:calc(100% - var(--top-tabsView-menu-width));padding:0;overflow:visible}.top-tabsView-inPopup{background:var(--color-bg-3);flex-direction:column}.top-tabsView-inPopup>.top-tabsView_contents{border-radius:0}.top-tabsView-inPopup>.top-tabsView_contents-noScrollable{width:auto}.top-tabsView_menuDelimeter{padding:var(--top-padding-1) 0;display:flex}.top-tabsView_menuDelimeter:before{content:"";height:2px;background:var(--color-line-2);flex-grow:1}.top-tabsView_menuDelimeter:first-child,.top-tabsView_menuDelimeter+.top-tabsView_menuDelimeter{display:none}.top-tabsView_menuTitle{padding:var(--top-padding-4) var(--top-padding-2) var(--top-padding-1);font-weight:600;color:var(--color-text-1)}.top-tabsView_menuTitle-subtitle{padding-top:var(--top-padding-1);font-size:12px;font-weight:400;color:var(--color-text-2)}
|
package/assets/widgetInput.css
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
.top-input-popupWidgetInput{--top-loadbar-color: var(--color-line-
|
|
1
|
+
.top-input-popupWidgetInput{--top-loadbar-color: var(--color-line-2);width:100%}.top-input_input-popupWidgetInput{border:none;background:var(--color-layer-secondary-1)}.top-input_input-popupWidgetInput:hover{background:var(--color-layer-secondary-2)}.top-input_input-popupWidgetInput:focus{background:var(--color-layer-secondary-3);outline:unset}
|
package/core/core.amd.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
define(["require","exports","vue","../.chunks/forms-
|
|
1
|
+
define(["require","exports","vue","../.chunks/forms-B2NcBl7S.amd"],function(i,e,u,r){"use strict";if(typeof u>"u")var u=window.Vue;e.default=r.Core,Object.defineProperties(e,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})});
|
|
2
2
|
//# sourceMappingURL=core.amd.js.map
|
package/core/core.js
CHANGED
package/forms/forms.amd.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
define(["require","exports","../.chunks/forms-
|
|
1
|
+
define(["require","exports","../.chunks/forms-B2NcBl7S.amd"],function(t,a,e){"use strict";if(typeof n>"u")var n=window.Vue;a.Avatar=e.avatar,a.Button=e.Button,a.Checkbox=e.checkbox,a.ControlLabel=e.ControlLabel,a.Hint=e.Hint,a.Input=e.Input,a.InputDate=e.inputDate,a.InputRange=e.inputRange,a.Loadbar=e.Loadbar,a.Radio=e.radio,a.Select=e.select,a.Switcher=e.switcher,a.Textarea=e.Textarea,Object.defineProperty(a,Symbol.toStringTag,{value:"Module"})});
|
|
2
2
|
//# sourceMappingURL=forms.amd.js.map
|
package/forms/forms.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { r as s, B as e, t as o, u as r, H as n, I as u, v as p, w as x, L as I, x as b, z as c, y as i, T as l } from "../.chunks/forms-
|
|
1
|
+
import { r as s, B as e, t as o, u as r, H as n, I as u, v as p, w as x, L as I, x as b, z as c, y as i, T as l } from "../.chunks/forms-S36M7cBH.es.js";
|
|
2
2
|
export {
|
|
3
3
|
s as Avatar,
|
|
4
4
|
e as Button,
|
package/forms/helpers.amd.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"helpers.amd.js","sources":["../../src/components/forms/helpers.ts"],"sourcesContent":["/**\n * Размеры\n */\nexport const sizes = {\n\txs: 'xs',\n\ts: 's',\n\tm: 'm',\n\tl: 'l',\n} as const;\n\nexport type Size = typeof sizes[keyof typeof sizes];"],"names":["sizes"],"mappings":"yFAGO,MAAAA,EAAA,0BAKP"}
|
|
1
|
+
{"version":3,"file":"helpers.amd.js","sources":["../../src/components/forms/helpers.ts"],"sourcesContent":["/**\r\n * Размеры\r\n */\r\nexport const sizes = {\r\n\txs: 'xs',\r\n\ts: 's',\r\n\tm: 'm',\r\n\tl: 'l',\r\n} as const;\r\n\r\nexport type Size = typeof sizes[keyof typeof sizes];"],"names":["sizes"],"mappings":"yFAGO,MAAAA,EAAA,0BAKP"}
|
package/forms/helpers.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"helpers.js","sources":["../../src/components/forms/helpers.ts"],"sourcesContent":["/**\n * Размеры\n */\nexport const sizes = {\n\txs: 'xs',\n\ts: 's',\n\tm: 'm',\n\tl: 'l',\n} as const;\n\nexport type Size = typeof sizes[keyof typeof sizes];"],"names":["sizes"],"mappings":"AAGO,MAAMA,IAAQ;AAAA,EACpB,IAAI;AAAA,EACJ,GAAG;AAAA,EACH,GAAG;AAAA,EACH,GAAG;AACJ;"}
|
|
1
|
+
{"version":3,"file":"helpers.js","sources":["../../src/components/forms/helpers.ts"],"sourcesContent":["/**\r\n * Размеры\r\n */\r\nexport const sizes = {\r\n\txs: 'xs',\r\n\ts: 's',\r\n\tm: 'm',\r\n\tl: 'l',\r\n} as const;\r\n\r\nexport type Size = typeof sizes[keyof typeof sizes];"],"names":["sizes"],"mappings":"AAGO,MAAMA,IAAQ;AAAA,EACpB,IAAI;AAAA,EACJ,GAAG;AAAA,EACH,GAAG;AAAA,EACH,GAAG;AACJ;"}
|
package/formsExt/formsExt.amd.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
define(["require","exports","vue","../.chunks/forms-0MQ_zU80.amd","../utils/keyboard.amd","../.chunks/listItem.vue_vue_type_script_setup_true_lang-Cr9e1nzK.amd","../.chunks/widgetInput-DfOBj0qz.amd","lodash","../.chunks/menu-BGUYnOx6.amd","../require/css.amd!../assets/formsExt.css"],function(oe,w,e,h,M,b,T,S,E){"use strict";if(typeof e>"u")var e=window.Vue;const I={class:"top-editArea_footer"},N=e.defineComponent({__name:"editArea",props:{defaultValue:{default:""},title:{},cancelText:{default:"Cancel"},submitText:{default:"Send"},closeText:{default:"Close"},isFocused:{type:Boolean},forceShowCloseBtn:{type:Boolean},attachToKeyboard:{type:Boolean},modelValue:{},name:{},placeholder:{},rows:{},minHeight:{},expandable:{type:Boolean,default:!0},disabled:{type:Boolean},readonly:{type:Boolean},isError:{type:Boolean},hint:{}},emits:["submit","close","clickOnTitle"],setup(i,{emit:c}){const t=i,r=c,m=e.ref(t.defaultValue),f=e.ref(t.isFocused),s=e.computed(()=>m.value!==t.defaultValue),p=e.computed(()=>t.attachToKeyboard?"":t.forceShowCloseBtn&&!s.value?t.closeText:t.cancelText),u=d=>{r("submit",d),m.value=t.defaultValue},v=()=>{if(t.forceShowCloseBtn&&!s.value){r("close");return}m.value=t.defaultValue},k=()=>{t.attachToKeyboard&&r("clickOnTitle")};return(d,l)=>{const V=e.resolveDirective("focus");return e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass({"top-editArea":!0,"top-editArea-attachedToKeyboard":d.attachToKeyboard})},[d.title?(e.openBlock(),e.createElementBlock("div",{key:0,class:"top-editArea_title",onClick:l[0]||(l[0]=y=>k())},e.toDisplayString(d.title),1)):e.createCommentVNode("",!0),e.createElementVNode("div",{class:e.normalizeClass({"top-editArea_form":!0,"top-error":d.isError,"top-editArea_form-focus":f.value})},[e.withDirectives(e.createVNode(h.Textarea,{modelValue:m.value,"onUpdate:modelValue":l[1]||(l[1]=y=>m.value=y),name:d.name,placeholder:d.placeholder,rows:d.rows,minHeight:d.minHeight,expandable:d.expandable,disabled:d.disabled,readonly:d.readonly,isError:d.isError,hint:d.hint,class:"top-editArea_element",onFocus:l[2]||(l[2]=()=>f.value=!0),onBlur:l[3]||(l[3]=()=>f.value=!1),onKeyup:[e.withKeys(v,["esc"]),l[4]||(l[4]=e.withKeys(e.withModifiers(y=>u(m.value),["ctrl"]),["enter"]))]},null,8,["modelValue","name","placeholder","rows","minHeight","expandable","disabled","readonly","isError","hint"]),[[V,f.value]]),e.createElementVNode("div",I,[s.value||d.forceShowCloseBtn?(e.openBlock(),e.createBlock(h.Button,{key:0,class:"top-editArea_button",color:"theme",icon:d.attachToKeyboard?"":"",onClick:v},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(p.value),1)]),_:1},8,["icon"])):e.createCommentVNode("",!0),s.value?(e.openBlock(),e.createBlock(h.Button,{key:1,class:"top-editArea_button",icon:d.attachToKeyboard?"":"",onClick:l[5]||(l[5]=y=>u(m.value))},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(d.attachToKeyboard?"":d.submitText),1)]),_:1},8,["icon"])):e.createCommentVNode("",!0)])],2)],2)}}}),K={$style:{"top-editArea":"top-editArea","top-editArea_title":"top-editArea_title","top-editArea_form":"top-editArea_form","top-editArea_form-focus":"top-editArea_form-focus","top-textarea":"top-textarea","top-editArea_element":"top-editArea_element","top-textarea_textarea":"top-textarea_textarea","top-editArea_footer":"top-editArea_footer","top-editArea-attachedToKeyboard":"top-editArea-attachedToKeyboard","top-button":"top-button","top-editArea_button":"top-editArea_button"}},L=h._export_sfc(N,[["__cssModules",K]]),G={class:"top-editInput"},D=e.defineComponent({__name:"editInput",props:{modelValue:{},input:{},button:{}},emits:["update:modelValue"],setup(i,{emit:c}){const t=i,r=e.ref(t.modelValue);e.watch(e.toRef(t.modelValue),()=>{r.value=t.modelValue});const m=c,f=()=>{m("update:modelValue",r.value)};return(s,p)=>(e.openBlock(),e.createElementBlock("div",G,[e.createVNode(h.Input,e.mergeProps(s.input,{onKeydownCapture:p[0]||(p[0]=e.withKeys(e.withModifiers(u=>r.value=s.modelValue,["stop"]),["esc"])),onKeydown:e.withKeys(e.withModifiers(f,["stop"]),["enter"]),modelValue:r.value,"onUpdate:modelValue":p[1]||(p[1]=u=>r.value=u)}),null,16,["onKeydown","modelValue"]),r.value!==s.modelValue?(e.openBlock(),e.createBlock(h.Button,e.mergeProps({key:0,icon:"",styling:"soft"},s.button,{onClick:f}),{default:e.withCtx(()=>[e.renderSlot(s.$slots,"default")]),_:3},16)):e.createCommentVNode("",!0)]))}}),P={$style:{"top-editInput":"top-editInput","top-input":"top-input"}},O=h._export_sfc(D,[["__cssModules",P]]),z=["data-top-icon","onClick"],F={key:0,class:"top-radioGroup_circle"},H=["value","disabled"],x=e.defineComponent({__name:"radioGroup",props:e.mergeModels({modelValue:{},radiosProps:{},showIndicator:{type:Boolean},size:{default:"s"},isError:{type:Boolean}},{modelValue:{required:!0},modelModifiers:{}}),emits:e.mergeModels(["update:modelValue"],["update:modelValue"]),setup(i,{emit:c}){const t=e.useModel(i,"modelValue"),r=i,m=e.ref(null);e.watch(t,()=>{var s,p,u,v,k;(s=r.radiosProps)!=null&&s.some(d=>d.value===t.value)||(t.value=((u=(p=r.radiosProps)==null?void 0:p[0])==null?void 0:u.value)??""),(k=(v=m.value)==null?void 0:v.querySelector(".radioGroup_item-selected"))==null||k.scrollIntoView()},{immediate:!0});const f="radioGroup-"+Math.random();return(s,p)=>(e.openBlock(),e.createElementBlock("div",{ref_key:"elRef",ref:m,class:e.normalizeClass({"top-radioGroup":!0,"top-scrollBarXHidding":!0,["top-size_"+s.size]:!!s.size,"top-error":s.isError})},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(s.radiosProps,u=>(e.openBlock(),e.createElementBlock("label",{class:e.normalizeClass({"top-radioGroup_item-selected":u.value===t.value,"top-radioGroup_item":!0,"top-forms-focusable":!0,"top-disabled":u.disabled}),"data-top-icon":u.icon,onClick:v=>t.value=u.value},[e.createTextVNode(e.toDisplayString(u.title)+" ",1),s.showIndicator?(e.openBlock(),e.createElementBlock("span",F)):e.createCommentVNode("",!0),e.withDirectives(e.createElementVNode("input",{"onUpdate:modelValue":p[0]||(p[0]=v=>t.value=v),name:f,type:"radio",class:e.normalizeClass({"top-unvisible":!0}),value:u.value,disabled:u.disabled},null,8,H),[[e.vModelRadio,t.value]])],10,z))),256))],2))}}),U={$style:{"top-scrollBarXHidding":"top-scrollBarXHidding","top-radioGroup":"top-radioGroup","top-radioGroup_item":"top-radioGroup_item","top-radioGroup_item-selected":"top-radioGroup_item-selected","top-radioGroup_circle":"top-radioGroup_circle","top-disabled":"top-disabled","top-error":"top-error"}},W=h._export_sfc(x,[["__cssModules",U]]),J=(i,c,t)=>{const r=e.ref([]),m=e.ref(!1);let f="",s;i&&!i.params.limit&&(i.params.limit=100);const p=async()=>{if(!i)return;let l,V;if(t&&(i.cache??=new Map,V=JSON.stringify(i.params),l=i.cache.get(V),l))return l;if(m.value=!0,l=await i.call(),m.value=!1,l.errors)return;if(!Array.isArray(l.result)){console.warn("В result ожидался массив");return}const y=l.result.findIndex(A=>A.id===void 0||A.name===void 0);if(y!==-1){console.warn(`В result[${y}] нет id или name`);return}return t&&i.cache.set(V,l),l},u=async()=>{if(!i)return;i.params.offset=0,i.params.search=f;const l=await p();l&&(s=l.nextOffset,r.value=l.result)},v=async()=>{if(!i||!s||m.value)return;i.params.offset=s,i.params.search=f;const l=await p();l&&(s=l.nextOffset,r.value=r.value.concat(l.result))},k=S.debounce(()=>u(),200);return{items:r,isLoading:m,loadAppend:v,setSearchTextAndLoad:(l,V=!0)=>{i&&(l.length<c||l===f&&r.value.length||(f=l,V?k():u()))}}},X={class:"top-selector2_itemMulti top-ellipsis"},j=e.defineComponent({__name:"itemMulti",props:{id:{},name:{}},emits:["delete"],setup(i){return(c,t)=>(e.openBlock(),e.createElementBlock("div",X,[e.createTextVNode(e.toDisplayString(c.name)+" ",1),e.createElementVNode("span",{class:"top-selector2_itemMultiDelete","data-top-icon":"",onClick:t[0]||(t[0]=r=>c.$emit("delete",c.id)),onMousedown:t[1]||(t[1]=e.withModifiers(()=>{},["stop"]))},null,32)]))}}),R={$style:{"top-selector2_itemMulti":"top-selector2_itemMulti","top-selector2_itemMultiDelete":"top-selector2_itemMultiDelete","top-selector2":"top-selector2","top-active":"top-active"}},Y=h._export_sfc(j,[["__cssModules",R]]),Q={key:0,class:"top-selector2_activeItems"},Z={key:1,class:"top-selector2_activeName top-ellipsis"},q=e.defineComponent({__name:"selector2",props:e.mergeModels({modelValue:{},items:{default:()=>[]},multiselect:{type:Boolean},disabled:{type:Boolean},size:{default:"s"},isError:{type:Boolean},apiRequest:{},minLength:{default:0},useCache:{type:Boolean},appendSearchToResult:{type:Boolean},appendAllValue:{type:Boolean},addChanger:{type:Boolean},placeholder:{},showSelectedInInput:{type:Boolean,default:!0}},{modelValue:{},modelModifiers:{}}),emits:["update:modelValue"],setup(i){const c=i,t=e.useModel(i,"modelValue"),r=e.ref(""),m={id:0,name:"Все"},f=e.ref(null),s=()=>{var o;return(o=f.value)==null?void 0:o.popup};window.__STORYBOOK_PREVIEW__&&!c.modelValue&&e.watch(()=>c.multiselect,()=>{t.value=c.multiselect?[]:{id:null,name:""}},{immediate:!0});const p=J(c.apiRequest,c.minLength,c.useCache),u=e.computed(()=>{const o=[];return!c.multiselect&&c.appendAllValue&&o.push(m),c.items.forEach(n=>o.push({...n})),o}),v=(o,n=!0)=>n&&o.id===null?Array.isArray(t.value)?t.value.some(a=>a.id===o.id&&a.name===o.name):o.name===t.value.name:Array.isArray(t.value)?t.value.some(a=>a.id===o.id):o.id===t.value.id,k=e.computed(()=>{const o=r.value.toLowerCase(),n=M.invertKeyboardLayout(o);let a=[];return u.value.forEach(B=>{const g=B.name.toLowerCase();(B.id===Number(o)||g.includes(o)||g.includes(n))&&(g===o||g===n?a.unshift(B):a.push(B))}),a.push(...p.items.value),c.appendSearchToResult&&r.value&&(!a.length||a[0].name.toLowerCase()!==o)&&a.push({id:null,name:r.value}),c.multiselect&&(a=a.filter(B=>!v(B))),a}),d=async o=>{var n,a;if(c.multiselect){if(!Array.isArray(t.value)||v(o))return;const B=[...t.value];B.push({...o}),t.value=B,h.Core.state.isMobile?(n=s())==null||n.close():setTimeout(()=>{var g,C,_,$;(g=s())==null||g.recalcPosition(),($=(_=(C=s())==null?void 0:C.elPopupWidget)==null?void 0:_.querySelector("input"))==null||$.focus(),r.value&&(k.value.length||(r.value="",p.items.value=[]))})}else r.value&&(r.value="",p.items.value=[]),JSON.stringify(o)!==JSON.stringify(t.value)&&(t.value={...o}),(a=s())==null||a.close()},l=()=>{if(!Array.isArray(t.value)){const n=(u.value.findIndex(a=>a.id===t.value.id)+1)%u.value.length;t.value={...u.value[n]}}},V=async o=>{Array.isArray(t.value)&&(t.value=t.value.filter(n=>n.id!==o),setTimeout(()=>{var n;(n=s())==null||n.recalcPosition()}))},y=e.ref(!1);c.apiRequest&&(e.watch(y,()=>{y.value&&p.setSearchTextAndLoad(r.value,!1)}),e.watch(r,()=>p.setSearchTextAndLoad(r.value)));const A=o=>{const n=o.target;n.scrollTop/(n.scrollHeight-n.offsetHeight)>.8&&p.loadAppend()};return(o,n)=>(e.openBlock(),e.createBlock(e.unref(b._sfc_main),{ref_key:"popupRef",ref:f,onOpen:n[1]||(n[1]=a=>y.value=!0),onClose:n[2]||(n[2]=a=>y.value=!1),onScrollContentList:n[3]||(n[3]=a=>o.apiRequest?A(a):void 0),notch:!1,transitionDuration:0},{opener:e.withCtx(()=>[e.createElementVNode("div",{class:e.normalizeClass({"top-selector2":!0,"top-selector2-multiselect":o.multiselect,["top-size_"+o.size]:!0,"top-disabled":o.disabled,"top-forms-focusable":!o.disabled,"top-error":o.isError})},[o.multiselect?(e.openBlock(),e.createElementBlock("div",Q,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.value,a=>(e.openBlock(),e.createBlock(Y,{id:a.id,name:a.name,onDelete:V},null,8,["id","name"]))),256))])):e.createCommentVNode("",!0),o.multiselect?e.createCommentVNode("",!0):(e.openBlock(),e.createElementBlock("span",Z,e.toDisplayString(Array.isArray(t.value)?"":t.value.name),1)),o.addChanger&&!o.multiselect&&u.value.length>1&&!o.disabled?(e.openBlock(),e.createElementBlock("span",{key:2,class:"top-changer top-changer-selector",onClick:e.withModifiers(l,["stop"])})):e.createCommentVNode("",!0)],2)]),widget:e.withCtx(()=>[e.createVNode(e.unref(T.PopupWidgetInput),{title:"Поиск",icon:"",modelValue:r.value,"onUpdate:modelValue":n[0]||(n[0]=a=>r.value=a),isLoading:e.unref(p).isLoading.value,placeholder:!Array.isArray(t.value)&&!o.multiselect&&o.showSelectedInInput?t.value.name:o.placeholder},null,8,["modelValue","isLoading","placeholder"])]),contentList:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(k.value,a=>(e.openBlock(),e.createBlock(e.unref(b._sfc_main$2),{class:e.normalizeClass({"top-active":!Array.isArray(t.value)&&!o.multiselect&&t.value.name===a.name}),key:a.id??void 0,onClick:e.withModifiers(B=>d(a),["stop"])},{default:e.withCtx(()=>[o.$slots.item?e.renderSlot(o.$slots,"item",{key:0,item:a}):(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[e.createTextVNode(e.toDisplayString(a.name),1)],64))]),_:2},1032,["class","onClick"]))),128)),k.value.length?e.createCommentVNode("",!0):(e.openBlock(),e.createBlock(e.unref(b._sfc_main$2),{key:0,type:"regular"},{default:e.withCtx(()=>[e.createTextVNode(" Нет результатов ")]),_:1}))]),_:3},512))}}),ee={$style:{"top-selector2":"top-selector2","top-selector2-multiselect":"top-selector2-multiselect","top-active":"top-active","top-selector2_activeItems":"top-selector2_activeItems","top-selector2_activeName":"top-selector2_activeName","top-changer-selector":"top-changer-selector"}},te=h._export_sfc(q,[["__cssModules",ee]]);w.Menu=E.Menu,w.EditArea=L,w.EditInput=O,w.RadioGroup=W,w.Selector2=te,Object.defineProperty(w,Symbol.toStringTag,{value:"Module"})});
|
|
1
|
+
define(["require","exports","vue","../.chunks/forms-B2NcBl7S.amd","../utils/keyboard.amd","../.chunks/listItem.vue_vue_type_script_setup_true_lang-C7tg-67i.amd","../.chunks/widgetInput-CrrUoVPc.amd","lodash","../.chunks/menu-S1Hk7D3W.amd","../require/css.amd!../assets/formsExt.css"],function(oe,w,e,h,M,b,T,S,E){"use strict";if(typeof e>"u")var e=window.Vue;const I={class:"top-editArea_footer"},N=e.defineComponent({__name:"editArea",props:{defaultValue:{default:""},title:{},cancelText:{default:"Cancel"},submitText:{default:"Send"},closeText:{default:"Close"},isFocused:{type:Boolean},forceShowCloseBtn:{type:Boolean},attachToKeyboard:{type:Boolean},modelValue:{},name:{},placeholder:{},rows:{},minHeight:{},expandable:{type:Boolean,default:!0},disabled:{type:Boolean},readonly:{type:Boolean},isError:{type:Boolean},hint:{}},emits:["submit","close","clickOnTitle"],setup(i,{emit:c}){const t=i,r=c,m=e.ref(t.defaultValue),f=e.ref(t.isFocused),s=e.computed(()=>m.value!==t.defaultValue),p=e.computed(()=>t.attachToKeyboard?"":t.forceShowCloseBtn&&!s.value?t.closeText:t.cancelText),u=d=>{r("submit",d),m.value=t.defaultValue},v=()=>{if(t.forceShowCloseBtn&&!s.value){r("close");return}m.value=t.defaultValue},k=()=>{t.attachToKeyboard&&r("clickOnTitle")};return(d,l)=>{const V=e.resolveDirective("focus");return e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass({"top-editArea":!0,"top-editArea-attachedToKeyboard":d.attachToKeyboard})},[d.title?(e.openBlock(),e.createElementBlock("div",{key:0,class:"top-editArea_title",onClick:l[0]||(l[0]=y=>k())},e.toDisplayString(d.title),1)):e.createCommentVNode("",!0),e.createElementVNode("div",{class:e.normalizeClass({"top-editArea_form":!0,"top-error":d.isError,"top-editArea_form-focus":f.value})},[e.withDirectives(e.createVNode(h.Textarea,{modelValue:m.value,"onUpdate:modelValue":l[1]||(l[1]=y=>m.value=y),name:d.name,placeholder:d.placeholder,rows:d.rows,minHeight:d.minHeight,expandable:d.expandable,disabled:d.disabled,readonly:d.readonly,isError:d.isError,hint:d.hint,class:"top-editArea_element",onFocus:l[2]||(l[2]=()=>f.value=!0),onBlur:l[3]||(l[3]=()=>f.value=!1),onKeyup:[e.withKeys(v,["esc"]),l[4]||(l[4]=e.withKeys(e.withModifiers(y=>u(m.value),["ctrl"]),["enter"]))]},null,8,["modelValue","name","placeholder","rows","minHeight","expandable","disabled","readonly","isError","hint"]),[[V,f.value]]),e.createElementVNode("div",I,[s.value||d.forceShowCloseBtn?(e.openBlock(),e.createBlock(h.Button,{key:0,class:"top-editArea_button",color:"theme",icon:d.attachToKeyboard?"":"",onClick:v},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(p.value),1)]),_:1},8,["icon"])):e.createCommentVNode("",!0),s.value?(e.openBlock(),e.createBlock(h.Button,{key:1,class:"top-editArea_button",icon:d.attachToKeyboard?"":"",onClick:l[5]||(l[5]=y=>u(m.value))},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(d.attachToKeyboard?"":d.submitText),1)]),_:1},8,["icon"])):e.createCommentVNode("",!0)])],2)],2)}}}),K={$style:{"top-editArea":"top-editArea","top-editArea_title":"top-editArea_title","top-editArea_form":"top-editArea_form","top-editArea_form-focus":"top-editArea_form-focus","top-focus":"top-focus","top-textarea":"top-textarea","top-editArea_element":"top-editArea_element","top-textarea_textarea":"top-textarea_textarea","top-editArea_footer":"top-editArea_footer","top-editArea-attachedToKeyboard":"top-editArea-attachedToKeyboard","top-button":"top-button","top-editArea_button":"top-editArea_button"}},L=h._export_sfc(N,[["__cssModules",K]]),G={class:"top-editInput"},D=e.defineComponent({__name:"editInput",props:{modelValue:{},input:{},button:{}},emits:["update:modelValue"],setup(i,{emit:c}){const t=i,r=e.ref(t.modelValue);e.watch(e.toRef(t.modelValue),()=>{r.value=t.modelValue});const m=c,f=()=>{m("update:modelValue",r.value)};return(s,p)=>(e.openBlock(),e.createElementBlock("div",G,[e.createVNode(h.Input,e.mergeProps(s.input,{onKeydownCapture:p[0]||(p[0]=e.withKeys(e.withModifiers(u=>r.value=s.modelValue,["stop"]),["esc"])),onKeydown:e.withKeys(e.withModifiers(f,["stop"]),["enter"]),modelValue:r.value,"onUpdate:modelValue":p[1]||(p[1]=u=>r.value=u)}),null,16,["onKeydown","modelValue"]),r.value!==s.modelValue?(e.openBlock(),e.createBlock(h.Button,e.mergeProps({key:0,icon:"",styling:"soft"},s.button,{onClick:f}),{default:e.withCtx(()=>[e.renderSlot(s.$slots,"default")]),_:3},16)):e.createCommentVNode("",!0)]))}}),P={$style:{"top-editInput":"top-editInput","top-input":"top-input"}},O=h._export_sfc(D,[["__cssModules",P]]),z=["data-top-icon","onClick"],F={key:0,class:"top-radioGroup_circle"},H=["value","disabled"],x=e.defineComponent({__name:"radioGroup",props:e.mergeModels({modelValue:{},radiosProps:{},showIndicator:{type:Boolean},size:{default:"s"},isError:{type:Boolean}},{modelValue:{required:!0},modelModifiers:{}}),emits:e.mergeModels(["update:modelValue"],["update:modelValue"]),setup(i,{emit:c}){const t=e.useModel(i,"modelValue"),r=i,m=e.ref(null);e.watch(t,()=>{var s,p,u,v,k;(s=r.radiosProps)!=null&&s.some(d=>d.value===t.value)||(t.value=((u=(p=r.radiosProps)==null?void 0:p[0])==null?void 0:u.value)??""),(k=(v=m.value)==null?void 0:v.querySelector(".radioGroup_item-selected"))==null||k.scrollIntoView()},{immediate:!0});const f="radioGroup-"+Math.random();return(s,p)=>(e.openBlock(),e.createElementBlock("div",{ref_key:"elRef",ref:m,class:e.normalizeClass({"top-radioGroup":!0,"top-scrollBarXHidding":!0,["top-size_"+s.size]:!!s.size,"top-error":s.isError})},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(s.radiosProps,u=>(e.openBlock(),e.createElementBlock("label",{class:e.normalizeClass({"top-radioGroup_item-selected":u.value===t.value,"top-radioGroup_item":!0,"top-forms-focusable":!0,"top-disabled":u.disabled}),"data-top-icon":u.icon,onClick:v=>t.value=u.value},[e.createTextVNode(e.toDisplayString(u.title)+" ",1),s.showIndicator?(e.openBlock(),e.createElementBlock("span",F)):e.createCommentVNode("",!0),e.withDirectives(e.createElementVNode("input",{"onUpdate:modelValue":p[0]||(p[0]=v=>t.value=v),name:f,type:"radio",class:e.normalizeClass({"top-unvisible":!0}),value:u.value,disabled:u.disabled},null,8,H),[[e.vModelRadio,t.value]])],10,z))),256))],2))}}),U={$style:{"top-scrollBarXHidding":"top-scrollBarXHidding","top-radioGroup":"top-radioGroup","top-radioGroup_item":"top-radioGroup_item","top-radioGroup_item-selected":"top-radioGroup_item-selected","top-radioGroup_circle":"top-radioGroup_circle","top-disabled":"top-disabled","top-error":"top-error"}},W=h._export_sfc(x,[["__cssModules",U]]),J=(i,c,t)=>{const r=e.ref([]),m=e.ref(!1);let f="",s;i&&!i.params.limit&&(i.params.limit=100);const p=async()=>{if(!i)return;let l,V;if(t&&(i.cache??=new Map,V=JSON.stringify(i.params),l=i.cache.get(V),l))return l;if(m.value=!0,l=await i.call(),m.value=!1,l.errors)return;if(!Array.isArray(l.result)){console.warn("В result ожидался массив");return}const y=l.result.findIndex(A=>A.id===void 0||A.name===void 0);if(y!==-1){console.warn(`В result[${y}] нет id или name`);return}return t&&i.cache.set(V,l),l},u=async()=>{if(!i)return;i.params.offset=0,i.params.search=f;const l=await p();l&&(s=l.nextOffset,r.value=l.result)},v=async()=>{if(!i||!s||m.value)return;i.params.offset=s,i.params.search=f;const l=await p();l&&(s=l.nextOffset,r.value=r.value.concat(l.result))},k=S.debounce(()=>u(),200);return{items:r,isLoading:m,loadAppend:v,setSearchTextAndLoad:(l,V=!0)=>{i&&(l.length<c||l===f&&r.value.length||(f=l,V?k():u()))}}},X={class:"top-selector2_itemMulti top-ellipsis"},j=e.defineComponent({__name:"itemMulti",props:{id:{},name:{}},emits:["delete"],setup(i){return(c,t)=>(e.openBlock(),e.createElementBlock("div",X,[e.createTextVNode(e.toDisplayString(c.name)+" ",1),e.createElementVNode("span",{class:"top-selector2_itemMultiDelete","data-top-icon":"",onClick:t[0]||(t[0]=r=>c.$emit("delete",c.id)),onMousedown:t[1]||(t[1]=e.withModifiers(()=>{},["stop"]))},null,32)]))}}),R={$style:{"top-selector2_itemMulti":"top-selector2_itemMulti","top-selector2_itemMultiDelete":"top-selector2_itemMultiDelete","top-selector2":"top-selector2","top-active":"top-active"}},Y=h._export_sfc(j,[["__cssModules",R]]),Q={key:0,class:"top-selector2_activeItems"},Z={key:1,class:"top-selector2_activeName top-ellipsis"},q=e.defineComponent({__name:"selector2",props:e.mergeModels({modelValue:{},items:{default:()=>[]},multiselect:{type:Boolean},disabled:{type:Boolean},size:{default:"s"},isError:{type:Boolean},apiRequest:{},minLength:{default:0},useCache:{type:Boolean},appendSearchToResult:{type:Boolean},appendAllValue:{type:Boolean},addChanger:{type:Boolean},placeholder:{},showSelectedInInput:{type:Boolean,default:!0}},{modelValue:{},modelModifiers:{}}),emits:["update:modelValue"],setup(i){const c=i,t=e.useModel(i,"modelValue"),r=e.ref(""),m={id:0,name:"Все"},f=e.ref(null),s=()=>{var o;return(o=f.value)==null?void 0:o.popup};window.__STORYBOOK_PREVIEW__&&!c.modelValue&&e.watch(()=>c.multiselect,()=>{t.value=c.multiselect?[]:{id:null,name:""}},{immediate:!0});const p=J(c.apiRequest,c.minLength,c.useCache),u=e.computed(()=>{const o=[];return!c.multiselect&&c.appendAllValue&&o.push(m),c.items.forEach(n=>o.push({...n})),o}),v=(o,n=!0)=>n&&o.id===null?Array.isArray(t.value)?t.value.some(a=>a.id===o.id&&a.name===o.name):o.name===t.value.name:Array.isArray(t.value)?t.value.some(a=>a.id===o.id):o.id===t.value.id,k=e.computed(()=>{const o=r.value.toLowerCase(),n=M.invertKeyboardLayout(o);let a=[];return u.value.forEach(B=>{const g=B.name.toLowerCase();(B.id===Number(o)||g.includes(o)||g.includes(n))&&(g===o||g===n?a.unshift(B):a.push(B))}),a.push(...p.items.value),c.appendSearchToResult&&r.value&&(!a.length||a[0].name.toLowerCase()!==o)&&a.push({id:null,name:r.value}),c.multiselect&&(a=a.filter(B=>!v(B))),a}),d=async o=>{var n,a;if(c.multiselect){if(!Array.isArray(t.value)||v(o))return;const B=[...t.value];B.push({...o}),t.value=B,h.Core.state.isMobile?(n=s())==null||n.close():setTimeout(()=>{var g,C,_,$;(g=s())==null||g.recalcPosition(),($=(_=(C=s())==null?void 0:C.elPopupWidget)==null?void 0:_.querySelector("input"))==null||$.focus(),r.value&&(k.value.length||(r.value="",p.items.value=[]))})}else r.value&&(r.value="",p.items.value=[]),JSON.stringify(o)!==JSON.stringify(t.value)&&(t.value={...o}),(a=s())==null||a.close()},l=()=>{if(!Array.isArray(t.value)){const n=(u.value.findIndex(a=>a.id===t.value.id)+1)%u.value.length;t.value={...u.value[n]}}},V=async o=>{Array.isArray(t.value)&&(t.value=t.value.filter(n=>n.id!==o),setTimeout(()=>{var n;(n=s())==null||n.recalcPosition()}))},y=e.ref(!1);c.apiRequest&&(e.watch(y,()=>{y.value&&p.setSearchTextAndLoad(r.value,!1)}),e.watch(r,()=>p.setSearchTextAndLoad(r.value)));const A=o=>{const n=o.target;n.scrollTop/(n.scrollHeight-n.offsetHeight)>.8&&p.loadAppend()};return(o,n)=>(e.openBlock(),e.createBlock(e.unref(b._sfc_main),{ref_key:"popupRef",ref:f,onOpen:n[1]||(n[1]=a=>y.value=!0),onClose:n[2]||(n[2]=a=>y.value=!1),onScrollContentList:n[3]||(n[3]=a=>o.apiRequest?A(a):void 0),notch:!1,transitionDuration:0},{opener:e.withCtx(()=>[e.createElementVNode("div",{class:e.normalizeClass({"top-selector2":!0,"top-selector2-multiselect":o.multiselect,["top-size_"+o.size]:!0,"top-disabled":o.disabled,"top-forms-focusable":!o.disabled,"top-error":o.isError})},[o.multiselect?(e.openBlock(),e.createElementBlock("div",Q,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(t.value,a=>(e.openBlock(),e.createBlock(Y,{id:a.id,name:a.name,onDelete:V},null,8,["id","name"]))),256))])):e.createCommentVNode("",!0),o.multiselect?e.createCommentVNode("",!0):(e.openBlock(),e.createElementBlock("span",Z,e.toDisplayString(Array.isArray(t.value)?"":t.value.name),1)),o.addChanger&&!o.multiselect&&u.value.length>1&&!o.disabled?(e.openBlock(),e.createElementBlock("span",{key:2,class:"top-changer top-changer-selector",onClick:e.withModifiers(l,["stop"])})):e.createCommentVNode("",!0)],2)]),widget:e.withCtx(()=>[e.createVNode(e.unref(T.PopupWidgetInput),{title:"Поиск",icon:"",modelValue:r.value,"onUpdate:modelValue":n[0]||(n[0]=a=>r.value=a),isLoading:e.unref(p).isLoading.value,placeholder:!Array.isArray(t.value)&&!o.multiselect&&o.showSelectedInInput?t.value.name:o.placeholder},null,8,["modelValue","isLoading","placeholder"])]),contentList:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(k.value,a=>(e.openBlock(),e.createBlock(e.unref(b._sfc_main$2),{class:e.normalizeClass({"top-active":!Array.isArray(t.value)&&!o.multiselect&&t.value.name===a.name}),key:a.id??void 0,onClick:e.withModifiers(B=>d(a),["stop"])},{default:e.withCtx(()=>[o.$slots.item?e.renderSlot(o.$slots,"item",{key:0,item:a}):(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[e.createTextVNode(e.toDisplayString(a.name),1)],64))]),_:2},1032,["class","onClick"]))),128)),k.value.length?e.createCommentVNode("",!0):(e.openBlock(),e.createBlock(e.unref(b._sfc_main$2),{key:0,type:"regular"},{default:e.withCtx(()=>[e.createTextVNode(" Нет результатов ")]),_:1}))]),_:3},512))}}),ee={$style:{"top-selector2":"top-selector2","top-selector2-multiselect":"top-selector2-multiselect","top-active":"top-active","top-selector2_activeItems":"top-selector2_activeItems","top-selector2_activeName":"top-selector2_activeName","top-changer-selector":"top-changer-selector"}},te=h._export_sfc(q,[["__cssModules",ee]]);w.Menu=E.Menu,w.EditArea=L,w.EditInput=O,w.RadioGroup=W,w.Selector2=te,Object.defineProperty(w,Symbol.toStringTag,{value:"Module"})});
|
|
2
2
|
//# sourceMappingURL=formsExt.amd.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"formsExt.amd.js","sources":["../../src/components/formsExt/editArea/editArea.vue","../../src/components/formsExt/editInput/editInput.vue","../../src/components/formsExt/radioGroup/radioGroup.vue","../../src/components/formsExt/selector2/api.ts","../../src/components/formsExt/selector2/selector2.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { ref, computed } from 'vue';\nimport Button from '@/components/forms/button/button.vue';\nimport type { Props, Emits } from './editArea';\nimport Textarea from '@/components/forms/textarea/textarea.vue';\n\n// TODO: добавить переменную top-forms-fixed-height и использовать ее при добавлении отступов у страницы\n\nconst props = withDefaults(defineProps<Props>(), {\n\tdefaultValue: '',\n\tcancelText: 'Cancel',\n\tsubmitText: 'Send',\n\tcloseText: 'Close',\n\texpandable: true\n});\n\nconst emit = defineEmits<Emits>();\n\nconst localValue = ref(props.defaultValue);\n\nconst isFocused = ref(props.isFocused);\n\nconst isChanged = computed(() => localValue.value !== props.defaultValue);\n\nconst cancelBtnText = computed(() => {\n\tif (props.attachToKeyboard) return '';\n\n\tif (props.forceShowCloseBtn && !isChanged.value) return props.closeText;\n\n\treturn props.cancelText;\n});\n\nconst submit = (value: string) => {\n\temit('submit', value);\n\n\tlocalValue.value = props.defaultValue;\n};\n\nconst cancel = () => {\n\tif (props.forceShowCloseBtn && !isChanged.value) {\n\t\temit('close');\n\n\t\treturn;\n\t}\n\n\tlocalValue.value = props.defaultValue;\n};\n\nconst clickOnTitle = () => {\n\tif (props.attachToKeyboard) emit('clickOnTitle');\n};\n</script>\n\n<template>\n\t<div\n\t\t:class=\"{\n\t\t\t'top-editArea': true,\n\t\t\t'top-editArea-attachedToKeyboard': attachToKeyboard,\n\t\t}\"\n\t>\n\t\t<div\n\t\t\tv-if=\"title\"\n\t\t\tclass=\"top-editArea_title\"\n\t\t\t@click=\"clickOnTitle()\"\n\t\t>\n\t\t\t{{ title }}\n\t\t</div>\n\n\t\t<div\n\t\t\t:class=\"{\n\t\t\t\t'top-editArea_form': true,\n\t\t\t\t'top-error': isError,\n\t\t\t\t'top-editArea_form-focus': isFocused,\n\t\t\t}\"\n\t\t>\n\t\t\t<Textarea\n\t\t\t\tv-focus=\"isFocused\"\n\t\t\t\tv-model=\"localValue\"\n\t\t\t\t:name=\"name\"\n\t\t\t\t:placeholder=\"placeholder\"\n\t\t\t\t:rows=\"rows\"\n\t\t\t\t:minHeight=\"minHeight\"\n\t\t\t\t:expandable=\"expandable\"\n\t\t\t\t:disabled=\"disabled\"\n\t\t\t\t:readonly=\"readonly\"\n\t\t\t\t:isError=\"isError\"\n\t\t\t\t:hint=\"hint\"\n\t\t\t\tclass=\"top-editArea_element\"\n\t\t\t\t@focus=\"() => isFocused = true\"\n\t\t\t\t@blur=\"() => isFocused = false\"\n\t\t\t\t@keyup.esc=\"cancel\"\n\t\t\t\t@keyup.ctrl.enter=\"submit(localValue)\"\n\t\t\t/>\n\n\t\t\t<div class=\"top-editArea_footer\">\n\t\t\t\t<Button\n\t\t\t\t\tv-if=\"isChanged || forceShowCloseBtn\"\n\t\t\t\t\tclass=\"top-editArea_button\"\n\t\t\t\t\tcolor=\"theme\"\n\t\t\t\t\t:icon=\"attachToKeyboard ? '': ''\"\n\t\t\t\t\t@click=\"cancel\"\n\t\t\t\t>\n\t\t\t\t\t{{ cancelBtnText }}\n\t\t\t\t</Button>\n\n\t\t\t\t<Button\n\t\t\t\t\tclass=\"top-editArea_button\"\n\t\t\t\t\tv-if=\"isChanged\"\n\t\t\t\t\t:icon=\"attachToKeyboard ? '': ''\"\n\t\t\t\t\t@click=\"submit(localValue)\"\n\t\t\t\t>\n\t\t\t\t\t{{ attachToKeyboard ? '' : submitText }}\n\t\t\t\t</Button>\n\t\t\t</div>\n\t\t</div>\n\t</div>\n</template>\n\n<style module>\n.top-editArea {\n\tdisplay: flex;\n\tflex-direction: column;\n\tgap: 6px;\n}\n\n.top-editArea_title {\n\tfont-size: 12px;\n}\n\n.top-editArea_form {\n\tbackground: var(--top-forms-background-color);\n\toutline-color: var(--color-theme-75);\n\toutline-offset: 0;\n\tdisplay: flex;\n\tflex-direction: column;\n}\n\n.top-editArea_form-focus {\n\tborder-color: var(--color-primary);\n}\n\n.top-editArea_form:hover {\n\tbackground: var(--top-forms-background-color-hover);\n}\n\n/* textarea в EditArea */\n.top-textarea {\n\twidth: 100%;\n}\n\n.top-editArea_element.top-textarea_textarea {\n\tborder: none;\n\toutline: none;\n\tanimation: none;\n}\n\n/* footer */\n.top-editArea_footer {\n\tpadding: var(--top-forms-padding);\n\tdisplay: flex;\n\tmin-height: 32px;\n\tjustify-content: flex-end;\n\tgap: var(--top-forms-padding);\n}\n\n/* attachedToKeyboard */\n.top-editArea-attachedToKeyboard {\n\tbackground: var(--top-forms-background-color);\n\tmargin-bottom: env(keyboard-inset-height, 0);\n\tposition: fixed;\n\tbottom: 0;\n\tright: 0;\n\tleft: 0;\n\tz-index: 2;\n\tgap: 0;\n}\n\n.top-editArea-attachedToKeyboard .top-editArea_form {\n\tborder-radius: 0;\n\tborder: none;\n\tborder-top: 1px solid var(--top-forms-border-color);\n}\n\n.top-editArea-attachedToKeyboard .top-editArea_title {\n\tcursor: pointer;\n\tborder-top: 1px solid var(--color-line-2-opacity);\n\tpadding: var(--top-forms-padding);\n}\n\n.top-editArea-attachedToKeyboard .top-editArea_footer > [data-top-icon] {\n\tborder-radius: 100%;\n}\n\n.top-editArea-attachedToKeyboard .top-button.top-editArea_button {\n\tmin-width: auto;\n\tpadding: 0;\n}\n</style>","<script setup lang=\"ts\">\nimport { ref, toRef, watch } from 'vue';\nimport type { Props, Emits } from './editInput';\nimport Input from '@/components/forms/input/input.vue';\nimport Button from '@/components/forms/button/button.vue';\n\nconst props = defineProps<Props>();\n\nconst intermediateValue = ref(props.modelValue);\n\nwatch(toRef(props.modelValue), () => {\n\tintermediateValue.value = props.modelValue;\n});\n\nconst emit = defineEmits<Emits>();\n\nconst submit = () => {\n\temit('update:modelValue', intermediateValue.value);\n};\n</script>\n\n<template>\n\t<div class=\"top-editInput\">\n\t\t<Input\n\t\t\t:=\"input\"\n\t\t\t@keydown.esc.capture.stop=\"intermediateValue = modelValue\"\n\t\t\t@keydown.enter.stop=\"submit\"\n\t\t\tv-model=\"intermediateValue\"\n\t\t/>\n\n\t\t<Button\n\t\t\tv-if=\"intermediateValue !== modelValue\"\n\t\t\ticon=\"\"\n\t\t\tstyling=\"soft\"\n\t\t\t:=\"button\"\n\t\t\t@click=\"submit\"\n\t\t>\n\t\t\t<!-- @slot Слот Button -->\n\t\t\t<slot></slot>\n\t\t</Button>\n\t</div>\n</template>\n\n<style module>\n.top-editInput {\n\twidth: 220px;\n\tflex-grow: 1;\n\tdisplay: flex;\n\talign-items: flex-end;\n\tgap: var(--top-gap-1);\n}\n\n.top-editInput .top-input {\n\twidth: unset;\n\tflex-grow: 1;\n}\n</style>","<script setup lang=\"ts\">\nimport type { Ref } from '@vue/reactivity';\nimport { ref, watch } from 'vue';\nimport type { Props, Emits } from './radioGroup';\n\nconst model = defineModel<string>({\n\trequired: true,\n});\n\nconst props = withDefaults(defineProps<Props>(), {\n\tsize: 's',\n});\n\nconst emit = defineEmits<Emits>();\n\nconst elRef: Ref<HTMLElement|null> = ref(null);\n\nwatch(model, () => {\n\tif (!props.radiosProps?.some(item => item.value === model.value)) {\n\t\tmodel.value = props.radiosProps?.[0]?.value ?? '';\n\t}\n\n\telRef.value?.querySelector('.radioGroup_item-selected')?.scrollIntoView();\n}, { immediate: true });\n\nconst uid = 'radioGroup-' + Math.random();\n</script>\n\n<template>\n\t<div\n\t\tref=\"elRef\"\n\t\t:class=\"{\n\t\t\t['top-radioGroup']: true,\n\t\t\t['top-scrollBarXHidding']: true,\n\t\t\t['top-size_' + size]: !!size,\n\t\t\t['top-error']: isError,\n\t\t}\"\n\t>\n\t\t<label\n\t\t\tv-for=\"item of radiosProps\"\n\t\t\t:class=\"{\n\t\t\t\t['top-radioGroup_item-selected']: item.value === model,\n\t\t\t\t['top-radioGroup_item']: true,\n\t\t\t\t['top-forms-focusable']: true,\n\t\t\t\t['top-disabled']: item.disabled,\n\t\t\t}\"\n\t\t\t:data-top-icon=\"item.icon\"\n\t\t\t@click=\"model = item.value\"\n\t\t>\n\t\t\t{{ item.title }}\n\n\t\t\t<span\n\t\t\t\tv-if=\"showIndicator\"\n\t\t\t\tclass=\"top-radioGroup_circle\"\n\t\t\t></span>\n\n\t\t\t<!-- Для нативной навигации -->\n\t\t\t<input\n\t\t\t\tv-model=\"model\"\n\t\t\t\t:name=\"uid\"\n\t\t\t\ttype=\"radio\"\n\t\t\t\t:class=\"{\n\t\t\t\t\t['top-unvisible']: true,\n\t\t\t\t}\"\n\t\t\t\t:value=\"item.value\"\n\t\t\t\t:disabled=\"item.disabled\"\n\t\t\t/>\n\t\t</label>\n\t</div>\n</template>\n\n<style module>\n@import \"./styles/top-scrollBar.css\";\n\n.top-radioGroup {\n\tuser-select: none;\n\tbox-sizing: border-box;\n\tborder-radius: 8px;\n\tbackground-color: var(--color-theme-50);\n\theight: var(--top-forms-base-height);\n\tpadding: 2px;\n\tgap: 2px;\n\tdisplay: flex;\n\talign-items: flex-start;\n}\n\n.top-radioGroup_item {\n\tcursor: pointer;\n\tbox-sizing: border-box;\n\tborder-radius: 6px;\n\theight: calc(var(--top-forms-base-height) - 4px);\n\tpadding: 0 16px;\n\tfont-weight: 600;\n\twhite-space: nowrap;\n\tdisplay: flex;\n\talign-items: center;\n\tjustify-content: center;\n\tflex-grow: 1;\n\tgap: 4px;\n}\n\n.top-radioGroup_item:hover {\n\tbackground-color: var(--color-theme-25);\n\tbox-shadow: 0px 4px 32px 0px rgba(4, 9, 84, 0.10), 0px 0px 4px 0px rgba(4, 9, 84, 0.08);\n}\n\n/* selected */\n.top-radioGroup_item-selected {\n\tpointer-events: none;\n\tbackground-color: var(--color-bg-3);\n\tbox-shadow: 0px 4px 32px 0px rgba(4, 9, 84, 0.10), 0px 0px 4px 0px rgba(4, 9, 84, 0.08);\n}\n\n/* circle */\n.top-radioGroup_circle {\n\tcontent: \"\";\n\tbox-sizing: border-box;\n\tborder: 1px solid var(--color-line-3-opacity);\n\tborder-radius: 50%;\n\tpadding: 3px;\n\tmargin-left: auto;\n\twidth: calc(var(--top-forms-option-height) - 3px * 2);\n\theight: calc(var(--top-forms-option-height) - 3px * 2);\n}\n\n.top-radioGroup_item:hover .top-radioGroup_circle:before {\n\tborder-color: var(--color-primary);\n}\n\n/* circle selected */\n.top-radioGroup_item-selected .top-radioGroup_circle {\n\tborder-color: var(--color-primary);\n\tborder-width: 5px;\n}\n\n.top-radioGroup_item-selected:hover .top-radioGroup_circle {\n\tborder-color: var(--color-primary-2);\n}\n\n/* top-disabled */\n.top-radioGroup_item.top-disabled {\n\t--top-icon-color: var(--color-text-3);\n\n\tcolor: var(--color-text-3);\n}\n\n.top-radioGroup_item.top-disabled .top-radioGroup_circle {\n\tborder-color: var(--color-theme-400);\n\tbackground-color: var(--color-theme-50);\n}\n\n/* top-error */\n.top-radioGroup.top-error .top-radioGroup_item:not(.top-disabled) .top-radioGroup_circle {\n\tborder-color: var(--color-negative);\n}\n</style>","import type { Ref } from 'vue';\nimport { ref } from 'vue';\nimport { debounce } from 'lodash';\nimport type { Item, Props } from './selector2';\n\nexport const useAPI = (apiRequest: Props['apiRequest'], minLength: number, useCache: Props['useCache']) => {\n\t/**\n\t * Список, полученный через API\n\t */\n\tconst items: Ref<Array<Item>> = ref([]);\n\n\t/**\n\t * Флаг - идет загрузка\n\t */\n\tconst isLoading = ref(false);\n\n\tlet _searchText = '';\n\tlet _nextOffset: number | undefined;\n\n\tif (apiRequest && !apiRequest.params.limit) {\n\t\tapiRequest.params.limit = 100;\n\t}\n\n\t/**\n\t * Выполнить обращение к API\n\t *\n\t * При ошибке вернет undefined\n\t */\n\tconst callAPIRequest = async (): Promise<{ nextOffset?: number, result: Array<Item> } | undefined> => {\n\t\tif (!apiRequest) return;\n\n\t\tlet res;\n\t\tlet cacheKey;\n\n\t\tif (useCache) {\n\t\t\t// кэш для полученных ответов через apiRequest\n\t\t\t// общий для всех компонентов, использующих apiRequest\n\t\t\tapiRequest.cache ??= new Map();\n\n\t\t\tcacheKey = JSON.stringify(apiRequest.params);\n\t\t\tres = apiRequest.cache.get(cacheKey);\n\n\t\t\tif (res) {\n\t\t\t\treturn res;\n\t\t\t}\n\t\t}\n\n\t\tisLoading.value = true;\n\t\tres = await apiRequest.call();\n\t\tisLoading.value = false;\n\n\t\tif (res.errors) return;\n\n\t\tif (!Array.isArray(res.result)) {\n\t\t\tconsole.warn(`В result ожидался массив`);\n\n\t\t\treturn;\n\t\t}\n\n\t\tconst indexWithError = (res.result as Array<Item | any>).findIndex(item => item.id === undefined || item.name === undefined);\n\t\tif (indexWithError !== -1) {\n\t\t\tconsole.warn(`В result[${indexWithError}] нет id или name`);\n\n\t\t\treturn;\n\t\t}\n\n\t\tif (useCache) {\n\t\t\tapiRequest.cache.set(cacheKey as string, res);\n\t\t}\n\n\t\treturn res;\n\t};\n\n\t/**\n\t * Загрузить items\n\t */\n\tconst load = async () => {\n\t\tif (!apiRequest) return;\n\n\t\tapiRequest.params.offset = 0;\n\t\tapiRequest.params.search = _searchText;\n\n\t\tconst res = await callAPIRequest();\n\t\tif (!res) return;\n\n\t\t_nextOffset = res.nextOffset;\n\n\t\titems.value = res.result;\n\t};\n\n\t/**\n\t * Загрузить следующую страницу items\n\t */\n\tconst loadAppend = async () => {\n\t\tif (!apiRequest) return;\n\n\t\t// данных о следующих страницах не обнаружено\n\t\tif (!_nextOffset) return;\n\n\t\t// дозагружать нельзя, если не завершена предыдущшая загрузка\n\t\tif (isLoading.value) return;\n\n\t\tapiRequest.params.offset = _nextOffset;\n\t\tapiRequest.params.search = _searchText;\n\n\t\tconst res = await callAPIRequest();\n\t\tif (!res) return;\n\n\t\t_nextOffset = res.nextOffset;\n\n\t\titems.value = items.value.concat(res.result);\n\t};\n\n\tconst loadDebounce = debounce(() => load(), 200);\n\n\t/**\n\t * Выполнить поиск по указанному тексту\n\t *\n\t * Если длина текста меньше minLength, поиск не будет проивзеден\n\t *\n\t * Если текст не изменился, поиск не будет проивзеден\n\t * @param searchText - текст поиска\n\t * @param useDebounce - отложенное выполнение поиска\n\t */\n\tconst setSearchTextAndLoad = (searchText: string, useDebounce = true) => {\n\t\tif (!apiRequest) return;\n\n\t\tif (searchText.length < minLength) return;\n\n\t\t// условия поиска не поменялись, данные загружены\n\t\tif (searchText === _searchText && items.value.length) return;\n\n\t\t_searchText = searchText;\n\n\t\tif (useDebounce) {\n\t\t\tloadDebounce();\n\t\t} else {\n\t\t\tvoid load();\n\t\t}\n\t};\n\n\treturn {\n\t\titems,\n\t\tisLoading,\n\t\tloadAppend,\n\t\tsetSearchTextAndLoad,\n\t};\n};","<script setup lang=\"ts\">\nimport type { Ref, ComputedRef, ModelRef, ComponentInstance } from 'vue';\nimport { computed, ref, watch } from 'vue';\nimport Core from '@/core/core/core';\nimport { invertKeyboardLayout } from '@/core/utils/keyboard';\nimport { Popup, PopupListItem, PopupWidgetInput } from '@/components/popup/popup';\nimport type PopupClass from '@/components/popup/lib/popup';\nimport type { Item, Props, Slots } from './selector2';\nimport { useAPI } from './api';\nimport Selector2ItemMulti from './itemMulti.vue';\n\nconst props = withDefaults(defineProps<Props>(), {\n\titems: () => [] as Array<Item>,\n\tsize: 's',\n\tminLength: 0,\n\tshowSelectedInInput: true,\n});\n\nconst model = defineModel<Props['modelValue']>() as ModelRef<Props['modelValue']>;\n\ndefineSlots<Slots>();\n\n/**\n * Текст поиска по результатам\n */\nconst searchText = ref('');\n\nconst itemAll = {\n\tid: 0,\n\tname: 'Все',\n};\n\n/**\n * Экземпляр компонента Popup\n */\nconst popupRef: Ref<ComponentInstance<typeof Popup> | null> = ref(null);\n\n/**\n * Получить доступ к объекту popup\n */\nconst getPopup = (): PopupClass | undefined => {\n\treturn popupRef.value?.popup;\n};\n\n// для storybook\nif ((window as any).__STORYBOOK_PREVIEW__ && !props.modelValue) {\n\twatch(\n\t\t() => props.multiselect,\n\t\t() => {\n\t\t\tmodel.value = props.multiselect ? [] : { id: null, name: '' };\n\t\t},\n\t\t{ immediate: true },\n\t);\n}\n\nconst API = useAPI(props.apiRequest, props.minLength, props.useCache);\n\n/**\n * Варианты выбора: props.items + \"Выбрать все\"\n */\nconst localItems: ComputedRef<Array<Item>> = computed(() => {\n\tconst items: Array<Item> = [];\n\n\tif (!props.multiselect && props.appendAllValue) {\n\t\titems.push(itemAll);\n\t}\n\n\tprops.items.forEach(item => items.push({ ...item }));\n\n\treturn items;\n});\n\n/**\n * Проверить, что элемент выбран\n */\nconst isSelected = (item: Item, checkNameForNullId = true) => {\n\tif (checkNameForNullId && item.id === null) {\n\t\tif (Array.isArray(model.value)) {\n\t\t\treturn model.value.some(itemSelected => itemSelected.id === item.id && itemSelected.name === item.name);\n\t\t} else {\n\t\t\treturn item.name === model.value.name;\n\t\t}\n\t}\n\n\tif (Array.isArray(model.value)) {\n\t\treturn model.value.some(itemSelected => itemSelected.id === item.id);\n\t} else {\n\t\treturn item.id === model.value.id;\n\t}\n};\n\n/**\n * Варианты выбора, которые выводятся\n */\nconst itemsForShow = computed(() => {\n\tconst searchString = searchText.value.toLowerCase();\n\tconst searchStringInvertKeyboard = invertKeyboardLayout(searchString);\n\n\tlet items: typeof localItems.value = [];\n\n\tlocalItems.value.forEach((item) => {\n\t\tconst itemName = item.name.toLowerCase();\n\n\t\tif (\n\t\t\titem.id === Number(searchString) ||\n\t\t\titemName.includes(searchString) ||\n\t\t\titemName.includes(searchStringInvertKeyboard)\n\t\t) {\n\t\t\tif (itemName === searchString || itemName === searchStringInvertKeyboard) {\n\t\t\t\titems.unshift(item);\n\t\t\t} else {\n\t\t\t\titems.push(item);\n\t\t\t}\n\t\t}\n\t});\n\n\titems.push(...API.items.value);\n\n\tif (\n\t\tprops.appendSearchToResult &&\n\t\t!!searchText.value &&\n\t\t(!items.length || items[0].name.toLowerCase() !== searchString)\n\t) {\n\t\titems.push({\n\t\t\tid: null,\n\t\t\tname: searchText.value,\n\t\t});\n\t}\n\n\tif (props.multiselect) {\n\t\titems = items.filter(item => !isSelected(item));\n\t}\n\n\treturn items;\n});\n\n/**\n * Выбрать значение\n *\n * Управляет закрытием окна\n */\nconst selectItem = async (item: Item) => {\n\tif (props.multiselect) {\n\t\tif (!Array.isArray(model.value)) return;\n\n\t\tif (isSelected(item)) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst newModel = [...model.value];\n\t\tnewModel.push({ ...item });\n\t\tmodel.value = newModel;\n\n\t\tif (Core.state.isMobile) {\n\t\t\tgetPopup()?.close();\n\t\t} else {\n\t\t\tsetTimeout(() => {\n\t\t\t\tgetPopup()?.recalcPosition();\n\t\t\t\tgetPopup()?.elPopupWidget?.querySelector('input')?.focus();\n\n\t\t\t\t// сбросить введенный текст, только если больше не найдено результатов\n\t\t\t\tif (searchText.value) {\n\t\t\t\t\tif (!itemsForShow.value.length) {\n\t\t\t\t\t\tsearchText.value = '';\n\t\t\t\t\t\tAPI.items.value = [];\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t});\n\t\t}\n\t} else {\n\t\t// сбросить введенный текст\n\t\tif (searchText.value) {\n\t\t\tsearchText.value = '';\n\t\t\tAPI.items.value = [];\n\t\t}\n\n\t\tif (JSON.stringify(item) !== JSON.stringify(model.value)) {\n\t\t\tmodel.value = { ...item };\n\t\t}\n\n\t\tgetPopup()?.close();\n\t}\n};\n\n/**\n * Выбрать следующее значение\n */\nconst selectNextItem = () => {\n\tif (!Array.isArray(model.value)) {\n\t\tconst currentIndex = localItems.value.findIndex(item => item.id === (model.value as Item).id);\n\t\tconst nextIndex = (currentIndex + 1) % localItems.value.length;\n\t\tmodel.value = { ...localItems.value[nextIndex] };\n\t}\n};\n\n/**\n * Удалить выбранное значение по id\n * @param id\n */\nconst deleteItemById = async (id: Item['id']) => {\n\tif (Array.isArray(model.value)) {\n\t\tmodel.value = model.value.filter(item => item.id !== id);\n\n\t\tsetTimeout(() => {\n\t\t\tgetPopup()?.recalcPosition();\n\t\t});\n\t}\n};\n\nconst isOpened = ref(false); // флаг попап открыт\n\nif (props.apiRequest) {\n\twatch(isOpened, () => {\n\t\tif (isOpened.value) {\n\t\t\t// при открытии сразу выполнить поиск\n\t\t\tAPI.setSearchTextAndLoad(searchText.value, false);\n\t\t}\n\t});\n\n\t// отложенный поиск при вводе текста\n\twatch(searchText, () => API.setSearchTextAndLoad(searchText.value));\n}\n\nconst onScrollContentList = (e: Event) => {\n\tconst el = e.target as HTMLElement;\n\n\tif (el.scrollTop / (el.scrollHeight - el.offsetHeight) > 0.8) {\n\t\tAPI.loadAppend();\n\t}\n};\n</script>\n\n<template>\n\t<Popup\n\t\tref=\"popupRef\"\n\t\t@open=\"isOpened = true\"\n\t\t@close=\"isOpened = false\"\n\t\t@scrollContentList=\"apiRequest ? onScrollContentList($event) : undefined\"\n\t\t:notch=\"false\"\n\t\t:transitionDuration=\"0\"\n\t>\n\t\t<template #opener>\n\t\t\t<div\n\t\t\t\t:class=\"{\n\t\t\t\t\t'top-selector2' : true,\n\t\t\t\t\t'top-selector2-multiselect': multiselect,\n\t\t\t\t\t['top-size_' + size]: true,\n\t\t\t\t\t['top-disabled']: disabled,\n\t\t\t\t\t['top-forms-focusable']: !disabled,\n\t\t\t\t\t['top-error']: isError,\n\t\t\t\t}\"\n\t\t\t>\n\t\t\t\t<template v-if=\"multiselect\">\n\t\t\t\t\t<div class=\"top-selector2_activeItems\">\n\t\t\t\t\t\t<Selector2ItemMulti\n\t\t\t\t\t\t\tv-for=\"item of model as Array<Item>\"\n\t\t\t\t\t\t\t:id=\"item.id\"\n\t\t\t\t\t\t\t:name=\"item.name\"\n\t\t\t\t\t\t\t@delete=\"deleteItemById\"\n\t\t\t\t\t\t/>\n\t\t\t\t\t</div>\n\t\t\t\t</template>\n\n\t\t\t\t<span v-if=\"!multiselect\" class=\"top-selector2_activeName top-ellipsis\">\n\t\t\t\t\t{{ !Array.isArray(model) ? model.name : '' }}\n\t\t\t\t</span>\n\n\t\t\t\t<span\n\t\t\t\t\tv-if=\"addChanger && !multiselect && localItems.length > 1 && !disabled\"\n\t\t\t\t\tclass=\"top-changer top-changer-selector\"\n\t\t\t\t\t@click.stop=\"selectNextItem\"\n\t\t\t\t></span>\n\t\t\t</div>\n\t\t</template>\n\n\t\t<template #widget>\n\t\t\t<PopupWidgetInput\n\t\t\t\ttitle=\"Поиск\"\n\t\t\t\ticon=\"\"\n\t\t\t\tv-model=\"searchText\"\n\t\t\t\t:isLoading=\"API.isLoading.value\"\n\t\t\t\t:placeholder=\"!Array.isArray(model) && !multiselect && showSelectedInInput ? model.name : placeholder\"\n\t\t\t/>\n\t\t</template>\n\n\t\t<template #contentList>\n\t\t\t<PopupListItem\n\t\t\t\tv-for=\"item of itemsForShow\"\n\t\t\t\t:class=\"{\n\t\t\t\t\t'top-active': !Array.isArray(model) && !multiselect && model.name === item.name\n\t\t\t\t}\"\n\t\t\t\t:key=\"item.id ?? undefined\"\n\t\t\t\t@click.stop=\"selectItem(item)\"\n\t\t\t>\n\t\t\t\t<slot\n\t\t\t\t\tv-if=\"$slots.item\"\n\t\t\t\t\tname=\"item\"\n\t\t\t\t\t:item=\"item\"\n\t\t\t\t></slot>\n\n\t\t\t\t<template\n\t\t\t\t\tv-else\n\t\t\t\t>\n\t\t\t\t\t{{ item.name }}\n\t\t\t\t</template>\n\t\t\t</PopupListItem>\n\n\t\t\t<PopupListItem\n\t\t\t\tv-if=\"!itemsForShow.length\"\n\t\t\t\ttype=\"regular\"\n\t\t\t>\n\t\t\t\tНет результатов\n\t\t\t</PopupListItem>\n\t\t</template>\n\t</Popup>\n</template>\n\n<style module>\n.top-selector2 {\n\twidth: 180px;\n\tmin-height: var(--top-forms-base-height);\n\tbox-sizing: border-box;\n\tposition: relative;\n\tdisplay: flex;\n\toverflow: hidden;\n\tpadding: var(--top-padding-1) var(--top-forms-padding);\n\tcolor: var(--top-forms-placeholder-color);\n\n\tborder-radius: var(--top-radius-2);\n\tborder: 1px solid var(--top-forms-border-color);\n\tbackground: var(--top-forms-background-color);\n}\n\n.top-selector2-multiselect {\n\twidth: unset;\n\tmin-width: 180px;\n\tpadding: var(--top-padding-1);\n}\n\n.top-selector2.top-active {\n\t--top-forms-border-color: var(--top-forms-border-color-hover);\n\t--top-forms-background-color: var(--top-forms-background-color-hover);\n}\n\n.top-selector2_activeItems {\n\tdisplay: flex;\n\tflex-wrap: wrap;\n\tgap: var(--top-padding-1);\n\tmax-width: 100%;\n}\n\n.top-selector2_activeName {\n\twhite-space: nowrap;\n}\n\n.top-changer-selector {\n\ttransform: translateX(-16px);\n}\n</style>"],"names":["props","__props","emit","__emit","isChanged","vue","localValue","cancelBtnText","submit","value","intermediateValue","elRef","model","_a","item","_c","_b","items","isLoading","_searchText","apiRequest","res","indexWithError","callAPIRequest","_nextOffset","loadAppend","searchText","minLength","popupRef","API","useAPI","localItems","itemAll","itemSelected","itemsForShow","searchStringInvertKeyboard","utils_keyboard","searchString","isSelected","selectItem","newModel","forms","getPopup","_d","nextIndex","deleteItemById","id","isOpened","onScrollContentList","e","el"],"mappings":"u3BAQA,MAAAA,EAAAC,EAQAC,EAAAC,+CAMAC,EAAAC,EAAA,SAAA,IAAAC,EAAA,QAAAN,EAAA,YAAA,EAEAO,EAAAF,EAAA,SAAA,IACCL,EAAA,iBAAA,GAEAA,EAAA,mBAAA,CAAAI,EAAA,MAAAJ,EAAA,UAEAA,EAAA,UAAa,EAGdQ,EAAAC,GAAA,CACCP,EAAA,SAAAO,CAAA,EAEAH,EAAA,MAAAN,EAAA,YAAyB,2CAKxBE,EAAA,OAAA,EAEA,OAGDI,EAAA,MAAAN,EAAA,YAAyB,8CAIsB,82EC3ChD,MAAAA,EAAAC,2DAKCS,EAAA,MAAAV,EAAA,UAAgC,CAAA,EAGjC,MAAAE,EAAAC,uCAGkD,ymCCRlDH,EAAAC,EAMAU,EAAAN,EAAA,IAAA,IAAA,EAEAA,EAAA,MAAAO,EAAA,IAAA,gBACCC,EAAAb,EAAA,cAAA,MAAAa,EAAA,KAAAC,GAAAA,EAAA,QAAAF,EAAA,SACCA,EAAA,QAAAG,GAAAC,EAAAhB,EAAA,cAAA,YAAAgB,EAAA,KAAA,YAAAD,EAAA,QAAA,uGAGuE,EAAA,CAAA,UAAA,EAAA,CAAA,gzCCbxE,MAAAE,EAAAZ,EAAA,IAAA,CAAA,CAAA,EAKAa,EAAAb,EAAA,IAAA,EAAA,EAEA,IAAAc,EAAA,0BAICC,EAAA,OAAA,MAAA,uBASA,GAAA,CAAAA,EAAA,sBAQCA,EAAA,QAAA,IAAA,4DAcD,GAJAF,EAAA,MAAA,GACAG,EAAA,MAAAD,EAAA,KAAA,EACAF,EAAA,MAAA,GAEAG,EAAA,OAAA,6EAKC,qEAID,GAAAC,IAAA,GAAA,CACC,QAAA,KAAA,YAAAA,CAAA,mBAAA,EAEA,mCAOM,cAOP,GAAA,CAAAF,EAAA,OAEAA,EAAA,OAAA,OAAA,EACAA,EAAA,OAAA,OAAAD,EAEA,MAAAE,EAAA,MAAAE,EAAA,EACAF,IAEAG,EAAAH,EAAA,WAEAJ,EAAA,MAAAI,EAAA,OAAkB,cAalB,GANA,CAAAD,GAGA,CAAAI,GAGAN,EAAA,MAAA,OAEAE,EAAA,OAAA,OAAAI,EACAJ,EAAA,OAAA,OAAAD,EAEA,MAAAE,EAAA,MAAAE,EAAA,EACAF,IAEAG,EAAAH,EAAA,WAEAJ,EAAA,MAAAA,EAAA,MAAA,OAAAI,EAAA,MAAA,EAA2C,4BA+B5C,MAAA,CAAO,MAAAJ,EACN,UAAAC,EACA,WAAAO,EACA,gCAnBAL,IAEAM,EAAA,OAAAC,0CAWA,CAOA,6uCCtIF,MAAA3B,EAAAC,+BAcAyB,EAAArB,EAAA,IAAA,EAAA,oBAIO,EAMPuB,EAAAvB,EAAA,IAAA,IAAA,eAMC,OAAAQ,EAAAe,EAAA,QAAA,YAAAf,EAAA,KAAuB,+CAKvBR,EAAA,wBACa,IAAA,CAEXO,EAAA,MAAAZ,EAAA,YAAA,CAAA,EAAA,CAAA,GAAA,KAAA,KAAA,EAAA,GACD,CAAA,UAAA,EAAA,CACkB,EAIpB,MAAA6B,EAAAC,EAAA9B,EAAA,WAAAA,EAAA,UAAAA,EAAA,QAAA,EAKA+B,EAAA1B,EAAA,SAAA,IAAA,CACC,MAAAY,EAAA,CAAA,0CAGCA,EAAA,KAAAe,CAAA,EAGDhC,EAAA,MAAA,QAAAc,GAAAG,EAAA,KAAA,CAAA,GAAAH,CAAA,CAAA,CAAA,GAEO,CAAA,+IAgBNF,EAAA,MAAA,KAAAqB,GAAAA,EAAA,KAAAnB,EAAA,EAAA,oBASFoB,EAAA7B,EAAA,SAAA,IAAA,+BAEC8B,EAAAC,EAAA,qBAAAC,CAAA,EAEA,IAAApB,EAAA,CAAA,0HAWGA,EAAA,QAAAH,CAAA,EAEAG,EAAA,KAAAH,CAAA,EAEF,CAAA,2BAKDd,EAAA,sBAAA0B,EAAA,QAAA,CAAAT,EAAA,QAAAA,EAAA,CAAA,EAAA,KAAA,YAAA,IAAAoB,oBAMM,KAAAX,EAAA,KACa,CAAA,EAInB1B,EAAA,cACCiB,EAAAA,EAAA,OAAAH,GAAA,CAAAwB,EAAAxB,CAAA,CAAA,IAGM,CAAA,EAQRyB,EAAA,MAAAzB,GAAA,SACC,GAAAd,EAAA,YAAA,CAGC,4BAAAsC,EAAAxB,CAAA,EACC,2CAKDF,EAAA,MAAA4B,EAEAC,EAAA,KAAA,MAAA,UACC5B,EAAA6B,EAAA,IAAA,MAAA7B,EAAA,qCAGCA,EAAA6B,EAAA,IAAA,MAAA7B,EAAA,kBACA8B,GAAA5B,GAAAC,EAAA0B,EAAA,IAAA,YAAA1B,EAAA,gBAAA,YAAAD,EAAA,cAAA,WAAA,MAAA4B,EAAA,QAGAjB,EAAA,QACCQ,EAAA,MAAA,SACCR,EAAA,MAAA,GACAG,EAAA,MAAA,MAAA,CAAA,GAEF,CAAA,CAEF,MAGAH,EAAA,QACCA,EAAA,MAAA,GACAG,EAAA,MAAA,MAAA,CAAA,GAGD,KAAA,UAAAf,CAAA,IAAA,KAAA,UAAAF,EAAA,KAAA,qBAIAI,EAAA0B,EAAA,IAAA,MAAA1B,EAAA,OACD,qCASC,MAAA4B,2CAAA,GAAAb,EAAA,MAAA,OACAnB,EAAA,MAAA,CAAA,GAAAmB,EAAA,MAAAa,CAAA,CAAA,EACD,EAODC,EAAA,MAAAC,GAAA,0BAEElC,EAAA,MAAAA,EAAA,MAAA,OAAAE,GAAAA,EAAA,KAAAgC,CAAA,yBAGCjC,EAAA6B,EAAA,IAAA,MAAA7B,EAAA,gBAA2B,CAAA,EAE7B,EAGDkC,EAAA1C,EAAA,IAAA,EAAA,EAEAL,EAAA,aACCK,EAAA,MAAA0C,EAAA,IAAA,CACCA,EAAA,yCAGA,CAAA,EAID1C,EAAA,MAAAqB,EAAA,IAAAG,EAAA,qBAAAH,EAAA,KAAA,CAAA,GAGD,MAAAsB,EAAAC,GAAA,CACC,MAAAC,EAAAD,EAAA,OAEAC,EAAA,WAAAA,EAAA,aAAAA,EAAA,cAAA,IACCrB,EAAA,WAAA,CACD"}
|
|
1
|
+
{"version":3,"file":"formsExt.amd.js","sources":["../../src/components/formsExt/editArea/editArea.vue","../../src/components/formsExt/editInput/editInput.vue","../../src/components/formsExt/radioGroup/radioGroup.vue","../../src/components/formsExt/selector2/api.ts","../../src/components/formsExt/selector2/selector2.vue"],"sourcesContent":["<script setup lang=\"ts\">\r\nimport { ref, computed } from 'vue';\r\nimport Button from '@/components/forms/button/button.vue';\r\nimport type { Props, Emits } from './editArea';\r\nimport Textarea from '@/components/forms/textarea/textarea.vue';\r\n\r\n// TODO: добавить переменную top-forms-fixed-height и использовать ее при добавлении отступов у страницы\r\n\r\nconst props = withDefaults(defineProps<Props>(), {\r\n\tdefaultValue: '',\r\n\tcancelText: 'Cancel',\r\n\tsubmitText: 'Send',\r\n\tcloseText: 'Close',\r\n\texpandable: true\r\n});\r\n\r\nconst emit = defineEmits<Emits>();\r\n\r\nconst localValue = ref(props.defaultValue);\r\n\r\nconst isFocused = ref(props.isFocused);\r\n\r\nconst isChanged = computed(() => localValue.value !== props.defaultValue);\r\n\r\nconst cancelBtnText = computed(() => {\r\n\tif (props.attachToKeyboard) return '';\r\n\r\n\tif (props.forceShowCloseBtn && !isChanged.value) return props.closeText;\r\n\r\n\treturn props.cancelText;\r\n});\r\n\r\nconst submit = (value: string) => {\r\n\temit('submit', value);\r\n\r\n\tlocalValue.value = props.defaultValue;\r\n};\r\n\r\nconst cancel = () => {\r\n\tif (props.forceShowCloseBtn && !isChanged.value) {\r\n\t\temit('close');\r\n\r\n\t\treturn;\r\n\t}\r\n\r\n\tlocalValue.value = props.defaultValue;\r\n};\r\n\r\nconst clickOnTitle = () => {\r\n\tif (props.attachToKeyboard) emit('clickOnTitle');\r\n};\r\n</script>\r\n\r\n<template>\r\n\t<div\r\n\t\t:class=\"{\r\n\t\t\t'top-editArea': true,\r\n\t\t\t'top-editArea-attachedToKeyboard': attachToKeyboard,\r\n\t\t}\"\r\n\t>\r\n\t\t<div\r\n\t\t\tv-if=\"title\"\r\n\t\t\tclass=\"top-editArea_title\"\r\n\t\t\t@click=\"clickOnTitle()\"\r\n\t\t>\r\n\t\t\t{{ title }}\r\n\t\t</div>\r\n\r\n\t\t<div\r\n\t\t\t:class=\"{\r\n\t\t\t\t'top-editArea_form': true,\r\n\t\t\t\t'top-error': isError,\r\n\t\t\t\t'top-editArea_form-focus': isFocused,\r\n\t\t\t}\"\r\n\t\t>\r\n\t\t\t<Textarea\r\n\t\t\t\tv-focus=\"isFocused\"\r\n\t\t\t\tv-model=\"localValue\"\r\n\t\t\t\t:name=\"name\"\r\n\t\t\t\t:placeholder=\"placeholder\"\r\n\t\t\t\t:rows=\"rows\"\r\n\t\t\t\t:minHeight=\"minHeight\"\r\n\t\t\t\t:expandable=\"expandable\"\r\n\t\t\t\t:disabled=\"disabled\"\r\n\t\t\t\t:readonly=\"readonly\"\r\n\t\t\t\t:isError=\"isError\"\r\n\t\t\t\t:hint=\"hint\"\r\n\t\t\t\tclass=\"top-editArea_element\"\r\n\t\t\t\t@focus=\"() => isFocused = true\"\r\n\t\t\t\t@blur=\"() => isFocused = false\"\r\n\t\t\t\t@keyup.esc=\"cancel\"\r\n\t\t\t\t@keyup.ctrl.enter=\"submit(localValue)\"\r\n\t\t\t/>\r\n\r\n\t\t\t<div class=\"top-editArea_footer\">\r\n\t\t\t\t<Button\r\n\t\t\t\t\tv-if=\"isChanged || forceShowCloseBtn\"\r\n\t\t\t\t\tclass=\"top-editArea_button\"\r\n\t\t\t\t\tcolor=\"theme\"\r\n\t\t\t\t\t:icon=\"attachToKeyboard ? '': ''\"\r\n\t\t\t\t\t@click=\"cancel\"\r\n\t\t\t\t>\r\n\t\t\t\t\t{{ cancelBtnText }}\r\n\t\t\t\t</Button>\r\n\r\n\t\t\t\t<Button\r\n\t\t\t\t\tclass=\"top-editArea_button\"\r\n\t\t\t\t\tv-if=\"isChanged\"\r\n\t\t\t\t\t:icon=\"attachToKeyboard ? '': ''\"\r\n\t\t\t\t\t@click=\"submit(localValue)\"\r\n\t\t\t\t>\r\n\t\t\t\t\t{{ attachToKeyboard ? '' : submitText }}\r\n\t\t\t\t</Button>\r\n\t\t\t</div>\r\n\t\t</div>\r\n\t</div>\r\n</template>\r\n\r\n<style module>\r\n.top-editArea {\r\n\tdisplay: flex;\r\n\tflex-direction: column;\r\n\tgap: 6px;\r\n}\r\n\r\n.top-editArea_title {\r\n\tfont-size: 12px;\r\n}\r\n\r\n.top-editArea_form {\r\n\tflex-direction: column;\r\n}\r\n\r\n.top-editArea_form-focus {\r\n\tborder-color: var(--color-primary);\r\n}\r\n\r\n.top-editArea_form:hover {\r\n\tborder-color: var(--top-forms-border-color-hover);\r\n}\r\n\r\n.top-editArea_form.top-focus {\r\n\tborder-color: var(--color-line-primary-1);\r\n\toutline: none;\r\n}\r\n\r\n/* textarea в EditArea */\r\n.top-textarea {\r\n\twidth: 100%;\r\n}\r\n\r\n.top-editArea_element.top-textarea_textarea {\r\n\tborder: none;\r\n\toutline: none;\r\n\tanimation: none;\r\n}\r\n\r\n/* footer */\r\n.top-editArea_footer {\r\n\tpadding: var(--top-forms-padding);\r\n\tdisplay: flex;\r\n\tmin-height: 32px;\r\n\tjustify-content: flex-end;\r\n\tgap: var(--top-forms-padding);\r\n}\r\n\r\n/* attachedToKeyboard */\r\n.top-editArea-attachedToKeyboard {\r\n\tbackground: var(--top-forms-background-color);\r\n\tmargin-bottom: env(keyboard-inset-height, 0);\r\n\tposition: fixed;\r\n\tbottom: 0;\r\n\tright: 0;\r\n\tleft: 0;\r\n\tz-index: 2;\r\n\tgap: 0;\r\n}\r\n\r\n.top-editArea-attachedToKeyboard .top-editArea_form {\r\n\tborder-radius: 0;\r\n\tborder: none;\r\n\tborder-top: 1px solid var(--top-forms-border-color);\r\n}\r\n\r\n.top-editArea-attachedToKeyboard .top-editArea_title {\r\n\tcursor: pointer;\r\n\tborder-top: 1px solid var(--color-line-2-opacity);\r\n\tpadding: var(--top-forms-padding);\r\n}\r\n\r\n.top-editArea-attachedToKeyboard .top-editArea_footer > [data-top-icon] {\r\n\tborder-radius: 100%;\r\n}\r\n\r\n.top-editArea-attachedToKeyboard .top-button.top-editArea_button {\r\n\tmin-width: auto;\r\n\tpadding: 0;\r\n}\r\n</style>","<script setup lang=\"ts\">\r\nimport { ref, toRef, watch } from 'vue';\r\nimport type { Props, Emits } from './editInput';\r\nimport Input from '@/components/forms/input/input.vue';\r\nimport Button from '@/components/forms/button/button.vue';\r\n\r\nconst props = defineProps<Props>();\r\n\r\nconst intermediateValue = ref(props.modelValue);\r\n\r\nwatch(toRef(props.modelValue), () => {\r\n\tintermediateValue.value = props.modelValue;\r\n});\r\n\r\nconst emit = defineEmits<Emits>();\r\n\r\nconst submit = () => {\r\n\temit('update:modelValue', intermediateValue.value);\r\n};\r\n</script>\r\n\r\n<template>\r\n\t<div class=\"top-editInput\">\r\n\t\t<Input\r\n\t\t\t:=\"input\"\r\n\t\t\t@keydown.esc.capture.stop=\"intermediateValue = modelValue\"\r\n\t\t\t@keydown.enter.stop=\"submit\"\r\n\t\t\tv-model=\"intermediateValue\"\r\n\t\t/>\r\n\r\n\t\t<Button\r\n\t\t\tv-if=\"intermediateValue !== modelValue\"\r\n\t\t\ticon=\"\"\r\n\t\t\tstyling=\"soft\"\r\n\t\t\t:=\"button\"\r\n\t\t\t@click=\"submit\"\r\n\t\t>\r\n\t\t\t<!-- @slot Слот Button -->\r\n\t\t\t<slot></slot>\r\n\t\t</Button>\r\n\t</div>\r\n</template>\r\n\r\n<style module>\r\n.top-editInput {\r\n\twidth: 220px;\r\n\tflex-grow: 1;\r\n\tdisplay: flex;\r\n\talign-items: flex-end;\r\n\tgap: var(--top-gap-1);\r\n}\r\n\r\n.top-editInput .top-input {\r\n\twidth: unset;\r\n\tflex-grow: 1;\r\n}\r\n</style>","<script setup lang=\"ts\">\r\nimport type { Ref } from '@vue/reactivity';\r\nimport { ref, watch } from 'vue';\r\nimport type { Props, Emits } from './radioGroup';\r\n\r\nconst model = defineModel<string>({\r\n\trequired: true,\r\n});\r\n\r\nconst props = withDefaults(defineProps<Props>(), {\r\n\tsize: 's',\r\n});\r\n\r\nconst emit = defineEmits<Emits>();\r\n\r\nconst elRef: Ref<HTMLElement|null> = ref(null);\r\n\r\nwatch(model, () => {\r\n\tif (!props.radiosProps?.some(item => item.value === model.value)) {\r\n\t\tmodel.value = props.radiosProps?.[0]?.value ?? '';\r\n\t}\r\n\r\n\telRef.value?.querySelector('.radioGroup_item-selected')?.scrollIntoView();\r\n}, { immediate: true });\r\n\r\nconst uid = 'radioGroup-' + Math.random();\r\n</script>\r\n\r\n<template>\r\n\t<div\r\n\t\tref=\"elRef\"\r\n\t\t:class=\"{\r\n\t\t\t['top-radioGroup']: true,\r\n\t\t\t['top-scrollBarXHidding']: true,\r\n\t\t\t['top-size_' + size]: !!size,\r\n\t\t\t['top-error']: isError,\r\n\t\t}\"\r\n\t>\r\n\t\t<label\r\n\t\t\tv-for=\"item of radiosProps\"\r\n\t\t\t:class=\"{\r\n\t\t\t\t['top-radioGroup_item-selected']: item.value === model,\r\n\t\t\t\t['top-radioGroup_item']: true,\r\n\t\t\t\t['top-forms-focusable']: true,\r\n\t\t\t\t['top-disabled']: item.disabled,\r\n\t\t\t}\"\r\n\t\t\t:data-top-icon=\"item.icon\"\r\n\t\t\t@click=\"model = item.value\"\r\n\t\t>\r\n\t\t\t{{ item.title }}\r\n\r\n\t\t\t<span\r\n\t\t\t\tv-if=\"showIndicator\"\r\n\t\t\t\tclass=\"top-radioGroup_circle\"\r\n\t\t\t></span>\r\n\r\n\t\t\t<!-- Для нативной навигации -->\r\n\t\t\t<input\r\n\t\t\t\tv-model=\"model\"\r\n\t\t\t\t:name=\"uid\"\r\n\t\t\t\ttype=\"radio\"\r\n\t\t\t\t:class=\"{\r\n\t\t\t\t\t['top-unvisible']: true,\r\n\t\t\t\t}\"\r\n\t\t\t\t:value=\"item.value\"\r\n\t\t\t\t:disabled=\"item.disabled\"\r\n\t\t\t/>\r\n\t\t</label>\r\n\t</div>\r\n</template>\r\n\r\n<style module>\r\n@import \"./styles/top-scrollBar.css\";\r\n\r\n.top-radioGroup {\r\n\tuser-select: none;\r\n\tbox-sizing: border-box;\r\n\tborder-radius: 8px;\r\n\tbackground-color: var(--color-bg-2);\r\n\theight: var(--top-forms-base-height);\r\n\tpadding: 2px;\r\n\tgap: 2px;\r\n\tdisplay: flex;\r\n\talign-items: flex-start;\r\n}\r\n\r\n.top-radioGroup_item {\r\n\tcolor: var(--color-text-2);\r\n\tcursor: pointer;\r\n\tbox-sizing: border-box;\r\n\tborder-radius: 6px;\r\n\theight: calc(var(--top-forms-base-height) - 4px);\r\n\tpadding: 0 16px;\r\n\tfont-weight: 400;\r\n\twhite-space: nowrap;\r\n\tdisplay: flex;\r\n\talign-items: center;\r\n\tjustify-content: center;\r\n\tflex-grow: 1;\r\n\tgap: 4px;\r\n}\r\n\r\n.top-radioGroup_item:hover {\r\n\tbackground-color: var(--color-bg-3);\r\n\tbox-shadow: 0px 4px 32px 0px rgba(4, 9, 84, 0.10), 0px 0px 4px 0px rgba(4, 9, 84, 0.08);\r\n}\r\n\r\n/* selected */\r\n.top-radioGroup_item-selected {\r\n\tcolor: var(--color-text-1);\r\n\tpointer-events: none;\r\n\tbackground-color: var(--color-bg-secondary-1);\r\n\tbox-shadow: 0px 4px 32px 0px rgba(4, 9, 84, 0.10), 0px 0px 4px 0px rgba(4, 9, 84, 0.08);\r\n}\r\n\r\n/* circle */\r\n.top-radioGroup_circle {\r\n\tcontent: \"\";\r\n\tbox-sizing: border-box;\r\n\tborder: 1px solid var(--color-line-3-opacity);\r\n\tborder-radius: 50%;\r\n\tpadding: 3px;\r\n\tmargin-left: auto;\r\n\twidth: calc(var(--top-forms-option-height) - 3px * 2);\r\n\theight: calc(var(--top-forms-option-height) - 3px * 2);\r\n}\r\n\r\n.top-radioGroup_item:hover .top-radioGroup_circle:before {\r\n\tborder-color: var(--color-line-primary-1);\r\n}\r\n\r\n/* circle selected */\r\n.top-radioGroup_item-selected .top-radioGroup_circle {\r\n\tborder-color: var(--color-line-primary-1);\r\n\tborder-width: 5px;\r\n}\r\n\r\n.top-radioGroup_item-selected:hover .top-radioGroup_circle {\r\n\tborder-color: var(--color-line-primary-2);\r\n}\r\n\r\n/* top-disabled */\r\n.top-radioGroup_item.top-disabled {\r\n\t--top-icon-color: var(--color-text-3);\r\n\r\n\tcolor: var(--color-text-3);\r\n}\r\n\r\n.top-radioGroup_item.top-disabled .top-radioGroup_circle {\r\n\tborder-color: var(--color-theme-400);\r\n\tbackground-color: var(--color-theme-100);\r\n}\r\n\r\n/* top-error */\r\n.top-radioGroup.top-error .top-radioGroup_item:not(.top-disabled) .top-radioGroup_circle {\r\n\tborder-color: var(--color-negative);\r\n}\r\n</style>","import type { Ref } from 'vue';\r\nimport { ref } from 'vue';\r\nimport { debounce } from 'lodash';\r\nimport type { Item, Props } from './selector2';\r\n\r\nexport const useAPI = (apiRequest: Props['apiRequest'], minLength: number, useCache: Props['useCache']) => {\r\n\t/**\r\n\t * Список, полученный через API\r\n\t */\r\n\tconst items: Ref<Array<Item>> = ref([]);\r\n\r\n\t/**\r\n\t * Флаг - идет загрузка\r\n\t */\r\n\tconst isLoading = ref(false);\r\n\r\n\tlet _searchText = '';\r\n\tlet _nextOffset: number | undefined;\r\n\r\n\tif (apiRequest && !apiRequest.params.limit) {\r\n\t\tapiRequest.params.limit = 100;\r\n\t}\r\n\r\n\t/**\r\n\t * Выполнить обращение к API\r\n\t *\r\n\t * При ошибке вернет undefined\r\n\t */\r\n\tconst callAPIRequest = async (): Promise<{ nextOffset?: number, result: Array<Item> } | undefined> => {\r\n\t\tif (!apiRequest) return;\r\n\r\n\t\tlet res;\r\n\t\tlet cacheKey;\r\n\r\n\t\tif (useCache) {\r\n\t\t\t// кэш для полученных ответов через apiRequest\r\n\t\t\t// общий для всех компонентов, использующих apiRequest\r\n\t\t\tapiRequest.cache ??= new Map();\r\n\r\n\t\t\tcacheKey = JSON.stringify(apiRequest.params);\r\n\t\t\tres = apiRequest.cache.get(cacheKey);\r\n\r\n\t\t\tif (res) {\r\n\t\t\t\treturn res;\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\tisLoading.value = true;\r\n\t\tres = await apiRequest.call();\r\n\t\tisLoading.value = false;\r\n\r\n\t\tif (res.errors) return;\r\n\r\n\t\tif (!Array.isArray(res.result)) {\r\n\t\t\tconsole.warn(`В result ожидался массив`);\r\n\r\n\t\t\treturn;\r\n\t\t}\r\n\r\n\t\tconst indexWithError = (res.result as Array<Item | any>).findIndex(item => item.id === undefined || item.name === undefined);\r\n\t\tif (indexWithError !== -1) {\r\n\t\t\tconsole.warn(`В result[${indexWithError}] нет id или name`);\r\n\r\n\t\t\treturn;\r\n\t\t}\r\n\r\n\t\tif (useCache) {\r\n\t\t\tapiRequest.cache.set(cacheKey as string, res);\r\n\t\t}\r\n\r\n\t\treturn res;\r\n\t};\r\n\r\n\t/**\r\n\t * Загрузить items\r\n\t */\r\n\tconst load = async () => {\r\n\t\tif (!apiRequest) return;\r\n\r\n\t\tapiRequest.params.offset = 0;\r\n\t\tapiRequest.params.search = _searchText;\r\n\r\n\t\tconst res = await callAPIRequest();\r\n\t\tif (!res) return;\r\n\r\n\t\t_nextOffset = res.nextOffset;\r\n\r\n\t\titems.value = res.result;\r\n\t};\r\n\r\n\t/**\r\n\t * Загрузить следующую страницу items\r\n\t */\r\n\tconst loadAppend = async () => {\r\n\t\tif (!apiRequest) return;\r\n\r\n\t\t// данных о следующих страницах не обнаружено\r\n\t\tif (!_nextOffset) return;\r\n\r\n\t\t// дозагружать нельзя, если не завершена предыдущшая загрузка\r\n\t\tif (isLoading.value) return;\r\n\r\n\t\tapiRequest.params.offset = _nextOffset;\r\n\t\tapiRequest.params.search = _searchText;\r\n\r\n\t\tconst res = await callAPIRequest();\r\n\t\tif (!res) return;\r\n\r\n\t\t_nextOffset = res.nextOffset;\r\n\r\n\t\titems.value = items.value.concat(res.result);\r\n\t};\r\n\r\n\tconst loadDebounce = debounce(() => load(), 200);\r\n\r\n\t/**\r\n\t * Выполнить поиск по указанному тексту\r\n\t *\r\n\t * Если длина текста меньше minLength, поиск не будет проивзеден\r\n\t *\r\n\t * Если текст не изменился, поиск не будет проивзеден\r\n\t * @param searchText - текст поиска\r\n\t * @param useDebounce - отложенное выполнение поиска\r\n\t */\r\n\tconst setSearchTextAndLoad = (searchText: string, useDebounce = true) => {\r\n\t\tif (!apiRequest) return;\r\n\r\n\t\tif (searchText.length < minLength) return;\r\n\r\n\t\t// условия поиска не поменялись, данные загружены\r\n\t\tif (searchText === _searchText && items.value.length) return;\r\n\r\n\t\t_searchText = searchText;\r\n\r\n\t\tif (useDebounce) {\r\n\t\t\tloadDebounce();\r\n\t\t} else {\r\n\t\t\tvoid load();\r\n\t\t}\r\n\t};\r\n\r\n\treturn {\r\n\t\titems,\r\n\t\tisLoading,\r\n\t\tloadAppend,\r\n\t\tsetSearchTextAndLoad,\r\n\t};\r\n};","<script setup lang=\"ts\">\r\nimport type { Ref, ComputedRef, ModelRef, ComponentInstance } from 'vue';\r\nimport { computed, ref, watch } from 'vue';\r\nimport Core from '@/core/core/core';\r\nimport { invertKeyboardLayout } from '@/core/utils/keyboard';\r\nimport { Popup, PopupListItem, PopupWidgetInput } from '@/components/popup/popup';\r\nimport type PopupClass from '@/components/popup/lib/popup';\r\nimport type { Item, Props, Slots } from './selector2';\r\nimport { useAPI } from './api';\r\nimport Selector2ItemMulti from './itemMulti.vue';\r\n\r\nconst props = withDefaults(defineProps<Props>(), {\r\n\titems: () => [] as Array<Item>,\r\n\tsize: 's',\r\n\tminLength: 0,\r\n\tshowSelectedInInput: true,\r\n});\r\n\r\nconst model = defineModel<Props['modelValue']>() as ModelRef<Props['modelValue']>;\r\n\r\ndefineSlots<Slots>();\r\n\r\n/**\r\n * Текст поиска по результатам\r\n */\r\nconst searchText = ref('');\r\n\r\nconst itemAll = {\r\n\tid: 0,\r\n\tname: 'Все',\r\n};\r\n\r\n/**\r\n * Экземпляр компонента Popup\r\n */\r\nconst popupRef: Ref<ComponentInstance<typeof Popup> | null> = ref(null);\r\n\r\n/**\r\n * Получить доступ к объекту popup\r\n */\r\nconst getPopup = (): PopupClass | undefined => {\r\n\treturn popupRef.value?.popup;\r\n};\r\n\r\n// для storybook\r\nif ((window as any).__STORYBOOK_PREVIEW__ && !props.modelValue) {\r\n\twatch(\r\n\t\t() => props.multiselect,\r\n\t\t() => {\r\n\t\t\tmodel.value = props.multiselect ? [] : { id: null, name: '' };\r\n\t\t},\r\n\t\t{ immediate: true },\r\n\t);\r\n}\r\n\r\nconst API = useAPI(props.apiRequest, props.minLength, props.useCache);\r\n\r\n/**\r\n * Варианты выбора: props.items + \"Выбрать все\"\r\n */\r\nconst localItems: ComputedRef<Array<Item>> = computed(() => {\r\n\tconst items: Array<Item> = [];\r\n\r\n\tif (!props.multiselect && props.appendAllValue) {\r\n\t\titems.push(itemAll);\r\n\t}\r\n\r\n\tprops.items.forEach(item => items.push({ ...item }));\r\n\r\n\treturn items;\r\n});\r\n\r\n/**\r\n * Проверить, что элемент выбран\r\n */\r\nconst isSelected = (item: Item, checkNameForNullId = true) => {\r\n\tif (checkNameForNullId && item.id === null) {\r\n\t\tif (Array.isArray(model.value)) {\r\n\t\t\treturn model.value.some(itemSelected => itemSelected.id === item.id && itemSelected.name === item.name);\r\n\t\t} else {\r\n\t\t\treturn item.name === model.value.name;\r\n\t\t}\r\n\t}\r\n\r\n\tif (Array.isArray(model.value)) {\r\n\t\treturn model.value.some(itemSelected => itemSelected.id === item.id);\r\n\t} else {\r\n\t\treturn item.id === model.value.id;\r\n\t}\r\n};\r\n\r\n/**\r\n * Варианты выбора, которые выводятся\r\n */\r\nconst itemsForShow = computed(() => {\r\n\tconst searchString = searchText.value.toLowerCase();\r\n\tconst searchStringInvertKeyboard = invertKeyboardLayout(searchString);\r\n\r\n\tlet items: typeof localItems.value = [];\r\n\r\n\tlocalItems.value.forEach((item) => {\r\n\t\tconst itemName = item.name.toLowerCase();\r\n\r\n\t\tif (\r\n\t\t\titem.id === Number(searchString) ||\r\n\t\t\titemName.includes(searchString) ||\r\n\t\t\titemName.includes(searchStringInvertKeyboard)\r\n\t\t) {\r\n\t\t\tif (itemName === searchString || itemName === searchStringInvertKeyboard) {\r\n\t\t\t\titems.unshift(item);\r\n\t\t\t} else {\r\n\t\t\t\titems.push(item);\r\n\t\t\t}\r\n\t\t}\r\n\t});\r\n\r\n\titems.push(...API.items.value);\r\n\r\n\tif (\r\n\t\tprops.appendSearchToResult &&\r\n\t\t!!searchText.value &&\r\n\t\t(!items.length || items[0].name.toLowerCase() !== searchString)\r\n\t) {\r\n\t\titems.push({\r\n\t\t\tid: null,\r\n\t\t\tname: searchText.value,\r\n\t\t});\r\n\t}\r\n\r\n\tif (props.multiselect) {\r\n\t\titems = items.filter(item => !isSelected(item));\r\n\t}\r\n\r\n\treturn items;\r\n});\r\n\r\n/**\r\n * Выбрать значение\r\n *\r\n * Управляет закрытием окна\r\n */\r\nconst selectItem = async (item: Item) => {\r\n\tif (props.multiselect) {\r\n\t\tif (!Array.isArray(model.value)) return;\r\n\r\n\t\tif (isSelected(item)) {\r\n\t\t\treturn;\r\n\t\t}\r\n\r\n\t\tconst newModel = [...model.value];\r\n\t\tnewModel.push({ ...item });\r\n\t\tmodel.value = newModel;\r\n\r\n\t\tif (Core.state.isMobile) {\r\n\t\t\tgetPopup()?.close();\r\n\t\t} else {\r\n\t\t\tsetTimeout(() => {\r\n\t\t\t\tgetPopup()?.recalcPosition();\r\n\t\t\t\tgetPopup()?.elPopupWidget?.querySelector('input')?.focus();\r\n\r\n\t\t\t\t// сбросить введенный текст, только если больше не найдено результатов\r\n\t\t\t\tif (searchText.value) {\r\n\t\t\t\t\tif (!itemsForShow.value.length) {\r\n\t\t\t\t\t\tsearchText.value = '';\r\n\t\t\t\t\t\tAPI.items.value = [];\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t});\r\n\t\t}\r\n\t} else {\r\n\t\t// сбросить введенный текст\r\n\t\tif (searchText.value) {\r\n\t\t\tsearchText.value = '';\r\n\t\t\tAPI.items.value = [];\r\n\t\t}\r\n\r\n\t\tif (JSON.stringify(item) !== JSON.stringify(model.value)) {\r\n\t\t\tmodel.value = { ...item };\r\n\t\t}\r\n\r\n\t\tgetPopup()?.close();\r\n\t}\r\n};\r\n\r\n/**\r\n * Выбрать следующее значение\r\n */\r\nconst selectNextItem = () => {\r\n\tif (!Array.isArray(model.value)) {\r\n\t\tconst currentIndex = localItems.value.findIndex(item => item.id === (model.value as Item).id);\r\n\t\tconst nextIndex = (currentIndex + 1) % localItems.value.length;\r\n\t\tmodel.value = { ...localItems.value[nextIndex] };\r\n\t}\r\n};\r\n\r\n/**\r\n * Удалить выбранное значение по id\r\n * @param id\r\n */\r\nconst deleteItemById = async (id: Item['id']) => {\r\n\tif (Array.isArray(model.value)) {\r\n\t\tmodel.value = model.value.filter(item => item.id !== id);\r\n\r\n\t\tsetTimeout(() => {\r\n\t\t\tgetPopup()?.recalcPosition();\r\n\t\t});\r\n\t}\r\n};\r\n\r\nconst isOpened = ref(false); // флаг попап открыт\r\n\r\nif (props.apiRequest) {\r\n\twatch(isOpened, () => {\r\n\t\tif (isOpened.value) {\r\n\t\t\t// при открытии сразу выполнить поиск\r\n\t\t\tAPI.setSearchTextAndLoad(searchText.value, false);\r\n\t\t}\r\n\t});\r\n\r\n\t// отложенный поиск при вводе текста\r\n\twatch(searchText, () => API.setSearchTextAndLoad(searchText.value));\r\n}\r\n\r\nconst onScrollContentList = (e: Event) => {\r\n\tconst el = e.target as HTMLElement;\r\n\r\n\tif (el.scrollTop / (el.scrollHeight - el.offsetHeight) > 0.8) {\r\n\t\tAPI.loadAppend();\r\n\t}\r\n};\r\n</script>\r\n\r\n<template>\r\n\t<Popup\r\n\t\tref=\"popupRef\"\r\n\t\t@open=\"isOpened = true\"\r\n\t\t@close=\"isOpened = false\"\r\n\t\t@scrollContentList=\"apiRequest ? onScrollContentList($event) : undefined\"\r\n\t\t:notch=\"false\"\r\n\t\t:transitionDuration=\"0\"\r\n\t>\r\n\t\t<template #opener>\r\n\t\t\t<div\r\n\t\t\t\t:class=\"{\r\n\t\t\t\t\t'top-selector2' : true,\r\n\t\t\t\t\t'top-selector2-multiselect': multiselect,\r\n\t\t\t\t\t['top-size_' + size]: true,\r\n\t\t\t\t\t['top-disabled']: disabled,\r\n\t\t\t\t\t['top-forms-focusable']: !disabled,\r\n\t\t\t\t\t['top-error']: isError,\r\n\t\t\t\t}\"\r\n\t\t\t>\r\n\t\t\t\t<template v-if=\"multiselect\">\r\n\t\t\t\t\t<div class=\"top-selector2_activeItems\">\r\n\t\t\t\t\t\t<Selector2ItemMulti\r\n\t\t\t\t\t\t\tv-for=\"item of model as Array<Item>\"\r\n\t\t\t\t\t\t\t:id=\"item.id\"\r\n\t\t\t\t\t\t\t:name=\"item.name\"\r\n\t\t\t\t\t\t\t@delete=\"deleteItemById\"\r\n\t\t\t\t\t\t/>\r\n\t\t\t\t\t</div>\r\n\t\t\t\t</template>\r\n\r\n\t\t\t\t<span v-if=\"!multiselect\" class=\"top-selector2_activeName top-ellipsis\">\r\n\t\t\t\t\t{{ !Array.isArray(model) ? model.name : '' }}\r\n\t\t\t\t</span>\r\n\r\n\t\t\t\t<span\r\n\t\t\t\t\tv-if=\"addChanger && !multiselect && localItems.length > 1 && !disabled\"\r\n\t\t\t\t\tclass=\"top-changer top-changer-selector\"\r\n\t\t\t\t\t@click.stop=\"selectNextItem\"\r\n\t\t\t\t></span>\r\n\t\t\t</div>\r\n\t\t</template>\r\n\r\n\t\t<template #widget>\r\n\t\t\t<PopupWidgetInput\r\n\t\t\t\ttitle=\"Поиск\"\r\n\t\t\t\ticon=\"\"\r\n\t\t\t\tv-model=\"searchText\"\r\n\t\t\t\t:isLoading=\"API.isLoading.value\"\r\n\t\t\t\t:placeholder=\"!Array.isArray(model) && !multiselect && showSelectedInInput ? model.name : placeholder\"\r\n\t\t\t/>\r\n\t\t</template>\r\n\r\n\t\t<template #contentList>\r\n\t\t\t<PopupListItem\r\n\t\t\t\tv-for=\"item of itemsForShow\"\r\n\t\t\t\t:class=\"{\r\n\t\t\t\t\t'top-active': !Array.isArray(model) && !multiselect && model.name === item.name\r\n\t\t\t\t}\"\r\n\t\t\t\t:key=\"item.id ?? undefined\"\r\n\t\t\t\t@click.stop=\"selectItem(item)\"\r\n\t\t\t>\r\n\t\t\t\t<slot\r\n\t\t\t\t\tv-if=\"$slots.item\"\r\n\t\t\t\t\tname=\"item\"\r\n\t\t\t\t\t:item=\"item\"\r\n\t\t\t\t></slot>\r\n\r\n\t\t\t\t<template\r\n\t\t\t\t\tv-else\r\n\t\t\t\t>\r\n\t\t\t\t\t{{ item.name }}\r\n\t\t\t\t</template>\r\n\t\t\t</PopupListItem>\r\n\r\n\t\t\t<PopupListItem\r\n\t\t\t\tv-if=\"!itemsForShow.length\"\r\n\t\t\t\ttype=\"regular\"\r\n\t\t\t>\r\n\t\t\t\tНет результатов\r\n\t\t\t</PopupListItem>\r\n\t\t</template>\r\n\t</Popup>\r\n</template>\r\n\r\n<style module>\r\n.top-selector2 {\r\n\twidth: 180px;\r\n\tmin-height: var(--top-forms-base-height);\r\n\tbox-sizing: border-box;\r\n\tposition: relative;\r\n\tdisplay: flex;\r\n\toverflow: hidden;\r\n\tpadding: var(--top-padding-1) var(--top-forms-padding);\r\n\tcolor: var(--top-forms-placeholder-color);\r\n\r\n\tborder-radius: var(--top-radius-2);\r\n\tborder: 1px solid var(--top-forms-border-color);\r\n\tbackground: var(--top-forms-background-color);\r\n}\r\n\r\n.top-selector2-multiselect {\r\n\twidth: unset;\r\n\tmin-width: 180px;\r\n\tpadding: var(--top-padding-1);\r\n}\r\n\r\n.top-selector2.top-active {\r\n\t--top-forms-border-color: var(--top-forms-border-color-hover);\r\n\t--top-forms-background-color: var(--top-forms-background-color-hover);\r\n}\r\n\r\n.top-selector2_activeItems {\r\n\tdisplay: flex;\r\n\tflex-wrap: wrap;\r\n\tgap: var(--top-padding-1);\r\n\tmax-width: 100%;\r\n}\r\n\r\n.top-selector2_activeName {\r\n\twhite-space: nowrap;\r\n}\r\n\r\n.top-changer-selector {\r\n\ttransform: translateX(-16px);\r\n}\r\n</style>"],"names":["props","__props","emit","__emit","isChanged","vue","localValue","cancelBtnText","submit","value","intermediateValue","elRef","model","_a","item","_c","_b","items","isLoading","_searchText","apiRequest","res","indexWithError","callAPIRequest","_nextOffset","loadAppend","searchText","minLength","popupRef","API","useAPI","localItems","itemAll","itemSelected","itemsForShow","searchStringInvertKeyboard","utils_keyboard","searchString","isSelected","selectItem","newModel","forms","getPopup","_d","nextIndex","deleteItemById","id","isOpened","onScrollContentList","e","el"],"mappings":"u3BAQA,MAAAA,EAAAC,EAQAC,EAAAC,+CAMAC,EAAAC,EAAA,SAAA,IAAAC,EAAA,QAAAN,EAAA,YAAA,EAEAO,EAAAF,EAAA,SAAA,IACCL,EAAA,iBAAA,GAEAA,EAAA,mBAAA,CAAAI,EAAA,MAAAJ,EAAA,UAEAA,EAAA,UAAa,EAGdQ,EAAAC,GAAA,CACCP,EAAA,SAAAO,CAAA,EAEAH,EAAA,MAAAN,EAAA,YAAyB,2CAKxBE,EAAA,OAAA,EAEA,OAGDI,EAAA,MAAAN,EAAA,YAAyB,8CAIsB,s4EC3ChD,MAAAA,EAAAC,2DAKCS,EAAA,MAAAV,EAAA,UAAgC,CAAA,EAGjC,MAAAE,EAAAC,uCAGkD,ymCCRlDH,EAAAC,EAMAU,EAAAN,EAAA,IAAA,IAAA,EAEAA,EAAA,MAAAO,EAAA,IAAA,gBACCC,EAAAb,EAAA,cAAA,MAAAa,EAAA,KAAAC,GAAAA,EAAA,QAAAF,EAAA,SACCA,EAAA,QAAAG,GAAAC,EAAAhB,EAAA,cAAA,YAAAgB,EAAA,KAAA,YAAAD,EAAA,QAAA,uGAGuE,EAAA,CAAA,UAAA,EAAA,CAAA,gzCCbxE,MAAAE,EAAAZ,EAAA,IAAA,CAAA,CAAA,EAKAa,EAAAb,EAAA,IAAA,EAAA,EAEA,IAAAc,EAAA,0BAICC,EAAA,OAAA,MAAA,uBASA,GAAA,CAAAA,EAAA,sBAQCA,EAAA,QAAA,IAAA,4DAcD,GAJAF,EAAA,MAAA,GACAG,EAAA,MAAAD,EAAA,KAAA,EACAF,EAAA,MAAA,GAEAG,EAAA,OAAA,6EAKC,qEAID,GAAAC,IAAA,GAAA,CACC,QAAA,KAAA,YAAAA,CAAA,mBAAA,EAEA,mCAOM,cAOP,GAAA,CAAAF,EAAA,OAEAA,EAAA,OAAA,OAAA,EACAA,EAAA,OAAA,OAAAD,EAEA,MAAAE,EAAA,MAAAE,EAAA,EACAF,IAEAG,EAAAH,EAAA,WAEAJ,EAAA,MAAAI,EAAA,OAAkB,cAalB,GANA,CAAAD,GAGA,CAAAI,GAGAN,EAAA,MAAA,OAEAE,EAAA,OAAA,OAAAI,EACAJ,EAAA,OAAA,OAAAD,EAEA,MAAAE,EAAA,MAAAE,EAAA,EACAF,IAEAG,EAAAH,EAAA,WAEAJ,EAAA,MAAAA,EAAA,MAAA,OAAAI,EAAA,MAAA,EAA2C,4BA+B5C,MAAA,CAAO,MAAAJ,EACN,UAAAC,EACA,WAAAO,EACA,gCAnBAL,IAEAM,EAAA,OAAAC,0CAWA,CAOA,6uCCtIF,MAAA3B,EAAAC,+BAcAyB,EAAArB,EAAA,IAAA,EAAA,oBAIO,EAMPuB,EAAAvB,EAAA,IAAA,IAAA,eAMC,OAAAQ,EAAAe,EAAA,QAAA,YAAAf,EAAA,KAAuB,+CAKvBR,EAAA,wBACa,IAAA,CAEXO,EAAA,MAAAZ,EAAA,YAAA,CAAA,EAAA,CAAA,GAAA,KAAA,KAAA,EAAA,GACD,CAAA,UAAA,EAAA,CACkB,EAIpB,MAAA6B,EAAAC,EAAA9B,EAAA,WAAAA,EAAA,UAAAA,EAAA,QAAA,EAKA+B,EAAA1B,EAAA,SAAA,IAAA,CACC,MAAAY,EAAA,CAAA,0CAGCA,EAAA,KAAAe,CAAA,EAGDhC,EAAA,MAAA,QAAAc,GAAAG,EAAA,KAAA,CAAA,GAAAH,CAAA,CAAA,CAAA,GAEO,CAAA,+IAgBNF,EAAA,MAAA,KAAAqB,GAAAA,EAAA,KAAAnB,EAAA,EAAA,oBASFoB,EAAA7B,EAAA,SAAA,IAAA,+BAEC8B,EAAAC,EAAA,qBAAAC,CAAA,EAEA,IAAApB,EAAA,CAAA,0HAWGA,EAAA,QAAAH,CAAA,EAEAG,EAAA,KAAAH,CAAA,EAEF,CAAA,2BAKDd,EAAA,sBAAA0B,EAAA,QAAA,CAAAT,EAAA,QAAAA,EAAA,CAAA,EAAA,KAAA,YAAA,IAAAoB,oBAMM,KAAAX,EAAA,KACa,CAAA,EAInB1B,EAAA,cACCiB,EAAAA,EAAA,OAAAH,GAAA,CAAAwB,EAAAxB,CAAA,CAAA,IAGM,CAAA,EAQRyB,EAAA,MAAAzB,GAAA,SACC,GAAAd,EAAA,YAAA,CAGC,4BAAAsC,EAAAxB,CAAA,EACC,2CAKDF,EAAA,MAAA4B,EAEAC,EAAA,KAAA,MAAA,UACC5B,EAAA6B,EAAA,IAAA,MAAA7B,EAAA,qCAGCA,EAAA6B,EAAA,IAAA,MAAA7B,EAAA,kBACA8B,GAAA5B,GAAAC,EAAA0B,EAAA,IAAA,YAAA1B,EAAA,gBAAA,YAAAD,EAAA,cAAA,WAAA,MAAA4B,EAAA,QAGAjB,EAAA,QACCQ,EAAA,MAAA,SACCR,EAAA,MAAA,GACAG,EAAA,MAAA,MAAA,CAAA,GAEF,CAAA,CAEF,MAGAH,EAAA,QACCA,EAAA,MAAA,GACAG,EAAA,MAAA,MAAA,CAAA,GAGD,KAAA,UAAAf,CAAA,IAAA,KAAA,UAAAF,EAAA,KAAA,qBAIAI,EAAA0B,EAAA,IAAA,MAAA1B,EAAA,OACD,qCASC,MAAA4B,2CAAA,GAAAb,EAAA,MAAA,OACAnB,EAAA,MAAA,CAAA,GAAAmB,EAAA,MAAAa,CAAA,CAAA,EACD,EAODC,EAAA,MAAAC,GAAA,0BAEElC,EAAA,MAAAA,EAAA,MAAA,OAAAE,GAAAA,EAAA,KAAAgC,CAAA,yBAGCjC,EAAA6B,EAAA,IAAA,MAAA7B,EAAA,gBAA2B,CAAA,EAE7B,EAGDkC,EAAA1C,EAAA,IAAA,EAAA,EAEAL,EAAA,aACCK,EAAA,MAAA0C,EAAA,IAAA,CACCA,EAAA,yCAGA,CAAA,EAID1C,EAAA,MAAAqB,EAAA,IAAAG,EAAA,qBAAAH,EAAA,KAAA,CAAA,GAGD,MAAAsB,EAAAC,GAAA,CACC,MAAAC,EAAAD,EAAA,OAEAC,EAAA,WAAAA,EAAA,aAAAA,EAAA,cAAA,IACCrB,EAAA,WAAA,CACD"}
|
package/formsExt/formsExt.js
CHANGED
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
import { insertToPage as Z } from "../utils/css.js";
|
|
2
2
|
import { defineComponent as K, ref as V, computed as N, resolveDirective as q, openBlock as c, createElementBlock as v, normalizeClass as T, toDisplayString as C, createCommentVNode as _, createElementVNode as E, withDirectives as Y, createVNode as F, withKeys as O, withModifiers as B, createBlock as I, withCtx as $, createTextVNode as M, watch as S, toRef as ee, mergeProps as X, renderSlot as j, mergeModels as D, useModel as Q, Fragment as P, renderList as H, vModelRadio as te, unref as k } from "vue";
|
|
3
|
-
import { T as oe, B as z, a as L, I as le, C as ae } from "../.chunks/forms-
|
|
3
|
+
import { T as oe, B as z, a as L, I as le, C as ae } from "../.chunks/forms-S36M7cBH.es.js";
|
|
4
4
|
import { invertKeyboardLayout as re } from "../utils/keyboard.js";
|
|
5
|
-
import { _ as se, b as R } from "../.chunks/listItem.vue_vue_type_script_setup_true_lang-
|
|
6
|
-
import { P as ne } from "../.chunks/widgetInput-
|
|
5
|
+
import { _ as se, b as R } from "../.chunks/listItem.vue_vue_type_script_setup_true_lang-BfCj7kQR.es.js";
|
|
6
|
+
import { P as ne } from "../.chunks/widgetInput-Br5COpvG.es.js";
|
|
7
7
|
import { debounce as ie } from "lodash";
|
|
8
|
-
import { M as Re } from "../.chunks/menu-
|
|
8
|
+
import { M as Re } from "../.chunks/menu-v5knQbeF.es.js";
|
|
9
9
|
const x = ["../assets/formsExt.css"].map((s) => import.meta.resolve(s));
|
|
10
|
-
Z(x);
|
|
10
|
+
Z(x, !0);
|
|
11
11
|
const ue = { class: "top-editArea_footer" }, de = /* @__PURE__ */ K({
|
|
12
12
|
__name: "editArea",
|
|
13
13
|
props: {
|
|
@@ -119,6 +119,7 @@ const ue = { class: "top-editArea_footer" }, de = /* @__PURE__ */ K({
|
|
|
119
119
|
"top-editArea_title": "top-editArea_title",
|
|
120
120
|
"top-editArea_form": "top-editArea_form",
|
|
121
121
|
"top-editArea_form-focus": "top-editArea_form-focus",
|
|
122
|
+
"top-focus": "top-focus",
|
|
122
123
|
"top-textarea": "top-textarea",
|
|
123
124
|
"top-editArea_element": "top-editArea_element",
|
|
124
125
|
"top-textarea_textarea": "top-textarea_textarea",
|