@fluentui/react-tabs 9.0.0-beta.9 → 9.0.0-rc.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (69) hide show
  1. package/CHANGELOG.json +236 -6
  2. package/CHANGELOG.md +73 -10
  3. package/dist/{react-tabs.d.ts → index.d.ts} +46 -51
  4. package/{lib → dist}/tsdoc-metadata.json +0 -0
  5. package/lib/components/Tab/Tab.types.js.map +1 -1
  6. package/lib/components/Tab/useTab.js +3 -0
  7. package/lib/components/Tab/useTab.js.map +1 -1
  8. package/lib/components/Tab/useTabAnimatedIndicator.js +6 -6
  9. package/lib/components/Tab/useTabAnimatedIndicator.js.map +1 -1
  10. package/lib/components/Tab/useTabStyles.js +114 -176
  11. package/lib/components/Tab/useTabStyles.js.map +1 -1
  12. package/lib/components/TabList/TabList.types.js.map +1 -1
  13. package/lib/components/TabList/useTabList.js +2 -1
  14. package/lib/components/TabList/useTabList.js.map +1 -1
  15. package/lib/components/TabList/useTabListStyles.js +9 -2
  16. package/lib/components/TabList/useTabListStyles.js.map +1 -1
  17. package/lib-commonjs/components/Tab/useTab.js +3 -0
  18. package/lib-commonjs/components/Tab/useTab.js.map +1 -1
  19. package/lib-commonjs/components/Tab/useTabAnimatedIndicator.js +7 -7
  20. package/lib-commonjs/components/Tab/useTabAnimatedIndicator.js.map +1 -1
  21. package/lib-commonjs/components/Tab/useTabStyles.js +113 -176
  22. package/lib-commonjs/components/Tab/useTabStyles.js.map +1 -1
  23. package/lib-commonjs/components/TabList/useTabList.js +2 -1
  24. package/lib-commonjs/components/TabList/useTabList.js.map +1 -1
  25. package/lib-commonjs/components/TabList/useTabListStyles.js +9 -2
  26. package/lib-commonjs/components/TabList/useTabListStyles.js.map +1 -1
  27. package/package.json +11 -11
  28. package/lib/Tab.d.ts +0 -1
  29. package/lib/TabList.d.ts +0 -1
  30. package/lib/components/Tab/Tab.d.ts +0 -6
  31. package/lib/components/Tab/Tab.types.d.ts +0 -61
  32. package/lib/components/Tab/index.d.ts +0 -6
  33. package/lib/components/Tab/renderTab.d.ts +0 -5
  34. package/lib/components/Tab/useTab.d.ts +0 -12
  35. package/lib/components/Tab/useTabAnimatedIndicator.d.ts +0 -5
  36. package/lib/components/Tab/useTabStyles.d.ts +0 -8
  37. package/lib/components/TabList/TabList.d.ts +0 -6
  38. package/lib/components/TabList/TabList.types.d.ts +0 -104
  39. package/lib/components/TabList/TabListContext.d.ts +0 -3
  40. package/lib/components/TabList/index.d.ts +0 -5
  41. package/lib/components/TabList/renderTabList.d.ts +0 -5
  42. package/lib/components/TabList/useTabList.d.ts +0 -12
  43. package/lib/components/TabList/useTabListContextValues.d.ts +0 -2
  44. package/lib/components/TabList/useTabListStyles.d.ts +0 -8
  45. package/lib/index.d.ts +0 -4
  46. package/lib/tab.constants.d.ts +0 -62
  47. package/lib/tab.constants.js +0 -68
  48. package/lib/tab.constants.js.map +0 -1
  49. package/lib-commonjs/Tab.d.ts +0 -1
  50. package/lib-commonjs/TabList.d.ts +0 -1
  51. package/lib-commonjs/components/Tab/Tab.d.ts +0 -6
  52. package/lib-commonjs/components/Tab/Tab.types.d.ts +0 -61
  53. package/lib-commonjs/components/Tab/index.d.ts +0 -6
  54. package/lib-commonjs/components/Tab/renderTab.d.ts +0 -5
  55. package/lib-commonjs/components/Tab/useTab.d.ts +0 -12
  56. package/lib-commonjs/components/Tab/useTabAnimatedIndicator.d.ts +0 -5
  57. package/lib-commonjs/components/Tab/useTabStyles.d.ts +0 -8
  58. package/lib-commonjs/components/TabList/TabList.d.ts +0 -6
  59. package/lib-commonjs/components/TabList/TabList.types.d.ts +0 -104
  60. package/lib-commonjs/components/TabList/TabListContext.d.ts +0 -3
  61. package/lib-commonjs/components/TabList/index.d.ts +0 -5
  62. package/lib-commonjs/components/TabList/renderTabList.d.ts +0 -5
  63. package/lib-commonjs/components/TabList/useTabList.d.ts +0 -12
  64. package/lib-commonjs/components/TabList/useTabListContextValues.d.ts +0 -2
  65. package/lib-commonjs/components/TabList/useTabListStyles.d.ts +0 -8
  66. package/lib-commonjs/index.d.ts +0 -4
  67. package/lib-commonjs/tab.constants.d.ts +0 -62
  68. package/lib-commonjs/tab.constants.js +0 -75
  69. package/lib-commonjs/tab.constants.js.map +0 -1
@@ -11,8 +11,6 @@ const react_tabster_1 = /*#__PURE__*/require("@fluentui/react-tabster");
11
11
 
12
12
  const react_theme_1 = /*#__PURE__*/require("@fluentui/react-theme");
13
13
 
14
- const tab_constants_1 = /*#__PURE__*/require("../../tab.constants");
15
-
16
14
  const useTabAnimatedIndicator_1 = /*#__PURE__*/require("./useTabAnimatedIndicator");
17
15
 
18
16
  exports.tabClassNames = {
@@ -44,8 +42,11 @@ const useRootStyles = /*#__PURE__*/react_1.__styles({
44
42
  "Bn0qgzm": "fqdk4by",
45
43
  "ibv6hh": ["f1rvrf73", "f1358rze"],
46
44
  "Bceei9c": "f1k6fduh",
47
- "mc9l5x": "f22iagw",
48
- "Beiy3e4": "f1063pyq",
45
+ "mc9l5x": "f13qh94s",
46
+ "Bnnss6s": "fi64zpg",
47
+ "Bxotwcr": "f1u07yai",
48
+ "Budl1dq": "frn2hmy",
49
+ "wkccdc": "f1olsevy",
49
50
  "Bahqtrf": "fk6fouc",
50
51
  "Bg96gwp": "f1i3iumi",
51
52
  "oeaueh": "f1s6fcnf",
@@ -54,36 +55,39 @@ const useRootStyles = /*#__PURE__*/react_1.__styles({
54
55
  "Bmxbyg5": "f1sil6mw",
55
56
  "B9bfxx9": "f1cxpek8"
56
57
  },
58
+ "horizontal": {
59
+ "Brf1p80": "f4d9j23"
60
+ },
61
+ "vertical": {
62
+ "Brf1p80": "f1s9ku6b"
63
+ },
57
64
  "mediumHorizontal": {
58
- "i8kkvl": "fgfbwa2",
59
- "Brf1p80": "f4d9j23",
60
- "z8tnut": "f1kcqot9",
61
- "z189sj": ["f81rol6", "frdkuqy"],
62
- "Byoj8tv": "fpe6lb7",
63
- "uwmqm3": ["frdkuqy", "f81rol6"]
65
+ "i8kkvl": "f1rjii52",
66
+ "z8tnut": "f5yzyt",
67
+ "z189sj": ["f11gcy0p", "f1ng84yb"],
68
+ "Byoj8tv": "fx3omr",
69
+ "uwmqm3": ["f1ng84yb", "f11gcy0p"]
64
70
  },
65
71
  "mediumVertical": {
66
- "i8kkvl": "fgfbwa2",
67
- "Brf1p80": "fbhxue7",
68
- "Bf4jedk": "fyvtabn",
69
- "z8tnut": "f1xp5gbu",
70
- "z189sj": ["f81rol6", "frdkuqy"],
71
- "Byoj8tv": "f1d7kygh",
72
- "uwmqm3": ["frdkuqy", "f81rol6"]
72
+ "i8kkvl": "f1rjii52",
73
+ "z8tnut": "fp2oml8",
74
+ "z189sj": ["f11gcy0p", "f1ng84yb"],
75
+ "Byoj8tv": "f1tdddsa",
76
+ "uwmqm3": ["f1ng84yb", "f11gcy0p"]
73
77
  },
74
78
  "smallHorizontal": {
75
- "i8kkvl": "f16mnhsx",
76
- "z8tnut": "f1xp5gbu",
77
- "z189sj": ["f1sgzk6v", "f1bg5zqg"],
78
- "Byoj8tv": "f1d7kygh",
79
- "uwmqm3": ["f1bg5zqg", "f1sgzk6v"]
79
+ "i8kkvl": "f14mj54c",
80
+ "z8tnut": "fp2oml8",
81
+ "z189sj": ["fdw0yi8", "fk8j09s"],
82
+ "Byoj8tv": "f1tdddsa",
83
+ "uwmqm3": ["fk8j09s", "fdw0yi8"]
80
84
  },
81
85
  "smallVertical": {
82
- "i8kkvl": "f16mnhsx",
83
- "z8tnut": "fq1loh5",
84
- "z189sj": ["f1sgzk6v", "f1bg5zqg"],
85
- "Byoj8tv": "futqtb8",
86
- "uwmqm3": ["f1bg5zqg", "f1sgzk6v"]
86
+ "i8kkvl": "f14mj54c",
87
+ "z8tnut": "fclwglc",
88
+ "z189sj": ["fdw0yi8", "fk8j09s"],
89
+ "Byoj8tv": "fywfov9",
90
+ "uwmqm3": ["fk8j09s", "fdw0yi8"]
87
91
  },
88
92
  "transparent": {
89
93
  "De3pzq": "f1c21dwh",
@@ -122,7 +126,7 @@ const useRootStyles = /*#__PURE__*/react_1.__styles({
122
126
  "a4hkcw": "fhklyu5"
123
127
  }
124
128
  }, {
125
- "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;}", ".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;}", ".fgfbwa2{-webkit-column-gap:6px;column-gap:6px;}", ".f4d9j23{-webkit-box-pack:center;-ms-flex-pack:center;-webkit-justify-content:center;justify-content:center;}", ".f1kcqot9{padding-top:12px;}", ".f81rol6{padding-right:10px;}", ".frdkuqy{padding-left:10px;}", ".fpe6lb7{padding-bottom:12px;}", ".fbhxue7{-webkit-box-pack:start;-ms-flex-pack:start;-webkit-justify-content:flex-start;justify-content:flex-start;}", ".fyvtabn{min-width:120px;}", ".f1xp5gbu{padding-top:6px;}", ".f1d7kygh{padding-bottom:6px;}", ".f16mnhsx{-webkit-column-gap:2px;column-gap:2px;}", ".f1sgzk6v{padding-right:6px;}", ".f1bg5zqg{padding-left:6px;}", ".fq1loh5{padding-top:2px;}", ".futqtb8{padding-bottom:2px;}", ".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);}"],
129
+ "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;}", ".f13qh94s{display:grid;}", ".fi64zpg{-webkit-flex-shrink:0;-ms-flex-negative:0;flex-shrink:0;}", ".f1u07yai{grid-auto-flow:column;}", ".frn2hmy{grid-template-columns:auto;}", ".f1olsevy{grid-template-rows:auto;}", ".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;}", ".f4d9j23{-webkit-box-pack:center;-ms-flex-pack:center;-webkit-justify-content:center;justify-content:center;}", ".f1s9ku6b{-webkit-box-pack:start;-ms-flex-pack:start;-webkit-justify-content:start;justify-content:start;}", ".f1rjii52{-webkit-column-gap:var(--spacingHorizontalSNudge);column-gap:var(--spacingHorizontalSNudge);}", ".f5yzyt{padding-top:var(--spacingVerticalM);}", ".f11gcy0p{padding-right:var(--spacingHorizontalMNudge);}", ".f1ng84yb{padding-left:var(--spacingHorizontalMNudge);}", ".fx3omr{padding-bottom:var(--spacingVerticalM);}", ".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);}"],
126
130
  "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);}"],
127
131
  "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);}"]
128
132
  });
