@fluentui/web-components 2.5.10 → 3.0.0-alpha.1

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 (447) hide show
  1. package/CHANGELOG.json +16 -32
  2. package/CHANGELOG.md +6 -15
  3. package/dist/dts/index-rollup.d.ts +0 -7
  4. package/dist/dts/index.d.ts +1 -49
  5. package/dist/dts/theme/design-tokens.d.ts +379 -0
  6. package/dist/dts/theme/index.d.ts +2 -0
  7. package/dist/dts/theme/set-theme.d.ts +6 -0
  8. package/dist/dts/{anchored-region/anchored-region.stories.d.ts → theme/theme.stories.d.ts} +1 -2
  9. package/dist/esm/index-rollup.js +0 -11
  10. package/dist/esm/index.js +1 -49
  11. package/dist/esm/theme/design-tokens.js +381 -0
  12. package/dist/esm/theme/index.js +2 -0
  13. package/dist/esm/theme/set-theme.js +11 -0
  14. package/dist/esm/theme/theme.stories.js +21 -0
  15. package/dist/fluent-web-components.api.json +6 -19807
  16. package/dist/web-components.d.ts +1 -2980
  17. package/dist/web-components.js +2 -21988
  18. package/dist/web-components.min.js +1 -254
  19. package/docs/api-report.md +1 -1723
  20. package/package.json +13 -5
  21. package/public/theme-switch.ts +13 -0
  22. package/dist/dts/_docs/design-system/color-explorer/app.d.ts +0 -25
  23. package/dist/dts/_docs/design-system/color-explorer/colors.d.ts +0 -13
  24. package/dist/dts/_docs/design-system/color-explorer/component-types.d.ts +0 -6
  25. package/dist/dts/_docs/design-system/color-explorer/components/color-block.d.ts +0 -10
  26. package/dist/dts/_docs/design-system/color-explorer/components/color-picker/color-picker.d.ts +0 -190
  27. package/dist/dts/_docs/design-system/color-explorer/components/color-picker/color-picker.form-associated.d.ts +0 -15
  28. package/dist/dts/_docs/design-system/color-explorer/components/color-picker/color-picker.styles.d.ts +0 -3
  29. package/dist/dts/_docs/design-system/color-explorer/components/color-picker/color-picker.template.d.ts +0 -8
  30. package/dist/dts/_docs/design-system/color-explorer/components/color-picker/index.d.ts +0 -9
  31. package/dist/dts/_docs/design-system/color-explorer/components/control-pane/control-pane.d.ts +0 -8
  32. package/dist/dts/_docs/design-system/color-explorer/components/control-pane/control-pane.styles.d.ts +0 -1
  33. package/dist/dts/_docs/design-system/color-explorer/components/control-pane/control-pane.template.d.ts +0 -2
  34. package/dist/dts/_docs/design-system/color-explorer/components/control-pane/index.d.ts +0 -6
  35. package/dist/dts/_docs/design-system/color-explorer/components/gradient/gradient.d.ts +0 -5
  36. package/dist/dts/_docs/design-system/color-explorer/components/gradient/gradient.styles.d.ts +0 -1
  37. package/dist/dts/_docs/design-system/color-explorer/components/gradient/gradient.template.d.ts +0 -2
  38. package/dist/dts/_docs/design-system/color-explorer/components/gradient/index.d.ts +0 -6
  39. package/dist/dts/_docs/design-system/color-explorer/components/layer-background/index.d.ts +0 -21
  40. package/dist/dts/_docs/design-system/color-explorer/components/sample-app/index.d.ts +0 -6
  41. package/dist/dts/_docs/design-system/color-explorer/components/sample-app/sample-app.d.ts +0 -3
  42. package/dist/dts/_docs/design-system/color-explorer/components/sample-app/sample-app.styles.d.ts +0 -1
  43. package/dist/dts/_docs/design-system/color-explorer/components/sample-app/sample-app.template.d.ts +0 -1
  44. package/dist/dts/_docs/design-system/color-explorer/components/sample-page/index.d.ts +0 -6
  45. package/dist/dts/_docs/design-system/color-explorer/components/sample-page/sample-page.d.ts +0 -3
  46. package/dist/dts/_docs/design-system/color-explorer/components/sample-page/sample-page.styles.d.ts +0 -1
  47. package/dist/dts/_docs/design-system/color-explorer/components/sample-page/sample-page.template.d.ts +0 -1
  48. package/dist/dts/_docs/design-system/color-explorer/components/swatch.d.ts +0 -30
  49. package/dist/dts/_docs/design-system/color-explorer/custom-elements.d.ts +0 -7
  50. package/dist/dts/_docs/design-system/color-explorer/index.d.ts +0 -2
  51. package/dist/dts/accordion/accordion-item/accordion-item.styles.d.ts +0 -3
  52. package/dist/dts/accordion/accordion-item/index.d.ts +0 -17
  53. package/dist/dts/accordion/accordion.stories.d.ts +0 -15
  54. package/dist/dts/accordion/accordion.styles.d.ts +0 -3
  55. package/dist/dts/accordion/index.d.ts +0 -22
  56. package/dist/dts/anchor/anchor.stories.d.ts +0 -14
  57. package/dist/dts/anchor/anchor.styles.d.ts +0 -3
  58. package/dist/dts/anchor/index.d.ts +0 -49
  59. package/dist/dts/anchored-region/anchored-region.styles.d.ts +0 -3
  60. package/dist/dts/anchored-region/index.d.ts +0 -21
  61. package/dist/dts/badge/badge.stories.d.ts +0 -14
  62. package/dist/dts/badge/badge.styles.d.ts +0 -3
  63. package/dist/dts/badge/index.d.ts +0 -29
  64. package/dist/dts/breadcrumb/breadcrumb.stories.d.ts +0 -15
  65. package/dist/dts/breadcrumb/breadcrumb.styles.d.ts +0 -3
  66. package/dist/dts/breadcrumb/index.d.ts +0 -21
  67. package/dist/dts/breadcrumb-item/breadcrumb-item.stories.d.ts +0 -15
  68. package/dist/dts/breadcrumb-item/breadcrumb-item.styles.d.ts +0 -3
  69. package/dist/dts/breadcrumb-item/index.d.ts +0 -21
  70. package/dist/dts/button/button.stories.d.ts +0 -21
  71. package/dist/dts/button/button.styles.d.ts +0 -3
  72. package/dist/dts/button/index.d.ts +0 -48
  73. package/dist/dts/calendar/calendar.stories.d.ts +0 -86
  74. package/dist/dts/calendar/calendar.styles.d.ts +0 -7
  75. package/dist/dts/calendar/index.d.ts +0 -18
  76. package/dist/dts/card/card.stories.d.ts +0 -15
  77. package/dist/dts/card/card.styles.d.ts +0 -3
  78. package/dist/dts/card/index.d.ts +0 -46
  79. package/dist/dts/checkbox/checkbox.stories.d.ts +0 -28
  80. package/dist/dts/checkbox/checkbox.styles.d.ts +0 -3
  81. package/dist/dts/checkbox/index.d.ts +0 -16
  82. package/dist/dts/color/palette.d.ts +0 -73
  83. package/dist/dts/color/recipe.d.ts +0 -20
  84. package/dist/dts/color/recipes/contrast-and-delta-swatch-set.d.ts +0 -11
  85. package/dist/dts/color/recipes/contrast-swatch.d.ts +0 -12
  86. package/dist/dts/color/recipes/delta-swatch-set.d.ts +0 -36
  87. package/dist/dts/color/recipes/delta-swatch.d.ts +0 -12
  88. package/dist/dts/color/recipes/focus-stroke.d.ts +0 -10
  89. package/dist/dts/color/recipes/foreground-on-accent.d.ts +0 -11
  90. package/dist/dts/color/recipes/gradient-shadow-stroke.d.ts +0 -7
  91. package/dist/dts/color/recipes/gradient-swatch.d.ts +0 -36
  92. package/dist/dts/color/recipes/neutral-layer-1.d.ts +0 -10
  93. package/dist/dts/color/recipes/neutral-layer-2.d.ts +0 -6
  94. package/dist/dts/color/recipes/neutral-layer-3.d.ts +0 -6
  95. package/dist/dts/color/recipes/neutral-layer-4.d.ts +0 -6
  96. package/dist/dts/color/recipes/neutral-layer-floating.d.ts +0 -6
  97. package/dist/dts/color/recipes/underline-stroke.d.ts +0 -7
  98. package/dist/dts/color/swatch.d.ts +0 -31
  99. package/dist/dts/color/utilities/base-layer-luminance.d.ts +0 -11
  100. package/dist/dts/color/utilities/binary-search.d.ts +0 -4
  101. package/dist/dts/color/utilities/color-constants.d.ts +0 -14
  102. package/dist/dts/color/utilities/direction-by-is-dark.d.ts +0 -5
  103. package/dist/dts/color/utilities/is-dark.d.ts +0 -9
  104. package/dist/dts/color/utilities/relative-luminance.d.ts +0 -13
  105. package/dist/dts/combobox/combobox.stories.d.ts +0 -36
  106. package/dist/dts/combobox/combobox.styles.d.ts +0 -3
  107. package/dist/dts/combobox/index.d.ts +0 -43
  108. package/dist/dts/component-definitions.d.ts +0 -43
  109. package/dist/dts/custom-elements.d.ts +0 -103
  110. package/dist/dts/data-grid/data-grid-cell.styles.d.ts +0 -3
  111. package/dist/dts/data-grid/data-grid-row.styles.d.ts +0 -3
  112. package/dist/dts/data-grid/data-grid.stories.d.ts +0 -15
  113. package/dist/dts/data-grid/data-grid.styles.d.ts +0 -3
  114. package/dist/dts/data-grid/index.d.ts +0 -45
  115. package/dist/dts/design-system-provider/index.d.ts +0 -582
  116. package/dist/dts/design-tokens.d.ts +0 -519
  117. package/dist/dts/dialog/dialog.stories.d.ts +0 -25
  118. package/dist/dts/dialog/dialog.styles.d.ts +0 -3
  119. package/dist/dts/dialog/index.d.ts +0 -21
  120. package/dist/dts/divider/divider.stories.d.ts +0 -6
  121. package/dist/dts/divider/divider.styles.d.ts +0 -3
  122. package/dist/dts/divider/index.d.ts +0 -21
  123. package/dist/dts/flipper/flipper.stories.d.ts +0 -17
  124. package/dist/dts/flipper/flipper.styles.d.ts +0 -3
  125. package/dist/dts/flipper/index.d.ts +0 -21
  126. package/dist/dts/fluent-design-system.d.ts +0 -9
  127. package/dist/dts/horizontal-scroll/horizontal-scroll.stories.d.ts +0 -15
  128. package/dist/dts/horizontal-scroll/horizontal-scroll.styles.d.ts +0 -12
  129. package/dist/dts/horizontal-scroll/index.d.ts +0 -25
  130. package/dist/dts/listbox/index.d.ts +0 -19
  131. package/dist/dts/listbox/listbox.stories.d.ts +0 -6
  132. package/dist/dts/listbox/listbox.styles.d.ts +0 -3
  133. package/dist/dts/listbox-option/index.d.ts +0 -17
  134. package/dist/dts/listbox-option/listbox-option.stories.d.ts +0 -23
  135. package/dist/dts/listbox-option/listbox-option.styles.d.ts +0 -3
  136. package/dist/dts/menu/index.d.ts +0 -26
  137. package/dist/dts/menu/menu.stories.d.ts +0 -6
  138. package/dist/dts/menu/menu.styles.d.ts +0 -3
  139. package/dist/dts/menu-item/index.d.ts +0 -21
  140. package/dist/dts/menu-item/menu-item.stories.d.ts +0 -18
  141. package/dist/dts/menu-item/menu-item.styles.d.ts +0 -3
  142. package/dist/dts/number-field/index.d.ts +0 -41
  143. package/dist/dts/number-field/number-field.stories.d.ts +0 -71
  144. package/dist/dts/number-field/number-field.styles.d.ts +0 -3
  145. package/dist/dts/progress/index.d.ts +0 -2
  146. package/dist/dts/progress/progress/index.d.ts +0 -22
  147. package/dist/dts/progress/progress/progress.stories.d.ts +0 -15
  148. package/dist/dts/progress/progress/progress.styles.d.ts +0 -3
  149. package/dist/dts/progress/progress-ring/index.d.ts +0 -22
  150. package/dist/dts/progress/progress-ring/progress-ring.stories.d.ts +0 -15
  151. package/dist/dts/progress/progress-ring/progress-ring.styles.d.ts +0 -3
  152. package/dist/dts/radio/index.d.ts +0 -21
  153. package/dist/dts/radio/radio.stories.d.ts +0 -23
  154. package/dist/dts/radio/radio.styles.d.ts +0 -3
  155. package/dist/dts/radio-group/index.d.ts +0 -21
  156. package/dist/dts/radio-group/radio-group.stories.d.ts +0 -18
  157. package/dist/dts/radio-group/radio-group.styles.d.ts +0 -3
  158. package/dist/dts/search/index.d.ts +0 -38
  159. package/dist/dts/search/search.stories.d.ts +0 -75
  160. package/dist/dts/search/search.styles.d.ts +0 -3
  161. package/dist/dts/search/search.template.d.ts +0 -6
  162. package/dist/dts/select/index.d.ts +0 -44
  163. package/dist/dts/select/select.stories.d.ts +0 -28
  164. package/dist/dts/select/select.styles.d.ts +0 -13
  165. package/dist/dts/skeleton/index.d.ts +0 -21
  166. package/dist/dts/skeleton/skeleton.stories.d.ts +0 -20
  167. package/dist/dts/skeleton/skeleton.styles.d.ts +0 -3
  168. package/dist/dts/slider/index.d.ts +0 -21
  169. package/dist/dts/slider/slider.stories.d.ts +0 -14
  170. package/dist/dts/slider/slider.styles.d.ts +0 -3
  171. package/dist/dts/slider-label/index.d.ts +0 -21
  172. package/dist/dts/slider-label/slider-label.stories.d.ts +0 -23
  173. package/dist/dts/slider-label/slider-label.styles.d.ts +0 -3
  174. package/dist/dts/styles/direction.d.ts +0 -34
  175. package/dist/dts/styles/elevation.d.ts +0 -64
  176. package/dist/dts/styles/focus.d.ts +0 -13
  177. package/dist/dts/styles/index.d.ts +0 -5
  178. package/dist/dts/styles/patterns/button.styles.d.ts +0 -31
  179. package/dist/dts/styles/patterns/index.d.ts +0 -3
  180. package/dist/dts/styles/patterns/input.styles.d.ts +0 -30
  181. package/dist/dts/styles/patterns/type-ramp.d.ts +0 -18
  182. package/dist/dts/styles/size.d.ts +0 -7
  183. package/dist/dts/switch/index.d.ts +0 -21
  184. package/dist/dts/switch/switch.stories.d.ts +0 -18
  185. package/dist/dts/switch/switch.styles.d.ts +0 -3
  186. package/dist/dts/tabs/index.d.ts +0 -23
  187. package/dist/dts/tabs/tab/index.d.ts +0 -21
  188. package/dist/dts/tabs/tab/tab.styles.d.ts +0 -3
  189. package/dist/dts/tabs/tab-panel/index.d.ts +0 -21
  190. package/dist/dts/tabs/tab-panel/tab-panel.styles.d.ts +0 -3
  191. package/dist/dts/tabs/tabs.stories.d.ts +0 -19
  192. package/dist/dts/tabs/tabs.styles.d.ts +0 -3
  193. package/dist/dts/text-area/index.d.ts +0 -45
  194. package/dist/dts/text-area/text-area.stories.d.ts +0 -41
  195. package/dist/dts/text-area/text-area.styles.d.ts +0 -3
  196. package/dist/dts/text-field/index.d.ts +0 -45
  197. package/dist/dts/text-field/text-field.stories.d.ts +0 -81
  198. package/dist/dts/text-field/text-field.styles.d.ts +0 -3
  199. package/dist/dts/toolbar/index.d.ts +0 -17
  200. package/dist/dts/toolbar/toolbar.stories.d.ts +0 -9
  201. package/dist/dts/toolbar/toolbar.styles.d.ts +0 -3
  202. package/dist/dts/tooltip/index.d.ts +0 -21
  203. package/dist/dts/tooltip/tooltip.stories.d.ts +0 -14
  204. package/dist/dts/tooltip/tooltip.styles.d.ts +0 -3
  205. package/dist/dts/tree-item/index.d.ts +0 -22
  206. package/dist/dts/tree-item/tree-item.stories.d.ts +0 -18
  207. package/dist/dts/tree-item/tree-item.styles.d.ts +0 -4
  208. package/dist/dts/tree-view/index.d.ts +0 -22
  209. package/dist/dts/tree-view/tree-view.stories.d.ts +0 -13
  210. package/dist/dts/tree-view/tree-view.styles.d.ts +0 -3
  211. package/dist/dts/utilities/behaviors.d.ts +0 -12
  212. package/dist/dts/utilities/type-ramp.d.ts +0 -12
  213. package/dist/esm/_docs/design-system/color-explorer/app.js +0 -247
  214. package/dist/esm/_docs/design-system/color-explorer/colors.js +0 -24
  215. package/dist/esm/_docs/design-system/color-explorer/component-types.js +0 -7
  216. package/dist/esm/_docs/design-system/color-explorer/components/color-block.js +0 -408
  217. package/dist/esm/_docs/design-system/color-explorer/components/color-picker/color-picker.form-associated.js +0 -16
  218. package/dist/esm/_docs/design-system/color-explorer/components/color-picker/color-picker.js +0 -297
  219. package/dist/esm/_docs/design-system/color-explorer/components/color-picker/color-picker.styles.js +0 -124
  220. package/dist/esm/_docs/design-system/color-explorer/components/color-picker/color-picker.template.js +0 -130
  221. package/dist/esm/_docs/design-system/color-explorer/components/color-picker/index.js +0 -15
  222. package/dist/esm/_docs/design-system/color-explorer/components/control-pane/control-pane.js +0 -24
  223. package/dist/esm/_docs/design-system/color-explorer/components/control-pane/control-pane.styles.js +0 -19
  224. package/dist/esm/_docs/design-system/color-explorer/components/control-pane/control-pane.template.js +0 -52
  225. package/dist/esm/_docs/design-system/color-explorer/components/control-pane/index.js +0 -18
  226. package/dist/esm/_docs/design-system/color-explorer/components/gradient/gradient.js +0 -11
  227. package/dist/esm/_docs/design-system/color-explorer/components/gradient/gradient.styles.js +0 -31
  228. package/dist/esm/_docs/design-system/color-explorer/components/gradient/gradient.template.js +0 -21
  229. package/dist/esm/_docs/design-system/color-explorer/components/gradient/index.js +0 -18
  230. package/dist/esm/_docs/design-system/color-explorer/components/layer-background/index.js +0 -70
  231. package/dist/esm/_docs/design-system/color-explorer/components/sample-app/index.js +0 -18
  232. package/dist/esm/_docs/design-system/color-explorer/components/sample-app/sample-app.js +0 -3
  233. package/dist/esm/_docs/design-system/color-explorer/components/sample-app/sample-app.styles.js +0 -166
  234. package/dist/esm/_docs/design-system/color-explorer/components/sample-app/sample-app.template.js +0 -97
  235. package/dist/esm/_docs/design-system/color-explorer/components/sample-page/index.js +0 -18
  236. package/dist/esm/_docs/design-system/color-explorer/components/sample-page/sample-page.js +0 -3
  237. package/dist/esm/_docs/design-system/color-explorer/components/sample-page/sample-page.styles.js +0 -130
  238. package/dist/esm/_docs/design-system/color-explorer/components/sample-page/sample-page.template.js +0 -82
  239. package/dist/esm/_docs/design-system/color-explorer/components/swatch.js +0 -163
  240. package/dist/esm/_docs/design-system/color-explorer/custom-elements.js +0 -3
  241. package/dist/esm/_docs/design-system/color-explorer/index.js +0 -14
  242. package/dist/esm/accordion/accordion-item/accordion-item.styles.js +0 -154
  243. package/dist/esm/accordion/accordion-item/accordion-item.vscode.definition.json +0 -67
  244. package/dist/esm/accordion/accordion-item/index.js +0 -32
  245. package/dist/esm/accordion/accordion.stories.js +0 -66
  246. package/dist/esm/accordion/accordion.styles.js +0 -13
  247. package/dist/esm/accordion/accordion.vscode.definition.json +0 -35
  248. package/dist/esm/accordion/index.js +0 -27
  249. package/dist/esm/anchor/anchor.stories.js +0 -34
  250. package/dist/esm/anchor/anchor.styles.js +0 -5
  251. package/dist/esm/anchor/anchor.vscode.definition.json +0 -138
  252. package/dist/esm/anchor/index.js +0 -67
  253. package/dist/esm/anchored-region/anchored-region.stories.js +0 -133
  254. package/dist/esm/anchored-region/anchored-region.styles.js +0 -7
  255. package/dist/esm/anchored-region/anchored-region.vscode.definition.json +0 -140
  256. package/dist/esm/anchored-region/index.js +0 -26
  257. package/dist/esm/badge/badge.stories.js +0 -27
  258. package/dist/esm/badge/badge.styles.js +0 -40
  259. package/dist/esm/badge/badge.vscode.definition.json +0 -60
  260. package/dist/esm/badge/index.js +0 -45
  261. package/dist/esm/breadcrumb/breadcrumb.stories.js +0 -20
  262. package/dist/esm/breadcrumb/breadcrumb.styles.js +0 -13
  263. package/dist/esm/breadcrumb/breadcrumb.vscode.definition.json +0 -18
  264. package/dist/esm/breadcrumb/index.js +0 -26
  265. package/dist/esm/breadcrumb-item/breadcrumb-item.stories.js +0 -16
  266. package/dist/esm/breadcrumb-item/breadcrumb-item.styles.js +0 -96
  267. package/dist/esm/breadcrumb-item/breadcrumb-item.vscode.definition.json +0 -50
  268. package/dist/esm/breadcrumb-item/index.js +0 -34
  269. package/dist/esm/button/button.stories.js +0 -40
  270. package/dist/esm/button/button.styles.js +0 -24
  271. package/dist/esm/button/button.vscode.definition.json +0 -158
  272. package/dist/esm/button/index.js +0 -67
  273. package/dist/esm/calendar/calendar.stories.js +0 -115
  274. package/dist/esm/calendar/calendar.styles.js +0 -132
  275. package/dist/esm/calendar/index.js +0 -31
  276. package/dist/esm/card/card.stories.js +0 -30
  277. package/dist/esm/card/card.styles.js +0 -28
  278. package/dist/esm/card/card.vscode.definition.json +0 -33
  279. package/dist/esm/card/index.js +0 -79
  280. package/dist/esm/checkbox/checkbox.stories.js +0 -43
  281. package/dist/esm/checkbox/checkbox.styles.js +0 -161
  282. package/dist/esm/checkbox/checkbox.vscode.definition.json +0 -69
  283. package/dist/esm/checkbox/index.js +0 -31
  284. package/dist/esm/color/palette.js +0 -250
  285. package/dist/esm/color/recipe.js +0 -1
  286. package/dist/esm/color/recipes/contrast-and-delta-swatch-set.js +0 -28
  287. package/dist/esm/color/recipes/contrast-swatch.js +0 -12
  288. package/dist/esm/color/recipes/delta-swatch-set.js +0 -53
  289. package/dist/esm/color/recipes/delta-swatch.js +0 -13
  290. package/dist/esm/color/recipes/focus-stroke.js +0 -14
  291. package/dist/esm/color/recipes/foreground-on-accent.js +0 -21
  292. package/dist/esm/color/recipes/gradient-shadow-stroke.js +0 -54
  293. package/dist/esm/color/recipes/gradient-swatch.js +0 -36
  294. package/dist/esm/color/recipes/neutral-layer-1.js +0 -13
  295. package/dist/esm/color/recipes/neutral-layer-2.js +0 -7
  296. package/dist/esm/color/recipes/neutral-layer-3.js +0 -7
  297. package/dist/esm/color/recipes/neutral-layer-4.js +0 -7
  298. package/dist/esm/color/recipes/neutral-layer-floating.js +0 -7
  299. package/dist/esm/color/recipes/underline-stroke.js +0 -31
  300. package/dist/esm/color/swatch.js +0 -53
  301. package/dist/esm/color/utilities/base-layer-luminance.js +0 -14
  302. package/dist/esm/color/utilities/binary-search.js +0 -15
  303. package/dist/esm/color/utilities/color-constants.js +0 -19
  304. package/dist/esm/color/utilities/direction-by-is-dark.js +0 -7
  305. package/dist/esm/color/utilities/is-dark.js +0 -17
  306. package/dist/esm/color/utilities/relative-luminance.js +0 -8
  307. package/dist/esm/combobox/combobox.stories.js +0 -84
  308. package/dist/esm/combobox/combobox.styles.js +0 -40
  309. package/dist/esm/combobox/combobox.vscode.definition.json +0 -121
  310. package/dist/esm/combobox/index.js +0 -63
  311. package/dist/esm/component-definitions.js +0 -84
  312. package/dist/esm/custom-elements.js +0 -102
  313. package/dist/esm/data-grid/data-grid-cell.styles.js +0 -36
  314. package/dist/esm/data-grid/data-grid-cell.vscode.definition.json +0 -34
  315. package/dist/esm/data-grid/data-grid-row.styles.js +0 -24
  316. package/dist/esm/data-grid/data-grid-row.vscode.definition.json +0 -34
  317. package/dist/esm/data-grid/data-grid.stories.js +0 -381
  318. package/dist/esm/data-grid/data-grid.styles.js +0 -8
  319. package/dist/esm/data-grid/data-grid.vscode.definition.json +0 -34
  320. package/dist/esm/data-grid/index.js +0 -60
  321. package/dist/esm/design-system-provider/design-system-provider.vscode.definition.json +0 -510
  322. package/dist/esm/design-system-provider/index.js +0 -518
  323. package/dist/esm/design-tokens.js +0 -685
  324. package/dist/esm/dialog/dialog.stories.js +0 -36
  325. package/dist/esm/dialog/dialog.styles.js +0 -47
  326. package/dist/esm/dialog/dialog.vscode.definition.json +0 -67
  327. package/dist/esm/dialog/index.js +0 -26
  328. package/dist/esm/divider/divider.stories.js +0 -17
  329. package/dist/esm/divider/divider.styles.js +0 -11
  330. package/dist/esm/divider/divider.vscode.definition.json +0 -29
  331. package/dist/esm/divider/index.js +0 -26
  332. package/dist/esm/flipper/flipper.stories.js +0 -31
  333. package/dist/esm/flipper/flipper.styles.js +0 -84
  334. package/dist/esm/flipper/flipper.vscode.definition.json +0 -56
  335. package/dist/esm/flipper/index.js +0 -36
  336. package/dist/esm/fluent-design-system.js +0 -11
  337. package/dist/esm/horizontal-scroll/horizontal-scroll.stories.js +0 -81
  338. package/dist/esm/horizontal-scroll/horizontal-scroll.styles.js +0 -138
  339. package/dist/esm/horizontal-scroll/horizontal-scroll.vscode.definition.json +0 -85
  340. package/dist/esm/horizontal-scroll/index.js +0 -47
  341. package/dist/esm/listbox/index.js +0 -24
  342. package/dist/esm/listbox/listbox.stories.js +0 -29
  343. package/dist/esm/listbox/listbox.styles.js +0 -21
  344. package/dist/esm/listbox/listbox.vscode.definition.json +0 -40
  345. package/dist/esm/listbox-option/index.js +0 -22
  346. package/dist/esm/listbox-option/listbox-option.stories.js +0 -38
  347. package/dist/esm/listbox-option/listbox-option.styles.js +0 -133
  348. package/dist/esm/listbox-option/listbox-option.vscode.definition.json +0 -45
  349. package/dist/esm/menu/index.js +0 -36
  350. package/dist/esm/menu/menu.stories.js +0 -56
  351. package/dist/esm/menu/menu.styles.js +0 -42
  352. package/dist/esm/menu/menu.vscode.definition.json +0 -18
  353. package/dist/esm/menu-item/index.js +0 -41
  354. package/dist/esm/menu-item/menu-item.stories.js +0 -34
  355. package/dist/esm/menu-item/menu-item.styles.js +0 -265
  356. package/dist/esm/menu-item/menu-item.vscode.definition.json +0 -82
  357. package/dist/esm/number-field/index.js +0 -57
  358. package/dist/esm/number-field/number-field.stories.js +0 -83
  359. package/dist/esm/number-field/number-field.styles.js +0 -71
  360. package/dist/esm/number-field/number-field.vscode.definition.json +0 -167
  361. package/dist/esm/progress/index.js +0 -2
  362. package/dist/esm/progress/progress/index.js +0 -33
  363. package/dist/esm/progress/progress/progress.stories.js +0 -59
  364. package/dist/esm/progress/progress/progress.styles.js +0 -119
  365. package/dist/esm/progress/progress/progress.vscode.definition.json +0 -56
  366. package/dist/esm/progress/progress-ring/index.js +0 -45
  367. package/dist/esm/progress/progress-ring/progress-ring.stories.js +0 -59
  368. package/dist/esm/progress/progress-ring/progress-ring.styles.js +0 -79
  369. package/dist/esm/progress/progress-ring/progress-ring.vscode.definition.json +0 -56
  370. package/dist/esm/radio/index.js +0 -31
  371. package/dist/esm/radio/radio.stories.js +0 -41
  372. package/dist/esm/radio/radio.styles.js +0 -152
  373. package/dist/esm/radio/radio.vscode.definition.json +0 -63
  374. package/dist/esm/radio-group/index.js +0 -26
  375. package/dist/esm/radio-group/radio-group.stories.js +0 -42
  376. package/dist/esm/radio-group/radio-group.styles.js +0 -21
  377. package/dist/esm/radio-group/radio-group.vscode.definition.json +0 -64
  378. package/dist/esm/search/index.js +0 -52
  379. package/dist/esm/search/search.stories.js +0 -83
  380. package/dist/esm/search/search.styles.js +0 -104
  381. package/dist/esm/search/search.template.js +0 -82
  382. package/dist/esm/search/search.vscode.definition.json +0 -145
  383. package/dist/esm/select/index.js +0 -61
  384. package/dist/esm/select/select.stories.js +0 -53
  385. package/dist/esm/select/select.styles.js +0 -139
  386. package/dist/esm/select/select.vscode.definition.json +0 -79
  387. package/dist/esm/skeleton/index.js +0 -26
  388. package/dist/esm/skeleton/skeleton.stories.js +0 -37
  389. package/dist/esm/skeleton/skeleton.styles.js +0 -77
  390. package/dist/esm/skeleton/skeleton.vscode.definition.json +0 -49
  391. package/dist/esm/slider/index.js +0 -29
  392. package/dist/esm/slider/slider.stories.js +0 -40
  393. package/dist/esm/slider/slider.styles.js +0 -162
  394. package/dist/esm/slider/slider.vscode.definition.json +0 -101
  395. package/dist/esm/slider-label/index.js +0 -26
  396. package/dist/esm/slider-label/slider-label.stories.js +0 -40
  397. package/dist/esm/slider-label/slider-label.styles.js +0 -77
  398. package/dist/esm/slider-label/slider-label.vscode.definition.json +0 -43
  399. package/dist/esm/styles/direction.js +0 -73
  400. package/dist/esm/styles/elevation.js +0 -74
  401. package/dist/esm/styles/focus.js +0 -21
  402. package/dist/esm/styles/index.js +0 -5
  403. package/dist/esm/styles/patterns/button.styles.js +0 -427
  404. package/dist/esm/styles/patterns/index.js +0 -3
  405. package/dist/esm/styles/patterns/input.styles.js +0 -227
  406. package/dist/esm/styles/patterns/type-ramp.js +0 -74
  407. package/dist/esm/styles/size.js +0 -9
  408. package/dist/esm/switch/index.js +0 -31
  409. package/dist/esm/switch/switch.stories.js +0 -42
  410. package/dist/esm/switch/switch.styles.js +0 -213
  411. package/dist/esm/switch/switch.vscode.definition.json +0 -68
  412. package/dist/esm/tabs/index.js +0 -28
  413. package/dist/esm/tabs/tab/index.js +0 -26
  414. package/dist/esm/tabs/tab/tab.styles.js +0 -75
  415. package/dist/esm/tabs/tab/tab.vscode.definition.json +0 -17
  416. package/dist/esm/tabs/tab-panel/index.js +0 -26
  417. package/dist/esm/tabs/tab-panel/tab-panel.styles.js +0 -11
  418. package/dist/esm/tabs/tab-panel/tab-panel.vscode.definition.json +0 -17
  419. package/dist/esm/tabs/tabs.stories.js +0 -105
  420. package/dist/esm/tabs/tabs.styles.js +0 -98
  421. package/dist/esm/tabs/tabs.vscode.definition.json +0 -50
  422. package/dist/esm/text-area/index.js +0 -56
  423. package/dist/esm/text-area/text-area.stories.js +0 -56
  424. package/dist/esm/text-area/text-area.styles.js +0 -39
  425. package/dist/esm/text-area/text-area.vscode.definition.json +0 -141
  426. package/dist/esm/text-field/index.js +0 -56
  427. package/dist/esm/text-field/text-field.stories.js +0 -88
  428. package/dist/esm/text-field/text-field.styles.js +0 -48
  429. package/dist/esm/text-field/text-field.vscode.definition.json +0 -150
  430. package/dist/esm/toolbar/index.js +0 -23
  431. package/dist/esm/toolbar/toolbar.stories.js +0 -9
  432. package/dist/esm/toolbar/toolbar.styles.js +0 -73
  433. package/dist/esm/tooltip/index.js +0 -31
  434. package/dist/esm/tooltip/tooltip.stories.js +0 -34
  435. package/dist/esm/tooltip/tooltip.styles.js +0 -107
  436. package/dist/esm/tooltip/tooltip.vscode.definition.json +0 -56
  437. package/dist/esm/tree-item/index.js +0 -32
  438. package/dist/esm/tree-item/tree-item.stories.js +0 -34
  439. package/dist/esm/tree-item/tree-item.styles.js +0 -227
  440. package/dist/esm/tree-item/tree-item.vscode.definition.json +0 -63
  441. package/dist/esm/tree-view/index.js +0 -27
  442. package/dist/esm/tree-view/tree-view.stories.js +0 -99
  443. package/dist/esm/tree-view/tree-view.styles.js +0 -14
  444. package/dist/esm/tree-view/tree-view.vscode.definition.json +0 -26
  445. package/dist/esm/utilities/behaviors.js +0 -13
  446. package/dist/esm/utilities/type-ramp.js +0 -12
  447. package/public/switches.ts +0 -24
