systelab-components
Version:
systelab-components is a set of components that use wide accepted and adopted standard technologies like Angular and Bootstrap, as well as other popular libraries. Please read the ATTRIBUTION.md file for a complete list of dependencies.
38 lines • 4.34 kB
JavaScript
import { Directive, Inject, Input, Optional } from '@angular/core';
import { APP_CONFIG } from '../systelab-components.module.config';
import * as i0 from "@angular/core";
const DEFAULT_PRODUCTION_MODE = true;
export class TestIdDirective {
constructor(config, renderer, el) {
this.config = config;
this.renderer = renderer;
this.el = el;
this.productionMode = (config) ? config.productionMode : DEFAULT_PRODUCTION_MODE;
}
ngOnChanges() {
this.addE2EAttribute();
}
addE2EAttribute() {
if (this.productionMode) {
return;
}
this.renderer.setAttribute(this.el.nativeElement, 'data-test-id', this.label);
}
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.9", ngImport: i0, type: TestIdDirective, deps: [{ token: APP_CONFIG, optional: true }, { token: i0.Renderer2 }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive }); }
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.0.9", type: TestIdDirective, selector: "[systelabTestId]", inputs: { label: ["systelabTestId", "label"] }, usesOnChanges: true, ngImport: i0 }); }
}
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.9", ngImport: i0, type: TestIdDirective, decorators: [{
type: Directive,
args: [{
selector: '[systelabTestId]'
}]
}], ctorParameters: () => [{ type: undefined, decorators: [{
type: Optional
}, {
type: Inject,
args: [APP_CONFIG]
}] }, { type: i0.Renderer2 }, { type: i0.ElementRef }], propDecorators: { label: [{
type: Input,
args: ['systelabTestId']
}] } });
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVzdC1pZC5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zeXN0ZWxhYi1jb21wb25lbnRzL3NyYy9saWIvZGlyZWN0aXZlcy90ZXN0LWlkLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFjLE1BQU0sRUFBRSxLQUFLLEVBQWEsUUFBUSxFQUFhLE1BQU0sZUFBZSxDQUFDO0FBQ3JHLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxzQ0FBc0MsQ0FBQzs7QUFFbEUsTUFBTSx1QkFBdUIsR0FBRyxJQUFJLENBQUM7QUFJckMsTUFBTSxPQUFPLGVBQWU7SUFJMUIsWUFBb0QsTUFBTSxFQUFVLFFBQW1CLEVBQVUsRUFBYztRQUEzRCxXQUFNLEdBQU4sTUFBTSxDQUFBO1FBQVUsYUFBUSxHQUFSLFFBQVEsQ0FBVztRQUFVLE9BQUUsR0FBRixFQUFFLENBQVk7UUFDN0csSUFBSSxDQUFDLGNBQWMsR0FBRyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsY0FBYyxDQUFDLENBQUMsQ0FBQyx1QkFBdUIsQ0FBQztJQUNuRixDQUFDO0lBRUQsV0FBVztRQUNQLElBQUksQ0FBQyxlQUFlLEVBQUUsQ0FBQztJQUMzQixDQUFDO0lBRU8sZUFBZTtRQUNyQixJQUFJLElBQUksQ0FBQyxjQUFjLEVBQUU7WUFDdkIsT0FBTztTQUNSO1FBQ0QsSUFBSSxDQUFDLFFBQVEsQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxhQUFhLEVBQUUsY0FBYyxFQUFFLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNoRixDQUFDOzhHQWpCVSxlQUFlLGtCQUlNLFVBQVU7a0dBSi9CLGVBQWU7OzJGQUFmLGVBQWU7a0JBSDNCLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLGtCQUFrQjtpQkFDN0I7OzBCQUtjLFFBQVE7OzBCQUFJLE1BQU07MkJBQUMsVUFBVTswRkFIakIsS0FBSztzQkFBN0IsS0FBSzt1QkFBQyxnQkFBZ0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEaXJlY3RpdmUsIEVsZW1lbnRSZWYsIEluamVjdCwgSW5wdXQsIE9uQ2hhbmdlcywgT3B0aW9uYWwsIFJlbmRlcmVyMiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQVBQX0NPTkZJRyB9IGZyb20gJy4uL3N5c3RlbGFiLWNvbXBvbmVudHMubW9kdWxlLmNvbmZpZyc7XG5cbmNvbnN0IERFRkFVTFRfUFJPRFVDVElPTl9NT0RFID0gdHJ1ZTtcbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogJ1tzeXN0ZWxhYlRlc3RJZF0nXG59KVxuZXhwb3J0IGNsYXNzIFRlc3RJZERpcmVjdGl2ZSBpbXBsZW1lbnRzIE9uQ2hhbmdlcyB7XG4gIEBJbnB1dCgnc3lzdGVsYWJUZXN0SWQnKSBsYWJlbDogc3RyaW5nO1xuICBwcml2YXRlIHJlYWRvbmx5IHByb2R1Y3Rpb25Nb2RlOiBib29sZWFuO1xuXG4gIGNvbnN0cnVjdG9yKEBPcHRpb25hbCgpIEBJbmplY3QoQVBQX0NPTkZJRykgcHJpdmF0ZSBjb25maWcsIHByaXZhdGUgcmVuZGVyZXI6IFJlbmRlcmVyMiwgcHJpdmF0ZSBlbDogRWxlbWVudFJlZikge1xuICAgIHRoaXMucHJvZHVjdGlvbk1vZGUgPSAoY29uZmlnKSA/IGNvbmZpZy5wcm9kdWN0aW9uTW9kZSA6IERFRkFVTFRfUFJPRFVDVElPTl9NT0RFO1xuICB9XG5cbiAgbmdPbkNoYW5nZXMoKSB7XG4gICAgICB0aGlzLmFkZEUyRUF0dHJpYnV0ZSgpO1xuICB9XG5cbiAgcHJpdmF0ZSBhZGRFMkVBdHRyaWJ1dGUoKSB7XG4gICAgaWYgKHRoaXMucHJvZHVjdGlvbk1vZGUpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgdGhpcy5yZW5kZXJlci5zZXRBdHRyaWJ1dGUodGhpcy5lbC5uYXRpdmVFbGVtZW50LCAnZGF0YS10ZXN0LWlkJywgdGhpcy5sYWJlbCk7XG4gIH1cblxufVxuIl19