@box/blueprint-web 9.0.2 → 9.1.1
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 +51 -15
- package/lib-esm/toolbar/index.d.ts +5 -1
- package/lib-esm/toolbar/index.js +5 -0
- package/lib-esm/toolbar/toolbar-text-toggle-item.d.ts +2 -0
- package/lib-esm/toolbar/toolbar-text-toggle-item.js +20 -0
- package/lib-esm/toolbar/toolbar.module.js +1 -1
- package/lib-esm/toolbar/types.d.ts +4 -0
- package/package.json +2 -2
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--
|
|
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--
|
|
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--
|
|
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--
|
|
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--
|
|
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--
|
|
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--
|
|
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--
|
|
6854
|
+
.bp_toolbar_module_toolbarToggle--b843f[data-state=on]{
|
|
6855
6855
|
background:var(--surface-toggle-surface-pressed);
|
|
6856
6856
|
}
|
|
6857
|
-
.bp_toolbar_module_toolbarToggle--
|
|
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--
|
|
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--
|
|
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--
|
|
6869
|
+
.bp_toolbar_module_triggerButtonSelectedWithColor--b843f{
|
|
6870
6870
|
--trigger-button-hover-opacity:0.7;
|
|
6871
6871
|
}
|
|
6872
|
-
.bp_toolbar_module_triggerButtonSelectedWithColor--
|
|
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--
|
|
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--
|
|
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
|
*/
|
package/lib-esm/toolbar/index.js
CHANGED
|
@@ -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,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--
|
|
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.
|
|
3
|
+
"version": "9.1.1",
|
|
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": "
|
|
66
|
+
"gitHead": "12459b549bab127f965a7a68620ab58a8d171862",
|
|
67
67
|
"module": "lib-esm/index.js",
|
|
68
68
|
"main": "lib-esm/index.js",
|
|
69
69
|
"exports": {
|