ngx-avatar-2
Version:
A universal avatar component for Angular applications that fetches / generates avatar based on the information you have about the user.
44 lines • 6.31 kB
JavaScript
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';
import * as i0 from "@angular/core";
/**
* Factory class that implements factory method pattern.
* Used to create Source implementation class based
* on the source Type
*/
export class SourceFactory {
sources = {};
constructor() {
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);
}
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.11", ngImport: i0, type: SourceFactory, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.11", ngImport: i0, type: SourceFactory });
}
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.11", ngImport: i0, type: SourceFactory, decorators: [{
type: Injectable
}], ctorParameters: function () { return []; } });
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic291cmNlLmZhY3RvcnkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtYXZhdGFyLTIvc3JjL2xpYi9zb3VyY2VzL3NvdXJjZS5mYWN0b3J5LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFM0MsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLFlBQVksQ0FBQztBQUN0QyxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sV0FBVyxDQUFDO0FBQ3BDLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxVQUFVLENBQUM7QUFDbEMsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUN4QyxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sVUFBVSxDQUFDO0FBQ2xDLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxZQUFZLENBQUM7QUFDdEMsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLFlBQVksQ0FBQztBQUN0QyxPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0sU0FBUyxDQUFDO0FBQ2hDLE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSxTQUFTLENBQUM7QUFDaEMsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUN4QyxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sVUFBVSxDQUFDO0FBRWxDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQzs7QUFFcEQ7Ozs7R0FJRztBQUVILE1BQU0sT0FBTyxhQUFhO0lBQ2hCLE9BQU8sR0FBcUMsRUFBRSxDQUFDO0lBRXZEO1FBQ0UsSUFBSSxDQUFDLE9BQU8sQ0FBQyxZQUFZLENBQUMsUUFBUSxDQUFDLEdBQUcsUUFBUSxDQUFDO1FBQy9DLElBQUksQ0FBQyxPQUFPLENBQUMsWUFBWSxDQUFDLE9BQU8sQ0FBQyxHQUFHLE9BQU8sQ0FBQztRQUM3QyxJQUFJLENBQUMsT0FBTyxDQUFDLFlBQVksQ0FBQyxNQUFNLENBQUMsR0FBRyxNQUFNLENBQUM7UUFDM0MsSUFBSSxDQUFDLE9BQU8sQ0FBQyxZQUFZLENBQUMsU0FBUyxDQUFDLEdBQUcsU0FBUyxDQUFDO1FBQ2pELElBQUksQ0FBQyxPQUFPLENBQUMsWUFBWSxDQUFDLEtBQUssQ0FBQyxHQUFHLEtBQUssQ0FBQztRQUN6QyxJQUFJLENBQUMsT0FBTyxDQUFDLFlBQVksQ0FBQyxRQUFRLENBQUMsR0FBRyxRQUFRLENBQUM7UUFDL0MsSUFBSSxDQUFDLE9BQU8sQ0FBQyxZQUFZLENBQUMsTUFBTSxDQUFDLEdBQUcsTUFBTSxDQUFDO1FBQzNDLElBQUksQ0FBQyxPQUFPLENBQUMsWUFBWSxDQUFDLFFBQVEsQ0FBQyxHQUFHLFFBQVEsQ0FBQztRQUMvQyxJQUFJLENBQUMsT0FBTyxDQUFDLFlBQVksQ0FBQyxLQUFLLENBQUMsR0FBRyxLQUFLLENBQUM7UUFDekMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxZQUFZLENBQUMsU0FBUyxDQUFDLEdBQUcsU0FBUyxDQUFDO1FBQ2pELElBQUksQ0FBQyxPQUFPLENBQUMsWUFBWSxDQUFDLE1BQU0sQ0FBQyxHQUFHLE1BQU0sQ0FBQztJQUM3QyxDQUFDO0lBRU0sV0FBVyxDQUFDLFVBQXdCLEVBQUUsV0FBbUI7UUFDOUQsT0FBTyxJQUFJLElBQUksQ0FBQyxPQUFPLENBQUMsVUFBVSxDQUFDLENBQUMsV0FBVyxDQUFDLENBQUM7SUFDbkQsQ0FBQzt3R0FuQlUsYUFBYTs0R0FBYixhQUFhOzs0RkFBYixhQUFhO2tCQUR6QixVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgU291cmNlIH0gZnJvbSAnLi9zb3VyY2UnO1xuaW1wb3J0IHsgRmFjZWJvb2sgfSBmcm9tICcuL2ZhY2Vib29rJztcbmltcG9ydCB7IFR3aXR0ZXIgfSBmcm9tICcuL3R3aXR0ZXInO1xuaW1wb3J0IHsgR29vZ2xlIH0gZnJvbSAnLi9nb29nbGUnO1xuaW1wb3J0IHsgSW5zdGFncmFtIH0gZnJvbSAnLi9pbnN0YWdyYW0nO1xuaW1wb3J0IHsgQ3VzdG9tIH0gZnJvbSAnLi9jdXN0b20nO1xuaW1wb3J0IHsgSW5pdGlhbHMgfSBmcm9tICcuL2luaXRpYWxzJztcbmltcG9ydCB7IEdyYXZhdGFyIH0gZnJvbSAnLi9ncmF2YXRhcic7XG5pbXBvcnQgeyBTa3lwZSB9IGZyb20gJy4vc2t5cGUnO1xuaW1wb3J0IHsgVmFsdWUgfSBmcm9tICcuL3ZhbHVlJztcbmltcG9ydCB7IFZrb250YWt0ZSB9IGZyb20gJy4vdmtvbnRha3RlJztcbmltcG9ydCB7IEdpdGh1YiB9IGZyb20gJy4vZ2l0aHViJztcbmltcG9ydCB7IFNvdXJjZUNyZWF0b3IgfSBmcm9tICcuL3NvdXJjZS5jcmVhdG9yJztcbmltcG9ydCB7IEF2YXRhclNvdXJjZSB9IGZyb20gJy4vYXZhdGFyLXNvdXJjZS5lbnVtJztcblxuLyoqXG4gKiBGYWN0b3J5IGNsYXNzIHRoYXQgaW1wbGVtZW50cyBmYWN0b3J5IG1ldGhvZCBwYXR0ZXJuLlxuICogVXNlZCB0byBjcmVhdGUgU291cmNlIGltcGxlbWVudGF0aW9uIGNsYXNzIGJhc2VkXG4gKiBvbiB0aGUgc291cmNlIFR5cGVcbiAqL1xuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIFNvdXJjZUZhY3Rvcnkge1xuICBwcml2YXRlIHNvdXJjZXM6IHsgW2tleTogc3RyaW5nXTogU291cmNlQ3JlYXRvciB9ID0ge307XG5cbiAgY29uc3RydWN0b3IoKSB7XG4gICAgdGhpcy5zb3VyY2VzW0F2YXRhclNvdXJjZS5GQUNFQk9PS10gPSBGYWNlYm9vaztcbiAgICB0aGlzLnNvdXJjZXNbQXZhdGFyU291cmNlLlRXSVRURVJdID0gVHdpdHRlcjtcbiAgICB0aGlzLnNvdXJjZXNbQXZhdGFyU291cmNlLkdPT0dMRV0gPSBHb29nbGU7XG4gICAgdGhpcy5zb3VyY2VzW0F2YXRhclNvdXJjZS5JTlNUQUdSQU1dID0gSW5zdGFncmFtO1xuICAgIHRoaXMuc291cmNlc1tBdmF0YXJTb3VyY2UuU0tZUEVdID0gU2t5cGU7XG4gICAgdGhpcy5zb3VyY2VzW0F2YXRhclNvdXJjZS5HUkFWQVRBUl0gPSBHcmF2YXRhcjtcbiAgICB0aGlzLnNvdXJjZXNbQXZhdGFyU291cmNlLkNVU1RPTV0gPSBDdXN0b207XG4gICAgdGhpcy5zb3VyY2VzW0F2YXRhclNvdXJjZS5JTklUSUFMU10gPSBJbml0aWFscztcbiAgICB0aGlzLnNvdXJjZXNbQXZhdGFyU291cmNlLlZBTFVFXSA9IFZhbHVlO1xuICAgIHRoaXMuc291cmNlc1tBdmF0YXJTb3VyY2UuVktPTlRBS1RFXSA9IFZrb250YWt0ZTtcbiAgICB0aGlzLnNvdXJjZXNbQXZhdGFyU291cmNlLkdJVEhVQl0gPSBHaXRodWI7XG4gIH1cblxuICBwdWJsaWMgbmV3SW5zdGFuY2Uoc291cmNlVHlwZTogQXZhdGFyU291cmNlLCBzb3VyY2VWYWx1ZTogc3RyaW5nKTogU291cmNlIHtcbiAgICByZXR1cm4gbmV3IHRoaXMuc291cmNlc1tzb3VyY2VUeXBlXShzb3VyY2VWYWx1ZSk7XG4gIH1cbn1cbiJdfQ==