@paperless/core 1.68.0 → 1.69.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (58) hide show
  1. package/CHANGELOG.md +22 -0
  2. package/dist/assets/icons/duplicate.svg +9 -0
  3. package/dist/build/{p-39cdf6bc.entry.js → p-0d4538bd.entry.js} +2 -2
  4. package/dist/build/p-0d4538bd.entry.js.map +1 -0
  5. package/dist/build/p-2360542e.entry.js.map +1 -1
  6. package/dist/build/p-64331134.entry.js +2 -0
  7. package/dist/build/p-64331134.entry.js.map +1 -0
  8. package/dist/build/paperless.esm.js +1 -1
  9. package/dist/cjs/p-button_3.cjs.entry.js +11 -0
  10. package/dist/cjs/p-button_3.cjs.entry.js.map +1 -1
  11. package/dist/cjs/p-dropdown-menu-container_2.cjs.entry.js.map +1 -1
  12. package/dist/cjs/p-select.cjs.entry.js +1 -1
  13. package/dist/cjs/p-select.cjs.entry.js.map +1 -1
  14. package/dist/collection/assets/icons/duplicate.svg +9 -0
  15. package/dist/collection/components/atoms/button/button.component.js +1 -1
  16. package/dist/collection/components/atoms/dropdown-menu-item/dropdown-menu-item.component.js +1 -1
  17. package/dist/collection/components/atoms/icon/icon.component.js +1 -1
  18. package/dist/collection/components/atoms/label/label.component.js +1 -1
  19. package/dist/collection/components/atoms/segment-item/segment-item.component.js +1 -1
  20. package/dist/collection/components/atoms/status/status.component.js +1 -1
  21. package/dist/collection/components/helpers/table-row-action/table-row-action.component.js +1 -1
  22. package/dist/collection/components/molecules/input-group/input-group.component.js +1 -1
  23. package/dist/collection/components/molecules/navigation-item/navigation-item.component.js +1 -1
  24. package/dist/collection/components/molecules/select/select.component.js +3 -3
  25. package/dist/collection/components/molecules/select/select.component.js.map +1 -1
  26. package/dist/collection/components/molecules/table-header/table-header.component.js +1 -1
  27. package/dist/collection/components/molecules/toast/toast.component.js +1 -1
  28. package/dist/collection/components/organisms/table/table.component.js +1 -1
  29. package/dist/collection/utils/icons.js +2 -0
  30. package/dist/collection/utils/icons.js.map +1 -1
  31. package/dist/components/dropdown-menu-container.component.js.map +1 -1
  32. package/dist/components/icon.component.js +11 -0
  33. package/dist/components/icon.component.js.map +1 -1
  34. package/dist/components/p-select.js +1 -1
  35. package/dist/components/p-select.js.map +1 -1
  36. package/dist/esm/p-button_3.entry.js +11 -0
  37. package/dist/esm/p-button_3.entry.js.map +1 -1
  38. package/dist/esm/p-dropdown-menu-container_2.entry.js.map +1 -1
  39. package/dist/esm/p-select.entry.js +1 -1
  40. package/dist/esm/p-select.entry.js.map +1 -1
  41. package/dist/index.html +1 -1
  42. package/dist/paperless/{p-39cdf6bc.entry.js → p-0d4538bd.entry.js} +2 -2
  43. package/dist/paperless/p-0d4538bd.entry.js.map +1 -0
  44. package/dist/paperless/p-2360542e.entry.js.map +1 -1
  45. package/dist/paperless/p-64331134.entry.js +2 -0
  46. package/dist/paperless/p-64331134.entry.js.map +1 -0
  47. package/dist/paperless/paperless.esm.js +1 -1
  48. package/dist/sw.js +1 -1
  49. package/dist/sw.js.map +1 -1
  50. package/dist/types/utils/icons.d.ts +1 -0
  51. package/hydrate/index.js +12 -1
  52. package/package.json +1 -1
  53. package/dist/build/p-39cdf6bc.entry.js.map +0 -1
  54. package/dist/build/p-4feb9ce7.entry.js +0 -2
  55. package/dist/build/p-4feb9ce7.entry.js.map +0 -1
  56. package/dist/paperless/p-39cdf6bc.entry.js.map +0 -1
  57. package/dist/paperless/p-4feb9ce7.entry.js +0 -2
  58. package/dist/paperless/p-4feb9ce7.entry.js.map +0 -1
