Clean up: Removes needless quotes

This commit is contained in:
syuilo 2017-01-12 06:00:12 +09:00
parent 520299c2b4
commit 5be6a84395
141 changed files with 674 additions and 674 deletions

View file

@ -1,6 +1,6 @@
<mk-form>
<header>
<h1><i>{ app.name }</i>があなたの<b>アカウント</b>に<b>アクセス</b>することを<b>許可</b>しますか?</h1><img src="{ app.icon_url + '?thumbnail&amp;size=64' }"/>
<h1><i>{ app.name }</i>があなたの<b>アカウント</b>に<b>アクセス</b>することを<b>許可</b>しますか?</h1><img src={ app.icon_url + '?thumbnail&amp;size=64' }/>
</header>
<div class="app">
<section>
@ -11,23 +11,23 @@
<section>
<h2>このアプリは次の権限を要求しています:</h2>
<ul>
<virtual each="{ p in app.permission }">
<li if="{ p == 'account-read' }">アカウントの情報を見る。</li>
<li if="{ p == 'account-write' }">アカウントの情報を操作する。</li>
<li if="{ p == 'post-write' }">投稿する。</li>
<li if="{ p == 'like-write' }">いいねしたりいいね解除する。</li>
<li if="{ p == 'following-write' }">フォローしたりフォロー解除する。</li>
<li if="{ p == 'drive-read' }">ドライブを見る。</li>
<li if="{ p == 'drive-write' }">ドライブを操作する。</li>
<li if="{ p == 'notification-read' }">通知を見る。</li>
<li if="{ p == 'notification-write' }">通知を操作する。</li>
<virtual each={ p in app.permission }>
<li if={ p == 'account-read' }>アカウントの情報を見る。</li>
<li if={ p == 'account-write' }>アカウントの情報を操作する。</li>
<li if={ p == 'post-write' }>投稿する。</li>
<li if={ p == 'like-write' }>いいねしたりいいね解除する。</li>
<li if={ p == 'following-write' }>フォローしたりフォロー解除する。</li>
<li if={ p == 'drive-read' }>ドライブを見る。</li>
<li if={ p == 'drive-write' }>ドライブを操作する。</li>
<li if={ p == 'notification-read' }>通知を見る。</li>
<li if={ p == 'notification-write' }>通知を操作する。</li>
</virtual>
</ul>
</section>
</div>
<div class="action">
<button onclick="{ cancel }">キャンセル</button>
<button onclick="{ accept }">アクセスを許可</button>
<button onclick={ cancel }>キャンセル</button>
<button onclick={ accept }>アクセスを許可</button>
</div>
<style type="stylus">
:scope

View file

@ -1,25 +1,25 @@
<mk-index>
<main if="{ SIGNIN }">
<p class="fetching" if="{ fetching }">読み込み中
<main if={ SIGNIN }>
<p class="fetching" if={ fetching }>読み込み中
<mk-ellipsis></mk-ellipsis>
</p>
<mk-form ref="form" if="{ state == null &amp;&amp; !fetching }" session="{ session }"></mk-form>
<div class="denied" if="{ state == 'denied' }">
<mk-form ref="form" if={ state == null &amp;&amp; !fetching } session={ session }></mk-form>
<div class="denied" if={ state == 'denied' }>
<h1>アプリケーションの連携をキャンセルしました。</h1>
<p>このアプリがあなたのアカウントにアクセスすることはありません。</p>
</div>
<div class="accepted" if="{ state == 'accepted' }">
<div class="accepted" if={ state == 'accepted' }>
<h1>{ session.app.is_authorized ? 'このアプリは既に連携済みです' : 'アプリケーションの連携を許可しました'}</h1>
<p if="{ session.app.callback_url }">アプリケーションに戻っています
<p if={ session.app.callback_url }>アプリケーションに戻っています
<mk-ellipsis></mk-ellipsis>
</p>
<p if="{ !session.app.callback_url }">アプリケーションに戻って、やっていってください。</p>
<p if={ !session.app.callback_url }>アプリケーションに戻って、やっていってください。</p>
</div>
<div class="error" if="{ state == 'fetch-session-error' }">
<div class="error" if={ state == 'fetch-session-error' }>
<p>セッションが存在しません。</p>
</div>
</main>
<main class="signin" if="{ !SIGNIN }">
<main class="signin" if={ !SIGNIN }>
<h1>サインインしてください</h1>
<mk-signin></mk-signin>
</main>

View file

@ -3,7 +3,7 @@
<h1>
<mk-ripple-string>サーバーに接続できません</mk-ripple-string>
</h1>
<p class="text">インターネット回線に問題があるか、サーバーがダウンまたはメンテナンスしている可能性があります。しばらくしてから<a onclick="{ retry }">再度お試し</a>ください。</p>
<p class="text">インターネット回線に問題があるか、サーバーがダウンまたはメンテナンスしている可能性があります。しばらくしてから<a onclick={ retry }>再度お試し</a>ください。</p>
<p class="thanks">いつもMisskeyをご利用いただきありがとうございます。</p>
<style type="stylus">
:scope

View file

@ -1,4 +1,4 @@
<mk-file-type-icon><i class="fa fa-file-image-o" if="{ kind == 'image' }"></i>
<mk-file-type-icon><i class="fa fa-file-image-o" if={ kind == 'image' }></i>
<style type="stylus">
:scope
display inline

View file

@ -3,7 +3,7 @@
<h1>Misskeyとは</h1><p><ruby>Misskey<rt>みすきー</rt></ruby>は、<a href="http://syuilo.com" target="_blank">syuilo</a>が2014年くらいから<a href="https://github.com/syuilo/misskey" target="_blank">オープンソースで</a>開発・運営を行っている、ミニブログベースのSNSです。</p>
<p>Twitter, Facebook, LINE, Google+ などを<del>パクって</del><i>参考にして</i>います。</p>
<p>無料で誰でも利用でき、広告は一切掲載していません。</p>
<p><a href="{ CONFIG.urls.about }" target="_blank">もっと知りたい方はこちら</a></p>
<p><a href={ CONFIG.urls.about } target="_blank">もっと知りたい方はこちら</a></p>
</article>
<style type="stylus">
:scope

View file

@ -1,12 +1,12 @@
<mk-signin>
<form class="{ signing: signing }" onsubmit="{ onsubmit }">
<form class={ signing: signing } onsubmit={ onsubmit }>
<label class="user-name">
<input ref="username" type="text" pattern="^[a-zA-Z0-9-]+$" placeholder="ユーザー名" autofocus="autofocus" required="required" oninput="{ oninput }"/><i class="fa fa-at"></i>
<input ref="username" type="text" pattern="^[a-zA-Z0-9-]+$" placeholder="ユーザー名" autofocus="autofocus" required="required" oninput={ oninput }/><i class="fa fa-at"></i>
</label>
<label class="password">
<input ref="password" type="password" placeholder="パスワード" required="required"/><i class="fa fa-lock"></i>
</label>
<button type="submit" disabled="{ signing }">{ signing ? 'やっています...' : 'サインイン' }</button>
<button type="submit" disabled={ signing }>{ signing ? 'やっています...' : 'サインイン' }</button>
</form>
<style type="stylus">
:scope

View file

@ -1,42 +1,42 @@
<mk-signup>
<form onsubmit="{ onsubmit }" autocomplete="off">
<form onsubmit={ onsubmit } autocomplete="off">
<label class="username">
<p class="caption"><i class="fa fa-at"></i>ユーザー名</p>
<input ref="username" type="text" pattern="^[a-zA-Z0-9-]{3,20}$" placeholder="a~z、A~Z、0~9、-" autocomplete="off" required="required" onkeyup="{ onChangeUsername }"/>
<p class="profile-page-url-preview" if="{ refs.username.value != '' &amp;&amp; username-state != 'invalidFormat' &amp;&amp; username-state != 'minRange' &amp;&amp; username-state != 'maxRange' }">{ CONFIG.url + '/' + refs.username.value }</p>
<p class="info" if="{ usernameState == 'wait' }" style="color:#999"><i class="fa fa-fw fa-spinner fa-pulse"></i>確認しています...</p>
<p class="info" if="{ usernameState == 'ok' }" style="color:#3CB7B5"><i class="fa fa-fw fa-check"></i>利用できます</p>
<p class="info" if="{ usernameState == 'unavailable' }" style="color:#FF1161"><i class="fa fa-fw fa-exclamation-triangle"></i>既に利用されています</p>
<p class="info" if="{ usernameState == 'error' }" style="color:#FF1161"><i class="fa fa-fw fa-exclamation-triangle"></i>通信エラー</p>
<p class="info" if="{ usernameState == 'invalid-format' }" style="color:#FF1161"><i class="fa fa-fw fa-exclamation-triangle"></i>a~z、A~Z、0~9、-(ハイフン)が使えます</p>
<p class="info" if="{ usernameState == 'min-range' }" style="color:#FF1161"><i class="fa fa-fw fa-exclamation-triangle"></i>3文字以上でお願いします</p>
<p class="info" if="{ usernameState == 'max-range' }" style="color:#FF1161"><i class="fa fa-fw fa-exclamation-triangle"></i>20文字以内でお願いします</p>
<input ref="username" type="text" pattern="^[a-zA-Z0-9-]{3,20}$" placeholder="a~z、A~Z、0~9、-" autocomplete="off" required="required" onkeyup={ onChangeUsername }/>
<p class="profile-page-url-preview" if={ refs.username.value != '' &amp;&amp; username-state != 'invalidFormat' &amp;&amp; username-state != 'minRange' &amp;&amp; username-state != 'maxRange' }>{ CONFIG.url + '/' + refs.username.value }</p>
<p class="info" if={ usernameState == 'wait' } style="color:#999"><i class="fa fa-fw fa-spinner fa-pulse"></i>確認しています...</p>
<p class="info" if={ usernameState == 'ok' } style="color:#3CB7B5"><i class="fa fa-fw fa-check"></i>利用できます</p>
<p class="info" if={ usernameState == 'unavailable' } style="color:#FF1161"><i class="fa fa-fw fa-exclamation-triangle"></i>既に利用されています</p>
<p class="info" if={ usernameState == 'error' } style="color:#FF1161"><i class="fa fa-fw fa-exclamation-triangle"></i>通信エラー</p>
<p class="info" if={ usernameState == 'invalid-format' } style="color:#FF1161"><i class="fa fa-fw fa-exclamation-triangle"></i>a~z、A~Z、0~9、-(ハイフン)が使えます</p>
<p class="info" if={ usernameState == 'min-range' } style="color:#FF1161"><i class="fa fa-fw fa-exclamation-triangle"></i>3文字以上でお願いします</p>
<p class="info" if={ usernameState == 'max-range' } style="color:#FF1161"><i class="fa fa-fw fa-exclamation-triangle"></i>20文字以内でお願いします</p>
</label>
<label class="password">
<p class="caption"><i class="fa fa-lock"></i>パスワード</p>
<input ref="password" type="password" placeholder="8文字以上を推奨します" autocomplete="off" required="required" onkeyup="{ onChangePassword }"/>
<div class="meter" if="{ passwordStrength != '' }" data-strength="{ passwordStrength }">
<input ref="password" type="password" placeholder="8文字以上を推奨します" autocomplete="off" required="required" onkeyup={ onChangePassword }/>
<div class="meter" if={ passwordStrength != '' } data-strength={ passwordStrength }>
<div class="value" ref="passwordMetar"></div>
</div>
<p class="info" if="{ passwordStrength == 'low' }" style="color:#FF1161"><i class="fa fa-fw fa-exclamation-triangle"></i>弱いパスワード</p>
<p class="info" if="{ passwordStrength == 'medium' }" style="color:#3CB7B5"><i class="fa fa-fw fa-check"></i>まあまあのパスワード</p>
<p class="info" if="{ passwordStrength == 'high' }" style="color:#3CB7B5"><i class="fa fa-fw fa-check"></i>強いパスワード</p>
<p class="info" if={ passwordStrength == 'low' } style="color:#FF1161"><i class="fa fa-fw fa-exclamation-triangle"></i>弱いパスワード</p>
<p class="info" if={ passwordStrength == 'medium' } style="color:#3CB7B5"><i class="fa fa-fw fa-check"></i>まあまあのパスワード</p>
<p class="info" if={ passwordStrength == 'high' } style="color:#3CB7B5"><i class="fa fa-fw fa-check"></i>強いパスワード</p>
</label>
<label class="retype-password">
<p class="caption"><i class="fa fa-lock"></i>パスワード(再入力)</p>
<input ref="passwordRetype" type="password" placeholder="確認のため再入力してください" autocomplete="off" required="required" onkeyup="{ onChangePasswordRetype }"/>
<p class="info" if="{ passwordRetypeState == 'match' }" style="color:#3CB7B5"><i class="fa fa-fw fa-check"></i>確認されました</p>
<p class="info" if="{ passwordRetypeState == 'not-match' }" style="color:#FF1161"><i class="fa fa-fw fa-exclamation-triangle"></i>一致していません</p>
<input ref="passwordRetype" type="password" placeholder="確認のため再入力してください" autocomplete="off" required="required" onkeyup={ onChangePasswordRetype }/>
<p class="info" if={ passwordRetypeState == 'match' } style="color:#3CB7B5"><i class="fa fa-fw fa-check"></i>確認されました</p>
<p class="info" if={ passwordRetypeState == 'not-match' } style="color:#FF1161"><i class="fa fa-fw fa-exclamation-triangle"></i>一致していません</p>
</label>
<label class="recaptcha">
<p class="caption"><i class="fa fa-toggle-on" if="{ recaptchaed }"></i><i class="fa fa-toggle-off" if="{ !recaptchaed }"></i>認証</p>
<div class="g-recaptcha" data-callback="onRecaptchaed" data-expired-callback="onRecaptchaExpired" data-sitekey="{ CONFIG.recaptcha.siteKey }"></div>
<p class="caption"><i class="fa fa-toggle-on" if={ recaptchaed }></i><i class="fa fa-toggle-off" if={ !recaptchaed }></i>認証</p>
<div class="g-recaptcha" data-callback="onRecaptchaed" data-expired-callback="onRecaptchaExpired" data-sitekey={ CONFIG.recaptcha.siteKey }></div>
</label>
<label class="agree-tou">
<input name="agree-tou" type="checkbox" autocomplete="off" required="required"/>
<p><a href="{ CONFIG.urls.about + '/tou' }" target="_blank">利用規約</a>に同意する</p>
<p><a href={ CONFIG.urls.about + '/tou' } target="_blank">利用規約</a>に同意する</p>
</label>
<button onclick="{ onsubmit }">アカウント作成</button>
<button onclick={ onsubmit }>アカウント作成</button>
</form>
<style type="stylus">
:scope

View file

@ -1,6 +1,6 @@
<mk-special-message>
<p if="{ m == 1 &amp;&amp; d == 1 }">Happy New Year! </p>
<p if="{ m == 12 &amp;&amp; d == 25 }">Merry Christmas!</p>
<p if={ m == 1 &amp;&amp; d == 1 }>Happy New Year! </p>
<p if={ m == 12 &amp;&amp; d == 25 }>Merry Christmas!</p>
<style type="stylus">
:scope
display block

View file

@ -1,5 +1,5 @@
<mk-time>
<time datetime="{ opts.time }"><span if="{ mode == 'relative' }">{ relative }</span><span if="{ mode == 'absolute' }">{ absolute }</span><span if="{ mode == 'detail' }">{ absolute } ({ relative })</span></time>
<time datetime={ opts.time }><span if={ mode == 'relative' }>{ relative }</span><span if={ mode == 'absolute' }>{ absolute }</span><span if={ mode == 'detail' }>{ absolute } ({ relative })</span></time>
<script>
@time = new Date @opts.time
@mode = @opts.mode || \relative

View file

@ -1,13 +1,13 @@
<mk-uploader>
<ol if="{ uploads.length &gt; 0 }">
<li each="{ uploads }">
<ol if={ uploads.length &gt; 0 }>
<li each={ uploads }>
<div class="img" style="background-image: url({ img })"></div>
<p class="name"><i class="fa fa-spinner fa-pulse"></i>{ name }</p>
<p class="status"><span class="initing" if="{ progress == undefined }">待機中
<mk-ellipsis></mk-ellipsis></span><span class="kb" if="{ progress != undefined }">{ String(Math.floor(progress.value / 1024)).replace(/(\d)(?=(\d\d\d)+(?!\d))/g, '$1,') }<i>KB</i> / { String(Math.floor(progress.max / 1024)).replace(/(\d)(?=(\d\d\d)+(?!\d))/g, '$1,') }<i>KB</i></span><span class="percentage" if="{ progress != undefined }">{ Math.floor((progress.value / progress.max) * 100) }</span></p>
<progress if="{ progress != undefined &amp;&amp; progress.value != progress.max }" value="{ progress.value }" max="{ progress.max }"></progress>
<div class="progress initing" if="{ progress == undefined }"></div>
<div class="progress waiting" if="{ progress != undefined &amp;&amp; progress.value == progress.max }"></div>
<p class="status"><span class="initing" if={ progress == undefined }>待機中
<mk-ellipsis></mk-ellipsis></span><span class="kb" if={ progress != undefined }>{ String(Math.floor(progress.value / 1024)).replace(/(\d)(?=(\d\d\d)+(?!\d))/g, '$1,') }<i>KB</i> / { String(Math.floor(progress.max / 1024)).replace(/(\d)(?=(\d\d\d)+(?!\d))/g, '$1,') }<i>KB</i></span><span class="percentage" if={ progress != undefined }>{ Math.floor((progress.value / progress.max) * 100) }</span></p>
<progress if={ progress != undefined &amp;&amp; progress.value != progress.max } value={ progress.value } max={ progress.max }></progress>
<div class="progress initing" if={ progress == undefined }></div>
<div class="progress waiting" if={ progress != undefined &amp;&amp; progress.value == progress.max }></div>
</li>
</ol>
<style type="stylus">

