@cardboard-box/ngx-box
Version:
A collection of useful directives, components and services for angular
38 lines • 3.85 kB
JavaScript
import { Directive, HostBinding, Input, HostListener } from "@angular/core";
import * as i0 from "@angular/core";
import * as i1 from "../services";
export class ImageFallbackDirective {
constructor(http) {
this.http = http;
this.group = 'fallback';
}
update() {
this.src = this.default || this.http.fallback(this.src || '', this.group, this.referer);
}
}
ImageFallbackDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.3", ngImport: i0, type: ImageFallbackDirective, deps: [{ token: i1.HttpService }], target: i0.ɵɵFactoryTarget.Directive });
ImageFallbackDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.1.3", type: ImageFallbackDirective, selector: "img[fallback]", inputs: { src: "src", default: ["fallback", "default"], group: "group", referer: "referer" }, host: { listeners: { "error": "update()" }, properties: { "src": "this.src" } }, ngImport: i0 });
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.3", ngImport: i0, type: ImageFallbackDirective, decorators: [{
type: Directive,
args: [{
selector: 'img[fallback]'
}]
}], ctorParameters: function () { return [{ type: i1.HttpService }]; }, propDecorators: { src: [{
type: HostBinding,
args: ['src']
}, {
type: Input
}], default: [{
type: Input,
args: ['fallback']
}], group: [{
type: Input,
args: ['group']
}], referer: [{
type: Input,
args: ['referer']
}], update: [{
type: HostListener,
args: ['error']
}] } });
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW1hZ2UtZmFsbGJhY2suZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY2FyZGJvYXJkYm94L25neC1ib3gvc3JjL2xpYi9kaXJlY3RpdmVzL2ltYWdlLWZhbGxiYWNrLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFdBQVcsRUFBRSxLQUFLLEVBQUUsWUFBWSxFQUFFLE1BQU0sZUFBZSxDQUFDOzs7QUFNNUUsTUFBTSxPQUFPLHNCQUFzQjtJQVEvQixZQUNZLElBQWlCO1FBQWpCLFNBQUksR0FBSixJQUFJLENBQWE7UUFKYixVQUFLLEdBQVcsVUFBVSxDQUFDO0lBS3ZDLENBQUM7SUFHTCxNQUFNO1FBQ0YsSUFBSSxDQUFDLEdBQUcsR0FBRyxJQUFJLENBQUMsT0FBTyxJQUFJLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxHQUFHLElBQUksRUFBRSxFQUFFLElBQUksQ0FBQyxLQUFLLEVBQUUsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQzVGLENBQUM7O21IQWZRLHNCQUFzQjt1R0FBdEIsc0JBQXNCOzJGQUF0QixzQkFBc0I7a0JBSGxDLFNBQVM7bUJBQUM7b0JBQ1AsUUFBUSxFQUFFLGVBQWU7aUJBQzVCO2tHQUdnQyxHQUFHO3NCQUEvQixXQUFXO3VCQUFDLEtBQUs7O3NCQUFHLEtBQUs7Z0JBRVAsT0FBTztzQkFBekIsS0FBSzt1QkFBQyxVQUFVO2dCQUNELEtBQUs7c0JBQXBCLEtBQUs7dUJBQUMsT0FBTztnQkFDSSxPQUFPO3NCQUF4QixLQUFLO3VCQUFDLFNBQVM7Z0JBT2hCLE1BQU07c0JBREwsWUFBWTt1QkFBQyxPQUFPIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aXZlLCBIb3N0QmluZGluZywgSW5wdXQsIEhvc3RMaXN0ZW5lciB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XG5pbXBvcnQgeyBIdHRwU2VydmljZSB9IGZyb20gXCIuLi9zZXJ2aWNlc1wiO1xuXG5ARGlyZWN0aXZlKHtcbiAgICBzZWxlY3RvcjogJ2ltZ1tmYWxsYmFja10nXG59KVxuZXhwb3J0IGNsYXNzIEltYWdlRmFsbGJhY2tEaXJlY3RpdmUge1xuXG4gICAgQEhvc3RCaW5kaW5nKCdzcmMnKSBASW5wdXQoKSBzcmM/OiBzdHJpbmc7XG5cbiAgICBASW5wdXQoJ2ZhbGxiYWNrJykgZGVmYXVsdD86IHN0cmluZztcbiAgICBASW5wdXQoJ2dyb3VwJykgZ3JvdXA6IHN0cmluZyA9ICdmYWxsYmFjayc7XG4gICAgQElucHV0KCdyZWZlcmVyJykgcmVmZXJlcj86IHN0cmluZztcblxuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBwcml2YXRlIGh0dHA6IEh0dHBTZXJ2aWNlXG4gICAgKSB7IH1cblxuICAgIEBIb3N0TGlzdGVuZXIoJ2Vycm9yJylcbiAgICB1cGRhdGUoKSB7XG4gICAgICAgIHRoaXMuc3JjID0gdGhpcy5kZWZhdWx0IHx8IHRoaXMuaHR0cC5mYWxsYmFjayh0aGlzLnNyYyB8fCAnJywgdGhpcy5ncm91cCwgdGhpcy5yZWZlcmVyKTtcbiAgICB9XG59XG5cbiJdfQ==