@fluentui/react-tabs 1.0.0-beta.98 → 9.0.0-beta.11

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 (224) hide show
  1. package/CHANGELOG.json +234 -1765
  2. package/CHANGELOG.md +66 -723
  3. package/README.md +0 -17
  4. package/Spec.md +433 -0
  5. package/dist/index.d.ts +243 -0
  6. package/lib/Tab.d.ts +1 -0
  7. package/lib/Tab.js +2 -0
  8. package/lib/Tab.js.map +1 -0
  9. package/lib/TabList.d.ts +1 -0
  10. package/lib/TabList.js +2 -0
  11. package/lib/TabList.js.map +1 -0
  12. package/lib/components/Tab/Tab.d.ts +6 -0
  13. package/lib/components/Tab/Tab.js +15 -0
  14. package/lib/components/Tab/Tab.js.map +1 -0
  15. package/lib/components/Tab/Tab.types.d.ts +61 -0
  16. package/lib/components/Tab/Tab.types.js +2 -0
  17. package/lib/components/Tab/Tab.types.js.map +1 -0
  18. package/lib/components/Tab/index.d.ts +6 -0
  19. package/lib/components/Tab/index.js +7 -0
  20. package/lib/components/Tab/index.js.map +1 -0
  21. package/lib/components/Tab/renderTab.d.ts +5 -0
  22. package/lib/components/Tab/renderTab.js +17 -0
  23. package/lib/components/Tab/renderTab.js.map +1 -0
  24. package/lib/components/Tab/useTab.d.ts +12 -0
  25. package/lib/components/Tab/useTab.js +81 -0
  26. package/lib/components/Tab/useTab.js.map +1 -0
  27. package/lib/components/Tab/useTabAnimatedIndicator.d.ts +5 -0
  28. package/lib/components/Tab/useTabAnimatedIndicator.js +134 -0
  29. package/lib/components/Tab/useTabAnimatedIndicator.js.map +1 -0
  30. package/lib/components/Tab/useTabStyles.d.ts +8 -0
  31. package/lib/components/Tab/useTabStyles.js +403 -0
  32. package/lib/components/Tab/useTabStyles.js.map +1 -0
  33. package/lib/components/TabList/TabList.d.ts +6 -0
  34. package/lib/components/TabList/TabList.js +17 -0
  35. package/lib/components/TabList/TabList.js.map +1 -0
  36. package/lib/components/TabList/TabList.types.d.ts +104 -0
  37. package/lib/components/TabList/TabList.types.js +2 -0
  38. package/lib/components/TabList/TabList.types.js.map +1 -0
  39. package/lib/components/TabList/TabListContext.d.ts +3 -0
  40. package/lib/components/TabList/TabListContext.js +23 -0
  41. package/lib/components/TabList/TabListContext.js.map +1 -0
  42. package/lib/components/TabList/index.d.ts +5 -0
  43. package/lib/components/TabList/index.js +6 -0
  44. package/lib/components/TabList/index.js.map +1 -0
  45. package/lib/components/TabList/renderTabList.d.ts +5 -0
  46. package/lib/components/TabList/renderTabList.js +18 -0
  47. package/lib/components/TabList/renderTabList.js.map +1 -0
  48. package/lib/components/TabList/useTabList.d.ts +12 -0
  49. package/lib/components/TabList/useTabList.js +81 -0
  50. package/lib/components/TabList/useTabList.js.map +1 -0
  51. package/lib/components/TabList/useTabListContextValues.d.ts +2 -0
  52. package/lib/components/TabList/useTabListContextValues.js +28 -0
  53. package/lib/components/TabList/useTabListContextValues.js.map +1 -0
  54. package/lib/components/TabList/useTabListStyles.d.ts +8 -0
  55. package/lib/components/TabList/useTabListStyles.js +45 -0
  56. package/lib/components/TabList/useTabListStyles.js.map +1 -0
  57. package/lib/index.d.ts +4 -1
  58. package/lib/index.js +2 -1
  59. package/lib/index.js.map +1 -1
  60. package/lib/tsdoc-metadata.json +1 -1
  61. package/lib-commonjs/Tab.d.ts +1 -0
  62. package/lib-commonjs/Tab.js +10 -0
  63. package/lib-commonjs/Tab.js.map +1 -0
  64. package/lib-commonjs/TabList.d.ts +1 -0
  65. package/lib-commonjs/TabList.js +10 -0
  66. package/lib-commonjs/TabList.js.map +1 -0
  67. package/lib-commonjs/components/Tab/Tab.d.ts +6 -0
  68. package/lib-commonjs/components/Tab/Tab.js +26 -0
  69. package/lib-commonjs/components/Tab/Tab.js.map +1 -0
  70. package/lib-commonjs/components/Tab/Tab.types.d.ts +61 -0
  71. package/lib-commonjs/components/Tab/Tab.types.js +6 -0
  72. package/lib-commonjs/components/Tab/Tab.types.js.map +1 -0
  73. package/lib-commonjs/components/Tab/index.d.ts +6 -0
  74. package/lib-commonjs/components/Tab/index.js +20 -0
  75. package/lib-commonjs/components/Tab/index.js.map +1 -0
  76. package/lib-commonjs/components/Tab/renderTab.d.ts +5 -0
  77. package/lib-commonjs/components/Tab/renderTab.js +28 -0
  78. package/lib-commonjs/components/Tab/renderTab.js.map +1 -0
  79. package/lib-commonjs/components/Tab/useTab.d.ts +12 -0
  80. package/lib-commonjs/components/Tab/useTab.js +94 -0
  81. package/lib-commonjs/components/Tab/useTab.js.map +1 -0
  82. package/lib-commonjs/components/Tab/useTabAnimatedIndicator.d.ts +5 -0
  83. package/lib-commonjs/components/Tab/useTabAnimatedIndicator.js +148 -0
  84. package/lib-commonjs/components/Tab/useTabAnimatedIndicator.js.map +1 -0
  85. package/lib-commonjs/components/Tab/useTabStyles.d.ts +8 -0
  86. package/lib-commonjs/components/Tab/useTabStyles.js +416 -0
  87. package/lib-commonjs/components/Tab/useTabStyles.js.map +1 -0
  88. package/lib-commonjs/components/TabList/TabList.d.ts +6 -0
  89. package/lib-commonjs/components/TabList/TabList.js +29 -0
  90. package/lib-commonjs/components/TabList/TabList.js.map +1 -0
  91. package/lib-commonjs/components/TabList/TabList.types.d.ts +104 -0
  92. package/lib-commonjs/components/TabList/TabList.types.js +6 -0
  93. package/lib-commonjs/components/TabList/TabList.types.js.map +1 -0
  94. package/lib-commonjs/components/TabList/TabListContext.d.ts +3 -0
  95. package/lib-commonjs/components/TabList/TabListContext.js +31 -0
  96. package/lib-commonjs/components/TabList/TabListContext.js.map +1 -0
  97. package/lib-commonjs/components/TabList/index.d.ts +5 -0
  98. package/lib-commonjs/components/TabList/index.js +18 -0
  99. package/lib-commonjs/components/TabList/index.js.map +1 -0
  100. package/lib-commonjs/components/TabList/renderTabList.d.ts +5 -0
  101. package/lib-commonjs/components/TabList/renderTabList.js +30 -0
  102. package/lib-commonjs/components/TabList/renderTabList.js.map +1 -0
  103. package/lib-commonjs/components/TabList/useTabList.d.ts +12 -0
  104. package/lib-commonjs/components/TabList/useTabList.js +93 -0
  105. package/lib-commonjs/components/TabList/useTabList.js.map +1 -0
  106. package/lib-commonjs/components/TabList/useTabListContextValues.d.ts +2 -0
  107. package/lib-commonjs/components/TabList/useTabListContextValues.js +37 -0
  108. package/lib-commonjs/components/TabList/useTabListContextValues.js.map +1 -0
  109. package/lib-commonjs/components/TabList/useTabListStyles.d.ts +8 -0
  110. package/lib-commonjs/components/TabList/useTabListStyles.js +55 -0
  111. package/lib-commonjs/components/TabList/useTabListStyles.js.map +1 -0
  112. package/lib-commonjs/index.d.ts +4 -1
  113. package/lib-commonjs/index.js +83 -3
  114. package/lib-commonjs/index.js.map +1 -1
  115. package/package.json +25 -21
  116. package/config/api-extractor.json +0 -3
  117. package/config/tests.js +0 -14
  118. package/dist/react-tabs.d.ts +0 -197
  119. package/etc/react-tabs.api.md +0 -104
  120. package/just.config.ts +0 -3
  121. package/lib/Tabs.d.ts +0 -1
  122. package/lib/Tabs.js +0 -2
  123. package/lib/Tabs.js.map +0 -1
  124. package/lib/common/isConformant.d.ts +0 -2
  125. package/lib/common/isConformant.js +0 -9
  126. package/lib/common/isConformant.js.map +0 -1
  127. package/lib/components/Tabs/TabItem.d.ts +0 -6
  128. package/lib/components/Tabs/TabItem.js +0 -18
  129. package/lib/components/Tabs/TabItem.js.map +0 -1
  130. package/lib/components/Tabs/TabItem.types.d.ts +0 -61
  131. package/lib/components/Tabs/TabItem.types.js +0 -2
  132. package/lib/components/Tabs/TabItem.types.js.map +0 -1
  133. package/lib/components/Tabs/Tabs.base.d.ts +0 -3
  134. package/lib/components/Tabs/Tabs.base.js +0 -179
  135. package/lib/components/Tabs/Tabs.base.js.map +0 -1
  136. package/lib/components/Tabs/Tabs.d.ts +0 -8
  137. package/lib/components/Tabs/Tabs.js +0 -12
  138. package/lib/components/Tabs/Tabs.js.map +0 -1
  139. package/lib/components/Tabs/Tabs.styles.d.ts +0 -2
  140. package/lib/components/Tabs/Tabs.styles.js +0 -264
  141. package/lib/components/Tabs/Tabs.styles.js.map +0 -1
  142. package/lib/components/Tabs/Tabs.types.d.ts +0 -113
  143. package/lib/components/Tabs/Tabs.types.js +0 -2
  144. package/lib/components/Tabs/Tabs.types.js.map +0 -1
  145. package/lib/components/Tabs/index.d.ts +0 -5
  146. package/lib/components/Tabs/index.js +0 -6
  147. package/lib/components/Tabs/index.js.map +0 -1
  148. package/lib/utilities/observeResize.d.ts +0 -21
  149. package/lib/utilities/observeResize.js +0 -46
  150. package/lib/utilities/observeResize.js.map +0 -1
  151. package/lib/utilities/useOverflow.d.ts +0 -45
  152. package/lib/utilities/useOverflow.js +0 -126
  153. package/lib/utilities/useOverflow.js.map +0 -1
  154. package/lib-amd/Tabs.d.ts +0 -1
  155. package/lib-amd/Tabs.js +0 -6
  156. package/lib-amd/Tabs.js.map +0 -1
  157. package/lib-amd/common/isConformant.d.ts +0 -2
  158. package/lib-amd/common/isConformant.js +0 -14
  159. package/lib-amd/common/isConformant.js.map +0 -1
  160. package/lib-amd/components/Tabs/TabItem.d.ts +0 -6
  161. package/lib-amd/components/Tabs/TabItem.js +0 -20
  162. package/lib-amd/components/Tabs/TabItem.js.map +0 -1
  163. package/lib-amd/components/Tabs/TabItem.types.d.ts +0 -61
  164. package/lib-amd/components/Tabs/TabItem.types.js +0 -5
  165. package/lib-amd/components/Tabs/TabItem.types.js.map +0 -1
  166. package/lib-amd/components/Tabs/Tabs.base.d.ts +0 -3
  167. package/lib-amd/components/Tabs/Tabs.base.js +0 -176
  168. package/lib-amd/components/Tabs/Tabs.base.js.map +0 -1
  169. package/lib-amd/components/Tabs/Tabs.d.ts +0 -8
  170. package/lib-amd/components/Tabs/Tabs.js +0 -14
  171. package/lib-amd/components/Tabs/Tabs.js.map +0 -1
  172. package/lib-amd/components/Tabs/Tabs.styles.d.ts +0 -2
  173. package/lib-amd/components/Tabs/Tabs.styles.js +0 -267
  174. package/lib-amd/components/Tabs/Tabs.styles.js.map +0 -1
  175. package/lib-amd/components/Tabs/Tabs.types.d.ts +0 -113
  176. package/lib-amd/components/Tabs/Tabs.types.js +0 -5
  177. package/lib-amd/components/Tabs/Tabs.types.js.map +0 -1
  178. package/lib-amd/components/Tabs/index.d.ts +0 -5
  179. package/lib-amd/components/Tabs/index.js +0 -11
  180. package/lib-amd/components/Tabs/index.js.map +0 -1
  181. package/lib-amd/index.d.ts +0 -1
  182. package/lib-amd/index.js +0 -6
  183. package/lib-amd/index.js.map +0 -1
  184. package/lib-amd/utilities/observeResize.d.ts +0 -21
  185. package/lib-amd/utilities/observeResize.js +0 -51
  186. package/lib-amd/utilities/observeResize.js.map +0 -1
  187. package/lib-amd/utilities/useOverflow.d.ts +0 -45
  188. package/lib-amd/utilities/useOverflow.js +0 -128
  189. package/lib-amd/utilities/useOverflow.js.map +0 -1
  190. package/lib-commonjs/Tabs.d.ts +0 -1
  191. package/lib-commonjs/Tabs.js +0 -5
  192. package/lib-commonjs/Tabs.js.map +0 -1
  193. package/lib-commonjs/common/isConformant.d.ts +0 -2
  194. package/lib-commonjs/common/isConformant.js +0 -13
  195. package/lib-commonjs/common/isConformant.js.map +0 -1
  196. package/lib-commonjs/components/Tabs/TabItem.d.ts +0 -6
  197. package/lib-commonjs/components/Tabs/TabItem.js +0 -21
  198. package/lib-commonjs/components/Tabs/TabItem.js.map +0 -1
  199. package/lib-commonjs/components/Tabs/TabItem.types.d.ts +0 -61
  200. package/lib-commonjs/components/Tabs/TabItem.types.js +0 -3
  201. package/lib-commonjs/components/Tabs/TabItem.types.js.map +0 -1
  202. package/lib-commonjs/components/Tabs/Tabs.base.d.ts +0 -3
  203. package/lib-commonjs/components/Tabs/Tabs.base.js +0 -182
  204. package/lib-commonjs/components/Tabs/Tabs.base.js.map +0 -1
  205. package/lib-commonjs/components/Tabs/Tabs.d.ts +0 -8
  206. package/lib-commonjs/components/Tabs/Tabs.js +0 -15
  207. package/lib-commonjs/components/Tabs/Tabs.js.map +0 -1
  208. package/lib-commonjs/components/Tabs/Tabs.styles.d.ts +0 -2
  209. package/lib-commonjs/components/Tabs/Tabs.styles.js +0 -268
  210. package/lib-commonjs/components/Tabs/Tabs.styles.js.map +0 -1
  211. package/lib-commonjs/components/Tabs/Tabs.types.d.ts +0 -113
  212. package/lib-commonjs/components/Tabs/Tabs.types.js +0 -3
  213. package/lib-commonjs/components/Tabs/Tabs.types.js.map +0 -1
  214. package/lib-commonjs/components/Tabs/index.d.ts +0 -5
  215. package/lib-commonjs/components/Tabs/index.js +0 -11
  216. package/lib-commonjs/components/Tabs/index.js.map +0 -1
  217. package/lib-commonjs/utilities/observeResize.d.ts +0 -21
  218. package/lib-commonjs/utilities/observeResize.js +0 -50
  219. package/lib-commonjs/utilities/observeResize.js.map +0 -1
  220. package/lib-commonjs/utilities/useOverflow.d.ts +0 -45
  221. package/lib-commonjs/utilities/useOverflow.js +0 -130
  222. package/lib-commonjs/utilities/useOverflow.js.map +0 -1
  223. package/src/components/Tabs/TabItem.types.ts +0 -69
  224. package/src/components/Tabs/Tabs.types.ts +0 -131
