mirror of
https://github.com/wekan/wekan.git
synced 2025-12-16 15:30:13 +01:00
WIP: markdown
This commit is contained in:
parent
232bc746f4
commit
1f85b25549
8 changed files with 46 additions and 33 deletions
|
|
@ -1,9 +0,0 @@
|
|||
var mark = marked;
|
||||
|
||||
mark.setOptions({
|
||||
gfm: true,
|
||||
tables: true,
|
||||
breaks: true
|
||||
});
|
||||
|
||||
Markdown = mark;
|
||||
|
|
@ -2,23 +2,27 @@
|
|||
|
||||
Package.describe({
|
||||
name: 'wekan-markdown',
|
||||
summary: "GitHub flavored markdown parser for Meteor based on marked.js",
|
||||
version: "1.0.8",
|
||||
git: "https://github.com/wekan/markdown.git"
|
||||
summary: 'GitHub flavored markdown parser for Meteor based on marked.js',
|
||||
version: '1.0.9',
|
||||
git: 'https://github.com/wekan/markdown.git',
|
||||
});
|
||||
|
||||
// Before Meteor 0.9?
|
||||
if(!Package.onUse) Package.onUse = Package.on_use;
|
||||
|
||||
Package.onUse(function (api) {
|
||||
if(api.versionsFrom) api.versionsFrom('METEOR@0.9.0');
|
||||
if(api.versionsFrom) api.versionsFrom('1.8.2');
|
||||
|
||||
api.use('templating');
|
||||
api.use("ecmascript", ['server', 'client']);
|
||||
|
||||
api.add_files('marked/lib/marked.js', ['server', 'client']);
|
||||
api.add_files('markdown.js', ['server', 'client']);
|
||||
api.add_files('src/markdown.js', ['server', 'client']);
|
||||
api.export('Markdown', ['server', 'client']);
|
||||
|
||||
api.use("ui", "client", {weak: true});
|
||||
api.add_files("template-integration.js", "client");
|
||||
api.use('ui', 'client', {weak: true});
|
||||
api.use('tmeasday:check-npm-versions', 'client');
|
||||
|
||||
api.add_files('src/checkNpmVersions.js', 'client');
|
||||
api.add_files('src/template-integration.js', 'client');
|
||||
});
|
||||
|
|
|
|||
5
packages/markdown/src/checkNpmVersions.js
Normal file
5
packages/markdown/src/checkNpmVersions.js
Normal file
|
|
@ -0,0 +1,5 @@
|
|||
import { checkNpmVersions } from 'meteor/tmeasday:check-npm-versions';
|
||||
|
||||
checkNpmVersions({
|
||||
'xss': '1.0.6',
|
||||
}, 'my:xss');
|
||||
9
packages/markdown/src/markdown.js
Executable file
9
packages/markdown/src/markdown.js
Executable file
|
|
@ -0,0 +1,9 @@
|
|||
import marked from '../marked/lib/marked.js';
|
||||
|
||||
marked.setOptions({
|
||||
gfm: true,
|
||||
tables: true,
|
||||
breaks: true,
|
||||
});
|
||||
|
||||
Markdown = marked;
|
||||
18
packages/markdown/src/template-integration.js
Executable file
18
packages/markdown/src/template-integration.js
Executable file
|
|
@ -0,0 +1,18 @@
|
|||
import sanitizeXss from 'xss';
|
||||
|
||||
if (Package.ui) {
|
||||
const Template = Package.templating.Template;
|
||||
const UI = Package.ui.UI;
|
||||
const HTML = Package.htmljs.HTML;
|
||||
const Blaze = Package.blaze.Blaze; // implied by `ui`
|
||||
|
||||
UI.registerHelper('markdown', new Template('markdown', function () {
|
||||
const self = this;
|
||||
let text = '';
|
||||
if (self.templateContentBlock) {
|
||||
text = Blaze._toText(self.templateContentBlock, HTML.TEXTMODE.STRING);
|
||||
}
|
||||
|
||||
return HTML.Raw(sanitizeXss(Markdown(text)));
|
||||
}));
|
||||
}
|
||||
|
|
@ -1,16 +0,0 @@
|
|||
if (Package.ui) {
|
||||
var Template = Package.templating.Template;
|
||||
var UI = Package.ui.UI;
|
||||
var HTML = Package.htmljs.HTML;
|
||||
var Blaze = Package.blaze.Blaze; // implied by `ui`
|
||||
|
||||
UI.registerHelper('markdown', new Template('markdown', function () {
|
||||
var self = this;
|
||||
var text = "";
|
||||
if(self.templateContentBlock) {
|
||||
text = Blaze._toText(self.templateContentBlock, HTML.TEXTMODE.STRING);
|
||||
}
|
||||
|
||||
return HTML.Raw(Markdown(text));
|
||||
}));
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue