UNPKG

ngx-avatar

Version:

A universal avatar component for Angular applications that fetches / generates avatar based on the information you have about the user.

42 lines 5.81 kB
import { Injectable } from '@angular/core'; import { Facebook } from './facebook'; import { Twitter } from './twitter'; import { Google } from './google'; import { Instagram } from './instagram'; import { Custom } from './custom'; import { Initials } from './initials'; import { Gravatar } from './gravatar'; import { Skype } from './skype'; import { Value } from './value'; import { Vkontakte } from './vkontakte'; import { Github } from './github'; import { AvatarSource } from './avatar-source.enum'; /** * Factory class that implements factory method pattern. * Used to create Source implementation class based * on the source Type */ export class SourceFactory { constructor() { this.sources = {}; this.sources[AvatarSource.FACEBOOK] = Facebook; this.sources[AvatarSource.TWITTER] = Twitter; this.sources[AvatarSource.GOOGLE] = Google; this.sources[AvatarSource.INSTAGRAM] = Instagram; this.sources[AvatarSource.SKYPE] = Skype; this.sources[AvatarSource.GRAVATAR] = Gravatar; this.sources[AvatarSource.CUSTOM] = Custom; this.sources[AvatarSource.INITIALS] = Initials; this.sources[AvatarSource.VALUE] = Value; this.sources[AvatarSource.VKONTAKTE] = Vkontakte; this.sources[AvatarSource.GITHUB] = Github; } newInstance(sourceType, sourceValue) { return new this.sources[sourceType](sourceValue); } } SourceFactory.decorators = [ { type: Injectable } ]; SourceFactory.ctorParameters = () => []; //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic291cmNlLmZhY3RvcnkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtYXZhdGFyL3NyYy9saWIvc291cmNlcy9zb3VyY2UuZmFjdG9yeS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRTNDLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxZQUFZLENBQUM7QUFDdEMsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLFdBQVcsQ0FBQztBQUNwQyxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sVUFBVSxDQUFDO0FBQ2xDLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFDeEMsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLFVBQVUsQ0FBQztBQUNsQyxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sWUFBWSxDQUFDO0FBQ3RDLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxZQUFZLENBQUM7QUFDdEMsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLFNBQVMsQ0FBQztBQUNoQyxPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0sU0FBUyxDQUFDO0FBQ2hDLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFDeEMsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLFVBQVUsQ0FBQztBQUVsQyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFFcEQ7Ozs7R0FJRztBQUVILE1BQU0sT0FBTyxhQUFhO0lBR3hCO1FBRlEsWUFBTyxHQUFxQyxFQUFFLENBQUM7UUFHckQsSUFBSSxDQUFDLE9BQU8sQ0FBQyxZQUFZLENBQUMsUUFBUSxDQUFDLEdBQUcsUUFBUSxDQUFDO1FBQy9DLElBQUksQ0FBQyxPQUFPLENBQUMsWUFBWSxDQUFDLE9BQU8sQ0FBQyxHQUFHLE9BQU8sQ0FBQztRQUM3QyxJQUFJLENBQUMsT0FBTyxDQUFDLFlBQVksQ0FBQyxNQUFNLENBQUMsR0FBRyxNQUFNLENBQUM7UUFDM0MsSUFBSSxDQUFDLE9BQU8sQ0FBQyxZQUFZLENBQUMsU0FBUyxDQUFDLEdBQUcsU0FBUyxDQUFDO1FBQ2pELElBQUksQ0FBQyxPQUFPLENBQUMsWUFBWSxDQUFDLEtBQUssQ0FBQyxHQUFHLEtBQUssQ0FBQztRQUN6QyxJQUFJLENBQUMsT0FBTyxDQUFDLFlBQVksQ0FBQyxRQUFRLENBQUMsR0FBRyxRQUFRLENBQUM7UUFDL0MsSUFBSSxDQUFDLE9BQU8sQ0FBQyxZQUFZLENBQUMsTUFBTSxDQUFDLEdBQUcsTUFBTSxDQUFDO1FBQzNDLElBQUksQ0FBQyxPQUFPLENBQUMsWUFBWSxDQUFDLFFBQVEsQ0FBQyxHQUFHLFFBQVEsQ0FBQztRQUMvQyxJQUFJLENBQUMsT0FBTyxDQUFDLFlBQVksQ0FBQyxLQUFLLENBQUMsR0FBRyxLQUFLLENBQUM7UUFDekMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxZQUFZLENBQUMsU0FBUyxDQUFDLEdBQUcsU0FBUyxDQUFDO1FBQ2pELElBQUksQ0FBQyxPQUFPLENBQUMsWUFBWSxDQUFDLE1BQU0sQ0FBQyxHQUFHLE1BQU0sQ0FBQztJQUM3QyxDQUFDO0lBRU0sV0FBVyxDQUFDLFVBQXdCLEVBQUUsV0FBbUI7UUFDOUQsT0FBTyxJQUFJLElBQUksQ0FBQyxPQUFPLENBQUMsVUFBVSxDQUFDLENBQUMsV0FBVyxDQUFDLENBQUM7SUFDbkQsQ0FBQzs7O1lBcEJGLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBTb3VyY2UgfSBmcm9tICcuL3NvdXJjZSc7XG5pbXBvcnQgeyBGYWNlYm9vayB9IGZyb20gJy4vZmFjZWJvb2snO1xuaW1wb3J0IHsgVHdpdHRlciB9IGZyb20gJy4vdHdpdHRlcic7XG5pbXBvcnQgeyBHb29nbGUgfSBmcm9tICcuL2dvb2dsZSc7XG5pbXBvcnQgeyBJbnN0YWdyYW0gfSBmcm9tICcuL2luc3RhZ3JhbSc7XG5pbXBvcnQgeyBDdXN0b20gfSBmcm9tICcuL2N1c3RvbSc7XG5pbXBvcnQgeyBJbml0aWFscyB9IGZyb20gJy4vaW5pdGlhbHMnO1xuaW1wb3J0IHsgR3JhdmF0YXIgfSBmcm9tICcuL2dyYXZhdGFyJztcbmltcG9ydCB7IFNreXBlIH0gZnJvbSAnLi9za3lwZSc7XG5pbXBvcnQgeyBWYWx1ZSB9IGZyb20gJy4vdmFsdWUnO1xuaW1wb3J0IHsgVmtvbnRha3RlIH0gZnJvbSAnLi92a29udGFrdGUnO1xuaW1wb3J0IHsgR2l0aHViIH0gZnJvbSAnLi9naXRodWInO1xuaW1wb3J0IHsgU291cmNlQ3JlYXRvciB9IGZyb20gJy4vc291cmNlLmNyZWF0b3InO1xuaW1wb3J0IHsgQXZhdGFyU291cmNlIH0gZnJvbSAnLi9hdmF0YXItc291cmNlLmVudW0nO1xuXG4vKipcbiAqIEZhY3RvcnkgY2xhc3MgdGhhdCBpbXBsZW1lbnRzIGZhY3RvcnkgbWV0aG9kIHBhdHRlcm4uXG4gKiBVc2VkIHRvIGNyZWF0ZSBTb3VyY2UgaW1wbGVtZW50YXRpb24gY2xhc3MgYmFzZWRcbiAqIG9uIHRoZSBzb3VyY2UgVHlwZVxuICovXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgU291cmNlRmFjdG9yeSB7XG4gIHByaXZhdGUgc291cmNlczogeyBba2V5OiBzdHJpbmddOiBTb3VyY2VDcmVhdG9yIH0gPSB7fTtcblxuICBjb25zdHJ1Y3RvcigpIHtcbiAgICB0aGlzLnNvdXJjZXNbQXZhdGFyU291cmNlLkZBQ0VCT09LXSA9IEZhY2Vib29rO1xuICAgIHRoaXMuc291cmNlc1tBdmF0YXJTb3VyY2UuVFdJVFRFUl0gPSBUd2l0dGVyO1xuICAgIHRoaXMuc291cmNlc1tBdmF0YXJTb3VyY2UuR09PR0xFXSA9IEdvb2dsZTtcbiAgICB0aGlzLnNvdXJjZXNbQXZhdGFyU291cmNlLklOU1RBR1JBTV0gPSBJbnN0YWdyYW07XG4gICAgdGhpcy5zb3VyY2VzW0F2YXRhclNvdXJjZS5TS1lQRV0gPSBTa3lwZTtcbiAgICB0aGlzLnNvdXJjZXNbQXZhdGFyU291cmNlLkdSQVZBVEFSXSA9IEdyYXZhdGFyO1xuICAgIHRoaXMuc291cmNlc1tBdmF0YXJTb3VyY2UuQ1VTVE9NXSA9IEN1c3RvbTtcbiAgICB0aGlzLnNvdXJjZXNbQXZhdGFyU291cmNlLklOSVRJQUxTXSA9IEluaXRpYWxzO1xuICAgIHRoaXMuc291cmNlc1tBdmF0YXJTb3VyY2UuVkFMVUVdID0gVmFsdWU7XG4gICAgdGhpcy5zb3VyY2VzW0F2YXRhclNvdXJjZS5WS09OVEFLVEVdID0gVmtvbnRha3RlO1xuICAgIHRoaXMuc291cmNlc1tBdmF0YXJTb3VyY2UuR0lUSFVCXSA9IEdpdGh1YjtcbiAgfVxuXG4gIHB1YmxpYyBuZXdJbnN0YW5jZShzb3VyY2VUeXBlOiBBdmF0YXJTb3VyY2UsIHNvdXJjZVZhbHVlOiBzdHJpbmcpOiBTb3VyY2Uge1xuICAgIHJldHVybiBuZXcgdGhpcy5zb3VyY2VzW3NvdXJjZVR5cGVdKHNvdXJjZVZhbHVlKTtcbiAgfVxufVxuIl19