@alauda-fe/common
Version:
Alauda frontend team common codes.
43 lines • 4.22 kB
JavaScript
import { Directive, HostBinding, HostListener, Input, inject, } from '@angular/core';
import { PluginWindowChannelService } from '../plugin-window-channel.service';
import { MessageType } from '../utils';
import * as i0 from "@angular/core";
export class HostLinkDirective {
constructor() {
this.pluginChannel = inject(PluginWindowChannelService);
this.style = 'cursor: pointer';
}
onClick() {
this.pluginChannel.send(MessageType.Navigate, {
url: this.aclHostLink,
queryParams: this.queryParams,
target: this.target,
});
}
static { this.ɵfac = function HostLinkDirective_Factory(t) { return new (t || HostLinkDirective)(); }; }
static { this.ɵdir = /*@__PURE__*/ i0.ɵɵdefineDirective({ type: HostLinkDirective, selectors: [["a", "aclHostLink", ""]], hostVars: 1, hostBindings: function HostLinkDirective_HostBindings(rf, ctx) { if (rf & 1) {
i0.ɵɵlistener("click", function HostLinkDirective_click_HostBindingHandler() { return ctx.onClick(); });
} if (rf & 2) {
i0.ɵɵattribute("style", ctx.style, i0.ɵɵsanitizeStyle);
} }, inputs: { aclHostLink: "aclHostLink", queryParams: "queryParams", target: "target" }, standalone: true }); }
}
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(HostLinkDirective, [{
type: Directive,
args: [{
standalone: true,
selector: 'a[aclHostLink]',
}]
}], null, { aclHostLink: [{
type: Input
}], queryParams: [{
type: Input
}], target: [{
type: Input
}], style: [{
type: HostBinding,
args: ['attr.style']
}], onClick: [{
type: HostListener,
args: ['click']
}] }); })();
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaG9zdC1saW5rLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tbW9uL3NyYy93aW5kb3ctY2hhbm5lbC9kaXJlY3RpdmVzL2hvc3QtbGluay5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLFNBQVMsRUFDVCxXQUFXLEVBQ1gsWUFBWSxFQUNaLEtBQUssRUFDTCxNQUFNLEdBQ1AsTUFBTSxlQUFlLENBQUM7QUFFdkIsT0FBTyxFQUFFLDBCQUEwQixFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFDOUUsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLFVBQVUsQ0FBQzs7QUFNdkMsTUFBTSxPQUFPLGlCQUFpQjtJQUo5QjtRQUttQixrQkFBYSxHQUFHLE1BQU0sQ0FBQywwQkFBMEIsQ0FBQyxDQUFDO1FBWXBFLFVBQUssR0FBRyxpQkFBaUIsQ0FBQztLQVUzQjtJQVBDLE9BQU87UUFDTCxJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsUUFBUSxFQUFFO1lBQzVDLEdBQUcsRUFBRSxJQUFJLENBQUMsV0FBVztZQUNyQixXQUFXLEVBQUUsSUFBSSxDQUFDLFdBQVc7WUFDN0IsTUFBTSxFQUFFLElBQUksQ0FBQyxNQUFNO1NBQ3BCLENBQUMsQ0FBQztJQUNMLENBQUM7a0ZBdEJVLGlCQUFpQjtvRUFBakIsaUJBQWlCO1lBQWpCLHNGQUFBLGFBQVMsSUFBUTs7Ozs7aUZBQWpCLGlCQUFpQjtjQUo3QixTQUFTO2VBQUM7Z0JBQ1QsVUFBVSxFQUFFLElBQUk7Z0JBQ2hCLFFBQVEsRUFBRSxnQkFBZ0I7YUFDM0I7Z0JBS0MsV0FBVztrQkFEVixLQUFLO1lBSU4sV0FBVztrQkFEVixLQUFLO1lBSU4sTUFBTTtrQkFETCxLQUFLO1lBSU4sS0FBSztrQkFESixXQUFXO21CQUFDLFlBQVk7WUFJekIsT0FBTztrQkFETixZQUFZO21CQUFDLE9BQU8iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBEaXJlY3RpdmUsXG4gIEhvc3RCaW5kaW5nLFxuICBIb3N0TGlzdGVuZXIsXG4gIElucHV0LFxuICBpbmplY3QsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgeyBQbHVnaW5XaW5kb3dDaGFubmVsU2VydmljZSB9IGZyb20gJy4uL3BsdWdpbi13aW5kb3ctY2hhbm5lbC5zZXJ2aWNlJztcbmltcG9ydCB7IE1lc3NhZ2VUeXBlIH0gZnJvbSAnLi4vdXRpbHMnO1xuXG5ARGlyZWN0aXZlKHtcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgc2VsZWN0b3I6ICdhW2FjbEhvc3RMaW5rXScsXG59KVxuZXhwb3J0IGNsYXNzIEhvc3RMaW5rRGlyZWN0aXZlIHtcbiAgcHJpdmF0ZSByZWFkb25seSBwbHVnaW5DaGFubmVsID0gaW5qZWN0KFBsdWdpbldpbmRvd0NoYW5uZWxTZXJ2aWNlKTtcblxuICBASW5wdXQoKVxuICBhY2xIb3N0TGluazogc3RyaW5nO1xuXG4gIEBJbnB1dCgpXG4gIHF1ZXJ5UGFyYW1zOiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+O1xuXG4gIEBJbnB1dCgpXG4gIHRhcmdldDogc3RyaW5nO1xuXG4gIEBIb3N0QmluZGluZygnYXR0ci5zdHlsZScpXG4gIHN0eWxlID0gJ2N1cnNvcjogcG9pbnRlcic7XG5cbiAgQEhvc3RMaXN0ZW5lcignY2xpY2snKVxuICBvbkNsaWNrKCkge1xuICAgIHRoaXMucGx1Z2luQ2hhbm5lbC5zZW5kKE1lc3NhZ2VUeXBlLk5hdmlnYXRlLCB7XG4gICAgICB1cmw6IHRoaXMuYWNsSG9zdExpbmssXG4gICAgICBxdWVyeVBhcmFtczogdGhpcy5xdWVyeVBhcmFtcyxcbiAgICAgIHRhcmdldDogdGhpcy50YXJnZXQsXG4gICAgfSk7XG4gIH1cbn1cbiJdfQ==