@watermarkinsights/ripple 5.20.0-alpha.0 → 5.20.0-alpha.10

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 (179) hide show
  1. package/dist/cjs/{app-globals-b26975cf.js → app-globals-259a270b.js} +1 -1
  2. package/dist/cjs/loader.cjs.js +2 -2
  3. package/dist/cjs/priv-option-list.cjs.entry.js +2 -4
  4. package/dist/cjs/ripple.cjs.js +2 -2
  5. package/dist/cjs/wm-option_2.cjs.entry.js +175 -95
  6. package/dist/cjs/wm-tab-item_3.cjs.entry.js +165 -74
  7. package/dist/cjs/wm-tag-input.cjs.entry.js +2 -2
  8. package/dist/cjs/wm-textarea.cjs.entry.js +1 -1
  9. package/dist/cjs/wm-timepicker.cjs.entry.js +2 -2
  10. package/dist/cjs/wm-toggletip.cjs.entry.js +3 -3
  11. package/dist/cjs/wm-uploader.cjs.entry.js +2 -2
  12. package/dist/collection/components/selects/priv-option-list/priv-option-list.js +2 -4
  13. package/dist/collection/components/selects/wm-select/wm-select.css +67 -55
  14. package/dist/collection/components/selects/wm-select/wm-select.js +186 -110
  15. package/dist/collection/components/wm-tabs/wm-tab-item/wm-tab-item.css +30 -21
  16. package/dist/collection/components/wm-tabs/wm-tab-item/wm-tab-item.js +24 -33
  17. package/dist/collection/components/wm-tabs/wm-tab-list/wm-tab-list.css +55 -9
  18. package/dist/collection/components/wm-tabs/wm-tab-list/wm-tab-list.js +171 -90
  19. package/dist/collection/components/wm-tabs/wm-tab-panel/wm-tab-panel.js +1 -1
  20. package/dist/collection/components/wm-tag-input/wm-tag-input.js +2 -2
  21. package/dist/collection/components/wm-textarea/wm-textarea.js +1 -1
  22. package/dist/collection/components/wm-timepicker/wm-timepicker.js +2 -2
  23. package/dist/collection/components/wm-toggletip/wm-toggletip.js +3 -3
  24. package/dist/collection/components/wm-uploader/wm-uploader.js +2 -2
  25. package/dist/esm/{app-globals-0290058e.js → app-globals-ed8cd888.js} +1 -1
  26. package/dist/esm/{chartFunctions-3a54f8ac.js → chartFunctions-613e9c87.js} +1 -1
  27. package/dist/esm/{functions-669184a6.js → functions-38e392cb.js} +1 -1
  28. package/dist/esm/{intl-7906e2d7.js → intl-0b8f342e.js} +1 -1
  29. package/dist/esm/loader.js +2 -2
  30. package/dist/esm/priv-calendar.entry.js +1 -1
  31. package/dist/esm/priv-chart-popover.entry.js +1 -1
  32. package/dist/esm/priv-option-list.entry.js +4 -6
  33. package/dist/esm/ripple.js +2 -2
  34. package/dist/esm/wm-action-menu_2.entry.js +1 -1
  35. package/dist/esm/wm-button.entry.js +1 -1
  36. package/dist/esm/wm-chart.entry.js +3 -3
  37. package/dist/esm/wm-date-range.entry.js +1 -1
  38. package/dist/esm/wm-datepicker.entry.js +1 -1
  39. package/dist/esm/wm-file.entry.js +1 -1
  40. package/dist/esm/wm-flyout.entry.js +2 -2
  41. package/dist/esm/wm-input.entry.js +2 -2
  42. package/dist/esm/wm-line-chart.entry.js +3 -3
  43. package/dist/esm/wm-modal-pss_3.entry.js +2 -2
  44. package/dist/esm/wm-modal_3.entry.js +2 -2
  45. package/dist/esm/wm-navigation_3.entry.js +2 -2
  46. package/dist/esm/wm-navigator.entry.js +1 -1
  47. package/dist/esm/wm-nested-select.entry.js +2 -2
  48. package/dist/esm/wm-optgroup.entry.js +1 -1
  49. package/dist/esm/wm-option_2.entry.js +177 -97
  50. package/dist/esm/wm-pagination.entry.js +2 -2
  51. package/dist/esm/wm-progress-indicator_3.entry.js +2 -2
  52. package/dist/esm/wm-search.entry.js +2 -2
  53. package/dist/esm/wm-snackbar.entry.js +2 -2
  54. package/dist/esm/wm-tab-item_3.entry.js +167 -76
  55. package/dist/esm/wm-tag-input.entry.js +4 -4
  56. package/dist/esm/wm-tag-option.entry.js +1 -1
  57. package/dist/esm/wm-textarea.entry.js +3 -3
  58. package/dist/esm/wm-timepicker.entry.js +3 -3
  59. package/dist/esm/wm-toggletip.entry.js +4 -4
  60. package/dist/esm/wm-uploader.entry.js +4 -4
  61. package/dist/esm-es5/app-globals-ed8cd888.js +1 -0
  62. package/dist/esm-es5/{chartFunctions-3a54f8ac.js → chartFunctions-613e9c87.js} +1 -1
  63. package/dist/esm-es5/{functions-669184a6.js → functions-38e392cb.js} +1 -1
  64. package/dist/esm-es5/{intl-7906e2d7.js → intl-0b8f342e.js} +1 -1
  65. package/dist/esm-es5/loader.js +1 -1
  66. package/dist/esm-es5/priv-calendar.entry.js +1 -1
  67. package/dist/esm-es5/priv-chart-popover.entry.js +1 -1
  68. package/dist/esm-es5/priv-option-list.entry.js +1 -1
  69. package/dist/esm-es5/ripple.js +1 -1
  70. package/dist/esm-es5/wm-action-menu_2.entry.js +1 -1
  71. package/dist/esm-es5/wm-button.entry.js +1 -1
  72. package/dist/esm-es5/wm-chart.entry.js +1 -1
  73. package/dist/esm-es5/wm-date-range.entry.js +1 -1
  74. package/dist/esm-es5/wm-datepicker.entry.js +1 -1
  75. package/dist/esm-es5/wm-file.entry.js +1 -1
  76. package/dist/esm-es5/wm-flyout.entry.js +1 -1
  77. package/dist/esm-es5/wm-input.entry.js +1 -1
  78. package/dist/esm-es5/wm-line-chart.entry.js +1 -1
  79. package/dist/esm-es5/wm-modal-pss_3.entry.js +1 -1
  80. package/dist/esm-es5/wm-modal_3.entry.js +1 -1
  81. package/dist/esm-es5/wm-navigation_3.entry.js +1 -1
  82. package/dist/esm-es5/wm-navigator.entry.js +1 -1
  83. package/dist/esm-es5/wm-nested-select.entry.js +1 -1
  84. package/dist/esm-es5/wm-optgroup.entry.js +1 -1
  85. package/dist/esm-es5/wm-option_2.entry.js +1 -1
  86. package/dist/esm-es5/wm-pagination.entry.js +1 -1
  87. package/dist/esm-es5/wm-progress-indicator_3.entry.js +1 -1
  88. package/dist/esm-es5/wm-search.entry.js +1 -1
  89. package/dist/esm-es5/wm-snackbar.entry.js +1 -1
  90. package/dist/esm-es5/wm-tab-item_3.entry.js +1 -1
  91. package/dist/esm-es5/wm-tag-input.entry.js +1 -1
  92. package/dist/esm-es5/wm-tag-option.entry.js +1 -1
  93. package/dist/esm-es5/wm-textarea.entry.js +1 -1
  94. package/dist/esm-es5/wm-timepicker.entry.js +1 -1
  95. package/dist/esm-es5/wm-toggletip.entry.js +1 -1
  96. package/dist/esm-es5/wm-uploader.entry.js +1 -1
  97. package/dist/ripple/{p-6d32911c.system.entry.js → p-00eaa361.system.entry.js} +1 -1
  98. package/dist/ripple/{p-c85dae6b.entry.js → p-0825151e.entry.js} +1 -1
  99. package/dist/ripple/{p-c70fa14f.entry.js → p-0bce3f83.entry.js} +1 -1
  100. package/dist/ripple/{p-69b38da5.entry.js → p-118093e1.entry.js} +1 -1
  101. package/dist/ripple/{p-4b0b66e0.system.entry.js → p-17964357.system.entry.js} +1 -1
  102. package/dist/ripple/{p-bd37b0f9.system.entry.js → p-1a89139d.system.entry.js} +1 -1
  103. package/dist/ripple/{p-03759d86.system.entry.js → p-1fcf0ea8.system.entry.js} +1 -1
  104. package/dist/ripple/{p-bdac9bec.entry.js → p-2508b801.entry.js} +1 -1
  105. package/dist/ripple/{p-d784f4b4.entry.js → p-26ffcd83.entry.js} +1 -1
  106. package/dist/ripple/{p-55cdfcb4.system.entry.js → p-2b7259cb.system.entry.js} +1 -1
  107. package/dist/ripple/{p-ff6b7376.system.entry.js → p-2db6573e.system.entry.js} +1 -1
  108. package/dist/ripple/{p-1efa25b5.system.entry.js → p-3133ce3c.system.entry.js} +1 -1
  109. package/dist/ripple/{p-9ac6957b.entry.js → p-31bac55d.entry.js} +1 -1
  110. package/dist/ripple/p-3422832f.entry.js +1 -0
  111. package/dist/ripple/{p-c1d6740e.entry.js → p-3612ee73.entry.js} +1 -1
  112. package/dist/ripple/{p-21c100d8.entry.js → p-39a4934f.entry.js} +1 -1
  113. package/dist/ripple/{p-54759960.entry.js → p-41664372.entry.js} +1 -1
  114. package/dist/ripple/{p-c8dfc321.system.entry.js → p-44cc05f6.system.entry.js} +1 -1
  115. package/dist/ripple/{p-c73882de.system.entry.js → p-4602304a.system.entry.js} +1 -1
  116. package/dist/ripple/{p-bb364d6b.entry.js → p-4b8f7d1e.entry.js} +1 -1
  117. package/dist/ripple/{p-b55883ee.entry.js → p-4d0abf7a.entry.js} +1 -1
  118. package/dist/ripple/{p-328b9560.entry.js → p-4df8346a.entry.js} +1 -1
  119. package/dist/ripple/{p-b1282d28.system.entry.js → p-507ea41f.system.entry.js} +1 -1
  120. package/dist/ripple/{p-26ab5004.system.entry.js → p-5405df80.system.entry.js} +1 -1
  121. package/dist/ripple/{p-7d708fab.entry.js → p-56b6d9f6.entry.js} +1 -1
  122. package/dist/ripple/{p-96a7c1b9.system.entry.js → p-56e376b2.system.entry.js} +1 -1
  123. package/dist/ripple/p-598faa0e.js +1 -0
  124. package/dist/ripple/{p-88a7ccee.system.js → p-608971f2.system.js} +1 -1
  125. package/dist/ripple/{p-6ec4129b.entry.js → p-60e16c79.entry.js} +1 -1
  126. package/dist/ripple/{p-95f19440.system.js → p-65abcbb4.system.js} +1 -1
  127. package/dist/ripple/{p-65d3f9c4.system.entry.js → p-667fdcbb.system.entry.js} +1 -1
  128. package/dist/ripple/{p-68e90b50.system.entry.js → p-6a70dc0b.system.entry.js} +1 -1
  129. package/dist/ripple/{p-7394f4e9.system.entry.js → p-7134a305.system.entry.js} +1 -1
  130. package/dist/ripple/{p-059efd2a.entry.js → p-72e1fdb5.entry.js} +1 -1
  131. package/dist/ripple/{p-047e510d.entry.js → p-7c3bf608.entry.js} +1 -1
  132. package/dist/ripple/{p-176dcfc0.system.js → p-7edd25f7.system.js} +1 -1
  133. package/dist/ripple/p-7f132a0e.system.js +1 -0
  134. package/dist/ripple/{p-ebfa5876.entry.js → p-86a61a2a.entry.js} +1 -1
  135. package/dist/ripple/{p-8c73dadf.system.entry.js → p-8d1e0f23.system.entry.js} +1 -1
  136. package/dist/ripple/{p-009a6e5a.entry.js → p-8e2f3a45.entry.js} +1 -1
  137. package/dist/ripple/{p-a0ef456d.entry.js → p-8ec6ec53.entry.js} +1 -1
  138. package/dist/ripple/{p-71cc21a4.entry.js → p-908057b2.entry.js} +1 -1
  139. package/dist/ripple/{p-dbc3a44d.entry.js → p-9202d9e9.entry.js} +1 -1
  140. package/dist/ripple/{p-0ae9b6d3.js → p-92c8361f.js} +1 -1
  141. package/dist/ripple/{p-ad10664f.entry.js → p-957f13fb.entry.js} +1 -1
  142. package/dist/ripple/{p-1ad6c15b.entry.js → p-9609d8e7.entry.js} +1 -1
  143. package/dist/ripple/{p-3c9972a6.system.entry.js → p-960d2cf0.system.entry.js} +1 -1
  144. package/dist/ripple/{p-22d4c7e0.system.entry.js → p-96f86eb4.system.entry.js} +1 -1
  145. package/dist/ripple/{p-ea10c498.entry.js → p-9e89655f.entry.js} +1 -1
  146. package/dist/ripple/{p-f8fd7172.system.entry.js → p-a14dee02.system.entry.js} +1 -1
  147. package/dist/ripple/{p-222624ae.entry.js → p-a5c5c64c.entry.js} +1 -1
  148. package/dist/ripple/p-a6f9a3b2.system.js +1 -0
  149. package/dist/ripple/{p-dfa30c3d.entry.js → p-a7cde3fc.entry.js} +1 -1
  150. package/dist/ripple/{p-acb4d87c.system.entry.js → p-abcdd7be.system.entry.js} +1 -1
  151. package/dist/ripple/{p-0c20a096.system.entry.js → p-b0da7ad4.system.entry.js} +1 -1
  152. package/dist/ripple/{p-6a40014e.system.entry.js → p-b1fb99e4.system.entry.js} +1 -1
  153. package/dist/ripple/{p-91669f66.js → p-b511ebfd.js} +1 -1
  154. package/dist/ripple/p-b921ee01.entry.js +1 -0
  155. package/dist/ripple/{p-036fd03b.system.entry.js → p-bde7e77b.system.entry.js} +1 -1
  156. package/dist/ripple/{p-c0f4f1ea.system.entry.js → p-c7f3ef7f.system.entry.js} +1 -1
  157. package/dist/ripple/p-cf5ad12d.system.entry.js +1 -0
  158. package/dist/ripple/{p-1806e50b.js → p-d815809f.js} +1 -1
  159. package/dist/ripple/{p-fb61a10e.system.entry.js → p-e5c34af5.system.entry.js} +1 -1
  160. package/dist/ripple/{p-e1a15515.system.entry.js → p-e660d0b8.system.entry.js} +1 -1
  161. package/dist/ripple/{p-66489ded.entry.js → p-ecd1c2ba.entry.js} +1 -1
  162. package/dist/ripple/{p-5bf2eb50.system.entry.js → p-f4390a0a.system.entry.js} +1 -1
  163. package/dist/ripple/{p-ae2520e4.entry.js → p-f91fc18d.entry.js} +1 -1
  164. package/dist/ripple/{p-1841c319.system.entry.js → p-f9bbb123.system.entry.js} +1 -1
  165. package/dist/ripple/{p-25c17efe.system.entry.js → p-fbad04d7.system.entry.js} +1 -1
  166. package/dist/ripple/ripple.esm.js +1 -1
  167. package/dist/ripple/ripple.js +1 -1
  168. package/dist/types/components/selects/wm-select/wm-select.d.ts +16 -9
  169. package/dist/types/components/wm-tabs/wm-tab-item/wm-tab-item.d.ts +3 -1
  170. package/dist/types/components/wm-tabs/wm-tab-list/wm-tab-list.d.ts +15 -20
  171. package/dist/types/components.d.ts +2 -23
  172. package/package.json +2 -2
  173. package/dist/esm-es5/app-globals-0290058e.js +0 -1
  174. package/dist/ripple/p-1eb2ec31.system.entry.js +0 -1
  175. package/dist/ripple/p-324f341f.system.js +0 -1
  176. package/dist/ripple/p-9e1ea6e2.entry.js +0 -1
  177. package/dist/ripple/p-ec9f782e.entry.js +0 -1
  178. package/dist/ripple/p-f7ed42b0.system.js +0 -1
  179. package/dist/ripple/p-fbc46f7e.js +0 -1
