bootstrap-vue-next 0.46.2 → 0.46.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/{BApp-GXR1wS6K.js → BApp-Bg5xEz8H.js} +14 -2
- package/dist/BApp-Bg5xEz8H.js.map +1 -0
- package/dist/{BAutocomplete-DGvKY7-D.js → BAutocomplete-BFbbKtpz.js} +2 -2
- package/dist/{BAutocomplete-DGvKY7-D.js.map → BAutocomplete-BFbbKtpz.js.map} +1 -1
- package/dist/{BFormInput-BwvdFGDu.js → BFormInput-_AkAy6Wk.js} +4 -4
- package/dist/BFormInput-_AkAy6Wk.js.map +1 -0
- package/dist/{BFormOtp-I1t8dqPS.js → BFormOtp-C3vmDnzs.js} +2 -2
- package/dist/{BFormOtp-I1t8dqPS.js.map → BFormOtp-C3vmDnzs.js.map} +1 -1
- package/dist/{BFormTextarea-DlDe26DL.js → BFormTextarea-CBBlEcrV.js} +4 -4
- package/dist/BFormTextarea-CBBlEcrV.js.map +1 -0
- package/dist/bootstrap-vue-next.mjs +5 -5
- package/dist/composables/useFormInput.d.mts +1 -0
- package/dist/composables/useFormInput.d.ts +1 -0
- package/dist/src/components/BApp/index.mjs +1 -1
- package/dist/src/components/BAutocomplete/index.mjs +1 -1
- package/dist/src/components/BFormInput/index.mjs +1 -1
- package/dist/src/components/BFormOtp/index.mjs +1 -1
- package/dist/src/components/BFormTextarea/index.mjs +1 -1
- package/dist/src/components/index.mjs +5 -5
- package/dist/{useFormInput-DZ_3ZH1o.js → useFormInput-C-iXRxog.js} +18 -4
- package/dist/useFormInput-C-iXRxog.js.map +1 -0
- package/package.json +1 -1
- package/dist/BApp-GXR1wS6K.js.map +0 -1
- package/dist/BFormInput-BwvdFGDu.js.map +0 -1
- package/dist/BFormTextarea-DlDe26DL.js.map +0 -1
- package/dist/useFormInput-DZ_3ZH1o.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BAutocomplete-DGvKY7-D.js","names":["#t","emits","useId","props","emits","useId","useId"],"sources":["../../../node_modules/.pnpm/ohash@2.0.11/node_modules/ohash/dist/shared/ohash.D__AXeF1.mjs","../../../node_modules/.pnpm/reka-ui@2.10.3_vue@3.5.41_typescript@5.9.3_/node_modules/reka-ui/dist/shared/arrays.js","../../../node_modules/.pnpm/reka-ui@2.10.3_vue@3.5.41_typescript@5.9.3_/node_modules/reka-ui/dist/shared/useFilter.js","../../../node_modules/.pnpm/reka-ui@2.10.3_vue@3.5.41_typescript@5.9.3_/node_modules/reka-ui/dist/shared/useFormControl.js","../../../node_modules/.pnpm/reka-ui@2.10.3_vue@3.5.41_typescript@5.9.3_/node_modules/reka-ui/dist/shared/useTypeahead.js","../../../node_modules/.pnpm/reka-ui@2.10.3_vue@3.5.41_typescript@5.9.3_/node_modules/reka-ui/dist/Collection/Collection.js","../../../node_modules/.pnpm/reka-ui@2.10.3_vue@3.5.41_typescript@5.9.3_/node_modules/reka-ui/dist/Listbox/utils.js","../../../node_modules/.pnpm/reka-ui@2.10.3_vue@3.5.41_typescript@5.9.3_/node_modules/reka-ui/dist/RovingFocus/utils.js","../../../node_modules/.pnpm/reka-ui@2.10.3_vue@3.5.41_typescript@5.9.3_/node_modules/reka-ui/dist/Listbox/ListboxRoot.js","../../../node_modules/.pnpm/reka-ui@2.10.3_vue@3.5.41_typescript@5.9.3_/node_modules/reka-ui/dist/Listbox/ListboxContent.js","../../../node_modules/.pnpm/reka-ui@2.10.3_vue@3.5.41_typescript@5.9.3_/node_modules/reka-ui/dist/Listbox/ListboxFilter.js","../../../node_modules/.pnpm/reka-ui@2.10.3_vue@3.5.41_typescript@5.9.3_/node_modules/reka-ui/dist/Listbox/ListboxItem.js","../../../node_modules/.pnpm/reka-ui@2.10.3_vue@3.5.41_typescript@5.9.3_/node_modules/reka-ui/dist/Listbox/ListboxItemIndicator.js","../../../node_modules/.pnpm/reka-ui@2.10.3_vue@3.5.41_typescript@5.9.3_/node_modules/reka-ui/dist/Combobox/ComboboxRoot.js","../../../node_modules/.pnpm/reka-ui@2.10.3_vue@3.5.41_typescript@5.9.3_/node_modules/reka-ui/dist/Combobox/ComboboxAnchor.js","../../../node_modules/.pnpm/reka-ui@2.10.3_vue@3.5.41_typescript@5.9.3_/node_modules/reka-ui/dist/Combobox/ComboboxContentImpl.js","../../../node_modules/.pnpm/reka-ui@2.10.3_vue@3.5.41_typescript@5.9.3_/node_modules/reka-ui/dist/Combobox/ComboboxContent.js","../../../node_modules/.pnpm/reka-ui@2.10.3_vue@3.5.41_typescript@5.9.3_/node_modules/reka-ui/dist/Combobox/ComboboxEmpty.js","../../../node_modules/.pnpm/reka-ui@2.10.3_vue@3.5.41_typescript@5.9.3_/node_modules/reka-ui/dist/Combobox/ComboboxGroup.js","../../../node_modules/.pnpm/reka-ui@2.10.3_vue@3.5.41_typescript@5.9.3_/node_modules/reka-ui/dist/Combobox/ComboboxInput.js","../../../node_modules/.pnpm/reka-ui@2.10.3_vue@3.5.41_typescript@5.9.3_/node_modules/reka-ui/dist/Combobox/ComboboxItem.js","../../../node_modules/.pnpm/reka-ui@2.10.3_vue@3.5.41_typescript@5.9.3_/node_modules/reka-ui/dist/Combobox/ComboboxItemIndicator.js","../../../node_modules/.pnpm/reka-ui@2.10.3_vue@3.5.41_typescript@5.9.3_/node_modules/reka-ui/dist/Combobox/ComboboxPortal.js","../../../node_modules/.pnpm/reka-ui@2.10.3_vue@3.5.41_typescript@5.9.3_/node_modules/reka-ui/dist/Combobox/ComboboxTrigger.js","../../../node_modules/.pnpm/reka-ui@2.10.3_vue@3.5.41_typescript@5.9.3_/node_modules/reka-ui/dist/shared/useNonce.js","../../../node_modules/.pnpm/reka-ui@2.10.3_vue@3.5.41_typescript@5.9.3_/node_modules/reka-ui/dist/Combobox/ComboboxViewport.js","../src/components/BAutocomplete/BAutocomplete.vue","../src/components/BAutocomplete/BAutocomplete.vue"],"sourcesContent":["function serialize(o){return typeof o==\"string\"?`'${o}'`:new c().serialize(o)}const c=/*@__PURE__*/function(){class o{#t=new Map;compare(t,r){const e=typeof t,n=typeof r;return e===\"string\"&&n===\"string\"?t.localeCompare(r):e===\"number\"&&n===\"number\"?t-r:String.prototype.localeCompare.call(this.serialize(t,true),this.serialize(r,true))}serialize(t,r){if(t===null)return \"null\";switch(typeof t){case \"string\":return r?t:`'${t}'`;case \"bigint\":return `${t}n`;case \"object\":return this.$object(t);case \"function\":return this.$function(t)}return String(t)}serializeObject(t){const r=Object.prototype.toString.call(t);if(r!==\"[object Object]\")return this.serializeBuiltInType(r.length<10?`unknown:${r}`:r.slice(8,-1),t);const e=t.constructor,n=e===Object||e===void 0?\"\":e.name;if(n!==\"\"&&globalThis[n]===e)return this.serializeBuiltInType(n,t);if(typeof t.toJSON==\"function\"){const i=t.toJSON();return n+(i!==null&&typeof i==\"object\"?this.$object(i):`(${this.serialize(i)})`)}return this.serializeObjectEntries(n,Object.entries(t))}serializeBuiltInType(t,r){const e=this[\"$\"+t];if(e)return e.call(this,r);if(typeof r?.entries==\"function\")return this.serializeObjectEntries(t,r.entries());throw new Error(`Cannot serialize ${t}`)}serializeObjectEntries(t,r){const e=Array.from(r).sort((i,a)=>this.compare(i[0],a[0]));let n=`${t}{`;for(let i=0;i<e.length;i++){const[a,l]=e[i];n+=`${this.serialize(a,true)}:${this.serialize(l)}`,i<e.length-1&&(n+=\",\");}return n+\"}\"}$object(t){let r=this.#t.get(t);return r===void 0&&(this.#t.set(t,`#${this.#t.size}`),r=this.serializeObject(t),this.#t.set(t,r)),r}$function(t){const r=Function.prototype.toString.call(t);return r.slice(-15)===\"[native code] }\"?`${t.name||\"\"}()[native]`:`${t.name}(${t.length})${r.replace(/\\s*\\n\\s*/g,\"\")}`}$Array(t){let r=\"[\";for(let e=0;e<t.length;e++)r+=this.serialize(t[e]),e<t.length-1&&(r+=\",\");return r+\"]\"}$Date(t){try{return `Date(${t.toISOString()})`}catch{return \"Date(null)\"}}$ArrayBuffer(t){return `ArrayBuffer[${new Uint8Array(t).join(\",\")}]`}$Set(t){return `Set${this.$Array(Array.from(t).sort((r,e)=>this.compare(r,e)))}`}$Map(t){return this.serializeObjectEntries(\"Map\",t.entries())}}for(const s of [\"Error\",\"RegExp\",\"URL\"])o.prototype[\"$\"+s]=function(t){return `${s}(${t})`};for(const s of [\"Int8Array\",\"Uint8Array\",\"Uint8ClampedArray\",\"Int16Array\",\"Uint16Array\",\"Int32Array\",\"Uint32Array\",\"Float32Array\",\"Float64Array\"])o.prototype[\"$\"+s]=function(t){return `${s}[${t.join(\",\")}]`};for(const s of [\"BigInt64Array\",\"BigUint64Array\"])o.prototype[\"$\"+s]=function(t){return `${s}[${t.join(\"n,\")}${t.length>0?\"n\":\"\"}]`};return o}();\n\nfunction isEqual(object1, object2) {\n if (object1 === object2) {\n return true;\n }\n if (serialize(object1) === serialize(object2)) {\n return true;\n }\n return false;\n}\n\nexport { isEqual as i, serialize as s };\n","import { isEqual } from \"ohash\";\n\n//#region src/shared/arrays.ts\n/**\n* The function `areEqual` compares two arrays and returns true if they are equal in length and have\n* the same elements at corresponding indexes.\n* @param {any[]} arrayA - An array of any type of elements.\n* @param {any[]} arrayB - It looks like you haven't provided the value for `arrayB`. Could you please\n* provide the arrayB value so that I can assist you further?\n* @returns The function `areEqual` is returning a boolean value, either `true` if the two input arrays\n* `arrayA` and `arrayB` are equal, or `false` if they are not equal.\n*/\nfunction areEqual(arrayA, arrayB) {\n\tif (arrayA.length !== arrayB.length) return false;\n\tfor (let index = 0; index < arrayA.length; index++) if (arrayA[index] !== arrayB[index]) return false;\n\treturn true;\n}\n/**\n* Splits an array into chunks of a given size.\n* @param arr The array to split.\n* @param size The size of each chunk.\n* @returns An array of arrays, where each sub-array has `size` elements from the original array.\n* @example ```ts\n* const arr = [1, 2, 3, 4, 5, 6, 7, 8];\n* const chunks = chunk(arr, 3);\n* // chunks = [[1, 2, 3], [4, 5, 6], [7, 8]]\n* ```\n*/\nfunction chunk(arr, size) {\n\tconst result = [];\n\tfor (let i = 0; i < arr.length; i += size) result.push(arr.slice(i, i + size));\n\treturn result;\n}\n/**\n* The function `findValuesBetween` takes an array and two values, then returns a subarray containing\n* elements between the first occurrence of the start value and the first occurrence of the end value\n* in the array.\n* @param {T[]} array - The `array` parameter is an array of values of type `T`.\n* @param {T} start - The `start` parameter is the value that marks the beginning of the range you want\n* to find in the array.\n* @param {T} end - The `end` parameter in the `findValuesBetween` function represents the end value\n* that you want to find in the array. This function will return a subarray of values that are between\n* the `start` and `end` values in the original array.\n* @returns The `findValuesBetween` function returns an array of values from the input array that are\n* between the `start` and `end` values (inclusive). If either the `start` or `end` values are not\n* found in the input array, an empty array is returned.\n*/\nfunction findValuesBetween(array, start, end) {\n\tconst startIndex = array.findIndex((i) => isEqual(i, start));\n\tconst endIndex = array.findIndex((i) => isEqual(i, end));\n\tif (startIndex === -1 || endIndex === -1) return [];\n\tconst [minIndex, maxIndex] = [startIndex, endIndex].sort((a, b) => a - b);\n\treturn array.slice(minIndex, maxIndex + 1);\n}\n\n//#endregion\nexport { areEqual, chunk, findValuesBetween };\n//# sourceMappingURL=arrays.js.map","import { computed, unref } from \"vue\";\n\n//#region src/shared/useFilter.ts\n/**\n* Provides locale-aware string filtering functions.\n* Uses `Intl.Collator` for comparison to ensure proper Unicode handling.\n*\n* @param options - Optional collator options to customize comparison behavior.\n* See [Intl.CollatorOptions](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/Collator/Collator#options) for details.\n* @returns An object with methods to check if a string starts with, ends with, or contains a substring.\n*\n* @example\n* const { startsWith, endsWith, contains } = useFilter();\n*\n* startsWith('hello', 'he'); // true\n* endsWith('hello', 'lo'); // true\n* contains('hello', 'ell'); // true\n*/\nfunction useFilter(options) {\n\tconst computedOptions = computed(() => unref(options));\n\tconst collator = computed(() => new Intl.Collator(\"en\", {\n\t\tusage: \"search\",\n\t\t...computedOptions.value\n\t}));\n\tconst startsWith = (string, substring) => {\n\t\tif (substring.length === 0) return true;\n\t\tstring = string.normalize(\"NFC\");\n\t\tsubstring = substring.normalize(\"NFC\");\n\t\treturn collator.value.compare(string.slice(0, substring.length), substring) === 0;\n\t};\n\tconst endsWith = (string, substring) => {\n\t\tif (substring.length === 0) return true;\n\t\tstring = string.normalize(\"NFC\");\n\t\tsubstring = substring.normalize(\"NFC\");\n\t\treturn collator.value.compare(string.slice(-substring.length), substring) === 0;\n\t};\n\tconst contains = (string, substring) => {\n\t\tif (substring.length === 0) return true;\n\t\tstring = string.normalize(\"NFC\");\n\t\tsubstring = substring.normalize(\"NFC\");\n\t\tlet scan = 0;\n\t\tconst sliceLen = substring.length;\n\t\tfor (; scan + sliceLen <= string.length; scan++) {\n\t\t\tconst slice = string.slice(scan, scan + sliceLen);\n\t\t\tif (collator.value.compare(substring, slice) === 0) return true;\n\t\t}\n\t\treturn false;\n\t};\n\treturn {\n\t\tstartsWith,\n\t\tendsWith,\n\t\tcontains\n\t};\n}\n\n//#endregion\nexport { useFilter };\n//# sourceMappingURL=useFilter.js.map","import { computed, toValue } from \"vue\";\nimport { unrefElement } from \"@vueuse/core\";\n\n//#region src/shared/useFormControl.ts\nfunction useFormControl(el) {\n\treturn computed(() => toValue(el) ? Boolean(unrefElement(el)?.closest(\"form\")) : true);\n}\n\n//#endregion\nexport { useFormControl };\n//# sourceMappingURL=useFormControl.js.map","import { getActiveElement } from \"./getActiveElement.js\";\nimport { refAutoReset } from \"@vueuse/shared\";\n\n//#region src/shared/useTypeahead.ts\nfunction useTypeahead(callback) {\n\tconst search = refAutoReset(\"\", 1e3);\n\tconst handleTypeaheadSearch = (key, items) => {\n\t\tsearch.value = search.value + key;\n\t\tif (callback) callback(key);\n\t\telse {\n\t\t\tconst currentItem = getActiveElement();\n\t\t\tconst itemsWithTextValue = items.map((item) => ({\n\t\t\t\t...item,\n\t\t\t\ttextValue: item.value?.textValue ?? item.ref.textContent?.trim() ?? \"\"\n\t\t\t}));\n\t\t\tconst currentMatch = itemsWithTextValue.find((item) => item.ref === currentItem);\n\t\t\tconst values = itemsWithTextValue.map((item) => item.textValue);\n\t\t\tconst nextMatch = getNextMatch(values, search.value, currentMatch?.textValue);\n\t\t\tconst newItem = itemsWithTextValue.find((item) => item.textValue === nextMatch);\n\t\t\tif (newItem) newItem.ref.focus();\n\t\t\treturn newItem?.ref;\n\t\t}\n\t};\n\tconst resetTypeahead = () => {\n\t\tsearch.value = \"\";\n\t};\n\treturn {\n\t\tsearch,\n\t\thandleTypeaheadSearch,\n\t\tresetTypeahead\n\t};\n}\n/**\n* Wraps an array around itself at a given start index\n* Example: `wrapArray(['a', 'b', 'c', 'd'], 2) === ['c', 'd', 'a', 'b']`\n*/\nfunction wrapArray(array, startIndex) {\n\treturn array.map((_, index) => array[(startIndex + index) % array.length]);\n}\n/**\n* This is the \"meat\" of the typeahead matching logic. It takes in all the values,\n* the search and the current match, and returns the next match (or `undefined`).\n*\n* We normalize the search because if a user has repeatedly pressed a character,\n* we want the exact same behavior as if we only had that one character\n* (ie. cycle through options starting with that character)\n*\n* We also reorder the values by wrapping the array around the current match.\n* This is so we always look forward from the current match, and picking the first\n* match will always be the correct one.\n*\n* Finally, if the normalized search is exactly one character, we exclude the\n* current match from the values because otherwise it would be the first to match always\n* and focus would never move. This is as opposed to the regular case, where we\n* don't want focus to move if the current match still matches.\n*/\nfunction getNextMatch(values, search, currentMatch) {\n\tconst isRepeated = search.length > 1 && Array.from(search).every((char) => char === search[0]);\n\tconst normalizedSearch = isRepeated ? search[0] : search;\n\tconst currentMatchIndex = currentMatch ? values.indexOf(currentMatch) : -1;\n\tlet wrappedValues = wrapArray(values, Math.max(currentMatchIndex, 0));\n\tconst excludeCurrentMatch = normalizedSearch.length === 1;\n\tif (excludeCurrentMatch) wrappedValues = wrappedValues.filter((v) => v !== currentMatch);\n\tconst nextMatch = wrappedValues.find((value) => value.toLowerCase().startsWith(normalizedSearch.toLowerCase()));\n\treturn nextMatch !== currentMatch ? nextMatch : void 0;\n}\n\n//#endregion\nexport { getNextMatch, useTypeahead, wrapArray };\n//# sourceMappingURL=useTypeahead.js.map","import { Slot } from \"../Primitive/Slot.js\";\nimport { usePrimitiveElement } from \"../Primitive/usePrimitiveElement.js\";\nimport { computed, defineComponent, h, inject, markRaw, provide, ref, watch, watchEffect } from \"vue\";\n\n//#region src/Collection/Collection.ts\nconst ITEM_DATA_ATTR = \"data-reka-collection-item\";\nfunction useCollection(options = {}) {\n\tconst { key = \"\", isProvider = false } = options;\n\tconst injectionKey = `${key}CollectionProvider`;\n\tlet context;\n\tif (isProvider) {\n\t\tconst itemMap = ref(/* @__PURE__ */ new Map());\n\t\tconst collectionRef = ref();\n\t\tcontext = {\n\t\t\tcollectionRef,\n\t\t\titemMap\n\t\t};\n\t\tprovide(injectionKey, context);\n\t} else context = inject(injectionKey);\n\tconst getItems = (includeDisabledItem = false) => {\n\t\tconst collectionNode = context.collectionRef.value;\n\t\tif (!collectionNode) return [];\n\t\tconst orderedNodes = Array.from(collectionNode.querySelectorAll(`[${ITEM_DATA_ATTR}]`));\n\t\tconst orderMap = new Map(orderedNodes.map((node, index) => [node, index]));\n\t\tconst items = Array.from(context.itemMap.value.values());\n\t\tconst orderedItems = items.sort((a, b) => (orderMap.get(a.ref) ?? -1) - (orderMap.get(b.ref) ?? -1));\n\t\tif (includeDisabledItem) return orderedItems;\n\t\telse return orderedItems.filter((i) => i.ref.dataset.disabled !== \"\");\n\t};\n\tconst CollectionSlot = /*#__PURE__*/ defineComponent({\n\t\tname: \"CollectionSlot\",\n\t\tinheritAttrs: false,\n\t\tsetup(_, { slots, attrs }) {\n\t\t\tconst { primitiveElement, currentElement } = usePrimitiveElement();\n\t\t\twatch(currentElement, () => {\n\t\t\t\tcontext.collectionRef.value = currentElement.value;\n\t\t\t});\n\t\t\treturn () => h(Slot, {\n\t\t\t\tref: primitiveElement,\n\t\t\t\t...attrs\n\t\t\t}, slots);\n\t\t}\n\t});\n\tconst CollectionItem = /*#__PURE__*/ defineComponent({\n\t\tname: \"CollectionItem\",\n\t\tinheritAttrs: false,\n\t\tprops: { value: { validator: () => true } },\n\t\tsetup(props, { slots, attrs }) {\n\t\t\tconst { primitiveElement, currentElement } = usePrimitiveElement();\n\t\t\twatchEffect((cleanupFn) => {\n\t\t\t\tif (currentElement.value) {\n\t\t\t\t\tconst key$1 = markRaw(currentElement.value);\n\t\t\t\t\tcontext.itemMap.value.set(key$1, {\n\t\t\t\t\t\tref: currentElement.value,\n\t\t\t\t\t\tvalue: props.value\n\t\t\t\t\t});\n\t\t\t\t\tcleanupFn(() => context.itemMap.value.delete(key$1));\n\t\t\t\t}\n\t\t\t});\n\t\t\treturn () => h(Slot, {\n\t\t\t\t...attrs,\n\t\t\t\t[ITEM_DATA_ATTR]: \"\",\n\t\t\t\tref: primitiveElement\n\t\t\t}, slots);\n\t\t}\n\t});\n\tconst reactiveItems = computed(() => Array.from(context.itemMap.value.values()));\n\tconst itemMapSize = computed(() => context.itemMap.value.size);\n\treturn {\n\t\tgetItems,\n\t\treactiveItems,\n\t\titemMapSize,\n\t\tCollectionSlot,\n\t\tCollectionItem\n\t};\n}\n\n//#endregion\nexport { useCollection };\n//# sourceMappingURL=Collection.js.map","import { isEqual } from \"ohash\";\n\n//#region src/Listbox/utils.ts\nfunction queryCheckedElement(parentEl) {\n\treturn parentEl?.querySelector(\"[data-state=checked]\");\n}\nfunction valueComparator(value, currentValue, comparator) {\n\tif (value === void 0) return false;\n\telse if (Array.isArray(value)) return value.some((val) => compare(val, currentValue, comparator));\n\telse return compare(value, currentValue, comparator);\n}\nfunction compare(value, currentValue, comparator) {\n\tif (value === void 0 || currentValue === void 0) return false;\n\tif (typeof value === \"string\") return value === currentValue;\n\tif (typeof comparator === \"function\") return comparator(value, currentValue);\n\tif (typeof comparator === \"string\") return value?.[comparator] === currentValue?.[comparator];\n\treturn isEqual(value, currentValue);\n}\n\n//#endregion\nexport { compare, queryCheckedElement, valueComparator };\n//# sourceMappingURL=utils.js.map","import { getActiveElement } from \"../shared/getActiveElement.js\";\n\n//#region src/RovingFocus/utils.ts\nconst ENTRY_FOCUS = \"rovingFocusGroup.onEntryFocus\";\nconst EVENT_OPTIONS = {\n\tbubbles: false,\n\tcancelable: true\n};\nconst MAP_KEY_TO_FOCUS_INTENT = {\n\tArrowLeft: \"prev\",\n\tArrowUp: \"prev\",\n\tArrowRight: \"next\",\n\tArrowDown: \"next\",\n\tPageUp: \"first\",\n\tHome: \"first\",\n\tPageDown: \"last\",\n\tEnd: \"last\"\n};\nfunction getDirectionAwareKey(key, dir) {\n\tif (dir !== \"rtl\") return key;\n\treturn key === \"ArrowLeft\" ? \"ArrowRight\" : key === \"ArrowRight\" ? \"ArrowLeft\" : key;\n}\nfunction getFocusIntent(event, orientation, dir) {\n\tconst key = getDirectionAwareKey(event.key, dir);\n\tif (orientation === \"vertical\" && [\"ArrowLeft\", \"ArrowRight\"].includes(key)) return void 0;\n\tif (orientation === \"horizontal\" && [\"ArrowUp\", \"ArrowDown\"].includes(key)) return void 0;\n\treturn MAP_KEY_TO_FOCUS_INTENT[key];\n}\nfunction focusFirst(candidates, preventScroll = false) {\n\tconst PREVIOUSLY_FOCUSED_ELEMENT = getActiveElement();\n\tfor (const candidate of candidates) {\n\t\tif (candidate === PREVIOUSLY_FOCUSED_ELEMENT) return;\n\t\tcandidate.focus({ preventScroll });\n\t\tif (getActiveElement() !== PREVIOUSLY_FOCUSED_ELEMENT) return;\n\t}\n}\n/**\n* Wraps an array around itself at a given start index\n* Example: `wrapArray(['a', 'b', 'c', 'd'], 2) === ['c', 'd', 'a', 'b']`\n*/\nfunction wrapArray(array, startIndex) {\n\treturn array.map((_, index) => array[(startIndex + index) % array.length]);\n}\n\n//#endregion\nexport { ENTRY_FOCUS, EVENT_OPTIONS, MAP_KEY_TO_FOCUS_INTENT, focusFirst, getFocusIntent, wrapArray };\n//# sourceMappingURL=utils.js.map","import { findValuesBetween } from \"../shared/arrays.js\";\nimport { createContext } from \"../shared/createContext.js\";\nimport { useDirection } from \"../shared/useDirection.js\";\nimport { useFormControl } from \"../shared/useFormControl.js\";\nimport { useKbd } from \"../shared/useKbd.js\";\nimport { useTypeahead } from \"../shared/useTypeahead.js\";\nimport { Primitive } from \"../Primitive/Primitive.js\";\nimport { usePrimitiveElement } from \"../Primitive/usePrimitiveElement.js\";\nimport { useCollection } from \"../Collection/Collection.js\";\nimport { VisuallyHiddenInput_default } from \"../VisuallyHidden/VisuallyHiddenInput.js\";\nimport { compare } from \"./utils.js\";\nimport { getFocusIntent } from \"../RovingFocus/utils.js\";\nimport { createBlock, createCommentVNode, defineComponent, nextTick, openBlock, ref, renderSlot, toRefs, unref, watch, withCtx } from \"vue\";\nimport { createEventHook, useVModel } from \"@vueuse/core\";\nimport { isClient } from \"@vueuse/shared\";\n\n//#region src/Listbox/ListboxRoot.vue?vue&type=script&setup=true&lang.ts\nconst [injectListboxRootContext, provideListboxRootContext] = /*#__PURE__*/ createContext(\"ListboxRoot\");\nvar ListboxRoot_vue_vue_type_script_setup_true_lang_default = /* @__PURE__ */ defineComponent({\n\t__name: \"ListboxRoot\",\n\tprops: {\n\t\tmodelValue: {\n\t\t\ttype: null,\n\t\t\trequired: false\n\t\t},\n\t\tdefaultValue: {\n\t\t\ttype: null,\n\t\t\trequired: false\n\t\t},\n\t\tmultiple: {\n\t\t\ttype: Boolean,\n\t\t\trequired: false\n\t\t},\n\t\torientation: {\n\t\t\ttype: String,\n\t\t\trequired: false,\n\t\t\tdefault: \"vertical\"\n\t\t},\n\t\tdir: {\n\t\t\ttype: String,\n\t\t\trequired: false\n\t\t},\n\t\tdisabled: {\n\t\t\ttype: Boolean,\n\t\t\trequired: false\n\t\t},\n\t\tselectionBehavior: {\n\t\t\ttype: String,\n\t\t\trequired: false,\n\t\t\tdefault: \"toggle\"\n\t\t},\n\t\thighlightOnHover: {\n\t\t\ttype: Boolean,\n\t\t\trequired: false\n\t\t},\n\t\tby: {\n\t\t\ttype: [String, Function],\n\t\t\trequired: false\n\t\t},\n\t\tasChild: {\n\t\t\ttype: Boolean,\n\t\t\trequired: false\n\t\t},\n\t\tas: {\n\t\t\ttype: null,\n\t\t\trequired: false\n\t\t},\n\t\tname: {\n\t\t\ttype: String,\n\t\t\trequired: false\n\t\t},\n\t\trequired: {\n\t\t\ttype: Boolean,\n\t\t\trequired: false\n\t\t}\n\t},\n\temits: [\n\t\t\"update:modelValue\",\n\t\t\"highlight\",\n\t\t\"entryFocus\",\n\t\t\"leave\"\n\t],\n\tsetup(__props, { expose: __expose, emit: __emit }) {\n\t\tconst props = __props;\n\t\tconst emits = __emit;\n\t\tconst { multiple, highlightOnHover, orientation, disabled, selectionBehavior, dir: propDir } = toRefs(props);\n\t\tconst { getItems } = useCollection({ isProvider: true });\n\t\tconst { handleTypeaheadSearch } = useTypeahead();\n\t\tconst { primitiveElement, currentElement } = usePrimitiveElement();\n\t\tconst kbd = useKbd();\n\t\tconst dir = useDirection(propDir);\n\t\tconst isFormControl = useFormControl(currentElement);\n\t\tconst firstValue = ref();\n\t\tconst isUserAction = ref(false);\n\t\tconst focusable = ref(true);\n\t\tconst modelValue = useVModel(props, \"modelValue\", emits, {\n\t\t\tdefaultValue: props.defaultValue ?? (multiple.value ? [] : void 0),\n\t\t\tpassive: props.modelValue === void 0,\n\t\t\tdeep: true\n\t\t});\n\t\tfunction onValueChange(val) {\n\t\t\tisUserAction.value = true;\n\t\t\tif (props.multiple) {\n\t\t\t\tconst modelArray = Array.isArray(modelValue.value) ? [...modelValue.value] : [];\n\t\t\t\tconst index = modelArray.findIndex((i) => compare(i, val, props.by));\n\t\t\t\tif (props.selectionBehavior === \"toggle\") {\n\t\t\t\t\tindex === -1 ? modelArray.push(val) : modelArray.splice(index, 1);\n\t\t\t\t\tmodelValue.value = modelArray;\n\t\t\t\t} else {\n\t\t\t\t\tmodelValue.value = [val];\n\t\t\t\t\tfirstValue.value = val;\n\t\t\t\t}\n\t\t\t} else if (props.selectionBehavior === \"toggle\") if (compare(modelValue.value, val, props.by)) modelValue.value = void 0;\n\t\t\telse modelValue.value = val;\n\t\t\telse modelValue.value = val;\n\t\t\tsetTimeout(() => {\n\t\t\t\tisUserAction.value = false;\n\t\t\t}, 1);\n\t\t}\n\t\tconst highlightedElement = ref(null);\n\t\tconst previousElement = ref(null);\n\t\tconst isVirtual = ref(false);\n\t\tconst isComposing = ref(false);\n\t\tconst virtualFocusHook = createEventHook();\n\t\tconst virtualKeydownHook = createEventHook();\n\t\tconst virtualHighlightHook = createEventHook();\n\t\tfunction getCollectionItem() {\n\t\t\treturn getItems().map((i) => i.ref).filter((i) => i.dataset.disabled !== \"\");\n\t\t}\n\t\tfunction changeHighlight(el, scrollIntoView = true, focus) {\n\t\t\tif (!el) return;\n\t\t\thighlightedElement.value = el;\n\t\t\tif (focus ?? focusable.value) highlightedElement.value.focus();\n\t\t\tif (scrollIntoView) highlightedElement.value.scrollIntoView({ block: \"nearest\" });\n\t\t\tconst highlightedItem = getItems().find((i) => i.ref === el);\n\t\t\temits(\"highlight\", highlightedItem);\n\t\t}\n\t\tfunction highlightItem(value) {\n\t\t\tif (isVirtual.value) virtualHighlightHook.trigger(value);\n\t\t\telse {\n\t\t\t\tconst item = getItems().find((i) => compare(i.value, value, props.by));\n\t\t\t\tif (item) {\n\t\t\t\t\thighlightedElement.value = item.ref;\n\t\t\t\t\tchangeHighlight(item.ref);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\tfunction onKeydownEnter(event) {\n\t\t\tif (highlightedElement.value && highlightedElement.value.isConnected) {\n\t\t\t\tif (event.ctrlKey || event.metaKey || event.altKey) return;\n\t\t\t\tevent.preventDefault();\n\t\t\t\tevent.stopPropagation();\n\t\t\t\tif (!isComposing.value) highlightedElement.value.click();\n\t\t\t}\n\t\t}\n\t\tfunction onKeydownTypeAhead(event) {\n\t\t\tif (!focusable.value) return;\n\t\t\tisUserAction.value = true;\n\t\t\tif (isVirtual.value) virtualKeydownHook.trigger(event);\n\t\t\telse {\n\t\t\t\tconst isMetaKey = event.altKey || event.ctrlKey || event.metaKey;\n\t\t\t\tif (isMetaKey && event.key === \"a\" && multiple.value) {\n\t\t\t\t\tconst collection = getItems();\n\t\t\t\t\tconst values = collection.map((i) => i.value);\n\t\t\t\t\tmodelValue.value = [...values];\n\t\t\t\t\tevent.preventDefault();\n\t\t\t\t\tconst lastItem = collection.at(-1);\n\t\t\t\t\tif (lastItem) changeHighlight(lastItem.ref);\n\t\t\t\t} else if (!isMetaKey) {\n\t\t\t\t\tconst el = handleTypeaheadSearch(event.key, getItems());\n\t\t\t\t\tif (el) changeHighlight(el);\n\t\t\t\t}\n\t\t\t}\n\t\t\tsetTimeout(() => {\n\t\t\t\tisUserAction.value = false;\n\t\t\t}, 1);\n\t\t}\n\t\tfunction onCompositionStart() {\n\t\t\tisComposing.value = true;\n\t\t}\n\t\tfunction onCompositionEnd() {\n\t\t\tnextTick(() => {\n\t\t\t\tisComposing.value = false;\n\t\t\t});\n\t\t}\n\t\tfunction highlightFirstItem() {\n\t\t\tnextTick(() => {\n\t\t\t\tconst event = new KeyboardEvent(\"keydown\", { key: \"PageUp\" });\n\t\t\t\tonKeydownNavigation(event);\n\t\t\t});\n\t\t}\n\t\tfunction onLeave(event) {\n\t\t\tconst el = highlightedElement.value;\n\t\t\tif (el?.isConnected) previousElement.value = el;\n\t\t\thighlightedElement.value = null;\n\t\t\temits(\"leave\", event);\n\t\t}\n\t\tfunction onEnter(event) {\n\t\t\tconst entryFocusEvent = new CustomEvent(\"listbox.entryFocus\", {\n\t\t\t\tbubbles: false,\n\t\t\t\tcancelable: true\n\t\t\t});\n\t\t\tevent.currentTarget?.dispatchEvent(entryFocusEvent);\n\t\t\temits(\"entryFocus\", entryFocusEvent);\n\t\t\tif (entryFocusEvent.defaultPrevented) return;\n\t\t\tif (previousElement.value) changeHighlight(previousElement.value);\n\t\t\telse {\n\t\t\t\tconst el = getCollectionItem()?.[0];\n\t\t\t\tchangeHighlight(el);\n\t\t\t}\n\t\t}\n\t\tfunction onKeydownNavigation(event) {\n\t\t\tconst intent = getFocusIntent(event, orientation.value, dir.value);\n\t\t\tif (!intent) return;\n\t\t\tlet collection = getCollectionItem();\n\t\t\tif (highlightedElement.value) {\n\t\t\t\tif (intent === \"last\") collection.reverse();\n\t\t\t\telse if (intent === \"prev\" || intent === \"next\") {\n\t\t\t\t\tif (intent === \"prev\") collection.reverse();\n\t\t\t\t\tconst currentIndex = collection.indexOf(highlightedElement.value);\n\t\t\t\t\tcollection = collection.slice(currentIndex + 1);\n\t\t\t\t}\n\t\t\t\thandleMultipleReplace(event, collection[0]);\n\t\t\t}\n\t\t\tif (collection.length) {\n\t\t\t\tconst index = !highlightedElement.value && intent === \"prev\" ? collection.length - 1 : 0;\n\t\t\t\tchangeHighlight(collection[index]);\n\t\t\t}\n\t\t\tif (isVirtual.value) return virtualKeydownHook.trigger(event);\n\t\t}\n\t\tfunction handleMultipleReplace(event, targetEl) {\n\t\t\tif (isVirtual.value || props.selectionBehavior !== \"replace\" || !multiple.value || !Array.isArray(modelValue.value)) return;\n\t\t\tconst isMetaKey = event.altKey || event.ctrlKey || event.metaKey;\n\t\t\tif (isMetaKey && !event.shiftKey) return;\n\t\t\tif (event.shiftKey) {\n\t\t\t\tconst collection = getItems().filter((i) => i.ref.dataset.disabled !== \"\");\n\t\t\t\tlet lastValue = collection.find((i) => i.ref === targetEl)?.value;\n\t\t\t\tif (event.key === kbd.END) lastValue = collection.at(-1)?.value;\n\t\t\t\telse if (event.key === kbd.HOME) lastValue = collection[0]?.value;\n\t\t\t\tif (!lastValue || !firstValue.value) return;\n\t\t\t\tconst values = findValuesBetween(collection.map((i) => i.value), firstValue.value, lastValue);\n\t\t\t\tmodelValue.value = values;\n\t\t\t}\n\t\t}\n\t\tasync function highlightSelected(event, scroll = true) {\n\t\t\tif (!isClient) return;\n\t\t\tawait nextTick();\n\t\t\tif (isVirtual.value) virtualFocusHook.trigger({\n\t\t\t\tevent,\n\t\t\t\tscroll\n\t\t\t});\n\t\t\telse {\n\t\t\t\tconst collection = getCollectionItem();\n\t\t\t\tconst item = collection.find((i) => i.dataset.state === \"checked\");\n\t\t\t\tconst focus = scroll ? void 0 : false;\n\t\t\t\tif (item) changeHighlight(item, scroll, focus);\n\t\t\t\telse if (collection.length) changeHighlight(collection[0], scroll, focus);\n\t\t\t}\n\t\t}\n\t\tlet hasHighlightedOnMount = false;\n\t\twatch(modelValue, () => {\n\t\t\tif (!isUserAction.value) {\n\t\t\t\tconst scroll = hasHighlightedOnMount;\n\t\t\t\thasHighlightedOnMount = true;\n\t\t\t\tnextTick(() => {\n\t\t\t\t\thighlightSelected(void 0, scroll);\n\t\t\t\t});\n\t\t\t}\n\t\t}, {\n\t\t\timmediate: true,\n\t\t\tdeep: true\n\t\t});\n\t\t__expose({\n\t\t\thighlightedElement,\n\t\t\thighlightItem,\n\t\t\thighlightFirstItem,\n\t\t\thighlightSelected,\n\t\t\tgetItems\n\t\t});\n\t\tprovideListboxRootContext({\n\t\t\tmodelValue,\n\t\t\tonValueChange,\n\t\t\tmultiple,\n\t\t\torientation,\n\t\t\tdir,\n\t\t\tdisabled,\n\t\t\thighlightOnHover,\n\t\t\thighlightedElement,\n\t\t\tisVirtual,\n\t\t\tvirtualFocusHook,\n\t\t\tvirtualKeydownHook,\n\t\t\tvirtualHighlightHook,\n\t\t\tby: props.by,\n\t\t\tfirstValue,\n\t\t\tselectionBehavior,\n\t\t\tfocusable,\n\t\t\tonLeave,\n\t\t\tonEnter,\n\t\t\tchangeHighlight,\n\t\t\tonKeydownEnter,\n\t\t\tonKeydownNavigation,\n\t\t\tonKeydownTypeAhead,\n\t\t\tonCompositionStart,\n\t\t\tonCompositionEnd,\n\t\t\thighlightFirstItem\n\t\t});\n\t\treturn (_ctx, _cache) => {\n\t\t\treturn openBlock(), createBlock(unref(Primitive), {\n\t\t\t\tref_key: \"primitiveElement\",\n\t\t\t\tref: primitiveElement,\n\t\t\t\tas: _ctx.as,\n\t\t\t\t\"as-child\": _ctx.asChild,\n\t\t\t\tdir: unref(dir),\n\t\t\t\t\"data-disabled\": unref(disabled) ? \"\" : void 0,\n\t\t\t\tonPointerleave: onLeave,\n\t\t\t\tonFocusout: _cache[0] || (_cache[0] = async (event) => {\n\t\t\t\t\tconst target = event.relatedTarget || event.target;\n\t\t\t\t\tawait nextTick();\n\t\t\t\t\tif (highlightedElement.value && unref(currentElement) && !unref(currentElement).contains(target)) onLeave(event);\n\t\t\t\t})\n\t\t\t}, {\n\t\t\t\tdefault: withCtx(() => [renderSlot(_ctx.$slots, \"default\", { modelValue: unref(modelValue) }), unref(isFormControl) && _ctx.name ? (openBlock(), createBlock(unref(VisuallyHiddenInput_default), {\n\t\t\t\t\tkey: 0,\n\t\t\t\t\tname: _ctx.name,\n\t\t\t\t\tvalue: unref(modelValue),\n\t\t\t\t\tdisabled: unref(disabled),\n\t\t\t\t\trequired: _ctx.required\n\t\t\t\t}, null, 8, [\n\t\t\t\t\t\"name\",\n\t\t\t\t\t\"value\",\n\t\t\t\t\t\"disabled\",\n\t\t\t\t\t\"required\"\n\t\t\t\t])) : createCommentVNode(\"v-if\", true)]),\n\t\t\t\t_: 3\n\t\t\t}, 8, [\n\t\t\t\t\"as\",\n\t\t\t\t\"as-child\",\n\t\t\t\t\"dir\",\n\t\t\t\t\"data-disabled\"\n\t\t\t]);\n\t\t};\n\t}\n});\n\n//#endregion\n//#region src/Listbox/ListboxRoot.vue\nvar ListboxRoot_default = ListboxRoot_vue_vue_type_script_setup_true_lang_default;\n\n//#endregion\nexport { ListboxRoot_default, injectListboxRootContext };\n//# sourceMappingURL=ListboxRoot.js.map","import { Primitive } from \"../Primitive/Primitive.js\";\nimport { useCollection } from \"../Collection/Collection.js\";\nimport { injectListboxRootContext } from \"./ListboxRoot.js\";\nimport { createBlock, createVNode, defineComponent, openBlock, renderSlot, unref, withCtx, withKeys, withModifiers } from \"vue\";\nimport { refAutoReset } from \"@vueuse/shared\";\n\n//#region src/Listbox/ListboxContent.vue?vue&type=script&setup=true&lang.ts\nvar ListboxContent_vue_vue_type_script_setup_true_lang_default = /* @__PURE__ */ defineComponent({\n\t__name: \"ListboxContent\",\n\tprops: {\n\t\tasChild: {\n\t\t\ttype: Boolean,\n\t\t\trequired: false\n\t\t},\n\t\tas: {\n\t\t\ttype: null,\n\t\t\trequired: false\n\t\t}\n\t},\n\tsetup(__props) {\n\t\tconst { CollectionSlot } = useCollection();\n\t\tconst rootContext = injectListboxRootContext();\n\t\tconst isClickFocus = refAutoReset(false, 10);\n\t\treturn (_ctx, _cache) => {\n\t\t\treturn openBlock(), createBlock(unref(CollectionSlot), null, {\n\t\t\t\tdefault: withCtx(() => [createVNode(unref(Primitive), {\n\t\t\t\t\trole: \"listbox\",\n\t\t\t\t\tas: _ctx.as,\n\t\t\t\t\t\"as-child\": _ctx.asChild,\n\t\t\t\t\ttabindex: unref(rootContext).focusable.value ? unref(rootContext).highlightedElement.value ? \"-1\" : \"0\" : \"-1\",\n\t\t\t\t\t\"aria-orientation\": unref(rootContext).orientation.value,\n\t\t\t\t\t\"aria-multiselectable\": !!unref(rootContext).multiple.value,\n\t\t\t\t\t\"data-orientation\": unref(rootContext).orientation.value,\n\t\t\t\t\tonMousedown: _cache[0] || (_cache[0] = withModifiers(($event) => isClickFocus.value = true, [\"left\"])),\n\t\t\t\t\tonFocus: _cache[1] || (_cache[1] = (ev) => {\n\t\t\t\t\t\tif (unref(isClickFocus)) return;\n\t\t\t\t\t\tunref(rootContext).onEnter(ev);\n\t\t\t\t\t}),\n\t\t\t\t\tonKeydown: [\n\t\t\t\t\t\t_cache[2] || (_cache[2] = withKeys((event) => {\n\t\t\t\t\t\t\tif (unref(rootContext).orientation.value === \"vertical\" && (event.key === \"ArrowLeft\" || event.key === \"ArrowRight\") || unref(rootContext).orientation.value === \"horizontal\" && (event.key === \"ArrowUp\" || event.key === \"ArrowDown\")) return;\n\t\t\t\t\t\t\tevent.preventDefault();\n\t\t\t\t\t\t\tunref(rootContext).focusable.value && unref(rootContext).onKeydownNavigation(event);\n\t\t\t\t\t\t}, [\n\t\t\t\t\t\t\t\"down\",\n\t\t\t\t\t\t\t\"up\",\n\t\t\t\t\t\t\t\"left\",\n\t\t\t\t\t\t\t\"right\",\n\t\t\t\t\t\t\t\"home\",\n\t\t\t\t\t\t\t\"end\"\n\t\t\t\t\t\t])),\n\t\t\t\t\t\twithKeys(unref(rootContext).onKeydownEnter, [\"enter\"]),\n\t\t\t\t\t\tunref(rootContext).onKeydownTypeAhead\n\t\t\t\t\t]\n\t\t\t\t}, {\n\t\t\t\t\tdefault: withCtx(() => [renderSlot(_ctx.$slots, \"default\")]),\n\t\t\t\t\t_: 3\n\t\t\t\t}, 8, [\n\t\t\t\t\t\"as\",\n\t\t\t\t\t\"as-child\",\n\t\t\t\t\t\"tabindex\",\n\t\t\t\t\t\"aria-orientation\",\n\t\t\t\t\t\"aria-multiselectable\",\n\t\t\t\t\t\"data-orientation\",\n\t\t\t\t\t\"onKeydown\"\n\t\t\t\t])]),\n\t\t\t\t_: 3\n\t\t\t});\n\t\t};\n\t}\n});\n\n//#endregion\n//#region src/Listbox/ListboxContent.vue\nvar ListboxContent_default = ListboxContent_vue_vue_type_script_setup_true_lang_default;\n\n//#endregion\nexport { ListboxContent_default };\n//# sourceMappingURL=ListboxContent.js.map","import { useComposing } from \"../shared/useComposing.js\";\nimport { Primitive } from \"../Primitive/Primitive.js\";\nimport { usePrimitiveElement } from \"../Primitive/usePrimitiveElement.js\";\nimport { injectListboxRootContext } from \"./ListboxRoot.js\";\nimport { computed, createBlock, defineComponent, onMounted, onUnmounted, openBlock, ref, renderSlot, unref, watchSyncEffect, withCtx, withKeys } from \"vue\";\nimport { useVModel } from \"@vueuse/core\";\n\n//#region src/Listbox/ListboxFilter.vue?vue&type=script&setup=true&lang.ts\nvar ListboxFilter_vue_vue_type_script_setup_true_lang_default = /* @__PURE__ */ defineComponent({\n\t__name: \"ListboxFilter\",\n\tprops: {\n\t\tmodelValue: {\n\t\t\ttype: String,\n\t\t\trequired: false\n\t\t},\n\t\tautoFocus: {\n\t\t\ttype: Boolean,\n\t\t\trequired: false\n\t\t},\n\t\tdisabled: {\n\t\t\ttype: Boolean,\n\t\t\trequired: false\n\t\t},\n\t\tasChild: {\n\t\t\ttype: Boolean,\n\t\t\trequired: false\n\t\t},\n\t\tas: {\n\t\t\ttype: null,\n\t\t\trequired: false,\n\t\t\tdefault: \"input\"\n\t\t}\n\t},\n\temits: [\"update:modelValue\"],\n\tsetup(__props, { emit: __emit }) {\n\t\tconst props = __props;\n\t\tconst emits = __emit;\n\t\tconst modelValue = useVModel(props, \"modelValue\", emits, {\n\t\t\tdefaultValue: \"\",\n\t\t\tpassive: props.modelValue === void 0\n\t\t});\n\t\tconst rootContext = injectListboxRootContext();\n\t\tconst { primitiveElement, currentElement } = usePrimitiveElement();\n\t\tconst disabled = computed(() => props.disabled || rootContext.disabled.value || false);\n\t\tconst activedescendant = ref();\n\t\twatchSyncEffect(() => activedescendant.value = rootContext.highlightedElement.value?.id);\n\t\tonMounted(() => {\n\t\t\trootContext.focusable.value = false;\n\t\t\tsetTimeout(() => {\n\t\t\t\tif (props.autoFocus) currentElement.value?.focus();\n\t\t\t}, 1);\n\t\t});\n\t\tonUnmounted(() => {\n\t\t\trootContext.focusable.value = true;\n\t\t});\n\t\tconst { isComposing, shouldDeferInput, handleCompositionStart, handleCompositionUpdate, handleCompositionEnd } = useComposing((event) => {\n\t\t\tmodelValue.value = event.target.value;\n\t\t\trootContext.onCompositionEnd();\n\t\t\trootContext.highlightFirstItem();\n\t\t});\n\t\tfunction onCompositionStart() {\n\t\t\trootContext.onCompositionStart();\n\t\t\thandleCompositionStart();\n\t\t}\n\t\tfunction handleInput(event) {\n\t\t\tif (shouldDeferInput.value) return;\n\t\t\tmodelValue.value = event.target.value;\n\t\t\trootContext.highlightFirstItem();\n\t\t}\n\t\tfunction handleKeydownNavigation(event) {\n\t\t\tif (isComposing.value) return;\n\t\t\tevent.preventDefault();\n\t\t\trootContext.onKeydownNavigation(event);\n\t\t}\n\t\tfunction handleKeydownEnter(event) {\n\t\t\tif (isComposing.value) return;\n\t\t\trootContext.onKeydownEnter(event);\n\t\t}\n\t\treturn (_ctx, _cache) => {\n\t\t\treturn openBlock(), createBlock(unref(Primitive), {\n\t\t\t\tref_key: \"primitiveElement\",\n\t\t\t\tref: primitiveElement,\n\t\t\t\tas: _ctx.as,\n\t\t\t\t\"as-child\": _ctx.asChild,\n\t\t\t\tvalue: unref(modelValue),\n\t\t\t\tdisabled: disabled.value ? \"\" : void 0,\n\t\t\t\t\"data-disabled\": disabled.value ? \"\" : void 0,\n\t\t\t\t\"aria-disabled\": disabled.value ?? void 0,\n\t\t\t\t\"aria-activedescendant\": activedescendant.value,\n\t\t\t\ttype: \"text\",\n\t\t\t\tonKeydown: [withKeys(handleKeydownNavigation, [\n\t\t\t\t\t\"down\",\n\t\t\t\t\t\"up\",\n\t\t\t\t\t\"home\",\n\t\t\t\t\t\"end\"\n\t\t\t\t]), withKeys(handleKeydownEnter, [\"enter\"])],\n\t\t\t\tonInput: handleInput,\n\t\t\t\tonCompositionstart: onCompositionStart,\n\t\t\t\tonCompositionupdate: unref(handleCompositionUpdate),\n\t\t\t\tonCompositionend: unref(handleCompositionEnd)\n\t\t\t}, {\n\t\t\t\tdefault: withCtx(() => [renderSlot(_ctx.$slots, \"default\", { modelValue: unref(modelValue) })]),\n\t\t\t\t_: 3\n\t\t\t}, 8, [\n\t\t\t\t\"as\",\n\t\t\t\t\"as-child\",\n\t\t\t\t\"value\",\n\t\t\t\t\"disabled\",\n\t\t\t\t\"data-disabled\",\n\t\t\t\t\"aria-disabled\",\n\t\t\t\t\"aria-activedescendant\",\n\t\t\t\t\"onCompositionupdate\",\n\t\t\t\t\"onCompositionend\"\n\t\t\t]);\n\t\t};\n\t}\n});\n\n//#endregion\n//#region src/Listbox/ListboxFilter.vue\nvar ListboxFilter_default = ListboxFilter_vue_vue_type_script_setup_true_lang_default;\n\n//#endregion\nexport { ListboxFilter_default };\n//# sourceMappingURL=ListboxFilter.js.map","import { createContext } from \"../shared/createContext.js\";\nimport { handleAndDispatchCustomEvent } from \"../shared/handleAndDispatchCustomEvent.js\";\nimport { useForwardExpose } from \"../shared/useForwardExpose.js\";\nimport { useId } from \"../shared/useId.js\";\nimport { Primitive } from \"../Primitive/Primitive.js\";\nimport { useCollection } from \"../Collection/Collection.js\";\nimport { valueComparator } from \"./utils.js\";\nimport { injectListboxRootContext } from \"./ListboxRoot.js\";\nimport { computed, createBlock, createVNode, defineComponent, mergeProps, openBlock, renderSlot, unref, withCtx, withKeys, withMemo, withModifiers } from \"vue\";\n\n//#region src/Listbox/ListboxItem.vue?vue&type=script&setup=true&lang.ts\nconst LISTBOX_SELECT = \"listbox.select\";\nconst [injectListboxItemContext, provideListboxItemContext] = /*#__PURE__*/ createContext(\"ListboxItem\");\nvar ListboxItem_vue_vue_type_script_setup_true_lang_default = /* @__PURE__ */ defineComponent({\n\t__name: \"ListboxItem\",\n\tprops: {\n\t\tvalue: {\n\t\t\ttype: null,\n\t\t\trequired: true\n\t\t},\n\t\tdisabled: {\n\t\t\ttype: Boolean,\n\t\t\trequired: false\n\t\t},\n\t\tasChild: {\n\t\t\ttype: Boolean,\n\t\t\trequired: false\n\t\t},\n\t\tas: {\n\t\t\ttype: null,\n\t\t\trequired: false,\n\t\t\tdefault: \"div\"\n\t\t}\n\t},\n\temits: [\"select\"],\n\tsetup(__props, { emit: __emit }) {\n\t\tconst props = __props;\n\t\tconst emits = __emit;\n\t\tconst id = useId(void 0, \"reka-listbox-item\");\n\t\tconst { CollectionItem } = useCollection();\n\t\tconst { forwardRef, currentElement } = useForwardExpose();\n\t\tconst rootContext = injectListboxRootContext();\n\t\tconst isHighlighted = computed(() => currentElement.value != null && currentElement.value === rootContext.highlightedElement.value);\n\t\tconst isSelected = computed(() => valueComparator(rootContext.modelValue.value, props.value, rootContext.by));\n\t\tconst disabled = computed(() => rootContext.disabled.value || props.disabled);\n\t\tasync function handleSelect(ev) {\n\t\t\temits(\"select\", ev);\n\t\t\tif (ev?.defaultPrevented) return;\n\t\t\tif (!disabled.value && ev) {\n\t\t\t\trootContext.onValueChange(props.value);\n\t\t\t\trootContext.changeHighlight(currentElement.value);\n\t\t\t}\n\t\t}\n\t\tfunction handleSelectCustomEvent(ev) {\n\t\t\tconst eventDetail = {\n\t\t\t\toriginalEvent: ev,\n\t\t\t\tvalue: props.value\n\t\t\t};\n\t\t\thandleAndDispatchCustomEvent(LISTBOX_SELECT, handleSelect, eventDetail);\n\t\t}\n\t\tprovideListboxItemContext({ isSelected });\n\t\treturn (_ctx, _cache) => {\n\t\t\treturn openBlock(), createBlock(unref(CollectionItem), { value: _ctx.value }, {\n\t\t\t\tdefault: withCtx(() => [withMemo([\n\t\t\t\t\tisHighlighted.value,\n\t\t\t\t\tisSelected.value,\n\t\t\t\t\tdisabled.value,\n\t\t\t\t\tunref(rootContext).focusable.value\n\t\t\t\t], () => createVNode(unref(Primitive), mergeProps({ id: unref(id) }, _ctx.$attrs, {\n\t\t\t\t\tref: unref(forwardRef),\n\t\t\t\t\trole: \"option\",\n\t\t\t\t\ttabindex: unref(rootContext).focusable.value ? isHighlighted.value ? \"0\" : \"-1\" : -1,\n\t\t\t\t\t\"aria-selected\": isSelected.value,\n\t\t\t\t\tas: _ctx.as,\n\t\t\t\t\t\"as-child\": _ctx.asChild,\n\t\t\t\t\tdisabled: disabled.value ? \"\" : void 0,\n\t\t\t\t\t\"data-disabled\": disabled.value ? \"\" : void 0,\n\t\t\t\t\t\"data-highlighted\": isHighlighted.value ? \"\" : void 0,\n\t\t\t\t\t\"data-state\": isSelected.value ? \"checked\" : \"unchecked\",\n\t\t\t\t\tonClick: handleSelectCustomEvent,\n\t\t\t\t\tonKeydown: withKeys(withModifiers(handleSelectCustomEvent, [\"prevent\"]), [\"space\"]),\n\t\t\t\t\tonPointermove: _cache[0] || (_cache[0] = () => {\n\t\t\t\t\t\tif (unref(rootContext).highlightedElement.value === unref(currentElement)) return;\n\t\t\t\t\t\tif (unref(rootContext).highlightOnHover.value) unref(rootContext).changeHighlight(unref(currentElement), false, false);\n\t\t\t\t\t})\n\t\t\t\t}), {\n\t\t\t\t\tdefault: withCtx(() => [renderSlot(_ctx.$slots, \"default\")]),\n\t\t\t\t\t_: 3\n\t\t\t\t}, 16, [\n\t\t\t\t\t\"id\",\n\t\t\t\t\t\"tabindex\",\n\t\t\t\t\t\"aria-selected\",\n\t\t\t\t\t\"as\",\n\t\t\t\t\t\"as-child\",\n\t\t\t\t\t\"disabled\",\n\t\t\t\t\t\"data-disabled\",\n\t\t\t\t\t\"data-highlighted\",\n\t\t\t\t\t\"data-state\",\n\t\t\t\t\t\"onKeydown\"\n\t\t\t\t]), _cache, 1)]),\n\t\t\t\t_: 3\n\t\t\t}, 8, [\"value\"]);\n\t\t};\n\t}\n});\n\n//#endregion\n//#region src/Listbox/ListboxItem.vue\nvar ListboxItem_default = ListboxItem_vue_vue_type_script_setup_true_lang_default;\n\n//#endregion\nexport { ListboxItem_default, injectListboxItemContext };\n//# sourceMappingURL=ListboxItem.js.map","import { useForwardExpose } from \"../shared/useForwardExpose.js\";\nimport { Primitive } from \"../Primitive/Primitive.js\";\nimport { injectListboxItemContext } from \"./ListboxItem.js\";\nimport { createBlock, createCommentVNode, defineComponent, mergeProps, openBlock, renderSlot, unref, withCtx } from \"vue\";\n\n//#region src/Listbox/ListboxItemIndicator.vue?vue&type=script&setup=true&lang.ts\nvar ListboxItemIndicator_vue_vue_type_script_setup_true_lang_default = /* @__PURE__ */ defineComponent({\n\t__name: \"ListboxItemIndicator\",\n\tprops: {\n\t\tasChild: {\n\t\t\ttype: Boolean,\n\t\t\trequired: false\n\t\t},\n\t\tas: {\n\t\t\ttype: null,\n\t\t\trequired: false,\n\t\t\tdefault: \"span\"\n\t\t}\n\t},\n\tsetup(__props) {\n\t\tconst props = __props;\n\t\tuseForwardExpose();\n\t\tconst itemContext = injectListboxItemContext();\n\t\treturn (_ctx, _cache) => {\n\t\t\treturn unref(itemContext).isSelected.value ? (openBlock(), createBlock(unref(Primitive), mergeProps({\n\t\t\t\tkey: 0,\n\t\t\t\t\"aria-hidden\": \"true\"\n\t\t\t}, props), {\n\t\t\t\tdefault: withCtx(() => [renderSlot(_ctx.$slots, \"default\")]),\n\t\t\t\t_: 3\n\t\t\t}, 16)) : createCommentVNode(\"v-if\", true);\n\t\t};\n\t}\n});\n\n//#endregion\n//#region src/Listbox/ListboxItemIndicator.vue\nvar ListboxItemIndicator_default = ListboxItemIndicator_vue_vue_type_script_setup_true_lang_default;\n\n//#endregion\nexport { ListboxItemIndicator_default };\n//# sourceMappingURL=ListboxItemIndicator.js.map","import { createContext } from \"../shared/createContext.js\";\nimport { useDirection } from \"../shared/useDirection.js\";\nimport { useFilter } from \"../shared/useFilter.js\";\nimport { usePrimitiveElement } from \"../Primitive/usePrimitiveElement.js\";\nimport { ListboxRoot_default } from \"../Listbox/ListboxRoot.js\";\nimport { PopperRoot_default } from \"../Popper/PopperRoot.js\";\nimport { computed, createBlock, createVNode, defineComponent, getCurrentInstance, isRef, mergeProps, nextTick, onMounted, openBlock, ref, renderSlot, toRefs, unref, withCtx } from \"vue\";\nimport { createEventHook, useVModel } from \"@vueuse/core\";\n\n//#region src/Combobox/ComboboxRoot.vue?vue&type=script&setup=true&lang.ts\nconst [injectComboboxRootContext, provideComboboxRootContext] = /*#__PURE__*/ createContext(\"ComboboxRoot\");\nvar ComboboxRoot_vue_vue_type_script_setup_true_lang_default = /* @__PURE__ */ defineComponent({\n\t__name: \"ComboboxRoot\",\n\tprops: {\n\t\topen: {\n\t\t\ttype: Boolean,\n\t\t\trequired: false,\n\t\t\tdefault: void 0\n\t\t},\n\t\tdefaultOpen: {\n\t\t\ttype: Boolean,\n\t\t\trequired: false\n\t\t},\n\t\tresetSearchTermOnBlur: {\n\t\t\ttype: Boolean,\n\t\t\trequired: false,\n\t\t\tdefault: true\n\t\t},\n\t\tresetSearchTermOnSelect: {\n\t\t\ttype: Boolean,\n\t\t\trequired: false,\n\t\t\tdefault: true\n\t\t},\n\t\topenOnFocus: {\n\t\t\ttype: Boolean,\n\t\t\trequired: false,\n\t\t\tdefault: false\n\t\t},\n\t\topenOnClick: {\n\t\t\ttype: Boolean,\n\t\t\trequired: false,\n\t\t\tdefault: false\n\t\t},\n\t\tignoreFilter: {\n\t\t\ttype: Boolean,\n\t\t\trequired: false\n\t\t},\n\t\tresetModelValueOnClear: {\n\t\t\ttype: Boolean,\n\t\t\trequired: false,\n\t\t\tdefault: false\n\t\t},\n\t\tmodelValue: {\n\t\t\ttype: null,\n\t\t\trequired: false\n\t\t},\n\t\tdefaultValue: {\n\t\t\ttype: null,\n\t\t\trequired: false\n\t\t},\n\t\tmultiple: {\n\t\t\ttype: Boolean,\n\t\t\trequired: false\n\t\t},\n\t\tdir: {\n\t\t\ttype: String,\n\t\t\trequired: false\n\t\t},\n\t\tdisabled: {\n\t\t\ttype: Boolean,\n\t\t\trequired: false\n\t\t},\n\t\thighlightOnHover: {\n\t\t\ttype: Boolean,\n\t\t\trequired: false,\n\t\t\tdefault: true\n\t\t},\n\t\tby: {\n\t\t\ttype: [String, Function],\n\t\t\trequired: false\n\t\t},\n\t\tasChild: {\n\t\t\ttype: Boolean,\n\t\t\trequired: false\n\t\t},\n\t\tas: {\n\t\t\ttype: null,\n\t\t\trequired: false\n\t\t},\n\t\tname: {\n\t\t\ttype: String,\n\t\t\trequired: false\n\t\t},\n\t\trequired: {\n\t\t\ttype: Boolean,\n\t\t\trequired: false\n\t\t}\n\t},\n\temits: [\n\t\t\"update:modelValue\",\n\t\t\"highlight\",\n\t\t\"update:open\"\n\t],\n\tsetup(__props, { expose: __expose, emit: __emit }) {\n\t\tconst props = __props;\n\t\tconst emits = __emit;\n\t\tconst { primitiveElement, currentElement: parentElement } = usePrimitiveElement();\n\t\tconst { multiple, disabled, ignoreFilter, resetSearchTermOnSelect, openOnFocus, openOnClick, dir: propDir, resetModelValueOnClear, highlightOnHover } = toRefs(props);\n\t\tconst dir = useDirection(propDir);\n\t\tconst modelValue = useVModel(props, \"modelValue\", emits, {\n\t\t\tdefaultValue: props.defaultValue ?? (multiple.value ? [] : void 0),\n\t\t\tpassive: props.modelValue === void 0,\n\t\t\tdeep: true\n\t\t});\n\t\tconst open = useVModel(props, \"open\", emits, {\n\t\t\tdefaultValue: props.defaultOpen,\n\t\t\tpassive: props.open === void 0\n\t\t});\n\t\tasync function onOpenChange(val) {\n\t\t\topen.value = val;\n\t\t\tfilterSearch.value = \"\";\n\t\t\tif (val) {\n\t\t\t\tawait nextTick();\n\t\t\t\tprimitiveElement.value?.highlightSelected();\n\t\t\t\tisUserInputted.value = true;\n\t\t\t\tinputElement.value?.focus();\n\t\t\t} else {\n\t\t\t\tisUserInputted.value = false;\n\t\t\t\tsetTimeout(() => {\n\t\t\t\t\tif (!val && props.resetSearchTermOnBlur) resetSearchTerm.trigger();\n\t\t\t\t}, 1);\n\t\t\t}\n\t\t}\n\t\tconst resetSearchTerm = createEventHook();\n\t\tconst isUserInputted = ref(false);\n\t\tconst isVirtual = ref(false);\n\t\tconst inputElement = ref();\n\t\tconst triggerElement = ref();\n\t\tconst highlightedElement = computed(() => primitiveElement.value?.highlightedElement ?? void 0);\n\t\tconst allItems = ref(/* @__PURE__ */ new Map());\n\t\tconst allGroups = ref(/* @__PURE__ */ new Map());\n\t\tconst { contains } = useFilter({ sensitivity: \"base\" });\n\t\tconst filterSearch = ref(\"\");\n\t\tconst filterState = computed((oldValue) => {\n\t\t\tif (!filterSearch.value || props.ignoreFilter || isVirtual.value) return {\n\t\t\t\tcount: allItems.value.size,\n\t\t\t\titems: oldValue?.items ?? /* @__PURE__ */ new Map(),\n\t\t\t\tgroups: oldValue?.groups ?? new Set(allGroups.value.keys())\n\t\t\t};\n\t\t\tlet itemCount = 0;\n\t\t\tconst filteredItems = /* @__PURE__ */ new Map();\n\t\t\tconst filteredGroups = /* @__PURE__ */ new Set();\n\t\t\tfor (const [id, value] of allItems.value) {\n\t\t\t\tconst score = contains(value, filterSearch.value);\n\t\t\t\tfilteredItems.set(id, score ? 1 : 0);\n\t\t\t\tif (score) itemCount++;\n\t\t\t}\n\t\t\tfor (const [groupId, group] of allGroups.value) for (const itemId of group) if (filteredItems.get(itemId) > 0) {\n\t\t\t\tfilteredGroups.add(groupId);\n\t\t\t\tbreak;\n\t\t\t}\n\t\t\treturn {\n\t\t\t\tcount: itemCount,\n\t\t\t\titems: filteredItems,\n\t\t\t\tgroups: filteredGroups\n\t\t\t};\n\t\t});\n\t\tconst inst = getCurrentInstance();\n\t\tonMounted(() => {\n\t\t\tif (inst?.exposed) {\n\t\t\t\tinst.exposed.highlightItem = primitiveElement.value?.highlightItem;\n\t\t\t\tinst.exposed.highlightFirstItem = primitiveElement.value?.highlightFirstItem;\n\t\t\t\tinst.exposed.highlightSelected = primitiveElement.value?.highlightSelected;\n\t\t\t}\n\t\t});\n\t\t__expose({\n\t\t\tfiltered: filterState,\n\t\t\thighlightedElement,\n\t\t\thighlightItem: primitiveElement.value?.highlightItem,\n\t\t\thighlightFirstItem: primitiveElement.value?.highlightFirstItem,\n\t\t\thighlightSelected: primitiveElement.value?.highlightSelected\n\t\t});\n\t\tprovideComboboxRootContext({\n\t\t\tmodelValue,\n\t\t\tmultiple,\n\t\t\tdisabled,\n\t\t\topen,\n\t\t\tonOpenChange,\n\t\t\tcontentId: \"\",\n\t\t\tisUserInputted,\n\t\t\tisVirtual,\n\t\t\tinputElement,\n\t\t\thighlightedElement,\n\t\t\tonInputElementChange: (val) => inputElement.value = val,\n\t\t\ttriggerElement,\n\t\t\tonTriggerElementChange: (val) => triggerElement.value = val,\n\t\t\tparentElement,\n\t\t\tresetSearchTermOnSelect,\n\t\t\tonResetSearchTerm: resetSearchTerm.on,\n\t\t\tallItems,\n\t\t\tallGroups,\n\t\t\tfilterSearch,\n\t\t\tfilterState,\n\t\t\tignoreFilter,\n\t\t\topenOnFocus,\n\t\t\topenOnClick,\n\t\t\tresetModelValueOnClear\n\t\t});\n\t\treturn (_ctx, _cache) => {\n\t\t\treturn openBlock(), createBlock(unref(PopperRoot_default), null, {\n\t\t\t\tdefault: withCtx(() => [createVNode(unref(ListboxRoot_default), mergeProps({\n\t\t\t\t\tref_key: \"primitiveElement\",\n\t\t\t\t\tref: primitiveElement\n\t\t\t\t}, _ctx.$attrs, {\n\t\t\t\t\tmodelValue: unref(modelValue),\n\t\t\t\t\t\"onUpdate:modelValue\": _cache[0] || (_cache[0] = ($event) => isRef(modelValue) ? modelValue.value = $event : null),\n\t\t\t\t\tstyle: { pointerEvents: unref(open) ? \"auto\" : void 0 },\n\t\t\t\t\tas: _ctx.as,\n\t\t\t\t\t\"as-child\": _ctx.asChild,\n\t\t\t\t\tdir: unref(dir),\n\t\t\t\t\tmultiple: unref(multiple),\n\t\t\t\t\tname: _ctx.name,\n\t\t\t\t\trequired: _ctx.required,\n\t\t\t\t\tdisabled: unref(disabled),\n\t\t\t\t\t\"highlight-on-hover\": unref(highlightOnHover),\n\t\t\t\t\tby: props.by,\n\t\t\t\t\tonHighlight: _cache[1] || (_cache[1] = ($event) => emits(\"highlight\", $event))\n\t\t\t\t}), {\n\t\t\t\t\tdefault: withCtx(() => [renderSlot(_ctx.$slots, \"default\", {\n\t\t\t\t\t\topen: unref(open),\n\t\t\t\t\t\tmodelValue: unref(modelValue)\n\t\t\t\t\t})]),\n\t\t\t\t\t_: 3\n\t\t\t\t}, 16, [\n\t\t\t\t\t\"modelValue\",\n\t\t\t\t\t\"style\",\n\t\t\t\t\t\"as\",\n\t\t\t\t\t\"as-child\",\n\t\t\t\t\t\"dir\",\n\t\t\t\t\t\"multiple\",\n\t\t\t\t\t\"name\",\n\t\t\t\t\t\"required\",\n\t\t\t\t\t\"disabled\",\n\t\t\t\t\t\"highlight-on-hover\",\n\t\t\t\t\t\"by\"\n\t\t\t\t])]),\n\t\t\t\t_: 3\n\t\t\t});\n\t\t};\n\t}\n});\n\n//#endregion\n//#region src/Combobox/ComboboxRoot.vue\nvar ComboboxRoot_default = ComboboxRoot_vue_vue_type_script_setup_true_lang_default;\n\n//#endregion\nexport { ComboboxRoot_default, injectComboboxRootContext, provideComboboxRootContext };\n//# sourceMappingURL=ComboboxRoot.js.map","import { useForwardExpose } from \"../shared/useForwardExpose.js\";\nimport { Primitive } from \"../Primitive/Primitive.js\";\nimport { PopperAnchor_default } from \"../Popper/PopperAnchor.js\";\nimport { createBlock, createVNode, defineComponent, mergeProps, openBlock, renderSlot, unref, withCtx } from \"vue\";\n\n//#region src/Combobox/ComboboxAnchor.vue?vue&type=script&setup=true&lang.ts\nvar ComboboxAnchor_vue_vue_type_script_setup_true_lang_default = /* @__PURE__ */ defineComponent({\n\t__name: \"ComboboxAnchor\",\n\tprops: {\n\t\treference: {\n\t\t\ttype: null,\n\t\t\trequired: false\n\t\t},\n\t\tasChild: {\n\t\t\ttype: Boolean,\n\t\t\trequired: false\n\t\t},\n\t\tas: {\n\t\t\ttype: null,\n\t\t\trequired: false\n\t\t}\n\t},\n\tsetup(__props) {\n\t\tconst { forwardRef } = useForwardExpose();\n\t\treturn (_ctx, _cache) => {\n\t\t\treturn openBlock(), createBlock(unref(PopperAnchor_default), {\n\t\t\t\t\"as-child\": \"\",\n\t\t\t\treference: _ctx.reference\n\t\t\t}, {\n\t\t\t\tdefault: withCtx(() => [createVNode(unref(Primitive), mergeProps({\n\t\t\t\t\tref: unref(forwardRef),\n\t\t\t\t\t\"as-child\": _ctx.asChild,\n\t\t\t\t\tas: _ctx.as\n\t\t\t\t}, _ctx.$attrs), {\n\t\t\t\t\tdefault: withCtx(() => [renderSlot(_ctx.$slots, \"default\")]),\n\t\t\t\t\t_: 3\n\t\t\t\t}, 16, [\"as-child\", \"as\"])]),\n\t\t\t\t_: 3\n\t\t\t}, 8, [\"reference\"]);\n\t\t};\n\t}\n});\n\n//#endregion\n//#region src/Combobox/ComboboxAnchor.vue\nvar ComboboxAnchor_default = ComboboxAnchor_vue_vue_type_script_setup_true_lang_default;\n\n//#endregion\nexport { ComboboxAnchor_default };\n//# sourceMappingURL=ComboboxAnchor.js.map","import { createContext } from \"../shared/createContext.js\";\nimport { getActiveElement } from \"../shared/getActiveElement.js\";\nimport { useBodyScrollLock } from \"../shared/useBodyScrollLock.js\";\nimport { useFocusGuards } from \"../shared/useFocusGuards.js\";\nimport { useForwardExpose } from \"../shared/useForwardExpose.js\";\nimport { useForwardProps } from \"../shared/useForwardProps.js\";\nimport { useHideOthers } from \"../shared/useHideOthers.js\";\nimport { Primitive } from \"../Primitive/Primitive.js\";\nimport { DismissableLayer_default } from \"../DismissableLayer/DismissableLayer.js\";\nimport { FocusScope_default } from \"../FocusScope/FocusScope.js\";\nimport { ListboxContent_default } from \"../Listbox/ListboxContent.js\";\nimport { PopperContent_default } from \"../Popper/PopperContent.js\";\nimport { injectComboboxRootContext } from \"./ComboboxRoot.js\";\nimport { computed, createBlock, createVNode, defineComponent, mergeProps, onMounted, onUnmounted, openBlock, ref, renderSlot, resolveDynamicComponent, toRefs, unref, withCtx, withModifiers } from \"vue\";\n\n//#region src/Combobox/ComboboxContentImpl.vue?vue&type=script&setup=true&lang.ts\nconst [injectComboboxContentContext, provideComboboxContentContext] = /*#__PURE__*/ createContext(\"ComboboxContent\");\nvar ComboboxContentImpl_vue_vue_type_script_setup_true_lang_default = /* @__PURE__ */ defineComponent({\n\t__name: \"ComboboxContentImpl\",\n\tprops: {\n\t\tposition: {\n\t\t\ttype: String,\n\t\t\trequired: false,\n\t\t\tdefault: \"inline\"\n\t\t},\n\t\tbodyLock: {\n\t\t\ttype: Boolean,\n\t\t\trequired: false\n\t\t},\n\t\thideWhenEmpty: {\n\t\t\ttype: Boolean,\n\t\t\trequired: false\n\t\t},\n\t\tmemoDependencies: {\n\t\t\ttype: Array,\n\t\t\trequired: false\n\t\t},\n\t\tside: {\n\t\t\ttype: null,\n\t\t\trequired: false\n\t\t},\n\t\tsideOffset: {\n\t\t\ttype: Number,\n\t\t\trequired: false\n\t\t},\n\t\tsideFlip: {\n\t\t\ttype: Boolean,\n\t\t\trequired: false\n\t\t},\n\t\talign: {\n\t\t\ttype: null,\n\t\t\trequired: false\n\t\t},\n\t\talignOffset: {\n\t\t\ttype: Number,\n\t\t\trequired: false\n\t\t},\n\t\talignFlip: {\n\t\t\ttype: Boolean,\n\t\t\trequired: false\n\t\t},\n\t\tavoidCollisions: {\n\t\t\ttype: Boolean,\n\t\t\trequired: false\n\t\t},\n\t\tcollisionBoundary: {\n\t\t\ttype: null,\n\t\t\trequired: false\n\t\t},\n\t\tcollisionPadding: {\n\t\t\ttype: [Number, Object],\n\t\t\trequired: false\n\t\t},\n\t\tarrowPadding: {\n\t\t\ttype: Number,\n\t\t\trequired: false\n\t\t},\n\t\thideShiftedArrow: {\n\t\t\ttype: Boolean,\n\t\t\trequired: false\n\t\t},\n\t\tsticky: {\n\t\t\ttype: String,\n\t\t\trequired: false\n\t\t},\n\t\thideWhenDetached: {\n\t\t\ttype: Boolean,\n\t\t\trequired: false\n\t\t},\n\t\tpositionStrategy: {\n\t\t\ttype: String,\n\t\t\trequired: false\n\t\t},\n\t\tupdatePositionStrategy: {\n\t\t\ttype: String,\n\t\t\trequired: false\n\t\t},\n\t\tdisableUpdateOnLayoutShift: {\n\t\t\ttype: Boolean,\n\t\t\trequired: false\n\t\t},\n\t\tprioritizePosition: {\n\t\t\ttype: Boolean,\n\t\t\trequired: false\n\t\t},\n\t\treference: {\n\t\t\ttype: null,\n\t\t\trequired: false\n\t\t},\n\t\tdir: {\n\t\t\ttype: String,\n\t\t\trequired: false\n\t\t},\n\t\tasChild: {\n\t\t\ttype: Boolean,\n\t\t\trequired: false\n\t\t},\n\t\tas: {\n\t\t\ttype: null,\n\t\t\trequired: false\n\t\t},\n\t\tdisableOutsidePointerEvents: {\n\t\t\ttype: Boolean,\n\t\t\trequired: false\n\t\t}\n\t},\n\temits: [\n\t\t\"escapeKeyDown\",\n\t\t\"pointerDownOutside\",\n\t\t\"focusOutside\",\n\t\t\"interactOutside\"\n\t],\n\tsetup(__props, { emit: __emit }) {\n\t\tconst props = __props;\n\t\tconst emits = __emit;\n\t\tconst { position } = toRefs(props);\n\t\tconst rootContext = injectComboboxRootContext();\n\t\tconst isEmpty = computed(() => rootContext.ignoreFilter.value ? rootContext.allItems.value.size === 0 : rootContext.filterState.value.count === 0);\n\t\tconst { forwardRef, currentElement } = useForwardExpose();\n\t\tuseBodyScrollLock(props.bodyLock);\n\t\tuseFocusGuards();\n\t\tuseHideOthers(rootContext.parentElement);\n\t\tconst pickedProps = computed(() => {\n\t\t\tif (props.position === \"popper\") return props;\n\t\t\telse return {};\n\t\t});\n\t\tconst forwardedProps = useForwardProps(pickedProps.value);\n\t\tconst popperStyle = {\n\t\t\t\"boxSizing\": \"border-box\",\n\t\t\t\"--reka-combobox-content-transform-origin\": \"var(--reka-popper-transform-origin)\",\n\t\t\t\"--reka-combobox-content-available-width\": \"var(--reka-popper-available-width)\",\n\t\t\t\"--reka-combobox-content-available-height\": \"var(--reka-popper-available-height)\",\n\t\t\t\"--reka-combobox-trigger-width\": \"var(--reka-popper-anchor-width)\",\n\t\t\t\"--reka-combobox-trigger-height\": \"var(--reka-popper-anchor-height)\"\n\t\t};\n\t\tprovideComboboxContentContext({ position });\n\t\tconst isInputWithinContent = ref(false);\n\t\tonMounted(() => {\n\t\t\tif (rootContext.inputElement.value) {\n\t\t\t\tisInputWithinContent.value = currentElement.value.contains(rootContext.inputElement.value);\n\t\t\t\tif (isInputWithinContent.value) rootContext.inputElement.value.focus();\n\t\t\t}\n\t\t});\n\t\tonUnmounted(() => {\n\t\t\tconst activeElement = getActiveElement();\n\t\t\tif (isInputWithinContent.value && (!activeElement || activeElement === document.body)) rootContext.triggerElement.value?.focus();\n\t\t});\n\t\tfunction isEventTargetWithinCombobox(target) {\n\t\t\tif (rootContext.parentElement.value?.contains(target)) return true;\n\t\t\tconst label = target instanceof Element ? target.closest(\"label\") : null;\n\t\t\tconst control = label?.control;\n\t\t\treturn !!control && !!rootContext.parentElement.value?.contains(control);\n\t\t}\n\t\treturn (_ctx, _cache) => {\n\t\t\treturn openBlock(), createBlock(unref(ListboxContent_default), { \"as-child\": \"\" }, {\n\t\t\t\tdefault: withCtx(() => [createVNode(unref(FocusScope_default), {\n\t\t\t\t\t\"as-child\": \"\",\n\t\t\t\t\tonMountAutoFocus: _cache[5] || (_cache[5] = withModifiers(() => {}, [\"prevent\"])),\n\t\t\t\t\tonUnmountAutoFocus: _cache[6] || (_cache[6] = withModifiers(() => {}, [\"prevent\"]))\n\t\t\t\t}, {\n\t\t\t\t\tdefault: withCtx(() => [createVNode(unref(DismissableLayer_default), {\n\t\t\t\t\t\t\"as-child\": \"\",\n\t\t\t\t\t\t\"disable-outside-pointer-events\": _ctx.disableOutsidePointerEvents,\n\t\t\t\t\t\tonDismiss: _cache[0] || (_cache[0] = ($event) => unref(rootContext).onOpenChange(false)),\n\t\t\t\t\t\tonFocusOutside: _cache[1] || (_cache[1] = (ev) => {\n\t\t\t\t\t\t\tif (isEventTargetWithinCombobox(ev.target)) ev.preventDefault();\n\t\t\t\t\t\t\temits(\"focusOutside\", ev);\n\t\t\t\t\t\t}),\n\t\t\t\t\t\tonInteractOutside: _cache[2] || (_cache[2] = ($event) => emits(\"interactOutside\", $event)),\n\t\t\t\t\t\tonEscapeKeyDown: _cache[3] || (_cache[3] = ($event) => emits(\"escapeKeyDown\", $event)),\n\t\t\t\t\t\tonPointerDownOutside: _cache[4] || (_cache[4] = (ev) => {\n\t\t\t\t\t\t\tif (isEventTargetWithinCombobox(ev.target)) ev.preventDefault();\n\t\t\t\t\t\t\temits(\"pointerDownOutside\", ev);\n\t\t\t\t\t\t})\n\t\t\t\t\t}, {\n\t\t\t\t\t\tdefault: withCtx(() => [(openBlock(), createBlock(resolveDynamicComponent(unref(position) === \"popper\" ? unref(PopperContent_default) : unref(Primitive)), mergeProps({\n\t\t\t\t\t\t\t..._ctx.$attrs,\n\t\t\t\t\t\t\t...unref(forwardedProps)\n\t\t\t\t\t\t}, {\n\t\t\t\t\t\t\tid: unref(rootContext).contentId,\n\t\t\t\t\t\t\tref: unref(forwardRef),\n\t\t\t\t\t\t\t\"memo-dependencies\": unref(position) === \"popper\" ? [unref(rootContext).filterSearch.value, unref(rootContext).filterState.value] : void 0,\n\t\t\t\t\t\t\t\"data-state\": unref(rootContext).open.value ? \"open\" : \"closed\",\n\t\t\t\t\t\t\t\"data-empty\": isEmpty.value ? \"\" : void 0,\n\t\t\t\t\t\t\tstyle: {\n\t\t\t\t\t\t\t\tdisplay: props.hideWhenEmpty && isEmpty.value ? \"none\" : \"flex\",\n\t\t\t\t\t\t\t\tflexDirection: \"column\",\n\t\t\t\t\t\t\t\toutline: \"none\",\n\t\t\t\t\t\t\t\t...unref(position) === \"popper\" ? popperStyle : {}\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}), {\n\t\t\t\t\t\t\tdefault: withCtx(() => [renderSlot(_ctx.$slots, \"default\")]),\n\t\t\t\t\t\t\t_: 3\n\t\t\t\t\t\t}, 16, [\n\t\t\t\t\t\t\t\"id\",\n\t\t\t\t\t\t\t\"memo-dependencies\",\n\t\t\t\t\t\t\t\"data-state\",\n\t\t\t\t\t\t\t\"data-empty\",\n\t\t\t\t\t\t\t\"style\"\n\t\t\t\t\t\t]))]),\n\t\t\t\t\t\t_: 3\n\t\t\t\t\t}, 8, [\"disable-outside-pointer-events\"])]),\n\t\t\t\t\t_: 3\n\t\t\t\t})]),\n\t\t\t\t_: 3\n\t\t\t});\n\t\t};\n\t}\n});\n\n//#endregion\n//#region src/Combobox/ComboboxContentImpl.vue\nvar ComboboxContentImpl_default = ComboboxContentImpl_vue_vue_type_script_setup_true_lang_default;\n\n//#endregion\nexport { ComboboxContentImpl_default, injectComboboxContentContext };\n//# sourceMappingURL=ComboboxContentImpl.js.map","import { useForwardExpose } from \"../shared/useForwardExpose.js\";\nimport { useForwardPropsEmits } from \"../shared/useForwardPropsEmits.js\";\nimport { useId } from \"../shared/useId.js\";\nimport { Presence_default } from \"../Presence/Presence.js\";\nimport { injectComboboxRootContext } from \"./ComboboxRoot.js\";\nimport { ComboboxContentImpl_default } from \"./ComboboxContentImpl.js\";\nimport { createBlock, createVNode, defineComponent, mergeProps, openBlock, renderSlot, unref, withCtx } from \"vue\";\n\n//#region src/Combobox/ComboboxContent.vue?vue&type=script&setup=true&lang.ts\nvar ComboboxContent_vue_vue_type_script_setup_true_lang_default = /* @__PURE__ */ defineComponent({\n\t__name: \"ComboboxContent\",\n\tprops: {\n\t\tforceMount: {\n\t\t\ttype: Boolean,\n\t\t\trequired: false\n\t\t},\n\t\tposition: {\n\t\t\ttype: String,\n\t\t\trequired: false\n\t\t},\n\t\tbodyLock: {\n\t\t\ttype: Boolean,\n\t\t\trequired: false\n\t\t},\n\t\thideWhenEmpty: {\n\t\t\ttype: Boolean,\n\t\t\trequired: false\n\t\t},\n\t\tmemoDependencies: {\n\t\t\ttype: Array,\n\t\t\trequired: false\n\t\t},\n\t\tside: {\n\t\t\ttype: null,\n\t\t\trequired: false\n\t\t},\n\t\tsideOffset: {\n\t\t\ttype: Number,\n\t\t\trequired: false\n\t\t},\n\t\tsideFlip: {\n\t\t\ttype: Boolean,\n\t\t\trequired: false\n\t\t},\n\t\talign: {\n\t\t\ttype: null,\n\t\t\trequired: false\n\t\t},\n\t\talignOffset: {\n\t\t\ttype: Number,\n\t\t\trequired: false\n\t\t},\n\t\talignFlip: {\n\t\t\ttype: Boolean,\n\t\t\trequired: false\n\t\t},\n\t\tavoidCollisions: {\n\t\t\ttype: Boolean,\n\t\t\trequired: false\n\t\t},\n\t\tcollisionBoundary: {\n\t\t\ttype: null,\n\t\t\trequired: false\n\t\t},\n\t\tcollisionPadding: {\n\t\t\ttype: [Number, Object],\n\t\t\trequired: false\n\t\t},\n\t\tarrowPadding: {\n\t\t\ttype: Number,\n\t\t\trequired: false\n\t\t},\n\t\thideShiftedArrow: {\n\t\t\ttype: Boolean,\n\t\t\trequired: false\n\t\t},\n\t\tsticky: {\n\t\t\ttype: String,\n\t\t\trequired: false\n\t\t},\n\t\thideWhenDetached: {\n\t\t\ttype: Boolean,\n\t\t\trequired: false\n\t\t},\n\t\tpositionStrategy: {\n\t\t\ttype: String,\n\t\t\trequired: false\n\t\t},\n\t\tupdatePositionStrategy: {\n\t\t\ttype: String,\n\t\t\trequired: false\n\t\t},\n\t\tdisableUpdateOnLayoutShift: {\n\t\t\ttype: Boolean,\n\t\t\trequired: false\n\t\t},\n\t\tprioritizePosition: {\n\t\t\ttype: Boolean,\n\t\t\trequired: false\n\t\t},\n\t\treference: {\n\t\t\ttype: null,\n\t\t\trequired: false\n\t\t},\n\t\tdir: {\n\t\t\ttype: String,\n\t\t\trequired: false\n\t\t},\n\t\tasChild: {\n\t\t\ttype: Boolean,\n\t\t\trequired: false\n\t\t},\n\t\tas: {\n\t\t\ttype: null,\n\t\t\trequired: false\n\t\t},\n\t\tdisableOutsidePointerEvents: {\n\t\t\ttype: Boolean,\n\t\t\trequired: false\n\t\t}\n\t},\n\temits: [\n\t\t\"escapeKeyDown\",\n\t\t\"pointerDownOutside\",\n\t\t\"focusOutside\",\n\t\t\"interactOutside\"\n\t],\n\tsetup(__props, { emit: __emit }) {\n\t\tconst props = __props;\n\t\tconst emits = __emit;\n\t\tconst forwarded = useForwardPropsEmits(props, emits);\n\t\tconst { forwardRef } = useForwardExpose();\n\t\tconst rootContext = injectComboboxRootContext();\n\t\trootContext.contentId ||= useId(void 0, \"reka-combobox-content\");\n\t\treturn (_ctx, _cache) => {\n\t\t\treturn openBlock(), createBlock(unref(Presence_default), { present: _ctx.forceMount || unref(rootContext).open.value }, {\n\t\t\t\tdefault: withCtx(() => [createVNode(ComboboxContentImpl_default, mergeProps({\n\t\t\t\t\t...unref(forwarded),\n\t\t\t\t\t..._ctx.$attrs\n\t\t\t\t}, { ref: unref(forwardRef) }), {\n\t\t\t\t\tdefault: withCtx(() => [renderSlot(_ctx.$slots, \"default\")]),\n\t\t\t\t\t_: 3\n\t\t\t\t}, 16)]),\n\t\t\t\t_: 3\n\t\t\t}, 8, [\"present\"]);\n\t\t};\n\t}\n});\n\n//#endregion\n//#region src/Combobox/ComboboxContent.vue\nvar ComboboxContent_default = ComboboxContent_vue_vue_type_script_setup_true_lang_default;\n\n//#endregion\nexport { ComboboxContent_default };\n//# sourceMappingURL=ComboboxContent.js.map","import { Primitive } from \"../Primitive/Primitive.js\";\nimport { injectComboboxRootContext } from \"./ComboboxRoot.js\";\nimport { computed, createBlock, createCommentVNode, createTextVNode, defineComponent, guardReactiveProps, mergeProps, normalizeProps, openBlock, renderSlot, unref, withCtx } from \"vue\";\n\n//#region src/Combobox/ComboboxEmpty.vue?vue&type=script&setup=true&lang.ts\nvar ComboboxEmpty_vue_vue_type_script_setup_true_lang_default = /* @__PURE__ */ defineComponent({\n\t__name: \"ComboboxEmpty\",\n\tprops: {\n\t\tasChild: {\n\t\t\ttype: Boolean,\n\t\t\trequired: false\n\t\t},\n\t\tas: {\n\t\t\ttype: null,\n\t\t\trequired: false\n\t\t}\n\t},\n\tsetup(__props) {\n\t\tconst props = __props;\n\t\tconst rootContext = injectComboboxRootContext();\n\t\tconst isRender = computed(() => rootContext.ignoreFilter.value ? rootContext.allItems.value.size === 0 : rootContext.filterState.value.count === 0);\n\t\treturn (_ctx, _cache) => {\n\t\t\treturn isRender.value ? (openBlock(), createBlock(unref(Primitive), normalizeProps(mergeProps({ key: 0 }, props)), {\n\t\t\t\tdefault: withCtx(() => [renderSlot(_ctx.$slots, \"default\", {}, () => [_cache[0] || (_cache[0] = createTextVNode(\"No options\"))])]),\n\t\t\t\t_: 3\n\t\t\t}, 16)) : createCommentVNode(\"v-if\", true);\n\t\t};\n\t}\n});\n\n//#endregion\n//#region src/Combobox/ComboboxEmpty.vue\nvar ComboboxEmpty_default = ComboboxEmpty_vue_vue_type_script_setup_true_lang_default;\n\n//#endregion\nexport { ComboboxEmpty_default };\n//# sourceMappingURL=ComboboxEmpty.js.map","import { createContext } from \"../shared/createContext.js\";\nimport { useId } from \"../shared/useId.js\";\nimport { ListboxGroup_default } from \"../Listbox/ListboxGroup.js\";\nimport { injectComboboxRootContext } from \"./ComboboxRoot.js\";\nimport { computed, createBlock, defineComponent, mergeProps, onMounted, onUnmounted, openBlock, renderSlot, unref, withCtx } from \"vue\";\n\n//#region src/Combobox/ComboboxGroup.vue?vue&type=script&setup=true&lang.ts\nconst [injectComboboxGroupContext, provideComboboxGroupContext] = /*#__PURE__*/ createContext(\"ComboboxGroup\");\nvar ComboboxGroup_vue_vue_type_script_setup_true_lang_default = /* @__PURE__ */ defineComponent({\n\t__name: \"ComboboxGroup\",\n\tprops: {\n\t\tasChild: {\n\t\t\ttype: Boolean,\n\t\t\trequired: false\n\t\t},\n\t\tas: {\n\t\t\ttype: null,\n\t\t\trequired: false\n\t\t}\n\t},\n\tsetup(__props) {\n\t\tconst props = __props;\n\t\tconst id = useId(void 0, \"reka-combobox-group\");\n\t\tconst rootContext = injectComboboxRootContext();\n\t\tconst isRender = computed(() => rootContext.ignoreFilter.value ? true : !rootContext.filterSearch.value ? true : rootContext.filterState.value.groups.has(id));\n\t\tconst context = provideComboboxGroupContext({\n\t\t\tid,\n\t\t\tlabelId: \"\"\n\t\t});\n\t\tonMounted(() => {\n\t\t\tif (!rootContext.allGroups.value.has(id)) rootContext.allGroups.value.set(id, /* @__PURE__ */ new Set());\n\t\t});\n\t\tonUnmounted(() => {\n\t\t\trootContext.allGroups.value.delete(id);\n\t\t});\n\t\treturn (_ctx, _cache) => {\n\t\t\treturn openBlock(), createBlock(unref(ListboxGroup_default), mergeProps({\n\t\t\t\tid: unref(id),\n\t\t\t\t\"aria-labelledby\": unref(context).labelId\n\t\t\t}, props, { hidden: isRender.value ? void 0 : true }), {\n\t\t\t\tdefault: withCtx(() => [renderSlot(_ctx.$slots, \"default\")]),\n\t\t\t\t_: 3\n\t\t\t}, 16, [\n\t\t\t\t\"id\",\n\t\t\t\t\"aria-labelledby\",\n\t\t\t\t\"hidden\"\n\t\t\t]);\n\t\t};\n\t}\n});\n\n//#endregion\n//#region src/Combobox/ComboboxGroup.vue\nvar ComboboxGroup_default = ComboboxGroup_vue_vue_type_script_setup_true_lang_default;\n\n//#endregion\nexport { ComboboxGroup_default, injectComboboxGroupContext };\n//# sourceMappingURL=ComboboxGroup.js.map","import { useComposing } from \"../shared/useComposing.js\";\nimport { usePrimitiveElement } from \"../Primitive/usePrimitiveElement.js\";\nimport { injectListboxRootContext } from \"../Listbox/ListboxRoot.js\";\nimport { ListboxFilter_default } from \"../Listbox/ListboxFilter.js\";\nimport { injectComboboxRootContext } from \"./ComboboxRoot.js\";\nimport { createBlock, defineComponent, isRef, nextTick, onMounted, openBlock, renderSlot, unref, watch, withCtx, withKeys } from \"vue\";\nimport { useVModel } from \"@vueuse/core\";\n\n//#region src/Combobox/ComboboxInput.vue?vue&type=script&setup=true&lang.ts\nvar ComboboxInput_vue_vue_type_script_setup_true_lang_default = /* @__PURE__ */ defineComponent({\n\t__name: \"ComboboxInput\",\n\tprops: {\n\t\tdisplayValue: {\n\t\t\ttype: Function,\n\t\t\trequired: false\n\t\t},\n\t\tmodelValue: {\n\t\t\ttype: String,\n\t\t\trequired: false\n\t\t},\n\t\tautoFocus: {\n\t\t\ttype: Boolean,\n\t\t\trequired: false\n\t\t},\n\t\tdisabled: {\n\t\t\ttype: Boolean,\n\t\t\trequired: false\n\t\t},\n\t\tasChild: {\n\t\t\ttype: Boolean,\n\t\t\trequired: false\n\t\t},\n\t\tas: {\n\t\t\ttype: null,\n\t\t\trequired: false,\n\t\t\tdefault: \"input\"\n\t\t}\n\t},\n\temits: [\"update:modelValue\"],\n\tsetup(__props, { emit: __emit }) {\n\t\tconst props = __props;\n\t\tconst emits = __emit;\n\t\tconst rootContext = injectComboboxRootContext();\n\t\tconst listboxContext = injectListboxRootContext();\n\t\tconst { primitiveElement, currentElement } = usePrimitiveElement();\n\t\tconst modelValue = useVModel(props, \"modelValue\", emits, { passive: props.modelValue === void 0 });\n\t\tonMounted(() => {\n\t\t\tif (currentElement.value) rootContext.onInputElementChange(currentElement.value);\n\t\t});\n\t\tconst { isComposing, shouldDeferInput, handleCompositionStart, handleCompositionUpdate, handleCompositionEnd } = useComposing((event) => {\n\t\t\tconst el = event.target;\n\t\t\tif (el) processInputValue(el.value);\n\t\t});\n\t\tfunction handleKeyDown(ev) {\n\t\t\tif (isComposing.value) return;\n\t\t\tev.preventDefault();\n\t\t\tif (!rootContext.open.value) rootContext.onOpenChange(true);\n\t\t}\n\t\tfunction processInputValue(value) {\n\t\t\tif (!rootContext.open.value) {\n\t\t\t\trootContext.onOpenChange(true);\n\t\t\t\tnextTick(() => {\n\t\t\t\t\tif (value) {\n\t\t\t\t\t\trootContext.filterSearch.value = value;\n\t\t\t\t\t\tlistboxContext.highlightFirstItem();\n\t\t\t\t\t}\n\t\t\t\t});\n\t\t\t} else rootContext.filterSearch.value = value;\n\t\t}\n\t\tfunction handleInput(event) {\n\t\t\tif (shouldDeferInput.value) return;\n\t\t\tprocessInputValue(event.target.value);\n\t\t}\n\t\tfunction handleFocus() {\n\t\t\tif (rootContext.openOnFocus.value && !rootContext.open.value) rootContext.onOpenChange(true);\n\t\t}\n\t\tfunction handleBlur(ev) {\n\t\t\tif (!rootContext.open.value) return;\n\t\t\tconst nextFocus = ev.relatedTarget;\n\t\t\tif (!nextFocus) return;\n\t\t\tconst isInsideRoot = rootContext.parentElement.value?.contains(nextFocus);\n\t\t\tconst isInsideContent = document.getElementById(rootContext.contentId)?.contains(nextFocus);\n\t\t\tif (!isInsideRoot && !isInsideContent) requestAnimationFrame(() => {\n\t\t\t\tif (!rootContext.open.value) return;\n\t\t\t\tconst active = document.activeElement;\n\t\t\t\tconst isStillOutside = !rootContext.parentElement.value?.contains(active) && !document.getElementById(rootContext.contentId)?.contains(active);\n\t\t\t\tif (isStillOutside) rootContext.onOpenChange(false);\n\t\t\t});\n\t\t}\n\t\tfunction handleClick() {\n\t\t\tif (rootContext.openOnClick.value && !rootContext.open.value) rootContext.onOpenChange(true);\n\t\t}\n\t\tfunction resetSearchTerm() {\n\t\t\tconst rootModelValue = rootContext.modelValue.value;\n\t\t\tif (props.displayValue) modelValue.value = props.displayValue(rootModelValue);\n\t\t\telse if (!rootContext.multiple.value && rootModelValue && !Array.isArray(rootModelValue)) if (typeof rootModelValue !== \"object\") modelValue.value = rootModelValue.toString();\n\t\t\telse modelValue.value = \"\";\n\t\t\telse modelValue.value = \"\";\n\t\t\tnextTick(() => {\n\t\t\t\tmodelValue.value = modelValue.value;\n\t\t\t});\n\t\t}\n\t\trootContext.onResetSearchTerm(() => {\n\t\t\tresetSearchTerm();\n\t\t});\n\t\twatch(rootContext.modelValue, async () => {\n\t\t\tif (!rootContext.isUserInputted.value && rootContext.resetSearchTermOnSelect.value) resetSearchTerm();\n\t\t}, {\n\t\t\timmediate: true,\n\t\t\tdeep: true\n\t\t});\n\t\twatch(rootContext.filterState, (_newValue, oldValue) => {\n\t\t\tif (!rootContext.isVirtual.value && oldValue.count === 0) listboxContext.highlightFirstItem();\n\t\t});\n\t\treturn (_ctx, _cache) => {\n\t\t\treturn openBlock(), createBlock(unref(ListboxFilter_default), {\n\t\t\t\tref_key: \"primitiveElement\",\n\t\t\t\tref: primitiveElement,\n\t\t\t\tmodelValue: unref(modelValue),\n\t\t\t\t\"onUpdate:modelValue\": _cache[0] || (_cache[0] = ($event) => isRef(modelValue) ? modelValue.value = $event : null),\n\t\t\t\tas: _ctx.as,\n\t\t\t\t\"as-child\": _ctx.asChild,\n\t\t\t\t\"auto-focus\": _ctx.autoFocus,\n\t\t\t\tdisabled: _ctx.disabled,\n\t\t\t\t\"aria-expanded\": unref(rootContext).open.value,\n\t\t\t\t\"aria-controls\": unref(rootContext).contentId,\n\t\t\t\t\"aria-autocomplete\": \"list\",\n\t\t\t\trole: \"combobox\",\n\t\t\t\tautocomplete: \"off\",\n\t\t\t\tonClick: handleClick,\n\t\t\t\tonInput: handleInput,\n\t\t\t\tonKeydown: withKeys(handleKeyDown, [\"down\", \"up\"]),\n\t\t\t\tonFocus: handleFocus,\n\t\t\t\tonBlur: handleBlur,\n\t\t\t\tonCompositionstart: unref(handleCompositionStart),\n\t\t\t\tonCompositionupdate: unref(handleCompositionUpdate),\n\t\t\t\tonCompositionend: unref(handleCompositionEnd)\n\t\t\t}, {\n\t\t\t\tdefault: withCtx(() => [renderSlot(_ctx.$slots, \"default\")]),\n\t\t\t\t_: 3\n\t\t\t}, 8, [\n\t\t\t\t\"modelValue\",\n\t\t\t\t\"as\",\n\t\t\t\t\"as-child\",\n\t\t\t\t\"auto-focus\",\n\t\t\t\t\"disabled\",\n\t\t\t\t\"aria-expanded\",\n\t\t\t\t\"aria-controls\",\n\t\t\t\t\"onCompositionstart\",\n\t\t\t\t\"onCompositionupdate\",\n\t\t\t\t\"onCompositionend\"\n\t\t\t]);\n\t\t};\n\t}\n});\n\n//#endregion\n//#region src/Combobox/ComboboxInput.vue\nvar ComboboxInput_default = ComboboxInput_vue_vue_type_script_setup_true_lang_default;\n\n//#endregion\nexport { ComboboxInput_default };\n//# sourceMappingURL=ComboboxInput.js.map","import { useId } from \"../shared/useId.js\";\nimport { usePrimitiveElement } from \"../Primitive/usePrimitiveElement.js\";\nimport { ListboxItem_default } from \"../Listbox/ListboxItem.js\";\nimport { injectComboboxRootContext } from \"./ComboboxRoot.js\";\nimport { injectComboboxGroupContext } from \"./ComboboxGroup.js\";\nimport { computed, createBlock, createCommentVNode, createTextVNode, defineComponent, mergeProps, onMounted, onUnmounted, openBlock, renderSlot, toDisplayString, unref, withCtx, withMemo } from \"vue\";\n\n//#region src/Combobox/ComboboxItem.vue?vue&type=script&setup=true&lang.ts\nvar ComboboxItem_vue_vue_type_script_setup_true_lang_default = /* @__PURE__ */ defineComponent({\n\t__name: \"ComboboxItem\",\n\tprops: {\n\t\ttextValue: {\n\t\t\ttype: String,\n\t\t\trequired: false\n\t\t},\n\t\tvalue: {\n\t\t\ttype: null,\n\t\t\trequired: true\n\t\t},\n\t\tdisabled: {\n\t\t\ttype: Boolean,\n\t\t\trequired: false\n\t\t},\n\t\tasChild: {\n\t\t\ttype: Boolean,\n\t\t\trequired: false\n\t\t},\n\t\tas: {\n\t\t\ttype: null,\n\t\t\trequired: false\n\t\t}\n\t},\n\temits: [\"select\"],\n\tsetup(__props, { emit: __emit }) {\n\t\tconst props = __props;\n\t\tconst emits = __emit;\n\t\tconst id = useId(void 0, \"reka-combobox-item\");\n\t\tconst rootContext = injectComboboxRootContext();\n\t\tconst groupContext = injectComboboxGroupContext(null);\n\t\tconst { primitiveElement, currentElement } = usePrimitiveElement();\n\t\tif (props.value === \"\") throw new Error(\"A <ComboboxItem /> must have a value prop that is not an empty string. This is because the Combobox value can be set to an empty string to clear the selection and show the placeholder.\");\n\t\tconst isRender = computed(() => {\n\t\t\tif (rootContext.isVirtual.value || rootContext.ignoreFilter.value || !rootContext.filterSearch.value) return true;\n\t\t\telse {\n\t\t\t\tconst filteredCurrentItem = rootContext.filterState.value.items.get(id);\n\t\t\t\tif (filteredCurrentItem === void 0) return true;\n\t\t\t\treturn filteredCurrentItem > 0;\n\t\t\t}\n\t\t});\n\t\tonMounted(() => {\n\t\t\trootContext.allItems.value.set(id, props.textValue || currentElement.value.textContent || currentElement.value.innerText);\n\t\t\tconst groupId = groupContext?.id;\n\t\t\tif (groupId) if (!rootContext.allGroups.value.has(groupId)) rootContext.allGroups.value.set(groupId, new Set([id]));\n\t\t\telse rootContext.allGroups.value.get(groupId)?.add(id);\n\t\t});\n\t\tonUnmounted(() => {\n\t\t\trootContext.allItems.value.delete(id);\n\t\t});\n\t\treturn (_ctx, _cache) => {\n\t\t\treturn isRender.value ? withMemo([\n\t\t\t\tisRender.value,\n\t\t\t\tunref(rootContext).filterSearch.value,\n\t\t\t\tunref(rootContext).disabled.value,\n\t\t\t\t_ctx.disabled,\n\t\t\t\tprops.value,\n\t\t\t\tprops.as,\n\t\t\t\tprops.asChild,\n\t\t\t\t...Object.values(_ctx.$attrs)\n\t\t\t], () => (openBlock(), createBlock(unref(ListboxItem_default), mergeProps({ key: 0 }, props, {\n\t\t\t\tid: unref(id),\n\t\t\t\tref_key: \"primitiveElement\",\n\t\t\t\tref: primitiveElement,\n\t\t\t\tdisabled: unref(rootContext).disabled.value || _ctx.disabled,\n\t\t\t\tonSelect: _cache[0] || (_cache[0] = (event) => {\n\t\t\t\t\temits(\"select\", event);\n\t\t\t\t\tif (event.defaultPrevented) return;\n\t\t\t\t\tif (!unref(rootContext).multiple.value && !_ctx.disabled && !unref(rootContext).disabled.value) {\n\t\t\t\t\t\tevent.preventDefault();\n\t\t\t\t\t\tunref(rootContext).onOpenChange(false);\n\t\t\t\t\t\tunref(rootContext).modelValue.value = props.value;\n\t\t\t\t\t} else if (unref(rootContext).multiple.value) unref(rootContext).inputElement.value?.focus();\n\t\t\t\t})\n\t\t\t}), {\n\t\t\t\tdefault: withCtx(() => [renderSlot(_ctx.$slots, \"default\", {}, () => [createTextVNode(toDisplayString(_ctx.value), 1)])]),\n\t\t\t\t_: 3\n\t\t\t}, 16, [\"id\", \"disabled\"])), _cache, 1) : createCommentVNode(\"v-if\", true);\n\t\t};\n\t}\n});\n\n//#endregion\n//#region src/Combobox/ComboboxItem.vue\nvar ComboboxItem_default = ComboboxItem_vue_vue_type_script_setup_true_lang_default;\n\n//#endregion\nexport { ComboboxItem_default };\n//# sourceMappingURL=ComboboxItem.js.map","import { ListboxItemIndicator_default } from \"../Listbox/ListboxItemIndicator.js\";\nimport { createBlock, defineComponent, guardReactiveProps, normalizeProps, openBlock, renderSlot, unref, withCtx } from \"vue\";\n\n//#region src/Combobox/ComboboxItemIndicator.vue?vue&type=script&setup=true&lang.ts\nvar ComboboxItemIndicator_vue_vue_type_script_setup_true_lang_default = /* @__PURE__ */ defineComponent({\n\t__name: \"ComboboxItemIndicator\",\n\tprops: {\n\t\tasChild: {\n\t\t\ttype: Boolean,\n\t\t\trequired: false\n\t\t},\n\t\tas: {\n\t\t\ttype: null,\n\t\t\trequired: false,\n\t\t\tdefault: \"span\"\n\t\t}\n\t},\n\tsetup(__props) {\n\t\tconst props = __props;\n\t\treturn (_ctx, _cache) => {\n\t\t\treturn openBlock(), createBlock(unref(ListboxItemIndicator_default), normalizeProps(guardReactiveProps(props)), {\n\t\t\t\tdefault: withCtx(() => [renderSlot(_ctx.$slots, \"default\")]),\n\t\t\t\t_: 3\n\t\t\t}, 16);\n\t\t};\n\t}\n});\n\n//#endregion\n//#region src/Combobox/ComboboxItemIndicator.vue\nvar ComboboxItemIndicator_default = ComboboxItemIndicator_vue_vue_type_script_setup_true_lang_default;\n\n//#endregion\nexport { ComboboxItemIndicator_default };\n//# sourceMappingURL=ComboboxItemIndicator.js.map","import { Teleport_default } from \"../Teleport/Teleport.js\";\nimport { createBlock, defineComponent, guardReactiveProps, normalizeProps, openBlock, renderSlot, unref, withCtx } from \"vue\";\n\n//#region src/Combobox/ComboboxPortal.vue?vue&type=script&setup=true&lang.ts\nvar ComboboxPortal_vue_vue_type_script_setup_true_lang_default = /* @__PURE__ */ defineComponent({\n\t__name: \"ComboboxPortal\",\n\tprops: {\n\t\tto: {\n\t\t\ttype: null,\n\t\t\trequired: false\n\t\t},\n\t\tdisabled: {\n\t\t\ttype: Boolean,\n\t\t\trequired: false\n\t\t},\n\t\tdefer: {\n\t\t\ttype: Boolean,\n\t\t\trequired: false\n\t\t},\n\t\tforceMount: {\n\t\t\ttype: Boolean,\n\t\t\trequired: false\n\t\t}\n\t},\n\tsetup(__props) {\n\t\tconst props = __props;\n\t\treturn (_ctx, _cache) => {\n\t\t\treturn openBlock(), createBlock(unref(Teleport_default), normalizeProps(guardReactiveProps(props)), {\n\t\t\t\tdefault: withCtx(() => [renderSlot(_ctx.$slots, \"default\")]),\n\t\t\t\t_: 3\n\t\t\t}, 16);\n\t\t};\n\t}\n});\n\n//#endregion\n//#region src/Combobox/ComboboxPortal.vue\nvar ComboboxPortal_default = ComboboxPortal_vue_vue_type_script_setup_true_lang_default;\n\n//#endregion\nexport { ComboboxPortal_default };\n//# sourceMappingURL=ComboboxPortal.js.map","import { useForwardExpose } from \"../shared/useForwardExpose.js\";\nimport { Primitive } from \"../Primitive/Primitive.js\";\nimport { injectComboboxRootContext } from \"./ComboboxRoot.js\";\nimport { computed, createBlock, defineComponent, mergeProps, onMounted, openBlock, renderSlot, unref, withCtx } from \"vue\";\n\n//#region src/Combobox/ComboboxTrigger.vue?vue&type=script&setup=true&lang.ts\nvar ComboboxTrigger_vue_vue_type_script_setup_true_lang_default = /* @__PURE__ */ defineComponent({\n\t__name: \"ComboboxTrigger\",\n\tprops: {\n\t\tdisabled: {\n\t\t\ttype: Boolean,\n\t\t\trequired: false\n\t\t},\n\t\tasChild: {\n\t\t\ttype: Boolean,\n\t\t\trequired: false\n\t\t},\n\t\tas: {\n\t\t\ttype: null,\n\t\t\trequired: false,\n\t\t\tdefault: \"button\"\n\t\t}\n\t},\n\tsetup(__props) {\n\t\tconst props = __props;\n\t\tconst { forwardRef, currentElement } = useForwardExpose();\n\t\tconst rootContext = injectComboboxRootContext();\n\t\tconst disabled = computed(() => props.disabled || rootContext.disabled.value || false);\n\t\tonMounted(() => {\n\t\t\tif (currentElement.value) rootContext.onTriggerElementChange(currentElement.value);\n\t\t});\n\t\treturn (_ctx, _cache) => {\n\t\t\treturn openBlock(), createBlock(unref(Primitive), mergeProps(props, {\n\t\t\t\tref: unref(forwardRef),\n\t\t\t\ttype: _ctx.as === \"button\" ? \"button\" : void 0,\n\t\t\t\ttabindex: \"-1\",\n\t\t\t\t\"aria-label\": \"Show popup\",\n\t\t\t\t\"aria-haspopup\": \"listbox\",\n\t\t\t\t\"aria-expanded\": unref(rootContext).open.value,\n\t\t\t\t\"aria-controls\": unref(rootContext).contentId,\n\t\t\t\t\"data-state\": unref(rootContext).open.value ? \"open\" : \"closed\",\n\t\t\t\tdisabled: disabled.value,\n\t\t\t\t\"data-disabled\": disabled.value ? \"\" : void 0,\n\t\t\t\t\"aria-disabled\": disabled.value ?? void 0,\n\t\t\t\tonClick: _cache[0] || (_cache[0] = ($event) => unref(rootContext).onOpenChange(!unref(rootContext).open.value))\n\t\t\t}), {\n\t\t\t\tdefault: withCtx(() => [renderSlot(_ctx.$slots, \"default\")]),\n\t\t\t\t_: 3\n\t\t\t}, 16, [\n\t\t\t\t\"type\",\n\t\t\t\t\"aria-expanded\",\n\t\t\t\t\"aria-controls\",\n\t\t\t\t\"data-state\",\n\t\t\t\t\"disabled\",\n\t\t\t\t\"data-disabled\",\n\t\t\t\t\"aria-disabled\"\n\t\t\t]);\n\t\t};\n\t}\n});\n\n//#endregion\n//#region src/Combobox/ComboboxTrigger.vue\nvar ComboboxTrigger_default = ComboboxTrigger_vue_vue_type_script_setup_true_lang_default;\n\n//#endregion\nexport { ComboboxTrigger_default };\n//# sourceMappingURL=ComboboxTrigger.js.map","import { injectConfigProviderContext } from \"../ConfigProvider/ConfigProvider.js\";\nimport { computed, ref } from \"vue\";\n\n//#region src/shared/useNonce.ts\nfunction useNonce(nonce) {\n\tconst context = injectConfigProviderContext({ nonce: ref() });\n\treturn computed(() => nonce?.value || context.nonce?.value);\n}\n\n//#endregion\nexport { useNonce };\n//# sourceMappingURL=useNonce.js.map","import { useForwardExpose } from \"../shared/useForwardExpose.js\";\nimport { Primitive } from \"../Primitive/Primitive.js\";\nimport { injectComboboxRootContext } from \"./ComboboxRoot.js\";\nimport { useNonce } from \"../shared/useNonce.js\";\nimport { Fragment, createElementBlock, createTextVNode, createVNode, defineComponent, mergeProps, openBlock, renderSlot, toRefs, unref, withCtx } from \"vue\";\n\n//#region src/Combobox/ComboboxViewport.vue?vue&type=script&setup=true&lang.ts\nvar ComboboxViewport_vue_vue_type_script_setup_true_lang_default = /* @__PURE__ */ defineComponent({\n\t__name: \"ComboboxViewport\",\n\tprops: {\n\t\tnonce: {\n\t\t\ttype: String,\n\t\t\trequired: false\n\t\t},\n\t\tasChild: {\n\t\t\ttype: Boolean,\n\t\t\trequired: false\n\t\t},\n\t\tas: {\n\t\t\ttype: null,\n\t\t\trequired: false\n\t\t}\n\t},\n\tsetup(__props) {\n\t\tconst props = __props;\n\t\tconst { forwardRef } = useForwardExpose();\n\t\tconst { nonce: propNonce } = toRefs(props);\n\t\tconst nonce = useNonce(propNonce);\n\t\tconst rootContext = injectComboboxRootContext();\n\t\treturn (_ctx, _cache) => {\n\t\t\treturn openBlock(), createElementBlock(Fragment, null, [createVNode(unref(Primitive), mergeProps({\n\t\t\t\t..._ctx.$attrs,\n\t\t\t\t...props\n\t\t\t}, {\n\t\t\t\tref: unref(forwardRef),\n\t\t\t\t\"data-reka-combobox-viewport\": \"\",\n\t\t\t\trole: \"presentation\",\n\t\t\t\tstyle: {\n\t\t\t\t\tposition: \"relative\",\n\t\t\t\t\tflex: unref(rootContext).isVirtual.value ? void 0 : 1,\n\t\t\t\t\toverflow: \"auto\"\n\t\t\t\t}\n\t\t\t}), {\n\t\t\t\tdefault: withCtx(() => [renderSlot(_ctx.$slots, \"default\")]),\n\t\t\t\t_: 3\n\t\t\t}, 16, [\"style\"]), createVNode(unref(Primitive), {\n\t\t\t\tas: \"style\",\n\t\t\t\tnonce: unref(nonce)\n\t\t\t}, {\n\t\t\t\tdefault: withCtx(() => _cache[0] || (_cache[0] = [createTextVNode(\" /* Hide scrollbars cross-browser and enable momentum scroll for touch devices */ [data-reka-combobox-viewport] { scrollbar-width:none; -ms-overflow-style: none; -webkit-overflow-scrolling: touch; } [data-reka-combobox-viewport]::-webkit-scrollbar { display: none; } \")])),\n\t\t\t\t_: 1,\n\t\t\t\t__: [0]\n\t\t\t}, 8, [\"nonce\"])], 64);\n\t\t};\n\t}\n});\n\n//#endregion\n//#region src/Combobox/ComboboxViewport.vue\nvar ComboboxViewport_default = ComboboxViewport_vue_vue_type_script_setup_true_lang_default;\n\n//#endregion\nexport { ComboboxViewport_default };\n//# sourceMappingURL=ComboboxViewport.js.map","<template>\n <ComboboxRoot\n v-model=\"modelValue\"\n v-model:open=\"isOpen\"\n :multiple=\"props.multiple\"\n :disabled=\"props.disabled\"\n :name=\"props.name\"\n :required=\"props.required\"\n :ignore-filter=\"props.multiple || !!props.filterFunction\"\n :reset-search-term-on-select=\"props.resetSearchTermOnSelect\"\n :reset-search-term-on-blur=\"props.resetSearchTermOnBlur\"\n :by=\"props.by\"\n :dir=\"props.dir\"\n :open-on-focus=\"props.openOnFocus\"\n class=\"b-autocomplete\"\n >\n <ComboboxAnchor as-child>\n <BInputGroup :size=\"props.size\">\n <!-- Selected values display (multiple mode only, hidden when empty) -->\n <div\n v-if=\"props.multiple && hasSelection\"\n class=\"b-autocomplete-selection\"\n :class=\"{\n 'b-autocomplete-selection-tags': props.tags,\n 'b-autocomplete-selection-pending-delete': pendingDelete,\n }\"\n >\n <slot\n v-if=\"props.tags\"\n name=\"tags\"\n :pending-delete\n :selected=\"selectedOptions\"\n :remove=\"removeSelected\"\n >\n <BFormTag\n v-for=\"(opt, i) in selectedOptions\"\n :key=\"optionKey(opt, i)\"\n :title=\"String(opt.text)\"\n :disabled=\"props.disabled\"\n :variant=\"'secondary'\"\n :class=\"{\n 'b-autocomplete-tag-muted': pendingDelete && !isLastSelectedOption(opt, i),\n 'b-autocomplete-tag-pending-delete': pendingDelete && isLastSelectedOption(opt, i),\n }\"\n @remove=\"removeSelected(opt)\"\n >\n {{ opt.text }}\n </BFormTag>\n </slot>\n <template v-else>\n <span\n v-for=\"(opt, i) in selectedOptions\"\n :key=\"optionKey(opt, i)\"\n :class=\"{\n 'text-body-tertiary': pendingDelete && !isLastSelectedOption(opt, i),\n }\"\n >{{ opt.text }}<span v-if=\"i < selectedOptions.length - 1\">, </span></span\n >\n </template>\n </div>\n\n <!-- Search input (always present) -->\n <div class=\"b-autocomplete-input-wrapper\">\n <ComboboxInput v-model=\"searchTerm\" as-child :display-value=\"displayValueFn\">\n <slot name=\"input\" v-bind=\"comboboxInputProps\" :search-term>\n <BFormInput\n ref=\"_input\"\n :model-value=\"searchTerm\"\n v-bind=\"comboboxInputProps\"\n :class=\"{'b-autocomplete-input-clearable': showClearButton}\"\n />\n </slot>\n </ComboboxInput>\n <BCloseButton\n v-if=\"showClearButton\"\n class=\"b-autocomplete-clear\"\n :aria-label=\"'Clear selected value'\"\n @click.stop=\"clearSelection\"\n />\n </div>\n\n <template #append>\n <ComboboxTrigger v-if=\"!props.noToggle\" as-child :disabled=\"props.disabled\">\n <slot name=\"toggle\" :is-open :disabled=\"props.disabled\">\n <BButton class=\"b-autocomplete-trigger\" :disabled=\"props.disabled\">\n <slot name=\"toggle-icon\" :is-open>\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"16\"\n height=\"16\"\n fill=\"currentColor\"\n viewBox=\"0 0 16 16\"\n class=\"b-autocomplete-chevron\"\n :class=\"{'b-autocomplete-chevron-open': isOpen}\"\n >\n <path\n fill-rule=\"evenodd\"\n d=\"M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z\"\n />\n </svg>\n </slot>\n </BButton>\n </slot>\n </ComboboxTrigger>\n </template>\n </BInputGroup>\n </ComboboxAnchor>\n\n <ComboboxPortal :disabled=\"!props.teleportTo\" :to=\"props.teleportTo\">\n <ComboboxContent\n position=\"popper\"\n :side-offset=\"4\"\n :align=\"'start'\"\n :class=\"['b-autocomplete-content', 'dropdown-menu', 'show']\"\n :body-lock=\"false\"\n :style=\"{width: 'var(--reka-combobox-trigger-width)'}\"\n >\n <ComboboxViewport class=\"b-autocomplete-viewport\">\n <ComboboxEmpty class=\"b-autocomplete-empty\">\n <slot name=\"empty\"> No results found </slot>\n </ComboboxEmpty>\n\n <ComboboxItem\n v-for=\"(option, index) in filteredOptions\"\n :key=\"optionKey(option, index)\"\n :value=\"option.value as AcceptableValue\"\n :disabled=\"option.disabled\"\n :class=\"['b-autocomplete-item', 'dropdown-item']\"\n @select=\"onOptionSelect(option)\"\n >\n <slot name=\"option\" v-bind=\"option\">\n {{ option.text }}\n </slot>\n <ComboboxItemIndicator class=\"b-autocomplete-item-indicator\">\n <slot name=\"option-indicator\">\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"16\"\n height=\"16\"\n fill=\"currentColor\"\n viewBox=\"0 0 16 16\"\n >\n <path\n d=\"M13.854 3.646a.5.5 0 0 1 0 .708l-7 7a.5.5 0 0 1-.708 0l-3.5-3.5a.5.5 0 1 1 .708-.708L6.5 10.293l6.646-6.647a.5.5 0 0 1 .708 0z\"\n />\n </svg>\n </slot>\n </ComboboxItemIndicator>\n </ComboboxItem>\n </ComboboxViewport>\n </ComboboxContent>\n </ComboboxPortal>\n </ComboboxRoot>\n</template>\n\n<script setup lang=\"ts\">\nimport {computed, type ComputedRef, nextTick, ref, useTemplateRef} from 'vue'\nimport type {AcceptableValue} from 'reka-ui'\nimport {\n ComboboxAnchor,\n ComboboxContent,\n ComboboxEmpty,\n ComboboxInput,\n ComboboxItem,\n ComboboxItemIndicator,\n ComboboxPortal,\n ComboboxRoot,\n ComboboxTrigger,\n ComboboxViewport,\n} from 'reka-ui'\nimport {useDefaults} from '../../composables/useDefaults'\nimport type {\n BAutocompleteEmits,\n BAutocompleteProps,\n BAutocompleteSlots,\n SelectOption,\n} from '../../types'\nimport {useId} from '../../composables/useId'\nimport BInputGroup from '../BInputGroup/BInputGroup.vue'\nimport BButton from '../BButton/BButton.vue'\nimport BFormInput from '../BFormInput/BFormInput.vue'\nimport BFormTag from '../BFormTags/BFormTag.vue'\nimport BCloseButton from '../BButton/BCloseButton.vue'\nimport {useFormSelect} from '../../composables/useFormSelect'\nimport {useAriaInvalid} from '../../composables/useAriaInvalid'\n\nconst _props = withDefaults(defineProps<Omit<BAutocompleteProps, 'modelValue' | 'search'>>(), {\n ariaInvalid: undefined,\n autocomplete: undefined,\n autofocus: false,\n disabled: false,\n form: undefined,\n formatter: undefined,\n id: undefined,\n lazyFormatter: false,\n placeholder: undefined,\n plaintext: false,\n readonly: false,\n required: false,\n size: undefined,\n state: undefined,\n by: undefined,\n dir: undefined,\n disabledField: 'disabled',\n filterFunction: undefined,\n multiple: false,\n name: undefined,\n noClearButton: false,\n noToggle: false,\n openOnFocus: false,\n options: () => [],\n resetSearchTermOnBlur: true,\n resetSearchTermOnSelect: true,\n tags: false,\n teleportTo: undefined,\n textField: 'text',\n valueField: 'value',\n})\nconst props = useDefaults(_props, 'BAutocomplete')\nconst emit = defineEmits<BAutocompleteEmits>()\ndefineSlots<BAutocompleteSlots>()\n\nconst _input = useTemplateRef('_input')\n\nconst modelValue = defineModel<BAutocompleteProps['modelValue']>({\n default: undefined,\n})\nconst isOpen = defineModel<Exclude<BAutocompleteProps['open'], undefined>>('open', {default: false})\nconst searchTerm = defineModel<Exclude<BAutocompleteProps['search'], undefined>>('search', {\n default: '',\n})\n\n// Backspace-to-delete state for multiple mode\nconst pendingDelete = ref(false)\n\nconst computedId = useId(() => props.id, 'autocomplete')\n\nconst {normalizedOptions} = useFormSelect(() => props.options, props) as {\n normalizedOptions: ComputedRef<SelectOption[]>\n}\n\nconst singleSelectedLabelCache = ref<{key: string; text: string} | null>(null)\n\nconst getLookupKey = (val: AcceptableValue): string | undefined => {\n if (props.by && typeof props.by === 'string' && val !== null && typeof val === 'object') {\n const byVal = (val as Record<string, unknown>)?.[props.by]\n return byVal === undefined ? undefined : `by:${String(byVal)}`\n }\n\n if (val !== null && val !== undefined && typeof val !== 'object') {\n return `value:${String(val)}`\n }\n\n return undefined\n}\n\nconst cacheSingleSelectedLabel = (val: AcceptableValue, text: string | undefined) => {\n const key = getLookupKey(val)\n if (!key) return\n singleSelectedLabelCache.value = {key, text: String(text ?? '')}\n}\n// Run this immediately\nif (\n !props.multiple &&\n modelValue.value !== null &&\n modelValue.value !== undefined &&\n searchTerm.value !== ''\n) {\n cacheSingleSelectedLabel(modelValue.value as AcceptableValue, searchTerm.value)\n}\n\nconst findOptionText = (val: AcceptableValue): string => {\n const match = normalizedOptions.value.find((opt) => {\n if (props.by && typeof props.by === 'string') {\n return (\n (opt.value as Record<string, unknown>)?.[props.by] ===\n (val as Record<string, unknown>)?.[props.by]\n )\n }\n return opt.value === val\n })\n if (match) {\n const resolvedText = String(match.text)\n cacheSingleSelectedLabel(val, resolvedText)\n return resolvedText\n }\n\n const lookupKey = getLookupKey(val)\n if (lookupKey && singleSelectedLabelCache.value?.key === lookupKey) {\n return singleSelectedLabelCache.value.text\n }\n\n return String(val)\n}\n\n// Filter options — for multiple mode, always uses searchTerm which is purely a search query\nconst filteredOptions = computed(() => {\n const filterText = searchTerm.value\n if (props.filterFunction) {\n return props.filterFunction(normalizedOptions.value, filterText)\n }\n if (!filterText) return normalizedOptions.value\n const term = filterText.toLowerCase()\n return normalizedOptions.value.filter((opt) => String(opt.text).toLowerCase().includes(term))\n})\n\n// Display value for single select mode (reka-ui calls this on selection)\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nconst displayValueFn = (val: any) => {\n if (val === null || val === undefined) return ''\n if (props.multiple) return '' // Multiple mode uses the separate display element\n return findOptionText(val)\n}\n\n// Whether there are selected values in multiple mode\nconst hasSelection = computed(() => {\n const currentValue = modelValue.value\n if (Array.isArray(currentValue)) return currentValue.length > 0\n return currentValue !== null && currentValue !== undefined\n})\n\nconst computedAriaInvalid = useAriaInvalid(\n () => props.ariaInvalid,\n () => props.state\n)\n\n// Resolved option objects for tags mode\nconst selectedOptions = computed<SelectOption[]>(() => {\n if (!props.multiple || !modelValue.value) return []\n const selected = Array.isArray(modelValue.value) ? modelValue.value : [modelValue.value]\n return selected\n .map((val) =>\n normalizedOptions.value.find((opt) => {\n if (props.by && typeof props.by === 'string') {\n return (\n (opt.value as Record<string, unknown>)?.[props.by] ===\n (val as Record<string, unknown>)?.[props.by]\n )\n }\n return opt.value === val\n })\n )\n .filter((opt): opt is SelectOption => !!opt)\n})\n\nconst removeSelected = (option: SelectOption) => {\n if (!Array.isArray(modelValue.value)) return\n modelValue.value = modelValue.value.filter((val) => {\n if (props.by && typeof props.by === 'string') {\n return (\n (val as Record<string, unknown>)?.[props.by] !==\n (option.value as Record<string, unknown>)?.[props.by]\n )\n }\n return val !== option.value\n })\n emit('change', modelValue.value)\n}\n\nconst optionKey = (option: SelectOption, index: number) => {\n const val = option.value\n if (val !== null && val !== undefined && typeof val !== 'object') return String(val)\n return index\n}\n\nconst isLastSelectedOption = (_opt: SelectOption, index: number): boolean =>\n index === selectedOptions.value.length - 1\n\nconst showClearButton = computed(\n () =>\n !props.required &&\n !props.noClearButton &&\n !props.disabled &&\n !props.readonly &&\n hasSelection.value\n)\n\nconst clearSelection = () => {\n modelValue.value = props.multiple ? [] : undefined\n searchTerm.value = ''\n singleSelectedLabelCache.value = null\n emit('clear')\n emit('change', modelValue.value)\n _input.value?.focus()\n}\n\nconst onOptionSelect = (option: SelectOption) => {\n cacheSingleSelectedLabel(option.value as AcceptableValue, String(option.text))\n // nextTick is required here because reka-ui updates the modelValue asynchronously\n // via its internal state management; in clearSelection and removeSelected we set\n // modelValue.value directly, so the value is already up-to-date before emitting.\n nextTick(() => {\n emit('change', modelValue.value)\n })\n _input.value?.focus()\n}\n\nconst resetPendingDelete = () => {\n pendingDelete.value = false\n}\nconst onInputKeydown = (event: KeyboardEvent) => {\n if (!props.multiple || !hasSelection.value) {\n resetPendingDelete()\n return\n }\n\n if (event.key === 'Backspace' && searchTerm.value === '') {\n if (pendingDelete.value) {\n // Second backspace — delete the last selected item\n const lastOpt = selectedOptions.value[selectedOptions.value.length - 1]\n if (lastOpt) {\n removeSelected(lastOpt)\n }\n pendingDelete.value = false\n } else {\n // First backspace — prime for deletion\n pendingDelete.value = true\n }\n return\n }\n\n // Any other key resets the pending delete state\n if (pendingDelete.value) {\n resetPendingDelete()\n }\n}\n\nconst comboboxInputProps = computed<\n Omit<Parameters<Exclude<BAutocompleteSlots['input'], undefined>>[0], 'searchTerm'>\n>(() => ({\n 'id': computedId.value,\n 'disabled': props.disabled,\n 'form': props.form || undefined,\n 'placeholder': props.placeholder,\n 'readonly': props.readonly || props.plaintext,\n 'required': props.required || undefined,\n 'autocomplete': props.autocomplete || undefined,\n 'plaintext': props.plaintext,\n 'size': props.size,\n 'state': props.state,\n 'aria-invalid': computedAriaInvalid.value,\n 'aria-required': props.required || undefined,\n 'onBlur': (event: FocusEvent) => emit('blur', event),\n 'onFocus': (event: FocusEvent) => emit('focus', event),\n 'onKeydown': (event: KeyboardEvent) => onInputKeydown(event),\n}))\n\ndefineExpose({\n blur: () => _input.value?.blur(),\n element: computed(() => _input.value?.element?.value ?? null),\n focus: () => _input.value?.focus(),\n})\n</script>\n","<template>\n <ComboboxRoot\n v-model=\"modelValue\"\n v-model:open=\"isOpen\"\n :multiple=\"props.multiple\"\n :disabled=\"props.disabled\"\n :name=\"props.name\"\n :required=\"props.required\"\n :ignore-filter=\"props.multiple || !!props.filterFunction\"\n :reset-search-term-on-select=\"props.resetSearchTermOnSelect\"\n :reset-search-term-on-blur=\"props.resetSearchTermOnBlur\"\n :by=\"props.by\"\n :dir=\"props.dir\"\n :open-on-focus=\"props.openOnFocus\"\n class=\"b-autocomplete\"\n >\n <ComboboxAnchor as-child>\n <BInputGroup :size=\"props.size\">\n <!-- Selected values display (multiple mode only, hidden when empty) -->\n <div\n v-if=\"props.multiple && hasSelection\"\n class=\"b-autocomplete-selection\"\n :class=\"{\n 'b-autocomplete-selection-tags': props.tags,\n 'b-autocomplete-selection-pending-delete': pendingDelete,\n }\"\n >\n <slot\n v-if=\"props.tags\"\n name=\"tags\"\n :pending-delete\n :selected=\"selectedOptions\"\n :remove=\"removeSelected\"\n >\n <BFormTag\n v-for=\"(opt, i) in selectedOptions\"\n :key=\"optionKey(opt, i)\"\n :title=\"String(opt.text)\"\n :disabled=\"props.disabled\"\n :variant=\"'secondary'\"\n :class=\"{\n 'b-autocomplete-tag-muted': pendingDelete && !isLastSelectedOption(opt, i),\n 'b-autocomplete-tag-pending-delete': pendingDelete && isLastSelectedOption(opt, i),\n }\"\n @remove=\"removeSelected(opt)\"\n >\n {{ opt.text }}\n </BFormTag>\n </slot>\n <template v-else>\n <span\n v-for=\"(opt, i) in selectedOptions\"\n :key=\"optionKey(opt, i)\"\n :class=\"{\n 'text-body-tertiary': pendingDelete && !isLastSelectedOption(opt, i),\n }\"\n >{{ opt.text }}<span v-if=\"i < selectedOptions.length - 1\">, </span></span\n >\n </template>\n </div>\n\n <!-- Search input (always present) -->\n <div class=\"b-autocomplete-input-wrapper\">\n <ComboboxInput v-model=\"searchTerm\" as-child :display-value=\"displayValueFn\">\n <slot name=\"input\" v-bind=\"comboboxInputProps\" :search-term>\n <BFormInput\n ref=\"_input\"\n :model-value=\"searchTerm\"\n v-bind=\"comboboxInputProps\"\n :class=\"{'b-autocomplete-input-clearable': showClearButton}\"\n />\n </slot>\n </ComboboxInput>\n <BCloseButton\n v-if=\"showClearButton\"\n class=\"b-autocomplete-clear\"\n :aria-label=\"'Clear selected value'\"\n @click.stop=\"clearSelection\"\n />\n </div>\n\n <template #append>\n <ComboboxTrigger v-if=\"!props.noToggle\" as-child :disabled=\"props.disabled\">\n <slot name=\"toggle\" :is-open :disabled=\"props.disabled\">\n <BButton class=\"b-autocomplete-trigger\" :disabled=\"props.disabled\">\n <slot name=\"toggle-icon\" :is-open>\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"16\"\n height=\"16\"\n fill=\"currentColor\"\n viewBox=\"0 0 16 16\"\n class=\"b-autocomplete-chevron\"\n :class=\"{'b-autocomplete-chevron-open': isOpen}\"\n >\n <path\n fill-rule=\"evenodd\"\n d=\"M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z\"\n />\n </svg>\n </slot>\n </BButton>\n </slot>\n </ComboboxTrigger>\n </template>\n </BInputGroup>\n </ComboboxAnchor>\n\n <ComboboxPortal :disabled=\"!props.teleportTo\" :to=\"props.teleportTo\">\n <ComboboxContent\n position=\"popper\"\n :side-offset=\"4\"\n :align=\"'start'\"\n :class=\"['b-autocomplete-content', 'dropdown-menu', 'show']\"\n :body-lock=\"false\"\n :style=\"{width: 'var(--reka-combobox-trigger-width)'}\"\n >\n <ComboboxViewport class=\"b-autocomplete-viewport\">\n <ComboboxEmpty class=\"b-autocomplete-empty\">\n <slot name=\"empty\"> No results found </slot>\n </ComboboxEmpty>\n\n <ComboboxItem\n v-for=\"(option, index) in filteredOptions\"\n :key=\"optionKey(option, index)\"\n :value=\"option.value as AcceptableValue\"\n :disabled=\"option.disabled\"\n :class=\"['b-autocomplete-item', 'dropdown-item']\"\n @select=\"onOptionSelect(option)\"\n >\n <slot name=\"option\" v-bind=\"option\">\n {{ option.text }}\n </slot>\n <ComboboxItemIndicator class=\"b-autocomplete-item-indicator\">\n <slot name=\"option-indicator\">\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"16\"\n height=\"16\"\n fill=\"currentColor\"\n viewBox=\"0 0 16 16\"\n >\n <path\n d=\"M13.854 3.646a.5.5 0 0 1 0 .708l-7 7a.5.5 0 0 1-.708 0l-3.5-3.5a.5.5 0 1 1 .708-.708L6.5 10.293l6.646-6.647a.5.5 0 0 1 .708 0z\"\n />\n </svg>\n </slot>\n </ComboboxItemIndicator>\n </ComboboxItem>\n </ComboboxViewport>\n </ComboboxContent>\n </ComboboxPortal>\n </ComboboxRoot>\n</template>\n\n<script setup lang=\"ts\">\nimport {computed, type ComputedRef, nextTick, ref, useTemplateRef} from 'vue'\nimport type {AcceptableValue} from 'reka-ui'\nimport {\n ComboboxAnchor,\n ComboboxContent,\n ComboboxEmpty,\n ComboboxInput,\n ComboboxItem,\n ComboboxItemIndicator,\n ComboboxPortal,\n ComboboxRoot,\n ComboboxTrigger,\n ComboboxViewport,\n} from 'reka-ui'\nimport {useDefaults} from '../../composables/useDefaults'\nimport type {\n BAutocompleteEmits,\n BAutocompleteProps,\n BAutocompleteSlots,\n SelectOption,\n} from '../../types'\nimport {useId} from '../../composables/useId'\nimport BInputGroup from '../BInputGroup/BInputGroup.vue'\nimport BButton from '../BButton/BButton.vue'\nimport BFormInput from '../BFormInput/BFormInput.vue'\nimport BFormTag from '../BFormTags/BFormTag.vue'\nimport BCloseButton from '../BButton/BCloseButton.vue'\nimport {useFormSelect} from '../../composables/useFormSelect'\nimport {useAriaInvalid} from '../../composables/useAriaInvalid'\n\nconst _props = withDefaults(defineProps<Omit<BAutocompleteProps, 'modelValue' | 'search'>>(), {\n ariaInvalid: undefined,\n autocomplete: undefined,\n autofocus: false,\n disabled: false,\n form: undefined,\n formatter: undefined,\n id: undefined,\n lazyFormatter: false,\n placeholder: undefined,\n plaintext: false,\n readonly: false,\n required: false,\n size: undefined,\n state: undefined,\n by: undefined,\n dir: undefined,\n disabledField: 'disabled',\n filterFunction: undefined,\n multiple: false,\n name: undefined,\n noClearButton: false,\n noToggle: false,\n openOnFocus: false,\n options: () => [],\n resetSearchTermOnBlur: true,\n resetSearchTermOnSelect: true,\n tags: false,\n teleportTo: undefined,\n textField: 'text',\n valueField: 'value',\n})\nconst props = useDefaults(_props, 'BAutocomplete')\nconst emit = defineEmits<BAutocompleteEmits>()\ndefineSlots<BAutocompleteSlots>()\n\nconst _input = useTemplateRef('_input')\n\nconst modelValue = defineModel<BAutocompleteProps['modelValue']>({\n default: undefined,\n})\nconst isOpen = defineModel<Exclude<BAutocompleteProps['open'], undefined>>('open', {default: false})\nconst searchTerm = defineModel<Exclude<BAutocompleteProps['search'], undefined>>('search', {\n default: '',\n})\n\n// Backspace-to-delete state for multiple mode\nconst pendingDelete = ref(false)\n\nconst computedId = useId(() => props.id, 'autocomplete')\n\nconst {normalizedOptions} = useFormSelect(() => props.options, props) as {\n normalizedOptions: ComputedRef<SelectOption[]>\n}\n\nconst singleSelectedLabelCache = ref<{key: string; text: string} | null>(null)\n\nconst getLookupKey = (val: AcceptableValue): string | undefined => {\n if (props.by && typeof props.by === 'string' && val !== null && typeof val === 'object') {\n const byVal = (val as Record<string, unknown>)?.[props.by]\n return byVal === undefined ? undefined : `by:${String(byVal)}`\n }\n\n if (val !== null && val !== undefined && typeof val !== 'object') {\n return `value:${String(val)}`\n }\n\n return undefined\n}\n\nconst cacheSingleSelectedLabel = (val: AcceptableValue, text: string | undefined) => {\n const key = getLookupKey(val)\n if (!key) return\n singleSelectedLabelCache.value = {key, text: String(text ?? '')}\n}\n// Run this immediately\nif (\n !props.multiple &&\n modelValue.value !== null &&\n modelValue.value !== undefined &&\n searchTerm.value !== ''\n) {\n cacheSingleSelectedLabel(modelValue.value as AcceptableValue, searchTerm.value)\n}\n\nconst findOptionText = (val: AcceptableValue): string => {\n const match = normalizedOptions.value.find((opt) => {\n if (props.by && typeof props.by === 'string') {\n return (\n (opt.value as Record<string, unknown>)?.[props.by] ===\n (val as Record<string, unknown>)?.[props.by]\n )\n }\n return opt.value === val\n })\n if (match) {\n const resolvedText = String(match.text)\n cacheSingleSelectedLabel(val, resolvedText)\n return resolvedText\n }\n\n const lookupKey = getLookupKey(val)\n if (lookupKey && singleSelectedLabelCache.value?.key === lookupKey) {\n return singleSelectedLabelCache.value.text\n }\n\n return String(val)\n}\n\n// Filter options — for multiple mode, always uses searchTerm which is purely a search query\nconst filteredOptions = computed(() => {\n const filterText = searchTerm.value\n if (props.filterFunction) {\n return props.filterFunction(normalizedOptions.value, filterText)\n }\n if (!filterText) return normalizedOptions.value\n const term = filterText.toLowerCase()\n return normalizedOptions.value.filter((opt) => String(opt.text).toLowerCase().includes(term))\n})\n\n// Display value for single select mode (reka-ui calls this on selection)\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nconst displayValueFn = (val: any) => {\n if (val === null || val === undefined) return ''\n if (props.multiple) return '' // Multiple mode uses the separate display element\n return findOptionText(val)\n}\n\n// Whether there are selected values in multiple mode\nconst hasSelection = computed(() => {\n const currentValue = modelValue.value\n if (Array.isArray(currentValue)) return currentValue.length > 0\n return currentValue !== null && currentValue !== undefined\n})\n\nconst computedAriaInvalid = useAriaInvalid(\n () => props.ariaInvalid,\n () => props.state\n)\n\n// Resolved option objects for tags mode\nconst selectedOptions = computed<SelectOption[]>(() => {\n if (!props.multiple || !modelValue.value) return []\n const selected = Array.isArray(modelValue.value) ? modelValue.value : [modelValue.value]\n return selected\n .map((val) =>\n normalizedOptions.value.find((opt) => {\n if (props.by && typeof props.by === 'string') {\n return (\n (opt.value as Record<string, unknown>)?.[props.by] ===\n (val as Record<string, unknown>)?.[props.by]\n )\n }\n return opt.value === val\n })\n )\n .filter((opt): opt is SelectOption => !!opt)\n})\n\nconst removeSelected = (option: SelectOption) => {\n if (!Array.isArray(modelValue.value)) return\n modelValue.value = modelValue.value.filter((val) => {\n if (props.by && typeof props.by === 'string') {\n return (\n (val as Record<string, unknown>)?.[props.by] !==\n (option.value as Record<string, unknown>)?.[props.by]\n )\n }\n return val !== option.value\n })\n emit('change', modelValue.value)\n}\n\nconst optionKey = (option: SelectOption, index: number) => {\n const val = option.value\n if (val !== null && val !== undefined && typeof val !== 'object') return String(val)\n return index\n}\n\nconst isLastSelectedOption = (_opt: SelectOption, index: number): boolean =>\n index === selectedOptions.value.length - 1\n\nconst showClearButton = computed(\n () =>\n !props.required &&\n !props.noClearButton &&\n !props.disabled &&\n !props.readonly &&\n hasSelection.value\n)\n\nconst clearSelection = () => {\n modelValue.value = props.multiple ? [] : undefined\n searchTerm.value = ''\n singleSelectedLabelCache.value = null\n emit('clear')\n emit('change', modelValue.value)\n _input.value?.focus()\n}\n\nconst onOptionSelect = (option: SelectOption) => {\n cacheSingleSelectedLabel(option.value as AcceptableValue, String(option.text))\n // nextTick is required here because reka-ui updates the modelValue asynchronously\n // via its internal state management; in clearSelection and removeSelected we set\n // modelValue.value directly, so the value is already up-to-date before emitting.\n nextTick(() => {\n emit('change', modelValue.value)\n })\n _input.value?.focus()\n}\n\nconst resetPendingDelete = () => {\n pendingDelete.value = false\n}\nconst onInputKeydown = (event: KeyboardEvent) => {\n if (!props.multiple || !hasSelection.value) {\n resetPendingDelete()\n return\n }\n\n if (event.key === 'Backspace' && searchTerm.value === '') {\n if (pendingDelete.value) {\n // Second backspace — delete the last selected item\n const lastOpt = selectedOptions.value[selectedOptions.value.length - 1]\n if (lastOpt) {\n removeSelected(lastOpt)\n }\n pendingDelete.value = false\n } else {\n // First backspace — prime for deletion\n pendingDelete.value = true\n }\n return\n }\n\n // Any other key resets the pending delete state\n if (pendingDelete.value) {\n resetPendingDelete()\n }\n}\n\nconst comboboxInputProps = computed<\n Omit<Parameters<Exclude<BAutocompleteSlots['input'], undefined>>[0], 'searchTerm'>\n>(() => ({\n 'id': computedId.value,\n 'disabled': props.disabled,\n 'form': props.form || undefined,\n 'placeholder': props.placeholder,\n 'readonly': props.readonly || props.plaintext,\n 'required': props.required || undefined,\n 'autocomplete': props.autocomplete || undefined,\n 'plaintext': props.plaintext,\n 'size': props.size,\n 'state': props.state,\n 'aria-invalid': computedAriaInvalid.value,\n 'aria-required': props.required || undefined,\n 'onBlur': (event: FocusEvent) => emit('blur', event),\n 'onFocus': (event: FocusEvent) => emit('focus', event),\n 'onKeydown': (event: KeyboardEvent) => onInputKeydown(event),\n}))\n\ndefineExpose({\n blur: () => _input.value?.blur(),\n element: computed(() => _input.value?.element?.value ?? null),\n focus: () => _input.value?.focus(),\n})\n</script>\n"],"x_google_ignoreList":[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"BAutocomplete-BFbbKtpz.js","names":["#t","emits","useId","props","emits","useId","useId"],"sources":["../../../node_modules/.pnpm/ohash@2.0.11/node_modules/ohash/dist/shared/ohash.D__AXeF1.mjs","../../../node_modules/.pnpm/reka-ui@2.10.3_vue@3.5.41_typescript@5.9.3_/node_modules/reka-ui/dist/shared/arrays.js","../../../node_modules/.pnpm/reka-ui@2.10.3_vue@3.5.41_typescript@5.9.3_/node_modules/reka-ui/dist/shared/useFilter.js","../../../node_modules/.pnpm/reka-ui@2.10.3_vue@3.5.41_typescript@5.9.3_/node_modules/reka-ui/dist/shared/useFormControl.js","../../../node_modules/.pnpm/reka-ui@2.10.3_vue@3.5.41_typescript@5.9.3_/node_modules/reka-ui/dist/shared/useTypeahead.js","../../../node_modules/.pnpm/reka-ui@2.10.3_vue@3.5.41_typescript@5.9.3_/node_modules/reka-ui/dist/Collection/Collection.js","../../../node_modules/.pnpm/reka-ui@2.10.3_vue@3.5.41_typescript@5.9.3_/node_modules/reka-ui/dist/Listbox/utils.js","../../../node_modules/.pnpm/reka-ui@2.10.3_vue@3.5.41_typescript@5.9.3_/node_modules/reka-ui/dist/RovingFocus/utils.js","../../../node_modules/.pnpm/reka-ui@2.10.3_vue@3.5.41_typescript@5.9.3_/node_modules/reka-ui/dist/Listbox/ListboxRoot.js","../../../node_modules/.pnpm/reka-ui@2.10.3_vue@3.5.41_typescript@5.9.3_/node_modules/reka-ui/dist/Listbox/ListboxContent.js","../../../node_modules/.pnpm/reka-ui@2.10.3_vue@3.5.41_typescript@5.9.3_/node_modules/reka-ui/dist/Listbox/ListboxFilter.js","../../../node_modules/.pnpm/reka-ui@2.10.3_vue@3.5.41_typescript@5.9.3_/node_modules/reka-ui/dist/Listbox/ListboxItem.js","../../../node_modules/.pnpm/reka-ui@2.10.3_vue@3.5.41_typescript@5.9.3_/node_modules/reka-ui/dist/Listbox/ListboxItemIndicator.js","../../../node_modules/.pnpm/reka-ui@2.10.3_vue@3.5.41_typescript@5.9.3_/node_modules/reka-ui/dist/Combobox/ComboboxRoot.js","../../../node_modules/.pnpm/reka-ui@2.10.3_vue@3.5.41_typescript@5.9.3_/node_modules/reka-ui/dist/Combobox/ComboboxAnchor.js","../../../node_modules/.pnpm/reka-ui@2.10.3_vue@3.5.41_typescript@5.9.3_/node_modules/reka-ui/dist/Combobox/ComboboxContentImpl.js","../../../node_modules/.pnpm/reka-ui@2.10.3_vue@3.5.41_typescript@5.9.3_/node_modules/reka-ui/dist/Combobox/ComboboxContent.js","../../../node_modules/.pnpm/reka-ui@2.10.3_vue@3.5.41_typescript@5.9.3_/node_modules/reka-ui/dist/Combobox/ComboboxEmpty.js","../../../node_modules/.pnpm/reka-ui@2.10.3_vue@3.5.41_typescript@5.9.3_/node_modules/reka-ui/dist/Combobox/ComboboxGroup.js","../../../node_modules/.pnpm/reka-ui@2.10.3_vue@3.5.41_typescript@5.9.3_/node_modules/reka-ui/dist/Combobox/ComboboxInput.js","../../../node_modules/.pnpm/reka-ui@2.10.3_vue@3.5.41_typescript@5.9.3_/node_modules/reka-ui/dist/Combobox/ComboboxItem.js","../../../node_modules/.pnpm/reka-ui@2.10.3_vue@3.5.41_typescript@5.9.3_/node_modules/reka-ui/dist/Combobox/ComboboxItemIndicator.js","../../../node_modules/.pnpm/reka-ui@2.10.3_vue@3.5.41_typescript@5.9.3_/node_modules/reka-ui/dist/Combobox/ComboboxPortal.js","../../../node_modules/.pnpm/reka-ui@2.10.3_vue@3.5.41_typescript@5.9.3_/node_modules/reka-ui/dist/Combobox/ComboboxTrigger.js","../../../node_modules/.pnpm/reka-ui@2.10.3_vue@3.5.41_typescript@5.9.3_/node_modules/reka-ui/dist/shared/useNonce.js","../../../node_modules/.pnpm/reka-ui@2.10.3_vue@3.5.41_typescript@5.9.3_/node_modules/reka-ui/dist/Combobox/ComboboxViewport.js","../src/components/BAutocomplete/BAutocomplete.vue","../src/components/BAutocomplete/BAutocomplete.vue"],"sourcesContent":["function serialize(o){return typeof o==\"string\"?`'${o}'`:new c().serialize(o)}const c=/*@__PURE__*/function(){class o{#t=new Map;compare(t,r){const e=typeof t,n=typeof r;return e===\"string\"&&n===\"string\"?t.localeCompare(r):e===\"number\"&&n===\"number\"?t-r:String.prototype.localeCompare.call(this.serialize(t,true),this.serialize(r,true))}serialize(t,r){if(t===null)return \"null\";switch(typeof t){case \"string\":return r?t:`'${t}'`;case \"bigint\":return `${t}n`;case \"object\":return this.$object(t);case \"function\":return this.$function(t)}return String(t)}serializeObject(t){const r=Object.prototype.toString.call(t);if(r!==\"[object Object]\")return this.serializeBuiltInType(r.length<10?`unknown:${r}`:r.slice(8,-1),t);const e=t.constructor,n=e===Object||e===void 0?\"\":e.name;if(n!==\"\"&&globalThis[n]===e)return this.serializeBuiltInType(n,t);if(typeof t.toJSON==\"function\"){const i=t.toJSON();return n+(i!==null&&typeof i==\"object\"?this.$object(i):`(${this.serialize(i)})`)}return this.serializeObjectEntries(n,Object.entries(t))}serializeBuiltInType(t,r){const e=this[\"$\"+t];if(e)return e.call(this,r);if(typeof r?.entries==\"function\")return this.serializeObjectEntries(t,r.entries());throw new Error(`Cannot serialize ${t}`)}serializeObjectEntries(t,r){const e=Array.from(r).sort((i,a)=>this.compare(i[0],a[0]));let n=`${t}{`;for(let i=0;i<e.length;i++){const[a,l]=e[i];n+=`${this.serialize(a,true)}:${this.serialize(l)}`,i<e.length-1&&(n+=\",\");}return n+\"}\"}$object(t){let r=this.#t.get(t);return r===void 0&&(this.#t.set(t,`#${this.#t.size}`),r=this.serializeObject(t),this.#t.set(t,r)),r}$function(t){const r=Function.prototype.toString.call(t);return r.slice(-15)===\"[native code] }\"?`${t.name||\"\"}()[native]`:`${t.name}(${t.length})${r.replace(/\\s*\\n\\s*/g,\"\")}`}$Array(t){let r=\"[\";for(let e=0;e<t.length;e++)r+=this.serialize(t[e]),e<t.length-1&&(r+=\",\");return r+\"]\"}$Date(t){try{return `Date(${t.toISOString()})`}catch{return \"Date(null)\"}}$ArrayBuffer(t){return `ArrayBuffer[${new Uint8Array(t).join(\",\")}]`}$Set(t){return `Set${this.$Array(Array.from(t).sort((r,e)=>this.compare(r,e)))}`}$Map(t){return this.serializeObjectEntries(\"Map\",t.entries())}}for(const s of [\"Error\",\"RegExp\",\"URL\"])o.prototype[\"$\"+s]=function(t){return `${s}(${t})`};for(const s of [\"Int8Array\",\"Uint8Array\",\"Uint8ClampedArray\",\"Int16Array\",\"Uint16Array\",\"Int32Array\",\"Uint32Array\",\"Float32Array\",\"Float64Array\"])o.prototype[\"$\"+s]=function(t){return `${s}[${t.join(\",\")}]`};for(const s of [\"BigInt64Array\",\"BigUint64Array\"])o.prototype[\"$\"+s]=function(t){return `${s}[${t.join(\"n,\")}${t.length>0?\"n\":\"\"}]`};return o}();\n\nfunction isEqual(object1, object2) {\n if (object1 === object2) {\n return true;\n }\n if (serialize(object1) === serialize(object2)) {\n return true;\n }\n return false;\n}\n\nexport { isEqual as i, serialize as s };\n","import { isEqual } from \"ohash\";\n\n//#region src/shared/arrays.ts\n/**\n* The function `areEqual` compares two arrays and returns true if they are equal in length and have\n* the same elements at corresponding indexes.\n* @param {any[]} arrayA - An array of any type of elements.\n* @param {any[]} arrayB - It looks like you haven't provided the value for `arrayB`. Could you please\n* provide the arrayB value so that I can assist you further?\n* @returns The function `areEqual` is returning a boolean value, either `true` if the two input arrays\n* `arrayA` and `arrayB` are equal, or `false` if they are not equal.\n*/\nfunction areEqual(arrayA, arrayB) {\n\tif (arrayA.length !== arrayB.length) return false;\n\tfor (let index = 0; index < arrayA.length; index++) if (arrayA[index] !== arrayB[index]) return false;\n\treturn true;\n}\n/**\n* Splits an array into chunks of a given size.\n* @param arr The array to split.\n* @param size The size of each chunk.\n* @returns An array of arrays, where each sub-array has `size` elements from the original array.\n* @example ```ts\n* const arr = [1, 2, 3, 4, 5, 6, 7, 8];\n* const chunks = chunk(arr, 3);\n* // chunks = [[1, 2, 3], [4, 5, 6], [7, 8]]\n* ```\n*/\nfunction chunk(arr, size) {\n\tconst result = [];\n\tfor (let i = 0; i < arr.length; i += size) result.push(arr.slice(i, i + size));\n\treturn result;\n}\n/**\n* The function `findValuesBetween` takes an array and two values, then returns a subarray containing\n* elements between the first occurrence of the start value and the first occurrence of the end value\n* in the array.\n* @param {T[]} array - The `array` parameter is an array of values of type `T`.\n* @param {T} start - The `start` parameter is the value that marks the beginning of the range you want\n* to find in the array.\n* @param {T} end - The `end` parameter in the `findValuesBetween` function represents the end value\n* that you want to find in the array. This function will return a subarray of values that are between\n* the `start` and `end` values in the original array.\n* @returns The `findValuesBetween` function returns an array of values from the input array that are\n* between the `start` and `end` values (inclusive). If either the `start` or `end` values are not\n* found in the input array, an empty array is returned.\n*/\nfunction findValuesBetween(array, start, end) {\n\tconst startIndex = array.findIndex((i) => isEqual(i, start));\n\tconst endIndex = array.findIndex((i) => isEqual(i, end));\n\tif (startIndex === -1 || endIndex === -1) return [];\n\tconst [minIndex, maxIndex] = [startIndex, endIndex].sort((a, b) => a - b);\n\treturn array.slice(minIndex, maxIndex + 1);\n}\n\n//#endregion\nexport { areEqual, chunk, findValuesBetween };\n//# sourceMappingURL=arrays.js.map","import { computed, unref } from \"vue\";\n\n//#region src/shared/useFilter.ts\n/**\n* Provides locale-aware string filtering functions.\n* Uses `Intl.Collator` for comparison to ensure proper Unicode handling.\n*\n* @param options - Optional collator options to customize comparison behavior.\n* See [Intl.CollatorOptions](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/Collator/Collator#options) for details.\n* @returns An object with methods to check if a string starts with, ends with, or contains a substring.\n*\n* @example\n* const { startsWith, endsWith, contains } = useFilter();\n*\n* startsWith('hello', 'he'); // true\n* endsWith('hello', 'lo'); // true\n* contains('hello', 'ell'); // true\n*/\nfunction useFilter(options) {\n\tconst computedOptions = computed(() => unref(options));\n\tconst collator = computed(() => new Intl.Collator(\"en\", {\n\t\tusage: \"search\",\n\t\t...computedOptions.value\n\t}));\n\tconst startsWith = (string, substring) => {\n\t\tif (substring.length === 0) return true;\n\t\tstring = string.normalize(\"NFC\");\n\t\tsubstring = substring.normalize(\"NFC\");\n\t\treturn collator.value.compare(string.slice(0, substring.length), substring) === 0;\n\t};\n\tconst endsWith = (string, substring) => {\n\t\tif (substring.length === 0) return true;\n\t\tstring = string.normalize(\"NFC\");\n\t\tsubstring = substring.normalize(\"NFC\");\n\t\treturn collator.value.compare(string.slice(-substring.length), substring) === 0;\n\t};\n\tconst contains = (string, substring) => {\n\t\tif (substring.length === 0) return true;\n\t\tstring = string.normalize(\"NFC\");\n\t\tsubstring = substring.normalize(\"NFC\");\n\t\tlet scan = 0;\n\t\tconst sliceLen = substring.length;\n\t\tfor (; scan + sliceLen <= string.length; scan++) {\n\t\t\tconst slice = string.slice(scan, scan + sliceLen);\n\t\t\tif (collator.value.compare(substring, slice) === 0) return true;\n\t\t}\n\t\treturn false;\n\t};\n\treturn {\n\t\tstartsWith,\n\t\tendsWith,\n\t\tcontains\n\t};\n}\n\n//#endregion\nexport { useFilter };\n//# sourceMappingURL=useFilter.js.map","import { computed, toValue } from \"vue\";\nimport { unrefElement } from \"@vueuse/core\";\n\n//#region src/shared/useFormControl.ts\nfunction useFormControl(el) {\n\treturn computed(() => toValue(el) ? Boolean(unrefElement(el)?.closest(\"form\")) : true);\n}\n\n//#endregion\nexport { useFormControl };\n//# sourceMappingURL=useFormControl.js.map","import { getActiveElement } from \"./getActiveElement.js\";\nimport { refAutoReset } from \"@vueuse/shared\";\n\n//#region src/shared/useTypeahead.ts\nfunction useTypeahead(callback) {\n\tconst search = refAutoReset(\"\", 1e3);\n\tconst handleTypeaheadSearch = (key, items) => {\n\t\tsearch.value = search.value + key;\n\t\tif (callback) callback(key);\n\t\telse {\n\t\t\tconst currentItem = getActiveElement();\n\t\t\tconst itemsWithTextValue = items.map((item) => ({\n\t\t\t\t...item,\n\t\t\t\ttextValue: item.value?.textValue ?? item.ref.textContent?.trim() ?? \"\"\n\t\t\t}));\n\t\t\tconst currentMatch = itemsWithTextValue.find((item) => item.ref === currentItem);\n\t\t\tconst values = itemsWithTextValue.map((item) => item.textValue);\n\t\t\tconst nextMatch = getNextMatch(values, search.value, currentMatch?.textValue);\n\t\t\tconst newItem = itemsWithTextValue.find((item) => item.textValue === nextMatch);\n\t\t\tif (newItem) newItem.ref.focus();\n\t\t\treturn newItem?.ref;\n\t\t}\n\t};\n\tconst resetTypeahead = () => {\n\t\tsearch.value = \"\";\n\t};\n\treturn {\n\t\tsearch,\n\t\thandleTypeaheadSearch,\n\t\tresetTypeahead\n\t};\n}\n/**\n* Wraps an array around itself at a given start index\n* Example: `wrapArray(['a', 'b', 'c', 'd'], 2) === ['c', 'd', 'a', 'b']`\n*/\nfunction wrapArray(array, startIndex) {\n\treturn array.map((_, index) => array[(startIndex + index) % array.length]);\n}\n/**\n* This is the \"meat\" of the typeahead matching logic. It takes in all the values,\n* the search and the current match, and returns the next match (or `undefined`).\n*\n* We normalize the search because if a user has repeatedly pressed a character,\n* we want the exact same behavior as if we only had that one character\n* (ie. cycle through options starting with that character)\n*\n* We also reorder the values by wrapping the array around the current match.\n* This is so we always look forward from the current match, and picking the first\n* match will always be the correct one.\n*\n* Finally, if the normalized search is exactly one character, we exclude the\n* current match from the values because otherwise it would be the first to match always\n* and focus would never move. This is as opposed to the regular case, where we\n* don't want focus to move if the current match still matches.\n*/\nfunction getNextMatch(values, search, currentMatch) {\n\tconst isRepeated = search.length > 1 && Array.from(search).every((char) => char === search[0]);\n\tconst normalizedSearch = isRepeated ? search[0] : search;\n\tconst currentMatchIndex = currentMatch ? values.indexOf(currentMatch) : -1;\n\tlet wrappedValues = wrapArray(values, Math.max(currentMatchIndex, 0));\n\tconst excludeCurrentMatch = normalizedSearch.length === 1;\n\tif (excludeCurrentMatch) wrappedValues = wrappedValues.filter((v) => v !== currentMatch);\n\tconst nextMatch = wrappedValues.find((value) => value.toLowerCase().startsWith(normalizedSearch.toLowerCase()));\n\treturn nextMatch !== currentMatch ? nextMatch : void 0;\n}\n\n//#endregion\nexport { getNextMatch, useTypeahead, wrapArray };\n//# sourceMappingURL=useTypeahead.js.map","import { Slot } from \"../Primitive/Slot.js\";\nimport { usePrimitiveElement } from \"../Primitive/usePrimitiveElement.js\";\nimport { computed, defineComponent, h, inject, markRaw, provide, ref, watch, watchEffect } from \"vue\";\n\n//#region src/Collection/Collection.ts\nconst ITEM_DATA_ATTR = \"data-reka-collection-item\";\nfunction useCollection(options = {}) {\n\tconst { key = \"\", isProvider = false } = options;\n\tconst injectionKey = `${key}CollectionProvider`;\n\tlet context;\n\tif (isProvider) {\n\t\tconst itemMap = ref(/* @__PURE__ */ new Map());\n\t\tconst collectionRef = ref();\n\t\tcontext = {\n\t\t\tcollectionRef,\n\t\t\titemMap\n\t\t};\n\t\tprovide(injectionKey, context);\n\t} else context = inject(injectionKey);\n\tconst getItems = (includeDisabledItem = false) => {\n\t\tconst collectionNode = context.collectionRef.value;\n\t\tif (!collectionNode) return [];\n\t\tconst orderedNodes = Array.from(collectionNode.querySelectorAll(`[${ITEM_DATA_ATTR}]`));\n\t\tconst orderMap = new Map(orderedNodes.map((node, index) => [node, index]));\n\t\tconst items = Array.from(context.itemMap.value.values());\n\t\tconst orderedItems = items.sort((a, b) => (orderMap.get(a.ref) ?? -1) - (orderMap.get(b.ref) ?? -1));\n\t\tif (includeDisabledItem) return orderedItems;\n\t\telse return orderedItems.filter((i) => i.ref.dataset.disabled !== \"\");\n\t};\n\tconst CollectionSlot = /*#__PURE__*/ defineComponent({\n\t\tname: \"CollectionSlot\",\n\t\tinheritAttrs: false,\n\t\tsetup(_, { slots, attrs }) {\n\t\t\tconst { primitiveElement, currentElement } = usePrimitiveElement();\n\t\t\twatch(currentElement, () => {\n\t\t\t\tcontext.collectionRef.value = currentElement.value;\n\t\t\t});\n\t\t\treturn () => h(Slot, {\n\t\t\t\tref: primitiveElement,\n\t\t\t\t...attrs\n\t\t\t}, slots);\n\t\t}\n\t});\n\tconst CollectionItem = /*#__PURE__*/ defineComponent({\n\t\tname: \"CollectionItem\",\n\t\tinheritAttrs: false,\n\t\tprops: { value: { validator: () => true } },\n\t\tsetup(props, { slots, attrs }) {\n\t\t\tconst { primitiveElement, currentElement } = usePrimitiveElement();\n\t\t\twatchEffect((cleanupFn) => {\n\t\t\t\tif (currentElement.value) {\n\t\t\t\t\tconst key$1 = markRaw(currentElement.value);\n\t\t\t\t\tcontext.itemMap.value.set(key$1, {\n\t\t\t\t\t\tref: currentElement.value,\n\t\t\t\t\t\tvalue: props.value\n\t\t\t\t\t});\n\t\t\t\t\tcleanupFn(() => context.itemMap.value.delete(key$1));\n\t\t\t\t}\n\t\t\t});\n\t\t\treturn () => h(Slot, {\n\t\t\t\t...attrs,\n\t\t\t\t[ITEM_DATA_ATTR]: \"\",\n\t\t\t\tref: primitiveElement\n\t\t\t}, slots);\n\t\t}\n\t});\n\tconst reactiveItems = computed(() => Array.from(context.itemMap.value.values()));\n\tconst itemMapSize = computed(() => context.itemMap.value.size);\n\treturn {\n\t\tgetItems,\n\t\treactiveItems,\n\t\titemMapSize,\n\t\tCollectionSlot,\n\t\tCollectionItem\n\t};\n}\n\n//#endregion\nexport { useCollection };\n//# sourceMappingURL=Collection.js.map","import { isEqual } from \"ohash\";\n\n//#region src/Listbox/utils.ts\nfunction queryCheckedElement(parentEl) {\n\treturn parentEl?.querySelector(\"[data-state=checked]\");\n}\nfunction valueComparator(value, currentValue, comparator) {\n\tif (value === void 0) return false;\n\telse if (Array.isArray(value)) return value.some((val) => compare(val, currentValue, comparator));\n\telse return compare(value, currentValue, comparator);\n}\nfunction compare(value, currentValue, comparator) {\n\tif (value === void 0 || currentValue === void 0) return false;\n\tif (typeof value === \"string\") return value === currentValue;\n\tif (typeof comparator === \"function\") return comparator(value, currentValue);\n\tif (typeof comparator === \"string\") return value?.[comparator] === currentValue?.[comparator];\n\treturn isEqual(value, currentValue);\n}\n\n//#endregion\nexport { compare, queryCheckedElement, valueComparator };\n//# sourceMappingURL=utils.js.map","import { getActiveElement } from \"../shared/getActiveElement.js\";\n\n//#region src/RovingFocus/utils.ts\nconst ENTRY_FOCUS = \"rovingFocusGroup.onEntryFocus\";\nconst EVENT_OPTIONS = {\n\tbubbles: false,\n\tcancelable: true\n};\nconst MAP_KEY_TO_FOCUS_INTENT = {\n\tArrowLeft: \"prev\",\n\tArrowUp: \"prev\",\n\tArrowRight: \"next\",\n\tArrowDown: \"next\",\n\tPageUp: \"first\",\n\tHome: \"first\",\n\tPageDown: \"last\",\n\tEnd: \"last\"\n};\nfunction getDirectionAwareKey(key, dir) {\n\tif (dir !== \"rtl\") return key;\n\treturn key === \"ArrowLeft\" ? \"ArrowRight\" : key === \"ArrowRight\" ? \"ArrowLeft\" : key;\n}\nfunction getFocusIntent(event, orientation, dir) {\n\tconst key = getDirectionAwareKey(event.key, dir);\n\tif (orientation === \"vertical\" && [\"ArrowLeft\", \"ArrowRight\"].includes(key)) return void 0;\n\tif (orientation === \"horizontal\" && [\"ArrowUp\", \"ArrowDown\"].includes(key)) return void 0;\n\treturn MAP_KEY_TO_FOCUS_INTENT[key];\n}\nfunction focusFirst(candidates, preventScroll = false) {\n\tconst PREVIOUSLY_FOCUSED_ELEMENT = getActiveElement();\n\tfor (const candidate of candidates) {\n\t\tif (candidate === PREVIOUSLY_FOCUSED_ELEMENT) return;\n\t\tcandidate.focus({ preventScroll });\n\t\tif (getActiveElement() !== PREVIOUSLY_FOCUSED_ELEMENT) return;\n\t}\n}\n/**\n* Wraps an array around itself at a given start index\n* Example: `wrapArray(['a', 'b', 'c', 'd'], 2) === ['c', 'd', 'a', 'b']`\n*/\nfunction wrapArray(array, startIndex) {\n\treturn array.map((_, index) => array[(startIndex + index) % array.length]);\n}\n\n//#endregion\nexport { ENTRY_FOCUS, EVENT_OPTIONS, MAP_KEY_TO_FOCUS_INTENT, focusFirst, getFocusIntent, wrapArray };\n//# sourceMappingURL=utils.js.map","import { findValuesBetween } from \"../shared/arrays.js\";\nimport { createContext } from \"../shared/createContext.js\";\nimport { useDirection } from \"../shared/useDirection.js\";\nimport { useFormControl } from \"../shared/useFormControl.js\";\nimport { useKbd } from \"../shared/useKbd.js\";\nimport { useTypeahead } from \"../shared/useTypeahead.js\";\nimport { Primitive } from \"../Primitive/Primitive.js\";\nimport { usePrimitiveElement } from \"../Primitive/usePrimitiveElement.js\";\nimport { useCollection } from \"../Collection/Collection.js\";\nimport { VisuallyHiddenInput_default } from \"../VisuallyHidden/VisuallyHiddenInput.js\";\nimport { compare } from \"./utils.js\";\nimport { getFocusIntent } from \"../RovingFocus/utils.js\";\nimport { createBlock, createCommentVNode, defineComponent, nextTick, openBlock, ref, renderSlot, toRefs, unref, watch, withCtx } from \"vue\";\nimport { createEventHook, useVModel } from \"@vueuse/core\";\nimport { isClient } from \"@vueuse/shared\";\n\n//#region src/Listbox/ListboxRoot.vue?vue&type=script&setup=true&lang.ts\nconst [injectListboxRootContext, provideListboxRootContext] = /*#__PURE__*/ createContext(\"ListboxRoot\");\nvar ListboxRoot_vue_vue_type_script_setup_true_lang_default = /* @__PURE__ */ defineComponent({\n\t__name: \"ListboxRoot\",\n\tprops: {\n\t\tmodelValue: {\n\t\t\ttype: null,\n\t\t\trequired: false\n\t\t},\n\t\tdefaultValue: {\n\t\t\ttype: null,\n\t\t\trequired: false\n\t\t},\n\t\tmultiple: {\n\t\t\ttype: Boolean,\n\t\t\trequired: false\n\t\t},\n\t\torientation: {\n\t\t\ttype: String,\n\t\t\trequired: false,\n\t\t\tdefault: \"vertical\"\n\t\t},\n\t\tdir: {\n\t\t\ttype: String,\n\t\t\trequired: false\n\t\t},\n\t\tdisabled: {\n\t\t\ttype: Boolean,\n\t\t\trequired: false\n\t\t},\n\t\tselectionBehavior: {\n\t\t\ttype: String,\n\t\t\trequired: false,\n\t\t\tdefault: \"toggle\"\n\t\t},\n\t\thighlightOnHover: {\n\t\t\ttype: Boolean,\n\t\t\trequired: false\n\t\t},\n\t\tby: {\n\t\t\ttype: [String, Function],\n\t\t\trequired: false\n\t\t},\n\t\tasChild: {\n\t\t\ttype: Boolean,\n\t\t\trequired: false\n\t\t},\n\t\tas: {\n\t\t\ttype: null,\n\t\t\trequired: false\n\t\t},\n\t\tname: {\n\t\t\ttype: String,\n\t\t\trequired: false\n\t\t},\n\t\trequired: {\n\t\t\ttype: Boolean,\n\t\t\trequired: false\n\t\t}\n\t},\n\temits: [\n\t\t\"update:modelValue\",\n\t\t\"highlight\",\n\t\t\"entryFocus\",\n\t\t\"leave\"\n\t],\n\tsetup(__props, { expose: __expose, emit: __emit }) {\n\t\tconst props = __props;\n\t\tconst emits = __emit;\n\t\tconst { multiple, highlightOnHover, orientation, disabled, selectionBehavior, dir: propDir } = toRefs(props);\n\t\tconst { getItems } = useCollection({ isProvider: true });\n\t\tconst { handleTypeaheadSearch } = useTypeahead();\n\t\tconst { primitiveElement, currentElement } = usePrimitiveElement();\n\t\tconst kbd = useKbd();\n\t\tconst dir = useDirection(propDir);\n\t\tconst isFormControl = useFormControl(currentElement);\n\t\tconst firstValue = ref();\n\t\tconst isUserAction = ref(false);\n\t\tconst focusable = ref(true);\n\t\tconst modelValue = useVModel(props, \"modelValue\", emits, {\n\t\t\tdefaultValue: props.defaultValue ?? (multiple.value ? [] : void 0),\n\t\t\tpassive: props.modelValue === void 0,\n\t\t\tdeep: true\n\t\t});\n\t\tfunction onValueChange(val) {\n\t\t\tisUserAction.value = true;\n\t\t\tif (props.multiple) {\n\t\t\t\tconst modelArray = Array.isArray(modelValue.value) ? [...modelValue.value] : [];\n\t\t\t\tconst index = modelArray.findIndex((i) => compare(i, val, props.by));\n\t\t\t\tif (props.selectionBehavior === \"toggle\") {\n\t\t\t\t\tindex === -1 ? modelArray.push(val) : modelArray.splice(index, 1);\n\t\t\t\t\tmodelValue.value = modelArray;\n\t\t\t\t} else {\n\t\t\t\t\tmodelValue.value = [val];\n\t\t\t\t\tfirstValue.value = val;\n\t\t\t\t}\n\t\t\t} else if (props.selectionBehavior === \"toggle\") if (compare(modelValue.value, val, props.by)) modelValue.value = void 0;\n\t\t\telse modelValue.value = val;\n\t\t\telse modelValue.value = val;\n\t\t\tsetTimeout(() => {\n\t\t\t\tisUserAction.value = false;\n\t\t\t}, 1);\n\t\t}\n\t\tconst highlightedElement = ref(null);\n\t\tconst previousElement = ref(null);\n\t\tconst isVirtual = ref(false);\n\t\tconst isComposing = ref(false);\n\t\tconst virtualFocusHook = createEventHook();\n\t\tconst virtualKeydownHook = createEventHook();\n\t\tconst virtualHighlightHook = createEventHook();\n\t\tfunction getCollectionItem() {\n\t\t\treturn getItems().map((i) => i.ref).filter((i) => i.dataset.disabled !== \"\");\n\t\t}\n\t\tfunction changeHighlight(el, scrollIntoView = true, focus) {\n\t\t\tif (!el) return;\n\t\t\thighlightedElement.value = el;\n\t\t\tif (focus ?? focusable.value) highlightedElement.value.focus();\n\t\t\tif (scrollIntoView) highlightedElement.value.scrollIntoView({ block: \"nearest\" });\n\t\t\tconst highlightedItem = getItems().find((i) => i.ref === el);\n\t\t\temits(\"highlight\", highlightedItem);\n\t\t}\n\t\tfunction highlightItem(value) {\n\t\t\tif (isVirtual.value) virtualHighlightHook.trigger(value);\n\t\t\telse {\n\t\t\t\tconst item = getItems().find((i) => compare(i.value, value, props.by));\n\t\t\t\tif (item) {\n\t\t\t\t\thighlightedElement.value = item.ref;\n\t\t\t\t\tchangeHighlight(item.ref);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\tfunction onKeydownEnter(event) {\n\t\t\tif (highlightedElement.value && highlightedElement.value.isConnected) {\n\t\t\t\tif (event.ctrlKey || event.metaKey || event.altKey) return;\n\t\t\t\tevent.preventDefault();\n\t\t\t\tevent.stopPropagation();\n\t\t\t\tif (!isComposing.value) highlightedElement.value.click();\n\t\t\t}\n\t\t}\n\t\tfunction onKeydownTypeAhead(event) {\n\t\t\tif (!focusable.value) return;\n\t\t\tisUserAction.value = true;\n\t\t\tif (isVirtual.value) virtualKeydownHook.trigger(event);\n\t\t\telse {\n\t\t\t\tconst isMetaKey = event.altKey || event.ctrlKey || event.metaKey;\n\t\t\t\tif (isMetaKey && event.key === \"a\" && multiple.value) {\n\t\t\t\t\tconst collection = getItems();\n\t\t\t\t\tconst values = collection.map((i) => i.value);\n\t\t\t\t\tmodelValue.value = [...values];\n\t\t\t\t\tevent.preventDefault();\n\t\t\t\t\tconst lastItem = collection.at(-1);\n\t\t\t\t\tif (lastItem) changeHighlight(lastItem.ref);\n\t\t\t\t} else if (!isMetaKey) {\n\t\t\t\t\tconst el = handleTypeaheadSearch(event.key, getItems());\n\t\t\t\t\tif (el) changeHighlight(el);\n\t\t\t\t}\n\t\t\t}\n\t\t\tsetTimeout(() => {\n\t\t\t\tisUserAction.value = false;\n\t\t\t}, 1);\n\t\t}\n\t\tfunction onCompositionStart() {\n\t\t\tisComposing.value = true;\n\t\t}\n\t\tfunction onCompositionEnd() {\n\t\t\tnextTick(() => {\n\t\t\t\tisComposing.value = false;\n\t\t\t});\n\t\t}\n\t\tfunction highlightFirstItem() {\n\t\t\tnextTick(() => {\n\t\t\t\tconst event = new KeyboardEvent(\"keydown\", { key: \"PageUp\" });\n\t\t\t\tonKeydownNavigation(event);\n\t\t\t});\n\t\t}\n\t\tfunction onLeave(event) {\n\t\t\tconst el = highlightedElement.value;\n\t\t\tif (el?.isConnected) previousElement.value = el;\n\t\t\thighlightedElement.value = null;\n\t\t\temits(\"leave\", event);\n\t\t}\n\t\tfunction onEnter(event) {\n\t\t\tconst entryFocusEvent = new CustomEvent(\"listbox.entryFocus\", {\n\t\t\t\tbubbles: false,\n\t\t\t\tcancelable: true\n\t\t\t});\n\t\t\tevent.currentTarget?.dispatchEvent(entryFocusEvent);\n\t\t\temits(\"entryFocus\", entryFocusEvent);\n\t\t\tif (entryFocusEvent.defaultPrevented) return;\n\t\t\tif (previousElement.value) changeHighlight(previousElement.value);\n\t\t\telse {\n\t\t\t\tconst el = getCollectionItem()?.[0];\n\t\t\t\tchangeHighlight(el);\n\t\t\t}\n\t\t}\n\t\tfunction onKeydownNavigation(event) {\n\t\t\tconst intent = getFocusIntent(event, orientation.value, dir.value);\n\t\t\tif (!intent) return;\n\t\t\tlet collection = getCollectionItem();\n\t\t\tif (highlightedElement.value) {\n\t\t\t\tif (intent === \"last\") collection.reverse();\n\t\t\t\telse if (intent === \"prev\" || intent === \"next\") {\n\t\t\t\t\tif (intent === \"prev\") collection.reverse();\n\t\t\t\t\tconst currentIndex = collection.indexOf(highlightedElement.value);\n\t\t\t\t\tcollection = collection.slice(currentIndex + 1);\n\t\t\t\t}\n\t\t\t\thandleMultipleReplace(event, collection[0]);\n\t\t\t}\n\t\t\tif (collection.length) {\n\t\t\t\tconst index = !highlightedElement.value && intent === \"prev\" ? collection.length - 1 : 0;\n\t\t\t\tchangeHighlight(collection[index]);\n\t\t\t}\n\t\t\tif (isVirtual.value) return virtualKeydownHook.trigger(event);\n\t\t}\n\t\tfunction handleMultipleReplace(event, targetEl) {\n\t\t\tif (isVirtual.value || props.selectionBehavior !== \"replace\" || !multiple.value || !Array.isArray(modelValue.value)) return;\n\t\t\tconst isMetaKey = event.altKey || event.ctrlKey || event.metaKey;\n\t\t\tif (isMetaKey && !event.shiftKey) return;\n\t\t\tif (event.shiftKey) {\n\t\t\t\tconst collection = getItems().filter((i) => i.ref.dataset.disabled !== \"\");\n\t\t\t\tlet lastValue = collection.find((i) => i.ref === targetEl)?.value;\n\t\t\t\tif (event.key === kbd.END) lastValue = collection.at(-1)?.value;\n\t\t\t\telse if (event.key === kbd.HOME) lastValue = collection[0]?.value;\n\t\t\t\tif (!lastValue || !firstValue.value) return;\n\t\t\t\tconst values = findValuesBetween(collection.map((i) => i.value), firstValue.value, lastValue);\n\t\t\t\tmodelValue.value = values;\n\t\t\t}\n\t\t}\n\t\tasync function highlightSelected(event, scroll = true) {\n\t\t\tif (!isClient) return;\n\t\t\tawait nextTick();\n\t\t\tif (isVirtual.value) virtualFocusHook.trigger({\n\t\t\t\tevent,\n\t\t\t\tscroll\n\t\t\t});\n\t\t\telse {\n\t\t\t\tconst collection = getCollectionItem();\n\t\t\t\tconst item = collection.find((i) => i.dataset.state === \"checked\");\n\t\t\t\tconst focus = scroll ? void 0 : false;\n\t\t\t\tif (item) changeHighlight(item, scroll, focus);\n\t\t\t\telse if (collection.length) changeHighlight(collection[0], scroll, focus);\n\t\t\t}\n\t\t}\n\t\tlet hasHighlightedOnMount = false;\n\t\twatch(modelValue, () => {\n\t\t\tif (!isUserAction.value) {\n\t\t\t\tconst scroll = hasHighlightedOnMount;\n\t\t\t\thasHighlightedOnMount = true;\n\t\t\t\tnextTick(() => {\n\t\t\t\t\thighlightSelected(void 0, scroll);\n\t\t\t\t});\n\t\t\t}\n\t\t}, {\n\t\t\timmediate: true,\n\t\t\tdeep: true\n\t\t});\n\t\t__expose({\n\t\t\thighlightedElement,\n\t\t\thighlightItem,\n\t\t\thighlightFirstItem,\n\t\t\thighlightSelected,\n\t\t\tgetItems\n\t\t});\n\t\tprovideListboxRootContext({\n\t\t\tmodelValue,\n\t\t\tonValueChange,\n\t\t\tmultiple,\n\t\t\torientation,\n\t\t\tdir,\n\t\t\tdisabled,\n\t\t\thighlightOnHover,\n\t\t\thighlightedElement,\n\t\t\tisVirtual,\n\t\t\tvirtualFocusHook,\n\t\t\tvirtualKeydownHook,\n\t\t\tvirtualHighlightHook,\n\t\t\tby: props.by,\n\t\t\tfirstValue,\n\t\t\tselectionBehavior,\n\t\t\tfocusable,\n\t\t\tonLeave,\n\t\t\tonEnter,\n\t\t\tchangeHighlight,\n\t\t\tonKeydownEnter,\n\t\t\tonKeydownNavigation,\n\t\t\tonKeydownTypeAhead,\n\t\t\tonCompositionStart,\n\t\t\tonCompositionEnd,\n\t\t\thighlightFirstItem\n\t\t});\n\t\treturn (_ctx, _cache) => {\n\t\t\treturn openBlock(), createBlock(unref(Primitive), {\n\t\t\t\tref_key: \"primitiveElement\",\n\t\t\t\tref: primitiveElement,\n\t\t\t\tas: _ctx.as,\n\t\t\t\t\"as-child\": _ctx.asChild,\n\t\t\t\tdir: unref(dir),\n\t\t\t\t\"data-disabled\": unref(disabled) ? \"\" : void 0,\n\t\t\t\tonPointerleave: onLeave,\n\t\t\t\tonFocusout: _cache[0] || (_cache[0] = async (event) => {\n\t\t\t\t\tconst target = event.relatedTarget || event.target;\n\t\t\t\t\tawait nextTick();\n\t\t\t\t\tif (highlightedElement.value && unref(currentElement) && !unref(currentElement).contains(target)) onLeave(event);\n\t\t\t\t})\n\t\t\t}, {\n\t\t\t\tdefault: withCtx(() => [renderSlot(_ctx.$slots, \"default\", { modelValue: unref(modelValue) }), unref(isFormControl) && _ctx.name ? (openBlock(), createBlock(unref(VisuallyHiddenInput_default), {\n\t\t\t\t\tkey: 0,\n\t\t\t\t\tname: _ctx.name,\n\t\t\t\t\tvalue: unref(modelValue),\n\t\t\t\t\tdisabled: unref(disabled),\n\t\t\t\t\trequired: _ctx.required\n\t\t\t\t}, null, 8, [\n\t\t\t\t\t\"name\",\n\t\t\t\t\t\"value\",\n\t\t\t\t\t\"disabled\",\n\t\t\t\t\t\"required\"\n\t\t\t\t])) : createCommentVNode(\"v-if\", true)]),\n\t\t\t\t_: 3\n\t\t\t}, 8, [\n\t\t\t\t\"as\",\n\t\t\t\t\"as-child\",\n\t\t\t\t\"dir\",\n\t\t\t\t\"data-disabled\"\n\t\t\t]);\n\t\t};\n\t}\n});\n\n//#endregion\n//#region src/Listbox/ListboxRoot.vue\nvar ListboxRoot_default = ListboxRoot_vue_vue_type_script_setup_true_lang_default;\n\n//#endregion\nexport { ListboxRoot_default, injectListboxRootContext };\n//# sourceMappingURL=ListboxRoot.js.map","import { Primitive } from \"../Primitive/Primitive.js\";\nimport { useCollection } from \"../Collection/Collection.js\";\nimport { injectListboxRootContext } from \"./ListboxRoot.js\";\nimport { createBlock, createVNode, defineComponent, openBlock, renderSlot, unref, withCtx, withKeys, withModifiers } from \"vue\";\nimport { refAutoReset } from \"@vueuse/shared\";\n\n//#region src/Listbox/ListboxContent.vue?vue&type=script&setup=true&lang.ts\nvar ListboxContent_vue_vue_type_script_setup_true_lang_default = /* @__PURE__ */ defineComponent({\n\t__name: \"ListboxContent\",\n\tprops: {\n\t\tasChild: {\n\t\t\ttype: Boolean,\n\t\t\trequired: false\n\t\t},\n\t\tas: {\n\t\t\ttype: null,\n\t\t\trequired: false\n\t\t}\n\t},\n\tsetup(__props) {\n\t\tconst { CollectionSlot } = useCollection();\n\t\tconst rootContext = injectListboxRootContext();\n\t\tconst isClickFocus = refAutoReset(false, 10);\n\t\treturn (_ctx, _cache) => {\n\t\t\treturn openBlock(), createBlock(unref(CollectionSlot), null, {\n\t\t\t\tdefault: withCtx(() => [createVNode(unref(Primitive), {\n\t\t\t\t\trole: \"listbox\",\n\t\t\t\t\tas: _ctx.as,\n\t\t\t\t\t\"as-child\": _ctx.asChild,\n\t\t\t\t\ttabindex: unref(rootContext).focusable.value ? unref(rootContext).highlightedElement.value ? \"-1\" : \"0\" : \"-1\",\n\t\t\t\t\t\"aria-orientation\": unref(rootContext).orientation.value,\n\t\t\t\t\t\"aria-multiselectable\": !!unref(rootContext).multiple.value,\n\t\t\t\t\t\"data-orientation\": unref(rootContext).orientation.value,\n\t\t\t\t\tonMousedown: _cache[0] || (_cache[0] = withModifiers(($event) => isClickFocus.value = true, [\"left\"])),\n\t\t\t\t\tonFocus: _cache[1] || (_cache[1] = (ev) => {\n\t\t\t\t\t\tif (unref(isClickFocus)) return;\n\t\t\t\t\t\tunref(rootContext).onEnter(ev);\n\t\t\t\t\t}),\n\t\t\t\t\tonKeydown: [\n\t\t\t\t\t\t_cache[2] || (_cache[2] = withKeys((event) => {\n\t\t\t\t\t\t\tif (unref(rootContext).orientation.value === \"vertical\" && (event.key === \"ArrowLeft\" || event.key === \"ArrowRight\") || unref(rootContext).orientation.value === \"horizontal\" && (event.key === \"ArrowUp\" || event.key === \"ArrowDown\")) return;\n\t\t\t\t\t\t\tevent.preventDefault();\n\t\t\t\t\t\t\tunref(rootContext).focusable.value && unref(rootContext).onKeydownNavigation(event);\n\t\t\t\t\t\t}, [\n\t\t\t\t\t\t\t\"down\",\n\t\t\t\t\t\t\t\"up\",\n\t\t\t\t\t\t\t\"left\",\n\t\t\t\t\t\t\t\"right\",\n\t\t\t\t\t\t\t\"home\",\n\t\t\t\t\t\t\t\"end\"\n\t\t\t\t\t\t])),\n\t\t\t\t\t\twithKeys(unref(rootContext).onKeydownEnter, [\"enter\"]),\n\t\t\t\t\t\tunref(rootContext).onKeydownTypeAhead\n\t\t\t\t\t]\n\t\t\t\t}, {\n\t\t\t\t\tdefault: withCtx(() => [renderSlot(_ctx.$slots, \"default\")]),\n\t\t\t\t\t_: 3\n\t\t\t\t}, 8, [\n\t\t\t\t\t\"as\",\n\t\t\t\t\t\"as-child\",\n\t\t\t\t\t\"tabindex\",\n\t\t\t\t\t\"aria-orientation\",\n\t\t\t\t\t\"aria-multiselectable\",\n\t\t\t\t\t\"data-orientation\",\n\t\t\t\t\t\"onKeydown\"\n\t\t\t\t])]),\n\t\t\t\t_: 3\n\t\t\t});\n\t\t};\n\t}\n});\n\n//#endregion\n//#region src/Listbox/ListboxContent.vue\nvar ListboxContent_default = ListboxContent_vue_vue_type_script_setup_true_lang_default;\n\n//#endregion\nexport { ListboxContent_default };\n//# sourceMappingURL=ListboxContent.js.map","import { useComposing } from \"../shared/useComposing.js\";\nimport { Primitive } from \"../Primitive/Primitive.js\";\nimport { usePrimitiveElement } from \"../Primitive/usePrimitiveElement.js\";\nimport { injectListboxRootContext } from \"./ListboxRoot.js\";\nimport { computed, createBlock, defineComponent, onMounted, onUnmounted, openBlock, ref, renderSlot, unref, watchSyncEffect, withCtx, withKeys } from \"vue\";\nimport { useVModel } from \"@vueuse/core\";\n\n//#region src/Listbox/ListboxFilter.vue?vue&type=script&setup=true&lang.ts\nvar ListboxFilter_vue_vue_type_script_setup_true_lang_default = /* @__PURE__ */ defineComponent({\n\t__name: \"ListboxFilter\",\n\tprops: {\n\t\tmodelValue: {\n\t\t\ttype: String,\n\t\t\trequired: false\n\t\t},\n\t\tautoFocus: {\n\t\t\ttype: Boolean,\n\t\t\trequired: false\n\t\t},\n\t\tdisabled: {\n\t\t\ttype: Boolean,\n\t\t\trequired: false\n\t\t},\n\t\tasChild: {\n\t\t\ttype: Boolean,\n\t\t\trequired: false\n\t\t},\n\t\tas: {\n\t\t\ttype: null,\n\t\t\trequired: false,\n\t\t\tdefault: \"input\"\n\t\t}\n\t},\n\temits: [\"update:modelValue\"],\n\tsetup(__props, { emit: __emit }) {\n\t\tconst props = __props;\n\t\tconst emits = __emit;\n\t\tconst modelValue = useVModel(props, \"modelValue\", emits, {\n\t\t\tdefaultValue: \"\",\n\t\t\tpassive: props.modelValue === void 0\n\t\t});\n\t\tconst rootContext = injectListboxRootContext();\n\t\tconst { primitiveElement, currentElement } = usePrimitiveElement();\n\t\tconst disabled = computed(() => props.disabled || rootContext.disabled.value || false);\n\t\tconst activedescendant = ref();\n\t\twatchSyncEffect(() => activedescendant.value = rootContext.highlightedElement.value?.id);\n\t\tonMounted(() => {\n\t\t\trootContext.focusable.value = false;\n\t\t\tsetTimeout(() => {\n\t\t\t\tif (props.autoFocus) currentElement.value?.focus();\n\t\t\t}, 1);\n\t\t});\n\t\tonUnmounted(() => {\n\t\t\trootContext.focusable.value = true;\n\t\t});\n\t\tconst { isComposing, shouldDeferInput, handleCompositionStart, handleCompositionUpdate, handleCompositionEnd } = useComposing((event) => {\n\t\t\tmodelValue.value = event.target.value;\n\t\t\trootContext.onCompositionEnd();\n\t\t\trootContext.highlightFirstItem();\n\t\t});\n\t\tfunction onCompositionStart() {\n\t\t\trootContext.onCompositionStart();\n\t\t\thandleCompositionStart();\n\t\t}\n\t\tfunction handleInput(event) {\n\t\t\tif (shouldDeferInput.value) return;\n\t\t\tmodelValue.value = event.target.value;\n\t\t\trootContext.highlightFirstItem();\n\t\t}\n\t\tfunction handleKeydownNavigation(event) {\n\t\t\tif (isComposing.value) return;\n\t\t\tevent.preventDefault();\n\t\t\trootContext.onKeydownNavigation(event);\n\t\t}\n\t\tfunction handleKeydownEnter(event) {\n\t\t\tif (isComposing.value) return;\n\t\t\trootContext.onKeydownEnter(event);\n\t\t}\n\t\treturn (_ctx, _cache) => {\n\t\t\treturn openBlock(), createBlock(unref(Primitive), {\n\t\t\t\tref_key: \"primitiveElement\",\n\t\t\t\tref: primitiveElement,\n\t\t\t\tas: _ctx.as,\n\t\t\t\t\"as-child\": _ctx.asChild,\n\t\t\t\tvalue: unref(modelValue),\n\t\t\t\tdisabled: disabled.value ? \"\" : void 0,\n\t\t\t\t\"data-disabled\": disabled.value ? \"\" : void 0,\n\t\t\t\t\"aria-disabled\": disabled.value ?? void 0,\n\t\t\t\t\"aria-activedescendant\": activedescendant.value,\n\t\t\t\ttype: \"text\",\n\t\t\t\tonKeydown: [withKeys(handleKeydownNavigation, [\n\t\t\t\t\t\"down\",\n\t\t\t\t\t\"up\",\n\t\t\t\t\t\"home\",\n\t\t\t\t\t\"end\"\n\t\t\t\t]), withKeys(handleKeydownEnter, [\"enter\"])],\n\t\t\t\tonInput: handleInput,\n\t\t\t\tonCompositionstart: onCompositionStart,\n\t\t\t\tonCompositionupdate: unref(handleCompositionUpdate),\n\t\t\t\tonCompositionend: unref(handleCompositionEnd)\n\t\t\t}, {\n\t\t\t\tdefault: withCtx(() => [renderSlot(_ctx.$slots, \"default\", { modelValue: unref(modelValue) })]),\n\t\t\t\t_: 3\n\t\t\t}, 8, [\n\t\t\t\t\"as\",\n\t\t\t\t\"as-child\",\n\t\t\t\t\"value\",\n\t\t\t\t\"disabled\",\n\t\t\t\t\"data-disabled\",\n\t\t\t\t\"aria-disabled\",\n\t\t\t\t\"aria-activedescendant\",\n\t\t\t\t\"onCompositionupdate\",\n\t\t\t\t\"onCompositionend\"\n\t\t\t]);\n\t\t};\n\t}\n});\n\n//#endregion\n//#region src/Listbox/ListboxFilter.vue\nvar ListboxFilter_default = ListboxFilter_vue_vue_type_script_setup_true_lang_default;\n\n//#endregion\nexport { ListboxFilter_default };\n//# sourceMappingURL=ListboxFilter.js.map","import { createContext } from \"../shared/createContext.js\";\nimport { handleAndDispatchCustomEvent } from \"../shared/handleAndDispatchCustomEvent.js\";\nimport { useForwardExpose } from \"../shared/useForwardExpose.js\";\nimport { useId } from \"../shared/useId.js\";\nimport { Primitive } from \"../Primitive/Primitive.js\";\nimport { useCollection } from \"../Collection/Collection.js\";\nimport { valueComparator } from \"./utils.js\";\nimport { injectListboxRootContext } from \"./ListboxRoot.js\";\nimport { computed, createBlock, createVNode, defineComponent, mergeProps, openBlock, renderSlot, unref, withCtx, withKeys, withMemo, withModifiers } from \"vue\";\n\n//#region src/Listbox/ListboxItem.vue?vue&type=script&setup=true&lang.ts\nconst LISTBOX_SELECT = \"listbox.select\";\nconst [injectListboxItemContext, provideListboxItemContext] = /*#__PURE__*/ createContext(\"ListboxItem\");\nvar ListboxItem_vue_vue_type_script_setup_true_lang_default = /* @__PURE__ */ defineComponent({\n\t__name: \"ListboxItem\",\n\tprops: {\n\t\tvalue: {\n\t\t\ttype: null,\n\t\t\trequired: true\n\t\t},\n\t\tdisabled: {\n\t\t\ttype: Boolean,\n\t\t\trequired: false\n\t\t},\n\t\tasChild: {\n\t\t\ttype: Boolean,\n\t\t\trequired: false\n\t\t},\n\t\tas: {\n\t\t\ttype: null,\n\t\t\trequired: false,\n\t\t\tdefault: \"div\"\n\t\t}\n\t},\n\temits: [\"select\"],\n\tsetup(__props, { emit: __emit }) {\n\t\tconst props = __props;\n\t\tconst emits = __emit;\n\t\tconst id = useId(void 0, \"reka-listbox-item\");\n\t\tconst { CollectionItem } = useCollection();\n\t\tconst { forwardRef, currentElement } = useForwardExpose();\n\t\tconst rootContext = injectListboxRootContext();\n\t\tconst isHighlighted = computed(() => currentElement.value != null && currentElement.value === rootContext.highlightedElement.value);\n\t\tconst isSelected = computed(() => valueComparator(rootContext.modelValue.value, props.value, rootContext.by));\n\t\tconst disabled = computed(() => rootContext.disabled.value || props.disabled);\n\t\tasync function handleSelect(ev) {\n\t\t\temits(\"select\", ev);\n\t\t\tif (ev?.defaultPrevented) return;\n\t\t\tif (!disabled.value && ev) {\n\t\t\t\trootContext.onValueChange(props.value);\n\t\t\t\trootContext.changeHighlight(currentElement.value);\n\t\t\t}\n\t\t}\n\t\tfunction handleSelectCustomEvent(ev) {\n\t\t\tconst eventDetail = {\n\t\t\t\toriginalEvent: ev,\n\t\t\t\tvalue: props.value\n\t\t\t};\n\t\t\thandleAndDispatchCustomEvent(LISTBOX_SELECT, handleSelect, eventDetail);\n\t\t}\n\t\tprovideListboxItemContext({ isSelected });\n\t\treturn (_ctx, _cache) => {\n\t\t\treturn openBlock(), createBlock(unref(CollectionItem), { value: _ctx.value }, {\n\t\t\t\tdefault: withCtx(() => [withMemo([\n\t\t\t\t\tisHighlighted.value,\n\t\t\t\t\tisSelected.value,\n\t\t\t\t\tdisabled.value,\n\t\t\t\t\tunref(rootContext).focusable.value\n\t\t\t\t], () => createVNode(unref(Primitive), mergeProps({ id: unref(id) }, _ctx.$attrs, {\n\t\t\t\t\tref: unref(forwardRef),\n\t\t\t\t\trole: \"option\",\n\t\t\t\t\ttabindex: unref(rootContext).focusable.value ? isHighlighted.value ? \"0\" : \"-1\" : -1,\n\t\t\t\t\t\"aria-selected\": isSelected.value,\n\t\t\t\t\tas: _ctx.as,\n\t\t\t\t\t\"as-child\": _ctx.asChild,\n\t\t\t\t\tdisabled: disabled.value ? \"\" : void 0,\n\t\t\t\t\t\"data-disabled\": disabled.value ? \"\" : void 0,\n\t\t\t\t\t\"data-highlighted\": isHighlighted.value ? \"\" : void 0,\n\t\t\t\t\t\"data-state\": isSelected.value ? \"checked\" : \"unchecked\",\n\t\t\t\t\tonClick: handleSelectCustomEvent,\n\t\t\t\t\tonKeydown: withKeys(withModifiers(handleSelectCustomEvent, [\"prevent\"]), [\"space\"]),\n\t\t\t\t\tonPointermove: _cache[0] || (_cache[0] = () => {\n\t\t\t\t\t\tif (unref(rootContext).highlightedElement.value === unref(currentElement)) return;\n\t\t\t\t\t\tif (unref(rootContext).highlightOnHover.value) unref(rootContext).changeHighlight(unref(currentElement), false, false);\n\t\t\t\t\t})\n\t\t\t\t}), {\n\t\t\t\t\tdefault: withCtx(() => [renderSlot(_ctx.$slots, \"default\")]),\n\t\t\t\t\t_: 3\n\t\t\t\t}, 16, [\n\t\t\t\t\t\"id\",\n\t\t\t\t\t\"tabindex\",\n\t\t\t\t\t\"aria-selected\",\n\t\t\t\t\t\"as\",\n\t\t\t\t\t\"as-child\",\n\t\t\t\t\t\"disabled\",\n\t\t\t\t\t\"data-disabled\",\n\t\t\t\t\t\"data-highlighted\",\n\t\t\t\t\t\"data-state\",\n\t\t\t\t\t\"onKeydown\"\n\t\t\t\t]), _cache, 1)]),\n\t\t\t\t_: 3\n\t\t\t}, 8, [\"value\"]);\n\t\t};\n\t}\n});\n\n//#endregion\n//#region src/Listbox/ListboxItem.vue\nvar ListboxItem_default = ListboxItem_vue_vue_type_script_setup_true_lang_default;\n\n//#endregion\nexport { ListboxItem_default, injectListboxItemContext };\n//# sourceMappingURL=ListboxItem.js.map","import { useForwardExpose } from \"../shared/useForwardExpose.js\";\nimport { Primitive } from \"../Primitive/Primitive.js\";\nimport { injectListboxItemContext } from \"./ListboxItem.js\";\nimport { createBlock, createCommentVNode, defineComponent, mergeProps, openBlock, renderSlot, unref, withCtx } from \"vue\";\n\n//#region src/Listbox/ListboxItemIndicator.vue?vue&type=script&setup=true&lang.ts\nvar ListboxItemIndicator_vue_vue_type_script_setup_true_lang_default = /* @__PURE__ */ defineComponent({\n\t__name: \"ListboxItemIndicator\",\n\tprops: {\n\t\tasChild: {\n\t\t\ttype: Boolean,\n\t\t\trequired: false\n\t\t},\n\t\tas: {\n\t\t\ttype: null,\n\t\t\trequired: false,\n\t\t\tdefault: \"span\"\n\t\t}\n\t},\n\tsetup(__props) {\n\t\tconst props = __props;\n\t\tuseForwardExpose();\n\t\tconst itemContext = injectListboxItemContext();\n\t\treturn (_ctx, _cache) => {\n\t\t\treturn unref(itemContext).isSelected.value ? (openBlock(), createBlock(unref(Primitive), mergeProps({\n\t\t\t\tkey: 0,\n\t\t\t\t\"aria-hidden\": \"true\"\n\t\t\t}, props), {\n\t\t\t\tdefault: withCtx(() => [renderSlot(_ctx.$slots, \"default\")]),\n\t\t\t\t_: 3\n\t\t\t}, 16)) : createCommentVNode(\"v-if\", true);\n\t\t};\n\t}\n});\n\n//#endregion\n//#region src/Listbox/ListboxItemIndicator.vue\nvar ListboxItemIndicator_default = ListboxItemIndicator_vue_vue_type_script_setup_true_lang_default;\n\n//#endregion\nexport { ListboxItemIndicator_default };\n//# sourceMappingURL=ListboxItemIndicator.js.map","import { createContext } from \"../shared/createContext.js\";\nimport { useDirection } from \"../shared/useDirection.js\";\nimport { useFilter } from \"../shared/useFilter.js\";\nimport { usePrimitiveElement } from \"../Primitive/usePrimitiveElement.js\";\nimport { ListboxRoot_default } from \"../Listbox/ListboxRoot.js\";\nimport { PopperRoot_default } from \"../Popper/PopperRoot.js\";\nimport { computed, createBlock, createVNode, defineComponent, getCurrentInstance, isRef, mergeProps, nextTick, onMounted, openBlock, ref, renderSlot, toRefs, unref, withCtx } from \"vue\";\nimport { createEventHook, useVModel } from \"@vueuse/core\";\n\n//#region src/Combobox/ComboboxRoot.vue?vue&type=script&setup=true&lang.ts\nconst [injectComboboxRootContext, provideComboboxRootContext] = /*#__PURE__*/ createContext(\"ComboboxRoot\");\nvar ComboboxRoot_vue_vue_type_script_setup_true_lang_default = /* @__PURE__ */ defineComponent({\n\t__name: \"ComboboxRoot\",\n\tprops: {\n\t\topen: {\n\t\t\ttype: Boolean,\n\t\t\trequired: false,\n\t\t\tdefault: void 0\n\t\t},\n\t\tdefaultOpen: {\n\t\t\ttype: Boolean,\n\t\t\trequired: false\n\t\t},\n\t\tresetSearchTermOnBlur: {\n\t\t\ttype: Boolean,\n\t\t\trequired: false,\n\t\t\tdefault: true\n\t\t},\n\t\tresetSearchTermOnSelect: {\n\t\t\ttype: Boolean,\n\t\t\trequired: false,\n\t\t\tdefault: true\n\t\t},\n\t\topenOnFocus: {\n\t\t\ttype: Boolean,\n\t\t\trequired: false,\n\t\t\tdefault: false\n\t\t},\n\t\topenOnClick: {\n\t\t\ttype: Boolean,\n\t\t\trequired: false,\n\t\t\tdefault: false\n\t\t},\n\t\tignoreFilter: {\n\t\t\ttype: Boolean,\n\t\t\trequired: false\n\t\t},\n\t\tresetModelValueOnClear: {\n\t\t\ttype: Boolean,\n\t\t\trequired: false,\n\t\t\tdefault: false\n\t\t},\n\t\tmodelValue: {\n\t\t\ttype: null,\n\t\t\trequired: false\n\t\t},\n\t\tdefaultValue: {\n\t\t\ttype: null,\n\t\t\trequired: false\n\t\t},\n\t\tmultiple: {\n\t\t\ttype: Boolean,\n\t\t\trequired: false\n\t\t},\n\t\tdir: {\n\t\t\ttype: String,\n\t\t\trequired: false\n\t\t},\n\t\tdisabled: {\n\t\t\ttype: Boolean,\n\t\t\trequired: false\n\t\t},\n\t\thighlightOnHover: {\n\t\t\ttype: Boolean,\n\t\t\trequired: false,\n\t\t\tdefault: true\n\t\t},\n\t\tby: {\n\t\t\ttype: [String, Function],\n\t\t\trequired: false\n\t\t},\n\t\tasChild: {\n\t\t\ttype: Boolean,\n\t\t\trequired: false\n\t\t},\n\t\tas: {\n\t\t\ttype: null,\n\t\t\trequired: false\n\t\t},\n\t\tname: {\n\t\t\ttype: String,\n\t\t\trequired: false\n\t\t},\n\t\trequired: {\n\t\t\ttype: Boolean,\n\t\t\trequired: false\n\t\t}\n\t},\n\temits: [\n\t\t\"update:modelValue\",\n\t\t\"highlight\",\n\t\t\"update:open\"\n\t],\n\tsetup(__props, { expose: __expose, emit: __emit }) {\n\t\tconst props = __props;\n\t\tconst emits = __emit;\n\t\tconst { primitiveElement, currentElement: parentElement } = usePrimitiveElement();\n\t\tconst { multiple, disabled, ignoreFilter, resetSearchTermOnSelect, openOnFocus, openOnClick, dir: propDir, resetModelValueOnClear, highlightOnHover } = toRefs(props);\n\t\tconst dir = useDirection(propDir);\n\t\tconst modelValue = useVModel(props, \"modelValue\", emits, {\n\t\t\tdefaultValue: props.defaultValue ?? (multiple.value ? [] : void 0),\n\t\t\tpassive: props.modelValue === void 0,\n\t\t\tdeep: true\n\t\t});\n\t\tconst open = useVModel(props, \"open\", emits, {\n\t\t\tdefaultValue: props.defaultOpen,\n\t\t\tpassive: props.open === void 0\n\t\t});\n\t\tasync function onOpenChange(val) {\n\t\t\topen.value = val;\n\t\t\tfilterSearch.value = \"\";\n\t\t\tif (val) {\n\t\t\t\tawait nextTick();\n\t\t\t\tprimitiveElement.value?.highlightSelected();\n\t\t\t\tisUserInputted.value = true;\n\t\t\t\tinputElement.value?.focus();\n\t\t\t} else {\n\t\t\t\tisUserInputted.value = false;\n\t\t\t\tsetTimeout(() => {\n\t\t\t\t\tif (!val && props.resetSearchTermOnBlur) resetSearchTerm.trigger();\n\t\t\t\t}, 1);\n\t\t\t}\n\t\t}\n\t\tconst resetSearchTerm = createEventHook();\n\t\tconst isUserInputted = ref(false);\n\t\tconst isVirtual = ref(false);\n\t\tconst inputElement = ref();\n\t\tconst triggerElement = ref();\n\t\tconst highlightedElement = computed(() => primitiveElement.value?.highlightedElement ?? void 0);\n\t\tconst allItems = ref(/* @__PURE__ */ new Map());\n\t\tconst allGroups = ref(/* @__PURE__ */ new Map());\n\t\tconst { contains } = useFilter({ sensitivity: \"base\" });\n\t\tconst filterSearch = ref(\"\");\n\t\tconst filterState = computed((oldValue) => {\n\t\t\tif (!filterSearch.value || props.ignoreFilter || isVirtual.value) return {\n\t\t\t\tcount: allItems.value.size,\n\t\t\t\titems: oldValue?.items ?? /* @__PURE__ */ new Map(),\n\t\t\t\tgroups: oldValue?.groups ?? new Set(allGroups.value.keys())\n\t\t\t};\n\t\t\tlet itemCount = 0;\n\t\t\tconst filteredItems = /* @__PURE__ */ new Map();\n\t\t\tconst filteredGroups = /* @__PURE__ */ new Set();\n\t\t\tfor (const [id, value] of allItems.value) {\n\t\t\t\tconst score = contains(value, filterSearch.value);\n\t\t\t\tfilteredItems.set(id, score ? 1 : 0);\n\t\t\t\tif (score) itemCount++;\n\t\t\t}\n\t\t\tfor (const [groupId, group] of allGroups.value) for (const itemId of group) if (filteredItems.get(itemId) > 0) {\n\t\t\t\tfilteredGroups.add(groupId);\n\t\t\t\tbreak;\n\t\t\t}\n\t\t\treturn {\n\t\t\t\tcount: itemCount,\n\t\t\t\titems: filteredItems,\n\t\t\t\tgroups: filteredGroups\n\t\t\t};\n\t\t});\n\t\tconst inst = getCurrentInstance();\n\t\tonMounted(() => {\n\t\t\tif (inst?.exposed) {\n\t\t\t\tinst.exposed.highlightItem = primitiveElement.value?.highlightItem;\n\t\t\t\tinst.exposed.highlightFirstItem = primitiveElement.value?.highlightFirstItem;\n\t\t\t\tinst.exposed.highlightSelected = primitiveElement.value?.highlightSelected;\n\t\t\t}\n\t\t});\n\t\t__expose({\n\t\t\tfiltered: filterState,\n\t\t\thighlightedElement,\n\t\t\thighlightItem: primitiveElement.value?.highlightItem,\n\t\t\thighlightFirstItem: primitiveElement.value?.highlightFirstItem,\n\t\t\thighlightSelected: primitiveElement.value?.highlightSelected\n\t\t});\n\t\tprovideComboboxRootContext({\n\t\t\tmodelValue,\n\t\t\tmultiple,\n\t\t\tdisabled,\n\t\t\topen,\n\t\t\tonOpenChange,\n\t\t\tcontentId: \"\",\n\t\t\tisUserInputted,\n\t\t\tisVirtual,\n\t\t\tinputElement,\n\t\t\thighlightedElement,\n\t\t\tonInputElementChange: (val) => inputElement.value = val,\n\t\t\ttriggerElement,\n\t\t\tonTriggerElementChange: (val) => triggerElement.value = val,\n\t\t\tparentElement,\n\t\t\tresetSearchTermOnSelect,\n\t\t\tonResetSearchTerm: resetSearchTerm.on,\n\t\t\tallItems,\n\t\t\tallGroups,\n\t\t\tfilterSearch,\n\t\t\tfilterState,\n\t\t\tignoreFilter,\n\t\t\topenOnFocus,\n\t\t\topenOnClick,\n\t\t\tresetModelValueOnClear\n\t\t});\n\t\treturn (_ctx, _cache) => {\n\t\t\treturn openBlock(), createBlock(unref(PopperRoot_default), null, {\n\t\t\t\tdefault: withCtx(() => [createVNode(unref(ListboxRoot_default), mergeProps({\n\t\t\t\t\tref_key: \"primitiveElement\",\n\t\t\t\t\tref: primitiveElement\n\t\t\t\t}, _ctx.$attrs, {\n\t\t\t\t\tmodelValue: unref(modelValue),\n\t\t\t\t\t\"onUpdate:modelValue\": _cache[0] || (_cache[0] = ($event) => isRef(modelValue) ? modelValue.value = $event : null),\n\t\t\t\t\tstyle: { pointerEvents: unref(open) ? \"auto\" : void 0 },\n\t\t\t\t\tas: _ctx.as,\n\t\t\t\t\t\"as-child\": _ctx.asChild,\n\t\t\t\t\tdir: unref(dir),\n\t\t\t\t\tmultiple: unref(multiple),\n\t\t\t\t\tname: _ctx.name,\n\t\t\t\t\trequired: _ctx.required,\n\t\t\t\t\tdisabled: unref(disabled),\n\t\t\t\t\t\"highlight-on-hover\": unref(highlightOnHover),\n\t\t\t\t\tby: props.by,\n\t\t\t\t\tonHighlight: _cache[1] || (_cache[1] = ($event) => emits(\"highlight\", $event))\n\t\t\t\t}), {\n\t\t\t\t\tdefault: withCtx(() => [renderSlot(_ctx.$slots, \"default\", {\n\t\t\t\t\t\topen: unref(open),\n\t\t\t\t\t\tmodelValue: unref(modelValue)\n\t\t\t\t\t})]),\n\t\t\t\t\t_: 3\n\t\t\t\t}, 16, [\n\t\t\t\t\t\"modelValue\",\n\t\t\t\t\t\"style\",\n\t\t\t\t\t\"as\",\n\t\t\t\t\t\"as-child\",\n\t\t\t\t\t\"dir\",\n\t\t\t\t\t\"multiple\",\n\t\t\t\t\t\"name\",\n\t\t\t\t\t\"required\",\n\t\t\t\t\t\"disabled\",\n\t\t\t\t\t\"highlight-on-hover\",\n\t\t\t\t\t\"by\"\n\t\t\t\t])]),\n\t\t\t\t_: 3\n\t\t\t});\n\t\t};\n\t}\n});\n\n//#endregion\n//#region src/Combobox/ComboboxRoot.vue\nvar ComboboxRoot_default = ComboboxRoot_vue_vue_type_script_setup_true_lang_default;\n\n//#endregion\nexport { ComboboxRoot_default, injectComboboxRootContext, provideComboboxRootContext };\n//# sourceMappingURL=ComboboxRoot.js.map","import { useForwardExpose } from \"../shared/useForwardExpose.js\";\nimport { Primitive } from \"../Primitive/Primitive.js\";\nimport { PopperAnchor_default } from \"../Popper/PopperAnchor.js\";\nimport { createBlock, createVNode, defineComponent, mergeProps, openBlock, renderSlot, unref, withCtx } from \"vue\";\n\n//#region src/Combobox/ComboboxAnchor.vue?vue&type=script&setup=true&lang.ts\nvar ComboboxAnchor_vue_vue_type_script_setup_true_lang_default = /* @__PURE__ */ defineComponent({\n\t__name: \"ComboboxAnchor\",\n\tprops: {\n\t\treference: {\n\t\t\ttype: null,\n\t\t\trequired: false\n\t\t},\n\t\tasChild: {\n\t\t\ttype: Boolean,\n\t\t\trequired: false\n\t\t},\n\t\tas: {\n\t\t\ttype: null,\n\t\t\trequired: false\n\t\t}\n\t},\n\tsetup(__props) {\n\t\tconst { forwardRef } = useForwardExpose();\n\t\treturn (_ctx, _cache) => {\n\t\t\treturn openBlock(), createBlock(unref(PopperAnchor_default), {\n\t\t\t\t\"as-child\": \"\",\n\t\t\t\treference: _ctx.reference\n\t\t\t}, {\n\t\t\t\tdefault: withCtx(() => [createVNode(unref(Primitive), mergeProps({\n\t\t\t\t\tref: unref(forwardRef),\n\t\t\t\t\t\"as-child\": _ctx.asChild,\n\t\t\t\t\tas: _ctx.as\n\t\t\t\t}, _ctx.$attrs), {\n\t\t\t\t\tdefault: withCtx(() => [renderSlot(_ctx.$slots, \"default\")]),\n\t\t\t\t\t_: 3\n\t\t\t\t}, 16, [\"as-child\", \"as\"])]),\n\t\t\t\t_: 3\n\t\t\t}, 8, [\"reference\"]);\n\t\t};\n\t}\n});\n\n//#endregion\n//#region src/Combobox/ComboboxAnchor.vue\nvar ComboboxAnchor_default = ComboboxAnchor_vue_vue_type_script_setup_true_lang_default;\n\n//#endregion\nexport { ComboboxAnchor_default };\n//# sourceMappingURL=ComboboxAnchor.js.map","import { createContext } from \"../shared/createContext.js\";\nimport { getActiveElement } from \"../shared/getActiveElement.js\";\nimport { useBodyScrollLock } from \"../shared/useBodyScrollLock.js\";\nimport { useFocusGuards } from \"../shared/useFocusGuards.js\";\nimport { useForwardExpose } from \"../shared/useForwardExpose.js\";\nimport { useForwardProps } from \"../shared/useForwardProps.js\";\nimport { useHideOthers } from \"../shared/useHideOthers.js\";\nimport { Primitive } from \"../Primitive/Primitive.js\";\nimport { DismissableLayer_default } from \"../DismissableLayer/DismissableLayer.js\";\nimport { FocusScope_default } from \"../FocusScope/FocusScope.js\";\nimport { ListboxContent_default } from \"../Listbox/ListboxContent.js\";\nimport { PopperContent_default } from \"../Popper/PopperContent.js\";\nimport { injectComboboxRootContext } from \"./ComboboxRoot.js\";\nimport { computed, createBlock, createVNode, defineComponent, mergeProps, onMounted, onUnmounted, openBlock, ref, renderSlot, resolveDynamicComponent, toRefs, unref, withCtx, withModifiers } from \"vue\";\n\n//#region src/Combobox/ComboboxContentImpl.vue?vue&type=script&setup=true&lang.ts\nconst [injectComboboxContentContext, provideComboboxContentContext] = /*#__PURE__*/ createContext(\"ComboboxContent\");\nvar ComboboxContentImpl_vue_vue_type_script_setup_true_lang_default = /* @__PURE__ */ defineComponent({\n\t__name: \"ComboboxContentImpl\",\n\tprops: {\n\t\tposition: {\n\t\t\ttype: String,\n\t\t\trequired: false,\n\t\t\tdefault: \"inline\"\n\t\t},\n\t\tbodyLock: {\n\t\t\ttype: Boolean,\n\t\t\trequired: false\n\t\t},\n\t\thideWhenEmpty: {\n\t\t\ttype: Boolean,\n\t\t\trequired: false\n\t\t},\n\t\tmemoDependencies: {\n\t\t\ttype: Array,\n\t\t\trequired: false\n\t\t},\n\t\tside: {\n\t\t\ttype: null,\n\t\t\trequired: false\n\t\t},\n\t\tsideOffset: {\n\t\t\ttype: Number,\n\t\t\trequired: false\n\t\t},\n\t\tsideFlip: {\n\t\t\ttype: Boolean,\n\t\t\trequired: false\n\t\t},\n\t\talign: {\n\t\t\ttype: null,\n\t\t\trequired: false\n\t\t},\n\t\talignOffset: {\n\t\t\ttype: Number,\n\t\t\trequired: false\n\t\t},\n\t\talignFlip: {\n\t\t\ttype: Boolean,\n\t\t\trequired: false\n\t\t},\n\t\tavoidCollisions: {\n\t\t\ttype: Boolean,\n\t\t\trequired: false\n\t\t},\n\t\tcollisionBoundary: {\n\t\t\ttype: null,\n\t\t\trequired: false\n\t\t},\n\t\tcollisionPadding: {\n\t\t\ttype: [Number, Object],\n\t\t\trequired: false\n\t\t},\n\t\tarrowPadding: {\n\t\t\ttype: Number,\n\t\t\trequired: false\n\t\t},\n\t\thideShiftedArrow: {\n\t\t\ttype: Boolean,\n\t\t\trequired: false\n\t\t},\n\t\tsticky: {\n\t\t\ttype: String,\n\t\t\trequired: false\n\t\t},\n\t\thideWhenDetached: {\n\t\t\ttype: Boolean,\n\t\t\trequired: false\n\t\t},\n\t\tpositionStrategy: {\n\t\t\ttype: String,\n\t\t\trequired: false\n\t\t},\n\t\tupdatePositionStrategy: {\n\t\t\ttype: String,\n\t\t\trequired: false\n\t\t},\n\t\tdisableUpdateOnLayoutShift: {\n\t\t\ttype: Boolean,\n\t\t\trequired: false\n\t\t},\n\t\tprioritizePosition: {\n\t\t\ttype: Boolean,\n\t\t\trequired: false\n\t\t},\n\t\treference: {\n\t\t\ttype: null,\n\t\t\trequired: false\n\t\t},\n\t\tdir: {\n\t\t\ttype: String,\n\t\t\trequired: false\n\t\t},\n\t\tasChild: {\n\t\t\ttype: Boolean,\n\t\t\trequired: false\n\t\t},\n\t\tas: {\n\t\t\ttype: null,\n\t\t\trequired: false\n\t\t},\n\t\tdisableOutsidePointerEvents: {\n\t\t\ttype: Boolean,\n\t\t\trequired: false\n\t\t}\n\t},\n\temits: [\n\t\t\"escapeKeyDown\",\n\t\t\"pointerDownOutside\",\n\t\t\"focusOutside\",\n\t\t\"interactOutside\"\n\t],\n\tsetup(__props, { emit: __emit }) {\n\t\tconst props = __props;\n\t\tconst emits = __emit;\n\t\tconst { position } = toRefs(props);\n\t\tconst rootContext = injectComboboxRootContext();\n\t\tconst isEmpty = computed(() => rootContext.ignoreFilter.value ? rootContext.allItems.value.size === 0 : rootContext.filterState.value.count === 0);\n\t\tconst { forwardRef, currentElement } = useForwardExpose();\n\t\tuseBodyScrollLock(props.bodyLock);\n\t\tuseFocusGuards();\n\t\tuseHideOthers(rootContext.parentElement);\n\t\tconst pickedProps = computed(() => {\n\t\t\tif (props.position === \"popper\") return props;\n\t\t\telse return {};\n\t\t});\n\t\tconst forwardedProps = useForwardProps(pickedProps.value);\n\t\tconst popperStyle = {\n\t\t\t\"boxSizing\": \"border-box\",\n\t\t\t\"--reka-combobox-content-transform-origin\": \"var(--reka-popper-transform-origin)\",\n\t\t\t\"--reka-combobox-content-available-width\": \"var(--reka-popper-available-width)\",\n\t\t\t\"--reka-combobox-content-available-height\": \"var(--reka-popper-available-height)\",\n\t\t\t\"--reka-combobox-trigger-width\": \"var(--reka-popper-anchor-width)\",\n\t\t\t\"--reka-combobox-trigger-height\": \"var(--reka-popper-anchor-height)\"\n\t\t};\n\t\tprovideComboboxContentContext({ position });\n\t\tconst isInputWithinContent = ref(false);\n\t\tonMounted(() => {\n\t\t\tif (rootContext.inputElement.value) {\n\t\t\t\tisInputWithinContent.value = currentElement.value.contains(rootContext.inputElement.value);\n\t\t\t\tif (isInputWithinContent.value) rootContext.inputElement.value.focus();\n\t\t\t}\n\t\t});\n\t\tonUnmounted(() => {\n\t\t\tconst activeElement = getActiveElement();\n\t\t\tif (isInputWithinContent.value && (!activeElement || activeElement === document.body)) rootContext.triggerElement.value?.focus();\n\t\t});\n\t\tfunction isEventTargetWithinCombobox(target) {\n\t\t\tif (rootContext.parentElement.value?.contains(target)) return true;\n\t\t\tconst label = target instanceof Element ? target.closest(\"label\") : null;\n\t\t\tconst control = label?.control;\n\t\t\treturn !!control && !!rootContext.parentElement.value?.contains(control);\n\t\t}\n\t\treturn (_ctx, _cache) => {\n\t\t\treturn openBlock(), createBlock(unref(ListboxContent_default), { \"as-child\": \"\" }, {\n\t\t\t\tdefault: withCtx(() => [createVNode(unref(FocusScope_default), {\n\t\t\t\t\t\"as-child\": \"\",\n\t\t\t\t\tonMountAutoFocus: _cache[5] || (_cache[5] = withModifiers(() => {}, [\"prevent\"])),\n\t\t\t\t\tonUnmountAutoFocus: _cache[6] || (_cache[6] = withModifiers(() => {}, [\"prevent\"]))\n\t\t\t\t}, {\n\t\t\t\t\tdefault: withCtx(() => [createVNode(unref(DismissableLayer_default), {\n\t\t\t\t\t\t\"as-child\": \"\",\n\t\t\t\t\t\t\"disable-outside-pointer-events\": _ctx.disableOutsidePointerEvents,\n\t\t\t\t\t\tonDismiss: _cache[0] || (_cache[0] = ($event) => unref(rootContext).onOpenChange(false)),\n\t\t\t\t\t\tonFocusOutside: _cache[1] || (_cache[1] = (ev) => {\n\t\t\t\t\t\t\tif (isEventTargetWithinCombobox(ev.target)) ev.preventDefault();\n\t\t\t\t\t\t\temits(\"focusOutside\", ev);\n\t\t\t\t\t\t}),\n\t\t\t\t\t\tonInteractOutside: _cache[2] || (_cache[2] = ($event) => emits(\"interactOutside\", $event)),\n\t\t\t\t\t\tonEscapeKeyDown: _cache[3] || (_cache[3] = ($event) => emits(\"escapeKeyDown\", $event)),\n\t\t\t\t\t\tonPointerDownOutside: _cache[4] || (_cache[4] = (ev) => {\n\t\t\t\t\t\t\tif (isEventTargetWithinCombobox(ev.target)) ev.preventDefault();\n\t\t\t\t\t\t\temits(\"pointerDownOutside\", ev);\n\t\t\t\t\t\t})\n\t\t\t\t\t}, {\n\t\t\t\t\t\tdefault: withCtx(() => [(openBlock(), createBlock(resolveDynamicComponent(unref(position) === \"popper\" ? unref(PopperContent_default) : unref(Primitive)), mergeProps({\n\t\t\t\t\t\t\t..._ctx.$attrs,\n\t\t\t\t\t\t\t...unref(forwardedProps)\n\t\t\t\t\t\t}, {\n\t\t\t\t\t\t\tid: unref(rootContext).contentId,\n\t\t\t\t\t\t\tref: unref(forwardRef),\n\t\t\t\t\t\t\t\"memo-dependencies\": unref(position) === \"popper\" ? [unref(rootContext).filterSearch.value, unref(rootContext).filterState.value] : void 0,\n\t\t\t\t\t\t\t\"data-state\": unref(rootContext).open.value ? \"open\" : \"closed\",\n\t\t\t\t\t\t\t\"data-empty\": isEmpty.value ? \"\" : void 0,\n\t\t\t\t\t\t\tstyle: {\n\t\t\t\t\t\t\t\tdisplay: props.hideWhenEmpty && isEmpty.value ? \"none\" : \"flex\",\n\t\t\t\t\t\t\t\tflexDirection: \"column\",\n\t\t\t\t\t\t\t\toutline: \"none\",\n\t\t\t\t\t\t\t\t...unref(position) === \"popper\" ? popperStyle : {}\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}), {\n\t\t\t\t\t\t\tdefault: withCtx(() => [renderSlot(_ctx.$slots, \"default\")]),\n\t\t\t\t\t\t\t_: 3\n\t\t\t\t\t\t}, 16, [\n\t\t\t\t\t\t\t\"id\",\n\t\t\t\t\t\t\t\"memo-dependencies\",\n\t\t\t\t\t\t\t\"data-state\",\n\t\t\t\t\t\t\t\"data-empty\",\n\t\t\t\t\t\t\t\"style\"\n\t\t\t\t\t\t]))]),\n\t\t\t\t\t\t_: 3\n\t\t\t\t\t}, 8, [\"disable-outside-pointer-events\"])]),\n\t\t\t\t\t_: 3\n\t\t\t\t})]),\n\t\t\t\t_: 3\n\t\t\t});\n\t\t};\n\t}\n});\n\n//#endregion\n//#region src/Combobox/ComboboxContentImpl.vue\nvar ComboboxContentImpl_default = ComboboxContentImpl_vue_vue_type_script_setup_true_lang_default;\n\n//#endregion\nexport { ComboboxContentImpl_default, injectComboboxContentContext };\n//# sourceMappingURL=ComboboxContentImpl.js.map","import { useForwardExpose } from \"../shared/useForwardExpose.js\";\nimport { useForwardPropsEmits } from \"../shared/useForwardPropsEmits.js\";\nimport { useId } from \"../shared/useId.js\";\nimport { Presence_default } from \"../Presence/Presence.js\";\nimport { injectComboboxRootContext } from \"./ComboboxRoot.js\";\nimport { ComboboxContentImpl_default } from \"./ComboboxContentImpl.js\";\nimport { createBlock, createVNode, defineComponent, mergeProps, openBlock, renderSlot, unref, withCtx } from \"vue\";\n\n//#region src/Combobox/ComboboxContent.vue?vue&type=script&setup=true&lang.ts\nvar ComboboxContent_vue_vue_type_script_setup_true_lang_default = /* @__PURE__ */ defineComponent({\n\t__name: \"ComboboxContent\",\n\tprops: {\n\t\tforceMount: {\n\t\t\ttype: Boolean,\n\t\t\trequired: false\n\t\t},\n\t\tposition: {\n\t\t\ttype: String,\n\t\t\trequired: false\n\t\t},\n\t\tbodyLock: {\n\t\t\ttype: Boolean,\n\t\t\trequired: false\n\t\t},\n\t\thideWhenEmpty: {\n\t\t\ttype: Boolean,\n\t\t\trequired: false\n\t\t},\n\t\tmemoDependencies: {\n\t\t\ttype: Array,\n\t\t\trequired: false\n\t\t},\n\t\tside: {\n\t\t\ttype: null,\n\t\t\trequired: false\n\t\t},\n\t\tsideOffset: {\n\t\t\ttype: Number,\n\t\t\trequired: false\n\t\t},\n\t\tsideFlip: {\n\t\t\ttype: Boolean,\n\t\t\trequired: false\n\t\t},\n\t\talign: {\n\t\t\ttype: null,\n\t\t\trequired: false\n\t\t},\n\t\talignOffset: {\n\t\t\ttype: Number,\n\t\t\trequired: false\n\t\t},\n\t\talignFlip: {\n\t\t\ttype: Boolean,\n\t\t\trequired: false\n\t\t},\n\t\tavoidCollisions: {\n\t\t\ttype: Boolean,\n\t\t\trequired: false\n\t\t},\n\t\tcollisionBoundary: {\n\t\t\ttype: null,\n\t\t\trequired: false\n\t\t},\n\t\tcollisionPadding: {\n\t\t\ttype: [Number, Object],\n\t\t\trequired: false\n\t\t},\n\t\tarrowPadding: {\n\t\t\ttype: Number,\n\t\t\trequired: false\n\t\t},\n\t\thideShiftedArrow: {\n\t\t\ttype: Boolean,\n\t\t\trequired: false\n\t\t},\n\t\tsticky: {\n\t\t\ttype: String,\n\t\t\trequired: false\n\t\t},\n\t\thideWhenDetached: {\n\t\t\ttype: Boolean,\n\t\t\trequired: false\n\t\t},\n\t\tpositionStrategy: {\n\t\t\ttype: String,\n\t\t\trequired: false\n\t\t},\n\t\tupdatePositionStrategy: {\n\t\t\ttype: String,\n\t\t\trequired: false\n\t\t},\n\t\tdisableUpdateOnLayoutShift: {\n\t\t\ttype: Boolean,\n\t\t\trequired: false\n\t\t},\n\t\tprioritizePosition: {\n\t\t\ttype: Boolean,\n\t\t\trequired: false\n\t\t},\n\t\treference: {\n\t\t\ttype: null,\n\t\t\trequired: false\n\t\t},\n\t\tdir: {\n\t\t\ttype: String,\n\t\t\trequired: false\n\t\t},\n\t\tasChild: {\n\t\t\ttype: Boolean,\n\t\t\trequired: false\n\t\t},\n\t\tas: {\n\t\t\ttype: null,\n\t\t\trequired: false\n\t\t},\n\t\tdisableOutsidePointerEvents: {\n\t\t\ttype: Boolean,\n\t\t\trequired: false\n\t\t}\n\t},\n\temits: [\n\t\t\"escapeKeyDown\",\n\t\t\"pointerDownOutside\",\n\t\t\"focusOutside\",\n\t\t\"interactOutside\"\n\t],\n\tsetup(__props, { emit: __emit }) {\n\t\tconst props = __props;\n\t\tconst emits = __emit;\n\t\tconst forwarded = useForwardPropsEmits(props, emits);\n\t\tconst { forwardRef } = useForwardExpose();\n\t\tconst rootContext = injectComboboxRootContext();\n\t\trootContext.contentId ||= useId(void 0, \"reka-combobox-content\");\n\t\treturn (_ctx, _cache) => {\n\t\t\treturn openBlock(), createBlock(unref(Presence_default), { present: _ctx.forceMount || unref(rootContext).open.value }, {\n\t\t\t\tdefault: withCtx(() => [createVNode(ComboboxContentImpl_default, mergeProps({\n\t\t\t\t\t...unref(forwarded),\n\t\t\t\t\t..._ctx.$attrs\n\t\t\t\t}, { ref: unref(forwardRef) }), {\n\t\t\t\t\tdefault: withCtx(() => [renderSlot(_ctx.$slots, \"default\")]),\n\t\t\t\t\t_: 3\n\t\t\t\t}, 16)]),\n\t\t\t\t_: 3\n\t\t\t}, 8, [\"present\"]);\n\t\t};\n\t}\n});\n\n//#endregion\n//#region src/Combobox/ComboboxContent.vue\nvar ComboboxContent_default = ComboboxContent_vue_vue_type_script_setup_true_lang_default;\n\n//#endregion\nexport { ComboboxContent_default };\n//# sourceMappingURL=ComboboxContent.js.map","import { Primitive } from \"../Primitive/Primitive.js\";\nimport { injectComboboxRootContext } from \"./ComboboxRoot.js\";\nimport { computed, createBlock, createCommentVNode, createTextVNode, defineComponent, guardReactiveProps, mergeProps, normalizeProps, openBlock, renderSlot, unref, withCtx } from \"vue\";\n\n//#region src/Combobox/ComboboxEmpty.vue?vue&type=script&setup=true&lang.ts\nvar ComboboxEmpty_vue_vue_type_script_setup_true_lang_default = /* @__PURE__ */ defineComponent({\n\t__name: \"ComboboxEmpty\",\n\tprops: {\n\t\tasChild: {\n\t\t\ttype: Boolean,\n\t\t\trequired: false\n\t\t},\n\t\tas: {\n\t\t\ttype: null,\n\t\t\trequired: false\n\t\t}\n\t},\n\tsetup(__props) {\n\t\tconst props = __props;\n\t\tconst rootContext = injectComboboxRootContext();\n\t\tconst isRender = computed(() => rootContext.ignoreFilter.value ? rootContext.allItems.value.size === 0 : rootContext.filterState.value.count === 0);\n\t\treturn (_ctx, _cache) => {\n\t\t\treturn isRender.value ? (openBlock(), createBlock(unref(Primitive), normalizeProps(mergeProps({ key: 0 }, props)), {\n\t\t\t\tdefault: withCtx(() => [renderSlot(_ctx.$slots, \"default\", {}, () => [_cache[0] || (_cache[0] = createTextVNode(\"No options\"))])]),\n\t\t\t\t_: 3\n\t\t\t}, 16)) : createCommentVNode(\"v-if\", true);\n\t\t};\n\t}\n});\n\n//#endregion\n//#region src/Combobox/ComboboxEmpty.vue\nvar ComboboxEmpty_default = ComboboxEmpty_vue_vue_type_script_setup_true_lang_default;\n\n//#endregion\nexport { ComboboxEmpty_default };\n//# sourceMappingURL=ComboboxEmpty.js.map","import { createContext } from \"../shared/createContext.js\";\nimport { useId } from \"../shared/useId.js\";\nimport { ListboxGroup_default } from \"../Listbox/ListboxGroup.js\";\nimport { injectComboboxRootContext } from \"./ComboboxRoot.js\";\nimport { computed, createBlock, defineComponent, mergeProps, onMounted, onUnmounted, openBlock, renderSlot, unref, withCtx } from \"vue\";\n\n//#region src/Combobox/ComboboxGroup.vue?vue&type=script&setup=true&lang.ts\nconst [injectComboboxGroupContext, provideComboboxGroupContext] = /*#__PURE__*/ createContext(\"ComboboxGroup\");\nvar ComboboxGroup_vue_vue_type_script_setup_true_lang_default = /* @__PURE__ */ defineComponent({\n\t__name: \"ComboboxGroup\",\n\tprops: {\n\t\tasChild: {\n\t\t\ttype: Boolean,\n\t\t\trequired: false\n\t\t},\n\t\tas: {\n\t\t\ttype: null,\n\t\t\trequired: false\n\t\t}\n\t},\n\tsetup(__props) {\n\t\tconst props = __props;\n\t\tconst id = useId(void 0, \"reka-combobox-group\");\n\t\tconst rootContext = injectComboboxRootContext();\n\t\tconst isRender = computed(() => rootContext.ignoreFilter.value ? true : !rootContext.filterSearch.value ? true : rootContext.filterState.value.groups.has(id));\n\t\tconst context = provideComboboxGroupContext({\n\t\t\tid,\n\t\t\tlabelId: \"\"\n\t\t});\n\t\tonMounted(() => {\n\t\t\tif (!rootContext.allGroups.value.has(id)) rootContext.allGroups.value.set(id, /* @__PURE__ */ new Set());\n\t\t});\n\t\tonUnmounted(() => {\n\t\t\trootContext.allGroups.value.delete(id);\n\t\t});\n\t\treturn (_ctx, _cache) => {\n\t\t\treturn openBlock(), createBlock(unref(ListboxGroup_default), mergeProps({\n\t\t\t\tid: unref(id),\n\t\t\t\t\"aria-labelledby\": unref(context).labelId\n\t\t\t}, props, { hidden: isRender.value ? void 0 : true }), {\n\t\t\t\tdefault: withCtx(() => [renderSlot(_ctx.$slots, \"default\")]),\n\t\t\t\t_: 3\n\t\t\t}, 16, [\n\t\t\t\t\"id\",\n\t\t\t\t\"aria-labelledby\",\n\t\t\t\t\"hidden\"\n\t\t\t]);\n\t\t};\n\t}\n});\n\n//#endregion\n//#region src/Combobox/ComboboxGroup.vue\nvar ComboboxGroup_default = ComboboxGroup_vue_vue_type_script_setup_true_lang_default;\n\n//#endregion\nexport { ComboboxGroup_default, injectComboboxGroupContext };\n//# sourceMappingURL=ComboboxGroup.js.map","import { useComposing } from \"../shared/useComposing.js\";\nimport { usePrimitiveElement } from \"../Primitive/usePrimitiveElement.js\";\nimport { injectListboxRootContext } from \"../Listbox/ListboxRoot.js\";\nimport { ListboxFilter_default } from \"../Listbox/ListboxFilter.js\";\nimport { injectComboboxRootContext } from \"./ComboboxRoot.js\";\nimport { createBlock, defineComponent, isRef, nextTick, onMounted, openBlock, renderSlot, unref, watch, withCtx, withKeys } from \"vue\";\nimport { useVModel } from \"@vueuse/core\";\n\n//#region src/Combobox/ComboboxInput.vue?vue&type=script&setup=true&lang.ts\nvar ComboboxInput_vue_vue_type_script_setup_true_lang_default = /* @__PURE__ */ defineComponent({\n\t__name: \"ComboboxInput\",\n\tprops: {\n\t\tdisplayValue: {\n\t\t\ttype: Function,\n\t\t\trequired: false\n\t\t},\n\t\tmodelValue: {\n\t\t\ttype: String,\n\t\t\trequired: false\n\t\t},\n\t\tautoFocus: {\n\t\t\ttype: Boolean,\n\t\t\trequired: false\n\t\t},\n\t\tdisabled: {\n\t\t\ttype: Boolean,\n\t\t\trequired: false\n\t\t},\n\t\tasChild: {\n\t\t\ttype: Boolean,\n\t\t\trequired: false\n\t\t},\n\t\tas: {\n\t\t\ttype: null,\n\t\t\trequired: false,\n\t\t\tdefault: \"input\"\n\t\t}\n\t},\n\temits: [\"update:modelValue\"],\n\tsetup(__props, { emit: __emit }) {\n\t\tconst props = __props;\n\t\tconst emits = __emit;\n\t\tconst rootContext = injectComboboxRootContext();\n\t\tconst listboxContext = injectListboxRootContext();\n\t\tconst { primitiveElement, currentElement } = usePrimitiveElement();\n\t\tconst modelValue = useVModel(props, \"modelValue\", emits, { passive: props.modelValue === void 0 });\n\t\tonMounted(() => {\n\t\t\tif (currentElement.value) rootContext.onInputElementChange(currentElement.value);\n\t\t});\n\t\tconst { isComposing, shouldDeferInput, handleCompositionStart, handleCompositionUpdate, handleCompositionEnd } = useComposing((event) => {\n\t\t\tconst el = event.target;\n\t\t\tif (el) processInputValue(el.value);\n\t\t});\n\t\tfunction handleKeyDown(ev) {\n\t\t\tif (isComposing.value) return;\n\t\t\tev.preventDefault();\n\t\t\tif (!rootContext.open.value) rootContext.onOpenChange(true);\n\t\t}\n\t\tfunction processInputValue(value) {\n\t\t\tif (!rootContext.open.value) {\n\t\t\t\trootContext.onOpenChange(true);\n\t\t\t\tnextTick(() => {\n\t\t\t\t\tif (value) {\n\t\t\t\t\t\trootContext.filterSearch.value = value;\n\t\t\t\t\t\tlistboxContext.highlightFirstItem();\n\t\t\t\t\t}\n\t\t\t\t});\n\t\t\t} else rootContext.filterSearch.value = value;\n\t\t}\n\t\tfunction handleInput(event) {\n\t\t\tif (shouldDeferInput.value) return;\n\t\t\tprocessInputValue(event.target.value);\n\t\t}\n\t\tfunction handleFocus() {\n\t\t\tif (rootContext.openOnFocus.value && !rootContext.open.value) rootContext.onOpenChange(true);\n\t\t}\n\t\tfunction handleBlur(ev) {\n\t\t\tif (!rootContext.open.value) return;\n\t\t\tconst nextFocus = ev.relatedTarget;\n\t\t\tif (!nextFocus) return;\n\t\t\tconst isInsideRoot = rootContext.parentElement.value?.contains(nextFocus);\n\t\t\tconst isInsideContent = document.getElementById(rootContext.contentId)?.contains(nextFocus);\n\t\t\tif (!isInsideRoot && !isInsideContent) requestAnimationFrame(() => {\n\t\t\t\tif (!rootContext.open.value) return;\n\t\t\t\tconst active = document.activeElement;\n\t\t\t\tconst isStillOutside = !rootContext.parentElement.value?.contains(active) && !document.getElementById(rootContext.contentId)?.contains(active);\n\t\t\t\tif (isStillOutside) rootContext.onOpenChange(false);\n\t\t\t});\n\t\t}\n\t\tfunction handleClick() {\n\t\t\tif (rootContext.openOnClick.value && !rootContext.open.value) rootContext.onOpenChange(true);\n\t\t}\n\t\tfunction resetSearchTerm() {\n\t\t\tconst rootModelValue = rootContext.modelValue.value;\n\t\t\tif (props.displayValue) modelValue.value = props.displayValue(rootModelValue);\n\t\t\telse if (!rootContext.multiple.value && rootModelValue && !Array.isArray(rootModelValue)) if (typeof rootModelValue !== \"object\") modelValue.value = rootModelValue.toString();\n\t\t\telse modelValue.value = \"\";\n\t\t\telse modelValue.value = \"\";\n\t\t\tnextTick(() => {\n\t\t\t\tmodelValue.value = modelValue.value;\n\t\t\t});\n\t\t}\n\t\trootContext.onResetSearchTerm(() => {\n\t\t\tresetSearchTerm();\n\t\t});\n\t\twatch(rootContext.modelValue, async () => {\n\t\t\tif (!rootContext.isUserInputted.value && rootContext.resetSearchTermOnSelect.value) resetSearchTerm();\n\t\t}, {\n\t\t\timmediate: true,\n\t\t\tdeep: true\n\t\t});\n\t\twatch(rootContext.filterState, (_newValue, oldValue) => {\n\t\t\tif (!rootContext.isVirtual.value && oldValue.count === 0) listboxContext.highlightFirstItem();\n\t\t});\n\t\treturn (_ctx, _cache) => {\n\t\t\treturn openBlock(), createBlock(unref(ListboxFilter_default), {\n\t\t\t\tref_key: \"primitiveElement\",\n\t\t\t\tref: primitiveElement,\n\t\t\t\tmodelValue: unref(modelValue),\n\t\t\t\t\"onUpdate:modelValue\": _cache[0] || (_cache[0] = ($event) => isRef(modelValue) ? modelValue.value = $event : null),\n\t\t\t\tas: _ctx.as,\n\t\t\t\t\"as-child\": _ctx.asChild,\n\t\t\t\t\"auto-focus\": _ctx.autoFocus,\n\t\t\t\tdisabled: _ctx.disabled,\n\t\t\t\t\"aria-expanded\": unref(rootContext).open.value,\n\t\t\t\t\"aria-controls\": unref(rootContext).contentId,\n\t\t\t\t\"aria-autocomplete\": \"list\",\n\t\t\t\trole: \"combobox\",\n\t\t\t\tautocomplete: \"off\",\n\t\t\t\tonClick: handleClick,\n\t\t\t\tonInput: handleInput,\n\t\t\t\tonKeydown: withKeys(handleKeyDown, [\"down\", \"up\"]),\n\t\t\t\tonFocus: handleFocus,\n\t\t\t\tonBlur: handleBlur,\n\t\t\t\tonCompositionstart: unref(handleCompositionStart),\n\t\t\t\tonCompositionupdate: unref(handleCompositionUpdate),\n\t\t\t\tonCompositionend: unref(handleCompositionEnd)\n\t\t\t}, {\n\t\t\t\tdefault: withCtx(() => [renderSlot(_ctx.$slots, \"default\")]),\n\t\t\t\t_: 3\n\t\t\t}, 8, [\n\t\t\t\t\"modelValue\",\n\t\t\t\t\"as\",\n\t\t\t\t\"as-child\",\n\t\t\t\t\"auto-focus\",\n\t\t\t\t\"disabled\",\n\t\t\t\t\"aria-expanded\",\n\t\t\t\t\"aria-controls\",\n\t\t\t\t\"onCompositionstart\",\n\t\t\t\t\"onCompositionupdate\",\n\t\t\t\t\"onCompositionend\"\n\t\t\t]);\n\t\t};\n\t}\n});\n\n//#endregion\n//#region src/Combobox/ComboboxInput.vue\nvar ComboboxInput_default = ComboboxInput_vue_vue_type_script_setup_true_lang_default;\n\n//#endregion\nexport { ComboboxInput_default };\n//# sourceMappingURL=ComboboxInput.js.map","import { useId } from \"../shared/useId.js\";\nimport { usePrimitiveElement } from \"../Primitive/usePrimitiveElement.js\";\nimport { ListboxItem_default } from \"../Listbox/ListboxItem.js\";\nimport { injectComboboxRootContext } from \"./ComboboxRoot.js\";\nimport { injectComboboxGroupContext } from \"./ComboboxGroup.js\";\nimport { computed, createBlock, createCommentVNode, createTextVNode, defineComponent, mergeProps, onMounted, onUnmounted, openBlock, renderSlot, toDisplayString, unref, withCtx, withMemo } from \"vue\";\n\n//#region src/Combobox/ComboboxItem.vue?vue&type=script&setup=true&lang.ts\nvar ComboboxItem_vue_vue_type_script_setup_true_lang_default = /* @__PURE__ */ defineComponent({\n\t__name: \"ComboboxItem\",\n\tprops: {\n\t\ttextValue: {\n\t\t\ttype: String,\n\t\t\trequired: false\n\t\t},\n\t\tvalue: {\n\t\t\ttype: null,\n\t\t\trequired: true\n\t\t},\n\t\tdisabled: {\n\t\t\ttype: Boolean,\n\t\t\trequired: false\n\t\t},\n\t\tasChild: {\n\t\t\ttype: Boolean,\n\t\t\trequired: false\n\t\t},\n\t\tas: {\n\t\t\ttype: null,\n\t\t\trequired: false\n\t\t}\n\t},\n\temits: [\"select\"],\n\tsetup(__props, { emit: __emit }) {\n\t\tconst props = __props;\n\t\tconst emits = __emit;\n\t\tconst id = useId(void 0, \"reka-combobox-item\");\n\t\tconst rootContext = injectComboboxRootContext();\n\t\tconst groupContext = injectComboboxGroupContext(null);\n\t\tconst { primitiveElement, currentElement } = usePrimitiveElement();\n\t\tif (props.value === \"\") throw new Error(\"A <ComboboxItem /> must have a value prop that is not an empty string. This is because the Combobox value can be set to an empty string to clear the selection and show the placeholder.\");\n\t\tconst isRender = computed(() => {\n\t\t\tif (rootContext.isVirtual.value || rootContext.ignoreFilter.value || !rootContext.filterSearch.value) return true;\n\t\t\telse {\n\t\t\t\tconst filteredCurrentItem = rootContext.filterState.value.items.get(id);\n\t\t\t\tif (filteredCurrentItem === void 0) return true;\n\t\t\t\treturn filteredCurrentItem > 0;\n\t\t\t}\n\t\t});\n\t\tonMounted(() => {\n\t\t\trootContext.allItems.value.set(id, props.textValue || currentElement.value.textContent || currentElement.value.innerText);\n\t\t\tconst groupId = groupContext?.id;\n\t\t\tif (groupId) if (!rootContext.allGroups.value.has(groupId)) rootContext.allGroups.value.set(groupId, new Set([id]));\n\t\t\telse rootContext.allGroups.value.get(groupId)?.add(id);\n\t\t});\n\t\tonUnmounted(() => {\n\t\t\trootContext.allItems.value.delete(id);\n\t\t});\n\t\treturn (_ctx, _cache) => {\n\t\t\treturn isRender.value ? withMemo([\n\t\t\t\tisRender.value,\n\t\t\t\tunref(rootContext).filterSearch.value,\n\t\t\t\tunref(rootContext).disabled.value,\n\t\t\t\t_ctx.disabled,\n\t\t\t\tprops.value,\n\t\t\t\tprops.as,\n\t\t\t\tprops.asChild,\n\t\t\t\t...Object.values(_ctx.$attrs)\n\t\t\t], () => (openBlock(), createBlock(unref(ListboxItem_default), mergeProps({ key: 0 }, props, {\n\t\t\t\tid: unref(id),\n\t\t\t\tref_key: \"primitiveElement\",\n\t\t\t\tref: primitiveElement,\n\t\t\t\tdisabled: unref(rootContext).disabled.value || _ctx.disabled,\n\t\t\t\tonSelect: _cache[0] || (_cache[0] = (event) => {\n\t\t\t\t\temits(\"select\", event);\n\t\t\t\t\tif (event.defaultPrevented) return;\n\t\t\t\t\tif (!unref(rootContext).multiple.value && !_ctx.disabled && !unref(rootContext).disabled.value) {\n\t\t\t\t\t\tevent.preventDefault();\n\t\t\t\t\t\tunref(rootContext).onOpenChange(false);\n\t\t\t\t\t\tunref(rootContext).modelValue.value = props.value;\n\t\t\t\t\t} else if (unref(rootContext).multiple.value) unref(rootContext).inputElement.value?.focus();\n\t\t\t\t})\n\t\t\t}), {\n\t\t\t\tdefault: withCtx(() => [renderSlot(_ctx.$slots, \"default\", {}, () => [createTextVNode(toDisplayString(_ctx.value), 1)])]),\n\t\t\t\t_: 3\n\t\t\t}, 16, [\"id\", \"disabled\"])), _cache, 1) : createCommentVNode(\"v-if\", true);\n\t\t};\n\t}\n});\n\n//#endregion\n//#region src/Combobox/ComboboxItem.vue\nvar ComboboxItem_default = ComboboxItem_vue_vue_type_script_setup_true_lang_default;\n\n//#endregion\nexport { ComboboxItem_default };\n//# sourceMappingURL=ComboboxItem.js.map","import { ListboxItemIndicator_default } from \"../Listbox/ListboxItemIndicator.js\";\nimport { createBlock, defineComponent, guardReactiveProps, normalizeProps, openBlock, renderSlot, unref, withCtx } from \"vue\";\n\n//#region src/Combobox/ComboboxItemIndicator.vue?vue&type=script&setup=true&lang.ts\nvar ComboboxItemIndicator_vue_vue_type_script_setup_true_lang_default = /* @__PURE__ */ defineComponent({\n\t__name: \"ComboboxItemIndicator\",\n\tprops: {\n\t\tasChild: {\n\t\t\ttype: Boolean,\n\t\t\trequired: false\n\t\t},\n\t\tas: {\n\t\t\ttype: null,\n\t\t\trequired: false,\n\t\t\tdefault: \"span\"\n\t\t}\n\t},\n\tsetup(__props) {\n\t\tconst props = __props;\n\t\treturn (_ctx, _cache) => {\n\t\t\treturn openBlock(), createBlock(unref(ListboxItemIndicator_default), normalizeProps(guardReactiveProps(props)), {\n\t\t\t\tdefault: withCtx(() => [renderSlot(_ctx.$slots, \"default\")]),\n\t\t\t\t_: 3\n\t\t\t}, 16);\n\t\t};\n\t}\n});\n\n//#endregion\n//#region src/Combobox/ComboboxItemIndicator.vue\nvar ComboboxItemIndicator_default = ComboboxItemIndicator_vue_vue_type_script_setup_true_lang_default;\n\n//#endregion\nexport { ComboboxItemIndicator_default };\n//# sourceMappingURL=ComboboxItemIndicator.js.map","import { Teleport_default } from \"../Teleport/Teleport.js\";\nimport { createBlock, defineComponent, guardReactiveProps, normalizeProps, openBlock, renderSlot, unref, withCtx } from \"vue\";\n\n//#region src/Combobox/ComboboxPortal.vue?vue&type=script&setup=true&lang.ts\nvar ComboboxPortal_vue_vue_type_script_setup_true_lang_default = /* @__PURE__ */ defineComponent({\n\t__name: \"ComboboxPortal\",\n\tprops: {\n\t\tto: {\n\t\t\ttype: null,\n\t\t\trequired: false\n\t\t},\n\t\tdisabled: {\n\t\t\ttype: Boolean,\n\t\t\trequired: false\n\t\t},\n\t\tdefer: {\n\t\t\ttype: Boolean,\n\t\t\trequired: false\n\t\t},\n\t\tforceMount: {\n\t\t\ttype: Boolean,\n\t\t\trequired: false\n\t\t}\n\t},\n\tsetup(__props) {\n\t\tconst props = __props;\n\t\treturn (_ctx, _cache) => {\n\t\t\treturn openBlock(), createBlock(unref(Teleport_default), normalizeProps(guardReactiveProps(props)), {\n\t\t\t\tdefault: withCtx(() => [renderSlot(_ctx.$slots, \"default\")]),\n\t\t\t\t_: 3\n\t\t\t}, 16);\n\t\t};\n\t}\n});\n\n//#endregion\n//#region src/Combobox/ComboboxPortal.vue\nvar ComboboxPortal_default = ComboboxPortal_vue_vue_type_script_setup_true_lang_default;\n\n//#endregion\nexport { ComboboxPortal_default };\n//# sourceMappingURL=ComboboxPortal.js.map","import { useForwardExpose } from \"../shared/useForwardExpose.js\";\nimport { Primitive } from \"../Primitive/Primitive.js\";\nimport { injectComboboxRootContext } from \"./ComboboxRoot.js\";\nimport { computed, createBlock, defineComponent, mergeProps, onMounted, openBlock, renderSlot, unref, withCtx } from \"vue\";\n\n//#region src/Combobox/ComboboxTrigger.vue?vue&type=script&setup=true&lang.ts\nvar ComboboxTrigger_vue_vue_type_script_setup_true_lang_default = /* @__PURE__ */ defineComponent({\n\t__name: \"ComboboxTrigger\",\n\tprops: {\n\t\tdisabled: {\n\t\t\ttype: Boolean,\n\t\t\trequired: false\n\t\t},\n\t\tasChild: {\n\t\t\ttype: Boolean,\n\t\t\trequired: false\n\t\t},\n\t\tas: {\n\t\t\ttype: null,\n\t\t\trequired: false,\n\t\t\tdefault: \"button\"\n\t\t}\n\t},\n\tsetup(__props) {\n\t\tconst props = __props;\n\t\tconst { forwardRef, currentElement } = useForwardExpose();\n\t\tconst rootContext = injectComboboxRootContext();\n\t\tconst disabled = computed(() => props.disabled || rootContext.disabled.value || false);\n\t\tonMounted(() => {\n\t\t\tif (currentElement.value) rootContext.onTriggerElementChange(currentElement.value);\n\t\t});\n\t\treturn (_ctx, _cache) => {\n\t\t\treturn openBlock(), createBlock(unref(Primitive), mergeProps(props, {\n\t\t\t\tref: unref(forwardRef),\n\t\t\t\ttype: _ctx.as === \"button\" ? \"button\" : void 0,\n\t\t\t\ttabindex: \"-1\",\n\t\t\t\t\"aria-label\": \"Show popup\",\n\t\t\t\t\"aria-haspopup\": \"listbox\",\n\t\t\t\t\"aria-expanded\": unref(rootContext).open.value,\n\t\t\t\t\"aria-controls\": unref(rootContext).contentId,\n\t\t\t\t\"data-state\": unref(rootContext).open.value ? \"open\" : \"closed\",\n\t\t\t\tdisabled: disabled.value,\n\t\t\t\t\"data-disabled\": disabled.value ? \"\" : void 0,\n\t\t\t\t\"aria-disabled\": disabled.value ?? void 0,\n\t\t\t\tonClick: _cache[0] || (_cache[0] = ($event) => unref(rootContext).onOpenChange(!unref(rootContext).open.value))\n\t\t\t}), {\n\t\t\t\tdefault: withCtx(() => [renderSlot(_ctx.$slots, \"default\")]),\n\t\t\t\t_: 3\n\t\t\t}, 16, [\n\t\t\t\t\"type\",\n\t\t\t\t\"aria-expanded\",\n\t\t\t\t\"aria-controls\",\n\t\t\t\t\"data-state\",\n\t\t\t\t\"disabled\",\n\t\t\t\t\"data-disabled\",\n\t\t\t\t\"aria-disabled\"\n\t\t\t]);\n\t\t};\n\t}\n});\n\n//#endregion\n//#region src/Combobox/ComboboxTrigger.vue\nvar ComboboxTrigger_default = ComboboxTrigger_vue_vue_type_script_setup_true_lang_default;\n\n//#endregion\nexport { ComboboxTrigger_default };\n//# sourceMappingURL=ComboboxTrigger.js.map","import { injectConfigProviderContext } from \"../ConfigProvider/ConfigProvider.js\";\nimport { computed, ref } from \"vue\";\n\n//#region src/shared/useNonce.ts\nfunction useNonce(nonce) {\n\tconst context = injectConfigProviderContext({ nonce: ref() });\n\treturn computed(() => nonce?.value || context.nonce?.value);\n}\n\n//#endregion\nexport { useNonce };\n//# sourceMappingURL=useNonce.js.map","import { useForwardExpose } from \"../shared/useForwardExpose.js\";\nimport { Primitive } from \"../Primitive/Primitive.js\";\nimport { injectComboboxRootContext } from \"./ComboboxRoot.js\";\nimport { useNonce } from \"../shared/useNonce.js\";\nimport { Fragment, createElementBlock, createTextVNode, createVNode, defineComponent, mergeProps, openBlock, renderSlot, toRefs, unref, withCtx } from \"vue\";\n\n//#region src/Combobox/ComboboxViewport.vue?vue&type=script&setup=true&lang.ts\nvar ComboboxViewport_vue_vue_type_script_setup_true_lang_default = /* @__PURE__ */ defineComponent({\n\t__name: \"ComboboxViewport\",\n\tprops: {\n\t\tnonce: {\n\t\t\ttype: String,\n\t\t\trequired: false\n\t\t},\n\t\tasChild: {\n\t\t\ttype: Boolean,\n\t\t\trequired: false\n\t\t},\n\t\tas: {\n\t\t\ttype: null,\n\t\t\trequired: false\n\t\t}\n\t},\n\tsetup(__props) {\n\t\tconst props = __props;\n\t\tconst { forwardRef } = useForwardExpose();\n\t\tconst { nonce: propNonce } = toRefs(props);\n\t\tconst nonce = useNonce(propNonce);\n\t\tconst rootContext = injectComboboxRootContext();\n\t\treturn (_ctx, _cache) => {\n\t\t\treturn openBlock(), createElementBlock(Fragment, null, [createVNode(unref(Primitive), mergeProps({\n\t\t\t\t..._ctx.$attrs,\n\t\t\t\t...props\n\t\t\t}, {\n\t\t\t\tref: unref(forwardRef),\n\t\t\t\t\"data-reka-combobox-viewport\": \"\",\n\t\t\t\trole: \"presentation\",\n\t\t\t\tstyle: {\n\t\t\t\t\tposition: \"relative\",\n\t\t\t\t\tflex: unref(rootContext).isVirtual.value ? void 0 : 1,\n\t\t\t\t\toverflow: \"auto\"\n\t\t\t\t}\n\t\t\t}), {\n\t\t\t\tdefault: withCtx(() => [renderSlot(_ctx.$slots, \"default\")]),\n\t\t\t\t_: 3\n\t\t\t}, 16, [\"style\"]), createVNode(unref(Primitive), {\n\t\t\t\tas: \"style\",\n\t\t\t\tnonce: unref(nonce)\n\t\t\t}, {\n\t\t\t\tdefault: withCtx(() => _cache[0] || (_cache[0] = [createTextVNode(\" /* Hide scrollbars cross-browser and enable momentum scroll for touch devices */ [data-reka-combobox-viewport] { scrollbar-width:none; -ms-overflow-style: none; -webkit-overflow-scrolling: touch; } [data-reka-combobox-viewport]::-webkit-scrollbar { display: none; } \")])),\n\t\t\t\t_: 1,\n\t\t\t\t__: [0]\n\t\t\t}, 8, [\"nonce\"])], 64);\n\t\t};\n\t}\n});\n\n//#endregion\n//#region src/Combobox/ComboboxViewport.vue\nvar ComboboxViewport_default = ComboboxViewport_vue_vue_type_script_setup_true_lang_default;\n\n//#endregion\nexport { ComboboxViewport_default };\n//# sourceMappingURL=ComboboxViewport.js.map","<template>\n <ComboboxRoot\n v-model=\"modelValue\"\n v-model:open=\"isOpen\"\n :multiple=\"props.multiple\"\n :disabled=\"props.disabled\"\n :name=\"props.name\"\n :required=\"props.required\"\n :ignore-filter=\"props.multiple || !!props.filterFunction\"\n :reset-search-term-on-select=\"props.resetSearchTermOnSelect\"\n :reset-search-term-on-blur=\"props.resetSearchTermOnBlur\"\n :by=\"props.by\"\n :dir=\"props.dir\"\n :open-on-focus=\"props.openOnFocus\"\n class=\"b-autocomplete\"\n >\n <ComboboxAnchor as-child>\n <BInputGroup :size=\"props.size\">\n <!-- Selected values display (multiple mode only, hidden when empty) -->\n <div\n v-if=\"props.multiple && hasSelection\"\n class=\"b-autocomplete-selection\"\n :class=\"{\n 'b-autocomplete-selection-tags': props.tags,\n 'b-autocomplete-selection-pending-delete': pendingDelete,\n }\"\n >\n <slot\n v-if=\"props.tags\"\n name=\"tags\"\n :pending-delete\n :selected=\"selectedOptions\"\n :remove=\"removeSelected\"\n >\n <BFormTag\n v-for=\"(opt, i) in selectedOptions\"\n :key=\"optionKey(opt, i)\"\n :title=\"String(opt.text)\"\n :disabled=\"props.disabled\"\n :variant=\"'secondary'\"\n :class=\"{\n 'b-autocomplete-tag-muted': pendingDelete && !isLastSelectedOption(opt, i),\n 'b-autocomplete-tag-pending-delete': pendingDelete && isLastSelectedOption(opt, i),\n }\"\n @remove=\"removeSelected(opt)\"\n >\n {{ opt.text }}\n </BFormTag>\n </slot>\n <template v-else>\n <span\n v-for=\"(opt, i) in selectedOptions\"\n :key=\"optionKey(opt, i)\"\n :class=\"{\n 'text-body-tertiary': pendingDelete && !isLastSelectedOption(opt, i),\n }\"\n >{{ opt.text }}<span v-if=\"i < selectedOptions.length - 1\">, </span></span\n >\n </template>\n </div>\n\n <!-- Search input (always present) -->\n <div class=\"b-autocomplete-input-wrapper\">\n <ComboboxInput v-model=\"searchTerm\" as-child :display-value=\"displayValueFn\">\n <slot name=\"input\" v-bind=\"comboboxInputProps\" :search-term>\n <BFormInput\n ref=\"_input\"\n :model-value=\"searchTerm\"\n v-bind=\"comboboxInputProps\"\n :class=\"{'b-autocomplete-input-clearable': showClearButton}\"\n />\n </slot>\n </ComboboxInput>\n <BCloseButton\n v-if=\"showClearButton\"\n class=\"b-autocomplete-clear\"\n :aria-label=\"'Clear selected value'\"\n @click.stop=\"clearSelection\"\n />\n </div>\n\n <template #append>\n <ComboboxTrigger v-if=\"!props.noToggle\" as-child :disabled=\"props.disabled\">\n <slot name=\"toggle\" :is-open :disabled=\"props.disabled\">\n <BButton class=\"b-autocomplete-trigger\" :disabled=\"props.disabled\">\n <slot name=\"toggle-icon\" :is-open>\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"16\"\n height=\"16\"\n fill=\"currentColor\"\n viewBox=\"0 0 16 16\"\n class=\"b-autocomplete-chevron\"\n :class=\"{'b-autocomplete-chevron-open': isOpen}\"\n >\n <path\n fill-rule=\"evenodd\"\n d=\"M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z\"\n />\n </svg>\n </slot>\n </BButton>\n </slot>\n </ComboboxTrigger>\n </template>\n </BInputGroup>\n </ComboboxAnchor>\n\n <ComboboxPortal :disabled=\"!props.teleportTo\" :to=\"props.teleportTo\">\n <ComboboxContent\n position=\"popper\"\n :side-offset=\"4\"\n :align=\"'start'\"\n :class=\"['b-autocomplete-content', 'dropdown-menu', 'show']\"\n :body-lock=\"false\"\n :style=\"{width: 'var(--reka-combobox-trigger-width)'}\"\n >\n <ComboboxViewport class=\"b-autocomplete-viewport\">\n <ComboboxEmpty class=\"b-autocomplete-empty\">\n <slot name=\"empty\"> No results found </slot>\n </ComboboxEmpty>\n\n <ComboboxItem\n v-for=\"(option, index) in filteredOptions\"\n :key=\"optionKey(option, index)\"\n :value=\"option.value as AcceptableValue\"\n :disabled=\"option.disabled\"\n :class=\"['b-autocomplete-item', 'dropdown-item']\"\n @select=\"onOptionSelect(option)\"\n >\n <slot name=\"option\" v-bind=\"option\">\n {{ option.text }}\n </slot>\n <ComboboxItemIndicator class=\"b-autocomplete-item-indicator\">\n <slot name=\"option-indicator\">\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"16\"\n height=\"16\"\n fill=\"currentColor\"\n viewBox=\"0 0 16 16\"\n >\n <path\n d=\"M13.854 3.646a.5.5 0 0 1 0 .708l-7 7a.5.5 0 0 1-.708 0l-3.5-3.5a.5.5 0 1 1 .708-.708L6.5 10.293l6.646-6.647a.5.5 0 0 1 .708 0z\"\n />\n </svg>\n </slot>\n </ComboboxItemIndicator>\n </ComboboxItem>\n </ComboboxViewport>\n </ComboboxContent>\n </ComboboxPortal>\n </ComboboxRoot>\n</template>\n\n<script setup lang=\"ts\">\nimport {computed, type ComputedRef, nextTick, ref, useTemplateRef} from 'vue'\nimport type {AcceptableValue} from 'reka-ui'\nimport {\n ComboboxAnchor,\n ComboboxContent,\n ComboboxEmpty,\n ComboboxInput,\n ComboboxItem,\n ComboboxItemIndicator,\n ComboboxPortal,\n ComboboxRoot,\n ComboboxTrigger,\n ComboboxViewport,\n} from 'reka-ui'\nimport {useDefaults} from '../../composables/useDefaults'\nimport type {\n BAutocompleteEmits,\n BAutocompleteProps,\n BAutocompleteSlots,\n SelectOption,\n} from '../../types'\nimport {useId} from '../../composables/useId'\nimport BInputGroup from '../BInputGroup/BInputGroup.vue'\nimport BButton from '../BButton/BButton.vue'\nimport BFormInput from '../BFormInput/BFormInput.vue'\nimport BFormTag from '../BFormTags/BFormTag.vue'\nimport BCloseButton from '../BButton/BCloseButton.vue'\nimport {useFormSelect} from '../../composables/useFormSelect'\nimport {useAriaInvalid} from '../../composables/useAriaInvalid'\n\nconst _props = withDefaults(defineProps<Omit<BAutocompleteProps, 'modelValue' | 'search'>>(), {\n ariaInvalid: undefined,\n autocomplete: undefined,\n autofocus: false,\n disabled: false,\n form: undefined,\n formatter: undefined,\n id: undefined,\n lazyFormatter: false,\n placeholder: undefined,\n plaintext: false,\n readonly: false,\n required: false,\n size: undefined,\n state: undefined,\n by: undefined,\n dir: undefined,\n disabledField: 'disabled',\n filterFunction: undefined,\n multiple: false,\n name: undefined,\n noClearButton: false,\n noToggle: false,\n openOnFocus: false,\n options: () => [],\n resetSearchTermOnBlur: true,\n resetSearchTermOnSelect: true,\n tags: false,\n teleportTo: undefined,\n textField: 'text',\n valueField: 'value',\n})\nconst props = useDefaults(_props, 'BAutocomplete')\nconst emit = defineEmits<BAutocompleteEmits>()\ndefineSlots<BAutocompleteSlots>()\n\nconst _input = useTemplateRef('_input')\n\nconst modelValue = defineModel<BAutocompleteProps['modelValue']>({\n default: undefined,\n})\nconst isOpen = defineModel<Exclude<BAutocompleteProps['open'], undefined>>('open', {default: false})\nconst searchTerm = defineModel<Exclude<BAutocompleteProps['search'], undefined>>('search', {\n default: '',\n})\n\n// Backspace-to-delete state for multiple mode\nconst pendingDelete = ref(false)\n\nconst computedId = useId(() => props.id, 'autocomplete')\n\nconst {normalizedOptions} = useFormSelect(() => props.options, props) as {\n normalizedOptions: ComputedRef<SelectOption[]>\n}\n\nconst singleSelectedLabelCache = ref<{key: string; text: string} | null>(null)\n\nconst getLookupKey = (val: AcceptableValue): string | undefined => {\n if (props.by && typeof props.by === 'string' && val !== null && typeof val === 'object') {\n const byVal = (val as Record<string, unknown>)?.[props.by]\n return byVal === undefined ? undefined : `by:${String(byVal)}`\n }\n\n if (val !== null && val !== undefined && typeof val !== 'object') {\n return `value:${String(val)}`\n }\n\n return undefined\n}\n\nconst cacheSingleSelectedLabel = (val: AcceptableValue, text: string | undefined) => {\n const key = getLookupKey(val)\n if (!key) return\n singleSelectedLabelCache.value = {key, text: String(text ?? '')}\n}\n// Run this immediately\nif (\n !props.multiple &&\n modelValue.value !== null &&\n modelValue.value !== undefined &&\n searchTerm.value !== ''\n) {\n cacheSingleSelectedLabel(modelValue.value as AcceptableValue, searchTerm.value)\n}\n\nconst findOptionText = (val: AcceptableValue): string => {\n const match = normalizedOptions.value.find((opt) => {\n if (props.by && typeof props.by === 'string') {\n return (\n (opt.value as Record<string, unknown>)?.[props.by] ===\n (val as Record<string, unknown>)?.[props.by]\n )\n }\n return opt.value === val\n })\n if (match) {\n const resolvedText = String(match.text)\n cacheSingleSelectedLabel(val, resolvedText)\n return resolvedText\n }\n\n const lookupKey = getLookupKey(val)\n if (lookupKey && singleSelectedLabelCache.value?.key === lookupKey) {\n return singleSelectedLabelCache.value.text\n }\n\n return String(val)\n}\n\n// Filter options — for multiple mode, always uses searchTerm which is purely a search query\nconst filteredOptions = computed(() => {\n const filterText = searchTerm.value\n if (props.filterFunction) {\n return props.filterFunction(normalizedOptions.value, filterText)\n }\n if (!filterText) return normalizedOptions.value\n const term = filterText.toLowerCase()\n return normalizedOptions.value.filter((opt) => String(opt.text).toLowerCase().includes(term))\n})\n\n// Display value for single select mode (reka-ui calls this on selection)\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nconst displayValueFn = (val: any) => {\n if (val === null || val === undefined) return ''\n if (props.multiple) return '' // Multiple mode uses the separate display element\n return findOptionText(val)\n}\n\n// Whether there are selected values in multiple mode\nconst hasSelection = computed(() => {\n const currentValue = modelValue.value\n if (Array.isArray(currentValue)) return currentValue.length > 0\n return currentValue !== null && currentValue !== undefined\n})\n\nconst computedAriaInvalid = useAriaInvalid(\n () => props.ariaInvalid,\n () => props.state\n)\n\n// Resolved option objects for tags mode\nconst selectedOptions = computed<SelectOption[]>(() => {\n if (!props.multiple || !modelValue.value) return []\n const selected = Array.isArray(modelValue.value) ? modelValue.value : [modelValue.value]\n return selected\n .map((val) =>\n normalizedOptions.value.find((opt) => {\n if (props.by && typeof props.by === 'string') {\n return (\n (opt.value as Record<string, unknown>)?.[props.by] ===\n (val as Record<string, unknown>)?.[props.by]\n )\n }\n return opt.value === val\n })\n )\n .filter((opt): opt is SelectOption => !!opt)\n})\n\nconst removeSelected = (option: SelectOption) => {\n if (!Array.isArray(modelValue.value)) return\n modelValue.value = modelValue.value.filter((val) => {\n if (props.by && typeof props.by === 'string') {\n return (\n (val as Record<string, unknown>)?.[props.by] !==\n (option.value as Record<string, unknown>)?.[props.by]\n )\n }\n return val !== option.value\n })\n emit('change', modelValue.value)\n}\n\nconst optionKey = (option: SelectOption, index: number) => {\n const val = option.value\n if (val !== null && val !== undefined && typeof val !== 'object') return String(val)\n return index\n}\n\nconst isLastSelectedOption = (_opt: SelectOption, index: number): boolean =>\n index === selectedOptions.value.length - 1\n\nconst showClearButton = computed(\n () =>\n !props.required &&\n !props.noClearButton &&\n !props.disabled &&\n !props.readonly &&\n hasSelection.value\n)\n\nconst clearSelection = () => {\n modelValue.value = props.multiple ? [] : undefined\n searchTerm.value = ''\n singleSelectedLabelCache.value = null\n emit('clear')\n emit('change', modelValue.value)\n _input.value?.focus()\n}\n\nconst onOptionSelect = (option: SelectOption) => {\n cacheSingleSelectedLabel(option.value as AcceptableValue, String(option.text))\n // nextTick is required here because reka-ui updates the modelValue asynchronously\n // via its internal state management; in clearSelection and removeSelected we set\n // modelValue.value directly, so the value is already up-to-date before emitting.\n nextTick(() => {\n emit('change', modelValue.value)\n })\n _input.value?.focus()\n}\n\nconst resetPendingDelete = () => {\n pendingDelete.value = false\n}\nconst onInputKeydown = (event: KeyboardEvent) => {\n if (!props.multiple || !hasSelection.value) {\n resetPendingDelete()\n return\n }\n\n if (event.key === 'Backspace' && searchTerm.value === '') {\n if (pendingDelete.value) {\n // Second backspace — delete the last selected item\n const lastOpt = selectedOptions.value[selectedOptions.value.length - 1]\n if (lastOpt) {\n removeSelected(lastOpt)\n }\n pendingDelete.value = false\n } else {\n // First backspace — prime for deletion\n pendingDelete.value = true\n }\n return\n }\n\n // Any other key resets the pending delete state\n if (pendingDelete.value) {\n resetPendingDelete()\n }\n}\n\nconst comboboxInputProps = computed<\n Omit<Parameters<Exclude<BAutocompleteSlots['input'], undefined>>[0], 'searchTerm'>\n>(() => ({\n 'id': computedId.value,\n 'disabled': props.disabled,\n 'form': props.form || undefined,\n 'placeholder': props.placeholder,\n 'readonly': props.readonly || props.plaintext,\n 'required': props.required || undefined,\n 'autocomplete': props.autocomplete || undefined,\n 'plaintext': props.plaintext,\n 'size': props.size,\n 'state': props.state,\n 'aria-invalid': computedAriaInvalid.value,\n 'aria-required': props.required || undefined,\n 'onBlur': (event: FocusEvent) => emit('blur', event),\n 'onFocus': (event: FocusEvent) => emit('focus', event),\n 'onKeydown': (event: KeyboardEvent) => onInputKeydown(event),\n}))\n\ndefineExpose({\n blur: () => _input.value?.blur(),\n element: computed(() => _input.value?.element?.value ?? null),\n focus: () => _input.value?.focus(),\n})\n</script>\n","<template>\n <ComboboxRoot\n v-model=\"modelValue\"\n v-model:open=\"isOpen\"\n :multiple=\"props.multiple\"\n :disabled=\"props.disabled\"\n :name=\"props.name\"\n :required=\"props.required\"\n :ignore-filter=\"props.multiple || !!props.filterFunction\"\n :reset-search-term-on-select=\"props.resetSearchTermOnSelect\"\n :reset-search-term-on-blur=\"props.resetSearchTermOnBlur\"\n :by=\"props.by\"\n :dir=\"props.dir\"\n :open-on-focus=\"props.openOnFocus\"\n class=\"b-autocomplete\"\n >\n <ComboboxAnchor as-child>\n <BInputGroup :size=\"props.size\">\n <!-- Selected values display (multiple mode only, hidden when empty) -->\n <div\n v-if=\"props.multiple && hasSelection\"\n class=\"b-autocomplete-selection\"\n :class=\"{\n 'b-autocomplete-selection-tags': props.tags,\n 'b-autocomplete-selection-pending-delete': pendingDelete,\n }\"\n >\n <slot\n v-if=\"props.tags\"\n name=\"tags\"\n :pending-delete\n :selected=\"selectedOptions\"\n :remove=\"removeSelected\"\n >\n <BFormTag\n v-for=\"(opt, i) in selectedOptions\"\n :key=\"optionKey(opt, i)\"\n :title=\"String(opt.text)\"\n :disabled=\"props.disabled\"\n :variant=\"'secondary'\"\n :class=\"{\n 'b-autocomplete-tag-muted': pendingDelete && !isLastSelectedOption(opt, i),\n 'b-autocomplete-tag-pending-delete': pendingDelete && isLastSelectedOption(opt, i),\n }\"\n @remove=\"removeSelected(opt)\"\n >\n {{ opt.text }}\n </BFormTag>\n </slot>\n <template v-else>\n <span\n v-for=\"(opt, i) in selectedOptions\"\n :key=\"optionKey(opt, i)\"\n :class=\"{\n 'text-body-tertiary': pendingDelete && !isLastSelectedOption(opt, i),\n }\"\n >{{ opt.text }}<span v-if=\"i < selectedOptions.length - 1\">, </span></span\n >\n </template>\n </div>\n\n <!-- Search input (always present) -->\n <div class=\"b-autocomplete-input-wrapper\">\n <ComboboxInput v-model=\"searchTerm\" as-child :display-value=\"displayValueFn\">\n <slot name=\"input\" v-bind=\"comboboxInputProps\" :search-term>\n <BFormInput\n ref=\"_input\"\n :model-value=\"searchTerm\"\n v-bind=\"comboboxInputProps\"\n :class=\"{'b-autocomplete-input-clearable': showClearButton}\"\n />\n </slot>\n </ComboboxInput>\n <BCloseButton\n v-if=\"showClearButton\"\n class=\"b-autocomplete-clear\"\n :aria-label=\"'Clear selected value'\"\n @click.stop=\"clearSelection\"\n />\n </div>\n\n <template #append>\n <ComboboxTrigger v-if=\"!props.noToggle\" as-child :disabled=\"props.disabled\">\n <slot name=\"toggle\" :is-open :disabled=\"props.disabled\">\n <BButton class=\"b-autocomplete-trigger\" :disabled=\"props.disabled\">\n <slot name=\"toggle-icon\" :is-open>\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"16\"\n height=\"16\"\n fill=\"currentColor\"\n viewBox=\"0 0 16 16\"\n class=\"b-autocomplete-chevron\"\n :class=\"{'b-autocomplete-chevron-open': isOpen}\"\n >\n <path\n fill-rule=\"evenodd\"\n d=\"M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z\"\n />\n </svg>\n </slot>\n </BButton>\n </slot>\n </ComboboxTrigger>\n </template>\n </BInputGroup>\n </ComboboxAnchor>\n\n <ComboboxPortal :disabled=\"!props.teleportTo\" :to=\"props.teleportTo\">\n <ComboboxContent\n position=\"popper\"\n :side-offset=\"4\"\n :align=\"'start'\"\n :class=\"['b-autocomplete-content', 'dropdown-menu', 'show']\"\n :body-lock=\"false\"\n :style=\"{width: 'var(--reka-combobox-trigger-width)'}\"\n >\n <ComboboxViewport class=\"b-autocomplete-viewport\">\n <ComboboxEmpty class=\"b-autocomplete-empty\">\n <slot name=\"empty\"> No results found </slot>\n </ComboboxEmpty>\n\n <ComboboxItem\n v-for=\"(option, index) in filteredOptions\"\n :key=\"optionKey(option, index)\"\n :value=\"option.value as AcceptableValue\"\n :disabled=\"option.disabled\"\n :class=\"['b-autocomplete-item', 'dropdown-item']\"\n @select=\"onOptionSelect(option)\"\n >\n <slot name=\"option\" v-bind=\"option\">\n {{ option.text }}\n </slot>\n <ComboboxItemIndicator class=\"b-autocomplete-item-indicator\">\n <slot name=\"option-indicator\">\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"16\"\n height=\"16\"\n fill=\"currentColor\"\n viewBox=\"0 0 16 16\"\n >\n <path\n d=\"M13.854 3.646a.5.5 0 0 1 0 .708l-7 7a.5.5 0 0 1-.708 0l-3.5-3.5a.5.5 0 1 1 .708-.708L6.5 10.293l6.646-6.647a.5.5 0 0 1 .708 0z\"\n />\n </svg>\n </slot>\n </ComboboxItemIndicator>\n </ComboboxItem>\n </ComboboxViewport>\n </ComboboxContent>\n </ComboboxPortal>\n </ComboboxRoot>\n</template>\n\n<script setup lang=\"ts\">\nimport {computed, type ComputedRef, nextTick, ref, useTemplateRef} from 'vue'\nimport type {AcceptableValue} from 'reka-ui'\nimport {\n ComboboxAnchor,\n ComboboxContent,\n ComboboxEmpty,\n ComboboxInput,\n ComboboxItem,\n ComboboxItemIndicator,\n ComboboxPortal,\n ComboboxRoot,\n ComboboxTrigger,\n ComboboxViewport,\n} from 'reka-ui'\nimport {useDefaults} from '../../composables/useDefaults'\nimport type {\n BAutocompleteEmits,\n BAutocompleteProps,\n BAutocompleteSlots,\n SelectOption,\n} from '../../types'\nimport {useId} from '../../composables/useId'\nimport BInputGroup from '../BInputGroup/BInputGroup.vue'\nimport BButton from '../BButton/BButton.vue'\nimport BFormInput from '../BFormInput/BFormInput.vue'\nimport BFormTag from '../BFormTags/BFormTag.vue'\nimport BCloseButton from '../BButton/BCloseButton.vue'\nimport {useFormSelect} from '../../composables/useFormSelect'\nimport {useAriaInvalid} from '../../composables/useAriaInvalid'\n\nconst _props = withDefaults(defineProps<Omit<BAutocompleteProps, 'modelValue' | 'search'>>(), {\n ariaInvalid: undefined,\n autocomplete: undefined,\n autofocus: false,\n disabled: false,\n form: undefined,\n formatter: undefined,\n id: undefined,\n lazyFormatter: false,\n placeholder: undefined,\n plaintext: false,\n readonly: false,\n required: false,\n size: undefined,\n state: undefined,\n by: undefined,\n dir: undefined,\n disabledField: 'disabled',\n filterFunction: undefined,\n multiple: false,\n name: undefined,\n noClearButton: false,\n noToggle: false,\n openOnFocus: false,\n options: () => [],\n resetSearchTermOnBlur: true,\n resetSearchTermOnSelect: true,\n tags: false,\n teleportTo: undefined,\n textField: 'text',\n valueField: 'value',\n})\nconst props = useDefaults(_props, 'BAutocomplete')\nconst emit = defineEmits<BAutocompleteEmits>()\ndefineSlots<BAutocompleteSlots>()\n\nconst _input = useTemplateRef('_input')\n\nconst modelValue = defineModel<BAutocompleteProps['modelValue']>({\n default: undefined,\n})\nconst isOpen = defineModel<Exclude<BAutocompleteProps['open'], undefined>>('open', {default: false})\nconst searchTerm = defineModel<Exclude<BAutocompleteProps['search'], undefined>>('search', {\n default: '',\n})\n\n// Backspace-to-delete state for multiple mode\nconst pendingDelete = ref(false)\n\nconst computedId = useId(() => props.id, 'autocomplete')\n\nconst {normalizedOptions} = useFormSelect(() => props.options, props) as {\n normalizedOptions: ComputedRef<SelectOption[]>\n}\n\nconst singleSelectedLabelCache = ref<{key: string; text: string} | null>(null)\n\nconst getLookupKey = (val: AcceptableValue): string | undefined => {\n if (props.by && typeof props.by === 'string' && val !== null && typeof val === 'object') {\n const byVal = (val as Record<string, unknown>)?.[props.by]\n return byVal === undefined ? undefined : `by:${String(byVal)}`\n }\n\n if (val !== null && val !== undefined && typeof val !== 'object') {\n return `value:${String(val)}`\n }\n\n return undefined\n}\n\nconst cacheSingleSelectedLabel = (val: AcceptableValue, text: string | undefined) => {\n const key = getLookupKey(val)\n if (!key) return\n singleSelectedLabelCache.value = {key, text: String(text ?? '')}\n}\n// Run this immediately\nif (\n !props.multiple &&\n modelValue.value !== null &&\n modelValue.value !== undefined &&\n searchTerm.value !== ''\n) {\n cacheSingleSelectedLabel(modelValue.value as AcceptableValue, searchTerm.value)\n}\n\nconst findOptionText = (val: AcceptableValue): string => {\n const match = normalizedOptions.value.find((opt) => {\n if (props.by && typeof props.by === 'string') {\n return (\n (opt.value as Record<string, unknown>)?.[props.by] ===\n (val as Record<string, unknown>)?.[props.by]\n )\n }\n return opt.value === val\n })\n if (match) {\n const resolvedText = String(match.text)\n cacheSingleSelectedLabel(val, resolvedText)\n return resolvedText\n }\n\n const lookupKey = getLookupKey(val)\n if (lookupKey && singleSelectedLabelCache.value?.key === lookupKey) {\n return singleSelectedLabelCache.value.text\n }\n\n return String(val)\n}\n\n// Filter options — for multiple mode, always uses searchTerm which is purely a search query\nconst filteredOptions = computed(() => {\n const filterText = searchTerm.value\n if (props.filterFunction) {\n return props.filterFunction(normalizedOptions.value, filterText)\n }\n if (!filterText) return normalizedOptions.value\n const term = filterText.toLowerCase()\n return normalizedOptions.value.filter((opt) => String(opt.text).toLowerCase().includes(term))\n})\n\n// Display value for single select mode (reka-ui calls this on selection)\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nconst displayValueFn = (val: any) => {\n if (val === null || val === undefined) return ''\n if (props.multiple) return '' // Multiple mode uses the separate display element\n return findOptionText(val)\n}\n\n// Whether there are selected values in multiple mode\nconst hasSelection = computed(() => {\n const currentValue = modelValue.value\n if (Array.isArray(currentValue)) return currentValue.length > 0\n return currentValue !== null && currentValue !== undefined\n})\n\nconst computedAriaInvalid = useAriaInvalid(\n () => props.ariaInvalid,\n () => props.state\n)\n\n// Resolved option objects for tags mode\nconst selectedOptions = computed<SelectOption[]>(() => {\n if (!props.multiple || !modelValue.value) return []\n const selected = Array.isArray(modelValue.value) ? modelValue.value : [modelValue.value]\n return selected\n .map((val) =>\n normalizedOptions.value.find((opt) => {\n if (props.by && typeof props.by === 'string') {\n return (\n (opt.value as Record<string, unknown>)?.[props.by] ===\n (val as Record<string, unknown>)?.[props.by]\n )\n }\n return opt.value === val\n })\n )\n .filter((opt): opt is SelectOption => !!opt)\n})\n\nconst removeSelected = (option: SelectOption) => {\n if (!Array.isArray(modelValue.value)) return\n modelValue.value = modelValue.value.filter((val) => {\n if (props.by && typeof props.by === 'string') {\n return (\n (val as Record<string, unknown>)?.[props.by] !==\n (option.value as Record<string, unknown>)?.[props.by]\n )\n }\n return val !== option.value\n })\n emit('change', modelValue.value)\n}\n\nconst optionKey = (option: SelectOption, index: number) => {\n const val = option.value\n if (val !== null && val !== undefined && typeof val !== 'object') return String(val)\n return index\n}\n\nconst isLastSelectedOption = (_opt: SelectOption, index: number): boolean =>\n index === selectedOptions.value.length - 1\n\nconst showClearButton = computed(\n () =>\n !props.required &&\n !props.noClearButton &&\n !props.disabled &&\n !props.readonly &&\n hasSelection.value\n)\n\nconst clearSelection = () => {\n modelValue.value = props.multiple ? [] : undefined\n searchTerm.value = ''\n singleSelectedLabelCache.value = null\n emit('clear')\n emit('change', modelValue.value)\n _input.value?.focus()\n}\n\nconst onOptionSelect = (option: SelectOption) => {\n cacheSingleSelectedLabel(option.value as AcceptableValue, String(option.text))\n // nextTick is required here because reka-ui updates the modelValue asynchronously\n // via its internal state management; in clearSelection and removeSelected we set\n // modelValue.value directly, so the value is already up-to-date before emitting.\n nextTick(() => {\n emit('change', modelValue.value)\n })\n _input.value?.focus()\n}\n\nconst resetPendingDelete = () => {\n pendingDelete.value = false\n}\nconst onInputKeydown = (event: KeyboardEvent) => {\n if (!props.multiple || !hasSelection.value) {\n resetPendingDelete()\n return\n }\n\n if (event.key === 'Backspace' && searchTerm.value === '') {\n if (pendingDelete.value) {\n // Second backspace — delete the last selected item\n const lastOpt = selectedOptions.value[selectedOptions.value.length - 1]\n if (lastOpt) {\n removeSelected(lastOpt)\n }\n pendingDelete.value = false\n } else {\n // First backspace — prime for deletion\n pendingDelete.value = true\n }\n return\n }\n\n // Any other key resets the pending delete state\n if (pendingDelete.value) {\n resetPendingDelete()\n }\n}\n\nconst comboboxInputProps = computed<\n Omit<Parameters<Exclude<BAutocompleteSlots['input'], undefined>>[0], 'searchTerm'>\n>(() => ({\n 'id': computedId.value,\n 'disabled': props.disabled,\n 'form': props.form || undefined,\n 'placeholder': props.placeholder,\n 'readonly': props.readonly || props.plaintext,\n 'required': props.required || undefined,\n 'autocomplete': props.autocomplete || undefined,\n 'plaintext': props.plaintext,\n 'size': props.size,\n 'state': props.state,\n 'aria-invalid': computedAriaInvalid.value,\n 'aria-required': props.required || undefined,\n 'onBlur': (event: FocusEvent) => emit('blur', event),\n 'onFocus': (event: FocusEvent) => emit('focus', event),\n 'onKeydown': (event: KeyboardEvent) => onInputKeydown(event),\n}))\n\ndefineExpose({\n blur: () => _input.value?.blur(),\n element: computed(() => _input.value?.element?.value ?? null),\n focus: () => _input.value?.focus(),\n})\n</script>\n"],"x_google_ignoreList":[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25],"mappings":"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"}
|