@carbon/ibm-products 2.43.2-canary.53 → 2.43.2-canary.54

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.
Files changed (37) hide show
  1. package/es/components/Coachmark/Coachmark.js +12 -7
  2. package/es/components/CoachmarkFixed/CoachmarkFixed.js +13 -11
  3. package/es/components/CoachmarkStack/CoachmarkStack.js +7 -3
  4. package/es/components/CoachmarkStack/CoachmarkStackHome.js +8 -4
  5. package/es/components/CreateFullPage/CreateFullPage.js +2 -2
  6. package/es/components/Datagrid/Datagrid/DatagridSelectAll.js +2 -1
  7. package/es/components/Datagrid/Datagrid/DatagridSelectAllWithToggle.js +3 -2
  8. package/es/components/Datagrid/useSelectRows.js +2 -1
  9. package/es/components/Nav/NavItem.js +12 -3
  10. package/es/components/OptionsTile/OptionsTile.js +4 -5
  11. package/es/components/SidePanel/SidePanel.js +17 -20
  12. package/es/components/SidePanel/motion/variants.d.ts +4 -6
  13. package/es/components/SidePanel/motion/variants.js +10 -11
  14. package/es/components/Tearsheet/TearsheetShell.js +3 -1
  15. package/es/components/WebTerminal/WebTerminal.js +10 -12
  16. package/es/global/js/hooks/usePrefersReducedMotion.js +14 -8
  17. package/lib/components/Coachmark/Coachmark.js +12 -7
  18. package/lib/components/CoachmarkFixed/CoachmarkFixed.js +13 -11
  19. package/lib/components/CoachmarkStack/CoachmarkStack.js +7 -3
  20. package/lib/components/CoachmarkStack/CoachmarkStackHome.js +8 -4
  21. package/lib/components/CreateFullPage/CreateFullPage.js +2 -2
  22. package/lib/components/Datagrid/Datagrid/DatagridSelectAll.js +2 -1
  23. package/lib/components/Datagrid/Datagrid/DatagridSelectAllWithToggle.js +3 -2
  24. package/lib/components/Datagrid/useSelectRows.js +2 -1
  25. package/lib/components/Nav/NavItem.js +10 -1
  26. package/lib/components/OptionsTile/OptionsTile.js +4 -5
  27. package/lib/components/SidePanel/SidePanel.js +16 -19
  28. package/lib/components/SidePanel/motion/variants.d.ts +4 -6
  29. package/lib/components/SidePanel/motion/variants.js +10 -11
  30. package/lib/components/Tearsheet/TearsheetShell.js +3 -1
  31. package/lib/components/WebTerminal/WebTerminal.js +10 -12
  32. package/lib/global/js/hooks/usePrefersReducedMotion.js +13 -7
  33. package/package.json +2 -2
  34. package/es/global/js/utils/window.d.ts +0 -2
  35. package/es/global/js/utils/window.js +0 -12
  36. package/lib/global/js/utils/window.d.ts +0 -2
  37. package/lib/global/js/utils/window.js +0 -16
@@ -27,35 +27,34 @@ var overlayVariants = {
27
27
  }
28
28
  };
