{"version":3,"sources":["../node_modules/office-ui-fabric-react/lib/components/Checkbox/Checkbox.base.js","../node_modules/office-ui-fabric-react/lib/components/Checkbox/Checkbox.js","../node_modules/office-ui-fabric-react/lib/components/Checkbox/Checkbox.styles.js","../node_modules/office-ui-fabric-react/lib/components/Dropdown/Dropdown.styles.js","../node_modules/office-ui-fabric-react/lib/components/Dropdown/utilities/DropdownSizePosCache.js","../node_modules/office-ui-fabric-react/lib/components/Dropdown/Dropdown.base.js","../node_modules/office-ui-fabric-react/lib/components/Dropdown/Dropdown.js"],"names":["getClassNames","Object","classNamesFunction","Checkbox_base_CheckboxBase","_super","CheckboxBase","props","context","_this","call","this","_checkBox","react","_onFocus","ev","inputProps","onFocus","_onBlur","onBlur","_onChange","_a","disabled","onChange","isChecked","state","undefined","checked","setState","_onRenderLabel","label","className","_classNames","text","_warnMutuallyExclusive","_id","id","object","defaultChecked","tslib_es6","prototype","componentWillReceiveProps","newProps","render","name","boxSide","theme","ariaLabel","ariaLabelledBy","ariaDescribedBy","styles","_b","onRenderLabel","checkmarkIconProps","ariaPositionInSet","ariaSetSize","keytipProps","title","isReversed","reversed","isUsingCustomLabelRender","KeytipData","keytipAttributes","root","type","data-ktp-execute-target","input","ref","aria-disabled","aria-label","aria-labelledby","aria-describedby","aria","aria-posinset","aria-setsize","htmlFor","checkbox","data-ktp-target","Icon","iconName","checkmark","defineProperty","get","enumerable","configurable","focus","current","defaultProps","BaseComponent","__webpack_require__","d","__webpack_exports__","Checkbox","styled","_c","_d","_e","_f","_g","_h","_j","semanticColors","checkmarkFontColor","inputForegroundChecked","checkmarkFontColorCheckedDisabled","disabledBackground","checkmarkFontColorHovered","inputBorder","checkboxBorderColor","smallInputBorder","checkboxBorderColorChecked","inputBackgroundChecked","checkboxBorderColorDisabled","disabledBodySubtext","checkboxBorderHoveredColor","inputBorderHovered","checkboxBackgroundChecked","checkboxBackgroundCheckedHovered","inputBackgroundCheckedHovered","checkboxBorderColorCheckedHovered","checkboxHoveredTextColor","bodyText","checkboxBackgroundDisabledChecked","checkboxTextColor","checkboxTextColorDisabled","disabledText","position","display","selectors",":hover .ms-Checkbox-checkbox","borderColor","lib",":focus .ms-Checkbox-checkbox",":hover .ms-Checkbox-checkmark","color","opacity","background",":focus:hover .ms-Checkbox-checkbox",":focus:hover .ms-Checkbox-checkmark",":hover .ms-Checkbox-text",":focus .ms-Checkbox-text","initializeFocusRects","outline","palette","neutralSecondary","outlineOffset","fonts","medium","alignItems","cursor","userSelect","textAlign","flexDirection","justifyContent","&::before","left","right","top","bottom","content","pointerEvents","flexShrink","height","width","borderWidth","borderStyle","boxSizing","transitionProperty","transitionDuration","transitionTimingFunction","overflow","marginLeft","marginRight","MsHighContrastAdjust","fontSize","lineHeight","scope","Dropdown_styles_a","Dropdown_styles_b","DropdownSizePosCache_DropdownSizePosCache","DropdownSizePosCache","_size","updateOptions","options","displayOnlyOptionsCache","size","i","length","itemType","SelectableOption_types","Divider","Header","push","_displayOnlyOptionsCache","positionInSet","index","offset","Error","Dropdown_base_DropdownBase","DropdownBase","selectedIndices","_host","_focusZone","_dropDown","_scrollIdleDelay","_sizePosCache","_onRenderTitle","item","multiSelectDelimiter","displayTxt","map","join","_onRenderPlaceholder","_placeholder","_onRenderContainer","responsiveMode","calloutProps","panelProps","dropdownWidth","isSmall","withResponsiveMode","panelStyles","subComponentStyles","panel","Panel","isOpen","isLightDismiss","onDismissed","_onDismiss","hasCloseButton","_renderFocusableList","Callout","isBeakVisible","gapSpace","doNotLayer","directionalHintFixed","directionalHint","DirectionalHint","bottomLeftEdge","callout","target","onDismiss","onScroll","_onScroll","onPositioned","_onPositioned","calloutWidth","clientWidth","_onRenderCaretDown","caretDown","_onRenderList","onRenderItem","_onRenderItem","_renderSeparator","_renderHeader","_renderOption","onRenderOption","_onRenderOption","isItemSelected","indexOf","itemClassName","dropdownItemSelectedAndDisabled","dropdownItemSelected","dropdownItemDisabled","dropdownItem","multiSelect","key","data-index","data-is-focusable","_onItemClick","onMouseEnter","_onItemMouseEnter","bind","onMouseLeave","_onMouseItemLeave","onMouseMove","_onItemMouseMove","role","aria-selected","CommandButton","onClick","dropdownOptionText","positions","_async","requestAnimationFrame","element","dom","querySelector","focusElement","calloutRenderEdge","targetEdge","event","setSelectedIndex","_isScrollIdle","_scrollIdleTimeoutId","clearTimeout","setTimeout","_shouldIgnoreMouseEvent","setActive","e","_onDropdownBlur","_isDisabled","hasFocus","_onDropdownKeyDown","_lastKeyDownWasAltOrMeta","_isAltOrMeta","onKeyDown","defaultPrevented","newIndex","selectedIndex","containsExpandCollapseModifier","altKey","metaKey","which","KeyCodes","enter","escape","up","_moveIndex","down","stopPropagation","preventDefault","home","end","space","_onDropdownKeyUp","shouldHandleKey","_shouldHandleKeyUp","onKeyUp","_onZoneKeyDown","elementToFocus","lib_focus","lastChild","pageUp","pageDown","firstChild","tab","_onZoneKeyUp","_onDropdownClick","isDisabled","_warnDeprecations","onChanged","placeHolder","defaultSelectedKey","defaultSelectedKeys","selectedKeys","selectedKey","_getSelectedIndexes","selectedKeyProp","didOptionsChange","componentDidUpdate","prevProps","prevState","_gotMouseMove","required","errorMessage","propStyles","onRenderTitle","onRenderContainer","onRenderPlaceHolder","onRenderCaretDown","selectedOptions","_getAllSelectedOptions","divProps","properties","optionId","ariaAttrs","ariaActiveDescendant","childRole","ariaPosInSet","ariaSelected","optionSetSize","hasError","Boolean","isRenderingPlaceholder","panelClassName","calloutClassName","labelStyles","Label","tabIndex","aria-expanded","aria-activedescendant","aria-required","aria-owns","dropdown","aria-atomic","aria-live","caretDownWrapper","shouldOpenOnFocus","notifyOnReselect","Math","max","min","newIndexes","_copyArray","splice","selected","placeholder","array","newArray","_i","array_1","stepValue","stepCounter","onRenderList","dropdownItemsWrapper","FocusZone","direction","FocusZone_types","vertical","dropdownItems","dropdownDivider","dropdownItemHeader","currentTarget","targetElement","document","activeElement","_getAllSelectedIndices","_getSelectedIndex","Array","isArray","selectedKey_1","selectedIndices_1","option","filter","isSelected","alt","keyPressIsAltOrMetaAlone","osDetector","mobileDetector","GlobalClassNames","titleIsPlaceHolder","titleHasError","highContrastAdjustMixin","@media screen and (-ms-high-contrast: active), screen and (-ms-high-contrast: black-on-white)","highContrastItemAndTitleStateMixin","backgroundColor",":hover","highContrastBorderState","Dropdown","globalClassnames","rootHoverFocusActiveSelectorNeutralDarkMixin","neutralDark","rootHoverFocusActiveSelectorBodySubtextMixin","bodySubtext","borderColorError","errorText","dropdownItemStyle","padding","minHeight","border","wordWrap","overflowWrap","concat","neutralQuaternaryAlt","black","neutralPrimary","themePrimary","themeDark","inputBackground","DROPDOWN_HEIGHT","whiteSpace","textOverflow","inputPlaceholderText","small","paddingTop","boxShadow","neutralLight","&:focus","listItemBackgroundHovered","listHeaderBackgroundHovered","bodyDivider","minWidth","maxWidth","margin","fontWeight","semibold","menuHeader","main","contentInner"],"mappings":"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","file":"static/js/1.82a2dbc3.chunk.js","sourcesContent":["import * as tslib_1 from \"tslib\";\nimport * as React from 'react';\nimport { BaseComponent, getId, classNamesFunction, mergeAriaAttributeValues } from '../../Utilities';\nimport { Icon } from '../../Icon';\nimport { KeytipData } from '../../KeytipData';\nvar getClassNames = classNamesFunction();\n\nvar CheckboxBase =\n/** @class */\nfunction (_super) {\n tslib_1.__extends(CheckboxBase, _super);\n /**\r\n * Initialize a new instance of the Checkbox\r\n * @param props - Props for the component\r\n * @param context - Context or initial state for the base component.\r\n */\n\n\n function CheckboxBase(props, context) {\n var _this = _super.call(this, props, context) || this;\n\n _this._checkBox = React.createRef();\n\n _this._onFocus = function (ev) {\n var inputProps = _this.props.inputProps;\n\n if (inputProps && inputProps.onFocus) {\n inputProps.onFocus(ev);\n }\n };\n\n _this._onBlur = function (ev) {\n var inputProps = _this.props.inputProps;\n\n if (inputProps && inputProps.onBlur) {\n inputProps.onBlur(ev);\n }\n };\n\n _this._onChange = function (ev) {\n var _a = _this.props,\n disabled = _a.disabled,\n onChange = _a.onChange;\n var isChecked = _this.state.isChecked;\n\n if (!disabled) {\n if (onChange) {\n onChange(ev, !isChecked);\n }\n\n if (_this.props.checked === undefined) {\n _this.setState({\n isChecked: !isChecked\n });\n }\n }\n };\n\n _this._onRenderLabel = function (props) {\n var label = props.label;\n return label ? React.createElement(\"span\", {\n className: _this._classNames.text\n }, label) : null;\n };\n\n _this._warnMutuallyExclusive({\n checked: 'defaultChecked'\n });\n\n _this._id = _this.props.id || getId('checkbox-');\n _this.state = {\n isChecked: !!(props.checked !== undefined ? props.checked : props.defaultChecked)\n };\n return _this;\n }\n\n CheckboxBase.prototype.componentWillReceiveProps = function (newProps) {\n if (newProps.checked !== undefined) {\n this.setState({\n isChecked: !!newProps.checked // convert null to false\n\n });\n }\n };\n /**\r\n * Render the Checkbox based on passed props\r\n */\n\n\n CheckboxBase.prototype.render = function () {\n var _this = this;\n\n var _a = this.props,\n checked = _a.checked,\n className = _a.className,\n defaultChecked = _a.defaultChecked,\n disabled = _a.disabled,\n inputProps = _a.inputProps,\n name = _a.name,\n boxSide = _a.boxSide,\n theme = _a.theme,\n ariaLabel = _a.ariaLabel,\n ariaLabelledBy = _a.ariaLabelledBy,\n ariaDescribedBy = _a.ariaDescribedBy,\n styles = _a.styles,\n _b = _a.onRenderLabel,\n onRenderLabel = _b === void 0 ? this._onRenderLabel : _b,\n checkmarkIconProps = _a.checkmarkIconProps,\n ariaPositionInSet = _a.ariaPositionInSet,\n ariaSetSize = _a.ariaSetSize,\n keytipProps = _a.keytipProps,\n title = _a.title;\n var isChecked = checked === undefined ? this.state.isChecked : checked;\n var isReversed = boxSide !== 'start' ? true : false;\n this._classNames = getClassNames(styles, {\n theme: theme,\n className: className,\n disabled: disabled,\n checked: isChecked,\n reversed: isReversed,\n isUsingCustomLabelRender: onRenderLabel !== this._onRenderLabel\n });\n return React.createElement(KeytipData, {\n keytipProps: keytipProps,\n disabled: disabled\n }, function (keytipAttributes) {\n return React.createElement(\"div\", {\n className: _this._classNames.root\n }, React.createElement(\"input\", tslib_1.__assign({\n type: \"checkbox\"\n }, inputProps, {\n \"data-ktp-execute-target\": keytipAttributes['data-ktp-execute-target']\n }, checked !== undefined && {\n checked: checked\n }, defaultChecked !== undefined && {\n defaultChecked: defaultChecked\n }, {\n disabled: disabled,\n className: _this._classNames.input,\n ref: _this._checkBox,\n name: name,\n id: _this._id,\n title: title,\n onChange: _this._onChange,\n onFocus: _this._onFocus,\n onBlur: _this._onBlur,\n \"aria-disabled\": disabled,\n \"aria-label\": ariaLabel,\n \"aria-labelledby\": ariaLabelledBy,\n \"aria-describedby\": mergeAriaAttributeValues(ariaDescribedBy, keytipAttributes['aria-describedby']),\n \"aria-posinset\": ariaPositionInSet,\n \"aria-setsize\": ariaSetSize\n })), React.createElement(\"label\", {\n className: _this._classNames.label,\n htmlFor: _this._id\n }, React.createElement(\"div\", {\n className: _this._classNames.checkbox,\n \"data-ktp-target\": keytipAttributes['data-ktp-target']\n }, React.createElement(Icon, tslib_1.__assign({\n iconName: \"CheckMark\"\n }, checkmarkIconProps, {\n className: _this._classNames.checkmark\n }))), onRenderLabel(_this.props, _this._onRenderLabel)));\n });\n };\n\n Object.defineProperty(CheckboxBase.prototype, \"checked\", {\n get: function get() {\n return this.state.isChecked;\n },\n enumerable: true,\n configurable: true\n });\n\n CheckboxBase.prototype.focus = function () {\n if (this._checkBox.current) {\n this._checkBox.current.focus();\n }\n };\n\n CheckboxBase.defaultProps = {\n boxSide: 'start'\n };\n return CheckboxBase;\n}(BaseComponent);\n\nexport { CheckboxBase };","import { styled } from '../../Utilities';\nimport { CheckboxBase } from './Checkbox.base';\nimport { getStyles } from './Checkbox.styles';\nexport var Checkbox = styled(CheckboxBase, getStyles, undefined, {\n scope: 'Checkbox'\n});","import { FontSizes, HighContrastSelector } from '../../Styling';\nimport { IsFocusVisibleClassName } from '../../Utilities';\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 getStyles(props) {\n var className = props.className,\n theme = props.theme,\n reversed = props.reversed,\n checked = props.checked,\n disabled = props.disabled,\n isUsingCustomLabelRender = props.isUsingCustomLabelRender;\n var semanticColors = theme.semanticColors;\n var checkmarkFontColor = semanticColors.inputForegroundChecked;\n var checkmarkFontColorCheckedDisabled = semanticColors.disabledBackground;\n var checkmarkFontColorHovered = semanticColors.inputBorder;\n var checkboxBorderColor = semanticColors.smallInputBorder;\n var checkboxBorderColorChecked = semanticColors.inputBackgroundChecked;\n var checkboxBorderColorDisabled = semanticColors.disabledBodySubtext;\n var checkboxBorderHoveredColor = semanticColors.inputBorderHovered;\n var checkboxBackgroundChecked = semanticColors.inputBackgroundChecked;\n var checkboxBackgroundCheckedHovered = semanticColors.inputBackgroundCheckedHovered;\n var checkboxBorderColorCheckedHovered = semanticColors.inputBackgroundCheckedHovered;\n var checkboxHoveredTextColor = semanticColors.bodyText;\n var checkboxBackgroundDisabledChecked = semanticColors.disabledBodySubtext;\n var checkboxTextColor = semanticColors.bodyText;\n var checkboxTextColorDisabled = semanticColors.disabledText;\n return {\n root: ['ms-Checkbox', {\n position: 'relative',\n display: 'flex'\n }, reversed && 'reversed', checked && 'is-checked', !disabled && 'is-enabled', disabled && 'is-disabled', !disabled && [!checked && {\n selectors: {\n ':hover .ms-Checkbox-checkbox': {\n borderColor: checkboxBorderHoveredColor,\n selectors: (_a = {}, _a[HighContrastSelector] = {\n borderColor: 'Highlight'\n }, _a)\n },\n ':focus .ms-Checkbox-checkbox': {\n borderColor: checkboxBorderHoveredColor\n },\n ':hover .ms-Checkbox-checkmark': {\n color: checkmarkFontColorHovered,\n opacity: '1',\n selectors: (_b = {}, _b[HighContrastSelector] = {\n color: 'Highlight'\n }, _b)\n }\n }\n }, checked && {\n selectors: (_c = {\n ':hover .ms-Checkbox-checkbox': {\n background: checkboxBackgroundCheckedHovered,\n borderColor: checkboxBorderColorCheckedHovered\n },\n ':focus .ms-Checkbox-checkbox': {\n background: checkboxBackgroundCheckedHovered,\n borderColor: checkboxBorderColorCheckedHovered\n }\n }, _c[HighContrastSelector] = {\n selectors: {\n ':hover .ms-Checkbox-checkbox': {\n background: 'Window',\n borderColor: 'Highlight'\n },\n ':focus .ms-Checkbox-checkbox': {\n background: 'Highlight'\n },\n ':focus:hover .ms-Checkbox-checkbox': {\n background: 'Highlight'\n },\n ':focus:hover .ms-Checkbox-checkmark': {\n color: 'Window'\n },\n ':hover .ms-Checkbox-checkmark': {\n color: 'Highlight'\n }\n }\n }, _c)\n }, {\n selectors: {\n ':hover .ms-Checkbox-text': {\n color: checkboxHoveredTextColor\n },\n ':focus .ms-Checkbox-text': {\n color: checkboxHoveredTextColor\n }\n }\n }], className],\n input: [{\n position: 'absolute',\n background: 'none',\n opacity: 0,\n selectors: (_d = {}, _d[\".\" + IsFocusVisibleClassName + \" &:focus + label::before\"] = {\n outline: '1px solid ' + theme.palette.neutralSecondary,\n outlineOffset: '2px',\n selectors: (_e = {}, _e[HighContrastSelector] = {\n outline: '1px solid ActiveBorder'\n }, _e)\n }, _d)\n }],\n label: ['ms-Checkbox-label', theme.fonts.medium, {\n display: 'flex',\n alignItems: isUsingCustomLabelRender ? 'center' : 'flex-start',\n cursor: disabled ? 'default' : 'pointer',\n position: 'relative',\n userSelect: 'none',\n textAlign: 'left'\n }, reversed && {\n flexDirection: 'row-reverse',\n justifyContent: 'flex-end'\n }, {\n selectors: {\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: ['ms-Checkbox-checkbox', {\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 borderWidth: '1px',\n borderStyle: 'solid',\n borderColor: checkboxBorderColor,\n boxSizing: 'border-box',\n transitionProperty: 'background, border, border-color',\n transitionDuration: MS_CHECKBOX_TRANSITION_DURATION,\n transitionTimingFunction: MS_CHECKBOX_TRANSITION_TIMING,\n\n /* in case the icon is bigger than the box */\n overflow: 'hidden'\n }, !reversed ? // this margin on the checkbox is for backwards compat.\n // notably it has the effect where a customRender is used, there will be only a 4px margin from checkbox to label.\n // the label by default would have another 4px margin for a total of 8px margin between checkbox and label.\n // we don't combine the two (and move it into the text) to not incur a breaking change for everyone using custom render atm.\n {\n marginRight: 4\n } : {\n marginLeft: 4\n }, !disabled && checked && {\n background: checkboxBackgroundChecked,\n borderColor: checkboxBorderColorChecked,\n selectors: (_f = {}, _f[HighContrastSelector] = {\n background: 'Highlight',\n borderColor: 'Highlight'\n }, _f)\n }, disabled && {\n borderColor: checkboxBorderColorDisabled,\n selectors: (_g = {}, _g[HighContrastSelector] = {\n borderColor: 'InactiveBorder'\n }, _g)\n }, checked && disabled && {\n background: checkboxBackgroundDisabledChecked,\n borderColor: checkboxBorderColorDisabled\n }],\n checkmark: ['ms-Checkbox-checkmark', {\n opacity: checked ? '1' : '0',\n color: checked && disabled ? checkmarkFontColorCheckedDisabled : checkmarkFontColor,\n selectors: (_h = {}, _h[HighContrastSelector] = {\n color: disabled ? 'InactiveBorder' : 'Window',\n MsHighContrastAdjust: 'none'\n }, _h)\n }],\n text: ['ms-Checkbox-text', {\n color: disabled ? checkboxTextColorDisabled : checkboxTextColor,\n fontSize: FontSizes.medium,\n lineHeight: '20px'\n }, !reversed ? {\n marginLeft: 4\n } : {\n marginRight: 4\n }, disabled && {\n selectors: (_j = {}, _j[HighContrastSelector] = {\n // backwards compat for the color of the text when the checkbox was rendered\n // using a Button.\n color: 'InactiveBorder'\n }, _j)\n }]\n };\n\n var _a, _b, _c, _d, _e, _f, _g, _h, _j;\n};","import * as tslib_1 from \"tslib\";\nimport { FontSizes, FontWeights, HighContrastSelector, getGlobalClassNames, normalize } from '../../Styling';\nvar GlobalClassNames = {\n root: 'ms-Dropdown-container',\n label: 'ms-Dropdown-label',\n dropdown: 'ms-Dropdown',\n title: 'ms-Dropdown-title',\n caretDownWrapper: 'ms-Dropdown-caretDownWrapper',\n caretDown: 'ms-Dropdown-caretDown',\n callout: 'ms-Dropdown-callout',\n panel: 'ms-Dropdown-panel',\n dropdownItems: 'ms-Dropdown-items',\n dropdownItem: 'ms-Dropdown-item',\n dropdownDivider: 'ms-Dropdown-divider',\n dropdownOptionText: 'ms-Dropdown-optionText',\n dropdownItemHeader: 'ms-Dropdown-header',\n titleIsPlaceHolder: 'ms-Dropdown-titleIsPlaceHolder',\n titleHasError: 'ms-Dropdown-title--hasError'\n};\nvar DROPDOWN_HEIGHT = 32;\nvar DROPDOWN_ITEM_HEIGHT = 32;\nvar highContrastAdjustMixin = {\n // highContrastAdjust mixin\n '@media screen and (-ms-high-contrast: active), screen and (-ms-high-contrast: black-on-white)': {\n MsHighContrastAdjust: 'none'\n }\n};\nvar highContrastItemAndTitleStateMixin = {\n selectors: tslib_1.__assign((_a = {}, _a[HighContrastSelector] = {\n backgroundColor: 'Highlight',\n borderColor: 'Highlight',\n color: 'HighlightText',\n selectors: {\n ':hover': {\n color: 'HighlightText' // overrides the hover styling for buttons that are also selected\n\n }\n }\n }, _a), highContrastAdjustMixin)\n};\nvar highContrastBorderState = {\n selectors: (_b = {}, _b[HighContrastSelector] = {\n borderColor: 'Highlight'\n }, _b)\n};\nexport var getStyles = function getStyles(props) {\n var theme = props.theme,\n hasError = props.hasError,\n className = props.className,\n isOpen = props.isOpen,\n disabled = props.disabled,\n required = props.required,\n isRenderingPlaceholder = props.isRenderingPlaceholder,\n panelClassName = props.panelClassName,\n calloutClassName = props.calloutClassName;\n\n if (!theme) {\n throw new Error('theme is undefined or null in base Dropdown getStyles function.');\n }\n\n var globalClassnames = getGlobalClassNames(GlobalClassNames, theme);\n var palette = theme.palette,\n semanticColors = theme.semanticColors;\n var rootHoverFocusActiveSelectorNeutralDarkMixin = {\n color: palette.neutralDark\n };\n var rootHoverFocusActiveSelectorBodySubtextMixin = {\n color: semanticColors.bodySubtext\n };\n var borderColorError = {\n borderColor: semanticColors.errorText\n };\n var dropdownItemStyle = [globalClassnames.dropdownItem, {\n backgroundColor: 'transparent',\n boxSizing: 'border-box',\n cursor: 'pointer',\n display: 'block',\n padding: '4px 16px',\n width: '100%',\n minHeight: DROPDOWN_ITEM_HEIGHT,\n lineHeight: 20,\n height: 'auto',\n position: 'relative',\n border: '1px solid transparent',\n wordWrap: 'break-word',\n overflowWrap: 'break-word',\n textAlign: 'left'\n }];\n var dropdownItemSelected = dropdownItemStyle.concat([{\n backgroundColor: palette.neutralQuaternaryAlt,\n color: palette.black\n }, highContrastItemAndTitleStateMixin]);\n var dropdownItemDisabled = dropdownItemStyle.concat([{\n color: semanticColors.disabledText,\n cursor: 'default'\n }]);\n return {\n root: globalClassnames.root,\n label: globalClassnames.label,\n dropdown: [globalClassnames.dropdown, normalize, tslib_1.__assign({}, theme.fonts.medium, {\n color: palette.neutralPrimary,\n position: 'relative',\n outline: 0,\n userSelect: 'none',\n selectors: (_a = {}, _a['&:hover .' + globalClassnames.title] = [!disabled && rootHoverFocusActiveSelectorNeutralDarkMixin, {\n borderColor: palette.neutralDark\n }, highContrastBorderState], _a['&:focus .' + globalClassnames.title] = [!disabled && rootHoverFocusActiveSelectorNeutralDarkMixin, {\n borderColor: palette.themePrimary\n }, highContrastItemAndTitleStateMixin], _a['&:active .' + globalClassnames.title] = [!disabled && rootHoverFocusActiveSelectorNeutralDarkMixin, {\n borderColor: palette.themeDark\n }, highContrastBorderState], _a['&:hover .' + globalClassnames.caretDown] = !disabled && rootHoverFocusActiveSelectorNeutralDarkMixin, _a['&:focus .' + globalClassnames.caretDown] = [!disabled && rootHoverFocusActiveSelectorNeutralDarkMixin, {\n selectors: tslib_1.__assign((_b = {}, _b[HighContrastSelector] = {\n color: 'HighlightText'\n }, _b), highContrastAdjustMixin)\n }], _a['&:active .' + globalClassnames.caretDown] = !disabled && rootHoverFocusActiveSelectorNeutralDarkMixin, _a['&:hover .' + globalClassnames.titleIsPlaceHolder] = rootHoverFocusActiveSelectorBodySubtextMixin, _a['&:focus .' + globalClassnames.titleIsPlaceHolder] = rootHoverFocusActiveSelectorBodySubtextMixin, _a['&:active .' + globalClassnames.titleIsPlaceHolder] = rootHoverFocusActiveSelectorBodySubtextMixin, _a['&:hover .' + globalClassnames.titleHasError] = borderColorError, _a['&:active .' + globalClassnames.titleHasError] = borderColorError, _a['&:focus .' + globalClassnames.titleHasError] = borderColorError, _a)\n }), className, isOpen && 'is-open', disabled && 'is-disabled', required && 'is-required'],\n title: [globalClassnames.title, normalize, {\n backgroundColor: semanticColors.inputBackground,\n borderWidth: 1,\n borderStyle: 'solid',\n borderColor: semanticColors.inputBorder,\n cursor: 'pointer',\n display: 'block',\n height: DROPDOWN_HEIGHT,\n lineHeight: DROPDOWN_HEIGHT - 2,\n padding: \"0 \" + DROPDOWN_HEIGHT + \"px 0 12px\",\n position: 'relative',\n overflow: 'hidden',\n whiteSpace: 'nowrap',\n textOverflow: 'ellipsis'\n }, isRenderingPlaceholder && [globalClassnames.titleIsPlaceHolder, {\n color: semanticColors.inputPlaceholderText\n }], hasError && [globalClassnames.titleHasError, borderColorError], disabled && {\n backgroundColor: semanticColors.disabledBackground,\n border: 'none',\n color: semanticColors.disabledText,\n cursor: 'default',\n selectors: (_c = {}, _c[HighContrastSelector] = {\n border: '1px solid GrayText',\n color: 'GrayText'\n }, _c)\n }],\n caretDownWrapper: [globalClassnames.caretDownWrapper, {\n position: 'absolute',\n top: 1,\n right: 12,\n height: DROPDOWN_HEIGHT,\n lineHeight: DROPDOWN_HEIGHT - 2 // height minus the border\n\n }, !disabled && {\n cursor: 'pointer'\n }],\n caretDown: [globalClassnames.caretDown, {\n color: palette.neutralSecondary,\n fontSize: FontSizes.small,\n pointerEvents: 'none'\n }, disabled && {\n color: semanticColors.disabledText,\n selectors: (_d = {}, _d[HighContrastSelector] = {\n color: 'GrayText'\n }, _d)\n }],\n errorMessage: tslib_1.__assign({\n color: semanticColors.errorText\n }, theme.fonts.small, {\n paddingTop: 5\n }),\n callout: [globalClassnames.callout, {\n boxShadow: '0 0 2px 0 rgba(0,0,0,0.2)',\n border: \"1px solid \" + palette.neutralLight\n }, calloutClassName],\n dropdownItemsWrapper: {\n selectors: {\n '&:focus': {\n outline: 0\n }\n }\n },\n dropdownItems: [globalClassnames.dropdownItems, {\n display: 'block'\n }],\n dropdownItem: dropdownItemStyle.concat([{\n selectors: (_e = {}, _e[HighContrastSelector] = {\n borderColor: 'Window'\n }, _e['&:hover'] = {\n color: 'inherit'\n }, _e['&:focus'] = {\n backgroundColor: semanticColors.listItemBackgroundHovered\n }, _e['&:active'] = {\n backgroundColor: semanticColors.listHeaderBackgroundHovered,\n color: palette.black\n }, _e)\n }]),\n dropdownItemSelected: dropdownItemSelected,\n dropdownItemDisabled: dropdownItemDisabled,\n dropdownItemSelectedAndDisabled: [dropdownItemSelected, dropdownItemDisabled, {\n backgroundColor: 'transparent'\n }],\n dropdownDivider: [globalClassnames.dropdownDivider, {\n height: 1,\n backgroundColor: semanticColors.bodyDivider\n }],\n dropdownOptionText: [globalClassnames.dropdownOptionText, {\n overflow: 'hidden',\n whiteSpace: 'nowrap',\n textOverflow: 'ellipsis',\n minWidth: 0,\n maxWidth: '100%',\n wordWrap: 'break-word',\n overflowWrap: 'break-word',\n margin: '1px'\n }],\n dropdownItemHeader: [globalClassnames.dropdownItemHeader, tslib_1.__assign({}, theme.fonts.medium, {\n fontWeight: FontWeights.semibold,\n color: semanticColors.menuHeader,\n background: 'none',\n backgroundColor: 'transparent',\n border: 'none',\n height: DROPDOWN_ITEM_HEIGHT,\n lineHeight: DROPDOWN_ITEM_HEIGHT,\n cursor: 'default',\n padding: '0px 16px',\n userSelect: 'none',\n textAlign: 'left'\n })],\n subComponentStyles: {\n label: {\n root: {\n display: 'inline-block'\n }\n },\n panel: {\n root: [panelClassName],\n main: {\n // Force drop shadow even under medium breakpoint\n boxShadow: '-30px 0px 30px -30px rgba(0,0,0,0.2)'\n },\n contentInner: {\n padding: '0 0 20px'\n }\n }\n }\n };\n\n var _a, _b, _c, _d, _e;\n};\n\nvar _a, _b;","import { DropdownMenuItemType } from '../Dropdown.types';\n/**\r\n * A utility class to cache size and position in cache.\r\n *\r\n * Dropdown options has non-selectable display types. It is therefore not cheap to determine\r\n * the total number of actual selectable options as well as the position an option is in the\r\n * list of options - O(n) cost for each lookup.\r\n *\r\n * Given that we potentially have to make this determination on every single render pass, this\r\n * cache should provide a little bit of relief.\r\n */\n\nvar DropdownSizePosCache =\n/** @class */\nfunction () {\n function DropdownSizePosCache() {\n this._size = 0;\n }\n /**\r\n * Invalidates the cache and recalculate the size of selectable options.\r\n */\n\n\n DropdownSizePosCache.prototype.updateOptions = function (options) {\n var displayOnlyOptionsCache = [];\n var size = 0;\n\n for (var i = 0; i < options.length; i++) {\n if (options[i].itemType === DropdownMenuItemType.Divider || options[i].itemType === DropdownMenuItemType.Header) {\n displayOnlyOptionsCache.push(i);\n } else {\n size++;\n }\n }\n\n this._size = size;\n this._displayOnlyOptionsCache = displayOnlyOptionsCache;\n };\n\n Object.defineProperty(DropdownSizePosCache.prototype, \"optionSetSize\", {\n /**\r\n * The size of all the selectable options.\r\n */\n get: function get() {\n return this._size;\n },\n enumerable: true,\n configurable: true\n });\n /**\r\n * Returns the position of this option element relative to the full set of selectable option elements.\r\n * Note: the first selectable element is position 1 in the set.\r\n * @param index The raw index of the option element.\r\n */\n\n DropdownSizePosCache.prototype.positionInSet = function (index) {\n if (index === undefined) {\n return undefined;\n } // we could possibly memoize this too but this should be good enough, most of the time (the expectation is that\n // when you have a lot of options, the selectable options will heavily dominate over the non-selectable options.\n\n\n var offset = 0;\n\n while (index > this._displayOnlyOptionsCache[offset]) {\n offset++;\n }\n\n if (this._displayOnlyOptionsCache[offset] === index) {\n throw new Error(\"Unexpected: Option at index \" + index + \" is not a selectable element.\");\n }\n\n return index - offset + 1;\n };\n\n return DropdownSizePosCache;\n}();\n\nexport { DropdownSizePosCache };","import * as tslib_1 from \"tslib\";\nimport * as React from 'react';\nimport { BaseComponent, classNamesFunction, divProperties, findIndex, getDocument, getFirstFocusable, getId, getLastFocusable, getNativeProps, isIOS, isMac, KeyCodes, mergeAriaAttributeValues } from '../../Utilities';\nimport { Callout } from '../../Callout';\nimport { Checkbox } from '../../Checkbox';\nimport { CommandButton } from '../../Button';\nimport { DirectionalHint } from '../../common/DirectionalHint';\nimport { DropdownMenuItemType } from './Dropdown.types';\nimport { DropdownSizePosCache } from './utilities/DropdownSizePosCache';\nimport { FocusZone, FocusZoneDirection } from '../../FocusZone';\nimport { Icon } from '../../Icon';\nimport { Label } from '../../Label';\nimport { KeytipData } from '../../KeytipData';\nimport { Panel } from '../../Panel';\nimport { ResponsiveMode, withResponsiveMode } from '../../utilities/decorators/withResponsiveMode';\nimport { SelectableOptionMenuItemType } from '../../utilities/selectableOption/SelectableOption.types';\nvar getClassNames = classNamesFunction();\n\nvar DropdownBase =\n/** @class */\nfunction (_super) {\n tslib_1.__extends(DropdownBase, _super);\n\n function DropdownBase(props) {\n var _this = _super.call(this, props) || this;\n\n _this._host = React.createRef();\n _this._focusZone = React.createRef();\n _this._dropDown = React.createRef();\n _this._scrollIdleDelay = 250\n /* ms */\n ;\n _this._sizePosCache = new DropdownSizePosCache();\n /** Render text in dropdown input */\n\n _this._onRenderTitle = function (item) {\n var _a = _this.props.multiSelectDelimiter,\n multiSelectDelimiter = _a === void 0 ? ', ' : _a;\n var displayTxt = item.map(function (i) {\n return i.text;\n }).join(multiSelectDelimiter);\n return React.createElement(\"span\", null, displayTxt);\n };\n /** Render placeholder text in dropdown input */\n\n\n _this._onRenderPlaceholder = function (props) {\n if (!_this._placeholder) {\n return null;\n }\n\n return React.createElement(\"span\", null, _this._placeholder);\n };\n /** Render Callout or Panel container and pass in list */\n\n\n _this._onRenderContainer = function (props) {\n var _a = _this.props,\n responsiveMode = _a.responsiveMode,\n calloutProps = _a.calloutProps,\n panelProps = _a.panelProps,\n dropdownWidth = _a.dropdownWidth;\n var isSmall = responsiveMode <= ResponsiveMode.medium;\n var panelStyles = _this._classNames.subComponentStyles ? _this._classNames.subComponentStyles.panel : undefined;\n return isSmall ? React.createElement(Panel, tslib_1.__assign({\n isOpen: true,\n isLightDismiss: true,\n onDismissed: _this._onDismiss,\n hasCloseButton: false,\n styles: panelStyles\n }, panelProps), _this._renderFocusableList(props)) : React.createElement(Callout, tslib_1.__assign({\n isBeakVisible: false,\n gapSpace: 0,\n doNotLayer: false,\n directionalHintFixed: false,\n directionalHint: DirectionalHint.bottomLeftEdge\n }, calloutProps, {\n className: _this._classNames.callout,\n target: _this._dropDown.current,\n onDismiss: _this._onDismiss,\n onScroll: _this._onScroll,\n onPositioned: _this._onPositioned,\n calloutWidth: dropdownWidth || (_this._dropDown.current ? _this._dropDown.current.clientWidth : 0)\n }), _this._renderFocusableList(props));\n };\n /** Render Caret Down Icon */\n\n\n _this._onRenderCaretDown = function (props) {\n return React.createElement(Icon, {\n className: _this._classNames.caretDown,\n iconName: \"ChevronDown\"\n });\n };\n /** Render List of items */\n\n\n _this._onRenderList = function (props) {\n var _a = _this.props.onRenderItem,\n onRenderItem = _a === void 0 ? _this._onRenderItem : _a;\n return React.createElement(React.Fragment, null, _this.props.options.map(function (item, index) {\n return onRenderItem(tslib_1.__assign({}, item, {\n index: index\n }), _this._onRenderItem);\n }));\n };\n\n _this._onRenderItem = function (item) {\n switch (item.itemType) {\n case SelectableOptionMenuItemType.Divider:\n return _this._renderSeparator(item);\n\n case SelectableOptionMenuItemType.Header:\n return _this._renderHeader(item);\n\n default:\n return _this._renderOption(item);\n }\n };\n\n _this._renderOption = function (item) {\n var _a = _this.props.onRenderOption,\n onRenderOption = _a === void 0 ? _this._onRenderOption : _a;\n var _b = _this.state.selectedIndices,\n selectedIndices = _b === void 0 ? [] : _b;\n var id = _this._id;\n var isItemSelected = item.index !== undefined && selectedIndices ? selectedIndices.indexOf(item.index) > -1 : false; // select the right className based on the combination of selected/disabled\n\n var itemClassName = isItemSelected && item.disabled === true // predicate: both selected and disabled\n ? _this._classNames.dropdownItemSelectedAndDisabled : isItemSelected // predicate: selected only\n ? _this._classNames.dropdownItemSelected : item.disabled === true // predicate: disabled only\n ? _this._classNames.dropdownItemDisabled : _this._classNames.dropdownItem;\n return !_this.props.multiSelect ? React.createElement(CommandButton, {\n id: id + '-list' + item.index,\n key: item.key,\n \"data-index\": item.index,\n \"data-is-focusable\": !item.disabled,\n disabled: item.disabled,\n className: itemClassName,\n onClick: _this._onItemClick(item),\n onMouseEnter: _this._onItemMouseEnter.bind(_this, item),\n onMouseLeave: _this._onMouseItemLeave.bind(_this, item),\n onMouseMove: _this._onItemMouseMove.bind(_this, item),\n role: \"option\",\n \"aria-selected\": isItemSelected ? 'true' : 'false',\n ariaLabel: item.ariaLabel,\n title: item.title ? item.title : item.text\n }, onRenderOption(item, _this._onRenderOption)) : React.createElement(Checkbox, {\n id: id + '-list' + item.index,\n key: item.key,\n \"data-index\": item.index,\n \"data-is-focusable\": !item.disabled,\n disabled: item.disabled,\n onChange: _this._onItemClick(item),\n inputProps: {\n onMouseEnter: _this._onItemMouseEnter.bind(_this, item),\n onMouseLeave: _this._onMouseItemLeave.bind(_this, item),\n onMouseMove: _this._onItemMouseMove.bind(_this, item)\n },\n label: item.text,\n title: item.title ? item.title : item.text,\n onRenderLabel: _this._onRenderLabel.bind(_this, item),\n className: itemClassName,\n role: \"option\",\n \"aria-selected\": isItemSelected ? 'true' : 'false',\n checked: isItemSelected\n });\n };\n /** Render content of item (i.e. text/icon inside of button) */\n\n\n _this._onRenderOption = function (item) {\n return React.createElement(\"span\", {\n className: _this._classNames.dropdownOptionText\n }, item.text);\n };\n /** Render custom label for drop down item */\n\n\n _this._onRenderLabel = function (item) {\n var _a = _this.props.onRenderOption,\n onRenderOption = _a === void 0 ? _this._onRenderOption : _a;\n return onRenderOption(item, _this._onRenderOption);\n };\n\n _this._onPositioned = function (positions) {\n if (_this._focusZone.current) {\n // Focusing an element can trigger a reflow. Making this wait until there is an animation\n // frame can improve perf significantly.\n _this._async.requestAnimationFrame(function () {\n var selectedIndices = _this.state.selectedIndices;\n\n if (selectedIndices && selectedIndices[0] && !_this.props.options[selectedIndices[0]].disabled) {\n var element = getDocument().querySelector(\"#\" + _this._id + \"-list\" + selectedIndices[0]);\n\n _this._focusZone.current.focusElement(element);\n } else {\n _this._focusZone.current.focus();\n }\n });\n }\n\n if (!_this.state.calloutRenderEdge || _this.state.calloutRenderEdge !== positions.targetEdge) {\n _this.setState({\n calloutRenderEdge: positions.targetEdge\n });\n }\n };\n\n _this._onItemClick = function (item) {\n return function (event) {\n if (!item.disabled) {\n _this.setSelectedIndex(event, item.index);\n\n if (!_this.props.multiSelect) {\n // only close the callout when it's in single-select mode\n _this.setState({\n isOpen: false\n });\n }\n }\n };\n };\n /**\r\n * Scroll handler for the callout to make sure the mouse events\r\n * for updating focus are not interacting during scroll\r\n */\n\n\n _this._onScroll = function () {\n if (!_this._isScrollIdle && _this._scrollIdleTimeoutId !== undefined) {\n _this._async.clearTimeout(_this._scrollIdleTimeoutId);\n\n _this._scrollIdleTimeoutId = undefined;\n } else {\n _this._isScrollIdle = false;\n }\n\n _this._scrollIdleTimeoutId = _this._async.setTimeout(function () {\n _this._isScrollIdle = true;\n }, _this._scrollIdleDelay);\n };\n\n _this._onMouseItemLeave = function (item, ev) {\n if (_this._shouldIgnoreMouseEvent()) {\n return;\n }\n /**\r\n * IE11 focus() method forces parents to scroll to top of element.\r\n * Edge and IE expose a setActive() function for focusable divs that\r\n * sets the page focus but does not scroll the parent element.\r\n */\n\n\n if (_this._host.current) {\n if (_this._host.current.setActive) {\n try {\n _this._host.current.setActive();\n } catch (e) {\n /* no-op */\n }\n } else {\n _this._host.current.focus();\n }\n }\n };\n\n _this._onDismiss = function () {\n _this.setState({\n isOpen: false\n });\n\n if (_this._dropDown.current) {\n _this._dropDown.current.focus();\n }\n };\n\n _this._onDropdownBlur = function (ev) {\n // If Dropdown disabled do not proceed with this logic.\n var disabled = _this._isDisabled();\n\n if (disabled) {\n return;\n } // hasFocus tracks whether the root element has focus so always update the state.\n\n\n _this.setState({\n hasFocus: false\n });\n\n if (_this.state.isOpen) {\n // Do not onBlur when the callout is opened\n return;\n }\n\n if (_this.props.onBlur) {\n _this.props.onBlur(ev);\n }\n };\n\n _this._onDropdownKeyDown = function (ev) {\n // If Dropdown disabled do not process any keyboard events.\n var disabled = _this._isDisabled();\n\n if (disabled) {\n return;\n } // Take note if we are processing an alt (option) or meta (command) keydown.\n // See comment in _shouldHandleKeyUp for reasoning.\n\n\n _this._lastKeyDownWasAltOrMeta = _this._isAltOrMeta(ev);\n\n if (_this.props.onKeyDown) {\n _this.props.onKeyDown(ev);\n\n if (ev.defaultPrevented) {\n return;\n }\n }\n\n var newIndex;\n var selectedIndex = _this.state.selectedIndices.length ? _this.state.selectedIndices[0] : -1;\n var containsExpandCollapseModifier = ev.altKey || ev.metaKey;\n var isOpen = _this.state.isOpen;\n\n switch (ev.which) {\n case KeyCodes.enter:\n _this.setState({\n isOpen: !isOpen\n });\n\n break;\n\n case KeyCodes.escape:\n if (!isOpen) {\n return;\n }\n\n _this.setState({\n isOpen: false\n });\n\n break;\n\n case KeyCodes.up:\n if (containsExpandCollapseModifier) {\n if (isOpen) {\n _this.setState({\n isOpen: false\n });\n\n break;\n }\n\n return;\n }\n\n if (_this.props.multiSelect) {\n _this.setState({\n isOpen: true\n });\n } else if (!_this._isDisabled()) {\n newIndex = _this._moveIndex(ev, -1, selectedIndex - 1, selectedIndex);\n }\n\n break;\n\n case KeyCodes.down:\n if (containsExpandCollapseModifier) {\n ev.stopPropagation();\n ev.preventDefault();\n }\n\n if (containsExpandCollapseModifier && !isOpen || _this.props.multiSelect) {\n _this.setState({\n isOpen: true\n });\n } else if (!_this._isDisabled()) {\n newIndex = _this._moveIndex(ev, 1, selectedIndex + 1, selectedIndex);\n }\n\n break;\n\n case KeyCodes.home:\n if (!_this.props.multiSelect) {\n newIndex = _this._moveIndex(ev, 1, 0, selectedIndex);\n }\n\n break;\n\n case KeyCodes.end:\n if (!_this.props.multiSelect) {\n newIndex = _this._moveIndex(ev, -1, _this.props.options.length - 1, selectedIndex);\n }\n\n break;\n\n case KeyCodes.space:\n // event handled in _onDropdownKeyUp\n break;\n\n default:\n return;\n }\n\n if (newIndex !== selectedIndex) {\n ev.stopPropagation();\n ev.preventDefault();\n }\n };\n\n _this._onDropdownKeyUp = function (ev) {\n // If Dropdown disabled do not process any keyboard events.\n var disabled = _this._isDisabled();\n\n if (disabled) {\n return;\n }\n\n var shouldHandleKey = _this._shouldHandleKeyUp(ev);\n\n var isOpen = _this.state.isOpen;\n\n if (_this.props.onKeyUp) {\n _this.props.onKeyUp(ev);\n\n if (ev.preventDefault) {\n return;\n }\n }\n\n switch (ev.which) {\n case KeyCodes.space:\n _this.setState({\n isOpen: !isOpen\n });\n\n break;\n\n default:\n if (shouldHandleKey && isOpen) {\n _this.setState({\n isOpen: false\n });\n }\n\n return;\n }\n\n ev.stopPropagation();\n ev.preventDefault();\n };\n\n _this._onZoneKeyDown = function (ev) {\n var elementToFocus; // Take note if we are processing an alt (option) or meta (command) keydown.\n // See comment in _shouldHandleKeyUp for reasoning.\n\n _this._lastKeyDownWasAltOrMeta = _this._isAltOrMeta(ev);\n var containsExpandCollapseModifier = ev.altKey || ev.metaKey;\n\n switch (ev.which) {\n case KeyCodes.up:\n if (containsExpandCollapseModifier) {\n _this.setState({\n isOpen: false\n });\n } else {\n if (_this._host.current) {\n elementToFocus = getLastFocusable(_this._host.current, _this._host.current.lastChild, true);\n }\n }\n\n break;\n // All directional keystrokes should be canceled when the zone is rendered.\n // This avoids the body scroll from reacting and thus dismissing the dropdown.\n\n case KeyCodes.home:\n case KeyCodes.end:\n case KeyCodes.pageUp:\n case KeyCodes.pageDown:\n break;\n\n case KeyCodes.down:\n if (!containsExpandCollapseModifier && _this._host.current) {\n elementToFocus = getFirstFocusable(_this._host.current, _this._host.current.firstChild, true);\n }\n\n break;\n\n case KeyCodes.escape:\n _this.setState({\n isOpen: false\n });\n\n break;\n\n case KeyCodes.tab:\n _this.setState({\n isOpen: false\n });\n\n return;\n\n default:\n return;\n }\n\n if (elementToFocus) {\n elementToFocus.focus();\n }\n\n ev.stopPropagation();\n ev.preventDefault();\n };\n\n _this._onZoneKeyUp = function (ev) {\n var shouldHandleKey = _this._shouldHandleKeyUp(ev);\n\n if (shouldHandleKey && _this.state.isOpen) {\n _this.setState({\n isOpen: false\n });\n\n ev.preventDefault();\n }\n };\n\n _this._onDropdownClick = function (ev) {\n if (_this.props.onClick) {\n _this.props.onClick(ev);\n\n if (ev.preventDefault) {\n return;\n }\n }\n\n var isOpen = _this.state.isOpen;\n\n var disabled = _this._isDisabled();\n\n if (!disabled) {\n _this.setState({\n isOpen: !isOpen\n });\n }\n };\n\n _this._onFocus = function (ev) {\n var _a = _this.state,\n isOpen = _a.isOpen,\n selectedIndices = _a.selectedIndices;\n var multiSelect = _this.props.multiSelect;\n\n var disabled = _this._isDisabled();\n\n if (!disabled) {\n if (!isOpen && selectedIndices.length === 0 && !multiSelect) {\n // Per aria\n _this._moveIndex(ev, 1, 0, -1);\n }\n\n if (_this.props.onFocus) {\n _this.props.onFocus(ev);\n }\n\n _this.setState({\n hasFocus: true\n });\n }\n };\n /**\r\n * Because the isDisabled prop is deprecated, we have had to repeat this logic all over the place.\r\n * This helper method avoids all the repetition.\r\n */\n\n\n _this._isDisabled = function () {\n var disabled = _this.props.disabled;\n var isDisabled = _this.props.isDisabled; // Remove this deprecation workaround at 1.0.0\n\n if (isDisabled !== undefined) {\n disabled = isDisabled;\n }\n\n return disabled;\n };\n\n _this._warnDeprecations({\n isDisabled: 'disabled',\n onChanged: 'onChange',\n placeHolder: 'placeholder'\n });\n\n _this._warnMutuallyExclusive({\n defaultSelectedKey: 'selectedKey',\n defaultSelectedKeys: 'selectedKeys',\n selectedKeys: 'selectedKey',\n multiSelect: 'defaultSelectedKey',\n selectedKey: 'multiSelect'\n });\n\n _this._id = props.id || getId('Dropdown');\n _this._isScrollIdle = true;\n var selectedIndices;\n\n if (_this.props.multiSelect) {\n var selectedKeys = props.defaultSelectedKeys !== undefined ? props.defaultSelectedKeys : props.selectedKeys;\n selectedIndices = _this._getSelectedIndexes(props.options, selectedKeys);\n } else {\n var selectedKey = props.defaultSelectedKey !== undefined ? props.defaultSelectedKey : props.selectedKey;\n selectedIndices = _this._getSelectedIndexes(props.options, selectedKey);\n\n _this._sizePosCache.updateOptions(props.options);\n }\n\n _this.state = {\n isOpen: false,\n selectedIndices: selectedIndices,\n hasFocus: false,\n calloutRenderEdge: undefined\n };\n return _this;\n }\n\n DropdownBase.prototype.componentWillReceiveProps = function (newProps) {\n // In controlled component usage where selectedKey is provided, update the selectedIndex\n // state if the key or options change.\n var selectedKeyProp; // this does a shallow compare (assumes options are pure), for the purposes of determining whether\n // defaultSelectedKey/defaultSelectedKeys are respected.\n\n var didOptionsChange = newProps.options !== this.props.options;\n\n if (newProps.multiSelect) {\n if (didOptionsChange && newProps.defaultSelectedKeys !== undefined) {\n selectedKeyProp = 'defaultSelectedKeys';\n } else {\n selectedKeyProp = 'selectedKeys';\n }\n } else {\n if (didOptionsChange && newProps.defaultSelectedKey !== undefined) {\n selectedKeyProp = 'defaultSelectedKey';\n } else {\n selectedKeyProp = 'selectedKey';\n }\n }\n\n if (newProps[selectedKeyProp] !== undefined && (newProps[selectedKeyProp] !== this.props[selectedKeyProp] || didOptionsChange)) {\n this.setState({\n selectedIndices: this._getSelectedIndexes(newProps.options, newProps[selectedKeyProp])\n });\n }\n\n if (newProps.options !== this.props.options && // preexisting code assumes purity of the options...\n !newProps.multiSelect // only relevant in single selection\n ) {\n this._sizePosCache.updateOptions(newProps.options);\n }\n };\n\n DropdownBase.prototype.componentDidUpdate = function (prevProps, prevState) {\n if (prevState.isOpen === true && this.state.isOpen === false) {\n this._gotMouseMove = false;\n\n if (this._dropDown.current) {\n this._dropDown.current.focus();\n }\n\n if (this.props.onDismiss) {\n this.props.onDismiss();\n }\n }\n };\n\n DropdownBase.prototype.render = function () {\n var _this = this;\n\n var id = this._id;\n var _a = this.props,\n className = _a.className,\n label = _a.label,\n options = _a.options,\n ariaLabel = _a.ariaLabel,\n required = _a.required,\n errorMessage = _a.errorMessage,\n multiSelect = _a.multiSelect,\n keytipProps = _a.keytipProps,\n propStyles = _a.styles,\n theme = _a.theme,\n panelProps = _a.panelProps,\n calloutProps = _a.calloutProps,\n _b = _a.onRenderTitle,\n onRenderTitle = _b === void 0 ? this._onRenderTitle : _b,\n _c = _a.onRenderContainer,\n onRenderContainer = _c === void 0 ? this._onRenderContainer : _c,\n _d = _a.onRenderPlaceHolder,\n onRenderPlaceHolder = _d === void 0 ? this._onRenderPlaceholder : _d,\n _e = _a.onRenderCaretDown,\n onRenderCaretDown = _e === void 0 ? this._onRenderCaretDown : _e;\n var _f = this.state,\n isOpen = _f.isOpen,\n selectedIndices = _f.selectedIndices,\n hasFocus = _f.hasFocus,\n calloutRenderEdge = _f.calloutRenderEdge;\n\n var selectedOptions = this._getAllSelectedOptions(options, selectedIndices);\n\n var divProps = getNativeProps(this.props, divProperties);\n\n var disabled = this._isDisabled();\n\n var optionId = id + '-option';\n var ariaAttrs = multiSelect || disabled ? {\n role: undefined,\n ariaActiveDescendant: undefined,\n childRole: undefined,\n ariaSetSize: undefined,\n ariaPosInSet: undefined,\n ariaSelected: undefined\n } : // single select\n {\n role: 'listbox',\n ariaActiveDescendant: isOpen && selectedIndices.length === 1 && selectedIndices[0] >= 0 ? this._id + '-list' + selectedIndices[0] : optionId,\n childRole: 'option',\n ariaSetSize: this._sizePosCache.optionSetSize,\n ariaPosInSet: this._sizePosCache.positionInSet(selectedIndices[0]),\n ariaSelected: selectedIndices[0] === undefined ? undefined : true\n };\n this._classNames = getClassNames(propStyles, {\n theme: theme,\n className: className,\n hasError: Boolean(errorMessage && errorMessage.length > 0),\n isOpen: isOpen,\n required: required,\n disabled: disabled,\n isRenderingPlaceholder: !selectedOptions.length,\n panelClassName: !!panelProps ? panelProps.className : undefined,\n calloutClassName: !!calloutProps ? calloutProps.className : undefined,\n calloutRenderEdge: calloutRenderEdge\n });\n var labelStyles = this._classNames.subComponentStyles ? this._classNames.subComponentStyles.label : undefined;\n return React.createElement(\"div\", {\n className: this._classNames.root\n }, label && React.createElement(Label, {\n className: this._classNames.label,\n id: id + '-label',\n htmlFor: id,\n required: required,\n styles: labelStyles\n }, label), React.createElement(KeytipData, {\n keytipProps: keytipProps,\n disabled: disabled\n }, function (keytipAttributes) {\n return React.createElement(\"div\", tslib_1.__assign({}, keytipAttributes, {\n \"data-is-focusable\": !disabled,\n ref: _this._dropDown,\n id: id,\n tabIndex: disabled ? -1 : 0,\n \"aria-expanded\": isOpen ? 'true' : 'false',\n role: ariaAttrs.role,\n \"aria-label\": ariaLabel,\n \"aria-labelledby\": label && !ariaLabel ? id + '-label' : undefined,\n \"aria-describedby\": mergeAriaAttributeValues(optionId, keytipAttributes['aria-describedby']),\n \"aria-activedescendant\": isOpen ? ariaAttrs.ariaActiveDescendant : undefined,\n \"aria-required\": required,\n \"aria-disabled\": disabled,\n \"aria-owns\": isOpen ? id + '-list' : undefined\n }, divProps, {\n className: _this._classNames.dropdown,\n onBlur: _this._onDropdownBlur,\n onKeyDown: _this._onDropdownKeyDown,\n onKeyUp: _this._onDropdownKeyUp,\n onClick: _this._onDropdownClick,\n onFocus: _this._onFocus\n }), React.createElement(\"span\", {\n id: optionId,\n className: _this._classNames.title,\n \"aria-atomic\": true,\n role: ariaAttrs.childRole,\n \"aria-live\": !hasFocus || disabled || multiSelect || isOpen ? 'off' : 'assertive',\n \"aria-label\": selectedOptions.length ? selectedOptions[0].text : _this._placeholder,\n \"aria-setsize\": ariaAttrs.ariaSetSize,\n \"aria-posinset\": ariaAttrs.ariaPosInSet,\n \"aria-selected\": ariaAttrs.ariaSelected\n }, // If option is selected render title, otherwise render the placeholder text\n selectedOptions.length ? onRenderTitle(selectedOptions, _this._onRenderTitle) : onRenderPlaceHolder(_this.props, _this._onRenderPlaceholder)), React.createElement(\"span\", {\n className: _this._classNames.caretDownWrapper\n }, onRenderCaretDown(_this.props, _this._onRenderCaretDown)));\n }), isOpen && onRenderContainer(this.props, this._onRenderContainer), errorMessage && errorMessage.length > 0 && React.createElement(\"div\", {\n className: this._classNames.errorMessage\n }, errorMessage));\n };\n\n DropdownBase.prototype.focus = function (shouldOpenOnFocus) {\n if (this._dropDown.current && this._dropDown.current.tabIndex !== -1) {\n this._dropDown.current.focus();\n\n if (shouldOpenOnFocus) {\n this.setState({\n isOpen: true\n });\n }\n }\n };\n\n DropdownBase.prototype.setSelectedIndex = function (event, index) {\n var _a = this.props,\n onChange = _a.onChange,\n onChanged = _a.onChanged,\n options = _a.options,\n selectedKey = _a.selectedKey,\n selectedKeys = _a.selectedKeys,\n multiSelect = _a.multiSelect,\n notifyOnReselect = _a.notifyOnReselect;\n var _b = this.state.selectedIndices,\n selectedIndices = _b === void 0 ? [] : _b;\n var checked = selectedIndices ? selectedIndices.indexOf(index) > -1 : false;\n index = Math.max(0, Math.min(options.length - 1, index));\n\n if (!multiSelect && !notifyOnReselect && index === selectedIndices[0]) {\n return;\n } else if (!multiSelect && selectedKey === undefined) {\n // Set the selected option if this is an uncontrolled component\n this.setState({\n selectedIndices: [index]\n });\n } else if (multiSelect && selectedKeys === undefined) {\n var newIndexes = selectedIndices ? this._copyArray(selectedIndices) : [];\n\n if (checked) {\n var position = newIndexes.indexOf(index);\n\n if (position > -1) {\n // unchecked the current one\n newIndexes.splice(position, 1);\n }\n } else {\n // add the new selected index into the existing one\n newIndexes.push(index);\n }\n\n this.setState({\n selectedIndices: newIndexes\n });\n }\n\n if (onChange) {\n // for single-select, option passed in will always be selected.\n // for multi-select, flip the checked value\n var changedOpt = multiSelect ? tslib_1.__assign({}, options[index], {\n selected: !checked\n }) : options[index];\n onChange(event, changedOpt, index);\n }\n\n if (onChanged) {\n // for single-select, option passed in will always be selected.\n // for multi-select, flip the checked value\n var changedOpt = multiSelect ? tslib_1.__assign({}, options[index], {\n selected: !checked\n }) : options[index];\n onChanged(changedOpt, index);\n }\n };\n\n Object.defineProperty(DropdownBase.prototype, \"_placeholder\", {\n /** Get either props.placeholder (new name) or props.placeHolder (old name) */\n get: function get() {\n return this.props.placeholder || this.props.placeHolder;\n },\n enumerable: true,\n configurable: true\n });\n\n DropdownBase.prototype._copyArray = function (array) {\n var newArray = [];\n\n for (var _i = 0, array_1 = array; _i < array_1.length; _i++) {\n var element = array_1[_i];\n newArray.push(element);\n }\n\n return newArray;\n };\n /**\r\n * Finds the next valid Dropdown option and sets the selected index to it.\r\n * @param stepValue Value of how many items the function should traverse. Should be -1 or 1.\r\n * @param index Index of where the search should start\r\n * @param selectedIndex The selectedIndex Dropdown's state\r\n * @returns The next valid dropdown option's index\r\n */\n\n\n DropdownBase.prototype._moveIndex = function (event, stepValue, index, selectedIndex) {\n var options = this.props.options; // Return selectedIndex if nothing has changed or options is empty\n\n if (selectedIndex === index || options.length === 0) {\n return selectedIndex;\n } // Set starting index to 0 if index is < 0\n\n\n if (index < 0) {\n index = 0;\n } // Set starting index to last option index if greater than options.length\n\n\n if (index >= options.length) {\n index = options.length - 1;\n }\n\n var stepCounter = 0; // If current index is a header or divider, or disabled, increment by step\n\n while (options[index].itemType === DropdownMenuItemType.Header || options[index].itemType === DropdownMenuItemType.Divider || options[index].disabled) {\n // If stepCounter exceeds length of options, then return selectedIndex (-1)\n if (stepCounter >= options.length) {\n return selectedIndex;\n } // If index + stepValue is out of bounds, wrap around\n\n\n if (index + stepValue < 0) {\n index = options.length;\n } else if (index + stepValue >= options.length) {\n index = -1;\n }\n\n index = index + stepValue;\n stepCounter++;\n }\n\n this.setSelectedIndex(event, index);\n return index;\n };\n /** Wrap item list in a FocusZone */\n\n\n DropdownBase.prototype._renderFocusableList = function (props) {\n var _a = props.onRenderList,\n onRenderList = _a === void 0 ? this._onRenderList : _a,\n label = props.label;\n var id = this._id;\n return React.createElement(\"div\", {\n className: this._classNames.dropdownItemsWrapper,\n onKeyDown: this._onZoneKeyDown,\n onKeyUp: this._onZoneKeyUp,\n ref: this._host,\n tabIndex: 0\n }, React.createElement(FocusZone, {\n ref: this._focusZone,\n direction: FocusZoneDirection.vertical,\n id: id + '-list',\n className: this._classNames.dropdownItems,\n \"aria-labelledby\": label ? id + '-label' : undefined,\n role: \"listbox\"\n }, onRenderList(props, this._onRenderList)));\n };\n\n DropdownBase.prototype._renderSeparator = function (item) {\n var index = item.index,\n key = item.key;\n\n if (index > 0) {\n return React.createElement(\"div\", {\n role: \"separator\",\n key: key,\n className: this._classNames.dropdownDivider\n });\n }\n\n return null;\n };\n\n DropdownBase.prototype._renderHeader = function (item) {\n var _a = this.props.onRenderOption,\n onRenderOption = _a === void 0 ? this._onRenderOption : _a;\n var key = item.key;\n return React.createElement(\"div\", {\n key: key,\n className: this._classNames.dropdownItemHeader\n }, onRenderOption(item, this._onRenderOption));\n };\n\n DropdownBase.prototype._onItemMouseEnter = function (item, ev) {\n if (this._shouldIgnoreMouseEvent()) {\n return;\n }\n\n var targetElement = ev.currentTarget;\n targetElement.focus();\n };\n\n DropdownBase.prototype._onItemMouseMove = function (item, ev) {\n var targetElement = ev.currentTarget;\n this._gotMouseMove = true;\n\n if (!this._isScrollIdle || document.activeElement === targetElement) {\n return;\n }\n\n targetElement.focus();\n };\n\n DropdownBase.prototype._shouldIgnoreMouseEvent = function () {\n return !this._isScrollIdle || !this._gotMouseMove;\n };\n /** Get all selected indexes for multi-select mode */\n\n\n DropdownBase.prototype._getSelectedIndexes = function (options, selectedKey) {\n if (selectedKey === undefined) {\n if (this.props.multiSelect) {\n return this._getAllSelectedIndices(options);\n }\n\n var selectedIndex = this._getSelectedIndex(options, null);\n\n return selectedIndex !== -1 ? [selectedIndex] : [];\n } else if (!Array.isArray(selectedKey)) {\n return [this._getSelectedIndex(options, selectedKey)];\n }\n\n var selectedIndices = [];\n\n for (var _i = 0, selectedKey_1 = selectedKey; _i < selectedKey_1.length; _i++) {\n var key = selectedKey_1[_i];\n selectedIndices.push(this._getSelectedIndex(options, key));\n }\n\n return selectedIndices;\n };\n /** Get all selected options for multi-select mode */\n\n\n DropdownBase.prototype._getAllSelectedOptions = function (options, selectedIndices) {\n var selectedOptions = [];\n\n for (var _i = 0, selectedIndices_1 = selectedIndices; _i < selectedIndices_1.length; _i++) {\n var index = selectedIndices_1[_i];\n var option = options[index];\n\n if (option) {\n selectedOptions.push(option);\n }\n }\n\n return selectedOptions;\n };\n\n DropdownBase.prototype._getAllSelectedIndices = function (options) {\n return options.map(function (option, index) {\n return option.selected ? index : -1;\n }).filter(function (index) {\n return index !== -1;\n });\n };\n\n DropdownBase.prototype._getSelectedIndex = function (options, selectedKey) {\n return findIndex(options, function (option) {\n // tslint:disable-next-line:triple-equals\n if (selectedKey != null) {\n return option.key === selectedKey;\n } else {\n return !!option.isSelected || !!option.selected;\n }\n });\n };\n /**\r\n * Returns true if the key for the event is alt (Mac option) or meta (Mac command).\r\n */\n\n\n DropdownBase.prototype._isAltOrMeta = function (ev) {\n return ev.which === KeyCodes.alt || ev.key === 'Meta';\n };\n /**\r\n * We close the menu on key up only if ALL of the following are true:\r\n * - Most recent key down was alt or meta (command)\r\n * - The alt/meta key down was NOT followed by some other key (such as down/up arrow to\r\n * expand/collapse the menu)\r\n * - We're not on a Mac (or iOS)\r\n *\r\n * This is because on Windows, pressing alt moves focus to the application menu bar or similar,\r\n * closing any open context menus. There is not a similar behavior on Macs.\r\n */\n\n\n DropdownBase.prototype._shouldHandleKeyUp = function (ev) {\n var keyPressIsAltOrMetaAlone = this._lastKeyDownWasAltOrMeta && this._isAltOrMeta(ev);\n\n this._lastKeyDownWasAltOrMeta = false;\n return !!keyPressIsAltOrMetaAlone && !(isMac() || isIOS());\n };\n\n DropdownBase.defaultProps = {\n options: []\n };\n DropdownBase = tslib_1.__decorate([withResponsiveMode], DropdownBase);\n return DropdownBase;\n}(BaseComponent);\n\nexport { DropdownBase };","import { styled } from '../../Utilities';\nimport { DropdownBase } from './Dropdown.base';\nimport { getStyles } from './Dropdown.styles';\nexport var Dropdown = styled(DropdownBase, getStyles, undefined, {\n scope: 'Dropdown'\n});"],"sourceRoot":""}