@codemonster-ru/vueforge 0.11.0 → 0.12.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,3 +1,3 @@
1
- (function(w,e){typeof exports=="object"&&typeof module<"u"?e(exports,require("vue"),require("vue-router"),require("@codemonster-ru/vueiconify")):typeof define=="function"&&define.amd?define(["exports","vue","vue-router","@codemonster-ru/vueiconify"],e):(w=typeof globalThis<"u"?globalThis:w||self,e(w.index={},w.Vue,w.VueRouter,w.index))})(this,(function(w,e,ce,X){"use strict";var de=document.createElement("style");de.textContent=`.vf-link{color:inherit;cursor:pointer;text-decoration:none;font-size:var(--vf-typography-font-size);line-height:var(--vf-typography-line-height)}.vf-link:hover{color:var(--vf-link-hover-color)}.vf-link:active{color:var(--vf-link-active-color)}.vf-link.vf-link_disabled{cursor:not-allowed}.vf-link_active,.vf-link_partially-active{color:var(--vf-link-active-color)}.vf-card{border:var(--vf-border-width) solid var(--vf-card-border-color);border-radius:var(--vf-card-border-radius)}.vf-card__default{padding:var(--vf-card-padding)}.vf-menu{display:flex}.vf-menu_horizontal>.vf-menu__list{flex-direction:row}.vf-menu_horizontal>.vf-menu__list>.vf-menu__item{align-items:center}.vf-menu_horizontal>.vf-menu__list>.vf-menu__item:not(:first-child){margin-left:var(--vf-menu-item-margin-left)}.vf-menu_horizontal>.vf-menu__list>.vf-menu__item:not(:last-child){margin-right:var(--vf-menu-item-margin-right)}.vf-menu_horizontal>.vf-menu__list>.vf-menu__item>.vf-menu__separator{height:var(--vf-menu-separator-height);border-top:none;border-right:none;border-left:var(--vf-menu-separator-thickness) solid var(--vf-menu-separator-color);border-bottom:none}.vf-menu_vertical>.vf-menu__list{width:100%;flex-direction:column}.vf-menu_vertical>.vf-menu__list>.vf-menu__item{flex-direction:column}.vf-menu_vertical>.vf-menu__list>.vf-menu__item:not(:first-child){margin-top:var(--vf-menu-item-margin-top)}.vf-menu_vertical>.vf-menu__list>.vf-menu__item:not(:last-child){margin-bottom:var(--vf-menu-item-margin-bottom)}.vf-menu_vertical>.vf-menu__list>.vf-menu__item>.vf-menu{overflow:hidden}.vf-menu__list{margin:0;padding:0;display:flex;list-style:none}.vf-menu__separator{width:100%;height:var(--vf-menu-separator-thickness);border:none;margin:0;background-color:var(--vf-menu-separator-color)}.vf-menu__item{display:flex;font-weight:500}.vf-menu__link{display:flex;align-items:center;text-decoration:none;font-size:var(--vf-typography-font-size);line-height:var(--vf-typography-line-height)}.vf-menu__link:hover{color:var(--vf-menu-link-hover-color)}.vf-menu__parent{cursor:pointer;display:flex;align-items:center;justify-content:space-between;font-size:var(--vf-typography-font-size);line-height:var(--vf-typography-line-height)}.vf-menu__parent:hover{color:var(--vf-menu-parent-hover-color)}.vf-menu__icon{margin-right:var(--vf-menu-icon-gap)}.vf-menu__submenu.vf-menu__submenu_visible{margin-top:var(--vf-menu-submenu-offset);margin-left:var(--vf-menu-submenu-offset)}.vf-menu__submenu:not(.vf-menu__submenu_visible){height:0}.vf-button{display:inline-flex;position:relative;cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;justify-content:center;height:var(--vf-controls-height);box-sizing:border-box;padding:var(--vf-button-padding);font-size:var(--vf-button-font-size);line-height:var(--vf-typography-line-height);font-family:inherit;border-radius:var(--vf-button-border-radius);overflow:hidden}.vf-button_text{border:var(--vf-border-width) solid transparent;background-color:transparent}.vf-button_outlined{background-color:transparent}.vf-button_primary.vf-button_text{color:var(--vf-button-text-primary-color)}.vf-button_primary.vf-button_text:not(.vf-button_disabled):hover{background-color:var(--vf-button-text-primary-hover-background-color)}.vf-button_primary.vf-button_outlined{color:var(--vf-button-outlined-primary-color);border:var(--vf-border-width) solid var(--vf-button-outlined-primary-border-color)}.vf-button_primary.vf-button_outlined:not(.vf-button_disabled):hover{background-color:var(--vf-button-outlined-primary-hover-background-color)}.vf-button_primary:not(.vf-button_text):not(.vf-button_outlined){color:var(--vf-button-primary-color);border:var(--vf-border-width) solid var(--vf-button-primary-border-color);background-color:var(--vf-button-primary-background-color)}.vf-button_primary:not(.vf-button_text):not(.vf-button_outlined):not(.vf-button_disabled):hover{color:var(--vf-button-primary-hover-color);border:var(--vf-border-width) solid var(--vf-button-primary-hover-border-color);background-color:var(--vf-button-primary-hover-background-color)}.vf-button_primary:not(.vf-button_text):not(.vf-button_outlined):not(.vf-button_disabled):active{color:var(--vf-button-primary-active-color);border:var(--vf-border-width) solid var(--vf-button-primary-active-border-color);background-color:var(--vf-button-primary-active-background-color)}.vf-button_secondary.vf-button_text{color:var(--vf-button-text-secondary-color)}.vf-button_secondary.vf-button_text:not(.vf-button_disabled):hover{background-color:var(--vf-button-text-secondary-hover-background-color)}.vf-button_secondary.vf-button_outlined{color:var(--vf-button-outlined-secondary-color);border:var(--vf-border-width) solid var(--vf-button-outlined-secondary-border-color)}.vf-button_secondary.vf-button_outlined:not(.vf-button_disabled):hover{background-color:var(--vf-button-outlined-secondary-hover-background-color)}.vf-button_secondary:not(.vf-button_text):not(.vf-button_outlined){color:var(--vf-button-secondary-color);border:var(--vf-border-width) solid var(--vf-button-secondary-border-color);background-color:var(--vf-button-secondary-background-color)}.vf-button_secondary:not(.vf-button_text):not(.vf-button_outlined):not(.vf-button_disabled):hover{color:var(--vf-button-secondary-hover-color);border:var(--vf-border-width) solid var(--vf-button-secondary-hover-border-color);background-color:var(--vf-button-secondary-hover-background-color)}.vf-button_secondary:not(.vf-button_text):not(.vf-button_outlined):not(.vf-button_disabled):active{color:var(--vf-button-secondary-active-color);border:var(--vf-border-width) solid var(--vf-button-secondary-active-border-color);background-color:var(--vf-button-secondary-active-background-color)}.vf-button_success.vf-button_text{color:var(--vf-button-text-success-color)}.vf-button_success.vf-button_text:not(.vf-button_disabled):hover{background-color:var(--vf-button-text-success-hover-background-color)}.vf-button_success.vf-button_outlined{color:var(--vf-button-outlined-success-color);border:var(--vf-border-width) solid var(--vf-button-outlined-success-border-color)}.vf-button_success.vf-button_outlined:not(.vf-button_disabled):hover{background-color:var(--vf-button-outlined-success-hover-background-color)}.vf-button_success:not(.vf-button_text):not(.vf-button_outlined){color:var(--vf-button-success-color);border:var(--vf-border-width) solid var(--vf-button-success-border-color);background-color:var(--vf-button-success-background-color)}.vf-button_success:not(.vf-button_text):not(.vf-button_outlined):not(.vf-button_disabled):hover{color:var(--vf-button-success-hover-color);border:var(--vf-border-width) solid var(--vf-button-success-hover-border-color);background-color:var(--vf-button-success-hover-background-color)}.vf-button_success:not(.vf-button_text):not(.vf-button_outlined):not(.vf-button_disabled):active{color:var(--vf-button-success-active-color);border:var(--vf-border-width) solid var(--vf-button-success-active-border-color);background-color:var(--vf-button-success-active-background-color)}.vf-button_info.vf-button_text{color:var(--vf-button-text-info-color)}.vf-button_info.vf-button_text:not(.vf-button_disabled):hover{background-color:var(--vf-button-text-info-hover-background-color)}.vf-button_info.vf-button_outlined{color:var(--vf-button-outlined-info-color);border:var(--vf-border-width) solid var(--vf-button-outlined-info-border-color)}.vf-button_info.vf-button_outlined:not(.vf-button_disabled):hover{background-color:var(--vf-button-outlined-info-hover-background-color)}.vf-button_info:not(.vf-button_text):not(.vf-button_outlined){color:var(--vf-button-info-color);border:var(--vf-border-width) solid var(--vf-button-info-border-color);background-color:var(--vf-button-info-background-color)}.vf-button_info:not(.vf-button_text):not(.vf-button_outlined):not(.vf-button_disabled):hover{color:var(--vf-button-info-hover-color);border:var(--vf-border-width) solid var(--vf-button-info-hover-border-color);background-color:var(--vf-button-info-hover-background-color)}.vf-button_info:not(.vf-button_text):not(.vf-button_outlined):not(.vf-button_disabled):active{color:var(--vf-button-info-active-color);border:var(--vf-border-width) solid var(--vf-button-info-active-border-color);background-color:var(--vf-button-info-active-background-color)}.vf-button_warning.vf-button_text{color:var(--vf-button-text-warning-color)}.vf-button_warning.vf-button_text:not(.vf-button_disabled):hover{background-color:var(--vf-button-text-warning-hover-background-color)}.vf-button_warning.vf-button_outlined{color:var(--vf-button-outlined-warning-color);border:var(--vf-border-width) solid var(--vf-button-outlined-warning-border-color)}.vf-button_warning.vf-button_outlined:not(.vf-button_disabled):hover{background-color:var(--vf-button-outlined-warning-hover-background-color)}.vf-button_warning:not(.vf-button_text):not(.vf-button_outlined){color:var(--vf-button-warning-color);border:var(--vf-border-width) solid var(--vf-button-warning-border-color);background-color:var(--vf-button-warning-background-color)}.vf-button_warning:not(.vf-button_text):not(.vf-button_outlined):not(.vf-button_disabled):hover{color:var(--vf-button-warning-hover-color);border:var(--vf-border-width) solid var(--vf-button-warning-hover-border-color);background-color:var(--vf-button-warning-hover-background-color)}.vf-button_warning:not(.vf-button_text):not(.vf-button_outlined):not(.vf-button_disabled):active{color:var(--vf-button-warning-active-color);border:var(--vf-border-width) solid var(--vf-button-warning-active-border-color);background-color:var(--vf-button-warning-active-background-color)}.vf-button_danger.vf-button_text{color:var(--vf-button-text-danger-color)}.vf-button_danger.vf-button_text:not(.vf-button_disabled):hover{background-color:var(--vf-button-text-danger-hover-background-color)}.vf-button_danger.vf-button_outlined{color:var(--vf-button-outlined-danger-color);border:var(--vf-border-width) solid var(--vf-button-outlined-danger-border-color)}.vf-button_danger.vf-button_outlined:not(.vf-button_disabled):hover{background-color:var(--vf-button-outlined-danger-hover-background-color)}.vf-button_danger:not(.vf-button_text):not(.vf-button_outlined){color:var(--vf-button-danger-color);border:var(--vf-border-width) solid var(--vf-button-danger-border-color);background-color:var(--vf-button-danger-background-color)}.vf-button_danger:not(.vf-button_text):not(.vf-button_outlined):not(.vf-button_disabled):hover{color:var(--vf-button-danger-hover-color);border:var(--vf-border-width) solid var(--vf-button-danger-hover-border-color);background-color:var(--vf-button-danger-hover-background-color)}.vf-button_danger:not(.vf-button_text):not(.vf-button_outlined):not(.vf-button_disabled):active{color:var(--vf-button-danger-active-color);border:var(--vf-border-width) solid var(--vf-button-danger-active-border-color);background-color:var(--vf-button-danger-active-background-color)}.vf-button_vertical{flex-direction:column}.vf-button__icon{display:inline-block}.vf-button__icon_top+.vf-button__label{margin-top:var(--vf-button-icon-gap)}.vf-button__icon_right{order:1}.vf-button__icon_right+.vf-button__label{margin-right:var(--vf-button-icon-gap)}.vf-button__icon_bottom{order:1}.vf-button__icon_bottom+.vf-button__label{margin-bottom:var(--vf-button-icon-gap)}.vf-button__icon_left+.vf-button__label{margin-left:var(--vf-button-icon-gap)}.vf-button_disabled{opacity:var(--vf-states-disabled-opacity);cursor:default}.vf-button_rounded{border-radius:var(--vf-button-rounded-border-radius)}.vf-button_small{font-size:var(--vf-button-small-font-size);padding:var(--vf-button-small-padding)}.vf-button_large{font-size:var(--vf-button-large-font-size);padding:var(--vf-button-large-padding)}.vf-input{display:flex;align-items:center;gap:var(--vf-input-gap);height:var(--vf-controls-height);box-sizing:border-box;padding:var(--vf-input-padding);border-radius:var(--vf-input-border-radius);border:var(--vf-border-width) solid var(--vf-input-border-color);background-color:var(--vf-input-background-color);color:var(--vf-input-text-color);transition:border-color .2s ease}.vf-input__control{flex:1;border:none;background:transparent;color:inherit;font-size:var(--vf-input-font-size);line-height:var(--vf-typography-line-height);font-family:inherit;outline:none}.vf-input__control::placeholder{color:var(--vf-input-placeholder-color)}.vf-input:hover:not(.vf-input_disabled){border-color:var(--vf-input-hover-border-color)}.vf-input:focus-within:not(.vf-input_disabled){border-color:var(--vf-input-focus-border-color);box-shadow:var(--vf-input-focus-ring-shadow)}.vf-input_outlined{background-color:transparent}.vf-input_small{padding:var(--vf-input-small-padding)}.vf-input_small .vf-input__control{font-size:var(--vf-input-small-font-size)}.vf-input_large{padding:var(--vf-input-large-padding)}.vf-input_large .vf-input__control{font-size:var(--vf-input-large-font-size)}.vf-input_disabled{opacity:var(--vf-input-disabled-opacity);cursor:not-allowed}.vf-textarea{display:flex;align-items:stretch;gap:var(--vf-textarea-gap);min-height:var(--vf-textarea-min-height);box-sizing:border-box;padding:var(--vf-textarea-padding);border-radius:var(--vf-textarea-border-radius);border:var(--vf-border-width) solid var(--vf-textarea-border-color);background-color:var(--vf-textarea-background-color);color:var(--vf-textarea-text-color);transition:border-color .2s ease,box-shadow .2s ease}.vf-textarea__control{flex:1;min-height:var(--vf-textarea-min-height);border:none;background:transparent;color:inherit;font-size:var(--vf-textarea-font-size);line-height:var(--vf-typography-line-height);font-family:inherit;outline:none;resize:var(--vf-textarea-resize);width:100%;padding:0;box-sizing:border-box}.vf-textarea__control::placeholder{color:var(--vf-textarea-placeholder-color)}.vf-textarea:hover:not(.vf-textarea_disabled){border-color:var(--vf-textarea-hover-border-color)}.vf-textarea:focus-within:not(.vf-textarea_disabled){border-color:var(--vf-textarea-focus-border-color);box-shadow:var(--vf-textarea-focus-ring-shadow)}.vf-textarea_outlined{background-color:transparent}.vf-textarea_small{padding:var(--vf-textarea-small-padding)}.vf-textarea_small .vf-textarea__control{font-size:var(--vf-textarea-small-font-size)}.vf-textarea_large{padding:var(--vf-textarea-large-padding)}.vf-textarea_large .vf-textarea__control{font-size:var(--vf-textarea-large-font-size)}.vf-textarea_disabled{opacity:var(--vf-textarea-disabled-opacity);cursor:not-allowed}.vf-select{position:relative;display:inline-block;min-width:var(--vf-select-min-width);height:var(--vf-controls-height);box-sizing:border-box;border-radius:var(--vf-select-border-radius);border:var(--vf-border-width) solid var(--vf-select-border-color);background-color:var(--vf-select-background-color);color:var(--vf-select-text-color);transition:border-color .2s ease,box-shadow .2s ease}.vf-select_outlined{background-color:transparent}.vf-select__control{width:100%;padding:var(--vf-select-padding);border:none;background:transparent;color:inherit;font-size:var(--vf-select-font-size);line-height:var(--vf-typography-line-height);font-family:inherit;outline:none;display:inline-flex;align-items:center;justify-content:space-between;height:var(--vf-controls-height);box-sizing:border-box;gap:var(--vf-select-control-gap);cursor:pointer}.vf-select__label{text-align:left}.vf-select__label_placeholder{color:var(--vf-secondary-text-color)}.vf-select__chevron{font-size:var(--vf-select-chevron-size);opacity:.7}.vf-select__panel{position:fixed;z-index:50;padding:var(--vf-select-panel-padding);max-height:var(--vf-select-panel-max-height);overflow:auto;border-radius:calc(var(--vf-select-border-radius) + var(--vf-select-panel-radius-offset));border:var(--vf-border-width) solid var(--vf-select-panel-border-color);background-color:var(--vf-select-panel-background-color);box-shadow:var(--vf-select-panel-shadow);color:var(--vf-select-text-color)}.vf-select__option{width:100%;text-align:left;border:none;background:transparent;padding:var(--vf-select-option-padding);border-radius:var(--vf-select-option-border-radius);color:inherit;cursor:pointer;font-size:var(--vf-typography-font-size);line-height:var(--vf-typography-line-height);font-family:inherit}.vf-select__option:hover:not(.is-disabled),.vf-select__option:focus-visible:not(.is-disabled){background-color:var(--vf-select-option-hover-background-color);outline:none}.vf-select__option.is-active{background-color:var(--vf-select-option-active-background-color);color:var(--vf-select-option-active-text-color)}.vf-select__option.is-disabled{opacity:.6;cursor:not-allowed}.vf-select_open{border-color:var(--vf-select-focus-border-color);box-shadow:var(--vf-select-focus-ring-shadow)}.vf-select:hover:not(.vf-select_disabled){border-color:var(--vf-select-hover-border-color)}.vf-select:focus-within:not(.vf-select_disabled){border-color:var(--vf-select-focus-border-color)}.vf-select_small .vf-select__control{padding:var(--vf-select-small-padding);font-size:var(--vf-select-small-font-size)}.vf-select_large .vf-select__control{padding:var(--vf-select-large-padding);font-size:var(--vf-select-large-font-size)}.vf-select_disabled{opacity:var(--vf-select-disabled-opacity);cursor:not-allowed}.vf-select_disabled .vf-select__control{cursor:not-allowed}.vf-checkbox{display:inline-flex;align-items:center;gap:var(--vf-checkbox-gap);cursor:pointer;color:var(--vf-checkbox-text-color);font-size:var(--vf-typography-font-size);line-height:var(--vf-typography-line-height)}.vf-checkbox__control{position:absolute;opacity:0;pointer-events:none}.vf-checkbox__box{width:var(--vf-checkbox-size);height:var(--vf-checkbox-size);border:var(--vf-border-width) solid var(--vf-checkbox-border-color);border-radius:var(--vf-checkbox-border-radius);background-color:var(--vf-checkbox-background-color);display:inline-flex;align-items:center;justify-content:center;transition:background-color .2s ease,border-color .2s ease}.vf-checkbox__control:checked+.vf-checkbox__box{background-color:var(--vf-checkbox-checked-background-color);border-color:var(--vf-checkbox-checked-border-color)}.vf-checkbox__control:checked+.vf-checkbox__box:after{content:"";width:calc(var(--vf-checkbox-size) / 2);height:calc(var(--vf-checkbox-size) / 2);background-color:var(--vf-checkbox-check-color);border-radius:var(--vf-checkbox-check-border-radius)}.vf-checkbox_outlined .vf-checkbox__box{background-color:transparent}.vf-checkbox_disabled{opacity:var(--vf-checkbox-disabled-opacity);cursor:not-allowed}.vf-switch{display:inline-flex;align-items:center;gap:var(--vf-switch-gap);cursor:pointer;color:var(--vf-switch-text-color);font-size:var(--vf-typography-font-size);line-height:var(--vf-typography-line-height)}.vf-switch__control{position:absolute;opacity:0;pointer-events:none}.vf-switch__track{position:relative;width:var(--vf-switch-width);height:var(--vf-switch-height);border-radius:var(--vf-switch-height);background-color:var(--vf-switch-background-color);transition:background-color .2s ease}.vf-switch__thumb{position:absolute;top:50%;left:var(--vf-switch-thumb-offset);width:var(--vf-switch-thumb-size);height:var(--vf-switch-thumb-size);border-radius:50%;background-color:var(--vf-switch-thumb-color);transform:translateY(-50%);transition:transform .2s ease}.vf-switch__control:checked+.vf-switch__track{background-color:var(--vf-switch-checked-background-color)}.vf-switch__control:checked+.vf-switch__track .vf-switch__thumb{transform:translate(calc(var(--vf-switch-width) - var(--vf-switch-thumb-size) - var(--vf-switch-thumb-translate-offset)),-50%)}.vf-switch_disabled{opacity:var(--vf-switch-disabled-opacity);cursor:not-allowed}.vf-popover{position:relative}.vf-popover__button{cursor:pointer;-webkit-user-select:none;user-select:none}.vf-popover__wrapper{position:absolute;background-color:var(--vf-popover-background-color)}.vf-modal{position:fixed;top:0;right:0;bottom:0;left:0;z-index:var(--vf-modal-z-index);display:flex;align-items:center;justify-content:center}.vf-modal__overlay{position:absolute;top:0;right:0;bottom:0;left:0;background-color:var(--vf-modal-overlay-background-color)}.vf-modal__panel{position:relative;z-index:1;width:var(--vf-modal-width);max-width:var(--vf-modal-max-width);max-height:var(--vf-modal-max-height);padding:var(--vf-modal-padding);border-radius:var(--vf-modal-border-radius);background-color:var(--vf-modal-background-color);color:var(--vf-modal-text-color);box-shadow:var(--vf-modal-shadow);overflow:auto;outline:none}.vf-modal_sm .vf-modal__panel{width:var(--vf-modal-width-sm);max-width:var(--vf-modal-max-width-sm)}.vf-modal_lg .vf-modal__panel{width:var(--vf-modal-width-lg);max-width:var(--vf-modal-max-width-lg)}.vf-modal__header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--vf-modal-header-gap)}.vf-modal__title{margin:0;font-size:var(--vf-modal-title-font-size);line-height:var(--vf-modal-title-line-height);font-weight:var(--vf-modal-title-font-weight)}.vf-modal__body{margin-bottom:var(--vf-modal-body-gap)}.vf-modal__footer{display:flex;align-items:center;justify-content:flex-end;gap:var(--vf-modal-footer-gap)}.vf-modal__close{position:absolute;top:var(--vf-modal-close-offset);right:var(--vf-modal-close-offset);width:var(--vf-modal-close-size);height:var(--vf-modal-close-size);border-radius:var(--vf-modal-close-radius);border:none;background:transparent;color:var(--vf-modal-close-color);cursor:pointer;font-size:var(--vf-modal-close-font-size);line-height:1}.vf-modal__close:hover{background-color:var(--vf-modal-close-hover-background-color)}.vf-tooltip__trigger{display:inline-flex}.vf-tooltip{position:fixed;z-index:var(--vf-tooltip-z-index);padding:var(--vf-tooltip-padding);border-radius:var(--vf-tooltip-border-radius);background-color:var(--vf-tooltip-background-color);color:var(--vf-tooltip-text-color);font-size:var(--vf-tooltip-font-size);line-height:var(--vf-tooltip-line-height);box-shadow:none;filter:drop-shadow(var(--vf-tooltip-shadow));max-width:var(--vf-tooltip-max-width)}.vf-tooltip__content{position:relative;z-index:1}.vf-tooltip__arrow{position:absolute;z-index:0;--vf-tooltip-arrow-rendered-height: var(--vf-tooltip-arrow-size);--vf-tooltip-arrow-half-width: calc(var(--vf-tooltip-arrow-size) * .8);width:0;height:0;border-style:solid;pointer-events:none}.vf-tooltip[data-placement^=top] .vf-tooltip__arrow{bottom:calc(var(--vf-tooltip-arrow-rendered-height) * -1);left:50%;transform:translate(-50%);border-width:var(--vf-tooltip-arrow-rendered-height) var(--vf-tooltip-arrow-half-width) 0 var(--vf-tooltip-arrow-half-width);border-color:var(--vf-tooltip-background-color) transparent transparent transparent}.vf-tooltip[data-placement^=bottom] .vf-tooltip__arrow{top:calc(var(--vf-tooltip-arrow-rendered-height) * -1);left:50%;transform:translate(-50%);border-width:0 var(--vf-tooltip-arrow-half-width) var(--vf-tooltip-arrow-rendered-height) var(--vf-tooltip-arrow-half-width);border-color:transparent transparent var(--vf-tooltip-background-color) transparent}.vf-tooltip[data-placement^=left] .vf-tooltip__arrow{right:calc(var(--vf-tooltip-arrow-half-width) * -2);top:50%;transform:translateY(-50%);border-width:var(--vf-tooltip-arrow-half-width) var(--vf-tooltip-arrow-rendered-height) var(--vf-tooltip-arrow-half-width) 0;border-color:transparent var(--vf-tooltip-background-color) transparent transparent}.vf-tooltip[data-placement^=right] .vf-tooltip__arrow{left:calc(var(--vf-tooltip-arrow-half-width) * -2);top:50%;transform:translateY(-50%);border-width:var(--vf-tooltip-arrow-half-width) 0 var(--vf-tooltip-arrow-half-width) var(--vf-tooltip-arrow-rendered-height);border-color:transparent transparent transparent var(--vf-tooltip-background-color)}
2
- /*$vite$:1*/`,document.head.appendChild(de);const Ce=["href","aria-disabled","tabindex"],ne=e.defineComponent({__name:"link",props:{to:{default:void 0},href:{default:void 0},url:{default:void 0},as:{default:void 0},type:{default:void 0},label:{default:""},active:{type:Boolean},disabled:{type:Boolean}},emits:["click","active","update:active","onActive"],setup(t,{emit:o}){const n=o,r=t,a=ce.useRoute(),f=ce.useRouter(),c=e.ref(null),v=e.computed(()=>r.href??r.url),l=e.computed(()=>r.as?r.as==="router-link"&&!r.to?"a":r.as:r.type==="router-link"||r.type==="a"?r.type==="router-link"&&!r.to?"a":r.type:r.to?"router-link":"a"),d=e.computed(()=>r.to),i=e.computed(()=>r.to?f.resolve(r.to):null),s=e.computed(()=>{if(l.value!=="router-link")return!1;const p=i.value;return p?p.name?a.matched.some(({name:y})=>y===p.name):p.fullPath?a.fullPath===p.fullPath:a.path===p.path:!1}),b=e.computed(()=>r.active===void 0?s.value:r.active),u=p=>{if(!r.disabled){n("click",p);return}p.preventDefault(),p.stopPropagation()};return e.watch(s,p=>{p&&(n("active"),n("onActive")),n("update:active",p)}),(p,y)=>{const g=e.resolveComponent("router-link");return l.value==="a"?(e.openBlock(),e.createElementBlock("a",{key:0,href:v.value,class:e.normalizeClass(["vf-link",{"vf-link_active":b.value,"vf-link_disabled":p.disabled}]),"aria-disabled":p.disabled,tabindex:p.disabled?-1:void 0,onClick:u},[p.$slots.default?e.renderSlot(p.$slots,"default",{key:0}):(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[e.createTextVNode(e.toDisplayString(p.label),1)],64))],10,Ce)):(e.openBlock(),e.createBlock(g,{key:1,ref_key:"link",ref:c,to:d.value,class:e.normalizeClass(["vf-link",{"vf-link_active":b.value}]),"aria-disabled":p.disabled,tabindex:p.disabled?-1:void 0,"active-class":"vf-link_partially-active","exact-active-class":"vf-link_active",onClick:u},{default:e.withCtx(()=>[p.$slots.default?e.renderSlot(p.$slots,"default",{key:0}):(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[e.createTextVNode(e.toDisplayString(p.label),1)],64))]),_:3},8,["to","class","aria-disabled","tabindex"]))}}}),Be=(t,o)=>{const n=t.__vccOpts||t;for(const[r,a]of o)n[r]=a;return n},ze={},$e={class:"vf-card"},Fe={key:0,class:"vf-card__default"},Se={key:1,class:"vf-card__header"},Ve={key:2,class:"vf-card__body"},Ee={key:3,class:"vf-card__footer"};function Te(t,o){return e.openBlock(),e.createElementBlock("div",$e,[t.$slots.default?(e.openBlock(),e.createElementBlock("div",Fe,[e.renderSlot(t.$slots,"default")])):e.createCommentVNode("",!0),t.$slots.header?(e.openBlock(),e.createElementBlock("div",Se,[e.renderSlot(t.$slots,"header")])):e.createCommentVNode("",!0),t.$slots.body?(e.openBlock(),e.createElementBlock("div",Ve,[e.renderSlot(t.$slots,"body")])):e.createCommentVNode("",!0),t.$slots.footer?(e.openBlock(),e.createElementBlock("div",Ee,[e.renderSlot(t.$slots,"footer")])):e.createCommentVNode("",!0)])}const fe=Be(ze,[["render",Te]]),Ne={class:"vf-menu__list",role:"menu"},Re={key:1,class:"vf-menu__separator",role:"separator"},Le=["aria-expanded","onClick","onKeydown"],We=e.defineComponent({name:"VfMenu",__name:"menu",props:{items:{},orientation:{default:"vertical"}},emits:["active","onActive"],setup(t,{emit:o}){const n=o,r=t,a=e.ref([]),f=(i,s)=>`${i.label??i.to??i.href??i.url??"item"}_${s.toString()}`,c=i=>i.to?"router-link":"a",v=i=>i.map(s=>({...s,items:s.items?v(s.items):void 0})),l=i=>{i.items&&i.items.length?(a.value.map(s=>{s!==i&&(s.subMenuVisible=!1)}),i.subMenuVisible=!i.subMenuVisible):Object.prototype.hasOwnProperty.call(i,"command")&&typeof i.command=="function"&&i.command()},d=i=>{var s;for(const b in a.value){const u=a.value[b];Object.prototype.hasOwnProperty.call(u,"items")&&((s=u.items)!=null&&s.some(p=>p===i)?(u.active=!0,u.subMenuVisible=!0):(u.active=!1,u.subMenuVisible=!1))}n("active",i),n("onActive",i)};return e.watch(()=>r.items,i=>{a.value=v(i)},{deep:!0,immediate:!0}),(i,s)=>{const b=e.resolveComponent("VfMenu");return e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["vf-menu",`vf-menu_${i.orientation}`])},[e.createElementVNode("ul",Ne,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(a.value,(u,p)=>(e.openBlock(),e.createElementBlock("li",{key:f(u,p),class:"vf-menu__item",role:"none"},[i.$slots[f(u,p)]?e.renderSlot(i.$slots,f(u,p),{key:0,item:{...u,class:"vf-menu__link"}}):u.separator?(e.openBlock(),e.createElementBlock("hr",Re)):u.items&&u.items.length?(e.openBlock(),e.createElementBlock(e.Fragment,{key:2},[e.createElementVNode("div",{class:e.normalizeClass(["vf-menu__parent",{"vf-menu__parent_active":u.active}]),role:"menuitem",tabindex:"0","aria-expanded":u.subMenuVisible?"true":"false",onClick:y=>l(u),onKeydown:[e.withKeys(e.withModifiers(y=>l(u),["prevent"]),["enter"]),e.withKeys(e.withModifiers(y=>l(u),["prevent"]),["space"])]},[u.icon?(e.openBlock(),e.createBlock(e.unref(X.CmIcon),{key:0,icon:u.icon,class:"vf-menu__icon"},null,8,["icon"])):e.createCommentVNode("",!0),e.createTextVNode(" "+e.toDisplayString(u.label)+" ",1),e.createVNode(e.unref(X.CmIcon),{icon:"chevronDown"})],42,Le),u.items?(e.openBlock(),e.createBlock(b,{key:0,items:u.items,class:e.normalizeClass(["vf-menu__submenu",{"vf-menu__submenu_visible":u.subMenuVisible}]),onOnActive:d},null,8,["items","class"])):e.createCommentVNode("",!0)],64)):(e.openBlock(),e.createBlock(ne,{key:3,to:u.to,href:u.href??u.url,as:c(u),class:"vf-menu__link",active:u.active,disabled:u.disabled,role:"menuitem","aria-disabled":u.disabled?"true":"false",onClick:y=>l(u),onActive:y=>d(u)},{default:e.withCtx(()=>[u.icon?(e.openBlock(),e.createBlock(e.unref(X.CmIcon),{key:0,icon:u.icon,class:"vf-menu__icon"},null,8,["icon"])):e.createCommentVNode("",!0),e.createTextVNode(" "+e.toDisplayString(u.label),1)]),_:2},1032,["to","href","as","active","disabled","aria-disabled","onClick","onActive"]))]))),128))])],2)}}}),Me=["type","disabled"],Oe=e.defineComponent({__name:"button",props:{to:{default:void 0},href:{default:void 0},url:{default:void 0},as:{default:void 0},icon:{default:void 0},type:{default:"button"},size:{default:"normal"},label:{default:""},loading:{type:Boolean,default:!1},rounded:{type:Boolean,default:!1},iconPos:{default:"left"},variant:{default:void 0},severity:{default:"primary"},disabled:{type:Boolean,default:!1}},setup(t){const o=t,n=["button","submit","reset"],r=i=>!!i&&n.includes(i),a=e.computed(()=>o.as?o.as==="button":!(o.to||o.href||o.url||o.type&&!r(o.type))),f=e.computed(()=>r(o.type)?o.type:"button"),c=e.computed(()=>o.as==="link"?o.to?"router-link":"a":o.type&&!r(o.type)?o.type==="router-link"&&o.to?"router-link":"a":o.to?"router-link":"a"),v=e.computed(()=>{let i=["vf-button",`vf-button_${o.severity}`];return["top","bottom"].includes(o.iconPos)&&i.push("vf-button_vertical"),o.variant==="text"&&i.push("vf-button_text"),o.variant==="outlined"&&i.push("vf-button_outlined"),["small","large"].indexOf(o.size)>-1&&i.push(`vf-button_${o.size}`),(o.loading||o.disabled)&&i.push("vf-button_disabled"),o.rounded&&i.push("vf-button_rounded"),i}),l=e.computed(()=>["vf-button__icon",`vf-button__icon_${o.iconPos}`]),d=e.computed(()=>["vf-button__label"]);return(i,s)=>a.value?(e.openBlock(),e.createElementBlock("button",{key:0,type:f.value,class:e.normalizeClass(v.value),disabled:o.loading||o.disabled},[o.icon&&!o.loading?(e.openBlock(),e.createBlock(e.unref(X.CmIcon),{key:0,icon:o.icon,class:e.normalizeClass(l.value)},null,8,["icon","class"])):e.createCommentVNode("",!0),o.loading?(e.openBlock(),e.createBlock(e.unref(X.CmIcon),{key:1,icon:"circleNotch",class:e.normalizeClass(l.value),spin:""},null,8,["class"])):e.createCommentVNode("",!0),i.$slots.default?(e.openBlock(),e.createElementBlock("span",{key:2,class:e.normalizeClass(d.value)},[e.renderSlot(i.$slots,"default")],2)):i.label?(e.openBlock(),e.createElementBlock("span",{key:3,class:e.normalizeClass(d.value)},e.toDisplayString(i.label),3)):e.createCommentVNode("",!0)],10,Me)):(e.openBlock(),e.createBlock(ne,{key:1,to:o.to,href:o.href??o.url,as:c.value,class:e.normalizeClass(v.value),disabled:o.loading||o.disabled},{default:e.withCtx(()=>[o.icon?(e.openBlock(),e.createBlock(e.unref(X.CmIcon),{key:0,icon:o.icon,class:e.normalizeClass(l.value)},null,8,["icon","class"])):e.createCommentVNode("",!0),i.$slots.default?(e.openBlock(),e.createElementBlock("span",{key:1,class:e.normalizeClass(d.value)},[e.renderSlot(i.$slots,"default")],2)):i.label?(e.openBlock(),e.createElementBlock("span",{key:2,class:e.normalizeClass(d.value)},e.toDisplayString(i.label),3)):e.createCommentVNode("",!0)]),_:3},8,["to","href","as","class","disabled"]))}}),He={key:0,class:"vf-input__prefix"},De=["type","value","placeholder","disabled","readonly"],Pe={key:1,class:"vf-input__suffix"},Ie=e.defineComponent({__name:"input",props:{modelValue:{default:""},type:{default:"text"},placeholder:{default:""},disabled:{type:Boolean,default:!1},readonly:{type:Boolean,default:!1},size:{default:"normal"},variant:{default:"filled"}},emits:["update:modelValue","input","change","focus","blur"],setup(t,{emit:o}){const n=o,r=t,a=e.computed(()=>{const d=["vf-input",`vf-input_${r.variant}`];return r.size!=="normal"&&d.push(`vf-input_${r.size}`),r.disabled&&d.push("vf-input_disabled"),d}),f=d=>{const i=d.target;n("update:modelValue",i.value),n("input",d)},c=d=>n("change",d),v=d=>n("focus",d),l=d=>n("blur",d);return(d,i)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(a.value)},[d.$slots.prefix?(e.openBlock(),e.createElementBlock("span",He,[e.renderSlot(d.$slots,"prefix")])):e.createCommentVNode("",!0),e.createElementVNode("input",{class:"vf-input__control",type:d.type,value:d.modelValue,placeholder:d.placeholder,disabled:d.disabled,readonly:d.readonly,onInput:f,onChange:c,onFocus:v,onBlur:l},null,40,De),d.$slots.suffix?(e.openBlock(),e.createElementBlock("span",Pe,[e.renderSlot(d.$slots,"suffix")])):e.createCommentVNode("",!0)],2))}}),Ae=["value","placeholder","disabled","readonly","rows"],je=e.defineComponent({__name:"textarea",props:{modelValue:{default:""},placeholder:{default:""},disabled:{type:Boolean,default:!1},readonly:{type:Boolean,default:!1},size:{default:"normal"},variant:{default:"filled"},rows:{default:3}},emits:["update:modelValue","input","change","focus","blur"],setup(t,{emit:o}){const n=o,r=t,a=e.computed(()=>{const d=["vf-textarea",`vf-textarea_${r.variant}`];return r.size!=="normal"&&d.push(`vf-textarea_${r.size}`),r.disabled&&d.push("vf-textarea_disabled"),d}),f=d=>{const i=d.target;n("update:modelValue",i.value),n("input",d)},c=d=>n("change",d),v=d=>n("focus",d),l=d=>n("blur",d);return(d,i)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(a.value)},[e.createElementVNode("textarea",{class:"vf-textarea__control",value:d.modelValue,placeholder:d.placeholder,disabled:d.disabled,readonly:d.readonly,rows:d.rows,onInput:f,onChange:c,onFocus:v,onBlur:l},null,40,Ae)],2))}}),ve=["top","top-start","top-end","right","right-start","right-end","bottom","bottom-start","bottom-end","left","left-start","left-end"],M=t=>{if(t==null||!(t instanceof HTMLElement))return null;if(typeof window<"u"){const o=window.getComputedStyle(t),n=`${o.overflowX}${o.overflowY}`;if(/(auto|scroll|overlay)/.test(n))return t}return t.scrollHeight>t.clientHeight||t.scrollWidth>t.clientWidth?t:M(t.parentNode)};function Ye(t){return typeof window>"u"?!1:window.getComputedStyle(t).position==="fixed"}const Ke=(t,o)=>t.strategy?t.strategy:Ye(o)?"fixed":"absolute",I=(t,o)=>Ke(t,o)==="fixed",N=(t,o,n={})=>{const r=t.getBoundingClientRect(),a=o?o.offsetParent:null,f=o?I(n,o):!1;if(a&&!f){const c=a.getBoundingClientRect(),v=a.scrollLeft,l=a.scrollTop;return{left:r.left-c.left+v,top:r.top-c.top+l,width:r.width,height:r.height}}return{left:r.left,top:r.top,width:r.width,height:r.height}},Y=(t,o)=>{var n;return(n=t.middleware)==null?void 0:n.find(r=>r.name===o)},ue=(t,o)=>!!Y(t,o),Xe=t=>{const o=M(t);let n="";return o!==null&&((o.dataset.scrollTop===void 0||o.scrollTop===+o.dataset.scrollTop)&&(o.dataset.scrollTop="0"),(o.dataset.scrollLeft===void 0||o.scrollLeft===+o.dataset.scrollLeft)&&(o.dataset.scrollLeft="0"),o.scrollTop>+o.dataset.scrollTop?n="bottom":o.scrollTop<+o.dataset.scrollTop?n="top":o.scrollLeft>+o.dataset.scrollLeft?n="right":o.scrollLeft<+o.dataset.scrollLeft&&(n="left"),o.dataset.scrollTop=o.scrollTop<=0?"0":o.scrollTop.toString(),o.dataset.scrollLeft=o.scrollLeft<=0?"0":o.scrollLeft.toString()),n},Z=t=>t.scrollLeft+t.clientWidth,J=t=>t.scrollTop+t.clientHeight,O=(t,o,n=null,r={},a)=>{if(n===null&&typeof window<"u"&&I(r,o))return t;let f=0;if(n===null){const c=M(o);f=c?c.scrollTop:0}return t-f},H=(t,o,n=null,r={},a)=>{let f;if(n===null&&typeof window<"u"&&I(r,o))f=window.innerWidth;else if(n===null){const c=M(o);f=c?Z(c):0}else f=n.getBoundingClientRect().width;return-(t+o.clientWidth-f)},A=(t,o,n=null,r={},a)=>{let f;if(n===null&&typeof window<"u"&&I(r,o))f=window.innerHeight;else if(n===null){const c=M(o);f=c?J(c):0}else f=n.getBoundingClientRect().height;return-(t+o.clientHeight-f)},D=(t,o,n=null,r={},a)=>{if(n===null&&typeof window<"u"&&I(r,o))return t;let f=0;if(n===null){const c=M(o);f=c?c.scrollLeft:0}return t-f},be=({options:t,primaryX:o,primaryY:n,floating:r,placement:a,reference:f,scrollDirection:c})=>{const v=Q(f,r,a,t),l=Y(t,"offset");if(l){const d=l.fn({x:v.x,y:v.y,options:t,primaryX:o,primaryY:n,floating:r,placement:a,reference:f,scrollDirection:c});v.x=d.x,v.y=d.y}return co(v,r,f,t)?{x:v.x,y:v.y,placement:a}:!1},pe=t=>({name:"flip",params:t,fn:({x:o,y:n,options:r,primaryX:a,primaryY:f,floating:c,placement:v,reference:l,scrollDirection:d})=>{var i;const s={x:o,y:n,placement:v},b={...r,middleware:(i=r.middleware)==null?void 0:i.filter(B=>B.name!=="shift")},u=(t==null?void 0:t.placements)??ve,p=!(t!=null&&t.placements),y=p?ve:u;let g=!1;const x=B=>{if(g)return;const z=be({options:b,primaryX:a,primaryY:f,floating:c,placement:B,reference:l,scrollDirection:d});z&&(s.x=z.x,s.y=z.y,s.placement=z.placement,g=!0)},F=vo(l,c,b);if(!p&&u.includes(v)&&x(v),g||y.forEach(x),!g){const B=u.reduce((z,k)=>{const C=be({options:b,primaryX:a,primaryY:f,floating:c,placement:k,reference:l,scrollDirection:d});if(!C)return z;const V=q(k),S=F[V];return!z||S>z.space?{result:C,space:S}:z},null);B&&(s.x=B.result.x,s.y=B.result.y,s.placement=B.result.placement,g=!0)}if(!g&&u.length>0){const B=q(v);let z=B,k=F[B];u.forEach(m=>{const h=q(m),_=F[h];_>k&&(k=_,z=h)});const C=fo(z,v,u),V=Q(l,c,C,b),S=Y(b,"offset");if(S){const m=S.fn({x:V.x,y:V.y,options:b,primaryX:a,primaryY:f,floating:c,placement:C,reference:l,scrollDirection:d});V.x=m.x,V.y=m.y}s.x=V.x,s.y=V.y,s.placement=V.placement}return s}}),he=(t,o,n,r,a)=>{var f,c,v;let l=0;r.startsWith("right")?l=-t:r.startsWith("left")&&(l=t);const d=Y(o,"arrow"),i=Y(o,"shift");if(d){const s=((f=d.params)==null?void 0:f.arrow).getBoundingClientRect();r.startsWith("right")?l-=s.width/2:r.startsWith("left")&&(l+=s.width/2)}if(ue(o,"shift")&&d){let s=null,b=0;i&&(s=(c=i.params)==null?void 0:c.parent);const u=(v=d.params)==null?void 0:v.arrow;b=u.getBoundingClientRect().width/2,b+=qe(u),b-=t,r.startsWith("right")?H(n-l,a,s,o)<=t?H(n,a,s,o)>0?l=t-H(n,a,s,o):l=t:D(n-l-b,a,s,o)<=t&&(D(n-l-b,a,s,o)>=0?(l=-t-(D(n-l-b,a,s,o)+t),s&&(l=-t)):l=-t):r.startsWith("left")?H(n-l+b,a,s,o)<=t?(l=t+H(n-b,a,s,o),l<=t&&(l=t)):D(n-l,a,s,o)<=t&&(l=-t+D(n,a,s,o),l<=-t&&(l=-t)):H(n-l,a,s,o)<=t?H(n-l,a,s,o)<=t&&H(n,a,s,o)>0?l=t-H(n,a,s,o):l=t:D(n-l,a,s,o)<=t&&(D(n-l,a,s,o)<=t&&D(n,a,s,o)>0?l=-(t-D(n,a,s,o)):l=-t)}return l},me=(t,o,n,r,a)=>{var f,c,v;let l=0;r.startsWith("top")?l=t:r.startsWith("bottom")&&(l=-t);const d=Y(o,"arrow"),i=Y(o,"shift");if(d){const s=((f=d.params)==null?void 0:f.arrow).getBoundingClientRect();r.startsWith("top")?l+=s.height/2:r.startsWith("bottom")&&(l-=s.height/2)}if(ue(o,"shift")&&d){let s=null,b=0;i&&(s=(c=i.params)==null?void 0:c.parent);const u=(v=d.params)==null?void 0:v.arrow;b=u.getBoundingClientRect().height/2,b+=Ue(u),b-=t,r.startsWith("top")?O(n-l,a,s,o)<=t?O(n,a,s,o)>=0?l=-(t-O(n,a,s,o)):l=-t:A(n-l+b,a,s,o)<=t&&(l=t+A(n-b,a,s,o),l<=t&&(l=t)):r.startsWith("bottom")?O(n-l-b,a,s,o)<=t?O(n-l-b,a,s,o)>=0?(l=-t-(O(n-l-b,a,s,o)+t),s&&(l=-t)):l=-t:A(n-l,a,s,o)<=t&&(A(n,a,s,o)>=0?l=t-A(n,a,s,o):l=t):O(n-l,a,s,o)<=t?O(n-l,a,s,o)>=0?l=-(t-O(n-l,a,s,o)):l=-t:A(n-l,a,s,o)<=t&&(A(n-l,a,s,o)>=0?l=t-A(n-l,a,s,o):l=t)}return l},ge=t=>({name:"offset",params:{value:t},fn:({x:o,y:n,options:r,primaryX:a,primaryY:f,floating:c,placement:v})=>({x:o-he(t,r,a,v,c),y:n-me(t,r,f,v,c),placement:v})}),Ge=t=>({name:"shift",params:t,fn:({x:o,y:n,options:r,primaryX:a,primaryY:f,floating:c,placement:v,reference:l})=>{var d;const i={x:o,y:n,placement:v},s=r.middleware||[],b=s.findIndex(_=>_.name==="shift"),u=s.findIndex(_=>_.name==="offset"),p=u!==-1&&(b===-1||u>b),y=s.find(_=>_.name==="offset"),g=y?(d=y.params)==null?void 0:d.value:0,x=p?he(g,r,a,v,c):0,F=p?me(g,r,f,v,c):0,B=o-x,z=n-F;let k=B,C=z;const V=y?Math.abs(g):0,S=V,m=V;if(I(r,c)&&typeof window<"u"){const _=S,$=window.innerWidth-c.clientWidth-S,E=$<_?_:$,T=m,L=window.innerHeight-c.clientHeight-m,R=L<T?T:L;k<_?k=_:k>E&&(k=E),C<T?C=T:C>R&&(C=R),p?(i.x=o+(k-B),i.y=n+(C-z)):(i.x=k,i.y=C);const P=S,W=window.innerWidth-c.clientWidth-S,K=m,U=window.innerHeight-c.clientHeight-m,G=p?P+x:P,oe=p?W+x:W,te=p?K+F:K,re=p?U+F:U;return i.x<G?i.x=G:i.x>oe&&(i.x=oe),i.y<te?i.y=te:i.y>re&&(i.y=re),i}const h=M(c);if(h!==null){const _=N(l,c,r),$=_.left,E=_.left+_.width,T=_.top,L=_.top+_.height,R=h.scrollLeft+S,P=Z(h)-c.clientWidth-S,W=P<R?R:P,K=h.scrollTop+m,U=J(h)-c.clientHeight-m,G=U<K?K:U,oe=h.scrollLeft,te=Z(h),re=h.scrollTop,Qo=J(h);E<=oe?k=R:$>=te&&(k=W),L<=re?C=K:T>=Qo&&(C=G),C<K?C=K:C>G&&(C=G),k<R?k=R:k>W&&(k=W)}if(p?(i.x=o+(k-B),i.y=n+(C-z)):(i.x=k,i.y=C),h!==null){const _=h.scrollLeft+S,$=Z(h)-c.clientWidth-S,E=h.scrollTop+m,T=J(h)-c.clientHeight-m,L=p?_+x:_,R=p?$+x:$,P=p?E+F:E,W=p?T+F:T;i.x<L?i.x=L:i.x>R&&(i.x=R),i.y<P?i.y=P:i.y>W&&(i.y=W)}return i}}),qe=t=>t.getBoundingClientRect().width!==t.clientWidth?(t.getBoundingClientRect().width-t.clientWidth)/2:0,Ue=t=>t.getBoundingClientRect().height!==t.clientHeight?(t.getBoundingClientRect().height-t.clientHeight)/2:0,_e=(t,o)=>{const n=M(t),r=[];if(n!==null){const a=()=>o();n.addEventListener("scroll",a,!1),r.push(()=>n.removeEventListener("scroll",a,!1))}if(typeof window<"u"){const a=()=>o(),f=()=>o();window.addEventListener("scroll",a,!1),window.addEventListener("resize",f,!1),r.push(()=>window.removeEventListener("scroll",a,!1)),r.push(()=>window.removeEventListener("resize",f,!1))}if(typeof ResizeObserver<"u"&&t instanceof HTMLElement){const a=new ResizeObserver(()=>o());a.observe(t),r.push(()=>a.disconnect())}return()=>r.forEach(a=>a())},Ze=(t,o,n={})=>{const r=N(t,o,n);return{x:r.left-o.getBoundingClientRect().width/2+r.width/2,y:r.top-o.getBoundingClientRect().height,placement:"top"}},Je=(t,o,n={})=>{const r=N(t,o,n);return{x:r.left,y:r.top-o.getBoundingClientRect().height,placement:"top-start"}},Qe=(t,o,n={})=>{const r=N(t,o,n);return{x:r.left-o.getBoundingClientRect().width+r.width,y:r.top-o.getBoundingClientRect().height,placement:"top-end"}},eo=(t,o,n={})=>{const r=N(t,o,n);return{x:r.left+r.width,y:r.top-o.getBoundingClientRect().height/2+r.height/2,placement:"right"}},oo=(t,o,n={})=>{const r=N(t,o,n);return{x:r.left+r.width,y:r.top,placement:"right-start"}},to=(t,o,n={})=>{const r=N(t,o,n);return{x:r.left+r.width,y:r.top+r.height-o.getBoundingClientRect().height,placement:"right-end"}},ro=(t,o,n={})=>{const r=N(t,o,n);return{x:r.left+r.width/2-o.getBoundingClientRect().width/2,y:r.top+r.height,placement:"bottom"}},no=(t,o,n={})=>{const r=N(t,o,n);return{x:r.left,y:r.top+r.height,placement:"bottom-start"}},ao=(t,o,n={})=>{const r=N(t,o,n);return{x:r.left-o.getBoundingClientRect().width+r.width,y:r.top+r.height,placement:"bottom-end"}},lo=(t,o,n={})=>{const r=N(t,o,n);return{x:r.left-o.getBoundingClientRect().width,y:r.top+r.height/2-o.getBoundingClientRect().height/2,placement:"left"}},io=(t,o,n={})=>{const r=N(t,o,n);return{x:r.left-o.getBoundingClientRect().width,y:r.top,placement:"left-start"}},so=(t,o,n={})=>{const r=N(t,o,n);return{x:r.left-o.getBoundingClientRect().width,y:r.top+r.height-o.getBoundingClientRect().height,placement:"left-end"}},Q=(t,o,n,r={})=>{switch(n){case"top":return Ze(t,o,r);case"top-start":return Je(t,o,r);case"top-end":return Qe(t,o,r);case"right":return eo(t,o,r);case"right-start":return oo(t,o,r);case"right-end":return to(t,o,r);case"bottom":return ro(t,o,r);case"bottom-start":return no(t,o,r);case"bottom-end":return ao(t,o,r);case"left":return lo(t,o,r);case"left-start":return io(t,o,r);case"left-end":return so(t,o,r);default:return{x:0,y:0,placement:""}}},co=(t,o,n,r={})=>{if(I(r,o)){if(typeof window>"u")return!0;const s=t.x,b=t.y,u=s+o.clientWidth,p=b+o.clientHeight;return s>=0&&b>=0&&u<=window.innerWidth&&p<=window.innerHeight}if(M(n)!==null)return O(t.y,o,null,r)>0&&H(t.x,o,null,r)>0&&A(t.y,o,null,r)>0&&D(t.x,o,null,r)>0;if(typeof window>"u")return!0;const a=window.innerWidth,f=window.innerHeight,c=(n instanceof HTMLElement?n.offsetParent:null)||o.offsetParent;if(c){const s=c.getBoundingClientRect(),b=s.left+t.x,u=s.top+t.y,p=b+o.clientWidth,y=u+o.clientHeight;return b>=0&&u>=0&&p<=a&&y<=f}const v=t.x,l=t.y,d=v+o.clientWidth,i=l+o.clientHeight;return v>=0&&l>=0&&d<=a&&i<=f},q=t=>t.startsWith("right")?"right":t.startsWith("left")?"left":t.startsWith("top")?"top":"bottom",fo=(t,o,n)=>q(o)===t&&n.includes(o)?o:n.find(r=>q(r)===t)??n[0],vo=(t,o,n={})=>{if(typeof window>"u")return{top:0,right:0,bottom:0,left:0};const r=I(n,o)?null:M(t),a=t.getBoundingClientRect(),f=r?r.getBoundingClientRect():{top:0,left:0,right:window.innerWidth,bottom:window.innerHeight};return{top:a.top-f.top,right:f.right-a.right,bottom:f.bottom-a.bottom,left:a.left-f.left}},ye=(t,o,n={})=>new Promise(r=>{var a,f;const c=n.placement?n.placement:"bottom",v={x:0,y:0,placement:c,middlewareData:{}},l=Q(t,o,c,n);v.x=l.x,v.y=l.y,v.placement=l.placement;const d=v.x,i=v.y,s=Xe(t);(a=n.middleware)==null||a.forEach(y=>{const g=y.fn({x:v.x,y:v.y,options:n,primaryX:d,primaryY:i,floating:o,placement:v.placement,reference:t,scrollDirection:s});v.x=g.x,v.y=g.y,v.placement=g.placement,y.name==="arrow"&&(g.baseX=g.x,g.baseY=g.y,g.x=g.arrowX??g.x,g.y=g.arrowY??g.y),v.middlewareData[y.name]=g});const b=Q(t,o,v.placement,n),u=Y(n,"offset"),p=u?(f=u.params)==null?void 0:f.value:0;if(Number.isFinite(v.x)||(v.x=b.x),!Number.isFinite(v.y))if(I(n,o)){const y=t.getBoundingClientRect(),g=o.getBoundingClientRect().height;v.placement.startsWith("top")?v.y=y.top-g-p:v.placement.startsWith("bottom")?v.y=y.bottom+p:v.y=b.y}else v.y=b.y;r(v)}),uo=["disabled","aria-expanded","onKeydown"],bo=["data-placement"],po=["disabled","aria-selected","onClick"],ho=e.defineComponent({__name:"select",props:{modelValue:{default:void 0},options:{default:()=>[]},optionLabel:{default:"label"},optionValue:{default:"value"},placeholder:{default:""},disabled:{type:Boolean,default:!1},variant:{default:"filled"},size:{default:"normal"}},emits:["update:modelValue","change","focus","blur"],setup(t,{emit:o}){let n=0;const r=o,a=t,f=e.ref(null),c=e.ref(null),v=e.ref(null),l=e.ref(!1),d=e.ref("bottom"),i=e.ref("bottom"),s=`vf-select-panel-${++n}`;let b=null;const u=e.computed(()=>a.options.map(h=>({label:h[a.optionLabel],value:h[a.optionValue],disabled:h.disabled}))),p=e.computed(()=>u.value.find(h=>h.value===a.modelValue)),y=e.computed(()=>{var h;return((h=p.value)==null?void 0:h.label)??""}),g=e.computed(()=>{const h=["vf-select",`vf-select_${a.variant}`,l.value?"vf-select_open":""];return a.size!=="normal"&&h.push(`vf-select_${a.size}`),a.disabled&&h.push("vf-select_disabled"),h.filter(Boolean)}),x=h=>h.value===a.modelValue,F=h=>{h.disabled||(r("update:modelValue",h.value),r("change",h.value),k())},B=h=>r("focus",h),z=h=>r("blur",h),k=()=>{l.value=!1,d.value="bottom",i.value="bottom"},C=()=>{a.disabled||(l.value=!l.value,l.value&&(d.value="bottom",i.value="bottom"))},V=async()=>{var h,_;l.value||(l.value=!0,await e.nextTick()),(_=(h=v.value)==null?void 0:h.querySelector(".vf-select__option:not(.is-disabled)"))==null||_.focus()},S=h=>{var $;if(!l.value||!f.value)return;const _=h.target;f.value.contains(_)||($=v.value)!=null&&$.contains(_)||k()},m=()=>{if(!c.value||!v.value)return;const h=c.value,_=v.value,$=async()=>{const{x:R,y:P,placement:W}=await ye(h,_,{placement:d.value,strategy:"fixed",middleware:[ge(2),pe({placements:["bottom","top"]})]});i.value=W??d.value,_.style.minWidth=`${h.getBoundingClientRect().width}px`,_.style.left=`${R}px`,_.style.top=`${P}px`},E=async()=>{await $()},T=_e(h,()=>{E()}),L=()=>{E()};document.addEventListener("scroll",L,!0),window.addEventListener("resize",L,!1),b={update:E,destroy:()=>{T(),document.removeEventListener("scroll",L,!0),window.removeEventListener("resize",L,!1)}},b.update()};return e.watch(l,async h=>{if(!h){b&&(b.destroy(),b=null);return}await e.nextTick(),b||m(),b==null||b.update()}),e.watch(()=>a.options,()=>{b==null||b.update()},{deep:!0}),e.onMounted(()=>{document.addEventListener("click",S)}),e.onBeforeUnmount(()=>{document.removeEventListener("click",S),b==null||b.destroy(),b=null}),(h,_)=>(e.openBlock(),e.createElementBlock("div",{ref_key:"root",ref:f,class:e.normalizeClass(g.value)},[e.createElementVNode("button",{ref_key:"trigger",ref:c,class:"vf-select__control",type:"button",disabled:h.disabled,"aria-expanded":l.value,"aria-controls":s,"aria-haspopup":"listbox",onClick:C,onKeydown:[e.withKeys(e.withModifiers(V,["prevent"]),["down"]),e.withKeys(e.withModifiers(C,["prevent"]),["enter"]),e.withKeys(e.withModifiers(k,["prevent"]),["esc"])],onFocus:B,onBlur:z},[e.createElementVNode("span",{class:e.normalizeClass(["vf-select__label",{"vf-select__label_placeholder":!y.value}])},e.toDisplayString(y.value||h.placeholder),3),_[0]||(_[0]=e.createElementVNode("span",{class:"vf-select__chevron","aria-hidden":"true"},"▾",-1))],40,uo),(e.openBlock(),e.createBlock(e.Teleport,{to:"body"},[e.withDirectives(e.createElementVNode("div",{id:s,ref_key:"panel",ref:v,class:"vf-select__panel",role:"listbox","data-placement":i.value},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(u.value,$=>(e.openBlock(),e.createElementBlock("button",{key:$.value,class:e.normalizeClass(["vf-select__option",{"is-active":x($),"is-disabled":$.disabled}]),type:"button",role:"option",disabled:$.disabled,"aria-selected":x($),onClick:E=>F($)},e.toDisplayString($.label),11,po))),128))],8,bo),[[e.vShow,l.value]])]))],2))}}),mo=["checked","disabled"],go={key:0,class:"vf-checkbox__label"},_o=e.defineComponent({__name:"checkbox",props:{modelValue:{type:Boolean,default:!1},label:{default:""},disabled:{type:Boolean,default:!1},variant:{default:"filled"}},emits:["update:modelValue","change"],setup(t,{emit:o}){const n=o,r=t,a=e.computed(()=>{const c=["vf-checkbox",`vf-checkbox_${r.variant}`];return r.disabled&&c.push("vf-checkbox_disabled"),c}),f=c=>{const v=c.target;n("update:modelValue",v.checked),n("change",c)};return(c,v)=>(e.openBlock(),e.createElementBlock("label",{class:e.normalizeClass(a.value)},[e.createElementVNode("input",{class:"vf-checkbox__control",type:"checkbox",checked:c.modelValue,disabled:c.disabled,onChange:f},null,40,mo),v[0]||(v[0]=e.createElementVNode("span",{class:"vf-checkbox__box"},null,-1)),c.label||c.$slots.default?(e.openBlock(),e.createElementBlock("span",go,[e.renderSlot(c.$slots,"default",{},()=>[e.createTextVNode(e.toDisplayString(c.label),1)])])):e.createCommentVNode("",!0)],2))}}),yo=["checked","disabled"],ko={key:0,class:"vf-switch__label"},wo=e.defineComponent({__name:"switch",props:{modelValue:{type:Boolean,default:!1},label:{default:""},disabled:{type:Boolean,default:!1}},emits:["update:modelValue","change"],setup(t,{emit:o}){const n=o,r=t,a=e.computed(()=>{const c=["vf-switch"];return r.disabled&&c.push("vf-switch_disabled"),c}),f=c=>{const v=c.target;n("update:modelValue",v.checked),n("change",c)};return(c,v)=>(e.openBlock(),e.createElementBlock("label",{class:e.normalizeClass(a.value)},[e.createElementVNode("input",{class:"vf-switch__control",type:"checkbox",checked:c.modelValue,disabled:c.disabled,onChange:f},null,40,yo),v[0]||(v[0]=e.createElementVNode("span",{class:"vf-switch__track"},[e.createElementVNode("span",{class:"vf-switch__thumb"})],-1)),c.label||c.$slots.default?(e.openBlock(),e.createElementBlock("span",ko,[e.renderSlot(c.$slots,"default",{},()=>[e.createTextVNode(e.toDisplayString(c.label),1)])])):e.createCommentVNode("",!0)],2))}}),xo={class:"vf-popover"},Co=["aria-expanded","onKeydown"],Bo=e.defineComponent({__name:"popover",emits:["click","onClick"],setup(t,{expose:o,emit:n}){const r=n,a=e.reactive({visible:!1});let f=0;const c=`vf-popover-panel-${++f}`,v=()=>a.visible=!0,l=()=>a.visible=!1,d=()=>a.visible=!a.visible,i=()=>{d(),r("click"),r("onClick")};return o({show:v,hide:l,toggle:d}),(s,b)=>(e.openBlock(),e.createElementBlock("div",xo,[e.createElementVNode("div",{class:"vf-popover__button",role:"button",tabindex:"0","aria-haspopup":"dialog","aria-expanded":a.visible,"aria-controls":c,onClick:i,onKeydown:[e.withKeys(e.withModifiers(i,["prevent"]),["enter"]),e.withKeys(e.withModifiers(i,["prevent"]),["space"])]},[e.renderSlot(s.$slots,"button")],40,Co),e.withDirectives(e.createVNode(fe,{id:c,class:"vf-popover__wrapper"},e.createSlots({default:e.withCtx(()=>[b[0]||(b[0]=e.createElementVNode("div",{class:"vf-popover__arrow"},null,-1))]),_:2},[s.$slots.default?{name:"default",fn:e.withCtx(()=>[e.renderSlot(s.$slots,"default")]),key:"0"}:void 0,s.$slots.header||s.$slots.popoverHeader?{name:"header",fn:e.withCtx(()=>[e.renderSlot(s.$slots,"header"),s.$slots.header?e.createCommentVNode("",!0):e.renderSlot(s.$slots,"popoverHeader",{key:0})]),key:"1"}:void 0,s.$slots.body||s.$slots.popoverBody?{name:"body",fn:e.withCtx(()=>[e.renderSlot(s.$slots,"body"),s.$slots.body?e.createCommentVNode("",!0):e.renderSlot(s.$slots,"popoverBody",{key:0})]),key:"2"}:void 0,s.$slots.footer||s.$slots.popoverFooter?{name:"footer",fn:e.withCtx(()=>[e.renderSlot(s.$slots,"footer"),s.$slots.footer?e.createCommentVNode("",!0):e.renderSlot(s.$slots,"popoverFooter",{key:0})]),key:"3"}:void 0]),1536),[[e.vShow,a.visible]])]))}}),zo=["aria-labelledby","aria-describedby"],$o={key:0,class:"vf-modal__header"},Fo={key:0,class:"vf-modal__title"},So={key:3,class:"vf-modal__footer"},Vo=e.defineComponent({__name:"modal",props:{modelValue:{type:Boolean,default:!1},title:{default:""},closeOnOverlay:{type:Boolean,default:!0},closeOnEsc:{type:Boolean,default:!0},showClose:{type:Boolean,default:!0},lockScroll:{type:Boolean,default:!0},size:{default:"md"}},emits:["update:modelValue","open","close"],setup(t,{expose:o,emit:n}){const r=n,a=t;let f=0,c=0,v="",l=null;const d=e.ref(null),i=e.useSlots(),s=`vf-modal-title-${++f}`,b=`vf-modal-body-${f}`,u=e.computed(()=>!!a.title||!!i.header),p=e.computed(()=>!!i.body||!!i.default),y=e.computed(()=>{const m=["vf-modal"];return a.size!=="md"&&m.push(`vf-modal_${a.size}`),m}),g=()=>r("update:modelValue",!0),x=()=>{r("update:modelValue",!1),r("close")},F=()=>{a.closeOnOverlay&&x()},B=m=>{!a.modelValue||!a.closeOnEsc||m.key==="Escape"&&(m.preventDefault(),x())},z=()=>d.value?Array.from(d.value.querySelectorAll('a[href],button:not([disabled]),textarea:not([disabled]),input:not([disabled]),select:not([disabled]),[tabindex]:not([tabindex="-1"])')).filter(h=>!h.hasAttribute("disabled")&&!h.getAttribute("aria-hidden")):[],k=()=>{var h;const m=z();m.length?m[0].focus():(h=d.value)==null||h.focus()},C=m=>{var T;if(m.key!=="Tab")return;const h=z();if(!h.length){m.preventDefault(),(T=d.value)==null||T.focus();return}const _=h[0],$=h[h.length-1],E=document.activeElement;if(m.shiftKey&&E===_){m.preventDefault(),$.focus();return}!m.shiftKey&&E===$&&(m.preventDefault(),_.focus())},V=()=>{!a.lockScroll||typeof document>"u"||(c===0&&(v=document.body.style.overflow,document.body.style.overflow="hidden"),c+=1)},S=()=>{!a.lockScroll||typeof document>"u"||(c=Math.max(0,c-1),c===0&&(document.body.style.overflow=v))};return e.watch(()=>a.modelValue,async m=>{m?(typeof document<"u"&&(l=document.activeElement),V(),r("open"),await e.nextTick(),k(),typeof document<"u"&&document.addEventListener("keydown",B)):(S(),typeof document<"u"&&(document.removeEventListener("keydown",B),l==null||l.focus()))},{immediate:!0}),e.onBeforeUnmount(()=>{S(),typeof document<"u"&&document.removeEventListener("keydown",B)}),o({open:g,close:x}),(m,h)=>(e.openBlock(),e.createBlock(e.Teleport,{to:"body"},[e.withDirectives(e.createElementVNode("div",{class:e.normalizeClass(y.value),role:"presentation"},[e.createElementVNode("div",{class:"vf-modal__overlay",onClick:F}),e.createElementVNode("div",{ref_key:"panel",ref:d,class:"vf-modal__panel",role:"dialog","aria-modal":"true","aria-labelledby":u.value?s:void 0,"aria-describedby":p.value?b:void 0,tabindex:"-1",onKeydown:C},[u.value?(e.openBlock(),e.createElementBlock("div",$o,[e.createElementVNode("div",{id:s,class:"vf-modal__header-content"},[e.renderSlot(m.$slots,"header",{},()=>[m.title?(e.openBlock(),e.createElementBlock("h3",Fo,e.toDisplayString(m.title),1)):e.createCommentVNode("",!0)])])])):e.createCommentVNode("",!0),m.showClose?e.renderSlot(m.$slots,"close",{key:1,close:x},()=>[e.createElementVNode("button",{type:"button",class:"vf-modal__close","aria-label":"Close",onClick:x},"×")]):e.createCommentVNode("",!0),m.$slots.body||m.$slots.default?(e.openBlock(),e.createElementBlock("div",{key:2,id:b,class:"vf-modal__body"},[e.renderSlot(m.$slots,"body"),m.$slots.body?e.createCommentVNode("",!0):e.renderSlot(m.$slots,"default",{key:0})])):e.createCommentVNode("",!0),m.$slots.footer?(e.openBlock(),e.createElementBlock("div",So,[e.renderSlot(m.$slots,"footer")])):e.createCommentVNode("",!0)],40,zo)],2),[[e.vShow,m.modelValue]])]))}}),Eo=["data-placement"],To={class:"vf-tooltip__content"},No={key:0,class:"vf-tooltip__arrow","aria-hidden":"true"},Ro=e.defineComponent({__name:"tooltip",props:{text:{default:""},placement:{default:"top"},disabled:{type:Boolean,default:!1},arrow:{type:Boolean,default:!1}},setup(t){const o=t;let n=0;const r=e.ref(null),a=e.ref(null),f=e.ref(!1),c=e.ref("top"),v=`vf-tooltip-${++n}`;let l=null;const d=()=>{o.disabled||(f.value=!0)},i=()=>{f.value=!1},s=()=>{if(!r.value||!a.value)return;const u=r.value,p=a.value,y=async()=>{const{x:B,y:z,placement:k}=await ye(u,p,{placement:o.placement,strategy:"fixed",middleware:[ge(8),pe(),Ge()]});c.value=k??o.placement,p.style.left=`${B}px`,p.style.top=`${z}px`},g=async()=>{await y()},x=_e(u,()=>{g()}),F=()=>{g()};document.addEventListener("scroll",F,!0),window.addEventListener("resize",F,!1),l={update:g,destroy:()=>{x(),document.removeEventListener("scroll",F,!0),window.removeEventListener("resize",F,!1)}},l.update()};e.watch(f,async u=>{if(!u){l&&(l.destroy(),l=null);return}l||s(),l==null||l.update()}),e.onMounted(()=>{f.value&&s()}),e.onBeforeUnmount(()=>{l==null||l.destroy(),l=null});const b=e.computed(()=>!!o.text||!!(a.value&&a.value.textContent));return e.watch(b,u=>{u||(f.value=!1)}),(u,p)=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[e.createElementVNode("span",{ref_key:"trigger",ref:r,class:"vf-tooltip__trigger","aria-describedby":v,onMouseenter:d,onMouseleave:i,onFocus:d,onBlur:i},[e.renderSlot(u.$slots,"default")],544),(e.openBlock(),e.createBlock(e.Teleport,{to:"body"},[e.withDirectives(e.createElementVNode("div",{id:v,ref_key:"panel",ref:a,class:"vf-tooltip",role:"tooltip","data-placement":c.value},[e.createElementVNode("span",To,[e.renderSlot(u.$slots,"content",{},()=>[e.createTextVNode(e.toDisplayString(u.text),1)])]),u.arrow?(e.openBlock(),e.createElementBlock("span",No)):e.createCommentVNode("",!0)],8,Eo),[[e.vShow,f.value]])]))],64))}}),Lo=["dark","light","theme","preset","colors","components","colorScheme"],Wo=t=>{const o=t.replace(/([A-Z])/g,"-$1");return o.charAt(0).toUpperCase()+o.slice(1)},Mo=t=>t.filter(o=>!Lo.includes(o)).map(o=>Wo(o)).join("-").toLowerCase(),ae=t=>t.join("."),Oo=t=>/^#([0-9a-fA-F]{3}|[0-9a-fA-F]{6})$/.test(t),le=t=>{if(!Oo(t))return null;if(t.length===4){const o=t[1],n=t[2],r=t[3];return`#${o}${o}${n}${n}${r}${r}`}return t.toLowerCase()},ke=t=>{const o=le(t);if(!o)return[0,0,0];const n=parseInt(o.slice(1),16),r=n>>16&255,a=n>>8&255,f=n&255;return[r,a,f]},we=t=>{const[o,n,r]=ke(t);return`${o}, ${n}, ${r}`},Ho=(t,o,n)=>{const r=t/255,a=o/255,f=n/255,c=Math.max(r,a,f),v=Math.min(r,a,f),l=c-v;let d=0,i=0;const s=(c+v)/2;if(l!==0){switch(i=l/(1-Math.abs(2*s-1)),c){case r:d=(a-f)/l%6;break;case a:d=(f-r)/l+2;break;case f:d=(r-a)/l+4;break}d*=60,d<0&&(d+=360)}return[d,i*100,s*100]},Do=(t,o,n)=>{const r=o/100,a=n/100,f=(1-Math.abs(2*a-1))*r,c=f*(1-Math.abs(t/60%2-1)),v=a-f/2;let l=0,d=0,i=0;t>=0&&t<60?(l=f,d=c,i=0):t>=60&&t<120?(l=c,d=f,i=0):t>=120&&t<180?(l=0,d=f,i=c):t>=180&&t<240?(l=0,d=c,i=f):t>=240&&t<300?(l=c,d=0,i=f):(l=f,d=0,i=c);const s=Math.round((l+v)*255),b=Math.round((d+v)*255),u=Math.round((i+v)*255);return[s,b,u]},Po=(t,o,n)=>`#${[t,o,n].map(r=>r.toString(16).padStart(2,"0")).join("")}`,Io=(t,o,n)=>Math.min(n,Math.max(o,t)),Ao=(t,o)=>{const n=le(t);if(!n)return t;const[r,a,f]=ke(n),[c,v,l]=Ho(r,a,f),i=(o-5)*7,s=Io(l+i,0,100),[b,u,p]=Do(c,v,s);return Po(b,u,p)},ee=t=>!!t&&typeof t=="object"&&!Array.isArray(t),ie=(t,o)=>{if(!o)return{...t};const n={...t};for(const r in o){const a=o[r],f=t[r];ee(f)&&ee(a)?n[r]=ie(f,a):n[r]=a}return n},jo=t=>{if(!t)return null;if(ee(t)&&"preset"in t){const o=t;return{preset:o.preset??{},overrides:o.overrides,selector:o.selector,darkSelector:o.darkSelector,strict:o.strict}}return{preset:t}},Yo=t=>{const o=[],n=[],r=[],a=[],f=l=>r.push(l),c=l=>a.push(l),v=(l,d)=>{if(!(!l||typeof l!="object"))for(const i in l){const s=l[i],b=d.concat([i]);if(ee(s)){v(s,b);continue}if(s&&typeof s=="object"){c(`Theme value "${ae(b)}" is not a plain object or string and will be ignored.`);continue}if(typeof s!="string"){c(`Theme value "${ae(b)}" is not a string and will be ignored.`);continue}const p=b.includes("colorScheme")&&b.includes("dark")?n:o,y=Mo(b);if(p.push(`--vf-${y}: ${s}`),b.includes("colors")){const g=le(s);if(!g){f(`Theme color "${ae(b)}" is not hex. Shade variables will not be generated for it.`);continue}if(p.push(`--vf-${y}-rgb: ${we(g)}`),i!=="white")for(let x=1;x<10;++x){const F=Ao(g,x);p.push(`--vf-${y}-${x}00: ${F}`),p.push(`--vf-${y}-${x}00-rgb: ${we(F)}`)}}}};return v(t,[]),{baseVars:o,darkVars:n,warnings:r,errors:a}},Ko=t=>{if(typeof document>"u")return null;const o=document.getElementById(t);if(o&&o.tagName.toLowerCase()==="style")return o;const n=document.createElement("style");return n.id=t,document.head.appendChild(n),n},Xo=t=>({selector:t.selector??":root",darkSelector:t.darkSelector??":root[data-theme=dark]"}),Go=(t,o,n,r)=>{const{baseVars:a,darkVars:f,warnings:c,errors:v}=Yo(t),l=Ko("vueforge-theme");if(!l)return;if(v.length){if(r)throw new Error(`[VueForge] ${v.join(" ")}`);for(const i of v)console.warn(`[VueForge] ${i}`)}if(c.length)for(const i of c)console.warn(`[VueForge] ${i}`);const d=[];a.length&&d.push(`${o} { ${a.join(";")} }`),f.length&&d.push(`${n} { ${f.join(";")} }`),l.textContent=d.join(`
3
- `)};let j=null;const se=t=>{const o=jo(t);if(!o)return;const n=ie(o.preset,o.overrides),{selector:r,darkSelector:a}=Xo(o);j={...o},Go(n,r,a,o.strict)},qo=t=>{if(!j)return;const o=t.overrides===void 0?j.overrides:ie(j.overrides??{},t.overrides??{}),n={preset:t.preset??j.preset,overrides:o,selector:t.selector??j.selector,darkSelector:t.darkSelector??j.darkSelector};se(n)},Uo=()=>j?{...j}:null,Zo={install(t,o={}){o.theme&&se(o.theme)}},xe={colors:{white:"#ffffff",green:"#0cbc87",red:"#d6293e",yellow:"#f7c32e",sky:"#0ea5e9",blue:"#007bff",purple:"#6f42c1",gray:"#adb5bd"},borderWidth:"1px",controls:{height:"2rem",paddingY:"0.25rem",paddingX:"0.6rem",backgroundColor:"var(--vf-bg-soft-color)"},radii:{sm:"4px",md:"6px",lg:"10px"},typography:{fontSize:"1rem",lineHeight:"1.4"},states:{disabledOpacity:"0.6",focusRingShadow:"0 0 0 3px rgba(var(--vf-blue-600-rgb), 0.12)"},sizes:{sm:{fontSize:"0.875rem",paddingY:"0.2rem",paddingX:"0.5rem"},lg:{fontSize:"1.125rem",paddingY:"0.5rem",paddingX:"1rem"}},colorScheme:{light:{bgColor:"#ffffff",bgSoftColor:"#f9f9f9",textColor:"rgba(60, 60, 67)",secondaryTextColor:"rgba(60, 60, 67, .78)",borderColor:"#c2c2c4",gutterColor:"#e2e2e3",dividerColor:"#e2e2e3"},dark:{bgColor:"#1a1a1a",bgSoftColor:"#242424",textColor:"rgba(255, 255, 255, .87)",secondaryTextColor:"rgba(235, 235, 235, .6)",borderColor:"#3c3f44",gutterColor:"#000000",dividerColor:"#2e2e32"}}},Jo={...xe,components:{base:xe,button:{fontSize:"var(--vf-typography-font-size)",padding:"var(--vf-controls-padding-y) var(--vf-controls-padding-x)",borderRadius:"var(--vf-radii-md)",roundedBorderRadius:"2rem",iconGap:"6px",small:{fontSize:"var(--vf-sizes-sm-font-size)",padding:"var(--vf-sizes-sm-padding-y) var(--vf-sizes-sm-padding-x)"},large:{fontSize:"var(--vf-sizes-lg-font-size)",padding:"var(--vf-sizes-lg-padding-y) var(--vf-sizes-lg-padding-x)"},colorScheme:{light:{primary:{color:"#FFFFFF",hoverColor:"#FFFFFF",borderColor:"var(--vf-blue)",activeColor:"#FFFFFF",backgroundColor:"var(--vf-blue)",hoverBorderColor:"var(--vf-blue-600)",activeBorderColor:"var(--vf-blue-700)",hoverBackgroundColor:"var(--vf-blue-600)",activeBackgroundColor:"var(--vf-blue-700)"},secondary:{color:"#FFFFFF",hoverColor:"#FFFFFF",borderColor:"var(--vf-gray)",activeColor:"#FFFFFF",backgroundColor:"var(--vf-gray)",hoverBorderColor:"var(--vf-gray-600)",activeBorderColor:"var(--vf-gray-700)",hoverBackgroundColor:"var(--vf-gray-600)",activeBackgroundColor:"var(--vf-gray-700)"},success:{color:"#FFFFFF",hoverColor:"#FFFFFF",borderColor:"var(--vf-green)",activeColor:"#FFFFFF",backgroundColor:"var(--vf-green)",hoverBorderColor:"var(--vf-green-600)",activeBorderColor:"var(--vf-green-700)",hoverBackgroundColor:"var(--vf-green-600)",activeBackgroundColor:"var(--vf-green-700)"},danger:{color:"#FFFFFF",hoverColor:"#FFFFFF",borderColor:"var(--vf-red)",activeColor:"#FFFFFF",backgroundColor:"var(--vf-red)",hoverBorderColor:"var(--vf-red-600)",activeBorderColor:"var(--vf-red-700)",hoverBackgroundColor:"var(--vf-red-600)",activeBackgroundColor:"var(--vf-red-700)"},warning:{color:"#FFFFFF",hoverColor:"#FFFFFF",borderColor:"var(--vf-yellow)",activeColor:"#FFFFFF",backgroundColor:"var(--vf-yellow)",hoverBorderColor:"var(--vf-yellow-600)",activeBorderColor:"var(--vf-yellow-700)",hoverBackgroundColor:"var(--vf-yellow-600)",activeBackgroundColor:"var(--vf-yellow-700)"},info:{color:"#FFFFFF",hoverColor:"#FFFFFF",borderColor:"var(--vf-sky)",activeColor:"#FFFFFF",backgroundColor:"var(--vf-sky)",hoverBorderColor:"var(--vf-sky-600)",activeBorderColor:"var(--vf-sky-700)",hoverBackgroundColor:"var(--vf-sky-600)",activeBackgroundColor:"var(--vf-sky-700)"},text:{primary:{color:"var(--vf-blue)",hoverBackgroundColor:"rgba(var(--vf-blue-600-rgb), .1)"},secondary:{color:"var(--vf-gray)",hoverBackgroundColor:"rgba(var(--vf-gray-600-rgb), .1)"},success:{color:"var(--vf-green)",hoverBackgroundColor:"rgba(var(--vf-green-600-rgb), .1)"},danger:{color:"var(--vf-red)",hoverBackgroundColor:"rgba(var(--vf-red-600-rgb), .1)"},warning:{color:"var(--vf-yellow)",hoverBackgroundColor:"rgba(var(--vf-yellow-600-rgb), .1)"},info:{color:"var(--vf-sky)",hoverBackgroundColor:"rgba(var(--vf-sky-600-rgb), .1)"}},outlined:{primary:{color:"var(--vf-blue)",borderColor:"rgba(var(--vf-blue-rgb), .4)",hoverBackgroundColor:"rgba(var(--vf-blue-600-rgb), .1)"},secondary:{color:"var(--vf-gray)",borderColor:"rgba(var(--vf-gray-rgb), .4)",hoverBackgroundColor:"rgba(var(--vf-gray-600-rgb), .1)"},success:{color:"var(--vf-green)",borderColor:"rgba(var(--vf-green-rgb), .4)",hoverBackgroundColor:"rgba(var(--vf-green-600-rgb), .1)"},danger:{color:"var(--vf-red)",borderColor:"rgba(var(--vf-red-rgb), .4)",hoverBackgroundColor:"rgba(var(--vf-red-600-rgb), .1)"},warning:{color:"var(--vf-yellow)",borderColor:"rgba(var(--vf-yellow-rgb), .4)",hoverBackgroundColor:"rgba(var(--vf-yellow-600-rgb), .1)"},info:{color:"var(--vf-sky)",borderColor:"rgba(var(--vf-sky-rgb), .4)",hoverBackgroundColor:"rgba(var(--vf-sky-600-rgb), .1)"}}}}},card:{padding:"12px",borderColor:"var(--vf-border-color)",borderRadius:"var(--vf-radii-md)"},input:{gap:"0.5rem",fontSize:"var(--vf-typography-font-size)",padding:"var(--vf-controls-padding-y) var(--vf-controls-padding-x)",borderRadius:"var(--vf-radii-md)",borderColor:"var(--vf-border-color)",backgroundColor:"var(--vf-controls-background-color)",textColor:"var(--vf-text-color)",placeholderColor:"var(--vf-secondary-text-color)",focusBorderColor:"var(--vf-blue-600)",focusRingShadow:"var(--vf-states-focus-ring-shadow)",hoverBorderColor:"var(--vf-blue-500)",disabledOpacity:"var(--vf-states-disabled-opacity)",small:{padding:"var(--vf-sizes-sm-padding-y) var(--vf-sizes-sm-padding-x)",fontSize:"var(--vf-sizes-sm-font-size)"},large:{padding:"var(--vf-sizes-lg-padding-y) var(--vf-sizes-lg-padding-x)",fontSize:"var(--vf-sizes-lg-font-size)"}},textarea:{gap:"0.5rem",fontSize:"var(--vf-typography-font-size)",padding:"var(--vf-controls-padding-y) var(--vf-controls-padding-x)",borderRadius:"var(--vf-radii-md)",borderColor:"var(--vf-border-color)",backgroundColor:"var(--vf-controls-background-color)",textColor:"var(--vf-text-color)",placeholderColor:"var(--vf-secondary-text-color)",focusBorderColor:"var(--vf-blue-600)",focusRingShadow:"var(--vf-states-focus-ring-shadow)",hoverBorderColor:"var(--vf-blue-500)",disabledOpacity:"var(--vf-states-disabled-opacity)",minHeight:"calc(var(--vf-controls-height) * 2)",resize:"vertical",small:{padding:"var(--vf-sizes-sm-padding-y) var(--vf-sizes-sm-padding-x)",fontSize:"var(--vf-sizes-sm-font-size)"},large:{padding:"var(--vf-sizes-lg-padding-y) var(--vf-sizes-lg-padding-x)",fontSize:"var(--vf-sizes-lg-font-size)"}},link:{hoverColor:"var(--vf-blue)",activeColor:"var(--vf-blue)"},menu:{iconGap:"6px",submenuOffset:"12px",separatorThickness:"1px",separatorHeight:"1rem",separatorColor:"var(--vf-border-color)",link:{hoverColor:"var(--vf-blue)",activeColor:"var(--vf-blue)"},parent:{hoverColor:"var(--vf-secondary-text-color)",activeColor:"var(--vf-blue)"},item:{marginTop:"0.5rem",marginRight:"0.5rem",marginBottom:"0.5rem",marginLeft:"0.5rem"}},modal:{width:"90vw",maxWidth:"520px",maxHeight:"80vh",widthSm:"90vw",maxWidthSm:"420px",widthLg:"90vw",maxWidthLg:"720px",padding:"1.25rem",borderRadius:"var(--vf-radii-lg)",backgroundColor:"var(--vf-bg-color)",textColor:"var(--vf-text-color)",overlayBackgroundColor:"rgba(0, 0, 0, 0.45)",shadow:"0 12px 40px rgba(0, 0, 0, 0.2)",zIndex:"100",headerGap:"0.75rem",bodyGap:"1rem",footerGap:"0.5rem",titleFontSize:"1.125rem",titleLineHeight:"1.4",titleFontWeight:"600",closeSize:"2rem",closeRadius:"999px",closeOffset:"0.5rem",closeColor:"var(--vf-text-color)",closeFontSize:"1.25rem",closeHoverBackgroundColor:"rgba(0, 0, 0, 0.06)"},popover:{backgroundColor:"var(--vf-bg-color)"},select:{minWidth:"12rem",fontSize:"var(--vf-typography-font-size)",controlGap:"0.75rem",chevronSize:"0.9em",padding:"var(--vf-controls-padding-y) var(--vf-controls-padding-x)",borderRadius:"var(--vf-radii-md)",borderColor:"var(--vf-border-color)",backgroundColor:"var(--vf-controls-background-color)",textColor:"var(--vf-text-color)",focusBorderColor:"var(--vf-blue-600)",hoverBorderColor:"var(--vf-blue-500)",disabledOpacity:"var(--vf-states-disabled-opacity)",panelBackgroundColor:"var(--vf-bg-color)",panelBorderColor:"var(--vf-border-color)",panelPadding:"0.35rem",panelMaxHeight:"16rem",panelRadiusOffset:"2px",panelShadow:"0 10px 30px rgba(0, 0, 0, 0.12)",focusRingShadow:"var(--vf-states-focus-ring-shadow)",optionPadding:"0.5rem 0.6rem",optionBorderRadius:"var(--vf-radii-md)",optionHoverBackgroundColor:"rgba(var(--vf-blue-600-rgb), 0.08)",optionActiveBackgroundColor:"rgba(var(--vf-blue-600-rgb), 0.14)",optionActiveTextColor:"var(--vf-text-color)",small:{padding:"var(--vf-sizes-sm-padding-y) var(--vf-sizes-sm-padding-x)",fontSize:"var(--vf-sizes-sm-font-size)"},large:{padding:"var(--vf-sizes-lg-padding-y) var(--vf-sizes-lg-padding-x)",fontSize:"var(--vf-sizes-lg-font-size)"}},checkbox:{size:"1rem",gap:"0.5rem",borderRadius:"var(--vf-radii-sm)",checkBorderRadius:"2px",borderColor:"var(--vf-border-color)",backgroundColor:"var(--vf-controls-background-color)",checkedBackgroundColor:"var(--vf-blue)",checkedBorderColor:"var(--vf-blue)",checkColor:"#ffffff",textColor:"var(--vf-text-color)",disabledOpacity:"var(--vf-states-disabled-opacity)"},switch:{width:"2.25rem",height:"1.25rem",thumbSize:"1rem",gap:"0.5rem",thumbOffset:"2px",thumbTranslateOffset:"4px",backgroundColor:"var(--vf-border-color)",checkedBackgroundColor:"var(--vf-blue)",thumbColor:"#ffffff",textColor:"var(--vf-text-color)",disabledOpacity:"var(--vf-states-disabled-opacity)"},tooltip:{padding:"0.35rem 0.6rem",borderRadius:"8px",backgroundColor:"rgba(0, 0, 0, 0.8)",textColor:"#ffffff",fontSize:"0.75rem",lineHeight:"1.2",shadow:"0 8px 20px rgba(0, 0, 0, 0.2)",zIndex:"120",maxWidth:"240px",arrowSize:"8px"}}};w.Button=Oe,w.Card=fe,w.Checkbox=_o,w.DefaultTheme=Jo,w.Input=Ie,w.Link=ne,w.Menu=We,w.Modal=Vo,w.Popover=Bo,w.Select=ho,w.Switch=wo,w.Textarea=je,w.Tooltip=Ro,w.VueForge=Zo,w.getTheme=Uo,w.setTheme=se,w.updateTheme=qo,Object.defineProperty(w,Symbol.toStringTag,{value:"Module"})}));
1
+ (function(w,e){typeof exports=="object"&&typeof module<"u"?e(exports,require("vue"),require("vue-router"),require("@codemonster-ru/vueiconify")):typeof define=="function"&&define.amd?define(["exports","vue","vue-router","@codemonster-ru/vueiconify"],e):(w=typeof globalThis<"u"?globalThis:w||self,e(w.index={},w.Vue,w.VueRouter,w.index))})(this,(function(w,e,de,X){"use strict";var ce=document.createElement("style");ce.textContent=`.vf-link{color:inherit;cursor:pointer;text-decoration:none;font-size:var(--vf-typography-font-size);line-height:var(--vf-typography-line-height)}.vf-link:hover{color:var(--vf-link-hover-color)}.vf-link:active{color:var(--vf-link-active-color)}.vf-link.vf-link_disabled{cursor:not-allowed}.vf-link_active,.vf-link_partially-active{color:var(--vf-link-active-color)}.vf-card{border:var(--vf-border-width) solid var(--vf-card-border-color);border-radius:var(--vf-card-border-radius)}.vf-card__default{padding:var(--vf-card-padding)}.vf-menu{display:flex}.vf-menu_horizontal>.vf-menu__list{flex-direction:row}.vf-menu_horizontal>.vf-menu__list>.vf-menu__item{align-items:center}.vf-menu_horizontal>.vf-menu__list>.vf-menu__item:not(:first-child){margin-left:var(--vf-menu-item-margin-left)}.vf-menu_horizontal>.vf-menu__list>.vf-menu__item:not(:last-child){margin-right:var(--vf-menu-item-margin-right)}.vf-menu_horizontal>.vf-menu__list>.vf-menu__item>.vf-menu__separator{height:var(--vf-menu-separator-height);border-top:none;border-right:none;border-left:var(--vf-menu-separator-thickness) solid var(--vf-menu-separator-color);border-bottom:none}.vf-menu_vertical>.vf-menu__list{width:100%;flex-direction:column}.vf-menu_vertical>.vf-menu__list>.vf-menu__item{flex-direction:column}.vf-menu_vertical>.vf-menu__list>.vf-menu__item:not(:first-child){margin-top:var(--vf-menu-item-margin-top)}.vf-menu_vertical>.vf-menu__list>.vf-menu__item:not(:last-child){margin-bottom:var(--vf-menu-item-margin-bottom)}.vf-menu_vertical>.vf-menu__list>.vf-menu__item>.vf-menu{overflow:hidden}.vf-menu__list{margin:0;padding:0;display:flex;list-style:none}.vf-menu__separator{width:100%;height:var(--vf-menu-separator-thickness);border:none;margin:0;background-color:var(--vf-menu-separator-color)}.vf-menu__item{display:flex;font-weight:500}.vf-menu__link{display:flex;align-items:center;text-decoration:none;font-size:var(--vf-typography-font-size);line-height:var(--vf-typography-line-height)}.vf-menu__link:hover{color:var(--vf-menu-link-hover-color)}.vf-menu__parent{cursor:pointer;display:flex;align-items:center;justify-content:space-between;font-size:var(--vf-typography-font-size);line-height:var(--vf-typography-line-height)}.vf-menu__parent:hover{color:var(--vf-menu-parent-hover-color)}.vf-menu__icon{margin-right:var(--vf-menu-icon-gap)}.vf-menu__submenu.vf-menu__submenu_visible{margin-top:var(--vf-menu-submenu-offset);margin-left:var(--vf-menu-submenu-offset)}.vf-menu__submenu:not(.vf-menu__submenu_visible){height:0}.vf-button{display:inline-flex;position:relative;cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;justify-content:center;height:var(--vf-controls-height);box-sizing:border-box;padding:var(--vf-button-padding);font-size:var(--vf-button-font-size);line-height:var(--vf-typography-line-height);font-family:inherit;border-radius:var(--vf-button-border-radius);overflow:hidden}.vf-button_text{border:var(--vf-border-width) solid transparent;background-color:transparent}.vf-button_outlined{background-color:transparent}.vf-button_primary.vf-button_text{color:var(--vf-button-text-primary-color)}.vf-button_primary.vf-button_text:not(.vf-button_disabled):hover{background-color:var(--vf-button-text-primary-hover-background-color)}.vf-button_primary.vf-button_outlined{color:var(--vf-button-outlined-primary-color);border:var(--vf-border-width) solid var(--vf-button-outlined-primary-border-color)}.vf-button_primary.vf-button_outlined:not(.vf-button_disabled):hover{background-color:var(--vf-button-outlined-primary-hover-background-color)}.vf-button_primary:not(.vf-button_text):not(.vf-button_outlined){color:var(--vf-button-primary-color);border:var(--vf-border-width) solid var(--vf-button-primary-border-color);background-color:var(--vf-button-primary-background-color)}.vf-button_primary:not(.vf-button_text):not(.vf-button_outlined):not(.vf-button_disabled):hover{color:var(--vf-button-primary-hover-color);border:var(--vf-border-width) solid var(--vf-button-primary-hover-border-color);background-color:var(--vf-button-primary-hover-background-color)}.vf-button_primary:not(.vf-button_text):not(.vf-button_outlined):not(.vf-button_disabled):active{color:var(--vf-button-primary-active-color);border:var(--vf-border-width) solid var(--vf-button-primary-active-border-color);background-color:var(--vf-button-primary-active-background-color)}.vf-button_secondary.vf-button_text{color:var(--vf-button-text-secondary-color)}.vf-button_secondary.vf-button_text:not(.vf-button_disabled):hover{background-color:var(--vf-button-text-secondary-hover-background-color)}.vf-button_secondary.vf-button_outlined{color:var(--vf-button-outlined-secondary-color);border:var(--vf-border-width) solid var(--vf-button-outlined-secondary-border-color)}.vf-button_secondary.vf-button_outlined:not(.vf-button_disabled):hover{background-color:var(--vf-button-outlined-secondary-hover-background-color)}.vf-button_secondary:not(.vf-button_text):not(.vf-button_outlined){color:var(--vf-button-secondary-color);border:var(--vf-border-width) solid var(--vf-button-secondary-border-color);background-color:var(--vf-button-secondary-background-color)}.vf-button_secondary:not(.vf-button_text):not(.vf-button_outlined):not(.vf-button_disabled):hover{color:var(--vf-button-secondary-hover-color);border:var(--vf-border-width) solid var(--vf-button-secondary-hover-border-color);background-color:var(--vf-button-secondary-hover-background-color)}.vf-button_secondary:not(.vf-button_text):not(.vf-button_outlined):not(.vf-button_disabled):active{color:var(--vf-button-secondary-active-color);border:var(--vf-border-width) solid var(--vf-button-secondary-active-border-color);background-color:var(--vf-button-secondary-active-background-color)}.vf-button_success.vf-button_text{color:var(--vf-button-text-success-color)}.vf-button_success.vf-button_text:not(.vf-button_disabled):hover{background-color:var(--vf-button-text-success-hover-background-color)}.vf-button_success.vf-button_outlined{color:var(--vf-button-outlined-success-color);border:var(--vf-border-width) solid var(--vf-button-outlined-success-border-color)}.vf-button_success.vf-button_outlined:not(.vf-button_disabled):hover{background-color:var(--vf-button-outlined-success-hover-background-color)}.vf-button_success:not(.vf-button_text):not(.vf-button_outlined){color:var(--vf-button-success-color);border:var(--vf-border-width) solid var(--vf-button-success-border-color);background-color:var(--vf-button-success-background-color)}.vf-button_success:not(.vf-button_text):not(.vf-button_outlined):not(.vf-button_disabled):hover{color:var(--vf-button-success-hover-color);border:var(--vf-border-width) solid var(--vf-button-success-hover-border-color);background-color:var(--vf-button-success-hover-background-color)}.vf-button_success:not(.vf-button_text):not(.vf-button_outlined):not(.vf-button_disabled):active{color:var(--vf-button-success-active-color);border:var(--vf-border-width) solid var(--vf-button-success-active-border-color);background-color:var(--vf-button-success-active-background-color)}.vf-button_info.vf-button_text{color:var(--vf-button-text-info-color)}.vf-button_info.vf-button_text:not(.vf-button_disabled):hover{background-color:var(--vf-button-text-info-hover-background-color)}.vf-button_info.vf-button_outlined{color:var(--vf-button-outlined-info-color);border:var(--vf-border-width) solid var(--vf-button-outlined-info-border-color)}.vf-button_info.vf-button_outlined:not(.vf-button_disabled):hover{background-color:var(--vf-button-outlined-info-hover-background-color)}.vf-button_info:not(.vf-button_text):not(.vf-button_outlined){color:var(--vf-button-info-color);border:var(--vf-border-width) solid var(--vf-button-info-border-color);background-color:var(--vf-button-info-background-color)}.vf-button_info:not(.vf-button_text):not(.vf-button_outlined):not(.vf-button_disabled):hover{color:var(--vf-button-info-hover-color);border:var(--vf-border-width) solid var(--vf-button-info-hover-border-color);background-color:var(--vf-button-info-hover-background-color)}.vf-button_info:not(.vf-button_text):not(.vf-button_outlined):not(.vf-button_disabled):active{color:var(--vf-button-info-active-color);border:var(--vf-border-width) solid var(--vf-button-info-active-border-color);background-color:var(--vf-button-info-active-background-color)}.vf-button_warning.vf-button_text{color:var(--vf-button-text-warning-color)}.vf-button_warning.vf-button_text:not(.vf-button_disabled):hover{background-color:var(--vf-button-text-warning-hover-background-color)}.vf-button_warning.vf-button_outlined{color:var(--vf-button-outlined-warning-color);border:var(--vf-border-width) solid var(--vf-button-outlined-warning-border-color)}.vf-button_warning.vf-button_outlined:not(.vf-button_disabled):hover{background-color:var(--vf-button-outlined-warning-hover-background-color)}.vf-button_warning:not(.vf-button_text):not(.vf-button_outlined){color:var(--vf-button-warning-color);border:var(--vf-border-width) solid var(--vf-button-warning-border-color);background-color:var(--vf-button-warning-background-color)}.vf-button_warning:not(.vf-button_text):not(.vf-button_outlined):not(.vf-button_disabled):hover{color:var(--vf-button-warning-hover-color);border:var(--vf-border-width) solid var(--vf-button-warning-hover-border-color);background-color:var(--vf-button-warning-hover-background-color)}.vf-button_warning:not(.vf-button_text):not(.vf-button_outlined):not(.vf-button_disabled):active{color:var(--vf-button-warning-active-color);border:var(--vf-border-width) solid var(--vf-button-warning-active-border-color);background-color:var(--vf-button-warning-active-background-color)}.vf-button_danger.vf-button_text{color:var(--vf-button-text-danger-color)}.vf-button_danger.vf-button_text:not(.vf-button_disabled):hover{background-color:var(--vf-button-text-danger-hover-background-color)}.vf-button_danger.vf-button_outlined{color:var(--vf-button-outlined-danger-color);border:var(--vf-border-width) solid var(--vf-button-outlined-danger-border-color)}.vf-button_danger.vf-button_outlined:not(.vf-button_disabled):hover{background-color:var(--vf-button-outlined-danger-hover-background-color)}.vf-button_danger:not(.vf-button_text):not(.vf-button_outlined){color:var(--vf-button-danger-color);border:var(--vf-border-width) solid var(--vf-button-danger-border-color);background-color:var(--vf-button-danger-background-color)}.vf-button_danger:not(.vf-button_text):not(.vf-button_outlined):not(.vf-button_disabled):hover{color:var(--vf-button-danger-hover-color);border:var(--vf-border-width) solid var(--vf-button-danger-hover-border-color);background-color:var(--vf-button-danger-hover-background-color)}.vf-button_danger:not(.vf-button_text):not(.vf-button_outlined):not(.vf-button_disabled):active{color:var(--vf-button-danger-active-color);border:var(--vf-border-width) solid var(--vf-button-danger-active-border-color);background-color:var(--vf-button-danger-active-background-color)}.vf-button_vertical{flex-direction:column}.vf-button__icon{display:inline-block}.vf-button__icon_top+.vf-button__label{margin-top:var(--vf-button-icon-gap)}.vf-button__icon_right{order:1}.vf-button__icon_right+.vf-button__label{margin-right:var(--vf-button-icon-gap)}.vf-button__icon_bottom{order:1}.vf-button__icon_bottom+.vf-button__label{margin-bottom:var(--vf-button-icon-gap)}.vf-button__icon_left+.vf-button__label{margin-left:var(--vf-button-icon-gap)}.vf-button_disabled{opacity:var(--vf-states-disabled-opacity);cursor:default}.vf-button_rounded{border-radius:var(--vf-button-rounded-border-radius)}.vf-button_small{font-size:var(--vf-button-small-font-size);padding:var(--vf-button-small-padding)}.vf-button_large{font-size:var(--vf-button-large-font-size);padding:var(--vf-button-large-padding)}.vf-input{display:flex;align-items:center;gap:var(--vf-input-gap);height:var(--vf-controls-height);box-sizing:border-box;padding:var(--vf-input-padding);border-radius:var(--vf-input-border-radius);border:var(--vf-border-width) solid var(--vf-input-border-color);background-color:var(--vf-input-background-color);color:var(--vf-input-text-color);transition:border-color .2s ease}.vf-input__control{flex:1;border:none;background:transparent;color:inherit;font-size:var(--vf-input-font-size);line-height:var(--vf-typography-line-height);font-family:inherit;outline:none}.vf-input__control::placeholder{color:var(--vf-input-placeholder-color)}.vf-input:hover:not(.vf-input_disabled){border-color:var(--vf-input-hover-border-color)}.vf-input:focus-within:not(.vf-input_disabled){border-color:var(--vf-input-focus-border-color);box-shadow:var(--vf-input-focus-ring-shadow)}.vf-input_outlined{background-color:transparent}.vf-input_small{padding:var(--vf-input-small-padding)}.vf-input_small .vf-input__control{font-size:var(--vf-input-small-font-size)}.vf-input_large{padding:var(--vf-input-large-padding)}.vf-input_large .vf-input__control{font-size:var(--vf-input-large-font-size)}.vf-input_disabled{opacity:var(--vf-input-disabled-opacity);cursor:not-allowed}.vf-textarea{display:flex;align-items:stretch;gap:var(--vf-textarea-gap);min-height:var(--vf-textarea-min-height);box-sizing:border-box;padding:var(--vf-textarea-padding);border-radius:var(--vf-textarea-border-radius);border:var(--vf-border-width) solid var(--vf-textarea-border-color);background-color:var(--vf-textarea-background-color);color:var(--vf-textarea-text-color);transition:border-color .2s ease,box-shadow .2s ease}.vf-textarea__control{flex:1;min-height:var(--vf-textarea-min-height);border:none;background:transparent;color:inherit;font-size:var(--vf-textarea-font-size);line-height:var(--vf-typography-line-height);font-family:inherit;outline:none;resize:var(--vf-textarea-resize);width:100%;padding:0;box-sizing:border-box}.vf-textarea__control::placeholder{color:var(--vf-textarea-placeholder-color)}.vf-textarea:hover:not(.vf-textarea_disabled){border-color:var(--vf-textarea-hover-border-color)}.vf-textarea:focus-within:not(.vf-textarea_disabled){border-color:var(--vf-textarea-focus-border-color);box-shadow:var(--vf-textarea-focus-ring-shadow)}.vf-textarea_outlined{background-color:transparent}.vf-textarea_small{padding:var(--vf-textarea-small-padding)}.vf-textarea_small .vf-textarea__control{font-size:var(--vf-textarea-small-font-size)}.vf-textarea_large{padding:var(--vf-textarea-large-padding)}.vf-textarea_large .vf-textarea__control{font-size:var(--vf-textarea-large-font-size)}.vf-textarea_disabled{opacity:var(--vf-textarea-disabled-opacity);cursor:not-allowed}.vf-select{position:relative;display:inline-block;min-width:var(--vf-select-min-width);height:var(--vf-controls-height);box-sizing:border-box;border-radius:var(--vf-select-border-radius);border:var(--vf-border-width) solid var(--vf-select-border-color);background-color:var(--vf-select-background-color);color:var(--vf-select-text-color);transition:border-color .2s ease,box-shadow .2s ease}.vf-select_outlined{background-color:transparent}.vf-select__control{width:100%;padding:var(--vf-select-padding);border:none;background:transparent;color:inherit;font-size:var(--vf-select-font-size);line-height:var(--vf-typography-line-height);font-family:inherit;outline:none;display:inline-flex;align-items:center;justify-content:space-between;height:var(--vf-controls-height);box-sizing:border-box;gap:var(--vf-select-control-gap);cursor:pointer}.vf-select__label{text-align:left}.vf-select__label_placeholder{color:var(--vf-secondary-text-color)}.vf-select__chevron{font-size:var(--vf-select-chevron-size);opacity:.7}.vf-select__panel{position:fixed;z-index:50;padding:var(--vf-select-panel-padding);max-height:var(--vf-select-panel-max-height);overflow:auto;border-radius:calc(var(--vf-select-border-radius) + var(--vf-select-panel-radius-offset));border:var(--vf-border-width) solid var(--vf-select-panel-border-color);background-color:var(--vf-select-panel-background-color);box-shadow:var(--vf-select-panel-shadow);color:var(--vf-select-text-color)}.vf-select__option{width:100%;text-align:left;border:none;background:transparent;padding:var(--vf-select-option-padding);border-radius:var(--vf-select-option-border-radius);color:inherit;cursor:pointer;font-size:var(--vf-typography-font-size);line-height:var(--vf-typography-line-height);font-family:inherit}.vf-select__option:hover:not(.is-disabled),.vf-select__option:focus-visible:not(.is-disabled){background-color:var(--vf-select-option-hover-background-color);outline:none}.vf-select__option.is-active{background-color:var(--vf-select-option-active-background-color);color:var(--vf-select-option-active-text-color)}.vf-select__option.is-disabled{opacity:.6;cursor:not-allowed}.vf-select_open{border-color:var(--vf-select-focus-border-color);box-shadow:var(--vf-select-focus-ring-shadow)}.vf-select:hover:not(.vf-select_disabled){border-color:var(--vf-select-hover-border-color)}.vf-select:focus-within:not(.vf-select_disabled){border-color:var(--vf-select-focus-border-color)}.vf-select_small .vf-select__control{padding:var(--vf-select-small-padding);font-size:var(--vf-select-small-font-size)}.vf-select_large .vf-select__control{padding:var(--vf-select-large-padding);font-size:var(--vf-select-large-font-size)}.vf-select_disabled{opacity:var(--vf-select-disabled-opacity);cursor:not-allowed}.vf-select_disabled .vf-select__control{cursor:not-allowed}.vf-checkbox{display:inline-flex;align-items:center;gap:var(--vf-checkbox-gap);cursor:pointer;color:var(--vf-checkbox-text-color);font-size:var(--vf-typography-font-size);line-height:var(--vf-typography-line-height)}.vf-checkbox__control{position:absolute;opacity:0;pointer-events:none}.vf-checkbox__box{width:var(--vf-checkbox-size);height:var(--vf-checkbox-size);border:var(--vf-border-width) solid var(--vf-checkbox-border-color);border-radius:var(--vf-checkbox-border-radius);background-color:var(--vf-checkbox-background-color);display:inline-flex;align-items:center;justify-content:center;transition:background-color .2s ease,border-color .2s ease}.vf-checkbox__control:checked+.vf-checkbox__box{background-color:var(--vf-checkbox-checked-background-color);border-color:var(--vf-checkbox-checked-border-color)}.vf-checkbox__control:checked+.vf-checkbox__box:after{content:"";width:calc(var(--vf-checkbox-size) / 2);height:calc(var(--vf-checkbox-size) / 2);background-color:var(--vf-checkbox-check-color);border-radius:var(--vf-checkbox-check-border-radius)}.vf-checkbox_outlined .vf-checkbox__box{background-color:transparent}.vf-checkbox_disabled{opacity:var(--vf-checkbox-disabled-opacity);cursor:not-allowed}.vf-radio-group{display:inline-flex;flex-direction:column;gap:var(--vf-radio-group-gap)}.vf-radio-group_horizontal{flex-direction:row;flex-wrap:wrap}.vf-radio{display:inline-flex;align-items:center;gap:var(--vf-radio-gap);cursor:pointer;color:var(--vf-radio-text-color);font-size:var(--vf-typography-font-size);line-height:var(--vf-typography-line-height)}.vf-radio__control{position:absolute;opacity:0;pointer-events:none}.vf-radio__circle{width:var(--vf-radio-size);height:var(--vf-radio-size);border:var(--vf-border-width) solid var(--vf-radio-border-color);border-radius:var(--vf-radio-border-radius);background-color:var(--vf-radio-background-color);display:inline-flex;align-items:center;justify-content:center;transition:background-color .2s ease,border-color .2s ease}.vf-radio__control:checked+.vf-radio__circle{background-color:var(--vf-radio-checked-background-color);border-color:var(--vf-radio-checked-border-color)}.vf-radio__control:checked+.vf-radio__circle:after{content:"";width:var(--vf-radio-dot-size);height:var(--vf-radio-dot-size);background-color:var(--vf-radio-dot-color);border-radius:var(--vf-radio-dot-border-radius)}.vf-radio_outlined .vf-radio__circle{background-color:transparent}.vf-radio_disabled{opacity:var(--vf-radio-disabled-opacity);cursor:not-allowed}.vf-switch{display:inline-flex;align-items:center;gap:var(--vf-switch-gap);cursor:pointer;color:var(--vf-switch-text-color);font-size:var(--vf-typography-font-size);line-height:var(--vf-typography-line-height)}.vf-switch__control{position:absolute;opacity:0;pointer-events:none}.vf-switch__track{position:relative;width:var(--vf-switch-width);height:var(--vf-switch-height);border-radius:var(--vf-switch-height);background-color:var(--vf-switch-background-color);transition:background-color .2s ease}.vf-switch__thumb{position:absolute;top:50%;left:var(--vf-switch-thumb-offset);width:var(--vf-switch-thumb-size);height:var(--vf-switch-thumb-size);border-radius:50%;background-color:var(--vf-switch-thumb-color);transform:translateY(-50%);transition:transform .2s ease}.vf-switch__control:checked+.vf-switch__track{background-color:var(--vf-switch-checked-background-color)}.vf-switch__control:checked+.vf-switch__track .vf-switch__thumb{transform:translate(calc(var(--vf-switch-width) - var(--vf-switch-thumb-size) - var(--vf-switch-thumb-translate-offset)),-50%)}.vf-switch_disabled{opacity:var(--vf-switch-disabled-opacity);cursor:not-allowed}.vf-popover{position:relative}.vf-popover__button{cursor:pointer;-webkit-user-select:none;user-select:none}.vf-popover__wrapper{position:absolute;background-color:var(--vf-popover-background-color)}.vf-modal{position:fixed;top:0;right:0;bottom:0;left:0;z-index:var(--vf-modal-z-index);display:flex;align-items:center;justify-content:center}.vf-modal__overlay{position:absolute;top:0;right:0;bottom:0;left:0;background-color:var(--vf-modal-overlay-background-color)}.vf-modal__panel{position:relative;z-index:1;width:var(--vf-modal-width);max-width:var(--vf-modal-max-width);max-height:var(--vf-modal-max-height);padding:var(--vf-modal-padding);border-radius:var(--vf-modal-border-radius);background-color:var(--vf-modal-background-color);color:var(--vf-modal-text-color);box-shadow:var(--vf-modal-shadow);overflow:auto;outline:none}.vf-modal_sm .vf-modal__panel{width:var(--vf-modal-width-sm);max-width:var(--vf-modal-max-width-sm)}.vf-modal_lg .vf-modal__panel{width:var(--vf-modal-width-lg);max-width:var(--vf-modal-max-width-lg)}.vf-modal__header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--vf-modal-header-gap)}.vf-modal__title{margin:0;font-size:var(--vf-modal-title-font-size);line-height:var(--vf-modal-title-line-height);font-weight:var(--vf-modal-title-font-weight)}.vf-modal__body{margin-bottom:var(--vf-modal-body-gap)}.vf-modal__footer{display:flex;align-items:center;justify-content:flex-end;gap:var(--vf-modal-footer-gap)}.vf-modal__close{position:absolute;top:var(--vf-modal-close-offset);right:var(--vf-modal-close-offset);width:var(--vf-modal-close-size);height:var(--vf-modal-close-size);border-radius:var(--vf-modal-close-radius);border:none;background:transparent;color:var(--vf-modal-close-color);cursor:pointer;font-size:var(--vf-modal-close-font-size);line-height:1}.vf-modal__close:hover{background-color:var(--vf-modal-close-hover-background-color)}.vf-tooltip__trigger{display:inline-flex}.vf-tooltip{position:fixed;z-index:var(--vf-tooltip-z-index);padding:var(--vf-tooltip-padding);border-radius:var(--vf-tooltip-border-radius);background-color:var(--vf-tooltip-background-color);color:var(--vf-tooltip-text-color);font-size:var(--vf-tooltip-font-size);line-height:var(--vf-tooltip-line-height);box-shadow:none;filter:drop-shadow(var(--vf-tooltip-shadow));max-width:var(--vf-tooltip-max-width)}.vf-tooltip__content{position:relative;z-index:1}.vf-tooltip__arrow{position:absolute;z-index:0;--vf-tooltip-arrow-rendered-height: var(--vf-tooltip-arrow-size);--vf-tooltip-arrow-half-width: calc(var(--vf-tooltip-arrow-size) * .8);width:0;height:0;border-style:solid;pointer-events:none}.vf-tooltip[data-placement^=top] .vf-tooltip__arrow{bottom:calc(var(--vf-tooltip-arrow-rendered-height) * -1);left:50%;transform:translate(-50%);border-width:var(--vf-tooltip-arrow-rendered-height) var(--vf-tooltip-arrow-half-width) 0 var(--vf-tooltip-arrow-half-width);border-color:var(--vf-tooltip-background-color) transparent transparent transparent}.vf-tooltip[data-placement^=bottom] .vf-tooltip__arrow{top:calc(var(--vf-tooltip-arrow-rendered-height) * -1);left:50%;transform:translate(-50%);border-width:0 var(--vf-tooltip-arrow-half-width) var(--vf-tooltip-arrow-rendered-height) var(--vf-tooltip-arrow-half-width);border-color:transparent transparent var(--vf-tooltip-background-color) transparent}.vf-tooltip[data-placement^=left] .vf-tooltip__arrow{right:calc(var(--vf-tooltip-arrow-half-width) * -2);top:50%;transform:translateY(-50%);border-width:var(--vf-tooltip-arrow-half-width) var(--vf-tooltip-arrow-rendered-height) var(--vf-tooltip-arrow-half-width) 0;border-color:transparent var(--vf-tooltip-background-color) transparent transparent}.vf-tooltip[data-placement^=right] .vf-tooltip__arrow{left:calc(var(--vf-tooltip-arrow-half-width) * -2);top:50%;transform:translateY(-50%);border-width:var(--vf-tooltip-arrow-half-width) 0 var(--vf-tooltip-arrow-half-width) var(--vf-tooltip-arrow-rendered-height);border-color:transparent transparent transparent var(--vf-tooltip-background-color)}
2
+ /*$vite$:1*/`,document.head.appendChild(ce);const Be=["href","aria-disabled","tabindex"],ne=e.defineComponent({__name:"link",props:{to:{default:void 0},href:{default:void 0},url:{default:void 0},as:{default:void 0},type:{default:void 0},label:{default:""},active:{type:Boolean},disabled:{type:Boolean}},emits:["click","active","update:active","onActive"],setup(t,{emit:o}){const n=o,r=t,a=de.useRoute(),v=de.useRouter(),d=e.ref(null),c=e.computed(()=>r.href??r.url),l=e.computed(()=>r.as?r.as==="router-link"&&!r.to?"a":r.as:r.type==="router-link"||r.type==="a"?r.type==="router-link"&&!r.to?"a":r.type:r.to?"router-link":"a"),f=e.computed(()=>r.to),i=e.computed(()=>r.to?v.resolve(r.to):null),s=e.computed(()=>{if(l.value!=="router-link")return!1;const p=i.value;return p?p.name?a.matched.some(({name:y})=>y===p.name):p.fullPath?a.fullPath===p.fullPath:a.path===p.path:!1}),u=e.computed(()=>r.active===void 0?s.value:r.active),b=p=>{if(!r.disabled){n("click",p);return}p.preventDefault(),p.stopPropagation()};return e.watch(s,p=>{p&&(n("active"),n("onActive")),n("update:active",p)}),(p,y)=>{const g=e.resolveComponent("router-link");return l.value==="a"?(e.openBlock(),e.createElementBlock("a",{key:0,href:c.value,class:e.normalizeClass(["vf-link",{"vf-link_active":u.value,"vf-link_disabled":p.disabled}]),"aria-disabled":p.disabled,tabindex:p.disabled?-1:void 0,onClick:b},[p.$slots.default?e.renderSlot(p.$slots,"default",{key:0}):(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[e.createTextVNode(e.toDisplayString(p.label),1)],64))],10,Be)):(e.openBlock(),e.createBlock(g,{key:1,ref_key:"link",ref:d,to:f.value,class:e.normalizeClass(["vf-link",{"vf-link_active":u.value}]),"aria-disabled":p.disabled,tabindex:p.disabled?-1:void 0,"active-class":"vf-link_partially-active","exact-active-class":"vf-link_active",onClick:b},{default:e.withCtx(()=>[p.$slots.default?e.renderSlot(p.$slots,"default",{key:0}):(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[e.createTextVNode(e.toDisplayString(p.label),1)],64))]),_:3},8,["to","class","aria-disabled","tabindex"]))}}}),ze=(t,o)=>{const n=t.__vccOpts||t;for(const[r,a]of o)n[r]=a;return n},$e={},Fe={class:"vf-card"},Ve={key:0,class:"vf-card__default"},Se={key:1,class:"vf-card__header"},Ee={key:2,class:"vf-card__body"},Te={key:3,class:"vf-card__footer"};function Ne(t,o){return e.openBlock(),e.createElementBlock("div",Fe,[t.$slots.default?(e.openBlock(),e.createElementBlock("div",Ve,[e.renderSlot(t.$slots,"default")])):e.createCommentVNode("",!0),t.$slots.header?(e.openBlock(),e.createElementBlock("div",Se,[e.renderSlot(t.$slots,"header")])):e.createCommentVNode("",!0),t.$slots.body?(e.openBlock(),e.createElementBlock("div",Ee,[e.renderSlot(t.$slots,"body")])):e.createCommentVNode("",!0),t.$slots.footer?(e.openBlock(),e.createElementBlock("div",Te,[e.renderSlot(t.$slots,"footer")])):e.createCommentVNode("",!0)])}const fe=ze($e,[["render",Ne]]),Re={class:"vf-menu__list",role:"menu"},Le={key:1,class:"vf-menu__separator",role:"separator"},We=["aria-expanded","onClick","onKeydown"],Me=e.defineComponent({name:"VfMenu",__name:"menu",props:{items:{},orientation:{default:"vertical"}},emits:["active","onActive"],setup(t,{emit:o}){const n=o,r=t,a=e.ref([]),v=(i,s)=>`${i.label??i.to??i.href??i.url??"item"}_${s.toString()}`,d=i=>i.to?"router-link":"a",c=i=>i.map(s=>({...s,items:s.items?c(s.items):void 0})),l=i=>{i.items&&i.items.length?(a.value.map(s=>{s!==i&&(s.subMenuVisible=!1)}),i.subMenuVisible=!i.subMenuVisible):Object.prototype.hasOwnProperty.call(i,"command")&&typeof i.command=="function"&&i.command()},f=i=>{var s;for(const u in a.value){const b=a.value[u];Object.prototype.hasOwnProperty.call(b,"items")&&((s=b.items)!=null&&s.some(p=>p===i)?(b.active=!0,b.subMenuVisible=!0):(b.active=!1,b.subMenuVisible=!1))}n("active",i),n("onActive",i)};return e.watch(()=>r.items,i=>{a.value=c(i)},{deep:!0,immediate:!0}),(i,s)=>{const u=e.resolveComponent("VfMenu");return e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["vf-menu",`vf-menu_${i.orientation}`])},[e.createElementVNode("ul",Re,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(a.value,(b,p)=>(e.openBlock(),e.createElementBlock("li",{key:v(b,p),class:"vf-menu__item",role:"none"},[i.$slots[v(b,p)]?e.renderSlot(i.$slots,v(b,p),{key:0,item:{...b,class:"vf-menu__link"}}):b.separator?(e.openBlock(),e.createElementBlock("hr",Le)):b.items&&b.items.length?(e.openBlock(),e.createElementBlock(e.Fragment,{key:2},[e.createElementVNode("div",{class:e.normalizeClass(["vf-menu__parent",{"vf-menu__parent_active":b.active}]),role:"menuitem",tabindex:"0","aria-expanded":b.subMenuVisible?"true":"false",onClick:y=>l(b),onKeydown:[e.withKeys(e.withModifiers(y=>l(b),["prevent"]),["enter"]),e.withKeys(e.withModifiers(y=>l(b),["prevent"]),["space"])]},[b.icon?(e.openBlock(),e.createBlock(e.unref(X.CmIcon),{key:0,icon:b.icon,class:"vf-menu__icon"},null,8,["icon"])):e.createCommentVNode("",!0),e.createTextVNode(" "+e.toDisplayString(b.label)+" ",1),e.createVNode(e.unref(X.CmIcon),{icon:"chevronDown"})],42,We),b.items?(e.openBlock(),e.createBlock(u,{key:0,items:b.items,class:e.normalizeClass(["vf-menu__submenu",{"vf-menu__submenu_visible":b.subMenuVisible}]),onOnActive:f},null,8,["items","class"])):e.createCommentVNode("",!0)],64)):(e.openBlock(),e.createBlock(ne,{key:3,to:b.to,href:b.href??b.url,as:d(b),class:"vf-menu__link",active:b.active,disabled:b.disabled,role:"menuitem","aria-disabled":b.disabled?"true":"false",onClick:y=>l(b),onActive:y=>f(b)},{default:e.withCtx(()=>[b.icon?(e.openBlock(),e.createBlock(e.unref(X.CmIcon),{key:0,icon:b.icon,class:"vf-menu__icon"},null,8,["icon"])):e.createCommentVNode("",!0),e.createTextVNode(" "+e.toDisplayString(b.label),1)]),_:2},1032,["to","href","as","active","disabled","aria-disabled","onClick","onActive"]))]))),128))])],2)}}}),Oe=["type","disabled"],De=e.defineComponent({__name:"button",props:{to:{default:void 0},href:{default:void 0},url:{default:void 0},as:{default:void 0},icon:{default:void 0},type:{default:"button"},size:{default:"normal"},label:{default:""},loading:{type:Boolean,default:!1},rounded:{type:Boolean,default:!1},iconPos:{default:"left"},variant:{default:void 0},severity:{default:"primary"},disabled:{type:Boolean,default:!1}},setup(t){const o=t,n=["button","submit","reset"],r=i=>!!i&&n.includes(i),a=e.computed(()=>o.as?o.as==="button":!(o.to||o.href||o.url||o.type&&!r(o.type))),v=e.computed(()=>r(o.type)?o.type:"button"),d=e.computed(()=>o.as==="link"?o.to?"router-link":"a":o.type&&!r(o.type)?o.type==="router-link"&&o.to?"router-link":"a":o.to?"router-link":"a"),c=e.computed(()=>{let i=["vf-button",`vf-button_${o.severity}`];return["top","bottom"].includes(o.iconPos)&&i.push("vf-button_vertical"),o.variant==="text"&&i.push("vf-button_text"),o.variant==="outlined"&&i.push("vf-button_outlined"),["small","large"].indexOf(o.size)>-1&&i.push(`vf-button_${o.size}`),(o.loading||o.disabled)&&i.push("vf-button_disabled"),o.rounded&&i.push("vf-button_rounded"),i}),l=e.computed(()=>["vf-button__icon",`vf-button__icon_${o.iconPos}`]),f=e.computed(()=>["vf-button__label"]);return(i,s)=>a.value?(e.openBlock(),e.createElementBlock("button",{key:0,type:v.value,class:e.normalizeClass(c.value),disabled:o.loading||o.disabled},[o.icon&&!o.loading?(e.openBlock(),e.createBlock(e.unref(X.CmIcon),{key:0,icon:o.icon,class:e.normalizeClass(l.value)},null,8,["icon","class"])):e.createCommentVNode("",!0),o.loading?(e.openBlock(),e.createBlock(e.unref(X.CmIcon),{key:1,icon:"circleNotch",class:e.normalizeClass(l.value),spin:""},null,8,["class"])):e.createCommentVNode("",!0),i.$slots.default?(e.openBlock(),e.createElementBlock("span",{key:2,class:e.normalizeClass(f.value)},[e.renderSlot(i.$slots,"default")],2)):i.label?(e.openBlock(),e.createElementBlock("span",{key:3,class:e.normalizeClass(f.value)},e.toDisplayString(i.label),3)):e.createCommentVNode("",!0)],10,Oe)):(e.openBlock(),e.createBlock(ne,{key:1,to:o.to,href:o.href??o.url,as:d.value,class:e.normalizeClass(c.value),disabled:o.loading||o.disabled},{default:e.withCtx(()=>[o.icon?(e.openBlock(),e.createBlock(e.unref(X.CmIcon),{key:0,icon:o.icon,class:e.normalizeClass(l.value)},null,8,["icon","class"])):e.createCommentVNode("",!0),i.$slots.default?(e.openBlock(),e.createElementBlock("span",{key:1,class:e.normalizeClass(f.value)},[e.renderSlot(i.$slots,"default")],2)):i.label?(e.openBlock(),e.createElementBlock("span",{key:2,class:e.normalizeClass(f.value)},e.toDisplayString(i.label),3)):e.createCommentVNode("",!0)]),_:3},8,["to","href","as","class","disabled"]))}}),He={key:0,class:"vf-input__prefix"},Pe=["type","value","placeholder","disabled","readonly"],Ie={key:1,class:"vf-input__suffix"},je=e.defineComponent({__name:"input",props:{modelValue:{default:""},type:{default:"text"},placeholder:{default:""},disabled:{type:Boolean,default:!1},readonly:{type:Boolean,default:!1},size:{default:"normal"},variant:{default:"filled"}},emits:["update:modelValue","input","change","focus","blur"],setup(t,{emit:o}){const n=o,r=t,a=e.computed(()=>{const f=["vf-input",`vf-input_${r.variant}`];return r.size!=="normal"&&f.push(`vf-input_${r.size}`),r.disabled&&f.push("vf-input_disabled"),f}),v=f=>{const i=f.target;n("update:modelValue",i.value),n("input",f)},d=f=>n("change",f),c=f=>n("focus",f),l=f=>n("blur",f);return(f,i)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(a.value)},[f.$slots.prefix?(e.openBlock(),e.createElementBlock("span",He,[e.renderSlot(f.$slots,"prefix")])):e.createCommentVNode("",!0),e.createElementVNode("input",{class:"vf-input__control",type:f.type,value:f.modelValue,placeholder:f.placeholder,disabled:f.disabled,readonly:f.readonly,onInput:v,onChange:d,onFocus:c,onBlur:l},null,40,Pe),f.$slots.suffix?(e.openBlock(),e.createElementBlock("span",Ie,[e.renderSlot(f.$slots,"suffix")])):e.createCommentVNode("",!0)],2))}}),Ae=["value","placeholder","disabled","readonly","rows"],Ke=e.defineComponent({__name:"textarea",props:{modelValue:{default:""},placeholder:{default:""},disabled:{type:Boolean,default:!1},readonly:{type:Boolean,default:!1},size:{default:"normal"},variant:{default:"filled"},rows:{default:3}},emits:["update:modelValue","input","change","focus","blur"],setup(t,{emit:o}){const n=o,r=t,a=e.computed(()=>{const f=["vf-textarea",`vf-textarea_${r.variant}`];return r.size!=="normal"&&f.push(`vf-textarea_${r.size}`),r.disabled&&f.push("vf-textarea_disabled"),f}),v=f=>{const i=f.target;n("update:modelValue",i.value),n("input",f)},d=f=>n("change",f),c=f=>n("focus",f),l=f=>n("blur",f);return(f,i)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(a.value)},[e.createElementVNode("textarea",{class:"vf-textarea__control",value:f.modelValue,placeholder:f.placeholder,disabled:f.disabled,readonly:f.readonly,rows:f.rows,onInput:v,onChange:d,onFocus:c,onBlur:l},null,40,Ae)],2))}}),ve=["top","top-start","top-end","right","right-start","right-end","bottom","bottom-start","bottom-end","left","left-start","left-end"],M=t=>{if(t==null||!(t instanceof HTMLElement))return null;if(typeof window<"u"){const o=window.getComputedStyle(t),n=`${o.overflowX}${o.overflowY}`;if(/(auto|scroll|overlay)/.test(n))return t}return t.scrollHeight>t.clientHeight||t.scrollWidth>t.clientWidth?t:M(t.parentNode)};function Ye(t){return typeof window>"u"?!1:window.getComputedStyle(t).position==="fixed"}const Xe=(t,o)=>t.strategy?t.strategy:Ye(o)?"fixed":"absolute",I=(t,o)=>Xe(t,o)==="fixed",N=(t,o,n={})=>{const r=t.getBoundingClientRect(),a=o?o.offsetParent:null,v=o?I(n,o):!1;if(a&&!v){const d=a.getBoundingClientRect(),c=a.scrollLeft,l=a.scrollTop;return{left:r.left-d.left+c,top:r.top-d.top+l,width:r.width,height:r.height}}return{left:r.left,top:r.top,width:r.width,height:r.height}},K=(t,o)=>{var n;return(n=t.middleware)==null?void 0:n.find(r=>r.name===o)},ue=(t,o)=>!!K(t,o),Ge=t=>{const o=M(t);let n="";return o!==null&&((o.dataset.scrollTop===void 0||o.scrollTop===+o.dataset.scrollTop)&&(o.dataset.scrollTop="0"),(o.dataset.scrollLeft===void 0||o.scrollLeft===+o.dataset.scrollLeft)&&(o.dataset.scrollLeft="0"),o.scrollTop>+o.dataset.scrollTop?n="bottom":o.scrollTop<+o.dataset.scrollTop?n="top":o.scrollLeft>+o.dataset.scrollLeft?n="right":o.scrollLeft<+o.dataset.scrollLeft&&(n="left"),o.dataset.scrollTop=o.scrollTop<=0?"0":o.scrollTop.toString(),o.dataset.scrollLeft=o.scrollLeft<=0?"0":o.scrollLeft.toString()),n},Z=t=>t.scrollLeft+t.clientWidth,J=t=>t.scrollTop+t.clientHeight,O=(t,o,n=null,r={},a)=>{if(n===null&&typeof window<"u"&&I(r,o))return t;let v=0;if(n===null){const d=M(o);v=d?d.scrollTop:0}return t-v},D=(t,o,n=null,r={},a)=>{let v;if(n===null&&typeof window<"u"&&I(r,o))v=window.innerWidth;else if(n===null){const d=M(o);v=d?Z(d):0}else v=n.getBoundingClientRect().width;return-(t+o.clientWidth-v)},j=(t,o,n=null,r={},a)=>{let v;if(n===null&&typeof window<"u"&&I(r,o))v=window.innerHeight;else if(n===null){const d=M(o);v=d?J(d):0}else v=n.getBoundingClientRect().height;return-(t+o.clientHeight-v)},H=(t,o,n=null,r={},a)=>{if(n===null&&typeof window<"u"&&I(r,o))return t;let v=0;if(n===null){const d=M(o);v=d?d.scrollLeft:0}return t-v},be=({options:t,primaryX:o,primaryY:n,floating:r,placement:a,reference:v,scrollDirection:d})=>{const c=Q(v,r,a,t),l=K(t,"offset");if(l){const f=l.fn({x:c.x,y:c.y,options:t,primaryX:o,primaryY:n,floating:r,placement:a,reference:v,scrollDirection:d});c.x=f.x,c.y=f.y}return fo(c,r,v,t)?{x:c.x,y:c.y,placement:a}:!1},pe=t=>({name:"flip",params:t,fn:({x:o,y:n,options:r,primaryX:a,primaryY:v,floating:d,placement:c,reference:l,scrollDirection:f})=>{var i;const s={x:o,y:n,placement:c},u={...r,middleware:(i=r.middleware)==null?void 0:i.filter(B=>B.name!=="shift")},b=(t==null?void 0:t.placements)??ve,p=!(t!=null&&t.placements),y=p?ve:b;let g=!1;const x=B=>{if(g)return;const z=be({options:u,primaryX:a,primaryY:v,floating:d,placement:B,reference:l,scrollDirection:f});z&&(s.x=z.x,s.y=z.y,s.placement=z.placement,g=!0)},F=uo(l,d,u);if(!p&&b.includes(c)&&x(c),g||y.forEach(x),!g){const B=b.reduce((z,k)=>{const C=be({options:u,primaryX:a,primaryY:v,floating:d,placement:k,reference:l,scrollDirection:f});if(!C)return z;const S=q(k),V=F[S];return!z||V>z.space?{result:C,space:V}:z},null);B&&(s.x=B.result.x,s.y=B.result.y,s.placement=B.result.placement,g=!0)}if(!g&&b.length>0){const B=q(c);let z=B,k=F[B];b.forEach(m=>{const h=q(m),_=F[h];_>k&&(k=_,z=h)});const C=vo(z,c,b),S=Q(l,d,C,u),V=K(u,"offset");if(V){const m=V.fn({x:S.x,y:S.y,options:u,primaryX:a,primaryY:v,floating:d,placement:C,reference:l,scrollDirection:f});S.x=m.x,S.y=m.y}s.x=S.x,s.y=S.y,s.placement=S.placement}return s}}),he=(t,o,n,r,a)=>{var v,d,c;let l=0;r.startsWith("right")?l=-t:r.startsWith("left")&&(l=t);const f=K(o,"arrow"),i=K(o,"shift");if(f){const s=((v=f.params)==null?void 0:v.arrow).getBoundingClientRect();r.startsWith("right")?l-=s.width/2:r.startsWith("left")&&(l+=s.width/2)}if(ue(o,"shift")&&f){let s=null,u=0;i&&(s=(d=i.params)==null?void 0:d.parent);const b=(c=f.params)==null?void 0:c.arrow;u=b.getBoundingClientRect().width/2,u+=Ue(b),u-=t,r.startsWith("right")?D(n-l,a,s,o)<=t?D(n,a,s,o)>0?l=t-D(n,a,s,o):l=t:H(n-l-u,a,s,o)<=t&&(H(n-l-u,a,s,o)>=0?(l=-t-(H(n-l-u,a,s,o)+t),s&&(l=-t)):l=-t):r.startsWith("left")?D(n-l+u,a,s,o)<=t?(l=t+D(n-u,a,s,o),l<=t&&(l=t)):H(n-l,a,s,o)<=t&&(l=-t+H(n,a,s,o),l<=-t&&(l=-t)):D(n-l,a,s,o)<=t?D(n-l,a,s,o)<=t&&D(n,a,s,o)>0?l=t-D(n,a,s,o):l=t:H(n-l,a,s,o)<=t&&(H(n-l,a,s,o)<=t&&H(n,a,s,o)>0?l=-(t-H(n,a,s,o)):l=-t)}return l},me=(t,o,n,r,a)=>{var v,d,c;let l=0;r.startsWith("top")?l=t:r.startsWith("bottom")&&(l=-t);const f=K(o,"arrow"),i=K(o,"shift");if(f){const s=((v=f.params)==null?void 0:v.arrow).getBoundingClientRect();r.startsWith("top")?l+=s.height/2:r.startsWith("bottom")&&(l-=s.height/2)}if(ue(o,"shift")&&f){let s=null,u=0;i&&(s=(d=i.params)==null?void 0:d.parent);const b=(c=f.params)==null?void 0:c.arrow;u=b.getBoundingClientRect().height/2,u+=Ze(b),u-=t,r.startsWith("top")?O(n-l,a,s,o)<=t?O(n,a,s,o)>=0?l=-(t-O(n,a,s,o)):l=-t:j(n-l+u,a,s,o)<=t&&(l=t+j(n-u,a,s,o),l<=t&&(l=t)):r.startsWith("bottom")?O(n-l-u,a,s,o)<=t?O(n-l-u,a,s,o)>=0?(l=-t-(O(n-l-u,a,s,o)+t),s&&(l=-t)):l=-t:j(n-l,a,s,o)<=t&&(j(n,a,s,o)>=0?l=t-j(n,a,s,o):l=t):O(n-l,a,s,o)<=t?O(n-l,a,s,o)>=0?l=-(t-O(n-l,a,s,o)):l=-t:j(n-l,a,s,o)<=t&&(j(n-l,a,s,o)>=0?l=t-j(n-l,a,s,o):l=t)}return l},ge=t=>({name:"offset",params:{value:t},fn:({x:o,y:n,options:r,primaryX:a,primaryY:v,floating:d,placement:c})=>({x:o-he(t,r,a,c,d),y:n-me(t,r,v,c,d),placement:c})}),qe=t=>({name:"shift",params:t,fn:({x:o,y:n,options:r,primaryX:a,primaryY:v,floating:d,placement:c,reference:l})=>{var f;const i={x:o,y:n,placement:c},s=r.middleware||[],u=s.findIndex(_=>_.name==="shift"),b=s.findIndex(_=>_.name==="offset"),p=b!==-1&&(u===-1||b>u),y=s.find(_=>_.name==="offset"),g=y?(f=y.params)==null?void 0:f.value:0,x=p?he(g,r,a,c,d):0,F=p?me(g,r,v,c,d):0,B=o-x,z=n-F;let k=B,C=z;const S=y?Math.abs(g):0,V=S,m=S;if(I(r,d)&&typeof window<"u"){const _=V,$=window.innerWidth-d.clientWidth-V,E=$<_?_:$,T=m,L=window.innerHeight-d.clientHeight-m,R=L<T?T:L;k<_?k=_:k>E&&(k=E),C<T?C=T:C>R&&(C=R),p?(i.x=o+(k-B),i.y=n+(C-z)):(i.x=k,i.y=C);const P=V,W=window.innerWidth-d.clientWidth-V,Y=m,U=window.innerHeight-d.clientHeight-m,G=p?P+x:P,oe=p?W+x:W,te=p?Y+F:Y,re=p?U+F:U;return i.x<G?i.x=G:i.x>oe&&(i.x=oe),i.y<te?i.y=te:i.y>re&&(i.y=re),i}const h=M(d);if(h!==null){const _=N(l,d,r),$=_.left,E=_.left+_.width,T=_.top,L=_.top+_.height,R=h.scrollLeft+V,P=Z(h)-d.clientWidth-V,W=P<R?R:P,Y=h.scrollTop+m,U=J(h)-d.clientHeight-m,G=U<Y?Y:U,oe=h.scrollLeft,te=Z(h),re=h.scrollTop,at=J(h);E<=oe?k=R:$>=te&&(k=W),L<=re?C=Y:T>=at&&(C=G),C<Y?C=Y:C>G&&(C=G),k<R?k=R:k>W&&(k=W)}if(p?(i.x=o+(k-B),i.y=n+(C-z)):(i.x=k,i.y=C),h!==null){const _=h.scrollLeft+V,$=Z(h)-d.clientWidth-V,E=h.scrollTop+m,T=J(h)-d.clientHeight-m,L=p?_+x:_,R=p?$+x:$,P=p?E+F:E,W=p?T+F:T;i.x<L?i.x=L:i.x>R&&(i.x=R),i.y<P?i.y=P:i.y>W&&(i.y=W)}return i}}),Ue=t=>t.getBoundingClientRect().width!==t.clientWidth?(t.getBoundingClientRect().width-t.clientWidth)/2:0,Ze=t=>t.getBoundingClientRect().height!==t.clientHeight?(t.getBoundingClientRect().height-t.clientHeight)/2:0,_e=(t,o)=>{const n=M(t),r=[];if(n!==null){const a=()=>o();n.addEventListener("scroll",a,!1),r.push(()=>n.removeEventListener("scroll",a,!1))}if(typeof window<"u"){const a=()=>o(),v=()=>o();window.addEventListener("scroll",a,!1),window.addEventListener("resize",v,!1),r.push(()=>window.removeEventListener("scroll",a,!1)),r.push(()=>window.removeEventListener("resize",v,!1))}if(typeof ResizeObserver<"u"&&t instanceof HTMLElement){const a=new ResizeObserver(()=>o());a.observe(t),r.push(()=>a.disconnect())}return()=>r.forEach(a=>a())},Je=(t,o,n={})=>{const r=N(t,o,n);return{x:r.left-o.getBoundingClientRect().width/2+r.width/2,y:r.top-o.getBoundingClientRect().height,placement:"top"}},Qe=(t,o,n={})=>{const r=N(t,o,n);return{x:r.left,y:r.top-o.getBoundingClientRect().height,placement:"top-start"}},eo=(t,o,n={})=>{const r=N(t,o,n);return{x:r.left-o.getBoundingClientRect().width+r.width,y:r.top-o.getBoundingClientRect().height,placement:"top-end"}},oo=(t,o,n={})=>{const r=N(t,o,n);return{x:r.left+r.width,y:r.top-o.getBoundingClientRect().height/2+r.height/2,placement:"right"}},to=(t,o,n={})=>{const r=N(t,o,n);return{x:r.left+r.width,y:r.top,placement:"right-start"}},ro=(t,o,n={})=>{const r=N(t,o,n);return{x:r.left+r.width,y:r.top+r.height-o.getBoundingClientRect().height,placement:"right-end"}},no=(t,o,n={})=>{const r=N(t,o,n);return{x:r.left+r.width/2-o.getBoundingClientRect().width/2,y:r.top+r.height,placement:"bottom"}},ao=(t,o,n={})=>{const r=N(t,o,n);return{x:r.left,y:r.top+r.height,placement:"bottom-start"}},lo=(t,o,n={})=>{const r=N(t,o,n);return{x:r.left-o.getBoundingClientRect().width+r.width,y:r.top+r.height,placement:"bottom-end"}},io=(t,o,n={})=>{const r=N(t,o,n);return{x:r.left-o.getBoundingClientRect().width,y:r.top+r.height/2-o.getBoundingClientRect().height/2,placement:"left"}},so=(t,o,n={})=>{const r=N(t,o,n);return{x:r.left-o.getBoundingClientRect().width,y:r.top,placement:"left-start"}},co=(t,o,n={})=>{const r=N(t,o,n);return{x:r.left-o.getBoundingClientRect().width,y:r.top+r.height-o.getBoundingClientRect().height,placement:"left-end"}},Q=(t,o,n,r={})=>{switch(n){case"top":return Je(t,o,r);case"top-start":return Qe(t,o,r);case"top-end":return eo(t,o,r);case"right":return oo(t,o,r);case"right-start":return to(t,o,r);case"right-end":return ro(t,o,r);case"bottom":return no(t,o,r);case"bottom-start":return ao(t,o,r);case"bottom-end":return lo(t,o,r);case"left":return io(t,o,r);case"left-start":return so(t,o,r);case"left-end":return co(t,o,r);default:return{x:0,y:0,placement:""}}},fo=(t,o,n,r={})=>{if(I(r,o)){if(typeof window>"u")return!0;const s=t.x,u=t.y,b=s+o.clientWidth,p=u+o.clientHeight;return s>=0&&u>=0&&b<=window.innerWidth&&p<=window.innerHeight}if(M(n)!==null)return O(t.y,o,null,r)>0&&D(t.x,o,null,r)>0&&j(t.y,o,null,r)>0&&H(t.x,o,null,r)>0;if(typeof window>"u")return!0;const a=window.innerWidth,v=window.innerHeight,d=(n instanceof HTMLElement?n.offsetParent:null)||o.offsetParent;if(d){const s=d.getBoundingClientRect(),u=s.left+t.x,b=s.top+t.y,p=u+o.clientWidth,y=b+o.clientHeight;return u>=0&&b>=0&&p<=a&&y<=v}const c=t.x,l=t.y,f=c+o.clientWidth,i=l+o.clientHeight;return c>=0&&l>=0&&f<=a&&i<=v},q=t=>t.startsWith("right")?"right":t.startsWith("left")?"left":t.startsWith("top")?"top":"bottom",vo=(t,o,n)=>q(o)===t&&n.includes(o)?o:n.find(r=>q(r)===t)??n[0],uo=(t,o,n={})=>{if(typeof window>"u")return{top:0,right:0,bottom:0,left:0};const r=I(n,o)?null:M(t),a=t.getBoundingClientRect(),v=r?r.getBoundingClientRect():{top:0,left:0,right:window.innerWidth,bottom:window.innerHeight};return{top:a.top-v.top,right:v.right-a.right,bottom:v.bottom-a.bottom,left:a.left-v.left}},ye=(t,o,n={})=>new Promise(r=>{var a,v;const d=n.placement?n.placement:"bottom",c={x:0,y:0,placement:d,middlewareData:{}},l=Q(t,o,d,n);c.x=l.x,c.y=l.y,c.placement=l.placement;const f=c.x,i=c.y,s=Ge(t);(a=n.middleware)==null||a.forEach(y=>{const g=y.fn({x:c.x,y:c.y,options:n,primaryX:f,primaryY:i,floating:o,placement:c.placement,reference:t,scrollDirection:s});c.x=g.x,c.y=g.y,c.placement=g.placement,y.name==="arrow"&&(g.baseX=g.x,g.baseY=g.y,g.x=g.arrowX??g.x,g.y=g.arrowY??g.y),c.middlewareData[y.name]=g});const u=Q(t,o,c.placement,n),b=K(n,"offset"),p=b?(v=b.params)==null?void 0:v.value:0;if(Number.isFinite(c.x)||(c.x=u.x),!Number.isFinite(c.y))if(I(n,o)){const y=t.getBoundingClientRect(),g=o.getBoundingClientRect().height;c.placement.startsWith("top")?c.y=y.top-g-p:c.placement.startsWith("bottom")?c.y=y.bottom+p:c.y=u.y}else c.y=u.y;r(c)}),bo=["disabled","aria-expanded","onKeydown"],po=["data-placement"],ho=["disabled","aria-selected","onClick"],mo=e.defineComponent({__name:"select",props:{modelValue:{default:void 0},options:{default:()=>[]},optionLabel:{default:"label"},optionValue:{default:"value"},placeholder:{default:""},disabled:{type:Boolean,default:!1},variant:{default:"filled"},size:{default:"normal"}},emits:["update:modelValue","change","focus","blur"],setup(t,{emit:o}){let n=0;const r=o,a=t,v=e.ref(null),d=e.ref(null),c=e.ref(null),l=e.ref(!1),f=e.ref("bottom"),i=e.ref("bottom"),s=`vf-select-panel-${++n}`;let u=null;const b=e.computed(()=>a.options.map(h=>({label:h[a.optionLabel],value:h[a.optionValue],disabled:h.disabled}))),p=e.computed(()=>b.value.find(h=>h.value===a.modelValue)),y=e.computed(()=>{var h;return((h=p.value)==null?void 0:h.label)??""}),g=e.computed(()=>{const h=["vf-select",`vf-select_${a.variant}`,l.value?"vf-select_open":""];return a.size!=="normal"&&h.push(`vf-select_${a.size}`),a.disabled&&h.push("vf-select_disabled"),h.filter(Boolean)}),x=h=>h.value===a.modelValue,F=h=>{h.disabled||(r("update:modelValue",h.value),r("change",h.value),k())},B=h=>r("focus",h),z=h=>r("blur",h),k=()=>{l.value=!1,f.value="bottom",i.value="bottom"},C=()=>{a.disabled||(l.value=!l.value,l.value&&(f.value="bottom",i.value="bottom"))},S=async()=>{var h,_;l.value||(l.value=!0,await e.nextTick()),(_=(h=c.value)==null?void 0:h.querySelector(".vf-select__option:not(.is-disabled)"))==null||_.focus()},V=h=>{var $;if(!l.value||!v.value)return;const _=h.target;v.value.contains(_)||($=c.value)!=null&&$.contains(_)||k()},m=()=>{if(!d.value||!c.value)return;const h=d.value,_=c.value,$=async()=>{const{x:R,y:P,placement:W}=await ye(h,_,{placement:f.value,strategy:"fixed",middleware:[ge(2),pe({placements:["bottom","top"]})]});i.value=W??f.value,_.style.minWidth=`${h.getBoundingClientRect().width}px`,_.style.left=`${R}px`,_.style.top=`${P}px`},E=async()=>{await $()},T=_e(h,()=>{E()}),L=()=>{E()};document.addEventListener("scroll",L,!0),window.addEventListener("resize",L,!1),u={update:E,destroy:()=>{T(),document.removeEventListener("scroll",L,!0),window.removeEventListener("resize",L,!1)}},u.update()};return e.watch(l,async h=>{if(!h){u&&(u.destroy(),u=null);return}await e.nextTick(),u||m(),u==null||u.update()}),e.watch(()=>a.options,()=>{u==null||u.update()},{deep:!0}),e.onMounted(()=>{document.addEventListener("click",V)}),e.onBeforeUnmount(()=>{document.removeEventListener("click",V),u==null||u.destroy(),u=null}),(h,_)=>(e.openBlock(),e.createElementBlock("div",{ref_key:"root",ref:v,class:e.normalizeClass(g.value)},[e.createElementVNode("button",{ref_key:"trigger",ref:d,class:"vf-select__control",type:"button",disabled:h.disabled,"aria-expanded":l.value,"aria-controls":s,"aria-haspopup":"listbox",onClick:C,onKeydown:[e.withKeys(e.withModifiers(S,["prevent"]),["down"]),e.withKeys(e.withModifiers(C,["prevent"]),["enter"]),e.withKeys(e.withModifiers(k,["prevent"]),["esc"])],onFocus:B,onBlur:z},[e.createElementVNode("span",{class:e.normalizeClass(["vf-select__label",{"vf-select__label_placeholder":!y.value}])},e.toDisplayString(y.value||h.placeholder),3),_[0]||(_[0]=e.createElementVNode("span",{class:"vf-select__chevron","aria-hidden":"true"},"▾",-1))],40,bo),(e.openBlock(),e.createBlock(e.Teleport,{to:"body"},[e.withDirectives(e.createElementVNode("div",{id:s,ref_key:"panel",ref:c,class:"vf-select__panel",role:"listbox","data-placement":i.value},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(b.value,$=>(e.openBlock(),e.createElementBlock("button",{key:$.value,class:e.normalizeClass(["vf-select__option",{"is-active":x($),"is-disabled":$.disabled}]),type:"button",role:"option",disabled:$.disabled,"aria-selected":x($),onClick:E=>F($)},e.toDisplayString($.label),11,ho))),128))],8,po),[[e.vShow,l.value]])]))],2))}}),go=["checked","disabled"],_o={key:0,class:"vf-checkbox__label"},yo=e.defineComponent({__name:"checkbox",props:{modelValue:{type:Boolean,default:!1},label:{default:""},disabled:{type:Boolean,default:!1},variant:{default:"filled"}},emits:["update:modelValue","change"],setup(t,{emit:o}){const n=o,r=t,a=e.computed(()=>{const d=["vf-checkbox",`vf-checkbox_${r.variant}`];return r.disabled&&d.push("vf-checkbox_disabled"),d}),v=d=>{const c=d.target;n("update:modelValue",c.checked),n("change",d)};return(d,c)=>(e.openBlock(),e.createElementBlock("label",{class:e.normalizeClass(a.value)},[e.createElementVNode("input",{class:"vf-checkbox__control",type:"checkbox",checked:d.modelValue,disabled:d.disabled,onChange:v},null,40,go),c[0]||(c[0]=e.createElementVNode("span",{class:"vf-checkbox__box"},null,-1)),d.label||d.$slots.default?(e.openBlock(),e.createElementBlock("span",_o,[e.renderSlot(d.$slots,"default",{},()=>[e.createTextVNode(e.toDisplayString(d.label),1)])])):e.createCommentVNode("",!0)],2))}}),ke=Symbol("VueForgeRadioGroup"),ko=["aria-disabled","aria-label","aria-labelledby"],wo=e.defineComponent({__name:"radio-group",props:{modelValue:{type:[String,Number,Boolean,null],default:void 0},name:{},disabled:{type:Boolean,default:!1},variant:{default:"filled"},direction:{default:"vertical"},ariaLabel:{},ariaLabelledby:{}},emits:["update:modelValue","change"],setup(t,{emit:o}){const n=o,r=t,a=e.computed(()=>{const c=["vf-radio-group"];return r.direction==="horizontal"&&c.push("vf-radio-group_horizontal"),c}),v=(c,l)=>{n("update:modelValue",c),n("change",c,l)},d={name:e.computed(()=>r.name),modelValue:e.computed(()=>r.modelValue),disabled:e.computed(()=>r.disabled),variant:e.computed(()=>r.variant),onChange:v};return e.provide(ke,d),(c,l)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(a.value),role:"radiogroup","aria-disabled":c.disabled||void 0,"aria-label":c.ariaLabel||void 0,"aria-labelledby":c.ariaLabelledby||void 0},[e.renderSlot(c.$slots,"default")],10,ko))}}),xo=["name","value","checked","disabled"],Co={key:0,class:"vf-radio__label"},Bo=e.defineComponent({__name:"radio-button",props:{modelValue:{type:[String,Number,Boolean,null],default:void 0},value:{type:[String,Number,Boolean,null],default:void 0},label:{default:""},disabled:{type:Boolean,default:!1},name:{},variant:{default:"filled"}},emits:["update:modelValue","change"],setup(t,{emit:o}){const n=o,r=t,a=e.inject(ke,null),v=e.computed(()=>a?a.modelValue.value:r.modelValue),d=e.computed(()=>a?a.name.value:r.name),c=e.computed(()=>a?a.variant.value:r.variant),l=e.computed(()=>(a?a.disabled.value:!1)||r.disabled),f=e.computed(()=>v.value===r.value),i=e.computed(()=>{const u=["vf-radio",`vf-radio_${c.value}`];return l.value&&u.push("vf-radio_disabled"),u}),s=u=>{l.value||(a?a.onChange(r.value,u):n("update:modelValue",r.value),n("change",r.value,u))};return(u,b)=>(e.openBlock(),e.createElementBlock("label",{class:e.normalizeClass(i.value)},[e.createElementVNode("input",{class:"vf-radio__control",type:"radio",name:d.value,value:u.value,checked:f.value,disabled:l.value,onChange:s},null,40,xo),b[0]||(b[0]=e.createElementVNode("span",{class:"vf-radio__circle"},null,-1)),u.label||u.$slots.default?(e.openBlock(),e.createElementBlock("span",Co,[e.renderSlot(u.$slots,"default",{},()=>[e.createTextVNode(e.toDisplayString(u.label),1)])])):e.createCommentVNode("",!0)],2))}}),zo=["checked","disabled"],$o={key:0,class:"vf-switch__label"},Fo=e.defineComponent({__name:"switch",props:{modelValue:{type:Boolean,default:!1},label:{default:""},disabled:{type:Boolean,default:!1}},emits:["update:modelValue","change"],setup(t,{emit:o}){const n=o,r=t,a=e.computed(()=>{const d=["vf-switch"];return r.disabled&&d.push("vf-switch_disabled"),d}),v=d=>{const c=d.target;n("update:modelValue",c.checked),n("change",d)};return(d,c)=>(e.openBlock(),e.createElementBlock("label",{class:e.normalizeClass(a.value)},[e.createElementVNode("input",{class:"vf-switch__control",type:"checkbox",checked:d.modelValue,disabled:d.disabled,onChange:v},null,40,zo),c[0]||(c[0]=e.createElementVNode("span",{class:"vf-switch__track"},[e.createElementVNode("span",{class:"vf-switch__thumb"})],-1)),d.label||d.$slots.default?(e.openBlock(),e.createElementBlock("span",$o,[e.renderSlot(d.$slots,"default",{},()=>[e.createTextVNode(e.toDisplayString(d.label),1)])])):e.createCommentVNode("",!0)],2))}}),Vo={class:"vf-popover"},So=["aria-expanded","onKeydown"],Eo=e.defineComponent({__name:"popover",emits:["click","onClick"],setup(t,{expose:o,emit:n}){const r=n,a=e.reactive({visible:!1});let v=0;const d=`vf-popover-panel-${++v}`,c=()=>a.visible=!0,l=()=>a.visible=!1,f=()=>a.visible=!a.visible,i=()=>{f(),r("click"),r("onClick")};return o({show:c,hide:l,toggle:f}),(s,u)=>(e.openBlock(),e.createElementBlock("div",Vo,[e.createElementVNode("div",{class:"vf-popover__button",role:"button",tabindex:"0","aria-haspopup":"dialog","aria-expanded":a.visible,"aria-controls":d,onClick:i,onKeydown:[e.withKeys(e.withModifiers(i,["prevent"]),["enter"]),e.withKeys(e.withModifiers(i,["prevent"]),["space"])]},[e.renderSlot(s.$slots,"button")],40,So),e.withDirectives(e.createVNode(fe,{id:d,class:"vf-popover__wrapper"},e.createSlots({default:e.withCtx(()=>[u[0]||(u[0]=e.createElementVNode("div",{class:"vf-popover__arrow"},null,-1))]),_:2},[s.$slots.default?{name:"default",fn:e.withCtx(()=>[e.renderSlot(s.$slots,"default")]),key:"0"}:void 0,s.$slots.header||s.$slots.popoverHeader?{name:"header",fn:e.withCtx(()=>[e.renderSlot(s.$slots,"header"),s.$slots.header?e.createCommentVNode("",!0):e.renderSlot(s.$slots,"popoverHeader",{key:0})]),key:"1"}:void 0,s.$slots.body||s.$slots.popoverBody?{name:"body",fn:e.withCtx(()=>[e.renderSlot(s.$slots,"body"),s.$slots.body?e.createCommentVNode("",!0):e.renderSlot(s.$slots,"popoverBody",{key:0})]),key:"2"}:void 0,s.$slots.footer||s.$slots.popoverFooter?{name:"footer",fn:e.withCtx(()=>[e.renderSlot(s.$slots,"footer"),s.$slots.footer?e.createCommentVNode("",!0):e.renderSlot(s.$slots,"popoverFooter",{key:0})]),key:"3"}:void 0]),1536),[[e.vShow,a.visible]])]))}}),To=["aria-labelledby","aria-describedby"],No={key:0,class:"vf-modal__header"},Ro={key:0,class:"vf-modal__title"},Lo={key:3,class:"vf-modal__footer"},Wo=e.defineComponent({__name:"modal",props:{modelValue:{type:Boolean,default:!1},title:{default:""},closeOnOverlay:{type:Boolean,default:!0},closeOnEsc:{type:Boolean,default:!0},showClose:{type:Boolean,default:!0},lockScroll:{type:Boolean,default:!0},size:{default:"md"}},emits:["update:modelValue","open","close"],setup(t,{expose:o,emit:n}){const r=n,a=t;let v=0,d=0,c="",l=null;const f=e.ref(null),i=e.useSlots(),s=`vf-modal-title-${++v}`,u=`vf-modal-body-${v}`,b=e.computed(()=>!!a.title||!!i.header),p=e.computed(()=>!!i.body||!!i.default),y=e.computed(()=>{const m=["vf-modal"];return a.size!=="md"&&m.push(`vf-modal_${a.size}`),m}),g=()=>r("update:modelValue",!0),x=()=>{r("update:modelValue",!1),r("close")},F=()=>{a.closeOnOverlay&&x()},B=m=>{!a.modelValue||!a.closeOnEsc||m.key==="Escape"&&(m.preventDefault(),x())},z=()=>f.value?Array.from(f.value.querySelectorAll('a[href],button:not([disabled]),textarea:not([disabled]),input:not([disabled]),select:not([disabled]),[tabindex]:not([tabindex="-1"])')).filter(h=>!h.hasAttribute("disabled")&&!h.getAttribute("aria-hidden")):[],k=()=>{var h;const m=z();m.length?m[0].focus():(h=f.value)==null||h.focus()},C=m=>{var T;if(m.key!=="Tab")return;const h=z();if(!h.length){m.preventDefault(),(T=f.value)==null||T.focus();return}const _=h[0],$=h[h.length-1],E=document.activeElement;if(m.shiftKey&&E===_){m.preventDefault(),$.focus();return}!m.shiftKey&&E===$&&(m.preventDefault(),_.focus())},S=()=>{!a.lockScroll||typeof document>"u"||(d===0&&(c=document.body.style.overflow,document.body.style.overflow="hidden"),d+=1)},V=()=>{!a.lockScroll||typeof document>"u"||(d=Math.max(0,d-1),d===0&&(document.body.style.overflow=c))};return e.watch(()=>a.modelValue,async m=>{m?(typeof document<"u"&&(l=document.activeElement),S(),r("open"),await e.nextTick(),k(),typeof document<"u"&&document.addEventListener("keydown",B)):(V(),typeof document<"u"&&(document.removeEventListener("keydown",B),l==null||l.focus()))},{immediate:!0}),e.onBeforeUnmount(()=>{V(),typeof document<"u"&&document.removeEventListener("keydown",B)}),o({open:g,close:x}),(m,h)=>(e.openBlock(),e.createBlock(e.Teleport,{to:"body"},[e.withDirectives(e.createElementVNode("div",{class:e.normalizeClass(y.value),role:"presentation"},[e.createElementVNode("div",{class:"vf-modal__overlay",onClick:F}),e.createElementVNode("div",{ref_key:"panel",ref:f,class:"vf-modal__panel",role:"dialog","aria-modal":"true","aria-labelledby":b.value?s:void 0,"aria-describedby":p.value?u:void 0,tabindex:"-1",onKeydown:C},[b.value?(e.openBlock(),e.createElementBlock("div",No,[e.createElementVNode("div",{id:s,class:"vf-modal__header-content"},[e.renderSlot(m.$slots,"header",{},()=>[m.title?(e.openBlock(),e.createElementBlock("h3",Ro,e.toDisplayString(m.title),1)):e.createCommentVNode("",!0)])])])):e.createCommentVNode("",!0),m.showClose?e.renderSlot(m.$slots,"close",{key:1,close:x},()=>[e.createElementVNode("button",{type:"button",class:"vf-modal__close","aria-label":"Close",onClick:x},"×")]):e.createCommentVNode("",!0),m.$slots.body||m.$slots.default?(e.openBlock(),e.createElementBlock("div",{key:2,id:u,class:"vf-modal__body"},[e.renderSlot(m.$slots,"body"),m.$slots.body?e.createCommentVNode("",!0):e.renderSlot(m.$slots,"default",{key:0})])):e.createCommentVNode("",!0),m.$slots.footer?(e.openBlock(),e.createElementBlock("div",Lo,[e.renderSlot(m.$slots,"footer")])):e.createCommentVNode("",!0)],40,To)],2),[[e.vShow,m.modelValue]])]))}}),Mo=["data-placement"],Oo={class:"vf-tooltip__content"},Do={key:0,class:"vf-tooltip__arrow","aria-hidden":"true"},Ho=e.defineComponent({__name:"tooltip",props:{text:{default:""},placement:{default:"top"},disabled:{type:Boolean,default:!1},arrow:{type:Boolean,default:!1}},setup(t){const o=t;let n=0;const r=e.ref(null),a=e.ref(null),v=e.ref(!1),d=e.ref("top"),c=`vf-tooltip-${++n}`;let l=null;const f=()=>{o.disabled||(v.value=!0)},i=()=>{v.value=!1},s=()=>{if(!r.value||!a.value)return;const b=r.value,p=a.value,y=async()=>{const{x:B,y:z,placement:k}=await ye(b,p,{placement:o.placement,strategy:"fixed",middleware:[ge(8),pe(),qe()]});d.value=k??o.placement,p.style.left=`${B}px`,p.style.top=`${z}px`},g=async()=>{await y()},x=_e(b,()=>{g()}),F=()=>{g()};document.addEventListener("scroll",F,!0),window.addEventListener("resize",F,!1),l={update:g,destroy:()=>{x(),document.removeEventListener("scroll",F,!0),window.removeEventListener("resize",F,!1)}},l.update()};e.watch(v,async b=>{if(!b){l&&(l.destroy(),l=null);return}l||s(),l==null||l.update()}),e.onMounted(()=>{v.value&&s()}),e.onBeforeUnmount(()=>{l==null||l.destroy(),l=null});const u=e.computed(()=>!!o.text||!!(a.value&&a.value.textContent));return e.watch(u,b=>{b||(v.value=!1)}),(b,p)=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[e.createElementVNode("span",{ref_key:"trigger",ref:r,class:"vf-tooltip__trigger","aria-describedby":c,onMouseenter:f,onMouseleave:i,onFocus:f,onBlur:i},[e.renderSlot(b.$slots,"default")],544),(e.openBlock(),e.createBlock(e.Teleport,{to:"body"},[e.withDirectives(e.createElementVNode("div",{id:c,ref_key:"panel",ref:a,class:"vf-tooltip",role:"tooltip","data-placement":d.value},[e.createElementVNode("span",Oo,[e.renderSlot(b.$slots,"content",{},()=>[e.createTextVNode(e.toDisplayString(b.text),1)])]),b.arrow?(e.openBlock(),e.createElementBlock("span",Do)):e.createCommentVNode("",!0)],8,Mo),[[e.vShow,v.value]])]))],64))}}),Po=["dark","light","theme","preset","colors","components","colorScheme"],Io=t=>{const o=t.replace(/([A-Z])/g,"-$1");return o.charAt(0).toUpperCase()+o.slice(1)},jo=t=>t.filter(o=>!Po.includes(o)).map(o=>Io(o)).join("-").toLowerCase(),ae=t=>t.join("."),Ao=t=>/^#([0-9a-fA-F]{3}|[0-9a-fA-F]{6})$/.test(t),le=t=>{if(!Ao(t))return null;if(t.length===4){const o=t[1],n=t[2],r=t[3];return`#${o}${o}${n}${n}${r}${r}`}return t.toLowerCase()},we=t=>{const o=le(t);if(!o)return[0,0,0];const n=parseInt(o.slice(1),16),r=n>>16&255,a=n>>8&255,v=n&255;return[r,a,v]},xe=t=>{const[o,n,r]=we(t);return`${o}, ${n}, ${r}`},Ko=(t,o,n)=>{const r=t/255,a=o/255,v=n/255,d=Math.max(r,a,v),c=Math.min(r,a,v),l=d-c;let f=0,i=0;const s=(d+c)/2;if(l!==0){switch(i=l/(1-Math.abs(2*s-1)),d){case r:f=(a-v)/l%6;break;case a:f=(v-r)/l+2;break;case v:f=(r-a)/l+4;break}f*=60,f<0&&(f+=360)}return[f,i*100,s*100]},Yo=(t,o,n)=>{const r=o/100,a=n/100,v=(1-Math.abs(2*a-1))*r,d=v*(1-Math.abs(t/60%2-1)),c=a-v/2;let l=0,f=0,i=0;t>=0&&t<60?(l=v,f=d,i=0):t>=60&&t<120?(l=d,f=v,i=0):t>=120&&t<180?(l=0,f=v,i=d):t>=180&&t<240?(l=0,f=d,i=v):t>=240&&t<300?(l=d,f=0,i=v):(l=v,f=0,i=d);const s=Math.round((l+c)*255),u=Math.round((f+c)*255),b=Math.round((i+c)*255);return[s,u,b]},Xo=(t,o,n)=>`#${[t,o,n].map(r=>r.toString(16).padStart(2,"0")).join("")}`,Go=(t,o,n)=>Math.min(n,Math.max(o,t)),qo=(t,o)=>{const n=le(t);if(!n)return t;const[r,a,v]=we(n),[d,c,l]=Ko(r,a,v),i=(o-5)*7,s=Go(l+i,0,100),[u,b,p]=Yo(d,c,s);return Xo(u,b,p)},ee=t=>!!t&&typeof t=="object"&&!Array.isArray(t),ie=(t,o)=>{if(!o)return{...t};const n={...t};for(const r in o){const a=o[r],v=t[r];ee(v)&&ee(a)?n[r]=ie(v,a):n[r]=a}return n},Uo=t=>{if(!t)return null;if(ee(t)&&"preset"in t){const o=t;return{preset:o.preset??{},overrides:o.overrides,selector:o.selector,darkSelector:o.darkSelector,strict:o.strict}}return{preset:t}},Zo=t=>{const o=[],n=[],r=[],a=[],v=l=>r.push(l),d=l=>a.push(l),c=(l,f)=>{if(!(!l||typeof l!="object"))for(const i in l){const s=l[i],u=f.concat([i]);if(ee(s)){c(s,u);continue}if(s&&typeof s=="object"){d(`Theme value "${ae(u)}" is not a plain object or string and will be ignored.`);continue}if(typeof s!="string"){d(`Theme value "${ae(u)}" is not a string and will be ignored.`);continue}const p=u.includes("colorScheme")&&u.includes("dark")?n:o,y=jo(u);if(p.push(`--vf-${y}: ${s}`),u.includes("colors")){const g=le(s);if(!g){v(`Theme color "${ae(u)}" is not hex. Shade variables will not be generated for it.`);continue}if(p.push(`--vf-${y}-rgb: ${xe(g)}`),i!=="white")for(let x=1;x<10;++x){const F=qo(g,x);p.push(`--vf-${y}-${x}00: ${F}`),p.push(`--vf-${y}-${x}00-rgb: ${xe(F)}`)}}}};return c(t,[]),{baseVars:o,darkVars:n,warnings:r,errors:a}},Jo=t=>{if(typeof document>"u")return null;const o=document.getElementById(t);if(o&&o.tagName.toLowerCase()==="style")return o;const n=document.createElement("style");return n.id=t,document.head.appendChild(n),n},Qo=t=>({selector:t.selector??":root",darkSelector:t.darkSelector??":root[data-theme=dark]"}),et=(t,o,n,r)=>{const{baseVars:a,darkVars:v,warnings:d,errors:c}=Zo(t),l=Jo("vueforge-theme");if(!l)return;if(c.length){if(r)throw new Error(`[VueForge] ${c.join(" ")}`);for(const i of c)console.warn(`[VueForge] ${i}`)}if(d.length)for(const i of d)console.warn(`[VueForge] ${i}`);const f=[];a.length&&f.push(`${o} { ${a.join(";")} }`),v.length&&f.push(`${n} { ${v.join(";")} }`),l.textContent=f.join(`
3
+ `)};let A=null;const se=t=>{const o=Uo(t);if(!o)return;const n=ie(o.preset,o.overrides),{selector:r,darkSelector:a}=Qo(o);A={...o},et(n,r,a,o.strict)},ot=t=>{if(!A)return;const o=t.overrides===void 0?A.overrides:ie(A.overrides??{},t.overrides??{}),n={preset:t.preset??A.preset,overrides:o,selector:t.selector??A.selector,darkSelector:t.darkSelector??A.darkSelector};se(n)},tt=()=>A?{...A}:null,rt={install(t,o={}){o.theme&&se(o.theme)}},Ce={colors:{white:"#ffffff",green:"#0cbc87",red:"#d6293e",yellow:"#f7c32e",sky:"#0ea5e9",blue:"#007bff",purple:"#6f42c1",gray:"#adb5bd"},borderWidth:"1px",controls:{height:"2rem",paddingY:"0.25rem",paddingX:"0.6rem",backgroundColor:"var(--vf-bg-soft-color)"},radii:{sm:"4px",md:"6px",lg:"10px"},typography:{fontSize:"1rem",lineHeight:"1.4"},states:{disabledOpacity:"0.6",focusRingShadow:"0 0 0 3px rgba(var(--vf-blue-600-rgb), 0.12)"},sizes:{sm:{fontSize:"0.875rem",paddingY:"0.2rem",paddingX:"0.5rem"},lg:{fontSize:"1.125rem",paddingY:"0.5rem",paddingX:"1rem"}},colorScheme:{light:{bgColor:"#ffffff",bgSoftColor:"#f9f9f9",textColor:"rgba(60, 60, 67)",secondaryTextColor:"rgba(60, 60, 67, .78)",borderColor:"#c2c2c4",gutterColor:"#e2e2e3",dividerColor:"#e2e2e3"},dark:{bgColor:"#1a1a1a",bgSoftColor:"#242424",textColor:"rgba(255, 255, 255, .87)",secondaryTextColor:"rgba(235, 235, 235, .6)",borderColor:"#3c3f44",gutterColor:"#000000",dividerColor:"#2e2e32"}}},nt={...Ce,components:{base:Ce,button:{fontSize:"var(--vf-typography-font-size)",padding:"var(--vf-controls-padding-y) var(--vf-controls-padding-x)",borderRadius:"var(--vf-radii-md)",roundedBorderRadius:"2rem",iconGap:"6px",small:{fontSize:"var(--vf-sizes-sm-font-size)",padding:"var(--vf-sizes-sm-padding-y) var(--vf-sizes-sm-padding-x)"},large:{fontSize:"var(--vf-sizes-lg-font-size)",padding:"var(--vf-sizes-lg-padding-y) var(--vf-sizes-lg-padding-x)"},colorScheme:{light:{primary:{color:"#FFFFFF",hoverColor:"#FFFFFF",borderColor:"var(--vf-blue)",activeColor:"#FFFFFF",backgroundColor:"var(--vf-blue)",hoverBorderColor:"var(--vf-blue-600)",activeBorderColor:"var(--vf-blue-700)",hoverBackgroundColor:"var(--vf-blue-600)",activeBackgroundColor:"var(--vf-blue-700)"},secondary:{color:"#FFFFFF",hoverColor:"#FFFFFF",borderColor:"var(--vf-gray)",activeColor:"#FFFFFF",backgroundColor:"var(--vf-gray)",hoverBorderColor:"var(--vf-gray-600)",activeBorderColor:"var(--vf-gray-700)",hoverBackgroundColor:"var(--vf-gray-600)",activeBackgroundColor:"var(--vf-gray-700)"},success:{color:"#FFFFFF",hoverColor:"#FFFFFF",borderColor:"var(--vf-green)",activeColor:"#FFFFFF",backgroundColor:"var(--vf-green)",hoverBorderColor:"var(--vf-green-600)",activeBorderColor:"var(--vf-green-700)",hoverBackgroundColor:"var(--vf-green-600)",activeBackgroundColor:"var(--vf-green-700)"},danger:{color:"#FFFFFF",hoverColor:"#FFFFFF",borderColor:"var(--vf-red)",activeColor:"#FFFFFF",backgroundColor:"var(--vf-red)",hoverBorderColor:"var(--vf-red-600)",activeBorderColor:"var(--vf-red-700)",hoverBackgroundColor:"var(--vf-red-600)",activeBackgroundColor:"var(--vf-red-700)"},warning:{color:"#FFFFFF",hoverColor:"#FFFFFF",borderColor:"var(--vf-yellow)",activeColor:"#FFFFFF",backgroundColor:"var(--vf-yellow)",hoverBorderColor:"var(--vf-yellow-600)",activeBorderColor:"var(--vf-yellow-700)",hoverBackgroundColor:"var(--vf-yellow-600)",activeBackgroundColor:"var(--vf-yellow-700)"},info:{color:"#FFFFFF",hoverColor:"#FFFFFF",borderColor:"var(--vf-sky)",activeColor:"#FFFFFF",backgroundColor:"var(--vf-sky)",hoverBorderColor:"var(--vf-sky-600)",activeBorderColor:"var(--vf-sky-700)",hoverBackgroundColor:"var(--vf-sky-600)",activeBackgroundColor:"var(--vf-sky-700)"},text:{primary:{color:"var(--vf-blue)",hoverBackgroundColor:"rgba(var(--vf-blue-600-rgb), .1)"},secondary:{color:"var(--vf-gray)",hoverBackgroundColor:"rgba(var(--vf-gray-600-rgb), .1)"},success:{color:"var(--vf-green)",hoverBackgroundColor:"rgba(var(--vf-green-600-rgb), .1)"},danger:{color:"var(--vf-red)",hoverBackgroundColor:"rgba(var(--vf-red-600-rgb), .1)"},warning:{color:"var(--vf-yellow)",hoverBackgroundColor:"rgba(var(--vf-yellow-600-rgb), .1)"},info:{color:"var(--vf-sky)",hoverBackgroundColor:"rgba(var(--vf-sky-600-rgb), .1)"}},outlined:{primary:{color:"var(--vf-blue)",borderColor:"rgba(var(--vf-blue-rgb), .4)",hoverBackgroundColor:"rgba(var(--vf-blue-600-rgb), .1)"},secondary:{color:"var(--vf-gray)",borderColor:"rgba(var(--vf-gray-rgb), .4)",hoverBackgroundColor:"rgba(var(--vf-gray-600-rgb), .1)"},success:{color:"var(--vf-green)",borderColor:"rgba(var(--vf-green-rgb), .4)",hoverBackgroundColor:"rgba(var(--vf-green-600-rgb), .1)"},danger:{color:"var(--vf-red)",borderColor:"rgba(var(--vf-red-rgb), .4)",hoverBackgroundColor:"rgba(var(--vf-red-600-rgb), .1)"},warning:{color:"var(--vf-yellow)",borderColor:"rgba(var(--vf-yellow-rgb), .4)",hoverBackgroundColor:"rgba(var(--vf-yellow-600-rgb), .1)"},info:{color:"var(--vf-sky)",borderColor:"rgba(var(--vf-sky-rgb), .4)",hoverBackgroundColor:"rgba(var(--vf-sky-600-rgb), .1)"}}}}},card:{padding:"12px",borderColor:"var(--vf-border-color)",borderRadius:"var(--vf-radii-md)"},input:{gap:"0.5rem",fontSize:"var(--vf-typography-font-size)",padding:"var(--vf-controls-padding-y) var(--vf-controls-padding-x)",borderRadius:"var(--vf-radii-md)",borderColor:"var(--vf-border-color)",backgroundColor:"var(--vf-controls-background-color)",textColor:"var(--vf-text-color)",placeholderColor:"var(--vf-secondary-text-color)",focusBorderColor:"var(--vf-blue-600)",focusRingShadow:"var(--vf-states-focus-ring-shadow)",hoverBorderColor:"var(--vf-blue-500)",disabledOpacity:"var(--vf-states-disabled-opacity)",small:{padding:"var(--vf-sizes-sm-padding-y) var(--vf-sizes-sm-padding-x)",fontSize:"var(--vf-sizes-sm-font-size)"},large:{padding:"var(--vf-sizes-lg-padding-y) var(--vf-sizes-lg-padding-x)",fontSize:"var(--vf-sizes-lg-font-size)"}},textarea:{gap:"0.5rem",fontSize:"var(--vf-typography-font-size)",padding:"var(--vf-controls-padding-y) var(--vf-controls-padding-x)",borderRadius:"var(--vf-radii-md)",borderColor:"var(--vf-border-color)",backgroundColor:"var(--vf-controls-background-color)",textColor:"var(--vf-text-color)",placeholderColor:"var(--vf-secondary-text-color)",focusBorderColor:"var(--vf-blue-600)",focusRingShadow:"var(--vf-states-focus-ring-shadow)",hoverBorderColor:"var(--vf-blue-500)",disabledOpacity:"var(--vf-states-disabled-opacity)",minHeight:"calc(var(--vf-controls-height) * 2)",resize:"vertical",small:{padding:"var(--vf-sizes-sm-padding-y) var(--vf-sizes-sm-padding-x)",fontSize:"var(--vf-sizes-sm-font-size)"},large:{padding:"var(--vf-sizes-lg-padding-y) var(--vf-sizes-lg-padding-x)",fontSize:"var(--vf-sizes-lg-font-size)"}},link:{hoverColor:"var(--vf-blue)",activeColor:"var(--vf-blue)"},menu:{iconGap:"6px",submenuOffset:"12px",separatorThickness:"1px",separatorHeight:"1rem",separatorColor:"var(--vf-border-color)",link:{hoverColor:"var(--vf-blue)",activeColor:"var(--vf-blue)"},parent:{hoverColor:"var(--vf-secondary-text-color)",activeColor:"var(--vf-blue)"},item:{marginTop:"0.5rem",marginRight:"0.5rem",marginBottom:"0.5rem",marginLeft:"0.5rem"}},modal:{width:"90vw",maxWidth:"520px",maxHeight:"80vh",widthSm:"90vw",maxWidthSm:"420px",widthLg:"90vw",maxWidthLg:"720px",padding:"1.25rem",borderRadius:"var(--vf-radii-lg)",backgroundColor:"var(--vf-bg-color)",textColor:"var(--vf-text-color)",overlayBackgroundColor:"rgba(0, 0, 0, 0.45)",shadow:"0 12px 40px rgba(0, 0, 0, 0.2)",zIndex:"100",headerGap:"0.75rem",bodyGap:"1rem",footerGap:"0.5rem",titleFontSize:"1.125rem",titleLineHeight:"1.4",titleFontWeight:"600",closeSize:"2rem",closeRadius:"999px",closeOffset:"0.5rem",closeColor:"var(--vf-text-color)",closeFontSize:"1.25rem",closeHoverBackgroundColor:"rgba(0, 0, 0, 0.06)"},popover:{backgroundColor:"var(--vf-bg-color)"},select:{minWidth:"12rem",fontSize:"var(--vf-typography-font-size)",controlGap:"0.75rem",chevronSize:"0.9em",padding:"var(--vf-controls-padding-y) var(--vf-controls-padding-x)",borderRadius:"var(--vf-radii-md)",borderColor:"var(--vf-border-color)",backgroundColor:"var(--vf-controls-background-color)",textColor:"var(--vf-text-color)",focusBorderColor:"var(--vf-blue-600)",hoverBorderColor:"var(--vf-blue-500)",disabledOpacity:"var(--vf-states-disabled-opacity)",panelBackgroundColor:"var(--vf-bg-color)",panelBorderColor:"var(--vf-border-color)",panelPadding:"0.35rem",panelMaxHeight:"16rem",panelRadiusOffset:"2px",panelShadow:"0 10px 30px rgba(0, 0, 0, 0.12)",focusRingShadow:"var(--vf-states-focus-ring-shadow)",optionPadding:"0.5rem 0.6rem",optionBorderRadius:"var(--vf-radii-md)",optionHoverBackgroundColor:"rgba(var(--vf-blue-600-rgb), 0.08)",optionActiveBackgroundColor:"rgba(var(--vf-blue-600-rgb), 0.14)",optionActiveTextColor:"var(--vf-text-color)",small:{padding:"var(--vf-sizes-sm-padding-y) var(--vf-sizes-sm-padding-x)",fontSize:"var(--vf-sizes-sm-font-size)"},large:{padding:"var(--vf-sizes-lg-padding-y) var(--vf-sizes-lg-padding-x)",fontSize:"var(--vf-sizes-lg-font-size)"}},checkbox:{size:"1rem",gap:"0.5rem",borderRadius:"var(--vf-radii-sm)",checkBorderRadius:"2px",borderColor:"var(--vf-border-color)",backgroundColor:"var(--vf-controls-background-color)",checkedBackgroundColor:"var(--vf-blue)",checkedBorderColor:"var(--vf-blue)",checkColor:"#ffffff",textColor:"var(--vf-text-color)",disabledOpacity:"var(--vf-states-disabled-opacity)"},radio:{size:"1rem",dotSize:"0.45rem",gap:"0.5rem",groupGap:"0.5rem",borderRadius:"999px",dotBorderRadius:"999px",borderColor:"var(--vf-border-color)",backgroundColor:"var(--vf-controls-background-color)",checkedBackgroundColor:"var(--vf-blue)",checkedBorderColor:"var(--vf-blue)",dotColor:"#ffffff",textColor:"var(--vf-text-color)",disabledOpacity:"var(--vf-states-disabled-opacity)"},switch:{width:"2.25rem",height:"1.25rem",thumbSize:"1rem",gap:"0.5rem",thumbOffset:"2px",thumbTranslateOffset:"4px",backgroundColor:"var(--vf-border-color)",checkedBackgroundColor:"var(--vf-blue)",thumbColor:"#ffffff",textColor:"var(--vf-text-color)",disabledOpacity:"var(--vf-states-disabled-opacity)"},tooltip:{padding:"0.35rem 0.6rem",borderRadius:"8px",backgroundColor:"rgba(0, 0, 0, 0.8)",textColor:"#ffffff",fontSize:"0.75rem",lineHeight:"1.2",shadow:"0 8px 20px rgba(0, 0, 0, 0.2)",zIndex:"120",maxWidth:"240px",arrowSize:"8px"}}};w.Button=De,w.Card=fe,w.Checkbox=yo,w.DefaultTheme=nt,w.Input=je,w.Link=ne,w.Menu=Me,w.Modal=Wo,w.Popover=Eo,w.RadioButton=Bo,w.RadioGroup=wo,w.Select=mo,w.Switch=Fo,w.Textarea=Ke,w.Tooltip=Ho,w.VueForge=rt,w.getTheme=tt,w.setTheme=se,w.updateTheme=ot,Object.defineProperty(w,Symbol.toStringTag,{value:"Module"})}));
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,38 @@
1
+ import { RadioValue, RadioVariant } from './radio-context';
2
+ interface Props {
3
+ modelValue?: RadioValue;
4
+ value?: RadioValue;
5
+ label?: string;
6
+ disabled?: boolean;
7
+ name?: string;
8
+ variant?: RadioVariant;
9
+ }
10
+ declare function __VLS_template(): {
11
+ attrs: Partial<{}>;
12
+ slots: {
13
+ default?(_: {}): any;
14
+ };
15
+ refs: {};
16
+ rootEl: HTMLLabelElement;
17
+ };
18
+ type __VLS_TemplateResult = ReturnType<typeof __VLS_template>;
19
+ declare const __VLS_component: import('vue').DefineComponent<Props, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
20
+ change: (...args: any[]) => void;
21
+ "update:modelValue": (...args: any[]) => void;
22
+ }, string, import('vue').PublicProps, Readonly<Props> & Readonly<{
23
+ onChange?: ((...args: any[]) => any) | undefined;
24
+ "onUpdate:modelValue"?: ((...args: any[]) => any) | undefined;
25
+ }>, {
26
+ label: string;
27
+ disabled: boolean;
28
+ variant: RadioVariant;
29
+ modelValue: string | number | boolean | null;
30
+ value: string | number | boolean | null;
31
+ }, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, HTMLLabelElement>;
32
+ declare const _default: __VLS_WithTemplateSlots<typeof __VLS_component, __VLS_TemplateResult["slots"]>;
33
+ export default _default;
34
+ type __VLS_WithTemplateSlots<T, S> = T & {
35
+ new (): {
36
+ $slots: S;
37
+ };
38
+ };
@@ -0,0 +1,11 @@
1
+ import { ComputedRef } from 'vue';
2
+ export type RadioValue = string | number | boolean | null | undefined;
3
+ export type RadioVariant = 'filled' | 'outlined';
4
+ export type RadioGroupContext = {
5
+ name: ComputedRef<string | undefined>;
6
+ modelValue: ComputedRef<RadioValue>;
7
+ disabled: ComputedRef<boolean>;
8
+ variant: ComputedRef<RadioVariant>;
9
+ onChange: (value: RadioValue, event: Event) => void;
10
+ };
11
+ export declare const radioGroupKey: unique symbol;
@@ -0,0 +1,39 @@
1
+ import { RadioValue, RadioVariant } from './radio-context';
2
+ type Direction = 'vertical' | 'horizontal';
3
+ interface Props {
4
+ modelValue?: RadioValue;
5
+ name?: string;
6
+ disabled?: boolean;
7
+ variant?: RadioVariant;
8
+ direction?: Direction;
9
+ ariaLabel?: string;
10
+ ariaLabelledby?: string;
11
+ }
12
+ declare function __VLS_template(): {
13
+ attrs: Partial<{}>;
14
+ slots: {
15
+ default?(_: {}): any;
16
+ };
17
+ refs: {};
18
+ rootEl: HTMLDivElement;
19
+ };
20
+ type __VLS_TemplateResult = ReturnType<typeof __VLS_template>;
21
+ declare const __VLS_component: import('vue').DefineComponent<Props, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
22
+ change: (...args: any[]) => void;
23
+ "update:modelValue": (...args: any[]) => void;
24
+ }, string, import('vue').PublicProps, Readonly<Props> & Readonly<{
25
+ onChange?: ((...args: any[]) => any) | undefined;
26
+ "onUpdate:modelValue"?: ((...args: any[]) => any) | undefined;
27
+ }>, {
28
+ disabled: boolean;
29
+ variant: RadioVariant;
30
+ modelValue: string | number | boolean | null;
31
+ direction: Direction;
32
+ }, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, HTMLDivElement>;
33
+ declare const _default: __VLS_WithTemplateSlots<typeof __VLS_component, __VLS_TemplateResult["slots"]>;
34
+ export default _default;
35
+ type __VLS_WithTemplateSlots<T, S> = T & {
36
+ new (): {
37
+ $slots: S;
38
+ };
39
+ };
@@ -40,6 +40,21 @@ export type CheckboxTokens = {
40
40
  textColor?: string;
41
41
  disabledOpacity?: string;
42
42
  };
43
+ export type RadioTokens = {
44
+ size?: string;
45
+ dotSize?: string;
46
+ gap?: string;
47
+ groupGap?: string;
48
+ borderRadius?: string;
49
+ dotBorderRadius?: string;
50
+ borderColor?: string;
51
+ backgroundColor?: string;
52
+ checkedBackgroundColor?: string;
53
+ checkedBorderColor?: string;
54
+ dotColor?: string;
55
+ textColor?: string;
56
+ disabledOpacity?: string;
57
+ };
43
58
  export type InputTokens = {
44
59
  gap?: string;
45
60
  fontSize?: string;
@@ -208,6 +223,7 @@ export type ThemeComponentTokens = {
208
223
  button?: ButtonTokens;
209
224
  card?: CardTokens;
210
225
  checkbox?: CheckboxTokens;
226
+ radio?: RadioTokens;
211
227
  input?: InputTokens;
212
228
  textarea?: TextareaTokens;
213
229
  link?: LinkTokens;
@@ -0,0 +1,16 @@
1
+ declare const _default: {
2
+ size: string;
3
+ dotSize: string;
4
+ gap: string;
5
+ groupGap: string;
6
+ borderRadius: string;
7
+ dotBorderRadius: string;
8
+ borderColor: string;
9
+ backgroundColor: string;
10
+ checkedBackgroundColor: string;
11
+ checkedBorderColor: string;
12
+ dotColor: string;
13
+ textColor: string;
14
+ disabledOpacity: string;
15
+ };
16
+ export default _default;
@@ -361,6 +361,21 @@ declare const _default: {
361
361
  textColor: string;
362
362
  disabledOpacity: string;
363
363
  };
364
+ radio: {
365
+ size: string;
366
+ dotSize: string;
367
+ gap: string;
368
+ groupGap: string;
369
+ borderRadius: string;
370
+ dotBorderRadius: string;
371
+ borderColor: string;
372
+ backgroundColor: string;
373
+ checkedBackgroundColor: string;
374
+ checkedBorderColor: string;
375
+ dotColor: string;
376
+ textColor: string;
377
+ disabledOpacity: string;
378
+ };
364
379
  switch: {
365
380
  width: string;
366
381
  height: string;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@codemonster-ru/vueforge",
3
- "version": "0.11.0",
3
+ "version": "0.12.0",
4
4
  "description": "Open source UI components for Vue.js.",
5
5
  "license": "MIT",
6
6
  "author": "Kirill Kolesnikov",