@fluentui/web-components 3.0.0-beta.7 → 3.0.0-beta.8

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 (283) hide show
  1. package/CHANGELOG.md +11 -2
  2. package/dist/dts/accordion/accordion.d.ts +47 -3
  3. package/dist/dts/accordion/accordion.definition.d.ts +0 -4
  4. package/dist/dts/accordion/accordion.options.d.ts +14 -0
  5. package/dist/dts/accordion/accordion.template.d.ts +4 -0
  6. package/dist/dts/accordion-item/accordion-item.d.ts +78 -3
  7. package/dist/dts/accordion-item/accordion-item.definition.d.ts +0 -3
  8. package/dist/dts/accordion-item/accordion-item.options.d.ts +1 -1
  9. package/dist/dts/accordion-item/accordion-item.template.d.ts +2 -1
  10. package/dist/dts/anchor-button/anchor-button.d.ts +116 -4
  11. package/dist/dts/anchor-button/anchor-button.definition.d.ts +0 -3
  12. package/dist/dts/anchor-button/anchor-button.options.d.ts +19 -2
  13. package/dist/dts/anchor-button/anchor-button.template.d.ts +7 -2
  14. package/dist/dts/avatar/avatar.options.d.ts +1 -1
  15. package/dist/dts/badge/badge.d.ts +1 -1
  16. package/dist/dts/badge/badge.definition.d.ts +0 -3
  17. package/dist/dts/badge/badge.options.d.ts +2 -2
  18. package/dist/dts/button/button.d.ts +142 -4
  19. package/dist/dts/button/button.definition.d.ts +0 -3
  20. package/dist/dts/button/button.form-associated.d.ts +14 -0
  21. package/dist/dts/button/button.options.d.ts +24 -3
  22. package/dist/dts/button/button.template.d.ts +2 -0
  23. package/dist/dts/checkbox/checkbox.d.ts +46 -3
  24. package/dist/dts/checkbox/checkbox.form-associated.d.ts +14 -0
  25. package/dist/dts/checkbox/checkbox.options.d.ts +1 -1
  26. package/dist/dts/checkbox/checkbox.template.d.ts +6 -1
  27. package/dist/dts/compound-button/compound-button.definition.d.ts +0 -3
  28. package/dist/dts/compound-button/compound-button.options.d.ts +6 -6
  29. package/dist/dts/counter-badge/counter-badge.d.ts +1 -1
  30. package/dist/dts/counter-badge/counter-badge.definition.d.ts +0 -4
  31. package/dist/dts/counter-badge/counter-badge.options.d.ts +1 -1
  32. package/dist/dts/dialog/dialog.options.d.ts +1 -1
  33. package/dist/dts/divider/divider.d.ts +20 -4
  34. package/dist/dts/divider/divider.options.d.ts +30 -6
  35. package/dist/dts/divider/divider.template.d.ts +1 -0
  36. package/dist/dts/form-associated/form-associated.d.ts +178 -0
  37. package/dist/dts/image/image.options.d.ts +1 -1
  38. package/dist/dts/label/label.options.d.ts +1 -1
  39. package/dist/dts/menu-button/menu-button.definition.d.ts +0 -3
  40. package/dist/dts/menu-button/menu-button.options.d.ts +2 -2
  41. package/dist/dts/menu-item/menu-item.d.ts +161 -4
  42. package/dist/dts/menu-item/menu-item.definition.d.ts +0 -4
  43. package/dist/dts/menu-item/menu-item.options.d.ts +30 -0
  44. package/dist/dts/menu-item/menu-item.template.d.ts +2 -1
  45. package/dist/dts/menu-list/menu-list.d.ts +71 -4
  46. package/dist/dts/menu-list/menu-list.definition.d.ts +0 -4
  47. package/dist/dts/menu-list/menu-list.template.d.ts +1 -0
  48. package/dist/dts/patterns/aria-globals.d.ts +189 -0
  49. package/dist/dts/patterns/index.d.ts +2 -0
  50. package/dist/dts/patterns/start-end.d.ts +44 -0
  51. package/dist/dts/progress-bar/base-progress.d.ts +41 -0
  52. package/dist/dts/progress-bar/progress-bar.d.ts +11 -4
  53. package/dist/dts/progress-bar/progress-bar.options.d.ts +10 -1
  54. package/dist/dts/progress-bar/progress-bar.template.d.ts +2 -0
  55. package/dist/dts/progress-ring/progress-ring.d.ts +15 -0
  56. package/dist/dts/progress-ring/progress-ring.options.d.ts +9 -0
  57. package/dist/dts/radio/radio.d.ts +54 -3
  58. package/dist/dts/radio/radio.form-associated.d.ts +14 -0
  59. package/dist/dts/radio/radio.template.d.ts +2 -1
  60. package/dist/dts/radio-group/index.d.ts +0 -1
  61. package/dist/dts/radio-group/radio-group.d.ts +91 -2
  62. package/dist/dts/radio-group/radio-group.options.d.ts +17 -0
  63. package/dist/dts/radio-group/radio-group.template.d.ts +1 -0
  64. package/dist/dts/slider/slider-utilities.d.ts +5 -0
  65. package/dist/dts/slider/slider.d.ts +195 -5
  66. package/dist/dts/slider/slider.form-associated.d.ts +14 -0
  67. package/dist/dts/slider/slider.options.d.ts +43 -2
  68. package/dist/dts/slider/slider.template.d.ts +4 -2
  69. package/dist/dts/spinner/spinner.d.ts +2 -2
  70. package/dist/dts/spinner/spinner.definition.d.ts +0 -4
  71. package/dist/dts/spinner/spinner.options.d.ts +1 -1
  72. package/dist/dts/spinner/spinner.template.d.ts +2 -0
  73. package/dist/dts/switch/switch.d.ts +34 -2
  74. package/dist/dts/switch/switch.form-associated.d.ts +14 -0
  75. package/dist/dts/switch/switch.options.d.ts +1 -1
  76. package/dist/dts/switch/switch.template.d.ts +2 -1
  77. package/dist/dts/tab/tab.d.ts +17 -2
  78. package/dist/dts/tab/tab.template.d.ts +3 -3
  79. package/dist/dts/tab-panel/tab-panel.d.ts +2 -2
  80. package/dist/dts/tab-panel/tab-panel.template.d.ts +4 -1
  81. package/dist/dts/tabs/tabs.d.ts +89 -4
  82. package/dist/dts/tabs/tabs.options.d.ts +21 -3
  83. package/dist/dts/tabs/tabs.template.d.ts +5 -1
  84. package/dist/dts/text/text.options.d.ts +1 -1
  85. package/dist/dts/text-input/index.d.ts +0 -1
  86. package/dist/dts/text-input/text-field.form-associated.d.ts +14 -0
  87. package/dist/dts/text-input/text-input.d.ts +134 -6
  88. package/dist/dts/text-input/text-input.options.d.ts +32 -1
  89. package/dist/dts/text-input/text-input.template.d.ts +2 -1
  90. package/dist/dts/toggle-button/toggle-button.definition.d.ts +0 -2
  91. package/dist/dts/toggle-button/toggle-button.options.d.ts +2 -2
  92. package/dist/dts/utils/direction.d.ts +10 -0
  93. package/dist/dts/utils/index.d.ts +4 -0
  94. package/dist/dts/utils/template-helpers.d.ts +16 -0
  95. package/dist/dts/utils/typings.d.ts +6 -0
  96. package/dist/dts/utils/whitespace-filter.d.ts +12 -0
  97. package/dist/esm/accordion/accordion.definition.js +0 -4
  98. package/dist/esm/accordion/accordion.definition.js.map +1 -1
  99. package/dist/esm/accordion/accordion.js +216 -3
  100. package/dist/esm/accordion/accordion.js.map +1 -1
  101. package/dist/esm/accordion/accordion.options.js +9 -0
  102. package/dist/esm/accordion/accordion.options.js.map +1 -0
  103. package/dist/esm/accordion/accordion.template.js +11 -1
  104. package/dist/esm/accordion/accordion.template.js.map +1 -1
  105. package/dist/esm/accordion-item/accordion-item.definition.js +0 -3
  106. package/dist/esm/accordion-item/accordion-item.definition.js.map +1 -1
  107. package/dist/esm/accordion-item/accordion-item.js +80 -4
  108. package/dist/esm/accordion-item/accordion-item.js.map +1 -1
  109. package/dist/esm/accordion-item/accordion-item.template.js +47 -2
  110. package/dist/esm/accordion-item/accordion-item.template.js.map +1 -1
  111. package/dist/esm/anchor-button/anchor-button.definition.js +0 -3
  112. package/dist/esm/anchor-button/anchor-button.definition.js.map +1 -1
  113. package/dist/esm/anchor-button/anchor-button.js +52 -4
  114. package/dist/esm/anchor-button/anchor-button.js.map +1 -1
  115. package/dist/esm/anchor-button/anchor-button.options.js +11 -0
  116. package/dist/esm/anchor-button/anchor-button.options.js.map +1 -1
  117. package/dist/esm/anchor-button/anchor-button.template.js +49 -1
  118. package/dist/esm/anchor-button/anchor-button.template.js.map +1 -1
  119. package/dist/esm/badge/badge.definition.js +0 -3
  120. package/dist/esm/badge/badge.definition.js.map +1 -1
  121. package/dist/esm/badge/badge.js +1 -1
  122. package/dist/esm/badge/badge.js.map +1 -1
  123. package/dist/esm/badge/badge.template.js +2 -2
  124. package/dist/esm/badge/badge.template.js.map +1 -1
  125. package/dist/esm/button/button.definition.js +0 -3
  126. package/dist/esm/button/button.definition.js.map +1 -1
  127. package/dist/esm/button/button.form-associated.js +14 -0
  128. package/dist/esm/button/button.form-associated.js.map +1 -0
  129. package/dist/esm/button/button.js +124 -4
  130. package/dist/esm/button/button.js.map +1 -1
  131. package/dist/esm/button/button.options.js +10 -0
  132. package/dist/esm/button/button.options.js.map +1 -1
  133. package/dist/esm/button/button.template.js +49 -1
  134. package/dist/esm/button/button.template.js.map +1 -1
  135. package/dist/esm/checkbox/checkbox.form-associated.js +14 -0
  136. package/dist/esm/checkbox/checkbox.form-associated.js.map +1 -0
  137. package/dist/esm/checkbox/checkbox.js +62 -4
  138. package/dist/esm/checkbox/checkbox.js.map +1 -1
  139. package/dist/esm/checkbox/checkbox.template.js +35 -7
  140. package/dist/esm/checkbox/checkbox.template.js.map +1 -1
  141. package/dist/esm/compound-button/compound-button.definition.js +0 -3
  142. package/dist/esm/compound-button/compound-button.definition.js.map +1 -1
  143. package/dist/esm/compound-button/compound-button.options.js.map +1 -1
  144. package/dist/esm/compound-button/compound-button.template.js +1 -1
  145. package/dist/esm/compound-button/compound-button.template.js.map +1 -1
  146. package/dist/esm/counter-badge/counter-badge.definition.js +0 -4
  147. package/dist/esm/counter-badge/counter-badge.definition.js.map +1 -1
  148. package/dist/esm/counter-badge/counter-badge.js +1 -1
  149. package/dist/esm/counter-badge/counter-badge.js.map +1 -1
  150. package/dist/esm/divider/divider.js +29 -4
  151. package/dist/esm/divider/divider.js.map +1 -1
  152. package/dist/esm/divider/divider.options.js +14 -5
  153. package/dist/esm/divider/divider.options.js.map +1 -1
  154. package/dist/esm/divider/divider.template.js +12 -1
  155. package/dist/esm/divider/divider.template.js.map +1 -1
  156. package/dist/esm/form-associated/form-associated.js +458 -0
  157. package/dist/esm/form-associated/form-associated.js.map +1 -0
  158. package/dist/esm/menu-button/menu-button.definition.js +0 -3
  159. package/dist/esm/menu-button/menu-button.definition.js.map +1 -1
  160. package/dist/esm/menu-button/menu-button.options.js.map +1 -1
  161. package/dist/esm/menu-button/menu-button.template.js +1 -1
  162. package/dist/esm/menu-button/menu-button.template.js.map +1 -1
  163. package/dist/esm/menu-item/menu-item.definition.js +0 -4
  164. package/dist/esm/menu-item/menu-item.definition.js.map +1 -1
  165. package/dist/esm/menu-item/menu-item.js +270 -4
  166. package/dist/esm/menu-item/menu-item.js.map +1 -1
  167. package/dist/esm/menu-item/menu-item.options.js +27 -0
  168. package/dist/esm/menu-item/menu-item.options.js.map +1 -0
  169. package/dist/esm/menu-item/menu-item.template.js +57 -2
  170. package/dist/esm/menu-item/menu-item.template.js.map +1 -1
  171. package/dist/esm/menu-list/menu-list.definition.js +0 -4
  172. package/dist/esm/menu-list/menu-list.definition.js.map +1 -1
  173. package/dist/esm/menu-list/menu-list.js +265 -10
  174. package/dist/esm/menu-list/menu-list.js.map +1 -1
  175. package/dist/esm/menu-list/menu-list.template.js +13 -1
  176. package/dist/esm/menu-list/menu-list.template.js.map +1 -1
  177. package/dist/esm/patterns/aria-globals.js +77 -0
  178. package/dist/esm/patterns/aria-globals.js.map +1 -0
  179. package/dist/esm/patterns/index.js +3 -0
  180. package/dist/esm/patterns/index.js.map +1 -0
  181. package/dist/esm/patterns/start-end.js +29 -0
  182. package/dist/esm/patterns/start-end.js.map +1 -0
  183. package/dist/esm/progress-bar/base-progress.js +61 -0
  184. package/dist/esm/progress-bar/base-progress.js.map +1 -0
  185. package/dist/esm/progress-bar/progress-bar.js +10 -3
  186. package/dist/esm/progress-bar/progress-bar.js.map +1 -1
  187. package/dist/esm/progress-bar/progress-bar.options.js.map +1 -1
  188. package/dist/esm/progress-bar/progress-bar.template.js +25 -1
  189. package/dist/esm/progress-bar/progress-bar.template.js.map +1 -1
  190. package/dist/esm/progress-ring/progress-ring.js +16 -0
  191. package/dist/esm/progress-ring/progress-ring.js.map +1 -0
  192. package/dist/esm/progress-ring/progress-ring.options.js +2 -0
  193. package/dist/esm/progress-ring/progress-ring.options.js.map +1 -0
  194. package/dist/esm/radio/radio.form-associated.js +14 -0
  195. package/dist/esm/radio/radio.form-associated.js.map +1 -0
  196. package/dist/esm/radio/radio.js +96 -3
  197. package/dist/esm/radio/radio.js.map +1 -1
  198. package/dist/esm/radio/radio.template.js +28 -2
  199. package/dist/esm/radio/radio.template.js.map +1 -1
  200. package/dist/esm/radio-group/index.js +0 -1
  201. package/dist/esm/radio-group/index.js.map +1 -1
  202. package/dist/esm/radio-group/radio-group.js +346 -3
  203. package/dist/esm/radio-group/radio-group.js.map +1 -1
  204. package/dist/esm/radio-group/radio-group.options.js +7 -0
  205. package/dist/esm/radio-group/radio-group.options.js.map +1 -0
  206. package/dist/esm/radio-group/radio-group.template.js +30 -1
  207. package/dist/esm/radio-group/radio-group.template.js.map +1 -1
  208. package/dist/esm/slider/slider-utilities.js +12 -0
  209. package/dist/esm/slider/slider-utilities.js.map +1 -0
  210. package/dist/esm/slider/slider.form-associated.js +14 -0
  211. package/dist/esm/slider/slider.form-associated.js.map +1 -0
  212. package/dist/esm/slider/slider.js +432 -16
  213. package/dist/esm/slider/slider.js.map +1 -1
  214. package/dist/esm/slider/slider.options.js +11 -1
  215. package/dist/esm/slider/slider.options.js.map +1 -1
  216. package/dist/esm/slider/slider.template.js +38 -1
  217. package/dist/esm/slider/slider.template.js.map +1 -1
  218. package/dist/esm/spinner/spinner.definition.js +0 -4
  219. package/dist/esm/spinner/spinner.definition.js.map +1 -1
  220. package/dist/esm/spinner/spinner.js +2 -2
  221. package/dist/esm/spinner/spinner.js.map +1 -1
  222. package/dist/esm/spinner/spinner.template.js +27 -1
  223. package/dist/esm/spinner/spinner.template.js.map +1 -1
  224. package/dist/esm/switch/switch.form-associated.js +14 -0
  225. package/dist/esm/switch/switch.form-associated.js.map +1 -0
  226. package/dist/esm/switch/switch.js +48 -3
  227. package/dist/esm/switch/switch.js.map +1 -1
  228. package/dist/esm/switch/switch.template.js +25 -1
  229. package/dist/esm/switch/switch.template.js.map +1 -1
  230. package/dist/esm/tab/tab.js +14 -3
  231. package/dist/esm/tab/tab.js.map +1 -1
  232. package/dist/esm/tab/tab.template.js +1 -1
  233. package/dist/esm/tab/tab.template.js.map +1 -1
  234. package/dist/esm/tab-panel/tab-panel.js +2 -2
  235. package/dist/esm/tab-panel/tab-panel.js.map +1 -1
  236. package/dist/esm/tab-panel/tab-panel.template.js +8 -1
  237. package/dist/esm/tab-panel/tab-panel.template.js.map +1 -1
  238. package/dist/esm/tabs/tabs.js +278 -5
  239. package/dist/esm/tabs/tabs.js.map +1 -1
  240. package/dist/esm/tabs/tabs.options.js +6 -2
  241. package/dist/esm/tabs/tabs.options.js.map +1 -1
  242. package/dist/esm/tabs/tabs.template.js +14 -1
  243. package/dist/esm/tabs/tabs.template.js.map +1 -1
  244. package/dist/esm/text-input/index.js +0 -1
  245. package/dist/esm/text-input/index.js.map +1 -1
  246. package/dist/esm/text-input/text-field.form-associated.js +14 -0
  247. package/dist/esm/text-input/text-field.form-associated.js.map +1 -0
  248. package/dist/esm/text-input/text-input.js +167 -7
  249. package/dist/esm/text-input/text-input.js.map +1 -1
  250. package/dist/esm/text-input/text-input.options.js +26 -0
  251. package/dist/esm/text-input/text-input.options.js.map +1 -1
  252. package/dist/esm/text-input/text-input.template.js +64 -1
  253. package/dist/esm/text-input/text-input.template.js.map +1 -1
  254. package/dist/esm/toggle-button/toggle-button.definition.js +0 -2
  255. package/dist/esm/toggle-button/toggle-button.definition.js.map +1 -1
  256. package/dist/esm/toggle-button/toggle-button.options.js.map +1 -1
  257. package/dist/esm/toggle-button/toggle-button.template.js +1 -1
  258. package/dist/esm/toggle-button/toggle-button.template.js.map +1 -1
  259. package/dist/esm/utils/direction.js +15 -0
  260. package/dist/esm/utils/direction.js.map +1 -0
  261. package/dist/esm/utils/index.js +5 -0
  262. package/dist/esm/utils/index.js.map +1 -0
  263. package/dist/esm/utils/template-helpers.js +19 -0
  264. package/dist/esm/utils/template-helpers.js.map +1 -0
  265. package/dist/esm/utils/typings.js +3 -0
  266. package/dist/esm/utils/typings.js.map +1 -0
  267. package/dist/esm/utils/whitespace-filter.js +13 -0
  268. package/dist/esm/utils/whitespace-filter.js.map +1 -0
  269. package/dist/fluent-web-components.api.json +9315 -3940
  270. package/dist/storybook/711.b5d63aa3.iframe.bundle.js +2 -0
  271. package/dist/storybook/iframe.html +1 -1
  272. package/dist/storybook/main.588112e6.iframe.bundle.js +2 -0
  273. package/dist/storybook/project.json +1 -1
  274. package/dist/web-components.d.ts +2194 -241
  275. package/dist/web-components.js +1964 -3195
  276. package/dist/web-components.min.js +123 -123
  277. package/docs/api-report.md +600 -90
  278. package/package.json +1 -1
  279. package/dist/storybook/350.e4be85c2.iframe.bundle.js +0 -462
  280. package/dist/storybook/350.e4be85c2.iframe.bundle.js.map +0 -1
  281. package/dist/storybook/main.b095c2e8.iframe.bundle.js +0 -2
  282. /package/dist/storybook/{350.e4be85c2.iframe.bundle.js.LICENSE.txt → 711.b5d63aa3.iframe.bundle.js.LICENSE.txt} +0 -0
  283. /package/dist/storybook/{main.b095c2e8.iframe.bundle.js.LICENSE.txt → main.588112e6.iframe.bundle.js.LICENSE.txt} +0 -0
