@contentful/f36-accordion 4.0.1-beta.2543 → 4.0.1-beta.2590
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/dist/main.js +57 -38
- package/dist/main.js.map +1 -1
- package/dist/module.js +57 -38
- package/dist/module.js.map +1 -1
- package/dist/types.d.ts +20 -4
- package/dist/types.d.ts.map +1 -1
- package/package.json +6 -6
package/dist/main.js
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
var $9pthv$react = require("react");
|
|
2
2
|
var $9pthv$contentfulf36core = require("@contentful/f36-core");
|
|
3
|
+
var $9pthv$reactjsxruntime = require("react/jsx-runtime");
|
|
3
4
|
var $9pthv$emotion = require("emotion");
|
|
4
5
|
var $9pthv$contentfulf36tokens = require("@contentful/f36-tokens");
|
|
5
6
|
var $9pthv$contentfulf36typography = require("@contentful/f36-typography");
|
|
@@ -21,6 +22,7 @@ $parcel$export(module.exports, "AccordionPanel", () => $dc0312cfa0956395$export$
|
|
|
21
22
|
|
|
22
23
|
|
|
23
24
|
|
|
25
|
+
|
|
24
26
|
const $b2e2219a9d74caf2$export$af90c4d6702a6ca7 = ({ className: className })=>({
|
|
25
27
|
accordion: $9pthv$emotion.cx(/*#__PURE__*/ $9pthv$emotion.css({
|
|
26
28
|
boxSizing: 'border-box',
|
|
@@ -39,18 +41,19 @@ const $6b1aad2dfaf9ce0d$var$_Accordion = ({ align: align = 'end' , children: chi
|
|
|
39
41
|
const styles = $b2e2219a9d74caf2$export$af90c4d6702a6ca7({
|
|
40
42
|
className: className
|
|
41
43
|
});
|
|
42
|
-
return(/*#__PURE__*/ $
|
|
44
|
+
return(/*#__PURE__*/ $9pthv$reactjsxruntime.jsx($9pthv$contentfulf36core.Box, {
|
|
43
45
|
as: "ul",
|
|
44
46
|
className: styles.accordion,
|
|
45
47
|
testId: testId,
|
|
46
48
|
...otherProps,
|
|
47
|
-
ref: ref
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
49
|
+
ref: ref,
|
|
50
|
+
children: $parcel$interopDefault($9pthv$react).Children.map(children, (child)=>{
|
|
51
|
+
if (/*#__PURE__*/ $parcel$interopDefault($9pthv$react).isValidElement(child)) return(/*#__PURE__*/ $parcel$interopDefault($9pthv$react).cloneElement(child, {
|
|
52
|
+
align: align
|
|
53
|
+
}));
|
|
54
|
+
return child;
|
|
55
|
+
})
|
|
56
|
+
}));
|
|
54
57
|
};
|
|
55
58
|
const $6b1aad2dfaf9ce0d$export$a766cd26d0d69044 = /*#__PURE__*/ $parcel$interopDefault($9pthv$react).forwardRef($6b1aad2dfaf9ce0d$var$_Accordion);
|
|
56
59
|
|
|
@@ -63,6 +66,8 @@ const $6b1aad2dfaf9ce0d$export$a766cd26d0d69044 = /*#__PURE__*/ $parcel$interopD
|
|
|
63
66
|
|
|
64
67
|
|
|
65
68
|
|
|
69
|
+
|
|
70
|
+
|
|
66
71
|
const $cc0727a9cc62031c$var$getHeaderStyles = ({ align: align })=>$9pthv$emotion.cx(/*#__PURE__*/ $9pthv$emotion.css({
|
|
67
72
|
display: 'flex',
|
|
68
73
|
flexDirection: 'row',
|
|
@@ -115,22 +120,27 @@ const $a14b9c8d0b0cbe0b$export$5e3e5deaaf81ee41 = ({ children: children , onClic
|
|
|
115
120
|
align: align,
|
|
116
121
|
isExpanded: isExpanded
|
|
117
122
|
});
|
|
118
|
-
return(/*#__PURE__*/ $
|
|
123
|
+
return(/*#__PURE__*/ $9pthv$reactjsxruntime.jsx($9pthv$contentfulf36typography.Subheading, {
|
|
119
124
|
...rest,
|
|
120
125
|
testId: testId,
|
|
121
126
|
marginBottom: "none",
|
|
122
|
-
as: element
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
127
|
+
as: element,
|
|
128
|
+
children: /*#__PURE__*/ $9pthv$reactjsxruntime.jsxs("button", {
|
|
129
|
+
type: "button",
|
|
130
|
+
"aria-expanded": isExpanded,
|
|
131
|
+
"aria-controls": `accordion-panel--${ariaId}`,
|
|
132
|
+
id: `accordion--${ariaId}`,
|
|
133
|
+
className: styles.accordionHeader,
|
|
134
|
+
onClick: onClick,
|
|
135
|
+
children: [
|
|
136
|
+
/*#__PURE__*/ $9pthv$reactjsxruntime.jsx($9pthv$contentfulf36icons.ChevronDownTrimmedIcon, {
|
|
137
|
+
className: styles.accordionHeaderIcon,
|
|
138
|
+
variant: "secondary"
|
|
139
|
+
}),
|
|
140
|
+
children
|
|
141
|
+
]
|
|
142
|
+
})
|
|
143
|
+
}));
|
|
134
144
|
};
|
|
135
145
|
|
|
136
146
|
|
|
@@ -139,6 +149,7 @@ const $a14b9c8d0b0cbe0b$export$5e3e5deaaf81ee41 = ({ children: children , onClic
|
|
|
139
149
|
|
|
140
150
|
|
|
141
151
|
|
|
152
|
+
|
|
142
153
|
const $1911a31b860eeb50$export$2db50514b4b2c1ee = ()=>{
|
|
143
154
|
return {
|
|
144
155
|
accordionPanel: /*#__PURE__*/ $9pthv$emotion.css({
|
|
@@ -192,7 +203,7 @@ const $dc0312cfa0956395$export$7cad6f17fd6e117b = ({ children: children , isExpa
|
|
|
192
203
|
}, [
|
|
193
204
|
isExpanded
|
|
194
205
|
]);
|
|
195
|
-
return(/*#__PURE__*/ $
|
|
206
|
+
return(/*#__PURE__*/ $9pthv$reactjsxruntime.jsx($9pthv$contentfulf36core.Box, {
|
|
196
207
|
...rest,
|
|
197
208
|
testId: testId,
|
|
198
209
|
id: `accordion-panel--${ariaId}`,
|
|
@@ -200,10 +211,12 @@ const $dc0312cfa0956395$export$7cad6f17fd6e117b = ({ children: children , isExpa
|
|
|
200
211
|
"aria-labelledby": `accordion--${ariaId}`,
|
|
201
212
|
"aria-hidden": !isExpanded,
|
|
202
213
|
className: styles.accordionPanel,
|
|
203
|
-
ref: panelEl
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
214
|
+
ref: panelEl,
|
|
215
|
+
children: /*#__PURE__*/ $9pthv$reactjsxruntime.jsx("div", {
|
|
216
|
+
className: styles.accordionPanelContent,
|
|
217
|
+
children: children
|
|
218
|
+
})
|
|
219
|
+
}));
|
|
207
220
|
};
|
|
208
221
|
|
|
209
222
|
|
|
@@ -234,22 +247,28 @@ const $b9a3851e41efa019$var$_AccordionItem = ({ title: title = 'Accordion Title'
|
|
|
234
247
|
if (isExpanded && onCollapse) onCollapse();
|
|
235
248
|
setIsExpanded(!isExpanded);
|
|
236
249
|
};
|
|
237
|
-
return(/*#__PURE__*/ $
|
|
250
|
+
return(/*#__PURE__*/ $9pthv$reactjsxruntime.jsxs($9pthv$contentfulf36core.Box, {
|
|
238
251
|
as: "li",
|
|
239
252
|
className: styles.accordionItem,
|
|
240
253
|
testId: `${testId}-${id}`,
|
|
241
254
|
...otherProps,
|
|
242
|
-
ref: ref
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
|
|
247
|
-
|
|
248
|
-
|
|
249
|
-
|
|
250
|
-
|
|
251
|
-
|
|
252
|
-
|
|
255
|
+
ref: ref,
|
|
256
|
+
children: [
|
|
257
|
+
/*#__PURE__*/ $9pthv$reactjsxruntime.jsx($a14b9c8d0b0cbe0b$export$5e3e5deaaf81ee41, {
|
|
258
|
+
onClick: handleOnClick,
|
|
259
|
+
isExpanded: isExpanded,
|
|
260
|
+
element: titleElement,
|
|
261
|
+
ariaId: id,
|
|
262
|
+
align: align,
|
|
263
|
+
children: title
|
|
264
|
+
}),
|
|
265
|
+
/*#__PURE__*/ $9pthv$reactjsxruntime.jsx($dc0312cfa0956395$export$7cad6f17fd6e117b, {
|
|
266
|
+
ariaId: id,
|
|
267
|
+
isExpanded: isExpanded,
|
|
268
|
+
children: children
|
|
269
|
+
})
|
|
270
|
+
]
|
|
271
|
+
}));
|
|
253
272
|
};
|
|
254
273
|
const $b9a3851e41efa019$export$d99097c13d4dac9f = /*#__PURE__*/ $parcel$interopDefault($9pthv$react).forwardRef($b9a3851e41efa019$var$_AccordionItem);
|
|
255
274
|
|
package/dist/main.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"mappings":"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","sources":["packages/components/accordion/src/index.ts","packages/components/accordion/src/CompoundAccordion.tsx","packages/components/accordion/src/Accordion.tsx","packages/components/accordion/src/Accordion.styles.ts","packages/components/accordion/src/AccordionItem/AccordionItem.tsx","packages/components/accordion/src/AccordionHeader/AccordionHeader.tsx","packages/components/accordion/src/AccordionHeader/AccordionHeader.styles.ts","packages/components/accordion/src/AccordionPanel/AccordionPanel.tsx","packages/components/accordion/src/AccordionPanel/AccordionPanel.styles.ts","packages/components/accordion/src/AccordionItem/AccordionItem.styles.ts"],"sourcesContent":["export { Accordion } from './CompoundAccordion';\nexport type { AccordionProps } from './Accordion';\nexport { AccordionHeader } from './AccordionHeader/AccordionHeader';\nexport type { AccordionHeaderProps } from './AccordionHeader/AccordionHeader';\nexport { AccordionItem } from './AccordionItem/AccordionItem';\nexport type { AccordionItemProps } from './AccordionItem/AccordionItem';\nexport { AccordionPanel } from './AccordionPanel/AccordionPanel';\nexport type { AccordionPanelProps } from './AccordionPanel/AccordionPanel';\n","import { Accordion as OriginalAccordion } from './Accordion';\nimport { AccordionItem } from './AccordionItem/AccordionItem';\n\ntype CompoundAccordion = typeof OriginalAccordion & {\n Item: typeof AccordionItem;\n};\n\nexport const Accordion = OriginalAccordion as CompoundAccordion;\nAccordion.Item = AccordionItem;\n","import React from 'react';\nimport { Box } from '@contentful/f36-core';\nimport type { CommonProps } from '@contentful/f36-core';\n\nimport { getAccordionStyles } from './Accordion.styles';\n\nexport interface AccordionProps extends CommonProps {\n /**\n * Specify the alignment of the chevron inside the accordion header\n * @default end\n */\n align?: 'start' | 'end';\n /**\n * Child nodes to be rendered in the component\n */\n children?: React.ReactNode;\n}\n\nconst _Accordion = (\n {\n align = 'end',\n children,\n className,\n testId = 'cf-ui-accordion',\n ...otherProps\n }: AccordionProps,\n ref: React.Ref<HTMLUListElement>,\n) => {\n const styles = getAccordionStyles({ className });\n return (\n <Box\n as=\"ul\"\n className={styles.accordion}\n testId={testId}\n {...otherProps}\n ref={ref}\n >\n {React.Children.map(children, (child) => {\n if (React.isValidElement(child)) {\n return React.cloneElement(child, {\n align,\n });\n }\n return child;\n })}\n </Box>\n );\n};\n\nexport const Accordion = React.forwardRef(_Accordion);\n","import { css, cx } from 'emotion';\nimport tokens from '@contentful/f36-tokens';\n\nexport const getAccordionStyles = ({ className }: { className?: string }) => ({\n accordion: cx(\n css({\n boxSizing: 'border-box',\n padding: '0',\n margin: '0',\n listStyle: 'none',\n '&:first-child': {\n borderTop: `1px solid ${tokens.gray300}`,\n },\n }),\n className,\n ),\n});\n","import React, { useState } from 'react';\nimport type { HeadingElement } from '@contentful/f36-typography';\nimport { useId, Box } from '@contentful/f36-core';\n\nimport { AccordionHeader } from '../AccordionHeader/AccordionHeader';\nimport { AccordionPanel } from '../AccordionPanel/AccordionPanel';\nimport type { CommonProps } from '@contentful/f36-core';\n\nimport { getAccordionItemStyles } from './AccordionItem.styles';\n\nexport interface AccordionItemProps extends CommonProps {\n /**\n * The accordion title\n */\n title?: React.ReactNode;\n /**\n * The heading element that will be used by the AccordionHeader\n */\n titleElement?: HeadingElement;\n /**\n * The children of the AccordionItem are in fact the content of the accordion\n */\n children?: React.ReactNode;\n /**\n * A function to be called when the accordion item is opened\n */\n onExpand?: Function;\n /**\n * A function to be called when the accordion item is closed\n */\n onCollapse?: Function;\n /**\n * Specify the alignment of the chevron inside the accordion header\n */\n align?: 'start' | 'end';\n}\n\nconst _AccordionItem = (\n {\n title = 'Accordion Title',\n titleElement = 'h2',\n testId = 'cf-ui-accordion-item',\n onExpand,\n onCollapse,\n children,\n align = 'end',\n className,\n ...otherProps\n }: AccordionItemProps,\n ref: React.Ref<HTMLLIElement>,\n) => {\n const styles = getAccordionItemStyles({ className });\n const id = useId();\n const [isExpanded, setIsExpanded] = useState(false);\n\n const handleOnClick = () => {\n if (!isExpanded && onExpand) {\n onExpand();\n }\n if (isExpanded && onCollapse) {\n onCollapse();\n }\n\n setIsExpanded(!isExpanded);\n };\n\n return (\n <Box\n as=\"li\"\n className={styles.accordionItem}\n testId={`${testId}-${id}`}\n {...otherProps}\n ref={ref}\n >\n <AccordionHeader\n onClick={handleOnClick}\n isExpanded={isExpanded}\n element={titleElement}\n ariaId={id}\n align={align}\n >\n {title}\n </AccordionHeader>\n\n <AccordionPanel ariaId={id} isExpanded={isExpanded}>\n {children}\n </AccordionPanel>\n </Box>\n );\n};\n\nexport const AccordionItem = React.forwardRef(_AccordionItem);\n","import React from 'react';\nimport { Subheading } from '@contentful/f36-typography';\nimport type { HeadingElement } from '@contentful/f36-typography';\nimport { ChevronDownTrimmedIcon } from '@contentful/f36-icons';\nimport type { CommonProps } from '@contentful/f36-core';\n\nimport { getAccordionHeaderStyles } from './AccordionHeader.styles';\n\nexport interface AccordionHeaderProps extends CommonProps {\n /**\n * Child nodes to be rendered in the component\n */\n children?: React.ReactNode;\n /**\n * The function that will be called once the user clicks on the accordion title\n */\n onClick: VoidFunction;\n /**\n * A boolean that tells if the accordion should be expanded or collapsed\n */\n isExpanded: boolean;\n /**\n * An unique id that is necessary for the aria roles and properties\n */\n ariaId: string;\n /**\n * The heading element that will be used by the Subheading component\n */\n element?: HeadingElement;\n /**\n * Specify the alignment of the chevron inside the accordion header\n */\n align?: 'start' | 'end';\n}\n\nexport const AccordionHeader = ({\n children,\n onClick,\n isExpanded = false,\n ariaId,\n element = 'h2',\n align = 'end',\n testId = 'cf-ui-accordion-header',\n ...rest\n}: AccordionHeaderProps) => {\n const styles = getAccordionHeaderStyles({ align, isExpanded });\n\n return (\n <Subheading {...rest} testId={testId} marginBottom=\"none\" as={element}>\n <button\n type=\"button\"\n aria-expanded={isExpanded}\n aria-controls={`accordion-panel--${ariaId}`}\n id={`accordion--${ariaId}`}\n className={styles.accordionHeader}\n onClick={onClick}\n >\n <ChevronDownTrimmedIcon\n className={styles.accordionHeaderIcon}\n variant=\"secondary\"\n />\n {children}\n </button>\n </Subheading>\n );\n};\n","import { css, cx } from 'emotion';\nimport tokens from '@contentful/f36-tokens';\n\ntype StyleProps = {\n align: 'start' | 'end';\n isExpanded: boolean;\n};\n\nconst getHeaderStyles = ({ align }: StyleProps) =>\n cx(\n css({\n display: 'flex',\n flexDirection: 'row',\n alignItems: 'center',\n border: '0',\n padding: tokens.spacingM,\n backgroundColor: 'transparent',\n fontFamily: tokens.fontStackPrimary,\n fontSize: tokens.fontSizeL,\n fontWeight: tokens.fontWeightDemiBold,\n lineHeight: tokens.lineHeightL,\n color: tokens.gray800,\n width: '100%',\n minWidth: '9px',\n cursor: 'pointer',\n transition: `background-color ${tokens.transitionDurationDefault} ${tokens.transitionEasingDefault}`,\n '&:hover': {\n backgroundColor: tokens.gray100,\n },\n '&:focus': {\n outline: 'none',\n backgroundColor: tokens.gray100,\n },\n }),\n align === 'end' &&\n css({\n flexDirection: 'row-reverse',\n justifyContent: 'space-between',\n }),\n );\n\nconst getIconStyles = ({ align, isExpanded }: StyleProps) =>\n cx(\n css({\n transform: 'rotate(0deg)',\n transition: `transform ${tokens.transitionDurationDefault} ${tokens.transitionEasingDefault}`,\n }),\n align === 'end' && css({ marginLeft: tokens.spacingM }),\n align === 'start' && css({ marginRight: tokens.spacingM }),\n isExpanded &&\n css({\n transform: 'rotate(180deg)',\n }),\n );\n\nexport const getAccordionHeaderStyles = (props: StyleProps) => ({\n accordionHeader: getHeaderStyles(props),\n accordionHeaderIcon: getIconStyles(props),\n});\n","import React, { FC, useLayoutEffect, useRef } from 'react';\nimport tokens from '@contentful/f36-tokens';\nimport type { CommonProps } from '@contentful/f36-core';\nimport { Box } from '@contentful/f36-core';\n\nimport { getAccordionPanelStyles } from './AccordionPanel.styles';\n\nexport interface AccordionPanelProps extends CommonProps {\n /**\n * Child nodes to be rendered in the component\n */\n children?: React.ReactNode;\n /**\n * A boolean that tells if the accordion should be expanded or collapsed\n */\n isExpanded: boolean;\n /**\n * An unique id that is necessary for the aria roles and properties\n */\n ariaId: string;\n}\n\nexport const AccordionPanel: FC<AccordionPanelProps> = ({\n children,\n isExpanded = false,\n ariaId,\n testId = 'cf-ui-accordion-panel',\n ...rest\n}: AccordionPanelProps) => {\n const styles = getAccordionPanelStyles();\n const panelEl = useRef<HTMLDivElement>(null);\n\n const getPanelContentHeight = () => {\n const { current } = panelEl;\n\n if (!current) {\n // to keep the function return type as string only and\n // not overcomplicate things with non-nullable checks\n return '0px';\n }\n\n return `${current.scrollHeight / parseInt(tokens.fontBaseDefault, 10)}rem`; // converting height pixels into rem\n };\n\n useLayoutEffect(() => {\n const { current } = panelEl;\n\n const handleTransitionEnd = () => {\n if (current) {\n current.style.height = 'auto';\n }\n };\n\n if (current) {\n if (isExpanded) {\n current.addEventListener('transitionend', handleTransitionEnd);\n\n requestAnimationFrame(function () {\n current.style.height = '0px';\n\n requestAnimationFrame(function () {\n current.style.height = getPanelContentHeight();\n });\n });\n } else {\n requestAnimationFrame(function () {\n current.style.height = getPanelContentHeight();\n\n requestAnimationFrame(function () {\n current.style.height = '0px';\n });\n });\n }\n }\n\n return () => {\n if (current) {\n current.removeEventListener('transitionend', handleTransitionEnd);\n }\n };\n }, [isExpanded]);\n\n return (\n <Box\n {...rest}\n testId={testId}\n id={`accordion-panel--${ariaId}`}\n role=\"region\"\n aria-labelledby={`accordion--${ariaId}`}\n aria-hidden={!isExpanded}\n className={styles.accordionPanel}\n ref={panelEl}\n >\n <div className={styles.accordionPanelContent}>{children}</div>\n </Box>\n );\n};\n","import { css } from 'emotion';\nimport tokens from '@contentful/f36-tokens';\n\nexport const getAccordionPanelStyles = () => {\n return {\n accordionPanel: css({\n boxSizing: 'border-box',\n overflow: 'hidden',\n height: '0',\n transition: `height ${tokens.transitionDurationDefault} ${tokens.transitionEasingDefault}, padding ${tokens.transitionDurationDefault} ${tokens.transitionEasingDefault}`,\n }),\n accordionPanelContent: css({\n width: '100%',\n padding: `${tokens.spacingXs} ${tokens.spacingM} ${tokens.spacingM}`,\n }),\n };\n};\n","import { css, cx } from 'emotion';\nimport tokens from '@contentful/f36-tokens';\n\nexport const getAccordionItemStyles = ({\n className,\n}: {\n className?: string;\n}) => ({\n accordionItem: cx(\n css({\n padding: '0',\n margin: '0',\n borderBottom: `1px solid ${tokens.colorElementMid}`,\n '&:first-child': {\n borderTop: `1px solid ${tokens.colorElementMid}`,\n },\n }),\n className,\n ),\n});\n"],"names":["Accordion","AccordionProps","AccordionHeader","AccordionHeaderProps","AccordionItem","AccordionItemProps","AccordionPanel","AccordionPanelProps","OriginalAccordion","CompoundAccordion","Item","React","Box","CommonProps","getAccordionStyles","align","children","ReactNode","_Accordion","className","testId","otherProps","ref","Ref","HTMLUListElement","styles","accordion","Children","map","child","isValidElement","cloneElement","forwardRef","tokens","boxSizing","padding","margin","listStyle","borderTop","gray300","useState","HeadingElement","useId","getAccordionItemStyles","title","titleElement","onExpand","Function","onCollapse","_AccordionItem","HTMLLIElement","id","isExpanded","setIsExpanded","handleOnClick","accordionItem","Subheading","ChevronDownTrimmedIcon","getAccordionHeaderStyles","onClick","VoidFunction","ariaId","element","rest","accordionHeader","accordionHeaderIcon","StyleProps","getHeaderStyles","display","flexDirection","alignItems","border","spacingM","backgroundColor","fontFamily","fontStackPrimary","fontSize","fontSizeL","fontWeight","fontWeightDemiBold","lineHeight","lineHeightL","color","gray800","width","minWidth","cursor","transition","transitionDurationDefault","transitionEasingDefault","gray100","outline","getIconStyles","transform","marginLeft","marginRight","props","FC","useLayoutEffect","useRef","getAccordionPanelStyles","panelEl","HTMLDivElement","getPanelContentHeight","current","scrollHeight","parseInt","fontBaseDefault","handleTransitionEnd","style","height","addEventListener","requestAnimationFrame","removeEventListener","accordionPanel","accordionPanelContent","overflow","spacingXs","borderBottom","colorElementMid"],"version":3,"file":"main.js.map"}
|
|
1
|
+
{"mappings":"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","sources":["packages/components/accordion/src/index.ts","packages/components/accordion/src/CompoundAccordion.tsx","packages/components/accordion/src/Accordion.tsx","packages/components/accordion/src/Accordion.styles.ts","packages/components/accordion/src/AccordionItem/AccordionItem.tsx","packages/components/accordion/src/AccordionHeader/AccordionHeader.tsx","packages/components/accordion/src/AccordionHeader/AccordionHeader.styles.ts","packages/components/accordion/src/AccordionPanel/AccordionPanel.tsx","packages/components/accordion/src/AccordionPanel/AccordionPanel.styles.ts","packages/components/accordion/src/AccordionItem/AccordionItem.styles.ts"],"sourcesContent":["export { Accordion } from './CompoundAccordion';\nexport type { AccordionProps } from './Accordion';\nexport { AccordionHeader } from './AccordionHeader/AccordionHeader';\nexport type { AccordionHeaderProps } from './AccordionHeader/AccordionHeader';\nexport { AccordionItem } from './AccordionItem/AccordionItem';\nexport type { AccordionItemProps } from './AccordionItem/AccordionItem';\nexport { AccordionPanel } from './AccordionPanel/AccordionPanel';\nexport type { AccordionPanelProps } from './AccordionPanel/AccordionPanel';\n","import { Accordion as OriginalAccordion } from './Accordion';\nimport { AccordionItem } from './AccordionItem/AccordionItem';\n\ntype CompoundAccordion = typeof OriginalAccordion & {\n Item: typeof AccordionItem;\n};\n\nexport const Accordion = OriginalAccordion as CompoundAccordion;\nAccordion.Item = AccordionItem;\n","import React from 'react';\nimport { Box } from '@contentful/f36-core';\nimport type { CommonProps, ExpandProps } from '@contentful/f36-core';\n\nimport { getAccordionStyles } from './Accordion.styles';\n\nexport interface AccordionProps extends CommonProps {\n /**\n * Specify the alignment of the chevron inside the accordion header\n * @default end\n */\n align?: 'start' | 'end';\n /**\n * Child nodes to be rendered in the component\n */\n children?: React.ReactNode;\n}\n\nconst _Accordion = (\n {\n align = 'end',\n children,\n className,\n testId = 'cf-ui-accordion',\n ...otherProps\n }: ExpandProps<AccordionProps>,\n ref: React.Ref<HTMLUListElement>,\n) => {\n const styles = getAccordionStyles({ className });\n return (\n <Box\n as=\"ul\"\n className={styles.accordion}\n testId={testId}\n {...otherProps}\n ref={ref}\n >\n {React.Children.map(children, (child) => {\n if (React.isValidElement(child)) {\n return React.cloneElement(child, {\n align,\n });\n }\n return child;\n })}\n </Box>\n );\n};\n\nexport const Accordion = React.forwardRef(_Accordion);\n","import { css, cx } from 'emotion';\nimport tokens from '@contentful/f36-tokens';\n\nexport const getAccordionStyles = ({ className }: { className?: string }) => ({\n accordion: cx(\n css({\n boxSizing: 'border-box',\n padding: '0',\n margin: '0',\n listStyle: 'none',\n '&:first-child': {\n borderTop: `1px solid ${tokens.gray300}`,\n },\n }),\n className,\n ),\n});\n","import React, { useState } from 'react';\nimport type { HeadingElement } from '@contentful/f36-typography';\nimport { useId, Box } from '@contentful/f36-core';\n\nimport { AccordionHeader } from '../AccordionHeader/AccordionHeader';\nimport { AccordionPanel } from '../AccordionPanel/AccordionPanel';\nimport type { CommonProps, ExpandProps } from '@contentful/f36-core';\n\nimport { getAccordionItemStyles } from './AccordionItem.styles';\n\nexport interface AccordionItemProps extends CommonProps {\n /**\n * The accordion title\n */\n title?: React.ReactNode;\n /**\n * The heading element that will be used by the AccordionHeader\n */\n titleElement?: HeadingElement;\n /**\n * The children of the AccordionItem are in fact the content of the accordion\n */\n children?: React.ReactNode;\n /**\n * A function to be called when the accordion item is opened\n */\n onExpand?: Function;\n /**\n * A function to be called when the accordion item is closed\n */\n onCollapse?: Function;\n /**\n * Specify the alignment of the chevron inside the accordion header\n */\n align?: 'start' | 'end';\n}\n\nconst _AccordionItem = (\n {\n title = 'Accordion Title',\n titleElement = 'h2',\n testId = 'cf-ui-accordion-item',\n onExpand,\n onCollapse,\n children,\n align = 'end',\n className,\n ...otherProps\n }: ExpandProps<AccordionItemProps>,\n ref: React.Ref<HTMLLIElement>,\n) => {\n const styles = getAccordionItemStyles({ className });\n const id = useId();\n const [isExpanded, setIsExpanded] = useState(false);\n\n const handleOnClick = () => {\n if (!isExpanded && onExpand) {\n onExpand();\n }\n if (isExpanded && onCollapse) {\n onCollapse();\n }\n\n setIsExpanded(!isExpanded);\n };\n\n return (\n <Box\n as=\"li\"\n className={styles.accordionItem}\n testId={`${testId}-${id}`}\n {...otherProps}\n ref={ref}\n >\n <AccordionHeader\n onClick={handleOnClick}\n isExpanded={isExpanded}\n element={titleElement}\n ariaId={id}\n align={align}\n >\n {title}\n </AccordionHeader>\n\n <AccordionPanel ariaId={id} isExpanded={isExpanded}>\n {children}\n </AccordionPanel>\n </Box>\n );\n};\n\nexport const AccordionItem = React.forwardRef(_AccordionItem);\n","import React from 'react';\nimport { Subheading } from '@contentful/f36-typography';\nimport type { HeadingElement } from '@contentful/f36-typography';\nimport { ChevronDownTrimmedIcon } from '@contentful/f36-icons';\nimport type { CommonProps } from '@contentful/f36-core';\n\nimport { getAccordionHeaderStyles } from './AccordionHeader.styles';\n\nexport interface AccordionHeaderProps extends CommonProps {\n /**\n * Child nodes to be rendered in the component\n */\n children?: React.ReactNode;\n /**\n * The function that will be called once the user clicks on the accordion title\n */\n onClick: VoidFunction;\n /**\n * A boolean that tells if the accordion should be expanded or collapsed\n */\n isExpanded: boolean;\n /**\n * An unique id that is necessary for the aria roles and properties\n */\n ariaId: string;\n /**\n * The heading element that will be used by the Subheading component\n */\n element?: HeadingElement;\n /**\n * Specify the alignment of the chevron inside the accordion header\n */\n align?: 'start' | 'end';\n}\n\nexport const AccordionHeader = ({\n children,\n onClick,\n isExpanded = false,\n ariaId,\n element = 'h2',\n align = 'end',\n testId = 'cf-ui-accordion-header',\n ...rest\n}: AccordionHeaderProps) => {\n const styles = getAccordionHeaderStyles({ align, isExpanded });\n\n return (\n <Subheading {...rest} testId={testId} marginBottom=\"none\" as={element}>\n <button\n type=\"button\"\n aria-expanded={isExpanded}\n aria-controls={`accordion-panel--${ariaId}`}\n id={`accordion--${ariaId}`}\n className={styles.accordionHeader}\n onClick={onClick}\n >\n <ChevronDownTrimmedIcon\n className={styles.accordionHeaderIcon}\n variant=\"secondary\"\n />\n {children}\n </button>\n </Subheading>\n );\n};\n","import { css, cx } from 'emotion';\nimport tokens from '@contentful/f36-tokens';\n\ntype StyleProps = {\n align: 'start' | 'end';\n isExpanded: boolean;\n};\n\nconst getHeaderStyles = ({ align }: StyleProps) =>\n cx(\n css({\n display: 'flex',\n flexDirection: 'row',\n alignItems: 'center',\n border: '0',\n padding: tokens.spacingM,\n backgroundColor: 'transparent',\n fontFamily: tokens.fontStackPrimary,\n fontSize: tokens.fontSizeL,\n fontWeight: tokens.fontWeightDemiBold,\n lineHeight: tokens.lineHeightL,\n color: tokens.gray800,\n width: '100%',\n minWidth: '9px',\n cursor: 'pointer',\n transition: `background-color ${tokens.transitionDurationDefault} ${tokens.transitionEasingDefault}`,\n '&:hover': {\n backgroundColor: tokens.gray100,\n },\n '&:focus': {\n outline: 'none',\n backgroundColor: tokens.gray100,\n },\n }),\n align === 'end' &&\n css({\n flexDirection: 'row-reverse',\n justifyContent: 'space-between',\n }),\n );\n\nconst getIconStyles = ({ align, isExpanded }: StyleProps) =>\n cx(\n css({\n transform: 'rotate(0deg)',\n transition: `transform ${tokens.transitionDurationDefault} ${tokens.transitionEasingDefault}`,\n }),\n align === 'end' && css({ marginLeft: tokens.spacingM }),\n align === 'start' && css({ marginRight: tokens.spacingM }),\n isExpanded &&\n css({\n transform: 'rotate(180deg)',\n }),\n );\n\nexport const getAccordionHeaderStyles = (props: StyleProps) => ({\n accordionHeader: getHeaderStyles(props),\n accordionHeaderIcon: getIconStyles(props),\n});\n","import React, { FC, useLayoutEffect, useRef } from 'react';\nimport tokens from '@contentful/f36-tokens';\nimport type { CommonProps, ExpandProps } from '@contentful/f36-core';\nimport { Box } from '@contentful/f36-core';\n\nimport { getAccordionPanelStyles } from './AccordionPanel.styles';\n\nexport interface AccordionPanelProps extends CommonProps {\n /**\n * Child nodes to be rendered in the component\n */\n children?: React.ReactNode;\n /**\n * A boolean that tells if the accordion should be expanded or collapsed\n */\n isExpanded: boolean;\n /**\n * An unique id that is necessary for the aria roles and properties\n */\n ariaId: string;\n}\n\nexport const AccordionPanel: FC<ExpandProps<AccordionPanelProps>> = ({\n children,\n isExpanded = false,\n ariaId,\n testId = 'cf-ui-accordion-panel',\n ...rest\n}: AccordionPanelProps) => {\n const styles = getAccordionPanelStyles();\n const panelEl = useRef<HTMLDivElement>(null);\n\n const getPanelContentHeight = () => {\n const { current } = panelEl;\n\n if (!current) {\n // to keep the function return type as string only and\n // not overcomplicate things with non-nullable checks\n return '0px';\n }\n\n return `${current.scrollHeight / parseInt(tokens.fontBaseDefault, 10)}rem`; // converting height pixels into rem\n };\n\n useLayoutEffect(() => {\n const { current } = panelEl;\n\n const handleTransitionEnd = () => {\n if (current) {\n current.style.height = 'auto';\n }\n };\n\n if (current) {\n if (isExpanded) {\n current.addEventListener('transitionend', handleTransitionEnd);\n\n requestAnimationFrame(function () {\n current.style.height = '0px';\n\n requestAnimationFrame(function () {\n current.style.height = getPanelContentHeight();\n });\n });\n } else {\n requestAnimationFrame(function () {\n current.style.height = getPanelContentHeight();\n\n requestAnimationFrame(function () {\n current.style.height = '0px';\n });\n });\n }\n }\n\n return () => {\n if (current) {\n current.removeEventListener('transitionend', handleTransitionEnd);\n }\n };\n }, [isExpanded]);\n\n return (\n <Box\n {...rest}\n testId={testId}\n id={`accordion-panel--${ariaId}`}\n role=\"region\"\n aria-labelledby={`accordion--${ariaId}`}\n aria-hidden={!isExpanded}\n className={styles.accordionPanel}\n ref={panelEl}\n >\n <div className={styles.accordionPanelContent}>{children}</div>\n </Box>\n );\n};\n","import { css } from 'emotion';\nimport tokens from '@contentful/f36-tokens';\n\nexport const getAccordionPanelStyles = () => {\n return {\n accordionPanel: css({\n boxSizing: 'border-box',\n overflow: 'hidden',\n height: '0',\n transition: `height ${tokens.transitionDurationDefault} ${tokens.transitionEasingDefault}, padding ${tokens.transitionDurationDefault} ${tokens.transitionEasingDefault}`,\n }),\n accordionPanelContent: css({\n width: '100%',\n padding: `${tokens.spacingXs} ${tokens.spacingM} ${tokens.spacingM}`,\n }),\n };\n};\n","import { css, cx } from 'emotion';\nimport tokens from '@contentful/f36-tokens';\n\nexport const getAccordionItemStyles = ({\n className,\n}: {\n className?: string;\n}) => ({\n accordionItem: cx(\n css({\n padding: '0',\n margin: '0',\n borderBottom: `1px solid ${tokens.colorElementMid}`,\n '&:first-child': {\n borderTop: `1px solid ${tokens.colorElementMid}`,\n },\n }),\n className,\n ),\n});\n"],"names":["Accordion","AccordionProps","AccordionHeader","AccordionHeaderProps","AccordionItem","AccordionItemProps","AccordionPanel","AccordionPanelProps","OriginalAccordion","CompoundAccordion","Item","React","Box","CommonProps","ExpandProps","getAccordionStyles","align","children","ReactNode","_Accordion","className","testId","otherProps","ref","Ref","HTMLUListElement","styles","accordion","Children","map","child","isValidElement","cloneElement","forwardRef","tokens","boxSizing","padding","margin","listStyle","borderTop","gray300","useState","HeadingElement","useId","getAccordionItemStyles","title","titleElement","onExpand","Function","onCollapse","_AccordionItem","HTMLLIElement","id","isExpanded","setIsExpanded","handleOnClick","accordionItem","Subheading","ChevronDownTrimmedIcon","getAccordionHeaderStyles","onClick","VoidFunction","ariaId","element","rest","accordionHeader","accordionHeaderIcon","StyleProps","getHeaderStyles","display","flexDirection","alignItems","border","spacingM","backgroundColor","fontFamily","fontStackPrimary","fontSize","fontSizeL","fontWeight","fontWeightDemiBold","lineHeight","lineHeightL","color","gray800","width","minWidth","cursor","transition","transitionDurationDefault","transitionEasingDefault","gray100","outline","getIconStyles","transform","marginLeft","marginRight","props","FC","useLayoutEffect","useRef","getAccordionPanelStyles","panelEl","HTMLDivElement","getPanelContentHeight","current","scrollHeight","parseInt","fontBaseDefault","handleTransitionEnd","style","height","addEventListener","requestAnimationFrame","removeEventListener","accordionPanel","accordionPanelContent","overflow","spacingXs","borderBottom","colorElementMid"],"version":3,"file":"main.js.map"}
|
package/dist/module.js
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import $jACei$react, {useState as $jACei$useState, useRef as $jACei$useRef, useLayoutEffect as $jACei$useLayoutEffect} from "react";
|
|
2
2
|
import {Box as $jACei$Box, useId as $jACei$useId} from "@contentful/f36-core";
|
|
3
|
+
import {jsx as $jACei$jsx, jsxs as $jACei$jsxs} from "react/jsx-runtime";
|
|
3
4
|
import {cx as $jACei$cx, css as $jACei$css} from "emotion";
|
|
4
5
|
import $jACei$contentfulf36tokens from "@contentful/f36-tokens";
|
|
5
6
|
import {Subheading as $jACei$Subheading} from "@contentful/f36-typography";
|
|
@@ -10,6 +11,7 @@ import {ChevronDownTrimmedIcon as $jACei$ChevronDownTrimmedIcon} from "@contentf
|
|
|
10
11
|
|
|
11
12
|
|
|
12
13
|
|
|
14
|
+
|
|
13
15
|
const $d678e0ec669f4067$export$af90c4d6702a6ca7 = ({ className: className })=>({
|
|
14
16
|
accordion: $jACei$cx(/*#__PURE__*/ $jACei$css({
|
|
15
17
|
boxSizing: 'border-box',
|
|
@@ -28,18 +30,19 @@ const $a517c4a963657a24$var$_Accordion = ({ align: align = 'end' , children: chi
|
|
|
28
30
|
const styles = $d678e0ec669f4067$export$af90c4d6702a6ca7({
|
|
29
31
|
className: className
|
|
30
32
|
});
|
|
31
|
-
return(/*#__PURE__*/ $jACei$
|
|
33
|
+
return(/*#__PURE__*/ $jACei$jsx($jACei$Box, {
|
|
32
34
|
as: "ul",
|
|
33
35
|
className: styles.accordion,
|
|
34
36
|
testId: testId,
|
|
35
37
|
...otherProps,
|
|
36
|
-
ref: ref
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
38
|
+
ref: ref,
|
|
39
|
+
children: $jACei$react.Children.map(children, (child)=>{
|
|
40
|
+
if (/*#__PURE__*/ $jACei$react.isValidElement(child)) return(/*#__PURE__*/ $jACei$react.cloneElement(child, {
|
|
41
|
+
align: align
|
|
42
|
+
}));
|
|
43
|
+
return child;
|
|
44
|
+
})
|
|
45
|
+
}));
|
|
43
46
|
};
|
|
44
47
|
const $a517c4a963657a24$export$a766cd26d0d69044 = /*#__PURE__*/ $jACei$react.forwardRef($a517c4a963657a24$var$_Accordion);
|
|
45
48
|
|
|
@@ -52,6 +55,8 @@ const $a517c4a963657a24$export$a766cd26d0d69044 = /*#__PURE__*/ $jACei$react.for
|
|
|
52
55
|
|
|
53
56
|
|
|
54
57
|
|
|
58
|
+
|
|
59
|
+
|
|
55
60
|
const $d95c2a37e890ef38$var$getHeaderStyles = ({ align: align })=>$jACei$cx(/*#__PURE__*/ $jACei$css({
|
|
56
61
|
display: 'flex',
|
|
57
62
|
flexDirection: 'row',
|
|
@@ -104,22 +109,27 @@ const $01f1d19e673d71a7$export$5e3e5deaaf81ee41 = ({ children: children , onClic
|
|
|
104
109
|
align: align,
|
|
105
110
|
isExpanded: isExpanded
|
|
106
111
|
});
|
|
107
|
-
return(/*#__PURE__*/ $jACei$
|
|
112
|
+
return(/*#__PURE__*/ $jACei$jsx($jACei$Subheading, {
|
|
108
113
|
...rest,
|
|
109
114
|
testId: testId,
|
|
110
115
|
marginBottom: "none",
|
|
111
|
-
as: element
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
116
|
+
as: element,
|
|
117
|
+
children: /*#__PURE__*/ $jACei$jsxs("button", {
|
|
118
|
+
type: "button",
|
|
119
|
+
"aria-expanded": isExpanded,
|
|
120
|
+
"aria-controls": `accordion-panel--${ariaId}`,
|
|
121
|
+
id: `accordion--${ariaId}`,
|
|
122
|
+
className: styles.accordionHeader,
|
|
123
|
+
onClick: onClick,
|
|
124
|
+
children: [
|
|
125
|
+
/*#__PURE__*/ $jACei$jsx($jACei$ChevronDownTrimmedIcon, {
|
|
126
|
+
className: styles.accordionHeaderIcon,
|
|
127
|
+
variant: "secondary"
|
|
128
|
+
}),
|
|
129
|
+
children
|
|
130
|
+
]
|
|
131
|
+
})
|
|
132
|
+
}));
|
|
123
133
|
};
|
|
124
134
|
|
|
125
135
|
|
|
@@ -128,6 +138,7 @@ const $01f1d19e673d71a7$export$5e3e5deaaf81ee41 = ({ children: children , onClic
|
|
|
128
138
|
|
|
129
139
|
|
|
130
140
|
|
|
141
|
+
|
|
131
142
|
const $3ba27b87c168e14d$export$2db50514b4b2c1ee = ()=>{
|
|
132
143
|
return {
|
|
133
144
|
accordionPanel: /*#__PURE__*/ $jACei$css({
|
|
@@ -181,7 +192,7 @@ const $0c5bba33d6cffbcc$export$7cad6f17fd6e117b = ({ children: children , isExpa
|
|
|
181
192
|
}, [
|
|
182
193
|
isExpanded
|
|
183
194
|
]);
|
|
184
|
-
return(/*#__PURE__*/ $jACei$
|
|
195
|
+
return(/*#__PURE__*/ $jACei$jsx($jACei$Box, {
|
|
185
196
|
...rest,
|
|
186
197
|
testId: testId,
|
|
187
198
|
id: `accordion-panel--${ariaId}`,
|
|
@@ -189,10 +200,12 @@ const $0c5bba33d6cffbcc$export$7cad6f17fd6e117b = ({ children: children , isExpa
|
|
|
189
200
|
"aria-labelledby": `accordion--${ariaId}`,
|
|
190
201
|
"aria-hidden": !isExpanded,
|
|
191
202
|
className: styles.accordionPanel,
|
|
192
|
-
ref: panelEl
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
203
|
+
ref: panelEl,
|
|
204
|
+
children: /*#__PURE__*/ $jACei$jsx("div", {
|
|
205
|
+
className: styles.accordionPanelContent,
|
|
206
|
+
children: children
|
|
207
|
+
})
|
|
208
|
+
}));
|
|
196
209
|
};
|
|
197
210
|
|
|
198
211
|
|
|
@@ -223,22 +236,28 @@ const $b6120c67649da348$var$_AccordionItem = ({ title: title = 'Accordion Title'
|
|
|
223
236
|
if (isExpanded && onCollapse) onCollapse();
|
|
224
237
|
setIsExpanded(!isExpanded);
|
|
225
238
|
};
|
|
226
|
-
return(/*#__PURE__*/ $jACei$
|
|
239
|
+
return(/*#__PURE__*/ $jACei$jsxs($jACei$Box, {
|
|
227
240
|
as: "li",
|
|
228
241
|
className: styles.accordionItem,
|
|
229
242
|
testId: `${testId}-${id}`,
|
|
230
243
|
...otherProps,
|
|
231
|
-
ref: ref
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
|
|
244
|
+
ref: ref,
|
|
245
|
+
children: [
|
|
246
|
+
/*#__PURE__*/ $jACei$jsx($01f1d19e673d71a7$export$5e3e5deaaf81ee41, {
|
|
247
|
+
onClick: handleOnClick,
|
|
248
|
+
isExpanded: isExpanded,
|
|
249
|
+
element: titleElement,
|
|
250
|
+
ariaId: id,
|
|
251
|
+
align: align,
|
|
252
|
+
children: title
|
|
253
|
+
}),
|
|
254
|
+
/*#__PURE__*/ $jACei$jsx($0c5bba33d6cffbcc$export$7cad6f17fd6e117b, {
|
|
255
|
+
ariaId: id,
|
|
256
|
+
isExpanded: isExpanded,
|
|
257
|
+
children: children
|
|
258
|
+
})
|
|
259
|
+
]
|
|
260
|
+
}));
|
|
242
261
|
};
|
|
243
262
|
const $b6120c67649da348$export$d99097c13d4dac9f = /*#__PURE__*/ $jACei$react.forwardRef($b6120c67649da348$var$_AccordionItem);
|
|
244
263
|
|
package/dist/module.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"mappings":"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","sources":["packages/components/accordion/src/index.ts","packages/components/accordion/src/CompoundAccordion.tsx","packages/components/accordion/src/Accordion.tsx","packages/components/accordion/src/Accordion.styles.ts","packages/components/accordion/src/AccordionItem/AccordionItem.tsx","packages/components/accordion/src/AccordionHeader/AccordionHeader.tsx","packages/components/accordion/src/AccordionHeader/AccordionHeader.styles.ts","packages/components/accordion/src/AccordionPanel/AccordionPanel.tsx","packages/components/accordion/src/AccordionPanel/AccordionPanel.styles.ts","packages/components/accordion/src/AccordionItem/AccordionItem.styles.ts"],"sourcesContent":["export { Accordion } from './CompoundAccordion';\nexport type { AccordionProps } from './Accordion';\nexport { AccordionHeader } from './AccordionHeader/AccordionHeader';\nexport type { AccordionHeaderProps } from './AccordionHeader/AccordionHeader';\nexport { AccordionItem } from './AccordionItem/AccordionItem';\nexport type { AccordionItemProps } from './AccordionItem/AccordionItem';\nexport { AccordionPanel } from './AccordionPanel/AccordionPanel';\nexport type { AccordionPanelProps } from './AccordionPanel/AccordionPanel';\n","import { Accordion as OriginalAccordion } from './Accordion';\nimport { AccordionItem } from './AccordionItem/AccordionItem';\n\ntype CompoundAccordion = typeof OriginalAccordion & {\n Item: typeof AccordionItem;\n};\n\nexport const Accordion = OriginalAccordion as CompoundAccordion;\nAccordion.Item = AccordionItem;\n","import React from 'react';\nimport { Box } from '@contentful/f36-core';\nimport type { CommonProps } from '@contentful/f36-core';\n\nimport { getAccordionStyles } from './Accordion.styles';\n\nexport interface AccordionProps extends CommonProps {\n /**\n * Specify the alignment of the chevron inside the accordion header\n * @default end\n */\n align?: 'start' | 'end';\n /**\n * Child nodes to be rendered in the component\n */\n children?: React.ReactNode;\n}\n\nconst _Accordion = (\n {\n align = 'end',\n children,\n className,\n testId = 'cf-ui-accordion',\n ...otherProps\n }: AccordionProps,\n ref: React.Ref<HTMLUListElement>,\n) => {\n const styles = getAccordionStyles({ className });\n return (\n <Box\n as=\"ul\"\n className={styles.accordion}\n testId={testId}\n {...otherProps}\n ref={ref}\n >\n {React.Children.map(children, (child) => {\n if (React.isValidElement(child)) {\n return React.cloneElement(child, {\n align,\n });\n }\n return child;\n })}\n </Box>\n );\n};\n\nexport const Accordion = React.forwardRef(_Accordion);\n","import { css, cx } from 'emotion';\nimport tokens from '@contentful/f36-tokens';\n\nexport const getAccordionStyles = ({ className }: { className?: string }) => ({\n accordion: cx(\n css({\n boxSizing: 'border-box',\n padding: '0',\n margin: '0',\n listStyle: 'none',\n '&:first-child': {\n borderTop: `1px solid ${tokens.gray300}`,\n },\n }),\n className,\n ),\n});\n","import React, { useState } from 'react';\nimport type { HeadingElement } from '@contentful/f36-typography';\nimport { useId, Box } from '@contentful/f36-core';\n\nimport { AccordionHeader } from '../AccordionHeader/AccordionHeader';\nimport { AccordionPanel } from '../AccordionPanel/AccordionPanel';\nimport type { CommonProps } from '@contentful/f36-core';\n\nimport { getAccordionItemStyles } from './AccordionItem.styles';\n\nexport interface AccordionItemProps extends CommonProps {\n /**\n * The accordion title\n */\n title?: React.ReactNode;\n /**\n * The heading element that will be used by the AccordionHeader\n */\n titleElement?: HeadingElement;\n /**\n * The children of the AccordionItem are in fact the content of the accordion\n */\n children?: React.ReactNode;\n /**\n * A function to be called when the accordion item is opened\n */\n onExpand?: Function;\n /**\n * A function to be called when the accordion item is closed\n */\n onCollapse?: Function;\n /**\n * Specify the alignment of the chevron inside the accordion header\n */\n align?: 'start' | 'end';\n}\n\nconst _AccordionItem = (\n {\n title = 'Accordion Title',\n titleElement = 'h2',\n testId = 'cf-ui-accordion-item',\n onExpand,\n onCollapse,\n children,\n align = 'end',\n className,\n ...otherProps\n }: AccordionItemProps,\n ref: React.Ref<HTMLLIElement>,\n) => {\n const styles = getAccordionItemStyles({ className });\n const id = useId();\n const [isExpanded, setIsExpanded] = useState(false);\n\n const handleOnClick = () => {\n if (!isExpanded && onExpand) {\n onExpand();\n }\n if (isExpanded && onCollapse) {\n onCollapse();\n }\n\n setIsExpanded(!isExpanded);\n };\n\n return (\n <Box\n as=\"li\"\n className={styles.accordionItem}\n testId={`${testId}-${id}`}\n {...otherProps}\n ref={ref}\n >\n <AccordionHeader\n onClick={handleOnClick}\n isExpanded={isExpanded}\n element={titleElement}\n ariaId={id}\n align={align}\n >\n {title}\n </AccordionHeader>\n\n <AccordionPanel ariaId={id} isExpanded={isExpanded}>\n {children}\n </AccordionPanel>\n </Box>\n );\n};\n\nexport const AccordionItem = React.forwardRef(_AccordionItem);\n","import React from 'react';\nimport { Subheading } from '@contentful/f36-typography';\nimport type { HeadingElement } from '@contentful/f36-typography';\nimport { ChevronDownTrimmedIcon } from '@contentful/f36-icons';\nimport type { CommonProps } from '@contentful/f36-core';\n\nimport { getAccordionHeaderStyles } from './AccordionHeader.styles';\n\nexport interface AccordionHeaderProps extends CommonProps {\n /**\n * Child nodes to be rendered in the component\n */\n children?: React.ReactNode;\n /**\n * The function that will be called once the user clicks on the accordion title\n */\n onClick: VoidFunction;\n /**\n * A boolean that tells if the accordion should be expanded or collapsed\n */\n isExpanded: boolean;\n /**\n * An unique id that is necessary for the aria roles and properties\n */\n ariaId: string;\n /**\n * The heading element that will be used by the Subheading component\n */\n element?: HeadingElement;\n /**\n * Specify the alignment of the chevron inside the accordion header\n */\n align?: 'start' | 'end';\n}\n\nexport const AccordionHeader = ({\n children,\n onClick,\n isExpanded = false,\n ariaId,\n element = 'h2',\n align = 'end',\n testId = 'cf-ui-accordion-header',\n ...rest\n}: AccordionHeaderProps) => {\n const styles = getAccordionHeaderStyles({ align, isExpanded });\n\n return (\n <Subheading {...rest} testId={testId} marginBottom=\"none\" as={element}>\n <button\n type=\"button\"\n aria-expanded={isExpanded}\n aria-controls={`accordion-panel--${ariaId}`}\n id={`accordion--${ariaId}`}\n className={styles.accordionHeader}\n onClick={onClick}\n >\n <ChevronDownTrimmedIcon\n className={styles.accordionHeaderIcon}\n variant=\"secondary\"\n />\n {children}\n </button>\n </Subheading>\n );\n};\n","import { css, cx } from 'emotion';\nimport tokens from '@contentful/f36-tokens';\n\ntype StyleProps = {\n align: 'start' | 'end';\n isExpanded: boolean;\n};\n\nconst getHeaderStyles = ({ align }: StyleProps) =>\n cx(\n css({\n display: 'flex',\n flexDirection: 'row',\n alignItems: 'center',\n border: '0',\n padding: tokens.spacingM,\n backgroundColor: 'transparent',\n fontFamily: tokens.fontStackPrimary,\n fontSize: tokens.fontSizeL,\n fontWeight: tokens.fontWeightDemiBold,\n lineHeight: tokens.lineHeightL,\n color: tokens.gray800,\n width: '100%',\n minWidth: '9px',\n cursor: 'pointer',\n transition: `background-color ${tokens.transitionDurationDefault} ${tokens.transitionEasingDefault}`,\n '&:hover': {\n backgroundColor: tokens.gray100,\n },\n '&:focus': {\n outline: 'none',\n backgroundColor: tokens.gray100,\n },\n }),\n align === 'end' &&\n css({\n flexDirection: 'row-reverse',\n justifyContent: 'space-between',\n }),\n );\n\nconst getIconStyles = ({ align, isExpanded }: StyleProps) =>\n cx(\n css({\n transform: 'rotate(0deg)',\n transition: `transform ${tokens.transitionDurationDefault} ${tokens.transitionEasingDefault}`,\n }),\n align === 'end' && css({ marginLeft: tokens.spacingM }),\n align === 'start' && css({ marginRight: tokens.spacingM }),\n isExpanded &&\n css({\n transform: 'rotate(180deg)',\n }),\n );\n\nexport const getAccordionHeaderStyles = (props: StyleProps) => ({\n accordionHeader: getHeaderStyles(props),\n accordionHeaderIcon: getIconStyles(props),\n});\n","import React, { FC, useLayoutEffect, useRef } from 'react';\nimport tokens from '@contentful/f36-tokens';\nimport type { CommonProps } from '@contentful/f36-core';\nimport { Box } from '@contentful/f36-core';\n\nimport { getAccordionPanelStyles } from './AccordionPanel.styles';\n\nexport interface AccordionPanelProps extends CommonProps {\n /**\n * Child nodes to be rendered in the component\n */\n children?: React.ReactNode;\n /**\n * A boolean that tells if the accordion should be expanded or collapsed\n */\n isExpanded: boolean;\n /**\n * An unique id that is necessary for the aria roles and properties\n */\n ariaId: string;\n}\n\nexport const AccordionPanel: FC<AccordionPanelProps> = ({\n children,\n isExpanded = false,\n ariaId,\n testId = 'cf-ui-accordion-panel',\n ...rest\n}: AccordionPanelProps) => {\n const styles = getAccordionPanelStyles();\n const panelEl = useRef<HTMLDivElement>(null);\n\n const getPanelContentHeight = () => {\n const { current } = panelEl;\n\n if (!current) {\n // to keep the function return type as string only and\n // not overcomplicate things with non-nullable checks\n return '0px';\n }\n\n return `${current.scrollHeight / parseInt(tokens.fontBaseDefault, 10)}rem`; // converting height pixels into rem\n };\n\n useLayoutEffect(() => {\n const { current } = panelEl;\n\n const handleTransitionEnd = () => {\n if (current) {\n current.style.height = 'auto';\n }\n };\n\n if (current) {\n if (isExpanded) {\n current.addEventListener('transitionend', handleTransitionEnd);\n\n requestAnimationFrame(function () {\n current.style.height = '0px';\n\n requestAnimationFrame(function () {\n current.style.height = getPanelContentHeight();\n });\n });\n } else {\n requestAnimationFrame(function () {\n current.style.height = getPanelContentHeight();\n\n requestAnimationFrame(function () {\n current.style.height = '0px';\n });\n });\n }\n }\n\n return () => {\n if (current) {\n current.removeEventListener('transitionend', handleTransitionEnd);\n }\n };\n }, [isExpanded]);\n\n return (\n <Box\n {...rest}\n testId={testId}\n id={`accordion-panel--${ariaId}`}\n role=\"region\"\n aria-labelledby={`accordion--${ariaId}`}\n aria-hidden={!isExpanded}\n className={styles.accordionPanel}\n ref={panelEl}\n >\n <div className={styles.accordionPanelContent}>{children}</div>\n </Box>\n );\n};\n","import { css } from 'emotion';\nimport tokens from '@contentful/f36-tokens';\n\nexport const getAccordionPanelStyles = () => {\n return {\n accordionPanel: css({\n boxSizing: 'border-box',\n overflow: 'hidden',\n height: '0',\n transition: `height ${tokens.transitionDurationDefault} ${tokens.transitionEasingDefault}, padding ${tokens.transitionDurationDefault} ${tokens.transitionEasingDefault}`,\n }),\n accordionPanelContent: css({\n width: '100%',\n padding: `${tokens.spacingXs} ${tokens.spacingM} ${tokens.spacingM}`,\n }),\n };\n};\n","import { css, cx } from 'emotion';\nimport tokens from '@contentful/f36-tokens';\n\nexport const getAccordionItemStyles = ({\n className,\n}: {\n className?: string;\n}) => ({\n accordionItem: cx(\n css({\n padding: '0',\n margin: '0',\n borderBottom: `1px solid ${tokens.colorElementMid}`,\n '&:first-child': {\n borderTop: `1px solid ${tokens.colorElementMid}`,\n },\n }),\n className,\n ),\n});\n"],"names":["Accordion","AccordionProps","AccordionHeader","AccordionHeaderProps","AccordionItem","AccordionItemProps","AccordionPanel","AccordionPanelProps","OriginalAccordion","CompoundAccordion","Item","React","Box","CommonProps","getAccordionStyles","align","children","ReactNode","_Accordion","className","testId","otherProps","ref","Ref","HTMLUListElement","styles","accordion","Children","map","child","isValidElement","cloneElement","forwardRef","tokens","boxSizing","padding","margin","listStyle","borderTop","gray300","useState","HeadingElement","useId","getAccordionItemStyles","title","titleElement","onExpand","Function","onCollapse","_AccordionItem","HTMLLIElement","id","isExpanded","setIsExpanded","handleOnClick","accordionItem","Subheading","ChevronDownTrimmedIcon","getAccordionHeaderStyles","onClick","VoidFunction","ariaId","element","rest","accordionHeader","accordionHeaderIcon","StyleProps","getHeaderStyles","display","flexDirection","alignItems","border","spacingM","backgroundColor","fontFamily","fontStackPrimary","fontSize","fontSizeL","fontWeight","fontWeightDemiBold","lineHeight","lineHeightL","color","gray800","width","minWidth","cursor","transition","transitionDurationDefault","transitionEasingDefault","gray100","outline","getIconStyles","transform","marginLeft","marginRight","props","FC","useLayoutEffect","useRef","getAccordionPanelStyles","panelEl","HTMLDivElement","getPanelContentHeight","current","scrollHeight","parseInt","fontBaseDefault","handleTransitionEnd","style","height","addEventListener","requestAnimationFrame","removeEventListener","accordionPanel","accordionPanelContent","overflow","spacingXs","borderBottom","colorElementMid"],"version":3,"file":"module.js.map"}
|
|
1
|
+
{"mappings":"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","sources":["packages/components/accordion/src/index.ts","packages/components/accordion/src/CompoundAccordion.tsx","packages/components/accordion/src/Accordion.tsx","packages/components/accordion/src/Accordion.styles.ts","packages/components/accordion/src/AccordionItem/AccordionItem.tsx","packages/components/accordion/src/AccordionHeader/AccordionHeader.tsx","packages/components/accordion/src/AccordionHeader/AccordionHeader.styles.ts","packages/components/accordion/src/AccordionPanel/AccordionPanel.tsx","packages/components/accordion/src/AccordionPanel/AccordionPanel.styles.ts","packages/components/accordion/src/AccordionItem/AccordionItem.styles.ts"],"sourcesContent":["export { Accordion } from './CompoundAccordion';\nexport type { AccordionProps } from './Accordion';\nexport { AccordionHeader } from './AccordionHeader/AccordionHeader';\nexport type { AccordionHeaderProps } from './AccordionHeader/AccordionHeader';\nexport { AccordionItem } from './AccordionItem/AccordionItem';\nexport type { AccordionItemProps } from './AccordionItem/AccordionItem';\nexport { AccordionPanel } from './AccordionPanel/AccordionPanel';\nexport type { AccordionPanelProps } from './AccordionPanel/AccordionPanel';\n","import { Accordion as OriginalAccordion } from './Accordion';\nimport { AccordionItem } from './AccordionItem/AccordionItem';\n\ntype CompoundAccordion = typeof OriginalAccordion & {\n Item: typeof AccordionItem;\n};\n\nexport const Accordion = OriginalAccordion as CompoundAccordion;\nAccordion.Item = AccordionItem;\n","import React from 'react';\nimport { Box } from '@contentful/f36-core';\nimport type { CommonProps, ExpandProps } from '@contentful/f36-core';\n\nimport { getAccordionStyles } from './Accordion.styles';\n\nexport interface AccordionProps extends CommonProps {\n /**\n * Specify the alignment of the chevron inside the accordion header\n * @default end\n */\n align?: 'start' | 'end';\n /**\n * Child nodes to be rendered in the component\n */\n children?: React.ReactNode;\n}\n\nconst _Accordion = (\n {\n align = 'end',\n children,\n className,\n testId = 'cf-ui-accordion',\n ...otherProps\n }: ExpandProps<AccordionProps>,\n ref: React.Ref<HTMLUListElement>,\n) => {\n const styles = getAccordionStyles({ className });\n return (\n <Box\n as=\"ul\"\n className={styles.accordion}\n testId={testId}\n {...otherProps}\n ref={ref}\n >\n {React.Children.map(children, (child) => {\n if (React.isValidElement(child)) {\n return React.cloneElement(child, {\n align,\n });\n }\n return child;\n })}\n </Box>\n );\n};\n\nexport const Accordion = React.forwardRef(_Accordion);\n","import { css, cx } from 'emotion';\nimport tokens from '@contentful/f36-tokens';\n\nexport const getAccordionStyles = ({ className }: { className?: string }) => ({\n accordion: cx(\n css({\n boxSizing: 'border-box',\n padding: '0',\n margin: '0',\n listStyle: 'none',\n '&:first-child': {\n borderTop: `1px solid ${tokens.gray300}`,\n },\n }),\n className,\n ),\n});\n","import React, { useState } from 'react';\nimport type { HeadingElement } from '@contentful/f36-typography';\nimport { useId, Box } from '@contentful/f36-core';\n\nimport { AccordionHeader } from '../AccordionHeader/AccordionHeader';\nimport { AccordionPanel } from '../AccordionPanel/AccordionPanel';\nimport type { CommonProps, ExpandProps } from '@contentful/f36-core';\n\nimport { getAccordionItemStyles } from './AccordionItem.styles';\n\nexport interface AccordionItemProps extends CommonProps {\n /**\n * The accordion title\n */\n title?: React.ReactNode;\n /**\n * The heading element that will be used by the AccordionHeader\n */\n titleElement?: HeadingElement;\n /**\n * The children of the AccordionItem are in fact the content of the accordion\n */\n children?: React.ReactNode;\n /**\n * A function to be called when the accordion item is opened\n */\n onExpand?: Function;\n /**\n * A function to be called when the accordion item is closed\n */\n onCollapse?: Function;\n /**\n * Specify the alignment of the chevron inside the accordion header\n */\n align?: 'start' | 'end';\n}\n\nconst _AccordionItem = (\n {\n title = 'Accordion Title',\n titleElement = 'h2',\n testId = 'cf-ui-accordion-item',\n onExpand,\n onCollapse,\n children,\n align = 'end',\n className,\n ...otherProps\n }: ExpandProps<AccordionItemProps>,\n ref: React.Ref<HTMLLIElement>,\n) => {\n const styles = getAccordionItemStyles({ className });\n const id = useId();\n const [isExpanded, setIsExpanded] = useState(false);\n\n const handleOnClick = () => {\n if (!isExpanded && onExpand) {\n onExpand();\n }\n if (isExpanded && onCollapse) {\n onCollapse();\n }\n\n setIsExpanded(!isExpanded);\n };\n\n return (\n <Box\n as=\"li\"\n className={styles.accordionItem}\n testId={`${testId}-${id}`}\n {...otherProps}\n ref={ref}\n >\n <AccordionHeader\n onClick={handleOnClick}\n isExpanded={isExpanded}\n element={titleElement}\n ariaId={id}\n align={align}\n >\n {title}\n </AccordionHeader>\n\n <AccordionPanel ariaId={id} isExpanded={isExpanded}>\n {children}\n </AccordionPanel>\n </Box>\n );\n};\n\nexport const AccordionItem = React.forwardRef(_AccordionItem);\n","import React from 'react';\nimport { Subheading } from '@contentful/f36-typography';\nimport type { HeadingElement } from '@contentful/f36-typography';\nimport { ChevronDownTrimmedIcon } from '@contentful/f36-icons';\nimport type { CommonProps } from '@contentful/f36-core';\n\nimport { getAccordionHeaderStyles } from './AccordionHeader.styles';\n\nexport interface AccordionHeaderProps extends CommonProps {\n /**\n * Child nodes to be rendered in the component\n */\n children?: React.ReactNode;\n /**\n * The function that will be called once the user clicks on the accordion title\n */\n onClick: VoidFunction;\n /**\n * A boolean that tells if the accordion should be expanded or collapsed\n */\n isExpanded: boolean;\n /**\n * An unique id that is necessary for the aria roles and properties\n */\n ariaId: string;\n /**\n * The heading element that will be used by the Subheading component\n */\n element?: HeadingElement;\n /**\n * Specify the alignment of the chevron inside the accordion header\n */\n align?: 'start' | 'end';\n}\n\nexport const AccordionHeader = ({\n children,\n onClick,\n isExpanded = false,\n ariaId,\n element = 'h2',\n align = 'end',\n testId = 'cf-ui-accordion-header',\n ...rest\n}: AccordionHeaderProps) => {\n const styles = getAccordionHeaderStyles({ align, isExpanded });\n\n return (\n <Subheading {...rest} testId={testId} marginBottom=\"none\" as={element}>\n <button\n type=\"button\"\n aria-expanded={isExpanded}\n aria-controls={`accordion-panel--${ariaId}`}\n id={`accordion--${ariaId}`}\n className={styles.accordionHeader}\n onClick={onClick}\n >\n <ChevronDownTrimmedIcon\n className={styles.accordionHeaderIcon}\n variant=\"secondary\"\n />\n {children}\n </button>\n </Subheading>\n );\n};\n","import { css, cx } from 'emotion';\nimport tokens from '@contentful/f36-tokens';\n\ntype StyleProps = {\n align: 'start' | 'end';\n isExpanded: boolean;\n};\n\nconst getHeaderStyles = ({ align }: StyleProps) =>\n cx(\n css({\n display: 'flex',\n flexDirection: 'row',\n alignItems: 'center',\n border: '0',\n padding: tokens.spacingM,\n backgroundColor: 'transparent',\n fontFamily: tokens.fontStackPrimary,\n fontSize: tokens.fontSizeL,\n fontWeight: tokens.fontWeightDemiBold,\n lineHeight: tokens.lineHeightL,\n color: tokens.gray800,\n width: '100%',\n minWidth: '9px',\n cursor: 'pointer',\n transition: `background-color ${tokens.transitionDurationDefault} ${tokens.transitionEasingDefault}`,\n '&:hover': {\n backgroundColor: tokens.gray100,\n },\n '&:focus': {\n outline: 'none',\n backgroundColor: tokens.gray100,\n },\n }),\n align === 'end' &&\n css({\n flexDirection: 'row-reverse',\n justifyContent: 'space-between',\n }),\n );\n\nconst getIconStyles = ({ align, isExpanded }: StyleProps) =>\n cx(\n css({\n transform: 'rotate(0deg)',\n transition: `transform ${tokens.transitionDurationDefault} ${tokens.transitionEasingDefault}`,\n }),\n align === 'end' && css({ marginLeft: tokens.spacingM }),\n align === 'start' && css({ marginRight: tokens.spacingM }),\n isExpanded &&\n css({\n transform: 'rotate(180deg)',\n }),\n );\n\nexport const getAccordionHeaderStyles = (props: StyleProps) => ({\n accordionHeader: getHeaderStyles(props),\n accordionHeaderIcon: getIconStyles(props),\n});\n","import React, { FC, useLayoutEffect, useRef } from 'react';\nimport tokens from '@contentful/f36-tokens';\nimport type { CommonProps, ExpandProps } from '@contentful/f36-core';\nimport { Box } from '@contentful/f36-core';\n\nimport { getAccordionPanelStyles } from './AccordionPanel.styles';\n\nexport interface AccordionPanelProps extends CommonProps {\n /**\n * Child nodes to be rendered in the component\n */\n children?: React.ReactNode;\n /**\n * A boolean that tells if the accordion should be expanded or collapsed\n */\n isExpanded: boolean;\n /**\n * An unique id that is necessary for the aria roles and properties\n */\n ariaId: string;\n}\n\nexport const AccordionPanel: FC<ExpandProps<AccordionPanelProps>> = ({\n children,\n isExpanded = false,\n ariaId,\n testId = 'cf-ui-accordion-panel',\n ...rest\n}: AccordionPanelProps) => {\n const styles = getAccordionPanelStyles();\n const panelEl = useRef<HTMLDivElement>(null);\n\n const getPanelContentHeight = () => {\n const { current } = panelEl;\n\n if (!current) {\n // to keep the function return type as string only and\n // not overcomplicate things with non-nullable checks\n return '0px';\n }\n\n return `${current.scrollHeight / parseInt(tokens.fontBaseDefault, 10)}rem`; // converting height pixels into rem\n };\n\n useLayoutEffect(() => {\n const { current } = panelEl;\n\n const handleTransitionEnd = () => {\n if (current) {\n current.style.height = 'auto';\n }\n };\n\n if (current) {\n if (isExpanded) {\n current.addEventListener('transitionend', handleTransitionEnd);\n\n requestAnimationFrame(function () {\n current.style.height = '0px';\n\n requestAnimationFrame(function () {\n current.style.height = getPanelContentHeight();\n });\n });\n } else {\n requestAnimationFrame(function () {\n current.style.height = getPanelContentHeight();\n\n requestAnimationFrame(function () {\n current.style.height = '0px';\n });\n });\n }\n }\n\n return () => {\n if (current) {\n current.removeEventListener('transitionend', handleTransitionEnd);\n }\n };\n }, [isExpanded]);\n\n return (\n <Box\n {...rest}\n testId={testId}\n id={`accordion-panel--${ariaId}`}\n role=\"region\"\n aria-labelledby={`accordion--${ariaId}`}\n aria-hidden={!isExpanded}\n className={styles.accordionPanel}\n ref={panelEl}\n >\n <div className={styles.accordionPanelContent}>{children}</div>\n </Box>\n );\n};\n","import { css } from 'emotion';\nimport tokens from '@contentful/f36-tokens';\n\nexport const getAccordionPanelStyles = () => {\n return {\n accordionPanel: css({\n boxSizing: 'border-box',\n overflow: 'hidden',\n height: '0',\n transition: `height ${tokens.transitionDurationDefault} ${tokens.transitionEasingDefault}, padding ${tokens.transitionDurationDefault} ${tokens.transitionEasingDefault}`,\n }),\n accordionPanelContent: css({\n width: '100%',\n padding: `${tokens.spacingXs} ${tokens.spacingM} ${tokens.spacingM}`,\n }),\n };\n};\n","import { css, cx } from 'emotion';\nimport tokens from '@contentful/f36-tokens';\n\nexport const getAccordionItemStyles = ({\n className,\n}: {\n className?: string;\n}) => ({\n accordionItem: cx(\n css({\n padding: '0',\n margin: '0',\n borderBottom: `1px solid ${tokens.colorElementMid}`,\n '&:first-child': {\n borderTop: `1px solid ${tokens.colorElementMid}`,\n },\n }),\n className,\n ),\n});\n"],"names":["Accordion","AccordionProps","AccordionHeader","AccordionHeaderProps","AccordionItem","AccordionItemProps","AccordionPanel","AccordionPanelProps","OriginalAccordion","CompoundAccordion","Item","React","Box","CommonProps","ExpandProps","getAccordionStyles","align","children","ReactNode","_Accordion","className","testId","otherProps","ref","Ref","HTMLUListElement","styles","accordion","Children","map","child","isValidElement","cloneElement","forwardRef","tokens","boxSizing","padding","margin","listStyle","borderTop","gray300","useState","HeadingElement","useId","getAccordionItemStyles","title","titleElement","onExpand","Function","onCollapse","_AccordionItem","HTMLLIElement","id","isExpanded","setIsExpanded","handleOnClick","accordionItem","Subheading","ChevronDownTrimmedIcon","getAccordionHeaderStyles","onClick","VoidFunction","ariaId","element","rest","accordionHeader","accordionHeaderIcon","StyleProps","getHeaderStyles","display","flexDirection","alignItems","border","spacingM","backgroundColor","fontFamily","fontStackPrimary","fontSize","fontSizeL","fontWeight","fontWeightDemiBold","lineHeight","lineHeightL","color","gray800","width","minWidth","cursor","transition","transitionDurationDefault","transitionEasingDefault","gray100","outline","getIconStyles","transform","marginLeft","marginRight","props","FC","useLayoutEffect","useRef","getAccordionPanelStyles","panelEl","HTMLDivElement","getPanelContentHeight","current","scrollHeight","parseInt","fontBaseDefault","handleTransitionEnd","style","height","addEventListener","requestAnimationFrame","removeEventListener","accordionPanel","accordionPanelContent","overflow","spacingXs","borderBottom","colorElementMid"],"version":3,"file":"module.js.map"}
|
package/dist/types.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import React, { FC } from "react";
|
|
2
|
-
import { CommonProps } from "@contentful/f36-core";
|
|
2
|
+
import { CommonProps, ExpandProps } from "@contentful/f36-core";
|
|
3
3
|
import { HeadingElement } from "@contentful/f36-typography";
|
|
4
4
|
export interface AccordionProps extends CommonProps {
|
|
5
5
|
/**
|
|
@@ -12,7 +12,13 @@ export interface AccordionProps extends CommonProps {
|
|
|
12
12
|
*/
|
|
13
13
|
children?: React.ReactNode;
|
|
14
14
|
}
|
|
15
|
-
declare const _Accordion1: React.ForwardRefExoticComponent<
|
|
15
|
+
declare const _Accordion1: React.ForwardRefExoticComponent<{
|
|
16
|
+
align?: 'start' | 'end';
|
|
17
|
+
children?: React.ReactNode;
|
|
18
|
+
className?: string;
|
|
19
|
+
testId?: string;
|
|
20
|
+
style?: React.CSSProperties;
|
|
21
|
+
} & React.RefAttributes<HTMLUListElement>>;
|
|
16
22
|
export interface AccordionHeaderProps extends CommonProps {
|
|
17
23
|
/**
|
|
18
24
|
* Child nodes to be rendered in the component
|
|
@@ -54,7 +60,7 @@ export interface AccordionPanelProps extends CommonProps {
|
|
|
54
60
|
*/
|
|
55
61
|
ariaId: string;
|
|
56
62
|
}
|
|
57
|
-
export const AccordionPanel: FC<AccordionPanelProps
|
|
63
|
+
export const AccordionPanel: FC<ExpandProps<AccordionPanelProps>>;
|
|
58
64
|
export interface AccordionItemProps extends CommonProps {
|
|
59
65
|
/**
|
|
60
66
|
* The accordion title
|
|
@@ -81,7 +87,17 @@ export interface AccordionItemProps extends CommonProps {
|
|
|
81
87
|
*/
|
|
82
88
|
align?: 'start' | 'end';
|
|
83
89
|
}
|
|
84
|
-
export const AccordionItem: React.ForwardRefExoticComponent<
|
|
90
|
+
export const AccordionItem: React.ForwardRefExoticComponent<{
|
|
91
|
+
title?: React.ReactNode;
|
|
92
|
+
titleElement?: HeadingElement;
|
|
93
|
+
children?: React.ReactNode;
|
|
94
|
+
onExpand?: Function;
|
|
95
|
+
onCollapse?: Function;
|
|
96
|
+
align?: 'start' | 'end';
|
|
97
|
+
className?: string;
|
|
98
|
+
testId?: string;
|
|
99
|
+
style?: React.CSSProperties;
|
|
100
|
+
} & React.RefAttributes<HTMLLIElement>>;
|
|
85
101
|
type CompoundAccordion = typeof _Accordion1 & {
|
|
86
102
|
Item: typeof AccordionItem;
|
|
87
103
|
};
|
package/dist/types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"mappings":";;;ACMA,+BAAgC,SAAQ,WAAW;IACjD;;;OAGG;IACH,KAAK,CAAC,EAAE,OAAO,GAAG,KAAK,CAAC;IACxB;;OAEG;IACH,QAAQ,CAAC,EAAE,MAAM,SAAS,CAAC;CAC5B;AAiCD,QAAO,MAAM,
|
|
1
|
+
{"mappings":";;;ACMA,+BAAgC,SAAQ,WAAW;IACjD;;;OAGG;IACH,KAAK,CAAC,EAAE,OAAO,GAAG,KAAK,CAAC;IACxB;;OAEG;IACH,QAAQ,CAAC,EAAE,MAAM,SAAS,CAAC;CAC5B;AAiCD,QAAO,MAAM;YAtCH,OAAO,GAAG,KAAK;eAIZ,MAAM,SAAS;;;;0CAkCyB,CAAC;AEzCtD,qCAAsC,SAAQ,WAAW;IACvD;;OAEG;IACH,QAAQ,CAAC,EAAE,MAAM,SAAS,CAAC;IAC3B;;OAEG;IACH,OAAO,EAAE,YAAY,CAAC;IACtB;;OAEG;IACH,UAAU,EAAE,OAAO,CAAC;IACpB;;OAEG;IACH,MAAM,EAAE,MAAM,CAAC;IACf;;OAEG;IACH,OAAO,CAAC,EAAE,cAAc,CAAC;IACzB;;OAEG;IACH,KAAK,CAAC,EAAE,OAAO,GAAG,KAAK,CAAC;CACzB;AAED,OAAO,MAAM,8FASV,oBAAoB,gBAqBtB,CAAC;AE1DF,oCAAqC,SAAQ,WAAW;IACtD;;OAEG;IACH,QAAQ,CAAC,EAAE,MAAM,SAAS,CAAC;IAC3B;;OAEG;IACH,UAAU,EAAE,OAAO,CAAC;IACpB;;OAEG;IACH,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,OAAO,MAAM,gBAAgB,GAAG,YAAY,mBAAmB,CAAC,CA0E/D,CAAC;AEtFF,mCAAoC,SAAQ,WAAW;IACrD;;OAEG;IACH,KAAK,CAAC,EAAE,MAAM,SAAS,CAAC;IACxB;;OAEG;IACH,YAAY,CAAC,EAAE,cAAc,CAAC;IAC9B;;OAEG;IACH,QAAQ,CAAC,EAAE,MAAM,SAAS,CAAC;IAC3B;;OAEG;IACH,QAAQ,CAAC,EAAE,QAAQ,CAAC;IACpB;;OAEG;IACH,UAAU,CAAC,EAAE,QAAQ,CAAC;IACtB;;OAEG;IACH,KAAK,CAAC,EAAE,OAAO,GAAG,KAAK,CAAC;CACzB;AAwDD,OAAO,MAAM;YA7EH,MAAM,SAAS;mBAIR,cAAc;eAIlB,MAAM,SAAS;eAIf,QAAQ;iBAIN,QAAQ;YAIb,OAAO,GAAG,KAAK;;;;uCAyDoC,CAAC;ACxF9D,yBAAyB,kBAAwB,GAAG;IAClD,IAAI,EAAE,oBAAoB,CAAC;CAC5B,CAAC;AAEF,OAAO,MAAM,4BAAkD,CAAC","sources":["packages/components/accordion/src/src/Accordion.styles.ts","packages/components/accordion/src/src/Accordion.tsx","packages/components/accordion/src/src/AccordionHeader/AccordionHeader.styles.ts","packages/components/accordion/src/src/AccordionHeader/AccordionHeader.tsx","packages/components/accordion/src/src/AccordionPanel/AccordionPanel.styles.ts","packages/components/accordion/src/src/AccordionPanel/AccordionPanel.tsx","packages/components/accordion/src/src/AccordionItem/AccordionItem.styles.ts","packages/components/accordion/src/src/AccordionItem/AccordionItem.tsx","packages/components/accordion/src/src/CompoundAccordion.tsx","packages/components/accordion/src/src/index.ts","packages/components/accordion/src/index.ts"],"sourcesContent":[null,null,null,null,null,null,null,null,null,null,"export { Accordion } from './CompoundAccordion';\nexport type { AccordionProps } from './Accordion';\nexport { AccordionHeader } from './AccordionHeader/AccordionHeader';\nexport type { AccordionHeaderProps } from './AccordionHeader/AccordionHeader';\nexport { AccordionItem } from './AccordionItem/AccordionItem';\nexport type { AccordionItemProps } from './AccordionItem/AccordionItem';\nexport { AccordionPanel } from './AccordionPanel/AccordionPanel';\nexport type { AccordionPanelProps } from './AccordionPanel/AccordionPanel';\n"],"names":[],"version":3,"file":"types.d.ts.map"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@contentful/f36-accordion",
|
|
3
|
-
"version": "4.0.1-beta.
|
|
3
|
+
"version": "4.0.1-beta.2590+bfd9a9a5",
|
|
4
4
|
"description": "Forma 36: Accordion React Component",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"files": [
|
|
@@ -21,10 +21,10 @@
|
|
|
21
21
|
},
|
|
22
22
|
"dependencies": {
|
|
23
23
|
"@babel/runtime": "^7.6.2",
|
|
24
|
-
"@contentful/f36-core": "4.0.1-beta.
|
|
25
|
-
"@contentful/f36-icons": "4.0.1-beta.
|
|
26
|
-
"@contentful/f36-tokens": "4.0.1-beta.
|
|
27
|
-
"@contentful/f36-typography": "4.0.1-beta.
|
|
24
|
+
"@contentful/f36-core": "4.0.1-beta.2590+bfd9a9a5",
|
|
25
|
+
"@contentful/f36-icons": "4.0.1-beta.2590+bfd9a9a5",
|
|
26
|
+
"@contentful/f36-tokens": "4.0.1-beta.2590+bfd9a9a5",
|
|
27
|
+
"@contentful/f36-typography": "4.0.1-beta.2590+bfd9a9a5",
|
|
28
28
|
"emotion": "^10.0.17"
|
|
29
29
|
},
|
|
30
30
|
"peerDependencies": {
|
|
@@ -33,5 +33,5 @@
|
|
|
33
33
|
"publishConfig": {
|
|
34
34
|
"access": "public"
|
|
35
35
|
},
|
|
36
|
-
"gitHead": "
|
|
36
|
+
"gitHead": "bfd9a9a5affcb943abbc97639ebae3abc67844fd"
|
|
37
37
|
}
|