@fluentui/web-components 2.5.11 → 3.0.0-alpha.2

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 (513) hide show
  1. package/.eslintrc.json +62 -0
  2. package/CHANGELOG.json +64 -36
  3. package/CHANGELOG.md +14 -20
  4. package/build/{clean.js → clean.cjs} +0 -0
  5. package/dist/dts/badge/badge.d.ts +49 -0
  6. package/dist/dts/badge/badge.definition.d.ts +11 -0
  7. package/dist/dts/badge/badge.options.d.ts +73 -0
  8. package/dist/dts/badge/badge.stories.d.ts +10 -12
  9. package/dist/dts/badge/badge.styles.d.ts +4 -3
  10. package/dist/dts/badge/badge.template.d.ts +9 -0
  11. package/dist/{esm/color/recipe.js → dts/badge/define.d.ts} +0 -0
  12. package/dist/dts/badge/index.d.ts +5 -29
  13. package/dist/dts/counter-badge/counter-badge.d.ts +90 -0
  14. package/dist/dts/counter-badge/counter-badge.definition.d.ts +11 -0
  15. package/dist/dts/counter-badge/counter-badge.options.d.ts +69 -0
  16. package/dist/dts/counter-badge/counter-badge.stories.d.ts +14 -0
  17. package/dist/dts/counter-badge/counter-badge.styles.d.ts +4 -0
  18. package/dist/dts/counter-badge/counter-badge.template.d.ts +7 -0
  19. package/dist/dts/counter-badge/define.d.ts +1 -0
  20. package/dist/dts/counter-badge/index.d.ts +5 -0
  21. package/dist/dts/fluent-design-system.d.ts +5 -9
  22. package/dist/dts/index-rollup.d.ts +1 -8
  23. package/dist/dts/index.d.ts +5 -49
  24. package/dist/dts/progress-bar/define.d.ts +1 -0
  25. package/dist/dts/progress-bar/index.d.ts +5 -0
  26. package/dist/dts/progress-bar/progress-bar.d.ts +30 -0
  27. package/dist/dts/progress-bar/progress-bar.definition.d.ts +10 -0
  28. package/dist/dts/progress-bar/progress-bar.options.d.ts +41 -0
  29. package/dist/dts/progress-bar/progress-bar.stories.d.ts +9 -0
  30. package/dist/dts/progress-bar/progress-bar.styles.d.ts +4 -0
  31. package/dist/dts/progress-bar/progress-bar.template.d.ts +3 -0
  32. package/dist/dts/styles/index.d.ts +1 -5
  33. package/dist/dts/styles/partials/badge.partials.d.ts +28 -0
  34. package/dist/dts/styles/partials/index.d.ts +1 -0
  35. package/dist/dts/text/define.d.ts +1 -0
  36. package/dist/dts/text/index.d.ts +5 -0
  37. package/dist/dts/text/text.d.ts +91 -0
  38. package/dist/dts/text/text.definition.d.ts +10 -0
  39. package/dist/dts/text/text.options.d.ts +67 -0
  40. package/dist/dts/text/text.stories.d.ts +8 -0
  41. package/dist/dts/text/text.styles.d.ts +4 -0
  42. package/dist/dts/text/text.template.d.ts +6 -0
  43. package/dist/dts/theme/design-tokens.d.ts +379 -0
  44. package/dist/dts/theme/index.d.ts +2 -0
  45. package/dist/dts/theme/set-theme.d.ts +6 -0
  46. package/dist/dts/{anchored-region/anchored-region.stories.d.ts → theme/theme.stories.d.ts} +1 -2
  47. package/dist/esm/badge/badge.definition.js +18 -0
  48. package/dist/esm/badge/badge.js +42 -0
  49. package/dist/esm/badge/badge.options.js +45 -0
  50. package/dist/esm/badge/badge.stories.js +101 -20
  51. package/dist/esm/badge/badge.styles.js +25 -36
  52. package/dist/esm/badge/badge.template.js +14 -0
  53. package/dist/esm/badge/define.js +3 -0
  54. package/dist/esm/badge/index.js +5 -45
  55. package/dist/esm/counter-badge/counter-badge.definition.js +18 -0
  56. package/dist/esm/counter-badge/counter-badge.js +89 -0
  57. package/dist/esm/counter-badge/counter-badge.options.js +42 -0
  58. package/dist/esm/counter-badge/counter-badge.stories.js +102 -0
  59. package/dist/esm/counter-badge/counter-badge.styles.js +30 -0
  60. package/dist/esm/counter-badge/counter-badge.template.js +12 -0
  61. package/dist/esm/counter-badge/define.js +3 -0
  62. package/dist/esm/counter-badge/index.js +5 -0
  63. package/dist/esm/fluent-design-system.js +5 -11
  64. package/dist/esm/index-rollup.js +1 -12
  65. package/dist/esm/index.js +5 -49
  66. package/dist/esm/progress-bar/define.js +3 -0
  67. package/dist/esm/progress-bar/index.js +5 -0
  68. package/dist/esm/progress-bar/progress-bar.definition.js +17 -0
  69. package/dist/esm/progress-bar/progress-bar.js +18 -0
  70. package/dist/esm/progress-bar/progress-bar.options.js +25 -0
  71. package/dist/esm/progress-bar/progress-bar.stories.js +60 -0
  72. package/dist/esm/progress-bar/progress-bar.styles.js +155 -0
  73. package/dist/esm/progress-bar/progress-bar.template.js +5 -0
  74. package/dist/esm/styles/index.js +1 -5
  75. package/dist/esm/styles/partials/badge.partials.js +272 -0
  76. package/dist/esm/styles/partials/index.js +1 -0
  77. package/dist/esm/text/define.js +3 -0
  78. package/dist/esm/text/index.js +5 -0
  79. package/dist/esm/text/text.definition.js +17 -0
  80. package/dist/esm/text/text.js +91 -0
  81. package/dist/esm/text/text.options.js +45 -0
  82. package/dist/esm/text/text.stories.js +111 -0
  83. package/dist/esm/text/text.styles.js +104 -0
  84. package/dist/esm/text/text.template.js +5 -0
  85. package/dist/esm/theme/design-tokens.js +381 -0
  86. package/dist/esm/theme/index.js +2 -0
  87. package/dist/esm/theme/set-theme.js +11 -0
  88. package/dist/esm/theme/theme.stories.js +21 -0
  89. package/dist/fluent-web-components.api.json +6683 -12477
  90. package/dist/tsdoc-metadata.json +1 -1
  91. package/dist/web-components.d.ts +895 -2490
  92. package/dist/web-components.js +5181 -20475
  93. package/dist/web-components.min.js +269 -239
  94. package/docs/api-report.md +783 -1074
  95. package/package.json +53 -17
  96. package/public/theme-switch.ts +13 -0
  97. package/rollup.config.js +5 -0
  98. package/dist/dts/_docs/design-system/color-explorer/app.d.ts +0 -25
  99. package/dist/dts/_docs/design-system/color-explorer/colors.d.ts +0 -13
  100. package/dist/dts/_docs/design-system/color-explorer/component-types.d.ts +0 -6
  101. package/dist/dts/_docs/design-system/color-explorer/components/color-block.d.ts +0 -10
  102. package/dist/dts/_docs/design-system/color-explorer/components/color-picker/color-picker.d.ts +0 -190
  103. package/dist/dts/_docs/design-system/color-explorer/components/color-picker/color-picker.form-associated.d.ts +0 -15
  104. package/dist/dts/_docs/design-system/color-explorer/components/color-picker/color-picker.styles.d.ts +0 -3
  105. package/dist/dts/_docs/design-system/color-explorer/components/color-picker/color-picker.template.d.ts +0 -8
  106. package/dist/dts/_docs/design-system/color-explorer/components/color-picker/index.d.ts +0 -9
  107. package/dist/dts/_docs/design-system/color-explorer/components/control-pane/control-pane.d.ts +0 -8
  108. package/dist/dts/_docs/design-system/color-explorer/components/control-pane/control-pane.styles.d.ts +0 -1
  109. package/dist/dts/_docs/design-system/color-explorer/components/control-pane/control-pane.template.d.ts +0 -2
  110. package/dist/dts/_docs/design-system/color-explorer/components/control-pane/index.d.ts +0 -6
  111. package/dist/dts/_docs/design-system/color-explorer/components/gradient/gradient.d.ts +0 -5
  112. package/dist/dts/_docs/design-system/color-explorer/components/gradient/gradient.styles.d.ts +0 -1
  113. package/dist/dts/_docs/design-system/color-explorer/components/gradient/gradient.template.d.ts +0 -2
  114. package/dist/dts/_docs/design-system/color-explorer/components/gradient/index.d.ts +0 -6
  115. package/dist/dts/_docs/design-system/color-explorer/components/layer-background/index.d.ts +0 -21
  116. package/dist/dts/_docs/design-system/color-explorer/components/sample-app/index.d.ts +0 -6
  117. package/dist/dts/_docs/design-system/color-explorer/components/sample-app/sample-app.d.ts +0 -3
  118. package/dist/dts/_docs/design-system/color-explorer/components/sample-app/sample-app.styles.d.ts +0 -1
  119. package/dist/dts/_docs/design-system/color-explorer/components/sample-app/sample-app.template.d.ts +0 -1
  120. package/dist/dts/_docs/design-system/color-explorer/components/sample-page/index.d.ts +0 -6
  121. package/dist/dts/_docs/design-system/color-explorer/components/sample-page/sample-page.d.ts +0 -3
  122. package/dist/dts/_docs/design-system/color-explorer/components/sample-page/sample-page.styles.d.ts +0 -1
  123. package/dist/dts/_docs/design-system/color-explorer/components/sample-page/sample-page.template.d.ts +0 -1
  124. package/dist/dts/_docs/design-system/color-explorer/components/swatch.d.ts +0 -30
  125. package/dist/dts/_docs/design-system/color-explorer/custom-elements.d.ts +0 -7
  126. package/dist/dts/_docs/design-system/color-explorer/index.d.ts +0 -2
  127. package/dist/dts/accordion/accordion-item/accordion-item.styles.d.ts +0 -3
  128. package/dist/dts/accordion/accordion-item/index.d.ts +0 -17
  129. package/dist/dts/accordion/accordion.stories.d.ts +0 -15
  130. package/dist/dts/accordion/accordion.styles.d.ts +0 -3
  131. package/dist/dts/accordion/index.d.ts +0 -22
  132. package/dist/dts/anchor/anchor.stories.d.ts +0 -14
  133. package/dist/dts/anchor/anchor.styles.d.ts +0 -3
  134. package/dist/dts/anchor/index.d.ts +0 -49
  135. package/dist/dts/anchored-region/anchored-region.styles.d.ts +0 -3
  136. package/dist/dts/anchored-region/index.d.ts +0 -21
  137. package/dist/dts/breadcrumb/breadcrumb.stories.d.ts +0 -15
  138. package/dist/dts/breadcrumb/breadcrumb.styles.d.ts +0 -3
  139. package/dist/dts/breadcrumb/index.d.ts +0 -21
  140. package/dist/dts/breadcrumb-item/breadcrumb-item.stories.d.ts +0 -15
  141. package/dist/dts/breadcrumb-item/breadcrumb-item.styles.d.ts +0 -3
  142. package/dist/dts/breadcrumb-item/index.d.ts +0 -21
  143. package/dist/dts/button/button.stories.d.ts +0 -21
  144. package/dist/dts/button/button.styles.d.ts +0 -3
  145. package/dist/dts/button/index.d.ts +0 -48
  146. package/dist/dts/calendar/calendar.stories.d.ts +0 -86
  147. package/dist/dts/calendar/calendar.styles.d.ts +0 -7
  148. package/dist/dts/calendar/index.d.ts +0 -18
  149. package/dist/dts/card/card.stories.d.ts +0 -15
  150. package/dist/dts/card/card.styles.d.ts +0 -3
  151. package/dist/dts/card/index.d.ts +0 -46
  152. package/dist/dts/checkbox/checkbox.stories.d.ts +0 -28
  153. package/dist/dts/checkbox/checkbox.styles.d.ts +0 -3
  154. package/dist/dts/checkbox/index.d.ts +0 -16
  155. package/dist/dts/color/palette.d.ts +0 -73
  156. package/dist/dts/color/recipe.d.ts +0 -20
  157. package/dist/dts/color/recipes/contrast-and-delta-swatch-set.d.ts +0 -11
  158. package/dist/dts/color/recipes/contrast-swatch.d.ts +0 -12
  159. package/dist/dts/color/recipes/delta-swatch-set.d.ts +0 -36
  160. package/dist/dts/color/recipes/delta-swatch.d.ts +0 -12
  161. package/dist/dts/color/recipes/focus-stroke.d.ts +0 -10
  162. package/dist/dts/color/recipes/foreground-on-accent.d.ts +0 -11
  163. package/dist/dts/color/recipes/gradient-shadow-stroke.d.ts +0 -7
  164. package/dist/dts/color/recipes/gradient-swatch.d.ts +0 -36
  165. package/dist/dts/color/recipes/neutral-layer-1.d.ts +0 -10
  166. package/dist/dts/color/recipes/neutral-layer-2.d.ts +0 -6
  167. package/dist/dts/color/recipes/neutral-layer-3.d.ts +0 -6
  168. package/dist/dts/color/recipes/neutral-layer-4.d.ts +0 -6
  169. package/dist/dts/color/recipes/neutral-layer-floating.d.ts +0 -6
  170. package/dist/dts/color/recipes/underline-stroke.d.ts +0 -7
  171. package/dist/dts/color/swatch.d.ts +0 -31
  172. package/dist/dts/color/utilities/base-layer-luminance.d.ts +0 -11
  173. package/dist/dts/color/utilities/binary-search.d.ts +0 -4
  174. package/dist/dts/color/utilities/color-constants.d.ts +0 -14
  175. package/dist/dts/color/utilities/direction-by-is-dark.d.ts +0 -5
  176. package/dist/dts/color/utilities/is-dark.d.ts +0 -9
  177. package/dist/dts/color/utilities/relative-luminance.d.ts +0 -13
  178. package/dist/dts/combobox/combobox.stories.d.ts +0 -36
  179. package/dist/dts/combobox/combobox.styles.d.ts +0 -3
  180. package/dist/dts/combobox/index.d.ts +0 -43
  181. package/dist/dts/component-definitions.d.ts +0 -43
  182. package/dist/dts/custom-elements.d.ts +0 -103
  183. package/dist/dts/data-grid/data-grid-cell.styles.d.ts +0 -3
  184. package/dist/dts/data-grid/data-grid-row.styles.d.ts +0 -3
  185. package/dist/dts/data-grid/data-grid.stories.d.ts +0 -15
  186. package/dist/dts/data-grid/data-grid.styles.d.ts +0 -3
  187. package/dist/dts/data-grid/index.d.ts +0 -45
  188. package/dist/dts/design-system-provider/index.d.ts +0 -582
  189. package/dist/dts/design-tokens.d.ts +0 -519
  190. package/dist/dts/dialog/dialog.stories.d.ts +0 -25
  191. package/dist/dts/dialog/dialog.styles.d.ts +0 -3
  192. package/dist/dts/dialog/index.d.ts +0 -21
  193. package/dist/dts/divider/divider.stories.d.ts +0 -6
  194. package/dist/dts/divider/divider.styles.d.ts +0 -3
  195. package/dist/dts/divider/index.d.ts +0 -21
  196. package/dist/dts/flipper/flipper.stories.d.ts +0 -17
  197. package/dist/dts/flipper/flipper.styles.d.ts +0 -3
  198. package/dist/dts/flipper/index.d.ts +0 -21
  199. package/dist/dts/horizontal-scroll/horizontal-scroll.stories.d.ts +0 -15
  200. package/dist/dts/horizontal-scroll/horizontal-scroll.styles.d.ts +0 -12
  201. package/dist/dts/horizontal-scroll/index.d.ts +0 -25
  202. package/dist/dts/listbox/index.d.ts +0 -19
  203. package/dist/dts/listbox/listbox.stories.d.ts +0 -6
  204. package/dist/dts/listbox/listbox.styles.d.ts +0 -3
  205. package/dist/dts/listbox-option/index.d.ts +0 -17
  206. package/dist/dts/listbox-option/listbox-option.stories.d.ts +0 -23
  207. package/dist/dts/listbox-option/listbox-option.styles.d.ts +0 -3
  208. package/dist/dts/menu/index.d.ts +0 -26
  209. package/dist/dts/menu/menu.stories.d.ts +0 -6
  210. package/dist/dts/menu/menu.styles.d.ts +0 -3
  211. package/dist/dts/menu-item/index.d.ts +0 -21
  212. package/dist/dts/menu-item/menu-item.stories.d.ts +0 -18
  213. package/dist/dts/menu-item/menu-item.styles.d.ts +0 -3
  214. package/dist/dts/number-field/index.d.ts +0 -41
  215. package/dist/dts/number-field/number-field.stories.d.ts +0 -71
  216. package/dist/dts/number-field/number-field.styles.d.ts +0 -3
  217. package/dist/dts/progress/index.d.ts +0 -2
  218. package/dist/dts/progress/progress/index.d.ts +0 -22
  219. package/dist/dts/progress/progress/progress.stories.d.ts +0 -15
  220. package/dist/dts/progress/progress/progress.styles.d.ts +0 -3
  221. package/dist/dts/progress/progress-ring/index.d.ts +0 -22
  222. package/dist/dts/progress/progress-ring/progress-ring.stories.d.ts +0 -15
  223. package/dist/dts/progress/progress-ring/progress-ring.styles.d.ts +0 -3
  224. package/dist/dts/radio/index.d.ts +0 -21
  225. package/dist/dts/radio/radio.stories.d.ts +0 -23
  226. package/dist/dts/radio/radio.styles.d.ts +0 -3
  227. package/dist/dts/radio-group/index.d.ts +0 -21
  228. package/dist/dts/radio-group/radio-group.stories.d.ts +0 -18
  229. package/dist/dts/radio-group/radio-group.styles.d.ts +0 -3
  230. package/dist/dts/search/index.d.ts +0 -38
  231. package/dist/dts/search/search.stories.d.ts +0 -75
  232. package/dist/dts/search/search.styles.d.ts +0 -3
  233. package/dist/dts/search/search.template.d.ts +0 -6
  234. package/dist/dts/select/index.d.ts +0 -44
  235. package/dist/dts/select/select.stories.d.ts +0 -28
  236. package/dist/dts/select/select.styles.d.ts +0 -13
  237. package/dist/dts/skeleton/index.d.ts +0 -21
  238. package/dist/dts/skeleton/skeleton.stories.d.ts +0 -20
  239. package/dist/dts/skeleton/skeleton.styles.d.ts +0 -3
  240. package/dist/dts/slider/index.d.ts +0 -21
  241. package/dist/dts/slider/slider.stories.d.ts +0 -14
  242. package/dist/dts/slider/slider.styles.d.ts +0 -3
  243. package/dist/dts/slider-label/index.d.ts +0 -21
  244. package/dist/dts/slider-label/slider-label.stories.d.ts +0 -23
  245. package/dist/dts/slider-label/slider-label.styles.d.ts +0 -3
  246. package/dist/dts/styles/direction.d.ts +0 -34
  247. package/dist/dts/styles/elevation.d.ts +0 -64
  248. package/dist/dts/styles/focus.d.ts +0 -13
  249. package/dist/dts/styles/patterns/button.styles.d.ts +0 -31
  250. package/dist/dts/styles/patterns/index.d.ts +0 -3
  251. package/dist/dts/styles/patterns/input.styles.d.ts +0 -30
  252. package/dist/dts/styles/patterns/type-ramp.d.ts +0 -18
  253. package/dist/dts/styles/size.d.ts +0 -7
  254. package/dist/dts/switch/index.d.ts +0 -21
  255. package/dist/dts/switch/switch.stories.d.ts +0 -18
  256. package/dist/dts/switch/switch.styles.d.ts +0 -3
  257. package/dist/dts/tabs/index.d.ts +0 -23
  258. package/dist/dts/tabs/tab/index.d.ts +0 -21
  259. package/dist/dts/tabs/tab/tab.styles.d.ts +0 -3
  260. package/dist/dts/tabs/tab-panel/index.d.ts +0 -21
  261. package/dist/dts/tabs/tab-panel/tab-panel.styles.d.ts +0 -3
  262. package/dist/dts/tabs/tabs.stories.d.ts +0 -19
  263. package/dist/dts/tabs/tabs.styles.d.ts +0 -3
  264. package/dist/dts/text-area/index.d.ts +0 -45
  265. package/dist/dts/text-area/text-area.stories.d.ts +0 -41
  266. package/dist/dts/text-area/text-area.styles.d.ts +0 -3
  267. package/dist/dts/text-field/index.d.ts +0 -45
  268. package/dist/dts/text-field/text-field.stories.d.ts +0 -81
  269. package/dist/dts/text-field/text-field.styles.d.ts +0 -3
  270. package/dist/dts/toolbar/index.d.ts +0 -17
  271. package/dist/dts/toolbar/toolbar.stories.d.ts +0 -9
  272. package/dist/dts/toolbar/toolbar.styles.d.ts +0 -3
  273. package/dist/dts/tooltip/index.d.ts +0 -21
  274. package/dist/dts/tooltip/tooltip.stories.d.ts +0 -14
  275. package/dist/dts/tooltip/tooltip.styles.d.ts +0 -3
  276. package/dist/dts/tree-item/index.d.ts +0 -22
  277. package/dist/dts/tree-item/tree-item.stories.d.ts +0 -18
  278. package/dist/dts/tree-item/tree-item.styles.d.ts +0 -4
  279. package/dist/dts/tree-view/index.d.ts +0 -22
  280. package/dist/dts/tree-view/tree-view.stories.d.ts +0 -13
  281. package/dist/dts/tree-view/tree-view.styles.d.ts +0 -3
  282. package/dist/dts/utilities/behaviors.d.ts +0 -12
  283. package/dist/dts/utilities/type-ramp.d.ts +0 -12
  284. package/dist/esm/_docs/design-system/color-explorer/app.js +0 -247
  285. package/dist/esm/_docs/design-system/color-explorer/colors.js +0 -24
  286. package/dist/esm/_docs/design-system/color-explorer/component-types.js +0 -7
  287. package/dist/esm/_docs/design-system/color-explorer/components/color-block.js +0 -408
  288. package/dist/esm/_docs/design-system/color-explorer/components/color-picker/color-picker.form-associated.js +0 -16
  289. package/dist/esm/_docs/design-system/color-explorer/components/color-picker/color-picker.js +0 -297
  290. package/dist/esm/_docs/design-system/color-explorer/components/color-picker/color-picker.styles.js +0 -124
  291. package/dist/esm/_docs/design-system/color-explorer/components/color-picker/color-picker.template.js +0 -130
  292. package/dist/esm/_docs/design-system/color-explorer/components/color-picker/index.js +0 -15
  293. package/dist/esm/_docs/design-system/color-explorer/components/control-pane/control-pane.js +0 -24
  294. package/dist/esm/_docs/design-system/color-explorer/components/control-pane/control-pane.styles.js +0 -19
  295. package/dist/esm/_docs/design-system/color-explorer/components/control-pane/control-pane.template.js +0 -52
  296. package/dist/esm/_docs/design-system/color-explorer/components/control-pane/index.js +0 -18
  297. package/dist/esm/_docs/design-system/color-explorer/components/gradient/gradient.js +0 -11
  298. package/dist/esm/_docs/design-system/color-explorer/components/gradient/gradient.styles.js +0 -31
  299. package/dist/esm/_docs/design-system/color-explorer/components/gradient/gradient.template.js +0 -21
  300. package/dist/esm/_docs/design-system/color-explorer/components/gradient/index.js +0 -18
  301. package/dist/esm/_docs/design-system/color-explorer/components/layer-background/index.js +0 -70
  302. package/dist/esm/_docs/design-system/color-explorer/components/sample-app/index.js +0 -18
  303. package/dist/esm/_docs/design-system/color-explorer/components/sample-app/sample-app.js +0 -3
  304. package/dist/esm/_docs/design-system/color-explorer/components/sample-app/sample-app.styles.js +0 -166
  305. package/dist/esm/_docs/design-system/color-explorer/components/sample-app/sample-app.template.js +0 -97
  306. package/dist/esm/_docs/design-system/color-explorer/components/sample-page/index.js +0 -18
  307. package/dist/esm/_docs/design-system/color-explorer/components/sample-page/sample-page.js +0 -3
  308. package/dist/esm/_docs/design-system/color-explorer/components/sample-page/sample-page.styles.js +0 -130
  309. package/dist/esm/_docs/design-system/color-explorer/components/sample-page/sample-page.template.js +0 -82
  310. package/dist/esm/_docs/design-system/color-explorer/components/swatch.js +0 -163
  311. package/dist/esm/_docs/design-system/color-explorer/custom-elements.js +0 -3
  312. package/dist/esm/_docs/design-system/color-explorer/index.js +0 -14
  313. package/dist/esm/accordion/accordion-item/accordion-item.styles.js +0 -154
  314. package/dist/esm/accordion/accordion-item/accordion-item.vscode.definition.json +0 -67
  315. package/dist/esm/accordion/accordion-item/index.js +0 -32
  316. package/dist/esm/accordion/accordion.stories.js +0 -66
  317. package/dist/esm/accordion/accordion.styles.js +0 -13
  318. package/dist/esm/accordion/accordion.vscode.definition.json +0 -35
  319. package/dist/esm/accordion/index.js +0 -27
  320. package/dist/esm/anchor/anchor.stories.js +0 -34
  321. package/dist/esm/anchor/anchor.styles.js +0 -5
  322. package/dist/esm/anchor/anchor.vscode.definition.json +0 -138
  323. package/dist/esm/anchor/index.js +0 -67
  324. package/dist/esm/anchored-region/anchored-region.stories.js +0 -133
  325. package/dist/esm/anchored-region/anchored-region.styles.js +0 -7
  326. package/dist/esm/anchored-region/anchored-region.vscode.definition.json +0 -140
  327. package/dist/esm/anchored-region/index.js +0 -26
  328. package/dist/esm/badge/badge.vscode.definition.json +0 -60
  329. package/dist/esm/breadcrumb/breadcrumb.stories.js +0 -20
  330. package/dist/esm/breadcrumb/breadcrumb.styles.js +0 -13
  331. package/dist/esm/breadcrumb/breadcrumb.vscode.definition.json +0 -18
  332. package/dist/esm/breadcrumb/index.js +0 -26
  333. package/dist/esm/breadcrumb-item/breadcrumb-item.stories.js +0 -16
  334. package/dist/esm/breadcrumb-item/breadcrumb-item.styles.js +0 -96
  335. package/dist/esm/breadcrumb-item/breadcrumb-item.vscode.definition.json +0 -50
  336. package/dist/esm/breadcrumb-item/index.js +0 -34
  337. package/dist/esm/button/button.stories.js +0 -40
  338. package/dist/esm/button/button.styles.js +0 -24
  339. package/dist/esm/button/button.vscode.definition.json +0 -158
  340. package/dist/esm/button/index.js +0 -67
  341. package/dist/esm/calendar/calendar.stories.js +0 -115
  342. package/dist/esm/calendar/calendar.styles.js +0 -132
  343. package/dist/esm/calendar/index.js +0 -31
  344. package/dist/esm/card/card.stories.js +0 -30
  345. package/dist/esm/card/card.styles.js +0 -28
  346. package/dist/esm/card/card.vscode.definition.json +0 -33
  347. package/dist/esm/card/index.js +0 -79
  348. package/dist/esm/checkbox/checkbox.stories.js +0 -43
  349. package/dist/esm/checkbox/checkbox.styles.js +0 -161
  350. package/dist/esm/checkbox/checkbox.vscode.definition.json +0 -69
  351. package/dist/esm/checkbox/index.js +0 -31
  352. package/dist/esm/color/palette.js +0 -250
  353. package/dist/esm/color/recipes/contrast-and-delta-swatch-set.js +0 -28
  354. package/dist/esm/color/recipes/contrast-swatch.js +0 -12
  355. package/dist/esm/color/recipes/delta-swatch-set.js +0 -53
  356. package/dist/esm/color/recipes/delta-swatch.js +0 -13
  357. package/dist/esm/color/recipes/focus-stroke.js +0 -14
  358. package/dist/esm/color/recipes/foreground-on-accent.js +0 -21
  359. package/dist/esm/color/recipes/gradient-shadow-stroke.js +0 -54
  360. package/dist/esm/color/recipes/gradient-swatch.js +0 -36
  361. package/dist/esm/color/recipes/neutral-layer-1.js +0 -13
  362. package/dist/esm/color/recipes/neutral-layer-2.js +0 -7
  363. package/dist/esm/color/recipes/neutral-layer-3.js +0 -7
  364. package/dist/esm/color/recipes/neutral-layer-4.js +0 -7
  365. package/dist/esm/color/recipes/neutral-layer-floating.js +0 -7
  366. package/dist/esm/color/recipes/underline-stroke.js +0 -31
  367. package/dist/esm/color/swatch.js +0 -53
  368. package/dist/esm/color/utilities/base-layer-luminance.js +0 -14
  369. package/dist/esm/color/utilities/binary-search.js +0 -15
  370. package/dist/esm/color/utilities/color-constants.js +0 -19
  371. package/dist/esm/color/utilities/direction-by-is-dark.js +0 -7
  372. package/dist/esm/color/utilities/is-dark.js +0 -17
  373. package/dist/esm/color/utilities/relative-luminance.js +0 -8
  374. package/dist/esm/combobox/combobox.stories.js +0 -84
  375. package/dist/esm/combobox/combobox.styles.js +0 -40
  376. package/dist/esm/combobox/combobox.vscode.definition.json +0 -121
  377. package/dist/esm/combobox/index.js +0 -63
  378. package/dist/esm/component-definitions.js +0 -84
  379. package/dist/esm/custom-elements.js +0 -102
  380. package/dist/esm/data-grid/data-grid-cell.styles.js +0 -36
  381. package/dist/esm/data-grid/data-grid-cell.vscode.definition.json +0 -34
  382. package/dist/esm/data-grid/data-grid-row.styles.js +0 -24
  383. package/dist/esm/data-grid/data-grid-row.vscode.definition.json +0 -34
  384. package/dist/esm/data-grid/data-grid.stories.js +0 -381
  385. package/dist/esm/data-grid/data-grid.styles.js +0 -8
  386. package/dist/esm/data-grid/data-grid.vscode.definition.json +0 -34
  387. package/dist/esm/data-grid/index.js +0 -60
  388. package/dist/esm/design-system-provider/design-system-provider.vscode.definition.json +0 -510
  389. package/dist/esm/design-system-provider/index.js +0 -518
  390. package/dist/esm/design-tokens.js +0 -685
  391. package/dist/esm/dialog/dialog.stories.js +0 -36
  392. package/dist/esm/dialog/dialog.styles.js +0 -47
  393. package/dist/esm/dialog/dialog.vscode.definition.json +0 -67
  394. package/dist/esm/dialog/index.js +0 -26
  395. package/dist/esm/divider/divider.stories.js +0 -17
  396. package/dist/esm/divider/divider.styles.js +0 -11
  397. package/dist/esm/divider/divider.vscode.definition.json +0 -29
  398. package/dist/esm/divider/index.js +0 -26
  399. package/dist/esm/flipper/flipper.stories.js +0 -31
  400. package/dist/esm/flipper/flipper.styles.js +0 -84
  401. package/dist/esm/flipper/flipper.vscode.definition.json +0 -56
  402. package/dist/esm/flipper/index.js +0 -36
  403. package/dist/esm/horizontal-scroll/horizontal-scroll.stories.js +0 -81
  404. package/dist/esm/horizontal-scroll/horizontal-scroll.styles.js +0 -138
  405. package/dist/esm/horizontal-scroll/horizontal-scroll.vscode.definition.json +0 -85
  406. package/dist/esm/horizontal-scroll/index.js +0 -47
  407. package/dist/esm/listbox/index.js +0 -24
  408. package/dist/esm/listbox/listbox.stories.js +0 -29
  409. package/dist/esm/listbox/listbox.styles.js +0 -21
  410. package/dist/esm/listbox/listbox.vscode.definition.json +0 -40
  411. package/dist/esm/listbox-option/index.js +0 -22
  412. package/dist/esm/listbox-option/listbox-option.stories.js +0 -38
  413. package/dist/esm/listbox-option/listbox-option.styles.js +0 -133
  414. package/dist/esm/listbox-option/listbox-option.vscode.definition.json +0 -45
  415. package/dist/esm/menu/index.js +0 -36
  416. package/dist/esm/menu/menu.stories.js +0 -56
  417. package/dist/esm/menu/menu.styles.js +0 -42
  418. package/dist/esm/menu/menu.vscode.definition.json +0 -18
  419. package/dist/esm/menu-item/index.js +0 -41
  420. package/dist/esm/menu-item/menu-item.stories.js +0 -34
  421. package/dist/esm/menu-item/menu-item.styles.js +0 -265
  422. package/dist/esm/menu-item/menu-item.vscode.definition.json +0 -82
  423. package/dist/esm/number-field/index.js +0 -57
  424. package/dist/esm/number-field/number-field.stories.js +0 -83
  425. package/dist/esm/number-field/number-field.styles.js +0 -71
  426. package/dist/esm/number-field/number-field.vscode.definition.json +0 -167
  427. package/dist/esm/progress/index.js +0 -2
  428. package/dist/esm/progress/progress/index.js +0 -33
  429. package/dist/esm/progress/progress/progress.stories.js +0 -59
  430. package/dist/esm/progress/progress/progress.styles.js +0 -119
  431. package/dist/esm/progress/progress/progress.vscode.definition.json +0 -56
  432. package/dist/esm/progress/progress-ring/index.js +0 -45
  433. package/dist/esm/progress/progress-ring/progress-ring.stories.js +0 -59
  434. package/dist/esm/progress/progress-ring/progress-ring.styles.js +0 -79
  435. package/dist/esm/progress/progress-ring/progress-ring.vscode.definition.json +0 -56
  436. package/dist/esm/radio/index.js +0 -31
  437. package/dist/esm/radio/radio.stories.js +0 -41
  438. package/dist/esm/radio/radio.styles.js +0 -152
  439. package/dist/esm/radio/radio.vscode.definition.json +0 -63
  440. package/dist/esm/radio-group/index.js +0 -26
  441. package/dist/esm/radio-group/radio-group.stories.js +0 -42
  442. package/dist/esm/radio-group/radio-group.styles.js +0 -21
  443. package/dist/esm/radio-group/radio-group.vscode.definition.json +0 -64
  444. package/dist/esm/search/index.js +0 -52
  445. package/dist/esm/search/search.stories.js +0 -83
  446. package/dist/esm/search/search.styles.js +0 -104
  447. package/dist/esm/search/search.template.js +0 -82
  448. package/dist/esm/search/search.vscode.definition.json +0 -145
  449. package/dist/esm/select/index.js +0 -61
  450. package/dist/esm/select/select.stories.js +0 -53
  451. package/dist/esm/select/select.styles.js +0 -139
  452. package/dist/esm/select/select.vscode.definition.json +0 -79
  453. package/dist/esm/skeleton/index.js +0 -26
  454. package/dist/esm/skeleton/skeleton.stories.js +0 -37
  455. package/dist/esm/skeleton/skeleton.styles.js +0 -77
  456. package/dist/esm/skeleton/skeleton.vscode.definition.json +0 -49
  457. package/dist/esm/slider/index.js +0 -29
  458. package/dist/esm/slider/slider.stories.js +0 -40
  459. package/dist/esm/slider/slider.styles.js +0 -162
  460. package/dist/esm/slider/slider.vscode.definition.json +0 -101
  461. package/dist/esm/slider-label/index.js +0 -26
  462. package/dist/esm/slider-label/slider-label.stories.js +0 -40
  463. package/dist/esm/slider-label/slider-label.styles.js +0 -77
  464. package/dist/esm/slider-label/slider-label.vscode.definition.json +0 -43
  465. package/dist/esm/styles/direction.js +0 -73
  466. package/dist/esm/styles/elevation.js +0 -74
  467. package/dist/esm/styles/focus.js +0 -21
  468. package/dist/esm/styles/patterns/button.styles.js +0 -427
  469. package/dist/esm/styles/patterns/index.js +0 -3
  470. package/dist/esm/styles/patterns/input.styles.js +0 -227
  471. package/dist/esm/styles/patterns/type-ramp.js +0 -74
  472. package/dist/esm/styles/size.js +0 -9
  473. package/dist/esm/switch/index.js +0 -31
  474. package/dist/esm/switch/switch.stories.js +0 -42
  475. package/dist/esm/switch/switch.styles.js +0 -213
  476. package/dist/esm/switch/switch.vscode.definition.json +0 -68
  477. package/dist/esm/tabs/index.js +0 -28
  478. package/dist/esm/tabs/tab/index.js +0 -26
  479. package/dist/esm/tabs/tab/tab.styles.js +0 -75
  480. package/dist/esm/tabs/tab/tab.vscode.definition.json +0 -17
  481. package/dist/esm/tabs/tab-panel/index.js +0 -26
  482. package/dist/esm/tabs/tab-panel/tab-panel.styles.js +0 -11
  483. package/dist/esm/tabs/tab-panel/tab-panel.vscode.definition.json +0 -17
  484. package/dist/esm/tabs/tabs.stories.js +0 -105
  485. package/dist/esm/tabs/tabs.styles.js +0 -98
  486. package/dist/esm/tabs/tabs.vscode.definition.json +0 -50
  487. package/dist/esm/text-area/index.js +0 -56
  488. package/dist/esm/text-area/text-area.stories.js +0 -56
  489. package/dist/esm/text-area/text-area.styles.js +0 -39
  490. package/dist/esm/text-area/text-area.vscode.definition.json +0 -141
  491. package/dist/esm/text-field/index.js +0 -56
  492. package/dist/esm/text-field/text-field.stories.js +0 -88
  493. package/dist/esm/text-field/text-field.styles.js +0 -48
  494. package/dist/esm/text-field/text-field.vscode.definition.json +0 -150
  495. package/dist/esm/toolbar/index.js +0 -23
  496. package/dist/esm/toolbar/toolbar.stories.js +0 -9
  497. package/dist/esm/toolbar/toolbar.styles.js +0 -73
  498. package/dist/esm/tooltip/index.js +0 -31
  499. package/dist/esm/tooltip/tooltip.stories.js +0 -34
  500. package/dist/esm/tooltip/tooltip.styles.js +0 -107
  501. package/dist/esm/tooltip/tooltip.vscode.definition.json +0 -56
  502. package/dist/esm/tree-item/index.js +0 -32
  503. package/dist/esm/tree-item/tree-item.stories.js +0 -34
  504. package/dist/esm/tree-item/tree-item.styles.js +0 -227
  505. package/dist/esm/tree-item/tree-item.vscode.definition.json +0 -63
  506. package/dist/esm/tree-view/index.js +0 -27
  507. package/dist/esm/tree-view/tree-view.stories.js +0 -99
  508. package/dist/esm/tree-view/tree-view.styles.js +0 -14
  509. package/dist/esm/tree-view/tree-view.vscode.definition.json +0 -26
  510. package/dist/esm/utilities/behaviors.js +0 -13
  511. package/dist/esm/utilities/type-ramp.js +0 -12
  512. package/karma.conf.js +0 -147
  513. package/public/switches.ts +0 -24
