@box/blueprint-web 18.4.0 → 18.5.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.
@@ -39,7 +39,7 @@ export declare const BLUEPRINT_CONFIGURATION_SPLITS: {
39
39
  export declare const ANIMATED_COMPONENTS_BY_PHASE: {
40
40
  readonly phase1: readonly ["Button", "IconButton", "DropdownMenu", "Tooltip", "Popover", "SplitButton", "CardTooltip", "NavigationMenu", "Modal", "TextButton", "ContextMenu"];
41
41
  readonly phase2: readonly ["TriggerButton", "ContextMenuItem", "DropdownMenuItem", "NavigationMenuItem", "Switch", "Checkbox", "TextInput", "Select", "Datepicker", "TextArea", "Combobox", "PasswordInput", "ComboboxGroup", "InlineError"];
42
- readonly phase3: readonly ["Notification"];
42
+ readonly phase3: readonly ["TooltipTravel", "TextInputErrorShake", "Notification", "NumericBadge", "Tabs", "AvatarGroup"];
43
43
  };
44
44
  /**
45
45
  * Default values for Blueprint configuration properties that are not driven by
@@ -41,7 +41,11 @@ const BLUEPRINT_CONFIGURATION_SPLITS = deepFreeze({
41
41
  const ANIMATED_COMPONENTS_BY_PHASE = deepFreeze({
42
42
  phase1: ['Button', 'IconButton', 'DropdownMenu', 'Tooltip', 'Popover', 'SplitButton', 'CardTooltip', 'NavigationMenu', 'Modal', 'TextButton', 'ContextMenu'],
43
43
  phase2: ['TriggerButton', 'ContextMenuItem', 'DropdownMenuItem', 'NavigationMenuItem', 'Switch', 'Checkbox', 'TextInput', 'Select', 'Datepicker', 'TextArea', 'Combobox', 'PasswordInput', 'ComboboxGroup', 'InlineError'],
44
- phase3: ['Notification']
44
+ phase3: ['TooltipTravel',
45
+ // story/group-owned bubble; production Tooltip stays on released phase 1
46
+ 'TextInputErrorShake',
47
+ // DISTINCT from phase2 'TextInput' so phase 3 is independently rollable
48
+ 'Notification', 'NumericBadge', 'Tabs', 'AvatarGroup']
45
49
  });
46
50
  /**
47
51
  * Default values for Blueprint configuration properties that are not driven by
@@ -11498,17 +11498,17 @@ div[data-radix-popper-content-wrapper]:has([role=menu]):has([data-state=open]):h
11498
11498
  opacity:.3;
11499
11499
  }
11500
11500
 
11501
- .bp_tabs_module_hiddenWidthSetter--22ec8{
11501
+ .bp_tabs_module_hiddenWidthSetter--13d72{
11502
11502
  display:block;
11503
11503
  height:0;
11504
11504
  overflow:hidden;
11505
11505
  visibility:hidden;
11506
11506
  }
11507
- .bp_tabs_module_hiddenWidthSetter--22ec8 > *{
11507
+ .bp_tabs_module_hiddenWidthSetter--13d72 > *{
11508
11508
  visibility:hidden;
11509
11509
  }
11510
11510
 
11511
- .bp_tabs_module_contentSwitchTabList--22ec8{
11511
+ .bp_tabs_module_contentSwitchTabList--13d72{
11512
11512
  --content-switch-tab-list-gap:var(--bp-space-010);
11513
11513
  --content-switch-tab-list-padding:var(--bp-space-010);
11514
11514
  --content-switch-tab-list-background:var(--bp-surface-content-switcher-surface);
@@ -11531,7 +11531,7 @@ div[data-radix-popper-content-wrapper]:has([role=menu]):has([data-state=open]):h
11531
11531
  min-width:fit-content;
11532
11532
  padding:var(--content-switch-tab-list-padding);
11533
11533
  }
11534
- .bp_tabs_module_contentSwitchTabList--22ec8 .bp_tabs_module_contentSwitchTab--22ec8{
11534
+ .bp_tabs_module_contentSwitchTabList--13d72 .bp_tabs_module_contentSwitchTab--13d72{
11535
11535
  font-family:var(--bp-font-font-family), -apple-system, BlinkMacSystemFont, "San Francisco", "Segoe UI", Roboto, "Helvetica Neue", sans-serif;
11536
11536
  font-size:var(--bp-font-size-05);
11537
11537
  font-style:normal;
@@ -11539,7 +11539,7 @@ div[data-radix-popper-content-wrapper]:has([role=menu]):has([data-state=open]):h
11539
11539
  letter-spacing:var(--bp-font-letter-spacing-01);
11540
11540
  line-height:var(--bp-font-line-height-04);
11541
11541
  }
11542
- :where(body.is-inter-font) .bp_tabs_module_contentSwitchTabList--22ec8 .bp_tabs_module_contentSwitchTab--22ec8{
11542
+ :where(body.is-inter-font) .bp_tabs_module_contentSwitchTabList--13d72 .bp_tabs_module_contentSwitchTab--13d72{
11543
11543
  font-family:"Inter Variable", -apple-system, BlinkMacSystemFont, "San Francisco", "Segoe UI", Roboto, "Helvetica Neue", sans-serif;
11544
11544
  font-size:.875rem;
11545
11545
  font-style:normal;
@@ -11550,12 +11550,13 @@ div[data-radix-popper-content-wrapper]:has([role=menu]):has([data-state=open]):h
11550
11550
  text-transform:none;
11551
11551
  }
11552
11552
 
11553
- .bp_tabs_module_contentSwitchTabList--22ec8 .bp_tabs_module_contentSwitchTab--22ec8{
11553
+ .bp_tabs_module_contentSwitchTabList--13d72 .bp_tabs_module_contentSwitchTab--13d72{
11554
11554
  align-items:center;
11555
11555
  background:#0000;
11556
11556
  border:none;
11557
11557
  border-radius:var(--content-switch-tab-border-radius);
11558
11558
  color:var(--content-switch-tab-color);
11559
+ cursor:pointer;
11559
11560
  display:flex;
11560
11561
  flex-direction:column;
11561
11562
  height:var(--content-switch-tab-height);
@@ -11564,7 +11565,7 @@ div[data-radix-popper-content-wrapper]:has([role=menu]):has([data-state=open]):h
11564
11565
  padding-inline:var(--content-switch-tab-padding-inline);
11565
11566
  white-space:nowrap;
11566
11567
  }
11567
- .bp_tabs_module_contentSwitchTabList--22ec8 .bp_tabs_module_contentSwitchTab--22ec8[aria-selected=true]{
11568
+ .bp_tabs_module_contentSwitchTabList--13d72 .bp_tabs_module_contentSwitchTab--13d72[aria-selected=true]{
11568
11569
  font-family:var(--bp-font-font-family), -apple-system, BlinkMacSystemFont, "San Francisco", "Segoe UI", Roboto, "Helvetica Neue", sans-serif;
11569
11570
  font-size:var(--bp-font-size-05);
11570
11571
  font-style:normal;
@@ -11572,7 +11573,7 @@ div[data-radix-popper-content-wrapper]:has([role=menu]):has([data-state=open]):h
11572
11573
  letter-spacing:var(--bp-font-letter-spacing-01);
11573
11574
  line-height:var(--bp-font-line-height-04);
11574
11575
  }
11575
- :where(body.is-inter-font) .bp_tabs_module_contentSwitchTabList--22ec8 .bp_tabs_module_contentSwitchTab--22ec8[aria-selected=true]{
11576
+ :where(body.is-inter-font) .bp_tabs_module_contentSwitchTabList--13d72 .bp_tabs_module_contentSwitchTab--13d72[aria-selected=true]{
11576
11577
  font-family:"Inter Variable", -apple-system, BlinkMacSystemFont, "San Francisco", "Segoe UI", Roboto, "Helvetica Neue", sans-serif;
11577
11578
  font-size:.875rem;
11578
11579
  font-style:normal;
@@ -11583,12 +11584,12 @@ div[data-radix-popper-content-wrapper]:has([role=menu]):has([data-state=open]):h
11583
11584
  text-transform:none;
11584
11585
  }
11585
11586
 
11586
- .bp_tabs_module_contentSwitchTabList--22ec8 .bp_tabs_module_contentSwitchTab--22ec8[aria-selected=true]{
11587
+ .bp_tabs_module_contentSwitchTabList--13d72 .bp_tabs_module_contentSwitchTab--13d72[aria-selected=true]{
11587
11588
  background:var(--content-switch-tab-selected-background);
11588
11589
  box-shadow:var(--content-switch-tab-selected-box-shadow);
11589
11590
  color:var(--content-switch-tab-selected-color);
11590
11591
  }
11591
- .bp_tabs_module_contentSwitchTabList--22ec8 .bp_tabs_module_contentSwitchTab--22ec8 .bp_tabs_module_hiddenWidthSetter--22ec8{
11592
+ .bp_tabs_module_contentSwitchTabList--13d72 .bp_tabs_module_contentSwitchTab--13d72 .bp_tabs_module_hiddenWidthSetter--13d72{
11592
11593
  font-family:var(--bp-font-font-family), -apple-system, BlinkMacSystemFont, "San Francisco", "Segoe UI", Roboto, "Helvetica Neue", sans-serif;
11593
11594
  font-size:var(--bp-font-size-05);
11594
11595
  font-style:normal;
@@ -11596,7 +11597,7 @@ div[data-radix-popper-content-wrapper]:has([role=menu]):has([data-state=open]):h
11596
11597
  letter-spacing:var(--bp-font-letter-spacing-01);
11597
11598
  line-height:var(--bp-font-line-height-04);
11598
11599
  }
11599
- :where(body.is-inter-font) .bp_tabs_module_contentSwitchTabList--22ec8 .bp_tabs_module_contentSwitchTab--22ec8 .bp_tabs_module_hiddenWidthSetter--22ec8{
11600
+ :where(body.is-inter-font) .bp_tabs_module_contentSwitchTabList--13d72 .bp_tabs_module_contentSwitchTab--13d72 .bp_tabs_module_hiddenWidthSetter--13d72{
11600
11601
  font-family:"Inter Variable", -apple-system, BlinkMacSystemFont, "San Francisco", "Segoe UI", Roboto, "Helvetica Neue", sans-serif;
11601
11602
  font-size:.875rem;
11602
11603
  font-style:normal;
@@ -11607,19 +11608,52 @@ div[data-radix-popper-content-wrapper]:has([role=menu]):has([data-state=open]):h
11607
11608
  text-transform:none;
11608
11609
  }
11609
11610
 
11610
- .bp_tabs_module_contentSwitchTabList--22ec8 .bp_tabs_module_contentSwitchTab--22ec8:not([aria-disabled=true])[data-focus-visible]{
11611
+ .bp_tabs_module_contentSwitchTabList--13d72 .bp_tabs_module_contentSwitchTab--13d72:not([aria-disabled=true])[data-focus-visible]{
11611
11612
  border-color:#0000;
11612
11613
  box-shadow:var(--content-switch-tab-focus-box-shadow);
11613
11614
  }
11614
- .bp_tabs_module_contentSwitchTabList--22ec8 .bp_tabs_module_contentSwitchTab--22ec8:not([aria-disabled=true]):hover,.bp_tabs_module_contentSwitchTabList--22ec8 .bp_tabs_module_contentSwitchTab--22ec8:not([aria-disabled=true])[data-focus-visible]:not([aria-selected=true]){
11615
+ .bp_tabs_module_contentSwitchTabList--13d72 .bp_tabs_module_contentSwitchTab--13d72:not([aria-disabled=true]):hover,.bp_tabs_module_contentSwitchTabList--13d72 .bp_tabs_module_contentSwitchTab--13d72:not([aria-disabled=true])[data-focus-visible]:not([aria-selected=true]){
11615
11616
  background:var(--content-switch-tab-hover-background);
11616
11617
  }
11617
- .bp_tabs_module_contentSwitchTabList--22ec8 .bp_tabs_module_contentSwitchTab--22ec8[aria-disabled=true]{
11618
+ .bp_tabs_module_contentSwitchTabList--13d72 .bp_tabs_module_contentSwitchTab--13d72[aria-disabled=true]{
11618
11619
  opacity:.3;
11619
11620
  pointer-events:none;
11620
11621
  }
11622
+ .bp_tabs_module_contentSwitchTabList--13d72[data-bp-animated=true]{
11623
+ position:relative;
11624
+ }
11625
+ .bp_tabs_module_contentSwitchTabList--13d72[data-bp-animated=true] .bp_tabs_module_tabIndicator--13d72{
11626
+ background:var(--content-switch-tab-selected-background);
11627
+ border-radius:var(--content-switch-tab-border-radius);
11628
+ box-shadow:var(--content-switch-tab-selected-box-shadow);
11629
+ height:var(--content-switch-tab-height);
11630
+ top:var(--content-switch-tab-list-padding);
11631
+ transition-duration:var(--bp-duration-medium);
11632
+ transition-property:transform, width;
11633
+ transition-timing-function:ease-in-out;
11634
+ z-index:0;
11635
+ }
11636
+ @media (prefers-reduced-motion: reduce){
11637
+ .bp_tabs_module_contentSwitchTabList--13d72[data-bp-animated=true] .bp_tabs_module_tabIndicator--13d72{
11638
+ transition:none;
11639
+ }
11640
+ }
11641
+ .bp_tabs_module_contentSwitchTabList--13d72[data-bp-animated=true] .bp_tabs_module_contentSwitchTab--13d72{
11642
+ position:relative;
11643
+ z-index:1;
11644
+ }
11645
+ .bp_tabs_module_contentSwitchTabList--13d72[data-bp-animated=true] .bp_tabs_module_contentSwitchTab--13d72[aria-selected=true]{
11646
+ background:#0000;
11647
+ box-shadow:none;
11648
+ }
11649
+ .bp_tabs_module_contentSwitchTabList--13d72[data-bp-animated=true] .bp_tabs_module_contentSwitchTab--13d72:not([aria-disabled=true])[aria-selected=true]:hover,.bp_tabs_module_contentSwitchTabList--13d72[data-bp-animated=true] .bp_tabs_module_contentSwitchTab--13d72:not([aria-disabled=true])[aria-selected=true][data-focus-visible]{
11650
+ background:#0000;
11651
+ }
11652
+ .bp_tabs_module_contentSwitchTabList--13d72[data-bp-animated=true] .bp_tabs_module_contentSwitchTab--13d72:not([aria-disabled=true])[aria-selected=true][data-focus-visible]{
11653
+ box-shadow:var(--content-switch-tab-focus-box-shadow);
11654
+ }
11621
11655
 
11622
- .bp_tabs_module_tabsListContainer--22ec8{
11656
+ .bp_tabs_module_tabsListContainer--13d72{
11623
11657
  --tab-height:var(--bp-size-100);
11624
11658
  --tab-inline-padding:var(--bp-space-030);
11625
11659
  --tab-background:var(--bp-surface-tab-surface);
@@ -11645,13 +11679,19 @@ div[data-radix-popper-content-wrapper]:has([role=menu]):has([data-state=open]):h
11645
11679
  overflow-y:hidden;
11646
11680
  scroll-behavior:smooth;
11647
11681
  }
11648
- .bp_tabs_module_tabsListContainer--22ec8 .bp_tabs_module_tabList--22ec8{
11682
+ .bp_tabs_module_tabsListContainer--13d72 .bp_tabs_module_tabList--13d72{
11683
+ --tab-separator-width:var(--tab-gap);
11649
11684
  display:flex;
11650
11685
  overflow-x:auto;
11651
11686
  padding:calc(var(--tab-border-focus-outline-width) + var(--tab-border-focus-outline-offset));
11652
11687
  position:relative;
11653
11688
  }
11654
- .bp_tabs_module_tabsListContainer--22ec8 .bp_tabs_module_tabList--22ec8::after{
11689
+ @media only screen and (max-width: 1023px){
11690
+ .bp_tabs_module_tabsListContainer--13d72 .bp_tabs_module_tabList--13d72{
11691
+ --tab-separator-width:calc(var(--tab-border-focus-outline-width) + var(--tab-border-focus-outline-offset));
11692
+ }
11693
+ }
11694
+ .bp_tabs_module_tabsListContainer--13d72 .bp_tabs_module_tabList--13d72::after{
11655
11695
  border-bottom:var(--tab-border);
11656
11696
  bottom:calc(var(--tab-border-focus-outline-width) + var(--tab-border-focus-outline-offset));
11657
11697
  content:"";
@@ -11659,19 +11699,14 @@ div[data-radix-popper-content-wrapper]:has([role=menu]):has([data-state=open]):h
11659
11699
  position:absolute;
11660
11700
  right:calc(var(--tab-border-focus-outline-width) + var(--tab-border-focus-outline-offset));
11661
11701
  }
11662
- .bp_tabs_module_tabsListContainer--22ec8 .bp_tabs_module_tabList--22ec8 .bp_tabs_module_tabSeparator--22ec8{
11702
+ .bp_tabs_module_tabsListContainer--13d72 .bp_tabs_module_tabList--13d72 .bp_tabs_module_tabSeparator--13d72{
11663
11703
  border-bottom:var(--tab-separator-border);
11664
- min-width:var(--tab-gap);
11704
+ min-width:var(--tab-separator-width);
11665
11705
  }
11666
- .bp_tabs_module_tabsListContainer--22ec8 .bp_tabs_module_tabList--22ec8 .bp_tabs_module_tabSeparator--22ec8:last-child{
11706
+ .bp_tabs_module_tabsListContainer--13d72 .bp_tabs_module_tabList--13d72 .bp_tabs_module_tabSeparator--13d72:last-child{
11667
11707
  display:none;
11668
11708
  }
11669
- @media only screen and (max-width: 1023px){
11670
- .bp_tabs_module_tabsListContainer--22ec8 .bp_tabs_module_tabList--22ec8 .bp_tabs_module_tabSeparator--22ec8{
11671
- min-width:calc(var(--tab-border-focus-outline-width) + var(--tab-border-focus-outline-offset));
11672
- }
11673
- }
11674
- .bp_tabs_module_tabsListContainer--22ec8 .bp_tabs_module_tabList--22ec8 .bp_tabs_module_tab--22ec8{
11709
+ .bp_tabs_module_tabsListContainer--13d72 .bp_tabs_module_tabList--13d72 .bp_tabs_module_tab--13d72{
11675
11710
  font-family:var(--bp-font-font-family), -apple-system, BlinkMacSystemFont, "San Francisco", "Segoe UI", Roboto, "Helvetica Neue", sans-serif;
11676
11711
  font-size:var(--bp-font-size-05);
11677
11712
  font-style:normal;
@@ -11679,7 +11714,7 @@ div[data-radix-popper-content-wrapper]:has([role=menu]):has([data-state=open]):h
11679
11714
  letter-spacing:var(--bp-font-letter-spacing-01);
11680
11715
  line-height:var(--bp-font-line-height-04);
11681
11716
  }
11682
- :where(body.is-inter-font) .bp_tabs_module_tabsListContainer--22ec8 .bp_tabs_module_tabList--22ec8 .bp_tabs_module_tab--22ec8{
11717
+ :where(body.is-inter-font) .bp_tabs_module_tabsListContainer--13d72 .bp_tabs_module_tabList--13d72 .bp_tabs_module_tab--13d72{
11683
11718
  font-family:"Inter Variable", -apple-system, BlinkMacSystemFont, "San Francisco", "Segoe UI", Roboto, "Helvetica Neue", sans-serif;
11684
11719
  font-size:.875rem;
11685
11720
  font-style:normal;
@@ -11690,7 +11725,7 @@ div[data-radix-popper-content-wrapper]:has([role=menu]):has([data-state=open]):h
11690
11725
  text-transform:none;
11691
11726
  }
11692
11727
 
11693
- .bp_tabs_module_tabsListContainer--22ec8 .bp_tabs_module_tabList--22ec8 .bp_tabs_module_tab--22ec8{
11728
+ .bp_tabs_module_tabsListContainer--13d72 .bp_tabs_module_tabList--13d72 .bp_tabs_module_tab--13d72{
11694
11729
  align-items:center;
11695
11730
  background:var(--tab-background);
11696
11731
  border-style:none;
@@ -11702,10 +11737,27 @@ div[data-radix-popper-content-wrapper]:has([role=menu]):has([data-state=open]):h
11702
11737
  display:flex;
11703
11738
  height:var(--tab-height);
11704
11739
  padding-inline:var(--tab-inline-padding);
11740
+ position:relative;
11705
11741
  scroll-margin:calc(var(--tab-border-focus-outline-width) + var(--tab-border-focus-outline-offset));
11706
11742
  z-index:2;
11707
11743
  }
11708
- .bp_tabs_module_tabsListContainer--22ec8 .bp_tabs_module_tabList--22ec8 .bp_tabs_module_tab--22ec8[aria-selected=true]{
11744
+ .bp_tabs_module_tabsListContainer--13d72 .bp_tabs_module_tabList--13d72 .bp_tabs_module_tab--13d72::after{
11745
+ background:#0000;
11746
+ bottom:calc(var(--bp-border-01)*-1);
11747
+ content:"";
11748
+ height:var(--bp-border-02);
11749
+ left:calc(var(--tab-separator-width)*-1);
11750
+ pointer-events:none;
11751
+ position:absolute;
11752
+ right:calc(var(--tab-separator-width)*-1);
11753
+ transition:background-color var(--bp-duration-medium) ease-in-out;
11754
+ }
11755
+ @media (prefers-reduced-motion: reduce){
11756
+ .bp_tabs_module_tabsListContainer--13d72 .bp_tabs_module_tabList--13d72 .bp_tabs_module_tab--13d72::after{
11757
+ transition:none;
11758
+ }
11759
+ }
11760
+ .bp_tabs_module_tabsListContainer--13d72 .bp_tabs_module_tabList--13d72 .bp_tabs_module_tab--13d72[aria-selected=true]{
11709
11761
  font-family:var(--bp-font-font-family), -apple-system, BlinkMacSystemFont, "San Francisco", "Segoe UI", Roboto, "Helvetica Neue", sans-serif;
11710
11762
  font-size:var(--bp-font-size-05);
11711
11763
  font-style:normal;
@@ -11713,7 +11765,7 @@ div[data-radix-popper-content-wrapper]:has([role=menu]):has([data-state=open]):h
11713
11765
  letter-spacing:var(--bp-font-letter-spacing-01);
11714
11766
  line-height:var(--bp-font-line-height-04);
11715
11767
  }
11716
- :where(body.is-inter-font) .bp_tabs_module_tabsListContainer--22ec8 .bp_tabs_module_tabList--22ec8 .bp_tabs_module_tab--22ec8[aria-selected=true]{
11768
+ :where(body.is-inter-font) .bp_tabs_module_tabsListContainer--13d72 .bp_tabs_module_tabList--13d72 .bp_tabs_module_tab--13d72[aria-selected=true]{
11717
11769
  font-family:"Inter Variable", -apple-system, BlinkMacSystemFont, "San Francisco", "Segoe UI", Roboto, "Helvetica Neue", sans-serif;
11718
11770
  font-size:.875rem;
11719
11771
  font-style:normal;
@@ -11724,11 +11776,11 @@ div[data-radix-popper-content-wrapper]:has([role=menu]):has([data-state=open]):h
11724
11776
  text-transform:none;
11725
11777
  }
11726
11778
 
11727
- .bp_tabs_module_tabsListContainer--22ec8 .bp_tabs_module_tabList--22ec8 .bp_tabs_module_tab--22ec8[aria-selected=true]{
11779
+ .bp_tabs_module_tabsListContainer--13d72 .bp_tabs_module_tabList--13d72 .bp_tabs_module_tab--13d72[aria-selected=true]{
11728
11780
  border-bottom:var(--tab-border-selected);
11729
11781
  color:var(--tab-font-selected-color);
11730
11782
  }
11731
- .bp_tabs_module_tabsListContainer--22ec8 .bp_tabs_module_tabList--22ec8 .bp_tabs_module_tab--22ec8 .bp_tabs_module_hiddenWidthSetter--22ec8{
11783
+ .bp_tabs_module_tabsListContainer--13d72 .bp_tabs_module_tabList--13d72 .bp_tabs_module_tab--13d72 .bp_tabs_module_hiddenWidthSetter--13d72{
11732
11784
  font-family:var(--bp-font-font-family), -apple-system, BlinkMacSystemFont, "San Francisco", "Segoe UI", Roboto, "Helvetica Neue", sans-serif;
11733
11785
  font-size:var(--bp-font-size-05);
11734
11786
  font-style:normal;
@@ -11736,7 +11788,7 @@ div[data-radix-popper-content-wrapper]:has([role=menu]):has([data-state=open]):h
11736
11788
  letter-spacing:var(--bp-font-letter-spacing-01);
11737
11789
  line-height:var(--bp-font-line-height-04);
11738
11790
  }
11739
- :where(body.is-inter-font) .bp_tabs_module_tabsListContainer--22ec8 .bp_tabs_module_tabList--22ec8 .bp_tabs_module_tab--22ec8 .bp_tabs_module_hiddenWidthSetter--22ec8{
11791
+ :where(body.is-inter-font) .bp_tabs_module_tabsListContainer--13d72 .bp_tabs_module_tabList--13d72 .bp_tabs_module_tab--13d72 .bp_tabs_module_hiddenWidthSetter--13d72{
11740
11792
  font-family:"Inter Variable", -apple-system, BlinkMacSystemFont, "San Francisco", "Segoe UI", Roboto, "Helvetica Neue", sans-serif;
11741
11793
  font-size:.875rem;
11742
11794
  font-style:normal;
@@ -11747,23 +11799,25 @@ div[data-radix-popper-content-wrapper]:has([role=menu]):has([data-state=open]):h
11747
11799
  text-transform:none;
11748
11800
  }
11749
11801
 
11750
- .bp_tabs_module_tabsListContainer--22ec8 .bp_tabs_module_tabList--22ec8 .bp_tabs_module_tab--22ec8:hover{
11802
+ .bp_tabs_module_tabsListContainer--13d72 .bp_tabs_module_tabList--13d72 .bp_tabs_module_tab--13d72:hover{
11751
11803
  background-color:var(--tab-background-hover);
11752
- border-bottom:var(--tab-border-hover);
11753
11804
  color:var(--tab-font-color-hover);
11754
11805
  }
11755
- .bp_tabs_module_tabsListContainer--22ec8 .bp_tabs_module_tabList--22ec8 .bp_tabs_module_tab--22ec8:hover[aria-selected=true]{
11806
+ .bp_tabs_module_tabsListContainer--13d72 .bp_tabs_module_tabList--13d72 .bp_tabs_module_tab--13d72:hover[aria-selected=true]{
11756
11807
  border-bottom:var(--tab-border-selected-hover);
11757
11808
  color:var(--tab-font-selected-color);
11758
11809
  }
11759
- .bp_tabs_module_tabsListContainer--22ec8 .bp_tabs_module_tabList--22ec8 .bp_tabs_module_tab--22ec8:active{
11810
+ .bp_tabs_module_tabsListContainer--13d72 .bp_tabs_module_tabList--13d72 .bp_tabs_module_tab--13d72:hover:not([aria-selected=true])::after{
11811
+ background:var(--bp-border-tab-border-hover);
11812
+ }
11813
+ .bp_tabs_module_tabsListContainer--13d72 .bp_tabs_module_tabList--13d72 .bp_tabs_module_tab--13d72:active{
11760
11814
  background-color:var(--tab-background-pressed);
11761
11815
  color:var(--tab-font-color-hover);
11762
11816
  }
11763
- .bp_tabs_module_tabsListContainer--22ec8 .bp_tabs_module_tabList--22ec8 .bp_tabs_module_tab--22ec8:active[aria-selected=true]{
11817
+ .bp_tabs_module_tabsListContainer--13d72 .bp_tabs_module_tabList--13d72 .bp_tabs_module_tab--13d72:active[aria-selected=true]{
11764
11818
  color:var(--tab-font-selected-color);
11765
11819
  }
11766
- .bp_tabs_module_tabsListContainer--22ec8 .bp_tabs_module_tabList--22ec8 .bp_tabs_module_tab--22ec8:focus-visible,.bp_tabs_module_tabsListContainer--22ec8 .bp_tabs_module_tabList--22ec8 .bp_tabs_module_tab--22ec8[data-focus-visible]{
11820
+ .bp_tabs_module_tabsListContainer--13d72 .bp_tabs_module_tabList--13d72 .bp_tabs_module_tab--13d72:focus-visible,.bp_tabs_module_tabsListContainer--13d72 .bp_tabs_module_tabList--13d72 .bp_tabs_module_tab--13d72[data-focus-visible]{
11767
11821
  background-color:var(--tab-background-hover);
11768
11822
  border-bottom:var(--tab-border-focus);
11769
11823
  border-radius:var(--tab-border-radius);
@@ -11772,13 +11826,53 @@ div[data-radix-popper-content-wrapper]:has([role=menu]):has([data-state=open]):h
11772
11826
  outline:var(--tab-border-focus-outline-width) solid var(--tab-border-focus-outline-color);
11773
11827
  outline-offset:var(--tab-border-focus-outline-offset);
11774
11828
  }
11775
- .bp_tabs_module_tabsListContainer--22ec8 .bp_tabs_module_tabList--22ec8 .bp_tabs_module_tab--22ec8:focus-visible[aria-selected=true],.bp_tabs_module_tabsListContainer--22ec8 .bp_tabs_module_tabList--22ec8 .bp_tabs_module_tab--22ec8[data-focus-visible][aria-selected=true]{
11829
+ .bp_tabs_module_tabsListContainer--13d72 .bp_tabs_module_tabList--13d72 .bp_tabs_module_tab--13d72:focus-visible[aria-selected=true],.bp_tabs_module_tabsListContainer--13d72 .bp_tabs_module_tabList--13d72 .bp_tabs_module_tab--13d72[data-focus-visible][aria-selected=true]{
11776
11830
  border-bottom:var(--tab-border-selected);
11777
11831
  color:var(--tab-font-selected-color);
11778
11832
  }
11779
- .bp_tabs_module_tabsListContainer--22ec8 .bp_tabs_module_tabList--22ec8 .bp_tabs_module_tab--22ec8[aria-disabled=true]{
11833
+ .bp_tabs_module_tabsListContainer--13d72 .bp_tabs_module_tabList--13d72 .bp_tabs_module_tab--13d72[aria-disabled=true]{
11780
11834
  opacity:.5;
11781
11835
  }
11836
+ .bp_tabs_module_tabsListContainer--13d72 .bp_tabs_module_tabList--13d72[data-bp-animated=true] .bp_tabs_module_tabIndicator--13d72{
11837
+ background:var(--bp-border-tab-border-selected);
11838
+ bottom:calc(var(--tab-border-focus-outline-width) + var(--tab-border-focus-outline-offset));
11839
+ height:var(--bp-border-02);
11840
+ transition-duration:var(--bp-duration-medium);
11841
+ transition-property:transform, width;
11842
+ transition-timing-function:var(--bp-curve-small-on);
11843
+ z-index:3;
11844
+ }
11845
+ @media (prefers-reduced-motion: reduce){
11846
+ .bp_tabs_module_tabsListContainer--13d72 .bp_tabs_module_tabList--13d72[data-bp-animated=true] .bp_tabs_module_tabIndicator--13d72{
11847
+ transition:none;
11848
+ }
11849
+ }
11850
+ .bp_tabs_module_tabsListContainer--13d72 .bp_tabs_module_tabList--13d72[data-bp-animated=true]:has(.bp_tabs_module_tab--13d72[aria-selected=true]:hover) .bp_tabs_module_tabIndicator--13d72{
11851
+ background:var(--bp-border-tab-border-selected-hover);
11852
+ }
11853
+ .bp_tabs_module_tabsListContainer--13d72 .bp_tabs_module_tabList--13d72[data-bp-animated=true] .bp_tabs_module_tab--13d72,.bp_tabs_module_tabsListContainer--13d72 .bp_tabs_module_tabList--13d72[data-bp-animated=true] .bp_tabs_module_tab--13d72:active,.bp_tabs_module_tabsListContainer--13d72 .bp_tabs_module_tabList--13d72[data-bp-animated=true] .bp_tabs_module_tab--13d72:focus-visible,.bp_tabs_module_tabsListContainer--13d72 .bp_tabs_module_tabList--13d72[data-bp-animated=true] .bp_tabs_module_tab--13d72:hover,.bp_tabs_module_tabsListContainer--13d72 .bp_tabs_module_tabList--13d72[data-bp-animated=true] .bp_tabs_module_tab--13d72[data-focus-visible]{
11854
+ border-bottom:var(--tab-border);
11855
+ }
11856
+ .bp_tabs_module_tabsListContainer--13d72 .bp_tabs_module_tabList--13d72[data-bp-animated=true] .bp_tabs_module_tab--13d72:focus-visible:not([aria-selected=true])::after,.bp_tabs_module_tabsListContainer--13d72 .bp_tabs_module_tabList--13d72[data-bp-animated=true] .bp_tabs_module_tab--13d72[data-focus-visible]:not([aria-selected=true])::after{
11857
+ background:var(--bp-border-tab-border-hover);
11858
+ }
11859
+ .bp_tabs_module_tabsListContainer--13d72 .bp_tabs_module_tabList--13d72[data-bp-animated=true] .bp_tabs_module_tab--13d72:focus-visible:not([aria-selected=true]),.bp_tabs_module_tabsListContainer--13d72 .bp_tabs_module_tabList--13d72[data-bp-animated=true] .bp_tabs_module_tab--13d72[data-focus-visible]:not([aria-selected=true]){
11860
+ box-shadow:inset 0 0 0 1px #fff;
11861
+ }
11862
+ .bp_tabs_module_tabsListContainer--13d72 .bp_tabs_module_tabList--13d72[data-bp-animated=true] .bp_tabs_module_tab--13d72[aria-selected=true],.bp_tabs_module_tabsListContainer--13d72 .bp_tabs_module_tabList--13d72[data-bp-animated=true] .bp_tabs_module_tab--13d72[aria-selected=true]:active,.bp_tabs_module_tabsListContainer--13d72 .bp_tabs_module_tabList--13d72[data-bp-animated=true] .bp_tabs_module_tab--13d72[aria-selected=true]:hover{
11863
+ border-bottom:var(--tab-border);
11864
+ box-shadow:none;
11865
+ }
11866
+ .bp_tabs_module_tabsListContainer--13d72 .bp_tabs_module_tabList--13d72[data-bp-animated=true] .bp_tabs_module_tab--13d72[aria-selected=true]:focus-visible,.bp_tabs_module_tabsListContainer--13d72 .bp_tabs_module_tabList--13d72[data-bp-animated=true] .bp_tabs_module_tab--13d72[aria-selected=true][data-focus-visible]{
11867
+ border-bottom:var(--tab-border);
11868
+ box-shadow:inset 0 0 0 1px #fff;
11869
+ }
11870
+
11871
+ .bp_tabs_module_tabIndicator--13d72{
11872
+ left:0;
11873
+ pointer-events:none;
11874
+ position:absolute;
11875
+ }
11782
11876
  .bp_radio_group_module_root--8c22a{
11783
11877
  --radio-line-height:var(--bp-font-line-height-04);
11784
11878
  font-family:var(--bp-font-font-family), -apple-system, BlinkMacSystemFont, "San Francisco", "Segoe UI", Roboto, "Helvetica Neue", sans-serif;
@@ -11498,17 +11498,17 @@ div[data-radix-popper-content-wrapper]:has([role=menu]):has([data-state=open]):h
11498
11498
  opacity:.3;
11499
11499
  }
11500
11500
 
11501
- .bp_tabs_module_hiddenWidthSetter--22ec8{
11501
+ .bp_tabs_module_hiddenWidthSetter--13d72{
11502
11502
  display:block;
11503
11503
  height:0;
11504
11504
  overflow:hidden;
11505
11505
  visibility:hidden;
11506
11506
  }
11507
- .bp_tabs_module_hiddenWidthSetter--22ec8 > *{
11507
+ .bp_tabs_module_hiddenWidthSetter--13d72 > *{
11508
11508
  visibility:hidden;
11509
11509
  }
11510
11510
 
11511
- .bp_tabs_module_contentSwitchTabList--22ec8{
11511
+ .bp_tabs_module_contentSwitchTabList--13d72{
11512
11512
  --content-switch-tab-list-gap:var(--bp-space-010);
11513
11513
  --content-switch-tab-list-padding:var(--bp-space-010);
11514
11514
  --content-switch-tab-list-background:var(--bp-surface-content-switcher-surface);
@@ -11531,7 +11531,7 @@ div[data-radix-popper-content-wrapper]:has([role=menu]):has([data-state=open]):h
11531
11531
  min-width:fit-content;
11532
11532
  padding:var(--content-switch-tab-list-padding);
11533
11533
  }
11534
- .bp_tabs_module_contentSwitchTabList--22ec8 .bp_tabs_module_contentSwitchTab--22ec8{
11534
+ .bp_tabs_module_contentSwitchTabList--13d72 .bp_tabs_module_contentSwitchTab--13d72{
11535
11535
  font-family:var(--bp-font-font-family), -apple-system, BlinkMacSystemFont, "San Francisco", "Segoe UI", Roboto, "Helvetica Neue", sans-serif;
11536
11536
  font-size:var(--bp-font-size-05);
11537
11537
  font-style:normal;
@@ -11539,7 +11539,7 @@ div[data-radix-popper-content-wrapper]:has([role=menu]):has([data-state=open]):h
11539
11539
  letter-spacing:var(--bp-font-letter-spacing-01);
11540
11540
  line-height:var(--bp-font-line-height-04);
11541
11541
  }
11542
- :where(body.is-inter-font) .bp_tabs_module_contentSwitchTabList--22ec8 .bp_tabs_module_contentSwitchTab--22ec8{
11542
+ :where(body.is-inter-font) .bp_tabs_module_contentSwitchTabList--13d72 .bp_tabs_module_contentSwitchTab--13d72{
11543
11543
  font-family:"Inter Variable", -apple-system, BlinkMacSystemFont, "San Francisco", "Segoe UI", Roboto, "Helvetica Neue", sans-serif;
11544
11544
  font-size:.875rem;
11545
11545
  font-style:normal;
@@ -11550,12 +11550,13 @@ div[data-radix-popper-content-wrapper]:has([role=menu]):has([data-state=open]):h
11550
11550
  text-transform:none;
11551
11551
  }
11552
11552
 
11553
- .bp_tabs_module_contentSwitchTabList--22ec8 .bp_tabs_module_contentSwitchTab--22ec8{
11553
+ .bp_tabs_module_contentSwitchTabList--13d72 .bp_tabs_module_contentSwitchTab--13d72{
11554
11554
  align-items:center;
11555
11555
  background:#0000;
11556
11556
  border:none;
11557
11557
  border-radius:var(--content-switch-tab-border-radius);
11558
11558
  color:var(--content-switch-tab-color);
11559
+ cursor:pointer;
11559
11560
  display:flex;
11560
11561
  flex-direction:column;
11561
11562
  height:var(--content-switch-tab-height);
@@ -11564,7 +11565,7 @@ div[data-radix-popper-content-wrapper]:has([role=menu]):has([data-state=open]):h
11564
11565
  padding-inline:var(--content-switch-tab-padding-inline);
11565
11566
  white-space:nowrap;
11566
11567
  }
11567
- .bp_tabs_module_contentSwitchTabList--22ec8 .bp_tabs_module_contentSwitchTab--22ec8[aria-selected=true]{
11568
+ .bp_tabs_module_contentSwitchTabList--13d72 .bp_tabs_module_contentSwitchTab--13d72[aria-selected=true]{
11568
11569
  font-family:var(--bp-font-font-family), -apple-system, BlinkMacSystemFont, "San Francisco", "Segoe UI", Roboto, "Helvetica Neue", sans-serif;
11569
11570
  font-size:var(--bp-font-size-05);
11570
11571
  font-style:normal;
@@ -11572,7 +11573,7 @@ div[data-radix-popper-content-wrapper]:has([role=menu]):has([data-state=open]):h
11572
11573
  letter-spacing:var(--bp-font-letter-spacing-01);
11573
11574
  line-height:var(--bp-font-line-height-04);
11574
11575
  }
11575
- :where(body.is-inter-font) .bp_tabs_module_contentSwitchTabList--22ec8 .bp_tabs_module_contentSwitchTab--22ec8[aria-selected=true]{
11576
+ :where(body.is-inter-font) .bp_tabs_module_contentSwitchTabList--13d72 .bp_tabs_module_contentSwitchTab--13d72[aria-selected=true]{
11576
11577
  font-family:"Inter Variable", -apple-system, BlinkMacSystemFont, "San Francisco", "Segoe UI", Roboto, "Helvetica Neue", sans-serif;
11577
11578
  font-size:.875rem;
11578
11579
  font-style:normal;
@@ -11583,12 +11584,12 @@ div[data-radix-popper-content-wrapper]:has([role=menu]):has([data-state=open]):h
11583
11584
  text-transform:none;
11584
11585
  }
11585
11586
 
11586
- .bp_tabs_module_contentSwitchTabList--22ec8 .bp_tabs_module_contentSwitchTab--22ec8[aria-selected=true]{
11587
+ .bp_tabs_module_contentSwitchTabList--13d72 .bp_tabs_module_contentSwitchTab--13d72[aria-selected=true]{
11587
11588
  background:var(--content-switch-tab-selected-background);
11588
11589
  box-shadow:var(--content-switch-tab-selected-box-shadow);
11589
11590
  color:var(--content-switch-tab-selected-color);
11590
11591
  }
11591
- .bp_tabs_module_contentSwitchTabList--22ec8 .bp_tabs_module_contentSwitchTab--22ec8 .bp_tabs_module_hiddenWidthSetter--22ec8{
11592
+ .bp_tabs_module_contentSwitchTabList--13d72 .bp_tabs_module_contentSwitchTab--13d72 .bp_tabs_module_hiddenWidthSetter--13d72{
11592
11593
  font-family:var(--bp-font-font-family), -apple-system, BlinkMacSystemFont, "San Francisco", "Segoe UI", Roboto, "Helvetica Neue", sans-serif;
11593
11594
  font-size:var(--bp-font-size-05);
11594
11595
  font-style:normal;
@@ -11596,7 +11597,7 @@ div[data-radix-popper-content-wrapper]:has([role=menu]):has([data-state=open]):h
11596
11597
  letter-spacing:var(--bp-font-letter-spacing-01);
11597
11598
  line-height:var(--bp-font-line-height-04);
11598
11599
  }
11599
- :where(body.is-inter-font) .bp_tabs_module_contentSwitchTabList--22ec8 .bp_tabs_module_contentSwitchTab--22ec8 .bp_tabs_module_hiddenWidthSetter--22ec8{
11600
+ :where(body.is-inter-font) .bp_tabs_module_contentSwitchTabList--13d72 .bp_tabs_module_contentSwitchTab--13d72 .bp_tabs_module_hiddenWidthSetter--13d72{
11600
11601
  font-family:"Inter Variable", -apple-system, BlinkMacSystemFont, "San Francisco", "Segoe UI", Roboto, "Helvetica Neue", sans-serif;
11601
11602
  font-size:.875rem;
11602
11603
  font-style:normal;
@@ -11607,19 +11608,52 @@ div[data-radix-popper-content-wrapper]:has([role=menu]):has([data-state=open]):h
11607
11608
  text-transform:none;
11608
11609
  }
11609
11610
 
11610
- .bp_tabs_module_contentSwitchTabList--22ec8 .bp_tabs_module_contentSwitchTab--22ec8:not([aria-disabled=true])[data-focus-visible]{
11611
+ .bp_tabs_module_contentSwitchTabList--13d72 .bp_tabs_module_contentSwitchTab--13d72:not([aria-disabled=true])[data-focus-visible]{
11611
11612
  border-color:#0000;
11612
11613
  box-shadow:var(--content-switch-tab-focus-box-shadow);
11613
11614
  }
11614
- .bp_tabs_module_contentSwitchTabList--22ec8 .bp_tabs_module_contentSwitchTab--22ec8:not([aria-disabled=true]):hover,.bp_tabs_module_contentSwitchTabList--22ec8 .bp_tabs_module_contentSwitchTab--22ec8:not([aria-disabled=true])[data-focus-visible]:not([aria-selected=true]){
11615
+ .bp_tabs_module_contentSwitchTabList--13d72 .bp_tabs_module_contentSwitchTab--13d72:not([aria-disabled=true]):hover,.bp_tabs_module_contentSwitchTabList--13d72 .bp_tabs_module_contentSwitchTab--13d72:not([aria-disabled=true])[data-focus-visible]:not([aria-selected=true]){
11615
11616
  background:var(--content-switch-tab-hover-background);
11616
11617
  }
11617
- .bp_tabs_module_contentSwitchTabList--22ec8 .bp_tabs_module_contentSwitchTab--22ec8[aria-disabled=true]{
11618
+ .bp_tabs_module_contentSwitchTabList--13d72 .bp_tabs_module_contentSwitchTab--13d72[aria-disabled=true]{
11618
11619
  opacity:.3;
11619
11620
  pointer-events:none;
11620
11621
  }
11622
+ .bp_tabs_module_contentSwitchTabList--13d72[data-bp-animated=true]{
11623
+ position:relative;
11624
+ }
11625
+ .bp_tabs_module_contentSwitchTabList--13d72[data-bp-animated=true] .bp_tabs_module_tabIndicator--13d72{
11626
+ background:var(--content-switch-tab-selected-background);
11627
+ border-radius:var(--content-switch-tab-border-radius);
11628
+ box-shadow:var(--content-switch-tab-selected-box-shadow);
11629
+ height:var(--content-switch-tab-height);
11630
+ top:var(--content-switch-tab-list-padding);
11631
+ transition-duration:var(--bp-duration-medium);
11632
+ transition-property:transform, width;
11633
+ transition-timing-function:ease-in-out;
11634
+ z-index:0;
11635
+ }
11636
+ @media (prefers-reduced-motion: reduce){
11637
+ .bp_tabs_module_contentSwitchTabList--13d72[data-bp-animated=true] .bp_tabs_module_tabIndicator--13d72{
11638
+ transition:none;
11639
+ }
11640
+ }
11641
+ .bp_tabs_module_contentSwitchTabList--13d72[data-bp-animated=true] .bp_tabs_module_contentSwitchTab--13d72{
11642
+ position:relative;
11643
+ z-index:1;
11644
+ }
11645
+ .bp_tabs_module_contentSwitchTabList--13d72[data-bp-animated=true] .bp_tabs_module_contentSwitchTab--13d72[aria-selected=true]{
11646
+ background:#0000;
11647
+ box-shadow:none;
11648
+ }
11649
+ .bp_tabs_module_contentSwitchTabList--13d72[data-bp-animated=true] .bp_tabs_module_contentSwitchTab--13d72:not([aria-disabled=true])[aria-selected=true]:hover,.bp_tabs_module_contentSwitchTabList--13d72[data-bp-animated=true] .bp_tabs_module_contentSwitchTab--13d72:not([aria-disabled=true])[aria-selected=true][data-focus-visible]{
11650
+ background:#0000;
11651
+ }
11652
+ .bp_tabs_module_contentSwitchTabList--13d72[data-bp-animated=true] .bp_tabs_module_contentSwitchTab--13d72:not([aria-disabled=true])[aria-selected=true][data-focus-visible]{
11653
+ box-shadow:var(--content-switch-tab-focus-box-shadow);
11654
+ }
11621
11655
 
11622
- .bp_tabs_module_tabsListContainer--22ec8{
11656
+ .bp_tabs_module_tabsListContainer--13d72{
11623
11657
  --tab-height:var(--bp-size-100);
11624
11658
  --tab-inline-padding:var(--bp-space-030);
11625
11659
  --tab-background:var(--bp-surface-tab-surface);
@@ -11645,13 +11679,19 @@ div[data-radix-popper-content-wrapper]:has([role=menu]):has([data-state=open]):h
11645
11679
  overflow-y:hidden;
11646
11680
  scroll-behavior:smooth;
11647
11681
  }
11648
- .bp_tabs_module_tabsListContainer--22ec8 .bp_tabs_module_tabList--22ec8{
11682
+ .bp_tabs_module_tabsListContainer--13d72 .bp_tabs_module_tabList--13d72{
11683
+ --tab-separator-width:var(--tab-gap);
11649
11684
  display:flex;
11650
11685
  overflow-x:auto;
11651
11686
  padding:calc(var(--tab-border-focus-outline-width) + var(--tab-border-focus-outline-offset));
11652
11687
  position:relative;
11653
11688
  }
11654
- .bp_tabs_module_tabsListContainer--22ec8 .bp_tabs_module_tabList--22ec8::after{
11689
+ @media only screen and (max-width: 1023px){
11690
+ .bp_tabs_module_tabsListContainer--13d72 .bp_tabs_module_tabList--13d72{
11691
+ --tab-separator-width:calc(var(--tab-border-focus-outline-width) + var(--tab-border-focus-outline-offset));
11692
+ }
11693
+ }
11694
+ .bp_tabs_module_tabsListContainer--13d72 .bp_tabs_module_tabList--13d72::after{
11655
11695
  border-bottom:var(--tab-border);
11656
11696
  bottom:calc(var(--tab-border-focus-outline-width) + var(--tab-border-focus-outline-offset));
11657
11697
  content:"";
@@ -11659,19 +11699,14 @@ div[data-radix-popper-content-wrapper]:has([role=menu]):has([data-state=open]):h
11659
11699
  position:absolute;
11660
11700
  right:calc(var(--tab-border-focus-outline-width) + var(--tab-border-focus-outline-offset));
11661
11701
  }
11662
- .bp_tabs_module_tabsListContainer--22ec8 .bp_tabs_module_tabList--22ec8 .bp_tabs_module_tabSeparator--22ec8{
11702
+ .bp_tabs_module_tabsListContainer--13d72 .bp_tabs_module_tabList--13d72 .bp_tabs_module_tabSeparator--13d72{
11663
11703
  border-bottom:var(--tab-separator-border);
11664
- min-width:var(--tab-gap);
11704
+ min-width:var(--tab-separator-width);
11665
11705
  }
11666
- .bp_tabs_module_tabsListContainer--22ec8 .bp_tabs_module_tabList--22ec8 .bp_tabs_module_tabSeparator--22ec8:last-child{
11706
+ .bp_tabs_module_tabsListContainer--13d72 .bp_tabs_module_tabList--13d72 .bp_tabs_module_tabSeparator--13d72:last-child{
11667
11707
  display:none;
11668
11708
  }
11669
- @media only screen and (max-width: 1023px){
11670
- .bp_tabs_module_tabsListContainer--22ec8 .bp_tabs_module_tabList--22ec8 .bp_tabs_module_tabSeparator--22ec8{
11671
- min-width:calc(var(--tab-border-focus-outline-width) + var(--tab-border-focus-outline-offset));
11672
- }
11673
- }
11674
- .bp_tabs_module_tabsListContainer--22ec8 .bp_tabs_module_tabList--22ec8 .bp_tabs_module_tab--22ec8{
11709
+ .bp_tabs_module_tabsListContainer--13d72 .bp_tabs_module_tabList--13d72 .bp_tabs_module_tab--13d72{
11675
11710
  font-family:var(--bp-font-font-family), -apple-system, BlinkMacSystemFont, "San Francisco", "Segoe UI", Roboto, "Helvetica Neue", sans-serif;
11676
11711
  font-size:var(--bp-font-size-05);
11677
11712
  font-style:normal;
@@ -11679,7 +11714,7 @@ div[data-radix-popper-content-wrapper]:has([role=menu]):has([data-state=open]):h
11679
11714
  letter-spacing:var(--bp-font-letter-spacing-01);
11680
11715
  line-height:var(--bp-font-line-height-04);
11681
11716
  }
11682
- :where(body.is-inter-font) .bp_tabs_module_tabsListContainer--22ec8 .bp_tabs_module_tabList--22ec8 .bp_tabs_module_tab--22ec8{
11717
+ :where(body.is-inter-font) .bp_tabs_module_tabsListContainer--13d72 .bp_tabs_module_tabList--13d72 .bp_tabs_module_tab--13d72{
11683
11718
  font-family:"Inter Variable", -apple-system, BlinkMacSystemFont, "San Francisco", "Segoe UI", Roboto, "Helvetica Neue", sans-serif;
11684
11719
  font-size:.875rem;
11685
11720
  font-style:normal;
@@ -11690,7 +11725,7 @@ div[data-radix-popper-content-wrapper]:has([role=menu]):has([data-state=open]):h
11690
11725
  text-transform:none;
11691
11726
  }
11692
11727
 
11693
- .bp_tabs_module_tabsListContainer--22ec8 .bp_tabs_module_tabList--22ec8 .bp_tabs_module_tab--22ec8{
11728
+ .bp_tabs_module_tabsListContainer--13d72 .bp_tabs_module_tabList--13d72 .bp_tabs_module_tab--13d72{
11694
11729
  align-items:center;
11695
11730
  background:var(--tab-background);
11696
11731
  border-style:none;
@@ -11702,10 +11737,27 @@ div[data-radix-popper-content-wrapper]:has([role=menu]):has([data-state=open]):h
11702
11737
  display:flex;
11703
11738
  height:var(--tab-height);
11704
11739
  padding-inline:var(--tab-inline-padding);
11740
+ position:relative;
11705
11741
  scroll-margin:calc(var(--tab-border-focus-outline-width) + var(--tab-border-focus-outline-offset));
11706
11742
  z-index:2;
11707
11743
  }
11708
- .bp_tabs_module_tabsListContainer--22ec8 .bp_tabs_module_tabList--22ec8 .bp_tabs_module_tab--22ec8[aria-selected=true]{
11744
+ .bp_tabs_module_tabsListContainer--13d72 .bp_tabs_module_tabList--13d72 .bp_tabs_module_tab--13d72::after{
11745
+ background:#0000;
11746
+ bottom:calc(var(--bp-border-01)*-1);
11747
+ content:"";
11748
+ height:var(--bp-border-02);
11749
+ left:calc(var(--tab-separator-width)*-1);
11750
+ pointer-events:none;
11751
+ position:absolute;
11752
+ right:calc(var(--tab-separator-width)*-1);
11753
+ transition:background-color var(--bp-duration-medium) ease-in-out;
11754
+ }
11755
+ @media (prefers-reduced-motion: reduce){
11756
+ .bp_tabs_module_tabsListContainer--13d72 .bp_tabs_module_tabList--13d72 .bp_tabs_module_tab--13d72::after{
11757
+ transition:none;
11758
+ }
11759
+ }
11760
+ .bp_tabs_module_tabsListContainer--13d72 .bp_tabs_module_tabList--13d72 .bp_tabs_module_tab--13d72[aria-selected=true]{
11709
11761
  font-family:var(--bp-font-font-family), -apple-system, BlinkMacSystemFont, "San Francisco", "Segoe UI", Roboto, "Helvetica Neue", sans-serif;
11710
11762
  font-size:var(--bp-font-size-05);
11711
11763
  font-style:normal;
@@ -11713,7 +11765,7 @@ div[data-radix-popper-content-wrapper]:has([role=menu]):has([data-state=open]):h
11713
11765
  letter-spacing:var(--bp-font-letter-spacing-01);
11714
11766
  line-height:var(--bp-font-line-height-04);
11715
11767
  }
11716
- :where(body.is-inter-font) .bp_tabs_module_tabsListContainer--22ec8 .bp_tabs_module_tabList--22ec8 .bp_tabs_module_tab--22ec8[aria-selected=true]{
11768
+ :where(body.is-inter-font) .bp_tabs_module_tabsListContainer--13d72 .bp_tabs_module_tabList--13d72 .bp_tabs_module_tab--13d72[aria-selected=true]{
11717
11769
  font-family:"Inter Variable", -apple-system, BlinkMacSystemFont, "San Francisco", "Segoe UI", Roboto, "Helvetica Neue", sans-serif;
11718
11770
  font-size:.875rem;
11719
11771
  font-style:normal;
@@ -11724,11 +11776,11 @@ div[data-radix-popper-content-wrapper]:has([role=menu]):has([data-state=open]):h
11724
11776
  text-transform:none;
11725
11777
  }
11726
11778
 
11727
- .bp_tabs_module_tabsListContainer--22ec8 .bp_tabs_module_tabList--22ec8 .bp_tabs_module_tab--22ec8[aria-selected=true]{
11779
+ .bp_tabs_module_tabsListContainer--13d72 .bp_tabs_module_tabList--13d72 .bp_tabs_module_tab--13d72[aria-selected=true]{
11728
11780
  border-bottom:var(--tab-border-selected);
11729
11781
  color:var(--tab-font-selected-color);
11730
11782
  }
11731
- .bp_tabs_module_tabsListContainer--22ec8 .bp_tabs_module_tabList--22ec8 .bp_tabs_module_tab--22ec8 .bp_tabs_module_hiddenWidthSetter--22ec8{
11783
+ .bp_tabs_module_tabsListContainer--13d72 .bp_tabs_module_tabList--13d72 .bp_tabs_module_tab--13d72 .bp_tabs_module_hiddenWidthSetter--13d72{
11732
11784
  font-family:var(--bp-font-font-family), -apple-system, BlinkMacSystemFont, "San Francisco", "Segoe UI", Roboto, "Helvetica Neue", sans-serif;
11733
11785
  font-size:var(--bp-font-size-05);
11734
11786
  font-style:normal;
@@ -11736,7 +11788,7 @@ div[data-radix-popper-content-wrapper]:has([role=menu]):has([data-state=open]):h
11736
11788
  letter-spacing:var(--bp-font-letter-spacing-01);
11737
11789
  line-height:var(--bp-font-line-height-04);
11738
11790
  }
11739
- :where(body.is-inter-font) .bp_tabs_module_tabsListContainer--22ec8 .bp_tabs_module_tabList--22ec8 .bp_tabs_module_tab--22ec8 .bp_tabs_module_hiddenWidthSetter--22ec8{
11791
+ :where(body.is-inter-font) .bp_tabs_module_tabsListContainer--13d72 .bp_tabs_module_tabList--13d72 .bp_tabs_module_tab--13d72 .bp_tabs_module_hiddenWidthSetter--13d72{
11740
11792
  font-family:"Inter Variable", -apple-system, BlinkMacSystemFont, "San Francisco", "Segoe UI", Roboto, "Helvetica Neue", sans-serif;
11741
11793
  font-size:.875rem;
11742
11794
  font-style:normal;
@@ -11747,23 +11799,25 @@ div[data-radix-popper-content-wrapper]:has([role=menu]):has([data-state=open]):h
11747
11799
  text-transform:none;
11748
11800
  }
11749
11801
 
11750
- .bp_tabs_module_tabsListContainer--22ec8 .bp_tabs_module_tabList--22ec8 .bp_tabs_module_tab--22ec8:hover{
11802
+ .bp_tabs_module_tabsListContainer--13d72 .bp_tabs_module_tabList--13d72 .bp_tabs_module_tab--13d72:hover{
11751
11803
  background-color:var(--tab-background-hover);
11752
- border-bottom:var(--tab-border-hover);
11753
11804
  color:var(--tab-font-color-hover);
11754
11805
  }
11755
- .bp_tabs_module_tabsListContainer--22ec8 .bp_tabs_module_tabList--22ec8 .bp_tabs_module_tab--22ec8:hover[aria-selected=true]{
11806
+ .bp_tabs_module_tabsListContainer--13d72 .bp_tabs_module_tabList--13d72 .bp_tabs_module_tab--13d72:hover[aria-selected=true]{
11756
11807
  border-bottom:var(--tab-border-selected-hover);
11757
11808
  color:var(--tab-font-selected-color);
11758
11809
  }
11759
- .bp_tabs_module_tabsListContainer--22ec8 .bp_tabs_module_tabList--22ec8 .bp_tabs_module_tab--22ec8:active{
11810
+ .bp_tabs_module_tabsListContainer--13d72 .bp_tabs_module_tabList--13d72 .bp_tabs_module_tab--13d72:hover:not([aria-selected=true])::after{
11811
+ background:var(--bp-border-tab-border-hover);
11812
+ }
11813
+ .bp_tabs_module_tabsListContainer--13d72 .bp_tabs_module_tabList--13d72 .bp_tabs_module_tab--13d72:active{
11760
11814
  background-color:var(--tab-background-pressed);
11761
11815
  color:var(--tab-font-color-hover);
11762
11816
  }
11763
- .bp_tabs_module_tabsListContainer--22ec8 .bp_tabs_module_tabList--22ec8 .bp_tabs_module_tab--22ec8:active[aria-selected=true]{
11817
+ .bp_tabs_module_tabsListContainer--13d72 .bp_tabs_module_tabList--13d72 .bp_tabs_module_tab--13d72:active[aria-selected=true]{
11764
11818
  color:var(--tab-font-selected-color);
11765
11819
  }
11766
- .bp_tabs_module_tabsListContainer--22ec8 .bp_tabs_module_tabList--22ec8 .bp_tabs_module_tab--22ec8:focus-visible,.bp_tabs_module_tabsListContainer--22ec8 .bp_tabs_module_tabList--22ec8 .bp_tabs_module_tab--22ec8[data-focus-visible]{
11820
+ .bp_tabs_module_tabsListContainer--13d72 .bp_tabs_module_tabList--13d72 .bp_tabs_module_tab--13d72:focus-visible,.bp_tabs_module_tabsListContainer--13d72 .bp_tabs_module_tabList--13d72 .bp_tabs_module_tab--13d72[data-focus-visible]{
11767
11821
  background-color:var(--tab-background-hover);
11768
11822
  border-bottom:var(--tab-border-focus);
11769
11823
  border-radius:var(--tab-border-radius);
@@ -11772,13 +11826,53 @@ div[data-radix-popper-content-wrapper]:has([role=menu]):has([data-state=open]):h
11772
11826
  outline:var(--tab-border-focus-outline-width) solid var(--tab-border-focus-outline-color);
11773
11827
  outline-offset:var(--tab-border-focus-outline-offset);
11774
11828
  }
11775
- .bp_tabs_module_tabsListContainer--22ec8 .bp_tabs_module_tabList--22ec8 .bp_tabs_module_tab--22ec8:focus-visible[aria-selected=true],.bp_tabs_module_tabsListContainer--22ec8 .bp_tabs_module_tabList--22ec8 .bp_tabs_module_tab--22ec8[data-focus-visible][aria-selected=true]{
11829
+ .bp_tabs_module_tabsListContainer--13d72 .bp_tabs_module_tabList--13d72 .bp_tabs_module_tab--13d72:focus-visible[aria-selected=true],.bp_tabs_module_tabsListContainer--13d72 .bp_tabs_module_tabList--13d72 .bp_tabs_module_tab--13d72[data-focus-visible][aria-selected=true]{
11776
11830
  border-bottom:var(--tab-border-selected);
11777
11831
  color:var(--tab-font-selected-color);
11778
11832
  }
11779
- .bp_tabs_module_tabsListContainer--22ec8 .bp_tabs_module_tabList--22ec8 .bp_tabs_module_tab--22ec8[aria-disabled=true]{
11833
+ .bp_tabs_module_tabsListContainer--13d72 .bp_tabs_module_tabList--13d72 .bp_tabs_module_tab--13d72[aria-disabled=true]{
11780
11834
  opacity:.5;
11781
11835
  }
11836
+ .bp_tabs_module_tabsListContainer--13d72 .bp_tabs_module_tabList--13d72[data-bp-animated=true] .bp_tabs_module_tabIndicator--13d72{
11837
+ background:var(--bp-border-tab-border-selected);
11838
+ bottom:calc(var(--tab-border-focus-outline-width) + var(--tab-border-focus-outline-offset));
11839
+ height:var(--bp-border-02);
11840
+ transition-duration:var(--bp-duration-medium);
11841
+ transition-property:transform, width;
11842
+ transition-timing-function:var(--bp-curve-small-on);
11843
+ z-index:3;
11844
+ }
11845
+ @media (prefers-reduced-motion: reduce){
11846
+ .bp_tabs_module_tabsListContainer--13d72 .bp_tabs_module_tabList--13d72[data-bp-animated=true] .bp_tabs_module_tabIndicator--13d72{
11847
+ transition:none;
11848
+ }
11849
+ }
11850
+ .bp_tabs_module_tabsListContainer--13d72 .bp_tabs_module_tabList--13d72[data-bp-animated=true]:has(.bp_tabs_module_tab--13d72[aria-selected=true]:hover) .bp_tabs_module_tabIndicator--13d72{
11851
+ background:var(--bp-border-tab-border-selected-hover);
11852
+ }
11853
+ .bp_tabs_module_tabsListContainer--13d72 .bp_tabs_module_tabList--13d72[data-bp-animated=true] .bp_tabs_module_tab--13d72,.bp_tabs_module_tabsListContainer--13d72 .bp_tabs_module_tabList--13d72[data-bp-animated=true] .bp_tabs_module_tab--13d72:active,.bp_tabs_module_tabsListContainer--13d72 .bp_tabs_module_tabList--13d72[data-bp-animated=true] .bp_tabs_module_tab--13d72:focus-visible,.bp_tabs_module_tabsListContainer--13d72 .bp_tabs_module_tabList--13d72[data-bp-animated=true] .bp_tabs_module_tab--13d72:hover,.bp_tabs_module_tabsListContainer--13d72 .bp_tabs_module_tabList--13d72[data-bp-animated=true] .bp_tabs_module_tab--13d72[data-focus-visible]{
11854
+ border-bottom:var(--tab-border);
11855
+ }
11856
+ .bp_tabs_module_tabsListContainer--13d72 .bp_tabs_module_tabList--13d72[data-bp-animated=true] .bp_tabs_module_tab--13d72:focus-visible:not([aria-selected=true])::after,.bp_tabs_module_tabsListContainer--13d72 .bp_tabs_module_tabList--13d72[data-bp-animated=true] .bp_tabs_module_tab--13d72[data-focus-visible]:not([aria-selected=true])::after{
11857
+ background:var(--bp-border-tab-border-hover);
11858
+ }
11859
+ .bp_tabs_module_tabsListContainer--13d72 .bp_tabs_module_tabList--13d72[data-bp-animated=true] .bp_tabs_module_tab--13d72:focus-visible:not([aria-selected=true]),.bp_tabs_module_tabsListContainer--13d72 .bp_tabs_module_tabList--13d72[data-bp-animated=true] .bp_tabs_module_tab--13d72[data-focus-visible]:not([aria-selected=true]){
11860
+ box-shadow:inset 0 0 0 1px #fff;
11861
+ }
11862
+ .bp_tabs_module_tabsListContainer--13d72 .bp_tabs_module_tabList--13d72[data-bp-animated=true] .bp_tabs_module_tab--13d72[aria-selected=true],.bp_tabs_module_tabsListContainer--13d72 .bp_tabs_module_tabList--13d72[data-bp-animated=true] .bp_tabs_module_tab--13d72[aria-selected=true]:active,.bp_tabs_module_tabsListContainer--13d72 .bp_tabs_module_tabList--13d72[data-bp-animated=true] .bp_tabs_module_tab--13d72[aria-selected=true]:hover{
11863
+ border-bottom:var(--tab-border);
11864
+ box-shadow:none;
11865
+ }
11866
+ .bp_tabs_module_tabsListContainer--13d72 .bp_tabs_module_tabList--13d72[data-bp-animated=true] .bp_tabs_module_tab--13d72[aria-selected=true]:focus-visible,.bp_tabs_module_tabsListContainer--13d72 .bp_tabs_module_tabList--13d72[data-bp-animated=true] .bp_tabs_module_tab--13d72[aria-selected=true][data-focus-visible]{
11867
+ border-bottom:var(--tab-border);
11868
+ box-shadow:inset 0 0 0 1px #fff;
11869
+ }
11870
+
11871
+ .bp_tabs_module_tabIndicator--13d72{
11872
+ left:0;
11873
+ pointer-events:none;
11874
+ position:absolute;
11875
+ }
11782
11876
  .bp_radio_group_module_root--8c22a{
11783
11877
  --radio-line-height:var(--bp-font-line-height-04);
11784
11878
  font-family:var(--bp-font-font-family), -apple-system, BlinkMacSystemFont, "San Francisco", "Segoe UI", Roboto, "Helvetica Neue", sans-serif;
@@ -1,8 +1,13 @@
1
- import { jsx } from 'react/jsx-runtime';
1
+ import { jsx, jsxs } from 'react/jsx-runtime';
2
2
  import { TabList as TabList$1 } from '@ariakit/react';
3
3
  import clsx from 'clsx';
4
- import { forwardRef } from 'react';
4
+ import { forwardRef, useRef } from 'react';
5
+ import '../../blueprint-configuration-context/blueprint-configuration-context.js';
6
+ import '../../blueprint-configuration-context/consts.js';
7
+ import { useBlueprintConfiguration } from '../../blueprint-configuration-context/useBlueprintConfiguration.js';
8
+ import { useForkRef } from '../../utils/useForkRef.js';
5
9
  import styles from './tabs.module.js';
10
+ import { useTabIndicatorStyle } from './use-tab-indicator.js';
6
11
  import { useTabs } from './use-tabs.js';
7
12
 
8
13
  const TabList = /*#__PURE__*/forwardRef(function TabList(props, ref) {
@@ -10,19 +15,40 @@ const TabList = /*#__PURE__*/forwardRef(function TabList(props, ref) {
10
15
  className,
11
16
  variant = 'default',
12
17
  containerClassname,
18
+ children,
13
19
  ...rest
14
20
  } = props;
15
21
  const tab = useTabs();
22
+ const listRef = useRef(null);
23
+ const {
24
+ componentsWithAnimationEnabled
25
+ } = useBlueprintConfiguration();
26
+ const isAnimationEnabled = componentsWithAnimationEnabled.includes('Tabs');
27
+ const selectedTabElement = tab?.useState(state => state.items.find(item => item.id === state.selectedId)?.element ?? null);
28
+ const indicatorStyle = useTabIndicatorStyle({
29
+ enabled: isAnimationEnabled,
30
+ listRef,
31
+ selectedTabElement
32
+ });
33
+ const listRefs = useForkRef(ref, listRef);
16
34
  if (!tab) {
17
35
  throw new Error('TabList must be wrapped in a Tabs component');
18
36
  }
19
37
  return jsx("div", {
20
38
  className: clsx(styles.tabsListContainer, containerClassname),
21
- children: jsx(TabList$1, {
39
+ children: jsxs(TabList$1, {
22
40
  ...rest,
23
- ref: ref,
41
+ ref: listRefs,
24
42
  className: clsx(variant === 'contentSwitcher' ? styles.contentSwitchTabList : styles.tabList, className),
25
- store: tab
43
+ "data-bp-animated": isAnimationEnabled ? 'true' : 'false',
44
+ store: tab,
45
+ children: [isAnimationEnabled && indicatorStyle ? jsx("div", {
46
+ "aria-hidden": "true",
47
+ className: styles.tabIndicator,
48
+ "data-bp-tab-indicator": "",
49
+ role: "presentation",
50
+ style: indicatorStyle
51
+ }) : null, children]
26
52
  })
27
53
  });
28
54
  });
@@ -1,4 +1,4 @@
1
1
  import '../../index.css';
2
- var styles = {"hiddenWidthSetter":"bp_tabs_module_hiddenWidthSetter--22ec8","contentSwitchTabList":"bp_tabs_module_contentSwitchTabList--22ec8","contentSwitchTab":"bp_tabs_module_contentSwitchTab--22ec8","tabsListContainer":"bp_tabs_module_tabsListContainer--22ec8","tabList":"bp_tabs_module_tabList--22ec8","tabSeparator":"bp_tabs_module_tabSeparator--22ec8","tab":"bp_tabs_module_tab--22ec8"};
2
+ var styles = {"hiddenWidthSetter":"bp_tabs_module_hiddenWidthSetter--13d72","contentSwitchTabList":"bp_tabs_module_contentSwitchTabList--13d72","contentSwitchTab":"bp_tabs_module_contentSwitchTab--13d72","tabIndicator":"bp_tabs_module_tabIndicator--13d72","tabsListContainer":"bp_tabs_module_tabsListContainer--13d72","tabList":"bp_tabs_module_tabList--13d72","tabSeparator":"bp_tabs_module_tabSeparator--13d72","tab":"bp_tabs_module_tab--13d72"};
3
3
 
4
4
  export { styles as default };
@@ -0,0 +1,17 @@
1
+ import { type CSSProperties, type RefObject } from 'react';
2
+ export type TabIndicatorStyle = Pick<CSSProperties, 'transform' | 'width'>;
3
+ /**
4
+ * Measures the selected tab and returns the sliding-indicator `transform` +
5
+ * `width`. `useContentSizeObserver` is a threshold/`data-large` helper, so
6
+ * ResizeObserver lives here: the list for container resize, the selected tab
7
+ * for label/size changes that do not change the list box.
8
+ *
9
+ * The indicator must be a child of the scrolling tab list (or subtract
10
+ * `scrollLeft`). `offsetLeft` is relative to that list and does not include
11
+ * scroll, so horizontal scroll stays correct without extra math.
12
+ */
13
+ export declare const useTabIndicatorStyle: ({ enabled, listRef, selectedTabElement, }: {
14
+ enabled: boolean;
15
+ listRef: RefObject<HTMLElement | null>;
16
+ selectedTabElement: HTMLElement | null | undefined;
17
+ }) => TabIndicatorStyle | undefined;
@@ -0,0 +1,62 @@
1
+ import { useState } from 'react';
2
+ import { useEnhancedEffect } from '../../utils/useEnhancedEffect.js';
3
+
4
+ /**
5
+ * Measures the selected tab and returns the sliding-indicator `transform` +
6
+ * `width`. `useContentSizeObserver` is a threshold/`data-large` helper, so
7
+ * ResizeObserver lives here: the list for container resize, the selected tab
8
+ * for label/size changes that do not change the list box.
9
+ *
10
+ * The indicator must be a child of the scrolling tab list (or subtract
11
+ * `scrollLeft`). `offsetLeft` is relative to that list and does not include
12
+ * scroll, so horizontal scroll stays correct without extra math.
13
+ */
14
+ const useTabIndicatorStyle = ({
15
+ enabled,
16
+ listRef,
17
+ selectedTabElement
18
+ }) => {
19
+ const [style, setStyle] = useState(undefined);
20
+ useEnhancedEffect(() => {
21
+ if (!enabled) {
22
+ setStyle(undefined);
23
+ return undefined;
24
+ }
25
+ const list = listRef.current;
26
+ const selectedTab = selectedTabElement ?? null;
27
+ const measure = () => {
28
+ if (!selectedTab) {
29
+ setStyle(undefined);
30
+ return;
31
+ }
32
+ const transform = `translateX(${selectedTab.offsetLeft}px)`;
33
+ const width = selectedTab.offsetWidth;
34
+ setStyle(previous => {
35
+ if (previous?.transform === transform && previous.width === width) {
36
+ return previous;
37
+ }
38
+ return {
39
+ transform,
40
+ width
41
+ };
42
+ });
43
+ };
44
+ measure();
45
+ if (typeof ResizeObserver === 'undefined') {
46
+ return undefined;
47
+ }
48
+ const observer = new ResizeObserver(measure);
49
+ if (list) {
50
+ observer.observe(list);
51
+ }
52
+ if (selectedTab) {
53
+ observer.observe(selectedTab);
54
+ }
55
+ return () => {
56
+ observer.disconnect();
57
+ };
58
+ }, [enabled, listRef, selectedTabElement]);
59
+ return style;
60
+ };
61
+
62
+ export { useTabIndicatorStyle };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@box/blueprint-web",
3
- "version": "18.4.0",
3
+ "version": "18.5.0",
4
4
  "type": "module",
5
5
  "license": "SEE LICENSE IN LICENSE",
6
6
  "publishConfig": {
@@ -55,7 +55,7 @@
55
55
  "dependencies": {
56
56
  "@ariakit/react": "0.4.21",
57
57
  "@ariakit/react-core": "0.4.21",
58
- "@box/blueprint-web-assets": "^5.12.3",
58
+ "@box/blueprint-web-assets": "^5.12.4",
59
59
  "@internationalized/date": "^3.12.0",
60
60
  "@radix-ui/react-accordion": "1.1.2",
61
61
  "@radix-ui/react-checkbox": "1.0.4",
@@ -86,7 +86,7 @@
86
86
  "devDependencies": {
87
87
  "@box/box-test-client": "^3.2.7",
88
88
  "@box/playwright-utils": "^2.8.5",
89
- "@box/storybook-utils": "^1.4.15",
89
+ "@box/storybook-utils": "^1.4.16",
90
90
  "@figma/code-connect": "1.4.4",
91
91
  "@playwright/test": "1.46.1",
92
92
  "@types/js-yaml": "^4.0.9",