From a9dfe278f8021455fb67c87437ce120a4d67dc3f Mon Sep 17 00:00:00 2001 From: syuilo Date: Mon, 20 Feb 2017 10:44:44 +0900 Subject: [PATCH] wip --- package.json | 2 -- src/web/app/common/tags/messaging/form.tag | 11 ++++---- src/web/app/common/tags/messaging/index.tag | 9 ++++-- src/web/app/common/tags/messaging/message.tag | 28 +++++++++++-------- webpack.config.ts | 2 +- 5 files changed, 29 insertions(+), 23 deletions(-) diff --git a/package.json b/package.json index 04335daa4..b90efb819 100644 --- a/package.json +++ b/package.json @@ -97,7 +97,6 @@ "gulp-babel": "6.1.2", "gulp-cssnano": "2.1.2", "gulp-imagemin": "3.1.1", - "gulp-livescript": "3.0.1", "gulp-pug": "3.2.0", "gulp-rename": "1.2.2", "gulp-replace": "0.5.4", @@ -109,7 +108,6 @@ "is-root": "1.0.0", "is-url": "1.2.2", "js-yaml": "3.8.0", - "livescript": "1.5.0", "mime-types": "2.1.14", "mocha": "3.2.0", "mongodb": "2.2.24", diff --git a/src/web/app/common/tags/messaging/form.tag b/src/web/app/common/tags/messaging/form.tag index 8e74fbd35..4e5f5262a 100644 --- a/src/web/app/common/tags/messaging/form.tag +++ b/src/web/app/common/tags/messaging/form.tag @@ -128,17 +128,17 @@ this.upload(item.getAsFile()); } } - } + }; this.onkeypress = (e) => { if ((e.which == 10 || e.which == 13) && e.ctrlKey) { this.send(); } - } + }; this.selectFile = () => { this.refs.file.click(); - } + }; this.selectFileFromDrive = () => { const browser = document.body.appendChild(document.createElement('mk-select-file-from-drive-window')); @@ -150,7 +150,7 @@ event.one('selected', files => { files.forEach(this.addFile); }); - } + }; this.send = () => { this.sending = true; @@ -165,11 +165,12 @@ this.sending = false; this.update(); }); + }; this.clear = () => { this.refs.text.value = ''; this.files = []; this.update(); - } + }; diff --git a/src/web/app/common/tags/messaging/index.tag b/src/web/app/common/tags/messaging/index.tag index e7d110140..74173b738 100644 --- a/src/web/app/common/tags/messaging/index.tag +++ b/src/web/app/common/tags/messaging/index.tag @@ -303,7 +303,7 @@ this.history = history; this.update(); }); - } + }); this.search = () => { const q = this.refs.search.value; @@ -322,14 +322,16 @@ this.update(); .catch (err) => console.error err + }; - this.on-search-keydown = (e) => { - key = e.which + this.on-search-keydown = e => { + const key = e.which; switch (key) | 9, 40 => // Key[TAB] or Key[↓] e.preventDefault(); e.stopPropagation(); this.refs.search-result.childNodes[0].focus(); + }; this.on-search-result-keydown = (i, e) => { key = e.which @@ -350,6 +352,7 @@ e.preventDefault(); e.stopPropagation(); (this.refs.search-result.childNodes[i].next-element-sibling || this.refs.search-result.childNodes[0]).focus(); + }; diff --git a/src/web/app/common/tags/messaging/message.tag b/src/web/app/common/tags/messaging/message.tag index 96b4e8daf..de763c779 100644 --- a/src/web/app/common/tags/messaging/message.tag +++ b/src/web/app/common/tags/messaging/message.tag @@ -206,25 +206,29 @@ this.mixin('i'); this.mixin('text'); - this.message = this.opts.message - @message.is_me = @message.user.id == this.I.id + this.message = this.opts.message; + this.message.is_me = this.message.user.id == this.I.id; this.on('mount', () => { - if @message.text? - tokens = @analyze @message.text + if (this.message.text) { + const tokens = this.analyze(this.message.text); - this.refs.text.innerHTML = @compile tokens + this.refs.text.innerHTML = this.compile(tokens); - this.refs.text.children.for-each (e) => - if e.tag-name == 'MK-URL' - riot.mount e + this.refs.text.children.forEach(e => { + if (e.tagName == 'MK-URL') riot.mount(e); + }); // URLをプレビュー tokens - .filter (t) -> t.type == 'link' - .map (t) => - this.preview = this.refs.text.appendChild document.createElement 'mk-url-preview' - riot.mount @preview, do + .filter(t => t.type == 'link') + .map(t => { + const el = this.refs.text.appendChild(document.createElement('mk-url-preview')); + riot.mount(el, { url: t.content + }); + }); + } + }); diff --git a/webpack.config.ts b/webpack.config.ts index 195c433a9..6928536ff 100644 --- a/webpack.config.ts +++ b/webpack.config.ts @@ -31,7 +31,7 @@ module.exports = (config, commit, env) => { loader: 'riot-tag-loader', query: { hot: false, - type: 'livescript', + type: 'es6', style: 'stylus', expr: false, compact: true,