@fluentui/web-components 3.0.0-rc.15 → 3.0.0-rc.16

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 (522) hide show
  1. package/CHANGELOG.md +16 -2
  2. package/custom-elements.json +10963 -11517
  3. package/dist/esm/accordion/accordion.d.ts +4 -7
  4. package/dist/esm/accordion/accordion.definition.js +2 -2
  5. package/dist/esm/accordion/accordion.definition.js.map +1 -1
  6. package/dist/esm/accordion/accordion.js +4 -7
  7. package/dist/esm/accordion/accordion.js.map +1 -1
  8. package/dist/esm/accordion/accordion.options.d.ts +7 -1
  9. package/dist/esm/accordion/accordion.options.js +7 -0
  10. package/dist/esm/accordion/accordion.options.js.map +1 -1
  11. package/dist/esm/accordion/accordion.styles.js +1 -1
  12. package/dist/esm/accordion/accordion.styles.js.map +1 -1
  13. package/dist/esm/accordion/index.d.ts +1 -0
  14. package/dist/esm/accordion/index.js +1 -0
  15. package/dist/esm/accordion/index.js.map +1 -1
  16. package/dist/esm/accordion-item/accordion-item.d.ts +2 -4
  17. package/dist/esm/accordion-item/accordion-item.definition.js +2 -2
  18. package/dist/esm/accordion-item/accordion-item.definition.js.map +1 -1
  19. package/dist/esm/accordion-item/accordion-item.js +1 -1
  20. package/dist/esm/accordion-item/accordion-item.js.map +1 -1
  21. package/dist/esm/accordion-item/accordion-item.options.d.ts +6 -0
  22. package/dist/esm/accordion-item/accordion-item.options.js +7 -0
  23. package/dist/esm/accordion-item/accordion-item.options.js.map +1 -1
  24. package/dist/esm/accordion-item/accordion-item.styles.js +1 -1
  25. package/dist/esm/accordion-item/accordion-item.styles.js.map +1 -1
  26. package/dist/esm/accordion-item/accordion-item.template.js +2 -2
  27. package/dist/esm/accordion-item/accordion-item.template.js.map +1 -1
  28. package/dist/esm/accordion-item/index.d.ts +1 -0
  29. package/dist/esm/accordion-item/index.js +1 -0
  30. package/dist/esm/accordion-item/index.js.map +1 -1
  31. package/dist/esm/anchor-button/anchor-button.base.d.ts +1 -1
  32. package/dist/esm/anchor-button/anchor-button.base.js +7 -7
  33. package/dist/esm/anchor-button/anchor-button.base.js.map +1 -1
  34. package/dist/esm/anchor-button/anchor-button.d.ts +1 -2
  35. package/dist/esm/anchor-button/anchor-button.definition.js +2 -2
  36. package/dist/esm/anchor-button/anchor-button.definition.js.map +1 -1
  37. package/dist/esm/anchor-button/anchor-button.js +1 -1
  38. package/dist/esm/anchor-button/anchor-button.js.map +1 -1
  39. package/dist/esm/anchor-button/anchor-button.options.d.ts +7 -1
  40. package/dist/esm/anchor-button/anchor-button.options.js +7 -0
  41. package/dist/esm/anchor-button/anchor-button.options.js.map +1 -1
  42. package/dist/esm/anchor-button/anchor-button.styles.js +4 -3
  43. package/dist/esm/anchor-button/anchor-button.styles.js.map +1 -1
  44. package/dist/esm/anchor-button/anchor-button.template.js +1 -1
  45. package/dist/esm/anchor-button/anchor-button.template.js.map +1 -1
  46. package/dist/esm/anchor-button/index.d.ts +1 -0
  47. package/dist/esm/anchor-button/index.js +1 -0
  48. package/dist/esm/anchor-button/index.js.map +1 -1
  49. package/dist/esm/avatar/avatar.definition.js +2 -2
  50. package/dist/esm/avatar/avatar.definition.js.map +1 -1
  51. package/dist/esm/avatar/avatar.options.d.ts +7 -1
  52. package/dist/esm/avatar/avatar.options.js +7 -0
  53. package/dist/esm/avatar/avatar.options.js.map +1 -1
  54. package/dist/esm/avatar/avatar.styles.js +1 -1
  55. package/dist/esm/avatar/avatar.styles.js.map +1 -1
  56. package/dist/esm/avatar/index.d.ts +1 -0
  57. package/dist/esm/avatar/index.js +1 -0
  58. package/dist/esm/avatar/index.js.map +1 -1
  59. package/dist/esm/badge/badge.d.ts +1 -1
  60. package/dist/esm/badge/badge.definition.js +2 -2
  61. package/dist/esm/badge/badge.definition.js.map +1 -1
  62. package/dist/esm/badge/badge.js +1 -1
  63. package/dist/esm/badge/badge.js.map +1 -1
  64. package/dist/esm/badge/badge.options.d.ts +9 -2
  65. package/dist/esm/badge/badge.options.js +7 -0
  66. package/dist/esm/badge/badge.options.js.map +1 -1
  67. package/dist/esm/badge/badge.styles.js +5 -4
  68. package/dist/esm/badge/badge.styles.js.map +1 -1
  69. package/dist/esm/badge/badge.template.js +1 -1
  70. package/dist/esm/badge/badge.template.js.map +1 -1
  71. package/dist/esm/badge/index.d.ts +1 -0
  72. package/dist/esm/badge/index.js +1 -0
  73. package/dist/esm/badge/index.js.map +1 -1
  74. package/dist/esm/button/button.d.ts +1 -1
  75. package/dist/esm/button/button.definition.js +2 -2
  76. package/dist/esm/button/button.definition.js.map +1 -1
  77. package/dist/esm/button/button.js +1 -1
  78. package/dist/esm/button/button.js.map +1 -1
  79. package/dist/esm/button/button.options.d.ts +8 -2
  80. package/dist/esm/button/button.options.js +7 -0
  81. package/dist/esm/button/button.options.js.map +1 -1
  82. package/dist/esm/button/button.styles.js +5 -3
  83. package/dist/esm/button/button.styles.js.map +1 -1
  84. package/dist/esm/button/button.template.js +1 -1
  85. package/dist/esm/button/button.template.js.map +1 -1
  86. package/dist/esm/button/index.d.ts +1 -0
  87. package/dist/esm/button/index.js +1 -0
  88. package/dist/esm/button/index.js.map +1 -1
  89. package/dist/esm/checkbox/checkbox.definition.js +2 -2
  90. package/dist/esm/checkbox/checkbox.definition.js.map +1 -1
  91. package/dist/esm/checkbox/checkbox.options.d.ts +6 -0
  92. package/dist/esm/checkbox/checkbox.options.js +7 -0
  93. package/dist/esm/checkbox/checkbox.options.js.map +1 -1
  94. package/dist/esm/checkbox/checkbox.styles.js +4 -3
  95. package/dist/esm/checkbox/checkbox.styles.js.map +1 -1
  96. package/dist/esm/checkbox/index.d.ts +1 -0
  97. package/dist/esm/checkbox/index.js +1 -0
  98. package/dist/esm/checkbox/index.js.map +1 -1
  99. package/dist/esm/compound-button/compound-button.definition.js +2 -2
  100. package/dist/esm/compound-button/compound-button.definition.js.map +1 -1
  101. package/dist/esm/compound-button/compound-button.options.d.ts +7 -1
  102. package/dist/esm/compound-button/compound-button.options.js +7 -0
  103. package/dist/esm/compound-button/compound-button.options.js.map +1 -1
  104. package/dist/esm/compound-button/compound-button.styles.js +4 -3
  105. package/dist/esm/compound-button/compound-button.styles.js.map +1 -1
  106. package/dist/esm/compound-button/compound-button.template.js +1 -1
  107. package/dist/esm/compound-button/compound-button.template.js.map +1 -1
  108. package/dist/esm/compound-button/index.d.ts +1 -0
  109. package/dist/esm/compound-button/index.js +1 -0
  110. package/dist/esm/compound-button/index.js.map +1 -1
  111. package/dist/esm/counter-badge/counter-badge.d.ts +1 -1
  112. package/dist/esm/counter-badge/counter-badge.definition.js +2 -2
  113. package/dist/esm/counter-badge/counter-badge.definition.js.map +1 -1
  114. package/dist/esm/counter-badge/counter-badge.js +1 -1
  115. package/dist/esm/counter-badge/counter-badge.js.map +1 -1
  116. package/dist/esm/counter-badge/counter-badge.options.d.ts +7 -1
  117. package/dist/esm/counter-badge/counter-badge.options.js +7 -0
  118. package/dist/esm/counter-badge/counter-badge.options.js.map +1 -1
  119. package/dist/esm/counter-badge/counter-badge.styles.js +1 -1
  120. package/dist/esm/counter-badge/counter-badge.styles.js.map +1 -1
  121. package/dist/esm/counter-badge/index.d.ts +1 -0
  122. package/dist/esm/counter-badge/index.js +1 -0
  123. package/dist/esm/counter-badge/index.js.map +1 -1
  124. package/dist/esm/dialog/dialog.definition.js +2 -2
  125. package/dist/esm/dialog/dialog.definition.js.map +1 -1
  126. package/dist/esm/dialog/dialog.options.d.ts +7 -1
  127. package/dist/esm/dialog/dialog.options.js +7 -0
  128. package/dist/esm/dialog/dialog.options.js.map +1 -1
  129. package/dist/esm/dialog/dialog.styles.js +4 -3
  130. package/dist/esm/dialog/dialog.styles.js.map +1 -1
  131. package/dist/esm/dialog/index.d.ts +1 -0
  132. package/dist/esm/dialog/index.js +1 -0
  133. package/dist/esm/dialog/index.js.map +1 -1
  134. package/dist/esm/dialog-body/dialog-body.definition.js +2 -2
  135. package/dist/esm/dialog-body/dialog-body.definition.js.map +1 -1
  136. package/dist/esm/dialog-body/dialog-body.options.d.ts +6 -0
  137. package/dist/esm/dialog-body/dialog-body.options.js +8 -0
  138. package/dist/esm/dialog-body/dialog-body.options.js.map +1 -0
  139. package/dist/esm/dialog-body/dialog-body.styles.js +1 -1
  140. package/dist/esm/dialog-body/dialog-body.styles.js.map +1 -1
  141. package/dist/esm/dialog-body/index.d.ts +1 -0
  142. package/dist/esm/dialog-body/index.js +1 -0
  143. package/dist/esm/dialog-body/index.js.map +1 -1
  144. package/dist/esm/divider/divider.definition.js +2 -2
  145. package/dist/esm/divider/divider.definition.js.map +1 -1
  146. package/dist/esm/divider/divider.options.d.ts +7 -1
  147. package/dist/esm/divider/divider.options.js +7 -0
  148. package/dist/esm/divider/divider.options.js.map +1 -1
  149. package/dist/esm/divider/divider.styles.js +5 -3
  150. package/dist/esm/divider/divider.styles.js.map +1 -1
  151. package/dist/esm/divider/index.d.ts +1 -0
  152. package/dist/esm/divider/index.js +1 -0
  153. package/dist/esm/divider/index.js.map +1 -1
  154. package/dist/esm/drawer/drawer.d.ts +8 -7
  155. package/dist/esm/drawer/drawer.definition.js +2 -2
  156. package/dist/esm/drawer/drawer.definition.js.map +1 -1
  157. package/dist/esm/drawer/drawer.js +8 -7
  158. package/dist/esm/drawer/drawer.js.map +1 -1
  159. package/dist/esm/drawer/drawer.options.d.ts +7 -1
  160. package/dist/esm/drawer/drawer.options.js +7 -0
  161. package/dist/esm/drawer/drawer.options.js.map +1 -1
  162. package/dist/esm/drawer/drawer.styles.js +1 -1
  163. package/dist/esm/drawer/drawer.styles.js.map +1 -1
  164. package/dist/esm/drawer/index.d.ts +1 -0
  165. package/dist/esm/drawer/index.js +1 -0
  166. package/dist/esm/drawer/index.js.map +1 -1
  167. package/dist/esm/drawer-body/drawer-body.definition.js +2 -2
  168. package/dist/esm/drawer-body/drawer-body.definition.js.map +1 -1
  169. package/dist/esm/drawer-body/drawer-body.options.d.ts +6 -0
  170. package/dist/esm/drawer-body/drawer-body.options.js +8 -0
  171. package/dist/esm/drawer-body/drawer-body.options.js.map +1 -0
  172. package/dist/esm/drawer-body/drawer-body.styles.js +1 -1
  173. package/dist/esm/drawer-body/drawer-body.styles.js.map +1 -1
  174. package/dist/esm/drawer-body/index.d.ts +1 -0
  175. package/dist/esm/drawer-body/index.js +1 -0
  176. package/dist/esm/drawer-body/index.js.map +1 -1
  177. package/dist/esm/dropdown/dropdown.definition.js +2 -2
  178. package/dist/esm/dropdown/dropdown.definition.js.map +1 -1
  179. package/dist/esm/dropdown/dropdown.options.d.ts +6 -0
  180. package/dist/esm/dropdown/dropdown.options.js +7 -0
  181. package/dist/esm/dropdown/dropdown.options.js.map +1 -1
  182. package/dist/esm/dropdown/index.d.ts +1 -0
  183. package/dist/esm/dropdown/index.js +1 -0
  184. package/dist/esm/dropdown/index.js.map +1 -1
  185. package/dist/esm/field/field.definition.js +2 -2
  186. package/dist/esm/field/field.definition.js.map +1 -1
  187. package/dist/esm/field/field.options.d.ts +6 -0
  188. package/dist/esm/field/field.options.js +7 -0
  189. package/dist/esm/field/field.options.js.map +1 -1
  190. package/dist/esm/field/index.d.ts +1 -0
  191. package/dist/esm/field/index.js +1 -0
  192. package/dist/esm/field/index.js.map +1 -1
  193. package/dist/esm/fluent-design-system.js +1 -1
  194. package/dist/esm/fluent-design-system.js.map +1 -1
  195. package/dist/esm/image/image.definition.js +2 -2
  196. package/dist/esm/image/image.definition.js.map +1 -1
  197. package/dist/esm/image/image.options.d.ts +7 -1
  198. package/dist/esm/image/image.options.js +7 -0
  199. package/dist/esm/image/image.options.js.map +1 -1
  200. package/dist/esm/image/index.d.ts +1 -0
  201. package/dist/esm/image/index.js +1 -0
  202. package/dist/esm/image/index.js.map +1 -1
  203. package/dist/esm/index.d.ts +0 -2
  204. package/dist/esm/index.js +0 -1
  205. package/dist/esm/index.js.map +1 -1
  206. package/dist/esm/label/index.d.ts +1 -0
  207. package/dist/esm/label/index.js +1 -0
  208. package/dist/esm/label/index.js.map +1 -1
  209. package/dist/esm/label/label.definition.js +2 -2
  210. package/dist/esm/label/label.definition.js.map +1 -1
  211. package/dist/esm/label/label.options.d.ts +7 -1
  212. package/dist/esm/label/label.options.js +7 -0
  213. package/dist/esm/label/label.options.js.map +1 -1
  214. package/dist/esm/label/label.styles.js +1 -1
  215. package/dist/esm/label/label.styles.js.map +1 -1
  216. package/dist/esm/link/index.d.ts +1 -0
  217. package/dist/esm/link/index.js +1 -0
  218. package/dist/esm/link/index.js.map +1 -1
  219. package/dist/esm/link/link.definition.js +2 -2
  220. package/dist/esm/link/link.definition.js.map +1 -1
  221. package/dist/esm/link/link.options.d.ts +7 -1
  222. package/dist/esm/link/link.options.js +7 -0
  223. package/dist/esm/link/link.options.js.map +1 -1
  224. package/dist/esm/link/link.styles.js +5 -3
  225. package/dist/esm/link/link.styles.js.map +1 -1
  226. package/dist/esm/listbox/index.d.ts +1 -0
  227. package/dist/esm/listbox/index.js +1 -0
  228. package/dist/esm/listbox/index.js.map +1 -1
  229. package/dist/esm/listbox/listbox.definition.js +2 -2
  230. package/dist/esm/listbox/listbox.definition.js.map +1 -1
  231. package/dist/esm/listbox/listbox.options.d.ts +6 -0
  232. package/dist/esm/listbox/listbox.options.js +7 -0
  233. package/dist/esm/listbox/listbox.options.js.map +1 -1
  234. package/dist/esm/menu/index.d.ts +1 -0
  235. package/dist/esm/menu/index.js +1 -0
  236. package/dist/esm/menu/index.js.map +1 -1
  237. package/dist/esm/menu/menu.definition.js +2 -2
  238. package/dist/esm/menu/menu.definition.js.map +1 -1
  239. package/dist/esm/menu/menu.js +4 -3
  240. package/dist/esm/menu/menu.js.map +1 -1
  241. package/dist/esm/menu/menu.options.d.ts +6 -0
  242. package/dist/esm/menu/menu.options.js +8 -0
  243. package/dist/esm/menu/menu.options.js.map +1 -0
  244. package/dist/esm/menu/menu.styles.js +1 -1
  245. package/dist/esm/menu/menu.styles.js.map +1 -1
  246. package/dist/esm/menu-button/index.d.ts +1 -0
  247. package/dist/esm/menu-button/index.js +1 -0
  248. package/dist/esm/menu-button/index.js.map +1 -1
  249. package/dist/esm/menu-button/menu-button.definition.js +2 -2
  250. package/dist/esm/menu-button/menu-button.definition.js.map +1 -1
  251. package/dist/esm/menu-button/menu-button.options.d.ts +7 -1
  252. package/dist/esm/menu-button/menu-button.options.js +7 -0
  253. package/dist/esm/menu-button/menu-button.options.js.map +1 -1
  254. package/dist/esm/menu-item/index.d.ts +1 -0
  255. package/dist/esm/menu-item/index.js +1 -0
  256. package/dist/esm/menu-item/index.js.map +1 -1
  257. package/dist/esm/menu-item/menu-item.d.ts +3 -1
  258. package/dist/esm/menu-item/menu-item.definition.js +2 -2
  259. package/dist/esm/menu-item/menu-item.definition.js.map +1 -1
  260. package/dist/esm/menu-item/menu-item.js +19 -7
  261. package/dist/esm/menu-item/menu-item.js.map +1 -1
  262. package/dist/esm/menu-item/menu-item.options.d.ts +7 -1
  263. package/dist/esm/menu-item/menu-item.options.js +7 -0
  264. package/dist/esm/menu-item/menu-item.options.js.map +1 -1
  265. package/dist/esm/menu-item/menu-item.styles.js +5 -3
  266. package/dist/esm/menu-item/menu-item.styles.js.map +1 -1
  267. package/dist/esm/menu-item/menu-item.template.js +3 -2
  268. package/dist/esm/menu-item/menu-item.template.js.map +1 -1
  269. package/dist/esm/menu-list/index.d.ts +1 -0
  270. package/dist/esm/menu-list/index.js +1 -0
  271. package/dist/esm/menu-list/index.js.map +1 -1
  272. package/dist/esm/menu-list/menu-list.base.d.ts +5 -24
  273. package/dist/esm/menu-list/menu-list.base.js +20 -125
  274. package/dist/esm/menu-list/menu-list.base.js.map +1 -1
  275. package/dist/esm/menu-list/menu-list.d.ts +5 -1
  276. package/dist/esm/menu-list/menu-list.definition.js +2 -2
  277. package/dist/esm/menu-list/menu-list.definition.js.map +1 -1
  278. package/dist/esm/menu-list/menu-list.js +23 -1
  279. package/dist/esm/menu-list/menu-list.js.map +1 -1
  280. package/dist/esm/menu-list/menu-list.options.d.ts +6 -0
  281. package/dist/esm/menu-list/menu-list.options.js +8 -0
  282. package/dist/esm/menu-list/menu-list.options.js.map +1 -0
  283. package/dist/esm/menu-list/menu-list.styles.js +1 -1
  284. package/dist/esm/menu-list/menu-list.styles.js.map +1 -1
  285. package/dist/esm/menu-list/menu-list.template.js +1 -5
  286. package/dist/esm/menu-list/menu-list.template.js.map +1 -1
  287. package/dist/esm/message-bar/index.d.ts +1 -0
  288. package/dist/esm/message-bar/index.js +1 -0
  289. package/dist/esm/message-bar/index.js.map +1 -1
  290. package/dist/esm/message-bar/message-bar.definition.js +2 -1
  291. package/dist/esm/message-bar/message-bar.definition.js.map +1 -1
  292. package/dist/esm/message-bar/message-bar.options.d.ts +6 -0
  293. package/dist/esm/message-bar/message-bar.options.js +7 -0
  294. package/dist/esm/message-bar/message-bar.options.js.map +1 -1
  295. package/dist/esm/message-bar/message-bar.template.d.ts +3 -3
  296. package/dist/esm/message-bar/message-bar.template.js +3 -3
  297. package/dist/esm/option/index.d.ts +1 -0
  298. package/dist/esm/option/index.js +1 -0
  299. package/dist/esm/option/index.js.map +1 -1
  300. package/dist/esm/option/option.definition.js +2 -2
  301. package/dist/esm/option/option.definition.js.map +1 -1
  302. package/dist/esm/option/option.options.d.ts +6 -0
  303. package/dist/esm/option/option.options.js +7 -0
  304. package/dist/esm/option/option.options.js.map +1 -1
  305. package/dist/esm/patterns/start-end.d.ts +1 -1
  306. package/dist/esm/patterns/start-end.js +1 -1
  307. package/dist/esm/patterns/start-end.js.map +1 -1
  308. package/dist/esm/progress-bar/index.d.ts +1 -0
  309. package/dist/esm/progress-bar/index.js +1 -0
  310. package/dist/esm/progress-bar/index.js.map +1 -1
  311. package/dist/esm/progress-bar/progress-bar.definition.js +2 -2
  312. package/dist/esm/progress-bar/progress-bar.definition.js.map +1 -1
  313. package/dist/esm/progress-bar/progress-bar.options.d.ts +7 -1
  314. package/dist/esm/progress-bar/progress-bar.options.js +7 -0
  315. package/dist/esm/progress-bar/progress-bar.options.js.map +1 -1
  316. package/dist/esm/progress-bar/progress-bar.styles.js +5 -3
  317. package/dist/esm/progress-bar/progress-bar.styles.js.map +1 -1
  318. package/dist/esm/radio/index.d.ts +1 -0
  319. package/dist/esm/radio/index.js +1 -0
  320. package/dist/esm/radio/index.js.map +1 -1
  321. package/dist/esm/radio/radio.d.ts +1 -1
  322. package/dist/esm/radio/radio.definition.js +2 -2
  323. package/dist/esm/radio/radio.definition.js.map +1 -1
  324. package/dist/esm/radio/radio.js +1 -1
  325. package/dist/esm/radio/radio.options.d.ts +6 -0
  326. package/dist/esm/radio/radio.options.js +7 -0
  327. package/dist/esm/radio/radio.options.js.map +1 -1
  328. package/dist/esm/radio/radio.styles.js +4 -3
  329. package/dist/esm/radio/radio.styles.js.map +1 -1
  330. package/dist/esm/radio/radio.template.js +1 -1
  331. package/dist/esm/radio/radio.template.js.map +1 -1
  332. package/dist/esm/radio-group/index.d.ts +1 -0
  333. package/dist/esm/radio-group/index.js +1 -0
  334. package/dist/esm/radio-group/index.js.map +1 -1
  335. package/dist/esm/radio-group/radio-group.base.d.ts +3 -16
  336. package/dist/esm/radio-group/radio-group.base.js +30 -88
  337. package/dist/esm/radio-group/radio-group.base.js.map +1 -1
  338. package/dist/esm/radio-group/radio-group.d.ts +5 -0
  339. package/dist/esm/radio-group/radio-group.definition.js +2 -2
  340. package/dist/esm/radio-group/radio-group.definition.js.map +1 -1
  341. package/dist/esm/radio-group/radio-group.js +22 -0
  342. package/dist/esm/radio-group/radio-group.js.map +1 -1
  343. package/dist/esm/radio-group/radio-group.options.d.ts +7 -1
  344. package/dist/esm/radio-group/radio-group.options.js +7 -0
  345. package/dist/esm/radio-group/radio-group.options.js.map +1 -1
  346. package/dist/esm/radio-group/radio-group.styles.js +1 -1
  347. package/dist/esm/radio-group/radio-group.styles.js.map +1 -1
  348. package/dist/esm/radio-group/radio-group.template.js +1 -1
  349. package/dist/esm/radio-group/radio-group.template.js.map +1 -1
  350. package/dist/esm/rating-display/index.d.ts +1 -0
  351. package/dist/esm/rating-display/index.js +1 -0
  352. package/dist/esm/rating-display/index.js.map +1 -1
  353. package/dist/esm/rating-display/rating-display.definition.js +2 -2
  354. package/dist/esm/rating-display/rating-display.definition.js.map +1 -1
  355. package/dist/esm/rating-display/rating-display.options.d.ts +7 -1
  356. package/dist/esm/rating-display/rating-display.options.js +7 -0
  357. package/dist/esm/rating-display/rating-display.options.js.map +1 -1
  358. package/dist/esm/rating-display/rating-display.styles.js +5 -3
  359. package/dist/esm/rating-display/rating-display.styles.js.map +1 -1
  360. package/dist/esm/slider/index.d.ts +1 -0
  361. package/dist/esm/slider/index.js +1 -0
  362. package/dist/esm/slider/index.js.map +1 -1
  363. package/dist/esm/slider/slider.definition.js +2 -2
  364. package/dist/esm/slider/slider.definition.js.map +1 -1
  365. package/dist/esm/slider/slider.options.d.ts +8 -1
  366. package/dist/esm/slider/slider.options.js +7 -0
  367. package/dist/esm/slider/slider.options.js.map +1 -1
  368. package/dist/esm/slider/slider.styles.js +5 -3
  369. package/dist/esm/slider/slider.styles.js.map +1 -1
  370. package/dist/esm/spinner/index.d.ts +1 -0
  371. package/dist/esm/spinner/index.js +1 -0
  372. package/dist/esm/spinner/index.js.map +1 -1
  373. package/dist/esm/spinner/spinner.definition.js +2 -2
  374. package/dist/esm/spinner/spinner.definition.js.map +1 -1
  375. package/dist/esm/spinner/spinner.options.d.ts +7 -1
  376. package/dist/esm/spinner/spinner.options.js +7 -0
  377. package/dist/esm/spinner/spinner.options.js.map +1 -1
  378. package/dist/esm/spinner/spinner.styles.js +5 -3
  379. package/dist/esm/spinner/spinner.styles.js.map +1 -1
  380. package/dist/esm/styles/index.d.ts +2 -1
  381. package/dist/esm/styles/index.js +2 -1
  382. package/dist/esm/styles/index.js.map +1 -1
  383. package/dist/esm/styles/partials/badge.partials.js +1 -1
  384. package/dist/esm/styles/partials/badge.partials.js.map +1 -1
  385. package/dist/esm/switch/index.d.ts +1 -0
  386. package/dist/esm/switch/index.js +1 -0
  387. package/dist/esm/switch/index.js.map +1 -1
  388. package/dist/esm/switch/switch.d.ts +1 -1
  389. package/dist/esm/switch/switch.definition.js +2 -2
  390. package/dist/esm/switch/switch.definition.js.map +1 -1
  391. package/dist/esm/switch/switch.options.d.ts +7 -1
  392. package/dist/esm/switch/switch.options.js +7 -0
  393. package/dist/esm/switch/switch.options.js.map +1 -1
  394. package/dist/esm/switch/switch.styles.js +4 -3
  395. package/dist/esm/switch/switch.styles.js.map +1 -1
  396. package/dist/esm/switch/switch.template.js +1 -1
  397. package/dist/esm/switch/switch.template.js.map +1 -1
  398. package/dist/esm/tab/index.d.ts +1 -0
  399. package/dist/esm/tab/index.js +1 -0
  400. package/dist/esm/tab/index.js.map +1 -1
  401. package/dist/esm/tab/tab.d.ts +2 -0
  402. package/dist/esm/tab/tab.definition.js +2 -2
  403. package/dist/esm/tab/tab.definition.js.map +1 -1
  404. package/dist/esm/tab/tab.js +13 -3
  405. package/dist/esm/tab/tab.js.map +1 -1
  406. package/dist/esm/tab/tab.options.d.ts +6 -0
  407. package/dist/esm/tab/tab.options.js +7 -0
  408. package/dist/esm/tab/tab.options.js.map +1 -1
  409. package/dist/esm/tab/tab.styles.js +23 -3
  410. package/dist/esm/tab/tab.styles.js.map +1 -1
  411. package/dist/esm/tab/tab.template.js +2 -2
  412. package/dist/esm/tab/tab.template.js.map +1 -1
  413. package/dist/esm/tablist/index.d.ts +1 -0
  414. package/dist/esm/tablist/index.js +1 -0
  415. package/dist/esm/tablist/index.js.map +1 -1
  416. package/dist/esm/tablist/tablist.base.d.ts +13 -45
  417. package/dist/esm/tablist/tablist.base.js +76 -185
  418. package/dist/esm/tablist/tablist.base.js.map +1 -1
  419. package/dist/esm/tablist/tablist.d.ts +5 -73
  420. package/dist/esm/tablist/tablist.definition.js +2 -2
  421. package/dist/esm/tablist/tablist.definition.js.map +1 -1
  422. package/dist/esm/tablist/tablist.js +20 -130
  423. package/dist/esm/tablist/tablist.js.map +1 -1
  424. package/dist/esm/tablist/tablist.options.d.ts +7 -1
  425. package/dist/esm/tablist/tablist.options.js +7 -0
  426. package/dist/esm/tablist/tablist.options.js.map +1 -1
  427. package/dist/esm/tablist/tablist.styles.js +83 -65
  428. package/dist/esm/tablist/tablist.styles.js.map +1 -1
  429. package/dist/esm/tablist/tablist.template.js +5 -1
  430. package/dist/esm/tablist/tablist.template.js.map +1 -1
  431. package/dist/esm/text/index.d.ts +1 -0
  432. package/dist/esm/text/index.js +1 -0
  433. package/dist/esm/text/index.js.map +1 -1
  434. package/dist/esm/text/text.definition.js +2 -2
  435. package/dist/esm/text/text.definition.js.map +1 -1
  436. package/dist/esm/text/text.options.d.ts +7 -1
  437. package/dist/esm/text/text.options.js +7 -0
  438. package/dist/esm/text/text.options.js.map +1 -1
  439. package/dist/esm/text/text.styles.js +1 -1
  440. package/dist/esm/text/text.styles.js.map +1 -1
  441. package/dist/esm/text-input/index.d.ts +1 -0
  442. package/dist/esm/text-input/index.js +1 -0
  443. package/dist/esm/text-input/index.js.map +1 -1
  444. package/dist/esm/text-input/text-input.definition.js +2 -2
  445. package/dist/esm/text-input/text-input.definition.js.map +1 -1
  446. package/dist/esm/text-input/text-input.options.d.ts +6 -0
  447. package/dist/esm/text-input/text-input.options.js +7 -0
  448. package/dist/esm/text-input/text-input.options.js.map +1 -1
  449. package/dist/esm/textarea/index.d.ts +1 -0
  450. package/dist/esm/textarea/index.js +1 -0
  451. package/dist/esm/textarea/index.js.map +1 -1
  452. package/dist/esm/textarea/textarea.base.js +1 -1
  453. package/dist/esm/textarea/textarea.base.js.map +1 -1
  454. package/dist/esm/textarea/textarea.definition.js +2 -2
  455. package/dist/esm/textarea/textarea.definition.js.map +1 -1
  456. package/dist/esm/textarea/textarea.options.d.ts +6 -0
  457. package/dist/esm/textarea/textarea.options.js +7 -0
  458. package/dist/esm/textarea/textarea.options.js.map +1 -1
  459. package/dist/esm/textarea/textarea.styles.js +4 -3
  460. package/dist/esm/textarea/textarea.styles.js.map +1 -1
  461. package/dist/esm/toggle-button/index.d.ts +1 -0
  462. package/dist/esm/toggle-button/index.js +1 -0
  463. package/dist/esm/toggle-button/index.js.map +1 -1
  464. package/dist/esm/toggle-button/toggle-button.definition.js +2 -2
  465. package/dist/esm/toggle-button/toggle-button.definition.js.map +1 -1
  466. package/dist/esm/toggle-button/toggle-button.options.d.ts +8 -2
  467. package/dist/esm/toggle-button/toggle-button.options.js +7 -0
  468. package/dist/esm/toggle-button/toggle-button.options.js.map +1 -1
  469. package/dist/esm/toggle-button/toggle-button.styles.js +4 -3
  470. package/dist/esm/toggle-button/toggle-button.styles.js.map +1 -1
  471. package/dist/esm/tooltip/index.d.ts +1 -0
  472. package/dist/esm/tooltip/index.js +1 -0
  473. package/dist/esm/tooltip/index.js.map +1 -1
  474. package/dist/esm/tooltip/tooltip.d.ts +2 -2
  475. package/dist/esm/tooltip/tooltip.definition.js +2 -2
  476. package/dist/esm/tooltip/tooltip.definition.js.map +1 -1
  477. package/dist/esm/tooltip/tooltip.js +2 -2
  478. package/dist/esm/tooltip/tooltip.options.d.ts +6 -0
  479. package/dist/esm/tooltip/tooltip.options.js +7 -0
  480. package/dist/esm/tooltip/tooltip.options.js.map +1 -1
  481. package/dist/esm/tree/index.d.ts +1 -0
  482. package/dist/esm/tree/index.js +1 -0
  483. package/dist/esm/tree/index.js.map +1 -1
  484. package/dist/esm/tree/tree.base.d.ts +5 -28
  485. package/dist/esm/tree/tree.base.js +20 -105
  486. package/dist/esm/tree/tree.base.js.map +1 -1
  487. package/dist/esm/tree/tree.d.ts +5 -0
  488. package/dist/esm/tree/tree.definition.js +2 -2
  489. package/dist/esm/tree/tree.definition.js.map +1 -1
  490. package/dist/esm/tree/tree.js +23 -0
  491. package/dist/esm/tree/tree.js.map +1 -1
  492. package/dist/esm/tree/tree.options.d.ts +6 -0
  493. package/dist/esm/tree/tree.options.js +8 -0
  494. package/dist/esm/tree/tree.options.js.map +1 -0
  495. package/dist/esm/tree/tree.template.js +2 -3
  496. package/dist/esm/tree/tree.template.js.map +1 -1
  497. package/dist/esm/tree-item/index.d.ts +1 -0
  498. package/dist/esm/tree-item/index.js +1 -0
  499. package/dist/esm/tree-item/index.js.map +1 -1
  500. package/dist/esm/tree-item/tree-item.base.d.ts +6 -3
  501. package/dist/esm/tree-item/tree-item.base.js +31 -11
  502. package/dist/esm/tree-item/tree-item.base.js.map +1 -1
  503. package/dist/esm/tree-item/tree-item.definition.js +2 -2
  504. package/dist/esm/tree-item/tree-item.definition.js.map +1 -1
  505. package/dist/esm/tree-item/tree-item.options.d.ts +6 -0
  506. package/dist/esm/tree-item/tree-item.options.js +7 -0
  507. package/dist/esm/tree-item/tree-item.options.js.map +1 -1
  508. package/dist/esm/tree-item/tree-item.template.js +1 -1
  509. package/dist/esm/tree-item/tree-item.template.js.map +1 -1
  510. package/dist/esm/utils/focusgroup.d.ts +22 -0
  511. package/dist/esm/utils/focusgroup.js +42 -0
  512. package/dist/esm/utils/focusgroup.js.map +1 -0
  513. package/dist/esm/utils/index.d.ts +0 -1
  514. package/dist/esm/utils/index.js +0 -1
  515. package/dist/esm/utils/index.js.map +1 -1
  516. package/dist/web-components.d.ts +70 -339
  517. package/dist/web-components.js +1277 -1317
  518. package/dist/web-components.min.js +242 -259
  519. package/package.json +4 -2
  520. package/dist/esm/utils/behaviors/match-media-stylesheet-behavior.d.ts +0 -124
  521. package/dist/esm/utils/behaviors/match-media-stylesheet-behavior.js +0 -142
  522. package/dist/esm/utils/behaviors/match-media-stylesheet-behavior.js.map +0 -1
