ngx-avatars
Version:
A universal avatar component for Angular applications that fetches / generates avatar based on the information you have about the user.
22 lines • 2.5 kB
JavaScript
import { AsyncSource } from './async-source';
import { AvatarSource } from './avatar-source.enum';
/**
* Instagram source implementation.
* Fetch avatar source based on instagram identifier
*/
export class Instagram extends AsyncSource {
constructor(sourceId) {
super(sourceId);
this.sourceType = AvatarSource.INSTAGRAM;
}
getAvatar() {
return `https://www.instagram.com/${this.sourceId}/?__a=1`;
}
/**
* extract instagram avatar from json data
*/
processResponse(data, size) {
return `${data.graphql.user.profile_pic_url_hd}&s=${size}`;
}
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5zdGFncmFtLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LWF2YXRhcnMvc3JjL2xpYi9zb3VyY2VzL2luc3RhZ3JhbS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDN0MsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBRXBEOzs7R0FHRztBQUNILE1BQU0sT0FBTyxTQUFVLFNBQVEsV0FBVztJQUd4QyxZQUFZLFFBQWdCO1FBQzFCLEtBQUssQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUhULGVBQVUsR0FBaUIsWUFBWSxDQUFDLFNBQVMsQ0FBQztJQUkzRCxDQUFDO0lBRU0sU0FBUztRQUNkLE9BQU8sNkJBQTZCLElBQUksQ0FBQyxRQUFRLFNBQVMsQ0FBQztJQUM3RCxDQUFDO0lBRUQ7O09BRUc7SUFDSSxlQUFlLENBQUMsSUFBMkQsRUFBRSxJQUFhO1FBQy9GLE9BQU8sR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxrQkFBa0IsTUFBTSxJQUFJLEVBQUUsQ0FBQztJQUM3RCxDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBc3luY1NvdXJjZSB9IGZyb20gJy4vYXN5bmMtc291cmNlJztcclxuaW1wb3J0IHsgQXZhdGFyU291cmNlIH0gZnJvbSAnLi9hdmF0YXItc291cmNlLmVudW0nO1xyXG5cclxuLyoqXHJcbiAqICBJbnN0YWdyYW0gc291cmNlIGltcGxlbWVudGF0aW9uLlxyXG4gKiAgRmV0Y2ggYXZhdGFyIHNvdXJjZSBiYXNlZCBvbiBpbnN0YWdyYW0gaWRlbnRpZmllclxyXG4gKi9cclxuZXhwb3J0IGNsYXNzIEluc3RhZ3JhbSBleHRlbmRzIEFzeW5jU291cmNlIHtcclxuICByZWFkb25seSBzb3VyY2VUeXBlOiBBdmF0YXJTb3VyY2UgPSBBdmF0YXJTb3VyY2UuSU5TVEFHUkFNO1xyXG5cclxuICBjb25zdHJ1Y3Rvcihzb3VyY2VJZDogc3RyaW5nKSB7XHJcbiAgICBzdXBlcihzb3VyY2VJZCk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZ2V0QXZhdGFyKCk6IHN0cmluZyB7XHJcbiAgICByZXR1cm4gYGh0dHBzOi8vd3d3Lmluc3RhZ3JhbS5jb20vJHt0aGlzLnNvdXJjZUlkfS8/X19hPTFgO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogZXh0cmFjdCBpbnN0YWdyYW0gYXZhdGFyIGZyb20ganNvbiBkYXRhXHJcbiAgICovXHJcbiAgcHVibGljIHByb2Nlc3NSZXNwb25zZShkYXRhOiB7IGdyYXBocWw6IHsgdXNlcjogeyBwcm9maWxlX3BpY191cmxfaGQ6IHN0cmluZyB9IH0gfSwgc2l6ZT86IG51bWJlcik6IHN0cmluZyB7XHJcbiAgICByZXR1cm4gYCR7ZGF0YS5ncmFwaHFsLnVzZXIucHJvZmlsZV9waWNfdXJsX2hkfSZzPSR7c2l6ZX1gO1xyXG4gIH1cclxufVxyXG4iXX0=