@@ -1,27 +1,108 @@
1
- import { fluentBadge } from './index';
1
+ import { html, when } from '@microsoft/fast-element';
2
+ import { renderComponent } from '../__test__/helpers.js';
3
+ import { BadgeAppearance, BadgeColor, BadgeShape, BadgeSize } from './badge.options.js';
4
+ import './define.js';
5
+ const storyTemplate = html `
6
+ <fluent-badge appearance="${x => x.appearance}" color="${x => x.color}" shape="${x => x.shape}" size="${x => x.size}">
7
+ ${when(x => x.iconPosition === 'start', html `<svg
8
+ slot="start"
9
+ aria-hidden="true"
10
+ xmlns="http://www.w3.org/2000/svg"
11
+ width="1em"
12
+ height="1em"
13
+ preserveAspectRatio="xMidYMid meet"
14
+ viewBox="0 0 20 20"
15
+ >
16
+ <path
17
+ fill="currentColor"
18
+ d="M14.69 11.503c1 0 1.81.81 1.81 1.81v.689h-.005c-.034.78-.248 1.757-1.123 2.555C14.416 17.43 12.765 18 10 18c-2.766 0-4.416-.57-5.372-1.443c-.875-.798-1.089-1.776-1.123-2.555H3.5v-.69c0-.999.81-1.809 1.81-1.809h9.38ZM6.5 3A1.5 1.5 0 0 0 5 4.5v4A1.5 1.5 0 0 0 6.5 10h7A1.5 1.5 0 0 0 15 8.5v-4A1.5 1.5 0 0 0 13.5 3h-3v-.5A.48.48 0 0 0 10 2c-.276 0-.5.23-.5.5V3h-3ZM7 6.5a1 1 0 1 1 2 0a1 1 0 0 1-2 0Zm4 0a1 1 0 1 1 2 0a1 1 0 0 1-2 0Z"
19
+ />
20
+ </svg>`)}
21
+ ${x => x.content}
22
+ ${when(x => x.iconPosition === 'end', html `<svg
23
+ slot="start"
24
+ aria-hidden="true"
25
+ xmlns="http://www.w3.org/2000/svg"
26
+ width="1em"
27
+ height="1em"
28
+ preserveAspectRatio="xMidYMid meet"
29
+ viewBox="0 0 20 20"
30
+ >
31
+ <path
32
+ fill="currentColor"
33
+ d="M14.69 11.503c1 0 1.81.81 1.81 1.81v.689h-.005c-.034.78-.248 1.757-1.123 2.555C14.416 17.43 12.765 18 10 18c-2.766 0-4.416-.57-5.372-1.443c-.875-.798-1.089-1.776-1.123-2.555H3.5v-.69c0-.999.81-1.809 1.81-1.809h9.38ZM6.5 3A1.5 1.5 0 0 0 5 4.5v4A1.5 1.5 0 0 0 6.5 10h7A1.5 1.5 0 0 0 15 8.5v-4A1.5 1.5 0 0 0 13.5 3h-3v-.5A.48.48 0 0 0 10 2c-.276 0-.5.23-.5.5V3h-3ZM7 6.5a1 1 0 1 1 2 0a1 1 0 0 1-2 0Zm4 0a1 1 0 1 1 2 0a1 1 0 0 1-2 0Z"
34
+ />
35
+ </svg>`)}
36
+ </fluent-badge>
37
+ `;
2
38
  export default {
3
- title: 'Components/Badge',
4
- component: fluentBadge,
39
+ title: 'Components/Badge/Badge',
40
+ args: {
41
+ content: null,
42
+ },
5
43
  argTypes: {
6
44
  appearance: {
7
- options: ['neutral', 'accent', 'lightweight'],
8
- control: { type: 'radio' },
45
+ options: Object.values(BadgeAppearance),
46
+ control: {
47
+ type: 'select',
48
+ },
9
49
  },
10
- },
11
- };
12
- const BadgeTemplate = ({ appearance, label }) => `
13
- <fluent-badge
14
- ${appearance ? `appearance="${appearance}"` : ''}
15
- >${label}</fluent-badge>`;
16
- export const Badge = BadgeTemplate.bind({});
17
- Badge.args = {
18
- label: 'Badge',
19
- appearance: 'accent',
20
- };
21
- Badge.parameters = {
22
- docs: {
23
- source: {
24
- code: `<fluent-badge appearance="accent">Text</fluent-badge>`,
50
+ color: {
51
+ options: Object.values(BadgeColor),
52
+ control: {
53
+ type: 'select',
54
+ },
55
+ },
56
+ shape: {
57
+ options: Object.values(BadgeShape),
58
+ control: {
59
+ type: 'select',
60
+ },
61
+ },
62
+ size: {
63
+ options: Object.values(BadgeSize),
64
+ control: {
65
+ type: 'select',
66
+ },
67
+ },
68
+ iconPosition: {
69
+ options: ['none', 'start', 'end'],
70
+ control: {
71
+ type: 'select',
72
+ },
73
+ },
74
+ content: {
75
+ control: 'text',
25
76
  },
26
77
  },
27
78
  };
79
+ export const Badge = renderComponent(storyTemplate).bind({});
80
+ export const Appearance = renderComponent(html `
81
+ <fluent-badge appearance="filled">filled</fluent-badge>
82
+ <fluent-badge appearance="ghost">ghost</fluent-badge>
83
+ <fluent-badge appearance="outline">outline</fluent-badge>
84
+ <fluent-badge appearance="tint">tint</fluent-badge>
85
+ `);
86
+ export const Color = renderComponent(html `
87
+ <fluent-badge color="brand">brand</fluent-badge>
88
+ <fluent-badge color="danger">danger</fluent-badge>
89
+ <fluent-badge color="important">important</fluent-badge>
90
+ <fluent-badge color="informative">informative</fluent-badge>
91
+ <fluent-badge color="severe">severe</fluent-badge>
92
+ <fluent-badge color="subtle">subtle</fluent-badge>
93
+ <fluent-badge color="success">success</fluent-badge>
94
+ <fluent-badge color="warning">warning</fluent-badge>
95
+ `);
96
+ export const Shape = renderComponent(html `
97
+ <fluent-badge shape="circular"></fluent-badge>
98
+ <fluent-badge shape="rounded"></fluent-badge>
99
+ <fluent-badge shape="square"></fluent-badge>
100
+ `);
101
+ export const Size = renderComponent(html `
102
+ <fluent-badge size="tiny"></fluent-badge>
103
+ <fluent-badge size="extra-small"></fluent-badge>
104
+ <fluent-badge size="small"></fluent-badge>
105
+ <fluent-badge size="medium"></fluent-badge>
106
+ <fluent-badge size="large"></fluent-badge>
107
+ <fluent-badge size="extra-large"></fluent-badge>
108
+ `);
@@ -1,40 +1,29 @@
1
1
  import { css } from '@microsoft/fast-element';
2
- import { display } from '@microsoft/fast-foundation';
3
- import { accentFillRest, controlCornerRadius, designUnit, foregroundOnAccentRest, neutralFillSecondaryRest, neutralForegroundRest, strokeWidth, typeRampMinus1LineHeight, } from '../design-tokens';
4
- import { typeRampMinus1 } from '../styles/patterns/type-ramp';
5
- export const badgeStyles = (context, definition) => css `
6
- ${display('inline-block')} :host {
7
- box-sizing: border-box;
8
- ${typeRampMinus1};
9
- }
2
+ import { badgeBaseStyles, badgeFilledStyles, badgeGhostStyles, badgeOutlineStyles, badgeSizeStyles, badgeTintStyles, } from '../styles/index.js';
3
+ import { borderRadiusMedium, borderRadiusNone, borderRadiusSmall } from '../theme/design-tokens.js';
4
+ // why is the border not showing up?
5
+ /** Badge styles
6
+ * @public
7
+ */
8
+ export const styles = css `
9
+ :host([shape='square']) {
10
+ border-radius: ${borderRadiusNone};
11
+ }
10
12
 
11
- .control {
12
- border-radius: calc(${controlCornerRadius} * 1px);
13
- padding: calc(((${designUnit} * 0.5) - ${strokeWidth}) * 1px) calc((${designUnit} - ${strokeWidth}) * 1px);
14
- border: calc(${strokeWidth} * 1px) solid transparent;
15
- }
13
+ :host([shape='rounded']) {
14
+ border-radius: ${borderRadiusMedium};
15
+ }
16
16
 
17
- :host(.lightweight) .control {
18
- background: transparent;
19
- color: ${neutralForegroundRest};
20
- font-weight: 600;
21
- }
17
+ :host([shape='rounded'][size='tiny']),
18
+ :host([shape='rounded'][size='extra-small']),
19
+ :host([shape='rounded'][size='small']) {
20
+ border-radius: ${borderRadiusSmall};
21
+ }
22
22
 
23
- :host(.accent) .control {
24
- background: ${accentFillRest};
25
- color: ${foregroundOnAccentRest};
26
- }
27
-
28
- :host(.neutral) .control {
29
- background: ${neutralFillSecondaryRest};
30
- color: ${neutralForegroundRest};
31
- }
32
-
33
- :host([circular]) .control {
34
- border-radius: 100px;
35
- min-width: calc(${typeRampMinus1LineHeight} - calc(${designUnit} * 1px));
36
- display: flex;
37
- align-items: center;
38
- justify-content: center;
39
- }
40
- `;
23
+ ${badgeSizeStyles}
24
+ ${badgeFilledStyles}
25
+ ${badgeGhostStyles}
26
+ ${badgeOutlineStyles}
27
+ ${badgeTintStyles}
28
+ ${badgeBaseStyles}
29
+ `;
@@ -0,0 +1,14 @@
1
+ import { html } from '@microsoft/fast-element';
2
+ import { endSlotTemplate, startSlotTemplate, staticallyCompose } from '@microsoft/fast-foundation';
3
+ /**
4
+ * The template for the Badge component.
5
+ * @public
6
+ */
7
+ export function badgeTemplate(options = {}) {
8
+ return html `
9
+ ${startSlotTemplate(options)}
10
+ <slot>${staticallyCompose(options.defaultContent)}</slot>
11
+ ${endSlotTemplate(options)}
12
+ `;
13
+ }
14
+ export const template = badgeTemplate();
@@ -0,0 +1,3 @@
1
+ import { FluentDesignSystem } from '../fluent-design-system.js';
2
+ import { definition } from './badge.definition.js';
3
+ definition.define(FluentDesignSystem.registry);
@@ -1,45 +1,5 @@
1
- import { __decorate } from "tslib";
2
- import { attr, DOM } from '@microsoft/fast-element';
3
- import { Badge as FoundationBadge, badgeTemplate as template } from '@microsoft/fast-foundation';
4
- import { badgeStyles as styles } from './badge.styles';
5
- /**
6
- * The Fluent Badge class
7
- * @internal
8
- */
9
- export class Badge extends FoundationBadge {
10
- constructor() {
11
- super(...arguments);
12
- this.appearance = 'lightweight';
13
- }
14
- appearanceChanged(oldValue, newValue) {
15
- if (oldValue !== newValue) {
16
- DOM.queueUpdate(() => {
17
- this.classList.add(newValue);
18
- this.classList.remove(oldValue);
19
- });
20
- }
21
- }
22
- }
23
- __decorate([
24
- attr({ mode: 'fromView' })
25
- ], Badge.prototype, "appearance", void 0);
26
- /**
27
- * The Fluent Badge Element. Implements {@link @microsoft/fast-foundation#Badge},
28
- * {@link @microsoft/fast-foundation#badgeTemplate}
29
- *
30
- *
31
- * @public
32
- * @remarks
33
- * HTML Element: \<fluent-badge\>
34
- */
35
- export const fluentBadge = Badge.compose({
36
- baseName: 'badge',
37
- baseClass: FoundationBadge,
38
- template,
39
- styles,
40
- });
41
- /**
42
- * Styles for Badge
43
- * @public
44
- */
45
- export const badgeStyles = styles;
1
+ export * from './badge.js';
2
+ export * from './badge.options.js';
3
+ export { template as BadgeTemplate } from './badge.template.js';
4
+ export { styles as BadgeStyles } from './badge.styles.js';
5
+ export { definition as BadgeDefinition } from './badge.definition.js';
@@ -0,0 +1,18 @@
1
+ import { FluentDesignSystem } from '../fluent-design-system.js';
2
+ import { CounterBadge } from './counter-badge.js';
3
+ import { styles } from './counter-badge.styles.js';
4
+ import { template } from './counter-badge.template.js';
5
+ /**
6
+ * The Fluent CounterBadge Element. Implements {@link @microsoft/fast-foundation#Badge },
7
+ * {@link @microsoft/fast-foundation#badgeTemplate}
8
+ *
9
+ *
10
+ * @public
11
+ * @remarks
12
+ * HTML Element: \<fluent-counter-badge\>
13
+ */
14
+ export const definition = CounterBadge.compose({
15
+ name: `${FluentDesignSystem.prefix}-counter-badge`,
16
+ template,
17
+ styles,
18
+ });
@@ -0,0 +1,89 @@
1
+ import { __decorate } from "tslib";
2
+ import { attr, FASTElement, nullableNumberConverter } from '@microsoft/fast-element';
3
+ import { applyMixins, StartEnd } from '@microsoft/fast-foundation';
4
+ /**
5
+ * The base class used for constructing a fluent-badge custom element
6
+ * @public
7
+ */
8
+ export class CounterBadge extends FASTElement {
9
+ constructor() {
10
+ super(...arguments);
11
+ /**
12
+ * The count the badge should have.
13
+ *
14
+ * @public
15
+ * @remarks
16
+ * HTML Attribute: count
17
+ */
18
+ this.count = 0;
19
+ /**
20
+ * Max number to be displayed
21
+ *
22
+ * @public
23
+ * @remarks
24
+ * HTML Attribute: overflow-count
25
+ */
26
+ this.overflowCount = 99;
27
+ /**
28
+ * If the badge should be shown when count is 0
29
+ *
30
+ * @public
31
+ * @remarks
32
+ * HTML Attribute: show-zero
33
+ */
34
+ this.showZero = false;
35
+ /**
36
+ * If a dot should be displayed without the count
37
+ *
38
+ * @public
39
+ * @remarks
40
+ * HTML Attribute: dot
41
+ */
42
+ this.dot = false;
43
+ }
44
+ countChanged() {
45
+ this.setCount();
46
+ }
47
+ overflowCountChanged() {
48
+ this.setCount();
49
+ }
50
+ /**
51
+ * @internal
52
+ * Function to set the count
53
+ * This is the default slotted content for the counter badge
54
+ * If children are slotted, that will override the value returned
55
+ */
56
+ setCount() {
57
+ var _a;
58
+ const count = (_a = this.count) !== null && _a !== void 0 ? _a : 0;
59
+ if ((count !== 0 || this.showZero) && !this.dot) {
60
+ return count > this.overflowCount ? `${this.overflowCount}+` : `${count}`;
61
+ }
62
+ return;
63
+ }
64
+ }
65
+ __decorate([
66
+ attr
67
+ ], CounterBadge.prototype, "appearance", void 0);
68
+ __decorate([
69
+ attr
70
+ ], CounterBadge.prototype, "color", void 0);
71
+ __decorate([
72
+ attr
73
+ ], CounterBadge.prototype, "shape", void 0);
74
+ __decorate([
75
+ attr
76
+ ], CounterBadge.prototype, "size", void 0);
77
+ __decorate([
78
+ attr({ converter: nullableNumberConverter })
79
+ ], CounterBadge.prototype, "count", void 0);
80
+ __decorate([
81
+ attr({ attribute: 'overflow-count', converter: nullableNumberConverter })
82
+ ], CounterBadge.prototype, "overflowCount", void 0);
83
+ __decorate([
84
+ attr({ attribute: 'show-zero', mode: 'boolean' })
85
+ ], CounterBadge.prototype, "showZero", void 0);
86
+ __decorate([
87
+ attr({ mode: 'boolean' })
88
+ ], CounterBadge.prototype, "dot", void 0);
89
+ applyMixins(CounterBadge, StartEnd);
@@ -0,0 +1,42 @@
1
+ /**
2
+ * CounterBadgeAppearance constants
3
+ * @public
4
+ */
5
+ export const CounterBadgeAppearance = {
6
+ filled: 'filled',
7
+ ghost: 'ghost',
8
+ };
9
+ /**
10
+ * CounterBadgeColor constants
11
+ * @public
12
+ */
13
+ export const CounterBadgeColor = {
14
+ brand: 'brand',
15
+ danger: 'danger',
16
+ important: 'important',
17
+ informative: 'informative',
18
+ severe: 'severe',
19
+ subtle: 'subtle',
20
+ success: 'success',
21
+ warning: 'warning',
22
+ };
23
+ /**
24
+ * A CounterBadge shape can be circular or rounded.
25
+ * @public
26
+ */
27
+ export const CounterBadgeShape = {
28
+ circular: 'circular',
29
+ rounded: 'rounded',
30
+ };
31
+ /**
32
+ * A CounterBadge can be square, circular or rounded.
33
+ * @public
34
+ */
35
+ export const CounterBadgeSize = {
36
+ tiny: 'tiny',
37
+ extraSmall: 'extra-small',
38
+ small: 'small',
39
+ medium: 'medium',
40
+ large: 'large',
41
+ extraLarge: 'extra-large',
42
+ };
@@ -0,0 +1,102 @@
1
+ import { html } from '@microsoft/fast-element';
2
+ import { renderComponent } from '../__test__/helpers.js';
3
+ import { CounterBadgeAppearance, CounterBadgeColor, CounterBadgeShape, CounterBadgeSize, } from './counter-badge.options.js';
4
+ import './define.js';
5
+ // TODO: Currently cannot show icon or content
6
+ // in the counter badge stories because it projects as slotted content
7
+ const storyTemplate = html `
8
+ <fluent-counter-badge
9
+ appearance="${x => x.appearance}"
10
+ color="${x => x.color}"
11
+ shape="${x => x.shape}"
12
+ size="${x => x.size}"
13
+ count="${x => x.count}"
14
+ overflow-count="${x => x.overflowCount}"
15
+ ?show-zero="${x => x.showZero}"
16
+ ?dot="${x => x.dot}"
17
+ ></fluent-counter-badge>
18
+ `;
19
+ export default {
20
+ title: 'Components/Badge/Counter Badge',
21
+ args: {
22
+ dot: false,
23
+ showZero: false,
24
+ appearance: CounterBadgeAppearance.filled,
25
+ color: CounterBadgeColor.brand,
26
+ shape: CounterBadgeShape.circular,
27
+ count: 5,
28
+ },
29
+ argTypes: {
30
+ appearance: {
31
+ options: Object.values(CounterBadgeAppearance),
32
+ control: {
33
+ type: 'select',
34
+ },
35
+ },
36
+ color: {
37
+ options: Object.values(CounterBadgeColor),
38
+ control: {
39
+ type: 'select',
40
+ },
41
+ },
42
+ shape: {
43
+ options: Object.values(CounterBadgeShape),
44
+ control: {
45
+ type: 'select',
46
+ },
47
+ },
48
+ size: {
49
+ options: Object.values(CounterBadgeSize),
50
+ control: {
51
+ type: 'select',
52
+ },
53
+ },
54
+ iconPosition: {
55
+ options: ['none', 'start', 'end'],
56
+ control: {
57
+ type: 'select',
58
+ },
59
+ },
60
+ dot: {
61
+ control: 'boolean',
62
+ },
63
+ showZero: {
64
+ control: 'boolean',
65
+ },
66
+ count: {
67
+ control: 'number',
68
+ },
69
+ overflowCount: {
70
+ control: 'text',
71
+ },
72
+ },
73
+ };
74
+ export const CounterBadge = renderComponent(storyTemplate).bind({});
75
+ export const Appearance = renderComponent(html `
76
+ <fluent-counter-badge count="5" appearance="filled"></fluent-counter-badge>
77
+ <fluent-counter-badge count="5" appearance="ghost"></fluent-counter-badge>
78
+ `);
79
+ export const Color = renderComponent(html `
80
+ <fluent-counter-badge count="5" color="brand"></fluent-counter-badge>
81
+ <fluent-counter-badge count="5" color="danger"></fluent-counter-badge>
82
+ <fluent-counter-badge count="5" color="important"></fluent-counter-badge>
83
+ <fluent-counter-badge count="5" color="informative"></fluent-counter-badge>
84
+ <fluent-counter-badge count="5" color="severe"></fluent-counter-badge>
85
+ <fluent-counter-badge count="5" color="subtle"></fluent-counter-badge>
86
+ <fluent-counter-badge count="5" color="success"></fluent-counter-badge>
87
+ <fluent-counter-badge count="5" color="warning"></fluent-counter-badge>
88
+ `);
89
+ export const Shape = renderComponent(html `
90
+ <fluent-counter-badge count="5" shape="circular"></fluent-counter-badge>
91
+ <fluent-counter-badge count="5" shape="rounded"></fluent-counter-badge>
92
+ `);
93
+ export const Size = renderComponent(html `
94
+ <fluent-counter-badge size="tiny"></fluent-counter-badge>
95
+ <fluent-counter-badge size="extra-small"></fluent-counter-badge>
96
+ <fluent-counter-badge size="small"></fluent-counter-badge>
97
+ <fluent-counter-badge size="medium"></fluent-counter-badge>
98
+ <fluent-counter-badge size="large"></fluent-counter-badge>
99
+ <fluent-counter-badge size="extra-large"></fluent-counter-badge>
100
+ `);
101
+ export const Dot = renderComponent(html `<fluent-counter-badge dot></fluent-counter-badge>`);
102
+ export const ShowZero = renderComponent(html `<fluent-counter-badge show-zero></fluent-counter-badge>`);
@@ -0,0 +1,30 @@
1
+ import { css } from '@microsoft/fast-element';
2
+ import { badgeBaseStyles, badgeFilledStyles, badgeGhostStyles, badgeSizeStyles } from '../styles/index.js';
3
+ import { borderRadiusMedium, borderRadiusSmall } from '../theme/design-tokens.js';
4
+ /** Badge styles
5
+ * @public
6
+ */
7
+ export const styles = css `
8
+ :host([shape='rounded']) {
9
+ border-radius: ${borderRadiusMedium};
10
+ }
11
+
12
+ :host([shape='rounded'][size='tiny']),
13
+ :host([shape='rounded'][size='extra-small']),
14
+ :host([shape='rounded'][size='small']) {
15
+ border-radius: ${borderRadiusSmall};
16
+ }
17
+
18
+ ${badgeSizeStyles}
19
+ ${badgeFilledStyles}
20
+ ${badgeGhostStyles}
21
+ ${badgeBaseStyles}
22
+
23
+ :host([dot]),
24
+ :host([dot][appearance][size]) {
25
+ min-width: auto;
26
+ width: 6px;
27
+ height: 6px;
28
+ padding: 0;
29
+ }
30
+ `;
@@ -0,0 +1,12 @@
1
+ import { html } from '@microsoft/fast-element';
2
+ import { badgeTemplate } from '../badge/badge.template.js';
3
+ function composeTemplate(options = {}) {
4
+ return badgeTemplate({
5
+ defaultContent: html `${x => x.setCount()}`,
6
+ });
7
+ }
8
+ /**
9
+ * The template for the Counter Badge component.
10
+ * @public
11
+ */
12
+ export const template = composeTemplate();
@@ -0,0 +1,3 @@
1
+ import { FluentDesignSystem } from '../fluent-design-system.js';
2
+ import { definition } from './counter-badge.definition.js';
3
+ definition.define(FluentDesignSystem.registry);
@@ -0,0 +1,5 @@
1
+ export * from './counter-badge.js';
2
+ export * from './counter-badge.options.js';
3
+ export { template as CounterBadgeTemplate } from './counter-badge.template.js';
4
+ export { styles as CounterBadgeStyles } from './counter-badge.styles.js';
5
+ export { definition as CounterBadgeDefinition } from './counter-badge.definition.js';
@@ -1,11 +1,5 @@
1
- import { DesignSystem } from '@microsoft/fast-foundation';
2
- /**
3
- * Provides a design system for the specified element either by returning one that was
4
- * already created for that element or creating one.
5
- * @param element - The element to root the design system at. By default, this is the body.
6
- * @returns A Fluent Design System
7
- * @public
8
- */
9
- export function provideFluentDesignSystem(element) {
10
- return DesignSystem.getOrCreate(element).withPrefix('fluent');
11
- }
1
+ export const FluentDesignSystem = Object.freeze({
2
+ prefix: 'fluent',
3
+ shadowRootMode: 'open',
4
+ registry: customElements,
5
+ });
@@ -1,12 +1 @@
1
- // TODO: Is exporting Foundation still necessary with the updated API's?
2
- // export * from "@microsoft/fast-element";
3
- import { allComponents } from './custom-elements';
4
- import { provideFluentDesignSystem } from './fluent-design-system';
5
- export * from './index';
6
- /**
7
- * The global Fluent Design System.
8
- * @remarks
9
- * Only available if the components are added through a script tag
10
- * rather than a module/build system.
11
- */
12
- export const FluentDesignSystem = provideFluentDesignSystem().register(allComponents);
1
+ export * from './index.js';
package/dist/esm/index.js CHANGED
@@ -1,49 +1,5 @@
1
- /**
2
- * Export all custom element definitions.
3
- */
4
- export * from './custom-elements';
5
- export * from './fluent-design-system';
6
- export * from './accordion/';
7
- export * from './anchor/';
8
- export * from './anchored-region';
9
- export * from './badge/';
10
- export * from './breadcrumb';
11
- export * from './breadcrumb-item';
12
- export * from './button/';
13
- export * from './card/';
14
- export * from './checkbox/';
15
- export * from './combobox/';
16
- export * from './data-grid';
17
- export * from './design-system-provider/';
18
- export * from './dialog/';
19
- export * from './divider/';
20
- export * from './flipper/';
21
- export * from './horizontal-scroll/';
22
- export * from './listbox';
23
- export * from './listbox-option';
24
- export * from './menu/';
25
- export * from './menu-item/';
26
- export * from './number-field/';
27
- export * from './progress/';
28
- export * from './radio/';
29
- export * from './radio-group/';
30
- export * from './search/';
31
- export * from './select';
32
- export * from './skeleton/';
33
- export * from './slider/';
34
- export * from './slider-label/';
35
- export * from './switch/';
36
- export * from './tabs/';
37
- export * from './text-area/';
38
- export * from './text-field/';
39
- export * from './toolbar';
40
- export * from './tooltip';
41
- export * from './tree-item/';
42
- export * from './tree-view/';
43
- // export styles and utils
44
- export * from './design-tokens';
45
- export * from './styles';
46
- export { PaletteRGB } from './color/palette';
47
- export { SwatchRGB } from './color/swatch';
48
- export { isDark } from './color/utilities/is-dark';
49
- export { StandardLuminance } from './color/utilities/base-layer-luminance';
1
+ export * from './badge/index.js';
2
+ export * from './counter-badge/index.js';
3
+ export * from './progress-bar/index.js';
4
+ export * from './text/index.js';
5
+ export * from './theme/index.js';
@@ -0,0 +1,3 @@
1
+ import { FluentDesignSystem } from '../fluent-design-system.js';
2
+ import { definition } from './progress-bar.definition.js';
3
+ definition.define(FluentDesignSystem.registry);