@@ -1,10 +1,8 @@
1
1
  import { __decorate } from "tslib";
2
2
  import { attr, FASTElement, observable } from '@microsoft/fast-element';
3
- import { keyArrowDown, keyArrowLeft, keyArrowRight, keyArrowUp, keyEnd, keyHome, uniqueId, wrapInBounds, } from '@microsoft/fast-web-utilities';
3
+ import { uniqueId } from '@microsoft/fast-web-utilities';
4
4
  import { isTab } from '../tab/tab.options.js';
5
5
  import { swapStates, toggleState } from '../utils/element-internals.js';
6
- import { isFocusableElement } from '../utils/focusable-element.js';
7
- import { getDirection } from '../utils/index.js';
8
6
  import { waitForConnectedDescendants } from '../utils/request-idle-callback.js';
9
7
  import { TablistOrientation } from './tablist.options.js';
10
8
  /**
@@ -12,20 +10,13 @@ import { TablistOrientation } from './tablist.options.js';
12
10
  * @public
13
11
  */
14
12
  export class BaseTablist extends FASTElement {
15
- /**
16
- * Handles disabled changes
17
- * @param prev - previous value
18
- * @param next - next value
19
- *
20
- * @internal
21
- */
13
+ /** @internal */
22
14
  disabledChanged(prev, next) {
23
- toggleState(this.elementInternals, 'disabled', next);
24
- this.setTabs();
15
+ if (this.elementInternals) {
16
+ toggleState(this.elementInternals, 'disabled', next);
17
+ }
18
+ this.setTabs({ forceDisabled: true });
25
19
  }
26
- /**
27
- * @internal
28
- */
29
20
  orientationChanged(prev, next) {
30
21
  if (this.elementInternals) {
31
22
  this.elementInternals.ariaOrientation = next ?? TablistOrientation.horizontal;
@@ -33,54 +24,53 @@ export class BaseTablist extends FASTElement {
33
24
  }
34
25
  this.setTabs();
35
26
  }
36
- /**
37
- * @internal
38
- */
27
+ /** @internal */
39
28
  activeidChanged(oldValue, newValue) {
40
29
  if (this.tabs?.length > 0) {
41
- this.prevActiveTabIndex = this.tabs.findIndex((item) => item.id === oldValue);
42
- this.setTabs();
43
- if (oldValue) {
44
- const prevActiveTab = this.tabs[this.prevActiveTabIndex];
45
- const prevActivePanel = this.tabPanelMap.get(prevActiveTab);
46
- if (prevActivePanel) {
47
- prevActivePanel.hidden = true;
48
- }
49
- }
50
- if (newValue && this.activetab) {
51
- const activePanel = this.tabPanelMap.get(this.activetab);
52
- if (activePanel) {
53
- activePanel.hidden = false;
54
- }
55
- }
56
- if (oldValue !== newValue) {
57
- this.change();
58
- }
30
+ this.changeTab(oldValue, newValue);
59
31
  }
60
32
  }
61
- /**
62
- * Updates the tabs property when content in the tabs slot changes.
63
- * @internal
64
- */
33
+ /** @internal */
65
34
  slottedTabsChanged(prev, next) {
66
35
  this.tabs = next?.filter(tab => isTab(tab)) ?? [];
67
36
  }
37
+ /** @internal */
38
+ tabsChanged(prev, next) {
39
+ if (this.tabs?.length > 0) {
40
+ this.setTabs({ connectToPanel: true });
41
+ }
42
+ }
68
43
  /**
69
- * @internal
44
+ * Function that is invoked whenever the selected tab or the tab collection changes.
70
45
  */
71
- tabsChanged(prev, next) {
72
- if (prev?.length) {
73
- prev.forEach((tab) => {
74
- tab.removeEventListener('click', this.handleTabClick);
75
- tab.removeEventListener('keydown', this.handleTabKeyDown);
76
- });
46
+ setTabs({ connectToPanel = false, forceDisabled = false } = {}) {
47
+ if (!this.tabs) {
48
+ return;
77
49
  }
78
- if (this.tabs.length > 0) {
79
- this.tabIds = this.getTabIds();
80
- this.setTabs();
81
- for (const tab of this.tabs) {
50
+ const hasStartSlot = this.tabs.some(tab => !!tab.querySelector("[slot='start']"));
51
+ const rootNode = this.getRootNode();
52
+ let firstEnabledTabId = '';
53
+ for (const tab of this.tabs) {
54
+ if (tab.slot !== 'tab') {
55
+ continue;
56
+ }
57
+ tab.id ||= uniqueId('tab-');
58
+ if (forceDisabled) {
59
+ tab.disabled = this.disabled;
60
+ }
61
+ else {
62
+ tab.disabled = tab.disabled || this.disabled;
63
+ }
64
+ if (!firstEnabledTabId && !tab.disabled) {
65
+ firstEnabledTabId = tab.id;
66
+ }
67
+ const isSelected = this.activeid === tab.id;
68
+ tab.toggleAttribute('focusgroupstart', isSelected);
69
+ tab.setAttribute('aria-selected', isSelected.toString());
70
+ // Only set the data-hasIndent attribute if the tab has a start slot and the orientation is vertical
71
+ tab.toggleAttribute('data-hasIndent', hasStartSlot && this.orientation === TablistOrientation.vertical);
72
+ if (connectToPanel) {
82
73
  const ariaControls = tab.getAttribute('aria-controls') ?? '';
83
- const rootNode = this.getRootNode();
84
74
  const panel = rootNode.getElementById(ariaControls);
85
75
  if (ariaControls && panel) {
86
76
  panel.role ??= 'tabpanel';
@@ -89,87 +79,44 @@ export class BaseTablist extends FASTElement {
89
79
  }
90
80
  }
91
81
  }
92
- }
93
- getActiveIndex() {
94
- const id = this.activeid;
95
- if (id !== undefined) {
96
- return this.tabIds.indexOf(this.activeid) === -1 ? 0 : this.tabIds.indexOf(this.activeid);
82
+ if (!this.disabled) {
83
+ if (this.activeid) {
84
+ this.changeTab(undefined, this.activeid);
85
+ }
86
+ else if (firstEnabledTabId) {
87
+ this.activeid = firstEnabledTabId;
88
+ }
97
89
  }
98
- else {
99
- return 0;
90
+ }
91
+ /** @internal */
92
+ handleFocusIn(event) {
93
+ const target = event.target;
94
+ if (!isTab(target) || target.disabled) {
95
+ return;
100
96
  }
97
+ this.activeid = target.id;
101
98
  }
102
- /**
103
- * Function that is invoked whenever the selected tab or the tab collection changes.
104
- *
105
- * @public
106
- */
107
- setTabs() {
108
- this.activeTabIndex = this.getActiveIndex();
109
- const hasStartSlot = this.tabs?.some(tab => !!tab.querySelector("[slot='start']"));
110
- this.tabs?.forEach((tab, index) => {
111
- if (tab.slot === 'tab') {
112
- const isActiveTab = this.activeTabIndex === index && isFocusableElement(tab);
113
- const tabId = this.tabIds[index];
114
- if (!tab.disabled) {
115
- this.disabled ? tab.setAttribute('aria-disabled', 'true') : tab.removeAttribute('aria-disabled');
116
- }
117
- tab.setAttribute('id', tabId);
118
- tab.setAttribute('aria-selected', isActiveTab ? 'true' : 'false');
119
- tab.addEventListener('click', this.handleTabClick);
120
- tab.addEventListener('keydown', this.handleTabKeyDown);
121
- tab.setAttribute('tabindex', isActiveTab && !this.disabled ? '0' : '-1');
122
- if (isActiveTab) {
123
- this.activetab = tab;
124
- this.activeid = tabId;
125
- }
126
- // Only set the data-hasIndent attribute if the tab has a start slot and the orientation is vertical
127
- if (hasStartSlot && this.orientation === TablistOrientation.vertical) {
128
- tab.setAttribute('data-hasIndent', '');
129
- }
99
+ changeTab(oldId, newId) {
100
+ const rootNode = this.getRootNode();
101
+ const prevTab = oldId ? rootNode.getElementById(oldId) : null;
102
+ const nextTab = rootNode.getElementById(newId);
103
+ if (!isTab(nextTab) || !this.contains(nextTab)) {
104
+ return;
105
+ }
106
+ if (prevTab) {
107
+ prevTab.setAttribute('aria-selected', 'false');
108
+ const prevPanel = this.tabPanelMap.get(prevTab);
109
+ if (prevPanel) {
110
+ prevPanel.hidden = true;
130
111
  }
131
- });
132
- }
133
- getTabIds() {
134
- return (this.tabs?.map((tab) => {
135
- return tab.getAttribute('id') ?? `tab-${uniqueId()}`;
136
- }) ?? []);
137
- }
138
- setComponent() {
139
- if (this.activeTabIndex !== this.prevActiveTabIndex) {
140
- this.activeid = this.tabIds[this.activeTabIndex];
141
- this.focusTab();
142
112
  }
143
- }
144
- isHorizontal() {
145
- return this.orientation === TablistOrientation.horizontal;
146
- }
147
- /**
148
- * The adjust method for FASTTabs
149
- * @public
150
- * @remarks
151
- * This method allows the active index to be adjusted by numerical increments
152
- */
153
- adjust(adjustment) {
154
- const focusableTabs = this.tabs.filter(t => isFocusableElement(t));
155
- const currentActiveTabIndex = focusableTabs.indexOf(this.activetab);
156
- const nextTabIndex = wrapInBounds(0, focusableTabs.length - 1, currentActiveTabIndex + adjustment);
157
- // the index of the next focusable tab within the context of all available tabs
158
- const nextIndex = this.tabs.indexOf(focusableTabs[nextTabIndex]);
159
- if (nextIndex > -1) {
160
- this.activateTabByIndex(this.tabs, nextIndex);
113
+ nextTab.setAttribute('aria-selected', 'true');
114
+ const nextPanel = this.tabPanelMap.get(nextTab);
115
+ if (nextPanel) {
116
+ nextPanel.hidden = false;
161
117
  }
162
- }
163
- activateTabByIndex(group, index) {
164
- const tab = group[index];
165
- this.activetab = tab;
166
- this.prevActiveTabIndex = this.activeTabIndex;
167
- this.activeTabIndex = index;
168
- tab.focus();
169
- this.setComponent();
170
- }
171
- focusTab() {
172
- this.tabs[this.activeTabIndex].focus();
118
+ this.activetab = nextTab;
119
+ this.change();
173
120
  }
174
121
  constructor() {
175
122
  super();
@@ -193,67 +140,12 @@ export class BaseTablist extends FASTElement {
193
140
  * HTML Attribute: orientation
194
141
  */
195
142
  this.orientation = TablistOrientation.horizontal;
196
- this.prevActiveTabIndex = 0;
197
- this.activeTabIndex = 0;
143
+ /** @internal */
144
+ this.tabs = [];
198
145
  this.tabPanelMap = new WeakMap();
199
146
  this.change = () => {
200
147
  this.$emit('change', this.activetab);
201
148
  };
202
- this.handleTabClick = (event) => {
203
- const selectedTab = event.currentTarget;
204
- if (selectedTab.disabled || this.disabled) {
205
- return;
206
- }
207
- if (selectedTab.nodeType === Node.ELEMENT_NODE && isFocusableElement(selectedTab)) {
208
- this.prevActiveTabIndex = this.activeTabIndex;
209
- this.activeTabIndex = this.tabs.indexOf(selectedTab);
210
- this.setComponent();
211
- }
212
- };
213
- this.handleTabKeyDown = (event) => {
214
- if (this.disabled) {
215
- return;
216
- }
217
- const dir = getDirection(this);
218
- switch (event.key) {
219
- case keyArrowLeft:
220
- if (!this.isHorizontal()) {
221
- return;
222
- }
223
- event.preventDefault();
224
- this.adjust(dir === 'ltr' ? -1 : 1);
225
- break;
226
- case keyArrowRight:
227
- if (!this.isHorizontal()) {
228
- return;
229
- }
230
- event.preventDefault();
231
- this.adjust(dir === 'ltr' ? 1 : -1);
232
- break;
233
- case keyArrowUp:
234
- if (this.isHorizontal()) {
235
- return;
236
- }
237
- event.preventDefault();
238
- this.adjust(-1);
239
- break;
240
- case keyArrowDown:
241
- if (this.isHorizontal()) {
242
- return;
243
- }
244
- event.preventDefault();
245
- this.adjust(1);
246
- break;
247
- case keyHome:
248
- event.preventDefault();
249
- this.adjust(-this.activeTabIndex);
250
- break;
251
- case keyEnd:
252
- event.preventDefault();
253
- this.adjust(this.tabs.filter(t => isFocusableElement(t)).length - this.activeTabIndex - 1);
254
- break;
255
- }
256
- };
257
149
  this.elementInternals.role = 'tablist';
258
150
  this.elementInternals.ariaOrientation = this.orientation ?? TablistOrientation.horizontal;
259
151
  }
@@ -263,7 +155,6 @@ export class BaseTablist extends FASTElement {
263
155
  connectedCallback() {
264
156
  super.connectedCallback();
265
157
  waitForConnectedDescendants(this, () => {
266
- this.tabIds = this.getTabIds();
267
158
  this.setTabs();
268
159
  }, { shallow: true });
269
160
  }
@@ -1 +1 @@
1
- {"version":3,"file":"tablist.base.js","sourceRoot":"","sources":["../../../src/tablist/tablist.base.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"tablist.base.js","sourceRoot":"","sources":["../../../src/tablist/tablist.base.ts"],"names":[],"mappings":"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"}
@@ -1,34 +1,14 @@
1
1
  import type { Tab } from '../tab/tab.js';
2
2
  import { BaseTablist } from './tablist.base.js';
3
- import { TablistAppearance, TablistSize } from './tablist.options.js';
3
+ import { TablistAppearance, type TablistSize } from './tablist.options.js';
4
4
  /**
5
- * A BaseTablist component with extra logic for handling the styled active tab indicator.
5
+ * A Tablist component.
6
6
  *
7
7
  * @tag fluent-tablist
8
8
  *
9
9
  * @public
10
10
  */
11
11
  export declare class Tablist extends BaseTablist {
12
- /**
13
- * activeTabData
14
- * The positional coordinates and size dimensions of the active tab. Used for calculating the offset and scale of the tab active indicator.
15
- */
16
- private activeTabData;
17
- /**
18
- * previousActiveTabData
19
- * The positional coordinates and size dimensions of the active tab. Used for calculating the offset and scale of the tab active indicator.
20
- */
21
- private previousActiveTabData;
22
- /**
23
- * activeTabOffset
24
- * Used to position the active indicator for animations of the active indicator on active tab changes.
25
- */
26
- private activeTabOffset;
27
- /**
28
- * activeTabScale
29
- * Used to scale the tab active indicator up or down as animations of the active indicator occur.
30
- */
31
- private activeTabScale;
32
12
  /**
33
13
  * appearance
34
14
  * There are two modes of appearance: transparent and subtle.
@@ -40,56 +20,8 @@ export declare class Tablist extends BaseTablist {
40
20
  * Used to set the size of all the tab controls, which effects text size and margins. Three sizes: small, medium and large.
41
21
  */
42
22
  size?: TablistSize;
43
- /**
44
- * calculateAnimationProperties
45
- *
46
- * Recalculates the active tab offset and scale.
47
- * These values will be applied to css variables that control the tab active indicator position animations
48
- */
49
- private calculateAnimationProperties;
50
- /**
51
- * getSelectedTabPosition - gets the x or y coordinates of the tab
52
- */
53
- private getTabPosition;
54
- /**
55
- * getSelectedTabScale - gets the scale of the tab
56
- */
57
- private getTabScale;
58
- /**
59
- * Calculates and applies updated values to CSS variables.
60
- *
61
- * @param tab - the tab element to apply the updated values to
62
- * @internal
63
- */
64
- private applyUpdatedCSSValues;
65
- /**
66
- * Runs through all the operations required for setting the tab active indicator to its starting location, ending
67
- * location, and applying the animated css class to the tab.
68
- *
69
- * @param tab - the tab element to apply the updated values to
70
- * @internal
71
- */
72
- private animationLoop;
73
- /**
74
- * Sets the data from the active tab onto the class. used for making all the animation calculations for the active
75
- * tab indicator.
76
- *
77
- * @internal
78
- */
79
- private setTabData;
80
- /**
81
- * Sets the css variables for the active tab indicator.
82
- * @internal
83
- */
84
- private setAnimationVars;
85
- /**
86
- * Initiates the active tab indicator animation loop when activeid changes.
87
- * @param oldValue - the previous tabId
88
- * @param newValue - the new tabId
89
- */
90
- activeidChanged(oldValue: string, newValue: string): void;
91
- /**
92
- * Initiates the active tab indicator animation loop when tabs change.
93
- */
23
+ private fg?;
24
+ private fgItems?;
25
+ disconnectedCallback(): void;
94
26
  tabsChanged(prev: Tab[] | undefined, next: Tab[] | undefined): void;
95
27
  }
@@ -1,4 +1,4 @@
1
- import { FluentDesignSystem } from '../fluent-design-system.js';
1
+ import { tagName } from './tablist.options.js';
2
2
  import { Tablist } from './tablist.js';
3
3
  import { template } from './tablist.template.js';
4
4
  import { styles } from './tablist.styles.js';
@@ -8,7 +8,7 @@ import { styles } from './tablist.styles.js';
8
8
  * HTML Element: \<fluent-tablist\>
9
9
  */
10
10
  export const definition = Tablist.compose({
11
- name: `${FluentDesignSystem.prefix}-tablist`,
11
+ name: tagName,
12
12
  template,
13
13
  styles,
14
14
  });
@@ -1 +1 @@
1
- {"version":3,"file":"tablist.definition.js","sourceRoot":"","sources":["../../../src/tablist/tablist.definition.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AAChE,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AACvC,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AACjD,OAAO,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAE7C;;;;GAIG;AACH,MAAM,CAAC,MAAM,UAAU,GAAG,OAAO,CAAC,OAAO,CAAC;IACxC,IAAI,EAAE,GAAG,kBAAkB,CAAC,MAAM,UAAU;IAC5C,QAAQ;IACR,MAAM;CACP,CAAC,CAAC"}
1
+ {"version":3,"file":"tablist.definition.js","sourceRoot":"","sources":["../../../src/tablist/tablist.definition.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAC/C,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AACvC,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AACjD,OAAO,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAE7C;;;;GAIG;AACH,MAAM,CAAC,MAAM,UAAU,GAAG,OAAO,CAAC,OAAO,CAAC;IACxC,IAAI,EAAE,OAAO;IACb,QAAQ;IACR,MAAM;CACP,CAAC,CAAC"}
@@ -1,9 +1,11 @@
1
1
  import { __decorate } from "tslib";
2
2
  import { attr } from '@microsoft/fast-element';
3
+ import { FocusGroup } from '@microsoft/focusgroup-polyfill/shadowless';
4
+ import { ArrayItemCollection } from '../utils/focusgroup.js';
3
5
  import { BaseTablist } from './tablist.base.js';
4
- import { TablistAppearance, TablistOrientation } from './tablist.options.js';
6
+ import { TablistAppearance } from './tablist.options.js';
5
7
  /**
6
- * A BaseTablist component with extra logic for handling the styled active tab indicator.
8
+ * A Tablist component.
7
9
  *
8
10
  * @tag fluent-tablist
9
11
  *
@@ -12,143 +14,31 @@ import { TablistAppearance, TablistOrientation } from './tablist.options.js';
12
14
  export class Tablist extends BaseTablist {
13
15
  constructor() {
14
16
  super(...arguments);
15
- /**
16
- * activeTabData
17
- * The positional coordinates and size dimensions of the active tab. Used for calculating the offset and scale of the tab active indicator.
18
- */
19
- this.activeTabData = { x: 0, y: 0, height: 0, width: 0 };
20
- /**
21
- * previousActiveTabData
22
- * The positional coordinates and size dimensions of the active tab. Used for calculating the offset and scale of the tab active indicator.
23
- */
24
- this.previousActiveTabData = { x: 0, y: 0, height: 0, width: 0 };
25
- /**
26
- * activeTabOffset
27
- * Used to position the active indicator for animations of the active indicator on active tab changes.
28
- */
29
- this.activeTabOffset = 0;
30
- /**
31
- * activeTabScale
32
- * Used to scale the tab active indicator up or down as animations of the active indicator occur.
33
- */
34
- this.activeTabScale = 1;
35
17
  /**
36
18
  * appearance
37
19
  * There are two modes of appearance: transparent and subtle.
38
20
  */
39
21
  this.appearance = TablistAppearance.transparent;
40
22
  }
41
- /**
42
- * calculateAnimationProperties
43
- *
44
- * Recalculates the active tab offset and scale.
45
- * These values will be applied to css variables that control the tab active indicator position animations
46
- */
47
- calculateAnimationProperties(tab) {
48
- this.activeTabOffset = this.getTabPosition(tab);
49
- this.activeTabScale = this.getTabScale(tab);
50
- }
51
- /**
52
- * getSelectedTabPosition - gets the x or y coordinates of the tab
53
- */
54
- getTabPosition(tab) {
55
- if (this.orientation === TablistOrientation.horizontal) {
56
- return this.previousActiveTabData.x - (tab.getBoundingClientRect().x - this.getBoundingClientRect().x);
57
- }
58
- else
59
- return this.previousActiveTabData.y - (tab.getBoundingClientRect().y - this.getBoundingClientRect().y);
60
- }
61
- /**
62
- * getSelectedTabScale - gets the scale of the tab
63
- */
64
- getTabScale(tab) {
65
- if (this.orientation === TablistOrientation.horizontal) {
66
- return this.previousActiveTabData.width / tab.getBoundingClientRect().width;
67
- }
68
- else
69
- return this.previousActiveTabData.height / tab.getBoundingClientRect().height;
70
- }
71
- /**
72
- * Calculates and applies updated values to CSS variables.
73
- *
74
- * @param tab - the tab element to apply the updated values to
75
- * @internal
76
- */
77
- applyUpdatedCSSValues(tab) {
78
- this.calculateAnimationProperties(tab);
79
- this.setAnimationVars();
80
- }
81
- /**
82
- * Runs through all the operations required for setting the tab active indicator to its starting location, ending
83
- * location, and applying the animated css class to the tab.
84
- *
85
- * @param tab - the tab element to apply the updated values to
86
- * @internal
87
- */
88
- animationLoop(tab) {
89
- // remove the animated class so nothing animates yet
90
- tab.setAttribute('data-animate', 'false');
91
- // animation start - this applyUpdatedCSSValues sets the active indicator to the location of the previously selected tab
92
- this.applyUpdatedCSSValues(tab);
93
- // changing the previously active tab allows the applyUpdatedCSSValues method to calculate the correct end to the animation.
94
- this.previousActiveTabData = this.activeTabData;
95
- // calculate and apply updated css values for animation.
96
- this.applyUpdatedCSSValues(tab);
97
- // add the css class and active indicator will animate from the previous tab location to its tab location
98
- tab.setAttribute('data-animate', 'true');
99
- }
100
- /**
101
- * Sets the data from the active tab onto the class. used for making all the animation calculations for the active
102
- * tab indicator.
103
- *
104
- * @internal
105
- */
106
- setTabData() {
107
- if (this.tabs && this.tabs.length > 0) {
108
- const tabs = this.tabs;
109
- const activeTab = this.activetab || tabs[0];
110
- const activeRect = activeTab?.getBoundingClientRect();
111
- const parentRect = this.getBoundingClientRect();
112
- this.activeTabData = {
113
- x: activeRect.x - parentRect.x,
114
- y: activeRect.y - parentRect.y,
115
- height: activeRect.height,
116
- width: activeRect.width,
117
- };
118
- if (this.previousActiveTabData?.x !== this.activeTabData?.x &&
119
- this.previousActiveTabData?.y !== this.activeTabData?.y) {
120
- this.previousActiveTabData = this.activeTabData;
121
- }
122
- }
123
- }
124
- /**
125
- * Sets the css variables for the active tab indicator.
126
- * @internal
127
- */
128
- setAnimationVars() {
129
- this.style.setProperty('--tabIndicatorOffset', `${this.activeTabOffset}px`);
130
- this.style.setProperty('--tabIndicatorScale', `${this.activeTabScale}`);
23
+ disconnectedCallback() {
24
+ this.fg?.disconnect();
25
+ super.disconnectedCallback();
131
26
  }
132
- /**
133
- * Initiates the active tab indicator animation loop when activeid changes.
134
- * @param oldValue - the previous tabId
135
- * @param newValue - the new tabId
136
- */
137
- activeidChanged(oldValue, newValue) {
138
- super.activeidChanged(oldValue, newValue);
139
- this.setTabData();
140
- if (this.activetab) {
141
- this.animationLoop(this.activetab);
142
- }
143
- }
144
- /**
145
- * Initiates the active tab indicator animation loop when tabs change.
146
- */
147
27
  tabsChanged(prev, next) {
148
28
  super.tabsChanged(prev, next);
149
- this.setTabData();
150
- if (this.activetab) {
151
- this.animationLoop(this.activetab);
29
+ this.fgItems ??= new ArrayItemCollection(() => this.tabs?.filter(t => (t.getAttribute('aria-selected') === 'true' || !t.disabled) && !t.hidden) ?? [], () => this.activetab ?? null);
30
+ if (!this.fg) {
31
+ this.fg = new FocusGroup(this, this.fgItems, {
32
+ definition: {
33
+ behavior: 'tablist',
34
+ axis: undefined,
35
+ memory: false,
36
+ wrap: true,
37
+ },
38
+ });
39
+ }
40
+ else {
41
+ this.fg.update();
152
42
  }
153
43
  }
154
44
  }