@box/blueprint-web 9.0.2 → 9.1.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/lib-esm/index.css CHANGED
@@ -6797,7 +6797,7 @@ table.bp_inline_table_module_inlineTable--b023b tr:not(:last-child) td{
6797
6797
  --z-index-card-tooltip:2147483647;
6798
6798
  }
6799
6799
 
6800
- .bp_toolbar_module_toolbarRoot--dcc11{
6800
+ .bp_toolbar_module_toolbarRoot--b843f{
6801
6801
  align-items:center;
6802
6802
  background:var(--surface-surface);
6803
6803
  border:var(--border-1) solid var(--border-card-border);
@@ -6808,19 +6808,19 @@ table.bp_inline_table_module_inlineTable--b023b tr:not(:last-child) td{
6808
6808
  padding:calc(var(--space-1) - var(--border-1));
6809
6809
  }
6810
6810
 
6811
- .bp_toolbar_module_separator--dcc11{
6811
+ .bp_toolbar_module_separator--b843f{
6812
6812
  background-color:var(--border-divider-border);
6813
6813
  border-radius:var(--radius-2);
6814
6814
  height:var(--size-6);
6815
6815
  width:1px;
6816
6816
  }
6817
6817
 
6818
- .bp_toolbar_module_toggleGroup--dcc11{
6818
+ .bp_toolbar_module_toggleGroup--b843f{
6819
6819
  display:flex;
6820
6820
  gap:var(--space-1);
6821
6821
  }
6822
6822
 
6823
- .bp_toolbar_module_toolbarItem--dcc11{
6823
+ .bp_toolbar_module_toolbarItem--b843f{
6824
6824
  --toolbar-item-hover-opacity:0.3;
6825
6825
  align-items:center;
6826
6826
  background:var(--toolbar-button-color, var(--surface-toggle-surface));
@@ -6838,48 +6838,84 @@ table.bp_inline_table_module_inlineTable--b023b tr:not(:last-child) td{
6838
6838
  -webkit-user-select:none;
6839
6839
  user-select:none;
6840
6840
  }
6841
- .bp_toolbar_module_toolbarItem--dcc11[data-disabled]{
6841
+ .bp_toolbar_module_toolbarItem--b843f[data-disabled]{
6842
6842
  background:var(--surface-toggle-surface);
6843
6843
  opacity:var(--toolbar-item-hover-opacity);
6844
6844
  pointer-events:none;
6845
6845
  }
6846
- .bp_toolbar_module_toolbarItem--dcc11:not([data-disabled]):focus-visible{
6846
+ .bp_toolbar_module_toolbarItem--b843f:not([data-disabled]):focus-visible{
6847
6847
  box-shadow:0 0 0 var(--border-1, 1px) var(--background-background), 0 0 0 var(--border-3) #2486fc;
6848
6848
  }
6849
- .bp_toolbar_module_toolbarItem--dcc11:not([data-disabled]):hover{
6849
+ .bp_toolbar_module_toolbarItem--b843f:not([data-disabled]):hover{
6850
6850
  background:var(--toolbar-button-color, var(--surface-toggle-surface-hover));
6851
6851
  border:var(--border-1) solid var(--toolbar-button-color, var(--surface-toggle-surface-hover));
6852
6852
  }
6853
6853
 
6854
- .bp_toolbar_module_toolbarToggle--dcc11[data-state=on]{
6854
+ .bp_toolbar_module_toolbarToggle--b843f[data-state=on]{
6855
6855
  background:var(--surface-toggle-surface-pressed);
6856
6856
  }
6857
- .bp_toolbar_module_toolbarToggle--dcc11[data-state=on] svg *{
6857
+ .bp_toolbar_module_toolbarToggle--b843f[data-state=on] svg *{
6858
6858
  fill:var(--icon-icon-on-dark);
6859
6859
  }
6860
- .bp_toolbar_module_toolbarToggle--dcc11[data-state=on]:not([data-disabled]):hover{
6860
+ .bp_toolbar_module_toolbarToggle--b843f[data-state=on]:not([data-disabled]):hover{
6861
6861
  background:var(--surface-toggle-surface-on-hover);
6862
6862
  border:var(--border-1) solid var(--surface-toggle-surface-on-hover);
6863
6863
  }
6864
6864
 
6865
- .bp_toolbar_module_dropdownIndicator--dcc11.bp_toolbar_module_invertCaret--dcc11{
6865
+ .bp_toolbar_module_dropdownIndicator--b843f.bp_toolbar_module_invertCaret--b843f{
6866
6866
  transform:rotate(.5turn);
6867
6867
  }
6868
6868
 
6869
- .bp_toolbar_module_triggerButtonSelectedWithColor--dcc11{
6869
+ .bp_toolbar_module_triggerButtonSelectedWithColor--b843f{
6870
6870
  --trigger-button-hover-opacity:0.7;
6871
6871
  }
6872
- .bp_toolbar_module_triggerButtonSelectedWithColor--dcc11[data-state=on] .bp_toolbar_module_dropdownIndicator--dcc11 path{
6872
+ .bp_toolbar_module_triggerButtonSelectedWithColor--b843f[data-state=on] .bp_toolbar_module_dropdownIndicator--b843f path{
6873
6873
  fill:var(--icon-icon-on-light);
6874
6874
  }
6875
- .bp_toolbar_module_triggerButtonSelectedWithColor--dcc11[data-state=on]:hover{
6875
+ .bp_toolbar_module_triggerButtonSelectedWithColor--b843f[data-state=on]:hover{
6876
6876
  opacity:var(--trigger-button-hover-opacity);
6877
6877
  }
6878
6878
 
6879
- .bp_toolbar_module_toolbarIcon--dcc11{
6879
+ .bp_toolbar_module_toolbarIcon--b843f{
6880
6880
  align-items:center;
6881
6881
  display:flex;
6882
6882
  height:var(--size-5);
6883
6883
  justify-content:center;
6884
6884
  width:var(--size-5);
6885
+ }
6886
+
6887
+ .bp_toolbar_module_toolbarTextToggleItem--b843f{
6888
+ border:var(--border-1) solid var(--border-toggletext-border-off);
6889
+ color:var(--text-text-on-light);
6890
+ font-family:Lato, -apple-system, BlinkMacSystemFont, "San Francisco", "Segoe UI", Roboto, "Helvetica Neue", sans-serif;
6891
+ font-size:.875rem;
6892
+ font-weight:400;
6893
+ letter-spacing:.01875rem;
6894
+ line-height:1.25rem;
6895
+ padding-inline:var(--space-2);
6896
+ text-decoration:none;
6897
+ text-indent:unset;
6898
+ text-transform:none;
6899
+ white-space:nowrap;
6900
+ }
6901
+ .bp_toolbar_module_toolbarTextToggleItem--b843f:hover{
6902
+ background:var(--surface-toggle-surface-off-hover);
6903
+ border-color:var(--border-toggletext-border-off-hover);
6904
+ }
6905
+ .bp_toolbar_module_toolbarTextToggleItem--b843f:active{
6906
+ background:var(--surface-toggle-surface-off-pressed);
6907
+ border-color:var(--border-toggletext-border-off-pressed);
6908
+ }
6909
+ .bp_toolbar_module_toolbarTextToggleItem--b843f[aria-checked=true]{
6910
+ background:var(--surface-toggletext-surface-on);
6911
+ border:var(--border-1) solid var(--border-toggletext-border-on);
6912
+ color:var(--text-toggletext-text);
6913
+ }
6914
+ .bp_toolbar_module_toolbarTextToggleItem--b843f[aria-checked=true]:hover{
6915
+ background:var(--surface-toggletext-surface-on-hover);
6916
+ border-color:var(--border-toggletext-border-on-hover);
6917
+ }
6918
+ .bp_toolbar_module_toolbarTextToggleItem--b843f[aria-checked=true]:active{
6919
+ background:var(--surface-toggletext-surface-on-pressed);
6920
+ border-color:var(--border-toggletext-border-on-pressed);
6885
6921
  }
@@ -1,4 +1,4 @@
1
- export { type ToolbarButtonProps, type ToolbarIconProps, type ToolbarProps, type ToolbarSeparatorProps, type ToolbarToggleGroupProps, type ToolbarToggleItemProps, type ToolbarTriggerButtonProps, } from './types';
1
+ export { type ToolbarButtonProps, type ToolbarIconProps, type ToolbarProps, type ToolbarSeparatorProps, type ToolbarToggleGroupProps, type ToolbarToggleItemProps, type ToolbarTriggerButtonProps, type ToolbarTextToggleItemProps, } from './types';
2
2
  /**
3
3
  * A container for grouping a set of controls, such as buttons, toggle groups or dropdowns.
4
4
  * @example
@@ -28,6 +28,10 @@ export declare const Toolbar: {
28
28
  * Two-state button that can be toggled on or off.
29
29
  */
30
30
  ToggleItem: import("react").ForwardRefExoticComponent<import("./types").ToolbarToggleItemProps & import("react").RefAttributes<HTMLButtonElement>>;
31
+ /**
32
+ * Two-state text button that can be toggled on or off.
33
+ */
34
+ TextToggleItem: import("react").ForwardRefExoticComponent<import("./types").ToolbarTextToggleItemProps & import("react").RefAttributes<HTMLButtonElement>>;
31
35
  /**
32
36
  * Parent for a set of `Toolbar.ToggleItem` subcomponents.
33
37
  */
@@ -6,6 +6,7 @@ import { ToolbarSeparator } from './toolbar-separator.js';
6
6
  import { ToolbarToggleGroup } from './toolbar-toggle-group.js';
7
7
  import { ToolbarToggleItem } from './toolbar-toggle-item.js';
8
8
  import { ToolbarTriggerButton } from './toolbar-trigger-button.js';
9
+ import { ToolbarTextToggleItem } from './toolbar-text-toggle-item.js';
9
10
 
10
11
  /**
11
12
  * A container for grouping a set of controls, such as buttons, toggle groups or dropdowns.
@@ -36,6 +37,10 @@ const Toolbar = {
36
37
  * Two-state button that can be toggled on or off.
37
38
  */
38
39
  ToggleItem: ToolbarToggleItem,
40
+ /**
41
+ * Two-state text button that can be toggled on or off.
42
+ */
43
+ TextToggleItem: ToolbarTextToggleItem,
39
44
  /**
40
45
  * Parent for a set of `Toolbar.ToggleItem` subcomponents.
41
46
  */
@@ -0,0 +1,2 @@
1
+ import { type ToolbarTextToggleItemProps } from './types';
2
+ export declare const ToolbarTextToggleItem: import("react").ForwardRefExoticComponent<ToolbarTextToggleItemProps & import("react").RefAttributes<HTMLButtonElement>>;
@@ -0,0 +1,20 @@
1
+ import { jsx } from 'react/jsx-runtime';
2
+ import * as ToolbarPrimitive from '@radix-ui/react-toolbar';
3
+ import clsx from 'clsx';
4
+ import { forwardRef } from 'react';
5
+ import styles from './toolbar.module.js';
6
+
7
+ const ToolbarTextToggleItem = /*#__PURE__*/forwardRef((props, forwardedRef) => {
8
+ const {
9
+ children,
10
+ ...rest
11
+ } = props;
12
+ return jsx(ToolbarPrimitive.ToggleItem, {
13
+ ...rest,
14
+ ref: forwardedRef,
15
+ className: clsx(styles.toolbarItem, styles.toolbarTextToggleItem),
16
+ children: children
17
+ });
18
+ });
19
+
20
+ export { ToolbarTextToggleItem };
@@ -1,4 +1,4 @@
1
1
  import '../index.css';
2
- var styles = {"toolbarRoot":"bp_toolbar_module_toolbarRoot--dcc11","separator":"bp_toolbar_module_separator--dcc11","toggleGroup":"bp_toolbar_module_toggleGroup--dcc11","toolbarItem":"bp_toolbar_module_toolbarItem--dcc11","toolbarToggle":"bp_toolbar_module_toolbarToggle--dcc11","dropdownIndicator":"bp_toolbar_module_dropdownIndicator--dcc11","invertCaret":"bp_toolbar_module_invertCaret--dcc11","triggerButtonSelectedWithColor":"bp_toolbar_module_triggerButtonSelectedWithColor--dcc11","toolbarIcon":"bp_toolbar_module_toolbarIcon--dcc11"};
2
+ var styles = {"toolbarRoot":"bp_toolbar_module_toolbarRoot--b843f","separator":"bp_toolbar_module_separator--b843f","toggleGroup":"bp_toolbar_module_toggleGroup--b843f","toolbarItem":"bp_toolbar_module_toolbarItem--b843f","toolbarToggle":"bp_toolbar_module_toolbarToggle--b843f","dropdownIndicator":"bp_toolbar_module_dropdownIndicator--b843f","invertCaret":"bp_toolbar_module_invertCaret--b843f","triggerButtonSelectedWithColor":"bp_toolbar_module_triggerButtonSelectedWithColor--b843f","toolbarIcon":"bp_toolbar_module_toolbarIcon--b843f","toolbarTextToggleItem":"bp_toolbar_module_toolbarTextToggleItem--b843f"};
3
3
 
4
4
  export { styles as default };
@@ -22,6 +22,10 @@ export interface ToolbarToggleItemProps extends ToolbarPrimitiveToggleItemProps
22
22
  icon: FunctionComponent<PropsWithChildren<SVGProps<SVGSVGElement>>>;
23
23
  'aria-label': NonNullable<HTMLAttributes<HTMLButtonElement>['aria-label']>;
24
24
  }
25
+ export interface ToolbarTextToggleItemProps extends ToolbarPrimitiveToggleItemProps {
26
+ children: string;
27
+ 'aria-label': NonNullable<HTMLAttributes<HTMLButtonElement>['aria-label']>;
28
+ }
25
29
  export interface ToolbarIconProps {
26
30
  /** Color of rendered icon. */
27
31
  color?: React.SVGProps<SVGSVGElement>['color'];
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@box/blueprint-web",
3
- "version": "9.0.2",
3
+ "version": "9.1.0",
4
4
  "type": "module",
5
5
  "license": "SEE LICENSE IN LICENSE",
6
6
  "publishConfig": {
@@ -63,7 +63,7 @@
63
63
  "react-stately": "^3.31.1",
64
64
  "tsx": "^4.16.5"
65
65
  },
66
- "gitHead": "3336acc51ee37751c34b425b05337b5effd16b72",
66
+ "gitHead": "9813a49e438da2e6375398b9c80065816680c67e",
67
67
  "module": "lib-esm/index.js",
68
68
  "main": "lib-esm/index.js",
69
69
  "exports": {