ng2-markdown-to-html
Version:
Angular 2+ library that uses marked to parse markdown to html combined with Prism.js for synthax highlights
40 lines • 1.46 kB
JavaScript
import { Injectable } from '@angular/core';
import { Http, Response } from '@angular/http';
import { Observable } from 'rxjs/Observable';
import 'rxjs/add/operator/catch';
import 'rxjs/add/operator/map';
export var MarkdownToHtmlService = (function () {
function MarkdownToHtmlService(http) {
this.http = http;
}
MarkdownToHtmlService.prototype.getSource = function (src) {
return this.http.get(src)
.map(this.extractData)
.catch(this.handleError);
};
MarkdownToHtmlService.prototype.extractData = function (response) {
return response.text() || '';
};
MarkdownToHtmlService.prototype.handleError = function (error) {
var errMsg;
if (error instanceof Response) {
var body = error.json() || '';
var err = body.error || JSON.stringify(body);
errMsg = error.status + " - " + (error.statusText || '') + " " + err;
}
else {
errMsg = error.message ? error.message : error.toString();
}
console.error(errMsg);
return Observable.throw(errMsg);
};
MarkdownToHtmlService.decorators = [
{ type: Injectable },
];
/** @nocollapse */
MarkdownToHtmlService.ctorParameters = function () { return [
{ type: Http, },
]; };
return MarkdownToHtmlService;
}());
//# sourceMappingURL=markdown-to-html.service.js.map