@@ -0,0 +1,14 @@
1
+ import { FASTElement } from '@microsoft/fast-element';
2
+ import { CheckableFormAssociated } from '../form-associated/form-associated.js';
3
+ class _Switch extends FASTElement {
4
+ }
5
+ /**
6
+ * @beta
7
+ */
8
+ export class FormAssociatedSwitch extends CheckableFormAssociated(_Switch) {
9
+ constructor() {
10
+ super(...arguments);
11
+ this.proxy = document.createElement('input');
12
+ }
13
+ }
14
+ //# sourceMappingURL=switch.form-associated.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"switch.form-associated.js","sourceRoot":"","sources":["../../../src/switch/switch.form-associated.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AACtD,OAAO,EAAE,uBAAuB,EAAE,MAAM,uCAAuC,CAAC;AAEhF,MAAM,OAAQ,SAAQ,WAAW;CAAG;AAIpC;;GAEG;AACH,MAAM,OAAO,oBAAqB,SAAQ,uBAAuB,CAAC,OAAO,CAAC;IAA1E;;QACE,UAAK,GAAG,QAAQ,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;IAC1C,CAAC;CAAA"}
@@ -4,11 +4,56 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
4
4
  else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
5
5
  return c > 3 && r && Object.defineProperty(target, key, r), r;