View file

@ -1,11 +1,11 @@
<mk-url-preview><a href="{ url }" target="_blank" title="{ url }" if="{ !loading }">
<div class="thumbnail" if="{ thumbnail }" style="{ 'background-image: url(' + thumbnail + ')' }"></div>
<mk-url-preview><a href={ url } target="_blank" title={ url } if={ !loading }>
<div class="thumbnail" if={ thumbnail } style={ 'background-image: url(' + thumbnail + ')' }></div>
<article>
<header>
<h1>{ title }</h1>
</header>
<p>{ description }</p>
<footer><img class="icon" if="{ icon }" src="{ icon }"/>
<footer><img class="icon" if={ icon } src={ icon }/>
<p>{ sitename }</p>
</footer>
</article></a>

View file

@ -1,4 +1,4 @@
<mk-url><a href="{ url }" target="{ opts.target }"><span class="schema">{ schema }//</span><span class="hostname">{ hostname }</span><span class="port" if="{ port != '' }">:{ port }</span><span class="pathname" if="{ pathname != '' }">{ pathname }</span><span class="query">{ query }</span><span class="hash">{ hash }</span></a>
<mk-url><a href={ url } target={ opts.target }><span class="schema">{ schema }//</span><span class="hostname">{ hostname }</span><span class="port" if={ port != '' }>:{ port }</span><span class="pathname" if={ pathname != '' }>{ pathname }</span><span class="query">{ query }</span><span class="hash">{ hash }</span></a>
<style type="stylus">
:scope
> a

View file

@ -1,6 +1,6 @@
<mk-autocomplete-suggestion>
<ol class="users" ref="users" if="{ users.length &gt; 0 }">
<li each="{ users }" onclick="{ parent.onClick }" onkeydown="{ parent.onKeydown }" tabindex="-1"><img class="avatar" src="{ avatar_url + '?thumbnail&amp;size=32' }" alt=""/><span class="name">{ name }</span><span class="username">@{ username }</span></li>
<ol class="users" ref="users" if={ users.length &gt; 0 }>
<li each={ users } onclick={ parent.onClick } onkeydown={ parent.onKeydown } tabindex="-1"><img class="avatar" src={ avatar_url + '?thumbnail&amp;size=32' } alt=""/><span class="name">{ name }</span><span class="username">@{ username }</span></li>
</ol>
<style type="stylus">
:scope

View file

@ -1,6 +1,6 @@
<mk-big-follow-button>
<button class="{ wait: wait, follow: !user.is_following, unfollow: user.is_following }" if="{ !init }" onclick="{ onclick }" disabled="{ wait }" title="{ user.is_following ? 'フォロー解除' : 'フォローする' }"><span if="{ !wait &amp;&amp; user.is_following }"><i class="fa fa-minus"></i>フォロー解除</span><span if="{ !wait &amp;&amp; !user.is_following }"><i class="fa fa-plus"></i>フォロー</span><i class="fa fa-spinner fa-pulse fa-fw" if="{ wait }"></i></button>
<div class="init" if="{ init }"><i class="fa fa-spinner fa-pulse fa-fw"></i></div>
<button class={ wait: wait, follow: !user.is_following, unfollow: user.is_following } if={ !init } onclick={ onclick } disabled={ wait } title={ user.is_following ? 'フォロー解除' : 'フォローする' }><span if={ !wait &amp;&amp; user.is_following }><i class="fa fa-minus"></i>フォロー解除</span><span if={ !wait &amp;&amp; !user.is_following }><i class="fa fa-plus"></i>フォロー</span><i class="fa fa-spinner fa-pulse fa-fw" if={ wait }></i></button>
<div class="init" if={ init }><i class="fa fa-spinner fa-pulse fa-fw"></i></div>
<style type="stylus">
:scope
display block

View file

@ -1,11 +1,11 @@
<mk-crop-window>
<mk-window ref="window" is-modal="{ true }" width="{ '800px' }"><yield to="header"><i class="fa fa-crop"></i>{ parent.title }</yield>
<mk-window ref="window" is-modal={ true } width={ '800px' }><yield to="header"><i class="fa fa-crop"></i>{ parent.title }</yield>
<yield to="content">
<div class="body"><img ref="img" src="{ parent.image.url + '?thumbnail&amp;quality=80' }" alt=""/></div>
<div class="body"><img ref="img" src={ parent.image.url + '?thumbnail&amp;quality=80' } alt=""/></div>
<div class="action">
<button class="skip" onclick="{ parent.skip }">クロップをスキップ</button>
<button class="cancel" onclick="{ parent.cancel }">キャンセル</button>
<button class="ok" onclick="{ parent.ok }">決定</button>
<button class="skip" onclick={ parent.skip }>クロップをスキップ</button>
<button class="cancel" onclick={ parent.cancel }>キャンセル</button>
<button class="ok" onclick={ parent.ok }>決定</button>
</div></yield>
</mk-window>
<style type="stylus">

View file

@ -1,21 +1,21 @@
<mk-debugger>
<mk-window ref="window" is-modal="{ false }" width="{ '700px' }" height="{ '550px' }"><yield to="header"><i class="fa fa-wrench"></i>Debugger</yield>
<mk-window ref="window" is-modal={ false } width={ '700px' } height={ '550px' }><yield to="header"><i class="fa fa-wrench"></i>Debugger</yield>
<yield to="content">
<section class="progress-dialog">
<h1>progress-dialog</h1>
<button class="style-normal" onclick="{ parent.progressDialog }"><i class="fa fa-play"></i></button>
<button class="style-normal" onclick="{ parent.progressDialogDestroy }"><i class="fa fa-stop"></i></button>
<button class="style-normal" onclick={ parent.progressDialog }><i class="fa fa-play"></i></button>
<button class="style-normal" onclick={ parent.progressDialogDestroy }><i class="fa fa-stop"></i></button>
<label>
<p>TITLE:</p>
<input ref="progressTitle" value="Title"/>
</label>
<label>
<p>VAL:</p>
<input ref="progressValue" type="number" oninput="{ parent.progressChange }" value="0"/>
<input ref="progressValue" type="number" oninput={ parent.progressChange } value="0"/>
</label>
<label>
<p>MAX:</p>
<input ref="progressMax" type="number" oninput="{ parent.progressChange }" value="100"/>
<input ref="progressMax" type="number" oninput={ parent.progressChange } value="100"/>
</label>
</section></yield>
</mk-window>

View file

@ -1,11 +1,11 @@
<mk-dialog>
<div class="bg" ref="bg" onclick="{ bgClick }"></div>
<div class="bg" ref="bg" onclick={ bgClick }></div>
<div class="main" ref="main">
<header ref="header"></header>
<div class="body" ref="body"></div>
<div class="buttons">
<virtual each="{ opts.buttons }">
<button onclick="{ _onclick }">{ text }</button>
<virtual each={ opts.buttons }>
<button onclick={ _onclick }>{ text }</button>
</virtual>
</div>
</div>

View file

@ -1,5 +1,5 @@
<mk-donation>
<button class="close" onclick="{ close }">閉じる x</button>
<button class="close" onclick={ close }>閉じる x</button>
<div class="message">
<p>利用者の皆さま、</p>
<p>

View file

@ -1,10 +1,10 @@
<mk-drive-browser-base-contextmenu>
<mk-contextmenu ref="ctx">
<ul>
<li onclick="{ parent.createFolder }">
<li onclick={ parent.createFolder }>
<p><i class="fa fa-folder-o"></i>フォルダーを作成</p>
</li>
<li onclick="{ parent.upload }">
<li onclick={ parent.upload }>
<p><i class="fa fa-upload"></i>ファイルをアップロード</p>
</li>
</ul>

View file

@ -1,7 +1,7 @@
<mk-drive-browser-window>
<mk-window ref="window" is-modal="{ false }" width="{ '800px' }" height="{ '500px' }"><yield to="header"><i class="fa fa-cloud"></i>ドライブ</yield>
<mk-window ref="window" is-modal={ false } width={ '800px' } height={ '500px' }><yield to="header"><i class="fa fa-cloud"></i>ドライブ</yield>
<yield to="content">
<mk-drive-browser multiple="{ true }" folder="{ parent.folder }"></mk-drive-browser></yield>
<mk-drive-browser multiple={ true } folder={ parent.folder }></mk-drive-browser></yield>
</mk-window>
<style type="stylus">
:scope

View file

@ -1,44 +1,44 @@
<mk-drive-browser>
<nav>
<div class="path" oncontextmenu="{ pathOncontextmenu }">
<mk-drive-browser-nav-folder class="{ current: folder == null }" folder="{ null }"></mk-drive-browser-nav-folder>
<virtual each="{ folder in hierarchyFolders }"><span class="separator"><i class="fa fa-angle-right"></i></span>
<mk-drive-browser-nav-folder folder="{ folder }"></mk-drive-browser-nav-folder>
</virtual><span class="separator" if="{ folder != null }"><i class="fa fa-angle-right"></i></span><span class="folder current" if="{ folder != null }">{ folder.name }</span>
<div class="path" oncontextmenu={ pathOncontextmenu }>
<mk-drive-browser-nav-folder class={ current: folder == null } folder={ null }></mk-drive-browser-nav-folder>
<virtual each={ folder in hierarchyFolders }><span class="separator"><i class="fa fa-angle-right"></i></span>
<mk-drive-browser-nav-folder folder={ folder }></mk-drive-browser-nav-folder>
</virtual><span class="separator" if={ folder != null }><i class="fa fa-angle-right"></i></span><span class="folder current" if={ folder != null }>{ folder.name }</span>
</div>
<input class="search" type="search" placeholder="&#xf002; 検索"/>
</nav>
<div class="main { uploading: uploads.length &gt; 0, loading: loading }" ref="main" onmousedown="{ onmousedown }" ondragover="{ ondragover }" ondragenter="{ ondragenter }" ondragleave="{ ondragleave }" ondrop="{ ondrop }" oncontextmenu="{ oncontextmenu }">
<div class="main { uploading: uploads.length &gt; 0, loading: loading }" ref="main" onmousedown={ onmousedown } ondragover={ ondragover } ondragenter={ ondragenter } ondragleave={ ondragleave } ondrop={ ondrop } oncontextmenu={ oncontextmenu }>
<div class="selection" ref="selection"></div>
<div class="contents" ref="contents">
<div class="folders" ref="foldersContainer" if="{ folders.length &gt; 0 }">
<virtual each="{ folder in folders }">
<mk-drive-browser-folder class="folder" folder="{ folder }"></mk-drive-browser-folder>
<div class="folders" ref="foldersContainer" if={ folders.length &gt; 0 }>
<virtual each={ folder in folders }>
<mk-drive-browser-folder class="folder" folder={ folder }></mk-drive-browser-folder>
</virtual>
<button if="{ moreFolders }">もっと読み込む</button>
<button if={ moreFolders }>もっと読み込む</button>
</div>
<div class="files" ref="filesContainer" if="{ files.length &gt; 0 }">
<virtual each="{ file in files }">
<mk-drive-browser-file class="file" file="{ file }"></mk-drive-browser-file>
<div class="files" ref="filesContainer" if={ files.length &gt; 0 }>
<virtual each={ file in files }>
<mk-drive-browser-file class="file" file={ file }></mk-drive-browser-file>
</virtual>
<button if="{ moreFiles }">もっと読み込む</button>
<button if={ moreFiles }>もっと読み込む</button>
</div>
<div class="empty" if="{ files.length == 0 &amp;&amp; folders.length == 0 &amp;&amp; !loading }">
<p if="{ draghover }">ドロップですか?いいですよ、ボクはカワイイですからね</p>
<p if="{ !draghover &amp;&amp; folder == null }"><strong>ドライブには何もありません。</strong><br/>右クリックして「ファイルをアップロード」を選んだり、ファイルをドラッグ&ドロップすることでもアップロードできます。</p>
<p if="{ !draghover &amp;&amp; folder != null }">このフォルダーは空です</p>
<div class="empty" if={ files.length == 0 &amp;&amp; folders.length == 0 &amp;&amp; !loading }>
<p if={ draghover }>ドロップですか?いいですよ、ボクはカワイイですからね</p>
<p if={ !draghover &amp;&amp; folder == null }><strong>ドライブには何もありません。</strong><br/>右クリックして「ファイルをアップロード」を選んだり、ファイルをドラッグ&ドロップすることでもアップロードできます。</p>
<p if={ !draghover &amp;&amp; folder != null }>このフォルダーは空です</p>
</div>
</div>
<div class="loading" if="{ loading }">
<div class="loading" if={ loading }>
<div class="spinner">
<div class="dot1"></div>
<div class="dot2"></div>
</div>
</div>
</div>
<div class="dropzone" if="{ draghover }"></div>
<div class="dropzone" if={ draghover }></div>
<mk-uploader ref="uploader"></mk-uploader>
<input ref="fileInput" type="file" accept="*/*" multiple="multiple" tabindex="-1" onchange="{ changeFileInput }"/>
<input ref="fileInput" type="file" accept="*/*" multiple="multiple" tabindex="-1" onchange={ changeFileInput }/>
<style type="stylus">
:scope
display block

View file

@ -1,28 +1,28 @@
<mk-drive-browser-file-contextmenu>
<mk-contextmenu ref="ctx">
<ul>
<li onclick="{ parent.rename }">
<li onclick={ parent.rename }>
<p><i class="fa fa-i-cursor"></i>名前を変更</p>
</li>
<li onclick="{ parent.copyUrl }">
<li onclick={ parent.copyUrl }>
<p><i class="fa fa-link"></i>URLをコピー</p>
</li>
<li><a href="{ parent.file.url + '?download' }" download="{ parent.file.name }" onclick="{ parent.download }"><i class="fa fa-download"></i>ダウンロード</a></li>
<li><a href={ parent.file.url + '?download' } download={ parent.file.name } onclick={ parent.download }><i class="fa fa-download"></i>ダウンロード</a></li>
<li class="separator"></li>
<li onclick="{ parent.delete }">
<li onclick={ parent.delete }>
<p><i class="fa fa-trash-o"></i>削除</p>
</li>
<li class="separator"></li>
<li class="has-child">
<p>その他...<i class="fa fa-caret-right"></i></p>
<ul>
<li onclick="{ parent.setAvatar }">
<li onclick={ parent.setAvatar }>
<p>アバターに設定</p>
</li>
<li onclick="{ parent.setBanner }">
<li onclick={ parent.setBanner }>
<p>バナーに設定</p>
</li>
<li onclick="{ parent.setWallpaper }">
<li onclick={ parent.setWallpaper }>
<p>壁紙に設定</p>
</li>
</ul>
@ -30,7 +30,7 @@
<li class="has-child">
<p>アプリで開く...<i class="fa fa-caret-right"></i></p>
<ul>
<li onclick="{ parent.addApp }">
<li onclick={ parent.addApp }>
<p>アプリを追加...</p>
</li>
</ul>

View file

@ -1,15 +1,15 @@
<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"/>
<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"/>
<p>アバター</p>
</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>
</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>
</div>
<div class="thumbnail"><img src="{ file.url + '?thumbnail&amp;size=128' }" alt=""/></div>
<p class="name"><span>{ file.name.lastIndexOf('.') != -1 ? file.name.substr(0, file.name.lastIndexOf('.')) : file.name }</span><span class="ext" if="{ file.name.lastIndexOf('.') != -1 }">{ file.name.substr(file.name.lastIndexOf('.')) }</span></p>
<div class="thumbnail"><img src={ file.url + '?thumbnail&amp;size=128' } alt=""/></div>
<p class="name"><span>{ file.name.lastIndexOf('.') != -1 ? file.name.substr(0, file.name.lastIndexOf('.')) : file.name }</span><span class="ext" if={ file.name.lastIndexOf('.') != -1 }>{ file.name.substr(file.name.lastIndexOf('.')) }</span></p>
<style type="stylus">
:scope
display block

View file

@ -1,18 +1,18 @@
<mk-drive-browser-folder-contextmenu>
<mk-contextmenu ref="ctx">
<ul>
<li onclick="{ parent.move }">
<li onclick={ parent.move }>
<p><i class="fa fa-arrow-right"></i>このフォルダへ移動</p>
</li>
<li onclick="{ parent.newWindow }">
<li onclick={ parent.newWindow }>
<p><i class="fa fa-share-square-o"></i>新しいウィンドウで表示</p>
</li>
<li class="separator"></li>
<li onclick="{ parent.rename }">
<li onclick={ parent.rename }>
<p><i class="fa fa-i-cursor"></i>名前を変更</p>
</li>
<li class="separator"></li>
<li onclick="{ parent.delete }">
<li onclick={ parent.delete }>
<p><i class="fa fa-trash-o"></i>削除</p>
</li>
</ul>

View file

@ -1,4 +1,4 @@
<mk-drive-browser-folder data-is-contextmenu-showing="{ isContextmenuShowing.toString() }" data-draghover="{ draghover.toString() }" onclick="{ onclick }" onmouseover="{ onmouseover }" onmouseout="{ onmouseout }" ondragover="{ ondragover }" ondragenter="{ ondragenter }" ondragleave="{ ondragleave }" ondrop="{ ondrop }" oncontextmenu="{ oncontextmenu }" draggable="true" ondragstart="{ ondragstart }" ondragend="{ ondragend }" title="{ title }">
<mk-drive-browser-folder data-is-contextmenu-showing={ isContextmenuShowing.toString() } data-draghover={ draghover.toString() } onclick={ onclick } onmouseover={ onmouseover } onmouseout={ onmouseout } ondragover={ ondragover } ondragenter={ ondragenter } ondragleave={ ondragleave } ondrop={ ondrop } oncontextmenu={ oncontextmenu } draggable="true" ondragstart={ ondragstart } ondragend={ ondragend } title={ title }>
<p class="name"><i class="fa fa-fw { fa-folder-o: !hover, fa-folder-open-o: hover }"></i>{ folder.name }</p>
<style type="stylus">
:scope

