{"version":3,"file":"static/js/vendor.fluentui.react~a73f8f48.2e416d69.js","mappings":"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","sources":["../../../../node_modules/.pnpm/@fluentui+react@8.48.0_@types+react-dom@17.0.22_@types+react@17.0.69_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_@types+react-dom@17.0.22_@types+react@17.0.69_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_@types+react-dom@17.0.22_@types+react@17.0.69_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_@types+react-dom@17.0.22_@types+react@17.0.69_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_@types+react-dom@17.0.22_@types+react@17.0.69_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_@types+react-dom@17.0.22_@types+react@17.0.69_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_@types+react-dom@17.0.22_@types+react@17.0.69_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_@types+react-dom@17.0.22_@types+react@17.0.69_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_@types+react-dom@17.0.22_@types+react@17.0.69_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_@types+react-dom@17.0.22_@types+react@17.0.69_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_@types+react-dom@17.0.22_@types+react@17.0.69_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_@types+react-dom@17.0.22_@types+react@17.0.69_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_@types+react-dom@17.0.22_@types+react@17.0.69_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_@types+react-dom@17.0.22_@types+react@17.0.69_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_@types+react-dom@17.0.22_@types+react@17.0.69_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_@types+react-dom@17.0.22_@types+react@17.0.69_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_@types+react-dom@17.0.22_@types+react@17.0.69_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_@types+react-dom@17.0.22_@types+react@17.0.69_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_@types+react-dom@17.0.22_@types+react@17.0.69_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_@types+react-dom@17.0.22_@types+react@17.0.69_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_@types+react-dom@17.0.22_@types+react@17.0.69_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_@types+react-dom@17.0.22_@types+react@17.0.69_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_@types+react-dom@17.0.22_@types+react@17.0.69_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_@types+react-dom@17.0.22_@types+react@17.0.69_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_@types+react-dom@17.0.22_@types+react@17.0.69_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_@types+react-dom@17.0.22_@types+react@17.0.69_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_@types+react-dom@17.0.22_@types+react@17.0.69_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_@types+react-dom@17.0.22_@types+react@17.0.69_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_@types+react-dom@17.0.22_@types+react@17.0.69_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_@types+react-dom@17.0.22_@types+react@17.0.69_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_@types+react-dom@17.0.22_@types+react@17.0.69_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_@types+react-dom@17.0.22_@types+react@17.0.69_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_@types+react-dom@17.0.22_@types+react@17.0.69_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_@types+react-dom@17.0.22_@types+react@17.0.69_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_@types+react-dom@17.0.22_@types+react@17.0.69_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_@types+react-dom@17.0.22_@types+react@17.0.69_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_@types+react-dom@17.0.22_@types+react@17.0.69_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_@types+react-dom@17.0.22_@types+react@17.0.69_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_@types+react-dom@17.0.22_@types+react@17.0.69_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_@types+react-dom@17.0.22_@types+react@17.0.69_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_@types+react-dom@17.0.22_@types+react@17.0.69_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_@types+react-dom@17.0.22_@types+react@17.0.69_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_@types+react-dom@17.0.22_@types+react@17.0.69_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_@types+react-dom@17.0.22_@types+react@17.0.69_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_@types+react-dom@17.0.22_@types+react@17.0.69_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_@types+react-dom@17.0.22_@types+react@17.0.69_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_@types+react-dom@17.0.22_@types+react@17.0.69_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_@types+react-dom@17.0.22_@types+react@17.0.69_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_@types+react-dom@17.0.22_@types+react@17.0.69_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_@types+react-dom@17.0.22_@types+react@17.0.69_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_@types+react-dom@17.0.22_@types+react@17.0.69_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_@types+react-dom@17.0.22_@types+react@17.0.69_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_@types+react-dom@17.0.22_@types+react@17.0.69_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_@types+react-dom@17.0.22_@types+react@17.0.69_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_@types+react-dom@17.0.22_@types+react@17.0.69_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_@types+react-dom@17.0.22_@types+react@17.0.69_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_@types+react-dom@17.0.22_@types+react@17.0.69_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_@types+react-dom@17.0.22_@types+react@17.0.69_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_@types+react-dom@17.0.22_@types+react@17.0.69_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_@types+react-dom@17.0.22_@types+react@17.0.69_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_@types+react-dom@17.0.22_@types+react@17.0.69_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_@types+react-dom@17.0.22_@types+react@17.0.69_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_@types+react-dom@17.0.22_@types+react@17.0.69_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_@types+react-dom@17.0.22_@types+react@17.0.69_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_@types+react-dom@17.0.22_@types+react@17.0.69_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_@types+react-dom@17.0.22_@types+react@17.0.69_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_@types+react-dom@17.0.22_@types+react@17.0.69_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_@types+react-dom@17.0.22_@types+react@17.0.69_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_@types+react-dom@17.0.22_@types+react@17.0.69_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_@types+react-dom@17.0.22_@types+react@17.0.69_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_@types+react-dom@17.0.22_@types+react@17.0.69_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_@types+react-dom@17.0.22_@types+react@17.0.69_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_@types+react-dom@17.0.22_@types+react@17.0.69_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_@types+react-dom@17.0.22_@types+react@17.0.69_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_@types+react-dom@17.0.22_@types+react@17.0.69_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_@types+react-dom@17.0.22_@types+react@17.0.69_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_@types+react-dom@17.0.22_@types+react@17.0.69_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 { __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 { 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 { 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 { __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, __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 * 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 } 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","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","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","nullFunction","nonActionableItemProps","semanticColors","bodyText","BreadcrumbBase","_focusZone","_onReduceData","data","renderedItems","renderedOverflowItems","overflowIndex","movedItem","splice","_onGrowData","maxDisplayedItems","pop","_onRenderBreadcrumb","ariaLabel","dividerAs","DividerType","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","overflowButton","menuProps","items","directionalHint","bottomLeftEdge","componentRef","direction","horizontal","focusZoneProps","list","isCurrentItem","additionalProps","itemLink","content","overflowMode","Parent","tooltipHostProps","Tag","_validateProps","onReduceData","onGrowData","breadcrumbData","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","compoundButtonStyles","maxWidth","minHeight","flexDirection","standardCompoundTheme","primaryCompoundTheme","CompoundButton","defaultButtonStyles","DefaultButton","iconButtonStyles","link","IconButton","outlineOffset","MessageBarButton","PrimaryButton","splitButtonMenuFocused","splitButtonContainerChecked","splitButtonContainerCheckedHovered","splitButtonContainerHovered","splitButtonContainerFocused","splitButtonContainerDisabled","splitButtonFlexContainer","borderRight","borderRightWidth","borderLeftWidth","neutralSecondaryAlt","borderLeft","verticalAlign","marginLeft","marginRight","marginBottom","pointerEvents","ElementType","ButtonType","buttonType","command","compound","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","classNamesFunction","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","FocusZone","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","Icon","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","getOptionId","option","findOption","options","focusSelectedOption","keyChecked","optionToFocus","elementToFocus","getElementById","ChoiceGroupBase","defaultSelectedKey","labelId","divProps","optionsContainIconOrImage","imageSrc","selectedKey","setKeyChecked","keyFocused","setKeyFocused","checkedOption","onFocus","itemKey","onBlur","onOptionChange","evt","onRadioFocus","currentTarget","focusFromSibling","focused","ChoiceGroup","imageSize","ChoiceGroupOptionBase","hasIcon","hasImage","imageIsLarge","defaultOnRenderLabel","defaultOnRenderField","imageAlt","selectedImageSrc","composeRenderFunction","field","innerField","imageWrapper","Image","src","alt","selectedImageWrapper","iconWrapper","labelWrapper","onRenderField","choiceFieldWrapper","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","main","overFlowYHidden","SLIDE_ANIMATIONS","offsetFromTarget","DirectionalHint","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","useMergedRefs","useTarget","positioningBounds","innerHeight","useCachedBounds","getCachedMaxHeight","BORDER_WIDTH","didSetInitialFocus","useSetInitialFocus","onResize","clickedOutsideCallout","elementContains","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":""}