@ukic/web-components 2.29.0 → 2.29.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (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
  }