View file

@ -1,4 +1,4 @@
<mk-drive-browser-nav-folder data-draghover="{ draghover }" onclick="{ onclick }" ondragover="{ ondragover }" ondragenter="{ ondragenter }" ondragleave="{ ondragleave }" ondrop="{ ondrop }"><i class="fa fa-cloud" if="{ folder == null }"></i><span>{ folder == null ? 'ドライブ' : folder.name }</span>
<mk-drive-browser-nav-folder data-draghover={ draghover } onclick={ onclick } ondragover={ ondragover } ondragenter={ ondragenter } ondragleave={ ondragleave } ondrop={ ondrop }><i class="fa fa-cloud" if={ folder == null }></i><span>{ folder == null ? 'ドライブ' : folder.name }</span>
<style type="stylus">
:scope
&[data-draghover]

View file

@ -1,6 +1,6 @@
<mk-follow-button>
<button class="{ wait: wait, follow: !user.is_following, unfollow: user.is_following }" if="{ !init }" onclick="{ onclick }" disabled="{ wait }" title="{ user.is_following ? 'フォロー解除' : 'フォローする' }"><i class="fa fa-minus" if="{ !wait &amp;&amp; user.is_following }"></i><i class="fa fa-plus" if="{ !wait &amp;&amp; !user.is_following }"></i><i class="fa fa-spinner fa-pulse fa-fw" if="{ wait }"></i></button>
<div class="init" if="{ init }"><i class="fa fa-spinner fa-pulse fa-fw"></i></div>
<button class={ wait: wait, follow: !user.is_following, unfollow: user.is_following } if={ !init } onclick={ onclick } disabled={ wait } title={ user.is_following ? 'フォロー解除' : 'フォローする' }><i class="fa fa-minus" if={ !wait &amp;&amp; user.is_following }></i><i class="fa fa-plus" if={ !wait &amp;&amp; !user.is_following }></i><i class="fa fa-spinner fa-pulse fa-fw" if={ wait }></i></button>
<div class="init" if={ init }><i class="fa fa-spinner fa-pulse fa-fw"></i></div>
<style type="stylus">
:scope
display block

View file

@ -1,18 +1,18 @@
<mk-following-setuper>
<p class="title">気になるユーザーをフォロー:</p>
<div class="users" if="{ !loading &amp;&amp; users.length &gt; 0 }">
<div class="user" each="{ users }"><a class="avatar-anchor" href="{ CONFIG.url + '/' + username }"><img class="avatar" src="{ avatar_url + '?thumbnail&amp;size=42' }" alt="" data-user-preview="{ id }"/></a>
<div class="body"><a class="name" href="{ CONFIG.url + '/' + username }" target="_blank" data-user-preview="{ id }">{ name }</a>
<div class="users" if={ !loading &amp;&amp; users.length &gt; 0 }>
<div class="user" each={ users }><a class="avatar-anchor" href={ CONFIG.url + '/' + username }><img class="avatar" src={ avatar_url + '?thumbnail&amp;size=42' } alt="" data-user-preview={ id }/></a>
<div class="body"><a class="name" href={ CONFIG.url + '/' + username } target="_blank" data-user-preview={ id }>{ name }</a>
<p class="username">@{ username }</p>
</div>
<mk-follow-button user="{ this }"></mk-follow-button>
<mk-follow-button user={ this }></mk-follow-button>
</div>
</div>
<p class="empty" if="{ !loading &amp;&amp; users.length == 0 }">おすすめのユーザーは見つかりませんでした。</p>
<p class="loading" if="{ loading }"><i class="fa fa-spinner fa-pulse fa-fw"></i>読み込んでいます
<p class="empty" if={ !loading &amp;&amp; users.length == 0 }>おすすめのユーザーは見つかりませんでした。</p>
<p class="loading" if={ loading }><i class="fa fa-spinner fa-pulse fa-fw"></i>読み込んでいます
<mk-ellipsis></mk-ellipsis>
</p><a class="refresh" onclick="{ refresh }">もっと見る</a>
<button class="close" onclick="{ close }" title="閉じる"><i class="fa fa-times"></i></button>
</p><a class="refresh" onclick={ refresh }>もっと見る</a>
<button class="close" onclick={ close } title="閉じる"><i class="fa fa-times"></i></button>
<style type="stylus">
:scope
display block

View file

@ -1,5 +1,5 @@
<mk-calendar-home-widget data-special="{ special }">
<div class="calendar" data-is-holiday="{ isHoliday }">
<mk-calendar-home-widget data-special={ special }>
<div class="calendar" data-is-holiday={ isHoliday }>
<p class="month-and-year"><span class="year">{ year }年</span><span class="month">{ month }月</span></p>
<p class="day">{ day }日</p>
<p class="week-day">{ weekDay }曜日</p>
@ -8,19 +8,19 @@
<div>
<p>今日:<b>{ dayP.toFixed(1) }%</b></p>
<div class="meter">
<div class="val" style="{ 'width:' + dayP + '%' }"></div>
<div class="val" style={ 'width:' + dayP + '%' }></div>
</div>
</div>
<div>
<p>今月:<b>{ monthP.toFixed(1) }%</b></p>
<div class="meter">
<div class="val" style="{ 'width:' + monthP + '%' }"></div>
<div class="val" style={ 'width:' + monthP + '%' }></div>
</div>
</div>
<div>
<p>今年:<b>{ yearP.toFixed(1) }%</b></p>
<div class="meter">
<div class="val" style="{ 'width:' + yearP + '%' }"></div>
<div class="val" style={ 'width:' + yearP + '%' }></div>
</div>
</div>
</div>

View file

@ -1,10 +1,10 @@
<mk-mentions-home-widget>
<header><span data-is-active="{ mode == 'all' }" onclick="{ setMode.bind(this, 'all') }">すべて</span><span data-is-active="{ mode == 'following' }" onclick="{ setMode.bind(this, 'following') }">フォロー中</span></header>
<div class="loading" if="{ isLoading }">
<header><span data-is-active={ mode == 'all' } onclick={ setMode.bind(this, 'all') }>すべて</span><span data-is-active={ mode == 'following' } onclick={ setMode.bind(this, 'following') }>フォロー中</span></header>
<div class="loading" if={ isLoading }>
<mk-ellipsis-icon></mk-ellipsis-icon>
</div>
<p class="empty" if="{ isEmpty }"><i class="fa fa-comments-o"></i><span if="{ mode == 'all' }">あなた宛ての投稿はありません。</span><span if="{ mode == 'following' }">あなたがフォローしているユーザーからの言及はありません。</span></p>
<mk-timeline ref="timeline"><yield to="footer"><i class="fa fa-moon-o" if="{ !parent.moreLoading }"></i><i class="fa fa-spinner fa-pulse fa-fw" if="{ parent.moreLoading }"></i></yield></mk-timeline>
<p class="empty" if={ isEmpty }><i class="fa fa-comments-o"></i><span if={ mode == 'all' }>あなた宛ての投稿はありません。</span><span if={ mode == 'following' }>あなたがフォローしているユーザーからの言及はありません。</span></p>
<mk-timeline ref="timeline"><yield to="footer"><i class="fa fa-moon-o" if={ !parent.moreLoading }></i><i class="fa fa-spinner fa-pulse fa-fw" if={ parent.moreLoading }></i></yield></mk-timeline>
<style type="stylus">
:scope
display block

View file

@ -1,4 +1,4 @@
<mk-nav-home-widget><a href="{ CONFIG.urls.about }">Misskeyについて</a><i>・</i><a href="{ CONFIG.urls.about + '/status' }">ステータス</a><i>・</i><a href="https://github.com/syuilo/misskey">リポジトリ</a><i>・</i><a href="{ CONFIG.urls.dev }">開発者</a><i>・</i><a href="https://twitter.com/misskey_xyz" target="_blank">Follow us on <i class="fa fa-twitter"></i></a>
<mk-nav-home-widget><a href={ CONFIG.urls.about }>Misskeyについて</a><i>・</i><a href={ CONFIG.urls.about + '/status' }>ステータス</a><i>・</i><a href="https://github.com/syuilo/misskey">リポジトリ</a><i>・</i><a href={ CONFIG.urls.dev }>開発者</a><i>・</i><a href="https://twitter.com/misskey_xyz" target="_blank">Follow us on <i class="fa fa-twitter"></i></a>
<style type="stylus">
:scope
display block

View file

@ -1,6 +1,6 @@
<mk-notifications-home-widget>
<p class="title"><i class="fa fa-bell-o"></i>通知</p>
<button onclick="{ settings }" title="通知の設定"><i class="fa fa-cog"></i></button>
<button onclick={ settings } title="通知の設定"><i class="fa fa-cog"></i></button>
<mk-notifications></mk-notifications>
<style type="stylus">
:scope

View file

@ -1,14 +1,14 @@
<mk-photo-stream-home-widget>
<p class="title"><i class="fa fa-camera"></i>フォトストリーム</p>
<p class="initializing" if="{ initializing }"><i class="fa fa-spinner fa-pulse fa-fw"></i>読み込んでいます
<p class="initializing" if={ initializing }><i class="fa fa-spinner fa-pulse fa-fw"></i>読み込んでいます
<mk-ellipsis></mk-ellipsis>
</p>
<div class="stream" if="{ !initializing &amp;&amp; images.length &gt; 0 }">
<virtual each="{ image in images }">
<div class="img" style="{ 'background-image: url(' + image.url + '?thumbnail&amp;size=256)' }"></div>
<div class="stream" if={ !initializing &amp;&amp; images.length &gt; 0 }>
<virtual each={ image in images }>
<div class="img" style={ 'background-image: url(' + image.url + '?thumbnail&amp;size=256)' }></div>
</virtual>
</div>
<p class="empty" if="{ !initializing &amp;&amp; images.length == 0 }">写真はありません</p>
<p class="empty" if={ !initializing &amp;&amp; images.length == 0 }>写真はありません</p>
<style type="stylus">
:scope
display block

View file

@ -1,5 +1,5 @@
<mk-profile-home-widget>
<div class="banner" style="{ I.banner_url ? 'background-image: url(' + I.banner_url + '?thumbnail&amp;size=256)' : '' }" onclick="{ setBanner }"></div><img class="avatar" src="{ I.avatar_url + '?thumbnail&amp;size=64' }" onclick="{ setAvatar }" alt="avatar" data-user-preview="{ I.id }"/><a class="name" href="{ CONFIG.url + '/' + I.username }">{ I.name }</a>
<div class="banner" style={ I.banner_url ? 'background-image: url(' + I.banner_url + '?thumbnail&amp;size=256)' : '' } onclick={ setBanner }></div><img class="avatar" src={ I.avatar_url + '?thumbnail&amp;size=64' } onclick={ setAvatar } alt="avatar" data-user-preview={ I.id }/><a class="name" href={ CONFIG.url + '/' + I.username }>{ I.name }</a>
<p class="username">@{ I.username }</p>
<style type="stylus">
:scope

View file

@ -1,10 +1,10 @@
<mk-rss-reader-home-widget>
<p class="title"><i class="fa fa-rss-square"></i>RSS</p>
<button onclick="{ settings }" title="設定"><i class="fa fa-cog"></i></button>
<div class="feed" if="{ !initializing }">
<virtual each="{ item in items }"><a href="{ item.link }" target="_blank">{ item.title }</a></virtual>
<button onclick={ settings } title="設定"><i class="fa fa-cog"></i></button>
<div class="feed" if={ !initializing }>
<virtual each={ item in items }><a href={ item.link } target="_blank">{ item.title }</a></virtual>
</div>
<p class="initializing" if="{ initializing }"><i class="fa fa-spinner fa-pulse fa-fw"></i>読み込んでいます
<p class="initializing" if={ initializing }><i class="fa fa-spinner fa-pulse fa-fw"></i>読み込んでいます
<mk-ellipsis></mk-ellipsis>
</p>
<style type="stylus">

View file

@ -1,10 +1,10 @@
<mk-timeline-home-widget>
<mk-following-setuper if="{ noFollowing }"></mk-following-setuper>
<div class="loading" if="{ isLoading }">
<mk-following-setuper if={ noFollowing }></mk-following-setuper>
<div class="loading" if={ isLoading }>
<mk-ellipsis-icon></mk-ellipsis-icon>
</div>
<p class="empty" if="{ isEmpty }"><i class="fa fa-comments-o"></i>自分の投稿や、自分がフォローしているユーザーの投稿が表示されます。</p>
<mk-timeline ref="timeline"><yield to="footer"><i class="fa fa-moon-o" if="{ !parent.moreLoading }"></i><i class="fa fa-spinner fa-pulse fa-fw" if="{ parent.moreLoading }"></i></yield></mk-timeline>
<p class="empty" if={ isEmpty }><i class="fa fa-comments-o"></i>自分の投稿や、自分がフォローしているユーザーの投稿が表示されます。</p>
<mk-timeline ref="timeline"><yield to="footer"><i class="fa fa-moon-o" if={ !parent.moreLoading }></i><i class="fa fa-spinner fa-pulse fa-fw" if={ parent.moreLoading }></i></yield></mk-timeline>
<style type="stylus">
:scope
display block

View file

@ -1,14 +1,14 @@
<mk-user-recommendation-home-widget>
<p class="title"><i class="fa fa-users"></i>おすすめユーザー</p>
<button onclick="{ refresh }" title="他を見る"><i class="fa fa-refresh"></i></button>
<div class="user" if="{ !loading &amp;&amp; users.length != 0 }" each="{ _user in users }"><a class="avatar-anchor" href="{ CONFIG.url + '/' + _user.username }"><img class="avatar" src="{ _user.avatar_url + '?thumbnail&amp;size=42' }" alt="" data-user-preview="{ _user.id }"/></a>
<div class="body"><a class="name" href="{ CONFIG.url + '/' + _user.username }" data-user-preview="{ _user.id }">{ _user.name }</a>
<button onclick={ refresh } title="他を見る"><i class="fa fa-refresh"></i></button>
<div class="user" if={ !loading &amp;&amp; users.length != 0 } each={ _user in users }><a class="avatar-anchor" href={ CONFIG.url + '/' + _user.username }><img class="avatar" src={ _user.avatar_url + '?thumbnail&amp;size=42' } alt="" data-user-preview={ _user.id }/></a>
<div class="body"><a class="name" href={ CONFIG.url + '/' + _user.username } data-user-preview={ _user.id }>{ _user.name }</a>
<p class="username">@{ _user.username }</p>
</div>
<mk-follow-button user="{ _user }"></mk-follow-button>
<mk-follow-button user={ _user }></mk-follow-button>
</div>
<p class="empty" if="{ !loading &amp;&amp; users.length == 0 }">いません!</p>
<p class="loading" if="{ loading }"><i class="fa fa-spinner fa-pulse fa-fw"></i>読み込んでいます
<p class="empty" if={ !loading &amp;&amp; users.length == 0 }>いません!</p>
<p class="loading" if={ loading }><i class="fa fa-spinner fa-pulse fa-fw"></i>読み込んでいます
<mk-ellipsis></mk-ellipsis>
</p>
<style type="stylus">

View file

@ -2,8 +2,8 @@
<div class="main">
<div class="left" ref="left"></div>
<main>
<mk-timeline-home-widget ref="tl" if="{ mode == 'timeline' }"></mk-timeline-home-widget>
<mk-mentions-home-widget ref="tl" if="{ mode == 'mentions' }"></mk-mentions-home-widget>
<mk-timeline-home-widget ref="tl" if={ mode == 'timeline' }></mk-timeline-home-widget>
<mk-mentions-home-widget ref="tl" if={ mode == 'mentions' }></mk-mentions-home-widget>
</main>
<div class="right" ref="right"></div>
</div>

View file

@ -1,5 +1,5 @@
<mk-image-dialog>
<div class="bg" ref="bg" onclick="{ close }"></div><img ref="img" src="{ image.url }" alt="{ image.name }" title="{ image.name }" onclick="{ close }"/>
<div class="bg" ref="bg" onclick={ close }></div><img ref="img" src={ image.url } alt={ image.name } title={ image.name } onclick={ close }/>
<style type="stylus">
:scope
display block

View file

@ -1,5 +1,5 @@
<mk-images-viewer>
<div class="image" ref="view" onmousemove="{ mousemove }" style="{ 'background-image: url(' + image.url + '?thumbnail' }" onclick="{ click }"><img src="{ image.url + '?thumbnail&amp;size=512' }" alt="{ image.name }" title="{ image.name }"/></div>
<div class="image" ref="view" onmousemove={ mousemove } style={ 'background-image: url(' + image.url + '?thumbnail' } onclick={ click }><img src={ image.url + '?thumbnail&amp;size=512' } alt={ image.name } title={ image.name }/></div>
<style type="stylus">
:scope
display block

View file

@ -1,12 +1,12 @@
<mk-input-dialog>
<mk-window ref="window" is-modal="{ true }" width="{ '500px' }"><yield to="header"><i class="fa fa-i-cursor"></i>{ parent.title }</yield>
<mk-window ref="window" is-modal={ true } width={ '500px' }><yield to="header"><i class="fa fa-i-cursor"></i>{ parent.title }</yield>
<yield to="content">
<div class="body">
<input ref="text" oninput="{ parent.update }" onkeydown="{ parent.onKeydown }" placeholder="{ parent.placeholder }"/>
<input ref="text" oninput={ parent.update } onkeydown={ parent.onKeydown } placeholder={ parent.placeholder }/>
</div>
<div class="action">
<button class="cancel" onclick="{ parent.cancel }">キャンセル</button>
<button class="ok" disabled="{ !parent.allowEmpty &amp;&amp; refs.text.value.length == 0 }" onclick="{ parent.ok }">決定</button>
<button class="cancel" onclick={ parent.cancel }>キャンセル</button>
<button class="ok" disabled={ !parent.allowEmpty &amp;&amp; refs.text.value.length == 0 } onclick={ parent.ok }>決定</button>
</div></yield>
</mk-window>
<style type="stylus">

