@ukic/web-components 2.29.0 → 2.29.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (124) 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-popover-menu.cjs.entry.js +18 -12
  5. package/dist/cjs/ic-popover-menu.cjs.entry.js.map +1 -1
  6. package/dist/cjs/ic-search-bar.cjs.entry.js +14 -27
  7. package/dist/cjs/ic-search-bar.cjs.entry.js.map +1 -1
  8. package/dist/cjs/ic-select.cjs.entry.js +5 -5
  9. package/dist/cjs/ic-select.cjs.entry.js.map +1 -1
  10. package/dist/cjs/ic-tab-context.cjs.entry.js +68 -145
  11. package/dist/cjs/ic-tab-context.cjs.entry.js.map +1 -1
  12. package/dist/cjs/ic-tab-panel.cjs.entry.js +5 -13
  13. package/dist/cjs/ic-tab-panel.cjs.entry.js.map +1 -1
  14. package/dist/cjs/ic-tab.cjs.entry.js +9 -10
  15. package/dist/cjs/ic-tab.cjs.entry.js.map +1 -1
  16. package/dist/cjs/ic-text-field.cjs.entry.js +1 -1
  17. package/dist/cjs/ic-text-field.cjs.entry.js.map +1 -1
  18. package/dist/cjs/ic-typography.cjs.entry.js +3 -1
  19. package/dist/cjs/ic-typography.cjs.entry.js.map +1 -1
  20. package/dist/cjs/loader.cjs.js +1 -1
  21. package/dist/collection/components/ic-alert/ic-alert.css +5 -0
  22. package/dist/collection/components/ic-popover-menu/ic-popover-menu.js +45 -12
  23. package/dist/collection/components/ic-popover-menu/ic-popover-menu.js.map +1 -1
  24. package/dist/collection/components/ic-search-bar/ic-search-bar.js +14 -27
  25. package/dist/collection/components/ic-search-bar/ic-search-bar.js.map +1 -1
  26. package/dist/collection/components/ic-select/ic-select.js +5 -5
  27. package/dist/collection/components/ic-select/ic-select.js.map +1 -1
  28. package/dist/collection/components/ic-tab/ic-tab.js +9 -10
  29. package/dist/collection/components/ic-tab/ic-tab.js.map +1 -1
  30. package/dist/collection/components/ic-tab-context/ic-tab-context.js +68 -145
  31. package/dist/collection/components/ic-tab-context/ic-tab-context.js.map +1 -1
  32. package/dist/collection/components/ic-tab-context/test/basic/ic-tab-context.spec.js +2 -2
  33. package/dist/collection/components/ic-tab-context/test/basic/ic-tab-context.spec.js.map +1 -1
  34. package/dist/collection/components/ic-tab-panel/ic-tab-panel.js +5 -73
  35. package/dist/collection/components/ic-tab-panel/ic-tab-panel.js.map +1 -1
  36. package/dist/collection/components/ic-text-field/ic-text-field.js +1 -1
  37. package/dist/collection/components/ic-text-field/ic-text-field.js.map +1 -1
  38. package/dist/collection/components/ic-typography/ic-typography.js +3 -1
  39. package/dist/collection/components/ic-typography/ic-typography.js.map +1 -1
  40. package/dist/components/ic-alert2.js +1 -1
  41. package/dist/components/ic-alert2.js.map +1 -1
  42. package/dist/components/ic-popover-menu.js +20 -13
  43. package/dist/components/ic-popover-menu.js.map +1 -1
  44. package/dist/components/ic-search-bar.js +14 -27
  45. package/dist/components/ic-search-bar.js.map +1 -1
  46. package/dist/components/ic-select.js +5 -5
  47. package/dist/components/ic-select.js.map +1 -1
  48. package/dist/components/ic-tab-context.js +68 -145
  49. package/dist/components/ic-tab-context.js.map +1 -1
  50. package/dist/components/ic-tab-panel.js +6 -17
  51. package/dist/components/ic-tab-panel.js.map +1 -1
  52. package/dist/components/ic-tab.js +9 -10
  53. package/dist/components/ic-tab.js.map +1 -1
  54. package/dist/components/ic-text-field2.js +1 -1
  55. package/dist/components/ic-text-field2.js.map +1 -1
  56. package/dist/components/ic-typography2.js +3 -1
  57. package/dist/components/ic-typography2.js.map +1 -1
  58. package/dist/core/core.esm.js +1 -1
  59. package/dist/core/core.esm.js.map +1 -1
  60. package/dist/core/{p-dcd475cc.entry.js → p-0432d31a.entry.js} +2 -2
  61. package/dist/core/p-0432d31a.entry.js.map +1 -0
  62. package/dist/core/{p-227f6a41.entry.js → p-2889cc17.entry.js} +2 -2
  63. package/dist/core/p-2889cc17.entry.js.map +1 -0
  64. package/dist/core/{p-60746e10.entry.js → p-4f0e9434.entry.js} +2 -2
  65. package/dist/core/p-4f0e9434.entry.js.map +1 -0
  66. package/dist/core/{p-4562904d.entry.js → p-72b0a5be.entry.js} +2 -2
  67. package/dist/core/{p-4562904d.entry.js.map → p-72b0a5be.entry.js.map} +1 -1
  68. package/dist/core/p-72b350bc.entry.js +2 -0
  69. package/dist/core/p-72b350bc.entry.js.map +1 -0
  70. package/dist/core/{p-db52d416.entry.js → p-8a8bf98c.entry.js} +2 -2
  71. package/dist/core/{p-db52d416.entry.js.map → p-8a8bf98c.entry.js.map} +1 -1
  72. package/dist/core/p-9df32798.entry.js +2 -0
  73. package/dist/core/p-9df32798.entry.js.map +1 -0
  74. package/dist/core/p-bb4b7dcb.entry.js +2 -0
  75. package/dist/core/p-bb4b7dcb.entry.js.map +1 -0
  76. package/dist/core/{p-ed2b2bd7.entry.js → p-dd4ef67f.entry.js} +2 -2
  77. package/dist/core/{p-ed2b2bd7.entry.js.map → p-dd4ef67f.entry.js.map} +1 -1
  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-popover-menu.entry.js +18 -12
  82. package/dist/esm/ic-popover-menu.entry.js.map +1 -1
  83. package/dist/esm/ic-search-bar.entry.js +14 -27
  84. package/dist/esm/ic-search-bar.entry.js.map +1 -1
  85. package/dist/esm/ic-select.entry.js +5 -5
  86. package/dist/esm/ic-select.entry.js.map +1 -1
  87. package/dist/esm/ic-tab-context.entry.js +68 -145
  88. package/dist/esm/ic-tab-context.entry.js.map +1 -1
  89. package/dist/esm/ic-tab-panel.entry.js +5 -13
  90. package/dist/esm/ic-tab-panel.entry.js.map +1 -1
  91. package/dist/esm/ic-tab.entry.js +9 -10
  92. package/dist/esm/ic-tab.entry.js.map +1 -1
  93. package/dist/esm/ic-text-field.entry.js +1 -1
  94. package/dist/esm/ic-text-field.entry.js.map +1 -1
  95. package/dist/esm/ic-typography.entry.js +3 -1
  96. package/dist/esm/ic-typography.entry.js.map +1 -1
  97. package/dist/esm/loader.js +1 -1
  98. package/dist/types/components/ic-popover-menu/ic-popover-menu.d.ts +2 -2
  99. package/dist/types/components/ic-tab-context/ic-tab-context.d.ts +9 -6
  100. package/dist/types/components/ic-tab-panel/ic-tab-panel.d.ts +0 -12
  101. package/dist/types/components.d.ts +4 -3
  102. package/hydrate/index.js +128 -220
  103. package/package.json +2 -2
  104. package/dist/collection/components/ic-radio-group/test/basic/ic-radio-group.e2e.js +0 -343
  105. package/dist/collection/components/ic-radio-group/test/basic/ic-radio-group.e2e.js.map +0 -1
  106. package/dist/collection/components/ic-search-bar/test/basic/ic-search-bar.e2e.js +0 -1106
  107. package/dist/collection/components/ic-search-bar/test/basic/ic-search-bar.e2e.js.map +0 -1
  108. package/dist/collection/components/ic-stepper/test/basic/ic-stepper.e2e.js +0 -49
  109. package/dist/collection/components/ic-stepper/test/basic/ic-stepper.e2e.js.map +0 -1
  110. package/dist/collection/components/ic-tab-panel/test/basic/ic-tab-panel.spec.js +0 -65
  111. package/dist/collection/components/ic-tab-panel/test/basic/ic-tab-panel.spec.js.map +0 -1
  112. package/dist/collection/components/ic-tooltip/test/basic/ic-tooltip.e2e.js +0 -109
  113. package/dist/collection/components/ic-tooltip/test/basic/ic-tooltip.e2e.js.map +0 -1
  114. package/dist/collection/components/ic-typography/test/basic/ic-typography.e2e.js +0 -39
  115. package/dist/collection/components/ic-typography/test/basic/ic-typography.e2e.js.map +0 -1
  116. package/dist/core/p-227f6a41.entry.js.map +0 -1
  117. package/dist/core/p-60746e10.entry.js.map +0 -1
  118. package/dist/core/p-9e15d0e1.entry.js +0 -2
  119. package/dist/core/p-9e15d0e1.entry.js.map +0 -1
  120. package/dist/core/p-cb14349b.entry.js +0 -2
  121. package/dist/core/p-cb14349b.entry.js.map +0 -1
  122. package/dist/core/p-dcd475cc.entry.js.map +0 -1
  123. package/dist/core/p-e735d773.entry.js +0 -2
  124. package/dist/core/p-e735d773.entry.js.map +0 -1