@@ -937,10 +937,10 @@ const TagInput = class {
937
937
  }
938
938
  }
939
939
  render() {
940
- return (index.h("div", { key: 'a605a67a736cfced28788202c713c9a471829815', class: `wrapper label-${this.labelPosition} ${this.errorMessage ? "invalid" : ""}` }, index.h("div", { key: '2b6e16b5779bfe055260370775e3517378917636', class: "label-wrapper" }, index.h("label", { key: 'b47147159b09e53988dba0f360665853ef522167', class: "label", htmlFor: "input", onMouseEnter: (ev) => this.handleLabelMouseEnter(ev), onMouseLeave: () => functions.hideTooltip() }, this.label), this.requiredField && (index.h("div", { key: '06afe2cbaf6a32989ee70fd50725adb875d9a8b3', class: "required", "aria-hidden": "true" }, "*"))), index.h("div", { key: 'ba9a1ed7545a2f0b3b72ebdf23231de7df9abf20', class: `field-wrapper ${this.el.shadowRoot.activeElement === this.inputEl ? "focused" : ""} ${this.errorMessage ? "invalid" : ""}`, ref: (el) => (this.fieldWrapperEl = el) }, index.h("div", { key: '03b6ba86a93df334ba0af0e5759cb0834f5e002e', class: "upper-row" }, index.h("div", { key: '5a4b29d9cdcc228426a29524d51e47be84728da8', class: "svg-icon svg-search" }), index.h("div", { key: 'ddd1831f74b7a5204b9ee0077bfe475e5782369c', class: `tags-and-input-wrapper` }, index.h("ul", { key: '0f561a33d4fd7dc683d04bc6c47f0e0f6c096f0a', ref: (el) => (this.tagAreaEl = el), class: `tag-area ${this.taggedOptions.length === 0 && "empty"} ${this.isKeying ? "user-is-keying" : ""}`, role: "listbox", "aria-activedescendant": this.focusedTag ? this.focusedTag.id : null, "aria-orientation": "horizontal", "aria-label": `${this.label} ${this.tagAreaInstructions}`, tabindex: this._tagEls.length > 0 ? 0 : -1, "aria-describedby": `info max-tags`, onFocus: (ev) => this.handleTagAreaFocus(ev), onBlur: (ev) => {
940
+ return (index.h("div", { key: '4fe42ced37f66d1da1f80d351d2058f2fa04caed', class: `wrapper label-${this.labelPosition} ${this.errorMessage ? "invalid" : ""}` }, index.h("div", { key: 'feac40a76d0300a640d353789188567b6bce88bd', class: "label-wrapper" }, index.h("label", { key: '8daeb0009a81b3372686cdcaf7823ca66574ea4c', class: "label", htmlFor: "input", onMouseEnter: (ev) => this.handleLabelMouseEnter(ev), onMouseLeave: () => functions.hideTooltip() }, this.label), this.requiredField && (index.h("div", { key: 'a09c606545f86da661d38d30bc2207ee138c903d', class: "required", "aria-hidden": "true" }, "*"))), index.h("div", { key: '9bb84f04fdb72fd60348a7c47f45a7c6d0eb1e1c', class: `field-wrapper ${this.el.shadowRoot.activeElement === this.inputEl ? "focused" : ""} ${this.errorMessage ? "invalid" : ""}`, ref: (el) => (this.fieldWrapperEl = el) }, index.h("div", { key: 'e67ffb9ecd84146e6feec21602eaa00f76b262b8', class: "upper-row" }, index.h("div", { key: 'f91652753a955980cd5079030b161abc19df0581', class: "svg-icon svg-search" }), index.h("div", { key: '6845759499b0f5165c145730c416a6036afb7ed3', class: `tags-and-input-wrapper` }, index.h("ul", { key: '4f785e55658d3f900b05a2de2a69f162339b46bf', ref: (el) => (this.tagAreaEl = el), class: `tag-area ${this.taggedOptions.length === 0 && "empty"} ${this.isKeying ? "user-is-keying" : ""}`, role: "listbox", "aria-activedescendant": this.focusedTag ? this.focusedTag.id : null, "aria-orientation": "horizontal", "aria-label": `${this.label} ${this.tagAreaInstructions}`, tabindex: this._tagEls.length > 0 ? 0 : -1, "aria-describedby": `info max-tags`, onFocus: (ev) => this.handleTagAreaFocus(ev), onBlur: (ev) => {
941
941
  this.focusedTagIndex = undefined;
942
942
  this.handleBlur(ev);
943
- }, onKeyDown: (ev) => this.handleTagAreaKeyDown(ev) }, this.renderTags()), this.isDropdown && this.renderDropdownInput(), this.isTable && this.renderTableInput()), this.isDropdown && (index.h("div", { key: 'cd62e6627ab5932fb436f333cfb4a33ba3404adc', class: "character-count" }, this.charCount, "/", this.characterLimit))), this.renderTagCounter(), this.isDropdown && this.renderDropdown()), this.info && (index.h("div", { key: '7cc8c9ba718417cbea5b26b15f7f671b5ad2ee06', id: "info", class: "info-text" }, this.info)), index.h("div", { key: 'a8be5ef2c7f945226f9136c0009a9ce3bcc33686', id: "error" }, this.errorMessage), index.h("div", { key: '3159070da0e032545bf5e3b2ae1e7d8eb6917e69', class: "sr-only", "aria-live": "polite", ref: (el) => (this.liveRegionEl = el), "aria-atomic": "true" }, this.liveRegionMessage), this.isTable && this.renderTable()));
943
+ }, onKeyDown: (ev) => this.handleTagAreaKeyDown(ev) }, this.renderTags()), this.isDropdown && this.renderDropdownInput(), this.isTable && this.renderTableInput()), this.isDropdown && (index.h("div", { key: 'f6c8abfeba27ff6c8a3e769c90ef8a005ff9a661', class: "character-count" }, this.charCount, "/", this.characterLimit))), this.renderTagCounter(), this.isDropdown && this.renderDropdown()), this.info && (index.h("div", { key: 'f8633a6fe6a65ac8a3b17f4a9fb8ba1fabe1d827', id: "info", class: "info-text" }, this.info)), index.h("div", { key: '09279e977b383947404bb3c47dd41a6461e9e259', id: "error" }, this.errorMessage), index.h("div", { key: 'c9622856c1e7f6fcc9f162563245e561f962252f', class: "sr-only", "aria-live": "polite", ref: (el) => (this.liveRegionEl = el), "aria-atomic": "true" }, this.liveRegionMessage), this.isTable && this.renderTable()));
944
944
  }
