UNPKG

ngx-letters-avatar

Version:

Angular package that generates avatar with the initial letters of the provided name

102 lines 13.5 kB
import { __decorate } from "tslib"; import { Component, Input } from '@angular/core'; var LettersAvatarComponent = /** @class */ (function () { function LettersAvatarComponent() { this.avatarName = ""; this.className = ""; this.fontFamily = "arial"; this.circular = false; } LettersAvatarComponent.prototype.ngOnInit = function () { if (!this.width && !this.height) this.width = 60; }; LettersAvatarComponent.prototype.ngAfterViewInit = function () { this.drawAvatar(); }; LettersAvatarComponent.prototype.drawAvatar = function () { var image = document.getElementById("avatar-img"), name = this.avatarName; image.id = this.id ? this.id : this.avatarName.replace(/\s/g, "") + "Avatar"; image.setAttribute('alt', name + " avatar"); image.setAttribute('width', (this.width ? this.width : this.height) + "px"); image.setAttribute('height', (this.height ? this.height : this.width) + "px"); image.setAttribute('class', this.className); if (this.circular) image.style.borderRadius = "50%"; if (this.borderRadius) image.style.borderRadius = this.borderRadius + "px"; if (this.src) image.setAttribute('src', this.src); else image.setAttribute('src', this.createCanvasURI(name)); }; LettersAvatarComponent.prototype.createCanvasURI = function (name) { if (name === void 0) { name = ""; } var colours = [ "#1abc9c", "#2ecc71", "#3498db", "#9b59b6", "#34495e", "#f7ca18", "#f15a22", "#1ba39c", "#2abb9b", "#1f3a93", "#96281b", "#e67e22", "#e74c3c", "#ecf0f1", "#95a5a6", "#f39c12", "#d35400", "#c0392b", "#22a7f0", "#2c3e50" ], nameSplit = String(name).toUpperCase().split(' '), size = this.width, initials, charIndex, colourIndex, canvas, context, dataURI; if (nameSplit.length < 2) initials = nameSplit[0] ? nameSplit[0].charAt(0) : '?'; else initials = nameSplit[0].charAt(0) + nameSplit[1].charAt(0); if (window.devicePixelRatio) size = size * window.devicePixelRatio; charIndex = (initials == '?' ? 72 : initials.charCodeAt(0)) - 64; colourIndex = charIndex % 20; canvas = document.createElement('canvas'); canvas.width = size; canvas.height = size; context = canvas.getContext("2d"); context.fillStyle = colours[colourIndex - 1]; context.fillRect(0, 0, canvas.width, canvas.height); context.font = Math.round(canvas.width / 2.7) + "px " + this.fontFamily; context.textAlign = "center"; context.fillStyle = "#FFF"; context.textBaseline = "middle"; initials = initials.split("").join(String.fromCharCode(8202)); context.fillText(initials, size / 2, size / 1.85); dataURI = canvas.toDataURL(); canvas = null; return dataURI; }; __decorate([ Input('width') ], LettersAvatarComponent.prototype, "width", void 0); __decorate([ Input('height') ], LettersAvatarComponent.prototype, "height", void 0); __decorate([ Input('avatarName') ], LettersAvatarComponent.prototype, "avatarName", void 0); __decorate([ Input('src') ], LettersAvatarComponent.prototype, "src", void 0); __decorate([ Input('className') ], LettersAvatarComponent.prototype, "className", void 0); __decorate([ Input('fontFamily') ], LettersAvatarComponent.prototype, "fontFamily", void 0); __decorate([ Input('circular') ], LettersAvatarComponent.prototype, "circular", void 0); __decorate([ Input('borderRadius') ], LettersAvatarComponent.prototype, "borderRadius", void 0); __decorate([ Input('id') ], LettersAvatarComponent.prototype, "id", void 0); LettersAvatarComponent = __decorate([ Component({ selector: 'ngx-letters-avatar', template: "<img id=\"avatar-img\">", styles: [":host{display:inline-flex}"] }) ], LettersAvatarComponent); return LettersAvatarComponent; }()); export { LettersAvatarComponent }; //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGV0dGVycy1hdmF0YXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Im5nOi8vbmd4LWxldHRlcnMtYXZhdGFyLyIsInNvdXJjZXMiOlsic3JjL2FwcC9tb2R1bGVzL2xldHRlcnMtYXZhdGFyL2xldHRlcnMtYXZhdGFyLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLFNBQVMsRUFBVSxLQUFLLEVBQWlCLE1BQU0sZUFBZSxDQUFDO0FBT3hFO0lBV0U7UUFScUIsZUFBVSxHQUFHLEVBQUUsQ0FBQztRQUVqQixjQUFTLEdBQUcsRUFBRSxDQUFDO1FBQ2QsZUFBVSxHQUFHLE9BQU8sQ0FBQztRQUN2QixhQUFRLEdBQUcsS0FBSyxDQUFDO0lBSXBCLENBQUM7SUFFakIseUNBQVEsR0FBUjtRQUNFLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU07WUFBRSxJQUFJLENBQUMsS0FBSyxHQUFHLEVBQUUsQ0FBQztJQUNuRCxDQUFDO0lBRUQsZ0RBQWUsR0FBZjtRQUNFLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQztJQUNwQixDQUFDO0lBRUQsMkNBQVUsR0FBVjtRQUNFLElBQUksS0FBSyxHQUFHLFFBQVEsQ0FBQyxjQUFjLENBQUMsWUFBWSxDQUFDLEVBQy9DLElBQUksR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDO1FBRXpCLEtBQUssQ0FBQyxFQUFFLEdBQUcsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxPQUFPLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxHQUFHLFFBQVEsQ0FBQztRQUM3RSxLQUFLLENBQUMsWUFBWSxDQUFDLEtBQUssRUFBSyxJQUFJLFlBQVMsQ0FBQyxDQUFDO1FBQzVDLEtBQUssQ0FBQyxZQUFZLENBQUMsT0FBTyxFQUFFLENBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLE1BQU0sUUFBSSxDQUFDLENBQUM7UUFDMUUsS0FBSyxDQUFDLFlBQVksQ0FBQyxRQUFRLEVBQUUsQ0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsS0FBSyxRQUFJLENBQUMsQ0FBQztRQUM1RSxLQUFLLENBQUMsWUFBWSxDQUFDLE9BQU8sRUFBRSxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUM7UUFDNUMsSUFBSSxJQUFJLENBQUMsUUFBUTtZQUFFLEtBQUssQ0FBQyxLQUFLLENBQUMsWUFBWSxHQUFHLEtBQUssQ0FBQztRQUNwRCxJQUFJLElBQUksQ0FBQyxZQUFZO1lBQUUsS0FBSyxDQUFDLEtBQUssQ0FBQyxZQUFZLEdBQU0sSUFBSSxDQUFDLFlBQVksT0FBSSxDQUFDO1FBQzNFLElBQUksSUFBSSxDQUFDLEdBQUc7WUFBRSxLQUFLLENBQUMsWUFBWSxDQUFDLEtBQUssRUFBRSxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7O1lBQzdDLEtBQUssQ0FBQyxZQUFZLENBQUMsS0FBSyxFQUFFLElBQUksQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQztJQUM3RCxDQUFDO0lBRUQsZ0RBQWUsR0FBZixVQUFnQixJQUFTO1FBQVQscUJBQUEsRUFBQSxTQUFTO1FBQ3ZCLElBQUksT0FBTyxHQUFHO1lBQ1osU0FBUyxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFFLFNBQVM7WUFDckQsU0FBUyxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFFLFNBQVM7WUFDckQsU0FBUyxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFFLFNBQVM7WUFDckQsU0FBUyxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFFLFNBQVM7U0FDdEQsRUFDQyxTQUFTLEdBQUcsTUFBTSxD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QUFDO3NEQUFZO0lBVGIsc0JBQXNCO1FBTGxDLFNBQVMsQ0FBQztZQUNULFFBQVEsRUFBRSxvQkFBb0I7WUFDOUIsbUNBQThDOztTQUUvQyxDQUFDO09BQ1csc0JBQXNCLENBMkVsQztJQUFELDZCQUFDO0NBQUEsQUEzRUQsSUEyRUM7U0EzRVksc0JBQXNCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBPbkluaXQsIElucHV0LCBBZnRlclZpZXdJbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ25neC1sZXR0ZXJzLWF2YXRhcicsXG4gIHRlbXBsYXRlVXJsOiAnLi9sZXR0ZXJzLWF2YXRhci5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2xldHRlcnMtYXZhdGFyLmNvbXBvbmVudC5jc3MnXVxufSlcbmV4cG9ydCBjbGFzcyBMZXR0ZXJzQXZhdGFyQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBBZnRlclZpZXdJbml0IHtcbiAgQElucHV0KCd3aWR0aCcpIHdpZHRoOiBudW1iZXI7XG4gIEBJbnB1dCgnaGVpZ2h0JykgaGVpZ2h0OiBudW1iZXI7XG4gIEBJbnB1dCgnYXZhdGFyTmFtZScpIGF2YXRhck5hbWUgPSBcIlwiO1xuICBASW5wdXQoJ3NyYycpIHNyYzogc3RyaW5nO1xuICBASW5wdXQoJ2NsYXNzTmFtZScpIGNsYXNzTmFtZSA9IFwiXCI7XG4gIEBJbnB1dCgnZm9udEZhbWlseScpIGZvbnRGYW1pbHkgPSBcImFyaWFsXCI7XG4gIEBJbnB1dCgnY2lyY3VsYXInKSBjaXJjdWxhciA9IGZhbHNlO1xuICBASW5wdXQoJ2JvcmRlclJhZGl1cycpIGJvcmRlclJhZGl1czogbnVtYmVyO1xuICBASW5wdXQoJ2lkJykgaWQ6IHN0cmluZztcblxuICBjb25zdHJ1Y3RvcigpIHsgfVxuXG4gIG5nT25Jbml0KCkge1xuICAgIGlmICghdGhpcy53aWR0aCAmJiAhdGhpcy5oZWlnaHQpIHRoaXMud2lkdGggPSA2MDtcbiAgfVxuXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpIHtcbiAgICB0aGlzLmRyYXdBdmF0YXIoKTtcbiAgfVxuXG4gIGRyYXdBdmF0YXIoKSB7XG4gICAgbGV0IGltYWdlID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoXCJhdmF0YXItaW1nXCIpLFxuICAgICAgbmFtZSA9IHRoaXMuYXZhdGFyTmFtZTtcblxuICAgIGltYWdlLmlkID0gdGhpcy5pZCA/IHRoaXMuaWQgOiB0aGlzLmF2YXRhck5hbWUucmVwbGFjZSgvXFxzL2csIFwiXCIpICsgXCJBdmF0YXJcIjtcbiAgICBpbWFnZS5zZXRBdHRyaWJ1dGUoJ2FsdCcsIGAke25hbWV9IGF2YXRhcmApO1xuICAgIGltYWdlLnNldEF0dHJpYnV0ZSgnd2lkdGgnLCBgJHt0aGlzLndpZHRoID8gdGhpcy53aWR0aCA6IHRoaXMuaGVpZ2h0fXB4YCk7XG4gICAgaW1hZ2Uuc2V0QXR0cmlidXRlKCdoZWlnaHQnLCBgJHt0aGlzLmhlaWdodCA/IHRoaXMuaGVpZ2h0IDogdGhpcy53aWR0aH1weGApO1xuICAgIGltYWdlLnNldEF0dHJpYnV0ZSgnY2xhc3MnLCB0aGlzLmNsYXNzTmFtZSk7XG4gICAgaWYgKHRoaXMuY2lyY3VsYXIpIGltYWdlLnN0eWxlLmJvcmRlclJhZGl1cyA9IFwiNTAlXCI7XG4gICAgaWYgKHRoaXMuYm9yZGVyUmFkaXVzKSBpbWFnZS5zdHlsZS5ib3JkZXJSYWRpdXMgPSBgJHt0aGlzLmJvcmRlclJhZGl1c31weGA7XG4gICAgaWYgKHRoaXMuc3JjKSBpbWFnZS5zZXRBdHRyaWJ1dGUoJ3NyYycsIHRoaXMuc3JjKTtcbiAgICBlbHNlIGltYWdlLnNldEF0dHJpYnV0ZSgnc3JjJywgdGhpcy5jcmVhdGVDYW52YXNVUkkobmFtZSkpO1xuICB9XG5cbiAgY3JlYXRlQ2FudmFzVVJJKG5hbWUgPSBcIlwiKSB7XG4gICAgbGV0IGNvbG91cnMgPSBbXG4gICAgICBcIiMxYWJjOWNcIiwgXCIjMmVjYzcxXCIsIFwiIzM0OThkYlwiLCBcIiM5YjU5YjZcIiwgXCIjMzQ0OTVlXCIsXG4gICAgICBcIiNmN2NhMThcIiwgXCIjZjE1YTIyXCIsIFwiIzFiYTM5Y1wiLCBcIiMyYWJiOWJcIiwgXCIjMWYzYTkzXCIsXG4gICAgICBcIiM5NjI4MWJcIiwgXCIjZTY3ZTIyXCIsIFwiI2U3NGMzY1wiLCBcIiNlY2YwZjFcIiwgXCIjOTVhNWE2XCIsXG4gICAgICBcIiNmMzljMTJcIiwgXCIjZDM1NDAwXCIsIFwiI2MwMzkyYlwiLCBcIiMyMmE3ZjBcIiwgXCIjMmMzZTUwXCJcbiAgICBdLFxuICAgICAgbmFtZVNwbGl0ID0gU3RyaW5nKG5hbWUpLnRvVXBwZXJDYXNlKCkuc3BsaXQoJyAnKSxcbiAgICAgIHNpemUgPSB0aGlzLndpZHRoLCBpbml0aWFscywgY2hhckluZGV4LCBjb2xvdXJJbmRleCwgY2FudmFzLCBjb250ZXh0LCBkYXRhVVJJO1xuXG5cbiAgICBpZiAobmFtZVNwbGl0Lmxlbmd0aCA8IDIpIGluaXRpYWxzID0gbmFtZVNwbGl0WzBdID8gbmFtZVNwbGl0WzBdLmNoYXJBdCgwKSA6ICc/JztcbiAgICBlbHNlIGluaXRpYWxzID0gbmFtZVNwbGl0WzBdLmNoYXJBdCgwKSArIG5hbWVTcGxpdFsxXS5jaGFyQXQoMCk7XG5cbiAgICBpZiAod2luZG93LmRldmljZVBpeGVsUmF0aW8pIHNpemUgPSBzaXplICogd2luZG93LmRldmljZVBpeGVsUmF0aW87XG5cbiAgICBjaGFySW5kZXggPSAoaW5pdGlhbHMgPT0gJz8nID8gNzIgOiBpbml0aWFscy5jaGFyQ29kZUF0KDApKSAtIDY0O1xuICAgIGNvbG91ckluZGV4ID0gY2hhckluZGV4ICUgMjA7XG4gICAgY2FudmFzID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnY2FudmFzJyk7XG4gICAgY2FudmFzLndpZHRoID0gc2l6ZTtcbiAgICBjYW52YXMuaGVpZ2h0ID0gc2l6ZTtcbiAgICBjb250ZXh0ID0gY2FudmFzLmdldENvbnRleHQoXCIyZFwiKTtcblxuICAgIGNvbnRleHQuZmlsbFN0eWxlID0gY29sb3Vyc1tjb2xvdXJJbmRleCAtIDFdO1xuICAgIGNvbnRleHQuZmlsbFJlY3QoMCwgMCwgY2FudmFzLndpZHRoLCBjYW52YXMuaGVpZ2h0KTtcbiAgICBjb250ZXh0LmZvbnQgPSBgJHtNYXRoLnJvdW5kKGNhbnZhcy53aWR0aCAvIDIuNyl9cHggJHt0aGlzLmZvbnRGYW1pbHl9YDtcbiAgICBjb250ZXh0LnRleHRBbGlnbiA9IFwiY2VudGVyXCI7XG4gICAgY29udGV4dC5maWxsU3R5bGUgPSBcIiNGRkZcIjtcbiAgICBjb250ZXh0LnRleHRCYXNlbGluZSA9IFwibWlkZGxlXCI7XG5cbiAgICBpbml0aWFscyA9IGluaXRpYWxzLnNwbGl0KFwiXCIpLmpvaW4oU3RyaW5nLmZyb21DaGFyQ29kZSg4MjAyKSlcbiAgICBjb250ZXh0LmZpbGxUZXh0KGluaXRpYWxzLCBzaXplIC8gMiwgc2l6ZSAvIDEuODUpO1xuXG4gICAgZGF0YVVSSSA9IGNhbnZhcy50b0RhdGFVUkwoKTtcbiAgICBjYW52YXMgPSBudWxsO1xuXG4gICAgcmV0dXJuIGRhdGFVUkk7XG4gIH1cblxufVxuIl19