View file

@ -1,14 +1,14 @@
<mk-list-user><a class="avatar-anchor" href="{ CONFIG.url + '/' + user.username }"><img class="avatar" src="{ user.avatar_url + '?thumbnail&amp;size=64' }" alt="avatar"/></a>
<mk-list-user><a class="avatar-anchor" href={ CONFIG.url + '/' + user.username }><img class="avatar" src={ user.avatar_url + '?thumbnail&amp;size=64' } alt="avatar"/></a>
<div class="main">
<header>
<div class="left"><a class="name" href="{ CONFIG.url + '/' + user.username }">{ user.name }</a><span class="username">@{ user.username }</span></div>
<div class="left"><a class="name" href={ CONFIG.url + '/' + user.username }>{ user.name }</a><span class="username">@{ user.username }</span></div>
</header>
<div class="body">
<p class="followed" if="{ user.is_followed }">フォローされています</p>
<p class="followed" if={ user.is_followed }>フォローされています</p>
<div class="bio">{ user.bio }</div>
</div>
</div>
<mk-follow-button user="{ user }"></mk-follow-button>
<mk-follow-button user={ user }></mk-follow-button>
<style type="stylus">
:scope
display block

View file

@ -1,8 +1,8 @@
<mk-messaging-form>
<textarea ref="text" onkeypress="{ onkeypress }" onpaste="{ onpaste }" placeholder="ここにメッセージを入力"></textarea>
<textarea ref="text" onkeypress={ onkeypress } onpaste={ onpaste } placeholder="ここにメッセージを入力"></textarea>
<div class="files"></div>
<mk-uploader ref="uploader"></mk-uploader>
<button class="send" onclick="{ send }" disabled="{ sending }" title="メッセージを送信"><i class="fa fa-paper-plane" if="{ !sending }"></i><i class="fa fa-spinner fa-spin" if="{ sending }"></i></button>
<button class="send" onclick={ send } disabled={ sending } title="メッセージを送信"><i class="fa fa-paper-plane" if={ !sending }></i><i class="fa fa-spinner fa-spin" if={ sending }></i></button>
<button class="attach-from-local" type="button" title="PCから画像を添付する"><i class="fa fa-upload"></i></button>
<button class="attach-from-drive" type="button" title="アルバムから画像を添付する"><i class="fa fa-folder-open"></i></button>
<input name="file" type="file" accept="image/*"/>

View file

@ -2,27 +2,27 @@
<div class="search">
<div class="form">
<label for="search-input"><i class="fa fa-search"></i></label>
<input ref="searchInput" type="search" oninput="{ search }" placeholder="ユーザーを探す"/>
<input ref="searchInput" type="search" oninput={ search } placeholder="ユーザーを探す"/>
</div>
<div class="result">
<ol class="users" if="{ searchResult.length &gt; 0 }">
<li each="{ user in searchResult }"><a onclick="{ user._click }"><img class="avatar" src="{ user.avatar_url + '?thumbnail&amp;size=32' }" alt=""/><span class="name">{ user.name }</span><span class="username">@{ user.username }</span></a></li>
<ol class="users" if={ searchResult.length &gt; 0 }>
<li each={ user in searchResult }><a onclick={ user._click }><img class="avatar" src={ user.avatar_url + '?thumbnail&amp;size=32' } alt=""/><span class="name">{ user.name }</span><span class="username">@{ user.username }</span></a></li>
</ol>
</div>
</div>
<div class="main">
<div class="history" if="{ history.length &gt; 0 }">
<virtual each="{ history }"><a class="user" data-is-me="{ is_me }" data-is-read="{ is_read }" onclick="{ _click }">
<div><img class="avatar" src="{ (is_me ? recipient.avatar_url : user.avatar_url) + '?thumbnail&amp;size=64' }" alt=""/>
<div class="history" if={ history.length &gt; 0 }>
<virtual each={ history }><a class="user" data-is-me={ is_me } data-is-read={ is_read } onclick={ _click }>
<div><img class="avatar" src={ (is_me ? recipient.avatar_url : user.avatar_url) + '?thumbnail&amp;size=64' } alt=""/>
<header><span class="name">{ is_me ? recipient.name : user.name }</span><span class="username">{ '@' + (is_me ? recipient.username : user.username ) }</span>
<mk-time time="{ created_at }"></mk-time>
<mk-time time={ created_at }></mk-time>
</header>
<div class="body">
<p class="text"><span class="me" if="{ is_me }">あなた:</span>{ text }</p>
<p class="text"><span class="me" if={ is_me }>あなた:</span>{ text }</p>
</div>
</div></a></virtual>
</div>
<p class="no-history" if="{ history.length == 0 }">履歴はありません。<br/>ユーザーを検索して、いつでもメッセージを送受信できます。</p>
<p class="no-history" if={ history.length == 0 }>履歴はありません。<br/>ユーザーを検索して、いつでもメッセージを送受信できます。</p>
</div>
<style type="stylus">
:scope

View file

@ -1,18 +1,18 @@
<mk-messaging-message data-is-me="{ message.is_me }"><a class="avatar-anchor" href="{ CONFIG.url + '/' + message.user.username }" title="{ message.user.username }" target="_blank"><img class="avatar" src="{ message.user.avatar_url + '?thumbnail&amp;size=64' }" alt=""/></a>
<mk-messaging-message data-is-me={ message.is_me }><a class="avatar-anchor" href={ CONFIG.url + '/' + message.user.username } title={ message.user.username } target="_blank"><img class="avatar" src={ message.user.avatar_url + '?thumbnail&amp;size=64' } alt=""/></a>
<div class="content-container">
<div class="balloon">
<p class="read" if="{ message.is_me &amp;&amp; message.is_read }">既読</p>
<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 }">
<p class="read" if={ message.is_me &amp;&amp; message.is_read }>既読</p>
<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 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>
</div>
<div class="content" if="{ message.is_deleted }">
<div class="content" if={ message.is_deleted }>
<p class="is-deleted">このメッセージは削除されました</p>
</div>
</div>
<footer>
<mk-time time="{ message.created_at }"></mk-time><i class="fa fa-pencil is-edited" if="{ message.is_edited }"></i>
<mk-time time={ message.created_at }></mk-time><i class="fa fa-pencil is-edited" if={ message.is_edited }></i>
</footer>
</div>
<style type="stylus">

View file

@ -1,7 +1,7 @@
<mk-messaging-room-window>
<mk-window ref="window" is-modal="{ false }" width="{ '500px' }" height="{ '560px' }"><yield to="header"><i class="fa fa-comments"></i>メッセージ: { parent.user.name }</yield>
<mk-window ref="window" is-modal={ false } width={ '500px' } height={ '560px' }><yield to="header"><i class="fa fa-comments"></i>メッセージ: { parent.user.name }</yield>
<yield to="content">
<mk-messaging-room user="{ parent.user }"></mk-messaging-room></yield>
<mk-messaging-room user={ parent.user }></mk-messaging-room></yield>
</mk-window>
<style type="stylus">
:scope

View file

@ -1,17 +1,17 @@
<mk-messaging-room>
<div class="stream" ref="stream">
<p class="initializing" if="{ init }"><i class="fa fa-spinner fa-spin"></i>読み込み中</p>
<p class="empty" if="{ !init &amp;&amp; messages.length == 0 }"><i class="fa fa-info-circle"></i>このユーザーとまだ会話したことがありません</p>
<virtual each="{ message, i in messages }">
<mk-messaging-message message="{ message }"></mk-messaging-message>
<p class="date" if="{ i != messages.length - 1 &amp;&amp; message._date != messages[i + 1]._date }"><span>{ messages[i + 1]._datetext }</span></p>
<p class="initializing" if={ init }><i class="fa fa-spinner fa-spin"></i>読み込み中</p>
<p class="empty" if={ !init &amp;&amp; messages.length == 0 }><i class="fa fa-info-circle"></i>このユーザーとまだ会話したことがありません</p>
<virtual each={ message, i in messages }>
<mk-messaging-message message={ message }></mk-messaging-message>
<p class="date" if={ i != messages.length - 1 &amp;&amp; message._date != messages[i + 1]._date }><span>{ messages[i + 1]._datetext }</span></p>
</virtual>
</div>
<div class="typings"></div>
<footer>
<div ref="notifications"></div>
<div class="grippie" title="ドラッグしてフォームの広さを調整"></div>
<mk-messaging-form user="{ user }"></mk-messaging-form>
<mk-messaging-form user={ user }></mk-messaging-form>
</footer>
<style type="stylus">
:scope

View file

@ -1,5 +1,5 @@
<mk-messaging-window>
<mk-window ref="window" is-modal="{ false }" width="{ '500px' }" height="{ '560px' }"><yield to="header"><i class="fa fa-comments"></i>メッセージ</yield>
<mk-window ref="window" is-modal={ false } width={ '500px' } height={ '560px' }><yield to="header"><i class="fa fa-comments"></i>メッセージ</yield>
<yield to="content">
<mk-messaging ref="index"></mk-messaging></yield>
</mk-window>

View file

@ -1,44 +1,44 @@
<mk-notifications>
<div class="notifications" if="{ notifications.length != 0 }">
<virtual each="{ notification, i in notifications }">
<div class="notifications" if={ notifications.length != 0 }>
<virtual each={ notification, i in notifications }>
<div class="notification { notification.type }">
<mk-time time="{ notification.created_at }"></mk-time>
<div class="main" if="{ notification.type == 'like' }"><a class="avatar-anchor" href="{ CONFIG.url + '/' + notification.user.username }" data-user-preview="{ notification.user.id }"><img class="avatar" src="{ notification.user.avatar_url + '?thumbnail&amp;size=48' }" alt="avatar"/></a>
<mk-time time={ notification.created_at }></mk-time>
<div class="main" if={ notification.type == 'like' }><a class="avatar-anchor" href={ CONFIG.url + '/' + notification.user.username } data-user-preview={ notification.user.id }><img class="avatar" src={ notification.user.avatar_url + '?thumbnail&amp;size=48' } alt="avatar"/></a>
<div class="text">
<p><i class="fa fa-thumbs-o-up"></i><a href="{ CONFIG.url + '/' + notification.user.username }" data-user-preview="{ notification.user.id }">{ notification.user.name }</a></p><a class="post-ref" href="{ CONFIG.url + '/' + notification.post.user.username + '/' + notification.post.id }">{ getPostSummary(notification.post) }</a>
<p><i class="fa fa-thumbs-o-up"></i><a href={ CONFIG.url + '/' + notification.user.username } data-user-preview={ notification.user.id }>{ notification.user.name }</a></p><a class="post-ref" href={ CONFIG.url + '/' + notification.post.user.username + '/' + notification.post.id }>{ getPostSummary(notification.post) }</a>
</div>
</div>
<div class="main" if="{ notification.type == 'repost' }"><a class="avatar-anchor" href="{ CONFIG.url + '/' + notification.post.user.username }" data-user-preview="{ notification.post.user_id }"><img class="avatar" src="{ notification.post.user.avatar_url + '?thumbnail&amp;size=48' }" alt="avatar"/></a>
<div class="main" if={ notification.type == 'repost' }><a class="avatar-anchor" href={ CONFIG.url + '/' + notification.post.user.username } data-user-preview={ notification.post.user_id }><img class="avatar" src={ notification.post.user.avatar_url + '?thumbnail&amp;size=48' } alt="avatar"/></a>
<div class="text">
<p><i class="fa fa-retweet"></i><a href="{ CONFIG.url + '/' + notification.post.user.username }" data-user-preview="{ notification.post.user_id }">{ notification.post.user.name }</a></p><a class="post-ref" href="{ CONFIG.url + '/' + notification.post.user.username + '/' + notification.post.id }">{ getPostSummary(notification.post.repost) }</a>
<p><i class="fa fa-retweet"></i><a href={ CONFIG.url + '/' + notification.post.user.username } data-user-preview={ notification.post.user_id }>{ notification.post.user.name }</a></p><a class="post-ref" href={ CONFIG.url + '/' + notification.post.user.username + '/' + notification.post.id }>{ getPostSummary(notification.post.repost) }</a>
</div>
</div>
<div class="main" if="{ notification.type == 'quote' }"><a class="avatar-anchor" href="{ CONFIG.url + '/' + notification.post.user.username }" data-user-preview="{ notification.post.user_id }"><img class="avatar" src="{ notification.post.user.avatar_url + '?thumbnail&amp;size=48' }" alt="avatar"/></a>
<div class="main" if={ notification.type == 'quote' }><a class="avatar-anchor" href={ CONFIG.url + '/' + notification.post.user.username } data-user-preview={ notification.post.user_id }><img class="avatar" src={ notification.post.user.avatar_url + '?thumbnail&amp;size=48' } alt="avatar"/></a>
<div class="text">
<p><i class="fa fa-quote-left"></i><a href="{ CONFIG.url + '/' + notification.post.user.username }" data-user-preview="{ notification.post.user_id }">{ notification.post.user.name }</a></p><a class="post-preview" href="{ CONFIG.url + '/' + notification.post.user.username + '/' + notification.post.id }">{ getPostSummary(notification.post) }</a>
<p><i class="fa fa-quote-left"></i><a href={ CONFIG.url + '/' + notification.post.user.username } data-user-preview={ notification.post.user_id }>{ notification.post.user.name }</a></p><a class="post-preview" href={ CONFIG.url + '/' + notification.post.user.username + '/' + notification.post.id }>{ getPostSummary(notification.post) }</a>
</div>
</div>
<div class="main" if="{ notification.type == 'follow' }"><a class="avatar-anchor" href="{ CONFIG.url + '/' + notification.user.username }" data-user-preview="{ notification.user.id }"><img class="avatar" src="{ notification.user.avatar_url + '?thumbnail&amp;size=48' }" alt="avatar"/></a>
<div class="main" if={ notification.type == 'follow' }><a class="avatar-anchor" href={ CONFIG.url + '/' + notification.user.username } data-user-preview={ notification.user.id }><img class="avatar" src={ notification.user.avatar_url + '?thumbnail&amp;size=48' } alt="avatar"/></a>
<div class="text">
<p><i class="fa fa-user-plus"></i><a href="{ CONFIG.url + '/' + notification.user.username }" data-user-preview="{ notification.user.id }">{ notification.user.name }</a></p>
<p><i class="fa fa-user-plus"></i><a href={ CONFIG.url + '/' + notification.user.username } data-user-preview={ notification.user.id }>{ notification.user.name }</a></p>
</div>
</div>
<div class="main" if="{ notification.type == 'reply' }"><a class="avatar-anchor" href="{ CONFIG.url + '/' + notification.post.user.username }" data-user-preview="{ notification.post.user_id }"><img class="avatar" src="{ notification.post.user.avatar_url + '?thumbnail&amp;size=48' }" alt="avatar"/></a>
<div class="main" if={ notification.type == 'reply' }><a class="avatar-anchor" href={ CONFIG.url + '/' + notification.post.user.username } data-user-preview={ notification.post.user_id }><img class="avatar" src={ notification.post.user.avatar_url + '?thumbnail&amp;size=48' } alt="avatar"/></a>
<div class="text">
<p><i class="fa fa-reply"></i><a href="{ CONFIG.url + '/' + notification.post.user.username }" data-user-preview="{ notification.post.user_id }">{ notification.post.user.name }</a></p><a class="post-preview" href="{ CONFIG.url + '/' + notification.post.user.username + '/' + notification.post.id }">{ getPostSummary(notification.post) }</a>
<p><i class="fa fa-reply"></i><a href={ CONFIG.url + '/' + notification.post.user.username } data-user-preview={ notification.post.user_id }>{ notification.post.user.name }</a></p><a class="post-preview" href={ CONFIG.url + '/' + notification.post.user.username + '/' + notification.post.id }>{ getPostSummary(notification.post) }</a>
</div>
</div>
<div class="main" if="{ notification.type == 'mention' }"><a class="avatar-anchor" href="{ CONFIG.url + '/' + notification.post.user.username }" data-user-preview="{ notification.post.user_id }"><img class="avatar" src="{ notification.post.user.avatar_url + '?thumbnail&amp;size=48' }" alt="avatar"/></a>
<div class="main" if={ notification.type == 'mention' }><a class="avatar-anchor" href={ CONFIG.url + '/' + notification.post.user.username } data-user-preview={ notification.post.user_id }><img class="avatar" src={ notification.post.user.avatar_url + '?thumbnail&amp;size=48' } alt="avatar"/></a>
<div class="text">
<p><i class="fa fa-at"></i><a href="{ CONFIG.url + '/' + notification.post.user.username }" data-user-preview="{ notification.post.user_id }">{ notification.post.user.name }</a></p><a class="post-preview" href="{ CONFIG.url + '/' + notification.post.user.username + '/' + notification.post.id }">{ getPostSummary(notification.post) }</a>
<p><i class="fa fa-at"></i><a href={ CONFIG.url + '/' + notification.post.user.username } data-user-preview={ notification.post.user_id }>{ notification.post.user.name }</a></p><a class="post-preview" href={ CONFIG.url + '/' + notification.post.user.username + '/' + notification.post.id }>{ getPostSummary(notification.post) }</a>
</div>
</div>
</div>
<p class="date" if="{ i != notifications.length - 1 &amp;&amp; notification._date != notifications[i + 1]._date }"><span><i class="fa fa-angle-up"></i>{ notification._datetext }</span><span><i class="fa fa-angle-down"></i>{ notifications[i + 1]._datetext }</span></p>
<p class="date" if={ i != notifications.length - 1 &amp;&amp; notification._date != notifications[i + 1]._date }><span><i class="fa fa-angle-up"></i>{ notification._datetext }</span><span><i class="fa fa-angle-down"></i>{ notifications[i + 1]._datetext }</span></p>
</virtual>
</div>
<p class="empty" if="{ notifications.length == 0 &amp;&amp; !loading }">ありません!</p>
<p class="loading" if="{ loading }"><i class="fa fa-spinner fa-pulse fa-fw"></i>読み込んでいます
<p class="empty" if={ notifications.length == 0 &amp;&amp; !loading }>ありません!</p>
<p class="loading" if={ loading }><i class="fa fa-spinner fa-pulse fa-fw"></i>読み込んでいます
<mk-ellipsis></mk-ellipsis>
</p>
<style type="stylus">

