summaryrefslogtreecommitdiff
path: root/src/api
diff options
context:
space:
mode:
authorsyuilo <syuilotan@yahoo.co.jp>2017-03-18 20:05:11 +0900
committersyuilo <syuilotan@yahoo.co.jp>2017-03-18 20:05:11 +0900
commit45e8331e261244628b134a18e3d0fbe0ebb3a7dc (patch)
tree44ac1719fcea0a61c33698b23fb89400141e00d9 /src/api
parentBetter notification (diff)
downloadmisskey-45e8331e261244628b134a18e3d0fbe0ebb3a7dc.tar.gz
misskey-45e8331e261244628b134a18e3d0fbe0ebb3a7dc.tar.bz2
misskey-45e8331e261244628b134a18e3d0fbe0ebb3a7dc.zip
:sushi:
Closes #12, #227 and #58
Diffstat (limited to '')
-rw-r--r--src/api/common/text/core/syntax-highlighter.ts (renamed from src/common/text/core/syntax-highlighter.js)8
-rw-r--r--src/api/common/text/elements/bold.ts (renamed from src/common/text/elements/bold.js)0
-rw-r--r--src/api/common/text/elements/code.ts (renamed from src/common/text/elements/code.js)2
-rw-r--r--src/api/common/text/elements/emoji.ts (renamed from src/common/text/elements/emoji.js)0
-rw-r--r--src/api/common/text/elements/hashtag.ts (renamed from src/common/text/elements/hashtag.js)0
-rw-r--r--src/api/common/text/elements/inline-code.ts (renamed from src/common/text/elements/inline-code.js)2
-rw-r--r--src/api/common/text/elements/link.ts (renamed from src/common/text/elements/link.js)0
-rw-r--r--src/api/common/text/elements/mention.ts (renamed from src/common/text/elements/mention.js)0
-rw-r--r--src/api/common/text/elements/url.ts (renamed from src/common/text/elements/url.js)0
-rw-r--r--src/api/common/text/index.ts (renamed from src/common/text/index.js)8
-rw-r--r--src/api/serializers/app.ts2
-rw-r--r--src/api/serializers/auth-session.ts2
-rw-r--r--src/api/serializers/drive-file.ts2
-rw-r--r--src/api/serializers/drive-folder.ts2
-rw-r--r--src/api/serializers/drive-tag.ts2
-rw-r--r--src/api/serializers/messaging-message.ts10
-rw-r--r--src/api/serializers/notification.ts2
-rw-r--r--src/api/serializers/post.ts10
-rw-r--r--src/api/serializers/signin.ts2
-rw-r--r--src/api/serializers/user.ts2
20 files changed, 25 insertions, 31 deletions
diff --git a/src/common/text/core/syntax-highlighter.js b/src/api/common/text/core/syntax-highlighter.ts
index 06c59777e7..c0396b1fc6 100644
--- a/src/common/text/core/syntax-highlighter.js
+++ b/src/api/common/text/core/syntax-highlighter.ts
@@ -114,7 +114,7 @@ const elements = [
// comment
code => {
if (code.substr(0, 2) != '//') return null;
- const match = code.match(/^\/\/(.+?)\n/);
+ const match = code.match(/^\/\/(.+?)(\n|$)/);
if (!match) return null;
const comment = match[0];
return {
@@ -187,7 +187,7 @@ const elements = [
regexp += char;
}
}
-
+
if (thisIsNotARegexp) return null;
if (regexp == '') return null;
if (regexp[0] == ' ' && regexp[regexp.length - 1] == ' ') return null;
@@ -299,7 +299,7 @@ const elements = [
];
// specify lang is todo
-module.exports = (source, lang) => {
+export default (source: string, lang?: string) => {
let code = source;
let html = '';
@@ -317,6 +317,8 @@ module.exports = (source, lang) => {
if (e) {
push(e);
return true;
+ } else {
+ return false;
}
});
diff --git a/src/common/text/elements/bold.js b/src/api/common/text/elements/bold.ts
index ce25764457..ce25764457 100644
--- a/src/common/text/elements/bold.js
+++ b/src/api/common/text/elements/bold.ts
diff --git a/src/common/text/elements/code.js b/src/api/common/text/elements/code.ts
index 99fe6a183c..4821e95fe2 100644
--- a/src/common/text/elements/code.js
+++ b/src/api/common/text/elements/code.ts
@@ -2,7 +2,7 @@
* Code (block)
*/
-const genHtml = require('../core/syntax-highlighter');
+import genHtml from '../core/syntax-highlighter';
module.exports = text => {
const match = text.match(/^```([\s\S]+?)```/);
diff --git a/src/common/text/elements/emoji.js b/src/api/common/text/elements/emoji.ts
index e24231a223..e24231a223 100644
--- a/src/common/text/elements/emoji.js
+++ b/src/api/common/text/elements/emoji.ts
diff --git a/src/common/text/elements/hashtag.js b/src/api/common/text/elements/hashtag.ts
index 048dbd8929..048dbd8929 100644
--- a/src/common/text/elements/hashtag.js
+++ b/src/api/common/text/elements/hashtag.ts
diff --git a/src/common/text/elements/inline-code.js b/src/api/common/text/elements/inline-code.ts
index 37e9b1a0ff..9f9ef51a2b 100644
--- a/src/common/text/elements/inline-code.js
+++ b/src/api/common/text/elements/inline-code.ts
@@ -2,7 +2,7 @@
* Code (inline)
*/
-const genHtml = require('../core/syntax-highlighter');
+import genHtml from '../core/syntax-highlighter';
module.exports = text => {
const match = text.match(/^`(.+?)`/);
diff --git a/src/common/text/elements/link.js b/src/api/common/text/elements/link.ts
index 35563ddc3d..35563ddc3d 100644
--- a/src/common/text/elements/link.js
+++ b/src/api/common/text/elements/link.ts
diff --git a/src/common/text/elements/mention.js b/src/api/common/text/elements/mention.ts
index e0fac4dd76..e0fac4dd76 100644
--- a/src/common/text/elements/mention.js
+++ b/src/api/common/text/elements/mention.ts
diff --git a/src/common/text/elements/url.js b/src/api/common/text/elements/url.ts
index 1003aff9c3..1003aff9c3 100644
--- a/src/common/text/elements/url.js
+++ b/src/api/common/text/elements/url.ts
diff --git a/src/common/text/index.js b/src/api/common/text/index.ts
index ab1342230c..47127e8646 100644
--- a/src/common/text/index.js
+++ b/src/api/common/text/index.ts
@@ -13,7 +13,7 @@ const elements = [
require('./elements/emoji')
];
-function analyze(source) {
+export default (source: string) => {
if (source == '') {
return null;
@@ -40,6 +40,8 @@ function analyze(source) {
}
tokens.forEach(push);
return true;
+ } else {
+ return false;
}
});
@@ -66,6 +68,4 @@ function analyze(source) {
return a.concat(b);
}
});
-}
-
-module.exports = analyze;
+};
diff --git a/src/api/serializers/app.ts b/src/api/serializers/app.ts
index fdeef338d9..9d1c46dca4 100644
--- a/src/api/serializers/app.ts
+++ b/src/api/serializers/app.ts
@@ -1,5 +1,3 @@
-'use strict';
-
/**
* Module dependencies
*/
diff --git a/src/api/serializers/auth-session.ts b/src/api/serializers/auth-session.ts
index 4efb7729c4..a9acf1243a 100644
--- a/src/api/serializers/auth-session.ts
+++ b/src/api/serializers/auth-session.ts
@@ -1,5 +1,3 @@
-'use strict';
-
/**
* Module dependencies
*/
diff --git a/src/api/serializers/drive-file.ts b/src/api/serializers/drive-file.ts
index e6e2f6cae3..b4e2ab064a 100644
--- a/src/api/serializers/drive-file.ts
+++ b/src/api/serializers/drive-file.ts
@@ -1,5 +1,3 @@
-'use strict';
-
/**
* Module dependencies
*/
diff --git a/src/api/serializers/drive-folder.ts b/src/api/serializers/drive-folder.ts
index ac3bd13c3a..34fdc0d905 100644
--- a/src/api/serializers/drive-folder.ts
+++ b/src/api/serializers/drive-folder.ts
@@ -1,5 +1,3 @@
-'use strict';
-
/**
* Module dependencies
*/
diff --git a/src/api/serializers/drive-tag.ts b/src/api/serializers/drive-tag.ts
index 3e800ca5bd..2f152381bd 100644
--- a/src/api/serializers/drive-tag.ts
+++ b/src/api/serializers/drive-tag.ts
@@ -1,5 +1,3 @@
-'use strict';
-
/**
* Module dependencies
*/
diff --git a/src/api/serializers/messaging-message.ts b/src/api/serializers/messaging-message.ts
index da63f8b99e..4ab95e42a3 100644
--- a/src/api/serializers/messaging-message.ts
+++ b/src/api/serializers/messaging-message.ts
@@ -1,13 +1,12 @@
-'use strict';
-
/**
* Module dependencies
*/
import * as mongo from 'mongodb';
+import deepcopy = require('deepcopy');
import Message from '../models/messaging-message';
import serializeUser from './user';
import serializeDriveFile from './drive-file';
-import deepcopy = require('deepcopy');
+import parse from '../common/text';
/**
* Serialize a message
@@ -47,6 +46,11 @@ export default (
_message.id = _message._id;
delete _message._id;
+ // Parse text
+ if (_message.text) {
+ _message.ast = parse(_message.text);
+ }
+
// Populate user
_message.user = await serializeUser(_message.user_id, me);
diff --git a/src/api/serializers/notification.ts b/src/api/serializers/notification.ts
index 43add127e0..50952e5426 100644
--- a/src/api/serializers/notification.ts
+++ b/src/api/serializers/notification.ts
@@ -1,5 +1,3 @@
-'use strict';
-
/**
* Module dependencies
*/
diff --git a/src/api/serializers/post.ts b/src/api/serializers/post.ts
index b71b42e9a4..f459529697 100644
--- a/src/api/serializers/post.ts
+++ b/src/api/serializers/post.ts
@@ -1,16 +1,15 @@
-'use strict';
-
/**
* Module dependencies
*/
import * as mongo from 'mongodb';
+import deepcopy = require('deepcopy');
import Post from '../models/post';
import Like from '../models/like';
import Vote from '../models/poll-vote';
import serializeApp from './app';
import serializeUser from './user';
import serializeDriveFile from './drive-file';
-import deepcopy = require('deepcopy');
+import parse from '../common/text';
/**
* Serialize a post
@@ -54,6 +53,11 @@ const self = (
delete _post.mentions;
+ // Parse text
+ if (_post.text) {
+ _post.ast = parse(_post.text);
+ }
+
// Populate user
_post.user = await serializeUser(_post.user_id, me);
diff --git a/src/api/serializers/signin.ts b/src/api/serializers/signin.ts
index 39226f8bd4..4068067678 100644
--- a/src/api/serializers/signin.ts
+++ b/src/api/serializers/signin.ts
@@ -1,5 +1,3 @@
-'use strict';
-
/**
* Module dependencies
*/
diff --git a/src/api/serializers/user.ts b/src/api/serializers/user.ts
index de215808a4..d367dc8657 100644
--- a/src/api/serializers/user.ts
+++ b/src/api/serializers/user.ts
@@ -1,5 +1,3 @@
-'use strict';
-
/**
* Module dependencies
*/