@paperless/core 2.0.1-beta.15 → 2.0.1-beta.16

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.
Files changed (60) hide show
  1. package/CHANGELOG.md +11 -0
  2. package/dist/build/{p-d8498647.entry.js → p-926d997e.entry.js} +2 -2
  3. package/dist/build/p-926d997e.entry.js.map +1 -0
  4. package/dist/build/p-a45b5776.entry.js +2 -0
  5. package/dist/{paperless/p-3dba9a43.entry.js.map → build/p-a45b5776.entry.js.map} +1 -1
  6. package/dist/build/p-feb5c8e3.entry.js +2 -0
  7. package/dist/build/p-feb5c8e3.entry.js.map +1 -0
  8. package/dist/build/paperless.esm.js +1 -1
  9. package/dist/build/paperless.esm.js.map +1 -1
  10. package/dist/cjs/loader.cjs.js +1 -1
  11. package/dist/cjs/p-dropdown_2.cjs.entry.js +81 -8
  12. package/dist/cjs/p-dropdown_2.cjs.entry.js.map +1 -1
  13. package/dist/cjs/p-floating-menu-container_8.cjs.entry.js +1 -1
  14. package/dist/cjs/p-floating-menu-container_8.cjs.entry.js.map +1 -1
  15. package/dist/cjs/p-select.cjs.entry.js +2 -2
  16. package/dist/cjs/p-select.cjs.entry.js.map +1 -1
  17. package/dist/cjs/paperless.cjs.js +1 -1
  18. package/dist/collection/components/atoms/dropdown-menu-item/dropdown-menu-item.component.css +1 -1
  19. package/dist/collection/components/atoms/dropdown-menu-item/dropdown-menu-item.component.js +100 -9
  20. package/dist/collection/components/atoms/dropdown-menu-item/dropdown-menu-item.component.js.map +1 -1
  21. package/dist/collection/components/molecules/select/select.component.js +2 -2
  22. package/dist/collection/components/molecules/select/select.component.js.map +1 -1
  23. package/dist/collection/components/molecules/table-cell/table-cell.component.css +1 -1
  24. package/dist/components/dropdown-menu-item.component.js +82 -8
  25. package/dist/components/dropdown-menu-item.component.js.map +1 -1
  26. package/dist/components/p-select.js +2 -2
  27. package/dist/components/p-select.js.map +1 -1
  28. package/dist/components/table-cell.component.js +1 -1
  29. package/dist/components/table-cell.component.js.map +1 -1
  30. package/dist/esm/loader.js +1 -1
  31. package/dist/esm/p-dropdown_2.entry.js +81 -8
  32. package/dist/esm/p-dropdown_2.entry.js.map +1 -1
  33. package/dist/esm/p-floating-menu-container_8.entry.js +1 -1
  34. package/dist/esm/p-floating-menu-container_8.entry.js.map +1 -1
  35. package/dist/esm/p-select.entry.js +2 -2
  36. package/dist/esm/p-select.entry.js.map +1 -1
  37. package/dist/esm/paperless.js +1 -1
  38. package/dist/index.html +1 -1
  39. package/dist/paperless/{p-d8498647.entry.js → p-926d997e.entry.js} +2 -2
  40. package/dist/paperless/p-926d997e.entry.js.map +1 -0
  41. package/dist/paperless/p-a45b5776.entry.js +2 -0
  42. package/dist/{build/p-3dba9a43.entry.js.map → paperless/p-a45b5776.entry.js.map} +1 -1
  43. package/dist/paperless/p-feb5c8e3.entry.js +2 -0
  44. package/dist/paperless/p-feb5c8e3.entry.js.map +1 -0
  45. package/dist/paperless/paperless.esm.js +1 -1
  46. package/dist/paperless/paperless.esm.js.map +1 -1
  47. package/dist/sw.js +1 -1
  48. package/dist/sw.js.map +1 -1
  49. package/dist/types/components/atoms/dropdown-menu-item/dropdown-menu-item.component.d.ts +5 -1
  50. package/dist/types/components.d.ts +10 -2
  51. package/hydrate/index.js +85 -11
  52. package/package.json +1 -1
  53. package/dist/build/p-3dba9a43.entry.js +0 -2
  54. package/dist/build/p-57fd5974.entry.js +0 -2
  55. package/dist/build/p-57fd5974.entry.js.map +0 -1
  56. package/dist/build/p-d8498647.entry.js.map +0 -1
  57. package/dist/paperless/p-3dba9a43.entry.js +0 -2
  58. package/dist/paperless/p-57fd5974.entry.js +0 -2
  59. package/dist/paperless/p-57fd5974.entry.js.map +0 -1
  60. package/dist/paperless/p-d8498647.entry.js.map +0 -1
package/CHANGELOG.md CHANGED
@@ -3,6 +3,17 @@
3
3
  All notable changes to this project will be documented in this file.
4
4
  See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
5
5
 
