@ukic/canary-web-components 2.0.0-canary.26 → 2.0.0-canary.27

Sign up to get free protection for your applications and to get access to all the features.
Files changed (120) hide show
  1. package/dist/cjs/core.cjs.js +1 -1
  2. package/dist/cjs/ic-alert.cjs.entry.js +1 -1
  3. package/dist/cjs/ic-alert.cjs.entry.js.map +1 -1
  4. package/dist/cjs/ic-data-table.cjs.entry.js +5 -3
  5. package/dist/cjs/ic-data-table.cjs.entry.js.map +1 -1
  6. package/dist/cjs/ic-empty-state_2.cjs.entry.js +15 -9
  7. package/dist/cjs/ic-empty-state_2.cjs.entry.js.map +1 -1
  8. package/dist/cjs/ic-pagination_4.cjs.entry.js +6 -6
  9. package/dist/cjs/ic-pagination_4.cjs.entry.js.map +1 -1
  10. package/dist/cjs/ic-popover-menu.cjs.entry.js +18 -12
  11. package/dist/cjs/ic-popover-menu.cjs.entry.js.map +1 -1
  12. package/dist/cjs/ic-search-bar.cjs.entry.js +14 -27
  13. package/dist/cjs/ic-search-bar.cjs.entry.js.map +1 -1
  14. package/dist/cjs/ic-tab-context.cjs.entry.js +68 -145
  15. package/dist/cjs/ic-tab-context.cjs.entry.js.map +1 -1
  16. package/dist/cjs/ic-tab-panel.cjs.entry.js +5 -13
  17. package/dist/cjs/ic-tab-panel.cjs.entry.js.map +1 -1
  18. package/dist/cjs/ic-tab.cjs.entry.js +9 -10
  19. package/dist/cjs/ic-tab.cjs.entry.js.map +1 -1
  20. package/dist/cjs/ic-typography.cjs.entry.js +3 -1
  21. package/dist/cjs/ic-typography.cjs.entry.js.map +1 -1
  22. package/dist/cjs/loader.cjs.js +1 -1
  23. package/dist/collection/components/ic-data-table/ic-data-table.css +5 -1
  24. package/dist/collection/components/ic-data-table/ic-data-table.js +4 -2
  25. package/dist/collection/components/ic-data-table/ic-data-table.js.map +1 -1
  26. package/dist/collection/components/ic-data-table/story-data.js +46 -5
  27. package/dist/collection/components/ic-data-table/story-data.js.map +1 -1
  28. package/dist/collection/components/ic-pagination-bar/ic-pagination-bar.js +46 -14
  29. package/dist/collection/components/ic-pagination-bar/ic-pagination-bar.js.map +1 -1
  30. package/dist/collection/components/ic-pagination-bar/ic-pagination-bar.types.js +2 -0
  31. package/dist/collection/components/ic-pagination-bar/ic-pagination-bar.types.js.map +1 -0
  32. package/dist/collection/components/ic-pagination-bar/test/basic/ic-pagination-bar.spec.js +20 -2
  33. package/dist/collection/components/ic-pagination-bar/test/basic/ic-pagination-bar.spec.js.map +1 -1
  34. package/dist/components/ic-alert2.js +1 -1
  35. package/dist/components/ic-alert2.js.map +1 -1
  36. package/dist/components/ic-data-table.js +5 -3
  37. package/dist/components/ic-data-table.js.map +1 -1
  38. package/dist/components/ic-pagination-bar2.js +18 -10
  39. package/dist/components/ic-pagination-bar2.js.map +1 -1
  40. package/dist/components/ic-popover-menu.js +20 -13
  41. package/dist/components/ic-popover-menu.js.map +1 -1
  42. package/dist/components/ic-search-bar.js +14 -27
  43. package/dist/components/ic-search-bar.js.map +1 -1
  44. package/dist/components/ic-select2.js +5 -5
  45. package/dist/components/ic-select2.js.map +1 -1
  46. package/dist/components/ic-tab-context.js +68 -145
  47. package/dist/components/ic-tab-context.js.map +1 -1
  48. package/dist/components/ic-tab-panel.js +6 -17
  49. package/dist/components/ic-tab-panel.js.map +1 -1
  50. package/dist/components/ic-tab.js +9 -10
  51. package/dist/components/ic-tab.js.map +1 -1
  52. package/dist/components/ic-text-field2.js +1 -1
  53. package/dist/components/ic-text-field2.js.map +1 -1
  54. package/dist/components/ic-typography2.js +3 -1
  55. package/dist/components/ic-typography2.js.map +1 -1
  56. package/dist/core/core.esm.js +1 -1
  57. package/dist/core/core.esm.js.map +1 -1
  58. package/dist/core/p-05ae9a59.entry.js +2 -0
  59. package/dist/core/p-05ae9a59.entry.js.map +1 -0
  60. package/dist/core/{p-989310a8.entry.js → p-0cf856e4.entry.js} +2 -2
  61. package/dist/core/p-0cf856e4.entry.js.map +1 -0
  62. package/dist/core/{p-2ee5d3fb.entry.js → p-34b333de.entry.js} +2 -2
  63. package/dist/core/p-34b333de.entry.js.map +1 -0
  64. package/dist/core/{p-6b1fcf87.entry.js → p-383ba7e8.entry.js} +2 -2
  65. package/dist/core/p-383ba7e8.entry.js.map +1 -0
  66. package/dist/core/p-6ca98c5d.entry.js +2 -0
  67. package/dist/core/p-6ca98c5d.entry.js.map +1 -0
  68. package/dist/core/{p-0ec04c16.entry.js → p-a7331e7c.entry.js} +2 -2
  69. package/dist/core/p-a7331e7c.entry.js.map +1 -0
  70. package/dist/core/p-b535c802.entry.js +2 -0
  71. package/dist/core/p-b535c802.entry.js.map +1 -0
  72. package/dist/core/{p-fa77211d.entry.js → p-cb156309.entry.js} +2 -2
  73. package/dist/core/p-cb156309.entry.js.map +1 -0
  74. package/dist/core/p-e50af3df.entry.js +2 -0
  75. package/dist/core/p-e50af3df.entry.js.map +1 -0
  76. package/dist/core/p-fc007ce4.entry.js +2 -0
  77. package/dist/core/p-fc007ce4.entry.js.map +1 -0
  78. package/dist/esm/core.js +1 -1
  79. package/dist/esm/ic-alert.entry.js +1 -1
  80. package/dist/esm/ic-alert.entry.js.map +1 -1
  81. package/dist/esm/ic-data-table.entry.js +5 -3
  82. package/dist/esm/ic-data-table.entry.js.map +1 -1
  83. package/dist/esm/ic-empty-state_2.entry.js +15 -9
  84. package/dist/esm/ic-empty-state_2.entry.js.map +1 -1
  85. package/dist/esm/ic-pagination_4.entry.js +6 -6
  86. package/dist/esm/ic-pagination_4.entry.js.map +1 -1
  87. package/dist/esm/ic-popover-menu.entry.js +18 -12
  88. package/dist/esm/ic-popover-menu.entry.js.map +1 -1
  89. package/dist/esm/ic-search-bar.entry.js +14 -27
  90. package/dist/esm/ic-search-bar.entry.js.map +1 -1
  91. package/dist/esm/ic-tab-context.entry.js +68 -145
  92. package/dist/esm/ic-tab-context.entry.js.map +1 -1
  93. package/dist/esm/ic-tab-panel.entry.js +5 -13
  94. package/dist/esm/ic-tab-panel.entry.js.map +1 -1
  95. package/dist/esm/ic-tab.entry.js +9 -10
  96. package/dist/esm/ic-tab.entry.js.map +1 -1
  97. package/dist/esm/ic-typography.entry.js +3 -1
  98. package/dist/esm/ic-typography.entry.js.map +1 -1
  99. package/dist/esm/loader.js +1 -1
  100. package/dist/types/components/ic-data-table/story-data.d.ts +15 -0
  101. package/dist/types/components/ic-pagination-bar/ic-pagination-bar.d.ts +9 -4
  102. package/dist/types/components/ic-pagination-bar/ic-pagination-bar.types.d.ts +4 -0
  103. package/dist/types/components.d.ts +13 -3
  104. package/hydrate/index.js +150 -233
  105. package/package.json +3 -3
  106. package/dist/core/p-0ec04c16.entry.js.map +0 -1
  107. package/dist/core/p-216fbd5e.entry.js +0 -2
  108. package/dist/core/p-216fbd5e.entry.js.map +0 -1
  109. package/dist/core/p-2ee5d3fb.entry.js.map +0 -1
  110. package/dist/core/p-3ba4335c.entry.js +0 -2
  111. package/dist/core/p-3ba4335c.entry.js.map +0 -1
  112. package/dist/core/p-40e5fa80.entry.js +0 -2
  113. package/dist/core/p-40e5fa80.entry.js.map +0 -1
  114. package/dist/core/p-6af080d3.entry.js +0 -2
  115. package/dist/core/p-6af080d3.entry.js.map +0 -1
  116. package/dist/core/p-6b1fcf87.entry.js.map +0 -1
  117. package/dist/core/p-989310a8.entry.js.map +0 -1
  118. package/dist/core/p-c98ce508.entry.js +0 -2
  119. package/dist/core/p-c98ce508.entry.js.map +0 -1
  120. package/dist/core/p-fa77211d.entry.js.map +0 -1