6
6
  };
7
- import { attr } from '@microsoft/fast-element';
8
- import { FASTSwitch } from '@microsoft/fast-foundation/switch.js';
9
- export class Switch extends FASTSwitch {
7
+ import { attr, observable } from '@microsoft/fast-element';
8
+ import { keyEnter, keySpace } from '@microsoft/fast-web-utilities';
9
+ import { FormAssociatedSwitch } from './switch.form-associated.js';
10
+ export class Switch extends FormAssociatedSwitch {
11
+ constructor() {
12
+ super();
13
+ /**
14
+ * The element's value to be included in form submission when checked.
15
+ * Default to "on" to reach parity with input[type="checkbox"]
16
+ *
17
+ * @internal
18
+ */
19
+ this.initialValue = 'on';
20
+ /**
21
+ * @internal
22
+ */
23
+ this.keypressHandler = (e) => {
24
+ if (this.readOnly) {
25
+ return;
26
+ }
27
+ switch (e.key) {
28
+ case keyEnter:
29
+ case keySpace:
30
+ this.checked = !this.checked;
31
+ break;
32
+ }
33
+ };
34
+ /**
35
+ * @internal
36
+ */
37
+ this.clickHandler = (e) => {
38
+ if (!this.disabled && !this.readOnly) {
39
+ this.checked = !this.checked;
40
+ }
41
+ };
42
+ this.proxy.setAttribute('type', 'checkbox');
43
+ }
44
+ readOnlyChanged() {
45
+ if (this.proxy instanceof HTMLInputElement) {
46
+ this.proxy.readOnly = this.readOnly;
47
+ }
48
+ }
10
49
  }
11
50
  __decorate([
12
51
  attr({ attribute: 'label-position' })
13
52
  ], Switch.prototype, "labelPosition", void 0);
53
+ __decorate([
54
+ attr({ attribute: 'readonly', mode: 'boolean' })
55
+ ], Switch.prototype, "readOnly", void 0);
56
+ __decorate([
57
+ observable
58
+ ], Switch.prototype, "defaultSlottedNodes", void 0);
14
59
  //# sourceMappingURL=switch.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"switch.js","sourceRoot":"","sources":["../../../src/switch/switch.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,yBAAyB,CAAC;AAC/C,OAAO,EAAE,UAAU,EAAE,MAAM,sCAAsC,CAAC;AAGlE,MAAM,OAAO,MAAO,SAAQ,UAAU;CAWrC;AADC;IADC,IAAI,CAAC,EAAE,SAAS,EAAE,gBAAgB,EAAE,CAAC;6CACgB"}
1
+ {"version":3,"file":"switch.js","sourceRoot":"","sources":["../../../src/switch/switch.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AAC3D,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,+BAA+B,CAAC;AAGnE,OAAO,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAC;AAMnE,MAAM,OAAO,MAAO,SAAQ,oBAAoB;IAwC9C;QACE,KAAK,EAAE,CAAC;QAfV;;;;;WAKG;QACI,iBAAY,GAAW,IAAI,CAAC;QAcnC;;WAEG;QACI,oBAAe,GAAG,CAAC,CAAgB,EAAE,EAAE;YAC5C,IAAI,IAAI,CAAC,QAAQ,EAAE;gBACjB,OAAO;aACR;YAED,QAAQ,CAAC,CAAC,GAAG,EAAE;gBACb,KAAK,QAAQ,CAAC;gBACd,KAAK,QAAQ;oBACX,IAAI,CAAC,OAAO,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC;oBAC7B,MAAM;aACT;QACH,CAAC,CAAC;QAEF;;WAEG;QACI,iBAAY,GAAG,CAAC,CAAa,EAAE,EAAE;YACtC,IAAI,CAAC,IAAI,CAAC,QAAQ,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE;gBACpC,IAAI,CAAC,OAAO,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC;aAC9B;QACH,CAAC,CAAC;QA1BA,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;IAC9C,CAAC;IAxBS,eAAe;QACvB,IAAI,IAAI,CAAC,KAAK,YAAY,gBAAgB,EAAE;YAC1C,IAAI,CAAC,KAAK,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC;SACrC;IACH,CAAC;CA8CF;AA5DC;IADC,IAAI,CAAC,EAAE,SAAS,EAAE,gBAAgB,EAAE,CAAC;6CACgB;AAStD;IADC,IAAI,CAAC,EAAE,SAAS,EAAE,UAAU,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;wCACvB;AAmB1B;IADC,UAAU;mDACyB"}
@@ -1,4 +1,28 @@
1
- import { switchTemplate } from '@microsoft/fast-foundation/switch.js';
1
+ import { html, slotted } from '@microsoft/fast-element';
2
+ import { staticallyCompose } from '../utils/index.js';
3
+ export function switchTemplate(options = {}) {
4
+ return html `
5
+ <template
6
+ role="switch"
7
+ aria-checked="${x => x.checked}"
8
+ aria-disabled="${x => x.disabled}"
9
+ aria-readonly="${x => x.readOnly}"
10
+ tabindex="${x => (x.disabled ? null : 0)}"
11
+ @keypress="${(x, c) => x.keypressHandler(c.event)}"
12
+ @click="${(x, c) => x.clickHandler(c.event)}"
13
+ >
14
+ <label
15
+ part="label"
16
+ class="${x => (x.defaultSlottedNodes && x.defaultSlottedNodes.length ? 'label' : 'label label__hidden')}"
17
+ >
18
+ <slot ${slotted('defaultSlottedNodes')}></slot>
19
+ </label>
20
+ <div part="switch" class="switch">
21
+ <slot name="switch">${staticallyCompose(options.switch)}</slot>
22
+ </div>
23
+ </template>
24
+ `;
25
+ }
2
26
  export const template = switchTemplate({
3
27
  switch: `<span class="checked-indicator" part="checked-indicator"></span>`,
4
28
  });
@@ -1 +1 @@
1
- {"version":3,"file":"switch.template.js","sourceRoot":"","sources":["../../../src/switch/switch.template.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,MAAM,sCAAsC,CAAC;AAGtE,MAAM,CAAC,MAAM,QAAQ,GAAgC,cAAc,CAAC;IAClE,MAAM,EAAE,kEAAkE;CAC3E,CAAC,CAAC"}
1
+ {"version":3,"file":"switch.template.js","sourceRoot":"","sources":["../../../src/switch/switch.template.ts"],"names":[],"mappings":"AAAA,OAAO,EAAuB,IAAI,EAAE,OAAO,EAAE,MAAM,yBAAyB,CAAC;AAC7E,OAAO,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AAGtD,MAAM,UAAU,cAAc,CAAmB,UAAyB,EAAE;IAC1E,OAAO,IAAI,CAAG;;;sBAGM,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO;uBACb,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ;uBACf,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ;kBACpB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;mBAC3B,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,KAAsB,CAAC;gBACxD,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,KAAmB,CAAC;;;;iBAI9C,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,mBAAmB,IAAI,CAAC,CAAC,mBAAmB,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,qBAAqB,CAAC;;gBAE/F,OAAO,CAAC,qBAAqB,CAAC;;;8BAGhB,iBAAiB,CAAC,OAAO,CAAC,MAAM,CAAC;;;GAG5D,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,MAAM,QAAQ,GAAgC,cAAc,CAAC;IAClE,MAAM,EAAE,kEAAkE;CAC3E,CAAC,CAAC"}
@@ -1,9 +1,16 @@
1
- import { css } from '@microsoft/fast-element';
2
- import { FASTTab } from '@microsoft/fast-foundation/tab.js';
1
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
2
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
3
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
4
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
5
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
6
+ };
7
+ import { attr, css, FASTElement } from '@microsoft/fast-element';
8
+ import { StartEnd } from '../patterns/index.js';
9
+ import { applyMixins } from '../utils/apply-mixins.js';
3
10
  /**
4
11
  * Tab extends the FASTTab and is a child of the TabList
5
12
  */
6
- export class Tab extends FASTTab {
13
+ export class Tab extends FASTElement {
7
14
  connectedCallback() {
8
15
  super.connectedCallback();
9
16
  if (this.styles !== undefined) {
@@ -17,4 +24,8 @@ export class Tab extends FASTTab {
17
24
  this.$fastController.addStyles(this.styles);
18
25
  }
19
26
  }
27
+ __decorate([
28
+ attr({ mode: 'boolean' })
29
+ ], Tab.prototype, "disabled", void 0);
30
+ applyMixins(Tab, StartEnd);
20
31
  //# sourceMappingURL=tab.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"tab.js","sourceRoot":"","sources":["../../../src/tab/tab.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAiB,MAAM,yBAAyB,CAAC;AAC7D,OAAO,EAAE,OAAO,EAAE,MAAM,mCAAmC,CAAC;AAE5D;;GAEG;AACH,MAAM,OAAO,GAAI,SAAQ,OAAO;IAG9B,iBAAiB;QACf,KAAK,CAAC,iBAAiB,EAAE,CAAC;QAE1B,IAAI,IAAI,CAAC,MAAM,KAAK,SAAS,EAAE;YAC7B,IAAI,CAAC,eAAe,CAAC,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;SAChD;QAED,IAAI,CAAC,MAAM,GAAG,GAAG,CAAA,QAAQ,CAAC;;0BAEJ,IAAI,CAAC,WAAkB;;KAE5C,CAAC;QAEF,IAAI,CAAC,eAAe,CAAC,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAC9C,CAAC;CACF"}
1
+ {"version":3,"file":"tab.js","sourceRoot":"","sources":["../../../src/tab/tab.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,EAAE,IAAI,EAAE,GAAG,EAAiB,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAChF,OAAO,EAAE,QAAQ,EAAmB,MAAM,sBAAsB,CAAC;AACjE,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAQvD;;GAEG;AACH,MAAM,OAAO,GAAI,SAAQ,WAAW;IAYlC,iBAAiB;QACf,KAAK,CAAC,iBAAiB,EAAE,CAAC;QAE1B,IAAI,IAAI,CAAC,MAAM,KAAK,SAAS,EAAE;YAC7B,IAAI,CAAC,eAAe,CAAC,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;SAChD;QAED,IAAI,CAAC,MAAM,GAAG,GAAG,CAAA,QAAQ,CAAC;;0BAEJ,IAAI,CAAC,WAAkB;;KAE5C,CAAC;QAEF,IAAI,CAAC,eAAe,CAAC,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAC9C,CAAC;CACF;AAnBC;IADC,IAAI,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;qCACA;AAuB5B,WAAW,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC"}
@@ -1,5 +1,5 @@
1
- import { endSlotTemplate, startSlotTemplate } from '@microsoft/fast-foundation/patterns.js';
2
1
  import { html } from '@microsoft/fast-element';
2
+ import { endSlotTemplate, startSlotTemplate } from '../patterns/index.js';
3
3
  export function tabTemplate(options = {}) {
4
4
  return html `
5
5
  <template slot="tab" role="tab" aria-disabled="${x => x.disabled}">
@@ -1 +1 @@
1
- {"version":3,"file":"tab.template.js","sourceRoot":"","sources":["../../../src/tab/tab.template.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,iBAAiB,EAAE,MAAM,wCAAwC,CAAC;AAE5F,OAAO,EAAuB,IAAI,EAAE,MAAM,yBAAyB,CAAC;AAEpE,MAAM,UAAU,WAAW,CAAoB,UAAsB,EAAE;IACrE,OAAO,IAAI,CAAG;qDACqC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ;QAC5D,iBAAiB,CAAC,OAAO,CAAC;;QAE1B,eAAe,CAAC,OAAO,CAAC;;GAE7B,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,MAAM,QAAQ,GAAG,WAAW,CAAC,EAAE,CAAC,CAAC"}
1
+ {"version":3,"file":"tab.template.js","sourceRoot":"","sources":["../../../src/tab/tab.template.ts"],"names":[],"mappings":"AAAA,OAAO,EAAuB,IAAI,EAAE,MAAM,yBAAyB,CAAC;AACpE,OAAO,EAAE,eAAe,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAG1E,MAAM,UAAU,WAAW,CAAgB,UAAsB,EAAE;IACjE,OAAO,IAAI,CAAG;qDACqC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ;QAC5D,iBAAiB,CAAC,OAAO,CAAC;;QAE1B,eAAe,CAAC,OAAO,CAAC;;GAE7B,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,MAAM,QAAQ,GAAG,WAAW,CAAC,EAAE,CAAC,CAAC"}
@@ -1,4 +1,4 @@
1
- import { FASTTabPanel } from '@microsoft/fast-foundation/tab-panel.js';
2
- export class TabPanel extends FASTTabPanel {
1
+ import { FASTElement } from '@microsoft/fast-element';
2
+ export class TabPanel extends FASTElement {
3
3
  }
4
4
  //# sourceMappingURL=tab-panel.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"tab-panel.js","sourceRoot":"","sources":["../../../src/tab-panel/tab-panel.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,yCAAyC,CAAC;AAEvE,MAAM,OAAO,QAAS,SAAQ,YAAY;CAAG"}
1
+ {"version":3,"file":"tab-panel.js","sourceRoot":"","sources":["../../../src/tab-panel/tab-panel.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAEtD,MAAM,OAAO,QAAS,SAAQ,WAAW;CAAG"}
@@ -1,3 +1,10 @@
1
- import { tabPanelTemplate } from '@microsoft/fast-foundation/tab-panel.js';
1
+ import { html } from '@microsoft/fast-element';
2
+ export function tabPanelTemplate() {
3
+ return html `
4
+ <template slot="tabpanel" role="tabpanel">
5
+ <slot></slot>
6
+ </template>
7
+ `;
8
+ }
2
9
  export const template = tabPanelTemplate();
3
10
  //# sourceMappingURL=tab-panel.template.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"tab-panel.template.js","sourceRoot":"","sources":["../../../src/tab-panel/tab-panel.template.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,yCAAyC,CAAC;AAE3E,MAAM,CAAC,MAAM,QAAQ,GAAG,gBAAgB,EAAE,CAAC"}
1
+ {"version":3,"file":"tab-panel.template.js","sourceRoot":"","sources":["../../../src/tab-panel/tab-panel.template.ts"],"names":[],"mappings":"AAAA,OAAO,EAAuB,IAAI,EAAE,MAAM,yBAAyB,CAAC;AAGpE,MAAM,UAAU,gBAAgB;IAC9B,OAAO,IAAI,CAAG;;;;GAIb,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,MAAM,QAAQ,GAAG,gBAAgB,EAAE,CAAC"}
@@ -4,16 +4,288 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
4
4
  else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
5
5
  return c > 3 && r && Object.defineProperty(target, key, r), r;
6
6
  };
7
- import { attr, css } from '@microsoft/fast-element';
8
- import { FASTTabs, TabsOrientation } from '@microsoft/fast-foundation/tabs.js';
9
- import { TabsAppearance } from './tabs.options.js';
7
+ import { attr, css, FASTElement, observable } from '@microsoft/fast-element';
8
+ import { keyArrowDown, keyArrowLeft, keyArrowRight, keyArrowUp, keyEnd, keyHome, limit, uniqueId, } from '@microsoft/fast-web-utilities';
9
+ import { applyMixins } from '../utils/apply-mixins.js';
10
+ import { StartEnd } from '../patterns/index.js';
11
+ import { TabsAppearance, TabsOrientation } from './tabs.options.js';
10
12
  /**
11
- * TabList extends FASTTabs and is used for constructing a fluent-tab-list custom html element.
12
13
  *
13
14
  * @class TabList component
14
15
  * @public
15
16
  */
16
- export class Tabs extends FASTTabs {
17
+ export class BaseTabs extends FASTElement {
18
+ constructor() {
19
+ super(...arguments);
20
+ /**
21
+ * The orientation
22
+ * @public
23
+ * @remarks
24
+ * HTML Attribute: orientation
25
+ */
26
+ this.orientation = TabsOrientation.horizontal;
27
+ this.prevActiveTabIndex = 0;
28
+ this.activeTabIndex = 0;
29
+ this.change = () => {
30
+ this.$emit('change', this.activetab);
31
+ };
32
+ this.isDisabledElement = (el) => {
33
+ return el.getAttribute('aria-disabled') === 'true';
34
+ };
35
+ this.isHiddenElement = (el) => {
36
+ return el.hasAttribute('hidden');
37
+ };
38
+ this.isFocusableElement = (el) => {
39
+ return !this.isDisabledElement(el) && !this.isHiddenElement(el);
40
+ };
41
+ this.handleTabClick = (event) => {
42
+ const selectedTab = event.currentTarget;
43
+ if (selectedTab.nodeType === 1 && this.isFocusableElement(selectedTab)) {
44
+ this.prevActiveTabIndex = this.activeTabIndex;
45
+ this.activeTabIndex = this.tabs.indexOf(selectedTab);
46
+ this.setComponent();
47
+ }
48
+ };
49
+ this.handleTabKeyDown = (event) => {
50
+ if (this.isHorizontal()) {
51
+ switch (event.key) {
52
+ case keyArrowLeft:
53
+ event.preventDefault();
54
+ this.adjustBackward(event);
55
+ break;
56
+ case keyArrowRight:
57
+ event.preventDefault();
58
+ this.adjustForward(event);
59
+ break;
60
+ }
61
+ }
62
+ else {
63
+ switch (event.key) {
64
+ case keyArrowUp:
65
+ event.preventDefault();
66
+ this.adjustBackward(event);
67
+ break;
68
+ case keyArrowDown:
69
+ event.preventDefault();
70
+ this.adjustForward(event);
71
+ break;
72
+ }
73
+ }
74
+ switch (event.key) {
75
+ case keyHome:
76
+ event.preventDefault();
77
+ this.adjust(-this.activeTabIndex);
78
+ break;
79
+ case keyEnd:
80
+ event.preventDefault();
81
+ this.adjust(this.tabs.length - this.activeTabIndex - 1);
82
+ break;
83
+ }
84
+ };
85
+ }
86
+ /**
87
+ * @internal
88
+ */
89
+ orientationChanged() {
90
+ if (this.$fastController.isConnected) {
91
+ this.setTabs();
92
+ }
93
+ }
94
+ /**
95
+ * @internal
96
+ */
97
+ activeidChanged(oldValue, newValue) {
98
+ if (this.$fastController.isConnected && this.tabs.length <= this.tabpanels.length) {
99
+ this.prevActiveTabIndex = this.tabs.findIndex((item) => item.id === oldValue);
100
+ this.setTabs();
101
+ }
102
+ }
103
+ /**
104
+ * @internal
105
+ */
106
+ tabsChanged() {
107
+ if (this.$fastController.isConnected && this.tabs.length <= this.tabpanels.length) {
108
+ this.tabIds = this.getTabIds();
109
+ this.tabpanelIds = this.getTabPanelIds();
110
+ this.setTabs();
111
+ }
112
+ }
113
+ /**
114
+ * @internal
115
+ */
116
+ tabpanelsChanged() {
117
+ if (this.$fastController.isConnected && this.tabpanels.length <= this.tabs.length) {
118
+ this.tabIds = this.getTabIds();
119
+ this.tabpanelIds = this.getTabPanelIds();
120
+ this.setTabs();
121
+ }
122
+ }
123
+ getActiveIndex() {
124
+ const id = this.activeid;
125
+ if (id !== undefined) {
126
+ return this.tabIds.indexOf(this.activeid) === -1 ? 0 : this.tabIds.indexOf(this.activeid);
127
+ }
128
+ else {
129
+ return 0;
130
+ }
131
+ }
132
+ /**
133
+ * Function that is invoked whenever the selected tab or the tab collection changes.
134
+ *
135
+ * @public
136
+ */
137
+ setTabs() {
138
+ const gridHorizontalProperty = 'gridColumn';
139
+ const gridVerticalProperty = 'gridRow';
140
+ const gridProperty = this.isHorizontal() ? gridHorizontalProperty : gridVerticalProperty;
141
+ this.activeTabIndex = this.getActiveIndex();
142
+ this.tabs.forEach((tab, index) => {
143
+ if (tab.slot === 'tab') {
144
+ const isActiveTab = this.activeTabIndex === index && this.isFocusableElement(tab);
145
+ const tabId = this.tabIds[index];
146
+ const tabpanelId = this.tabpanelIds[index];
147
+ tab.setAttribute('id', tabId);
148
+ tab.setAttribute('aria-selected', isActiveTab ? 'true' : 'false');
149
+ tab.setAttribute('aria-controls', tabpanelId);
150
+ tab.addEventListener('click', this.handleTabClick);
151
+ tab.addEventListener('keydown', this.handleTabKeyDown);
152
+ tab.setAttribute('tabindex', isActiveTab ? '0' : '-1');
153
+ if (isActiveTab) {
154
+ this.activetab = tab;
155
+ this.activeid = tabId;
156
+ }
157
+ }
158
+ // If the original property isn't emptied out,
159
+ // the next set will morph into a grid-area style setting that is not what we want
160
+ tab.style[gridHorizontalProperty] = '';
161
+ tab.style[gridVerticalProperty] = '';
162
+ tab.style[gridProperty] = `${index + 1}`;
163
+ !this.isHorizontal() ? tab.classList.add('vertical') : tab.classList.remove('vertical');
164
+ });
165
+ this.setTabPanels();
166
+ }
167
+ setTabPanels() {
168
+ this.tabpanels.forEach((tabpanel, index) => {
169
+ const tabId = this.tabIds[index];
170
+ const tabpanelId = this.tabpanelIds[index];
171
+ tabpanel.setAttribute('id', tabpanelId);
172
+ tabpanel.setAttribute('aria-labelledby', tabId);
173
+ this.activeTabIndex !== index ? tabpanel.setAttribute('hidden', '') : tabpanel.removeAttribute('hidden');
174
+ });
175
+ }
176
+ getTabIds() {
177
+ return this.tabs.map((tab) => {
178
+ var _a;
179
+ return (_a = tab.getAttribute('id')) !== null && _a !== void 0 ? _a : `tab-${uniqueId()}`;
180
+ });
181
+ }
182
+ getTabPanelIds() {
183
+ return this.tabpanels.map((tabPanel) => {
184
+ var _a;
185
+ return (_a = tabPanel.getAttribute('id')) !== null && _a !== void 0 ? _a : `panel-${uniqueId()}`;
186
+ });
187
+ }
188
+ setComponent() {
189
+ if (this.activeTabIndex !== this.prevActiveTabIndex) {
190
+ this.activeid = this.tabIds[this.activeTabIndex];
191
+ this.focusTab();
192
+ this.change();
193
+ }
194
+ }
195
+ isHorizontal() {
196
+ return this.orientation === TabsOrientation.horizontal;
197
+ }
198
+ /**
199
+ * The adjust method for FASTTabs
200
+ * @public
201
+ * @remarks
202
+ * This method allows the active index to be adjusted by numerical increments
203
+ */
204
+ adjust(adjustment) {
205
+ const focusableTabs = this.tabs.filter(t => this.isFocusableElement(t));
206
+ const currentActiveTabIndex = focusableTabs.indexOf(this.activetab);
207
+ const nextTabIndex = limit(0, focusableTabs.length - 1, currentActiveTabIndex + adjustment);
208
+ // the index of the next focusable tab within the context of all available tabs
209
+ const nextIndex = this.tabs.indexOf(focusableTabs[nextTabIndex]);
210
+ if (nextIndex > -1) {
211
+ this.moveToTabByIndex(this.tabs, nextIndex);
212
+ }
213
+ }
214
+ adjustForward(e) {
215
+ const group = this.tabs;
216
+ let index = 0;
217
+ index = this.activetab ? group.indexOf(this.activetab) + 1 : 1;
218
+ if (index === group.length) {
219
+ index = 0;
220
+ }
221
+ while (index < group.length && group.length > 1) {
222
+ if (this.isFocusableElement(group[index])) {
223
+ this.moveToTabByIndex(group, index);
224
+ break;
225
+ }
226
+ else if (this.activetab && index === group.indexOf(this.activetab)) {
227
+ break;
228
+ }
229
+ else if (index + 1 >= group.length) {
230
+ index = 0;
231
+ }
232
+ else {
233
+ index += 1;
234
+ }
235
+ }
236
+ }
237
+ adjustBackward(e) {
238
+ const group = this.tabs;
239
+ let index = 0;
240
+ index = this.activetab ? group.indexOf(this.activetab) - 1 : 0;
241
+ index = index < 0 ? group.length - 1 : index;
242
+ while (index >= 0 && group.length > 1) {
243
+ if (this.isFocusableElement(group[index])) {
244
+ this.moveToTabByIndex(group, index);
245
+ break;
246
+ }
247
+ else if (index - 1 < 0) {
248
+ index = group.length - 1;
249
+ }
250
+ else {
251
+ index -= 1;
252
+ }
253
+ }
254
+ }
255
+ moveToTabByIndex(group, index) {
256
+ const tab = group[index];
257
+ this.activetab = tab;
258
+ this.prevActiveTabIndex = this.activeTabIndex;
259
+ this.activeTabIndex = index;
260
+ tab.focus();
261
+ this.setComponent();
262
+ }
263
+ focusTab() {
264
+ this.tabs[this.activeTabIndex].focus();
265
+ }
266
+ /**
267
+ * @internal
268
+ */
269
+ connectedCallback() {
270
+ super.connectedCallback();
271
+ this.tabIds = this.getTabIds();
272
+ this.tabpanelIds = this.getTabPanelIds();
273
+ this.activeTabIndex = this.getActiveIndex();
274
+ }
275
+ }
276
+ __decorate([
277
+ attr
278
+ ], BaseTabs.prototype, "orientation", void 0);
279
+ __decorate([
280
+ attr
281
+ ], BaseTabs.prototype, "activeid", void 0);
282
+ __decorate([
283
+ observable
284
+ ], BaseTabs.prototype, "tabs", void 0);
285
+ __decorate([
286
+ observable
287
+ ], BaseTabs.prototype, "tabpanels", void 0);
288
+ export class Tabs extends BaseTabs {
17
289
  constructor() {
18
290
  super(...arguments);
19
291
  /**
@@ -160,4 +432,5 @@ __decorate([
160
432
  __decorate([
161
433
  attr
162
434
  ], Tabs.prototype, "size", void 0);
435
+ applyMixins(Tabs, StartEnd);
163
436
  //# sourceMappingURL=tabs.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"tabs.js","sourceRoot":"","sources":["../../../src/tabs/tabs.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"tabs.js","sourceRoot":"","sources":["../../../src/tabs/tabs.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import { TabsOrientation } from '@microsoft/fast-foundation/tabs.js';
1
+ import { Orientation } from '@microsoft/fast-web-utilities';
2
2
  export const TabsAppearance = {
3
3
  subtle: 'subtle',
4
4
  transparent: 'transparent',
@@ -8,5 +8,9 @@ export const TabsSize = {
8
8
  medium: 'medium',
9
9
  large: 'large',
10
10
  };
11
- export { TabsOrientation };
11
+ /**
12
+ * The orientation of the component
13
+ * @public
14
+ */
15
+ export const TabsOrientation = Orientation;
12
16
  //# sourceMappingURL=tabs.options.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"tabs.options.js","sourceRoot":"","sources":["../../../src/tabs/tabs.options.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,MAAM,oCAAoC,CAAC;AAErE,MAAM,CAAC,MAAM,cAAc,GAAG;IAC5B,MAAM,EAAE,QAAQ;IAChB,WAAW,EAAE,aAAa;CAClB,CAAC;AAIX,MAAM,CAAC,MAAM,QAAQ,GAAG;IACtB,KAAK,EAAE,OAAO;IACd,MAAM,EAAE,QAAQ;IAChB,KAAK,EAAE,OAAO;CACN,CAAC;AAIX,OAAO,EAAE,eAAe,EAAE,CAAC"}
1
+ {"version":3,"file":"tabs.options.js","sourceRoot":"","sources":["../../../src/tabs/tabs.options.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,+BAA+B,CAAC;AAK5D,MAAM,CAAC,MAAM,cAAc,GAAG;IAC5B,MAAM,EAAE,QAAQ;IAChB,WAAW,EAAE,aAAa;CAClB,CAAC;AAIX,MAAM,CAAC,MAAM,QAAQ,GAAG;IACtB,KAAK,EAAE,OAAO;IACd,MAAM,EAAE,QAAQ;IAChB,KAAK,EAAE,OAAO;CACN,CAAC;AAUX;;;GAGG;AACH,MAAM,CAAC,MAAM,eAAe,GAAG,WAAW,CAAC"}
@@ -1,3 +1,16 @@
1
- import { tabsTemplate } from '@microsoft/fast-foundation/tabs.js';
1
+ import { html, slotted } from '@microsoft/fast-element';
2
+ import { endSlotTemplate, startSlotTemplate } from '../patterns/index.js';
3
+ export function tabsTemplate(options = {}) {
4
+ return html `
5
+ ${startSlotTemplate(options)}
6
+ <div class="tablist" part="tablist" role="tablist">
7
+ <slot name="tab" ${slotted('tabs')}></slot>
8
+ </div>
9
+ ${endSlotTemplate(options)}
10
+ <div class="tabpanel" part="tabpanel">
11
+ <slot name="tabpanel" ${slotted('tabpanels')}></slot>
12
+ </div>
13
+ `;
14
+ }
2
15
  export const template = tabsTemplate({});
3
16
  //# sourceMappingURL=tabs.template.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"tabs.template.js","sourceRoot":"","sources":["../../../src/tabs/tabs.template.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,oCAAoC,CAAC;AAElE,MAAM,CAAC,MAAM,QAAQ,GAAG,YAAY,CAAC,EAAE,CAAC,CAAC"}
1
+ {"version":3,"file":"tabs.template.js","sourceRoot":"","sources":["../../../src/tabs/tabs.template.ts"],"names":[],"mappings":"AAAA,OAAO,EAAuB,IAAI,EAAE,OAAO,EAAE,MAAM,yBAAyB,CAAC;AAC7E,OAAO,EAAE,eAAe,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAI1E,MAAM,UAAU,YAAY,CAAiB,UAAuB,EAAE;IACpE,OAAO,IAAI,CAAG;MACV,iBAAiB,CAAC,OAAO,CAAC;;yBAEP,OAAO,CAAC,MAAM,CAAC;;MAElC,eAAe,CAAC,OAAO,CAAC;;8BAEA,OAAO,CAAC,WAAW,CAAC;;GAE/C,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,MAAM,QAAQ,GAAG,YAAY,CAAC,EAAE,CAAC,CAAC"}
@@ -3,5 +3,4 @@ export * from './text-input.options.js';
3
3
  export { template as TextInputTemplate } from './text-input.template.js';
4
4
  export { styles as TextInputStyles } from './text-input.styles.js';
5
5
  export { definition as TextInputDefinition } from './text-input.definition.js';
6
- export { TextFieldType as TextInputType } from '@microsoft/fast-foundation/text-field.js';
7
6
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/text-input/index.ts"],"names":[],"mappings":"AAAA,cAAc,iBAAiB,CAAC;AAChC,cAAc,yBAAyB,CAAC;AACxC,OAAO,EAAE,QAAQ,IAAI,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AACzE,OAAO,EAAE,MAAM,IAAI,eAAe,EAAE,MAAM,wBAAwB,CAAC;AACnE,OAAO,EAAE,UAAU,IAAI,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AAC/E,OAAO,EAAE,aAAa,IAAI,aAAa,EAAE,MAAM,0CAA0C,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/text-input/index.ts"],"names":[],"mappings":"AAAA,cAAc,iBAAiB,CAAC;AAChC,cAAc,yBAAyB,CAAC;AACxC,OAAO,EAAE,QAAQ,IAAI,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AACzE,OAAO,EAAE,MAAM,IAAI,eAAe,EAAE,MAAM,wBAAwB,CAAC;AACnE,OAAO,EAAE,UAAU,IAAI,mBAAmB,EAAE,MAAM,4BAA4B,CAAC"}
@@ -0,0 +1,14 @@
1
+ import { FASTElement } from '@microsoft/fast-element';
2
+ import { FormAssociated } from '../form-associated/form-associated.js';
3
+ class _TextField extends FASTElement {
4
+ }
5
+ /**
6
+ * @beta
7
+ */
8
+ export class FormAssociatedTextField extends FormAssociated(_TextField) {
9
+ constructor() {
10
+ super(...arguments);
11
+ this.proxy = document.createElement('input');
12
+ }
13
+ }
14
+ //# sourceMappingURL=text-field.form-associated.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"text-field.form-associated.js","sourceRoot":"","sources":["../../../src/text-input/text-field.form-associated.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AACtD,OAAO,EAAE,cAAc,EAAE,MAAM,uCAAuC,CAAC;AAEvE,MAAM,UAAW,SAAQ,WAAW;CAAG;AAIvC;;GAEG;AACH,MAAM,OAAO,uBAAwB,SAAQ,cAAc,CAAC,UAAU,CAAC;IAAvE;;QACE,UAAK,GAAG,QAAQ,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;IAC1C,CAAC;CAAA"}