@govtechsg/sgds-web-component 3.12.0-rc.1 → 3.12.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (183) hide show
  1. package/Masthead/index.js +1 -1
  2. package/base/card.js +1 -1
  3. package/base/dropdown-list-element.d.ts +5 -1
  4. package/base/dropdown-list-element.js +2 -2
  5. package/base/dropdown-list-element.js.map +1 -1
  6. package/components/Breadcrumb/index.umd.min.js +20 -20
  7. package/components/Breadcrumb/index.umd.min.js.map +1 -1
  8. package/components/Card/index.umd.min.js +1 -1
  9. package/components/Card/index.umd.min.js.map +1 -1
  10. package/components/Checkbox/index.umd.min.js +6 -6
  11. package/components/Checkbox/index.umd.min.js.map +1 -1
  12. package/components/Checkbox/sgds-checkbox.d.ts +3 -0
  13. package/components/Checkbox/sgds-checkbox.js +17 -0
  14. package/components/Checkbox/sgds-checkbox.js.map +1 -1
  15. package/components/ComboBox/index.umd.min.js +2 -2
  16. package/components/ComboBox/index.umd.min.js.map +1 -1
  17. package/components/Dropdown/dropdown-item.js +1 -1
  18. package/components/Dropdown/index.umd.min.js +2 -2
  19. package/components/Dropdown/index.umd.min.js.map +1 -1
  20. package/components/Dropdown/sgds-dropdown-item.js +0 -3
  21. package/components/Dropdown/sgds-dropdown-item.js.map +1 -1
  22. package/components/IconCard/icon-card.js +1 -1
  23. package/components/IconCard/index.umd.min.js +1 -1
  24. package/components/IconCard/index.umd.min.js.map +1 -1
  25. package/components/ImageCard/image-card.js +1 -1
  26. package/components/ImageCard/index.umd.min.js +1 -1
  27. package/components/ImageCard/index.umd.min.js.map +1 -1
  28. package/components/Mainnav/index.umd.min.js +2 -2
  29. package/components/Mainnav/index.umd.min.js.map +1 -1
  30. package/components/Masthead/index.umd.min.js +1 -1
  31. package/components/Masthead/index.umd.min.js.map +1 -1
  32. package/components/Masthead/masthead.js +1 -1
  33. package/components/OverflowMenu/index.umd.min.js +2 -2
  34. package/components/OverflowMenu/index.umd.min.js.map +1 -1
  35. package/components/Select/index.umd.min.js +1 -1
  36. package/components/Select/index.umd.min.js.map +1 -1
  37. package/components/SystemBanner/index.umd.min.js +10 -9
  38. package/components/SystemBanner/index.umd.min.js.map +1 -1
  39. package/components/SystemBanner/sgds-system-banner-item.d.ts +2 -1
  40. package/components/SystemBanner/sgds-system-banner-item.js +7 -2
  41. package/components/SystemBanner/sgds-system-banner-item.js.map +1 -1
  42. package/components/SystemBanner/system-banner-item.js +1 -1
  43. package/components/SystemBanner/system-banner.js +1 -1
  44. package/components/ThumbnailCard/index.umd.min.js +1 -1
  45. package/components/ThumbnailCard/index.umd.min.js.map +1 -1
  46. package/components/ThumbnailCard/thumbnail-card.js +1 -1
  47. package/components/index.d.ts +0 -1
  48. package/components/index.js +0 -1
  49. package/components/index.js.map +1 -1
  50. package/components/index.umd.min.js +53 -88
  51. package/components/index.umd.min.js.map +1 -1
  52. package/css/fouc.css +0 -4
  53. package/css/utility.css +2 -2
  54. package/index.d.ts +0 -1
  55. package/index.js +0 -1
  56. package/index.js.map +1 -1
  57. package/index.umd.min.js +55 -165
  58. package/index.umd.min.js.map +1 -1
  59. package/package.json +1 -1
  60. package/react/base/card.cjs.js +1 -1
  61. package/react/base/card.js +1 -1
  62. package/react/base/dropdown-list-element.cjs.js +2 -2
  63. package/react/base/dropdown-list-element.cjs.js.map +1 -1
  64. package/react/base/dropdown-list-element.js +2 -2
  65. package/react/base/dropdown-list-element.js.map +1 -1
  66. package/react/components/Checkbox/sgds-checkbox.cjs.js +17 -0
  67. package/react/components/Checkbox/sgds-checkbox.cjs.js.map +1 -1
  68. package/react/components/Checkbox/sgds-checkbox.js +17 -0
  69. package/react/components/Checkbox/sgds-checkbox.js.map +1 -1
  70. package/react/components/Dropdown/dropdown-item.cjs.js +1 -1
  71. package/react/components/Dropdown/dropdown-item.js +1 -1
  72. package/react/components/Dropdown/sgds-dropdown-item.cjs.js +0 -3
  73. package/react/components/Dropdown/sgds-dropdown-item.cjs.js.map +1 -1
  74. package/react/components/Dropdown/sgds-dropdown-item.js +0 -3
  75. package/react/components/Dropdown/sgds-dropdown-item.js.map +1 -1
  76. package/react/components/IconCard/icon-card.cjs.js +1 -1
  77. package/react/components/IconCard/icon-card.js +1 -1
  78. package/react/components/ImageCard/image-card.cjs.js +1 -1
  79. package/react/components/ImageCard/image-card.js +1 -1
  80. package/react/components/Masthead/masthead.cjs.js +1 -1
  81. package/react/components/Masthead/masthead.js +1 -1
  82. package/react/components/SystemBanner/sgds-system-banner-item.cjs.js +7 -2
  83. package/react/components/SystemBanner/sgds-system-banner-item.cjs.js.map +1 -1
  84. package/react/components/SystemBanner/sgds-system-banner-item.js +7 -2
  85. package/react/components/SystemBanner/sgds-system-banner-item.js.map +1 -1
  86. package/react/components/SystemBanner/system-banner-item.cjs.js +1 -1
  87. package/react/components/SystemBanner/system-banner-item.js +1 -1
  88. package/react/components/SystemBanner/system-banner.cjs.js +1 -1
  89. package/react/components/SystemBanner/system-banner.js +1 -1
  90. package/react/components/ThumbnailCard/thumbnail-card.cjs.js +1 -1
  91. package/react/components/ThumbnailCard/thumbnail-card.js +1 -1
  92. package/react/index.cjs.js +48 -56
  93. package/react/index.cjs.js.map +1 -1
  94. package/react/index.d.ts +0 -4
  95. package/react/index.js +0 -4
  96. package/react/index.js.map +1 -1
  97. package/themes/day.css +1 -3
  98. package/themes/night.css +2 -2
  99. package/base/sidebar-element.d.ts +0 -112
  100. package/base/sidebar-element.js +0 -281
  101. package/base/sidebar-element.js.map +0 -1
  102. package/components/Sidebar/index.d.ts +0 -16
  103. package/components/Sidebar/index.js +0 -10
  104. package/components/Sidebar/index.js.map +0 -1
  105. package/components/Sidebar/index.umd.min.js +0 -2428
  106. package/components/Sidebar/index.umd.min.js.map +0 -1
  107. package/components/Sidebar/sgds-sidebar-group.d.ts +0 -51
  108. package/components/Sidebar/sgds-sidebar-group.js +0 -124
  109. package/components/Sidebar/sgds-sidebar-group.js.map +0 -1
  110. package/components/Sidebar/sgds-sidebar-item.d.ts +0 -25
  111. package/components/Sidebar/sgds-sidebar-item.js +0 -73
  112. package/components/Sidebar/sgds-sidebar-item.js.map +0 -1
  113. package/components/Sidebar/sgds-sidebar-section.d.ts +0 -55
  114. package/components/Sidebar/sgds-sidebar-section.js +0 -122
  115. package/components/Sidebar/sgds-sidebar-section.js.map +0 -1
  116. package/components/Sidebar/sgds-sidebar.d.ts +0 -85
  117. package/components/Sidebar/sgds-sidebar.js +0 -319
  118. package/components/Sidebar/sgds-sidebar.js.map +0 -1
  119. package/components/Sidebar/sidebar-context.d.ts +0 -51
  120. package/components/Sidebar/sidebar-context.js +0 -45
  121. package/components/Sidebar/sidebar-context.js.map +0 -1
  122. package/components/Sidebar/sidebar-item.js +0 -6
  123. package/components/Sidebar/sidebar-item.js.map +0 -1
  124. package/components/Sidebar/sidebar-section.js +0 -6
  125. package/components/Sidebar/sidebar-section.js.map +0 -1
  126. package/components/Sidebar/sidebar.js +0 -6
  127. package/components/Sidebar/sidebar.js.map +0 -1
  128. package/react/base/sidebar-element.cjs.js +0 -286
  129. package/react/base/sidebar-element.cjs.js.map +0 -1
  130. package/react/base/sidebar-element.js +0 -282
  131. package/react/base/sidebar-element.js.map +0 -1
  132. package/react/components/Sidebar/sgds-sidebar-group.cjs.js +0 -130
  133. package/react/components/Sidebar/sgds-sidebar-group.cjs.js.map +0 -1
  134. package/react/components/Sidebar/sgds-sidebar-group.js +0 -125
  135. package/react/components/Sidebar/sgds-sidebar-group.js.map +0 -1
  136. package/react/components/Sidebar/sgds-sidebar-item.cjs.js +0 -79
  137. package/react/components/Sidebar/sgds-sidebar-item.cjs.js.map +0 -1
  138. package/react/components/Sidebar/sgds-sidebar-item.js +0 -74
  139. package/react/components/Sidebar/sgds-sidebar-item.js.map +0 -1
  140. package/react/components/Sidebar/sgds-sidebar-section.cjs.js +0 -128
  141. package/react/components/Sidebar/sgds-sidebar-section.cjs.js.map +0 -1
  142. package/react/components/Sidebar/sgds-sidebar-section.js +0 -123
  143. package/react/components/Sidebar/sgds-sidebar-section.js.map +0 -1
  144. package/react/components/Sidebar/sgds-sidebar.cjs.js +0 -325
  145. package/react/components/Sidebar/sgds-sidebar.cjs.js.map +0 -1
  146. package/react/components/Sidebar/sgds-sidebar.js +0 -320
  147. package/react/components/Sidebar/sgds-sidebar.js.map +0 -1
  148. package/react/components/Sidebar/sidebar-context.cjs.js +0 -54
  149. package/react/components/Sidebar/sidebar-context.cjs.js.map +0 -1
  150. package/react/components/Sidebar/sidebar-context.js +0 -46
  151. package/react/components/Sidebar/sidebar-context.js.map +0 -1
  152. package/react/components/Sidebar/sidebar-item.cjs.js +0 -11
  153. package/react/components/Sidebar/sidebar-item.cjs.js.map +0 -1
  154. package/react/components/Sidebar/sidebar-item.js +0 -7
  155. package/react/components/Sidebar/sidebar-item.js.map +0 -1
  156. package/react/components/Sidebar/sidebar-section.cjs.js +0 -11
  157. package/react/components/Sidebar/sidebar-section.cjs.js.map +0 -1
  158. package/react/components/Sidebar/sidebar-section.js +0 -7
  159. package/react/components/Sidebar/sidebar-section.js.map +0 -1
  160. package/react/components/Sidebar/sidebar.cjs.js +0 -11
  161. package/react/components/Sidebar/sidebar.cjs.js.map +0 -1
  162. package/react/components/Sidebar/sidebar.js +0 -7
  163. package/react/components/Sidebar/sidebar.js.map +0 -1
  164. package/react/sidebar/index.cjs.js +0 -40
  165. package/react/sidebar/index.cjs.js.map +0 -1
  166. package/react/sidebar/index.d.ts +0 -2
  167. package/react/sidebar/index.js +0 -16
  168. package/react/sidebar/index.js.map +0 -1
  169. package/react/sidebar-group/index.cjs.js +0 -40
  170. package/react/sidebar-group/index.cjs.js.map +0 -1
  171. package/react/sidebar-group/index.d.ts +0 -2
  172. package/react/sidebar-group/index.js +0 -16
  173. package/react/sidebar-group/index.js.map +0 -1
  174. package/react/sidebar-item/index.cjs.js +0 -40
  175. package/react/sidebar-item/index.cjs.js.map +0 -1
  176. package/react/sidebar-item/index.d.ts +0 -2
  177. package/react/sidebar-item/index.js +0 -16
  178. package/react/sidebar-item/index.js.map +0 -1
  179. package/react/sidebar-section/index.cjs.js +0 -40
  180. package/react/sidebar-section/index.cjs.js.map +0 -1
  181. package/react/sidebar-section/index.d.ts +0 -2
  182. package/react/sidebar-section/index.js +0 -16
  183. package/react/sidebar-section/index.js.map +0 -1
