@automattic/vip-design-system 2.15.7 → 2.15.8

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.
@@ -1,3 +1,4 @@
1
+ /* eslint-disable no-console */
1
2
  /**
2
3
  * External dependencies
3
4
  */
@@ -55,7 +56,9 @@ export const ComplexOptions = () => {
55
56
  <Dropdown.Root trigger={ <Button>See options</Button> }>
56
57
  <Dropdown.Item>New Tab</Dropdown.Item>
57
58
  <Dropdown.Item>New Window</Dropdown.Item>
58
- <Dropdown.Item disabled>New Private Window</Dropdown.Item>
59
+ <Dropdown.Item disabled onSelect={ () => console.log( 'disabled' ) }>
60
+ New Private Window
61
+ </Dropdown.Item>
59
62
  <Dropdown.Sub>
60
63
  <Dropdown.SubTrigger>
61
64
  More Tools
@@ -1,7 +1,7 @@
1
1
  var _excluded = ["className"],
2
2
  _excluded2 = ["className"],
3
3
  _excluded3 = ["className"],
4
- _excluded4 = ["className"];
4
+ _excluded4 = ["className", "disabled"];
5
5
  function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
6
6
  function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
7
7
  /** @jsxImportSource theme-ui */
@@ -31,7 +31,8 @@ export var styles = {
31
31
  },
32
32
  '&[data-disabled]': {
33
33
  color: 'muted',
34
- pointerEvents: 'none'
34
+ pointerEvents: 'auto',
35
+ cursor: 'not-allowed'
35
36
  },
36
37
  '&[data-highlighted]': {
37
38
  backgroundColor: 'hover',
@@ -70,15 +71,20 @@ export var DropdownRadioItem = /*#__PURE__*/React.forwardRef(function (_ref3, fo
70
71
  DropdownRadioItem.displayName = 'DropdownRadioItem';
71
72
  export var DropdownSubTrigger = /*#__PURE__*/React.forwardRef(function (_ref4, forwardRef) {
72
73
  var className = _ref4.className,
74
+ disabled = _ref4.disabled,
73
75
  props = _objectWithoutPropertiesLoose(_ref4, _excluded4);
74
76
  return _jsx(DropdownMenuPrimitive.SubTrigger, _extends({
75
77
  className: classNames('vip-dropdown-sub-trigger', className),
78
+ disabled: disabled,
76
79
  ref: forwardRef,
77
80
  sx: _extends({}, styles, {
78
81
  '&[data-state="open"]': {
79
82
  background: 'highlight',
80
83
  color: 'primary'
81
84
  }
85
+ }, disabled && {
86
+ cursor: 'not-allowed',
87
+ color: 'muted'
82
88
  })
83
89
  }, props));
84
90
  });
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@automattic/vip-design-system",
3
- "version": "2.15.7",
3
+ "version": "2.15.8",
4
4
  "main": "build/system/index.js",
5
5
  "scripts": {
6
6
  "build-storybook": "storybook build",
@@ -1,3 +1,4 @@
1
+ /* eslint-disable no-console */
1
2
  /**
2
3
  * External dependencies
3
4
  */
@@ -55,7 +56,9 @@ export const ComplexOptions = () => {
55
56
  <Dropdown.Root trigger={ <Button>See options</Button> }>
56
57
  <Dropdown.Item>New Tab</Dropdown.Item>
57
58
  <Dropdown.Item>New Window</Dropdown.Item>
58
- <Dropdown.Item disabled>New Private Window</Dropdown.Item>
59
+ <Dropdown.Item disabled onSelect={ () => console.log( 'disabled' ) }>
60
+ New Private Window
61
+ </Dropdown.Item>
59
62
  <Dropdown.Sub>
60
63
  <Dropdown.SubTrigger>
61
64
  More Tools
@@ -43,7 +43,8 @@ export const styles: ThemeUIStyleObject = {
43
43
  },
44
44
  '&[data-disabled]': {
45
45
  color: 'muted',
46
- pointerEvents: 'none',
46
+ pointerEvents: 'auto',
47
+ cursor: 'not-allowed',
47
48
  },
48
49
  '&[data-highlighted]': {
49
50
  backgroundColor: 'hover',
@@ -91,9 +92,10 @@ export const DropdownRadioItem = React.forwardRef< HTMLDivElement, DropdownRadio
91
92
  DropdownRadioItem.displayName = 'DropdownRadioItem';
92
93
 
93
94
  export const DropdownSubTrigger = React.forwardRef< HTMLDivElement, DropdownSubTriggerItemProps >(
94
- ( { className, ...props }, forwardRef ) => (
95
+ ( { className, disabled, ...props }, forwardRef ) => (
95
96
  <DropdownMenuPrimitive.SubTrigger
96
97
  className={ classNames( 'vip-dropdown-sub-trigger', className ) }
98
+ disabled={ disabled }
97
99
  ref={ forwardRef }
98
100
  sx={ {
99
101
  ...styles,
@@ -103,6 +105,10 @@ export const DropdownSubTrigger = React.forwardRef< HTMLDivElement, DropdownSubT
103
105
  color: 'primary',
104
106
  },
105
107
  },
108
+ ...( disabled && {
109
+ cursor: 'not-allowed',
110
+ color: 'muted',
111
+ } ),
106
112
  } }
107
113
  { ...props }
108
114
  />