carbon-react 102.20.1 → 102.22.2

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 (28) hide show
  1. package/README.md +1 -1
  2. package/lib/__internal__/popover/popover.component.js +2 -6
  3. package/lib/components/heading/heading.style.d.ts +1 -2
  4. package/lib/components/hr/hr.component.d.ts +8 -12
  5. package/lib/components/hr/hr.component.js +677 -32
  6. package/lib/components/hr/hr.style.d.ts +2 -1
  7. package/lib/components/hr/index.d.ts +1 -1
  8. package/lib/components/loader/loader.component.d.ts +18 -14
  9. package/lib/components/loader/loader.component.js +10 -2
  10. package/lib/components/loader/loader.d.ts +2 -0
  11. package/lib/components/multi-action-button/multi-action-button.style.js +12 -16
  12. package/lib/components/navigation-bar/index.d.ts +1 -2
  13. package/lib/components/navigation-bar/navigation-bar.component.d.ts +17 -12
  14. package/lib/components/navigation-bar/navigation-bar.component.js +5403 -33
  15. package/lib/components/navigation-bar/navigation-bar.style.d.ts +10 -1
  16. package/lib/components/portal/portal.js +3 -6
  17. package/lib/components/split-button/split-button-children.style.js +7 -7
  18. package/lib/components/split-button/split-button-toggle.style.js +16 -7
  19. package/lib/components/split-button/split-button.style.js +1 -3
  20. package/lib/components/tooltip/tooltip.component.js +3 -7
  21. package/lib/hooks/__internal__/useIsAboveBreakpoint/index.d.ts +1 -1
  22. package/lib/style/design-tokens/carbon-scoped-tokens-provider/carbon-scoped-tokens-provider.component.d.ts +7 -5
  23. package/lib/style/design-tokens/carbon-scoped-tokens-provider/carbon-scoped-tokens-provider.component.js +11 -36
  24. package/lib/style/themes/base/index.d.ts +6 -1
  25. package/lib/style/themes/sage/index.d.ts +6 -0
  26. package/package.json +2 -2
  27. package/lib/components/hr/hr.d.ts +0 -12
  28. package/lib/components/navigation-bar/navigation-bar.d.ts +0 -15
@@ -1,2 +1,11 @@
1
+ import { PaddingProps, FlexboxProps } from "styled-system";
2
+ import { StickyPosition, NavigationType } from "./navigation-bar.component";
3
+ declare const StyledNavigationBar: import("styled-components").StyledComponent<"nav", any, PaddingProps<Required<import("styled-system").Theme<import("styled-system").TLengthStyledSystem>>> & FlexboxProps<Required<import("styled-system").Theme<import("styled-system").TLengthStyledSystem>>> & {
4
+ /** Color scheme of navigation component */
5
+ navigationType?: NavigationType | undefined;
6
+ /** Defines the position of sticky navigation bar */
7
+ stickyPosition?: StickyPosition | undefined;
8
+ /** Defines the offset of sticky navigation bar */
9
+ stickyOffset?: string | undefined;
10
+ }, never>;
1
11
  export default StyledNavigationBar;
2
- declare const StyledNavigationBar: import("styled-components").StyledComponent<"nav", any, {}, never>;
@@ -11,13 +11,11 @@ var _propTypes = _interopRequireDefault(require("prop-types"));
11
11
 
12
12
  var _reactDom = _interopRequireDefault(require("react-dom"));
13
13
 
14
- var _styledComponents = require("styled-components");
15
-
16
14
  var _guid = _interopRequireDefault(require("../../__internal__/utils/helpers/guid"));
17
15
 
18
16
  var _browser = _interopRequireDefault(require("../../__internal__/utils/helpers/browser"));
19
17
 
20
- var _carbonScopedTokensProvider = require("../../style/design-tokens/carbon-scoped-tokens-provider/carbon-scoped-tokens-provider.component");
18
+ var _carbonScopedTokensProvider = _interopRequireDefault(require("../../style/design-tokens/carbon-scoped-tokens-provider/carbon-scoped-tokens-provider.component"));
21
19
 
22
20
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
23
21
 