945
945
  static get delegatesFocus() { return true; }
946
946
  get el() { return index.getElement(this); }
@@ -81,7 +81,7 @@ const Textarea = class {
81
81
  this.announcement = message;
82
82
  }
83
83
  render() {
84
- return (index.h("div", { key: 'c2bdf3a833b32103d85e4d19572985dde836aeb8', class: `wrapper label-${this.labelPosition} ${this.errorMessage ? "invalid" : ""}` }, index.h("div", { key: '61f16420145b5289639728f06f7a7e9c90ecb220', class: "label-wrapper" }, index.h("label", { key: 'cf3a1d2dbe614498ce76f7d10252ddabe591ffc7', htmlFor: "inputfield", class: "label", onMouseEnter: (ev) => this.handleLabelMouseEnter(ev), onMouseLeave: () => functions.hideTooltip() }, this.label, this.characterLimit && (index.h("span", { key: 'ed53aebd7ba2338ba9a34db8ed84f86266fb01a0', class: "sr-only" }, " ", intl.globalMessages.getCharacterLimit(this.characterLimit)))), this.requiredField && (index.h("span", { key: 'c91d58aa6d531d19ca62227f1f9ae6776dc2e6eb', class: "required", "aria-hidden": "true" }, "*"))), index.h("div", { key: 'abbd117e4231de2ee3d696216d869a3ac3078240', class: "inner-wrapper" }, index.h("div", { key: 'e94b2f9f8bbf6d5e374e68555ac266789283b280', class: `inputfield-wrapper ${this.errorMessage ? "invalid" : ""}`, style: this.inputWidth ? { width: this.inputWidth } : {} }, index.h("textarea", { key: '908e5bb512ed6253d5f1c9cb593f74cf5766ef8c', id: "inputfield", disabled: this.isDisabled, "aria-describedby": "info error", onInput: (ev) => this.handleInput(ev), onBlur: () => this.handleBlur(), placeholder: this.placeholder, autocomplete: "off", "aria-required": this.requiredField ? "true" : null, value: this.value, rows: 3, style: { height: this.inputHeight } }), this.characterLimit && typeof this.characterLimit === "number" ? (index.h("div", { class: `character-count ${this.value.length > this.characterLimit ? "exceeded" : ""}` }, this.charCount, "/", this.characterLimit)) : ("")), this.info && (index.h("div", { key: '51239b18371da181395d159315d280e1993383cd', id: "info", class: "info" }, this.info)), index.h("div", { key: 'dd678537871b6ac6efeec23995a1c8bb5a9c3fbb', id: "error", class: "error-message" }, this.errorMessage), index.h("div", { key: '54e35dfe321a05965fc555814cdd3235457a0871', id: "live-polite", class: "sr-only", "aria-live": "polite", "aria-atomic": "true", ref: (el) => (this.liveRegionEl = el) }, this.announcement))));
84
+ return (index.h("div", { key: '7f63d4224b5570bac29bf622adbd24c12a987fce', class: `wrapper label-${this.labelPosition} ${this.errorMessage ? "invalid" : ""}` }, index.h("div", { key: '4b0b469d325eec11069f363f5e7bd44d67a10a46', class: "label-wrapper" }, index.h("label", { key: '9f7494233096cd6bd246a0994d3e9e04f4ded813', htmlFor: "inputfield", class: "label", onMouseEnter: (ev) => this.handleLabelMouseEnter(ev), onMouseLeave: () => functions.hideTooltip() }, this.label, this.characterLimit && (index.h("span", { key: '558c487419c9906646191d3f57e3826f0e0474ec', class: "sr-only" }, " ", intl.globalMessages.getCharacterLimit(this.characterLimit)))), this.requiredField && (index.h("span", { key: '5efa5cc6d810b34ecb81da1ac013827961b9400f', class: "required", "aria-hidden": "true" }, "*"))), index.h("div", { key: 'caa5d6620b159c6cf24b763afd546c5ab958d625', class: "inner-wrapper" }, index.h("div", { key: '160d74581d77259428c48c0ade43038280820e10', class: `inputfield-wrapper ${this.errorMessage ? "invalid" : ""}`, style: this.inputWidth ? { width: this.inputWidth } : {} }, index.h("textarea", { key: '00698ddec17a31ed6cd4ffc27e126bfeaa6aa185', id: "inputfield", disabled: this.isDisabled, "aria-describedby": "info error", onInput: (ev) => this.handleInput(ev), onBlur: () => this.handleBlur(), placeholder: this.placeholder, autocomplete: "off", "aria-required": this.requiredField ? "true" : null, value: this.value, rows: 3, style: { height: this.inputHeight } }), this.characterLimit && typeof this.characterLimit === "number" ? (index.h("div", { class: `character-count ${this.value.length > this.characterLimit ? "exceeded" : ""}` }, this.charCount, "/", this.characterLimit)) : ("")), this.info && (index.h("div", { key: 'bf3461f07b38d3ef97143cf3cf1b6d1f2351e079', id: "info", class: "info" }, this.info)), index.h("div", { key: '39a86570c355661e0136b1bd4855d68fec298514', id: "error", class: "error-message" }, this.errorMessage), index.h("div", { key: '274ebbb587acc31f4d9ffda5d1ba01f279a9053c', id: "live-polite", class: "sr-only", "aria-live": "polite", "aria-atomic": "true", ref: (el) => (this.liveRegionEl = el) }, this.announcement))));
85
85
  }
