TheDesk Miria (17.0.0)
This commit is contained in:
parent
8bb27aa8d5
commit
bc197db0d5
1
.gitignore
vendored
1
.gitignore
vendored
|
@ -4,6 +4,7 @@
|
|||
*.exe
|
||||
TheDesk-*
|
||||
app/build
|
||||
build
|
||||
make.js
|
||||
app/.DS_Store
|
||||
.DS_Store
|
||||
|
|
|
@ -275,7 +275,18 @@ blockquote:before, .quote:before {
|
|||
.modal-footer{
|
||||
background-color: var(--modalfooter) !important;
|
||||
}
|
||||
|
||||
.font{
|
||||
font-size:1.5rem;
|
||||
margin-bottom:5px;
|
||||
}
|
||||
.font:hover{
|
||||
background-color: #999;
|
||||
}
|
||||
.release-do{
|
||||
border: solid 2px;
|
||||
border-color:var(--color);
|
||||
padding:5px;
|
||||
}
|
||||
|
||||
|
||||
/*スクロールバー*/
|
||||
|
|
|
@ -2,6 +2,7 @@
|
|||
--bg:white;
|
||||
--drag:rgba(255, 255, 255, 0.8);
|
||||
--color:black;
|
||||
--beforehover:#757575;
|
||||
--modal:white;
|
||||
--subcolor:#e0e0e0;
|
||||
--box:white;
|
||||
|
@ -18,6 +19,7 @@
|
|||
--bg:#212121;
|
||||
--drag:rgba(0, 0, 0, 0.8);
|
||||
--color:white;
|
||||
--beforehover:#e0e0e0;
|
||||
--modal:black;
|
||||
--subcolor:#212121;
|
||||
--box:#424242;
|
||||
|
@ -34,6 +36,7 @@
|
|||
--bg:#031833;
|
||||
--drag:rgba(0, 0, 0, 0.8);
|
||||
--color:white;
|
||||
--beforehover:#e0e0e0;
|
||||
--modal:#0d1351;
|
||||
--subcolor:#0d1351;
|
||||
--shared:#004d40;
|
||||
|
@ -50,6 +53,7 @@
|
|||
--bg:#261411;
|
||||
--drag:rgba(0, 0, 0, 0.8);
|
||||
--color:white;
|
||||
--beforehover:#e0e0e0;
|
||||
--modal:#261411;
|
||||
--subcolor:#4e342e;
|
||||
--shared:#004d40;
|
||||
|
@ -66,6 +70,7 @@
|
|||
--bg:#c8e6c9;
|
||||
--drag:rgba(255, 255, 255, 0.8);
|
||||
--color:black;
|
||||
--beforehover:#757575;
|
||||
--modal:#81c784;
|
||||
--subcolor:#a5d6a7;
|
||||
--box:#81c784;
|
||||
|
|
|
@ -133,6 +133,7 @@ iframe {
|
|||
display:none;
|
||||
}
|
||||
.cvo {
|
||||
user-select: text;
|
||||
padding-left: 5px;
|
||||
border-bottom:0.5px solid;
|
||||
padding-right: 2px;
|
||||
|
@ -158,7 +159,7 @@ grid-area: icon;
|
|||
}
|
||||
|
||||
.area-display_name {
|
||||
user-select: auto;
|
||||
user-select: text;
|
||||
height:1.5em;
|
||||
margin:2px;
|
||||
margin-left:5px;
|
||||
|
@ -208,7 +209,6 @@ grid-area: toot;
|
|||
}
|
||||
.area-vis {
|
||||
margin:2px;
|
||||
font-size:0.5rem !important;
|
||||
grid-area: vis;
|
||||
}
|
||||
.area-side {
|
||||
|
@ -224,8 +224,15 @@ grid-area: toot;
|
|||
margin-top:10px;
|
||||
}
|
||||
.action i{
|
||||
font-size:1rem;
|
||||
font-size:1.2rem;
|
||||
margin-right:2px;
|
||||
color:var(--beforehover);
|
||||
}
|
||||
.action i:hover{
|
||||
color:var(--color);
|
||||
transition: 1s;
|
||||
}
|
||||
|
||||
.gray {
|
||||
color: gray;
|
||||
}
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
//バージョンチェッカー
|
||||
function verck(ver) {
|
||||
function verck(ver,winstore) {
|
||||
if(localStorage.getItem("ver")!=ver){
|
||||
localStorage.setItem("ver", ver);
|
||||
console.log("Thank you for your update");
|
||||
|
@ -18,7 +18,6 @@ function verck(ver) {
|
|||
}
|
||||
|
||||
var l = 5;
|
||||
|
||||
// 生成する文字列に含める文字セット
|
||||
var c = "abcdefghijklmnopqrstuvwxyz0123456789";
|
||||
var cl = c.length;
|
||||
|
@ -48,7 +47,9 @@ function verck(ver) {
|
|||
if (newest == ver) {
|
||||
todo(lang_version_usever[lang].replace("{{ver}}" ,mess.desk));
|
||||
//betaかWInstoreならアプデチェックしない
|
||||
} else if (ver.indexOf("beta")==-1 || winstore) {
|
||||
} else if (ver.indexOf("beta")!=-1 || winstore) {
|
||||
|
||||
}else{
|
||||
localStorage.removeItem("instance")
|
||||
if(localStorage.getItem("new-ver-skip")){
|
||||
if(localStorage.getItem("next-ver")!=newest){
|
||||
|
|
|
@ -82,6 +82,10 @@ var lang_setting_imgheight={
|
|||
"ja":"画像高さを{{set}}pxに設定しました。",
|
||||
"en":"Image height:{{set}}px"
|
||||
}
|
||||
var lang_setting_ticker={
|
||||
"ja":"#InstanceTicker使用を{{set}}に設定しました。",
|
||||
"en":"#InstanceTicker:{{set}}px"
|
||||
}
|
||||
var lang_setting_tag={
|
||||
"ja":"タグの取得範囲を「{{set}}」に設定しました。",
|
||||
"en":"Tag TL:{{set}}"
|
||||
|
|
|
@ -43,7 +43,7 @@ function ck() {
|
|||
|
||||
if (at) {
|
||||
$("#tl").show();
|
||||
|
||||
ticker();
|
||||
parseColumn();
|
||||
multiSelector();
|
||||
} else {
|
||||
|
@ -512,3 +512,24 @@ function enc(ver){
|
|||
var ver = ver.replace( /\]/g , "" );
|
||||
return ver;
|
||||
}
|
||||
//インスタンスティッカー
|
||||
function ticker() {
|
||||
var start = "https://toot.app/toot/";
|
||||
fetch(start, {
|
||||
method: 'GET',
|
||||
headers: {
|
||||
'content-type': 'application/json'
|
||||
},
|
||||
}).then(function(response) {
|
||||
return response.json();
|
||||
}).catch(function(error) {
|
||||
console.error(error);
|
||||
}).then(function(json) {
|
||||
if (json.error) {
|
||||
return;
|
||||
}
|
||||
if(json){
|
||||
localStorage.setItem("ticker", JSON.stringify(json));
|
||||
}
|
||||
});
|
||||
}
|
|
@ -61,7 +61,7 @@ function load() {
|
|||
var remote=electron.remote;
|
||||
var platform=remote.process.platform;
|
||||
if(platform=="win32"){
|
||||
|
||||
$("#linux").prop("checked", false);
|
||||
}else{
|
||||
$("#linux").prop("checked", true);
|
||||
}
|
||||
|
|
|
@ -113,28 +113,7 @@
|
|||
}
|
||||
return ret;
|
||||
};
|
||||
$.strip_tags = function(str, allowed) {
|
||||
if(!str){
|
||||
return "";
|
||||
}
|
||||
allowed = (((allowed || '') + '').toLowerCase().match(/<[a-z][a-z0-9]*>/g) || [])
|
||||
.join('');
|
||||
var tags = /<\/?([a-z][a-z0-9]*)\b[^>]*>?/gi,
|
||||
commentsAndPhpTags = /<!--[\s\S]*?-->|<\?(?:php)?[\s\S]*?\?>/gi;
|
||||
return str.replace(commentsAndPhpTags, '').replace(tags, function($0, $1) {
|
||||
return allowed.indexOf('<' + $1.toLowerCase() + '>') > -1 ? $0 : '';
|
||||
});
|
||||
};
|
||||
function escapeHTML(str) {
|
||||
if(!str){
|
||||
return "";
|
||||
}
|
||||
return str.replace(/&/g, '&')
|
||||
.replace(/</g, '<')
|
||||
.replace(/>/g, '>')
|
||||
.replace(/"/g, '"')
|
||||
.replace(/'/g, ''');
|
||||
}
|
||||
|
||||
//コピー
|
||||
function execCopy(string){
|
||||
var temp = $("#copy");
|
||||
|
|
|
@ -1,3 +1,34 @@
|
|||
//jQuery読む
|
||||
window.jQuery = window.$ = require('../../js/common/jquery.js');
|
||||
var Hammer = require('../../js/common/hammer.min.js');
|
||||
$.strip_tags = function(str, allowed) {
|
||||
if(!str){
|
||||
return "";
|
||||
}
|
||||
allowed = (((allowed || '') + '').toLowerCase().match(/<[a-z][a-z0-9]*>/g) || [])
|
||||
.join('');
|
||||
var tags = /<\/?([a-z][a-z0-9]*)\b[^>]*>?/gi,
|
||||
commentsAndPhpTags = /<!--[\s\S]*?-->|<\?(?:php)?[\s\S]*?\?>/gi;
|
||||
return str.replace(commentsAndPhpTags, '').replace(tags, function($0, $1) {
|
||||
return allowed.indexOf('<' + $1.toLowerCase() + '>') > -1 ? $0 : '';
|
||||
});
|
||||
};
|
||||
function escapeHTML(str) {
|
||||
if(!str){
|
||||
return "";
|
||||
}
|
||||
return str.replace(/&/g, '&')
|
||||
.replace(/</g, '<')
|
||||
.replace(/>/g, '>')
|
||||
.replace(/"/g, '"')
|
||||
.replace(/'/g, ''');
|
||||
}
|
||||
//PHPのnl2brと同様
|
||||
function nl2br(str) {
|
||||
if(!str){
|
||||
return "";
|
||||
}
|
||||
str = str.replace(/\r\n/g, "<br />");
|
||||
str = str.replace(/(\n|\r)/g, "<br />");
|
||||
return str;
|
||||
}
|
|
@ -47,10 +47,10 @@ function mdCheck(){
|
|||
}else{
|
||||
$("#textarea").attr("data-length", 500)
|
||||
}
|
||||
if(idata[domain+"_glitch"]){
|
||||
if(idata[domain+"_glitch"]==="true"){
|
||||
$("#local-button").removeClass("hide");
|
||||
}else{
|
||||
$("#local-button").removeClass("hide");
|
||||
$("#local-button").addClass("hide");
|
||||
}
|
||||
var multi = localStorage.getItem("multi");
|
||||
if (multi) {
|
||||
|
@ -117,15 +117,6 @@ if(localStorage.getItem("md")=="hide"){
|
|||
}[match]
|
||||
});
|
||||
}
|
||||
//PHPのnl2brと同様
|
||||
function nl2br(str) {
|
||||
if(!str){
|
||||
return "";
|
||||
}
|
||||
str = str.replace(/\r\n/g, "<br />");
|
||||
str = str.replace(/(\n|\r)/g, "<br />");
|
||||
return str;
|
||||
}
|
||||
//テキストボックスで選択したやつをタグで囲む(BB版)
|
||||
function surroundHTML(tagS,tagE) {
|
||||
var acct_id = $("#post-acct-sel").val();
|
||||
|
|
|
@ -70,45 +70,6 @@ function additional(acct_id, tlid) {
|
|||
$("[toot-id=" + id + "]").addClass("parsed");
|
||||
}
|
||||
});
|
||||
}else{
|
||||
var start = "https://" + domain + "/api/v1/statuses/" + id + "/card";
|
||||
fetch(start, {
|
||||
method: 'GET',
|
||||
headers: {
|
||||
'content-type': 'application/json',
|
||||
'Authorization': 'Bearer ' + at
|
||||
},
|
||||
//body: JSON.stringify({})
|
||||
}).then(function(response) {
|
||||
return response.json();
|
||||
}).catch(function(error) {
|
||||
todo(error);
|
||||
console.error(error);
|
||||
}).then(function(json) {
|
||||
console.log(json);
|
||||
//このリンク鳥やんけ、ってとき
|
||||
if (json.provider_name=="Twitter"){
|
||||
if(json.image){
|
||||
var twiImg='<br><img src="'+json.image+'">';
|
||||
}else{
|
||||
var twiImg='';
|
||||
}
|
||||
$("[toot-id=" + id + "] .additional").html(
|
||||
'<blockquote class="twitter-tweet"><b>'+escapeHTML(json.author_name)+'</b><br>'+escapeHTML(json.description)+twiImg+'</blockquote>');
|
||||
}
|
||||
if (json.title) {
|
||||
$("[toot-id=" + id + "] .additional").html(
|
||||
"<span class=\"gray\">URL"+lang_cards_check[lang]+":<br>Title:" + escapeHTML(json.title) + "<br>" +
|
||||
escapeHTML(json.description) + "</span>");
|
||||
}
|
||||
if (json.html) {
|
||||
$("[toot-id=" + id + "] .additional").html(json.html+'<i class="material-icons" onclick="pip('+id+')" title="'+lang_cards_pip[lang]+'">picture_in_picture_alt</i>');
|
||||
}
|
||||
if (json.title) {
|
||||
$("[toot-id=" + id + "] a:not(.parsed)").addClass("parsed");
|
||||
$("[toot-id=" + id + "]").addClass("parsed");
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
}else{
|
||||
|
|
|
@ -1,3 +1,25 @@
|
|||
function escapeHTMLtemp(str) {
|
||||
if(!str){
|
||||
return "";
|
||||
}
|
||||
return str.replace(/&/g, '&')
|
||||
.replace(/</g, '<')
|
||||
.replace(/>/g, '>')
|
||||
.replace(/"/g, '"')
|
||||
.replace(/'/g, ''');
|
||||
}
|
||||
$.strip_tagstemp = function(str, allowed) {
|
||||
if(!str){
|
||||
return "";
|
||||
}
|
||||
allowed = (((allowed || '') + '').toLowerCase().match(/<[a-z][a-z0-9]*>/g) || [])
|
||||
.join('');
|
||||
var tags = /<\/?([a-z][a-z0-9]*)\b[^>]*>?/gi,
|
||||
commentsAndPhpTags = /<!--[\s\S]*?-->|<\?(?:php)?[\s\S]*?\?>/gi;
|
||||
return str.replace(commentsAndPhpTags, '').replace(tags, function($0, $1) {
|
||||
return allowed.indexOf('<' + $1.toLowerCase() + '>') > -1 ? $0 : '';
|
||||
});
|
||||
};
|
||||
//オブジェクトパーサー(トゥート)
|
||||
function misskeyParse(obj, mix, acct_id, tlid, popup, mutefilter) {
|
||||
var templete = '';
|
||||
|
@ -55,6 +77,13 @@ function misskeyParse(obj, mix, acct_id, tlid, popup, mutefilter) {
|
|||
}else{
|
||||
wordmute = mutefilter;
|
||||
}
|
||||
//Ticker
|
||||
var tickerck = localStorage.getItem("ticker_ok");
|
||||
if(tickerck){
|
||||
var ticker=true;
|
||||
}else{
|
||||
var ticker=false;
|
||||
}
|
||||
if (!sent) {
|
||||
var sent = 500;
|
||||
}
|
||||
|
@ -127,7 +156,7 @@ function misskeyParse(obj, mix, acct_id, tlid, popup, mutefilter) {
|
|||
var toot = obj[key];
|
||||
var dis_name=toot.user.name;
|
||||
if(dis_name){
|
||||
dis_name=escapeHTML(dis_name);
|
||||
dis_name=escapeHTMLtemp(dis_name);
|
||||
}else{
|
||||
disname="";
|
||||
}
|
||||
|
@ -214,14 +243,14 @@ function misskeyParse(obj, mix, acct_id, tlid, popup, mutefilter) {
|
|||
}
|
||||
var domain = localStorage.getItem("domain_" + acct_id);
|
||||
if(popup>0){
|
||||
Materialize.toast("["+domain+"]"+escapeHTML(toot.user.name)+what, popup * 1000);
|
||||
Materialize.toast("["+domain+"]"+escapeHTMLtemp(toot.user.name)+what, popup * 1000);
|
||||
}
|
||||
if(native=="yes"){
|
||||
var electron = require("electron");
|
||||
var ipc = electron.ipcRenderer;
|
||||
var os = electron.remote.process.platform;
|
||||
var options = {
|
||||
body: toot.account.display_name+"(" + toot.account.acct +")"+what+"\n\n"+$.strip_tags(toot.status.content),
|
||||
body: toot.account.display_name+"(" + toot.account.acct +")"+what+"\n\n"+$.strip_tagstemp(toot.status.content),
|
||||
icon: toot.account.avatar
|
||||
};
|
||||
if(os=="darwin"){
|
||||
|
@ -229,7 +258,7 @@ function misskeyParse(obj, mix, acct_id, tlid, popup, mutefilter) {
|
|||
}else{
|
||||
ipc.send('native-notf', [
|
||||
'TheDesk:'+domain,
|
||||
toot.account.display_name+"(" + toot.account.acct +")"+what+"\n\n"+$.strip_tags(toot.status.content),
|
||||
toot.account.display_name+"(" + toot.account.acct +")"+what+"\n\n"+$.strip_tagstemp(toot.status.content),
|
||||
toot.account.avatar,
|
||||
"toot",
|
||||
acct_id,
|
||||
|
@ -245,7 +274,7 @@ function misskeyParse(obj, mix, acct_id, tlid, popup, mutefilter) {
|
|||
}
|
||||
var if_notf='data-notfIndv="'+acct_id+"_"+toot.id+'"';
|
||||
var toot = toot.note;
|
||||
var dis_name=escapeHTML(toot.user.name);
|
||||
var dis_name=escapeHTMLtemp(toot.user.name);
|
||||
}else{
|
||||
var if_notf="";
|
||||
if (toot.renote) {
|
||||
|
@ -256,7 +285,7 @@ function misskeyParse(obj, mix, acct_id, tlid, popup, mutefilter) {
|
|||
var boostback = "shared";
|
||||
var uniqueid=toot.id;
|
||||
var toot = toot.renote;
|
||||
var dis_name=escapeHTML(toot.user.name);
|
||||
var dis_name=escapeHTMLtemp(toot.user.name);
|
||||
var uniqueid=toot.id;
|
||||
var actemojick=false
|
||||
} else {
|
||||
|
@ -320,7 +349,7 @@ function misskeyParse(obj, mix, acct_id, tlid, popup, mutefilter) {
|
|||
}
|
||||
if ((toot.cw || toot.cw=="") && cw) {
|
||||
var content = toot.text;
|
||||
var spoil = escapeHTML(toot.cw);
|
||||
var spoil = escapeHTMLtemp(toot.cw);
|
||||
var spoiler = "cw cw_hide_" + toot.id;
|
||||
var api_spoil = "gray";
|
||||
var spoiler_show = '<a href="#" onclick="cw_show(\'' + toot.id +
|
||||
|
@ -329,18 +358,18 @@ function misskeyParse(obj, mix, acct_id, tlid, popup, mutefilter) {
|
|||
var ct1 = nl2br(toot.text).split('<br />').length -2;
|
||||
var ct2 = nl2br(toot.text).split('<br>').length -2;
|
||||
if(ct1>ct2){ var ct= ct1; }else{ var ct= ct2; }
|
||||
if ((sent < ct && $.mb_strlen($.strip_tags(toot.text)) > 5) || ($.strip_tags(toot.text).length > ltr && $.mb_strlen($.strip_tags(toot.text)) > 5)) {
|
||||
var content = '<span class="gray">'+lang_parse_fulltext[lang]+'</span><br>' + escapeHTML(toot.text)
|
||||
var spoil = '<span class="cw-long-' + toot.id + '">' + $.mb_substr($.strip_tags(
|
||||
if ((sent < ct && $.mb_strlen($.strip_tagstemp(toot.text)) > 5) || ($.strip_tagstemp(toot.text).length > ltr && $.mb_strlen($.strip_tagstemp(toot.text)) > 5)) {
|
||||
var content = '<span class="gray">'+lang_parse_fulltext[lang]+'</span><br>' + escapeHTMLtemp(toot.text)
|
||||
var spoil = '<span class="cw-long-' + toot.id + '">' + $.mb_substr($.strip_tagstemp(
|
||||
toot.text), 0, 100) +
|
||||
'</span><span class="gray">'+lang_parse_autofold[lang]+'</span>';
|
||||
var spoiler = "cw cw_hide_" + toot.id;
|
||||
var spoiler_show = '<a href="#" onclick="cw_show(\'' + toot.id +
|
||||
'\')" class="nex parsed">'+lang_parse_more[lang]+'</a><br>';
|
||||
} else {
|
||||
var content = escapeHTML(toot.text);
|
||||
var content = escapeHTMLtemp(toot.text);
|
||||
if(toot.cw){
|
||||
var spoil = escapeHTML(toot.cw);
|
||||
var spoil = escapeHTMLtemp(toot.cw);
|
||||
}else{
|
||||
var spoil="";
|
||||
}
|
||||
|
@ -350,7 +379,7 @@ function misskeyParse(obj, mix, acct_id, tlid, popup, mutefilter) {
|
|||
}
|
||||
}
|
||||
var analyze = '';
|
||||
var urls = $.strip_tags(content).replace(/\n/g, " ").match(
|
||||
var urls = $.strip_tagstemp(content).replace(/\n/g, " ").match(
|
||||
/https?:\/\/([-a-zA-Z0-9@.]+)\/?(?!.*((media|tags)|mentions)).*([-_.!~*\'()a-zA-Z0-9;\/?:\@&=+\$,%#]+)?/
|
||||
);
|
||||
if (urls) {
|
||||
|
@ -431,7 +460,7 @@ function misskeyParse(obj, mix, acct_id, tlid, popup, mutefilter) {
|
|||
acct_id + ')" id="' + id + '-image-' + key2 + '" data-url="' + url +
|
||||
'" data-type="video" class="img-parsed"><video src="' +
|
||||
purl + '" class="' + sense +
|
||||
' toot-img pointer" style="max-width:100%; height:'+imh+'px;"></a></span>';
|
||||
' toot-img pointer" style="max-width:100%;"></a></span>';
|
||||
}else{
|
||||
viewer = viewer + '<a onclick="imgv(\'' + id + '\',\'' + key2 + '\',' +
|
||||
acct_id + ')" id="' + id + '-image-' + key2 + '" data-url="' + url +
|
||||
|
@ -528,7 +557,7 @@ function misskeyParse(obj, mix, acct_id, tlid, popup, mutefilter) {
|
|||
var word=worde
|
||||
}
|
||||
var regExp = new RegExp( word, "g" ) ;
|
||||
if($.strip_tags(content).match(regExp)){
|
||||
if($.strip_tagstemp(content).match(regExp)){
|
||||
boostback = "hide by_filter";
|
||||
}
|
||||
}
|
||||
|
@ -545,6 +574,23 @@ function misskeyParse(obj, mix, acct_id, tlid, popup, mutefilter) {
|
|||
}
|
||||
});
|
||||
}
|
||||
//Ticker
|
||||
var tickerdom="";
|
||||
if(ticker){
|
||||
var tickerdata=JSON.parse(localStorage.getItem("ticker"));
|
||||
|
||||
var thisdomain=toot.user.username.split("@");
|
||||
if(thisdomain.length>1){
|
||||
thisdomain=thisdomain[1];
|
||||
}
|
||||
for( var i=0; i<tickerdata.length; i++) {
|
||||
var value=tickerdata[i];
|
||||
if(value.domain==thisdomain){
|
||||
var tickerdom='<div style="background:linear-gradient(to left,transparent, '+value.bg+' 96%) !important; color:'+value.text+';width:100%; height:0.9rem; font-size:0.8rem;"><img src="'+value.image+'" style="height:100%;"><span style="position:relative; top:-0.2rem;"> '+value.name+'</span></div>';
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
//Poll
|
||||
var poll="";
|
||||
if(toot.poll){
|
||||
|
@ -660,7 +706,7 @@ function misskeyParse(obj, mix, acct_id, tlid, popup, mutefilter) {
|
|||
'('+lang_parse_clickcopyurl[lang]+')"><i class="fa fa-clock-o"></i>' +
|
||||
date(toot.createdAt, datetype) + '</span>' +
|
||||
'</div></div>' +
|
||||
'<div class="area-toot"><span class="toot ' + spoiler + '">' + content +
|
||||
'<div class="area-toot">'+tickerdom+'<span class="toot ' + spoiler + '">' + content +
|
||||
'</span><span class="' +
|
||||
api_spoil + ' cw_text_' + toot.id + '">' + spoil + spoiler_show +
|
||||
'</span>' +
|
||||
|
@ -712,7 +758,7 @@ function misskeyParse(obj, mix, acct_id, tlid, popup, mutefilter) {
|
|||
+'<div class="' + if_mine + ' action '+disp["red"]+' '+noauth+'"><a onclick="redraft(\'' + toot.id + '\',' +
|
||||
acct_id +
|
||||
')" class="waves-effect waves-dark btn-flat" style="padding:0" title="'+lang_parse_redraft[lang]+'"><i class="material-icons">redo</i></a></div>'+trans+
|
||||
'<span class="cbadge viabadge waves-effect '+viashow+' '+mine_via+'" onclick="client(\''+$.strip_tags(via)+'\')" title="via ' + $.strip_tags(via) + '">via ' +
|
||||
'<span class="cbadge viabadge waves-effect '+viashow+' '+mine_via+'" onclick="client(\''+$.strip_tagstemp(via)+'\')" title="via ' + $.strip_tagstemp(via) + '">via ' +
|
||||
via +
|
||||
'</span>'+
|
||||
'</div><div class="area-side '+mouseover+'"><div class="action ' + if_mine + ' '+noauth+'"><a onclick="toggleAction(\'' + toot.id + '\',\''+tlid+'\',\''+acct_id+'\')" class="waves-effect waves-dark btn-flat" style="padding:0"><i class="text-darken-3 material-icons act-icon">expand_more</i></a></div>' +
|
||||
|
@ -754,7 +800,7 @@ function misskeyUserparse(obj, auth, acct_id, tlid, popup) {
|
|||
}
|
||||
var memory = localStorage.getItem("notice-mem");
|
||||
if (popup >= 0 && obj.length < 5 && notftext != memory) {
|
||||
Materialize.toast(escapeHTML(toot.name)+":"+ftxt, popup * 1000);
|
||||
Materialize.toast(escapeHTMLtemp(toot.name)+":"+ftxt, popup * 1000);
|
||||
$(".notf-icon_" + tlid).addClass("red-text");
|
||||
localStorage.setItem("notice-mem", notftext);
|
||||
notftext = "";
|
||||
|
@ -786,7 +832,7 @@ function misskeyUserparse(obj, auth, acct_id, tlid, popup) {
|
|||
}
|
||||
}
|
||||
if(toot.name){
|
||||
var dis_name=escapeHTML(toot.name);
|
||||
var dis_name=escapeHTMLtemp(toot.name);
|
||||
dis_name=twemoji.parse(dis_name);
|
||||
}else{
|
||||
var dis_name=toot.name;
|
||||
|
|
|
@ -66,7 +66,15 @@ function parse(obj, mix, acct_id, tlid, popup, mutefilter) {
|
|||
}else{
|
||||
wordmute = mutefilter;
|
||||
}
|
||||
|
||||
//Ticker
|
||||
var tickerck = localStorage.getItem("ticker_ok");
|
||||
if(tickerck){
|
||||
var ticker=true;
|
||||
}else{
|
||||
var ticker=false;
|
||||
}
|
||||
//Cards
|
||||
var card = localStorage.getItem("card_" + tlid);
|
||||
|
||||
|
||||
if (!sent) {
|
||||
|
@ -601,6 +609,42 @@ function parse(obj, mix, acct_id, tlid, popup, mutefilter) {
|
|||
}else{
|
||||
var trans="";
|
||||
}
|
||||
//Cards
|
||||
if (!card && toot.card) {
|
||||
var cards=toot.card;
|
||||
if (cards.provider_name=="Twitter"){
|
||||
if(cards.image){
|
||||
var twiImg='<br><img src="'+cards.image+'">';
|
||||
}else{
|
||||
var twiImg='';
|
||||
}
|
||||
analyze='<blockquote class="twitter-tweet"><b>'+escapeHTML(cards.author_name)+'</b><br>'+escapeHTML(cards.description)+twiImg+'</blockquote>';
|
||||
}
|
||||
if (cards.title) {
|
||||
analyze="<span class=\"gray\">URL"+lang_cards_check[lang]+":<br>Title:" + escapeHTML(cards.title) + "<br>" +
|
||||
escapeHTML(cards.description) + "</span>";
|
||||
}
|
||||
if (cards.html) {
|
||||
analyze=cards.html+'<i class="material-icons" onclick="pip('+id+')" title="'+lang_cards_pip[lang]+'">picture_in_picture_alt</i>';
|
||||
}
|
||||
}
|
||||
//Ticker
|
||||
var tickerdom="";
|
||||
if(ticker){
|
||||
var tickerdata=JSON.parse(localStorage.getItem("ticker"));
|
||||
|
||||
var thisdomain=toot.account.acct.split("@");
|
||||
if(thisdomain.length>1){
|
||||
thisdomain=thisdomain[1];
|
||||
}
|
||||
for( var i=0; i<tickerdata.length; i++) {
|
||||
var value=tickerdata[i];
|
||||
if(value.domain==thisdomain){
|
||||
var tickerdom='<div style="background:linear-gradient(to left,transparent, '+value.bg+' 96%) !important; color:'+value.text+';width:100%; height:0.9rem; font-size:0.8rem;"><img src="'+value.image+'" style="height:100%;"><span style="position:relative; top:-0.2rem;"> '+value.name+'</span></div>';
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
templete = templete + '<div id="pub_' + toot.id + '" class="cvo ' +
|
||||
boostback + ' ' + fav_app + ' ' + rt_app + ' ' + pin_app +
|
||||
' ' + hasmedia + '" toot-id="' + id + '" unique-id="' + uniqueid + '" data-medias="'+media_ids+' " unixtime="' + date(obj[
|
||||
|
@ -621,7 +665,7 @@ function parse(obj, mix, acct_id, tlid, popup, mutefilter) {
|
|||
'('+lang_parse_clickcopyurl[lang]+')"><i class="fa fa-clock-o"></i>' +
|
||||
date(toot.created_at, datetype) + '</span>' +
|
||||
'</div></div>' +
|
||||
'<div class="area-toot"><span class="' +
|
||||
'<div class="area-toot">'+tickerdom+'<span class="' +
|
||||
api_spoil + ' cw_text_' + toot.id + '">' + spoil + spoiler_show +
|
||||
'</span><span class="toot ' + spoiler + '">' + content +
|
||||
'</span>' +
|
||||
|
|
|
@ -271,7 +271,7 @@ function reload(type, cc, acct_id, tlid, data, mute, delc, voice, mode) {
|
|||
$("[toot-id=" + JSON.parse(mess.data).payload + "]").remove();
|
||||
}
|
||||
|
||||
} else if (typeA == "update") {
|
||||
} else if (typeA == "update" || typeA == "conversation") {
|
||||
localStorage.removeItem("delete");
|
||||
var obj = JSON.parse(JSON.parse(mess.data).payload);
|
||||
console.log(obj);
|
||||
|
|
|
@ -239,12 +239,10 @@ function addColumn() {
|
|||
var obj = JSON.parse(multi);
|
||||
if(!obj){
|
||||
var leng=0;
|
||||
localStorage.setItem("card_" + leng,"true");
|
||||
var json = JSON.stringify([add]);
|
||||
localStorage.setItem("column", json);
|
||||
}else{
|
||||
var leng=obj.length;
|
||||
localStorage.setItem("card_" + leng,"true");
|
||||
obj.push(add);
|
||||
var json = JSON.stringify(obj);
|
||||
localStorage.setItem("column", json);
|
||||
|
|
|
@ -130,6 +130,13 @@ function settings() {
|
|||
}
|
||||
localStorage.setItem("img-height", heid);
|
||||
|
||||
var tckrd = $("[name=ticker]:checked").val();
|
||||
var tckrt = $("[for=ticker_"+tckrd+"]").text();
|
||||
if (tckrd != localStorage.getItem("ticker_ok")) {
|
||||
Materialize.toast(lang_setting_ticker[lang].replace("{{set}}" ,tckrt), 3000);
|
||||
}
|
||||
localStorage.setItem("ticker_ok", tckrd);
|
||||
|
||||
var boxd = $("[name=box]:checked").val();
|
||||
var boxt = $("[for=bx_"+boxd+"]").text();
|
||||
if (boxd != localStorage.getItem("box")) {
|
||||
|
@ -338,6 +345,12 @@ function load() {
|
|||
}
|
||||
$("#img-height").val(imh);
|
||||
|
||||
var ticker = localStorage.getItem("ticker-ok");
|
||||
if (!ticker) {
|
||||
var ticker = "no";
|
||||
}
|
||||
$("#ticker_" + ticker).prop("checked", true);
|
||||
|
||||
var tag = localStorage.getItem("tag-range");
|
||||
if (!tag) {
|
||||
var tag = "all";
|
||||
|
@ -669,3 +682,19 @@ function savefolder(){
|
|||
localStorage.setItem("savefolder",fileNames[0]);
|
||||
});
|
||||
}
|
||||
|
||||
function font(){
|
||||
var electron = require("electron");
|
||||
var ipc = electron.ipcRenderer;
|
||||
ipc.send('fonts', []);
|
||||
ipc.on('font-list', function (event, arg) {
|
||||
$("#fonts").removeClass("hide");
|
||||
for( var i=0; i<arg.length; i++) {
|
||||
var font=arg[i];
|
||||
$("#fonts").append('<div class="font pointer" style="font-family:'+font.family+'" onclick="insertFont(\''+font.family+'\')">'+font.family+"</div>")
|
||||
}
|
||||
});
|
||||
}
|
||||
function insertFont(name){
|
||||
$("#font").val(name);
|
||||
}
|
40
app/main.js
40
app/main.js
|
@ -8,6 +8,7 @@ var Jimp = require("jimp");
|
|||
const shell = electron.shell;
|
||||
const os = require('os')
|
||||
const path = require('path')
|
||||
const fm = require('font-manager');
|
||||
const Menu=electron.Menu
|
||||
var updatewin=null;
|
||||
// アプリケーションをコントロールするモジュール
|
||||
|
@ -604,5 +605,44 @@ ipc.on('export', (e, args) => {
|
|||
ipc.on('import', (e, arg) => {
|
||||
mainWindow.webContents.send('config', fs.readFileSync(arg, 'utf8'));
|
||||
});
|
||||
//フォント
|
||||
function object_array_sort(data,key,order,fn){
|
||||
//デフォは降順(DESC)
|
||||
var num_a = -1;
|
||||
var num_b = 1;
|
||||
|
||||
if(order === 'asc'){//指定があれば昇順(ASC)
|
||||
num_a = 1;
|
||||
num_b = -1;
|
||||
}
|
||||
|
||||
data = data.sort(function(a, b){
|
||||
var x = a[key];
|
||||
var y = b[key];
|
||||
if (x > y) return num_a;
|
||||
if (x < y) return num_b;
|
||||
return 0;
|
||||
});
|
||||
|
||||
//重複排除
|
||||
var arrObj = {};
|
||||
for (var i = 0; i < data.length; i++) {
|
||||
arrObj[data[i]['family']] = data[i];
|
||||
}
|
||||
|
||||
data = [];
|
||||
for (var key in arrObj) {
|
||||
data.push(arrObj[key]);
|
||||
}
|
||||
|
||||
fn(data); // ソート後の配列を返す
|
||||
}
|
||||
ipc.on('fonts', (e, arg) => {
|
||||
var fonts = fm.getAvailableFontsSync();
|
||||
object_array_sort(fonts, 'family', 'asc', function(fonts_sorted){
|
||||
mainWindow.webContents.send('font-list', fonts_sorted);
|
||||
});
|
||||
});
|
||||
|
||||
|
||||
app.setAsDefaultProtocolClient('thedesk')
|
|
@ -69,7 +69,33 @@ textarea {
|
|||
</style>
|
||||
</head>
|
||||
<body>
|
||||
<script type="text/javascript" src="./js/common/jquery.js"></script>
|
||||
<script>
|
||||
//jQuery読む
|
||||
window.jQuery = window.$ = require('./js/common/jquery.js');
|
||||
var Hammer = require('./js/common/hammer.min.js');
|
||||
$.strip_tags = function(str, allowed) {
|
||||
if(!str){
|
||||
return "";
|
||||
}
|
||||
allowed = (((allowed || '') + '').toLowerCase().match(/<[a-z][a-z0-9]*>/g) || [])
|
||||
.join('');
|
||||
var tags = /<\/?([a-z][a-z0-9]*)\b[^>]*>?/gi,
|
||||
commentsAndPhpTags = /<!--[\s\S]*?-->|<\?(?:php)?[\s\S]*?\?>/gi;
|
||||
return str.replace(commentsAndPhpTags, '').replace(tags, function($0, $1) {
|
||||
return allowed.indexOf('<' + $1.toLowerCase() + '>') > -1 ? $0 : '';
|
||||
});
|
||||
};
|
||||
function escapeHTML(str) {
|
||||
if(!str){
|
||||
return "";
|
||||
}
|
||||
return str.replace(/&/g, '&')
|
||||
.replace(/</g, '<')
|
||||
.replace(/>/g, '>')
|
||||
.replace(/"/g, '"')
|
||||
.replace(/'/g, ''');
|
||||
}
|
||||
</script>
|
||||
<script type="text/javascript" src="./js/platform/first-not-view.js"></script>
|
||||
<select id="post-acct-sel" style="max-width:150px">
|
||||
</select>
|
||||
|
@ -92,6 +118,7 @@ textarea {
|
|||
var lang="ja";
|
||||
}
|
||||
</script>
|
||||
|
||||
<script type="text/javascript" src="./js/lang/lang.js"></script>
|
||||
<script type="text/javascript" src="./js/lang/parse.lang.js"></script>
|
||||
<script src="https://twemoji.maxcdn.com/2/twemoji.min.js?2.7"></script>
|
||||
|
|
150
app/package-lock.json
generated
150
app/package-lock.json
generated
|
@ -1,6 +1,6 @@
|
|||
{
|
||||
"name": "thedesk",
|
||||
"version": "16.1.5",
|
||||
"version": "17.0.0",
|
||||
"lockfileVersion": 1,
|
||||
"requires": true,
|
||||
"dependencies": {
|
||||
|
@ -336,7 +336,7 @@
|
|||
"debug": "2.6.9",
|
||||
"detect-libc": "1.0.3",
|
||||
"fs-extra": "3.0.1",
|
||||
"node-abi": "2.4.4",
|
||||
"node-abi": "2.5.0",
|
||||
"node-gyp": "3.8.0",
|
||||
"ora": "1.4.0",
|
||||
"rimraf": "2.6.2",
|
||||
|
@ -432,6 +432,14 @@
|
|||
}
|
||||
}
|
||||
},
|
||||
"font-manager": {
|
||||
"version": "0.3.0",
|
||||
"resolved": "https://registry.npmjs.org/font-manager/-/font-manager-0.3.0.tgz",
|
||||
"integrity": "sha512-6N3pzO+9kxE3yD9c4VN7reg5fqgFvjcUdxZmwauRzsExaeKRu0APfEi3DOISFakokybgKlZcLFQHawwc2TMpQQ==",
|
||||
"requires": {
|
||||
"nan": "2.11.1"
|
||||
}
|
||||
},
|
||||
"for-each": {
|
||||
"version": "0.3.2",
|
||||
"resolved": "https://registry.npmjs.org/for-each/-/for-each-0.3.2.tgz",
|
||||
|
@ -461,7 +469,7 @@
|
|||
"integrity": "sha1-N5TzeMWLNC6n27sjCVEJxLO2IpE=",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"graceful-fs": "4.1.11",
|
||||
"graceful-fs": "4.1.15",
|
||||
"jsonfile": "3.0.1",
|
||||
"universalify": "0.1.2"
|
||||
}
|
||||
|
@ -478,7 +486,7 @@
|
|||
"integrity": "sha1-XB+x8RdHcRTwYyoOtLcbPLD9MXE=",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"graceful-fs": "4.1.11",
|
||||
"graceful-fs": "4.1.15",
|
||||
"inherits": "2.0.3",
|
||||
"mkdirp": "0.5.1",
|
||||
"rimraf": "2.6.2"
|
||||
|
@ -538,9 +546,9 @@
|
|||
}
|
||||
},
|
||||
"graceful-fs": {
|
||||
"version": "4.1.11",
|
||||
"resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.11.tgz",
|
||||
"integrity": "sha1-Dovf5NHduIVNZOBOp8AOKgJuVlg=",
|
||||
"version": "4.1.15",
|
||||
"resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.15.tgz",
|
||||
"integrity": "sha512-6uHUhOPEBgQ24HM+r6b/QwWfZq+yiFcipKFrOFiBEnWdy5sdzYoi+pJeQaPI5qOLRFqWmAXUPQNsielzdLoecA==",
|
||||
"dev": true
|
||||
},
|
||||
"growly": {
|
||||
|
@ -755,7 +763,7 @@
|
|||
"integrity": "sha1-pezG9l9T9mLEQVx2daAzHQmS7GY=",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"graceful-fs": "4.1.11"
|
||||
"graceful-fs": "4.1.15"
|
||||
}
|
||||
},
|
||||
"jsprim": {
|
||||
|
@ -798,7 +806,7 @@
|
|||
"integrity": "sha1-lWkFcI1YtLq0wiYbBPWfMcmTdMA=",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"graceful-fs": "4.1.11",
|
||||
"graceful-fs": "4.1.15",
|
||||
"parse-json": "2.2.0",
|
||||
"pify": "2.3.0",
|
||||
"pinkie-promise": "2.0.1",
|
||||
|
@ -891,10 +899,15 @@
|
|||
"resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz",
|
||||
"integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g="
|
||||
},
|
||||
"nan": {
|
||||
"version": "2.11.1",
|
||||
"resolved": "https://registry.npmjs.org/nan/-/nan-2.11.1.tgz",
|
||||
"integrity": "sha512-iji6k87OSXa0CcrLl9z+ZiYSuR2o+c0bGuNmXdrhTQTakxytAFsC56SArGYoiHlJlFoHSnvmhpceZJaXkVuOtA=="
|
||||
},
|
||||
"node-abi": {
|
||||
"version": "2.4.4",
|
||||
"resolved": "https://registry.npmjs.org/node-abi/-/node-abi-2.4.4.tgz",
|
||||
"integrity": "sha512-DQ9Mo2mf/XectC+s6+grPPRQ1Z9gI3ZbrGv6nyXRkjwT3HrE0xvtvrfnH7YHYBLgC/KLadg+h3XHnhZw1sv88A==",
|
||||
"version": "2.5.0",
|
||||
"resolved": "https://registry.npmjs.org/node-abi/-/node-abi-2.5.0.tgz",
|
||||
"integrity": "sha512-9g2twBGSP6wIR5PW7tXvAWnEWKJDH/VskdXp168xsw9VVxpEGov8K4jsP4/VeoC7b2ZAyzckvMCuQuQlw44lXg==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"semver": "5.5.1"
|
||||
|
@ -908,7 +921,7 @@
|
|||
"requires": {
|
||||
"fstream": "1.0.11",
|
||||
"glob": "7.1.3",
|
||||
"graceful-fs": "4.1.11",
|
||||
"graceful-fs": "4.1.15",
|
||||
"mkdirp": "0.5.1",
|
||||
"nopt": "3.0.6",
|
||||
"npmlog": "4.1.2",
|
||||
|
@ -920,6 +933,18 @@
|
|||
"which": "1.3.1"
|
||||
},
|
||||
"dependencies": {
|
||||
"ajv": {
|
||||
"version": "6.6.1",
|
||||
"resolved": "https://registry.npmjs.org/ajv/-/ajv-6.6.1.tgz",
|
||||
"integrity": "sha512-ZoJjft5B+EJBjUyu9C9Hc0OZyPZSSlOF+plzouTrg6UlA8f+e/n8NIgBFG/9tppJtpPWfthHakK7juJdNDODww==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"fast-deep-equal": "2.0.1",
|
||||
"fast-json-stable-stringify": "2.0.0",
|
||||
"json-schema-traverse": "0.4.1",
|
||||
"uri-js": "4.2.2"
|
||||
}
|
||||
},
|
||||
"aws4": {
|
||||
"version": "1.8.0",
|
||||
"resolved": "https://registry.npmjs.org/aws4/-/aws4-1.8.0.tgz",
|
||||
|
@ -932,29 +957,41 @@
|
|||
"integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==",
|
||||
"dev": true
|
||||
},
|
||||
"fast-deep-equal": {
|
||||
"version": "2.0.1",
|
||||
"resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-2.0.1.tgz",
|
||||
"integrity": "sha1-ewUhjd+WZ79/Nwv3/bLLFf3Qqkk=",
|
||||
"dev": true
|
||||
},
|
||||
"har-validator": {
|
||||
"version": "5.1.0",
|
||||
"resolved": "https://registry.npmjs.org/har-validator/-/har-validator-5.1.0.tgz",
|
||||
"integrity": "sha512-+qnmNjI4OfH2ipQ9VQOw23bBd/ibtfbVdK2fYbY4acTDqKTW/YDp9McimZdDbG8iV9fZizUqQMD5xvriB146TA==",
|
||||
"version": "5.1.3",
|
||||
"resolved": "https://registry.npmjs.org/har-validator/-/har-validator-5.1.3.tgz",
|
||||
"integrity": "sha512-sNvOCzEQNr/qrvJgc3UG/kD4QtlHycrzwS+6mfTrrSq97BvaYcPZZI1ZSqGSPR73Cxn4LKTD4PttRwfU7jWq5g==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"ajv": "5.5.2",
|
||||
"ajv": "6.6.1",
|
||||
"har-schema": "2.0.0"
|
||||
}
|
||||
},
|
||||
"json-schema-traverse": {
|
||||
"version": "0.4.1",
|
||||
"resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz",
|
||||
"integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==",
|
||||
"dev": true
|
||||
},
|
||||
"mime-db": {
|
||||
"version": "1.36.0",
|
||||
"resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.36.0.tgz",
|
||||
"integrity": "sha512-L+xvyD9MkoYMXb1jAmzI/lWYAxAMCPvIBSWur0PZ5nOf5euahRLVqH//FKW9mWp2lkqUgYiXPgkzfMUFi4zVDw==",
|
||||
"version": "1.37.0",
|
||||
"resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.37.0.tgz",
|
||||
"integrity": "sha512-R3C4db6bgQhlIhPU48fUtdVmKnflq+hRdad7IyKhtFj06VPNVdk2RhiYL3UjQIlso8L+YxAtFkobT0VK+S/ybg==",
|
||||
"dev": true
|
||||
},
|
||||
"mime-types": {
|
||||
"version": "2.1.20",
|
||||
"resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.20.tgz",
|
||||
"integrity": "sha512-HrkrPaP9vGuWbLK1B1FfgAkbqNjIuy4eHlIYnFi7kamZyLLrGlo2mpcx0bBmNpKqBtYtAfGbodDddIgddSJC2A==",
|
||||
"version": "2.1.21",
|
||||
"resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.21.tgz",
|
||||
"integrity": "sha512-3iL6DbwpyLzjR3xHSFNFeb9Nz/M8WDkX33t1GFQnFOllWk8pOrh/LSrB5OXlnlW5P9LH73X6loW/eogc+F5lJg==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"mime-db": "1.36.0"
|
||||
"mime-db": "1.37.0"
|
||||
}
|
||||
},
|
||||
"oauth-sign": {
|
||||
|
@ -982,12 +1019,12 @@
|
|||
"extend": "3.0.2",
|
||||
"forever-agent": "0.6.1",
|
||||
"form-data": "2.3.2",
|
||||
"har-validator": "5.1.0",
|
||||
"har-validator": "5.1.3",
|
||||
"http-signature": "1.2.0",
|
||||
"is-typedarray": "1.0.0",
|
||||
"isstream": "0.1.2",
|
||||
"json-stringify-safe": "5.0.1",
|
||||
"mime-types": "2.1.20",
|
||||
"mime-types": "2.1.21",
|
||||
"oauth-sign": "0.9.0",
|
||||
"performance-now": "2.1.0",
|
||||
"qs": "6.5.2",
|
||||
|
@ -1005,7 +1042,7 @@
|
|||
},
|
||||
"semver": {
|
||||
"version": "5.3.0",
|
||||
"resolved": "https://registry.npmjs.org/semver/-/semver-5.3.0.tgz",
|
||||
"resolved": "http://registry.npmjs.org/semver/-/semver-5.3.0.tgz",
|
||||
"integrity": "sha1-myzl094C0XxgEq0yaqa00M9U+U8=",
|
||||
"dev": true
|
||||
},
|
||||
|
@ -1120,7 +1157,7 @@
|
|||
},
|
||||
"os-homedir": {
|
||||
"version": "1.0.2",
|
||||
"resolved": "https://registry.npmjs.org/os-homedir/-/os-homedir-1.0.2.tgz",
|
||||
"resolved": "http://registry.npmjs.org/os-homedir/-/os-homedir-1.0.2.tgz",
|
||||
"integrity": "sha1-/7xJiDNuDoM94MFox+8VISGqf7M=",
|
||||
"dev": true
|
||||
},
|
||||
|
@ -1135,7 +1172,7 @@
|
|||
},
|
||||
"os-tmpdir": {
|
||||
"version": "1.0.2",
|
||||
"resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz",
|
||||
"resolved": "http://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz",
|
||||
"integrity": "sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ=",
|
||||
"dev": true
|
||||
},
|
||||
|
@ -1193,7 +1230,7 @@
|
|||
},
|
||||
"path-is-absolute": {
|
||||
"version": "1.0.1",
|
||||
"resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz",
|
||||
"resolved": "http://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz",
|
||||
"integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=",
|
||||
"dev": true
|
||||
},
|
||||
|
@ -1203,7 +1240,7 @@
|
|||
"integrity": "sha1-WcRPfuSR2nBNpBXaWkBwuk+P5EE=",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"graceful-fs": "4.1.11",
|
||||
"graceful-fs": "4.1.15",
|
||||
"pify": "2.3.0",
|
||||
"pinkie-promise": "2.0.1"
|
||||
}
|
||||
|
@ -1215,7 +1252,7 @@
|
|||
},
|
||||
"pify": {
|
||||
"version": "2.3.0",
|
||||
"resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz",
|
||||
"resolved": "http://registry.npmjs.org/pify/-/pify-2.3.0.tgz",
|
||||
"integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=",
|
||||
"dev": true
|
||||
},
|
||||
|
@ -1457,19 +1494,19 @@
|
|||
}
|
||||
},
|
||||
"spdx-correct": {
|
||||
"version": "3.0.0",
|
||||
"resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.0.0.tgz",
|
||||
"integrity": "sha512-N19o9z5cEyc8yQQPukRCZ9EUmb4HUpnrmaL/fxS2pBo2jbfcFRVuFZ/oFC+vZz0MNNk0h80iMn5/S6qGZOL5+g==",
|
||||
"version": "3.1.0",
|
||||
"resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.1.0.tgz",
|
||||
"integrity": "sha512-lr2EZCctC2BNR7j7WzJ2FpDznxky1sjfxvvYEyzxNyb6lZXHODmEoJeFu4JupYlkfha1KZpJyoqiJ7pgA1qq8Q==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"spdx-expression-parse": "3.0.0",
|
||||
"spdx-license-ids": "3.0.1"
|
||||
"spdx-license-ids": "3.0.2"
|
||||
}
|
||||
},
|
||||
"spdx-exceptions": {
|
||||
"version": "2.1.0",
|
||||
"resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.1.0.tgz",
|
||||
"integrity": "sha512-4K1NsmrlCU1JJgUrtgEeTVyfx8VaYea9J9LvARxhbHtVtohPs/gFGG5yy49beySjlIMhhXZ4QqujIZEfS4l6Cg==",
|
||||
"version": "2.2.0",
|
||||
"resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.2.0.tgz",
|
||||
"integrity": "sha512-2XQACfElKi9SlVb1CYadKDXvoajPgBVPn/gOQLrTvHdElaVhr7ZEbqJaRnJLVNeaI4cMEAgVCeBMKF6MWRDCRA==",
|
||||
"dev": true
|
||||
},
|
||||
"spdx-expression-parse": {
|
||||
|
@ -1478,14 +1515,14 @@
|
|||
"integrity": "sha512-Yg6D3XpRD4kkOmTpdgbUiEJFKghJH03fiC1OPll5h/0sO6neh2jqRDVHOQ4o/LMea0tgCkbMgea5ip/e+MkWyg==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"spdx-exceptions": "2.1.0",
|
||||
"spdx-license-ids": "3.0.1"
|
||||
"spdx-exceptions": "2.2.0",
|
||||
"spdx-license-ids": "3.0.2"
|
||||
}
|
||||
},
|
||||
"spdx-license-ids": {
|
||||
"version": "3.0.1",
|
||||
"resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.1.tgz",
|
||||
"integrity": "sha512-TfOfPcYGBB5sDuPn3deByxPhmfegAhpDYKSOXZQN81Oyrrif8ZCodOLzK3AesELnCx03kikhyDwh0pfvvQvF8w==",
|
||||
"version": "3.0.2",
|
||||
"resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.2.tgz",
|
||||
"integrity": "sha512-qky9CVt0lVIECkEsYbNILVnPvycuEBkXoMFLRWsREkomQLevYhtRKC+R91a5TOAQ3bCMjikRwhyaRqj1VYatYg==",
|
||||
"dev": true
|
||||
},
|
||||
"sshpk": {
|
||||
|
@ -1529,7 +1566,7 @@
|
|||
},
|
||||
"string_decoder": {
|
||||
"version": "1.1.1",
|
||||
"resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz",
|
||||
"resolved": "http://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz",
|
||||
"integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
|
@ -1543,7 +1580,7 @@
|
|||
},
|
||||
"strip-ansi": {
|
||||
"version": "3.0.1",
|
||||
"resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz",
|
||||
"resolved": "http://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz",
|
||||
"integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
|
@ -1584,7 +1621,7 @@
|
|||
},
|
||||
"tar": {
|
||||
"version": "2.2.1",
|
||||
"resolved": "https://registry.npmjs.org/tar/-/tar-2.2.1.tgz",
|
||||
"resolved": "http://registry.npmjs.org/tar/-/tar-2.2.1.tgz",
|
||||
"integrity": "sha1-jk0qJWwOIYXGsYrWlK7JaLg8sdE=",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
|
@ -1640,6 +1677,23 @@
|
|||
"path-exists": "3.0.0"
|
||||
}
|
||||
},
|
||||
"uri-js": {
|
||||
"version": "4.2.2",
|
||||
"resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.2.2.tgz",
|
||||
"integrity": "sha512-KY9Frmirql91X2Qgjry0Wd4Y+YTdrdZheS8TFwvkbLWf/G5KNJDCh6pKL5OZctEW4+0Baa5idK2ZQuELRwPznQ==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"punycode": "2.1.1"
|
||||
},
|
||||
"dependencies": {
|
||||
"punycode": {
|
||||
"version": "2.1.1",
|
||||
"resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz",
|
||||
"integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==",
|
||||
"dev": true
|
||||
}
|
||||
}
|
||||
},
|
||||
"url-regex": {
|
||||
"version": "3.2.0",
|
||||
"resolved": "https://registry.npmjs.org/url-regex/-/url-regex-3.2.0.tgz",
|
||||
|
@ -1665,7 +1719,7 @@
|
|||
"integrity": "sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"spdx-correct": "3.0.0",
|
||||
"spdx-correct": "3.1.0",
|
||||
"spdx-expression-parse": "3.0.0"
|
||||
}
|
||||
},
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
{
|
||||
"name": "thedesk",
|
||||
"version": "16.1.6",
|
||||
"version": "17.0.0",
|
||||
"description": "TheDesk is a Mastodon client for PC.",
|
||||
"main": "main.js",
|
||||
"scripts": {
|
||||
|
@ -27,6 +27,7 @@
|
|||
"license": "GPL-3.0-or-later",
|
||||
"dependencies": {
|
||||
"electron-dl": "^1.11.0",
|
||||
"font-manager": "^0.3.0",
|
||||
"jimp": "^0.2.28",
|
||||
"node-notifier": "^5.2.1",
|
||||
"sumchecker": "^2.0.2"
|
||||
|
@ -38,7 +39,7 @@
|
|||
"productName": "TheDesk",
|
||||
"appId": "top.thedesk",
|
||||
"directories": {
|
||||
"output": "build"
|
||||
"output": "../build"
|
||||
},
|
||||
"win": {
|
||||
"icon": "thedesk.ico",
|
||||
|
@ -56,9 +57,9 @@
|
|||
"category": "Network"
|
||||
},
|
||||
"electronDownload": {
|
||||
"version": "3.0.0"
|
||||
"version": "3.0.10"
|
||||
},
|
||||
"electronVersion": "3.0.0"
|
||||
"electronVersion": "3.0.10"
|
||||
},
|
||||
"devDependencies": {
|
||||
"electron-rebuild": "^1.8.2"
|
||||
|
|
|
@ -26,7 +26,7 @@
|
|||
<script type="text/javascript" src="../../js/common/modal.js"></script>
|
||||
<script type="text/javascript" src="../../js/ui/jquery-ui.min.js"></script>
|
||||
<script>
|
||||
var ver="Akane (16.1.5)";
|
||||
var ver="Miria (17.0.0)";
|
||||
//betaを入れるとバージョンチェックしない
|
||||
//GitHubに上げるときはindex.htmlをちゃんとする。(index.start.html)
|
||||
//var ver="beta";
|
||||
|
@ -35,7 +35,7 @@ var winstore=false;
|
|||
var acct_id=0;
|
||||
var tlid=0;
|
||||
var lang="en";
|
||||
verck(ver);
|
||||
verck(ver,winstore);
|
||||
</script>
|
||||
<textarea id="copy" style="top:-100px; position:fixed;"></textarea>
|
||||
<div id="tl">
|
||||
|
@ -528,28 +528,16 @@ var lang="en";
|
|||
<a href="https://thedesk.top" target="_blank">HP</a><br>
|
||||
<a href="https://github.com/cutls/TheDesk" target="_blank">GitHub</a><br>
|
||||
<br>
|
||||
<div id="release-Akane_16-1-5" style="display:none">
|
||||
<div id="release-Miria_17-0-0" class="release-do" style="display:none; ">
|
||||
<a href="https://code.cutls.com/thedesk-log/" target="_blank">開発の経緯</a><br>
|
||||
<a href="https://ja.mstdn.wiki/TheDesk" target="_blank">機能一覧</a><br>
|
||||
Entyでは支援者様限定で様々なTheDeskに関する記事をご覧いただけます。<br>
|
||||
困ったときは、<a href="https://docs.thedesk.top">TheDesk Docs</a>をご覧ください。
|
||||
<h5>Release Note Akane (16.1.5)</h5>
|
||||
16.1.5<br>
|
||||
<ul>
|
||||
<li>バグ,脆弱性修正</li>
|
||||
</ul>
|
||||
16.1.4<br>
|
||||
<ul>
|
||||
<li>全てバグ修正(5件ほど)</li>
|
||||
</ul>
|
||||
ご迷惑をおかけしたことをお詫び申し上げます。
|
||||
16.1.3<br>
|
||||
<ul>
|
||||
<li>セカンダリートゥートボタン</li>
|
||||
<li>読み上げや絵文字に関するバグの修正</li>
|
||||
<li>公式ヘルプサイト:<a href="https://docs.thedesk.top">TheDesk Docs</a></li>
|
||||
</ul>
|
||||
いつの間にかリアルタイムユーザー数が100を超えていました。皆様のご愛顧に感謝申し上げます。<br>
|
||||
<h5>Release Note Miria (17.0.0)</h5>
|
||||
セキュリティアップデート、安定性の向上。<br>
|
||||
<b>#InstanceTickerが使用できるように</b><br>
|
||||
<b>フォントが直感的に選べるように</b><br>
|
||||
<b>リンク解析をオンにしても制限がかからないように</b>(これによりデフォルトでオンになります。)<br>
|
||||
</div>
|
||||
<br><br>
|
||||
<h3>Support TheDesk!</h3>
|
||||
|
|
|
@ -877,7 +877,29 @@ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|||
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
||||
SOFTWARE.<br>
|
||||
|
||||
<h5>#InstanceTicker</h5>
|
||||
The MIT License (MIT)<br>
|
||||
<br>
|
||||
ORIGINAL CSS © 小田急don <a href="https://odakyu.app/@ars42525">https://odakyu.app/@ars42525</a><br>
|
||||
#InstanceTicker © weep.me <a href="https://weep.me/@weep">https://weep.me/@weep</a><br>
|
||||
<br>
|
||||
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
of this software and associated documentation files (the "Software"), to deal
|
||||
in the Software without restriction, including without limitation the rights
|
||||
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||
copies of the Software, and to permit persons to whom the Software is
|
||||
furnished to do so, subject to the following conditions:<br>
|
||||
<br>
|
||||
The above copyright notice and this permission notice shall be included in all
|
||||
copies or substantial portions of the Software.<br>
|
||||
<br>
|
||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
||||
SOFTWARE.<br>
|
||||
</article>
|
||||
<a href="setting.html" class="btn waves-effect orange nex" style="width:100%; max-width:200px;"><i class="material-icons left">undo</i>Back</a>
|
||||
<script type="text/javascript" src="../../js/ui/theme.js"></script>
|
||||
|
|
|
@ -59,7 +59,12 @@
|
|||
<button class="btn waves-effect" style="width:100px;" onclick="settings()">Save</button>
|
||||
<br>
|
||||
<h5>Font</h5>
|
||||
Set local font<br>
|
||||
Select your favorite font to 'Select'<br>
|
||||
<button class="btn waves-effect" style="width:100px;" onclick="font()">Select</button><br>
|
||||
<div id="fonts" class="hide" style="overflow-y:scroll; width:300px; height:500px;">
|
||||
|
||||
</div>
|
||||
<br>
|
||||
<input type="text" style="width:150px" id="font">
|
||||
<button class="btn waves-effect" style="width:100px;" onclick="settings()">Save</button>
|
||||
<br>
|
||||
|
@ -162,6 +167,12 @@
|
|||
<input type="text" style="width:50px" id="img-height">px
|
||||
<button class="btn waves-effect" style="width:100px;" onclick="settings()">Save</button>
|
||||
<br>
|
||||
<h5>Enable #InstanceTicker</h5>
|
||||
Show colorful stickers about tooters' instance. <a href="https://cdn.weep.me/mastodon/">About #InstanceTicker</a> Copyright 2018 weepjp, kyori19.<br>
|
||||
<input class="with-gap" onchange="settings()" name="ticker" type="radio" id="ticker_yes" value="yes" />
|
||||
<label for="ticker_yes">Yes</label>
|
||||
<input class="with-gap" onchange="settings()" name="ticker" type="radio" id="ticker_no" value="no" />
|
||||
<label for="ticker_no">No</label>
|
||||
<br>
|
||||
</div>
|
||||
</li>
|
||||
|
|
109
app/view/ja/beta.html
Normal file
109
app/view/ja/beta.html
Normal file
|
@ -0,0 +1,109 @@
|
|||
<!doctype html>
|
||||
<!--Vue.jsでなんかTLづくりやってみようみたいなやつ。そっ閉じ推奨。-->
|
||||
<html lang="ja">
|
||||
<head>
|
||||
<title>Beta - TheDesk</title>
|
||||
<meta content="width=device-width,initial-scale=1.0" name="viewport">
|
||||
<script src="https://cdn.jsdelivr.net/npm/vue/dist/vue.js"></script>
|
||||
<meta charset="utf-8">
|
||||
</head>
|
||||
<a href="index.html">Back</a>
|
||||
<div id="tl">
|
||||
<div :id="pub_id" class="cvo" :class="boostback" v-bind:class="{ 'faved': fav_app, 'rted': rt_app, 'pinned':pin_app,'hasmedia':hasmedia}"
|
||||
:toot-id="id" :unique-id="uniqueid" :data-medias="media_ids" :unixtime="unixtime" :data-notfIndv="if_notf"
|
||||
@mouseover="mov('mv')" @click="mov('cl')" @mouseout="resetmv('mv')">
|
||||
<div class="area-notice"><span class="gray sharesta"><span v-if="notice"><i class="big-text fa" :class="rticon"></i>{{dis_name}}(@{{acct}})<br></span></span></div>
|
||||
<div class="area-icon">
|
||||
<a @click="udg" :user="acct" class="udg"><img :src="avatar" width="40" class="prof-img" :user="acct"></a>
|
||||
<a @click="udg" :user="acct" class="udg" v-if="notice"><img :src="avatar" width="40" class="notf-icon prof-img" :user="acct"></a>
|
||||
</div>
|
||||
|
||||
Yeah
|
||||
</div>
|
||||
</div>
|
||||
<script>
|
||||
var app = new Vue({
|
||||
el: '#tl',
|
||||
data: {
|
||||
tlid:0,
|
||||
pub_id:"pub_123",
|
||||
id: 123,
|
||||
uniqueid:1234,
|
||||
boostback:'a',
|
||||
fav_app:true,
|
||||
rt_app:true,
|
||||
pin_app:false,
|
||||
hasmedia:false,
|
||||
media_ids:'',
|
||||
unixtime:'1238954',
|
||||
if_notf:''
|
||||
},
|
||||
methods: {
|
||||
mov: function (c) {
|
||||
mov(this.id,this.tlid,c)
|
||||
},
|
||||
resetmv: function (c) {
|
||||
resetmv(c)
|
||||
}
|
||||
}
|
||||
})
|
||||
|
||||
</script>
|
||||
<script>
|
||||
function mov(a,b,c){
|
||||
console.log(a+":"+b+":"+c);
|
||||
}
|
||||
function resetmv(a){
|
||||
console.log(a);
|
||||
}
|
||||
</script>
|
||||
<!--@mouseover="mov({{id}},{{tlid}},'mv')" @click="mov({{id}},{{tlid}},'cl')" @mouseout="resetmv('mv')"-->
|
||||
<!--
|
||||
<div id="pub_toot.id" class="cvo boostback fav_app rt_app pin_app hasmedia" toot-id="id" unique-id="uniqueid" data-medias="media_ids " unixtime="date(obj[key].created_at, unix)" if_notf onmouseover="mov(toot.id,tlid,mv)" onclick="mov(toot.id,tlid,cl)" onmouseout="resetmv(mv)">
|
||||
<div class="area-notice"><span class="gray sharesta">noticehome</span></div>
|
||||
<div class="area-icon">
|
||||
<a onclick="udg(toot.account.id,acct_id);" user="toot.account.acct" class="udg"><img src="avatar" width="40" class="prof-img" user="toot.account.acct"></a>noticeavatar
|
||||
</div>
|
||||
<div class="area-display_name">
|
||||
<div class="flex-name"><span class="user">dis_name</span><span class="sml gray" style="overflow: hidden;white-space: nowrap;text-overflow: ellipsis; cursor:text;">@toot.account.acctlocked</span></div>
|
||||
<div class="flex-time"><span class="cbadge cbadge-hover pointer waves-effect" onclick="tootUriCopy(toot.url);" title="date(toot.created_at, absolute)(lang_parse_clickcopyurl[lang])"><i class="fa fa-clock-o"></i>
|
||||
date(toot.created_at, datetype)</span>
|
||||
</div></div>
|
||||
<div class="area-toot"><span class="api_spoil cw_text_toot.id">spoilspoiler_show</span><span class="toot spoiler">content</span>
|
||||
viewer
|
||||
</div><div class="area-additional"><span class="additional">analyze</span>mentionstags</div>
|
||||
<div class="area-vis"></div>
|
||||
<div class="area-actions mouseover">
|
||||
<div class="action">vis</div>
|
||||
<div class="action antinoauth"><a onclick="detEx(toot.url,main)" class="waves-effect waves-dark details" style="padding:0">lang_parse_det[lang]</a></div>
|
||||
<div class="action disp["re"] noauth"><a onclick="re(toot.id,toot.account.acct,acct_id,visen)" class="waves-effect waves-dark btn-flat" style="padding:0" title="lang_parse_replyto[lang]">
|
||||
<i class="fa fa-share"></i><span class="rep_ct">replyct</a></span></a></div>
|
||||
<div class="action can_rt disp["rt"] noauth"><a onclick="rt(toot.id,acct_id,tlid)" class="waves-effect waves-dark btn-flat" style="padding:0" title="lang_parse_bt[lang]"><i class="text-darken-3 fa fa-retweet
|
||||
if_rt rt_toot.id"></i><span class="rt_ct">toot.reblogs_count
|
||||
</span></a></div>
|
||||
<div class="action can_rt disp["qt"] noauth"><a onclick="qt(toot.id,acct_id
|
||||
,toot.account.acct ,toot.url
|
||||
)" class="waves-effect waves-dark btn-flat" style="padding:0" title="lang_parse_quote[lang]"><i class="text-darken-3 fa fa-quote-right"></i></a></div>
|
||||
<div class="action disp["fav"] noauth"><a onclick="fav(toot.id,acct_id
|
||||
,tlid
|
||||
)" class="waves-effect waves-dark btn-flat" style="padding:0" title="lang_parse_fav[lang]"><i class="fa text-darken-3 fa-star
|
||||
if_fav fav_toot.id"></i><span class="fav_ct">toot.favourites_count
|
||||
</a></span></div>
|
||||
<div class="if_mine action disp["del"] noauth"><a onclick="del(toot.id,
|
||||
acct_id
|
||||
)" class="waves-effect waves-dark btn-flat" style="padding:0" title="lang_parse_del[lang]"><i class="fa fa-trash-o"></i></a></div>
|
||||
<div class="if_mine action pin disp["pin"] noauth"><a onclick="pin(toot.id,
|
||||
acct_id
|
||||
)" class="waves-effect waves-dark btn-flat" style="padding:0" title="lang_parse_pin[lang]"><i class="fa fa-map-pin pin_toot.id if_pin"></i></a></div>
|
||||
<div class="if_mine action disp["red"] noauth"><a onclick="redraft(toot.id,
|
||||
acct_id
|
||||
)" class="waves-effect waves-dark btn-flat" style="padding:0" title="lang_parse_redraft[lang]"><i class="material-icons">redo</i></a></div>trans
|
||||
<span class="cbadge viabadge waves-effect viashow mine_via" onclick="client($.strip_tags(via))" title="via $.strip_tags(via)">via
|
||||
via
|
||||
</span>
|
||||
</div><div class="area-side mouseover"><div class="action if_mine noauth"><a onclick="toggleAction(toot.id,tlid,acct_id)" class="waves-effect waves-dark btn-flat" style="padding:0"><i class="text-darken-3 material-icons act-icon">expand_more</i></a></div>
|
||||
<div class="action noauth"><a onclick="details(toot.id,acct_id
|
||||
,tlid)" class="waves-effect waves-dark btn-flat details" style="padding:0"><i class="text-darken-3 material-icons">more_vert</i></a></div>
|
||||
</div></div>
|
||||
</div></div>
|
||||
-->
|
|
@ -26,7 +26,7 @@
|
|||
<script type="text/javascript" src="../../js/common/modal.js"></script>
|
||||
<script type="text/javascript" src="../../js/ui/jquery-ui.min.js"></script>
|
||||
<script>
|
||||
var ver="Akane (16.1.5)";
|
||||
var ver="Miria (17.0.0)";
|
||||
//betaを入れるとバージョンチェックしない
|
||||
//GitHubに上げるときはindex.htmlをちゃんとする。(index.start.html)
|
||||
//var ver="beta";
|
||||
|
@ -35,7 +35,7 @@ var winstore=false;
|
|||
var acct_id=0;
|
||||
var tlid=0;
|
||||
var lang="ja";
|
||||
verck(ver);
|
||||
verck(ver,winstore);
|
||||
</script>
|
||||
<textarea id="copy" style="top:-100px; position:fixed;"></textarea>
|
||||
<div id="tl">
|
||||
|
@ -528,28 +528,16 @@ var lang="ja";
|
|||
<a href="https://thedesk.top" target="_blank">HP</a><br>
|
||||
<a href="https://github.com/cutls/TheDesk" target="_blank">GitHub</a><br>
|
||||
<br>
|
||||
<div id="release-Akane_16-1-5" style="display:none">
|
||||
<div id="release-Miria_17-0-0" class="release-do" style="display:none; ">
|
||||
<a href="https://code.cutls.com/thedesk-log/" target="_blank">開発の経緯</a><br>
|
||||
<a href="https://ja.mstdn.wiki/TheDesk" target="_blank">機能一覧</a><br>
|
||||
Entyでは支援者様限定で様々なTheDeskに関する記事をご覧いただけます。<br>
|
||||
困ったときは、<a href="https://docs.thedesk.top">TheDesk Docs</a>をご覧ください。
|
||||
<h5>Release Note Akane (16.1.5)</h5>
|
||||
16.1.5<br>
|
||||
<ul>
|
||||
<li>バグ,脆弱性修正</li>
|
||||
</ul>
|
||||
16.1.4<br>
|
||||
<ul>
|
||||
<li>全てバグ修正(5件ほど)</li>
|
||||
</ul>
|
||||
ご迷惑をおかけしたことをお詫び申し上げます。
|
||||
16.1.3<br>
|
||||
<ul>
|
||||
<li>セカンダリートゥートボタン</li>
|
||||
<li>読み上げや絵文字に関するバグの修正</li>
|
||||
<li>公式ヘルプサイト:<a href="https://docs.thedesk.top">TheDesk Docs</a></li>
|
||||
</ul>
|
||||
いつの間にかリアルタイムユーザー数が100を超えていました。皆様のご愛顧に感謝申し上げます。<br>
|
||||
<h5>Release Note Miria (17.0.0)</h5>
|
||||
セキュリティアップデート、安定性の向上。<br>
|
||||
<b>#InstanceTickerが使用できるように</b><br>
|
||||
<b>フォントが直感的に選べるように</b><br>
|
||||
<b>リンク解析をオンにしても制限がかからないように</b>(これによりデフォルトでオンになります。)<br>
|
||||
</div>
|
||||
<br><br>
|
||||
<h3>ご支援ください。</h3>
|
||||
|
|
|
@ -876,6 +876,29 @@ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|||
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
||||
SOFTWARE.<br>
|
||||
<h5>#InstanceTicker</h5>
|
||||
The MIT License (MIT)<br>
|
||||
<br>
|
||||
ORIGINAL CSS © 小田急don <a href="https://odakyu.app/@ars42525">https://odakyu.app/@ars42525</a><br>
|
||||
#InstanceTicker © weep.me <a href="https://weep.me/@weep">https://weep.me/@weep</a><br>
|
||||
<br>
|
||||
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
of this software and associated documentation files (the "Software"), to deal
|
||||
in the Software without restriction, including without limitation the rights
|
||||
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||
copies of the Software, and to permit persons to whom the Software is
|
||||
furnished to do so, subject to the following conditions:<br>
|
||||
<br>
|
||||
The above copyright notice and this permission notice shall be included in all
|
||||
copies or substantial portions of the Software.<br>
|
||||
<br>
|
||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
||||
SOFTWARE.<br>
|
||||
</article>
|
||||
<a href="setting.html" class="btn waves-effect orange nex" style="width:100%; max-width:200px;"><i class="material-icons left">undo</i>戻る</a>
|
||||
<script type="text/javascript" src="../../js/ui/theme.js"></script>
|
||||
|
|
|
@ -59,7 +59,12 @@
|
|||
<button class="btn waves-effect" style="width:100px;" onclick="settings()">設定</button>
|
||||
<br>
|
||||
<h5>フォント</h5>
|
||||
ローカルフォントを指定します。<br>
|
||||
「選択」を押してフォントを選んでください。<br>
|
||||
<button class="btn waves-effect" style="width:100px;" onclick="font()">選択</button><br>
|
||||
<div id="fonts" class="hide" style="overflow-y:scroll; width:300px; height:500px;">
|
||||
|
||||
</div>
|
||||
<br>
|
||||
<input type="text" style="width:150px" id="font">
|
||||
<button class="btn waves-effect" style="width:100px;" onclick="settings()">設定</button>
|
||||
<br>
|
||||
|
@ -162,6 +167,12 @@
|
|||
<input type="text" style="width:50px" id="img-height">px
|
||||
<button class="btn waves-effect" style="width:100px;" onclick="settings()">設定</button>
|
||||
<br>
|
||||
<h5>#InstanceTickerを使う</h5>
|
||||
トゥートした人の所属インスタンスをわかりやすく彩ります(自インスタンス以外のトゥート向け)。<a href="https://cdn.weep.me/mastodon/">#InstanceTickerについて</a> Copyright 2018 weepjp, kyori19.<br>
|
||||
<input class="with-gap" onchange="settings()" name="ticker" type="radio" id="ticker_yes" value="yes" />
|
||||
<label for="ticker_yes">はい</label>
|
||||
<input class="with-gap" onchange="settings()" name="ticker" type="radio" id="ticker_no" value="no" />
|
||||
<label for="ticker_no">いいえ</label>
|
||||
<br>
|
||||
</div>
|
||||
</li>
|
||||
|
|
|
@ -26,7 +26,7 @@
|
|||
<script type="text/javascript" src="../../js/common/modal.js"></script>
|
||||
<script type="text/javascript" src="../../js/ui/jquery-ui.min.js"></script>
|
||||
<script>
|
||||
var ver="Akane (16.1.5)";
|
||||
var ver="Miria (17.0.0)";
|
||||
//betaを入れるとバージョンチェックしない
|
||||
//GitHubに上げるときはindex.htmlをちゃんとする。(index.start.html)
|
||||
//var ver="beta";
|
||||
|
@ -35,7 +35,7 @@ var winstore=false;
|
|||
var acct_id=0;
|
||||
var tlid=0;
|
||||
var lang="{{lang}}";
|
||||
verck(ver);
|
||||
verck(ver,winstore);
|
||||
</script>
|
||||
<textarea id="copy" style="top:-100px; position:fixed;"></textarea>
|
||||
<div id="tl">
|
||||
|
@ -528,28 +528,16 @@ var lang="{{lang}}";
|
|||
<a href="https://thedesk.top" target="_blank">HP</a><br>
|
||||
<a href="https://github.com/cutls/TheDesk" target="_blank">GitHub</a><br>
|
||||
<br>
|
||||
<div id="release-Akane_16-1-5" style="display:none">
|
||||
<div id="release-Miria_17-0-0" class="release-do" style="display:none; ">
|
||||
<a href="https://code.cutls.com/thedesk-log/" target="_blank">開発の経緯</a><br>
|
||||
<a href="https://ja.mstdn.wiki/TheDesk" target="_blank">機能一覧</a><br>
|
||||
Entyでは支援者様限定で様々なTheDeskに関する記事をご覧いただけます。<br>
|
||||
困ったときは、<a href="https://docs.thedesk.top">TheDesk Docs</a>をご覧ください。
|
||||
<h5>Release Note Akane (16.1.5)</h5>
|
||||
16.1.5<br>
|
||||
<ul>
|
||||
<li>バグ,脆弱性修正</li>
|
||||
</ul>
|
||||
16.1.4<br>
|
||||
<ul>
|
||||
<li>全てバグ修正(5件ほど)</li>
|
||||
</ul>
|
||||
ご迷惑をおかけしたことをお詫び申し上げます。
|
||||
16.1.3<br>
|
||||
<ul>
|
||||
<li>セカンダリートゥートボタン</li>
|
||||
<li>読み上げや絵文字に関するバグの修正</li>
|
||||
<li>公式ヘルプサイト:<a href="https://docs.thedesk.top">TheDesk Docs</a></li>
|
||||
</ul>
|
||||
いつの間にかリアルタイムユーザー数が100を超えていました。皆様のご愛顧に感謝申し上げます。<br>
|
||||
<h5>Release Note Miria (17.0.0)</h5>
|
||||
セキュリティアップデート、安定性の向上。<br>
|
||||
<b>#InstanceTickerが使用できるように</b><br>
|
||||
<b>フォントが直感的に選べるように</b><br>
|
||||
<b>リンク解析をオンにしても制限がかからないように</b>(これによりデフォルトでオンになります。)<br>
|
||||
</div>
|
||||
<br><br>
|
||||
<h3>{{supportme}}</h3>
|
||||
|
|
|
@ -4,6 +4,7 @@
|
|||
"yes":"Yes",
|
||||
"no":"No",
|
||||
"change":"Change",
|
||||
"select":"Select",
|
||||
"env":"System Preferences",
|
||||
"setlang":"Languages",
|
||||
"backup":"Import and export of preferences",
|
||||
|
@ -20,7 +21,7 @@
|
|||
"minwidthwarn":"Scroll bar will be shown when your window size is more than ammounts of columns.",
|
||||
"above":"above",
|
||||
"font":"Font",
|
||||
"fontwarn":"Set local font",
|
||||
"fontwarn":"Select your favorite font to 'Select'",
|
||||
"fontsize":"Font size",
|
||||
"savefolder":"Folder to save",
|
||||
"savefolderwarn":"TheDesk uses this value when it try to save pictures or take screenshots.",
|
||||
|
@ -62,6 +63,8 @@
|
|||
"letters":"letters",
|
||||
"or":"or",
|
||||
"imgheight":"Height of images",
|
||||
"ticker":"Enable #InstanceTicker",
|
||||
"tickerwarn":"Show colorful stickers about tooters' instance. <a href=\"https://cdn.weep.me/mastodon/\">About #InstanceTicker</a> Copyright 2018 weepjp, kyori19.",
|
||||
"post":"Posting Preferences",
|
||||
"autocw":"Alert before posting a long toot.",
|
||||
"autocwwarn":"Show dialog whether you make too-long text hidden.",
|
||||
|
|
|
@ -4,6 +4,7 @@
|
|||
"yes":"はい",
|
||||
"no":"いいえ",
|
||||
"change":"変更",
|
||||
"select":"選択",
|
||||
"env":"環境設定",
|
||||
"setlang":"言語",
|
||||
"backup":"設定のインポートとエクスポート",
|
||||
|
@ -20,7 +21,7 @@
|
|||
"minwidthwarn":"画面全体の横幅÷コラム数がこの値を超えた時、横スクロールとなります。",
|
||||
"above":"以上",
|
||||
"font":"フォント",
|
||||
"fontwarn":"ローカルフォントを指定します。",
|
||||
"fontwarn":"「選択」を押してフォントを選んでください。",
|
||||
"fontsize":"フォントサイズ",
|
||||
"savefolder":"デフォルトの保存先",
|
||||
"savefolderwarn":"画像ダウンロードやスクリーンショットに影響します。",
|
||||
|
@ -62,6 +63,8 @@
|
|||
"letters":"文字",
|
||||
"or":"または",
|
||||
"imgheight":"画像の高さ",
|
||||
"ticker":"#InstanceTickerを使う",
|
||||
"tickerwarn":"トゥートした人の所属インスタンスをわかりやすく彩ります(自インスタンス以外のトゥート向け)。<a href=\"https://cdn.weep.me/mastodon/\">#InstanceTickerについて</a> Copyright 2018 weepjp, kyori19.",
|
||||
"post":"投稿設定",
|
||||
"autocw":"長文投稿時に警告",
|
||||
"autocwwarn":"下で指定した以上のトゥートを投稿するときにCWするかのダイアログを表示します。",
|
||||
|
|
|
@ -60,6 +60,11 @@
|
|||
<br>
|
||||
<h5>{{font}}</h5>
|
||||
{{fontwarn}}<br>
|
||||
<button class="btn waves-effect" style="width:100px;" onclick="font()">{{select}}</button><br>
|
||||
<div id="fonts" class="hide" style="overflow-y:scroll; width:300px; height:500px;">
|
||||
|
||||
</div>
|
||||
<br>
|
||||
<input type="text" style="width:150px" id="font">
|
||||
<button class="btn waves-effect" style="width:100px;" onclick="settings()">{{set}}</button>
|
||||
<br>
|
||||
|
@ -162,6 +167,12 @@
|
|||
<input type="text" style="width:50px" id="img-height">px
|
||||
<button class="btn waves-effect" style="width:100px;" onclick="settings()">{{set}}</button>
|
||||
<br>
|
||||
<h5>{{ticker}}</h5>
|
||||
{{tickerwarn}}<br>
|
||||
<input class="with-gap" onchange="settings()" name="ticker" type="radio" id="ticker_yes" value="yes" />
|
||||
<label for="ticker_yes">{{yes}}</label>
|
||||
<input class="with-gap" onchange="settings()" name="ticker" type="radio" id="ticker_no" value="no" />
|
||||
<label for="ticker_no">{{no}}</label>
|
||||
<br>
|
||||
</div>
|
||||
</li>
|
||||
|
|
Loading…
Reference in New Issue
Block a user