Merge remote-tracking branch 'refs/remotes/origin/master' into no-build-requires-config
This commit is contained in:
commit
7203c176e8
|
@ -167,11 +167,7 @@ gulp.task('build:client:scripts', () => new Promise(async (ok) => {
|
||||||
.pipe(babel({
|
.pipe(babel({
|
||||||
presets: ['es2015']
|
presets: ['es2015']
|
||||||
}))
|
}))
|
||||||
.pipe(uglify({
|
.pipe(uglify());
|
||||||
mangle: {
|
|
||||||
toplevel: true
|
|
||||||
}
|
|
||||||
}));
|
|
||||||
}
|
}
|
||||||
|
|
||||||
es.merge(
|
es.merge(
|
||||||
|
|
|
@ -23,7 +23,7 @@
|
||||||
<h1>サインインしてください</h1>
|
<h1>サインインしてください</h1>
|
||||||
<mk-signin></mk-signin>
|
<mk-signin></mk-signin>
|
||||||
</main>
|
</main>
|
||||||
<footer><img src="/_/resources/auth/logo.svg" alt="Misskey"/></footer>
|
<footer><img src="/resources/auth/logo.svg" alt="Misskey"/></footer>
|
||||||
<style>
|
<style>
|
||||||
:scope
|
:scope
|
||||||
display block
|
display block
|
||||||
|
|
|
@ -2,5 +2,5 @@ extends ../base
|
||||||
|
|
||||||
block head
|
block head
|
||||||
meta(name='viewport', content='width=device-width, initial-scale=1, minimum-scale=1, maximum-scale=1, user-scalable=no')
|
meta(name='viewport', content='width=device-width, initial-scale=1, minimum-scale=1, maximum-scale=1, user-scalable=no')
|
||||||
link(rel='stylesheet', href='/_/resources/auth/style.css')
|
link(rel='stylesheet', href='/resources/auth/style.css')
|
||||||
script(src='/_/resources/auth/script.js', async, defer)
|
script(src='/resources/auth/script.js', async, defer)
|
||||||
|
|
|
@ -16,8 +16,8 @@ html(lang='ja', dir='ltr')
|
||||||
block head
|
block head
|
||||||
|
|
||||||
body
|
body
|
||||||
noscript: div: p JavaScriptを有効にしてください
|
noscript: p JavaScriptを有効にしてください
|
||||||
div#init: p
|
div#ini: p
|
||||||
span .
|
span .
|
||||||
span .
|
span .
|
||||||
span .
|
span .
|
||||||
|
|
|
@ -94,8 +94,8 @@ module.exports = callback => {
|
||||||
|
|
||||||
mixins(me);
|
mixins(me);
|
||||||
|
|
||||||
const init = document.getElementById('init');
|
const ini = document.getElementById('ini');
|
||||||
init.parentNode.removeChild(init);
|
ini.parentNode.removeChild(ini);
|
||||||
|
|
||||||
const app = document.createElement('div');
|
const app = document.createElement('div');
|
||||||
app.setAttribute('id', 'app');
|
app.setAttribute('id', 'app');
|
||||||
|
|
|
@ -1,3 +1,4 @@
|
||||||
|
(() => {
|
||||||
const head = document.getElementsByTagName('head')[0];
|
const head = document.getElementsByTagName('head')[0];
|
||||||
const ua = navigator.userAgent.toLowerCase();
|
const ua = navigator.userAgent.toLowerCase();
|
||||||
const isMobile = /mobile|iphone|ipad|android/.test(ua);
|
const isMobile = /mobile|iphone|ipad|android/.test(ua);
|
||||||
|
@ -6,7 +7,7 @@ isMobile ? mountMobile() : mountDesktop();
|
||||||
|
|
||||||
function mountDesktop() {
|
function mountDesktop() {
|
||||||
const script = document.createElement('script');
|
const script = document.createElement('script');
|
||||||
script.setAttribute('src', '/_/resources/desktop/script.js');
|
script.setAttribute('src', '/resources/desktop/script.js');
|
||||||
script.setAttribute('async', 'true');
|
script.setAttribute('async', 'true');
|
||||||
script.setAttribute('defer', 'true');
|
script.setAttribute('defer', 'true');
|
||||||
head.appendChild(script);
|
head.appendChild(script);
|
||||||
|
@ -19,8 +20,9 @@ function mountMobile() {
|
||||||
head.appendChild(meta);
|
head.appendChild(meta);
|
||||||
|
|
||||||
const script = document.createElement('script');
|
const script = document.createElement('script');
|
||||||
script.setAttribute('src', '/_/resources/mobile/script.js');
|
script.setAttribute('src', '/resources/mobile/script.js');
|
||||||
script.setAttribute('async', 'true');
|
script.setAttribute('async', 'true');
|
||||||
script.setAttribute('defer', 'true');
|
script.setAttribute('defer', 'true');
|
||||||
head.appendChild(script);
|
head.appendChild(script);
|
||||||
}
|
}
|
||||||
|
})();
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
<mk-core-error>
|
<mk-core-error>
|
||||||
<!--i: i.fa.fa-times-circle-->
|
<!--i: i.fa.fa-times-circle-->
|
||||||
<img src="/_/resources/error.jpg" alt=""/>
|
<img src="/resources/error.jpg" alt=""/>
|
||||||
<h1>サーバーに接続できません</h1>
|
<h1>サーバーに接続できません</h1>
|
||||||
<p class="text">インターネット回線に問題があるか、サーバーがダウンまたはメンテナンスしている可能性があります。しばらくしてから<a onclick={ retry }>再度お試し</a>ください。</p>
|
<p class="text">インターネット回線に問題があるか、サーバーがダウンまたはメンテナンスしている可能性があります。しばらくしてから<a onclick={ retry }>再度お試し</a>ください。</p>
|
||||||
<p class="thanks">いつもMisskeyをご利用いただきありがとうございます。</p>
|
<p class="thanks">いつもMisskeyをご利用いただきありがとうございます。</p>
|
||||||
|
|
|
@ -191,7 +191,7 @@
|
||||||
|
|
||||||
&:not([data-is-me]):not([data-is-read])
|
&:not([data-is-me]):not([data-is-read])
|
||||||
> div
|
> div
|
||||||
background-image url("/_/resources/unread.svg")
|
background-image url("/resources/unread.svg")
|
||||||
background-repeat no-repeat
|
background-repeat no-repeat
|
||||||
background-position 0 center
|
background-position 0 center
|
||||||
|
|
||||||
|
|
|
@ -2,7 +2,7 @@
|
||||||
<div class="content-container">
|
<div class="content-container">
|
||||||
<div class="balloon">
|
<div class="balloon">
|
||||||
<p class="read" if={ message.is_me && message.is_read }>既読</p>
|
<p class="read" if={ message.is_me && message.is_read }>既読</p>
|
||||||
<button class="delete-button" if={ message.is_me } title="メッセージを削除"><img src="/_/resources/desktop/messaging/delete.png" alt="Delete"/></button>
|
<button class="delete-button" if={ message.is_me } title="メッセージを削除"><img src="/resources/desktop/messaging/delete.png" alt="Delete"/></button>
|
||||||
<div class="content" if={ !message.is_deleted }>
|
<div class="content" if={ !message.is_deleted }>
|
||||||
<div ref="text"></div>
|
<div ref="text"></div>
|
||||||
<div class="image" if={ message.file }><img src={ message.file.url } alt="image" title={ message.file.name }/></div>
|
<div class="image" if={ message.file }><img src={ message.file.url } alt="image" title={ message.file.name }/></div>
|
||||||
|
|
|
@ -1,11 +1,11 @@
|
||||||
<mk-drive-browser-file data-is-selected={ (file._selected || false).toString() } data-is-contextmenu-showing={ isContextmenuShowing.toString() } onclick={ onclick } oncontextmenu={ oncontextmenu } draggable="true" ondragstart={ ondragstart } ondragend={ ondragend } title={ title }>
|
<mk-drive-browser-file data-is-selected={ (file._selected || false).toString() } data-is-contextmenu-showing={ isContextmenuShowing.toString() } onclick={ onclick } oncontextmenu={ oncontextmenu } draggable="true" ondragstart={ ondragstart } ondragend={ ondragend } title={ title }>
|
||||||
<div class="label" if={ I.avatar_id == file.id }><img src="/_/resources/label.svg"/>
|
<div class="label" if={ I.avatar_id == file.id }><img src="/resources/label.svg"/>
|
||||||
<p>アバター</p>
|
<p>アバター</p>
|
||||||
</div>
|
</div>
|
||||||
<div class="label" if={ I.banner_id == file.id }><img src="/_/resources/label.svg"/>
|
<div class="label" if={ I.banner_id == file.id }><img src="/resources/label.svg"/>
|
||||||
<p>バナー</p>
|
<p>バナー</p>
|
||||||
</div>
|
</div>
|
||||||
<div class="label" if={ I.data.wallpaper == file.id }><img src="/_/resources/label.svg"/>
|
<div class="label" if={ I.data.wallpaper == file.id }><img src="/resources/label.svg"/>
|
||||||
<p>壁紙</p>
|
<p>壁紙</p>
|
||||||
</div>
|
</div>
|
||||||
<div class="thumbnail"><img src={ file.url + '?thumbnail&size=128' } alt=""/></div>
|
<div class="thumbnail"><img src={ file.url + '?thumbnail&size=128' } alt=""/></div>
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
<mk-entrance>
|
<mk-entrance>
|
||||||
<main><img src="/_/resources/title.svg" alt="Misskey"/>
|
<main><img src="/resources/title.svg" alt="Misskey"/>
|
||||||
<mk-entrance-signin if={ mode == 'signin' }></mk-entrance-signin>
|
<mk-entrance-signin if={ mode == 'signin' }></mk-entrance-signin>
|
||||||
<mk-entrance-signup if={ mode == 'signup' }></mk-entrance-signup>
|
<mk-entrance-signup if={ mode == 'signup' }></mk-entrance-signup>
|
||||||
<div class="introduction" if={ mode == 'introduction' }>
|
<div class="introduction" if={ mode == 'introduction' }>
|
||||||
|
|
|
@ -4,7 +4,7 @@
|
||||||
<div class="medias { with: poll }" if={ files.length != 0 }>
|
<div class="medias { with: poll }" if={ files.length != 0 }>
|
||||||
<ul>
|
<ul>
|
||||||
<li each={ files }>
|
<li each={ files }>
|
||||||
<div class="img" style="background-image: url({ url + '?thumbnail&size=64' })" title={ name }></div><img class="remove" onclick={ _remove } src="/_/resources/desktop/remove.png" title="添付取り消し" alt=""/>
|
<div class="img" style="background-image: url({ url + '?thumbnail&size=64' })" title={ name }></div><img class="remove" onclick={ _remove } src="/resources/desktop/remove.png" title="添付取り消し" alt=""/>
|
||||||
</li>
|
</li>
|
||||||
<li class="add" if={ files.length < 4 } title="PCからファイルを添付" onclick={ selectFile }><i class="fa fa-plus"></i></li>
|
<li class="add" if={ files.length < 4 } title="PCからファイルを添付" onclick={ selectFile }><i class="fa fa-plus"></i></li>
|
||||||
</ul>
|
</ul>
|
||||||
|
|
|
@ -44,7 +44,7 @@
|
||||||
display block
|
display block
|
||||||
width 100%
|
width 100%
|
||||||
height 48px
|
height 48px
|
||||||
background-image url(/_/resources/desktop/header-logo.svg)
|
background-image url(/resources/desktop/header-logo.svg)
|
||||||
background-size 64px
|
background-size 64px
|
||||||
background-position center
|
background-position center
|
||||||
background-repeat no-repeat
|
background-repeat no-repeat
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
extends ../base
|
extends ../base
|
||||||
|
|
||||||
block head
|
block head
|
||||||
link(rel='stylesheet', href='/_/resources/dev/style.css')
|
link(rel='stylesheet', href='/resources/dev/style.css')
|
||||||
script(src='/_/resources/dev/script.js', async, defer)
|
script(src='/resources/dev/script.js', async, defer)
|
||||||
|
|
|
@ -4,9 +4,9 @@ html {
|
||||||
font-family: sans-serif;
|
font-family: sans-serif;
|
||||||
}
|
}
|
||||||
|
|
||||||
body > noscript > div {
|
body > noscript {
|
||||||
position: fixed;
|
position: fixed;
|
||||||
z-index: 32768;
|
z-index: 2;
|
||||||
top: 0;
|
top: 0;
|
||||||
left: 0;
|
left: 0;
|
||||||
width: 100%;
|
width: 100%;
|
||||||
|
@ -14,16 +14,16 @@ body > noscript > div {
|
||||||
text-align: center;
|
text-align: center;
|
||||||
background: #fff;
|
background: #fff;
|
||||||
}
|
}
|
||||||
body > noscript > div > p {
|
body > noscript > p {
|
||||||
display: block;
|
display: block;
|
||||||
margin: 32px;
|
margin: 32px;
|
||||||
font-size: 2em;
|
font-size: 2em;
|
||||||
color: #555;
|
color: #555;
|
||||||
}
|
}
|
||||||
|
|
||||||
#init {
|
#ini {
|
||||||
position: fixed;
|
position: fixed;
|
||||||
z-index: 16384;
|
z-index: 1;
|
||||||
top: 0;
|
top: 0;
|
||||||
left: 0;
|
left: 0;
|
||||||
width: 100%;
|
width: 100%;
|
||||||
|
@ -32,27 +32,27 @@ body > noscript > div {
|
||||||
background: #fff;
|
background: #fff;
|
||||||
cursor: wait;
|
cursor: wait;
|
||||||
}
|
}
|
||||||
#init > p {
|
#ini > p {
|
||||||
display: block;
|
display: block;
|
||||||
user-select: none;
|
user-select: none;
|
||||||
margin: 32px;
|
margin: 32px;
|
||||||
font-size: 4em;
|
font-size: 4em;
|
||||||
color: #555;
|
color: #555;
|
||||||
}
|
}
|
||||||
#init > p > span {
|
#ini > p > span {
|
||||||
animation: init 1.4s infinite ease-in-out both;
|
animation: ini 1.4s infinite ease-in-out both;
|
||||||
}
|
}
|
||||||
#init > p > span:nth-child(1) {
|
#ini > p > span:nth-child(1) {
|
||||||
animation-delay: 0s;
|
animation-delay: 0s;
|
||||||
}
|
}
|
||||||
#init > p > span:nth-child(2) {
|
#ini > p > span:nth-child(2) {
|
||||||
animation-delay: 0.16s;
|
animation-delay: 0.16s;
|
||||||
}
|
}
|
||||||
#init > p > span:nth-child(3) {
|
#ini > p > span:nth-child(3) {
|
||||||
animation-delay: 0.32s;
|
animation-delay: 0.32s;
|
||||||
}
|
}
|
||||||
|
|
||||||
@keyframes init {
|
@keyframes ini {
|
||||||
0%, 80%, 100% {
|
0%, 80%, 100% {
|
||||||
opacity: 1;
|
opacity: 1;
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
<mk-entrance>
|
<mk-entrance>
|
||||||
<main><img src="/_/resources/title.svg" alt="Misskey"/>
|
<main><img src="/resources/title.svg" alt="Misskey"/>
|
||||||
<mk-entrance-signin if={ mode == 'signin' }></mk-entrance-signin>
|
<mk-entrance-signin if={ mode == 'signin' }></mk-entrance-signin>
|
||||||
<mk-entrance-signup if={ mode == 'signup' }></mk-entrance-signup>
|
<mk-entrance-signup if={ mode == 'signup' }></mk-entrance-signup>
|
||||||
<div class="introduction" if={ mode == 'introduction' }>
|
<div class="introduction" if={ mode == 'introduction' }>
|
||||||
|
|
|
@ -40,7 +40,7 @@ app.use((req, res, next) => {
|
||||||
app.use(favicon(`${__dirname}/resources/favicon.ico`));
|
app.use(favicon(`${__dirname}/resources/favicon.ico`));
|
||||||
app.get('/manifest.json', (req, res) => res.sendFile(__dirname + '/resources/manifest.json'));
|
app.get('/manifest.json', (req, res) => res.sendFile(__dirname + '/resources/manifest.json'));
|
||||||
app.get('/apple-touch-icon.png', (req, res) => res.sendFile(__dirname + '/resources/apple-touch-icon.png'));
|
app.get('/apple-touch-icon.png', (req, res) => res.sendFile(__dirname + '/resources/apple-touch-icon.png'));
|
||||||
app.use('/_/resources', express.static(`${__dirname}/resources`, {
|
app.use('/resources', express.static(`${__dirname}/resources`, {
|
||||||
maxAge: ms('7 days')
|
maxAge: ms('7 days')
|
||||||
}));
|
}));
|
||||||
|
|
||||||
|
|
|
@ -21,6 +21,6 @@
|
||||||
"./src/**/*.ts"
|
"./src/**/*.ts"
|
||||||
],
|
],
|
||||||
"exclude": [
|
"exclude": [
|
||||||
"./src/web/**/*.ts"
|
"./src/web/app/**/*.ts"
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue