@kaizen/components 1.38.4 → 1.38.6
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/cjs/Menu/subcomponents/MenuItem/MenuItem.cjs +5 -1
- package/dist/cjs/Menu/subcomponents/MenuItem/MenuItem.cjs.map +1 -1
- package/dist/cjs/TimeField/TimeField.cjs +7 -7
- package/dist/cjs/TimeField/TimeField.cjs.map +1 -1
- package/dist/cjs/TimeField/TimeField.module.scss.cjs +1 -1
- package/dist/cjs/TitleBlockZen/TitleBlockZen.cjs +10 -5
- package/dist/cjs/TitleBlockZen/TitleBlockZen.cjs.map +1 -1
- package/dist/cjs/TitleBlockZen/constants.cjs +7 -0
- package/dist/cjs/TitleBlockZen/constants.cjs.map +1 -0
- package/dist/cjs/TitleBlockZen/subcomponents/MainActions.cjs +2 -0
- package/dist/cjs/TitleBlockZen/subcomponents/MainActions.cjs.map +1 -1
- package/dist/cjs/TitleBlockZen/subcomponents/MobileActions.cjs +31 -6
- package/dist/cjs/TitleBlockZen/subcomponents/MobileActions.cjs.map +1 -1
- package/dist/cjs/TitleBlockZen/subcomponents/SecondaryActions.cjs +3 -1
- package/dist/cjs/TitleBlockZen/subcomponents/SecondaryActions.cjs.map +1 -1
- package/dist/cjs/dts/Menu/subcomponents/MenuItem/MenuItem.d.ts +2 -1
- package/dist/cjs/dts/TitleBlockZen/TitleBlockZen.d.ts +1 -1
- package/dist/cjs/dts/TitleBlockZen/constants.d.ts +2 -0
- package/dist/cjs/dts/TitleBlockZen/index.d.ts +1 -0
- package/dist/cjs/dts/TitleBlockZen/subcomponents/MobileActions.d.ts +2 -1
- package/dist/cjs/dts/TitleBlockZen/types.d.ts +2 -0
- package/dist/cjs/index.cjs +3 -0
- package/dist/cjs/index.cjs.map +1 -1
- package/dist/cjs/index.css +5 -5
- package/dist/esm/Menu/subcomponents/MenuItem/MenuItem.mjs +5 -1
- package/dist/esm/Menu/subcomponents/MenuItem/MenuItem.mjs.map +1 -1
- package/dist/esm/TimeField/TimeField.mjs +7 -7
- package/dist/esm/TimeField/TimeField.mjs.map +1 -1
- package/dist/esm/TimeField/TimeField.module.scss.mjs +1 -1
- package/dist/esm/TitleBlockZen/TitleBlockZen.mjs +10 -5
- package/dist/esm/TitleBlockZen/TitleBlockZen.mjs.map +1 -1
- package/dist/esm/TitleBlockZen/constants.mjs +4 -0
- package/dist/esm/TitleBlockZen/constants.mjs.map +1 -0
- package/dist/esm/TitleBlockZen/subcomponents/MainActions.mjs +2 -0
- package/dist/esm/TitleBlockZen/subcomponents/MainActions.mjs.map +1 -1
- package/dist/esm/TitleBlockZen/subcomponents/MobileActions.mjs +32 -7
- package/dist/esm/TitleBlockZen/subcomponents/MobileActions.mjs.map +1 -1
- package/dist/esm/TitleBlockZen/subcomponents/SecondaryActions.mjs +3 -1
- package/dist/esm/TitleBlockZen/subcomponents/SecondaryActions.mjs.map +1 -1
- package/dist/esm/dts/Menu/subcomponents/MenuItem/MenuItem.d.ts +2 -1
- package/dist/esm/dts/TitleBlockZen/TitleBlockZen.d.ts +1 -1
- package/dist/esm/dts/TitleBlockZen/constants.d.ts +2 -0
- package/dist/esm/dts/TitleBlockZen/index.d.ts +1 -0
- package/dist/esm/dts/TitleBlockZen/subcomponents/MobileActions.d.ts +2 -1
- package/dist/esm/dts/TitleBlockZen/types.d.ts +2 -0
- package/dist/esm/index.css +4 -4
- package/dist/esm/index.mjs +1 -0
- package/dist/esm/index.mjs.map +1 -1
- package/dist/index.d.ts +9 -3
- package/dist/styles.css +1 -1
- package/package.json +24 -24
- package/src/Menu/subcomponents/MenuItem/MenuItem.tsx +5 -0
- package/src/TimeField/TimeField.module.scss +2 -1
- package/src/TimeField/TimeField.tsx +9 -11
- package/src/TitleBlockZen/TitleBlockZen.spec.tsx +41 -0
- package/src/TitleBlockZen/TitleBlockZen.tsx +4 -0
- package/src/TitleBlockZen/constants.ts +3 -0
- package/src/TitleBlockZen/index.ts +1 -0
- package/src/TitleBlockZen/subcomponents/MainActions.tsx +2 -0
- package/src/TitleBlockZen/subcomponents/MobileActions.spec.tsx +87 -0
- package/src/TitleBlockZen/subcomponents/MobileActions.tsx +39 -3
- package/src/TitleBlockZen/subcomponents/SecondaryActions.tsx +2 -0
- package/src/TitleBlockZen/types.ts +2 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TitleBlockZen.mjs","sources":["../../../src/TitleBlockZen/TitleBlockZen.tsx"],"sourcesContent":["import React from \"react\"\nimport classnames from \"classnames\"\nimport { Avatar } from \"~components/Avatar\"\nimport { IconButton } from \"~components/Button\"\nimport { Heading } from \"~components/Heading\"\nimport { ArrowLeftIcon, ArrowRightIcon, HamburgerIcon } from \"~components/Icon\"\nimport { Select } from \"~components/Select\"\nimport { Tag } from \"~components/Tag\"\nimport { useMediaQueries } from \"~utils/useMediaQueries\"\nimport { MainActions } from \"./subcomponents/MainActions\"\nimport { MobileActions } from \"./subcomponents/MobileActions\"\nimport { SecondaryActions } from \"./subcomponents/SecondaryActions\"\nimport {\n TitleBlockBreadcrumbProps,\n NavigationTabs,\n SurveyStatus,\n TitleBlockAvatarProps,\n TitleBlockProps,\n TitleBlockVariant,\n} from \"./types\"\nimport { createTabletOverflowMenuItems, isReversed } from \"./utils\"\nimport styles from \"./TitleBlockZen.module.scss\"\n\nconst renderTag = (surveyStatus: SurveyStatus): JSX.Element | void => {\n let tagVariant: React.ComponentPropsWithoutRef<typeof Tag>[\"variant\"]\n\n if (tagVariant === \"profile\") {\n return\n }\n\n if (surveyStatus.status === \"draft\") {\n tagVariant = \"statusDraft\"\n }\n\n /*\n scheduled is actually a draft survey status that has a launch job scheduled\n still, we want to differentiate on the UI and render a specific tag\n the styles must be identical to the draft style\n\n we have similar behaviour on programs index page's table\n */\n if (surveyStatus.status === \"scheduled\") {\n tagVariant = \"statusClosed\"\n }\n\n if (surveyStatus.status === \"live\") {\n tagVariant = \"statusLive\"\n }\n\n if (surveyStatus.status === \"closed\") {\n tagVariant = \"statusClosed\"\n }\n\n if (surveyStatus.status === \"sentimentPositive\") {\n tagVariant = \"sentimentPositive\"\n }\n\n if (surveyStatus.status === \"default\") {\n tagVariant = \"default\"\n }\n\n return (\n <div\n data-automation-id=\"survey-status-tag\"\n data-testid=\"survey-status-tag\"\n className={styles.tag}\n >\n <Tag variant={tagVariant} size=\"small\">\n {surveyStatus.text}\n </Tag>\n </div>\n )\n}\n\nconst isJSXElement = (\n imageElementOrAvatarProps: JSX.Element | TitleBlockAvatarProps\n): imageElementOrAvatarProps is JSX.Element =>\n \"props\" in imageElementOrAvatarProps\n\nconst renderAvatar = (\n imageElementOrAvatarProps: JSX.Element | TitleBlockAvatarProps,\n avatarAutomationId: string\n): JSX.Element =>\n isJSXElement(imageElementOrAvatarProps) ? (\n <div\n data-automation-id={avatarAutomationId}\n data-testid={avatarAutomationId}\n className={classnames(styles.avatar, styles.withBorder)}\n >\n {imageElementOrAvatarProps}\n </div>\n ) : (\n <div\n data-automation-id={avatarAutomationId}\n data-testid={avatarAutomationId}\n className={styles.avatar}\n >\n <Avatar {...imageElementOrAvatarProps} size=\"medium\" />\n </div>\n )\n\nconst renderSubtitle = (\n subtitle: React.ReactNode,\n subtitleAutomationId: string\n): JSX.Element => (\n <div className={styles.subtitle}>\n <span\n data-automation-id={subtitleAutomationId}\n data-testid={subtitleAutomationId}\n className={styles.subtitleText}\n >\n {subtitle}\n </span>\n </div>\n)\n\nconst defaultRenderSectionTitle = (\n sectionTitle?: string,\n sectionTitleDescription?: string,\n variant?: TitleBlockVariant,\n sectionTitleAutomationId?: string,\n sectionTitleDescriptionAutomationId?: string\n): JSX.Element => (\n <>\n {sectionTitle && (\n <div className={styles.sectionTitle}>\n <Heading\n variant=\"heading-2\"\n color={isReversed(variant) ? \"white\" : \"dark\"}\n classNameOverride={styles.sectionTitleOverride}\n data-automation-id={sectionTitleAutomationId}\n data-testid={sectionTitleAutomationId}\n >\n {sectionTitle}\n </Heading>\n </div>\n )}\n {sectionTitleDescription && (\n <div\n data-automation-id={sectionTitleDescriptionAutomationId}\n data-testid={sectionTitleDescriptionAutomationId}\n className={classnames(\n styles.sectionTitleDescription,\n !isReversed(variant) && styles.dark\n )}\n >\n {sectionTitleDescription}\n </div>\n )}\n </>\n)\n\nconst Breadcrumb = ({\n breadcrumb,\n automationId,\n textAutomationId,\n textDirection,\n}: TitleBlockBreadcrumbProps): JSX.Element => {\n const { path, handleClick, text, render } = breadcrumb\n const icon =\n textDirection === \"rtl\" ? (\n <ArrowRightIcon role=\"presentation\" />\n ) : (\n <ArrowLeftIcon role=\"presentation\" />\n )\n const InnerContents = (): JSX.Element => (\n <>\n <div className={styles.circle}>{icon}</div>\n <span\n className={styles.breadcrumbTextLink}\n data-automation-id={textAutomationId}\n data-testid={textAutomationId}\n >\n <span className={styles.breadcrumbText}>{text}</span>\n </span>\n </>\n )\n\n if (render) {\n const CustomRender = render\n return (\n <CustomRender\n breadcrumb={breadcrumb}\n className={styles.breadcrumb}\n automationId={automationId}\n textAutomationId={textAutomationId}\n textDirection={textDirection}\n >\n <InnerContents />\n </CustomRender>\n )\n }\n\n const TagName = path ? \"a\" : \"button\"\n\n return (\n <TagName\n {...(path && { href: path })}\n className={styles.breadcrumb}\n data-automation-id={automationId}\n data-testid={automationId}\n onClick={handleClick}\n >\n <InnerContents />\n </TagName>\n )\n}\n\n// We want to accept undefined here because the NavigationTabs container is\n// important for the flex-based layout (it pushes Secondary Actions over to the right)\nconst renderNavigationTabs = (\n navigationTabs: NavigationTabs | undefined,\n collapse: boolean,\n ariaLabel: string\n): JSX.Element => (\n <div className={styles.navigationTabScrollerContainer}>\n <div\n className={classnames(\n styles.navigationTabsContainer,\n collapse && styles.navigationTabsContainerCollapsed\n )}\n >\n {!collapse && navigationTabs !== undefined && (\n <>\n <span className={styles.navigationTabEdgeShadowLeft} />\n <nav className={styles.navigationTabsNav} aria-label={ariaLabel}>\n <ul className={styles.navigationTabsList}>\n {navigationTabs.map((navigationTab, index) => (\n <li key={index}>{navigationTab}</li>\n ))}\n </ul>\n </nav>\n <span className={styles.navigationTabEdgeShadowRight} />\n </>\n )}\n </div>\n </div>\n)\n\n/**\n * {@link https://cultureamp.atlassian.net/wiki/spaces/DesignSystem/pages/3075605782/Title+Block Guidance} |\n * {@link https://cultureamp.design/?path=/story/components-titleblock--docs Storybook}\n */\nexport const TitleBlockZen = ({\n title,\n variant,\n breadcrumb,\n avatar,\n subtitle,\n sectionTitle,\n sectionTitleDescription,\n renderSectionTitle,\n pageSwitcherSelect,\n handleHamburgerClick,\n primaryAction,\n defaultAction,\n secondaryActions,\n secondaryOverflowMenuItems,\n navigationTabs,\n collapseNavigationAreaWhenPossible = false,\n textDirection,\n surveyStatus,\n titleAutomationId = \"TitleBlock__Title\",\n avatarAutomationId = \"TitleBlock__Avatar\",\n subtitleAutomationId = \"TitleBlock__Subtitle\",\n sectionTitleAutomationId = \"TitleBlock__SectionTitle\",\n sectionTitleDescriptionAutomationId = \"TitleBlock__SectionTitleDescription\",\n breadcrumbAutomationId = \"TitleBlock__Breadcrumb\",\n breadcrumbTextAutomationId = \"TitleBlock__BreadcrumbText\",\n}: TitleBlockProps): JSX.Element => {\n const hasNavigationTabs = navigationTabs && navigationTabs.length > 0\n const collapseNavigationArea =\n collapseNavigationAreaWhenPossible &&\n !hasNavigationTabs &&\n secondaryActions === undefined\n\n const {\n queries: { isSmall, isMedium },\n } = useMediaQueries()\n const isSmallOrMediumViewport = isMedium || isSmall\n return (\n <>\n <div\n className={classnames(\n styles.titleBlock,\n styles[`${variant}Variant`],\n Boolean(subtitle) && styles.hasSubtitle,\n Boolean(pageSwitcherSelect) && styles.hasPageSwitcherSelect,\n collapseNavigationArea &&\n !(sectionTitle || sectionTitleDescription || renderSectionTitle) &&\n styles.collapseNavigationArea,\n title && title.length >= 30 && styles.hasLongTitle,\n subtitle &&\n typeof subtitle === \"string\" &&\n subtitle.length >= 18 &&\n styles.hasLongSubtitle,\n hasNavigationTabs && styles.hasNavigationTabs\n )}\n >\n <div className={styles.titleRow}>\n <div className={styles.titleRowInner}>\n <div className={styles.titleRowInnerContent}>\n <div className={styles.titleAndAdjacent}>\n {breadcrumb && (\n <Breadcrumb\n breadcrumb={breadcrumb}\n automationId={breadcrumbAutomationId}\n textAutomationId={breadcrumbTextAutomationId}\n textDirection={textDirection}\n />\n )}\n <div className={styles.titleAndAdjacentNotBreadcrumb}>\n <>\n {handleHamburgerClick && (\n <div className={styles.hamburger}>\n <IconButton\n onClick={handleHamburgerClick}\n icon={<HamburgerIcon role=\"presentation\" />}\n label=\"Open menu\"\n reversed={isReversed(variant)}\n />\n </div>\n )}\n {avatar && renderAvatar(avatar, avatarAutomationId)}\n <div className={styles.titleAndSubtitle}>\n <div className={styles.titleAndSubtitleInner}>\n <div className={styles.title}>\n <Heading\n variant=\"heading-1\"\n color={isReversed(variant) ? \"white\" : \"dark\"}\n classNameOverride={styles.titleTextOverride}\n data-automation-id={titleAutomationId}\n data-testid={titleAutomationId}\n >\n {title}\n </Heading>\n </div>\n {isSmallOrMediumViewport && pageSwitcherSelect && (\n <div\n className={styles.pageSwitcherSelectUnderneathTitle}\n >\n <Select\n {...pageSwitcherSelect}\n variant=\"secondary-small\"\n reversed\n />\n </div>\n )}\n {subtitle &&\n renderSubtitle(subtitle, subtitleAutomationId)}\n </div>\n </div>\n {surveyStatus && renderTag(surveyStatus)}\n {!isSmallOrMediumViewport && pageSwitcherSelect && (\n <div className={styles.pageSwitcherSelectNextToTitle}>\n <Select\n {...pageSwitcherSelect}\n variant=\"secondary\"\n reversed\n fullWidth\n />\n </div>\n )}\n </>\n </div>\n </div>\n {(primaryAction ||\n defaultAction ||\n secondaryActions ||\n secondaryOverflowMenuItems) && (\n <MainActions\n primaryAction={primaryAction}\n defaultAction={defaultAction}\n reversed={isReversed(variant)}\n overflowMenuItems={createTabletOverflowMenuItems(\n secondaryActions,\n secondaryOverflowMenuItems\n )}\n showOverflowMenu={isSmallOrMediumViewport}\n />\n )}\n </div>\n </div>\n </div>\n <div className={styles.rowBelowSeparator}>\n <div className={styles.rowBelowSeparatorInner}>\n <div className={styles.rowBelowSeparatorInnerContent}>\n {(sectionTitle ||\n sectionTitleDescription ||\n renderSectionTitle) && (\n <div className={styles.sectionTitleContainer}>\n <div className={styles.sectionTitleInner}>\n {!!renderSectionTitle\n ? renderSectionTitle({\n sectionTitle,\n sectionTitleAutomationId,\n sectionTitleDescription,\n sectionTitleDescriptionAutomationId,\n })\n : defaultRenderSectionTitle(\n sectionTitle,\n sectionTitleDescription,\n variant,\n sectionTitleAutomationId,\n sectionTitleDescriptionAutomationId\n )}\n </div>\n </div>\n )}\n {renderNavigationTabs(\n navigationTabs,\n collapseNavigationArea,\n title\n )}\n {(secondaryActions || secondaryOverflowMenuItems) && (\n <SecondaryActions\n secondaryActions={secondaryActions}\n secondaryOverflowMenuItems={secondaryOverflowMenuItems}\n reversed={isReversed(variant)}\n />\n )}\n </div>\n </div>\n </div>\n <MobileActions\n primaryAction={primaryAction}\n defaultAction={defaultAction}\n secondaryActions={secondaryActions}\n secondaryOverflowMenuItems={secondaryOverflowMenuItems}\n drawerHandleLabelIconPosition={\n primaryAction && \"iconPosition\" in primaryAction\n ? primaryAction.iconPosition\n : undefined\n }\n />\n </div>\n </>\n )\n}\n\nTitleBlockZen.displayName = \"TitleBlockZen\"\n"],"names":["renderTag","surveyStatus","tagVariant","status","React","createElement","className","styles","tag","Tag","variant","size","text","isJSXElement","imageElementOrAvatarProps","renderAvatar","avatarAutomationId","classnames","avatar","withBorder","Avatar","renderSubtitle","subtitle","subtitleAutomationId","subtitleText","defaultRenderSectionTitle","sectionTitle","sectionTitleDescription","sectionTitleAutomationId","sectionTitleDescriptionAutomationId","Fragment","Heading","color","isReversed","classNameOverride","sectionTitleOverride","dark","Breadcrumb","_a","breadcrumb","automationId","textAutomationId","textDirection","path","handleClick","render","icon","ArrowRightIcon","role","ArrowLeftIcon","InnerContents","circle","breadcrumbTextLink","breadcrumbText","CustomRender","TagName","__assign","href","onClick","renderNavigationTabs","navigationTabs","collapse","ariaLabel","navigationTabScrollerContainer","navigationTabsContainer","navigationTabsContainerCollapsed","undefined","navigationTabEdgeShadowLeft","navigationTabsNav","navigationTabsList","map","navigationTab","index","key","navigationTabEdgeShadowRight","TitleBlockZen","title","renderSectionTitle","pageSwitcherSelect","handleHamburgerClick","primaryAction","defaultAction","secondaryActions","secondaryOverflowMenuItems","_b","collapseNavigationAreaWhenPossible","_c","titleAutomationId","_d","_e","_f","_g","_h","breadcrumbAutomationId","_j","breadcrumbTextAutomationId","hasNavigationTabs","length","collapseNavigationArea","_k","useMediaQueries","queries","isSmall","isMedium","isSmallOrMediumViewport","titleBlock","concat","Boolean","hasSubtitle","hasPageSwitcherSelect","hasLongTitle","hasLongSubtitle","titleRow","titleRowInner","titleRowInnerContent","titleAndAdjacent","titleAndAdjacentNotBreadcrumb","hamburger","IconButton","HamburgerIcon","label","reversed","titleAndSubtitle","titleAndSubtitleInner","titleTextOverride","pageSwitcherSelectUnderneathTitle","Select","pageSwitcherSelectNextToTitle","fullWidth","MainActions","overflowMenuItems","createTabletOverflowMenuItems","showOverflowMenu","rowBelowSeparator","rowBelowSeparatorInner","rowBelowSeparatorInnerContent","sectionTitleContainer","sectionTitleInner","SecondaryActions","MobileActions","drawerHandleLabelIconPosition","iconPosition","displayName"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"TitleBlockZen.mjs","sources":["../../../src/TitleBlockZen/TitleBlockZen.tsx"],"sourcesContent":["import React from \"react\"\nimport classnames from \"classnames\"\nimport { Avatar } from \"~components/Avatar\"\nimport { IconButton } from \"~components/Button\"\nimport { Heading } from \"~components/Heading\"\nimport { ArrowLeftIcon, ArrowRightIcon, HamburgerIcon } from \"~components/Icon\"\nimport { Select } from \"~components/Select\"\nimport { Tag } from \"~components/Tag\"\nimport { useMediaQueries } from \"~utils/useMediaQueries\"\nimport { MainActions } from \"./subcomponents/MainActions\"\nimport { MobileActions } from \"./subcomponents/MobileActions\"\nimport { SecondaryActions } from \"./subcomponents/SecondaryActions\"\nimport {\n TitleBlockBreadcrumbProps,\n NavigationTabs,\n SurveyStatus,\n TitleBlockAvatarProps,\n TitleBlockProps,\n TitleBlockVariant,\n} from \"./types\"\nimport { createTabletOverflowMenuItems, isReversed } from \"./utils\"\nimport styles from \"./TitleBlockZen.module.scss\"\n\nconst renderTag = (surveyStatus: SurveyStatus): JSX.Element | void => {\n let tagVariant: React.ComponentPropsWithoutRef<typeof Tag>[\"variant\"]\n\n if (tagVariant === \"profile\") {\n return\n }\n\n if (surveyStatus.status === \"draft\") {\n tagVariant = \"statusDraft\"\n }\n\n /*\n scheduled is actually a draft survey status that has a launch job scheduled\n still, we want to differentiate on the UI and render a specific tag\n the styles must be identical to the draft style\n\n we have similar behaviour on programs index page's table\n */\n if (surveyStatus.status === \"scheduled\") {\n tagVariant = \"statusClosed\"\n }\n\n if (surveyStatus.status === \"live\") {\n tagVariant = \"statusLive\"\n }\n\n if (surveyStatus.status === \"closed\") {\n tagVariant = \"statusClosed\"\n }\n\n if (surveyStatus.status === \"sentimentPositive\") {\n tagVariant = \"sentimentPositive\"\n }\n\n if (surveyStatus.status === \"default\") {\n tagVariant = \"default\"\n }\n\n return (\n <div\n data-automation-id=\"survey-status-tag\"\n data-testid=\"survey-status-tag\"\n className={styles.tag}\n >\n <Tag variant={tagVariant} size=\"small\">\n {surveyStatus.text}\n </Tag>\n </div>\n )\n}\n\nconst isJSXElement = (\n imageElementOrAvatarProps: JSX.Element | TitleBlockAvatarProps\n): imageElementOrAvatarProps is JSX.Element =>\n \"props\" in imageElementOrAvatarProps\n\nconst renderAvatar = (\n imageElementOrAvatarProps: JSX.Element | TitleBlockAvatarProps,\n avatarAutomationId: string\n): JSX.Element =>\n isJSXElement(imageElementOrAvatarProps) ? (\n <div\n data-automation-id={avatarAutomationId}\n data-testid={avatarAutomationId}\n className={classnames(styles.avatar, styles.withBorder)}\n >\n {imageElementOrAvatarProps}\n </div>\n ) : (\n <div\n data-automation-id={avatarAutomationId}\n data-testid={avatarAutomationId}\n className={styles.avatar}\n >\n <Avatar {...imageElementOrAvatarProps} size=\"medium\" />\n </div>\n )\n\nconst renderSubtitle = (\n subtitle: React.ReactNode,\n subtitleAutomationId: string\n): JSX.Element => (\n <div className={styles.subtitle}>\n <span\n data-automation-id={subtitleAutomationId}\n data-testid={subtitleAutomationId}\n className={styles.subtitleText}\n >\n {subtitle}\n </span>\n </div>\n)\n\nconst defaultRenderSectionTitle = (\n sectionTitle?: string,\n sectionTitleDescription?: string,\n variant?: TitleBlockVariant,\n sectionTitleAutomationId?: string,\n sectionTitleDescriptionAutomationId?: string\n): JSX.Element => (\n <>\n {sectionTitle && (\n <div className={styles.sectionTitle}>\n <Heading\n variant=\"heading-2\"\n color={isReversed(variant) ? \"white\" : \"dark\"}\n classNameOverride={styles.sectionTitleOverride}\n data-automation-id={sectionTitleAutomationId}\n data-testid={sectionTitleAutomationId}\n >\n {sectionTitle}\n </Heading>\n </div>\n )}\n {sectionTitleDescription && (\n <div\n data-automation-id={sectionTitleDescriptionAutomationId}\n data-testid={sectionTitleDescriptionAutomationId}\n className={classnames(\n styles.sectionTitleDescription,\n !isReversed(variant) && styles.dark\n )}\n >\n {sectionTitleDescription}\n </div>\n )}\n </>\n)\n\nconst Breadcrumb = ({\n breadcrumb,\n automationId,\n textAutomationId,\n textDirection,\n}: TitleBlockBreadcrumbProps): JSX.Element => {\n const { path, handleClick, text, render } = breadcrumb\n const icon =\n textDirection === \"rtl\" ? (\n <ArrowRightIcon role=\"presentation\" />\n ) : (\n <ArrowLeftIcon role=\"presentation\" />\n )\n const InnerContents = (): JSX.Element => (\n <>\n <div className={styles.circle}>{icon}</div>\n <span\n className={styles.breadcrumbTextLink}\n data-automation-id={textAutomationId}\n data-testid={textAutomationId}\n >\n <span className={styles.breadcrumbText}>{text}</span>\n </span>\n </>\n )\n\n if (render) {\n const CustomRender = render\n return (\n <CustomRender\n breadcrumb={breadcrumb}\n className={styles.breadcrumb}\n automationId={automationId}\n textAutomationId={textAutomationId}\n textDirection={textDirection}\n >\n <InnerContents />\n </CustomRender>\n )\n }\n\n const TagName = path ? \"a\" : \"button\"\n\n return (\n <TagName\n {...(path && { href: path })}\n className={styles.breadcrumb}\n data-automation-id={automationId}\n data-testid={automationId}\n onClick={handleClick}\n >\n <InnerContents />\n </TagName>\n )\n}\n\n// We want to accept undefined here because the NavigationTabs container is\n// important for the flex-based layout (it pushes Secondary Actions over to the right)\nconst renderNavigationTabs = (\n navigationTabs: NavigationTabs | undefined,\n collapse: boolean,\n ariaLabel: string\n): JSX.Element => (\n <div className={styles.navigationTabScrollerContainer}>\n <div\n className={classnames(\n styles.navigationTabsContainer,\n collapse && styles.navigationTabsContainerCollapsed\n )}\n >\n {!collapse && navigationTabs !== undefined && (\n <>\n <span className={styles.navigationTabEdgeShadowLeft} />\n <nav className={styles.navigationTabsNav} aria-label={ariaLabel}>\n <ul className={styles.navigationTabsList}>\n {navigationTabs.map((navigationTab, index) => (\n <li key={index}>{navigationTab}</li>\n ))}\n </ul>\n </nav>\n <span className={styles.navigationTabEdgeShadowRight} />\n </>\n )}\n </div>\n </div>\n)\n\n/**\n * {@link https://cultureamp.atlassian.net/wiki/spaces/DesignSystem/pages/3075605782/Title+Block Guidance} |\n * {@link https://cultureamp.design/?path=/story/components-titleblock--docs Storybook}\n */\nexport const TitleBlockZen = ({\n title,\n variant,\n breadcrumb,\n avatar,\n subtitle,\n sectionTitle,\n sectionTitleDescription,\n renderSectionTitle,\n pageSwitcherSelect,\n handleHamburgerClick,\n primaryAction,\n defaultAction,\n secondaryActions,\n secondaryOverflowMenuItems,\n navigationTabs,\n collapseNavigationAreaWhenPossible = false,\n textDirection,\n surveyStatus,\n id,\n titleAutomationId = \"TitleBlock__Title\",\n avatarAutomationId = \"TitleBlock__Avatar\",\n subtitleAutomationId = \"TitleBlock__Subtitle\",\n sectionTitleAutomationId = \"TitleBlock__SectionTitle\",\n sectionTitleDescriptionAutomationId = \"TitleBlock__SectionTitleDescription\",\n breadcrumbAutomationId = \"TitleBlock__Breadcrumb\",\n breadcrumbTextAutomationId = \"TitleBlock__BreadcrumbText\",\n autoHideMobileActionsMenu = false,\n}: TitleBlockProps): JSX.Element => {\n const hasNavigationTabs = navigationTabs && navigationTabs.length > 0\n const collapseNavigationArea =\n collapseNavigationAreaWhenPossible &&\n !hasNavigationTabs &&\n secondaryActions === undefined\n\n const {\n queries: { isSmall, isMedium },\n } = useMediaQueries()\n const isSmallOrMediumViewport = isMedium || isSmall\n return (\n <>\n <div\n id={id}\n className={classnames(\n styles.titleBlock,\n styles[`${variant}Variant`],\n Boolean(subtitle) && styles.hasSubtitle,\n Boolean(pageSwitcherSelect) && styles.hasPageSwitcherSelect,\n collapseNavigationArea &&\n !(sectionTitle || sectionTitleDescription || renderSectionTitle) &&\n styles.collapseNavigationArea,\n title && title.length >= 30 && styles.hasLongTitle,\n subtitle &&\n typeof subtitle === \"string\" &&\n subtitle.length >= 18 &&\n styles.hasLongSubtitle,\n hasNavigationTabs && styles.hasNavigationTabs\n )}\n >\n <div className={styles.titleRow}>\n <div className={styles.titleRowInner}>\n <div className={styles.titleRowInnerContent}>\n <div className={styles.titleAndAdjacent}>\n {breadcrumb && (\n <Breadcrumb\n breadcrumb={breadcrumb}\n automationId={breadcrumbAutomationId}\n textAutomationId={breadcrumbTextAutomationId}\n textDirection={textDirection}\n />\n )}\n <div className={styles.titleAndAdjacentNotBreadcrumb}>\n <>\n {handleHamburgerClick && (\n <div className={styles.hamburger}>\n <IconButton\n onClick={handleHamburgerClick}\n icon={<HamburgerIcon role=\"presentation\" />}\n label=\"Open menu\"\n reversed={isReversed(variant)}\n />\n </div>\n )}\n {avatar && renderAvatar(avatar, avatarAutomationId)}\n <div className={styles.titleAndSubtitle}>\n <div className={styles.titleAndSubtitleInner}>\n <div className={styles.title}>\n <Heading\n variant=\"heading-1\"\n color={isReversed(variant) ? \"white\" : \"dark\"}\n classNameOverride={styles.titleTextOverride}\n data-automation-id={titleAutomationId}\n data-testid={titleAutomationId}\n >\n {title}\n </Heading>\n </div>\n {isSmallOrMediumViewport && pageSwitcherSelect && (\n <div\n className={styles.pageSwitcherSelectUnderneathTitle}\n >\n <Select\n {...pageSwitcherSelect}\n variant=\"secondary-small\"\n reversed\n />\n </div>\n )}\n {subtitle &&\n renderSubtitle(subtitle, subtitleAutomationId)}\n </div>\n </div>\n {surveyStatus && renderTag(surveyStatus)}\n {!isSmallOrMediumViewport && pageSwitcherSelect && (\n <div className={styles.pageSwitcherSelectNextToTitle}>\n <Select\n {...pageSwitcherSelect}\n variant=\"secondary\"\n reversed\n fullWidth\n />\n </div>\n )}\n </>\n </div>\n </div>\n {(primaryAction ||\n defaultAction ||\n secondaryActions ||\n secondaryOverflowMenuItems) && (\n <MainActions\n primaryAction={primaryAction}\n defaultAction={defaultAction}\n reversed={isReversed(variant)}\n overflowMenuItems={createTabletOverflowMenuItems(\n secondaryActions,\n secondaryOverflowMenuItems\n )}\n showOverflowMenu={isSmallOrMediumViewport}\n />\n )}\n </div>\n </div>\n </div>\n <div className={styles.rowBelowSeparator}>\n <div className={styles.rowBelowSeparatorInner}>\n <div className={styles.rowBelowSeparatorInnerContent}>\n {(sectionTitle ||\n sectionTitleDescription ||\n renderSectionTitle) && (\n <div className={styles.sectionTitleContainer}>\n <div className={styles.sectionTitleInner}>\n {!!renderSectionTitle\n ? renderSectionTitle({\n sectionTitle,\n sectionTitleAutomationId,\n sectionTitleDescription,\n sectionTitleDescriptionAutomationId,\n })\n : defaultRenderSectionTitle(\n sectionTitle,\n sectionTitleDescription,\n variant,\n sectionTitleAutomationId,\n sectionTitleDescriptionAutomationId\n )}\n </div>\n </div>\n )}\n {renderNavigationTabs(\n navigationTabs,\n collapseNavigationArea,\n title\n )}\n {(secondaryActions || secondaryOverflowMenuItems) && (\n <SecondaryActions\n secondaryActions={secondaryActions}\n secondaryOverflowMenuItems={secondaryOverflowMenuItems}\n reversed={isReversed(variant)}\n />\n )}\n </div>\n </div>\n </div>\n <MobileActions\n primaryAction={primaryAction}\n defaultAction={defaultAction}\n secondaryActions={secondaryActions}\n secondaryOverflowMenuItems={secondaryOverflowMenuItems}\n drawerHandleLabelIconPosition={\n primaryAction && \"iconPosition\" in primaryAction\n ? primaryAction.iconPosition\n : undefined\n }\n autoHide={autoHideMobileActionsMenu}\n />\n </div>\n </>\n )\n}\n\nTitleBlockZen.displayName = \"TitleBlockZen\"\n"],"names":["renderTag","surveyStatus","tagVariant","status","React","createElement","className","styles","tag","Tag","variant","size","text","isJSXElement","imageElementOrAvatarProps","renderAvatar","avatarAutomationId","classnames","avatar","withBorder","Avatar","renderSubtitle","subtitle","subtitleAutomationId","subtitleText","defaultRenderSectionTitle","sectionTitle","sectionTitleDescription","sectionTitleAutomationId","sectionTitleDescriptionAutomationId","Fragment","Heading","color","isReversed","classNameOverride","sectionTitleOverride","dark","Breadcrumb","_a","breadcrumb","automationId","textAutomationId","textDirection","path","handleClick","render","icon","ArrowRightIcon","role","ArrowLeftIcon","InnerContents","circle","breadcrumbTextLink","breadcrumbText","CustomRender","TagName","__assign","href","onClick","renderNavigationTabs","navigationTabs","collapse","ariaLabel","navigationTabScrollerContainer","navigationTabsContainer","navigationTabsContainerCollapsed","undefined","navigationTabEdgeShadowLeft","navigationTabsNav","navigationTabsList","map","navigationTab","index","key","navigationTabEdgeShadowRight","TitleBlockZen","title","renderSectionTitle","pageSwitcherSelect","handleHamburgerClick","primaryAction","defaultAction","secondaryActions","secondaryOverflowMenuItems","_b","collapseNavigationAreaWhenPossible","id","_c","titleAutomationId","_d","_e","_f","_g","_h","breadcrumbAutomationId","_j","breadcrumbTextAutomationId","_k","autoHideMobileActionsMenu","hasNavigationTabs","length","collapseNavigationArea","_l","useMediaQueries","queries","isSmall","isMedium","isSmallOrMediumViewport","titleBlock","concat","Boolean","hasSubtitle","hasPageSwitcherSelect","hasLongTitle","hasLongSubtitle","titleRow","titleRowInner","titleRowInnerContent","titleAndAdjacent","titleAndAdjacentNotBreadcrumb","hamburger","IconButton","HamburgerIcon","label","reversed","titleAndSubtitle","titleAndSubtitleInner","titleTextOverride","pageSwitcherSelectUnderneathTitle","Select","pageSwitcherSelectNextToTitle","fullWidth","MainActions","overflowMenuItems","createTabletOverflowMenuItems","showOverflowMenu","rowBelowSeparator","rowBelowSeparatorInner","rowBelowSeparatorInnerContent","sectionTitleContainer","sectionTitleInner","SecondaryActions","MobileActions","drawerHandleLabelIconPosition","iconPosition","autoHide","displayName"],"mappings":"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"}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
var TITLE_BLOCK_ZEN_SECONDARY_MENU_HTML_ID = "title-block-secondary-menu";
|
|
2
|
+
var TITLE_BLOCK_ZEN_OTHER_ACTIONS_HTML_ID = "title-block-other-actions";
|
|
3
|
+
export { TITLE_BLOCK_ZEN_OTHER_ACTIONS_HTML_ID, TITLE_BLOCK_ZEN_SECONDARY_MENU_HTML_ID };
|
|
4
|
+
//# sourceMappingURL=constants.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"constants.mjs","sources":["../../../src/TitleBlockZen/constants.ts"],"sourcesContent":["export const TITLE_BLOCK_ZEN_SECONDARY_MENU_HTML_ID =\n \"title-block-secondary-menu\"\nexport const TITLE_BLOCK_ZEN_OTHER_ACTIONS_HTML_ID = \"title-block-other-actions\"\n"],"names":["TITLE_BLOCK_ZEN_SECONDARY_MENU_HTML_ID","TITLE_BLOCK_ZEN_OTHER_ACTIONS_HTML_ID"],"mappings":"AAAO,IAAMA,sCAAsC,GACjD,4BAA4B;AACvB,IAAMC,qCAAqC,GAAG,2BAAA;"}
|
|
@@ -10,6 +10,7 @@ import '../../Menu/subcomponents/MenuHeading/MenuHeading.mjs';
|
|
|
10
10
|
import '../../Menu/subcomponents/MenuItem/MenuItem.mjs';
|
|
11
11
|
import { MenuList } from '../../Menu/subcomponents/MenuList/MenuList.mjs';
|
|
12
12
|
import '../../Menu/subcomponents/StatelessMenu/StatelessMenu.mjs';
|
|
13
|
+
import { TITLE_BLOCK_ZEN_SECONDARY_MENU_HTML_ID } from '../constants.mjs';
|
|
13
14
|
import { isMenuGroupNotButton } from '../utils.mjs';
|
|
14
15
|
import { TitleBlockMenuItem } from './TitleBlockMenuItem.mjs';
|
|
15
16
|
import { Toolbar } from './Toolbar.mjs';
|
|
@@ -86,6 +87,7 @@ const MainActions = /*#__PURE__*/function () {
|
|
|
86
87
|
node: ( /*#__PURE__*/React.createElement(Menu, {
|
|
87
88
|
align: "right",
|
|
88
89
|
button: /*#__PURE__*/React.createElement(IconButton, {
|
|
90
|
+
id: TITLE_BLOCK_ZEN_SECONDARY_MENU_HTML_ID,
|
|
89
91
|
label: "Open secondary menu",
|
|
90
92
|
reversed: reversed,
|
|
91
93
|
icon: /*#__PURE__*/React.createElement(MeatballsIcon, {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MainActions.mjs","sources":["../../../../src/TitleBlockZen/subcomponents/MainActions.tsx"],"sourcesContent":["import React from \"react\"\nimport { Button, IconButton } from \"~components/Button\"\nimport { ChevronDownIcon, MeatballsIcon } from \"~components/Icon\"\nimport { Menu, MenuList } from \"~components/Menu\"\nimport {\n DefaultActionProps,\n PrimaryActionProps,\n TitleBlockMenuItemProps,\n} from \"../types\"\nimport { isMenuGroupNotButton } from \"../utils\"\nimport { TitleBlockMenuItem } from \"./TitleBlockMenuItem\"\nimport { Toolbar } from \"./Toolbar\"\nimport styles from \"./MainActions.module.scss\"\n\ntype MainActionsProps = {\n primaryAction?: PrimaryActionProps\n defaultAction?: DefaultActionProps\n reversed?: boolean\n overflowMenuItems?: TitleBlockMenuItemProps[]\n showOverflowMenu?: boolean\n}\n\nexport const MainActions = ({\n primaryAction,\n defaultAction,\n reversed = false,\n overflowMenuItems,\n showOverflowMenu = false,\n}: MainActionsProps): JSX.Element => {\n let items\n if (primaryAction && isMenuGroupNotButton(primaryAction)) {\n const menuContent = primaryAction.menuItems.map((item, idx) => (\n <TitleBlockMenuItem\n {...item}\n key={`main-action-primary-menu-item-${idx}`}\n data-automation-id={`main-action-primary-menu-item-${idx}`}\n data-testid={`main-action-primary-menu-item-${idx}`}\n />\n ))\n\n items = [\n ...(defaultAction\n ? [\n {\n key: \"defaultAction\",\n node: (\n <Button\n {...{\n ...defaultAction,\n reversed:\n defaultAction.reversed !== undefined\n ? defaultAction.reversed\n : reversed,\n }}\n data-automation-id=\"title-block-default-action-button\"\n data-testid=\"title-block-default-action-button\"\n />\n ),\n },\n ]\n : []),\n ...(primaryAction\n ? [\n {\n key: \"primaryAction\",\n node: (\n <Menu\n align=\"right\"\n button={\n <Button\n label={primaryAction.label}\n primary\n reversed={reversed}\n icon={<ChevronDownIcon role=\"presentation\" />}\n iconPosition=\"end\"\n data-automation-id=\"title-block-primary-action-button\"\n data-testid=\"title-block-primary-action-button\"\n badge={\n primaryAction.badge\n ? {\n ...primaryAction.badge,\n variant: \"dark\",\n }\n : undefined\n }\n />\n }\n >\n <MenuList>{menuContent}</MenuList>\n </Menu>\n ),\n },\n ]\n : []),\n ]\n } else {\n items = [\n ...(defaultAction\n ? [\n {\n key: \"defaultAction\",\n node: (\n <Button\n {...{\n ...defaultAction,\n reversed:\n defaultAction.reversed !== undefined\n ? defaultAction.reversed\n : reversed,\n }}\n data-automation-id=\"title-block-default-action-button\"\n data-testid=\"title-block-default-action-button\"\n />\n ),\n },\n ]\n : []),\n ...(primaryAction\n ? [\n {\n key: \"primaryAction\",\n node: (\n <Button\n {...{\n ...primaryAction,\n primary:\n primaryAction.primary !== undefined\n ? primaryAction.primary\n : true,\n reversed:\n primaryAction.reversed !== undefined\n ? primaryAction.reversed\n : reversed,\n }}\n data-automation-id=\"title-block-primary-action-button\"\n data-testid=\"title-block-primary-action-button\"\n badge={\n primaryAction.badge\n ? {\n ...primaryAction.badge,\n variant: \"dark\",\n }\n : undefined\n }\n />\n ),\n },\n ]\n : []),\n ]\n }\n\n if (overflowMenuItems && showOverflowMenu && overflowMenuItems.length > 0) {\n items = [\n {\n key: \"overflowMenu\",\n node: (\n <Menu\n align=\"right\"\n button={\n <IconButton\n label=\"Open secondary menu\"\n reversed={reversed}\n icon={<MeatballsIcon role=\"presentation\" />}\n />\n }\n >\n <MenuList>\n {overflowMenuItems.map((menuItem, idx) => (\n <TitleBlockMenuItem\n {...menuItem}\n key={`main-action-overflow-item-menu-item-${idx}`}\n />\n ))}\n </MenuList>\n </Menu>\n ),\n },\n ...items,\n ]\n }\n\n return (\n <div className={styles.mainActionsContainer}>\n <Toolbar\n items={items}\n automationId=\"title-block-main-actions-toolbar\"\n data-testid=\"title-block-main-actions-toolbar\"\n />\n </div>\n )\n}\n\nMainActions.displayName = \"MainActions\"\n"],"names":["MainActions","_a","primaryAction","defaultAction","_b","reversed","overflowMenuItems","_c","showOverflowMenu","items","isMenuGroupNotButton","menuContent","menuItems","map","item","idx","React","createElement","TitleBlockMenuItem","__assign","key","concat","__spreadArray","node","Button","undefined","Menu","align","button","label","primary","icon","ChevronDownIcon","role","iconPosition","badge","variant","MenuList","length","IconButton","MeatballsIcon","menuItem","className","styles","mainActionsContainer","Toolbar","automationId","displayName"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"MainActions.mjs","sources":["../../../../src/TitleBlockZen/subcomponents/MainActions.tsx"],"sourcesContent":["import React from \"react\"\nimport { Button, IconButton } from \"~components/Button\"\nimport { ChevronDownIcon, MeatballsIcon } from \"~components/Icon\"\nimport { Menu, MenuList } from \"~components/Menu\"\nimport { TITLE_BLOCK_ZEN_SECONDARY_MENU_HTML_ID } from \"../constants\"\nimport {\n DefaultActionProps,\n PrimaryActionProps,\n TitleBlockMenuItemProps,\n} from \"../types\"\nimport { isMenuGroupNotButton } from \"../utils\"\nimport { TitleBlockMenuItem } from \"./TitleBlockMenuItem\"\nimport { Toolbar } from \"./Toolbar\"\nimport styles from \"./MainActions.module.scss\"\n\ntype MainActionsProps = {\n primaryAction?: PrimaryActionProps\n defaultAction?: DefaultActionProps\n reversed?: boolean\n overflowMenuItems?: TitleBlockMenuItemProps[]\n showOverflowMenu?: boolean\n}\n\nexport const MainActions = ({\n primaryAction,\n defaultAction,\n reversed = false,\n overflowMenuItems,\n showOverflowMenu = false,\n}: MainActionsProps): JSX.Element => {\n let items\n if (primaryAction && isMenuGroupNotButton(primaryAction)) {\n const menuContent = primaryAction.menuItems.map((item, idx) => (\n <TitleBlockMenuItem\n {...item}\n key={`main-action-primary-menu-item-${idx}`}\n data-automation-id={`main-action-primary-menu-item-${idx}`}\n data-testid={`main-action-primary-menu-item-${idx}`}\n />\n ))\n\n items = [\n ...(defaultAction\n ? [\n {\n key: \"defaultAction\",\n node: (\n <Button\n {...{\n ...defaultAction,\n reversed:\n defaultAction.reversed !== undefined\n ? defaultAction.reversed\n : reversed,\n }}\n data-automation-id=\"title-block-default-action-button\"\n data-testid=\"title-block-default-action-button\"\n />\n ),\n },\n ]\n : []),\n ...(primaryAction\n ? [\n {\n key: \"primaryAction\",\n node: (\n <Menu\n align=\"right\"\n button={\n <Button\n label={primaryAction.label}\n primary\n reversed={reversed}\n icon={<ChevronDownIcon role=\"presentation\" />}\n iconPosition=\"end\"\n data-automation-id=\"title-block-primary-action-button\"\n data-testid=\"title-block-primary-action-button\"\n badge={\n primaryAction.badge\n ? {\n ...primaryAction.badge,\n variant: \"dark\",\n }\n : undefined\n }\n />\n }\n >\n <MenuList>{menuContent}</MenuList>\n </Menu>\n ),\n },\n ]\n : []),\n ]\n } else {\n items = [\n ...(defaultAction\n ? [\n {\n key: \"defaultAction\",\n node: (\n <Button\n {...{\n ...defaultAction,\n reversed:\n defaultAction.reversed !== undefined\n ? defaultAction.reversed\n : reversed,\n }}\n data-automation-id=\"title-block-default-action-button\"\n data-testid=\"title-block-default-action-button\"\n />\n ),\n },\n ]\n : []),\n ...(primaryAction\n ? [\n {\n key: \"primaryAction\",\n node: (\n <Button\n {...{\n ...primaryAction,\n primary:\n primaryAction.primary !== undefined\n ? primaryAction.primary\n : true,\n reversed:\n primaryAction.reversed !== undefined\n ? primaryAction.reversed\n : reversed,\n }}\n data-automation-id=\"title-block-primary-action-button\"\n data-testid=\"title-block-primary-action-button\"\n badge={\n primaryAction.badge\n ? {\n ...primaryAction.badge,\n variant: \"dark\",\n }\n : undefined\n }\n />\n ),\n },\n ]\n : []),\n ]\n }\n\n if (overflowMenuItems && showOverflowMenu && overflowMenuItems.length > 0) {\n items = [\n {\n key: \"overflowMenu\",\n node: (\n <Menu\n align=\"right\"\n button={\n <IconButton\n id={TITLE_BLOCK_ZEN_SECONDARY_MENU_HTML_ID}\n label=\"Open secondary menu\"\n reversed={reversed}\n icon={<MeatballsIcon role=\"presentation\" />}\n />\n }\n >\n <MenuList>\n {overflowMenuItems.map((menuItem, idx) => (\n <TitleBlockMenuItem\n {...menuItem}\n key={`main-action-overflow-item-menu-item-${idx}`}\n />\n ))}\n </MenuList>\n </Menu>\n ),\n },\n ...items,\n ]\n }\n\n return (\n <div className={styles.mainActionsContainer}>\n <Toolbar\n items={items}\n automationId=\"title-block-main-actions-toolbar\"\n data-testid=\"title-block-main-actions-toolbar\"\n />\n </div>\n )\n}\n\nMainActions.displayName = \"MainActions\"\n"],"names":["MainActions","_a","primaryAction","defaultAction","_b","reversed","overflowMenuItems","_c","showOverflowMenu","items","isMenuGroupNotButton","menuContent","menuItems","map","item","idx","React","createElement","TitleBlockMenuItem","__assign","key","concat","__spreadArray","node","Button","undefined","Menu","align","button","label","primary","icon","ChevronDownIcon","role","iconPosition","badge","variant","MenuList","length","IconButton","id","TITLE_BLOCK_ZEN_SECONDARY_MENU_HTML_ID","MeatballsIcon","menuItem","className","styles","mainActionsContainer","Toolbar","automationId","displayName"],"mappings":";;;;;;;;;;;;;;;;;MAuBaA,WAAW;EAAA,MAAXA,WAAW,GAAG,SAAAA,CAACC,EAMT,EAAA;QALjBC,aAAa,GAAAD,EAAA,CAAAC,aAAA;MACbC,aAAa,GAAAF,EAAA,CAAAE,aAAA;MACbC,EAAgB,GAAAH,EAAA,CAAAI,QAAA;MAAhBA,QAAQ,GAAGD,EAAA,KAAA,KAAA,CAAA,GAAA,KAAK,KAAA;MAChBE,iBAAiB,uBAAA;MACjBC,EAAA,GAAAN,EAAA,CAAAO,gBAAwB;MAAxBA,gBAAgB,GAAAD,EAAA,KAAA,KAAA,CAAA,GAAG,KAAK,GAAAA,EAAA;IAExB,IAAIE,KAAK;IACT,IAAIP,aAAa,IAAIQ,oBAAoB,CAACR,aAAa,CAAC,EAAE;MACxD,IAAMS,WAAW,GAAGT,aAAa,CAACU,SAAS,CAACC,GAAG,CAAC,UAACC,IAAI,EAAEC,GAAG,EAAA;QAAK,oBAC7DC,KAAA,CAAAC,aAAA,CAACC,kBAAkB,EACbC,QAAA,CAAA,CAAA,CAAA,EAAAL,IAAI,EACR;UAAAM,GAAG,EAAE,gCAAiC,CAAAC,MAAA,CAAAN,GAAG,CAAE;UAAA,oBAAA,EACvB,wCAAiCA,GAAG,CAAE;UAC7C,aAAA,EAAA,gCAAA,CAAAM,MAAA,CAAiCN,GAAG;QAAE,CAAA,CAAA,CACnD;MAN2D,CAO9D,CAAC;MAEFN,KAAK,GAAAa,aAAA,CAAAA,aAAA,CAAA,EAAA,EACCnB,aAAa,GACb,CACE;QACEiB,GAAG,EAAE,eAAe;QACpBG,IAAI,iBACFP,KAAC,CAAAC,aAAA,CAAAO,MAAM,EAEAL,QAAA,CAAA,EAAA,EAAAhB,aAAa,EAChB;UAAAE,QAAQ,EACNF,aAAa,CAACE,QAAQ,KAAKoB,SAAS,GAChCtB,aAAa,CAACE,QAAQ,GACtBA,QAAQ;UAAA,oBAAA,EAEG,mCAAmC;UAC1C,aAAA,EAAA;QAAmC,GAC/C;MAEL,CAAA,CACF,GACD,EAAE,EAAC,IAAA,CAAA,EACHH,aAAa,GACb,CACE;QACEkB,GAAG,EAAE,eAAe;QACpBG,IAAI,iBACFP,KAAC,CAAAC,aAAA,CAAAS,IAAI;UACHC,KAAK,EAAC,OAAO;UACbC,MAAM,eACJZ,oBAACQ,MAAM,EAAA;YACLK,KAAK,EAAE3B,aAAa,CAAC2B,KAAK;YAC1BC,OAAO,EAAA,IAAA;YACPzB,QAAQ,EAAEA,QAAQ;YAClB0B,IAAI,eAAEf,KAAC,CAAAC,aAAA,CAAAe,eAAe;cAACC,IAAI,EAAC;aAAc,CAAG;YAC7CC,YAAY,EAAC,KAAK;YAAA,oBAAA,EACC,mCAAmC;YAC1C,aAAA,EAAA,mCAAmC;YAC/CC,KAAK,EACHjC,aAAa,CAACiC,KAAK,GAEVhB,QAAA,CAAAA,QAAA,CAAA,EAAA,EAAAjB,aAAa,CAACiC,KAAK,CACtB,EAAA;cAAAC,OAAO,EAAE;YAAM,CAEnB,CAAA,GAAEX;UAEN,CAAA;QAAA,CAAA,eAGJT,KAAA,CAAAC,aAAA,CAACoB,QAAQ,EAAA,IAAA,EAAE1B,WAAW,CAAY,CAC7B;MAEV,CAAA,CACF,GACD,EAAE,EAAC,IAAA,CACR;IACF,CAAA,MAAM;MACLF,KAAK,GAAAa,aAAA,CAAAA,aAAA,CAAA,EAAA,EACCnB,aAAa,GACb,CACE;QACEiB,GAAG,EAAE,eAAe;QACpBG,IAAI,iBACFP,KAAC,CAAAC,aAAA,CAAAO,MAAM,EAEAL,QAAA,CAAA,EAAA,EAAAhB,aAAa,EAChB;UAAAE,QAAQ,EACNF,aAAa,CAACE,QAAQ,KAAKoB,SAAS,GAChCtB,aAAa,CAACE,QAAQ,GACtBA,QAAQ;UAAA,oBAAA,EAEG,mCAAmC;UAC1C,aAAA,EAAA;QAAmC,GAC/C;MAEL,CAAA,CACF,GACD,EAAE,EAAC,IAAA,CAAA,EACHH,aAAa,GACb,CACE;QACEkB,GAAG,EAAE,eAAe;QACpBG,IAAI,iBACFP,KAAC,CAAAC,aAAA,CAAAO,MAAM,EAEAL,QAAA,CAAA,EAAA,EAAAjB,aAAa,EAChB;UAAA4B,OAAO,EACL5B,aAAa,CAAC4B,OAAO,KAAKL,SAAS,GAC/BvB,aAAa,CAAC4B,OAAO,GACrB,IAAI;UACVzB,QAAQ,EACNH,aAAa,CAACG,QAAQ,KAAKoB,SAAS,GAChCvB,aAAa,CAACG,QAAQ,GACtBA,QAAQ;UAAA,oBAAA,EAEG,mCAAmC;UAAA,aAAA,EAC1C,mCAAmC;UAC/C8B,KAAK,EACHjC,aAAa,CAACiC,KAAK,GAEVhB,QAAA,CAAAA,QAAA,CAAA,EAAA,EAAAjB,aAAa,CAACiC,KAAK,CACtB,EAAA;YAAAC,OAAO,EAAE;UAEb,CAAA,CAAA,GAAEX;QAAS,GAEf;MAEL,CAAA,CACF,GACD,EAAE,EAAC,IAAA,CACR;IACF;IAED,IAAInB,iBAAiB,IAAIE,gBAAgB,IAAIF,iBAAiB,CAACgC,MAAM,GAAG,CAAC,EAAE;MACzE7B,KAAK,GAAAa,aAAA,CAAA,CACH;QACEF,GAAG,EAAE,cAAc;QACnBG,IAAI,iBACFP,KAAC,CAAAC,aAAA,CAAAS,IAAI;UACHC,KAAK,EAAC,OAAO;UACbC,MAAM,eACJZ,KAAA,CAAAC,aAAA,CAACsB,UAAU,EAAA;YACTC,EAAE,EAAEC,sCAAsC;YAC1CZ,KAAK,EAAC,qBAAqB;YAC3BxB,QAAQ,EAAEA,QAAQ;YAClB0B,IAAI,eAAEf,KAAA,CAAAC,aAAA,CAACyB,aAAa,EAAC;cAAAT,IAAI,EAAC;;UAC1B,CAAA;QAAA,CAAA,eAGJjB,KAAA,CAAAC,aAAA,CAACoB,QAAQ,EAAA,IAAA,EACN/B,iBAAiB,CAACO,GAAG,CAAC,UAAC8B,QAAQ,EAAE5B,GAAG,EAAK;UAAA,oBACxCC,KAAC,CAAAC,aAAA,CAAAC,kBAAkB,EACbC,QAAA,CAAA,EAAA,EAAAwB,QAAQ,EACZ;YAAAvB,GAAG,EAAE,sCAAA,CAAAC,MAAA,CAAuCN,GAAG;WAC/C,CAAA,CAAA;QACH,CAAA,CAAC,CACO,CACN;MAEV,CAAA,CACE,EAAAN,KAAK,OACT;IACF;IAED,oBACEO,KAAK,CAAAC,aAAA,CAAA,KAAA,EAAA;MAAA2B,SAAS,EAAEC,MAAM,CAACC;IAAoB,CAAA,eACzC9B,KAAA,CAAAC,aAAA,CAAC8B,OAAO,EAAA;MACNtC,KAAK,EAAEA,KAAK;MACZuC,YAAY,EAAC,kCAAkC;MACnC,aAAA,EAAA;IAAkC,CAC9C,CAAA,CACE;EAEV,CAAC;EAEDhD,WAAW,CAACiD,WAAW,GAAG,aAAa;EAAA,OA5K1BjD,WAAW;AAAA;"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { __assign } from 'tslib';
|
|
2
|
-
import React, { useState } from 'react';
|
|
2
|
+
import React, { useState, useCallback, useEffect } from 'react';
|
|
3
3
|
import classnames from 'classnames';
|
|
4
4
|
import { FocusOn } from 'react-focus-on';
|
|
5
5
|
import '../../Icon/subcomponents/SVG/SVG.mjs';
|
|
@@ -10,6 +10,7 @@ import { MenuHeading } from '../../Menu/subcomponents/MenuHeading/MenuHeading.mj
|
|
|
10
10
|
import { MenuItem } from '../../Menu/subcomponents/MenuItem/MenuItem.mjs';
|
|
11
11
|
import { MenuList } from '../../Menu/subcomponents/MenuList/MenuList.mjs';
|
|
12
12
|
import '../../Menu/subcomponents/StatelessMenu/StatelessMenu.mjs';
|
|
13
|
+
import { TITLE_BLOCK_ZEN_OTHER_ACTIONS_HTML_ID } from '../constants.mjs';
|
|
13
14
|
import { isMenuGroupNotButton, convertSecondaryActionsToMenuItems } from '../utils.mjs';
|
|
14
15
|
import { TitleBlockMenuItem } from './TitleBlockMenuItem.mjs';
|
|
15
16
|
import styles from './MobileActions.module.scss.mjs';
|
|
@@ -61,7 +62,8 @@ var renderDefaultLink = function (defaultAction) {
|
|
|
61
62
|
disabled: defaultAction.disabled,
|
|
62
63
|
key: "title-block-mobile-actions-default-link",
|
|
63
64
|
"data-automation-id": "title-block-mobile-actions-default-link",
|
|
64
|
-
"data-testid": "title-block-mobile-actions-default-link"
|
|
65
|
+
"data-testid": "title-block-mobile-actions-default-link",
|
|
66
|
+
id: defaultAction.id
|
|
65
67
|
});
|
|
66
68
|
};
|
|
67
69
|
var renderDefaultAction = function (defaultAction) {
|
|
@@ -210,6 +212,7 @@ var DrawerHandle = function (_a) {
|
|
|
210
212
|
className: styles.mobileActionsExpandButton,
|
|
211
213
|
onClick: toggleDisplay,
|
|
212
214
|
"aria-expanded": isOpen,
|
|
215
|
+
id: TITLE_BLOCK_ZEN_OTHER_ACTIONS_HTML_ID,
|
|
213
216
|
"aria-label": "Other actions"
|
|
214
217
|
}, isOpen ? ( /*#__PURE__*/React.createElement(ChevronDownIcon, {
|
|
215
218
|
role: "presentation"
|
|
@@ -226,7 +229,8 @@ var DrawerHandle = function (_a) {
|
|
|
226
229
|
type: "button",
|
|
227
230
|
className: classnames(styles.mobileActionsExpandButton, styles.mobileActionsPrimaryLabel),
|
|
228
231
|
onClick: toggleDisplay,
|
|
229
|
-
"aria-expanded": isOpen
|
|
232
|
+
"aria-expanded": isOpen,
|
|
233
|
+
id: TITLE_BLOCK_ZEN_OTHER_ACTIONS_HTML_ID
|
|
230
234
|
}, renderDrawerHandleLabel("Other actions"), /*#__PURE__*/React.createElement("span", {
|
|
231
235
|
className: styles.mobileActionsChevronSquare
|
|
232
236
|
}, isOpen ? ( /*#__PURE__*/React.createElement(ChevronDownIcon, {
|
|
@@ -243,13 +247,33 @@ const MobileActions = /*#__PURE__*/function () {
|
|
|
243
247
|
defaultAction = _a.defaultAction,
|
|
244
248
|
secondaryActions = _a.secondaryActions,
|
|
245
249
|
secondaryOverflowMenuItems = _a.secondaryOverflowMenuItems,
|
|
246
|
-
drawerHandleLabelIconPosition = _a.drawerHandleLabelIconPosition
|
|
247
|
-
|
|
248
|
-
|
|
249
|
-
|
|
250
|
+
drawerHandleLabelIconPosition = _a.drawerHandleLabelIconPosition,
|
|
251
|
+
_b = _a.autoHide,
|
|
252
|
+
autoHide = _b === void 0 ? false : _b;
|
|
253
|
+
var _c = useState(false),
|
|
254
|
+
isOpen = _c[0],
|
|
255
|
+
setIsOpen = _c[1];
|
|
256
|
+
var menuContent = /*#__PURE__*/React.createRef();
|
|
250
257
|
var toggleDisplay = function () {
|
|
251
258
|
setIsOpen(!isOpen);
|
|
252
259
|
};
|
|
260
|
+
// This callback handler will not run when autoHide === "off"
|
|
261
|
+
var handleDocumentClickForAutoHide = useCallback(function (e) {
|
|
262
|
+
var _a;
|
|
263
|
+
if (isOpen && e.target instanceof Node && ((_a = menuContent.current) === null || _a === void 0 ? void 0 : _a.contains(e.target))) {
|
|
264
|
+
setIsOpen(false);
|
|
265
|
+
}
|
|
266
|
+
}, [menuContent]);
|
|
267
|
+
useEffect(function () {
|
|
268
|
+
if (autoHide) {
|
|
269
|
+
document.addEventListener("click", handleDocumentClickForAutoHide, true);
|
|
270
|
+
}
|
|
271
|
+
return function () {
|
|
272
|
+
if (autoHide) {
|
|
273
|
+
document.removeEventListener("click", handleDocumentClickForAutoHide, true);
|
|
274
|
+
}
|
|
275
|
+
};
|
|
276
|
+
}, [autoHide, handleDocumentClickForAutoHide]);
|
|
253
277
|
return /*#__PURE__*/React.createElement("div", {
|
|
254
278
|
className: classnames(styles.mobileActionsContainer, isOpen && styles.isOpen)
|
|
255
279
|
}, /*#__PURE__*/React.createElement(FocusOn, {
|
|
@@ -264,6 +288,7 @@ const MobileActions = /*#__PURE__*/function () {
|
|
|
264
288
|
toggleDisplay: toggleDisplay,
|
|
265
289
|
isOpen: isOpen
|
|
266
290
|
}), (defaultAction || secondaryActions || secondaryOverflowMenuItems || primaryAction && isMenuGroupNotButton(primaryAction)) && ( /*#__PURE__*/React.createElement("div", {
|
|
291
|
+
ref: menuContent,
|
|
267
292
|
className: styles.mobileActionsMenuContainer
|
|
268
293
|
}, /*#__PURE__*/React.createElement(DrawerMenuContent, {
|
|
269
294
|
primaryAction: primaryAction,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MobileActions.mjs","sources":["../../../../src/TitleBlockZen/subcomponents/MobileActions.tsx"],"sourcesContent":["import React, { useState } from \"react\"\nimport classnames from \"classnames\"\nimport { FocusOn } from \"react-focus-on\"\nimport { ButtonProps } from \"~components/Button\"\nimport { ChevronDownIcon, ChevronUpIcon } from \"~components/Icon\"\nimport { MenuItem, MenuList, MenuHeading } from \"~components/Menu\"\nimport {\n DefaultActionProps,\n PrimaryActionProps,\n SecondaryActionsProps,\n TitleBlockButtonProps,\n TitleBlockMenuGroup,\n TitleBlockMenuItemProps,\n} from \"../types\"\nimport {\n convertSecondaryActionsToMenuItems,\n isMenuGroupNotButton,\n} from \"../utils\"\nimport { TitleBlockMenuItem } from \"./TitleBlockMenuItem\"\n\nimport styles from \"./MobileActions.module.scss\"\n\nconst menuItemIsLink: (item: TitleBlockMenuItemProps) => boolean = item =>\n \"href\" in item\n\nconst defaultActionIsLink: (action: DefaultActionProps) => boolean = action =>\n \"href\" in action\n\nconst defaultActionIsButton: (action: DefaultActionProps) => boolean = action =>\n (!(\"href\" in action) && \"onClick\" in action) || \"component\" in action\n\nconst filterActions = (\n menuItems: TitleBlockMenuItemProps[],\n filterType: \"link\" | \"action\"\n): TitleBlockMenuItemProps[] =>\n menuItems.filter(item =>\n filterType === \"link\" ? menuItemIsLink(item) : !menuItemIsLink(item)\n )\n\n/** Returns a filtered array of TitleBlockMenuItem based on actionType\n * This is use to sort a selectively render the action into a specifc order\n */\nconst renderPrimaryActionDrawerContent = (\n primaryAction: PrimaryActionProps,\n actionType: \"link\" | \"action\"\n): JSX.Element[] | null => {\n if (!primaryAction) return null\n\n if (isMenuGroupNotButton(primaryAction)) {\n const filteredActions = filterActions(primaryAction.menuItems, actionType)\n return filteredActions.map((item, idx) => {\n const itemType = menuItemIsLink(item) ? \"link\" : \"action\"\n\n return (\n <TitleBlockMenuItem\n {...item}\n key={`title-block-mobile-actions-primary-${itemType}-${idx}`}\n data-automation-id={`title-block-mobile-actions-primary-${itemType}-${idx}`}\n data-testid={`title-block-mobile-actions-primary-${itemType}-${idx}`}\n />\n )\n })\n }\n\n return null\n}\n\nconst renderDefaultLink = (\n defaultAction: DefaultActionProps\n): JSX.Element | undefined => {\n if (!defaultActionIsLink(defaultAction)) return\n if (\"component\" in defaultAction) {\n return (\n <TitleBlockMenuItem\n {...defaultAction}\n key=\"title-block-mobile-actions-default-link\"\n data-automation-id=\"title-block-mobile-actions-default-link\"\n data-testid=\"title-block-mobile-actions-default-link\"\n />\n )\n }\n return (\n <MenuItem\n href={defaultAction.href}\n label={defaultAction.label}\n icon={defaultAction.icon}\n disabled={defaultAction.disabled}\n key=\"title-block-mobile-actions-default-link\"\n data-automation-id=\"title-block-mobile-actions-default-link\"\n data-testid=\"title-block-mobile-actions-default-link\"\n />\n )\n}\n\nconst renderDefaultAction = (\n defaultAction: DefaultActionProps\n): JSX.Element | null => {\n if (!defaultActionIsLink(defaultAction)) {\n return (\n <TitleBlockMenuItem\n {...defaultAction}\n key=\"title-block-mobile-actions-default-action\"\n data-automation-id=\"title-block-mobile-actions-default-action\"\n data-testid=\"title-block-mobile-actions-default-action\"\n />\n )\n }\n\n return null\n}\n\nconst renderSecondaryActions = (\n secondaryActions: SecondaryActionsProps | undefined\n): JSX.Element[] | null => {\n if (!secondaryActions) return null\n const secondaryActionMenuItems: TitleBlockMenuItemProps[] =\n convertSecondaryActionsToMenuItems(secondaryActions)\n\n return secondaryActionMenuItems.map((item, idx) => (\n <TitleBlockMenuItem\n {...item}\n key={`title-block-mobile-actions-secondary-action-${idx}`}\n data-testid=\"title-block-mobile-actions-secondary-action\"\n />\n ))\n}\n\nconst renderSecondaryOverflowMenuItems = (\n secondaryOverflowMenuItems: TitleBlockMenuItemProps[]\n): JSX.Element[] =>\n secondaryOverflowMenuItems.map((item, idx) => (\n <TitleBlockMenuItem\n {...item}\n key={`title-block-mobile-actions-overflow-menu-item-${idx}`}\n data-testid=\"title-block-mobile-actions-overflow-menu-item\"\n />\n ))\n\ntype DrawerMenuContentProps = {\n primaryAction?: PrimaryActionProps\n defaultAction?: DefaultActionProps\n secondaryActions?: SecondaryActionsProps\n secondaryOverflowMenuItems?: TitleBlockMenuItemProps[]\n}\n\nconst DrawerMenuContent = ({\n primaryAction,\n defaultAction,\n secondaryActions,\n secondaryOverflowMenuItems,\n}: DrawerMenuContentProps): JSX.Element => {\n const showOtherActionsHeading =\n (defaultAction && defaultActionIsButton(defaultAction)) ||\n secondaryActions ||\n secondaryOverflowMenuItems\n\n return (\n <>\n <MenuList>\n {primaryAction &&\n renderPrimaryActionDrawerContent(primaryAction, \"link\")}\n {defaultAction && renderDefaultLink(defaultAction)}\n {primaryAction &&\n renderPrimaryActionDrawerContent(primaryAction, \"action\")}\n </MenuList>\n {(defaultAction || secondaryActions || secondaryOverflowMenuItems) && (\n <MenuList\n heading={\n showOtherActionsHeading && <MenuHeading>Other actions</MenuHeading>\n }\n >\n {defaultAction && renderDefaultAction(defaultAction)}\n {secondaryActions && renderSecondaryActions(secondaryActions)}\n {secondaryOverflowMenuItems &&\n renderSecondaryOverflowMenuItems(secondaryOverflowMenuItems)}\n </MenuList>\n )}\n </>\n )\n}\n\nconst renderDrawerHandleLabel = (\n label: string,\n icon?: JSX.Element,\n drawerHandleLabelIconPosition?: ButtonProps[\"iconPosition\"]\n): JSX.Element => {\n if (drawerHandleLabelIconPosition === \"end\") {\n return (\n <>\n <span\n className={styles.drawerHandleLabelText}\n data-testid=\"drawer-handle-lable-text\"\n >\n {label}\n </span>\n <>{icon && <span className={styles.drawerHandleIcon}>{icon}</span>}</>\n </>\n )\n } else {\n return (\n <>\n <>{icon && <span className={styles.drawerHandleIcon}>{icon}</span>}</>\n <span\n className={styles.drawerHandleLabelText}\n data-testid=\"drawer-handle-lable-text\"\n >\n {label}\n </span>\n </>\n )\n }\n}\n\ntype HrefAndOnClick = Pick<TitleBlockButtonProps, \"href\" | \"onClick\">\ntype ButtonOrLinkActionProps =\n | HrefAndOnClick\n | TitleBlockButtonProps[\"href\"]\n | TitleBlockButtonProps[\"onClick\"]\ntype ButtonOrLinkProps = {\n action?: ButtonOrLinkActionProps\n children: React.ReactNode\n}\n\nconst ButtonOrLink = ({ action, children }: ButtonOrLinkProps): JSX.Element => {\n if (typeof action === \"object\" && \"onClick\" in action && \"href\" in action) {\n return (\n <a\n onClick={action.onClick}\n href={action.href}\n className={classnames(\n styles.mobileActionsPrimaryLabel,\n styles.mobileActionsPrimaryButton\n )}\n data-testid=\"title-block-mobile-actions-primary-button\"\n >\n {children}\n </a>\n )\n }\n if (typeof action === \"function\") {\n return (\n <button\n type=\"button\"\n onClick={action}\n className={classnames(\n styles.mobileActionsPrimaryLabel,\n styles.mobileActionsPrimaryButton\n )}\n data-testid=\"title-block-mobile-actions-primary-button\"\n >\n {children}\n </button>\n )\n }\n if (typeof action === \"string\") {\n return (\n <a\n href={action}\n className={classnames(\n styles.mobileActionsPrimaryLabel,\n styles.mobileActionsPrimaryButton\n )}\n data-testid=\"title-block-mobile-actions-primary-button\"\n >\n {children}\n </a>\n )\n }\n\n // when there's no action (e.g. primary button is disabled)\n return (\n <button\n type=\"button\"\n className={classnames(\n styles.mobileActionsPrimaryLabel,\n styles.mobileActionsPrimaryButton\n )}\n data-testid=\"title-block-mobile-actions-primary-button\"\n >\n {children}\n </button>\n )\n}\n\nconst getAction = (\n primaryAction: TitleBlockButtonProps\n): ButtonOrLinkActionProps => {\n if (primaryAction && !primaryAction.disabled) {\n if (primaryAction.onClick && primaryAction.href) {\n return {\n href: primaryAction.href,\n onClick: primaryAction.onClick,\n }\n }\n if (primaryAction.onClick) {\n return primaryAction.onClick\n }\n if (primaryAction.href) {\n return primaryAction.href\n }\n }\n\n return undefined\n}\n\ntype DrawerHandleProps = {\n primaryAction: PrimaryActionProps | undefined\n secondaryActions: SecondaryActionsProps | undefined\n defaultAction?: DefaultActionProps | TitleBlockMenuGroup\n secondaryOverflowMenuItems?: TitleBlockMenuItemProps[]\n drawerHandleLabelIconPosition?: ButtonProps[\"iconPosition\"]\n toggleDisplay: () => void\n isOpen: boolean\n}\n\nconst DrawerHandle = ({\n primaryAction,\n secondaryActions,\n defaultAction,\n secondaryOverflowMenuItems,\n drawerHandleLabelIconPosition,\n toggleDisplay,\n isOpen,\n}: DrawerHandleProps): JSX.Element | null => {\n const showDrawer =\n defaultAction || secondaryActions || secondaryOverflowMenuItems\n if (primaryAction) {\n // If the primary action is a menu\n if (isMenuGroupNotButton(primaryAction)) {\n return (\n <div\n className={classnames(\n styles.mobileActionsTopRow,\n styles.mobileActionsTopRowSingleButton\n )}\n data-testid=\"title-block-mobile-actions-drawer-handle\"\n >\n <button\n type=\"button\"\n className={classnames(\n styles.mobileActionsExpandButton,\n styles.mobileActionsPrimaryLabel\n )}\n onClick={toggleDisplay}\n aria-expanded={isOpen}\n >\n {primaryAction.label}\n <span className={styles.mobileActionsChevronSquare}>\n {isOpen ? (\n <ChevronDownIcon role=\"presentation\" />\n ) : (\n <ChevronUpIcon role=\"presentation\" />\n )}\n </span>\n </button>\n </div>\n )\n }\n\n // If the primary action is a button, or has no onClick/href/action\n return (\n <div\n className={classnames(\n styles.mobileActionsTopRow,\n !showDrawer && styles.mobileActionsTopRowSingleButton\n )}\n data-testid=\"title-block-mobile-actions-drawer-handle\"\n >\n {\"component\" in primaryAction ? (\n <primaryAction.component\n className={classnames(\n styles.mobileActionsPrimaryLabel,\n styles.mobileActionsPrimaryButton\n )}\n {...primaryAction}\n >\n {primaryAction.label &&\n renderDrawerHandleLabel(\n primaryAction.label,\n primaryAction.icon,\n drawerHandleLabelIconPosition\n )}\n </primaryAction.component>\n ) : (\n <ButtonOrLink action={getAction(primaryAction)}>\n {renderDrawerHandleLabel(\n primaryAction.label,\n primaryAction.icon,\n drawerHandleLabelIconPosition\n )}\n </ButtonOrLink>\n )}\n\n {/* If there are no secondary etc. actions, just show the button without drawer */}\n {showDrawer && (\n <button\n type=\"button\"\n className={styles.mobileActionsExpandButton}\n onClick={toggleDisplay}\n aria-expanded={isOpen}\n aria-label=\"Other actions\"\n >\n {isOpen ? (\n <ChevronDownIcon role=\"presentation\" />\n ) : (\n <ChevronUpIcon role=\"presentation\" />\n )}\n </button>\n )}\n </div>\n )\n }\n\n // if there are default/secondary actions but no primary action\n if (showDrawer) {\n return (\n <div\n className={classnames(\n styles.mobileActionsTopRow,\n styles.mobileActionsTopRowSingleButton\n )}\n data-testid=\"title-block-mobile-actions-drawer-handle\"\n >\n <button\n type=\"button\"\n className={classnames(\n styles.mobileActionsExpandButton,\n styles.mobileActionsPrimaryLabel\n )}\n onClick={toggleDisplay}\n aria-expanded={isOpen}\n >\n {renderDrawerHandleLabel(\"Other actions\")}\n <span className={styles.mobileActionsChevronSquare}>\n {isOpen ? (\n <ChevronDownIcon role=\"presentation\" />\n ) : (\n <ChevronUpIcon role=\"presentation\" />\n )}\n </span>\n </button>\n </div>\n )\n }\n return null\n}\n\nexport type MobileActionsProps = {\n primaryAction?: PrimaryActionProps\n defaultAction?: DefaultActionProps\n secondaryActions?: SecondaryActionsProps\n secondaryOverflowMenuItems?: TitleBlockMenuItemProps[]\n drawerHandleLabelIconPosition?: ButtonProps[\"iconPosition\"]\n}\n\nexport const MobileActions = ({\n primaryAction,\n defaultAction,\n secondaryActions,\n secondaryOverflowMenuItems,\n drawerHandleLabelIconPosition,\n}: MobileActionsProps): JSX.Element => {\n const [isOpen, setIsOpen] = useState<boolean>(false)\n\n const toggleDisplay = (): void => {\n setIsOpen(!isOpen)\n }\n\n return (\n <div\n className={classnames(\n styles.mobileActionsContainer,\n isOpen && styles.isOpen\n )}\n >\n <FocusOn enabled={isOpen} scrollLock={false}>\n <DrawerHandle\n primaryAction={primaryAction}\n secondaryActions={secondaryActions}\n defaultAction={defaultAction}\n secondaryOverflowMenuItems={secondaryOverflowMenuItems}\n drawerHandleLabelIconPosition={drawerHandleLabelIconPosition}\n toggleDisplay={toggleDisplay}\n isOpen={isOpen}\n />\n {(defaultAction ||\n secondaryActions ||\n secondaryOverflowMenuItems ||\n (primaryAction && isMenuGroupNotButton(primaryAction))) && (\n <div className={styles.mobileActionsMenuContainer}>\n <DrawerMenuContent\n primaryAction={primaryAction}\n defaultAction={defaultAction}\n secondaryActions={secondaryActions}\n secondaryOverflowMenuItems={secondaryOverflowMenuItems}\n />\n </div>\n )}\n </FocusOn>\n </div>\n )\n}\n\nMobileActions.displayName = \"MobileActions\"\n"],"names":["menuItemIsLink","item","defaultActionIsLink","action","defaultActionIsButton","filterActions","menuItems","filterType","filter","renderPrimaryActionDrawerContent","primaryAction","actionType","isMenuGroupNotButton","filteredActions","map","idx","itemType","React","createElement","TitleBlockMenuItem","__assign","key","concat","renderDefaultLink","defaultAction","MenuItem","href","label","icon","disabled","renderDefaultAction","renderSecondaryActions","secondaryActions","secondaryActionMenuItems","convertSecondaryActionsToMenuItems","renderSecondaryOverflowMenuItems","secondaryOverflowMenuItems","DrawerMenuContent","_a","showOtherActionsHeading","Fragment","MenuList","heading","MenuHeading","renderDrawerHandleLabel","drawerHandleLabelIconPosition","className","styles","drawerHandleLabelText","drawerHandleIcon","ButtonOrLink","children","onClick","classnames","mobileActionsPrimaryLabel","mobileActionsPrimaryButton","type","getAction","undefined","DrawerHandle","toggleDisplay","isOpen","showDrawer","mobileActionsTopRow","mobileActionsTopRowSingleButton","mobileActionsExpandButton","mobileActionsChevronSquare","ChevronDownIcon","role","ChevronUpIcon","component","MobileActions","_b","useState","setIsOpen","mobileActionsContainer","FocusOn","enabled","scrollLock","mobileActionsMenuContainer","displayName"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"MobileActions.mjs","sources":["../../../../src/TitleBlockZen/subcomponents/MobileActions.tsx"],"sourcesContent":["import React, { useCallback, useEffect, useState } from \"react\"\nimport classnames from \"classnames\"\nimport { FocusOn } from \"react-focus-on\"\nimport { ButtonProps } from \"~components/Button\"\nimport { ChevronDownIcon, ChevronUpIcon } from \"~components/Icon\"\nimport { MenuItem, MenuList, MenuHeading } from \"~components/Menu\"\nimport { TITLE_BLOCK_ZEN_OTHER_ACTIONS_HTML_ID } from \"../constants\"\nimport {\n DefaultActionProps,\n PrimaryActionProps,\n SecondaryActionsProps,\n TitleBlockButtonProps,\n TitleBlockMenuGroup,\n TitleBlockMenuItemProps,\n} from \"../types\"\nimport {\n convertSecondaryActionsToMenuItems,\n isMenuGroupNotButton,\n} from \"../utils\"\nimport { TitleBlockMenuItem } from \"./TitleBlockMenuItem\"\n\nimport styles from \"./MobileActions.module.scss\"\n\nconst menuItemIsLink: (item: TitleBlockMenuItemProps) => boolean = item =>\n \"href\" in item\n\nconst defaultActionIsLink: (action: DefaultActionProps) => boolean = action =>\n \"href\" in action\n\nconst defaultActionIsButton: (action: DefaultActionProps) => boolean = action =>\n (!(\"href\" in action) && \"onClick\" in action) || \"component\" in action\n\nconst filterActions = (\n menuItems: TitleBlockMenuItemProps[],\n filterType: \"link\" | \"action\"\n): TitleBlockMenuItemProps[] =>\n menuItems.filter(item =>\n filterType === \"link\" ? menuItemIsLink(item) : !menuItemIsLink(item)\n )\n\n/** Returns a filtered array of TitleBlockMenuItem based on actionType\n * This is use to sort a selectively render the action into a specifc order\n */\nconst renderPrimaryActionDrawerContent = (\n primaryAction: PrimaryActionProps,\n actionType: \"link\" | \"action\"\n): JSX.Element[] | null => {\n if (!primaryAction) return null\n\n if (isMenuGroupNotButton(primaryAction)) {\n const filteredActions = filterActions(primaryAction.menuItems, actionType)\n return filteredActions.map((item, idx) => {\n const itemType = menuItemIsLink(item) ? \"link\" : \"action\"\n\n return (\n <TitleBlockMenuItem\n {...item}\n key={`title-block-mobile-actions-primary-${itemType}-${idx}`}\n data-automation-id={`title-block-mobile-actions-primary-${itemType}-${idx}`}\n data-testid={`title-block-mobile-actions-primary-${itemType}-${idx}`}\n />\n )\n })\n }\n\n return null\n}\n\nconst renderDefaultLink = (\n defaultAction: DefaultActionProps\n): JSX.Element | undefined => {\n if (!defaultActionIsLink(defaultAction)) return\n if (\"component\" in defaultAction) {\n return (\n <TitleBlockMenuItem\n {...defaultAction}\n key=\"title-block-mobile-actions-default-link\"\n data-automation-id=\"title-block-mobile-actions-default-link\"\n data-testid=\"title-block-mobile-actions-default-link\"\n />\n )\n }\n return (\n <MenuItem\n href={defaultAction.href}\n label={defaultAction.label}\n icon={defaultAction.icon}\n disabled={defaultAction.disabled}\n key=\"title-block-mobile-actions-default-link\"\n data-automation-id=\"title-block-mobile-actions-default-link\"\n data-testid=\"title-block-mobile-actions-default-link\"\n id={defaultAction.id}\n />\n )\n}\n\nconst renderDefaultAction = (\n defaultAction: DefaultActionProps\n): JSX.Element | null => {\n if (!defaultActionIsLink(defaultAction)) {\n return (\n <TitleBlockMenuItem\n {...defaultAction}\n key=\"title-block-mobile-actions-default-action\"\n data-automation-id=\"title-block-mobile-actions-default-action\"\n data-testid=\"title-block-mobile-actions-default-action\"\n />\n )\n }\n\n return null\n}\n\nconst renderSecondaryActions = (\n secondaryActions: SecondaryActionsProps | undefined\n): JSX.Element[] | null => {\n if (!secondaryActions) return null\n const secondaryActionMenuItems: TitleBlockMenuItemProps[] =\n convertSecondaryActionsToMenuItems(secondaryActions)\n\n return secondaryActionMenuItems.map((item, idx) => (\n <TitleBlockMenuItem\n {...item}\n key={`title-block-mobile-actions-secondary-action-${idx}`}\n data-testid=\"title-block-mobile-actions-secondary-action\"\n />\n ))\n}\n\nconst renderSecondaryOverflowMenuItems = (\n secondaryOverflowMenuItems: TitleBlockMenuItemProps[]\n): JSX.Element[] =>\n secondaryOverflowMenuItems.map((item, idx) => (\n <TitleBlockMenuItem\n {...item}\n key={`title-block-mobile-actions-overflow-menu-item-${idx}`}\n data-testid=\"title-block-mobile-actions-overflow-menu-item\"\n />\n ))\n\ntype DrawerMenuContentProps = {\n primaryAction?: PrimaryActionProps\n defaultAction?: DefaultActionProps\n secondaryActions?: SecondaryActionsProps\n secondaryOverflowMenuItems?: TitleBlockMenuItemProps[]\n}\n\nconst DrawerMenuContent = ({\n primaryAction,\n defaultAction,\n secondaryActions,\n secondaryOverflowMenuItems,\n}: DrawerMenuContentProps): JSX.Element => {\n const showOtherActionsHeading =\n (defaultAction && defaultActionIsButton(defaultAction)) ||\n secondaryActions ||\n secondaryOverflowMenuItems\n\n return (\n <>\n <MenuList>\n {primaryAction &&\n renderPrimaryActionDrawerContent(primaryAction, \"link\")}\n {defaultAction && renderDefaultLink(defaultAction)}\n {primaryAction &&\n renderPrimaryActionDrawerContent(primaryAction, \"action\")}\n </MenuList>\n {(defaultAction || secondaryActions || secondaryOverflowMenuItems) && (\n <MenuList\n heading={\n showOtherActionsHeading && <MenuHeading>Other actions</MenuHeading>\n }\n >\n {defaultAction && renderDefaultAction(defaultAction)}\n {secondaryActions && renderSecondaryActions(secondaryActions)}\n {secondaryOverflowMenuItems &&\n renderSecondaryOverflowMenuItems(secondaryOverflowMenuItems)}\n </MenuList>\n )}\n </>\n )\n}\n\nconst renderDrawerHandleLabel = (\n label: string,\n icon?: JSX.Element,\n drawerHandleLabelIconPosition?: ButtonProps[\"iconPosition\"]\n): JSX.Element => {\n if (drawerHandleLabelIconPosition === \"end\") {\n return (\n <>\n <span\n className={styles.drawerHandleLabelText}\n data-testid=\"drawer-handle-lable-text\"\n >\n {label}\n </span>\n <>{icon && <span className={styles.drawerHandleIcon}>{icon}</span>}</>\n </>\n )\n } else {\n return (\n <>\n <>{icon && <span className={styles.drawerHandleIcon}>{icon}</span>}</>\n <span\n className={styles.drawerHandleLabelText}\n data-testid=\"drawer-handle-lable-text\"\n >\n {label}\n </span>\n </>\n )\n }\n}\n\ntype HrefAndOnClick = Pick<TitleBlockButtonProps, \"href\" | \"onClick\">\ntype ButtonOrLinkActionProps =\n | HrefAndOnClick\n | TitleBlockButtonProps[\"href\"]\n | TitleBlockButtonProps[\"onClick\"]\ntype ButtonOrLinkProps = {\n action?: ButtonOrLinkActionProps\n children: React.ReactNode\n}\n\nconst ButtonOrLink = ({ action, children }: ButtonOrLinkProps): JSX.Element => {\n if (typeof action === \"object\" && \"onClick\" in action && \"href\" in action) {\n return (\n <a\n onClick={action.onClick}\n href={action.href}\n className={classnames(\n styles.mobileActionsPrimaryLabel,\n styles.mobileActionsPrimaryButton\n )}\n data-testid=\"title-block-mobile-actions-primary-button\"\n >\n {children}\n </a>\n )\n }\n if (typeof action === \"function\") {\n return (\n <button\n type=\"button\"\n onClick={action}\n className={classnames(\n styles.mobileActionsPrimaryLabel,\n styles.mobileActionsPrimaryButton\n )}\n data-testid=\"title-block-mobile-actions-primary-button\"\n >\n {children}\n </button>\n )\n }\n if (typeof action === \"string\") {\n return (\n <a\n href={action}\n className={classnames(\n styles.mobileActionsPrimaryLabel,\n styles.mobileActionsPrimaryButton\n )}\n data-testid=\"title-block-mobile-actions-primary-button\"\n >\n {children}\n </a>\n )\n }\n\n // when there's no action (e.g. primary button is disabled)\n return (\n <button\n type=\"button\"\n className={classnames(\n styles.mobileActionsPrimaryLabel,\n styles.mobileActionsPrimaryButton\n )}\n data-testid=\"title-block-mobile-actions-primary-button\"\n >\n {children}\n </button>\n )\n}\n\nconst getAction = (\n primaryAction: TitleBlockButtonProps\n): ButtonOrLinkActionProps => {\n if (primaryAction && !primaryAction.disabled) {\n if (primaryAction.onClick && primaryAction.href) {\n return {\n href: primaryAction.href,\n onClick: primaryAction.onClick,\n }\n }\n if (primaryAction.onClick) {\n return primaryAction.onClick\n }\n if (primaryAction.href) {\n return primaryAction.href\n }\n }\n\n return undefined\n}\n\ntype DrawerHandleProps = {\n primaryAction: PrimaryActionProps | undefined\n secondaryActions: SecondaryActionsProps | undefined\n defaultAction?: DefaultActionProps | TitleBlockMenuGroup\n secondaryOverflowMenuItems?: TitleBlockMenuItemProps[]\n drawerHandleLabelIconPosition?: ButtonProps[\"iconPosition\"]\n toggleDisplay: () => void\n isOpen: boolean\n}\n\nconst DrawerHandle = ({\n primaryAction,\n secondaryActions,\n defaultAction,\n secondaryOverflowMenuItems,\n drawerHandleLabelIconPosition,\n toggleDisplay,\n isOpen,\n}: DrawerHandleProps): JSX.Element | null => {\n const showDrawer =\n defaultAction || secondaryActions || secondaryOverflowMenuItems\n if (primaryAction) {\n // If the primary action is a menu\n if (isMenuGroupNotButton(primaryAction)) {\n return (\n <div\n className={classnames(\n styles.mobileActionsTopRow,\n styles.mobileActionsTopRowSingleButton\n )}\n data-testid=\"title-block-mobile-actions-drawer-handle\"\n >\n <button\n type=\"button\"\n className={classnames(\n styles.mobileActionsExpandButton,\n styles.mobileActionsPrimaryLabel\n )}\n onClick={toggleDisplay}\n aria-expanded={isOpen}\n >\n {primaryAction.label}\n <span className={styles.mobileActionsChevronSquare}>\n {isOpen ? (\n <ChevronDownIcon role=\"presentation\" />\n ) : (\n <ChevronUpIcon role=\"presentation\" />\n )}\n </span>\n </button>\n </div>\n )\n }\n\n // If the primary action is a button, or has no onClick/href/action\n return (\n <div\n className={classnames(\n styles.mobileActionsTopRow,\n !showDrawer && styles.mobileActionsTopRowSingleButton\n )}\n data-testid=\"title-block-mobile-actions-drawer-handle\"\n >\n {\"component\" in primaryAction ? (\n <primaryAction.component\n className={classnames(\n styles.mobileActionsPrimaryLabel,\n styles.mobileActionsPrimaryButton\n )}\n {...primaryAction}\n >\n {primaryAction.label &&\n renderDrawerHandleLabel(\n primaryAction.label,\n primaryAction.icon,\n drawerHandleLabelIconPosition\n )}\n </primaryAction.component>\n ) : (\n <ButtonOrLink action={getAction(primaryAction)}>\n {renderDrawerHandleLabel(\n primaryAction.label,\n primaryAction.icon,\n drawerHandleLabelIconPosition\n )}\n </ButtonOrLink>\n )}\n\n {/* If there are no secondary etc. actions, just show the button without drawer */}\n {showDrawer && (\n <button\n type=\"button\"\n className={styles.mobileActionsExpandButton}\n onClick={toggleDisplay}\n aria-expanded={isOpen}\n id={TITLE_BLOCK_ZEN_OTHER_ACTIONS_HTML_ID}\n aria-label=\"Other actions\"\n >\n {isOpen ? (\n <ChevronDownIcon role=\"presentation\" />\n ) : (\n <ChevronUpIcon role=\"presentation\" />\n )}\n </button>\n )}\n </div>\n )\n }\n\n // if there are default/secondary actions but no primary action\n if (showDrawer) {\n return (\n <div\n className={classnames(\n styles.mobileActionsTopRow,\n styles.mobileActionsTopRowSingleButton\n )}\n data-testid=\"title-block-mobile-actions-drawer-handle\"\n >\n <button\n type=\"button\"\n className={classnames(\n styles.mobileActionsExpandButton,\n styles.mobileActionsPrimaryLabel\n )}\n onClick={toggleDisplay}\n aria-expanded={isOpen}\n id={TITLE_BLOCK_ZEN_OTHER_ACTIONS_HTML_ID}\n >\n {renderDrawerHandleLabel(\"Other actions\")}\n <span className={styles.mobileActionsChevronSquare}>\n {isOpen ? (\n <ChevronDownIcon role=\"presentation\" />\n ) : (\n <ChevronUpIcon role=\"presentation\" />\n )}\n </span>\n </button>\n </div>\n )\n }\n return null\n}\n\nexport type MobileActionsProps = {\n primaryAction?: PrimaryActionProps\n defaultAction?: DefaultActionProps\n secondaryActions?: SecondaryActionsProps\n secondaryOverflowMenuItems?: TitleBlockMenuItemProps[]\n drawerHandleLabelIconPosition?: ButtonProps[\"iconPosition\"]\n autoHide?: boolean\n}\n\nexport const MobileActions = ({\n primaryAction,\n defaultAction,\n secondaryActions,\n secondaryOverflowMenuItems,\n drawerHandleLabelIconPosition,\n autoHide = false,\n}: MobileActionsProps): JSX.Element => {\n const [isOpen, setIsOpen] = useState<boolean>(false)\n const menuContent = React.createRef<HTMLDivElement>()\n const toggleDisplay = (): void => {\n setIsOpen(!isOpen)\n }\n\n // This callback handler will not run when autoHide === \"off\"\n const handleDocumentClickForAutoHide = useCallback(\n (e: MouseEvent) => {\n if (\n isOpen &&\n e.target instanceof Node &&\n menuContent.current?.contains(e.target)\n ) {\n setIsOpen(false)\n }\n },\n [menuContent]\n )\n\n useEffect(() => {\n if (autoHide) {\n document.addEventListener(\"click\", handleDocumentClickForAutoHide, true)\n }\n\n return () => {\n if (autoHide) {\n document.removeEventListener(\n \"click\",\n handleDocumentClickForAutoHide,\n true\n )\n }\n }\n }, [autoHide, handleDocumentClickForAutoHide])\n\n return (\n <div\n className={classnames(\n styles.mobileActionsContainer,\n isOpen && styles.isOpen\n )}\n >\n <FocusOn enabled={isOpen} scrollLock={false}>\n <DrawerHandle\n primaryAction={primaryAction}\n secondaryActions={secondaryActions}\n defaultAction={defaultAction}\n secondaryOverflowMenuItems={secondaryOverflowMenuItems}\n drawerHandleLabelIconPosition={drawerHandleLabelIconPosition}\n toggleDisplay={toggleDisplay}\n isOpen={isOpen}\n />\n {(defaultAction ||\n secondaryActions ||\n secondaryOverflowMenuItems ||\n (primaryAction && isMenuGroupNotButton(primaryAction))) && (\n <div ref={menuContent} className={styles.mobileActionsMenuContainer}>\n <DrawerMenuContent\n primaryAction={primaryAction}\n defaultAction={defaultAction}\n secondaryActions={secondaryActions}\n secondaryOverflowMenuItems={secondaryOverflowMenuItems}\n />\n </div>\n )}\n </FocusOn>\n </div>\n )\n}\n\nMobileActions.displayName = \"MobileActions\"\n"],"names":["menuItemIsLink","item","defaultActionIsLink","action","defaultActionIsButton","filterActions","menuItems","filterType","filter","renderPrimaryActionDrawerContent","primaryAction","actionType","isMenuGroupNotButton","filteredActions","map","idx","itemType","React","createElement","TitleBlockMenuItem","__assign","key","concat","renderDefaultLink","defaultAction","MenuItem","href","label","icon","disabled","id","renderDefaultAction","renderSecondaryActions","secondaryActions","secondaryActionMenuItems","convertSecondaryActionsToMenuItems","renderSecondaryOverflowMenuItems","secondaryOverflowMenuItems","DrawerMenuContent","_a","showOtherActionsHeading","Fragment","MenuList","heading","MenuHeading","renderDrawerHandleLabel","drawerHandleLabelIconPosition","className","styles","drawerHandleLabelText","drawerHandleIcon","ButtonOrLink","children","onClick","classnames","mobileActionsPrimaryLabel","mobileActionsPrimaryButton","type","getAction","undefined","DrawerHandle","toggleDisplay","isOpen","showDrawer","mobileActionsTopRow","mobileActionsTopRowSingleButton","mobileActionsExpandButton","mobileActionsChevronSquare","ChevronDownIcon","role","ChevronUpIcon","component","TITLE_BLOCK_ZEN_OTHER_ACTIONS_HTML_ID","MobileActions","_b","autoHide","_c","useState","setIsOpen","menuContent","createRef","handleDocumentClickForAutoHide","useCallback","e","target","Node","current","contains","useEffect","document","addEventListener","removeEventListener","mobileActionsContainer","FocusOn","enabled","scrollLock","ref","mobileActionsMenuContainer","displayName"],"mappings":"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"}
|
|
@@ -11,6 +11,7 @@ import '../../Menu/subcomponents/MenuItem/MenuItem.mjs';
|
|
|
11
11
|
import { MenuList } from '../../Menu/subcomponents/MenuList/MenuList.mjs';
|
|
12
12
|
import '../../Menu/subcomponents/StatelessMenu/StatelessMenu.mjs';
|
|
13
13
|
import styles from '../TitleBlockZen.module.scss.mjs';
|
|
14
|
+
import { TITLE_BLOCK_ZEN_SECONDARY_MENU_HTML_ID } from '../constants.mjs';
|
|
14
15
|
import { TitleBlockMenuItem } from './TitleBlockMenuItem.mjs';
|
|
15
16
|
import { Toolbar } from './Toolbar.mjs';
|
|
16
17
|
var renderSecondaryOverflowMenu = function (secondaryOverflowMenuItems, reversed) {
|
|
@@ -22,7 +23,8 @@ var renderSecondaryOverflowMenu = function (secondaryOverflowMenuItems, reversed
|
|
|
22
23
|
reversed: reversed,
|
|
23
24
|
icon: /*#__PURE__*/React.createElement(MeatballsIcon, {
|
|
24
25
|
role: "presentation"
|
|
25
|
-
})
|
|
26
|
+
}),
|
|
27
|
+
id: TITLE_BLOCK_ZEN_SECONDARY_MENU_HTML_ID
|
|
26
28
|
})
|
|
27
29
|
}, /*#__PURE__*/React.createElement(MenuList, null, secondaryOverflowMenuItems.map(function (menuItem, i) {
|
|
28
30
|
return /*#__PURE__*/React.createElement(TitleBlockMenuItem, __assign({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SecondaryActions.mjs","sources":["../../../../src/TitleBlockZen/subcomponents/SecondaryActions.tsx"],"sourcesContent":["import React from \"react\"\nimport { Button, IconButton } from \"~components/Button\"\nimport { ChevronDownIcon, MeatballsIcon } from \"~components/Icon\"\nimport { Menu, MenuList } from \"~components/Menu\"\nimport styles from \"../TitleBlockZen.module.scss\"\nimport { SecondaryActionsProps, TitleBlockMenuItemProps } from \"../types\"\nimport { TitleBlockMenuItem } from \"./TitleBlockMenuItem\"\nimport { Toolbar } from \"./Toolbar\"\n\ntype Props = {\n secondaryActions?: SecondaryActionsProps\n secondaryOverflowMenuItems?: TitleBlockMenuItemProps[]\n reversed?: boolean\n}\n\nconst renderSecondaryOverflowMenu = (\n secondaryOverflowMenuItems?: TitleBlockMenuItemProps[],\n reversed?: boolean\n): JSX.Element | undefined => {\n if (!secondaryOverflowMenuItems) return undefined\n return (\n <Menu\n align=\"right\"\n button={\n <IconButton\n label=\"Open secondary menu\"\n reversed={reversed}\n icon={<MeatballsIcon role=\"presentation\" />}\n />\n }\n >\n <MenuList>\n {secondaryOverflowMenuItems.map((menuItem, i) => (\n <TitleBlockMenuItem key={i} {...menuItem} />\n ))}\n </MenuList>\n </Menu>\n )\n}\n\n// Unfortunately, you'll notice below, that I needed to use the array index,\n// against react best practices (https://reactjs.org/docs/lists-and-keys.html)\n// This is because the menu items have no unique identifier.\n\nexport const SecondaryActions = ({\n secondaryActions,\n secondaryOverflowMenuItems,\n reversed = false,\n}: Props): JSX.Element | null => {\n if (!secondaryActions && !secondaryOverflowMenuItems) return null\n\n const secondaryActionsAsToolbarItems = secondaryActions\n ? secondaryActions.map((action, i) => {\n if (\"menuItems\" in action) {\n return {\n key: `${i}`, // We shouldn't use an index here, see note above\n node: (\n <Menu\n align=\"right\"\n button={\n <Button\n secondary\n label={action.label}\n reversed={reversed}\n icon={<ChevronDownIcon role=\"presentation\" />}\n iconPosition=\"end\"\n />\n }\n >\n <MenuList>\n {action.menuItems.map((menuItem, i2) => (\n <TitleBlockMenuItem key={i2} {...menuItem} />\n ))}\n </MenuList>\n </Menu>\n ),\n }\n } else {\n if (\"onClick\" in action && \"href\" in action) {\n // eslint-disable-next-line no-console\n console.warn(\n \"\\u001b[33m \\nTITLE BLOCK WARNING:\\nSecondary actions only support \" +\n \"either an href or an onClick, not both simultaneously.\\n\"\n )\n }\n return {\n key: `${i}`, // We shouldn't use an index here, see note above\n node: (\n <Button\n secondary\n reversed={reversed}\n {...action}\n data-automation-id=\"title-block-secondary-actions-button\"\n data-testid=\"title-block-secondary-actions-button\"\n />\n ),\n }\n }\n })\n : []\n\n const overflowMenu = renderSecondaryOverflowMenu(\n secondaryOverflowMenuItems,\n reversed\n )\n\n const toolbarItems = [\n ...secondaryActionsAsToolbarItems,\n ...(overflowMenu\n ? [\n {\n key: \"overflowMenu\",\n node: overflowMenu,\n },\n ]\n : []),\n ]\n\n return (\n <div className={styles.secondaryActionsContainer}>\n <Toolbar\n items={toolbarItems}\n noGap\n automationId=\"title-block-secondary-actions-toolbar\"\n />\n </div>\n )\n}\n\nSecondaryActions.displayName = \"SecondaryActions\"\n"],"names":["renderSecondaryOverflowMenu","secondaryOverflowMenuItems","reversed","undefined","React","createElement","Menu","align","button","IconButton","label","icon","MeatballsIcon","role","MenuList","map","menuItem","i","TitleBlockMenuItem","__assign","key","SecondaryActions","_a","secondaryActions","_b","secondaryActionsAsToolbarItems","action","concat","node","Button","secondary","ChevronDownIcon","iconPosition","menuItems","i2","console","warn","overflowMenu","toolbarItems","__spreadArray","className","styles","secondaryActionsContainer","Toolbar","items","noGap","automationId","displayName"],"mappings":"
|
|
1
|
+
{"version":3,"file":"SecondaryActions.mjs","sources":["../../../../src/TitleBlockZen/subcomponents/SecondaryActions.tsx"],"sourcesContent":["import React from \"react\"\nimport { Button, IconButton } from \"~components/Button\"\nimport { ChevronDownIcon, MeatballsIcon } from \"~components/Icon\"\nimport { Menu, MenuList } from \"~components/Menu\"\nimport styles from \"../TitleBlockZen.module.scss\"\nimport { TITLE_BLOCK_ZEN_SECONDARY_MENU_HTML_ID } from \"../constants\"\nimport { SecondaryActionsProps, TitleBlockMenuItemProps } from \"../types\"\nimport { TitleBlockMenuItem } from \"./TitleBlockMenuItem\"\nimport { Toolbar } from \"./Toolbar\"\n\ntype Props = {\n secondaryActions?: SecondaryActionsProps\n secondaryOverflowMenuItems?: TitleBlockMenuItemProps[]\n reversed?: boolean\n}\n\nconst renderSecondaryOverflowMenu = (\n secondaryOverflowMenuItems?: TitleBlockMenuItemProps[],\n reversed?: boolean\n): JSX.Element | undefined => {\n if (!secondaryOverflowMenuItems) return undefined\n return (\n <Menu\n align=\"right\"\n button={\n <IconButton\n label=\"Open secondary menu\"\n reversed={reversed}\n icon={<MeatballsIcon role=\"presentation\" />}\n id={TITLE_BLOCK_ZEN_SECONDARY_MENU_HTML_ID}\n />\n }\n >\n <MenuList>\n {secondaryOverflowMenuItems.map((menuItem, i) => (\n <TitleBlockMenuItem key={i} {...menuItem} />\n ))}\n </MenuList>\n </Menu>\n )\n}\n\n// Unfortunately, you'll notice below, that I needed to use the array index,\n// against react best practices (https://reactjs.org/docs/lists-and-keys.html)\n// This is because the menu items have no unique identifier.\n\nexport const SecondaryActions = ({\n secondaryActions,\n secondaryOverflowMenuItems,\n reversed = false,\n}: Props): JSX.Element | null => {\n if (!secondaryActions && !secondaryOverflowMenuItems) return null\n\n const secondaryActionsAsToolbarItems = secondaryActions\n ? secondaryActions.map((action, i) => {\n if (\"menuItems\" in action) {\n return {\n key: `${i}`, // We shouldn't use an index here, see note above\n node: (\n <Menu\n align=\"right\"\n button={\n <Button\n secondary\n label={action.label}\n reversed={reversed}\n icon={<ChevronDownIcon role=\"presentation\" />}\n iconPosition=\"end\"\n />\n }\n >\n <MenuList>\n {action.menuItems.map((menuItem, i2) => (\n <TitleBlockMenuItem key={i2} {...menuItem} />\n ))}\n </MenuList>\n </Menu>\n ),\n }\n } else {\n if (\"onClick\" in action && \"href\" in action) {\n // eslint-disable-next-line no-console\n console.warn(\n \"\\u001b[33m \\nTITLE BLOCK WARNING:\\nSecondary actions only support \" +\n \"either an href or an onClick, not both simultaneously.\\n\"\n )\n }\n return {\n key: `${i}`, // We shouldn't use an index here, see note above\n node: (\n <Button\n secondary\n reversed={reversed}\n {...action}\n data-automation-id=\"title-block-secondary-actions-button\"\n data-testid=\"title-block-secondary-actions-button\"\n />\n ),\n }\n }\n })\n : []\n\n const overflowMenu = renderSecondaryOverflowMenu(\n secondaryOverflowMenuItems,\n reversed\n )\n\n const toolbarItems = [\n ...secondaryActionsAsToolbarItems,\n ...(overflowMenu\n ? [\n {\n key: \"overflowMenu\",\n node: overflowMenu,\n },\n ]\n : []),\n ]\n\n return (\n <div className={styles.secondaryActionsContainer}>\n <Toolbar\n items={toolbarItems}\n noGap\n automationId=\"title-block-secondary-actions-toolbar\"\n />\n </div>\n )\n}\n\nSecondaryActions.displayName = \"SecondaryActions\"\n"],"names":["renderSecondaryOverflowMenu","secondaryOverflowMenuItems","reversed","undefined","React","createElement","Menu","align","button","IconButton","label","icon","MeatballsIcon","role","id","TITLE_BLOCK_ZEN_SECONDARY_MENU_HTML_ID","MenuList","map","menuItem","i","TitleBlockMenuItem","__assign","key","SecondaryActions","_a","secondaryActions","_b","secondaryActionsAsToolbarItems","action","concat","node","Button","secondary","ChevronDownIcon","iconPosition","menuItems","i2","console","warn","overflowMenu","toolbarItems","__spreadArray","className","styles","secondaryActionsContainer","Toolbar","items","noGap","automationId","displayName"],"mappings":"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"}
|
|
@@ -18,8 +18,9 @@ export type MenuItemProps = {
|
|
|
18
18
|
*/
|
|
19
19
|
isActive?: boolean;
|
|
20
20
|
"data-testid"?: string;
|
|
21
|
+
id?: string;
|
|
21
22
|
};
|
|
22
23
|
export declare const MenuItem: {
|
|
23
|
-
({ label, icon, destructive, disabled, onClick, href, target, isActive, "data-testid": dataTestId, }: MenuItemProps): JSX.Element;
|
|
24
|
+
({ label, icon, destructive, disabled, onClick, href, target, isActive, "data-testid": dataTestId, id, }: MenuItemProps): JSX.Element;
|
|
24
25
|
displayName: string;
|
|
25
26
|
};
|
|
@@ -4,6 +4,6 @@ import { TitleBlockProps } from "./types";
|
|
|
4
4
|
* {@link https://cultureamp.design/?path=/story/components-titleblock--docs Storybook}
|
|
5
5
|
*/
|
|
6
6
|
export declare const TitleBlockZen: {
|
|
7
|
-
({ title, variant, breadcrumb, avatar, subtitle, sectionTitle, sectionTitleDescription, renderSectionTitle, pageSwitcherSelect, handleHamburgerClick, primaryAction, defaultAction, secondaryActions, secondaryOverflowMenuItems, navigationTabs, collapseNavigationAreaWhenPossible, textDirection, surveyStatus, titleAutomationId, avatarAutomationId, subtitleAutomationId, sectionTitleAutomationId, sectionTitleDescriptionAutomationId, breadcrumbAutomationId, breadcrumbTextAutomationId, }: TitleBlockProps): JSX.Element;
|
|
7
|
+
({ title, variant, breadcrumb, avatar, subtitle, sectionTitle, sectionTitleDescription, renderSectionTitle, pageSwitcherSelect, handleHamburgerClick, primaryAction, defaultAction, secondaryActions, secondaryOverflowMenuItems, navigationTabs, collapseNavigationAreaWhenPossible, textDirection, surveyStatus, id, titleAutomationId, avatarAutomationId, subtitleAutomationId, sectionTitleAutomationId, sectionTitleDescriptionAutomationId, breadcrumbAutomationId, breadcrumbTextAutomationId, autoHideMobileActionsMenu, }: TitleBlockProps): JSX.Element;
|
|
8
8
|
displayName: string;
|
|
9
9
|
};
|
|
@@ -6,8 +6,9 @@ export type MobileActionsProps = {
|
|
|
6
6
|
secondaryActions?: SecondaryActionsProps;
|
|
7
7
|
secondaryOverflowMenuItems?: TitleBlockMenuItemProps[];
|
|
8
8
|
drawerHandleLabelIconPosition?: ButtonProps["iconPosition"];
|
|
9
|
+
autoHide?: boolean;
|
|
9
10
|
};
|
|
10
11
|
export declare const MobileActions: {
|
|
11
|
-
({ primaryAction, defaultAction, secondaryActions, secondaryOverflowMenuItems, drawerHandleLabelIconPosition, }: MobileActionsProps): JSX.Element;
|
|
12
|
+
({ primaryAction, defaultAction, secondaryActions, secondaryOverflowMenuItems, drawerHandleLabelIconPosition, autoHide, }: MobileActionsProps): JSX.Element;
|
|
12
13
|
displayName: string;
|
|
13
14
|
};
|
|
@@ -34,6 +34,7 @@ export type TitleBlockProps = {
|
|
|
34
34
|
collapseNavigationAreaWhenPossible?: boolean;
|
|
35
35
|
textDirection?: TextDirection;
|
|
36
36
|
surveyStatus?: SurveyStatus;
|
|
37
|
+
id?: string;
|
|
37
38
|
titleAutomationId?: string;
|
|
38
39
|
breadcrumbAutomationId?: string;
|
|
39
40
|
breadcrumbTextAutomationId?: string;
|
|
@@ -41,6 +42,7 @@ export type TitleBlockProps = {
|
|
|
41
42
|
subtitleAutomationId?: string;
|
|
42
43
|
sectionTitleAutomationId?: string;
|
|
43
44
|
sectionTitleDescriptionAutomationId?: string;
|
|
45
|
+
autoHideMobileActionsMenu?: boolean;
|
|
44
46
|
};
|
|
45
47
|
/**
|
|
46
48
|
* ### PrimaryActionProps
|