6
+ ## [2.0.1-beta.16](https://github.com/ionic-team/stencil-component-starter/compare/v2.0.1-beta.15...v2.0.1-beta.16) (2025-03-06)
7
+
8
+
9
+ ### Features
10
+
11
+ * **atoms/dropdown-menu/item:** Add negative variant ([9d77f42](https://github.com/ionic-team/stencil-component-starter/commit/9d77f423572fc9166e1ef566030909b67520e380))
12
+
13
+
14
+
15
+
16
+
6
17
  ## [2.0.1-beta.15](https://github.com/ionic-team/stencil-component-starter/compare/v2.0.1-beta.14...v2.0.1-beta.15) (2025-03-06)
7
18
 
8
19
 
@@ -1,2 +1,2 @@
1
- import{r as t,c as i,h as e,H as s,g as r}from"./p-a3853fc7.js";import{c as o}from"./p-4d330cfc.js";const n=".pointer-events-none{pointer-events:none!important}.pointer-events-auto{pointer-events:auto!important}.absolute{position:absolute!important}.relative{position:relative!important}.bottom-0{bottom:0!important}.left-0{left:0!important}.block{display:block!important}.flex{display:flex!important}.h-10{height:2.5rem!important}.h-8{height:2rem!important}.h-\\[1\\.625rem\\]{height:1.625rem!important}.w-full{width:100%!important}.cursor-pointer{cursor:pointer!important}.flex-col{flex-direction:column!important}.items-center{align-items:center!important}.gap-2{gap:.5rem!important}.overflow-hidden{overflow:hidden!important}.text-ellipsis{text-overflow:ellipsis!important}.whitespace-nowrap{white-space:nowrap!important}.rounded{border-radius:.25rem!important}.border-b{border-bottom-width:1px!important}.border-l{border-left-width:1px!important}.border-r{border-right-width:1px!important}.border-solid{border-style:solid!important}.border-indigo{--tw-border-opacity:1!important;border-color:rgb(82 138 250/var(--tw-border-opacity,1))!important}.border-mystic-dark{--tw-border-opacity:1!important;border-color:rgb(218 230 240/var(--tw-border-opacity,1))!important}.bg-indigo-light{background-color:rgb(241 246 255/var(--tw-bg-opacity,1))!important}.bg-indigo-light,.bg-white{--tw-bg-opacity:1!important}.bg-white{background-color:rgb(255 255 255/var(--tw-bg-opacity,1))!important}.px-1{padding-left:.25rem!important;padding-right:.25rem!important}.px-2{padding-left:.5rem!important;padding-right:.5rem!important}.text-base{font-size:1rem!important;line-height:1.5rem!important}.text-sm{font-size:.875rem!important;line-height:1.25rem!important}.text-xs{font-size:.75rem!important;line-height:1rem!important}.font-semibold{font-weight:600!important}.outline-none{outline:2px solid transparent!important;outline-offset:2px!important}*{box-sizing:border-box}p-select{display:flex;flex-direction:column;position:relative;text-overflow:ellipsis;width:100%}p-select .p-input{--tw-text-opacity:1;--tw-bg-opacity:1;--tw-border-opacity:1!important;align-items:center;background-color:rgb(255 255 255/var(--tw-bg-opacity,1));border-color:rgb(218 230 240/var(--tw-border-opacity,1))!important;border-radius:.5rem;border-style:solid!important;border-width:1px;color:rgb(39 40 56/var(--tw-text-opacity,1));display:flex;font-size:1rem;font-weight:600;height:2.5rem;justify-content:flex-start;line-height:1.5rem;outline:2px solid transparent!important;outline-offset:2px!important;padding-left:1rem;padding-right:1rem;width:100%!important}p-select .p-input::-moz-placeholder{--tw-text-opacity:1;color:rgb(128 130 158/var(--tw-text-opacity,1));font-size:1rem;line-height:1.5rem}p-select .p-input::placeholder{--tw-text-opacity:1;color:rgb(128 130 158/var(--tw-text-opacity,1));font-size:1rem;line-height:1.5rem}p-select .p-input.active,p-select .p-input.focus,p-select .p-input:focus,p-select .p-input:focus-visible,p-select .p-input:focus-within,p-select .p-input[active]{--tw-border-opacity:1!important;border-color:rgb(82 138 250/var(--tw-border-opacity,1))!important;outline:2px solid transparent!important;outline-offset:2px!important}p-select .p-input.size-small{font-size:.875rem;font-weight:500;height:2rem!important;line-height:1.25rem}p-select .p-input.size-small::-moz-placeholder{font-size:.875rem;line-height:1.25rem}p-select .p-input.size-small::placeholder{font-size:.875rem;line-height:1.25rem}p-select .text-container{display:block;overflow:hidden;text-align:start;text-overflow:ellipsis;white-space:nowrap;width:100%}p-select .multi-container{align-items:center;bottom:0;display:flex;gap:.5rem;height:2.5rem;left:0;overflow:hidden;padding:1rem .5rem;pointer-events:none;position:absolute;width:100%}p-select .multi-container.size-small{height:2rem;padding:.5rem .25rem}p-select .multi-container .item{--tw-bg-opacity:1;--tw-text-opacity:1;align-items:center;background-color:rgb(241 246 255/var(--tw-bg-opacity,1));border-radius:.25rem;color:rgb(44 75 169/var(--tw-text-opacity,1));cursor:pointer;display:flex;font-size:.875rem;font-weight:600;gap:.5rem;height:1.625rem;line-height:1.25rem;padding-left:.5rem;padding-right:.5rem;pointer-events:auto;white-space:nowrap}p-select .multi-container .item p-icon{--tw-text-opacity:1;color:rgb(82 138 250/var(--tw-text-opacity,1));font-size:.75rem;line-height:1rem}p-select .multi-container .extra{--tw-text-opacity:1;color:rgb(128 130 158/var(--tw-text-opacity,1));font-size:.875rem;line-height:1.25rem;pointer-events:none}.static{position:static!important}.sticky{position:sticky!important}.top-0{top:0!important}.top-2{top:.5rem!important}.-mt-2{margin-top:-.5rem!important}.mb-2{margin-bottom:.5rem!important}.hidden{display:none!important}.h-6{height:1.5rem!important}.w-6{width:1.5rem!important}.max-w-\\[calc\\(100\\%-3rem\\)\\]{max-width:calc(100% - 3rem)!important}.max-w-full{max-width:100%!important}.justify-start{justify-content:flex-start!important}.justify-center{justify-content:center!important}.gap-1{gap:.25rem!important}.p-2{padding:.5rem!important}.pt-2{padding-top:.5rem!important}.text-center{text-align:center!important}.text-lg{font-size:1.125rem!important;line-height:1.75rem!important}.font-medium{font-weight:500!important}.text-indigo{--tw-text-opacity:1!important;color:rgb(82 138 250/var(--tw-text-opacity,1))!important}.text-storm-medium{--tw-text-opacity:1!important;color:rgb(128 130 158/var(--tw-text-opacity,1))!important}.blur{--tw-blur:blur(8px)!important}.blur,.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)!important}";const a=class{constructor(e){t(this,e);this.queryChange=i(this,"queryChange",3);this.valueChange=i(this,"valueChange",3);this.selectAllChange=i(this,"selectAllChange",3);this.dropdownShown=i(this,"dropdownShown",3);this.add=i(this,"add",3);this.items=undefined;this.multi=undefined;this.icon=undefined;this.query=undefined;this.placeholder=undefined;this.autocompletePlaceholder="Search...";this.value=undefined;this.displayKey="text";this.dropdownDisplayKey=undefined;this.selectionDisplayKey=undefined;this.valueKey=undefined;this.avatarKey=undefined;this.iconKey=undefined;this.showIconInSelectedItem=undefined;this.classKey="class";this.applyClassOnSelectedItem=undefined;this.avatarLettersKey=undefined;this.identifierKey=undefined;this.queryKey=undefined;this.autoSelectFirst=true;this.showChevron=true;this.maxDisplayedItems=10;this.enableAutocomplete=true;this.asyncFilter=false;this.loading=false;this.enableSelectAll=false;this.selectAllText="Select all";this.selectAllIcon=undefined;this.size="medium";this.prefix=undefined;this.label=undefined;this.helper=undefined;this.required=undefined;this.error=undefined;this.disabled=false;this.showAddItem=false;this.addItemText="Add item";this.emptyStateText="No items available";this._showDropdown=false;this._selectedItem=null;this._allSelected=false;this._amountHidden=0}get _items(){var t;if(!this.items||this.loading){return[]}let i=typeof this.items==="string"?JSON.parse(this.items):this.items;if(typeof(i===null||i===void 0?void 0:i[0])==="string"){this.displayKey="text";this.valueKey="value";i=i.map((t=>({value:t,text:t})))}if(((t=this.query)===null||t===void 0?void 0:t.length)&&!this.asyncFilter){i=i.filter((t=>{if(this.queryKey){return this._checkvalue(this.queryKey,t)}return this._checkvalue(this._identifierKey,t)||this._checkvalue(this.displayKey,t)}))}return i===null||i===void 0?void 0:i.slice(0,this.maxDisplayedItems)}get _displayValue(){var t;if(!this._selectedItem){return this.placeholder}if(this.multi){if(((t=this._selectedItem)===null||t===void 0?void 0:t.length)===0){return this.placeholder}return e("div",{class:`multi-container size-${this.size}`,ref:t=>this._multiContainerRef=t},this._selectedItem.map((t=>{var i;return e("div",{class:"item",onClick:()=>this._selectValue(t)},t[(i=this.selectionDisplayKey)!==null&&i!==void 0?i:this.displayKey],e("p-icon",{variant:"negative"}))})),e("div",{class:"extra hidden"},"+",this._amountHidden))}return this._getDisplay(this._selectedItem,true)}get _identifierKey(){var t,i;return(i=(t=this.identifierKey)!==null&&t!==void 0?t:this.valueKey)!==null&&i!==void 0?i:"value"}componentDidLoad(){if(!this.valueKey&&!this.identifierKey){throw new Error("You must provide a valueKey or identifierKey")}if(this.multi){this._setMultiContainerMaxWidth();this._resizeObserver=new ResizeObserver((()=>{if(this._resizeDebounceTimer){clearTimeout(this._resizeDebounceTimer);this._resizeDebounceTimer=null}this._resizeDebounceTimer=setTimeout((()=>{this._setMultiContainerMaxWidth();this._checkSelectedItems()}),200)}));this._resizeObserver.observe(this._el)}if(this.value){this._valueChange();return}this.itemChanges()}componentDidRender(){if(this.multi){this._setMultiContainerMaxWidth();this._checkSelectedItems()}}disconnectedCallback(){if(this.multi){this._resizeObserver.disconnect()}}render(){var t;return e(s,{class:"p-select"},e("p-dropdown",{disableTriggerClick:true,calculateWidth:true,insideClick:true,scrollable:this.enableAutocomplete?"large":true,show:this._showDropdown,onIsOpen:t=>this._onDropdownOpen(t)},e("p-input-group",{slot:"trigger",icon:this.icon,size:this.size,prefix:this.prefix,label:this.label,helper:this.helper,required:this.required,error:this.error,disabled:this.disabled,focused:this._showDropdown,forceShowTooltip:((t=this.error)===null||t===void 0?void 0:t.length)&&this._showDropdown},e("div",{slot:"input",class:`p-input read-only cursor-pointer ${this.showChevron?"max-w-[calc(100%-3rem)]":"w-full"} size-${this.size} ${this._displayValue===this.placeholder?"font-medium text-storm-medium":""}`,contenteditable:true,onFocus:t=>this._onFocus(t),onMouseDown:t=>this._onMouseDown(t),onClick:()=>this._onClick(),ref:t=>this._inputRef=t},this._displayValue),this.showChevron&&e("p-icon",{variant:"caret",slot:"suffix"})),e("div",{slot:"items"},this.loading?this._getLoadingItems():this._getItems(),this.showAddItem&&this._getAddItem())))}documentClickHandler({target:t}){if(!this._showDropdown||o(t,this._el)){return}this._showDropdown=false}_valueChange(){setTimeout((()=>this._preselectItem()))}itemChanges(){setTimeout((()=>this._preselectItem()))}_showDropdownChanges(){this.dropdownShown.emit({value:this._showDropdown,query:this.query})}multiChanges(){if(this._selectedItem&&!Array.isArray(this._selectedItem)){this._selectedItem=[]}}_preselectItem(){var t,i;let e=typeof this.value==="string"&&this.multi?JSON.parse(this.value):this.value;if(this.multi){if(!Array.isArray(e)){this.value=[];this.valueChange.emit(this.value);return}this.value=e;if(!e.length){this._selectedItem=[];return}this._selectedItem=!!this.valueKey&&this.valueKey!=="false"?this._items.filter((t=>e.includes(t===null||t===void 0?void 0:t[this.valueKey]))):[...e];return}if(!this._selectedItem&&!e&&this.autoSelectFirst){e=this._items[0]}const s=typeof e==="object"&&e!==null?e[this._identifierKey]:e;const r=typeof s==="string"||typeof s==="number"?s:JSON.stringify(s);const o=this._selectedItem?(t=this._selectedItem)===null||t===void 0?void 0:t[this._identifierKey]:null;const n=typeof o==="string"||typeof o==="number"?o:JSON.stringify(o);if(this._selectedItem&&n===r){return}if(!((i=this._items)===null||i===void 0?void 0:i.length)&&e){this._selectValue(e,false);return}const a=this._items.find((t=>{const i=t===null||t===void 0?void 0:t[this._identifierKey];const e=typeof i==="string"||typeof i==="number"?i:JSON.stringify(i);return e===r}));this._selectValue(!!a?a:e,false)}_selectValue(t,i=true){let e=!!this.valueKey&&this.valueKey!=="false"&&t!==null?t===null||t===void 0?void 0:t[this.valueKey]:t;if(this.multi){if(!this._selectedItem||!Array.isArray(this._selectedItem)){this._selectedItem=[]}if(!this.value||!Array.isArray(this.value)){this.value=[]}const i=[...this._selectedItem];const s=[...this.value];const r=i.findIndex((i=>i[this._identifierKey]===t[this._identifierKey]));if(r===-1){i.push(t);s.push(e)}else{i.splice(r,1);s.splice(r,1)}this._selectedItem=i;this.value=s;this.valueChange.emit(s);return}this._selectedItem=t;this.value=e;this.valueChange.emit(e);this._onBlur(i)}_onFocus(t){t.preventDefault();this._inputRef.blur();if(!this._showDropdown){this._showDropdown=true}return}_onMouseDown(t){if(this.enableAutocomplete){return}t.preventDefault()}_onClick(){if(this.enableAutocomplete){return}this._showDropdown=!this._showDropdown}_onBlur(t=false){if(this.enableAutocomplete&&!t){return}this._showDropdown=false}_onAutoComplete(t){if(!this.enableAutocomplete){return}this._showDropdown=true;this.query=t.target.value;this.queryChange.emit(t.target.value)}_checkvalue(t,i){var e,s,r;return((s=(e=i===null||i===void 0?void 0:i[t])===null||e===void 0?void 0:e.toString())===null||s===void 0?void 0:s.toLowerCase().indexOf((r=this.query)===null||r===void 0?void 0:r.toLowerCase()))>=0}_getItems(){var t;let i=this._items.map((t=>{var i;return e("p-dropdown-menu-item",{useContainer:false,onClick:()=>this._selectValue(t),active:this.multi&&!!this._selectedItem&&Array.isArray(this._selectedItem)?this._selectedItem.findIndex((i=>i[this._identifierKey]===t[this._identifierKey]))>=0:t[this._identifierKey]===((i=this._selectedItem)===null||i===void 0?void 0:i[this._identifierKey]),variant:this.multi?"checkbox":"default",class:"justify-start"},this._getDisplay(t))}));if(!this._items.length){i=[e("p",{class:"w-full p-2 text-center text-sm text-storm-medium"},this.emptyStateText)]}if(this.enableSelectAll&&this._items.length){i.unshift(e("p-dropdown-menu-item",{useContainer:false,variant:"checkbox",onClick:()=>this._selectAllChange(),active:this._allSelected},((t=this.selectAllIcon)===null||t===void 0?void 0:t.length)?e("span",{class:"flex items-center gap-2"},e("div",{class:"flex w-6 justify-center text-lg"},e("p-icon",{variant:this.selectAllIcon}))," ",this.selectAllText):this.selectAllText))}if(this.enableAutocomplete){i.unshift(this._getAutoCompleteItem())}return i}_getAddItem(){return e("p-dropdown-menu-item",{onClick:()=>this.add.emit(),useContainer:false},e("span",{class:"flex items-center gap-1 font-semibold text-indigo"},this.addItemText,e("p-icon",{variant:"plus"})))}_getLoadingItems(){const t=[0,0,0].map((()=>e("p-dropdown-menu-item",{enableHover:false},e("p-loader",{variant:"ghost",class:"h-6 w-full rounded"}))));if(this.enableAutocomplete){t.unshift(this._getAutoCompleteItem())}return t}_getAutoCompleteItem(){return e("div",{class:"sticky top-0 -mt-2 bg-white pt-2"},e("input",{class:"p-input size-small sticky top-2 mb-2",placeholder:this.autocompletePlaceholder,onInput:t=>this._onAutoComplete(t),ref:t=>this.autocompleteInputRef=t,value:this.query}))}_setMultiContainerMaxWidth(){if(!this._inputRef||!this._multiContainerRef){return}this._multiContainerRef.style.maxWidth=`${this._inputRef.clientWidth-16}px`}_checkSelectedItems(){if(!this._multiContainerRef){return}const t=this._multiContainerRef.getBoundingClientRect();const i=Array.from(this._multiContainerRef.querySelectorAll(".item"));let e=0;for(const s of i){s.classList.remove("hidden");const i=s.getBoundingClientRect();if(i.right>t.right){s.classList.add("hidden");e++}}this._amountHidden=e;const s=this._multiContainerRef.querySelector(".extra");if(!s){return}if(!s.classList.contains("hidden")){s.classList.add("hidden")}if(e>0){s.classList.remove("hidden")}}_onDropdownOpen(t){if(!t.detail||!this.autocompleteInputRef){return}this.autocompleteInputRef.focus()}_selectAllChange(){this._allSelected=!this._allSelected;this.selectAllChange.emit(this._allSelected)}_getDisplay(t,i=false){var s,r,o;let n=e("div",{class:"text-container"},t[i?(s=this.selectionDisplayKey)!==null&&s!==void 0?s:this.displayKey:this.displayKey]);if(this.avatarKey){n=e("span",{class:"flex items-center gap-2"},e("p-avatar",{size:"xs",src:t[this.avatarKey],letters:t[this.avatarLettersKey]}),e("div",{class:"text-container"},t[(r=this.dropdownDisplayKey)!==null&&r!==void 0?r:this.displayKey]))}if(this.iconKey&&(!i||this.showIconInSelectedItem)){n=e("span",{class:"flex items-center gap-2"},e("p-icon",{variant:t[this.iconKey]}),e("div",{class:"text-container"},t[(o=this.dropdownDisplayKey)!==null&&o!==void 0?o:this.displayKey]))}return e("div",{class:!i||this.applyClassOnSelectedItem?`max-w-full ${t===null||t===void 0?void 0:t.class}`:"max-w-full"},n)}get _el(){return r(this)}static get watchers(){return{value:["_valueChange"],items:["itemChanges"],_showDropdown:["_showDropdownChanges"],multi:["multiChanges"]}}};a.style=n;export{a as p_select};
2
- //# sourceMappingURL=p-d8498647.entry.js.map
1
+ import{r as t,c as i,h as e,H as s,g as r}from"./p-a3853fc7.js";import{c as o}from"./p-4d330cfc.js";const n=".pointer-events-none{pointer-events:none!important}.pointer-events-auto{pointer-events:auto!important}.absolute{position:absolute!important}.relative{position:relative!important}.bottom-0{bottom:0!important}.left-0{left:0!important}.block{display:block!important}.flex{display:flex!important}.h-10{height:2.5rem!important}.h-8{height:2rem!important}.h-\\[1\\.625rem\\]{height:1.625rem!important}.w-full{width:100%!important}.cursor-pointer{cursor:pointer!important}.flex-col{flex-direction:column!important}.items-center{align-items:center!important}.gap-2{gap:.5rem!important}.overflow-hidden{overflow:hidden!important}.text-ellipsis{text-overflow:ellipsis!important}.whitespace-nowrap{white-space:nowrap!important}.rounded{border-radius:.25rem!important}.border-b{border-bottom-width:1px!important}.border-l{border-left-width:1px!important}.border-r{border-right-width:1px!important}.border-solid{border-style:solid!important}.border-indigo{--tw-border-opacity:1!important;border-color:rgb(82 138 250/var(--tw-border-opacity,1))!important}.border-mystic-dark{--tw-border-opacity:1!important;border-color:rgb(218 230 240/var(--tw-border-opacity,1))!important}.bg-indigo-light{background-color:rgb(241 246 255/var(--tw-bg-opacity,1))!important}.bg-indigo-light,.bg-white{--tw-bg-opacity:1!important}.bg-white{background-color:rgb(255 255 255/var(--tw-bg-opacity,1))!important}.px-1{padding-left:.25rem!important;padding-right:.25rem!important}.px-2{padding-left:.5rem!important;padding-right:.5rem!important}.text-base{font-size:1rem!important;line-height:1.5rem!important}.text-sm{font-size:.875rem!important;line-height:1.25rem!important}.text-xs{font-size:.75rem!important;line-height:1rem!important}.font-semibold{font-weight:600!important}.outline-none{outline:2px solid transparent!important;outline-offset:2px!important}*{box-sizing:border-box}p-select{display:flex;flex-direction:column;position:relative;text-overflow:ellipsis;width:100%}p-select .p-input{--tw-text-opacity:1;--tw-bg-opacity:1;--tw-border-opacity:1!important;align-items:center;background-color:rgb(255 255 255/var(--tw-bg-opacity,1));border-color:rgb(218 230 240/var(--tw-border-opacity,1))!important;border-radius:.5rem;border-style:solid!important;border-width:1px;color:rgb(39 40 56/var(--tw-text-opacity,1));display:flex;font-size:1rem;font-weight:600;height:2.5rem;justify-content:flex-start;line-height:1.5rem;outline:2px solid transparent!important;outline-offset:2px!important;padding-left:1rem;padding-right:1rem;width:100%!important}p-select .p-input::-moz-placeholder{--tw-text-opacity:1;color:rgb(128 130 158/var(--tw-text-opacity,1));font-size:1rem;line-height:1.5rem}p-select .p-input::placeholder{--tw-text-opacity:1;color:rgb(128 130 158/var(--tw-text-opacity,1));font-size:1rem;line-height:1.5rem}p-select .p-input.active,p-select .p-input.focus,p-select .p-input:focus,p-select .p-input:focus-visible,p-select .p-input:focus-within,p-select .p-input[active]{--tw-border-opacity:1!important;border-color:rgb(82 138 250/var(--tw-border-opacity,1))!important;outline:2px solid transparent!important;outline-offset:2px!important}p-select .p-input.size-small{font-size:.875rem;font-weight:500;height:2rem!important;line-height:1.25rem}p-select .p-input.size-small::-moz-placeholder{font-size:.875rem;line-height:1.25rem}p-select .p-input.size-small::placeholder{font-size:.875rem;line-height:1.25rem}p-select .text-container{display:block;overflow:hidden;text-align:start;text-overflow:ellipsis;white-space:nowrap;width:100%}p-select .multi-container{align-items:center;bottom:0;display:flex;gap:.5rem;height:2.5rem;left:0;overflow:hidden;padding:1rem .5rem;pointer-events:none;position:absolute;width:100%}p-select .multi-container.size-small{height:2rem;padding:.5rem .25rem}p-select .multi-container .item{--tw-bg-opacity:1;--tw-text-opacity:1;align-items:center;background-color:rgb(241 246 255/var(--tw-bg-opacity,1));border-radius:.25rem;color:rgb(44 75 169/var(--tw-text-opacity,1));cursor:pointer;display:flex;font-size:.875rem;font-weight:600;gap:.5rem;height:1.625rem;line-height:1.25rem;padding-left:.5rem;padding-right:.5rem;pointer-events:auto;white-space:nowrap}p-select .multi-container .item p-icon{--tw-text-opacity:1;color:rgb(82 138 250/var(--tw-text-opacity,1));font-size:.75rem;line-height:1rem}p-select .multi-container .extra{--tw-text-opacity:1;color:rgb(128 130 158/var(--tw-text-opacity,1));font-size:.875rem;line-height:1.25rem;pointer-events:none}.static{position:static!important}.sticky{position:sticky!important}.top-0{top:0!important}.top-2{top:.5rem!important}.-mt-2{margin-top:-.5rem!important}.mb-2{margin-bottom:.5rem!important}.hidden{display:none!important}.h-6{height:1.5rem!important}.w-6{width:1.5rem!important}.max-w-\\[calc\\(100\\%-3rem\\)\\]{max-width:calc(100% - 3rem)!important}.max-w-full{max-width:100%!important}.justify-start{justify-content:flex-start!important}.justify-center{justify-content:center!important}.gap-1{gap:.25rem!important}.p-2{padding:.5rem!important}.pt-2{padding-top:.5rem!important}.text-center{text-align:center!important}.text-lg{font-size:1.125rem!important;line-height:1.75rem!important}.font-medium{font-weight:500!important}.text-indigo{--tw-text-opacity:1!important;color:rgb(82 138 250/var(--tw-text-opacity,1))!important}.text-storm-medium{--tw-text-opacity:1!important;color:rgb(128 130 158/var(--tw-text-opacity,1))!important}.blur{--tw-blur:blur(8px)!important}.blur,.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)!important}";const a=class{constructor(e){t(this,e);this.queryChange=i(this,"queryChange",3);this.valueChange=i(this,"valueChange",3);this.selectAllChange=i(this,"selectAllChange",3);this.dropdownShown=i(this,"dropdownShown",3);this.add=i(this,"add",3);this.items=undefined;this.multi=undefined;this.icon=undefined;this.query=undefined;this.placeholder=undefined;this.autocompletePlaceholder="Search...";this.value=undefined;this.displayKey="text";this.dropdownDisplayKey=undefined;this.selectionDisplayKey=undefined;this.valueKey=undefined;this.avatarKey=undefined;this.iconKey=undefined;this.showIconInSelectedItem=undefined;this.classKey="class";this.applyClassOnSelectedItem=undefined;this.avatarLettersKey=undefined;this.identifierKey=undefined;this.queryKey=undefined;this.autoSelectFirst=true;this.showChevron=true;this.maxDisplayedItems=10;this.enableAutocomplete=true;this.asyncFilter=false;this.loading=false;this.enableSelectAll=false;this.selectAllText="Select all";this.selectAllIcon=undefined;this.size="medium";this.prefix=undefined;this.label=undefined;this.helper=undefined;this.required=undefined;this.error=undefined;this.disabled=false;this.showAddItem=false;this.addItemText="Add item";this.emptyStateText="No items available";this._showDropdown=false;this._selectedItem=null;this._allSelected=false;this._amountHidden=0}get _items(){var t;if(!this.items||this.loading){return[]}let i=typeof this.items==="string"?JSON.parse(this.items):this.items;if(typeof(i===null||i===void 0?void 0:i[0])==="string"){this.displayKey="text";this.valueKey="value";i=i.map((t=>({value:t,text:t})))}if(((t=this.query)===null||t===void 0?void 0:t.length)&&!this.asyncFilter){i=i.filter((t=>{if(this.queryKey){return this._checkvalue(this.queryKey,t)}return this._checkvalue(this._identifierKey,t)||this._checkvalue(this.displayKey,t)}))}return i===null||i===void 0?void 0:i.slice(0,this.maxDisplayedItems)}get _displayValue(){var t;if(!this._selectedItem){return this.placeholder}if(this.multi){if(((t=this._selectedItem)===null||t===void 0?void 0:t.length)===0){return this.placeholder}return e("div",{class:`multi-container size-${this.size}`,ref:t=>this._multiContainerRef=t},this._selectedItem.map((t=>{var i;return e("div",{class:"item",onClick:()=>this._selectValue(t)},t[(i=this.selectionDisplayKey)!==null&&i!==void 0?i:this.displayKey],e("p-icon",{variant:"negative"}))})),e("div",{class:"extra hidden"},"+",this._amountHidden))}return this._getDisplay(this._selectedItem,true)}get _identifierKey(){var t,i;return(i=(t=this.identifierKey)!==null&&t!==void 0?t:this.valueKey)!==null&&i!==void 0?i:"value"}componentDidLoad(){if(!this.valueKey&&!this.identifierKey){throw new Error("You must provide a valueKey or identifierKey")}if(this.multi){this._setMultiContainerMaxWidth();this._resizeObserver=new ResizeObserver((()=>{if(this._resizeDebounceTimer){clearTimeout(this._resizeDebounceTimer);this._resizeDebounceTimer=null}this._resizeDebounceTimer=setTimeout((()=>{this._setMultiContainerMaxWidth();this._checkSelectedItems()}),200)}));this._resizeObserver.observe(this._el)}if(this.value){this._valueChange();return}this.itemChanges()}componentDidRender(){if(this.multi){this._setMultiContainerMaxWidth();this._checkSelectedItems()}}disconnectedCallback(){if(this.multi){this._resizeObserver.disconnect()}}render(){var t;return e(s,{class:"p-select"},e("p-dropdown",{disableTriggerClick:true,calculateWidth:true,insideClick:true,scrollable:this.enableAutocomplete?"large":true,show:this._showDropdown,onIsOpen:t=>this._onDropdownOpen(t)},e("p-input-group",{slot:"trigger",icon:this.icon,size:this.size,prefix:this.prefix,label:this.label,helper:this.helper,required:this.required,error:this.error,disabled:this.disabled,focused:this._showDropdown,forceShowTooltip:((t=this.error)===null||t===void 0?void 0:t.length)&&this._showDropdown},e("div",{slot:"input",class:`p-input read-only cursor-pointer ${this.showChevron?"max-w-[calc(100%-3rem)]":"w-full"} size-${this.size} ${this._displayValue===this.placeholder?"font-medium text-storm-medium":""}`,contenteditable:true,onFocus:t=>this._onFocus(t),onMouseDown:t=>this._onMouseDown(t),onClick:()=>this._onClick(),ref:t=>this._inputRef=t},this._displayValue),this.showChevron&&e("p-icon",{variant:"caret",slot:"suffix"})),e("div",{slot:"items"},this.loading?this._getLoadingItems():this._getItems(),this.showAddItem&&this._getAddItem())))}documentClickHandler({target:t}){if(!this._showDropdown||o(t,this._el)){return}this._showDropdown=false}_valueChange(){setTimeout((()=>this._preselectItem()))}itemChanges(){setTimeout((()=>this._preselectItem()))}_showDropdownChanges(){this.dropdownShown.emit({value:this._showDropdown,query:this.query})}multiChanges(){if(this._selectedItem&&!Array.isArray(this._selectedItem)){this._selectedItem=[]}}_preselectItem(){var t,i;let e=typeof this.value==="string"&&this.multi?JSON.parse(this.value):this.value;if(this.multi){if(!Array.isArray(e)){this.value=[];this.valueChange.emit(this.value);return}this.value=e;if(!e.length){this._selectedItem=[];return}this._selectedItem=!!this.valueKey&&this.valueKey!=="false"?this._items.filter((t=>e.includes(t===null||t===void 0?void 0:t[this.valueKey]))):[...e];return}if(!this._selectedItem&&!e&&this.autoSelectFirst){e=this._items[0]}const s=typeof e==="object"&&e!==null?e[this._identifierKey]:e;const r=typeof s==="string"||typeof s==="number"?s:JSON.stringify(s);const o=this._selectedItem?(t=this._selectedItem)===null||t===void 0?void 0:t[this._identifierKey]:null;const n=typeof o==="string"||typeof o==="number"?o:JSON.stringify(o);if(this._selectedItem&&n===r){return}if(!((i=this._items)===null||i===void 0?void 0:i.length)&&e){this._selectValue(e,false);return}const a=this._items.find((t=>{const i=t===null||t===void 0?void 0:t[this._identifierKey];const e=typeof i==="string"||typeof i==="number"?i:JSON.stringify(i);return e===r}));this._selectValue(!!a?a:e,false)}_selectValue(t,i=true){let e=!!this.valueKey&&this.valueKey!=="false"&&t!==null?t===null||t===void 0?void 0:t[this.valueKey]:t;if(this.multi){if(!this._selectedItem||!Array.isArray(this._selectedItem)){this._selectedItem=[]}if(!this.value||!Array.isArray(this.value)){this.value=[]}const i=[...this._selectedItem];const s=[...this.value];const r=i.findIndex((i=>i[this._identifierKey]===t[this._identifierKey]));if(r===-1){i.push(t);s.push(e)}else{i.splice(r,1);s.splice(r,1)}this._selectedItem=i;this.value=s;this.valueChange.emit(s);return}this._selectedItem=t;this.value=e;this.valueChange.emit(e);this._onBlur(i)}_onFocus(t){t.preventDefault();this._inputRef.blur();if(!this._showDropdown){this._showDropdown=true}return}_onMouseDown(t){if(this.enableAutocomplete){return}t.preventDefault()}_onClick(){if(this.enableAutocomplete){return}this._showDropdown=!this._showDropdown}_onBlur(t=false){if(this.enableAutocomplete&&!t){return}this._showDropdown=false}_onAutoComplete(t){if(!this.enableAutocomplete){return}this._showDropdown=true;this.query=t.target.value;this.queryChange.emit(t.target.value)}_checkvalue(t,i){var e,s,r;return((s=(e=i===null||i===void 0?void 0:i[t])===null||e===void 0?void 0:e.toString())===null||s===void 0?void 0:s.toLowerCase().indexOf((r=this.query)===null||r===void 0?void 0:r.toLowerCase()))>=0}_getItems(){var t;let i=this._items.map((t=>{var i;return e("p-dropdown-menu-item",{useContainer:false,onClick:()=>this._selectValue(t),active:this.multi&&!!this._selectedItem&&Array.isArray(this._selectedItem)?this._selectedItem.findIndex((i=>i[this._identifierKey]===t[this._identifierKey]))>=0:t[this._identifierKey]===((i=this._selectedItem)===null||i===void 0?void 0:i[this._identifierKey]),checkbox:this.multi?true:false,class:"justify-start"},this._getDisplay(t))}));if(!this._items.length){i=[e("p",{class:"w-full p-2 text-center text-sm text-storm-medium"},this.emptyStateText)]}if(this.enableSelectAll&&this._items.length){i.unshift(e("p-dropdown-menu-item",{useContainer:false,checkbox:true,onClick:()=>this._selectAllChange(),active:this._allSelected},((t=this.selectAllIcon)===null||t===void 0?void 0:t.length)?e("span",{class:"flex items-center gap-2"},e("div",{class:"flex w-6 justify-center text-lg"},e("p-icon",{variant:this.selectAllIcon}))," ",this.selectAllText):this.selectAllText))}if(this.enableAutocomplete){i.unshift(this._getAutoCompleteItem())}return i}_getAddItem(){return e("p-dropdown-menu-item",{onClick:()=>this.add.emit(),useContainer:false},e("span",{class:"flex items-center gap-1 font-semibold text-indigo"},this.addItemText,e("p-icon",{variant:"plus"})))}_getLoadingItems(){const t=[0,0,0].map((()=>e("p-dropdown-menu-item",{enableHover:false},e("p-loader",{variant:"ghost",class:"h-6 w-full rounded"}))));if(this.enableAutocomplete){t.unshift(this._getAutoCompleteItem())}return t}_getAutoCompleteItem(){return e("div",{class:"sticky top-0 -mt-2 bg-white pt-2"},e("input",{class:"p-input size-small sticky top-2 mb-2",placeholder:this.autocompletePlaceholder,onInput:t=>this._onAutoComplete(t),ref:t=>this.autocompleteInputRef=t,value:this.query}))}_setMultiContainerMaxWidth(){if(!this._inputRef||!this._multiContainerRef){return}this._multiContainerRef.style.maxWidth=`${this._inputRef.clientWidth-16}px`}_checkSelectedItems(){if(!this._multiContainerRef){return}const t=this._multiContainerRef.getBoundingClientRect();const i=Array.from(this._multiContainerRef.querySelectorAll(".item"));let e=0;for(const s of i){s.classList.remove("hidden");const i=s.getBoundingClientRect();if(i.right>t.right){s.classList.add("hidden");e++}}this._amountHidden=e;const s=this._multiContainerRef.querySelector(".extra");if(!s){return}if(!s.classList.contains("hidden")){s.classList.add("hidden")}if(e>0){s.classList.remove("hidden")}}_onDropdownOpen(t){if(!t.detail||!this.autocompleteInputRef){return}this.autocompleteInputRef.focus()}_selectAllChange(){this._allSelected=!this._allSelected;this.selectAllChange.emit(this._allSelected)}_getDisplay(t,i=false){var s,r,o;let n=e("div",{class:"text-container"},t[i?(s=this.selectionDisplayKey)!==null&&s!==void 0?s:this.displayKey:this.displayKey]);if(this.avatarKey){n=e("span",{class:"flex items-center gap-2"},e("p-avatar",{size:"xs",src:t[this.avatarKey],letters:t[this.avatarLettersKey]}),e("div",{class:"text-container"},t[(r=this.dropdownDisplayKey)!==null&&r!==void 0?r:this.displayKey]))}if(this.iconKey&&(!i||this.showIconInSelectedItem)){n=e("span",{class:"flex items-center gap-2"},e("p-icon",{variant:t[this.iconKey]}),e("div",{class:"text-container"},t[(o=this.dropdownDisplayKey)!==null&&o!==void 0?o:this.displayKey]))}return e("div",{class:!i||this.applyClassOnSelectedItem?`max-w-full ${t===null||t===void 0?void 0:t.class}`:"max-w-full"},n)}get _el(){return r(this)}static get watchers(){return{value:["_valueChange"],items:["itemChanges"],_showDropdown:["_showDropdownChanges"],multi:["multiChanges"]}}};a.style=n;export{a as p_select};
2
+ //# sourceMappingURL=p-926d997e.entry.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["selectComponentCss","Select","_items","this","items","loading","JSON","parse","displayKey","valueKey","map","str","value","text","_a","query","length","asyncFilter","filter","item","queryKey","_checkvalue","_identifierKey","slice","maxDisplayedItems","_displayValue","_selectedItem","placeholder","multi","h","class","size","ref","_multiContainerRef","onClick","_selectValue","selectionDisplayKey","variant","_amountHidden","_getDisplay","_b","identifierKey","componentDidLoad","Error","_setMultiContainerMaxWidth","_resizeObserver","ResizeObserver","_resizeDebounceTimer","clearTimeout","setTimeout","_checkSelectedItems","observe","_el","_valueChange","itemChanges","componentDidRender","disconnectedCallback","disconnect","render","Host","disableTriggerClick","calculateWidth","insideClick","scrollable","enableAutocomplete","show","_showDropdown","onIsOpen","ev","_onDropdownOpen","slot","icon","prefix","label","helper","required","error","disabled","focused","forceShowTooltip","showChevron","contenteditable","onFocus","_onFocus","onMouseDown","_onMouseDown","_onClick","_inputRef","_getLoadingItems","_getItems","showAddItem","_getAddItem","documentClickHandler","target","childOf","_preselectItem","_showDropdownChanges","dropdownShown","emit","multiChanges","Array","isArray","valueChange","i","includes","autoSelectFirst","identifier","parsedValue","stringify","currentValue","currentParsedValue","find","itemIdentifier","parsedItemIdentifier","forceBlur","selectedItem","valueArray","includesIndex","findIndex","push","splice","_onBlur","preventDefault","blur","force","_onAutoComplete","queryChange","key","toString","toLowerCase","indexOf","_c","useContainer","active","checkbox","emptyStateText","enableSelectAll","unshift","_selectAllChange","_allSelected","selectAllIcon","selectAllText","_getAutoCompleteItem","add","addItemText","enableHover","autocompletePlaceholder","onInput","autocompleteInputRef","style","maxWidth","clientWidth","containerRect","getBoundingClientRect","from","querySelectorAll","amountHidden","child","classList","remove","childRect","right","extra","querySelector","contains","detail","focus","selectAllChange","isSelection","content","avatarKey","src","letters","avatarLettersKey","dropdownDisplayKey","iconKey","showIconInSelectedItem","applyClassOnSelectedItem"],"sources":["src/components/molecules/select/select.component.scss?tag=p-select","src/components/molecules/select/select.component.tsx"],"sourcesContent":["@import '../../../style/form/mixins';\n\np-select {\n\t@apply relative flex w-full flex-col text-ellipsis;\n\n\t.p-input {\n\t\t@include inputDefaultState();\n\t\t@apply text-base font-semibold;\n\n\t\t&.size-small {\n\t\t\t@apply text-sm font-medium;\n\t\t}\n\t}\n\n\t.text-container {\n\t\t@apply block w-full overflow-hidden text-ellipsis whitespace-nowrap text-start;\n\t}\n\n\t.multi-container {\n\t\t@apply pointer-events-none absolute bottom-0 left-0 flex h-10 w-full items-center gap-2 overflow-hidden px-2 py-4;\n\n\t\t&.size-small {\n\t\t\t@apply h-8 px-1 py-2;\n\t\t}\n\n\t\t.item {\n\t\t\t@apply pointer-events-auto flex h-[1.625rem] cursor-pointer items-center gap-2 whitespace-nowrap rounded bg-indigo-light px-2 text-sm font-semibold text-indigo-dark;\n\n\t\t\tp-icon {\n\t\t\t\t@apply text-xs text-indigo;\n\t\t\t}\n\t\t}\n\n\t\t.extra {\n\t\t\t@apply pointer-events-none text-sm text-storm-medium;\n\t\t}\n\t}\n}\n","import {\n\tComponent,\n\tElement,\n\tEvent,\n\tEventEmitter,\n\th,\n\tHost,\n\tListen,\n\tProp,\n\tState,\n\tWatch,\n} from '@stencil/core';\nimport { childOf } from '../../../utils';\nimport { IconVariant } from '../../atoms/icon/icon.component';\n\n@Component({\n\ttag: 'p-select',\n\tstyleUrl: 'select.component.scss',\n})\nexport class Select {\n\t/**\n\t * The items to show in the dropdown\n\t */\n\t@Prop() items: string | any[];\n\n\t/**\n\t * Wether to enable multi select\n\t */\n\t@Prop({ reflect: true }) multi: boolean;\n\n\t/**\n\t * Icon of the select box\n\t */\n\t@Prop() icon: IconVariant;\n\n\t/**\n\t * The current query\n\t */\n\t@Prop() query: string;\n\n\t/**\n\t * The placeholder of the input\n\t */\n\t@Prop() placeholder: string;\n\n\t/**\n\t * The placeholder of the input used for auto complete\n\t */\n\t@Prop() autocompletePlaceholder: string = 'Search...';\n\n\t/**\n\t * The current value\n\t */\n\t@Prop() value: any;\n\n\t/**\n\t * The key of the object to display\n\t */\n\t@Prop() displayKey: string = 'text';\n\n\t/**\n\t * The key of the object to display in the dropdown (overwrites displayKey)\n\t */\n\t@Prop() dropdownDisplayKey: string | undefined;\n\n\t/**\n\t * The key of the object to display in the input (overwrites displayKey)\n\t */\n\t@Prop() selectionDisplayKey: string | undefined;\n\n\t/**\n\t * The key of the object to return\n\t */\n\t@Prop() valueKey: string;\n\n\t/**\n\t * The key of avatar within an item to show\n\t */\n\t@Prop() avatarKey: string;\n\n\t/**\n\t * The key of icon variant within an item to show\n\t */\n\t@Prop() iconKey: string;\n\n\t/**\n\t * Wether to show the icon also on the selected Item\n\t */\n\t@Prop() showIconInSelectedItem: string;\n\n\t/**\n\t * The key of a class in an item to apply\n\t */\n\t@Prop() classKey: string = 'class';\n\n\t/**\n\t * Wether to apply the item's class also on the selected item\n\t */\n\t@Prop() applyClassOnSelectedItem: string;\n\n\t/**\n\t * The key of avatar letters within an item to show when the avatar url doesn't work\n\t */\n\t@Prop() avatarLettersKey: string;\n\n\t/**\n\t * The key to identify an object\n\t */\n\t@Prop() identifierKey: string;\n\n\t/**\n\t * The key of the object to display\n\t */\n\t@Prop() queryKey?: string;\n\n\t/**\n\t * Wether to automatically select the first item\n\t */\n\t@Prop() autoSelectFirst: boolean = true;\n\n\t/**\n\t * Wether to show the chevron or not\n\t */\n\t@Prop() showChevron: boolean = true;\n\n\t/**\n\t * The maximum amount of items to display\n\t */\n\t@Prop() maxDisplayedItems: number = 10;\n\n\t/**\n\t * Wether to enable autocomplete\n\t */\n\t@Prop() enableAutocomplete: boolean = true;\n\n\t/**\n\t * Wether the input uses async filtering\n\t */\n\t@Prop() asyncFilter: boolean = false;\n\n\t/**\n\t * Wether to show loading items\n\t */\n\t@Prop() loading: boolean = false;\n\n\t/**\n\t * Wether to show the select all item with multi select\n\t */\n\t@Prop() enableSelectAll: boolean = false;\n\n\t/**\n\t * The text of the select all item\n\t */\n\t@Prop() selectAllText: string = 'Select all';\n\n\t/**\n\t * The icon to prefix for select all\n\t */\n\t@Prop() selectAllIcon: IconVariant | undefined;\n\n\t/**\n\t * Event when the query of the autocomplete changes\n\t */\n\t@Event({\n\t\tbubbles: false,\n\t})\n\tqueryChange: EventEmitter<string>;\n\n\t/**\n\t * Event when the value changes\n\t */\n\t@Event({\n\t\tbubbles: false,\n\t})\n\tvalueChange: EventEmitter<any>;\n\n\t/**\n\t * Event when the select all item has been selected or not\n\t */\n\t@Event({\n\t\tbubbles: false,\n\t})\n\tselectAllChange: EventEmitter<any>;\n\n\t/**\n\t * Event when the dropdown shows\n\t */\n\t@Event({\n\t\tbubbles: false,\n\t})\n\tdropdownShown: EventEmitter<any>;\n\n\t/**\n\t * The size of the input group used by the select\n\t */\n\t@Prop() size: 'small' | 'medium' = 'medium';\n\n\t/**\n\t * The prefix of the input group used by the select\n\t */\n\t@Prop() prefix: string;\n\n\t/**\n\t * The label of the input group used by the select\n\t */\n\t@Prop() label: string;\n\n\t/**\n\t * The helper of the input group used by the select\n\t */\n\t@Prop() helper: string;\n\n\t/**\n\t * Wether the field is required\n\t */\n\t@Prop({ reflect: true }) required: boolean;\n\n\t/**\n\t * The helper of the input group used by the select\n\t */\n\t@Prop({ reflect: true }) error: string;\n\n\t/**\n\t * Wether the input group is disabled used by the select\n\t */\n\t@Prop({ reflect: true }) disabled: boolean = false;\n\n\t/**\n\t * Wether to show a \"add\" item\n\t */\n\t@Prop() showAddItem: boolean = false;\n\n\t/**\n\t * The text to show when add item is being shown\n\t */\n\t@Prop() addItemText: string = 'Add item';\n\n\t/**\n\t * Event when the add item is clicked\n\t */\n\t@Event({\n\t\tbubbles: false,\n\t})\n\tadd: EventEmitter;\n\n\t/**\n\t * The text to show when items is empty\n\t */\n\t@Prop() emptyStateText: string = 'No items available';\n\n\t/**\n\t * The host element\n\t */\n\t@Element() private _el: HTMLElement;\n\n\t@State() private _showDropdown: any = false;\n\t@State() private _selectedItem: any = null;\n\n\t@State() private _allSelected: boolean = false;\n\n\t@State() private _amountHidden = 0;\n\n\tprivate _inputRef: HTMLDivElement;\n\tprivate autocompleteInputRef: HTMLInputElement;\n\tprivate _multiContainerRef: HTMLElement;\n\n\tprivate _resizeObserver: ResizeObserver;\n\tprivate _resizeDebounceTimer: NodeJS.Timer;\n\n\tget _items() {\n\t\tif (!this.items || this.loading) {\n\t\t\treturn [];\n\t\t}\n\n\t\tlet items =\n\t\t\ttypeof this.items === 'string' ? JSON.parse(this.items) : this.items;\n\n\t\tif (typeof items?.[0] === 'string') {\n\t\t\tthis.displayKey = 'text';\n\t\t\tthis.valueKey = 'value';\n\n\t\t\titems = items.map(str => ({\n\t\t\t\tvalue: str,\n\t\t\t\ttext: str,\n\t\t\t}));\n\t\t}\n\n\t\tif (this.query?.length && !this.asyncFilter) {\n\t\t\titems = items.filter(item => {\n\t\t\t\tif (this.queryKey) {\n\t\t\t\t\treturn this._checkvalue(this.queryKey, item);\n\t\t\t\t}\n\n\t\t\t\treturn (\n\t\t\t\t\tthis._checkvalue(this._identifierKey, item) ||\n\t\t\t\t\tthis._checkvalue(this.displayKey, item)\n\t\t\t\t);\n\t\t\t});\n\t\t}\n\n\t\treturn items?.slice(0, this.maxDisplayedItems);\n\t}\n\n\tget _displayValue() {\n\t\tif (!this._selectedItem) {\n\t\t\treturn this.placeholder;\n\t\t}\n\n\t\tif (this.multi) {\n\t\t\tif (this._selectedItem?.length === 0) {\n\t\t\t\treturn this.placeholder;\n\t\t\t}\n\n\t\t\treturn (\n\t\t\t\t<div\n\t\t\t\t\tclass={`multi-container size-${this.size}`}\n\t\t\t\t\tref={ref => (this._multiContainerRef = ref)}\n\t\t\t\t>\n\t\t\t\t\t{this._selectedItem.map(item => (\n\t\t\t\t\t\t<div\n\t\t\t\t\t\t\tclass='item'\n\t\t\t\t\t\t\tonClick={() => this._selectValue(item)}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{item[this.selectionDisplayKey ?? this.displayKey]}\n\t\t\t\t\t\t\t<p-icon variant='negative' />\n\t\t\t\t\t\t</div>\n\t\t\t\t\t))}\n\n\t\t\t\t\t<div class='extra hidden'>+{this._amountHidden}</div>\n\t\t\t\t</div>\n\t\t\t);\n\t\t}\n\n\t\treturn this._getDisplay(this._selectedItem, true);\n\t}\n\n\tget _identifierKey() {\n\t\treturn this.identifierKey ?? this.valueKey ?? 'value';\n\t}\n\n\tcomponentDidLoad() {\n\t\tif (!this.valueKey && !this.identifierKey) {\n\t\t\tthrow new Error('You must provide a valueKey or identifierKey');\n\t\t}\n\n\t\tif (this.multi) {\n\t\t\tthis._setMultiContainerMaxWidth();\n\n\t\t\tthis._resizeObserver = new ResizeObserver(() => {\n\t\t\t\tif (this._resizeDebounceTimer) {\n\t\t\t\t\tclearTimeout(this._resizeDebounceTimer);\n\t\t\t\t\tthis._resizeDebounceTimer = null;\n\t\t\t\t}\n\n\t\t\t\tthis._resizeDebounceTimer = setTimeout(() => {\n\t\t\t\t\tthis._setMultiContainerMaxWidth();\n\t\t\t\t\tthis._checkSelectedItems();\n\t\t\t\t}, 200);\n\t\t\t});\n\t\t\tthis._resizeObserver.observe(this._el);\n\t\t}\n\n\t\tif (this.value) {\n\t\t\tthis._valueChange();\n\t\t\treturn;\n\t\t}\n\n\t\tthis.itemChanges();\n\t}\n\n\tcomponentDidRender() {\n\t\tif (this.multi) {\n\t\t\tthis._setMultiContainerMaxWidth();\n\t\t\tthis._checkSelectedItems();\n\t\t}\n\t}\n\n\tdisconnectedCallback() {\n\t\tif (this.multi) {\n\t\t\tthis._resizeObserver.disconnect();\n\t\t}\n\t}\n\n\trender() {\n\t\treturn (\n\t\t\t<Host class='p-select'>\n\t\t\t\t<p-dropdown\n\t\t\t\t\tdisableTriggerClick={true}\n\t\t\t\t\tcalculateWidth={true}\n\t\t\t\t\tinsideClick={true}\n\t\t\t\t\tscrollable={this.enableAutocomplete ? 'large' : true}\n\t\t\t\t\tshow={this._showDropdown}\n\t\t\t\t\tonIsOpen={ev => this._onDropdownOpen(ev)}\n\t\t\t\t>\n\t\t\t\t\t<p-input-group\n\t\t\t\t\t\tslot='trigger'\n\t\t\t\t\t\ticon={this.icon}\n\t\t\t\t\t\tsize={this.size}\n\t\t\t\t\t\tprefix={this.prefix}\n\t\t\t\t\t\tlabel={this.label}\n\t\t\t\t\t\thelper={this.helper}\n\t\t\t\t\t\trequired={this.required}\n\t\t\t\t\t\terror={this.error}\n\t\t\t\t\t\tdisabled={this.disabled}\n\t\t\t\t\t\tfocused={this._showDropdown}\n\t\t\t\t\t\tforceShowTooltip={this.error?.length && this._showDropdown}\n\t\t\t\t\t>\n\t\t\t\t\t\t<div\n\t\t\t\t\t\t\tslot='input'\n\t\t\t\t\t\t\tclass={`p-input read-only cursor-pointer ${\n\t\t\t\t\t\t\t\tthis.showChevron ? 'max-w-[calc(100%-3rem)]' : 'w-full'\n\t\t\t\t\t\t\t} size-${this.size} ${\n\t\t\t\t\t\t\t\tthis._displayValue === this.placeholder\n\t\t\t\t\t\t\t\t\t? 'font-medium text-storm-medium'\n\t\t\t\t\t\t\t\t\t: ''\n\t\t\t\t\t\t\t}`}\n\t\t\t\t\t\t\tcontenteditable\n\t\t\t\t\t\t\tonFocus={ev => this._onFocus(ev)}\n\t\t\t\t\t\t\tonMouseDown={ev => this._onMouseDown(ev)}\n\t\t\t\t\t\t\tonClick={() => this._onClick()}\n\t\t\t\t\t\t\tref={ref => (this._inputRef = ref)}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{this._displayValue}\n\t\t\t\t\t\t</div>\n\n\t\t\t\t\t\t{this.showChevron && (\n\t\t\t\t\t\t\t<p-icon\n\t\t\t\t\t\t\t\tvariant='caret'\n\t\t\t\t\t\t\t\tslot='suffix'\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t)}\n\t\t\t\t\t</p-input-group>\n\t\t\t\t\t<div slot='items'>\n\t\t\t\t\t\t{this.loading ? this._getLoadingItems() : this._getItems()}\n\t\t\t\t\t\t{this.showAddItem && this._getAddItem()}\n\t\t\t\t\t</div>\n\t\t\t\t</p-dropdown>\n\t\t\t</Host>\n\t\t);\n\t}\n\n\t@Listen('click', { target: 'document', capture: true })\n\tprotected documentClickHandler({ target }) {\n\t\tif (!this._showDropdown || childOf(target, this._el)) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis._showDropdown = false;\n\t}\n\n\t@Watch('value')\n\tprivate _valueChange() {\n\t\tsetTimeout(() => this._preselectItem());\n\t}\n\n\t@Watch('items')\n\tpublic itemChanges() {\n\t\tsetTimeout(() => this._preselectItem());\n\t}\n\n\t@Watch('_showDropdown')\n\tpublic _showDropdownChanges() {\n\t\tthis.dropdownShown.emit({\n\t\t\tvalue: this._showDropdown,\n\t\t\tquery: this.query,\n\t\t});\n\t}\n\n\t@Watch('multi')\n\tpublic multiChanges() {\n\t\tif (this._selectedItem && !Array.isArray(this._selectedItem)) {\n\t\t\tthis._selectedItem = [];\n\t\t}\n\t}\n\n\tprivate _preselectItem() {\n\t\tlet value =\n\t\t\ttypeof this.value === 'string' && this.multi\n\t\t\t\t? JSON.parse(this.value)\n\t\t\t\t: this.value;\n\n\t\tif (this.multi) {\n\t\t\tif (!Array.isArray(value)) {\n\t\t\t\tthis.value = [];\n\t\t\t\tthis.valueChange.emit(this.value);\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tthis.value = value;\n\t\t\tif (!value.length) {\n\t\t\t\tthis._selectedItem = [];\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tthis._selectedItem =\n\t\t\t\t!!this.valueKey && this.valueKey !== 'false'\n\t\t\t\t\t? this._items.filter(i => value.includes(i?.[this.valueKey]))\n\t\t\t\t\t: [...value];\n\t\t\treturn;\n\t\t}\n\n\t\tif (!this._selectedItem && !value && this.autoSelectFirst) {\n\t\t\tvalue = this._items[0];\n\t\t}\n\n\t\tconst identifier =\n\t\t\ttypeof value === 'object' && value !== null\n\t\t\t\t? value[this._identifierKey]\n\t\t\t\t: value;\n\t\tconst parsedValue =\n\t\t\ttypeof identifier === 'string' || typeof identifier === 'number'\n\t\t\t\t? identifier\n\t\t\t\t: JSON.stringify(identifier);\n\n\t\tconst currentValue = this._selectedItem\n\t\t\t? this._selectedItem?.[this._identifierKey]\n\t\t\t: null;\n\t\tconst currentParsedValue =\n\t\t\ttypeof currentValue === 'string' || typeof currentValue === 'number'\n\t\t\t\t? currentValue\n\t\t\t\t: JSON.stringify(currentValue);\n\n\t\tif (this._selectedItem && currentParsedValue === parsedValue) {\n\t\t\treturn;\n\t\t}\n\n\t\tif (!this._items?.length && value) {\n\t\t\tthis._selectValue(value, false);\n\t\t\treturn;\n\t\t}\n\n\t\tconst item = this._items.find(i => {\n\t\t\tconst itemIdentifier = i?.[this._identifierKey];\n\t\t\tconst parsedItemIdentifier =\n\t\t\t\ttypeof itemIdentifier === 'string' || typeof itemIdentifier === 'number'\n\t\t\t\t\t? itemIdentifier\n\t\t\t\t\t: JSON.stringify(itemIdentifier);\n\n\t\t\treturn parsedItemIdentifier === parsedValue;\n\t\t});\n\n\t\tthis._selectValue(!!item ? item : value, false);\n\t}\n\n\tprivate _selectValue(item, forceBlur = true) {\n\t\tlet value =\n\t\t\t!!this.valueKey && this.valueKey !== 'false' && item !== null\n\t\t\t\t? item?.[this.valueKey]\n\t\t\t\t: item;\n\n\t\tif (this.multi) {\n\t\t\tif (!this._selectedItem || !Array.isArray(this._selectedItem)) {\n\t\t\t\tthis._selectedItem = [];\n\t\t\t}\n\n\t\t\tif (!this.value || !Array.isArray(this.value)) {\n\t\t\t\tthis.value = [];\n\t\t\t}\n\n\t\t\tconst selectedItem = [...this._selectedItem];\n\t\t\tconst valueArray = [...this.value];\n\n\t\t\tconst includesIndex = selectedItem.findIndex(\n\t\t\t\ti => i[this._identifierKey] === item[this._identifierKey]\n\t\t\t);\n\t\t\tif (includesIndex === -1) {\n\t\t\t\tselectedItem.push(item);\n\t\t\t\tvalueArray.push(value);\n\t\t\t} else {\n\t\t\t\tselectedItem.splice(includesIndex, 1);\n\t\t\t\tvalueArray.splice(includesIndex, 1);\n\t\t\t}\n\n\t\t\tthis._selectedItem = selectedItem;\n\t\t\tthis.value = valueArray;\n\t\t\tthis.valueChange.emit(valueArray);\n\t\t\treturn;\n\t\t}\n\n\t\tthis._selectedItem = item;\n\t\tthis.value = value;\n\t\tthis.valueChange.emit(value);\n\n\t\tthis._onBlur(forceBlur);\n\t}\n\n\tprivate _onFocus(ev) {\n\t\tev.preventDefault();\n\t\tthis._inputRef.blur();\n\n\t\tif (!this._showDropdown) {\n\t\t\tthis._showDropdown = true;\n\t\t}\n\n\t\treturn;\n\t}\n\n\tprivate _onMouseDown(ev) {\n\t\tif (this.enableAutocomplete) {\n\t\t\treturn;\n\t\t}\n\n\t\tev.preventDefault();\n\t}\n\n\tprivate _onClick() {\n\t\tif (this.enableAutocomplete) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis._showDropdown = !this._showDropdown;\n\t}\n\n\tprivate _onBlur(force = false) {\n\t\tif (this.enableAutocomplete && !force) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis._showDropdown = false;\n\t}\n\n\tprivate _onAutoComplete(ev) {\n\t\tif (!this.enableAutocomplete) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis._showDropdown = true;\n\n\t\tthis.query = ev.target.value;\n\t\tthis.queryChange.emit(ev.target.value);\n\t}\n\n\tprivate _checkvalue(key, item) {\n\t\treturn (\n\t\t\titem?.[key]\n\t\t\t\t?.toString()\n\t\t\t\t?.toLowerCase()\n\t\t\t\t.indexOf(this.query?.toLowerCase()) >= 0\n\t\t);\n\t}\n\n\tprivate _getItems() {\n\t\tlet items = this._items.map(item => (\n\t\t\t<p-dropdown-menu-item\n\t\t\t\tuseContainer={false}\n\t\t\t\tonClick={() => this._selectValue(item)}\n\t\t\t\tactive={\n\t\t\t\t\tthis.multi &&\n\t\t\t\t\t!!this._selectedItem &&\n\t\t\t\t\tArray.isArray(this._selectedItem)\n\t\t\t\t\t\t? this._selectedItem.findIndex(\n\t\t\t\t\t\t\t\ti => i[this._identifierKey] === item[this._identifierKey]\n\t\t\t\t\t\t ) >= 0\n\t\t\t\t\t\t: item[this._identifierKey] ===\n\t\t\t\t\t\t this._selectedItem?.[this._identifierKey]\n\t\t\t\t}\n\t\t\t\tcheckbox={this.multi ? true : false}\n\t\t\t\tclass='justify-start'\n\t\t\t>\n\t\t\t\t{this._getDisplay(item)}\n\t\t\t</p-dropdown-menu-item>\n\t\t));\n\n\t\tif (!this._items.length) {\n\t\t\titems = [\n\t\t\t\t<p class='w-full p-2 text-center text-sm text-storm-medium'>\n\t\t\t\t\t{this.emptyStateText}\n\t\t\t\t</p>,\n\t\t\t];\n\t\t}\n\n\t\tif (this.enableSelectAll && this._items.length) {\n\t\t\titems.unshift(\n\t\t\t\t<p-dropdown-menu-item\n\t\t\t\t\tuseContainer={false}\n\t\t\t\t\tcheckbox\n\t\t\t\t\tonClick={() => this._selectAllChange()}\n\t\t\t\t\tactive={this._allSelected}\n\t\t\t\t>\n\t\t\t\t\t{this.selectAllIcon?.length ? (\n\t\t\t\t\t\t<span class='flex items-center gap-2'>\n\t\t\t\t\t\t\t<div class='flex w-6 justify-center text-lg'>\n\t\t\t\t\t\t\t\t<p-icon variant={this.selectAllIcon} />\n\t\t\t\t\t\t\t</div>{' '}\n\t\t\t\t\t\t\t{this.selectAllText}\n\t\t\t\t\t\t</span>\n\t\t\t\t\t) : (\n\t\t\t\t\t\tthis.selectAllText\n\t\t\t\t\t)}\n\t\t\t\t</p-dropdown-menu-item>\n\t\t\t);\n\t\t}\n\n\t\tif (this.enableAutocomplete) {\n\t\t\titems.unshift(this._getAutoCompleteItem());\n\t\t}\n\n\t\treturn items;\n\t}\n\n\tprivate _getAddItem() {\n\t\treturn (\n\t\t\t<p-dropdown-menu-item\n\t\t\t\tonClick={() => this.add.emit()}\n\t\t\t\tuseContainer={false}\n\t\t\t>\n\t\t\t\t<span class='flex items-center gap-1 font-semibold text-indigo'>\n\t\t\t\t\t{this.addItemText}\n\t\t\t\t\t<p-icon variant='plus' />\n\t\t\t\t</span>\n\t\t\t</p-dropdown-menu-item>\n\t\t);\n\t}\n\n\tprivate _getLoadingItems() {\n\t\tconst items = [0, 0, 0].map(() => (\n\t\t\t<p-dropdown-menu-item enableHover={false}>\n\t\t\t\t<p-loader\n\t\t\t\t\tvariant='ghost'\n\t\t\t\t\tclass='h-6 w-full rounded'\n\t\t\t\t/>\n\t\t\t</p-dropdown-menu-item>\n\t\t));\n\n\t\tif (this.enableAutocomplete) {\n\t\t\titems.unshift(this._getAutoCompleteItem());\n\t\t}\n\n\t\treturn items;\n\t}\n\n\tprivate _getAutoCompleteItem() {\n\t\treturn (\n\t\t\t<div class='sticky top-0 -mt-2 bg-white pt-2'>\n\t\t\t\t<input\n\t\t\t\t\tclass='p-input size-small sticky top-2 mb-2'\n\t\t\t\t\tplaceholder={this.autocompletePlaceholder}\n\t\t\t\t\tonInput={ev => this._onAutoComplete(ev)}\n\t\t\t\t\tref={ref => (this.autocompleteInputRef = ref)}\n\t\t\t\t\tvalue={this.query}\n\t\t\t\t/>\n\t\t\t</div>\n\t\t);\n\t}\n\n\tprivate _setMultiContainerMaxWidth() {\n\t\tif (!this._inputRef || !this._multiContainerRef) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis._multiContainerRef.style.maxWidth = `${\n\t\t\tthis._inputRef.clientWidth - 16\n\t\t}px`;\n\t}\n\n\tprivate _checkSelectedItems() {\n\t\tif (!this._multiContainerRef) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst containerRect = this._multiContainerRef.getBoundingClientRect();\n\t\tconst items = Array.from(\n\t\t\tthis._multiContainerRef.querySelectorAll('.item')\n\t\t) as HTMLElement[];\n\n\t\tlet amountHidden = 0;\n\n\t\tfor (const child of items) {\n\t\t\tchild.classList.remove('hidden');\n\n\t\t\tconst childRect = child.getBoundingClientRect();\n\t\t\tif (childRect.right > containerRect.right) {\n\t\t\t\tchild.classList.add('hidden');\n\t\t\t\tamountHidden++;\n\t\t\t}\n\t\t}\n\n\t\tthis._amountHidden = amountHidden;\n\t\tconst extra = this._multiContainerRef.querySelector('.extra');\n\t\tif (!extra) {\n\t\t\treturn;\n\t\t}\n\n\t\tif (!extra.classList.contains('hidden')) {\n\t\t\textra.classList.add('hidden');\n\t\t}\n\n\t\tif (amountHidden > 0) {\n\t\t\textra.classList.remove('hidden');\n\t\t}\n\t}\n\n\tprivate _onDropdownOpen(ev) {\n\t\tif (!ev.detail || !this.autocompleteInputRef) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis.autocompleteInputRef.focus();\n\t}\n\n\tprivate _selectAllChange() {\n\t\tthis._allSelected = !this._allSelected;\n\t\tthis.selectAllChange.emit(this._allSelected);\n\t}\n\n\tprivate _getDisplay(item, isSelection = false) {\n\t\tlet content = (\n\t\t\t<div class='text-container'>\n\t\t\t\t{\n\t\t\t\t\titem[\n\t\t\t\t\t\tisSelection\n\t\t\t\t\t\t\t? this.selectionDisplayKey ?? this.displayKey\n\t\t\t\t\t\t\t: this.displayKey\n\t\t\t\t\t]\n\t\t\t\t}\n\t\t\t</div>\n\t\t);\n\n\t\tif (this.avatarKey) {\n\t\t\tcontent = (\n\t\t\t\t<span class='flex items-center gap-2'>\n\t\t\t\t\t<p-avatar\n\t\t\t\t\t\tsize='xs'\n\t\t\t\t\t\tsrc={item[this.avatarKey]}\n\t\t\t\t\t\tletters={item[this.avatarLettersKey]}\n\t\t\t\t\t></p-avatar>\n\t\t\t\t\t<div class='text-container'>\n\t\t\t\t\t\t{item[this.dropdownDisplayKey ?? this.displayKey]}\n\t\t\t\t\t</div>\n\t\t\t\t</span>\n\t\t\t);\n\t\t}\n\n\t\tif (this.iconKey && (!isSelection || this.showIconInSelectedItem)) {\n\t\t\tcontent = (\n\t\t\t\t<span class='flex items-center gap-2'>\n\t\t\t\t\t<p-icon variant={item[this.iconKey] as IconVariant} />\n\t\t\t\t\t<div class='text-container'>\n\t\t\t\t\t\t{item[this.dropdownDisplayKey ?? this.displayKey]}\n\t\t\t\t\t</div>\n\t\t\t\t</span>\n\t\t\t);\n\t\t}\n\n\t\treturn (\n\t\t\t<div\n\t\t\t\tclass={\n\t\t\t\t\t!isSelection || this.applyClassOnSelectedItem\n\t\t\t\t\t\t? `max-w-full ${item?.class}`\n\t\t\t\t\t\t: 'max-w-full'\n\t\t\t\t}\n\t\t\t>\n\t\t\t\t{content}\n\t\t\t</div>\n\t\t);\n\t}\n}\n"],"mappings":"oGAAA,MAAMA,EAAqB,ugL,MCmBdC,EAAM,M,6WA6BwB,Y,qCAUb,O,iMAmCF,Q,kJAyBQ,K,iBAKJ,K,uBAKK,G,wBAKE,K,iBAKP,M,aAKJ,M,qBAKQ,M,mBAKH,a,uCA0CG,S,4HA8BU,M,iBAKd,M,iBAKD,W,oBAaG,qB,mBAOK,M,mBACA,K,kBAEG,M,mBAER,C,CASjC,UAAIC,G,MACH,IAAKC,KAAKC,OAASD,KAAKE,QAAS,CAChC,MAAO,E,CAGR,IAAID,SACID,KAAKC,QAAU,SAAWE,KAAKC,MAAMJ,KAAKC,OAASD,KAAKC,MAEhE,UAAWA,IAAK,MAALA,SAAK,SAALA,EAAQ,MAAO,SAAU,CACnCD,KAAKK,WAAa,OAClBL,KAAKM,SAAW,QAEhBL,EAAQA,EAAMM,KAAIC,IAAG,CACpBC,MAAOD,EACPE,KAAMF,K,CAIR,KAAIG,EAAAX,KAAKY,SAAK,MAAAD,SAAA,SAAAA,EAAEE,UAAWb,KAAKc,YAAa,CAC5Cb,EAAQA,EAAMc,QAAOC,IACpB,GAAIhB,KAAKiB,SAAU,CAClB,OAAOjB,KAAKkB,YAAYlB,KAAKiB,SAAUD,E,CAGxC,OACChB,KAAKkB,YAAYlB,KAAKmB,eAAgBH,IACtChB,KAAKkB,YAAYlB,KAAKK,WAAYW,EAAK,G,CAK1C,OAAOf,IAAK,MAALA,SAAK,SAALA,EAAOmB,MAAM,EAAGpB,KAAKqB,kB,CAG7B,iBAAIC,G,MACH,IAAKtB,KAAKuB,cAAe,CACxB,OAAOvB,KAAKwB,W,CAGb,GAAIxB,KAAKyB,MAAO,CACf,KAAId,EAAAX,KAAKuB,iBAAa,MAAAZ,SAAA,SAAAA,EAAEE,UAAW,EAAG,CACrC,OAAOb,KAAKwB,W,CAGb,OACCE,EAAA,OACCC,MAAO,wBAAwB3B,KAAK4B,OACpCC,IAAKA,GAAQ7B,KAAK8B,mBAAqBD,GAEtC7B,KAAKuB,cAAchB,KAAIS,I,MAAQ,OAC/BU,EAAA,OACCC,MAAM,OACNI,QAAS,IAAM/B,KAAKgC,aAAahB,IAEhCA,GAAKL,EAAAX,KAAKiC,uBAAmB,MAAAtB,SAAA,EAAAA,EAAIX,KAAKK,YACvCqB,EAAA,UAAQQ,QAAQ,aACX,IAGPR,EAAA,OAAKC,MAAM,gBAAc,IAAG3B,KAAKmC,e,CAKpC,OAAOnC,KAAKoC,YAAYpC,KAAKuB,cAAe,K,CAG7C,kBAAIJ,G,QACH,OAAOkB,GAAA1B,EAAAX,KAAKsC,iBAAa,MAAA3B,SAAA,EAAAA,EAAIX,KAAKM,YAAQ,MAAA+B,SAAA,EAAAA,EAAI,O,CAG/C,gBAAAE,GACC,IAAKvC,KAAKM,WAAaN,KAAKsC,cAAe,CAC1C,MAAM,IAAIE,MAAM,+C,CAGjB,GAAIxC,KAAKyB,MAAO,CACfzB,KAAKyC,6BAELzC,KAAK0C,gBAAkB,IAAIC,gBAAe,KACzC,GAAI3C,KAAK4C,qBAAsB,CAC9BC,aAAa7C,KAAK4C,sBAClB5C,KAAK4C,qBAAuB,I,CAG7B5C,KAAK4C,qBAAuBE,YAAW,KACtC9C,KAAKyC,6BACLzC,KAAK+C,qBAAqB,GACxB,IAAI,IAER/C,KAAK0C,gBAAgBM,QAAQhD,KAAKiD,I,CAGnC,GAAIjD,KAAKS,MAAO,CACfT,KAAKkD,eACL,M,CAGDlD,KAAKmD,a,CAGN,kBAAAC,GACC,GAAIpD,KAAKyB,MAAO,CACfzB,KAAKyC,6BACLzC,KAAK+C,qB,EAIP,oBAAAM,GACC,GAAIrD,KAAKyB,MAAO,CACfzB,KAAK0C,gBAAgBY,Y,EAIvB,MAAAC,G,MACC,OACC7B,EAAC8B,EAAI,CAAC7B,MAAM,YACXD,EAAA,cACC+B,oBAAqB,KACrBC,eAAgB,KAChBC,YAAa,KACbC,WAAY5D,KAAK6D,mBAAqB,QAAU,KAChDC,KAAM9D,KAAK+D,cACXC,SAAUC,GAAMjE,KAAKkE,gBAAgBD,IAErCvC,EAAA,iBACCyC,KAAK,UACLC,KAAMpE,KAAKoE,KACXxC,KAAM5B,KAAK4B,KACXyC,OAAQrE,KAAKqE,OACbC,MAAOtE,KAAKsE,MACZC,OAAQvE,KAAKuE,OACbC,SAAUxE,KAAKwE,SACfC,MAAOzE,KAAKyE,MACZC,SAAU1E,KAAK0E,SACfC,QAAS3E,KAAK+D,cACda,mBAAkBjE,EAAAX,KAAKyE,SAAK,MAAA9D,SAAA,SAAAA,EAAEE,SAAUb,KAAK+D,eAE7CrC,EAAA,OACCyC,KAAK,QACLxC,MAAO,oCACN3B,KAAK6E,YAAc,0BAA4B,iBACvC7E,KAAK4B,QACb5B,KAAKsB,gBAAkBtB,KAAKwB,YACzB,gCACA,KAEJsD,gBAAe,KACfC,QAASd,GAAMjE,KAAKgF,SAASf,GAC7BgB,YAAahB,GAAMjE,KAAKkF,aAAajB,GACrClC,QAAS,IAAM/B,KAAKmF,WACpBtD,IAAKA,GAAQ7B,KAAKoF,UAAYvD,GAE7B7B,KAAKsB,eAGNtB,KAAK6E,aACLnD,EAAA,UACCQ,QAAQ,QACRiC,KAAK,YAIRzC,EAAA,OAAKyC,KAAK,SACRnE,KAAKE,QAAUF,KAAKqF,mBAAqBrF,KAAKsF,YAC9CtF,KAAKuF,aAAevF,KAAKwF,gB,CAQrB,oBAAAC,EAAqBC,OAAEA,IAChC,IAAK1F,KAAK+D,eAAiB4B,EAAQD,EAAQ1F,KAAKiD,KAAM,CACrD,M,CAGDjD,KAAK+D,cAAgB,K,CAId,YAAAb,GACPJ,YAAW,IAAM9C,KAAK4F,kB,CAIhB,WAAAzC,GACNL,YAAW,IAAM9C,KAAK4F,kB,CAIhB,oBAAAC,GACN7F,KAAK8F,cAAcC,KAAK,CACvBtF,MAAOT,KAAK+D,cACZnD,MAAOZ,KAAKY,O,CAKP,YAAAoF,GACN,GAAIhG,KAAKuB,gBAAkB0E,MAAMC,QAAQlG,KAAKuB,eAAgB,CAC7DvB,KAAKuB,cAAgB,E,EAIf,cAAAqE,G,QACP,IAAInF,SACIT,KAAKS,QAAU,UAAYT,KAAKyB,MACpCtB,KAAKC,MAAMJ,KAAKS,OAChBT,KAAKS,MAET,GAAIT,KAAKyB,MAAO,CACf,IAAKwE,MAAMC,QAAQzF,GAAQ,CAC1BT,KAAKS,MAAQ,GACbT,KAAKmG,YAAYJ,KAAK/F,KAAKS,OAC3B,M,CAGDT,KAAKS,MAAQA,EACb,IAAKA,EAAMI,OAAQ,CAClBb,KAAKuB,cAAgB,GACrB,M,CAGDvB,KAAKuB,gBACFvB,KAAKM,UAAYN,KAAKM,WAAa,QAClCN,KAAKD,OAAOgB,QAAOqF,GAAK3F,EAAM4F,SAASD,IAAC,MAADA,SAAC,SAADA,EAAIpG,KAAKM,aAChD,IAAIG,GACR,M,CAGD,IAAKT,KAAKuB,gBAAkBd,GAAST,KAAKsG,gBAAiB,CAC1D7F,EAAQT,KAAKD,OAAO,E,CAGrB,MAAMwG,SACE9F,IAAU,UAAYA,IAAU,KACpCA,EAAMT,KAAKmB,gBACXV,EACJ,MAAM+F,SACED,IAAe,iBAAmBA,IAAe,SACrDA,EACApG,KAAKsG,UAAUF,GAEnB,MAAMG,EAAe1G,KAAKuB,eACvBZ,EAAAX,KAAKuB,iBAAa,MAAAZ,SAAA,SAAAA,EAAGX,KAAKmB,gBAC1B,KACH,MAAMwF,SACED,IAAiB,iBAAmBA,IAAiB,SACzDA,EACAvG,KAAKsG,UAAUC,GAEnB,GAAI1G,KAAKuB,eAAiBoF,IAAuBH,EAAa,CAC7D,M,CAGD,MAAKnE,EAAArC,KAAKD,UAAM,MAAAsC,SAAA,SAAAA,EAAExB,SAAUJ,EAAO,CAClCT,KAAKgC,aAAavB,EAAO,OACzB,M,CAGD,MAAMO,EAAOhB,KAAKD,OAAO6G,MAAKR,IAC7B,MAAMS,EAAiBT,IAAC,MAADA,SAAC,SAADA,EAAIpG,KAAKmB,gBAChC,MAAM2F,SACED,IAAmB,iBAAmBA,IAAmB,SAC7DA,EACA1G,KAAKsG,UAAUI,GAEnB,OAAOC,IAAyBN,CAAW,IAG5CxG,KAAKgC,eAAehB,EAAOA,EAAOP,EAAO,M,CAGlC,YAAAuB,CAAahB,EAAM+F,EAAY,MACtC,IAAItG,IACDT,KAAKM,UAAYN,KAAKM,WAAa,SAAWU,IAAS,KACtDA,IAAI,MAAJA,SAAI,SAAJA,EAAOhB,KAAKM,UACZU,EAEJ,GAAIhB,KAAKyB,MAAO,CACf,IAAKzB,KAAKuB,gBAAkB0E,MAAMC,QAAQlG,KAAKuB,eAAgB,CAC9DvB,KAAKuB,cAAgB,E,CAGtB,IAAKvB,KAAKS,QAAUwF,MAAMC,QAAQlG,KAAKS,OAAQ,CAC9CT,KAAKS,MAAQ,E,CAGd,MAAMuG,EAAe,IAAIhH,KAAKuB,eAC9B,MAAM0F,EAAa,IAAIjH,KAAKS,OAE5B,MAAMyG,EAAgBF,EAAaG,WAClCf,GAAKA,EAAEpG,KAAKmB,kBAAoBH,EAAKhB,KAAKmB,kBAE3C,GAAI+F,KAAmB,EAAG,CACzBF,EAAaI,KAAKpG,GAClBiG,EAAWG,KAAK3G,E,KACV,CACNuG,EAAaK,OAAOH,EAAe,GACnCD,EAAWI,OAAOH,EAAe,E,CAGlClH,KAAKuB,cAAgByF,EACrBhH,KAAKS,MAAQwG,EACbjH,KAAKmG,YAAYJ,KAAKkB,GACtB,M,CAGDjH,KAAKuB,cAAgBP,EACrBhB,KAAKS,MAAQA,EACbT,KAAKmG,YAAYJ,KAAKtF,GAEtBT,KAAKsH,QAAQP,E,CAGN,QAAA/B,CAASf,GAChBA,EAAGsD,iBACHvH,KAAKoF,UAAUoC,OAEf,IAAKxH,KAAK+D,cAAe,CACxB/D,KAAK+D,cAAgB,I,CAGtB,M,CAGO,YAAAmB,CAAajB,GACpB,GAAIjE,KAAK6D,mBAAoB,CAC5B,M,CAGDI,EAAGsD,gB,CAGI,QAAApC,GACP,GAAInF,KAAK6D,mBAAoB,CAC5B,M,CAGD7D,KAAK+D,eAAiB/D,KAAK+D,a,CAGpB,OAAAuD,CAAQG,EAAQ,OACvB,GAAIzH,KAAK6D,qBAAuB4D,EAAO,CACtC,M,CAGDzH,KAAK+D,cAAgB,K,CAGd,eAAA2D,CAAgBzD,GACvB,IAAKjE,KAAK6D,mBAAoB,CAC7B,M,CAGD7D,KAAK+D,cAAgB,KAErB/D,KAAKY,MAAQqD,EAAGyB,OAAOjF,MACvBT,KAAK2H,YAAY5B,KAAK9B,EAAGyB,OAAOjF,M,CAGzB,WAAAS,CAAY0G,EAAK5G,G,UACxB,QACCqB,GAAA1B,EAAAK,IAAI,MAAJA,SAAI,SAAJA,EAAO4G,MAAI,MAAAjH,SAAA,SAAAA,EACRkH,cAAU,MAAAxF,SAAA,SAAAA,EACVyF,cACDC,SAAQC,EAAAhI,KAAKY,SAAK,MAAAoH,SAAA,SAAAA,EAAEF,iBAAkB,C,CAIlC,SAAAxC,G,MACP,IAAIrF,EAAQD,KAAKD,OAAOQ,KAAIS,I,MAAQ,OACnCU,EAAA,wBACCuG,aAAc,MACdlG,QAAS,IAAM/B,KAAKgC,aAAahB,GACjCkH,OACClI,KAAKyB,SACHzB,KAAKuB,eACP0E,MAAMC,QAAQlG,KAAKuB,eAChBvB,KAAKuB,cAAc4F,WACnBf,GAAKA,EAAEpG,KAAKmB,kBAAoBH,EAAKhB,KAAKmB,mBACrC,EACLH,EAAKhB,KAAKmB,oBACVR,EAAAX,KAAKuB,iBAAa,MAAAZ,SAAA,SAAAA,EAAGX,KAAKmB,iBAE9BgH,SAAUnI,KAAKyB,MAAQ,KAAO,MAC9BE,MAAM,iBAEL3B,KAAKoC,YAAYpB,GACI,IAGxB,IAAKhB,KAAKD,OAAOc,OAAQ,CACxBZ,EAAQ,CACPyB,EAAA,KAAGC,MAAM,oDACP3B,KAAKoI,gB,CAKT,GAAIpI,KAAKqI,iBAAmBrI,KAAKD,OAAOc,OAAQ,CAC/CZ,EAAMqI,QACL5G,EAAA,wBACCuG,aAAc,MACdE,SAAQ,KACRpG,QAAS,IAAM/B,KAAKuI,mBACpBL,OAAQlI,KAAKwI,gBAEZ7H,EAAAX,KAAKyI,iBAAa,MAAA9H,SAAA,SAAAA,EAAEE,QACpBa,EAAA,QAAMC,MAAM,2BACXD,EAAA,OAAKC,MAAM,mCACVD,EAAA,UAAQQ,QAASlC,KAAKyI,iBAChB,IACNzI,KAAK0I,eAGP1I,KAAkB,e,CAMtB,GAAIA,KAAK6D,mBAAoB,CAC5B5D,EAAMqI,QAAQtI,KAAK2I,uB,CAGpB,OAAO1I,C,CAGA,WAAAuF,GACP,OACC9D,EAAA,wBACCK,QAAS,IAAM/B,KAAK4I,IAAI7C,OACxBkC,aAAc,OAEdvG,EAAA,QAAMC,MAAM,qDACV3B,KAAK6I,YACNnH,EAAA,UAAQQ,QAAQ,U,CAMZ,gBAAAmD,GACP,MAAMpF,EAAQ,CAAC,EAAG,EAAG,GAAGM,KAAI,IAC3BmB,EAAA,wBAAsBoH,YAAa,OAClCpH,EAAA,YACCQ,QAAQ,QACRP,MAAM,0BAKT,GAAI3B,KAAK6D,mBAAoB,CAC5B5D,EAAMqI,QAAQtI,KAAK2I,uB,CAGpB,OAAO1I,C,CAGA,oBAAA0I,GACP,OACCjH,EAAA,OAAKC,MAAM,oCACVD,EAAA,SACCC,MAAM,uCACNH,YAAaxB,KAAK+I,wBAClBC,QAAS/E,GAAMjE,KAAK0H,gBAAgBzD,GACpCpC,IAAKA,GAAQ7B,KAAKiJ,qBAAuBpH,EACzCpB,MAAOT,KAAKY,Q,CAMR,0BAAA6B,GACP,IAAKzC,KAAKoF,YAAcpF,KAAK8B,mBAAoB,CAChD,M,CAGD9B,KAAK8B,mBAAmBoH,MAAMC,SAAW,GACxCnJ,KAAKoF,UAAUgE,YAAc,M,CAIvB,mBAAArG,GACP,IAAK/C,KAAK8B,mBAAoB,CAC7B,M,CAGD,MAAMuH,EAAgBrJ,KAAK8B,mBAAmBwH,wBAC9C,MAAMrJ,EAAQgG,MAAMsD,KACnBvJ,KAAK8B,mBAAmB0H,iBAAiB,UAG1C,IAAIC,EAAe,EAEnB,IAAK,MAAMC,KAASzJ,EAAO,CAC1ByJ,EAAMC,UAAUC,OAAO,UAEvB,MAAMC,EAAYH,EAAMJ,wBACxB,GAAIO,EAAUC,MAAQT,EAAcS,MAAO,CAC1CJ,EAAMC,UAAUf,IAAI,UACpBa,G,EAIFzJ,KAAKmC,cAAgBsH,EACrB,MAAMM,EAAQ/J,KAAK8B,mBAAmBkI,cAAc,UACpD,IAAKD,EAAO,CACX,M,CAGD,IAAKA,EAAMJ,UAAUM,SAAS,UAAW,CACxCF,EAAMJ,UAAUf,IAAI,S,CAGrB,GAAIa,EAAe,EAAG,CACrBM,EAAMJ,UAAUC,OAAO,S,EAIjB,eAAA1F,CAAgBD,GACvB,IAAKA,EAAGiG,SAAWlK,KAAKiJ,qBAAsB,CAC7C,M,CAGDjJ,KAAKiJ,qBAAqBkB,O,CAGnB,gBAAA5B,GACPvI,KAAKwI,cAAgBxI,KAAKwI,aAC1BxI,KAAKoK,gBAAgBrE,KAAK/F,KAAKwI,a,CAGxB,WAAApG,CAAYpB,EAAMqJ,EAAc,O,UACvC,IAAIC,EACH5I,EAAA,OAAKC,MAAM,kBAETX,EACCqJ,GACG1J,EAAAX,KAAKiC,uBAAmB,MAAAtB,SAAA,EAAAA,EAAIX,KAAKK,WACjCL,KAAKK,aAMZ,GAAIL,KAAKuK,UAAW,CACnBD,EACC5I,EAAA,QAAMC,MAAM,2BACXD,EAAA,YACCE,KAAK,KACL4I,IAAKxJ,EAAKhB,KAAKuK,WACfE,QAASzJ,EAAKhB,KAAK0K,oBAEpBhJ,EAAA,OAAKC,MAAM,kBACTX,GAAKqB,EAAArC,KAAK2K,sBAAkB,MAAAtI,SAAA,EAAAA,EAAIrC,KAAKK,a,CAM1C,GAAIL,KAAK4K,WAAaP,GAAerK,KAAK6K,wBAAyB,CAClEP,EACC5I,EAAA,QAAMC,MAAM,2BACXD,EAAA,UAAQQ,QAASlB,EAAKhB,KAAK4K,WAC3BlJ,EAAA,OAAKC,MAAM,kBACTX,GAAKgH,EAAAhI,KAAK2K,sBAAkB,MAAA3C,SAAA,EAAAA,EAAIhI,KAAKK,a,CAM1C,OACCqB,EAAA,OACCC,OACE0I,GAAerK,KAAK8K,yBAClB,cAAc9J,IAAI,MAAJA,SAAI,SAAJA,EAAMW,QACpB,cAGH2I,E"}