package/CHANGELOG.md CHANGED
@@ -3,6 +3,28 @@
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
+ # [1.69.0](https://github.com/ionic-team/stencil-component-starter/compare/v1.68.1...v1.69.0) (2025-04-11)
7
+
8
+
9
+ ### Features
10
+
11
+ * **atoms/icons:** Add duplicate ([26f6ff6](https://github.com/ionic-team/stencil-component-starter/commit/26f6ff6e7e2badd802709c9e1303d987a7b7446c))
12
+
13
+
14
+
15
+
16
+
17
+ ## [1.68.1](https://github.com/ionic-team/stencil-component-starter/compare/v1.68.0...v1.68.1) (2025-04-04)
18
+
19
+
20
+ ### Bug Fixes
21
+
22
+ * **molecules/select:** Add type to autocomplete input so the style is applied ([2468842](https://github.com/ionic-team/stencil-component-starter/commit/2468842fe8669bf85cc9de30d515e5bd1d365f7b))
23
+
24
+
25
+
26
+
27
+
6
28
  # [1.68.0](https://github.com/ionic-team/stencil-component-starter/compare/v1.67.11...v1.68.0) (2025-04-03)
7
29
 
8
30
 
@@ -0,0 +1,9 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <svg width="1em" height="1em" viewBox="0 0 16 16" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
3
+ <title>⚛️ Atoms/icons/duplicate</title>
4
+ <g id="⚛️-Atoms/icons/duplicate" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">
5
+ <rect id="Bounding-box" x="0" y="0" width="16" height="16"></rect>
6
+ <rect id="Rectangle" fill="currentColor" x="0" y="3" width="13" height="13" rx="2"></rect>
7
+ <path d="M3,11 C3,12.1045695 3.8954305,13 5,13 L3,13 Z M14,4 C14,2.8954305 13.1045695,2 12,2 L3,2 C3,0.8954305 3.8954305,2.22044605e-16 5,0 L14,0 C15.1045695,0 16,0.8954305 16,2 L16,11 C16,12.1045695 15.1045695,13 14,13 Z" id="Combined-Shape" fill="currentColor"></path>
8
+ </g>
9
+ </svg>
@@ -1,2 +1,2 @@
1
- import{r as t,c as i,h as e,H as s,g as r}from"./p-0c2cc6c4.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))!important}.border-mystic-dark{--tw-border-opacity:1!important;border-color:rgb(218 230 240/var(--tw-border-opacity))!important}.bg-indigo-light{background-color:rgb(241 246 255/var(--tw-bg-opacity))!important}.bg-indigo-light,.bg-white{--tw-bg-opacity:1!important}.bg-white{background-color:rgb(255 255 255/var(--tw-bg-opacity))!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));border-color:rgb(218 230 240/var(--tw-border-opacity))!important;border-radius:.375rem;border-style:solid!important;border-width:1px;color:rgb(39 40 56/var(--tw-text-opacity));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));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));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))!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));border-radius:.25rem;color:rgb(44 75 169/var(--tw-text-opacity));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));font-size:.75rem;line-height:1rem}p-select .multi-container .extra{--tw-text-opacity:1;color:rgb(128 130 158/var(--tw-text-opacity));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))!important}.text-storm-medium{--tw-text-opacity:1!important;color:rgb(128 130 158/var(--tw-text-opacity))!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.usePortal=false;this.strategy="absolute";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(){return this._getParsedItems()}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),usePortal:this.usePortal,strategy:this.strategy},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:"chevron",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._getParsedItems(false);const h=a.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(!!h?h: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:"xsmall",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)}_getParsedItems(t=true){var i;if(!this.items||this.loading){return[]}let e=typeof this.items==="string"?JSON.parse(this.items):this.items;if(typeof(e===null||e===void 0?void 0:e[0])==="string"){this.displayKey="text";this.valueKey="value";e=e.map((t=>({value:t,text:t})))}if(((i=this.query)===null||i===void 0?void 0:i.length)&&!this.asyncFilter){e=e.filter((t=>{if(this.queryKey){return this._checkvalue(this.queryKey,t)}return this._checkvalue(this._identifierKey,t)||this._checkvalue(this.displayKey,t)}))}if(!t){return e}return e===null||e===void 0?void 0:e.slice(0,this.maxDisplayedItems)}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-39cdf6bc.entry.js.map
1
+ import{r as t,c as i,h as e,H as s,g as r}from"./p-0c2cc6c4.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))!important}.border-mystic-dark{--tw-border-opacity:1!important;border-color:rgb(218 230 240/var(--tw-border-opacity))!important}.bg-indigo-light{background-color:rgb(241 246 255/var(--tw-bg-opacity))!important}.bg-indigo-light,.bg-white{--tw-bg-opacity:1!important}.bg-white{background-color:rgb(255 255 255/var(--tw-bg-opacity))!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));border-color:rgb(218 230 240/var(--tw-border-opacity))!important;border-radius:.375rem;border-style:solid!important;border-width:1px;color:rgb(39 40 56/var(--tw-text-opacity));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));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));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))!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));border-radius:.25rem;color:rgb(44 75 169/var(--tw-text-opacity));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));font-size:.75rem;line-height:1rem}p-select .multi-container .extra{--tw-text-opacity:1;color:rgb(128 130 158/var(--tw-text-opacity));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))!important}.text-storm-medium{--tw-text-opacity:1!important;color:rgb(128 130 158/var(--tw-text-opacity))!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.usePortal=false;this.strategy="absolute";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(){return this._getParsedItems()}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),usePortal:this.usePortal,strategy:this.strategy},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:"chevron",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._getParsedItems(false);const h=a.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(!!h?h: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,type:"text",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:"xsmall",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)}_getParsedItems(t=true){var i;if(!this.items||this.loading){return[]}let e=typeof this.items==="string"?JSON.parse(this.items):this.items;if(typeof(e===null||e===void 0?void 0:e[0])==="string"){this.displayKey="text";this.valueKey="value";e=e.map((t=>({value:t,text:t})))}if(((i=this.query)===null||i===void 0?void 0:i.length)&&!this.asyncFilter){e=e.filter((t=>{if(this.queryKey){return this._checkvalue(this.queryKey,t)}return this._checkvalue(this._identifierKey,t)||this._checkvalue(this.displayKey,t)}))}if(!t){return e}return e===null||e===void 0?void 0:e.slice(0,this.maxDisplayedItems)}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-0d4538bd.entry.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["selectComponentCss","Select","_items","this","_getParsedItems","_displayValue","_selectedItem","placeholder","multi","_a","length","h","class","size","ref","_multiContainerRef","map","item","onClick","_selectValue","selectionDisplayKey","displayKey","variant","_amountHidden","_getDisplay","_identifierKey","_b","identifierKey","valueKey","componentDidLoad","Error","_setMultiContainerMaxWidth","_resizeObserver","ResizeObserver","_resizeDebounceTimer","clearTimeout","setTimeout","_checkSelectedItems","observe","_el","value","_valueChange","itemChanges","componentDidRender","disconnectedCallback","disconnect","render","Host","disableTriggerClick","calculateWidth","insideClick","scrollable","enableAutocomplete","show","_showDropdown","onIsOpen","ev","_onDropdownOpen","usePortal","strategy","slot","icon","prefix","label","helper","required","error","disabled","focused","forceShowTooltip","showChevron","contenteditable","onFocus","_onFocus","onMouseDown","_onMouseDown","_onClick","_inputRef","loading","_getLoadingItems","_getItems","showAddItem","_getAddItem","documentClickHandler","target","childOf","_preselectItem","_showDropdownChanges","dropdownShown","emit","query","multiChanges","Array","isArray","JSON","parse","valueChange","filter","i","includes","autoSelectFirst","identifier","parsedValue","stringify","currentValue","currentParsedValue","items","find","itemIdentifier","parsedItemIdentifier","forceBlur","selectedItem","valueArray","includesIndex","findIndex","push","splice","_onBlur","preventDefault","blur","force","_onAutoComplete","queryChange","_checkvalue","key","toString","toLowerCase","indexOf","_c","useContainer","active","emptyStateText","enableSelectAll","unshift","_selectAllChange","_allSelected","selectAllIcon","selectAllText","_getAutoCompleteItem","add","addItemText","enableHover","autocompletePlaceholder","type","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","applyPagination","str","text","asyncFilter","queryKey","slice","maxDisplayedItems"],"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';\nimport { Strategy } from '@floating-ui/dom';\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 * Wether to use a portal for the dropdown container of the select\n\t */\n\t@Prop() usePortal: boolean = false;\n\n\t/**\n\t * The strategy to use for the dropdown placement\n\t */\n\t@Prop() strategy: Strategy = 'absolute';\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\treturn this._getParsedItems();\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\tusePortal={this.usePortal}\n\t\t\t\t\tstrategy={this.strategy}\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='chevron'\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 items = this._getParsedItems(false);\n\t\tconst item = 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\tvariant={this.multi ? 'checkbox' : 'default'}\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\tvariant='checkbox'\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\ttype='text'\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='xsmall'\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\tprivate _getParsedItems(applyPagination = true) {\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\tif (!applyPagination) {\n\t\t\treturn items;\n\t\t}\n\n\t\treturn items?.slice(0, this.maxDisplayedItems);\n\t}\n}\n"],"mappings":"oGAAA,MAAMA,EAAqB,y+K,MCoBdC,EAAM,M,2RAcW,M,cAKA,W,iGAoBa,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,GACH,OAAOC,KAAKC,iB,CAGb,iBAAIC,G,MACH,IAAKF,KAAKG,cAAe,CACxB,OAAOH,KAAKI,W,CAGb,GAAIJ,KAAKK,MAAO,CACf,KAAIC,EAAAN,KAAKG,iBAAa,MAAAG,SAAA,SAAAA,EAAEC,UAAW,EAAG,CACrC,OAAOP,KAAKI,W,CAGb,OACCI,EAAA,OACCC,MAAO,wBAAwBT,KAAKU,OACpCC,IAAKA,GAAQX,KAAKY,mBAAqBD,GAEtCX,KAAKG,cAAcU,KAAIC,I,MAAQ,OAC/BN,EAAA,OACCC,MAAM,OACNM,QAAS,IAAMf,KAAKgB,aAAaF,IAEhCA,GAAKR,EAAAN,KAAKiB,uBAAmB,MAAAX,SAAA,EAAAA,EAAIN,KAAKkB,YACvCV,EAAA,UAAQW,QAAQ,aACX,IAGPX,EAAA,OAAKC,MAAM,gBAAc,IAAGT,KAAKoB,e,CAKpC,OAAOpB,KAAKqB,YAAYrB,KAAKG,cAAe,K,CAG7C,kBAAImB,G,QACH,OAAOC,GAAAjB,EAAAN,KAAKwB,iBAAa,MAAAlB,SAAA,EAAAA,EAAIN,KAAKyB,YAAQ,MAAAF,SAAA,EAAAA,EAAI,O,CAG/C,gBAAAG,GACC,IAAK1B,KAAKyB,WAAazB,KAAKwB,cAAe,CAC1C,MAAM,IAAIG,MAAM,+C,CAGjB,GAAI3B,KAAKK,MAAO,CACfL,KAAK4B,6BAEL5B,KAAK6B,gBAAkB,IAAIC,gBAAe,KACzC,GAAI9B,KAAK+B,qBAAsB,CAC9BC,aAAahC,KAAK+B,sBAClB/B,KAAK+B,qBAAuB,I,CAG7B/B,KAAK+B,qBAAuBE,YAAW,KACtCjC,KAAK4B,6BACL5B,KAAKkC,qBAAqB,GACxB,IAAI,IAERlC,KAAK6B,gBAAgBM,QAAQnC,KAAKoC,I,CAGnC,GAAIpC,KAAKqC,MAAO,CACfrC,KAAKsC,eACL,M,CAGDtC,KAAKuC,a,CAGN,kBAAAC,GACC,GAAIxC,KAAKK,MAAO,CACfL,KAAK4B,6BACL5B,KAAKkC,qB,EAIP,oBAAAO,GACC,GAAIzC,KAAKK,MAAO,CACfL,KAAK6B,gBAAgBa,Y,EAIvB,MAAAC,G,MACC,OACCnC,EAACoC,EAAI,CAACnC,MAAM,YACXD,EAAA,cACCqC,oBAAqB,KACrBC,eAAgB,KAChBC,YAAa,KACbC,WAAYhD,KAAKiD,mBAAqB,QAAU,KAChDC,KAAMlD,KAAKmD,cACXC,SAAUC,GAAMrD,KAAKsD,gBAAgBD,GACrCE,UAAWvD,KAAKuD,UAChBC,SAAUxD,KAAKwD,UAEfhD,EAAA,iBACCiD,KAAK,UACLC,KAAM1D,KAAK0D,KACXhD,KAAMV,KAAKU,KACXiD,OAAQ3D,KAAK2D,OACbC,MAAO5D,KAAK4D,MACZC,OAAQ7D,KAAK6D,OACbC,SAAU9D,KAAK8D,SACfC,MAAO/D,KAAK+D,MACZC,SAAUhE,KAAKgE,SACfC,QAASjE,KAAKmD,cACde,mBAAkB5D,EAAAN,KAAK+D,SAAK,MAAAzD,SAAA,SAAAA,EAAEC,SAAUP,KAAKmD,eAE7C3C,EAAA,OACCiD,KAAK,QACLhD,MAAO,oCACNT,KAAKmE,YAAc,0BAA4B,iBACvCnE,KAAKU,QACbV,KAAKE,gBAAkBF,KAAKI,YACzB,gCACA,KAEJgE,gBAAe,KACfC,QAAShB,GAAMrD,KAAKsE,SAASjB,GAC7BkB,YAAalB,GAAMrD,KAAKwE,aAAanB,GACrCtC,QAAS,IAAMf,KAAKyE,WACpB9D,IAAKA,GAAQX,KAAK0E,UAAY/D,GAE7BX,KAAKE,eAGNF,KAAKmE,aACL3D,EAAA,UACCW,QAAQ,UACRsC,KAAK,YAIRjD,EAAA,OAAKiD,KAAK,SACRzD,KAAK2E,QAAU3E,KAAK4E,mBAAqB5E,KAAK6E,YAC9C7E,KAAK8E,aAAe9E,KAAK+E,gB,CAQrB,oBAAAC,EAAqBC,OAAEA,IAChC,IAAKjF,KAAKmD,eAAiB+B,EAAQD,EAAQjF,KAAKoC,KAAM,CACrD,M,CAGDpC,KAAKmD,cAAgB,K,CAId,YAAAb,GACPL,YAAW,IAAMjC,KAAKmF,kB,CAIhB,WAAA5C,GACNN,YAAW,IAAMjC,KAAKmF,kB,CAIhB,oBAAAC,GACNpF,KAAKqF,cAAcC,KAAK,CACvBjD,MAAOrC,KAAKmD,cACZoC,MAAOvF,KAAKuF,O,CAKP,YAAAC,GACN,GAAIxF,KAAKG,gBAAkBsF,MAAMC,QAAQ1F,KAAKG,eAAgB,CAC7DH,KAAKG,cAAgB,E,EAIf,cAAAgF,G,QACP,IAAI9C,SACIrC,KAAKqC,QAAU,UAAYrC,KAAKK,MACpCsF,KAAKC,MAAM5F,KAAKqC,OAChBrC,KAAKqC,MAET,GAAIrC,KAAKK,MAAO,CACf,IAAKoF,MAAMC,QAAQrD,GAAQ,CAC1BrC,KAAKqC,MAAQ,GACbrC,KAAK6F,YAAYP,KAAKtF,KAAKqC,OAC3B,M,CAGDrC,KAAKqC,MAAQA,EACb,IAAKA,EAAM9B,OAAQ,CAClBP,KAAKG,cAAgB,GACrB,M,CAGDH,KAAKG,gBACFH,KAAKyB,UAAYzB,KAAKyB,WAAa,QAClCzB,KAAKD,OAAO+F,QAAOC,GAAK1D,EAAM2D,SAASD,IAAC,MAADA,SAAC,SAADA,EAAI/F,KAAKyB,aAChD,IAAIY,GACR,M,CAGD,IAAKrC,KAAKG,gBAAkBkC,GAASrC,KAAKiG,gBAAiB,CAC1D5D,EAAQrC,KAAKD,OAAO,E,CAGrB,MAAMmG,SACE7D,IAAU,UAAYA,IAAU,KACpCA,EAAMrC,KAAKsB,gBACXe,EACJ,MAAM8D,SACED,IAAe,iBAAmBA,IAAe,SACrDA,EACAP,KAAKS,UAAUF,GAEnB,MAAMG,EAAerG,KAAKG,eACvBG,EAAAN,KAAKG,iBAAa,MAAAG,SAAA,SAAAA,EAAGN,KAAKsB,gBAC1B,KACH,MAAMgF,SACED,IAAiB,iBAAmBA,IAAiB,SACzDA,EACAV,KAAKS,UAAUC,GAEnB,GAAIrG,KAAKG,eAAiBmG,IAAuBH,EAAa,CAC7D,M,CAGD,MAAK5E,EAAAvB,KAAKD,UAAM,MAAAwB,SAAA,SAAAA,EAAEhB,SAAU8B,EAAO,CAClCrC,KAAKgB,aAAaqB,EAAO,OACzB,M,CAGD,MAAMkE,EAAQvG,KAAKC,gBAAgB,OACnC,MAAMa,EAAOyF,EAAMC,MAAKT,IACvB,MAAMU,EAAiBV,IAAC,MAADA,SAAC,SAADA,EAAI/F,KAAKsB,gBAChC,MAAMoF,SACED,IAAmB,iBAAmBA,IAAmB,SAC7DA,EACAd,KAAKS,UAAUK,GAEnB,OAAOC,IAAyBP,CAAW,IAG5CnG,KAAKgB,eAAeF,EAAOA,EAAOuB,EAAO,M,CAGlC,YAAArB,CAAaF,EAAM6F,EAAY,MACtC,IAAItE,IACDrC,KAAKyB,UAAYzB,KAAKyB,WAAa,SAAWX,IAAS,KACtDA,IAAI,MAAJA,SAAI,SAAJA,EAAOd,KAAKyB,UACZX,EAEJ,GAAId,KAAKK,MAAO,CACf,IAAKL,KAAKG,gBAAkBsF,MAAMC,QAAQ1F,KAAKG,eAAgB,CAC9DH,KAAKG,cAAgB,E,CAGtB,IAAKH,KAAKqC,QAAUoD,MAAMC,QAAQ1F,KAAKqC,OAAQ,CAC9CrC,KAAKqC,MAAQ,E,CAGd,MAAMuE,EAAe,IAAI5G,KAAKG,eAC9B,MAAM0G,EAAa,IAAI7G,KAAKqC,OAE5B,MAAMyE,EAAgBF,EAAaG,WAClChB,GAAKA,EAAE/F,KAAKsB,kBAAoBR,EAAKd,KAAKsB,kBAE3C,GAAIwF,KAAmB,EAAG,CACzBF,EAAaI,KAAKlG,GAClB+F,EAAWG,KAAK3E,E,KACV,CACNuE,EAAaK,OAAOH,EAAe,GACnCD,EAAWI,OAAOH,EAAe,E,CAGlC9G,KAAKG,cAAgByG,EACrB5G,KAAKqC,MAAQwE,EACb7G,KAAK6F,YAAYP,KAAKuB,GACtB,M,CAGD7G,KAAKG,cAAgBW,EACrBd,KAAKqC,MAAQA,EACbrC,KAAK6F,YAAYP,KAAKjD,GAEtBrC,KAAKkH,QAAQP,E,CAGN,QAAArC,CAASjB,GAChBA,EAAG8D,iBACHnH,KAAK0E,UAAU0C,OAEf,IAAKpH,KAAKmD,cAAe,CACxBnD,KAAKmD,cAAgB,I,CAGtB,M,CAGO,YAAAqB,CAAanB,GACpB,GAAIrD,KAAKiD,mBAAoB,CAC5B,M,CAGDI,EAAG8D,gB,CAGI,QAAA1C,GACP,GAAIzE,KAAKiD,mBAAoB,CAC5B,M,CAGDjD,KAAKmD,eAAiBnD,KAAKmD,a,CAGpB,OAAA+D,CAAQG,EAAQ,OACvB,GAAIrH,KAAKiD,qBAAuBoE,EAAO,CACtC,M,CAGDrH,KAAKmD,cAAgB,K,CAGd,eAAAmE,CAAgBjE,GACvB,IAAKrD,KAAKiD,mBAAoB,CAC7B,M,CAGDjD,KAAKmD,cAAgB,KAErBnD,KAAKuF,MAAQlC,EAAG4B,OAAO5C,MACvBrC,KAAKuH,YAAYjC,KAAKjC,EAAG4B,OAAO5C,M,CAGzB,WAAAmF,CAAYC,EAAK3G,G,UACxB,QACCS,GAAAjB,EAAAQ,IAAI,MAAJA,SAAI,SAAJA,EAAO2G,MAAI,MAAAnH,SAAA,SAAAA,EACRoH,cAAU,MAAAnG,SAAA,SAAAA,EACVoG,cACDC,SAAQC,EAAA7H,KAAKuF,SAAK,MAAAsC,SAAA,SAAAA,EAAEF,iBAAkB,C,CAIlC,SAAA9C,G,MACP,IAAI0B,EAAQvG,KAAKD,OAAOc,KAAIC,I,MAAQ,OACnCN,EAAA,wBACCsH,aAAc,MACd/G,QAAS,IAAMf,KAAKgB,aAAaF,GACjCiH,OACC/H,KAAKK,SACHL,KAAKG,eACPsF,MAAMC,QAAQ1F,KAAKG,eAChBH,KAAKG,cAAc4G,WACnBhB,GAAKA,EAAE/F,KAAKsB,kBAAoBR,EAAKd,KAAKsB,mBACrC,EACLR,EAAKd,KAAKsB,oBACVhB,EAAAN,KAAKG,iBAAa,MAAAG,SAAA,SAAAA,EAAGN,KAAKsB,iBAE9BH,QAASnB,KAAKK,MAAQ,WAAa,UACnCI,MAAM,iBAELT,KAAKqB,YAAYP,GACI,IAGxB,IAAKd,KAAKD,OAAOQ,OAAQ,CACxBgG,EAAQ,CACP/F,EAAA,KAAGC,MAAM,oDACPT,KAAKgI,gB,CAKT,GAAIhI,KAAKiI,iBAAmBjI,KAAKD,OAAOQ,OAAQ,CAC/CgG,EAAM2B,QACL1H,EAAA,wBACCsH,aAAc,MACd3G,QAAQ,WACRJ,QAAS,IAAMf,KAAKmI,mBACpBJ,OAAQ/H,KAAKoI,gBAEZ9H,EAAAN,KAAKqI,iBAAa,MAAA/H,SAAA,SAAAA,EAAEC,QACpBC,EAAA,QAAMC,MAAM,2BACXD,EAAA,OAAKC,MAAM,mCACVD,EAAA,UAAQW,QAASnB,KAAKqI,iBAChB,IACNrI,KAAKsI,eAGPtI,KAAkB,e,CAMtB,GAAIA,KAAKiD,mBAAoB,CAC5BsD,EAAM2B,QAAQlI,KAAKuI,uB,CAGpB,OAAOhC,C,CAGA,WAAAxB,GACP,OACCvE,EAAA,wBACCO,QAAS,IAAMf,KAAKwI,IAAIlD,OACxBwC,aAAc,OAEdtH,EAAA,QAAMC,MAAM,qDACVT,KAAKyI,YACNjI,EAAA,UAAQW,QAAQ,U,CAMZ,gBAAAyD,GACP,MAAM2B,EAAQ,CAAC,EAAG,EAAG,GAAG1F,KAAI,IAC3BL,EAAA,wBAAsBkI,YAAa,OAClClI,EAAA,YACCW,QAAQ,QACRV,MAAM,0BAKT,GAAIT,KAAKiD,mBAAoB,CAC5BsD,EAAM2B,QAAQlI,KAAKuI,uB,CAGpB,OAAOhC,C,CAGA,oBAAAgC,GACP,OACC/H,EAAA,OAAKC,MAAM,oCACVD,EAAA,SACCC,MAAM,uCACNL,YAAaJ,KAAK2I,wBAClBC,KAAK,OACLC,QAASxF,GAAMrD,KAAKsH,gBAAgBjE,GACpC1C,IAAKA,GAAQX,KAAK8I,qBAAuBnI,EACzC0B,MAAOrC,KAAKuF,Q,CAMR,0BAAA3D,GACP,IAAK5B,KAAK0E,YAAc1E,KAAKY,mBAAoB,CAChD,M,CAGDZ,KAAKY,mBAAmBmI,MAAMC,SAAW,GACxChJ,KAAK0E,UAAUuE,YAAc,M,CAIvB,mBAAA/G,GACP,IAAKlC,KAAKY,mBAAoB,CAC7B,M,CAGD,MAAMsI,EAAgBlJ,KAAKY,mBAAmBuI,wBAC9C,MAAM5C,EAAQd,MAAM2D,KACnBpJ,KAAKY,mBAAmByI,iBAAiB,UAG1C,IAAIC,EAAe,EAEnB,IAAK,MAAMC,KAAShD,EAAO,CAC1BgD,EAAMC,UAAUC,OAAO,UAEvB,MAAMC,EAAYH,EAAMJ,wBACxB,GAAIO,EAAUC,MAAQT,EAAcS,MAAO,CAC1CJ,EAAMC,UAAUhB,IAAI,UACpBc,G,EAIFtJ,KAAKoB,cAAgBkI,EACrB,MAAMM,EAAQ5J,KAAKY,mBAAmBiJ,cAAc,UACpD,IAAKD,EAAO,CACX,M,CAGD,IAAKA,EAAMJ,UAAUM,SAAS,UAAW,CACxCF,EAAMJ,UAAUhB,IAAI,S,CAGrB,GAAIc,EAAe,EAAG,CACrBM,EAAMJ,UAAUC,OAAO,S,EAIjB,eAAAnG,CAAgBD,GACvB,IAAKA,EAAG0G,SAAW/J,KAAK8I,qBAAsB,CAC7C,M,CAGD9I,KAAK8I,qBAAqBkB,O,CAGnB,gBAAA7B,GACPnI,KAAKoI,cAAgBpI,KAAKoI,aAC1BpI,KAAKiK,gBAAgB3E,KAAKtF,KAAKoI,a,CAGxB,WAAA/G,CAAYP,EAAMoJ,EAAc,O,UACvC,IAAIC,EACH3J,EAAA,OAAKC,MAAM,kBAETK,EACCoJ,GACG5J,EAAAN,KAAKiB,uBAAmB,MAAAX,SAAA,EAAAA,EAAIN,KAAKkB,WACjClB,KAAKkB,aAMZ,GAAIlB,KAAKoK,UAAW,CACnBD,EACC3J,EAAA,QAAMC,MAAM,2BACXD,EAAA,YACCE,KAAK,SACL2J,IAAKvJ,EAAKd,KAAKoK,WACfE,QAASxJ,EAAKd,KAAKuK,oBAEpB/J,EAAA,OAAKC,MAAM,kBACTK,GAAKS,EAAAvB,KAAKwK,sBAAkB,MAAAjJ,SAAA,EAAAA,EAAIvB,KAAKkB,a,CAM1C,GAAIlB,KAAKyK,WAAaP,GAAelK,KAAK0K,wBAAyB,CAClEP,EACC3J,EAAA,QAAMC,MAAM,2BACXD,EAAA,UAAQW,QAASL,EAAKd,KAAKyK,WAC3BjK,EAAA,OAAKC,MAAM,kBACTK,GAAK+G,EAAA7H,KAAKwK,sBAAkB,MAAA3C,SAAA,EAAAA,EAAI7H,KAAKkB,a,CAM1C,OACCV,EAAA,OACCC,OACEyJ,GAAelK,KAAK2K,yBAClB,cAAc7J,IAAI,MAAJA,SAAI,SAAJA,EAAML,QACpB,cAGH0J,E,CAKI,eAAAlK,CAAgB2K,EAAkB,M,MACzC,IAAK5K,KAAKuG,OAASvG,KAAK2E,QAAS,CAChC,MAAO,E,CAGR,IAAI4B,SACIvG,KAAKuG,QAAU,SAAWZ,KAAKC,MAAM5F,KAAKuG,OAASvG,KAAKuG,MAEhE,UAAWA,IAAK,MAALA,SAAK,SAALA,EAAQ,MAAO,SAAU,CACnCvG,KAAKkB,WAAa,OAClBlB,KAAKyB,SAAW,QAEhB8E,EAAQA,EAAM1F,KAAIgK,IAAG,CACpBxI,MAAOwI,EACPC,KAAMD,K,CAIR,KAAIvK,EAAAN,KAAKuF,SAAK,MAAAjF,SAAA,SAAAA,EAAEC,UAAWP,KAAK+K,YAAa,CAC5CxE,EAAQA,EAAMT,QAAOhF,IACpB,GAAId,KAAKgL,SAAU,CAClB,OAAOhL,KAAKwH,YAAYxH,KAAKgL,SAAUlK,E,CAGxC,OACCd,KAAKwH,YAAYxH,KAAKsB,eAAgBR,IACtCd,KAAKwH,YAAYxH,KAAKkB,WAAYJ,EAAK,G,CAK1C,IAAK8J,EAAiB,CACrB,OAAOrE,C,CAGR,OAAOA,IAAK,MAALA,SAAK,SAALA,EAAO0E,MAAM,EAAGjL,KAAKkL,kB"}
@@ -1 +1 @@
1
- {"version":3,"names":["dropdownMenuContainerComponentCss","DropdownMenuContainer","render","h","Host","class","this","maxWidth","fullWidth","allowOverflow","scrollable","Portal","_moved","createPortal","document","body","append","_element","componentDidLoad","disconnectedCallback","remove"],"sources":["src/components/atoms/dropdown-menu-container/dropdown-menu-container.component.scss?tag=p-dropdown-menu-container","src/components/atoms/dropdown-menu-container/dropdown-menu-container.component.tsx","src/components/atoms/portal/portal.component.tsx"],"sourcesContent":["@import '../../../style/mixins';\n\np-dropdown-menu-container {\n\t@apply block w-auto;\n\t@apply rounded-xxlarge bg-white;\n\t@apply z-10 drop-shadow-4 filter;\n\n\t.content {\n\t\t@apply w-full p-2;\n\t\t@apply flex flex-col gap-[1px];\n\t}\n\n\t&.full-width {\n\t\t@apply w-full;\n\t}\n\n\t&.no-overflow {\n\t\t@apply overflow-y-auto overflow-x-hidden;\n\t}\n\n\t&.max-width {\n\t\t@apply max-w-[222px];\n\t}\n\n\t&.scrollable {\n\t\t@apply max-h-[11.5rem];\n\n\t\tscrollbar-width: none;\n\t\t&::-webkit-scrollbar {\n\t\t\t@apply hidden;\n\t\t}\n\n\t\t.content {\n\t\t\t@apply h-full;\n\t\t}\n\n\t\t&.scrollable-large {\n\t\t\t@apply max-h-[13.875rem];\n\t\t}\n\n\t\t&.scrollable-xlarge {\n\t\t\t@apply max-h-[20rem];\n\t\t}\n\t}\n}\n","import { Component, h, Host, Prop } from '@stencil/core';\n\n@Component({\n\ttag: 'p-dropdown-menu-container',\n\tstyleUrl: 'dropdown-menu-container.component.scss',\n\t// shadow: true,\n})\nexport class DropdownMenuContainer {\n\t/**\n\t * Wether the container applies it's max width\n\t */\n\t@Prop() maxWidth: boolean = true;\n\n\t/**\n\t * Wether the container should all available space\n\t */\n\t@Prop() fullWidth: boolean = true;\n\n\t/**\n\t * Wether to allow overflow\n\t */\n\t@Prop() allowOverflow: boolean = false;\n\n\t/**\n\t * Wether the container should be scrollable when the threshold is met.\n\t */\n\t@Prop() scrollable: boolean | 'default' | 'large' | 'xlarge' = false;\n\n\trender() {\n\t\treturn (\n\t\t\t<Host\n\t\t\t\tclass={`p-dropdown-menu-container ${\n\t\t\t\t\tthis.maxWidth && 'max-width'\n\t\t\t\t} ${this.fullWidth && 'full-width'} ${!this.allowOverflow && 'no-overflow'} ${\n\t\t\t\t\t!!this.scrollable && 'scrollable'\n\t\t\t\t} ${this.scrollable === 'large' ? 'scrollable-large' : ''} ${this.scrollable === 'xlarge' ? 'scrollable-xlarge' : ''}`}\n\t\t\t>\n\t\t\t\t<div class=\"content\">\n\t\t\t\t\t<slot />\n\t\t\t\t</div>\n\t\t\t</Host>\n\t\t);\n\t}\n}\n","import { Component, Element, h, Host, Prop } from '@stencil/core';\n\n@Component({\n\ttag: 'p-portal',\n})\nexport class Portal {\n\t@Prop() containerClass: string;\n\n\t@Element() _element: HTMLElement;\n\n\tprivate _moved: boolean = false;\n\n\tprivate createPortal() {\n\t\tdocument.body.append(this._element);\n\t}\n\n\tcomponentDidLoad() {\n\t\tthis.createPortal();\n\t}\n\n\tdisconnectedCallback() {\n\t\tthis._moved ? this._element.remove() : (this._moved = true);\n\t}\n\n\trender() {\n\t\treturn (\n\t\t\t<Host>\n\t\t\t\t<slot />\n\t\t\t</Host>\n\t\t);\n\t}\n}\n"],"mappings":"oDAAA,MAAMA,EAAoC,29D,MCO7BC,EAAqB,M,uCAIL,K,eAKC,K,mBAKI,M,gBAK8B,K,CAE/D,MAAAC,GACC,OACCC,EAACC,EAAI,CACJC,MAAO,6BACNC,KAAKC,UAAY,eACdD,KAAKE,WAAa,iBAAiBF,KAAKG,eAAiB,mBAC1DH,KAAKI,YAAc,gBAClBJ,KAAKI,aAAe,QAAU,mBAAqB,MAAMJ,KAAKI,aAAe,SAAW,oBAAsB,MAElHP,EAAA,OAAKE,MAAM,WACVF,EAAA,c,mBCjCQQ,EAAM,M,yBAKVL,KAAAM,OAAkB,M,8BAElB,YAAAC,GACPC,SAASC,KAAKC,OAAOV,KAAKW,S,CAG3B,gBAAAC,GACCZ,KAAKO,c,CAGN,oBAAAM,GACCb,KAAKM,OAASN,KAAKW,SAASG,SAAYd,KAAKM,OAAS,I,CAGvD,MAAAV,GACC,OACCC,EAACC,EAAI,KACJD,EAAA,a"}
1
+ {"version":3,"names":["dropdownMenuContainerComponentCss","DropdownMenuContainer","render","h","Host","class","this","maxWidth","fullWidth","allowOverflow","scrollable","Portal","_moved","createPortal","document","body","append","_element","componentDidLoad","disconnectedCallback","remove"],"sources":["src/components/atoms/dropdown-menu-container/dropdown-menu-container.component.scss?tag=p-dropdown-menu-container","src/components/atoms/dropdown-menu-container/dropdown-menu-container.component.tsx","src/components/atoms/portal/portal.component.tsx"],"sourcesContent":["p-dropdown-menu-container {\n\t@apply block w-auto;\n\t@apply rounded-xxlarge bg-white;\n\t@apply z-10 drop-shadow-4 filter;\n\n\t.content {\n\t\t@apply w-full p-2;\n\t\t@apply flex flex-col gap-[1px];\n\t}\n\n\t&.full-width {\n\t\t@apply w-full;\n\t}\n\n\t&.no-overflow {\n\t\t@apply overflow-y-auto overflow-x-hidden;\n\t}\n\n\t&.max-width {\n\t\t@apply max-w-[222px];\n\t}\n\n\t&.scrollable {\n\t\t@apply max-h-[11.5rem];\n\n\t\tscrollbar-width: none;\n\t\t&::-webkit-scrollbar {\n\t\t\t@apply hidden;\n\t\t}\n\n\t\t.content {\n\t\t\t@apply h-full;\n\t\t}\n\n\t\t&.scrollable-large {\n\t\t\t@apply max-h-[13.875rem];\n\t\t}\n\n\t\t&.scrollable-xlarge {\n\t\t\t@apply max-h-[20rem];\n\t\t}\n\t}\n}\n","import { Component, h, Host, Prop } from '@stencil/core';\n\n@Component({\n\ttag: 'p-dropdown-menu-container',\n\tstyleUrl: 'dropdown-menu-container.component.scss',\n\t// shadow: true,\n})\nexport class DropdownMenuContainer {\n\t/**\n\t * Wether the container applies it's max width\n\t */\n\t@Prop() maxWidth: boolean = true;\n\n\t/**\n\t * Wether the container should all available space\n\t */\n\t@Prop() fullWidth: boolean = true;\n\n\t/**\n\t * Wether to allow overflow\n\t */\n\t@Prop() allowOverflow: boolean = false;\n\n\t/**\n\t * Wether the container should be scrollable when the threshold is met.\n\t */\n\t@Prop() scrollable: boolean | 'default' | 'large' | 'xlarge' = false;\n\n\trender() {\n\t\treturn (\n\t\t\t<Host\n\t\t\t\tclass={`p-dropdown-menu-container ${\n\t\t\t\t\tthis.maxWidth && 'max-width'\n\t\t\t\t} ${this.fullWidth && 'full-width'} ${!this.allowOverflow && 'no-overflow'} ${\n\t\t\t\t\t!!this.scrollable && 'scrollable'\n\t\t\t\t} ${this.scrollable === 'large' ? 'scrollable-large' : ''} ${this.scrollable === 'xlarge' ? 'scrollable-xlarge' : ''}`}\n\t\t\t>\n\t\t\t\t<div class=\"content\">\n\t\t\t\t\t<slot />\n\t\t\t\t</div>\n\t\t\t</Host>\n\t\t);\n\t}\n}\n","import { Component, Element, h, Host, Prop } from '@stencil/core';\n\n@Component({\n\ttag: 'p-portal',\n})\nexport class Portal {\n\t@Prop() containerClass: string;\n\n\t@Element() _element: HTMLElement;\n\n\tprivate _moved: boolean = false;\n\n\tprivate createPortal() {\n\t\tdocument.body.append(this._element);\n\t}\n\n\tcomponentDidLoad() {\n\t\tthis.createPortal();\n\t}\n\n\tdisconnectedCallback() {\n\t\tthis._moved ? this._element.remove() : (this._moved = true);\n\t}\n\n\trender() {\n\t\treturn (\n\t\t\t<Host>\n\t\t\t\t<slot />\n\t\t\t</Host>\n\t\t);\n\t}\n}\n"],"mappings":"oDAAA,MAAMA,EAAoC,29D,MCO7BC,EAAqB,M,uCAIL,K,eAKC,K,mBAKI,M,gBAK8B,K,CAE/D,MAAAC,GACC,OACCC,EAACC,EAAI,CACJC,MAAO,6BACNC,KAAKC,UAAY,eACdD,KAAKE,WAAa,iBAAiBF,KAAKG,eAAiB,mBAC1DH,KAAKI,YAAc,gBAClBJ,KAAKI,aAAe,QAAU,mBAAqB,MAAMJ,KAAKI,aAAe,SAAW,oBAAsB,MAElHP,EAAA,OAAKE,MAAM,WACVF,EAAA,c,mBCjCQQ,EAAM,M,yBAKVL,KAAAM,OAAkB,M,8BAElB,YAAAC,GACPC,SAASC,KAAKC,OAAOV,KAAKW,S,CAG3B,gBAAAC,GACCZ,KAAKO,c,CAGN,oBAAAM,GACCb,KAAKM,OAASN,KAAKW,SAASG,SAAYd,KAAKM,OAAS,I,CAGvD,MAAAV,GACC,OACCC,EAACC,EAAI,KACJD,EAAA,a"}