86
86
  get el() { return index.getElement(this); }
87
87
  static get watchers() { return {
@@ -292,13 +292,13 @@ const Timepicker = class {
292
292
  return this.times.map((time, index$1) => (index.h("li", { id: `option${index$1 + 1}`, "data-time": time, role: "option", onClick: () => this.handleOptionClick(time) }, this.reformatTimeInternal("12", time))));
293
293
  }
294
294
  render() {
295
- return (index.h(index.Host, { key: 'e05ceac51a9193466dff7a488803f09ae91c837a', onBlur: () => this.close(false) }, index.h("div", { key: '4bdd4087ff1b8c4956623571dc168d761646ce4e', class: `wrapper label-${this.labelPosition} ${!!this.errorMessage ? "invalid" : ""}`, ref: (t) => (this.tpWrapper = t) }, index.h("div", { key: 'c64a7486a1c3b74f61c94ce0b3f59c45e96b639e', class: "label-wrapper" }, this.labelPosition !== "none" && (index.h("label", { key: 'cce428cf638a5932b1c157794e646f0b8026e1db', id: "label", class: "label", htmlFor: "time-input", onMouseEnter: (ev) => this.handleLabelMouseEnter(ev), onMouseLeave: () => functions.hideTooltip() }, this.label)), this.labelPosition !== "none" && this.requiredField && (index.h("div", { key: '655e1585ffdb70eed624eeec16aa270f3f6584b6', "aria-hidden": "true", class: "required" }, "*"))), index.h("div", { key: '85bf657eff58d0774a25d20c0eba53d7deadd98d' }, index.h("div", { key: '0152b10359dcb69a47275ee88e0a5c0b8cacf051', class: "inner-wrapper" }, index.h("input", { key: '32a55fbfebecafa786cafafc540016f52fcbf38a', id: "time-input", "aria-label": this.label, "aria-describedby": "error", ref: (el) => (this.inputEl = el), onBlur: () => this.handleInputBlur(), onInput: () => (this.value = this.inputEl.value), disabled: this.isDisabled, "aria-required": this.requiredField ? "true" : null, placeholder: this.timeFormat, autocomplete: "off", value: this.value, onFocus: () => this.tpWrapper.classList.add("focus") }), index.h("button", { key: '4c77218b291d0d3858c456c816a608b6d2e6d8c6', id: "btn", ref: (el) => (this.buttonEl = el), disabled: this.isDisabled, "aria-controls": "list", "aria-expanded": this.isExpanded ? "true" : "false", "aria-label": this.buttonAriaLabel, "aria-describedby": "time-input", onClick: () => (this.isExpanded ? this.close() : this.open()),
295
+ return (index.h(index.Host, { key: '85faaac7eaff466eef31897a1d02e29d7ec7b223', onBlur: () => this.close(false) }, index.h("div", { key: '82f88250e7090d6517e7ecd25a4423ff0b7638d7', class: `wrapper label-${this.labelPosition} ${!!this.errorMessage ? "invalid" : ""}`, ref: (t) => (this.tpWrapper = t) }, index.h("div", { key: '114df6b8a382f59b8b6ea238c29051c1ddf568a0', class: "label-wrapper" }, this.labelPosition !== "none" && (index.h("label", { key: 'd26dcc57be0e23f599d64df50520056cf88c9bf9', id: "label", class: "label", htmlFor: "time-input", onMouseEnter: (ev) => this.handleLabelMouseEnter(ev), onMouseLeave: () => functions.hideTooltip() }, this.label)), this.labelPosition !== "none" && this.requiredField && (index.h("div", { key: '2b47dbd56c50265a5128a1c77e312b5745db6e2e', "aria-hidden": "true", class: "required" }, "*"))), index.h("div", { key: '46df6ba5efc5d779fb301b2e799f19e6acd6a48f' }, index.h("div", { key: '13c58fb83da101c3ffba9f7647ad3202898db08a', class: "inner-wrapper" }, index.h("input", { key: 'dc442e2553f0c070355744ad614b2543eac29c62', id: "time-input", "aria-label": this.label, "aria-describedby": "error", ref: (el) => (this.inputEl = el), onBlur: () => this.handleInputBlur(), onInput: () => (this.value = this.inputEl.value), disabled: this.isDisabled, "aria-required": this.requiredField ? "true" : null, placeholder: this.timeFormat, autocomplete: "off", value: this.value, onFocus: () => this.tpWrapper.classList.add("focus") }), index.h("button", { key: '298e10e7a3edb327d37d7450e3780aeb483934c6', id: "btn", ref: (el) => (this.buttonEl = el), disabled: this.isDisabled, "aria-controls": "list", "aria-expanded": this.isExpanded ? "true" : "false", "aria-label": this.buttonAriaLabel, "aria-describedby": "time-input", onClick: () => (this.isExpanded ? this.close() : this.open()),
296
296
  // This addresses an issue in Safari, where clicking buttons does not focus them
297
297
  // if the button does not receive focus when clicked, Timepicker incorrectly emits a blur event
298
298
  onMouseDown: (ev) => {
299
299
  ev.preventDefault();
300
300
  this.buttonEl.focus();
301
- } }, index.h("span", { key: '0211abd0a1e89e3fd48278022f45572a8696a8de', class: "svg-icon svg-time" })), index.h("ul", { key: 'e7db5d8e3853b0c64099996064c17e361f3f0119', class: `options ${this.isExpanded ? "open" : ""} ${this.openUp ? "upwards" : ""}`, id: "list", role: "listbox", "aria-labelledby": "label", "aria-describedby": this.isExpanded ? "collapsed" : null, tabindex: -1, ref: (el) => (this.optionsEl = el) }, this.renderOptions())), index.h("div", { key: 'bb587cbf052b2b54ff5cd54cd1ee26e1015adf86', id: "error", class: "error" }, this.errorMessage)), index.h("div", { key: 'bf8d0736ecbd1c987b0d5c15a87537be665812d7', id: "live-polite", class: "sr-only", "aria-live": "polite", "aria-atomic": "true", ref: (el) => (this.liveRegionEl = el) }))));
301
+ } }, index.h("span", { key: 'f5269ee6b6266dd404f11b5c6cc943082dd539f7', class: "svg-icon svg-time" })), index.h("ul", { key: '219ad64e4a20f478927adff1af541ecc0b8ca688', class: `options ${this.isExpanded ? "open" : ""} ${this.openUp ? "upwards" : ""}`, id: "list", role: "listbox", "aria-labelledby": "label", "aria-describedby": this.isExpanded ? "collapsed" : null, tabindex: -1, ref: (el) => (this.optionsEl = el) }, this.renderOptions())), index.h("div", { key: '709e44a44ed4f99a7cbdbc4dacd461f73615324c', id: "error", class: "error" }, this.errorMessage)), index.h("div", { key: '0b9919a2c9701b6b76b76b780fd35a240eb2adf6', id: "live-polite", class: "sr-only", "aria-live": "polite", "aria-atomic": "true", ref: (el) => (this.liveRegionEl = el) }))));
302
302
  }
303
303
  static get delegatesFocus() { return true; }
304
304
  get el() { return index.getElement(this); }
@@ -238,11 +238,11 @@ const Toggletip = class {
238
238
  }
239
239
  }
