@fluentui/web-components 3.0.0-beta.3 → 3.0.0-beta.30

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 (663) hide show
  1. package/CHANGELOG.md +420 -103
  2. package/README.md +46 -15
  3. package/dist/dts/accordion/accordion.bench.d.ts +3 -0
  4. package/dist/dts/accordion/accordion.d.ts +47 -3
  5. package/dist/dts/accordion/accordion.definition.d.ts +0 -4
  6. package/dist/dts/accordion/accordion.options.d.ts +14 -0
  7. package/dist/dts/accordion/accordion.template.d.ts +4 -0
  8. package/dist/dts/accordion/index.d.ts +2 -1
  9. package/dist/dts/accordion-item/accordion-item.bench.d.ts +3 -0
  10. package/dist/dts/accordion-item/accordion-item.d.ts +78 -6
  11. package/dist/dts/accordion-item/accordion-item.definition.d.ts +0 -3
  12. package/dist/dts/accordion-item/accordion-item.options.d.ts +3 -3
  13. package/dist/dts/accordion-item/accordion-item.template.d.ts +2 -1
  14. package/dist/dts/accordion-item/index.d.ts +3 -2
  15. package/dist/dts/anchor-button/anchor-button.bench.d.ts +3 -0
  16. package/dist/dts/anchor-button/anchor-button.d.ts +144 -26
  17. package/dist/dts/anchor-button/anchor-button.definition.d.ts +0 -3
  18. package/dist/dts/anchor-button/anchor-button.options.d.ts +43 -5
  19. package/dist/dts/anchor-button/anchor-button.template.d.ts +7 -2
  20. package/dist/dts/anchor-button/index.d.ts +4 -3
  21. package/dist/dts/avatar/avatar.bench.d.ts +3 -0
  22. package/dist/dts/avatar/avatar.d.ts +22 -2
  23. package/dist/dts/avatar/avatar.options.d.ts +7 -7
  24. package/dist/dts/avatar/index.d.ts +2 -2
  25. package/dist/dts/badge/badge.bench.d.ts +3 -0
  26. package/dist/dts/badge/badge.d.ts +1 -1
  27. package/dist/dts/badge/badge.definition.d.ts +0 -3
  28. package/dist/dts/badge/badge.options.d.ts +7 -7
  29. package/dist/dts/badge/index.d.ts +2 -2
  30. package/dist/dts/button/button.bench.d.ts +3 -0
  31. package/dist/dts/button/button.d.ts +243 -22
  32. package/dist/dts/button/button.definition.d.ts +2 -3
  33. package/dist/dts/button/button.options.d.ts +42 -6
  34. package/dist/dts/button/button.styles.d.ts +9 -0
  35. package/dist/dts/button/button.template.d.ts +8 -0
  36. package/dist/dts/button/index.d.ts +5 -4
  37. package/dist/dts/checkbox/checkbox.bench.d.ts +3 -0
  38. package/dist/dts/checkbox/checkbox.d.ts +282 -16
  39. package/dist/dts/checkbox/checkbox.options.d.ts +15 -12
  40. package/dist/dts/checkbox/checkbox.template.d.ts +7 -1
  41. package/dist/dts/checkbox/index.d.ts +4 -3
  42. package/dist/dts/compound-button/compound-button.bench.d.ts +3 -0
  43. package/dist/dts/compound-button/compound-button.definition.d.ts +0 -3
  44. package/dist/dts/compound-button/compound-button.options.d.ts +9 -9
  45. package/dist/dts/compound-button/index.d.ts +2 -2
  46. package/dist/dts/counter-badge/counter-badge.bench.d.ts +3 -0
  47. package/dist/dts/counter-badge/counter-badge.d.ts +1 -1
  48. package/dist/dts/counter-badge/counter-badge.definition.d.ts +0 -4
  49. package/dist/dts/counter-badge/counter-badge.options.d.ts +6 -6
  50. package/dist/dts/counter-badge/index.d.ts +2 -2
  51. package/dist/dts/dialog/define.d.ts +1 -0
  52. package/dist/dts/dialog/dialog.bench.d.ts +3 -0
  53. package/dist/dts/dialog/dialog.d.ts +58 -0
  54. package/dist/dts/dialog/dialog.definition.d.ts +9 -0
  55. package/dist/dts/dialog/dialog.options.d.ts +11 -0
  56. package/dist/dts/dialog/dialog.styles.d.ts +4 -0
  57. package/dist/dts/dialog/dialog.template.d.ts +7 -0
  58. package/dist/dts/dialog/index.d.ts +5 -0
  59. package/dist/dts/dialog-body/define.d.ts +1 -0
  60. package/dist/dts/dialog-body/dialog-body.bench.d.ts +3 -0
  61. package/dist/dts/dialog-body/dialog-body.d.ts +14 -0
  62. package/dist/dts/dialog-body/dialog-body.definition.d.ts +9 -0
  63. package/dist/dts/dialog-body/dialog-body.styles.d.ts +4 -0
  64. package/dist/dts/dialog-body/dialog-body.template.d.ts +6 -0
  65. package/dist/dts/dialog-body/index.d.ts +4 -0
  66. package/dist/dts/divider/divider.bench.d.ts +3 -0
  67. package/dist/dts/divider/divider.d.ts +47 -11
  68. package/dist/dts/divider/divider.options.d.ts +32 -8
  69. package/dist/dts/divider/divider.template.d.ts +1 -0
  70. package/dist/dts/divider/index.d.ts +2 -2
  71. package/dist/dts/field/define.d.ts +1 -0
  72. package/dist/dts/field/field.bench.d.ts +3 -0
  73. package/dist/dts/field/field.d.ts +99 -0
  74. package/dist/dts/field/field.definition.d.ts +9 -0
  75. package/dist/dts/field/field.options.d.ts +41 -0
  76. package/dist/dts/field/field.styles.d.ts +6 -0
  77. package/dist/dts/field/field.template.d.ts +6 -0
  78. package/dist/dts/field/index.d.ts +6 -0
  79. package/dist/dts/form-associated/form-associated.d.ts +104 -0
  80. package/dist/dts/image/image.bench.d.ts +3 -0
  81. package/dist/dts/image/image.options.d.ts +3 -3
  82. package/dist/dts/image/index.d.ts +2 -2
  83. package/dist/dts/index-rollup.d.ts +32 -1
  84. package/dist/dts/index.d.ts +53 -30
  85. package/dist/dts/label/index.d.ts +2 -1
  86. package/dist/dts/label/label.bench.d.ts +3 -0
  87. package/dist/dts/label/label.d.ts +0 -2
  88. package/dist/dts/label/label.options.d.ts +3 -3
  89. package/dist/dts/link/define.d.ts +1 -0
  90. package/dist/dts/link/index.d.ts +4 -0
  91. package/dist/dts/link/link.bench.d.ts +3 -0
  92. package/dist/dts/link/link.d.ts +33 -0
  93. package/dist/dts/link/link.definition.d.ts +7 -0
  94. package/dist/dts/link/link.options.d.ts +52 -0
  95. package/dist/dts/link/link.styles.d.ts +1 -0
  96. package/dist/dts/link/link.template.d.ts +12 -0
  97. package/dist/dts/menu/index.d.ts +1 -1
  98. package/dist/dts/menu/menu.bench.d.ts +3 -0
  99. package/dist/dts/menu/menu.d.ts +27 -25
  100. package/dist/dts/menu-button/index.d.ts +4 -3
  101. package/dist/dts/menu-button/menu-button.bench.d.ts +3 -0
  102. package/dist/dts/menu-button/menu-button.definition.d.ts +0 -3
  103. package/dist/dts/menu-button/menu-button.options.d.ts +6 -6
  104. package/dist/dts/menu-item/index.d.ts +5 -3
  105. package/dist/dts/menu-item/menu-item.bench.d.ts +3 -0
  106. package/dist/dts/menu-item/menu-item.d.ts +162 -5
  107. package/dist/dts/menu-item/menu-item.definition.d.ts +0 -4
  108. package/dist/dts/menu-item/menu-item.options.d.ts +30 -0
  109. package/dist/dts/menu-item/menu-item.template.d.ts +2 -1
  110. package/dist/dts/menu-list/index.d.ts +1 -1
  111. package/dist/dts/menu-list/menu-list.bench.d.ts +3 -0
  112. package/dist/dts/menu-list/menu-list.d.ts +71 -4
  113. package/dist/dts/menu-list/menu-list.definition.d.ts +0 -4
  114. package/dist/dts/menu-list/menu-list.template.d.ts +1 -0
  115. package/dist/dts/patterns/aria-globals.d.ts +189 -0
  116. package/dist/dts/patterns/index.d.ts +2 -0
  117. package/dist/dts/patterns/start-end.d.ts +44 -0
  118. package/dist/dts/progress-bar/index.d.ts +2 -2
  119. package/dist/dts/progress-bar/progress-bar.bench.d.ts +3 -0
  120. package/dist/dts/progress-bar/progress-bar.d.ts +60 -10
  121. package/dist/dts/progress-bar/progress-bar.options.d.ts +4 -4
  122. package/dist/dts/progress-bar/progress-bar.template.d.ts +1 -0
  123. package/dist/dts/radio/index.d.ts +2 -1
  124. package/dist/dts/radio/radio.bench.d.ts +3 -0
  125. package/dist/dts/radio/radio.d.ts +54 -3
  126. package/dist/dts/radio/radio.form-associated.d.ts +14 -0
  127. package/dist/dts/radio/radio.template.d.ts +2 -1
  128. package/dist/dts/radio-group/index.d.ts +2 -2
  129. package/dist/dts/radio-group/radio-group.bench.d.ts +3 -0
  130. package/dist/dts/radio-group/radio-group.d.ts +91 -2
  131. package/dist/dts/radio-group/radio-group.options.d.ts +17 -0
  132. package/dist/dts/radio-group/radio-group.template.d.ts +1 -0
  133. package/dist/dts/slider/index.d.ts +3 -2
  134. package/dist/dts/slider/slider-utilities.d.ts +5 -0
  135. package/dist/dts/slider/slider.bench.d.ts +3 -0
  136. package/dist/dts/slider/slider.d.ts +195 -5
  137. package/dist/dts/slider/slider.form-associated.d.ts +14 -0
  138. package/dist/dts/slider/slider.options.d.ts +44 -3
  139. package/dist/dts/slider/slider.template.d.ts +4 -2
  140. package/dist/dts/spinner/index.d.ts +2 -2
  141. package/dist/dts/spinner/spinner.bench.d.ts +3 -0
  142. package/dist/dts/spinner/spinner.d.ts +9 -4
  143. package/dist/dts/spinner/spinner.definition.d.ts +0 -4
  144. package/dist/dts/spinner/spinner.options.d.ts +3 -3
  145. package/dist/dts/spinner/spinner.template.d.ts +1 -2
  146. package/dist/dts/styles/partials/index.d.ts +1 -0
  147. package/dist/dts/styles/partials/typography.partials.d.ts +18 -0
  148. package/dist/dts/switch/index.d.ts +3 -2
  149. package/dist/dts/switch/switch.bench.d.ts +3 -0
  150. package/dist/dts/switch/switch.d.ts +6 -12
  151. package/dist/dts/switch/switch.form-associated.d.ts +14 -0
  152. package/dist/dts/switch/switch.options.d.ts +2 -2
  153. package/dist/dts/switch/switch.template.d.ts +2 -1
  154. package/dist/dts/tab/index.d.ts +4 -3
  155. package/dist/dts/tab/tab.bench.d.ts +3 -0
  156. package/dist/dts/tab/tab.d.ts +17 -2
  157. package/dist/dts/tab/tab.template.d.ts +3 -3
  158. package/dist/dts/tab-panel/index.d.ts +1 -1
  159. package/dist/dts/tab-panel/tab-panel.bench.d.ts +3 -0
  160. package/dist/dts/tab-panel/tab-panel.d.ts +2 -2
  161. package/dist/dts/tab-panel/tab-panel.template.d.ts +4 -1
  162. package/dist/dts/tabs/index.d.ts +5 -4
  163. package/dist/dts/tabs/tabs.bench.d.ts +3 -0
  164. package/dist/dts/tabs/tabs.d.ts +102 -13
  165. package/dist/dts/tabs/tabs.options.d.ts +23 -5
  166. package/dist/dts/tabs/tabs.template.d.ts +5 -1
  167. package/dist/dts/text/index.d.ts +2 -2
  168. package/dist/dts/text/text.bench.d.ts +3 -0
  169. package/dist/dts/text/text.options.d.ts +5 -5
  170. package/dist/dts/text-input/index.d.ts +5 -5
  171. package/dist/dts/text-input/text-input.bench.d.ts +3 -0
  172. package/dist/dts/text-input/text-input.d.ts +395 -11
  173. package/dist/dts/text-input/text-input.definition.d.ts +2 -3
  174. package/dist/dts/text-input/text-input.options.d.ts +31 -10
  175. package/dist/dts/text-input/text-input.styles.d.ts +5 -2
  176. package/dist/dts/text-input/text-input.template.d.ts +8 -1
  177. package/dist/dts/theme/design-tokens.d.ts +2180 -384
  178. package/dist/dts/theme/set-theme.d.ts +6 -3
  179. package/dist/dts/toggle-button/index.d.ts +5 -4
  180. package/dist/dts/toggle-button/toggle-button.bench.d.ts +3 -0
  181. package/dist/dts/toggle-button/toggle-button.d.ts +29 -26
  182. package/dist/dts/toggle-button/toggle-button.definition.d.ts +0 -2
  183. package/dist/dts/toggle-button/toggle-button.options.d.ts +6 -6
  184. package/dist/dts/toggle-button/toggle-button.styles.d.ts +7 -0
  185. package/dist/dts/utils/behaviors/match-media-stylesheet-behavior.d.ts +124 -0
  186. package/dist/dts/utils/benchmark-dependencies/tokens.d.ts +1 -0
  187. package/dist/dts/utils/benchmark-wrapper.d.ts +2 -0
  188. package/dist/dts/utils/direction.d.ts +10 -0
  189. package/dist/dts/utils/display.d.ts +17 -0
  190. package/dist/dts/utils/element-internals.d.ts +20 -0
  191. package/dist/dts/utils/index.d.ts +6 -0
  192. package/dist/dts/utils/template-helpers.d.ts +16 -0
  193. package/dist/dts/utils/typings.d.ts +6 -0
  194. package/dist/dts/utils/whitespace-filter.d.ts +12 -0
  195. package/dist/esm/accordion/accordion.bench.js +30 -0
  196. package/dist/esm/accordion/accordion.bench.js.map +1 -0
  197. package/dist/esm/accordion/accordion.definition.js +0 -4
  198. package/dist/esm/accordion/accordion.definition.js.map +1 -1
  199. package/dist/esm/accordion/accordion.js +211 -3
  200. package/dist/esm/accordion/accordion.js.map +1 -1
  201. package/dist/esm/accordion/accordion.options.js +9 -0
  202. package/dist/esm/accordion/accordion.options.js.map +1 -0
  203. package/dist/esm/accordion/accordion.styles.js +1 -1
  204. package/dist/esm/accordion/accordion.styles.js.map +1 -1
  205. package/dist/esm/accordion/accordion.template.js +11 -1
  206. package/dist/esm/accordion/accordion.template.js.map +1 -1
  207. package/dist/esm/accordion/index.js +2 -1
  208. package/dist/esm/accordion/index.js.map +1 -1
  209. package/dist/esm/accordion-item/accordion-item.bench.js +14 -0
  210. package/dist/esm/accordion-item/accordion-item.bench.js.map +1 -0
  211. package/dist/esm/accordion-item/accordion-item.definition.js +0 -3
  212. package/dist/esm/accordion-item/accordion-item.definition.js.map +1 -1
  213. package/dist/esm/accordion-item/accordion-item.js +80 -10
  214. package/dist/esm/accordion-item/accordion-item.js.map +1 -1
  215. package/dist/esm/accordion-item/accordion-item.styles.js +1 -1
  216. package/dist/esm/accordion-item/accordion-item.styles.js.map +1 -1
  217. package/dist/esm/accordion-item/accordion-item.template.js +47 -2
  218. package/dist/esm/accordion-item/accordion-item.template.js.map +1 -1
  219. package/dist/esm/accordion-item/index.js +2 -2
  220. package/dist/esm/accordion-item/index.js.map +1 -1
  221. package/dist/esm/anchor-button/anchor-button.bench.js +11 -0
  222. package/dist/esm/anchor-button/anchor-button.bench.js.map +1 -0
  223. package/dist/esm/anchor-button/anchor-button.definition.js +0 -6
  224. package/dist/esm/anchor-button/anchor-button.definition.js.map +1 -1
  225. package/dist/esm/anchor-button/anchor-button.js +123 -64
  226. package/dist/esm/anchor-button/anchor-button.js.map +1 -1
  227. package/dist/esm/anchor-button/anchor-button.options.js +26 -0
  228. package/dist/esm/anchor-button/anchor-button.options.js.map +1 -1
  229. package/dist/esm/anchor-button/anchor-button.styles.js +8 -8
  230. package/dist/esm/anchor-button/anchor-button.styles.js.map +1 -1
  231. package/dist/esm/anchor-button/anchor-button.template.js +21 -1
  232. package/dist/esm/anchor-button/anchor-button.template.js.map +1 -1
  233. package/dist/esm/anchor-button/index.js +3 -3
  234. package/dist/esm/anchor-button/index.js.map +1 -1
  235. package/dist/esm/avatar/avatar.bench.js +10 -0
  236. package/dist/esm/avatar/avatar.bench.js.map +1 -0
  237. package/dist/esm/avatar/avatar.js +43 -23
  238. package/dist/esm/avatar/avatar.js.map +1 -1
  239. package/dist/esm/avatar/avatar.styles.js +36 -36
  240. package/dist/esm/avatar/avatar.styles.js.map +1 -1
  241. package/dist/esm/avatar/avatar.template.js +2 -4
  242. package/dist/esm/avatar/avatar.template.js.map +1 -1
  243. package/dist/esm/avatar/index.js +2 -2
  244. package/dist/esm/avatar/index.js.map +1 -1
  245. package/dist/esm/badge/badge.bench.js +11 -0
  246. package/dist/esm/badge/badge.bench.js.map +1 -0
  247. package/dist/esm/badge/badge.definition.js +0 -3
  248. package/dist/esm/badge/badge.definition.js.map +1 -1
  249. package/dist/esm/badge/badge.js +2 -7
  250. package/dist/esm/badge/badge.js.map +1 -1
  251. package/dist/esm/badge/badge.styles.js +8 -1
  252. package/dist/esm/badge/badge.styles.js.map +1 -1
  253. package/dist/esm/badge/badge.template.js +2 -2
  254. package/dist/esm/badge/badge.template.js.map +1 -1
  255. package/dist/esm/badge/index.js +2 -2
  256. package/dist/esm/badge/index.js.map +1 -1
  257. package/dist/esm/button/button.bench.js +11 -0
  258. package/dist/esm/button/button.bench.js.map +1 -0
  259. package/dist/esm/button/button.definition.js +2 -6
  260. package/dist/esm/button/button.definition.js.map +1 -1
  261. package/dist/esm/button/button.js +264 -42
  262. package/dist/esm/button/button.js.map +1 -1
  263. package/dist/esm/button/button.options.js +20 -0
  264. package/dist/esm/button/button.options.js.map +1 -1
  265. package/dist/esm/button/button.styles.js +79 -70
  266. package/dist/esm/button/button.styles.js.map +1 -1
  267. package/dist/esm/button/button.template.js +23 -1
  268. package/dist/esm/button/button.template.js.map +1 -1
  269. package/dist/esm/button/index.js +4 -4
  270. package/dist/esm/button/index.js.map +1 -1
  271. package/dist/esm/checkbox/checkbox.bench.js +11 -0
  272. package/dist/esm/checkbox/checkbox.bench.js.map +1 -0
  273. package/dist/esm/checkbox/checkbox.definition.js +1 -1
  274. package/dist/esm/checkbox/checkbox.definition.js.map +1 -1
  275. package/dist/esm/checkbox/checkbox.js +371 -13
  276. package/dist/esm/checkbox/checkbox.js.map +1 -1
  277. package/dist/esm/checkbox/checkbox.options.js +0 -8
  278. package/dist/esm/checkbox/checkbox.options.js.map +1 -1
  279. package/dist/esm/checkbox/checkbox.styles.js +145 -123
  280. package/dist/esm/checkbox/checkbox.styles.js.map +1 -1
  281. package/dist/esm/checkbox/checkbox.template.js +34 -17
  282. package/dist/esm/checkbox/checkbox.template.js.map +1 -1
  283. package/dist/esm/checkbox/index.js +3 -3
  284. package/dist/esm/checkbox/index.js.map +1 -1
  285. package/dist/esm/compound-button/compound-button.bench.js +15 -0
  286. package/dist/esm/compound-button/compound-button.bench.js.map +1 -0
  287. package/dist/esm/compound-button/compound-button.definition.js +0 -6
  288. package/dist/esm/compound-button/compound-button.definition.js.map +1 -1
  289. package/dist/esm/compound-button/compound-button.options.js.map +1 -1
  290. package/dist/esm/compound-button/compound-button.styles.js +7 -7
  291. package/dist/esm/compound-button/compound-button.template.js +4 -40
  292. package/dist/esm/compound-button/compound-button.template.js.map +1 -1
  293. package/dist/esm/compound-button/index.js +2 -2
  294. package/dist/esm/compound-button/index.js.map +1 -1
  295. package/dist/esm/counter-badge/counter-badge.bench.js +11 -0
  296. package/dist/esm/counter-badge/counter-badge.bench.js.map +1 -0
  297. package/dist/esm/counter-badge/counter-badge.definition.js +0 -4
  298. package/dist/esm/counter-badge/counter-badge.definition.js.map +1 -1
  299. package/dist/esm/counter-badge/counter-badge.js +2 -7
  300. package/dist/esm/counter-badge/counter-badge.js.map +1 -1
  301. package/dist/esm/counter-badge/index.js +2 -2
  302. package/dist/esm/counter-badge/index.js.map +1 -1
  303. package/dist/esm/dialog/define.js +4 -0
  304. package/dist/esm/dialog/define.js.map +1 -0
  305. package/dist/esm/dialog/dialog.bench.js +11 -0
  306. package/dist/esm/dialog/dialog.bench.js.map +1 -0
  307. package/dist/esm/dialog/dialog.definition.js +17 -0
  308. package/dist/esm/dialog/dialog.definition.js.map +1 -0
  309. package/dist/esm/dialog/dialog.js +91 -0
  310. package/dist/esm/dialog/dialog.js.map +1 -0
  311. package/dist/esm/dialog/dialog.options.js +10 -0
  312. package/dist/esm/dialog/dialog.options.js.map +1 -0
  313. package/dist/esm/dialog/dialog.styles.js +86 -0
  314. package/dist/esm/dialog/dialog.styles.js.map +1 -0
  315. package/dist/esm/dialog/dialog.template.js +24 -0
  316. package/dist/esm/dialog/dialog.template.js.map +1 -0
  317. package/dist/esm/dialog/index.js +6 -0
  318. package/dist/esm/dialog/index.js.map +1 -0
  319. package/dist/esm/dialog-body/define.js +4 -0
  320. package/dist/esm/dialog-body/define.js.map +1 -0
  321. package/dist/esm/dialog-body/dialog-body.bench.js +11 -0
  322. package/dist/esm/dialog-body/dialog-body.bench.js.map +1 -0
  323. package/dist/esm/dialog-body/dialog-body.definition.js +17 -0
  324. package/dist/esm/dialog-body/dialog-body.definition.js.map +1 -0
  325. package/dist/esm/dialog-body/dialog-body.js +22 -0
  326. package/dist/esm/dialog-body/dialog-body.js.map +1 -0
  327. package/dist/esm/dialog-body/dialog-body.styles.js +79 -0
  328. package/dist/esm/dialog-body/dialog-body.styles.js.map +1 -0
  329. package/dist/esm/dialog-body/dialog-body.template.js +42 -0
  330. package/dist/esm/dialog-body/dialog-body.template.js.map +1 -0
  331. package/dist/esm/dialog-body/index.js +5 -0
  332. package/dist/esm/dialog-body/index.js.map +1 -0
  333. package/dist/esm/divider/divider.bench.js +10 -0
  334. package/dist/esm/divider/divider.bench.js.map +1 -0
  335. package/dist/esm/divider/divider.js +56 -11
  336. package/dist/esm/divider/divider.js.map +1 -1
  337. package/dist/esm/divider/divider.options.js +14 -5
  338. package/dist/esm/divider/divider.options.js.map +1 -1
  339. package/dist/esm/divider/divider.styles.js +1 -1
  340. package/dist/esm/divider/divider.styles.js.map +1 -1
  341. package/dist/esm/divider/divider.template.js +4 -1
  342. package/dist/esm/divider/divider.template.js.map +1 -1
  343. package/dist/esm/divider/index.js +2 -2
  344. package/dist/esm/divider/index.js.map +1 -1
  345. package/dist/esm/field/define.js +4 -0
  346. package/dist/esm/field/define.js.map +1 -0
  347. package/dist/esm/field/field.bench.js +10 -0
  348. package/dist/esm/field/field.bench.js.map +1 -0
  349. package/dist/esm/field/field.definition.js +20 -0
  350. package/dist/esm/field/field.definition.js.map +1 -0
  351. package/dist/esm/field/field.js +139 -0
  352. package/dist/esm/field/field.js.map +1 -0
  353. package/dist/esm/field/field.options.js +27 -0
  354. package/dist/esm/field/field.options.js.map +1 -0
  355. package/dist/esm/field/field.styles.js +186 -0
  356. package/dist/esm/field/field.styles.js.map +1 -0
  357. package/dist/esm/field/field.template.js +26 -0
  358. package/dist/esm/field/field.template.js.map +1 -0
  359. package/dist/esm/field/index.js +6 -0
  360. package/dist/esm/field/index.js.map +1 -0
  361. package/dist/esm/form-associated/form-associated.js +458 -0
  362. package/dist/esm/form-associated/form-associated.js.map +1 -0
  363. package/dist/esm/image/image.bench.js +14 -0
  364. package/dist/esm/image/image.bench.js.map +1 -0
  365. package/dist/esm/image/image.js +1 -6
  366. package/dist/esm/image/image.js.map +1 -1
  367. package/dist/esm/image/index.js +2 -2
  368. package/dist/esm/image/index.js.map +1 -1
  369. package/dist/esm/index-rollup.js +32 -1
  370. package/dist/esm/index-rollup.js.map +1 -1
  371. package/dist/esm/index.js +39 -30
  372. package/dist/esm/index.js.map +1 -1
  373. package/dist/esm/label/index.js +2 -1
  374. package/dist/esm/label/index.js.map +1 -1
  375. package/dist/esm/label/label.bench.js +11 -0
  376. package/dist/esm/label/label.bench.js.map +1 -0
  377. package/dist/esm/label/label.js +1 -6
  378. package/dist/esm/label/label.js.map +1 -1
  379. package/dist/esm/label/label.styles.js +13 -6
  380. package/dist/esm/label/label.styles.js.map +1 -1
  381. package/dist/esm/link/define.js +4 -0
  382. package/dist/esm/link/define.js.map +1 -0
  383. package/dist/esm/link/index.js +5 -0
  384. package/dist/esm/link/index.js.map +1 -0
  385. package/dist/esm/link/link.bench.js +11 -0
  386. package/dist/esm/link/link.bench.js.map +1 -0
  387. package/dist/esm/link/link.definition.js +15 -0
  388. package/dist/esm/link/link.definition.js.map +1 -0
  389. package/dist/esm/link/link.js +36 -0
  390. package/dist/esm/link/link.js.map +1 -0
  391. package/dist/esm/link/link.options.js +21 -0
  392. package/dist/esm/link/link.options.js.map +1 -0
  393. package/dist/esm/link/link.styles.js +67 -0
  394. package/dist/esm/link/link.styles.js.map +1 -0
  395. package/dist/esm/link/link.template.js +22 -0
  396. package/dist/esm/link/link.template.js.map +1 -0
  397. package/dist/esm/menu/index.js +1 -1
  398. package/dist/esm/menu/index.js.map +1 -1
  399. package/dist/esm/menu/menu.bench.js +31 -0
  400. package/dist/esm/menu/menu.bench.js.map +1 -0
  401. package/dist/esm/menu/menu.js +26 -29
  402. package/dist/esm/menu/menu.js.map +1 -1
  403. package/dist/esm/menu-button/index.js +3 -3
  404. package/dist/esm/menu-button/index.js.map +1 -1
  405. package/dist/esm/menu-button/menu-button.bench.js +11 -0
  406. package/dist/esm/menu-button/menu-button.bench.js.map +1 -0
  407. package/dist/esm/menu-button/menu-button.definition.js +0 -6
  408. package/dist/esm/menu-button/menu-button.definition.js.map +1 -1
  409. package/dist/esm/menu-button/menu-button.options.js.map +1 -1
  410. package/dist/esm/menu-button/menu-button.template.js +6 -2
  411. package/dist/esm/menu-button/menu-button.template.js.map +1 -1
  412. package/dist/esm/menu-item/index.js +4 -3
  413. package/dist/esm/menu-item/index.js.map +1 -1
  414. package/dist/esm/menu-item/menu-item.bench.js +11 -0
  415. package/dist/esm/menu-item/menu-item.bench.js.map +1 -0
  416. package/dist/esm/menu-item/menu-item.definition.js +0 -4
  417. package/dist/esm/menu-item/menu-item.definition.js.map +1 -1
  418. package/dist/esm/menu-item/menu-item.js +265 -4
  419. package/dist/esm/menu-item/menu-item.js.map +1 -1
  420. package/dist/esm/menu-item/menu-item.options.js +27 -0
  421. package/dist/esm/menu-item/menu-item.options.js.map +1 -0
  422. package/dist/esm/menu-item/menu-item.styles.js +1 -1
  423. package/dist/esm/menu-item/menu-item.styles.js.map +1 -1
  424. package/dist/esm/menu-item/menu-item.template.js +57 -2
  425. package/dist/esm/menu-item/menu-item.template.js.map +1 -1
  426. package/dist/esm/menu-list/index.js +1 -1
  427. package/dist/esm/menu-list/index.js.map +1 -1
  428. package/dist/esm/menu-list/menu-list.bench.js +21 -0
  429. package/dist/esm/menu-list/menu-list.bench.js.map +1 -0
  430. package/dist/esm/menu-list/menu-list.definition.js +0 -4
  431. package/dist/esm/menu-list/menu-list.definition.js.map +1 -1
  432. package/dist/esm/menu-list/menu-list.js +262 -11
  433. package/dist/esm/menu-list/menu-list.js.map +1 -1
  434. package/dist/esm/menu-list/menu-list.styles.js +1 -1
  435. package/dist/esm/menu-list/menu-list.styles.js.map +1 -1
  436. package/dist/esm/menu-list/menu-list.template.js +13 -1
  437. package/dist/esm/menu-list/menu-list.template.js.map +1 -1
  438. package/dist/esm/patterns/aria-globals.js +72 -0
  439. package/dist/esm/patterns/aria-globals.js.map +1 -0
  440. package/dist/esm/patterns/index.js +3 -0
  441. package/dist/esm/patterns/index.js.map +1 -0
  442. package/dist/esm/patterns/start-end.js +29 -0
  443. package/dist/esm/patterns/start-end.js.map +1 -0
  444. package/dist/esm/progress-bar/index.js +2 -2
  445. package/dist/esm/progress-bar/index.js.map +1 -1
  446. package/dist/esm/progress-bar/progress-bar.bench.js +10 -0
  447. package/dist/esm/progress-bar/progress-bar.bench.js.map +1 -0
  448. package/dist/esm/progress-bar/progress-bar.js +66 -13
  449. package/dist/esm/progress-bar/progress-bar.js.map +1 -1
  450. package/dist/esm/progress-bar/progress-bar.options.js.map +1 -1
  451. package/dist/esm/progress-bar/progress-bar.styles.js +49 -128
  452. package/dist/esm/progress-bar/progress-bar.styles.js.map +1 -1
  453. package/dist/esm/progress-bar/progress-bar.template.js +11 -5
  454. package/dist/esm/progress-bar/progress-bar.template.js.map +1 -1
  455. package/dist/esm/radio/index.js +1 -1
  456. package/dist/esm/radio/index.js.map +1 -1
  457. package/dist/esm/radio/radio.bench.js +11 -0
  458. package/dist/esm/radio/radio.bench.js.map +1 -0
  459. package/dist/esm/radio/radio.form-associated.js +14 -0
  460. package/dist/esm/radio/radio.form-associated.js.map +1 -0
  461. package/dist/esm/radio/radio.js +91 -3
  462. package/dist/esm/radio/radio.js.map +1 -1
  463. package/dist/esm/radio/radio.styles.js +1 -1
  464. package/dist/esm/radio/radio.styles.js.map +1 -1
  465. package/dist/esm/radio/radio.template.js +28 -2
  466. package/dist/esm/radio/radio.template.js.map +1 -1
  467. package/dist/esm/radio-group/index.js +2 -2
  468. package/dist/esm/radio-group/index.js.map +1 -1
  469. package/dist/esm/radio-group/radio-group.bench.js +21 -0
  470. package/dist/esm/radio-group/radio-group.bench.js.map +1 -0
  471. package/dist/esm/radio-group/radio-group.js +347 -9
  472. package/dist/esm/radio-group/radio-group.js.map +1 -1
  473. package/dist/esm/radio-group/radio-group.options.js +7 -0
  474. package/dist/esm/radio-group/radio-group.options.js.map +1 -0
  475. package/dist/esm/radio-group/radio-group.styles.js +1 -1
  476. package/dist/esm/radio-group/radio-group.styles.js.map +1 -1
  477. package/dist/esm/radio-group/radio-group.template.js +30 -1
  478. package/dist/esm/radio-group/radio-group.template.js.map +1 -1
  479. package/dist/esm/slider/index.js +2 -2
  480. package/dist/esm/slider/index.js.map +1 -1
  481. package/dist/esm/slider/slider-utilities.js +12 -0
  482. package/dist/esm/slider/slider-utilities.js.map +1 -0
  483. package/dist/esm/slider/slider.bench.js +10 -0
  484. package/dist/esm/slider/slider.bench.js.map +1 -0
  485. package/dist/esm/slider/slider.form-associated.js +14 -0
  486. package/dist/esm/slider/slider.form-associated.js.map +1 -0
  487. package/dist/esm/slider/slider.js +433 -22
  488. package/dist/esm/slider/slider.js.map +1 -1
  489. package/dist/esm/slider/slider.options.js +11 -1
  490. package/dist/esm/slider/slider.options.js.map +1 -1
  491. package/dist/esm/slider/slider.styles.js +1 -1
  492. package/dist/esm/slider/slider.styles.js.map +1 -1
  493. package/dist/esm/slider/slider.template.js +39 -2
  494. package/dist/esm/slider/slider.template.js.map +1 -1
  495. package/dist/esm/spinner/index.js +2 -2
  496. package/dist/esm/spinner/index.js.map +1 -1
  497. package/dist/esm/spinner/spinner.bench.js +10 -0
  498. package/dist/esm/spinner/spinner.bench.js.map +1 -0
  499. package/dist/esm/spinner/spinner.definition.js +0 -4
  500. package/dist/esm/spinner/spinner.definition.js.map +1 -1
  501. package/dist/esm/spinner/spinner.js +13 -9
  502. package/dist/esm/spinner/spinner.js.map +1 -1
  503. package/dist/esm/spinner/spinner.styles.js +3 -17
  504. package/dist/esm/spinner/spinner.styles.js.map +1 -1
  505. package/dist/esm/spinner/spinner.template.js +8 -21
  506. package/dist/esm/spinner/spinner.template.js.map +1 -1
  507. package/dist/esm/styles/partials/badge.partials.js +1 -1
  508. package/dist/esm/styles/partials/badge.partials.js.map +1 -1
  509. package/dist/esm/styles/partials/index.js +1 -0
  510. package/dist/esm/styles/partials/index.js.map +1 -1
  511. package/dist/esm/styles/partials/typography.partials.js +105 -0
  512. package/dist/esm/styles/partials/typography.partials.js.map +1 -0
  513. package/dist/esm/switch/index.js +2 -2
  514. package/dist/esm/switch/index.js.map +1 -1
  515. package/dist/esm/switch/switch.bench.js +11 -0
  516. package/dist/esm/switch/switch.bench.js.map +1 -0
  517. package/dist/esm/switch/switch.form-associated.js +14 -0
  518. package/dist/esm/switch/switch.form-associated.js.map +1 -0
  519. package/dist/esm/switch/switch.js +2 -12
  520. package/dist/esm/switch/switch.js.map +1 -1
  521. package/dist/esm/switch/switch.styles.js +38 -58
  522. package/dist/esm/switch/switch.styles.js.map +1 -1
  523. package/dist/esm/switch/switch.template.js +15 -1
  524. package/dist/esm/switch/switch.template.js.map +1 -1
  525. package/dist/esm/tab/index.js +3 -3
  526. package/dist/esm/tab/index.js.map +1 -1
  527. package/dist/esm/tab/tab.bench.js +11 -0
  528. package/dist/esm/tab/tab.bench.js.map +1 -0
  529. package/dist/esm/tab/tab.js +9 -3
  530. package/dist/esm/tab/tab.js.map +1 -1
  531. package/dist/esm/tab/tab.styles.js +1 -1
  532. package/dist/esm/tab/tab.styles.js.map +1 -1
  533. package/dist/esm/tab/tab.template.js +1 -1
  534. package/dist/esm/tab/tab.template.js.map +1 -1
  535. package/dist/esm/tab-panel/index.js +1 -1
  536. package/dist/esm/tab-panel/index.js.map +1 -1
  537. package/dist/esm/tab-panel/tab-panel.bench.js +13 -0
  538. package/dist/esm/tab-panel/tab-panel.bench.js.map +1 -0
  539. package/dist/esm/tab-panel/tab-panel.js +2 -2
  540. package/dist/esm/tab-panel/tab-panel.js.map +1 -1
  541. package/dist/esm/tab-panel/tab-panel.styles.js +1 -1
  542. package/dist/esm/tab-panel/tab-panel.styles.js.map +1 -1
  543. package/dist/esm/tab-panel/tab-panel.template.js +8 -1
  544. package/dist/esm/tab-panel/tab-panel.template.js.map +1 -1
  545. package/dist/esm/tabs/index.js +4 -4
  546. package/dist/esm/tabs/index.js.map +1 -1
  547. package/dist/esm/tabs/tabs.bench.js +32 -0
  548. package/dist/esm/tabs/tabs.bench.js.map +1 -0
  549. package/dist/esm/tabs/tabs.js +292 -20
  550. package/dist/esm/tabs/tabs.js.map +1 -1
  551. package/dist/esm/tabs/tabs.options.js +6 -2
  552. package/dist/esm/tabs/tabs.options.js.map +1 -1
  553. package/dist/esm/tabs/tabs.styles.js +1 -1
  554. package/dist/esm/tabs/tabs.styles.js.map +1 -1
  555. package/dist/esm/tabs/tabs.template.js +14 -1
  556. package/dist/esm/tabs/tabs.template.js.map +1 -1
  557. package/dist/esm/text/index.js +2 -2
  558. package/dist/esm/text/index.js.map +1 -1
  559. package/dist/esm/text/text.bench.js +13 -0
  560. package/dist/esm/text/text.bench.js.map +1 -0
  561. package/dist/esm/text/text.js +1 -6
  562. package/dist/esm/text/text.js.map +1 -1
  563. package/dist/esm/text/text.styles.js +49 -25
  564. package/dist/esm/text/text.styles.js.map +1 -1
  565. package/dist/esm/text-input/index.js +4 -5
  566. package/dist/esm/text-input/index.js.map +1 -1
  567. package/dist/esm/text-input/text-input.bench.js +10 -0
  568. package/dist/esm/text-input/text-input.bench.js.map +1 -0
  569. package/dist/esm/text-input/text-input.definition.js +5 -3
  570. package/dist/esm/text-input/text-input.definition.js.map +1 -1
  571. package/dist/esm/text-input/text-input.js +398 -11
  572. package/dist/esm/text-input/text-input.js.map +1 -1
  573. package/dist/esm/text-input/text-input.options.js +35 -2
  574. package/dist/esm/text-input/text-input.options.js.map +1 -1
  575. package/dist/esm/text-input/text-input.styles.js +22 -12
  576. package/dist/esm/text-input/text-input.styles.js.map +1 -1
  577. package/dist/esm/text-input/text-input.template.js +55 -2
  578. package/dist/esm/text-input/text-input.template.js.map +1 -1
  579. package/dist/esm/theme/design-tokens.js +2181 -386
  580. package/dist/esm/theme/design-tokens.js.map +1 -1
  581. package/dist/esm/theme/set-theme.js +26 -3
  582. package/dist/esm/theme/set-theme.js.map +1 -1
  583. package/dist/esm/toggle-button/index.js +4 -4
  584. package/dist/esm/toggle-button/index.js.map +1 -1
  585. package/dist/esm/toggle-button/toggle-button.bench.js +11 -0
  586. package/dist/esm/toggle-button/toggle-button.bench.js.map +1 -0
  587. package/dist/esm/toggle-button/toggle-button.definition.js +0 -5
  588. package/dist/esm/toggle-button/toggle-button.definition.js.map +1 -1
  589. package/dist/esm/toggle-button/toggle-button.js +43 -91
  590. package/dist/esm/toggle-button/toggle-button.js.map +1 -1
  591. package/dist/esm/toggle-button/toggle-button.options.js.map +1 -1
  592. package/dist/esm/toggle-button/toggle-button.styles.js +31 -26
  593. package/dist/esm/toggle-button/toggle-button.styles.js.map +1 -1
  594. package/dist/esm/toggle-button/toggle-button.template.js +1 -1
  595. package/dist/esm/toggle-button/toggle-button.template.js.map +1 -1
  596. package/dist/esm/utils/behaviors/match-media-stylesheet-behavior.js +142 -0
  597. package/dist/esm/utils/behaviors/match-media-stylesheet-behavior.js.map +1 -0
  598. package/dist/esm/utils/benchmark-dependencies/tokens.js +2 -0
  599. package/dist/esm/utils/benchmark-dependencies/tokens.js.map +1 -0
  600. package/dist/esm/utils/benchmark-wrapper.js +18 -0
  601. package/dist/esm/utils/benchmark-wrapper.js.map +1 -0
  602. package/dist/esm/utils/direction.js +15 -0
  603. package/dist/esm/utils/direction.js.map +1 -0
  604. package/dist/esm/utils/display.js +15 -0
  605. package/dist/esm/utils/display.js.map +1 -0
  606. package/dist/esm/utils/element-internals.js +32 -0
  607. package/dist/esm/utils/element-internals.js.map +1 -0
  608. package/dist/esm/utils/get-initials.js.map +1 -1
  609. package/dist/esm/utils/index.js +7 -0
  610. package/dist/esm/utils/index.js.map +1 -0
  611. package/dist/esm/utils/template-helpers.js +19 -0
  612. package/dist/esm/utils/template-helpers.js.map +1 -0
  613. package/dist/esm/utils/typings.js +3 -0
  614. package/dist/esm/utils/typings.js.map +1 -0
  615. package/dist/esm/utils/whitespace-filter.js +13 -0
  616. package/dist/esm/utils/whitespace-filter.js.map +1 -0
  617. package/dist/web-components.d.ts +6220 -1635
  618. package/dist/web-components.js +5383 -6596
  619. package/dist/web-components.min.js +337 -191
  620. package/package.json +40 -13
  621. package/dist/fluent-web-components.api.json +0 -19686
  622. package/dist/storybook/108.78b731e00015540915a8.manager.bundle.js +0 -1
  623. package/dist/storybook/108.b31ec3a1.iframe.bundle.js +0 -1
  624. package/dist/storybook/316.bc4aabd3.iframe.bundle.js +0 -2
  625. package/dist/storybook/316.bc4aabd3.iframe.bundle.js.LICENSE.txt +0 -17
  626. package/dist/storybook/401.7edec720.iframe.bundle.js +0 -2
  627. package/dist/storybook/401.7edec720.iframe.bundle.js.LICENSE.txt +0 -12
  628. package/dist/storybook/401.c9bdfaf0dda8b194127f.manager.bundle.js +0 -2
  629. package/dist/storybook/401.c9bdfaf0dda8b194127f.manager.bundle.js.LICENSE.txt +0 -12
  630. package/dist/storybook/491.77b24750.iframe.bundle.js +0 -1
  631. package/dist/storybook/591.f5bf0d78d2f203de19f5.manager.bundle.js +0 -2
  632. package/dist/storybook/591.f5bf0d78d2f203de19f5.manager.bundle.js.LICENSE.txt +0 -94
  633. package/dist/storybook/677.939f187f.iframe.bundle.js +0 -462
  634. package/dist/storybook/677.939f187f.iframe.bundle.js.LICENSE.txt +0 -46
  635. package/dist/storybook/677.939f187f.iframe.bundle.js.map +0 -1
  636. package/dist/storybook/709.22096ad4.iframe.bundle.js +0 -2
  637. package/dist/storybook/709.22096ad4.iframe.bundle.js.LICENSE.txt +0 -8
  638. package/dist/storybook/709.b131e33993a6b94d7ad8.manager.bundle.js +0 -2
  639. package/dist/storybook/709.b131e33993a6b94d7ad8.manager.bundle.js.LICENSE.txt +0 -8
  640. package/dist/storybook/721.46fa9f53.iframe.bundle.js +0 -2
  641. package/dist/storybook/721.46fa9f53.iframe.bundle.js.LICENSE.txt +0 -31
  642. package/dist/storybook/721.c225c101a0a55a8f98eb.manager.bundle.js +0 -2
  643. package/dist/storybook/721.c225c101a0a55a8f98eb.manager.bundle.js.LICENSE.txt +0 -31
  644. package/dist/storybook/858.da40ed98.iframe.bundle.js +0 -1
  645. package/dist/storybook/858.e08e25a6901d2e21e9d8.manager.bundle.js +0 -1
  646. package/dist/storybook/950.674e7934b4a26a022608.manager.bundle.js +0 -1
  647. package/dist/storybook/954.630c5748.iframe.bundle.js +0 -1
  648. package/dist/storybook/954.7f985e2fdf9f15a7748b.manager.bundle.js +0 -1
  649. package/dist/storybook/SegoeUI-VF.ttf +0 -0
  650. package/dist/storybook/favicon.ico +0 -0
  651. package/dist/storybook/favicon.png +0 -0
  652. package/dist/storybook/iframe.html +0 -364
  653. package/dist/storybook/index.html +0 -165
  654. package/dist/storybook/main.5d7b916dc1e37293b1d8.manager.bundle.js +0 -1
  655. package/dist/storybook/main.b782e9fb.iframe.bundle.js +0 -2
  656. package/dist/storybook/main.b782e9fb.iframe.bundle.js.LICENSE.txt +0 -1
  657. package/dist/storybook/project.json +0 -1
  658. package/dist/storybook/runtime~main.5d918fe7.iframe.bundle.js +0 -1
  659. package/dist/storybook/runtime~main.dbf00b470fe610082919.manager.bundle.js +0 -1
  660. package/dist/storybook/shell.css +0 -83
  661. package/dist/storybook/theme-switch.ts +0 -13
  662. package/docs/api-report.md +0 -2427
  663. package/playwright.config.ts +0 -25
