@aurodesignsystem/auro-formkit 2.0.0-beta.35 → 2.0.0-beta.37

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 (260) hide show
  1. package/.turbo/cache/03338963f2ae4c89-meta.json +1 -0
  2. package/.turbo/cache/03338963f2ae4c89.tar.zst +0 -0
  3. package/.turbo/cache/06dfc9c20aacd0fa-meta.json +1 -0
  4. package/.turbo/cache/075034ccdb82fbea-meta.json +1 -0
  5. package/.turbo/cache/0ff927ad868537f6-meta.json +1 -0
  6. package/.turbo/cache/0ff927ad868537f6.tar.zst +0 -0
  7. package/.turbo/cache/10b8500a6b0c6655-meta.json +1 -0
  8. package/.turbo/cache/138466aaa06fa946-meta.json +1 -0
  9. package/.turbo/cache/1a8525cb6ad91e2a-meta.json +1 -0
  10. package/.turbo/cache/1d4e8167ea8e924f-meta.json +1 -0
  11. package/.turbo/cache/209b5682475d8333-meta.json +1 -0
  12. package/.turbo/cache/2289d12debb3c42c-meta.json +1 -0
  13. package/.turbo/cache/22fc147c04804f70-meta.json +1 -0
  14. package/.turbo/cache/24e457ee9e1ebc05-meta.json +1 -0
  15. package/.turbo/cache/24e457ee9e1ebc05.tar.zst +0 -0
  16. package/.turbo/cache/28ade2a49ef35074-meta.json +1 -0
  17. package/.turbo/cache/{a57b56e1d77cb964.tar.zst → 28ade2a49ef35074.tar.zst} +0 -0
  18. package/.turbo/cache/3025cdff2ca7afbf-meta.json +1 -0
  19. package/.turbo/cache/3082b3a86c0f9b94-meta.json +1 -0
  20. package/.turbo/cache/3cac4f0ba5726b97-meta.json +1 -0
  21. package/.turbo/cache/{636856e9513dd881.tar.zst → 3cac4f0ba5726b97.tar.zst} +0 -0
  22. package/.turbo/cache/405ad11306c010b0-meta.json +1 -0
  23. package/.turbo/cache/405ad11306c010b0.tar.zst +0 -0
  24. package/.turbo/cache/43995f6c84a2de33-meta.json +1 -0
  25. package/.turbo/cache/43995f6c84a2de33.tar.zst +0 -0
  26. package/.turbo/cache/4a09314b87cc414d-meta.json +1 -0
  27. package/.turbo/cache/{b770ff022e446032.tar.zst → 4a09314b87cc414d.tar.zst} +0 -0
  28. package/.turbo/cache/4aadd7fe6b69cccf-meta.json +1 -0
  29. package/.turbo/cache/4aadd7fe6b69cccf.tar.zst +0 -0
  30. package/.turbo/cache/5b3bb164db4c477c-meta.json +1 -0
  31. package/.turbo/cache/667079b4045c11a9-meta.json +1 -0
  32. package/.turbo/cache/667079b4045c11a9.tar.zst +0 -0
  33. package/.turbo/cache/68c6e1baddbae823-meta.json +1 -0
  34. package/.turbo/cache/6bfd7cffad1e6b8a-meta.json +1 -0
  35. package/.turbo/cache/6c4a349c3dc6cd53-meta.json +1 -0
  36. package/.turbo/cache/6c4a349c3dc6cd53.tar.zst +0 -0
  37. package/.turbo/cache/6d48e8dc24e08c8c-meta.json +1 -0
  38. package/.turbo/cache/{b169402fda42f218.tar.zst → 6d48e8dc24e08c8c.tar.zst} +0 -0
  39. package/.turbo/cache/70e65d2581c9de95-meta.json +1 -0
  40. package/.turbo/cache/787da07242f11ca3-meta.json +1 -0
  41. package/.turbo/cache/85f181c5a0ebfdc3-meta.json +1 -0
  42. package/.turbo/cache/88d4c5b7339b081b-meta.json +1 -0
  43. package/.turbo/cache/8f20a1cd3533e2cb-meta.json +1 -0
  44. package/.turbo/cache/91de2098a36b6939-meta.json +1 -0
  45. package/.turbo/cache/96edc0764ed4ab77-meta.json +1 -0
  46. package/.turbo/cache/a5a09f2f7d54a08c-meta.json +1 -0
  47. package/.turbo/cache/{457a9f56f941d179.tar.zst → a5a09f2f7d54a08c.tar.zst} +0 -0
  48. package/.turbo/cache/a776eb6f87cd7464-meta.json +1 -0
  49. package/.turbo/cache/aa2a6d9e7beff7fc-meta.json +1 -0
  50. package/.turbo/cache/aa2a6d9e7beff7fc.tar.zst +0 -0
  51. package/.turbo/cache/ac47b2df8381d990-meta.json +1 -0
  52. package/.turbo/cache/ad64961726cfa8f1-meta.json +1 -0
  53. package/.turbo/cache/b0c920630dcdfe8c-meta.json +1 -0
  54. package/.turbo/cache/b0c920630dcdfe8c.tar.zst +0 -0
  55. package/.turbo/cache/b59135e2bdaeed6d-meta.json +1 -0
  56. package/.turbo/cache/{46083e154ba76896.tar.zst → b59135e2bdaeed6d.tar.zst} +0 -0
  57. package/.turbo/cache/bff34c0db361f414-meta.json +1 -0
  58. package/.turbo/cache/c1c7334875426ff3-meta.json +1 -0
  59. package/.turbo/cache/cd12b66dd972aaf7-meta.json +1 -0
  60. package/.turbo/cache/cf74604f39b00f11-meta.json +1 -0
  61. package/.turbo/cache/cf74604f39b00f11.tar.zst +0 -0
  62. package/.turbo/cache/d5dbe6fb31ae5667-meta.json +1 -0
  63. package/.turbo/cache/d7ca7fb410ee2188-meta.json +1 -0
  64. package/.turbo/cache/e110f476f3c2c001-meta.json +1 -0
  65. package/.turbo/cache/e110f476f3c2c001.tar.zst +0 -0
  66. package/.turbo/cache/e64bd75c16c140f3-meta.json +1 -0
  67. package/.turbo/cache/e64e2c10c321484a-meta.json +1 -0
  68. package/.turbo/cache/e64e2c10c321484a.tar.zst +0 -0
  69. package/.turbo/cache/e8bf0db4ce0bd119-meta.json +1 -0
  70. package/.turbo/cache/e8bf0db4ce0bd119.tar.zst +0 -0
  71. package/.turbo/cache/ea92743dea3b7023-meta.json +1 -0
  72. package/.turbo/cache/eed8d2c214d428ed-meta.json +1 -0
  73. package/.turbo/cache/f22dc2dd55715ba2-meta.json +1 -0
  74. package/.turbo/cache/f8f99ba69bff8f2c-meta.json +1 -0
  75. package/.turbo/cache/faafa5cc35d12e06-meta.json +1 -0
  76. package/.turbo/cache/faafa5cc35d12e06.tar.zst +0 -0
  77. package/CHANGELOG.md +21 -0
  78. package/components/checkbox/.turbo/turbo-build.log +3 -3
  79. package/components/checkbox/README.md +2 -2
  80. package/components/checkbox/package.json +2 -2
  81. package/components/combobox/.turbo/turbo-build.log +1 -1
  82. package/components/combobox/README.md +5 -5
  83. package/components/combobox/demo/api.min.js +85 -11
  84. package/components/combobox/demo/index.min.js +85 -11
  85. package/components/combobox/dist/auro-combobox.d.ts.map +1 -1
  86. package/components/combobox/dist/index.js +85 -11
  87. package/components/combobox/package.json +2 -2
  88. package/components/combobox/src/auro-combobox.js +0 -4
  89. package/components/counter/.turbo/turbo-build.log +3 -3
  90. package/components/counter/.turbo/turbo-bundler.log +3 -3
  91. package/components/counter/README.md +2 -2
  92. package/components/counter/demo/api.min.js +88 -10
  93. package/components/counter/demo/index.min.js +88 -10
  94. package/components/counter/dist/index.js +88 -10
  95. package/components/counter/package.json +2 -2
  96. package/components/counter/src/styles/color-css.js +1 -1
  97. package/components/counter/src/styles/color.css +1 -1
  98. package/components/counter/src/styles/color.scss +1 -1
  99. package/components/counter/src/styles/counter-button-css.js +1 -1
  100. package/components/counter/src/styles/counter-button.css +1 -0
  101. package/components/counter/src/styles/counter-button.scss +3 -0
  102. package/components/counter/src/styles/style-css.js +1 -1
  103. package/components/counter/src/styles/style.css +1 -0
  104. package/components/counter/src/styles/style.scss +3 -0
  105. package/components/datepicker/.turbo/turbo-build.log +1 -1
  106. package/components/datepicker/README.md +5 -5
  107. package/components/datepicker/demo/api.min.js +85 -14
  108. package/components/datepicker/demo/index.min.js +85 -14
  109. package/components/datepicker/dist/auro-datepicker.d.ts.map +1 -1
  110. package/components/datepicker/dist/index.js +85 -14
  111. package/components/datepicker/package.json +2 -2
  112. package/components/datepicker/src/auro-datepicker.js +0 -7
  113. package/components/dropdown/.turbo/turbo-build.log +2 -2
  114. package/components/dropdown/README.md +2 -2
  115. package/components/dropdown/demo/api.md +15 -2
  116. package/components/dropdown/demo/api.min.js +85 -7
  117. package/components/dropdown/demo/index.js +0 -3
  118. package/components/dropdown/demo/index.min.js +85 -10
  119. package/components/dropdown/dist/auro-dropdown.d.ts +9 -1
  120. package/components/dropdown/dist/auro-dropdown.d.ts.map +1 -1
  121. package/components/dropdown/dist/index.js +85 -7
  122. package/components/dropdown/package.json +2 -2
  123. package/components/dropdown/src/auro-dropdown.js +78 -4
  124. package/components/dropdown/src/styles/color-css.js +1 -1
  125. package/components/dropdown/src/styles/color.css +3 -1
  126. package/components/dropdown/src/styles/color.scss +3 -1
  127. package/components/dropdown/src/styles/style-css.js +1 -1
  128. package/components/dropdown/src/styles/style.css +5 -0
  129. package/components/dropdown/src/styles/style.scss +8 -2
  130. package/components/dropdown/src/styles/tokens-css.js +1 -1
  131. package/components/dropdown/src/styles/tokens.css +1 -0
  132. package/components/dropdown/src/styles/tokens.scss +1 -0
  133. package/components/form/.turbo/turbo-build.log +3 -3
  134. package/components/form/.turbo/turbo-bundler.log +3 -3
  135. package/components/form/README.md +2 -2
  136. package/components/form/package.json +2 -2
  137. package/components/helptext/.turbo/turbo-build.log +1 -1
  138. package/components/helptext/.turbo/turbo-bundler.log +1 -1
  139. package/components/helptext/package.json +2 -2
  140. package/components/input/.turbo/turbo-build.log +3 -3
  141. package/components/input/README.md +2 -2
  142. package/components/input/package.json +2 -2
  143. package/components/menu/.turbo/turbo-build.log +3 -3
  144. package/components/menu/.turbo/turbo-bundler.log +3 -3
  145. package/components/menu/README.md +2 -2
  146. package/components/menu/package.json +2 -2
  147. package/components/radio/.turbo/turbo-build.log +3 -3
  148. package/components/radio/README.md +2 -2
  149. package/components/radio/package.json +2 -3
  150. package/components/select/.turbo/turbo-build.log +2 -2
  151. package/components/select/README.md +4 -4
  152. package/components/select/demo/api.min.js +85 -7
  153. package/components/select/demo/index.min.js +85 -7
  154. package/components/select/dist/index.js +85 -7
  155. package/components/select/package.json +2 -2
  156. package/package.json +2 -2
  157. package/.turbo/cache/1d4280429ff4222f-meta.json +0 -1
  158. package/.turbo/cache/1e094164b4932553-meta.json +0 -1
  159. package/.turbo/cache/251ba344c6338ba3-meta.json +0 -1
  160. package/.turbo/cache/251ba344c6338ba3.tar.zst +0 -0
  161. package/.turbo/cache/27b0d0b95232015d-meta.json +0 -1
  162. package/.turbo/cache/27b0d0b95232015d.tar.zst +0 -0
  163. package/.turbo/cache/28fe2121c9ba81e2-meta.json +0 -1
  164. package/.turbo/cache/298b6ff0272e6226-meta.json +0 -1
  165. package/.turbo/cache/2abb5400a01a1694-meta.json +0 -1
  166. package/.turbo/cache/2abb5400a01a1694.tar.zst +0 -0
  167. package/.turbo/cache/2f1030603b21f80d-meta.json +0 -1
  168. package/.turbo/cache/2f1030603b21f80d.tar.zst +0 -0
  169. package/.turbo/cache/3058929eb73309e5-meta.json +0 -1
  170. package/.turbo/cache/30fda91ef83677e4-meta.json +0 -1
  171. package/.turbo/cache/3221d91a94756c26-meta.json +0 -1
  172. package/.turbo/cache/3ab09fe7cf32b3bf-meta.json +0 -1
  173. package/.turbo/cache/3ab09fe7cf32b3bf.tar.zst +0 -0
  174. package/.turbo/cache/3f1b3db13386acdc-meta.json +0 -1
  175. package/.turbo/cache/42471e399b9036ff-meta.json +0 -1
  176. package/.turbo/cache/42471e399b9036ff.tar.zst +0 -0
  177. package/.turbo/cache/430c124614841675-meta.json +0 -1
  178. package/.turbo/cache/457a9f56f941d179-meta.json +0 -1
  179. package/.turbo/cache/45bdeb0396723b25-meta.json +0 -1
  180. package/.turbo/cache/46083e154ba76896-meta.json +0 -1
  181. package/.turbo/cache/4b94aa05a0403c24-meta.json +0 -1
  182. package/.turbo/cache/4e8248fc9e1e3e8f-meta.json +0 -1
  183. package/.turbo/cache/4e8248fc9e1e3e8f.tar.zst +0 -0
  184. package/.turbo/cache/4e9c9a5dd62c50a4-meta.json +0 -1
  185. package/.turbo/cache/4f5f322655310502-meta.json +0 -1
  186. package/.turbo/cache/4f5f322655310502.tar.zst +0 -0
  187. package/.turbo/cache/52b8dd620355a643-meta.json +0 -1
  188. package/.turbo/cache/5326b73ddda05291-meta.json +0 -1
  189. package/.turbo/cache/536bf32361621ecf-meta.json +0 -1
  190. package/.turbo/cache/536bf32361621ecf.tar.zst +0 -0
  191. package/.turbo/cache/5a9a22bec5b85071-meta.json +0 -1
  192. package/.turbo/cache/5fc9a7a072827b7b-meta.json +0 -1
  193. package/.turbo/cache/636856e9513dd881-meta.json +0 -1
  194. package/.turbo/cache/64124d335f246ad4-meta.json +0 -1
  195. package/.turbo/cache/64124d335f246ad4.tar.zst +0 -0
  196. package/.turbo/cache/663b470a9b090056-meta.json +0 -1
  197. package/.turbo/cache/663b470a9b090056.tar.zst +0 -0
  198. package/.turbo/cache/6e0b3da6e3ff3718-meta.json +0 -1
  199. package/.turbo/cache/753b119a389426be-meta.json +0 -1
  200. package/.turbo/cache/785960dbbde053b6-meta.json +0 -1
  201. package/.turbo/cache/88f0204c4fde872f-meta.json +0 -1
  202. package/.turbo/cache/88f0204c4fde872f.tar.zst +0 -0
  203. package/.turbo/cache/a57b56e1d77cb964-meta.json +0 -1
  204. package/.turbo/cache/a5e07f85374d9a92-meta.json +0 -1
  205. package/.turbo/cache/a5e07f85374d9a92.tar.zst +0 -0
  206. package/.turbo/cache/a8889572165c9122-meta.json +0 -1
  207. package/.turbo/cache/a8889572165c9122.tar.zst +0 -0
  208. package/.turbo/cache/b169402fda42f218-meta.json +0 -1
  209. package/.turbo/cache/b770ff022e446032-meta.json +0 -1
  210. package/.turbo/cache/bf3d1eace5e676f9-meta.json +0 -1
  211. package/.turbo/cache/c405949d7a6017ee-meta.json +0 -1
  212. package/.turbo/cache/c405949d7a6017ee.tar.zst +0 -0
  213. package/.turbo/cache/ca9625ba0a5cd272-meta.json +0 -1
  214. package/.turbo/cache/cbcd9db8ac9a2d52-meta.json +0 -1
  215. package/.turbo/cache/d3afdb9a7db9eacc-meta.json +0 -1
  216. package/.turbo/cache/d8ecdff9c663c38e-meta.json +0 -1
  217. package/.turbo/cache/de494df6a3006101-meta.json +0 -1
  218. package/.turbo/cache/e56a9865641ec3e8-meta.json +0 -1
  219. package/.turbo/cache/e7ed9e7056d80938-meta.json +0 -1
  220. package/.turbo/cache/e837827cd24834c4-meta.json +0 -1
  221. package/.turbo/cache/e9ff93179777aa26-meta.json +0 -1
  222. package/.turbo/cache/ef4682705ab4d7ab-meta.json +0 -1
  223. package/.turbo/cache/f2e689c8cdd1aafe-meta.json +0 -1
  224. package/.turbo/cache/f7ab9a13f9acc0ab-meta.json +0 -1
  225. package/.turbo/cache/feef1cd478f1cf5a-meta.json +0 -1
  226. package/.turbo/cache/ff3c8a3042cab66e-meta.json +0 -1
  227. /package/.turbo/cache/{d3afdb9a7db9eacc.tar.zst → 06dfc9c20aacd0fa.tar.zst} +0 -0
  228. /package/.turbo/cache/{e837827cd24834c4.tar.zst → 075034ccdb82fbea.tar.zst} +0 -0
  229. /package/.turbo/cache/{e7ed9e7056d80938.tar.zst → 10b8500a6b0c6655.tar.zst} +0 -0
  230. /package/.turbo/cache/{5fc9a7a072827b7b.tar.zst → 138466aaa06fa946.tar.zst} +0 -0
  231. /package/.turbo/cache/{cbcd9db8ac9a2d52.tar.zst → 1a8525cb6ad91e2a.tar.zst} +0 -0
  232. /package/.turbo/cache/{1d4280429ff4222f.tar.zst → 1d4e8167ea8e924f.tar.zst} +0 -0
  233. /package/.turbo/cache/{4b94aa05a0403c24.tar.zst → 209b5682475d8333.tar.zst} +0 -0
  234. /package/.turbo/cache/{4e9c9a5dd62c50a4.tar.zst → 2289d12debb3c42c.tar.zst} +0 -0
  235. /package/.turbo/cache/{de494df6a3006101.tar.zst → 22fc147c04804f70.tar.zst} +0 -0
  236. /package/.turbo/cache/{f2e689c8cdd1aafe.tar.zst → 3025cdff2ca7afbf.tar.zst} +0 -0
  237. /package/.turbo/cache/{bf3d1eace5e676f9.tar.zst → 3082b3a86c0f9b94.tar.zst} +0 -0
  238. /package/.turbo/cache/{3f1b3db13386acdc.tar.zst → 5b3bb164db4c477c.tar.zst} +0 -0
  239. /package/.turbo/cache/{ef4682705ab4d7ab.tar.zst → 68c6e1baddbae823.tar.zst} +0 -0
  240. /package/.turbo/cache/{3221d91a94756c26.tar.zst → 6bfd7cffad1e6b8a.tar.zst} +0 -0
  241. /package/.turbo/cache/{753b119a389426be.tar.zst → 70e65d2581c9de95.tar.zst} +0 -0
  242. /package/.turbo/cache/{feef1cd478f1cf5a.tar.zst → 787da07242f11ca3.tar.zst} +0 -0
  243. /package/.turbo/cache/{6e0b3da6e3ff3718.tar.zst → 85f181c5a0ebfdc3.tar.zst} +0 -0
  244. /package/.turbo/cache/{ff3c8a3042cab66e.tar.zst → 88d4c5b7339b081b.tar.zst} +0 -0
  245. /package/.turbo/cache/{e9ff93179777aa26.tar.zst → 8f20a1cd3533e2cb.tar.zst} +0 -0
  246. /package/.turbo/cache/{28fe2121c9ba81e2.tar.zst → 91de2098a36b6939.tar.zst} +0 -0
  247. /package/.turbo/cache/{430c124614841675.tar.zst → 96edc0764ed4ab77.tar.zst} +0 -0
  248. /package/.turbo/cache/{f7ab9a13f9acc0ab.tar.zst → a776eb6f87cd7464.tar.zst} +0 -0
  249. /package/.turbo/cache/{30fda91ef83677e4.tar.zst → ac47b2df8381d990.tar.zst} +0 -0
  250. /package/.turbo/cache/{52b8dd620355a643.tar.zst → ad64961726cfa8f1.tar.zst} +0 -0
  251. /package/.turbo/cache/{298b6ff0272e6226.tar.zst → bff34c0db361f414.tar.zst} +0 -0
  252. /package/.turbo/cache/{ca9625ba0a5cd272.tar.zst → c1c7334875426ff3.tar.zst} +0 -0
  253. /package/.turbo/cache/{5326b73ddda05291.tar.zst → cd12b66dd972aaf7.tar.zst} +0 -0
  254. /package/.turbo/cache/{45bdeb0396723b25.tar.zst → d5dbe6fb31ae5667.tar.zst} +0 -0
  255. /package/.turbo/cache/{5a9a22bec5b85071.tar.zst → d7ca7fb410ee2188.tar.zst} +0 -0
  256. /package/.turbo/cache/{785960dbbde053b6.tar.zst → e64bd75c16c140f3.tar.zst} +0 -0
  257. /package/.turbo/cache/{d8ecdff9c663c38e.tar.zst → ea92743dea3b7023.tar.zst} +0 -0
  258. /package/.turbo/cache/{3058929eb73309e5.tar.zst → eed8d2c214d428ed.tar.zst} +0 -0
  259. /package/.turbo/cache/{1e094164b4932553.tar.zst → f22dc2dd55715ba2.tar.zst} +0 -0
  260. /package/.turbo/cache/{e56a9865641ec3e8.tar.zst → f8f99ba69bff8f2c.tar.zst} +0 -0