29
29
  var panelVariants = {
30
- visible: function visible(_ref) {
31
- var shouldReduceMotion = _ref.shouldReduceMotion;
30
+ visible: function visible() {
32
31
  return {
33
32
  x: 0,
34
33
  transition: {
35
34
  duration: motionConstants.DURATIONS.moderate02,
36
35
  ease: motionConstants.EASINGS.productive.standard
37
36
  },
38
- opacity: shouldReduceMotion && 1
37
+ opacity: 1
39
38
  };
40
39
  },
41
- hidden: function hidden(_ref2) {
42
- var placement = _ref2.placement,
43
- shouldReduceMotion = _ref2.shouldReduceMotion;
40
+ hidden: function hidden(_ref) {
41
+ var placement = _ref.placement,
42
+ shouldReduceMotion = _ref.shouldReduceMotion;
44
43
  return {
45
44
  x: placement === 'right' ? shouldReduceMotion ? 0 : '100%' : shouldReduceMotion ? 0 : -320,
46
- opacity: shouldReduceMotion && 0
45
+ opacity: shouldReduceMotion ? 0 : 1
47
46
  };
48
47
  },
49
- exit: function exit(_ref3) {
50
- var placement = _ref3.placement,
51
- shouldReduceMotion = _ref3.shouldReduceMotion;
48
+ exit: function exit(_ref2) {
49
+ var placement = _ref2.placement,
50
+ shouldReduceMotion = _ref2.shouldReduceMotion;
52
51
  return {
53
52
  x: placement === 'right' ? shouldReduceMotion ? 0 : '100%' : shouldReduceMotion ? 0 : -320,
54
53
  transition: {
55
54
  duration: motionConstants.DURATIONS.moderate01,
56
55
  ease: motionConstants.EASINGS.productive.exit
57
56
  },
58
- opacity: shouldReduceMotion && 0
57
+ opacity: shouldReduceMotion ? 0 : 1
59
58
  };
60
59
  }
61
60
  };
@@ -322,7 +322,9 @@ var TearsheetShell = /*#__PURE__*/React__default["default"].forwardRef(function
322
322
  // The display name of the component, used by React. Note that displayName
323
323
  // is used in preference to relying on function.name.
324
324
  TearsheetShell.displayName = componentName;
325
- var portalType = typeof Element === 'undefined' ? index["default"].object : index["default"].instanceOf(Element);
325
+ var portalType = typeof Element === 'undefined' ? index["default"].object
326
+ // eslint-disable-next-line ssr-friendly/no-dom-globals-in-module-scope
327
+ : index["default"].instanceOf(Element);
326
328
  var deprecatedProps = {
327
329
  /**
328
330
  * **Deprecated**
@@ -19,6 +19,7 @@ var react = require('@carbon/react');
19
19
  var carbonMotion = require('@carbon/motion');
20
20
  var index = require('./hooks/index.js');
21
21
  var devtools = require('../../global/js/utils/devtools.js');
22
+ var usePrefersReducedMotion = require('../../global/js/hooks/usePrefersReducedMotion.js');
22
23
 
23
24
  function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
24
25
 
@@ -65,10 +66,7 @@ exports.WebTerminal = /*#__PURE__*/React__default["default"].forwardRef(function
65
66
  _useState2 = _rollupPluginBabelHelpers.slicedToArray(_useState, 2),
66
67
  shouldRender = _useState2[0],
67
68
  setRender = _useState2[1];
68
- var _ref2 = window && window.matchMedia ? window.matchMedia('(prefers-reduced-motion: reduce)') : {
69
- matches: true
70
- },
71
- prefersReducedMotion = _ref2.matches;
69
+ var shouldReduceMotion = usePrefersReducedMotion["default"]();
72
70
  var webTerminalAnimationName = "".concat(open ? 'web-terminal-entrance' : 'web-terminal-exit forwards', " ").concat(carbonMotion.moderate02);
73
71
  var showDocumentationLinks = React.useMemo(function () {
74
72
  return documentationLinks.length > 0;
@@ -101,7 +99,7 @@ exports.WebTerminal = /*#__PURE__*/React__default["default"].forwardRef(function
101
99
  If the user prefers reduced motion, we have to manually set render to false
102
100
  because onAnimationEnd will never be called.
103
101
  */
104
- if (prefersReducedMotion) {
102
+ if (shouldReduceMotion) {
105
103
  setRender(false);
106
104
  }
107
105
  closeWebTerminal === null || closeWebTerminal === void 0 || closeWebTerminal();
@@ -110,7 +108,7 @@ exports.WebTerminal = /*#__PURE__*/React__default["default"].forwardRef(function
110
108
  ref: ref,
111
109
  className: cx__default["default"]([blockClass, className, _rollupPluginBabelHelpers.defineProperty(_rollupPluginBabelHelpers.defineProperty({}, "".concat(blockClass, "--open"), open), "".concat(blockClass, "--closed"), !open)]),
112
110
  style: {
113
- animation: !prefersReducedMotion ? webTerminalAnimationName : ''
111
+ animation: !shouldReduceMotion ? webTerminalAnimationName : ''
114
112
  },
115
113
  onAnimationEnd: onAnimationEnd
116
114
  }), /*#__PURE__*/React__default["default"].createElement("header", {
@@ -128,15 +126,15 @@ exports.WebTerminal = /*#__PURE__*/React__default["default"].forwardRef(function
128
126
  "aria-label": documentationLinksIconDescription,
129
127
  menuOptionsClass: "".concat(blockClass, "__documentation-overflow"),
130
128
  size: "lg"
131
- }, documentationLinks.map(function (_ref4, i) {
132
- var rest = _rollupPluginBabelHelpers["extends"]({}, (_rollupPluginBabelHelpers.objectDestructuringEmpty(_ref4), _ref4));
129
+ }, documentationLinks.map(function (_ref3, i) {
130
+ var rest = _rollupPluginBabelHelpers["extends"]({}, (_rollupPluginBabelHelpers.objectDestructuringEmpty(_ref3), _ref3));
133
131
  return /*#__PURE__*/React__default["default"].createElement(react.OverflowMenuItem, _rollupPluginBabelHelpers["extends"]({
134
132
  key: i
135
133
  }, rest));
136
- })), actions.map(function (_ref5) {
137
- var renderIcon = _ref5.renderIcon,
138
- onClick = _ref5.onClick,
139
- iconDescription = _ref5.iconDescription;
134
+ })), actions.map(function (_ref4) {
135
+ var renderIcon = _ref4.renderIcon,
136
+ onClick = _ref4.onClick,
137
+ iconDescription = _ref4.iconDescription;
140
138
  return /*#__PURE__*/React__default["default"].createElement(react.Button, {
141
139
  key: iconDescription,
142
140
  hasIconOnly: true,
@@ -11,19 +11,25 @@ Object.defineProperty(exports, '__esModule', { value: true });
11
11
 
12
12
  var _rollupPluginBabelHelpers = require('../../../_virtual/_rollupPluginBabelHelpers.js');
13
13
  var React = require('react');
14
- var window$1 = require('../utils/window.js');
14
+ var useIsomorphicEffect = require('./useIsomorphicEffect.js');
15
15
 
16
16
  var usePrefersReducedMotion = function usePrefersReducedMotion() {
17
17
  var _useState = React.useState(false),
18
18
  _useState2 = _rollupPluginBabelHelpers.slicedToArray(_useState, 2),
19
19
  prefersReducedMotion = _useState2[0],
20
20
  setPrefersReducedMotion = _useState2[1];
21
- React.useEffect(function () {
22
- if (window$1.hasDocument()) {
23
- var _window$matchMedia = window.matchMedia('(prefers-reduced-motion: reduce)'),
24
- matches = _window$matchMedia.matches;
25
- setPrefersReducedMotion(matches);
26
- }
21
+ useIsomorphicEffect.useIsomorphicEffect(function () {
22
+ var mediaQueryList = window.matchMedia('(prefers-reduced-motion: no-preference)');
23
+ var _window$matchMedia = window.matchMedia('(prefers-reduced-motion: no-preference)'),
24
+ matches = _window$matchMedia.matches;
25
+ setPrefersReducedMotion(!matches);
26
+ var listener = function listener(event) {
27
+ setPrefersReducedMotion(!event.matches);
28
+ };
29
+ mediaQueryList.addEventListener('change', listener);
30
+ return function () {
31
+ mediaQueryList.removeEventListener('change', listener);
32
+ };
27
33
  }, []);
28
34
  return prefersReducedMotion;
29
35
  };
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@carbon/ibm-products",
3
3
  "description": "Carbon for IBM Products",
4
- "version": "2.43.2-canary.53+c833d06ba",
4
+ "version": "2.43.2-canary.54+0517cdbdd",
5
5
  "license": "Apache-2.0",
6
6
  "main": "lib/index.js",
7
7
  "module": "es/index.js",
@@ -120,5 +120,5 @@
120
120
  "react": "^16.8.6 || ^17.0.1 || ^18.2.0",
121
121
  "react-dom": "^16.8.6 || ^17.0.1 || ^18.2.0"
122
122
  },
123
- "gitHead": "c833d06ba30ebdb02250058c28295add4bada977"
123
+ "gitHead": "0517cdbdd4e177bfb4a5cc7dea2c535aead0633d"
124
124
  }
@@ -1,2 +0,0 @@
1
- export function hasDocument(): boolean;
2
- export function hasWindow(): boolean;
@@ -1,12 +0,0 @@
1
- /**
2
- * Copyright IBM Corp. 2020, 2024
3
- *
4
- * This source code is licensed under the Apache-2.0 license found in the
5
- * LICENSE file in the root directory of this source tree.
6
- */
7
-
8
- var hasDocument = function hasDocument() {
9
- return typeof document !== 'undefined';
10
- };
11
-
12
- export { hasDocument };
@@ -1,2 +0,0 @@
1
- export function hasDocument(): boolean;
2
- export function hasWindow(): boolean;
@@ -1,16 +0,0 @@
1
- /**
2
- * Copyright IBM Corp. 2020, 2024
3
- *
4
- * This source code is licensed under the Apache-2.0 license found in the
5
- * LICENSE file in the root directory of this source tree.
6
- */
7
-
8
- 'use strict';
9
-
10
- Object.defineProperty(exports, '__esModule', { value: true });
11
-
12
- var hasDocument = function hasDocument() {
13
- return typeof document !== 'undefined';
14
- };
15
-
16
- exports.hasDocument = hasDocument;