@@ -1,9 +1,76 @@
1
- import { FASTMenu } from '@microsoft/fast-foundation/menu.js';
1
+ import { FASTElement } from '@microsoft/fast-element';
2
2
  /**
3
- * The base class used for constructing a fluent-menu-list custom element
3
+ * A Menu Custom HTML Element.
4
+ * Implements the {@link https://www.w3.org/TR/wai-aria-1.1/#menu | ARIA menu }.
5
+ *
6
+ * @slot - The default slot for the menu items
7
+ *
4
8
  * @public
5
9
  */
6
- export declare class MenuList extends FASTMenu {
7
- protected setItems(): void;
10
+ export declare class MenuList extends FASTElement {
11
+ /**
12
+ * @internal
13
+ */
14
+ items: HTMLElement[];
15
+ protected itemsChanged(oldValue: HTMLElement[], newValue: HTMLElement[]): void;
16
+ protected menuItems: Element[] | undefined;
17
+ private expandedItem;
18
+ /**
19
+ * The index of the focusable element in the items array
20
+ * defaults to -1
21
+ */
22
+ private focusIndex;
23
+ private static focusableElementRoles;
24
+ /**
25
+ * @internal
26
+ */
27
+ connectedCallback(): void;
28
+ /**
29
+ * @internal
30
+ */
31
+ disconnectedCallback(): void;
32
+ /**
33
+ * @internal
34
+ */
35
+ readonly isNestedMenu: () => boolean;
36
+ /**
37
+ * Focuses the first item in the menu.
38
+ *
39
+ * @public
40
+ */
41
+ focus(): void;
42
+ /**
43
+ * Collapses any expanded menu items.
44
+ *
45
+ * @public
46
+ */
47
+ collapseExpandedItem(): void;
48
+ /**
49
+ * @internal
50
+ */
51
+ handleMenuKeyDown(e: KeyboardEvent): void | boolean;
52
+ /**
53
+ * if focus is moving out of the menu, reset to a stable initial state
54
+ * @internal
55
+ */
56
+ handleFocusOut: (e: FocusEvent) => void;
57
+ private handleItemFocus;
58
+ private handleExpandedChanged;
59
+ private removeItemListeners;
8
60
  private static elementIndent;
61
+ protected setItems(): void;
62
+ handleChange(source: any, propertyName: string): void;
63
+ /**
64
+ * handle change from child element
65
+ */
66
+ private changeHandler;
67
+ /**
68
+ * check if the item is a menu item
69
+ */
70
+ protected isMenuItemElement: (el: Element) => el is HTMLElement;
71
+ /**
72
+ * check if the item is focusable
73
+ */
74
+ private isFocusableElement;
75
+ private setFocus;
9
76
  }
@@ -1,9 +1,5 @@
1
1
  import { MenuList } from './menu-list.js';
2
2
  /**
3
- * The Fluent MenuList Element. Implements {@link @microsoft/fast-foundation#Menu },
4
- * {@link @microsoft/fast-foundation#menuTemplate}
5
- *
6
- *
7
3
  * @public
8
4
  * @remarks
9
5
  * HTML Element: <fluent-menu-list>
@@ -1,3 +1,4 @@
1
1
  import { ElementViewTemplate } from '@microsoft/fast-element';
2
2
  import type { MenuList } from './menu-list.js';
3
+ export declare function menuTemplate<T extends MenuList>(): ElementViewTemplate<T>;
3
4
  export declare const template: ElementViewTemplate<MenuList>;
@@ -0,0 +1,189 @@
1
+ /**
2
+ * Some states and properties are applicable to all host language elements regardless of whether a role is applied.
3
+ * The following global states and properties are supported by all roles and by all base markup elements.
4
+ * {@link https://www.w3.org/TR/wai-aria-1.1/#global_states}
5
+ *
6
+ * This is intended to be used as a mixin. Be sure you extend FASTElement.
7
+ *
8
+ * @public
9
+ */
10
+ export declare class ARIAGlobalStatesAndProperties {
11
+ /**
12
+ * Indicates whether assistive technologies will present all, or only parts of,
13
+ * the changed region based on the change notifications defined by the aria-relevant attribute.
14
+ * {@link https://www.w3.org/TR/wai-aria-1.1/#aria-atomic}
15
+ *
16
+ * @public
17
+ * @remarks
18
+ * HTML Attribute: aria-atomic
19
+ */
20
+ ariaAtomic: 'true' | 'false' | string | null;
21
+ /**
22
+ * Indicates an element is being modified and that assistive technologies MAY want to wait
23
+ * until the modifications are complete before exposing them to the user.
24
+ * {@link https://www.w3.org/TR/wai-aria-1.1/#aria-busy}
25
+ *
26
+ * @public
27
+ * @remarks
28
+ * HTML Attribute: aria-busy
29
+ */
30
+ ariaBusy: 'true' | 'false' | string | null;
31
+ /**
32
+ * Identifies the element (or elements) whose contents or presence are controlled by the current element.
33
+ *
34
+ * {@link https://www.w3.org/TR/wai-aria-1.1/#aria-controls}
35
+ * @public
36
+ * @remarks
37
+ * HTML Attribute: aria-controls
38
+ */
39
+ ariaControls: string | null;
40
+ /**
41
+ * Indicates the element that represents the current item within a container or set of related elements.
42
+ *
43
+ * {@link https://www.w3.org/TR/wai-aria-1.1/#aria-current}
44
+ * @public
45
+ * @remarks
46
+ * HTML Attribute: aria-current
47
+ */
48
+ ariaCurrent: 'page' | 'step' | 'location' | 'date' | 'time' | 'true' | 'false' | string | null;
49
+ /**
50
+ * Identifies the element (or elements) that describes the object.
51
+ *
52
+ * {@link https://www.w3.org/TR/wai-aria-1.1/#aria-describedby}
53
+ * @public
54
+ * @remarks
55
+ * HTML Attribute: aria-describedby
56
+ */
57
+ ariaDescribedby: string | null;
58
+ /**
59
+ * Identifies the element that provides a detailed, extended description for the object.
60
+ *
61
+ * {@link https://www.w3.org/TR/wai-aria-1.1/#aria-details}
62
+ * @public
63
+ * @remarks
64
+ * HTML Attribute: aria-details
65
+ */
66
+ ariaDetails: string | null;
67
+ /**
68
+ * Indicates that the element is perceivable but disabled, so it is not editable or otherwise operable.
69
+ *
70
+ * {@link https://www.w3.org/TR/wai-aria-1.1/#aria-disabled}
71
+ * @public
72
+ * @remarks
73
+ * HTML Attribute: aria-disabled
74
+ */
75
+ ariaDisabled: 'true' | 'false' | string | null;
76
+ /**
77
+ * Identifies the element that provides an error message for the object.
78
+ *
79
+ * {@link https://www.w3.org/TR/wai-aria-1.1/#aria-errormessage}
80
+ * @public
81
+ * @remarks
82
+ * HTML Attribute: aria-errormessage
83
+ */
84
+ ariaErrormessage: string | null;
85
+ /**
86
+ * Identifies the next element (or elements) in an alternate reading order of content which, at the user's discretion,
87
+ * allows assistive technology to override the general default of reading in document source order.
88
+ *
89
+ * {@link https://www.w3.org/TR/wai-aria-1.1/#aria-flowto}
90
+ * @public
91
+ * @remarks
92
+ * HTML Attribute: aria-flowto
93
+ */
94
+ ariaFlowto: string | null;
95
+ /**
96
+ * Indicates the availability and type of interactive popup element,
97
+ * such as menu or dialog, that can be triggered by an element.
98
+ *
99
+ * {@link https://www.w3.org/TR/wai-aria-1.1/#aria-haspopup}
100
+ * @public
101
+ * @remarks
102
+ * HTML Attribute: aria-haspopup
103
+ */
104
+ ariaHaspopup: 'false' | 'true' | 'menu' | 'listbox' | 'tree' | 'grid' | 'dialog' | string | null;
105
+ /**
106
+ * Indicates whether the element is exposed to an accessibility API
107
+ *
108
+ * {@link https://www.w3.org/TR/wai-aria-1.1/#aria-hidden}
109
+ * @public
110
+ * @remarks
111
+ * HTML Attribute: aria-hidden
112
+ */
113
+ ariaHidden: 'false' | 'true' | string | null;
114
+ /**
115
+ * Indicates the entered value does not conform to the format expected by the application.
116
+ *
117
+ * {@link https://www.w3.org/TR/wai-aria-1.1/#aria-invalid}
118
+ * @public
119
+ * @remarks
120
+ * HTML Attribute: aria-invalid
121
+ */
122
+ ariaInvalid: 'false' | 'true' | 'grammar' | 'spelling' | string | null;
123
+ /**
124
+ * Indicates keyboard shortcuts that an author has implemented to activate or give focus to an element.
125
+ *
126
+ * {@link https://www.w3.org/TR/wai-aria-1.1/#aria-keyshortcuts}
127
+ * @public
128
+ * @remarks
129
+ * HTML Attribute: aria-keyshortcuts
130
+ */
131
+ ariaKeyshortcuts: string | null;
132
+ /**
133
+ * Defines a string value that labels the current element.
134
+ *
135
+ * {@link https://www.w3.org/TR/wai-aria-1.1/#aria-label}
136
+ * @public
137
+ * @remarks
138
+ * HTML Attribute: aria-label
139
+ */
140
+ ariaLabel: string | null;
141
+ /**
142
+ * Identifies the element (or elements) that labels the current element.
143
+ *
144
+ * {@link https://www.w3.org/TR/wai-aria-1.1/#aria-labelledby}
145
+ * @public
146
+ * @remarks
147
+ * HTML Attribute: aria-labelledby
148
+ */
149
+ ariaLabelledby: string | null;
150
+ /**
151
+ * Indicates that an element will be updated, and describes the types of updates the user agents,
152
+ * assistive technologies, and user can expect from the live region.
153
+ *
154
+ * {@link https://www.w3.org/TR/wai-aria-1.1/#aria-live}
155
+ * @public
156
+ * @remarks
157
+ * HTML Attribute: aria-live
158
+ */
159
+ ariaLive: 'assertive' | 'off' | 'polite' | string | null;
160
+ /**
161
+ * Identifies an element (or elements) in order to define a visual,
162
+ * functional, or contextual parent/child relationship between DOM elements
163
+ * where the DOM hierarchy cannot be used to represent the relationship.
164
+ *
165
+ * {@link https://www.w3.org/TR/wai-aria-1.1/#aria-owns}
166
+ * @public
167
+ * @remarks
168
+ * HTML Attribute: aria-owns
169
+ */
170
+ ariaOwns: string | null;
171
+ /**
172
+ * Indicates what notifications the user agent will trigger when the accessibility tree within a live region is modified.
173
+ *
174
+ * {@link https://www.w3.org/TR/wai-aria-1.1/#aria-relevant}
175
+ * @public
176
+ * @remarks
177
+ * HTML Attribute: aria-relevant
178
+ */
179
+ ariaRelevant: 'additions' | 'additions text' | 'all' | 'removals' | 'text' | string | null;
180
+ /**
181
+ * Defines a human-readable, author-localized description for the role of an element.
182
+ *
183
+ * {@link https://www.w3.org/TR/wai-aria-1.1/#aria-roledescription}
184
+ * @public
185
+ * @remarks
186
+ * HTML Attribute: aria-roledescription
187
+ */
188
+ ariaRoledescription: string | null;
189
+ }
@@ -0,0 +1,2 @@
1
+ export * from './aria-globals.js';
2
+ export * from './start-end.js';
@@ -0,0 +1,44 @@
1
+ import { CaptureType } from '@microsoft/fast-element';
2
+ import type { StaticallyComposableHTML } from '../utils/index.js';
3
+ /**
4
+ * Start configuration options
5
+ * @public
6
+ */
7
+ export type StartOptions<TSource = any, TParent = any> = {
8
+ start?: StaticallyComposableHTML<TSource, TParent>;
9
+ };
10
+ /**
11
+ * End configuration options
12
+ * @public
13
+ */
14
+ export type EndOptions<TSource = any, TParent = any> = {
15
+ end?: StaticallyComposableHTML<TSource, TParent>;
16
+ };
17
+ /**
18
+ * Start/End configuration options
19
+ * @public
20
+ */
21
+ export type StartEndOptions<TSource = any, TParent = any> = StartOptions<TSource, TParent> & EndOptions<TSource, TParent>;
22
+ /**
23
+ * A mixin class implementing start and end slots.
24
+ * These are generally used to decorate text elements with icons or other visual indicators.
25
+ * @public
26
+ */
27
+ export declare class StartEnd {
28
+ start: HTMLSlotElement;
29
+ end: HTMLSlotElement;
30
+ }
31
+ /**
32
+ * The template for the end slot.
33
+ * For use with {@link StartEnd}
34
+ *
35
+ * @public
36
+ */
37
+ export declare function endSlotTemplate<TSource extends StartEnd = StartEnd, TParent = any>(options: EndOptions<TSource, TParent>): CaptureType<TSource, TParent>;
38
+ /**
39
+ * The template for the start slots.
40
+ * For use with {@link StartEnd}
41
+ *
42
+ * @public
43
+ */
44
+ export declare function startSlotTemplate<TSource extends StartEnd = StartEnd, TParent = any>(options: StartOptions<TSource, TParent>): CaptureType<TSource, TParent>;
@@ -1,5 +1,5 @@
1
- export * from './progress-bar.js';
2
- export * from './progress-bar.options.js';
3
1
  export { definition as ProgressBarDefinition } from './progress-bar.definition.js';
2
+ export { ProgressBar } from './progress-bar.js';
3
+ export { ProgressBarShape, ProgressBarThickness, ProgressBarValidationState } from './progress-bar.options.js';
4
4
  export { styles as ProgressBarStyles } from './progress-bar.styles.js';
5
5
  export { template as ProgressBarTemplate } from './progress-bar.template.js';
@@ -0,0 +1,3 @@
1
+ declare const itemRenderer: () => HTMLElement;
2
+ export default itemRenderer;
3
+ export { tests } from '../utils/benchmark-wrapper.js';
@@ -1,30 +1,80 @@
1
- import { FASTProgress } from '@microsoft/fast-foundation/progress.js';
2
- import type { ProgressBarShape, ProgressBarThickness, ProgressBarValidationState } from './progress-bar.options.js';
1
+ import { FASTElement } from '@microsoft/fast-element';
2
+ import { ProgressBarShape, ProgressBarThickness, ProgressBarValidationState } from './progress-bar.options.js';
3
3
  /**
4
- * The base class used for constructing a fluent-progress-bar custom element
4
+ * An Progress HTML Element.
5
+ * Implements the {@link https://www.w3.org/TR/wai-aria-1.1/#progressbar | ARIA progressbar }.
6
+ *
5
7
  * @public
6
8
  */
7
- export declare class ProgressBar extends FASTProgress {
9
+ export declare class ProgressBar extends FASTElement {
10
+ /**
11
+ * The internal {@link https://developer.mozilla.org/docs/Web/API/ElementInternals | `ElementInternals`} instance for the component.
12
+ *
13
+ * @internal
14
+ */
15
+ elementInternals: ElementInternals;
8
16
  /**
9
17
  * The thickness of the progress bar
10
18
  *
11
19
  * @public
12
- * @remarks
13
- * HTML Attribute: thickness
20
+ * HTML Attribute: `thickness`
14
21
  */
15
22
  thickness?: ProgressBarThickness;
16
23
  /**
17
24
  * The shape of the progress bar
18
25
  * @public
19
- * @remarks
20
- * HTML Attribute: shape
26
+ * HTML Attribute: `shape`
21
27
  */
22
28
  shape?: ProgressBarShape;
23
29
  /**
24
30
  * The validation state of the progress bar
25
31
  * @public
26
- * @remarks
27
- * HTML Attribute: validation-state
32
+ * HTML Attribute: `validation-state`
28
33
  */
29
34
  validationState: ProgressBarValidationState | null;
35
+ /**
36
+ * The value of the progress
37
+ * @internal
38
+ * HTML Attribute: `value`
39
+ */
40
+ value?: number;
41
+ /**
42
+ * Updates the percent complete when the `value` property changes.
43
+ *
44
+ * @internal
45
+ */
46
+ protected valueChanged(prev: number | undefined, next: number | undefined): void;
47
+ /**
48
+ * The minimum value
49
+ * @internal
50
+ * HTML Attribute: `min`
51
+ */
52
+ min?: number;
53
+ /**
54
+ * Updates the percent complete when the `min` property changes.
55
+ *
56
+ * @param prev - The previous min value
57
+ * @param next - The current min value
58
+ */
59
+ protected minChanged(prev: number | undefined, next: number | undefined): void;
60
+ /**
61
+ * The maximum value
62
+ * @internal
63
+ * HTML Attribute: `max`
64
+ */
65
+ max?: number;
66
+ /**
67
+ * Updates the percent complete when the `max` property changes.
68
+ *
69
+ * @param prev - The previous max value
70
+ * @param next - The current max value
71
+ * @internal
72
+ */
73
+ protected maxChanged(prev: number | undefined, next: number | undefined): void;
74
+ /**
75
+ * Indicates progress in %
76
+ * @internal
77
+ */
78
+ get percentComplete(): number;
79
+ constructor();
30
80
  }
@@ -1,4 +1,4 @@
1
- import type { ValuesOf } from '@microsoft/fast-foundation/utilities.js';
1
+ import type { ValuesOf } from '../utils/index.js';
2
2
  /**
3
3
  * ProgressBarThickness Constants
4
4
  * @public
@@ -11,7 +11,7 @@ export declare const ProgressBarThickness: {
11
11
  * Applies bar thickness to the content
12
12
  * @public
13
13
  */
14
- export declare type ProgressBarThickness = ValuesOf<typeof ProgressBarThickness>;
14
+ export type ProgressBarThickness = ValuesOf<typeof ProgressBarThickness>;
15
15
  /**
16
16
  * ProgressBarShape Constants
17
17
  * @public
@@ -24,7 +24,7 @@ export declare const ProgressBarShape: {
24
24
  * Applies bar shape to the content
25
25
  * @public
26
26
  */
27
- export declare type ProgressBarShape = ValuesOf<typeof ProgressBarShape>;
27
+ export type ProgressBarShape = ValuesOf<typeof ProgressBarShape>;
28
28
  /**
29
29
  * ProgressBarValidationState Constants
30
30
  * @public
@@ -38,4 +38,4 @@ export declare const ProgressBarValidationState: {
38
38
  * Applies validation state to the content
39
39
  * @public
40
40
  */
41
- export declare type ProgressBarValidationState = ValuesOf<typeof ProgressBarValidationState>;
41
+ export type ProgressBarValidationState = ValuesOf<typeof ProgressBarValidationState>;
@@ -1,3 +1,4 @@
1
1
  import type { ElementViewTemplate } from '@microsoft/fast-element';
2
2
  import type { ProgressBar } from './progress-bar.js';
3
+ export declare function progressTemplate<T extends ProgressBar>(): ElementViewTemplate<T>;
3
4
  export declare const template: ElementViewTemplate<ProgressBar>;
@@ -1,4 +1,5 @@
1
- export * from './radio.js';
2
1
  export { definition as RadioDefinition } from './radio.definition.js';
2
+ export { Radio } from './radio.js';
3
+ export type { RadioControl, RadioOptions } from './radio.js';
3
4
  export { styles as RadioStyles } from './radio.styles.js';
4
5
  export { template as RadioTemplate } from './radio.template.js';
@@ -0,0 +1,3 @@
1
+ declare const itemRenderer: () => HTMLElement;
2
+ export default itemRenderer;
3
+ export { tests } from '../utils/benchmark-wrapper.js';
@@ -1,7 +1,58 @@
1
- import { FASTRadio } from '@microsoft/fast-foundation/radio.js';
1
+ import type { StaticallyComposableHTML } from '../utils/template-helpers.js';
2
+ import { FormAssociatedRadio } from './radio.form-associated.js';
2
3
  /**
3
- * The base class used for constructing a fluent-radio custom element
4
4
  * @public
5
5
  */
6
- export declare class Radio extends FASTRadio {
6
+ export type RadioControl = Pick<HTMLInputElement, 'checked' | 'disabled' | 'focus' | 'setAttribute' | 'getAttribute'>;
7
+ /**
8
+ * Radio configuration options
9
+ * @public
10
+ */
11
+ export type RadioOptions = {
12
+ checkedIndicator?: StaticallyComposableHTML<Radio>;
13
+ };
14
+ /**
15
+ * A Radio Custom HTML Element.
16
+ * Implements the {@link https://www.w3.org/TR/wai-aria-1.1/#radio | ARIA radio }.
17
+ *
18
+ * @slot checked-indicator - The checked indicator
19
+ * @slot - The default slot for the label
20
+ * @csspart control - The element representing the visual radio control
21
+ * @csspart label - The label
22
+ * @fires change - Emits a custom change event when the checked state changes
23
+ *
24
+ * @public
25
+ */
26
+ export declare class Radio extends FormAssociatedRadio implements RadioControl {
27
+ /**
28
+ * The name of the radio. See {@link https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input#htmlattrdefname | name attribute} for more info.
29
+ */
30
+ name: string;
31
+ /**
32
+ * The element's value to be included in form submission when checked.
33
+ * Default to "on" to reach parity with input[type="radio"]
34
+ *
35
+ * @internal
36
+ */
37
+ initialValue: string;
38
+ /**
39
+ * @internal
40
+ */
41
+ defaultSlottedNodes: Node[];
42
+ private get radioGroup();
43
+ /**
44
+ * @internal
45
+ */
46
+ defaultCheckedChanged(): void;
47
+ constructor();
48
+ /**
49
+ * @internal
50
+ */
51
+ connectedCallback(): void;
52
+ private isInsideRadioGroup;
53
+ /**
54
+ * Handles key presses on the radio.
55
+ * @beta
56
+ */
57
+ keypressHandler(e: KeyboardEvent): boolean | void;
7
58
  }
@@ -0,0 +1,14 @@
1
+ import { FASTElement } from '@microsoft/fast-element';
2
+ import { CheckableFormAssociated } from '../form-associated/form-associated.js';
3
+ declare class _Radio extends FASTElement {
4
+ }
5
+ interface _Radio extends CheckableFormAssociated {
6
+ }
7
+ declare const FormAssociatedRadio_base: typeof _Radio;
8
+ /**
9
+ * @beta
10
+ */
11
+ export declare class FormAssociatedRadio extends FormAssociatedRadio_base {
12
+ proxy: HTMLInputElement;
13
+ }
14
+ export {};
@@ -1,3 +1,4 @@
1
1
  import { ElementViewTemplate } from '@microsoft/fast-element';
2
- import type { Radio } from './radio.js';
2
+ import type { Radio, RadioOptions } from './radio.js';
3
+ export declare function radioTemplate<T extends Radio>(options?: RadioOptions): ElementViewTemplate<T>;
3
4
  export declare const template: ElementViewTemplate<Radio>;
@@ -1,5 +1,5 @@
1
- export * from './radio-group.js';
1
+ export { RadioGroup } from './radio-group.js';
2
+ export { RadioGroupOrientation } from './radio-group.options.js';
2
3
  export { definition as RadioGroupDefinition } from './radio-group.definition.js';
3
4
  export { styles as RadioGroupStyles } from './radio-group.styles.js';
4
5
  export { template as RadioGroupTemplate } from './radio-group.template.js';
5
- export { RadioGroupOrientation } from '@microsoft/fast-foundation/radio-group.js';
@@ -0,0 +1,3 @@
1
+ declare const itemRenderer: () => HTMLElement;
2
+ export default itemRenderer;
3
+ export { tests } from '../utils/benchmark-wrapper.js';