@fluentui/react-tabs 9.5.1 → 9.6.0

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.
package/CHANGELOG.md CHANGED
@@ -1,12 +1,36 @@
1
1
  # Change Log - @fluentui/react-tabs
2
2
 
3
- This log was last generated on Mon, 23 Sep 2024 12:36:04 GMT and should not be manually modified.
3
+ This log was last generated on Tue, 15 Oct 2024 17:13:30 GMT and should not be manually modified.
4
4
 
5
5
  <!-- Start content -->
6
6
 
7
+ ## [9.6.0](https://github.com/microsoft/fluentui/tree/@fluentui/react-tabs_v9.6.0)
8
+
9
+ Tue, 15 Oct 2024 17:13:30 GMT
10
+ [Compare changes](https://github.com/microsoft/fluentui/compare/@fluentui/react-tabs_v9.5.2..@fluentui/react-tabs_v9.6.0)
11
+
12
+ ### Minor changes
13
+
14
+ - feature: add rounded tab variant ([PR #32944](https://github.com/microsoft/fluentui/pull/32944) by kirpadv@gmail.com)
15
+ - Bump @fluentui/react-context-selector to v9.1.68 ([PR #32999](https://github.com/microsoft/fluentui/pull/32999) by beachball)
16
+ - Bump @fluentui/react-jsx-runtime to v9.0.45 ([PR #32999](https://github.com/microsoft/fluentui/pull/32999) by beachball)
17
+ - Bump @fluentui/react-shared-contexts to v9.20.2 ([PR #32999](https://github.com/microsoft/fluentui/pull/32999) by beachball)
18
+ - Bump @fluentui/react-tabster to v9.22.9 ([PR #32999](https://github.com/microsoft/fluentui/pull/32999) by beachball)
19
+ - Bump @fluentui/react-theme to v9.1.21 ([PR #32999](https://github.com/microsoft/fluentui/pull/32999) by beachball)
20
+ - Bump @fluentui/react-utilities to v9.18.16 ([PR #32999](https://github.com/microsoft/fluentui/pull/32999) by beachball)
21
+
22
+ ## [9.5.2](https://github.com/microsoft/fluentui/tree/@fluentui/react-tabs_v9.5.2)
23
+
24
+ Tue, 08 Oct 2024 22:05:59 GMT
25
+ [Compare changes](https://github.com/microsoft/fluentui/compare/@fluentui/react-tabs_v9.5.1..@fluentui/react-tabs_v9.5.2)
26
+
27
+ ### Patches
28
+
29
+ - Bump @fluentui/react-tabster to v9.22.8 ([PR #33007](https://github.com/microsoft/fluentui/pull/33007) by beachball)
30
+
7
31
  ## [9.5.1](https://github.com/microsoft/fluentui/tree/@fluentui/react-tabs_v9.5.1)
8
32
 
9
- Mon, 23 Sep 2024 12:36:04 GMT
33
+ Mon, 23 Sep 2024 12:40:17 GMT
10
34
  [Compare changes](https://github.com/microsoft/fluentui/compare/@fluentui/react-tabs_v9.5.0..@fluentui/react-tabs_v9.5.1)
11
35
 
12
36
  ### Patches
package/dist/index.d.ts CHANGED
@@ -87,10 +87,13 @@ export declare type TabListProps = ComponentProps<TabListSlots> & {
87
87
  * A tab list can supports 'transparent' and 'subtle' appearance.
88
88
  *- 'subtle': Minimizes emphasis to blend into the background until hovered or focused.
89
89
  *- 'transparent': No background and border styling
90
+ *- 'subtle-circular': Adds background and border styling
91
+ *- 'filled-circular': Adds background styling
92
+ *
90
93
  * The appearance affects each of the contained tabs.
91
94
  * @default 'transparent'
92
95
  */
93
- appearance?: 'transparent' | 'subtle';
96
+ appearance?: 'transparent' | 'subtle' | 'subtle-circular' | 'filled-circular';
94
97
  /**
95
98
  * Tab size may change between unselected and selected states.
96
99
  * The default scenario is a selected tab has bold text.
@@ -196,9 +199,9 @@ export declare type TabSlots = {
196
199
  */
197
200
  export declare type TabState = ComponentState<TabInternalSlots> & Pick<TabProps, 'value'> & Required<Pick<TabProps, 'disabled'>> & {
198
201
  /**
199
- * A tab supports 'transparent' and 'subtle' appearance.
202
+ * A tab supports 'transparent', 'subtle', `subtle-circular` and `filled-circular` appearance.
200
203
  */
201
- appearance?: 'transparent' | 'subtle';
204
+ appearance?: 'transparent' | 'subtle' | 'subtle-circular' | 'filled-circular';
202
205
  /**
203
206
  * A tab can have only an icon slot filled and no content.
204
207
  */
@@ -1 +1 @@
1
- {"version":3,"sources":["Tab.types.ts"],"sourcesContent":["import type { ComponentProps, ComponentState, Slot } from '@fluentui/react-utilities';\n\n/**\n * Any value that identifies a specific tab.\n */\nexport type TabValue = unknown;\n\nexport type TabSlots = {\n /**\n * Root of the component.\n */\n root: Slot<'button'>;\n\n /**\n * Icon that renders before the content.\n */\n icon?: Slot<'span'>;\n\n /**\n * Component children are placed in this slot\n * Avoid using the `children` property in this slot in favour of Component children whenever possible.\n */\n content: NonNullable<Slot<'span'>>;\n};\n\nexport type TabInternalSlots = TabSlots & {\n contentReservedSpace?: Slot<'span'>;\n};\n\n/**\n * Tab Props\n */\nexport type TabProps = Omit<ComponentProps<Partial<TabSlots>>, 'content'> &\n Pick<Partial<TabSlots>, 'content'> & {\n /**\n * A tab can be set to disable interaction.\n * @default false\n */\n disabled?: boolean;\n /**\n * The value that identifies this tab when selected.\n */\n value: TabValue;\n };\n\n/**\n * State used in rendering Tab\n */\nexport type TabState = ComponentState<TabInternalSlots> &\n Pick<TabProps, 'value'> &\n Required<Pick<TabProps, 'disabled'>> & {\n /**\n * A tab supports 'transparent' and 'subtle' appearance.\n */\n appearance?: 'transparent' | 'subtle';\n /**\n * A tab can have only an icon slot filled and no content.\n */\n iconOnly: boolean;\n /**\n * If this tab is selected\n */\n selected: boolean;\n /**\n * When defined, tab content with selected style is rendered hidden to reserve space.\n * This keeps consistent content size between unselected and selected states.\n *\n * @deprecated - use `contentReservedSpace` internal slot instead.\n */\n contentReservedSpaceClassName?: string;\n /**\n * A tab can be either 'small', 'medium', or 'large' size.\n */\n size: 'small' | 'medium' | 'large';\n /**\n * A tab can arrange its content based on if the tabs in the list are arranged vertically.\n */\n vertical: boolean;\n };\n"],"names":[],"rangeMappings":";;","mappings":"AA6CA;;CAEC,GACD,WA8BI"}
1
+ {"version":3,"sources":["Tab.types.ts"],"sourcesContent":["import type { ComponentProps, ComponentState, Slot } from '@fluentui/react-utilities';\n\n/**\n * Any value that identifies a specific tab.\n */\nexport type TabValue = unknown;\n\nexport type TabSlots = {\n /**\n * Root of the component.\n */\n root: Slot<'button'>;\n\n /**\n * Icon that renders before the content.\n */\n icon?: Slot<'span'>;\n\n /**\n * Component children are placed in this slot\n * Avoid using the `children` property in this slot in favour of Component children whenever possible.\n */\n content: NonNullable<Slot<'span'>>;\n};\n\nexport type TabInternalSlots = TabSlots & {\n contentReservedSpace?: Slot<'span'>;\n};\n\n/**\n * Tab Props\n */\nexport type TabProps = Omit<ComponentProps<Partial<TabSlots>>, 'content'> &\n Pick<Partial<TabSlots>, 'content'> & {\n /**\n * A tab can be set to disable interaction.\n * @default false\n */\n disabled?: boolean;\n /**\n * The value that identifies this tab when selected.\n */\n value: TabValue;\n };\n\n/**\n * State used in rendering Tab\n */\nexport type TabState = ComponentState<TabInternalSlots> &\n Pick<TabProps, 'value'> &\n Required<Pick<TabProps, 'disabled'>> & {\n /**\n * A tab supports 'transparent', 'subtle', `subtle-circular` and `filled-circular` appearance.\n */\n appearance?: 'transparent' | 'subtle' | 'subtle-circular' | 'filled-circular';\n\n /**\n * A tab can have only an icon slot filled and no content.\n */\n iconOnly: boolean;\n /**\n * If this tab is selected\n */\n selected: boolean;\n /**\n * When defined, tab content with selected style is rendered hidden to reserve space.\n * This keeps consistent content size between unselected and selected states.\n *\n * @deprecated - use `contentReservedSpace` internal slot instead.\n */\n contentReservedSpaceClassName?: string;\n /**\n * A tab can be either 'small', 'medium', or 'large' size.\n */\n size: 'small' | 'medium' | 'large';\n /**\n * A tab can arrange its content based on if the tabs in the list are arranged vertically.\n */\n vertical: boolean;\n };\n"],"names":[],"rangeMappings":";;","mappings":"AA6CA;;CAEC,GACD,WA+BI"}
@@ -125,25 +125,25 @@ const useRootStyles = /*#__PURE__*/__styles({
125
125
  },
126
126
  transparent: {
127
127
  De3pzq: "f1c21dwh",
128
- Jwef8y: "fjxutwb",
129
- ecr2s2: "fophhak",
128
+ B95qlz1: "f9rvdkv",
129
+ B7xitij: "f1051ucx",
130
130
  Bptxc3x: "fmmjozx",
131
- B076xvk: "f1mfqf41",
132
- q9r9w5: "f10aiid4",
131
+ Bwqhzpy: "fqhzt5g",
132
+ iyk698: "f7l5cgy",
133
133
  cl4aha: "fpkze5g",
134
- Bk452zc: "f149wc3x",
135
- a4hkcw: "fjioou7"
134
+ B0q3jbp: "f1iywnoi",
135
+ Be9ayug: "f9n45c4"
136
136
  },
137
137
  subtle: {
138
138
  De3pzq: "fhovq9v",
139
- Jwef8y: "f1t94bn6",
140
- ecr2s2: "f1wfn5kd",
139
+ B95qlz1: "f1bifk9c",
140
+ B7xitij: "fo6hitd",
141
141
  Bptxc3x: "fmmjozx",
142
- B076xvk: "f1mfqf41",
143
- q9r9w5: "f10aiid4",
142
+ Bwqhzpy: "fqhzt5g",
143
+ iyk698: "f7l5cgy",
144
144
  cl4aha: "fpkze5g",
145
- Bk452zc: "f149wc3x",
146
- a4hkcw: "fjioou7"
145
+ B0q3jbp: "f1iywnoi",
146
+ Be9ayug: "f9n45c4"
147
147
  },
148
148
  disabled: {
149
149
  De3pzq: "f1c21dwh",
@@ -153,11 +153,234 @@ const useRootStyles = /*#__PURE__*/__styles({
153
153
  },
154
154
  selected: {
155
155
  Bptxc3x: "f1cadz5z",
156
- B076xvk: "f1ck17l",
157
- q9r9w5: "f42ak0g",
156
+ Bwqhzpy: "fwhdxxj",
157
+ iyk698: "fintccb",
158
158
  cl4aha: "ffplhdr",
159
- Bk452zc: "ffth601",
160
- a4hkcw: "fhklyu5"
159
+ B0q3jbp: "fjo17wb",
160
+ Be9ayug: "f148789c"
161
+ },
162
+ circular: {
163
+ Beyfa6y: 0,
164
+ Bbmb7ep: 0,
165
+ Btl43ni: 0,
166
+ B7oj6ja: 0,
167
+ Dimara: "f44lkw9",
168
+ Bptxc3x: "ftorr8m",
169
+ cl4aha: "f16lqpmv"
170
+ },
171
+ subtleCircular: {
172
+ De3pzq: "f1c21dwh",
173
+ Bgfg5da: 0,
174
+ B9xav0g: 0,
175
+ oivjwe: 0,
176
+ Bn0qgzm: 0,
177
+ B4g9neb: 0,
178
+ zhjwy3: 0,
179
+ wvpqe5: 0,
180
+ ibv6hh: 0,
181
+ u1mtju: 0,
182
+ h3c5rm: 0,
183
+ vrafjx: 0,
184
+ Bekrc4i: 0,
185
+ i8vvqc: 0,
186
+ g2u3we: 0,
187
+ icvyot: 0,
188
+ B4j52fo: 0,
189
+ irswps: "fp7rvkm",
190
+ sj55zd: "fkfq4zb",
191
+ B95qlz1: "f1yywxnv",
192
+ Eo63ln: 0,
193
+ r9osk6: 0,
194
+ Itrz8y: 0,
195
+ zeg6vx: 0,
196
+ l65xgk: 0,
197
+ Bw4olcx: 0,
198
+ Folb0i: 0,
199
+ I2h8y4: 0,
200
+ Bgxgoyi: 0,
201
+ Bvlkotb: 0,
202
+ Fwyncl: 0,
203
+ Byh5edv: 0,
204
+ Becqvjq: 0,
205
+ uumbiq: 0,
206
+ B73q3dg: 0,
207
+ Bblwbaf: 0,
208
+ B0ezav: "ft57sj0",
209
+ r4wkhp: "f1fcoy83",
210
+ B7xitij: "f1lzpamt",
211
+ d3wsvi: 0,
212
+ Hdqn7s: 0,
213
+ zu5y1p: 0,
214
+ owqphb: 0,
215
+ g9c53k: 0,
216
+ Btmu08z: 0,
217
+ Bthxvy6: 0,
218
+ gluvuq: 0,
219
+ tb88gp: 0,
220
+ wns6jk: 0,
221
+ kdfdk4: 0,
222
+ Bbw008l: 0,
223
+ Bayi1ib: 0,
224
+ B1kkfu3: 0,
225
+ J1oqyp: 0,
226
+ kem6az: 0,
227
+ goa3yj: "fhn220o",
228
+ p743kt: "f15qf7sh"
229
+ },
230
+ subtleCircularSelected: {
231
+ De3pzq: "f16xkysk",
232
+ Bgfg5da: 0,
233
+ B9xav0g: 0,
234
+ oivjwe: 0,
235
+ Bn0qgzm: 0,
236
+ B4g9neb: 0,
237
+ zhjwy3: 0,
238
+ wvpqe5: 0,
239
+ ibv6hh: 0,
240
+ u1mtju: 0,
241
+ h3c5rm: 0,
242
+ vrafjx: 0,
243
+ Bekrc4i: 0,
244
+ i8vvqc: 0,
245
+ g2u3we: 0,
246
+ icvyot: 0,
247
+ B4j52fo: 0,
248
+ irswps: "f1c2pc3t",
249
+ sj55zd: "faj9fo0",
250
+ B95qlz1: "fsm7zmf",
251
+ Eo63ln: 0,
252
+ r9osk6: 0,
253
+ Itrz8y: 0,
254
+ zeg6vx: 0,
255
+ l65xgk: 0,
256
+ Bw4olcx: 0,
257
+ Folb0i: 0,
258
+ I2h8y4: 0,
259
+ Bgxgoyi: 0,
260
+ Bvlkotb: 0,
261
+ Fwyncl: 0,
262
+ Byh5edv: 0,
263
+ Becqvjq: 0,
264
+ uumbiq: 0,
265
+ B73q3dg: 0,
266
+ Bblwbaf: 0,
267
+ B0ezav: "f1wo0sfq",
268
+ r4wkhp: "f1afuynh",
269
+ B7xitij: "f94ddyl",
270
+ d3wsvi: 0,
271
+ Hdqn7s: 0,
272
+ zu5y1p: 0,
273
+ owqphb: 0,
274
+ g9c53k: 0,
275
+ Btmu08z: 0,
276
+ Bthxvy6: 0,
277
+ gluvuq: 0,
278
+ tb88gp: 0,
279
+ wns6jk: 0,
280
+ kdfdk4: 0,
281
+ Bbw008l: 0,
282
+ Bayi1ib: 0,
283
+ B1kkfu3: 0,
284
+ J1oqyp: 0,
285
+ kem6az: 0,
286
+ goa3yj: "fmle6oo",
287
+ p743kt: "f1d3itm4"
288
+ },
289
+ subtleCircularDisabled: {
290
+ De3pzq: "f1c21dwh",
291
+ sj55zd: "f1s2aq7o",
292
+ Bgfg5da: 0,
293
+ B9xav0g: 0,
294
+ oivjwe: 0,
295
+ Bn0qgzm: 0,
296
+ B4g9neb: 0,
297
+ zhjwy3: 0,
298
+ wvpqe5: 0,
299
+ ibv6hh: 0,
300
+ u1mtju: 0,
301
+ h3c5rm: 0,
302
+ vrafjx: 0,
303
+ Bekrc4i: 0,
304
+ i8vvqc: 0,
305
+ g2u3we: 0,
306
+ icvyot: 0,
307
+ B4j52fo: 0,
308
+ irswps: "fp7rvkm"
309
+ },
310
+ subtleCircularDisabledSelected: {
311
+ Bgfg5da: 0,
312
+ B9xav0g: 0,
313
+ oivjwe: 0,
314
+ Bn0qgzm: 0,
315
+ B4g9neb: 0,
316
+ zhjwy3: 0,
317
+ wvpqe5: 0,
318
+ ibv6hh: 0,
319
+ u1mtju: 0,
320
+ h3c5rm: 0,
321
+ vrafjx: 0,
322
+ Bekrc4i: 0,
323
+ i8vvqc: 0,
324
+ g2u3we: 0,
325
+ icvyot: 0,
326
+ B4j52fo: 0,
327
+ irswps: "fegtqic"
328
+ },
329
+ filledCircular: {
330
+ De3pzq: "f16xq7d1",
331
+ sj55zd: "fkfq4zb",
332
+ B95qlz1: "fwwxidx",
333
+ r4wkhp: "f1fcoy83",
334
+ B7xitij: "f14i52sd",
335
+ p743kt: "f15qf7sh"
336
+ },
337
+ filledCircularSelected: {
338
+ De3pzq: "ffp7eso",
339
+ sj55zd: "f1phragk",
340
+ B95qlz1: "f1lm9dni",
341
+ r4wkhp: "f1mn5ei1",
342
+ B7xitij: "f1g6ncd0",
343
+ p743kt: "fl71aob"
344
+ },
345
+ filledCircularDisabled: {
346
+ De3pzq: "f1bg9a2p",
347
+ Bgfg5da: 0,
348
+ B9xav0g: 0,
349
+ oivjwe: 0,
350
+ Bn0qgzm: 0,
351
+ B4g9neb: 0,
352
+ zhjwy3: 0,
353
+ wvpqe5: 0,
354
+ ibv6hh: 0,
355
+ u1mtju: 0,
356
+ h3c5rm: 0,
357
+ vrafjx: 0,
358
+ Bekrc4i: 0,
359
+ i8vvqc: 0,
360
+ g2u3we: 0,
361
+ icvyot: 0,
362
+ B4j52fo: 0,
363
+ irswps: "fp7rvkm",
364
+ sj55zd: "f1s2aq7o"
365
+ },
366
+ filledCircularDisabledSelected: {
367
+ Bgfg5da: 0,
368
+ B9xav0g: 0,
369
+ oivjwe: 0,
370
+ Bn0qgzm: 0,
371
+ B4g9neb: 0,
372
+ zhjwy3: 0,
373
+ wvpqe5: 0,
374
+ ibv6hh: 0,
375
+ u1mtju: 0,
376
+ h3c5rm: 0,
377
+ vrafjx: 0,
378
+ Bekrc4i: 0,
379
+ i8vvqc: 0,
380
+ g2u3we: 0,
381
+ icvyot: 0,
382
+ B4j52fo: 0,
383
+ irswps: "fegtqic"
161
384
  }
162
385
  }, {
163
386
  d: [".f122n59{align-items:center;}", ".f13qh94s{display:grid;}", ".fi64zpg{flex-shrink:0;}", ".f1u07yai{grid-auto-flow:column;}", ".frn2hmy{grid-template-columns:auto;}", ".f1olsevy{grid-template-rows:auto;}", ".f1s6fcnf{outline-style:none;}", ".f10pi13n{position:relative;}", [".f3bhgqh{border:none;}", {
@@ -178,9 +401,29 @@ const useRootStyles = /*#__PURE__*/__styles({
178
401
  p: -1
179
402
  }], [".fwkd1rq{padding:var(--spacingVerticalS) var(--spacingHorizontalMNudge);}", {
180
403
  p: -1
181
- }], ".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);}"],
182
- 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);}"],
183
- 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);}"]
404
+ }], ".f1c21dwh{background-color:var(--colorTransparentBackground);}", ".f9rvdkv:enabled:hover{background-color:var(--colorTransparentBackgroundHover);}", ".f1051ucx:enabled:active{background-color:var(--colorTransparentBackgroundPressed);}", ".fmmjozx .fui-Tab__icon{color:var(--colorNeutralForeground2);}", ".fqhzt5g:enabled:hover .fui-Tab__icon{color:var(--colorNeutralForeground2Hover);}", ".f7l5cgy:enabled:active .fui-Tab__icon{color:var(--colorNeutralForeground2Pressed);}", ".fpkze5g .fui-Tab__content{color:var(--colorNeutralForeground2);}", ".f1iywnoi:enabled:hover .fui-Tab__content{color:var(--colorNeutralForeground2Hover);}", ".f9n45c4:enabled:active .fui-Tab__content{color:var(--colorNeutralForeground2Pressed);}", ".fhovq9v{background-color:var(--colorSubtleBackground);}", ".f1bifk9c:enabled:hover{background-color:var(--colorSubtleBackgroundHover);}", ".fo6hitd:enabled:active{background-color:var(--colorSubtleBackgroundPressed);}", ".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);}", ".fwhdxxj:enabled:hover .fui-Tab__icon{color:var(--colorCompoundBrandForeground1Hover);}", ".fintccb:enabled:active .fui-Tab__icon{color:var(--colorCompoundBrandForeground1Pressed);}", ".ffplhdr .fui-Tab__content{color:var(--colorNeutralForeground1);}", ".fjo17wb:enabled:hover .fui-Tab__content{color:var(--colorNeutralForeground1Hover);}", ".f148789c:enabled:active .fui-Tab__content{color:var(--colorNeutralForeground1Pressed);}", [".f44lkw9{border-radius:var(--borderRadiusCircular);}", {
405
+ p: -1
406
+ }], ".ftorr8m .fui-Tab__icon{color:inherit;}", ".f16lqpmv .fui-Tab__content{color:inherit;}", [".fp7rvkm{border:solid var(--strokeWidthThin) var(--colorTransparentStroke);}", {
407
+ p: -2
408
+ }], ".fkfq4zb{color:var(--colorNeutralForeground2);}", ".f1yywxnv:enabled:hover{background-color:var(--colorNeutralBackground1Hover);}", [".ft57sj0:enabled:hover{border:solid var(--strokeWidthThin) var(--colorNeutralStroke1Hover);}", {
409
+ p: -2
410
+ }], ".f1fcoy83:enabled:hover{color:var(--colorNeutralForeground2Hover);}", ".f1lzpamt:enabled:active{background-color:var(--colorNeutralBackground1Pressed);}", [".fhn220o:enabled:active{border:solid var(--strokeWidthThin) var(--colorNeutralStroke1Pressed);}", {
411
+ p: -2
412
+ }], ".f15qf7sh:enabled:active{color:var(--colorNeutralForeground2Pressed);}", ".f16xkysk{background-color:var(--colorBrandBackground2);}", [".f1c2pc3t{border:solid var(--strokeWidthThin) var(--colorCompoundBrandStroke);}", {
413
+ p: -2
414
+ }], ".faj9fo0{color:var(--colorBrandForeground2);}", ".fsm7zmf:enabled:hover{background-color:var(--colorBrandBackground2Hover);}", [".f1wo0sfq:enabled:hover{border:solid var(--strokeWidthThin) var(--colorCompoundBrandStrokeHover);}", {
415
+ p: -2
416
+ }], ".f1afuynh:enabled:hover{color:var(--colorBrandForeground2Hover);}", ".f94ddyl:enabled:active{background-color:var(--colorBrandBackground2Pressed);}", [".fmle6oo:enabled:active{border:solid var(--strokeWidthThin) var(--colorCompoundBrandStrokePressed);}", {
417
+ p: -2
418
+ }], ".f1d3itm4:enabled:active{color:var(--colorBrandForeground2Pressed);}", ".f1s2aq7o{color:var(--colorNeutralForegroundDisabled);}", [".fp7rvkm{border:solid var(--strokeWidthThin) var(--colorTransparentStroke);}", {
419
+ p: -2
420
+ }], [".fegtqic{border:solid var(--strokeWidthThin) var(--colorNeutralStrokeDisabled);}", {
421
+ p: -2
422
+ }], ".f16xq7d1{background-color:var(--colorNeutralBackground3);}", ".fwwxidx:enabled:hover{background-color:var(--colorNeutralBackground3Hover);}", ".f14i52sd:enabled:active{background-color:var(--colorNeutralBackground3Pressed);}", ".ffp7eso{background-color:var(--colorBrandBackground);}", ".f1phragk{color:var(--colorNeutralForegroundOnBrand);}", ".f1lm9dni:enabled:hover{background-color:var(--colorBrandBackgroundHover);}", ".f1mn5ei1:enabled:hover{color:var(--colorNeutralForegroundOnBrand);}", ".f1g6ncd0:enabled:active{background-color:var(--colorBrandBackgroundPressed);}", ".fl71aob:enabled:active{color:var(--colorNeutralForegroundOnBrand);}", ".f1bg9a2p{background-color:var(--colorNeutralBackgroundDisabled);}", [".fp7rvkm{border:solid var(--strokeWidthThin) var(--colorTransparentStroke);}", {
423
+ p: -2
424
+ }], [".fegtqic{border:solid var(--strokeWidthThin) var(--colorNeutralStrokeDisabled);}", {
425
+ p: -2
426
+ }]]
184
427
  });
185
428
  /**
186
429
  * Focus styles for the root slot
@@ -289,11 +532,11 @@ const useActiveIndicatorStyles = /*#__PURE__*/__styles({
289
532
  },
290
533
  selected: {
291
534
  Bjyk6c5: "f1ksivud",
292
- Glksuk: "f1eytvvh",
293
- Blzl0y7: "fuaa9s",
535
+ Bej4dhw: "f1476jrx",
536
+ B7wqxwa: "f18q216b",
294
537
  f7digc: "fy7ktjt",
295
- Biqphg1: "f16tp0gf",
296
- Bntoloa: "fj0yp7j"
538
+ Bvuzv5k: "f1033yux",
539
+ k4sdgo: "fkh9b8o"
297
540
  },
298
541
  disabled: {
299
542
  Bjyk6c5: "f13lkzet"
@@ -337,14 +580,12 @@ const useActiveIndicatorStyles = /*#__PURE__*/__styles({
337
580
  }, {
338
581
  d: [".f1rp0jgh::after{background-color:var(--colorTransparentStroke);}", [".f3b9emi::after{border-radius:var(--borderRadiusCircular);}", {
339
582
  p: -1
340
- }], ".f13zj6fq::after{content:\"\";}", ".f1mdlcz9::after{position:absolute;}", ".f1ksivud::after{background-color:var(--colorCompoundBrandStroke);}", ".f13lkzet::after{background-color:var(--colorNeutralForegroundDisabled);}", ".fo72kxq::after{bottom:0;}", ".f9bb2ob::after{height:var(--strokeWidthThick);}", ".f1q70ajw::after{left:var(--spacingHorizontalSNudge);}", ".f18rbzdx::after{right:var(--spacingHorizontalSNudge);}", ".fqbue9b::after{bottom:var(--spacingVerticalXS);}", ".f1n6gb5g::after{left:0;}", ".f15yvnhg::after{right:0;}", ".fk1klkt::after{top:var(--spacingVerticalXS);}", ".f1o25lip::after{width:var(--strokeWidthThicker);}", ".f1vx7lu8::after{height:var(--strokeWidthThicker);}", ".fna7m5n::after{left:var(--spacingHorizontalM);}", ".f1oxpfwv::after{right:var(--spacingHorizontalM);}", ".fipylg0::after{bottom:var(--spacingVerticalS);}", ".fqchiol::after{top:var(--spacingVerticalS);}", ".f1w7dm5g::after{bottom:var(--spacingVerticalMNudge);}", ".f1p6em4m::after{top:var(--spacingVerticalMNudge);}"],
341
- h: [".f1eytvvh:hover::after{background-color:var(--colorCompoundBrandStrokeHover);}"],
342
- a: [".fuaa9s:active::after{background-color:var(--colorCompoundBrandStrokePressed);}"],
583
+ }], ".f13zj6fq::after{content:\"\";}", ".f1mdlcz9::after{position:absolute;}", ".f1ksivud::after{background-color:var(--colorCompoundBrandStroke);}", ".f1476jrx:enabled:hover::after{background-color:var(--colorCompoundBrandStrokeHover);}", ".f18q216b:enabled:active::after{background-color:var(--colorCompoundBrandStrokePressed);}", ".f13lkzet::after{background-color:var(--colorNeutralForegroundDisabled);}", ".fo72kxq::after{bottom:0;}", ".f9bb2ob::after{height:var(--strokeWidthThick);}", ".f1q70ajw::after{left:var(--spacingHorizontalSNudge);}", ".f18rbzdx::after{right:var(--spacingHorizontalSNudge);}", ".fqbue9b::after{bottom:var(--spacingVerticalXS);}", ".f1n6gb5g::after{left:0;}", ".f15yvnhg::after{right:0;}", ".fk1klkt::after{top:var(--spacingVerticalXS);}", ".f1o25lip::after{width:var(--strokeWidthThicker);}", ".f1vx7lu8::after{height:var(--strokeWidthThicker);}", ".fna7m5n::after{left:var(--spacingHorizontalM);}", ".f1oxpfwv::after{right:var(--spacingHorizontalM);}", ".fipylg0::after{bottom:var(--spacingVerticalS);}", ".fqchiol::after{top:var(--spacingVerticalS);}", ".f1w7dm5g::after{bottom:var(--spacingVerticalMNudge);}", ".f1p6em4m::after{top:var(--spacingVerticalMNudge);}"],
343
584
  m: [["@media (forced-colors: active){.fy7ktjt::after{background-color:ButtonText;}}", {
344
585
  m: "(forced-colors: active)"
345
- }], ["@media (forced-colors: active){.f16tp0gf:hover::after{background-color:ButtonText;}}", {
586
+ }], ["@media (forced-colors: active){.f1033yux:enabled:hover::after{background-color:ButtonText;}}", {
346
587
  m: "(forced-colors: active)"
347
- }], ["@media (forced-colors: active){.fj0yp7j:active::after{background-color:ButtonText;}}", {
588
+ }], ["@media (forced-colors: active){.fkh9b8o:enabled:active::after{background-color:ButtonText;}}", {
348
589
  m: "(forced-colors: active)"
349
590
  }]]
350
591
  });
@@ -469,16 +710,21 @@ export const useTabIndicatorStyles_unstable = state => {
469
710
  const pendingIndicatorStyles = usePendingIndicatorStyles();
470
711
  const activeIndicatorStyles = useActiveIndicatorStyles();
471
712
  const {
713
+ appearance,
472
714
  disabled,
473
715
  selected,
474
716
  size,
475
717
  vertical
476
718
  } = state;
477
- state.root.className = mergeClasses(tabClassNames.root, rootStyles.root,
478
- // pending indicator (before pseudo element)
479
- pendingIndicatorStyles.base, size === 'small' && (vertical ? pendingIndicatorStyles.smallVertical : pendingIndicatorStyles.smallHorizontal), size === 'medium' && (vertical ? pendingIndicatorStyles.mediumVertical : pendingIndicatorStyles.mediumHorizontal), size === 'large' && (vertical ? pendingIndicatorStyles.largeVertical : pendingIndicatorStyles.largeHorizontal), disabled && pendingIndicatorStyles.disabled,
480
- // active indicator (after pseudo element)
481
- selected && activeIndicatorStyles.base, selected && !disabled && activeIndicatorStyles.selected, selected && size === 'small' && (vertical ? activeIndicatorStyles.smallVertical : activeIndicatorStyles.smallHorizontal), selected && size === 'medium' && (vertical ? activeIndicatorStyles.mediumVertical : activeIndicatorStyles.mediumHorizontal), selected && size === 'large' && (vertical ? activeIndicatorStyles.largeVertical : activeIndicatorStyles.largeHorizontal), selected && disabled && activeIndicatorStyles.disabled, state.root.className);
719
+ const classes = [tabClassNames.root, rootStyles.root];
720
+ if (appearance !== 'subtle-circular' && appearance !== 'filled-circular') {
721
+ classes.push(
722
+ // pending indicator (before pseudo element)
723
+ pendingIndicatorStyles.base, size === 'small' && (vertical ? pendingIndicatorStyles.smallVertical : pendingIndicatorStyles.smallHorizontal), size === 'medium' && (vertical ? pendingIndicatorStyles.mediumVertical : pendingIndicatorStyles.mediumHorizontal), size === 'large' && (vertical ? pendingIndicatorStyles.largeVertical : pendingIndicatorStyles.largeHorizontal), disabled && pendingIndicatorStyles.disabled,
724
+ // active indicator (after pseudo element)
725
+ selected && activeIndicatorStyles.base, selected && !disabled && activeIndicatorStyles.selected, selected && size === 'small' && (vertical ? activeIndicatorStyles.smallVertical : activeIndicatorStyles.smallHorizontal), selected && size === 'medium' && (vertical ? activeIndicatorStyles.mediumVertical : activeIndicatorStyles.mediumHorizontal), selected && size === 'large' && (vertical ? activeIndicatorStyles.largeVertical : activeIndicatorStyles.largeHorizontal), selected && disabled && activeIndicatorStyles.disabled);
726
+ }
727
+ state.root.className = mergeClasses(...classes, state.root.className);
482
728
  useTabAnimatedIndicatorStyles_unstable(state);
483
729
  return state;
484
730
  };
@@ -504,7 +750,19 @@ export const useTabButtonStyles_unstable = (state, slot) => {
504
750
  size,
505
751
  vertical
506
752
  } = state;
507
- slot.className = mergeClasses(rootStyles.button, vertical ? rootStyles.vertical : rootStyles.horizontal, size === 'small' && (vertical ? rootStyles.smallVertical : rootStyles.smallHorizontal), size === 'medium' && (vertical ? rootStyles.mediumVertical : rootStyles.mediumHorizontal), size === 'large' && (vertical ? rootStyles.largeVertical : rootStyles.largeHorizontal), focusStyles.base, !disabled && appearance === 'subtle' && rootStyles.subtle, !disabled && appearance === 'transparent' && rootStyles.transparent, !disabled && selected && rootStyles.selected, disabled && rootStyles.disabled, slot.className);
753
+ const isSubtleCircular = appearance === 'subtle-circular';
754
+ const isFilledCircular = appearance === 'filled-circular';
755
+ const isCircular = isSubtleCircular || isFilledCircular;
756
+ const circularAppearance = [rootStyles.circular,
757
+ // subtle-circular appearance
758
+ isSubtleCircular && rootStyles.subtleCircular, selected && isSubtleCircular && rootStyles.subtleCircularSelected, disabled && isSubtleCircular && rootStyles.subtleCircularDisabled, selected && disabled && isSubtleCircular && rootStyles.subtleCircularDisabledSelected,
759
+ // filled-circular appearance
760
+ isFilledCircular && rootStyles.filledCircular, selected && isFilledCircular && rootStyles.filledCircularSelected, disabled && isFilledCircular && rootStyles.filledCircularDisabled, selected && disabled && isFilledCircular && rootStyles.filledCircularDisabledSelected];
761
+ slot.className = mergeClasses(rootStyles.button,
762
+ // orientation
763
+ vertical ? rootStyles.vertical : rootStyles.horizontal,
764
+ // size
765
+ size === 'small' && (vertical ? rootStyles.smallVertical : rootStyles.smallHorizontal), size === 'medium' && (vertical ? rootStyles.mediumVertical : rootStyles.mediumHorizontal), size === 'large' && (vertical ? rootStyles.largeVertical : rootStyles.largeHorizontal), focusStyles.base, !disabled && appearance === 'subtle' && rootStyles.subtle, !disabled && appearance === 'transparent' && rootStyles.transparent, ...(isCircular ? circularAppearance : [!disabled && selected && rootStyles.selected]), disabled && rootStyles.disabled, slot.className);
508
766
  return state;
509
767
  };
510
768
  /**