@memberjunction/ng-link-directives
Version:
MemberJunction: Angular Link Directives for turning an element in an angular app into an email, web, or record link
33 lines • 1.55 kB
JavaScript
import { Directive, Input } from '@angular/core';
import { LogError } from '@memberjunction/core';
import { BaseLink } from './ng-base-link';
import * as i0 from "@angular/core";
export class EmailLink extends BaseLink {
el;
renderer;
field; // Input variable to get the fieldInfo
constructor(el, renderer) {
super();
this.el = el;
this.renderer = renderer;
}
ngOnInit() {
const extendedType = this.field.EntityFieldInfo.ExtendedType;
if (extendedType && extendedType.trim().toLowerCase() === 'email')
this.CreateLink(this.el, this.field, this.renderer, 'mailto:' + this.field.Value, true);
else
LogError('Entity Field must have ExtendedType of URL to use the mjWebLink directive. Field:' + this.field.Name);
}
static ɵfac = function EmailLink_Factory(t) { return new (t || EmailLink)(i0.ɵɵdirectiveInject(i0.ElementRef), i0.ɵɵdirectiveInject(i0.Renderer2)); };
static ɵdir = /*@__PURE__*/ i0.ɵɵdefineDirective({ type: EmailLink, selectors: [["", "mjEmailLink", ""]], inputs: { field: "field" }, features: [i0.ɵɵInheritDefinitionFeature] });
}
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(EmailLink, [{
type: Directive,
args: [{
selector: '[mjEmailLink]'
}]
}], () => [{ type: i0.ElementRef }, { type: i0.Renderer2 }], { field: [{
type: Input,
args: ['field']
}] }); })();
//# sourceMappingURL=ng-email-link.js.map