View file

@ -1,10 +1,10 @@
<mk-entrance>
<main><img src="/_/resources/title.svg" alt="Misskey"/>
<mk-entrance-signin if="{ mode == 'signin' }"></mk-entrance-signin>
<mk-entrance-signup if="{ mode == 'signup' }"></mk-entrance-signup>
<div class="introduction" if="{ mode == 'introduction' }">
<mk-entrance-signin if={ mode == 'signin' }></mk-entrance-signin>
<mk-entrance-signup if={ mode == 'signup' }></mk-entrance-signup>
<div class="introduction" if={ mode == 'introduction' }>
<mk-introduction></mk-introduction>
<button onclick="{ signin }">わかった</button>
<button onclick={ signin }>わかった</button>
</div>
</main>
<mk-forkit></mk-forkit>

View file

@ -1,12 +1,12 @@
<mk-entrance-signin><a class="help" href="{ CONFIG.urls.about + '/help' }" title="お困りですか?"><i class="fa fa-question"></i></a>
<mk-entrance-signin><a class="help" href={ CONFIG.urls.about + '/help' } title="お困りですか?"><i class="fa fa-question"></i></a>
<div class="form">
<h1><img if="{ user }" src="{ user.avatar_url + '?thumbnail&amp;size=32' }"/>
<h1><img if={ user } src={ user.avatar_url + '?thumbnail&amp;size=32' }/>
<p>{ user ? user.name : 'アカウント' }</p>
</h1>
<mk-signin ref="signin"></mk-signin>
</div>
<div class="divider"><span>or</span></div>
<button class="signup" onclick="{ parent.signup }">新規登録</button><a class="introduction" onclick="{ introduction }">Misskeyについて</a>
<button class="signup" onclick={ parent.signup }>新規登録</button><a class="introduction" onclick={ introduction }>Misskeyについて</a>
<style type="stylus">
:scope
display block

View file

@ -1,6 +1,6 @@
<mk-entrance-signup>
<mk-signup></mk-signup>
<button class="cancel" type="button" onclick="{ parent.signin }" title="キャンセル"><i class="fa fa-times"></i></button>
<button class="cancel" type="button" onclick={ parent.signin } title="キャンセル"><i class="fa fa-times"></i></button>
<style type="stylus">
:scope
display block

View file

@ -1,6 +1,6 @@
<mk-home-page>
<mk-ui ref="ui" page="{ page }">
<mk-home ref="home" mode="{ parent.opts.mode }"></mk-home>
<mk-ui ref="ui" page={ page }>
<mk-home ref="home" mode={ parent.opts.mode }></mk-home>
</mk-ui>
<style type="stylus">
:scope

View file

@ -1,7 +1,7 @@
<mk-post-page>
<mk-ui ref="ui">
<main>
<mk-post-detail ref="detail" post="{ parent.post }"></mk-post-detail>
<mk-post-detail ref="detail" post={ parent.post }></mk-post-detail>
</main>
</mk-ui>
<style type="stylus">

View file

@ -1,6 +1,6 @@
<mk-search-page>
<mk-ui ref="ui">
<mk-search ref="search" query="{ parent.opts.query }"></mk-search>
<mk-search ref="search" query={ parent.opts.query }></mk-search>
</mk-ui>
<style type="stylus">
:scope

View file

@ -1,6 +1,6 @@
<mk-user-page>
<mk-ui ref="ui">
<mk-user ref="user" user="{ parent.user }" page="{ parent.opts.page }"></mk-user>
<mk-user ref="user" user={ parent.user } page={ parent.opts.page }></mk-user>
</mk-ui>
<style type="stylus">
:scope

View file

@ -1,14 +1,14 @@
<mk-post-detail-sub title="{ title }"><a class="avatar-anchor" href="{ CONFIG.url + '/' + post.user.username }"><img class="avatar" src="{ post.user.avatar_url + '?thumbnail&amp;size=64' }" alt="avatar" data-user-preview="{ post.user_id }"/></a>
<mk-post-detail-sub title={ title }><a class="avatar-anchor" href={ CONFIG.url + '/' + post.user.username }><img class="avatar" src={ post.user.avatar_url + '?thumbnail&amp;size=64' } alt="avatar" data-user-preview={ post.user_id }/></a>
<div class="main">
<header>
<div class="left"><a class="name" href="{ CONFIG.url + '/' + post.user.username }" data-user-preview="{ post.user_id }">{ post.user.name }</a><span class="username">@{ post.user.username }</span></div>
<div class="right"><a class="time" href="{ url }">
<mk-time time="{ post.created_at }"></mk-time></a></div>
<div class="left"><a class="name" href={ CONFIG.url + '/' + post.user.username } data-user-preview={ post.user_id }>{ post.user.name }</a><span class="username">@{ post.user.username }</span></div>
<div class="right"><a class="time" href={ url }>
<mk-time time={ post.created_at }></mk-time></a></div>
</header>
<div class="body">
<div class="text" ref="text"></div>
<div class="media" if="{ post.media }">
<virtual each="{ file in post.media }"><img src="{ file.url + '?thumbnail&amp;size=512' }" alt="{ file.name }" title="{ file.name }"/></virtual>
<div class="media" if={ post.media }>
<virtual each={ file in post.media }><img src={ file.url + '?thumbnail&amp;size=512' } alt={ file.name } title={ file.name }/></virtual>
</div>
</div>
</div>

View file

@ -1,63 +1,63 @@
<mk-post-detail title="{ title }">
<div class="fetching" if="{ fetching }">
<mk-post-detail title={ title }>
<div class="fetching" if={ fetching }>
<mk-ellipsis-icon></mk-ellipsis-icon>
</div>
<div class="main" if="{ !fetching }">
<button class="read-more" if="{ p.reply_to &amp;&amp; p.reply_to.reply_to_id &amp;&amp; context == null }" title="会話をもっと読み込む" onclick="{ loadContext }" disabled="{ loadingContext }"><i class="fa fa-ellipsis-v" if="{ !loadingContext }"></i><i class="fa fa-spinner fa-pulse" if="{ loadingContext }"></i></button>
<div class="main" if={ !fetching }>
<button class="read-more" if={ p.reply_to &amp;&amp; p.reply_to.reply_to_id &amp;&amp; context == null } title="会話をもっと読み込む" onclick={ loadContext } disabled={ loadingContext }><i class="fa fa-ellipsis-v" if={ !loadingContext }></i><i class="fa fa-spinner fa-pulse" if={ loadingContext }></i></button>
<div class="context">
<virtual each="{ post in context }">
<mk-post-detail-sub post="{ post }"></mk-post-detail-sub>
<virtual each={ post in context }>
<mk-post-detail-sub post={ post }></mk-post-detail-sub>
</virtual>
</div>
<div class="reply-to" if="{ p.reply_to }">
<mk-post-detail-sub post="{ p.reply_to }"></mk-post-detail-sub>
<div class="reply-to" if={ p.reply_to }>
<mk-post-detail-sub post={ p.reply_to }></mk-post-detail-sub>
</div>
<div class="repost" if="{ isRepost }">
<p><a class="avatar-anchor" href="{ CONFIG.url + '/' + post.user.username }" data-user-preview="{ post.user_id }"><img class="avatar" src="{ post.user.avatar_url + '?thumbnail&amp;size=32' }" alt="avatar"/></a><i class="fa fa-retweet"></i><a class="name" href="{ CONFIG.url + '/' + post.user.username }">{ post.user.name }</a>がRepost</p>
<div class="repost" if={ isRepost }>
<p><a class="avatar-anchor" href={ CONFIG.url + '/' + post.user.username } data-user-preview={ post.user_id }><img class="avatar" src={ post.user.avatar_url + '?thumbnail&amp;size=32' } alt="avatar"/></a><i class="fa fa-retweet"></i><a class="name" href={ CONFIG.url + '/' + post.user.username }>{ post.user.name }</a>がRepost</p>
</div>
<article><a class="avatar-anchor" href="{ CONFIG.url + '/' + p.user.username }"><img class="avatar" src="{ p.user.avatar_url + '?thumbnail&amp;size=64' }" alt="avatar" data-user-preview="{ p.user.id }"/></a>
<header><a class="name" href="{ CONFIG.url + '/' + p.user.username }" data-user-preview="{ p.user.id }">{ p.user.name }</a><span class="username">@{ p.user.username }</span><a class="time" href="{ url }">
<mk-time time="{ p.created_at }"></mk-time></a></header>
<article><a class="avatar-anchor" href={ CONFIG.url + '/' + p.user.username }><img class="avatar" src={ p.user.avatar_url + '?thumbnail&amp;size=64' } alt="avatar" data-user-preview={ p.user.id }/></a>
<header><a class="name" href={ CONFIG.url + '/' + p.user.username } data-user-preview={ p.user.id }>{ p.user.name }</a><span class="username">@{ p.user.username }</span><a class="time" href={ url }>
<mk-time time={ p.created_at }></mk-time></a></header>
<div class="body">
<div class="text" ref="text"></div>
<div class="media" if="{ p.media }">
<virtual each="{ file in p.media }"><img src="{ file.url + '?thumbnail&amp;size=512' }" alt="{ file.name }" title="{ file.name }"/></virtual>
<div class="media" if={ p.media }>
<virtual each={ file in p.media }><img src={ file.url + '?thumbnail&amp;size=512' } alt={ file.name } title={ file.name }/></virtual>
</div>
</div>
<footer>
<button onclick="{ reply }" title="返信"><i class="fa fa-reply"></i>
<p class="count" if="{ p.replies_count &gt; 0 }">{ p.replies_count }</p>
<button onclick={ reply } title="返信"><i class="fa fa-reply"></i>
<p class="count" if={ p.replies_count &gt; 0 }>{ p.replies_count }</p>
</button>
<button onclick="{ repost }" title="Repost"><i class="fa fa-retweet"></i>
<p class="count" if="{ p.repost_count &gt; 0 }">{ p.repost_count }</p>
<button onclick={ repost } title="Repost"><i class="fa fa-retweet"></i>
<p class="count" if={ p.repost_count &gt; 0 }>{ p.repost_count }</p>
</button>
<button class="{ liked: p.is_liked }" onclick="{ like }" title="善哉"><i class="fa fa-thumbs-o-up"></i>
<p class="count" if="{ p.likes_count &gt; 0 }">{ p.likes_count }</p>
<button class={ liked: p.is_liked } onclick={ like } title="善哉"><i class="fa fa-thumbs-o-up"></i>
<p class="count" if={ p.likes_count &gt; 0 }>{ p.likes_count }</p>
</button>
<button onclick="{ NotImplementedException }"><i class="fa fa-ellipsis-h"></i></button>
<button onclick={ NotImplementedException }><i class="fa fa-ellipsis-h"></i></button>
</footer>
<div class="reposts-and-likes">
<div class="reposts" if="{ reposts &amp;&amp; reposts.length &gt; 0 }">
<div class="reposts" if={ reposts &amp;&amp; reposts.length &gt; 0 }>
<header><a>{ p.repost_count }</a>
<p>Repost</p>
</header>
<ol class="users">
<li class="user" each="{ reposts }"><a class="avatar-anchor" href="{ CONFIG.url + '/' + user.username }" title="{ user.name }" data-user-preview="{ user.id }"><img class="avatar" src="{ user.avatar_url + '?thumbnail&amp;size=32' }" alt=""/></a></li>
<li class="user" each={ reposts }><a class="avatar-anchor" href={ CONFIG.url + '/' + user.username } title={ user.name } data-user-preview={ user.id }><img class="avatar" src={ user.avatar_url + '?thumbnail&amp;size=32' } alt=""/></a></li>
</ol>
</div>
<div class="likes" if="{ likes &amp;&amp; likes.length &gt; 0 }">
<div class="likes" if={ likes &amp;&amp; likes.length &gt; 0 }>
<header><a>{ p.likes_count }</a>
<p>いいね</p>
</header>
<ol class="users">
<li class="user" each="{ likes }"><a class="avatar-anchor" href="{ CONFIG.url + '/' + username }" title="{ name }" data-user-preview="{ id }"><img class="avatar" src="{ avatar_url + '?thumbnail&amp;size=32' }" alt=""/></a></li>
<li class="user" each={ likes }><a class="avatar-anchor" href={ CONFIG.url + '/' + username } title={ name } data-user-preview={ id }><img class="avatar" src={ avatar_url + '?thumbnail&amp;size=32' } alt=""/></a></li>
</ol>
</div>
</div>
</article>
<div class="replies">
<virtual each="{ post in replies }">
<mk-post-detail-sub post="{ post }"></mk-post-detail-sub>
<virtual each={ post in replies }>
<mk-post-detail-sub post={ post }></mk-post-detail-sub>
</virtual>
</div>
</div>

View file

@ -1,12 +1,12 @@
<mk-post-form-window>
<mk-window ref="window" is-modal="{ true }" colored="{ true }"><yield to="header"><span if="{ !parent.opts.reply }">新規投稿</span><span if="{ parent.opts.reply }">返信</span><span class="files" if="{ parent.files.length != 0 }">添付: { parent.files.length }ファイル</span><span class="uploading-files" if="{ parent.uploadingFiles.length != 0 }">{ parent.uploadingFiles.length }個のファイルをアップロード中
<mk-window ref="window" is-modal={ true } colored={ true }><yield to="header"><span if={ !parent.opts.reply }>新規投稿</span><span if={ parent.opts.reply }>返信</span><span class="files" if={ parent.files.length != 0 }>添付: { parent.files.length }ファイル</span><span class="uploading-files" if={ parent.uploadingFiles.length != 0 }>{ parent.uploadingFiles.length }個のファイルをアップロード中
<mk-ellipsis></mk-ellipsis></span></yield>
<yield to="content">
<div class="ref" if="{ parent.opts.reply }">
<mk-post-preview post="{ parent.opts.reply }"></mk-post-preview>
<div class="ref" if={ parent.opts.reply }>
<mk-post-preview post={ parent.opts.reply }></mk-post-preview>
</div>
<div class="body">
<mk-post-form ref="form" reply="{ parent.opts.reply }"></mk-post-form>
<mk-post-form ref="form" reply={ parent.opts.reply }></mk-post-form>
</div></yield>
</mk-window>
<style type="stylus">

View file

@ -1,23 +1,23 @@
<mk-post-form ondragover="{ ondragover }" ondragenter="{ ondragenter }" ondragleave="{ ondragleave }" ondrop="{ ondrop }">
<textarea class="{ withfiles: files.length != 0 }" ref="text" disabled="{ wait }" oninput="{ update }" onkeydown="{ onkeydown }" onpaste="{ onpaste }" placeholder="{ opts.reply ? 'この投稿への返信...' : 'いまどうしてる?' }"></textarea>
<div class="attaches" if="{ files.length != 0 }">
<mk-post-form ondragover={ ondragover } ondragenter={ ondragenter } ondragleave={ ondragleave } ondrop={ ondrop }>
<textarea class={ withfiles: files.length != 0 } ref="text" disabled={ wait } oninput={ update } onkeydown={ onkeydown } onpaste={ onpaste } placeholder={ opts.reply ? 'この投稿への返信...' : 'いまどうしてる?' }></textarea>
<div class="attaches" if={ files.length != 0 }>
<ul class="files" ref="attaches">
<li class="file" each="{ files }">
<div class="img" style="background-image: url({ url + &quot;?thumbnail&amp;size=64&quot; })" title="{ name }"></div><img class="remove" onclick="{ _remove }" src="/_/resources/desktop/remove.png" title="添付取り消し" alt=""/>
<li class="file" each={ files }>
<div class="img" style="background-image: url({ url + &quot;?thumbnail&amp;size=64&quot; })" title={ name }></div><img class="remove" onclick={ _remove } src="/_/resources/desktop/remove.png" title="添付取り消し" alt=""/>
</li>
<li class="add" if="{ files.length &lt; 4 }" title="PCからファイルを添付" onclick="{ selectFile }"><i class="fa fa-plus"></i></li>
<li class="add" if={ files.length &lt; 4 } title="PCからファイルを添付" onclick={ selectFile }><i class="fa fa-plus"></i></li>
</ul>
<p class="remain">残り{ 4 - files.length }</p>
</div>
<mk-uploader ref="uploader"></mk-uploader>
<button ref="upload" title="PCからファイルを添付" onclick="{ selectFile }"><i class="fa fa-upload"></i></button>
<button ref="drive" title="ドライブからファイルを添付" onclick="{ selectFileFromDrive }"><i class="fa fa-cloud"></i></button>
<button ref="upload" title="PCからファイルを添付" onclick={ selectFile }><i class="fa fa-upload"></i></button>
<button ref="drive" title="ドライブからファイルを添付" onclick={ selectFileFromDrive }><i class="fa fa-cloud"></i></button>
<p class="text-count { over: refs.text.value.length &gt; 300 }">のこり{ 300 - refs.text.value.length }文字</p>
<button class="{ wait: wait }" ref="submit" disabled="{ wait || (refs.text.value.length == 0 &amp;&amp; files.length == 0) }" onclick="{ post }">{ wait ? '投稿中' : opts.reply ? '返信' : '投稿' }
<mk-ellipsis if="{ wait }"></mk-ellipsis>
<button class={ wait: wait } ref="submit" disabled={ wait || (refs.text.value.length == 0 &amp;&amp; files.length == 0) } onclick={ post }>{ wait ? '投稿中' : opts.reply ? '返信' : '投稿' }
<mk-ellipsis if={ wait }></mk-ellipsis>
</button>
<input ref="file" type="file" accept="image/*" multiple="multiple" tabindex="-1" onchange="{ changeFile }"/>
<div class="dropzone" if="{ draghover }"></div>
<input ref="file" type="file" accept="image/*" multiple="multiple" tabindex="-1" onchange={ changeFile }/>
<div class="dropzone" if={ draghover }></div>
<style type="stylus">
:scope
display block