240
240
  render() {
241
- return (index.h(index.Host, { key: 'f8a626c9e0311a0a05d58d12787c0e9a3be5ca8a', class: `size-${this.targetSize}` }, index.h("button", { key: 'c2e2dbc45ce9900a8025973f0fd7a3870eca0afa', ref: (el) => (this.buttonEl = el), class: "button", type: "button", "aria-label": this.label, popoverTarget: "toggletip", popoverTargetAction: "toggle", onClick: () => this.open(),
241
+ return (index.h(index.Host, { key: '19824ec52b7d5a97250fdf7099041c47a9c10667', class: `size-${this.targetSize}` }, index.h("button", { key: '8442fd803719d93d0354dec15c8f17085f22d955', ref: (el) => (this.buttonEl = el), class: "button", type: "button", "aria-label": this.label, popoverTarget: "toggletip", popoverTargetAction: "toggle", onClick: () => this.open(),
242
242
  // In order to position the tooltip identically to the toggletip, its presence is determined by these four events
243
- onMouseEnter: () => !this.isOpen && functions.showTooltip(this.toggletipPosition, this.el, this.tooltipMessage), onMouseLeave: () => functions.hideTooltip(), onFocus: () => !this.isOpen && functions.showTooltip(this.toggletipPosition, this.el, this.tooltipMessage), onBlur: () => this.handleBlur() }, this.renderIcon()), index.h("div", { key: '3a786c92826bc07b6ec0bb3119f1adfeacc25656', popover: "", ref: (el) => (this.toggletipEl = el), class: `toggletip ${this.targetSize} ${this.isHidden ? "hidden" : ""}`, id: "toggletip",
243
+ onMouseEnter: () => !this.isOpen && functions.showTooltip(this.toggletipPosition, this.el, this.tooltipMessage), onMouseLeave: () => functions.hideTooltip(), onFocus: () => !this.isOpen && functions.showTooltip(this.toggletipPosition, this.el, this.tooltipMessage), onBlur: () => this.handleBlur() }, this.renderIcon()), index.h("div", { key: 'dfd429b739ef31459a4957a8cfd36c0279e83e24', popover: "", ref: (el) => (this.toggletipEl = el), class: `toggletip ${this.targetSize} ${this.isHidden ? "hidden" : ""}`, id: "toggletip",
244
244
  // @ts-ignore - despite what Typescript says, this is a valid event for popover elements
245
- onToggle: (ev) => this.handlePopoverToggle(ev) }, this.tooltip), index.h("div", { key: '7ed3b737df01ff9b2bbf3182e8cf3b3188d24b83', ref: (el) => (this.liveRegionEl = el), class: "live-region sr-only", role: "status", "aria-live": "polite", "aria-atomic": "true" })));
245
+ onToggle: (ev) => this.handlePopoverToggle(ev) }, this.tooltip), index.h("div", { key: 'af70f189b7f510fc3ae813edfd958050b11e636c', ref: (el) => (this.liveRegionEl = el), class: "live-region sr-only", role: "status", "aria-live": "polite", "aria-atomic": "true" })));
246
246
  }
