UNPKG

9.39 kBSource Map (JSON)View Raw
1{"version":3,"file":"MessageBar.base.js","sourceRoot":"../src/","sources":["components/MessageBar/MessageBar.base.tsx"],"names":[],"mappings":"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","sourcesContent":["import * as React from 'react';\nimport { DelayedRender, classNamesFunction, getNativeProps, htmlElementProperties, css } from '../../Utilities';\nimport { IconButton } from '../../Button';\nimport { Icon } from '../../Icon';\nimport { MessageBarType } from './MessageBar.types';\nimport { useId, useBoolean } from '@fluentui/react-hooks';\nimport type { IMessageBarProps, IMessageBarStyleProps, IMessageBarStyles } from './MessageBar.types';\n\nconst ICON_MAP = {\n [MessageBarType.info]: 'Info',\n [MessageBarType.warning]: 'Info',\n [MessageBarType.error]: 'ErrorBadge',\n [MessageBarType.blocked]: 'Blocked2',\n [MessageBarType.severeWarning]: 'Warning',\n [MessageBarType.success]: 'Completed',\n};\n\nconst COMPONENT_NAME = 'MessageBar';\n\nconst getClassNames = classNamesFunction<IMessageBarStyleProps, IMessageBarStyles>();\n\nconst getAnnouncementPriority = (messageBarType: MessageBarType): 'assertive' | 'polite' => {\n switch (messageBarType) {\n case MessageBarType.blocked:\n case MessageBarType.error:\n case MessageBarType.severeWarning:\n return 'assertive';\n }\n return 'polite';\n};\n\nconst getRole = (messageBarType: MessageBarType): 'alert' | 'status' => {\n switch (messageBarType) {\n case MessageBarType.blocked:\n case MessageBarType.error:\n case MessageBarType.severeWarning:\n return 'alert';\n }\n return 'status';\n};\n\nexport const MessageBarBase: React.FunctionComponent<IMessageBarProps> = React.forwardRef<\n HTMLDivElement,\n IMessageBarProps\n>((props, ref) => {\n const [expandSingleLine, { toggle: toggleExpandSingleLine }] = useBoolean(false);\n const labelId = useId('MessageBar');\n\n const {\n actions,\n className,\n children,\n // eslint-disable-next-line deprecation/deprecation\n overflowButtonAriaLabel,\n dismissIconProps,\n styles,\n theme,\n messageBarType = MessageBarType.info,\n onDismiss = undefined,\n isMultiline = true,\n truncated,\n dismissButtonAriaLabel,\n messageBarIconProps,\n role,\n delayedRender = true,\n expandButtonProps,\n } = props;\n\n const nativeProps = getNativeProps<React.HTMLAttributes<HTMLSpanElement>>(props, htmlElementProperties, [\n 'className',\n 'role',\n ]);\n\n const classNames: { [key in keyof IMessageBarStyles]: string } = getClassNames(styles, {\n theme: theme!,\n messageBarType: messageBarType || MessageBarType.info,\n onDismiss: onDismiss !== undefined,\n actions: actions !== undefined,\n truncated: truncated,\n isMultiline: isMultiline,\n expandSingleLine: expandSingleLine,\n className,\n });\n\n const expandIconProps = { iconName: expandSingleLine ? 'DoubleChevronUp' : 'DoubleChevronDown' };\n const regionProps = actions || onDismiss ? { 'aria-describedby': labelId, role: 'region' } : {};\n const actionsDiv = actions ? <div className={classNames.actions}>{actions}</div> : null;\n\n const dismissButton = onDismiss ? (\n <IconButton\n disabled={false}\n className={classNames.dismissal}\n onClick={onDismiss}\n iconProps={dismissIconProps ? dismissIconProps : { iconName: 'Clear' }}\n title={dismissButtonAriaLabel}\n ariaLabel={dismissButtonAriaLabel}\n />\n ) : null;\n\n return (\n <div ref={ref} className={classNames.root} {...regionProps}>\n <div className={classNames.content}>\n <div className={classNames.iconContainer} aria-hidden>\n {messageBarIconProps ? (\n <Icon {...messageBarIconProps} className={css(classNames.icon, messageBarIconProps.className)} />\n ) : (\n <Icon iconName={ICON_MAP[messageBarType!]} className={classNames.icon} />\n )}\n </div>\n <div\n className={classNames.text}\n id={labelId}\n role={role || getRole(messageBarType)}\n aria-live={getAnnouncementPriority(messageBarType)}\n >\n <span className={classNames.innerText} {...nativeProps}>\n {delayedRender ? (\n <DelayedRender>\n <span>{children}</span>\n </DelayedRender>\n ) : (\n // this span is probably not necessary, but preserving it for now in case anyone\n // has styling that expects it to be present\n <span>{children}</span>\n )}\n </span>\n </div>\n {\n /* singleline expand/collapse button */ !isMultiline && !actionsDiv && truncated && (\n <div className={classNames.expandSingleLine}>\n <IconButton\n disabled={false}\n className={classNames.expand}\n onClick={toggleExpandSingleLine}\n iconProps={expandIconProps}\n ariaLabel={overflowButtonAriaLabel}\n aria-expanded={expandSingleLine}\n {...expandButtonProps}\n />\n </div>\n )\n }\n {/* singleline actions */ !isMultiline && actionsDiv}\n {\n /* singleline dismiss */ !isMultiline && dismissButton && (\n <div className={classNames.dismissSingleLine}>{dismissButton}</div>\n )\n }\n {/* multiline dismiss */ isMultiline && dismissButton}\n </div>\n {/* multiline actions */ isMultiline && actionsDiv}\n </div>\n );\n});\nMessageBarBase.displayName = COMPONENT_NAME;\n"]}
\No newline at end of file