View file

@ -1,10 +1,10 @@
<mk-post-preview title="{ title }">
<article><a class="avatar-anchor" href="{ CONFIG.url + '/' + post.user.username }"><img class="avatar" src="{ post.user.avatar_url + '?thumbnail&amp;size=64' }" alt="avatar" data-user-preview="{ post.user_id }"/></a>
<mk-post-preview title={ title }>
<article><a class="avatar-anchor" href={ CONFIG.url + '/' + post.user.username }><img class="avatar" src={ post.user.avatar_url + '?thumbnail&amp;size=64' } alt="avatar" data-user-preview={ post.user_id }/></a>
<div class="main">
<header><a class="name" href="{ CONFIG.url + '/' + post.user.username }" data-user-preview="{ post.user_id }">{ post.user.name }</a><span class="username">@{ post.user.username }</span><a class="time" href="{ CONFIG.url + '/' + post.user.username + '/' + post.id }">
<mk-time time="{ post.created_at }"></mk-time></a></header>
<header><a class="name" href={ CONFIG.url + '/' + post.user.username } data-user-preview={ post.user_id }>{ post.user.name }</a><span class="username">@{ post.user.username }</span><a class="time" href={ CONFIG.url + '/' + post.user.username + '/' + post.id }>
<mk-time time={ post.created_at }></mk-time></a></header>
<div class="body">
<mk-sub-post-content class="text" post="{ post }"></mk-sub-post-content>
<mk-sub-post-content class="text" post={ post }></mk-sub-post-content>
</div>
</div>
</article>

View file

@ -1,5 +1,5 @@
<mk-post-status-graph>
<canvas ref="canv" width="{ opts.width }" height="{ opts.height }"></canvas>
<canvas ref="canv" width={ opts.width } height={ opts.height }></canvas>
<style type="stylus">
:scope
display block

View file

@ -1,15 +1,15 @@
<mk-progress-dialog>
<mk-window ref="window" is-modal="{ false }" can-close="{ false }" width="{ '500px' }">
<mk-window ref="window" is-modal={ false } can-close={ false } width={ '500px' }>
<yield to="header">{ parent.title }
<mk-ellipsis></mk-ellipsis></yield>
<yield to="content">
<div class="body">
<p class="init" if="{ isNaN(parent.value) }">待機中
<p class="init" if={ isNaN(parent.value) }>待機中
<mk-ellipsis></mk-ellipsis>
</p>
<p class="percentage" if="{ !isNaN(parent.value) }">{ Math.floor((parent.value / parent.max) * 100) }</p>
<progress if="{ !isNaN(parent.value) &amp;&amp; parent.value &lt; parent.max }" value="{ isNaN(parent.value) ? 0 : parent.value }" max="{ parent.max }"></progress>
<div class="progress waiting" if="{ parent.value &gt;= parent.max }"></div>
<p class="percentage" if={ !isNaN(parent.value) }>{ Math.floor((parent.value / parent.max) * 100) }</p>
<progress if={ !isNaN(parent.value) &amp;&amp; parent.value &lt; parent.max } value={ isNaN(parent.value) ? 0 : parent.value } max={ parent.max }></progress>
<div class="progress waiting" if={ parent.value &gt;= parent.max }></div>
</div></yield>
</mk-window>
<style type="stylus">

View file

@ -1,7 +1,7 @@
<mk-repost-form-window>
<mk-window ref="window" is-modal="{ true }" colored="{ true }"><yield to="header"><i class="fa fa-retweet"></i>この投稿をRepostしますか</yield>
<mk-window ref="window" is-modal={ true } colored={ true }><yield to="header"><i class="fa fa-retweet"></i>この投稿をRepostしますか</yield>
<yield to="content">
<mk-repost-form ref="form" post="{ parent.opts.post }"></mk-repost-form></yield>
<mk-repost-form ref="form" post={ parent.opts.post }></mk-repost-form></yield>
</mk-window>
<style type="stylus">
:scope

View file

@ -1,11 +1,11 @@
<mk-repost-form>
<mk-post-preview post="{ opts.post }"></mk-post-preview>
<div class="form" if="{ quote }">
<textarea ref="text" disabled="{ wait }" placeholder="この投稿を引用..."></textarea>
<mk-post-preview post={ opts.post }></mk-post-preview>
<div class="form" if={ quote }>
<textarea ref="text" disabled={ wait } placeholder="この投稿を引用..."></textarea>
</div>
<footer><a class="quote" if="{ !quote }" onclick="{ onquote }">引用する...</a>
<button class="cancel" onclick="{ cancel }">キャンセル</button>
<button class="ok" onclick="{ ok }">Repost</button>
<footer><a class="quote" if={ !quote } onclick={ onquote }>引用する...</a>
<button class="cancel" onclick={ cancel }>キャンセル</button>
<button class="ok" onclick={ ok }>Repost</button>
</footer>
<style type="stylus">
:scope

View file

@ -1,9 +1,9 @@
<mk-search-posts>
<div class="loading" if="{ isLoading }">
<div class="loading" if={ isLoading }>
<mk-ellipsis-icon></mk-ellipsis-icon>
</div>
<p class="empty" if="{ isEmpty }"><i class="fa fa-search"></i>「{ query }」に関する投稿は見つかりませんでした。</p>
<mk-timeline ref="timeline"><yield to="footer"><i class="fa fa-moon-o" if="{ !parent.moreLoading }"></i><i class="fa fa-spinner fa-pulse fa-fw" if="{ parent.moreLoading }"></i></yield></mk-timeline>
<p class="empty" if={ isEmpty }><i class="fa fa-search"></i>「{ query }」に関する投稿は見つかりませんでした。</p>
<mk-timeline ref="timeline"><yield to="footer"><i class="fa fa-moon-o" if={ !parent.moreLoading }></i><i class="fa fa-spinner fa-pulse fa-fw" if={ parent.moreLoading }></i></yield></mk-timeline>
<style type="stylus">
:scope
display block

View file

@ -2,7 +2,7 @@
<header>
<h1>{ query }</h1>
</header>
<mk-search-posts ref="posts" query="{ query }"></mk-search-posts>
<mk-search-posts ref="posts" query={ query }></mk-search-posts>
<style type="stylus">
:scope
display block

View file

@ -1,12 +1,12 @@
<mk-select-file-from-drive-window>
<mk-window ref="window" is-modal="{ true }" width="{ '800px' }" height="{ '500px' }"><yield to="header">
<mk-raw content="{ parent.title }"></mk-raw><span class="count" if="{ parent.multiple &amp;&amp; parent.file.length &gt; 0 }">({ parent.file.length }ファイル選択中)</span></yield>
<mk-window ref="window" is-modal={ true } width={ '800px' } height={ '500px' }><yield to="header">
<mk-raw content={ parent.title }></mk-raw><span class="count" if={ parent.multiple &amp;&amp; parent.file.length &gt; 0 }>({ parent.file.length }ファイル選択中)</span></yield>
<yield to="content">
<mk-drive-browser ref="browser" multiple="{ parent.multiple }"></mk-drive-browser>
<mk-drive-browser ref="browser" multiple={ parent.multiple }></mk-drive-browser>
<div>
<button class="upload" title="PCからドライブにファイルをアップロード" onclick="{ parent.upload }"><i class="fa fa-upload"></i></button>
<button class="cancel" onclick="{ parent.close }">キャンセル</button>
<button class="ok" disabled="{ parent.multiple &amp;&amp; parent.file.length == 0 }" onclick="{ parent.ok }">決定</button>
<button class="upload" title="PCからドライブにファイルをアップロード" onclick={ parent.upload }><i class="fa fa-upload"></i></button>
<button class="cancel" onclick={ parent.close }>キャンセル</button>
<button class="ok" disabled={ parent.multiple &amp;&amp; parent.file.length == 0 } onclick={ parent.ok }>決定</button>
</div></yield>
</mk-window>
<style type="stylus">

View file

@ -1,6 +1,6 @@
<mk-set-avatar-suggestion onclick="{ set }">
<mk-set-avatar-suggestion onclick={ set }>
<p><b>アバターを設定</b>してみませんか?
<button onclick="{ close }"><i class="fa fa-times"></i></button>
<button onclick={ close }><i class="fa fa-times"></i></button>
</p>
<style type="stylus">
:scope

View file

@ -1,6 +1,6 @@
<mk-set-banner-suggestion onclick="{ set }">
<mk-set-banner-suggestion onclick={ set }>
<p><b>バナーを設定</b>してみませんか?
<button onclick="{ close }"><i class="fa fa-times"></i></button>
<button onclick={ close }><i class="fa fa-times"></i></button>
</p>
<style type="stylus">
:scope

View file

@ -1,5 +1,5 @@
<mk-settings-window>
<mk-window ref="window" is-modal="{ true }" width="{ '700px' }" height="{ '550px' }"><yield to="header"><i class="fa fa-cog"></i>設定</yield>
<mk-window ref="window" is-modal={ true } width={ '700px' } height={ '550px' }><yield to="header"><i class="fa fa-cog"></i>設定</yield>
<yield to="content">
<mk-settings></mk-settings></yield>
</mk-window>

View file

@ -1,28 +1,28 @@
<mk-settings>
<div class="nav">
<p class="{ active: page == 'account' }" onmousedown="{ setPage.bind(null, 'account') }"><i class="fa fa-fw fa-user"></i>アカウント</p>
<p class="{ active: page == 'web' }" onmousedown="{ setPage.bind(null, 'web') }"><i class="fa fa-fw fa-desktop"></i>Web</p>
<p class="{ active: page == 'notification' }" onmousedown="{ setPage.bind(null, 'notification') }"><i class="fa fa-fw fa-bell-o"></i>通知</p>
<p class="{ active: page == 'drive' }" onmousedown="{ setPage.bind(null, 'drive') }"><i class="fa fa-fw fa-cloud"></i>ドライブ</p>
<p class="{ active: page == 'apps' }" onmousedown="{ setPage.bind(null, 'apps') }"><i class="fa fa-fw fa-puzzle-piece"></i>アプリ</p>
<p class="{ active: page == 'signin' }" onmousedown="{ setPage.bind(null, 'signin') }"><i class="fa fa-fw fa-sign-in"></i>ログイン履歴</p>
<p class="{ active: page == 'password' }" onmousedown="{ setPage.bind(null, 'password') }"><i class="fa fa-fw fa-unlock-alt"></i>パスワード</p>
<p class="{ active: page == 'api' }" onmousedown="{ setPage.bind(null, 'api') }"><i class="fa fa-fw fa-key"></i>API</p>
<p class={ active: page == 'account' } onmousedown={ setPage.bind(null, 'account') }><i class="fa fa-fw fa-user"></i>アカウント</p>
<p class={ active: page == 'web' } onmousedown={ setPage.bind(null, 'web') }><i class="fa fa-fw fa-desktop"></i>Web</p>
<p class={ active: page == 'notification' } onmousedown={ setPage.bind(null, 'notification') }><i class="fa fa-fw fa-bell-o"></i>通知</p>
<p class={ active: page == 'drive' } onmousedown={ setPage.bind(null, 'drive') }><i class="fa fa-fw fa-cloud"></i>ドライブ</p>
<p class={ active: page == 'apps' } onmousedown={ setPage.bind(null, 'apps') }><i class="fa fa-fw fa-puzzle-piece"></i>アプリ</p>
<p class={ active: page == 'signin' } onmousedown={ setPage.bind(null, 'signin') }><i class="fa fa-fw fa-sign-in"></i>ログイン履歴</p>
<p class={ active: page == 'password' } onmousedown={ setPage.bind(null, 'password') }><i class="fa fa-fw fa-unlock-alt"></i>パスワード</p>
<p class={ active: page == 'api' } onmousedown={ setPage.bind(null, 'api') }><i class="fa fa-fw fa-key"></i>API</p>
</div>
<div class="pages">
<section class="account" show="{ page == 'account' }">
<section class="account" show={ page == 'account' }>
<h1>アカウント</h1>
<label class="avatar">
<p>アバター</p><img class="avatar" src="{ I.avatar_url + '?thumbnail&amp;size=64' }" alt="avatar"/>
<button class="style-normal" onclick="{ avatar }">画像を選択</button>
<p>アバター</p><img class="avatar" src={ I.avatar_url + '?thumbnail&amp;size=64' } alt="avatar"/>
<button class="style-normal" onclick={ avatar }>画像を選択</button>
</label>
<label>
<p>名前</p>
<input ref="accountName" type="text" value="{ I.name }"/>
<input ref="accountName" type="text" value={ I.name }/>
</label>
<label>
<p>場所</p>
<input ref="accountLocation" type="text" value="{ I.location }"/>
<input ref="accountLocation" type="text" value={ I.location }/>
</label>
<label>
<p>自己紹介</p>
@ -30,46 +30,46 @@
</label>
<label>
<p>誕生日</p>
<input ref="accountBirthday" type="date" value="{ I.birthday }"/>
<input ref="accountBirthday" type="date" value={ I.birthday }/>
</label>
<button class="style-primary" onclick="{ updateAccount }">保存</button>
<button class="style-primary" onclick={ updateAccount }>保存</button>
</section>
<section class="web" show="{ page == 'web' }">
<section class="web" show={ page == 'web' }>
<h1>デザイン</h1>
<label>
<p>壁紙</p>
<button class="style-normal" onclick="{ wallpaper }">画像を選択</button>
<button class="style-normal" onclick={ wallpaper }>画像を選択</button>
</label>
</section>
<section class="web" show="{ page == 'web' }">
<section class="web" show={ page == 'web' }>
<h1>その他</h1>
<label class="checkbox">
<input type="checkbox" checked="{ I.data.cache }" onclick="{ updateCache }"/>
<input type="checkbox" checked={ I.data.cache } onclick={ updateCache }/>
<p>読み込みを高速化する</p>
<p>API通信時に新鮮なユーザー情報をキャッシュすることでフェッチのオーバーヘッドを無くします。(実験的)</p>
</label>
<label class="checkbox">
<input type="checkbox" checked="{ I.data.debug }" onclick="{ updateDebug }"/>
<input type="checkbox" checked={ I.data.debug } onclick={ updateDebug }/>
<p>開発者モード</p>
<p>デバッグ等の開発者モードを有効にします。</p>
</label>
<label class="checkbox">
<input type="checkbox" checked="{ I.data.nya }" onclick="{ updateNya }"/>
<input type="checkbox" checked={ I.data.nya } onclick={ updateNya }/>
<p><i>な</i>を<i>にゃ</i>に変換する</p>
<p>攻撃的な投稿が多少和らぐ可能性があります。</p>
</label>
</section>
<section class="signin" show="{ page == 'signin' }">
<section class="signin" show={ page == 'signin' }>
<h1>ログイン履歴</h1>
<mk-signin-history></mk-signin-history>
</section>
<section class="api" show="{ page == 'api' }">
<section class="api" show={ page == 'api' }>
<h1>API</h1>
<p>Token:<code>{ I.token }</code></p>
<p>APIを利用するには、上記のトークンを「i」というキーでパラメータに付加してリクエストします。</p>
<p>アカウントを乗っ取られてしまう可能性があるため、このトークンは第三者に教えないでください(アプリなどにも入力しないでください)。</p>
<p>万が一このトークンが漏れたりその可能性がある場合は
<button class="regenerate" onclick="{ regenerateToken }">トークンを再生成</button>できます。(副作用として、ログインしているすべてのデバイスでログアウトが発生します)
<button class="regenerate" onclick={ regenerateToken }>トークンを再生成</button>できます。(副作用として、ログインしているすべてのデバイスでログアウトが発生します)
</p>
</section>
</div>

View file

@ -1,8 +1,8 @@
<mk-signin-history>
<div class="records" if="{ history.length != 0 }">
<div each="{ history }">
<mk-time time="{ created_at }"></mk-time>
<header><i class="fa fa-check" if="{ success }"></i><i class="fa fa-times" if="{ !success }"></i><span class="ip">{ ip }</span></header>
<div class="records" if={ history.length != 0 }>
<div each={ history }>
<mk-time time={ created_at }></mk-time>
<header><i class="fa fa-check" if={ success }></i><i class="fa fa-times" if={ !success }></i><span class="ip">{ ip }</span></header>
<pre><code>{ JSON.stringify(headers, null, ' ') }</code></pre>
</div>
</div>

View file

@ -1,9 +1,9 @@
<mk-stream-indicator>
<p if="{ state == 'initializing' }"><i class="fa fa-spinner fa-spin"></i><span>接続中
<p if={ state == 'initializing' }><i class="fa fa-spinner fa-spin"></i><span>接続中
<mk-ellipsis></mk-ellipsis></span></p>
<p if="{ state == 'reconnecting' }"><i class="fa fa-spinner fa-spin"></i><span>切断されました 接続中
<p if={ state == 'reconnecting' }><i class="fa fa-spinner fa-spin"></i><span>切断されました 接続中
<mk-ellipsis></mk-ellipsis></span></p>
<p if="{ state == 'connected' }"><i class="fa fa-check"></i><span>接続完了</span></p>
<p if={ state == 'connected' }><i class="fa fa-check"></i><span>接続完了</span></p>
<style type="stylus">
:scope
display block

View file

@ -1,8 +1,8 @@
<mk-sub-post-content>
<div class="body"><a class="reply" if="{ post.reply_to_id }"><i class="fa fa-reply"></i></a><span ref="text"></span><a class="quote" if="{ post.repost_id }" href="{ '/post:' + post.repost_id }">RP: ...</a></div>
<details if="{ post.media }">
<div class="body"><a class="reply" if={ post.reply_to_id }><i class="fa fa-reply"></i></a><span ref="text"></span><a class="quote" if={ post.repost_id } href={ '/post:' + post.repost_id }>RP: ...</a></div>
<details if={ post.media }>
<summary>({ post.media.length }枚の画像)</summary>
<mk-images-viewer images="{ post.media }"></mk-images-viewer>
<mk-images-viewer images={ post.media }></mk-images-viewer>
</details>
<style type="stylus">
:scope

