summaryrefslogtreecommitdiff
path: root/src/web/app/common/scripts
diff options
context:
space:
mode:
authorsyuilo <Syuilotan@yahoo.co.jp>2018-02-23 02:13:40 +0900
committerGitHub <noreply@github.com>2018-02-23 02:13:40 +0900
commitd1785848289397b9e8242edd9bd87c5906fe5eb7 (patch)
tree8cb4ff23a694f95bc8f4895698b6202090c26554 /src/web/app/common/scripts
parentMerge pull request #1097 from syuilo/refactor (diff)
parentwip (diff)
downloadmisskey-d1785848289397b9e8242edd9bd87c5906fe5eb7.tar.gz
misskey-d1785848289397b9e8242edd9bd87c5906fe5eb7.tar.bz2
misskey-d1785848289397b9e8242edd9bd87c5906fe5eb7.zip
Merge pull request #1116 from syuilo/vue-#972
Migrate to Vue
Diffstat (limited to 'src/web/app/common/scripts')
-rw-r--r--src/web/app/common/scripts/bytes-to-size.ts6
-rw-r--r--src/web/app/common/scripts/fuck-ad-block.ts21
-rw-r--r--src/web/app/common/scripts/is-promise.ts1
-rw-r--r--src/web/app/common/scripts/streaming/home-stream.ts4
-rw-r--r--src/web/app/common/scripts/text-compiler.ts48
5 files changed, 24 insertions, 56 deletions
diff --git a/src/web/app/common/scripts/bytes-to-size.ts b/src/web/app/common/scripts/bytes-to-size.ts
deleted file mode 100644
index 1d2b1e7ce3..0000000000
--- a/src/web/app/common/scripts/bytes-to-size.ts
+++ /dev/null
@@ -1,6 +0,0 @@
-export default (bytes, digits = 0) => {
- const sizes = ['Bytes', 'KB', 'MB', 'GB', 'TB'];
- if (bytes == 0) return '0Byte';
- const i = Math.floor(Math.log(bytes) / Math.log(1024));
- return (bytes / Math.pow(1024, i)).toFixed(digits).replace(/\.0+$/, '') + sizes[i];
-};
diff --git a/src/web/app/common/scripts/fuck-ad-block.ts b/src/web/app/common/scripts/fuck-ad-block.ts
new file mode 100644
index 0000000000..9bcf7deeff
--- /dev/null
+++ b/src/web/app/common/scripts/fuck-ad-block.ts
@@ -0,0 +1,21 @@
+require('fuckadblock');
+
+declare const fuckAdBlock: any;
+
+export default (os) => {
+ function adBlockDetected() {
+ os.apis.dialog({
+ title: '%fa:exclamation-triangle%広告ブロッカーを無効にしてください',
+ text: '<strong>Misskeyは広告を掲載していません</strong>が、広告をブロックする機能が有効だと一部の機能が利用できなかったり、不具合が発生する場合があります。',
+ actins: [{
+ text: 'OK'
+ }]
+ });
+ }
+
+ if (fuckAdBlock === undefined) {
+ adBlockDetected();
+ } else {
+ fuckAdBlock.onDetected(adBlockDetected);
+ }
+};
diff --git a/src/web/app/common/scripts/is-promise.ts b/src/web/app/common/scripts/is-promise.ts
deleted file mode 100644
index 3b4cd70b49..0000000000
--- a/src/web/app/common/scripts/is-promise.ts
+++ /dev/null
@@ -1 +0,0 @@
-export default x => typeof x.then == 'function';
diff --git a/src/web/app/common/scripts/streaming/home-stream.ts b/src/web/app/common/scripts/streaming/home-stream.ts
index 11ad754ef0..a92b61caed 100644
--- a/src/web/app/common/scripts/streaming/home-stream.ts
+++ b/src/web/app/common/scripts/streaming/home-stream.ts
@@ -16,7 +16,9 @@ export default class Connection extends Stream {
}, 1000 * 60);
// 自分の情報が更新されたとき
- this.on('i_updated', me.update);
+ this.on('i_updated', i => {
+ Object.assign(me, i);
+ });
// トークンが再生成されたとき
// このままではAPIが利用できないので強制的にサインアウトさせる
diff --git a/src/web/app/common/scripts/text-compiler.ts b/src/web/app/common/scripts/text-compiler.ts
deleted file mode 100644
index e0ea47df26..0000000000
--- a/src/web/app/common/scripts/text-compiler.ts
+++ /dev/null
@@ -1,48 +0,0 @@
-declare const _URL_: string;
-
-import * as riot from 'riot';
-import * as pictograph from 'pictograph';
-
-const escape = text =>
- text
- .replace(/>/g, '&gt;')
- .replace(/</g, '&lt;');
-
-export default (tokens, shouldBreak) => {
- if (shouldBreak == null) {
- shouldBreak = true;
- }
-
- const me = (riot as any).mixin('i').me;
-
- let text = tokens.map(token => {
- switch (token.type) {
- case 'text':
- return escape(token.content)
- .replace(/(\r\n|\n|\r)/g, shouldBreak ? '<br>' : ' ');
- case 'bold':
- return `<strong>${escape(token.bold)}</strong>`;
- case 'url':
- return `<mk-url href="${escape(token.content)}" target="_blank"></mk-url>`;
- case 'link':
- return `<a class="link" href="${escape(token.url)}" target="_blank" title="${escape(token.url)}">${escape(token.title)}</a>`;
- case 'mention':
- return `<a href="${_URL_ + '/' + escape(token.username)}" target="_blank" data-user-preview="${token.content}" ${me && me.username == token.username ? 'data-is-me' : ''}>${token.content}</a>`;
- case 'hashtag': // TODO
- return `<a>${escape(token.content)}</a>`;
- case 'code':
- return `<pre><code>${token.html}</code></pre>`;
- case 'inline-code':
- return `<code>${token.html}</code>`;
- case 'emoji':
- return pictograph.dic[token.emoji] || token.content;
- }
- }).join('');
-
- // Remove needless whitespaces
- text = text
- .replace(/ <code>/g, '<code>').replace(/<\/code> /g, '</code>')
- .replace(/<br><code><pre>/g, '<code><pre>').replace(/<\/code><\/pre><br>/g, '</code></pre>');
-
- return text;
-};