@@ -1748,7 +1748,11 @@ class AuroFloatingUI {
1748
1748
 
1749
1749
  updateState() {
1750
1750
  const isVisible = this.element.isPopoverVisible;
1751
- this.element.trigger.setAttribute('aria-expanded', isVisible);
1751
+
1752
+ // Refactor this to apply attribute to correct focusable element
1753
+ // Reference Issue: https://github.com/AlaskaAirlines/auro-library/issues/105
1754
+ //
1755
+ // this.element.trigger.setAttribute('aria-expanded', isVisible);
1752
1756
 
1753
1757
  if (isVisible) {
1754
1758
  this.element.bib.setAttribute('data-show', true);
@@ -2427,11 +2431,11 @@ class AuroIcon extends BaseIcon {
2427
2431
 
2428
2432
  var iconVersion = '6.1.2';
2429
2433
 
2430
- var styleCss$2 = i$7`:host{position:relative;display:inline-block;max-width:100%}:host([fluid]){display:block}#bibSizer{position:absolute;z-index:-1;opacity:0;pointer-events:none}.label{font-size:var(--ds-text-body-size-xs, 0.75rem);line-height:var(--ds-text-body-size-default, 1rem);transition:font-size .3s cubic-bezier(0.215, 0.61, 0.355, 1);white-space:normal}.label[hasTrigger=false]{font-size:var(--ds-text-body-size-default, 1rem)}.trigger{position:relative;display:flex;align-items:center;border-width:1px;border-style:solid}@media(hover: hover){.trigger:hover{cursor:pointer}}.triggerContentWrapper{overflow:hidden;flex:1;text-overflow:ellipsis;white-space:nowrap}#showStateIcon{display:flex;overflow:hidden;height:100%;align-items:center;margin-left:var(--ds-size-100, 0.5rem)}#showStateIcon [auro-icon]{height:var(--ds-size-300, 1.5rem);line-height:var(--ds-size-300, 1.5rem)}#showStateIcon[data-expanded=true] [auro-icon]{transform:rotate(-180deg)}:host([matchwidth]) #bibSizer{width:100%}:host([disabled]){pointer-events:none}:host([inset]) .trigger{padding:var(--ds-size-150, 0.75rem) var(--ds-size-200, 1rem)}:host([common]) .trigger,:host([inset][bordered]) .trigger{padding:var(--ds-size-200, 1rem) var(--ds-size-150, 0.75rem)}:host([common]) .trigger,:host([rounded]) .trigger{border-radius:var(--ds-border-radius, 0.375rem)}`;
2434
+ var styleCss$2 = i$7`:host{position:relative;display:inline-block;max-width:100%}:host([fluid]){display:block}#bibSizer{position:absolute;z-index:-1;opacity:0;pointer-events:none}.label{font-size:var(--ds-text-body-size-xs, 0.75rem);line-height:var(--ds-text-body-size-default, 1rem);transition:font-size .3s cubic-bezier(0.215, 0.61, 0.355, 1);white-space:normal}.label[hasTrigger=false]{font-size:var(--ds-text-body-size-default, 1rem)}.trigger{position:relative;display:flex;align-items:center}.trigger[showBorder]{border-width:1px;border-style:solid;cursor:pointer;outline-style:solid;outline-width:1px}@media(hover: hover){.trigger:hover{cursor:pointer}}.triggerContentWrapper{overflow:hidden;flex:1;text-overflow:ellipsis;white-space:nowrap}#showStateIcon{display:flex;overflow:hidden;height:100%;align-items:center;margin-left:var(--ds-size-100, 0.5rem)}#showStateIcon [auro-icon]{height:var(--ds-size-300, 1.5rem);line-height:var(--ds-size-300, 1.5rem)}#showStateIcon[data-expanded=true] [auro-icon]{transform:rotate(-180deg)}:host([matchwidth]) #bibSizer{width:100%}:host([disabled]){pointer-events:none}:host([inset]) .trigger{padding:var(--ds-size-150, 0.75rem) var(--ds-size-200, 1rem)}:host([common]) .trigger,:host([inset][bordered]) .trigger{padding:var(--ds-size-200, 1rem) var(--ds-size-150, 0.75rem)}:host([common]) .trigger,:host([rounded]) .trigger{border-radius:var(--ds-border-radius, 0.375rem)}`;
2431
2435
 
2432
- var colorCss$2 = i$7`.label{color:var(--ds-auro-dropdown-label-text-color)}.trigger{border-color:var(--ds-auro-dropdown-trigger-border-color);background-color:var(--ds-auro-dropdown-trigger-container-color);color:var(--ds-auro-dropdown-trigger-text-color)}.trigger:focus-within,.trigger:active{--ds-auro-dropdown-trigger-border-color: var(--ds-color-border-active-default, #0074c8)}.trigger:focus-within:not(:active){--ds-auro-dropdown-trigger-border-color: var(--ds-color-border-ui-focus-default, #2c67b5);outline:1px solid var(--ds-color-border-ui-focus-default, #2c67b5)}.trigger:hover{--ds-auro-dropdown-trigger-container-color: var(--ds-color-container-ui-secondary-hover-default, rgba(0, 0, 0, 0.03))}:host([disabled]){--ds-auro-dropdown-trigger-text-color: var(--ds-color-text-ui-disabled-default, #adadad);--ds-auro-dropdown-label-text-color: var(--ds-color-text-ui-disabled-default, #adadad)}:host([common]),:host([bordered]){--ds-auro-dropdown-trigger-border-color: var(--ds-color-border-primary-default, #585e67)}:host([common]) .trigger:active,:host([common]) .trigger:focus-within,:host([bordered]) .trigger:active,:host([bordered]) .trigger:focus-within{--ds-auro-dropdown-trigger-border-color: var(--ds-color-border-ui-focus-default, #2c67b5)}:host([error]){--ds-auro-dropdown-trigger-border-color: var(--ds-color-border-error-default, #cc1816)}:host([error]) .trigger{outline:solid 1px var(--ds-auro-dropdown-trigger-border-color)}:host([error]) .trigger:focus-within,:host([error]) .trigger:active{--ds-auro-dropdown-trigger-border-color: var(--ds-color-border-active-default, #0074c8)}:host([error]) .trigger:active{box-shadow:none;outline:none}:host([disabled][common]),:host([disabled][bordered]){--ds-auro-dropdown-trigger-border-color: var(--ds-color-border-ui-disabled-default, #adadad)}`;
2436
+ var colorCss$2 = i$7`.label{color:var(--ds-auro-dropdown-label-text-color)}.trigger{border-color:var(--ds-auro-dropdown-trigger-border-color);background-color:var(--ds-auro-dropdown-trigger-container-color);color:var(--ds-auro-dropdown-trigger-text-color);outline-color:var(--ds-auro-dropdown-trigger-outline-color)}.trigger:focus-within,.trigger:active{--ds-auro-dropdown-trigger-border-color: var(--ds-color-border-active-default, #0074c8);--ds-auro-dropdown-trigger-outline-color: var(--ds-color-border-active-default, #0074c8)}.trigger:focus-within:not(:active){--ds-auro-dropdown-trigger-border-color: var(--ds-color-border-ui-focus-default, #2c67b5);--ds-auro-dropdown-trigger-outline-color: var(--ds-color-border-ui-focus-default, #2c67b5)}.trigger:hover{--ds-auro-dropdown-trigger-container-color: var(--ds-color-container-ui-secondary-hover-default, rgba(0, 0, 0, 0.03))}:host([disabled]){--ds-auro-dropdown-trigger-text-color: var(--ds-color-text-ui-disabled-default, #adadad);--ds-auro-dropdown-label-text-color: var(--ds-color-text-ui-disabled-default, #adadad)}:host([common]),:host([bordered]){--ds-auro-dropdown-trigger-border-color: var(--ds-color-border-primary-default, #585e67)}:host([common]) .trigger:active,:host([common]) .trigger:focus-within,:host([bordered]) .trigger:active,:host([bordered]) .trigger:focus-within{--ds-auro-dropdown-trigger-border-color: var(--ds-color-border-ui-focus-default, #2c67b5)}:host([error]){--ds-auro-dropdown-trigger-border-color: var(--ds-color-border-error-default, #cc1816)}:host([error]) .trigger{outline:solid 1px var(--ds-auro-dropdown-trigger-border-color)}:host([error]) .trigger:focus-within,:host([error]) .trigger:active{--ds-auro-dropdown-trigger-border-color: var(--ds-color-border-active-default, #0074c8)}:host([error]) .trigger:active{box-shadow:none;outline:none}:host([disabled][common]),:host([disabled][bordered]){--ds-auro-dropdown-trigger-border-color: var(--ds-color-border-ui-disabled-default, #adadad)}`;
2433
2437
 
2434
- var tokensCss$1 = i$7`:host{--ds-auro-dropdown-label-text-color: var(--ds-color-text-secondary-default, #525252);--ds-auro-dropdown-popover-container-color: var(--ds-color-container-primary-default, #ffffff);--ds-auro-dropdown-popover-border-color: transparent;--ds-auro-dropdown-popover-text-color: var(--ds-color-text-primary-default, #2a2a2a);--ds-auro-dropdown-trigger-container-color: var(--ds-color-container-primary-default, #ffffff);--ds-auro-dropdown-trigger-border-color: transparent;--ds-auro-dropdown-trigger-text-color: var(--ds-color-text-primary-default, #2a2a2a);--ds-auro-dropdownbib-boxshadow-color: var(--ds-elevation-200, 0px 0px 10px rgba(0, 0, 0, 0.15));--ds-auro-dropdownbib-container-color: var(--ds-color-container-primary-default, #ffffff);--ds-auro-dropdownbib-text-color: var(--ds-color-text-primary-default, #2a2a2a)}`;
2438
+ var tokensCss$1 = i$7`:host{--ds-auro-dropdown-label-text-color: var(--ds-color-text-secondary-default, #525252);--ds-auro-dropdown-popover-container-color: var(--ds-color-container-primary-default, #ffffff);--ds-auro-dropdown-popover-border-color: transparent;--ds-auro-dropdown-popover-text-color: var(--ds-color-text-primary-default, #2a2a2a);--ds-auro-dropdown-trigger-container-color: var(--ds-color-container-primary-default, #ffffff);--ds-auro-dropdown-trigger-border-color: transparent;--ds-auro-dropdown-trigger-outline-color: transparent;--ds-auro-dropdown-trigger-text-color: var(--ds-color-text-primary-default, #2a2a2a);--ds-auro-dropdownbib-boxshadow-color: var(--ds-elevation-200, 0px 0px 10px rgba(0, 0, 0, 0.15));--ds-auro-dropdownbib-container-color: var(--ds-color-container-primary-default, #ffffff);--ds-auro-dropdownbib-text-color: var(--ds-color-text-primary-default, #2a2a2a)}`;
2435
2439
 
2436
2440
  /**
2437
2441
  * @license
@@ -2770,7 +2774,6 @@ if (!customElements.get("auro-dropdownbib")) {
2770
2774
  * @csspart trigger - The trigger content container.
2771
2775
  * @csspart chevron - The collapsed/expanded state icon container.
2772
2776
  * @csspart helpText - The helpText content container.
2773
- * @csspart popover - The bib content container.
2774
2777
  * @event auroDropdown-triggerClick - Notifies that the trigger has been clicked.
2775
2778
  * @event auroDropdown-toggled - Notifies that the visibility of the dropdown bib has changed.
2776
2779
  */
@@ -3103,6 +3106,64 @@ class AuroDropdown extends r$4 {
3103
3106
  return inCustomSlot;
3104
3107
  }
3105
3108
 
3109
+ /**
3110
+ * Determines if the element or any children are focusable.
3111
+ * @private
3112
+ * @param {HTMLElement} element - Element to check.
3113
+ * @returns {Boolean} - True if the element or any children are focusable.
3114
+ */
3115
+ containsFocusableElement(element) {
3116
+ this.showTriggerBorders = true;
3117
+
3118
+ const nodes = [
3119
+ element,
3120
+ ...element.children
3121
+ ];
3122
+
3123
+ const focusableElements = [
3124
+ 'a',
3125
+ 'auro-hyperlink',
3126
+ 'button',
3127
+ 'auro-button',
3128
+ 'input',
3129
+ 'auro-input',
3130
+ ];
3131
+
3132
+ const focusableElementsThatNeedBorders = ['auro-input'];
3133
+
3134
+ const result = nodes.some((node) => {
3135
+ const tagName = node.tagName.toLowerCase();
3136
+
3137
+ if (node.tabIndex > -1) {
3138
+ return true;
3139
+ }
3140
+
3141
+ if (focusableElements.includes(tagName)) {
3142
+ if ((tagName === 'a' || tagName === 'auro-hyperlink' || node.hasAttribute('auro-hyperlink')) && node.hasAttribute('href')) {
3143
+ return true;
3144
+ }
3145
+ if (!node.hasAttribute('disabled')) {
3146
+ return true;
3147
+ }
3148
+ }
3149
+
3150
+ if (focusableElements.some((focusableElement) => focusableElement.startsWith('auro-') && (focusableElement === tagName || node.hasAttribute(focusableElement)))) {
3151
+ return true;
3152
+ }
3153
+
3154
+ return false;
3155
+ });
3156
+
3157
+ if (result) {
3158
+ this.showTriggerBorders = !nodes.some((node) => {
3159
+ const tagName = node.tagName.toLowerCase();
3160
+ return focusableElements.includes(tagName) && !focusableElementsThatNeedBorders.includes(tagName);
3161
+ });
3162
+ }
3163
+
3164
+ return result;
3165
+ }
3166
+
3106
3167
  /**
3107
3168
  * Handles changes to the trigger content slot and updates related properties.
3108
3169
  *
@@ -3118,6 +3179,24 @@ class AuroDropdown extends r$4 {
3118
3179
  handleTriggerContentSlotChange(event) {
3119
3180
  this.floater.handleTriggerTabIndex();
3120
3181
 
3182
+ const triggerContentNodes = this.shadowRoot.querySelector('.triggerContent slot').assignedNodes();
3183
+
3184
+ triggerContentNodes.forEach((node) => {
3185
+ if (!this.triggerContentFocusable) {
3186
+ this.triggerContentFocusable = this.containsFocusableElement(node);
3187
+ }
3188
+ });
3189
+
3190
+ const trigger = this.shadowRoot.querySelector('#trigger');
3191
+
3192
+ if (!this.triggerContentFocusable) {
3193
+ trigger.setAttribute('tabindex', '0');
3194
+ trigger.setAttribute('role', 'button');
3195
+ } else {
3196
+ trigger.removeAttribute('tabindex');
3197
+ trigger.removeAttribute('role');
3198
+ }
3199
+
3121
3200
  if (event) {
3122
3201
  this.triggerNode = event.target;
3123
3202
  this.triggerContentSlot = event.target.assignedNodes();
@@ -3168,10 +3247,9 @@ class AuroDropdown extends r$4 {
3168
3247
  id="trigger"
3169
3248
  class="trigger"
3170
3249
  part="trigger"
3171
- role="button"
3172
3250
  aria-labelledby="triggerLabel"
3173
- aria-controls="popover"
3174
3251
  tabindex="${this.tabIndex}"
3252
+ ?showBorder="${this.showTriggerBorders}"
3175
3253
  >
3176
3254
  <div class="triggerContentWrapper">
3177
3255
  <label class="label" id="triggerLabel" hasTrigger=${this.hasTriggerContent}>
@@ -1,9 +1,6 @@
1
1
  /* eslint-disable jsdoc/require-jsdoc, no-magic-numbers, no-param-reassign */
2
2
  // import { AuroDropdownBib } from '../src/auro-dropdownBib.js';
3
3
  import { AuroDropdown } from '../src/auro-dropdown.js';
4
-
5
- // AuroDropdownBib.register();
6
-
7
4
  AuroDropdown.register();
8
5
  AuroDropdown.register('custom-dropdown');
9
6
 
@@ -1723,7 +1723,11 @@ class AuroFloatingUI {
1723
1723
 
1724
1724
  updateState() {
1725
1725
  const isVisible = this.element.isPopoverVisible;
1726
- this.element.trigger.setAttribute('aria-expanded', isVisible);
1726
+
1727
+ // Refactor this to apply attribute to correct focusable element
1728
+ // Reference Issue: https://github.com/AlaskaAirlines/auro-library/issues/105
1729
+ //
1730
+ // this.element.trigger.setAttribute('aria-expanded', isVisible);
1727
1731
 
1728
1732
  if (isVisible) {
1729
1733
  this.element.bib.setAttribute('data-show', true);
@@ -2402,11 +2406,11 @@ class AuroIcon extends BaseIcon {
2402
2406
 
2403
2407
  var iconVersion = '6.1.2';
2404
2408
 
2405
- var styleCss$2 = i$7`:host{position:relative;display:inline-block;max-width:100%}:host([fluid]){display:block}#bibSizer{position:absolute;z-index:-1;opacity:0;pointer-events:none}.label{font-size:var(--ds-text-body-size-xs, 0.75rem);line-height:var(--ds-text-body-size-default, 1rem);transition:font-size .3s cubic-bezier(0.215, 0.61, 0.355, 1);white-space:normal}.label[hasTrigger=false]{font-size:var(--ds-text-body-size-default, 1rem)}.trigger{position:relative;display:flex;align-items:center;border-width:1px;border-style:solid}@media(hover: hover){.trigger:hover{cursor:pointer}}.triggerContentWrapper{overflow:hidden;flex:1;text-overflow:ellipsis;white-space:nowrap}#showStateIcon{display:flex;overflow:hidden;height:100%;align-items:center;margin-left:var(--ds-size-100, 0.5rem)}#showStateIcon [auro-icon]{height:var(--ds-size-300, 1.5rem);line-height:var(--ds-size-300, 1.5rem)}#showStateIcon[data-expanded=true] [auro-icon]{transform:rotate(-180deg)}:host([matchwidth]) #bibSizer{width:100%}:host([disabled]){pointer-events:none}:host([inset]) .trigger{padding:var(--ds-size-150, 0.75rem) var(--ds-size-200, 1rem)}:host([common]) .trigger,:host([inset][bordered]) .trigger{padding:var(--ds-size-200, 1rem) var(--ds-size-150, 0.75rem)}:host([common]) .trigger,:host([rounded]) .trigger{border-radius:var(--ds-border-radius, 0.375rem)}`;
2409
+ var styleCss$2 = i$7`:host{position:relative;display:inline-block;max-width:100%}:host([fluid]){display:block}#bibSizer{position:absolute;z-index:-1;opacity:0;pointer-events:none}.label{font-size:var(--ds-text-body-size-xs, 0.75rem);line-height:var(--ds-text-body-size-default, 1rem);transition:font-size .3s cubic-bezier(0.215, 0.61, 0.355, 1);white-space:normal}.label[hasTrigger=false]{font-size:var(--ds-text-body-size-default, 1rem)}.trigger{position:relative;display:flex;align-items:center}.trigger[showBorder]{border-width:1px;border-style:solid;cursor:pointer;outline-style:solid;outline-width:1px}@media(hover: hover){.trigger:hover{cursor:pointer}}.triggerContentWrapper{overflow:hidden;flex:1;text-overflow:ellipsis;white-space:nowrap}#showStateIcon{display:flex;overflow:hidden;height:100%;align-items:center;margin-left:var(--ds-size-100, 0.5rem)}#showStateIcon [auro-icon]{height:var(--ds-size-300, 1.5rem);line-height:var(--ds-size-300, 1.5rem)}#showStateIcon[data-expanded=true] [auro-icon]{transform:rotate(-180deg)}:host([matchwidth]) #bibSizer{width:100%}:host([disabled]){pointer-events:none}:host([inset]) .trigger{padding:var(--ds-size-150, 0.75rem) var(--ds-size-200, 1rem)}:host([common]) .trigger,:host([inset][bordered]) .trigger{padding:var(--ds-size-200, 1rem) var(--ds-size-150, 0.75rem)}:host([common]) .trigger,:host([rounded]) .trigger{border-radius:var(--ds-border-radius, 0.375rem)}`;
2406
2410
 
2407
- var colorCss$2 = i$7`.label{color:var(--ds-auro-dropdown-label-text-color)}.trigger{border-color:var(--ds-auro-dropdown-trigger-border-color);background-color:var(--ds-auro-dropdown-trigger-container-color);color:var(--ds-auro-dropdown-trigger-text-color)}.trigger:focus-within,.trigger:active{--ds-auro-dropdown-trigger-border-color: var(--ds-color-border-active-default, #0074c8)}.trigger:focus-within:not(:active){--ds-auro-dropdown-trigger-border-color: var(--ds-color-border-ui-focus-default, #2c67b5);outline:1px solid var(--ds-color-border-ui-focus-default, #2c67b5)}.trigger:hover{--ds-auro-dropdown-trigger-container-color: var(--ds-color-container-ui-secondary-hover-default, rgba(0, 0, 0, 0.03))}:host([disabled]){--ds-auro-dropdown-trigger-text-color: var(--ds-color-text-ui-disabled-default, #adadad);--ds-auro-dropdown-label-text-color: var(--ds-color-text-ui-disabled-default, #adadad)}:host([common]),:host([bordered]){--ds-auro-dropdown-trigger-border-color: var(--ds-color-border-primary-default, #585e67)}:host([common]) .trigger:active,:host([common]) .trigger:focus-within,:host([bordered]) .trigger:active,:host([bordered]) .trigger:focus-within{--ds-auro-dropdown-trigger-border-color: var(--ds-color-border-ui-focus-default, #2c67b5)}:host([error]){--ds-auro-dropdown-trigger-border-color: var(--ds-color-border-error-default, #cc1816)}:host([error]) .trigger{outline:solid 1px var(--ds-auro-dropdown-trigger-border-color)}:host([error]) .trigger:focus-within,:host([error]) .trigger:active{--ds-auro-dropdown-trigger-border-color: var(--ds-color-border-active-default, #0074c8)}:host([error]) .trigger:active{box-shadow:none;outline:none}:host([disabled][common]),:host([disabled][bordered]){--ds-auro-dropdown-trigger-border-color: var(--ds-color-border-ui-disabled-default, #adadad)}`;
2411
+ var colorCss$2 = i$7`.label{color:var(--ds-auro-dropdown-label-text-color)}.trigger{border-color:var(--ds-auro-dropdown-trigger-border-color);background-color:var(--ds-auro-dropdown-trigger-container-color);color:var(--ds-auro-dropdown-trigger-text-color);outline-color:var(--ds-auro-dropdown-trigger-outline-color)}.trigger:focus-within,.trigger:active{--ds-auro-dropdown-trigger-border-color: var(--ds-color-border-active-default, #0074c8);--ds-auro-dropdown-trigger-outline-color: var(--ds-color-border-active-default, #0074c8)}.trigger:focus-within:not(:active){--ds-auro-dropdown-trigger-border-color: var(--ds-color-border-ui-focus-default, #2c67b5);--ds-auro-dropdown-trigger-outline-color: var(--ds-color-border-ui-focus-default, #2c67b5)}.trigger:hover{--ds-auro-dropdown-trigger-container-color: var(--ds-color-container-ui-secondary-hover-default, rgba(0, 0, 0, 0.03))}:host([disabled]){--ds-auro-dropdown-trigger-text-color: var(--ds-color-text-ui-disabled-default, #adadad);--ds-auro-dropdown-label-text-color: var(--ds-color-text-ui-disabled-default, #adadad)}:host([common]),:host([bordered]){--ds-auro-dropdown-trigger-border-color: var(--ds-color-border-primary-default, #585e67)}:host([common]) .trigger:active,:host([common]) .trigger:focus-within,:host([bordered]) .trigger:active,:host([bordered]) .trigger:focus-within{--ds-auro-dropdown-trigger-border-color: var(--ds-color-border-ui-focus-default, #2c67b5)}:host([error]){--ds-auro-dropdown-trigger-border-color: var(--ds-color-border-error-default, #cc1816)}:host([error]) .trigger{outline:solid 1px var(--ds-auro-dropdown-trigger-border-color)}:host([error]) .trigger:focus-within,:host([error]) .trigger:active{--ds-auro-dropdown-trigger-border-color: var(--ds-color-border-active-default, #0074c8)}:host([error]) .trigger:active{box-shadow:none;outline:none}:host([disabled][common]),:host([disabled][bordered]){--ds-auro-dropdown-trigger-border-color: var(--ds-color-border-ui-disabled-default, #adadad)}`;
2408
2412
 
2409
- var tokensCss$1 = i$7`:host{--ds-auro-dropdown-label-text-color: var(--ds-color-text-secondary-default, #525252);--ds-auro-dropdown-popover-container-color: var(--ds-color-container-primary-default, #ffffff);--ds-auro-dropdown-popover-border-color: transparent;--ds-auro-dropdown-popover-text-color: var(--ds-color-text-primary-default, #2a2a2a);--ds-auro-dropdown-trigger-container-color: var(--ds-color-container-primary-default, #ffffff);--ds-auro-dropdown-trigger-border-color: transparent;--ds-auro-dropdown-trigger-text-color: var(--ds-color-text-primary-default, #2a2a2a);--ds-auro-dropdownbib-boxshadow-color: var(--ds-elevation-200, 0px 0px 10px rgba(0, 0, 0, 0.15));--ds-auro-dropdownbib-container-color: var(--ds-color-container-primary-default, #ffffff);--ds-auro-dropdownbib-text-color: var(--ds-color-text-primary-default, #2a2a2a)}`;
2413
+ var tokensCss$1 = i$7`:host{--ds-auro-dropdown-label-text-color: var(--ds-color-text-secondary-default, #525252);--ds-auro-dropdown-popover-container-color: var(--ds-color-container-primary-default, #ffffff);--ds-auro-dropdown-popover-border-color: transparent;--ds-auro-dropdown-popover-text-color: var(--ds-color-text-primary-default, #2a2a2a);--ds-auro-dropdown-trigger-container-color: var(--ds-color-container-primary-default, #ffffff);--ds-auro-dropdown-trigger-border-color: transparent;--ds-auro-dropdown-trigger-outline-color: transparent;--ds-auro-dropdown-trigger-text-color: var(--ds-color-text-primary-default, #2a2a2a);--ds-auro-dropdownbib-boxshadow-color: var(--ds-elevation-200, 0px 0px 10px rgba(0, 0, 0, 0.15));--ds-auro-dropdownbib-container-color: var(--ds-color-container-primary-default, #ffffff);--ds-auro-dropdownbib-text-color: var(--ds-color-text-primary-default, #2a2a2a)}`;
2410
2414
 
2411
2415
  /**
2412
2416
  * @license
@@ -2745,7 +2749,6 @@ if (!customElements.get("auro-dropdownbib")) {
2745
2749
  * @csspart trigger - The trigger content container.
2746
2750
  * @csspart chevron - The collapsed/expanded state icon container.
2747
2751
  * @csspart helpText - The helpText content container.
2748
- * @csspart popover - The bib content container.
2749
2752
  * @event auroDropdown-triggerClick - Notifies that the trigger has been clicked.
2750
2753
  * @event auroDropdown-toggled - Notifies that the visibility of the dropdown bib has changed.
2751
2754
  */
@@ -3078,6 +3081,64 @@ class AuroDropdown extends r$4 {
3078
3081
  return inCustomSlot;
3079
3082
  }
3080
3083
 
3084
+ /**
3085
+ * Determines if the element or any children are focusable.
3086
+ * @private
3087
+ * @param {HTMLElement} element - Element to check.
3088
+ * @returns {Boolean} - True if the element or any children are focusable.
3089
+ */
3090
+ containsFocusableElement(element) {
3091
+ this.showTriggerBorders = true;
3092
+
3093
+ const nodes = [
3094
+ element,
3095
+ ...element.children
3096
+ ];
3097
+
3098
+ const focusableElements = [
3099
+ 'a',
3100
+ 'auro-hyperlink',
3101
+ 'button',
3102
+ 'auro-button',
3103
+ 'input',
3104
+ 'auro-input',
3105
+ ];
3106
+
3107
+ const focusableElementsThatNeedBorders = ['auro-input'];
3108
+
3109
+ const result = nodes.some((node) => {
3110
+ const tagName = node.tagName.toLowerCase();
3111
+
3112
+ if (node.tabIndex > -1) {
3113
+ return true;
3114
+ }
3115
+
3116
+ if (focusableElements.includes(tagName)) {
3117
+ if ((tagName === 'a' || tagName === 'auro-hyperlink' || node.hasAttribute('auro-hyperlink')) && node.hasAttribute('href')) {
3118
+ return true;
3119
+ }
3120
+ if (!node.hasAttribute('disabled')) {
3121
+ return true;
3122
+ }
3123
+ }
3124
+
3125
+ if (focusableElements.some((focusableElement) => focusableElement.startsWith('auro-') && (focusableElement === tagName || node.hasAttribute(focusableElement)))) {
3126
+ return true;
3127
+ }
3128
+
3129
+ return false;
3130
+ });
3131
+
3132
+ if (result) {
3133
+ this.showTriggerBorders = !nodes.some((node) => {
3134
+ const tagName = node.tagName.toLowerCase();
3135
+ return focusableElements.includes(tagName) && !focusableElementsThatNeedBorders.includes(tagName);
3136
+ });
3137
+ }
3138
+
3139
+ return result;
3140
+ }
3141
+
3081
3142
  /**
3082
3143
  * Handles changes to the trigger content slot and updates related properties.
3083
3144
  *
@@ -3093,6 +3154,24 @@ class AuroDropdown extends r$4 {
3093
3154
  handleTriggerContentSlotChange(event) {
3094
3155
  this.floater.handleTriggerTabIndex();
3095
3156
 
3157
+ const triggerContentNodes = this.shadowRoot.querySelector('.triggerContent slot').assignedNodes();
3158
+
3159
+ triggerContentNodes.forEach((node) => {
3160
+ if (!this.triggerContentFocusable) {
3161
+ this.triggerContentFocusable = this.containsFocusableElement(node);
3162
+ }
3163
+ });
3164
+
3165
+ const trigger = this.shadowRoot.querySelector('#trigger');
3166
+
3167
+ if (!this.triggerContentFocusable) {
3168
+ trigger.setAttribute('tabindex', '0');
3169
+ trigger.setAttribute('role', 'button');
3170
+ } else {
3171
+ trigger.removeAttribute('tabindex');
3172
+ trigger.removeAttribute('role');
3173
+ }
3174
+
3096
3175
  if (event) {
3097
3176
  this.triggerNode = event.target;
3098
3177
  this.triggerContentSlot = event.target.assignedNodes();
@@ -3143,10 +3222,9 @@ class AuroDropdown extends r$4 {
3143
3222
  id="trigger"
3144
3223
  class="trigger"
3145
3224
  part="trigger"
3146
- role="button"
3147
3225
  aria-labelledby="triggerLabel"
3148
- aria-controls="popover"
3149
3226
  tabindex="${this.tabIndex}"
3227
+ ?showBorder="${this.showTriggerBorders}"
3150
3228
  >
3151
3229
  <div class="triggerContentWrapper">
3152
3230
  <label class="label" id="triggerLabel" hasTrigger=${this.hasTriggerContent}>
@@ -3193,9 +3271,6 @@ class AuroDropdown extends r$4 {
3193
3271
 
3194
3272
  /* eslint-disable jsdoc/require-jsdoc, no-magic-numbers, no-param-reassign */
3195
3273
  // import { AuroDropdownBib } from '../src/auro-dropdownBib.js';
3196
-
3197
- // AuroDropdownBib.register();
3198
-
3199
3274
  AuroDropdown.register();
3200
3275
  AuroDropdown.register('custom-dropdown');
3201
3276
 
@@ -7,7 +7,6 @@
7
7
  * @csspart trigger - The trigger content container.
8
8
  * @csspart chevron - The collapsed/expanded state icon container.
9
9
  * @csspart helpText - The helpText content container.
10
- * @csspart popover - The bib content container.
11
10
  * @event auroDropdown-triggerClick - Notifies that the trigger has been clicked.
12
11
  * @event auroDropdown-toggled - Notifies that the visibility of the dropdown bib has changed.
13
12
  */
@@ -220,6 +219,14 @@ export class AuroDropdown extends LitElement {
220
219
  * @returns {Boolean}
221
220
  */
222
221
  private isCustomSlotContent;
222
+ /**
223
+ * Determines if the element or any children are focusable.
224
+ * @private
225
+ * @param {HTMLElement} element - Element to check.
226
+ * @returns {Boolean} - True if the element or any children are focusable.
227
+ */
228
+ private containsFocusableElement;
229
+ showTriggerBorders: boolean;
223
230
  /**
224
231
  * Handles changes to the trigger content slot and updates related properties.
225
232
  *
@@ -233,6 +240,7 @@ export class AuroDropdown extends LitElement {
233
240
  * @returns {void}
234
241
  */
235
242
  private handleTriggerContentSlotChange;
243
+ triggerContentFocusable: boolean;
236
244
  triggerNode: EventTarget;
237
245
  /**
238
246
  * Handles the default slot change event and updates the content.
@@ -1 +1 @@
1
- {"version":3,"file":"auro-dropdown.d.ts","sourceRoot":"","sources":["../src/auro-dropdown.js"],"names":[],"mappings":"AAyBA;;;;;;;;;;;;GAYG;AACH;IAyFE;QAGI;;WAEG;;;;;QAMH;;;WAGG;;;;;QAMH;;WAEG;;;;;QAMH;;WAEG;;;;;QAMH;;WAEG;;;;QAKH;;WAEG;;;;;QAMH;;WAEG;;;;;QAMH;;WAEG;;;;;QAMH;;WAEG;;;;;QAMH;;WAEG;;;;QAKH;;WAEG;;;;;QAMH;;WAEG;;;;QAKH;;WAEG;;;;;QAMH;;WAEG;;;;;QAMH;;WAEG;;;;;QAMH;;WAEG;;;;;;;;;QAWH;;WAEG;;;;QAKH;;WAEG;;;;;QAMH;;WAEG;;;;MAKN;IAED,+CAMC;IAED;;;;;;;OAOG;IACH,uBANW,MAAM,QAQhB;IArQC,0BAA6B;IAC7B,oBAAuB;IACvB,+BAAkC;IAcpC;;;OAGG;IACH,wBA8CC;IA7CC,kBAAqB;IACrB,iBAAoB;IACpB,kBAAqB;IACrB,eAAkB;IAClB,eAAkB;IAClB,kBAA+B;IAC/B,iBAAoB;IAEpB,kBAAqB;IAErB;;OAEG;IACH,0BAA8B;IAE9B;;OAEG;IACH,2BAAmC;IAEnC;;OAEG;IACH,qBAAiD;IAEjD;;OAEG;IACH,gBAAmC;IAEnC;;OAEG;IACH,sBAKC;IAMD,aAAyE;IAG3E;;;OAGG;IACH,QAFa,IAAI,CAIhB;IAED;;;OAGG;IACH,QAFa,IAAI,CAIhB;IA6LD,sCAYC;IAED,qBAMC;IAJC,gBAA0C;IAM5C;;;;OAIG;IACH,uBAEC;IAED;;;;;OAKG;IACH,4BAiBC;IAED;;;;;;;;;;;OAWG;IACH,uCAuBC;IAnBG,yBAA+B;IAqBnC;;;;;;;;;;;OAWG;IACH,0BAMC;IAGD,4CAoDC;CACF;2BAxd0B,KAAK"}
1
+ {"version":3,"file":"auro-dropdown.d.ts","sourceRoot":"","sources":["../src/auro-dropdown.js"],"names":[],"mappings":"AAyBA;;;;;;;;;;;GAWG;AACH;IAyFE;QAGI;;WAEG;;;;;QAMH;;;WAGG;;;;;QAMH;;WAEG;;;;;QAMH;;WAEG;;;;;QAMH;;WAEG;;;;QAKH;;WAEG;;;;;QAMH;;WAEG;;;;;QAMH;;WAEG;;;;;QAMH;;WAEG;;;;;QAMH;;WAEG;;;;QAKH;;WAEG;;;;;QAMH;;WAEG;;;;QAKH;;WAEG;;;;;QAMH;;WAEG;;;;;QAMH;;WAEG;;;;;QAMH;;WAEG;;;;;;;;;QAWH;;WAEG;;;;QAKH;;WAEG;;;;;QAMH;;WAEG;;;;MAKN;IAED,+CAMC;IAED;;;;;;;OAOG;IACH,uBANW,MAAM,QAQhB;IArQC,0BAA6B;IAC7B,oBAAuB;IACvB,+BAAkC;IAcpC;;;OAGG;IACH,wBA8CC;IA7CC,kBAAqB;IACrB,iBAAoB;IACpB,kBAAqB;IACrB,eAAkB;IAClB,eAAkB;IAClB,kBAA+B;IAC/B,iBAAoB;IAEpB,kBAAqB;IAErB;;OAEG;IACH,0BAA8B;IAE9B;;OAEG;IACH,2BAAmC;IAEnC;;OAEG;IACH,qBAAiD;IAEjD;;OAEG;IACH,gBAAmC;IAEnC;;OAEG;IACH,sBAKC;IAMD,aAAyE;IAG3E;;;OAGG;IACH,QAFa,IAAI,CAIhB;IAED;;;OAGG;IACH,QAFa,IAAI,CAIhB;IA6LD,sCAYC;IAED,qBAMC;IAJC,gBAA0C;IAM5C;;;;OAIG;IACH,uBAEC;IAED;;;;;OAKG;IACH,4BAiBC;IAED;;;;;OAKG;IACH,iCAkDC;IAjDC,4BAA8B;IAmDhC;;;;;;;;;;;OAWG;IACH,uCAyCC;IAlCK,iCAAkE;IAepE,yBAA+B;IAqBnC;;;;;;;;;;;OAWG;IACH,0BAMC;IAGD,4CAmDC;CACF;2BAliB0B,KAAK"}
@@ -1723,7 +1723,11 @@ class AuroFloatingUI {
1723
1723
 
1724
1724
  updateState() {
1725
1725
  const isVisible = this.element.isPopoverVisible;
1726
- this.element.trigger.setAttribute('aria-expanded', isVisible);
1726
+
1727
+ // Refactor this to apply attribute to correct focusable element
1728
+ // Reference Issue: https://github.com/AlaskaAirlines/auro-library/issues/105
1729
+ //
1730
+ // this.element.trigger.setAttribute('aria-expanded', isVisible);
1727
1731
 
1728
1732
  if (isVisible) {
1729
1733
  this.element.bib.setAttribute('data-show', true);
@@ -2402,11 +2406,11 @@ class AuroIcon extends BaseIcon {
2402
2406
 
2403
2407
  var iconVersion = '6.1.2';
2404
2408
 
2405
- var styleCss$2 = i$7`:host{position:relative;display:inline-block;max-width:100%}:host([fluid]){display:block}#bibSizer{position:absolute;z-index:-1;opacity:0;pointer-events:none}.label{font-size:var(--ds-text-body-size-xs, 0.75rem);line-height:var(--ds-text-body-size-default, 1rem);transition:font-size .3s cubic-bezier(0.215, 0.61, 0.355, 1);white-space:normal}.label[hasTrigger=false]{font-size:var(--ds-text-body-size-default, 1rem)}.trigger{position:relative;display:flex;align-items:center;border-width:1px;border-style:solid}@media(hover: hover){.trigger:hover{cursor:pointer}}.triggerContentWrapper{overflow:hidden;flex:1;text-overflow:ellipsis;white-space:nowrap}#showStateIcon{display:flex;overflow:hidden;height:100%;align-items:center;margin-left:var(--ds-size-100, 0.5rem)}#showStateIcon [auro-icon]{height:var(--ds-size-300, 1.5rem);line-height:var(--ds-size-300, 1.5rem)}#showStateIcon[data-expanded=true] [auro-icon]{transform:rotate(-180deg)}:host([matchwidth]) #bibSizer{width:100%}:host([disabled]){pointer-events:none}:host([inset]) .trigger{padding:var(--ds-size-150, 0.75rem) var(--ds-size-200, 1rem)}:host([common]) .trigger,:host([inset][bordered]) .trigger{padding:var(--ds-size-200, 1rem) var(--ds-size-150, 0.75rem)}:host([common]) .trigger,:host([rounded]) .trigger{border-radius:var(--ds-border-radius, 0.375rem)}`;
2409
+ var styleCss$2 = i$7`:host{position:relative;display:inline-block;max-width:100%}:host([fluid]){display:block}#bibSizer{position:absolute;z-index:-1;opacity:0;pointer-events:none}.label{font-size:var(--ds-text-body-size-xs, 0.75rem);line-height:var(--ds-text-body-size-default, 1rem);transition:font-size .3s cubic-bezier(0.215, 0.61, 0.355, 1);white-space:normal}.label[hasTrigger=false]{font-size:var(--ds-text-body-size-default, 1rem)}.trigger{position:relative;display:flex;align-items:center}.trigger[showBorder]{border-width:1px;border-style:solid;cursor:pointer;outline-style:solid;outline-width:1px}@media(hover: hover){.trigger:hover{cursor:pointer}}.triggerContentWrapper{overflow:hidden;flex:1;text-overflow:ellipsis;white-space:nowrap}#showStateIcon{display:flex;overflow:hidden;height:100%;align-items:center;margin-left:var(--ds-size-100, 0.5rem)}#showStateIcon [auro-icon]{height:var(--ds-size-300, 1.5rem);line-height:var(--ds-size-300, 1.5rem)}#showStateIcon[data-expanded=true] [auro-icon]{transform:rotate(-180deg)}:host([matchwidth]) #bibSizer{width:100%}:host([disabled]){pointer-events:none}:host([inset]) .trigger{padding:var(--ds-size-150, 0.75rem) var(--ds-size-200, 1rem)}:host([common]) .trigger,:host([inset][bordered]) .trigger{padding:var(--ds-size-200, 1rem) var(--ds-size-150, 0.75rem)}:host([common]) .trigger,:host([rounded]) .trigger{border-radius:var(--ds-border-radius, 0.375rem)}`;
2406
2410
 
2407
- var colorCss$2 = i$7`.label{color:var(--ds-auro-dropdown-label-text-color)}.trigger{border-color:var(--ds-auro-dropdown-trigger-border-color);background-color:var(--ds-auro-dropdown-trigger-container-color);color:var(--ds-auro-dropdown-trigger-text-color)}.trigger:focus-within,.trigger:active{--ds-auro-dropdown-trigger-border-color: var(--ds-color-border-active-default, #0074c8)}.trigger:focus-within:not(:active){--ds-auro-dropdown-trigger-border-color: var(--ds-color-border-ui-focus-default, #2c67b5);outline:1px solid var(--ds-color-border-ui-focus-default, #2c67b5)}.trigger:hover{--ds-auro-dropdown-trigger-container-color: var(--ds-color-container-ui-secondary-hover-default, rgba(0, 0, 0, 0.03))}:host([disabled]){--ds-auro-dropdown-trigger-text-color: var(--ds-color-text-ui-disabled-default, #adadad);--ds-auro-dropdown-label-text-color: var(--ds-color-text-ui-disabled-default, #adadad)}:host([common]),:host([bordered]){--ds-auro-dropdown-trigger-border-color: var(--ds-color-border-primary-default, #585e67)}:host([common]) .trigger:active,:host([common]) .trigger:focus-within,:host([bordered]) .trigger:active,:host([bordered]) .trigger:focus-within{--ds-auro-dropdown-trigger-border-color: var(--ds-color-border-ui-focus-default, #2c67b5)}:host([error]){--ds-auro-dropdown-trigger-border-color: var(--ds-color-border-error-default, #cc1816)}:host([error]) .trigger{outline:solid 1px var(--ds-auro-dropdown-trigger-border-color)}:host([error]) .trigger:focus-within,:host([error]) .trigger:active{--ds-auro-dropdown-trigger-border-color: var(--ds-color-border-active-default, #0074c8)}:host([error]) .trigger:active{box-shadow:none;outline:none}:host([disabled][common]),:host([disabled][bordered]){--ds-auro-dropdown-trigger-border-color: var(--ds-color-border-ui-disabled-default, #adadad)}`;
2411
+ var colorCss$2 = i$7`.label{color:var(--ds-auro-dropdown-label-text-color)}.trigger{border-color:var(--ds-auro-dropdown-trigger-border-color);background-color:var(--ds-auro-dropdown-trigger-container-color);color:var(--ds-auro-dropdown-trigger-text-color);outline-color:var(--ds-auro-dropdown-trigger-outline-color)}.trigger:focus-within,.trigger:active{--ds-auro-dropdown-trigger-border-color: var(--ds-color-border-active-default, #0074c8);--ds-auro-dropdown-trigger-outline-color: var(--ds-color-border-active-default, #0074c8)}.trigger:focus-within:not(:active){--ds-auro-dropdown-trigger-border-color: var(--ds-color-border-ui-focus-default, #2c67b5);--ds-auro-dropdown-trigger-outline-color: var(--ds-color-border-ui-focus-default, #2c67b5)}.trigger:hover{--ds-auro-dropdown-trigger-container-color: var(--ds-color-container-ui-secondary-hover-default, rgba(0, 0, 0, 0.03))}:host([disabled]){--ds-auro-dropdown-trigger-text-color: var(--ds-color-text-ui-disabled-default, #adadad);--ds-auro-dropdown-label-text-color: var(--ds-color-text-ui-disabled-default, #adadad)}:host([common]),:host([bordered]){--ds-auro-dropdown-trigger-border-color: var(--ds-color-border-primary-default, #585e67)}:host([common]) .trigger:active,:host([common]) .trigger:focus-within,:host([bordered]) .trigger:active,:host([bordered]) .trigger:focus-within{--ds-auro-dropdown-trigger-border-color: var(--ds-color-border-ui-focus-default, #2c67b5)}:host([error]){--ds-auro-dropdown-trigger-border-color: var(--ds-color-border-error-default, #cc1816)}:host([error]) .trigger{outline:solid 1px var(--ds-auro-dropdown-trigger-border-color)}:host([error]) .trigger:focus-within,:host([error]) .trigger:active{--ds-auro-dropdown-trigger-border-color: var(--ds-color-border-active-default, #0074c8)}:host([error]) .trigger:active{box-shadow:none;outline:none}:host([disabled][common]),:host([disabled][bordered]){--ds-auro-dropdown-trigger-border-color: var(--ds-color-border-ui-disabled-default, #adadad)}`;
2408
2412
 
2409
- var tokensCss$1 = i$7`:host{--ds-auro-dropdown-label-text-color: var(--ds-color-text-secondary-default, #525252);--ds-auro-dropdown-popover-container-color: var(--ds-color-container-primary-default, #ffffff);--ds-auro-dropdown-popover-border-color: transparent;--ds-auro-dropdown-popover-text-color: var(--ds-color-text-primary-default, #2a2a2a);--ds-auro-dropdown-trigger-container-color: var(--ds-color-container-primary-default, #ffffff);--ds-auro-dropdown-trigger-border-color: transparent;--ds-auro-dropdown-trigger-text-color: var(--ds-color-text-primary-default, #2a2a2a);--ds-auro-dropdownbib-boxshadow-color: var(--ds-elevation-200, 0px 0px 10px rgba(0, 0, 0, 0.15));--ds-auro-dropdownbib-container-color: var(--ds-color-container-primary-default, #ffffff);--ds-auro-dropdownbib-text-color: var(--ds-color-text-primary-default, #2a2a2a)}`;
2413
+ var tokensCss$1 = i$7`:host{--ds-auro-dropdown-label-text-color: var(--ds-color-text-secondary-default, #525252);--ds-auro-dropdown-popover-container-color: var(--ds-color-container-primary-default, #ffffff);--ds-auro-dropdown-popover-border-color: transparent;--ds-auro-dropdown-popover-text-color: var(--ds-color-text-primary-default, #2a2a2a);--ds-auro-dropdown-trigger-container-color: var(--ds-color-container-primary-default, #ffffff);--ds-auro-dropdown-trigger-border-color: transparent;--ds-auro-dropdown-trigger-outline-color: transparent;--ds-auro-dropdown-trigger-text-color: var(--ds-color-text-primary-default, #2a2a2a);--ds-auro-dropdownbib-boxshadow-color: var(--ds-elevation-200, 0px 0px 10px rgba(0, 0, 0, 0.15));--ds-auro-dropdownbib-container-color: var(--ds-color-container-primary-default, #ffffff);--ds-auro-dropdownbib-text-color: var(--ds-color-text-primary-default, #2a2a2a)}`;
2410
2414
 
2411
2415
  /**
2412
2416
  * @license
@@ -2745,7 +2749,6 @@ if (!customElements.get("auro-dropdownbib")) {
2745
2749
  * @csspart trigger - The trigger content container.
2746
2750
  * @csspart chevron - The collapsed/expanded state icon container.
2747
2751
  * @csspart helpText - The helpText content container.
2748
- * @csspart popover - The bib content container.
2749
2752
  * @event auroDropdown-triggerClick - Notifies that the trigger has been clicked.
2750
2753
  * @event auroDropdown-toggled - Notifies that the visibility of the dropdown bib has changed.
2751
2754
  */
@@ -3078,6 +3081,64 @@ class AuroDropdown extends r$4 {
3078
3081
  return inCustomSlot;
3079
3082
  }
3080
3083
 
3084
+ /**
3085
+ * Determines if the element or any children are focusable.
3086
+ * @private
3087
+ * @param {HTMLElement} element - Element to check.
3088
+ * @returns {Boolean} - True if the element or any children are focusable.
3089
+ */
3090
+ containsFocusableElement(element) {
3091
+ this.showTriggerBorders = true;
3092
+
3093
+ const nodes = [
3094
+ element,
3095
+ ...element.children
3096
+ ];
3097
+
3098
+ const focusableElements = [
3099
+ 'a',
3100
+ 'auro-hyperlink',
3101
+ 'button',
3102
+ 'auro-button',
3103
+ 'input',
3104
+ 'auro-input',
3105
+ ];
3106
+
3107
+ const focusableElementsThatNeedBorders = ['auro-input'];
3108
+
3109
+ const result = nodes.some((node) => {
3110
+ const tagName = node.tagName.toLowerCase();
3111
+
3112
+ if (node.tabIndex > -1) {
3113
+ return true;
3114
+ }
3115
+
3116
+ if (focusableElements.includes(tagName)) {
3117
+ if ((tagName === 'a' || tagName === 'auro-hyperlink' || node.hasAttribute('auro-hyperlink')) && node.hasAttribute('href')) {
3118
+ return true;
3119
+ }
3120
+ if (!node.hasAttribute('disabled')) {
3121
+ return true;
3122
+ }
3123
+ }
3124
+
3125
+ if (focusableElements.some((focusableElement) => focusableElement.startsWith('auro-') && (focusableElement === tagName || node.hasAttribute(focusableElement)))) {
3126
+ return true;
3127
+ }
3128
+
3129
+ return false;
3130
+ });
3131
+
3132
+ if (result) {
3133
+ this.showTriggerBorders = !nodes.some((node) => {
3134
+ const tagName = node.tagName.toLowerCase();
3135
+ return focusableElements.includes(tagName) && !focusableElementsThatNeedBorders.includes(tagName);
3136
+ });
3137
+ }
3138
+
3139
+ return result;
3140
+ }
3141
+
3081
3142
  /**
3082
3143
  * Handles changes to the trigger content slot and updates related properties.
3083
3144
  *
@@ -3093,6 +3154,24 @@ class AuroDropdown extends r$4 {
3093
3154
  handleTriggerContentSlotChange(event) {
3094
3155
  this.floater.handleTriggerTabIndex();
3095
3156
 
3157
+ const triggerContentNodes = this.shadowRoot.querySelector('.triggerContent slot').assignedNodes();
3158
+
3159
+ triggerContentNodes.forEach((node) => {
3160
+ if (!this.triggerContentFocusable) {
3161
+ this.triggerContentFocusable = this.containsFocusableElement(node);
3162
+ }
3163
+ });
3164
+
3165
+ const trigger = this.shadowRoot.querySelector('#trigger');
3166
+
3167
+ if (!this.triggerContentFocusable) {
3168
+ trigger.setAttribute('tabindex', '0');
3169
+ trigger.setAttribute('role', 'button');
3170
+ } else {
3171
+ trigger.removeAttribute('tabindex');
3172
+ trigger.removeAttribute('role');
3173
+ }
3174
+
3096
3175
  if (event) {
3097
3176
  this.triggerNode = event.target;
3098
3177
  this.triggerContentSlot = event.target.assignedNodes();
@@ -3143,10 +3222,9 @@ class AuroDropdown extends r$4 {
3143
3222
  id="trigger"
3144
3223
  class="trigger"
3145
3224
  part="trigger"
3146
- role="button"
3147
3225
  aria-labelledby="triggerLabel"
3148
- aria-controls="popover"
3149
3226
  tabindex="${this.tabIndex}"
3227
+ ?showBorder="${this.showTriggerBorders}"
3150
3228
  >
3151
3229
  <div class="triggerContentWrapper">
3152
3230
  <label class="label" id="triggerLabel" hasTrigger=${this.hasTriggerContent}>
@@ -20,14 +20,14 @@
20
20
  "lit": "^3.2.1"
21
21
  },
22
22
  "peerDependencies": {
23
- "@aurodesignsystem/design-tokens": "^4.9.2",
23
+ "@aurodesignsystem/design-tokens": "^4.13.0",
24
24
  "@aurodesignsystem/webcorestylesheets": "^5.1.2"
25
25
  },
26
26
  "devDependencies": {
27
27
  "@auro-formkit/build-tools": "*",
28
28
  "@auro-formkit/config": "*",
29
29
  "@auro-formkit/typescript": "*",
30
- "@aurodesignsystem/design-tokens": "^4.12.1",
30
+ "@aurodesignsystem/design-tokens": "^4.13.0",
31
31
  "@aurodesignsystem/webcorestylesheets": "^5.1.2",
32
32
  "@rollup/plugin-node-resolve": "^15.3.0",
33
33
  "postcss-selector-replace": "^1.0.2",
@@ -3,7 +3,7 @@
3
3
 
4
4
  // ---------------------------------------------------------------------
5
5
 
6
- /* eslint-disable max-lines, lit-a11y/accessible-name, lit/no-invalid-html, lit/binding-positions, template-curly-spacing */
6
+ /* eslint-disable max-lines, lit-a11y/accessible-name, lit/no-invalid-html, lit/binding-positions, template-curly-spacing, no-magic-numbers */
7
7
 
8
8
  import { html } from "lit/static-html.js";
9
9
  import { LitElement } from "lit";
@@ -32,7 +32,6 @@ import './auro-dropdownBib.js';
32
32
  * @csspart trigger - The trigger content container.
33
33
  * @csspart chevron - The collapsed/expanded state icon container.
34
34
  * @csspart helpText - The helpText content container.
35
- * @csspart popover - The bib content container.
36
35
  * @event auroDropdown-triggerClick - Notifies that the trigger has been clicked.
37
36
  * @event auroDropdown-toggled - Notifies that the visibility of the dropdown bib has changed.
38
37
  */
@@ -367,6 +366,64 @@ export class AuroDropdown extends LitElement {
367
366
  return inCustomSlot;
368
367
  }
369
368
 
369
+ /**
370
+ * Determines if the element or any children are focusable.
371
+ * @private
372
+ * @param {HTMLElement} element - Element to check.
373
+ * @returns {Boolean} - True if the element or any children are focusable.
374
+ */
375
+ containsFocusableElement(element) {
376
+ this.showTriggerBorders = true;
377
+
378
+ const nodes = [
379
+ element,
380
+ ...element.children
381
+ ];
382
+
383
+ const focusableElements = [
384
+ 'a',
385
+ 'auro-hyperlink',
386
+ 'button',
387
+ 'auro-button',
388
+ 'input',
389
+ 'auro-input',
390
+ ];
391
+
392
+ const focusableElementsThatNeedBorders = ['auro-input'];
393
+
394
+ const result = nodes.some((node) => {
395
+ const tagName = node.tagName.toLowerCase();
396
+
397
+ if (node.tabIndex > -1) {
398
+ return true;
399
+ }
400
+
401
+ if (focusableElements.includes(tagName)) {
402
+ if ((tagName === 'a' || tagName === 'auro-hyperlink' || node.hasAttribute('auro-hyperlink')) && node.hasAttribute('href')) {
403
+ return true;
404
+ }
405
+ if (!node.hasAttribute('disabled')) {
406
+ return true;
407
+ }
408
+ }
409
+
410
+ if (focusableElements.some((focusableElement) => focusableElement.startsWith('auro-') && (focusableElement === tagName || node.hasAttribute(focusableElement)))) {
411
+ return true;
412
+ }
413
+
414
+ return false;
415
+ });
416
+
417
+ if (result) {
418
+ this.showTriggerBorders = !nodes.some((node) => {
419
+ const tagName = node.tagName.toLowerCase();
420
+ return focusableElements.includes(tagName) && !focusableElementsThatNeedBorders.includes(tagName);
421
+ });
422
+ }
423
+
424
+ return result;
425
+ }
426
+
370
427
  /**
371
428
  * Handles changes to the trigger content slot and updates related properties.
372
429
  *
@@ -382,6 +439,24 @@ export class AuroDropdown extends LitElement {
382
439
  handleTriggerContentSlotChange(event) {
383
440
  this.floater.handleTriggerTabIndex();
384
441
 
442
+ const triggerContentNodes = this.shadowRoot.querySelector('.triggerContent slot').assignedNodes();
443
+
444
+ triggerContentNodes.forEach((node) => {
445
+ if (!this.triggerContentFocusable) {
446
+ this.triggerContentFocusable = this.containsFocusableElement(node);
447
+ }
448
+ });
449
+
450
+ const trigger = this.shadowRoot.querySelector('#trigger');
451
+
452
+ if (!this.triggerContentFocusable) {
453
+ trigger.setAttribute('tabindex', '0');
454
+ trigger.setAttribute('role', 'button');
455
+ } else {
456
+ trigger.removeAttribute('tabindex');
457
+ trigger.removeAttribute('role');
458
+ }
459
+
385
460
  if (event) {
386
461
  this.triggerNode = event.target;
387
462
  this.triggerContentSlot = event.target.assignedNodes();
@@ -432,10 +507,9 @@ export class AuroDropdown extends LitElement {
432
507
  id="trigger"
433
508
  class="trigger"
434
509
  part="trigger"
435
- role="button"
436
510
  aria-labelledby="triggerLabel"
437
- aria-controls="popover"
438
511
  tabindex="${this.tabIndex}"
512
+ ?showBorder="${this.showTriggerBorders}"
439
513
  >
440
514
  <div class="triggerContentWrapper">
441
515
  <label class="label" id="triggerLabel" hasTrigger=${this.hasTriggerContent}>
@@ -1,2 +1,2 @@
1
1
  import { css } from 'lit';
2
- export default css`.label{color:var(--ds-auro-dropdown-label-text-color)}.trigger{border-color:var(--ds-auro-dropdown-trigger-border-color);background-color:var(--ds-auro-dropdown-trigger-container-color);color:var(--ds-auro-dropdown-trigger-text-color)}.trigger:focus-within,.trigger:active{--ds-auro-dropdown-trigger-border-color: var(--ds-color-border-active-default, #0074c8)}.trigger:focus-within:not(:active){--ds-auro-dropdown-trigger-border-color: var(--ds-color-border-ui-focus-default, #2c67b5);outline:1px solid var(--ds-color-border-ui-focus-default, #2c67b5)}.trigger:hover{--ds-auro-dropdown-trigger-container-color: var(--ds-color-container-ui-secondary-hover-default, rgba(0, 0, 0, 0.03))}:host([disabled]){--ds-auro-dropdown-trigger-text-color: var(--ds-color-text-ui-disabled-default, #adadad);--ds-auro-dropdown-label-text-color: var(--ds-color-text-ui-disabled-default, #adadad)}:host([common]),:host([bordered]){--ds-auro-dropdown-trigger-border-color: var(--ds-color-border-primary-default, #585e67)}:host([common]) .trigger:active,:host([common]) .trigger:focus-within,:host([bordered]) .trigger:active,:host([bordered]) .trigger:focus-within{--ds-auro-dropdown-trigger-border-color: var(--ds-color-border-ui-focus-default, #2c67b5)}:host([error]){--ds-auro-dropdown-trigger-border-color: var(--ds-color-border-error-default, #cc1816)}:host([error]) .trigger{outline:solid 1px var(--ds-auro-dropdown-trigger-border-color)}:host([error]) .trigger:focus-within,:host([error]) .trigger:active{--ds-auro-dropdown-trigger-border-color: var(--ds-color-border-active-default, #0074c8)}:host([error]) .trigger:active{box-shadow:none;outline:none}:host([disabled][common]),:host([disabled][bordered]){--ds-auro-dropdown-trigger-border-color: var(--ds-color-border-ui-disabled-default, #adadad)}`;
2
+ export default css`.label{color:var(--ds-auro-dropdown-label-text-color)}.trigger{border-color:var(--ds-auro-dropdown-trigger-border-color);background-color:var(--ds-auro-dropdown-trigger-container-color);color:var(--ds-auro-dropdown-trigger-text-color);outline-color:var(--ds-auro-dropdown-trigger-outline-color)}.trigger:focus-within,.trigger:active{--ds-auro-dropdown-trigger-border-color: var(--ds-color-border-active-default, #0074c8);--ds-auro-dropdown-trigger-outline-color: var(--ds-color-border-active-default, #0074c8)}.trigger:focus-within:not(:active){--ds-auro-dropdown-trigger-border-color: var(--ds-color-border-ui-focus-default, #2c67b5);--ds-auro-dropdown-trigger-outline-color: var(--ds-color-border-ui-focus-default, #2c67b5)}.trigger:hover{--ds-auro-dropdown-trigger-container-color: var(--ds-color-container-ui-secondary-hover-default, rgba(0, 0, 0, 0.03))}:host([disabled]){--ds-auro-dropdown-trigger-text-color: var(--ds-color-text-ui-disabled-default, #adadad);--ds-auro-dropdown-label-text-color: var(--ds-color-text-ui-disabled-default, #adadad)}:host([common]),:host([bordered]){--ds-auro-dropdown-trigger-border-color: var(--ds-color-border-primary-default, #585e67)}:host([common]) .trigger:active,:host([common]) .trigger:focus-within,:host([bordered]) .trigger:active,:host([bordered]) .trigger:focus-within{--ds-auro-dropdown-trigger-border-color: var(--ds-color-border-ui-focus-default, #2c67b5)}:host([error]){--ds-auro-dropdown-trigger-border-color: var(--ds-color-border-error-default, #cc1816)}:host([error]) .trigger{outline:solid 1px var(--ds-auro-dropdown-trigger-border-color)}:host([error]) .trigger:focus-within,:host([error]) .trigger:active{--ds-auro-dropdown-trigger-border-color: var(--ds-color-border-active-default, #0074c8)}:host([error]) .trigger:active{box-shadow:none;outline:none}:host([disabled][common]),:host([disabled][bordered]){--ds-auro-dropdown-trigger-border-color: var(--ds-color-border-ui-disabled-default, #adadad)}`;