View file

@ -1,10 +1,10 @@
<mk-timeline-post-sub title="{ title }">
<article><a class="avatar-anchor" href="{ CONFIG.url + '/' + post.user.username }"><img class="avatar" src="{ post.user.avatar_url + '?thumbnail&amp;size=64' }" alt="avatar" data-user-preview="{ post.user_id }"/></a>
<mk-timeline-post-sub title={ title }>
<article><a class="avatar-anchor" href={ CONFIG.url + '/' + post.user.username }><img class="avatar" src={ post.user.avatar_url + '?thumbnail&amp;size=64' } alt="avatar" data-user-preview={ post.user_id }/></a>
<div class="main">
<header><a class="name" href="{ CONFIG.url + '/' + post.user.username }" data-user-preview="{ post.user_id }">{ post.user.name }</a><span class="username">@{ post.user.username }</span><a class="created-at" href="{ CONFIG.url + '/' + post.user.username + '/' + post.id }">
<mk-time time="{ post.created_at }"></mk-time></a></header>
<header><a class="name" href={ CONFIG.url + '/' + post.user.username } data-user-preview={ post.user_id }>{ post.user.name }</a><span class="username">@{ post.user.username }</span><a class="created-at" href={ CONFIG.url + '/' + post.user.username + '/' + post.id }>
<mk-time time={ post.created_at }></mk-time></a></header>
<div class="body">
<mk-sub-post-content class="text" post="{ post }"></mk-sub-post-content>
<mk-sub-post-content class="text" post={ post }></mk-sub-post-content>
</div>
</div>
</article>

View file

@ -1,41 +1,41 @@
<mk-timeline-post tabindex="-1" title="{ title }" onkeydown="{ onKeyDown }">
<div class="reply-to" if="{ p.reply_to }">
<mk-timeline-post-sub post="{ p.reply_to }"></mk-timeline-post-sub>
<mk-timeline-post tabindex="-1" title={ title } onkeydown={ onKeyDown }>
<div class="reply-to" if={ p.reply_to }>
<mk-timeline-post-sub post={ p.reply_to }></mk-timeline-post-sub>
</div>
<div class="repost" if="{ isRepost }">
<p><a class="avatar-anchor" href="{ CONFIG.url + '/' + post.user.username }" data-user-preview="{ post.user_id }"><img class="avatar" src="{ post.user.avatar_url + '?thumbnail&amp;size=32' }" alt="avatar"/></a><i class="fa fa-retweet"></i><a class="name" href="{ CONFIG.url + '/' + post.user.username }" data-user-preview="{ post.user_id }">{ post.user.name }</a>がRepost</p>
<mk-time time="{ post.created_at }"></mk-time>
<div class="repost" if={ isRepost }>
<p><a class="avatar-anchor" href={ CONFIG.url + '/' + post.user.username } data-user-preview={ post.user_id }><img class="avatar" src={ post.user.avatar_url + '?thumbnail&amp;size=32' } alt="avatar"/></a><i class="fa fa-retweet"></i><a class="name" href={ CONFIG.url + '/' + post.user.username } data-user-preview={ post.user_id }>{ post.user.name }</a>がRepost</p>
<mk-time time={ post.created_at }></mk-time>
</div>
<article><a class="avatar-anchor" href="{ CONFIG.url + '/' + p.user.username }"><img class="avatar" src="{ p.user.avatar_url + '?thumbnail&amp;size=64' }" alt="avatar" data-user-preview="{ p.user.id }"/></a>
<article><a class="avatar-anchor" href={ CONFIG.url + '/' + p.user.username }><img class="avatar" src={ p.user.avatar_url + '?thumbnail&amp;size=64' } alt="avatar" data-user-preview={ p.user.id }/></a>
<div class="main">
<header><a class="name" href="{ CONFIG.url + '/' + p.user.username }" data-user-preview="{ p.user.id }">{ p.user.name }</a><span class="username">@{ p.user.username }</span><a class="created-at" href="{ url }">
<mk-time time="{ p.created_at }"></mk-time></a></header>
<header><a class="name" href={ CONFIG.url + '/' + p.user.username } data-user-preview={ p.user.id }>{ p.user.name }</a><span class="username">@{ p.user.username }</span><a class="created-at" href={ url }>
<mk-time time={ p.created_at }></mk-time></a></header>
<div class="body">
<div class="text"><a class="reply" if="{ p.reply_to }"><i class="fa fa-reply"></i></a><span ref="text"></span><a class="quote" if="{ p.repost != null }">RP:</a></div>
<div class="media" if="{ p.media }">
<mk-images-viewer images="{ p.media }"></mk-images-viewer>
<div class="text"><a class="reply" if={ p.reply_to }><i class="fa fa-reply"></i></a><span ref="text"></span><a class="quote" if={ p.repost != null }>RP:</a></div>
<div class="media" if={ p.media }>
<mk-images-viewer images={ p.media }></mk-images-viewer>
</div>
<div class="repost" if="{ p.repost }"><i class="fa fa-quote-right fa-flip-horizontal"></i>
<mk-post-preview class="repost" post="{ p.repost }"></mk-post-preview>
<div class="repost" if={ p.repost }><i class="fa fa-quote-right fa-flip-horizontal"></i>
<mk-post-preview class="repost" post={ p.repost }></mk-post-preview>
</div>
</div>
<footer>
<button onclick="{ reply }" title="返信"><i class="fa fa-reply"></i>
<p class="count" if="{ p.replies_count &gt; 0 }">{ p.replies_count }</p>
<button onclick={ reply } title="返信"><i class="fa fa-reply"></i>
<p class="count" if={ p.replies_count &gt; 0 }>{ p.replies_count }</p>
</button>
<button onclick="{ repost }" title="Repost"><i class="fa fa-retweet"></i>
<p class="count" if="{ p.repost_count &gt; 0 }">{ p.repost_count }</p>
<button onclick={ repost } title="Repost"><i class="fa fa-retweet"></i>
<p class="count" if={ p.repost_count &gt; 0 }>{ p.repost_count }</p>
</button>
<button class="{ liked: p.is_liked }" onclick="{ like }" title="善哉"><i class="fa fa-thumbs-o-up"></i>
<p class="count" if="{ p.likes_count &gt; 0 }">{ p.likes_count }</p>
<button class={ liked: p.is_liked } onclick={ like } title="善哉"><i class="fa fa-thumbs-o-up"></i>
<p class="count" if={ p.likes_count &gt; 0 }>{ p.likes_count }</p>
</button>
<button onclick="{ NotImplementedException }"><i class="fa fa-ellipsis-h"></i></button>
<button onclick="{ toggleDetail }" title="詳細"><i class="fa fa-caret-down" if="{ !isDetailOpened }"></i><i class="fa fa-caret-up" if="{ isDetailOpened }"></i></button>
<button onclick={ NotImplementedException }><i class="fa fa-ellipsis-h"></i></button>
<button onclick={ toggleDetail } title="詳細"><i class="fa fa-caret-down" if={ !isDetailOpened }></i><i class="fa fa-caret-up" if={ isDetailOpened }></i></button>
</footer>
</div>
</article>
<div class="detail" if="{ isDetailOpened }">
<mk-post-status-graph width="462" height="130" post="{ p }"></mk-post-status-graph>
<div class="detail" if={ isDetailOpened }>
<mk-post-status-graph width="462" height="130" post={ p }></mk-post-status-graph>
</div>
<style type="stylus">
:scope

View file

@ -1,7 +1,7 @@
<mk-timeline>
<virtual each="{ post, i in posts }">
<mk-timeline-post post="{ post }"></mk-timeline-post>
<p class="date" if="{ i != posts.length - 1 &amp;&amp; post._date != posts[i + 1]._date }"><span><i class="fa fa-angle-up"></i>{ post._datetext }</span><span><i class="fa fa-angle-down"></i>{ posts[i + 1]._datetext }</span></p>
<virtual each={ post, i in posts }>
<mk-timeline-post post={ post }></mk-timeline-post>
<p class="date" if={ i != posts.length - 1 &amp;&amp; post._date != posts[i + 1]._date }><span><i class="fa fa-angle-up"></i>{ post._datetext }</span><span><i class="fa fa-angle-down"></i>{ posts[i + 1]._datetext }</span></p>
</virtual>
<footer data-yield="footer"><yield from="footer"/></footer>
<style type="stylus">

View file

@ -1,20 +1,20 @@
<mk-ui-header-account>
<button class="header" data-active="{ isOpen.toString() }" onclick="{ toggle }"><span class="username">{ I.username }<i class="fa fa-angle-down" if="{ !isOpen }"></i><i class="fa fa-angle-up" if="{ isOpen }"></i></span><img class="avatar" src="{ I.avatar_url + '?thumbnail&amp;size=64' }" alt="avatar"/></button>
<div class="menu" if="{ isOpen }">
<button class="header" data-active={ isOpen.toString() } onclick={ toggle }><span class="username">{ I.username }<i class="fa fa-angle-down" if={ !isOpen }></i><i class="fa fa-angle-up" if={ isOpen }></i></span><img class="avatar" src={ I.avatar_url + '?thumbnail&amp;size=64' } alt="avatar"/></button>
<div class="menu" if={ isOpen }>
<ul>
<li><a href="{ '/' + I.username }"><i class="fa fa-user"></i>プロフィール<i class="fa fa-angle-right"></i></a></li>
<li onclick="{ drive }">
<li><a href={ '/' + I.username }><i class="fa fa-user"></i>プロフィール<i class="fa fa-angle-right"></i></a></li>
<li onclick={ drive }>
<p><i class="fa fa-cloud"></i>ドライブ<i class="fa fa-angle-right"></i></p>
</li>
<li><a href="/i&gt;mentions"><i class="fa fa-at"></i>あなた宛て<i class="fa fa-angle-right"></i></a></li>
</ul>
<ul>
<li onclick="{ settings }">
<li onclick={ settings }>
<p><i class="fa fa-cog"></i>設定<i class="fa fa-angle-right"></i></p>
</li>
</ul>
<ul>
<li onclick="{ signout }">
<li onclick={ signout }>
<p><i class="fa fa-power-off"></i>サインアウト<i class="fa fa-angle-right"></i></p>
</li>
</ul>

View file

@ -1,9 +1,9 @@
<mk-ui-header-nav>
<ul if="{ SIGNIN }">
<li class="home { active: page == 'home' }"><a href="{ CONFIG.url }"><i class="fa fa-home"></i>
<ul if={ SIGNIN }>
<li class="home { active: page == 'home' }"><a href={ CONFIG.url }><i class="fa fa-home"></i>
<p>ホーム</p></a></li>
<li class="messaging"><a onclick="{ messaging }"><i class="fa fa-comments"></i>
<p>メッセージ</p><i class="fa fa-circle" if="{ hasUnreadMessagingMessages }"></i></a></li>
<li class="messaging"><a onclick={ messaging }><i class="fa fa-comments"></i>
<p>メッセージ</p><i class="fa fa-circle" if={ hasUnreadMessagingMessages }></i></a></li>
<li class="info"><a href="https://twitter.com/misskey_xyz" target="_blank"><i class="fa fa-info"></i>
<p>お知らせ</p></a></li>
<li class="tv"><a href="https://misskey.tk" target="_blank"><i class="fa fa-television"></i>

View file

@ -1,6 +1,6 @@
<mk-ui-header-notifications>
<button class="header" data-active="{ isOpen }" onclick="{ toggle }"><i class="fa fa-bell-o"></i></button>
<div class="notifications" if="{ isOpen }">
<button class="header" data-active={ isOpen } onclick={ toggle }><i class="fa fa-bell-o"></i></button>
<div class="notifications" if={ isOpen }>
<mk-notifications></mk-notifications>
</div>
<style type="stylus">

View file

@ -1,5 +1,5 @@
<mk-ui-header-post-button>
<button onclick="{ post }" title="新規投稿"><i class="fa fa-pencil-square-o"></i></button>
<button onclick={ post } title="新規投稿"><i class="fa fa-pencil-square-o"></i></button>
<style type="stylus">
:scope
display inline-block

View file

@ -1,5 +1,5 @@
<mk-ui-header-search>
<form class="search" onsubmit="{ onsubmit }">
<form class="search" onsubmit={ onsubmit }>
<input ref="q" type="search" placeholder="&#xf002; 検索"/>
<div class="result"></div>
</form>

View file

@ -1,18 +1,18 @@
<mk-ui-header>
<mk-donation if="{ SIGNIN &amp;&amp; !I.data.no_donation }"></mk-donation>
<mk-donation if={ SIGNIN &amp;&amp; !I.data.no_donation }></mk-donation>
<mk-special-message></mk-special-message>
<div class="main">
<div class="backdrop"></div>
<div class="main">
<div class="container">
<div class="left">
<mk-ui-header-nav page="{ opts.page }"></mk-ui-header-nav>
<mk-ui-header-nav page={ opts.page }></mk-ui-header-nav>
</div>
<div class="right">
<mk-ui-header-search></mk-ui-header-search>
<mk-ui-header-account if="{ SIGNIN }"></mk-ui-header-account>
<mk-ui-header-notifications if="{ SIGNIN }"></mk-ui-header-notifications>
<mk-ui-header-post-button if="{ SIGNIN }"></mk-ui-header-post-button>
<mk-ui-header-account if={ SIGNIN }></mk-ui-header-account>
<mk-ui-header-notifications if={ SIGNIN }></mk-ui-header-notifications>
<mk-ui-header-post-button if={ SIGNIN }></mk-ui-header-post-button>
<mk-ui-header-clock></mk-ui-header-clock>
</div>
</div>

View file

@ -1,8 +1,8 @@
<mk-ui>
<div class="global" ref="global">
<mk-ui-header ref="header" page="{ opts.page }"></mk-ui-header>
<mk-set-avatar-suggestion if="{ SIGNIN &amp;&amp; I.avatar_id == null }"></mk-set-avatar-suggestion>
<mk-set-banner-suggestion if="{ SIGNIN &amp;&amp; I.banner_id == null }"></mk-set-banner-suggestion>
<mk-ui-header ref="header" page={ opts.page }></mk-ui-header>
<mk-set-avatar-suggestion if={ SIGNIN &amp;&amp; I.avatar_id == null }></mk-set-avatar-suggestion>
<mk-set-banner-suggestion if={ SIGNIN &amp;&amp; I.banner_id == null }></mk-set-banner-suggestion>
<div class="content"><yield /></div>
</div>
<mk-stream-indicator></mk-stream-indicator>

View file

@ -1,7 +1,7 @@
<mk-user-followers-window>
<mk-window is-modal="{ false }" width="{ '400px' }" height="{ '550px' }"><yield to="header"><img src="{ parent.user.avatar_url + '?thumbnail&amp;size=64' }" alt=""/>{ parent.user.name }のフォロワー</yield>
<mk-window is-modal={ false } width={ '400px' } height={ '550px' }><yield to="header"><img src={ parent.user.avatar_url + '?thumbnail&amp;size=64' } alt=""/>{ parent.user.name }のフォロワー</yield>
<yield to="content">
<mk-user-followers user="{ parent.user }"></mk-user-followers></yield>
<mk-user-followers user={ parent.user }></mk-user-followers></yield>
</mk-window>
<style type="stylus">
:scope

View file

@ -1,5 +1,5 @@
<mk-user-followers>
<mk-users-list fetch="{ fetch }" count="{ user.followers_count }" you-know-count="{ user.followers_you_know_count }" no-users="{ 'フォロワーはいないようです。' }"></mk-users-list>
<mk-users-list fetch={ fetch } count={ user.followers_count } you-know-count={ user.followers_you_know_count } no-users={ 'フォロワーはいないようです。' }></mk-users-list>
<style type="stylus">
:scope
display block

View file

@ -1,7 +1,7 @@
<mk-user-following-window>
<mk-window is-modal="{ false }" width="{ '400px' }" height="{ '550px' }"><yield to="header"><img src="{ parent.user.avatar_url + '?thumbnail&amp;size=64' }" alt=""/>{ parent.user.name }のフォロー</yield>
<mk-window is-modal={ false } width={ '400px' } height={ '550px' }><yield to="header"><img src={ parent.user.avatar_url + '?thumbnail&amp;size=64' } alt=""/>{ parent.user.name }のフォロー</yield>
<yield to="content">
<mk-user-following user="{ parent.user }"></mk-user-following></yield>
<mk-user-following user={ parent.user }></mk-user-following></yield>
</mk-window>
<style type="stylus">
:scope

View file

@ -1,5 +1,5 @@
<mk-user-following>
<mk-users-list fetch="{ fetch }" count="{ user.following_count }" you-know-count="{ user.following_you_know_count }" no-users="{ 'フォロー中のユーザーはいないようです。' }"></mk-users-list>
<mk-users-list fetch={ fetch } count={ user.following_count } you-know-count={ user.following_you_know_count } no-users={ 'フォロー中のユーザーはいないようです。' }></mk-users-list>
<style type="stylus">
:scope
display block

View file

@ -1,15 +1,15 @@
<mk-user-graphs>
<section>
<h1>投稿</h1>
<mk-user-posts-graph user="{ opts.user }"></mk-user-posts-graph>
<mk-user-posts-graph user={ opts.user }></mk-user-posts-graph>
</section>
<section>
<h1>フォロー/フォロワー</h1>
<mk-user-friends-graph user="{ opts.user }"></mk-user-friends-graph>
<mk-user-friends-graph user={ opts.user }></mk-user-friends-graph>
</section>
<section>
<h1>いいね</h1>
<mk-user-likes-graph user="{ opts.user }"></mk-user-likes-graph>
<mk-user-likes-graph user={ opts.user }></mk-user-likes-graph>
</section>
<style type="stylus">
:scope