247
247
  static get delegatesFocus() { return true; }
248
248
  get el() { return index.getElement(this); }
@@ -323,9 +323,9 @@ const Uploader = class {
323
323
  return (index.h("div", { class: `drop-area -${this.dropArea}`, ref: (el) => (this.dropAreaEl = el), onDragEnter: (ev) => this.handleDragEnter(ev), onDragOver: (ev) => this.handleDragOver(ev), onDragLeave: (ev) => this.handleDragLeave(ev), onDrop: (ev) => this.handleDrop(ev) }, this.dropArea == "page" && (index.h("div", { ref: (el) => (this.dropOverlayEl = el), class: "drop-overlay", popover: "manual" }, index.h("span", { class: "upload-arrow" }), index.h("span", null, "Drop to Upload")))));
324
324
  }
325
325
  render() {
326
- return (index.h(index.Host, { key: '480a7275b0ebb68564f92433c8c522769ce60bc3', class: `-${this.dropArea}` }, this.uploaderType == "drop" && this.renderDropArea(), this.label && this.renderLabel(), this.renderHeader(), this.renderListContainer(), index.h("div", { key: 'b2cec25d91186e5c8a8b7b851fe116bdfdd8c174', ref: (el) => (this.assertiveLiveRegionEl = el), class: "live-region sr-only", "aria-live": "assertive" // since it's directly linked to the action the user took, it should be read in priority. With polite, some messages get dismissed in favor of the page title
326
+ return (index.h(index.Host, { key: 'f6796cb24519a9cce643c24c69abeb9d33c8632f', class: `-${this.dropArea}` }, this.uploaderType == "drop" && this.renderDropArea(), this.label && this.renderLabel(), this.renderHeader(), this.renderListContainer(), index.h("div", { key: 'ffe55bea4476877b4df8f3c2df3edcb7ac9ab673', ref: (el) => (this.assertiveLiveRegionEl = el), class: "live-region sr-only", "aria-live": "assertive" // since it's directly linked to the action the user took, it should be read in priority. With polite, some messages get dismissed in favor of the page title
327
327
  ,
328
- "aria-atomic": "true" }), index.h("div", { key: 'eeb50c37630ba08df7e6be89ec30a55cefeafd9a', ref: (el) => (this.politeLiveRegionEl = el), class: "live-region sr-only", "aria-live": "polite", "aria-atomic": "true" })));
328
+ "aria-atomic": "true" }), index.h("div", { key: 'b38debdfda642c215bbb570082dfdeef24da8a8f', ref: (el) => (this.politeLiveRegionEl = el), class: "live-region sr-only", "aria-live": "polite", "aria-atomic": "true" })));
329
329
  }
330
330
  static get delegatesFocus() { return true; }
331
331
  get el() { return index.getElement(this); }
@@ -349,9 +349,7 @@ export class PrivOptionList {
349
349
  : selectMessages.optgroupSingleSelectionCount())))));
350
350
  }