@@ -33,7 +31,6 @@ const Portal = ({
33
31
  }) => {
34
32
  const [portalNode, setPortalNode] = (0, _react.useState)(null);
35
33
  const uniqueId = (0, _react.useMemo)(() => (0, _guid.default)(), []);
36
- const theme = (0, _react.useContext)(_styledComponents.ThemeContext);
37
34
  (0, _react.useEffect)(() => {
38
35
  if (onReposition) {
39
36
  onReposition();
@@ -68,7 +65,7 @@ const Portal = ({
68
65
  setPortalNode(node);
69
66
  } else if (!node) {
70
67
  node = document.createElement("div");
71
- node.classList.add(portalClassName, (0, _carbonScopedTokensProvider.tokensClassName)((theme === null || theme === void 0 ? void 0 : theme.name) || ""));
68
+ node.classList.add(portalClassName);
72
69
  node.setAttribute("data-portal-exit", uniqueId);
73
70
 
74
71
  if (id !== undefined) {
@@ -99,7 +96,7 @@ const Portal = ({
99
96
 
100
97
  return /*#__PURE__*/_react.default.createElement("span", {
101
98
  "data-portal-entrance": uniqueId
102
- }, /*#__PURE__*/_reactDom.default.createPortal(children, getPortalContainer()));
99
+ }, /*#__PURE__*/_reactDom.default.createPortal( /*#__PURE__*/_react.default.createElement(_carbonScopedTokensProvider.default, null, children), getPortalContainer()));
103
100
  };
104
101
 
105
102
  Portal.propTypes = {
@@ -22,28 +22,28 @@ const StyledSplitButtonChildrenContainer = _styledComponents.default.div`
22
22
  theme,
23
23
  align
24
24
  }) => (0, _styledComponents.css)`
25
- background-color: ${theme.colors.secondary};
25
+ background-color: var(--colorsActionMajorYang100);
26
26
  min-width: ${({
27
27
  minWidth
28
28
  }) => minWidth}px;
29
29
  white-space: nowrap;
30
30
  z-index: ${theme.zIndex.popover};
31
+ box-shadow: var(--boxShadow100);
31
32
 
32
33
  ${_button.default} {
33
- background-color: ${theme.colors.secondary};
34
- border: 1px solid ${theme.colors.secondary};
35
- color: ${theme.colors.white};
34
+ background-color: var(--colorsActionMajorYang100);
35
+ border: 1px solid var(--colorsActionMajorTransparent);
36
+ color: var(--colorsActionMajor500);
36
37
  display: block;
37
38
  margin-left: 0;
38
- margin-top: 3px;
39
- margin-bottom: 3px;
40
39
  min-width: 100%;
41
40
  text-align: ${align};
42
41
  z-index: ${theme.zIndex.overlay};
43
42
 
44
43
  &:focus,
45
44
  &:hover {
46
- background-color: ${theme.colors.tertiary};
45
+ color: var(--colorsActionMajorYang100);
46
+ background-color: var(--colorsActionMajor600);
47
47
  }
48
48
 
49
49
  & + & {
@@ -27,23 +27,32 @@ const StyledSplitButtonToggle = (0, _styledComponents.default)(_button.default)`
27
27
  buttonType,
28
28
  disabled,
29
29
  displayed,
30
- size,
31
- theme
30
+ size
32
31
  }) => (0, _styledComponents.css)`
33
32
  ${!disabled && displayed ? (0, _styledComponents.css)`
34
- background-color: ${theme.colors.secondary};
35
- border-color: ${theme.colors.secondary};
33
+ background-color: var(--colorsActionMajor500);
34
+ border-color: var(--colorsActionMajor500);
36
35
 
37
36
  &,
38
37
  ${_icon.default} {
39
- color: ${theme.colors.white};
38
+ color: var(--colorsActionMajorYang100);
40
39
  }
41
40
 
42
41
  &:focus {
43
- border-left-color: ${theme.colors.secondary};
42
+ border-left-color: var(--colorsSemanticFocus500);
44
43
  }
45
44
  ` : ""}
46
- ${!disabled && buttonType === "primary" && `border-left-color: ${theme.colors.secondary};`}
45
+ ${!disabled && buttonType === "primary" && `position: relative;
46
+ &::before {
47
+ content: '';
48
+ width: 2px;
49
+ height: 100%;
50
+ background: var(--colorsActionMajorYang100);
51
+ position: absolute;
52
+ left: -2px;
53
+ z-index: 2;
54
+ }
55
+ `}
47
56
  ${buttonType === "secondary" && "border-left-width: 0;"}
48
57
  padding: 0 ${horizontalPaddingSizes[size]}px;
49
58
 
@@ -25,9 +25,7 @@ const StyledSplitButton = _styledComponents.default.div`
25
25
  margin: 0;
26
26
 
27
27
  &:focus {
28
- border: 3px solid ${({
29
- theme
30
- }) => theme.colors.focus};
28
+ border: 3px solid var(--colorsSemanticFocus500);
31
29
  outline: none;
32
30
  margin: -1px;
33
31
  }
@@ -11,15 +11,13 @@ var _propTypes = _interopRequireDefault(require("prop-types"));
11
11
 
12
12
  var _headless = _interopRequireDefault(require("@tippyjs/react/headless"));
13
13
 
14
- var _styledComponents = require("styled-components");
15
-
16
14
  var _tooltip = _interopRequireDefault(require("./tooltip.style"));
17
15
 
18
16
  var _tooltipPointer = _interopRequireDefault(require("./tooltip-pointer.style"));
19
17
 
20
18
  var _tags = _interopRequireDefault(require("../../__internal__/utils/helpers/tags/tags"));
21
19
 
22
- var _carbonScopedTokensProvider = require("../../style/design-tokens/carbon-scoped-tokens-provider/carbon-scoped-tokens-provider.component");
20
+ var _carbonScopedTokensProvider = _interopRequireDefault(require("../../style/design-tokens/carbon-scoped-tokens-provider/carbon-scoped-tokens-provider.component"));
23
21
 
24
22
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
25
23
 
@@ -47,12 +45,10 @@ const Tooltip = /*#__PURE__*/_react.default.forwardRef(({
47
45
  ...rest
48
46
  }, ref) => {
49
47
  const tooltipRef = (0, _react.useRef)(ref || null);
50
- const theme = (0, _react.useContext)(_styledComponents.ThemeContext);
51
48
 
52
49
  const tooltip = (attrs, content) => {
53
50
  const currentPosition = attrs["data-placement"] || position;
54
- return /*#__PURE__*/_react.default.createElement(_tooltip.default, _extends({
55
- className: (0, _carbonScopedTokensProvider.tokensClassName)(theme === null || theme === void 0 ? void 0 : theme.name),
51
+ return /*#__PURE__*/_react.default.createElement(_carbonScopedTokensProvider.default, null, /*#__PURE__*/_react.default.createElement(_tooltip.default, _extends({
56
52
  "data-element": "tooltip",
57
53
  role: "tooltip",
58
54
  tabIndex: "-1",
@@ -75,7 +71,7 @@ const Tooltip = /*#__PURE__*/_react.default.forwardRef(({
75
71
  "data-popper-arrow": "",
76
72
  "data-element": "tooltip-pointer",
77
73
  bgColor: bgColor
78
- })), /*#__PURE__*/_react.default.createElement("div", null, content));
74
+ })), /*#__PURE__*/_react.default.createElement("div", null, content)));
79
75
  };
80
76
 
81
77
  return /*#__PURE__*/_react.default.createElement(_headless.default, _extends({
@@ -1 +1 @@
1
- export default function useIsAboveBreakpoint(breakpoint: number): boolean;
1
+ export default function useIsAboveBreakpoint(breakpoint?: number): boolean;
@@ -1,6 +1,8 @@
1
- export function tokensClassName(theme: any): string;
2
- export const GlobalTokens: import("styled-components").GlobalStyleComponent<{}, import("styled-components").DefaultTheme>;
3
1
  export default CarbonScopedTokensProvider;
4
- declare function CarbonScopedTokensProvider({ children }: {
5
- children: any;
6
- }): JSX.Element;
2
+ /**
3
+ *
4
+ * Converts theme properties to css variables form and set them locally for
5
+ * given scope
6
+ *
7
+ */
8
+ declare const CarbonScopedTokensProvider: import("styled-components").StyledComponent<"div", any, {}, never>;
@@ -3,20 +3,14 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports.default = exports.GlobalTokens = exports.tokensClassName = void 0;
6
+ exports.default = void 0;
7
7
 
8
- var _react = _interopRequireDefault(require("react"));
8
+ var _styledComponents = _interopRequireDefault(require("styled-components"));
9
9
 
10
- var _styledComponents = _interopRequireWildcard(require("styled-components"));
10
+ var _themes = require("../../themes");
11
11
 
12
12
  var _generateCssVariables = _interopRequireDefault(require("../generate-css-variables.util"));
13
13
 
14
- var _guid = _interopRequireDefault(require("../../../__internal__/utils/helpers/guid"));
15
-
16
- function _getRequireWildcardCache() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); _getRequireWildcardCache = function () { return cache; }; return cache; }
17
-
18
- function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
19
-
20
14
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
21
15
 
22
16
  /**
@@ -25,37 +19,18 @@ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { de
25
19
  * given scope
26
20
  *
27
21
  */
28
- const activeThemes = {};
29
- const carbonInstanceId = (0, _guid.default)();
30
-
31
- const kebabCase = input => input && input.toString().toLowerCase().match(/\w*/gm).filter(Boolean).join("-");
32
-
33
- const tokensClassName = theme => `sage-design-tokens-${kebabCase(theme)}-${carbonInstanceId}`;
34
-
35
- exports.tokensClassName = tokensClassName;
36
- const GlobalTokens = (0, _styledComponents.createGlobalStyle)`
37
- ${({
38
- theme
39
- }) => {
40
- const className = tokensClassName(theme.name);
41
- activeThemes[className] = activeThemes[className] || (0, _generateCssVariables.default)(theme.compatibility);
42
- return Object.entries(activeThemes).reduce((acc, [name, definitions]) => `${acc} .${name} { ${definitions} }`, "");
43
- }}`;
44
- exports.GlobalTokens = GlobalTokens;
45
- const TokensProviderWrapper = _styledComponents.default.div.attrs(({
46
- theme
47
- }) => ({
48
- className: tokensClassName(theme.name)
49
- }))`
22
+ const CarbonScopedTokensProvider = _styledComponents.default.div`
50
23
  margin: 0;
51
24
  padding: 0;
52
25
  width: auto;
53
26
  display: inline;
54
- `;
55
-
56
- const CarbonScopedTokensProvider = ({
57
- children
58
- }) => /*#__PURE__*/_react.default.createElement(TokensProviderWrapper, null, /*#__PURE__*/_react.default.createElement(GlobalTokens, null), children);
59
27
 
28
+ ${({
29
+ theme
30
+ }) => (0, _generateCssVariables.default)(theme.compatibility)}
31
+ `;
32
+ CarbonScopedTokensProvider.defaultProps = {
33
+ theme: _themes.baseTheme
34
+ };
60
35
  var _default = CarbonScopedTokensProvider;
61
36
  exports.default = _default;
@@ -263,11 +263,16 @@ export interface ThemeObject {
263
263
  background: string;
264
264
  borderBottom: string;
265
265
  };
266
-
267
266
  dark: {
268
267
  background: string;
269
268
  borderBottom: string;
270
269
  };
270
+ black: {
271
+ background: string;
272
+ };
273
+ white: {
274
+ borderBottom: string;
275
+ };
271
276
  };
272
277
 
273
278
  numeralDate: {
@@ -483,6 +483,12 @@ declare var _default: {
483
483
  background: string;
484
484
  borderBottom: string;
485
485
  };
486
+ black: {
487
+ background: string;
488
+ };
489
+ white: {
490
+ borderBottom: string;
491
+ };
486
492
  };
487
493
  numeralDate: {
488
494
  passive: string;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "carbon-react",
3
- "version": "102.20.1",
3
+ "version": "102.22.2",
4
4
  "description": "A library of reusable React components for easily building user interfaces.",
5
5
  "engineStrict": true,
6
6
  "engines": {
@@ -90,7 +90,6 @@
90
90
  "@types/react": "16.9.31",
91
91
  "@types/react-dom": "16.0.11",
92
92
  "@types/styled-components": "^5.1.9",
93
- "@types/styled-system": "^5.1.11",
94
93
  "@types/uuid": "^8.3.3",
95
94
  "@typescript-eslint/eslint-plugin": "^5.4.0",
96
95
  "@typescript-eslint/parser": "^5.4.0",
@@ -159,6 +158,7 @@
159
158
  "@sage/design-tokens": "^1.87.1",
160
159
  "@styled-system/prop-types": "^5.1.5",
161
160
  "@tippyjs/react": "^4.2.5",
161
+ "@types/styled-system": "^5.1.11",
162
162
  "classnames": "~2.2.6",
163
163
  "crypto-js": "~3.3.0",
164
164
  "dotenv": "^10.0.0",
@@ -1,12 +0,0 @@
1
- import { SpaceProps } from "styled-system";
2
-
3
- export interface HrProps extends SpaceProps {
4
- /** Breakpoint for adaptive left and right margins (below the breakpoint they go to 0).
5
- * Enables the adaptive behaviour when set
6
- */
7
- adaptiveMxBreakpoint?: number;
8
- }
9
-
10
- declare function Hr(props: HrProps): JSX.Element;
11
-
12
- export default Hr;
@@ -1,15 +0,0 @@
1
- import * as React from "react";
2
- import { SpaceProps } from "styled-system";
3
-
4
- export interface NavigationBarProps extends SpaceProps {
5
- children?: React.ReactNode;
6
- ariaLabel?: string;
7
- navigationType?: "light" | "dark" | "white" | "black";
8
- isLoading?: boolean;
9
- stickyPosition?: "top" | "bottom";
10
- stickyOffset?: string;
11
- }
12
-
13
- declare function NavigationBar(props: NavigationBarProps): JSX.Element;
14
-
15
- export default NavigationBar;