@@ -1,104 +0,0 @@
1
- import { css } from '@microsoft/fast-element';
2
- import { Button, DesignToken, display, forcedColorsStylesheetBehavior, } from '@microsoft/fast-foundation';
3
- import { baseInputStyles, heightNumber, inputFilledStyles, inputForcedColorStyles, inputOutlineStyles, inputStateStyles, } from '../styles';
4
- import { appearanceBehavior } from '../utilities/behaviors';
5
- import { controlCornerRadius, density, designUnit, neutralFillInputRecipe, neutralFillStealthRecipe, neutralForegroundRest } from '../design-tokens';
6
- import { typeRampBase } from '../styles/patterns/type-ramp';
7
- const logicalControlSelector = '.root';
8
- const clearButtonHover = DesignToken.create("clear-button-hover").withDefault((target) => {
9
- const buttonRecipe = neutralFillStealthRecipe.getValueFor(target);
10
- const inputRecipe = neutralFillInputRecipe.getValueFor(target);
11
- return buttonRecipe.evaluate(target, inputRecipe.evaluate(target).focus).hover;
12
- });
13
- const clearButtonActive = DesignToken.create("clear-button-active").withDefault((target) => {
14
- const buttonRecipe = neutralFillStealthRecipe.getValueFor(target);
15
- const inputRecipe = neutralFillInputRecipe.getValueFor(target);
16
- return buttonRecipe.evaluate(target, inputRecipe.evaluate(target).focus).active;
17
- });
18
- export const searchStyles = (context, definition) => css `
19
- ${display('inline-block')}
20
-
21
- ${baseInputStyles(context, definition, logicalControlSelector)}
22
-
23
- ${inputStateStyles(context, definition, logicalControlSelector)}
24
-
25
- .root {
26
- display: flex;
27
- flex-direction: row;
28
- }
29
- .control {
30
- -webkit-appearance: none;
31
- color: inherit;
32
- background: transparent;
33
- border: 0;
34
- height: calc(100% - 4px);
35
- margin-top: auto;
36
- margin-bottom: auto;
37
- padding: 0 calc(${designUnit} * 2px + 1px);
38
- font-family: inherit;
39
- font-size: inherit;
40
- line-height: inherit;
41
- }
42
- .clear-button {
43
- display: inline-flex;
44
- align-items: center;
45
- margin: 1px;
46
- height: calc(100% - 2px);
47
- opacity: 0;
48
- background: transparent;
49
- color: ${neutralForegroundRest};
50
- fill: currentcolor;
51
- border: none;
52
- border-radius: calc(${controlCornerRadius} * 1px);
53
- min-width: calc(${heightNumber} * 1px);
54
- ${typeRampBase}
55
- outline: none;
56
- padding: 0 calc((10 + (${designUnit} * 2 * ${density})) * 1px);
57
- }
58
- .clear-button:hover {
59
- background: ${clearButtonHover};
60
- }
61
- .clear-button:active {
62
- background: ${clearButtonActive};
63
- }
64
- :host(:hover:not([disabled], [readOnly])) .clear-button,
65
- :host(:active:not([disabled], [readOnly])) .clear-button,
66
- :host(:focus-within:not([disabled], [readOnly])) .clear-button {
67
- opacity: 1;
68
- }
69
- :host(:hover:not([disabled], [readOnly])) .clear-button__hidden,
70
- :host(:active:not([disabled], [readOnly])) .clear-button__hidden,
71
- :host(:focus-within:not([disabled], [readOnly])) .clear-button__hidden {
72
- opacity: 0;
73
- }
74
- .control::-webkit-search-cancel-button {
75
- -webkit-appearance: none;
76
- }
77
- .input-wrapper {
78
- display: flex;
79
- position: relative;
80
- width: 100%;
81
- }
82
- .start,
83
- .end {
84
- display: flex;
85
- margin: 1px;
86
- align-items: center;
87
- }
88
- .start {
89
- display: flex;
90
- margin-inline-start: 11px;
91
- }
92
- ::slotted([slot="end"]) {
93
- height: 100%
94
- }
95
- .clear-button__hidden {
96
- opacity: 0;
97
- }
98
- .end {
99
- margin-inline-end: 11px;
100
- }
101
- ::slotted(${context.tagFor(Button)}) {
102
- margin-inline-end: 1px;
103
- }
104
- `.withBehaviors(appearanceBehavior('outline', inputOutlineStyles(context, definition, logicalControlSelector)), appearanceBehavior('filled', inputFilledStyles(context, definition, logicalControlSelector)), forcedColorsStylesheetBehavior(inputForcedColorStyles(context, definition, logicalControlSelector)));
@@ -1,82 +0,0 @@
1
- import { html, ref, slotted } from '@microsoft/fast-element';
2
- import { endSlotTemplate, startSlotTemplate, whitespaceFilter, } from '@microsoft/fast-foundation';
3
- /**
4
- * @public
5
- */
6
- export const searchTemplate = (context, definition) => html `
7
- <template
8
- class="
9
- ${x => (x.readOnly ? 'readonly' : '')}
10
- "
11
- >
12
- <label
13
- part="label"
14
- for="control"
15
- class="${x => (x.defaultSlottedNodes && x.defaultSlottedNodes.length ? 'label' : 'label label__hidden')}"
16
- >
17
- <slot ${slotted({ property: 'defaultSlottedNodes', filter: whitespaceFilter })}></slot>
18
- </label>
19
- <div class="root" part="root" ${ref('root')}>
20
- ${startSlotTemplate(context, definition)}
21
- <div class="input-wrapper" part="input-wrapper">
22
- <input
23
- class="control"
24
- part="control"
25
- id="control"
26
- @input="${x => x.handleTextInput()}"
27
- @change="${x => x.handleChange()}"
28
- ?autofocus="${x => x.autofocus}"
29
- ?disabled="${x => x.disabled}"
30
- list="${x => x.list}"
31
- maxlength="${x => x.maxlength}"
32
- minlength="${x => x.minlength}"
33
- pattern="${x => x.pattern}"
34
- placeholder="${x => x.placeholder}"
35
- ?readonly="${x => x.readOnly}"
36
- ?required="${x => x.required}"
37
- size="${x => x.size}"
38
- ?spellcheck="${x => x.spellcheck}"
39
- :value="${x => x.value}"
40
- type="search"
41
- aria-atomic="${x => x.ariaAtomic}"
42
- aria-busy="${x => x.ariaBusy}"
43
- aria-controls="${x => x.ariaControls}"
44
- aria-current="${x => x.ariaCurrent}"
45
- aria-describedby="${x => x.ariaDescribedby}"
46
- aria-details="${x => x.ariaDetails}"
47
- aria-disabled="${x => x.ariaDisabled}"
48
- aria-errormessage="${x => x.ariaErrormessage}"
49
- aria-flowto="${x => x.ariaFlowto}"
50
- aria-haspopup="${x => x.ariaHaspopup}"
51
- aria-hidden="${x => x.ariaHidden}"
52
- aria-invalid="${x => x.ariaInvalid}"
53
- aria-keyshortcuts="${x => x.ariaKeyshortcuts}"
54
- aria-label="${x => x.ariaLabel}"
55
- aria-labelledby="${x => x.ariaLabelledby}"
56
- aria-live="${x => x.ariaLive}"
57
- aria-owns="${x => x.ariaOwns}"
58
- aria-relevant="${x => x.ariaRelevant}"
59
- aria-roledescription="${x => x.ariaRoledescription}"
60
- ${ref('control')}
61
- />
62
- <slot name="clear-button">
63
- <button
64
- class="clear-button ${x => (x.value ? '' : 'clear-button__hidden')}"
65
- part="clear-button"
66
- tabindex="-1"
67
- @click=${x => x.handleClearInput()}
68
- >
69
- <slot name="clear-glyph">
70
- <svg width="12" height="12" viewBox="0 0 12 12" xmlns="http://www.w3.org/2000/svg">
71
- <path
72
- d="m2.09 2.22.06-.07a.5.5 0 0 1 .63-.06l.07.06L6 5.29l3.15-3.14a.5.5 0 1 1 .7.7L6.71 6l3.14 3.15c.18.17.2.44.06.63l-.06.07a.5.5 0 0 1-.63.06l-.07-.06L6 6.71 2.85 9.85a.5.5 0 0 1-.7-.7L5.29 6 2.15 2.85a.5.5 0 0 1-.06-.63l.06-.07-.06.07Z"
73
- />
74
- </svg>
75
- </slot>
76
- </button>
77
- </slot>
78
- </div>
79
- ${endSlotTemplate(context, definition)}
80
- </div>
81
- </template>
82
- `;
@@ -1,145 +0,0 @@
1
- {
2
- "version": 1.1,
3
- "tags": [
4
- {
5
- "name": "fluent-search",
6
- "title": "Search",
7
- "description": "The Fluent UI search element",
8
- "attributes": [
9
- {
10
- "name": "value",
11
- "title": "Value",
12
- "description": "The HTML value attribute of the search",
13
- "required": false,
14
- "type": "string"
15
- },
16
- {
17
- "name": "appearance",
18
- "title": "Appearance",
19
- "description": "The field's visual treatment",
20
- "default": "outline",
21
- "values": [{ "name": "outline" }, { "name": "filled" }],
22
- "type": "string",
23
- "required": false
24
- },
25
- {
26
- "name": "autofocus",
27
- "title": "Autofocus",
28
- "description": "Determines if the element should receive document focus on page load",
29
- "required": false,
30
- "type": "boolean",
31
- "default": false
32
- },
33
- {
34
- "name": "placeholder",
35
- "title": "Placeholder",
36
- "description": "Sets the placeholder value of the element, generally used to provide a hint to the user",
37
- "required": false,
38
- "type": "string"
39
- },
40
- {
41
- "name": "list",
42
- "title": "List ID",
43
- "description": "Allows associating a datalist to the component",
44
- "required": false,
45
- "type": "string",
46
- "default": ""
47
- },
48
- {
49
- "name": "maxlength",
50
- "title": "Maximum length",
51
- "description": "The maximum number of characters a user can enter",
52
- "required": false,
53
- "type": "number"
54
- },
55
- {
56
- "name": "minlength",
57
- "title": "Minimum length",
58
- "description": "The minimum number of characters a user can enter",
59
- "required": false,
60
- "type": "number"
61
- },
62
- {
63
- "name": "pattern",
64
- "title": "Validation pattern",
65
- "description": "A regular expression that the value must match to pass validation",
66
- "required": false,
67
- "type": "string"
68
- },
69
- {
70
- "name": "size",
71
- "title": "Size",
72
- "description": "Sets the width of the element to a specified number of characters",
73
- "required": false,
74
- "type": "number"
75
- },
76
- {
77
- "name": "spellcheck",
78
- "title": "Spellcheck",
79
- "description": "Controls whether or not to enable spell checking for the input field, or if the default spell checking configuration should be used",
80
- "required": false,
81
- "type": "boolean"
82
- },
83
- {
84
- "name": "name",
85
- "title": "Name",
86
- "description": "This element's value will be surfaced during form submission under the provided name",
87
- "type": "string",
88
- "default": "",
89
- "required": false
90
- },
91
- {
92
- "name": "required",
93
- "title": "Required",
94
- "description": "Require the field to be completed prior to form submission",
95
- "type": "boolean",
96
- "default": false,
97
- "required": false
98
- },
99
- {
100
- "name": "disabled",
101
- "title": "Disabled",
102
- "description": "Sets the disabled state of the field",
103
- "type": "boolean",
104
- "default": false,
105
- "required": false
106
- },
107
- {
108
- "name": "readonly",
109
- "title": "Readonly",
110
- "description": "When true, the control will be immutable by user interaction",
111
- "type": "boolean",
112
- "default": false,
113
- "required": false
114
- }
115
- ],
116
- "slots": [
117
- {
118
- "name": "",
119
- "title": "Default slot",
120
- "description": "The content of the field represents its visual label"
121
- },
122
- {
123
- "name": "start",
124
- "title": "Start slot",
125
- "description": "Contents of the start slot are positioned before the input area"
126
- },
127
- {
128
- "name": "end",
129
- "title": "End slot",
130
- "description": "Contents of the end slot are positioned after the input area"
131
- },
132
- {
133
- "name": "clear-button",
134
- "title": "Clear button slot",
135
- "description": "Contents of the clear button slot are positioned after the content and is what clears the value when a value is set"
136
- },
137
- {
138
- "name": "clear-glyph",
139
- "title": "Clear glyph slot",
140
- "description": "Contents of the clear button"
141
- }
142
- ]
143
- }
144
- ]
145
- }
@@ -1,61 +0,0 @@
1
- import { __decorate } from "tslib";
2
- import { attr } from '@microsoft/fast-element';
3
- import { Select as FoundationSelect, selectTemplate as template } from '@microsoft/fast-foundation';
4
- import { fillColor, neutralLayerFloating } from '../design-tokens';
5
- import { selectStyles as styles } from './select.styles';
6
- /**
7
- * The Fluent select class
8
- * @internal
9
- */
10
- export class Select extends FoundationSelect {
11
- /**
12
- * @internal
13
- */
14
- appearanceChanged(oldValue, newValue) {
15
- if (oldValue !== newValue) {
16
- this.classList.add(newValue);
17
- this.classList.remove(oldValue);
18
- }
19
- }
20
- /**
21
- * @internal
22
- */
23
- connectedCallback() {
24
- super.connectedCallback();
25
- if (!this.appearance) {
26
- this.appearance = 'outline';
27
- }
28
- if (this.listbox) {
29
- fillColor.setValueFor(this.listbox, neutralLayerFloating);
30
- }
31
- }
32
- }
33
- __decorate([
34
- attr({ mode: 'fromView' })
35
- ], Select.prototype, "appearance", void 0);
36
- /**
37
- * The Fluent select Custom Element. Implements, {@link @microsoft/fast-foundation#Select}
38
- * {@link @microsoft/fast-foundation#selectTemplate}
39
- *
40
- *
41
- * @public
42
- * @remarks
43
- * HTML Element: \<fluent-select\>
44
- *
45
- */
46
- export const fluentSelect = Select.compose({
47
- baseName: 'select',
48
- baseClass: FoundationSelect,
49
- template,
50
- styles,
51
- indicator: `
52
- <svg width="12" height="12" xmlns="http://www.w3.org/2000/svg">
53
- <path d="M2.15 4.65c.2-.2.5-.2.7 0L6 7.79l3.15-3.14a.5.5 0 11.7.7l-3.5 3.5a.5.5 0 01-.7 0l-3.5-3.5a.5.5 0 010-.7z"/>
54
- </svg>
55
- `,
56
- });
57
- /**
58
- * Styles for Select
59
- * @public
60
- */
61
- export const selectStyles = styles;
@@ -1,53 +0,0 @@
1
- import '../listbox-option';
2
- import { fluentSelect } from './index';
3
- export default {
4
- title: 'Components/Select',
5
- component: fluentSelect,
6
- argTypes: {
7
- appearance: {
8
- options: ['filled', 'outline', 'stealth'],
9
- control: { type: 'radio' },
10
- defaultValue: 'outline',
11
- },
12
- disabled: {
13
- control: { type: 'boolean' },
14
- },
15
- position: {
16
- options: ['above', 'below'],
17
- control: { type: 'radio' },
18
- defaultValue: 'below',
19
- },
20
- },
21
- };
22
- const SelectTemplate = ({ appearance, disabled, position }) => `
23
- <fluent-select
24
- ${appearance ? `appearance="${appearance}"` : ''}
25
- ${disabled ? 'disabled' : ''}
26
- ${position ? `position="${position}"` : ''}
27
- style="margin-bottom: 200px;"
28
- >
29
- <fluent-option>Option One</fluent-option>
30
- <fluent-option>Option Two</fluent-option>
31
- <fluent-option>Option Three</fluent-option>
32
- <fluent-option>Option Four</fluent-option>
33
- </fluent-select>
34
- `;
35
- export const Select = SelectTemplate.bind({});
36
- Select.args = {
37
- disabled: false,
38
- };
39
- const example = `
40
- <fluent-select>
41
- <fluent-option>This option has no value</fluent-option>
42
- <fluent-option disabled>This option is disabled</fluent-option>
43
- <fluent-option value="hi">This option has a value</fluent-option>
44
- <fluent-option selected>This option is selected by default</fluent-option>
45
- </fluent-select>
46
- `;
47
- Select.parameters = {
48
- docs: {
49
- source: {
50
- code: example,
51
- },
52
- },
53
- };
@@ -1,139 +0,0 @@
1
- import { css } from '@microsoft/fast-element';
2
- import { disabledCursor, display, focusVisible, forcedColorsStylesheetBehavior, } from '@microsoft/fast-foundation';
3
- import { SystemColors } from '@microsoft/fast-web-utilities';
4
- import { elevationShadowFlyout } from '../styles/elevation';
5
- import { heightNumber } from '../styles/size';
6
- import { appearanceBehavior } from '../utilities/behaviors';
7
- import { bodyFont, controlCornerRadius, designUnit, disabledOpacity, fillColor, layerCornerRadius, neutralForegroundRest, strokeWidth, } from '../design-tokens';
8
- import { typeRampBase } from '../styles/patterns/type-ramp';
9
- import { focusTreatmentBase } from '../styles/focus';
10
- import { inputFilledStyles, inputForcedColorStyles, NeutralButtonStyles, StealthButtonStyles } from '../styles';
11
- const logicalControlSelector = '.control';
12
- const interactivitySelector = ':not([disabled]):not([open])';
13
- const nonInteractivitySelector = '[disabled]';
14
- /**
15
- * The base styles for a select and combobox, without `appearance` visual differences.
16
- *
17
- * @internal
18
- */
19
- export const baseSelectStyles = (context, definition) => css `
20
- ${display('inline-flex')}
21
-
22
- :host {
23
- border-radius: calc(${controlCornerRadius} * 1px);
24
- box-sizing: border-box;
25
- color: ${neutralForegroundRest};
26
- fill: currentcolor;
27
- font-family: ${bodyFont};
28
- position: relative;
29
- user-select: none;
30
- min-width: 250px;
31
- vertical-align: top;
32
- }
33
-
34
- .listbox {
35
- box-shadow: ${elevationShadowFlyout};
36
- background: ${fillColor};
37
- border-radius: calc(${layerCornerRadius} * 1px);
38
- box-sizing: border-box;
39
- display: inline-flex;
40
- flex-direction: column;
41
- left: 0;
42
- max-height: calc(var(--max-height) - (${heightNumber} * 1px));
43
- padding: calc((${designUnit} - ${strokeWidth} ) * 1px);
44
- overflow-y: auto;
45
- position: absolute;
46
- width: 100%;
47
- z-index: 1;
48
- margin: 1px 0;
49
- border: calc(${strokeWidth} * 1px) solid transparent;
50
- }
51
-
52
- .listbox[hidden] {
53
- display: none;
54
- }
55
-
56
- .control {
57
- border: calc(${strokeWidth} * 1px) solid transparent;
58
- border-radius: calc(${controlCornerRadius} * 1px);
59
- height: calc(${heightNumber} * 1px);
60
- align-items: center;
61
- box-sizing: border-box;
62
- cursor: pointer;
63
- display: flex;
64
- ${typeRampBase}
65
- min-height: 100%;
66
- padding: 0 calc(${designUnit} * 2.25px);
67
- width: 100%;
68
- }
69
-
70
- :host(:${focusVisible}) {
71
- ${focusTreatmentBase}
72
- }
73
-
74
- :host([disabled]) .control {
75
- cursor: ${disabledCursor};
76
- opacity: ${disabledOpacity};
77
- user-select: none;
78
- }
79
-
80
- :host([open][position='above']) .listbox {
81
- bottom: calc((${heightNumber} + ${designUnit} * 2) * 1px);
82
- }
83
-
84
- :host([open][position='below']) .listbox {
85
- top: calc((${heightNumber} + ${designUnit} * 2) * 1px);
86
- }
87
-
88
- .selected-value {
89
- font-family: inherit;
90
- flex: 1 1 auto;
91
- text-align: start;
92
- }
93
-
94
- .indicator {
95
- flex: 0 0 auto;
96
- margin-inline-start: 1em;
97
- }
98
-
99
- slot[name='listbox'] {
100
- display: none;
101
- width: 100%;
102
- }
103
-
104
- :host([open]) slot[name='listbox'] {
105
- display: flex;
106
- position: absolute;
107
- }
108
-
109
- .start {
110
- margin-inline-end: 11px;
111
- }
112
-
113
- .end {
114
- margin-inline-start: 11px;
115
- }
116
-
117
- .start,
118
- .end,
119
- .indicator,
120
- ::slotted(svg) {
121
- display: flex;
122
- }
123
-
124
- ::slotted([role='option']) {
125
- flex: 0 0 auto;
126
- }
127
- `;
128
- /**
129
- * @internal
130
- */
131
- export const baseSelectForcedColorStyles = (context, definition) => css `
132
- :host([open]) .listbox {
133
- background: ${SystemColors.ButtonFace};
134
- border-color: ${SystemColors.CanvasText};
135
- }
136
- `;
137
- export const selectStyles = (context, definition) => baseSelectStyles(context, definition)
138
- .withBehaviors(appearanceBehavior('outline', NeutralButtonStyles(context, definition, interactivitySelector, nonInteractivitySelector)), appearanceBehavior('filled', inputFilledStyles(context, definition, logicalControlSelector, interactivitySelector)
139
- .withBehaviors(forcedColorsStylesheetBehavior(inputForcedColorStyles(context, definition, logicalControlSelector, interactivitySelector)))), appearanceBehavior('stealth', StealthButtonStyles(context, definition, interactivitySelector, nonInteractivitySelector)), forcedColorsStylesheetBehavior(baseSelectForcedColorStyles(context, definition)));
@@ -1,79 +0,0 @@
1
- {
2
- "version": 1.1,
3
- "tags": [
4
- {
5
- "name": "fluent-select",
6
- "title": "Select",
7
- "description": "The Fluent UI select element",
8
- "attributes": [
9
- {
10
- "name": "appearance",
11
- "title": "Appearance",
12
- "description": "The select's visual treatment",
13
- "type": "string",
14
- "values": [
15
- {
16
- "name": "filled"
17
- },
18
- {
19
- "name": "outline"
20
- },
21
- {
22
- "name": "stealth"
23
- }
24
- ],
25
- "default": "outline",
26
- "required": false
27
- },
28
- {
29
- "name": "disabled",
30
- "title": "Disabled",
31
- "description": "Sets the disabled state of the select",
32
- "type": "boolean",
33
- "default": false,
34
- "required": false
35
- },
36
- {
37
- "name": "name",
38
- "title": "Name",
39
- "description": "This element's value will be surfaced during form submission under the provided name",
40
- "type": "string",
41
- "default": "",
42
- "required": false
43
- }
44
- ],
45
- "slots": [
46
- {
47
- "name": "",
48
- "title": "Default slot",
49
- "description": "Supports fluent-option or option elements"
50
- },
51
- {
52
- "name": "button-container",
53
- "title": "Button container slot",
54
- "description": "Slot to replace the entire invoking element and its contents"
55
- },
56
- {
57
- "name": "selected-value",
58
- "title": "Selected value slot",
59
- "description": "Slot to replace the displayed value contents"
60
- },
61
- {
62
- "name": "indicator",
63
- "title": "Indicator slot",
64
- "description": "Slot to provide a custom icon to represent the visual indicator"
65
- },
66
- {
67
- "name": "start",
68
- "title": "Start slot",
69
- "description": "Contents of the start slot are positioned before the button container"
70
- },
71
- {
72
- "name": "end",
73
- "title": "End slot",
74
- "description": "Contents of the end slot are positioned after the button container and after the indicator"
75
- }
76
- ]
77
- }
78
- ]
79
- }