351
351
  renderSearchField() {
352
- return (h("div", { class: "search" }, h("div", { class: "searchfield-wrapper", ref: (el) => (this.searchFieldWrapperEl = el) }, h("div", { class: "svg-icon svg-search" }), h("input", { ref: (el) => (this.searchFieldEl = el), class: "searchfield", role: "combobox", "aria-controls": "list",
353
- // aria-expanded={this.isExpanded ? "true" : "false"}
354
- onKeyDown: (ev) => this.handleKeyDown(ev), onFocus: () => this.searchFieldWrapperEl.classList.add("focus"), onBlur: (ev) => this.handleSearchFieldBlur(ev), onInput: () => this.debouncedSearch(), placeholder: this.searchPlaceholder }))));
352
+ return (h("div", { class: "search" }, h("div", { class: "searchfield-wrapper", ref: (el) => (this.searchFieldWrapperEl = el) }, h("div", { class: "svg-icon svg-search" }), h("input", { ref: (el) => (this.searchFieldEl = el), class: "searchfield", role: "combobox", "aria-controls": "list", onKeyDown: (ev) => this.handleKeyDown(ev), onFocus: () => this.searchFieldWrapperEl.classList.add("focus"), onBlur: (ev) => this.handleSearchFieldBlur(ev), onInput: () => this.debouncedSearch(), placeholder: this.searchPlaceholder }))));
355
353
  }