@@ -155,178 +159,109 @@ const useFocusStyles = /*#__PURE__*/react_1.__styles({
155
159
 
156
160
  const usePendingIndicatorStyles = /*#__PURE__*/react_1.__styles({
157
161
  "base": {
158
- "Cgij5x": "f19tg446",
159
- "z7qlni": "f1mav41w",
160
- "Bdipjll": ["f1suiu43", "f1kv3e19"],
161
- "B37a91": "f1hmukci",
162
- "Buig1va": ["f1kv3e19", "f1suiu43"],
163
- "Bdyfc3e": "f1lqhc19",
164
- "Bpjys6e": ["fgp1lrp", "f14he6sl"],
165
- "pnx8oc": "f1c4qkgw",
166
- "Btzsvkb": ["f14he6sl", "fgp1lrp"],
167
- "d7kyl9": ["f1cj3r78", "f1xncuur"],
168
- "Bisz106": ["f1xncuur", "f1cj3r78"],
169
- "Bllnwrd": ["fi30ndc", "f19d7f88"],
170
- "B3dpmnz": ["f19d7f88", "fi30ndc"],
171
- "Fs9z49": "f56rwnc",
172
- "Baevmrh": "f1lqcl48",
173
- "ri70ih": "f1ego73q",
174
- "Br1f9q3": "f1ppf73u",
175
- "Bh9m8uq": "fkgvshs",
176
- "f79n2v": ["f9ce8dc", "f1m8imsn"],
177
- "zvkrb6": "fxkorn8",
178
- "y3supe": ["f1m8imsn", "f9ce8dc"],
179
- "Bcbdomo": "f1bb2bd5",
180
- "gg7wqr": ["fyhhhxy", "flt5dqy"],
181
- "Ixc8c": "fw019zk",
182
- "B1ltu2w": ["flt5dqy", "fyhhhxy"],
183
- "B2yjemk": ["f7c36j8", "f1tzhx6f"],
184
- "Bph9bk4": ["f1tzhx6f", "f7c36j8"],
185
- "utwc0c": ["f15ne2sm", "f18vik6r"],
186
- "B5rxhlh": ["f18vik6r", "f15ne2sm"],
187
- "Bseepjv": "f2sk4z1",
188
- "Iy3360": "frq4ova",
189
- "Dlf1w5": "f416fxa"
162
+ "az7l2e": "fhw179n",
163
+ "Bv4n3vi": ["f10y1uxy", "f6aiuy0"],
164
+ "vqofr": ["f6aiuy0", "f10y1uxy"],
165
+ "B0uxbk8": ["f1kfpfnu", "f1dx5wco"],
166
+ "Bgqb9hq": ["f1dx5wco", "f1kfpfnu"],
167
+ "amg5m6": "f1kmhr4c",
168
+ "zkfqfm": "fl1ydde",
169
+ "Bkydozb": "f1y7maxz",
170
+ "vzq8l0": ["f105swax", "fscdmel"],
171
+ "Bka2azo": ["fscdmel", "f105swax"],
172
+ "Br4ovkg": ["f1tkcw1w", "f1u11x8o"],
173
+ "csmgbd": ["f1u11x8o", "f1tkcw1w"],
174
+ "y36c18": "f16cxu0",
175
+ "B1ctymy": "f1nwgacf",
176
+ "Bgvrrv0": "f15ovonk",
177
+ "ddr6p5": "fvje46l"
190
178
  },
191
179
  "disabled": {
192
- "Bdyfc3e": "ft6wof",
193
- "Bpjys6e": ["f1ojwtdc", "fgjfpko"],
194
- "pnx8oc": "f5s0kyi",
195
- "Btzsvkb": ["fgjfpko", "f1ojwtdc"],
196
- "Bcbdomo": "f1dodv9r",
197
- "gg7wqr": ["f1shuycv", "f19t3g6y"],
198
- "Ixc8c": "f6psttw",
199
- "B1ltu2w": ["f19t3g6y", "f1shuycv"]
180
+ "az7l2e": "f1ut20fw",
181
+ "Bkydozb": "fhrzcfn"
200
182
  },
201
183
  "mediumHorizontal": {
202
- "Bj2wrql": "flqennz",
203
- "dj0dih": "fyg4ez2",
204
- "D4ky5z": ["f1cquro8", "f1ro2kyx"],
205
- "k1i1uq": "ffvjagy",
206
- "Bcasopp": ["f1ro2kyx", "f1cquro8"],
207
- "Bbc2r3f": "fvqq5f6",
208
- "Byque4d": ["frssmbg", "fxzecjq"],
209
- "qd6xl9": ["fxzecjq", "frssmbg"]
184
+ "lawp4y": "fchca7p",
185
+ "Baz25je": "f1s2r9ax",
186
+ "Fbdkly": ["f1o0nnkk", "fxb7rol"],
187
+ "mdwyqc": ["fxb7rol", "f1o0nnkk"]
210
188
  },
211
189
  "mediumVertical": {
212
- "Bj2wrql": "fa48u8l",
213
- "dj0dih": "fyg4ez2",
214
- "D4ky5z": ["f1cquro8", "f1ro2kyx"],
215
- "k1i1uq": "ffvjagy",
216
- "Bcasopp": ["f1ro2kyx", "f1cquro8"],
217
- "Byque4d": ["f1t0u0az", "fmlx6bj"],
218
- "Bf8kmfk": "f1itw4t3",
219
- "Bdn98qo": "f1382oex"
190
+ "lawp4y": "f17jracn",
191
+ "Fbdkly": ["f1fzr1x6", "f1f351id"],
192
+ "Bciustq": "f117lcb2",
193
+ "Ccq8qp": "f1aij3q"
220
194
  },
221
195
  "smallHorizontal": {
222
- "Bj2wrql": "flqennz",
223
- "dj0dih": "f1kkj9j",
224
- "D4ky5z": ["f14ip387", "f1uj4yfi"],
225
- "k1i1uq": "f7vsd80",
226
- "Bcasopp": ["f1uj4yfi", "f14ip387"],
227
- "Bbc2r3f": "f1y1nr8p",
228
- "Byque4d": ["f1i98inn", "fadekk3"],
229
- "qd6xl9": ["fadekk3", "f1i98inn"]
196
+ "lawp4y": "fchca7p",
197
+ "Baz25je": "f1r53b5e",
198
+ "Fbdkly": ["f1s6rxz5", "fo35v8s"],
199
+ "mdwyqc": ["fo35v8s", "f1s6rxz5"]
230
200
  },
231
201
  "smallVertical": {
232
- "Bj2wrql": "f7efb1c",
233
- "dj0dih": "fyg4ez2",
234
- "D4ky5z": ["f1cquro8", "f1ro2kyx"],
235
- "k1i1uq": "ffvjagy",
236
- "Bcasopp": ["f1ro2kyx", "f1cquro8"],
237
- "Byque4d": ["f1t0u0az", "fmlx6bj"],
238
- "Bf8kmfk": "f1q0qvio",
239
- "Bdn98qo": "f1382oex"
202
+ "lawp4y": "fze4zud",
203
+ "Fbdkly": ["f1fzr1x6", "f1f351id"],
204
+ "Bciustq": "fdp32p8",
205
+ "Ccq8qp": "f1aij3q"
240
206
  }
241
207
  }, {
242
- "h": [".f19tg446:hover:before{background-color:none;}", ".f1mav41w:hover:before{border-top-style:solid;}", ".f1suiu43:hover:before{border-right-style:solid;}", ".f1kv3e19:hover:before{border-left-style:solid;}", ".f1hmukci:hover:before{border-bottom-style:solid;}", ".f1lqhc19:hover:before{border-top-color:var(--colorNeutralStroke1Hover);}", ".fgp1lrp:hover:before{border-right-color:var(--colorNeutralStroke1Hover);}", ".f14he6sl:hover:before{border-left-color:var(--colorNeutralStroke1Hover);}", ".f1c4qkgw:hover:before{border-bottom-color:var(--colorNeutralStroke1Hover);}", ".f1cj3r78:hover:before{border-bottom-right-radius:var(--borderRadiusCircular);}", ".f1xncuur:hover:before{border-bottom-left-radius:var(--borderRadiusCircular);}", ".fi30ndc:hover:before{border-top-right-radius:var(--borderRadiusCircular);}", ".f19d7f88:hover:before{border-top-left-radius:var(--borderRadiusCircular);}", ".f56rwnc:hover:before{box-sizing:border-box;}", ".f1lqcl48:hover:before{content:\"\";}", ".f1ego73q:hover:before{position:absolute;}", ".ft6wof:hover:before{border-top-color:var(--colorTransparentStroke);}", ".f1ojwtdc:hover:before{border-right-color:var(--colorTransparentStroke);}", ".fgjfpko:hover:before{border-left-color:var(--colorTransparentStroke);}", ".f5s0kyi:hover:before{border-bottom-color:var(--colorTransparentStroke);}"],
243
- "a": [".f1ppf73u:active:before{background-color:none;}", ".fkgvshs:active:before{border-top-style:solid;}", ".f9ce8dc:active:before{border-right-style:solid;}", ".f1m8imsn:active:before{border-left-style:solid;}", ".fxkorn8:active:before{border-bottom-style:solid;}", ".f1bb2bd5:active:before{border-top-color:var(--colorNeutralStroke1Pressed);}", ".fyhhhxy:active:before{border-right-color:var(--colorNeutralStroke1Pressed);}", ".flt5dqy:active:before{border-left-color:var(--colorNeutralStroke1Pressed);}", ".fw019zk:active:before{border-bottom-color:var(--colorNeutralStroke1Pressed);}", ".f7c36j8:active:before{border-bottom-right-radius:var(--borderRadiusCircular);}", ".f1tzhx6f:active:before{border-bottom-left-radius:var(--borderRadiusCircular);}", ".f15ne2sm:active:before{border-top-right-radius:var(--borderRadiusCircular);}", ".f18vik6r:active:before{border-top-left-radius:var(--borderRadiusCircular);}", ".f2sk4z1:active:before{box-sizing:border-box;}", ".frq4ova:active:before{content:\"\";}", ".f416fxa:active:before{position:absolute;}", ".f1dodv9r:active:before{border-top-color:var(--colorTransparentStroke);}", ".f1shuycv:active:before{border-right-color:var(--colorTransparentStroke);}", ".f19t3g6y:active:before{border-left-color:var(--colorTransparentStroke);}", ".f6psttw:active:before{border-bottom-color:var(--colorTransparentStroke);}"],
244
- "d": [".flqennz:before{bottom:0;}", ".fyg4ez2:before{border-top-width:calc(var(--strokeWidthThicker) / 2.0);}", ".f1cquro8:before{border-right-width:calc(var(--strokeWidthThicker) / 2.0);}", ".f1ro2kyx:before{border-left-width:calc(var(--strokeWidthThicker) / 2.0);}", ".ffvjagy:before{border-bottom-width:calc(var(--strokeWidthThicker) / 2.0);}", ".fvqq5f6:before{height:var(--strokeWidthThicker);}", ".frssmbg:before{left:12px;}", ".fxzecjq:before{right:12px;}", ".fa48u8l:before{bottom:8px;}", ".f1t0u0az:before{left:0;}", ".fmlx6bj:before{right:0;}", ".f1itw4t3:before{top:8px;}", ".f1382oex:before{width:var(--strokeWidthThicker);}", ".f1kkj9j:before{border-top-width:calc(var(--strokeWidthThick) / 2.0);}", ".f14ip387:before{border-right-width:calc(var(--strokeWidthThick) / 2.0);}", ".f1uj4yfi:before{border-left-width:calc(var(--strokeWidthThick) / 2.0);}", ".f7vsd80:before{border-bottom-width:calc(var(--strokeWidthThick) / 2.0);}", ".f1y1nr8p:before{height:var(--strokeWidthThick);}", ".f1i98inn:before{left:6px;}", ".fadekk3:before{right:6px;}", ".f7efb1c:before{bottom:4px;}", ".f1q0qvio:before{top:4px;}"]
208
+ "h": [".fhw179n:hover::before{background-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);}", ".f1kmhr4c:hover::before{content:\"\";}", ".fl1ydde:hover::before{position:absolute;}", ".f1ut20fw:hover::before{background-color:var(--colorTransparentStroke);}"],
209
+ "a": [".f1y7maxz:active::before{background-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);}", ".f16cxu0:active::before{content:\"\";}", ".f1nwgacf:active::before{position:absolute;}", ".fhrzcfn:active::before{background-color:var(--colorTransparentStroke);}"],
210
+ "t": ["@media (forced-colors: active){.f15ovonk:hover::before{background-color:Highlight;}}", "@media (forced-colors: active){.fvje46l:active::before{background-color:Highlight;}}"],
211
+ "d": [".fchca7p::before{bottom:0;}", ".f1s2r9ax::before{height:var(--strokeWidthThicker);}", ".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);}", ".f1aij3q::before{width:var(--strokeWidthThicker);}", ".f1r53b5e::before{height:var(--strokeWidthThick);}", ".f1s6rxz5::before{left:var(--spacingHorizontalSNudge);}", ".fo35v8s::before{right:var(--spacingHorizontalSNudge);}", ".fze4zud::before{bottom:var(--spacingVerticalXS);}", ".fdp32p8::before{top:var(--spacingVerticalXS);}"]
245
212
  });
246
213
 
247
214
  const useActiveIndicatorStyles = /*#__PURE__*/react_1.__styles({
248
215
  "base": {
249
- "F7kzw7": "f1vw7pcs",
250
- "B13j16c": ["fi41b8y", "f1jbgs3z"],
251
- "Bk8j60v": "f1p43pof",
252
- "Bpbi4o9": ["f1jbgs3z", "fi41b8y"],
253
- "rskduk": "f1iq3fds",
254
- "Dctjco": ["f1r2jemi", "f11olovk"],
255
- "J4s2b0": "fd0py6g",
256
- "svcy3r": ["f11olovk", "f1r2jemi"],
257
- "frdscb": ["fc4gh2t", "flndy84"],
258
- "B9nohqn": ["flndy84", "fc4gh2t"],
259
- "B1dhsta": ["fxgx2h0", "fh20ihy"],
260
- "Bjdmjzx": ["fh20ihy", "fxgx2h0"],
261
- "oqd9ik": "ffdc0f3",
262
- "Bs6t6z0": "fqc6z8f",
263
- "Hdbjpj": "f11ef69",
264
- "Bunff0j": "fs357bs"
216
+ "Bjyk6c5": "f1rp0jgh",
217
+ "B3778ie": ["fprarqb", "f14vs0nd"],
218
+ "d9w3h3": ["f14vs0nd", "fprarqb"],
219
+ "Bl18szs": ["f1gtfqs9", "f18zvfd9"],
220
+ "B4j8arr": ["f18zvfd9", "f1gtfqs9"],
221
+ "Bsft5z2": "f13zj6fq",
222
+ "E3zdtr": "f1mdlcz9",
223
+ "t2ki1e": "ffmd2fr"
265
224
  },
266
225
  "selected": {
267
- "F7kzw7": "f27ds8h",
268
- "B13j16c": ["f2f2y1h", "fvkrelc"],
269
- "Bk8j60v": "f1ta67ae",
270
- "Bpbi4o9": ["fvkrelc", "f2f2y1h"],
271
- "xay6vd": "f155wmea",
272
- "F7whla": ["fz4itc5", "f10rdlzq"],
273
- "Bkmnrzr": "f16a8na0",
274
- "jjqiyg": ["f10rdlzq", "fz4itc5"],
275
- "wo4o56": "fn9ghnu",
276
- "Bm7x6ru": ["faeqx0n", "fyxlcfc"],
277
- "id6p2d": "f1i10yqr",
278
- "obzwb3": ["fyxlcfc", "faeqx0n"]
226
+ "Bjyk6c5": "f1ksivud",
227
+ "Glksuk": "f1eytvvh",
228
+ "Blzl0y7": "fuaa9s",
229
+ "f7digc": "fy7ktjt",
230
+ "Biqphg1": "f16tp0gf",
231
+ "Bntoloa": "fj0yp7j"
279
232
  },
280
233
  "disabled": {
281
- "F7kzw7": "f8fvnjs",
282
- "B13j16c": ["f1sie595", "f68ecio"],
283
- "Bk8j60v": "f17l895u",
284
- "Bpbi4o9": ["f68ecio", "f1sie595"]
234
+ "Bjyk6c5": "f13lkzet"
285
235
  },
286
236
  "mediumHorizontal": {
287
- "Bj55yzk": "fw2wsqs",
288
- "Bouo9z4": "f1dqk8ca",
289
- "Bjz4wo8": ["f6x7jdz", "f18ezp6p"],
290
- "B3zxwmv": "fvhr22v",
291
- "exdlgl": ["f18ezp6p", "f6x7jdz"],
292
- "mpb1vu": "f11eg72r",
293
- "jc51t6": ["fohqjvh", "f3if56i"],
294
- "cnmfks": ["f3if56i", "fohqjvh"]
237
+ "By385i5": "fo72kxq",
238
+ "Dlnsje": "f1vx7lu8",
239
+ "Eqx8gd": ["fna7m5n", "f1oxpfwv"],
240
+ "B1piin3": ["f1oxpfwv", "fna7m5n"]
295
241
  },
296
242
  "mediumVertical": {
297
- "Bj55yzk": "f1wxxv1q",
298
- "Bouo9z4": "f1dqk8ca",
299
- "Bjz4wo8": ["f6x7jdz", "f18ezp6p"],
300
- "B3zxwmv": "fvhr22v",
301
- "exdlgl": ["f18ezp6p", "f6x7jdz"],
302
- "jc51t6": ["f1cvlmu2", "f15lyva8"],
303
- "u6d25": "f1lbpgiz",
304
- "Biobvvw": "fqauqbq"
243
+ "By385i5": "fipylg0",
244
+ "Eqx8gd": ["f1n6gb5g", "f15yvnhg"],
245
+ "bn5sak": "fqchiol",
246
+ "a2br6o": "f1o25lip"
305
247
  },
306
248
  "smallHorizontal": {
307
- "Bj55yzk": "fw2wsqs",
308
- "Bouo9z4": "fz0tshs",
309
- "Bjz4wo8": ["fyhqs13", "f11og0us"],
310
- "B3zxwmv": "f1qq4lft",
311
- "exdlgl": ["f11og0us", "fyhqs13"],
312
- "mpb1vu": "f4hj4m7",
313
- "jc51t6": ["f1i8k3s6", "fy447wy"],
314
- "cnmfks": ["fy447wy", "f1i8k3s6"]
249
+ "By385i5": "fo72kxq",
250
+ "Dlnsje": "f9bb2ob",
251
+ "Eqx8gd": ["f1q70ajw", "f18rbzdx"],
252
+ "B1piin3": ["f18rbzdx", "f1q70ajw"]
315
253
  },
316
254
  "smallVertical": {
317
- "Bj55yzk": "fu7gapb",
318
- "Bouo9z4": "f1dqk8ca",
319
- "Bjz4wo8": ["f6x7jdz", "f18ezp6p"],
320
- "B3zxwmv": "fvhr22v",
321
- "exdlgl": ["f18ezp6p", "f6x7jdz"],
322
- "jc51t6": ["f1cvlmu2", "f15lyva8"],
323
- "u6d25": "f1vmyuyf",
324
- "Biobvvw": "fqauqbq"
255
+ "By385i5": "fqbue9b",
256
+ "Eqx8gd": ["f1n6gb5g", "f15yvnhg"],
257
+ "bn5sak": "fk1klkt",
258
+ "a2br6o": "f1o25lip"
325
259
  }
326
260
  }, {
327
- "d": [".f1vw7pcs:after{border-top-color:var(--colorTransparentStroke);}", ".fi41b8y:after{border-right-color:var(--colorTransparentStroke);}", ".f1jbgs3z:after{border-left-color:var(--colorTransparentStroke);}", ".f1p43pof:after{border-bottom-color:var(--colorTransparentStroke);}", ".f1iq3fds:after{border-top-style:solid;}", ".f1r2jemi:after{border-right-style:solid;}", ".f11olovk:after{border-left-style:solid;}", ".fd0py6g:after{border-bottom-style:solid;}", ".fc4gh2t:after{border-bottom-right-radius:var(--borderRadiusCircular);}", ".flndy84:after{border-bottom-left-radius:var(--borderRadiusCircular);}", ".fxgx2h0:after{border-top-right-radius:var(--borderRadiusCircular);}", ".fh20ihy:after{border-top-left-radius:var(--borderRadiusCircular);}", ".ffdc0f3:after{box-sizing:border-box;}", ".fqc6z8f:after{content:\"\";}", ".f11ef69:after{position:absolute;}", ".fs357bs:after{z-index:1;}", ".f27ds8h:after{border-top-color:var(--colorCompoundBrandStroke);}", ".f2f2y1h:after{border-right-color:var(--colorCompoundBrandStroke);}", ".fvkrelc:after{border-left-color:var(--colorCompoundBrandStroke);}", ".f1ta67ae:after{border-bottom-color:var(--colorCompoundBrandStroke);}", ".f8fvnjs:after{border-top-color:var(--colorNeutralForegroundDisabled);}", ".f1sie595:after{border-right-color:var(--colorNeutralForegroundDisabled);}", ".f68ecio:after{border-left-color:var(--colorNeutralForegroundDisabled);}", ".f17l895u:after{border-bottom-color:var(--colorNeutralForegroundDisabled);}", ".fw2wsqs:after{bottom:0;}", ".f1dqk8ca:after{border-top-width:calc(var(--strokeWidthThicker) / 2.0);}", ".f6x7jdz:after{border-right-width:calc(var(--strokeWidthThicker) / 2.0);}", ".f18ezp6p:after{border-left-width:calc(var(--strokeWidthThicker) / 2.0);}", ".fvhr22v:after{border-bottom-width:calc(var(--strokeWidthThicker) / 2.0);}", ".f11eg72r:after{height:var(--strokeWidthThicker);}", ".fohqjvh:after{left:12px;}", ".f3if56i:after{right:12px;}", ".f1wxxv1q:after{bottom:8px;}", ".f1cvlmu2:after{left:0;}", ".f15lyva8:after{right:0;}", ".f1lbpgiz:after{top:8px;}", ".fqauqbq:after{width:var(--strokeWidthThicker);}", ".fz0tshs:after{border-top-width:calc(var(--strokeWidthThick) / 2.0);}", ".fyhqs13:after{border-right-width:calc(var(--strokeWidthThick) / 2.0);}", ".f11og0us:after{border-left-width:calc(var(--strokeWidthThick) / 2.0);}", ".f1qq4lft:after{border-bottom-width:calc(var(--strokeWidthThick) / 2.0);}", ".f4hj4m7:after{height:var(--strokeWidthThick);}", ".f1i8k3s6:after{left:6px;}", ".fy447wy:after{right:6px;}", ".fu7gapb:after{bottom:4px;}", ".f1vmyuyf:after{top:4px;}"],
328
- "h": [".f155wmea:hover:after{border-top-color:var(--colorCompoundBrandStrokeHover);}", ".fz4itc5:hover:after{border-right-color:var(--colorCompoundBrandStrokeHover);}", ".f10rdlzq:hover:after{border-left-color:var(--colorCompoundBrandStrokeHover);}", ".f16a8na0:hover:after{border-bottom-color:var(--colorCompoundBrandStrokeHover);}"],
329
- "a": [".fn9ghnu:active:after{border-top-color:var(--colorCompoundBrandStrokePressed);}", ".faeqx0n:active:after{border-right-color:var(--colorCompoundBrandStrokePressed);}", ".fyxlcfc:active:after{border-left-color:var(--colorCompoundBrandStrokePressed);}", ".f1i10yqr:active:after{border-bottom-color:var(--colorCompoundBrandStrokePressed);}"]
261
+ "d": [".f1rp0jgh::after{background-color:var(--colorTransparentStroke);}", ".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);}", ".f13zj6fq::after{content:\"\";}", ".f1mdlcz9::after{position:absolute;}", ".ffmd2fr::after{z-index:1;}", ".f1ksivud::after{background-color:var(--colorCompoundBrandStroke);}", ".f13lkzet::after{background-color:var(--colorNeutralForegroundDisabled);}", ".fo72kxq::after{bottom:0;}", ".f1vx7lu8::after{height:var(--strokeWidthThicker);}", ".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);}", ".f1o25lip::after{width:var(--strokeWidthThicker);}", ".f9bb2ob::after{height:var(--strokeWidthThick);}", ".f1q70ajw::after{left:var(--spacingHorizontalSNudge);}", ".f18rbzdx::after{right:var(--spacingHorizontalSNudge);}", ".fqbue9b::after{bottom:var(--spacingVerticalXS);}", ".fk1klkt::after{top:var(--spacingVerticalXS);}"],
262
+ "h": [".f1eytvvh:hover::after{background-color:var(--colorCompoundBrandStrokeHover);}"],
263
+ "a": [".fuaa9s:active::after{background-color:var(--colorCompoundBrandStrokePressed);}"],
264
+ "t": ["@media (forced-colors: active){.fy7ktjt::after{background-color:ButtonText;}}", "@media (forced-colors: active){.f16tp0gf:hover::after{background-color:ButtonText;}}", "@media (forced-colors: active){.fj0yp7j:active::after{background-color:ButtonText;}}"]
330
265
  });
331
266
  /**
332
267
  * Styles for the icon slot.
@@ -361,23 +296,25 @@ const useIconStyles = /*#__PURE__*/react_1.__styles({
361
296
 
362
297
  const useContentStyles = /*#__PURE__*/react_1.__styles({
363
298
  "base": {
299
+ "Bahqtrf": "fk6fouc",
364
300
  "Be2twd7": "fkhj508",
365
301
  "Bhrd7zp": "figsok6",
366
302
  "Bg96gwp": "f1i3iumi",
367
303
  "B68tc82": "f1p9o1ba",
368
304
  "Bmxbyg5": "f1sil6mw",
369
- "z8tnut": "f1g0x7ka",
370
- "z189sj": ["f12huiiw", "f161knb0"],
371
- "Byoj8tv": "f1qch9an",
372
- "uwmqm3": ["f161knb0", "f12huiiw"]
305
+ "z8tnut": "fztplxc",
306
+ "z189sj": ["ffczdla", "fgiv446"],
307
+ "Byoj8tv": "f9g1xly",
308
+ "uwmqm3": ["fgiv446", "ffczdla"]
373
309
  },
374
310
  "selected": {
311
+ "Bahqtrf": "fk6fouc",
375
312
  "Be2twd7": "fkhj508",
376
313
  "Bhrd7zp": "fl43uef",
377
314
  "Bg96gwp": "f1i3iumi"
378
315
  }
379
316
  }, {
380
- "d": [".fkhj508{font-size:var(--fontSizeBase300);}", ".figsok6{font-weight:var(--fontWeightRegular);}", ".f1i3iumi{line-height:var(--lineHeightBase300);}", ".f1p9o1ba{overflow-x:hidden;}", ".f1sil6mw{overflow-y:hidden;}", ".f1g0x7ka{padding-top:0;}", ".f12huiiw{padding-right:2px;}", ".f161knb0{padding-left:2px;}", ".f1qch9an{padding-bottom:0;}", ".fl43uef{font-weight:var(--fontWeightSemibold);}"]
317
+ "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);}"]
381
318
  });
382
319
  /**
383
320
  * Apply styling to the Tab slots based on the state
@@ -398,7 +335,7 @@ const useTabStyles_unstable = state => {
398
335
  size,
399
336
  vertical
400
337
  } = state;
401
- 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)
338
+ state.root.className = react_1.mergeClasses(exports.tabClassNames.root, rootStyles.base, vertical ? rootStyles.vertical : rootStyles.horizontal, 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)
402
339
  pendingIndicatorStyles.base, size !== 'small' && (vertical ? pendingIndicatorStyles.mediumVertical : pendingIndicatorStyles.mediumHorizontal), size === 'small' && (vertical ? pendingIndicatorStyles.smallVertical : pendingIndicatorStyles.smallHorizontal), disabled && pendingIndicatorStyles.disabled, // active indicator (after pseudo element)
403
340
  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);
404
341
 
@@ -1 +1 @@
1
- {"version":3,"sources":["components/Tab/useTabStyles.ts"],"names":[],"mappings":"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","sourcesContent":["import type { TabSlots, TabState } from './Tab.types';\n\nimport { makeStyles, mergeClasses, shorthands } from '@griffel/react';\nimport { createCustomFocusIndicatorStyle } from '@fluentui/react-tabster';\nimport { tokens } from '@fluentui/react-theme';\nimport {\n pendingContentSizeTokens,\n pendingSpacingTokens,\n tabIndicatorPadding,\n tabIndicatorStrokeWidths,\n} from '../../tab.constants';\nimport { SlotClassNames } from '@fluentui/react-utilities';\nimport { useTabAnimatedIndicatorStyles_unstable } from './useTabAnimatedIndicator';\n\nexport const tabClassNames: SlotClassNames<TabSlots> = {\n root: 'fui-Tab',\n icon: 'fui-Tab__icon',\n content: 'fui-Tab__content',\n};\n\n// TODO temporary export to pass conformance test.\nexport const tabClassName = tabClassNames.root;\n\n/**\n * Styles for the root slot\n */\n/* eslint-disable @typescript-eslint/naming-convention */\nconst useRootStyles = makeStyles({\n base: {\n alignItems: 'center',\n ...shorthands.borderColor('none'),\n ...shorthands.borderRadius(tokens.borderRadiusMedium),\n ...shorthands.borderWidth(0),\n cursor: 'pointer',\n display: 'flex',\n flexDirection: 'row',\n fontFamily: tokens.fontFamilyBase,\n lineHeight: tokens.lineHeightBase300,\n outlineStyle: 'none',\n position: 'relative',\n ...shorthands.overflow('hidden'),\n textTransform: 'none',\n },\n mediumHorizontal: {\n columnGap: pendingSpacingTokens.sNudge,\n justifyContent: 'center',\n ...shorthands.padding(pendingSpacingTokens.m, pendingSpacingTokens.mNudge),\n },\n mediumVertical: {\n columnGap: pendingSpacingTokens.sNudge,\n justifyContent: 'flex-start',\n minWidth: '120px',\n ...shorthands.padding(pendingSpacingTokens.sNudge, pendingSpacingTokens.mNudge),\n },\n smallHorizontal: {\n columnGap: pendingSpacingTokens.xxs,\n ...shorthands.padding(pendingSpacingTokens.sNudge, pendingSpacingTokens.sNudge),\n },\n smallVertical: {\n columnGap: pendingSpacingTokens.xxs,\n ...shorthands.padding(pendingSpacingTokens.xxs, pendingSpacingTokens.sNudge),\n },\n transparent: {\n backgroundColor: tokens.colorTransparentBackground,\n ':hover': {\n backgroundColor: tokens.colorTransparentBackgroundHover,\n },\n ':active': {\n backgroundColor: tokens.colorTransparentBackgroundPressed,\n },\n '& .fui-Tab__icon': {\n color: tokens.colorNeutralForeground2,\n },\n ':hover .fui-Tab__icon': {\n color: tokens.colorNeutralForeground2Hover,\n },\n ':active .fui-Tab__icon': {\n color: tokens.colorNeutralForeground2Pressed,\n },\n '& .fui-Tab__content': {\n color: tokens.colorNeutralForeground2,\n },\n ':hover .fui-Tab__content': {\n color: tokens.colorNeutralForeground2Hover,\n },\n ':active .fui-Tab__content': {\n color: tokens.colorNeutralForeground2Pressed,\n },\n },\n subtle: {\n backgroundColor: tokens.colorSubtleBackground,\n ':hover': {\n backgroundColor: tokens.colorSubtleBackgroundHover,\n },\n ':active': {\n backgroundColor: tokens.colorSubtleBackgroundPressed,\n },\n '& .fui-Tab__icon': {\n color: tokens.colorNeutralForeground2,\n },\n ':hover .fui-Tab__icon': {\n color: tokens.colorNeutralForeground2Hover,\n },\n ':active .fui-Tab__icon': {\n color: tokens.colorNeutralForeground2Pressed,\n },\n '& .fui-Tab__content': {\n color: tokens.colorNeutralForeground2,\n },\n ':hover .fui-Tab__content': {\n color: tokens.colorNeutralForeground2Hover,\n },\n ':active .fui-Tab__content': {\n color: tokens.colorNeutralForeground2Pressed,\n },\n },\n disabled: {\n backgroundColor: tokens.colorTransparentBackground,\n\n '& .fui-Tab__icon': {\n color: tokens.colorNeutralForegroundDisabled,\n },\n '& .fui-Tab__content': {\n color: tokens.colorNeutralForegroundDisabled,\n },\n cursor: 'not-allowed',\n },\n selected: {\n '& .fui-Tab__icon': {\n color: tokens.colorCompoundBrandForeground1,\n },\n ':hover .fui-Tab__icon': {\n color: tokens.colorCompoundBrandForeground1Hover,\n },\n ':active .fui-Tab__icon': {\n color: tokens.colorCompoundBrandForeground1Pressed,\n },\n '& .fui-Tab__content': {\n color: tokens.colorNeutralForeground1,\n },\n ':hover .fui-Tab__content': {\n color: tokens.colorNeutralForeground1Hover,\n },\n ':active .fui-Tab__content': {\n color: tokens.colorNeutralForeground1Pressed,\n },\n },\n});\n/* eslint-enable @typescript-eslint/naming-convention */\n\n/**\n * Focus styles for the root slot\n */\nconst useFocusStyles = makeStyles({\n // Tab creates a custom focus indicator because the default focus indicator\n // is applied using an :after pseudo-element on the root. Since the selection\n // indicator uses an :after pseudo-element on the root, there is a conflict.\n base: createCustomFocusIndicatorStyle({\n ...shorthands.borderColor('transparent'),\n outlineWidth: tokens.strokeWidthThick,\n outlineColor: 'transparent',\n outlineStyle: 'solid',\n boxShadow: `\n ${tokens.shadow4},\n 0 0 0 ${tokens.strokeWidthThick} ${tokens.colorStrokeFocus2}\n `,\n zIndex: 1,\n }),\n});\n\n/** Indicator styles for when pending selection */\nconst usePendingIndicatorStyles = makeStyles({\n base: {\n ':hover:before': {\n backgroundColor: 'none',\n ...shorthands.borderStyle('solid'),\n ...shorthands.borderColor(tokens.colorNeutralStroke1Hover),\n ...shorthands.borderRadius(tokens.borderRadiusCircular),\n boxSizing: 'border-box',\n content: '\"\"',\n position: 'absolute',\n },\n ':active:before': {\n backgroundColor: 'none',\n ...shorthands.borderStyle('solid'),\n ...shorthands.borderColor(tokens.colorNeutralStroke1Pressed),\n ...shorthands.borderRadius(tokens.borderRadiusCircular),\n boxSizing: 'border-box',\n content: '\"\"',\n position: 'absolute',\n },\n },\n disabled: {\n ':hover:before': {\n ...shorthands.borderColor(tokens.colorTransparentStroke),\n },\n ':active:before': {\n ...shorthands.borderColor(tokens.colorTransparentStroke),\n },\n },\n mediumHorizontal: {\n ':before': {\n bottom: 0,\n ...shorthands.borderWidth(`calc(${tabIndicatorStrokeWidths.mediumHorizontal} / 2.0)`),\n height: tabIndicatorStrokeWidths.mediumHorizontal,\n left: tabIndicatorPadding.mediumHorizontal,\n right: tabIndicatorPadding.mediumHorizontal,\n },\n },\n mediumVertical: {\n ':before': {\n bottom: tabIndicatorPadding.mediumVertical,\n ...shorthands.borderWidth(`calc(${tabIndicatorStrokeWidths.mediumVertical} / 2.0)`),\n left: 0,\n top: tabIndicatorPadding.mediumVertical,\n width: tabIndicatorStrokeWidths.mediumVertical,\n },\n },\n smallHorizontal: {\n ':before': {\n bottom: 0,\n ...shorthands.borderWidth(`calc(${tabIndicatorStrokeWidths.smallHorizontal} / 2.0)`),\n height: tabIndicatorStrokeWidths.smallHorizontal,\n left: tabIndicatorPadding.smallHorizontal,\n right: tabIndicatorPadding.smallHorizontal,\n },\n },\n smallVertical: {\n ':before': {\n bottom: tabIndicatorPadding.smallVertical,\n ...shorthands.borderWidth(`calc(${tabIndicatorStrokeWidths.smallVertical} / 2.0)`),\n left: 0,\n top: tabIndicatorPadding.smallVertical,\n width: tabIndicatorStrokeWidths.smallVertical,\n },\n },\n});\n\nconst useActiveIndicatorStyles = makeStyles({\n base: {\n ':after': {\n ...shorthands.borderColor(tokens.colorTransparentStroke),\n ...shorthands.borderStyle('solid'),\n ...shorthands.borderRadius(tokens.borderRadiusCircular),\n boxSizing: 'border-box',\n content: '\"\"',\n position: 'absolute',\n zIndex: 1,\n },\n },\n selected: {\n ':after': {\n ...shorthands.borderColor(tokens.colorCompoundBrandStroke),\n },\n ':hover:after': {\n ...shorthands.borderColor(tokens.colorCompoundBrandStrokeHover),\n },\n ':active:after': {\n ...shorthands.borderColor(tokens.colorCompoundBrandStrokePressed),\n },\n },\n disabled: {\n ':after': {\n ...shorthands.borderColor(tokens.colorNeutralForegroundDisabled),\n },\n },\n mediumHorizontal: {\n ':after': {\n bottom: '0',\n ...shorthands.borderWidth(`calc(${tabIndicatorStrokeWidths.mediumHorizontal} / 2.0)`),\n height: tabIndicatorStrokeWidths.mediumHorizontal,\n left: tabIndicatorPadding.mediumHorizontal,\n right: tabIndicatorPadding.mediumHorizontal,\n },\n },\n mediumVertical: {\n ':after': {\n bottom: tabIndicatorPadding.mediumVertical,\n ...shorthands.borderWidth(`calc(${tabIndicatorStrokeWidths.mediumVertical} / 2.0)`),\n left: 0,\n top: tabIndicatorPadding.mediumVertical,\n width: tabIndicatorStrokeWidths.mediumVertical,\n },\n },\n smallHorizontal: {\n ':after': {\n bottom: 0,\n ...shorthands.borderWidth(`calc(${tabIndicatorStrokeWidths.smallHorizontal} / 2.0)`),\n height: tabIndicatorStrokeWidths.smallHorizontal,\n left: tabIndicatorPadding.smallHorizontal,\n right: tabIndicatorPadding.smallHorizontal,\n },\n },\n smallVertical: {\n ':after': {\n bottom: tabIndicatorPadding.smallVertical,\n ...shorthands.borderWidth(`calc(${tabIndicatorStrokeWidths.smallVertical} / 2.0)`),\n left: '0',\n top: tabIndicatorPadding.smallVertical,\n width: tabIndicatorStrokeWidths.smallVertical,\n },\n },\n});\n\n/**\n * Styles for the icon slot.\n */\nconst useIconStyles = makeStyles({\n base: {\n alignItems: 'center',\n display: 'inline-flex',\n justifyContent: 'center',\n ...shorthands.overflow('hidden'),\n },\n // per design, the small and medium font sizes are the same.\n // the size prop only affects spacing.\n small: {\n fontSize: '20px',\n height: '20px',\n width: '20px',\n },\n medium: {\n fontSize: '20px',\n height: '20px',\n width: '20px',\n },\n});\n\n/**\n * Styles for the content slot (children)\n */\nconst useContentStyles = makeStyles({\n base: {\n ...pendingContentSizeTokens.body1,\n ...shorthands.overflow('hidden'),\n // content padding is the same for medium & small, horiztonal & vertical\n ...shorthands.padding(0, pendingSpacingTokens.xxs),\n },\n selected: {\n ...pendingContentSizeTokens.body1Strong,\n },\n});\n\n/**\n * Apply styling to the Tab slots based on the state\n */\nexport const useTabStyles_unstable = (state: TabState): TabState => {\n const rootStyles = useRootStyles();\n const focusStyles = useFocusStyles();\n const pendingIndicatorStyles = usePendingIndicatorStyles();\n const activeIndicatorStyles = useActiveIndicatorStyles();\n const iconStyles = useIconStyles();\n const contentStyles = useContentStyles();\n\n const { appearance, disabled, selected, size, vertical } = state;\n\n state.root.className = mergeClasses(\n tabClassNames.root,\n rootStyles.base,\n size !== 'small' && (vertical ? rootStyles.mediumVertical : rootStyles.mediumHorizontal),\n size === 'small' && (vertical ? rootStyles.smallVertical : rootStyles.smallHorizontal),\n focusStyles.base,\n !disabled && appearance === 'subtle' && rootStyles.subtle,\n !disabled && appearance === 'transparent' && rootStyles.transparent,\n !disabled && selected && rootStyles.selected,\n disabled && rootStyles.disabled,\n\n // pending indicator (before pseudo element)\n pendingIndicatorStyles.base,\n size !== 'small' && (vertical ? pendingIndicatorStyles.mediumVertical : pendingIndicatorStyles.mediumHorizontal),\n size === 'small' && (vertical ? pendingIndicatorStyles.smallVertical : pendingIndicatorStyles.smallHorizontal),\n disabled && pendingIndicatorStyles.disabled,\n\n // active indicator (after pseudo element)\n selected && activeIndicatorStyles.base,\n selected && !disabled && activeIndicatorStyles.selected,\n selected &&\n size !== 'small' &&\n (vertical ? activeIndicatorStyles.mediumVertical : activeIndicatorStyles.mediumHorizontal),\n selected &&\n size === 'small' &&\n (vertical ? activeIndicatorStyles.smallVertical : activeIndicatorStyles.smallHorizontal),\n selected && disabled && activeIndicatorStyles.disabled,\n state.root.className,\n );\n\n if (state.icon) {\n state.icon.className = mergeClasses(tabClassNames.icon, iconStyles.base, iconStyles[size], state.icon.className);\n }\n\n state.content.className = mergeClasses(\n tabClassNames.content,\n contentStyles.base,\n selected && contentStyles.selected,\n state.content.className,\n );\n\n useTabAnimatedIndicatorStyles_unstable(state);\n\n return state;\n};\n"],"sourceRoot":"../src/"}
1
+ {"version":3,"sources":["components/Tab/useTabStyles.ts"],"names":[],"mappings":"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","sourcesContent":["import type { TabSlots, TabState } from './Tab.types';\n\nimport { makeStyles, mergeClasses, shorthands } from '@griffel/react';\nimport { createCustomFocusIndicatorStyle } from '@fluentui/react-tabster';\nimport { tokens, typographyStyles } from '@fluentui/react-theme';\nimport { SlotClassNames } from '@fluentui/react-utilities';\nimport { useTabAnimatedIndicatorStyles_unstable } from './useTabAnimatedIndicator';\n\nexport const tabClassNames: SlotClassNames<TabSlots> = {\n root: 'fui-Tab',\n icon: 'fui-Tab__icon',\n content: 'fui-Tab__content',\n};\n\n// TODO temporary export to pass conformance test.\nexport const tabClassName = tabClassNames.root;\n\n/**\n * Styles for the root slot\n */\n/* eslint-disable @typescript-eslint/naming-convention */\nconst useRootStyles = makeStyles({\n base: {\n alignItems: 'center',\n ...shorthands.borderColor('none'),\n ...shorthands.borderRadius(tokens.borderRadiusMedium),\n ...shorthands.borderWidth(0),\n cursor: 'pointer',\n display: 'grid',\n flexShrink: 0,\n gridAutoFlow: 'column',\n gridTemplateColumns: 'auto',\n gridTemplateRows: 'auto',\n fontFamily: tokens.fontFamilyBase,\n lineHeight: tokens.lineHeightBase300,\n outlineStyle: 'none',\n position: 'relative',\n ...shorthands.overflow('hidden'),\n textTransform: 'none',\n },\n horizontal: {\n justifyContent: 'center',\n },\n vertical: {\n justifyContent: 'start',\n },\n mediumHorizontal: {\n columnGap: tokens.spacingHorizontalSNudge,\n ...shorthands.padding(tokens.spacingVerticalM, tokens.spacingHorizontalMNudge),\n },\n mediumVertical: {\n // horizontal spacing is deliberate. This is the gap between icon and content.\n columnGap: tokens.spacingHorizontalSNudge,\n ...shorthands.padding(tokens.spacingVerticalSNudge, tokens.spacingHorizontalMNudge),\n },\n smallHorizontal: {\n columnGap: tokens.spacingHorizontalXXS,\n ...shorthands.padding(tokens.spacingVerticalSNudge, tokens.spacingHorizontalSNudge),\n },\n smallVertical: {\n // horizontal spacing is deliberate. This is the gap between icon and content.\n columnGap: tokens.spacingHorizontalXXS,\n ...shorthands.padding(tokens.spacingVerticalXXS, tokens.spacingHorizontalSNudge),\n },\n transparent: {\n backgroundColor: tokens.colorTransparentBackground,\n ':hover': {\n backgroundColor: tokens.colorTransparentBackgroundHover,\n },\n ':active': {\n backgroundColor: tokens.colorTransparentBackgroundPressed,\n },\n '& .fui-Tab__icon': {\n color: tokens.colorNeutralForeground2,\n },\n ':hover .fui-Tab__icon': {\n color: tokens.colorNeutralForeground2Hover,\n },\n ':active .fui-Tab__icon': {\n color: tokens.colorNeutralForeground2Pressed,\n },\n '& .fui-Tab__content': {\n color: tokens.colorNeutralForeground2,\n },\n ':hover .fui-Tab__content': {\n color: tokens.colorNeutralForeground2Hover,\n },\n ':active .fui-Tab__content': {\n color: tokens.colorNeutralForeground2Pressed,\n },\n },\n subtle: {\n backgroundColor: tokens.colorSubtleBackground,\n ':hover': {\n backgroundColor: tokens.colorSubtleBackgroundHover,\n },\n ':active': {\n backgroundColor: tokens.colorSubtleBackgroundPressed,\n },\n '& .fui-Tab__icon': {\n color: tokens.colorNeutralForeground2,\n },\n ':hover .fui-Tab__icon': {\n color: tokens.colorNeutralForeground2Hover,\n },\n ':active .fui-Tab__icon': {\n color: tokens.colorNeutralForeground2Pressed,\n },\n '& .fui-Tab__content': {\n color: tokens.colorNeutralForeground2,\n },\n ':hover .fui-Tab__content': {\n color: tokens.colorNeutralForeground2Hover,\n },\n ':active .fui-Tab__content': {\n color: tokens.colorNeutralForeground2Pressed,\n },\n },\n disabled: {\n backgroundColor: tokens.colorTransparentBackground,\n\n '& .fui-Tab__icon': {\n color: tokens.colorNeutralForegroundDisabled,\n },\n '& .fui-Tab__content': {\n color: tokens.colorNeutralForegroundDisabled,\n },\n cursor: 'not-allowed',\n },\n selected: {\n '& .fui-Tab__icon': {\n color: tokens.colorCompoundBrandForeground1,\n },\n ':hover .fui-Tab__icon': {\n color: tokens.colorCompoundBrandForeground1Hover,\n },\n ':active .fui-Tab__icon': {\n color: tokens.colorCompoundBrandForeground1Pressed,\n },\n '& .fui-Tab__content': {\n color: tokens.colorNeutralForeground1,\n },\n ':hover .fui-Tab__content': {\n color: tokens.colorNeutralForeground1Hover,\n },\n ':active .fui-Tab__content': {\n color: tokens.colorNeutralForeground1Pressed,\n },\n },\n});\n/* eslint-enable @typescript-eslint/naming-convention */\n\n/**\n * Focus styles for the root slot\n */\nconst useFocusStyles = makeStyles({\n // Tab creates a custom focus indicator because the default focus indicator\n // is applied using an ::after pseudo-element on the root. Since the selection\n // indicator uses an ::after pseudo-element on the root, there is a conflict.\n base: createCustomFocusIndicatorStyle({\n ...shorthands.borderColor('transparent'),\n outlineWidth: tokens.strokeWidthThick,\n outlineColor: 'transparent',\n outlineStyle: 'solid',\n boxShadow: `\n ${tokens.shadow4},\n 0 0 0 ${tokens.strokeWidthThick} ${tokens.colorStrokeFocus2}\n `,\n zIndex: 1,\n }),\n});\n\n/** Indicator styles for when pending selection */\nconst usePendingIndicatorStyles = makeStyles({\n base: {\n ':hover::before': {\n backgroundColor: tokens.colorNeutralStroke1Hover,\n ...shorthands.borderRadius(tokens.borderRadiusCircular),\n content: '\"\"',\n position: 'absolute',\n },\n ':active::before': {\n backgroundColor: tokens.colorNeutralStroke1Pressed,\n ...shorthands.borderRadius(tokens.borderRadiusCircular),\n content: '\"\"',\n position: 'absolute',\n },\n '@media (forced-colors: active)': {\n ':hover::before': {\n backgroundColor: 'Highlight',\n },\n ':active::before': {\n backgroundColor: 'Highlight',\n },\n },\n },\n disabled: {\n ':hover::before': {\n backgroundColor: tokens.colorTransparentStroke,\n },\n ':active::before': {\n backgroundColor: tokens.colorTransparentStroke,\n },\n },\n mediumHorizontal: {\n '::before': {\n bottom: 0,\n height: tokens.strokeWidthThicker,\n left: tokens.spacingHorizontalM,\n right: tokens.spacingHorizontalM,\n },\n },\n mediumVertical: {\n '::before': {\n bottom: tokens.spacingVerticalS,\n left: 0,\n top: tokens.spacingVerticalS,\n width: tokens.strokeWidthThicker,\n },\n },\n smallHorizontal: {\n '::before': {\n bottom: 0,\n height: tokens.strokeWidthThick,\n left: tokens.spacingHorizontalSNudge,\n right: tokens.spacingHorizontalSNudge,\n },\n },\n smallVertical: {\n '::before': {\n bottom: tokens.spacingVerticalXS,\n left: 0,\n top: tokens.spacingVerticalXS,\n width: tokens.strokeWidthThicker,\n },\n },\n});\n\nconst useActiveIndicatorStyles = makeStyles({\n base: {\n '::after': {\n backgroundColor: tokens.colorTransparentStroke,\n ...shorthands.borderRadius(tokens.borderRadiusCircular),\n content: '\"\"',\n position: 'absolute',\n zIndex: 1,\n },\n },\n selected: {\n '::after': {\n backgroundColor: tokens.colorCompoundBrandStroke,\n },\n ':hover::after': {\n backgroundColor: tokens.colorCompoundBrandStrokeHover,\n },\n ':active::after': {\n backgroundColor: tokens.colorCompoundBrandStrokePressed,\n },\n '@media (forced-colors: active)': {\n '::after': {\n backgroundColor: 'ButtonText',\n },\n ':hover::after': {\n backgroundColor: 'ButtonText',\n },\n ':active::after': {\n backgroundColor: 'ButtonText',\n },\n },\n },\n disabled: {\n '::after': {\n backgroundColor: tokens.colorNeutralForegroundDisabled,\n },\n },\n mediumHorizontal: {\n '::after': {\n bottom: '0',\n height: tokens.strokeWidthThicker,\n left: tokens.spacingHorizontalM,\n right: tokens.spacingHorizontalM,\n },\n },\n mediumVertical: {\n '::after': {\n bottom: tokens.spacingVerticalS,\n left: 0,\n top: tokens.spacingVerticalS,\n width: tokens.strokeWidthThicker,\n },\n },\n smallHorizontal: {\n '::after': {\n bottom: 0,\n height: tokens.strokeWidthThick,\n left: tokens.spacingHorizontalSNudge,\n right: tokens.spacingHorizontalSNudge,\n },\n },\n smallVertical: {\n '::after': {\n bottom: tokens.spacingVerticalXS,\n left: '0',\n top: tokens.spacingVerticalXS,\n width: tokens.strokeWidthThicker,\n },\n },\n});\n\n/**\n * Styles for the icon slot.\n */\nconst useIconStyles = makeStyles({\n base: {\n alignItems: 'center',\n display: 'inline-flex',\n justifyContent: 'center',\n ...shorthands.overflow('hidden'),\n },\n // per design, the small and medium font sizes are the same.\n // the size prop only affects spacing.\n small: {\n fontSize: '20px',\n height: '20px',\n width: '20px',\n },\n medium: {\n fontSize: '20px',\n height: '20px',\n width: '20px',\n },\n});\n\n/**\n * Styles for the content slot (children)\n */\nconst useContentStyles = makeStyles({\n base: {\n ...typographyStyles.body1,\n ...shorthands.overflow('hidden'),\n // content padding is the same for medium & small, horiztonal & vertical\n ...shorthands.padding(tokens.spacingVerticalNone, tokens.spacingHorizontalXXS),\n },\n selected: {\n ...typographyStyles.body1Strong,\n },\n});\n\n/**\n * Apply styling to the Tab slots based on the state\n */\nexport const useTabStyles_unstable = (state: TabState): TabState => {\n const rootStyles = useRootStyles();\n const focusStyles = useFocusStyles();\n const pendingIndicatorStyles = usePendingIndicatorStyles();\n const activeIndicatorStyles = useActiveIndicatorStyles();\n const iconStyles = useIconStyles();\n const contentStyles = useContentStyles();\n\n const { appearance, disabled, selected, size, vertical } = state;\n\n state.root.className = mergeClasses(\n tabClassNames.root,\n rootStyles.base,\n vertical ? rootStyles.vertical : rootStyles.horizontal,\n size !== 'small' && (vertical ? rootStyles.mediumVertical : rootStyles.mediumHorizontal),\n size === 'small' && (vertical ? rootStyles.smallVertical : rootStyles.smallHorizontal),\n focusStyles.base,\n !disabled && appearance === 'subtle' && rootStyles.subtle,\n !disabled && appearance === 'transparent' && rootStyles.transparent,\n !disabled && selected && rootStyles.selected,\n disabled && rootStyles.disabled,\n\n // pending indicator (before pseudo element)\n pendingIndicatorStyles.base,\n size !== 'small' && (vertical ? pendingIndicatorStyles.mediumVertical : pendingIndicatorStyles.mediumHorizontal),\n size === 'small' && (vertical ? pendingIndicatorStyles.smallVertical : pendingIndicatorStyles.smallHorizontal),\n disabled && pendingIndicatorStyles.disabled,\n\n // active indicator (after pseudo element)\n selected && activeIndicatorStyles.base,\n selected && !disabled && activeIndicatorStyles.selected,\n selected &&\n size !== 'small' &&\n (vertical ? activeIndicatorStyles.mediumVertical : activeIndicatorStyles.mediumHorizontal),\n selected &&\n size === 'small' &&\n (vertical ? activeIndicatorStyles.smallVertical : activeIndicatorStyles.smallHorizontal),\n selected && disabled && activeIndicatorStyles.disabled,\n state.root.className,\n );\n\n if (state.icon) {\n state.icon.className = mergeClasses(tabClassNames.icon, iconStyles.base, iconStyles[size], state.icon.className);\n }\n\n state.content.className = mergeClasses(\n tabClassNames.content,\n contentStyles.base,\n selected && contentStyles.selected,\n state.content.className,\n );\n\n useTabAnimatedIndicatorStyles_unstable(state);\n\n return state;\n};\n"],"sourceRoot":"../src/"}
@@ -32,7 +32,8 @@ const useTabList_unstable = (props, ref) => {
32
32
  const innerRef = React.useRef(null);
33
33
  const focusAttributes = react_tabster_1.useArrowNavigationGroup({
34
34
  circular: true,
35
- axis: vertical ? 'vertical' : 'horizontal'
35
+ axis: vertical ? 'vertical' : 'horizontal',
36
+ memorizeCurrent: true
36
37
  });
37
38
  const [selectedValue, setSelectedValue] = react_utilities_1.useControllableState({
38
39
  state: props.selectedValue,
@@ -1 +1 @@
1
- {"version":3,"sources":["components/TabList/useTabList.ts"],"names":[],"mappings":"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","sourcesContent":["import * as React from 'react';\nimport { useArrowNavigationGroup } from '@fluentui/react-tabster';\nimport {\n getNativeElementProps,\n useControllableState,\n useEventCallback,\n useMergedRefs,\n} from '@fluentui/react-utilities';\nimport type { TabRegisterData, SelectTabData, SelectTabEvent, TabListProps, TabListState } from './TabList.types';\nimport { TabValue } from '../Tab/Tab.types';\n\n/**\n * Create the state required to render TabList.\n *\n * The returned state can be modified with hooks such as useTabListStyles_unstable,\n * before being passed to renderTabList_unstable.\n *\n * @param props - props from this instance of TabList\n * @param ref - reference to root HTMLElement of TabList\n */\nexport const useTabList_unstable = (props: TabListProps, ref: React.Ref<HTMLElement>): TabListState => {\n const { appearance = 'transparent', disabled = false, onTabSelect, size = 'medium', vertical = false } = props;\n\n const innerRef = React.useRef<HTMLElement>(null);\n\n const focusAttributes = useArrowNavigationGroup({ circular: true, axis: vertical ? 'vertical' : 'horizontal' });\n\n const [selectedValue, setSelectedValue] = useControllableState({\n state: props.selectedValue,\n defaultState: props.defaultSelectedValue,\n initialState: undefined,\n });\n\n // considered usePrevious, but it is sensitive to re-renders\n // this could cause the previous to move to current in the case where the tab list re-renders.\n // these refs avoid getRegisteredTabs changing when selectedValue changes and causing\n // renders for tabs that have not changed.\n const currentSelectedValue = React.useRef<TabValue | undefined>(undefined);\n const previousSelectedValue = React.useRef<TabValue | undefined>(undefined);\n\n React.useEffect(() => {\n previousSelectedValue.current = currentSelectedValue.current;\n currentSelectedValue.current = selectedValue;\n }, [selectedValue]);\n\n const onSelect = useEventCallback((event: SelectTabEvent, data: SelectTabData) => {\n setSelectedValue(data.value);\n onTabSelect?.(event, data);\n });\n\n const registeredTabs = React.useRef<Record<string, TabRegisterData>>({});\n\n const onRegister = useEventCallback((data: TabRegisterData) => {\n registeredTabs.current[JSON.stringify(data.value)] = data;\n });\n\n const onUnregister = useEventCallback((data: TabRegisterData) => {\n delete registeredTabs.current[JSON.stringify(data.value)];\n });\n\n const getRegisteredTabs = React.useCallback(() => {\n return {\n selectedValue: currentSelectedValue.current,\n previousSelectedValue: previousSelectedValue.current,\n registeredTabs: registeredTabs.current,\n };\n }, []);\n\n return {\n components: {\n root: 'div',\n },\n root: getNativeElementProps('div', {\n ref: useMergedRefs(ref, innerRef),\n role: 'tablist',\n ...focusAttributes,\n ...props,\n }),\n appearance,\n disabled,\n selectedValue,\n size,\n vertical,\n onRegister,\n onUnregister,\n onSelect,\n getRegisteredTabs,\n };\n};\n"],"sourceRoot":"../src/"}
1
+ {"version":3,"sources":["components/TabList/useTabList.ts"],"names":[],"mappings":"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","sourcesContent":["import * as React from 'react';\nimport { useArrowNavigationGroup } from '@fluentui/react-tabster';\nimport {\n getNativeElementProps,\n useControllableState,\n useEventCallback,\n useMergedRefs,\n} from '@fluentui/react-utilities';\nimport type { TabRegisterData, SelectTabData, SelectTabEvent, TabListProps, TabListState } from './TabList.types';\nimport { TabValue } from '../Tab/Tab.types';\n\n/**\n * Create the state required to render TabList.\n *\n * The returned state can be modified with hooks such as useTabListStyles_unstable,\n * before being passed to renderTabList_unstable.\n *\n * @param props - props from this instance of TabList\n * @param ref - reference to root HTMLElement of TabList\n */\nexport const useTabList_unstable = (props: TabListProps, ref: React.Ref<HTMLElement>): TabListState => {\n const { appearance = 'transparent', disabled = false, onTabSelect, size = 'medium', vertical = false } = props;\n\n const innerRef = React.useRef<HTMLElement>(null);\n\n const focusAttributes = useArrowNavigationGroup({\n circular: true,\n axis: vertical ? 'vertical' : 'horizontal',\n memorizeCurrent: true,\n });\n\n const [selectedValue, setSelectedValue] = useControllableState({\n state: props.selectedValue,\n defaultState: props.defaultSelectedValue,\n initialState: undefined,\n });\n\n // considered usePrevious, but it is sensitive to re-renders\n // this could cause the previous to move to current in the case where the tab list re-renders.\n // these refs avoid getRegisteredTabs changing when selectedValue changes and causing\n // renders for tabs that have not changed.\n const currentSelectedValue = React.useRef<TabValue | undefined>(undefined);\n const previousSelectedValue = React.useRef<TabValue | undefined>(undefined);\n\n React.useEffect(() => {\n previousSelectedValue.current = currentSelectedValue.current;\n currentSelectedValue.current = selectedValue;\n }, [selectedValue]);\n\n const onSelect = useEventCallback((event: SelectTabEvent, data: SelectTabData) => {\n setSelectedValue(data.value);\n onTabSelect?.(event, data);\n });\n\n const registeredTabs = React.useRef<Record<string, TabRegisterData>>({});\n\n const onRegister = useEventCallback((data: TabRegisterData) => {\n registeredTabs.current[JSON.stringify(data.value)] = data;\n });\n\n const onUnregister = useEventCallback((data: TabRegisterData) => {\n delete registeredTabs.current[JSON.stringify(data.value)];\n });\n\n const getRegisteredTabs = React.useCallback(() => {\n return {\n selectedValue: currentSelectedValue.current,\n previousSelectedValue: previousSelectedValue.current,\n registeredTabs: registeredTabs.current,\n };\n }, []);\n\n return {\n components: {\n root: 'div',\n },\n root: getNativeElementProps('div', {\n ref: useMergedRefs(ref, innerRef),\n role: 'tablist',\n ...focusAttributes,\n ...props,\n }),\n appearance,\n disabled,\n selectedValue,\n size,\n vertical,\n onRegister,\n onUnregister,\n onSelect,\n getRegisteredTabs,\n };\n};\n"],"sourceRoot":"../src/"}
@@ -20,13 +20,20 @@ const useStyles = /*#__PURE__*/react_1.__styles({
20
20
  "root": {
21
21
  "mc9l5x": "f22iagw",
22
22
  "Beiy3e4": "f1063pyq",
23
+ "Bnnss6s": "fi64zpg",
24
+ "Eh141a": "flvyvdh",
23
25
  "qhf8xq": "f10pi13n"
24
26
  },
27
+ "horizontal": {
28
+ "Bt984gj": "f1q9h2pe",
29
+ "Beiy3e4": "f1063pyq"
30
+ },
25
31
  "vertical": {
32
+ "Bt984gj": "f1q9h2pe",
26
33
  "Beiy3e4": "f1vx9l62"
27
34
  }
28
35
  }, {
29
- "d": [".f22iagw{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;}", ".f1063pyq{-webkit-flex-direction:row;-ms-flex-direction:row;flex-direction:row;}", ".f10pi13n{position:relative;}", ".f1vx9l62{-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;}"]
36
+ "d": [".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;}", ".flvyvdh{-webkit-box-flex-wrap:nowrap;-webkit-flex-wrap:nowrap;-ms-flex-wrap:nowrap;flex-wrap:nowrap;}", ".f10pi13n{position:relative;}", ".f1q9h2pe{-webkit-align-items:stretch;-webkit-box-align:stretch;-ms-flex-align:stretch;align-items:stretch;}", ".f1vx9l62{-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;}"]
30
37
  });
31
38
  /**
32
39
  * Apply styling to the TabList slots based on the state
@@ -38,7 +45,7 @@ const useTabListStyles_unstable = state => {
38
45
  vertical
39
46
  } = state;
40
47
  const styles = useStyles();
41
- state.root.className = react_1.mergeClasses(exports.tabListClassName, styles.root, vertical && styles.vertical, state.root.className);
48
+ state.root.className = react_1.mergeClasses(exports.tabListClassName, styles.root, vertical ? styles.vertical : styles.horizontal, state.root.className);
42
49
  return state;
43
50
  };
44
51
 
@@ -1 +1 @@
1
- {"version":3,"sources":["components/TabList/useTabListStyles.ts"],"names":[],"mappings":";;;;;;;AACA,MAAA,OAAA,gBAAA,OAAA,CAAA,gBAAA,CAAA;;AAGa,OAAA,CAAA,iBAAA,GAAkD;AAC7D,EAAA,IAAI,EAAE;AADuD,CAAlD,C,CAIb;;AACa,OAAA,CAAA,gBAAA,GAAmB,OAAA,CAAA,iBAAA,CAAkB,IAArC;AAEb;;AAEG;;AACH,MAAM,SAAS,gBAAG,OAAA,SAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAAlB;AAWA;;AAEG;;;AACI,MAAM,yBAAyB,GAAI,KAAD,IAAsC;AAC7E,QAAM;AAAE,IAAA;AAAF,MAAe,KAArB;AAEA,QAAM,MAAM,GAAG,SAAS,EAAxB;AAEA,EAAA,KAAK,CAAC,IAAN,CAAW,SAAX,GAAuB,OAAA,CAAA,YAAA,CAAa,OAAA,CAAA,gBAAb,EAA+B,MAAM,CAAC,IAAtC,EAA4C,QAAQ,IAAI,MAAM,CAAC,QAA/D,EAAyE,KAAK,CAAC,IAAN,CAAW,SAApF,CAAvB;AAEA,SAAO,KAAP;AACD,CARM;;AAAM,OAAA,CAAA,yBAAA,GAAyB,yBAAzB","sourcesContent":["import { SlotClassNames } from '@fluentui/react-utilities';\nimport { makeStyles, mergeClasses } from '@griffel/react';\nimport type { TabListSlots, TabListState } from './TabList.types';\n\nexport const tabListClassNames: SlotClassNames<TabListSlots> = {\n root: 'fui-TabList',\n};\n\n// TODO temporary export to pass conformance test.\nexport const tabListClassName = tabListClassNames.root;\n\n/**\n * Styles for the root slot\n */\nconst useStyles = makeStyles({\n root: {\n display: 'flex',\n flexDirection: 'row',\n position: 'relative',\n },\n vertical: {\n flexDirection: 'column',\n },\n});\n\n/**\n * Apply styling to the TabList slots based on the state\n */\nexport const useTabListStyles_unstable = (state: TabListState): TabListState => {\n const { vertical } = state;\n\n const styles = useStyles();\n\n state.root.className = mergeClasses(tabListClassName, styles.root, vertical && styles.vertical, state.root.className);\n\n return state;\n};\n"],"sourceRoot":"../src/"}
1
+ {"version":3,"sources":["components/TabList/useTabListStyles.ts"],"names":[],"mappings":";;;;;;;AACA,MAAA,OAAA,gBAAA,OAAA,CAAA,gBAAA,CAAA;;AAGa,OAAA,CAAA,iBAAA,GAAkD;AAC7D,EAAA,IAAI,EAAE;AADuD,CAAlD,C,CAIb;;AACa,OAAA,CAAA,gBAAA,GAAmB,OAAA,CAAA,iBAAA,CAAkB,IAArC;AAEb;;AAEG;;AACH,MAAM,SAAS,gBAAG,OAAA,SAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAAlB;AAkBA;;AAEG;;;AACI,MAAM,yBAAyB,GAAI,KAAD,IAAsC;AAC7E,QAAM;AAAE,IAAA;AAAF,MAAe,KAArB;AAEA,QAAM,MAAM,GAAG,SAAS,EAAxB;AAEA,EAAA,KAAK,CAAC,IAAN,CAAW,SAAX,GAAuB,OAAA,CAAA,YAAA,CACrB,OAAA,CAAA,gBADqB,EAErB,MAAM,CAAC,IAFc,EAGrB,QAAQ,GAAG,MAAM,CAAC,QAAV,GAAqB,MAAM,CAAC,UAHf,EAIrB,KAAK,CAAC,IAAN,CAAW,SAJU,CAAvB;AAOA,SAAO,KAAP;AACD,CAbM;;AAAM,OAAA,CAAA,yBAAA,GAAyB,yBAAzB","sourcesContent":["import { SlotClassNames } from '@fluentui/react-utilities';\nimport { makeStyles, mergeClasses } from '@griffel/react';\nimport type { TabListSlots, TabListState } from './TabList.types';\n\nexport const tabListClassNames: SlotClassNames<TabListSlots> = {\n root: 'fui-TabList',\n};\n\n// TODO temporary export to pass conformance test.\nexport const tabListClassName = tabListClassNames.root;\n\n/**\n * Styles for the root slot\n */\nconst useStyles = makeStyles({\n root: {\n display: 'flex',\n flexDirection: 'row',\n flexShrink: 0,\n flexWrap: 'nowrap',\n position: 'relative',\n },\n horizontal: {\n alignItems: 'stretch',\n flexDirection: 'row',\n },\n vertical: {\n alignItems: 'stretch',\n flexDirection: 'column',\n },\n});\n\n/**\n * Apply styling to the TabList slots based on the state\n */\nexport const useTabListStyles_unstable = (state: TabListState): TabListState => {\n const { vertical } = state;\n\n const styles = useStyles();\n\n state.root.className = mergeClasses(\n tabListClassName,\n styles.root,\n vertical ? styles.vertical : styles.horizontal,\n state.root.className,\n );\n\n return state;\n};\n"],"sourceRoot":"../src/"}