>
extends React.Component
implements IBaseFloatingPicker {
- protected selection: Selection;
+ protected selection!: Selection;
protected root = React.createRef();
protected suggestionStore: SuggestionsStore;
@@ -28,7 +28,7 @@ export class BaseFloatingPicker>
protected SuggestionsControlOfProperType: new (
props: ISuggestionsControlProps,
) => SuggestionsControl = SuggestionsControl as new (props: ISuggestionsControlProps) => SuggestionsControl;
- protected currentPromise: PromiseLike;
+ protected currentPromise!: PromiseLike;
protected isComponentMounted: boolean = false;
private _async: Async;
diff --git a/packages/react/src/components/FloatingPicker/Suggestions/SuggestionsControl.tsx b/packages/react/src/components/FloatingPicker/Suggestions/SuggestionsControl.tsx
index e4c6d2c911ad2e..770cea53e0081c 100644
--- a/packages/react/src/components/FloatingPicker/Suggestions/SuggestionsControl.tsx
+++ b/packages/react/src/components/FloatingPicker/Suggestions/SuggestionsControl.tsx
@@ -57,8 +57,8 @@ export class SuggestionsHeaderFooterItem extends React.Component extends React.Component, ISuggestionsControlState> {
- protected _forceResolveButton: IButton;
- protected _searchForMoreButton: IButton;
+ protected _forceResolveButton!: IButton;
+ protected _searchForMoreButton!: IButton;
protected _selectedElement = React.createRef();
protected _suggestions = React.createRef>();
private SuggestionsOfProperType: new (
diff --git a/packages/react/src/components/GroupedList/GroupHeader.base.tsx b/packages/react/src/components/GroupedList/GroupHeader.base.tsx
index 477a3be1cf3a49..7939fdebdd12fa 100644
--- a/packages/react/src/components/GroupedList/GroupHeader.base.tsx
+++ b/packages/react/src/components/GroupedList/GroupHeader.base.tsx
@@ -26,7 +26,7 @@ export class GroupHeaderBase extends React.Component;
+ private _classNames!: IProcessedStyleSet;
private _id: string;
public static getDerivedStateFromProps(
diff --git a/packages/react/src/components/GroupedList/GroupedList.base.tsx b/packages/react/src/components/GroupedList/GroupedList.base.tsx
index faef5130a99934..61ba6506cef41a 100644
--- a/packages/react/src/components/GroupedList/GroupedList.base.tsx
+++ b/packages/react/src/components/GroupedList/GroupedList.base.tsx
@@ -38,7 +38,7 @@ export class GroupedListBase extends React.Component;
+ private _classNames!: IProcessedStyleSet;
private _list = React.createRef();
diff --git a/packages/react/src/components/HoverCard/ExpandingCard.base.tsx b/packages/react/src/components/HoverCard/ExpandingCard.base.tsx
index b51d2ecf49832c..10212bc7a0f90e 100644
--- a/packages/react/src/components/HoverCard/ExpandingCard.base.tsx
+++ b/packages/react/src/components/HoverCard/ExpandingCard.base.tsx
@@ -18,7 +18,7 @@ export class ExpandingCardBase extends React.Component();
private _async: Async;
diff --git a/packages/react/src/components/HoverCard/HoverCard.base.tsx b/packages/react/src/components/HoverCard/HoverCard.base.tsx
index 7f93ef0c5283ec..476b140dec80b1 100644
--- a/packages/react/src/components/HoverCard/HoverCard.base.tsx
+++ b/packages/react/src/components/HoverCard/HoverCard.base.tsx
@@ -40,14 +40,14 @@ export class HoverCardBase extends React.Component();
- private _dismissTimerId: number;
- private _openTimerId: number;
- private _currentMouseTarget: EventTarget | null;
+ private _dismissTimerId!: number;
+ private _openTimerId!: number;
+ private _currentMouseTarget!: EventTarget | null;
private _nativeDismissEvent: (ev?: any) => void;
private _childDismissEvent: (ev?: any) => void;
- private _classNames: { [key in keyof IHoverCardStyles]: string };
+ private _classNames!: { [key in keyof IHoverCardStyles]: string };
private _async: Async;
private _events: EventGroup;
diff --git a/packages/react/src/components/HoverCard/PlainCard/PlainCard.base.tsx b/packages/react/src/components/HoverCard/PlainCard/PlainCard.base.tsx
index d45d7e4a40205e..f7978a2f03411e 100644
--- a/packages/react/src/components/HoverCard/PlainCard/PlainCard.base.tsx
+++ b/packages/react/src/components/HoverCard/PlainCard/PlainCard.base.tsx
@@ -7,7 +7,7 @@ import type { IPlainCardProps, IPlainCardStyles, IPlainCardStyleProps } from './
const getClassNames = classNamesFunction();
export class PlainCardBase extends React.Component {
- private _classNames: { [key in keyof IPlainCardStyles]: string };
+ private _classNames!: { [key in keyof IPlainCardStyles]: string };
constructor(props: IPlainCardProps) {
super(props);
diff --git a/packages/react/src/components/Icon/Icon.tsx b/packages/react/src/components/Icon/Icon.tsx
index 46008e972c6794..e4dd42185e9284 100644
--- a/packages/react/src/components/Icon/Icon.tsx
+++ b/packages/react/src/components/Icon/Icon.tsx
@@ -9,6 +9,8 @@ import type { IIconProps, IIconStyleProps, IIconStyles } from './Icon.types';
* or `ImageIcon` instead, especially in scenarios where rendering performance is important.
* {@docCategory Icon}
*/
+
+export const helloWorld = 'world';
export const Icon: React.FunctionComponent = styled(
IconBase,
getStyles,
diff --git a/packages/react/src/components/KeytipLayer/KeytipLayer.base.tsx b/packages/react/src/components/KeytipLayer/KeytipLayer.base.tsx
index 0dec0dbf36e455..fdb75f4c9bbc12 100644
--- a/packages/react/src/components/KeytipLayer/KeytipLayer.base.tsx
+++ b/packages/react/src/components/KeytipLayer/KeytipLayer.base.tsx
@@ -65,15 +65,15 @@ export class KeytipLayerBase extends React.Component extends React.Component, IListState>
};
private _focusedIndex: number;
private _scrollElement?: HTMLElement;
- private _hasCompletedFirstRender: boolean;
+ private _hasCompletedFirstRender!: boolean;
// surface rect relative to window
private _surfaceRect: IRectangle | undefined;
// The visible rect that we're required to render given the current list state.
- private _requiredRect: IRectangle | null;
+ private _requiredRect!: IRectangle | null;
// The visible rect that we're allowed to keep rendered. Pages outside of this rect will be removed.
- private _allowedRect: IRectangle;
+ private _allowedRect!: IRectangle;
// The rect that is visible to the user
private _visibleRect: IRectangle | undefined;
// materialized rect around visible items, relative to surface
- private _materializedRect: IRectangle | null;
+ private _materializedRect!: IRectangle | null;
private _requiredWindowsAhead: number;
private _requiredWindowsBehind: number;
private _measureVersion: number;
private _scrollHeight?: number;
- private _scrollTop: number;
+ private _scrollTop!: number;
private _pageCache: IPageCache;
public static getDerivedStateFromProps(
diff --git a/packages/react/src/components/MarqueeSelection/MarqueeSelection.base.tsx b/packages/react/src/components/MarqueeSelection/MarqueeSelection.base.tsx
index 79de834f3dedd8..a1ae45f9f91add 100644
--- a/packages/react/src/components/MarqueeSelection/MarqueeSelection.base.tsx
+++ b/packages/react/src/components/MarqueeSelection/MarqueeSelection.base.tsx
@@ -45,7 +45,7 @@ export class MarqueeSelectionBase extends React.Component();
private _dragOrigin: Point | undefined;
- private _rootRect: IRectangle;
+ private _rootRect!: IRectangle;
private _lastMouseEvent: MouseEvent | undefined;
private _autoScroll: AutoScroll | undefined;
private _selectedIndicies: { [key: string]: boolean } | undefined;
@@ -54,9 +54,9 @@ export class MarqueeSelectionBase extends React.Component = React.forwardRef<
- HTMLDivElement,
- IOverflowSetProps
->((props, forwardedRef) => {
+export const OverflowSetBase = React.forwardRef((props, forwardedRef) => {
const divContainer = React.useRef(null);
const mergedRef = useMergedRefs(divContainer, forwardedRef);
useComponentRef(props, divContainer);
@@ -67,5 +64,5 @@ export const OverflowSetBase: React.FunctionComponent = React
{overflowSide === 'end' && showOverflow && }
);
-});
+}) as React.FunctionComponent;
OverflowSetBase.displayName = COMPONENT_NAME;
diff --git a/packages/react/src/components/Panel/Panel.base.tsx b/packages/react/src/components/Panel/Panel.base.tsx
index e19fd9c52f8bf1..af164be0ba83df 100644
--- a/packages/react/src/components/Panel/Panel.base.tsx
+++ b/packages/react/src/components/Panel/Panel.base.tsx
@@ -51,8 +51,8 @@ export class PanelBase extends React.Component impleme
private _async: Async;
private _events: EventGroup;
private _panel = React.createRef();
- private _classNames: IProcessedStyleSet;
- private _scrollableContent: HTMLDivElement | null;
+ private _classNames!: IProcessedStyleSet;
+ private _scrollableContent!: HTMLDivElement | null;
private _animationCallback: number | null = null;
private _hasCustomNavigation: boolean = !!(this.props.onRenderNavigation || this.props.onRenderNavigationContent);
private _headerTextId: string | undefined;
diff --git a/packages/react/src/components/ScrollablePane/ScrollablePane.base.tsx b/packages/react/src/components/ScrollablePane/ScrollablePane.base.tsx
index 34635c30cadb79..c3563d0aa02ee4 100644
--- a/packages/react/src/components/ScrollablePane/ScrollablePane.base.tsx
+++ b/packages/react/src/components/ScrollablePane/ScrollablePane.base.tsx
@@ -36,7 +36,7 @@ export class ScrollablePaneBase
private _contentContainer = React.createRef();
private _subscribers: Set;
private _stickies: Set;
- private _mutationObserver: MutationObserver;
+ private _mutationObserver!: MutationObserver;
private _notifyThrottled: () => void;
private _async: Async;
private _events: EventGroup;
@@ -94,7 +94,7 @@ export class ScrollablePaneBase
if ('MutationObserver' in window) {
this._mutationObserver = new MutationObserver(mutation => {
// Function to check if mutation is occuring in stickyAbove or stickyBelow
- function checkIfMutationIsSticky(mutationRecord: MutationRecord): boolean {
+ function checkIfMutationIsSticky(this: ScrollablePaneBase, mutationRecord: MutationRecord): boolean {
if (this.stickyAbove !== null && this.stickyBelow !== null) {
return this.stickyAbove.contains(mutationRecord.target) || this.stickyBelow.contains(mutationRecord.target);
}
diff --git a/packages/react/src/components/SearchBox/SearchBox.base.tsx b/packages/react/src/components/SearchBox/SearchBox.base.tsx
index fec0406b6ae14b..b547636958f12b 100644
--- a/packages/react/src/components/SearchBox/SearchBox.base.tsx
+++ b/packages/react/src/components/SearchBox/SearchBox.base.tsx
@@ -66,7 +66,7 @@ export const SearchBoxBase: React.FunctionComponent = React.for
const [uncastValue, setValue] = useControllableValue(
props.value,
defaultValue,
- (ev: React.ChangeEvent | undefined, newValue: string) => {
+ (ev: React.ChangeEvent | undefined, newValue) => {
if (ev && ev.timeStamp === prevChangeTimestamp.current) {
// For historical reasons, SearchBox handles both onInput and onChange (we can't modify this
// outside a major version due to potential to break partners' tests and possibly apps).
diff --git a/packages/react/src/components/SelectedItemsList/BaseSelectedItemsList.tsx b/packages/react/src/components/SelectedItemsList/BaseSelectedItemsList.tsx
index c99bb16c583275..375989125400e2 100644
--- a/packages/react/src/components/SelectedItemsList/BaseSelectedItemsList.tsx
+++ b/packages/react/src/components/SelectedItemsList/BaseSelectedItemsList.tsx
@@ -15,7 +15,7 @@ export interface IBaseSelectedItemsListState {
export class BaseSelectedItemsList>
extends React.Component>
implements IBaseSelectedItemsList {
- protected root: HTMLElement;
+ protected root!: HTMLElement;
private _defaultSelection: Selection;
public static getDerivedStateFromProps(newProps: IBaseSelectedItemsListProps) {
diff --git a/packages/react/src/components/SelectedItemsList/SelectedPeopleList/Items/EditingItem.tsx b/packages/react/src/components/SelectedItemsList/SelectedPeopleList/Items/EditingItem.tsx
index 3fa980a1aca38c..1cd33cefc6922d 100644
--- a/packages/react/src/components/SelectedItemsList/SelectedPeopleList/Items/EditingItem.tsx
+++ b/packages/react/src/components/SelectedItemsList/SelectedPeopleList/Items/EditingItem.tsx
@@ -18,7 +18,7 @@ import type {
} from './EditingItem.types';
export class EditingItem extends React.Component {
- private _editingInput: HTMLInputElement;
+ private _editingInput!: HTMLInputElement;
private _editingFloatingPicker = React.createRef();
constructor(props: IEditingSelectedPeopleItemProps) {
diff --git a/packages/react/src/components/SelectedItemsList/SelectedPeopleList/SelectedPeopleList.tsx b/packages/react/src/components/SelectedItemsList/SelectedPeopleList/SelectedPeopleList.tsx
index 364ac5c489fb45..897c229e337331 100644
--- a/packages/react/src/components/SelectedItemsList/SelectedPeopleList/SelectedPeopleList.tsx
+++ b/packages/react/src/components/SelectedItemsList/SelectedPeopleList/SelectedPeopleList.tsx
@@ -126,8 +126,8 @@ export class SelectedPeopleList extends BasePeopleSelectedItemsList {
menuItems.push({
key: 'Edit',
text: this.props.editMenuItemText,
- onClick: (ev: React.MouseEvent, menuItem: IContextualMenuItem) => {
- this._beginEditing(menuItem.data);
+ onClick: (ev, menuItem) => {
+ this._beginEditing(menuItem!.data);
},
data: item,
});
@@ -137,8 +137,8 @@ export class SelectedPeopleList extends BasePeopleSelectedItemsList {
menuItems.push({
key: 'Remove',
text: this.props.removeMenuItemText,
- onClick: (ev: React.MouseEvent, menuItem: IContextualMenuItem) => {
- this.removeItem(menuItem.data as IExtendedPersonaProps);
+ onClick: (ev, menuItem) => {
+ this.removeItem(menuItem!.data as IExtendedPersonaProps);
},
data: item,
});
@@ -148,9 +148,9 @@ export class SelectedPeopleList extends BasePeopleSelectedItemsList {
menuItems.push({
key: 'Copy',
text: this.props.copyMenuItemText,
- onClick: (ev: React.MouseEvent, menuItem: IContextualMenuItem) => {
+ onClick: (ev, menuItem) => {
if (this.props.onCopyItems) {
- (this.copyItems as (items: IExtendedPersonaProps[]) => void)([menuItem.data] as IExtendedPersonaProps[]);
+ (this.copyItems as (items: IExtendedPersonaProps[]) => void)([menuItem!.data] as IExtendedPersonaProps[]);
}
},
data: item,
diff --git a/packages/react/src/components/Shimmer/Shimmer.base.tsx b/packages/react/src/components/Shimmer/Shimmer.base.tsx
index 5fdc21ef241506..2c0c7342fa807f 100644
--- a/packages/react/src/components/Shimmer/Shimmer.base.tsx
+++ b/packages/react/src/components/Shimmer/Shimmer.base.tsx
@@ -12,85 +12,83 @@ const getClassNames = classNamesFunction();
/**
* {@docCategory Shimmer}
*/
-export const ShimmerBase: React.FunctionComponent = React.forwardRef(
- (props, ref) => {
- const {
- styles,
- shimmerElements,
- children,
- width,
- className,
- customElementsGroup,
- theme,
- ariaLabel,
- shimmerColors,
- isDataLoaded = false,
- } = props;
+export const ShimmerBase = React.forwardRef((props, ref) => {
+ const {
+ styles,
+ shimmerElements,
+ children,
+ width,
+ className,
+ customElementsGroup,
+ theme,
+ ariaLabel,
+ shimmerColors,
+ isDataLoaded = false,
+ } = props;
- const divProps = getNativeProps>(props, divProperties);
+ const divProps = getNativeProps>(props, divProperties);
- const classNames: { [key in keyof IShimmerStyles]: string } = getClassNames(styles!, {
- theme: theme!,
- isDataLoaded,
- className,
- transitionAnimationInterval: TRANSITION_ANIMATION_INTERVAL,
- shimmerColor: shimmerColors && shimmerColors.shimmer,
- shimmerWaveColor: shimmerColors && shimmerColors.shimmerWave,
- });
+ const classNames: { [key in keyof IShimmerStyles]: string } = getClassNames(styles!, {
+ theme: theme!,
+ isDataLoaded,
+ className,
+ transitionAnimationInterval: TRANSITION_ANIMATION_INTERVAL,
+ shimmerColor: shimmerColors && shimmerColors.shimmer,
+ shimmerWaveColor: shimmerColors && shimmerColors.shimmerWave,
+ });
- const internalState = useConst({
- lastTimeoutId: 0,
- });
+ const internalState = useConst({
+ lastTimeoutId: 0,
+ });
- const { setTimeout, clearTimeout } = useSetTimeout();
+ const { setTimeout, clearTimeout } = useSetTimeout();
- /**
- * Flag for knowing when to remove the shimmerWrapper from the DOM.
- */
- const [contentLoaded, setContentLoaded] = React.useState(isDataLoaded);
+ /**
+ * Flag for knowing when to remove the shimmerWrapper from the DOM.
+ */
+ const [contentLoaded, setContentLoaded] = React.useState(isDataLoaded);
- const divStyleProp = { width: width ? width : '100%' };
+ const divStyleProp = { width: width ? width : '100%' };
- React.useEffect(() => {
- if (isDataLoaded !== contentLoaded) {
- if (isDataLoaded) {
- internalState.lastTimeoutId = setTimeout(() => {
- setContentLoaded(true);
- }, TRANSITION_ANIMATION_INTERVAL);
+ React.useEffect(() => {
+ if (isDataLoaded !== contentLoaded) {
+ if (isDataLoaded) {
+ internalState.lastTimeoutId = setTimeout(() => {
+ setContentLoaded(true);
+ }, TRANSITION_ANIMATION_INTERVAL);
- return () => clearTimeout(internalState.lastTimeoutId);
- } else {
- setContentLoaded(false);
- }
+ return () => clearTimeout(internalState.lastTimeoutId);
+ } else {
+ setContentLoaded(false);
}
- // eslint-disable-next-line react-hooks/exhaustive-deps -- Should only run when isDataLoaded changes.
- }, [isDataLoaded]);
+ }
+ // eslint-disable-next-line react-hooks/exhaustive-deps -- Should only run when isDataLoaded changes.
+ }, [isDataLoaded]);
- return (
-
- {!contentLoaded && (
-
-
- {customElementsGroup ? (
- customElementsGroup
- ) : (
-
- )}
-
- )}
- {children &&
{children}
}
- {ariaLabel && !isDataLoaded && (
-
- )}
-
- );
- },
-);
+ return (
+
+ {!contentLoaded && (
+
+
+ {customElementsGroup ? (
+ customElementsGroup
+ ) : (
+
+ )}
+
+ )}
+ {children &&
{children}
}
+ {ariaLabel && !isDataLoaded && (
+
+ )}
+
+ );
+}) as React.FunctionComponent;
ShimmerBase.displayName = COMPONENT_NAME;
diff --git a/packages/react/src/components/Stack/Stack.tsx b/packages/react/src/components/Stack/Stack.tsx
index 557901b936ea8c..2abe87335ff098 100644
--- a/packages/react/src/components/Stack/Stack.tsx
+++ b/packages/react/src/components/Stack/Stack.tsx
@@ -27,7 +27,6 @@ const StackView: IStackComponent['view'] = props => {
) {
stackChildren = stackChildren[0].props.children;
}
-
stackChildren = React.Children.map(stackChildren, (child: React.ReactElement, index: number) => {
if (!child) {
return null;
diff --git a/packages/react/src/components/TextField/TextField.base.tsx b/packages/react/src/components/TextField/TextField.base.tsx
index 067b47f647b239..225062bc0c68fd 100644
--- a/packages/react/src/components/TextField/TextField.base.tsx
+++ b/packages/react/src/components/TextField/TextField.base.tsx
@@ -80,7 +80,7 @@ export class TextFieldBase
private _latestValidateValue: string | undefined;
private _hasWarnedNullValue: boolean | undefined;
private _textElement = React.createRef();
- private _classNames: IProcessedStyleSet;
+ private _classNames!: IProcessedStyleSet;
private _async: Async;
/** Most recent value from a change or input event, to help avoid processing events twice */
private _lastChangeValue: string | undefined;
@@ -420,7 +420,10 @@ export class TextFieldBase
});
};
- private _onRenderLabel = (props: ITextFieldProps): JSX.Element | null => {
+ private _onRenderLabel = (
+ props: ITextFieldProps,
+ // defaultRender?: (props?: ITextFieldProps) => JSX.Element | null,
+ ): JSX.Element | null => {
const { label, required } = props;
// IProcessedStyleSet definition requires casting for what Label expects as its styles prop
const labelStyles = this._classNames.subComponentStyles
@@ -559,7 +562,7 @@ export class TextFieldBase
onBlur: this._onBlur,
};
- const defaultRender = (updatedInputProps: React.InputHTMLAttributes) => {
+ const defaultRender: ITextFieldProps['onRenderInput'] = updatedInputProps => {
return ;
};
const onRenderInput = this.props.onRenderInput || defaultRender;
diff --git a/packages/react/src/components/ThemeGenerator/ThemeRulesStandard.ts b/packages/react/src/components/ThemeGenerator/ThemeRulesStandard.ts
index d7b18f369cfac6..ac03a262be6fc4 100644
--- a/packages/react/src/components/ThemeGenerator/ThemeRulesStandard.ts
+++ b/packages/react/src/components/ThemeGenerator/ThemeRulesStandard.ts
@@ -62,29 +62,29 @@ export function themeRulesStandardCreator(): IThemeRules {
/*** BASE COLORS and their SHADES */
// iterate through each base slot and make the SlotRules for those
- mapEnumByName(BaseSlots, (baseSlot: string) => {
+ mapEnumByName(BaseSlots, baseSlot => {
// first make the SlotRule for the unshaded base Color
- slotRules[baseSlot] = {
- name: baseSlot,
+ slotRules[baseSlot!] = {
+ name: baseSlot!,
isCustomized: true,
dependentRules: [],
};
// then make a rule for each shade of this base color, but skip unshaded
- mapEnumByName(Shade, (shadeName: string, shadeValue: Shade) => {
+ mapEnumByName(Shade, (shadeName, shadeValue) => {
if (shadeName === Shade[Shade.Unshaded]) {
return;
}
- const inherits = slotRules[baseSlot];
+ const inherits = slotRules[baseSlot!];
const thisSlotRule = {
- name: baseSlot + shadeName,
- inherits: slotRules[baseSlot],
- asShade: shadeValue,
+ name: baseSlot! + shadeName,
+ inherits: slotRules[baseSlot!],
+ asShade: shadeValue as Shade,
isCustomized: false,
isBackgroundShade: baseSlot === BaseSlots[BaseSlots.backgroundColor] ? true : false,
dependentRules: [],
};
- slotRules[baseSlot + shadeName] = thisSlotRule;
+ slotRules[baseSlot! + shadeName] = thisSlotRule;
inherits.dependentRules.push(thisSlotRule);
return undefined;
diff --git a/packages/react/src/components/Toggle/Toggle.base.tsx b/packages/react/src/components/Toggle/Toggle.base.tsx
index d42b9808185f7d..8eb7d94658d1da 100644
--- a/packages/react/src/components/Toggle/Toggle.base.tsx
+++ b/packages/react/src/components/Toggle/Toggle.base.tsx
@@ -38,9 +38,9 @@ export const ToggleBase: React.FunctionComponent = React.forwardRe
controlledChecked,
defaultChecked,
React.useCallback(
- (ev: React.MouseEvent, isChecked: boolean) => {
+ (ev: React.MouseEvent, isChecked: boolean | undefined) => {
onChange?.(ev, isChecked);
- onChanged?.(isChecked);
+ onChanged?.(isChecked!);
},
[onChange, onChanged],
),
diff --git a/packages/react/src/components/Tooltip/Tooltip.base.tsx b/packages/react/src/components/Tooltip/Tooltip.base.tsx
index 1d66ca13921bcd..9a9315dab074e8 100644
--- a/packages/react/src/components/Tooltip/Tooltip.base.tsx
+++ b/packages/react/src/components/Tooltip/Tooltip.base.tsx
@@ -21,7 +21,7 @@ export class TooltipBase extends React.Component {
},
};
- private _classNames: IProcessedStyleSet;
+ private _classNames!: IProcessedStyleSet;
public render(): JSX.Element {
const {
diff --git a/packages/react/src/components/Tooltip/Tooltip.test.tsx b/packages/react/src/components/Tooltip/Tooltip.test.tsx
index f62e2d4cbf7251..ed609e848e0cdf 100644
--- a/packages/react/src/components/Tooltip/Tooltip.test.tsx
+++ b/packages/react/src/components/Tooltip/Tooltip.test.tsx
@@ -72,8 +72,8 @@ describe('Tooltip', () => {
const callout = component.find('Callout');
- Object.keys(calloutProps).forEach((key: keyof ICalloutProps) => {
- expect(callout.prop(key)).toEqual(calloutProps[key]);
+ Object.keys(calloutProps).forEach(key => {
+ expect(callout.prop(key)).toEqual(calloutProps[key as keyof ICalloutProps]);
});
expect(callout.prop('tabIndex')).toEqual(-1);
diff --git a/packages/react/src/components/Tooltip/TooltipHost.base.tsx b/packages/react/src/components/Tooltip/TooltipHost.base.tsx
index ed37f2400428ff..219f287f56dc3b 100644
--- a/packages/react/src/components/Tooltip/TooltipHost.base.tsx
+++ b/packages/react/src/components/Tooltip/TooltipHost.base.tsx
@@ -35,12 +35,12 @@ export class TooltipHostBase extends React.Component