@@ -2398,7 +2398,7 @@ let Be;$e?.({LitElement:He}),(_e.litElementVersions??=[]).push("4.2.2"),_e.litEl
2398
2398
  * @license
2399
2399
  * Copyright 2020 Google LLC
2400
2400
  * SPDX-License-Identifier: BSD-3-Clause
2401
- */const xi=()=>new yi;class yi{}const Zi=new WeakMap;const Ci=Ie(class extends bi{render(e){return ce}update(e,[t]){const a=t!==this._ref;return a&&void 0!==this._ref&&this._updateRefValue(void 0),(a||this._lastElementForRef!==this._element)&&(this._ref=t,this._context=e.options?.host,this._updateRefValue(this._element=e.element)),ce}_updateRefValue(e){if(this.isConnected||(e=void 0),"function"==typeof this._ref){const t=this._context??globalThis;let a=Zi.get(t);void 0===a&&(a=new WeakMap,Zi.set(t,a)),void 0!==a.get(this._ref)&&this._ref.call(this._context,void 0),a.set(this._ref,e),void 0!==e&&this._ref.call(this._context,e)}else this._ref.value=e}get _lastElementForRef(){return"function"==typeof this._ref?Zi.get(this._context??globalThis)?.get(this._ref):this._ref?.value}disconnected(){this._lastElementForRef===this._element&&this._updateRefValue(void 0)}reconnected(){this._updateRefValue(this._element)}});class Mi extends qe{constructor(){super(...arguments),this.myDropdown=xi(),this.dropdownMenuId=tt("dropdown-menu","div"),this.noFlip=!1,this.menuAlignRight=!1,this.drop="down",this.floatingOpts={},this.menuIsOpen=!1,this.close="default",this.disabled=!1,this.readonly=!1,this.menuRef=xi(),this._handleClickOutOfElement=e=>{this.menuIsOpen&&(e.composedPath().includes(this)||this.hideMenu(!0))}}connectedCallback(){super.connectedCallback(),"inside"!==this.close&&document.addEventListener("click",this._handleClickOutOfElement),this.addEventListener("keydown",this._handleKeyboardMenuEvent)}disconnectedCallback(){super.disconnectedCallback(),document.removeEventListener("click",this._handleClickOutOfElement),this.removeEventListener("keydown",this._handleKeyboardMenuEvent),this._cleanupAutoUpdate&&(this._cleanupAutoUpdate(),this._cleanupAutoUpdate=void 0)}firstUpdated(e){super.firstUpdated(e),this.menuIsOpen&&this.updateFloatingPosition()}async showMenu(){this.disabled||this.menuIsOpen||(this.menuIsOpen=!0,this.emit("sgds-show"),await this.updateFloatingPosition(),this.emit("sgds-after-show"),this.myDropdown.value&&this.menuRef.value&&(this._cleanupAutoUpdate=ni(this.myDropdown.value,this.menuRef.value,()=>this.updateFloatingPosition())))}hideMenu(e){this.menuIsOpen&&(this.emit("sgds-hide",{detail:{isOutside:e}}),this.menuIsOpen=!1,setTimeout(()=>this.emit("sgds-after-hide"),0),this._cleanupAutoUpdate&&(this._cleanupAutoUpdate(),this._cleanupAutoUpdate=void 0))}toggleMenu(){this.menuIsOpen?this.hideMenu():this.showMenu()}_handleKeyboardMenuEvent(e){if(!this.readonly)switch(e.key){case"ArrowDown":case"ArrowUp":e.preventDefault(),this.menuIsOpen||this.showMenu();break;case"Escape":this.hideMenu()}}mergeMiddleware(e,t){const a=e=>{var t;return(null==e?void 0:e.name)||(null===(t=null==e?void 0:e.constructor)||void 0===t?void 0:t.name)},i=t.map(a),l=e.map(e=>{const l=a(e),n=i.indexOf(l);return-1!==n?t[n]:e}).concat(t.filter(t=>!e.some(e=>a(e)===a(t))));return l}async updateFloatingPosition(){if(!this.myDropdown.value||!this.menuRef.value)return;let e="bottom-start";switch(this.drop){case"up":e=this.menuAlignRight?"top-end":"top-start";break;case"right":e="right-start";break;case"left":e="left-start";break;case"down":e=this.menuAlignRight?"bottom-end":"bottom-start";break;default:e="bottom-start"}const t=[oi(8),this.noFlip?void 0:ri(),si()].filter(Boolean);let a=t;Array.isArray(this.floatingOpts.middleware)&&this.floatingOpts.middleware.length>0&&(a=this.mergeMiddleware(t,this.floatingOpts.middleware.filter(Boolean)));const i=Object.assign(Object.assign({strategy:"fixed",placement:e},this.floatingOpts),{middleware:a}),{x:l,y:n,strategy:o,placement:s}=await ci(this.myDropdown.value,this.menuRef.value,i);this.menuRef.value.setAttribute("data-placement",s),Object.assign(this.menuRef.value.style,{position:o,left:`${l}px`,top:`${n}px`})}}e([Le({type:Boolean,state:!0})],Mi.prototype,"noFlip",void 0),e([Le({type:Boolean,reflect:!0,state:!0})],Mi.prototype,"menuAlignRight",void 0),e([Le({type:String,reflect:!0,state:!0})],Mi.prototype,"drop",void 0),e([Le({type:Object})],Mi.prototype,"floatingOpts",void 0),e([Le({type:Boolean,reflect:!0})],Mi.prototype,"menuIsOpen",void 0),e([Le({type:Boolean,reflect:!0})],Mi.prototype,"disabled",void 0),e([Le({type:Boolean,reflect:!0})],Mi.prototype,"readonly",void 0);class _i extends Mi{constructor(){super(...arguments),this.nextDropdownItemNo=0,this.prevDropdownItemNo=-1,this.hidden=!1}connectedCallback(){super.connectedCallback(),this.addEventListener("sgds-hide",this._resetMenu)}disconnectedCallback(){super.disconnectedCallback(),this.removeEventListener("sgds-hide",this._resetMenu)}firstUpdated(e){super.firstUpdated(e),this.addEventListener("keydown",this._handleKeyboardMenuItemsEvent)}handleSelectSlot(e){const t=this._getActiveMenuItems(),a=t.indexOf(e.target);this.nextDropdownItemNo=a+1,this.prevDropdownItemNo=a<=0?t.length-1:a-1;e.target.disabled||(this.emit("sgds-select"),"outside"!==this.close&&this.hideMenu())}_resetMenu(){this.nextDropdownItemNo=0,this.prevDropdownItemNo=-1;this._getMenuItems().forEach(e=>{var t;const a=null===(t=null==e?void 0:e.shadowRoot)||void 0===t?void 0:t.querySelector(".dropdown-item");a&&a.removeAttribute("tabindex")})}_handleKeyboardMenuItemsEvent(e){if(this.readonly)return;const t=this._getActiveMenuItems();if(0!==t.length)switch(e.key){case"ArrowDown":e.preventDefault(),this._setMenuItem(this.nextDropdownItemNo);break;case"ArrowUp":e.preventDefault(),this._setMenuItem(this.prevDropdownItemNo);break;case"Tab":if(!this.menuIsOpen)return;e.preventDefault(),e.shiftKey?this._setMenuItem(this.prevDropdownItemNo):this._setMenuItem(this.nextDropdownItemNo);break;case"Enter":t.includes(e.target)&&this.handleSelectSlot(e)}}_getMenuItems(){var e,t;if(this.shadowRoot.querySelector("slot#default")){return null===(e=this.shadowRoot.querySelector("slot#default"))||void 0===e?void 0:e.assignedElements({flatten:!0}).filter(e=>!e.classList.contains("empty-menu")&&!e.hasAttribute("hidden"))}if(null===(t=this.menu)||void 0===t?void 0:t.hasChildNodes()){return[...Array.from(this.menu.children)]}return[]}_getActiveMenuItems(){return this._getMenuItems().filter(e=>!e.disabled&&!e.hidden)}_setMenuItem(e){const t=this._getActiveMenuItems();if(0===t.length)return;const a=(e%t.length+t.length)%t.length,i=t[a];this.emit("i-sgds-option-focus",{detail:{option:i}}),this.nextDropdownItemNo=(a+1)%t.length,this.prevDropdownItemNo=(a-1+t.length)%t.length,t.forEach(e=>{const t=e.shadowRoot.querySelector(".dropdown-item");t.setAttribute("tabindex",e===i?"0":"-1"),e===i&&t.focus()})}}_i.styles=Mi.styles,e([Te("ul.dropdown-menu")],_i.prototype,"menu",void 0),e([Ee()],_i.prototype,"nextDropdownItemNo",void 0),e([Ee()],_i.prototype,"prevDropdownItemNo",void 0),e([Le({type:Boolean,reflect:!0})],_i.prototype,"hidden",void 0);class Vi extends _i{constructor(){super(),this.noFlip=!1,this.menuAlignRight=!1,this.drop="down",this.menuRef=Ci()}async _handleClick(){this.disabled||this.toggleMenu()}_handleCloseMenu(){const e=this._toggler[0];null==e||e.focus()}async connectedCallback(){super.connectedCallback(),this.addEventListener("sgds-hide",this._handleCloseMenu)}async disconnectedCallback(){this.removeEventListener("sgds-hide",this._handleCloseMenu)}async firstUpdated(e){super.firstUpdated(e),this.menuIsOpen&&await this.showMenu(),this._handleDisabled()}_handleDisabled(){const e=this._toggler[0];e&&(this.disabled?e.setAttribute("disabled","true"):e.hasAttribute("disabled")&&e.removeAttribute("disabled"))}render(){return oe`
2401
+ */const xi=()=>new yi;class yi{}const Zi=new WeakMap;const Ci=Ie(class extends bi{render(e){return ce}update(e,[t]){const a=t!==this._ref;return a&&void 0!==this._ref&&this._updateRefValue(void 0),(a||this._lastElementForRef!==this._element)&&(this._ref=t,this._context=e.options?.host,this._updateRefValue(this._element=e.element)),ce}_updateRefValue(e){if(this.isConnected||(e=void 0),"function"==typeof this._ref){const t=this._context??globalThis;let a=Zi.get(t);void 0===a&&(a=new WeakMap,Zi.set(t,a)),void 0!==a.get(this._ref)&&this._ref.call(this._context,void 0),a.set(this._ref,e),void 0!==e&&this._ref.call(this._context,e)}else this._ref.value=e}get _lastElementForRef(){return"function"==typeof this._ref?Zi.get(this._context??globalThis)?.get(this._ref):this._ref?.value}disconnected(){this._lastElementForRef===this._element&&this._updateRefValue(void 0)}reconnected(){this._updateRefValue(this._element)}});class Mi extends qe{constructor(){super(...arguments),this.myDropdown=xi(),this.dropdownMenuId=tt("dropdown-menu","div"),this.noFlip=!1,this.menuAlignRight=!1,this.drop="down",this.floatingOpts={},this.menuIsOpen=!1,this.close="default",this.disabled=!1,this.readonly=!1,this.menuRef=xi(),this._handleClickOutOfElement=e=>{this.menuIsOpen&&(e.composedPath().includes(this)||this.hideMenu(!0))}}connectedCallback(){super.connectedCallback(),"inside"!==this.close&&document.addEventListener("click",this._handleClickOutOfElement),this.addEventListener("keydown",this._handleKeyboardMenuEvent)}disconnectedCallback(){super.disconnectedCallback(),document.removeEventListener("click",this._handleClickOutOfElement),this.removeEventListener("keydown",this._handleKeyboardMenuEvent),this._cleanupAutoUpdate&&(this._cleanupAutoUpdate(),this._cleanupAutoUpdate=void 0)}firstUpdated(e){super.firstUpdated(e),this.menuIsOpen&&this.updateFloatingPosition()}async showMenu(){this.disabled||this.menuIsOpen||(this.menuIsOpen=!0,this.emit("sgds-show"),await this.updateFloatingPosition(),this.emit("sgds-after-show"),this.myDropdown.value&&this.menuRef.value&&(this._cleanupAutoUpdate=ni(this.myDropdown.value,this.menuRef.value,()=>this.updateFloatingPosition())))}hideMenu(e){this.menuIsOpen&&(this.emit("sgds-hide",{detail:{isOutside:e}}),this.menuIsOpen=!1,setTimeout(()=>this.emit("sgds-after-hide"),0),this._cleanupAutoUpdate&&(this._cleanupAutoUpdate(),this._cleanupAutoUpdate=void 0))}toggleMenu(){this.menuIsOpen?this.hideMenu():this.showMenu()}_handleKeyboardMenuEvent(e){if(!this.readonly)switch(e.key){case"ArrowDown":case"ArrowUp":e.preventDefault(),this.menuIsOpen||this.showMenu();break;case"Escape":this.hideMenu()}}mergeMiddleware(e,t){const a=e=>{var t;return(null==e?void 0:e.name)||(null===(t=null==e?void 0:e.constructor)||void 0===t?void 0:t.name)},i=t.map(a),l=e.map(e=>{const l=a(e),n=i.indexOf(l);return-1!==n?t[n]:e}).concat(t.filter(t=>!e.some(e=>a(e)===a(t))));return l}async updateFloatingPosition(){if(!this.myDropdown.value||!this.menuRef.value)return;let e="bottom-start";switch(this.drop){case"up":e=this.menuAlignRight?"top-end":"top-start";break;case"right":e="right-start";break;case"left":e="left-start";break;case"down":e=this.menuAlignRight?"bottom-end":"bottom-start";break;default:e="bottom-start"}const t=[oi(8),this.noFlip?void 0:ri(),si()].filter(Boolean);let a=t;Array.isArray(this.floatingOpts.middleware)&&this.floatingOpts.middleware.length>0&&(a=this.mergeMiddleware(t,this.floatingOpts.middleware.filter(Boolean)));const i=Object.assign(Object.assign({strategy:"fixed",placement:e},this.floatingOpts),{middleware:a}),{x:l,y:n,strategy:o,placement:s}=await ci(this.myDropdown.value,this.menuRef.value,i);this.menuRef.value.setAttribute("data-placement",s),Object.assign(this.menuRef.value.style,{position:o,left:`${l}px`,top:`${n}px`})}}e([Le({type:Boolean,state:!0})],Mi.prototype,"noFlip",void 0),e([Le({type:Boolean,reflect:!0,state:!0})],Mi.prototype,"menuAlignRight",void 0),e([Le({type:String,reflect:!0,state:!0})],Mi.prototype,"drop",void 0),e([Le({type:Object})],Mi.prototype,"floatingOpts",void 0),e([Le({type:Boolean,reflect:!0})],Mi.prototype,"menuIsOpen",void 0),e([Le({type:Boolean,reflect:!0})],Mi.prototype,"disabled",void 0),e([Le({type:Boolean,reflect:!0})],Mi.prototype,"readonly",void 0);class _i extends Mi{constructor(){super(...arguments),this.nextDropdownItemNo=0,this.prevDropdownItemNo=-1,this.hidden=!1}connectedCallback(){super.connectedCallback(),this.addEventListener("sgds-hide",this._resetMenu)}disconnectedCallback(){super.disconnectedCallback(),this.removeEventListener("sgds-hide",this._resetMenu)}firstUpdated(e){super.firstUpdated(e),this.addEventListener("keydown",this._handleKeyboardMenuItemsEvent)}handleSelectSlot(e){const t=this._getActiveMenuItems(),a=t.indexOf(e.target);this.nextDropdownItemNo=a+1,this.prevDropdownItemNo=a<=0?t.length-1:a-1;const i=e.target;i.disabled||(this.emit("sgds-select",{detail:{item:i}}),"outside"!==this.close&&this.hideMenu())}_resetMenu(){this.nextDropdownItemNo=0,this.prevDropdownItemNo=-1;this._getMenuItems().forEach(e=>{var t;const a=null===(t=null==e?void 0:e.shadowRoot)||void 0===t?void 0:t.querySelector(".dropdown-item");a&&a.removeAttribute("tabindex")})}_handleKeyboardMenuItemsEvent(e){if(this.readonly)return;const t=this._getActiveMenuItems();if(0!==t.length)switch(e.key){case"ArrowDown":e.preventDefault(),this._setMenuItem(this.nextDropdownItemNo);break;case"ArrowUp":e.preventDefault(),this._setMenuItem(this.prevDropdownItemNo);break;case"Tab":if(!this.menuIsOpen)return;e.preventDefault(),e.shiftKey?this._setMenuItem(this.prevDropdownItemNo):this._setMenuItem(this.nextDropdownItemNo);break;case"Enter":t.includes(e.target)&&this.handleSelectSlot(e)}}_getMenuItems(){var e,t;if(this.shadowRoot.querySelector("slot#default")){return null===(e=this.shadowRoot.querySelector("slot#default"))||void 0===e?void 0:e.assignedElements({flatten:!0}).filter(e=>!e.classList.contains("empty-menu")&&!e.hasAttribute("hidden"))}if(null===(t=this.menu)||void 0===t?void 0:t.hasChildNodes()){return[...Array.from(this.menu.children)]}return[]}_getActiveMenuItems(){return this._getMenuItems().filter(e=>!e.disabled&&!e.hidden)}_setMenuItem(e){const t=this._getActiveMenuItems();if(0===t.length)return;const a=(e%t.length+t.length)%t.length,i=t[a];this.emit("i-sgds-option-focus",{detail:{option:i}}),this.nextDropdownItemNo=(a+1)%t.length,this.prevDropdownItemNo=(a-1+t.length)%t.length,t.forEach(e=>{const t=e.shadowRoot.querySelector(".dropdown-item");t.setAttribute("tabindex",e===i?"0":"-1"),e===i&&t.focus()})}}_i.styles=Mi.styles,e([Te("ul.dropdown-menu")],_i.prototype,"menu",void 0),e([Ee()],_i.prototype,"nextDropdownItemNo",void 0),e([Ee()],_i.prototype,"prevDropdownItemNo",void 0),e([Le({type:Boolean,reflect:!0})],_i.prototype,"hidden",void 0);class Vi extends _i{constructor(){super(),this.noFlip=!1,this.menuAlignRight=!1,this.drop="down",this.menuRef=Ci()}async _handleClick(){this.disabled||this.toggleMenu()}_handleCloseMenu(){const e=this._toggler[0];null==e||e.focus()}async connectedCallback(){super.connectedCallback(),this.addEventListener("sgds-hide",this._handleCloseMenu)}async disconnectedCallback(){this.removeEventListener("sgds-hide",this._handleCloseMenu)}async firstUpdated(e){super.firstUpdated(e),this.menuIsOpen&&await this.showMenu(),this._handleDisabled()}_handleDisabled(){const e=this._toggler[0];e&&(this.disabled?e.setAttribute("disabled","true"):e.hasAttribute("disabled")&&e.removeAttribute("disabled"))}render(){return oe`
2402
2402
  <div class="dropdown">
2403
2403
  <div
2404
2404
  class="toggler-container"
@@ -2413,7 +2413,7 @@ let Be;$e?.({LitElement:He}),(_e.litElementVersions??=[]).push("4.2.2"),_e.litEl
2413
2413
  <slot id="default" @click=${this.handleSelectSlot}></slot>
2414
2414
  </div>
2415
2415
  </div>
2416
- `}}Vi.styles=[..._i.styles,di,hi],e([Le({type:Boolean,reflect:!0,state:!1})],Vi.prototype,"noFlip",void 0),e([Le({type:Boolean,reflect:!0,state:!1})],Vi.prototype,"menuAlignRight",void 0),e([Le({type:String,reflect:!0,state:!1})],Vi.prototype,"drop",void 0),e([Oe({slot:"toggler",flatten:!0})],Vi.prototype,"_toggler",void 0),e([at("disabled",{waitUntilFirstUpdate:!0})],Vi.prototype,"_handleDisabled",null);var Hi=p`:host([disabled]){cursor:not-allowed}.dropdown-item{align-items:center;background-color:var(--sgds-bg-transparent);clear:both;color:var(--sgds-color-default);cursor:pointer;display:flex;gap:var(--sgds-gap-sm);padding:var(--sgds-padding-sm) var(--sgds-padding-lg);text-align:inherit}.dropdown-item:hover{background-color:var(--sgds-bg-translucent-subtle)}.dropdown-item:focus,.dropdown-item:focus-visible{background-color:var(--sgds-bg-translucent-subtle)}.dropdown-item:focus-visible{outline:var(--sgds-outline-focus);outline-offset:var(--sgds-outline-offset-focus)}.dropdown-item.active{background-color:var(--sgds-bg-translucent-subtle);color:var(--sgds-primary-color-default);text-decoration:none}.dropdown-item.disabled,.dropdown-item:disabled{opacity:var(--sgds-opacity-50);pointer-events:none}::slotted(*){color:inherit!important;display:flex;gap:var(--sgds-gap-sm);text-decoration:none!important}`;class ki extends qe{constructor(){super(...arguments),this.active=!1,this.disabled=!1}connectedCallback(){super.connectedCallback(),this.addEventListener("keydown",e=>{"Enter"===e.key&&this.anchor[0].click()}),this.addEventListener("click",()=>{this.anchor.length>0&&this.anchor[0].click()}),this.setAttribute("role","menuitem"),this.setAttribute("aria-disabled",`${this.disabled}`)}render(){return oe`
2416
+ `}}Vi.styles=[..._i.styles,di,hi],e([Le({type:Boolean,reflect:!0,state:!1})],Vi.prototype,"noFlip",void 0),e([Le({type:Boolean,reflect:!0,state:!1})],Vi.prototype,"menuAlignRight",void 0),e([Le({type:String,reflect:!0,state:!1})],Vi.prototype,"drop",void 0),e([Oe({slot:"toggler",flatten:!0})],Vi.prototype,"_toggler",void 0),e([at("disabled",{waitUntilFirstUpdate:!0})],Vi.prototype,"_handleDisabled",null);var Hi=p`:host([disabled]){cursor:not-allowed}.dropdown-item{align-items:center;background-color:var(--sgds-bg-transparent);clear:both;color:var(--sgds-color-default);cursor:pointer;display:flex;gap:var(--sgds-gap-sm);padding:var(--sgds-padding-sm) var(--sgds-padding-lg);text-align:inherit}.dropdown-item:hover{background-color:var(--sgds-bg-translucent-subtle)}.dropdown-item:focus,.dropdown-item:focus-visible{background-color:var(--sgds-bg-translucent-subtle)}.dropdown-item:focus-visible{outline:var(--sgds-outline-focus);outline-offset:var(--sgds-outline-offset-focus)}.dropdown-item.active{background-color:var(--sgds-bg-translucent-subtle);color:var(--sgds-primary-color-default);text-decoration:none}.dropdown-item.disabled,.dropdown-item:disabled{opacity:var(--sgds-opacity-50);pointer-events:none}::slotted(*){color:inherit!important;display:flex;gap:var(--sgds-gap-sm);text-decoration:none!important}::slotted(a),::slotted(sgds-checkbox){flex:1;margin:calc(var(--sgds-padding-sm)*-1) calc(var(--sgds-padding-lg)*-1);padding:var(--sgds-padding-sm) var(--sgds-padding-lg)}`;class ki extends qe{constructor(){super(...arguments),this.active=!1,this.disabled=!1}connectedCallback(){super.connectedCallback(),this.addEventListener("keydown",e=>{"Enter"===e.key&&this.anchor[0].click()}),this.setAttribute("role","menuitem"),this.setAttribute("aria-disabled",`${this.disabled}`)}render(){return oe`
2417
2417
  <div
2418
2418
  class="dropdown-item ${Ue({disabled:this.disabled,active:this.active})}"
2419
2419
  tabindex=${this.disabled?"-1":"0"}