@@ -0,0 +1,5 @@
1
+ import type { TabState } from './Tab.types';
2
+ /**
3
+ * Adds additional styling to the active tab selection indicator to create a sliding animation.
4
+ */
5
+ export declare const useTabAnimatedIndicatorStyles_unstable: (state: TabState) => TabState;
@@ -0,0 +1,148 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.useTabAnimatedIndicatorStyles_unstable = void 0;
7
+
8
+ const React = /*#__PURE__*/require("react");
9
+
10
+ const react_1 = /*#__PURE__*/require("@griffel/react");
11
+
12
+ const react_context_selector_1 = /*#__PURE__*/require("@fluentui/react-context-selector");
13
+
14
+ const TabListContext_1 = /*#__PURE__*/require("../TabList/TabListContext");
15
+
16
+ const react_theme_1 = /*#__PURE__*/require("@fluentui/react-theme"); // eslint-disable-next-line @typescript-eslint/naming-convention
17
+
18
+
19
+ const tabIndicatorCssVars_unstable = {
20
+ offsetVar: '--fui-Tab__indicator--offset',
21
+ scaleVar: '--fui-Tab__indicator--scale'
22
+ };
23
+
24
+ const useActiveIndicatorStyles = /*#__PURE__*/react_1.__styles({
25
+ "base": {
26
+ "B68tc82": "f1mtd64y",
27
+ "Bmxbyg5": "f1y7q3j9"
28
+ },
29
+ "animated": {
30
+ "wbfbqe": "fopw4to",
31
+ "mafdb0": "f1gswng4",
32
+ "Jgwf15": "fjw9r1k",
33
+ "Bh4j9q1": "f1cif4e6",
34
+ "Gk6w4d": "fa42t5a"
35
+ },
36
+ "horizontal": {
37
+ "Blx6ldh": ["f1g89gis", "fcjnwxz"],
38
+ "xn0juu": "f7m34ad"
39
+ },
40
+ "vertical": {
41
+ "Blx6ldh": "fqfgdei",
42
+ "xn0juu": "fwvsziq"
43
+ }
44
+ }, {
45
+ "d": [".f1mtd64y{overflow-x:visible;}", ".f1y7q3j9{overflow-y:visible;}", ".fopw4to:after{transition-property:transform;}", ".f1gswng4:after{transition-duration:var(--durationSlow);}", ".fjw9r1k:after{transition-timing-function:var(--curveDecelerateMax);}", ".f1g89gis:after{transform-origin:left;}", ".fcjnwxz:after{transform-origin:right;}", ".f7m34ad:after{-webkit-transform:translateX(var(--fui-Tab__indicator--offset)) scaleX(var(--fui-Tab__indicator--scale));-moz-transform:translateX(var(--fui-Tab__indicator--offset)) scaleX(var(--fui-Tab__indicator--scale));-ms-transform:translateX(var(--fui-Tab__indicator--offset)) scaleX(var(--fui-Tab__indicator--scale));transform:translateX(var(--fui-Tab__indicator--offset)) scaleX(var(--fui-Tab__indicator--scale));}", ".fqfgdei:after{transform-origin:top;}", ".fwvsziq:after{-webkit-transform:translateY(var(--fui-Tab__indicator--offset)) scaleY(var(--fui-Tab__indicator--scale));-moz-transform:translateY(var(--fui-Tab__indicator--offset)) scaleY(var(--fui-Tab__indicator--scale));-ms-transform:translateY(var(--fui-Tab__indicator--offset)) scaleY(var(--fui-Tab__indicator--scale));transform:translateY(var(--fui-Tab__indicator--offset)) scaleY(var(--fui-Tab__indicator--scale));}"],
46
+ "t": ["@media (prefers-reduced-motion: reduce){.f1cif4e6:after{transition-property:none;}}", "@media (prefers-reduced-motion: reduce){.fa42t5a:after{transition-duration:0.01ms;}}"]
47
+ });
48
+
49
+ const calculateTabRect = element => {
50
+ var _a;
51
+
52
+ if (element) {
53
+ const parentRect = ((_a = element.parentElement) === null || _a === void 0 ? void 0 : _a.getBoundingClientRect()) || {
54
+ x: 0,
55
+ y: 0,
56
+ width: 0,
57
+ height: 0
58
+ };
59
+ const tabRect = element.getBoundingClientRect();
60
+ return {
61
+ x: tabRect.x - parentRect.x,
62
+ y: tabRect.y - parentRect.y,
63
+ width: tabRect.width,
64
+ height: tabRect.height
65
+ };
66
+ }
67
+
68
+ return undefined;
69
+ };
70
+
71
+ const getRegisteredTabRect = (registeredTabs, value) => {
72
+ var _a;
73
+
74
+ const element = value !== undefined && value !== null ? (_a = registeredTabs[JSON.stringify(value)]) === null || _a === void 0 ? void 0 : _a.ref.current : undefined;
75
+ return element ? calculateTabRect(element) : undefined;
76
+ };
77
+ /**
78
+ * Adds additional styling to the active tab selection indicator to create a sliding animation.
79
+ */
80
+
81
+
82
+ const useTabAnimatedIndicatorStyles_unstable = state => {
83
+ const {
84
+ disabled,
85
+ selected,
86
+ vertical
87
+ } = state;
88
+ const activeIndicatorStyles = useActiveIndicatorStyles();
89
+ const [lastAnimatedFrom, setLastAnimatedFrom] = React.useState();
90
+ const [animationValues, setAnimationValues] = React.useState({
91
+ offset: 0,
92
+ scale: 1
93
+ });
94
+ const getRegisteredTabs = react_context_selector_1.useContextSelector(TabListContext_1.TabListContext, ctx => ctx.getRegisteredTabs);
95
+ React.useEffect(() => {
96
+ if (lastAnimatedFrom) {
97
+ setAnimationValues({
98
+ offset: 0,
99
+ scale: 1
100
+ });
101
+ }
102
+ }, [lastAnimatedFrom]);
103
+
104
+ if (selected) {
105
+ const {
106
+ previousSelectedValue,
107
+ selectedValue,
108
+ registeredTabs
109
+ } = getRegisteredTabs();
110
+ const previousSelectedTabRect = getRegisteredTabRect(registeredTabs, previousSelectedValue);
111
+ const selectedTabRect = getRegisteredTabRect(registeredTabs, selectedValue);
112
+
113
+ if (selectedTabRect && previousSelectedTabRect && previousSelectedValue && lastAnimatedFrom !== previousSelectedValue) {
114
+ const offset = vertical ? previousSelectedTabRect.y - selectedTabRect.y : previousSelectedTabRect.x - selectedTabRect.x;
115
+ const scale = vertical ? previousSelectedTabRect.height / selectedTabRect.height : previousSelectedTabRect.width / selectedTabRect.width;
116
+ setAnimationValues({
117
+ offset,
118
+ scale
119
+ });
120
+ setLastAnimatedFrom(previousSelectedValue);
121
+ }
122
+ } else if (lastAnimatedFrom) {
123
+ // need to clear the last animated from so that if this tab is selected again
124
+ // from the same previous tab as last time, that animation still happens.
125
+ setLastAnimatedFrom(undefined);
126
+ } // do not apply any animation if the tab is disabled
127
+
128
+
129
+ if (disabled) {
130
+ return state;
131
+ } // the animation should only happen as the selection indicator returns to its
132
+ // original position and not when set at the previous tabs position.
133
+
134
+
135
+ const animating = animationValues.offset === 0 && animationValues.scale === 1;
136
+ state.root.className = react_1.mergeClasses(state.root.className, selected && activeIndicatorStyles.base, selected && animating && activeIndicatorStyles.animated, selected && (vertical ? activeIndicatorStyles.vertical : activeIndicatorStyles.horizontal));
137
+ const rootCssVars = {
138
+ [tabIndicatorCssVars_unstable.offsetVar]: `${animationValues.offset}px`,
139
+ [tabIndicatorCssVars_unstable.scaleVar]: `${animationValues.scale}`
140
+ };
141
+ state.root.style = { ...rootCssVars,
142
+ ...state.root.style
143
+ };
144
+ return state;
145
+ };
146
+
147
+ exports.useTabAnimatedIndicatorStyles_unstable = useTabAnimatedIndicatorStyles_unstable;
148
+ //# sourceMappingURL=useTabAnimatedIndicator.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["components/Tab/useTabAnimatedIndicator.ts"],"names":[],"mappings":"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","sourcesContent":["import * as React from 'react';\nimport type { TabState, TabValue } from './Tab.types';\n\nimport { makeStyles, mergeClasses, shorthands } from '@griffel/react';\nimport { useContextSelector } from '@fluentui/react-context-selector';\nimport { TabListContext } from '../TabList/TabListContext';\nimport { TabRegisterData } from '../TabList/TabList.types';\nimport { tokens } from '@fluentui/react-theme';\n\n// eslint-disable-next-line @typescript-eslint/naming-convention\nconst tabIndicatorCssVars_unstable = {\n offsetVar: '--fui-Tab__indicator--offset',\n scaleVar: '--fui-Tab__indicator--scale',\n};\n\nconst useActiveIndicatorStyles = makeStyles({\n base: {\n // overflow is required to allow the selection indicator to animate outside the tab area.\n ...shorthands.overflow('visible'),\n },\n animated: {\n ':after': {\n transitionProperty: 'transform',\n transitionDuration: `${tokens.durationSlow}`,\n transitionTimingFunction: `${tokens.curveDecelerateMax}`,\n },\n '@media (prefers-reduced-motion: reduce)': {\n ':after': {\n transitionProperty: 'none',\n transitionDuration: '0.01ms',\n },\n },\n },\n horizontal: {\n ':after': {\n transformOrigin: 'left',\n transform: `translateX(var(${tabIndicatorCssVars_unstable.offsetVar}))\n scaleX(var(${tabIndicatorCssVars_unstable.scaleVar}))`,\n },\n },\n vertical: {\n ':after': {\n transformOrigin: 'top',\n transform: `translateY(var(${tabIndicatorCssVars_unstable.offsetVar}))\n scaleY(var(${tabIndicatorCssVars_unstable.scaleVar}))`,\n },\n },\n});\n\nconst calculateTabRect = (element: HTMLElement) => {\n if (element) {\n const parentRect = element.parentElement?.getBoundingClientRect() || { x: 0, y: 0, width: 0, height: 0 };\n const tabRect = element.getBoundingClientRect();\n\n return {\n x: tabRect.x - parentRect.x,\n y: tabRect.y - parentRect.y,\n width: tabRect.width,\n height: tabRect.height,\n };\n }\n return undefined;\n};\n\nconst getRegisteredTabRect = (registeredTabs: Record<string, TabRegisterData>, value?: TabValue) => {\n const element =\n value !== undefined && value !== null ? registeredTabs[JSON.stringify(value)]?.ref.current : undefined;\n return element ? calculateTabRect(element) : undefined;\n};\n\n/**\n * Adds additional styling to the active tab selection indicator to create a sliding animation.\n */\nexport const useTabAnimatedIndicatorStyles_unstable = (state: TabState): TabState => {\n const { disabled, selected, vertical } = state;\n\n const activeIndicatorStyles = useActiveIndicatorStyles();\n const [lastAnimatedFrom, setLastAnimatedFrom] = React.useState<TabValue>();\n const [animationValues, setAnimationValues] = React.useState({ offset: 0, scale: 1 });\n const getRegisteredTabs = useContextSelector(TabListContext, ctx => ctx.getRegisteredTabs);\n\n React.useEffect(() => {\n if (lastAnimatedFrom) {\n setAnimationValues({ offset: 0, scale: 1 });\n }\n }, [lastAnimatedFrom]);\n\n if (selected) {\n const { previousSelectedValue, selectedValue, registeredTabs } = getRegisteredTabs();\n const previousSelectedTabRect = getRegisteredTabRect(registeredTabs, previousSelectedValue);\n const selectedTabRect = getRegisteredTabRect(registeredTabs, selectedValue);\n\n if (\n selectedTabRect &&\n previousSelectedTabRect &&\n previousSelectedValue &&\n lastAnimatedFrom !== previousSelectedValue\n ) {\n const offset = vertical\n ? previousSelectedTabRect.y - selectedTabRect.y\n : previousSelectedTabRect.x - selectedTabRect.x;\n\n const scale = vertical\n ? previousSelectedTabRect.height / selectedTabRect.height\n : previousSelectedTabRect.width / selectedTabRect.width;\n\n setAnimationValues({ offset, scale });\n setLastAnimatedFrom(previousSelectedValue);\n }\n } else if (lastAnimatedFrom) {\n // need to clear the last animated from so that if this tab is selected again\n // from the same previous tab as last time, that animation still happens.\n setLastAnimatedFrom(undefined);\n }\n\n // do not apply any animation if the tab is disabled\n if (disabled) {\n return state;\n }\n\n // the animation should only happen as the selection indicator returns to its\n // original position and not when set at the previous tabs position.\n const animating = animationValues.offset === 0 && animationValues.scale === 1;\n\n state.root.className = mergeClasses(\n state.root.className,\n selected && activeIndicatorStyles.base,\n selected && animating && activeIndicatorStyles.animated,\n selected && (vertical ? activeIndicatorStyles.vertical : activeIndicatorStyles.horizontal),\n );\n\n const rootCssVars = {\n [tabIndicatorCssVars_unstable.offsetVar]: `${animationValues.offset}px`,\n [tabIndicatorCssVars_unstable.scaleVar]: `${animationValues.scale}`,\n };\n\n state.root.style = {\n ...rootCssVars,\n ...state.root.style,\n };\n\n return state;\n};\n"],"sourceRoot":"../src/"}
@@ -0,0 +1,8 @@
1
+ import type { TabSlots, TabState } from './Tab.types';
2
+ import { SlotClassNames } from '@fluentui/react-utilities';
3
+ export declare const tabClassNames: SlotClassNames<TabSlots>;
4
+ export declare const tabClassName: string;
5
+ /**
6
+ * Apply styling to the Tab slots based on the state
7
+ */
8
+ export declare const useTabStyles_unstable: (state: TabState) => TabState;
@@ -0,0 +1,416 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.useTabStyles_unstable = exports.tabClassName = exports.tabClassNames = void 0;
7
+
8
+ const react_1 = /*#__PURE__*/require("@griffel/react");
9
+
10
+ const react_tabster_1 = /*#__PURE__*/require("@fluentui/react-tabster");
11
+
12
+ const react_theme_1 = /*#__PURE__*/require("@fluentui/react-theme");
13
+
14
+ const useTabAnimatedIndicator_1 = /*#__PURE__*/require("./useTabAnimatedIndicator");
15
+
16
+ exports.tabClassNames = {
17
+ root: 'fui-Tab',
18
+ icon: 'fui-Tab__icon',
19
+ content: 'fui-Tab__content'
20
+ }; // TODO temporary export to pass conformance test.
21
+
22
+ exports.tabClassName = exports.tabClassNames.root;
23
+ /**
24
+ * Styles for the root slot
25
+ */
26
+
27
+ /* eslint-disable @typescript-eslint/naming-convention */
28
+
29
+ const useRootStyles = /*#__PURE__*/react_1.__styles({
30
+ "base": {
31
+ "Bt984gj": "f122n59",
32
+ "g2u3we": "fwhevhj",
33
+ "h3c5rm": ["f61n433", "f1q8l70w"],
34
+ "B9xav0g": "fv1dfc8",
35
+ "zhjwy3": ["f1q8l70w", "f61n433"],
36
+ "Bbmb7ep": ["f1aa9q02", "f16jpd5f"],
37
+ "Beyfa6y": ["f16jpd5f", "f1aa9q02"],
38
+ "B7oj6ja": ["f1jar5jt", "fyu767a"],
39
+ "Btl43ni": ["fyu767a", "f1jar5jt"],
40
+ "B4j52fo": "fre7gi1",
41
+ "Bekrc4i": ["f1358rze", "f1rvrf73"],
42
+ "Bn0qgzm": "fqdk4by",
43
+ "ibv6hh": ["f1rvrf73", "f1358rze"],
44
+ "Bceei9c": "f1k6fduh",
45
+ "mc9l5x": "f22iagw",
46
+ "Beiy3e4": "f1063pyq",
47
+ "Bnnss6s": "fi64zpg",
48
+ "Bahqtrf": "fk6fouc",
49
+ "Bg96gwp": "f1i3iumi",
50
+ "oeaueh": "f1s6fcnf",
51
+ "qhf8xq": "f10pi13n",
52
+ "B68tc82": "f1p9o1ba",
53
+ "Bmxbyg5": "f1sil6mw",
54
+ "B9bfxx9": "f1cxpek8"
55
+ },
56
+ "mediumHorizontal": {
57
+ "i8kkvl": "f1rjii52",
58
+ "Brf1p80": "f4d9j23",
59
+ "z8tnut": "f5yzyt",
60
+ "z189sj": ["f11gcy0p", "f1ng84yb"],
61
+ "Byoj8tv": "fx3omr",
62
+ "uwmqm3": ["f1ng84yb", "f11gcy0p"]
63
+ },
64
+ "mediumVertical": {
65
+ "i8kkvl": "f1rjii52",
66
+ "Brf1p80": "fbhxue7",
67
+ "Bf4jedk": "fyvtabn",
68
+ "z8tnut": "fp2oml8",
69
+ "z189sj": ["f11gcy0p", "f1ng84yb"],
70
+ "Byoj8tv": "f1tdddsa",
71
+ "uwmqm3": ["f1ng84yb", "f11gcy0p"]
72
+ },
73
+ "smallHorizontal": {
74
+ "i8kkvl": "f14mj54c",
75
+ "z8tnut": "fp2oml8",
76
+ "z189sj": ["fdw0yi8", "fk8j09s"],
77
+ "Byoj8tv": "f1tdddsa",
78
+ "uwmqm3": ["fk8j09s", "fdw0yi8"]
79
+ },
80
+ "smallVertical": {
81
+ "i8kkvl": "f14mj54c",
82
+ "z8tnut": "fclwglc",
83
+ "z189sj": ["fdw0yi8", "fk8j09s"],
84
+ "Byoj8tv": "fywfov9",
85
+ "uwmqm3": ["fk8j09s", "fdw0yi8"]
86
+ },
87
+ "transparent": {
88
+ "De3pzq": "f1c21dwh",
89
+ "Jwef8y": "fjxutwb",
90
+ "ecr2s2": "fophhak",
91
+ "Bptxc3x": "fmmjozx",
92
+ "B076xvk": "f1mfqf41",
93
+ "q9r9w5": "f10aiid4",
94
+ "cl4aha": "fpkze5g",
95
+ "Bk452zc": "f149wc3x",
96
+ "a4hkcw": "fjioou7"
97
+ },
98
+ "subtle": {
99
+ "De3pzq": "fhovq9v",
100
+ "Jwef8y": "f1t94bn6",
101
+ "ecr2s2": "f1wfn5kd",
102
+ "Bptxc3x": "fmmjozx",
103
+ "B076xvk": "f1mfqf41",
104
+ "q9r9w5": "f10aiid4",
105
+ "cl4aha": "fpkze5g",
106
+ "Bk452zc": "f149wc3x",
107
+ "a4hkcw": "fjioou7"
108
+ },
109
+ "disabled": {
110
+ "De3pzq": "f1c21dwh",
111
+ "Bptxc3x": "fato7r6",
112
+ "cl4aha": "fao1bnu",
113
+ "Bceei9c": "fdrzuqr"
114
+ },
115
+ "selected": {
116
+ "Bptxc3x": "f1cadz5z",
117
+ "B076xvk": "f1ck17l",
118
+ "q9r9w5": "f42ak0g",
119
+ "cl4aha": "ffplhdr",
120
+ "Bk452zc": "ffth601",
121
+ "a4hkcw": "fhklyu5"
122
+ }
123
+ }, {
124
+ "d": [".f122n59{-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;}", ".fwhevhj{border-top-color:none;}", ".f61n433{border-right-color:none;}", ".f1q8l70w{border-left-color:none;}", ".fv1dfc8{border-bottom-color:none;}", ".f1aa9q02{border-bottom-right-radius:var(--borderRadiusMedium);}", ".f16jpd5f{border-bottom-left-radius:var(--borderRadiusMedium);}", ".f1jar5jt{border-top-right-radius:var(--borderRadiusMedium);}", ".fyu767a{border-top-left-radius:var(--borderRadiusMedium);}", ".fre7gi1{border-top-width:0;}", ".f1358rze{border-right-width:0;}", ".f1rvrf73{border-left-width:0;}", ".fqdk4by{border-bottom-width:0;}", ".f1k6fduh{cursor:pointer;}", ".f22iagw{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;}", ".f1063pyq{-webkit-flex-direction:row;-ms-flex-direction:row;flex-direction:row;}", ".fi64zpg{-webkit-flex-shrink:0;-ms-flex-negative:0;flex-shrink:0;}", ".fk6fouc{font-family:var(--fontFamilyBase);}", ".f1i3iumi{line-height:var(--lineHeightBase300);}", ".f1s6fcnf{outline-style:none;}", ".f10pi13n{position:relative;}", ".f1p9o1ba{overflow-x:hidden;}", ".f1sil6mw{overflow-y:hidden;}", ".f1cxpek8{text-transform:none;}", ".f1rjii52{-webkit-column-gap:var(--spacingHorizontalSNudge);column-gap:var(--spacingHorizontalSNudge);}", ".f4d9j23{-webkit-box-pack:center;-ms-flex-pack:center;-webkit-justify-content:center;justify-content:center;}", ".f5yzyt{padding-top:var(--spacingVerticalM);}", ".f11gcy0p{padding-right:var(--spacingHorizontalMNudge);}", ".f1ng84yb{padding-left:var(--spacingHorizontalMNudge);}", ".fx3omr{padding-bottom:var(--spacingVerticalM);}", ".fbhxue7{-webkit-box-pack:start;-ms-flex-pack:start;-webkit-justify-content:flex-start;justify-content:flex-start;}", ".fyvtabn{min-width:120px;}", ".fp2oml8{padding-top:var(--spacingVerticalSNudge);}", ".f1tdddsa{padding-bottom:var(--spacingVerticalSNudge);}", ".f14mj54c{-webkit-column-gap:var(--spacingHorizontalXXS);column-gap:var(--spacingHorizontalXXS);}", ".fdw0yi8{padding-right:var(--spacingHorizontalSNudge);}", ".fk8j09s{padding-left:var(--spacingHorizontalSNudge);}", ".fclwglc{padding-top:var(--spacingVerticalXXS);}", ".fywfov9{padding-bottom:var(--spacingVerticalXXS);}", ".f1c21dwh{background-color:var(--colorTransparentBackground);}", ".fmmjozx .fui-Tab__icon{color:var(--colorNeutralForeground2);}", ".fpkze5g .fui-Tab__content{color:var(--colorNeutralForeground2);}", ".fhovq9v{background-color:var(--colorSubtleBackground);}", ".fato7r6 .fui-Tab__icon{color:var(--colorNeutralForegroundDisabled);}", ".fao1bnu .fui-Tab__content{color:var(--colorNeutralForegroundDisabled);}", ".fdrzuqr{cursor:not-allowed;}", ".f1cadz5z .fui-Tab__icon{color:var(--colorCompoundBrandForeground1);}", ".ffplhdr .fui-Tab__content{color:var(--colorNeutralForeground1);}"],
125
+ "h": [".fjxutwb:hover{background-color:var(--colorTransparentBackgroundHover);}", ".f1mfqf41:hover .fui-Tab__icon{color:var(--colorNeutralForeground2Hover);}", ".f149wc3x:hover .fui-Tab__content{color:var(--colorNeutralForeground2Hover);}", ".f1t94bn6:hover{background-color:var(--colorSubtleBackgroundHover);}", ".f1ck17l:hover .fui-Tab__icon{color:var(--colorCompoundBrandForeground1Hover);}", ".ffth601:hover .fui-Tab__content{color:var(--colorNeutralForeground1Hover);}"],
126
+ "a": [".fophhak:active{background-color:var(--colorTransparentBackgroundPressed);}", ".f10aiid4:active .fui-Tab__icon{color:var(--colorNeutralForeground2Pressed);}", ".fjioou7:active .fui-Tab__content{color:var(--colorNeutralForeground2Pressed);}", ".f1wfn5kd:active{background-color:var(--colorSubtleBackgroundPressed);}", ".f42ak0g:active .fui-Tab__icon{color:var(--colorCompoundBrandForeground1Pressed);}", ".fhklyu5:active .fui-Tab__content{color:var(--colorNeutralForeground1Pressed);}"]
127
+ });
128
+ /* eslint-enable @typescript-eslint/naming-convention */
129
+
130
+ /**
131
+ * Focus styles for the root slot
132
+ */
133
+
134
+
135
+ const useFocusStyles = /*#__PURE__*/react_1.__styles({
136
+ "base": {
137
+ "B486eqv": "f2hkw1w",
138
+ "Bnmjwt4": "flfsvnh",
139
+ "Jopkrh": ["f1781m5e", "flvaaa9"],
140
+ "hhrs2v": "f50u1b5",
141
+ "B7jbng7": ["flvaaa9", "f1781m5e"],
142
+ "B32s92o": "fgeg2qa",
143
+ "Bh48x57": "f19j8a82",
144
+ "B5hngm5": "fhcq1yo",
145
+ "D4py6b": "f1gkya50",
146
+ "Bgwpjed": "fpt6wn7"
147
+ }
148
+ }, {
149
+ "i": [".f2hkw1w:focus-visible{outline-style:none;}"],
150
+ "d": ["[data-keyboard-nav] .flfsvnh:focus{border-top-color:transparent;}", "[data-keyboard-nav] .f1781m5e:focus{border-right-color:transparent;}", "[data-keyboard-nav] .flvaaa9:focus{border-left-color:transparent;}", "[data-keyboard-nav] .f50u1b5:focus{border-bottom-color:transparent;}", "[data-keyboard-nav] .fgeg2qa:focus{outline-width:var(--strokeWidthThick);}", "[data-keyboard-nav] .f19j8a82:focus{outline-color:transparent;}", "[data-keyboard-nav] .fhcq1yo:focus{outline-style:solid;}", "[data-keyboard-nav] .f1gkya50:focus{box-shadow:var(--shadow4),0 0 0 var(--strokeWidthThick) var(--colorStrokeFocus2);}", "[data-keyboard-nav] .fpt6wn7:focus{z-index:1;}"]
151
+ });
152
+ /** Indicator styles for when pending selection */
153
+
154
+
155
+ const usePendingIndicatorStyles = /*#__PURE__*/react_1.__styles({
156
+ "base": {
157
+ "az7l2e": "f1en1q2u",
158
+ "Ewkbr9": "f1k6j818",
159
+ "B82ziue": ["fuksyai", "ft3obag"],
160
+ "B5vr1qa": "f1pf7yz1",
161
+ "Bly3rvn": ["ft3obag", "fuksyai"],
162
+ "Bo3r8zu": "f1w2y1rc",
163
+ "Hpvxnh": ["f1gofhvl", "f18htlvq"],
164
+ "Bx11ytk": "fmj5o30",
165
+ "B1rg0w0": ["f18htlvq", "f1gofhvl"],
166
+ "Bv4n3vi": ["f10y1uxy", "f6aiuy0"],
167
+ "vqofr": ["f6aiuy0", "f10y1uxy"],
168
+ "B0uxbk8": ["f1kfpfnu", "f1dx5wco"],
169
+ "Bgqb9hq": ["f1dx5wco", "f1kfpfnu"],
170
+ "g0koyt": "flavhbd",
171
+ "amg5m6": "f1kmhr4c",
172
+ "zkfqfm": "fl1ydde",
173
+ "Bkydozb": "fgv4l33",
174
+ "Bve7jt4": "f1c6521h",
175
+ "Dnitkm": ["f1wuxlei", "f1sgdlzs"],
176
+ "Bf38x9m": "f2jhn7t",
177
+ "wguk8y": ["f1sgdlzs", "f1wuxlei"],
178
+ "vot02b": "f4qfhqc",
179
+ "Bk5rshv": ["f15hpu67", "f4z2jj6"],
180
+ "Bfh7x2i": "f1gpo00o",
181
+ "g1lt9r": ["f4z2jj6", "f15hpu67"],
182
+ "vzq8l0": ["f105swax", "fscdmel"],
183
+ "Bka2azo": ["fscdmel", "f105swax"],
184
+ "Br4ovkg": ["f1tkcw1w", "f1u11x8o"],
185
+ "csmgbd": ["f1u11x8o", "f1tkcw1w"],
186
+ "Bxvbc28": "f17b494j",
187
+ "y36c18": "f16cxu0",
188
+ "B1ctymy": "f1nwgacf"
189
+ },
190
+ "disabled": {
191
+ "Bo3r8zu": "fw4ani8",
192
+ "Hpvxnh": ["f16d985o", "f6tcbgz"],
193
+ "Bx11ytk": "f1b8a0pq",
194
+ "B1rg0w0": ["f6tcbgz", "f16d985o"],
195
+ "vot02b": "fjs3nuh",
196
+ "Bk5rshv": ["f1di1kpg", "furcot2"],
197
+ "Bfh7x2i": "f2pqeb2",
198
+ "g1lt9r": ["furcot2", "f1di1kpg"]
199
+ },
200
+ "mediumHorizontal": {
201
+ "lawp4y": "fchca7p",
202
+ "B0qfbqy": "f1kvmim2",
203
+ "B4f6apu": ["f1m7sk04", "frl2ks5"],
204
+ "y0oebl": "f95p06y",
205
+ "uvfttm": ["frl2ks5", "f1m7sk04"],
206
+ "Baz25je": "f1kz84di",
207
+ "Fbdkly": ["f1o0nnkk", "fxb7rol"],
208
+ "mdwyqc": ["fxb7rol", "f1o0nnkk"]
209
+ },
210
+ "mediumVertical": {
211
+ "lawp4y": "f17jracn",
212
+ "B0qfbqy": "f1kvmim2",
213
+ "B4f6apu": ["f1m7sk04", "frl2ks5"],
214
+ "y0oebl": "f95p06y",
215
+ "uvfttm": ["frl2ks5", "f1m7sk04"],
216
+ "Fbdkly": ["f1fzr1x6", "f1f351id"],
217
+ "Bciustq": "f117lcb2",
218
+ "Ccq8qp": "f13zdgtj"
219
+ },
220
+ "smallHorizontal": {
221
+ "lawp4y": "fchca7p",
222
+ "B0qfbqy": "f1yrrkkt",
223
+ "B4f6apu": ["f70k5xa", "fezrrg8"],
224
+ "y0oebl": "f1qe1oji",
225
+ "uvfttm": ["fezrrg8", "f70k5xa"],
226
+ "Baz25je": "f1kz84di",
227
+ "Fbdkly": ["f1s6rxz5", "fo35v8s"],
228
+ "mdwyqc": ["fo35v8s", "f1s6rxz5"]
229
+ },
230
+ "smallVertical": {
231
+ "lawp4y": "fze4zud",
232
+ "B0qfbqy": "f1kvmim2",
233
+ "B4f6apu": ["f1m7sk04", "frl2ks5"],
234
+ "y0oebl": "f95p06y",
235
+ "uvfttm": ["frl2ks5", "f1m7sk04"],
236
+ "Fbdkly": ["f1fzr1x6", "f1f351id"],
237
+ "Bciustq": "fdp32p8",
238
+ "Ccq8qp": "f13zdgtj"
239
+ }
240
+ }, {
241
+ "h": [".f1en1q2u:hover::before{background-color:none;}", ".f1k6j818:hover::before{border-top-style:solid;}", ".fuksyai:hover::before{border-right-style:solid;}", ".ft3obag:hover::before{border-left-style:solid;}", ".f1pf7yz1:hover::before{border-bottom-style:solid;}", ".f1w2y1rc:hover::before{border-top-color:var(--colorNeutralStroke1Hover);}", ".f1gofhvl:hover::before{border-right-color:var(--colorNeutralStroke1Hover);}", ".f18htlvq:hover::before{border-left-color:var(--colorNeutralStroke1Hover);}", ".fmj5o30:hover::before{border-bottom-color:var(--colorNeutralStroke1Hover);}", ".f10y1uxy:hover::before{border-bottom-right-radius:var(--borderRadiusCircular);}", ".f6aiuy0:hover::before{border-bottom-left-radius:var(--borderRadiusCircular);}", ".f1kfpfnu:hover::before{border-top-right-radius:var(--borderRadiusCircular);}", ".f1dx5wco:hover::before{border-top-left-radius:var(--borderRadiusCircular);}", ".flavhbd:hover::before{box-sizing:border-box;}", ".f1kmhr4c:hover::before{content:\"\";}", ".fl1ydde:hover::before{position:absolute;}", ".fw4ani8:hover::before{border-top-color:var(--colorTransparentStroke);}", ".f16d985o:hover::before{border-right-color:var(--colorTransparentStroke);}", ".f6tcbgz:hover::before{border-left-color:var(--colorTransparentStroke);}", ".f1b8a0pq:hover::before{border-bottom-color:var(--colorTransparentStroke);}"],
242
+ "a": [".fgv4l33:active::before{background-color:none;}", ".f1c6521h:active::before{border-top-style:solid;}", ".f1wuxlei:active::before{border-right-style:solid;}", ".f1sgdlzs:active::before{border-left-style:solid;}", ".f2jhn7t:active::before{border-bottom-style:solid;}", ".f4qfhqc:active::before{border-top-color:var(--colorNeutralStroke1Pressed);}", ".f15hpu67:active::before{border-right-color:var(--colorNeutralStroke1Pressed);}", ".f4z2jj6:active::before{border-left-color:var(--colorNeutralStroke1Pressed);}", ".f1gpo00o:active::before{border-bottom-color:var(--colorNeutralStroke1Pressed);}", ".f105swax:active::before{border-bottom-right-radius:var(--borderRadiusCircular);}", ".fscdmel:active::before{border-bottom-left-radius:var(--borderRadiusCircular);}", ".f1tkcw1w:active::before{border-top-right-radius:var(--borderRadiusCircular);}", ".f1u11x8o:active::before{border-top-left-radius:var(--borderRadiusCircular);}", ".f17b494j:active::before{box-sizing:border-box;}", ".f16cxu0:active::before{content:\"\";}", ".f1nwgacf:active::before{position:absolute;}", ".fjs3nuh:active::before{border-top-color:var(--colorTransparentStroke);}", ".f1di1kpg:active::before{border-right-color:var(--colorTransparentStroke);}", ".furcot2:active::before{border-left-color:var(--colorTransparentStroke);}", ".f2pqeb2:active::before{border-bottom-color:var(--colorTransparentStroke);}"],
243
+ "d": [".fchca7p::before{bottom:0;}", ".f1kvmim2::before{border-top-width:calc(var(--strokeWidthThicker) / 2.0);}", ".f1m7sk04::before{border-right-width:calc(var(--strokeWidthThicker) / 2.0);}", ".frl2ks5::before{border-left-width:calc(var(--strokeWidthThicker) / 2.0);}", ".f95p06y::before{border-bottom-width:calc(var(--strokeWidthThicker) / 2.0);}", ".f1kz84di::before{height:0;}", ".f1o0nnkk::before{left:var(--spacingHorizontalM);}", ".fxb7rol::before{right:var(--spacingHorizontalM);}", ".f17jracn::before{bottom:var(--spacingVerticalS);}", ".f1fzr1x6::before{left:0;}", ".f1f351id::before{right:0;}", ".f117lcb2::before{top:var(--spacingVerticalS);}", ".f13zdgtj::before{width:0;}", ".f1yrrkkt::before{border-top-width:calc(var(--strokeWidthThick) / 2.0);}", ".f70k5xa::before{border-right-width:calc(var(--strokeWidthThick) / 2.0);}", ".fezrrg8::before{border-left-width:calc(var(--strokeWidthThick) / 2.0);}", ".f1qe1oji::before{border-bottom-width:calc(var(--strokeWidthThick) / 2.0);}", ".f1s6rxz5::before{left:var(--spacingHorizontalSNudge);}", ".fo35v8s::before{right:var(--spacingHorizontalSNudge);}", ".fze4zud::before{bottom:var(--spacingVerticalXS);}", ".fdp32p8::before{top:var(--spacingVerticalXS);}"]
244
+ });
245
+
246
+ const useActiveIndicatorStyles = /*#__PURE__*/react_1.__styles({
247
+ "base": {
248
+ "B0n5ga8": "f16gxe2i",
249
+ "s924m2": ["fpgykix", "fzybk4o"],
250
+ "B1q35kw": "f1osi826",
251
+ "Gp14am": ["fzybk4o", "fpgykix"],
252
+ "Bm2nyyq": "f8rth92",
253
+ "Barhvk9": ["flthirb", "ftkbnf5"],
254
+ "Bw17bha": "f1lh990p",
255
+ "vfts7": ["ftkbnf5", "flthirb"],
256
+ "B3778ie": ["fprarqb", "f14vs0nd"],
257
+ "d9w3h3": ["f14vs0nd", "fprarqb"],
258
+ "Bl18szs": ["f1gtfqs9", "f18zvfd9"],
259
+ "B4j8arr": ["f18zvfd9", "f1gtfqs9"],
260
+ "li1rpt": "f1gw3sf2",
261
+ "Bsft5z2": "f13zj6fq",
262
+ "E3zdtr": "f1mdlcz9",
263
+ "t2ki1e": "ffmd2fr"
264
+ },
265
+ "selected": {
266
+ "B0n5ga8": "ff21voz",
267
+ "s924m2": ["f13e2re1", "fr799w5"],
268
+ "B1q35kw": "f1jc6hxc",
269
+ "Gp14am": ["fr799w5", "f13e2re1"],
270
+ "Be0v6ae": "f183gc6g",
271
+ "B5kxglz": ["f9bu0jf", "f1gl5qk4"],
272
+ "B3pwyw6": "f1bsp7n4",
273
+ "Bymgtzf": ["f1gl5qk4", "f9bu0jf"],
274
+ "dmfk": "f9opluq",
275
+ "B4ofi8": ["f1efh3oj", "f14e19o9"],
276
+ "jgq6uv": "f73i0vf",
277
+ "Baxewws": ["f14e19o9", "f1efh3oj"]
278
+ },
279
+ "disabled": {
280
+ "B0n5ga8": "f1meqbmf",
281
+ "s924m2": ["f1uv8s8a", "fl4jjo8"],
282
+ "B1q35kw": "f1jzbv2r",
283
+ "Gp14am": ["fl4jjo8", "f1uv8s8a"]
284
+ },
285
+ "mediumHorizontal": {
286
+ "By385i5": "fo72kxq",
287
+ "xrcqlc": "f1o9a6jw",
288
+ "Ihftqj": ["fo3g43a", "fx9b69t"],
289
+ "Bcgy8vk": "fe59e93",
290
+ "Bhxzhr1": ["fx9b69t", "fo3g43a"],
291
+ "Dlnsje": "f1aztngc",
292
+ "Eqx8gd": ["fna7m5n", "f1oxpfwv"],
293
+ "B1piin3": ["f1oxpfwv", "fna7m5n"]
294
+ },
295
+ "mediumVertical": {
296
+ "By385i5": "fipylg0",
297
+ "xrcqlc": "f1o9a6jw",
298
+ "Ihftqj": ["fo3g43a", "fx9b69t"],
299
+ "Bcgy8vk": "fe59e93",
300
+ "Bhxzhr1": ["fx9b69t", "fo3g43a"],
301
+ "Eqx8gd": ["f1n6gb5g", "f15yvnhg"],
302
+ "bn5sak": "fqchiol",
303
+ "a2br6o": "f1x60ewe"
304
+ },
305
+ "smallHorizontal": {
306
+ "By385i5": "fo72kxq",
307
+ "xrcqlc": "fchc3a4",
308
+ "Ihftqj": ["f1g9ny6e", "f1faeqkd"],
309
+ "Bcgy8vk": "f2swisw",
310
+ "Bhxzhr1": ["f1faeqkd", "f1g9ny6e"],
311
+ "Dlnsje": "f1aztngc",
312
+ "Eqx8gd": ["f1q70ajw", "f18rbzdx"],
313
+ "B1piin3": ["f18rbzdx", "f1q70ajw"]
314
+ },
315
+ "smallVertical": {
316
+ "By385i5": "fqbue9b",
317
+ "xrcqlc": "f1o9a6jw",
318
+ "Ihftqj": ["fo3g43a", "fx9b69t"],
319
+ "Bcgy8vk": "fe59e93",
320
+ "Bhxzhr1": ["fx9b69t", "fo3g43a"],
321
+ "Eqx8gd": ["f1n6gb5g", "f15yvnhg"],
322
+ "bn5sak": "fk1klkt",
323
+ "a2br6o": "f1x60ewe"
324
+ }
325
+ }, {
326
+ "d": [".f16gxe2i::after{border-top-color:var(--colorTransparentStroke);}", ".fpgykix::after{border-right-color:var(--colorTransparentStroke);}", ".fzybk4o::after{border-left-color:var(--colorTransparentStroke);}", ".f1osi826::after{border-bottom-color:var(--colorTransparentStroke);}", ".f8rth92::after{border-top-style:solid;}", ".flthirb::after{border-right-style:solid;}", ".ftkbnf5::after{border-left-style:solid;}", ".f1lh990p::after{border-bottom-style:solid;}", ".fprarqb::after{border-bottom-right-radius:var(--borderRadiusCircular);}", ".f14vs0nd::after{border-bottom-left-radius:var(--borderRadiusCircular);}", ".f1gtfqs9::after{border-top-right-radius:var(--borderRadiusCircular);}", ".f18zvfd9::after{border-top-left-radius:var(--borderRadiusCircular);}", ".f1gw3sf2::after{box-sizing:border-box;}", ".f13zj6fq::after{content:\"\";}", ".f1mdlcz9::after{position:absolute;}", ".ffmd2fr::after{z-index:1;}", ".ff21voz::after{border-top-color:var(--colorCompoundBrandStroke);}", ".f13e2re1::after{border-right-color:var(--colorCompoundBrandStroke);}", ".fr799w5::after{border-left-color:var(--colorCompoundBrandStroke);}", ".f1jc6hxc::after{border-bottom-color:var(--colorCompoundBrandStroke);}", ".f1meqbmf::after{border-top-color:var(--colorNeutralForegroundDisabled);}", ".f1uv8s8a::after{border-right-color:var(--colorNeutralForegroundDisabled);}", ".fl4jjo8::after{border-left-color:var(--colorNeutralForegroundDisabled);}", ".f1jzbv2r::after{border-bottom-color:var(--colorNeutralForegroundDisabled);}", ".fo72kxq::after{bottom:0;}", ".f1o9a6jw::after{border-top-width:calc(var(--strokeWidthThicker) / 2.0);}", ".fo3g43a::after{border-right-width:calc(var(--strokeWidthThicker) / 2.0);}", ".fx9b69t::after{border-left-width:calc(var(--strokeWidthThicker) / 2.0);}", ".fe59e93::after{border-bottom-width:calc(var(--strokeWidthThicker) / 2.0);}", ".f1aztngc::after{height:0;}", ".fna7m5n::after{left:var(--spacingHorizontalM);}", ".f1oxpfwv::after{right:var(--spacingHorizontalM);}", ".fipylg0::after{bottom:var(--spacingVerticalS);}", ".f1n6gb5g::after{left:0;}", ".f15yvnhg::after{right:0;}", ".fqchiol::after{top:var(--spacingVerticalS);}", ".f1x60ewe::after{width:0;}", ".fchc3a4::after{border-top-width:calc(var(--strokeWidthThick) / 2.0);}", ".f1g9ny6e::after{border-right-width:calc(var(--strokeWidthThick) / 2.0);}", ".f1faeqkd::after{border-left-width:calc(var(--strokeWidthThick) / 2.0);}", ".f2swisw::after{border-bottom-width:calc(var(--strokeWidthThick) / 2.0);}", ".f1q70ajw::after{left:var(--spacingHorizontalSNudge);}", ".f18rbzdx::after{right:var(--spacingHorizontalSNudge);}", ".fqbue9b::after{bottom:var(--spacingVerticalXS);}", ".fk1klkt::after{top:var(--spacingVerticalXS);}"],
327
+ "h": [".f183gc6g:hover::after{border-top-color:var(--colorCompoundBrandStrokeHover);}", ".f9bu0jf:hover::after{border-right-color:var(--colorCompoundBrandStrokeHover);}", ".f1gl5qk4:hover::after{border-left-color:var(--colorCompoundBrandStrokeHover);}", ".f1bsp7n4:hover::after{border-bottom-color:var(--colorCompoundBrandStrokeHover);}"],
328
+ "a": [".f9opluq:active::after{border-top-color:var(--colorCompoundBrandStrokePressed);}", ".f1efh3oj:active::after{border-right-color:var(--colorCompoundBrandStrokePressed);}", ".f14e19o9:active::after{border-left-color:var(--colorCompoundBrandStrokePressed);}", ".f73i0vf:active::after{border-bottom-color:var(--colorCompoundBrandStrokePressed);}"]
329
+ });
330
+ /**
331
+ * Styles for the icon slot.
332
+ */
333
+
334
+
335
+ const useIconStyles = /*#__PURE__*/react_1.__styles({
336
+ "base": {
337
+ "Bt984gj": "f122n59",
338
+ "mc9l5x": "ftuwxu6",
339
+ "Brf1p80": "f4d9j23",
340
+ "B68tc82": "f1p9o1ba",
341
+ "Bmxbyg5": "f1sil6mw"
342
+ },
343
+ "small": {
344
+ "Be2twd7": "fe5j1ua",
345
+ "Bqenvij": "fjamq6b",
346
+ "a9b677": "f64fuq3"
347
+ },
348
+ "medium": {
349
+ "Be2twd7": "fe5j1ua",
350
+ "Bqenvij": "fjamq6b",
351
+ "a9b677": "f64fuq3"
352
+ }
353
+ }, {
354
+ "d": [".f122n59{-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;}", ".ftuwxu6{display:-webkit-inline-box;display:-webkit-inline-flex;display:-ms-inline-flexbox;display:inline-flex;}", ".f4d9j23{-webkit-box-pack:center;-ms-flex-pack:center;-webkit-justify-content:center;justify-content:center;}", ".f1p9o1ba{overflow-x:hidden;}", ".f1sil6mw{overflow-y:hidden;}", ".fe5j1ua{font-size:20px;}", ".fjamq6b{height:20px;}", ".f64fuq3{width:20px;}"]
355
+ });
356
+ /**
357
+ * Styles for the content slot (children)
358
+ */
359
+
360
+
361
+ const useContentStyles = /*#__PURE__*/react_1.__styles({
362
+ "base": {
363
+ "Bahqtrf": "fk6fouc",
364
+ "Be2twd7": "fkhj508",
365
+ "Bhrd7zp": "figsok6",
366
+ "Bg96gwp": "f1i3iumi",
367
+ "B68tc82": "f1p9o1ba",
368
+ "Bmxbyg5": "f1sil6mw",
369
+ "z8tnut": "fztplxc",
370
+ "z189sj": ["ffczdla", "fgiv446"],
371
+ "Byoj8tv": "f9g1xly",
372
+ "uwmqm3": ["fgiv446", "ffczdla"]
373
+ },
374
+ "selected": {
375
+ "Bahqtrf": "fk6fouc",
376
+ "Be2twd7": "fkhj508",
377
+ "Bhrd7zp": "fl43uef",
378
+ "Bg96gwp": "f1i3iumi"
379
+ }
380
+ }, {
381
+ "d": [".fk6fouc{font-family:var(--fontFamilyBase);}", ".fkhj508{font-size:var(--fontSizeBase300);}", ".figsok6{font-weight:var(--fontWeightRegular);}", ".f1i3iumi{line-height:var(--lineHeightBase300);}", ".f1p9o1ba{overflow-x:hidden;}", ".f1sil6mw{overflow-y:hidden;}", ".fztplxc{padding-top:var(--spacingVerticalNone);}", ".ffczdla{padding-right:var(--spacingHorizontalXXS);}", ".fgiv446{padding-left:var(--spacingHorizontalXXS);}", ".f9g1xly{padding-bottom:var(--spacingVerticalNone);}", ".fl43uef{font-weight:var(--fontWeightSemibold);}"]
382
+ });
383
+ /**
384
+ * Apply styling to the Tab slots based on the state
385
+ */
386
+
387
+
388
+ const useTabStyles_unstable = state => {
389
+ const rootStyles = useRootStyles();
390
+ const focusStyles = useFocusStyles();
391
+ const pendingIndicatorStyles = usePendingIndicatorStyles();
392
+ const activeIndicatorStyles = useActiveIndicatorStyles();
393
+ const iconStyles = useIconStyles();
394
+ const contentStyles = useContentStyles();
395
+ const {
396
+ appearance,
397
+ disabled,
398
+ selected,
399
+ size,
400
+ vertical
401
+ } = state;
402
+ state.root.className = react_1.mergeClasses(exports.tabClassNames.root, rootStyles.base, size !== 'small' && (vertical ? rootStyles.mediumVertical : rootStyles.mediumHorizontal), size === 'small' && (vertical ? rootStyles.smallVertical : rootStyles.smallHorizontal), focusStyles.base, !disabled && appearance === 'subtle' && rootStyles.subtle, !disabled && appearance === 'transparent' && rootStyles.transparent, !disabled && selected && rootStyles.selected, disabled && rootStyles.disabled, // pending indicator (before pseudo element)
403
+ pendingIndicatorStyles.base, size !== 'small' && (vertical ? pendingIndicatorStyles.mediumVertical : pendingIndicatorStyles.mediumHorizontal), size === 'small' && (vertical ? pendingIndicatorStyles.smallVertical : pendingIndicatorStyles.smallHorizontal), disabled && pendingIndicatorStyles.disabled, // active indicator (after pseudo element)
404
+ selected && activeIndicatorStyles.base, selected && !disabled && activeIndicatorStyles.selected, selected && size !== 'small' && (vertical ? activeIndicatorStyles.mediumVertical : activeIndicatorStyles.mediumHorizontal), selected && size === 'small' && (vertical ? activeIndicatorStyles.smallVertical : activeIndicatorStyles.smallHorizontal), selected && disabled && activeIndicatorStyles.disabled, state.root.className);
405
+
406
+ if (state.icon) {
407
+ state.icon.className = react_1.mergeClasses(exports.tabClassNames.icon, iconStyles.base, iconStyles[size], state.icon.className);
408
+ }
409
+
410
+ state.content.className = react_1.mergeClasses(exports.tabClassNames.content, contentStyles.base, selected && contentStyles.selected, state.content.className);
411
+ useTabAnimatedIndicator_1.useTabAnimatedIndicatorStyles_unstable(state);
412
+ return state;
413
+ };
414
+
415
+ exports.useTabStyles_unstable = useTabStyles_unstable;
416
+ //# sourceMappingURL=useTabStyles.js.map