@sproutsocial/seeds-react-accordion 0.1.7 → 0.2.1
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/.turbo/turbo-build.log +8 -8
- package/CHANGELOG.md +15 -0
- package/dist/esm/index.js +1079 -25
- package/dist/esm/index.js.map +1 -1
- package/dist/index.d.mts +2 -2
- package/dist/index.d.ts +2 -2
- package/dist/index.js +1054 -23
- package/dist/index.js.map +1 -1
- package/package.json +4 -4
- package/src/Accordion.stories.tsx +27 -18
- package/src/AccordionTrigger.tsx +15 -4
- package/src/AccordionTypes.ts +2 -2
- package/src/__tests__/accordion.test.tsx +34 -2
- package/src/styles.ts +5 -3
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/index.ts","../src/Accordion.tsx","../src/AccordionTypes.ts","../src/AccordionItem.tsx","../src/styles.ts","../src/AccordionContent.tsx","../src/AccordionTrigger.tsx"],"sourcesContent":["import { Accordion } from \"./Accordion\";\nimport { AccordionItem } from \"./AccordionItem\";\nimport { AccordionContent } from \"./AccordionContent\";\nimport { AccordionTrigger } from \"./AccordionTrigger\";\n\nexport { Accordion, AccordionItem, AccordionContent, AccordionTrigger };\nexport * from \"./AccordionTypes\";\n","import React, { createContext, type ReactElement } from \"react\";\nimport * as RadixAccordion from \"@radix-ui/react-accordion\";\nimport { Icon } from \"@sproutsocial/seeds-react-icon\";\nimport { type TypeAccordionProps } from \"./AccordionTypes\";\n\nexport const AccordionContext = createContext<{\n triggerIcon: ReactElement | null;\n triggerPosition: string;\n styled: boolean;\n}>({\n triggerIcon: null,\n triggerPosition: \"\",\n styled: false,\n});\n\nexport const Accordion = ({\n children,\n collapsible,\n defaultValue = [\"item-0\"],\n triggerPosition = \"right\",\n triggerIcon = <Icon className=\"triggerIcon\" name=\"chevron-down-outline\" />,\n type = \"multiple\",\n styled = true,\n}: TypeAccordionProps) => {\n if (type === \"single\") {\n return (\n <RadixAccordion.Root\n type=\"single\"\n defaultValue={\n Array.isArray(defaultValue) ? defaultValue[0] : defaultValue\n }\n collapsible={collapsible}\n >\n <AccordionContext.Provider\n value={{\n triggerIcon: React.isValidElement(triggerIcon) ? triggerIcon : null,\n triggerPosition,\n styled,\n }}\n >\n {children}\n </AccordionContext.Provider>\n </RadixAccordion.Root>\n );\n }\n\n return (\n <RadixAccordion.Root\n type=\"multiple\"\n defaultValue={Array.isArray(defaultValue) ? defaultValue : [defaultValue]}\n >\n <AccordionContext.Provider\n value={{\n triggerIcon: React.isValidElement(triggerIcon) ? triggerIcon : null,\n triggerPosition,\n styled,\n }}\n >\n {children}\n </AccordionContext.Provider>\n </RadixAccordion.Root>\n );\n};\n","import * as React from \"react\";\nimport {\n type TypeSystemCommonProps,\n type TypeBorderSystemProps,\n type TypeFlexboxSystemProps,\n type TypeLayoutSystemProps,\n type TypeStyledComponentsCommonProps,\n type TypeTypographySystemProps,\n} from \"@sproutsocial/seeds-react-system-props\";\nimport { type TypeIconName } from \"@sproutsocial/seeds-react-icon\";\nimport { type TypeMenuItemProps } from \"@sproutsocial/seeds-react-menu\";\n\nexport interface TypeAccordionSystemProps\n extends Omit<React.ComponentPropsWithoutRef<\"div\">, \"color\">,\n TypeStyledComponentsCommonProps,\n TypeSystemCommonProps,\n TypeBorderSystemProps,\n TypeFlexboxSystemProps,\n TypeLayoutSystemProps,\n TypeTypographySystemProps {}\n\nexport interface TypeAccordionProps {\n children?: React.ReactNode;\n collapsible?: boolean;\n defaultValue: string | string[];\n triggerIcon?: React.ReactNode;\n triggerPosition?: \"left\" | \"right\";\n type?: \"single\" | \"multiple\";\n styled?: boolean;\n}\n\nexport interface TypeRelatedAction {\n iconName: TypeIconName;\n onClick: () => void;\n \"aria-label\": string;\n}\n\nexport interface TypeOverflowMenuItem extends TypeMenuItemProps {\n iconName?: TypeIconName;\n}\n\nexport interface TypeOverflowMenuConfig {\n /** Menu items to be rendered in the overflow menu */\n items: TypeOverflowMenuItem[];\n /** Aria label for the overflow menu trigger button. Defaults to \"More actions\" */\n \"aria-label\"?: string;\n}\n\nexport interface TypeAccordionItemProps {\n children: React.ReactNode;\n relatedActions?: TypeRelatedAction[];\n overflowMenu?: TypeOverflowMenuConfig;\n value: string;\n}\n","import * as RadixAccordion from \"@radix-ui/react-accordion\";\nimport { type TypeAccordionItemProps } from \"./AccordionTypes\";\nimport { StyledAccordionItem } from \"./styles\";\n\nexport const AccordionItem = ({ children, value }: TypeAccordionItemProps) => {\n return (\n <StyledAccordionItem className=\"accordion-item\" value={value}>\n {children}\n </StyledAccordionItem>\n );\n};\n","import styled, { css } from \"styled-components\";\nimport * as RadixAccordion from \"@radix-ui/react-accordion\";\nimport {\n BORDER,\n COMMON,\n FLEXBOX,\n LAYOUT,\n TYPOGRAPHY,\n} from \"@sproutsocial/seeds-react-system-props\";\nimport { type TypeAccordionSystemProps } from \"./AccordionTypes\";\n\ninterface StyledAccordionProps extends TypeAccordionSystemProps {\n $styled?: boolean;\n}\n\nexport const StyledAccordionItem = styled(RadixAccordion.Item)``;\n\nconst animations = css`\n @keyframes slideDown {\n from {\n height: 0;\n }\n to {\n height: var(--radix-accordion-content-height);\n }\n }\n\n @keyframes slideUp {\n from {\n height: var(--radix-accordion-content-height);\n }\n to {\n height: 0;\n }\n }\n`;\n\nexport const StyledRadixAccordionTrigger = styled(\n RadixAccordion.Trigger\n)<StyledAccordionProps>`\n padding: 0;\n width: 100%;\n display: flex;\n align-items: center;\n justify-content: space-between;\n cursor: pointer;\n outline: none;\n border: none;\n background: transparent;\n ${({ theme }) => theme.typography[200]};\n\n .triggerIcon {\n color: ${({ theme }) => theme.colors.icon.base};\n transition: transform 300ms ease-in-out;\n }\n\n &[data-state=\"open\"] {\n .triggerIcon {\n transform: rotate(-180deg);\n }\n }\n\n &[data-styled] {\n padding: ${({ theme }) => theme.space[400]};\n }\n\n ${COMMON}\n`;\n\nexport const StyledRadixAccordionContent = styled(\n RadixAccordion.Content\n)<StyledAccordionProps>`\n ${animations}\n\n overflow: hidden;\n\n &[data-state=\"open\"] {\n animation: slideDown 300ms ease-in-out;\n }\n\n &[data-state=\"closed\"] {\n animation: slideUp 300ms ease-in-out;\n }\n\n &[data-styled=\"true\"] {\n border-left: ${({ theme }) =>\n `${theme.borderWidths[500]} solid ${theme.colors.container.border.base}`};\n border-right: ${({ theme }) =>\n `${theme.borderWidths[500]} solid ${theme.colors.container.border.base}`};\n background: ${({ theme }) => theme.colors.container.background.base};\n }\n\n .accordion-item:last-child[data-state=\"open\"] &[data-styled=\"true\"],\n .accordion-item:last-child[data-state=\"closed\"] &[data-styled=\"true\"] {\n border-bottom: ${({ theme }) =>\n `${theme.borderWidths[500]} solid ${theme.colors.container.border.base}`};\n border-bottom-left-radius: ${({ theme }) => theme.radii.outer};\n border-bottom-right-radius: ${({ theme }) => theme.radii.outer};\n }\n`;\n\nexport const StyledAccordionArea = styled.div`\n display: flex;\n align-items: center;\n justify-content: space-between;\n width: 100%;\n`;\nexport const FlexCenter = styled.div`\n display: flex;\n align-items: center;\n`;\n\nexport const ContentContainer = styled.div<StyledAccordionProps>`\n color: ${({ theme }) => theme.colors.text.body};\n background: transparent;\n font-family: ${({ theme }) => theme.fontFamily};\n ${({ theme }) => theme.typography[200]};\n\n &[data-styled=\"true\"] {\n padding: ${({ theme }) => theme.space[400]};\n }\n\n .accordion-item:last-child[data-state=\"open\"] &[data-styled=\"true\"],\n .accordion-item:last-child[data-state=\"closed\"] &[data-styled=\"true\"] {\n border-bottom-left-radius: ${({ theme }) => theme.radii.outer};\n border-bottom-right-radius: ${({ theme }) => theme.radii.outer};\n }\n\n ${COMMON}\n ${BORDER}\n\t${LAYOUT}\n\t${FLEXBOX}\n`;\n\nexport const TriggerContainer = styled.div<StyledAccordionProps>`\n display: flex;\n align-items: center;\n\n &[data-styled=\"true\"] {\n border-top: ${({ theme }) =>\n `${theme.borderWidths[500]} solid ${theme.colors.container.border.base}`};\n border-left: ${({ theme }) =>\n `${theme.borderWidths[500]} solid ${theme.colors.container.border.base}`};\n border-right: ${({ theme }) =>\n `${theme.borderWidths[500]} solid ${theme.colors.container.border.base}`};\n background: ${({ theme }) => theme.colors.container.background.base};\n }\n\n .accordion-item[data-state=\"open\"] &[data-styled=\"true\"] {\n border-bottom: ${({ theme }) =>\n `${theme.borderWidths[500]} solid ${theme.colors.container.border.base}`};\n }\n\n .accordion-item[data-state=\"closed\"] &[data-styled=\"true\"] {\n transition: border-bottom-color 0s ease-in-out 0.3s;\n border-bottom: ${({ theme }) =>\n `${theme.borderWidths[500]} solid transparent`};\n }\n\n .accordion-item:first-child &[data-styled=\"true\"] {\n border-top-left-radius: ${({ theme }) => theme.radii.outer};\n border-top-right-radius: ${({ theme }) => theme.radii.outer};\n }\n\n .accordion-item:last-child &[data-styled=\"true\"] {\n border-bottom: ${({ theme }) =>\n `${theme.borderWidths[500]} solid ${theme.colors.container.border.base}`};\n }\n\n .accordion-item:last-child[data-state=\"closed\"] &[data-styled=\"true\"] {\n transition: border-radius 0s linear 0.3s;\n border-bottom-left-radius: ${({ theme }) => theme.radii.outer};\n border-bottom-right-radius: ${({ theme }) => theme.radii.outer};\n }\n\n ${COMMON}\n ${BORDER}\n\t${LAYOUT}\n\t${FLEXBOX}\n`;\n\nexport const TitleStyles = styled.h4<StyledAccordionProps>`\n margin: 0;\n font-size: ${({ theme }) => theme.fontSizes[200]};\n font-weight: normal;\n\n &[data-styled=\"true\"] {\n font-weight: ${({ theme }) => theme.fontWeights.semibold};\n color: ${({ theme }) => theme.colors.text.headline};\n }\n\n ${COMMON}\n ${TYPOGRAPHY}\n`;\n","import { StyledRadixAccordionContent, ContentContainer } from \"./styles\";\nimport { type TypeAccordionSystemProps } from \"./AccordionTypes\";\nimport { AccordionContext } from \"./Accordion\";\nimport { useContext } from \"react\";\n\ninterface TypeAccordionContentProps extends TypeAccordionSystemProps {\n children?: React.ReactNode;\n}\n\nexport const AccordionContent = ({\n children,\n ...rest\n}: TypeAccordionContentProps) => {\n const { styled } = useContext(AccordionContext);\n\n return (\n <StyledRadixAccordionContent data-styled={styled}>\n <ContentContainer data-styled={styled} {...rest}>\n {children}\n </ContentContainer>\n </StyledRadixAccordionContent>\n );\n};\n","import { StyledRadixAccordionTrigger, TitleStyles } from \"./styles\";\nimport {\n type TypeAccordionSystemProps,\n type TypeRelatedAction,\n type TypeOverflowMenuConfig,\n} from \"./AccordionTypes\";\nimport { FlexCenter, StyledAccordionArea, TriggerContainer } from \"./styles\";\nimport { Box } from \"@sproutsocial/seeds-react-box\";\nimport { Button } from \"@sproutsocial/seeds-react-button\";\nimport { Icon } from \"@sproutsocial/seeds-react-icon\";\nimport {\n ActionMenu,\n MenuContent,\n MenuItem,\n MenuGroup,\n MenuToggleButton,\n} from \"@sproutsocial/seeds-react-menu\";\nimport { useContext } from \"react\";\nimport { AccordionContext } from \"./Accordion\";\n\nconst MAX_RELATED_ACTIONS = 2;\n\ninterface TypeAccordionTriggerProps extends TypeAccordionSystemProps {\n title: string;\n leftSlot?: React.ReactNode;\n relatedActions?: TypeRelatedAction[];\n overflowMenu?: TypeOverflowMenuConfig;\n rightSlot?: React.ReactNode;\n}\n\nexport const AccordionTrigger = ({\n children,\n leftSlot,\n relatedActions,\n overflowMenu,\n rightSlot,\n title,\n ...rest\n}: TypeAccordionTriggerProps) => {\n const { triggerIcon, triggerPosition, styled } = useContext(AccordionContext);\n\n // Validate and limit related actions\n const validatedActions = relatedActions?.slice(0, MAX_RELATED_ACTIONS);\n\n // Extract system props to distribute to appropriate container\n const {\n color,\n padding,\n paddingBottom,\n paddingTop,\n paddingX,\n paddingY,\n paddingLeft,\n paddingRight,\n p,\n pb,\n pt,\n pr,\n pl,\n px,\n py,\n fontFamily,\n fontStyle,\n fontWeight,\n lineHeight,\n textAlign,\n ...triggerProps\n } = rest;\n\n const spacingProps = {\n padding,\n paddingBottom,\n paddingTop,\n paddingX,\n paddingY,\n paddingLeft,\n paddingRight,\n p,\n pb,\n pt,\n pr,\n pl,\n px,\n py,\n };\n\n // When you destructure color from rest, it might be null, which is incompatible with what the styled component expects. We need to filter out null or undefined values from typographyProps before spreading them.\n\n const typographyProps = Object.fromEntries(\n Object.entries({\n color,\n fontFamily,\n fontStyle,\n fontWeight,\n lineHeight,\n textAlign,\n }).filter(([_, value]) => value != null)\n );\n\n // Render overflow menu from config\n const renderedOverflowMenu = overflowMenu && (\n <ActionMenu\n menuToggleElement={\n <MenuToggleButton\n aria-label={overflowMenu[\"aria-label\"]}\n appearance=\"unstyled\"\n >\n <Icon name=\"ellipsis-horizontal-outline\" aria-hidden=\"true\" />\n </MenuToggleButton>\n }\n >\n <MenuContent>\n <MenuGroup id=\"overflow-actions\">\n {overflowMenu.items.map((item, index) => {\n const { iconName, id, onClick, children, ...menuItemProps } = item;\n return (\n <MenuItem\n key={id || `overflow-item-${index}`}\n id={id || `overflow-item-${index}`}\n onClick={onClick}\n {...menuItemProps}\n >\n {iconName ? (\n <Box display=\"flex\" alignItems=\"center\" gap=\"300\">\n <Icon name={iconName} />\n {children}\n </Box>\n ) : (\n children\n )}\n </MenuItem>\n );\n })}\n </MenuGroup>\n </MenuContent>\n </ActionMenu>\n );\n\n // Render related actions from config\n const renderedRelatedActions = validatedActions &&\n validatedActions.length > 0 && (\n <Box display=\"flex\">\n {validatedActions.map((action, index) => (\n <Button\n key={`${action.iconName}-${index}`}\n onClick={action.onClick}\n aria-label={action[\"aria-label\"]}\n >\n <Icon name={action.iconName} aria-hidden=\"true\" />\n </Button>\n ))}\n </Box>\n );\n\n return (\n <TriggerContainer data-styled={styled} {...triggerProps}>\n <StyledRadixAccordionTrigger data-styled={styled} {...spacingProps}>\n {triggerPosition === \"right\" ? (\n <StyledAccordionArea>\n <FlexCenter>\n {leftSlot}\n <TitleStyles data-styled={styled} {...typographyProps}>\n {title}\n </TitleStyles>\n {rightSlot}\n </FlexCenter>\n {triggerIcon}\n </StyledAccordionArea>\n ) : (\n <StyledAccordionArea>\n <FlexCenter>\n <Box mr={300}>{triggerIcon}</Box>\n {leftSlot}\n <TitleStyles data-styled={styled} {...typographyProps}>\n {title}\n </TitleStyles>\n </FlexCenter>\n {rightSlot}\n </StyledAccordionArea>\n )}\n </StyledRadixAccordionTrigger>\n <Box mr={300} display=\"flex\">\n {renderedOverflowMenu}\n {renderedRelatedActions}\n </Box>\n </TriggerContainer>\n );\n};\n"],"mappings":"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","names":["import_seeds_react_icon","styled","React","RadixAccordion","RadixAccordion","import_seeds_react_system_props","styled","import_jsx_runtime","import_react","import_jsx_runtime","styled","import_seeds_react_icon","import_seeds_react_menu","import_react","import_jsx_runtime","styled","children"]}
|
|
1
|
+
{"version":3,"sources":["../../../node_modules/object-assign/index.js","../src/index.ts","../src/Accordion.tsx","../src/AccordionTypes.ts","../src/AccordionItem.tsx","../src/styles.ts","../../../node_modules/@styled-system/core/dist/index.esm.js","../../../node_modules/@styled-system/layout/dist/index.esm.js","../../../node_modules/@styled-system/color/dist/index.esm.js","../../../node_modules/@styled-system/typography/dist/index.esm.js","../../../node_modules/@styled-system/flexbox/dist/index.esm.js","../../../node_modules/@styled-system/grid/dist/index.esm.js","../../../node_modules/@styled-system/border/dist/index.esm.js","../../../node_modules/@styled-system/background/dist/index.esm.js","../../../node_modules/@styled-system/position/dist/index.esm.js","../../../node_modules/@styled-system/space/dist/index.esm.js","../../../node_modules/@styled-system/shadow/dist/index.esm.js","../../../node_modules/@styled-system/css/dist/index.esm.js","../../../node_modules/@styled-system/variant/dist/index.esm.js","../../../node_modules/styled-system/dist/index.esm.js","../src/AccordionContent.tsx","../src/AccordionTrigger.tsx"],"sourcesContent":["/*\nobject-assign\n(c) Sindre Sorhus\n@license MIT\n*/\n\n'use strict';\n/* eslint-disable no-unused-vars */\nvar getOwnPropertySymbols = Object.getOwnPropertySymbols;\nvar hasOwnProperty = Object.prototype.hasOwnProperty;\nvar propIsEnumerable = Object.prototype.propertyIsEnumerable;\n\nfunction toObject(val) {\n\tif (val === null || val === undefined) {\n\t\tthrow new TypeError('Object.assign cannot be called with null or undefined');\n\t}\n\n\treturn Object(val);\n}\n\nfunction shouldUseNative() {\n\ttry {\n\t\tif (!Object.assign) {\n\t\t\treturn false;\n\t\t}\n\n\t\t// Detect buggy property enumeration order in older V8 versions.\n\n\t\t// https://bugs.chromium.org/p/v8/issues/detail?id=4118\n\t\tvar test1 = new String('abc'); // eslint-disable-line no-new-wrappers\n\t\ttest1[5] = 'de';\n\t\tif (Object.getOwnPropertyNames(test1)[0] === '5') {\n\t\t\treturn false;\n\t\t}\n\n\t\t// https://bugs.chromium.org/p/v8/issues/detail?id=3056\n\t\tvar test2 = {};\n\t\tfor (var i = 0; i < 10; i++) {\n\t\t\ttest2['_' + String.fromCharCode(i)] = i;\n\t\t}\n\t\tvar order2 = Object.getOwnPropertyNames(test2).map(function (n) {\n\t\t\treturn test2[n];\n\t\t});\n\t\tif (order2.join('') !== '0123456789') {\n\t\t\treturn false;\n\t\t}\n\n\t\t// https://bugs.chromium.org/p/v8/issues/detail?id=3056\n\t\tvar test3 = {};\n\t\t'abcdefghijklmnopqrst'.split('').forEach(function (letter) {\n\t\t\ttest3[letter] = letter;\n\t\t});\n\t\tif (Object.keys(Object.assign({}, test3)).join('') !==\n\t\t\t\t'abcdefghijklmnopqrst') {\n\t\t\treturn false;\n\t\t}\n\n\t\treturn true;\n\t} catch (err) {\n\t\t// We don't expect any of the above to throw, but better to be safe.\n\t\treturn false;\n\t}\n}\n\nmodule.exports = shouldUseNative() ? Object.assign : function (target, source) {\n\tvar from;\n\tvar to = toObject(target);\n\tvar symbols;\n\n\tfor (var s = 1; s < arguments.length; s++) {\n\t\tfrom = Object(arguments[s]);\n\n\t\tfor (var key in from) {\n\t\t\tif (hasOwnProperty.call(from, key)) {\n\t\t\t\tto[key] = from[key];\n\t\t\t}\n\t\t}\n\n\t\tif (getOwnPropertySymbols) {\n\t\t\tsymbols = getOwnPropertySymbols(from);\n\t\t\tfor (var i = 0; i < symbols.length; i++) {\n\t\t\t\tif (propIsEnumerable.call(from, symbols[i])) {\n\t\t\t\t\tto[symbols[i]] = from[symbols[i]];\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\treturn to;\n};\n","import { Accordion } from \"./Accordion\";\nimport { AccordionItem } from \"./AccordionItem\";\nimport { AccordionContent } from \"./AccordionContent\";\nimport { AccordionTrigger } from \"./AccordionTrigger\";\n\nexport { Accordion, AccordionItem, AccordionContent, AccordionTrigger };\nexport * from \"./AccordionTypes\";\n","import React, { createContext, type ReactElement } from \"react\";\nimport * as RadixAccordion from \"@radix-ui/react-accordion\";\nimport { Icon } from \"@sproutsocial/seeds-react-icon\";\nimport { type TypeAccordionProps } from \"./AccordionTypes\";\n\nexport const AccordionContext = createContext<{\n triggerIcon: ReactElement | null;\n triggerPosition: string;\n styled: boolean;\n}>({\n triggerIcon: null,\n triggerPosition: \"\",\n styled: false,\n});\n\nexport const Accordion = ({\n children,\n collapsible,\n defaultValue = [\"item-0\"],\n triggerPosition = \"right\",\n triggerIcon = <Icon className=\"triggerIcon\" name=\"chevron-down-outline\" />,\n type = \"multiple\",\n styled = true,\n}: TypeAccordionProps) => {\n if (type === \"single\") {\n return (\n <RadixAccordion.Root\n type=\"single\"\n defaultValue={\n Array.isArray(defaultValue) ? defaultValue[0] : defaultValue\n }\n collapsible={collapsible}\n >\n <AccordionContext.Provider\n value={{\n triggerIcon: React.isValidElement(triggerIcon) ? triggerIcon : null,\n triggerPosition,\n styled,\n }}\n >\n {children}\n </AccordionContext.Provider>\n </RadixAccordion.Root>\n );\n }\n\n return (\n <RadixAccordion.Root\n type=\"multiple\"\n defaultValue={Array.isArray(defaultValue) ? defaultValue : [defaultValue]}\n >\n <AccordionContext.Provider\n value={{\n triggerIcon: React.isValidElement(triggerIcon) ? triggerIcon : null,\n triggerPosition,\n styled,\n }}\n >\n {children}\n </AccordionContext.Provider>\n </RadixAccordion.Root>\n );\n};\n","import * as React from \"react\";\nimport {\n type TypeSystemCommonProps,\n type TypeBorderSystemProps,\n type TypeFlexboxSystemProps,\n type TypeLayoutSystemProps,\n type TypeStyledComponentsCommonProps,\n type TypeSystemTypographyProps,\n} from \"@sproutsocial/seeds-react-system-props\";\nimport { type TypeIconName } from \"@sproutsocial/seeds-react-icon\";\nimport { type TypeMenuItemProps } from \"@sproutsocial/seeds-react-menu\";\n\nexport interface TypeAccordionSystemProps\n extends Omit<React.ComponentPropsWithoutRef<\"div\">, \"color\">,\n TypeStyledComponentsCommonProps,\n TypeSystemCommonProps,\n TypeBorderSystemProps,\n TypeFlexboxSystemProps,\n TypeLayoutSystemProps,\n TypeSystemTypographyProps {}\n\nexport interface TypeAccordionProps {\n children?: React.ReactNode;\n collapsible?: boolean;\n defaultValue: string | string[];\n triggerIcon?: React.ReactNode;\n triggerPosition?: \"left\" | \"right\";\n type?: \"single\" | \"multiple\";\n styled?: boolean;\n}\n\nexport interface TypeRelatedAction {\n iconName: TypeIconName;\n onClick: () => void;\n \"aria-label\": string;\n}\n\nexport interface TypeOverflowMenuItem extends TypeMenuItemProps {\n iconName?: TypeIconName;\n}\n\nexport interface TypeOverflowMenuConfig {\n /** Menu items to be rendered in the overflow menu */\n items: TypeOverflowMenuItem[];\n /** Aria label for the overflow menu trigger button. Defaults to \"More actions\" */\n \"aria-label\"?: string;\n}\n\nexport interface TypeAccordionItemProps {\n children: React.ReactNode;\n relatedActions?: TypeRelatedAction[];\n overflowMenu?: TypeOverflowMenuConfig;\n value: string;\n}\n","import * as RadixAccordion from \"@radix-ui/react-accordion\";\nimport { type TypeAccordionItemProps } from \"./AccordionTypes\";\nimport { StyledAccordionItem } from \"./styles\";\n\nexport const AccordionItem = ({ children, value }: TypeAccordionItemProps) => {\n return (\n <StyledAccordionItem className=\"accordion-item\" value={value}>\n {children}\n </StyledAccordionItem>\n );\n};\n","import styled, { css } from \"styled-components\";\nimport * as RadixAccordion from \"@radix-ui/react-accordion\";\nimport { fontSize } from \"styled-system\";\nimport {\n BORDER,\n COMMON,\n FLEXBOX,\n LAYOUT,\n TYPOGRAPHY,\n} from \"@sproutsocial/seeds-react-system-props\";\nimport { type TypeAccordionSystemProps } from \"./AccordionTypes\";\n\ninterface StyledAccordionProps extends TypeAccordionSystemProps {\n $styled?: boolean;\n}\n\nexport const StyledAccordionItem = styled(RadixAccordion.Item)``;\n\nconst animations = css`\n @keyframes slideDown {\n from {\n height: 0;\n }\n to {\n height: var(--radix-accordion-content-height);\n }\n }\n\n @keyframes slideUp {\n from {\n height: var(--radix-accordion-content-height);\n }\n to {\n height: 0;\n }\n }\n`;\n\nexport const StyledRadixAccordionTrigger = styled(\n RadixAccordion.Trigger\n)<StyledAccordionProps>`\n padding: 0;\n width: 100%;\n display: flex;\n align-items: center;\n justify-content: space-between;\n cursor: pointer;\n outline: none;\n border: none;\n background: transparent;\n ${({ theme }) => theme.typography[200]};\n\n .triggerIcon {\n transition: transform 300ms ease-in-out;\n }\n\n &[data-state=\"open\"] {\n .triggerIcon {\n transform: rotate(-180deg);\n }\n }\n\n &[data-styled] {\n padding: ${({ theme }) => theme.space[400]};\n }\n\n ${COMMON}\n`;\n\nexport const StyledRadixAccordionContent = styled(\n RadixAccordion.Content\n)<StyledAccordionProps>`\n ${animations}\n\n overflow: hidden;\n\n &[data-state=\"open\"] {\n animation: slideDown 300ms ease-in-out;\n }\n\n &[data-state=\"closed\"] {\n animation: slideUp 300ms ease-in-out;\n }\n\n &[data-styled=\"true\"] {\n border-left: ${({ theme }) =>\n `${theme.borderWidths[500]} solid ${theme.colors.container.border.base}`};\n border-right: ${({ theme }) =>\n `${theme.borderWidths[500]} solid ${theme.colors.container.border.base}`};\n background: ${({ theme }) => theme.colors.container.background.base};\n }\n\n .accordion-item:last-child[data-state=\"open\"] &[data-styled=\"true\"],\n .accordion-item:last-child[data-state=\"closed\"] &[data-styled=\"true\"] {\n border-bottom: ${({ theme }) =>\n `${theme.borderWidths[500]} solid ${theme.colors.container.border.base}`};\n border-bottom-left-radius: ${({ theme }) => theme.radii.outer};\n border-bottom-right-radius: ${({ theme }) => theme.radii.outer};\n }\n`;\n\nexport const StyledAccordionArea = styled.div`\n display: flex;\n align-items: center;\n justify-content: space-between;\n width: 100%;\n`;\nexport const FlexCenter = styled.div`\n display: flex;\n align-items: center;\n`;\n\nexport const ContentContainer = styled.div<StyledAccordionProps>`\n color: ${({ theme }) => theme.colors.text.body};\n background: transparent;\n font-family: ${({ theme }) => theme.fontFamily};\n\n &[data-styled=\"true\"] {\n padding: ${({ theme }) => theme.space[400]};\n ${({ theme }) => theme.typography[200]};\n }\n\n .accordion-item:last-child[data-state=\"open\"] &[data-styled=\"true\"],\n .accordion-item:last-child[data-state=\"closed\"] &[data-styled=\"true\"] {\n border-bottom-left-radius: ${({ theme }) => theme.radii.outer};\n border-bottom-right-radius: ${({ theme }) => theme.radii.outer};\n }\n\n ${COMMON}\n ${TYPOGRAPHY}\n ${BORDER}\n\t${LAYOUT}\n\t${FLEXBOX}\n`;\n\nexport const TriggerContainer = styled.div<StyledAccordionProps>`\n display: flex;\n align-items: center;\n\n &[data-styled=\"true\"] {\n border-top: ${({ theme }) =>\n `${theme.borderWidths[500]} solid ${theme.colors.container.border.base}`};\n border-left: ${({ theme }) =>\n `${theme.borderWidths[500]} solid ${theme.colors.container.border.base}`};\n border-right: ${({ theme }) =>\n `${theme.borderWidths[500]} solid ${theme.colors.container.border.base}`};\n background: ${({ theme }) => theme.colors.container.background.base};\n }\n\n .accordion-item[data-state=\"open\"] &[data-styled=\"true\"] {\n border-bottom: ${({ theme }) =>\n `${theme.borderWidths[500]} solid ${theme.colors.container.border.base}`};\n }\n\n .accordion-item[data-state=\"closed\"] &[data-styled=\"true\"] {\n transition: border-bottom-color 0s ease-in-out 0.3s;\n border-bottom: ${({ theme }) =>\n `${theme.borderWidths[500]} solid transparent`};\n }\n\n .accordion-item:first-child &[data-styled=\"true\"] {\n border-top-left-radius: ${({ theme }) => theme.radii.outer};\n border-top-right-radius: ${({ theme }) => theme.radii.outer};\n }\n\n .accordion-item:last-child &[data-styled=\"true\"] {\n border-bottom: ${({ theme }) =>\n `${theme.borderWidths[500]} solid ${theme.colors.container.border.base}`};\n }\n\n .accordion-item:last-child[data-state=\"closed\"] &[data-styled=\"true\"] {\n transition: border-radius 0s linear 0.3s;\n border-bottom-left-radius: ${({ theme }) => theme.radii.outer};\n border-bottom-right-radius: ${({ theme }) => theme.radii.outer};\n }\n\n ${COMMON}\n ${BORDER}\n\t${LAYOUT}\n\t${FLEXBOX}\n`;\n\nexport const TitleStyles = styled.h4<StyledAccordionProps>`\n margin: 0;\n font-weight: normal;\n\n &[data-styled=\"true\"] {\n font-size: ${({ theme }) => theme.fontSizes[200]};\n font-weight: ${({ theme }) => theme.fontWeights.semibold};\n color: ${({ theme }) => theme.colors.text.headline};\n }\n\n ${COMMON}\n ${TYPOGRAPHY}\n ${fontSize}\n`;\n","import assign from 'object-assign';\nexport var merge = function merge(a, b) {\n var result = assign({}, a, b);\n\n for (var key in a) {\n var _assign;\n\n if (!a[key] || typeof b[key] !== 'object') continue;\n assign(result, (_assign = {}, _assign[key] = assign(a[key], b[key]), _assign));\n }\n\n return result;\n}; // sort object-value responsive styles\n\nvar sort = function sort(obj) {\n var next = {};\n Object.keys(obj).sort(function (a, b) {\n return a.localeCompare(b, undefined, {\n numeric: true,\n sensitivity: 'base'\n });\n }).forEach(function (key) {\n next[key] = obj[key];\n });\n return next;\n};\n\nvar defaults = {\n breakpoints: [40, 52, 64].map(function (n) {\n return n + 'em';\n })\n};\n\nvar createMediaQuery = function createMediaQuery(n) {\n return \"@media screen and (min-width: \" + n + \")\";\n};\n\nvar getValue = function getValue(n, scale) {\n return get(scale, n, n);\n};\n\nexport var get = function get(obj, key, def, p, undef) {\n key = key && key.split ? key.split('.') : [key];\n\n for (p = 0; p < key.length; p++) {\n obj = obj ? obj[key[p]] : undef;\n }\n\n return obj === undef ? def : obj;\n};\nexport var createParser = function createParser(config) {\n var cache = {};\n\n var parse = function parse(props) {\n var styles = {};\n var shouldSort = false;\n var isCacheDisabled = props.theme && props.theme.disableStyledSystemCache;\n\n for (var key in props) {\n if (!config[key]) continue;\n var sx = config[key];\n var raw = props[key];\n var scale = get(props.theme, sx.scale, sx.defaults);\n\n if (typeof raw === 'object') {\n cache.breakpoints = !isCacheDisabled && cache.breakpoints || get(props.theme, 'breakpoints', defaults.breakpoints);\n\n if (Array.isArray(raw)) {\n cache.media = !isCacheDisabled && cache.media || [null].concat(cache.breakpoints.map(createMediaQuery));\n styles = merge(styles, parseResponsiveStyle(cache.media, sx, scale, raw, props));\n continue;\n }\n\n if (raw !== null) {\n styles = merge(styles, parseResponsiveObject(cache.breakpoints, sx, scale, raw, props));\n shouldSort = true;\n }\n\n continue;\n }\n\n assign(styles, sx(raw, scale, props));\n } // sort object-based responsive styles\n\n\n if (shouldSort) {\n styles = sort(styles);\n }\n\n return styles;\n };\n\n parse.config = config;\n parse.propNames = Object.keys(config);\n parse.cache = cache;\n var keys = Object.keys(config).filter(function (k) {\n return k !== 'config';\n });\n\n if (keys.length > 1) {\n keys.forEach(function (key) {\n var _createParser;\n\n parse[key] = createParser((_createParser = {}, _createParser[key] = config[key], _createParser));\n });\n }\n\n return parse;\n};\n\nvar parseResponsiveStyle = function parseResponsiveStyle(mediaQueries, sx, scale, raw, _props) {\n var styles = {};\n raw.slice(0, mediaQueries.length).forEach(function (value, i) {\n var media = mediaQueries[i];\n var style = sx(value, scale, _props);\n\n if (!media) {\n assign(styles, style);\n } else {\n var _assign2;\n\n assign(styles, (_assign2 = {}, _assign2[media] = assign({}, styles[media], style), _assign2));\n }\n });\n return styles;\n};\n\nvar parseResponsiveObject = function parseResponsiveObject(breakpoints, sx, scale, raw, _props) {\n var styles = {};\n\n for (var key in raw) {\n var breakpoint = breakpoints[key];\n var value = raw[key];\n var style = sx(value, scale, _props);\n\n if (!breakpoint) {\n assign(styles, style);\n } else {\n var _assign3;\n\n var media = createMediaQuery(breakpoint);\n assign(styles, (_assign3 = {}, _assign3[media] = assign({}, styles[media], style), _assign3));\n }\n }\n\n return styles;\n};\n\nexport var createStyleFunction = function createStyleFunction(_ref) {\n var properties = _ref.properties,\n property = _ref.property,\n scale = _ref.scale,\n _ref$transform = _ref.transform,\n transform = _ref$transform === void 0 ? getValue : _ref$transform,\n defaultScale = _ref.defaultScale;\n properties = properties || [property];\n\n var sx = function sx(value, scale, _props) {\n var result = {};\n var n = transform(value, scale, _props);\n if (n === null) return;\n properties.forEach(function (prop) {\n result[prop] = n;\n });\n return result;\n };\n\n sx.scale = scale;\n sx.defaults = defaultScale;\n return sx;\n}; // new v5 API\n\nexport var system = function system(args) {\n if (args === void 0) {\n args = {};\n }\n\n var config = {};\n Object.keys(args).forEach(function (key) {\n var conf = args[key];\n\n if (conf === true) {\n // shortcut definition\n config[key] = createStyleFunction({\n property: key,\n scale: key\n });\n return;\n }\n\n if (typeof conf === 'function') {\n config[key] = conf;\n return;\n }\n\n config[key] = createStyleFunction(conf);\n });\n var parser = createParser(config);\n return parser;\n};\nexport var compose = function compose() {\n var config = {};\n\n for (var _len = arguments.length, parsers = new Array(_len), _key = 0; _key < _len; _key++) {\n parsers[_key] = arguments[_key];\n }\n\n parsers.forEach(function (parser) {\n if (!parser || !parser.config) return;\n assign(config, parser.config);\n });\n var parser = createParser(config);\n return parser;\n};\n","import { system, get } from '@styled-system/core';\n\nvar isNumber = function isNumber(n) {\n return typeof n === 'number' && !isNaN(n);\n};\n\nvar getWidth = function getWidth(n, scale) {\n return get(scale, n, !isNumber(n) || n > 1 ? n : n * 100 + '%');\n};\n\nvar config = {\n width: {\n property: 'width',\n scale: 'sizes',\n transform: getWidth\n },\n height: {\n property: 'height',\n scale: 'sizes'\n },\n minWidth: {\n property: 'minWidth',\n scale: 'sizes'\n },\n minHeight: {\n property: 'minHeight',\n scale: 'sizes'\n },\n maxWidth: {\n property: 'maxWidth',\n scale: 'sizes'\n },\n maxHeight: {\n property: 'maxHeight',\n scale: 'sizes'\n },\n size: {\n properties: ['width', 'height'],\n scale: 'sizes'\n },\n overflow: true,\n overflowX: true,\n overflowY: true,\n display: true,\n verticalAlign: true\n};\nexport var layout = system(config);\nexport default layout;\n","import { system } from '@styled-system/core';\nvar config = {\n color: {\n property: 'color',\n scale: 'colors'\n },\n backgroundColor: {\n property: 'backgroundColor',\n scale: 'colors'\n },\n opacity: true\n};\nconfig.bg = config.backgroundColor;\nexport var color = system(config);\nexport default color;\n","import { system } from '@styled-system/core';\nvar defaults = {\n fontSizes: [12, 14, 16, 20, 24, 32, 48, 64, 72]\n};\nvar config = {\n fontFamily: {\n property: 'fontFamily',\n scale: 'fonts'\n },\n fontSize: {\n property: 'fontSize',\n scale: 'fontSizes',\n defaultScale: defaults.fontSizes\n },\n fontWeight: {\n property: 'fontWeight',\n scale: 'fontWeights'\n },\n lineHeight: {\n property: 'lineHeight',\n scale: 'lineHeights'\n },\n letterSpacing: {\n property: 'letterSpacing',\n scale: 'letterSpacings'\n },\n textAlign: true,\n fontStyle: true\n};\nexport var typography = system(config);\nexport default typography;\n","import { system } from '@styled-system/core';\nvar config = {\n alignItems: true,\n alignContent: true,\n justifyItems: true,\n justifyContent: true,\n flexWrap: true,\n flexDirection: true,\n // item\n flex: true,\n flexGrow: true,\n flexShrink: true,\n flexBasis: true,\n justifySelf: true,\n alignSelf: true,\n order: true\n};\nexport var flexbox = system(config);\nexport default flexbox;\n","import { system } from '@styled-system/core';\nvar defaults = {\n space: [0, 4, 8, 16, 32, 64, 128, 256, 512]\n};\nvar config = {\n gridGap: {\n property: 'gridGap',\n scale: 'space',\n defaultScale: defaults.space\n },\n gridColumnGap: {\n property: 'gridColumnGap',\n scale: 'space',\n defaultScale: defaults.space\n },\n gridRowGap: {\n property: 'gridRowGap',\n scale: 'space',\n defaultScale: defaults.space\n },\n gridColumn: true,\n gridRow: true,\n gridAutoFlow: true,\n gridAutoColumns: true,\n gridAutoRows: true,\n gridTemplateColumns: true,\n gridTemplateRows: true,\n gridTemplateAreas: true,\n gridArea: true\n};\nexport var grid = system(config);\nexport default grid;\n","import { system } from '@styled-system/core';\nvar config = {\n border: {\n property: 'border',\n scale: 'borders'\n },\n borderWidth: {\n property: 'borderWidth',\n scale: 'borderWidths'\n },\n borderStyle: {\n property: 'borderStyle',\n scale: 'borderStyles'\n },\n borderColor: {\n property: 'borderColor',\n scale: 'colors'\n },\n borderRadius: {\n property: 'borderRadius',\n scale: 'radii'\n },\n borderTop: {\n property: 'borderTop',\n scale: 'borders'\n },\n borderTopLeftRadius: {\n property: 'borderTopLeftRadius',\n scale: 'radii'\n },\n borderTopRightRadius: {\n property: 'borderTopRightRadius',\n scale: 'radii'\n },\n borderRight: {\n property: 'borderRight',\n scale: 'borders'\n },\n borderBottom: {\n property: 'borderBottom',\n scale: 'borders'\n },\n borderBottomLeftRadius: {\n property: 'borderBottomLeftRadius',\n scale: 'radii'\n },\n borderBottomRightRadius: {\n property: 'borderBottomRightRadius',\n scale: 'radii'\n },\n borderLeft: {\n property: 'borderLeft',\n scale: 'borders'\n },\n borderX: {\n properties: ['borderLeft', 'borderRight'],\n scale: 'borders'\n },\n borderY: {\n properties: ['borderTop', 'borderBottom'],\n scale: 'borders'\n }\n};\nconfig.borderTopWidth = {\n property: 'borderTopWidth',\n scale: 'borderWidths'\n};\nconfig.borderTopColor = {\n property: 'borderTopColor',\n scale: 'colors'\n};\nconfig.borderTopStyle = {\n property: 'borderTopStyle',\n scale: 'borderStyles'\n};\nconfig.borderTopLeftRadius = {\n property: 'borderTopLeftRadius',\n scale: 'radii'\n};\nconfig.borderTopRightRadius = {\n property: 'borderTopRightRadius',\n scale: 'radii'\n};\nconfig.borderBottomWidth = {\n property: 'borderBottomWidth',\n scale: 'borderWidths'\n};\nconfig.borderBottomColor = {\n property: 'borderBottomColor',\n scale: 'colors'\n};\nconfig.borderBottomStyle = {\n property: 'borderBottomStyle',\n scale: 'borderStyles'\n};\nconfig.borderBottomLeftRadius = {\n property: 'borderBottomLeftRadius',\n scale: 'radii'\n};\nconfig.borderBottomRightRadius = {\n property: 'borderBottomRightRadius',\n scale: 'radii'\n};\nconfig.borderLeftWidth = {\n property: 'borderLeftWidth',\n scale: 'borderWidths'\n};\nconfig.borderLeftColor = {\n property: 'borderLeftColor',\n scale: 'colors'\n};\nconfig.borderLeftStyle = {\n property: 'borderLeftStyle',\n scale: 'borderStyles'\n};\nconfig.borderRightWidth = {\n property: 'borderRightWidth',\n scale: 'borderWidths'\n};\nconfig.borderRightColor = {\n property: 'borderRightColor',\n scale: 'colors'\n};\nconfig.borderRightStyle = {\n property: 'borderRightStyle',\n scale: 'borderStyles'\n};\nexport var border = system(config);\nexport default border;\n","import { system } from '@styled-system/core';\nvar config = {\n background: true,\n backgroundImage: true,\n backgroundSize: true,\n backgroundPosition: true,\n backgroundRepeat: true\n};\nconfig.bgImage = config.backgroundImage;\nconfig.bgSize = config.backgroundSize;\nconfig.bgPosition = config.backgroundPosition;\nconfig.bgRepeat = config.backgroundRepeat;\nexport var background = system(config);\nexport default background;\n","import { system } from '@styled-system/core';\nvar defaults = {\n space: [0, 4, 8, 16, 32, 64, 128, 256, 512]\n};\nvar config = {\n position: true,\n zIndex: {\n property: 'zIndex',\n scale: 'zIndices'\n },\n top: {\n property: 'top',\n scale: 'space',\n defaultScale: defaults.space\n },\n right: {\n property: 'right',\n scale: 'space',\n defaultScale: defaults.space\n },\n bottom: {\n property: 'bottom',\n scale: 'space',\n defaultScale: defaults.space\n },\n left: {\n property: 'left',\n scale: 'space',\n defaultScale: defaults.space\n }\n};\nexport var position = system(config);\nexport default position;\n","import { get, system, compose } from '@styled-system/core';\nvar defaults = {\n space: [0, 4, 8, 16, 32, 64, 128, 256, 512]\n};\n\nvar isNumber = function isNumber(n) {\n return typeof n === 'number' && !isNaN(n);\n};\n\nvar getMargin = function getMargin(n, scale) {\n if (!isNumber(n)) {\n return get(scale, n, n);\n }\n\n var isNegative = n < 0;\n var absolute = Math.abs(n);\n var value = get(scale, absolute, absolute);\n\n if (!isNumber(value)) {\n return isNegative ? '-' + value : value;\n }\n\n return value * (isNegative ? -1 : 1);\n};\n\nvar configs = {};\nconfigs.margin = {\n margin: {\n property: 'margin',\n scale: 'space',\n transform: getMargin,\n defaultScale: defaults.space\n },\n marginTop: {\n property: 'marginTop',\n scale: 'space',\n transform: getMargin,\n defaultScale: defaults.space\n },\n marginRight: {\n property: 'marginRight',\n scale: 'space',\n transform: getMargin,\n defaultScale: defaults.space\n },\n marginBottom: {\n property: 'marginBottom',\n scale: 'space',\n transform: getMargin,\n defaultScale: defaults.space\n },\n marginLeft: {\n property: 'marginLeft',\n scale: 'space',\n transform: getMargin,\n defaultScale: defaults.space\n },\n marginX: {\n properties: ['marginLeft', 'marginRight'],\n scale: 'space',\n transform: getMargin,\n defaultScale: defaults.space\n },\n marginY: {\n properties: ['marginTop', 'marginBottom'],\n scale: 'space',\n transform: getMargin,\n defaultScale: defaults.space\n }\n};\nconfigs.margin.m = configs.margin.margin;\nconfigs.margin.mt = configs.margin.marginTop;\nconfigs.margin.mr = configs.margin.marginRight;\nconfigs.margin.mb = configs.margin.marginBottom;\nconfigs.margin.ml = configs.margin.marginLeft;\nconfigs.margin.mx = configs.margin.marginX;\nconfigs.margin.my = configs.margin.marginY;\nconfigs.padding = {\n padding: {\n property: 'padding',\n scale: 'space',\n defaultScale: defaults.space\n },\n paddingTop: {\n property: 'paddingTop',\n scale: 'space',\n defaultScale: defaults.space\n },\n paddingRight: {\n property: 'paddingRight',\n scale: 'space',\n defaultScale: defaults.space\n },\n paddingBottom: {\n property: 'paddingBottom',\n scale: 'space',\n defaultScale: defaults.space\n },\n paddingLeft: {\n property: 'paddingLeft',\n scale: 'space',\n defaultScale: defaults.space\n },\n paddingX: {\n properties: ['paddingLeft', 'paddingRight'],\n scale: 'space',\n defaultScale: defaults.space\n },\n paddingY: {\n properties: ['paddingTop', 'paddingBottom'],\n scale: 'space',\n defaultScale: defaults.space\n }\n};\nconfigs.padding.p = configs.padding.padding;\nconfigs.padding.pt = configs.padding.paddingTop;\nconfigs.padding.pr = configs.padding.paddingRight;\nconfigs.padding.pb = configs.padding.paddingBottom;\nconfigs.padding.pl = configs.padding.paddingLeft;\nconfigs.padding.px = configs.padding.paddingX;\nconfigs.padding.py = configs.padding.paddingY;\nexport var margin = system(configs.margin);\nexport var padding = system(configs.padding);\nexport var space = compose(margin, padding);\nexport default space;\n","import { system } from '@styled-system/core';\nexport var shadow = system({\n boxShadow: {\n property: 'boxShadow',\n scale: 'shadows'\n },\n textShadow: {\n property: 'textShadow',\n scale: 'shadows'\n }\n});\nexport default shadow;\n","function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\n// based on https://github.com/developit/dlv\nexport var get = function get(obj, key, def, p, undef) {\n key = key && key.split ? key.split('.') : [key];\n\n for (p = 0; p < key.length; p++) {\n obj = obj ? obj[key[p]] : undef;\n }\n\n return obj === undef ? def : obj;\n};\nvar defaultBreakpoints = [40, 52, 64].map(function (n) {\n return n + 'em';\n});\nvar defaultTheme = {\n space: [0, 4, 8, 16, 32, 64, 128, 256, 512],\n fontSizes: [12, 14, 16, 20, 24, 32, 48, 64, 72]\n};\nvar aliases = {\n bg: 'backgroundColor',\n m: 'margin',\n mt: 'marginTop',\n mr: 'marginRight',\n mb: 'marginBottom',\n ml: 'marginLeft',\n mx: 'marginX',\n my: 'marginY',\n p: 'padding',\n pt: 'paddingTop',\n pr: 'paddingRight',\n pb: 'paddingBottom',\n pl: 'paddingLeft',\n px: 'paddingX',\n py: 'paddingY'\n};\nvar multiples = {\n marginX: ['marginLeft', 'marginRight'],\n marginY: ['marginTop', 'marginBottom'],\n paddingX: ['paddingLeft', 'paddingRight'],\n paddingY: ['paddingTop', 'paddingBottom'],\n size: ['width', 'height']\n};\nvar scales = {\n color: 'colors',\n backgroundColor: 'colors',\n borderColor: 'colors',\n margin: 'space',\n marginTop: 'space',\n marginRight: 'space',\n marginBottom: 'space',\n marginLeft: 'space',\n marginX: 'space',\n marginY: 'space',\n padding: 'space',\n paddingTop: 'space',\n paddingRight: 'space',\n paddingBottom: 'space',\n paddingLeft: 'space',\n paddingX: 'space',\n paddingY: 'space',\n top: 'space',\n right: 'space',\n bottom: 'space',\n left: 'space',\n gridGap: 'space',\n gridColumnGap: 'space',\n gridRowGap: 'space',\n gap: 'space',\n columnGap: 'space',\n rowGap: 'space',\n fontFamily: 'fonts',\n fontSize: 'fontSizes',\n fontWeight: 'fontWeights',\n lineHeight: 'lineHeights',\n letterSpacing: 'letterSpacings',\n border: 'borders',\n borderTop: 'borders',\n borderRight: 'borders',\n borderBottom: 'borders',\n borderLeft: 'borders',\n borderWidth: 'borderWidths',\n borderStyle: 'borderStyles',\n borderRadius: 'radii',\n borderTopRightRadius: 'radii',\n borderTopLeftRadius: 'radii',\n borderBottomRightRadius: 'radii',\n borderBottomLeftRadius: 'radii',\n borderTopWidth: 'borderWidths',\n borderTopColor: 'colors',\n borderTopStyle: 'borderStyles',\n borderBottomWidth: 'borderWidths',\n borderBottomColor: 'colors',\n borderBottomStyle: 'borderStyles',\n borderLeftWidth: 'borderWidths',\n borderLeftColor: 'colors',\n borderLeftStyle: 'borderStyles',\n borderRightWidth: 'borderWidths',\n borderRightColor: 'colors',\n borderRightStyle: 'borderStyles',\n outlineColor: 'colors',\n boxShadow: 'shadows',\n textShadow: 'shadows',\n zIndex: 'zIndices',\n width: 'sizes',\n minWidth: 'sizes',\n maxWidth: 'sizes',\n height: 'sizes',\n minHeight: 'sizes',\n maxHeight: 'sizes',\n flexBasis: 'sizes',\n size: 'sizes',\n // svg\n fill: 'colors',\n stroke: 'colors'\n};\n\nvar positiveOrNegative = function positiveOrNegative(scale, value) {\n if (typeof value !== 'number' || value >= 0) {\n return get(scale, value, value);\n }\n\n var absolute = Math.abs(value);\n var n = get(scale, absolute, absolute);\n if (typeof n === 'string') return '-' + n;\n return n * -1;\n};\n\nvar transforms = ['margin', 'marginTop', 'marginRight', 'marginBottom', 'marginLeft', 'marginX', 'marginY', 'top', 'bottom', 'left', 'right'].reduce(function (acc, curr) {\n var _extends2;\n\n return _extends({}, acc, (_extends2 = {}, _extends2[curr] = positiveOrNegative, _extends2));\n}, {});\nexport var responsive = function responsive(styles) {\n return function (theme) {\n var next = {};\n var breakpoints = get(theme, 'breakpoints', defaultBreakpoints);\n var mediaQueries = [null].concat(breakpoints.map(function (n) {\n return \"@media screen and (min-width: \" + n + \")\";\n }));\n\n for (var key in styles) {\n var value = typeof styles[key] === 'function' ? styles[key](theme) : styles[key];\n if (value == null) continue;\n\n if (!Array.isArray(value)) {\n next[key] = value;\n continue;\n }\n\n for (var i = 0; i < value.slice(0, mediaQueries.length).length; i++) {\n var media = mediaQueries[i];\n\n if (!media) {\n next[key] = value[i];\n continue;\n }\n\n next[media] = next[media] || {};\n if (value[i] == null) continue;\n next[media][key] = value[i];\n }\n }\n\n return next;\n };\n};\nexport var css = function css(args) {\n return function (props) {\n if (props === void 0) {\n props = {};\n }\n\n var theme = _extends({}, defaultTheme, {}, props.theme || props);\n\n var result = {};\n var obj = typeof args === 'function' ? args(theme) : args;\n var styles = responsive(obj)(theme);\n\n for (var key in styles) {\n var x = styles[key];\n var val = typeof x === 'function' ? x(theme) : x;\n\n if (key === 'variant') {\n var variant = css(get(theme, val))(theme);\n result = _extends({}, result, {}, variant);\n continue;\n }\n\n if (val && typeof val === 'object') {\n result[key] = css(val)(theme);\n continue;\n }\n\n var prop = get(aliases, key, key);\n var scaleName = get(scales, prop);\n var scale = get(theme, scaleName, get(theme, prop, {}));\n var transform = get(transforms, prop, get);\n var value = transform(scale, val, val);\n\n if (multiples[prop]) {\n var dirs = multiples[prop];\n\n for (var i = 0; i < dirs.length; i++) {\n result[dirs[i]] = value;\n }\n } else {\n result[prop] = value;\n }\n }\n\n return result;\n };\n};\nexport default css;\n","import { get, createParser } from '@styled-system/core';\nimport css from '@styled-system/css';\nexport var variant = function variant(_ref) {\n var _config;\n\n var scale = _ref.scale,\n _ref$prop = _ref.prop,\n prop = _ref$prop === void 0 ? 'variant' : _ref$prop,\n _ref$variants = _ref.variants,\n variants = _ref$variants === void 0 ? {} : _ref$variants,\n key = _ref.key;\n var sx;\n\n if (Object.keys(variants).length) {\n sx = function sx(value, scale, props) {\n return css(get(scale, value, null))(props.theme);\n };\n } else {\n sx = function sx(value, scale) {\n return get(scale, value, null);\n };\n }\n\n sx.scale = scale || key;\n sx.defaults = variants;\n var config = (_config = {}, _config[prop] = sx, _config);\n var parser = createParser(config);\n return parser;\n};\nexport default variant;\nexport var buttonStyle = variant({\n key: 'buttons'\n});\nexport var textStyle = variant({\n key: 'textStyles',\n prop: 'textStyle'\n});\nexport var colorStyle = variant({\n key: 'colorStyles',\n prop: 'colors'\n});\n","import { createStyleFunction, createParser } from '@styled-system/core'; // v4 api shims\n\nimport layout from '@styled-system/layout';\nimport color from '@styled-system/color';\nimport typography from '@styled-system/typography';\nimport flexbox from '@styled-system/flexbox';\nimport grid from '@styled-system/grid';\nimport border from '@styled-system/border';\nimport background from '@styled-system/background';\nimport position from '@styled-system/position';\nexport { get, createParser, createStyleFunction, compose, system } from '@styled-system/core';\nexport { margin, padding, space } from '@styled-system/space';\nexport { color } from '@styled-system/color';\nexport { layout } from '@styled-system/layout';\nexport { typography } from '@styled-system/typography';\nexport { flexbox } from '@styled-system/flexbox';\nexport { border } from '@styled-system/border';\nexport { background } from '@styled-system/background';\nexport { position } from '@styled-system/position';\nexport { grid } from '@styled-system/grid';\nexport { shadow } from '@styled-system/shadow';\nexport { default as boxShadow, default as textShadow } from '@styled-system/shadow';\nexport { variant, buttonStyle, textStyle, colorStyle } from '@styled-system/variant';\nvar width = layout.width,\n height = layout.height,\n minWidth = layout.minWidth,\n minHeight = layout.minHeight,\n maxWidth = layout.maxWidth,\n maxHeight = layout.maxHeight,\n size = layout.size,\n verticalAlign = layout.verticalAlign,\n display = layout.display,\n overflow = layout.overflow,\n overflowX = layout.overflowX,\n overflowY = layout.overflowY;\nvar opacity = color.opacity;\nvar fontSize = typography.fontSize,\n fontFamily = typography.fontFamily,\n fontWeight = typography.fontWeight,\n lineHeight = typography.lineHeight,\n textAlign = typography.textAlign,\n fontStyle = typography.fontStyle,\n letterSpacing = typography.letterSpacing;\nvar alignItems = flexbox.alignItems,\n alignContent = flexbox.alignContent,\n justifyItems = flexbox.justifyItems,\n justifyContent = flexbox.justifyContent,\n flexWrap = flexbox.flexWrap,\n flexDirection = flexbox.flexDirection,\n flex = flexbox.flex,\n flexGrow = flexbox.flexGrow,\n flexShrink = flexbox.flexShrink,\n flexBasis = flexbox.flexBasis,\n justifySelf = flexbox.justifySelf,\n alignSelf = flexbox.alignSelf,\n order = flexbox.order;\nvar gridGap = grid.gridGap,\n gridColumnGap = grid.gridColumnGap,\n gridRowGap = grid.gridRowGap,\n gridColumn = grid.gridColumn,\n gridRow = grid.gridRow,\n gridAutoFlow = grid.gridAutoFlow,\n gridAutoColumns = grid.gridAutoColumns,\n gridAutoRows = grid.gridAutoRows,\n gridTemplateColumns = grid.gridTemplateColumns,\n gridTemplateRows = grid.gridTemplateRows,\n gridTemplateAreas = grid.gridTemplateAreas,\n gridArea = grid.gridArea;\nvar borderWidth = border.borderWidth,\n borderStyle = border.borderStyle,\n borderColor = border.borderColor,\n borderTop = border.borderTop,\n borderRight = border.borderRight,\n borderBottom = border.borderBottom,\n borderLeft = border.borderLeft,\n borderRadius = border.borderRadius;\nvar backgroundImage = background.backgroundImage,\n backgroundSize = background.backgroundSize,\n backgroundPosition = background.backgroundPosition,\n backgroundRepeat = background.backgroundRepeat;\nvar zIndex = position.zIndex,\n top = position.top,\n right = position.right,\n bottom = position.bottom,\n left = position.left;\nexport { default as borders } from '@styled-system/border';\nexport { width, height, minWidth, minHeight, maxWidth, maxHeight, size, verticalAlign, display, overflow, overflowX, overflowY // color\n, opacity // typography\n, fontSize, fontFamily, fontWeight, lineHeight, textAlign, fontStyle, letterSpacing // flexbox\n, alignItems, alignContent, justifyItems, justifyContent, flexWrap, flexDirection, flex, flexGrow, flexShrink, flexBasis, justifySelf, alignSelf, order // grid\n, gridGap, gridColumnGap, gridRowGap, gridColumn, gridRow, gridAutoFlow, gridAutoColumns, gridAutoRows, gridTemplateColumns, gridTemplateRows, gridTemplateAreas, gridArea // border\n, borderWidth, borderStyle, borderColor, borderTop, borderRight, borderBottom, borderLeft, borderRadius // background\n, backgroundImage, backgroundSize, backgroundPosition, backgroundRepeat // position\n, zIndex, top, right, bottom, left }; // v4 style API shim\n\nexport var style = function style(_ref) {\n var prop = _ref.prop,\n cssProperty = _ref.cssProperty,\n alias = _ref.alias,\n key = _ref.key,\n transformValue = _ref.transformValue,\n scale = _ref.scale,\n properties = _ref.properties;\n var config = {};\n config[prop] = createStyleFunction({\n properties: properties,\n property: cssProperty || prop,\n scale: key,\n defaultScale: scale,\n transform: transformValue\n });\n if (alias) config[alias] = config[prop];\n var parse = createParser(config);\n return parse;\n};\n","import { StyledRadixAccordionContent, ContentContainer } from \"./styles\";\nimport { type TypeAccordionSystemProps } from \"./AccordionTypes\";\nimport { AccordionContext } from \"./Accordion\";\nimport { useContext } from \"react\";\n\ninterface TypeAccordionContentProps extends TypeAccordionSystemProps {\n children?: React.ReactNode;\n}\n\nexport const AccordionContent = ({\n children,\n ...rest\n}: TypeAccordionContentProps) => {\n const { styled } = useContext(AccordionContext);\n\n return (\n <StyledRadixAccordionContent data-styled={styled}>\n <ContentContainer data-styled={styled} {...rest}>\n {children}\n </ContentContainer>\n </StyledRadixAccordionContent>\n );\n};\n","import { StyledRadixAccordionTrigger, TitleStyles } from \"./styles\";\nimport {\n type TypeAccordionSystemProps,\n type TypeRelatedAction,\n type TypeOverflowMenuConfig,\n} from \"./AccordionTypes\";\nimport { FlexCenter, StyledAccordionArea, TriggerContainer } from \"./styles\";\nimport { Box } from \"@sproutsocial/seeds-react-box\";\nimport { Button } from \"@sproutsocial/seeds-react-button\";\nimport { Icon } from \"@sproutsocial/seeds-react-icon\";\nimport {\n ActionMenu,\n MenuContent,\n MenuItem,\n MenuGroup,\n MenuToggleButton,\n} from \"@sproutsocial/seeds-react-menu\";\nimport { useContext } from \"react\";\nimport { AccordionContext } from \"./Accordion\";\n\nconst MAX_RELATED_ACTIONS = 2;\n\ninterface TypeAccordionTriggerProps extends TypeAccordionSystemProps {\n title: string;\n leftSlot?: React.ReactNode;\n relatedActions?: TypeRelatedAction[];\n overflowMenu?: TypeOverflowMenuConfig;\n rightSlot?: React.ReactNode;\n}\n\nexport const AccordionTrigger = ({\n children,\n leftSlot,\n relatedActions,\n overflowMenu,\n rightSlot,\n title,\n ...rest\n}: TypeAccordionTriggerProps) => {\n const { triggerIcon, triggerPosition, styled } = useContext(AccordionContext);\n\n // Validate and limit related actions\n const validatedActions = relatedActions?.slice(0, MAX_RELATED_ACTIONS);\n\n // Extract system props to distribute to appropriate container\n const {\n color,\n padding,\n paddingBottom,\n paddingTop,\n paddingX,\n paddingY,\n paddingLeft,\n paddingRight,\n p,\n pb,\n pt,\n pr,\n pl,\n px,\n py,\n fontFamily,\n fontSize,\n fontStyle,\n fontWeight,\n lineHeight,\n textAlign,\n ...triggerProps\n } = rest;\n\n const spacingProps = {\n padding,\n paddingBottom,\n paddingTop,\n paddingX,\n paddingY,\n paddingLeft,\n paddingRight,\n p,\n pb,\n pt,\n pr,\n pl,\n px,\n py,\n };\n\n // When you destructure color from rest, it might be null, which is incompatible with what the styled component expects. We need to filter out null or undefined values from typographyProps before spreading them.\n\n const typographyProps = Object.fromEntries(\n Object.entries({\n color,\n fontFamily,\n fontSize,\n fontStyle,\n fontWeight,\n lineHeight,\n textAlign,\n }).filter(([_, value]) => value != null)\n );\n\n // Render overflow menu from config\n const renderedOverflowMenu = overflowMenu && (\n <ActionMenu\n menuToggleElement={\n <MenuToggleButton\n aria-label={overflowMenu[\"aria-label\"]}\n appearance=\"unstyled\"\n >\n <Icon\n name=\"ellipsis-horizontal-outline\"\n aria-hidden=\"true\"\n color={color}\n />\n </MenuToggleButton>\n }\n >\n <MenuContent>\n <MenuGroup id=\"overflow-actions\">\n {overflowMenu.items.map((item, index) => {\n const { iconName, id, onClick, children, ...menuItemProps } = item;\n return (\n <MenuItem\n key={id || `overflow-item-${index}`}\n id={id || `overflow-item-${index}`}\n onClick={onClick}\n {...menuItemProps}\n >\n {iconName ? (\n <Box\n display=\"flex\"\n alignItems=\"center\"\n gap=\"300\"\n color={color}\n >\n <Icon name={iconName} color={color} />\n {children}\n </Box>\n ) : (\n children\n )}\n </MenuItem>\n );\n })}\n </MenuGroup>\n </MenuContent>\n </ActionMenu>\n );\n\n // Render related actions from config\n const renderedRelatedActions = validatedActions &&\n validatedActions.length > 0 && (\n <Box display=\"flex\">\n {validatedActions.map((action, index) => (\n <Button\n key={`${action.iconName}-${index}`}\n onClick={action.onClick}\n aria-label={action[\"aria-label\"]}\n >\n <Icon name={action.iconName} color={color} aria-hidden=\"true\" />\n </Button>\n ))}\n </Box>\n );\n\n return (\n <TriggerContainer data-styled={styled} {...triggerProps}>\n <StyledRadixAccordionTrigger data-styled={styled} {...spacingProps}>\n {triggerPosition === \"right\" ? (\n <StyledAccordionArea>\n <FlexCenter>\n {leftSlot}\n <TitleStyles data-styled={styled} {...typographyProps}>\n {title}\n </TitleStyles>\n {rightSlot}\n </FlexCenter>\n {triggerIcon}\n </StyledAccordionArea>\n ) : (\n <StyledAccordionArea>\n <FlexCenter>\n <Box mr={300}>{triggerIcon}</Box>\n {leftSlot}\n <TitleStyles data-styled={styled} {...typographyProps}>\n {title}\n </TitleStyles>\n </FlexCenter>\n {rightSlot}\n </StyledAccordionArea>\n )}\n </StyledRadixAccordionTrigger>\n <Box mr={300} display=\"flex\">\n {renderedOverflowMenu}\n {renderedRelatedActions}\n </Box>\n </TriggerContainer>\n );\n};\n"],"mappings":"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","names":["exports","module","import_seeds_react_icon","styled","React","RadixAccordion","RadixAccordion","merge","assign","sort","createMediaQuery","getValue","get","createParser","config","parse","parseResponsiveStyle","parseResponsiveObject","createStyleFunction","sx","scale","system","compose","parser","isNumber","getWidth","config","index_esm_default","defaults","config","index_esm_default","config","index_esm_default","defaults","config","index_esm_default","config","index_esm_default","config","index_esm_default","defaults","config","index_esm_default","defaults","isNumber","getMargin","get","positiveOrNegative","responsive","css","variant","index_esm_default","variant","sx","scale","index_esm_default","config","index_esm_default","import_seeds_react_system_props","styled","import_jsx_runtime","import_react","import_jsx_runtime","styled","import_seeds_react_icon","import_seeds_react_menu","import_react","import_jsx_runtime","styled","color","padding","fontFamily","fontSize","fontStyle","fontWeight","lineHeight","textAlign","children"]}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@sproutsocial/seeds-react-accordion",
|
|
3
|
-
"version": "0.1
|
|
3
|
+
"version": "0.2.1",
|
|
4
4
|
"description": "Seeds React Accordion",
|
|
5
5
|
"author": "Sprout Social, Inc.",
|
|
6
6
|
"license": "MIT",
|
|
@@ -22,9 +22,9 @@
|
|
|
22
22
|
"@sproutsocial/seeds-react-theme": "^3.2.1",
|
|
23
23
|
"@sproutsocial/seeds-react-system-props": "^3.0.1",
|
|
24
24
|
"@sproutsocial/seeds-react-box": "1.1.7",
|
|
25
|
-
"@sproutsocial/seeds-react-button": "1.3.
|
|
26
|
-
"@sproutsocial/seeds-react-icon": "2.0.
|
|
27
|
-
"@sproutsocial/seeds-react-menu": "1.7.
|
|
25
|
+
"@sproutsocial/seeds-react-button": "1.3.8",
|
|
26
|
+
"@sproutsocial/seeds-react-icon": "2.0.3",
|
|
27
|
+
"@sproutsocial/seeds-react-menu": "1.7.2"
|
|
28
28
|
},
|
|
29
29
|
"devDependencies": {
|
|
30
30
|
"@types/react": "^18.0.0",
|
|
@@ -215,6 +215,13 @@ export const Styleable = {
|
|
|
215
215
|
return (
|
|
216
216
|
<Accordion
|
|
217
217
|
triggerPosition="left"
|
|
218
|
+
triggerIcon={
|
|
219
|
+
<Icon
|
|
220
|
+
className="triggerIcon"
|
|
221
|
+
name="chevron-down-outline"
|
|
222
|
+
color="red.500"
|
|
223
|
+
/>
|
|
224
|
+
}
|
|
218
225
|
defaultValue={["section-1"]}
|
|
219
226
|
styled={false}
|
|
220
227
|
>
|
|
@@ -225,25 +232,27 @@ export const Styleable = {
|
|
|
225
232
|
p={400}
|
|
226
233
|
color="red.500"
|
|
227
234
|
fontWeight="bold"
|
|
228
|
-
fontSize={
|
|
235
|
+
fontSize={900}
|
|
236
|
+
relatedActions={[
|
|
237
|
+
{
|
|
238
|
+
iconName: "alarm-clock",
|
|
239
|
+
onClick: () => alert("hello"),
|
|
240
|
+
"aria-label": "Set alarm",
|
|
241
|
+
},
|
|
242
|
+
{
|
|
243
|
+
iconName: "ellipsis-horizontal-outline",
|
|
244
|
+
onClick: () => alert("goodbye"),
|
|
245
|
+
"aria-label": "More options",
|
|
246
|
+
},
|
|
247
|
+
]}
|
|
229
248
|
/>
|
|
230
|
-
<AccordionContent bg="blue.300" p={400}>
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
you want. Every time you practice, you learn more.
|
|
238
|
-
</Text.SmallBodyCopy>
|
|
239
|
-
<Text.SmallBodyCopy as="p">
|
|
240
|
-
We don't really know where this goes - and I'm not sure we really
|
|
241
|
-
care. Paint anything you want on the canvas. Create your own
|
|
242
|
-
world. We don't need any guidelines or formats. All we need to do
|
|
243
|
-
is just let it flow right out of us. Use absolutely no pressure.
|
|
244
|
-
Just like an angel's wing. In your imagination you can go anywhere
|
|
245
|
-
you want. Every time you practice, you learn more.
|
|
246
|
-
</Text.SmallBodyCopy>
|
|
249
|
+
<AccordionContent bg="blue.300" p={400} typeScale={600}>
|
|
250
|
+
We don't really know where this goes - and I'm not sure we really
|
|
251
|
+
care. Paint anything you want on the canvas. Create your own world.
|
|
252
|
+
We don't need any guidelines or formats. All we need to do is just
|
|
253
|
+
let it flow right out of us. Use absolutely no pressure. Just like
|
|
254
|
+
an angel's wing. In your imagination you can go anywhere you want.
|
|
255
|
+
Every time you practice, you learn more.
|
|
247
256
|
</AccordionContent>
|
|
248
257
|
</AccordionItem>
|
|
249
258
|
<AccordionItem value="section-2">
|
package/src/AccordionTrigger.tsx
CHANGED
|
@@ -60,6 +60,7 @@ export const AccordionTrigger = ({
|
|
|
60
60
|
px,
|
|
61
61
|
py,
|
|
62
62
|
fontFamily,
|
|
63
|
+
fontSize,
|
|
63
64
|
fontStyle,
|
|
64
65
|
fontWeight,
|
|
65
66
|
lineHeight,
|
|
@@ -90,6 +91,7 @@ export const AccordionTrigger = ({
|
|
|
90
91
|
Object.entries({
|
|
91
92
|
color,
|
|
92
93
|
fontFamily,
|
|
94
|
+
fontSize,
|
|
93
95
|
fontStyle,
|
|
94
96
|
fontWeight,
|
|
95
97
|
lineHeight,
|
|
@@ -105,7 +107,11 @@ export const AccordionTrigger = ({
|
|
|
105
107
|
aria-label={overflowMenu["aria-label"]}
|
|
106
108
|
appearance="unstyled"
|
|
107
109
|
>
|
|
108
|
-
<Icon
|
|
110
|
+
<Icon
|
|
111
|
+
name="ellipsis-horizontal-outline"
|
|
112
|
+
aria-hidden="true"
|
|
113
|
+
color={color}
|
|
114
|
+
/>
|
|
109
115
|
</MenuToggleButton>
|
|
110
116
|
}
|
|
111
117
|
>
|
|
@@ -121,8 +127,13 @@ export const AccordionTrigger = ({
|
|
|
121
127
|
{...menuItemProps}
|
|
122
128
|
>
|
|
123
129
|
{iconName ? (
|
|
124
|
-
<Box
|
|
125
|
-
|
|
130
|
+
<Box
|
|
131
|
+
display="flex"
|
|
132
|
+
alignItems="center"
|
|
133
|
+
gap="300"
|
|
134
|
+
color={color}
|
|
135
|
+
>
|
|
136
|
+
<Icon name={iconName} color={color} />
|
|
126
137
|
{children}
|
|
127
138
|
</Box>
|
|
128
139
|
) : (
|
|
@@ -146,7 +157,7 @@ export const AccordionTrigger = ({
|
|
|
146
157
|
onClick={action.onClick}
|
|
147
158
|
aria-label={action["aria-label"]}
|
|
148
159
|
>
|
|
149
|
-
<Icon name={action.iconName} aria-hidden="true" />
|
|
160
|
+
<Icon name={action.iconName} color={color} aria-hidden="true" />
|
|
150
161
|
</Button>
|
|
151
162
|
))}
|
|
152
163
|
</Box>
|
package/src/AccordionTypes.ts
CHANGED
|
@@ -5,7 +5,7 @@ import {
|
|
|
5
5
|
type TypeFlexboxSystemProps,
|
|
6
6
|
type TypeLayoutSystemProps,
|
|
7
7
|
type TypeStyledComponentsCommonProps,
|
|
8
|
-
type
|
|
8
|
+
type TypeSystemTypographyProps,
|
|
9
9
|
} from "@sproutsocial/seeds-react-system-props";
|
|
10
10
|
import { type TypeIconName } from "@sproutsocial/seeds-react-icon";
|
|
11
11
|
import { type TypeMenuItemProps } from "@sproutsocial/seeds-react-menu";
|
|
@@ -17,7 +17,7 @@ export interface TypeAccordionSystemProps
|
|
|
17
17
|
TypeBorderSystemProps,
|
|
18
18
|
TypeFlexboxSystemProps,
|
|
19
19
|
TypeLayoutSystemProps,
|
|
20
|
-
|
|
20
|
+
TypeSystemTypographyProps {}
|
|
21
21
|
|
|
22
22
|
export interface TypeAccordionProps {
|
|
23
23
|
children?: React.ReactNode;
|
|
@@ -52,7 +52,7 @@ describe("Accordion", () => {
|
|
|
52
52
|
expect(screen.getByLabelText("More options")).toBeInTheDocument();
|
|
53
53
|
});
|
|
54
54
|
|
|
55
|
-
it("limits related actions to maximum of
|
|
55
|
+
it("limits related actions to maximum of 2", () => {
|
|
56
56
|
render(
|
|
57
57
|
<Accordion defaultValue={["item-1"]}>
|
|
58
58
|
<AccordionItem value="item-1">
|
|
@@ -88,7 +88,7 @@ describe("Accordion", () => {
|
|
|
88
88
|
|
|
89
89
|
expect(screen.getByLabelText("Action 1")).toBeInTheDocument();
|
|
90
90
|
expect(screen.getByLabelText("Action 2")).toBeInTheDocument();
|
|
91
|
-
expect(screen.
|
|
91
|
+
expect(screen.queryByLabelText("Action 3")).not.toBeInTheDocument();
|
|
92
92
|
expect(screen.queryByLabelText("Action 4")).not.toBeInTheDocument();
|
|
93
93
|
});
|
|
94
94
|
|
|
@@ -416,4 +416,36 @@ describe("Accordion", () => {
|
|
|
416
416
|
expect(screen.getByText("Test Title")).toBeInTheDocument();
|
|
417
417
|
});
|
|
418
418
|
});
|
|
419
|
+
|
|
420
|
+
describe("fontSize customization", () => {
|
|
421
|
+
it("applies fontSize prop to AccordionTrigger", () => {
|
|
422
|
+
render(
|
|
423
|
+
<Accordion defaultValue={["item-1"]} styled={false}>
|
|
424
|
+
<AccordionItem value="item-1">
|
|
425
|
+
<AccordionTrigger title="Custom Font Size" fontSize={400} />
|
|
426
|
+
<AccordionContent>Content</AccordionContent>
|
|
427
|
+
</AccordionItem>
|
|
428
|
+
</Accordion>
|
|
429
|
+
);
|
|
430
|
+
|
|
431
|
+
const title = screen.getByText("Custom Font Size");
|
|
432
|
+
expect(title).toBeInTheDocument();
|
|
433
|
+
// Verify component renders without errors when fontSize prop is provided
|
|
434
|
+
});
|
|
435
|
+
|
|
436
|
+
it("applies typeScale prop to AccordionContent", () => {
|
|
437
|
+
render(
|
|
438
|
+
<Accordion defaultValue={["item-1"]} styled={false}>
|
|
439
|
+
<AccordionItem value="item-1">
|
|
440
|
+
<AccordionTrigger title="Test" />
|
|
441
|
+
<AccordionContent typeScale={300}>Custom Content</AccordionContent>
|
|
442
|
+
</AccordionItem>
|
|
443
|
+
</Accordion>
|
|
444
|
+
);
|
|
445
|
+
|
|
446
|
+
const content = screen.getByText("Custom Content");
|
|
447
|
+
expect(content).toBeInTheDocument();
|
|
448
|
+
// Verify component renders without errors when typeScale prop is provided
|
|
449
|
+
});
|
|
450
|
+
});
|
|
419
451
|
});
|
package/src/styles.ts
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import styled, { css } from "styled-components";
|
|
2
2
|
import * as RadixAccordion from "@radix-ui/react-accordion";
|
|
3
|
+
import { fontSize } from "styled-system";
|
|
3
4
|
import {
|
|
4
5
|
BORDER,
|
|
5
6
|
COMMON,
|
|
@@ -50,7 +51,6 @@ export const StyledRadixAccordionTrigger = styled(
|
|
|
50
51
|
${({ theme }) => theme.typography[200]};
|
|
51
52
|
|
|
52
53
|
.triggerIcon {
|
|
53
|
-
color: ${({ theme }) => theme.colors.icon.base};
|
|
54
54
|
transition: transform 300ms ease-in-out;
|
|
55
55
|
}
|
|
56
56
|
|
|
@@ -114,10 +114,10 @@ export const ContentContainer = styled.div<StyledAccordionProps>`
|
|
|
114
114
|
color: ${({ theme }) => theme.colors.text.body};
|
|
115
115
|
background: transparent;
|
|
116
116
|
font-family: ${({ theme }) => theme.fontFamily};
|
|
117
|
-
${({ theme }) => theme.typography[200]};
|
|
118
117
|
|
|
119
118
|
&[data-styled="true"] {
|
|
120
119
|
padding: ${({ theme }) => theme.space[400]};
|
|
120
|
+
${({ theme }) => theme.typography[200]};
|
|
121
121
|
}
|
|
122
122
|
|
|
123
123
|
.accordion-item:last-child[data-state="open"] &[data-styled="true"],
|
|
@@ -127,6 +127,7 @@ export const ContentContainer = styled.div<StyledAccordionProps>`
|
|
|
127
127
|
}
|
|
128
128
|
|
|
129
129
|
${COMMON}
|
|
130
|
+
${TYPOGRAPHY}
|
|
130
131
|
${BORDER}
|
|
131
132
|
${LAYOUT}
|
|
132
133
|
${FLEXBOX}
|
|
@@ -181,14 +182,15 @@ export const TriggerContainer = styled.div<StyledAccordionProps>`
|
|
|
181
182
|
|
|
182
183
|
export const TitleStyles = styled.h4<StyledAccordionProps>`
|
|
183
184
|
margin: 0;
|
|
184
|
-
font-size: ${({ theme }) => theme.fontSizes[200]};
|
|
185
185
|
font-weight: normal;
|
|
186
186
|
|
|
187
187
|
&[data-styled="true"] {
|
|
188
|
+
font-size: ${({ theme }) => theme.fontSizes[200]};
|
|
188
189
|
font-weight: ${({ theme }) => theme.fontWeights.semibold};
|
|
189
190
|
color: ${({ theme }) => theme.colors.text.headline};
|
|
190
191
|
}
|
|
191
192
|
|
|
192
193
|
${COMMON}
|
|
193
194
|
${TYPOGRAPHY}
|
|
195
|
+
${fontSize}
|
|
194
196
|
`;
|