1
0
Fork 0
discourse-custom-wizard-unl.../assets/javascripts/wizard/lib/text-lite.js.es6

28 Zeilen
878 B
JavaScript

import loadScript from "./load-script";
import { default as PrettyText, buildOptions } from "pretty-text/pretty-text";
import Handlebars from "handlebars";
import getURL from "discourse-common/lib/get-url";
import { getOwner } from "discourse-common/lib/get-owner";
export function cook(text, options) {
if (!options) {
options = buildOptions({
getURL,
siteSettings: getOwner(this).lookup("site-settings:main"),
});
}
return new Handlebars.SafeString(new PrettyText(options).cook(text));
}
// everything should eventually move to async API and this should be renamed
// cook
export function cookAsync(text, options) {
if (Discourse.MarkdownItURL) {
return loadScript(Discourse.MarkdownItURL)
.then(() => cook(text, options))
.catch((e) => Ember.Logger.error(e));
} else {
return Ember.RSVP.Promise.resolve(cook(text));
}
}