1234567891011121314151617181920212223242526272829303132333435363738394041424344454647 |
- // @flow
-
- import { PureComponent } from 'react';
-
- export type Props = {
-
- /**
- * Color of the (initials based) avatar, if needed.
- */
- color?: string,
-
- /**
- * Initials to be used to render the initials based avatars.
- */
- initials?: string,
-
- /**
- * Callback to signal the failure of the loading of the URL.
- */
- onAvatarLoadError?: Function,
-
- /**
- * Expected size of the avatar.
- */
- size?: number;
-
- /**
- * The URL of the avatar to render.
- */
- url?: ?string | Object
- };
-
- /**
- * Implements an abstract stateless avatar component that renders an avatar purely from what gets passed through
- * props.
- */
- export default class AbstractStatelessAvatar<P: Props> extends PureComponent<P> {
- /**
- * Checks if the passed prop is a loaded icon or not.
- *
- * @param {string? | Object?} iconProp - The prop to check.
- * @returns {boolean}
- */
- _isIcon(iconProp: ?string | ?Object): boolean {
- return Boolean(iconProp) && (typeof iconProp === 'object' || typeof iconProp === 'function');
- }
- }
|