@navikt/ds-react 2.8.1 → 2.8.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.
@@ -47,6 +47,7 @@ const ExpansionCardTitle_1 = require("./ExpansionCardTitle");
47
47
  exports.ExpansionCardContext = (0, react_1.createContext)({
48
48
  open: false,
49
49
  toggleOpen: () => { },
50
+ size: "medium",
50
51
  });
51
52
  exports.ExpansionCard = (0, react_1.forwardRef)((_a, ref) => {
52
53
  var { className, onToggle, open, defaultOpen = false, size = "medium" } = _a, rest = __rest(_a, ["className", "onToggle", "open", "defaultOpen", "size"]);
@@ -63,7 +64,7 @@ exports.ExpansionCard = (0, react_1.forwardRef)((_a, ref) => {
63
64
  }
64
65
  shouldFade.current = true;
65
66
  };
66
- return (react_1.default.createElement(exports.ExpansionCardContext.Provider, { value: { open: open !== null && open !== void 0 ? open : _open, toggleOpen: handleOpen } },
67
+ return (react_1.default.createElement(exports.ExpansionCardContext.Provider, { value: { open: open !== null && open !== void 0 ? open : _open, toggleOpen: handleOpen, size } },
67
68
  react_1.default.createElement("section", Object.assign({}, rest, { className: (0, clsx_1.default)("navds-expansioncard", className, `navds-expansioncard--${size}`, {
68
69
  "navds-expansioncard--open": open !== null && open !== void 0 ? open : _open,
69
70
  "navds-expansioncard--no-fade": !shouldFade.current,
@@ -50,7 +50,7 @@ const ExpansionCardContent = (0, react_1.forwardRef)((_a, ref) => {
50
50
  }
51
51
  return (react_1.default.createElement(BodyLong_1.BodyLong, Object.assign({}, rest, { ref: ref, as: "div", className: (0, clsx_1.default)("navds-expansioncard__content", {
52
52
  "navds-expansioncard__content--closed": !panelContext.open,
53
- }), "aria-hidden": !panelContext.open }),
53
+ }), "aria-hidden": !panelContext.open, size: panelContext.size }),
54
54
  react_1.default.createElement("div", { className: "navds-expansioncard__content-inner" }, children)));
55
55
  });
56
56
  exports.default = ExpansionCardContent;
@@ -41,7 +41,13 @@ exports.ExpansionCardDescription = void 0;
41
41
  const react_1 = __importStar(require("react"));
42
42
  const clsx_1 = __importDefault(require("clsx"));
43
43
  const BodyLong_1 = require("../typography/BodyLong");
44
+ const ExpansionCard_1 = require("./ExpansionCard");
44
45
  exports.ExpansionCardDescription = (0, react_1.forwardRef)((_a, ref) => {
45
46
  var { className } = _a, rest = __rest(_a, ["className"]);
46
- return (react_1.default.createElement(BodyLong_1.BodyLong, Object.assign({}, rest, { as: "p", ref: ref, className: (0, clsx_1.default)("navds-link-panel__description", className) })));
47
+ const panelContext = (0, react_1.useContext)(ExpansionCard_1.ExpansionCardContext);
48
+ if (panelContext === null) {
49
+ console.error("<ExpansionCard.Header> has to be used within an <ExpansionCard>");
50
+ return null;
51
+ }
52
+ return (react_1.default.createElement(BodyLong_1.BodyLong, Object.assign({}, rest, { as: "p", ref: ref, className: (0, clsx_1.default)("navds-link-panel__description", className), size: panelContext.size })));
47
53
  });
@@ -37,6 +37,7 @@ export interface ExpansionCardProps extends React.HTMLAttributes<HTMLDivElement>
37
37
  export type ExpansionCardContextProps = {
38
38
  open: boolean;
39
39
  toggleOpen: () => void;
40
+ size: "medium" | "small";
40
41
  };
41
42
  export declare const ExpansionCardContext: React.Context<ExpansionCardContextProps>;
42
43
  export declare const ExpansionCard: ExpansionCardComponent;
@@ -18,6 +18,7 @@ import { ExpansionCardTitle, } from "./ExpansionCardTitle";
18
18
  export const ExpansionCardContext = createContext({
19
19
  open: false,
20
20
  toggleOpen: () => { },
21
+ size: "medium",
21
22
  });
22
23
  export const ExpansionCard = forwardRef((_a, ref) => {
23
24
  var { className, onToggle, open, defaultOpen = false, size = "medium" } = _a, rest = __rest(_a, ["className", "onToggle", "open", "defaultOpen", "size"]);
@@ -34,7 +35,7 @@ export const ExpansionCard = forwardRef((_a, ref) => {
34
35
  }
35
36
  shouldFade.current = true;
36
37
  };
37
- return (React.createElement(ExpansionCardContext.Provider, { value: { open: open !== null && open !== void 0 ? open : _open, toggleOpen: handleOpen } },
38
+ return (React.createElement(ExpansionCardContext.Provider, { value: { open: open !== null && open !== void 0 ? open : _open, toggleOpen: handleOpen, size } },
38
39
  React.createElement("section", Object.assign({}, rest, { className: cl("navds-expansioncard", className, `navds-expansioncard--${size}`, {
39
40
  "navds-expansioncard--open": open !== null && open !== void 0 ? open : _open,
40
41
  "navds-expansioncard--no-fade": !shouldFade.current,
@@ -1 +1 @@
1
- {"version":3,"file":"ExpansionCard.js","sourceRoot":"","sources":["../../src/expansion-card/ExpansionCard.tsx"],"names":[],"mappings":";;;;;;;;;;;AAAA,OAAO,EAAE,MAAM,MAAM,CAAC;AACtB,OAAO,KAAK,EAAE,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAC3E,OAAO,oBAEN,MAAM,wBAAwB,CAAC;AAChC,OAAO,EACL,wBAAwB,GAEzB,MAAM,4BAA4B,CAAC;AACpC,OAAO,mBAEN,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EACL,kBAAkB,GAEnB,MAAM,sBAAsB,CAAC;AA4C9B,MAAM,CAAC,MAAM,oBAAoB,GAAG,aAAa,CAA4B;IAC3E,IAAI,EAAE,KAAK;IACX,UAAU,EAAE,GAAG,EAAE,GAAE,CAAC;CACrB,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,aAAa,GAAG,UAAU,CACrC,CACE,EAOC,EACD,GAAG,EACH,EAAE;QATF,EACE,SAAS,EACT,QAAQ,EACR,IAAI,EACJ,WAAW,GAAG,KAAK,EACnB,IAAI,GAAG,QAAQ,OAEhB,EADI,IAAI,cANT,wDAOC,CADQ;IAIT,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,QAAQ,CAAC,WAAW,CAAC,CAAC;IAEhD,MAAM,UAAU,GAAG,MAAM,CAAU,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,WAAW,CAAC,CAAC,CAAC;IAEpE,MAAM,UAAU,GAAG,GAAG,EAAE;QACtB,IAAI,IAAI,KAAK,SAAS,EAAE;YACtB,MAAM,OAAO,GAAG,CAAC,KAAK,CAAC;YACvB,QAAQ,CAAC,OAAO,CAAC,CAAC;YAClB,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAG,OAAO,CAAC,CAAC;SACrB;aAAM;YACL,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAG,CAAC,IAAI,CAAC,CAAC;SACnB;QACD,UAAU,CAAC,OAAO,GAAG,IAAI,CAAC;IAC5B,CAAC,CAAC;IAEF,OAAO,CACL,oBAAC,oBAAoB,CAAC,QAAQ,IAC5B,KAAK,EAAE,EAAE,IAAI,EAAE,IAAI,aAAJ,IAAI,cAAJ,IAAI,GAAI,KAAK,EAAE,UAAU,EAAE,UAAU,EAAE;QAEtD,iDACM,IAAI,IACR,SAAS,EAAE,EAAE,CACX,qBAAqB,EACrB,SAAS,EACT,wBAAwB,IAAI,EAAE,EAC9B;gBACE,2BAA2B,EAAE,IAAI,aAAJ,IAAI,cAAJ,IAAI,GAAI,KAAK;gBAC1C,8BAA8B,EAAE,CAAC,UAAU,CAAC,OAAO;aACpD,CACF,EACD,GAAG,EAAE,GAAG,IACR,CAC4B,CACjC,CAAC;AACJ,CAAC,CACwB,CAAC;AAE5B,aAAa,CAAC,MAAM,GAAG,mBAAmB,CAAC;AAC3C,aAAa,CAAC,OAAO,GAAG,oBAAoB,CAAC;AAC7C,aAAa,CAAC,KAAK,GAAG,kBAAkB,CAAC;AACzC,aAAa,CAAC,WAAW,GAAG,wBAAwB,CAAC;AAErD,eAAe,aAAa,CAAC"}
1
+ {"version":3,"file":"ExpansionCard.js","sourceRoot":"","sources":["../../src/expansion-card/ExpansionCard.tsx"],"names":[],"mappings":";;;;;;;;;;;AAAA,OAAO,EAAE,MAAM,MAAM,CAAC;AACtB,OAAO,KAAK,EAAE,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAC3E,OAAO,oBAEN,MAAM,wBAAwB,CAAC;AAChC,OAAO,EACL,wBAAwB,GAEzB,MAAM,4BAA4B,CAAC;AACpC,OAAO,mBAEN,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EACL,kBAAkB,GAEnB,MAAM,sBAAsB,CAAC;AA6C9B,MAAM,CAAC,MAAM,oBAAoB,GAAG,aAAa,CAA4B;IAC3E,IAAI,EAAE,KAAK;IACX,UAAU,EAAE,GAAG,EAAE,GAAE,CAAC;IACpB,IAAI,EAAE,QAAQ;CACf,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,aAAa,GAAG,UAAU,CACrC,CACE,EAOC,EACD,GAAG,EACH,EAAE;QATF,EACE,SAAS,EACT,QAAQ,EACR,IAAI,EACJ,WAAW,GAAG,KAAK,EACnB,IAAI,GAAG,QAAQ,OAEhB,EADI,IAAI,cANT,wDAOC,CADQ;IAIT,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,QAAQ,CAAC,WAAW,CAAC,CAAC;IAEhD,MAAM,UAAU,GAAG,MAAM,CAAU,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,WAAW,CAAC,CAAC,CAAC;IAEpE,MAAM,UAAU,GAAG,GAAG,EAAE;QACtB,IAAI,IAAI,KAAK,SAAS,EAAE;YACtB,MAAM,OAAO,GAAG,CAAC,KAAK,CAAC;YACvB,QAAQ,CAAC,OAAO,CAAC,CAAC;YAClB,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAG,OAAO,CAAC,CAAC;SACrB;aAAM;YACL,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAG,CAAC,IAAI,CAAC,CAAC;SACnB;QACD,UAAU,CAAC,OAAO,GAAG,IAAI,CAAC;IAC5B,CAAC,CAAC;IAEF,OAAO,CACL,oBAAC,oBAAoB,CAAC,QAAQ,IAC5B,KAAK,EAAE,EAAE,IAAI,EAAE,IAAI,aAAJ,IAAI,cAAJ,IAAI,GAAI,KAAK,EAAE,UAAU,EAAE,UAAU,EAAE,IAAI,EAAE;QAE5D,iDACM,IAAI,IACR,SAAS,EAAE,EAAE,CACX,qBAAqB,EACrB,SAAS,EACT,wBAAwB,IAAI,EAAE,EAC9B;gBACE,2BAA2B,EAAE,IAAI,aAAJ,IAAI,cAAJ,IAAI,GAAI,KAAK;gBAC1C,8BAA8B,EAAE,CAAC,UAAU,CAAC,OAAO;aACpD,CACF,EACD,GAAG,EAAE,GAAG,IACR,CAC4B,CACjC,CAAC;AACJ,CAAC,CACwB,CAAC;AAE5B,aAAa,CAAC,MAAM,GAAG,mBAAmB,CAAC;AAC3C,aAAa,CAAC,OAAO,GAAG,oBAAoB,CAAC;AAC7C,aAAa,CAAC,KAAK,GAAG,kBAAkB,CAAC;AACzC,aAAa,CAAC,WAAW,GAAG,wBAAwB,CAAC;AAErD,eAAe,aAAa,CAAC"}
@@ -22,7 +22,7 @@ const ExpansionCardContent = forwardRef((_a, ref) => {
22
22
  }
23
23
  return (React.createElement(BodyLong, Object.assign({}, rest, { ref: ref, as: "div", className: cl("navds-expansioncard__content", {
24
24
  "navds-expansioncard__content--closed": !panelContext.open,
25
- }), "aria-hidden": !panelContext.open }),
25
+ }), "aria-hidden": !panelContext.open, size: panelContext.size }),
26
26
  React.createElement("div", { className: "navds-expansioncard__content-inner" }, children)));
27
27
  });
28
28
  export default ExpansionCardContent;
@@ -1 +1 @@
1
- {"version":3,"file":"ExpansionCardContent.js","sourceRoot":"","sources":["../../src/expansion-card/ExpansionCardContent.tsx"],"names":[],"mappings":";;;;;;;;;;;AAAA,OAAO,EAAE,MAAM,MAAM,CAAC;AACtB,OAAO,KAAK,EAAE,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,OAAO,CAAC;AACtD,OAAO,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AAClD,OAAO,EAAE,oBAAoB,EAAE,MAAM,iBAAiB,CAAC;AAWvD,MAAM,oBAAoB,GAA6B,UAAU,CAC/D,CAAC,EAAgC,EAAE,GAAG,EAAE,EAAE;QAAzC,EAAE,QAAQ,EAAE,SAAS,OAAW,EAAN,IAAI,cAA9B,yBAAgC,CAAF;IAC7B,MAAM,YAAY,GAAG,UAAU,CAAC,oBAAoB,CAAC,CAAC;IAEtD,IAAI,YAAY,KAAK,IAAI,EAAE;QACzB,OAAO,CAAC,KAAK,CACX,kEAAkE,CACnE,CAAC;QACF,OAAO,IAAI,CAAC;KACb;IAED,OAAO,CACL,oBAAC,QAAQ,oBACH,IAAI,IACR,GAAG,EAAE,GAAG,EACR,EAAE,EAAC,KAAK,EACR,SAAS,EAAE,EAAE,CAAC,8BAA8B,EAAE;YAC5C,sCAAsC,EAAE,CAAC,YAAY,CAAC,IAAI;SAC3D,CAAC,iBACW,CAAC,YAAY,CAAC,IAAI;QAE/B,6BAAK,SAAS,EAAC,oCAAoC,IAAE,QAAQ,CAAO,CAC3D,CACZ,CAAC;AACJ,CAAC,CACF,CAAC;AAEF,eAAe,oBAAoB,CAAC"}
1
+ {"version":3,"file":"ExpansionCardContent.js","sourceRoot":"","sources":["../../src/expansion-card/ExpansionCardContent.tsx"],"names":[],"mappings":";;;;;;;;;;;AAAA,OAAO,EAAE,MAAM,MAAM,CAAC;AACtB,OAAO,KAAK,EAAE,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,OAAO,CAAC;AACtD,OAAO,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AAClD,OAAO,EAAE,oBAAoB,EAAE,MAAM,iBAAiB,CAAC;AAWvD,MAAM,oBAAoB,GAA6B,UAAU,CAC/D,CAAC,EAAgC,EAAE,GAAG,EAAE,EAAE;QAAzC,EAAE,QAAQ,EAAE,SAAS,OAAW,EAAN,IAAI,cAA9B,yBAAgC,CAAF;IAC7B,MAAM,YAAY,GAAG,UAAU,CAAC,oBAAoB,CAAC,CAAC;IAEtD,IAAI,YAAY,KAAK,IAAI,EAAE;QACzB,OAAO,CAAC,KAAK,CACX,kEAAkE,CACnE,CAAC;QACF,OAAO,IAAI,CAAC;KACb;IAED,OAAO,CACL,oBAAC,QAAQ,oBACH,IAAI,IACR,GAAG,EAAE,GAAG,EACR,EAAE,EAAC,KAAK,EACR,SAAS,EAAE,EAAE,CAAC,8BAA8B,EAAE;YAC5C,sCAAsC,EAAE,CAAC,YAAY,CAAC,IAAI;SAC3D,CAAC,iBACW,CAAC,YAAY,CAAC,IAAI,EAC/B,IAAI,EAAE,YAAY,CAAC,IAAI;QAEvB,6BAAK,SAAS,EAAC,oCAAoC,IAAE,QAAQ,CAAO,CAC3D,CACZ,CAAC;AACJ,CAAC,CACF,CAAC;AAEF,eAAe,oBAAoB,CAAC"}
@@ -9,11 +9,17 @@ var __rest = (this && this.__rest) || function (s, e) {
9
9
  }
10
10
  return t;
11
11
  };
12
- import React, { forwardRef } from "react";
12
+ import React, { forwardRef, useContext } from "react";
13
13
  import cl from "clsx";
14
14
  import { BodyLong } from "../typography/BodyLong";
15
+ import { ExpansionCardContext } from "./ExpansionCard";
15
16
  export const ExpansionCardDescription = forwardRef((_a, ref) => {
16
17
  var { className } = _a, rest = __rest(_a, ["className"]);
17
- return (React.createElement(BodyLong, Object.assign({}, rest, { as: "p", ref: ref, className: cl("navds-link-panel__description", className) })));
18
+ const panelContext = useContext(ExpansionCardContext);
19
+ if (panelContext === null) {
20
+ console.error("<ExpansionCard.Header> has to be used within an <ExpansionCard>");
21
+ return null;
22
+ }
23
+ return (React.createElement(BodyLong, Object.assign({}, rest, { as: "p", ref: ref, className: cl("navds-link-panel__description", className), size: panelContext.size })));
18
24
  });
19
25
  //# sourceMappingURL=ExpansionCardDescription.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ExpansionCardDescription.js","sourceRoot":"","sources":["../../src/expansion-card/ExpansionCardDescription.tsx"],"names":[],"mappings":";;;;;;;;;;;AAAA,OAAO,KAAK,EAAE,EAAE,UAAU,EAAE,MAAM,OAAO,CAAC;AAC1C,OAAO,EAAE,MAAM,MAAM,CAAC;AACtB,OAAO,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AAWlD,MAAM,CAAC,MAAM,wBAAwB,GACnC,UAAU,CAAC,CAAC,EAAsB,EAAE,GAAG,EAAE,EAAE;QAA/B,EAAE,SAAS,OAAW,EAAN,IAAI,cAApB,aAAsB,CAAF;IAAY,OAAA,CAC1C,oBAAC,QAAQ,oBACH,IAAI,IACR,EAAE,EAAC,GAAG,EACN,GAAG,EAAE,GAAG,EACR,SAAS,EAAE,EAAE,CAAC,+BAA+B,EAAE,SAAS,CAAC,IACzD,CACH,CAAA;CAAA,CAAC,CAAC"}
1
+ {"version":3,"file":"ExpansionCardDescription.js","sourceRoot":"","sources":["../../src/expansion-card/ExpansionCardDescription.tsx"],"names":[],"mappings":";;;;;;;;;;;AAAA,OAAO,KAAK,EAAE,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,OAAO,CAAC;AACtD,OAAO,EAAE,MAAM,MAAM,CAAC;AACtB,OAAO,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AAClD,OAAO,EAAE,oBAAoB,EAAE,MAAM,iBAAiB,CAAC;AAWvD,MAAM,CAAC,MAAM,wBAAwB,GACnC,UAAU,CAAC,CAAC,EAAsB,EAAE,GAAG,EAAE,EAAE;QAA/B,EAAE,SAAS,OAAW,EAAN,IAAI,cAApB,aAAsB,CAAF;IAC9B,MAAM,YAAY,GAAG,UAAU,CAAC,oBAAoB,CAAC,CAAC;IAEtD,IAAI,YAAY,KAAK,IAAI,EAAE;QACzB,OAAO,CAAC,KAAK,CACX,iEAAiE,CAClE,CAAC;QACF,OAAO,IAAI,CAAC;KACb;IAED,OAAO,CACL,oBAAC,QAAQ,oBACH,IAAI,IACR,EAAE,EAAC,GAAG,EACN,GAAG,EAAE,GAAG,EACR,SAAS,EAAE,EAAE,CAAC,+BAA+B,EAAE,SAAS,CAAC,EACzD,IAAI,EAAE,YAAY,CAAC,IAAI,IACvB,CACH,CAAC;AACJ,CAAC,CAAC,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@navikt/ds-react",
3
- "version": "2.8.1",
3
+ "version": "2.8.2",
4
4
  "description": "Aksel react-components for NAV designsystem",
5
5
  "author": "Aksel | NAV designsystem team",
6
6
  "license": "MIT",
@@ -37,8 +37,8 @@
37
37
  },
38
38
  "dependencies": {
39
39
  "@floating-ui/react": "0.17.0",
40
- "@navikt/aksel-icons": "^2.8.1",
41
- "@navikt/ds-icons": "^2.8.1",
40
+ "@navikt/aksel-icons": "^2.8.2",
41
+ "@navikt/ds-icons": "^2.8.2",
42
42
  "@radix-ui/react-tabs": "1.0.0",
43
43
  "@radix-ui/react-toggle-group": "1.0.0",
44
44
  "clsx": "^1.2.1",
@@ -55,11 +55,13 @@ export interface ExpansionCardProps
55
55
  export type ExpansionCardContextProps = {
56
56
  open: boolean;
57
57
  toggleOpen: () => void;
58
+ size: "medium" | "small";
58
59
  };
59
60
 
60
61
  export const ExpansionCardContext = createContext<ExpansionCardContextProps>({
61
62
  open: false,
62
63
  toggleOpen: () => {},
64
+ size: "medium",
63
65
  });
64
66
 
65
67
  export const ExpansionCard = forwardRef<HTMLDivElement, ExpansionCardProps>(
@@ -91,7 +93,7 @@ export const ExpansionCard = forwardRef<HTMLDivElement, ExpansionCardProps>(
91
93
 
92
94
  return (
93
95
  <ExpansionCardContext.Provider
94
- value={{ open: open ?? _open, toggleOpen: handleOpen }}
96
+ value={{ open: open ?? _open, toggleOpen: handleOpen, size }}
95
97
  >
96
98
  <section
97
99
  {...rest}
@@ -32,6 +32,7 @@ const ExpansionCardContent: ExpansionCardContentType = forwardRef(
32
32
  "navds-expansioncard__content--closed": !panelContext.open,
33
33
  })}
34
34
  aria-hidden={!panelContext.open}
35
+ size={panelContext.size}
35
36
  >
36
37
  <div className="navds-expansioncard__content-inner">{children}</div>
37
38
  </BodyLong>
@@ -1,6 +1,7 @@
1
- import React, { forwardRef } from "react";
1
+ import React, { forwardRef, useContext } from "react";
2
2
  import cl from "clsx";
3
3
  import { BodyLong } from "../typography/BodyLong";
4
+ import { ExpansionCardContext } from "./ExpansionCard";
4
5
 
5
6
  interface ExpansionCardDescriptionProps
6
7
  extends React.HTMLAttributes<HTMLParagraphElement> {
@@ -12,11 +13,23 @@ export type ExpansionCardDescriptionType = React.ForwardRefExoticComponent<
12
13
  >;
13
14
 
14
15
  export const ExpansionCardDescription: ExpansionCardDescriptionType =
15
- forwardRef(({ className, ...rest }, ref) => (
16
- <BodyLong
17
- {...rest}
18
- as="p"
19
- ref={ref}
20
- className={cl("navds-link-panel__description", className)}
21
- />
22
- ));
16
+ forwardRef(({ className, ...rest }, ref) => {
17
+ const panelContext = useContext(ExpansionCardContext);
18
+
19
+ if (panelContext === null) {
20
+ console.error(
21
+ "<ExpansionCard.Header> has to be used within an <ExpansionCard>"
22
+ );
23
+ return null;
24
+ }
25
+
26
+ return (
27
+ <BodyLong
28
+ {...rest}
29
+ as="p"
30
+ ref={ref}
31
+ className={cl("navds-link-panel__description", className)}
32
+ size={panelContext.size}
33
+ />
34
+ );
35
+ });