vue3-select-component
Advanced tools
Comparing version
@@ -1,7 +0,7 @@ | ||
(function(){"use strict";try{if(typeof document<"u"){var o=document.createElement("style");o.appendChild(document.createTextNode('@keyframes spinner-circle-animation-ed866313{0%,39%,to{opacity:0}40%{opacity:1}}.spinner[data-v-ed866313]{position:relative;width:var(--vs-spinner-size);height:var(--vs-spinner-size);margin:0;padding:0}.spinner-circle[data-v-ed866313]{width:100%;height:100%;position:absolute;left:0;top:0}.spinner-circle[data-v-ed866313]:before{content:"";display:block;margin:0 auto;width:15%;height:15%;background-color:var(--vs-spinner-color);border-radius:100%;-webkit-animation:spinner-circle-animation-ed866313 1.2s infinite ease-in-out both;animation:spinner-circle-animation-ed866313 1.2s infinite ease-in-out both}.spinner-circle[data-v-ed866313]:nth-child(2){transform:rotate(30deg)}.spinner-circle[data-v-ed866313]:nth-child(3){transform:rotate(60deg)}.spinner-circle[data-v-ed866313]:nth-child(4){transform:rotate(90deg)}.spinner-circle[data-v-ed866313]:nth-child(5){transform:rotate(120deg)}.spinner-circle[data-v-ed866313]:nth-child(6){transform:rotate(150deg)}.spinner-circle[data-v-ed866313]:nth-child(7){transform:rotate(180deg)}.spinner-circle[data-v-ed866313]:nth-child(8){transform:rotate(210deg)}.spinner-circle[data-v-ed866313]:nth-child(9){transform:rotate(240deg)}.spinner-circle[data-v-ed866313]:nth-child(10){transform:rotate(270deg)}.spinner-circle[data-v-ed866313]:nth-child(11){transform:rotate(300deg)}.spinner-circle[data-v-ed866313]:nth-child(12){transform:rotate(330deg)}.spinner-circle[data-v-ed866313]:nth-child(2):before{animation-delay:-1.1s}.spinner-circle[data-v-ed866313]:nth-child(3):before{animation-delay:-1s}.spinner-circle[data-v-ed866313]:nth-child(4):before{animation-delay:-.9s}.spinner-circle[data-v-ed866313]:nth-child(5):before{animation-delay:-.8s}.spinner-circle[data-v-ed866313]:nth-child(6):before{animation-delay:-.7s}.spinner-circle[data-v-ed866313]:nth-child(7):before{animation-delay:-.6s}.spinner-circle[data-v-ed866313]:nth-child(8):before{animation-delay:-.5s}.spinner-circle[data-v-ed866313]:nth-child(9):before{animation-delay:-.4s}.spinner-circle[data-v-ed866313]:nth-child(10):before{animation-delay:-.3s}.spinner-circle[data-v-ed866313]:nth-child(11):before{animation-delay:-.2s}.spinner-circle[data-v-ed866313]:nth-child(12):before{animation-delay:-.1s}.indicators-container[data-v-c1d96dfe]{display:flex;align-items:center;align-self:stretch;flex-shrink:0;gap:var(--vs-indicators-gap);padding:var(--vs-padding)}.clear-button[data-v-c1d96dfe]{appearance:none;display:inline-block;padding:0;margin:0;border:0;width:var(--vs-indicator-icon-size);height:var(--vs-indicator-icon-size);color:var(--vs-indicator-icon-color);background:none;outline:none;cursor:var(--vs-indicator-icon-cursor)}.dropdown-icon[data-v-c1d96dfe]{appearance:none;display:inline-block;padding:0;margin:0;border:0;width:var(--vs-indicator-icon-size);height:var(--vs-indicator-icon-size);color:var(--vs-indicator-icon-color);background:none;outline:none;cursor:var(--vs-indicator-icon-cursor);transition:var(--vs-indicator-dropdown-icon-transition)}.dropdown-icon.active[data-v-c1d96dfe]{transform:rotate(180deg)}.menu-option[data-v-00296627]{display:flex;width:var(--vs-option-width);border:0;margin:0;padding:var(--vs-option-padding);font-size:var(--vs-option-font-size);font-weight:var(--vs-option-font-weight);font-family:var(--vs-font-family);color:var(--vs-option-text-color);white-space:break-spaces;background-color:var(--vs-option-background-color);text-align:var(--vs-option-text-align);cursor:var(--vs-option-cursor)}.menu-option[data-v-00296627]:hover{background-color:var(--vs-option-hover-background-color);color:var(--vs-option-hover-text-color)}.menu-option.focused[data-v-00296627]{background-color:var(--vs-option-focused-background-color);color:var(--vs-option-focused-text-color)}.menu-option.selected[data-v-00296627]{background-color:var(--vs-option-selected-background-color);color:var(--vs-option-selected-text-color)}.menu-option.disabled[data-v-00296627]{background-color:var(--vs-option-disabled-background-color);color:var(--vs-option-disabled-text-color)}.multi-value[data-v-bb4d11af]{display:flex;min-width:0px;margin:var(--vs-multi-value-margin);border-radius:var(--vs-multi-value-border-radius);background:var(--vs-multi-value-background-color)}.multi-value-label[data-v-bb4d11af]{padding:var(--vs-multi-value-label-padding);border:var(--vs-multi-value-border);border-radius:var(--vs-multi-value-border-radius);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:var(--vs-multi-value-label-font-size);font-weight:var(--vs-multi-value-label-font-weight);line-height:var(--vs-multi-value-label-line-height);color:var(--vs-multi-value-label-text-color)}.multi-value-remove[data-v-bb4d11af]{border-radius:var(--vs-multi-value-border-radius);appearance:none;display:flex;align-items:center;padding:var(--vs-multi-value-delete-padding);border:none;outline:none;cursor:var(--vs-multi-value-xmark-cursor);background-color:var(--vs-multi-value-background-color)}.multi-value-remove[data-v-bb4d11af]:hover{background-color:var(--vs-multi-value-delete-hover-background-color)}.multi-value-remove svg[data-v-bb4d11af]{width:var(--vs-multi-value-xmark-size);height:var(--vs-multi-value-xmark-size);fill:var(--vs-multi-value-xmark-color)}.multi-value-remove:hover svg[data-v-bb4d11af]{fill:var(--vs-multi-value-xmark-hover-color)}.input-placeholder[data-v-a6f8261d]{grid-area:1 / 1 / 2 / 3;color:var(--vs-placeholder-color)}:root{--vs-width: 100%;--vs-min-height: 38px;--vs-padding: 4px 8px;--vs-border: 1px solid #e4e4e7;--vs-border-radius: 4px;--vs-font-size: 16px;--vs-font-weight: 400;--vs-font-family: inherit;--vs-text-color: #18181b;--vs-line-height: 1.5;--vs-placeholder-color: #52525b;--vs-background-color: #fff;--vs-disabled-background-color: #f4f4f5;--vs-outline-width: 1px;--vs-outline-color: #3b82f6;--vs-menu-offset-top: 8px;--vs-menu-height: 200px;--vs-menu-border: var(--vs-border);--vs-menu-background-color: var(--vs-background-color);--vs-menu-box-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--vs-menu-z-index: 2;--vs-option-width: 100%;--vs-option-padding: 8px 12px;--vs-option-cursor: pointer;--vs-option-font-size: var(--vs-font-size);--vs-option-font-weight: var(--vs-font-weight);--vs-option-text-align: -webkit-auto;--vs-option-text-color: var(--vs-text-color);--vs-option-hover-text-color: var(--vs-text-color);--vs-option-focused-text-color: var(--vs-text-color);--vs-option-selected-text-color: var(--vs-text-color);--vs-option-disabled-text-color: #52525b;--vs-option-background-color: var(--vs-menu-background);--vs-option-hover-background-color: #dbeafe;--vs-option-focused-background-color: var(--vs-option-hover-background-color);--vs-option-selected-background-color: #93c5fd;--vs-option-disabled-background-color: #f4f4f5;--vs-option-opacity-menu-open: .4;--vs-multi-value-margin: 2px;--vs-multi-value-border: 0px;--vs-multi-value-border-radius: 2px;--vs-multi-value-background-color: #f4f4f5;--vs-multi-value-label-padding: 4px 4px 4px 8px;--vs-multi-value-label-font-size: 12px;--vs-multi-value-label-font-weight: 400;--vs-multi-value-label-line-height: 1;--vs-multi-value-label-text-color: #3f3f46;--vs-multi-value-delete-padding: 0 3px;--vs-multi-value-delete-hover-background-color: #FF6467;--vs-multi-value-xmark-size: 16px;--vs-multi-value-xmark-cursor: pointer;--vs-multi-value-xmark-color: var(--vs-multi-value-label-text-color);--vs-multi-value-xmark-hover-color: #fff;--vs-indicators-gap: 0px;--vs-indicator-icon-size: 20px;--vs-indicator-icon-color: var(--vs-text-color);--vs-indicator-icon-cursor: pointer;--vs-indicator-dropdown-icon-transition: transform .2s ease-out;--vs-spinner-color: var(--vs-text-color);--vs-spinner-size: 16px}[data-v-47bbf404]{box-sizing:border-box}.vue-select[data-v-47bbf404]{position:relative;box-sizing:border-box;width:var(--vs-width)}.control[data-v-47bbf404]{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;min-height:var(--vs-min-height);border:var(--vs-border);border-radius:var(--vs-border-radius);background-color:var(--vs-background-color)}.control.focused[data-v-47bbf404]{box-shadow:0 0 0 var(--vs-outline-width) var(--vs-outline-color);border-color:var(--vs-outline-color)}.control.disabled[data-v-47bbf404]{background-color:var(--vs-disabled-background-color)}.value-container[data-v-47bbf404]{position:relative;overflow:hidden;display:grid;align-items:center;flex:1 1 0%;padding:var(--vs-padding)}.value-container.multi.has-value[data-v-47bbf404]{display:flex;flex-wrap:wrap}.single-value[data-v-47bbf404]{display:block;grid-area:1 / 1 / 2 / 3;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:var(--vs-font-size);font-weight:var(--vs-font-weight);font-family:var(--vs-font-family);line-height:var(--vs-line-height);color:var(--vs-text-color)}.vue-select[data-state=open] .single-value[data-v-47bbf404]{opacity:var(--vs-option-opacity-menu-open)}.vue-select.typing .single-value[data-v-47bbf404]{opacity:0}.input-container[data-v-47bbf404]{visibility:visible;display:inline-grid;grid-area:1 / 1 / 2 / 3;grid-template-columns:0px min-content}.input-container.typing[data-v-47bbf404]{transform:translateZ(0)}.input-container.typing[data-v-47bbf404]:after{content:attr(data-value) " ";visibility:hidden;white-space:pre;grid-area:1 / 2;min-width:2px;padding:0;margin:0;border:0}.search-input[data-v-47bbf404]{margin:0;padding:0;border:0;min-width:2px;width:100%;grid-area:1 / 2;background:0px center;font-size:var(--vs-font-size);font-family:var(--vs-font-family);line-height:var(--vs-line-height);color:var(--vs-text-color);opacity:1;outline:none}.menu[data-v-47bbf404]{position:absolute;margin-top:var(--vs-menu-offset-top);max-height:var(--vs-menu-height);overflow-y:auto;border:var(--vs-menu-border);border-radius:var(--vs-border-radius);box-shadow:var(--vs-menu-box-shadow);background-color:var(--vs-menu-background-color);z-index:var(--vs-menu-z-index)}.no-results[data-v-47bbf404]{padding:var(--vs-option-padding);font-size:var(--vs-font-size);font-family:var(--vs-font-family);color:var(--vs-text-color)}.taggable-no-options[data-v-47bbf404]{padding:var(--vs-option-padding);font-size:var(--vs-font-size);font-family:var(--vs-font-family);color:var(--vs-text-color);cursor:pointer}')),document.head.appendChild(o)}}catch(e){console.error("vite-plugin-css-injected-by-js",e)}})(); | ||
import { openBlock as u, createElementBlock as f, createElementVNode as $, Fragment as P, renderList as K, defineComponent as R, useTemplateRef as D, withModifiers as U, renderSlot as m, createVNode as I, createCommentVNode as M, normalizeClass as L, createBlock as T, ref as F, watch as z, withKeys as ae, toDisplayString as V, mergeModels as J, useModel as ie, computed as Q, onMounted as se, onBeforeUnmount as ue, createTextVNode as N, withDirectives as de, vModelText as re, withCtx as E, Teleport as ce, normalizeStyle as pe, unref as Y } from "vue"; | ||
const k = (d, s) => { | ||
const t = d.__vccOpts || d; | ||
for (const [c, a] of s) | ||
t[c] = a; | ||
(function(){"use strict";try{if(typeof document<"u"){var o=document.createElement("style");o.appendChild(document.createTextNode('@keyframes spinner-circle-animation-ed866313{0%,39%,to{opacity:0}40%{opacity:1}}.spinner[data-v-ed866313]{position:relative;width:var(--vs-spinner-size);height:var(--vs-spinner-size);margin:0;padding:0}.spinner-circle[data-v-ed866313]{width:100%;height:100%;position:absolute;left:0;top:0}.spinner-circle[data-v-ed866313]:before{content:"";display:block;margin:0 auto;width:15%;height:15%;background-color:var(--vs-spinner-color);border-radius:100%;-webkit-animation:spinner-circle-animation-ed866313 1.2s infinite ease-in-out both;animation:spinner-circle-animation-ed866313 1.2s infinite ease-in-out both}.spinner-circle[data-v-ed866313]:nth-child(2){transform:rotate(30deg)}.spinner-circle[data-v-ed866313]:nth-child(3){transform:rotate(60deg)}.spinner-circle[data-v-ed866313]:nth-child(4){transform:rotate(90deg)}.spinner-circle[data-v-ed866313]:nth-child(5){transform:rotate(120deg)}.spinner-circle[data-v-ed866313]:nth-child(6){transform:rotate(150deg)}.spinner-circle[data-v-ed866313]:nth-child(7){transform:rotate(180deg)}.spinner-circle[data-v-ed866313]:nth-child(8){transform:rotate(210deg)}.spinner-circle[data-v-ed866313]:nth-child(9){transform:rotate(240deg)}.spinner-circle[data-v-ed866313]:nth-child(10){transform:rotate(270deg)}.spinner-circle[data-v-ed866313]:nth-child(11){transform:rotate(300deg)}.spinner-circle[data-v-ed866313]:nth-child(12){transform:rotate(330deg)}.spinner-circle[data-v-ed866313]:nth-child(2):before{animation-delay:-1.1s}.spinner-circle[data-v-ed866313]:nth-child(3):before{animation-delay:-1s}.spinner-circle[data-v-ed866313]:nth-child(4):before{animation-delay:-.9s}.spinner-circle[data-v-ed866313]:nth-child(5):before{animation-delay:-.8s}.spinner-circle[data-v-ed866313]:nth-child(6):before{animation-delay:-.7s}.spinner-circle[data-v-ed866313]:nth-child(7):before{animation-delay:-.6s}.spinner-circle[data-v-ed866313]:nth-child(8):before{animation-delay:-.5s}.spinner-circle[data-v-ed866313]:nth-child(9):before{animation-delay:-.4s}.spinner-circle[data-v-ed866313]:nth-child(10):before{animation-delay:-.3s}.spinner-circle[data-v-ed866313]:nth-child(11):before{animation-delay:-.2s}.spinner-circle[data-v-ed866313]:nth-child(12):before{animation-delay:-.1s}.indicators-container[data-v-c1d96dfe]{display:flex;align-items:center;align-self:stretch;flex-shrink:0;gap:var(--vs-indicators-gap);padding:var(--vs-padding)}.clear-button[data-v-c1d96dfe]{appearance:none;display:inline-block;padding:0;margin:0;border:0;width:var(--vs-indicator-icon-size);height:var(--vs-indicator-icon-size);color:var(--vs-indicator-icon-color);background:none;outline:none;cursor:var(--vs-indicator-icon-cursor)}.dropdown-icon[data-v-c1d96dfe]{appearance:none;display:inline-block;padding:0;margin:0;border:0;width:var(--vs-indicator-icon-size);height:var(--vs-indicator-icon-size);color:var(--vs-indicator-icon-color);background:none;outline:none;cursor:var(--vs-indicator-icon-cursor);transition:var(--vs-indicator-dropdown-icon-transition)}.dropdown-icon.active[data-v-c1d96dfe]{transform:rotate(180deg)}.menu-option[data-v-00296627]{display:flex;width:var(--vs-option-width);border:0;margin:0;padding:var(--vs-option-padding);font-size:var(--vs-option-font-size);font-weight:var(--vs-option-font-weight);font-family:var(--vs-font-family);color:var(--vs-option-text-color);white-space:break-spaces;background-color:var(--vs-option-background-color);text-align:var(--vs-option-text-align);cursor:var(--vs-option-cursor)}.menu-option[data-v-00296627]:hover{background-color:var(--vs-option-hover-background-color);color:var(--vs-option-hover-text-color)}.menu-option.focused[data-v-00296627]{background-color:var(--vs-option-focused-background-color);color:var(--vs-option-focused-text-color)}.menu-option.selected[data-v-00296627]{background-color:var(--vs-option-selected-background-color);color:var(--vs-option-selected-text-color)}.menu-option.disabled[data-v-00296627]{background-color:var(--vs-option-disabled-background-color);color:var(--vs-option-disabled-text-color)}.multi-value[data-v-bb4d11af]{display:flex;min-width:0px;margin:var(--vs-multi-value-margin);border-radius:var(--vs-multi-value-border-radius);background:var(--vs-multi-value-background-color)}.multi-value-label[data-v-bb4d11af]{padding:var(--vs-multi-value-label-padding);border:var(--vs-multi-value-border);border-radius:var(--vs-multi-value-border-radius);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:var(--vs-multi-value-label-font-size);font-weight:var(--vs-multi-value-label-font-weight);line-height:var(--vs-multi-value-label-line-height);color:var(--vs-multi-value-label-text-color)}.multi-value-remove[data-v-bb4d11af]{border-radius:var(--vs-multi-value-border-radius);appearance:none;display:flex;align-items:center;padding:var(--vs-multi-value-delete-padding);border:none;outline:none;cursor:var(--vs-multi-value-xmark-cursor);background-color:var(--vs-multi-value-background-color)}.multi-value-remove[data-v-bb4d11af]:hover{background-color:var(--vs-multi-value-delete-hover-background-color)}.multi-value-remove svg[data-v-bb4d11af]{width:var(--vs-multi-value-xmark-size);height:var(--vs-multi-value-xmark-size);fill:var(--vs-multi-value-xmark-color)}.multi-value-remove:hover svg[data-v-bb4d11af]{fill:var(--vs-multi-value-xmark-hover-color)}.input-placeholder[data-v-a6f8261d]{grid-area:1 / 1 / 2 / 3;color:var(--vs-placeholder-color)}:root{--vs-width: 100%;--vs-min-height: 38px;--vs-padding: 4px 8px;--vs-border: 1px solid #e4e4e7;--vs-border-radius: 4px;--vs-font-size: 16px;--vs-font-weight: 400;--vs-font-family: inherit;--vs-text-color: #18181b;--vs-line-height: 1.5;--vs-placeholder-color: #52525b;--vs-background-color: #fff;--vs-disabled-background-color: #f4f4f5;--vs-outline-width: 1px;--vs-outline-color: #3b82f6;--vs-menu-offset-top: 8px;--vs-menu-height: 200px;--vs-menu-border: var(--vs-border);--vs-menu-background-color: var(--vs-background-color);--vs-menu-box-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--vs-menu-z-index: 2;--vs-option-width: 100%;--vs-option-padding: 8px 12px;--vs-option-cursor: pointer;--vs-option-font-size: var(--vs-font-size);--vs-option-font-weight: var(--vs-font-weight);--vs-option-text-align: -webkit-auto;--vs-option-text-color: var(--vs-text-color);--vs-option-hover-text-color: var(--vs-text-color);--vs-option-focused-text-color: var(--vs-text-color);--vs-option-selected-text-color: var(--vs-text-color);--vs-option-disabled-text-color: #52525b;--vs-option-background-color: var(--vs-menu-background);--vs-option-hover-background-color: #dbeafe;--vs-option-focused-background-color: var(--vs-option-hover-background-color);--vs-option-selected-background-color: #93c5fd;--vs-option-disabled-background-color: #f4f4f5;--vs-option-opacity-menu-open: .4;--vs-multi-value-margin: 2px;--vs-multi-value-border: 0px;--vs-multi-value-border-radius: 2px;--vs-multi-value-background-color: #f4f4f5;--vs-multi-value-label-padding: 4px 4px 4px 8px;--vs-multi-value-label-font-size: 12px;--vs-multi-value-label-font-weight: 400;--vs-multi-value-label-line-height: 1;--vs-multi-value-label-text-color: #3f3f46;--vs-multi-value-delete-padding: 0 3px;--vs-multi-value-delete-hover-background-color: #FF6467;--vs-multi-value-xmark-size: 16px;--vs-multi-value-xmark-cursor: pointer;--vs-multi-value-xmark-color: var(--vs-multi-value-label-text-color);--vs-multi-value-xmark-hover-color: #fff;--vs-indicators-gap: 0px;--vs-indicator-icon-size: 20px;--vs-indicator-icon-color: var(--vs-text-color);--vs-indicator-icon-cursor: pointer;--vs-indicator-dropdown-icon-transition: transform .2s ease-out;--vs-spinner-color: var(--vs-text-color);--vs-spinner-size: 16px}[data-v-0d1797a0]{box-sizing:border-box}.vue-select[data-v-0d1797a0]{position:relative;box-sizing:border-box;width:var(--vs-width)}.control[data-v-0d1797a0]{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;min-height:var(--vs-min-height);border:var(--vs-border);border-radius:var(--vs-border-radius);background-color:var(--vs-background-color)}.control.focused[data-v-0d1797a0]{box-shadow:0 0 0 var(--vs-outline-width) var(--vs-outline-color);border-color:var(--vs-outline-color)}.control.disabled[data-v-0d1797a0]{background-color:var(--vs-disabled-background-color)}.value-container[data-v-0d1797a0]{position:relative;overflow:hidden;display:grid;align-items:center;flex:1 1 0%;padding:var(--vs-padding)}.value-container.multi.has-value[data-v-0d1797a0]{display:flex;flex-wrap:wrap}.single-value[data-v-0d1797a0]{display:block;grid-area:1 / 1 / 2 / 3;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:var(--vs-font-size);font-weight:var(--vs-font-weight);font-family:var(--vs-font-family);line-height:var(--vs-line-height);color:var(--vs-text-color)}.vue-select[data-state=open] .single-value[data-v-0d1797a0]{opacity:var(--vs-option-opacity-menu-open)}.vue-select.typing .single-value[data-v-0d1797a0]{opacity:0}.input-container[data-v-0d1797a0]{visibility:visible;display:inline-grid;grid-area:1 / 1 / 2 / 3;grid-template-columns:0px min-content}.input-container.typing[data-v-0d1797a0]{transform:translateZ(0)}.input-container.typing[data-v-0d1797a0]:after{content:attr(data-value) " ";visibility:hidden;white-space:pre;grid-area:1 / 2;min-width:2px;padding:0;margin:0;border:0}.search-input[data-v-0d1797a0]{margin:0;padding:0;border:0;min-width:2px;width:100%;grid-area:1 / 2;background:0px center;font-size:var(--vs-font-size);font-family:var(--vs-font-family);line-height:var(--vs-line-height);color:var(--vs-text-color);opacity:1;outline:none}.menu[data-v-0d1797a0]{position:absolute;margin-top:var(--vs-menu-offset-top);max-height:var(--vs-menu-height);overflow-y:auto;border:var(--vs-menu-border);border-radius:var(--vs-border-radius);box-shadow:var(--vs-menu-box-shadow);background-color:var(--vs-menu-background-color);z-index:var(--vs-menu-z-index)}.no-results[data-v-0d1797a0]{padding:var(--vs-option-padding);font-size:var(--vs-font-size);font-family:var(--vs-font-family);color:var(--vs-text-color)}.taggable-no-options[data-v-0d1797a0]{padding:var(--vs-option-padding);font-size:var(--vs-font-size);font-family:var(--vs-font-family);color:var(--vs-text-color);cursor:pointer}')),document.head.appendChild(o)}}catch(a){console.error("vite-plugin-css-injected-by-js",a)}})(); | ||
import { openBlock as u, createElementBlock as f, createElementVNode as w, Fragment as P, renderList as K, defineComponent as V, useTemplateRef as D, withModifiers as U, renderSlot as m, createVNode as I, createCommentVNode as O, normalizeClass as L, createBlock as A, ref as F, watch as W, withKeys as oe, toDisplayString as T, mergeModels as J, useModel as ie, computed as Q, onMounted as se, onBeforeUnmount as ue, createTextVNode as N, withDirectives as re, vModelText as de, withCtx as E, Teleport as ce, normalizeStyle as pe, unref as Y } from "vue"; | ||
const k = (r, s) => { | ||
const t = r.__vccOpts || r; | ||
for (const [c, l] of s) | ||
t[c] = l; | ||
return t; | ||
@@ -13,5 +13,5 @@ }, ve = {}, fe = { | ||
}; | ||
function be(d, s) { | ||
function be(r, s) { | ||
return u(), f("svg", fe, s[0] || (s[0] = [ | ||
$("path", { | ||
w("path", { | ||
"fill-rule": "evenodd", | ||
@@ -23,3 +23,3 @@ d: "M5.22 8.22a.75.75 0 0 1 1.06 0L10 11.94l3.72-3.72a.75.75 0 1 1 1.06 1.06l-4.25 4.25a.75.75 0 0 1-1.06 0L5.22 9.28a.75.75 0 0 1 0-1.06Z", | ||
} | ||
const x = /* @__PURE__ */ k(ve, [["render", be]]), me = {}, ge = { | ||
const x = /* @__PURE__ */ k(ve, [["render", be]]), me = {}, ye = { | ||
xmlns: "http://www.w3.org/2000/svg", | ||
@@ -29,11 +29,11 @@ viewBox: "0 0 20 20", | ||
}; | ||
function ye(d, s) { | ||
return u(), f("svg", ge, s[0] || (s[0] = [ | ||
$("path", { d: "M6.28 5.22a.75.75 0 0 0-1.06 1.06L8.94 10l-3.72 3.72a.75.75 0 1 0 1.06 1.06L10 11.06l3.72 3.72a.75.75 0 1 0 1.06-1.06L11.06 10l3.72-3.72a.75.75 0 0 0-1.06-1.06L10 8.94 6.28 5.22Z" }, null, -1) | ||
function ge(r, s) { | ||
return u(), f("svg", ye, s[0] || (s[0] = [ | ||
w("path", { d: "M6.28 5.22a.75.75 0 0 0-1.06 1.06L8.94 10l-3.72 3.72a.75.75 0 1 0 1.06 1.06L10 11.06l3.72 3.72a.75.75 0 1 0 1.06-1.06L11.06 10l3.72-3.72a.75.75 0 0 0-1.06-1.06L10 8.94 6.28 5.22Z" }, null, -1) | ||
])); | ||
} | ||
const H = /* @__PURE__ */ k(me, [["render", ye]]), he = {}, $e = { className: "spinner" }; | ||
function we(d, s) { | ||
return u(), f("div", $e, [ | ||
(u(), f(P, null, K(12, (t) => $("div", { | ||
const z = /* @__PURE__ */ k(me, [["render", ge]]), he = {}, we = { className: "spinner" }; | ||
function $e(r, s) { | ||
return u(), f("div", we, [ | ||
(u(), f(P, null, K(12, (t) => w("div", { | ||
key: t, | ||
@@ -44,6 +44,6 @@ class: "spinner-circle" | ||
} | ||
const ee = /* @__PURE__ */ k(he, [["render", we], ["__scopeId", "data-v-ed866313"]]), Oe = { | ||
const ee = /* @__PURE__ */ k(he, [["render", $e], ["__scopeId", "data-v-ed866313"]]), Me = { | ||
ref: "container", | ||
class: "indicators-container" | ||
}, Me = ["disabled"], ke = ["disabled"], Be = /* @__PURE__ */ R({ | ||
}, Oe = ["disabled"], ke = ["disabled"], Be = /* @__PURE__ */ V({ | ||
__name: "Indicators", | ||
@@ -58,6 +58,6 @@ props: { | ||
emits: ["clear", "toggle"], | ||
setup(d, { expose: s, emit: t }) { | ||
const c = t, a = D("container"), p = D("clearButton"), v = D("dropdownButton"); | ||
return s({ containerRef: a, clearButtonRef: p, dropdownButtonRef: v }), (r, y) => (u(), f("div", Oe, [ | ||
r.hasSelectedOption && r.isClearable && !r.isLoading ? (u(), f("button", { | ||
setup(r, { expose: s, emit: t }) { | ||
const c = t, l = D("container"), p = D("clearButton"), v = D("dropdownButton"); | ||
return s({ containerRef: l, clearButtonRef: p, dropdownButtonRef: v }), (d, g) => (u(), f("div", Me, [ | ||
d.hasSelectedOption && d.isClearable && !d.isLoading ? (u(), f("button", { | ||
key: 0, | ||
@@ -68,28 +68,28 @@ ref: "clearButton", | ||
tabindex: "-1", | ||
disabled: r.isDisabled, | ||
onClick: y[0] || (y[0] = U((n) => c("clear"), ["stop"])) | ||
disabled: d.isDisabled, | ||
onClick: g[0] || (g[0] = U((a) => c("clear"), ["stop"])) | ||
}, [ | ||
m(r.$slots, "clear", {}, () => [ | ||
I(H) | ||
m(d.$slots, "clear", {}, () => [ | ||
I(z) | ||
], !0) | ||
], 8, Me)) : M("", !0), | ||
r.isLoading ? M("", !0) : (u(), f("button", { | ||
], 8, Oe)) : O("", !0), | ||
d.isLoading ? O("", !0) : (u(), f("button", { | ||
key: 1, | ||
ref: "dropdownButton", | ||
type: "button", | ||
class: L(["dropdown-icon", { active: r.isMenuOpen }]), | ||
class: L(["dropdown-icon", { active: d.isMenuOpen }]), | ||
tabindex: "-1", | ||
disabled: r.isDisabled, | ||
onClick: y[1] || (y[1] = U((n) => c("toggle"), ["stop"])) | ||
disabled: d.isDisabled, | ||
onClick: g[1] || (g[1] = U((a) => c("toggle"), ["stop"])) | ||
}, [ | ||
m(r.$slots, "dropdown", {}, () => [ | ||
m(d.$slots, "dropdown", {}, () => [ | ||
I(x) | ||
], !0) | ||
], 10, ke)), | ||
m(r.$slots, "loading", {}, () => [ | ||
r.isLoading ? (u(), T(ee, { key: 0 })) : M("", !0) | ||
m(d.$slots, "loading", {}, () => [ | ||
d.isLoading ? (u(), A(ee, { key: 0 })) : O("", !0) | ||
], !0) | ||
], 512)); | ||
} | ||
}), Ce = /* @__PURE__ */ k(Be, [["__scopeId", "data-v-c1d96dfe"]]), De = ["aria-disabled", "aria-selected"], Ie = /* @__PURE__ */ R({ | ||
}), Ce = /* @__PURE__ */ k(Be, [["__scopeId", "data-v-c1d96dfe"]]), De = ["aria-disabled", "aria-selected"], Ie = /* @__PURE__ */ V({ | ||
__name: "MenuOption", | ||
@@ -104,10 +104,10 @@ props: { | ||
emits: ["select"], | ||
setup(d, { emit: s }) { | ||
const t = d, c = s, a = F(null); | ||
return z( | ||
setup(r, { emit: s }) { | ||
const t = r, c = s, l = F(null); | ||
return W( | ||
() => t.isFocused, | ||
() => { | ||
if (t.isFocused && t.menu) { | ||
const p = t.menu.children[t.index], v = p.offsetTop, r = v + p.clientHeight, y = t.menu.scrollTop, n = t.menu.clientHeight; | ||
v < y ? t.menu.scrollTop = v : r > y + n && (t.menu.scrollTop = r - n); | ||
const p = t.menu.children[t.index], v = p.offsetTop, d = v + p.clientHeight, g = t.menu.scrollTop, a = t.menu.clientHeight; | ||
v < g ? t.menu.scrollTop = v : d > g + a && (t.menu.scrollTop = d - a); | ||
} | ||
@@ -117,3 +117,3 @@ } | ||
ref_key: "option", | ||
ref: a, | ||
ref: l, | ||
class: L(["menu-option", { focused: p.isFocused, selected: p.isSelected, disabled: p.isDisabled }]), | ||
@@ -124,4 +124,4 @@ tabindex: "-1", | ||
"aria-selected": p.isSelected, | ||
onClick: v[0] || (v[0] = (r) => c("select")), | ||
onKeydown: v[1] || (v[1] = ae((r) => c("select"), ["enter"])) | ||
onClick: v[0] || (v[0] = (d) => c("select")), | ||
onKeydown: v[1] || (v[1] = oe((d) => c("select"), ["enter"])) | ||
}, [ | ||
@@ -131,3 +131,3 @@ m(p.$slots, "default", {}, void 0, !0) | ||
} | ||
}), Le = /* @__PURE__ */ k(Ie, [["__scopeId", "data-v-00296627"]]), Se = { class: "multi-value" }, _e = { class: "multi-value-label" }, Te = ["aria-label"], Ve = /* @__PURE__ */ R({ | ||
}), Le = /* @__PURE__ */ k(Ie, [["__scopeId", "data-v-00296627"]]), Se = { class: "multi-value" }, _e = { class: "multi-value-label" }, Ae = ["aria-label"], Te = /* @__PURE__ */ V({ | ||
__name: "MultiValue", | ||
@@ -138,17 +138,17 @@ props: { | ||
emits: ["remove"], | ||
setup(d, { emit: s }) { | ||
setup(r, { emit: s }) { | ||
const t = s; | ||
return (c, a) => (u(), f("div", Se, [ | ||
$("div", _e, V(c.label), 1), | ||
$("button", { | ||
return (c, l) => (u(), f("div", Se, [ | ||
w("div", _e, T(c.label), 1), | ||
w("button", { | ||
type: "button", | ||
class: "multi-value-remove", | ||
"aria-label": `Remove ${c.label}`, | ||
onClick: a[0] || (a[0] = U((p) => t("remove"), ["stop"])) | ||
onClick: l[0] || (l[0] = U((p) => t("remove"), ["stop"])) | ||
}, [ | ||
I(H) | ||
], 8, Te) | ||
I(z) | ||
], 8, Ae) | ||
])); | ||
} | ||
}), Re = /* @__PURE__ */ k(Ve, [["__scopeId", "data-v-bb4d11af"]]), Ae = { class: "input-placeholder" }, Ne = /* @__PURE__ */ R({ | ||
}), Ve = /* @__PURE__ */ k(Te, [["__scopeId", "data-v-bb4d11af"]]), Re = { class: "input-placeholder" }, Ne = /* @__PURE__ */ V({ | ||
__name: "Placeholder", | ||
@@ -158,4 +158,4 @@ props: { | ||
}, | ||
setup(d) { | ||
return (s, t) => (u(), f("div", Ae, V(s.text), 1)); | ||
setup(r) { | ||
return (s, t) => (u(), f("div", Re, T(s.text), 1)); | ||
} | ||
@@ -167,6 +167,6 @@ }), Ee = /* @__PURE__ */ k(Ne, [["__scopeId", "data-v-a6f8261d"]]); | ||
} | ||
const Pe = ["data-state"], Ke = ["id", "aria-expanded", "aria-describedby", "aria-description", "aria-labelledby", "aria-label", "aria-required", "aria-owns", "aria-controls"], Ue = ["data-value"], ze = ["id", "aria-labelledby", "disabled"], He = ["id", "aria-label", "aria-multiselectable"], We = { | ||
const Pe = ["data-state"], Ke = ["id", "aria-expanded", "aria-describedby", "aria-description", "aria-labelledby", "aria-label", "aria-required", "aria-owns", "aria-controls"], Ue = ["data-value"], We = ["id", "aria-labelledby", "disabled"], ze = ["id", "aria-label", "aria-multiselectable"], He = { | ||
key: 0, | ||
class: "no-results" | ||
}, Ze = /* @__PURE__ */ R({ | ||
}, Ze = /* @__PURE__ */ V({ | ||
__name: "Select", | ||
@@ -192,9 +192,9 @@ props: /* @__PURE__ */ J({ | ||
disableInvalidVModelWarn: { type: Boolean, default: !1 }, | ||
filterBy: { type: Function, default: (d, s, t) => s.toLowerCase().includes(t.toLowerCase()) }, | ||
getOptionValue: { type: Function, default: (d) => d.value }, | ||
getOptionLabel: { type: Function, default: (d) => d.label } | ||
filterBy: { type: Function, default: (r, s, t) => s.toLowerCase().includes(t.toLowerCase()) }, | ||
getOptionValue: { type: Function, default: (r) => r.value }, | ||
getOptionLabel: { type: Function, default: (r) => r.label } | ||
}, { | ||
modelValue: { | ||
required: !0, | ||
validator: (d, s) => s.isMulti ? Array.isArray(d) : !Array.isArray(d) | ||
validator: (r, s) => s.isMulti ? Array.isArray(r) : !Array.isArray(r) | ||
}, | ||
@@ -204,7 +204,7 @@ modelModifiers: {} | ||
emits: /* @__PURE__ */ J(["optionSelected", "optionDeselected", "optionCreated", "menuOpened", "menuClosed", "search"], ["update:modelValue"]), | ||
setup(d, { emit: s }) { | ||
const t = d, c = s, a = ie(d, "modelValue"), p = D("container"), v = D("input"), r = D("menu"), y = D("indicators"), n = F(""), b = F(!1), S = F(-1), w = Q(() => { | ||
setup(r, { emit: s }) { | ||
const t = r, c = s, l = ie(r, "modelValue"), p = D("container"), v = D("input"), d = D("menu"), g = D("indicators"), a = F(""), b = F(!1), S = F(-1), $ = Q(() => { | ||
const e = t.displayedOptions || t.options; | ||
e?.length || console.warn("[vue3-select-component warn]: No options or displayedOptions were provided to the component."); | ||
const l = e.map((o) => ({ | ||
const n = e.map((o) => ({ | ||
...o, | ||
@@ -214,15 +214,15 @@ label: t.getOptionLabel(o), | ||
})), i = (o) => o.filter( | ||
(h) => !a.value.includes(h.value) | ||
(h) => Array.isArray(l.value) && !l.value.includes(h.value) | ||
); | ||
if (t.isSearchable && n.value) { | ||
const o = l.filter((h) => t.filterBy(h, t.getOptionLabel(h), n.value)); | ||
if (t.isSearchable && a.value) { | ||
const o = n.filter((h) => t.filterBy(h, t.getOptionLabel(h), a.value)); | ||
return t.isMulti ? i(o) : o; | ||
} | ||
return t.isMulti ? i(l) : l; | ||
}), g = Q(() => { | ||
return t.isMulti ? i(n) : n; | ||
}), y = Q(() => { | ||
if (t.isMulti) | ||
return Array.isArray(a.value) ? a.value.map( | ||
(l) => t.options.find((i) => i.value === l) | ||
) : (t.disableInvalidVModelWarn || console.warn(`[vue3-select-component warn]: The v-model provided should be an array when using \`isMulti\` prop, instead it was: ${a.value}`), []); | ||
const e = t.options.find((l) => t.getOptionValue(l) === a.value); | ||
return Array.isArray(l.value) ? l.value.map( | ||
(n) => t.options.find((i) => i.value === n) | ||
) : (t.disableInvalidVModelWarn || console.warn(`[vue3-select-component warn]: The v-model provided should be an array when using \`isMulti\` prop, instead it was: ${l.value}`), []); | ||
const e = t.options.find((n) => t.getOptionValue(n) === l.value); | ||
return e ? [e] : []; | ||
@@ -233,25 +233,25 @@ }); | ||
} | ||
function O() { | ||
b.value = !1, n.value = "", c("menuClosed"); | ||
function M() { | ||
b.value = !1, a.value = "", c("menuClosed"); | ||
} | ||
function te() { | ||
b.value ? O() : B(); | ||
b.value ? M() : B(); | ||
} | ||
function le(e) { | ||
y.value?.containerRef && !y.value.containerRef.contains(e.target) && B(); | ||
g.value?.containerRef && !g.value.containerRef.contains(e.target) && B(); | ||
} | ||
const q = (e) => { | ||
e.disabled || (t.isMulti ? a.value.push(e.value) : a.value = e.value, c("optionSelected", e), n.value = "", t.closeOnSelect && O(), v.value && v.value.blur()); | ||
}, W = (e) => { | ||
t.isMulti && !t.isDisabled && (a.value = a.value.filter((l) => l !== e.value), c("optionDeselected", e)); | ||
e.disabled || (t.isMulti ? Array.isArray(l.value) ? l.value.push(e.value) : t.disableInvalidVModelWarn || console.warn(`[vue3-select-component warn]: The v-model provided should be an array when using \`isMulti\` prop, instead it was: ${l.value}`) : l.value = e.value, c("optionSelected", e), a.value = "", t.closeOnSelect && M(), v.value && v.value.blur()); | ||
}, H = (e) => { | ||
t.isMulti && !t.isDisabled && (Array.isArray(l.value) ? (l.value = l.value.filter((n) => n !== e.value), c("optionDeselected", e)) : t.disableInvalidVModelWarn || console.warn(`[vue3-select-component warn]: The v-model provided should be an array when using \`isMulti\` prop, instead it was: ${l.value}`)); | ||
}, ne = () => { | ||
t.isMulti ? (a.value = [], c("optionDeselected", null)) : (a.value = void 0, c("optionDeselected", g.value[0])), O(), v.value && v.value.blur(); | ||
t.isMulti ? (l.value = [], c("optionDeselected", null)) : (l.value = void 0, c("optionDeselected", y.value[0])), M(), v.value && v.value.blur(); | ||
}, Z = () => { | ||
c("optionCreated", n.value), n.value = "", O(); | ||
c("optionCreated", a.value), a.value = "", M(); | ||
}, j = (e) => { | ||
if (b.value) { | ||
const l = S.value; | ||
const n = S.value; | ||
if (e.key === "ArrowDown") { | ||
e.preventDefault(); | ||
const o = w.value.findIndex((C, _) => !C.disabled && _ > l), h = w.value.findIndex((C) => !C.disabled); | ||
const o = $.value.findIndex((C, _) => !C.disabled && _ > n), h = $.value.findIndex((C) => !C.disabled); | ||
S.value = o === -1 ? h : o; | ||
@@ -261,7 +261,7 @@ } | ||
e.preventDefault(); | ||
const o = w.value.reduce( | ||
(C, _, A) => !_.disabled && A < l ? A : C, | ||
const o = $.value.reduce( | ||
(C, _, R) => !_.disabled && R < n ? R : C, | ||
-1 | ||
), h = w.value.reduce( | ||
(C, _, A) => _.disabled ? C : A, | ||
), h = $.value.reduce( | ||
(C, _, R) => _.disabled ? C : R, | ||
-1 | ||
@@ -272,18 +272,18 @@ ); | ||
if (e.key === "Enter") { | ||
const o = w.value[l]; | ||
e.preventDefault(), o ? q(o) : t.isTaggable && n.value && Z(); | ||
const o = $.value[n]; | ||
e.preventDefault(), o ? q(o) : t.isTaggable && a.value && Z(); | ||
} | ||
if (e.code === "Space" && n.value.length === 0) { | ||
const o = w.value[l]; | ||
if (e.code === "Space" && a.value.length === 0) { | ||
const o = $.value[n]; | ||
e.preventDefault(), o && q(o); | ||
} | ||
e.key === "Escape" && (e.preventDefault(), O()); | ||
const i = t.isMulti ? a.value.length > 0 : !!a.value; | ||
e.key === "Backspace" && n.value.length === 0 && i && (e.preventDefault(), t.isMulti ? a.value = a.value.slice(0, -1) : a.value = void 0); | ||
e.key === "Escape" && (e.preventDefault(), M()); | ||
const i = t.isMulti && Array.isArray(l.value) ? l.value.length > 0 : !!l.value; | ||
e.key === "Backspace" && a.value.length === 0 && i && (e.preventDefault(), t.isMulti && Array.isArray(l.value) ? l.value = l.value.slice(0, -1) : l.value = void 0); | ||
} | ||
}, oe = (e) => { | ||
e.key === "Tab" ? O() : e.code === "Space" && !b.value && n.value.length === 0 && (e.preventDefault(), e.stopImmediatePropagation(), B()); | ||
}, ae = (e) => { | ||
e.key === "Tab" ? M() : e.code === "Space" && !b.value && a.value.length === 0 && (e.preventDefault(), e.stopImmediatePropagation(), B()); | ||
}, X = (e) => { | ||
const l = e.target, i = p.value && p.value.contains(l), o = r.value && r.value.contains(l); | ||
!i && !o && O(); | ||
const n = e.target, i = p.value && p.value.contains(n), o = d.value && d.value.contains(n); | ||
!i && !o && M(); | ||
}, G = () => { | ||
@@ -299,11 +299,11 @@ if (p.value) { | ||
}; | ||
return z( | ||
() => n.value, | ||
return W( | ||
() => a.value, | ||
() => { | ||
c("search", n.value), n.value && !b.value && B(); | ||
c("search", a.value), a.value && !b.value && B(); | ||
} | ||
), z( | ||
), W( | ||
() => t.isMenuOpen, | ||
(e) => { | ||
e ? B() : O(); | ||
e ? B() : M(); | ||
}, | ||
@@ -315,15 +315,15 @@ { immediate: !0 } | ||
document.removeEventListener("mousedown", X), document.removeEventListener("keydown", j); | ||
}), (e, l) => (u(), f("div", { | ||
}), (e, n) => (u(), f("div", { | ||
ref: "container", | ||
dir: "auto", | ||
class: L(["vue-select", [{ open: b.value, typing: b.value && n.value.length > 0, disabled: e.isDisabled }, t.class]]), | ||
class: L(["vue-select", [{ open: b.value, typing: b.value && a.value.length > 0, disabled: e.isDisabled }, t.class]]), | ||
"data-state": b.value ? "open" : "closed" | ||
}, [ | ||
$("div", { | ||
w("div", { | ||
class: L(["control", { focused: b.value, disabled: t.isDisabled }]), | ||
onClick: l[3] || (l[3] = (i) => le(i)) | ||
onClick: n[3] || (n[3] = (i) => le(i)) | ||
}, [ | ||
$("div", { | ||
w("div", { | ||
id: `vue-select-${e.uid}-combobox`, | ||
class: L(["value-container", { multi: e.isMulti, "has-value": g.value.length > 0 }]), | ||
class: L(["value-container", { multi: e.isMulti, "has-value": y.value.length > 0 }]), | ||
role: "combobox", | ||
@@ -334,3 +334,3 @@ "aria-expanded": b.value, | ||
"aria-labelledby": e.aria?.labelledby, | ||
"aria-label": g.value.length ? g.value.map(e.getOptionLabel).join(", ") : "", | ||
"aria-label": y.value.length ? y.value.map(e.getOptionLabel).join(", ") : "", | ||
"aria-required": e.aria?.required, | ||
@@ -341,33 +341,33 @@ "aria-owns": `vue-select-${e.uid}-listbox`, | ||
}, [ | ||
!g.value[0] && !n.value.length ? (u(), T(Ee, { | ||
!y.value[0] && !a.value.length ? (u(), A(Ee, { | ||
key: 0, | ||
text: e.placeholder | ||
}, null, 8, ["text"])) : !t.isMulti && g.value[0] ? (u(), f("div", { | ||
}, null, 8, ["text"])) : !t.isMulti && y.value[0] ? (u(), f("div", { | ||
key: 1, | ||
class: "single-value", | ||
onClick: l[0] || (l[0] = (i) => B()) | ||
onClick: n[0] || (n[0] = (i) => B()) | ||
}, [ | ||
m(e.$slots, "value", { | ||
option: g.value[0] | ||
option: y.value[0] | ||
}, () => [ | ||
N(V(e.getOptionLabel(g.value[0])), 1) | ||
N(T(e.getOptionLabel(y.value[0])), 1) | ||
], !0) | ||
])) : t.isMulti && g.value.length ? (u(!0), f(P, { key: 2 }, K(g.value, (i) => m(e.$slots, "tag", { | ||
])) : t.isMulti && y.value.length ? (u(!0), f(P, { key: 2 }, K(y.value, (i) => m(e.$slots, "tag", { | ||
key: i.value, | ||
option: i, | ||
removeOption: () => W(i) | ||
removeOption: () => H(i) | ||
}, () => [ | ||
I(Re, { | ||
I(Ve, { | ||
label: e.getOptionLabel(i), | ||
onRemove: (o) => W(i) | ||
onRemove: (o) => H(i) | ||
}, null, 8, ["label", "onRemove"]) | ||
], !0)), 128)) : M("", !0), | ||
$("div", { | ||
class: L(["input-container", { typing: b.value && n.value.length > 0 }]), | ||
"data-value": n.value | ||
], !0)), 128)) : O("", !0), | ||
w("div", { | ||
class: L(["input-container", { typing: b.value && a.value.length > 0 }]), | ||
"data-value": a.value | ||
}, [ | ||
de($("input", { | ||
re(w("input", { | ||
id: e.inputId, | ||
ref: "input", | ||
"onUpdate:modelValue": l[1] || (l[1] = (i) => n.value = i), | ||
"onUpdate:modelValue": n[1] || (n[1] = (i) => a.value = i), | ||
class: "search-input", | ||
@@ -384,6 +384,6 @@ autocapitalize: "none", | ||
placeholder: "", | ||
onMousedown: l[2] || (l[2] = (i) => B()), | ||
onKeydown: oe | ||
}, null, 40, ze), [ | ||
[re, n.value] | ||
onMousedown: n[2] || (n[2] = (i) => B()), | ||
onKeydown: ae | ||
}, null, 40, We), [ | ||
[de, a.value] | ||
]) | ||
@@ -394,3 +394,3 @@ ], 10, Ue) | ||
ref: "indicators", | ||
"has-selected-option": g.value.length > 0, | ||
"has-selected-option": y.value.length > 0, | ||
"is-menu-open": b.value, | ||
@@ -405,3 +405,3 @@ "is-clearable": e.isClearable, | ||
m(e.$slots, "clear", {}, () => [ | ||
I(H) | ||
I(z) | ||
], !0) | ||
@@ -416,3 +416,3 @@ ]), | ||
m(e.$slots, "loading", {}, () => [ | ||
e.isLoading ? (u(), T(ee, { key: 0 })) : M("", !0) | ||
e.isLoading ? (u(), A(ee, { key: 0 })) : O("", !0) | ||
], !0) | ||
@@ -423,3 +423,3 @@ ]), | ||
], 2), | ||
(u(), T(ce, { | ||
(u(), A(ce, { | ||
to: e.teleport, | ||
@@ -444,9 +444,9 @@ disabled: !e.teleport, | ||
m(e.$slots, "menu-header", {}, void 0, !0), | ||
(u(!0), f(P, null, K(w.value, (i, o) => (u(), T(Le, { | ||
(u(!0), f(P, null, K($.value, (i, o) => (u(), A(Le, { | ||
key: o, | ||
type: "button", | ||
menu: Y(r), | ||
menu: Y(d), | ||
index: o, | ||
"is-focused": S.value === o, | ||
"is-selected": i.value === a.value, | ||
"is-selected": i.value === l.value, | ||
"is-disabled": i.disabled || !1, | ||
@@ -457,3 +457,3 @@ onSelect: (h) => q(i) | ||
m(e.$slots, "option", { option: i }, () => [ | ||
N(V(e.getOptionLabel(i)), 1) | ||
N(T(e.getOptionLabel(i)), 1) | ||
], !0) | ||
@@ -463,8 +463,8 @@ ]), | ||
}, 1032, ["menu", "index", "is-focused", "is-selected", "is-disabled", "onSelect"]))), 128)), | ||
!e.isTaggable && w.value.length === 0 ? (u(), f("div", We, [ | ||
!e.isTaggable && $.value.length === 0 ? (u(), f("div", He, [ | ||
m(e.$slots, "no-options", {}, () => [ | ||
l[4] || (l[4] = N(" No results found ")) | ||
n[4] || (n[4] = N(" No results found ")) | ||
], !0) | ||
])) : M("", !0), | ||
e.isTaggable && n.value ? (u(), f("div", { | ||
])) : O("", !0), | ||
e.isTaggable && a.value ? (u(), f("div", { | ||
key: 1, | ||
@@ -474,13 +474,13 @@ class: "taggable-no-options", | ||
}, [ | ||
m(e.$slots, "taggable-no-options", { option: n.value }, () => [ | ||
N(" Press enter to add " + V(n.value) + " option ", 1) | ||
m(e.$slots, "taggable-no-options", { option: a.value }, () => [ | ||
N(" Press enter to add " + T(a.value) + " option ", 1) | ||
], !0) | ||
])) : M("", !0) | ||
], 12, He)) : M("", !0) | ||
])) : O("", !0) | ||
], 12, ze)) : O("", !0) | ||
], 8, ["to", "disabled"])) | ||
], 10, Pe)); | ||
} | ||
}), Xe = /* @__PURE__ */ k(Ze, [["__scopeId", "data-v-47bbf404"]]); | ||
}), Xe = /* @__PURE__ */ k(Ze, [["__scopeId", "data-v-0d1797a0"]]); | ||
export { | ||
Xe as default | ||
}; |
@@ -1,2 +0,2 @@ | ||
(function(){"use strict";try{if(typeof document<"u"){var o=document.createElement("style");o.appendChild(document.createTextNode('@keyframes spinner-circle-animation-ed866313{0%,39%,to{opacity:0}40%{opacity:1}}.spinner[data-v-ed866313]{position:relative;width:var(--vs-spinner-size);height:var(--vs-spinner-size);margin:0;padding:0}.spinner-circle[data-v-ed866313]{width:100%;height:100%;position:absolute;left:0;top:0}.spinner-circle[data-v-ed866313]:before{content:"";display:block;margin:0 auto;width:15%;height:15%;background-color:var(--vs-spinner-color);border-radius:100%;-webkit-animation:spinner-circle-animation-ed866313 1.2s infinite ease-in-out both;animation:spinner-circle-animation-ed866313 1.2s infinite ease-in-out both}.spinner-circle[data-v-ed866313]:nth-child(2){transform:rotate(30deg)}.spinner-circle[data-v-ed866313]:nth-child(3){transform:rotate(60deg)}.spinner-circle[data-v-ed866313]:nth-child(4){transform:rotate(90deg)}.spinner-circle[data-v-ed866313]:nth-child(5){transform:rotate(120deg)}.spinner-circle[data-v-ed866313]:nth-child(6){transform:rotate(150deg)}.spinner-circle[data-v-ed866313]:nth-child(7){transform:rotate(180deg)}.spinner-circle[data-v-ed866313]:nth-child(8){transform:rotate(210deg)}.spinner-circle[data-v-ed866313]:nth-child(9){transform:rotate(240deg)}.spinner-circle[data-v-ed866313]:nth-child(10){transform:rotate(270deg)}.spinner-circle[data-v-ed866313]:nth-child(11){transform:rotate(300deg)}.spinner-circle[data-v-ed866313]:nth-child(12){transform:rotate(330deg)}.spinner-circle[data-v-ed866313]:nth-child(2):before{animation-delay:-1.1s}.spinner-circle[data-v-ed866313]:nth-child(3):before{animation-delay:-1s}.spinner-circle[data-v-ed866313]:nth-child(4):before{animation-delay:-.9s}.spinner-circle[data-v-ed866313]:nth-child(5):before{animation-delay:-.8s}.spinner-circle[data-v-ed866313]:nth-child(6):before{animation-delay:-.7s}.spinner-circle[data-v-ed866313]:nth-child(7):before{animation-delay:-.6s}.spinner-circle[data-v-ed866313]:nth-child(8):before{animation-delay:-.5s}.spinner-circle[data-v-ed866313]:nth-child(9):before{animation-delay:-.4s}.spinner-circle[data-v-ed866313]:nth-child(10):before{animation-delay:-.3s}.spinner-circle[data-v-ed866313]:nth-child(11):before{animation-delay:-.2s}.spinner-circle[data-v-ed866313]:nth-child(12):before{animation-delay:-.1s}.indicators-container[data-v-c1d96dfe]{display:flex;align-items:center;align-self:stretch;flex-shrink:0;gap:var(--vs-indicators-gap);padding:var(--vs-padding)}.clear-button[data-v-c1d96dfe]{appearance:none;display:inline-block;padding:0;margin:0;border:0;width:var(--vs-indicator-icon-size);height:var(--vs-indicator-icon-size);color:var(--vs-indicator-icon-color);background:none;outline:none;cursor:var(--vs-indicator-icon-cursor)}.dropdown-icon[data-v-c1d96dfe]{appearance:none;display:inline-block;padding:0;margin:0;border:0;width:var(--vs-indicator-icon-size);height:var(--vs-indicator-icon-size);color:var(--vs-indicator-icon-color);background:none;outline:none;cursor:var(--vs-indicator-icon-cursor);transition:var(--vs-indicator-dropdown-icon-transition)}.dropdown-icon.active[data-v-c1d96dfe]{transform:rotate(180deg)}.menu-option[data-v-00296627]{display:flex;width:var(--vs-option-width);border:0;margin:0;padding:var(--vs-option-padding);font-size:var(--vs-option-font-size);font-weight:var(--vs-option-font-weight);font-family:var(--vs-font-family);color:var(--vs-option-text-color);white-space:break-spaces;background-color:var(--vs-option-background-color);text-align:var(--vs-option-text-align);cursor:var(--vs-option-cursor)}.menu-option[data-v-00296627]:hover{background-color:var(--vs-option-hover-background-color);color:var(--vs-option-hover-text-color)}.menu-option.focused[data-v-00296627]{background-color:var(--vs-option-focused-background-color);color:var(--vs-option-focused-text-color)}.menu-option.selected[data-v-00296627]{background-color:var(--vs-option-selected-background-color);color:var(--vs-option-selected-text-color)}.menu-option.disabled[data-v-00296627]{background-color:var(--vs-option-disabled-background-color);color:var(--vs-option-disabled-text-color)}.multi-value[data-v-bb4d11af]{display:flex;min-width:0px;margin:var(--vs-multi-value-margin);border-radius:var(--vs-multi-value-border-radius);background:var(--vs-multi-value-background-color)}.multi-value-label[data-v-bb4d11af]{padding:var(--vs-multi-value-label-padding);border:var(--vs-multi-value-border);border-radius:var(--vs-multi-value-border-radius);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:var(--vs-multi-value-label-font-size);font-weight:var(--vs-multi-value-label-font-weight);line-height:var(--vs-multi-value-label-line-height);color:var(--vs-multi-value-label-text-color)}.multi-value-remove[data-v-bb4d11af]{border-radius:var(--vs-multi-value-border-radius);appearance:none;display:flex;align-items:center;padding:var(--vs-multi-value-delete-padding);border:none;outline:none;cursor:var(--vs-multi-value-xmark-cursor);background-color:var(--vs-multi-value-background-color)}.multi-value-remove[data-v-bb4d11af]:hover{background-color:var(--vs-multi-value-delete-hover-background-color)}.multi-value-remove svg[data-v-bb4d11af]{width:var(--vs-multi-value-xmark-size);height:var(--vs-multi-value-xmark-size);fill:var(--vs-multi-value-xmark-color)}.multi-value-remove:hover svg[data-v-bb4d11af]{fill:var(--vs-multi-value-xmark-hover-color)}.input-placeholder[data-v-a6f8261d]{grid-area:1 / 1 / 2 / 3;color:var(--vs-placeholder-color)}:root{--vs-width: 100%;--vs-min-height: 38px;--vs-padding: 4px 8px;--vs-border: 1px solid #e4e4e7;--vs-border-radius: 4px;--vs-font-size: 16px;--vs-font-weight: 400;--vs-font-family: inherit;--vs-text-color: #18181b;--vs-line-height: 1.5;--vs-placeholder-color: #52525b;--vs-background-color: #fff;--vs-disabled-background-color: #f4f4f5;--vs-outline-width: 1px;--vs-outline-color: #3b82f6;--vs-menu-offset-top: 8px;--vs-menu-height: 200px;--vs-menu-border: var(--vs-border);--vs-menu-background-color: var(--vs-background-color);--vs-menu-box-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--vs-menu-z-index: 2;--vs-option-width: 100%;--vs-option-padding: 8px 12px;--vs-option-cursor: pointer;--vs-option-font-size: var(--vs-font-size);--vs-option-font-weight: var(--vs-font-weight);--vs-option-text-align: -webkit-auto;--vs-option-text-color: var(--vs-text-color);--vs-option-hover-text-color: var(--vs-text-color);--vs-option-focused-text-color: var(--vs-text-color);--vs-option-selected-text-color: var(--vs-text-color);--vs-option-disabled-text-color: #52525b;--vs-option-background-color: var(--vs-menu-background);--vs-option-hover-background-color: #dbeafe;--vs-option-focused-background-color: var(--vs-option-hover-background-color);--vs-option-selected-background-color: #93c5fd;--vs-option-disabled-background-color: #f4f4f5;--vs-option-opacity-menu-open: .4;--vs-multi-value-margin: 2px;--vs-multi-value-border: 0px;--vs-multi-value-border-radius: 2px;--vs-multi-value-background-color: #f4f4f5;--vs-multi-value-label-padding: 4px 4px 4px 8px;--vs-multi-value-label-font-size: 12px;--vs-multi-value-label-font-weight: 400;--vs-multi-value-label-line-height: 1;--vs-multi-value-label-text-color: #3f3f46;--vs-multi-value-delete-padding: 0 3px;--vs-multi-value-delete-hover-background-color: #FF6467;--vs-multi-value-xmark-size: 16px;--vs-multi-value-xmark-cursor: pointer;--vs-multi-value-xmark-color: var(--vs-multi-value-label-text-color);--vs-multi-value-xmark-hover-color: #fff;--vs-indicators-gap: 0px;--vs-indicator-icon-size: 20px;--vs-indicator-icon-color: var(--vs-text-color);--vs-indicator-icon-cursor: pointer;--vs-indicator-dropdown-icon-transition: transform .2s ease-out;--vs-spinner-color: var(--vs-text-color);--vs-spinner-size: 16px}[data-v-47bbf404]{box-sizing:border-box}.vue-select[data-v-47bbf404]{position:relative;box-sizing:border-box;width:var(--vs-width)}.control[data-v-47bbf404]{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;min-height:var(--vs-min-height);border:var(--vs-border);border-radius:var(--vs-border-radius);background-color:var(--vs-background-color)}.control.focused[data-v-47bbf404]{box-shadow:0 0 0 var(--vs-outline-width) var(--vs-outline-color);border-color:var(--vs-outline-color)}.control.disabled[data-v-47bbf404]{background-color:var(--vs-disabled-background-color)}.value-container[data-v-47bbf404]{position:relative;overflow:hidden;display:grid;align-items:center;flex:1 1 0%;padding:var(--vs-padding)}.value-container.multi.has-value[data-v-47bbf404]{display:flex;flex-wrap:wrap}.single-value[data-v-47bbf404]{display:block;grid-area:1 / 1 / 2 / 3;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:var(--vs-font-size);font-weight:var(--vs-font-weight);font-family:var(--vs-font-family);line-height:var(--vs-line-height);color:var(--vs-text-color)}.vue-select[data-state=open] .single-value[data-v-47bbf404]{opacity:var(--vs-option-opacity-menu-open)}.vue-select.typing .single-value[data-v-47bbf404]{opacity:0}.input-container[data-v-47bbf404]{visibility:visible;display:inline-grid;grid-area:1 / 1 / 2 / 3;grid-template-columns:0px min-content}.input-container.typing[data-v-47bbf404]{transform:translateZ(0)}.input-container.typing[data-v-47bbf404]:after{content:attr(data-value) " ";visibility:hidden;white-space:pre;grid-area:1 / 2;min-width:2px;padding:0;margin:0;border:0}.search-input[data-v-47bbf404]{margin:0;padding:0;border:0;min-width:2px;width:100%;grid-area:1 / 2;background:0px center;font-size:var(--vs-font-size);font-family:var(--vs-font-family);line-height:var(--vs-line-height);color:var(--vs-text-color);opacity:1;outline:none}.menu[data-v-47bbf404]{position:absolute;margin-top:var(--vs-menu-offset-top);max-height:var(--vs-menu-height);overflow-y:auto;border:var(--vs-menu-border);border-radius:var(--vs-border-radius);box-shadow:var(--vs-menu-box-shadow);background-color:var(--vs-menu-background-color);z-index:var(--vs-menu-z-index)}.no-results[data-v-47bbf404]{padding:var(--vs-option-padding);font-size:var(--vs-font-size);font-family:var(--vs-font-family);color:var(--vs-text-color)}.taggable-no-options[data-v-47bbf404]{padding:var(--vs-option-padding);font-size:var(--vs-font-size);font-family:var(--vs-font-family);color:var(--vs-text-color);cursor:pointer}')),document.head.appendChild(o)}}catch(e){console.error("vite-plugin-css-injected-by-js",e)}})(); | ||
(function(e,b){typeof exports=="object"&&typeof module<"u"?module.exports=b(require("vue")):typeof define=="function"&&define.amd?define(["vue"],b):(e=typeof globalThis<"u"?globalThis:e||self,e["vue3-select-component"]=b(e.Vue))})(this,function(e){"use strict";const b=(d,r)=>{const o=d.__vccOpts||d;for(const[u,i]of r)o[u]=i;return o},I={},R={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 20 20",fill:"currentColor"};function A(d,r){return e.openBlock(),e.createElementBlock("svg",R,r[0]||(r[0]=[e.createElementVNode("path",{"fill-rule":"evenodd",d:"M5.22 8.22a.75.75 0 0 1 1.06 0L10 11.94l3.72-3.72a.75.75 0 1 1 1.06 1.06l-4.25 4.25a.75.75 0 0 1-1.06 0L5.22 9.28a.75.75 0 0 1 0-1.06Z","clip-rule":"evenodd"},null,-1)]))}const S=b(I,[["render",A]]),F={},z={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 20 20",fill:"currentColor"};function q(d,r){return e.openBlock(),e.createElementBlock("svg",z,r[0]||(r[0]=[e.createElementVNode("path",{d:"M6.28 5.22a.75.75 0 0 0-1.06 1.06L8.94 10l-3.72 3.72a.75.75 0 1 0 1.06 1.06L10 11.06l3.72 3.72a.75.75 0 1 0 1.06-1.06L11.06 10l3.72-3.72a.75.75 0 0 0-1.06-1.06L10 8.94 6.28 5.22Z"},null,-1)]))}const O=b(F,[["render",q]]),x={},P={className:"spinner"};function K(d,r){return e.openBlock(),e.createElementBlock("div",P,[(e.openBlock(),e.createElementBlock(e.Fragment,null,e.renderList(12,o=>e.createElementVNode("div",{key:o,class:"spinner-circle"})),64))])}const D=b(x,[["render",K],["__scopeId","data-v-ed866313"]]),U={ref:"container",class:"indicators-container"},H=["disabled"],j=["disabled"],W=b(e.defineComponent({__name:"Indicators",props:{hasSelectedOption:{type:Boolean},isMenuOpen:{type:Boolean},isClearable:{type:Boolean},isLoading:{type:Boolean},isDisabled:{type:Boolean}},emits:["clear","toggle"],setup(d,{expose:r,emit:o}){const u=o,i=e.useTemplateRef("container"),p=e.useTemplateRef("clearButton"),f=e.useTemplateRef("dropdownButton");return r({containerRef:i,clearButtonRef:p,dropdownButtonRef:f}),(c,y)=>(e.openBlock(),e.createElementBlock("div",U,[c.hasSelectedOption&&c.isClearable&&!c.isLoading?(e.openBlock(),e.createElementBlock("button",{key:0,ref:"clearButton",type:"button",class:"clear-button",tabindex:"-1",disabled:c.isDisabled,onClick:y[0]||(y[0]=e.withModifiers(n=>u("clear"),["stop"]))},[e.renderSlot(c.$slots,"clear",{},()=>[e.createVNode(O)],!0)],8,H)):e.createCommentVNode("",!0),c.isLoading?e.createCommentVNode("",!0):(e.openBlock(),e.createElementBlock("button",{key:1,ref:"dropdownButton",type:"button",class:e.normalizeClass(["dropdown-icon",{active:c.isMenuOpen}]),tabindex:"-1",disabled:c.isDisabled,onClick:y[1]||(y[1]=e.withModifiers(n=>u("toggle"),["stop"]))},[e.renderSlot(c.$slots,"dropdown",{},()=>[e.createVNode(S)],!0)],10,j)),e.renderSlot(c.$slots,"loading",{},()=>[c.isLoading?(e.openBlock(),e.createBlock(D,{key:0})):e.createCommentVNode("",!0)],!0)],512))}}),[["__scopeId","data-v-c1d96dfe"]]),Z=["aria-disabled","aria-selected"],X=b(e.defineComponent({__name:"MenuOption",props:{menu:{},index:{},isFocused:{type:Boolean},isSelected:{type:Boolean},isDisabled:{type:Boolean}},emits:["select"],setup(d,{emit:r}){const o=d,u=r,i=e.ref(null);return e.watch(()=>o.isFocused,()=>{if(o.isFocused&&o.menu){const p=o.menu.children[o.index],f=p.offsetTop,c=f+p.clientHeight,y=o.menu.scrollTop,n=o.menu.clientHeight;f<y?o.menu.scrollTop=f:c>y+n&&(o.menu.scrollTop=c-n)}}),(p,f)=>(e.openBlock(),e.createElementBlock("div",{ref_key:"option",ref:i,class:e.normalizeClass(["menu-option",{focused:p.isFocused,selected:p.isSelected,disabled:p.isDisabled}]),tabindex:"-1",role:"option","aria-disabled":p.isDisabled,"aria-selected":p.isSelected,onClick:f[0]||(f[0]=c=>u("select")),onKeydown:f[1]||(f[1]=e.withKeys(c=>u("select"),["enter"]))},[e.renderSlot(p.$slots,"default",{},void 0,!0)],42,Z))}}),[["__scopeId","data-v-00296627"]]),G={class:"multi-value"},J={class:"multi-value-label"},Q=["aria-label"],Y=b(e.defineComponent({__name:"MultiValue",props:{label:{}},emits:["remove"],setup(d,{emit:r}){const o=r;return(u,i)=>(e.openBlock(),e.createElementBlock("div",G,[e.createElementVNode("div",J,e.toDisplayString(u.label),1),e.createElementVNode("button",{type:"button",class:"multi-value-remove","aria-label":`Remove ${u.label}`,onClick:i[0]||(i[0]=e.withModifiers(p=>o("remove"),["stop"]))},[e.createVNode(O)],8,Q)]))}}),[["__scopeId","data-v-bb4d11af"]]),ee={class:"input-placeholder"},te=b(e.defineComponent({__name:"Placeholder",props:{text:{}},setup(d){return(r,o)=>(e.openBlock(),e.createElementBlock("div",ee,e.toDisplayString(r.text),1))}}),[["__scopeId","data-v-a6f8261d"]]);let oe=0;function le(){return++oe}const ne=["data-state"],ae=["id","aria-expanded","aria-describedby","aria-description","aria-labelledby","aria-label","aria-required","aria-owns","aria-controls"],ie=["data-value"],se=["id","aria-labelledby","disabled"],re=["id","aria-label","aria-multiselectable"],de={key:0,class:"no-results"},ce=e.defineComponent({__name:"Select",props:e.mergeModels({options:{},displayedOptions:{},placeholder:{default:"Select an option"},isClearable:{type:Boolean,default:!0},isDisabled:{type:Boolean,default:!1},isSearchable:{type:Boolean,default:!0},isMulti:{type:Boolean,default:!1},isTaggable:{type:Boolean,default:!1},isLoading:{type:Boolean,default:!1},isMenuOpen:{type:Boolean,default:void 0},shouldAutofocusOption:{type:Boolean,default:!0},closeOnSelect:{type:Boolean,default:!0},teleport:{default:void 0},inputId:{default:void 0},class:{},uid:{default:le()},aria:{default:void 0},disableInvalidVModelWarn:{type:Boolean,default:!1},filterBy:{type:Function,default:(d,r,o)=>r.toLowerCase().includes(o.toLowerCase())},getOptionValue:{type:Function,default:d=>d.value},getOptionLabel:{type:Function,default:d=>d.label}},{modelValue:{required:!0,validator:(d,r)=>r.isMulti?Array.isArray(d):!Array.isArray(d)},modelModifiers:{}}),emits:e.mergeModels(["optionSelected","optionDeselected","optionCreated","menuOpened","menuClosed","search"],["update:modelValue"]),setup(d,{emit:r}){const o=d,u=r,i=e.useModel(d,"modelValue"),p=e.useTemplateRef("container"),f=e.useTemplateRef("input"),c=e.useTemplateRef("menu"),y=e.useTemplateRef("indicators"),n=e.ref(""),m=e.ref(!1),v=e.ref(-1),h=e.computed(()=>{const t=o.displayedOptions||o.options;t?.length||console.warn("[vue3-select-component warn]: No options or displayedOptions were provided to the component.");const l=t.map(a=>({...a,label:o.getOptionLabel(a),value:o.getOptionValue(a)})),s=a=>a.filter(k=>!i.value.includes(k.value));if(o.isSearchable&&n.value){const a=l.filter(k=>o.filterBy(k,o.getOptionLabel(k),n.value));return o.isMulti?s(a):a}return o.isMulti?s(l):l}),g=e.computed(()=>{if(o.isMulti)return Array.isArray(i.value)?i.value.map(l=>o.options.find(s=>s.value===l)):(o.disableInvalidVModelWarn||console.warn(`[vue3-select-component warn]: The v-model provided should be an array when using \`isMulti\` prop, instead it was: ${i.value}`),[]);const t=o.options.find(l=>o.getOptionValue(l)===i.value);return t?[t]:[]});function w(){o.isDisabled||(m.value=!0,o.shouldAutofocusOption&&(v.value=o.options.findIndex(t=>!t.disabled)),f.value&&f.value.focus(),u("menuOpened"))}function B(){m.value=!1,n.value="",u("menuClosed")}function ue(){m.value?B():w()}function pe(t){y.value?.containerRef&&!y.value.containerRef.contains(t.target)&&w()}const V=t=>{t.disabled||(o.isMulti?i.value.push(t.value):i.value=t.value,u("optionSelected",t),n.value="",o.closeOnSelect&&B(),f.value&&f.value.blur())},N=t=>{o.isMulti&&!o.isDisabled&&(i.value=i.value.filter(l=>l!==t.value),u("optionDeselected",t))},fe=()=>{o.isMulti?(i.value=[],u("optionDeselected",null)):(i.value=void 0,u("optionDeselected",g.value[0])),B(),f.value&&f.value.blur()},E=()=>{u("optionCreated",n.value),n.value="",B()},_=t=>{if(m.value){const l=v.value;if(t.key==="ArrowDown"){t.preventDefault();const a=h.value.findIndex(($,C)=>!$.disabled&&C>l),k=h.value.findIndex($=>!$.disabled);v.value=a===-1?k:a}if(t.key==="ArrowUp"){t.preventDefault();const a=h.value.reduce(($,C,M)=>!C.disabled&&M<l?M:$,-1),k=h.value.reduce(($,C,M)=>C.disabled?$:M,-1);v.value=a===-1?k:a}if(t.key==="Enter"){const a=h.value[l];t.preventDefault(),a?V(a):o.isTaggable&&n.value&&E()}if(t.code==="Space"&&n.value.length===0){const a=h.value[l];t.preventDefault(),a&&V(a)}t.key==="Escape"&&(t.preventDefault(),B());const s=o.isMulti?i.value.length>0:!!i.value;t.key==="Backspace"&&n.value.length===0&&s&&(t.preventDefault(),o.isMulti?i.value=i.value.slice(0,-1):i.value=void 0)}},me=t=>{t.key==="Tab"?B():t.code==="Space"&&!m.value&&n.value.length===0&&(t.preventDefault(),t.stopImmediatePropagation(),w())},L=t=>{const l=t.target,s=p.value&&p.value.contains(l),a=c.value&&c.value.contains(l);!s&&!a&&B()},T=()=>{if(p.value){const t=p.value.getBoundingClientRect();return{left:`${t.x}px`,top:`${t.y+t.height}px`}}return console.warn("Unable to calculate dynamic menu position because of missing internal DOM reference."),{top:"0px",left:"0px"}};return e.watch(()=>n.value,()=>{u("search",n.value),n.value&&!m.value&&w()}),e.watch(()=>o.isMenuOpen,t=>{t?w():B()},{immediate:!0}),e.onMounted(()=>{document.addEventListener("mousedown",L),document.addEventListener("keydown",_)}),e.onBeforeUnmount(()=>{document.removeEventListener("mousedown",L),document.removeEventListener("keydown",_)}),(t,l)=>(e.openBlock(),e.createElementBlock("div",{ref:"container",dir:"auto",class:e.normalizeClass(["vue-select",[{open:m.value,typing:m.value&&n.value.length>0,disabled:t.isDisabled},o.class]]),"data-state":m.value?"open":"closed"},[e.createElementVNode("div",{class:e.normalizeClass(["control",{focused:m.value,disabled:o.isDisabled}]),onClick:l[3]||(l[3]=s=>pe(s))},[e.createElementVNode("div",{id:`vue-select-${t.uid}-combobox`,class:e.normalizeClass(["value-container",{multi:t.isMulti,"has-value":g.value.length>0}]),role:"combobox","aria-expanded":m.value,"aria-describedby":t.placeholder,"aria-description":t.placeholder,"aria-labelledby":t.aria?.labelledby,"aria-label":g.value.length?g.value.map(t.getOptionLabel).join(", "):"","aria-required":t.aria?.required,"aria-owns":`vue-select-${t.uid}-listbox`,"aria-controls":`vue-select-${t.uid}-listbox`,"aria-haspopup":"true"},[!g.value[0]&&!n.value.length?(e.openBlock(),e.createBlock(te,{key:0,text:t.placeholder},null,8,["text"])):!o.isMulti&&g.value[0]?(e.openBlock(),e.createElementBlock("div",{key:1,class:"single-value",onClick:l[0]||(l[0]=s=>w())},[e.renderSlot(t.$slots,"value",{option:g.value[0]},()=>[e.createTextVNode(e.toDisplayString(t.getOptionLabel(g.value[0])),1)],!0)])):o.isMulti&&g.value.length?(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:2},e.renderList(g.value,s=>e.renderSlot(t.$slots,"tag",{key:s.value,option:s,removeOption:()=>N(s)},()=>[e.createVNode(Y,{label:t.getOptionLabel(s),onRemove:a=>N(s)},null,8,["label","onRemove"])],!0)),128)):e.createCommentVNode("",!0),e.createElementVNode("div",{class:e.normalizeClass(["input-container",{typing:m.value&&n.value.length>0}]),"data-value":n.value},[e.withDirectives(e.createElementVNode("input",{id:t.inputId,ref:"input","onUpdate:modelValue":l[1]||(l[1]=s=>n.value=s),class:"search-input",autocapitalize:"none",autocomplete:"off",autocorrect:"off",spellcheck:"false",tabindex:"0",type:"text","aria-autocomplete":"list","aria-labelledby":`vue-select-${t.uid}-combobox`,disabled:t.isDisabled,placeholder:"",onMousedown:l[2]||(l[2]=s=>w()),onKeydown:me},null,40,se),[[e.vModelText,n.value]])],10,ie)],10,ae),e.createVNode(W,{ref:"indicators","has-selected-option":g.value.length>0,"is-menu-open":m.value,"is-clearable":t.isClearable,"is-loading":t.isLoading,"is-disabled":t.isDisabled,onClear:fe,onToggle:ue},{clear:e.withCtx(()=>[e.renderSlot(t.$slots,"clear",{},()=>[e.createVNode(O)],!0)]),dropdown:e.withCtx(()=>[e.renderSlot(t.$slots,"dropdown",{},()=>[e.createVNode(S)],!0)]),loading:e.withCtx(()=>[e.renderSlot(t.$slots,"loading",{},()=>[t.isLoading?(e.openBlock(),e.createBlock(D,{key:0})):e.createCommentVNode("",!0)],!0)]),_:3},8,["has-selected-option","is-menu-open","is-clearable","is-loading","is-disabled"])],2),(e.openBlock(),e.createBlock(e.Teleport,{to:t.teleport,disabled:!t.teleport,defer:!0},[m.value?(e.openBlock(),e.createElementBlock("div",{key:0,id:`vue-select-${t.uid}-listbox`,ref:"menu",class:"menu",role:"listbox","aria-label":t.aria?.labelledby,"aria-multiselectable":t.isMulti,style:e.normalizeStyle({width:o.teleport?`${e.unref(p)?.getBoundingClientRect().width}px`:"100%",top:o.teleport?T().top:"unset",left:o.teleport?T().left:"unset"})},[e.renderSlot(t.$slots,"menu-header",{},void 0,!0),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(h.value,(s,a)=>(e.openBlock(),e.createBlock(X,{key:a,type:"button",menu:e.unref(c),index:a,"is-focused":v.value===a,"is-selected":s.value===i.value,"is-disabled":s.disabled||!1,onSelect:k=>V(s)},{default:e.withCtx(()=>[e.renderSlot(t.$slots,"option",{option:s},()=>[e.createTextVNode(e.toDisplayString(t.getOptionLabel(s)),1)],!0)]),_:2},1032,["menu","index","is-focused","is-selected","is-disabled","onSelect"]))),128)),!t.isTaggable&&h.value.length===0?(e.openBlock(),e.createElementBlock("div",de,[e.renderSlot(t.$slots,"no-options",{},()=>[l[4]||(l[4]=e.createTextVNode(" No results found "))],!0)])):e.createCommentVNode("",!0),t.isTaggable&&n.value?(e.openBlock(),e.createElementBlock("div",{key:1,class:"taggable-no-options",onClick:E},[e.renderSlot(t.$slots,"taggable-no-options",{option:n.value},()=>[e.createTextVNode(" Press enter to add "+e.toDisplayString(n.value)+" option ",1)],!0)])):e.createCommentVNode("",!0)],12,re)):e.createCommentVNode("",!0)],8,["to","disabled"]))],10,ne))}});return b(ce,[["__scopeId","data-v-47bbf404"]])}); | ||
(function(){"use strict";try{if(typeof document<"u"){var o=document.createElement("style");o.appendChild(document.createTextNode('@keyframes spinner-circle-animation-ed866313{0%,39%,to{opacity:0}40%{opacity:1}}.spinner[data-v-ed866313]{position:relative;width:var(--vs-spinner-size);height:var(--vs-spinner-size);margin:0;padding:0}.spinner-circle[data-v-ed866313]{width:100%;height:100%;position:absolute;left:0;top:0}.spinner-circle[data-v-ed866313]:before{content:"";display:block;margin:0 auto;width:15%;height:15%;background-color:var(--vs-spinner-color);border-radius:100%;-webkit-animation:spinner-circle-animation-ed866313 1.2s infinite ease-in-out both;animation:spinner-circle-animation-ed866313 1.2s infinite ease-in-out both}.spinner-circle[data-v-ed866313]:nth-child(2){transform:rotate(30deg)}.spinner-circle[data-v-ed866313]:nth-child(3){transform:rotate(60deg)}.spinner-circle[data-v-ed866313]:nth-child(4){transform:rotate(90deg)}.spinner-circle[data-v-ed866313]:nth-child(5){transform:rotate(120deg)}.spinner-circle[data-v-ed866313]:nth-child(6){transform:rotate(150deg)}.spinner-circle[data-v-ed866313]:nth-child(7){transform:rotate(180deg)}.spinner-circle[data-v-ed866313]:nth-child(8){transform:rotate(210deg)}.spinner-circle[data-v-ed866313]:nth-child(9){transform:rotate(240deg)}.spinner-circle[data-v-ed866313]:nth-child(10){transform:rotate(270deg)}.spinner-circle[data-v-ed866313]:nth-child(11){transform:rotate(300deg)}.spinner-circle[data-v-ed866313]:nth-child(12){transform:rotate(330deg)}.spinner-circle[data-v-ed866313]:nth-child(2):before{animation-delay:-1.1s}.spinner-circle[data-v-ed866313]:nth-child(3):before{animation-delay:-1s}.spinner-circle[data-v-ed866313]:nth-child(4):before{animation-delay:-.9s}.spinner-circle[data-v-ed866313]:nth-child(5):before{animation-delay:-.8s}.spinner-circle[data-v-ed866313]:nth-child(6):before{animation-delay:-.7s}.spinner-circle[data-v-ed866313]:nth-child(7):before{animation-delay:-.6s}.spinner-circle[data-v-ed866313]:nth-child(8):before{animation-delay:-.5s}.spinner-circle[data-v-ed866313]:nth-child(9):before{animation-delay:-.4s}.spinner-circle[data-v-ed866313]:nth-child(10):before{animation-delay:-.3s}.spinner-circle[data-v-ed866313]:nth-child(11):before{animation-delay:-.2s}.spinner-circle[data-v-ed866313]:nth-child(12):before{animation-delay:-.1s}.indicators-container[data-v-c1d96dfe]{display:flex;align-items:center;align-self:stretch;flex-shrink:0;gap:var(--vs-indicators-gap);padding:var(--vs-padding)}.clear-button[data-v-c1d96dfe]{appearance:none;display:inline-block;padding:0;margin:0;border:0;width:var(--vs-indicator-icon-size);height:var(--vs-indicator-icon-size);color:var(--vs-indicator-icon-color);background:none;outline:none;cursor:var(--vs-indicator-icon-cursor)}.dropdown-icon[data-v-c1d96dfe]{appearance:none;display:inline-block;padding:0;margin:0;border:0;width:var(--vs-indicator-icon-size);height:var(--vs-indicator-icon-size);color:var(--vs-indicator-icon-color);background:none;outline:none;cursor:var(--vs-indicator-icon-cursor);transition:var(--vs-indicator-dropdown-icon-transition)}.dropdown-icon.active[data-v-c1d96dfe]{transform:rotate(180deg)}.menu-option[data-v-00296627]{display:flex;width:var(--vs-option-width);border:0;margin:0;padding:var(--vs-option-padding);font-size:var(--vs-option-font-size);font-weight:var(--vs-option-font-weight);font-family:var(--vs-font-family);color:var(--vs-option-text-color);white-space:break-spaces;background-color:var(--vs-option-background-color);text-align:var(--vs-option-text-align);cursor:var(--vs-option-cursor)}.menu-option[data-v-00296627]:hover{background-color:var(--vs-option-hover-background-color);color:var(--vs-option-hover-text-color)}.menu-option.focused[data-v-00296627]{background-color:var(--vs-option-focused-background-color);color:var(--vs-option-focused-text-color)}.menu-option.selected[data-v-00296627]{background-color:var(--vs-option-selected-background-color);color:var(--vs-option-selected-text-color)}.menu-option.disabled[data-v-00296627]{background-color:var(--vs-option-disabled-background-color);color:var(--vs-option-disabled-text-color)}.multi-value[data-v-bb4d11af]{display:flex;min-width:0px;margin:var(--vs-multi-value-margin);border-radius:var(--vs-multi-value-border-radius);background:var(--vs-multi-value-background-color)}.multi-value-label[data-v-bb4d11af]{padding:var(--vs-multi-value-label-padding);border:var(--vs-multi-value-border);border-radius:var(--vs-multi-value-border-radius);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:var(--vs-multi-value-label-font-size);font-weight:var(--vs-multi-value-label-font-weight);line-height:var(--vs-multi-value-label-line-height);color:var(--vs-multi-value-label-text-color)}.multi-value-remove[data-v-bb4d11af]{border-radius:var(--vs-multi-value-border-radius);appearance:none;display:flex;align-items:center;padding:var(--vs-multi-value-delete-padding);border:none;outline:none;cursor:var(--vs-multi-value-xmark-cursor);background-color:var(--vs-multi-value-background-color)}.multi-value-remove[data-v-bb4d11af]:hover{background-color:var(--vs-multi-value-delete-hover-background-color)}.multi-value-remove svg[data-v-bb4d11af]{width:var(--vs-multi-value-xmark-size);height:var(--vs-multi-value-xmark-size);fill:var(--vs-multi-value-xmark-color)}.multi-value-remove:hover svg[data-v-bb4d11af]{fill:var(--vs-multi-value-xmark-hover-color)}.input-placeholder[data-v-a6f8261d]{grid-area:1 / 1 / 2 / 3;color:var(--vs-placeholder-color)}:root{--vs-width: 100%;--vs-min-height: 38px;--vs-padding: 4px 8px;--vs-border: 1px solid #e4e4e7;--vs-border-radius: 4px;--vs-font-size: 16px;--vs-font-weight: 400;--vs-font-family: inherit;--vs-text-color: #18181b;--vs-line-height: 1.5;--vs-placeholder-color: #52525b;--vs-background-color: #fff;--vs-disabled-background-color: #f4f4f5;--vs-outline-width: 1px;--vs-outline-color: #3b82f6;--vs-menu-offset-top: 8px;--vs-menu-height: 200px;--vs-menu-border: var(--vs-border);--vs-menu-background-color: var(--vs-background-color);--vs-menu-box-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--vs-menu-z-index: 2;--vs-option-width: 100%;--vs-option-padding: 8px 12px;--vs-option-cursor: pointer;--vs-option-font-size: var(--vs-font-size);--vs-option-font-weight: var(--vs-font-weight);--vs-option-text-align: -webkit-auto;--vs-option-text-color: var(--vs-text-color);--vs-option-hover-text-color: var(--vs-text-color);--vs-option-focused-text-color: var(--vs-text-color);--vs-option-selected-text-color: var(--vs-text-color);--vs-option-disabled-text-color: #52525b;--vs-option-background-color: var(--vs-menu-background);--vs-option-hover-background-color: #dbeafe;--vs-option-focused-background-color: var(--vs-option-hover-background-color);--vs-option-selected-background-color: #93c5fd;--vs-option-disabled-background-color: #f4f4f5;--vs-option-opacity-menu-open: .4;--vs-multi-value-margin: 2px;--vs-multi-value-border: 0px;--vs-multi-value-border-radius: 2px;--vs-multi-value-background-color: #f4f4f5;--vs-multi-value-label-padding: 4px 4px 4px 8px;--vs-multi-value-label-font-size: 12px;--vs-multi-value-label-font-weight: 400;--vs-multi-value-label-line-height: 1;--vs-multi-value-label-text-color: #3f3f46;--vs-multi-value-delete-padding: 0 3px;--vs-multi-value-delete-hover-background-color: #FF6467;--vs-multi-value-xmark-size: 16px;--vs-multi-value-xmark-cursor: pointer;--vs-multi-value-xmark-color: var(--vs-multi-value-label-text-color);--vs-multi-value-xmark-hover-color: #fff;--vs-indicators-gap: 0px;--vs-indicator-icon-size: 20px;--vs-indicator-icon-color: var(--vs-text-color);--vs-indicator-icon-cursor: pointer;--vs-indicator-dropdown-icon-transition: transform .2s ease-out;--vs-spinner-color: var(--vs-text-color);--vs-spinner-size: 16px}[data-v-0d1797a0]{box-sizing:border-box}.vue-select[data-v-0d1797a0]{position:relative;box-sizing:border-box;width:var(--vs-width)}.control[data-v-0d1797a0]{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;min-height:var(--vs-min-height);border:var(--vs-border);border-radius:var(--vs-border-radius);background-color:var(--vs-background-color)}.control.focused[data-v-0d1797a0]{box-shadow:0 0 0 var(--vs-outline-width) var(--vs-outline-color);border-color:var(--vs-outline-color)}.control.disabled[data-v-0d1797a0]{background-color:var(--vs-disabled-background-color)}.value-container[data-v-0d1797a0]{position:relative;overflow:hidden;display:grid;align-items:center;flex:1 1 0%;padding:var(--vs-padding)}.value-container.multi.has-value[data-v-0d1797a0]{display:flex;flex-wrap:wrap}.single-value[data-v-0d1797a0]{display:block;grid-area:1 / 1 / 2 / 3;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:var(--vs-font-size);font-weight:var(--vs-font-weight);font-family:var(--vs-font-family);line-height:var(--vs-line-height);color:var(--vs-text-color)}.vue-select[data-state=open] .single-value[data-v-0d1797a0]{opacity:var(--vs-option-opacity-menu-open)}.vue-select.typing .single-value[data-v-0d1797a0]{opacity:0}.input-container[data-v-0d1797a0]{visibility:visible;display:inline-grid;grid-area:1 / 1 / 2 / 3;grid-template-columns:0px min-content}.input-container.typing[data-v-0d1797a0]{transform:translateZ(0)}.input-container.typing[data-v-0d1797a0]:after{content:attr(data-value) " ";visibility:hidden;white-space:pre;grid-area:1 / 2;min-width:2px;padding:0;margin:0;border:0}.search-input[data-v-0d1797a0]{margin:0;padding:0;border:0;min-width:2px;width:100%;grid-area:1 / 2;background:0px center;font-size:var(--vs-font-size);font-family:var(--vs-font-family);line-height:var(--vs-line-height);color:var(--vs-text-color);opacity:1;outline:none}.menu[data-v-0d1797a0]{position:absolute;margin-top:var(--vs-menu-offset-top);max-height:var(--vs-menu-height);overflow-y:auto;border:var(--vs-menu-border);border-radius:var(--vs-border-radius);box-shadow:var(--vs-menu-box-shadow);background-color:var(--vs-menu-background-color);z-index:var(--vs-menu-z-index)}.no-results[data-v-0d1797a0]{padding:var(--vs-option-padding);font-size:var(--vs-font-size);font-family:var(--vs-font-family);color:var(--vs-text-color)}.taggable-no-options[data-v-0d1797a0]{padding:var(--vs-option-padding);font-size:var(--vs-font-size);font-family:var(--vs-font-family);color:var(--vs-text-color);cursor:pointer}')),document.head.appendChild(o)}}catch(a){console.error("vite-plugin-css-injected-by-js",a)}})(); | ||
(function(e,b){typeof exports=="object"&&typeof module<"u"?module.exports=b(require("vue")):typeof define=="function"&&define.amd?define(["vue"],b):(e=typeof globalThis<"u"?globalThis:e||self,e["vue3-select-component"]=b(e.Vue))})(this,function(e){"use strict";const b=(d,r)=>{const o=d.__vccOpts||d;for(const[u,l]of r)o[u]=l;return o},L={},R={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 20 20",fill:"currentColor"};function A(d,r){return e.openBlock(),e.createElementBlock("svg",R,r[0]||(r[0]=[e.createElementVNode("path",{"fill-rule":"evenodd",d:"M5.22 8.22a.75.75 0 0 1 1.06 0L10 11.94l3.72-3.72a.75.75 0 1 1 1.06 1.06l-4.25 4.25a.75.75 0 0 1-1.06 0L5.22 9.28a.75.75 0 0 1 0-1.06Z","clip-rule":"evenodd"},null,-1)]))}const S=b(L,[["render",A]]),F={},z={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 20 20",fill:"currentColor"};function q(d,r){return e.openBlock(),e.createElementBlock("svg",z,r[0]||(r[0]=[e.createElementVNode("path",{d:"M6.28 5.22a.75.75 0 0 0-1.06 1.06L8.94 10l-3.72 3.72a.75.75 0 1 0 1.06 1.06L10 11.06l3.72 3.72a.75.75 0 1 0 1.06-1.06L11.06 10l3.72-3.72a.75.75 0 0 0-1.06-1.06L10 8.94 6.28 5.22Z"},null,-1)]))}const V=b(F,[["render",q]]),x={},P={className:"spinner"};function K(d,r){return e.openBlock(),e.createElementBlock("div",P,[(e.openBlock(),e.createElementBlock(e.Fragment,null,e.renderList(12,o=>e.createElementVNode("div",{key:o,class:"spinner-circle"})),64))])}const D=b(x,[["render",K],["__scopeId","data-v-ed866313"]]),U={ref:"container",class:"indicators-container"},W=["disabled"],H=["disabled"],j=b(e.defineComponent({__name:"Indicators",props:{hasSelectedOption:{type:Boolean},isMenuOpen:{type:Boolean},isClearable:{type:Boolean},isLoading:{type:Boolean},isDisabled:{type:Boolean}},emits:["clear","toggle"],setup(d,{expose:r,emit:o}){const u=o,l=e.useTemplateRef("container"),p=e.useTemplateRef("clearButton"),f=e.useTemplateRef("dropdownButton");return r({containerRef:l,clearButtonRef:p,dropdownButtonRef:f}),(c,g)=>(e.openBlock(),e.createElementBlock("div",U,[c.hasSelectedOption&&c.isClearable&&!c.isLoading?(e.openBlock(),e.createElementBlock("button",{key:0,ref:"clearButton",type:"button",class:"clear-button",tabindex:"-1",disabled:c.isDisabled,onClick:g[0]||(g[0]=e.withModifiers(a=>u("clear"),["stop"]))},[e.renderSlot(c.$slots,"clear",{},()=>[e.createVNode(V)],!0)],8,W)):e.createCommentVNode("",!0),c.isLoading?e.createCommentVNode("",!0):(e.openBlock(),e.createElementBlock("button",{key:1,ref:"dropdownButton",type:"button",class:e.normalizeClass(["dropdown-icon",{active:c.isMenuOpen}]),tabindex:"-1",disabled:c.isDisabled,onClick:g[1]||(g[1]=e.withModifiers(a=>u("toggle"),["stop"]))},[e.renderSlot(c.$slots,"dropdown",{},()=>[e.createVNode(S)],!0)],10,H)),e.renderSlot(c.$slots,"loading",{},()=>[c.isLoading?(e.openBlock(),e.createBlock(D,{key:0})):e.createCommentVNode("",!0)],!0)],512))}}),[["__scopeId","data-v-c1d96dfe"]]),Z=["aria-disabled","aria-selected"],X=b(e.defineComponent({__name:"MenuOption",props:{menu:{},index:{},isFocused:{type:Boolean},isSelected:{type:Boolean},isDisabled:{type:Boolean}},emits:["select"],setup(d,{emit:r}){const o=d,u=r,l=e.ref(null);return e.watch(()=>o.isFocused,()=>{if(o.isFocused&&o.menu){const p=o.menu.children[o.index],f=p.offsetTop,c=f+p.clientHeight,g=o.menu.scrollTop,a=o.menu.clientHeight;f<g?o.menu.scrollTop=f:c>g+a&&(o.menu.scrollTop=c-a)}}),(p,f)=>(e.openBlock(),e.createElementBlock("div",{ref_key:"option",ref:l,class:e.normalizeClass(["menu-option",{focused:p.isFocused,selected:p.isSelected,disabled:p.isDisabled}]),tabindex:"-1",role:"option","aria-disabled":p.isDisabled,"aria-selected":p.isSelected,onClick:f[0]||(f[0]=c=>u("select")),onKeydown:f[1]||(f[1]=e.withKeys(c=>u("select"),["enter"]))},[e.renderSlot(p.$slots,"default",{},void 0,!0)],42,Z))}}),[["__scopeId","data-v-00296627"]]),G={class:"multi-value"},J={class:"multi-value-label"},Q=["aria-label"],Y=b(e.defineComponent({__name:"MultiValue",props:{label:{}},emits:["remove"],setup(d,{emit:r}){const o=r;return(u,l)=>(e.openBlock(),e.createElementBlock("div",G,[e.createElementVNode("div",J,e.toDisplayString(u.label),1),e.createElementVNode("button",{type:"button",class:"multi-value-remove","aria-label":`Remove ${u.label}`,onClick:l[0]||(l[0]=e.withModifiers(p=>o("remove"),["stop"]))},[e.createVNode(V)],8,Q)]))}}),[["__scopeId","data-v-bb4d11af"]]),ee={class:"input-placeholder"},te=b(e.defineComponent({__name:"Placeholder",props:{text:{}},setup(d){return(r,o)=>(e.openBlock(),e.createElementBlock("div",ee,e.toDisplayString(r.text),1))}}),[["__scopeId","data-v-a6f8261d"]]);let oe=0;function le(){return++oe}const ne=["data-state"],ae=["id","aria-expanded","aria-describedby","aria-description","aria-labelledby","aria-label","aria-required","aria-owns","aria-controls"],ie=["data-value"],se=["id","aria-labelledby","disabled"],re=["id","aria-label","aria-multiselectable"],de={key:0,class:"no-results"},ce=e.defineComponent({__name:"Select",props:e.mergeModels({options:{},displayedOptions:{},placeholder:{default:"Select an option"},isClearable:{type:Boolean,default:!0},isDisabled:{type:Boolean,default:!1},isSearchable:{type:Boolean,default:!0},isMulti:{type:Boolean,default:!1},isTaggable:{type:Boolean,default:!1},isLoading:{type:Boolean,default:!1},isMenuOpen:{type:Boolean,default:void 0},shouldAutofocusOption:{type:Boolean,default:!0},closeOnSelect:{type:Boolean,default:!0},teleport:{default:void 0},inputId:{default:void 0},class:{},uid:{default:le()},aria:{default:void 0},disableInvalidVModelWarn:{type:Boolean,default:!1},filterBy:{type:Function,default:(d,r,o)=>r.toLowerCase().includes(o.toLowerCase())},getOptionValue:{type:Function,default:d=>d.value},getOptionLabel:{type:Function,default:d=>d.label}},{modelValue:{required:!0,validator:(d,r)=>r.isMulti?Array.isArray(d):!Array.isArray(d)},modelModifiers:{}}),emits:e.mergeModels(["optionSelected","optionDeselected","optionCreated","menuOpened","menuClosed","search"],["update:modelValue"]),setup(d,{emit:r}){const o=d,u=r,l=e.useModel(d,"modelValue"),p=e.useTemplateRef("container"),f=e.useTemplateRef("input"),c=e.useTemplateRef("menu"),g=e.useTemplateRef("indicators"),a=e.ref(""),m=e.ref(!1),$=e.ref(-1),k=e.computed(()=>{const t=o.displayedOptions||o.options;t?.length||console.warn("[vue3-select-component warn]: No options or displayedOptions were provided to the component.");const n=t.map(i=>({...i,label:o.getOptionLabel(i),value:o.getOptionValue(i)})),s=i=>i.filter(h=>Array.isArray(l.value)&&!l.value.includes(h.value));if(o.isSearchable&&a.value){const i=n.filter(h=>o.filterBy(h,o.getOptionLabel(h),a.value));return o.isMulti?s(i):i}return o.isMulti?s(n):n}),y=e.computed(()=>{if(o.isMulti)return Array.isArray(l.value)?l.value.map(n=>o.options.find(s=>s.value===n)):(o.disableInvalidVModelWarn||console.warn(`[vue3-select-component warn]: The v-model provided should be an array when using \`isMulti\` prop, instead it was: ${l.value}`),[]);const t=o.options.find(n=>o.getOptionValue(n)===l.value);return t?[t]:[]});function v(){o.isDisabled||(m.value=!0,o.shouldAutofocusOption&&($.value=o.options.findIndex(t=>!t.disabled)),f.value&&f.value.focus(),u("menuOpened"))}function B(){m.value=!1,a.value="",u("menuClosed")}function ue(){m.value?B():v()}function pe(t){g.value?.containerRef&&!g.value.containerRef.contains(t.target)&&v()}const O=t=>{t.disabled||(o.isMulti?Array.isArray(l.value)?l.value.push(t.value):o.disableInvalidVModelWarn||console.warn(`[vue3-select-component warn]: The v-model provided should be an array when using \`isMulti\` prop, instead it was: ${l.value}`):l.value=t.value,u("optionSelected",t),a.value="",o.closeOnSelect&&B(),f.value&&f.value.blur())},N=t=>{o.isMulti&&!o.isDisabled&&(Array.isArray(l.value)?(l.value=l.value.filter(n=>n!==t.value),u("optionDeselected",t)):o.disableInvalidVModelWarn||console.warn(`[vue3-select-component warn]: The v-model provided should be an array when using \`isMulti\` prop, instead it was: ${l.value}`))},fe=()=>{o.isMulti?(l.value=[],u("optionDeselected",null)):(l.value=void 0,u("optionDeselected",y.value[0])),B(),f.value&&f.value.blur()},E=()=>{u("optionCreated",a.value),a.value="",B()},_=t=>{if(m.value){const n=$.value;if(t.key==="ArrowDown"){t.preventDefault();const i=k.value.findIndex((w,C)=>!w.disabled&&C>n),h=k.value.findIndex(w=>!w.disabled);$.value=i===-1?h:i}if(t.key==="ArrowUp"){t.preventDefault();const i=k.value.reduce((w,C,M)=>!C.disabled&&M<n?M:w,-1),h=k.value.reduce((w,C,M)=>C.disabled?w:M,-1);$.value=i===-1?h:i}if(t.key==="Enter"){const i=k.value[n];t.preventDefault(),i?O(i):o.isTaggable&&a.value&&E()}if(t.code==="Space"&&a.value.length===0){const i=k.value[n];t.preventDefault(),i&&O(i)}t.key==="Escape"&&(t.preventDefault(),B());const s=o.isMulti&&Array.isArray(l.value)?l.value.length>0:!!l.value;t.key==="Backspace"&&a.value.length===0&&s&&(t.preventDefault(),o.isMulti&&Array.isArray(l.value)?l.value=l.value.slice(0,-1):l.value=void 0)}},me=t=>{t.key==="Tab"?B():t.code==="Space"&&!m.value&&a.value.length===0&&(t.preventDefault(),t.stopImmediatePropagation(),v())},T=t=>{const n=t.target,s=p.value&&p.value.contains(n),i=c.value&&c.value.contains(n);!s&&!i&&B()},I=()=>{if(p.value){const t=p.value.getBoundingClientRect();return{left:`${t.x}px`,top:`${t.y+t.height}px`}}return console.warn("Unable to calculate dynamic menu position because of missing internal DOM reference."),{top:"0px",left:"0px"}};return e.watch(()=>a.value,()=>{u("search",a.value),a.value&&!m.value&&v()}),e.watch(()=>o.isMenuOpen,t=>{t?v():B()},{immediate:!0}),e.onMounted(()=>{document.addEventListener("mousedown",T),document.addEventListener("keydown",_)}),e.onBeforeUnmount(()=>{document.removeEventListener("mousedown",T),document.removeEventListener("keydown",_)}),(t,n)=>(e.openBlock(),e.createElementBlock("div",{ref:"container",dir:"auto",class:e.normalizeClass(["vue-select",[{open:m.value,typing:m.value&&a.value.length>0,disabled:t.isDisabled},o.class]]),"data-state":m.value?"open":"closed"},[e.createElementVNode("div",{class:e.normalizeClass(["control",{focused:m.value,disabled:o.isDisabled}]),onClick:n[3]||(n[3]=s=>pe(s))},[e.createElementVNode("div",{id:`vue-select-${t.uid}-combobox`,class:e.normalizeClass(["value-container",{multi:t.isMulti,"has-value":y.value.length>0}]),role:"combobox","aria-expanded":m.value,"aria-describedby":t.placeholder,"aria-description":t.placeholder,"aria-labelledby":t.aria?.labelledby,"aria-label":y.value.length?y.value.map(t.getOptionLabel).join(", "):"","aria-required":t.aria?.required,"aria-owns":`vue-select-${t.uid}-listbox`,"aria-controls":`vue-select-${t.uid}-listbox`,"aria-haspopup":"true"},[!y.value[0]&&!a.value.length?(e.openBlock(),e.createBlock(te,{key:0,text:t.placeholder},null,8,["text"])):!o.isMulti&&y.value[0]?(e.openBlock(),e.createElementBlock("div",{key:1,class:"single-value",onClick:n[0]||(n[0]=s=>v())},[e.renderSlot(t.$slots,"value",{option:y.value[0]},()=>[e.createTextVNode(e.toDisplayString(t.getOptionLabel(y.value[0])),1)],!0)])):o.isMulti&&y.value.length?(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:2},e.renderList(y.value,s=>e.renderSlot(t.$slots,"tag",{key:s.value,option:s,removeOption:()=>N(s)},()=>[e.createVNode(Y,{label:t.getOptionLabel(s),onRemove:i=>N(s)},null,8,["label","onRemove"])],!0)),128)):e.createCommentVNode("",!0),e.createElementVNode("div",{class:e.normalizeClass(["input-container",{typing:m.value&&a.value.length>0}]),"data-value":a.value},[e.withDirectives(e.createElementVNode("input",{id:t.inputId,ref:"input","onUpdate:modelValue":n[1]||(n[1]=s=>a.value=s),class:"search-input",autocapitalize:"none",autocomplete:"off",autocorrect:"off",spellcheck:"false",tabindex:"0",type:"text","aria-autocomplete":"list","aria-labelledby":`vue-select-${t.uid}-combobox`,disabled:t.isDisabled,placeholder:"",onMousedown:n[2]||(n[2]=s=>v()),onKeydown:me},null,40,se),[[e.vModelText,a.value]])],10,ie)],10,ae),e.createVNode(j,{ref:"indicators","has-selected-option":y.value.length>0,"is-menu-open":m.value,"is-clearable":t.isClearable,"is-loading":t.isLoading,"is-disabled":t.isDisabled,onClear:fe,onToggle:ue},{clear:e.withCtx(()=>[e.renderSlot(t.$slots,"clear",{},()=>[e.createVNode(V)],!0)]),dropdown:e.withCtx(()=>[e.renderSlot(t.$slots,"dropdown",{},()=>[e.createVNode(S)],!0)]),loading:e.withCtx(()=>[e.renderSlot(t.$slots,"loading",{},()=>[t.isLoading?(e.openBlock(),e.createBlock(D,{key:0})):e.createCommentVNode("",!0)],!0)]),_:3},8,["has-selected-option","is-menu-open","is-clearable","is-loading","is-disabled"])],2),(e.openBlock(),e.createBlock(e.Teleport,{to:t.teleport,disabled:!t.teleport,defer:!0},[m.value?(e.openBlock(),e.createElementBlock("div",{key:0,id:`vue-select-${t.uid}-listbox`,ref:"menu",class:"menu",role:"listbox","aria-label":t.aria?.labelledby,"aria-multiselectable":t.isMulti,style:e.normalizeStyle({width:o.teleport?`${e.unref(p)?.getBoundingClientRect().width}px`:"100%",top:o.teleport?I().top:"unset",left:o.teleport?I().left:"unset"})},[e.renderSlot(t.$slots,"menu-header",{},void 0,!0),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(k.value,(s,i)=>(e.openBlock(),e.createBlock(X,{key:i,type:"button",menu:e.unref(c),index:i,"is-focused":$.value===i,"is-selected":s.value===l.value,"is-disabled":s.disabled||!1,onSelect:h=>O(s)},{default:e.withCtx(()=>[e.renderSlot(t.$slots,"option",{option:s},()=>[e.createTextVNode(e.toDisplayString(t.getOptionLabel(s)),1)],!0)]),_:2},1032,["menu","index","is-focused","is-selected","is-disabled","onSelect"]))),128)),!t.isTaggable&&k.value.length===0?(e.openBlock(),e.createElementBlock("div",de,[e.renderSlot(t.$slots,"no-options",{},()=>[n[4]||(n[4]=e.createTextVNode(" No results found "))],!0)])):e.createCommentVNode("",!0),t.isTaggable&&a.value?(e.openBlock(),e.createElementBlock("div",{key:1,class:"taggable-no-options",onClick:E},[e.renderSlot(t.$slots,"taggable-no-options",{option:a.value},()=>[e.createTextVNode(" Press enter to add "+e.toDisplayString(a.value)+" option ",1)],!0)])):e.createCommentVNode("",!0)],12,re)):e.createCommentVNode("",!0)],8,["to","disabled"]))],10,ne))}});return b(ce,[["__scopeId","data-v-0d1797a0"]])}); |
{ | ||
"name": "vue3-select-component", | ||
"type": "module", | ||
"version": "0.11.4", | ||
"version": "0.11.5", | ||
"description": "A flexible & modern select-input control for Vue 3.", | ||
@@ -6,0 +6,0 @@ "author": "Thomas Cazade <cazade.thomas@gmail.com>", |
Long strings
Supply chain riskContains long string literals, which may be a sign of obfuscated or packed code.
Found 1 instance in 1 package
Long strings
Supply chain riskContains long string literals, which may be a sign of obfuscated or packed code.
Found 1 instance in 1 package
70601
1.35%865
0.46%