@@ -1,2 +1,2 @@
1
- import{r as t,c as i,h as s,H as e,g as h}from"./p-8455d1bb.js";import{I as a}from"./p-fd186591.js";import{B as n,C as o,E as r,k as l,a as c,s as u,p as d}from"./p-8128572e.js";const f=`<svg width="20" height="20" viewBox="0 0 20 20" fill="none" xmlns="http://www.w3.org/2000/svg">\n <path d="M15.8327 5.34199L14.6577 4.16699L9.99935 8.82533L5.34102 4.16699L4.16602 5.34199L8.82435 10.0003L4.16602 14.6587L5.34102 15.8337L9.99935 11.1753L14.6577 15.8337L15.8327 14.6587L11.1743 10.0003L15.8327 5.34199Z" fill="currentColor"/>\n</svg>\n`;const b=`<svg width="20" height="20" viewBox="0 0 20 20" fill="none" xmlns="http://www.w3.org/2000/svg" aria-hidden="true">\n <path d="M13.1292 11.8792H12.4708L12.2375 11.6542C13.0542 10.7042 13.5458 9.47083 13.5458 8.12916C13.5458 5.13749 11.1208 2.71249 8.12916 2.71249C5.13749 2.71249 2.71249 5.13749 2.71249 8.12916C2.71249 11.1208 5.13749 13.5458 8.12916 13.5458C9.47083 13.5458 10.7042 13.0542 11.6542 12.2375L11.8792 12.4708V13.1292L16.0458 17.2875L17.2875 16.0458L13.1292 11.8792ZM8.12916 11.8792C6.05416 11.8792 4.37916 10.2042 4.37916 8.12916C4.37916 6.05416 6.05416 4.37916 8.12916 4.37916C10.2042 4.37916 11.8792 6.05416 11.8792 8.12916C11.8792 10.2042 10.2042 11.8792 8.12916 11.8792Z" fill="currentColor"/>\n</svg>`;const p='/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */html{line-height:1.15;-webkit-text-size-adjust:100%;}body{margin:0}main{display:block}h1{font-size:2em;margin:0.67em 0}hr{box-sizing:content-box;height:0;overflow:visible;}pre{font-family:monospace, monospace;font-size:1em;}a{background-color:transparent}abbr[title]{border-bottom:none;text-decoration:underline;-webkit-text-decoration:underline dotted;text-decoration:underline dotted;}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace, monospace;font-size:1em;}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-0.25em}sup{top:-0.5em}img{border-style:none}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0;}button,input{overflow:visible}button,select{text-transform:none}button,[type="button"],[type="reset"],[type="submit"]{-webkit-appearance:button}button::-moz-focus-inner,[type="button"]::-moz-focus-inner,[type="reset"]::-moz-focus-inner,[type="submit"]::-moz-focus-inner{border-style:none;padding:0}button:-moz-focusring,[type="button"]:-moz-focusring,[type="reset"]:-moz-focusring,[type="submit"]:-moz-focusring{outline:1px dotted ButtonText}fieldset{padding:0.35em 0.75em 0.625em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal;}progress{vertical-align:baseline}textarea{overflow:auto}[type="checkbox"],[type="radio"]{box-sizing:border-box;padding:0;}[type="number"]::-webkit-inner-spin-button,[type="number"]::-webkit-outer-spin-button{height:auto}[type="search"]{-webkit-appearance:textfield;outline-offset:-2px;}[type="search"]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit;}details{display:block}summary{display:list-item}template{display:none}[hidden]{display:none}html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,embed,figure,figcaption,footer,header,hgroup,menu,nav,output,ruby,section,summary,time,mark,audio,video{margin:0;padding:0;border:0;font-size:100%;font-style:inherit;vertical-align:baseline}:host(.search){--divider-height:1.5rem}:host(.search.small){--divider-height:1rem}:host(.fullwidth){width:100%}:host(.search) .disabled:hover{border-color:var(--ic-architectural-200)}:host(.search.disabled) .disabled svg{color:var(--ic-architectural-200)}:host(.search) .disabled svg{color:var(--ic-architectural-400)}.clear-button-container{align-items:center;margin-right:var(--ic-space-1px);display:none;visibility:hidden}.clear-button{border-radius:var(--ic-border-radius);transition:box-shadow var(--ic-easing-transition),\n border-radius var(--ic-easing-transition)}.clear-button:focus,.clear-button:active{background-color:var(--ic-focus-blue);box-shadow:inset 0 0 0 0.125rem var(--ic-focus-glow);border-radius:0.25rem}.clear-button:focus,.clear-button:active *{fill:white}.clear-button-visible{visibility:visible;display:flex}.search-submit-button-container{display:flex;align-items:center}.search-submit-button-disabled .ic-tooltip-container{display:none !important}.search-submit-button:focus,.search-submit-button:active{background-color:var(--ic-focus-blue) !important;box-shadow:inset 0 0 0 0.125rem var(--ic-focus-glow) !important;border-radius:var(--ic-space-xxs)}.search-submit-button:focus,.search-submit-button:active *{fill:white}.divider{width:var(--ic-border-width);background-color:var(--ic-action-dark-active);height:var(--divider-height)}:host(.dark) .divider{background-color:var(--ic-architectural-200)}.menu-container{width:var(--input-width, 20rem);position:relative;top:var(--ic-space-xxxs)}.menu-container.fullwidth{width:100%}.no-results{cursor:not-allowed}.search-results-status{border:0;clip:rect(0, 0, 0, 0, 0);height:var(--ic-space-1px);margin-bottom:calc(-1 * var(--ic-space-1px));margin-right:calc(-1 * var(--ic-space-1px));overflow:hidden;padding:0;position:absolute;white-space:nowrap;width:var(--ic-space-1px)}';let m=0;const v=class{constructor(s){t(this,s);this.icChange=i(this,"icChange",7);this.icClear=i(this,"icClear",7);this.icInput=i(this,"icInput",7);this.icInputBlur=i(this,"icInputBlur",7);this.icInputFocus=i(this,"icInputFocus",7);this.icOptionSelect=i(this,"icOptionSelect",7);this.icMenuChange=i(this,"icMenuChange",7);this.icClearBlur=i(this,"icClearBlur",7);this.icRetryLoad=i(this,"icRetryLoad",7);this.icSubmitSearch=i(this,"icSubmitSearch",7);this.icSubmitSearchBlur=i(this,"icSubmitSearchBlur",7);this.icSearchBarBlur=i(this,"icSearchBarBlur",7);this.icSearchBarFocus=i(this,"icSearchBarFocus",7);this.assistiveHintEl=null;this.hasTimedOut=false;this.inputId=`ic-search-bar-input-${m++}`;this.menuCloseFromMenuChangeEvent=false;this.menuId=`${this.inputId}-menu`;this.preLoad=true;this.preventSubmit=false;this.prevNoOption=false;this.retryButtonClick=false;this.truncateValue=false;this.handleClear=t=>{const i=t;const s=t;if(s.type==="click"||i.code==="Enter"||i.code==="Space"){this.value="";this.inputEl.value="";this.loading=false;clearTimeout(this.timeoutTimer);this.filteredOptions=this.options;this.el.setFocus();this.icClear.emit();t.preventDefault();this.preventSubmit=true}};this.onInput=t=>{this.value=t.target.value;const i=[{[this.labelField]:this.emptyOptionListText,[this.valueField]:""}];if(this.options.length>0){this.setMenuChange(true);this.preLoad=false;if(this.disableFilter===false){const t=n(this.options,false,this.value,"anywhere",this.labelField);this.filteredOptions=t.length>0?t:i}}if(!this.showClearButton){this.handleShowClearButton(true)}this.debounceAriaLiveUpdate()};this.onInputBlur=t=>{const i=t.target.value;const s=t.relatedTarget;this.icInputBlur.emit({value:i,relatedTarget:s})};this.onInputFocus=t=>{const i=t.target.value;this.icInputFocus.emit({value:i});this.handleShowClearButton(true)};this.handleClearBlur=t=>{const i=t.relatedTarget;this.icClearBlur.emit({relatedTarget:i});this.clearButtonFocused=false};this.handleSubmitSearchBlur=t=>{const i=t.relatedTarget;this.icSubmitSearchBlur.emit({relatedTarget:i});this.searchSubmitFocused=false};this.handleMouseDown=t=>{t.preventDefault()};this.handleSubmitSearchFocus=()=>{this.searchSubmitFocused=true};this.handleSubmitSearch=()=>{this.highlightedValue&&(this.value=this.highlightedValue);this.highlightedValue=undefined;this.icSubmitSearch.emit({value:this.value});const t=this.el.closest("FORM");if(this.searchSubmitButton&&!!t&&!this.preventSubmit){o(t,this.searchSubmitButton)}};this.handleSubmitSearchKeyDown=t=>{if(t.key===" "){t.preventDefault();this.handleSubmitSearch()}};this.handleRetry=t=>{this.retryViaKeyPress=t.detail.keyPressed==="Enter";this.icRetryLoad.emit({value:t.detail.value});this.triggerLoading();this.retryButtonClick=true};this.triggerLoading=()=>{const t=[{[this.labelField]:this.loadingLabel,[this.valueField]:"",loading:true}];if(this.filteredOptions!==t)this.filteredOptions=t;if(this.timeout){this.timeoutTimer=window.setTimeout((()=>{this.filteredOptions=[{[this.labelField]:this.loadingErrorLabel,[this.valueField]:"",timedOut:true}]}),this.timeout)}};this.handleOptionSelect=t=>{if(t.detail.label===this.emptyOptionListText){this.el.setFocus();return}this.value=t.detail.value;this.icOptionSelect.emit({value:this.value})};this.handleMenuOptionHighlight=t=>{var i;const s=(i=t.detail.optionId)===null||i===void 0?void 0:i.replace(`${this.menuId}-`,"");s&&(this.highlightedValue=s);if(t.detail.optionId){this.ariaActiveDescendant=t.detail.optionId}else{this.ariaActiveDescendant=undefined}};this.handleMenuChange=t=>{this.setMenuChange(t.detail.open);if(!t.detail.open){this.handleMenuCloseFromMenuChange(true);if(t.detail.focusInput===undefined||t.detail.focusInput){this.el.setFocus()}}};this.setMenuChange=t=>{if(this.open!==t){this.open=t;this.icMenuChange.emit({open:t})}};this.handleHostFocus=()=>{if(this.options&&this.value&&!this.menuCloseFromMenuChangeEvent){this.setMenuChange(true)}this.handleTruncateValue(false);this.icSearchBarFocus.emit()};this.handleHostBlur=t=>{const i=t.relatedTarget;if(this.open&&this.options&&i!==this.menu&&!this.retryViaKeyPress&&!this.retryButtonClick){this.setMenuChange(false)}if(this.retryButtonClick||this.retryViaKeyPress){this.inputEl.setFocus()}this.handleShowClearButton(false);this.handleMenuCloseFromMenuChange(false);this.handleTruncateValue(true);this.icSearchBarBlur.emit({relatedTarget:i,value:this.value});this.retryViaKeyPress=false;this.retryButtonClick=false};this.handleShowClearButton=t=>{this.showClearButton=t};this.handleFocusClearButton=()=>{this.clearButtonFocused=true};this.handleMenuCloseFromMenuChange=t=>{this.menuCloseFromMenuChangeEvent=t};this.handleTruncateValue=t=>{this.truncateValue=t};this.renderAssistiveHintEl=()=>{var t,i;const s=(i=(t=this.el.shadowRoot.querySelector("ic-text-field"))===null||t===void 0?void 0:t.shadowRoot)===null||i===void 0?void 0:i.querySelector(`#${this.inputId}`);if(s&&Object.keys(s).length>0&&this.hasOptionsOrFilterDisabled()){this.assistiveHintEl=document.createElement("span");this.assistiveHintEl.innerText=this.hintText;this.assistiveHintEl.id=`${this.inputId}-assistive-hint`;this.assistiveHintEl.style.display="none";if(s.after!==undefined){s.after(this.assistiveHintEl)}}};this.updateSearchResultAriaLive=()=>{const t=this.el.shadowRoot.querySelector(".search-results-status");if(t){if(!this.open||this.value===""||this.value.length<this.charactersUntilSuggestion){t.innerText=""}else if(this.hasOptionsOrFilterDisabled()&&this.filteredOptions.length>0&&this.open&&!this.filteredOptions[0].loading){if(this.hadNoOptions()){t.innerText=this.emptyOptionListText}else{t.innerText=`${this.filteredOptions.length} result${this.filteredOptions.length>1?"s":""} available`}}}};this.hasOptionsOrFilterDisabled=()=>this.options.length>0||this.disableFilter;this.hadNoOptions=()=>this.filteredOptions.length===1&&this.filteredOptions[0][this.labelField]===this.emptyOptionListText&&this.searchMode==="navigation";this.isSubmitDisabled=()=>{const t=this.value===undefined||this.value===null||this.value==="";const i=this.value.length<this.charactersUntilSuggestion;return t||i||this.disabled||this.hadNoOptions()||this.hasTimedOut||this.loading};this.highlightFirstOptionAfterNoResults=()=>{if(this.prevNoOption&&this.menu&&!this.hasTimedOut){this.menu.handleSetFirstOption();this.prevNoOption=false}const t=this.filteredOptions.find((t=>t[this.labelField]===this.emptyOptionListText||t[this.labelField]===this.loadingErrorLabel||t[this.labelField]===this.loadingLabel));if(t){this.prevNoOption=true}};this.ariaActiveDescendant=undefined;this.clearButtonFocused=false;this.highlightedValue=undefined;this.open=false;this.searchSubmitFocused=false;this.showClearButton=false;this.autocapitalize="off";this.autocomplete="off";this.autocorrect="off";this.autofocus=false;this.charactersUntilSuggestion=2;this.disabled=false;this.disableFilter=false;this.debounce=0;this.emptyOptionListText="No results found";this.focusOnLoad=false;this.fullWidth=false;this.helperText="";this.hideLabel=false;this.hintText="When autocomplete results are available use the up and down arrows to choose and press enter to select";this.label=undefined;this.labelField="label";this.loading=false;this.loadingErrorLabel="Loading Error";this.loadingLabel="Loading...";this.name=this.inputId;this.placeholder="Search";this.readonly=false;this.required=false;this.searchMode="navigation";this.size="default";this.small=false;this.spellcheck=false;this.timeout=undefined;this.valueField="value";this.filteredOptions=[];this.options=[];this.value=""}loadingHandler(t){if(t&&!this.hasTimedOut){this.preLoad=false;this.triggerLoading()}}filteredOptionsHandler(t){this.hasTimedOut=t.some((t=>t.timedOut))}watchOptionsHandler(t){if(this.disableFilter&&!this.hasTimedOut){this.loading=false;clearTimeout(this.timeoutTimer);if(t.length>0){this.filteredOptions=t}else{if(this.hadNoOptions()){return}this.setMenuChange(true);!this.preLoad&&(this.filteredOptions=[{[this.labelField]:this.emptyOptionListText,[this.valueField]:""}]);this.preLoad=true}}this.debounceAriaLiveUpdate()}watchValueHandler(t){if(this.inputEl&&this.options&&!!r(t,this.options,this.valueField,this.labelField)){this.inputEl.value=r(t,this.options,this.valueField,this.labelField)}else if(this.inputEl&&this.inputEl.value!==t){this.inputEl.value=t}}disconnectedCallback(){if(this.assistiveHintEl){this.assistiveHintEl.remove()}}componentWillLoad(){this.watchValueHandler(this.value);l(this.disabled,this.el);if(this.small){this.size="small"}}componentDidLoad(){if(this.focusOnLoad){this.el.setFocus()}if(this.hasOptionsOrFilterDisabled()){this.renderAssistiveHintEl();if(this.disableFilter){this.filteredOptions=this.options}}c([{prop:this.label,propName:"label"}],"Search Bar");if(this.inputEl!==undefined){this.anchorEl=this.inputEl.shadowRoot.querySelector("ic-input-component-container")}}componentWillRender(){this.highlightFirstOptionAfterNoResults()}handleKeyDown(t){const i=t.detail.event;if(this.menu&&this.open){this.menu.handleKeyboardOpen(i)}}handleKeyUp(t){if(t.key==="Enter"){if(this.preventSubmit||this.isSubmitDisabled()){return}this.handleSubmitSearch();this.setMenuChange(false)}if(t.key==="Escape"){this.setMenuChange(false)}if(this.preventSubmit){this.preventSubmit=false}}async setFocus(){this.retryViaKeyPress=false;this.retryButtonClick=false;if(this.inputEl){this.inputEl.setFocus()}}debounceAriaLiveUpdate(){clearTimeout(this.debounceAriaLive);this.debounceAriaLive=window.setTimeout((()=>{this.updateSearchResultAriaLive()}),500)}render(){const{inputId:t,name:i,label:h,required:n,small:o,size:l,placeholder:c,helperText:p,disabled:m,value:v,readonly:g,spellcheck:w,fullWidth:y,options:x,open:k,hideLabel:L,menuId:z,ariaActiveDescendant:C,truncateValue:B,autofocus:M,autocapitalize:S,autocomplete:T,filteredOptions:F}=this;const O=g||m?true:false;const H=u(t,p!=="",false).trim();let I;if(H!==""&&this.hasOptionsOrFilterDisabled()){I=`${H} ${this.inputId}-assistive-hint`}else if(this.hasOptionsOrFilterDisabled()){I=`${this.inputId}-assistive-hint`}else if(H!==""){I=H}else{I=undefined}const E=O&&!g;const $=v&&this.hasOptionsOrFilterDisabled();const D=$&&k&&F.length>0;const j=D&&v.length>=this.charactersUntilSuggestion;const W=this.filteredOptions.length===1&&(this.filteredOptions[0][this.labelField]===this.loadingLabel||F[0][this.labelField]===this.loadingErrorLabel);let V;if(x.length>0){if(D){V="true"}else{V="false"}}else{V=undefined}d(true,this.el,i,v,O);return s(e,{class:{["search"]:true,["fullwidth"]:y,["disabled"]:m,["small"]:l==="small"},onFocus:this.handleHostFocus,onBlur:this.handleHostBlur},s("ic-text-field",{ref:t=>this.inputEl=t,inputId:t,label:h,helperText:p,required:n,disabled:E,readonly:g,size:l,hideLabel:L,fullWidth:y,name:i,truncateValue:B,value:x&&!!r(v,x,this.valueField,this.labelField)?r(v,x,this.valueField,this.labelField):v,placeholder:c,onInput:this.onInput,onBlur:this.onInputBlur,onFocus:this.onInputFocus,"aria-label":L?h:"","aria-describedby":I,"aria-owns":j?z:undefined,"aria-haspopup":x.length>0?"listbox":undefined,ariaExpanded:V,ariaActiveDescendant:C,"aria-autocomplete":$?"list":undefined,role:$?"combobox":undefined,autocomplete:T,autocapitalize:S,autoFocus:M,spellcheck:w,inputmode:"search",debounce:this.debounce},s("div",{class:{"clear-button-container":true,"clear-button-visible":v&&!O&&this.showClearButton},slot:"clear-button"},s("ic-button",{id:"clear-button",class:"clear-button","aria-label":"Clear",innerHTML:f,onClick:this.handleClear,onMouseDown:this.handleMouseDown,size:l,onFocus:this.handleFocusClearButton,onBlur:this.handleClearBlur,onKeyDown:this.handleClear,type:"submit",variant:"icon",appearance:this.clearButtonFocused?a.Light:a.Dark}),s("div",{class:"divider"})),s("div",{class:{"search-submit-button-container":true,"search-submit-button-disabled":this.isSubmitDisabled()},slot:"search-submit-button"},s("ic-button",{id:"search-submit-button","aria-label":"Search",ref:t=>this.searchSubmitButton=t,class:{["search-submit-button"]:true,["search-submit-button-small"]:!!o},disabled:this.isSubmitDisabled(),innerHTML:b,size:l,onClick:this.handleSubmitSearch,onMouseDown:this.handleMouseDown,onBlur:this.handleSubmitSearchBlur,onFocus:this.handleSubmitSearchFocus,onKeyDown:this.handleSubmitSearchKeyDown,type:"submit",variant:"icon",appearance:this.searchSubmitFocused?a.Light:a.Default})),s("div",{class:{"menu-container":true,fullwidth:y},slot:"menu"},j&&s("ic-menu",{class:{"no-results":this.hadNoOptions()||W},activationType:"manual",anchorEl:this.anchorEl,autoFocusOnSelected:false,searchMode:this.searchMode,inputEl:this.inputEl,inputLabel:h,ref:t=>this.menu=t,small:l==="small",fullWidth:y,menuId:z,open:!!j,options:F,onMenuOptionSelect:this.handleOptionSelect,onMenuStateChange:this.handleMenuChange,onMenuOptionId:this.handleMenuOptionHighlight,onRetryButtonClicked:this.handleRetry,parentEl:this.el,value:v,labelField:this.labelField,valueField:this.valueField}))),s("div",{"aria-live":"polite",role:"status",class:"search-results-status"}))}static get delegatesFocus(){return true}get el(){return h(this)}static get watchers(){return{loading:["loadingHandler"],filteredOptions:["filteredOptionsHandler"],options:["watchOptionsHandler"],value:["watchValueHandler"]}}};v.style=p;export{v as ic_search_bar};
2
- //# sourceMappingURL=p-fa77211d.entry.js.map
1
+ import{r as t,c as i,h as s,H as e,g as h}from"./p-8455d1bb.js";import{I as a}from"./p-fd186591.js";import{B as n,C as o,E as r,k as l,a as c,s as u,p as d}from"./p-8128572e.js";const f=`<svg width="20" height="20" viewBox="0 0 20 20" fill="none" xmlns="http://www.w3.org/2000/svg">\n <path d="M15.8327 5.34199L14.6577 4.16699L9.99935 8.82533L5.34102 4.16699L4.16602 5.34199L8.82435 10.0003L4.16602 14.6587L5.34102 15.8337L9.99935 11.1753L14.6577 15.8337L15.8327 14.6587L11.1743 10.0003L15.8327 5.34199Z" fill="currentColor"/>\n</svg>\n`;const b=`<svg width="20" height="20" viewBox="0 0 20 20" fill="none" xmlns="http://www.w3.org/2000/svg" aria-hidden="true">\n <path d="M13.1292 11.8792H12.4708L12.2375 11.6542C13.0542 10.7042 13.5458 9.47083 13.5458 8.12916C13.5458 5.13749 11.1208 2.71249 8.12916 2.71249C5.13749 2.71249 2.71249 5.13749 2.71249 8.12916C2.71249 11.1208 5.13749 13.5458 8.12916 13.5458C9.47083 13.5458 10.7042 13.0542 11.6542 12.2375L11.8792 12.4708V13.1292L16.0458 17.2875L17.2875 16.0458L13.1292 11.8792ZM8.12916 11.8792C6.05416 11.8792 4.37916 10.2042 4.37916 8.12916C4.37916 6.05416 6.05416 4.37916 8.12916 4.37916C10.2042 4.37916 11.8792 6.05416 11.8792 8.12916C11.8792 10.2042 10.2042 11.8792 8.12916 11.8792Z" fill="currentColor"/>\n</svg>`;const p='/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */html{line-height:1.15;-webkit-text-size-adjust:100%;}body{margin:0}main{display:block}h1{font-size:2em;margin:0.67em 0}hr{box-sizing:content-box;height:0;overflow:visible;}pre{font-family:monospace, monospace;font-size:1em;}a{background-color:transparent}abbr[title]{border-bottom:none;text-decoration:underline;-webkit-text-decoration:underline dotted;text-decoration:underline dotted;}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace, monospace;font-size:1em;}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-0.25em}sup{top:-0.5em}img{border-style:none}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0;}button,input{overflow:visible}button,select{text-transform:none}button,[type="button"],[type="reset"],[type="submit"]{-webkit-appearance:button}button::-moz-focus-inner,[type="button"]::-moz-focus-inner,[type="reset"]::-moz-focus-inner,[type="submit"]::-moz-focus-inner{border-style:none;padding:0}button:-moz-focusring,[type="button"]:-moz-focusring,[type="reset"]:-moz-focusring,[type="submit"]:-moz-focusring{outline:1px dotted ButtonText}fieldset{padding:0.35em 0.75em 0.625em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal;}progress{vertical-align:baseline}textarea{overflow:auto}[type="checkbox"],[type="radio"]{box-sizing:border-box;padding:0;}[type="number"]::-webkit-inner-spin-button,[type="number"]::-webkit-outer-spin-button{height:auto}[type="search"]{-webkit-appearance:textfield;outline-offset:-2px;}[type="search"]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit;}details{display:block}summary{display:list-item}template{display:none}[hidden]{display:none}html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,embed,figure,figcaption,footer,header,hgroup,menu,nav,output,ruby,section,summary,time,mark,audio,video{margin:0;padding:0;border:0;font-size:100%;font-style:inherit;vertical-align:baseline}:host(.search){--divider-height:1.5rem}:host(.search.small){--divider-height:1rem}:host(.fullwidth){width:100%}:host(.search) .disabled:hover{border-color:var(--ic-architectural-200)}:host(.search.disabled) .disabled svg{color:var(--ic-architectural-200)}:host(.search) .disabled svg{color:var(--ic-architectural-400)}.clear-button-container{align-items:center;margin-right:var(--ic-space-1px);display:none;visibility:hidden}.clear-button{border-radius:var(--ic-border-radius);transition:box-shadow var(--ic-easing-transition),\n border-radius var(--ic-easing-transition)}.clear-button:focus,.clear-button:active{background-color:var(--ic-focus-blue);box-shadow:inset 0 0 0 0.125rem var(--ic-focus-glow);border-radius:0.25rem}.clear-button:focus,.clear-button:active *{fill:white}.clear-button-visible{visibility:visible;display:flex}.search-submit-button-container{display:flex;align-items:center}.search-submit-button-disabled .ic-tooltip-container{display:none !important}.search-submit-button:focus,.search-submit-button:active{background-color:var(--ic-focus-blue) !important;box-shadow:inset 0 0 0 0.125rem var(--ic-focus-glow) !important;border-radius:var(--ic-space-xxs)}.search-submit-button:focus,.search-submit-button:active *{fill:white}.divider{width:var(--ic-border-width);background-color:var(--ic-action-dark-active);height:var(--divider-height)}:host(.dark) .divider{background-color:var(--ic-architectural-200)}.menu-container{width:var(--input-width, 20rem);position:relative;top:var(--ic-space-xxxs)}.menu-container.fullwidth{width:100%}.no-results{cursor:not-allowed}.search-results-status{border:0;clip:rect(0, 0, 0, 0, 0);height:var(--ic-space-1px);margin-bottom:calc(-1 * var(--ic-space-1px));margin-right:calc(-1 * var(--ic-space-1px));overflow:hidden;padding:0;position:absolute;white-space:nowrap;width:var(--ic-space-1px)}';let m=0;const v=class{constructor(s){t(this,s);this.icChange=i(this,"icChange",7);this.icClear=i(this,"icClear",7);this.icInput=i(this,"icInput",7);this.icInputBlur=i(this,"icInputBlur",7);this.icInputFocus=i(this,"icInputFocus",7);this.icOptionSelect=i(this,"icOptionSelect",7);this.icMenuChange=i(this,"icMenuChange",7);this.icClearBlur=i(this,"icClearBlur",7);this.icRetryLoad=i(this,"icRetryLoad",7);this.icSubmitSearch=i(this,"icSubmitSearch",7);this.icSubmitSearchBlur=i(this,"icSubmitSearchBlur",7);this.icSearchBarBlur=i(this,"icSearchBarBlur",7);this.icSearchBarFocus=i(this,"icSearchBarFocus",7);this.assistiveHintEl=null;this.hasTimedOut=false;this.inputId=`ic-search-bar-input-${m++}`;this.menuCloseFromMenuChangeEvent=false;this.menuId=`${this.inputId}-menu`;this.preLoad=true;this.preventSubmit=false;this.prevNoOption=false;this.retryButtonClick=false;this.truncateValue=false;this.handleClear=t=>{const i=t;const s=t;if(s.type==="click"||i.code==="Enter"||i.code==="Space"){this.value="";this.inputEl.value="";this.loading=false;clearTimeout(this.timeoutTimer);this.filteredOptions=this.options;this.el.setFocus();this.icClear.emit();t.preventDefault();this.preventSubmit=true}};this.onInput=t=>{this.value=t.target.value;const i=[{[this.labelField]:this.emptyOptionListText,[this.valueField]:""}];if(this.options.length>0){this.setMenuChange(true);this.preLoad=false;if(this.disableFilter===false){const t=n(this.options,false,this.value,"anywhere",this.labelField);this.filteredOptions=t.length>0?t:i}}if(!this.showClearButton){this.handleShowClearButton(true)}this.debounceAriaLiveUpdate()};this.onInputBlur=t=>{const i=t.target.value;const s=t.relatedTarget;this.icInputBlur.emit({value:i,relatedTarget:s})};this.onInputFocus=t=>{const i=t.target.value;this.icInputFocus.emit({value:i});this.handleShowClearButton(true)};this.handleClearBlur=t=>{const i=t.relatedTarget;this.icClearBlur.emit({relatedTarget:i});this.clearButtonFocused=false};this.handleSubmitSearchBlur=t=>{const i=t.relatedTarget;this.icSubmitSearchBlur.emit({relatedTarget:i});this.searchSubmitFocused=false};this.handleMouseDown=t=>{t.preventDefault()};this.handleSubmitSearchFocus=()=>{this.searchSubmitFocused=true};this.handleSubmitSearch=()=>{this.highlightedValue&&(this.value=this.highlightedValue);this.highlightedValue=undefined;this.icSubmitSearch.emit({value:this.value});const t=this.el.closest("FORM");if(this.searchSubmitButton&&!!t&&!this.preventSubmit){o(t,this.searchSubmitButton)}};this.handleSubmitSearchKeyDown=t=>{if(t.key===" "){t.preventDefault();this.handleSubmitSearch()}};this.handleRetry=t=>{this.retryViaKeyPress=t.detail.keyPressed==="Enter";this.icRetryLoad.emit({value:t.detail.value});this.triggerLoading();this.retryButtonClick=true};this.triggerLoading=()=>{const t=[{[this.labelField]:this.loadingLabel,[this.valueField]:"",loading:true}];if(this.filteredOptions!==t)this.filteredOptions=t;if(this.timeout){this.timeoutTimer=window.setTimeout((()=>{this.filteredOptions=[{[this.labelField]:this.loadingErrorLabel,[this.valueField]:"",timedOut:true}]}),this.timeout)}};this.handleOptionSelect=t=>{if(t.detail.label===this.emptyOptionListText){this.el.setFocus();return}this.value=t.detail.value;this.icOptionSelect.emit({value:this.value})};this.handleMenuOptionHighlight=t=>{var i;const s=(i=t.detail.optionId)===null||i===void 0?void 0:i.replace(`${this.menuId}-`,"");s&&(this.highlightedValue=s);if(t.detail.optionId){this.ariaActiveDescendant=t.detail.optionId}else{this.ariaActiveDescendant=undefined}};this.handleMenuChange=t=>{this.setMenuChange(t.detail.open);if(!t.detail.open){this.handleMenuCloseFromMenuChange(true);if(t.detail.focusInput===undefined||t.detail.focusInput){this.el.setFocus()}}};this.setMenuChange=t=>{if(this.open!==t){this.open=t;this.icMenuChange.emit({open:t})}};this.handleHostFocus=()=>{if(this.options&&this.value&&!this.menuCloseFromMenuChangeEvent){this.setMenuChange(true)}this.handleTruncateValue(false);this.icSearchBarFocus.emit()};this.handleHostBlur=t=>{const i=t.relatedTarget;if(this.open&&this.options&&i!==this.menu&&!this.retryViaKeyPress&&!this.retryButtonClick){this.setMenuChange(false)}if(this.retryButtonClick||this.retryViaKeyPress){this.inputEl.setFocus()}this.handleShowClearButton(false);this.handleMenuCloseFromMenuChange(false);this.handleTruncateValue(true);this.icSearchBarBlur.emit({relatedTarget:i,value:this.value});this.retryViaKeyPress=false;this.retryButtonClick=false};this.handleShowClearButton=t=>{this.showClearButton=t};this.handleFocusClearButton=()=>{this.clearButtonFocused=true};this.handleMenuCloseFromMenuChange=t=>{this.menuCloseFromMenuChangeEvent=t};this.handleTruncateValue=t=>{this.truncateValue=t};this.renderAssistiveHintEl=()=>{var t,i;const s=(i=(t=this.el.shadowRoot.querySelector("ic-text-field"))===null||t===void 0?void 0:t.shadowRoot)===null||i===void 0?void 0:i.querySelector(`#${this.inputId}`);if(s&&Object.keys(s).length>0&&this.hasOptionsOrFilterDisabled()){this.assistiveHintEl=document.createElement("span");this.assistiveHintEl.innerText=this.hintText;this.assistiveHintEl.id=`${this.inputId}-assistive-hint`;this.assistiveHintEl.style.display="none";if(s.after!==undefined){s.after(this.assistiveHintEl)}}};this.updateSearchResultAriaLive=()=>{const t=this.el.shadowRoot.querySelector(".search-results-status");if(t){if(!this.open||this.value===""||this.value.length<this.charactersUntilSuggestion){t.innerText=""}else if(this.hasOptionsOrFilterDisabled()&&this.filteredOptions.length>0&&this.open&&!this.filteredOptions[0].loading){if(this.hadNoOptions()){t.innerText=this.emptyOptionListText}else{t.innerText=`${this.filteredOptions.length} result${this.filteredOptions.length>1?"s":""} available`}}}};this.hasOptionsOrFilterDisabled=()=>this.options.length>0||this.disableFilter;this.hadNoOptions=()=>this.filteredOptions.length===1&&this.filteredOptions[0][this.labelField]===this.emptyOptionListText&&this.searchMode==="navigation";this.isSubmitDisabled=()=>{const t=this.value===undefined||this.value===null||this.value==="";const i=this.value.length<this.charactersUntilSuggestion;return t||i||this.disabled||this.hadNoOptions()||this.hasTimedOut||this.loading};this.highlightFirstOptionAfterNoResults=()=>{if(this.prevNoOption&&this.menu&&!this.hasTimedOut){this.menu.handleSetFirstOption();this.prevNoOption=false}const t=this.filteredOptions.find((t=>t[this.labelField]===this.emptyOptionListText||t[this.labelField]===this.loadingErrorLabel||t[this.labelField]===this.loadingLabel));if(t){this.prevNoOption=true}};this.ariaActiveDescendant=undefined;this.clearButtonFocused=false;this.highlightedValue=undefined;this.open=false;this.searchSubmitFocused=false;this.showClearButton=false;this.autocapitalize="off";this.autocomplete="off";this.autocorrect="off";this.autofocus=false;this.charactersUntilSuggestion=2;this.disabled=false;this.disableFilter=false;this.debounce=0;this.emptyOptionListText="No results found";this.focusOnLoad=false;this.fullWidth=false;this.helperText="";this.hideLabel=false;this.hintText="When autocomplete results are available use the up and down arrows to choose and press enter to select";this.label=undefined;this.labelField="label";this.loading=false;this.loadingErrorLabel="Loading Error";this.loadingLabel="Loading...";this.name=this.inputId;this.placeholder="Search";this.readonly=false;this.required=false;this.searchMode="navigation";this.size="default";this.small=false;this.spellcheck=false;this.timeout=undefined;this.valueField="value";this.filteredOptions=[];this.options=[];this.value=""}loadingHandler(t){if(t&&!this.hasTimedOut){this.preLoad=false;this.triggerLoading()}}filteredOptionsHandler(t){this.hasTimedOut=t.some((t=>t.timedOut))}watchOptionsHandler(t){if(this.disableFilter&&!this.hasTimedOut){this.loading=false;clearTimeout(this.timeoutTimer);if(t.length>0){this.filteredOptions=t}else{if(this.hadNoOptions()){return}this.setMenuChange(true);!this.preLoad&&(this.filteredOptions=[{[this.labelField]:this.emptyOptionListText,[this.valueField]:""}]);this.preLoad=true}}this.debounceAriaLiveUpdate()}watchValueHandler(t){if(this.inputEl&&this.options&&!!r(t,this.options,this.valueField,this.labelField)){this.inputEl.value=r(t,this.options,this.valueField,this.labelField)}else if(this.inputEl&&this.inputEl.value!==t){this.inputEl.value=t}}disconnectedCallback(){if(this.assistiveHintEl){this.assistiveHintEl.remove()}}componentWillLoad(){this.watchValueHandler(this.value);l(this.disabled,this.el);if(this.small){this.size="small"}}componentDidLoad(){if(this.focusOnLoad){this.el.setFocus()}if(this.hasOptionsOrFilterDisabled()){this.renderAssistiveHintEl();if(this.disableFilter){this.filteredOptions=this.options}}c([{prop:this.label,propName:"label"}],"Search Bar");if(this.inputEl!==undefined){this.anchorEl=this.inputEl.shadowRoot.querySelector("ic-input-component-container")}}componentWillRender(){this.highlightFirstOptionAfterNoResults()}handleKeyDown(t){const i=t.detail.event;if(this.menu&&this.open){this.menu.handleKeyboardOpen(i)}}handleKeyUp(t){if(t.key==="Enter"){if(this.preventSubmit||this.isSubmitDisabled()){return}this.handleSubmitSearch();this.setMenuChange(false)}if(t.key==="Escape"){this.setMenuChange(false)}if(this.preventSubmit){this.preventSubmit=false}}async setFocus(){this.retryViaKeyPress=false;this.retryButtonClick=false;if(this.inputEl){this.inputEl.setFocus()}}debounceAriaLiveUpdate(){clearTimeout(this.debounceAriaLive);this.debounceAriaLive=window.setTimeout((()=>{this.updateSearchResultAriaLive()}),500)}render(){const{inputId:t,name:i,label:h,required:n,small:o,size:l,placeholder:c,helperText:p,disabled:m,value:v,readonly:g,spellcheck:w,fullWidth:y,options:x,open:k,hideLabel:L,menuId:z,ariaActiveDescendant:C,truncateValue:B,autofocus:M,autocapitalize:S,autocomplete:T,filteredOptions:F}=this;const O=g||m;const H=u(t,p!=="",false).trim();let I;if(H!==""&&this.hasOptionsOrFilterDisabled()){I=`${H} ${this.inputId}-assistive-hint`}else if(this.hasOptionsOrFilterDisabled()){I=`${this.inputId}-assistive-hint`}else if(H!==""){I=H}else{I=undefined}const $=!!v&&this.hasOptionsOrFilterDisabled();const E=$&&k&&F.length>0;const D=E&&v.length>=this.charactersUntilSuggestion;const j=r(v,x,this.valueField,this.labelField);d(true,this.el,i,v,O);return s(e,{class:{search:true,fullwidth:y,disabled:m,small:l==="small"},onFocus:this.handleHostFocus,onBlur:this.handleHostBlur},s("ic-text-field",{ref:t=>this.inputEl=t,inputId:t,label:h,helperText:p,required:n,disabled:O&&!g,readonly:g,size:l,hideLabel:L,fullWidth:y,name:i,truncateValue:B,value:x&&!!j?j:v,placeholder:c,onInput:this.onInput,onBlur:this.onInputBlur,onFocus:this.onInputFocus,"aria-label":L?h:"","aria-describedby":I,"aria-owns":D?z:undefined,"aria-controls":D?z:undefined,"aria-haspopup":x.length>0?"listbox":undefined,ariaExpanded:x.length>0?`${E}`:undefined,ariaActiveDescendant:C,"aria-autocomplete":$?"list":undefined,role:x.length>0?"combobox":undefined,autocomplete:T,autocapitalize:S,autoFocus:M,spellcheck:w,inputmode:"search",debounce:this.debounce},s("div",{class:{"clear-button-container":true,"clear-button-visible":v&&!O&&this.showClearButton},slot:"clear-button"},s("ic-button",{id:"clear-button",class:"clear-button","aria-label":"Clear",innerHTML:f,onClick:this.handleClear,onMouseDown:this.handleMouseDown,size:l,onFocus:this.handleFocusClearButton,onBlur:this.handleClearBlur,onKeyDown:this.handleClear,type:"submit",variant:"icon",appearance:this.clearButtonFocused?a.Light:a.Dark}),s("div",{class:"divider"})),s("div",{class:{"search-submit-button-container":true,"search-submit-button-disabled":this.isSubmitDisabled()},slot:"search-submit-button"},s("ic-button",{id:"search-submit-button","aria-label":"Search",ref:t=>this.searchSubmitButton=t,class:{["search-submit-button"]:true,["search-submit-button-small"]:!!o},disabled:this.isSubmitDisabled(),innerHTML:b,size:l,onClick:this.handleSubmitSearch,onMouseDown:this.handleMouseDown,onBlur:this.handleSubmitSearchBlur,onFocus:this.handleSubmitSearchFocus,onKeyDown:this.handleSubmitSearchKeyDown,type:"submit",variant:"icon",appearance:this.searchSubmitFocused?a.Light:a.Default})),s("div",{class:{"menu-container":true,fullwidth:y},slot:"menu"},D&&s("ic-menu",{class:{"no-results":this.hadNoOptions()||F.length===1&&(F[0][this.labelField]===this.loadingLabel||F[0][this.labelField]===this.loadingErrorLabel)},activationType:"manual",anchorEl:this.anchorEl,autoFocusOnSelected:false,searchMode:this.searchMode,inputEl:this.inputEl,inputLabel:h,ref:t=>this.menu=t,small:l==="small",fullWidth:y,menuId:z,open:!!D,options:F,onMenuOptionSelect:this.handleOptionSelect,onMenuStateChange:this.handleMenuChange,onMenuOptionId:this.handleMenuOptionHighlight,onRetryButtonClicked:this.handleRetry,parentEl:this.el,value:v,labelField:this.labelField,valueField:this.valueField}))),s("div",{"aria-live":"polite",role:"status",class:"search-results-status"}))}static get delegatesFocus(){return true}get el(){return h(this)}static get watchers(){return{loading:["loadingHandler"],filteredOptions:["filteredOptionsHandler"],options:["watchOptionsHandler"],value:["watchValueHandler"]}}};v.style=p;export{v as ic_search_bar};
2
+ //# sourceMappingURL=p-cb156309.entry.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["icSearchBarCss","inputIds","SearchBar","constructor","hostRef","this","assistiveHintEl","hasTimedOut","inputId","menuCloseFromMenuChangeEvent","menuId","preLoad","preventSubmit","prevNoOption","retryButtonClick","truncateValue","handleClear","ev","keyboardEvent","mouseEvent","type","code","value","inputEl","loading","clearTimeout","timeoutTimer","filteredOptions","options","el","setFocus","icClear","emit","preventDefault","onInput","target","noOptions","labelField","emptyOptionListText","valueField","length","setMenuChange","disableFilter","rawFilteredOptions","getFilteredMenuOptions","showClearButton","handleShowClearButton","debounceAriaLiveUpdate","onInputBlur","nextFocus","relatedTarget","icInputBlur","onInputFocus","icInputFocus","handleClearBlur","icClearBlur","clearButtonFocused","handleSubmitSearchBlur","icSubmitSearchBlur","searchSubmitFocused","handleMouseDown","handleSubmitSearchFocus","handleSubmitSearch","highlightedValue","undefined","icSubmitSearch","form","closest","searchSubmitButton","handleHiddenFormButtonClick","handleSubmitSearchKeyDown","key","handleRetry","retryViaKeyPress","detail","keyPressed","icRetryLoad","triggerLoading","loadingOption","loadingLabel","timeout","window","setTimeout","loadingErrorLabel","timedOut","handleOptionSelect","label","icOptionSelect","handleMenuOptionHighlight","_a","optionValue","optionId","replace","ariaActiveDescendant","handleMenuChange","open","handleMenuCloseFromMenuChange","focusInput","icMenuChange","handleHostFocus","handleTruncateValue","icSearchBarFocus","handleHostBlur","menu","icSearchBarBlur","visible","handleFocusClearButton","fromEvent","truncate","renderAssistiveHintEl","_b","input","shadowRoot","querySelector","Object","keys","hasOptionsOrFilterDisabled","document","createElement","innerText","hintText","id","style","display","after","updateSearchResultAriaLive","searchResultsStatusEl","charactersUntilSuggestion","hadNoOptions","searchMode","isSubmitDisabled","valueNotSet","valueLengthLess","disabled","highlightFirstOptionAfterNoResults","handleSetFirstOption","prevNoOptionsList","find","filteredOption","autocapitalize","autocomplete","autocorrect","autofocus","debounce","focusOnLoad","fullWidth","helperText","hideLabel","name","placeholder","readonly","required","size","small","spellcheck","loadingHandler","newValue","filteredOptionsHandler","newOptions","some","opt","watchOptionsHandler","watchValueHandler","getLabelFromValue","disconnectedCallback","remove","componentWillLoad","removeDisabledFalse","componentDidLoad","onComponentRequiredPropUndefined","prop","propName","anchorEl","componentWillRender","handleKeyDown","keyEv","event","handleKeyboardOpen","handleKeyUp","debounceAriaLive","render","disabledMode","describedBy","getInputDescribedByText","trim","describedById","hasSuggestedSearch","menuOpen","menuRendered","labelValue","renderHiddenInput","h","Host","class","search","fullwidth","onFocus","onBlur","ref","ariaExpanded","role","autoFocus","inputmode","slot","innerHTML","clearIcon","onClick","onMouseDown","onKeyDown","variant","appearance","IcThemeForegroundEnum","Light","Dark","searchIcon","Default","activationType","autoFocusOnSelected","inputLabel","onMenuOptionSelect","onMenuStateChange","onMenuOptionId","onRetryButtonClicked","parentEl","delegatesFocus"],"sources":["../web-components/dist/collection/components/ic-search-bar/ic-search-bar.css?tag=ic-search-bar&encapsulation=shadow","../web-components/dist/collection/components/ic-search-bar/ic-search-bar.js"],"sourcesContent":["/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */\n\n/* Document\n ========================================================================== */\n\n/**\n * 1. Correct the line height in all browsers.\n * 2. Prevent adjustments of font size after orientation changes in iOS.\n */\n\nhtml {\n line-height: 1.15; /* 1 */\n -webkit-text-size-adjust: 100%; /* 2 */\n}\n\n/* Sections\n ========================================================================== */\n\n/**\n * Remove the margin in all browsers.\n */\n\nbody {\n margin: 0;\n}\n\n/**\n * Render the `main` element consistently in IE.\n */\n\nmain {\n display: block;\n}\n\n/**\n * Correct the font size and margin on `h1` elements within `section` and\n * `article` contexts in Chrome, Firefox, and Safari.\n */\n\nh1 {\n font-size: 2em;\n margin: 0.67em 0;\n}\n\n/* Grouping content\n ========================================================================== */\n\n/**\n * 1. Add the correct box sizing in Firefox.\n * 2. Show the overflow in Edge and IE.\n */\n\nhr {\n box-sizing: content-box; /* 1 */\n height: 0; /* 1 */\n overflow: visible; /* 2 */\n}\n\n/**\n * 1. Correct the inheritance and scaling of font size in all browsers.\n * 2. Correct the odd `em` font sizing in all browsers.\n */\n\npre {\n font-family: monospace, monospace; /* 1 */\n font-size: 1em; /* 2 */\n}\n\n/* Text-level semantics\n ========================================================================== */\n\n/**\n * Remove the gray background on active links in IE 10.\n */\n\na {\n background-color: transparent;\n}\n\n/**\n * 1. Remove the bottom border in Chrome 57-\n * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.\n */\n\nabbr[title] {\n border-bottom: none; /* 1 */\n text-decoration: underline; /* 2 */\n -webkit-text-decoration: underline dotted;\n text-decoration: underline dotted; /* 2 */\n}\n\n/**\n * Add the correct font weight in Chrome, Edge, and Safari.\n */\n\nb,\nstrong {\n font-weight: bolder;\n}\n\n/**\n * 1. Correct the inheritance and scaling of font size in all browsers.\n * 2. Correct the odd `em` font sizing in all browsers.\n */\n\ncode,\nkbd,\nsamp {\n font-family: monospace, monospace; /* 1 */\n font-size: 1em; /* 2 */\n}\n\n/**\n * Add the correct font size in all browsers.\n */\n\nsmall {\n font-size: 80%;\n}\n\n/**\n * Prevent `sub` and `sup` elements from affecting the line height in\n * all browsers.\n */\n\nsub,\nsup {\n font-size: 75%;\n line-height: 0;\n position: relative;\n vertical-align: baseline;\n}\n\nsub {\n bottom: -0.25em;\n}\n\nsup {\n top: -0.5em;\n}\n\n/* Embedded content\n ========================================================================== */\n\n/**\n * Remove the border on images inside links in IE 10.\n */\n\nimg {\n border-style: none;\n}\n\n/* Forms\n ========================================================================== */\n\n/**\n * 1. Change the font styles in all browsers.\n * 2. Remove the margin in Firefox and Safari.\n */\n\nbutton,\ninput,\noptgroup,\nselect,\ntextarea {\n font-family: inherit; /* 1 */\n font-size: 100%; /* 1 */\n line-height: 1.15; /* 1 */\n margin: 0; /* 2 */\n}\n\n/**\n * Show the overflow in IE.\n * 1. Show the overflow in Edge.\n */\n\nbutton,\ninput {\n /* 1 */\n overflow: visible;\n}\n\n/**\n * Remove the inheritance of text transform in Edge, Firefox, and IE.\n * 1. Remove the inheritance of text transform in Firefox.\n */\n\nbutton,\nselect {\n /* 1 */\n text-transform: none;\n}\n\n/**\n * Correct the inability to style clickable types in iOS and Safari.\n */\n\nbutton,\n[type=\"button\"],\n[type=\"reset\"],\n[type=\"submit\"] {\n -webkit-appearance: button;\n}\n\n/**\n * Remove the inner border and padding in Firefox.\n */\n\nbutton::-moz-focus-inner,\n[type=\"button\"]::-moz-focus-inner,\n[type=\"reset\"]::-moz-focus-inner,\n[type=\"submit\"]::-moz-focus-inner {\n border-style: none;\n padding: 0;\n}\n\n/**\n * Restore the focus styles unset by the previous rule.\n */\n\nbutton:-moz-focusring,\n[type=\"button\"]:-moz-focusring,\n[type=\"reset\"]:-moz-focusring,\n[type=\"submit\"]:-moz-focusring {\n outline: 1px dotted ButtonText;\n}\n\n/**\n * Correct the padding in Firefox.\n */\n\nfieldset {\n padding: 0.35em 0.75em 0.625em;\n}\n\n/**\n * 1. Correct the text wrapping in Edge and IE.\n * 2. Correct the color inheritance from `fieldset` elements in IE.\n * 3. Remove the padding so developers are not caught out when they zero out\n * `fieldset` elements in all browsers.\n */\n\nlegend {\n box-sizing: border-box; /* 1 */\n color: inherit; /* 2 */\n display: table; /* 1 */\n max-width: 100%; /* 1 */\n padding: 0; /* 3 */\n white-space: normal; /* 1 */\n}\n\n/**\n * Add the correct vertical alignment in Chrome, Firefox, and Opera.\n */\n\nprogress {\n vertical-align: baseline;\n}\n\n/**\n * Remove the default vertical scrollbar in IE 10+.\n */\n\ntextarea {\n overflow: auto;\n}\n\n/**\n * 1. Add the correct box sizing in IE 10.\n * 2. Remove the padding in IE 10.\n */\n\n[type=\"checkbox\"],\n[type=\"radio\"] {\n box-sizing: border-box; /* 1 */\n padding: 0; /* 2 */\n}\n\n/**\n * Correct the cursor style of increment and decrement buttons in Chrome.\n */\n\n[type=\"number\"]::-webkit-inner-spin-button,\n[type=\"number\"]::-webkit-outer-spin-button {\n height: auto;\n}\n\n/**\n * 1. Correct the odd appearance in Chrome and Safari.\n * 2. Correct the outline style in Safari.\n */\n\n[type=\"search\"] {\n -webkit-appearance: textfield; /* 1 */\n outline-offset: -2px; /* 2 */\n}\n\n/**\n * Remove the inner padding in Chrome and Safari on macOS.\n */\n\n[type=\"search\"]::-webkit-search-decoration {\n -webkit-appearance: none;\n}\n\n/**\n * 1. Correct the inability to style clickable types in iOS and Safari.\n * 2. Change font properties to `inherit` in Safari.\n */\n\n::-webkit-file-upload-button {\n -webkit-appearance: button; /* 1 */\n font: inherit; /* 2 */\n}\n\n/* Interactive\n ========================================================================== */\n\n/*\n * Add the correct display in Edge, IE 10+, and Firefox.\n */\n\ndetails {\n display: block;\n}\n\n/*\n * Add the correct display in all browsers.\n */\n\nsummary {\n display: list-item;\n}\n\n/* Misc\n ========================================================================== */\n\n/**\n * Add the correct display in IE 10+.\n */\n\ntemplate {\n display: none;\n}\n\n/**\n * Add the correct display in IE 10.\n */\n\n[hidden] {\n display: none;\n}\n\nhtml,\nbody,\ndiv,\nspan,\napplet,\nobject,\niframe,\nh1,\nh2,\nh3,\nh4,\nh5,\nh6,\np,\nblockquote,\npre,\na,\nabbr,\nacronym,\naddress,\nbig,\ncite,\ncode,\ndel,\ndfn,\nem,\nimg,\nins,\nkbd,\nq,\ns,\nsamp,\nsmall,\nstrike,\nstrong,\nsub,\nsup,\ntt,\nvar,\nb,\nu,\ni,\ncenter,\ndl,\ndt,\ndd,\nol,\nul,\nli,\nfieldset,\nform,\nlabel,\nlegend,\ntable,\ncaption,\ntbody,\ntfoot,\nthead,\ntr,\nth,\ntd,\narticle,\naside,\ncanvas,\ndetails,\nembed,\nfigure,\nfigcaption,\nfooter,\nheader,\nhgroup,\nmenu,\nnav,\noutput,\nruby,\nsection,\nsummary,\ntime,\nmark,\naudio,\nvideo {\n margin: 0;\n padding: 0;\n border: 0;\n font-size: 100%;\n font-style: inherit;\n vertical-align: baseline;\n}\n\n\n/**\n * @prop --ic-z-index-menu: z-index of search bar menu\n */\n\n:host(.search) {\n --divider-height: 1.5rem;\n}\n\n:host(.search.small) {\n --divider-height: 1rem;\n}\n\n:host(.fullwidth) {\n width: 100%;\n}\n\n:host(.search) .disabled:hover {\n border-color: var(--ic-architectural-200);\n}\n\n:host(.search.disabled) .disabled svg {\n color: var(--ic-architectural-200);\n}\n\n:host(.search) .disabled svg {\n color: var(--ic-architectural-400);\n}\n\n/* CLEAR */\n\n.clear-button-container {\n align-items: center;\n margin-right: var(--ic-space-1px);\n display: none;\n visibility: hidden;\n}\n\n.clear-button {\n border-radius: var(--ic-border-radius);\n transition: box-shadow var(--ic-easing-transition),\n border-radius var(--ic-easing-transition);\n}\n\n.clear-button:focus,\n.clear-button:active {\n background-color: var(--ic-focus-blue);\n box-shadow: inset 0 0 0 0.125rem var(--ic-focus-glow);\n border-radius: 0.25rem;\n}\n\n.clear-button:focus,\n.clear-button:active * {\n fill: white;\n}\n\n.clear-button-visible {\n visibility: visible;\n display: flex;\n}\n\n.search-submit-button-container {\n display: flex;\n align-items: center;\n}\n\n.search-submit-button-disabled .ic-tooltip-container {\n display: none !important;\n}\n\n.search-submit-button:focus,\n.search-submit-button:active {\n background-color: var(--ic-focus-blue) !important;\n box-shadow: inset 0 0 0 0.125rem var(--ic-focus-glow) !important;\n border-radius: var(--ic-space-xxs);\n}\n\n.search-submit-button:focus,\n.search-submit-button:active * {\n fill: white;\n}\n\n.divider {\n width: var(--ic-border-width);\n background-color: var(--ic-action-dark-active);\n height: var(--divider-height);\n}\n\n:host(.dark) .divider {\n background-color: var(--ic-architectural-200);\n}\n\n.menu-container {\n width: var(--input-width, 20rem);\n position: relative;\n top: var(--ic-space-xxxs);\n}\n\n.menu-container.fullwidth {\n width: 100%;\n}\n\n.no-results {\n cursor: not-allowed;\n}\n\n.search-results-status {\n border: 0;\n clip: rect(0, 0, 0, 0, 0);\n height: var(--ic-space-1px);\n margin-bottom: calc(-1 * var(--ic-space-1px));\n margin-right: calc(-1 * var(--ic-space-1px));\n overflow: hidden;\n padding: 0;\n position: absolute;\n white-space: nowrap;\n width: var(--ic-space-1px);\n}\n","import { Host, h, } from \"@stencil/core\";\nimport { IcThemeForegroundEnum, } from \"../../utils/types\";\nimport { getInputDescribedByText, renderHiddenInput, handleHiddenFormButtonClick, getLabelFromValue, onComponentRequiredPropUndefined, getFilteredMenuOptions, removeDisabledFalse, } from \"../../utils/helpers\";\nimport clearIcon from \"../../assets/clear-icon.svg\";\nimport searchIcon from \"../../assets/search-icon.svg\";\nlet inputIds = 0;\n// eslint-disable-next-line @typescript-eslint/no-unused-vars\nexport class SearchBar {\n constructor() {\n this.assistiveHintEl = null;\n this.hasTimedOut = false;\n this.inputId = `ic-search-bar-input-${inputIds++}`;\n this.menuCloseFromMenuChangeEvent = false;\n this.menuId = `${this.inputId}-menu`;\n this.preLoad = true;\n this.preventSubmit = false;\n this.prevNoOption = false;\n this.retryButtonClick = false;\n this.truncateValue = false;\n this.handleClear = (ev) => {\n const keyboardEvent = ev;\n const mouseEvent = ev;\n if (mouseEvent.type === \"click\" ||\n keyboardEvent.code === \"Enter\" ||\n keyboardEvent.code === \"Space\") {\n this.value = \"\";\n this.inputEl.value = \"\";\n this.loading = false;\n clearTimeout(this.timeoutTimer);\n this.filteredOptions = this.options;\n this.el.setFocus();\n this.icClear.emit();\n ev.preventDefault();\n this.preventSubmit = true;\n }\n };\n this.onInput = (ev) => {\n this.value = ev.target.value;\n const noOptions = [\n { [this.labelField]: this.emptyOptionListText, [this.valueField]: \"\" },\n ];\n if (this.options.length > 0) {\n this.setMenuChange(true);\n this.preLoad = false;\n if (this.disableFilter === false) {\n const rawFilteredOptions = getFilteredMenuOptions(this.options, false, this.value, \"anywhere\", this.labelField);\n this.filteredOptions =\n rawFilteredOptions.length > 0 ? rawFilteredOptions : noOptions;\n }\n }\n if (!this.showClearButton) {\n this.handleShowClearButton(true);\n }\n this.debounceAriaLiveUpdate();\n };\n this.onInputBlur = (ev) => {\n const value = ev.target.value;\n const nextFocus = ev.relatedTarget;\n this.icInputBlur.emit({ value: value, relatedTarget: nextFocus });\n };\n this.onInputFocus = (ev) => {\n const value = ev.target.value;\n this.icInputFocus.emit({ value: value });\n this.handleShowClearButton(true);\n };\n this.handleClearBlur = (ev) => {\n const nextFocus = ev.relatedTarget;\n this.icClearBlur.emit({ relatedTarget: nextFocus });\n this.clearButtonFocused = false;\n };\n this.handleSubmitSearchBlur = (ev) => {\n const nextFocus = ev.relatedTarget;\n this.icSubmitSearchBlur.emit({ relatedTarget: nextFocus });\n this.searchSubmitFocused = false;\n };\n this.handleMouseDown = (ev) => {\n ev.preventDefault();\n };\n this.handleSubmitSearchFocus = () => {\n this.searchSubmitFocused = true;\n };\n this.handleSubmitSearch = () => {\n this.highlightedValue && (this.value = this.highlightedValue);\n this.highlightedValue = undefined;\n this.icSubmitSearch.emit({ value: this.value });\n const form = this.el.closest(\"FORM\");\n if (this.searchSubmitButton && !!form && !this.preventSubmit) {\n handleHiddenFormButtonClick(form, this.searchSubmitButton);\n }\n };\n this.handleSubmitSearchKeyDown = (ev) => {\n if (ev.key === \" \") {\n ev.preventDefault();\n this.handleSubmitSearch();\n }\n };\n this.handleRetry = (ev) => {\n this.retryViaKeyPress = ev.detail.keyPressed === \"Enter\";\n this.icRetryLoad.emit({ value: ev.detail.value });\n this.triggerLoading();\n this.retryButtonClick = true;\n };\n this.triggerLoading = () => {\n const loadingOption = [\n {\n [this.labelField]: this.loadingLabel,\n [this.valueField]: \"\",\n loading: true,\n },\n ];\n if (this.filteredOptions !== loadingOption)\n this.filteredOptions = loadingOption;\n if (this.timeout) {\n this.timeoutTimer = window.setTimeout(() => {\n this.filteredOptions = [\n {\n [this.labelField]: this.loadingErrorLabel,\n [this.valueField]: \"\",\n timedOut: true,\n },\n ];\n }, this.timeout);\n }\n };\n this.handleOptionSelect = (ev) => {\n if (ev.detail.label === this.emptyOptionListText) {\n this.el.setFocus();\n return;\n }\n this.value = ev.detail.value;\n this.icOptionSelect.emit({ value: this.value });\n };\n this.handleMenuOptionHighlight = (ev) => {\n var _a;\n const optionValue = (_a = ev.detail.optionId) === null || _a === void 0 ? void 0 : _a.replace(`${this.menuId}-`, \"\");\n optionValue && (this.highlightedValue = optionValue);\n if (ev.detail.optionId) {\n this.ariaActiveDescendant = ev.detail.optionId;\n }\n else {\n this.ariaActiveDescendant = undefined;\n }\n };\n this.handleMenuChange = (ev) => {\n this.setMenuChange(ev.detail.open);\n if (!ev.detail.open) {\n this.handleMenuCloseFromMenuChange(true);\n if (ev.detail.focusInput === undefined || ev.detail.focusInput) {\n this.el.setFocus();\n }\n }\n };\n this.setMenuChange = (open) => {\n if (this.open !== open) {\n this.open = open;\n this.icMenuChange.emit({ open });\n }\n };\n this.handleHostFocus = () => {\n if (this.options && this.value && !this.menuCloseFromMenuChangeEvent) {\n this.setMenuChange(true);\n }\n this.handleTruncateValue(false);\n this.icSearchBarFocus.emit();\n };\n this.handleHostBlur = (ev) => {\n const nextFocus = ev.relatedTarget;\n if (this.open &&\n this.options &&\n nextFocus !== this.menu &&\n !this.retryViaKeyPress &&\n !this.retryButtonClick) {\n this.setMenuChange(false);\n }\n if (this.retryButtonClick || this.retryViaKeyPress) {\n this.inputEl.setFocus();\n }\n this.handleShowClearButton(false);\n this.handleMenuCloseFromMenuChange(false);\n this.handleTruncateValue(true);\n this.icSearchBarBlur.emit({ relatedTarget: nextFocus, value: this.value });\n this.retryViaKeyPress = false;\n this.retryButtonClick = false;\n };\n this.handleShowClearButton = (visible) => {\n this.showClearButton = visible;\n };\n this.handleFocusClearButton = () => {\n this.clearButtonFocused = true;\n };\n this.handleMenuCloseFromMenuChange = (fromEvent) => {\n this.menuCloseFromMenuChangeEvent = fromEvent;\n };\n this.handleTruncateValue = (truncate) => {\n this.truncateValue = truncate;\n };\n this.renderAssistiveHintEl = () => {\n var _a, _b;\n const input = (_b = (_a = this.el.shadowRoot\n .querySelector(\"ic-text-field\")) === null || _a === void 0 ? void 0 : _a.shadowRoot) === null || _b === void 0 ? void 0 : _b.querySelector(`#${this.inputId}`);\n if (input &&\n Object.keys(input).length > 0 &&\n this.hasOptionsOrFilterDisabled()) {\n this.assistiveHintEl = document.createElement(\"span\");\n this.assistiveHintEl.innerText = this.hintText;\n this.assistiveHintEl.id = `${this.inputId}-assistive-hint`;\n this.assistiveHintEl.style.display = \"none\";\n if (input.after !== undefined) {\n input.after(this.assistiveHintEl);\n }\n }\n };\n this.updateSearchResultAriaLive = () => {\n const searchResultsStatusEl = this.el.shadowRoot.querySelector(\".search-results-status\");\n if (searchResultsStatusEl) {\n if (!this.open ||\n this.value === \"\" ||\n this.value.length < this.charactersUntilSuggestion) {\n searchResultsStatusEl.innerText = \"\";\n }\n else if (this.hasOptionsOrFilterDisabled() &&\n this.filteredOptions.length > 0 &&\n this.open &&\n !this.filteredOptions[0].loading) {\n if (this.hadNoOptions()) {\n searchResultsStatusEl.innerText = this.emptyOptionListText;\n }\n else {\n searchResultsStatusEl.innerText = `${this.filteredOptions.length} result${this.filteredOptions.length > 1 ? \"s\" : \"\"} available`;\n }\n }\n }\n };\n this.hasOptionsOrFilterDisabled = () => this.options.length > 0 || this.disableFilter;\n this.hadNoOptions = () => this.filteredOptions.length === 1 &&\n this.filteredOptions[0][this.labelField] === this.emptyOptionListText &&\n this.searchMode === \"navigation\";\n this.isSubmitDisabled = () => {\n const valueNotSet = this.value === undefined || this.value === null || this.value === \"\";\n const valueLengthLess = this.value.length < this.charactersUntilSuggestion;\n return (valueNotSet ||\n valueLengthLess ||\n this.disabled ||\n this.hadNoOptions() ||\n this.hasTimedOut ||\n this.loading);\n };\n this.highlightFirstOptionAfterNoResults = () => {\n if (this.prevNoOption && this.menu && !this.hasTimedOut) {\n this.menu.handleSetFirstOption();\n this.prevNoOption = false;\n }\n const prevNoOptionsList = this.filteredOptions.find((filteredOption) => filteredOption[this.labelField] === this.emptyOptionListText ||\n filteredOption[this.labelField] === this.loadingErrorLabel ||\n filteredOption[this.labelField] === this.loadingLabel);\n if (prevNoOptionsList) {\n this.prevNoOption = true;\n }\n };\n this.ariaActiveDescendant = undefined;\n this.clearButtonFocused = false;\n this.highlightedValue = undefined;\n this.open = false;\n this.searchSubmitFocused = false;\n this.showClearButton = false;\n this.autocapitalize = \"off\";\n this.autocomplete = \"off\";\n this.autocorrect = \"off\";\n this.autofocus = false;\n this.charactersUntilSuggestion = 2;\n this.disabled = false;\n this.disableFilter = false;\n this.debounce = 0;\n this.emptyOptionListText = \"No results found\";\n this.focusOnLoad = false;\n this.fullWidth = false;\n this.helperText = \"\";\n this.hideLabel = false;\n this.hintText = \"When autocomplete results are available use the up and down arrows to choose and press enter to select\";\n this.label = undefined;\n this.labelField = \"label\";\n this.loading = false;\n this.loadingErrorLabel = \"Loading Error\";\n this.loadingLabel = \"Loading...\";\n this.name = this.inputId;\n this.placeholder = \"Search\";\n this.readonly = false;\n this.required = false;\n this.searchMode = \"navigation\";\n this.size = \"default\";\n this.small = false;\n this.spellcheck = false;\n this.timeout = undefined;\n this.valueField = \"value\";\n this.filteredOptions = [];\n this.options = [];\n this.value = \"\";\n }\n loadingHandler(newValue) {\n if (newValue && !this.hasTimedOut) {\n this.preLoad = false;\n this.triggerLoading();\n }\n }\n filteredOptionsHandler(newOptions) {\n this.hasTimedOut = newOptions.some((opt) => opt.timedOut);\n }\n watchOptionsHandler(newOptions) {\n if (this.disableFilter && !this.hasTimedOut) {\n this.loading = false;\n clearTimeout(this.timeoutTimer);\n if (newOptions.length > 0) {\n this.filteredOptions = newOptions;\n }\n else {\n if (this.hadNoOptions()) {\n return;\n }\n this.setMenuChange(true);\n !this.preLoad &&\n (this.filteredOptions = [\n {\n [this.labelField]: this.emptyOptionListText,\n [this.valueField]: \"\",\n },\n ]);\n this.preLoad = true;\n }\n }\n this.debounceAriaLiveUpdate();\n }\n watchValueHandler(newValue) {\n if (this.inputEl &&\n this.options &&\n !!getLabelFromValue(newValue, this.options, this.valueField, this.labelField)) {\n this.inputEl.value = getLabelFromValue(newValue, this.options, this.valueField, this.labelField);\n }\n else if (this.inputEl && this.inputEl.value !== newValue) {\n this.inputEl.value = newValue;\n }\n }\n disconnectedCallback() {\n if (this.assistiveHintEl) {\n this.assistiveHintEl.remove();\n }\n }\n componentWillLoad() {\n this.watchValueHandler(this.value);\n removeDisabledFalse(this.disabled, this.el);\n if (this.small) {\n this.size = \"small\";\n }\n }\n componentDidLoad() {\n if (this.focusOnLoad) {\n this.el.setFocus();\n }\n if (this.hasOptionsOrFilterDisabled()) {\n this.renderAssistiveHintEl();\n if (this.disableFilter) {\n this.filteredOptions = this.options;\n }\n }\n onComponentRequiredPropUndefined([{ prop: this.label, propName: \"label\" }], \"Search Bar\");\n if (this.inputEl !== undefined) {\n this.anchorEl = this.inputEl.shadowRoot.querySelector(\"ic-input-component-container\");\n }\n }\n componentWillRender() {\n this.highlightFirstOptionAfterNoResults();\n }\n handleKeyDown(ev) {\n const keyEv = ev.detail.event;\n if (this.menu && this.open) {\n this.menu.handleKeyboardOpen(keyEv);\n }\n }\n handleKeyUp(ev) {\n if (ev.key === \"Enter\") {\n if (this.preventSubmit || this.isSubmitDisabled()) {\n return;\n }\n this.handleSubmitSearch();\n this.setMenuChange(false);\n }\n if (ev.key === \"Escape\") {\n this.setMenuChange(false);\n }\n if (this.preventSubmit) {\n this.preventSubmit = false;\n }\n }\n /**\n * Sets focus on the native `input`.\n */\n async setFocus() {\n this.retryViaKeyPress = false;\n this.retryButtonClick = false;\n if (this.inputEl) {\n this.inputEl.setFocus();\n }\n }\n debounceAriaLiveUpdate() {\n clearTimeout(this.debounceAriaLive);\n this.debounceAriaLive = window.setTimeout(() => {\n this.updateSearchResultAriaLive();\n }, 500);\n }\n render() {\n const { inputId, name, label, required, small, size, placeholder, helperText, disabled, value, readonly, spellcheck, fullWidth, options, open, hideLabel, menuId, ariaActiveDescendant, truncateValue, autofocus, autocapitalize, autocomplete, filteredOptions, } = this;\n const disabledMode = readonly || disabled;\n const describedBy = getInputDescribedByText(inputId, helperText !== \"\", false).trim();\n let describedById;\n if (describedBy !== \"\" && this.hasOptionsOrFilterDisabled()) {\n describedById = `${describedBy} ${this.inputId}-assistive-hint`;\n }\n else if (this.hasOptionsOrFilterDisabled()) {\n describedById = `${this.inputId}-assistive-hint`;\n }\n else if (describedBy !== \"\") {\n describedById = describedBy;\n }\n else {\n describedById = undefined;\n }\n const hasSuggestedSearch = !!value && this.hasOptionsOrFilterDisabled();\n const menuOpen = hasSuggestedSearch && open && filteredOptions.length > 0;\n const menuRendered = menuOpen && value.length >= this.charactersUntilSuggestion;\n const labelValue = getLabelFromValue(value, options, this.valueField, this.labelField);\n renderHiddenInput(true, this.el, name, value, disabledMode);\n return (h(Host, { class: {\n search: true,\n fullwidth: fullWidth,\n disabled,\n small: size === \"small\",\n }, onFocus: this.handleHostFocus, onBlur: this.handleHostBlur }, h(\"ic-text-field\", { ref: (el) => (this.inputEl = el), inputId: inputId, label: label, helperText: helperText, required: required, disabled: disabledMode && !readonly, readonly: readonly, size: size, hideLabel: hideLabel, fullWidth: fullWidth, name: name, truncateValue: truncateValue, value: options && !!labelValue ? labelValue : value, placeholder: placeholder, onInput: this.onInput, onBlur: this.onInputBlur, onFocus: this.onInputFocus, \"aria-label\": hideLabel ? label : \"\", \"aria-describedby\": describedById, \"aria-owns\": menuRendered ? menuId : undefined, \"aria-controls\": menuRendered ? menuId : undefined, \"aria-haspopup\": options.length > 0 ? \"listbox\" : undefined, ariaExpanded: options.length > 0 ? `${menuOpen}` : undefined, ariaActiveDescendant: ariaActiveDescendant, \"aria-autocomplete\": hasSuggestedSearch ? \"list\" : undefined, role: options.length > 0 ? \"combobox\" : undefined, autocomplete: autocomplete, autocapitalize: autocapitalize, autoFocus: autofocus, spellcheck: spellcheck, inputmode: \"search\", debounce: this.debounce }, h(\"div\", { class: {\n \"clear-button-container\": true,\n \"clear-button-visible\": value && !disabledMode && this.showClearButton,\n }, slot: \"clear-button\" }, h(\"ic-button\", { id: \"clear-button\", class: \"clear-button\", \"aria-label\": \"Clear\", innerHTML: clearIcon, onClick: this.handleClear, onMouseDown: this.handleMouseDown, size: size, onFocus: this.handleFocusClearButton, onBlur: this.handleClearBlur, onKeyDown: this.handleClear, type: \"submit\", variant: \"icon\", appearance: this.clearButtonFocused\n ? IcThemeForegroundEnum.Light\n : IcThemeForegroundEnum.Dark }), h(\"div\", { class: \"divider\" })), h(\"div\", { class: {\n \"search-submit-button-container\": true,\n \"search-submit-button-disabled\": this.isSubmitDisabled(),\n }, slot: \"search-submit-button\" }, h(\"ic-button\", { id: \"search-submit-button\", \"aria-label\": \"Search\", ref: (el) => (this.searchSubmitButton = el), class: {\n [\"search-submit-button\"]: true,\n [\"search-submit-button-small\"]: !!small,\n }, disabled: this.isSubmitDisabled(), innerHTML: searchIcon, size: size, onClick: this.handleSubmitSearch, onMouseDown: this.handleMouseDown, onBlur: this.handleSubmitSearchBlur, onFocus: this.handleSubmitSearchFocus, onKeyDown: this.handleSubmitSearchKeyDown, type: \"submit\", variant: \"icon\", appearance: this.searchSubmitFocused\n ? IcThemeForegroundEnum.Light\n : IcThemeForegroundEnum.Default })), h(\"div\", { class: {\n \"menu-container\": true,\n fullwidth: fullWidth,\n }, slot: \"menu\" }, menuRendered && (h(\"ic-menu\", { class: {\n \"no-results\": this.hadNoOptions() ||\n (filteredOptions.length === 1 &&\n (filteredOptions[0][this.labelField] ===\n this.loadingLabel ||\n filteredOptions[0][this.labelField] ===\n this.loadingErrorLabel)),\n }, activationType: \"manual\", anchorEl: this.anchorEl, autoFocusOnSelected: false, searchMode: this.searchMode, inputEl: this.inputEl, inputLabel: label, ref: (el) => (this.menu = el), small: size === \"small\", fullWidth: fullWidth, menuId: menuId, open: !!menuRendered, options: filteredOptions, onMenuOptionSelect: this.handleOptionSelect, onMenuStateChange: this.handleMenuChange, onMenuOptionId: this.handleMenuOptionHighlight, onRetryButtonClicked: this.handleRetry, parentEl: this.el, value: value, labelField: this.labelField, valueField: this.valueField })))), h(\"div\", { \"aria-live\": \"polite\", role: \"status\", class: \"search-results-status\" })));\n }\n static get is() { return \"ic-search-bar\"; }\n static get encapsulation() { return \"shadow\"; }\n static get delegatesFocus() { return true; }\n static get originalStyleUrls() {\n return {\n \"$\": [\"ic-search-bar.css\"]\n };\n }\n static get styleUrls() {\n return {\n \"$\": [\"ic-search-bar.css\"]\n };\n }\n static get properties() {\n return {\n \"autocapitalize\": {\n \"type\": \"string\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"string\",\n \"resolved\": \"string\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": false,\n \"docs\": {\n \"tags\": [],\n \"text\": \"The automatic capitalisation of the text value as it is entered/edited by the user.\\nAvailable options: \\\"off\\\", \\\"none\\\", \\\"on\\\", \\\"sentences\\\", \\\"words\\\", \\\"characters\\\".\"\n },\n \"attribute\": \"autocapitalize\",\n \"reflect\": false,\n \"defaultValue\": \"\\\"off\\\"\"\n },\n \"autocomplete\": {\n \"type\": \"string\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"IcAutocompleteTypes\",\n \"resolved\": \"\\\"name\\\" | \\\"on\\\" | \\\"off\\\" | \\\"honorific-prefix\\\" | \\\"given-name\\\" | \\\"additional-name\\\" | \\\"family-name\\\" | \\\"honorific-suffix\\\" | \\\"nickname\\\" | \\\"email\\\" | \\\"username\\\" | \\\"new-password\\\" | \\\"current-password\\\" | \\\"one-time-code\\\" | \\\"organization-title\\\" | \\\"organization\\\" | \\\"street-address\\\" | \\\"address-line1\\\" | \\\"address-line2\\\" | \\\"address-line3\\\" | \\\"address-level4\\\" | \\\"address-level3\\\" | \\\"address-level2\\\" | \\\"address-level1\\\" | \\\"country\\\" | \\\"country-name\\\" | \\\"postal-code\\\" | \\\"cc-name\\\" | \\\"cc-given-name\\\" | \\\"cc-additional-name\\\" | \\\"cc-family-name\\\" | \\\"cc-number\\\" | \\\"cc-exp\\\" | \\\"cc-exp-month\\\" | \\\"cc-exp-year\\\" | \\\"cc-csc\\\" | \\\"cc-type\\\" | \\\"transaction-currency\\\" | \\\"transaction-amount\\\" | \\\"language\\\" | \\\"bday\\\" | \\\"bday-day\\\" | \\\"bday-month\\\" | \\\"bday-year\\\" | \\\"sex\\\" | \\\"tel\\\" | \\\"tel-country-code\\\" | \\\"tel-national\\\" | \\\"tel-area-code\\\" | \\\"tel-local\\\" | \\\"tel-extension\\\" | \\\"impp\\\" | \\\"url\\\" | \\\"photo\\\"\",\n \"references\": {\n \"IcAutocompleteTypes\": {\n \"location\": \"import\",\n \"path\": \"../../utils/types\",\n \"id\": \"src/utils/types.ts::IcAutocompleteTypes\"\n }\n }\n },\n \"required\": false,\n \"optional\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"The state of autocompletion the browser can apply on the text value.\"\n },\n \"attribute\": \"autocomplete\",\n \"reflect\": false,\n \"defaultValue\": \"\\\"off\\\"\"\n },\n \"autocorrect\": {\n \"type\": \"string\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"IcAutocorrectStates\",\n \"resolved\": \"\\\"off\\\" | \\\"on\\\"\",\n \"references\": {\n \"IcAutocorrectStates\": {\n \"location\": \"import\",\n \"path\": \"../../utils/types\",\n \"id\": \"src/utils/types.ts::IcAutocorrectStates\"\n }\n }\n },\n \"required\": false,\n \"optional\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"The state of autocorrection the browser can apply when the user is entering/editing the text value.\"\n },\n \"attribute\": \"autocorrect\",\n \"reflect\": false,\n \"defaultValue\": \"\\\"off\\\"\"\n },\n \"autofocus\": {\n \"type\": \"boolean\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"boolean\",\n \"resolved\": \"boolean\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": false,\n \"docs\": {\n \"tags\": [],\n \"text\": \"If `true`, the form control will have input focus when the page loads.\"\n },\n \"attribute\": \"autofocus\",\n \"reflect\": false,\n \"defaultValue\": \"false\"\n },\n \"charactersUntilSuggestion\": {\n \"type\": \"number\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"number\",\n \"resolved\": \"number\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": false,\n \"docs\": {\n \"tags\": [],\n \"text\": \"The number of characters until suggestions appear. The submit button will be disabled until the inputted value is equal to or greater than this number.\"\n },\n \"attribute\": \"characters-until-suggestion\",\n \"reflect\": false,\n \"defaultValue\": \"2\"\n },\n \"disabled\": {\n \"type\": \"boolean\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"boolean\",\n \"resolved\": \"boolean\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"If `true`, the disabled state will be set.\"\n },\n \"attribute\": \"disabled\",\n \"reflect\": false,\n \"defaultValue\": \"false\"\n },\n \"disableFilter\": {\n \"type\": \"boolean\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"boolean\",\n \"resolved\": \"boolean\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"Specify whether to disable the built in filtering. For example, if options will already be filtered from external source.\\nIf `true`, all options provided will be displayed.\"\n },\n \"attribute\": \"disable-filter\",\n \"reflect\": false,\n \"defaultValue\": \"false\"\n },\n \"debounce\": {\n \"type\": \"number\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"number\",\n \"resolved\": \"number\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"The amount of time, in milliseconds, to wait to trigger the `icChange` event after each keystroke.\"\n },\n \"attribute\": \"debounce\",\n \"reflect\": false,\n \"defaultValue\": \"0\"\n },\n \"emptyOptionListText\": {\n \"type\": \"string\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"string\",\n \"resolved\": \"string\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": false,\n \"docs\": {\n \"tags\": [],\n \"text\": \"The text displayed when there are no options in the option list.\"\n },\n \"attribute\": \"empty-option-list-text\",\n \"reflect\": false,\n \"defaultValue\": \"\\\"No results found\\\"\"\n },\n \"focusOnLoad\": {\n \"type\": \"boolean\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"boolean\",\n \"resolved\": \"boolean\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"If `true`, the search bar will be focused when component loaded.\"\n },\n \"attribute\": \"focus-on-load\",\n \"reflect\": false,\n \"defaultValue\": \"false\"\n },\n \"fullWidth\": {\n \"type\": \"boolean\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"boolean\",\n \"resolved\": \"boolean\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"Specify whether the search bar fills the full width of the container.\\nIf `true`, this overrides the --input-width CSS variable.\"\n },\n \"attribute\": \"full-width\",\n \"reflect\": false,\n \"defaultValue\": \"false\"\n },\n \"helperText\": {\n \"type\": \"string\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"string\",\n \"resolved\": \"string\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"The helper text that will be displayed for additional field guidance.\"\n },\n \"attribute\": \"helper-text\",\n \"reflect\": false,\n \"defaultValue\": \"\\\"\\\"\"\n },\n \"hideLabel\": {\n \"type\": \"boolean\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"boolean\",\n \"resolved\": \"boolean\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"If `true`, the label will be hidden and the required label value will be applied as an aria-label.\"\n },\n \"attribute\": \"hide-label\",\n \"reflect\": false,\n \"defaultValue\": \"false\"\n },\n \"hintText\": {\n \"type\": \"string\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"string\",\n \"resolved\": \"string\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"The hint text for the hidden assistive description element.\"\n },\n \"attribute\": \"hint-text\",\n \"reflect\": false,\n \"defaultValue\": \"\\\"When autocomplete results are available use the up and down arrows to choose and press enter to select\\\"\"\n },\n \"label\": {\n \"type\": \"string\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"string\",\n \"resolved\": \"string\",\n \"references\": {}\n },\n \"required\": true,\n \"optional\": false,\n \"docs\": {\n \"tags\": [],\n \"text\": \"The label for the search bar.\"\n },\n \"attribute\": \"label\",\n \"reflect\": false\n },\n \"labelField\": {\n \"type\": \"string\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"string\",\n \"resolved\": \"string\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"The custom name for the label field to correspond with the IcMenuOption type.\"\n },\n \"attribute\": \"label-field\",\n \"reflect\": false,\n \"defaultValue\": \"\\\"label\\\"\"\n },\n \"loading\": {\n \"type\": \"boolean\",\n \"mutable\": true,\n \"complexType\": {\n \"original\": \"boolean\",\n \"resolved\": \"boolean\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"Trigger loading state when fetching options asynchronously\"\n },\n \"attribute\": \"loading\",\n \"reflect\": false,\n \"defaultValue\": \"false\"\n },\n \"loadingErrorLabel\": {\n \"type\": \"string\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"string\",\n \"resolved\": \"string\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"Change the message displayed when external loading times out.\"\n },\n \"attribute\": \"loading-error-label\",\n \"reflect\": false,\n \"defaultValue\": \"\\\"Loading Error\\\"\"\n },\n \"loadingLabel\": {\n \"type\": \"string\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"string\",\n \"resolved\": \"string\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"Change the message displayed whilst the options are being loaded externally.\"\n },\n \"attribute\": \"loading-label\",\n \"reflect\": false,\n \"defaultValue\": \"\\\"Loading...\\\"\"\n },\n \"name\": {\n \"type\": \"string\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"string\",\n \"resolved\": \"string\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": false,\n \"docs\": {\n \"tags\": [],\n \"text\": \"The name of the control, which is submitted with the form data.\"\n },\n \"attribute\": \"name\",\n \"reflect\": false,\n \"defaultValue\": \"this.inputId\"\n },\n \"placeholder\": {\n \"type\": \"string\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"string\",\n \"resolved\": \"string\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"The placeholder value to display.\"\n },\n \"attribute\": \"placeholder\",\n \"reflect\": false,\n \"defaultValue\": \"\\\"Search\\\"\"\n },\n \"readonly\": {\n \"type\": \"boolean\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"boolean\",\n \"resolved\": \"boolean\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"If `true`, the readonly state will be set.\"\n },\n \"attribute\": \"readonly\",\n \"reflect\": false,\n \"defaultValue\": \"false\"\n },\n \"required\": {\n \"type\": \"boolean\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"boolean\",\n \"resolved\": \"boolean\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"If `true`, the search bar will require a value.\"\n },\n \"attribute\": \"required\",\n \"reflect\": false,\n \"defaultValue\": \"false\"\n },\n \"searchMode\": {\n \"type\": \"string\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"IcSearchBarSearchModes\",\n \"resolved\": \"\\\"navigation\\\" | \\\"query\\\"\",\n \"references\": {\n \"IcSearchBarSearchModes\": {\n \"location\": \"import\",\n \"path\": \"./ic-search-bar.types\",\n \"id\": \"src/components/ic-search-bar/ic-search-bar.types.ts::IcSearchBarSearchModes\"\n }\n }\n },\n \"required\": false,\n \"optional\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"Specify the mode search bar uses to search. `navigation` allows for quick lookups of a set of values, `query` allows for more general searches.\"\n },\n \"attribute\": \"search-mode\",\n \"reflect\": false,\n \"defaultValue\": \"\\\"navigation\\\"\"\n },\n \"size\": {\n \"type\": \"string\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"IcSizesNoLarge\",\n \"resolved\": \"\\\"default\\\" | \\\"small\\\"\",\n \"references\": {\n \"IcSizesNoLarge\": {\n \"location\": \"import\",\n \"path\": \"../../utils/types\",\n \"id\": \"src/utils/types.ts::IcSizesNoLarge\"\n }\n }\n },\n \"required\": false,\n \"optional\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"The size of the search bar component.\"\n },\n \"attribute\": \"size\",\n \"reflect\": false,\n \"defaultValue\": \"\\\"default\\\"\"\n },\n \"small\": {\n \"type\": \"boolean\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"boolean\",\n \"resolved\": \"boolean\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": true,\n \"docs\": {\n \"tags\": [{\n \"name\": \"deprecated\",\n \"text\": \"This prop should not be used anymore. Set prop `size` to \\\"small\\\" instead.\"\n }],\n \"text\": \"\"\n },\n \"attribute\": \"small\",\n \"reflect\": false,\n \"defaultValue\": \"false\"\n },\n \"spellcheck\": {\n \"type\": \"boolean\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"boolean\",\n \"resolved\": \"boolean\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": false,\n \"docs\": {\n \"tags\": [],\n \"text\": \"If `true`, the value of the search will have its spelling and grammar checked.\"\n },\n \"attribute\": \"spellcheck\",\n \"reflect\": false,\n \"defaultValue\": \"false\"\n },\n \"timeout\": {\n \"type\": \"number\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"number\",\n \"resolved\": \"number\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"If using external filtering, set a timeout for when loading takes too long.\"\n },\n \"attribute\": \"timeout\",\n \"reflect\": false\n },\n \"valueField\": {\n \"type\": \"string\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"string\",\n \"resolved\": \"string\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"The custom name for the value field to correspond with the IcMenuOption type.\"\n },\n \"attribute\": \"value-field\",\n \"reflect\": false,\n \"defaultValue\": \"\\\"value\\\"\"\n },\n \"options\": {\n \"type\": \"unknown\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"IcMenuOption[]\",\n \"resolved\": \"IcMenuOption[]\",\n \"references\": {\n \"IcMenuOption\": {\n \"location\": \"import\",\n \"path\": \"../../utils/types\",\n \"id\": \"src/utils/types.ts::IcMenuOption\"\n }\n }\n },\n \"required\": false,\n \"optional\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"The suggested search options.\"\n },\n \"defaultValue\": \"[]\"\n },\n \"value\": {\n \"type\": \"string\",\n \"mutable\": true,\n \"complexType\": {\n \"original\": \"string\",\n \"resolved\": \"string\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": false,\n \"docs\": {\n \"tags\": [],\n \"text\": \"The value of the search input.\"\n },\n \"attribute\": \"value\",\n \"reflect\": true,\n \"defaultValue\": \"\\\"\\\"\"\n }\n };\n }\n static get states() {\n return {\n \"ariaActiveDescendant\": {},\n \"clearButtonFocused\": {},\n \"highlightedValue\": {},\n \"open\": {},\n \"searchSubmitFocused\": {},\n \"showClearButton\": {},\n \"filteredOptions\": {}\n };\n }\n static get events() {\n return [{\n \"method\": \"icChange\",\n \"name\": \"icChange\",\n \"bubbles\": true,\n \"cancelable\": true,\n \"composed\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"Emitted when the value has changed.\"\n },\n \"complexType\": {\n \"original\": \"IcValueEventDetail\",\n \"resolved\": \"IcValueEventDetail\",\n \"references\": {\n \"IcValueEventDetail\": {\n \"location\": \"import\",\n \"path\": \"../../utils/types\",\n \"id\": \"src/utils/types.ts::IcValueEventDetail\"\n }\n }\n }\n }, {\n \"method\": \"icClear\",\n \"name\": \"icClear\",\n \"bubbles\": true,\n \"cancelable\": true,\n \"composed\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"Emitted when value is cleared with clear button\"\n },\n \"complexType\": {\n \"original\": \"void\",\n \"resolved\": \"void\",\n \"references\": {}\n }\n }, {\n \"method\": \"icInput\",\n \"name\": \"icInput\",\n \"bubbles\": true,\n \"cancelable\": true,\n \"composed\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"Emitted when a keyboard input occurred.\"\n },\n \"complexType\": {\n \"original\": \"IcValueEventDetail\",\n \"resolved\": \"IcValueEventDetail\",\n \"references\": {\n \"IcValueEventDetail\": {\n \"location\": \"import\",\n \"path\": \"../../utils/types\",\n \"id\": \"src/utils/types.ts::IcValueEventDetail\"\n }\n }\n }\n }, {\n \"method\": \"icInputBlur\",\n \"name\": \"icInputBlur\",\n \"bubbles\": true,\n \"cancelable\": true,\n \"composed\": true,\n \"docs\": {\n \"tags\": [{\n \"name\": \"deprecated\",\n \"text\": \"This event should not be used anymore. Use icSearchBarBlur instead.\"\n }],\n \"text\": \"\"\n },\n \"complexType\": {\n \"original\": \"IcSearchBarBlurEventDetail\",\n \"resolved\": \"IcSearchBarBlurEventDetail\",\n \"references\": {\n \"IcSearchBarBlurEventDetail\": {\n \"location\": \"import\",\n \"path\": \"./ic-search-bar.types\",\n \"id\": \"src/components/ic-search-bar/ic-search-bar.types.ts::IcSearchBarBlurEventDetail\"\n }\n }\n }\n }, {\n \"method\": \"icInputFocus\",\n \"name\": \"icInputFocus\",\n \"bubbles\": true,\n \"cancelable\": true,\n \"composed\": true,\n \"docs\": {\n \"tags\": [{\n \"name\": \"deprecated\",\n \"text\": \"This event should not be used anymore. Use icSearchBarFocus instead.\"\n }],\n \"text\": \"\"\n },\n \"complexType\": {\n \"original\": \"IcValueEventDetail\",\n \"resolved\": \"IcValueEventDetail\",\n \"references\": {\n \"IcValueEventDetail\": {\n \"location\": \"import\",\n \"path\": \"../../utils/types\",\n \"id\": \"src/utils/types.ts::IcValueEventDetail\"\n }\n }\n }\n }, {\n \"method\": \"icOptionSelect\",\n \"name\": \"icOptionSelect\",\n \"bubbles\": true,\n \"cancelable\": true,\n \"composed\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"Emitted when option is highlighted within the menu\"\n },\n \"complexType\": {\n \"original\": \"IcOptionSelectEventDetail\",\n \"resolved\": \"IcOptionSelectEventDetail\",\n \"references\": {\n \"IcOptionSelectEventDetail\": {\n \"location\": \"import\",\n \"path\": \"../ic-menu/ic-menu.types\",\n \"id\": \"src/components/ic-menu/ic-menu.types.ts::IcOptionSelectEventDetail\"\n }\n }\n }\n }, {\n \"method\": \"icMenuChange\",\n \"name\": \"icMenuChange\",\n \"bubbles\": true,\n \"cancelable\": true,\n \"composed\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"Emitted when the state of the menu changes (i.e. open or close)\"\n },\n \"complexType\": {\n \"original\": \"IcMenuChangeEventDetail\",\n \"resolved\": \"IcMenuChangeEventDetail\",\n \"references\": {\n \"IcMenuChangeEventDetail\": {\n \"location\": \"import\",\n \"path\": \"../ic-menu/ic-menu.types\",\n \"id\": \"src/components/ic-menu/ic-menu.types.ts::IcMenuChangeEventDetail\"\n }\n }\n }\n }, {\n \"method\": \"icClearBlur\",\n \"name\": \"icClearBlur\",\n \"bubbles\": true,\n \"cancelable\": true,\n \"composed\": true,\n \"docs\": {\n \"tags\": [{\n \"name\": \"internal\",\n \"text\": \"- Emitted when blur is invoked from clear button\"\n }],\n \"text\": \"\"\n },\n \"complexType\": {\n \"original\": \"IcBlurEventDetail\",\n \"resolved\": \"IcBlurEventDetail\",\n \"references\": {\n \"IcBlurEventDetail\": {\n \"location\": \"import\",\n \"path\": \"../../utils/types\",\n \"id\": \"src/utils/types.ts::IcBlurEventDetail\"\n }\n }\n }\n }, {\n \"method\": \"icRetryLoad\",\n \"name\": \"icRetryLoad\",\n \"bubbles\": true,\n \"cancelable\": true,\n \"composed\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"Emitted when the 'retry loading' button is clicked\"\n },\n \"complexType\": {\n \"original\": \"IcValueEventDetail\",\n \"resolved\": \"IcValueEventDetail\",\n \"references\": {\n \"IcValueEventDetail\": {\n \"location\": \"import\",\n \"path\": \"../../utils/types\",\n \"id\": \"src/utils/types.ts::IcValueEventDetail\"\n }\n }\n }\n }, {\n \"method\": \"icSubmitSearch\",\n \"name\": \"icSubmitSearch\",\n \"bubbles\": true,\n \"cancelable\": true,\n \"composed\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"Emitted when the search value has been submitted\"\n },\n \"complexType\": {\n \"original\": \"IcValueEventDetail\",\n \"resolved\": \"IcValueEventDetail\",\n \"references\": {\n \"IcValueEventDetail\": {\n \"location\": \"import\",\n \"path\": \"../../utils/types\",\n \"id\": \"src/utils/types.ts::IcValueEventDetail\"\n }\n }\n }\n }, {\n \"method\": \"icSubmitSearchBlur\",\n \"name\": \"icSubmitSearchBlur\",\n \"bubbles\": true,\n \"cancelable\": true,\n \"composed\": true,\n \"docs\": {\n \"tags\": [{\n \"name\": \"internal\",\n \"text\": \"- Emitted when blur is invoked from search submit button\"\n }],\n \"text\": \"\"\n },\n \"complexType\": {\n \"original\": \"IcBlurEventDetail\",\n \"resolved\": \"IcBlurEventDetail\",\n \"references\": {\n \"IcBlurEventDetail\": {\n \"location\": \"import\",\n \"path\": \"../../utils/types\",\n \"id\": \"src/utils/types.ts::IcBlurEventDetail\"\n }\n }\n }\n }, {\n \"method\": \"icSearchBarBlur\",\n \"name\": \"icSearchBarBlur\",\n \"bubbles\": true,\n \"cancelable\": true,\n \"composed\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"Emitted when blur is invoked from ic-search-bar\"\n },\n \"complexType\": {\n \"original\": \"IcSearchBarBlurEventDetail\",\n \"resolved\": \"IcSearchBarBlurEventDetail\",\n \"references\": {\n \"IcSearchBarBlurEventDetail\": {\n \"location\": \"import\",\n \"path\": \"./ic-search-bar.types\",\n \"id\": \"src/components/ic-search-bar/ic-search-bar.types.ts::IcSearchBarBlurEventDetail\"\n }\n }\n }\n }, {\n \"method\": \"icSearchBarFocus\",\n \"name\": \"icSearchBarFocus\",\n \"bubbles\": true,\n \"cancelable\": true,\n \"composed\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"Emitted when focus is invoked from ic-search-bar\"\n },\n \"complexType\": {\n \"original\": \"void\",\n \"resolved\": \"void\",\n \"references\": {}\n }\n }];\n }\n static get methods() {\n return {\n \"setFocus\": {\n \"complexType\": {\n \"signature\": \"() => Promise<void>\",\n \"parameters\": [],\n \"references\": {\n \"Promise\": {\n \"location\": \"global\",\n \"id\": \"global::Promise\"\n }\n },\n \"return\": \"Promise<void>\"\n },\n \"docs\": {\n \"text\": \"Sets focus on the native `input`.\",\n \"tags\": []\n }\n }\n };\n }\n static get elementRef() { return \"el\"; }\n static get watchers() {\n return [{\n \"propName\": \"loading\",\n \"methodName\": \"loadingHandler\"\n }, {\n \"propName\": \"filteredOptions\",\n \"methodName\": \"filteredOptionsHandler\"\n }, {\n \"propName\": \"options\",\n \"methodName\": \"watchOptionsHandler\"\n }, {\n \"propName\": \"value\",\n \"methodName\": \"watchValueHandler\"\n }];\n }\n static get listeners() {\n return [{\n \"name\": \"icKeydown\",\n \"method\": \"handleKeyDown\",\n \"target\": undefined,\n \"capture\": false,\n \"passive\": false\n }, {\n \"name\": \"keyup\",\n \"method\": \"handleKeyUp\",\n \"target\": undefined,\n \"capture\": false,\n \"passive\": false\n }];\n }\n}\n//# sourceMappingURL=ic-search-bar.js.map\n"],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ import{r as t,f as i,h as e,H as a,g as s,c as n}from"./p-8455d1bb.js";import{j as l,i as h,a as r}from"./p-8128572e.js";import{C as o,D as c}from"./p-297e99cf.js";import"./p-fd186591.js";const p=":host{gap:var(--ic-space-xs);padding:var(--ic-space-xs)}:host,.action-area{display:flex;flex-direction:column}.action-area{gap:var(--ic-space-md)}:host ::slotted(svg),:host ::slotted(img){border-radius:var(--ic-space-xxs)}:host(.right),:host(.right) .action-area{align-items:flex-end;text-align:right}:host(.center),:host(.center) .action-area{align-items:center;text-align:center}:host(.image-default) ::slotted(svg),:host(.image-default) ::slotted(img){height:calc(3 * var(--ic-space-lg)) !important;width:calc(3 * var(--ic-space-lg)) !important}:host(.image-small) ::slotted(svg),:host(.image-small) ::slotted(img){height:var(--ic-space-xxl) !important;width:var(--ic-space-xxl) !important}:host(.image-large) ::slotted(svg),:host(.image-large) ::slotted(img){height:calc(4 * var(--ic-space-xl)) !important;width:calc(4 * var(--ic-space-xl)) !important}";const g=class{constructor(e){t(this,e);this.hostMutationObserver=null;this.hostMutationCallback=t=>{if(t.some((({type:t,addedNodes:i,removedNodes:e})=>t==="childList"?l(i,e,["image","actions"]):false))){i(this)}};this.aligned="left";this.body=undefined;this.bodyMaxLines=undefined;this.heading=undefined;this.imageSize="default";this.subheading=undefined}disconnectedCallback(){var t;(t=this.hostMutationObserver)===null||t===void 0?void 0:t.disconnect()}componentDidLoad(){!h(this.el,"heading")&&r([{prop:this.heading,propName:"heading"}],"Empty State");this.hostMutationObserver=new MutationObserver(this.hostMutationCallback);this.hostMutationObserver.observe(this.el,{childList:true})}render(){const{aligned:t,body:i,bodyMaxLines:s,heading:n,imageSize:l,subheading:r}=this;return e(a,{class:{[`${t}`]:true,[`image-${l}`]:h(this.el,"image")}},h(this.el,"image")&&e("slot",{name:"image"}),e("div",null,e("slot",{name:"heading"},e("ic-typography",{variant:"h4"},n)),e("slot",{name:"subheading"},e("ic-typography",{variant:"subtitle-small"},r)),e("slot",{name:"body"},e("ic-typography",{maxLines:s},i))),h(this.el,"actions")&&e("div",{class:"action-area"},e("slot",{name:"actions"})))}get el(){return s(this)}};g.style=p;const d=":host(){display:block}.pagination-bar{height:3.5rem;display:flex;align-items:center;justify-content:flex-end;gap:var(--ic-space-xl);padding:var(--ic-space-xs) var(--ic-space-md);box-sizing:border-box}.pagination-bar-left{justify-content:flex-start}.item-controls{display:flex;align-items:center;gap:var(--ic-space-xl)}.pagination-bar-space-between .item-controls{margin-right:auto}.items-per-page-holder{display:flex;align-items:center;gap:var(--ic-space-xs)}.items-per-page-input{--input-width:5rem}.pagination-controls{display:flex;align-items:center;gap:var(--ic-space-xl)}.pagination-controls-wrap{flex-direction:column;align-items:flex-end;gap:var(--ic-space-xs)}.pagination-bar-space-between .pagination-controls{margin-left:auto}.go-to-page-holder{display:flex;align-items:center;gap:var(--ic-space-xs)}.go-to-page-input{--input-width:var(--ic-space-xl)}.go-to-page-button{--min-width:var(--ic-space-xl)}.pagination-text-default,.pagination-text-dark,.pagination-text-light{white-space:nowrap}.pagination-text-light{color:var(--ic-color-white-text)}@media screen and (max-width: 768px){.pagination-bar{flex-direction:column;align-items:flex-end;height:-moz-fit-content;height:fit-content;gap:var(--ic-space-xs)}.pagination-bar-left{align-items:flex-start}}@media screen and (max-width: 320px){.item-controls,.pagination-controls{flex-direction:column;align-items:flex-end;gap:var(--ic-space-xs)}.pagination-bar-left .item-controls,.pagination-bar-left .pagination-controls,.pagination-bar-space-between .item-controls,.pagination-bar-space-between .pagination-controls{align-items:flex-start}}";const m=class{constructor(i){t(this,i);this.icPageChange=n(this,"icPageChange",7);this.icItemsPerPageChange=n(this,"icItemsPerPageChange",7);this.PAGE_INPUT_FIELD_ID="go-to-page-input";this.INVALID_PAGE_ERROR="Please enter a valid page";this.resizeObserver=null;this.changeItemsPerPage=()=>{this.setItemsPerPage(Number(this.pageDropdownEl.value))};this.changePage=t=>{this.activePage=t;this.lowerBound=t!==1?(t-1)*this.itemsPerPage+1:t;this.setUpperBound()};this.focusElFromLabel=t=>{var i;(i=this.paginationBarEl.querySelector(t))===null||i===void 0?void 0:i.setFocus()};this.goToPage=()=>{const t=this.pageInputEl;const i=Number(t.value);if(i<=this.totalPages&&i>0){this.changePage(i);this.paginationEl.setCurrentPage(i);this.activePage=i;t.value="";this.icPageChange.emit({value:i});this.pageInputTooltipEl.displayTooltip(false,false);t.validationStatus=""}else{this.setInputError(t,this.INVALID_PAGE_ERROR)}};this.goToPageLabelClickHandler=()=>{this.focusElFromLabel("ic-text-field")};this.handleBlur=()=>{const t=this.pageInputEl;if(Number(t.value)<=this.totalPages&&Number(t.value)>0||t.value===""){t.validationStatus=""}this.pageInputTooltipEl.displayTooltip(false,false)};this.handleFocus=()=>{if(this.pageInputEl.validationStatus==="error"){this.pageInputTooltipEl.displayTooltip(true,true)}};this.handleInputChange=()=>{const t=parseInt(this.pageInputEl.value);if(t>this.totalPages||t<=0){this.setInputError(this.pageInputEl,this.INVALID_PAGE_ERROR);this.pageInputTooltipEl.displayTooltip(true,true)}};this.handleKeydown=t=>{if(t.key==="Enter"){if(this.pageInputEl.validationStatus==="error"){this.pageInputTooltipEl.displayTooltip(true,true)}else{this.goToPage()}}else{this.pageInputTooltipEl.displayTooltip(false,false);this.pageInputEl.validationStatus=""}};this.handleKeyUp=t=>{if(Number.isNaN(parseInt(this.pageInputEl.value))&&t.key!=="Backspace"&&t.key!=="Enter"&&t.key!=="Tab"&&t.key!=="Shift"){this.setInputError(this.pageInputEl,"Please enter a number",false);this.pageInputTooltipEl.displayTooltip(true,false)}};this.itemsPerPageLabelClickHandler=()=>{this.focusElFromLabel("ic-select")};this.paginationShouldWrap=()=>{if(this.type==="simple"){this.paginationWrapped=this.paginationEl.clientHeight>63}};this.runResizeObserver=()=>{this.resizeObserver=new ResizeObserver((()=>{const{clientWidth:t}=this.paginationBarEl;if(t-this.paginationWidth>50||t-this.paginationWidth<-50){this.paginationWidth=t;this.paginationShouldWrap()}}));this.resizeObserver.observe(this.paginationBarEl)};this.setInputError=(t,i,e=true)=>{this.inputError=i;t.validationStatus="error";if(e)t.setFocus()};this.setItemsPerPage=t=>{if(this.itemsPerPage!==t){this.itemsPerPage=t;this.itemsPerPageString=t.toString();this.icItemsPerPageChange.emit({value:this.itemsPerPage})}this.totalPages=this.totalItems>this.itemsPerPage?Math.ceil(this.totalItems/this.itemsPerPage):1;this.setUpperBound();if(this.activePage>this.totalPages){this.paginationEl.setCurrentPage(this.totalPages);this.activePage=this.totalPages}this.icPageChange.emit({value:this.activePage,fromItemsPerPage:true})};this.setPaginationBarContent=()=>{var t;const i=((t=this.itemsPerPageOptions)===null||t===void 0?void 0:t.slice(0,3))||(this.totalItems<=100?[{label:"10",value:"10"},{label:"25",value:"25"},{label:"50",value:"50"}]:[{label:"25",value:"25"},{label:"100",value:"100"},{label:"1000",value:"1000"}]);i.push({label:"All",value:String(this.totalItems)});this.displayedItemsPerPageOptions=i.filter((({value:t})=>this.totalItems>=Number(t)));let e=0;const a=this.displayedItemsPerPageOptions.some((({value:t})=>{e=Number(t);return this.itemsPerPage<=e}));this.setItemsPerPage(a||!a&&this.itemsPerPage>e?e:this.itemsPerPage)};this.setUpperBound=()=>{this.upperBound=Math.min(this.lowerBound+this.itemsPerPage-1,this.totalItems)};this.capitalizedItemLabel=undefined;this.capitalizedPageLabel=undefined;this.activePage=1;this.displayedItemsPerPageOptions=undefined;this.inputError="Please enter a valid page";this.itemsPerPage=0;this.itemsPerPageString="0";this.lowerBound=1;this.lowerCaseItemLabel=undefined;this.lowerCasePageLabel=undefined;this.paginationWidth=undefined;this.paginationWrapped=false;this.totalPages=undefined;this.upperBound=undefined;this.alignment="right";this.appearance="default";this.currentPage=1;this.itemLabel="Item";this.itemsPerPageOptions=undefined;this.type="simple";this.rangeLabelType="page";this.pageLabel="Page";this.showGoToPageControl=false;this.hideRangeLabel=false;this.showItemsPerPageControl=false;this.totalItems=undefined}watchPageNumberHandler(){this.activePage=this.currentPage}watchItemLabelHandler(){this.capitalizedItemLabel=o(this.itemLabel);this.lowerCaseItemLabel=this.itemLabel.toLowerCase()}watchItemsPerPageOptionsHandler(t,i){if(JSON.stringify(t)===JSON.stringify(i))return;this.setPaginationBarContent()}watchPageLabelHandler(){this.capitalizedPageLabel=o(this.pageLabel);this.lowerCasePageLabel=this.pageLabel.toLowerCase()}watchTotalItemsHandler(){this.setPaginationBarContent()}disconnectedCallback(){var t;(t=this.resizeObserver)===null||t===void 0?void 0:t.disconnect()}componentWillLoad(){this.watchPageNumberHandler();this.watchPageLabelHandler();this.watchItemLabelHandler();this.setPaginationBarContent()}componentDidLoad(){var t,i;this.paginationWidth=this.paginationBarEl.clientWidth;c(this.runResizeObserver);const e=(t=this.el.shadowRoot)===null||t===void 0?void 0:t.querySelector(`.${this.PAGE_INPUT_FIELD_ID}`);if(e){const t=(i=e===null||e===void 0?void 0:e.shadowRoot)===null||i===void 0?void 0:i.querySelector("input");if(t){t.style.textAlign="center";t.style.padding="0"}}this.paginationShouldWrap()}pageChangeHandler(t){const i=t.detail.value;this.changePage(i)}render(){const{appearance:t,alignment:i,displayedItemsPerPageOptions:a,PAGE_INPUT_FIELD_ID:s,type:n,rangeLabelType:l,hideRangeLabel:h,showItemsPerPageControl:r,showGoToPageControl:o,pageLabel:c,capitalizedPageLabel:p,lowerCasePageLabel:g,capitalizedItemLabel:d,lowerCaseItemLabel:m,totalPages:u,activePage:f,itemsPerPageString:b}=this;return e("div",{class:{["pagination-bar"]:true,[`pagination-bar-${i}`]:true},ref:t=>this.paginationBarEl=t},(!h||r)&&e("div",{class:"item-controls"},r&&e("div",{class:"items-per-page-holder"},e("ic-typography",{class:{[`pagination-text-${t}`]:true,["items-per-page-control-label"]:true},variant:"label",onClick:this.itemsPerPageLabelClickHandler},d,"s per ",g),e("ic-select",{small:true,label:"items-per-page-input",class:"items-per-page-input",hideLabel:true,options:a,value:b,onIcChange:this.changeItemsPerPage,ref:t=>this.pageDropdownEl=t})),!h&&(l==="data"?e("ic-typography",{class:{[`pagination-text-${t}`]:true,["item-pagination-label"]:true},variant:"label","aria-live":"polite"},this.upperBound===0&&`0 ${m}s`,this.upperBound>0&&`${this.lowerBound} - ${this.upperBound} of ${this.totalItems} ${m}${this.totalItems>1?"s":""}`):e("ic-typography",{class:{[`pagination-text-${t}`]:true,["page-pagination-label"]:true},variant:"label","aria-live":"polite"},p," ",f," of ",u))),e("div",{class:{["pagination-controls"]:true,["pagination-controls-wrap"]:this.paginationWrapped}},e("div",{class:"pagination-holder"},e("ic-pagination",{appearance:t,type:n,pages:u,label:c,ref:t=>this.paginationEl=t,currentPage:f})),o&&e("div",{class:"go-to-page-holder"},e("ic-typography",{class:{[`pagination-text-${t}`]:true},variant:"label",onClick:this.goToPageLabelClickHandler},"Go to ",g),e("ic-tooltip",{label:this.inputError,target:`#${s}`,disableHover:true,disableClick:true,ref:t=>this.pageInputTooltipEl=t},e("ic-text-field",{type:"number",size:"small",label:s,class:s,id:s,hideLabel:true,onKeyDown:this.handleKeydown,onKeyUp:this.handleKeyUp,onInput:this.handleInputChange,max:u,min:"1",validationInlineInternal:true,onBlur:this.handleBlur,onFocus:this.handleFocus,ref:t=>this.pageInputEl=t})),e("ic-button",{appearance:t,variant:"secondary",onClick:this.goToPage,size:"small",class:"go-to-page-button"},"Go"))))}get el(){return s(this)}static get watchers(){return{currentPage:["watchPageNumberHandler"],itemLabel:["watchItemLabelHandler"],itemsPerPageOptions:["watchItemsPerPageOptionsHandler"],pageLabel:["watchPageLabelHandler"],totalItems:["watchTotalItemsHandler"]}}};m.style=d;export{g as ic_empty_state,m as ic_pagination_bar};
2
+ //# sourceMappingURL=p-e50af3df.entry.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["icEmptyStateCss","EmptyState","constructor","hostRef","this","hostMutationObserver","hostMutationCallback","mutationList","some","type","addedNodes","removedNodes","checkSlotInChildMutations","forceUpdate","aligned","body","undefined","bodyMaxLines","heading","imageSize","subheading","disconnectedCallback","_a","disconnect","componentDidLoad","isSlotUsed","el","onComponentRequiredPropUndefined","prop","propName","MutationObserver","observe","childList","render","h","Host","class","name","variant","maxLines","icPaginationBarCss","PaginationBar","PAGE_INPUT_FIELD_ID","INVALID_PAGE_ERROR","resizeObserver","changeItemsPerPage","setItemsPerPage","Number","pageDropdownEl","value","changePage","page","activePage","lowerBound","itemsPerPage","setUpperBound","focusElFromLabel","paginationBarEl","querySelector","setFocus","goToPage","input","pageInputEl","totalPages","paginationEl","setCurrentPage","icPageChange","emit","pageInputTooltipEl","displayTooltip","validationStatus","setInputError","goToPageLabelClickHandler","handleBlur","textField","handleFocus","handleInputChange","inputValue","parseInt","handleKeydown","ev","key","handleKeyUp","isNaN","itemsPerPageLabelClickHandler","paginationShouldWrap","paginationWrapped","clientHeight","runResizeObserver","ResizeObserver","clientWidth","paginationWidth","error","focus","inputError","newValue","itemsPerPageString","toString","icItemsPerPageChange","totalItems","Math","ceil","fromItemsPerPage","setPaginationBarContent","displayedItemsPerPageOptions","itemsPerPageOptions","slice","label","push","String","filter","lastOptionValue","updated","upperBound","min","watchPageNumberHandler","currentPage","watchItemLabelHandler","capitalizedItemLabel","capitalize","itemLabel","lowerCaseItemLabel","toLowerCase","watchItemsPerPageOptionsHandler","newVal","oldVal","JSON","stringify","watchPageLabelHandler","capitalizedPageLabel","pageLabel","lowerCasePageLabel","watchTotalItemsHandler","componentWillLoad","checkResizeObserver","shadowRoot","_b","style","textAlign","padding","pageChangeHandler","detail","appearance","alignment","rangeLabelType","hideRangeLabel","showItemsPerPageControl","showGoToPageControl","ref","onClick","small","hideLabel","options","onIcChange","pages","target","disableHover","disableClick","size","id","onKeyDown","onKeyUp","onInput","max","validationInlineInternal","onBlur","onFocus"],"sources":["../web-components/dist/collection/components/ic-empty-state/ic-empty-state.css?tag=ic-empty-state&encapsulation=shadow","../web-components/dist/collection/components/ic-empty-state/ic-empty-state.js","src/components/ic-pagination-bar/ic-pagination-bar.css?tag=ic-pagination-bar&encapsulation=shadow","src/components/ic-pagination-bar/ic-pagination-bar.tsx"],"sourcesContent":[":host {\n gap: var(--ic-space-xs);\n padding: var(--ic-space-xs);\n}\n\n:host,\n.action-area {\n display: flex;\n flex-direction: column;\n}\n\n.action-area {\n gap: var(--ic-space-md);\n}\n\n:host ::slotted(svg),\n:host ::slotted(img) {\n border-radius: var(--ic-space-xxs);\n}\n\n:host(.right),\n:host(.right) .action-area {\n align-items: flex-end;\n text-align: right;\n}\n\n:host(.center),\n:host(.center) .action-area {\n align-items: center;\n text-align: center;\n}\n\n:host(.image-default) ::slotted(svg),\n:host(.image-default) ::slotted(img) {\n height: calc(3 * var(--ic-space-lg)) !important;\n width: calc(3 * var(--ic-space-lg)) !important;\n}\n\n:host(.image-small) ::slotted(svg),\n:host(.image-small) ::slotted(img) {\n height: var(--ic-space-xxl) !important;\n width: var(--ic-space-xxl) !important;\n}\n\n:host(.image-large) ::slotted(svg),\n:host(.image-large) ::slotted(img) {\n height: calc(4 * var(--ic-space-xl)) !important;\n width: calc(4 * var(--ic-space-xl)) !important;\n}\n","import { h, Host, forceUpdate } from \"@stencil/core\";\nimport { isSlotUsed, onComponentRequiredPropUndefined, checkSlotInChildMutations, } from \"../../utils/helpers\";\n/**\n * @slot image - Content is placed at the top above all other content.\n * @slot actions - Content is placed at the bottom below all other content.\n * @slot heading - Content will be rendered in place of the heading prop.\n * @slot subheading - Content will be rendered in place of the subheading prop.\n * @slot body - Content will be rendered in place of the body prop.\n */\nexport class EmptyState {\n constructor() {\n this.hostMutationObserver = null;\n this.hostMutationCallback = (mutationList) => {\n if (mutationList.some(({ type, addedNodes, removedNodes }) => type === \"childList\"\n ? checkSlotInChildMutations(addedNodes, removedNodes, [\n \"image\",\n \"actions\",\n ])\n : false)) {\n forceUpdate(this);\n }\n };\n this.aligned = \"left\";\n this.body = undefined;\n this.bodyMaxLines = undefined;\n this.heading = undefined;\n this.imageSize = \"default\";\n this.subheading = undefined;\n }\n disconnectedCallback() {\n var _a;\n (_a = this.hostMutationObserver) === null || _a === void 0 ? void 0 : _a.disconnect();\n }\n componentDidLoad() {\n !isSlotUsed(this.el, \"heading\") &&\n onComponentRequiredPropUndefined([{ prop: this.heading, propName: \"heading\" }], \"Empty State\");\n this.hostMutationObserver = new MutationObserver(this.hostMutationCallback);\n this.hostMutationObserver.observe(this.el, {\n childList: true,\n });\n }\n render() {\n const { aligned, body, bodyMaxLines, heading, imageSize, subheading } = this;\n return (h(Host, { class: {\n [`${aligned}`]: true,\n [`image-${imageSize}`]: isSlotUsed(this.el, \"image\"),\n } }, isSlotUsed(this.el, \"image\") && h(\"slot\", { name: \"image\" }), h(\"div\", null, h(\"slot\", { name: \"heading\" }, h(\"ic-typography\", { variant: \"h4\" }, heading)), h(\"slot\", { name: \"subheading\" }, h(\"ic-typography\", { variant: \"subtitle-small\" }, subheading)), h(\"slot\", { name: \"body\" }, h(\"ic-typography\", { maxLines: bodyMaxLines }, body))), isSlotUsed(this.el, \"actions\") && (h(\"div\", { class: \"action-area\" }, h(\"slot\", { name: \"actions\" })))));\n }\n static get is() { return \"ic-empty-state\"; }\n static get encapsulation() { return \"shadow\"; }\n static get originalStyleUrls() {\n return {\n \"$\": [\"ic-empty-state.css\"]\n };\n }\n static get styleUrls() {\n return {\n \"$\": [\"ic-empty-state.css\"]\n };\n }\n static get properties() {\n return {\n \"aligned\": {\n \"type\": \"string\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"IcEmptyStateAlignment\",\n \"resolved\": \"\\\"center\\\" | \\\"left\\\" | \\\"right\\\"\",\n \"references\": {\n \"IcEmptyStateAlignment\": {\n \"location\": \"import\",\n \"path\": \"./ic-empty-state.types\",\n \"id\": \"src/components/ic-empty-state/ic-empty-state.types.ts::IcEmptyStateAlignment\"\n }\n }\n },\n \"required\": false,\n \"optional\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"The alignment of the empty state container.\"\n },\n \"attribute\": \"aligned\",\n \"reflect\": false,\n \"defaultValue\": \"\\\"left\\\"\"\n },\n \"body\": {\n \"type\": \"string\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"string\",\n \"resolved\": \"string\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"The body text rendered in the empty state container.\"\n },\n \"attribute\": \"body\",\n \"reflect\": false\n },\n \"bodyMaxLines\": {\n \"type\": \"number\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"number\",\n \"resolved\": \"number\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"The number of lines of body text to display before truncating.\"\n },\n \"attribute\": \"body-max-lines\",\n \"reflect\": false\n },\n \"heading\": {\n \"type\": \"string\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"string\",\n \"resolved\": \"string\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"The title rendered in the empty state container.\"\n },\n \"attribute\": \"heading\",\n \"reflect\": false\n },\n \"imageSize\": {\n \"type\": \"string\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"IcSizes\",\n \"resolved\": \"\\\"default\\\" | \\\"large\\\" | \\\"small\\\"\",\n \"references\": {\n \"IcSizes\": {\n \"location\": \"import\",\n \"path\": \"../../utils/types\",\n \"id\": \"src/utils/types.ts::IcSizes\"\n }\n }\n },\n \"required\": false,\n \"optional\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"The size of the image or icon used in the image slot.\"\n },\n \"attribute\": \"image-size\",\n \"reflect\": false,\n \"defaultValue\": \"\\\"default\\\"\"\n },\n \"subheading\": {\n \"type\": \"string\",\n \"mutable\": false,\n \"complexType\": {\n \"original\": \"string\",\n \"resolved\": \"string\",\n \"references\": {}\n },\n \"required\": false,\n \"optional\": true,\n \"docs\": {\n \"tags\": [],\n \"text\": \"The subtitle rendered in the empty state container.\"\n },\n \"attribute\": \"subheading\",\n \"reflect\": false\n }\n };\n }\n static get elementRef() { return \"el\"; }\n}\n//# sourceMappingURL=ic-empty-state.js.map\n",":host() {\n display: block;\n}\n\n.pagination-bar {\n height: 3.5rem;\n display: flex;\n align-items: center;\n justify-content: flex-end;\n gap: var(--ic-space-xl);\n padding: var(--ic-space-xs) var(--ic-space-md);\n box-sizing: border-box;\n}\n\n.pagination-bar-left {\n justify-content: flex-start;\n}\n\n.item-controls {\n display: flex;\n align-items: center;\n gap: var(--ic-space-xl);\n}\n\n.pagination-bar-space-between .item-controls {\n margin-right: auto;\n}\n\n.items-per-page-holder {\n display: flex;\n align-items: center;\n gap: var(--ic-space-xs);\n}\n\n.items-per-page-input {\n --input-width: 5rem;\n}\n\n.pagination-controls {\n display: flex;\n align-items: center;\n gap: var(--ic-space-xl);\n}\n\n.pagination-controls-wrap {\n flex-direction: column;\n align-items: flex-end;\n gap: var(--ic-space-xs);\n}\n\n.pagination-bar-space-between .pagination-controls {\n margin-left: auto;\n}\n\n.go-to-page-holder {\n display: flex;\n align-items: center;\n gap: var(--ic-space-xs);\n}\n\n.go-to-page-input {\n --input-width: var(--ic-space-xl);\n}\n\n.go-to-page-button {\n --min-width: var(--ic-space-xl);\n}\n\n.pagination-text-default,\n.pagination-text-dark,\n.pagination-text-light {\n white-space: nowrap;\n}\n\n.pagination-text-light {\n color: var(--ic-color-white-text);\n}\n\n@media screen and (max-width: 768px) {\n .pagination-bar {\n flex-direction: column;\n align-items: flex-end;\n height: fit-content;\n gap: var(--ic-space-xs);\n }\n\n .pagination-bar-left {\n align-items: flex-start;\n }\n}\n\n@media screen and (max-width: 320px) {\n .item-controls,\n .pagination-controls {\n flex-direction: column;\n align-items: flex-end;\n gap: var(--ic-space-xs);\n }\n\n .pagination-bar-left .item-controls,\n .pagination-bar-left .pagination-controls,\n .pagination-bar-space-between .item-controls,\n .pagination-bar-space-between .pagination-controls {\n align-items: flex-start;\n }\n}\n","import {\n Component,\n Prop,\n Element,\n Event,\n EventEmitter,\n State,\n Listen,\n h,\n Watch,\n} from \"@stencil/core\";\nimport { IcThemeForeground } from \"@ukic/web-components/dist/types/interface\";\nimport { checkResizeObserver, capitalize } from \"../../utils/helpers\";\nimport { IcPageChangeEventDetail } from \"./ic-pagination-bar.types\";\nimport {\n IcPaginationAlignmentOptions,\n IcPaginationLabelTypes,\n IcPaginationTypes,\n} from \"@ukic/web-components/dist/types/components/ic-pagination/ic-pagination.types\";\n\n@Component({\n tag: \"ic-pagination-bar\",\n styleUrl: \"ic-pagination-bar.css\",\n shadow: true,\n})\nexport class PaginationBar {\n private PAGE_INPUT_FIELD_ID = \"go-to-page-input\";\n\n private INVALID_PAGE_ERROR = \"Please enter a valid page\";\n\n private resizeObserver: ResizeObserver = null;\n private pageDropdownEl: HTMLIcSelectElement;\n private pageInputEl: HTMLIcTextFieldElement;\n private pageInputTooltipEl: HTMLIcTooltipElement;\n private paginationBarEl: HTMLElement;\n private paginationEl: HTMLIcPaginationElement;\n\n @Element() el: HTMLIcPaginationBarElement;\n\n @State() capitalizedItemLabel: string;\n\n @State() capitalizedPageLabel: string;\n\n @State() activePage: number = 1;\n\n @State() displayedItemsPerPageOptions?: {\n label: string;\n value: string;\n }[];\n\n @State() inputError: string = \"Please enter a valid page\";\n\n @State() itemsPerPage: number = 0;\n\n @State() itemsPerPageString: string = \"0\";\n\n @State() lowerBound: number = 1;\n\n @State() lowerCaseItemLabel: string;\n\n @State() lowerCasePageLabel: string;\n\n @State() paginationWidth: number;\n\n @State() paginationWrapped: boolean = false;\n\n @State() totalPages: number;\n\n @State() upperBound: number;\n\n /**\n * Sets the alignment of the items in the pagination bar.\n */\n @Prop() alignment?: IcPaginationAlignmentOptions = \"right\";\n\n /**\n * Sets the styling for the items in the pagination bar.\n */\n @Prop() appearance?: IcThemeForeground = \"default\";\n\n /**\n * The current page number to be displayed on the pagination bar.\n */\n @Prop() currentPage?: number = 1;\n @Watch(\"currentPage\")\n watchPageNumberHandler(): void {\n this.activePage = this.currentPage;\n }\n\n /**\n * The text which will be used in place of 'Item' on the pagination bar.\n */\n @Prop() itemLabel?: string = \"Item\";\n\n @Watch(\"itemLabel\")\n watchItemLabelHandler(): void {\n this.capitalizedItemLabel = capitalize(this.itemLabel);\n this.lowerCaseItemLabel = this.itemLabel.toLowerCase();\n }\n\n /**\n * The options which will be displayed for 'items per page' select input. Set a maximum of 4 options including a required 'All' option with value equal to total number of items.\n */\n @Prop() itemsPerPageOptions?: {\n label: string;\n value: string;\n }[];\n\n @Watch(\"itemsPerPageOptions\")\n watchItemsPerPageOptionsHandler(\n newVal: {\n label: string;\n value: string;\n }[],\n oldVal: {\n label: string;\n value: string;\n }[]\n ): void {\n if (JSON.stringify(newVal) === JSON.stringify(oldVal)) return;\n this.setPaginationBarContent();\n }\n\n /**\n * Whether the displayed pagination is simple or complex.\n */\n @Prop() type?: IcPaginationTypes = \"simple\";\n\n /**\n * Whether total number of items and current item range or total number of pages and current page is displayed.\n */\n @Prop() rangeLabelType?: IcPaginationLabelTypes = \"page\";\n\n /**\n * The text which will be used in place of 'Page' on the pagination bar.\n */\n @Prop() pageLabel?: string = \"Page\";\n\n @Watch(\"pageLabel\")\n watchPageLabelHandler(): void {\n this.capitalizedPageLabel = capitalize(this.pageLabel);\n this.lowerCasePageLabel = this.pageLabel.toLowerCase();\n }\n\n /**\n * If `true`, the 'go to page' control should be displayed.\n */\n @Prop() showGoToPageControl?: boolean = false;\n\n /**\n * If `true`, the number of total items and current item range or number of total pages and current page will be hidden.\n */\n @Prop() hideRangeLabel?: boolean = false;\n\n /**\n * If `true`, the select input to control 'items per page' should be displayed.\n */\n @Prop() showItemsPerPageControl?: boolean = false;\n\n /**\n * Total number of items to be displayed across all pages.\n */\n @Prop() totalItems!: number;\n\n @Watch(\"totalItems\")\n watchTotalItemsHandler(): void {\n this.setPaginationBarContent();\n }\n\n /**\n * Emitted when a page is navigated to via the 'go to' input.\n * The `detail` property contains `value` (i.e. the page number) and a `fromItemsPerPage` flag to indicate if the event was triggered by the `icItemsPerPageChange` event also occurring.\n */\n @Event() icPageChange: EventEmitter<IcPageChangeEventDetail>;\n\n /**\n * Emitted when the items per page option is changed.\n */\n @Event() icItemsPerPageChange: EventEmitter<{ value: number }>;\n\n disconnectedCallback(): void {\n this.resizeObserver?.disconnect();\n }\n\n componentWillLoad(): void {\n this.watchPageNumberHandler();\n this.watchPageLabelHandler();\n this.watchItemLabelHandler();\n this.setPaginationBarContent();\n }\n\n componentDidLoad(): void {\n this.paginationWidth = this.paginationBarEl.clientWidth;\n checkResizeObserver(this.runResizeObserver);\n const textField = this.el.shadowRoot?.querySelector(\n `.${this.PAGE_INPUT_FIELD_ID}`\n );\n if (textField) {\n const input = textField?.shadowRoot?.querySelector(\"input\");\n if (input) {\n input.style.textAlign = \"center\";\n input.style.padding = \"0\";\n }\n }\n this.paginationShouldWrap();\n }\n\n @Listen(\"icPageChange\")\n pageChangeHandler(ev: CustomEvent): void {\n const page = ev.detail.value;\n this.changePage(page);\n }\n\n private changeItemsPerPage = () => {\n this.setItemsPerPage(Number(this.pageDropdownEl.value));\n };\n\n private changePage = (page: number) => {\n this.activePage = page;\n this.lowerBound = page !== 1 ? (page - 1) * this.itemsPerPage + 1 : page;\n this.setUpperBound();\n };\n\n private focusElFromLabel = (el: \"ic-select\" | \"ic-text-field\") => {\n this.paginationBarEl.querySelector(el)?.setFocus();\n };\n\n private goToPage = () => {\n const input = this.pageInputEl;\n const page = Number(input.value);\n if (page <= this.totalPages && page > 0) {\n this.changePage(page);\n this.paginationEl.setCurrentPage(page);\n this.activePage = page;\n input.value = \"\";\n this.icPageChange.emit({ value: page });\n this.pageInputTooltipEl.displayTooltip(false, false);\n input.validationStatus = \"\";\n } else {\n this.setInputError(input, this.INVALID_PAGE_ERROR);\n }\n };\n\n private goToPageLabelClickHandler = () => {\n this.focusElFromLabel(\"ic-text-field\");\n };\n\n private handleBlur = () => {\n const textField = this.pageInputEl;\n if (\n (Number(textField.value) <= this.totalPages &&\n Number(textField.value) > 0) ||\n textField.value === \"\"\n ) {\n textField.validationStatus = \"\";\n }\n this.pageInputTooltipEl.displayTooltip(false, false);\n };\n\n private handleFocus = () => {\n if (this.pageInputEl.validationStatus === \"error\") {\n this.pageInputTooltipEl.displayTooltip(true, true);\n }\n };\n\n private handleInputChange = () => {\n const inputValue = parseInt(this.pageInputEl.value);\n\n if (inputValue > this.totalPages || inputValue <= 0) {\n this.setInputError(this.pageInputEl, this.INVALID_PAGE_ERROR);\n this.pageInputTooltipEl.displayTooltip(true, true);\n }\n };\n\n private handleKeydown = (ev: KeyboardEvent) => {\n if (ev.key === \"Enter\") {\n if (this.pageInputEl.validationStatus === \"error\") {\n this.pageInputTooltipEl.displayTooltip(true, true);\n } else {\n this.goToPage();\n }\n } else {\n this.pageInputTooltipEl.displayTooltip(false, false);\n this.pageInputEl.validationStatus = \"\";\n }\n };\n\n private handleKeyUp = (ev: KeyboardEvent) => {\n if (\n Number.isNaN(parseInt(this.pageInputEl.value)) &&\n ev.key !== \"Backspace\" &&\n ev.key !== \"Enter\" &&\n ev.key !== \"Tab\" &&\n ev.key !== \"Shift\"\n ) {\n this.setInputError(this.pageInputEl, \"Please enter a number\", false);\n this.pageInputTooltipEl.displayTooltip(true, false);\n }\n };\n\n private itemsPerPageLabelClickHandler = () => {\n this.focusElFromLabel(\"ic-select\");\n };\n\n private paginationShouldWrap = () => {\n if (this.type === \"simple\") {\n this.paginationWrapped = this.paginationEl.clientHeight > 63;\n }\n };\n\n private runResizeObserver = () => {\n this.resizeObserver = new ResizeObserver(() => {\n const { clientWidth } = this.paginationBarEl;\n if (\n clientWidth - this.paginationWidth > 50 ||\n clientWidth - this.paginationWidth < -50\n ) {\n this.paginationWidth = clientWidth;\n this.paginationShouldWrap();\n }\n });\n\n this.resizeObserver.observe(this.paginationBarEl);\n };\n\n private setInputError = (\n el: HTMLIcTextFieldElement,\n error: string,\n focus = true\n ) => {\n this.inputError = error;\n el.validationStatus = \"error\";\n if (focus) el.setFocus();\n };\n\n private setItemsPerPage = (newValue: number) => {\n if (this.itemsPerPage !== newValue) {\n this.itemsPerPage = newValue;\n this.itemsPerPageString = newValue.toString();\n this.icItemsPerPageChange.emit({ value: this.itemsPerPage });\n }\n\n this.totalPages =\n this.totalItems > this.itemsPerPage\n ? Math.ceil(this.totalItems / this.itemsPerPage)\n : 1;\n\n this.setUpperBound();\n if (this.activePage > this.totalPages) {\n this.paginationEl.setCurrentPage(this.totalPages);\n this.activePage = this.totalPages;\n }\n this.icPageChange.emit({ value: this.activePage, fromItemsPerPage: true });\n };\n\n private setPaginationBarContent = (): void => {\n const displayedItemsPerPageOptions =\n this.itemsPerPageOptions?.slice(0, 3) ||\n (this.totalItems <= 100\n ? [\n { label: \"10\", value: \"10\" },\n { label: \"25\", value: \"25\" },\n { label: \"50\", value: \"50\" },\n ]\n : [\n { label: \"25\", value: \"25\" },\n { label: \"100\", value: \"100\" },\n { label: \"1000\", value: \"1000\" },\n ]);\n displayedItemsPerPageOptions.push({\n label: \"All\",\n value: String(this.totalItems),\n });\n\n this.displayedItemsPerPageOptions = displayedItemsPerPageOptions.filter(\n ({ value }) => this.totalItems >= Number(value)\n );\n\n let lastOptionValue = 0;\n const updated = this.displayedItemsPerPageOptions.some(({ value }) => {\n lastOptionValue = Number(value);\n return this.itemsPerPage <= lastOptionValue;\n });\n\n this.setItemsPerPage(\n updated || (!updated && this.itemsPerPage > lastOptionValue)\n ? lastOptionValue\n : this.itemsPerPage\n );\n };\n\n private setUpperBound = () => {\n this.upperBound = Math.min(\n this.lowerBound + this.itemsPerPage - 1,\n this.totalItems\n );\n };\n\n render() {\n const {\n appearance,\n alignment,\n displayedItemsPerPageOptions,\n PAGE_INPUT_FIELD_ID,\n type,\n rangeLabelType,\n hideRangeLabel,\n showItemsPerPageControl,\n showGoToPageControl,\n pageLabel,\n capitalizedPageLabel,\n lowerCasePageLabel,\n capitalizedItemLabel,\n lowerCaseItemLabel,\n totalPages,\n activePage,\n itemsPerPageString,\n } = this;\n\n return (\n <div\n class={{\n [\"pagination-bar\"]: true,\n [`pagination-bar-${alignment}`]: true,\n }}\n ref={(el) => (this.paginationBarEl = el)}\n >\n {(!hideRangeLabel || showItemsPerPageControl) && (\n <div class=\"item-controls\">\n {showItemsPerPageControl && (\n <div class=\"items-per-page-holder\">\n <ic-typography\n class={{\n [`pagination-text-${appearance}`]: true,\n [\"items-per-page-control-label\"]: true,\n }}\n variant=\"label\"\n onClick={this.itemsPerPageLabelClickHandler}\n >\n {capitalizedItemLabel}s per {lowerCasePageLabel}\n </ic-typography>\n <ic-select\n small\n label=\"items-per-page-input\"\n class=\"items-per-page-input\"\n hideLabel\n options={displayedItemsPerPageOptions}\n value={itemsPerPageString}\n onIcChange={this.changeItemsPerPage}\n ref={(el: HTMLIcSelectElement) => (this.pageDropdownEl = el)}\n ></ic-select>\n </div>\n )}\n {!hideRangeLabel &&\n (rangeLabelType === \"data\" ? (\n <ic-typography\n class={{\n [`pagination-text-${appearance}`]: true,\n [\"item-pagination-label\"]: true,\n }}\n variant=\"label\"\n aria-live=\"polite\"\n >\n {this.upperBound === 0 && `0 ${lowerCaseItemLabel}s`}\n {this.upperBound > 0 &&\n `${this.lowerBound} - ${this.upperBound} of ${\n this.totalItems\n } ${lowerCaseItemLabel}${this.totalItems > 1 ? \"s\" : \"\"}`}\n </ic-typography>\n ) : (\n <ic-typography\n class={{\n [`pagination-text-${appearance}`]: true,\n [\"page-pagination-label\"]: true,\n }}\n variant=\"label\"\n aria-live=\"polite\"\n >\n {capitalizedPageLabel} {activePage} of {totalPages}\n </ic-typography>\n ))}\n </div>\n )}\n <div\n class={{\n [\"pagination-controls\"]: true,\n [\"pagination-controls-wrap\"]: this.paginationWrapped,\n }}\n >\n <div class=\"pagination-holder\">\n <ic-pagination\n appearance={appearance}\n type={type}\n pages={totalPages}\n label={pageLabel}\n ref={(el: HTMLIcPaginationElement) => (this.paginationEl = el)}\n currentPage={activePage}\n ></ic-pagination>\n </div>\n {showGoToPageControl && (\n <div class=\"go-to-page-holder\">\n <ic-typography\n class={{ [`pagination-text-${appearance}`]: true }}\n variant=\"label\"\n onClick={this.goToPageLabelClickHandler}\n >\n Go to {lowerCasePageLabel}\n </ic-typography>\n <ic-tooltip\n label={this.inputError}\n target={`#${PAGE_INPUT_FIELD_ID}`}\n disableHover\n disableClick\n ref={(el: HTMLIcTooltipElement) =>\n (this.pageInputTooltipEl = el)\n }\n >\n <ic-text-field\n type=\"number\"\n size=\"small\"\n label={PAGE_INPUT_FIELD_ID}\n class={PAGE_INPUT_FIELD_ID}\n id={PAGE_INPUT_FIELD_ID}\n hideLabel\n onKeyDown={this.handleKeydown}\n onKeyUp={this.handleKeyUp}\n onInput={this.handleInputChange}\n max={totalPages}\n min=\"1\"\n validationInlineInternal\n onBlur={this.handleBlur}\n onFocus={this.handleFocus}\n ref={(el: HTMLIcTextFieldElement) => (this.pageInputEl = el)}\n ></ic-text-field>\n </ic-tooltip>\n <ic-button\n appearance={appearance}\n variant=\"secondary\"\n onClick={this.goToPage}\n size=\"small\"\n class=\"go-to-page-button\"\n >\n Go\n </ic-button>\n </div>\n )}\n </div>\n </div>\n );\n }\n}\n"],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ import{r as t,c as i,h as e,F as s,H as n,g as o}from"./p-8455d1bb.js";import{d as a,a as l,p as h,i as r,b as d}from"./p-297e99cf.js";const c=`<svg focusable="false" aria-hidden="true" viewBox="0 0 24 24">\n <path d="M9 3 5 6.99h3V14h2V6.99h3L9 3zm7 14.01V10h-2v7.01h-3L15 21l4-3.99h-3z"></path>\n</svg>`;const u=`<svg focusable="false" aria-hidden="true" viewBox="0 0 24 24" style="transform: rotate(-90deg);">\n <path d="M16.01 11H4v2h12.01v3L20 12l-3.99-4z"></path>\n</svg>`;const v=`<svg focusable="false" aria-hidden="true" viewBox="0 0 24 24" style="transform: rotate(90deg)">\n <path d="M16.01 11H4v2h12.01v3L20 12l-3.99-4z"></path>\n</svg>`;const g=':host{position:relative;display:inline-flex;max-height:100%;width:var(--table-width, 100%);height:100%;min-width:var(--table-min-width);max-width:var(--table-max-width)}tbody{vertical-align:top}.table-container{position:relative;height:calc(100% - var(--ic-space-xxxs));display:flex;flex-direction:column;width:100%}.cell-container{display:flex;min-height:1.5rem;overflow-y:hidden;height:var(--row-height)}.truncation-show-hide{overflow:visible;display:block}.cell-icon.truncation-show-hide{display:flex}.cell-container:not(.data-type-element,.truncation-show-hide){overflow-x:hidden}ic-loading-indicator{position:sticky;top:20px}.table-row-container{position:relative;height:100%;overflow:auto;transition:var(--ic-easing-transition-fast);overflow-anchor:none}:host([show-pagination="true"]) .table-row-container{height:calc(100% - 3.5625rem)}table{table-layout:var(--table-layout, "fixed");border-spacing:0;width:100%;height:var(--table-height, auto)}.table-row-container:focus{outline:none;box-shadow:var(--ic-border-focus);border-radius:var(--ic-border-radius);transition:var(--ic-easing-transition-fast);z-index:1}:host([embedded="true"]) .table-row-container{border:var(--ic-border-light)}.column-header-inner-container{padding:var(--ic-space-xs);box-sizing:border-box}.column-header-sticky{position:sticky;top:0;z-index:1}.column-header-overlay{position:sticky;top:0;z-index:1;box-shadow:0 0.375rem var(--ic-space-xs) calc(var(--ic-space-xxs * -1))\n rgb(0 0 0 / 20%)}.row-header-sticky{position:sticky;left:0}.column-header,.table-row{box-sizing:border-box}.table-row-selected{background-color:var(--ic-table-row-selected) !important}.sort-button{margin-left:auto}.sort-button:hover{background-color:var(--ic-action-dark-bg-hover)}.sort-button:active{background-color:var(--ic-action-dark-bg-active)}.sort-button svg{color:var(--ic-architectural-black)}.sort-button-unsorted svg{color:var(--ic-color-tertiary-text)}.table-density-dense .column-header-inner-container,td.table-density-dense{padding:var(--ic-space-xxs) var(--ic-space-xs) !important}.text-dense{font-size:var(--ic-font-size-label)}.table-density-spacious .column-header-inner-container,td.table-density-spacious{padding:0.625rem var(--ic-space-xs) !important}.text-spacious{font-size:1.125rem}.column-header-text{font-weight:var(--ic-font-weight-bold)}.row-header,.column-header{text-align:left;padding:var(--ic-space-xs);background-color:var(--ic-architectural-40);border-right:var(--ic-border-light);border-bottom:var(--ic-border-light)}.column-header{padding:0;width:var(--column-width);min-width:var(--column-min-width, 4rem);max-width:var(--column-max-width)}.column-header:last-child{border-right:none}.scrollable .column-header:last-child{border-right:var(--ic-border-light) !important}:host([embedded="true"]) tr:last-child .table-cell,:host([embedded="true"]) tr:last-child .row-header{border-bottom:none}.column-header-alignment-left,.row-header-alignment-left,.cell-alignment-left{text-align:left !important;justify-content:start !important}.column-header-alignment-right,.row-header-alignment-right,.cell-alignment-right{text-align:right !important;justify-content:end !important}.cell-alignment-right.truncation-tooltip ic-tooltip ic-typography{padding-right:calc(var(--ic-space-xxs) + var(--ic-space-xs))}.cell-alignment-right.truncation-show-hide ic-typography{--ellipsis-padding-right:calc(var(--ic-space-xxs) + var(--ic-space-xs))}.column-header-alignment-center,.row-header-alignment-center,.cell-alignment-center{text-align:center !important;justify-content:center !important}.table-row:nth-child(even){background-color:var(--ic-architectural-20)}.table-cell{padding:var(--ic-space-xs);border-bottom:solid var(--ic-architectural-100) var(--ic-space-1px);overflow:hidden;box-sizing:border-box;max-width:var(--column-max-width);min-width:var(--column-min-width)}.table-cell.with-overflow{overflow:visible}.data-type-string,.data-type-address{text-align:left;vertical-align:top}.data-type-number,.data-type-date{text-align:right;justify-content:end;vertical-align:top}.cell-alignment-top{vertical-align:top;align-items:flex-start}.cell-alignment-middle{vertical-align:middle;align-items:center}.cell-alignment-bottom{vertical-align:bottom;align-items:flex-end}.cell-emphasis-low{color:var(--ic-color-secondary-text)}.cell-emphasis-high{font-weight:var(--ic-font-weight-bold)}.pagination-container{background-color:var(--ic-architectural-40);border-top:var(--ic-border-light)}.screen-reader-sort-text,.table-caption{position:absolute;left:-100rem}.table-cell,.column-header,.row-header{word-wrap:break-word;white-space:pre-wrap}.loading-empty{padding:var(--ic-space-xl) var(--ic-space-xxl);margin-top:var(--ic-space-xl)}.updating-state{padding:0;border-bottom:var(--ic-border-light)}.updating-state-headers{border-bottom:none}.loading{position:absolute;left:calc(50% - 5.9741rem);opacity:0;transition:opacity var(--ic-transition-duration-slow)}.loading.show-background{background-color:var(--ic-architectural-white);border:var(--ic-border-light)}.loading.show{opacity:1}.icon,::slotted(svg){height:var(--ic-space-lg);width:var(--ic-space-lg);margin-right:var(--ic-space-xxs)}.column-header-alignment-right>.icon,.row-header-alignment-right>.icon,.cell-alignment-right>.icon,.column-header-alignment-right>::slotted(svg),.row-header-alignment-right>::slotted(svg),.cell-alignment-right>::slotted(svg){margin-right:auto}.column-header-alignment-center>ic-typography,.row-header-alignment-right>ic-typography,.cell-alignment-center>ic-typography{flex:1}.icon>svg{height:var(--ic-space-lg);width:var(--ic-space-lg);display:inline-block}.truncation-tooltip ic-typography{display:-webkit-box;-webkit-line-clamp:var(--ic-line-clamp, 0);-webkit-box-orient:vertical;overflow:hidden}.truncation-tooltip ic-typography,.truncation-show-hide ic-typography{white-space:normal}.ic-tooltip-overflow{overflow:hidden;width:100%}@media screen and (min-width: 577px){.column-header-inner-container{display:flex;align-items:center}}';const p=class{constructor(n){t(this,n);this.icRowHeightChange=i(this,"icRowHeightChange",7);this.icSortChange=i(this,"icSortChange",7);this.DENSITY_HEIGHT_MULTIPLIER={dense:.8,default:1,spacious:1.2};this.DENSITY_PADDING_HEIGHT_DIFF={dense:8,default:16,spacious:20};this.SORT_ICONS={unsorted:c,ascending:u,descending:v};this.hasLoadedForOneSecond=true;this.resizeObserver=null;this.SHOW_HIDE_STRING="show-hide";this.SHOW_HIDE_CSS_CLASS=`${this.SHOW_HIDE_STRING}-wrap`;this.TOOLTIP_STRING="tooltip";this.TOOLTIP=`ic-${this.TOOLTIP_STRING}`;this.TEXT_WRAP_STRING="text-wrap";this.TEXT_WRAP_CLASS=`.${this.TEXT_WRAP_STRING}`;this.dataUpdated=false;this.rowHeightSet=false;this.initialLoad=false;this.icPageChangeEvent=false;this.itemsPerPageChange=false;this.DATA_ROW_HEIGHT_STRING="data-row-height";this.ROW_HEIGHT_CSS_VARIABLE="--row-height";this.DEFAULT_LINE_HEIGHT=24;this.densityUpdate=false;this.truncationPatternUpdated=false;this.isNewDebounceDelaySet=false;this.updateSetRowHeight=t=>{const i=parseInt(getComputedStyle(document.documentElement).fontSize);if(t){const e=this.getCellContainer(t);const s=i*parseFloat(e.getAttribute(this.DATA_ROW_HEIGHT_STRING));if(t.scrollHeight>s){e.style.removeProperty(this.ROW_HEIGHT_CSS_VARIABLE)}}else{this.getTypographyElements().forEach((t=>{const e=this.getCellContainer(t);const s=i*parseFloat(e.getAttribute(this.DATA_ROW_HEIGHT_STRING));if(t.scrollHeight>s){e.style.removeProperty(this.ROW_HEIGHT_CSS_VARIABLE)}}))}};this.debounceDataTruncation=()=>{this.getTypographyElements().forEach((t=>{const i=this.getCellContainer(t);if(!i.classList.contains(this.TEXT_WRAP_STRING)){this.resizeObserver=new ResizeObserver(a((()=>{this.dataTruncation(t);if(!this.isNewDebounceDelaySet){this.setNewDebounceDelay(200)}}),(()=>this.debounceDelay)));this.resizeObserver.observe(t)}}))};this.setNewDebounceDelay=t=>{this.debounceDelay=t;this.isNewDebounceDelaySet=true};this.getLines=t=>Math.floor(t/this.DEFAULT_LINE_HEIGHT);this.truncate=(t,i,e)=>{if((t===null||t===void 0?void 0:t.scrollHeight)>(i===null||i===void 0?void 0:i.clientHeight)){if(!t.closest(this.TEXT_WRAP_CLASS)){if(this.truncationPattern===this.TOOLTIP_STRING){this.addTooltipTruncation(t,i,e)}if(this.truncationPattern===this.SHOW_HIDE_STRING){this.addShowHideTruncation(i,t)}}}else{if(this.truncationPattern===this.TOOLTIP_STRING&&e){t.setAttribute("style",`--ic-line-clamp: 0`);i.appendChild(t);e.remove()}if(this.truncationPattern===this.SHOW_HIDE_STRING&&!l(t.getAttribute("max-lines"))){this.resetShowHideTruncation(t)}}};this.dataTruncation=t=>{const i=this.getTooltip(t);const e=this.getCellContainer(t);if((e===null||e===void 0?void 0:e.classList.contains("data-type-element"))||this.dataUpdated){return}if(this.truncationPattern===this.SHOW_HIDE_STRING&&t.shadowRoot.querySelector("button")){const i=t.shadowRoot.querySelector("button");if(i){const i=this.getTruncWrapper(t);if(this.getLines(i.scrollHeight)===+t.getAttribute("max-lines")){this.resetShowHideTruncation(t)}}}if(this.rowHeightSet&&this.truncationPattern===this.SHOW_HIDE_STRING){const i=this.getTruncWrapper(t);if(i&&e.clientHeight-this.DEFAULT_LINE_HEIGHT>i.scrollHeight){this.resetShowHideTruncation(t);return}if(t.scrollHeight>e.clientHeight){this.addShowHideTruncation(e,t);return}}if((t===null||t===void 0?void 0:t.scrollHeight)>0&&(e===null||e===void 0?void 0:e.clientHeight)>0&&(t===null||t===void 0?void 0:t.scrollHeight)===(e===null||e===void 0?void 0:e.clientHeight)){if(i){this.removeTooltip(e,t,i)}return}this.truncate(t,e,i)};this.removeTextWrap=()=>{this.getTypographyElements().forEach((t=>{const i=t.closest("td");if(i.classList.contains(this.TEXT_WRAP_STRING)){i.classList.remove(this.TEXT_WRAP_STRING)}}))};this.getCellContainer=t=>t.closest(".cell-container");this.deleteTextWrapDataKey=t=>Array.isArray(t)&&t.forEach((t=>t.textWrap&&delete t.textWrap));this.startLoadingTimer=()=>{this.hasLoadedForOneSecond=false;this.timerStarted=Date.now();setTimeout((()=>{this.hasLoadedForOneSecond=true;this.timerStarted=null}),this.minimumLoadingDisplayDuration)};this.isObject=t=>typeof t==="object";this.notDefaultDensity=()=>this.density!=="default";this.getCellContent=(t,i)=>{switch(i){case"element":return undefined;case"date":return(t instanceof Date?t:new Date(t)).toLocaleDateString();default:return t}};this.getCellAlignment=(t,i)=>{if(this.isObject(t)&&Object.keys(t).includes("cellAlignment")){return this.getObjectValue(this.getObjectValue(t,"cellAlignment"),i)}};this.getCellOptions=(t,i)=>{if(!(this.isObject(t)&&Object.keys(t).includes(i)))return;return this.getObjectValue(t,i)};this.createUpdatingIndicator=()=>{const{appearance:t,description:i,max:s,min:n,progress:o}=this.updatingOptions||{};return e("th",{colSpan:this.columns.length,class:"updating-state"},e("ic-loading-indicator",{appearance:t,description:i||"Updating table data",fullWidth:true,max:s,min:n,progress:o,type:"linear",size:"small"}))};this.setRowHeight=t=>h(`${t*this.DENSITY_HEIGHT_MULTIPLIER[this.density]-this.DENSITY_PADDING_HEIGHT_DIFF[this.density]}px`);this.setTruncationClass=()=>{if(this.truncationPattern){return{[`truncation-${this.truncationPattern}`]:true}}return{}};this.getColumnWidth=t=>{let i={};if(t){if(typeof t==="string"){i=Object.assign(Object.assign({},i),{["--column-width"]:t})}if(typeof t==="object"&&!!Object.keys(t)){if(t===null||t===void 0?void 0:t.minWidth){i=Object.assign(Object.assign({},i),{["--column-min-width"]:t===null||t===void 0?void 0:t.minWidth})}if(t===null||t===void 0?void 0:t.maxWidth){i=Object.assign(Object.assign({},i),{["--column-max-width"]:t===null||t===void 0?void 0:t.maxWidth})}}}return i};this.getRowHeight=(t,i,e,s)=>{if((this.truncationPattern||t)&&!(i===null||i===void 0?void 0:i.textWrap)&&!e&&!this.getCellOptions(s,"textWrap")&&(i===null||i===void 0?void 0:i.dataType)!=="element"){return{[this.ROW_HEIGHT_CSS_VARIABLE]:this.setRowHeight(t)}}return{}};this.createCells=(t,i)=>{var n;const o=Object.values(t);const a=Object.keys(t);const l=this.getRowOptions(a,o);let h;let d;const c=a.indexOf("header");if(c>-1){h=this.getObjectValue(o[c],"rowAlignment");d=this.getObjectValue(o[c],"emphasis")}const u=(n=this.variableRowHeight)===null||n===void 0?void 0:n.call(this,Object.assign(Object.assign({},t),{index:i}));const v=u?u!=="auto"&&u:this.globalRowHeight!=="auto"&&this.globalRowHeight;return o.map(((t,n)=>{var o,c,u,g,p,f,m,b,w,y,x,O;const j=this.columns[n];const k=`${j===null||j===void 0?void 0:j.key}-${i}`;const $=this.isObject(t)&&Object.keys(t).includes("icon");const H=i=>this.getObjectValue(t,i);if(a[n]==="header"){return e("th",{scope:"row",colSpan:H("colspan"),class:{["row-header"]:true,[`row-header-alignment-${H("cellAlignment")}`]:!!H("cellAlignment"),["row-header-sticky"]:this.stickyRowHeaders}},H("title"))}if(a[n]!=="rowOptions"){return e("td",{class:{["table-cell"]:true,[`table-density-${this.density}`]:this.notDefaultDensity(),["with-overflow"]:(j===null||j===void 0?void 0:j.dataType)==="element"},style:Object.assign({},this.getColumnWidth(j.columnWidth))},e("div",{innerHTML:(j===null||j===void 0?void 0:j.dataType)==="element"&&!r(this.el,k)?t:null,class:Object.assign({"cell-container":(j===null||j===void 0?void 0:j.dataType)!=="element",[`cell-alignment-${((o=j===null||j===void 0?void 0:j.columnAlignment)===null||o===void 0?void 0:o.vertical)||((c=l===null||l===void 0?void 0:l.rowAlignment)===null||c===void 0?void 0:c.vertical)||h||this.getCellAlignment(t,"vertical")}`]:!!((u=j===null||j===void 0?void 0:j.columnAlignment)===null||u===void 0?void 0:u.vertical)||!!((g=l===null||l===void 0?void 0:l.rowAlignment)===null||g===void 0?void 0:g.vertical)||!!h||!!this.getCellAlignment(t,"vertical"),[`cell-alignment-${((p=j===null||j===void 0?void 0:j.columnAlignment)===null||p===void 0?void 0:p.horizontal)||((f=l===null||l===void 0?void 0:l.rowAlignment)===null||f===void 0?void 0:f.horizontal)||this.getCellAlignment(t,"horizontal")}`]:!!((m=j===null||j===void 0?void 0:j.columnAlignment)===null||m===void 0?void 0:m.horizontal)||!!((b=l===null||l===void 0?void 0:l.rowAlignment)===null||b===void 0?void 0:b.horizontal)||!!this.getCellAlignment(t,"horizontal"),[`data-type-${j===null||j===void 0?void 0:j.dataType}`]:true,[this.TEXT_WRAP_STRING]:(j===null||j===void 0?void 0:j.textWrap)||(l===null||l===void 0?void 0:l.textWrap)||!!this.getCellOptions(t,"textWrap"),["cell-icon"]:$||!!((w=j===null||j===void 0?void 0:j.icon)===null||w===void 0?void 0:w.icon)},this.setTruncationClass()),style:Object.assign(Object.assign({},this.getRowHeight(v,j,l===null||l===void 0?void 0:l.textWrap,t)),this.getColumnWidth(j===null||j===void 0?void 0:j.columnWidth)),"data-row-height":this.truncationPattern||v?this.setRowHeight(v):null},r(this.el,k)?e("slot",{name:k}):e(s,null,r(this.el,`${k}-icon`)?e("slot",{name:`${k}-icon`}):($||((y=j===null||j===void 0?void 0:j.icon)===null||y===void 0?void 0:y.onAllCells))&&(H("icon")||((x=j===null||j===void 0?void 0:j.icon)===null||x===void 0?void 0:x.icon))&&e("span",{class:"icon",innerHTML:H("icon")||((O=j===null||j===void 0?void 0:j.icon)===null||O===void 0?void 0:O.icon)}),(j===null||j===void 0?void 0:j.dataType)!=="element"&&!r(this.el,k)&&e("ic-typography",{variant:"body",class:{[`cell-emphasis-${this.isObject(t)&&H("emphasis")||(j===null||j===void 0?void 0:j.emphasis)||d}`]:this.isObject(t)&&!!H("emphasis")||!!(j===null||j===void 0?void 0:j.emphasis)||!!d,[`text-${this.density}`]:this.notDefaultDensity()}},this.isObject(t)&&(j===null||j===void 0?void 0:j.dataType)!=="date"?Object.keys(t).includes("href")?e("ic-link",{href:H("href")},H("data")):H("data"):this.getCellContent(t,j===null||j===void 0?void 0:j.dataType)))))}}))};this.createColumnHeaders=()=>this.columns.map((({cellAlignment:t,colspan:i,icon:s,key:n,title:o,columnWidth:a})=>e("th",{scope:"col",class:{["column-header"]:true,[`table-density-${this.density}`]:this.notDefaultDensity(),["updating-state-headers"]:this.updating&&!this.loading},style:Object.assign({},this.getColumnWidth(a)),colSpan:i},e("div",{class:{"column-header-inner-container":true,[`column-header-alignment-${t}`]:!!t}},r(this.el,`${n}-column-icon`)?e("slot",{name:`${n}-column-icon`}):s&&!s.hideOnHeader&&e("span",{class:"icon",innerHTML:s.icon}),e("ic-typography",{variant:"body",class:{["column-header-text"]:true,[`text-${this.density}`]:this.notDefaultDensity()}},o),this.sortable&&e("ic-button",{variant:"icon",id:`sort-button-${n}`,"aria-label":this.getSortButtonLabel(n),onClick:()=>this.sortRows(n),innerHTML:this.SORT_ICONS[this.sortedColumn===n?this.sortedColumnOrder:"unsorted"],class:{["sort-button"]:true,["sort-button-unsorted"]:this.sortedColumn!==n||this.sortedColumnOrder==="unsorted"}})))));this.onRowClick=t=>{this.selectedRow=this.selectedRow!==t&&!this.loading&&!this.updating&&t};this.createRows=()=>{const t=this.showPagination?this.data.slice(this.fromRow,this.toRow):this.data.slice();const i=t.map(((t,i)=>{const e=this.columns.map((({key:t},e)=>r(this.el,`${t}-${i}`)&&{key:t,index:e})).filter((t=>!!t));return e.length>0?d(t,e,""):t}));return i.sort(!this.sortable?undefined:this.getSortFunction()).map(((t,i)=>e("tr",{onClick:()=>this.onRowClick(t),class:{["table-row"]:true,["table-row-selected"]:this.selectedRow===t}},this.createCells(t,i))))};this.getObjectValue=(t,i)=>Object.values(t)[Object.keys(t).indexOf(i)];this.getSortButtonLabel=t=>{let i="";const e=t=>{const i=this.sortOptions.sortOrders;return i[(i.indexOf(t)+1)%i.length]};if(this.sortedColumn===t){const t=e(this.sortedColumnOrder);i=t!=="unsorted"?`Sort ${t}`:"Remove sort"}else{i=`Sort ${e("unsorted")}`}return i};this.getComparison=(t,i)=>{const e=t[this.sortedColumn];const s=i[this.sortedColumn];return this.columns.find((t=>t.key===this.sortedColumn)).dataType==="date"?new Date(e).valueOf()-new Date(s).valueOf():String(this.isObject(e)?Object.values(e)[0]:e).localeCompare(String(this.isObject(s)?Object.values(s)[0]:s),undefined,{numeric:true,sensitivity:"base"})};this.getSortFunction=()=>{switch(this.sortedColumnOrder){case"ascending":return(t,i)=>this.getComparison(t,i);case"descending":return(t,i)=>this.getComparison(i,t);default:return undefined}};this.sortRows=t=>{const i=this.el.shadowRoot.querySelector(`#sort-button-${t}`);const e=this.sortOptions.sortOrders;if(t!==this.sortedColumn){if(this.sortedColumn){const i=this.el.shadowRoot.querySelector(`#sort-button-${this.sortedColumn}`);i.setAttribute("aria-label",this.getSortButtonLabel(t))}this.sortedColumn=t;this.sortedColumnOrder="unsorted"}let s=e.indexOf(this.sortedColumnOrder)+1;if(s>e.length-1){s=0}this.sortedColumnOrder=e[s];i.setAttribute("aria-label",this.getSortButtonLabel(t));this.tableSorted=true;this.icSortChange.emit({columnName:t,sorted:this.sortedColumnOrder})};this.getTypographyElements=()=>Array.from(this.el.shadowRoot.querySelectorAll("ic-typography:not(.column-header-text)"));this.getTooltip=t=>t.closest(this.TOOLTIP);this.updateTruncationTooltip=(t=false)=>{this.getTypographyElements().forEach((i=>{const e=this.getTooltip(i);const s=this.getCellContainer(i);if(i.closest(this.TEXT_WRAP_CLASS)){this.removeTooltip(s,i,e);i.setAttribute("style",`--ic-line-clamp: 0`);return}this.regenerateTooltip(s,i,e,t)}))};this.updateScrollOffset=()=>{this.scrollOffset=this.el.shadowRoot.querySelector(".table-row-container").scrollTop};this.setTableDimensions=()=>{let t={};if(this.width){t=Object.assign(Object.assign({},t),{["--table-width"]:this.width})}if(this.height){t=Object.assign(Object.assign({},t),{["--table-height"]:this.height})}if(this.maxWidth){t=Object.assign(Object.assign({},t),{["--table-max-width"]:this.maxWidth})}if(this.minWidth){t=Object.assign(Object.assign({},t),{["--table-min-width"]:this.minWidth})}return t};this.fromRow=0;this.previousRowsPerPage=undefined;this.rowsPerPage=undefined;this.scrollable=false;this.scrollOffset=0;this.selectedRow=undefined;this.sortedColumn=undefined;this.sortedColumnOrder=undefined;this.toRow=undefined;this.currentRowHeight=undefined;this.debounceDelay=0;this.caption=undefined;this.columns=undefined;this.data=undefined;this.density="default";this.embedded=false;this.globalRowHeight="auto";this.height=undefined;this.hideColumnHeaders=false;this.loading=false;this.loadingOptions=undefined;this.maxWidth=undefined;this.minWidth=undefined;this.minimumLoadingDisplayDuration=1e3;this.paginationBarOptions={itemsPerPageOptions:[{label:"10",value:"10"},{label:"25",value:"25"},{label:"50",value:"50"}],rangeLabelType:"page",type:"simple",showItemsPerPageControl:true,showGoToPageControl:true,alignment:"right",appearance:"default",itemLabel:"Item",pageLabel:"Page",hideRangeLabel:false};this.showPagination=false;this.sortable=false;this.sortOptions={sortOrders:["unsorted","ascending","descending"],defaultColumn:""};this.stickyColumnHeaders=false;this.stickyRowHeaders=false;this.tableLayout="fixed";this.truncationPattern=undefined;this.updating=false;this.updatingOptions=undefined;this.variableRowHeight=undefined;this.width=undefined}disconnectedCallback(){var t;(t=this.resizeObserver)===null||t===void 0?void 0:t.disconnect()}componentWillLoad(){var t;this.rowsPerPage=Number(this.paginationBarOptions.itemsPerPageOptions[0].value);this.previousRowsPerPage=this.rowsPerPage;this.toRow=this.rowsPerPage;this.sortedColumn=this.sortOptions.defaultColumn;this.sortedColumnOrder=this.sortOptions.sortOrders[0];this.loadingOptions=Object.assign(Object.assign({},this.loadingOptions),{showBackground:((t=this.data)===null||t===void 0?void 0:t.length)>0});this.initialLoad=true;this.previousItemsPerPage=this.rowsPerPage}componentDidLoad(){const t=this.el.shadowRoot.querySelector("table");const i=this.el.shadowRoot.querySelector(".table-container");if(this.dataUpdated){this.dataUpdated=false}if((t===null||t===void 0?void 0:t.clientHeight)>(i===null||i===void 0?void 0:i.clientHeight)||(t===null||t===void 0?void 0:t.clientWidth)>(i===null||i===void 0?void 0:i.clientWidth)){this.scrollable=true}if(this.loading){this.startLoadingTimer();this.showLoadingIndicator()}if(this.truncationPattern){this.getTypographyElements().forEach((t=>{const i=this.getCellContainer(t);if(!i.classList.contains(this.TEXT_WRAP_STRING)){this.dataTruncation(t)}}));this.debounceDataTruncation()}if(this.globalRowHeight!=="auto"){this.updateSetRowHeight()}}componentDidUpdate(){if(this.truncationPattern===this.SHOW_HIDE_STRING||this.truncationPattern===this.TOOLTIP_STRING){this.truncateUpdatedData()}}truncateUpdatedData(){if(this.dataUpdated){if(this.truncationPattern===this.SHOW_HIDE_STRING){this.getTypographyElements().forEach((t=>{const i=this.getTruncWrapper(t);const e=this.getCellContainer(t);if((e===null||e===void 0?void 0:e.clientHeight)-this.DEFAULT_LINE_HEIGHT>=(i===null||i===void 0?void 0:i.scrollHeight)){this.resetShowHideTruncation(t);return}setTimeout((()=>{if((t===null||t===void 0?void 0:t.scrollHeight)>(e===null||e===void 0?void 0:e.clientHeight)){this.addShowHideTruncation(e,t)}}),150)}))}if(this.truncationPattern===this.TOOLTIP_STRING){this.updateTruncationTooltip()}this.dataUpdated=false}if(this.tableSorted){if(this.truncationPattern===this.TOOLTIP_STRING){this.updateTruncationTooltip()}if(this.truncationPattern===this.SHOW_HIDE_STRING){this.getTypographyElements().forEach((t=>{const i=this.getCellContainer(t);if(!i.classList.contains(this.TEXT_WRAP_STRING)){this.createShowHideTruncation(t,i)}else{t.resetTruncation().then((()=>{i.removeAttribute("style")}))}}))}this.tableSorted=false}if(this.rowHeightSet){const t=parseInt(getComputedStyle(document.documentElement).fontSize);const i=this.globalRowHeight==="auto";this.getTypographyElements().forEach((e=>{var s;const n=this.getCellContainer(e);const o=this.getTooltip(e);if(i){n.style.height=null;if(this.truncationPattern===this.TOOLTIP_STRING){this.removeTooltip(n,e,o);e.setAttribute("style",`--ic-line-clamp: 0`)}else if(this.truncationPattern===this.SHOW_HIDE_STRING){this.resetShowHideTruncation(e)}return}const a=t*parseFloat(n.getAttribute(this.DATA_ROW_HEIGHT_STRING));if(!((s=n===null||n===void 0?void 0:n.style)===null||s===void 0?void 0:s.height)&&a>n.clientHeight&&!n.classList.contains(this.TEXT_WRAP_STRING)){n.style.setProperty(this.ROW_HEIGHT_CSS_VARIABLE,n.getAttribute(this.DATA_ROW_HEIGHT_STRING))}if(this.truncationPattern){if(this.truncationPattern===this.SHOW_HIDE_STRING){const t=this.getTruncWrapper(e);const i=e.shadowRoot.querySelector("button");if(i&&(t===null||t===void 0?void 0:t.scrollHeight)<=n.clientHeight){this.resetShowHideTruncation(e);return}}this.truncate(e,n,o)}else{this.updateSetRowHeight(e)}}));this.rowHeightSet=false}if(this.itemsPerPageChange){const t=this.el.shadowRoot.querySelectorAll(".table-row");if(this.rowsPerPage>this.previousItemsPerPage){const i=Array.from(t).slice(this.previousItemsPerPage);i.forEach((t=>{t.querySelectorAll("ic-typography").forEach((t=>{const i=this.getCellContainer(t);const e=this.getTooltip(t);this.truncate(t,i,e)}))}))}this.previousItemsPerPage=this.rowsPerPage;this.itemsPerPageChange=false}if(!this.initialLoad&&this.icPageChangeEvent){if(this.truncationPattern===this.TOOLTIP_STRING){this.updateTruncationTooltip()}if(this.truncationPattern===this.SHOW_HIDE_STRING){this.getTypographyElements().forEach((t=>{const i=this.getCellContainer(t);const e=t.shadowRoot.querySelector("button");if((t===null||t===void 0?void 0:t.scrollHeight)>i.clientHeight&&!e){this.addShowHideTruncation(i,t)}}))}this.icPageChangeEvent=false}if(this.densityUpdate){this.getTypographyElements().forEach((t=>{const i=this.getCellContainer(t);const e=this.getTooltip(t);this.truncate(t,i,e)}));this.densityUpdate=false}if(this.truncationPatternUpdated){if(this.truncationPattern===this.TOOLTIP_STRING){this.getTypographyElements().forEach((t=>{const i=this.getCellContainer(t);const e=this.getTooltip(t);if(t.scrollHeight>i.clientHeight){this.addTooltipTruncation(t,i,e)}}))}else if(this.truncationPattern===this.SHOW_HIDE_STRING){this.getTypographyElements().forEach((t=>{const i=this.getTruncWrapper(t);const e=this.getCellContainer(t);if((e===null||e===void 0?void 0:e.clientHeight)-this.DEFAULT_LINE_HEIGHT>(i===null||i===void 0?void 0:i.scrollHeight)){this.resetShowHideTruncation(t);return}if((t===null||t===void 0?void 0:t.scrollHeight)>(e===null||e===void 0?void 0:e.clientHeight)){this.addShowHideTruncation(e,t)}}))}}}createShowHideTruncation(t,i){t.checkMaxLines(t.scrollHeight);t.setAttribute("max-lines",`${Math.floor((i===null||i===void 0?void 0:i.clientHeight)/this.DEFAULT_LINE_HEIGHT)}`);t.setShowHideExpanded(false);i.style.setProperty(this.ROW_HEIGHT_CSS_VARIABLE,null)}addTooltipTruncation(t,i,e){this.addLineClampCSS(t,i);if(!e){this.createTruncationTooltip(t,i)}}addShowHideTruncation(t,i){t.classList.add(this.SHOW_HIDE_CSS_CLASS);this.createShowHideTruncation(i,t)}getTruncWrapper(t){return t.shadowRoot.querySelector(".trunc-wrapper")}handleTypographyTruncationExpandToggle({detail:t}){const{expanded:i,typographyEl:e}=t;const s=this.getCellContainer(e);if(s.style.getPropertyValue(this.ROW_HEIGHT_CSS_VARIABLE)&&i){s.style.setProperty(this.ROW_HEIGHT_CSS_VARIABLE,"inherit")}}handlePageChange({detail:t,target:i}){if(i.parentElement!==this.el){this.fromRow=(t.value-1)*this.rowsPerPage;this.toRow=this.fromRow+this.rowsPerPage;const i=this.el.shadowRoot.querySelector(".table-row-container");if(this.previousRowsPerPage===this.rowsPerPage){i.scrollTop=0}else if(this.previousRowsPerPage<this.rowsPerPage){i.scrollTop=this.scrollOffset;this.previousRowsPerPage=this.rowsPerPage}else{this.previousRowsPerPage=this.rowsPerPage}}if(!this.initialLoad&&this.previousPaginationPage!==t.value){this.icPageChangeEvent=true}this.previousPaginationPage=t.value;this.initialLoad=false}handleItemsPerPageChange({detail:t,target:i}){if(i.parentElement!==this.el){this.previousRowsPerPage=this.rowsPerPage;this.rowsPerPage=t.value}this.itemsPerPageChange=true}handleDensityChange(t){this.density=t.detail.value}clickListener(t){if(t.target!==this.el)this.selectedRow=undefined}loadingHandler(t){if(t)this.startLoadingTimer();if(this.loading){setTimeout((()=>{this.showLoadingIndicator()}),500)}}truncationPatternHandler(t){if(t===this.TOOLTIP_STRING){this.resetShowHideTruncation();this.updateTruncationTooltip(true);this.getTypographyElements().forEach((t=>{const i=this.getCellContainer(t);const e=this.getTooltip(t);this.truncate(t,i,e)}))}if(t===this.SHOW_HIDE_STRING){this.updateTruncationTooltip(true);this.getTypographyElements().forEach((t=>{const i=this.getTruncWrapper(t);const e=this.getCellContainer(t);if((e===null||e===void 0?void 0:e.clientHeight)-this.DEFAULT_LINE_HEIGHT>(i===null||i===void 0?void 0:i.scrollHeight)){this.resetShowHideTruncation(t);return}setTimeout((()=>{if((t===null||t===void 0?void 0:t.scrollHeight)>(e===null||e===void 0?void 0:e.clientHeight)){this.addShowHideTruncation(e,t)}}),150)}))}this.truncationPatternUpdated=true}async dataHandler(t){this.loadingOptions=Object.assign(Object.assign({},this.loadingOptions),{showBackground:(t===null||t===void 0?void 0:t.length)>0});if(this.loading){!this.hasLoadedForOneSecond?setTimeout((()=>this.loading=false),this.minimumLoadingDisplayDuration-(Date.now()-this.timerStarted)):this.loading=false}if(this.updating)this.updating=false;this.dataUpdated=true}async densityHandler(){this.densityUpdate=true}resetShowHideTruncation(t){if(t){const i=this.getTruncWrapper(t);const e=this.getCellContainer(t);if((i===null||i===void 0?void 0:i.scrollHeight)>(e===null||e===void 0?void 0:e.clientHeight)&&!l(t.getAttribute("max-lines"))&&Math.floor((e===null||e===void 0?void 0:e.clientHeight)/this.DEFAULT_LINE_HEIGHT)!==+t.getAttribute("max-lines")){t.checkMaxLines(i.scrollHeight);t.setAttribute("max-lines",`${Math.floor((e===null||e===void 0?void 0:e.clientHeight)/this.DEFAULT_LINE_HEIGHT)}`);t.setShowHideExpanded(false);e.style.setProperty(this.ROW_HEIGHT_CSS_VARIABLE,null)}else{t.resetTruncation().then((()=>{if(!t.closest(this.TEXT_WRAP_CLASS)){e.style.setProperty(this.ROW_HEIGHT_CSS_VARIABLE,e.getAttribute(this.DATA_ROW_HEIGHT_STRING))}}))}}else{this.getTypographyElements().forEach((t=>{const i=this.getCellContainer(t);t.resetTruncation().then((()=>{if(!t.closest(this.TEXT_WRAP_CLASS)){i.style.setProperty(this.ROW_HEIGHT_CSS_VARIABLE,i.getAttribute(this.DATA_ROW_HEIGHT_STRING))}}))}))}}rowHeightChangeHandler(t,i){if(+t!==+i){this.deleteTextWrapDataKey(this.data);this.deleteTextWrapDataKey(this.columns);this.removeTextWrap();this.icRowHeightChange.emit();this.rowHeightSet=true}}async resetRowHeights(t){this.globalRowHeight=t||"auto";this.variableRowHeight=null}showLoadingIndicator(){this.loadingIndicator.classList.add("show")}getRowOptions(t,i){const e=t.indexOf("rowOptions");return e>-1&&i[e]}regenerateTooltip(t,i,e,s){if(e){if(this.tableSorted){e.setAttribute("target",i.id);e.setAttribute("label",i.textContent)}else{this.removeTooltip(t,i,e)}if(s){return}}if(!i.getAttribute("style")&&this.dataUpdated){this.addLineClampCSS(i,t)}if((i===null||i===void 0?void 0:i.scrollHeight)>(t===null||t===void 0?void 0:t.clientHeight)&&this.truncationPattern===this.TOOLTIP_STRING){if(!i.getAttribute("style")||i.style.cssText.includes("--ic-line-clamp: 0;")){this.addLineClampCSS(i,t)}this.createTruncationTooltip(i,t)}}removeTooltip(t,i,e){t.appendChild(i);if(e){e.remove()}}addLineClampCSS(t,i){t.setAttribute("style",`--ic-line-clamp: ${this.getLines(i===null||i===void 0?void 0:i.clientHeight)}`)}createTruncationTooltip(t,i){const e=document.createElement("ic-tooltip");e.setAttribute("target",t.id);e.setAttribute("label",t.textContent);e.classList.add("ic-tooltip-overflow");e.setExternalPopperProps({strategy:"fixed"});i.appendChild(e);e.appendChild(t)}render(){const{caption:t,createColumnHeaders:i,createRows:s,createUpdatingIndicator:o,data:a,hideColumnHeaders:l,loading:h,loadingOptions:d,paginationBarOptions:c,scrollable:u,scrollOffset:v,showPagination:g,sortable:p,sortedColumnOrder:f,sortedColumn:m,stickyColumnHeaders:b,updateScrollOffset:w,updating:y}=this;return e(n,{style:Object.assign({},this.setTableDimensions())},e("div",{class:"table-container"},r(this.el,"title-bar")&&e("slot",{name:"title-bar"}),e("div",{class:{["table-row-container"]:true,scrollable:u},tabIndex:u?0:null,onScroll:w},r(this.el,"title-bar")&&e("slot",{name:"title-bar"}),e("table",{style:{["--table-layout"]:this.tableLayout}},e("caption",{class:"table-caption"},t),!l&&e("thead",{class:{["column-header-sticky"]:b,["column-header-overlay"]:b&&v!==0}},e("tr",null,i())),y&&!h&&(l?e("thead",null,o()):o()),(a===null||a===void 0?void 0:a.length)>0&&!h&&e("tbody",null,s())),!(a===null||a===void 0?void 0:a.length)&&!h&&(r(this.el,"empty-state")?e("slot",{name:"empty-state"}):e("ic-empty-state",{aligned:"center",heading:"No Data",class:"loading-empty"}))),h&&e("ic-loading-indicator",{appearance:d===null||d===void 0?void 0:d.appearance,class:{"loading-empty":h,loading:true,"show-background":d.showBackground},description:d.description||"Loading table data",label:d.label||"Loading...",labelDuration:d===null||d===void 0?void 0:d.labelDuration,max:d===null||d===void 0?void 0:d.max,min:d===null||d===void 0?void 0:d.min,progress:d===null||d===void 0?void 0:d.progress,ref:t=>this.loadingIndicator=t}),(g||r(this.el,"pagination-bar"))&&e("div",{class:"pagination-container"},r(this.el,"pagination-bar")?e("slot",{name:"pagination-bar"}):e("ic-pagination-bar",{totalItems:a.length,type:c.type,rangeLabelType:c.rangeLabelType,showItemsPerPageControl:c.showItemsPerPageControl,showGoToPageControl:c.showGoToPageControl,itemsPerPageOptions:c.itemsPerPageOptions,alignment:c.alignment,appearance:c.appearance,itemLabel:c.itemLabel,pageLabel:c.pageLabel,hideRangeLabel:c.hideRangeLabel})),p&&e("div",{class:"screen-reader-sort-text","aria-live":"polite"},f!=="unsorted"&&m?`${m} sorted ${f}`:"table unsorted")))}get el(){return o(this)}static get watchers(){return{loading:["loadingHandler"],truncationPattern:["truncationPatternHandler"],data:["dataHandler"],density:["densityHandler"],globalRowHeight:["rowHeightChangeHandler"],variableRowHeight:["rowHeightChangeHandler"]}}};p.style=g;export{p as ic_data_table};
2
+ //# sourceMappingURL=p-fc007ce4.entry.js.map