UNPKG

@cardboard-box/ngx-box

Version:

A collection of useful directives, components and services for angular

29 lines 3.34 kB
import { Directive, Input } from "@angular/core"; import { marked } from 'marked'; import * as i0 from "@angular/core"; export class MarkdownDirective { constructor(host) { this.host = host; } set markdown(content) { if (this._current === content) return; this._current = content; try { this._marked = marked.parse(content || ''); } catch { } this.host.nativeElement.innerHTML = this._marked || this._current || ''; } } MarkdownDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.3", ngImport: i0, type: MarkdownDirective, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive }); MarkdownDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.1.3", type: MarkdownDirective, selector: "[markdown]", inputs: { markdown: "markdown" }, ngImport: i0 }); i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.3", ngImport: i0, type: MarkdownDirective, decorators: [{ type: Directive, args: [{ selector: '[markdown]' }] }], ctorParameters: function () { return [{ type: i0.ElementRef }]; }, propDecorators: { markdown: [{ type: Input }] } }); //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFya2Rvd24uZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY2FyZGJvYXJkYm94L25neC1ib3gvc3JjL2xpYi9kaXJlY3RpdmVzL21hcmtkb3duLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFjLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUM3RCxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sUUFBUSxDQUFDOztBQUtoQyxNQUFNLE9BQU8saUJBQWlCO0lBaUIxQixZQUNZLElBQWdCO1FBQWhCLFNBQUksR0FBSixJQUFJLENBQVk7SUFDeEIsQ0FBQztJQWRMLElBQ0ksUUFBUSxDQUFDLE9BQTJCO1FBQ3BDLElBQUksSUFBSSxDQUFDLFFBQVEsS0FBSyxPQUFPO1lBQUUsT0FBTztRQUV0QyxJQUFJLENBQUMsUUFBUSxHQUFHLE9BQU8sQ0FBQztRQUV4QixJQUFJO1lBQ0EsSUFBSSxDQUFDLE9BQU8sR0FBRyxNQUFNLENBQUMsS0FBSyxDQUFDLE9BQU8sSUFBSSxFQUFFLENBQUMsQ0FBQztTQUM5QztRQUFDLE1BQU0sR0FBRztRQUNYLElBQUksQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUMsT0FBTyxJQUFJLElBQUksQ0FBQyxRQUFRLElBQUksRUFBRSxDQUFDO0lBQzVFLENBQUM7OzhHQWZRLGlCQUFpQjtrR0FBakIsaUJBQWlCOzJGQUFqQixpQkFBaUI7a0JBSDdCLFNBQVM7bUJBQUM7b0JBQ1AsUUFBUSxFQUFFLFlBQVk7aUJBQ3pCO2lHQU9PLFFBQVE7c0JBRFgsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpcmVjdGl2ZSwgRWxlbWVudFJlZiwgSW5wdXQgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuaW1wb3J0IHsgbWFya2VkIH0gZnJvbSAnbWFya2VkJztcblxuQERpcmVjdGl2ZSh7XG4gICAgc2VsZWN0b3I6ICdbbWFya2Rvd25dJ1xufSlcbmV4cG9ydCBjbGFzcyBNYXJrZG93bkRpcmVjdGl2ZSB7XG5cbiAgICBwcml2YXRlIF9jdXJyZW50Pzogc3RyaW5nO1xuICAgIHByaXZhdGUgX21hcmtlZD86IHN0cmluZztcblxuICAgIEBJbnB1dCgpXG4gICAgc2V0IG1hcmtkb3duKGNvbnRlbnQ6IHN0cmluZyB8IHVuZGVmaW5lZCkge1xuICAgICAgICBpZiAodGhpcy5fY3VycmVudCA9PT0gY29udGVudCkgcmV0dXJuO1xuICAgICAgICBcbiAgICAgICAgdGhpcy5fY3VycmVudCA9IGNvbnRlbnQ7XG5cbiAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgIHRoaXMuX21hcmtlZCA9IG1hcmtlZC5wYXJzZShjb250ZW50IHx8ICcnKTtcbiAgICAgICAgfSBjYXRjaCB7IH1cbiAgICAgICAgdGhpcy5ob3N0Lm5hdGl2ZUVsZW1lbnQuaW5uZXJIVE1MID0gdGhpcy5fbWFya2VkIHx8IHRoaXMuX2N1cnJlbnQgfHwgJyc7XG4gICAgfVxuXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIHByaXZhdGUgaG9zdDogRWxlbWVudFJlZlxuICAgICkgeyB9XG59Il19