TheDesk Akane (16.0.4)
This commit is contained in:
parent
1ac79f21ae
commit
edd712b6ba
11
README.md
11
README.md
|
@ -1,4 +1,5 @@
|
||||||
# TheDesk
|
# TheDesk
|
||||||
|
|
||||||
Mastodon/Misskey client for PC(Windows/Linux/macOS)
|
Mastodon/Misskey client for PC(Windows/Linux/macOS)
|
||||||
オープンソースSNSマストドン/MisskeyのWindows/Linuxクライアント
|
オープンソースSNSマストドン/MisskeyのWindows/Linuxクライアント
|
||||||
Download:[TheDesk](https://thedesk.top)
|
Download:[TheDesk](https://thedesk.top)
|
||||||
|
@ -28,7 +29,6 @@ You cannot PR? You can also write Issues.
|
||||||
該当箇所がわからない場合はIssuesに書いてください.
|
該当箇所がわからない場合はIssuesに書いてください.
|
||||||
他言語も大歓迎です!
|
他言語も大歓迎です!
|
||||||
|
|
||||||
|
|
||||||
## Component/構成
|
## Component/構成
|
||||||
|
|
||||||
app:Raw files(you can download to modify or check)
|
app:Raw files(you can download to modify or check)
|
||||||
|
@ -40,8 +40,7 @@ desk.icns: macOS向けアイコン.セルフビルドにどうぞ.
|
||||||
|
|
||||||
## Requirement/環境
|
## Requirement/環境
|
||||||
|
|
||||||
- Windows (to launch TheDesk/実行に必要) / Linux (x64/ia32/armv7l)
|
- Electron 2.0.7
|
||||||
- Electron 2.0.5
|
|
||||||
- electron-dl
|
- electron-dl
|
||||||
- Jimp
|
- Jimp
|
||||||
- adm-zip
|
- adm-zip
|
||||||
|
@ -62,11 +61,11 @@ Misskey(misskey.xyz)のトークンは含まれておりません。
|
||||||
|
|
||||||
electron-packager is required. electron-packagerが必要です.
|
electron-packager is required. electron-packagerが必要です.
|
||||||
Windows
|
Windows
|
||||||
`electron-packager ./app TheDesk --executable-name="TheDesk" --app-copyright="Copyright (c) TheDesk 2018 Cutls.com 2015 All Right Reserved" --win32metadata.CompanyName="TheDesk&Cutls.com" --win32metadata.FileDescription="TheDesk" --win32metadata.OriginalFilename="TheDesk" --win32metadata.InternalName="TheDesk" --win32metadata.ProductName="TheDesk" --platform=win32 --arch=all --electron-version=2.0.5 --icon=.\app\thedesk.ico --overwrite`
|
`electron-packager ./app TheDesk --executable-name="TheDesk" --app-copyright="Copyright (c) TheDesk 2018 Cutls.com 2015 All Right Reserved" --win32metadata.CompanyName="TheDesk&Cutls.com" --win32metadata.FileDescription="TheDesk" --win32metadata.OriginalFilename="TheDesk" --win32metadata.InternalName="TheDesk" --win32metadata.ProductName="TheDesk" --platform=win32 --arch=all --electron-version=2.0.7 --icon=.\app\thedesk.ico --overwrite`
|
||||||
Linux
|
Linux
|
||||||
`electron-packager ./app TheDesk --executable-name="TheDesk" --app-copyright="Copyright (c) TheDesk 2018 Cutls.com 2015 All Right Reserved" --platform=linux --arch=x64,ia32 --electron-version=2.0.5 --overwrite`
|
`electron-packager ./app TheDesk --executable-name="TheDesk" --app-copyright="Copyright (c) TheDesk 2018 Cutls.com 2015 All Right Reserved" --platform=linux --arch=x64,ia32 --electron-version=2.0.7 --overwrite`
|
||||||
macOS
|
macOS
|
||||||
`electron-packager ./app TheDesk --executable-name="TheDesk" --app-copyright="Copyright (c) TheDesk 2018 Cutls.com 2015 All Right Reserved" --platform=darwin --arch=all --electron-version=2.0.5 --icon=./app/icon.icns --overwrite`
|
`electron-packager ./app TheDesk --executable-name="TheDesk" --app-copyright="Copyright (c) TheDesk 2018 Cutls.com 2015 All Right Reserved" --platform=darwin --arch=all --electron-version=2.0.7 --icon=./app/icon.icns --overwrite`
|
||||||
|
|
||||||
## See also/詳しく
|
## See also/詳しく
|
||||||
|
|
||||||
|
|
|
@ -348,9 +348,13 @@ p:not(:last-child){
|
||||||
min-height: 100px;
|
min-height: 100px;
|
||||||
max-height: 500px;
|
max-height: 500px;
|
||||||
}
|
}
|
||||||
|
.column-hide{
|
||||||
|
display:none;
|
||||||
|
overflow:hidden;
|
||||||
|
height:0;
|
||||||
|
}
|
||||||
.notf-indv-box {
|
.notf-indv-box {
|
||||||
width:100%;
|
width:100%;
|
||||||
min-height: 100px;
|
|
||||||
max-height: 400px;
|
max-height: 400px;
|
||||||
overflow-y: scroll;
|
overflow-y: scroll;
|
||||||
overflow-x: hidden;
|
overflow-x: hidden;
|
||||||
|
|
|
@ -26,7 +26,7 @@
|
||||||
<script type="text/javascript" src="./js/common/modal.js"></script>
|
<script type="text/javascript" src="./js/common/modal.js"></script>
|
||||||
<script type="text/javascript" src="./js/ui/jquery-ui.min.js"></script>
|
<script type="text/javascript" src="./js/ui/jquery-ui.min.js"></script>
|
||||||
<script>
|
<script>
|
||||||
var ver="Akane (16.0.3)";
|
var ver="Akane (16.0.4)";
|
||||||
//betaを入れるとバージョンチェックしない
|
//betaを入れるとバージョンチェックしない
|
||||||
//GitHubに上げるときはindex.htmlをちゃんとする。(index.start.html)
|
//GitHubに上げるときはindex.htmlをちゃんとする。(index.start.html)
|
||||||
//var ver="beta";
|
//var ver="beta";
|
||||||
|
@ -521,14 +521,20 @@ var lang="{{lang}}";
|
||||||
<h3>TheDesk</h3>
|
<h3>TheDesk</h3>
|
||||||
<a href="https://thedesk.top" target="_blank">HP</a><br>
|
<a href="https://thedesk.top" target="_blank">HP</a><br>
|
||||||
<a href="https://github.com/cutls/TheDesk" target="_blank">GitHub</a><br><br>
|
<a href="https://github.com/cutls/TheDesk" target="_blank">GitHub</a><br><br>
|
||||||
<div id="release-Akane_16-0-3" style="display:none">
|
<div id="release-Akane_16-0-4" style="display:none">
|
||||||
<h5>Release Note Akane (16.0.3)</h5>
|
<h5>Release Note Akane (16.0.4)</h5>
|
||||||
<b>Mio->AkaneアップデートでTLが表示できなくなったユーザー様へ</b><br>
|
<b>Mio->AkaneアップデートでTLが表示できなくなったユーザー様へ</b><br>
|
||||||
16.0.1で設定のインポート/エクスポートを実装いたしました。<br>
|
16.0.1で設定のインポート/エクスポートを実装いたしました。<br>
|
||||||
設定より一度エクスポートしていただき、もう一度インポートすることにより正常に動作すると思われます。<br>
|
設定より一度エクスポートしていただき、もう一度インポートすることにより正常に動作すると思われます。<br>
|
||||||
<u>開発環境でこのバグが再現できなかったため、あくまでも憶測による対処です。</u><br>
|
<u>開発環境でこのバグが再現できなかったため、あくまでも憶測による対処です。</u><br>
|
||||||
<br>
|
<br>
|
||||||
ご迷惑をおかけいたしましたことを深くお詫び申し上げます。<br>
|
ご迷惑をおかけいたしましたことを深くお詫び申し上げます。<br>
|
||||||
|
16.0.4<br>
|
||||||
|
<ul>
|
||||||
|
<li>一部ロケールを追加</li>
|
||||||
|
<li>Misskeyの一部修正</li>
|
||||||
|
<li>アニメーションの変更</li>
|
||||||
|
</ul>
|
||||||
16.0.3<br>
|
16.0.3<br>
|
||||||
<ul>
|
<ul>
|
||||||
<li>Misskey周りの改善</li>
|
<li>Misskey周りの改善</li>
|
||||||
|
|
|
@ -152,6 +152,21 @@ function misskeyParse(obj, mix, acct_id, tlid, popup, mutefilter) {
|
||||||
"pudding":"🍮"
|
"pudding":"🍮"
|
||||||
}
|
}
|
||||||
var icon=reactions[toot.reaction];
|
var icon=reactions[toot.reaction];
|
||||||
|
var reactions=["like","love","laugh","hmm","surprise","congrats","angry","confused","pudding"];
|
||||||
|
for(var i=0;i<reactions.length;i++){
|
||||||
|
if(toot.note.reactionCounts[reactions[i]]){
|
||||||
|
$("#pub_" + id +" .re-"+reactions[i]+"ct").text(toot.note.reactionCounts[reactions[i]])
|
||||||
|
$("#pub_" + id +" .re-"+reactions[i]).removeClass("hide")
|
||||||
|
}else{
|
||||||
|
$("#pub_" + id +" .re-"+reactions[i]+"ct").text(0)
|
||||||
|
if($("#pub_" + id +" .reactions").hasClass("fullreact")){
|
||||||
|
$("#pub_" + id +" .re-"+reactions[i]).addClass("hide")
|
||||||
|
}else{
|
||||||
|
$("#pub_" + id +" .re-"+reactions[i]).removeClass("hide")
|
||||||
|
}
|
||||||
|
$("#pub_" + id +" .re-"+reactions[i]+"ct").text(toot.note.reactionCounts[reactions[i]])
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
var noticetext = '<span class="cbadge cbadge-hover"title="' + date(toot.createdAt,
|
var noticetext = '<span class="cbadge cbadge-hover"title="' + date(toot.createdAt,
|
||||||
'absolute') + '('+lang_parse_notftime[lang]+')"><i class="fa fa-clock-o"></i>' + date(toot.createdAt,
|
'absolute') + '('+lang_parse_notftime[lang]+')"><i class="fa fa-clock-o"></i>' + date(toot.createdAt,
|
||||||
|
|
|
@ -114,21 +114,28 @@ function mixre(acct_id, tlid, TLtype, mute,delc) {
|
||||||
|
|
||||||
} else if (type == "update") {
|
} else if (type == "update") {
|
||||||
var templete = parse([obj], '', acct_id, tlid,"",mute);
|
var templete = parse([obj], '', acct_id, tlid,"",mute);
|
||||||
if (!$("#timeline_"+tlid+" [toot-id="+obj.id+"]").length) {
|
if($("#timeline_" + tlid +" [toot-id=" + obj.id + "]").length < 1){
|
||||||
|
if(voice){
|
||||||
|
say(obj.content)
|
||||||
|
}
|
||||||
|
var templete = parse([obj], type, acct_id, tlid,"",mute);
|
||||||
var pool = localStorage.getItem("pool_" + tlid);
|
var pool = localStorage.getItem("pool_" + tlid);
|
||||||
if (pool && templete) {
|
if (pool) {
|
||||||
pool = templete + pool;
|
pool = templete + pool;
|
||||||
} else if (templete) {
|
} else {
|
||||||
pool = templete
|
pool = templete
|
||||||
}else{
|
|
||||||
pool="";
|
|
||||||
}
|
}
|
||||||
localStorage.setItem("pool_" + tlid, pool);
|
localStorage.setItem("pool_" + tlid, pool);
|
||||||
|
|
||||||
scrollck();
|
scrollck();
|
||||||
|
|
||||||
additional(acct_id, tlid);
|
additional(acct_id, tlid);
|
||||||
jQuery("time.timeago").timeago();
|
jQuery("time.timeago").timeago();
|
||||||
todc();
|
}else{
|
||||||
}}
|
todo("二重取得発生中");
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
}
|
}
|
||||||
websocketHome[wshid].onmessage = function(mess) {
|
websocketHome[wshid].onmessage = function(mess) {
|
||||||
console.log("Receive Streaming API:(Integrated:Home)");
|
console.log("Receive Streaming API:(Integrated:Home)");
|
||||||
|
@ -154,19 +161,25 @@ function mixre(acct_id, tlid, TLtype, mute,delc) {
|
||||||
var templete="";
|
var templete="";
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (!$("#timeline_"+tlid+" [toot-id="+obj.id+"]").length) {
|
if($("#timeline_" + tlid +" [toot-id=" + obj.id + "]").length < 1){
|
||||||
|
if(voice){
|
||||||
|
say(obj.content)
|
||||||
|
}
|
||||||
|
var templete = parse([obj], type, acct_id, tlid,"",mute);
|
||||||
var pool = localStorage.getItem("pool_" + tlid);
|
var pool = localStorage.getItem("pool_" + tlid);
|
||||||
if (pool && templete) {
|
if (pool) {
|
||||||
pool = templete + pool;
|
pool = templete + pool;
|
||||||
} else if (templete) {
|
} else {
|
||||||
pool = templete
|
pool = templete
|
||||||
}else{
|
|
||||||
pool="";
|
|
||||||
}
|
}
|
||||||
localStorage.setItem("pool_" + tlid, pool);
|
localStorage.setItem("pool_" + tlid, pool);
|
||||||
|
|
||||||
scrollck();
|
scrollck();
|
||||||
|
|
||||||
additional(acct_id, tlid);
|
additional(acct_id, tlid);
|
||||||
jQuery("time.timeago").timeago();
|
jQuery("time.timeago").timeago();
|
||||||
|
}else{
|
||||||
|
todo("二重取得発生中");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -239,8 +239,29 @@ function notfmore(tlid) {
|
||||||
|
|
||||||
//通知トグルボタン
|
//通知トグルボタン
|
||||||
function notfToggle(acct, tlid) {
|
function notfToggle(acct, tlid) {
|
||||||
$("#notf-box_" + tlid).toggleClass("hide");
|
if($("#notf-box_" + tlid).hasClass("column-hide")){
|
||||||
$("#notf-box_" + tlid).toggleClass("show");
|
$("#notf-box_" + tlid).css("display","block")
|
||||||
|
$("#notf-box_" + tlid).animate({
|
||||||
|
'height': '400px'
|
||||||
|
},{
|
||||||
|
'duration': 300,
|
||||||
|
'complete': function(){
|
||||||
|
$("#notf-box_" + tlid).css("overflow-y","scroll")
|
||||||
|
$("#notf-box_" + tlid).removeClass("column-hide")
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}else{
|
||||||
|
$("#notf-box_" + tlid).css("overflow-y","hidden")
|
||||||
|
$("#notf-box_" + tlid).animate({
|
||||||
|
'height': '0'
|
||||||
|
},{
|
||||||
|
'duration': 300,
|
||||||
|
'complete': function(){
|
||||||
|
$("#notf-box_" + tlid).addClass("column-hide")
|
||||||
|
$("#notf-box_" + tlid).css("display","none")
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
notfCanceler(acct)
|
notfCanceler(acct)
|
||||||
}
|
}
|
||||||
function notfCanceler(acct){
|
function notfCanceler(acct){
|
||||||
|
|
|
@ -549,9 +549,9 @@ function parse(obj, mix, acct_id, tlid, popup, mutefilter) {
|
||||||
'('+lang_parse_clickcopyurl[lang]+')"><i class="fa fa-clock-o"></i>' +
|
'('+lang_parse_clickcopyurl[lang]+')"><i class="fa fa-clock-o"></i>' +
|
||||||
date(toot.created_at, datetype) + '</span>' +
|
date(toot.created_at, datetype) + '</span>' +
|
||||||
'</div></div>' +
|
'</div></div>' +
|
||||||
'<div class="area-toot"><span class="toot ' + spoiler + '">' + content +
|
'<div class="area-toot"><span class="' +
|
||||||
'</span><span class="' +
|
|
||||||
api_spoil + ' cw_text_' + toot.id + '">' + spoil + spoiler_show +
|
api_spoil + ' cw_text_' + toot.id + '">' + spoil + spoiler_show +
|
||||||
|
'</span><span class="toot ' + spoiler + '">' + content +
|
||||||
'</span>' +
|
'</span>' +
|
||||||
'' + viewer + '' +
|
'' + viewer + '' +
|
||||||
'</div><div class="area-additional"><span class="additional">' + analyze +
|
'</div><div class="area-additional"><span class="additional">' + analyze +
|
||||||
|
@ -605,7 +605,6 @@ function parse(obj, mix, acct_id, tlid, popup, mutefilter) {
|
||||||
|
|
||||||
//オブジェクトパーサー(ユーザーデータ)
|
//オブジェクトパーサー(ユーザーデータ)
|
||||||
function userparse(obj, auth, acct_id, tlid, popup) {
|
function userparse(obj, auth, acct_id, tlid, popup) {
|
||||||
console.log("notf-get")
|
|
||||||
//独自ロケール
|
//独自ロケール
|
||||||
var locale = localStorage.getItem("locale");
|
var locale = localStorage.getItem("locale");
|
||||||
if(locale=="yes"){
|
if(locale=="yes"){
|
||||||
|
@ -616,6 +615,7 @@ function userparse(obj, auth, acct_id, tlid, popup) {
|
||||||
Object.keys(obj).forEach(function(key) {
|
Object.keys(obj).forEach(function(key) {
|
||||||
var toot = obj[key];
|
var toot = obj[key];
|
||||||
if(!toot.username){
|
if(!toot.username){
|
||||||
|
var raw=toot;
|
||||||
toot=toot.account;
|
toot=toot.account;
|
||||||
var notf=true;
|
var notf=true;
|
||||||
}else{
|
}else{
|
||||||
|
@ -637,10 +637,7 @@ function userparse(obj, auth, acct_id, tlid, popup) {
|
||||||
ftxt = localStorage.getItem("follow_" + acct_id);
|
ftxt = localStorage.getItem("follow_" + acct_id);
|
||||||
}
|
}
|
||||||
if(popup > 0 || popup==-1 || notf){
|
if(popup > 0 || popup==-1 || notf){
|
||||||
var notftext='<span class="cbadge" title="' + date(toot.created_at,
|
var notftext=ftxt+'<br>';
|
||||||
'absolute') + '('+lang_parse_notftime[lang]+')"><i class="fa fa-clock-o"></i>' + date(toot.created_at,
|
|
||||||
datetype) +
|
|
||||||
'</span>'+ftxt+'<br>';
|
|
||||||
}else{
|
}else{
|
||||||
var notftext="";
|
var notftext="";
|
||||||
}
|
}
|
||||||
|
|
|
@ -485,7 +485,11 @@ function cap(type, data, acct_id) {
|
||||||
} else if (type == "dm") {
|
} else if (type == "dm") {
|
||||||
var response= "DM"
|
var response= "DM"
|
||||||
} else if (type == "mix") {
|
} else if (type == "mix") {
|
||||||
|
if(localStorage.getItem("domain_" + acct_id)=="misskey.xyz"){
|
||||||
|
var response= "Social TL"
|
||||||
|
}else{
|
||||||
var response= "Integrated"
|
var response= "Integrated"
|
||||||
|
}
|
||||||
} else if (type == "plus") {
|
} else if (type == "plus") {
|
||||||
var response= "Local+"
|
var response= "Local+"
|
||||||
}
|
}
|
||||||
|
|
|
@ -119,9 +119,9 @@ function parseColumn() {
|
||||||
')" class="setting nex"><i class="material-icons waves-effect nex" title="'+lang_layout_delthis[lang]+'"'+icnsert+'>cancel</i></a></div>'+
|
')" class="setting nex"><i class="material-icons waves-effect nex" title="'+lang_layout_delthis[lang]+'"'+icnsert+'>cancel</i></a></div>'+
|
||||||
'<div class="area-a3"><a onclick="setToggle(' + key +
|
'<div class="area-a3"><a onclick="setToggle(' + key +
|
||||||
')" class="setting nex" title="'+lang_layout_setthis[lang]+'"'+icnsert+'><i class="material-icons waves-effect nex">settings</i></a></div></div>'+
|
')" class="setting nex" title="'+lang_layout_setthis[lang]+'"'+icnsert+'><i class="material-icons waves-effect nex">settings</i></a></div></div>'+
|
||||||
'<div class="hide notf-indv-box z-depth-4" id="notf-box_' + key +
|
'<div class="column-hide notf-indv-box z-depth-4" id="notf-box_' + key +
|
||||||
'"><div id="notifications_' + key +
|
'"><div id="notifications_' + key +
|
||||||
'" data-notf="' + acct.domain + '" data-type="notf"></div></div><div class="hide notf-indv-box" id="util-box_' + key +
|
'" data-notf="' + acct.domain + '" data-type="notf"></div></div><div class="column-hide notf-indv-box" id="util-box_' + key +
|
||||||
'" style="padding:5px;"><a onclick="mediaToggle(' + key +
|
'" style="padding:5px;"><a onclick="mediaToggle(' + key +
|
||||||
')" class="setting nex"><i class="material-icons waves-effect nex" title="'+lang_layout_mediafil[lang]+'">perm_media</i><span id="sta-media-' +
|
')" class="setting nex"><i class="material-icons waves-effect nex" title="'+lang_layout_mediafil[lang]+'">perm_media</i><span id="sta-media-' +
|
||||||
key + '">On</span></a>'+lang_layout_mediafil[lang]+'<br><a onclick="cardToggle(' + key +
|
key + '">On</span></a>'+lang_layout_mediafil[lang]+'<br><a onclick="cardToggle(' + key +
|
||||||
|
@ -254,8 +254,29 @@ function removeColumn(tlid) {
|
||||||
//設定トグル
|
//設定トグル
|
||||||
function setToggle(tlid) {
|
function setToggle(tlid) {
|
||||||
colorpicker(tlid);
|
colorpicker(tlid);
|
||||||
$("#util-box_" + tlid).toggleClass("hide");
|
if($("#util-box_" + tlid).hasClass("column-hide")){
|
||||||
$("#util-box_" + tlid).toggleClass("show");
|
$("#util-box_" + tlid).css("display","block")
|
||||||
|
$("#util-box_" + tlid).animate({
|
||||||
|
'height': '200px'
|
||||||
|
},{
|
||||||
|
'duration': 300,
|
||||||
|
'complete': function(){
|
||||||
|
$("#util-box_" + tlid).css("overflow-y","scroll")
|
||||||
|
$("#util-box_" + tlid).removeClass("column-hide")
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}else{
|
||||||
|
$("#util-box_" + tlid).css("overflow-y","hidden")
|
||||||
|
$("#util-box_" + tlid).animate({
|
||||||
|
'height': '0'
|
||||||
|
},{
|
||||||
|
'duration': 300,
|
||||||
|
'complete': function(){
|
||||||
|
$("#util-box_" + tlid).addClass("column-hide")
|
||||||
|
$("#util-box_" + tlid).css("display","none")
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
}
|
}
|
||||||
function colorpicker(key){
|
function colorpicker(key){
|
||||||
temp=
|
temp=
|
||||||
|
|
4
app/package-lock.json
generated
4
app/package-lock.json
generated
|
@ -1,6 +1,6 @@
|
||||||
{
|
{
|
||||||
"name": "TheDesk",
|
"name": "thedesk",
|
||||||
"version": "15.10.0",
|
"version": "16.0.4",
|
||||||
"lockfileVersion": 1,
|
"lockfileVersion": 1,
|
||||||
"requires": true,
|
"requires": true,
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
|
|
|
@ -1,27 +1,29 @@
|
||||||
{
|
{
|
||||||
"name": "thedesk",
|
"name": "thedesk",
|
||||||
"version": "16.0.3",
|
"version": "16.0.4",
|
||||||
"description": "TheDesk is a Mastodon client for PC.",
|
"description": "TheDesk is a Mastodon client for PC.",
|
||||||
"main": "main.js",
|
"main": "main.js",
|
||||||
"scripts": {
|
"scripts": {
|
||||||
"test": "echo \"Error: no test specified\" && exit 1"
|
"test": "echo \"Error: no test specified\" && exit 1"
|
||||||
},
|
},
|
||||||
"keywords": [],
|
"keywords": [],
|
||||||
"bugs":{
|
"bugs": {
|
||||||
"url" : "https://github.com/cutls/TheDesk/issues",
|
"url": "https://github.com/cutls/TheDesk/issues",
|
||||||
"email" : "mstdn@thedesk.top"
|
"email": "mstdn@thedesk.top"
|
||||||
},
|
},
|
||||||
"homepage":"https://thedesk.top",
|
"homepage": "https://thedesk.top",
|
||||||
"author": {
|
"author": {
|
||||||
"name": "Cutls P",
|
"name": "Cutls P",
|
||||||
"url" : "https://kirishima.clooud/@Cutls",
|
"url": "https://kirishima.clooud/@Cutls",
|
||||||
"email" : "web-pro@cutls.com"
|
"email": "web-pro@cutls.com"
|
||||||
},
|
},
|
||||||
"contributor": [{
|
"contributor": [
|
||||||
|
{
|
||||||
"name": "とねぢ",
|
"name": "とねぢ",
|
||||||
"url" : "https://minohdon.jp/@toneji",
|
"url": "https://minohdon.jp/@toneji",
|
||||||
"email" : "solfa.tono@gmail.com"
|
"email": "solfa.tono@gmail.com"
|
||||||
}],
|
}
|
||||||
|
],
|
||||||
"license": "TheDesk LICENSE",
|
"license": "TheDesk LICENSE",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"adm-zip": "^0.4.11",
|
"adm-zip": "^0.4.11",
|
||||||
|
|
Loading…
Reference in New Issue
Block a user