356
354
  renderSearchFailedMessage() {
357
355
  return h("div", { class: "search-results-message" }, selectMessages.noSearchResults);
@@ -369,7 +367,7 @@ export class PrivOptionList {
369
367
  return (h("div", { class: "non-options-wrapper" }, this.isInNestedSelect && this.renderReturnBtn(), this.search && this.renderSearchField(), this.visibleSelectAllButton && this.renderSelectAllButton()));
370
368
  }
371
369
  render() {
372
- return (h("div", { key: '1b5a638b1ce9746eba27e3b106f910b6c08d59ed', class: "list-wrapper" }, (this.isInNestedSelect || this.search || this.visibleSelectAllButton) && this.renderNonOptions(), h("div", { key: '314e0a7234cdb65a636ea96bb9a5bc3ea94cf9aa', id: "list", class: "options-wrapper", tabindex: -1, role: "listbox", "aria-multiselectable": this.multiple ? "true" : null, "aria-labelledby": "label", ref: (el) => (this.listboxEl = el), style: { "--max-height": this.effectiveMaxHeight } }, this.searchTerm && this.filteredOptions.length === 0 && this.renderSearchFailedMessage(), this.multiple && this.renderCloneOptions(), h("slot", { key: '4399f882be1d24b5ee799126b1c8b7396f4985d7' })), h("div", { key: '4132af7d3529fdfa3ec301baa9aaf7ad460f9f5e', id: "optionlist-announcement", "aria-live": "polite", "aria-atomic": "true", class: "sr-only", ref: (el) => (this.liveRegionEl = el) }, this.announcement)));
370
+ return (h("div", { key: '9f19650526738eefcf2e2de58b812d9d0d3a21af', class: "list-wrapper" }, (this.isInNestedSelect || this.search || this.visibleSelectAllButton) && this.renderNonOptions(), h("div", { key: '381b60f8cb2dc58f7c268e75e6d0e78879393f0d', id: "list", class: "options-wrapper", tabindex: -1, role: "listbox", "aria-multiselectable": this.multiple ? "true" : null, "aria-labelledby": "label", ref: (el) => (this.listboxEl = el), style: { "--max-height": this.effectiveMaxHeight } }, this.searchTerm && this.filteredOptions.length === 0 && this.renderSearchFailedMessage(), this.multiple && this.renderCloneOptions(), h("slot", { key: '6a99161cdb2d3c4b6b1bfbe9b4af333daa4704de' })), h("div", { key: '8cee667df6aa79c7db5511858a73f68e911cc566', id: "optionlist-announcement", "aria-live": "polite", "aria-atomic": "true", class: "sr-only", ref: (el) => (this.liveRegionEl = el) }, this.announcement)));
373
371
  }
374
372
  static get is() { return "priv-option-list"; }
375
373
  static get originalStyleUrls() {
@@ -878,6 +878,10 @@
878
878
  --wmcolor-select-selectall-border: var(--wmcolor-select-option-border);
879
879
  --wmcolor-select-selectall-text: var(--wmcolor-interactive);
880
880
  --wmcolor-select-text: var(--wmcolor-interactive);
881
+ --button-width: auto;
882
+ --dropdown-left: 0;
883
+ --dropdown-translate-y: 0;
884
+ --dropdown-max-height: none;
881
885
  position: relative;
882
886
  display: block;
883
887
  box-sizing: border-box;
@@ -975,14 +979,16 @@
975
979
  margin-left: 0.75rem;
976
980
  }
977
981
 
978
- .wrapper .button-wrapper {
982
+ .button-wrapper {
979
983
  position: relative;
980
984
  flex: 1;
981
985
  font-size: 1.125rem;
982
986
  color: var(--wmcolor-select-text);
983
987
  min-width: 8.75rem;
984
988
  }
985
- .wrapper .button-wrapper .displayedoption {
989
+
990
+ .displayedoption {
991
+ anchor-name: --select-button;
986
992
  -webkit-border-radius: 3px;
987
993
  -moz-border-radius: 3px;
988
994
  -ms-border-radius: 3px;
@@ -1009,118 +1015,112 @@
1009
1015
  text-align: left;
1010
1016
  }
1011
1017
  @media only screen and (max-width: 768px) {
1012
- .wrapper .button-wrapper .displayedoption {
1018
+ .displayedoption {
1013
1019
  height: 2.75rem;
1014
1020
  }
1015
1021
  }
1016
- .wrapper .button-wrapper .displayedoption .expand-icon {
1022
+ .displayedoption .expand-icon {
1017
1023
  --icon-size: 1.125rem;
1018
1024
  position: absolute;
1019
1025
  inset-inline-end: 0.5625rem;
1020
1026
  }
1021
- .wrapper .button-wrapper .displayedoption:hover:not(:disabled):not(.-disabled):not(.-raised) {
1027
+ .displayedoption:hover:not(:disabled):not(.-disabled):not(.-raised) {
1022
1028
  background: var(--wmcolor-select-background);
1023
1029
  text-decoration: none;
1024
1030
  }
1025
- .wrapper .button-wrapper .displayedoption:active {
1031
+ .displayedoption:active {
1026
1032
  -ms-transform: initial;
1027
1033
  transform: initial;
1028
1034
  }
1029
- .wrapper .button-wrapper .displayedoption:focus {
1035
+ .displayedoption:focus {
1030
1036
  outline: none;
1031
1037
  }
1032
- .wrapper .button-wrapper .displayedoption::-moz-focus-inner {
1038
+ .displayedoption::-moz-focus-inner {
1033
1039
  border: 0;
1034
1040
  }
1035
- .wrapper .button-wrapper .displayedoption:focus-visible {
1041
+ .displayedoption:focus-visible {
1036
1042
  outline: 3px solid var(--wmcolor-interactive-focus);
1037
1043
  outline-offset: 2px;
1038
1044
  }
1039
- .wrapper .button-wrapper .displayedoption .overflowcontrol {
1045
+ .displayedoption .overflowcontrol {
1040
1046
  display: block;
1041
1047
  white-space: nowrap;
1042
1048
  text-overflow: ellipsis;
1043
1049
  overflow: hidden;
1044
1050
  flex: 1;
1045
1051
  }
1046
- .wrapper .button-wrapper .displayedoption .overflowcontrol.hassubinfo {
1052
+ .displayedoption .overflowcontrol.hassubinfo {
1047
1053
  display: flex;
1048
1054
  }
1049
- .wrapper .button-wrapper .displayedoption .overflowcontrol.hassubinfo .button-text {
1055
+ .displayedoption .overflowcontrol.hassubinfo .button-text {
1050
1056
  flex: 1;
1051
1057
  text-overflow: ellipsis;
1052
1058
  overflow: hidden;
1053
1059
  min-width: 0;
1054
1060
  }
1055
- .wrapper .button-wrapper .displayedoption .overflowcontrol.hassubinfo .subinfo {
1061
+ .displayedoption .overflowcontrol.hassubinfo .subinfo {
1056
1062
  flex: none;
1057
1063
  font-style: italic;
1058
1064
  }
1059
- .wrapper .button-wrapper .displayedoption .overflow-counter {
1065
+ .displayedoption .overflow-counter {
1060
1066
  font-weight: bold;
1061
1067
  margin-left: 0.5rem;
1062
1068
  }
1063
- .wrapper .button-wrapper > .displayedoption[disabled] {
1069
+
1070
+ .displayedoption[disabled] {
1064
1071
  color: var(--wmcolor-select-option-text-disabled);
1065
1072
  border-color: var(--wmcolor-border-dark);
1066
1073
  background: var(--wmcolor-select-option-background-disabled);
1067
1074
  cursor: default;
1068
1075
  }
1069
- .wrapper .button-wrapper > .dropdown {
1070
- -webkit-overflow-scrolling: touch;
1076
+
1077
+ .dropdown {
1078
+ margin: 0;
1079
+ padding: 0;
1080
+ width: unset;
1081
+ position: absolute;
1071
1082
  -webkit-box-shadow: 0 4px 15px 0 rgba(0, 0, 0, 0.2);
1072
1083
  -moz-box-shadow: 0 4px 15px 0 rgba(0, 0, 0, 0.2);
1073
1084
  box-shadow: 0 4px 15px 0 rgba(0, 0, 0, 0.2);
1074
- -ms-transition: transform 0.25s ease;
1075
- -webkit-transition: transform 0.25s ease;
1076
- -moz-transition: transform 0.25s ease;
1077
- transition: transform 0.25s ease;
1078
- -ms-transform: scale(1, 0);
1079
- -webkit-transform: scale(1, 0);
1080
- -moz-transform: scale(1, 0);
1081
- transform: scale(1, 0);
1082
- -ms-transform-origin: center top;
1083
- -webkit-transform-origin: center top;
1084
- -moz-transform-origin: center top;
1085
- transform-origin: center top;
1085
+ border: none;
1086
1086
  -webkit-border-radius: 3px;
1087
1087
  -moz-border-radius: 3px;
1088
1088
  -ms-border-radius: 3px;
1089
1089
  border-radius: 3px;
1090
- position: absolute;
1091
- top: 40px;
1092
- right: 0;
1090
+ -webkit-overflow-scrolling: touch;
1093
1091
  background: var(--wmcolor-select-option-background);
1094
- z-index: 100;
1095
- width: 100%;
1096
1092
  font-size: 0.875rem;
1097
1093
  max-height: var(--max-height);
1098
1094
  overflow-y: auto;
1099
1095
  }
1100
- .wrapper .button-wrapper > .dropdown.upwards {
1101
- top: unset;
1102
- bottom: 100%;
1103
- -ms-transform-origin: center bottom;
1104
- -webkit-transform-origin: center bottom;
1105
- -moz-transform-origin: center bottom;
1106
- transform-origin: center bottom;
1107
- }
1108
- .wrapper .button-wrapper > .dropdown.hidden {
1096
+ .dropdown.hidden {
1109
1097
  visibility: hidden;
1110
1098
  }
1111
- .wrapper .button-wrapper > .dropdown.open {
1112
- -ms-transform: scale(1, 1);
1113
- -webkit-transform: scale(1, 1);
1114
- -moz-transform: scale(1, 1);
1115
- transform: scale(1, 1);
1099
+
1100
+ @supports (top: anchor(bottom)) {
1101
+ .dropdown {
1102
+ position-anchor: --select-button;
1103
+ top: anchor(bottom);
1104
+ left: anchor(left);
1105
+ right: anchor(right);
1106
+ visibility: hidden;
1107
+ }
1108
+ .dropdown.is-open {
1109
+ visibility: visible;
1110
+ }
1111
+ .dropdown.upward {
1112
+ top: unset;
1113
+ bottom: anchor(top);
1114
+ }
1116
1115
  }
1117
- .wrapper.invalid .button-wrapper .displayedoption {
1116
+ .invalid .displayedoption {
1118
1117
  -webkit-box-shadow: 0 0 0 1px var(--wmcolor-border-error);
1119
1118
  -moz-box-shadow: 0 0 0 1px var(--wmcolor-border-error);
1120
1119
  box-shadow: 0 0 0 1px var(--wmcolor-border-error);
1121
1120
  border-color: var(--wmcolor-border-error);
1122
1121
  }
1123
- .wrapper .error-message {
1122
+
1123
+ .error-message {
1124
1124
  display: block;
1125
1125
  font-style: italic;
1126
1126
  color: var(--wmcolor-text-error);
@@ -1129,7 +1129,7 @@
1129
1129
  top: 100%;
1130
1130
  left: 0;
1131
1131
  }
1132
- .wrapper .error-message:not(:empty) {
1132
+ .error-message:not(:empty) {
1133
1133
  margin-top: 0.25rem;
1134
1134
  }
1135
1135
 
@@ -1141,10 +1141,6 @@
1141
1141
  }
1142
1142
 
1143
1143
  .rtl > .dropdown {
1144
- -ms-transform-origin: left top;
1145
- -webkit-transform-origin: left top;
1146
- -moz-transform-origin: left top;
1147
- transform-origin: left top;
1148
1144
  left: 0;
1149
1145
  right: auto;
1150
1146
  }
@@ -1159,4 +1155,20 @@
1159
1155
  .rtl > .displayedoption:before {
1160
1156
  right: auto;
1161
1157
  left: 0.5625rem;
1158
+ }
1159
+
1160
+ @supports not (top: anchor(bottom)) {
1161
+ .dropdown {
1162
+ position: fixed !important;
1163
+ z-index: 30;
1164
+ inset: auto;
1165
+ width: var(--button-width, auto) !important;
1166
+ top: 0 !important;
1167
+ left: var(--dropdown-left, 0) !important;
1168
+ transform: translate(0, var(--dropdown-translate-y, 0)) !important;
1169
+ max-height: var(--dropdown-max-height, none) !important;
1170
+ }
1171
+ .dropdown.hidden {
1172
+ visibility: hidden;
1173
+ }
1162
1174
  }