ngx-contentful-rich-text
Version:
Angular renderer for the Contentful rich text field type
24 lines • 2.82 kB
JavaScript
import { ChangeDetectionStrategy, Component } from '@angular/core';
import { MARKS } from '@contentful/rich-text-types';
import { MarkRenderer } from '../classes/mark-renderer.class';
export const TEXT = `<ng-container ngxMarkRendererHost [node]="node"></ng-container>`;
export class DefaultMarkRendererComponent extends MarkRenderer {
constructor() {
super(...arguments);
this.MARKS = MARKS;
}
}
DefaultMarkRendererComponent.decorators = [
{ type: Component, args: [{
template: `
<ng-container [ngSwitch]="node.marks[node.markIndex].type">
<b *ngSwitchCase="MARKS.BOLD">${TEXT}</b>
<code *ngSwitchCase="MARKS.CODE">${TEXT}</code>
<i *ngSwitchCase="MARKS.ITALIC">${TEXT}</i>
<u *ngSwitchCase="MARKS.UNDERLINE">${TEXT}</u>
</ng-container>
`,
changeDetection: ChangeDetectionStrategy.OnPush
},] }
];
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVmYXVsdC1tYXJrLXJlbmRlcmVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1jb250ZW50ZnVsLXJpY2gtdGV4dC9zcmMvbGliL2NvbXBvbmVudHMvZGVmYXVsdC1tYXJrLXJlbmRlcmVyLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ25FLE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUVwRCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFFOUQsTUFBTSxDQUFDLE1BQU0sSUFBSSxHQUFHLGlFQUFpRSxDQUFDO0FBYXRGLE1BQU0sT0FBTyw0QkFBNkIsU0FBUSxZQUFZO0lBWDlEOztRQVlFLFVBQUssR0FBaUIsS0FBSyxDQUFDO0lBQzlCLENBQUM7OztZQWJBLFNBQVMsU0FBQztnQkFDVCxRQUFRLEVBQUU7O3NDQUUwQixJQUFJO3lDQUNELElBQUk7d0NBQ0wsSUFBSTsyQ0FDRCxJQUFJOztHQUU1QztnQkFDRCxlQUFlLEVBQUUsdUJBQXVCLENBQUMsTUFBTTthQUNoRCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE1BUktTIH0gZnJvbSAnQGNvbnRlbnRmdWwvcmljaC10ZXh0LXR5cGVzJztcblxuaW1wb3J0IHsgTWFya1JlbmRlcmVyIH0gZnJvbSAnLi4vY2xhc3Nlcy9tYXJrLXJlbmRlcmVyLmNsYXNzJztcblxuZXhwb3J0IGNvbnN0IFRFWFQgPSBgPG5nLWNvbnRhaW5lciBuZ3hNYXJrUmVuZGVyZXJIb3N0IFtub2RlXT1cIm5vZGVcIj48L25nLWNvbnRhaW5lcj5gO1xuXG5AQ29tcG9uZW50KHtcbiAgdGVtcGxhdGU6IGBcbiAgICA8bmctY29udGFpbmVyIFtuZ1N3aXRjaF09XCJub2RlLm1hcmtzW25vZGUubWFya0luZGV4XS50eXBlXCI+XG4gICAgICA8YiAqbmdTd2l0Y2hDYXNlPVwiTUFSS1MuQk9MRFwiPiR7VEVYVH08L2I+XG4gICAgICA8Y29kZSAqbmdTd2l0Y2hDYXNlPVwiTUFSS1MuQ09ERVwiPiR7VEVYVH08L2NvZGU+XG4gICAgICA8aSAqbmdTd2l0Y2hDYXNlPVwiTUFSS1MuSVRBTElDXCI+JHtURVhUfTwvaT5cbiAgICAgIDx1ICpuZ1N3aXRjaENhc2U9XCJNQVJLUy5VTkRFUkxJTkVcIj4ke1RFWFR9PC91PlxuICAgIDwvbmctY29udGFpbmVyPlxuICBgLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbn0pXG5leHBvcnQgY2xhc3MgRGVmYXVsdE1hcmtSZW5kZXJlckNvbXBvbmVudCBleHRlbmRzIE1hcmtSZW5kZXJlciB7XG4gIE1BUktTOiB0eXBlb2YgTUFSS1MgPSBNQVJLUztcbn1cbiJdfQ==