View file

@ -1,12 +1,12 @@
<mk-user-header data-is-dark-background="{ user.banner_url != null }">
<div class="banner" ref="banner" style="{ user.banner_url ? 'background-image: url(' + user.banner_url + '?thumbnail&amp;size=1024)' : '' }" onclick="{ onUpdateBanner }"></div><img class="avatar" src="{ user.avatar_url + '?thumbnail&amp;size=150' }" alt="avatar"/>
<mk-user-header data-is-dark-background={ user.banner_url != null }>
<div class="banner" ref="banner" style={ user.banner_url ? 'background-image: url(' + user.banner_url + '?thumbnail&amp;size=1024)' : '' } onclick={ onUpdateBanner }></div><img class="avatar" src={ user.avatar_url + '?thumbnail&amp;size=150' } alt="avatar"/>
<div class="title">
<p class="name" href="{ CONFIG.url + '/' + user.username }">{ user.name }</p>
<p class="name" href={ CONFIG.url + '/' + user.username }>{ user.name }</p>
<p class="username">@{ user.username }</p>
<p class="location" if="{ user.location }"><i class="fa fa-map-marker"></i>{ user.location }</p>
<p class="location" if={ user.location }><i class="fa fa-map-marker"></i>{ user.location }</p>
</div>
<footer><a href="{ '/' + user.username }">投稿</a><a href="{ '/' + user.username + '/media' }">メディア</a><a href="{ '/' + user.username + '/graphs' }">グラフ</a>
<button onclick="{ NotImplementedException }"><i class="fa fa-ellipsis-h"></i></button>
<footer><a href={ '/' + user.username }>投稿</a><a href={ '/' + user.username + '/media' }>メディア</a><a href={ '/' + user.username + '/graphs' }>グラフ</a>
<button onclick={ NotImplementedException }><i class="fa fa-ellipsis-h"></i></button>
</footer>
<style type="stylus">
:scope

View file

@ -1,10 +1,10 @@
<mk-user-home>
<div class="side">
<mk-user-profile user="{ user }"></mk-user-profile>
<mk-user-photos user="{ user }"></mk-user-photos>
<mk-user-profile user={ user }></mk-user-profile>
<mk-user-photos user={ user }></mk-user-photos>
</div>
<main>
<mk-user-timeline ref="tl" user="{ user }"></mk-user-timeline>
<mk-user-timeline ref="tl" user={ user }></mk-user-timeline>
</main>
<style type="stylus">
:scope

View file

@ -1,14 +1,14 @@
<mk-user-photos>
<p class="title"><i class="fa fa-camera"></i>フォト</p>
<p class="initializing" if="{ initializing }"><i class="fa fa-spinner fa-pulse fa-fw"></i>読み込んでいます
<p class="initializing" if={ initializing }><i class="fa fa-spinner fa-pulse fa-fw"></i>読み込んでいます
<mk-ellipsis></mk-ellipsis>
</p>
<div class="stream" if="{ !initializing &amp;&amp; images.length &gt; 0 }">
<virtual each="{ image in images }">
<div class="img" style="{ 'background-image: url(' + image.url + '?thumbnail&amp;size=256)' }"></div>
<div class="stream" if={ !initializing &amp;&amp; images.length &gt; 0 }>
<virtual each={ image in images }>
<div class="img" style={ 'background-image: url(' + image.url + '?thumbnail&amp;size=256)' }></div>
</virtual>
</div>
<p class="empty" if="{ !initializing &amp;&amp; images.length == 0 }">写真はありません</p>
<p class="empty" if={ !initializing &amp;&amp; images.length == 0 }>写真はありません</p>
<style type="stylus">
:scope
display block

View file

@ -1,6 +1,6 @@
<mk-user-preview>
<virtual if="{ user != null }">
<div class="banner" style="{ user.banner_url ? 'background-image: url(' + user.banner_url + '?thumbnail&amp;size=512)' : '' }"></div><a class="avatar" href="{ CONFIG.url + '/' + user.username }" target="_blank"><img src="{ user.avatar_url + '?thumbnail&amp;size=64' }" alt="avatar"/></a>
<virtual if={ user != null }>
<div class="banner" style={ user.banner_url ? 'background-image: url(' + user.banner_url + '?thumbnail&amp;size=512)' : '' }></div><a class="avatar" href={ CONFIG.url + '/' + user.username } target="_blank"><img src={ user.avatar_url + '?thumbnail&amp;size=64' } alt="avatar"/></a>
<div class="title">
<p class="name">{ user.name }</p>
<p class="username">@{ user.username }</p>
@ -17,7 +17,7 @@
<p>フォロワー</p><a>{ user.followers_count }</a>
</div>
</div>
<mk-follow-button if="{ SIGNIN &amp;&amp; user.id != I.id }" user="{ userPromise }"></mk-follow-button>
<mk-follow-button if={ SIGNIN &amp;&amp; user.id != I.id } user={ userPromise }></mk-follow-button>
</virtual>
<style type="stylus">
:scope

View file

@ -1,15 +1,15 @@
<mk-user-profile>
<div class="friend-form" if="{ SIGNIN &amp;&amp; I.id != user.id }">
<mk-big-follow-button user="{ user }"></mk-big-follow-button>
<p class="followed" if="{ user.is_followed }">フォローされています</p>
<div class="friend-form" if={ SIGNIN &amp;&amp; I.id != user.id }>
<mk-big-follow-button user={ user }></mk-big-follow-button>
<p class="followed" if={ user.is_followed }>フォローされています</p>
</div>
<div class="bio" if="{ user.bio != '' }">{ user.bio }</div>
<div class="birthday" if="{ user.birthday }">
<div class="bio" if={ user.bio != '' }>{ user.bio }</div>
<div class="birthday" if={ user.birthday }>
<p><i class="fa fa-birthday-cake"></i>{ user.birthday.replace('-', '年').replace('-', '月') + '日' }</p>
</div>
<div class="friends">
<p class="following"><i class="fa fa-angle-right"></i><a onclick="{ showFollowing }">{ user.following_count }</a>人を<b>フォロー</b></p>
<p class="followers"><i class="fa fa-angle-right"></i><a onclick="{ showFollowers }">{ user.followers_count }</a>人の<b>フォロワー</b></p>
<p class="following"><i class="fa fa-angle-right"></i><a onclick={ showFollowing }>{ user.following_count }</a>人を<b>フォロー</b></p>
<p class="followers"><i class="fa fa-angle-right"></i><a onclick={ showFollowers }>{ user.followers_count }</a>人の<b>フォロワー</b></p>
</div>
<style type="stylus">
:scope

View file

@ -1,10 +1,10 @@
<mk-user-timeline>
<header><span data-is-active="{ mode == 'default' }" onclick="{ setMode.bind(this, 'default') }">投稿</span><span data-is-active="{ mode == 'with-replies' }" onclick="{ setMode.bind(this, 'with-replies') }">投稿と返信</span></header>
<div class="loading" if="{ isLoading }">
<header><span data-is-active={ mode == 'default' } onclick={ setMode.bind(this, 'default') }>投稿</span><span data-is-active={ mode == 'with-replies' } onclick={ setMode.bind(this, 'with-replies') }>投稿と返信</span></header>
<div class="loading" if={ isLoading }>
<mk-ellipsis-icon></mk-ellipsis-icon>
</div>
<p class="empty" if="{ isEmpty }"><i class="fa fa-comments-o"></i>このユーザーはまだ何も投稿していないようです。</p>
<mk-timeline ref="timeline"><yield to="footer"><i class="fa fa-moon-o" if="{ !parent.moreLoading }"></i><i class="fa fa-spinner fa-pulse fa-fw" if="{ parent.moreLoading }"></i></yield></mk-timeline>
<p class="empty" if={ isEmpty }><i class="fa fa-comments-o"></i>このユーザーはまだ何も投稿していないようです。</p>
<mk-timeline ref="timeline"><yield to="footer"><i class="fa fa-moon-o" if={ !parent.moreLoading }></i><i class="fa fa-spinner fa-pulse fa-fw" if={ parent.moreLoading }></i></yield></mk-timeline>
<style type="stylus">
:scope
display block

View file

@ -1,11 +1,11 @@
<mk-user>
<div class="user" if="{ !fetching }">
<div class="user" if={ !fetching }>
<header>
<mk-user-header user="{ user }"></mk-user-header>
<mk-user-header user={ user }></mk-user-header>
</header>
<div class="body">
<mk-user-home if="{ page == 'home' }" user="{ user }"></mk-user-home>
<mk-user-graphs if="{ page == 'graphs' }" user="{ user }"></mk-user-graphs>
<mk-user-home if={ page == 'home' } user={ user }></mk-user-home>
<mk-user-graphs if={ page == 'graphs' } user={ user }></mk-user-graphs>
</div>
</div>
<style type="stylus">

View file

@ -1,18 +1,18 @@
<mk-users-list>
<nav>
<div><span data-is-active="{ mode == 'all' }" onclick="{ setMode.bind(this, 'all') }">すべて<span>{ opts.count }</span></span>
<!-- ↓ https://github.com/riot/riot/issues/2080--><span if="{ SIGNIN &amp;&amp; opts.youKnowCount != '' }" data-is-active="{ mode == 'iknow' }" onclick="{ setMode.bind(this, 'iknow') }">知り合い<span>{ opts.youKnowCount }</span></span>
<div><span data-is-active={ mode == 'all' } onclick={ setMode.bind(this, 'all') }>すべて<span>{ opts.count }</span></span>
<!-- ↓ https://github.com/riot/riot/issues/2080--><span if={ SIGNIN &amp;&amp; opts.youKnowCount != '' } data-is-active={ mode == 'iknow' } onclick={ setMode.bind(this, 'iknow') }>知り合い<span>{ opts.youKnowCount }</span></span>
</div>
</nav>
<div class="users" if="{ !fetching &amp;&amp; users.length != 0 }">
<div each="{ users }">
<mk-list-user user="{ this }"></mk-list-user>
<div class="users" if={ !fetching &amp;&amp; users.length != 0 }>
<div each={ users }>
<mk-list-user user={ this }></mk-list-user>
</div>
</div>
<button class="more" if="{ !fetching &amp;&amp; next != null }" onclick="{ more }" disabled="{ moreFetching }"><span if="{ !moreFetching }">もっと</span><span if="{ moreFetching }">読み込み中
<button class="more" if={ !fetching &amp;&amp; next != null } onclick={ more } disabled={ moreFetching }><span if={ !moreFetching }>もっと</span><span if={ moreFetching }>読み込み中
<mk-ellipsis></mk-ellipsis></span></button>
<p class="no" if="{ !fetching &amp;&amp; users.length == 0 }">{ opts.noUsers }</p>
<p class="fetching" if="{ fetching }"><i class="fa fa-spinner fa-pulse fa-fw"></i>読み込んでいます
<p class="no" if={ !fetching &amp;&amp; users.length == 0 }>{ opts.noUsers }</p>
<p class="fetching" if={ fetching }><i class="fa fa-spinner fa-pulse fa-fw"></i>読み込んでいます
<mk-ellipsis></mk-ellipsis>
</p>
<style type="stylus">

View file

@ -1,21 +1,21 @@
<mk-window data-flexible="{ isFlexible }" data-colored="{ opts.colored }" ondragover="{ ondragover }">
<div class="bg" ref="bg" show="{ isModal }" onclick="{ bgClick }"></div>
<div class="main" ref="main" tabindex="-1" data-is-modal="{ isModal }" onmousedown="{ onBodyMousedown }" onkeydown="{ onKeydown }">
<mk-window data-flexible={ isFlexible } data-colored={ opts.colored } ondragover={ ondragover }>
<div class="bg" ref="bg" show={ isModal } onclick={ bgClick }></div>
<div class="main" ref="main" tabindex="-1" data-is-modal={ isModal } onmousedown={ onBodyMousedown } onkeydown={ onKeydown }>
<div class="body">
<header ref="header" onmousedown="{ onHeaderMousedown }">
<header ref="header" onmousedown={ onHeaderMousedown }>
<h1 data-yield="header"><yield from="header"/></h1>
<button class="close" if="{ canClose }" onmousedown="{ repelMove }" onclick="{ close }" title="閉じる"><i class="fa fa-times"></i></button>
<button class="close" if={ canClose } onmousedown={ repelMove } onclick={ close } title="閉じる"><i class="fa fa-times"></i></button>
</header>
<div class="content" data-yield="content"><yield from="content"/></div>
</div>
<div class="handle top" if="{ canResize }" onmousedown="{ onTopHandleMousedown }"></div>
<div class="handle right" if="{ canResize }" onmousedown="{ onRightHandleMousedown }"></div>
<div class="handle bottom" if="{ canResize }" onmousedown="{ onBottomHandleMousedown }"></div>
<div class="handle left" if="{ canResize }" onmousedown="{ onLeftHandleMousedown }"></div>
<div class="handle top-left" if="{ canResize }" onmousedown="{ onTopLeftHandleMousedown }"></div>
<div class="handle top-right" if="{ canResize }" onmousedown="{ onTopRightHandleMousedown }"></div>
<div class="handle bottom-right" if="{ canResize }" onmousedown="{ onBottomRightHandleMousedown }"></div>
<div class="handle bottom-left" if="{ canResize }" onmousedown="{ onBottomLeftHandleMousedown }"></div>
<div class="handle top" if={ canResize } onmousedown={ onTopHandleMousedown }></div>
<div class="handle right" if={ canResize } onmousedown={ onRightHandleMousedown }></div>
<div class="handle bottom" if={ canResize } onmousedown={ onBottomHandleMousedown }></div>
<div class="handle left" if={ canResize } onmousedown={ onLeftHandleMousedown }></div>
<div class="handle top-left" if={ canResize } onmousedown={ onTopLeftHandleMousedown }></div>
<div class="handle top-right" if={ canResize } onmousedown={ onTopRightHandleMousedown }></div>
<div class="handle bottom-right" if={ canResize } onmousedown={ onBottomRightHandleMousedown }></div>
<div class="handle bottom-left" if={ canResize } onmousedown={ onBottomLeftHandleMousedown }></div>
</div>
<style type="stylus">
:scope

View file

@ -1,5 +1,5 @@
<mk-new-app-form>
<form onsubmit="{ onsubmit }" autocomplete="off">
<form onsubmit={ onsubmit } autocomplete="off">
<section class="name">
<label>
<p class="caption">アプリケーション名</p>
@ -9,14 +9,14 @@
<section class="nid">
<label>
<p class="caption">Named ID</p>
<input ref="nid" type="text" pattern="^[a-zA-Z0-9-]{3,30}$" placeholder="ex) misskey-for-ios" autocomplete="off" required="required" onkeyup="{ onChangeNid }"/>
<p class="info" if="{ nidState == 'wait' }" style="color:#999"><i class="fa fa-fw fa-spinner fa-pulse"></i>確認しています...</p>
<p class="info" if="{ nidState == 'ok' }" style="color:#3CB7B5"><i class="fa fa-fw fa-check"></i>利用できます</p>
<p class="info" if="{ nidState == 'unavailable' }" style="color:#FF1161"><i class="fa fa-fw fa-exclamation-triangle"></i>既に利用されています</p>
<p class="info" if="{ nidState == 'error' }" style="color:#FF1161"><i class="fa fa-fw fa-exclamation-triangle"></i>通信エラー</p>
<p class="info" if="{ nidState == 'invalid-format' }" style="color:#FF1161"><i class="fa fa-fw fa-exclamation-triangle"></i>a~z、A~Z、0~9、-(ハイフン)が使えます</p>
<p class="info" if="{ nidState == 'min-range' }" style="color:#FF1161"><i class="fa fa-fw fa-exclamation-triangle"></i>3文字以上でお願いします</p>
<p class="info" if="{ nidState == 'max-range' }" style="color:#FF1161"><i class="fa fa-fw fa-exclamation-triangle"></i>30文字以内でお願いします</p>
<input ref="nid" type="text" pattern="^[a-zA-Z0-9-]{3,30}$" placeholder="ex) misskey-for-ios" autocomplete="off" required="required" onkeyup={ onChangeNid }/>
<p class="info" if={ nidState == 'wait' } style="color:#999"><i class="fa fa-fw fa-spinner fa-pulse"></i>確認しています...</p>
<p class="info" if={ nidState == 'ok' } style="color:#3CB7B5"><i class="fa fa-fw fa-check"></i>利用できます</p>
<p class="info" if={ nidState == 'unavailable' } style="color:#FF1161"><i class="fa fa-fw fa-exclamation-triangle"></i>既に利用されています</p>
<p class="info" if={ nidState == 'error' } style="color:#FF1161"><i class="fa fa-fw fa-exclamation-triangle"></i>通信エラー</p>
<p class="info" if={ nidState == 'invalid-format' } style="color:#FF1161"><i class="fa fa-fw fa-exclamation-triangle"></i>a~z、A~Z、0~9、-(ハイフン)が使えます</p>
<p class="info" if={ nidState == 'min-range' } style="color:#FF1161"><i class="fa fa-fw fa-exclamation-triangle"></i>3文字以上でお願いします</p>
<p class="info" if={ nidState == 'max-range' } style="color:#FF1161"><i class="fa fa-fw fa-exclamation-triangle"></i>30文字以内でお願いします</p>
</label>
</section>
<section class="description">
@ -73,7 +73,7 @@
</div>
<p><i class="fa fa-exclamation-triangle"></i>アプリ作成後も変更できますが、新たな権限を付与する場合、その時点で関連付けられているユーザーキーはすべて無効になります。</p>
</section>
<button onclick="{ onsubmit }">アプリ作成</button>
<button onclick={ onsubmit }>アプリ作成</button>
</form>
<style type="stylus">
:scope

Some files were not shown because too many files have changed in this diff Show more