{"version":3,"file":"static/js/vendor.fluentui.react~78553786.72691bef.js","mappings":"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","sources":["../../../../node_modules/.pnpm/@fluentui+react@8.48.0_react-dom@17.0.1_react@17.0.1__react@17.0.1/node_modules/@fluentui/react/lib/components/ActivityItem/ActivityItem.classNames.js","../../../../node_modules/.pnpm/@fluentui+react@8.48.0_react-dom@17.0.1_react@17.0.1__react@17.0.1/node_modules/@fluentui/react/lib/components/ActivityItem/ActivityItem.styles.js","../../../../node_modules/.pnpm/@fluentui+react@8.48.0_react-dom@17.0.1_react@17.0.1__react@17.0.1/node_modules/@fluentui/react/lib/components/ActivityItem/ActivityItem.js","../../../../node_modules/.pnpm/@fluentui+react@8.48.0_react-dom@17.0.1_react@17.0.1__react@17.0.1/node_modules/@fluentui/react/lib/components/Announced/Announced.base.js","../../../../node_modules/.pnpm/@fluentui+react@8.48.0_react-dom@17.0.1_react@17.0.1__react@17.0.1/node_modules/@fluentui/react/lib/components/Announced/Announced.js","../../../../node_modules/.pnpm/@fluentui+react@8.48.0_react-dom@17.0.1_react@17.0.1__react@17.0.1/node_modules/@fluentui/react/lib/components/Announced/Announced.styles.js","../../../../node_modules/.pnpm/@fluentui+react@8.48.0_react-dom@17.0.1_react@17.0.1__react@17.0.1/node_modules/@fluentui/react/lib/components/Autofill/Autofill.js","../../../../node_modules/.pnpm/@fluentui+react@8.48.0_react-dom@17.0.1_react@17.0.1__react@17.0.1/node_modules/@fluentui/react/lib/components/Breadcrumb/Breadcrumb.base.js","../../../../node_modules/.pnpm/@fluentui+react@8.48.0_react-dom@17.0.1_react@17.0.1__react@17.0.1/node_modules/@fluentui/react/lib/components/Breadcrumb/Breadcrumb.styles.js","../../../../node_modules/.pnpm/@fluentui+react@8.48.0_react-dom@17.0.1_react@17.0.1__react@17.0.1/node_modules/@fluentui/react/lib/components/Breadcrumb/Breadcrumb.js","../../../../node_modules/.pnpm/@fluentui+react@8.48.0_react-dom@17.0.1_react@17.0.1__react@17.0.1/node_modules/@fluentui/react/lib/components/Button/ActionButton/ActionButton.js","../../../../node_modules/.pnpm/@fluentui+react@8.48.0_react-dom@17.0.1_react@17.0.1__react@17.0.1/node_modules/@fluentui/react/lib/components/Button/ActionButton/ActionButton.styles.js","../../../../node_modules/.pnpm/@fluentui+react@8.48.0_react-dom@17.0.1_react@17.0.1__react@17.0.1/node_modules/@fluentui/react/lib/components/Button/BaseButton.classNames.js","../../../../node_modules/.pnpm/@fluentui+react@8.48.0_react-dom@17.0.1_react@17.0.1__react@17.0.1/node_modules/@fluentui/react/lib/components/Button/BaseButton.js","../../../../node_modules/.pnpm/@fluentui+react@8.48.0_react-dom@17.0.1_react@17.0.1__react@17.0.1/node_modules/@fluentui/react/lib/components/Button/BaseButton.styles.js","../../../../node_modules/.pnpm/@fluentui+react@8.48.0_react-dom@17.0.1_react@17.0.1__react@17.0.1/node_modules/@fluentui/react/lib/components/Button/ButtonThemes.js","../../../../node_modules/.pnpm/@fluentui+react@8.48.0_react-dom@17.0.1_react@17.0.1__react@17.0.1/node_modules/@fluentui/react/lib/components/Button/CommandBarButton/CommandBarButton.styles.js","../../../../node_modules/.pnpm/@fluentui+react@8.48.0_react-dom@17.0.1_react@17.0.1__react@17.0.1/node_modules/@fluentui/react/lib/components/Button/CommandBarButton/CommandBarButton.js","../../../../node_modules/.pnpm/@fluentui+react@8.48.0_react-dom@17.0.1_react@17.0.1__react@17.0.1/node_modules/@fluentui/react/lib/components/Button/CommandButton/CommandButton.js","../../../../node_modules/.pnpm/@fluentui+react@8.48.0_react-dom@17.0.1_react@17.0.1__react@17.0.1/node_modules/@fluentui/react/lib/components/Button/DefaultButton/DefaultButton.styles.js","../../../../node_modules/.pnpm/@fluentui+react@8.48.0_react-dom@17.0.1_react@17.0.1__react@17.0.1/node_modules/@fluentui/react/lib/components/Button/DefaultButton/DefaultButton.js","../../../../node_modules/.pnpm/@fluentui+react@8.48.0_react-dom@17.0.1_react@17.0.1__react@17.0.1/node_modules/@fluentui/react/lib/components/Button/IconButton/IconButton.styles.js","../../../../node_modules/.pnpm/@fluentui+react@8.48.0_react-dom@17.0.1_react@17.0.1__react@17.0.1/node_modules/@fluentui/react/lib/components/Button/IconButton/IconButton.js","../../../../node_modules/.pnpm/@fluentui+react@8.48.0_react-dom@17.0.1_react@17.0.1__react@17.0.1/node_modules/@fluentui/react/lib/components/Button/PrimaryButton/PrimaryButton.js","../../../../node_modules/.pnpm/@fluentui+react@8.48.0_react-dom@17.0.1_react@17.0.1__react@17.0.1/node_modules/@fluentui/react/lib/components/Button/SplitButton/SplitButton.classNames.js","../../../../node_modules/.pnpm/@fluentui+react@8.48.0_react-dom@17.0.1_react@17.0.1__react@17.0.1/node_modules/@fluentui/react/lib/components/Button/SplitButton/SplitButton.styles.js","../../../../node_modules/.pnpm/@fluentui+react@8.48.0_react-dom@17.0.1_react@17.0.1__react@17.0.1/node_modules/@fluentui/react/lib/components/Button/Button.types.js","../../../../node_modules/.pnpm/@fluentui+react@8.48.0_react-dom@17.0.1_react@17.0.1__react@17.0.1/node_modules/@fluentui/react/lib/components/Button/CompoundButton/CompoundButton.styles.js","../../../../node_modules/.pnpm/@fluentui+react@8.48.0_react-dom@17.0.1_react@17.0.1__react@17.0.1/node_modules/@fluentui/react/lib/components/Button/CompoundButton/CompoundButton.js","../../../../node_modules/.pnpm/@fluentui+react@8.48.0_react-dom@17.0.1_react@17.0.1__react@17.0.1/node_modules/@fluentui/react/lib/components/Button/Button.js","../../../../node_modules/.pnpm/@fluentui+react@8.48.0_react-dom@17.0.1_react@17.0.1__react@17.0.1/node_modules/@fluentui/react/lib/components/Button/MessageBarButton/MessageBarButton.styles.js","../../../../node_modules/.pnpm/@fluentui+react@8.48.0_react-dom@17.0.1_react@17.0.1__react@17.0.1/node_modules/@fluentui/react/lib/components/Button/MessageBarButton/MessageBarButton.js","../../../../node_modules/.pnpm/@fluentui+react@8.48.0_react-dom@17.0.1_react@17.0.1__react@17.0.1/node_modules/@fluentui/react/lib/components/CalendarDayGrid/CalendarMonthHeaderRow.js","../../../../node_modules/.pnpm/@fluentui+react@8.48.0_react-dom@17.0.1_react@17.0.1__react@17.0.1/node_modules/@fluentui/react/lib/components/CalendarDayGrid/CalendarGridDayCell.js","../../../../node_modules/.pnpm/@fluentui+react@8.48.0_react-dom@17.0.1_react@17.0.1__react@17.0.1/node_modules/@fluentui/react/lib/components/CalendarDayGrid/CalendarGridRow.js","../../../../node_modules/.pnpm/@fluentui+react@8.48.0_react-dom@17.0.1_react@17.0.1__react@17.0.1/node_modules/@fluentui/react/lib/components/CalendarDayGrid/CalendarDayGrid.base.js","../../../../node_modules/.pnpm/@fluentui+react@8.48.0_react-dom@17.0.1_react@17.0.1__react@17.0.1/node_modules/@fluentui/react/lib/components/CalendarDayGrid/CalendarDayGrid.styles.js","../../../../node_modules/.pnpm/@fluentui+react@8.48.0_react-dom@17.0.1_react@17.0.1__react@17.0.1/node_modules/@fluentui/react/lib/components/CalendarDayGrid/CalendarDayGrid.js","../../../../node_modules/.pnpm/@fluentui+react@8.48.0_react-dom@17.0.1_react@17.0.1__react@17.0.1/node_modules/@fluentui/react/lib/components/Calendar/CalendarDay/CalendarDay.base.js","../../../../node_modules/.pnpm/@fluentui+react@8.48.0_react-dom@17.0.1_react@17.0.1__react@17.0.1/node_modules/@fluentui/react/lib/components/Calendar/CalendarDay/CalendarDay.js","../../../../node_modules/.pnpm/@fluentui+react@8.48.0_react-dom@17.0.1_react@17.0.1__react@17.0.1/node_modules/@fluentui/react/lib/components/Calendar/CalendarDay/CalendarDay.styles.js","../../../../node_modules/.pnpm/@fluentui+react@8.48.0_react-dom@17.0.1_react@17.0.1__react@17.0.1/node_modules/@fluentui/react/lib/components/Calendar/CalendarPicker/CalendarPicker.styles.js","../../../../node_modules/.pnpm/@fluentui+react@8.48.0_react-dom@17.0.1_react@17.0.1__react@17.0.1/node_modules/@fluentui/react/lib/components/Calendar/CalendarMonth/CalendarMonth.styles.js","../../../../node_modules/.pnpm/@fluentui+react@8.48.0_react-dom@17.0.1_react@17.0.1__react@17.0.1/node_modules/@fluentui/react/lib/components/Calendar/CalendarYear/CalendarYear.base.js","../../../../node_modules/.pnpm/@fluentui+react@8.48.0_react-dom@17.0.1_react@17.0.1__react@17.0.1/node_modules/@fluentui/react/lib/components/Calendar/CalendarYear/CalendarYear.js","../../../../node_modules/.pnpm/@fluentui+react@8.48.0_react-dom@17.0.1_react@17.0.1__react@17.0.1/node_modules/@fluentui/react/lib/components/Calendar/CalendarYear/CalendarYear.styles.js","../../../../node_modules/.pnpm/@fluentui+react@8.48.0_react-dom@17.0.1_react@17.0.1__react@17.0.1/node_modules/@fluentui/react/lib/components/Calendar/CalendarMonth/CalendarMonth.base.js","../../../../node_modules/.pnpm/@fluentui+react@8.48.0_react-dom@17.0.1_react@17.0.1__react@17.0.1/node_modules/@fluentui/react/lib/components/Calendar/CalendarMonth/CalendarMonth.js","../../../../node_modules/.pnpm/@fluentui+react@8.48.0_react-dom@17.0.1_react@17.0.1__react@17.0.1/node_modules/@fluentui/react/lib/components/Calendar/Calendar.base.js","../../../../node_modules/.pnpm/@fluentui+react@8.48.0_react-dom@17.0.1_react@17.0.1__react@17.0.1/node_modules/@fluentui/react/lib/components/Calendar/Calendar.styles.js","../../../../node_modules/.pnpm/@fluentui+react@8.48.0_react-dom@17.0.1_react@17.0.1__react@17.0.1/node_modules/@fluentui/react/lib/components/Calendar/Calendar.js","../../../../node_modules/.pnpm/@fluentui+react@8.48.0_react-dom@17.0.1_react@17.0.1__react@17.0.1/node_modules/@fluentui/react/lib/components/Calendar/Calendar.types.js","../../../../node_modules/.pnpm/@fluentui+react@8.48.0_react-dom@17.0.1_react@17.0.1__react@17.0.1/node_modules/@fluentui/react/lib/components/Calendar/defaults.js","../../../../node_modules/.pnpm/@fluentui+react@8.48.0_react-dom@17.0.1_react@17.0.1__react@17.0.1/node_modules/@fluentui/react/lib/components/Callout/Callout.js","../../../../node_modules/.pnpm/@fluentui+react@8.48.0_react-dom@17.0.1_react@17.0.1__react@17.0.1/node_modules/@fluentui/react/lib/components/Callout/CalloutContent.base.js","../../../../node_modules/.pnpm/@fluentui+react@8.48.0_react-dom@17.0.1_react@17.0.1__react@17.0.1/node_modules/@fluentui/react/lib/components/Callout/CalloutContent.styles.js","../../../../node_modules/.pnpm/@fluentui+react@8.48.0_react-dom@17.0.1_react@17.0.1__react@17.0.1/node_modules/@fluentui/react/lib/components/Callout/CalloutContent.js","../../../../node_modules/.pnpm/@fluentui+react@8.48.0_react-dom@17.0.1_react@17.0.1__react@17.0.1/node_modules/@fluentui/react/lib/components/Callout/FocusTrapCallout.js","../../../../node_modules/.pnpm/@fluentui+react@8.48.0_react-dom@17.0.1_react@17.0.1__react@17.0.1/node_modules/@fluentui/react/lib/components/Check/Check.base.js","../../../../node_modules/.pnpm/@fluentui+react@8.48.0_react-dom@17.0.1_react@17.0.1__react@17.0.1/node_modules/@fluentui/react/lib/components/Check/Check.js","../../../../node_modules/.pnpm/@fluentui+react@8.48.0_react-dom@17.0.1_react@17.0.1__react@17.0.1/node_modules/@fluentui/react/lib/components/Check/Check.styles.js","../../../../node_modules/.pnpm/@fluentui+react@8.48.0_react-dom@17.0.1_react@17.0.1__react@17.0.1/node_modules/@fluentui/react/lib/components/Checkbox/Checkbox.base.js","../../../../node_modules/.pnpm/@fluentui+react@8.48.0_react-dom@17.0.1_react@17.0.1__react@17.0.1/node_modules/@fluentui/react/lib/components/Checkbox/Checkbox.styles.js","../../../../node_modules/.pnpm/@fluentui+react@8.48.0_react-dom@17.0.1_react@17.0.1__react@17.0.1/node_modules/@fluentui/react/lib/components/Checkbox/Checkbox.js","../../../../node_modules/.pnpm/@fluentui+react@8.48.0_react-dom@17.0.1_react@17.0.1__react@17.0.1/node_modules/@fluentui/react/lib/components/ChoiceGroup/ChoiceGroupOption/ChoiceGroupOption.base.js","../../../../node_modules/.pnpm/@fluentui+react@8.48.0_react-dom@17.0.1_react@17.0.1__react@17.0.1/node_modules/@fluentui/react/lib/components/ChoiceGroup/ChoiceGroupOption/ChoiceGroupOption.styles.js","../../../../node_modules/.pnpm/@fluentui+react@8.48.0_react-dom@17.0.1_react@17.0.1__react@17.0.1/node_modules/@fluentui/react/lib/components/ChoiceGroup/ChoiceGroupOption/ChoiceGroupOption.js","../../../../node_modules/.pnpm/@fluentui+react@8.48.0_react-dom@17.0.1_react@17.0.1__react@17.0.1/node_modules/@fluentui/react/lib/components/ChoiceGroup/ChoiceGroup.base.js","../../../../node_modules/.pnpm/@fluentui+react@8.48.0_react-dom@17.0.1_react@17.0.1__react@17.0.1/node_modules/@fluentui/react/lib/components/ChoiceGroup/ChoiceGroup.styles.js","../../../../node_modules/.pnpm/@fluentui+react@8.48.0_react-dom@17.0.1_react@17.0.1__react@17.0.1/node_modules/@fluentui/react/lib/components/ChoiceGroup/ChoiceGroup.js","../../../../node_modules/.pnpm/@fluentui+react@8.48.0_react-dom@17.0.1_react@17.0.1__react@17.0.1/node_modules/@fluentui/react/lib/components/Coachmark/PositioningContainer/PositioningContainer.js","../../../../node_modules/.pnpm/@fluentui+react@8.48.0_react-dom@17.0.1_react@17.0.1__react@17.0.1/node_modules/@fluentui/react/lib/components/Coachmark/PositioningContainer/PositioningContainer.styles.js","../../../../node_modules/.pnpm/@fluentui+react@8.48.0_react-dom@17.0.1_react@17.0.1__react@17.0.1/node_modules/@fluentui/react/lib/components/Coachmark/Coachmark.styles.js","../../../../node_modules/.pnpm/@fluentui+react@8.48.0_react-dom@17.0.1_react@17.0.1__react@17.0.1/node_modules/@fluentui/react/lib/components/Coachmark/Beak/Beak.styles.js","../../../../node_modules/.pnpm/@fluentui+react@8.48.0_react-dom@17.0.1_react@17.0.1__react@17.0.1/node_modules/@fluentui/react/lib/components/Coachmark/Beak/Beak.js","../../../../node_modules/.pnpm/@fluentui+react@8.48.0_react-dom@17.0.1_react@17.0.1__react@17.0.1/node_modules/@fluentui/react/lib/components/Coachmark/Coachmark.base.js","../../../../node_modules/.pnpm/@fluentui+react@8.48.0_react-dom@17.0.1_react@17.0.1__react@17.0.1/node_modules/@fluentui/react/lib/components/Coachmark/Coachmark.js"],"sourcesContent":["import { mergeStyles } from '../../Styling';\nimport { memoizeFunction } from '../../Utilities';\nexport var getClassNames = memoizeFunction(function (styles, className, activityPersonas, isCompact) {\n return {\n root: mergeStyles('ms-ActivityItem', className, styles.root, isCompact && styles.isCompactRoot),\n pulsingBeacon: mergeStyles('ms-ActivityItem-pulsingBeacon', styles.pulsingBeacon),\n personaContainer: mergeStyles('ms-ActivityItem-personaContainer', styles.personaContainer, isCompact && styles.isCompactPersonaContainer),\n activityPersona: mergeStyles('ms-ActivityItem-activityPersona', styles.activityPersona, isCompact && styles.isCompactPersona, !isCompact && activityPersonas && activityPersonas.length === 2 && styles.doublePersona),\n activityTypeIcon: mergeStyles('ms-ActivityItem-activityTypeIcon', styles.activityTypeIcon, isCompact && styles.isCompactIcon),\n activityContent: mergeStyles('ms-ActivityItem-activityContent', styles.activityContent, isCompact && styles.isCompactContent),\n activityText: mergeStyles('ms-ActivityItem-activityText', styles.activityText),\n commentText: mergeStyles('ms-ActivityItem-commentText', styles.commentText),\n timeStamp: mergeStyles('ms-ActivityItem-timeStamp', styles.timeStamp, isCompact && styles.isCompactTimeStamp),\n };\n});\n//# sourceMappingURL=ActivityItem.classNames.js.map","import { concatStyleSets, getTheme, HighContrastSelector, keyframes, PulsingBeaconAnimationStyles, } from '../../Styling';\nimport { memoizeFunction } from '../../Utilities';\nvar DEFAULT_PERSONA_SIZE = '32px';\nvar COMPACT_PERSONA_SIZE = '16px';\nvar DEFAULT_ICON_SIZE = '16px';\nvar COMPACT_ICON_SIZE = '13px';\nvar ANIMATION_INNER_DIMENSION = '4px';\nvar ANIMATION_OUTER_DIMENSION = '28px';\nvar ANIMATION_BORDER_WIDTH = '4px';\nvar fadeIn = memoizeFunction(function () {\n return keyframes({\n from: { opacity: 0 },\n to: { opacity: 1 },\n });\n});\nvar slideIn = memoizeFunction(function () {\n return keyframes({\n from: { transform: 'translateX(-10px)' },\n to: { transform: 'translateX(0)' },\n });\n});\nexport var getStyles = memoizeFunction(function (theme, customStyles, animateBeaconSignal, beaconColorOne, beaconColorTwo, isCompact) {\n var _a;\n if (theme === void 0) { theme = getTheme(); }\n var continuousPulse = PulsingBeaconAnimationStyles.continuousPulseAnimationSingle(beaconColorOne ? beaconColorOne : theme.palette.themePrimary, beaconColorTwo ? beaconColorTwo : theme.palette.themeTertiary, ANIMATION_INNER_DIMENSION, ANIMATION_OUTER_DIMENSION, ANIMATION_BORDER_WIDTH);\n var continuousPulseAnimation = {\n animationName: continuousPulse,\n animationIterationCount: '1',\n animationDuration: '.8s',\n zIndex: 1,\n };\n var slideInAnimation = {\n animationName: slideIn(),\n animationIterationCount: '1',\n animationDuration: '.5s',\n };\n var fadeInAnimation = {\n animationName: fadeIn(),\n animationIterationCount: '1',\n animationDuration: '.5s',\n };\n var ActivityItemStyles = {\n root: [\n theme.fonts.small,\n {\n display: 'flex',\n justifyContent: 'flex-start',\n alignItems: 'flex-start',\n boxSizing: 'border-box',\n color: theme.palette.neutralSecondary,\n },\n isCompact && animateBeaconSignal && fadeInAnimation,\n ],\n pulsingBeacon: [\n {\n position: 'absolute',\n top: '50%',\n left: '50%',\n transform: 'translate(-50%, -50%)',\n width: '0px',\n height: '0px',\n borderRadius: '225px',\n borderStyle: 'solid',\n opacity: 0,\n },\n isCompact && animateBeaconSignal && continuousPulseAnimation,\n ],\n isCompactRoot: {\n alignItems: 'center',\n },\n personaContainer: {\n display: 'flex',\n flexWrap: 'wrap',\n minWidth: DEFAULT_PERSONA_SIZE,\n width: DEFAULT_PERSONA_SIZE,\n height: DEFAULT_PERSONA_SIZE,\n },\n isCompactPersonaContainer: {\n display: 'inline-flex',\n flexWrap: 'nowrap',\n flexBasis: 'auto',\n height: COMPACT_PERSONA_SIZE,\n width: 'auto',\n minWidth: '0',\n paddingRight: '6px',\n },\n activityTypeIcon: {\n height: DEFAULT_PERSONA_SIZE,\n fontSize: DEFAULT_ICON_SIZE,\n lineHeight: DEFAULT_ICON_SIZE,\n marginTop: '3px',\n },\n isCompactIcon: {\n height: COMPACT_PERSONA_SIZE,\n minWidth: COMPACT_PERSONA_SIZE,\n fontSize: COMPACT_ICON_SIZE,\n lineHeight: COMPACT_ICON_SIZE,\n color: theme.palette.themePrimary,\n marginTop: '1px',\n position: 'relative',\n display: 'flex',\n justifyContent: 'center',\n alignItems: 'center',\n selectors: {\n '.ms-Persona-imageArea': {\n margin: '-2px 0 0 -2px',\n border: '2px solid' + theme.palette.white,\n borderRadius: '50%',\n selectors: (_a = {},\n _a[HighContrastSelector] = {\n border: 'none',\n margin: '0',\n },\n _a),\n },\n },\n },\n activityPersona: {\n display: 'block',\n },\n doublePersona: {\n selectors: {\n ':first-child': {\n alignSelf: 'flex-end',\n },\n },\n },\n isCompactPersona: {\n display: 'inline-block',\n width: '8px',\n minWidth: '8px',\n overflow: 'visible',\n },\n activityContent: [\n {\n padding: '0 8px',\n },\n isCompact && animateBeaconSignal && slideInAnimation,\n ],\n activityText: {\n display: 'inline',\n },\n isCompactContent: {\n flex: '1',\n padding: '0 4px',\n whiteSpace: 'nowrap',\n textOverflow: 'ellipsis',\n overflowX: 'hidden',\n },\n commentText: {\n color: theme.palette.neutralPrimary,\n },\n timeStamp: [\n theme.fonts.tiny,\n {\n fontWeight: 400,\n color: theme.palette.neutralSecondary,\n },\n ],\n isCompactTimeStamp: {\n display: 'inline-block',\n paddingLeft: '0.3em',\n fontSize: '1em',\n },\n };\n return concatStyleSets(ActivityItemStyles, customStyles);\n});\n//# sourceMappingURL=ActivityItem.styles.js.map","import { __assign, __extends } from \"tslib\";\nimport * as React from 'react';\nimport { getClassNames } from './ActivityItem.classNames';\nimport { getStyles } from './ActivityItem.styles';\nimport { PersonaSize, PersonaCoin } from '../../Persona';\n/**\n * {@docCategory ActivityItem}\n */\nvar ActivityItem = /** @class */ (function (_super) {\n __extends(ActivityItem, _super);\n function ActivityItem(props) {\n var _this = _super.call(this, props) || this;\n _this._onRenderIcon = function (props) {\n if (props.activityPersonas) {\n return _this._onRenderPersonaArray(props);\n }\n else {\n return _this.props.activityIcon;\n }\n };\n _this._onRenderActivityDescription = function (props) {\n var classNames = _this._getClassNames(props);\n // eslint-disable-next-line deprecation/deprecation\n var activityDescription = props.activityDescription || props.activityDescriptionText;\n if (activityDescription) {\n return React.createElement(\"span\", { className: classNames.activityText }, activityDescription);\n }\n return null;\n };\n _this._onRenderComments = function (props) {\n var classNames = _this._getClassNames(props);\n // eslint-disable-next-line deprecation/deprecation\n var comments = props.comments || props.commentText;\n if (!props.isCompact && comments) {\n return React.createElement(\"div\", { className: classNames.commentText }, comments);\n }\n return null;\n };\n _this._onRenderTimeStamp = function (props) {\n var classNames = _this._getClassNames(props);\n if (!props.isCompact && props.timeStamp) {\n return React.createElement(\"div\", { className: classNames.timeStamp }, props.timeStamp);\n }\n return null;\n };\n // If activityPersonas is an array of persona props, build the persona cluster element.\n _this._onRenderPersonaArray = function (props) {\n var classNames = _this._getClassNames(props);\n var personaElement = null;\n var activityPersonas = props.activityPersonas;\n if (activityPersonas[0].imageUrl || activityPersonas[0].imageInitials) {\n var personaList_1 = [];\n var showSize16Personas_1 = activityPersonas.length > 1 || props.isCompact;\n var personaLimit_1 = props.isCompact ? 3 : 4;\n var style_1 = undefined;\n if (props.isCompact) {\n style_1 = {\n display: 'inline-block',\n width: '10px',\n minWidth: '10px',\n overflow: 'visible',\n };\n }\n activityPersonas\n .filter(function (person, index) { return index < personaLimit_1; })\n .forEach(function (person, index) {\n personaList_1.push(React.createElement(PersonaCoin, __assign({}, person, { key: person.key || index, className: classNames.activityPersona, \n // eslint-disable-next-line deprecation/deprecation\n size: showSize16Personas_1 ? PersonaSize.size16 : PersonaSize.size32, style: style_1 })));\n });\n personaElement = React.createElement(\"div\", { className: classNames.personaContainer }, personaList_1);\n }\n return personaElement;\n };\n return _this;\n }\n ActivityItem.prototype.render = function () {\n var _a = this.props, _b = _a.onRenderIcon, onRenderIcon = _b === void 0 ? this._onRenderIcon : _b, _c = _a.onRenderActivityDescription, onRenderActivityDescription = _c === void 0 ? this._onRenderActivityDescription : _c, _d = _a.onRenderComments, onRenderComments = _d === void 0 ? this._onRenderComments : _d, _e = _a.onRenderTimeStamp, onRenderTimeStamp = _e === void 0 ? this._onRenderTimeStamp : _e, animateBeaconSignal = _a.animateBeaconSignal, isCompact = _a.isCompact;\n var classNames = this._getClassNames(this.props);\n return (React.createElement(\"div\", { className: classNames.root, style: this.props.style },\n (this.props.activityPersonas || this.props.activityIcon || this.props.onRenderIcon) && (React.createElement(\"div\", { className: classNames.activityTypeIcon },\n animateBeaconSignal && isCompact && React.createElement(\"div\", { className: classNames.pulsingBeacon }),\n onRenderIcon(this.props))),\n React.createElement(\"div\", { className: classNames.activityContent },\n onRenderActivityDescription(this.props, this._onRenderActivityDescription),\n onRenderComments(this.props, this._onRenderComments),\n onRenderTimeStamp(this.props, this._onRenderTimeStamp))));\n };\n ActivityItem.prototype._getClassNames = function (props) {\n return getClassNames(getStyles(undefined, props.styles, props.animateBeaconSignal, props.beaconColorOne, props.beaconColorTwo, props.isCompact), props.className, props.activityPersonas, props.isCompact);\n };\n return ActivityItem;\n}(React.Component));\nexport { ActivityItem };\n//# sourceMappingURL=ActivityItem.js.map","import { __assign, __extends } from \"tslib\";\nimport * as React from 'react';\nimport { DelayedRender, classNamesFunction, getNativeProps, divProperties } from '../../Utilities';\nvar getClassNames = classNamesFunction();\n/**\n * {@docCategory Announced}\n */\nvar AnnouncedBase = /** @class */ (function (_super) {\n __extends(AnnouncedBase, _super);\n function AnnouncedBase() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n AnnouncedBase.prototype.render = function () {\n var _a = this.props, message = _a.message, styles = _a.styles, _b = _a.as, Root = _b === void 0 ? 'div' : _b, className = _a.className;\n var classNames = getClassNames(styles, { className: className });\n return (React.createElement(Root, __assign({ role: \"status\", className: classNames.root }, getNativeProps(this.props, divProperties, ['className'])),\n React.createElement(DelayedRender, null,\n React.createElement(\"div\", { className: classNames.screenReaderText }, message))));\n };\n AnnouncedBase.defaultProps = {\n 'aria-live': 'polite',\n };\n return AnnouncedBase;\n}(React.Component));\nexport { AnnouncedBase };\n//# sourceMappingURL=Announced.base.js.map","import { styled } from '../../Utilities';\nimport { AnnouncedBase } from './Announced.base';\nimport { getStyles } from './Announced.styles';\nexport var Announced = styled(AnnouncedBase, getStyles);\n//# sourceMappingURL=Announced.js.map","import { hiddenContentStyle } from '../../Styling';\nexport var getStyles = function (props) {\n return {\n root: props.className,\n screenReaderText: hiddenContentStyle,\n };\n};\n//# sourceMappingURL=Announced.styles.js.map","import { __assign, __extends } from \"tslib\";\nimport * as React from 'react';\nimport { Async, getNativeProps, initializeComponentRef, inputProperties, isIE11, KeyCodes } from '../../Utilities';\nvar SELECTION_FORWARD = 'forward';\nvar SELECTION_BACKWARD = 'backward';\n/**\n * {@docCategory Autofill}\n */\nvar Autofill = /** @class */ (function (_super) {\n __extends(Autofill, _super);\n function Autofill(props) {\n var _this = _super.call(this, props) || this;\n _this._inputElement = React.createRef();\n _this._autoFillEnabled = true;\n // Composition events are used when the character/text requires several keystrokes to be completed.\n // Some examples of this are mobile text input and languages like Japanese or Arabic.\n // Find out more at https://developer.mozilla.org/en-US/docs/Web/Events/compositionstart\n _this._onCompositionStart = function (ev) {\n _this.setState({ isComposing: true });\n _this._autoFillEnabled = false;\n };\n // Composition events are used when the character/text requires several keystrokes to be completed.\n // Some examples of this are mobile text input and languages like Japanese or Arabic.\n // Find out more at https://developer.mozilla.org/en-US/docs/Web/Events/compositionstart\n _this._onCompositionUpdate = function () {\n if (isIE11()) {\n _this._updateValue(_this._getCurrentInputValue(), true);\n }\n };\n // Composition events are used when the character/text requires several keystrokes to be completed.\n // Some examples of this are mobile text input and languages like Japanese or Arabic.\n // Find out more at https://developer.mozilla.org/en-US/docs/Web/Events/compositionstart\n _this._onCompositionEnd = function (ev) {\n var inputValue = _this._getCurrentInputValue();\n _this._tryEnableAutofill(inputValue, _this.value, false, true);\n _this.setState({ isComposing: false });\n // Due to timing, this needs to be async, otherwise no text will be selected.\n _this._async.setTimeout(function () {\n // it's technically possible that the value of isComposing is reset during this timeout,\n // so explicitly trigger this with composing=true here, since it is supposed to be the\n // update for composition end\n _this._updateValue(_this._getCurrentInputValue(), false);\n }, 0);\n };\n _this._onClick = function () {\n if (_this.value && _this.value !== '' && _this._autoFillEnabled) {\n _this._autoFillEnabled = false;\n }\n };\n _this._onKeyDown = function (ev) {\n if (_this.props.onKeyDown) {\n _this.props.onKeyDown(ev);\n }\n // If the event is actively being composed, then don't alert autofill.\n // Right now typing does not have isComposing, once that has been fixed any should be removed.\n if (!ev.nativeEvent.isComposing) {\n // eslint-disable-next-line deprecation/deprecation\n switch (ev.which) {\n case KeyCodes.backspace:\n _this._autoFillEnabled = false;\n break;\n case KeyCodes.left:\n case KeyCodes.right:\n if (_this._autoFillEnabled) {\n _this.setState({ inputValue: _this.props.suggestedDisplayValue || '' });\n _this._autoFillEnabled = false;\n }\n break;\n default:\n if (!_this._autoFillEnabled) {\n // eslint-disable-next-line deprecation/deprecation\n if (_this.props.enableAutofillOnKeyPress.indexOf(ev.which) !== -1) {\n _this._autoFillEnabled = true;\n }\n }\n break;\n }\n }\n };\n _this._onInputChanged = function (ev) {\n var value = _this._getCurrentInputValue(ev);\n if (!_this.state.isComposing) {\n _this._tryEnableAutofill(value, _this.value, ev.nativeEvent.isComposing);\n }\n // If it is not IE11 and currently composing, update the value\n if (!(isIE11() && _this.state.isComposing)) {\n var nativeEventComposing = ev.nativeEvent.isComposing;\n var isComposing = nativeEventComposing === undefined ? _this.state.isComposing : nativeEventComposing;\n _this._updateValue(value, isComposing);\n }\n };\n _this._onChanged = function () {\n // Swallow this event, we don't care about it\n // We must provide it because React PropTypes marks it as required, but onInput serves the correct purpose\n return;\n };\n /**\n * Updates the current input value as well as getting a new display value.\n * @param newValue - The new value from the input\n */\n _this._updateValue = function (newValue, composing) {\n // Only proceed if the value is nonempty and is different from the old value\n // This is to work around the fact that, in IE 11, inputs with a placeholder fire an onInput event on focus\n if (!newValue && newValue === _this.value) {\n return;\n }\n // eslint-disable-next-line deprecation/deprecation\n var _a = _this.props, onInputChange = _a.onInputChange, onInputValueChange = _a.onInputValueChange;\n if (onInputChange) {\n newValue = (onInputChange === null || onInputChange === void 0 ? void 0 : onInputChange(newValue, composing)) || '';\n }\n _this.setState({ inputValue: newValue }, function () { return onInputValueChange === null || onInputValueChange === void 0 ? void 0 : onInputValueChange(newValue, composing); });\n };\n initializeComponentRef(_this);\n _this._async = new Async(_this);\n _this.state = {\n inputValue: props.defaultVisibleValue || '',\n isComposing: false,\n };\n return _this;\n }\n Autofill.getDerivedStateFromProps = function (props, state) {\n // eslint-disable-next-line deprecation/deprecation\n if (props.updateValueInWillReceiveProps) {\n // eslint-disable-next-line deprecation/deprecation\n var updatedInputValue = props.updateValueInWillReceiveProps();\n // Don't update if we have a null value or the value isn't changing\n // the value should still update if an empty string is passed in\n if (updatedInputValue !== null && updatedInputValue !== state.inputValue && !state.isComposing) {\n return __assign(__assign({}, state), { inputValue: updatedInputValue });\n }\n }\n return null;\n };\n Object.defineProperty(Autofill.prototype, \"cursorLocation\", {\n get: function () {\n if (this._inputElement.current) {\n var inputElement = this._inputElement.current;\n if (inputElement.selectionDirection !== SELECTION_FORWARD) {\n return inputElement.selectionEnd;\n }\n else {\n return inputElement.selectionStart;\n }\n }\n else {\n return -1;\n }\n },\n enumerable: false,\n configurable: true\n });\n Object.defineProperty(Autofill.prototype, \"isValueSelected\", {\n get: function () {\n return Boolean(this.inputElement && this.inputElement.selectionStart !== this.inputElement.selectionEnd);\n },\n enumerable: false,\n configurable: true\n });\n Object.defineProperty(Autofill.prototype, \"value\", {\n get: function () {\n return this._getControlledValue() || this.state.inputValue || '';\n },\n enumerable: false,\n configurable: true\n });\n Object.defineProperty(Autofill.prototype, \"selectionStart\", {\n get: function () {\n return this._inputElement.current ? this._inputElement.current.selectionStart : -1;\n },\n enumerable: false,\n configurable: true\n });\n Object.defineProperty(Autofill.prototype, \"selectionEnd\", {\n get: function () {\n return this._inputElement.current ? this._inputElement.current.selectionEnd : -1;\n },\n enumerable: false,\n configurable: true\n });\n Object.defineProperty(Autofill.prototype, \"inputElement\", {\n get: function () {\n return this._inputElement.current;\n },\n enumerable: false,\n configurable: true\n });\n Autofill.prototype.componentDidUpdate = function (_, _1, cursor) {\n var _a = this.props, suggestedDisplayValue = _a.suggestedDisplayValue, shouldSelectFullInputValueInComponentDidUpdate = _a.shouldSelectFullInputValueInComponentDidUpdate, preventValueSelection = _a.preventValueSelection;\n var differenceIndex = 0;\n if (preventValueSelection) {\n return;\n }\n if (this._autoFillEnabled &&\n this.value &&\n suggestedDisplayValue &&\n _doesTextStartWith(suggestedDisplayValue, this.value)) {\n var shouldSelectFullRange = false;\n if (shouldSelectFullInputValueInComponentDidUpdate) {\n shouldSelectFullRange = shouldSelectFullInputValueInComponentDidUpdate();\n }\n if (shouldSelectFullRange && this._inputElement.current) {\n this._inputElement.current.setSelectionRange(0, suggestedDisplayValue.length, SELECTION_BACKWARD);\n }\n else {\n while (differenceIndex < this.value.length &&\n this.value[differenceIndex].toLocaleLowerCase() === suggestedDisplayValue[differenceIndex].toLocaleLowerCase()) {\n differenceIndex++;\n }\n if (differenceIndex > 0 && this._inputElement.current) {\n this._inputElement.current.setSelectionRange(differenceIndex, suggestedDisplayValue.length, SELECTION_BACKWARD);\n }\n }\n }\n else if (this._inputElement.current) {\n if (cursor !== null && !this._autoFillEnabled && !this.state.isComposing) {\n this._inputElement.current.setSelectionRange(cursor.start, cursor.end, cursor.dir);\n }\n }\n };\n Autofill.prototype.componentWillUnmount = function () {\n this._async.dispose();\n };\n Autofill.prototype.render = function () {\n var nativeProps = getNativeProps(this.props, inputProperties);\n var style = __assign(__assign({}, this.props.style), { fontFamily: 'inherit' });\n return (React.createElement(\"input\", __assign({ autoCapitalize: \"off\", autoComplete: \"off\", \"aria-autocomplete\": 'both' }, nativeProps, { style: style, ref: this._inputElement, value: this._getDisplayValue(), onCompositionStart: this._onCompositionStart, onCompositionUpdate: this._onCompositionUpdate, onCompositionEnd: this._onCompositionEnd, \n // TODO (Fabric 8?) - switch to calling only onChange. See notes in TextField._onInputChange.\n onChange: this._onChanged, onInput: this._onInputChanged, onKeyDown: this._onKeyDown, onClick: this.props.onClick ? this.props.onClick : this._onClick, \"data-lpignore\": true })));\n };\n Autofill.prototype.focus = function () {\n this._inputElement.current && this._inputElement.current.focus();\n };\n Autofill.prototype.clear = function () {\n this._autoFillEnabled = true;\n this._updateValue('', false);\n this._inputElement.current && this._inputElement.current.setSelectionRange(0, 0);\n };\n Autofill.prototype.getSnapshotBeforeUpdate = function () {\n var _a, _b;\n var inel = this._inputElement.current;\n if (inel && inel.selectionStart !== this.value.length) {\n return {\n start: (_a = inel.selectionStart) !== null && _a !== void 0 ? _a : inel.value.length,\n end: (_b = inel.selectionEnd) !== null && _b !== void 0 ? _b : inel.value.length,\n dir: inel.selectionDirection || 'backward' || 'none',\n };\n }\n return null;\n };\n Autofill.prototype._getCurrentInputValue = function (ev) {\n if (ev && ev.target && ev.target.value) {\n return ev.target.value;\n }\n else if (this.inputElement && this.inputElement.value) {\n return this.inputElement.value;\n }\n else {\n return '';\n }\n };\n /**\n * Attempts to enable autofill. Whether or not autofill is enabled depends on the input value,\n * whether or not any text is selected, and only if the new input value is longer than the old input value.\n * Autofill should never be set to true if the value is composing. Once compositionEnd is called, then\n * it should be completed.\n * See https://developer.mozilla.org/en-US/docs/Web/API/CompositionEvent for more information on composition.\n * @param newValue - new input value\n * @param oldValue - old input value\n * @param isComposing - if true then the text is actively being composed and it has not completed.\n * @param isComposed - if the text is a composed text value.\n */\n Autofill.prototype._tryEnableAutofill = function (newValue, oldValue, isComposing, isComposed) {\n if (!isComposing &&\n newValue &&\n this._inputElement.current &&\n this._inputElement.current.selectionStart === newValue.length &&\n !this._autoFillEnabled &&\n (newValue.length > oldValue.length || isComposed)) {\n this._autoFillEnabled = true;\n }\n };\n Autofill.prototype._getDisplayValue = function () {\n if (this._autoFillEnabled) {\n return _getDisplayValue(this.value, this.props.suggestedDisplayValue);\n }\n return this.value;\n };\n Autofill.prototype._getControlledValue = function () {\n var value = this.props.value;\n if (value === undefined || typeof value === 'string') {\n return value;\n }\n // eslint-disable-next-line no-console\n console.warn(\"props.value of Autofill should be a string, but it is \" + value + \" with type of \" + typeof value);\n return value.toString();\n };\n Autofill.defaultProps = {\n enableAutofillOnKeyPress: [KeyCodes.down, KeyCodes.up],\n };\n return Autofill;\n}(React.Component));\nexport { Autofill };\n/**\n * Returns a string that should be used as the display value.\n * It evaluates this based on whether or not the suggested value starts with the input value\n * and whether or not autofill is enabled.\n * @param inputValue - the value that the input currently has.\n * @param suggestedDisplayValue - the possible full value\n */\nfunction _getDisplayValue(inputValue, suggestedDisplayValue) {\n var displayValue = inputValue;\n if (suggestedDisplayValue && inputValue && _doesTextStartWith(suggestedDisplayValue, displayValue)) {\n displayValue = suggestedDisplayValue;\n }\n return displayValue;\n}\nfunction _doesTextStartWith(text, startWith) {\n if (!text || !startWith) {\n return false;\n }\n if (process.env.NODE_ENV !== 'production') {\n for (var _i = 0, _a = [text, startWith]; _i < _a.length; _i++) {\n var val = _a[_i];\n if (typeof val !== 'string') {\n throw new Error(Autofill.name + \" received non-string value \\\"\" + val + \"\\\" of type \" + typeof val + \" from either input's value or suggestedDisplayValue\");\n }\n }\n }\n return text.toLocaleLowerCase().indexOf(startWith.toLocaleLowerCase()) === 0;\n}\n//# sourceMappingURL=Autofill.js.map","import { __assign, __extends, __rest, __spreadArray } from \"tslib\";\nimport * as React from 'react';\nimport { initializeComponentRef, getRTL, classNamesFunction, getNativeProps, htmlElementProperties, } from '../../Utilities';\nimport { FocusZone, FocusZoneDirection } from '../../FocusZone';\nimport { Link } from '../../Link';\nimport { Icon } from '../../Icon';\nimport { IconButton } from '../../Button';\nimport { DirectionalHint } from '../../common/DirectionalHint';\nimport { ResizeGroup } from '../../ResizeGroup';\nimport { TooltipHost, TooltipOverflowMode } from '../../Tooltip';\nvar getClassNames = classNamesFunction();\nvar OVERFLOW_KEY = 'overflow';\nvar nullFunction = function () { return null; };\nvar nonActionableItemProps = {\n styles: function (props) {\n var theme = props.theme;\n return {\n root: {\n selectors: {\n '&.is-disabled': {\n color: theme.semanticColors.bodyText,\n },\n },\n },\n };\n },\n};\n/**\n * {@docCategory Breadcrumb}\n */\nvar BreadcrumbBase = /** @class */ (function (_super) {\n __extends(BreadcrumbBase, _super);\n function BreadcrumbBase(props) {\n var _this = _super.call(this, props) || this;\n _this._focusZone = React.createRef();\n /**\n * Remove the first rendered item past the overlow point and put it and the end the overflow set.\n */\n _this._onReduceData = function (data) {\n var renderedItems = data.renderedItems, renderedOverflowItems = data.renderedOverflowItems;\n var overflowIndex = data.props.overflowIndex;\n var movedItem = renderedItems[overflowIndex];\n if (!movedItem) {\n return undefined;\n }\n renderedItems = __spreadArray([], renderedItems);\n renderedItems.splice(overflowIndex, 1);\n renderedOverflowItems = __spreadArray(__spreadArray([], renderedOverflowItems), [movedItem]);\n return __assign(__assign({}, data), { renderedItems: renderedItems, renderedOverflowItems: renderedOverflowItems });\n };\n /**\n * Remove the last item of the overflow set and insert the item as the start of the rendered set past the overflow\n * point.\n */\n _this._onGrowData = function (data) {\n var renderedItems = data.renderedItems, renderedOverflowItems = data.renderedOverflowItems;\n var _a = data.props, overflowIndex = _a.overflowIndex, maxDisplayedItems = _a.maxDisplayedItems;\n renderedOverflowItems = __spreadArray([], renderedOverflowItems);\n var movedItem = renderedOverflowItems.pop();\n if (!movedItem || renderedItems.length >= maxDisplayedItems) {\n return undefined;\n }\n renderedItems = __spreadArray([], renderedItems);\n renderedItems.splice(overflowIndex, 0, movedItem);\n return __assign(__assign({}, data), { renderedItems: renderedItems, renderedOverflowItems: renderedOverflowItems });\n };\n _this._onRenderBreadcrumb = function (data) {\n var _a = data.props, ariaLabel = _a.ariaLabel, _b = _a.dividerAs, DividerType = _b === void 0 ? Icon : _b, _c = _a.onRenderItem, onRenderItem = _c === void 0 ? _this._onRenderItem : _c, overflowAriaLabel = _a.overflowAriaLabel, overflowIndex = _a.overflowIndex, onRenderOverflowIcon = _a.onRenderOverflowIcon, overflowButtonAs = _a.overflowButtonAs;\n var renderedOverflowItems = data.renderedOverflowItems, renderedItems = data.renderedItems;\n var contextualItems = renderedOverflowItems.map(function (item) {\n var isActionable = !!(item.onClick || item.href);\n return {\n text: item.text,\n name: item.text,\n key: item.key,\n onClick: item.onClick ? _this._onBreadcrumbClicked.bind(_this, item) : null,\n href: item.href,\n disabled: !isActionable,\n itemProps: isActionable ? undefined : nonActionableItemProps,\n };\n });\n // Find index of last rendered item so the divider icon\n // knows not to render on that item\n var lastItemIndex = renderedItems.length - 1;\n var hasOverflowItems = renderedOverflowItems && renderedOverflowItems.length !== 0;\n var itemElements = renderedItems.map(function (item, index) { return (React.createElement(\"li\", { className: _this._classNames.listItem, key: item.key || String(index) },\n onRenderItem(item, _this._onRenderItem),\n (index !== lastItemIndex || (hasOverflowItems && index === overflowIndex - 1)) && (React.createElement(DividerType, { className: _this._classNames.chevron, iconName: getRTL(_this.props.theme) ? 'ChevronLeft' : 'ChevronRight', item: item })))); });\n if (hasOverflowItems) {\n var iconProps = !onRenderOverflowIcon ? { iconName: 'More' } : {};\n var onRenderMenuIcon = onRenderOverflowIcon ? onRenderOverflowIcon : nullFunction;\n var OverflowButton = overflowButtonAs ? overflowButtonAs : IconButton;\n itemElements.splice(overflowIndex, 0, React.createElement(\"li\", { className: _this._classNames.overflow, key: OVERFLOW_KEY },\n React.createElement(OverflowButton, { className: _this._classNames.overflowButton, iconProps: iconProps, role: \"button\", \"aria-haspopup\": \"true\", ariaLabel: overflowAriaLabel, onRenderMenuIcon: onRenderMenuIcon, menuProps: {\n items: contextualItems,\n directionalHint: DirectionalHint.bottomLeftEdge,\n } }),\n overflowIndex !== lastItemIndex + 1 && (React.createElement(DividerType, { className: _this._classNames.chevron, iconName: getRTL(_this.props.theme) ? 'ChevronLeft' : 'ChevronRight', item: renderedOverflowItems[renderedOverflowItems.length - 1] }))));\n }\n var nativeProps = getNativeProps(_this.props, htmlElementProperties, [\n 'className',\n ]);\n return (React.createElement(\"div\", __assign({ className: _this._classNames.root, role: \"navigation\", \"aria-label\": ariaLabel }, nativeProps),\n React.createElement(FocusZone, __assign({ componentRef: _this._focusZone, direction: FocusZoneDirection.horizontal }, _this.props.focusZoneProps),\n React.createElement(\"ol\", { className: _this._classNames.list }, itemElements))));\n };\n _this._onRenderItem = function (item) {\n var as = item.as, href = item.href, onClick = item.onClick, isCurrentItem = item.isCurrentItem, text = item.text, additionalProps = __rest(item, [\"as\", \"href\", \"onClick\", \"isCurrentItem\", \"text\"]);\n if (onClick || href) {\n return (React.createElement(Link, __assign({}, additionalProps, { as: as, className: _this._classNames.itemLink, href: href, \"aria-current\": isCurrentItem ? 'page' : undefined, \n // eslint-disable-next-line react/jsx-no-bind\n onClick: _this._onBreadcrumbClicked.bind(_this, item) }),\n React.createElement(TooltipHost, __assign({ content: text, overflowMode: TooltipOverflowMode.Parent }, _this.props.tooltipHostProps), text)));\n }\n else {\n var Tag = as || 'span';\n return (React.createElement(Tag, __assign({}, additionalProps, { className: _this._classNames.item }),\n React.createElement(TooltipHost, __assign({ content: text, overflowMode: TooltipOverflowMode.Parent }, _this.props.tooltipHostProps), text)));\n }\n };\n _this._onBreadcrumbClicked = function (item, ev) {\n if (item.onClick) {\n item.onClick(ev, item);\n }\n };\n initializeComponentRef(_this);\n _this._validateProps(props);\n return _this;\n }\n /**\n * Sets focus to the first breadcrumb link.\n */\n BreadcrumbBase.prototype.focus = function () {\n if (this._focusZone.current) {\n this._focusZone.current.focus();\n }\n };\n BreadcrumbBase.prototype.render = function () {\n this._validateProps(this.props);\n var _a = this.props, _b = _a.onReduceData, onReduceData = _b === void 0 ? this._onReduceData : _b, _c = _a.onGrowData, onGrowData = _c === void 0 ? this._onGrowData : _c, overflowIndex = _a.overflowIndex, maxDisplayedItems = _a.maxDisplayedItems, items = _a.items, className = _a.className, theme = _a.theme, styles = _a.styles;\n var renderedItems = __spreadArray([], items);\n var renderedOverflowItems = renderedItems.splice(overflowIndex, renderedItems.length - maxDisplayedItems);\n var breadcrumbData = {\n props: this.props,\n renderedItems: renderedItems,\n renderedOverflowItems: renderedOverflowItems,\n };\n this._classNames = getClassNames(styles, {\n className: className,\n theme: theme,\n });\n return (React.createElement(ResizeGroup, { onRenderData: this._onRenderBreadcrumb, onReduceData: onReduceData, onGrowData: onGrowData, data: breadcrumbData }));\n };\n /**\n * Validate incoming props\n * @param props - Props to validate\n */\n BreadcrumbBase.prototype._validateProps = function (props) {\n var maxDisplayedItems = props.maxDisplayedItems, overflowIndex = props.overflowIndex, items = props.items;\n if (overflowIndex < 0 ||\n (maxDisplayedItems > 1 && overflowIndex > maxDisplayedItems - 1) ||\n (items.length > 0 && overflowIndex > items.length - 1)) {\n throw new Error('Breadcrumb: overflowIndex out of range');\n }\n };\n BreadcrumbBase.defaultProps = {\n items: [],\n maxDisplayedItems: 999,\n overflowIndex: 0,\n };\n return BreadcrumbBase;\n}(React.Component));\nexport { BreadcrumbBase };\n//# sourceMappingURL=Breadcrumb.base.js.map","import { __assign } from \"tslib\";\nimport { HighContrastSelector, ScreenWidthMaxMedium, ScreenWidthMaxSmall, ScreenWidthMinMedium, getFocusStyle, getScreenSelector, getGlobalClassNames, FontWeights, getHighContrastNoAdjustStyle, } from '../../Styling';\nimport { IsFocusVisibleClassName } from '../../Utilities';\nvar GlobalClassNames = {\n root: 'ms-Breadcrumb',\n list: 'ms-Breadcrumb-list',\n listItem: 'ms-Breadcrumb-listItem',\n chevron: 'ms-Breadcrumb-chevron',\n overflow: 'ms-Breadcrumb-overflow',\n overflowButton: 'ms-Breadcrumb-overflowButton',\n itemLink: 'ms-Breadcrumb-itemLink',\n item: 'ms-Breadcrumb-item',\n};\nvar SingleLineTextStyle = {\n whiteSpace: 'nowrap',\n textOverflow: 'ellipsis',\n overflow: 'hidden',\n};\nvar overflowButtonFontSize = 16;\nvar chevronSmallFontSize = 8;\nvar itemLineHeight = 36;\nvar itemFontSize = 18;\nvar MinimumScreenSelector = getScreenSelector(0, ScreenWidthMaxSmall);\nvar MediumScreenSelector = getScreenSelector(ScreenWidthMinMedium, ScreenWidthMaxMedium);\nexport var getStyles = function (props) {\n var _a, _b, _c, _d, _e;\n var className = props.className, theme = props.theme;\n var palette = theme.palette, semanticColors = theme.semanticColors, fonts = theme.fonts;\n var classNames = getGlobalClassNames(GlobalClassNames, theme);\n // Tokens\n var itemBackgroundHoveredColor = semanticColors.menuItemBackgroundHovered;\n var itemBackgroundPressedColor = semanticColors.menuItemBackgroundPressed;\n var itemTextColor = palette.neutralSecondary;\n var itemTextFontWeight = FontWeights.regular;\n var itemTextHoveredOrPressedColor = palette.neutralPrimary;\n var itemLastChildTextColor = palette.neutralPrimary;\n var itemLastChildTextFontWeight = FontWeights.semibold;\n var chevronButtonColor = palette.neutralSecondary;\n var overflowButtonColor = palette.neutralSecondary;\n var lastChildItemStyles = {\n fontWeight: itemLastChildTextFontWeight,\n color: itemLastChildTextColor,\n };\n var itemStateSelectors = {\n ':hover': {\n color: itemTextHoveredOrPressedColor,\n backgroundColor: itemBackgroundHoveredColor,\n cursor: 'pointer',\n selectors: (_a = {},\n _a[HighContrastSelector] = {\n color: 'Highlight',\n backgroundColor: 'transparent',\n },\n _a),\n },\n ':active': {\n backgroundColor: itemBackgroundPressedColor,\n color: itemTextHoveredOrPressedColor,\n },\n '&:active:hover': {\n color: itemTextHoveredOrPressedColor,\n backgroundColor: itemBackgroundPressedColor,\n },\n '&:active, &:hover, &:active:hover': {\n textDecoration: 'none',\n },\n };\n var commonItemStyles = {\n color: itemTextColor,\n padding: '0 8px',\n lineHeight: itemLineHeight,\n fontSize: itemFontSize,\n fontWeight: itemTextFontWeight,\n };\n return {\n root: [\n classNames.root,\n fonts.medium,\n {\n margin: '11px 0 1px',\n },\n className,\n ],\n list: [\n classNames.list,\n {\n whiteSpace: 'nowrap',\n padding: 0,\n margin: 0,\n display: 'flex',\n alignItems: 'stretch',\n },\n ],\n listItem: [\n classNames.listItem,\n {\n listStyleType: 'none',\n margin: '0',\n padding: '0',\n display: 'flex',\n position: 'relative',\n alignItems: 'center',\n selectors: {\n '&:last-child .ms-Breadcrumb-itemLink': __assign(__assign({}, lastChildItemStyles), (_b = {}, _b[HighContrastSelector] = {\n MsHighContrastAdjust: 'auto',\n forcedColorAdjust: 'auto',\n }, _b)),\n '&:last-child .ms-Breadcrumb-item': lastChildItemStyles,\n },\n },\n ],\n chevron: [\n classNames.chevron,\n {\n color: chevronButtonColor,\n fontSize: fonts.small.fontSize,\n selectors: (_c = {},\n _c[HighContrastSelector] = __assign({ color: 'WindowText' }, getHighContrastNoAdjustStyle()),\n _c[MediumScreenSelector] = {\n fontSize: chevronSmallFontSize,\n },\n _c[MinimumScreenSelector] = {\n fontSize: chevronSmallFontSize,\n },\n _c),\n },\n ],\n overflow: [\n classNames.overflow,\n {\n position: 'relative',\n display: 'flex',\n alignItems: 'center',\n },\n ],\n overflowButton: [\n classNames.overflowButton,\n getFocusStyle(theme),\n SingleLineTextStyle,\n {\n fontSize: overflowButtonFontSize,\n color: overflowButtonColor,\n height: '100%',\n cursor: 'pointer',\n selectors: __assign(__assign({}, itemStateSelectors), (_d = {}, _d[MinimumScreenSelector] = {\n padding: '4px 6px',\n }, _d[MediumScreenSelector] = {\n fontSize: fonts.mediumPlus.fontSize,\n }, _d)),\n },\n ],\n itemLink: [\n classNames.itemLink,\n getFocusStyle(theme),\n SingleLineTextStyle,\n __assign(__assign({}, commonItemStyles), { selectors: __assign((_e = { ':focus': {\n color: palette.neutralDark,\n } }, _e[\".\" + IsFocusVisibleClassName + \" &:focus\"] = {\n outline: \"none\",\n }, _e), itemStateSelectors) }),\n ],\n item: [\n classNames.item,\n __assign(__assign({}, commonItemStyles), { selectors: {\n ':hover': {\n cursor: 'default',\n },\n } }),\n ],\n };\n};\n//# sourceMappingURL=Breadcrumb.styles.js.map","import { styled } from '../../Utilities';\nimport { BreadcrumbBase } from './Breadcrumb.base';\nimport { getStyles } from './Breadcrumb.styles';\nexport var Breadcrumb = styled(BreadcrumbBase, getStyles, undefined, { scope: 'Breadcrumb' });\n//# sourceMappingURL=Breadcrumb.js.map","import { __assign, __decorate, __extends } from \"tslib\";\nimport * as React from 'react';\nimport { BaseButton } from '../BaseButton';\nimport { customizable, nullRender } from '../../../Utilities';\nimport { getStyles } from './ActionButton.styles';\n/**\n * {@docCategory Button}\n */\nvar ActionButton = /** @class */ (function (_super) {\n __extends(ActionButton, _super);\n function ActionButton() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n ActionButton.prototype.render = function () {\n var _a = this.props, styles = _a.styles, theme = _a.theme;\n return (React.createElement(BaseButton, __assign({}, this.props, { variantClassName: \"ms-Button--action ms-Button--command\", styles: getStyles(theme, styles), onRenderDescription: nullRender })));\n };\n ActionButton = __decorate([\n customizable('ActionButton', ['theme', 'styles'], true)\n ], ActionButton);\n return ActionButton;\n}(React.Component));\nexport { ActionButton };\n//# sourceMappingURL=ActionButton.js.map","import { concatStyleSets, HighContrastSelector } from '../../../Styling';\nimport { memoizeFunction } from '../../../Utilities';\nimport { getStyles as getBaseButtonStyles } from '../BaseButton.styles';\nvar DEFAULT_BUTTON_HEIGHT = '40px';\nvar DEFAULT_PADDING = '0 4px';\nexport var getStyles = memoizeFunction(function (theme, customStyles) {\n var _a, _b, _c;\n var baseButtonStyles = getBaseButtonStyles(theme);\n var actionButtonStyles = {\n root: {\n padding: DEFAULT_PADDING,\n height: DEFAULT_BUTTON_HEIGHT,\n color: theme.palette.neutralPrimary,\n backgroundColor: 'transparent',\n border: '1px solid transparent',\n selectors: (_a = {},\n _a[HighContrastSelector] = {\n borderColor: 'Window',\n },\n _a),\n },\n rootHovered: {\n color: theme.palette.themePrimary,\n selectors: (_b = {},\n _b[HighContrastSelector] = {\n color: 'Highlight',\n },\n _b),\n },\n iconHovered: {\n color: theme.palette.themePrimary,\n },\n rootPressed: {\n color: theme.palette.black,\n },\n rootExpanded: {\n color: theme.palette.themePrimary,\n },\n iconPressed: {\n color: theme.palette.themeDarker,\n },\n rootDisabled: {\n color: theme.palette.neutralTertiary,\n backgroundColor: 'transparent',\n borderColor: 'transparent',\n selectors: (_c = {},\n _c[HighContrastSelector] = {\n color: 'GrayText',\n },\n _c),\n },\n rootChecked: {\n color: theme.palette.black,\n },\n iconChecked: {\n color: theme.palette.themeDarker,\n },\n flexContainer: {\n justifyContent: 'flex-start',\n },\n icon: {\n color: theme.palette.themeDarkAlt,\n },\n iconDisabled: {\n color: 'inherit',\n },\n menuIcon: {\n color: theme.palette.neutralSecondary,\n },\n textContainer: {\n flexGrow: 0,\n },\n };\n return concatStyleSets(baseButtonStyles, actionButtonStyles, customStyles);\n});\n//# sourceMappingURL=ActionButton.styles.js.map","import { memoizeFunction } from '../../Utilities';\nimport { getGlobalClassNames, mergeStyleSets } from '../../Styling';\nexport var ButtonGlobalClassNames = {\n msButton: 'ms-Button',\n msButtonHasMenu: 'ms-Button--hasMenu',\n msButtonIcon: 'ms-Button-icon',\n msButtonMenuIcon: 'ms-Button-menuIcon',\n msButtonLabel: 'ms-Button-label',\n msButtonDescription: 'ms-Button-description',\n msButtonScreenReaderText: 'ms-Button-screenReaderText',\n msButtonFlexContainer: 'ms-Button-flexContainer',\n msButtonTextContainer: 'ms-Button-textContainer',\n};\nexport var getBaseButtonClassNames = memoizeFunction(function (theme, styles, className, variantClassName, iconClassName, menuIconClassName, disabled, hasMenu, checked, expanded, isSplit) {\n var _a, _b;\n var classNames = getGlobalClassNames(ButtonGlobalClassNames, theme || {});\n var isExpanded = expanded && !isSplit;\n return mergeStyleSets({\n root: [\n classNames.msButton,\n styles.root,\n variantClassName,\n checked && ['is-checked', styles.rootChecked],\n isExpanded && [\n 'is-expanded',\n styles.rootExpanded,\n {\n selectors: (_a = {},\n _a[\":hover .\" + classNames.msButtonIcon] = styles.iconExpandedHovered,\n // menuIcon falls back to rootExpandedHovered to support original behavior\n _a[\":hover .\" + classNames.msButtonMenuIcon] = styles.menuIconExpandedHovered || styles.rootExpandedHovered,\n _a[':hover'] = styles.rootExpandedHovered,\n _a),\n },\n ],\n hasMenu && [ButtonGlobalClassNames.msButtonHasMenu, styles.rootHasMenu],\n disabled && ['is-disabled', styles.rootDisabled],\n !disabled &&\n !isExpanded &&\n !checked && {\n selectors: (_b = {\n ':hover': styles.rootHovered\n },\n _b[\":hover .\" + classNames.msButtonLabel] = styles.labelHovered,\n _b[\":hover .\" + classNames.msButtonIcon] = styles.iconHovered,\n _b[\":hover .\" + classNames.msButtonDescription] = styles.descriptionHovered,\n _b[\":hover .\" + classNames.msButtonMenuIcon] = styles.menuIconHovered,\n _b[':focus'] = styles.rootFocused,\n _b[':active'] = styles.rootPressed,\n _b[\":active .\" + classNames.msButtonIcon] = styles.iconPressed,\n _b[\":active .\" + classNames.msButtonDescription] = styles.descriptionPressed,\n _b[\":active .\" + classNames.msButtonMenuIcon] = styles.menuIconPressed,\n _b),\n },\n disabled && checked && [styles.rootCheckedDisabled],\n !disabled &&\n checked && {\n selectors: {\n ':hover': styles.rootCheckedHovered,\n ':active': styles.rootCheckedPressed,\n },\n },\n className,\n ],\n flexContainer: [classNames.msButtonFlexContainer, styles.flexContainer],\n textContainer: [classNames.msButtonTextContainer, styles.textContainer],\n icon: [\n classNames.msButtonIcon,\n iconClassName,\n styles.icon,\n isExpanded && styles.iconExpanded,\n checked && styles.iconChecked,\n disabled && styles.iconDisabled,\n ],\n label: [classNames.msButtonLabel, styles.label, checked && styles.labelChecked, disabled && styles.labelDisabled],\n menuIcon: [\n classNames.msButtonMenuIcon,\n menuIconClassName,\n styles.menuIcon,\n checked && styles.menuIconChecked,\n disabled && !isSplit && styles.menuIconDisabled,\n !disabled &&\n !isExpanded &&\n !checked && {\n selectors: {\n ':hover': styles.menuIconHovered,\n ':active': styles.menuIconPressed,\n },\n },\n isExpanded && ['is-expanded', styles.menuIconExpanded],\n ],\n description: [\n classNames.msButtonDescription,\n styles.description,\n checked && styles.descriptionChecked,\n disabled && styles.descriptionDisabled,\n ],\n screenReaderText: [classNames.msButtonScreenReaderText, styles.screenReaderText],\n });\n});\n//# sourceMappingURL=BaseButton.classNames.js.map","import { __assign, __extends, __rest } from \"tslib\";\nimport * as React from 'react';\nimport { anchorProperties, assign, buttonProperties, createMergedRef, css, getId, getNativeProps, initializeComponentRef, memoizeFunction, mergeAriaAttributeValues, nullRender, portalContainsElement, setFocusVisibility, warnConditionallyRequiredProps, warnDeprecations, Async, EventGroup, FocusRects, KeyCodes, } from '../../Utilities';\nimport { Icon, FontIcon, ImageIcon } from '../../Icon';\nimport { DirectionalHint } from '../../common/DirectionalHint';\nimport { ContextualMenu } from '../../ContextualMenu';\nimport { getBaseButtonClassNames } from './BaseButton.classNames';\nimport { getSplitButtonClassNames as getBaseSplitButtonClassNames } from './SplitButton/SplitButton.classNames';\nimport { KeytipData } from '../../KeytipData';\nimport { composeComponentAs } from '../../Utilities';\nvar TouchIdleDelay = 500; /* ms */\nvar COMPONENT_NAME = 'BaseButton';\n/**\n * {@docCategory Button}\n */\nvar BaseButton = /** @class */ (function (_super) {\n __extends(BaseButton, _super);\n function BaseButton(props) {\n var _this = _super.call(this, props) || this;\n _this._buttonElement = React.createRef();\n _this._splitButtonContainer = React.createRef();\n _this._mergedRef = createMergedRef();\n _this._renderedVisibleMenu = false;\n _this._getMemoizedMenuButtonKeytipProps = memoizeFunction(function (keytipProps) {\n return __assign(__assign({}, keytipProps), { hasMenu: true });\n });\n _this._onRenderIcon = function (buttonProps, defaultRender) {\n var iconProps = _this.props.iconProps;\n if (iconProps && (iconProps.iconName !== undefined || iconProps.imageProps)) {\n var className = iconProps.className, imageProps = iconProps.imageProps, rest = __rest(iconProps, [\"className\", \"imageProps\"]);\n // If the styles prop is specified as part of iconProps, fall back to regular Icon as FontIcon and ImageIcon\n // do not have this prop.\n if (iconProps.styles) {\n return React.createElement(Icon, __assign({ className: css(_this._classNames.icon, className), imageProps: imageProps }, rest));\n }\n if (iconProps.iconName) {\n return React.createElement(FontIcon, __assign({ className: css(_this._classNames.icon, className) }, rest));\n }\n if (imageProps) {\n return React.createElement(ImageIcon, __assign({ className: css(_this._classNames.icon, className), imageProps: imageProps }, rest));\n }\n }\n return null;\n };\n _this._onRenderTextContents = function () {\n var _a = _this.props, text = _a.text, children = _a.children, \n // eslint-disable-next-line deprecation/deprecation\n _b = _a.secondaryText, \n // eslint-disable-next-line deprecation/deprecation\n secondaryText = _b === void 0 ? _this.props.description : _b, _c = _a.onRenderText, onRenderText = _c === void 0 ? _this._onRenderText : _c, _d = _a.onRenderDescription, onRenderDescription = _d === void 0 ? _this._onRenderDescription : _d;\n if (text || typeof children === 'string' || secondaryText) {\n return (React.createElement(\"span\", { className: _this._classNames.textContainer },\n onRenderText(_this.props, _this._onRenderText),\n onRenderDescription(_this.props, _this._onRenderDescription)));\n }\n return [onRenderText(_this.props, _this._onRenderText), onRenderDescription(_this.props, _this._onRenderDescription)];\n };\n _this._onRenderText = function () {\n var text = _this.props.text;\n var children = _this.props.children;\n // For backwards compat, we should continue to take in the text content from children.\n if (text === undefined && typeof children === 'string') {\n text = children;\n }\n if (_this._hasText()) {\n return (React.createElement(\"span\", { key: _this._labelId, className: _this._classNames.label, id: _this._labelId }, text));\n }\n return null;\n };\n _this._onRenderChildren = function () {\n var children = _this.props.children;\n // If children is just a string, either it or the text will be rendered via onRenderLabel\n // If children is another component, it will be rendered after text\n if (typeof children === 'string') {\n return null;\n }\n return children;\n };\n _this._onRenderDescription = function (props) {\n // eslint-disable-next-line deprecation/deprecation\n var _a = props.secondaryText, secondaryText = _a === void 0 ? _this.props.description : _a;\n // ms-Button-description is only shown when the button type is compound.\n // In other cases it will not be displayed.\n return secondaryText ? (React.createElement(\"span\", { key: _this._descriptionId, className: _this._classNames.description, id: _this._descriptionId }, secondaryText)) : null;\n };\n _this._onRenderAriaDescription = function () {\n var ariaDescription = _this.props.ariaDescription;\n // If ariaDescription is given, descriptionId will be assigned to ariaDescriptionSpan,\n // otherwise it will be assigned to descriptionSpan.\n return ariaDescription ? (React.createElement(\"span\", { className: _this._classNames.screenReaderText, id: _this._ariaDescriptionId }, ariaDescription)) : null;\n };\n _this._onRenderMenuIcon = function (props) {\n var menuIconProps = _this.props.menuIconProps;\n return React.createElement(FontIcon, __assign({ iconName: \"ChevronDown\" }, menuIconProps, { className: _this._classNames.menuIcon }));\n };\n _this._onRenderMenu = function (menuProps) {\n var MenuType = _this.props.menuAs ? composeComponentAs(_this.props.menuAs, ContextualMenu) : ContextualMenu;\n return React.createElement(MenuType, __assign({}, menuProps));\n };\n _this._onDismissMenu = function (ev) {\n var menuProps = _this.props.menuProps;\n if (menuProps && menuProps.onDismiss) {\n menuProps.onDismiss(ev);\n }\n if (!ev || !ev.defaultPrevented) {\n _this._dismissMenu();\n }\n };\n _this._dismissMenu = function () {\n _this._menuShouldFocusOnMount = undefined;\n _this._menuShouldFocusOnContainer = undefined;\n _this.setState({ menuHidden: true });\n };\n _this._openMenu = function (shouldFocusOnContainer, shouldFocusOnMount) {\n if (shouldFocusOnMount === void 0) { shouldFocusOnMount = true; }\n if (_this.props.menuProps) {\n _this._menuShouldFocusOnContainer = shouldFocusOnContainer;\n _this._menuShouldFocusOnMount = shouldFocusOnMount;\n _this._renderedVisibleMenu = true;\n _this.setState({ menuHidden: false });\n }\n };\n _this._onToggleMenu = function (shouldFocusOnContainer) {\n var shouldFocusOnMount = true;\n if (_this.props.menuProps && _this.props.menuProps.shouldFocusOnMount === false) {\n shouldFocusOnMount = false;\n }\n _this.state.menuHidden ? _this._openMenu(shouldFocusOnContainer, shouldFocusOnMount) : _this._dismissMenu();\n };\n _this._onSplitContainerFocusCapture = function (ev) {\n var container = _this._splitButtonContainer.current;\n // If the target is coming from the portal we do not need to set focus on the container.\n if (!container || (ev.target && portalContainsElement(ev.target, container))) {\n return;\n }\n // We should never be able to focus the individual buttons in a split button. Focus\n // should always remain on the container.\n container.focus();\n };\n _this._onSplitButtonPrimaryClick = function (ev) {\n if (!_this.state.menuHidden) {\n _this._dismissMenu();\n }\n if (!_this._processingTouch && _this.props.onClick) {\n _this.props.onClick(ev);\n }\n else if (_this._processingTouch) {\n _this._onMenuClick(ev);\n }\n };\n _this._onKeyDown = function (ev) {\n // explicity cancelling event so click won't fire after this\n // eslint-disable-next-line deprecation/deprecation\n if (_this.props.disabled && (ev.which === KeyCodes.enter || ev.which === KeyCodes.space)) {\n ev.preventDefault();\n ev.stopPropagation();\n }\n else if (!_this.props.disabled) {\n if (_this.props.menuProps) {\n _this._onMenuKeyDown(ev);\n }\n else if (_this.props.onKeyDown !== undefined) {\n _this.props.onKeyDown(ev); // not cancelling event because it's not disabled\n }\n }\n };\n _this._onKeyUp = function (ev) {\n if (!_this.props.disabled && _this.props.onKeyUp !== undefined) {\n _this.props.onKeyUp(ev); // not cancelling event because it's not disabled\n }\n };\n _this._onKeyPress = function (ev) {\n if (!_this.props.disabled && _this.props.onKeyPress !== undefined) {\n _this.props.onKeyPress(ev); // not cancelling event because it's not disabled\n }\n };\n _this._onMouseUp = function (ev) {\n if (!_this.props.disabled && _this.props.onMouseUp !== undefined) {\n _this.props.onMouseUp(ev); // not cancelling event because it's not disabled\n }\n };\n _this._onMouseDown = function (ev) {\n if (!_this.props.disabled && _this.props.onMouseDown !== undefined) {\n _this.props.onMouseDown(ev); // not cancelling event because it's not disabled\n }\n };\n _this._onClick = function (ev) {\n if (!_this.props.disabled) {\n if (_this.props.menuProps) {\n _this._onMenuClick(ev);\n }\n else if (_this.props.onClick !== undefined) {\n _this.props.onClick(ev); // not cancelling event because it's not disabled\n }\n }\n };\n _this._onSplitButtonContainerKeyDown = function (ev) {\n // eslint-disable-next-line deprecation/deprecation\n if (ev.which === KeyCodes.enter || ev.which === KeyCodes.space) {\n if (_this._buttonElement.current) {\n _this._buttonElement.current.click();\n ev.preventDefault();\n ev.stopPropagation();\n }\n }\n else {\n _this._onMenuKeyDown(ev);\n }\n };\n _this._onMenuKeyDown = function (ev) {\n if (_this.props.disabled) {\n return;\n }\n if (_this.props.onKeyDown) {\n _this.props.onKeyDown(ev);\n }\n // eslint-disable-next-line deprecation/deprecation\n var isUp = ev.which === KeyCodes.up;\n // eslint-disable-next-line deprecation/deprecation\n var isDown = ev.which === KeyCodes.down;\n if (!ev.defaultPrevented && _this._isValidMenuOpenKey(ev)) {\n var onMenuClick = _this.props.onMenuClick;\n if (onMenuClick) {\n onMenuClick(ev, _this.props);\n }\n _this._onToggleMenu(false);\n ev.preventDefault();\n ev.stopPropagation();\n }\n // eslint-disable-next-line deprecation/deprecation\n if (ev.which === KeyCodes.enter || ev.which === KeyCodes.space) {\n // We manually set the focus visibility to true if opening via Enter or Space to account for the scenario where\n // a user clicks on the button, closes the menu and then opens it via keyboard. In this scenario our default logic\n // for setting focus visibility is not triggered since there is no keyboard navigation present beforehand.\n setFocusVisibility(true, ev.target);\n }\n if (!(ev.altKey || ev.metaKey) && (isUp || isDown)) {\n // Suppose a menu, with shouldFocusOnMount: false, is open, and user wants to keyboard to the menu items\n // We need to re-render the menu with shouldFocusOnMount as true.\n if (!_this.state.menuHidden && _this.props.menuProps) {\n var currentShouldFocusOnMount = _this._menuShouldFocusOnMount !== undefined\n ? _this._menuShouldFocusOnMount\n : _this.props.menuProps.shouldFocusOnMount;\n if (!currentShouldFocusOnMount) {\n ev.preventDefault();\n ev.stopPropagation();\n _this._menuShouldFocusOnMount = true;\n _this.forceUpdate();\n }\n }\n }\n };\n _this._onTouchStart = function () {\n if (_this._isSplitButton &&\n _this._splitButtonContainer.current &&\n !('onpointerdown' in _this._splitButtonContainer.current)) {\n _this._handleTouchAndPointerEvent();\n }\n };\n _this._onMenuClick = function (ev) {\n var onMenuClick = _this.props.onMenuClick;\n if (onMenuClick) {\n onMenuClick(ev, _this.props);\n }\n if (!ev.defaultPrevented) {\n // When Edge + Narrator are used together (regardless of if the button is in a form or not), pressing\n // \"Enter\" fires this method and not _onMenuKeyDown. Checking ev.nativeEvent.detail differentiates\n // between a real click event and a keypress event (detail should be the number of mouse clicks).\n // ...Plot twist! For a real click event in IE 11, detail is always 0 (Edge sets it properly to 1).\n // So we also check the pointerType property, which both Edge and IE set to \"mouse\" for real clicks\n // and \"\" for pressing \"Enter\" with Narrator on.\n var shouldFocusOnContainer = ev.nativeEvent.detail !== 0 || ev.nativeEvent.pointerType === 'mouse';\n _this._onToggleMenu(shouldFocusOnContainer);\n ev.preventDefault();\n ev.stopPropagation();\n }\n };\n initializeComponentRef(_this);\n _this._async = new Async(_this);\n _this._events = new EventGroup(_this);\n warnConditionallyRequiredProps(COMPONENT_NAME, props, ['menuProps', 'onClick'], 'split', _this.props.split);\n warnDeprecations(COMPONENT_NAME, props, {\n rootProps: undefined,\n description: 'secondaryText',\n toggled: 'checked',\n });\n _this._labelId = getId();\n _this._descriptionId = getId();\n _this._ariaDescriptionId = getId();\n _this.state = {\n menuHidden: true,\n };\n return _this;\n }\n Object.defineProperty(BaseButton.prototype, \"_isSplitButton\", {\n get: function () {\n return !!this.props.menuProps && !!this.props.onClick && this.props.split === true;\n },\n enumerable: false,\n configurable: true\n });\n BaseButton.prototype.render = function () {\n var _a;\n var _b = this.props, ariaDescription = _b.ariaDescription, ariaLabel = _b.ariaLabel, ariaHidden = _b.ariaHidden, className = _b.className, disabled = _b.disabled, allowDisabledFocus = _b.allowDisabledFocus, primaryDisabled = _b.primaryDisabled, \n // eslint-disable-next-line deprecation/deprecation\n _c = _b.secondaryText, \n // eslint-disable-next-line deprecation/deprecation\n secondaryText = _c === void 0 ? this.props.description : _c, href = _b.href, iconProps = _b.iconProps, menuIconProps = _b.menuIconProps, styles = _b.styles, checked = _b.checked, variantClassName = _b.variantClassName, theme = _b.theme, toggle = _b.toggle, getClassNames = _b.getClassNames, role = _b.role;\n var menuHidden = this.state.menuHidden;\n // Button is disabled if the whole button (in case of splitButton is disabled) or if the primary action is disabled\n var isPrimaryButtonDisabled = disabled || primaryDisabled;\n this._classNames = getClassNames\n ? getClassNames(theme, className, variantClassName, iconProps && iconProps.className, menuIconProps && menuIconProps.className, isPrimaryButtonDisabled, checked, !menuHidden, !!this.props.menuProps, this.props.split, !!allowDisabledFocus)\n : getBaseButtonClassNames(theme, styles, className, variantClassName, iconProps && iconProps.className, menuIconProps && menuIconProps.className, isPrimaryButtonDisabled, !!this.props.menuProps, checked, !menuHidden, this.props.split);\n var _d = this, _ariaDescriptionId = _d._ariaDescriptionId, _labelId = _d._labelId, _descriptionId = _d._descriptionId;\n // Anchor tag cannot be disabled hence in disabled state rendering\n // anchor button as normal button\n var renderAsAnchor = !isPrimaryButtonDisabled && !!href;\n var tag = renderAsAnchor ? 'a' : 'button';\n var nativeProps = getNativeProps(\n // eslint-disable-next-line deprecation/deprecation\n assign(renderAsAnchor ? {} : { type: 'button' }, this.props.rootProps, this.props), renderAsAnchor ? anchorProperties : buttonProperties, [\n 'disabled', // let disabled buttons be focused and styled as disabled.\n ]);\n // Check for ariaLabel passed in via Button props, and fall back to aria-label passed in via native props\n var resolvedAriaLabel = ariaLabel || nativeProps['aria-label'];\n // Check for ariaDescription, secondaryText or aria-describedby in the native props to determine source of\n // aria-describedby. Otherwise default to undefined so property does not appear in output.\n var ariaDescribedBy = undefined;\n if (ariaDescription) {\n ariaDescribedBy = _ariaDescriptionId;\n }\n else if (secondaryText && this.props.onRenderDescription !== nullRender) {\n // for buttons like CompoundButton with a valid onRenderDescription, we need to set an ariaDescribedBy\n // for buttons that do not render anything (via nullRender), we should not set an ariaDescribedBy\n ariaDescribedBy = _descriptionId;\n }\n else if (nativeProps['aria-describedby']) {\n ariaDescribedBy = nativeProps['aria-describedby'];\n }\n // If an explicit aria-labelledby is given, use that and we're done.\n // If any kind of description is given (which will end up as an aria-describedby attribute)\n // and no ariaLabel is specified, set the labelledby element.\n // Otherwise, the button is labeled implicitly by the descendent text on the button (if it exists).\n var ariaLabelledBy = undefined;\n if (nativeProps['aria-labelledby']) {\n ariaLabelledBy = nativeProps['aria-labelledby'];\n }\n else if (ariaDescribedBy && !resolvedAriaLabel) {\n ariaLabelledBy = this._hasText() ? _labelId : undefined;\n }\n var dataIsFocusable = this.props['data-is-focusable'] === false || (disabled && !allowDisabledFocus) || this._isSplitButton\n ? false\n : true;\n var isCheckboxTypeRole = role === 'menuitemcheckbox' || role === 'checkbox';\n // if isCheckboxTypeRole, always return a checked value.\n // Otherwise only return checked value if toggle is set to true.\n // This is because role=\"checkbox\" always needs to have an aria-checked value\n // but our checked prop only sets aria-pressed if we mark the button as a toggle=\"true\"\n var checkedOrPressedValue = isCheckboxTypeRole ? !!checked : toggle === true ? !!checked : undefined;\n var buttonProps = assign(nativeProps, (_a = {\n className: this._classNames.root,\n // eslint-disable-next-line deprecation/deprecation\n ref: this._mergedRef(this.props.elementRef, this._buttonElement),\n disabled: isPrimaryButtonDisabled && !allowDisabledFocus,\n onKeyDown: this._onKeyDown,\n onKeyPress: this._onKeyPress,\n onKeyUp: this._onKeyUp,\n onMouseDown: this._onMouseDown,\n onMouseUp: this._onMouseUp,\n onClick: this._onClick,\n 'aria-label': resolvedAriaLabel,\n 'aria-labelledby': ariaLabelledBy,\n 'aria-describedby': ariaDescribedBy,\n 'aria-disabled': isPrimaryButtonDisabled,\n 'data-is-focusable': dataIsFocusable\n },\n // aria-pressed attribute should only be present for toggle buttons\n // aria-checked attribute should only be present for toggle buttons with checkbox type role\n _a[isCheckboxTypeRole ? 'aria-checked' : 'aria-pressed'] = checkedOrPressedValue,\n _a));\n if (ariaHidden) {\n buttonProps['aria-hidden'] = true;\n }\n if (this._isSplitButton) {\n return this._onRenderSplitButtonContent(tag, buttonProps);\n }\n else if (this.props.menuProps) {\n var _e = this.props.menuProps.id, id = _e === void 0 ? this._labelId + \"-menu\" : _e;\n assign(buttonProps, {\n 'aria-expanded': !menuHidden,\n 'aria-controls': !menuHidden ? id : null,\n 'aria-haspopup': true,\n });\n }\n return this._onRenderContent(tag, buttonProps);\n };\n BaseButton.prototype.componentDidMount = function () {\n // For split buttons, touching anywhere in the button should drop the dropdown, which should contain the\n // primary action. This gives more hit target space for touch environments. We're setting the onpointerdown here,\n // because React does not support Pointer events yet.\n if (this._isSplitButton && this._splitButtonContainer.current) {\n if ('onpointerdown' in this._splitButtonContainer.current) {\n this._events.on(this._splitButtonContainer.current, 'pointerdown', this._onPointerDown, true);\n }\n if ('onpointerup' in this._splitButtonContainer.current && this.props.onPointerUp) {\n this._events.on(this._splitButtonContainer.current, 'pointerup', this.props.onPointerUp, true);\n }\n }\n };\n BaseButton.prototype.componentDidUpdate = function (prevProps, prevState) {\n // If Button's menu was closed, run onAfterMenuDismiss.\n if (this.props.onAfterMenuDismiss && !prevState.menuHidden && this.state.menuHidden) {\n this.props.onAfterMenuDismiss();\n }\n };\n BaseButton.prototype.componentWillUnmount = function () {\n this._async.dispose();\n this._events.dispose();\n };\n BaseButton.prototype.focus = function () {\n if (this._isSplitButton && this._splitButtonContainer.current) {\n setFocusVisibility(true);\n this._splitButtonContainer.current.focus();\n }\n else if (this._buttonElement.current) {\n setFocusVisibility(true);\n this._buttonElement.current.focus();\n }\n };\n BaseButton.prototype.dismissMenu = function () {\n this._dismissMenu();\n };\n BaseButton.prototype.openMenu = function (shouldFocusOnContainer, shouldFocusOnMount) {\n this._openMenu(shouldFocusOnContainer, shouldFocusOnMount);\n };\n BaseButton.prototype._onRenderContent = function (tag, buttonProps) {\n var _this = this;\n var props = this.props;\n var Tag = tag;\n var menuIconProps = props.menuIconProps, menuProps = props.menuProps, _a = props.onRenderIcon, onRenderIcon = _a === void 0 ? this._onRenderIcon : _a, _b = props.onRenderAriaDescription, onRenderAriaDescription = _b === void 0 ? this._onRenderAriaDescription : _b, _c = props.onRenderChildren, onRenderChildren = _c === void 0 ? this._onRenderChildren : _c, \n // eslint-disable-next-line deprecation/deprecation\n _d = props.onRenderMenu, \n // eslint-disable-next-line deprecation/deprecation\n onRenderMenu = _d === void 0 ? this._onRenderMenu : _d, _e = props.onRenderMenuIcon, onRenderMenuIcon = _e === void 0 ? this._onRenderMenuIcon : _e, disabled = props.disabled;\n var keytipProps = props.keytipProps;\n if (keytipProps && menuProps) {\n keytipProps = this._getMemoizedMenuButtonKeytipProps(keytipProps);\n }\n var Button = function (keytipAttributes) { return (React.createElement(Tag, __assign({}, buttonProps, keytipAttributes),\n React.createElement(\"span\", { className: _this._classNames.flexContainer, \"data-automationid\": \"splitbuttonprimary\" },\n onRenderIcon(props, _this._onRenderIcon),\n _this._onRenderTextContents(),\n onRenderAriaDescription(props, _this._onRenderAriaDescription),\n onRenderChildren(props, _this._onRenderChildren),\n !_this._isSplitButton &&\n (menuProps || menuIconProps || _this.props.onRenderMenuIcon) &&\n onRenderMenuIcon(_this.props, _this._onRenderMenuIcon),\n menuProps &&\n !menuProps.doNotLayer &&\n _this._shouldRenderMenu() &&\n onRenderMenu(_this._getMenuProps(menuProps), _this._onRenderMenu)))); };\n var Content = keytipProps ? (\n // If we're making a split button, we won't put the keytip here\n React.createElement(KeytipData, { keytipProps: !this._isSplitButton ? keytipProps : undefined, ariaDescribedBy: buttonProps['aria-describedby'], disabled: disabled }, function (keytipAttributes) { return Button(keytipAttributes); })) : (Button());\n if (menuProps && menuProps.doNotLayer) {\n return (React.createElement(React.Fragment, null,\n Content,\n this._shouldRenderMenu() && onRenderMenu(this._getMenuProps(menuProps), this._onRenderMenu)));\n }\n return (React.createElement(React.Fragment, null,\n Content,\n React.createElement(FocusRects, null)));\n };\n /**\n * Method to help determine if the menu's component tree should\n * be rendered. It takes into account whether the menu is expanded,\n * whether it is a persisted menu and whether it has been shown to the user.\n */\n BaseButton.prototype._shouldRenderMenu = function () {\n var menuHidden = this.state.menuHidden;\n // eslint-disable-next-line deprecation/deprecation\n var _a = this.props, persistMenu = _a.persistMenu, renderPersistedMenuHiddenOnMount = _a.renderPersistedMenuHiddenOnMount;\n if (!menuHidden) {\n // Always should render a menu when it is expanded\n return true;\n }\n else if (persistMenu && (this._renderedVisibleMenu || renderPersistedMenuHiddenOnMount)) {\n // _renderedVisibleMenu ensures that the first rendering of\n // the menu happens on-screen, as edge's scrollbar calculations are off if done while hidden.\n return true;\n }\n return false;\n };\n BaseButton.prototype._hasText = function () {\n // _onRenderTextContents and _onRenderText do not perform the same checks. Below is parity with what _onRenderText\n // used to have before the refactor that introduced this function. _onRenderTextContents does not require props.\n // text to be undefined in order for props.children to be used as a fallback.\n // Purely a code maintainability/reuse issue, but logged as Issue #4979.\n return this.props.text !== null && (this.props.text !== undefined || typeof this.props.children === 'string');\n };\n BaseButton.prototype._getMenuProps = function (menuProps) {\n var persistMenu = this.props.persistMenu;\n var menuHidden = this.state.menuHidden;\n // the accessible menu label (accessible name) has a relationship to the button.\n // If the menu props do not specify an explicit value for aria-label or aria-labelledBy,\n // AND the button has text, we'll set the menu aria-labelledBy to the text element id.\n if (!menuProps.ariaLabel && !menuProps.labelElementId && this._hasText()) {\n menuProps = __assign(__assign({}, menuProps), { labelElementId: this._labelId });\n }\n return __assign(__assign({ id: this._labelId + '-menu', directionalHint: DirectionalHint.bottomLeftEdge }, menuProps), { shouldFocusOnContainer: this._menuShouldFocusOnContainer, shouldFocusOnMount: this._menuShouldFocusOnMount, hidden: persistMenu ? menuHidden : undefined, className: css('ms-BaseButton-menuhost', menuProps.className), target: this._isSplitButton ? this._splitButtonContainer.current : this._buttonElement.current, onDismiss: this._onDismissMenu });\n };\n BaseButton.prototype._onRenderSplitButtonContent = function (tag, buttonProps) {\n var _this = this;\n var _a = this.props, _b = _a.styles, styles = _b === void 0 ? {} : _b, disabled = _a.disabled, allowDisabledFocus = _a.allowDisabledFocus, checked = _a.checked, getSplitButtonClassNames = _a.getSplitButtonClassNames, primaryDisabled = _a.primaryDisabled, menuProps = _a.menuProps, toggle = _a.toggle, role = _a.role, primaryActionButtonProps = _a.primaryActionButtonProps;\n var keytipProps = this.props.keytipProps;\n var menuHidden = this.state.menuHidden;\n var classNames = getSplitButtonClassNames\n ? getSplitButtonClassNames(!!disabled, !menuHidden, !!checked, !!allowDisabledFocus)\n : styles && getBaseSplitButtonClassNames(styles, !!disabled, !menuHidden, !!checked, !!primaryDisabled);\n assign(buttonProps, {\n onClick: undefined,\n onPointerDown: undefined,\n onPointerUp: undefined,\n tabIndex: -1,\n 'data-is-focusable': false,\n });\n if (keytipProps && menuProps) {\n keytipProps = this._getMemoizedMenuButtonKeytipProps(keytipProps);\n }\n var containerProps = getNativeProps(buttonProps, [], ['disabled']);\n // Add additional props to apply on primary action button\n if (primaryActionButtonProps) {\n assign(buttonProps, primaryActionButtonProps);\n }\n var SplitButton = function (keytipAttributes) { return (React.createElement(\"div\", __assign({}, containerProps, { \"data-ktp-target\": keytipAttributes ? keytipAttributes['data-ktp-target'] : undefined, role: role ? role : 'button', \"aria-disabled\": disabled, \"aria-haspopup\": true, \"aria-expanded\": !menuHidden, \"aria-pressed\": toggle ? !!checked : undefined, \"aria-describedby\": mergeAriaAttributeValues(buttonProps['aria-describedby'], keytipAttributes ? keytipAttributes['aria-describedby'] : undefined), className: classNames && classNames.splitButtonContainer, onKeyDown: _this._onSplitButtonContainerKeyDown, onTouchStart: _this._onTouchStart, ref: _this._splitButtonContainer, \"data-is-focusable\": true, onClick: !disabled && !primaryDisabled ? _this._onSplitButtonPrimaryClick : undefined, tabIndex: (!disabled && !primaryDisabled) || allowDisabledFocus ? 0 : undefined, \"aria-roledescription\": buttonProps['aria-roledescription'], onFocusCapture: _this._onSplitContainerFocusCapture }),\n React.createElement(\"span\", { style: { display: 'flex' } },\n _this._onRenderContent(tag, buttonProps),\n _this._onRenderSplitButtonMenuButton(classNames, keytipAttributes),\n _this._onRenderSplitButtonDivider(classNames)))); };\n return keytipProps ? (React.createElement(KeytipData, { keytipProps: keytipProps, disabled: disabled }, function (keytipAttributes) { return SplitButton(keytipAttributes); })) : (SplitButton());\n };\n BaseButton.prototype._onRenderSplitButtonDivider = function (classNames) {\n if (classNames && classNames.divider) {\n var onClick = function (ev) {\n ev.stopPropagation();\n };\n return React.createElement(\"span\", { className: classNames.divider, \"aria-hidden\": true, onClick: onClick });\n }\n return null;\n };\n BaseButton.prototype._onRenderSplitButtonMenuButton = function (classNames, keytipAttributes) {\n var _a = this.props, allowDisabledFocus = _a.allowDisabledFocus, checked = _a.checked, disabled = _a.disabled, splitButtonMenuProps = _a.splitButtonMenuProps, splitButtonAriaLabel = _a.splitButtonAriaLabel, primaryDisabled = _a.primaryDisabled;\n var menuHidden = this.state.menuHidden;\n var menuIconProps = this.props.menuIconProps;\n if (menuIconProps === undefined) {\n menuIconProps = {\n iconName: 'ChevronDown',\n };\n }\n var splitButtonProps = __assign(__assign({}, splitButtonMenuProps), { styles: classNames, checked: checked, disabled: disabled, allowDisabledFocus: allowDisabledFocus, onClick: this._onMenuClick, menuProps: undefined, iconProps: __assign(__assign({}, menuIconProps), { className: this._classNames.menuIcon }), ariaLabel: splitButtonAriaLabel, 'aria-haspopup': true, 'aria-expanded': !menuHidden, 'data-is-focusable': false });\n // Add data-ktp-execute-target to the split button if the keytip is defined\n return (React.createElement(BaseButton, __assign({}, splitButtonProps, { \"data-ktp-execute-target\": keytipAttributes ? keytipAttributes['data-ktp-execute-target'] : keytipAttributes, onMouseDown: this._onMouseDown, tabIndex: primaryDisabled && !allowDisabledFocus ? 0 : -1 })));\n };\n BaseButton.prototype._onPointerDown = function (ev) {\n var onPointerDown = this.props.onPointerDown;\n if (onPointerDown) {\n onPointerDown(ev);\n }\n if (ev.pointerType === 'touch') {\n this._handleTouchAndPointerEvent();\n ev.preventDefault();\n ev.stopImmediatePropagation();\n }\n };\n BaseButton.prototype._handleTouchAndPointerEvent = function () {\n var _this = this;\n // If we already have an existing timeout from a previous touch and pointer event\n // cancel that timeout so we can set a new one.\n if (this._lastTouchTimeoutId !== undefined) {\n this._async.clearTimeout(this._lastTouchTimeoutId);\n this._lastTouchTimeoutId = undefined;\n }\n this._processingTouch = true;\n this._lastTouchTimeoutId = this._async.setTimeout(function () {\n _this._processingTouch = false;\n _this._lastTouchTimeoutId = undefined;\n // Touch and pointer events don't focus the button naturally,\n // so adding an imperative focus call to guarantee this behavior.\n _this.focus();\n }, TouchIdleDelay);\n };\n /**\n * Returns if the user hits a valid keyboard key to open the menu\n * @param ev - the keyboard event\n * @returns True if user clicks on custom trigger key if enabled or alt + down arrow if not. False otherwise.\n */\n BaseButton.prototype._isValidMenuOpenKey = function (ev) {\n if (this.props.menuTriggerKeyCode) {\n // eslint-disable-next-line deprecation/deprecation\n return ev.which === this.props.menuTriggerKeyCode;\n }\n else if (this.props.menuProps) {\n // eslint-disable-next-line deprecation/deprecation\n return ev.which === KeyCodes.down && (ev.altKey || ev.metaKey);\n }\n // Note: When enter is pressed, we will let the event continue to propagate\n // to trigger the onClick event on the button\n return false;\n };\n BaseButton.defaultProps = {\n baseClassName: 'ms-Button',\n styles: {},\n split: false,\n };\n return BaseButton;\n}(React.Component));\nexport { BaseButton };\n//# sourceMappingURL=BaseButton.js.map","import { memoizeFunction } from '../../Utilities';\nimport { HighContrastSelector, getFocusStyle, hiddenContentStyle } from '../../Styling';\nvar noOutline = {\n outline: 0,\n};\nvar iconStyle = function (fontSize) {\n return {\n fontSize: fontSize,\n margin: '0 4px',\n height: '16px',\n lineHeight: '16px',\n textAlign: 'center',\n flexShrink: 0,\n };\n};\n/**\n * Gets the base button styles. Note: because it is a base class to be used with the `mergeRules`\n * helper, it should have values for all class names in the interface. This let `mergeRules` optimize\n * mixing class names together.\n */\nexport var getStyles = memoizeFunction(function (theme) {\n var _a, _b;\n var semanticColors = theme.semanticColors, effects = theme.effects, fonts = theme.fonts;\n var border = semanticColors.buttonBorder;\n var disabledBackground = semanticColors.disabledBackground;\n var disabledText = semanticColors.disabledText;\n var buttonHighContrastFocus = {\n left: -2,\n top: -2,\n bottom: -2,\n right: -2,\n outlineColor: 'ButtonText',\n };\n return {\n root: [\n getFocusStyle(theme, { inset: 1, highContrastStyle: buttonHighContrastFocus, borderColor: 'transparent' }),\n theme.fonts.medium,\n {\n boxSizing: 'border-box',\n border: '1px solid ' + border,\n userSelect: 'none',\n display: 'inline-block',\n textDecoration: 'none',\n textAlign: 'center',\n cursor: 'pointer',\n padding: '0 16px',\n borderRadius: effects.roundedCorner2,\n selectors: {\n // IE11 workaround for preventing shift of child elements of a button when active.\n ':active > *': {\n position: 'relative',\n left: 0,\n top: 0,\n },\n },\n },\n ],\n rootDisabled: [\n getFocusStyle(theme, { inset: 1, highContrastStyle: buttonHighContrastFocus, borderColor: 'transparent' }),\n {\n backgroundColor: disabledBackground,\n borderColor: disabledBackground,\n color: disabledText,\n cursor: 'default',\n selectors: {\n ':hover': noOutline,\n ':focus': noOutline,\n },\n },\n ],\n iconDisabled: {\n color: disabledText,\n selectors: (_a = {},\n _a[HighContrastSelector] = {\n color: 'GrayText',\n },\n _a),\n },\n menuIconDisabled: {\n color: disabledText,\n selectors: (_b = {},\n _b[HighContrastSelector] = {\n color: 'GrayText',\n },\n _b),\n },\n flexContainer: {\n display: 'flex',\n height: '100%',\n flexWrap: 'nowrap',\n justifyContent: 'center',\n alignItems: 'center',\n },\n description: {\n display: 'block',\n },\n textContainer: {\n flexGrow: 1,\n display: 'block',\n },\n icon: iconStyle(fonts.mediumPlus.fontSize),\n menuIcon: iconStyle(fonts.small.fontSize),\n label: {\n margin: '0 4px',\n lineHeight: '100%',\n display: 'block',\n },\n screenReaderText: hiddenContentStyle,\n };\n});\n//# sourceMappingURL=BaseButton.styles.js.map","import { __assign } from \"tslib\";\nimport { HighContrastSelector, getHighContrastNoAdjustStyle } from '../../Styling';\nimport { IsFocusVisibleClassName } from '../../Utilities';\nvar splitButtonDividerBaseStyles = function () {\n return {\n position: 'absolute',\n width: 1,\n right: 31,\n top: 8,\n bottom: 8,\n };\n};\nexport function standardStyles(theme) {\n var _a, _b, _c, _d, _e;\n var s = theme.semanticColors, p = theme.palette;\n var buttonBackground = s.buttonBackground;\n var buttonBackgroundPressed = s.buttonBackgroundPressed;\n var buttonBackgroundHovered = s.buttonBackgroundHovered;\n var buttonBackgroundDisabled = s.buttonBackgroundDisabled;\n var buttonText = s.buttonText;\n var buttonTextHovered = s.buttonTextHovered;\n var buttonTextDisabled = s.buttonTextDisabled;\n var buttonTextChecked = s.buttonTextChecked;\n var buttonTextCheckedHovered = s.buttonTextCheckedHovered;\n return {\n root: {\n backgroundColor: buttonBackground,\n color: buttonText,\n },\n rootHovered: {\n backgroundColor: buttonBackgroundHovered,\n color: buttonTextHovered,\n selectors: (_a = {},\n _a[HighContrastSelector] = {\n borderColor: 'Highlight',\n color: 'Highlight',\n },\n _a),\n },\n rootPressed: {\n backgroundColor: buttonBackgroundPressed,\n color: buttonTextChecked,\n },\n rootExpanded: {\n backgroundColor: buttonBackgroundPressed,\n color: buttonTextChecked,\n },\n rootChecked: {\n backgroundColor: buttonBackgroundPressed,\n color: buttonTextChecked,\n },\n rootCheckedHovered: {\n backgroundColor: buttonBackgroundPressed,\n color: buttonTextCheckedHovered,\n },\n rootDisabled: {\n color: buttonTextDisabled,\n backgroundColor: buttonBackgroundDisabled,\n selectors: (_b = {},\n _b[HighContrastSelector] = {\n color: 'GrayText',\n borderColor: 'GrayText',\n backgroundColor: 'Window',\n },\n _b),\n },\n // Split button styles\n splitButtonContainer: {\n selectors: (_c = {},\n _c[HighContrastSelector] = {\n border: 'none',\n },\n _c),\n },\n splitButtonMenuButton: {\n color: p.white,\n backgroundColor: 'transparent',\n selectors: {\n ':hover': {\n backgroundColor: p.neutralLight,\n selectors: (_d = {},\n _d[HighContrastSelector] = {\n color: 'Highlight',\n },\n _d),\n },\n },\n },\n splitButtonMenuButtonDisabled: {\n backgroundColor: s.buttonBackgroundDisabled,\n selectors: {\n ':hover': {\n backgroundColor: s.buttonBackgroundDisabled,\n },\n },\n },\n splitButtonDivider: __assign(__assign({}, splitButtonDividerBaseStyles()), { backgroundColor: p.neutralTertiaryAlt, selectors: (_e = {},\n _e[HighContrastSelector] = {\n backgroundColor: 'WindowText',\n },\n _e) }),\n splitButtonDividerDisabled: {\n backgroundColor: theme.palette.neutralTertiaryAlt,\n },\n splitButtonMenuButtonChecked: {\n backgroundColor: p.neutralQuaternaryAlt,\n selectors: {\n ':hover': {\n backgroundColor: p.neutralQuaternaryAlt,\n },\n },\n },\n splitButtonMenuButtonExpanded: {\n backgroundColor: p.neutralQuaternaryAlt,\n selectors: {\n ':hover': {\n backgroundColor: p.neutralQuaternaryAlt,\n },\n },\n },\n splitButtonMenuIcon: {\n color: s.buttonText,\n },\n splitButtonMenuIconDisabled: {\n color: s.buttonTextDisabled,\n },\n };\n}\nexport function primaryStyles(theme) {\n var _a, _b, _c, _d, _e, _f, _g, _h, _j;\n var p = theme.palette, s = theme.semanticColors;\n return {\n root: {\n backgroundColor: s.primaryButtonBackground,\n border: \"1px solid \" + s.primaryButtonBackground,\n color: s.primaryButtonText,\n selectors: (_a = {},\n _a[HighContrastSelector] = __assign({ color: 'Window', backgroundColor: 'WindowText', borderColor: 'WindowText' }, getHighContrastNoAdjustStyle()),\n _a[\".\" + IsFocusVisibleClassName + \" &:focus\"] = {\n selectors: {\n ':after': {\n border: \"none\",\n outlineColor: p.white,\n },\n },\n },\n _a),\n },\n rootHovered: {\n backgroundColor: s.primaryButtonBackgroundHovered,\n border: \"1px solid \" + s.primaryButtonBackgroundHovered,\n color: s.primaryButtonTextHovered,\n selectors: (_b = {},\n _b[HighContrastSelector] = {\n color: 'Window',\n backgroundColor: 'Highlight',\n borderColor: 'Highlight',\n },\n _b),\n },\n rootPressed: {\n backgroundColor: s.primaryButtonBackgroundPressed,\n border: \"1px solid \" + s.primaryButtonBackgroundPressed,\n color: s.primaryButtonTextPressed,\n selectors: (_c = {},\n _c[HighContrastSelector] = __assign({ color: 'Window', backgroundColor: 'WindowText', borderColor: 'WindowText' }, getHighContrastNoAdjustStyle()),\n _c),\n },\n rootExpanded: {\n backgroundColor: s.primaryButtonBackgroundPressed,\n color: s.primaryButtonTextPressed,\n },\n rootChecked: {\n backgroundColor: s.primaryButtonBackgroundPressed,\n color: s.primaryButtonTextPressed,\n },\n rootCheckedHovered: {\n backgroundColor: s.primaryButtonBackgroundPressed,\n color: s.primaryButtonTextPressed,\n },\n rootDisabled: {\n color: s.primaryButtonTextDisabled,\n backgroundColor: s.primaryButtonBackgroundDisabled,\n selectors: (_d = {},\n _d[HighContrastSelector] = {\n color: 'GrayText',\n borderColor: 'GrayText',\n backgroundColor: 'Window',\n },\n _d),\n },\n // Split button styles\n splitButtonContainer: {\n selectors: (_e = {},\n _e[HighContrastSelector] = {\n border: 'none',\n },\n _e),\n },\n splitButtonDivider: __assign(__assign({}, splitButtonDividerBaseStyles()), { backgroundColor: p.white, selectors: (_f = {},\n _f[HighContrastSelector] = {\n backgroundColor: 'Window',\n },\n _f) }),\n splitButtonMenuButton: {\n backgroundColor: s.primaryButtonBackground,\n color: s.primaryButtonText,\n selectors: (_g = {},\n _g[HighContrastSelector] = {\n backgroundColor: 'WindowText',\n },\n _g[':hover'] = {\n backgroundColor: s.primaryButtonBackgroundHovered,\n selectors: (_h = {},\n _h[HighContrastSelector] = {\n color: 'Highlight',\n },\n _h),\n },\n _g),\n },\n splitButtonMenuButtonDisabled: {\n backgroundColor: s.primaryButtonBackgroundDisabled,\n selectors: {\n ':hover': {\n backgroundColor: s.primaryButtonBackgroundDisabled,\n },\n },\n },\n splitButtonMenuButtonChecked: {\n backgroundColor: s.primaryButtonBackgroundPressed,\n selectors: {\n ':hover': {\n backgroundColor: s.primaryButtonBackgroundPressed,\n },\n },\n },\n splitButtonMenuButtonExpanded: {\n backgroundColor: s.primaryButtonBackgroundPressed,\n selectors: {\n ':hover': {\n backgroundColor: s.primaryButtonBackgroundPressed,\n },\n },\n },\n splitButtonMenuIcon: {\n color: s.primaryButtonText,\n },\n splitButtonMenuIconDisabled: {\n color: p.neutralTertiary,\n selectors: (_j = {},\n _j[HighContrastSelector] = {\n color: 'GrayText',\n },\n _j),\n },\n };\n}\n//# sourceMappingURL=ButtonThemes.js.map","import { __assign } from \"tslib\";\nimport { concatStyleSets, getFocusStyle, HighContrastSelector, getHighContrastNoAdjustStyle } from '../../../Styling';\nimport { memoizeFunction } from '../../../Utilities';\nimport { getStyles as getBaseButtonStyles } from '../BaseButton.styles';\nimport { getStyles as getSplitButtonStyles } from '../SplitButton/SplitButton.styles';\nimport { ButtonGlobalClassNames } from '../BaseButton.classNames';\nexport var getStyles = memoizeFunction(function (theme, customStyles, focusInset, focusColor) {\n var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p;\n var baseButtonStyles = getBaseButtonStyles(theme);\n var baseSplitButtonStyles = getSplitButtonStyles(theme);\n var p = theme.palette, semanticColors = theme.semanticColors;\n var commandButtonHighContrastFocus = {\n left: 4,\n top: 4,\n bottom: 4,\n right: 4,\n border: 'none',\n };\n var commandButtonStyles = {\n root: [\n getFocusStyle(theme, {\n inset: 2,\n highContrastStyle: commandButtonHighContrastFocus,\n borderColor: 'transparent',\n }),\n theme.fonts.medium,\n {\n minWidth: '40px',\n backgroundColor: p.white,\n color: p.neutralPrimary,\n padding: '0 4px',\n border: 'none',\n borderRadius: 0,\n selectors: (_a = {},\n _a[HighContrastSelector] = {\n border: 'none',\n },\n _a),\n },\n ],\n rootHovered: {\n backgroundColor: p.neutralLighter,\n color: p.neutralDark,\n selectors: (_b = {},\n _b[HighContrastSelector] = {\n color: 'Highlight',\n },\n _b[\".\" + ButtonGlobalClassNames.msButtonIcon] = {\n color: p.themeDarkAlt,\n },\n _b[\".\" + ButtonGlobalClassNames.msButtonMenuIcon] = {\n color: p.neutralPrimary,\n },\n _b),\n },\n rootPressed: {\n backgroundColor: p.neutralLight,\n color: p.neutralDark,\n selectors: (_c = {},\n _c[\".\" + ButtonGlobalClassNames.msButtonIcon] = {\n color: p.themeDark,\n },\n _c[\".\" + ButtonGlobalClassNames.msButtonMenuIcon] = {\n color: p.neutralPrimary,\n },\n _c),\n },\n rootChecked: {\n backgroundColor: p.neutralLight,\n color: p.neutralDark,\n selectors: (_d = {},\n _d[\".\" + ButtonGlobalClassNames.msButtonIcon] = {\n color: p.themeDark,\n },\n _d[\".\" + ButtonGlobalClassNames.msButtonMenuIcon] = {\n color: p.neutralPrimary,\n },\n _d),\n },\n rootCheckedHovered: {\n backgroundColor: p.neutralQuaternaryAlt,\n selectors: (_e = {},\n _e[\".\" + ButtonGlobalClassNames.msButtonIcon] = {\n color: p.themeDark,\n },\n _e[\".\" + ButtonGlobalClassNames.msButtonMenuIcon] = {\n color: p.neutralPrimary,\n },\n _e),\n },\n rootExpanded: {\n backgroundColor: p.neutralLight,\n color: p.neutralDark,\n selectors: (_f = {},\n _f[\".\" + ButtonGlobalClassNames.msButtonIcon] = {\n color: p.themeDark,\n },\n _f[\".\" + ButtonGlobalClassNames.msButtonMenuIcon] = {\n color: p.neutralPrimary,\n },\n _f),\n },\n rootExpandedHovered: {\n backgroundColor: p.neutralQuaternaryAlt,\n },\n rootDisabled: {\n backgroundColor: p.white,\n selectors: (_g = {},\n _g[\".\" + ButtonGlobalClassNames.msButtonIcon] = {\n color: semanticColors.disabledBodySubtext,\n selectors: (_h = {},\n _h[HighContrastSelector] = __assign({ color: 'GrayText' }, getHighContrastNoAdjustStyle()),\n _h),\n },\n _g[HighContrastSelector] = __assign({ color: 'GrayText', backgroundColor: 'Window' }, getHighContrastNoAdjustStyle()),\n _g),\n },\n // Split button styles\n splitButtonContainer: {\n height: '100%',\n selectors: (_j = {},\n _j[HighContrastSelector] = {\n border: 'none',\n },\n _j),\n },\n splitButtonDividerDisabled: {\n selectors: (_k = {},\n _k[HighContrastSelector] = {\n backgroundColor: 'Window',\n },\n _k),\n },\n splitButtonDivider: {\n backgroundColor: p.neutralTertiaryAlt,\n },\n splitButtonMenuButton: {\n backgroundColor: p.white,\n border: 'none',\n borderTopRightRadius: '0',\n borderBottomRightRadius: '0',\n color: p.neutralSecondary,\n selectors: {\n ':hover': {\n backgroundColor: p.neutralLighter,\n color: p.neutralDark,\n selectors: (_l = {},\n _l[HighContrastSelector] = {\n color: 'Highlight',\n },\n _l[\".\" + ButtonGlobalClassNames.msButtonIcon] = {\n color: p.neutralPrimary,\n },\n _l),\n },\n ':active': {\n backgroundColor: p.neutralLight,\n selectors: (_m = {},\n _m[\".\" + ButtonGlobalClassNames.msButtonIcon] = {\n color: p.neutralPrimary,\n },\n _m),\n },\n },\n },\n splitButtonMenuButtonDisabled: {\n backgroundColor: p.white,\n selectors: (_o = {},\n _o[HighContrastSelector] = __assign({ color: 'GrayText', border: 'none', backgroundColor: 'Window' }, getHighContrastNoAdjustStyle()),\n _o),\n },\n splitButtonMenuButtonChecked: {\n backgroundColor: p.neutralLight,\n color: p.neutralDark,\n selectors: {\n ':hover': {\n backgroundColor: p.neutralQuaternaryAlt,\n },\n },\n },\n splitButtonMenuButtonExpanded: {\n backgroundColor: p.neutralLight,\n color: p.black,\n selectors: {\n ':hover': {\n backgroundColor: p.neutralQuaternaryAlt,\n },\n },\n },\n splitButtonMenuIcon: {\n color: p.neutralPrimary,\n },\n splitButtonMenuIconDisabled: {\n color: p.neutralTertiary,\n },\n label: {\n fontWeight: 'normal', // theme.fontWeights.semibold,\n },\n icon: {\n color: p.themePrimary,\n },\n menuIcon: (_p = {\n color: p.neutralSecondary\n },\n _p[HighContrastSelector] = {\n color: 'GrayText',\n },\n _p),\n };\n return concatStyleSets(baseButtonStyles, baseSplitButtonStyles, commandButtonStyles, customStyles);\n});\n//# sourceMappingURL=CommandBarButton.styles.js.map","import { __assign, __decorate, __extends } from \"tslib\";\nimport * as React from 'react';\nimport { BaseButton } from '../BaseButton';\nimport { customizable, nullRender } from '../../../Utilities';\nimport { getStyles } from './CommandBarButton.styles';\n/**\n * {@docCategory Button}\n */\nvar CommandBarButton = /** @class */ (function (_super) {\n __extends(CommandBarButton, _super);\n function CommandBarButton() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n CommandBarButton.prototype.render = function () {\n var _a = this.props, styles = _a.styles, theme = _a.theme;\n return (React.createElement(BaseButton, __assign({}, this.props, { variantClassName: \"ms-Button--commandBar\", styles: getStyles(theme, styles), onRenderDescription: nullRender })));\n };\n CommandBarButton = __decorate([\n customizable('CommandBarButton', ['theme', 'styles'], true)\n ], CommandBarButton);\n return CommandBarButton;\n}(React.Component));\nexport { CommandBarButton };\n//# sourceMappingURL=CommandBarButton.js.map","import { ActionButton } from '../ActionButton/ActionButton';\n/**\n * {@docCategory Button}\n */\nexport var CommandButton = ActionButton;\n//# sourceMappingURL=CommandButton.js.map","import { concatStyleSets, FontWeights } from '../../../Styling';\nimport { memoizeFunction } from '../../../Utilities';\nimport { getStyles as getBaseButtonStyles } from '../BaseButton.styles';\nimport { getStyles as getSplitButtonStyles } from '../SplitButton/SplitButton.styles';\nimport { primaryStyles, standardStyles } from '../ButtonThemes';\nvar DEFAULT_BUTTON_HEIGHT = '32px';\nvar DEFAULT_BUTTON_MIN_WIDTH = '80px';\nexport var getStyles = memoizeFunction(function (theme, customStyles, primary) {\n var baseButtonStyles = getBaseButtonStyles(theme);\n var splitButtonStyles = getSplitButtonStyles(theme);\n var defaultButtonStyles = {\n root: {\n minWidth: DEFAULT_BUTTON_MIN_WIDTH,\n height: DEFAULT_BUTTON_HEIGHT,\n },\n label: {\n fontWeight: FontWeights.semibold,\n },\n };\n return concatStyleSets(baseButtonStyles, defaultButtonStyles, primary ? primaryStyles(theme) : standardStyles(theme), splitButtonStyles, customStyles);\n});\n//# sourceMappingURL=DefaultButton.styles.js.map","import { __assign, __decorate, __extends } from \"tslib\";\nimport * as React from 'react';\nimport { BaseButton } from '../BaseButton';\nimport { customizable, nullRender } from '../../../Utilities';\nimport { getStyles } from './DefaultButton.styles';\n/**\n * {@docCategory Button}\n */\nvar DefaultButton = /** @class */ (function (_super) {\n __extends(DefaultButton, _super);\n function DefaultButton() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n DefaultButton.prototype.render = function () {\n var _a = this.props, _b = _a.primary, primary = _b === void 0 ? false : _b, styles = _a.styles, theme = _a.theme;\n return (React.createElement(BaseButton, __assign({}, this.props, { variantClassName: primary ? 'ms-Button--primary' : 'ms-Button--default', styles: getStyles(theme, styles, primary), onRenderDescription: nullRender })));\n };\n DefaultButton = __decorate([\n customizable('DefaultButton', ['theme', 'styles'], true)\n ], DefaultButton);\n return DefaultButton;\n}(React.Component));\nexport { DefaultButton };\n//# sourceMappingURL=DefaultButton.js.map","import { concatStyleSets, HighContrastSelector } from '../../../Styling';\nimport { memoizeFunction } from '../../../Utilities';\nimport { getStyles as getBaseButtonStyles } from '../BaseButton.styles';\nimport { getStyles as getSplitButtonStyles } from '../SplitButton/SplitButton.styles';\nexport var getStyles = memoizeFunction(function (theme, customStyles) {\n var _a;\n var baseButtonStyles = getBaseButtonStyles(theme);\n var splitButtonStyles = getSplitButtonStyles(theme);\n var palette = theme.palette, semanticColors = theme.semanticColors;\n var iconButtonStyles = {\n root: {\n padding: '0 4px',\n width: '32px',\n height: '32px',\n backgroundColor: 'transparent',\n border: 'none',\n color: semanticColors.link,\n },\n rootHovered: {\n color: palette.themeDarkAlt,\n backgroundColor: palette.neutralLighter,\n selectors: (_a = {},\n _a[HighContrastSelector] = {\n borderColor: 'Highlight',\n color: 'Highlight',\n },\n _a),\n },\n rootHasMenu: {\n width: 'auto',\n },\n rootPressed: {\n color: palette.themeDark,\n backgroundColor: palette.neutralLight,\n },\n rootExpanded: {\n color: palette.themeDark,\n backgroundColor: palette.neutralLight,\n },\n rootChecked: {\n color: palette.themeDark,\n backgroundColor: palette.neutralLight,\n },\n rootCheckedHovered: {\n color: palette.themeDark,\n backgroundColor: palette.neutralQuaternaryAlt,\n },\n rootDisabled: {\n color: palette.neutralTertiaryAlt,\n },\n };\n return concatStyleSets(baseButtonStyles, iconButtonStyles, splitButtonStyles, customStyles);\n});\n//# sourceMappingURL=IconButton.styles.js.map","import { __assign, __decorate, __extends } from \"tslib\";\nimport * as React from 'react';\nimport { BaseButton } from '../BaseButton';\nimport { customizable, nullRender } from '../../../Utilities';\nimport { getStyles } from './IconButton.styles';\n/**\n * {@docCategory Button}\n */\nvar IconButton = /** @class */ (function (_super) {\n __extends(IconButton, _super);\n function IconButton() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n IconButton.prototype.render = function () {\n var _a = this.props, styles = _a.styles, theme = _a.theme;\n return (React.createElement(BaseButton, __assign({}, this.props, { variantClassName: \"ms-Button--icon\", styles: getStyles(theme, styles), onRenderText: nullRender, onRenderDescription: nullRender })));\n };\n IconButton = __decorate([\n customizable('IconButton', ['theme', 'styles'], true)\n ], IconButton);\n return IconButton;\n}(React.Component));\nexport { IconButton };\n//# sourceMappingURL=IconButton.js.map","import { __assign, __decorate, __extends } from \"tslib\";\nimport * as React from 'react';\nimport { customizable, nullRender } from '../../../Utilities';\nimport { DefaultButton } from '../DefaultButton/DefaultButton';\n/**\n * {@docCategory Button}\n */\nvar PrimaryButton = /** @class */ (function (_super) {\n __extends(PrimaryButton, _super);\n function PrimaryButton() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n PrimaryButton.prototype.render = function () {\n return React.createElement(DefaultButton, __assign({}, this.props, { primary: true, onRenderDescription: nullRender }));\n };\n PrimaryButton = __decorate([\n customizable('PrimaryButton', ['theme', 'styles'], true)\n ], PrimaryButton);\n return PrimaryButton;\n}(React.Component));\nexport { PrimaryButton };\n//# sourceMappingURL=PrimaryButton.js.map","import { memoizeFunction } from '../../../Utilities';\nimport { mergeStyles } from '../../../Styling';\nexport var getSplitButtonClassNames = memoizeFunction(function (styles, disabled, expanded, checked, primaryDisabled) {\n return {\n root: mergeStyles(styles.splitButtonMenuButton, expanded && [styles.splitButtonMenuButtonExpanded], disabled && [styles.splitButtonMenuButtonDisabled], checked && !disabled && [styles.splitButtonMenuButtonChecked], primaryDisabled &&\n !disabled && [\n {\n selectors: {\n ':focus': styles.splitButtonMenuFocused,\n },\n },\n ]),\n splitButtonContainer: mergeStyles(styles.splitButtonContainer, !disabled &&\n checked && [\n styles.splitButtonContainerChecked,\n {\n selectors: {\n ':hover': styles.splitButtonContainerCheckedHovered,\n },\n },\n ], !disabled &&\n !checked && [\n {\n selectors: {\n ':hover': styles.splitButtonContainerHovered,\n ':focus': styles.splitButtonContainerFocused,\n },\n },\n ], disabled && styles.splitButtonContainerDisabled),\n icon: mergeStyles(styles.splitButtonMenuIcon, disabled && styles.splitButtonMenuIconDisabled, !disabled && primaryDisabled && styles.splitButtonMenuIcon),\n flexContainer: mergeStyles(styles.splitButtonFlexContainer),\n divider: mergeStyles(styles.splitButtonDivider, (primaryDisabled || disabled) && styles.splitButtonDividerDisabled),\n };\n});\n//# sourceMappingURL=SplitButton.classNames.js.map","import { __assign } from \"tslib\";\nimport { HighContrastSelector, concatStyleSets, getFocusStyle, getHighContrastNoAdjustStyle } from '../../../Styling';\nimport { memoizeFunction } from '../../../Utilities';\nexport var getStyles = memoizeFunction(function (theme, customStyles) {\n var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o;\n var effects = theme.effects, palette = theme.palette, semanticColors = theme.semanticColors;\n var buttonHighContrastFocus = {\n left: -2,\n top: -2,\n bottom: -2,\n right: -2,\n border: 'none',\n };\n var splitButtonDividerBaseStyles = {\n position: 'absolute',\n width: 1,\n right: 31,\n top: 8,\n bottom: 8,\n };\n var splitButtonStyles = {\n splitButtonContainer: [\n getFocusStyle(theme, { highContrastStyle: buttonHighContrastFocus, inset: 2 }),\n {\n display: 'inline-flex',\n selectors: {\n '.ms-Button--default': {\n borderTopRightRadius: '0',\n borderBottomRightRadius: '0',\n borderRight: 'none',\n },\n '.ms-Button--primary': {\n borderTopRightRadius: '0',\n borderBottomRightRadius: '0',\n border: 'none',\n selectors: (_a = {},\n _a[HighContrastSelector] = __assign({ color: 'WindowText', backgroundColor: 'Window', border: '1px solid WindowText', borderRightWidth: '0' }, getHighContrastNoAdjustStyle()),\n _a),\n },\n '.ms-Button--primary + .ms-Button': {\n border: 'none',\n selectors: (_b = {},\n _b[HighContrastSelector] = {\n border: '1px solid WindowText',\n borderLeftWidth: '0',\n },\n _b),\n },\n },\n },\n ],\n splitButtonContainerHovered: {\n selectors: {\n '.ms-Button--primary': {\n selectors: (_c = {},\n _c[HighContrastSelector] = {\n color: 'Window',\n backgroundColor: 'Highlight',\n },\n _c),\n },\n '.ms-Button.is-disabled': {\n color: semanticColors.buttonTextDisabled,\n selectors: (_d = {},\n _d[HighContrastSelector] = {\n color: 'GrayText',\n borderColor: 'GrayText',\n backgroundColor: 'Window',\n },\n _d),\n },\n },\n },\n splitButtonContainerChecked: {\n selectors: {\n '.ms-Button--primary': {\n selectors: (_e = {},\n _e[HighContrastSelector] = __assign({ color: 'Window', backgroundColor: 'WindowText' }, getHighContrastNoAdjustStyle()),\n _e),\n },\n },\n },\n splitButtonContainerCheckedHovered: {\n selectors: {\n '.ms-Button--primary': {\n selectors: (_f = {},\n _f[HighContrastSelector] = __assign({ color: 'Window', backgroundColor: 'WindowText' }, getHighContrastNoAdjustStyle()),\n _f),\n },\n },\n },\n splitButtonContainerFocused: {\n outline: 'none!important',\n },\n splitButtonMenuButton: (_g = {\n padding: 6,\n height: 'auto',\n boxSizing: 'border-box',\n borderRadius: 0,\n borderTopRightRadius: effects.roundedCorner2,\n borderBottomRightRadius: effects.roundedCorner2,\n border: \"1px solid \" + palette.neutralSecondaryAlt,\n borderLeft: 'none',\n outline: 'transparent',\n userSelect: 'none',\n display: 'inline-block',\n textDecoration: 'none',\n textAlign: 'center',\n cursor: 'pointer',\n verticalAlign: 'top',\n width: 32,\n marginLeft: -1,\n marginTop: 0,\n marginRight: 0,\n marginBottom: 0\n },\n _g[HighContrastSelector] = {\n '.ms-Button-menuIcon': {\n color: 'WindowText',\n },\n },\n _g),\n splitButtonDivider: __assign(__assign({}, splitButtonDividerBaseStyles), { selectors: (_h = {},\n _h[HighContrastSelector] = {\n backgroundColor: 'WindowText',\n },\n _h) }),\n splitButtonDividerDisabled: __assign(__assign({}, splitButtonDividerBaseStyles), { selectors: (_j = {},\n _j[HighContrastSelector] = {\n backgroundColor: 'GrayText',\n },\n _j) }),\n splitButtonMenuButtonDisabled: {\n pointerEvents: 'none',\n border: 'none',\n selectors: (_k = {\n ':hover': {\n cursor: 'default',\n },\n '.ms-Button--primary': {\n selectors: (_l = {},\n _l[HighContrastSelector] = {\n color: 'GrayText',\n borderColor: 'GrayText',\n backgroundColor: 'Window',\n },\n _l),\n },\n '.ms-Button-menuIcon': {\n selectors: (_m = {},\n _m[HighContrastSelector] = {\n color: 'GrayText',\n },\n _m),\n }\n },\n _k[HighContrastSelector] = {\n color: 'GrayText',\n border: '1px solid GrayText',\n backgroundColor: 'Window',\n },\n _k),\n },\n splitButtonFlexContainer: {\n display: 'flex',\n height: '100%',\n flexWrap: 'nowrap',\n justifyContent: 'center',\n alignItems: 'center',\n },\n splitButtonContainerDisabled: {\n outline: 'none',\n border: 'none',\n selectors: (_o = {},\n _o[HighContrastSelector] = __assign({ color: 'GrayText', borderColor: 'GrayText', backgroundColor: 'Window' }, getHighContrastNoAdjustStyle()),\n _o),\n },\n splitButtonMenuFocused: __assign({}, getFocusStyle(theme, { highContrastStyle: buttonHighContrastFocus, inset: 2 })),\n };\n return concatStyleSets(splitButtonStyles, customStyles);\n});\n//# sourceMappingURL=SplitButton.styles.js.map","/**\n * {@docCategory Button}\n */\nexport var ElementType;\n(function (ElementType) {\n /** `button` element. */\n ElementType[ElementType[\"button\"] = 0] = \"button\";\n /** `a` element. */\n ElementType[ElementType[\"anchor\"] = 1] = \"anchor\";\n})(ElementType || (ElementType = {}));\n/**\n * {@docCategory Button}\n */\nexport var ButtonType;\n(function (ButtonType) {\n ButtonType[ButtonType[\"normal\"] = 0] = \"normal\";\n ButtonType[ButtonType[\"primary\"] = 1] = \"primary\";\n ButtonType[ButtonType[\"hero\"] = 2] = \"hero\";\n ButtonType[ButtonType[\"compound\"] = 3] = \"compound\";\n ButtonType[ButtonType[\"command\"] = 4] = \"command\";\n ButtonType[ButtonType[\"icon\"] = 5] = \"icon\";\n ButtonType[ButtonType[\"default\"] = 6] = \"default\";\n})(ButtonType || (ButtonType = {}));\n//# sourceMappingURL=Button.types.js.map","import { __assign } from \"tslib\";\nimport { concatStyleSets, FontWeights, HighContrastSelector, getHighContrastNoAdjustStyle } from '../../../Styling';\nimport { memoizeFunction } from '../../../Utilities';\nimport { getStyles as getBaseButtonStyles } from '../BaseButton.styles';\nimport { getStyles as getSplitButtonStyles } from '../SplitButton/SplitButton.styles';\nimport { primaryStyles, standardStyles } from '../ButtonThemes';\nexport var getStyles = memoizeFunction(function (theme, customStyles, primary) {\n var _a, _b, _c, _d, _e;\n var fonts = theme.fonts, palette = theme.palette;\n var baseButtonStyles = getBaseButtonStyles(theme);\n var splitButtonStyles = getSplitButtonStyles(theme);\n var compoundButtonStyles = {\n root: {\n maxWidth: '280px',\n minHeight: '72px',\n height: 'auto',\n padding: '16px 12px',\n },\n flexContainer: {\n flexDirection: 'row',\n alignItems: 'flex-start',\n minWidth: '100%',\n margin: '',\n },\n textContainer: {\n textAlign: 'left',\n },\n icon: {\n fontSize: '2em',\n lineHeight: '1em',\n height: '1em',\n margin: '0px 8px 0px 0px',\n flexBasis: '1em',\n flexShrink: '0',\n },\n label: {\n margin: '0 0 5px',\n lineHeight: '100%',\n fontWeight: FontWeights.semibold,\n },\n description: [\n fonts.small,\n {\n lineHeight: '100%',\n },\n ],\n };\n var standardCompoundTheme = {\n description: {\n color: palette.neutralSecondary,\n },\n descriptionHovered: {\n color: palette.neutralDark,\n },\n descriptionPressed: {\n color: 'inherit',\n },\n descriptionChecked: {\n color: 'inherit',\n },\n descriptionDisabled: {\n color: 'inherit',\n },\n };\n var primaryCompoundTheme = {\n description: {\n color: palette.white,\n selectors: (_a = {},\n _a[HighContrastSelector] = __assign({ backgroundColor: 'WindowText', color: 'Window' }, getHighContrastNoAdjustStyle()),\n _a),\n },\n descriptionHovered: {\n color: palette.white,\n selectors: (_b = {},\n _b[HighContrastSelector] = {\n backgroundColor: 'Highlight',\n color: 'Window',\n },\n _b),\n },\n descriptionPressed: {\n color: 'inherit',\n selectors: (_c = {},\n _c[HighContrastSelector] = __assign({ color: 'Window', backgroundColor: 'WindowText' }, getHighContrastNoAdjustStyle()),\n _c),\n },\n descriptionChecked: {\n color: 'inherit',\n selectors: (_d = {},\n _d[HighContrastSelector] = __assign({ color: 'Window', backgroundColor: 'WindowText' }, getHighContrastNoAdjustStyle()),\n _d),\n },\n descriptionDisabled: {\n color: 'inherit',\n selectors: (_e = {},\n _e[HighContrastSelector] = {\n color: 'inherit',\n },\n _e),\n },\n };\n return concatStyleSets(baseButtonStyles, compoundButtonStyles, primary ? primaryStyles(theme) : standardStyles(theme), primary ? primaryCompoundTheme : standardCompoundTheme, splitButtonStyles, customStyles);\n});\n//# sourceMappingURL=CompoundButton.styles.js.map","import { __assign, __decorate, __extends } from \"tslib\";\nimport * as React from 'react';\nimport { BaseButton } from '../BaseButton';\nimport { customizable } from '../../../Utilities';\nimport { getStyles } from './CompoundButton.styles';\n/**\n * {@docCategory Button}\n */\nvar CompoundButton = /** @class */ (function (_super) {\n __extends(CompoundButton, _super);\n function CompoundButton() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n CompoundButton.prototype.render = function () {\n var _a = this.props, _b = _a.primary, primary = _b === void 0 ? false : _b, styles = _a.styles, theme = _a.theme;\n return (React.createElement(BaseButton, __assign({}, this.props, { variantClassName: primary ? 'ms-Button--compoundPrimary' : 'ms-Button--compound', styles: getStyles(theme, styles, primary) })));\n };\n CompoundButton = __decorate([\n customizable('CompoundButton', ['theme', 'styles'], true)\n ], CompoundButton);\n return CompoundButton;\n}(React.Component));\nexport { CompoundButton };\n//# sourceMappingURL=CompoundButton.js.map","import { __assign, __extends } from \"tslib\";\nimport * as React from 'react';\nimport { warn } from '../../Utilities';\nimport { ButtonType } from './Button.types';\nimport { DefaultButton } from './DefaultButton/DefaultButton';\nimport { ActionButton } from './ActionButton/ActionButton';\nimport { CompoundButton } from './CompoundButton/CompoundButton';\nimport { IconButton } from './IconButton/IconButton';\nimport { PrimaryButton } from './PrimaryButton/PrimaryButton';\n/**\n * This class is deprecated. Use the individual *Button components instead.\n * @deprecated Use the individual *Button components instead.\n * {@docCategory Button}\n */\nvar Button = /** @class */ (function (_super) {\n __extends(Button, _super);\n function Button(props) {\n var _this = _super.call(this, props) || this;\n warn(\"The Button component has been deprecated. Use specific variants instead. \" +\n \"(PrimaryButton, DefaultButton, IconButton, ActionButton, etc.)\");\n return _this;\n }\n Button.prototype.render = function () {\n var props = this.props;\n // eslint-disable-next-line deprecation/deprecation\n switch (props.buttonType) {\n case ButtonType.command:\n return React.createElement(ActionButton, __assign({}, props));\n case ButtonType.compound:\n return React.createElement(CompoundButton, __assign({}, props));\n case ButtonType.icon:\n return React.createElement(IconButton, __assign({}, props));\n case ButtonType.primary:\n return React.createElement(PrimaryButton, __assign({}, props));\n default:\n return React.createElement(DefaultButton, __assign({}, props));\n }\n };\n return Button;\n}(React.Component));\nexport { Button };\n//# sourceMappingURL=Button.js.map","import { concatStyleSets, getFocusStyle } from '../../../Styling';\nimport { memoizeFunction } from '../../../Utilities';\nexport var getStyles = memoizeFunction(function (theme, customStyles) {\n return concatStyleSets({\n root: [\n getFocusStyle(theme, {\n inset: 1,\n highContrastStyle: {\n outlineOffset: '-4px',\n outline: '1px solid Window',\n },\n borderColor: 'transparent',\n }),\n {\n height: 24,\n },\n ],\n }, customStyles);\n});\n//# sourceMappingURL=MessageBarButton.styles.js.map","import { __assign, __decorate, __extends } from \"tslib\";\nimport * as React from 'react';\nimport { DefaultButton } from '../DefaultButton/DefaultButton';\nimport { customizable, nullRender } from '../../../Utilities';\nimport { getStyles } from './MessageBarButton.styles';\n/**\n * {@docCategory MessageBar}\n */\nvar MessageBarButton = /** @class */ (function (_super) {\n __extends(MessageBarButton, _super);\n function MessageBarButton() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n MessageBarButton.prototype.render = function () {\n var _a = this.props, styles = _a.styles, theme = _a.theme;\n return React.createElement(DefaultButton, __assign({}, this.props, { styles: getStyles(theme, styles), onRenderDescription: nullRender }));\n };\n MessageBarButton = __decorate([\n customizable('MessageBarButton', ['theme', 'styles'], true)\n ], MessageBarButton);\n return MessageBarButton;\n}(React.Component));\nexport { MessageBarButton };\n//# sourceMappingURL=MessageBarButton.js.map","import * as React from 'react';\nimport { css, findIndex } from '@fluentui/utilities';\nimport { DAYS_IN_WEEK } from '@fluentui/date-time-utilities';\nexport var CalendarMonthHeaderRow = function (props) {\n var showWeekNumbers = props.showWeekNumbers, strings = props.strings, firstDayOfWeek = props.firstDayOfWeek, allFocusable = props.allFocusable, weeksToShow = props.weeksToShow, weeks = props.weeks, classNames = props.classNames;\n var dayLabels = strings.shortDays.slice();\n var firstOfMonthIndex = findIndex(weeks[1], function (day) { return day.originalDate.getDate() === 1; });\n if (weeksToShow === 1 && firstOfMonthIndex >= 0) {\n // if we only show one week, replace the header with short month name\n var firstOfMonthIndexOffset = (firstOfMonthIndex + firstDayOfWeek) % DAYS_IN_WEEK;\n dayLabels[firstOfMonthIndexOffset] = strings.shortMonths[weeks[1][firstOfMonthIndex].originalDate.getMonth()];\n }\n return (React.createElement(\"tr\", null,\n showWeekNumbers && React.createElement(\"th\", { className: classNames.dayCell }),\n dayLabels.map(function (val, index) {\n var i = (index + firstDayOfWeek) % DAYS_IN_WEEK;\n var label = index === firstOfMonthIndex ? strings.days[i] + ' ' + dayLabels[i] : strings.days[i];\n return (React.createElement(\"th\", { className: css(classNames.dayCell, classNames.weekDayLabelCell), scope: \"col\", key: dayLabels[i] + ' ' + index, title: label, \"aria-label\": label, \"data-is-focusable\": allFocusable ? true : undefined }, dayLabels[i]));\n })));\n};\n//# sourceMappingURL=CalendarMonthHeaderRow.js.map","import * as React from 'react';\nimport { KeyCodes, css, getRTLSafeKeyCode } from '@fluentui/utilities';\nimport { addDays, addWeeks, compareDates, findAvailableDate, DateRangeType } from '@fluentui/date-time-utilities';\nexport var CalendarGridDayCell = function (props) {\n var _a;\n var navigatedDate = props.navigatedDate, dateTimeFormatter = props.dateTimeFormatter, allFocusable = props.allFocusable, strings = props.strings, activeDescendantId = props.activeDescendantId, navigatedDayRef = props.navigatedDayRef, calculateRoundedStyles = props.calculateRoundedStyles, weeks = props.weeks, classNames = props.classNames, day = props.day, dayIndex = props.dayIndex, weekIndex = props.weekIndex, weekCorners = props.weekCorners, ariaHidden = props.ariaHidden, customDayCellRef = props.customDayCellRef, dateRangeType = props.dateRangeType, daysToSelectInDayView = props.daysToSelectInDayView, onSelectDate = props.onSelectDate, restrictedDates = props.restrictedDates, minDate = props.minDate, maxDate = props.maxDate, onNavigateDate = props.onNavigateDate, getDayInfosInRangeOfDay = props.getDayInfosInRangeOfDay, getRefsFromDayInfos = props.getRefsFromDayInfos;\n var cornerStyle = (_a = weekCorners === null || weekCorners === void 0 ? void 0 : weekCorners[weekIndex + '_' + dayIndex]) !== null && _a !== void 0 ? _a : '';\n var isNavigatedDate = compareDates(navigatedDate, day.originalDate);\n var navigateMonthEdge = function (ev, date) {\n var targetDate = undefined;\n var direction = 1; // by default search forward\n // eslint-disable-next-line deprecation/deprecation\n if (ev.which === KeyCodes.up) {\n targetDate = addWeeks(date, -1);\n direction = -1;\n // eslint-disable-next-line deprecation/deprecation\n }\n else if (ev.which === KeyCodes.down) {\n targetDate = addWeeks(date, 1);\n // eslint-disable-next-line deprecation/deprecation\n }\n else if (ev.which === getRTLSafeKeyCode(KeyCodes.left)) {\n targetDate = addDays(date, -1);\n direction = -1;\n // eslint-disable-next-line deprecation/deprecation\n }\n else if (ev.which === getRTLSafeKeyCode(KeyCodes.right)) {\n targetDate = addDays(date, 1);\n }\n if (!targetDate) {\n // if we couldn't find a target date at all, do nothing\n return;\n }\n var findAvailableDateOptions = {\n initialDate: date,\n targetDate: targetDate,\n direction: direction,\n restrictedDates: restrictedDates,\n minDate: minDate,\n maxDate: maxDate,\n };\n // target date is restricted, search in whatever direction until finding the next possible date,\n // stopping at boundaries\n var nextDate = findAvailableDate(findAvailableDateOptions);\n if (!nextDate) {\n // if no dates available in initial direction, try going backwards\n findAvailableDateOptions.direction = -direction;\n nextDate = findAvailableDate(findAvailableDateOptions);\n }\n // if the nextDate is still inside the same focusZone area, let the focusZone handle setting the focus so we\n // don't jump the view unnecessarily\n var isInCurrentView = weeks &&\n nextDate &&\n weeks.slice(1, weeks.length - 1).some(function (week) {\n return week.some(function (dayToCompare) {\n return compareDates(dayToCompare.originalDate, nextDate);\n });\n });\n if (isInCurrentView) {\n return;\n }\n // else, fire navigation on the date to change the view to show it\n if (nextDate) {\n onNavigateDate(nextDate, true);\n ev.preventDefault();\n }\n };\n var onMouseOverDay = function (ev) {\n var dayInfos = getDayInfosInRangeOfDay(day);\n var dayRefs = getRefsFromDayInfos(dayInfos);\n dayRefs.forEach(function (dayRef, index) {\n var _a;\n if (dayRef) {\n dayRef.classList.add('ms-CalendarDay-hoverStyle');\n if (!dayInfos[index].isSelected &&\n dateRangeType === DateRangeType.Day &&\n daysToSelectInDayView &&\n daysToSelectInDayView > 1) {\n // remove the static classes first to overwrite them\n dayRef.classList.remove(classNames.bottomLeftCornerDate, classNames.bottomRightCornerDate, classNames.topLeftCornerDate, classNames.topRightCornerDate);\n var classNamesToAdd = calculateRoundedStyles(classNames, false, false, index > 0, index < dayRefs.length - 1).trim();\n if (classNamesToAdd) {\n (_a = dayRef.classList).add.apply(_a, classNamesToAdd.split(' '));\n }\n }\n }\n });\n };\n var onMouseDownDay = function (ev) {\n var dayInfos = getDayInfosInRangeOfDay(day);\n var dayRefs = getRefsFromDayInfos(dayInfos);\n dayRefs.forEach(function (dayRef) {\n if (dayRef) {\n dayRef.classList.add('ms-CalendarDay-pressedStyle');\n }\n });\n };\n var onMouseUpDay = function (ev) {\n var dayInfos = getDayInfosInRangeOfDay(day);\n var dayRefs = getRefsFromDayInfos(dayInfos);\n dayRefs.forEach(function (dayRef) {\n if (dayRef) {\n dayRef.classList.remove('ms-CalendarDay-pressedStyle');\n }\n });\n };\n var onMouseOutDay = function (ev) {\n var dayInfos = getDayInfosInRangeOfDay(day);\n var dayRefs = getRefsFromDayInfos(dayInfos);\n dayRefs.forEach(function (dayRef, index) {\n var _a;\n if (dayRef) {\n dayRef.classList.remove('ms-CalendarDay-hoverStyle');\n dayRef.classList.remove('ms-CalendarDay-pressedStyle');\n if (!dayInfos[index].isSelected &&\n dateRangeType === DateRangeType.Day &&\n daysToSelectInDayView &&\n daysToSelectInDayView > 1) {\n var classNamesToAdd = calculateRoundedStyles(classNames, false, false, index > 0, index < dayRefs.length - 1).trim();\n if (classNamesToAdd) {\n (_a = dayRef.classList).remove.apply(_a, classNamesToAdd.split(' '));\n }\n }\n }\n });\n };\n var onDayKeyDown = function (ev) {\n // eslint-disable-next-line deprecation/deprecation\n if (ev.which === KeyCodes.enter) {\n onSelectDate === null || onSelectDate === void 0 ? void 0 : onSelectDate(day.originalDate);\n }\n else {\n navigateMonthEdge(ev, day.originalDate);\n }\n };\n var ariaLabel = day.originalDate.getDate() +\n ', ' +\n strings.months[day.originalDate.getMonth()] +\n ', ' +\n day.originalDate.getFullYear();\n if (day.isMarked) {\n ariaLabel = ariaLabel + ', ' + strings.dayMarkedAriaLabel;\n }\n return (React.createElement(\"td\", { className: css(classNames.dayCell, weekCorners && cornerStyle, day.isSelected && classNames.daySelected, day.isSelected && 'ms-CalendarDay-daySelected', !day.isInBounds && classNames.dayOutsideBounds, !day.isInMonth && classNames.dayOutsideNavigatedMonth), ref: function (element) {\n customDayCellRef === null || customDayCellRef === void 0 ? void 0 : customDayCellRef(element, day.originalDate, classNames);\n day.setRef(element);\n }, \"aria-hidden\": ariaHidden, \"aria-disabled\": !ariaHidden && !day.isInBounds, onClick: day.isInBounds && !ariaHidden ? day.onSelected : undefined, onMouseOver: !ariaHidden ? onMouseOverDay : undefined, onMouseDown: !ariaHidden ? onMouseDownDay : undefined, onMouseUp: !ariaHidden ? onMouseUpDay : undefined, onMouseOut: !ariaHidden ? onMouseOutDay : undefined, onKeyDown: !ariaHidden ? onDayKeyDown : undefined, role: \"gridcell\", tabIndex: isNavigatedDate ? 0 : undefined, \"aria-readonly\": \"true\", \"aria-current\": day.isSelected ? 'date' : undefined, \"aria-selected\": day.isInBounds ? day.isSelected : undefined, \"data-is-focusable\": !ariaHidden && (allFocusable || (day.isInBounds ? true : undefined)) },\n React.createElement(\"button\", { key: day.key + 'button', \"aria-hidden\": ariaHidden, className: css(classNames.dayButton, day.isToday && classNames.dayIsToday, day.isToday && 'ms-CalendarDay-dayIsToday'), \"aria-label\": ariaLabel, id: isNavigatedDate ? activeDescendantId : undefined, ref: isNavigatedDate ? navigatedDayRef : undefined, disabled: !ariaHidden && !day.isInBounds, type: \"button\", tabIndex: -1, \"data-is-focusable\": \"false\" },\n React.createElement(\"span\", { \"aria-hidden\": \"true\" }, dateTimeFormatter.formatDay(day.originalDate)),\n day.isMarked && React.createElement(\"div\", { \"aria-hidden\": \"true\", className: classNames.dayMarker }))));\n};\n//# sourceMappingURL=CalendarGridDayCell.js.map","import { __assign } from \"tslib\";\nimport * as React from 'react';\nimport { format } from '@fluentui/utilities';\nimport { getWeekNumbersInMonth } from '@fluentui/date-time-utilities';\nimport { CalendarGridDayCell } from './CalendarGridDayCell';\nexport var CalendarGridRow = function (props) {\n var classNames = props.classNames, week = props.week, weeks = props.weeks, weekIndex = props.weekIndex, rowClassName = props.rowClassName, ariaRole = props.ariaRole, showWeekNumbers = props.showWeekNumbers, firstDayOfWeek = props.firstDayOfWeek, firstWeekOfYear = props.firstWeekOfYear, navigatedDate = props.navigatedDate, strings = props.strings;\n var weekNumbers = showWeekNumbers\n ? getWeekNumbersInMonth(weeks.length, firstDayOfWeek, firstWeekOfYear, navigatedDate)\n : null;\n var titleString = weekNumbers\n ? strings.weekNumberFormatString && format(strings.weekNumberFormatString, weekNumbers[weekIndex])\n : '';\n return (React.createElement(\"tr\", { role: ariaRole, className: rowClassName, key: weekIndex + '_' + week[0].key },\n showWeekNumbers && weekNumbers && (React.createElement(\"th\", { className: classNames.weekNumberCell, key: weekIndex, title: titleString, \"aria-label\": titleString, scope: \"row\" },\n React.createElement(\"span\", null, weekNumbers[weekIndex]))),\n week.map(function (day, dayIndex) { return (React.createElement(CalendarGridDayCell, __assign({}, props, { key: day.key, day: day, dayIndex: dayIndex }))); })));\n};\n//# sourceMappingURL=CalendarGridRow.js.map","import { __assign } from \"tslib\";\nimport * as React from 'react';\nimport { getRTL, classNamesFunction } from '@fluentui/utilities';\nimport { FocusZone } from '../../FocusZone';\nimport { getDateRangeArray, getDayGrid, getBoundedDateRange, isRestrictedDate, DAYS_IN_WEEK, compareDates, DateRangeType, } from '@fluentui/date-time-utilities';\nimport { usePrevious, useId } from '@fluentui/react-hooks';\nimport { CalendarMonthHeaderRow } from './CalendarMonthHeaderRow';\nimport { CalendarGridRow } from './CalendarGridRow';\nvar getClassNames = classNamesFunction();\nfunction useDayRefs() {\n var daysRef = React.useRef({});\n var getSetRefCallback = function (dayKey) { return function (element) {\n if (element === null) {\n delete daysRef.current[dayKey];\n }\n else {\n daysRef.current[dayKey] = element;\n }\n }; };\n return [daysRef, getSetRefCallback];\n}\nfunction useWeeks(props, onSelectDate, getSetRefCallback) {\n /**\n * Initial parsing of the given props to generate IDayInfo two dimensional array, which contains a representation\n * of every day in the grid. Convenient for helping with conversions between day refs and Date objects in callbacks.\n */\n var weeks = React.useMemo(function () {\n var _a;\n var weeksGrid = getDayGrid(props);\n var firstVisibleDay = weeksGrid[1][0].originalDate;\n var lastVisibleDay = weeksGrid[weeksGrid.length - 1][6].originalDate;\n var markedDays = ((_a = props.getMarkedDays) === null || _a === void 0 ? void 0 : _a.call(props, firstVisibleDay, lastVisibleDay)) || [];\n /**\n * Weeks is a 2D array. Weeks[0] contains the last week of the prior range,\n * Weeks[weeks.length - 1] contains first week of next range. These are for transition states.\n *\n * Weeks[1... weeks.length - 2] contains the actual visible data\n */\n var returnValue = [];\n for (var weekIndex = 0; weekIndex < weeksGrid.length; weekIndex++) {\n var week = [];\n var _loop_1 = function (dayIndex) {\n var day = weeksGrid[weekIndex][dayIndex];\n var dayInfo = __assign(__assign({ onSelected: function () { return onSelectDate(day.originalDate); }, setRef: getSetRefCallback(day.key) }, day), { isMarked: day.isMarked || (markedDays === null || markedDays === void 0 ? void 0 : markedDays.some(function (markedDay) { return compareDates(day.originalDate, markedDay); })) });\n week.push(dayInfo);\n };\n for (var dayIndex = 0; dayIndex < DAYS_IN_WEEK; dayIndex++) {\n _loop_1(dayIndex);\n }\n returnValue.push(week);\n }\n return returnValue;\n // TODO: this is missing deps on getSetRefCallback and onSelectDate (and depending on the entire\n // props object may not be a good idea due to likely frequent mutation). It would be easy to\n // fix getSetRefCallback to not mutate every render, but onSelectDate is passed down from\n // Calendar and trying to fix it requires a huge cascade of changes.\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [props]);\n return weeks;\n}\n/**\n * Hook to determine whether to animate the CalendarDayGrid forwards or backwards\n * @returns true if the grid should animate backwards; false otherwise\n */\nfunction useAnimateBackwards(weeks) {\n var previousNavigatedDate = usePrevious(weeks[0][0].originalDate);\n if (!previousNavigatedDate || previousNavigatedDate.getTime() === weeks[0][0].originalDate.getTime()) {\n return undefined;\n }\n else if (previousNavigatedDate <= weeks[0][0].originalDate) {\n return false;\n }\n else {\n return true;\n }\n}\nfunction useWeekCornerStyles(props) {\n /**\n *\n * Section for setting the rounded corner styles on individual day cells. Individual day cells need different\n * corners to be rounded depending on which date range type and where the cell is located in the current grid.\n * If we just round all of the corners, there isn't a good overlap and we get gaps between contiguous day boxes\n * in Edge browser.\n *\n */\n var getWeekCornerStyles = function (classNames, initialWeeks) {\n var weekCornersStyled = {};\n /* need to handle setting all of the corners on arbitrarily shaped blobs\n __\n __|A |\n |B |C |__\n |D |E |F |\n \n in this case, A needs top left rounded, top right rounded\n B needs top left rounded\n C doesn't need any rounding\n D needs bottom left rounded\n E doesn't need any rounding\n F needs top right rounding\n */\n // cut off the animation transition weeks\n var weeks = initialWeeks.slice(1, initialWeeks.length - 1);\n // if there's an item above, lose both top corners. Item below, lose both bottom corners, etc.\n weeks.forEach(function (week, weekIndex) {\n week.forEach(function (day, dayIndex) {\n var above = weeks[weekIndex - 1] &&\n weeks[weekIndex - 1][dayIndex] &&\n isInSameHoverRange(weeks[weekIndex - 1][dayIndex].originalDate, day.originalDate, weeks[weekIndex - 1][dayIndex].isSelected, day.isSelected);\n var below = weeks[weekIndex + 1] &&\n weeks[weekIndex + 1][dayIndex] &&\n isInSameHoverRange(weeks[weekIndex + 1][dayIndex].originalDate, day.originalDate, weeks[weekIndex + 1][dayIndex].isSelected, day.isSelected);\n var left = weeks[weekIndex][dayIndex - 1] &&\n isInSameHoverRange(weeks[weekIndex][dayIndex - 1].originalDate, day.originalDate, weeks[weekIndex][dayIndex - 1].isSelected, day.isSelected);\n var right = weeks[weekIndex][dayIndex + 1] &&\n isInSameHoverRange(weeks[weekIndex][dayIndex + 1].originalDate, day.originalDate, weeks[weekIndex][dayIndex + 1].isSelected, day.isSelected);\n var style = [];\n style.push(calculateRoundedStyles(classNames, above, below, left, right));\n style.push(calculateBorderStyles(classNames, above, below, left, right));\n weekCornersStyled[weekIndex + '_' + dayIndex] = style.join(' ');\n });\n });\n return weekCornersStyled;\n };\n var calculateRoundedStyles = function (classNames, above, below, left, right) {\n var style = [];\n var roundedTopLeft = !above && !left;\n var roundedTopRight = !above && !right;\n var roundedBottomLeft = !below && !left;\n var roundedBottomRight = !below && !right;\n if (roundedTopLeft) {\n style.push(getRTL() ? classNames.topRightCornerDate : classNames.topLeftCornerDate);\n }\n if (roundedTopRight) {\n style.push(getRTL() ? classNames.topLeftCornerDate : classNames.topRightCornerDate);\n }\n if (roundedBottomLeft) {\n style.push(getRTL() ? classNames.bottomRightCornerDate : classNames.bottomLeftCornerDate);\n }\n if (roundedBottomRight) {\n style.push(getRTL() ? classNames.bottomLeftCornerDate : classNames.bottomRightCornerDate);\n }\n return style.join(' ');\n };\n var calculateBorderStyles = function (classNames, above, below, left, right) {\n var style = [];\n if (!above) {\n style.push(classNames.datesAbove);\n }\n if (!below) {\n style.push(classNames.datesBelow);\n }\n if (!left) {\n style.push(getRTL() ? classNames.datesRight : classNames.datesLeft);\n }\n if (!right) {\n style.push(getRTL() ? classNames.datesLeft : classNames.datesRight);\n }\n return style.join(' ');\n };\n var isInSameHoverRange = function (date1, date2, date1Selected, date2Selected) {\n var dateRangeType = props.dateRangeType, firstDayOfWeek = props.firstDayOfWeek, workWeekDays = props.workWeekDays;\n // The hover state looks weird with non-contiguous days in work week view. In work week, show week hover state\n var dateRangeHoverType = dateRangeType === DateRangeType.WorkWeek ? DateRangeType.Week : dateRangeType;\n // we do not pass daysToSelectInDayView because we handle setting those styles dyanamically in onMouseOver\n var dateRange = getDateRangeArray(date1, dateRangeHoverType, firstDayOfWeek, workWeekDays);\n if (date1Selected !== date2Selected) {\n // if one is selected and the other is not, they can't be in the same range\n return false;\n }\n else if (date1Selected && date2Selected) {\n // if they're both selected at the same time they must be in the same range\n return true;\n }\n // otherwise, both must be unselected, so check the dateRange\n return dateRange.filter(function (date) { return date.getTime() === date2.getTime(); }).length > 0;\n };\n return [getWeekCornerStyles, calculateRoundedStyles];\n}\nexport var CalendarDayGridBase = function (props) {\n var navigatedDayRef = React.useRef(null);\n var activeDescendantId = useId();\n var onSelectDate = function (selectedDate) {\n var _a, _b;\n var firstDayOfWeek = props.firstDayOfWeek, minDate = props.minDate, maxDate = props.maxDate, workWeekDays = props.workWeekDays, daysToSelectInDayView = props.daysToSelectInDayView, restrictedDates = props.restrictedDates;\n var restrictedDatesOptions = { minDate: minDate, maxDate: maxDate, restrictedDates: restrictedDates };\n var dateRange = getDateRangeArray(selectedDate, dateRangeType, firstDayOfWeek, workWeekDays, daysToSelectInDayView);\n dateRange = getBoundedDateRange(dateRange, minDate, maxDate);\n dateRange = dateRange.filter(function (d) {\n return !isRestrictedDate(d, restrictedDatesOptions);\n });\n (_a = props.onSelectDate) === null || _a === void 0 ? void 0 : _a.call(props, selectedDate, dateRange);\n (_b = props.onNavigateDate) === null || _b === void 0 ? void 0 : _b.call(props, selectedDate, true);\n };\n var _a = useDayRefs(), daysRef = _a[0], getSetRefCallback = _a[1];\n var weeks = useWeeks(props, onSelectDate, getSetRefCallback);\n var animateBackwards = useAnimateBackwards(weeks);\n var _b = useWeekCornerStyles(props), getWeekCornerStyles = _b[0], calculateRoundedStyles = _b[1];\n React.useImperativeHandle(props.componentRef, function () { return ({\n focus: function () {\n var _a, _b;\n (_b = (_a = navigatedDayRef.current) === null || _a === void 0 ? void 0 : _a.focus) === null || _b === void 0 ? void 0 : _b.call(_a);\n },\n }); }, []);\n /**\n *\n * Section for setting hover/pressed styles. Because we want arbitrary blobs of days to be selectable, to support\n * highlighting every day in the month for month view, css :hover style isn't enough, so we need mouse callbacks\n * to set classnames on all relevant child refs to apply the styling\n *\n */\n var getDayInfosInRangeOfDay = function (dayToCompare) {\n // The hover state looks weird with non-contiguous days in work week view. In work week, show week hover state\n var dateRangeHoverType = getDateRangeTypeToUse(props.dateRangeType, props.workWeekDays);\n // gets all the dates for the given date range type that are in the same date range as the given day\n var dateRange = getDateRangeArray(dayToCompare.originalDate, dateRangeHoverType, props.firstDayOfWeek, props.workWeekDays, props.daysToSelectInDayView).map(function (date) { return date.getTime(); });\n // gets all the day refs for the given dates\n var dayInfosInRange = weeks.reduce(function (accumulatedValue, currentWeek) {\n return accumulatedValue.concat(currentWeek.filter(function (weekDay) { return dateRange.indexOf(weekDay.originalDate.getTime()) !== -1; }));\n }, []);\n return dayInfosInRange;\n };\n var getRefsFromDayInfos = function (dayInfosInRange) {\n var dayRefs = [];\n dayRefs = dayInfosInRange.map(function (dayInfo) { return daysRef.current[dayInfo.key]; });\n return dayRefs;\n };\n var styles = props.styles, theme = props.theme, className = props.className, dateRangeType = props.dateRangeType, showWeekNumbers = props.showWeekNumbers, labelledBy = props.labelledBy, lightenDaysOutsideNavigatedMonth = props.lightenDaysOutsideNavigatedMonth, animationDirection = props.animationDirection;\n var classNames = getClassNames(styles, {\n theme: theme,\n className: className,\n dateRangeType: dateRangeType,\n showWeekNumbers: showWeekNumbers,\n lightenDaysOutsideNavigatedMonth: lightenDaysOutsideNavigatedMonth === undefined ? true : lightenDaysOutsideNavigatedMonth,\n animationDirection: animationDirection,\n animateBackwards: animateBackwards,\n });\n // When the month is highlighted get the corner dates so that styles can be added to them\n var weekCorners = getWeekCornerStyles(classNames, weeks);\n var partialWeekProps = {\n weeks: weeks,\n navigatedDayRef: navigatedDayRef,\n calculateRoundedStyles: calculateRoundedStyles,\n activeDescendantId: activeDescendantId,\n classNames: classNames,\n weekCorners: weekCorners,\n getDayInfosInRangeOfDay: getDayInfosInRangeOfDay,\n getRefsFromDayInfos: getRefsFromDayInfos,\n };\n return (React.createElement(FocusZone, { className: classNames.wrapper },\n React.createElement(\"table\", { className: classNames.table, \"aria-multiselectable\": \"false\", \"aria-labelledby\": labelledBy, \"aria-activedescendant\": activeDescendantId, role: \"grid\" },\n React.createElement(\"tbody\", null,\n React.createElement(CalendarMonthHeaderRow, __assign({}, props, { classNames: classNames, weeks: weeks })),\n React.createElement(CalendarGridRow, __assign({}, props, partialWeekProps, { week: weeks[0], weekIndex: -1, rowClassName: classNames.firstTransitionWeek, ariaRole: \"presentation\", ariaHidden: true })),\n weeks.slice(1, weeks.length - 1).map(function (week, weekIndex) { return (React.createElement(CalendarGridRow, __assign({}, props, partialWeekProps, { key: weekIndex, week: week, weekIndex: weekIndex, rowClassName: classNames.weekRow }))); }),\n React.createElement(CalendarGridRow, __assign({}, props, partialWeekProps, { week: weeks[weeks.length - 1], weekIndex: -2, rowClassName: classNames.lastTransitionWeek, ariaRole: \"presentation\", ariaHidden: true }))))));\n};\nCalendarDayGridBase.displayName = 'CalendarDayGridBase';\n/**\n * When given work week, if the days are non-contiguous, the hover states look really weird. So for non-contiguous\n * work weeks, we'll just show week view instead.\n */\nfunction getDateRangeTypeToUse(dateRangeType, workWeekDays) {\n if (workWeekDays && dateRangeType === DateRangeType.WorkWeek) {\n var sortedWWDays = workWeekDays.slice().sort();\n var isContiguous = true;\n for (var i = 1; i < sortedWWDays.length; i++) {\n if (sortedWWDays[i] !== sortedWWDays[i - 1] + 1) {\n isContiguous = false;\n break;\n }\n }\n if (!isContiguous || workWeekDays.length === 0) {\n return DateRangeType.Week;\n }\n }\n return dateRangeType;\n}\n//# sourceMappingURL=CalendarDayGrid.base.js.map","import { __assign } from \"tslib\";\nimport { FontSizes, FontWeights, getFocusStyle, getGlobalClassNames, AnimationStyles, keyframes, HighContrastSelector, getHighContrastNoAdjustStyle, } from '@fluentui/style-utilities';\nimport { DateRangeType } from '@fluentui/date-time-utilities';\nimport { AnimationDirection } from '../Calendar/Calendar.types';\nvar GlobalClassNames = {\n hoverStyle: 'ms-CalendarDay-hoverStyle',\n pressedStyle: 'ms-CalendarDay-pressedStyle',\n dayIsTodayStyle: 'ms-CalendarDay-dayIsToday',\n daySelectedStyle: 'ms-CalendarDay-daySelected',\n};\nvar transitionRowDisappearance = keyframes({\n '100%': {\n width: 0,\n height: 0,\n overflow: 'hidden',\n },\n '99.9%': {\n width: '100%',\n height: 28,\n overflow: 'visible',\n },\n '0%': {\n width: '100%',\n height: 28,\n overflow: 'visible',\n },\n});\nexport var styles = function (props) {\n var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k;\n var theme = props.theme, dateRangeType = props.dateRangeType, showWeekNumbers = props.showWeekNumbers, lightenDaysOutsideNavigatedMonth = props.lightenDaysOutsideNavigatedMonth, animateBackwards = props.animateBackwards, animationDirection = props.animationDirection;\n var palette = theme.palette;\n var classNames = getGlobalClassNames(GlobalClassNames, theme);\n var rowAnimationStyle = {};\n if (animateBackwards !== undefined) {\n if (animationDirection === AnimationDirection.Horizontal) {\n rowAnimationStyle = animateBackwards ? AnimationStyles.slideRightIn20 : AnimationStyles.slideLeftIn20;\n }\n else {\n rowAnimationStyle = animateBackwards ? AnimationStyles.slideDownIn20 : AnimationStyles.slideUpIn20;\n }\n }\n var firstTransitionRowAnimationStyle = {};\n var lastTransitionRowAnimationStyle = {};\n if (animateBackwards !== undefined) {\n if (animationDirection !== AnimationDirection.Horizontal) {\n firstTransitionRowAnimationStyle = animateBackwards ? { animationName: '' } : AnimationStyles.slideUpOut20;\n lastTransitionRowAnimationStyle = animateBackwards ? AnimationStyles.slideDownOut20 : { animationName: '' };\n }\n }\n var disabledStyle = {\n selectors: {\n '&, &:disabled, & button': {\n color: palette.neutralTertiaryAlt,\n pointerEvents: 'none',\n },\n },\n };\n return {\n wrapper: {\n paddingBottom: 10,\n },\n table: [\n {\n textAlign: 'center',\n borderCollapse: 'collapse',\n borderSpacing: '0',\n tableLayout: 'fixed',\n fontSize: 'inherit',\n marginTop: 4,\n width: 196,\n position: 'relative',\n paddingBottom: 10,\n },\n showWeekNumbers && {\n width: 226,\n },\n ],\n dayCell: {\n margin: 0,\n padding: 0,\n width: 28,\n height: 28,\n lineHeight: 28,\n fontSize: FontSizes.small,\n fontWeight: FontWeights.regular,\n color: palette.neutralPrimary,\n cursor: 'pointer',\n position: 'relative',\n selectors: (_a = {},\n _a[HighContrastSelector] = __assign({ color: 'WindowText', backgroundColor: 'Window', zIndex: 0 }, getHighContrastNoAdjustStyle()),\n _a['&.' + classNames.hoverStyle] = {\n backgroundColor: palette.neutralLighter,\n selectors: (_b = {},\n _b[HighContrastSelector] = {\n zIndex: 3,\n backgroundColor: 'Window',\n outline: '1px solid Highlight',\n },\n _b),\n },\n _a['&.' + classNames.pressedStyle] = {\n backgroundColor: palette.neutralLight,\n selectors: (_c = {},\n _c[HighContrastSelector] = {\n borderColor: 'Highlight',\n color: 'Highlight',\n backgroundColor: 'Window',\n },\n _c),\n },\n _a['&.' + classNames.pressedStyle + '.' + classNames.hoverStyle] = {\n selectors: (_d = {},\n _d[HighContrastSelector] = {\n backgroundColor: 'Window',\n outline: '1px solid Highlight',\n },\n _d),\n },\n _a),\n },\n daySelected: [\n dateRangeType !== DateRangeType.Month && {\n backgroundColor: palette.neutralLight + '!important',\n selectors: (_e = {\n '&:after': {\n content: '\"\"',\n position: 'absolute',\n top: 0,\n bottom: 0,\n left: 0,\n right: 0,\n }\n },\n _e['&:hover, &.' + classNames.hoverStyle + ', &.' + classNames.pressedStyle] = (_f = {\n backgroundColor: palette.neutralLight + '!important'\n },\n _f[HighContrastSelector] = {\n color: 'HighlightText!important',\n background: 'Highlight!important',\n },\n _f),\n _e[HighContrastSelector] = __assign({ background: 'Highlight!important', color: 'HighlightText!important', borderColor: 'Highlight!important' }, getHighContrastNoAdjustStyle()),\n _e),\n },\n ],\n weekRow: rowAnimationStyle,\n weekDayLabelCell: AnimationStyles.fadeIn200,\n weekNumberCell: {\n margin: 0,\n padding: 0,\n borderRight: '1px solid',\n borderColor: palette.neutralLight,\n backgroundColor: palette.neutralLighterAlt,\n color: palette.neutralSecondary,\n boxSizing: 'border-box',\n width: 28,\n height: 28,\n fontWeight: FontWeights.regular,\n fontSize: FontSizes.small,\n },\n dayOutsideBounds: disabledStyle,\n dayOutsideNavigatedMonth: lightenDaysOutsideNavigatedMonth && {\n color: palette.neutralSecondary,\n fontWeight: FontWeights.regular,\n },\n dayButton: [\n getFocusStyle(theme, { inset: -3 }),\n {\n width: 24,\n height: 24,\n lineHeight: 24,\n fontSize: FontSizes.small,\n fontWeight: 'inherit',\n borderRadius: 2,\n border: 'none',\n padding: 0,\n color: 'inherit',\n backgroundColor: 'transparent',\n cursor: 'pointer',\n overflow: 'visible',\n selectors: {\n span: {\n height: 'inherit',\n lineHeight: 'inherit',\n },\n },\n },\n ],\n dayIsToday: {\n backgroundColor: palette.themePrimary + '!important',\n borderRadius: '100%',\n color: palette.white + '!important',\n fontWeight: (FontWeights.semibold + '!important'),\n selectors: (_g = {},\n _g[HighContrastSelector] = __assign({ background: 'WindowText!important', color: 'Window!important', borderColor: 'WindowText!important' }, getHighContrastNoAdjustStyle()),\n _g),\n },\n firstTransitionWeek: __assign(__assign({ position: 'absolute', opacity: 0, width: 0, height: 0, overflow: 'hidden' }, firstTransitionRowAnimationStyle), { animationName: firstTransitionRowAnimationStyle.animationName + ',' + transitionRowDisappearance }),\n lastTransitionWeek: __assign(__assign({ position: 'absolute', opacity: 0, width: 0, height: 0, overflow: 'hidden', marginTop: -28 }, lastTransitionRowAnimationStyle), { animationName: lastTransitionRowAnimationStyle.animationName + ',' + transitionRowDisappearance }),\n dayMarker: {\n width: 4,\n height: 4,\n backgroundColor: palette.neutralSecondary,\n borderRadius: '100%',\n bottom: 1,\n left: 0,\n right: 0,\n position: 'absolute',\n margin: 'auto',\n selectors: (_h = {},\n _h['.' + classNames.dayIsTodayStyle + ' &'] = {\n backgroundColor: palette.white,\n selectors: (_j = {},\n _j[HighContrastSelector] = {\n backgroundColor: 'Window',\n },\n _j),\n },\n _h['.' + classNames.daySelectedStyle + ' &'] = {\n selectors: (_k = {},\n _k[HighContrastSelector] = {\n backgroundColor: 'HighlightText',\n },\n _k),\n },\n _h[HighContrastSelector] = __assign({ backgroundColor: 'WindowText' }, getHighContrastNoAdjustStyle()),\n _h),\n },\n topRightCornerDate: {\n borderTopRightRadius: '2px',\n },\n topLeftCornerDate: {\n borderTopLeftRadius: '2px',\n },\n bottomRightCornerDate: {\n borderBottomRightRadius: '2px',\n },\n bottomLeftCornerDate: {\n borderBottomLeftRadius: '2px',\n },\n datesAbove: {\n '&:after': {\n borderTop: \"1px solid \" + palette.neutralSecondary,\n },\n },\n datesBelow: {\n '&:after': {\n borderBottom: \"1px solid \" + palette.neutralSecondary,\n },\n },\n datesLeft: {\n '&:after': {\n borderLeft: \"1px solid \" + palette.neutralSecondary,\n },\n },\n datesRight: {\n '&:after': {\n borderRight: \"1px solid \" + palette.neutralSecondary,\n },\n },\n };\n};\n//# sourceMappingURL=CalendarDayGrid.styles.js.map","import { CalendarDayGridBase } from './CalendarDayGrid.base';\nimport { styles } from './CalendarDayGrid.styles';\nimport { styled } from '../../Utilities';\nexport var CalendarDayGrid = styled(CalendarDayGridBase, styles, undefined, { scope: 'CalendarDayGrid' });\n//# sourceMappingURL=CalendarDayGrid.js.map","import { __assign } from \"tslib\";\nimport * as React from 'react';\nimport { KeyCodes, css, classNamesFunction, format } from '@fluentui/utilities';\nimport { Icon } from '../../../Icon';\nimport { addMonths, compareDatePart, getMonthStart, getMonthEnd } from '@fluentui/date-time-utilities';\nimport { CalendarDayGrid } from '../../CalendarDayGrid/CalendarDayGrid';\nimport { useId } from '@fluentui/react-hooks';\nvar getClassNames = classNamesFunction();\nexport var CalendarDayBase = function (props) {\n var dayGrid = React.useRef(null);\n React.useImperativeHandle(props.componentRef, function () { return ({\n focus: function () {\n var _a, _b;\n (_b = (_a = dayGrid.current) === null || _a === void 0 ? void 0 : _a.focus) === null || _b === void 0 ? void 0 : _b.call(_a);\n },\n }); }, []);\n var strings = props.strings, navigatedDate = props.navigatedDate, dateTimeFormatter = props.dateTimeFormatter, styles = props.styles, theme = props.theme, className = props.className, onHeaderSelect = props.onHeaderSelect, showSixWeeksByDefault = props.showSixWeeksByDefault, minDate = props.minDate, maxDate = props.maxDate, restrictedDates = props.restrictedDates, onNavigateDate = props.onNavigateDate, showWeekNumbers = props.showWeekNumbers, dateRangeType = props.dateRangeType, animationDirection = props.animationDirection;\n var monthAndYearId = useId();\n var classNames = getClassNames(styles, {\n theme: theme,\n className: className,\n headerIsClickable: !!onHeaderSelect,\n showWeekNumbers: showWeekNumbers,\n animationDirection: animationDirection,\n });\n var monthAndYear = dateTimeFormatter.formatMonthYear(navigatedDate, strings);\n var HeaderButtonComponentType = onHeaderSelect ? 'button' : 'div';\n var headerAriaLabel = strings.yearPickerHeaderAriaLabel\n ? format(strings.yearPickerHeaderAriaLabel, monthAndYear)\n : monthAndYear;\n return (React.createElement(\"div\", { className: classNames.root },\n React.createElement(\"div\", { className: classNames.header },\n React.createElement(HeaderButtonComponentType\n // if this component rerenders when text changes, aria-live will not be announced, so make key consistent\n , { \"aria-live\": \"polite\", \"aria-atomic\": \"true\", \"aria-label\": onHeaderSelect ? headerAriaLabel : undefined, key: monthAndYear, className: classNames.monthAndYear, onClick: onHeaderSelect, \"data-is-focusable\": !!onHeaderSelect, tabIndex: onHeaderSelect ? 0 : -1, onKeyDown: onButtonKeyDown(onHeaderSelect), type: \"button\" },\n React.createElement(\"span\", { id: monthAndYearId }, monthAndYear)),\n React.createElement(CalendarDayNavigationButtons, __assign({}, props, { classNames: classNames }))),\n React.createElement(CalendarDayGrid, __assign({}, props, { styles: styles, componentRef: dayGrid, strings: strings, navigatedDate: navigatedDate, weeksToShow: showSixWeeksByDefault ? 6 : undefined, dateTimeFormatter: dateTimeFormatter, minDate: minDate, maxDate: maxDate, restrictedDates: restrictedDates, onNavigateDate: onNavigateDate, labelledBy: monthAndYearId, dateRangeType: dateRangeType }))));\n};\nCalendarDayBase.displayName = 'CalendarDayBase';\nvar CalendarDayNavigationButtons = function (props) {\n var _a, _b;\n var minDate = props.minDate, maxDate = props.maxDate, navigatedDate = props.navigatedDate, allFocusable = props.allFocusable, strings = props.strings, navigationIcons = props.navigationIcons, showCloseButton = props.showCloseButton, classNames = props.classNames, onNavigateDate = props.onNavigateDate, onDismiss = props.onDismiss;\n var onSelectNextMonth = function () {\n onNavigateDate(addMonths(navigatedDate, 1), false);\n };\n var onSelectPrevMonth = function () {\n onNavigateDate(addMonths(navigatedDate, -1), false);\n };\n var leftNavigationIcon = navigationIcons.leftNavigation;\n var rightNavigationIcon = navigationIcons.rightNavigation;\n var closeNavigationIcon = navigationIcons.closeIcon;\n // determine if previous/next months are in bounds\n var prevMonthInBounds = minDate ? compareDatePart(minDate, getMonthStart(navigatedDate)) < 0 : true;\n var nextMonthInBounds = maxDate ? compareDatePart(getMonthEnd(navigatedDate), maxDate) < 0 : true;\n // use aria-disabled instead of disabled so focus is not lost\n // when a prev/next button becomes disabled after being clicked\n return (React.createElement(\"div\", { className: classNames.monthComponents },\n React.createElement(\"button\", { className: css(classNames.headerIconButton, (_a = {},\n _a[classNames.disabledStyle] = !prevMonthInBounds,\n _a)), tabIndex: prevMonthInBounds ? undefined : allFocusable ? 0 : -1, \"aria-disabled\": !prevMonthInBounds, onClick: prevMonthInBounds ? onSelectPrevMonth : undefined, onKeyDown: prevMonthInBounds ? onButtonKeyDown(onSelectPrevMonth) : undefined, title: strings.prevMonthAriaLabel\n ? strings.prevMonthAriaLabel + ' ' + strings.months[addMonths(navigatedDate, -1).getMonth()]\n : undefined, type: \"button\" },\n React.createElement(Icon, { iconName: leftNavigationIcon })),\n React.createElement(\"button\", { className: css(classNames.headerIconButton, (_b = {},\n _b[classNames.disabledStyle] = !nextMonthInBounds,\n _b)), tabIndex: nextMonthInBounds ? undefined : allFocusable ? 0 : -1, \"aria-disabled\": !nextMonthInBounds, onClick: nextMonthInBounds ? onSelectNextMonth : undefined, onKeyDown: nextMonthInBounds ? onButtonKeyDown(onSelectNextMonth) : undefined, title: strings.nextMonthAriaLabel\n ? strings.nextMonthAriaLabel + ' ' + strings.months[addMonths(navigatedDate, 1).getMonth()]\n : undefined, type: \"button\" },\n React.createElement(Icon, { iconName: rightNavigationIcon })),\n showCloseButton && (React.createElement(\"button\", { className: css(classNames.headerIconButton), onClick: onDismiss, onKeyDown: onButtonKeyDown(onDismiss), title: strings.closeButtonAriaLabel, type: \"button\" },\n React.createElement(Icon, { iconName: closeNavigationIcon })))));\n};\nCalendarDayNavigationButtons.displayName = 'CalendarDayNavigationButtons';\nvar onButtonKeyDown = function (callback) { return function (ev) {\n // eslint-disable-next-line deprecation/deprecation\n switch (ev.which) {\n case KeyCodes.enter:\n callback === null || callback === void 0 ? void 0 : callback();\n break;\n }\n}; };\n//# sourceMappingURL=CalendarDay.base.js.map","import { CalendarDayBase } from './CalendarDay.base';\nimport { styles } from './CalendarDay.styles';\nimport { styled } from '../../../Utilities';\nexport var CalendarDay = styled(CalendarDayBase, styles, undefined, {\n scope: 'CalendarDay',\n});\n//# sourceMappingURL=CalendarDay.js.map","import { __assign } from \"tslib\";\nimport { normalize, FontSizes, FontWeights, getFocusStyle, AnimationStyles, HighContrastSelector, } from '@fluentui/style-utilities';\nexport var styles = function (props) {\n var _a;\n var className = props.className, theme = props.theme, headerIsClickable = props.headerIsClickable, showWeekNumbers = props.showWeekNumbers;\n var palette = theme.palette;\n var disabledStyle = {\n selectors: (_a = {\n '&, &:disabled, & button': {\n color: palette.neutralTertiaryAlt,\n pointerEvents: 'none',\n }\n },\n _a[HighContrastSelector] = {\n color: 'GrayText',\n forcedColorAdjust: 'none',\n },\n _a),\n };\n return {\n root: [\n normalize,\n {\n width: 196,\n padding: 12,\n boxSizing: 'content-box',\n },\n showWeekNumbers && {\n width: 226,\n },\n className,\n ],\n header: {\n position: 'relative',\n display: 'inline-flex',\n height: 28,\n lineHeight: 44,\n width: '100%',\n },\n monthAndYear: [\n getFocusStyle(theme, { inset: 1 }),\n __assign(__assign({}, AnimationStyles.fadeIn200), { alignItems: 'center', fontSize: FontSizes.medium, fontFamily: 'inherit', color: palette.neutralPrimary, display: 'inline-block', flexGrow: 1, fontWeight: FontWeights.semibold, padding: '0 4px 0 10px', border: 'none', backgroundColor: 'transparent', borderRadius: 2, lineHeight: 28, overflow: 'hidden', whiteSpace: 'nowrap', textAlign: 'left', textOverflow: 'ellipsis' }),\n headerIsClickable && {\n selectors: {\n '&:hover': {\n cursor: 'pointer',\n background: palette.neutralLight,\n color: palette.black,\n },\n },\n },\n ],\n monthComponents: {\n display: 'inline-flex',\n alignSelf: 'flex-end',\n },\n headerIconButton: [\n getFocusStyle(theme, { inset: -1 }),\n {\n width: 28,\n height: 28,\n display: 'block',\n textAlign: 'center',\n lineHeight: 28,\n fontSize: FontSizes.small,\n fontFamily: 'inherit',\n color: palette.neutralPrimary,\n borderRadius: 2,\n position: 'relative',\n backgroundColor: 'transparent',\n border: 'none',\n padding: 0,\n overflow: 'visible',\n selectors: {\n '&:hover': {\n color: palette.neutralDark,\n backgroundColor: palette.neutralLight,\n cursor: 'pointer',\n outline: '1px solid transparent',\n },\n },\n },\n ],\n disabledStyle: disabledStyle,\n };\n};\n//# sourceMappingURL=CalendarDay.styles.js.map","import { __assign } from \"tslib\";\nimport { normalize, FontSizes, FontWeights, getFocusStyle, AnimationStyles, HighContrastSelector, getHighContrastNoAdjustStyle, } from '@fluentui/style-utilities';\nimport { AnimationDirection } from '../Calendar.types';\nexport var getStyles = function (props) {\n var _a, _b, _c, _d, _e, _f, _g;\n var className = props.className, theme = props.theme, hasHeaderClickCallback = props.hasHeaderClickCallback, highlightCurrent = props.highlightCurrent, highlightSelected = props.highlightSelected, animateBackwards = props.animateBackwards, animationDirection = props.animationDirection;\n var palette = theme.palette;\n var animationStyle = {};\n if (animateBackwards !== undefined) {\n if (animationDirection === AnimationDirection.Horizontal) {\n animationStyle = animateBackwards ? AnimationStyles.slideRightIn20 : AnimationStyles.slideLeftIn20;\n }\n else {\n animationStyle = animateBackwards ? AnimationStyles.slideDownIn20 : AnimationStyles.slideUpIn20;\n }\n }\n var headerAnimationStyle = animateBackwards !== undefined ? AnimationStyles.fadeIn200 : {};\n return {\n root: [\n normalize,\n {\n width: 196,\n padding: 12,\n boxSizing: 'content-box',\n overflow: 'hidden',\n },\n className,\n ],\n headerContainer: {\n display: 'flex',\n },\n currentItemButton: [\n getFocusStyle(theme, { inset: -1 }),\n __assign(__assign({}, headerAnimationStyle), { fontSize: FontSizes.medium, fontWeight: FontWeights.semibold, fontFamily: 'inherit', textAlign: 'left', backgroundColor: 'transparent', flexGrow: 1, padding: '0 4px 0 10px', border: 'none', overflow: 'visible' }),\n hasHeaderClickCallback && {\n selectors: {\n '&:hover, &:active': {\n cursor: !hasHeaderClickCallback ? 'default' : 'pointer',\n color: palette.neutralDark,\n outline: '1px solid transparent',\n backgroundColor: palette.neutralLight,\n },\n },\n },\n ],\n navigationButtonsContainer: {\n display: 'flex',\n alignItems: 'center',\n },\n navigationButton: [\n getFocusStyle(theme, { inset: -1 }),\n {\n fontFamily: 'inherit',\n width: 28,\n minWidth: 28,\n height: 28,\n minHeight: 28,\n display: 'block',\n textAlign: 'center',\n lineHeight: 28,\n fontSize: FontSizes.small,\n color: palette.neutralPrimary,\n borderRadius: 2,\n position: 'relative',\n backgroundColor: 'transparent',\n border: 'none',\n padding: 0,\n overflow: 'visible',\n selectors: {\n '&:hover': {\n color: palette.neutralDark,\n cursor: 'pointer',\n outline: '1px solid transparent',\n backgroundColor: palette.neutralLight,\n },\n },\n },\n ],\n gridContainer: {\n marginTop: 4,\n },\n buttonRow: __assign(__assign({}, animationStyle), { marginBottom: 16, selectors: {\n '&:nth-child(n + 3)': {\n marginBottom: 0,\n },\n } }),\n itemButton: [\n getFocusStyle(theme, { inset: -1 }),\n {\n width: 40,\n height: 40,\n minWidth: 40,\n minHeight: 40,\n lineHeight: 40,\n fontSize: FontSizes.small,\n fontFamily: 'inherit',\n padding: 0,\n margin: '0 12px 0 0',\n color: palette.neutralPrimary,\n backgroundColor: 'transparent',\n border: 'none',\n borderRadius: 2,\n overflow: 'visible',\n selectors: {\n '&:nth-child(4n + 4)': {\n marginRight: 0,\n },\n '&:nth-child(n + 9)': {\n marginBottom: 0,\n },\n '& div': {\n fontWeight: FontWeights.regular,\n },\n '&:hover': {\n color: palette.neutralDark,\n backgroundColor: palette.neutralLight,\n cursor: 'pointer',\n outline: '1px solid transparent',\n selectors: (_a = {},\n _a[HighContrastSelector] = __assign({ background: 'Window', color: 'WindowText', outline: '1px solid Highlight' }, getHighContrastNoAdjustStyle()),\n _a),\n },\n '&:active': {\n backgroundColor: palette.themeLight,\n selectors: (_b = {},\n _b[HighContrastSelector] = __assign({ background: 'Window', color: 'Highlight' }, getHighContrastNoAdjustStyle()),\n _b),\n },\n },\n },\n ],\n current: highlightCurrent\n ? {\n color: palette.white,\n backgroundColor: palette.themePrimary,\n selectors: (_c = {\n '& div': {\n fontWeight: FontWeights.semibold,\n },\n '&:hover': {\n backgroundColor: palette.themePrimary,\n selectors: (_d = {},\n _d[HighContrastSelector] = __assign({ backgroundColor: 'WindowText', color: 'Window' }, getHighContrastNoAdjustStyle()),\n _d),\n }\n },\n _c[HighContrastSelector] = __assign({ backgroundColor: 'WindowText', color: 'Window' }, getHighContrastNoAdjustStyle()),\n _c),\n }\n : {},\n selected: highlightSelected\n ? {\n color: palette.neutralPrimary,\n backgroundColor: palette.themeLight,\n fontWeight: FontWeights.semibold,\n selectors: (_e = {\n '& div': {\n fontWeight: FontWeights.semibold,\n },\n '&:hover, &:active': {\n backgroundColor: palette.themeLight,\n selectors: (_f = {},\n _f[HighContrastSelector] = __assign({ color: 'Window', background: 'Highlight' }, getHighContrastNoAdjustStyle()),\n _f),\n }\n },\n _e[HighContrastSelector] = __assign({ background: 'Highlight', color: 'Window' }, getHighContrastNoAdjustStyle()),\n _e),\n }\n : {},\n disabled: {\n selectors: (_g = {\n '&, &:disabled, & button': {\n color: palette.neutralTertiaryAlt,\n pointerEvents: 'none',\n }\n },\n _g[HighContrastSelector] = {\n color: 'GrayText',\n forcedColorAdjust: 'none',\n },\n _g),\n },\n };\n};\n//# sourceMappingURL=CalendarPicker.styles.js.map","import { getStyles as getPickerStyles } from '../CalendarPicker/CalendarPicker.styles';\nexport var getStyles = function (props) {\n /* Return styles from the base class.\n * If this component has extra styles not in the base, apply them here i.e.:\n * const myStyle: IStyle = {\n * display: \"block\"\n * }; *\n * return {...getPickerStyles(props), myStyle};\n */\n return getPickerStyles(props);\n};\n//# sourceMappingURL=CalendarMonth.styles.js.map","import { __assign } from \"tslib\";\nimport * as React from 'react';\nimport { KeyCodes, getRTL, classNamesFunction, css, format } from '../../../Utilities';\nimport { FocusZone } from '../../../FocusZone';\nimport { Icon } from '../../../Icon';\nimport { usePrevious } from '@fluentui/react-hooks';\nimport { defaultCalendarNavigationIcons } from '../defaults';\nvar getClassNames = classNamesFunction();\nvar CELL_COUNT = 12;\nvar CELLS_PER_ROW = 4;\nvar DefaultCalendarYearStrings = {\n prevRangeAriaLabel: undefined,\n nextRangeAriaLabel: undefined,\n};\nvar CalendarYearGridCell = function (props) {\n var _a;\n var _b;\n var styles = props.styles, theme = props.theme, className = props.className, highlightCurrentYear = props.highlightCurrentYear, highlightSelectedYear = props.highlightSelectedYear, year = props.year, selected = props.selected, disabled = props.disabled, componentRef = props.componentRef, onSelectYear = props.onSelectYear, onRenderYear = props.onRenderYear;\n var buttonRef = React.useRef(null);\n React.useImperativeHandle(componentRef, function () { return ({\n focus: function () {\n var _a, _b;\n (_b = (_a = buttonRef.current) === null || _a === void 0 ? void 0 : _a.focus) === null || _b === void 0 ? void 0 : _b.call(_a);\n },\n }); }, []);\n var onClick = function () {\n onSelectYear === null || onSelectYear === void 0 ? void 0 : onSelectYear(year);\n };\n var onKeyDown = function (ev) {\n // eslint-disable-next-line deprecation/deprecation\n if (ev.which === KeyCodes.enter) {\n onSelectYear === null || onSelectYear === void 0 ? void 0 : onSelectYear(year);\n }\n };\n var classNames = getClassNames(styles, {\n theme: theme,\n className: className,\n highlightCurrent: highlightCurrentYear,\n highlightSelected: highlightSelectedYear,\n });\n return (React.createElement(\"button\", { className: css(classNames.itemButton, (_a = {},\n _a[classNames.selected] = selected,\n _a[classNames.disabled] = disabled,\n _a)), type: \"button\", role: \"gridcell\", onClick: !disabled ? onClick : undefined, onKeyDown: !disabled ? onKeyDown : undefined, disabled: disabled, \"aria-selected\": selected, ref: buttonRef }, (_b = onRenderYear === null || onRenderYear === void 0 ? void 0 : onRenderYear(year)) !== null && _b !== void 0 ? _b : year));\n};\nCalendarYearGridCell.displayName = 'CalendarYearGridCell';\nvar CalendarYearGrid = function (props) {\n var styles = props.styles, theme = props.theme, className = props.className, fromYear = props.fromYear, toYear = props.toYear, animationDirection = props.animationDirection, animateBackwards = props.animateBackwards, minYear = props.minYear, maxYear = props.maxYear, onSelectYear = props.onSelectYear, selectedYear = props.selectedYear, componentRef = props.componentRef;\n var selectedCellRef = React.useRef(null);\n var currentCellRef = React.useRef(null);\n React.useImperativeHandle(componentRef, function () { return ({\n focus: function () {\n var _a, _b;\n (_b = (_a = (selectedCellRef.current || currentCellRef.current)) === null || _a === void 0 ? void 0 : _a.focus) === null || _b === void 0 ? void 0 : _b.call(_a);\n },\n }); }, []);\n var renderCell = function (yearToRender) {\n var selected = yearToRender === selectedYear;\n var disabled = (minYear !== undefined && yearToRender < minYear) || (maxYear !== undefined && yearToRender > maxYear);\n var current = yearToRender === new Date().getFullYear();\n return (React.createElement(CalendarYearGridCell, __assign({}, props, { key: yearToRender, year: yearToRender, selected: selected, current: current, disabled: disabled, onSelectYear: onSelectYear, componentRef: selected ? selectedCellRef : current ? currentCellRef : undefined, theme: theme })));\n };\n var classNames = getClassNames(styles, {\n theme: theme,\n className: className,\n animateBackwards: animateBackwards,\n animationDirection: animationDirection,\n });\n var onRenderYear = function (value) {\n var _a, _b;\n return (_b = (_a = props.onRenderYear) === null || _a === void 0 ? void 0 : _a.call(props, value)) !== null && _b !== void 0 ? _b : value;\n };\n var gridAriaLabel = onRenderYear(fromYear) + \" - \" + onRenderYear(toYear);\n var year = fromYear;\n var cells = [];\n for (var i = 0; i < (toYear - fromYear + 1) / CELLS_PER_ROW; i++) {\n cells.push([]);\n for (var j = 0; j < CELLS_PER_ROW; j++) {\n cells[i].push(renderCell(year));\n year++;\n }\n }\n return (React.createElement(FocusZone, null,\n React.createElement(\"div\", { className: classNames.gridContainer, role: \"grid\", \"aria-label\": gridAriaLabel }, cells.map(function (cellRow, index) {\n return (React.createElement(\"div\", { key: 'yearPickerRow_' + index + '_' + fromYear, role: \"row\", className: classNames.buttonRow }, cellRow));\n }))));\n};\nCalendarYearGrid.displayName = 'CalendarYearGrid';\nvar CalendarYearNavDirection;\n(function (CalendarYearNavDirection) {\n CalendarYearNavDirection[CalendarYearNavDirection[\"Previous\"] = 0] = \"Previous\";\n CalendarYearNavDirection[CalendarYearNavDirection[\"Next\"] = 1] = \"Next\";\n})(CalendarYearNavDirection || (CalendarYearNavDirection = {}));\nvar CalendarYearNavArrow = function (props) {\n var _a;\n var styles = props.styles, theme = props.theme, className = props.className, _b = props.navigationIcons, navigationIcons = _b === void 0 ? defaultCalendarNavigationIcons : _b, _c = props.strings, strings = _c === void 0 ? DefaultCalendarYearStrings : _c, direction = props.direction, onSelectPrev = props.onSelectPrev, onSelectNext = props.onSelectNext, fromYear = props.fromYear, toYear = props.toYear, maxYear = props.maxYear, minYear = props.minYear;\n var classNames = getClassNames(styles, {\n theme: theme,\n className: className,\n });\n var ariaLabel = direction === CalendarYearNavDirection.Previous ? strings.prevRangeAriaLabel : strings.nextRangeAriaLabel;\n var newRangeOffset = direction === CalendarYearNavDirection.Previous ? -CELL_COUNT : CELL_COUNT;\n var newRange = { fromYear: fromYear + newRangeOffset, toYear: toYear + newRangeOffset };\n var ariaLabelString = ariaLabel ? (typeof ariaLabel === 'string' ? ariaLabel : ariaLabel(newRange)) : undefined;\n var disabled = direction === CalendarYearNavDirection.Previous\n ? minYear !== undefined && fromYear < minYear\n : maxYear !== undefined && props.fromYear + CELL_COUNT > maxYear;\n var onNavigate = function () {\n direction === CalendarYearNavDirection.Previous ? onSelectPrev === null || onSelectPrev === void 0 ? void 0 : onSelectPrev() : onSelectNext === null || onSelectNext === void 0 ? void 0 : onSelectNext();\n };\n var onKeyDown = function (ev) {\n // eslint-disable-next-line deprecation/deprecation\n if (ev.which === KeyCodes.enter) {\n onNavigate();\n }\n };\n // can be condensed, but leaving verbose for clarity due to regressions\n var isLeftNavigation = getRTL()\n ? direction === CalendarYearNavDirection.Next\n : direction === CalendarYearNavDirection.Previous;\n return (React.createElement(\"button\", { className: css(classNames.navigationButton, (_a = {},\n _a[classNames.disabled] = disabled,\n _a)), onClick: !disabled ? onNavigate : undefined, onKeyDown: !disabled ? onKeyDown : undefined, type: \"button\", title: ariaLabelString, disabled: disabled },\n React.createElement(Icon, { iconName: isLeftNavigation ? navigationIcons.leftNavigation : navigationIcons.rightNavigation })));\n};\nCalendarYearNavArrow.displayName = 'CalendarYearNavArrow';\nvar CalendarYearNav = function (props) {\n var styles = props.styles, theme = props.theme, className = props.className;\n var classNames = getClassNames(styles, {\n theme: theme,\n className: className,\n });\n return (React.createElement(\"div\", { className: classNames.navigationButtonsContainer },\n React.createElement(CalendarYearNavArrow, __assign({}, props, { direction: CalendarYearNavDirection.Previous })),\n React.createElement(CalendarYearNavArrow, __assign({}, props, { direction: CalendarYearNavDirection.Next }))));\n};\nCalendarYearNav.displayName = 'CalendarYearNav';\nvar CalendarYearTitle = function (props) {\n var styles = props.styles, theme = props.theme, className = props.className, fromYear = props.fromYear, toYear = props.toYear, _a = props.strings, strings = _a === void 0 ? DefaultCalendarYearStrings : _a, animateBackwards = props.animateBackwards, animationDirection = props.animationDirection;\n var onHeaderSelect = function () {\n var _a;\n (_a = props.onHeaderSelect) === null || _a === void 0 ? void 0 : _a.call(props, true);\n };\n var onHeaderKeyDown = function (ev) {\n // eslint-disable-next-line deprecation/deprecation\n if (ev.which === KeyCodes.enter || ev.which === KeyCodes.space) {\n onHeaderSelect();\n }\n };\n var onRenderYear = function (year) {\n var _a, _b;\n return (_b = (_a = props.onRenderYear) === null || _a === void 0 ? void 0 : _a.call(props, year)) !== null && _b !== void 0 ? _b : year;\n };\n var classNames = getClassNames(styles, {\n theme: theme,\n className: className,\n hasHeaderClickCallback: !!props.onHeaderSelect,\n animateBackwards: animateBackwards,\n animationDirection: animationDirection,\n });\n if (props.onHeaderSelect) {\n var rangeAriaLabel = strings.rangeAriaLabel;\n var headerAriaLabelFormatString = strings.headerAriaLabelFormatString;\n var currentDateRange = rangeAriaLabel\n ? typeof rangeAriaLabel === 'string'\n ? rangeAriaLabel\n : rangeAriaLabel(props)\n : undefined;\n var ariaLabel = headerAriaLabelFormatString\n ? format(headerAriaLabelFormatString, currentDateRange)\n : currentDateRange;\n return (React.createElement(\"button\", { className: classNames.currentItemButton, onClick: onHeaderSelect, onKeyDown: onHeaderKeyDown, \"aria-label\": ariaLabel, role: \"button\", type: \"button\", \"aria-atomic\": true, \"aria-live\": \"polite\" },\n onRenderYear(fromYear),\n \" - \",\n onRenderYear(toYear)));\n }\n return (React.createElement(\"div\", { className: classNames.current },\n onRenderYear(fromYear),\n \" - \",\n onRenderYear(toYear)));\n};\nCalendarYearTitle.displayName = 'CalendarYearTitle';\nvar CalendarYearHeader = function (props) {\n var _a;\n var styles = props.styles, theme = props.theme, className = props.className, animateBackwards = props.animateBackwards, animationDirection = props.animationDirection, onRenderTitle = props.onRenderTitle;\n var classNames = getClassNames(styles, {\n theme: theme,\n className: className,\n hasHeaderClickCallback: !!props.onHeaderSelect,\n animateBackwards: animateBackwards,\n animationDirection: animationDirection,\n });\n return (React.createElement(\"div\", { className: classNames.headerContainer }, (_a = onRenderTitle === null || onRenderTitle === void 0 ? void 0 : onRenderTitle(props)) !== null && _a !== void 0 ? _a : React.createElement(CalendarYearTitle, __assign({}, props)),\n React.createElement(CalendarYearNav, __assign({}, props))));\n};\nCalendarYearHeader.displayName = 'CalendarYearHeader';\nfunction useAnimateBackwards(_a) {\n var selectedYear = _a.selectedYear, navigatedYear = _a.navigatedYear;\n var rangeYear = selectedYear || navigatedYear || new Date().getFullYear();\n var fromYear = Math.floor(rangeYear / 10) * 10;\n var previousFromYear = usePrevious(fromYear);\n if (!previousFromYear || previousFromYear === fromYear) {\n return undefined;\n }\n else if (previousFromYear > fromYear) {\n return true;\n }\n else {\n return false;\n }\n}\nvar NavigationDirection;\n(function (NavigationDirection) {\n NavigationDirection[NavigationDirection[\"Previous\"] = 0] = \"Previous\";\n NavigationDirection[NavigationDirection[\"Next\"] = 1] = \"Next\";\n})(NavigationDirection || (NavigationDirection = {}));\nfunction useYearRangeState(_a) {\n var selectedYear = _a.selectedYear, navigatedYear = _a.navigatedYear;\n var _b = React.useReducer(function (state, action) {\n return state + (action === NavigationDirection.Next ? CELL_COUNT : -CELL_COUNT);\n }, undefined, function () {\n var rangeYear = selectedYear || navigatedYear || new Date().getFullYear();\n return Math.floor(rangeYear / 10) * 10;\n }), fromYear = _b[0], navigate = _b[1];\n var toYear = fromYear + CELL_COUNT - 1;\n var onNavNext = function () { return navigate(NavigationDirection.Next); };\n var onNavPrevious = function () { return navigate(NavigationDirection.Previous); };\n return [fromYear, toYear, onNavNext, onNavPrevious];\n}\nexport var CalendarYearBase = function (props) {\n var animateBackwards = useAnimateBackwards(props);\n var _a = useYearRangeState(props), fromYear = _a[0], toYear = _a[1], onNavNext = _a[2], onNavPrevious = _a[3];\n var gridRef = React.useRef(null);\n React.useImperativeHandle(props.componentRef, function () { return ({\n focus: function () {\n var _a, _b;\n (_b = (_a = gridRef.current) === null || _a === void 0 ? void 0 : _a.focus) === null || _b === void 0 ? void 0 : _b.call(_a);\n },\n }); });\n var styles = props.styles, theme = props.theme, className = props.className;\n var classNames = getClassNames(styles, {\n theme: theme,\n className: className,\n });\n return (React.createElement(\"div\", { className: classNames.root },\n React.createElement(CalendarYearHeader, __assign({}, props, { fromYear: fromYear, toYear: toYear, onSelectPrev: onNavPrevious, onSelectNext: onNavNext, animateBackwards: animateBackwards })),\n React.createElement(CalendarYearGrid, __assign({}, props, { fromYear: fromYear, toYear: toYear, animateBackwards: animateBackwards, componentRef: gridRef }))));\n};\nCalendarYearBase.displayName = 'CalendarYearBase';\n//# sourceMappingURL=CalendarYear.base.js.map","import { getStyles } from './CalendarYear.styles';\nimport { styled } from '../../../Utilities';\nimport { CalendarYearBase } from './CalendarYear.base';\nexport var CalendarYear = styled(CalendarYearBase, getStyles, undefined, { scope: 'CalendarYear' });\n//# sourceMappingURL=CalendarYear.js.map","import { getStyles as getPickerStyles } from '../CalendarPicker/CalendarPicker.styles';\nexport var getStyles = function (props) {\n /* Return styles from the base class.\n * If this component has extra styles not in the base, apply them here i.e.:\n * const myStyle: IStyle = {\n * display: \"block\"\n * };\n * return {...getPickerStyles(props), myStyle};\n */\n return getPickerStyles(props);\n};\n//# sourceMappingURL=CalendarYear.styles.js.map","import * as React from 'react';\nimport { FocusZone } from '../../../FocusZone';\nimport { addYears, setMonth, getYearStart, getYearEnd, getMonthStart, getMonthEnd, compareDatePart, DEFAULT_DATE_FORMATTING, } from '@fluentui/date-time-utilities';\nimport { Icon } from '../../../Icon';\nimport { getStyles } from './CalendarMonth.styles';\nimport { css, getRTL, classNamesFunction, KeyCodes, format, getPropsWithDefaults } from '@fluentui/utilities';\nimport { CalendarYear } from '../CalendarYear/CalendarYear';\nimport { usePrevious } from '@fluentui/react-hooks';\nimport { defaultCalendarNavigationIcons } from '../defaults';\nvar MONTHS_PER_ROW = 4;\nvar getClassNames = classNamesFunction();\nvar DEFAULT_PROPS = {\n styles: getStyles,\n strings: undefined,\n navigationIcons: defaultCalendarNavigationIcons,\n dateTimeFormatter: DEFAULT_DATE_FORMATTING,\n yearPickerHidden: false,\n};\nfunction useAnimateBackwards(_a) {\n var navigatedDate = _a.navigatedDate;\n var currentYear = navigatedDate.getFullYear();\n var previousYear = usePrevious(currentYear);\n if (previousYear === undefined || previousYear === currentYear) {\n return undefined;\n }\n else {\n return previousYear > currentYear;\n }\n}\nfunction useFocusLogic(_a) {\n var componentRef = _a.componentRef;\n var navigatedMonthRef = React.useRef(null);\n var calendarYearRef = React.useRef(null);\n var focusOnUpdate = React.useRef(false);\n var focus = React.useCallback(function () {\n if (calendarYearRef.current) {\n calendarYearRef.current.focus();\n }\n else if (navigatedMonthRef.current) {\n navigatedMonthRef.current.focus();\n }\n }, []);\n React.useImperativeHandle(componentRef, function () { return ({ focus: focus }); }, [focus]);\n React.useEffect(function () {\n if (focusOnUpdate.current) {\n focus();\n focusOnUpdate.current = false;\n }\n });\n var focusOnNextUpdate = function () {\n focusOnUpdate.current = true;\n };\n return [navigatedMonthRef, calendarYearRef, focusOnNextUpdate];\n}\nexport var CalendarMonthBase = function (propsWithoutDefaults) {\n var _a, _b;\n var props = getPropsWithDefaults(DEFAULT_PROPS, propsWithoutDefaults);\n var _c = useFocusLogic(props), navigatedMonthRef = _c[0], calendarYearRef = _c[1], focusOnNextUpdate = _c[2];\n var _d = React.useState(false), isYearPickerVisible = _d[0], setIsYearPickerVisible = _d[1];\n var animateBackwards = useAnimateBackwards(props);\n var navigatedDate = props.navigatedDate, selectedDate = props.selectedDate, strings = props.strings, _e = props.today, today = _e === void 0 ? new Date() : _e, navigationIcons = props.navigationIcons, dateTimeFormatter = props.dateTimeFormatter, minDate = props.minDate, maxDate = props.maxDate, theme = props.theme, styles = props.styles, className = props.className, allFocusable = props.allFocusable, highlightCurrentMonth = props.highlightCurrentMonth, highlightSelectedMonth = props.highlightSelectedMonth, animationDirection = props.animationDirection, yearPickerHidden = props.yearPickerHidden, onNavigateDate = props.onNavigateDate;\n var selectMonthCallback = function (newMonth) {\n return function () { return onSelectMonth(newMonth); };\n };\n var onSelectNextYear = function () {\n onNavigateDate(addYears(navigatedDate, 1), false);\n };\n var onSelectPrevYear = function () {\n onNavigateDate(addYears(navigatedDate, -1), false);\n };\n var onSelectMonth = function (newMonth) {\n var _a;\n // If header is clickable the calendars are overlayed, switch back to day picker when month is clicked\n (_a = props.onHeaderSelect) === null || _a === void 0 ? void 0 : _a.call(props);\n onNavigateDate(setMonth(navigatedDate, newMonth), true);\n };\n var onHeaderSelect = function () {\n var _a;\n if (!yearPickerHidden) {\n focusOnNextUpdate();\n setIsYearPickerVisible(true);\n }\n else {\n (_a = props.onHeaderSelect) === null || _a === void 0 ? void 0 : _a.call(props);\n }\n };\n var onSelectYear = function (selectedYear) {\n focusOnNextUpdate();\n var navYear = navigatedDate.getFullYear();\n if (navYear !== selectedYear) {\n var newNavigationDate = new Date(navigatedDate.getTime());\n newNavigationDate.setFullYear(selectedYear);\n // for min and max dates, adjust the new navigation date - perhaps this should be\n // checked on the master navigation date handler (i.e. in Calendar)\n if (maxDate && newNavigationDate > maxDate) {\n newNavigationDate = setMonth(newNavigationDate, maxDate.getMonth());\n }\n else if (minDate && newNavigationDate < minDate) {\n newNavigationDate = setMonth(newNavigationDate, minDate.getMonth());\n }\n onNavigateDate(newNavigationDate, true);\n }\n setIsYearPickerVisible(false);\n };\n var onYearPickerHeaderSelect = function (focus) {\n focusOnNextUpdate();\n setIsYearPickerVisible(false);\n };\n // navigationIcons has a default value in defaultProps, but typescript doesn't recognize this\n var leftNavigationIcon = navigationIcons.leftNavigation;\n var rightNavigationIcon = navigationIcons.rightNavigation;\n var dateFormatter = dateTimeFormatter;\n // determine if previous/next years are in bounds\n var isPrevYearInBounds = minDate ? compareDatePart(minDate, getYearStart(navigatedDate)) < 0 : true;\n var isNextYearInBounds = maxDate ? compareDatePart(getYearEnd(navigatedDate), maxDate) < 0 : true;\n var classNames = getClassNames(styles, {\n theme: theme,\n className: className,\n hasHeaderClickCallback: !!props.onHeaderSelect || !yearPickerHidden,\n highlightCurrent: highlightCurrentMonth,\n highlightSelected: highlightSelectedMonth,\n animateBackwards: animateBackwards,\n animationDirection: animationDirection,\n });\n if (isYearPickerVisible) {\n var _f = getYearStrings(props), onRenderYear = _f[0], yearStrings = _f[1];\n // use navigated date for the year picker\n return (React.createElement(CalendarYear, { key: 'calendarYear', minYear: minDate ? minDate.getFullYear() : undefined, maxYear: maxDate ? maxDate.getFullYear() : undefined, \n // eslint-disable-next-line react/jsx-no-bind\n onSelectYear: onSelectYear, navigationIcons: navigationIcons, \n // eslint-disable-next-line react/jsx-no-bind\n onHeaderSelect: onYearPickerHeaderSelect, selectedYear: selectedDate ? selectedDate.getFullYear() : navigatedDate ? navigatedDate.getFullYear() : undefined, onRenderYear: onRenderYear, strings: yearStrings, componentRef: calendarYearRef, styles: styles, highlightCurrentYear: highlightCurrentMonth, highlightSelectedYear: highlightSelectedMonth, animationDirection: animationDirection }));\n }\n var rowIndexes = [];\n for (var i = 0; i < strings.shortMonths.length / MONTHS_PER_ROW; i++) {\n rowIndexes.push(i);\n }\n var yearString = dateFormatter.formatYear(navigatedDate);\n var headerAriaLabel = strings.monthPickerHeaderAriaLabel\n ? format(strings.monthPickerHeaderAriaLabel, yearString)\n : yearString;\n return (React.createElement(\"div\", { className: classNames.root },\n React.createElement(\"div\", { className: classNames.headerContainer },\n React.createElement(\"button\", { className: classNames.currentItemButton, onClick: onHeaderSelect, onKeyDown: onButtonKeyDown(onHeaderSelect), \"aria-label\": headerAriaLabel, \"data-is-focusable\": !!props.onHeaderSelect || !yearPickerHidden, tabIndex: !!props.onHeaderSelect || !yearPickerHidden ? 0 : -1, type: \"button\", \"aria-atomic\": true, \"aria-live\": \"polite\" }, yearString),\n React.createElement(\"div\", { className: classNames.navigationButtonsContainer },\n React.createElement(\"button\", { className: css(classNames.navigationButton, (_a = {},\n _a[classNames.disabled] = !isPrevYearInBounds,\n _a)), \"aria-disabled\": !isPrevYearInBounds, tabIndex: isPrevYearInBounds ? undefined : allFocusable ? 0 : -1, onClick: isPrevYearInBounds ? onSelectPrevYear : undefined, onKeyDown: isPrevYearInBounds ? onButtonKeyDown(onSelectPrevYear) : undefined, title: strings.prevYearAriaLabel\n ? strings.prevYearAriaLabel + ' ' + dateFormatter.formatYear(addYears(navigatedDate, -1))\n : undefined, type: \"button\" },\n React.createElement(Icon, { iconName: getRTL() ? rightNavigationIcon : leftNavigationIcon })),\n React.createElement(\"button\", { className: css(classNames.navigationButton, (_b = {},\n _b[classNames.disabled] = !isNextYearInBounds,\n _b)), \"aria-disabled\": !isNextYearInBounds, tabIndex: isNextYearInBounds ? undefined : allFocusable ? 0 : -1, onClick: isNextYearInBounds ? onSelectNextYear : undefined, onKeyDown: isNextYearInBounds ? onButtonKeyDown(onSelectNextYear) : undefined, title: strings.nextYearAriaLabel\n ? strings.nextYearAriaLabel + ' ' + dateFormatter.formatYear(addYears(navigatedDate, 1))\n : undefined, type: \"button\" },\n React.createElement(Icon, { iconName: getRTL() ? leftNavigationIcon : rightNavigationIcon })))),\n React.createElement(FocusZone, null,\n React.createElement(\"div\", { className: classNames.gridContainer, role: \"grid\", \"aria-label\": yearString }, rowIndexes.map(function (rowNum) {\n var monthsForRow = strings.shortMonths.slice(rowNum * MONTHS_PER_ROW, (rowNum + 1) * MONTHS_PER_ROW);\n return (React.createElement(\"div\", { key: 'monthRow_' + rowNum + navigatedDate.getFullYear(), role: \"row\", className: classNames.buttonRow }, monthsForRow.map(function (month, index) {\n var _a;\n var monthIndex = rowNum * MONTHS_PER_ROW + index;\n var indexedMonth = setMonth(navigatedDate, monthIndex);\n var isNavigatedMonth = navigatedDate.getMonth() === monthIndex;\n var isSelectedMonth = selectedDate.getMonth() === monthIndex;\n var isSelectedYear = selectedDate.getFullYear() === navigatedDate.getFullYear();\n var isInBounds = (minDate ? compareDatePart(minDate, getMonthEnd(indexedMonth)) < 1 : true) &&\n (maxDate ? compareDatePart(getMonthStart(indexedMonth), maxDate) < 1 : true);\n return (React.createElement(\"button\", { ref: isNavigatedMonth ? navigatedMonthRef : undefined, role: 'gridcell', className: css(classNames.itemButton, (_a = {},\n _a[classNames.current] = highlightCurrentMonth && isCurrentMonth(monthIndex, navigatedDate.getFullYear(), today),\n _a[classNames.selected] = highlightSelectedMonth && isSelectedMonth && isSelectedYear,\n _a[classNames.disabled] = !isInBounds,\n _a)), disabled: !allFocusable && !isInBounds, key: monthIndex, onClick: isInBounds ? selectMonthCallback(monthIndex) : undefined, onKeyDown: isInBounds ? onButtonKeyDown(selectMonthCallback(monthIndex)) : undefined, \"aria-label\": dateFormatter.formatMonth(indexedMonth, strings), \"aria-selected\": isNavigatedMonth, \"data-is-focusable\": isInBounds ? true : undefined, type: \"button\" }, month));\n })));\n })))));\n};\nCalendarMonthBase.displayName = 'CalendarMonthBase';\nfunction getYearStrings(_a) {\n var strings = _a.strings, navigatedDate = _a.navigatedDate, dateTimeFormatter = _a.dateTimeFormatter;\n var yearToString = function (year) {\n if (dateTimeFormatter) {\n // create a date based on the current nav date\n var yearFormattingDate = new Date(navigatedDate.getTime());\n yearFormattingDate.setFullYear(year);\n return dateTimeFormatter.formatYear(yearFormattingDate);\n }\n return String(year);\n };\n var yearRangeToString = function (yearRange) {\n return yearToString(yearRange.fromYear) + \" - \" + yearToString(yearRange.toYear);\n };\n var yearRangeToNextDecadeLabel = function (yearRange) {\n return strings.nextYearRangeAriaLabel ? strings.nextYearRangeAriaLabel + \" \" + yearRangeToString(yearRange) : '';\n };\n var yearRangeToPrevDecadeLabel = function (yearRange) {\n return strings.prevYearRangeAriaLabel ? strings.prevYearRangeAriaLabel + \" \" + yearRangeToString(yearRange) : '';\n };\n return [\n yearToString,\n {\n rangeAriaLabel: yearRangeToString,\n prevRangeAriaLabel: yearRangeToPrevDecadeLabel,\n nextRangeAriaLabel: yearRangeToNextDecadeLabel,\n headerAriaLabelFormatString: strings.yearPickerHeaderAriaLabel,\n },\n ];\n}\nfunction isCurrentMonth(month, year, today) {\n return today.getFullYear() === year && today.getMonth() === month;\n}\nfunction onButtonKeyDown(callback) {\n return function (ev) {\n // eslint-disable-next-line deprecation/deprecation\n switch (ev.which) {\n case KeyCodes.enter:\n callback();\n break;\n }\n };\n}\n//# sourceMappingURL=CalendarMonth.base.js.map","import { CalendarMonthBase } from './CalendarMonth.base';\nimport { getStyles } from './CalendarMonth.styles';\nimport { styled } from '../../../Utilities';\nexport var CalendarMonth = styled(CalendarMonthBase, getStyles, undefined, { scope: 'CalendarMonth' });\n//# sourceMappingURL=CalendarMonth.js.map","import { __assign } from \"tslib\";\nimport * as React from 'react';\nimport { DayOfWeek, FirstWeekOfYear, DateRangeType, addMonths, addYears, DEFAULT_CALENDAR_STRINGS, DEFAULT_DATE_FORMATTING, } from '@fluentui/date-time-utilities';\nimport { CalendarDay } from './CalendarDay/CalendarDay';\nimport { CalendarMonth } from './CalendarMonth/CalendarMonth';\nimport { css, KeyCodes, classNamesFunction, focusAsync, format, FocusRects, getPropsWithDefaults, getWindow, } from '@fluentui/utilities';\nimport { useControllableValue } from '@fluentui/react-hooks';\nimport { defaultCalendarNavigationIcons } from './defaults';\nvar MIN_SIZE_FORCE_OVERLAY = 440;\nvar getClassNames = classNamesFunction();\nvar defaultWorkWeekDays = [\n DayOfWeek.Monday,\n DayOfWeek.Tuesday,\n DayOfWeek.Wednesday,\n DayOfWeek.Thursday,\n DayOfWeek.Friday,\n];\nvar DEFAULT_PROPS = {\n isMonthPickerVisible: true,\n isDayPickerVisible: true,\n showMonthPickerAsOverlay: false,\n today: new Date(),\n firstDayOfWeek: DayOfWeek.Sunday,\n dateRangeType: DateRangeType.Day,\n showGoToToday: true,\n strings: DEFAULT_CALENDAR_STRINGS,\n highlightCurrentMonth: false,\n highlightSelectedMonth: false,\n navigationIcons: defaultCalendarNavigationIcons,\n showWeekNumbers: false,\n firstWeekOfYear: FirstWeekOfYear.FirstDay,\n dateTimeFormatter: DEFAULT_DATE_FORMATTING,\n showSixWeeksByDefault: false,\n workWeekDays: defaultWorkWeekDays,\n showCloseButton: false,\n allFocusable: false,\n};\nfunction useDateState(_a) {\n var value = _a.value, _b = _a.today, today = _b === void 0 ? new Date() : _b, onSelectDate = _a.onSelectDate;\n /** The currently selected date in the calendar */\n var _c = useControllableValue(value, today), _d = _c[0], selectedDate = _d === void 0 ? today : _d, setSelectedDate = _c[1];\n /** The currently focused date in the day picker, but not necessarily selected */\n var _e = React.useState(value), _f = _e[0], navigatedDay = _f === void 0 ? today : _f, setNavigatedDay = _e[1];\n /** The currently focused date in the month picker, but not necessarily selected */\n var _g = React.useState(value), _h = _g[0], navigatedMonth = _h === void 0 ? today : _h, setNavigatedMonth = _g[1];\n /** If using a controlled value, when that value changes, navigate to that date */\n var _j = React.useState(value), _k = _j[0], lastSelectedDate = _k === void 0 ? today : _k, setLastSelectedDate = _j[1];\n if (value && lastSelectedDate.valueOf() !== value.valueOf()) {\n setNavigatedDay(value);\n setNavigatedMonth(value);\n setLastSelectedDate(value);\n }\n var navigateMonth = function (date) {\n setNavigatedMonth(date);\n };\n var navigateDay = function (date) {\n setNavigatedMonth(date);\n setNavigatedDay(date);\n };\n var onDateSelected = function (date, selectedDateRangeArray) {\n setNavigatedMonth(date);\n setNavigatedDay(date);\n setSelectedDate(date);\n onSelectDate === null || onSelectDate === void 0 ? void 0 : onSelectDate(date, selectedDateRangeArray);\n };\n return [selectedDate, navigatedDay, navigatedMonth, onDateSelected, navigateDay, navigateMonth];\n}\nfunction useVisibilityState(props) {\n /** State used to show/hide month picker */\n var _a = useControllableValue(getShowMonthPickerAsOverlay(props) ? undefined : props.isMonthPickerVisible, false), _b = _a[0], isMonthPickerVisible = _b === void 0 ? true : _b, setIsMonthPickerVisible = _a[1];\n /** State used to show/hide day picker */\n var _c = useControllableValue(getShowMonthPickerAsOverlay(props) ? undefined : props.isDayPickerVisible, true), _d = _c[0], isDayPickerVisible = _d === void 0 ? true : _d, setIsDayPickerVisible = _c[1];\n var toggleDayMonthPickerVisibility = function () {\n setIsMonthPickerVisible(!isMonthPickerVisible);\n setIsDayPickerVisible(!isDayPickerVisible);\n };\n return [isMonthPickerVisible, isDayPickerVisible, toggleDayMonthPickerVisibility];\n}\nfunction useFocusLogic(_a, isDayPickerVisible, isMonthPickerVisible) {\n var componentRef = _a.componentRef;\n var dayPicker = React.useRef(null);\n var monthPicker = React.useRef(null);\n var focusOnUpdate = React.useRef(false);\n var focus = React.useCallback(function () {\n if (isDayPickerVisible && dayPicker.current) {\n focusAsync(dayPicker.current);\n }\n else if (isMonthPickerVisible && monthPicker.current) {\n focusAsync(monthPicker.current);\n }\n }, [isDayPickerVisible, isMonthPickerVisible]);\n React.useImperativeHandle(componentRef, function () { return ({ focus: focus }); }, [focus]);\n React.useEffect(function () {\n if (focusOnUpdate.current) {\n focus();\n focusOnUpdate.current = false;\n }\n });\n var focusOnNextUpdate = function () {\n focusOnUpdate.current = true;\n };\n return [dayPicker, monthPicker, focusOnNextUpdate];\n}\nexport var CalendarBase = React.forwardRef(function (propsWithoutDefaults, forwardedRef) {\n var props = getPropsWithDefaults(DEFAULT_PROPS, propsWithoutDefaults);\n var _a = useDateState(props), selectedDate = _a[0], navigatedDay = _a[1], navigatedMonth = _a[2], onDateSelected = _a[3], navigateDay = _a[4], navigateMonth = _a[5];\n var _b = useVisibilityState(props), isMonthPickerVisible = _b[0], isDayPickerVisible = _b[1], toggleDayMonthPickerVisibility = _b[2];\n var _c = useFocusLogic(props, isDayPickerVisible, isMonthPickerVisible), dayPicker = _c[0], monthPicker = _c[1], focusOnNextUpdate = _c[2];\n var renderGoToTodayButton = function () {\n var goTodayEnabled = showGoToToday;\n if (goTodayEnabled && today) {\n goTodayEnabled =\n navigatedDay.getFullYear() !== today.getFullYear() ||\n navigatedDay.getMonth() !== today.getMonth() ||\n navigatedMonth.getFullYear() !== today.getFullYear() ||\n navigatedMonth.getMonth() !== today.getMonth();\n }\n return (showGoToToday && (React.createElement(\"button\", { className: css('js-goToday', classes.goTodayButton), onClick: onGotoToday, onKeyDown: onButtonKeyDown(onGotoToday), type: \"button\", disabled: !goTodayEnabled }, strings.goToToday)));\n };\n var onNavigateDayDate = function (date, focusOnNavigatedDay) {\n navigateDay(date);\n if (focusOnNavigatedDay) {\n focusOnNextUpdate();\n }\n };\n var onNavigateMonthDate = function (date, focusOnNavigatedDay) {\n if (focusOnNavigatedDay) {\n focusOnNextUpdate();\n }\n if (!focusOnNavigatedDay) {\n navigateMonth(date);\n return;\n }\n if (monthPickerOnly) {\n onDateSelected(date);\n }\n navigateDay(date);\n };\n var onHeaderSelect = getShowMonthPickerAsOverlay(props)\n ? function () {\n toggleDayMonthPickerVisibility();\n focusOnNextUpdate();\n }\n : undefined;\n var onGotoToday = function () {\n navigateDay(today);\n focusOnNextUpdate();\n };\n var onButtonKeyDown = function (callback) {\n return function (ev) {\n // eslint-disable-next-line deprecation/deprecation\n switch (ev.which) {\n case KeyCodes.enter:\n case KeyCodes.space:\n callback();\n break;\n }\n };\n };\n var onDatePickerPopupKeyDown = function (ev) {\n var _a;\n // eslint-disable-next-line deprecation/deprecation\n switch (ev.which) {\n case KeyCodes.enter:\n ev.preventDefault();\n break;\n case KeyCodes.backspace:\n ev.preventDefault();\n break;\n case KeyCodes.escape:\n (_a = props.onDismiss) === null || _a === void 0 ? void 0 : _a.call(props);\n break;\n case KeyCodes.pageUp:\n if (ev.ctrlKey) {\n // go to next year\n navigateDay(addYears(navigatedDay, 1));\n }\n else {\n // go to next month\n navigateDay(addMonths(navigatedDay, 1));\n }\n ev.preventDefault();\n break;\n case KeyCodes.pageDown:\n if (ev.ctrlKey) {\n // go to previous year\n navigateDay(addYears(navigatedDay, -1));\n }\n else {\n // go to previous month\n navigateDay(addMonths(navigatedDay, -1));\n }\n ev.preventDefault();\n break;\n default:\n break;\n }\n };\n var rootClass = 'ms-DatePicker';\n var firstDayOfWeek = props.firstDayOfWeek, dateRangeType = props.dateRangeType, strings = props.strings, showGoToToday = props.showGoToToday, highlightCurrentMonth = props.highlightCurrentMonth, highlightSelectedMonth = props.highlightSelectedMonth, navigationIcons = props.navigationIcons, minDate = props.minDate, maxDate = props.maxDate, restrictedDates = props.restrictedDates, className = props.className, showCloseButton = props.showCloseButton, allFocusable = props.allFocusable, styles = props.styles, showWeekNumbers = props.showWeekNumbers, theme = props.theme, calendarDayProps = props.calendarDayProps, calendarMonthProps = props.calendarMonthProps, dateTimeFormatter = props.dateTimeFormatter, _d = props.today, today = _d === void 0 ? new Date() : _d;\n var showMonthPickerAsOverlay = getShowMonthPickerAsOverlay(props);\n var monthPickerOnly = !showMonthPickerAsOverlay && !isDayPickerVisible;\n var overlaidWithButton = showMonthPickerAsOverlay && showGoToToday;\n var classes = getClassNames(styles, {\n theme: theme,\n className: className,\n isMonthPickerVisible: isMonthPickerVisible,\n isDayPickerVisible: isDayPickerVisible,\n monthPickerOnly: monthPickerOnly,\n showMonthPickerAsOverlay: showMonthPickerAsOverlay,\n overlaidWithButton: overlaidWithButton,\n overlayedWithButton: overlaidWithButton,\n showGoToToday: showGoToToday,\n showWeekNumbers: showWeekNumbers,\n });\n var todayDateString = '';\n var selectedDateString = '';\n if (dateTimeFormatter && strings.todayDateFormatString) {\n todayDateString = format(strings.todayDateFormatString, dateTimeFormatter.formatMonthDayYear(today, strings));\n }\n if (dateTimeFormatter && strings.selectedDateFormatString) {\n selectedDateString = format(strings.selectedDateFormatString, dateTimeFormatter.formatMonthDayYear(selectedDate, strings));\n }\n var selectionAndTodayString = selectedDateString + ', ' + todayDateString;\n return (React.createElement(\"div\", { ref: forwardedRef, role: \"group\", \"aria-label\": selectionAndTodayString, className: css(rootClass, classes.root, className, 'ms-slideDownIn10'), onKeyDown: onDatePickerPopupKeyDown },\n React.createElement(\"div\", { className: classes.liveRegion, \"aria-live\": \"polite\", \"aria-atomic\": \"true\" },\n React.createElement(\"span\", null, selectedDateString)),\n isDayPickerVisible && (React.createElement(CalendarDay, __assign({ selectedDate: selectedDate, navigatedDate: navigatedDay, today: props.today, onSelectDate: onDateSelected, \n // eslint-disable-next-line react/jsx-no-bind\n onNavigateDate: onNavigateDayDate, onDismiss: props.onDismiss, firstDayOfWeek: firstDayOfWeek, dateRangeType: dateRangeType, strings: strings, \n // eslint-disable-next-line react/jsx-no-bind\n onHeaderSelect: onHeaderSelect, navigationIcons: navigationIcons, showWeekNumbers: props.showWeekNumbers, firstWeekOfYear: props.firstWeekOfYear, dateTimeFormatter: props.dateTimeFormatter, showSixWeeksByDefault: props.showSixWeeksByDefault, minDate: minDate, maxDate: maxDate, restrictedDates: restrictedDates, workWeekDays: props.workWeekDays, componentRef: dayPicker, showCloseButton: showCloseButton, allFocusable: allFocusable }, calendarDayProps))),\n isDayPickerVisible && isMonthPickerVisible && React.createElement(\"div\", { className: classes.divider }),\n isMonthPickerVisible ? (React.createElement(\"div\", { className: classes.monthPickerWrapper },\n React.createElement(CalendarMonth, __assign({ navigatedDate: navigatedMonth, selectedDate: navigatedDay, strings: strings, \n // eslint-disable-next-line react/jsx-no-bind\n onNavigateDate: onNavigateMonthDate, today: props.today, highlightCurrentMonth: highlightCurrentMonth, highlightSelectedMonth: highlightSelectedMonth, \n // eslint-disable-next-line react/jsx-no-bind\n onHeaderSelect: onHeaderSelect, navigationIcons: navigationIcons, dateTimeFormatter: props.dateTimeFormatter, minDate: minDate, maxDate: maxDate, componentRef: monthPicker }, calendarMonthProps)),\n renderGoToTodayButton())) : (renderGoToTodayButton()),\n React.createElement(FocusRects, null)));\n});\nCalendarBase.displayName = 'CalendarBase';\nfunction getShowMonthPickerAsOverlay(props) {\n var win = getWindow();\n return props.showMonthPickerAsOverlay || (win && win.innerWidth <= MIN_SIZE_FORCE_OVERLAY);\n}\n//# sourceMappingURL=Calendar.base.js.map","import { normalize, FontSizes, getFocusStyle } from '@fluentui/style-utilities';\nexport var styles = function (props) {\n var className = props.className, theme = props.theme, isDayPickerVisible = props.isDayPickerVisible, isMonthPickerVisible = props.isMonthPickerVisible, showWeekNumbers = props.showWeekNumbers;\n var palette = theme.palette;\n var totalWidth = isDayPickerVisible && isMonthPickerVisible ? 440 : 220;\n if (showWeekNumbers && isDayPickerVisible) {\n totalWidth += 30;\n }\n return {\n root: [\n normalize,\n {\n display: 'flex',\n width: totalWidth,\n },\n !isMonthPickerVisible && {\n flexDirection: 'column',\n },\n className,\n ],\n divider: {\n top: 0,\n borderRight: '1px solid',\n borderColor: palette.neutralLight,\n },\n monthPickerWrapper: [\n {\n display: 'flex',\n flexDirection: 'column',\n },\n ],\n goTodayButton: [\n getFocusStyle(theme, { inset: -1 }),\n {\n bottom: 0,\n color: palette.neutralPrimary,\n height: 30,\n lineHeight: 30,\n backgroundColor: 'transparent',\n border: 'none',\n boxSizing: 'content-box',\n padding: '0 4px',\n alignSelf: 'flex-end',\n marginRight: 16,\n marginTop: 3,\n fontSize: FontSizes.small,\n fontFamily: 'inherit',\n overflow: 'visible',\n selectors: {\n '& div': {\n fontSize: FontSizes.small,\n },\n '&:hover': {\n color: palette.themePrimary,\n backgroundColor: 'transparent',\n cursor: 'pointer',\n },\n '&:active': {\n color: palette.themeDark,\n },\n '&:disabled': {\n color: palette.neutralTertiaryAlt,\n pointerEvents: 'none',\n },\n },\n },\n ],\n liveRegion: {\n border: 0,\n height: '1px',\n margin: '-1px',\n overflow: 'hidden',\n padding: 0,\n width: '1px',\n position: 'absolute',\n },\n };\n};\n//# sourceMappingURL=Calendar.styles.js.map","import { styled } from '@fluentui/utilities';\nimport { CalendarBase } from './Calendar.base';\nimport { styles } from './Calendar.styles';\nexport var Calendar = styled(CalendarBase, styles, undefined, {\n scope: 'Calendar',\n});\n//# sourceMappingURL=Calendar.js.map","/**\n * {@docCategory Calendar}\n */\nexport var AnimationDirection;\n(function (AnimationDirection) {\n /**\n * Grid will transition out and in horizontally\n */\n AnimationDirection[AnimationDirection[\"Horizontal\"] = 0] = \"Horizontal\";\n /**\n * Grid will transition out and in vertically\n */\n AnimationDirection[AnimationDirection[\"Vertical\"] = 1] = \"Vertical\";\n})(AnimationDirection || (AnimationDirection = {}));\n//# sourceMappingURL=Calendar.types.js.map","import { DEFAULT_CALENDAR_STRINGS } from '@fluentui/date-time-utilities';\nexport var defaultCalendarStrings = DEFAULT_CALENDAR_STRINGS;\n/**\n * @deprecated Use `defaultCalendarStrings`\n */\nexport var defaultDayPickerStrings = defaultCalendarStrings;\nexport var defaultCalendarNavigationIcons = {\n leftNavigation: 'Up',\n rightNavigation: 'Down',\n closeIcon: 'CalculatorMultiply',\n};\n//# sourceMappingURL=defaults.js.map","import { __assign, __rest } from \"tslib\";\nimport * as React from 'react';\nimport { CalloutContent } from './CalloutContent';\nimport { Layer } from '../../Layer';\nexport var Callout = React.forwardRef(function (_a, forwardedRef) {\n var layerProps = _a.layerProps, doNotLayer = _a.doNotLayer, rest = __rest(_a, [\"layerProps\", \"doNotLayer\"]);\n var content = React.createElement(CalloutContent, __assign({}, rest, { doNotLayer: doNotLayer, ref: forwardedRef }));\n return doNotLayer ? content : React.createElement(Layer, __assign({}, layerProps), content);\n});\nCallout.displayName = 'Callout';\n//# sourceMappingURL=Callout.js.map","var _a;\nimport { __assign } from \"tslib\";\nimport * as React from 'react';\nimport { DirectionalHint } from '../../common/DirectionalHint';\nimport { css, divProperties, elementContains, focusFirstChild, getNativeProps, on, shallowCompare, getPropsWithDefaults, } from '../../Utilities';\nimport { positionCallout, RectangleEdge, positionCard, getBoundsFromTargetWindow } from '../../Positioning';\nimport { Popup } from '../../Popup';\nimport { classNamesFunction } from '../../Utilities';\nimport { AnimationClassNames } from '../../Styling';\nimport { useMergedRefs, useAsync, useConst, useTarget, useOnEvent } from '@fluentui/react-hooks';\nvar COMPONENT_NAME = 'CalloutContentBase';\nvar ANIMATIONS = (_a = {},\n _a[RectangleEdge.top] = AnimationClassNames.slideUpIn10,\n _a[RectangleEdge.bottom] = AnimationClassNames.slideDownIn10,\n _a[RectangleEdge.left] = AnimationClassNames.slideLeftIn10,\n _a[RectangleEdge.right] = AnimationClassNames.slideRightIn10,\n _a);\nvar BEAK_ORIGIN_POSITION = { top: 0, left: 0 };\n// Microsoft Edge will overwrite inline styles if there is an animation pertaining to that style.\n// To help ensure that edge will respect the offscreen style opacity\n// filter needs to be added as an additional way to set opacity.\n// Also set pointer-events: none so that the callout will not occlude the element it is\n// going to be positioned against\nvar OFF_SCREEN_STYLE = {\n opacity: 0,\n filter: 'opacity(0)',\n pointerEvents: 'none',\n};\n// role and role description go hand-in-hand. Both would be included by spreading getNativeProps for a basic element\n// This constant array can be used to filter these out of native props spread on callout root and apply them together on\n// calloutMain (the Popup component within the callout)\nvar ARIA_ROLE_ATTRIBUTES = ['role', 'aria-roledescription'];\nvar DEFAULT_PROPS = {\n preventDismissOnLostFocus: false,\n preventDismissOnScroll: false,\n preventDismissOnResize: false,\n isBeakVisible: true,\n beakWidth: 16,\n gapSpace: 0,\n minPagePadding: 8,\n directionalHint: DirectionalHint.bottomAutoEdge,\n};\nvar getClassNames = classNamesFunction({\n disableCaching: true, // disabling caching because stylesProp.position mutates often\n});\n/**\n * (Hook) to return a function to lazily fetch the bounds of the target element for the callout.\n */\nfunction useBounds(_a, targetRef, targetWindow) {\n var bounds = _a.bounds, _b = _a.minPagePadding, minPagePadding = _b === void 0 ? DEFAULT_PROPS.minPagePadding : _b, target = _a.target;\n var _c = React.useState(false), targetWindowResized = _c[0], setTargetWindowResized = _c[1];\n var cachedBounds = React.useRef();\n var getBounds = React.useCallback(function () {\n if (!cachedBounds.current || targetWindowResized) {\n var currentBounds = typeof bounds === 'function' ? (targetWindow ? bounds(target, targetWindow) : undefined) : bounds;\n if (!currentBounds && targetWindow) {\n currentBounds = getBoundsFromTargetWindow(targetRef.current, targetWindow);\n currentBounds = {\n top: currentBounds.top + minPagePadding,\n left: currentBounds.left + minPagePadding,\n right: currentBounds.right - minPagePadding,\n bottom: currentBounds.bottom - minPagePadding,\n width: currentBounds.width - minPagePadding * 2,\n height: currentBounds.height - minPagePadding * 2,\n };\n }\n cachedBounds.current = currentBounds;\n targetWindowResized && setTargetWindowResized(false);\n }\n return cachedBounds.current;\n }, [bounds, minPagePadding, target, targetRef, targetWindow, targetWindowResized]);\n var async = useAsync();\n useOnEvent(targetWindow, 'resize', async.debounce(function () {\n setTargetWindowResized(true);\n }, 500, { leading: true }));\n return getBounds;\n}\n/**\n * (Hook) to return the maximum available height for the Callout to render into.\n */\nfunction useMaxHeight(_a, getBounds, positions) {\n var _b;\n var calloutMaxHeight = _a.calloutMaxHeight, finalHeight = _a.finalHeight, directionalHint = _a.directionalHint, directionalHintFixed = _a.directionalHintFixed, hidden = _a.hidden;\n var _c = React.useState(), maxHeight = _c[0], setMaxHeight = _c[1];\n var _d = (_b = positions === null || positions === void 0 ? void 0 : positions.elementPosition) !== null && _b !== void 0 ? _b : {}, top = _d.top, bottom = _d.bottom;\n React.useEffect(function () {\n var _a;\n var _b = (_a = getBounds()) !== null && _a !== void 0 ? _a : {}, topBounds = _b.top, bottomBounds = _b.bottom;\n if (!calloutMaxHeight && !hidden) {\n if (typeof top === 'number' && bottomBounds) {\n setMaxHeight(bottomBounds - top);\n }\n else if (typeof bottom === 'number' && typeof topBounds === 'number' && bottomBounds) {\n setMaxHeight(bottomBounds - topBounds - bottom);\n }\n }\n else if (calloutMaxHeight) {\n setMaxHeight(calloutMaxHeight);\n }\n else {\n setMaxHeight(undefined);\n }\n }, [bottom, calloutMaxHeight, finalHeight, directionalHint, directionalHintFixed, getBounds, hidden, positions, top]);\n return maxHeight;\n}\n/**\n * (Hook) to find the current position of Callout. If Callout is resized then a new position is calculated.\n */\nfunction usePositions(props, hostElement, calloutElement, targetRef, getBounds) {\n var _a = React.useState(), positions = _a[0], setPositions = _a[1];\n var positionAttempts = React.useRef(0);\n var previousTarget = React.useRef();\n var async = useAsync();\n var hidden = props.hidden, target = props.target, finalHeight = props.finalHeight, calloutMaxHeight = props.calloutMaxHeight, onPositioned = props.onPositioned, directionalHint = props.directionalHint;\n React.useEffect(function () {\n if (!hidden) {\n var timerId_1 = async.requestAnimationFrame(function () {\n var _a, _b;\n if (hostElement.current && calloutElement) {\n var currentProps = __assign(__assign({}, props), { target: targetRef.current, bounds: getBounds() });\n // duplicate calloutElement & remove useMaxHeight's maxHeight for position calc\n var dupeCalloutElement = calloutElement.cloneNode(true);\n dupeCalloutElement.style.maxHeight = calloutMaxHeight ? \"\" + calloutMaxHeight : '';\n dupeCalloutElement.style.visibility = 'hidden';\n (_a = calloutElement.parentElement) === null || _a === void 0 ? void 0 : _a.appendChild(dupeCalloutElement);\n var previousPositions = previousTarget.current === target ? positions : undefined;\n // If there is a finalHeight given then we assume that the user knows and will handle\n // additional positioning adjustments so we should call positionCard\n var newPositions = finalHeight\n ? positionCard(currentProps, hostElement.current, dupeCalloutElement, previousPositions)\n : positionCallout(currentProps, hostElement.current, dupeCalloutElement, previousPositions);\n // clean up duplicate calloutElement\n (_b = calloutElement.parentElement) === null || _b === void 0 ? void 0 : _b.removeChild(dupeCalloutElement);\n // Set the new position only when the positions do not exist or one of the new callout positions\n // is different. The position should not change if the position is within 2 decimal places.\n if ((!positions && newPositions) ||\n (positions && newPositions && !arePositionsEqual(positions, newPositions) && positionAttempts.current < 5)) {\n // We should not reposition the callout more than a few times, if it is then the content is likely resizing\n // and we should stop trying to reposition to prevent a stack overflow.\n positionAttempts.current++;\n setPositions(newPositions);\n }\n else if (positionAttempts.current > 0) {\n // Only call the onPositioned callback if the callout has been re-positioned at least once.\n positionAttempts.current = 0;\n onPositioned === null || onPositioned === void 0 ? void 0 : onPositioned(positions);\n }\n }\n }, calloutElement);\n previousTarget.current = target;\n return function () {\n async.cancelAnimationFrame(timerId_1);\n previousTarget.current = undefined;\n };\n }\n else {\n // When the callout is hidden, clear position state so that it is not accidentally used next render.\n setPositions(undefined);\n positionAttempts.current = 0;\n }\n }, [\n hidden,\n directionalHint,\n async,\n calloutElement,\n calloutMaxHeight,\n hostElement,\n targetRef,\n finalHeight,\n getBounds,\n onPositioned,\n positions,\n props,\n target,\n ]);\n return positions;\n}\n/**\n * (Hook) to set up behavior to automatically focus the callout when it appears, if indicated by props.\n */\nfunction useAutoFocus(_a, positions, calloutElement) {\n var hidden = _a.hidden, setInitialFocus = _a.setInitialFocus;\n var async = useAsync();\n var hasPositions = !!positions;\n React.useEffect(function () {\n if (!hidden && setInitialFocus && hasPositions && calloutElement) {\n var timerId_2 = async.requestAnimationFrame(function () { return focusFirstChild(calloutElement); }, calloutElement);\n return function () { return async.cancelAnimationFrame(timerId_2); };\n }\n }, [hidden, hasPositions, async, calloutElement, setInitialFocus]);\n}\n/**\n * (Hook) to set up various handlers to dismiss the popup when it loses focus or the window scrolls or similar cases.\n */\nfunction useDismissHandlers(_a, positions, hostElement, targetRef, targetWindow) {\n var hidden = _a.hidden, onDismiss = _a.onDismiss, \n // eslint-disable-next-line deprecation/deprecation\n preventDismissOnScroll = _a.preventDismissOnScroll, \n // eslint-disable-next-line deprecation/deprecation\n preventDismissOnResize = _a.preventDismissOnResize, \n // eslint-disable-next-line deprecation/deprecation\n preventDismissOnLostFocus = _a.preventDismissOnLostFocus, dismissOnTargetClick = _a.dismissOnTargetClick, shouldDismissOnWindowFocus = _a.shouldDismissOnWindowFocus, preventDismissOnEvent = _a.preventDismissOnEvent;\n var isMouseDownOnPopup = React.useRef(false);\n var async = useAsync();\n var mouseDownHandlers = useConst([\n function () {\n isMouseDownOnPopup.current = true;\n },\n function () {\n isMouseDownOnPopup.current = false;\n },\n ]);\n var positionsExists = !!positions;\n React.useEffect(function () {\n var dismissOnScroll = function (ev) {\n if (positionsExists && !preventDismissOnScroll) {\n dismissOnClickOrScroll(ev);\n }\n };\n var dismissOnResize = function (ev) {\n if (!preventDismissOnResize && !(preventDismissOnEvent && preventDismissOnEvent(ev))) {\n onDismiss === null || onDismiss === void 0 ? void 0 : onDismiss(ev);\n }\n };\n var dismissOnLostFocus = function (ev) {\n if (!preventDismissOnLostFocus) {\n dismissOnClickOrScroll(ev);\n }\n };\n var dismissOnClickOrScroll = function (ev) {\n var target = ev.target;\n var isEventTargetOutsideCallout = hostElement.current && !elementContains(hostElement.current, target);\n // If mouse is pressed down on callout but moved outside then released, don't dismiss the callout.\n if (isEventTargetOutsideCallout && isMouseDownOnPopup.current) {\n isMouseDownOnPopup.current = false;\n return;\n }\n if ((!targetRef.current && isEventTargetOutsideCallout) ||\n (ev.target !== targetWindow &&\n isEventTargetOutsideCallout &&\n (!targetRef.current ||\n 'stopPropagation' in targetRef.current ||\n dismissOnTargetClick ||\n (target !== targetRef.current && !elementContains(targetRef.current, target))))) {\n if (preventDismissOnEvent && preventDismissOnEvent(ev)) {\n return;\n }\n onDismiss === null || onDismiss === void 0 ? void 0 : onDismiss(ev);\n }\n };\n var dismissOnTargetWindowBlur = function (ev) {\n // Do nothing\n if (!shouldDismissOnWindowFocus) {\n return;\n }\n if (((preventDismissOnEvent && !preventDismissOnEvent(ev)) ||\n (!preventDismissOnEvent && !preventDismissOnLostFocus)) &&\n !(targetWindow === null || targetWindow === void 0 ? void 0 : targetWindow.document.hasFocus()) &&\n ev.relatedTarget === null) {\n onDismiss === null || onDismiss === void 0 ? void 0 : onDismiss(ev);\n }\n };\n // This is added so the callout will dismiss when the window is scrolled\n // but not when something inside the callout is scrolled. The delay seems\n // to be required to avoid React firing an async focus event in IE from\n // the target changing focus quickly prior to rendering the callout.\n var disposablesPromise = new Promise(function (resolve) {\n async.setTimeout(function () {\n if (!hidden && targetWindow) {\n var disposables_1 = [\n on(targetWindow, 'scroll', dismissOnScroll, true),\n on(targetWindow, 'resize', dismissOnResize, true),\n on(targetWindow.document.documentElement, 'focus', dismissOnLostFocus, true),\n on(targetWindow.document.documentElement, 'click', dismissOnLostFocus, true),\n on(targetWindow, 'blur', dismissOnTargetWindowBlur, true),\n ];\n resolve(function () {\n disposables_1.forEach(function (dispose) { return dispose(); });\n });\n }\n }, 0);\n });\n return function () {\n disposablesPromise.then(function (dispose) { return dispose(); });\n };\n }, [\n hidden,\n async,\n hostElement,\n targetRef,\n targetWindow,\n onDismiss,\n shouldDismissOnWindowFocus,\n dismissOnTargetClick,\n preventDismissOnLostFocus,\n preventDismissOnResize,\n preventDismissOnScroll,\n positionsExists,\n preventDismissOnEvent,\n ]);\n return mouseDownHandlers;\n}\nexport var CalloutContentBase = React.memo(React.forwardRef(function (propsWithoutDefaults, forwardedRef) {\n var props = getPropsWithDefaults(DEFAULT_PROPS, propsWithoutDefaults);\n var styles = props.styles, style = props.style, ariaLabel = props.ariaLabel, ariaDescribedBy = props.ariaDescribedBy, ariaLabelledBy = props.ariaLabelledBy, className = props.className, isBeakVisible = props.isBeakVisible, children = props.children, beakWidth = props.beakWidth, calloutWidth = props.calloutWidth, calloutMaxWidth = props.calloutMaxWidth, calloutMinWidth = props.calloutMinWidth, doNotLayer = props.doNotLayer, finalHeight = props.finalHeight, _a = props.hideOverflow, hideOverflow = _a === void 0 ? !!finalHeight : _a, backgroundColor = props.backgroundColor, calloutMaxHeight = props.calloutMaxHeight, onScroll = props.onScroll, \n // eslint-disable-next-line deprecation/deprecation\n _b = props.shouldRestoreFocus, \n // eslint-disable-next-line deprecation/deprecation\n shouldRestoreFocus = _b === void 0 ? true : _b, target = props.target, hidden = props.hidden, onLayerMounted = props.onLayerMounted;\n var hostElement = React.useRef(null);\n var _c = React.useState(null), calloutElement = _c[0], setCalloutElement = _c[1];\n var calloutCallback = React.useCallback(function (calloutEl) {\n setCalloutElement(calloutEl);\n }, []);\n var rootRef = useMergedRefs(hostElement, forwardedRef);\n var _d = useTarget(props.target, {\n current: calloutElement,\n }), targetRef = _d[0], targetWindow = _d[1];\n var getBounds = useBounds(props, targetRef, targetWindow);\n var positions = usePositions(props, hostElement, calloutElement, targetRef, getBounds);\n var maxHeight = useMaxHeight(props, getBounds, positions);\n var _e = useDismissHandlers(props, positions, hostElement, targetRef, targetWindow), mouseDownOnPopup = _e[0], mouseUpOnPopup = _e[1];\n // do not set both top and bottom css props from positions\n // instead, use maxHeight\n var isForcedInBounds = (positions === null || positions === void 0 ? void 0 : positions.elementPosition.top) && (positions === null || positions === void 0 ? void 0 : positions.elementPosition.bottom);\n var cssPositions = __assign(__assign({}, positions === null || positions === void 0 ? void 0 : positions.elementPosition), { maxHeight: maxHeight });\n if (isForcedInBounds) {\n cssPositions.bottom = undefined;\n }\n useAutoFocus(props, positions, calloutElement);\n React.useEffect(function () {\n if (!hidden) {\n onLayerMounted === null || onLayerMounted === void 0 ? void 0 : onLayerMounted();\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps -- should only run if hidden changes\n }, [hidden]);\n // If there is no target window then we are likely in server side rendering and we should not render anything.\n if (!targetWindow) {\n return null;\n }\n var overflowYHidden = hideOverflow;\n var beakVisible = isBeakVisible && !!target;\n var classNames = getClassNames(styles, {\n theme: props.theme,\n className: className,\n overflowYHidden: overflowYHidden,\n calloutWidth: calloutWidth,\n positions: positions,\n beakWidth: beakWidth,\n backgroundColor: backgroundColor,\n calloutMaxWidth: calloutMaxWidth,\n calloutMinWidth: calloutMinWidth,\n doNotLayer: doNotLayer,\n });\n var overflowStyle = __assign(__assign({ maxHeight: calloutMaxHeight ? calloutMaxHeight : '100%' }, style), (overflowYHidden && { overflowY: 'hidden' }));\n var visibilityStyle = props.hidden ? { visibility: 'hidden' } : undefined;\n // React.CSSProperties does not understand IRawStyle, so the inline animations will need to be cast as any for now.\n return (React.createElement(\"div\", { ref: rootRef, className: classNames.container, style: visibilityStyle },\n React.createElement(\"div\", __assign({}, getNativeProps(props, divProperties, ARIA_ROLE_ATTRIBUTES), { className: css(classNames.root, positions && positions.targetEdge && ANIMATIONS[positions.targetEdge]), style: positions ? __assign({}, cssPositions) : OFF_SCREEN_STYLE, \n // Safari and Firefox on Mac OS requires this to back-stop click events so focus remains in the Callout.\n // See https://developer.mozilla.org/en-US/docs/Web/HTML/Element/button#Clicking_and_focus\n tabIndex: -1, ref: calloutCallback }),\n beakVisible && React.createElement(\"div\", { className: classNames.beak, style: getBeakPosition(positions) }),\n beakVisible && React.createElement(\"div\", { className: classNames.beakCurtain }),\n React.createElement(Popup, __assign({}, getNativeProps(props, ARIA_ROLE_ATTRIBUTES), { ariaDescribedBy: ariaDescribedBy, ariaLabel: ariaLabel, ariaLabelledBy: ariaLabelledBy, className: classNames.calloutMain, onDismiss: props.onDismiss, onMouseDown: mouseDownOnPopup, onMouseUp: mouseUpOnPopup, onRestoreFocus: props.onRestoreFocus, onScroll: onScroll, shouldRestoreFocus: shouldRestoreFocus, style: overflowStyle }), children))));\n}), function (previousProps, nextProps) {\n if (!nextProps.shouldUpdateWhenHidden && previousProps.hidden && nextProps.hidden) {\n // Do not update when hidden.\n return true;\n }\n return shallowCompare(previousProps, nextProps);\n});\n/**\n * (Utility) to find and return the current `Callout` Beak position.\n *\n * @param positions\n */\nfunction getBeakPosition(positions) {\n var _a, _b;\n var beakPositionStyle = __assign(__assign({}, (_a = positions === null || positions === void 0 ? void 0 : positions.beakPosition) === null || _a === void 0 ? void 0 : _a.elementPosition), { display: ((_b = positions === null || positions === void 0 ? void 0 : positions.beakPosition) === null || _b === void 0 ? void 0 : _b.hideBeak) ? 'none' : undefined });\n if (!beakPositionStyle.top && !beakPositionStyle.bottom && !beakPositionStyle.left && !beakPositionStyle.right) {\n beakPositionStyle.left = BEAK_ORIGIN_POSITION.left;\n beakPositionStyle.top = BEAK_ORIGIN_POSITION.top;\n }\n return beakPositionStyle;\n}\n/**\n * (Utility) used to compare two different elementPositions to determine whether they are equal.\n *\n * @param prevElementPositions\n * @param newElementPosition\n */\nfunction arePositionsEqual(prevElementPositions, newElementPosition) {\n return (comparePositions(prevElementPositions.elementPosition, newElementPosition.elementPosition) &&\n comparePositions(prevElementPositions.beakPosition.elementPosition, newElementPosition.beakPosition.elementPosition));\n}\n/**\n * (Utility) used in **arePositionsEqual** to compare two different elementPositions.\n *\n * @param prevElementPositions\n * @param newElementPositions\n */\nfunction comparePositions(prevElementPositions, newElementPositions) {\n for (var key in newElementPositions) {\n if (newElementPositions.hasOwnProperty(key)) {\n var oldPositionEdge = prevElementPositions[key];\n var newPositionEdge = newElementPositions[key];\n if (oldPositionEdge !== undefined && newPositionEdge !== undefined) {\n if (oldPositionEdge.toFixed(2) !== newPositionEdge.toFixed(2)) {\n return false;\n }\n }\n else {\n return false;\n }\n }\n }\n return true;\n}\nCalloutContentBase.displayName = COMPONENT_NAME;\n//# sourceMappingURL=CalloutContent.base.js.map","import { HighContrastSelector, focusClear, getGlobalClassNames, ZIndexes } from '../../Styling';\nfunction getBeakStyle(beakWidth) {\n return {\n height: beakWidth,\n width: beakWidth,\n };\n}\nvar GlobalClassNames = {\n container: 'ms-Callout-container',\n root: 'ms-Callout',\n beak: 'ms-Callout-beak',\n beakCurtain: 'ms-Callout-beakCurtain',\n calloutMain: 'ms-Callout-main',\n};\nexport var getStyles = function (props) {\n var _a;\n var theme = props.theme, className = props.className, overflowYHidden = props.overflowYHidden, calloutWidth = props.calloutWidth, beakWidth = props.beakWidth, backgroundColor = props.backgroundColor, calloutMaxWidth = props.calloutMaxWidth, calloutMinWidth = props.calloutMinWidth, doNotLayer = props.doNotLayer;\n var classNames = getGlobalClassNames(GlobalClassNames, theme);\n var semanticColors = theme.semanticColors, effects = theme.effects;\n return {\n container: [\n classNames.container,\n {\n position: 'relative',\n },\n ],\n root: [\n classNames.root,\n theme.fonts.medium,\n {\n position: 'absolute',\n display: 'flex',\n zIndex: doNotLayer ? ZIndexes.Layer : undefined,\n boxSizing: 'border-box',\n borderRadius: effects.roundedCorner2,\n boxShadow: effects.elevation16,\n selectors: (_a = {},\n _a[HighContrastSelector] = {\n borderWidth: 1,\n borderStyle: 'solid',\n borderColor: 'WindowText',\n },\n _a),\n },\n focusClear(),\n className,\n !!calloutWidth && { width: calloutWidth },\n !!calloutMaxWidth && { maxWidth: calloutMaxWidth },\n !!calloutMinWidth && { minWidth: calloutMinWidth },\n ],\n beak: [\n classNames.beak,\n {\n position: 'absolute',\n backgroundColor: semanticColors.menuBackground,\n boxShadow: 'inherit',\n border: 'inherit',\n boxSizing: 'border-box',\n transform: 'rotate(45deg)',\n },\n getBeakStyle(beakWidth),\n backgroundColor && {\n backgroundColor: backgroundColor,\n },\n ],\n beakCurtain: [\n classNames.beakCurtain,\n {\n position: 'absolute',\n top: 0,\n right: 0,\n bottom: 0,\n left: 0,\n backgroundColor: semanticColors.menuBackground,\n borderRadius: effects.roundedCorner2,\n },\n ],\n calloutMain: [\n classNames.calloutMain,\n {\n backgroundColor: semanticColors.menuBackground,\n overflowX: 'hidden',\n overflowY: 'auto',\n position: 'relative',\n width: '100%',\n borderRadius: effects.roundedCorner2,\n },\n overflowYHidden && {\n overflowY: 'hidden',\n },\n backgroundColor && {\n backgroundColor: backgroundColor,\n },\n ],\n };\n};\n//# sourceMappingURL=CalloutContent.styles.js.map","import { styled } from '../../Utilities';\nimport { CalloutContentBase } from './CalloutContent.base';\nimport { getStyles } from './CalloutContent.styles';\nexport var CalloutContent = styled(CalloutContentBase, getStyles, undefined, {\n scope: 'CalloutContent',\n});\n//# sourceMappingURL=CalloutContent.js.map","import { __assign } from \"tslib\";\nimport * as React from 'react';\nimport { Callout } from './Callout';\nimport { FocusTrapZone } from '../../FocusTrapZone';\n/**\n * A special Callout that uses FocusTrapZone to trap focus\n * @param props - Props for the component\n */\nexport var FocusTrapCallout = function (props) {\n return (React.createElement(Callout, __assign({}, props),\n React.createElement(FocusTrapZone, __assign({ disabled: props.hidden }, props.focusTrapProps), props.children)));\n};\n//# sourceMappingURL=FocusTrapCallout.js.map","import * as React from 'react';\nimport { Icon, FontIcon } from '../../Icon';\nimport { classNamesFunction } from '../../Utilities';\nvar getClassNames = classNamesFunction();\nexport var CheckBase = React.forwardRef(function (props, ref) {\n var _a = props.checked, checked = _a === void 0 ? false : _a, className = props.className, theme = props.theme, styles = props.styles, _b = props.useFastIcons, useFastIcons = _b === void 0 ? true : _b;\n var classNames = getClassNames(styles, { theme: theme, className: className, checked: checked });\n var IconComponent = useFastIcons ? FontIcon : Icon;\n return (React.createElement(\"div\", { className: classNames.root, ref: ref },\n React.createElement(IconComponent, { iconName: \"CircleRing\", className: classNames.circle }),\n React.createElement(IconComponent, { iconName: \"StatusCircleCheckmark\", className: classNames.check })));\n});\nCheckBase.displayName = 'CheckBase';\n//# sourceMappingURL=Check.base.js.map","import { styled } from '../../Utilities';\nimport { CheckBase } from './Check.base';\nimport { getStyles } from './Check.styles';\nexport var Check = styled(CheckBase, getStyles, undefined, {\n scope: 'Check',\n}, true);\n//# sourceMappingURL=Check.js.map","import { __assign } from \"tslib\";\nimport { HighContrastSelector, getGlobalClassNames, IconFontSizes, getHighContrastNoAdjustStyle } from '../../Styling';\nimport { getRTL } from '../../Utilities';\nexport var CheckGlobalClassNames = {\n root: 'ms-Check',\n circle: 'ms-Check-circle',\n check: 'ms-Check-check',\n /** Must be manually applied to the parent element of the check. */\n checkHost: 'ms-Check-checkHost',\n};\nexport var getStyles = function (props) {\n var _a, _b, _c, _d, _e;\n // eslint-disable-next-line deprecation/deprecation\n var _f = props.height, height = _f === void 0 ? props.checkBoxHeight || '18px' : _f, checked = props.checked, className = props.className, theme = props.theme;\n var palette = theme.palette, semanticColors = theme.semanticColors, fonts = theme.fonts;\n var isRTL = getRTL(theme);\n var classNames = getGlobalClassNames(CheckGlobalClassNames, theme);\n var sharedCircleCheck = {\n fontSize: height,\n position: 'absolute',\n left: 0,\n top: 0,\n width: height,\n height: height,\n textAlign: 'center',\n // inline-flex prevents the check from shifting with custom line height styles\n display: 'inline-flex',\n alignItems: 'center',\n justifyContent: 'center',\n verticalAlign: 'middle',\n };\n return {\n root: [\n classNames.root,\n fonts.medium,\n {\n // lineHeight currently needs to be a string to output without 'px'\n lineHeight: '1',\n width: height,\n height: height,\n verticalAlign: 'top',\n position: 'relative',\n userSelect: 'none',\n selectors: (_a = {\n ':before': {\n content: '\"\"',\n position: 'absolute',\n top: '1px',\n right: '1px',\n bottom: '1px',\n left: '1px',\n borderRadius: '50%',\n opacity: 1,\n background: semanticColors.bodyBackground,\n }\n },\n _a[\".\" + classNames.checkHost + \":hover &, .\" + classNames.checkHost + \":focus &, &:hover, &:focus\"] = {\n opacity: 1,\n },\n _a),\n },\n checked && [\n 'is-checked',\n {\n selectors: {\n ':before': {\n background: palette.themePrimary,\n opacity: 1,\n selectors: (_b = {},\n _b[HighContrastSelector] = {\n background: 'Window',\n },\n _b),\n },\n },\n },\n ],\n className,\n ],\n circle: [\n classNames.circle,\n sharedCircleCheck,\n {\n color: palette.neutralSecondary,\n selectors: (_c = {},\n _c[HighContrastSelector] = {\n color: 'WindowText',\n },\n _c),\n },\n checked && {\n color: palette.white,\n },\n ],\n check: [\n classNames.check,\n sharedCircleCheck,\n {\n opacity: 0,\n color: palette.neutralSecondary,\n fontSize: IconFontSizes.medium,\n left: isRTL ? '-0.5px' : '.5px',\n top: '-1px',\n selectors: (_d = {\n ':hover': {\n opacity: 1,\n }\n },\n _d[HighContrastSelector] = __assign({}, getHighContrastNoAdjustStyle()),\n _d),\n },\n checked && {\n opacity: 1,\n color: palette.white,\n fontWeight: 900,\n selectors: (_e = {},\n _e[HighContrastSelector] = {\n border: 'none',\n color: 'WindowText',\n },\n _e),\n },\n ],\n checkHost: classNames.checkHost,\n };\n};\n//# sourceMappingURL=Check.styles.js.map","import { __assign } from \"tslib\";\nimport * as React from 'react';\nimport { useControllableValue, useId, useMergedRefs, useWarnings } from '@fluentui/react-hooks';\nimport { useFocusRects, classNamesFunction } from '@fluentui/utilities';\nimport { Icon } from '../Icon/Icon';\nvar getClassNames = classNamesFunction();\nexport var CheckboxBase = React.forwardRef(function (props, forwardedRef) {\n var disabled = props.disabled, required = props.required, inputProps = props.inputProps, name = props.name, ariaLabel = props.ariaLabel, ariaLabelledBy = props.ariaLabelledBy, ariaDescribedBy = props.ariaDescribedBy, ariaPositionInSet = props.ariaPositionInSet, ariaSetSize = props.ariaSetSize, title = props.title, checkmarkIconProps = props.checkmarkIconProps, styles = props.styles, theme = props.theme, className = props.className, _a = props.boxSide, boxSide = _a === void 0 ? 'start' : _a;\n var id = useId('checkbox-', props.id);\n var rootRef = React.useRef(null);\n var mergedRootRefs = useMergedRefs(rootRef, forwardedRef);\n var inputRef = React.useRef(null);\n var _b = useControllableValue(props.checked, props.defaultChecked, props.onChange), isChecked = _b[0], setIsChecked = _b[1];\n var _c = useControllableValue(props.indeterminate, props.defaultIndeterminate), isIndeterminate = _c[0], setIsIndeterminate = _c[1];\n useFocusRects(rootRef);\n useDebugWarning(props);\n useComponentRef(props, isChecked, isIndeterminate, inputRef);\n var classNames = getClassNames(styles, {\n theme: theme,\n className: className,\n disabled: disabled,\n indeterminate: isIndeterminate,\n checked: isChecked,\n reversed: boxSide !== 'start',\n isUsingCustomLabelRender: !!props.onRenderLabel,\n });\n var onChange = function (ev) {\n if (isIndeterminate) {\n // If indeterminate, clicking the checkbox *only* removes the indeterminate state (or if\n // controlled, lets the consumer know to change it by calling onChange). It doesn't\n // change the checked state.\n setIsChecked(!!isChecked, ev);\n setIsIndeterminate(false);\n }\n else {\n setIsChecked(!isChecked, ev);\n }\n };\n var defaultLabelRenderer = React.useCallback(function (checkboxProps) {\n if (!checkboxProps) {\n return null;\n }\n return checkboxProps.label ? (React.createElement(\"span\", { className: classNames.text, title: checkboxProps.title }, checkboxProps.label)) : null;\n }, [classNames.text]);\n var onRenderLabel = props.onRenderLabel || defaultLabelRenderer;\n var ariaChecked = isIndeterminate\n ? 'mixed'\n : undefined;\n var mergedInputProps = __assign(__assign({ className: classNames.input, type: 'checkbox' }, inputProps), { checked: !!isChecked, disabled: disabled, required: required, name: name, id: id, title: title, onChange: onChange, 'aria-disabled': disabled, 'aria-label': ariaLabel, 'aria-labelledby': ariaLabelledBy, 'aria-describedby': ariaDescribedBy, 'aria-posinset': ariaPositionInSet, 'aria-setsize': ariaSetSize, 'aria-checked': ariaChecked });\n return (React.createElement(\"div\", { className: classNames.root, title: title, ref: mergedRootRefs },\n React.createElement(\"input\", __assign({}, mergedInputProps, { ref: inputRef, title: title, \"data-ktp-execute-target\": true })),\n React.createElement(\"label\", { className: classNames.label, htmlFor: id },\n React.createElement(\"div\", { className: classNames.checkbox, \"data-ktp-target\": true },\n React.createElement(Icon, __assign({ iconName: \"CheckMark\" }, checkmarkIconProps, { className: classNames.checkmark }))),\n onRenderLabel(props, defaultLabelRenderer))));\n});\nCheckboxBase.displayName = 'CheckboxBase';\nfunction useDebugWarning(props) {\n if (process.env.NODE_ENV !== 'production') {\n // eslint-disable-next-line react-hooks/rules-of-hooks -- build-time conditional\n useWarnings({\n name: 'Checkbox',\n props: props,\n mutuallyExclusive: {\n checked: 'defaultChecked',\n indeterminate: 'defaultIndeterminate',\n },\n });\n }\n}\nfunction useComponentRef(props, isChecked, isIndeterminate, checkBoxRef) {\n React.useImperativeHandle(props.componentRef, function () { return ({\n get checked() {\n return !!isChecked;\n },\n get indeterminate() {\n return !!isIndeterminate;\n },\n focus: function () {\n if (checkBoxRef.current) {\n checkBoxRef.current.focus();\n }\n },\n }); }, [checkBoxRef, isChecked, isIndeterminate]);\n}\n//# sourceMappingURL=Checkbox.base.js.map","import { __assign } from \"tslib\";\nimport { HighContrastSelector, getGlobalClassNames, getHighContrastNoAdjustStyle } from '@fluentui/style-utilities';\nimport { IsFocusVisibleClassName } from '@fluentui/utilities';\nvar GlobalClassNames = {\n root: 'ms-Checkbox',\n label: 'ms-Checkbox-label',\n checkbox: 'ms-Checkbox-checkbox',\n checkmark: 'ms-Checkbox-checkmark',\n text: 'ms-Checkbox-text',\n};\nvar MS_CHECKBOX_LABEL_SIZE = '20px';\nvar MS_CHECKBOX_TRANSITION_DURATION = '200ms';\nvar MS_CHECKBOX_TRANSITION_TIMING = 'cubic-bezier(.4, 0, .23, 1)';\nexport var getStyles = function (props) {\n var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t;\n var className = props.className, theme = props.theme, reversed = props.reversed, checked = props.checked, disabled = props.disabled, isUsingCustomLabelRender = props.isUsingCustomLabelRender, indeterminate = props.indeterminate;\n var semanticColors = theme.semanticColors, effects = theme.effects, palette = theme.palette, fonts = theme.fonts;\n var classNames = getGlobalClassNames(GlobalClassNames, theme);\n var checkmarkFontColor = semanticColors.inputForegroundChecked;\n // TODO: after updating the semanticColors slots mapping this needs to be semanticColors.inputBorder\n var checkmarkFontColorHovered = palette.neutralSecondary;\n // TODO: after updating the semanticColors slots mapping this needs to be semanticColors.smallInputBorder\n var checkboxBorderColor = palette.neutralPrimary;\n var checkboxBorderIndeterminateColor = semanticColors.inputBackgroundChecked;\n var checkboxBorderColorChecked = semanticColors.inputBackgroundChecked;\n var checkboxBorderColorDisabled = semanticColors.disabledBodySubtext;\n var checkboxBorderHoveredColor = semanticColors.inputBorderHovered;\n var checkboxBorderIndeterminateHoveredColor = semanticColors.inputBackgroundCheckedHovered;\n var checkboxBackgroundChecked = semanticColors.inputBackgroundChecked;\n // TODO: after updating the semanticColors slots mapping the following 2 tokens need to be\n // semanticColors.inputBackgroundCheckedHovered\n var checkboxBackgroundCheckedHovered = semanticColors.inputBackgroundCheckedHovered;\n var checkboxBorderColorCheckedHovered = semanticColors.inputBackgroundCheckedHovered;\n var checkboxHoveredTextColor = semanticColors.inputTextHovered;\n var checkboxBackgroundDisabledChecked = semanticColors.disabledBodySubtext;\n var checkboxTextColor = semanticColors.bodyText;\n var checkboxTextColorDisabled = semanticColors.disabledText;\n var indeterminateDotStyles = [\n (_a = {\n content: '\"\"',\n borderRadius: effects.roundedCorner2,\n position: 'absolute',\n width: 10,\n height: 10,\n top: 4,\n left: 4,\n boxSizing: 'border-box',\n borderWidth: 5,\n borderStyle: 'solid',\n borderColor: disabled ? checkboxBorderColorDisabled : checkboxBorderIndeterminateColor,\n transitionProperty: 'border-width, border, border-color',\n transitionDuration: MS_CHECKBOX_TRANSITION_DURATION,\n transitionTimingFunction: MS_CHECKBOX_TRANSITION_TIMING\n },\n _a[HighContrastSelector] = {\n borderColor: 'WindowText',\n },\n _a),\n ];\n return {\n root: [\n classNames.root,\n {\n position: 'relative',\n display: 'flex',\n },\n reversed && 'reversed',\n checked && 'is-checked',\n !disabled && 'is-enabled',\n disabled && 'is-disabled',\n !disabled && [\n !checked && (_b = {},\n _b[\":hover .\" + classNames.checkbox] = (_c = {\n borderColor: checkboxBorderHoveredColor\n },\n _c[HighContrastSelector] = {\n borderColor: 'Highlight',\n },\n _c),\n _b[\":focus .\" + classNames.checkbox] = { borderColor: checkboxBorderHoveredColor },\n _b[\":hover .\" + classNames.checkmark] = (_d = {\n color: checkmarkFontColorHovered,\n opacity: '1'\n },\n _d[HighContrastSelector] = {\n color: 'Highlight',\n },\n _d),\n _b),\n checked &&\n !indeterminate && (_e = {},\n _e[\":hover .\" + classNames.checkbox] = {\n background: checkboxBackgroundCheckedHovered,\n borderColor: checkboxBorderColorCheckedHovered,\n },\n _e[\":focus .\" + classNames.checkbox] = {\n background: checkboxBackgroundCheckedHovered,\n borderColor: checkboxBorderColorCheckedHovered,\n },\n _e[HighContrastSelector] = (_f = {},\n _f[\":hover .\" + classNames.checkbox] = {\n background: 'Highlight',\n borderColor: 'Highlight',\n },\n _f[\":focus .\" + classNames.checkbox] = {\n background: 'Highlight',\n },\n _f[\":focus:hover .\" + classNames.checkbox] = {\n background: 'Highlight',\n },\n _f[\":focus:hover .\" + classNames.checkmark] = {\n color: 'Window',\n },\n _f[\":hover .\" + classNames.checkmark] = {\n color: 'Window',\n },\n _f),\n _e),\n indeterminate && (_g = {},\n _g[\":hover .\" + classNames.checkbox + \", :hover .\" + classNames.checkbox + \":after\"] = (_h = {\n borderColor: checkboxBorderIndeterminateHoveredColor\n },\n _h[HighContrastSelector] = {\n borderColor: 'WindowText',\n },\n _h),\n _g[\":focus .\" + classNames.checkbox] = {\n borderColor: checkboxBorderIndeterminateHoveredColor,\n },\n _g[\":hover .\" + classNames.checkmark] = {\n opacity: '0',\n },\n _g),\n (_j = {},\n _j[\":hover .\" + classNames.text + \", :focus .\" + classNames.text] = (_k = {\n color: checkboxHoveredTextColor\n },\n _k[HighContrastSelector] = {\n color: disabled ? 'GrayText' : 'WindowText',\n },\n _k),\n _j),\n ],\n className,\n ],\n input: (_l = {\n position: 'absolute',\n background: 'none',\n opacity: 0\n },\n _l[\".\" + IsFocusVisibleClassName + \" &:focus + label::before\"] = (_m = {\n outline: '1px solid ' + theme.palette.neutralSecondary,\n outlineOffset: '2px'\n },\n _m[HighContrastSelector] = {\n outline: '1px solid WindowText',\n },\n _m),\n _l),\n label: [\n classNames.label,\n theme.fonts.medium,\n {\n display: 'flex',\n alignItems: isUsingCustomLabelRender ? 'center' : 'flex-start',\n cursor: disabled ? 'default' : 'pointer',\n position: 'relative',\n userSelect: 'none',\n },\n reversed && {\n flexDirection: 'row-reverse',\n justifyContent: 'flex-end',\n },\n {\n '&::before': {\n position: 'absolute',\n left: 0,\n right: 0,\n top: 0,\n bottom: 0,\n content: '\"\"',\n pointerEvents: 'none',\n },\n },\n ],\n checkbox: [\n classNames.checkbox,\n (_o = {\n position: 'relative',\n display: 'flex',\n flexShrink: 0,\n alignItems: 'center',\n justifyContent: 'center',\n height: MS_CHECKBOX_LABEL_SIZE,\n width: MS_CHECKBOX_LABEL_SIZE,\n border: \"1px solid \" + checkboxBorderColor,\n borderRadius: effects.roundedCorner2,\n boxSizing: 'border-box',\n transitionProperty: 'background, border, border-color',\n transitionDuration: MS_CHECKBOX_TRANSITION_DURATION,\n transitionTimingFunction: MS_CHECKBOX_TRANSITION_TIMING,\n /* in case the icon is bigger than the box */\n overflow: 'hidden',\n ':after': indeterminate ? indeterminateDotStyles : null\n },\n _o[HighContrastSelector] = __assign({ borderColor: 'WindowText' }, getHighContrastNoAdjustStyle()),\n _o),\n indeterminate && {\n borderColor: checkboxBorderIndeterminateColor,\n },\n !reversed\n ? // This margin on the checkbox is for backwards compat. Notably it has the effect where a customRender\n // is used, there will be only a 4px margin from checkbox to label. The label by default would have\n // another 4px margin for a total of 8px margin between checkbox and label. We don't combine the two\n // (and move it into the text) to not incur a breaking change for everyone using custom render atm.\n {\n marginRight: 4,\n }\n : {\n marginLeft: 4,\n },\n !disabled &&\n !indeterminate &&\n checked && (_p = {\n background: checkboxBackgroundChecked,\n borderColor: checkboxBorderColorChecked\n },\n _p[HighContrastSelector] = {\n background: 'Highlight',\n borderColor: 'Highlight',\n },\n _p),\n disabled && (_q = {\n borderColor: checkboxBorderColorDisabled\n },\n _q[HighContrastSelector] = {\n borderColor: 'GrayText',\n },\n _q),\n checked &&\n disabled && (_r = {\n background: checkboxBackgroundDisabledChecked,\n borderColor: checkboxBorderColorDisabled\n },\n _r[HighContrastSelector] = {\n background: 'Window',\n },\n _r),\n ],\n checkmark: [\n classNames.checkmark,\n (_s = {\n opacity: checked && !indeterminate ? '1' : '0',\n color: checkmarkFontColor\n },\n _s[HighContrastSelector] = __assign({ color: disabled ? 'GrayText' : 'Window' }, getHighContrastNoAdjustStyle()),\n _s),\n ],\n text: [\n classNames.text,\n (_t = {\n color: disabled ? checkboxTextColorDisabled : checkboxTextColor,\n fontSize: fonts.medium.fontSize,\n lineHeight: '20px'\n },\n _t[HighContrastSelector] = __assign({ color: disabled ? 'GrayText' : 'WindowText' }, getHighContrastNoAdjustStyle()),\n _t),\n !reversed\n ? {\n marginLeft: 4,\n }\n : {\n marginRight: 4,\n },\n ],\n };\n};\n//# sourceMappingURL=Checkbox.styles.js.map","import { styled } from '@fluentui/utilities';\nimport { CheckboxBase } from './Checkbox.base';\nimport { getStyles } from './Checkbox.styles';\nexport var Checkbox = styled(CheckboxBase, getStyles, undefined, { scope: 'Checkbox' });\n//# sourceMappingURL=Checkbox.js.map","import { __assign, __rest } from \"tslib\";\nimport * as React from 'react';\nimport { Image } from '../../../Image';\nimport { Icon } from '../../../Icon';\nimport { classNamesFunction, getNativeProps, inputProperties, css, composeRenderFunction, getPropsWithDefaults, } from '../../../Utilities';\nvar getClassNames = classNamesFunction();\nvar LARGE_IMAGE_SIZE = 71;\nvar DEFAULT_PROPS = {\n // This ensures default imageSize value doesn't mutate. Mutation can cause style re-calcuation.\n imageSize: { width: 32, height: 32 },\n};\nexport var ChoiceGroupOptionBase = function (propsWithoutDefaults) {\n // Mix the `key` prop back in since custom render functions may be expecting it\n // (React uses `key` internally rather than passing it through to the component)\n var props = getPropsWithDefaults(__assign(__assign({}, DEFAULT_PROPS), { key: propsWithoutDefaults.itemKey }), propsWithoutDefaults);\n var ariaLabel = props.ariaLabel, focused = props.focused, required = props.required, theme = props.theme, iconProps = props.iconProps, imageSrc = props.imageSrc, imageSize = props.imageSize, disabled = props.disabled, checked = props.checked, id = props.id, styles = props.styles, name = props.name, rest = __rest(props, [\"ariaLabel\", \"focused\", \"required\", \"theme\", \"iconProps\", \"imageSrc\", \"imageSize\", \"disabled\", \"checked\", \"id\", \"styles\", \"name\"]);\n var classNames = getClassNames(styles, {\n theme: theme,\n hasIcon: !!iconProps,\n hasImage: !!imageSrc,\n checked: checked,\n disabled: disabled,\n imageIsLarge: !!imageSrc && (imageSize.width > LARGE_IMAGE_SIZE || imageSize.height > LARGE_IMAGE_SIZE),\n imageSize: imageSize,\n focused: focused,\n });\n var _a = getNativeProps(rest, inputProperties), className = _a.className, nativeProps = __rest(_a, [\"className\"]);\n var defaultOnRenderLabel = function () {\n return (React.createElement(\"span\", { id: props.labelId, className: \"ms-ChoiceFieldLabel\" }, props.text));\n };\n var defaultOnRenderField = function () {\n var _a = props.imageAlt, imageAlt = _a === void 0 ? '' : _a, selectedImageSrc = props.selectedImageSrc;\n var onRenderLabel = props.onRenderLabel\n ? composeRenderFunction(props.onRenderLabel, defaultOnRenderLabel)\n : defaultOnRenderLabel;\n var label = onRenderLabel(props);\n return (React.createElement(\"label\", { htmlFor: id, className: classNames.field },\n imageSrc && (React.createElement(\"div\", { className: classNames.innerField },\n React.createElement(\"div\", { className: classNames.imageWrapper },\n React.createElement(Image, __assign({ src: imageSrc, alt: imageAlt }, imageSize))),\n React.createElement(\"div\", { className: classNames.selectedImageWrapper },\n React.createElement(Image, __assign({ src: selectedImageSrc, alt: imageAlt }, imageSize))))),\n iconProps && (React.createElement(\"div\", { className: classNames.innerField },\n React.createElement(\"div\", { className: classNames.iconWrapper },\n React.createElement(Icon, __assign({}, iconProps))))),\n imageSrc || iconProps ? React.createElement(\"div\", { className: classNames.labelWrapper }, label) : label));\n };\n var _b = props.onRenderField, onRenderField = _b === void 0 ? defaultOnRenderField : _b;\n var onChange = function (evt) {\n var _a;\n (_a = props.onChange) === null || _a === void 0 ? void 0 : _a.call(props, evt, props);\n };\n var onBlur = function (evt) {\n var _a;\n (_a = props.onBlur) === null || _a === void 0 ? void 0 : _a.call(props, evt);\n };\n var onFocus = function (evt) {\n var _a;\n (_a = props.onFocus) === null || _a === void 0 ? void 0 : _a.call(props, evt, props);\n };\n return (React.createElement(\"div\", { className: classNames.root },\n React.createElement(\"div\", { className: classNames.choiceFieldWrapper },\n React.createElement(\"input\", __assign({ \"aria-label\": ariaLabel, id: id, className: css(classNames.input, className), type: \"radio\", name: name, disabled: disabled, checked: checked, required: required }, nativeProps, { onChange: onChange, onFocus: onFocus, onBlur: onBlur })),\n onRenderField(props, defaultOnRenderField))));\n};\nChoiceGroupOptionBase.displayName = 'ChoiceGroupOption';\n//# sourceMappingURL=ChoiceGroupOption.base.js.map","import { __assign } from \"tslib\";\nimport { HighContrastSelector, getGlobalClassNames, getHighContrastNoAdjustStyle } from '../../../Styling';\nimport { IsFocusVisibleClassName } from '../../../Utilities';\nvar GlobalClassNames = {\n root: 'ms-ChoiceField',\n choiceFieldWrapper: 'ms-ChoiceField-wrapper',\n input: 'ms-ChoiceField-input',\n field: 'ms-ChoiceField-field',\n innerField: 'ms-ChoiceField-innerField',\n imageWrapper: 'ms-ChoiceField-imageWrapper',\n iconWrapper: 'ms-ChoiceField-iconWrapper',\n labelWrapper: 'ms-ChoiceField-labelWrapper',\n checked: 'is-checked',\n};\nvar labelWrapperLineHeight = 15;\nvar labelWrapperHeight = labelWrapperLineHeight * 2 + 2; // adding 2px height to ensure text doesn't get cutoff\nvar iconSize = 32;\nvar choiceFieldSize = 20;\nvar choiceFieldTransitionDuration = '200ms';\nvar choiceFieldTransitionTiming = 'cubic-bezier(.4, 0, .23, 1)';\nvar radioButtonSpacing = 3;\nvar radioButtonInnerSize = 5;\nfunction getChoiceGroupFocusStyle(focusBorderColor, hasIconOrImage) {\n var _a, _b;\n return [\n 'is-inFocus',\n {\n selectors: (_a = {},\n _a[\".\" + IsFocusVisibleClassName + \" &\"] = {\n position: 'relative',\n outline: 'transparent',\n selectors: {\n '::-moz-focus-inner': {\n border: 0,\n },\n ':after': {\n content: '\"\"',\n top: -2,\n right: -2,\n bottom: -2,\n left: -2,\n pointerEvents: 'none',\n border: \"1px solid \" + focusBorderColor,\n position: 'absolute',\n selectors: (_b = {},\n _b[HighContrastSelector] = {\n borderColor: 'WindowText',\n borderWidth: hasIconOrImage ? 1 : 2,\n },\n _b),\n },\n },\n },\n _a),\n },\n ];\n}\nfunction getImageWrapperStyle(isSelectedImageWrapper, className, checked) {\n return [\n className,\n {\n paddingBottom: 2,\n transitionProperty: 'opacity',\n transitionDuration: choiceFieldTransitionDuration,\n transitionTimingFunction: 'ease',\n selectors: {\n '.ms-Image': {\n display: 'inline-block',\n borderStyle: 'none',\n },\n },\n },\n (checked ? !isSelectedImageWrapper : isSelectedImageWrapper) && [\n 'is-hidden',\n {\n position: 'absolute',\n left: 0,\n top: 0,\n width: '100%',\n height: '100%',\n overflow: 'hidden',\n opacity: 0,\n },\n ],\n ];\n}\nexport var getStyles = function (props) {\n var _a, _b, _c, _d, _e;\n var theme = props.theme, hasIcon = props.hasIcon, hasImage = props.hasImage, checked = props.checked, disabled = props.disabled, imageIsLarge = props.imageIsLarge, focused = props.focused, imageSize = props.imageSize;\n var palette = theme.palette, semanticColors = theme.semanticColors, fonts = theme.fonts;\n var classNames = getGlobalClassNames(GlobalClassNames, theme);\n // Tokens\n // TODO: after updating the semanticColors slots mapping this needs to be semanticColors.smallInputBorder\n var circleBorderColor = palette.neutralPrimary;\n var circleHoveredBorderColor = semanticColors.inputBorderHovered;\n var circleCheckedBorderColor = semanticColors.inputBackgroundChecked;\n // TODO: after updating the semanticColors slots mapping this needs to be semanticColors.inputBackgroundCheckedHovered\n var circleCheckedHoveredBorderColor = palette.themeDark;\n var circleDisabledBorderColor = semanticColors.disabledBodySubtext;\n var circleBackgroundColor = semanticColors.bodyBackground;\n var dotUncheckedHoveredColor = palette.neutralSecondary;\n var dotCheckedColor = semanticColors.inputBackgroundChecked;\n // TODO: after updating the semanticColors slots mapping this needs to be semanticColors.inputBackgroundCheckedHovered\n var dotCheckedHoveredColor = palette.themeDark;\n var dotDisabledColor = semanticColors.disabledBodySubtext;\n // TODO: after updating the semanticColors slots mapping this needs to be semanticColors.bodyTextChecked\n var labelHoverFocusColor = palette.neutralDark;\n var focusBorderColor = semanticColors.focusBorder;\n var iconOrImageChoiceBorderUncheckedHoveredColor = semanticColors.inputBorderHovered;\n // TODO: after updating the semanticColors slots mapping this needs to be semanticColors.inputBackgroundCheckedHovered\n var iconOrImageChoiceBorderCheckedColor = semanticColors.inputBackgroundChecked;\n var iconOrImageChoiceBorderCheckedHoveredColor = palette.themeDark;\n var iconOrImageChoiceBackgroundColor = palette.neutralLighter;\n var fieldHoverOrFocusProperties = {\n selectors: {\n '.ms-ChoiceFieldLabel': {\n color: labelHoverFocusColor,\n },\n ':before': {\n borderColor: checked ? circleCheckedHoveredBorderColor : circleHoveredBorderColor,\n },\n ':after': [\n !hasIcon &&\n !hasImage &&\n !checked && {\n content: '\"\"',\n transitionProperty: 'background-color',\n left: 5,\n top: 5,\n width: 10,\n height: 10,\n backgroundColor: dotUncheckedHoveredColor,\n },\n checked && {\n borderColor: dotCheckedHoveredColor,\n background: dotCheckedHoveredColor,\n },\n ],\n },\n };\n var enabledFieldWithImageHoverOrFocusProperties = {\n borderColor: checked ? iconOrImageChoiceBorderCheckedHoveredColor : iconOrImageChoiceBorderUncheckedHoveredColor,\n selectors: {\n ':before': {\n opacity: 1,\n borderColor: checked ? circleCheckedHoveredBorderColor : circleHoveredBorderColor,\n },\n },\n };\n var circleAreaProperties = [\n {\n content: '\"\"',\n display: 'inline-block',\n backgroundColor: circleBackgroundColor,\n borderWidth: 1,\n borderStyle: 'solid',\n borderColor: circleBorderColor,\n width: choiceFieldSize,\n height: choiceFieldSize,\n fontWeight: 'normal',\n position: 'absolute',\n top: 0,\n left: 0,\n boxSizing: 'border-box',\n transitionProperty: 'border-color',\n transitionDuration: choiceFieldTransitionDuration,\n transitionTimingFunction: choiceFieldTransitionTiming,\n borderRadius: '50%',\n },\n disabled && {\n borderColor: circleDisabledBorderColor,\n selectors: (_a = {},\n _a[HighContrastSelector] = __assign({ borderColor: 'GrayText', background: 'Window' }, getHighContrastNoAdjustStyle()),\n _a),\n },\n checked && {\n borderColor: disabled ? circleDisabledBorderColor : circleCheckedBorderColor,\n selectors: (_b = {},\n _b[HighContrastSelector] = {\n borderColor: 'Highlight',\n background: 'Window',\n forcedColorAdjust: 'none',\n },\n _b),\n },\n (hasIcon || hasImage) && {\n top: radioButtonSpacing,\n right: radioButtonSpacing,\n left: 'auto',\n opacity: checked ? 1 : 0,\n },\n ];\n var dotAreaProperties = [\n {\n content: '\"\"',\n width: 0,\n height: 0,\n borderRadius: '50%',\n position: 'absolute',\n left: choiceFieldSize / 2,\n right: 0,\n transitionProperty: 'border-width',\n transitionDuration: choiceFieldTransitionDuration,\n transitionTimingFunction: choiceFieldTransitionTiming,\n boxSizing: 'border-box',\n },\n checked && {\n borderWidth: 5,\n borderStyle: 'solid',\n borderColor: disabled ? dotDisabledColor : dotCheckedColor,\n background: dotCheckedColor,\n left: 5,\n top: 5,\n width: 10,\n height: 10,\n selectors: (_c = {},\n _c[HighContrastSelector] = {\n borderColor: 'Highlight',\n forcedColorAdjust: 'none',\n },\n _c),\n },\n checked &&\n (hasIcon || hasImage) && {\n top: radioButtonSpacing + radioButtonInnerSize,\n right: radioButtonSpacing + radioButtonInnerSize,\n left: 'auto', // To reset the value of 'left' to its default value, so that 'right' works\n },\n ];\n return {\n root: [\n classNames.root,\n theme.fonts.medium,\n {\n display: 'flex',\n alignItems: 'center',\n boxSizing: 'border-box',\n color: semanticColors.bodyText,\n minHeight: 26,\n border: 'none',\n position: 'relative',\n marginTop: 8,\n selectors: {\n '.ms-ChoiceFieldLabel': {\n display: 'inline-block',\n },\n },\n },\n !hasIcon &&\n !hasImage && {\n selectors: {\n '.ms-ChoiceFieldLabel': {\n paddingLeft: '26px',\n },\n },\n },\n hasImage && 'ms-ChoiceField--image',\n hasIcon && 'ms-ChoiceField--icon',\n (hasIcon || hasImage) && {\n display: 'inline-flex',\n fontSize: 0,\n margin: '0 4px 4px 0',\n paddingLeft: 0,\n backgroundColor: iconOrImageChoiceBackgroundColor,\n height: '100%',\n },\n ],\n choiceFieldWrapper: [\n classNames.choiceFieldWrapper,\n focused && getChoiceGroupFocusStyle(focusBorderColor, hasIcon || hasImage),\n ],\n // The hidden input\n input: [\n classNames.input,\n {\n position: 'absolute',\n opacity: 0,\n top: 0,\n right: 0,\n width: '100%',\n height: '100%',\n margin: 0,\n },\n disabled && 'is-disabled',\n ],\n field: [\n classNames.field,\n checked && classNames.checked,\n {\n display: 'inline-block',\n cursor: 'pointer',\n marginTop: 0,\n position: 'relative',\n verticalAlign: 'top',\n userSelect: 'none',\n minHeight: 20,\n selectors: {\n ':hover': !disabled && fieldHoverOrFocusProperties,\n ':focus': !disabled && fieldHoverOrFocusProperties,\n // The circle\n ':before': circleAreaProperties,\n // The dot\n ':after': dotAreaProperties,\n },\n },\n hasIcon && 'ms-ChoiceField--icon',\n hasImage && 'ms-ChoiceField-field--image',\n (hasIcon || hasImage) && {\n boxSizing: 'content-box',\n cursor: 'pointer',\n paddingTop: 22,\n margin: 0,\n textAlign: 'center',\n transitionProperty: 'all',\n transitionDuration: choiceFieldTransitionDuration,\n transitionTimingFunction: 'ease',\n border: '1px solid transparent',\n justifyContent: 'center',\n alignItems: 'center',\n display: 'flex',\n flexDirection: 'column',\n },\n checked && {\n borderColor: iconOrImageChoiceBorderCheckedColor,\n },\n (hasIcon || hasImage) &&\n !disabled && {\n selectors: {\n ':hover': enabledFieldWithImageHoverOrFocusProperties,\n ':focus': enabledFieldWithImageHoverOrFocusProperties,\n },\n },\n disabled && {\n cursor: 'default',\n selectors: {\n '.ms-ChoiceFieldLabel': {\n color: semanticColors.disabledBodyText,\n selectors: (_d = {},\n _d[HighContrastSelector] = __assign({ color: 'GrayText' }, getHighContrastNoAdjustStyle()),\n _d),\n },\n },\n },\n checked &&\n disabled && {\n borderColor: iconOrImageChoiceBackgroundColor,\n },\n ],\n innerField: [\n classNames.innerField,\n hasImage && {\n // using non-null assertion because we have a default in `ChoiceGroupOptionBase` class.\n height: imageSize.height,\n width: imageSize.width,\n },\n (hasIcon || hasImage) && {\n position: 'relative',\n display: 'inline-block',\n paddingLeft: 30,\n paddingRight: 30,\n },\n (hasIcon || hasImage) &&\n imageIsLarge && {\n paddingLeft: 24,\n paddingRight: 24,\n },\n (hasIcon || hasImage) &&\n disabled && {\n opacity: 0.25,\n selectors: (_e = {},\n _e[HighContrastSelector] = {\n color: 'GrayText',\n opacity: 1,\n },\n _e),\n },\n ],\n imageWrapper: getImageWrapperStyle(false, classNames.imageWrapper, checked),\n selectedImageWrapper: getImageWrapperStyle(true, classNames.imageWrapper, checked),\n iconWrapper: [\n classNames.iconWrapper,\n {\n fontSize: iconSize,\n lineHeight: iconSize,\n height: iconSize,\n },\n ],\n labelWrapper: [\n classNames.labelWrapper,\n fonts.medium,\n (hasIcon || hasImage) && {\n display: 'block',\n position: 'relative',\n margin: '4px 8px 2px 8px',\n height: labelWrapperHeight,\n lineHeight: labelWrapperLineHeight,\n // using non-null assertion because we have a default in `ChoiceGroupOptionBase` class.\n maxWidth: imageSize.width * 2,\n overflow: 'hidden',\n whiteSpace: 'pre-wrap',\n },\n ],\n };\n};\n//# sourceMappingURL=ChoiceGroupOption.styles.js.map","import { styled } from '../../../Utilities';\nimport { ChoiceGroupOptionBase } from './ChoiceGroupOption.base';\nimport { getStyles } from './ChoiceGroupOption.styles';\nexport var ChoiceGroupOption = styled(ChoiceGroupOptionBase, getStyles, undefined, { scope: 'ChoiceGroupOption' });\n//# sourceMappingURL=ChoiceGroupOption.js.map","import { __assign } from \"tslib\";\nimport * as React from 'react';\nimport { Label } from '../../Label';\nimport { classNamesFunction, elementContains, find, getNativeProps, divProperties, setFocusVisibility, useFocusRects, } from '../../Utilities';\nimport { ChoiceGroupOption } from './ChoiceGroupOption/index';\nimport { useId, useControllableValue, useMergedRefs, useWarnings } from '@fluentui/react-hooks';\nvar getClassNames = classNamesFunction();\nvar getOptionId = function (option, id) {\n return id + \"-\" + option.key;\n};\nvar findOption = function (options, key) {\n return key === undefined ? undefined : find(options, function (value) { return value.key === key; });\n};\nvar focusSelectedOption = function (options, keyChecked, id) {\n var optionToFocus = findOption(options, keyChecked) || options.filter(function (option) { return !option.disabled; })[0];\n var elementToFocus = optionToFocus && document.getElementById(getOptionId(optionToFocus, id));\n if (elementToFocus) {\n elementToFocus.focus();\n setFocusVisibility(true, elementToFocus);\n }\n};\n// Test if focus came from a sibling DOM element\nvar focusFromSibling = function (evt) {\n return !!(evt.relatedTarget && !elementContains(evt.currentTarget, evt.relatedTarget));\n};\nvar useComponentRef = function (options, keyChecked, id, componentRef) {\n React.useImperativeHandle(componentRef, function () { return ({\n get checkedOption() {\n return findOption(options, keyChecked);\n },\n focus: function () {\n focusSelectedOption(options, keyChecked, id);\n },\n }); }, [options, keyChecked, id]);\n};\nvar COMPONENT_NAME = 'ChoiceGroup';\nexport var ChoiceGroupBase = React.forwardRef(function (props, forwardedRef) {\n var className = props.className, theme = props.theme, styles = props.styles, _a = props.options, options = _a === void 0 ? [] : _a, label = props.label, required = props.required, disabled = props.disabled, name = props.name, defaultSelectedKey = props.defaultSelectedKey, componentRef = props.componentRef, onChange = props.onChange;\n var id = useId('ChoiceGroup');\n var labelId = useId('ChoiceGroupLabel');\n var divProps = getNativeProps(props, divProperties, [\n 'onChange',\n 'className',\n 'required',\n ]);\n var classNames = getClassNames(styles, {\n theme: theme,\n className: className,\n optionsContainIconOrImage: options.some(function (option) { return !!(option.iconProps || option.imageSrc); }),\n });\n var ariaLabelledBy = props.ariaLabelledBy || (label ? labelId : props['aria-labelledby']);\n var _b = useControllableValue(props.selectedKey, defaultSelectedKey), keyChecked = _b[0], setKeyChecked = _b[1];\n var _c = React.useState(), keyFocused = _c[0], setKeyFocused = _c[1];\n var rootRef = React.useRef(null);\n var mergedRootRefs = useMergedRefs(rootRef, forwardedRef);\n useDebugWarnings(props);\n useComponentRef(options, keyChecked, id, componentRef);\n useFocusRects(rootRef);\n var onFocus = React.useCallback(function (ev, option) {\n var _a;\n if (option) {\n setKeyFocused(option.itemKey);\n (_a = option.onFocus) === null || _a === void 0 ? void 0 : _a.call(option, ev);\n }\n }, []);\n var onBlur = React.useCallback(function (ev, option) {\n var _a;\n setKeyFocused(undefined);\n (_a = option === null || option === void 0 ? void 0 : option.onBlur) === null || _a === void 0 ? void 0 : _a.call(option, ev);\n }, []);\n var onOptionChange = React.useCallback(function (evt, option) {\n var _a;\n if (!option) {\n return;\n }\n setKeyChecked(option.itemKey);\n (_a = option.onChange) === null || _a === void 0 ? void 0 : _a.call(option, evt);\n onChange === null || onChange === void 0 ? void 0 : onChange(evt, findOption(options, option.itemKey));\n }, [onChange, options, setKeyChecked]);\n var onRadioFocus = React.useCallback(function (evt) {\n // Handles scenarios like this bug: https://github.com/microsoft/fluentui/issues/20173\n if (focusFromSibling(evt)) {\n focusSelectedOption(options, keyChecked, id);\n }\n }, [options, keyChecked, id]);\n return (React.createElement(\"div\", __assign({ className: classNames.root }, divProps, { ref: mergedRootRefs }),\n React.createElement(\"div\", __assign({ role: \"radiogroup\" }, (ariaLabelledBy && { 'aria-labelledby': ariaLabelledBy }), { onFocus: onRadioFocus }),\n label && (React.createElement(Label, { className: classNames.label, required: required, id: labelId, disabled: disabled }, label)),\n React.createElement(\"div\", { className: classNames.flexContainer }, options.map(function (option) {\n return (React.createElement(ChoiceGroupOption, __assign({ itemKey: option.key }, option, { key: option.key, onBlur: onBlur, onFocus: onFocus, onChange: onOptionChange, focused: option.key === keyFocused, checked: option.key === keyChecked, disabled: option.disabled || disabled, id: getOptionId(option, id), labelId: option.labelId || labelId + \"-\" + option.key, name: name || id, required: required })));\n })))));\n});\nChoiceGroupBase.displayName = COMPONENT_NAME;\nfunction useDebugWarnings(props) {\n if (process.env.NODE_ENV !== 'production') {\n // eslint-disable-next-line react-hooks/rules-of-hooks -- build-time conditional\n useWarnings({\n name: COMPONENT_NAME,\n props: props,\n mutuallyExclusive: {\n selectedKey: 'defaultSelectedKey',\n },\n });\n }\n}\n//# sourceMappingURL=ChoiceGroup.base.js.map","import { getGlobalClassNames } from '../../Styling';\nvar GlobalClassNames = {\n root: 'ms-ChoiceFieldGroup',\n flexContainer: 'ms-ChoiceFieldGroup-flexContainer',\n};\nexport var getStyles = function (props) {\n var className = props.className, optionsContainIconOrImage = props.optionsContainIconOrImage, theme = props.theme;\n var classNames = getGlobalClassNames(GlobalClassNames, theme);\n return {\n root: [\n className,\n classNames.root,\n theme.fonts.medium,\n {\n display: 'block',\n },\n ],\n flexContainer: [\n classNames.flexContainer,\n optionsContainIconOrImage && {\n display: 'flex',\n flexDirection: 'row',\n flexWrap: 'wrap',\n },\n ],\n };\n};\n//# sourceMappingURL=ChoiceGroup.styles.js.map","import { styled } from '../../Utilities';\nimport { ChoiceGroupBase } from './ChoiceGroup.base';\nimport { getStyles } from './ChoiceGroup.styles';\nexport var ChoiceGroup = styled(ChoiceGroupBase, getStyles, undefined, { scope: 'ChoiceGroup' });\n//# sourceMappingURL=ChoiceGroup.js.map","var _a;\nimport { __assign } from \"tslib\";\nimport * as React from 'react';\nimport { getClassNames } from './PositioningContainer.styles';\nimport { ZIndexes } from '../../../Styling';\nimport { Layer } from '../../../Layer';\n// Utilites/Helpers\nimport { DirectionalHint } from '../../../common/DirectionalHint';\nimport { css, elementContains, focusFirstChild, EventGroup, getPropsWithDefaults } from '../../../Utilities';\nimport { getMaxHeight, positionElement, RectangleEdge } from '../../../Positioning';\nimport { AnimationClassNames, mergeStyles } from '../../../Styling';\nimport { useMergedRefs, useAsync, useTarget } from '@fluentui/react-hooks';\nvar OFF_SCREEN_STYLE = { opacity: 0 };\n// In order for some of the max height logic to work properly we need to set the border.\n// The value is arbitrary.\nvar BORDER_WIDTH = 1;\nvar SLIDE_ANIMATIONS = (_a = {},\n _a[RectangleEdge.top] = 'slideUpIn20',\n _a[RectangleEdge.bottom] = 'slideDownIn20',\n _a[RectangleEdge.left] = 'slideLeftIn20',\n _a[RectangleEdge.right] = 'slideRightIn20',\n _a);\nvar DEFAULT_PROPS = {\n preventDismissOnScroll: false,\n offsetFromTarget: 0,\n minPagePadding: 8,\n directionalHint: DirectionalHint.bottomAutoEdge,\n};\nfunction useCachedBounds(props, targetWindow) {\n /** The bounds used when determining if and where the PositioningContainer should be placed. */\n var positioningBounds = React.useRef();\n var getCachedBounds = function () {\n if (!positioningBounds.current) {\n var currentBounds = props.bounds;\n if (!currentBounds) {\n currentBounds = {\n top: 0 + props.minPagePadding,\n left: 0 + props.minPagePadding,\n right: targetWindow.innerWidth - props.minPagePadding,\n bottom: targetWindow.innerHeight - props.minPagePadding,\n width: targetWindow.innerWidth - props.minPagePadding * 2,\n height: targetWindow.innerHeight - props.minPagePadding * 2,\n };\n }\n positioningBounds.current = currentBounds;\n }\n return positioningBounds.current;\n };\n return getCachedBounds;\n}\nfunction usePositionState(props, positionedHost, contentHost, targetRef, getCachedBounds) {\n var async = useAsync();\n /**\n * Current set of calculated positions for the outermost parent container.\n */\n var _a = React.useState(), positions = _a[0], setPositions = _a[1];\n var positionAttempts = React.useRef(0);\n var updateAsyncPosition = function () {\n async.requestAnimationFrame(function () { return updatePosition(); });\n };\n var updatePosition = function () {\n var offsetFromTarget = props.offsetFromTarget, onPositioned = props.onPositioned;\n var hostElement = positionedHost.current;\n var positioningContainerElement = contentHost.current;\n if (hostElement && positioningContainerElement) {\n var currentProps = __assign({}, props);\n currentProps.bounds = getCachedBounds();\n currentProps.target = targetRef.current;\n var target = currentProps.target;\n if (target) {\n // Check if the target is an Element or a MouseEvent and the document contains it\n // or don't check anything else if the target is a Point or Rectangle\n if ((!target.getBoundingClientRect && !target.preventDefault) ||\n document.body.contains(target)) {\n currentProps.gapSpace = offsetFromTarget;\n var newPositions = positionElement(currentProps, hostElement, positioningContainerElement);\n // Set the new position only when the positions are not exists or one of the new positioningContainer\n // positions are different. The position should not change if the position is within 2 decimal places.\n if ((!positions && newPositions) ||\n (positions && newPositions && !arePositionsEqual(positions, newPositions) && positionAttempts.current < 5)) {\n // We should not reposition the positioningContainer more than a few times, if it is then the content is\n // likely resizing and we should stop trying to reposition to prevent a stack overflow.\n positionAttempts.current++;\n setPositions(newPositions);\n onPositioned === null || onPositioned === void 0 ? void 0 : onPositioned(newPositions);\n }\n else {\n positionAttempts.current = 0;\n onPositioned === null || onPositioned === void 0 ? void 0 : onPositioned(newPositions);\n }\n }\n else if (positions !== undefined) {\n setPositions(undefined);\n }\n }\n else if (positions !== undefined) {\n setPositions(undefined);\n }\n }\n };\n React.useEffect(updateAsyncPosition);\n return [positions, updateAsyncPosition];\n}\nfunction useSetInitialFocus(_a, contentHost, positions) {\n var setInitialFocus = _a.setInitialFocus;\n var didSetInitialFocus = React.useRef(false);\n React.useEffect(function () {\n if (!didSetInitialFocus.current && contentHost.current && setInitialFocus && positions) {\n didSetInitialFocus.current = true;\n focusFirstChild(contentHost.current);\n }\n });\n}\nfunction useMaxHeight(_a, targetRef, getCachedBounds) {\n var directionalHintFixed = _a.directionalHintFixed, offsetFromTarget = _a.offsetFromTarget, directionalHint = _a.directionalHint, target = _a.target;\n /**\n * The maximum height the PositioningContainer can grow to\n * without going beyond the window or target bounds\n */\n var maxHeight = React.useRef();\n // If the target element changed, reset the max height. If we are tracking\n // target with class name, always reset because we do not know if\n // fabric has rendered a new element and disposed the old element.\n if (typeof target === 'string') {\n maxHeight.current = undefined;\n }\n React.useEffect(function () {\n maxHeight.current = undefined;\n }, [target, offsetFromTarget]);\n /**\n * Return the maximum height the container can grow to\n * without going out of the specified bounds\n */\n var getCachedMaxHeight = function () {\n if (!maxHeight.current) {\n if (directionalHintFixed && targetRef.current) {\n var gapSpace = offsetFromTarget ? offsetFromTarget : 0;\n maxHeight.current = getMaxHeight(targetRef.current, directionalHint, gapSpace, getCachedBounds());\n }\n else {\n maxHeight.current = getCachedBounds().height - BORDER_WIDTH * 2;\n }\n }\n return maxHeight.current;\n };\n return getCachedMaxHeight;\n}\nfunction useAutoDismissEvents(_a, positionedHost, targetWindow, targetRef, positions, updateAsyncPosition) {\n var onDismiss = _a.onDismiss, preventDismissOnScroll = _a.preventDismissOnScroll;\n var async = useAsync();\n var onResize = React.useCallback(function (ev) {\n if (onDismiss) {\n onDismiss(ev);\n }\n else {\n updateAsyncPosition();\n }\n }, [onDismiss, updateAsyncPosition]);\n var dismissOnLostFocus = React.useCallback(function (ev) {\n var target = ev.target;\n var clickedOutsideCallout = positionedHost.current && !elementContains(positionedHost.current, target);\n if ((!targetRef.current && clickedOutsideCallout) ||\n (ev.target !== targetWindow &&\n clickedOutsideCallout &&\n (targetRef.current.stopPropagation ||\n !targetRef.current ||\n (target !== targetRef.current && !elementContains(targetRef.current, target))))) {\n onResize(ev);\n }\n }, [onResize, positionedHost, targetRef, targetWindow]);\n var dismissOnScroll = React.useCallback(function (ev) {\n if (positions && !preventDismissOnScroll) {\n dismissOnLostFocus(ev);\n }\n }, [dismissOnLostFocus, positions, preventDismissOnScroll]);\n React.useEffect(function () {\n var events = new EventGroup({});\n // This is added so the positioningContainer will dismiss when the window is scrolled\n // but not when something inside the positioningContainer is scrolled. The delay seems\n // to be required to avoid React firing an async focus event in IE from\n // the target changing focus quickly prior to rendering the positioningContainer.\n async.setTimeout(function () {\n var _a, _b;\n events.on(targetWindow, 'scroll', async.throttle(dismissOnScroll, 10), true);\n events.on(targetWindow, 'resize', async.throttle(onResize, 10), true);\n events.on((_a = targetWindow === null || targetWindow === void 0 ? void 0 : targetWindow.document) === null || _a === void 0 ? void 0 : _a.body, 'focus', dismissOnLostFocus, true);\n events.on((_b = targetWindow === null || targetWindow === void 0 ? void 0 : targetWindow.document) === null || _b === void 0 ? void 0 : _b.body, 'click', dismissOnLostFocus, true);\n }, 0);\n return function () { return events.dispose(); };\n // eslint-disable-next-line react-hooks/exhaustive-deps -- should only run on mount\n }, [dismissOnScroll]);\n}\nexport function useHeightOffset(_a, contentHost) {\n var finalHeight = _a.finalHeight;\n /**\n * Tracks the current height offset and updates during\n * the height animation when props.finalHeight is specified.\n */\n var _b = React.useState(0), heightOffset = _b[0], setHeightOffset = _b[1];\n var async = useAsync();\n var setHeightOffsetTimer = React.useRef(0);\n /** Animates the height if finalHeight was given. */\n var setHeightOffsetEveryFrame = function () {\n if (contentHost && finalHeight) {\n setHeightOffsetTimer.current = async.requestAnimationFrame(function () {\n if (!contentHost.current) {\n return;\n }\n var positioningContainerMainElem = contentHost.current.lastChild;\n var cardScrollHeight = positioningContainerMainElem.scrollHeight;\n var cardCurrHeight = positioningContainerMainElem.offsetHeight;\n var scrollDiff = cardScrollHeight - cardCurrHeight;\n setHeightOffset(heightOffset + scrollDiff);\n if (positioningContainerMainElem.offsetHeight < finalHeight) {\n setHeightOffsetEveryFrame();\n }\n else {\n async.cancelAnimationFrame(setHeightOffsetTimer.current);\n }\n });\n }\n };\n // eslint-disable-next-line react-hooks/exhaustive-deps -- should only re-run if finalHeight changes\n React.useEffect(setHeightOffsetEveryFrame, [finalHeight]);\n return heightOffset;\n}\nexport var PositioningContainer = React.forwardRef(function (propsWithoutDefaults, forwardedRef) {\n var props = getPropsWithDefaults(DEFAULT_PROPS, propsWithoutDefaults);\n // @TODO rename to reflect the name of this class\n var contentHost = React.useRef(null);\n /**\n * The primary positioned div.\n */\n var positionedHost = React.useRef(null);\n var rootRef = useMergedRefs(forwardedRef, positionedHost);\n var _a = useTarget(props.target, positionedHost), targetRef = _a[0], targetWindow = _a[1];\n var getCachedBounds = useCachedBounds(props, targetWindow);\n var _b = usePositionState(props, positionedHost, contentHost, targetRef, getCachedBounds), positions = _b[0], updateAsyncPosition = _b[1];\n var getCachedMaxHeight = useMaxHeight(props, targetRef, getCachedBounds);\n var heightOffset = useHeightOffset(props, contentHost);\n useSetInitialFocus(props, contentHost, positions);\n useAutoDismissEvents(props, positionedHost, targetWindow, targetRef, positions, updateAsyncPosition);\n // eslint-disable-next-line react-hooks/exhaustive-deps -- should only run on initial render\n React.useEffect(function () { var _a; return (_a = props.onLayerMounted) === null || _a === void 0 ? void 0 : _a.call(props); }, []);\n // If there is no target window then we are likely in server side rendering and we should not render anything.\n if (!targetWindow) {\n return null;\n }\n var className = props.className, doNotLayer = props.doNotLayer, positioningContainerWidth = props.positioningContainerWidth, positioningContainerMaxHeight = props.positioningContainerMaxHeight, children = props.children;\n var styles = getClassNames();\n var directionalClassName = positions && positions.targetEdge ? AnimationClassNames[SLIDE_ANIMATIONS[positions.targetEdge]] : '';\n var getContentMaxHeight = getCachedMaxHeight() + heightOffset;\n var contentMaxHeight = positioningContainerMaxHeight && positioningContainerMaxHeight > getContentMaxHeight\n ? getContentMaxHeight\n : positioningContainerMaxHeight;\n var content = (React.createElement(\"div\", { ref: rootRef, className: css('ms-PositioningContainer', styles.container) },\n React.createElement(\"div\", { className: mergeStyles('ms-PositioningContainer-layerHost', styles.root, className, directionalClassName, !!positioningContainerWidth && { width: positioningContainerWidth }, doNotLayer && { zIndex: ZIndexes.Layer }), style: positions ? positions.elementPosition : OFF_SCREEN_STYLE, \n // Safari and Firefox on Mac OS requires this to back-stop click events so focus remains in the Callout.\n // See https://developer.mozilla.org/en-US/docs/Web/HTML/Element/button#Clicking_and_focus\n tabIndex: -1, ref: contentHost },\n children,\n // @TODO apply to the content container\n contentMaxHeight)));\n return doNotLayer ? content : React.createElement(Layer, null, content);\n});\nPositioningContainer.displayName = 'PositioningContainer';\nfunction arePositionsEqual(positions, newPosition) {\n return comparePositions(positions.elementPosition, newPosition.elementPosition);\n}\nfunction comparePositions(oldPositions, newPositions) {\n for (var key in newPositions) {\n if (newPositions.hasOwnProperty(key)) {\n var oldPositionEdge = oldPositions[key];\n var newPositionEdge = newPositions[key];\n if (oldPositionEdge && newPositionEdge) {\n if (oldPositionEdge.toFixed(2) !== newPositionEdge.toFixed(2)) {\n return false;\n }\n }\n }\n }\n return true;\n}\n//# sourceMappingURL=PositioningContainer.js.map","import { memoizeFunction } from '../../../Utilities';\nimport { mergeStyleSets, focusClear, HighContrastSelector } from '../../../Styling';\nexport var getClassNames = memoizeFunction(function () {\n var _a;\n return mergeStyleSets({\n root: [\n {\n position: 'absolute',\n boxSizing: 'border-box',\n border: '1px solid ${}',\n selectors: (_a = {},\n _a[HighContrastSelector] = {\n border: '1px solid WindowText',\n },\n _a),\n },\n focusClear(),\n ],\n container: {\n position: 'relative',\n },\n main: {\n backgroundColor: '#ffffff',\n overflowX: 'hidden',\n overflowY: 'hidden',\n position: 'relative',\n },\n overFlowYHidden: {\n overflowY: 'hidden',\n },\n });\n});\n//# sourceMappingURL=PositioningContainer.styles.js.map","import { keyframes, PulsingBeaconAnimationStyles, HighContrastSelector } from '../../Styling';\nimport { getRTL, IsFocusVisibleClassName, memoizeFunction } from '../../Utilities';\nexport var COACHMARK_WIDTH = 32;\nexport var COACHMARK_HEIGHT = 32;\nexport var translateOne = memoizeFunction(function () {\n return keyframes({\n '0%': {\n transform: 'translate(0, 0)',\n animationTimingFunction: 'linear',\n },\n '78.57%': {\n transform: 'translate(0, 0)',\n animationTimingFunction: 'cubic-bezier(0.62, 0, 0.56, 1)',\n },\n '82.14%': {\n transform: 'translate(0, -5px)',\n animationTimingFunction: 'cubic-bezier(0.58, 0, 0, 1)',\n },\n '84.88%': {\n transform: 'translate(0, 9px)',\n animationTimingFunction: 'cubic-bezier(1, 0, 0.56, 1)',\n },\n '88.1%': {\n transform: 'translate(0, -2px)',\n animationTimingFunction: 'cubic-bezier(0.58, 0, 0.67, 1)',\n },\n '90.12%': {\n transform: 'translate(0, 0)',\n animationTimingFunction: 'linear',\n },\n '100%': {\n transform: 'translate(0, 0)',\n },\n });\n});\nexport var scaleOne = memoizeFunction(function () {\n return keyframes({\n '0%': {\n transform: ' scale(0)',\n animationTimingFunction: 'linear',\n },\n '14.29%': {\n transform: 'scale(0)',\n animationTimingFunction: 'cubic-bezier(0.84, 0, 0.52, 0.99)',\n },\n '16.67%': {\n transform: 'scale(1.15)',\n animationTimingFunction: 'cubic-bezier(0.48, -0.01, 0.52, 1.01)',\n },\n '19.05%': {\n transform: 'scale(0.95)',\n animationTimingFunction: 'cubic-bezier(0.48, 0.02, 0.52, 0.98)',\n },\n '21.43%': {\n transform: 'scale(1)',\n animationTimingFunction: 'linear',\n },\n '42.86%': {\n transform: 'scale(1)',\n animationTimingFunction: 'cubic-bezier(0.48, -0.02, 0.52, 1.02)',\n },\n '45.71%': {\n transform: 'scale(0.8)',\n animationTimingFunction: 'cubic-bezier(0.48, 0.01, 0.52, 0.99)',\n },\n '50%': {\n transform: 'scale(1)',\n animationTimingFunction: 'linear',\n },\n '90.12%': {\n transform: 'scale(1)',\n animationTimingFunction: 'cubic-bezier(0.48, -0.02, 0.52, 1.02)',\n },\n '92.98%': {\n transform: 'scale(0.8)',\n animationTimingFunction: 'cubic-bezier(0.48, 0.01, 0.52, 0.99)',\n },\n '97.26%': {\n transform: 'scale(1)',\n animationTimingFunction: 'linear',\n },\n '100%': {\n transform: 'scale(1)',\n },\n });\n});\nexport var rotateOne = memoizeFunction(function () {\n return keyframes({\n '0%': {\n transform: 'rotate(0deg)',\n animationTimingFunction: 'linear',\n },\n '83.33%': {\n transform: ' rotate(0deg)',\n animationTimingFunction: 'cubic-bezier(0.33, 0, 0.67, 1)',\n },\n '83.93%': {\n transform: 'rotate(15deg)',\n animationTimingFunction: 'cubic-bezier(0.33, 0, 0.67, 1)',\n },\n '84.52%': {\n transform: 'rotate(-15deg)',\n animationTimingFunction: 'cubic-bezier(0.33, 0, 0.67, 1)',\n },\n '85.12%': {\n transform: 'rotate(15deg)',\n animationTimingFunction: 'cubic-bezier(0.33, 0, 0.67, 1)',\n },\n '85.71%': {\n transform: 'rotate(-15deg)',\n animationTimingFunction: 'cubic-bezier(0.33, 0, 0.67, 1)',\n },\n '86.31%': {\n transform: 'rotate(0deg)',\n animationTimingFunction: 'linear',\n },\n '100%': {\n transform: 'rotate(0deg)',\n },\n });\n});\nexport function getStyles(props) {\n var _a;\n var theme = props.theme, className = props.className, color = props.color, beaconColorOne = props.beaconColorOne, beaconColorTwo = props.beaconColorTwo, delayBeforeCoachmarkAnimation = props.delayBeforeCoachmarkAnimation, isCollapsed = props.isCollapsed, isMeasuring = props.isMeasuring, entityHostHeight = props.entityHostHeight, entityHostWidth = props.entityHostWidth, transformOrigin = props.transformOrigin;\n if (!theme) {\n throw new Error('theme is undefined or null in base Dropdown getStyles function.');\n }\n var animationInnerDimension = '35px';\n var animationOuterDimension = '150px';\n var animationBorderWidth = '10px';\n var ContinuousPulse = PulsingBeaconAnimationStyles.continuousPulseAnimationDouble(beaconColorOne ? beaconColorOne : theme.palette.themePrimary, beaconColorTwo ? beaconColorTwo : theme.palette.themeTertiary, animationInnerDimension, animationOuterDimension, animationBorderWidth);\n var ContinuousPulseAnimation = PulsingBeaconAnimationStyles.createDefaultAnimation(ContinuousPulse, delayBeforeCoachmarkAnimation);\n return {\n root: [\n theme.fonts.medium,\n {\n position: 'relative',\n },\n className,\n ],\n pulsingBeacon: [\n {\n position: 'absolute',\n top: '50%',\n left: '50%',\n transform: getRTL(theme) ? 'translate(50%, -50%)' : 'translate(-50%, -50%)',\n width: '0px',\n height: '0px',\n borderRadius: '225px',\n borderStyle: 'solid',\n opacity: '0',\n },\n isCollapsed && ContinuousPulseAnimation,\n ],\n // Translate Animation Layer\n translateAnimationContainer: [\n {\n width: '100%',\n height: '100%',\n },\n isCollapsed && {\n animationDuration: '14s',\n animationTimingFunction: 'linear',\n animationDirection: 'normal',\n animationIterationCount: '1',\n animationDelay: '0s',\n animationFillMode: 'forwards',\n animationName: translateOne(),\n transition: 'opacity 0.5s ease-in-out',\n },\n !isCollapsed && {\n opacity: '1',\n },\n ],\n // Scale Animation Layer\n scaleAnimationLayer: [\n {\n width: '100%',\n height: '100%',\n },\n isCollapsed && {\n animationDuration: '14s',\n animationTimingFunction: 'linear',\n animationDirection: 'normal',\n animationIterationCount: '1',\n animationDelay: '0s',\n animationFillMode: 'forwards',\n animationName: scaleOne(),\n },\n ],\n // Rotate Animation Layer\n rotateAnimationLayer: [\n {\n width: '100%',\n height: '100%',\n },\n isCollapsed && {\n animationDuration: '14s',\n animationTimingFunction: 'linear',\n animationDirection: 'normal',\n animationIterationCount: '1',\n animationDelay: '0s',\n animationFillMode: 'forwards',\n animationName: rotateOne(),\n },\n !isCollapsed && {\n opacity: '1',\n },\n ],\n // Layer Host, defaults to collapsed\n entityHost: [\n {\n position: 'relative',\n outline: 'none',\n overflow: 'hidden',\n backgroundColor: color,\n borderRadius: COACHMARK_WIDTH,\n transition: 'border-radius 250ms, width 500ms, height 500ms cubic-bezier(0.5, 0, 0, 1)',\n visibility: 'hidden',\n selectors: (_a = {},\n _a[HighContrastSelector] = {\n backgroundColor: 'Window',\n border: '2px solid WindowText',\n },\n _a[\".\" + IsFocusVisibleClassName + \" &:focus\"] = {\n outline: \"1px solid \" + theme.palette.themeTertiary,\n },\n _a),\n },\n !isMeasuring &&\n isCollapsed && {\n width: COACHMARK_WIDTH,\n height: COACHMARK_HEIGHT,\n },\n !isMeasuring && {\n visibility: 'visible',\n },\n !isCollapsed && {\n borderRadius: '1px',\n opacity: '1',\n width: entityHostWidth,\n height: entityHostHeight,\n },\n ],\n entityInnerHost: [\n {\n transition: 'transform 500ms cubic-bezier(0.5, 0, 0, 1)',\n transformOrigin: transformOrigin,\n transform: 'scale(0)',\n },\n !isCollapsed && {\n width: entityHostWidth,\n height: entityHostHeight,\n transform: 'scale(1)',\n },\n !isMeasuring && {\n visibility: 'visible',\n },\n ],\n childrenContainer: [\n {\n display: !isMeasuring && isCollapsed ? 'none' : 'block',\n },\n ],\n ariaContainer: {\n position: 'fixed',\n opacity: 0,\n height: 0,\n width: 0,\n pointerEvents: 'none',\n },\n };\n}\n//# sourceMappingURL=Coachmark.styles.js.map","import { HighContrastSelector } from '../../../Styling';\nexport function getStyles(props) {\n var _a;\n return {\n root: [\n {\n position: 'absolute',\n boxShadow: 'inherit',\n border: 'none',\n boxSizing: 'border-box',\n transform: props.transform,\n width: props.width,\n height: props.height,\n left: props.left,\n top: props.top,\n right: props.right,\n bottom: props.bottom,\n },\n ],\n beak: {\n fill: props.color,\n display: 'block',\n selectors: (_a = {},\n _a[HighContrastSelector] = {\n fill: 'windowtext',\n },\n _a),\n },\n };\n}\n//# sourceMappingURL=Beak.styles.js.map","import * as React from 'react';\nimport { classNamesFunction } from '../../../Utilities';\nimport { getStyles } from './Beak.styles';\nimport { RectangleEdge } from '../../../Positioning';\nexport var BEAK_HEIGHT = 10;\nexport var BEAK_WIDTH = 18;\nexport var Beak = React.forwardRef(function (props, forwardedRef) {\n var left = props.left, top = props.top, bottom = props.bottom, right = props.right, color = props.color, _a = props.direction, direction = _a === void 0 ? RectangleEdge.top : _a;\n var svgHeight;\n var svgWidth;\n if (direction === RectangleEdge.top || direction === RectangleEdge.bottom) {\n svgHeight = BEAK_HEIGHT;\n svgWidth = BEAK_WIDTH;\n }\n else {\n svgHeight = BEAK_WIDTH;\n svgWidth = BEAK_HEIGHT;\n }\n var pointOne;\n var pointTwo;\n var pointThree;\n var transform;\n switch (direction) {\n case RectangleEdge.top:\n default:\n pointOne = BEAK_WIDTH / 2 + \", 0\";\n pointTwo = BEAK_WIDTH + \", \" + BEAK_HEIGHT;\n pointThree = \"0, \" + BEAK_HEIGHT;\n transform = 'translateY(-100%)';\n break;\n case RectangleEdge.right:\n pointOne = \"0, 0\";\n pointTwo = BEAK_HEIGHT + \", \" + BEAK_HEIGHT;\n pointThree = \"0, \" + BEAK_WIDTH;\n transform = 'translateX(100%)';\n break;\n case RectangleEdge.bottom:\n pointOne = \"0, 0\";\n pointTwo = BEAK_WIDTH + \", 0\";\n pointThree = BEAK_WIDTH / 2 + \", \" + BEAK_HEIGHT;\n transform = 'translateY(100%)';\n break;\n case RectangleEdge.left:\n pointOne = BEAK_HEIGHT + \", 0\";\n pointTwo = \"0, \" + BEAK_HEIGHT;\n pointThree = BEAK_HEIGHT + \", \" + BEAK_WIDTH;\n transform = 'translateX(-100%)';\n break;\n }\n var getClassNames = classNamesFunction();\n var classNames = getClassNames(getStyles, {\n left: left,\n top: top,\n bottom: bottom,\n right: right,\n height: svgHeight + \"px\",\n width: svgWidth + \"px\",\n transform: transform,\n color: color,\n });\n return (React.createElement(\"div\", { className: classNames.root, role: \"presentation\", ref: forwardedRef },\n React.createElement(\"svg\", { height: svgHeight, width: svgWidth, className: classNames.beak },\n React.createElement(\"polygon\", { points: pointOne + ' ' + pointTwo + ' ' + pointThree }))));\n});\nBeak.displayName = 'Beak';\n//# sourceMappingURL=Beak.js.map","import { __assign } from \"tslib\";\n// Utilities\nimport * as React from 'react';\nimport { classNamesFunction, elementContains, focusFirstChild, getDocument, KeyCodes, getRTL, EventGroup, getPropsWithDefaults, } from '../../Utilities';\nimport { RectangleEdge, getOppositeEdge } from '../../Positioning';\n// Component Dependencies\nimport { PositioningContainer } from './PositioningContainer/index';\nimport { Beak, BEAK_HEIGHT, BEAK_WIDTH } from './Beak/Beak';\nimport { DirectionalHint } from '../../common/DirectionalHint';\n// Coachmark\nimport { COACHMARK_HEIGHT, COACHMARK_WIDTH } from './Coachmark.styles';\nimport { FocusTrapZone } from '../../FocusTrapZone';\nimport { useAsync, useOnEvent, useSetTimeout, useWarnings } from '@fluentui/react-hooks';\nvar getClassNames = classNamesFunction();\nexport var COACHMARK_ATTRIBUTE_NAME = 'data-coachmarkid';\nvar DEFAULT_PROPS = {\n isCollapsed: true,\n mouseProximityOffset: 10,\n delayBeforeMouseOpen: 3600,\n delayBeforeCoachmarkAnimation: 0,\n isPositionForced: true,\n positioningContainerProps: {\n directionalHint: DirectionalHint.bottomAutoEdge,\n },\n};\nfunction useCollapsedState(props, entityInnerHostElementRef) {\n var propsIsCollapsed = props.isCollapsed, onAnimationOpenStart = props.onAnimationOpenStart, onAnimationOpenEnd = props.onAnimationOpenEnd;\n /** Is the Coachmark currently collapsed into a tear drop shape */\n var _a = React.useState(!!propsIsCollapsed), isCollapsed = _a[0], setIsCollapsed = _a[1];\n var setTimeout = useSetTimeout().setTimeout;\n // Rather than pushing out logic elsewhere to prevent openCoachmark from being called repeatedly,\n // we'll track it here and only invoke the logic once. We do this with a ref, rather than just the state,\n // because the openCoachmark callback can be captured in scope for an effect\n var hasCoachmarkBeenOpened = React.useRef(!isCollapsed);\n var openCoachmark = React.useCallback(function () {\n var _a, _b;\n if (!hasCoachmarkBeenOpened.current) {\n setIsCollapsed(false);\n onAnimationOpenStart === null || onAnimationOpenStart === void 0 ? void 0 : onAnimationOpenStart();\n (_b = (_a = entityInnerHostElementRef.current) === null || _a === void 0 ? void 0 : _a.addEventListener) === null || _b === void 0 ? void 0 : _b.call(_a, 'transitionend', function () {\n // Need setTimeout to trigger narrator\n setTimeout(function () {\n if (entityInnerHostElementRef.current) {\n focusFirstChild(entityInnerHostElementRef.current);\n }\n }, 1000);\n onAnimationOpenEnd === null || onAnimationOpenEnd === void 0 ? void 0 : onAnimationOpenEnd();\n });\n hasCoachmarkBeenOpened.current = true;\n }\n }, [entityInnerHostElementRef, onAnimationOpenEnd, onAnimationOpenStart, setTimeout]);\n React.useEffect(function () {\n if (!propsIsCollapsed) {\n openCoachmark();\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps -- should only run if isCollapsed changes\n }, [propsIsCollapsed]);\n return [isCollapsed, openCoachmark];\n}\nfunction usePositionedData() {\n var async = useAsync();\n /**\n * Alignment edge of callout in relation to target\n */\n var _a = React.useState(), targetAlignment = _a[0], setTargetAlignment = _a[1];\n /**\n * Position of Coachmark/TeachingBubble in relation to target\n */\n var _b = React.useState(), targetPosition = _b[0], setTargetPosition = _b[1];\n var onPositioned = function (_a) {\n var alignmentEdge = _a.alignmentEdge, targetEdge = _a.targetEdge;\n return async.requestAnimationFrame(function () {\n setTargetAlignment(alignmentEdge);\n setTargetPosition(targetEdge);\n });\n };\n return [targetAlignment, targetPosition, onPositioned];\n}\nfunction useBeakPosition(props, targetAlignment, targetPosition) {\n var isRTL = getRTL(props.theme);\n return React.useMemo(function () {\n var beakDirection = targetPosition === undefined ? RectangleEdge.bottom : getOppositeEdge(targetPosition);\n var beakPosition = { direction: beakDirection };\n var transformOriginX;\n var transformOriginY;\n var distanceAdjustment = '3px'; // Adjustment distance for Beak to shift towards Coachmark bubble.\n switch (beakDirection) {\n // If Beak is pointing Up or Down\n case RectangleEdge.top:\n case RectangleEdge.bottom:\n // If there is no target alignment, then beak is X-axis centered in callout\n if (!targetAlignment) {\n beakPosition.left = \"calc(50% - \" + BEAK_WIDTH / 2 + \"px)\";\n transformOriginX = 'center';\n }\n else {\n // Beak is aligned to the left of target\n if (targetAlignment === RectangleEdge.left) {\n beakPosition.left = COACHMARK_WIDTH / 2 - BEAK_WIDTH / 2 + \"px\";\n transformOriginX = 'left';\n }\n else {\n // Beak is aligned to the right of target\n beakPosition.right = COACHMARK_WIDTH / 2 - BEAK_WIDTH / 2 + \"px\";\n transformOriginX = 'right';\n }\n }\n if (beakDirection === RectangleEdge.top) {\n beakPosition.top = distanceAdjustment;\n transformOriginY = 'top';\n }\n else {\n beakPosition.bottom = distanceAdjustment;\n transformOriginY = 'bottom';\n }\n break;\n // If Beak is pointing Left or Right\n case RectangleEdge.left:\n case RectangleEdge.right:\n // If there is no target alignment, then beak is Y-axis centered in callout\n if (!targetAlignment) {\n beakPosition.top = \"calc(50% - \" + BEAK_WIDTH / 2 + \"px)\";\n transformOriginY = \"center\";\n }\n else {\n // Beak is aligned to the top of target\n if (targetAlignment === RectangleEdge.top) {\n beakPosition.top = COACHMARK_WIDTH / 2 - BEAK_WIDTH / 2 + \"px\";\n transformOriginY = \"top\";\n }\n else {\n // Beak is aligned to the bottom of target\n beakPosition.bottom = COACHMARK_WIDTH / 2 - BEAK_WIDTH / 2 + \"px\";\n transformOriginY = \"bottom\";\n }\n }\n if (beakDirection === RectangleEdge.left) {\n if (isRTL) {\n beakPosition.right = distanceAdjustment;\n }\n else {\n beakPosition.left = distanceAdjustment;\n }\n transformOriginX = 'left';\n }\n else {\n if (isRTL) {\n beakPosition.left = distanceAdjustment;\n }\n else {\n beakPosition.right = distanceAdjustment;\n }\n transformOriginX = 'right';\n }\n break;\n }\n return [beakPosition, transformOriginX + \" \" + transformOriginY];\n }, [targetAlignment, targetPosition, isRTL]);\n}\nfunction useListeners(props, translateAnimationContainer, openCoachmark) {\n var _a;\n var document = (_a = getDocument()) === null || _a === void 0 ? void 0 : _a.documentElement;\n useOnEvent(document, 'keydown', function (e) {\n var _a, _b;\n // Open coachmark if user presses ALT + C (arbitrary keypress for now)\n if (\n // eslint-disable-next-line deprecation/deprecation\n (e.altKey && e.which === KeyCodes.c) ||\n // eslint-disable-next-line deprecation/deprecation\n (e.which === KeyCodes.enter && ((_b = (_a = translateAnimationContainer.current) === null || _a === void 0 ? void 0 : _a.contains) === null || _b === void 0 ? void 0 : _b.call(_a, e.target)))) {\n openCoachmark();\n }\n }, true);\n var dismissOnLostFocus = function (ev) {\n var _a;\n if (props.preventDismissOnLostFocus) {\n var clickTarget = ev.target;\n var clickedOutsideCallout = translateAnimationContainer.current && !elementContains(translateAnimationContainer.current, clickTarget);\n var target = props.target;\n if (clickedOutsideCallout && clickTarget !== target && !elementContains(target, clickTarget)) {\n (_a = props.onDismiss) === null || _a === void 0 ? void 0 : _a.call(props, ev);\n }\n }\n };\n useOnEvent(document, 'click', dismissOnLostFocus, true);\n useOnEvent(document, 'focus', dismissOnLostFocus, true);\n}\nfunction useProximityHandlers(props, translateAnimationContainer, openCoachmark) {\n var _a = useSetTimeout(), setTimeout = _a.setTimeout, clearTimeout = _a.clearTimeout;\n /** The target element the mouse would be in proximity to */\n var targetElementRect = React.useRef();\n React.useEffect(function () {\n var setTargetElementRect = function () {\n if (translateAnimationContainer.current) {\n targetElementRect.current = translateAnimationContainer.current.getBoundingClientRect();\n }\n };\n var events = new EventGroup({});\n // We don't want the user to immediately trigger the Coachmark when it's opened\n setTimeout(function () {\n var _a = props.mouseProximityOffset, mouseProximityOffset = _a === void 0 ? 0 : _a;\n /** Cached ids returned when setTimeout runs during the window resize event trigger. */\n var timeoutIds = [];\n // Take the initial measure out of the initial render to prevent an unnecessary render.\n setTimeout(function () {\n setTargetElementRect();\n // When the window resizes we want to async get the bounding client rectangle.\n // Every time the event is triggered we want to setTimeout and then clear any previous\n // instances of setTimeout.\n events.on(window, 'resize', function () {\n timeoutIds.forEach(function (value) {\n clearTimeout(value);\n });\n timeoutIds.splice(0, timeoutIds.length); // clear array\n timeoutIds.push(setTimeout(function () {\n setTargetElementRect();\n }, 100));\n });\n }, 10);\n // Every time the document's mouse move is triggered, we want to check if inside of an element\n // and set the state with the result.\n events.on(document, 'mousemove', function (e) {\n var _a;\n var mouseY = e.clientY;\n var mouseX = e.clientX;\n setTargetElementRect();\n if (isInsideElement(targetElementRect.current, mouseX, mouseY, mouseProximityOffset)) {\n openCoachmark();\n }\n (_a = props.onMouseMove) === null || _a === void 0 ? void 0 : _a.call(props, e);\n });\n }, props.delayBeforeMouseOpen);\n return function () { return events.dispose(); };\n // eslint-disable-next-line react-hooks/exhaustive-deps -- should only run on mount\n }, []);\n}\nfunction useComponentRef(props) {\n var onDismiss = props.onDismiss;\n React.useImperativeHandle(props.componentRef, function (ev) { return ({\n dismiss: function () {\n onDismiss === null || onDismiss === void 0 ? void 0 : onDismiss(ev);\n },\n }); }, [onDismiss]);\n}\nfunction useAriaAlert(_a) {\n var ariaAlertText = _a.ariaAlertText;\n var async = useAsync();\n /** ARIA alert text to read aloud with Narrator once the Coachmark is mounted */\n var _b = React.useState(), alertText = _b[0], setAlertText = _b[1];\n React.useEffect(function () {\n // Need to add RAF to have narrator read change in alert container\n async.requestAnimationFrame(function () {\n setAlertText(ariaAlertText);\n });\n // eslint-disable-next-line react-hooks/exhaustive-deps -- should only run on mount\n }, []);\n return alertText;\n}\nfunction useAutoFocus(_a) {\n var preventFocusOnMount = _a.preventFocusOnMount;\n var setTimeout = useSetTimeout().setTimeout;\n /**\n * The cached HTMLElement reference to the Entity Inner Host\n * element.\n */\n var entityHost = React.useRef(null);\n React.useEffect(function () {\n if (!preventFocusOnMount) {\n setTimeout(function () { var _a; return (_a = entityHost.current) === null || _a === void 0 ? void 0 : _a.focus(); }, 1000);\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps -- should only run on mount\n }, []);\n return entityHost;\n}\nfunction useEntityHostMeasurements(props, entityInnerHostElementRef) {\n /** Is the teaching bubble currently retrieving the original dimensions of the hosted entity. */\n var _a = React.useState(!!props.isCollapsed), isMeasuring = _a[0], setIsMeasuring = _a[1];\n /** Cached width and height of _entityInnerHostElement */\n var _b = React.useState(props.isCollapsed ? { width: 0, height: 0 } : {}), entityInnerHostRect = _b[0], setEntityInnerHostRect = _b[1];\n var async = useAsync();\n React.useEffect(function () {\n async.requestAnimationFrame(function () {\n if (entityInnerHostElementRef.current) {\n setEntityInnerHostRect({\n width: entityInnerHostElementRef.current.offsetWidth,\n height: entityInnerHostElementRef.current.offsetHeight,\n });\n setIsMeasuring(false);\n }\n });\n // eslint-disable-next-line react-hooks/exhaustive-deps -- should only run on mount\n }, []);\n return [isMeasuring, entityInnerHostRect];\n}\nfunction useDeprecationWarning(props) {\n if (process.env.NODE_ENV !== 'production') {\n // eslint-disable-next-line react-hooks/rules-of-hooks -- build-time conditional\n useWarnings({\n name: COMPONENT_NAME,\n props: props,\n deprecations: {\n teachingBubbleRef: undefined,\n collapsed: 'isCollapsed',\n beakWidth: undefined,\n beakHeight: undefined,\n width: undefined,\n height: undefined,\n },\n });\n }\n}\nvar COMPONENT_NAME = 'CoachmarkBase';\nexport var CoachmarkBase = React.forwardRef(function (propsWithoutDefaults, forwardedRef) {\n var props = getPropsWithDefaults(DEFAULT_PROPS, propsWithoutDefaults);\n var entityInnerHostElementRef = React.useRef(null);\n var translateAnimationContainer = React.useRef(null);\n var _a = usePositionedData(), targetAlignment = _a[0], targetPosition = _a[1], onPositioned = _a[2];\n var _b = useCollapsedState(props, entityInnerHostElementRef), isCollapsed = _b[0], openCoachmark = _b[1];\n var _c = useBeakPosition(props, targetAlignment, targetPosition), beakPositioningProps = _c[0], transformOrigin = _c[1];\n var _d = useEntityHostMeasurements(props, entityInnerHostElementRef), isMeasuring = _d[0], entityInnerHostRect = _d[1];\n var alertText = useAriaAlert(props);\n var entityHost = useAutoFocus(props);\n useListeners(props, translateAnimationContainer, openCoachmark);\n useComponentRef(props);\n useProximityHandlers(props, translateAnimationContainer, openCoachmark);\n useDeprecationWarning(props);\n var beaconColorOne = props.beaconColorOne, beaconColorTwo = props.beaconColorTwo, children = props.children, target = props.target, color = props.color, positioningContainerProps = props.positioningContainerProps, ariaDescribedBy = props.ariaDescribedBy, ariaDescribedByText = props.ariaDescribedByText, ariaLabelledBy = props.ariaLabelledBy, ariaLabelledByText = props.ariaLabelledByText, ariaAlertText = props.ariaAlertText, delayBeforeCoachmarkAnimation = props.delayBeforeCoachmarkAnimation, styles = props.styles, theme = props.theme, className = props.className, persistentBeak = props.persistentBeak;\n // Defaulting the main background before passing it to the styles because it is used for `Beak` too.\n var defaultColor = color;\n if (!defaultColor && theme) {\n defaultColor = theme.semanticColors.primaryButtonBackground;\n }\n var classNames = getClassNames(styles, {\n theme: theme,\n beaconColorOne: beaconColorOne,\n beaconColorTwo: beaconColorTwo,\n className: className,\n isCollapsed: isCollapsed,\n isMeasuring: isMeasuring,\n color: defaultColor,\n transformOrigin: transformOrigin,\n entityHostHeight: entityInnerHostRect.height === undefined ? undefined : entityInnerHostRect.height + \"px\",\n entityHostWidth: entityInnerHostRect.width === undefined ? undefined : entityInnerHostRect.width + \"px\",\n width: COACHMARK_WIDTH + \"px\",\n height: COACHMARK_HEIGHT + \"px\",\n delayBeforeCoachmarkAnimation: delayBeforeCoachmarkAnimation + \"ms\",\n });\n var finalHeight = isCollapsed ? COACHMARK_HEIGHT : entityInnerHostRect.height;\n return (React.createElement(PositioningContainer, __assign({ target: target, offsetFromTarget: BEAK_HEIGHT, finalHeight: finalHeight, ref: forwardedRef, onPositioned: onPositioned, bounds: getBounds(props) }, positioningContainerProps),\n React.createElement(\"div\", { className: classNames.root },\n ariaAlertText && (React.createElement(\"div\", { className: classNames.ariaContainer, role: \"alert\", \"aria-hidden\": !isCollapsed }, alertText)),\n React.createElement(\"div\", { className: classNames.pulsingBeacon }),\n React.createElement(\"div\", { className: classNames.translateAnimationContainer, ref: translateAnimationContainer },\n React.createElement(\"div\", { className: classNames.scaleAnimationLayer },\n React.createElement(\"div\", { className: classNames.rotateAnimationLayer },\n (isCollapsed || persistentBeak) && React.createElement(Beak, __assign({}, beakPositioningProps, { color: defaultColor })),\n React.createElement(\"div\", { className: classNames.entityHost, ref: entityHost, tabIndex: -1, \"data-is-focusable\": true, role: \"dialog\", \"aria-labelledby\": ariaLabelledBy, \"aria-describedby\": ariaDescribedBy },\n isCollapsed && [\n ariaLabelledBy && (React.createElement(\"p\", { id: ariaLabelledBy, key: 0, className: classNames.ariaContainer }, ariaLabelledByText)),\n ariaDescribedBy && (React.createElement(\"p\", { id: ariaDescribedBy, key: 1, className: classNames.ariaContainer }, ariaDescribedByText)),\n ],\n React.createElement(FocusTrapZone, { isClickableOutsideFocusTrap: true, forceFocusInsideTrap: false },\n React.createElement(\"div\", { className: classNames.entityInnerHost, ref: entityInnerHostElementRef },\n React.createElement(\"div\", { className: classNames.childrenContainer, \"aria-hidden\": isCollapsed }, children))))))))));\n});\nCoachmarkBase.displayName = COMPONENT_NAME;\nfunction getBounds(_a) {\n var isPositionForced = _a.isPositionForced, positioningContainerProps = _a.positioningContainerProps;\n if (isPositionForced) {\n // If directionalHint direction is the top or bottom auto edge, then we want to set the left/right bounds\n // to the window x-axis to have auto positioning work correctly.\n if (positioningContainerProps &&\n (positioningContainerProps.directionalHint === DirectionalHint.topAutoEdge ||\n positioningContainerProps.directionalHint === DirectionalHint.bottomAutoEdge)) {\n return {\n left: 0,\n top: -Infinity,\n bottom: Infinity,\n right: window.innerWidth,\n width: window.innerWidth,\n height: Infinity,\n };\n }\n else {\n return {\n left: -Infinity,\n top: -Infinity,\n bottom: Infinity,\n right: Infinity,\n width: Infinity,\n height: Infinity,\n };\n }\n }\n else {\n return undefined;\n }\n}\nfunction isInsideElement(targetElementRect, mouseX, mouseY, mouseProximityOffset) {\n if (mouseProximityOffset === void 0) { mouseProximityOffset = 0; }\n return (mouseX > targetElementRect.left - mouseProximityOffset &&\n mouseX < targetElementRect.left + targetElementRect.width + mouseProximityOffset &&\n mouseY > targetElementRect.top - mouseProximityOffset &&\n mouseY < targetElementRect.top + targetElementRect.height + mouseProximityOffset);\n}\n//# sourceMappingURL=Coachmark.base.js.map","import { styled } from '../../Utilities';\nimport { getStyles } from './Coachmark.styles';\nimport { CoachmarkBase } from './Coachmark.base';\nexport var Coachmark = styled(CoachmarkBase, getStyles, undefined, {\n scope: 'Coachmark',\n});\n//# sourceMappingURL=Coachmark.js.map"],"names":["getClassNames","memoize","styles","className","activityPersonas","isCompact","root","mergeStyles","isCompactRoot","pulsingBeacon","personaContainer","isCompactPersonaContainer","activityPersona","isCompactPersona","length","doublePersona","activityTypeIcon","isCompactIcon","activityContent","isCompactContent","activityText","commentText","timeStamp","isCompactTimeStamp","DEFAULT_PERSONA_SIZE","COMPACT_PERSONA_SIZE","DEFAULT_ICON_SIZE","COMPACT_ICON_SIZE","fadeIn","keyframes","from","opacity","to","slideIn","transform","getStyles","theme","customStyles","animateBeaconSignal","beaconColorOne","beaconColorTwo","_a","getTheme","continuousPulseAnimation","animationName","PulsingBeaconAnimationStyles","continuousPulseAnimationSingle","palette","themePrimary","themeTertiary","animationIterationCount","animationDuration","zIndex","slideInAnimation","fadeInAnimation","ActivityItemStyles","fonts","small","display","justifyContent","alignItems","boxSizing","color","neutralSecondary","position","top","left","width","height","borderRadius","borderStyle","flexWrap","minWidth","flexBasis","paddingRight","fontSize","lineHeight","marginTop","selectors","margin","border","white","HighContrastSelector","alignSelf","overflow","padding","flex","whiteSpace","textOverflow","overflowX","neutralPrimary","tiny","fontWeight","paddingLeft","concatStyleSets","ActivityItem","_super","props","_this","call","this","_onRenderIcon","_onRenderPersonaArray","activityIcon","_onRenderActivityDescription","classNames","_getClassNames","activityDescription","activityDescriptionText","_onRenderComments","comments","_onRenderTimeStamp","personaElement","imageUrl","imageInitials","personaList_1","showSize16Personas_1","personaLimit_1","style_1","undefined","filter","person","index","forEach","push","PersonaCoin","key","size","size16","size32","style","prototype","render","_b","onRenderIcon","_c","onRenderActivityDescription","_d","onRenderComments","_e","onRenderTimeStamp","AnnouncedBase","apply","arguments","message","as","Root","role","screenReaderText","defaultProps","Announced","styled","hiddenContentStyle","SELECTION_BACKWARD","Autofill","_inputElement","_autoFillEnabled","_onCompositionStart","ev","setState","isComposing","_onCompositionUpdate","_updateValue","_getCurrentInputValue","_onCompositionEnd","inputValue","_tryEnableAutofill","value","_async","setTimeout","_onClick","_onKeyDown","onKeyDown","nativeEvent","which","backspace","right","suggestedDisplayValue","enableAutofillOnKeyPress","indexOf","_onInputChanged","state","nativeEventComposing","_onChanged","newValue","composing","onInputChange","onInputValueChange","defaultVisibleValue","getDerivedStateFromProps","updateValueInWillReceiveProps","updatedInputValue","Object","defineProperty","get","current","inputElement","selectionDirection","selectionEnd","selectionStart","enumerable","configurable","Boolean","_getControlledValue","componentDidUpdate","_","_1","cursor","shouldSelectFullInputValueInComponentDidUpdate","differenceIndex","preventValueSelection","_doesTextStartWith","shouldSelectFullRange","setSelectionRange","toLocaleLowerCase","start","end","dir","componentWillUnmount","dispose","nativeProps","fontFamily","autoCapitalize","autoComplete","ref","_getDisplayValue","onCompositionStart","onCompositionUpdate","onCompositionEnd","onChange","onInput","onClick","focus","clear","getSnapshotBeforeUpdate","inel","target","oldValue","isComposed","displayValue","console","warn","toString","down","up","text","startWith","classNamesFunction","nullFunction","nonActionableItemProps","semanticColors","bodyText","BreadcrumbBase","_focusZone","_onReduceData","data","renderedItems","renderedOverflowItems","overflowIndex","movedItem","splice","_onGrowData","maxDisplayedItems","pop","_onRenderBreadcrumb","ariaLabel","dividerAs","DividerType","Icon","I","onRenderItem","_onRenderItem","overflowAriaLabel","onRenderOverflowIcon","overflowButtonAs","contextualItems","map","item","isActionable","href","name","_onBreadcrumbClicked","bind","disabled","itemProps","lastItemIndex","hasOverflowItems","itemElements","_classNames","listItem","String","chevron","iconName","iconProps","onRenderMenuIcon","OverflowButton","IconButton","overflowButton","menuProps","items","directionalHint","DirectionalHint","bottomLeftEdge","FocusZone","componentRef","direction","horizontal","focusZoneProps","list","isCurrentItem","additionalProps","Link","itemLink","TooltipHost","content","overflowMode","Parent","tooltipHostProps","Tag","initializeComponentRef","_validateProps","onReduceData","onGrowData","breadcrumbData","ResizeGroup","onRenderData","Error","GlobalClassNames","SingleLineTextStyle","MinimumScreenSelector","getScreenSelector","ScreenWidthMaxSmall","MediumScreenSelector","ScreenWidthMinMedium","ScreenWidthMaxMedium","Breadcrumb","getGlobalClassNames","itemBackgroundHoveredColor","menuItemBackgroundHovered","itemBackgroundPressedColor","menuItemBackgroundPressed","itemTextColor","itemTextFontWeight","FontWeights","regular","itemTextHoveredOrPressedColor","itemLastChildTextColor","itemLastChildTextFontWeight","semibold","chevronButtonColor","overflowButtonColor","lastChildItemStyles","itemStateSelectors","backgroundColor","textDecoration","commonItemStyles","medium","listStyleType","MsHighContrastAdjust","forcedColorAdjust","getHighContrastNoAdjustStyle","getFocusStyle","mediumPlus","neutralDark","outline","scope","ActionButton","variantClassName","onRenderDescription","baseButtonStyles","actionButtonStyles","borderColor","rootHovered","iconHovered","rootPressed","black","rootExpanded","iconPressed","themeDarker","rootDisabled","neutralTertiary","rootChecked","iconChecked","flexContainer","icon","themeDarkAlt","iconDisabled","menuIcon","textContainer","flexGrow","ButtonGlobalClassNames","msButton","msButtonHasMenu","msButtonIcon","msButtonMenuIcon","msButtonLabel","msButtonDescription","msButtonScreenReaderText","msButtonFlexContainer","msButtonTextContainer","getBaseButtonClassNames","iconClassName","menuIconClassName","hasMenu","checked","expanded","isSplit","isExpanded","mergeStyleSets","iconExpandedHovered","menuIconExpandedHovered","rootExpandedHovered","rootHasMenu","labelHovered","descriptionHovered","menuIconHovered","rootFocused","descriptionPressed","menuIconPressed","rootCheckedDisabled","rootCheckedHovered","rootCheckedPressed","iconExpanded","label","labelChecked","labelDisabled","menuIconChecked","menuIconDisabled","menuIconExpanded","description","descriptionChecked","descriptionDisabled","COMPONENT_NAME","BaseButton","_buttonElement","_splitButtonContainer","_mergedRef","_renderedVisibleMenu","_getMemoizedMenuButtonKeytipProps","keytipProps","buttonProps","defaultRender","imageProps","rest","_onRenderTextContents","children","secondaryText","onRenderText","_onRenderText","_onRenderDescription","_hasText","_labelId","id","_onRenderChildren","_descriptionId","_onRenderAriaDescription","ariaDescription","_ariaDescriptionId","_onRenderMenuIcon","menuIconProps","_onRenderMenu","MenuType","menuAs","_onDismissMenu","onDismiss","defaultPrevented","_dismissMenu","_menuShouldFocusOnMount","_menuShouldFocusOnContainer","menuHidden","_openMenu","shouldFocusOnContainer","shouldFocusOnMount","_onToggleMenu","_onSplitContainerFocusCapture","container","_onSplitButtonPrimaryClick","_processingTouch","_onMenuClick","enter","space","_onMenuKeyDown","preventDefault","stopPropagation","_onKeyUp","onKeyUp","_onKeyPress","onKeyPress","_onMouseUp","onMouseUp","_onMouseDown","onMouseDown","_onSplitButtonContainerKeyDown","click","isUp","isDown","_isValidMenuOpenKey","onMenuClick","altKey","metaKey","forceUpdate","_onTouchStart","_isSplitButton","_handleTouchAndPointerEvent","detail","pointerType","_events","split","rootProps","toggled","ariaHidden","allowDisabledFocus","primaryDisabled","toggle","isPrimaryButtonDisabled","renderAsAnchor","tag","type","resolvedAriaLabel","ariaDescribedBy","ariaLabelledBy","dataIsFocusable","isCheckboxTypeRole","checkedOrPressedValue","elementRef","_onRenderSplitButtonContent","_onRenderContent","componentDidMount","on","_onPointerDown","onPointerUp","prevProps","prevState","onAfterMenuDismiss","dismissMenu","openMenu","onRenderAriaDescription","onRenderChildren","onRenderMenu","Button","keytipAttributes","doNotLayer","_shouldRenderMenu","_getMenuProps","Content","persistMenu","renderPersistedMenuHiddenOnMount","labelElementId","hidden","getSplitButtonClassNames","primaryActionButtonProps","onPointerDown","tabIndex","containerProps","SplitButton","splitButtonContainer","onTouchStart","onFocusCapture","_onRenderSplitButtonMenuButton","_onRenderSplitButtonDivider","divider","splitButtonMenuProps","splitButtonAriaLabel","splitButtonProps","stopImmediatePropagation","_lastTouchTimeoutId","clearTimeout","menuTriggerKeyCode","baseClassName","noOutline","iconStyle","textAlign","flexShrink","effects","buttonBorder","disabledBackground","disabledText","buttonHighContrastFocus","bottom","outlineColor","inset","highContrastStyle","userSelect","roundedCorner2","splitButtonDividerBaseStyles","standardStyles","s","p","buttonBackground","buttonBackgroundPressed","buttonBackgroundHovered","buttonBackgroundDisabled","buttonText","buttonTextHovered","buttonTextDisabled","buttonTextChecked","buttonTextCheckedHovered","splitButtonMenuButton","neutralLight","splitButtonMenuButtonDisabled","splitButtonDivider","neutralTertiaryAlt","splitButtonDividerDisabled","splitButtonMenuButtonChecked","neutralQuaternaryAlt","splitButtonMenuButtonExpanded","splitButtonMenuIcon","splitButtonMenuIconDisabled","primaryStyles","_f","_g","_h","_j","primaryButtonBackground","primaryButtonText","primaryButtonBackgroundHovered","primaryButtonTextHovered","primaryButtonBackgroundPressed","primaryButtonTextPressed","primaryButtonTextDisabled","primaryButtonBackgroundDisabled","focusInset","focusColor","_k","_l","_m","_o","_p","baseSplitButtonStyles","commandButtonStyles","neutralLighter","themeDark","disabledBodySubtext","borderTopRightRadius","borderBottomRightRadius","CommandBarButton","customizable","CommandButton","primary","splitButtonStyles","defaultButtonStyles","DefaultButton","iconButtonStyles","link","PrimaryButton","splitButtonMenuFocused","splitButtonContainerChecked","splitButtonContainerCheckedHovered","splitButtonContainerHovered","splitButtonContainerFocused","splitButtonContainerDisabled","splitButtonFlexContainer","borderRight","borderRightWidth","borderLeftWidth","neutralSecondaryAlt","borderLeft","verticalAlign","marginLeft","marginRight","marginBottom","pointerEvents","ElementType","ButtonType","compoundButtonStyles","maxWidth","minHeight","flexDirection","standardCompoundTheme","primaryCompoundTheme","CompoundButton","buttonType","command","compound","outlineOffset","MessageBarButton","CalendarMonthHeaderRow","showWeekNumbers","strings","firstDayOfWeek","allFocusable","weeksToShow","weeks","dayLabels","shortDays","slice","firstOfMonthIndex","day","originalDate","getDate","firstOfMonthIndexOffset","shortMonths","getMonth","dayCell","val","i","days","css","weekDayLabelCell","title","CalendarGridDayCell","navigatedDate","dateTimeFormatter","activeDescendantId","navigatedDayRef","calculateRoundedStyles","dayIndex","weekIndex","weekCorners","customDayCellRef","dateRangeType","daysToSelectInDayView","onSelectDate","restrictedDates","minDate","maxDate","onNavigateDate","getDayInfosInRangeOfDay","getRefsFromDayInfos","cornerStyle","isNavigatedDate","months","getFullYear","isMarked","dayMarkedAriaLabel","isSelected","daySelected","isInBounds","dayOutsideBounds","isInMonth","dayOutsideNavigatedMonth","element","setRef","onSelected","onMouseOver","dayInfos","dayRefs","dayRef","classList","add","Day","remove","bottomLeftCornerDate","bottomRightCornerDate","topLeftCornerDate","topRightCornerDate","classNamesToAdd","trim","onMouseOut","KeyCodes","date","targetDate","findAvailableDateOptions","initialDate","nextDate","findAvailableDate","some","week","dayToCompare","navigateMonthEdge","dayButton","isToday","dayIsToday","formatDay","dayMarker","CalendarGridRow","rowClassName","ariaRole","firstWeekOfYear","weekNumbers","titleString","weekNumberFormatString","weekNumberCell","CalendarDayGridBase","useId","daysRef","dayKey","useDayRefs","getSetRefCallback","weeksGrid","getDayGrid","firstVisibleDay","lastVisibleDay","markedDays","getMarkedDays","returnValue","_loop_1","dayInfo","markedDay","useWeeks","selectedDate","workWeekDays","restrictedDatesOptions","dateRange","getBoundedDateRange","d","isRestrictedDate","animateBackwards","previousNavigatedDate","usePrevious","getTime","useAnimateBackwards","above","below","roundedTopRight","roundedBottomLeft","roundedBottomRight","join","calculateBorderStyles","datesAbove","datesBelow","datesRight","datesLeft","isInSameHoverRange","date1","date2","date1Selected","date2Selected","dateRangeHoverType","WorkWeek","Week","initialWeeks","weekCornersStyled","useWeekCornerStyles","getWeekCornerStyles","labelledBy","lightenDaysOutsideNavigatedMonth","animationDirection","partialWeekProps","sortedWWDays","sort","isContiguous","getDateRangeTypeToUse","reduce","accumulatedValue","currentWeek","concat","weekDay","dayInfosInRange","wrapper","table","firstTransitionWeek","weekRow","lastTransitionWeek","displayName","hoverStyle","pressedStyle","dayIsTodayStyle","daySelectedStyle","transitionRowDisappearance","CalendarDayGrid","rowAnimationStyle","Horizontal","AnimationStyles","slideRightIn20","slideLeftIn20","slideDownIn20","slideUpIn20","firstTransitionRowAnimationStyle","lastTransitionRowAnimationStyle","slideUpOut20","slideDownOut20","disabledStyle","paddingBottom","borderCollapse","borderSpacing","tableLayout","FontSizes","Month","background","fadeIn200","neutralLighterAlt","span","borderTopLeftRadius","borderBottomLeftRadius","borderTop","borderBottom","CalendarDayBase","dayGrid","onHeaderSelect","showSixWeeksByDefault","monthAndYearId","headerIsClickable","monthAndYear","formatMonthYear","HeaderButtonComponentType","headerAriaLabel","yearPickerHeaderAriaLabel","header","onButtonKeyDown","CalendarDayNavigationButtons","navigationIcons","showCloseButton","onSelectNextMonth","onSelectPrevMonth","leftNavigationIcon","leftNavigation","rightNavigationIcon","rightNavigation","closeNavigationIcon","closeIcon","prevMonthInBounds","nextMonthInBounds","monthComponents","headerIconButton","prevMonthAriaLabel","nextMonthAriaLabel","closeButtonAriaLabel","callback","CalendarDay","normalize","hasHeaderClickCallback","highlightCurrent","highlightSelected","animationStyle","headerAnimationStyle","headerContainer","currentItemButton","navigationButtonsContainer","navigationButton","gridContainer","buttonRow","itemButton","themeLight","selected","CELL_COUNT","DefaultCalendarYearStrings","prevRangeAriaLabel","nextRangeAriaLabel","CalendarYearGridCell","highlightCurrentYear","highlightSelectedYear","year","onSelectYear","onRenderYear","buttonRef","CalendarYearNavDirection","CalendarYearGrid","fromYear","toYear","minYear","maxYear","selectedYear","selectedCellRef","currentCellRef","renderCell","yearToRender","Date","gridAriaLabel","cells","j","cellRow","CalendarYearNavArrow","onSelectPrev","onSelectNext","Previous","newRangeOffset","ariaLabelString","onNavigate","isLeftNavigation","Next","CalendarYearNav","CalendarYearTitle","rangeAriaLabel","headerAriaLabelFormatString","currentDateRange","NavigationDirection","CalendarYearHeader","onRenderTitle","CalendarYearBase","navigatedYear","rangeYear","Math","floor","previousFromYear","action","navigate","useYearRangeState","onNavNext","onNavPrevious","gridRef","CalendarYear","DEFAULT_PROPS","yearPickerHidden","CalendarMonthBase","propsWithoutDefaults","getPropsWithDefaults","navigatedMonthRef","calendarYearRef","focusOnUpdate","useFocusLogic","focusOnNextUpdate","isYearPickerVisible","setIsYearPickerVisible","currentYear","previousYear","today","highlightCurrentMonth","highlightSelectedMonth","selectMonthCallback","newMonth","onSelectMonth","onSelectNextYear","onSelectPrevYear","dateFormatter","isPrevYearInBounds","isNextYearInBounds","yearToString","yearFormattingDate","setFullYear","formatYear","yearRangeToString","yearRange","yearRangeToNextDecadeLabel","nextYearRangeAriaLabel","yearRangeToPrevDecadeLabel","prevYearRangeAriaLabel","getYearStrings","yearStrings","newNavigationDate","rowIndexes","yearString","monthPickerHeaderAriaLabel","prevYearAriaLabel","nextYearAriaLabel","rowNum","monthsForRow","month","monthIndex","indexedMonth","isNavigatedMonth","isSelectedMonth","isSelectedYear","isCurrentMonth","formatMonth","CalendarMonth","defaultWorkWeekDays","Monday","Tuesday","Wednesday","Thursday","Friday","isMonthPickerVisible","isDayPickerVisible","showMonthPickerAsOverlay","Sunday","showGoToToday","FirstDay","CalendarBase","forwardedRef","useControllableValue","setSelectedDate","navigatedDay","setNavigatedDay","navigatedMonth","setNavigatedMonth","lastSelectedDate","setLastSelectedDate","valueOf","selectedDateRangeArray","useDateState","onDateSelected","navigateDay","navigateMonth","getShowMonthPickerAsOverlay","setIsMonthPickerVisible","setIsDayPickerVisible","useVisibilityState","toggleDayMonthPickerVisibility","dayPicker","monthPicker","renderGoToTodayButton","goTodayEnabled","classes","goTodayButton","onGotoToday","goToToday","calendarDayProps","calendarMonthProps","monthPickerOnly","overlaidWithButton","overlayedWithButton","todayDateString","selectedDateString","todayDateFormatString","formatMonthDayYear","selectedDateFormatString","selectionAndTodayString","escape","pageUp","ctrlKey","pageDown","liveRegion","focusOnNavigatedDay","monthPickerWrapper","win","getWindow","innerWidth","Calendar","totalWidth","AnimationDirection","defaultCalendarStrings","defaultDayPickerStrings","defaultCalendarNavigationIcons","Callout","layerProps","ANIMATIONS","AnimationClassNames","slideUpIn10","slideDownIn10","slideLeftIn10","slideRightIn10","BEAK_ORIGIN_POSITION","OFF_SCREEN_STYLE","ARIA_ROLE_ATTRIBUTES","preventDismissOnLostFocus","preventDismissOnScroll","preventDismissOnResize","isBeakVisible","beakWidth","gapSpace","minPagePadding","bottomAutoEdge","disableCaching","usePositions","hostElement","calloutElement","targetRef","getBounds","positions","setPositions","positionAttempts","previousTarget","async","finalHeight","calloutMaxHeight","onPositioned","timerId_1","requestAnimationFrame","prevElementPositions","newElementPosition","currentProps","bounds","dupeCalloutElement","cloneNode","maxHeight","visibility","parentElement","appendChild","previousPositions","newPositions","removeChild","comparePositions","elementPosition","beakPosition","cancelAnimationFrame","CalloutContentBase","calloutWidth","calloutMaxWidth","calloutMinWidth","hideOverflow","onScroll","shouldRestoreFocus","onLayerMounted","setCalloutElement","calloutCallback","calloutEl","rootRef","targetWindow","targetWindowResized","setTargetWindowResized","cachedBounds","currentBounds","debounce","leading","useBounds","directionalHintFixed","setMaxHeight","topBounds","bottomBounds","useMaxHeight","dismissOnTargetClick","shouldDismissOnWindowFocus","preventDismissOnEvent","isMouseDownOnPopup","mouseDownHandlers","positionsExists","dismissOnScroll","dismissOnClickOrScroll","dismissOnResize","dismissOnLostFocus","isEventTargetOutsideCallout","dismissOnTargetWindowBlur","document","hasFocus","relatedTarget","disposablesPromise","Promise","resolve","disposables_1","documentElement","then","useDismissHandlers","mouseDownOnPopup","mouseUpOnPopup","isForcedInBounds","cssPositions","setInitialFocus","hasPositions","timerId_2","useAutoFocus","overflowYHidden","beakVisible","overflowStyle","overflowY","visibilityStyle","targetEdge","beak","getBeakPosition","beakCurtain","calloutMain","onRestoreFocus","previousProps","nextProps","shouldUpdateWhenHidden","beakPositionStyle","hideBeak","newElementPositions","hasOwnProperty","oldPositionEdge","newPositionEdge","toFixed","getBeakStyle","CalloutContent","ZIndexes","Layer","boxShadow","elevation16","borderWidth","focusClear","menuBackground","FocusTrapCallout","focusTrapProps","CheckBase","useFastIcons","IconComponent","circle","check","Check","CheckGlobalClassNames","checkHost","checkBoxHeight","isRTL","sharedCircleCheck","bodyBackground","IconFontSizes","CheckboxBase","required","inputProps","ariaPositionInSet","ariaSetSize","checkmarkIconProps","boxSide","mergedRootRefs","inputRef","defaultChecked","isChecked","setIsChecked","indeterminate","defaultIndeterminate","isIndeterminate","setIsIndeterminate","checkBoxRef","useComponentRef","reversed","isUsingCustomLabelRender","onRenderLabel","defaultLabelRenderer","checkboxProps","ariaChecked","mergedInputProps","input","htmlFor","checkbox","checkmark","MS_CHECKBOX_LABEL_SIZE","MS_CHECKBOX_TRANSITION_DURATION","MS_CHECKBOX_TRANSITION_TIMING","Checkbox","_q","_r","_s","_t","checkmarkFontColor","inputForegroundChecked","checkmarkFontColorHovered","checkboxBorderColor","checkboxBorderIndeterminateColor","inputBackgroundChecked","checkboxBorderColorChecked","checkboxBorderColorDisabled","checkboxBorderHoveredColor","inputBorderHovered","checkboxBorderIndeterminateHoveredColor","inputBackgroundCheckedHovered","checkboxBackgroundChecked","checkboxBackgroundCheckedHovered","checkboxBorderColorCheckedHovered","checkboxHoveredTextColor","inputTextHovered","checkboxBackgroundDisabledChecked","checkboxTextColor","checkboxTextColorDisabled","indeterminateDotStyles","transitionProperty","transitionDuration","transitionTimingFunction","imageSize","ChoiceGroupOptionBase","itemKey","focused","imageSrc","hasIcon","hasImage","imageIsLarge","defaultOnRenderLabel","labelId","defaultOnRenderField","imageAlt","selectedImageSrc","composeRenderFunction","field","innerField","imageWrapper","Image","src","alt","selectedImageWrapper","iconWrapper","labelWrapper","onRenderField","choiceFieldWrapper","evt","onFocus","onBlur","choiceFieldTransitionDuration","choiceFieldTransitionTiming","getChoiceGroupFocusStyle","focusBorderColor","hasIconOrImage","getImageWrapperStyle","isSelectedImageWrapper","ChoiceGroupOption","circleBorderColor","circleHoveredBorderColor","circleCheckedBorderColor","circleCheckedHoveredBorderColor","circleDisabledBorderColor","circleBackgroundColor","dotUncheckedHoveredColor","dotCheckedColor","dotCheckedHoveredColor","dotDisabledColor","labelHoverFocusColor","focusBorder","iconOrImageChoiceBorderUncheckedHoveredColor","iconOrImageChoiceBorderCheckedColor","iconOrImageChoiceBorderCheckedHoveredColor","iconOrImageChoiceBackgroundColor","fieldHoverOrFocusProperties","enabledFieldWithImageHoverOrFocusProperties","circleAreaProperties","dotAreaProperties","choiceFieldSize","radioButtonSpacing","paddingTop","disabledBodyText","labelWrapperLineHeight","getOptionId","option","findOption","options","focusSelectedOption","keyChecked","optionToFocus","elementToFocus","getElementById","setFocusVisibility","ChoiceGroupBase","defaultSelectedKey","divProps","optionsContainIconOrImage","selectedKey","setKeyChecked","keyFocused","setKeyFocused","useMergedRefs","checkedOption","useFocusRects","onOptionChange","onRadioFocus","elementContains","currentTarget","focusFromSibling","Label","ChoiceGroup","main","overFlowYHidden","SLIDE_ANIMATIONS","offsetFromTarget","usePositionState","positionedHost","contentHost","getCachedBounds","useAsync","updateAsyncPosition","updatePosition","positioningContainerElement","getBoundingClientRect","body","contains","newPosition","oldPositions","arePositionsEqual","useHeightOffset","heightOffset","setHeightOffset","setHeightOffsetTimer","setHeightOffsetEveryFrame","positioningContainerMainElem","lastChild","cardScrollHeight","scrollHeight","cardCurrHeight","offsetHeight","PositioningContainer","useTarget","positioningBounds","innerHeight","useCachedBounds","getCachedMaxHeight","BORDER_WIDTH","didSetInitialFocus","useSetInitialFocus","onResize","clickedOutsideCallout","events","EventGroup","throttle","useAutoDismissEvents","positioningContainerWidth","positioningContainerMaxHeight","directionalClassName","getContentMaxHeight","contentMaxHeight","COACHMARK_WIDTH","translateOne","animationTimingFunction","scaleOne","rotateOne","fill","BEAK_HEIGHT","BEAK_WIDTH","Beak","svgHeight","svgWidth","pointOne","pointTwo","pointThree","points","COACHMARK_ATTRIBUTE_NAME","isCollapsed","mouseProximityOffset","delayBeforeMouseOpen","delayBeforeCoachmarkAnimation","isPositionForced","positioningContainerProps","CoachmarkBase","entityInnerHostElementRef","translateAnimationContainer","targetAlignment","setTargetAlignment","targetPosition","setTargetPosition","alignmentEdge","usePositionedData","propsIsCollapsed","onAnimationOpenStart","onAnimationOpenEnd","setIsCollapsed","useSetTimeout","hasCoachmarkBeenOpened","openCoachmark","addEventListener","useCollapsedState","transformOriginX","transformOriginY","beakDirection","distanceAdjustment","useBeakPosition","beakPositioningProps","transformOrigin","isMeasuring","setIsMeasuring","entityInnerHostRect","setEntityInnerHostRect","offsetWidth","useEntityHostMeasurements","alertText","ariaAlertText","setAlertText","useAriaAlert","entityHost","preventFocusOnMount","getDocument","useOnEvent","e","c","clickTarget","useListeners","dismiss","targetElementRect","setTargetElementRect","timeoutIds","window","mouseY","clientY","mouseX","clientX","isInsideElement","onMouseMove","useProximityHandlers","ariaDescribedByText","ariaLabelledByText","persistentBeak","defaultColor","entityHostHeight","entityHostWidth","COACHMARK_HEIGHT","P","ariaContainer","scaleAnimationLayer","rotateAnimationLayer","FocusTrapZone","isClickableOutsideFocusTrap","forceFocusInsideTrap","entityInnerHost","childrenContainer","topAutoEdge","Infinity","Coachmark","ContinuousPulse","continuousPulseAnimationDouble","ContinuousPulseAnimation","createDefaultAnimation","animationDelay","animationFillMode","transition"],"sourceRoot":""}