package/hydrate/index.js CHANGED
@@ -8344,7 +8344,7 @@ var closeIcon = `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fil
8344
8344
  </svg>
8345
8345
  `;
8346
8346
 
8347
- const icAlertCss = "/*!@html*/html.sc-ic-alert{line-height:1.15;-webkit-text-size-adjust:100%}/*!@body*/body.sc-ic-alert{margin:0}/*!@main*/main.sc-ic-alert{display:block}/*!@h1*/h1.sc-ic-alert{font-size:2em;margin:0.67em 0}/*!@hr*/hr.sc-ic-alert{box-sizing:content-box;height:0;overflow:visible}/*!@pre*/pre.sc-ic-alert{font-family:monospace, monospace;font-size:1em}/*!@a*/a.sc-ic-alert{background-color:transparent}/*!@abbr[title]*/abbr[title].sc-ic-alert{border-bottom:none;text-decoration:underline;-webkit-text-decoration:underline dotted;text-decoration:underline dotted}/*!@b,\nstrong*/b.sc-ic-alert,strong.sc-ic-alert{font-weight:bolder}/*!@code,\nkbd,\nsamp*/code.sc-ic-alert,kbd.sc-ic-alert,samp.sc-ic-alert{font-family:monospace, monospace;font-size:1em}/*!@small*/small.sc-ic-alert{font-size:80%}/*!@sub,\nsup*/sub.sc-ic-alert,sup.sc-ic-alert{font-size:75%;line-height:0;position:relative;vertical-align:baseline}/*!@sub*/sub.sc-ic-alert{bottom:-0.25em}/*!@sup*/sup.sc-ic-alert{top:-0.5em}/*!@img*/img.sc-ic-alert{border-style:none}/*!@button,\ninput,\noptgroup,\nselect,\ntextarea*/button.sc-ic-alert,input.sc-ic-alert,optgroup.sc-ic-alert,select.sc-ic-alert,textarea.sc-ic-alert{font-family:inherit;font-size:100%;line-height:1.15;margin:0}/*!@button,\ninput*/button.sc-ic-alert,input.sc-ic-alert{overflow:visible}/*!@button,\nselect*/button.sc-ic-alert,select.sc-ic-alert{text-transform:none}/*!@button,\n[type=\"button\"],\n[type=\"reset\"],\n[type=\"submit\"]*/button.sc-ic-alert,[type=\"button\"].sc-ic-alert,[type=\"reset\"].sc-ic-alert,[type=\"submit\"].sc-ic-alert{-webkit-appearance:button}/*!@button::-moz-focus-inner,\n[type=\"button\"]::-moz-focus-inner,\n[type=\"reset\"]::-moz-focus-inner,\n[type=\"submit\"]::-moz-focus-inner*/button.sc-ic-alert::-moz-focus-inner,[type=\"button\"].sc-ic-alert::-moz-focus-inner,[type=\"reset\"].sc-ic-alert::-moz-focus-inner,[type=\"submit\"].sc-ic-alert::-moz-focus-inner{border-style:none;padding:0}/*!@button:-moz-focusring,\n[type=\"button\"]:-moz-focusring,\n[type=\"reset\"]:-moz-focusring,\n[type=\"submit\"]:-moz-focusring*/button.sc-ic-alert:-moz-focusring,[type=\"button\"].sc-ic-alert:-moz-focusring,[type=\"reset\"].sc-ic-alert:-moz-focusring,[type=\"submit\"].sc-ic-alert:-moz-focusring{outline:1px dotted ButtonText}/*!@fieldset*/fieldset.sc-ic-alert{padding:0.35em 0.75em 0.625em}/*!@legend*/legend.sc-ic-alert{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}/*!@progress*/progress.sc-ic-alert{vertical-align:baseline}/*!@textarea*/textarea.sc-ic-alert{overflow:auto}/*!@[type=\"checkbox\"],\n[type=\"radio\"]*/[type=\"checkbox\"].sc-ic-alert,[type=\"radio\"].sc-ic-alert{box-sizing:border-box;padding:0}/*!@[type=\"number\"]::-webkit-inner-spin-button,\n[type=\"number\"]::-webkit-outer-spin-button*/[type=\"number\"].sc-ic-alert::-webkit-inner-spin-button,[type=\"number\"].sc-ic-alert::-webkit-outer-spin-button{height:auto}/*!@[type=\"search\"]*/[type=\"search\"].sc-ic-alert{-webkit-appearance:textfield;outline-offset:-2px}/*!@[type=\"search\"]::-webkit-search-decoration*/[type=\"search\"].sc-ic-alert::-webkit-search-decoration{-webkit-appearance:none}/*!@::-webkit-file-upload-button*/.sc-ic-alert::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}/*!@details*/details.sc-ic-alert{display:block}/*!@summary*/summary.sc-ic-alert{display:list-item}/*!@template*/template.sc-ic-alert{display:none}/*!@[hidden]*/[hidden].sc-ic-alert{display:none}/*!@html,\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*/html.sc-ic-alert,body.sc-ic-alert,div.sc-ic-alert,span.sc-ic-alert,applet.sc-ic-alert,object.sc-ic-alert,iframe.sc-ic-alert,h1.sc-ic-alert,h2.sc-ic-alert,h3.sc-ic-alert,h4.sc-ic-alert,h5.sc-ic-alert,h6.sc-ic-alert,p.sc-ic-alert,blockquote.sc-ic-alert,pre.sc-ic-alert,a.sc-ic-alert,abbr.sc-ic-alert,acronym.sc-ic-alert,address.sc-ic-alert,big.sc-ic-alert,cite.sc-ic-alert,code.sc-ic-alert,del.sc-ic-alert,dfn.sc-ic-alert,em.sc-ic-alert,img.sc-ic-alert,ins.sc-ic-alert,kbd.sc-ic-alert,q.sc-ic-alert,s.sc-ic-alert,samp.sc-ic-alert,small.sc-ic-alert,strike.sc-ic-alert,strong.sc-ic-alert,sub.sc-ic-alert,sup.sc-ic-alert,tt.sc-ic-alert,var.sc-ic-alert,b.sc-ic-alert,u.sc-ic-alert,i.sc-ic-alert,center.sc-ic-alert,dl.sc-ic-alert,dt.sc-ic-alert,dd.sc-ic-alert,ol.sc-ic-alert,ul.sc-ic-alert,li.sc-ic-alert,fieldset.sc-ic-alert,form.sc-ic-alert,label.sc-ic-alert,legend.sc-ic-alert,table.sc-ic-alert,caption.sc-ic-alert,tbody.sc-ic-alert,tfoot.sc-ic-alert,thead.sc-ic-alert,tr.sc-ic-alert,th.sc-ic-alert,td.sc-ic-alert,article.sc-ic-alert,aside.sc-ic-alert,canvas.sc-ic-alert,details.sc-ic-alert,embed.sc-ic-alert,figure.sc-ic-alert,figcaption.sc-ic-alert,footer.sc-ic-alert,header.sc-ic-alert,hgroup.sc-ic-alert,menu.sc-ic-alert,nav.sc-ic-alert,output.sc-ic-alert,ruby.sc-ic-alert,section.sc-ic-alert,summary.sc-ic-alert,time.sc-ic-alert,mark.sc-ic-alert,audio.sc-ic-alert,video.sc-ic-alert{margin:0;padding:0;border:0;font-size:100%;font-style:inherit;vertical-align:baseline}/*!@:host*/.sc-ic-alert-h{display:block}/*!@.container*/.container.sc-ic-alert{min-height:3.5rem;border-radius:var(--ic-border-radius);position:relative;display:flex;align-items:center}/*!@.container-neutral*/.container-neutral.sc-ic-alert{background-color:var(--ic-status-unknown-light)}/*!@.container-info*/.container-info.sc-ic-alert{background-color:var(--ic-status-info-light)}/*!@.container-warning*/.container-warning.sc-ic-alert{background-color:var(--ic-status-warning-light)}/*!@.container-error*/.container-error.sc-ic-alert{background-color:var(--ic-status-error-light)}/*!@.container-success*/.container-success.sc-ic-alert{background-color:var(--ic-status-success-light)}/*!@.alert-icon-container*/.alert-icon-container.sc-ic-alert{height:100%;display:flex;align-items:center}/*!@.divider*/.divider.sc-ic-alert{height:100%;width:var(--ic-space-xs);border-radius:var(--ic-space-xxxs) 0 0 var(--ic-space-xxxs);position:absolute}/*!@.divider-neutral*/.divider-neutral.sc-ic-alert{background-color:var(--ic-status-unknown)}/*!@.divider-info*/.divider-info.sc-ic-alert{background-color:var(--ic-status-info)}/*!@.divider-warning*/.divider-warning.sc-ic-alert{background-color:var(--ic-status-warning)}/*!@.divider-error*/.divider-error.sc-ic-alert{background-color:var(--ic-status-error)}/*!@.divider-success*/.divider-success.sc-ic-alert{background-color:var(--ic-status-success)}/*!@.alert-icon*/.alert-icon.sc-ic-alert{height:var(--ic-space-lg);width:1.375rem;margin-left:1.125rem}/*!@.icon-placeholder*/.icon-placeholder.sc-ic-alert{margin-left:var(--ic-space-xs)}/*!@.alert-icon > svg*/.alert-icon.sc-ic-alert>svg.sc-ic-alert{height:var(--ic-space-lg);width:var(--ic-space-lg);display:inline-block}/*!@.icon-neutral > svg,\n::slotted(svg)*/.icon-neutral.sc-ic-alert>svg.sc-ic-alert,.sc-ic-alert-s>svg{height:var(--ic-space-lg);width:var(--ic-space-lg);display:inline-block;fill:var(--ic-status-unknown)}/*!@:host([variant=\"info\"]) .alert-icon svg*/[variant=\"info\"].sc-ic-alert-h .alert-icon.sc-ic-alert svg.sc-ic-alert{fill:var(--ic-status-info)}/*!@:host([variant=\"warning\"]) .alert-icon svg*/[variant=\"warning\"].sc-ic-alert-h .alert-icon.sc-ic-alert svg.sc-ic-alert{fill:var(--ic-status-warning)}/*!@:host([variant=\"error\"]) .alert-icon svg*/[variant=\"error\"].sc-ic-alert-h .alert-icon.sc-ic-alert svg.sc-ic-alert{fill:var(--ic-status-error)}/*!@:host([variant=\"success\"]) .alert-icon svg*/[variant=\"success\"].sc-ic-alert-h .alert-icon.sc-ic-alert svg.sc-ic-alert{fill:var(--ic-status-success)}/*!@.alert-content*/.alert-content.sc-ic-alert{display:flex;align-items:center;margin-left:0.625rem;width:100%}/*!@.alert-message*/.alert-message.sc-ic-alert{display:flex;align-items:center;padding:var(--ic-space-xs) var(--ic-space-xs) var(--ic-space-xs) 0;flex:1}/*!@.alert-message-title-above*/.alert-message-title-above.sc-ic-alert{display:inline}/*!@.alert-title*/.alert-title.sc-ic-alert{margin-right:var(--ic-space-xs)}/*!@.alert-title-above*/.alert-title-above.sc-ic-alert{white-space:normal}/*!@.alert-action-container*/.alert-action-container.sc-ic-alert{margin-right:var(--ic-space-xs);display:flex;align-items:center}/*!@.dismiss-icon*/.dismiss-icon.sc-ic-alert{margin-right:var(--ic-space-xxxs);margin-left:-0.375rem;padding:0.375rem;border:none;border-radius:50%;background-color:inherit;display:flex;align-items:center;justify-content:center}/*!@.dismiss-icon:hover*/.dismiss-icon.sc-ic-alert:hover{cursor:pointer}@media (max-width: 628px){/*!@.alert-content*/.alert-content.sc-ic-alert{display:flex;flex-direction:column;align-items:flex-start}/*!@.alert-message*/.alert-message.sc-ic-alert{display:flex;flex-direction:column;align-items:flex-start}/*!@.alert-title*/.alert-title.sc-ic-alert{white-space:normal}/*!@.alert-action-container*/.alert-action-container.sc-ic-alert{margin-bottom:var(--ic-space-xs)}}@media (forced-colors: active){/*!@.container*/.container.sc-ic-alert{border:var(--ic-hc-border)}}";
8347
+ const icAlertCss = "/*!@html*/html.sc-ic-alert{line-height:1.15;-webkit-text-size-adjust:100%}/*!@body*/body.sc-ic-alert{margin:0}/*!@main*/main.sc-ic-alert{display:block}/*!@h1*/h1.sc-ic-alert{font-size:2em;margin:0.67em 0}/*!@hr*/hr.sc-ic-alert{box-sizing:content-box;height:0;overflow:visible}/*!@pre*/pre.sc-ic-alert{font-family:monospace, monospace;font-size:1em}/*!@a*/a.sc-ic-alert{background-color:transparent}/*!@abbr[title]*/abbr[title].sc-ic-alert{border-bottom:none;text-decoration:underline;-webkit-text-decoration:underline dotted;text-decoration:underline dotted}/*!@b,\nstrong*/b.sc-ic-alert,strong.sc-ic-alert{font-weight:bolder}/*!@code,\nkbd,\nsamp*/code.sc-ic-alert,kbd.sc-ic-alert,samp.sc-ic-alert{font-family:monospace, monospace;font-size:1em}/*!@small*/small.sc-ic-alert{font-size:80%}/*!@sub,\nsup*/sub.sc-ic-alert,sup.sc-ic-alert{font-size:75%;line-height:0;position:relative;vertical-align:baseline}/*!@sub*/sub.sc-ic-alert{bottom:-0.25em}/*!@sup*/sup.sc-ic-alert{top:-0.5em}/*!@img*/img.sc-ic-alert{border-style:none}/*!@button,\ninput,\noptgroup,\nselect,\ntextarea*/button.sc-ic-alert,input.sc-ic-alert,optgroup.sc-ic-alert,select.sc-ic-alert,textarea.sc-ic-alert{font-family:inherit;font-size:100%;line-height:1.15;margin:0}/*!@button,\ninput*/button.sc-ic-alert,input.sc-ic-alert{overflow:visible}/*!@button,\nselect*/button.sc-ic-alert,select.sc-ic-alert{text-transform:none}/*!@button,\n[type=\"button\"],\n[type=\"reset\"],\n[type=\"submit\"]*/button.sc-ic-alert,[type=\"button\"].sc-ic-alert,[type=\"reset\"].sc-ic-alert,[type=\"submit\"].sc-ic-alert{-webkit-appearance:button}/*!@button::-moz-focus-inner,\n[type=\"button\"]::-moz-focus-inner,\n[type=\"reset\"]::-moz-focus-inner,\n[type=\"submit\"]::-moz-focus-inner*/button.sc-ic-alert::-moz-focus-inner,[type=\"button\"].sc-ic-alert::-moz-focus-inner,[type=\"reset\"].sc-ic-alert::-moz-focus-inner,[type=\"submit\"].sc-ic-alert::-moz-focus-inner{border-style:none;padding:0}/*!@button:-moz-focusring,\n[type=\"button\"]:-moz-focusring,\n[type=\"reset\"]:-moz-focusring,\n[type=\"submit\"]:-moz-focusring*/button.sc-ic-alert:-moz-focusring,[type=\"button\"].sc-ic-alert:-moz-focusring,[type=\"reset\"].sc-ic-alert:-moz-focusring,[type=\"submit\"].sc-ic-alert:-moz-focusring{outline:1px dotted ButtonText}/*!@fieldset*/fieldset.sc-ic-alert{padding:0.35em 0.75em 0.625em}/*!@legend*/legend.sc-ic-alert{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}/*!@progress*/progress.sc-ic-alert{vertical-align:baseline}/*!@textarea*/textarea.sc-ic-alert{overflow:auto}/*!@[type=\"checkbox\"],\n[type=\"radio\"]*/[type=\"checkbox\"].sc-ic-alert,[type=\"radio\"].sc-ic-alert{box-sizing:border-box;padding:0}/*!@[type=\"number\"]::-webkit-inner-spin-button,\n[type=\"number\"]::-webkit-outer-spin-button*/[type=\"number\"].sc-ic-alert::-webkit-inner-spin-button,[type=\"number\"].sc-ic-alert::-webkit-outer-spin-button{height:auto}/*!@[type=\"search\"]*/[type=\"search\"].sc-ic-alert{-webkit-appearance:textfield;outline-offset:-2px}/*!@[type=\"search\"]::-webkit-search-decoration*/[type=\"search\"].sc-ic-alert::-webkit-search-decoration{-webkit-appearance:none}/*!@::-webkit-file-upload-button*/.sc-ic-alert::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}/*!@details*/details.sc-ic-alert{display:block}/*!@summary*/summary.sc-ic-alert{display:list-item}/*!@template*/template.sc-ic-alert{display:none}/*!@[hidden]*/[hidden].sc-ic-alert{display:none}/*!@html,\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*/html.sc-ic-alert,body.sc-ic-alert,div.sc-ic-alert,span.sc-ic-alert,applet.sc-ic-alert,object.sc-ic-alert,iframe.sc-ic-alert,h1.sc-ic-alert,h2.sc-ic-alert,h3.sc-ic-alert,h4.sc-ic-alert,h5.sc-ic-alert,h6.sc-ic-alert,p.sc-ic-alert,blockquote.sc-ic-alert,pre.sc-ic-alert,a.sc-ic-alert,abbr.sc-ic-alert,acronym.sc-ic-alert,address.sc-ic-alert,big.sc-ic-alert,cite.sc-ic-alert,code.sc-ic-alert,del.sc-ic-alert,dfn.sc-ic-alert,em.sc-ic-alert,img.sc-ic-alert,ins.sc-ic-alert,kbd.sc-ic-alert,q.sc-ic-alert,s.sc-ic-alert,samp.sc-ic-alert,small.sc-ic-alert,strike.sc-ic-alert,strong.sc-ic-alert,sub.sc-ic-alert,sup.sc-ic-alert,tt.sc-ic-alert,var.sc-ic-alert,b.sc-ic-alert,u.sc-ic-alert,i.sc-ic-alert,center.sc-ic-alert,dl.sc-ic-alert,dt.sc-ic-alert,dd.sc-ic-alert,ol.sc-ic-alert,ul.sc-ic-alert,li.sc-ic-alert,fieldset.sc-ic-alert,form.sc-ic-alert,label.sc-ic-alert,legend.sc-ic-alert,table.sc-ic-alert,caption.sc-ic-alert,tbody.sc-ic-alert,tfoot.sc-ic-alert,thead.sc-ic-alert,tr.sc-ic-alert,th.sc-ic-alert,td.sc-ic-alert,article.sc-ic-alert,aside.sc-ic-alert,canvas.sc-ic-alert,details.sc-ic-alert,embed.sc-ic-alert,figure.sc-ic-alert,figcaption.sc-ic-alert,footer.sc-ic-alert,header.sc-ic-alert,hgroup.sc-ic-alert,menu.sc-ic-alert,nav.sc-ic-alert,output.sc-ic-alert,ruby.sc-ic-alert,section.sc-ic-alert,summary.sc-ic-alert,time.sc-ic-alert,mark.sc-ic-alert,audio.sc-ic-alert,video.sc-ic-alert{margin:0;padding:0;border:0;font-size:100%;font-style:inherit;vertical-align:baseline}/*!@:host*/.sc-ic-alert-h{display:block}/*!@.container*/.container.sc-ic-alert{min-height:3.5rem;border-radius:var(--ic-border-radius);position:relative;display:flex;align-items:center}/*!@.container-neutral*/.container-neutral.sc-ic-alert{background-color:var(--ic-status-unknown-light)}/*!@.container-info*/.container-info.sc-ic-alert{background-color:var(--ic-status-info-light)}/*!@.container-warning*/.container-warning.sc-ic-alert{background-color:var(--ic-status-warning-light)}/*!@.container-error*/.container-error.sc-ic-alert{background-color:var(--ic-status-error-light)}/*!@.container-success*/.container-success.sc-ic-alert{background-color:var(--ic-status-success-light)}/*!@.alert-icon-container*/.alert-icon-container.sc-ic-alert{height:100%;display:flex;align-items:center}/*!@.divider*/.divider.sc-ic-alert{height:100%;width:var(--ic-space-xs);border-radius:var(--ic-space-xxxs) 0 0 var(--ic-space-xxxs);position:absolute}/*!@.divider-neutral*/.divider-neutral.sc-ic-alert{background-color:var(--ic-status-unknown)}/*!@.divider-info*/.divider-info.sc-ic-alert{background-color:var(--ic-status-info)}/*!@.divider-warning*/.divider-warning.sc-ic-alert{background-color:var(--ic-status-warning)}/*!@.divider-error*/.divider-error.sc-ic-alert{background-color:var(--ic-status-error)}/*!@.divider-success*/.divider-success.sc-ic-alert{background-color:var(--ic-status-success)}/*!@.alert-icon*/.alert-icon.sc-ic-alert{height:var(--ic-space-lg);width:1.375rem;margin-left:1.125rem}/*!@.icon-placeholder*/.icon-placeholder.sc-ic-alert{margin-left:var(--ic-space-xs)}/*!@.alert-icon > svg*/.alert-icon.sc-ic-alert>svg.sc-ic-alert{height:var(--ic-space-lg);width:var(--ic-space-lg);display:inline-block}/*!@:host([showdefaulticon=\"false\"]) .icon-neutral*/[showdefaulticon=\"false\"].sc-ic-alert-h .icon-neutral.sc-ic-alert{display:none}/*!@.icon-neutral > svg,\n::slotted(svg)*/.icon-neutral.sc-ic-alert>svg.sc-ic-alert,.sc-ic-alert-s>svg{height:var(--ic-space-lg);width:var(--ic-space-lg);display:inline-block;fill:var(--ic-status-unknown)}/*!@:host([variant=\"info\"]) .alert-icon svg*/[variant=\"info\"].sc-ic-alert-h .alert-icon.sc-ic-alert svg.sc-ic-alert{fill:var(--ic-status-info)}/*!@:host([variant=\"warning\"]) .alert-icon svg*/[variant=\"warning\"].sc-ic-alert-h .alert-icon.sc-ic-alert svg.sc-ic-alert{fill:var(--ic-status-warning)}/*!@:host([variant=\"error\"]) .alert-icon svg*/[variant=\"error\"].sc-ic-alert-h .alert-icon.sc-ic-alert svg.sc-ic-alert{fill:var(--ic-status-error)}/*!@:host([variant=\"success\"]) .alert-icon svg*/[variant=\"success\"].sc-ic-alert-h .alert-icon.sc-ic-alert svg.sc-ic-alert{fill:var(--ic-status-success)}/*!@.alert-content*/.alert-content.sc-ic-alert{display:flex;align-items:center;margin-left:0.625rem;width:100%}/*!@.alert-message*/.alert-message.sc-ic-alert{display:flex;align-items:center;padding:var(--ic-space-xs) var(--ic-space-xs) var(--ic-space-xs) 0;flex:1}/*!@.alert-message-title-above*/.alert-message-title-above.sc-ic-alert{display:inline}/*!@.alert-title*/.alert-title.sc-ic-alert{margin-right:var(--ic-space-xs)}/*!@.alert-title-above*/.alert-title-above.sc-ic-alert{white-space:normal}/*!@.alert-action-container*/.alert-action-container.sc-ic-alert{margin-right:var(--ic-space-xs);display:flex;align-items:center}/*!@.dismiss-icon*/.dismiss-icon.sc-ic-alert{margin-right:var(--ic-space-xxxs);margin-left:-0.375rem;padding:0.375rem;border:none;border-radius:50%;background-color:inherit;display:flex;align-items:center;justify-content:center}/*!@.dismiss-icon:hover*/.dismiss-icon.sc-ic-alert:hover{cursor:pointer}@media (max-width: 628px){/*!@.alert-content*/.alert-content.sc-ic-alert{display:flex;flex-direction:column;align-items:flex-start}/*!@.alert-message*/.alert-message.sc-ic-alert{display:flex;flex-direction:column;align-items:flex-start}/*!@.alert-title*/.alert-title.sc-ic-alert{white-space:normal}/*!@.alert-action-container*/.alert-action-container.sc-ic-alert{margin-bottom:var(--ic-space-xs)}}@media (forced-colors: active){/*!@.container*/.container.sc-ic-alert{border:var(--ic-hc-border)}}";
8348
8348
 
8349
8349
  /**
8350
8350
  * @slot message - Content is placed to the right of the title.
@@ -15581,18 +15581,6 @@ class PopoverMenu {
15581
15581
  tagName !== "IC-MENU-GROUP" &&
15582
15582
  tagName !== "IC-POPOVER-MENU");
15583
15583
  };
15584
- /**
15585
- * Close the popover menu, emit isPopoverClosed event
15586
- * @param setFocusToAnchor when true return focus to anchor element when menu is closed
15587
- */
15588
- this.closeMenu = (setFocusToAnchor = false) => {
15589
- var _a;
15590
- this.open = false;
15591
- if (setFocusToAnchor) {
15592
- (_a = this.anchorEl) === null || _a === void 0 ? void 0 : _a.focus();
15593
- }
15594
- this.icPopoverClosed.emit();
15595
- };
15596
15584
  this.getNextItemToSelect = (currentItem, movingDown) => {
15597
15585
  const numButtons = this.popoverMenuEls.length - 1;
15598
15586
  if (currentItem < 1) {
@@ -15751,6 +15739,7 @@ class PopoverMenu {
15751
15739
  break;
15752
15740
  case "Escape":
15753
15741
  case "Tab":
15742
+ ev.preventDefault();
15754
15743
  if (this.open) {
15755
15744
  this.closeMenu(true);
15756
15745
  this.el.blur();
@@ -15774,6 +15763,23 @@ class PopoverMenu {
15774
15763
  this.openingFromParent = true;
15775
15764
  setTimeout(() => (this.openingFromParent = false), 1000);
15776
15765
  }
15766
+ /**
15767
+ * @internal Close the menu, emit icPopoverClosed of the root popover
15768
+ * @param setFocusToAnchor when true return focus to anchor element when menu is closed
15769
+ */
15770
+ async closeMenu(setFocusToAnchor = false) {
15771
+ var _a;
15772
+ this.open = false;
15773
+ if (this.parentPopover) {
15774
+ this.parentPopover.closeMenu(setFocusToAnchor);
15775
+ }
15776
+ else {
15777
+ if (setFocusToAnchor) {
15778
+ (_a = this.anchorEl) === null || _a === void 0 ? void 0 : _a.focus();
15779
+ }
15780
+ this.icPopoverClosed.emit();
15781
+ }
15782
+ }
15777
15783
  render() {
15778
15784
  return (hAsync(Host, { class: { open: this.open } }, hAsync("div", { id: this.parentPopover === undefined
15779
15785
  ? `ic-popover-submenu-${this.submenuId}`
@@ -15807,7 +15813,8 @@ class PopoverMenu {
15807
15813
  "openingFromChild": [32],
15808
15814
  "openingFromParent": [32],
15809
15815
  "openFromChild": [64],
15810
- "openFromParent": [64]
15816
+ "openFromParent": [64],
15817
+ "closeMenu": [64]
15811
15818
  },
15812
15819
  "$listeners$": [[0, "handleMenuItemClick", "handleMenuItemClick"], [2, "triggerPopoverMenuInstance", "handleSubmenuChange"], [4, "click", "handleClick"], [0, "keydown", "handleKeyDown"]],
15813
15820
  "$lazyBundleId$": "-",
@@ -16641,7 +16648,7 @@ class SearchBar {
16641
16648
  }
16642
16649
  render() {
16643
16650
  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;
16644
- const disabledMode = readonly || disabled ? true : false;
16651
+ const disabledMode = readonly || disabled;
16645
16652
  const describedBy = getInputDescribedByText(inputId, helperText !== "", false).trim();
16646
16653
  let describedById;
16647
16654
  if (describedBy !== "" && this.hasOptionsOrFilterDisabled()) {
@@ -16656,35 +16663,17 @@ class SearchBar {
16656
16663
  else {
16657
16664
  describedById = undefined;
16658
16665
  }
16659
- const disabledText = disabledMode && !readonly;
16660
- const hasSuggestedSearch = value && this.hasOptionsOrFilterDisabled();
16666
+ const hasSuggestedSearch = !!value && this.hasOptionsOrFilterDisabled();
16661
16667
  const menuOpen = hasSuggestedSearch && open && filteredOptions.length > 0;
16662
16668
  const menuRendered = menuOpen && value.length >= this.charactersUntilSuggestion;
16663
- const isOrHasLoaded = this.filteredOptions.length === 1 &&
16664
- (this.filteredOptions[0][this.labelField] === this.loadingLabel ||
16665
- filteredOptions[0][this.labelField] === this.loadingErrorLabel);
16666
- let expanded;
16667
- if (options.length > 0) {
16668
- if (menuOpen) {
16669
- expanded = "true";
16670
- }
16671
- else {
16672
- expanded = "false";
16673
- }
16674
- }
16675
- else {
16676
- expanded = undefined;
16677
- }
16669
+ const labelValue = getLabelFromValue(value, options, this.valueField, this.labelField);
16678
16670
  renderHiddenInput(true, this.el, name, value, disabledMode);
16679
16671
  return (hAsync(Host, { class: {
16680
- ["search"]: true,
16681
- ["fullwidth"]: fullWidth,
16682
- ["disabled"]: disabled,
16683
- ["small"]: size === "small",
16684
- }, onFocus: this.handleHostFocus, onBlur: this.handleHostBlur }, hAsync("ic-text-field", { ref: (el) => (this.inputEl = el), inputId: inputId, label: label, helperText: helperText, required: required, disabled: disabledText, readonly: readonly, size: size, hideLabel: hideLabel, fullWidth: fullWidth, name: name, truncateValue: truncateValue, value: options &&
16685
- !!getLabelFromValue(value, options, this.valueField, this.labelField)
16686
- ? getLabelFromValue(value, options, this.valueField, this.labelField)
16687
- : 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-haspopup": options.length > 0 ? "listbox" : undefined, ariaExpanded: expanded, ariaActiveDescendant: ariaActiveDescendant, "aria-autocomplete": hasSuggestedSearch ? "list" : undefined, role: hasSuggestedSearch ? "combobox" : undefined, autocomplete: autocomplete, autocapitalize: autocapitalize, autoFocus: autofocus, spellcheck: spellcheck, inputmode: "search", debounce: this.debounce }, hAsync("div", { class: {
16672
+ search: true,
16673
+ fullwidth: fullWidth,
16674
+ disabled,
16675
+ small: size === "small",
16676
+ }, onFocus: this.handleHostFocus, onBlur: this.handleHostBlur }, hAsync("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 }, hAsync("div", { class: {
16688
16677
  "clear-button-container": true,
16689
16678
  "clear-button-visible": value && !disabledMode && this.showClearButton,
16690
16679
  }, slot: "clear-button" }, hAsync("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
@@ -16701,7 +16690,12 @@ class SearchBar {
16701
16690
  "menu-container": true,
16702
16691
  fullwidth: fullWidth,
16703
16692
  }, slot: "menu" }, menuRendered && (hAsync("ic-menu", { class: {
16704
- "no-results": this.hadNoOptions() || isOrHasLoaded,
16693
+ "no-results": this.hadNoOptions() ||
16694
+ (filteredOptions.length === 1 &&
16695
+ (filteredOptions[0][this.labelField] ===
16696
+ this.loadingLabel ||
16697
+ filteredOptions[0][this.labelField] ===
16698
+ this.loadingErrorLabel)),
16705
16699
  }, 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 })))), hAsync("div", { "aria-live": "polite", role: "status", class: "search-results-status" })));
16706
16700
  }
16707
16701
  static get delegatesFocus() { return true; }
@@ -17446,16 +17440,16 @@ class Select {
17446
17440
  render() {
17447
17441
  const { small, size, disabled, fullWidth, helperText, hideLabel, label, menuId, name, options, placeholder, readonly, required, searchable, showClearButton, validationStatus, validationText, currValue, } = this;
17448
17442
  renderHiddenInput(true, this.el, name, this.searchable ? this.hiddenInputValue : currValue, disabled);
17449
- const invalid = validationStatus === IcInformationStatus.Error ? "true" : "false";
17443
+ const invalid = `${validationStatus === IcInformationStatus.Error}`;
17450
17444
  const describedBy = getInputDescribedByText(this.inputId, helperText !== "", hasValidationStatus(this.validationStatus, this.disabled)).trim();
17451
17445
  let showLeftIcon = !!this.el.querySelector(`[slot="icon"]`);
17452
17446
  if (showLeftIcon && (disabled || (readonly && !this.value))) {
17453
17447
  showLeftIcon = false;
17454
17448
  }
17455
17449
  return (hAsync(Host, { class: {
17456
- disabled: disabled,
17457
- searchable: searchable,
17458
- small: small,
17450
+ disabled,
17451
+ searchable,
17452
+ small,
17459
17453
  [size]: size !== "default",
17460
17454
  "full-width": fullWidth,
17461
17455
  }, onBlur: this.onBlur }, hAsync("ic-input-container", { readonly: readonly }, !hideLabel && (hAsync("ic-input-label", { for: this.inputId, label: label, helperText: helperText, required: required, disabled: disabled, readonly: readonly })), hAsync("ic-input-component-container", { ref: (el) => (this.anchorEl = el), class: { "menu-open": this.open }, small: small, size: size, fullWidth: fullWidth, disabled: disabled, readonly: readonly, validationStatus: validationStatus }, showLeftIcon && (hAsync("span", { slot: "left-icon", class: {
@@ -17468,7 +17462,7 @@ class Select {
17468
17462
  else {
17469
17463
  return (hAsync("option", { value: option.value, disabled: option.disabled, selected: option.value === currValue }, option.label));
17470
17464
  }
17471
- }))) : searchable ? (hAsync("div", { class: "searchable-select-container" }, hAsync("input", { class: "select-input", role: "combobox", autocomplete: "off", "aria-label": label, "aria-describedby": describedBy, "aria-activedescendant": this.ariaActiveDescendant, "aria-autocomplete": "list", "aria-expanded": this.open ? "true" : "false", "aria-invalid": invalid, "aria-required": required ? "true" : "false", "aria-controls": menuId, ref: (el) => (this.searchableSelectElement = el), id: this.inputId, value: this.searchableSelectInputValue, placeholder: placeholder, disabled: disabled, onInput: this.handleSearchableSelectInput, onClick: this.handleClick, onKeyDown: this.handleKeyDown, onFocus: this.onFocus, onBlur: this.onBlur, form: this.form, formaction: this.formaction, formenctype: this.formenctype, formmethod: this.formmethod, formnovalidate: this.formnovalidate, formtarget: this.formtarget }), this.searchableSelectInputValue &&
17465
+ }))) : searchable ? (hAsync("div", { class: "searchable-select-container" }, hAsync("input", { class: "select-input", role: "combobox", autocomplete: "off", "aria-label": label, "aria-describedby": describedBy, "aria-activedescendant": this.ariaActiveDescendant, "aria-autocomplete": "list", "aria-expanded": `${this.open}`, "aria-invalid": invalid, "aria-required": `${required}`, "aria-controls": menuId, ref: (el) => (this.searchableSelectElement = el), id: this.inputId, value: this.searchableSelectInputValue, placeholder: placeholder, disabled: disabled, onInput: this.handleSearchableSelectInput, onClick: this.handleClick, onKeyDown: this.handleKeyDown, onFocus: this.onFocus, onBlur: this.onBlur, form: this.form, formaction: this.formaction, formenctype: this.formenctype, formmethod: this.formmethod, formnovalidate: this.formnovalidate, formtarget: this.formtarget }), this.searchableSelectInputValue &&
17472
17466
  (showClearButton || searchable) && (hAsync("div", { class: "clear-button-container" }, hAsync("ic-button", { id: "clear-button", ref: (el) => (this.clearButton = el), "aria-label": this.searchableSelectInputValue && currValue === null
17473
17467
  ? "Clear input"
17474
17468
  : "Clear selection", class: "clear-button", innerHTML: Clear, onClick: this.handleClear, onFocus: this.handleClearButtonFocus, onBlur: this.handleClearButtonBlur, size: size, variant: "icon", appearance: this.clearButtonFocused
@@ -18689,10 +18683,9 @@ class Tab {
18689
18683
  this.tabCreated.emit(this.el);
18690
18684
  }
18691
18685
  disconnectedCallback() {
18692
- const tabContext = document.querySelector(`ic-tab-context[context-id=${this.contextId}]`);
18693
- if (tabContext) {
18694
- tabContext.tabRemovedHandler(!!this.focusTabId);
18695
- }
18686
+ var _a;
18687
+ (_a = document
18688
+ .querySelector(`ic-tab-context[context-id=${this.contextId}]`)) === null || _a === void 0 ? void 0 : _a.tabRemovedHandler(!!this.focusTabId);
18696
18689
  }
18697
18690
  componentWillLoad() {
18698
18691
  removeDisabledFalse(this.disabled, this.el);
@@ -18709,13 +18702,13 @@ class Tab {
18709
18702
  }
18710
18703
  }
18711
18704
  render() {
18712
- const { disabled, selected, appearance } = this;
18705
+ const { disabled, selected, appearance, isInitialRender, handleClick, handleFocus, handleMouseDown, } = this;
18713
18706
  return (hAsync(Host, { class: {
18714
- ["with-transition"]: !this.isInitialRender,
18715
- ["ic-tab-light"]: appearance === IcThemeForegroundEnum.Light,
18716
- ["selected"]: selected,
18717
- ["disabled"]: disabled,
18718
- }, role: "tab", "aria-selected": selected ? "true" : "false", onClick: this.handleClick, onFocus: this.handleFocus, onMouseDown: this.handleMouseDown, "aria-disabled": disabled ? "true" : "false", tabindex: this.selected ? 0 : -1 }, this.el.querySelector('[slot="icon"]') && hAsync("slot", { name: "icon" }), hAsync("ic-typography", { class: "ic-tab-label", variant: "label" }, hAsync("span", null, hAsync("slot", null))), isSlotUsed(this.el, "badge") && hAsync("slot", { name: "badge" })));
18707
+ "with-transition": !isInitialRender,
18708
+ "ic-tab-light": appearance === IcThemeForegroundEnum.Light,
18709
+ selected,
18710
+ disabled,
18711
+ }, role: "tab", "aria-selected": `${selected}`, onClick: handleClick, onFocus: handleFocus, onMouseDown: handleMouseDown, "aria-disabled": `${disabled}`, tabindex: selected ? 0 : -1 }, isSlotUsed(this.el, "icon") && hAsync("slot", { name: "icon" }), hAsync("ic-typography", { class: "ic-tab-label", variant: "label" }, hAsync("span", null, hAsync("slot", null))), isSlotUsed(this.el, "badge") && hAsync("slot", { name: "badge" })));
18719
18712
  }
18720
18713
  get el() { return getElement(this); }
18721
18714
  static get watchers() { return {
@@ -18740,6 +18733,7 @@ class Tab {
18740
18733
  }; }
18741
18734
  }
18742
18735
 
18736
+ const CONTEXT_ID_ATTR = "context-id";
18743
18737
  class TabContext {
18744
18738
  constructor(hostRef) {
18745
18739
  registerInstance(this, hostRef);
@@ -18747,24 +18741,28 @@ class TabContext {
18747
18741
  this.tabSelect = createEvent(this, "tabSelect", 3);
18748
18742
  this.newTabPanels = [];
18749
18743
  this.newTabs = [];
18750
- // Sets attributes to link tab-group, tabs and tab-panels
18744
+ this.emitEvents = (tabIndex) => {
18745
+ const tabLabel = this.el
18746
+ .querySelectorAll("ic-tab")
18747
+ // eslint-disable-next-line no-unexpected-multiline
18748
+ [tabIndex].textContent.trim();
18749
+ this.icTabSelect.emit({ tabIndex, tabLabel });
18750
+ this.tabSelect.emit({ tabIndex, tabLabel });
18751
+ };
18752
+ /** Sets attributes to link tab-group, tabs and tab-panels */
18751
18753
  this.linkTabs = () => {
18752
18754
  this.tabs.forEach((tab, index) => {
18753
18755
  const tabId = `ic-tab-${index}-context-${this.contextId}`;
18754
18756
  const tabPanelId = `ic-tab-panel-${index}-context-${this.contextId}`;
18755
- const shared = `ic-tab--${index}-context-${this.contextId}`;
18756
- const contextIdAttr = "context-id";
18757
18757
  tab.setAttribute("id", tabId);
18758
- tab.tabId = shared;
18758
+ tab.tabId = `ic-tab--${index}-context-${this.contextId}`;
18759
18759
  tab.tabPosition = index;
18760
18760
  tab.setAttribute("aria-controls", tabPanelId);
18761
- tab.setAttribute(contextIdAttr, this.contextId);
18762
- this.tabGroup.setAttribute(contextIdAttr, this.contextId);
18761
+ tab.setAttribute(CONTEXT_ID_ATTR, this.contextId);
18762
+ this.tabGroup.setAttribute(CONTEXT_ID_ATTR, this.contextId);
18763
18763
  this.tabPanels[index].setAttribute("id", tabPanelId);
18764
- this.tabPanels[index].panelId = shared;
18765
- this.tabPanels[index].tabPosition = index;
18766
18764
  this.tabPanels[index].setAttribute("aria-labelledby", tabId);
18767
- this.tabPanels[index].setAttribute(contextIdAttr, this.contextId);
18765
+ this.tabPanels[index].setAttribute(CONTEXT_ID_ATTR, this.contextId);
18768
18766
  if (this.appearance === IcThemeForegroundEnum.Light) {
18769
18767
  tab.appearance = this.appearance;
18770
18768
  this.tabPanels[index].appearance = this.appearance;
@@ -18774,8 +18772,9 @@ class TabContext {
18774
18772
  this.tabGroup.appearance = this.appearance;
18775
18773
  }
18776
18774
  };
18777
- // Gets tabs and tabpanels with the same context ID
18778
- // Using querySelector to selector the children in relation to the host
18775
+ /**
18776
+ * Gets tabs and tabpanels with the same context ID using querySelector to selector the children in relation to the host
18777
+ */
18779
18778
  this.getChildren = () => {
18780
18779
  this.tabGroup = this.el.querySelector("ic-tab-group");
18781
18780
  this.tabs = Array.from(this.tabGroup.querySelectorAll("ic-tab"));
@@ -18783,28 +18782,42 @@ class TabContext {
18783
18782
  this.enabledTabs = this.getEnabledTabs();
18784
18783
  };
18785
18784
  this.keydownHandler = (event) => {
18786
- if (this.activationType === "automatic") {
18787
- this.handleKeyBoardNavAutomatic(event);
18788
- }
18789
- else {
18790
- this.handleKeyBoardNavManual(event);
18791
- }
18792
- };
18793
- // Determines how keyboard navigation is to be handled based on the activation type
18794
- this.attachEventListeners = () => {
18795
- this.tabGroup.addEventListener("keydown", this.keydownHandler);
18796
- };
18797
- // Determines whether the selected tab is being controlled within the component
18798
- // or by the user (via selectedTabIndex and onIcTabSelect)
18799
- this.setControlledMode = () => {
18800
- if (this.selectedTabIndex !== undefined) {
18801
- this.controlledMode = true;
18802
- this.selectedTab = this.selectedTabIndex;
18785
+ const isManual = this.activationType === "manual";
18786
+ const enabledTabIndex = this.enabledTabs.findIndex((tab) => tab.tabId ===
18787
+ this.tabs[isManual ? this.focusedTabIndex : this.selectedTab].tabId);
18788
+ const keyboardFunction = isManual
18789
+ ? this.keyboardFocusTab
18790
+ : this.keyboardSelectTab;
18791
+ let preventDefault = true;
18792
+ switch (event.key) {
18793
+ case "Home":
18794
+ keyboardFunction(0);
18795
+ break;
18796
+ case "End":
18797
+ keyboardFunction(this.enabledTabs.length - 1);
18798
+ break;
18799
+ case "ArrowRight":
18800
+ keyboardFunction(enabledTabIndex < this.enabledTabs.length - 1
18801
+ ? enabledTabIndex + 1
18802
+ : 0);
18803
+ break;
18804
+ case "ArrowLeft":
18805
+ keyboardFunction((enabledTabIndex > 0 ? enabledTabIndex : this.enabledTabs.length) - 1);
18806
+ break;
18807
+ default:
18808
+ if (isManual && (event.key === "Enter" || event.key === " ")) {
18809
+ this.keyboardSelectTab(this.focusedTabIndex);
18810
+ }
18811
+ else {
18812
+ preventDefault = false;
18813
+ }
18803
18814
  }
18815
+ if (preventDefault)
18816
+ event.preventDefault();
18804
18817
  };
18805
- // Sets the tab that is selected on initial render
18818
+ /** Sets the tab that is selected on initial render */
18806
18819
  this.setInitialTab = () => {
18807
- if (this.controlledMode) {
18820
+ if (this.selectedTabIndex !== undefined) {
18808
18821
  this.selectedTab = this.selectedTabIndex;
18809
18822
  this.focusedTabIndex = this.selectedTabIndex;
18810
18823
  }
@@ -18814,120 +18827,31 @@ class TabContext {
18814
18827
  this.focusedTabIndex = firstEnabledTabIndex;
18815
18828
  }
18816
18829
  };
18817
- // Passes the selected tab to the tab and tab panel components
18830
+ /** Passes the selected tab to the tab and tab panel components */
18818
18831
  this.configureTabs = () => {
18819
18832
  this.enabledTabs.forEach((tab) => {
18820
18833
  tab.selected = tab.tabPosition === this.selectedTab;
18821
18834
  });
18822
- this.tabPanels.forEach((tabPanel) => {
18823
- tabPanel.selectedTab = this.tabs[this.selectedTab].tabId;
18835
+ this.tabPanels.forEach((tabPanel, index) => {
18836
+ tabPanel.hidden = index !== this.selectedTab;
18824
18837
  });
18825
18838
  };
18826
- this.getEnabledTabs = () => {
18827
- return Array.from(this.tabs).filter((child) => !child.disabled);
18828
- };
18829
- this.getIndexOfEnabledTab = (allTabsIndex) => {
18830
- return this.enabledTabs.findIndex((tab) => tab.tabId === this.tabs[allTabsIndex].tabId);
18831
- };
18832
- // Sets focus on tab and selects it
18839
+ this.getEnabledTabs = () => Array.from(this.tabs).filter((child) => !child.disabled);
18840
+ /** Sets focus on tab and selects it */
18833
18841
  this.keyboardSelectTab = (enabledTabIndex) => {
18834
18842
  const newIndex = this.tabs.findIndex((tab) => tab.tabId === this.enabledTabs[enabledTabIndex].tabId);
18835
18843
  this.enabledTabs[enabledTabIndex].focus();
18836
- if (!this.controlledMode) {
18844
+ if (this.selectedTabIndex === undefined) {
18837
18845
  this.selectedTab = newIndex;
18838
18846
  }
18839
18847
  else {
18840
- /* eslint-disable no-unexpected-multiline */
18841
- this.icTabSelect.emit({
18842
- tabIndex: newIndex,
18843
- tabLabel: this.el
18844
- .querySelectorAll("ic-tab")[newIndex].textContent.trim(),
18845
- });
18846
- this.tabSelect.emit({
18847
- tabIndex: newIndex,
18848
- tabLabel: this.el
18849
- .querySelectorAll("ic-tab")[newIndex].textContent.trim(),
18850
- });
18848
+ this.emitEvents(newIndex);
18851
18849
  }
18852
- /* eslint-enable no-unexpected-multiline */
18853
18850
  };
18854
- // Sets focus on tab without selecting it (for manual activation)
18851
+ /** Sets focus on tab without selecting it (for manual activation) */
18855
18852
  this.keyboardFocusTab = (enabledTabIndex) => {
18856
- const newIndex = this.tabs.findIndex((tab) => tab.tabId === this.enabledTabs[enabledTabIndex].tabId);
18857
18853
  this.enabledTabs[enabledTabIndex].focus();
18858
- this.focusedTabIndex = newIndex;
18859
- };
18860
- this.handleKeyBoardNavAutomatic = (event) => {
18861
- const key = event.key;
18862
- const enabledTabIndex = this.getIndexOfEnabledTab(this.selectedTab);
18863
- let preventDefault = true;
18864
- switch (key) {
18865
- case "Home":
18866
- this.keyboardSelectTab(0);
18867
- break;
18868
- case "End":
18869
- this.keyboardSelectTab(this.enabledTabs.length - 1);
18870
- break;
18871
- case "ArrowRight":
18872
- if (enabledTabIndex < this.enabledTabs.length - 1) {
18873
- this.keyboardSelectTab(enabledTabIndex + 1);
18874
- }
18875
- else {
18876
- this.keyboardSelectTab(0);
18877
- }
18878
- break;
18879
- case "ArrowLeft":
18880
- if (enabledTabIndex > 0) {
18881
- this.keyboardSelectTab(enabledTabIndex - 1);
18882
- }
18883
- else {
18884
- this.keyboardSelectTab(this.enabledTabs.length - 1);
18885
- }
18886
- break;
18887
- default:
18888
- preventDefault = false;
18889
- }
18890
- if (preventDefault)
18891
- event.preventDefault();
18892
- };
18893
- this.handleKeyBoardNavManual = (event) => {
18894
- const key = event.key;
18895
- const enabledTabIndex = this.getIndexOfEnabledTab(this.focusedTabIndex);
18896
- let preventDefault = true;
18897
- switch (key) {
18898
- case "Home":
18899
- this.keyboardFocusTab(0);
18900
- break;
18901
- case "End":
18902
- this.keyboardFocusTab(this.enabledTabs.length - 1);
18903
- break;
18904
- case "ArrowRight":
18905
- if (enabledTabIndex < this.enabledTabs.length - 1) {
18906
- this.keyboardFocusTab(enabledTabIndex + 1);
18907
- }
18908
- else {
18909
- this.keyboardFocusTab(0);
18910
- }
18911
- break;
18912
- case "ArrowLeft":
18913
- if (enabledTabIndex > 0) {
18914
- this.keyboardFocusTab(enabledTabIndex - 1);
18915
- }
18916
- else {
18917
- this.keyboardFocusTab(this.enabledTabs.length - 1);
18918
- }
18919
- break;
18920
- case "Enter":
18921
- this.keyboardSelectTab(this.focusedTabIndex);
18922
- break;
18923
- case " ":
18924
- this.keyboardSelectTab(this.focusedTabIndex);
18925
- break;
18926
- default:
18927
- preventDefault = false;
18928
- }
18929
- if (preventDefault)
18930
- event.preventDefault();
18854
+ this.focusedTabIndex = this.tabs.findIndex((tab) => tab.tabId === this.enabledTabs[enabledTabIndex].tabId);
18931
18855
  };
18932
18856
  this.selectedTab = undefined;
18933
18857
  this.activationType = "automatic";
@@ -18946,10 +18870,12 @@ class TabContext {
18946
18870
  this.selectedTab = newValue;
18947
18871
  }
18948
18872
  componentDidLoad() {
18949
- this.setControlledMode();
18873
+ if (this.selectedTabIndex !== undefined) {
18874
+ this.selectedTab = this.selectedTabIndex;
18875
+ }
18950
18876
  this.getChildren();
18951
18877
  this.linkTabs();
18952
- this.attachEventListeners();
18878
+ this.tabGroup.addEventListener("keydown", this.keydownHandler);
18953
18879
  this.setInitialTab();
18954
18880
  this.configureTabs();
18955
18881
  }
@@ -18964,18 +18890,7 @@ class TabContext {
18964
18890
  event.detail.contextId === this.contextId) {
18965
18891
  this.selectedTab = event.detail.position;
18966
18892
  }
18967
- /* eslint-disable no-unexpected-multiline */
18968
- this.icTabSelect.emit({
18969
- tabIndex: event.detail.position,
18970
- tabLabel: this.el
18971
- .querySelectorAll("ic-tab")[event.detail.position].textContent.trim(),
18972
- });
18973
- this.tabSelect.emit({
18974
- tabIndex: event.detail.position,
18975
- tabLabel: this.el
18976
- .querySelectorAll("ic-tab")[event.detail.position].textContent.trim(),
18977
- });
18978
- /* eslint-enable no-unexpected-multiline */
18893
+ this.emitEvents(event.detail.position);
18979
18894
  event.stopImmediatePropagation();
18980
18895
  }
18981
18896
  tabCreatedHandler(ev) {
@@ -18986,6 +18901,9 @@ class TabContext {
18986
18901
  this.tabPanels.push(...this.newTabPanels);
18987
18902
  this.enabledTabs = this.getEnabledTabs();
18988
18903
  this.linkTabs();
18904
+ if (!this.tabs[this.selectedTab] || !this.tabPanels[this.selectedTab])
18905
+ this.setInitialTab();
18906
+ this.configureTabs();
18989
18907
  this.newTabs = [];
18990
18908
  this.newTabPanels = [];
18991
18909
  }
@@ -18999,12 +18917,10 @@ class TabContext {
18999
18917
  */
19000
18918
  async tabRemovedHandler(hadFocus) {
19001
18919
  this.getChildren();
19002
- this.enabledTabs = this.getEnabledTabs();
19003
18920
  this.linkTabs();
19004
18921
  if (this.tabs[this.selectedTab] && this.tabPanels[this.selectedTab]) {
19005
18922
  this.tabs[this.selectedTab].selected = true;
19006
- this.tabPanels[this.selectedTab].selectedTab =
19007
- this.tabs[this.selectedTab].tabId;
18923
+ this.tabPanels[this.selectedTab].hidden = false;
19008
18924
  }
19009
18925
  else {
19010
18926
  this.setInitialTab();
@@ -19086,26 +19002,19 @@ class TabPanel {
19086
19002
  this.tabPanelRemoved = createEvent(this, "tabPanelRemoved", 7);
19087
19003
  this.appearance = "dark";
19088
19004
  this.contextId = "default";
19089
- this.panelId = undefined;
19090
- this.selectedTab = undefined;
19091
- this.tabPosition = undefined;
19092
19005
  }
19093
19006
  connectedCallback() {
19094
19007
  this.tabPanelCreated.emit(this.el);
19095
19008
  }
19096
19009
  disconnectedCallback() {
19097
- const tabContext = document.querySelector(`ic-tab-context[context-id=${this.contextId}]`);
19098
- if (tabContext) {
19099
- tabContext.tabRemovedHandler();
19100
- }
19010
+ var _a;
19011
+ (_a = document
19012
+ .querySelector(`ic-tab-context[context-id=${this.contextId}]`)) === null || _a === void 0 ? void 0 : _a.tabRemovedHandler();
19101
19013
  }
19102
19014
  render() {
19103
- const { panelId, selectedTab, appearance } = this;
19104
19015
  return (hAsync(Host, { class: {
19105
- ["ic-tab-panel-light"]: appearance === IcThemeForegroundEnum.Light,
19106
- }, role: "tabpanel", hidden: isPropDefined(panelId) && isPropDefined(selectedTab)
19107
- ? !(panelId === selectedTab)
19108
- : true }, hAsync("div", null, hAsync("slot", null))));
19016
+ "ic-tab-panel-light": this.appearance === IcThemeForegroundEnum.Light,
19017
+ }, role: "tabpanel" }, hAsync("div", null, hAsync("slot", null))));
19109
19018
  }
19110
19019
  get el() { return getElement(this); }
19111
19020
  static get style() { return icTabPanelCss; }
@@ -19114,14 +19023,11 @@ class TabPanel {
19114
19023
  "$tagName$": "ic-tab-panel",
19115
19024
  "$members$": {
19116
19025
  "appearance": [1],
19117
- "contextId": [513, "context-id"],
19118
- "panelId": [513, "panel-id"],
19119
- "selectedTab": [1, "selected-tab"],
19120
- "tabPosition": [514, "tab-position"]
19026
+ "contextId": [513, "context-id"]
19121
19027
  },
19122
19028
  "$listeners$": undefined,
19123
19029
  "$lazyBundleId$": "-",
19124
- "$attrsToReflect$": [["contextId", "context-id"], ["panelId", "panel-id"], ["tabPosition", "tab-position"]]
19030
+ "$attrsToReflect$": [["contextId", "context-id"]]
19125
19031
  }; }
19126
19032
  }
19127
19033
 
@@ -19298,7 +19204,7 @@ class TextField {
19298
19204
  }
19299
19205
  render() {
19300
19206
  const { inputId, name, label, required, size, small, placeholder, helperText, rows, resize, disabled, value, min, max, maxLength, numChars, readonly, maxLengthExceeded, maxCharacters, maxCharactersError, maxCharactersReached, minCharacters, minCharactersUnattained, minValueUnattained, maxValueExceeded, validationStatus, validationText, validationInline, validationInlineInternal, spellcheck, inputmode, fullWidth, truncateValue, hiddenInput, } = this;
19301
- const disabledMode = readonly ? true : disabled;
19207
+ const disabledMode = readonly || disabled;
19302
19208
  const currentStatus = maxLengthExceeded ||
19303
19209
  maxValueExceeded ||
19304
19210
  minValueUnattained ||
@@ -20507,7 +20413,9 @@ class Typography {
20507
20413
  }
20508
20414
  };
20509
20415
  this.getElementTop = (el) => {
20510
- return el.getClientRects ? el.getClientRects()[0].top : 0;
20416
+ return el.getClientRects && el.getClientRects()[0]
20417
+ ? el.getClientRects()[0].top
20418
+ : 0;
20511
20419
  };
20512
20420
  this.runResizeObserver = () => {
20513
20421
  this.resizeObserver = new ResizeObserver(() => {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ukic/web-components",
3
- "version": "2.29.0",
3
+ "version": "2.29.1",
4
4
  "description": "A web component UI library compiled with StencilJS",
5
5
  "author": "mi6",
6
6
  "bugs": {
@@ -96,5 +96,5 @@
96
96
  "webpack": "^5.76.0"
97
97
  },
98
98
  "license": "MIT",
99
- "gitHead": "eac36044d122bbfe72142a35877135ebff6dce5e"
99
+ "gitHead": "3722eb9496a95846172a9a41c70055d75265cdd6"
100
100
  }