Compare commits
79 Commits
dependabot
...
dependabot
Author | SHA1 | Date | |
---|---|---|---|
|
68576673a6 | ||
|
ab460d1401 | ||
|
679151e8ea | ||
|
da76c6732d | ||
|
b108f0e09d | ||
|
8d30d5d6dc | ||
|
8b5a9520b2 | ||
|
0f99a1098e | ||
|
a773315bf6 | ||
|
6e247502da | ||
|
3151ed383e | ||
|
607a6a204b | ||
|
0dae100c84 | ||
|
d011c94ea2 | ||
|
cd59a644a5 | ||
|
31ebb2df3f | ||
|
9c49a78318 | ||
|
e3c10550d5 | ||
|
75dd9174a8 | ||
|
d62bc57368 | ||
|
184a2bf3aa | ||
|
49c4c3f23f | ||
|
aa377b78e0 | ||
|
a64813d2d9 | ||
|
ffcbe71ecb | ||
|
f9462ad5ae | ||
|
bb73a7eda7 | ||
|
36ad187296 | ||
|
5621ffbe42 | ||
|
9758a2a7d8 | ||
|
d6fd519086 | ||
|
b9ff0ec817 | ||
|
3601bfc664 | ||
|
73a8a117b0 | ||
|
4af29e0caa | ||
|
8519980638 | ||
|
c7df190d79 | ||
|
9290c146e3 | ||
|
7769113b3c | ||
|
dafc36b01d | ||
|
55a3571edd | ||
|
bdae21bd12 | ||
|
ac26f2ca6b | ||
|
723ff59a21 | ||
|
c3feca504c | ||
|
a294b1143b | ||
|
541826f2fd | ||
|
aa6c2ad186 | ||
|
c51dae6d60 | ||
|
b2a87ae99d | ||
|
5230c6d672 | ||
|
29d0e80f24 | ||
|
4b147593ca | ||
|
b1137d175a | ||
|
bbc90b6d6f | ||
|
9fe9bcd04e | ||
|
79ae11aea8 | ||
|
50582d49f0 | ||
|
897fb3082d | ||
|
947d0b77bd | ||
|
e07e79a918 | ||
|
cdc3b22752 | ||
|
0988728bb2 | ||
|
0ad628b259 | ||
|
44af72f9e6 | ||
|
2d0316035f | ||
|
735c2e153e | ||
|
6f9d6cb35f | ||
|
de796db39a | ||
|
88cb706ff5 | ||
|
6bc19354c9 | ||
|
c70b69d043 | ||
|
f53e0f4550 | ||
|
672de930ce | ||
|
2ba4d2303a | ||
|
8acf86d9cb | ||
|
5de0ede4e1 | ||
|
7feea86cf7 | ||
|
269405a40f |
2
.gitignore
vendored
2
.gitignore
vendored
@@ -26,7 +26,7 @@ app/git
|
||||
*.code-workspace
|
||||
releasenote.md
|
||||
app/yarn-error.log
|
||||
app/js/platform/aiscript.js
|
||||
app/js/platform/native.js
|
||||
app/view/es-ES
|
||||
app/view/fr-FR
|
||||
app/view/no-NO
|
||||
|
8
.prettierrc
Normal file
8
.prettierrc
Normal file
@@ -0,0 +1,8 @@
|
||||
{
|
||||
"tabWidth": 4,
|
||||
"useTabs": true,
|
||||
"semi": false,
|
||||
"singleQuote": true,
|
||||
"printWidth": 200,
|
||||
"jsxBracketSameLine": true
|
||||
}
|
@@ -44,9 +44,7 @@ Please write issues to improve TheDesk affinity with Pleroma.
|
||||
|
||||
## Contributors
|
||||
|
||||
* <img src="https://user-images.githubusercontent.com/17561618/66582029-162df380-ebbc-11e9-8a6f-1832b3a35d89.png" width="20">[toneji](https://minohdon.jp/@toneji) Build for macOS(Now: Travis CI)
|
||||
* <img src="https://avatars3.githubusercontent.com/u/24523508?s=88&v=4" width="20">[popn_ja](https://popon.pptdn.jp/@popn_ja) Build for Linux(Now: Travis CI)
|
||||
* <img src="https://user-images.githubusercontent.com/17561618/66582379-a3714800-ebbc-11e9-8402-d81a35a3be9f.png" width="20">[kPherox](https://pl.kpherox.dev/kPherox) Fellow coder
|
||||
[](https://github.com/cutls/TheDesk/graphs/contributors)
|
||||
|
||||
## Support
|
||||
|
||||
|
263
app/about.html
263
app/about.html
@@ -1,139 +1,134 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="ja">
|
||||
<head>
|
||||
<title>TheDesk</title>
|
||||
<meta content="width=device-width,initial-scale=1.0" name="viewport" />
|
||||
<link href="./node_modules/materialize-css/dist/css/materialize.css" type="text/css" rel="stylesheet" />
|
||||
<link href="./css/font-awesome.css" rel="stylesheet" type="text/css" />
|
||||
<link href="./css/themes.css" type="text/css" rel="stylesheet" />
|
||||
<link href="./css/master.css" type="text/css" rel="stylesheet" />
|
||||
<link href="https://fonts.googleapis.com/icon?family=Material+Icons|Open+Sans:300|Baloo+Bhai" rel="stylesheet" />
|
||||
<meta charset="utf-8" />
|
||||
<style>
|
||||
body {
|
||||
font-family: 'Open Sans';
|
||||
-webkit-app-region: drag;
|
||||
cursor: move;
|
||||
padding: 5px;
|
||||
padding-top: 15px;
|
||||
}
|
||||
|
||||
a,
|
||||
button {
|
||||
-webkit-app-region: no-drag;
|
||||
}
|
||||
<head>
|
||||
<title>TheDesk</title>
|
||||
<meta content="width=device-width,initial-scale=1.0" name="viewport" />
|
||||
<link href="./node_modules/materialize-css/dist/css/materialize.css" type="text/css" rel="stylesheet" />
|
||||
<link href="./css/font-awesome.css" rel="stylesheet" type="text/css" />
|
||||
<link href="./css/themes.css" type="text/css" rel="stylesheet" />
|
||||
<link href="./css/master.css" type="text/css" rel="stylesheet" />
|
||||
<link href="https://fonts.googleapis.com/icon?family=Material+Icons|Open+Sans:300|Baloo+Bhai" rel="stylesheet" />
|
||||
<meta charset="utf-8" />
|
||||
<style>
|
||||
body {
|
||||
font-family: 'Open Sans';
|
||||
-webkit-app-region: drag;
|
||||
cursor: move;
|
||||
padding: 5px;
|
||||
padding-top: 15px;
|
||||
}
|
||||
|
||||
a,
|
||||
button {
|
||||
-webkit-app-region: no-drag;
|
||||
}
|
||||
|
||||
.container {
|
||||
width: 100%;
|
||||
display: grid;
|
||||
grid-template-columns: 1fr 1fr;
|
||||
grid-template-rows: 1fr 1fr 1fr 1fr 1fr;
|
||||
grid-template-areas: 'name1 data1' 'name2 data2' 'name3 data3' 'name4 data4' 'name5 data5' 'name6 data6';
|
||||
text-align: left;
|
||||
margin: 5px;
|
||||
}
|
||||
|
||||
.area-name1 {
|
||||
grid-area: name1;
|
||||
}
|
||||
|
||||
.area-data1 {
|
||||
grid-area: data1;
|
||||
}
|
||||
|
||||
.area-name2 {
|
||||
grid-area: name2;
|
||||
}
|
||||
|
||||
.area-data2 {
|
||||
grid-area: data2;
|
||||
}
|
||||
|
||||
.area-name3 {
|
||||
grid-area: name3;
|
||||
}
|
||||
|
||||
.area-data3 {
|
||||
grid-area: data3;
|
||||
}
|
||||
|
||||
.area-name4 {
|
||||
grid-area: name4;
|
||||
}
|
||||
|
||||
.area-data4 {
|
||||
grid-area: data4;
|
||||
}
|
||||
|
||||
.area-name5 {
|
||||
grid-area: name5;
|
||||
}
|
||||
|
||||
.area-data5 {
|
||||
grid-area: data5;
|
||||
}
|
||||
|
||||
.area-name6 {
|
||||
grid-area: name6;
|
||||
}
|
||||
|
||||
.area-data6 {
|
||||
grid-area: data6;
|
||||
}
|
||||
</style>
|
||||
</head>
|
||||
|
||||
.container {
|
||||
width: 100%;
|
||||
display: grid;
|
||||
grid-template-columns: 1fr 1fr;
|
||||
grid-template-rows: 1fr 1fr 1fr 1fr 1fr;
|
||||
grid-template-areas: 'name1 data1' 'name2 data2' 'name3 data3' 'name4 data4' 'name5 data5' 'name6 data6';
|
||||
text-align: left;
|
||||
margin: 5px;
|
||||
}
|
||||
<body class="center" style="overflow: hidden;">
|
||||
<script type="text/javascript" src="./node_modules/jquery/dist/jquery.js"></script>
|
||||
<script type="text/javascript" src="./js/platform/first-not-view.js"></script>
|
||||
<script type="text/javascript" src="./node_modules/materialize-css/dist/js/materialize.js"></script>
|
||||
<img src="./img/desk.svg" style="max-width: 58%;" />
|
||||
<h5>TheDesk</h5>
|
||||
<div class="container">
|
||||
<div class="area-name1">Display version</div>
|
||||
<div class="area-data1" id="now"></div>
|
||||
<div class="area-name2">Internal version</div>
|
||||
<div class="area-data2" id="ver"></div>
|
||||
<div class="area-name3">Commit(7chars)</div>
|
||||
<div class="area-data3" id="hash"></div>
|
||||
<div class="area-name4">Chromium</div>
|
||||
<div class="area-data4" id="chrome"></div>
|
||||
<div class="area-name5">Electron</div>
|
||||
<div class="area-data5" id="electron"></div>
|
||||
<div class="area-name6">Node.js</div>
|
||||
<div class="area-data6" id="node"></div>
|
||||
</div>
|
||||
<div class="cp">
|
||||
Copyright © TheDesk 2018<br /> Main developer(author): <a href="https://1m.cutls.com/@Cutls" target="_blank">Cutls P</a><br />
|
||||
<a href="https://github.com/cutls/TheDesk/graphs/contributors" style="text-align: center; user-select: none;"><img src="https://opencollective.com/TheDesk/contributors.svg?width=700&button=false" style="width: 100%"></a>
|
||||
<br /><a href="https://thedesk.top" target="_blank">Web site</a>
|
||||
</div>
|
||||
<button onclick="window.close()" class="btn waves-effect indigo" style="width: calc(100% - 10px);"><i class="material-icons left">close</i>Close</button>
|
||||
<script type="text/javascript" src="./js/ui/theme.js"></script>
|
||||
<script>
|
||||
var about = JSON.parse(localStorage.getItem('about'))
|
||||
$('#now').text(localStorage.getItem('ver'))
|
||||
$('#node').text(about[0])
|
||||
$('#chrome').text(about[1])
|
||||
$('#electron').text(about[2])
|
||||
if (location.search) {
|
||||
var m = location.search.match(/\?ver=([a-zA-Z-0-9.]+)/)
|
||||
var ver = m[1]
|
||||
$('#ver').text(ver)
|
||||
}
|
||||
$('#hash').html('<a href="https://github.com/cutls/TheDesk/commits/' + about[3] + '" target="_blank">' + about[3].slice(0, 7) + '</a>')
|
||||
$(document).on('click', 'a', (e) => {
|
||||
var url = $(e.target).attr('href')
|
||||
postMessage(['openUrl', url], '*')
|
||||
return false
|
||||
})
|
||||
</script>
|
||||
</body>
|
||||
|
||||
.area-name1 {
|
||||
grid-area: name1;
|
||||
}
|
||||
|
||||
.area-data1 {
|
||||
grid-area: data1;
|
||||
}
|
||||
|
||||
.area-name2 {
|
||||
grid-area: name2;
|
||||
}
|
||||
|
||||
.area-data2 {
|
||||
grid-area: data2;
|
||||
}
|
||||
|
||||
.area-name3 {
|
||||
grid-area: name3;
|
||||
}
|
||||
|
||||
.area-data3 {
|
||||
grid-area: data3;
|
||||
}
|
||||
|
||||
.area-name4 {
|
||||
grid-area: name4;
|
||||
}
|
||||
|
||||
.area-data4 {
|
||||
grid-area: data4;
|
||||
}
|
||||
|
||||
.area-name5 {
|
||||
grid-area: name5;
|
||||
}
|
||||
|
||||
.area-data5 {
|
||||
grid-area: data5;
|
||||
}
|
||||
|
||||
.area-name6 {
|
||||
grid-area: name6;
|
||||
}
|
||||
|
||||
.area-data6 {
|
||||
grid-area: data6;
|
||||
}
|
||||
</style>
|
||||
</head>
|
||||
|
||||
<body class="center" style="overflow: hidden;">
|
||||
<script type="text/javascript" src="./node_modules/jquery/dist/jquery.js"></script>
|
||||
<script type="text/javascript" src="./js/platform/first-not-view.js"></script>
|
||||
<script type="text/javascript" src="./node_modules/materialize-css/dist/js/materialize.js"></script>
|
||||
<img src="./img/desk.svg" style="max-width: 62%;" />
|
||||
<h5>TheDesk</h5>
|
||||
<div class="container">
|
||||
<div class="area-name1">Display version</div>
|
||||
<div class="area-data1" id="now"></div>
|
||||
<div class="area-name2">Internal version</div>
|
||||
<div class="area-data2" id="ver"></div>
|
||||
<div class="area-name3">Commit(7chars)</div>
|
||||
<div class="area-data3" id="hash"></div>
|
||||
<div class="area-name4">Chromium</div>
|
||||
<div class="area-data4" id="chrome"></div>
|
||||
<div class="area-name5">Electron</div>
|
||||
<div class="area-data5" id="electron"></div>
|
||||
<div class="area-name6">Node.js</div>
|
||||
<div class="area-data6" id="node"></div>
|
||||
</div>
|
||||
<div class="cp">
|
||||
Copyright © TheDesk 2018<br />
|
||||
Main developer(author): <a href="https://cutls.com/@Cutls" target="_blank">Cutls P</a><br />
|
||||
Thanks:<a href="https://minohdon.jp/@toneji" target="_blank">toneji</a>/<a href="https://popon.pptdn.jp/@popn_ja" target="_blank">popn_ja</a>/<a
|
||||
href="https://pl.kpherox.dev/kPherox"
|
||||
target="_blank"
|
||||
>kPherox</a
|
||||
>
|
||||
and all users
|
||||
<img draggable="false" style="width: 0.8rem; top: 1px; margin-left: 1px; position: relative;" alt="❤️" title=":heart:" src="https://twemoji.maxcdn.com/2/72x72/2764.png" />
|
||||
<br /><a href="https://thedesk.top" target="_blank">Web site</a>
|
||||
</div>
|
||||
<button onclick="window.close()" class="btn waves-effect indigo" style="width: calc(100% - 10px);"><i class="material-icons left">close</i>Close</button>
|
||||
<script type="text/javascript" src="./js/ui/theme.js"></script>
|
||||
<script>
|
||||
var about = JSON.parse(localStorage.getItem('about'))
|
||||
$('#now').text(localStorage.getItem('ver'))
|
||||
$('#node').text(about[0])
|
||||
$('#chrome').text(about[1])
|
||||
$('#electron').text(about[2])
|
||||
if (location.search) {
|
||||
var m = location.search.match(/\?ver=([a-zA-Z-0-9.]+)/)
|
||||
var ver = m[1]
|
||||
$('#ver').text(ver)
|
||||
}
|
||||
$('#hash').html('<a href="https://github.com/cutls/TheDesk/commits/' + about[3] + '" target="_blank">' + about[3].slice(0, 7) + '</a>')
|
||||
$(document).on('click', 'a', (e) => {
|
||||
var url = $(e.target).attr('href')
|
||||
postMessage(['openUrl', url], '*')
|
||||
return false
|
||||
})
|
||||
</script>
|
||||
</body>
|
||||
</html>
|
||||
</html>
|
@@ -28,7 +28,9 @@ html {
|
||||
text-transform: none;
|
||||
height: 2.76rem;
|
||||
line-height: 2.76rem;
|
||||
border-radius: 0.5rem;
|
||||
}
|
||||
|
||||
.markdown {
|
||||
display: none;
|
||||
}
|
||||
@@ -88,7 +90,7 @@ option {
|
||||
|
||||
#imagewrap {
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
height: calc(100% - 4px);
|
||||
}
|
||||
#imagewrap img.rotate-90 {
|
||||
transform: rotate(-90deg);
|
||||
@@ -234,6 +236,12 @@ blockquote:before,
|
||||
right: 0;
|
||||
top: 0;
|
||||
}
|
||||
.menu-icon {
|
||||
font-size: 1.4rem !important;
|
||||
top: 0.3rem;
|
||||
line-height: 1rem !important;
|
||||
position: relative;
|
||||
}
|
||||
#start {
|
||||
display: none;
|
||||
position: fixed;
|
||||
@@ -329,8 +337,26 @@ blockquote:before,
|
||||
.collapsible-header:focus {
|
||||
background-color: var(--thirdColor) !important;
|
||||
}
|
||||
.modal-footer {
|
||||
.modal .modal-footer {
|
||||
background-color: var(--modalfooter) !important;
|
||||
border-radius: 0;
|
||||
padding: 0;
|
||||
}
|
||||
.modal {
|
||||
border-radius: 1.5rem;
|
||||
}
|
||||
.progress .determinate,
|
||||
.progress .indeterminate {
|
||||
background-color: var(--active);
|
||||
}
|
||||
.nomargin {
|
||||
margin: 0;
|
||||
}
|
||||
#imginfo {
|
||||
float: left;
|
||||
padding-top: 0.23rem;
|
||||
line-height: normal;
|
||||
padding-left: 1rem;
|
||||
}
|
||||
.font {
|
||||
font-size: 1.5rem;
|
||||
@@ -342,7 +368,8 @@ blockquote:before,
|
||||
.release-do {
|
||||
border: solid 2px;
|
||||
border-color: var(--text);
|
||||
padding: 5px;
|
||||
padding: 1.5rem;
|
||||
border-radius: 0.5rem;
|
||||
}
|
||||
#pickers {
|
||||
display: flex;
|
||||
@@ -392,7 +419,8 @@ input[type='color']::-webkit-color-swatch {
|
||||
color: var(--text);
|
||||
}
|
||||
#left-menu a:hover {
|
||||
background-color: var(--beforehover);
|
||||
background-color: var(--emphasized);
|
||||
filter: brightness(80%);
|
||||
}
|
||||
#left-menu span {
|
||||
margin-left: 0.4rem;
|
||||
@@ -401,7 +429,9 @@ input[type='color']::-webkit-color-swatch {
|
||||
background-color: var(--emphasized);
|
||||
}
|
||||
#left-menu a.active span {
|
||||
text-decoration: underline;
|
||||
text-decoration: none;
|
||||
border-bottom: 1px solid;
|
||||
padding-bottom: 0.5px;
|
||||
}
|
||||
#right-menu {
|
||||
width: 100%;
|
||||
@@ -419,7 +449,7 @@ input[type='color']::-webkit-color-swatch {
|
||||
align-items: center;
|
||||
min-width: 150px;
|
||||
width: 50%;
|
||||
height: 2.5rem;
|
||||
height: 2.5rem;
|
||||
cursor: pointer;
|
||||
color: var(--text);
|
||||
}
|
||||
@@ -430,13 +460,14 @@ input[type='color']::-webkit-color-swatch {
|
||||
}
|
||||
#tltype .type span {
|
||||
width: calc(100% - 4rem);
|
||||
white-space: nowrap;
|
||||
text-overflow: ellipsis;
|
||||
word-break: break-word;
|
||||
overflow: hidden;
|
||||
white-space: nowrap;
|
||||
text-overflow: ellipsis;
|
||||
word-break: break-word;
|
||||
overflow: hidden;
|
||||
}
|
||||
#tltype .type:hover {
|
||||
background-color: var(--beforehover);
|
||||
background-color: var(--emphasized);
|
||||
filter: brightness(80%);
|
||||
}
|
||||
#tltype .active {
|
||||
background-color: var(--emphasized);
|
||||
@@ -720,3 +751,12 @@ button {
|
||||
position: relative;
|
||||
top: -4px;
|
||||
}
|
||||
#fonts {
|
||||
overflow-y: scroll;
|
||||
width: 22rem;
|
||||
height: 40rem;
|
||||
position: absolute;
|
||||
background-color: var(--bg);
|
||||
z-index: 2;
|
||||
padding: 5px;
|
||||
}
|
||||
|
1577
app/css/sweetalert2-material.css
Normal file
1577
app/css/sweetalert2-material.css
Normal file
File diff suppressed because it is too large
Load Diff
8
app/css/sweetalert2-material.min.css
vendored
8
app/css/sweetalert2-material.min.css
vendored
File diff suppressed because one or more lines are too long
@@ -360,7 +360,7 @@ iframe,
|
||||
}
|
||||
.area-actions .btn-flat {
|
||||
height: 1.3rem;
|
||||
line-height: 1.3rem;
|
||||
line-height: 1.3rem;
|
||||
}
|
||||
.area-actions .btn-flat,
|
||||
.area-vis i,
|
||||
@@ -386,11 +386,13 @@ iframe,
|
||||
}
|
||||
.notf-udg-text {
|
||||
white-space: nowrap;
|
||||
text-overflow: ellipsis;
|
||||
word-break: break-word;
|
||||
overflow: hidden;
|
||||
max-width: calc(100% - 150px);
|
||||
display: inline-block;
|
||||
text-overflow: ellipsis;
|
||||
word-break: break-word;
|
||||
overflow: hidden;
|
||||
max-width: calc(100% - 150px);
|
||||
display: inline-block;
|
||||
position: relative;
|
||||
top: 0.2rem;
|
||||
}
|
||||
.cusr {
|
||||
user-select: text;
|
||||
@@ -416,6 +418,12 @@ iframe,
|
||||
margin-top: 0.46rem;
|
||||
margin-left: 0.46rem;
|
||||
}
|
||||
.landing {
|
||||
text-align: center;
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
align-items: center;
|
||||
}
|
||||
|
||||
.quote-inline {
|
||||
display: none;
|
||||
@@ -449,6 +457,12 @@ iframe,
|
||||
.btn-flat {
|
||||
color: var(--text);
|
||||
}
|
||||
.sublink {
|
||||
font-size: 1.4rem !important;
|
||||
position: relative;
|
||||
top: 0.4rem;
|
||||
cursor: pointer;
|
||||
}
|
||||
.area-side i {
|
||||
margin-left: 0.75rem;
|
||||
}
|
||||
@@ -459,6 +473,9 @@ iframe,
|
||||
font-size: 1.2rem;
|
||||
margin-right: 0.15rem;
|
||||
}
|
||||
.action li i {
|
||||
margin-right: 0.5rem;
|
||||
}
|
||||
.action .fa-quote-right {
|
||||
margin-top: 0.15rem;
|
||||
}
|
||||
@@ -710,15 +727,15 @@ p:not(:last-child) {
|
||||
}
|
||||
.notf-indv-box .setting {
|
||||
font-size: 1rem;
|
||||
width: calc(25% - 6px);
|
||||
margin: 3px;
|
||||
height: 100px;
|
||||
text-align: center;
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
padding-top: 17px;
|
||||
border: 1px solid;
|
||||
border-radius: 5px;
|
||||
width: calc(25% - 6px);
|
||||
margin: 3px;
|
||||
height: 100px;
|
||||
text-align: center;
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
padding-top: 17px;
|
||||
border: 1px solid;
|
||||
border-radius: 5px;
|
||||
}
|
||||
.notf-indv-box .setting:hover {
|
||||
color: var(--text);
|
||||
@@ -761,7 +778,7 @@ p:not(:last-child) {
|
||||
position: relative;
|
||||
}
|
||||
.dropdown-content li {
|
||||
padding-top: 0.4rem;
|
||||
padding-top: 0.4rem;
|
||||
}
|
||||
.fa-2x > .emoji-img {
|
||||
width: 2.3rem !important;
|
||||
|
@@ -24,21 +24,20 @@
|
||||
}
|
||||
#his-float-data {
|
||||
height: 100%;
|
||||
overflow-y: hidden;
|
||||
|
||||
overflow-y: hidden;
|
||||
}
|
||||
#his-leftside {
|
||||
width: 28.4rem;
|
||||
max-width: 30vw;
|
||||
width: 28.4rem;
|
||||
max-width: 30vw;
|
||||
}
|
||||
#his-float-timeline {
|
||||
max-width: 47.5rem;
|
||||
min-width: calc(100% - 29.4rem);
|
||||
max-width: 47.5rem;
|
||||
width: calc(100% - 28.4rem);
|
||||
height: 100%;
|
||||
overflow-y: hidden;
|
||||
}
|
||||
#his-basic-prof {
|
||||
display: flex;
|
||||
display: flex;
|
||||
min-height: 10rem;
|
||||
}
|
||||
#his-field {
|
||||
@@ -150,7 +149,7 @@
|
||||
background-color: var(--bg);
|
||||
}
|
||||
#hisdropdown li a {
|
||||
color: white;
|
||||
color: var(--text);
|
||||
}
|
||||
#hisdropdown li:hover {
|
||||
background-color: var(--active);
|
||||
@@ -160,11 +159,14 @@
|
||||
text-align: center;
|
||||
font-size: 1.5rem;
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
}
|
||||
#his-data-title .material-icons {
|
||||
position: relative;
|
||||
top: 7px;
|
||||
margin-right: 3px;
|
||||
top: 5px;
|
||||
margin-right: 3px;
|
||||
}
|
||||
#his-data-title a {
|
||||
color: white;
|
||||
}
|
@@ -5,20 +5,6 @@ function verck(ver, jp) {
|
||||
$('body').addClass(localStorage.getItem('platform'))
|
||||
var date = new Date()
|
||||
var showVer = false
|
||||
//Spotify
|
||||
if (localStorage.getItem('spotify')) {
|
||||
localStorage.removeItem('spotify')
|
||||
localStorage.removeItem('spotify-refresh')
|
||||
var spDc = 'Spotify NowPlaying sysytem was changed, please re-login to Spotify'
|
||||
if(lang.language == 'ja') {
|
||||
spDc = 'Spotify NowPlayingの機能が変更されたため、もう一度ログインしてください'
|
||||
}
|
||||
Swal.fire({
|
||||
type: 'info',
|
||||
title: spDc,
|
||||
})
|
||||
}
|
||||
//Spotify(e)
|
||||
if (localStorage.getItem('ver') != ver && localStorage.getItem('winstore')) {
|
||||
showVer = true
|
||||
console.log('%c Thank you for your update🎉', 'color: red;font-size:200%;')
|
||||
@@ -44,10 +30,7 @@ function verck(ver, jp) {
|
||||
localStorage.setItem('ver', ver)
|
||||
if (!showVer) {
|
||||
console.log(showVer)
|
||||
if (
|
||||
date.getFullYear() * 100 + date.getMonth() + 1 >= localStorage.getItem('showSupportMe') ||
|
||||
!localStorage.getItem('showSupportMe')
|
||||
) {
|
||||
if (!localStorage.getItem('showSupportMe')) {
|
||||
if (date.getMonth() == 11) {
|
||||
var yrs = date.getFullYear() + 1
|
||||
var nextmonth = yrs * 100 + 1
|
||||
@@ -55,21 +38,35 @@ function verck(ver, jp) {
|
||||
var yrs = date.getFullYear()
|
||||
var nextmonth = yrs * 100 + date.getMonth() + 2
|
||||
}
|
||||
if (lang.language != 'ja') {
|
||||
$('#support-btm-ja').addClass('hide')
|
||||
$('#support-btm-en').removeClass('hide')
|
||||
}
|
||||
localStorage.setItem('showSupportMe', nextmonth)
|
||||
$('#support-btm').removeClass('hide')
|
||||
$('#support-btm').animate(
|
||||
{
|
||||
bottom: '0'
|
||||
},
|
||||
{
|
||||
duration: 300
|
||||
} else {
|
||||
if (
|
||||
date.getFullYear() * 100 + date.getMonth() + 1 >= localStorage.getItem('showSupportMe')
|
||||
) {
|
||||
if (date.getMonth() == 11) {
|
||||
var yrs = date.getFullYear() + 1
|
||||
var nextmonth = yrs * 100 + 1
|
||||
} else {
|
||||
var yrs = date.getFullYear()
|
||||
var nextmonth = yrs * 100 + date.getMonth() + 2
|
||||
}
|
||||
)
|
||||
localStorage.setItem('showSupportMe', nextmonth)
|
||||
if (lang.language != 'ja') {
|
||||
$('#support-btm-ja').addClass('hide')
|
||||
$('#support-btm-en').removeClass('hide')
|
||||
}
|
||||
$('#support-btm').removeClass('hide')
|
||||
$('#support-btm').animate(
|
||||
{
|
||||
bottom: '0'
|
||||
},
|
||||
{
|
||||
duration: 300
|
||||
}
|
||||
)
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
var platform = localStorage.getItem('platform')
|
||||
console.log('Your platform:' + platform)
|
||||
@@ -114,11 +111,6 @@ function verck(ver, jp) {
|
||||
.then(function(mess) {
|
||||
console.table(mess)
|
||||
if (mess) {
|
||||
//askjp_jp_ua: 2019年10月24日、mstdn.jpによるユーザーエージェントアクセス制限
|
||||
if (jp && mess.jp_ua && !localStorage.getItem('askjp_jp_ua')) {
|
||||
localStorage.setItem('askjp_jp_ua', true)
|
||||
$('#askjp_jp_ua').removeClass('hide')
|
||||
}
|
||||
var platform = localStorage.getItem('platform')
|
||||
if (platform == 'darwin') {
|
||||
var newest = mess.desk_mac
|
||||
|
@@ -29,7 +29,7 @@ $(document).on('click', 'a', e => {
|
||||
acct_id = 0
|
||||
}
|
||||
$a.parent().addClass('loadp')
|
||||
$a.parent().text('Loading...')
|
||||
|
||||
detEx(url, acct_id)
|
||||
}
|
||||
} else if (tags) {
|
||||
|
@@ -1,312 +1,303 @@
|
||||
window.onload = function () {
|
||||
console.log('loaded')
|
||||
initPostbox()
|
||||
connection()
|
||||
initPlugin(plugins)
|
||||
if (localStorage.getItem('control-center-np')) $('#ccnp').removeClass('hide')
|
||||
window.onload = function() {
|
||||
console.log('loaded')
|
||||
initPostbox()
|
||||
connection()
|
||||
initPlugin(plugins)
|
||||
if (localStorage.getItem('control-center-np')) $('#ccnp').removeClass('hide')
|
||||
}
|
||||
$.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 : ''
|
||||
})
|
||||
$.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, ''')
|
||||
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
|
||||
if (!str) {
|
||||
return ''
|
||||
}
|
||||
str = str.replace(/\r\n/g, '<br />')
|
||||
str = str.replace(/(\n|\r)/g, '<br />')
|
||||
return str
|
||||
}
|
||||
|
||||
function br2nl(str) {
|
||||
if (!str) {
|
||||
return ''
|
||||
}
|
||||
str = str.replace(/<br \/>/g, '\r\n')
|
||||
return str
|
||||
if (!str) {
|
||||
return ''
|
||||
}
|
||||
str = str.replace(/<br \/>/g, '\r\n')
|
||||
return str
|
||||
}
|
||||
|
||||
function formattime(date) {
|
||||
var str = date.getFullYear() + '-'
|
||||
if (date.getMonth() + 1 < 10) {
|
||||
str = str + '0' + (date.getMonth() + 1) + '-'
|
||||
} else {
|
||||
str = str + (date.getMonth() + 1) + '-'
|
||||
}
|
||||
if (date.getDate() < 10) {
|
||||
str = str + '0' + date.getDate()
|
||||
} else {
|
||||
str = str + date.getDate()
|
||||
}
|
||||
str = str + 'T'
|
||||
if (date.getHours() < 10) {
|
||||
str = str + '0' + date.getHours() + ':'
|
||||
} else {
|
||||
str = str + date.getHours() + ':'
|
||||
}
|
||||
if (date.getMinutes() < 10) {
|
||||
str = str + '0' + date.getMinutes()
|
||||
} else {
|
||||
str = str + date.getMinutes()
|
||||
}
|
||||
return escapeHTML(str)
|
||||
var str = date.getFullYear() + '-'
|
||||
if (date.getMonth() + 1 < 10) {
|
||||
str = str + '0' + (date.getMonth() + 1) + '-'
|
||||
} else {
|
||||
str = str + (date.getMonth() + 1) + '-'
|
||||
}
|
||||
if (date.getDate() < 10) {
|
||||
str = str + '0' + date.getDate()
|
||||
} else {
|
||||
str = str + date.getDate()
|
||||
}
|
||||
str = str + 'T'
|
||||
if (date.getHours() < 10) {
|
||||
str = str + '0' + date.getHours() + ':'
|
||||
} else {
|
||||
str = str + date.getHours() + ':'
|
||||
}
|
||||
if (date.getMinutes() < 10) {
|
||||
str = str + '0' + date.getMinutes()
|
||||
} else {
|
||||
str = str + date.getMinutes()
|
||||
}
|
||||
return escapeHTML(str)
|
||||
}
|
||||
|
||||
function formattimeutc(date) {
|
||||
var str = date.getUTCFullYear() + '-'
|
||||
if (date.getUTCMonth() + 1 < 10) {
|
||||
str = str + '0' + (date.getUTCMonth() + 1) + '-'
|
||||
} else {
|
||||
str = str + (date.getUTCMonth() + 1) + '-'
|
||||
}
|
||||
if (date.getUTCDate() < 10) {
|
||||
str = str + '0' + date.getUTCDate()
|
||||
} else {
|
||||
str = str + date.getUTCDate()
|
||||
}
|
||||
str = str + 'T'
|
||||
if (date.getUTCHours() < 10) {
|
||||
str = str + '0' + date.getUTCHours() + ':'
|
||||
} else {
|
||||
str = str + date.getUTCHours() + ':'
|
||||
}
|
||||
if (date.getUTCMinutes() < 10) {
|
||||
str = str + '0' + date.getUTCMinutes()
|
||||
} else {
|
||||
str = str + date.getUTCMinutes()
|
||||
}
|
||||
return escapeHTML(str)
|
||||
var str = date.getUTCFullYear() + '-'
|
||||
if (date.getUTCMonth() + 1 < 10) {
|
||||
str = str + '0' + (date.getUTCMonth() + 1) + '-'
|
||||
} else {
|
||||
str = str + (date.getUTCMonth() + 1) + '-'
|
||||
}
|
||||
if (date.getUTCDate() < 10) {
|
||||
str = str + '0' + date.getUTCDate()
|
||||
} else {
|
||||
str = str + date.getUTCDate()
|
||||
}
|
||||
str = str + 'T'
|
||||
if (date.getUTCHours() < 10) {
|
||||
str = str + '0' + date.getUTCHours() + ':'
|
||||
} else {
|
||||
str = str + date.getUTCHours() + ':'
|
||||
}
|
||||
if (date.getUTCMinutes() < 10) {
|
||||
str = str + '0' + date.getUTCMinutes()
|
||||
} else {
|
||||
str = str + date.getUTCMinutes()
|
||||
}
|
||||
return escapeHTML(str)
|
||||
}
|
||||
postMessage(['sendSinmpleIpc', 'custom-css-request'], '*')
|
||||
|
||||
function makeCID() {
|
||||
let chars = "xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".split("")
|
||||
for (let i = 0, len = chars.length; i < len; i++) {
|
||||
switch (chars[i]) {
|
||||
case "x":
|
||||
chars[i] = Math.floor(Math.random() * 16).toString(16)
|
||||
break
|
||||
case "y":
|
||||
chars[i] = (Math.floor(Math.random() * 4) + 8).toString(16)
|
||||
break
|
||||
}
|
||||
}
|
||||
return chars.join("")
|
||||
}
|
||||
function randomStr(l) {
|
||||
// 生成する文字列に含める文字セット
|
||||
var c = 'abcdefghijklmnopqrstuvwxyz0123456789'
|
||||
var cl = c.length
|
||||
var r = ''
|
||||
for (var i = 0; i < l; i++) {
|
||||
r += c[Math.floor(Math.random() * cl)]
|
||||
}
|
||||
return r
|
||||
return uuid()
|
||||
}
|
||||
|
||||
function rgbToHex(color) {
|
||||
// HEXに変換したものを代入する変数
|
||||
var hex = ''
|
||||
// HEXに変換したものを代入する変数
|
||||
var hex = ''
|
||||
|
||||
// 第1引数がHEXのとき変換処理は必要ないのでそのままreturn
|
||||
// IE8の場合はjQueryのcss()関数でHEXを返すので除外
|
||||
if (color.match(/^#[a-f\d]{3}$|^#[a-f\d]{6}$/i)) {
|
||||
return color
|
||||
}
|
||||
// 第1引数がHEXのとき変換処理は必要ないのでそのままreturn
|
||||
// IE8の場合はjQueryのcss()関数でHEXを返すので除外
|
||||
if (color.match(/^#[a-f\d]{3}$|^#[a-f\d]{6}$/i)) {
|
||||
return color
|
||||
}
|
||||
|
||||
// 正規表現
|
||||
var regex = color.match(/^rgb\(([0-9.]+),\s*([0-9.]+),\s*([0-9.]+)\)$/)
|
||||
// 正規表現
|
||||
var regex = color.match(/^rgb\(([0-9.]+),\s*([0-9.]+),\s*([0-9.]+)\)$/)
|
||||
|
||||
// 正規表現でマッチしたとき
|
||||
if (regex) {
|
||||
var rgb = [
|
||||
// RGBからHEXへ変換
|
||||
parseInt(regex[1]).toString(16),
|
||||
parseInt(regex[2]).toString(16),
|
||||
parseInt(regex[3]).toString(16)
|
||||
]
|
||||
// 正規表現でマッチしたとき
|
||||
if (regex) {
|
||||
var rgb = [
|
||||
// RGBからHEXへ変換
|
||||
parseInt(regex[1]).toString(16),
|
||||
parseInt(regex[2]).toString(16),
|
||||
parseInt(regex[3]).toString(16)
|
||||
]
|
||||
|
||||
for (var i = 0; i < rgb.length; ++i) {
|
||||
// rgb(1,1,1)のようなときHEXに変換すると1桁になる
|
||||
// 1桁のときは前に0を足す
|
||||
if (rgb[i].length == 1) {
|
||||
rgb[i] = '0' + rgb[i]
|
||||
}
|
||||
hex += rgb[i]
|
||||
}
|
||||
for (var i = 0; i < rgb.length; ++i) {
|
||||
// rgb(1,1,1)のようなときHEXに変換すると1桁になる
|
||||
// 1桁のときは前に0を足す
|
||||
if (rgb[i].length == 1) {
|
||||
rgb[i] = '0' + rgb[i]
|
||||
}
|
||||
hex += rgb[i]
|
||||
}
|
||||
|
||||
return hex
|
||||
}
|
||||
return hex
|
||||
}
|
||||
|
||||
console.error(color + ':第1引数はRGB形式で入力')
|
||||
console.error(color + ':第1引数はRGB形式で入力')
|
||||
}
|
||||
/*マルチバイト用切り出し*/
|
||||
$.isSurrogatePear = function (upper, lower) {
|
||||
return 0xd800 <= upper && upper <= 0xdbff && 0xdc00 <= lower && lower <= 0xdfff
|
||||
$.isSurrogatePear = function(upper, lower) {
|
||||
return 0xd800 <= upper && upper <= 0xdbff && 0xdc00 <= lower && lower <= 0xdfff
|
||||
}
|
||||
$.mb_strlen = function (str) {
|
||||
var splitter = new GraphemeSplitter()
|
||||
var arr = splitter.splitGraphemes(str)
|
||||
return arr.length
|
||||
$.mb_strlen = function(str) {
|
||||
var splitter = new GraphemeSplitter()
|
||||
var arr = splitter.splitGraphemes(str)
|
||||
return arr.length
|
||||
}
|
||||
$.mb_substr = function (str, begin, end) {
|
||||
//配列にする
|
||||
var splitter = new GraphemeSplitter()
|
||||
var arr = splitter.splitGraphemes(str)
|
||||
var newarr = []
|
||||
for (var i = 0; i < arr.length; i++) {
|
||||
if (i >= begin && i <= end) {
|
||||
newarr.push(arr[i])
|
||||
}
|
||||
}
|
||||
return newarr.join('')
|
||||
}
|
||||
//ソートするやつ
|
||||
$.mb_substr = function(str, begin, end) {
|
||||
//配列にする
|
||||
var splitter = new GraphemeSplitter()
|
||||
var arr = splitter.splitGraphemes(str)
|
||||
var newarr = []
|
||||
for (var i = 0; i < arr.length; i++) {
|
||||
if (i >= begin && i <= end) {
|
||||
newarr.push(arr[i])
|
||||
}
|
||||
}
|
||||
return newarr.join('')
|
||||
}
|
||||
//ソートするやつ
|
||||
function object_array_sort(data, key, order, fn) {
|
||||
var num_a = -1
|
||||
var num_b = 1
|
||||
if (order === '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)
|
||||
var num_a = -1
|
||||
var num_b = 1
|
||||
if (order === '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)
|
||||
}
|
||||
|
||||
function setLog(txt1, txt2, txt3) {
|
||||
//url,statuscode,responsetext
|
||||
var text = new Date().toUTCString()
|
||||
text = text + ',' + txt1 + ',' + txt2 + ',' + escapeCsv(txt3)
|
||||
console.error(text)
|
||||
postMessage(['log', text], '*')
|
||||
//url,statuscode,responsetext
|
||||
var text = new Date().toUTCString()
|
||||
text = text + ',' + txt1 + ',' + txt2 + ',' + escapeCsv(txt3)
|
||||
console.error(text)
|
||||
postMessage(['log', text], '*')
|
||||
}
|
||||
|
||||
function escapeCsv(str) {
|
||||
if (!str) {
|
||||
return str
|
||||
}
|
||||
var result
|
||||
result = str.toString().replace(/\"/g, '""')
|
||||
if (result.indexOf(',') >= 0) {
|
||||
result = '"' + result + '"'
|
||||
}
|
||||
return result
|
||||
if (!str) {
|
||||
return str
|
||||
}
|
||||
var result
|
||||
result = str.toString().replace(/\"/g, '""')
|
||||
if (result.indexOf(',') >= 0) {
|
||||
result = '"' + result + '"'
|
||||
}
|
||||
return result
|
||||
}
|
||||
|
||||
function evalAttr(json, attr, lenCk) {
|
||||
if (json[attr]) {
|
||||
if (lenCk) {
|
||||
if (json[attr][0]) {
|
||||
return true
|
||||
} else {
|
||||
return false
|
||||
}
|
||||
} else {
|
||||
return true
|
||||
}
|
||||
} else {
|
||||
return false
|
||||
}
|
||||
if (json[attr]) {
|
||||
if (lenCk) {
|
||||
if (json[attr][0]) {
|
||||
return true
|
||||
} else {
|
||||
return false
|
||||
}
|
||||
} else {
|
||||
return true
|
||||
}
|
||||
} else {
|
||||
return false
|
||||
}
|
||||
}
|
||||
|
||||
function statusModel(now) {
|
||||
if (!now) {
|
||||
var now = new Date().toString()
|
||||
}
|
||||
return {
|
||||
id: '',
|
||||
created_at: now,
|
||||
in_reply_to_id: null,
|
||||
in_reply_to_account_id: null,
|
||||
sensitive: false,
|
||||
spoiler_text: '',
|
||||
visibility: 'public',
|
||||
language: 'en',
|
||||
uri: '',
|
||||
url: '',
|
||||
replies_count: 0,
|
||||
reblogs_count: 0,
|
||||
favourites_count: 0,
|
||||
favourited: false,
|
||||
reblogged: false,
|
||||
muted: false,
|
||||
bookmarked: false,
|
||||
pinned: false,
|
||||
content: '<p><i>No status here</i></p>',
|
||||
reblog: null,
|
||||
application: {
|
||||
name: null,
|
||||
website: null
|
||||
},
|
||||
account: {
|
||||
id: '',
|
||||
username: '',
|
||||
acct: '',
|
||||
display_name: '',
|
||||
locked: false,
|
||||
bot: false,
|
||||
created_at: now,
|
||||
note: '',
|
||||
url: '',
|
||||
avatar: '',
|
||||
avatar_static: '',
|
||||
header: '',
|
||||
header_static: '',
|
||||
followers_count: 0,
|
||||
following_count: 0,
|
||||
statuses_count: 0,
|
||||
last_status_at: now,
|
||||
emojis: [],
|
||||
fields: []
|
||||
},
|
||||
media_attachments: [],
|
||||
mentions: [],
|
||||
tags: [],
|
||||
card: null,
|
||||
poll: null
|
||||
}
|
||||
if (!now) {
|
||||
var now = new Date().toString()
|
||||
}
|
||||
return {
|
||||
id: '',
|
||||
created_at: now,
|
||||
in_reply_to_id: null,
|
||||
in_reply_to_account_id: null,
|
||||
sensitive: false,
|
||||
spoiler_text: '',
|
||||
visibility: 'public',
|
||||
language: 'en',
|
||||
uri: '',
|
||||
url: '',
|
||||
replies_count: 0,
|
||||
reblogs_count: 0,
|
||||
favourites_count: 0,
|
||||
favourited: false,
|
||||
reblogged: false,
|
||||
muted: false,
|
||||
bookmarked: false,
|
||||
pinned: false,
|
||||
content: '<p><i>No status here</i></p>',
|
||||
reblog: null,
|
||||
application: {
|
||||
name: null,
|
||||
website: null
|
||||
},
|
||||
account: {
|
||||
id: '',
|
||||
username: '',
|
||||
acct: '',
|
||||
display_name: '',
|
||||
locked: false,
|
||||
bot: false,
|
||||
created_at: now,
|
||||
note: '',
|
||||
url: '',
|
||||
avatar: '',
|
||||
avatar_static: '',
|
||||
header: '',
|
||||
header_static: '',
|
||||
followers_count: 0,
|
||||
following_count: 0,
|
||||
statuses_count: 0,
|
||||
last_status_at: now,
|
||||
emojis: [],
|
||||
fields: []
|
||||
},
|
||||
media_attachments: [],
|
||||
mentions: [],
|
||||
tags: [],
|
||||
card: null,
|
||||
poll: null
|
||||
}
|
||||
}
|
||||
|
||||
function webviewFinder() {
|
||||
const webview = document.querySelector('webview')
|
||||
webview.addEventListener('did-navigate', (e) => {
|
||||
const url = webview.getURL()
|
||||
if (url.match('https://mobile.twitter.com/login')) {
|
||||
postMessage(['twitterLogin', null], '*')
|
||||
} else if (url.match('https://mobile.twitter.com/logout')) {
|
||||
postMessage(['twitterLogin', true], '*')
|
||||
}
|
||||
})
|
||||
const webview = document.querySelector('webview')
|
||||
webview.addEventListener('did-navigate', (e) => {
|
||||
const url = webview.getURL()
|
||||
if (url.match('https://mobile.twitter.com/login')) {
|
||||
postMessage(['twitterLogin', null], '*')
|
||||
} else if (url.match('https://mobile.twitter.com/logout')) {
|
||||
postMessage(['twitterLogin', true], '*')
|
||||
}
|
||||
})
|
||||
}
|
||||
|
||||
function initWebviewEvent() {
|
||||
if (document.querySelector('webview')) { webviewFinder() } else {
|
||||
const timerWV = setInterval(function () {
|
||||
document.querySelector('webview')
|
||||
? (webviewFinder(), clearInterval(timerWV))
|
||||
: console.log('まだロード中')
|
||||
}, 500)
|
||||
}
|
||||
if (document.querySelector('webview')) { webviewFinder() } else {
|
||||
const timerWV = setInterval(function() {
|
||||
document.querySelector('webview') ?
|
||||
(webviewFinder(), clearInterval(timerWV)) :
|
||||
console.log('まだロード中')
|
||||
}, 500)
|
||||
}
|
||||
}
|
@@ -19,7 +19,7 @@ function emojiToggle(reaction) {
|
||||
if (width) {
|
||||
width = width.replace('px', '') * 1 + 300
|
||||
} else {
|
||||
width = 600
|
||||
width = reaction ? 300 : 600
|
||||
}
|
||||
$('#post-box').css('width', width + 'px')
|
||||
$('#suggest').html('')
|
||||
|
File diff suppressed because it is too large
Load Diff
@@ -637,42 +637,48 @@ function brws() {
|
||||
postMessage(['openUrl', url], '*')
|
||||
}
|
||||
//外部からトゥート開く
|
||||
function detEx(url, acct_id) {
|
||||
async function detEx(url, acct_id) {
|
||||
if (acct_id == 'main') {
|
||||
acct_id = localStorage.getItem('main')
|
||||
}
|
||||
var domain = localStorage.getItem('domain_' + acct_id)
|
||||
var at = localStorage.getItem('acct_' + acct_id + '_at')
|
||||
var start = 'https://' + domain + '/api/v2/search?resolve=true&q=' + encodeURIComponent(url)
|
||||
fetch(start, {
|
||||
Swal.fire({
|
||||
title: 'Loading...',
|
||||
html: lang.lang_details_fetch,
|
||||
showConfirmButton: false,
|
||||
showCloseButton: true,
|
||||
onBeforeOpen: () => {
|
||||
Swal.showLoading()
|
||||
},
|
||||
onClose: () => { },
|
||||
}).then((result) => { })
|
||||
const json = await detExCore(url, acct_id)
|
||||
Swal.close()
|
||||
if (!json.statuses) {
|
||||
postMessage(['openUrl', url], '*')
|
||||
} else {
|
||||
var id = json.statuses[0].id
|
||||
$('.loadp').text($('.loadp').attr('href'))
|
||||
$('.loadp').removeClass('loadp')
|
||||
details(id, acct_id, 0)
|
||||
}
|
||||
return
|
||||
}
|
||||
async function detExCore(url, acct_id) {
|
||||
const domain = localStorage.getItem('domain_' + acct_id)
|
||||
const start = 'https://' + domain + '/api/v2/search?resolve=true&q=' + encodeURIComponent(url)
|
||||
const at = localStorage.getItem('acct_' + acct_id + '_at')
|
||||
let promise = await fetch(start, {
|
||||
method: 'GET',
|
||||
headers: {
|
||||
'content-type': 'application/json',
|
||||
Authorization: 'Bearer ' + at
|
||||
}
|
||||
})
|
||||
.then(function(response) {
|
||||
if (!response.ok) {
|
||||
response.text().then(function(text) {
|
||||
setLog(response.url, response.status, text)
|
||||
})
|
||||
}
|
||||
return response.json()
|
||||
})
|
||||
.catch(function(error) {
|
||||
todo(error)
|
||||
setLog(start, 'JSON', error)
|
||||
console.error(error)
|
||||
})
|
||||
.then(function(json) {
|
||||
if (!json.statuses) {
|
||||
postMessage(['openUrl', url], '*')
|
||||
} else {
|
||||
var id = json.statuses[0].id
|
||||
$('.loadp').text($('.loadp').attr('href'))
|
||||
$('.loadp').removeClass('loadp')
|
||||
details(id, acct_id, 0)
|
||||
}
|
||||
})
|
||||
return
|
||||
|
||||
const json = await promise.json()
|
||||
if (json) {
|
||||
return json
|
||||
} else {
|
||||
return false
|
||||
}
|
||||
}
|
||||
|
@@ -1,76 +1,96 @@
|
||||
//ディレクトリ
|
||||
//ディレクトリトグル
|
||||
function dirMenu() {
|
||||
$("#dir-contents").html("")
|
||||
directory()
|
||||
$("#left-menu a").removeClass("active")
|
||||
$("#dirMenu").addClass("active")
|
||||
$(".menu-content").addClass("hide")
|
||||
$("#dir-box").removeClass("hide")
|
||||
$('#dir-contents').html('')
|
||||
directory('directory')
|
||||
$('#left-menu a').removeClass('active')
|
||||
$('#dirMenu').addClass('active')
|
||||
$('.menu-content').addClass('hide')
|
||||
$('#dir-box').removeClass('hide')
|
||||
}
|
||||
|
||||
function dirselCk() {
|
||||
var acct = $("#dir-acct-sel").val()
|
||||
if (acct == "noauth") {
|
||||
$("#dirNoAuth").removeClass("hide")
|
||||
} else {
|
||||
$("#dirNoAuth").addClass("hide")
|
||||
directory()
|
||||
}
|
||||
var acct = $('#dir-acct-sel').val()
|
||||
if (acct == 'noauth') {
|
||||
$('#dirNoAuth').removeClass('hide')
|
||||
} else {
|
||||
$('#dirNoAuth').addClass('hide')
|
||||
directory('check')
|
||||
}
|
||||
}
|
||||
function directory(isMore) {
|
||||
var order = $("[name=sort]:checked").val()
|
||||
if (!order) {
|
||||
order = "active"
|
||||
}
|
||||
var local_only = $("#local_only:checked").val()
|
||||
if (local_only) {
|
||||
local_only = "true"
|
||||
} else {
|
||||
local_only = "false"
|
||||
}
|
||||
var acct_id = $("#dir-acct-sel").val()
|
||||
if (acct_id == "noauth") {
|
||||
var domain = $("#dirNoAuth-url").val()
|
||||
var at = ""
|
||||
} else {
|
||||
var domain = localStorage.getItem("domain_" + acct_id)
|
||||
var at = localStorage.getItem("acct_" + acct_id + "_at")
|
||||
}
|
||||
if (isMore) {
|
||||
var addOffset = $("#dir-contents .cvo").length
|
||||
} else {
|
||||
var addOffset = 0
|
||||
$("#dir-contents").html("")
|
||||
}
|
||||
var start = "https://" + domain + "/api/v1/directory?order=" + order + "&local=" + local_only + "&offset=" + addOffset
|
||||
console.log(start)
|
||||
fetch(start, {
|
||||
method: "GET",
|
||||
headers: {
|
||||
"content-type": "application/json",
|
||||
Authorization: "Bearer " + at
|
||||
}
|
||||
})
|
||||
.then(function(response) {
|
||||
if (!response.ok) {
|
||||
response.text().then(function(text) {
|
||||
setLog(response.url, response.status, text)
|
||||
})
|
||||
}
|
||||
return response.json()
|
||||
})
|
||||
.catch(function(error) {
|
||||
setLog(start, "JSON", error)
|
||||
console.error(error)
|
||||
})
|
||||
.then(function(json) {
|
||||
if (json) {
|
||||
$("#moreDir").removeClass("disabled")
|
||||
var html = userparse(json, null, acct_id, "dir", null)
|
||||
$("#dir-contents").append(html)
|
||||
jQuery("time.timeago").timeago()
|
||||
} else {
|
||||
$("#moreDir").addClass("disabled")
|
||||
}
|
||||
})
|
||||
|
||||
function dirChange(mode) {
|
||||
if (mode === 'directory') $('#directoryConfig').removeClass('hide')
|
||||
if (mode === 'suggest') $('#directoryConfig').addClass('hide')
|
||||
directory(mode)
|
||||
}
|
||||
|
||||
function directory(modeRaw, isMore) {
|
||||
const mode = modeRaw === 'check' ? $('[name=dirsug]:checked').val() : modeRaw
|
||||
var order = $('[name=sort]:checked').val()
|
||||
if (!order) {
|
||||
order = 'active'
|
||||
}
|
||||
var local_only = $('#local_only:checked').val()
|
||||
if (local_only) {
|
||||
local_only = 'true'
|
||||
} else {
|
||||
local_only = 'false'
|
||||
}
|
||||
var acct_id = $('#dir-acct-sel').val()
|
||||
if (acct_id == 'noauth') {
|
||||
var domain = $('#dirNoAuth-url').val()
|
||||
var at = ''
|
||||
} else {
|
||||
var domain = localStorage.getItem('domain_' + acct_id)
|
||||
var at = localStorage.getItem('acct_' + acct_id + '_at')
|
||||
}
|
||||
if (isMore) {
|
||||
var addOffset = $('#dir-contents .cvo').length
|
||||
$('#dir-contents').append(`<div class="progress transparent"><div class="indeterminate"></div></div>`)
|
||||
} else {
|
||||
var addOffset = 0
|
||||
$('#dir-contents').html(`<div class="progress transparent"><div class="indeterminate"></div></div>`)
|
||||
}
|
||||
let start = `https://${domain}/api/v1/directory?order=${order}&local=${local_only}&offset=${addOffset}`
|
||||
if (mode === 'suggest') start = `https://${domain}/api/v2/suggestions`
|
||||
console.log(start)
|
||||
fetch(start, {
|
||||
method: 'GET',
|
||||
headers: {
|
||||
'content-type': 'application/json',
|
||||
Authorization: 'Bearer ' + at,
|
||||
},
|
||||
})
|
||||
.then(function(response) {
|
||||
$('#dir-contents .progress').remove()
|
||||
if (!response.ok) {
|
||||
$('#dir-contents').html(`v2 follow suggestion is supported by Mastodon 3.4.0 or above.`)
|
||||
response.text().then(function(text) {
|
||||
setLog(response.url, response.status, text)
|
||||
})
|
||||
}
|
||||
return response.json()
|
||||
})
|
||||
.catch(function(error) {
|
||||
setLog(start, 'JSON', error)
|
||||
console.error(error)
|
||||
})
|
||||
.then(function(json) {
|
||||
if (json) {
|
||||
$('#moreDir').removeClass('disabled')
|
||||
let obj = []
|
||||
if (mode === 'suggest') {
|
||||
$('#moreDir').addClass('disabled')
|
||||
for (const suggest of json) obj.push(suggest.account)
|
||||
} else {
|
||||
obj = json
|
||||
}
|
||||
var html = userparse(obj, null, acct_id, 'dir', null)
|
||||
$('#dir-contents').append(html)
|
||||
jQuery('time.timeago').timeago()
|
||||
} else {
|
||||
$('#moreDir').addClass('disabled')
|
||||
}
|
||||
})
|
||||
}
|
1006
app/js/tl/filter.js
1006
app/js/tl/filter.js
File diff suppressed because it is too large
Load Diff
@@ -89,7 +89,7 @@ function list() {
|
||||
</a>/
|
||||
<a onclick="listUser('${list.id}','${acct_id}')" class="pointer">
|
||||
${lang.lang_list_users}
|
||||
'</a><br>`
|
||||
</a><br>`
|
||||
})
|
||||
$('#lists').html(lists)
|
||||
} else {
|
||||
|
File diff suppressed because it is too large
Load Diff
@@ -1,432 +1,437 @@
|
||||
//通知
|
||||
//取得+Streaming接続
|
||||
function notf(acct_id, tlid, sys) {
|
||||
if (sys == 'direct') {
|
||||
notfColumn(acct_id, tlid, sys)
|
||||
} else {
|
||||
notfCommon(acct_id, tlid, sys)
|
||||
}
|
||||
if (sys == 'direct') {
|
||||
notfColumn(acct_id, tlid, sys)
|
||||
} else {
|
||||
notfCommon(acct_id, tlid, sys)
|
||||
}
|
||||
}
|
||||
|
||||
function notfColumn(acct_id, tlid, sys) {
|
||||
todo('Notifications Loading...')
|
||||
var native = localStorage.getItem('nativenotf')
|
||||
var at = localStorage.getItem('acct_' + acct_id + '_at')
|
||||
if (!native) {
|
||||
native = 'yes'
|
||||
}
|
||||
var domain = localStorage.getItem('domain_' + acct_id)
|
||||
var httpreq = new XMLHttpRequest()
|
||||
if (localStorage.getItem('mode_' + domain) == 'misskey') {
|
||||
var misskey = true
|
||||
var start = 'https://' + domain + '/api/i/notifications'
|
||||
httpreq.open('POST', start, true)
|
||||
httpreq.setRequestHeader('Content-Type', 'application/json')
|
||||
var body = JSON.stringify({
|
||||
i: at
|
||||
})
|
||||
} else {
|
||||
var misskey = false
|
||||
if (localStorage.getItem('exclude-' + tlid)) {
|
||||
var exc = localStorage.getItem('exclude-' + tlid)
|
||||
} else {
|
||||
var exc = ''
|
||||
}
|
||||
var start = 'https://' + domain + '/api/v1/notifications' + exc
|
||||
httpreq.open('GET', start, true)
|
||||
httpreq.setRequestHeader('Content-Type', 'application/json')
|
||||
httpreq.setRequestHeader('Authorization', 'Bearer ' + at)
|
||||
var body = ''
|
||||
}
|
||||
todo('Notifications Loading...')
|
||||
var native = localStorage.getItem('nativenotf')
|
||||
var at = localStorage.getItem('acct_' + acct_id + '_at')
|
||||
if (!native) {
|
||||
native = 'yes'
|
||||
}
|
||||
var domain = localStorage.getItem('domain_' + acct_id)
|
||||
var httpreq = new XMLHttpRequest()
|
||||
if (localStorage.getItem('mode_' + domain) == 'misskey') {
|
||||
var misskey = true
|
||||
var start = 'https://' + domain + '/api/i/notifications'
|
||||
httpreq.open('POST', start, true)
|
||||
httpreq.setRequestHeader('Content-Type', 'application/json')
|
||||
var body = JSON.stringify({
|
||||
i: at,
|
||||
})
|
||||
} else {
|
||||
var misskey = false
|
||||
if (localStorage.getItem('exclude-' + tlid)) {
|
||||
var exc = localStorage.getItem('exclude-' + tlid)
|
||||
} else {
|
||||
var exc = ''
|
||||
}
|
||||
var start = 'https://' + domain + '/api/v1/notifications' + exc
|
||||
httpreq.open('GET', start, true)
|
||||
httpreq.setRequestHeader('Content-Type', 'application/json')
|
||||
httpreq.setRequestHeader('Authorization', 'Bearer ' + at)
|
||||
var body = ''
|
||||
}
|
||||
|
||||
httpreq.responseType = 'json'
|
||||
httpreq.send(body)
|
||||
httpreq.onreadystatechange = function() {
|
||||
if (httpreq.readyState === 4) {
|
||||
var json = httpreq.response
|
||||
if (this.status !== 200) {
|
||||
setLog(start, this.status, this.response)
|
||||
}
|
||||
var max_id = httpreq.getResponseHeader('link')
|
||||
if (max_id) {
|
||||
max_id = max_id.match(/[?&]{1}max_id=([0-9]+)/)[1]
|
||||
}
|
||||
if (json[0]) {
|
||||
var templete = ''
|
||||
var lastnotf = localStorage.getItem('lastnotf_' + acct_id)
|
||||
localStorage.setItem('lastnotf_' + acct_id, json[0].id)
|
||||
Object.keys(json).forEach(function(key) {
|
||||
var obj = json[key]
|
||||
if (lastnotf == obj.id && key > 0 && native == 'yes') {
|
||||
var ct = key
|
||||
if (key > 14) {
|
||||
ct = '15+'
|
||||
}
|
||||
var os = localStorage.getItem('platform')
|
||||
var options = {
|
||||
body: ct + lang.lang_notf_new,
|
||||
icon: localStorage.getItem('prof_' + acct_id)
|
||||
}
|
||||
var n = new Notification('TheDesk:' + domain, options)
|
||||
}
|
||||
var mute = getFilterTypeByAcct(acct_id, 'notif')
|
||||
//Pleromaにはmoveというtypeがあるらしい。何が互換APIじゃ
|
||||
if (obj.type != 'follow' && obj.type != 'move' && obj.type != 'follow_request') {
|
||||
if (misskey) {
|
||||
templete = templete + misskeyParse([obj], 'notf', acct_id, tlid, -1, mute)
|
||||
} else {
|
||||
templete = templete + parse([obj], 'notf', acct_id, tlid, -1, mute)
|
||||
}
|
||||
} else if (obj.type == 'follow_request') {
|
||||
templete = templete + userparse([obj.account], 'request', acct_id, tlid, -1)
|
||||
} else {
|
||||
if (misskey) {
|
||||
templete = templete + misskeyUserparse([obj], 'notf', acct_id, tlid, -1, mute)
|
||||
} else {
|
||||
templete = templete + userparse([obj.account], obj.type, acct_id, tlid, -1)
|
||||
}
|
||||
}
|
||||
})
|
||||
templete = templete + '<div class="hide notif-marker" data-maxid="' + max_id + '"></div>'
|
||||
$('#timeline_' + tlid).html(templete)
|
||||
$('#landing_' + tlid).hide()
|
||||
jQuery('time.timeago').timeago()
|
||||
}
|
||||
$('#notf-box').addClass('fetched')
|
||||
todc()
|
||||
//Markers
|
||||
var markers = localStorage.getItem('markers')
|
||||
if (markers == 'yes') {
|
||||
markers = true
|
||||
} else {
|
||||
markers = false
|
||||
}
|
||||
if (markers) {
|
||||
getMarker(tlid, 'notf', acct_id)
|
||||
}
|
||||
}
|
||||
}
|
||||
if (!misskey) {
|
||||
if (localStorage.getItem('streaming_' + acct_id)) {
|
||||
var wss = localStorage.getItem('streaming_' + acct_id)
|
||||
} else {
|
||||
var wss = 'wss://' + domain
|
||||
}
|
||||
var start = wss + '/api/v1/streaming/?stream=user&access_token=' + at
|
||||
} else {
|
||||
var start = 'wss://' + domain + '/?i=' + at
|
||||
}
|
||||
httpreq.responseType = 'json'
|
||||
httpreq.send(body)
|
||||
httpreq.onreadystatechange = function() {
|
||||
if (httpreq.readyState === 4) {
|
||||
var json = httpreq.response
|
||||
if (this.status !== 200) {
|
||||
$('#landing_' + tlid).append(`<div>${this.status}</div><div>${escapeHTML(this.response)}`)
|
||||
setLog(start, this.status, this.response)
|
||||
}
|
||||
var max_id = httpreq.getResponseHeader('link')
|
||||
if (max_id) {
|
||||
max_id = max_id.match(/[?&]{1}max_id=([0-9]+)/)[1]
|
||||
}
|
||||
if (json[0]) {
|
||||
var templete = ''
|
||||
var lastnotf = localStorage.getItem('lastnotf_' + acct_id)
|
||||
localStorage.setItem('lastnotf_' + acct_id, json[0].id)
|
||||
Object.keys(json).forEach(function(key) {
|
||||
var obj = json[key]
|
||||
if (lastnotf == obj.id && key > 0 && native == 'yes') {
|
||||
var ct = key
|
||||
if (key > 14) {
|
||||
ct = '15+'
|
||||
}
|
||||
var os = localStorage.getItem('platform')
|
||||
var options = {
|
||||
body: ct + lang.lang_notf_new,
|
||||
icon: localStorage.getItem('prof_' + acct_id),
|
||||
}
|
||||
var n = new Notification('TheDesk:' + domain, options)
|
||||
}
|
||||
var mute = getFilterTypeByAcct(acct_id, 'notif')
|
||||
//Pleromaにはmoveというtypeがあるらしい。何が互換APIじゃ
|
||||
if (obj.type != 'follow' && obj.type != 'move' && obj.type != 'follow_request') {
|
||||
if (misskey) {
|
||||
templete = templete + misskeyParse([obj], 'notf', acct_id, tlid, -1, mute)
|
||||
} else {
|
||||
templete = templete + parse([obj], 'notf', acct_id, tlid, -1, mute)
|
||||
}
|
||||
} else if (obj.type == 'follow_request') {
|
||||
templete = templete + userparse([obj.account], 'request', acct_id, tlid, -1)
|
||||
} else {
|
||||
if (misskey) {
|
||||
templete = templete + misskeyUserparse([obj], 'notf', acct_id, tlid, -1, mute)
|
||||
} else {
|
||||
templete = templete + userparse([obj.account], obj.type, acct_id, tlid, -1)
|
||||
}
|
||||
}
|
||||
})
|
||||
templete = templete + '<div class="hide notif-marker" data-maxid="' + max_id + '"></div>'
|
||||
$('#timeline_' + tlid).html(templete)
|
||||
// $('#landing_' + tlid).hide()
|
||||
jQuery('time.timeago').timeago()
|
||||
}
|
||||
$('#notf-box').addClass('fetched')
|
||||
todc()
|
||||
//Markers
|
||||
var markers = localStorage.getItem('markers')
|
||||
if (markers == 'yes') {
|
||||
markers = true
|
||||
} else {
|
||||
markers = false
|
||||
}
|
||||
if (markers) {
|
||||
getMarker(tlid, 'notf', acct_id)
|
||||
}
|
||||
}
|
||||
}
|
||||
if (!misskey) {
|
||||
if (localStorage.getItem('streaming_' + acct_id)) {
|
||||
var wss = localStorage.getItem('streaming_' + acct_id)
|
||||
} else {
|
||||
var wss = 'wss://' + domain
|
||||
}
|
||||
var start = wss + '/api/v1/streaming/?stream=user&access_token=' + at
|
||||
} else {
|
||||
var start = 'wss://' + domain + '/?i=' + at
|
||||
}
|
||||
}
|
||||
|
||||
function notfCommon(acct_id, tlid, sys, stream) {
|
||||
todo('Notifications Loading...')
|
||||
var native = localStorage.getItem('nativenotf')
|
||||
var at = localStorage.getItem('acct_' + acct_id + '_at')
|
||||
if (!native) {
|
||||
native = 'yes'
|
||||
}
|
||||
var domain = localStorage.getItem('domain_' + acct_id)
|
||||
if (localStorage.getItem('mode_' + domain) == 'misskey') {
|
||||
var misskey = true
|
||||
var start = 'https://' + domain + '/api/i/notifications'
|
||||
var i = {
|
||||
method: 'POST',
|
||||
headers: {
|
||||
'content-type': 'application/json'
|
||||
},
|
||||
body: JSON.stringify({
|
||||
i: at
|
||||
})
|
||||
}
|
||||
} else {
|
||||
var misskey = false
|
||||
var start = 'https://' + domain + '/api/v1/notifications'
|
||||
var i = {
|
||||
method: 'GET',
|
||||
headers: {
|
||||
'content-type': 'application/json',
|
||||
Authorization: 'Bearer ' + at
|
||||
}
|
||||
}
|
||||
}
|
||||
if(stream == 'only') {
|
||||
notfWS(misskey, acct_id, tlid, domain, at)
|
||||
return false
|
||||
}
|
||||
fetch(start, i)
|
||||
.then(function(response) {
|
||||
console.log('header to get param:' + response.headers.get('link'))
|
||||
if (!response.ok) {
|
||||
response.text().then(function(text) {
|
||||
setLog(response.url, response.status, text)
|
||||
})
|
||||
}
|
||||
return response.json()
|
||||
})
|
||||
.catch(function(error) {
|
||||
todo(error)
|
||||
setLog(start, 'JSON', error)
|
||||
console.error(error)
|
||||
})
|
||||
.then(function(json) {
|
||||
if (json[0]) {
|
||||
var templete = ''
|
||||
var lastnotf = localStorage.getItem('lastnotf_' + acct_id)
|
||||
localStorage.setItem('lastnotf_' + acct_id, json[0].id)
|
||||
Object.keys(json).forEach(function(key) {
|
||||
var obj = json[key]
|
||||
if (lastnotf == obj.id && key > 0 && native == 'yes') {
|
||||
var ct = key
|
||||
if (key > 14) {
|
||||
ct = '15+'
|
||||
}
|
||||
var os = localStorage.getItem('platform')
|
||||
var options = {
|
||||
body: ct + lang.lang_notf_new,
|
||||
icon: localStorage.getItem('prof_' + acct_id)
|
||||
}
|
||||
var n = new Notification('TheDesk:' + domain, options)
|
||||
}
|
||||
var mute = getFilterTypeByAcct(acct_id, 'notif')
|
||||
//Pleromaにはmoveというtypeがあるらしい。何が互換APIじゃ
|
||||
if (obj.type != 'follow' && obj.type != 'move') {
|
||||
if (misskey) {
|
||||
templete = templete + misskeyParse([obj], 'notf', acct_id, 'notf', -1, mute)
|
||||
} else {
|
||||
templete = templete + parse([obj], 'notf', acct_id, 'notf', -1, mute)
|
||||
}
|
||||
} else {
|
||||
if (misskey) {
|
||||
templete = templete + misskeyUserparse([obj], 'notf', acct_id, 'notf', -1, mute)
|
||||
} else {
|
||||
templete = templete + userparse([obj.account], obj.type, acct_id, 'notf', -1)
|
||||
}
|
||||
}
|
||||
})
|
||||
$('div[data-notf=' + acct_id + ']').html(templete)
|
||||
$('#landing_' + tlid).hide()
|
||||
jQuery('time.timeago').timeago()
|
||||
}
|
||||
$('#notf-box').addClass('fetched')
|
||||
todc()
|
||||
if(stream != 'no') notfWS(misskey, acct_id, tlid, domain, at)
|
||||
})
|
||||
todo('Notifications Loading...')
|
||||
var native = localStorage.getItem('nativenotf')
|
||||
var at = localStorage.getItem('acct_' + acct_id + '_at')
|
||||
if (!native) {
|
||||
native = 'yes'
|
||||
}
|
||||
var domain = localStorage.getItem('domain_' + acct_id)
|
||||
if (localStorage.getItem('mode_' + domain) == 'misskey') {
|
||||
var misskey = true
|
||||
var start = 'https://' + domain + '/api/i/notifications'
|
||||
var i = {
|
||||
method: 'POST',
|
||||
headers: {
|
||||
'content-type': 'application/json',
|
||||
},
|
||||
body: JSON.stringify({
|
||||
i: at,
|
||||
}),
|
||||
}
|
||||
} else {
|
||||
var misskey = false
|
||||
var start = 'https://' + domain + '/api/v1/notifications'
|
||||
var i = {
|
||||
method: 'GET',
|
||||
headers: {
|
||||
'content-type': 'application/json',
|
||||
Authorization: 'Bearer ' + at,
|
||||
},
|
||||
}
|
||||
}
|
||||
if (stream == 'only') {
|
||||
notfWS(misskey, acct_id, tlid, domain, at)
|
||||
return false
|
||||
}
|
||||
fetch(start, i)
|
||||
.then(function(response) {
|
||||
console.log('header to get param:' + response.headers.get('link'))
|
||||
if (!response.ok) {
|
||||
response.text().then(function(text) {
|
||||
console.log('notf error', 'div[data-notf=' + acct_id + '] .landing')
|
||||
$('div[data-notf=' + acct_id + '] .landing').append(`<div>${response.status}</div><div>${escapeHTML(text)}`)
|
||||
setLog(response.url, response.status, text)
|
||||
})
|
||||
}
|
||||
return response.json()
|
||||
})
|
||||
.catch(function(error) {
|
||||
todo(error)
|
||||
setLog(start, 'JSON', error)
|
||||
console.error(error)
|
||||
})
|
||||
.then(function(json) {
|
||||
if (json[0]) {
|
||||
var templete = ''
|
||||
var lastnotf = localStorage.getItem('lastnotf_' + acct_id)
|
||||
localStorage.setItem('lastnotf_' + acct_id, json[0].id)
|
||||
Object.keys(json).forEach(function(key) {
|
||||
var obj = json[key]
|
||||
if (lastnotf == obj.id && key > 0 && native == 'yes') {
|
||||
var ct = key
|
||||
if (key > 14) {
|
||||
ct = '15+'
|
||||
}
|
||||
var os = localStorage.getItem('platform')
|
||||
var options = {
|
||||
body: ct + lang.lang_notf_new,
|
||||
icon: localStorage.getItem('prof_' + acct_id),
|
||||
}
|
||||
var n = new Notification('TheDesk:' + domain, options)
|
||||
}
|
||||
var mute = getFilterTypeByAcct(acct_id, 'notif')
|
||||
//Pleromaにはmoveというtypeがあるらしい。何が互換APIじゃ
|
||||
if (obj.type != 'follow' && obj.type != 'move') {
|
||||
if (misskey) {
|
||||
templete = templete + misskeyParse([obj], 'notf', acct_id, 'notf', -1, mute)
|
||||
} else {
|
||||
templete = templete + parse([obj], 'notf', acct_id, 'notf', -1, mute)
|
||||
}
|
||||
} else {
|
||||
if (misskey) {
|
||||
templete = templete + misskeyUserparse([obj], 'notf', acct_id, 'notf', -1, mute)
|
||||
} else {
|
||||
templete = templete + userparse([obj.account], obj.type, acct_id, 'notf', -1)
|
||||
}
|
||||
}
|
||||
})
|
||||
$('div[data-notf=' + acct_id + ']').html(templete)
|
||||
// $('#landing_' + tlid).hide()
|
||||
jQuery('time.timeago').timeago()
|
||||
}
|
||||
$('#notf-box').addClass('fetched')
|
||||
todc()
|
||||
if (stream != 'no') notfWS(misskey, acct_id, tlid, domain, at)
|
||||
})
|
||||
}
|
||||
function notfWS(misskey, acct_id, tlid, domain, at) {
|
||||
if(mastodonBaseWsStatus[domain] == 'available') return false
|
||||
if (!misskey) {
|
||||
if (localStorage.getItem('streaming_' + acct_id)) {
|
||||
var wss = localStorage.getItem('streaming_' + acct_id)
|
||||
} else {
|
||||
var wss = 'wss://' + domain
|
||||
}
|
||||
var start = wss + '/api/v1/streaming/?stream=user&access_token=' + at
|
||||
|
||||
var wsid = websocketNotf.length
|
||||
websocketNotf[acct_id] = new WebSocket(start)
|
||||
websocketNotf[acct_id].onopen = function(mess) {
|
||||
console.table({
|
||||
acct_id: acct_id,
|
||||
type: 'Connect Streaming API(Notf)',
|
||||
domain: domain,
|
||||
message: [mess]
|
||||
})
|
||||
$('i[data-notf=' + acct_id + ']').removeClass('red-text')
|
||||
}
|
||||
websocketNotf[acct_id].onmessage = function(mess) {
|
||||
//console.log(["Receive Streaming API(Notf):" + acct_id + "(" + domain + ")", JSON.parse(JSON.parse(mess.data).payload)]);
|
||||
var popup = localStorage.getItem('popup')
|
||||
if (!popup) {
|
||||
popup = 0
|
||||
}
|
||||
var obj = JSON.parse(JSON.parse(mess.data).payload)
|
||||
var type = JSON.parse(mess.data).event
|
||||
if (type == 'notification') {
|
||||
var templete = ''
|
||||
localStorage.setItem('lastnotf_' + acct_id, obj.id)
|
||||
if (!$('#unread_' + tlid + ' .material-icons').hasClass('teal-text')) {
|
||||
//markers show中はダメ
|
||||
if (obj.type != 'follow' && obj.type != 'follow_request') {
|
||||
templete = parse([obj], 'notf', acct_id, 'notf', popup)
|
||||
} else if (obj.type == 'follow_request') {
|
||||
templete = userparse([obj.account], 'request', acct_id, 'notf', -1)
|
||||
} else {
|
||||
templete = userparse([obj], obj.type, acct_id, 'notf', popup)
|
||||
}
|
||||
if (!$('div[data-notfIndv=' + acct_id + '_' + obj.id + ']').length) {
|
||||
$('div[data-notf=' + acct_id + ']').prepend(templete)
|
||||
$('div[data-const=notf_' + acct_id + ']').prepend(templete)
|
||||
}
|
||||
jQuery('time.timeago').timeago()
|
||||
}
|
||||
} else if (type == 'delete') {
|
||||
$('[toot-id=' + obj + ']').hide()
|
||||
$('[toot-id=' + obj + ']').remove()
|
||||
}
|
||||
}
|
||||
websocketNotf[acct_id].onerror = function(error) {
|
||||
console.error('WebSocket Error ', error)
|
||||
errorct++
|
||||
console.log(errorct)
|
||||
if (errorct < 3) {
|
||||
notfWS(misskey, acct_id, tlid, domain, at)
|
||||
}
|
||||
}
|
||||
websocketNotf[acct_id].onclose = function(error) {
|
||||
console.error('WebSocket Close ', error)
|
||||
errorct++
|
||||
console.log(errorct)
|
||||
if (errorct < 3) {
|
||||
notfWS(misskey, acct_id, tlid, domain, at)
|
||||
}
|
||||
}
|
||||
}
|
||||
function notfWS(misskey, acct_id, tlid, domain, at) {
|
||||
if (mastodonBaseWsStatus[domain] == 'available') return false
|
||||
if (!misskey) {
|
||||
if (localStorage.getItem('streaming_' + acct_id)) {
|
||||
var wss = localStorage.getItem('streaming_' + acct_id)
|
||||
} else {
|
||||
var wss = 'wss://' + domain
|
||||
}
|
||||
var start = wss + '/api/v1/streaming/?stream=user&access_token=' + at
|
||||
|
||||
var wsid = websocketNotf.length
|
||||
websocketNotf[acct_id] = new WebSocket(start)
|
||||
websocketNotf[acct_id].onopen = function(mess) {
|
||||
console.table({
|
||||
acct_id: acct_id,
|
||||
type: 'Connect Streaming API(Notf)',
|
||||
domain: domain,
|
||||
message: [mess],
|
||||
})
|
||||
$('i[data-notf=' + acct_id + ']').removeClass('red-text')
|
||||
}
|
||||
websocketNotf[acct_id].onmessage = function(mess) {
|
||||
$('#landing_' + tlid).hide()
|
||||
//console.log(["Receive Streaming API(Notf):" + acct_id + "(" + domain + ")", JSON.parse(JSON.parse(mess.data).payload)]);
|
||||
var popup = localStorage.getItem('popup')
|
||||
if (!popup) {
|
||||
popup = 0
|
||||
}
|
||||
var obj = JSON.parse(JSON.parse(mess.data).payload)
|
||||
var type = JSON.parse(mess.data).event
|
||||
if (type == 'notification') {
|
||||
var templete = ''
|
||||
localStorage.setItem('lastnotf_' + acct_id, obj.id)
|
||||
if (!$('#unread_' + tlid + ' .material-icons').hasClass('teal-text')) {
|
||||
//markers show中はダメ
|
||||
if (obj.type != 'follow' && obj.type != 'follow_request') {
|
||||
templete = parse([obj], 'notf', acct_id, 'notf', popup)
|
||||
} else if (obj.type == 'follow_request') {
|
||||
templete = userparse([obj.account], 'request', acct_id, 'notf', -1)
|
||||
} else {
|
||||
templete = userparse([obj], obj.type, acct_id, 'notf', popup)
|
||||
}
|
||||
if (!$('div[data-notfIndv=' + acct_id + '_' + obj.id + ']').length) {
|
||||
$('div[data-notf=' + acct_id + ']').prepend(templete)
|
||||
$('div[data-const=notf_' + acct_id + ']').prepend(templete)
|
||||
}
|
||||
jQuery('time.timeago').timeago()
|
||||
}
|
||||
} else if (type == 'delete') {
|
||||
$('[toot-id=' + obj + ']').hide()
|
||||
$('[toot-id=' + obj + ']').remove()
|
||||
}
|
||||
}
|
||||
websocketNotf[acct_id].onerror = function(error) {
|
||||
console.error('WebSocket Error ', error)
|
||||
errorct++
|
||||
console.log(errorct)
|
||||
if (errorct < 3) {
|
||||
notfWS(misskey, acct_id, tlid, domain, at)
|
||||
}
|
||||
}
|
||||
websocketNotf[acct_id].onclose = function(error) {
|
||||
console.error('WebSocket Close ', error)
|
||||
errorct++
|
||||
console.log(errorct)
|
||||
if (errorct < 3) {
|
||||
notfWS(misskey, acct_id, tlid, domain, at)
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
//一定のスクロールで発火
|
||||
function notfmore(tlid) {
|
||||
console.log({ status: 'kicked', status: moreloading })
|
||||
var multi = localStorage.getItem('column')
|
||||
var obj = JSON.parse(multi)
|
||||
var acct_id = obj[tlid].domain
|
||||
if (!type) {
|
||||
var type = obj[tlid].type
|
||||
} else {
|
||||
var data
|
||||
}
|
||||
var sid = $('#timeline_' + tlid + ' .notif-marker')
|
||||
.last()
|
||||
.attr('data-maxid')
|
||||
var at = localStorage.getItem('acct_' + acct_id + '_at')
|
||||
var domain = localStorage.getItem('domain_' + acct_id)
|
||||
if (sid && !moreloading) {
|
||||
moreloading = true
|
||||
var httpreq = new XMLHttpRequest()
|
||||
if (localStorage.getItem('mode_' + domain) == 'misskey') {
|
||||
var misskey = true
|
||||
var start = 'https://' + domain + '/api/i/notifications'
|
||||
httpreq.open(POST, start, true)
|
||||
httpreq.setRequestHeader('Content-Type', 'application/json')
|
||||
var body = JSON.stringify({
|
||||
i: at,
|
||||
untilID: sid
|
||||
})
|
||||
} else {
|
||||
var misskey = false
|
||||
if (localStorage.getItem('exclude-' + tlid)) {
|
||||
var exc = localStorage.getItem('exclude-' + tlid) + '&max_id=' + sid
|
||||
} else {
|
||||
var exc = '?max_id=' + sid
|
||||
}
|
||||
var start = 'https://' + domain + '/api/v1/notifications' + exc
|
||||
httpreq.open('GET', start, true)
|
||||
httpreq.setRequestHeader('Content-Type', 'application/json')
|
||||
httpreq.setRequestHeader('Authorization', 'Bearer ' + at)
|
||||
var body = ''
|
||||
}
|
||||
console.log({ status: 'kicked', status: moreloading })
|
||||
var multi = localStorage.getItem('column')
|
||||
var obj = JSON.parse(multi)
|
||||
var acct_id = obj[tlid].domain
|
||||
if (!type) {
|
||||
var type = obj[tlid].type
|
||||
} else {
|
||||
var data
|
||||
}
|
||||
var sid = $('#timeline_' + tlid + ' .notif-marker')
|
||||
.last()
|
||||
.attr('data-maxid')
|
||||
var at = localStorage.getItem('acct_' + acct_id + '_at')
|
||||
var domain = localStorage.getItem('domain_' + acct_id)
|
||||
if (sid && !moreloading) {
|
||||
moreloading = true
|
||||
var httpreq = new XMLHttpRequest()
|
||||
if (localStorage.getItem('mode_' + domain) == 'misskey') {
|
||||
var misskey = true
|
||||
var start = 'https://' + domain + '/api/i/notifications'
|
||||
httpreq.open(POST, start, true)
|
||||
httpreq.setRequestHeader('Content-Type', 'application/json')
|
||||
var body = JSON.stringify({
|
||||
i: at,
|
||||
untilID: sid,
|
||||
})
|
||||
} else {
|
||||
var misskey = false
|
||||
if (localStorage.getItem('exclude-' + tlid)) {
|
||||
var exc = localStorage.getItem('exclude-' + tlid) + '&max_id=' + sid
|
||||
} else {
|
||||
var exc = '?max_id=' + sid
|
||||
}
|
||||
var start = 'https://' + domain + '/api/v1/notifications' + exc
|
||||
httpreq.open('GET', start, true)
|
||||
httpreq.setRequestHeader('Content-Type', 'application/json')
|
||||
httpreq.setRequestHeader('Authorization', 'Bearer ' + at)
|
||||
var body = ''
|
||||
}
|
||||
|
||||
httpreq.responseType = 'json'
|
||||
httpreq.send(body)
|
||||
httpreq.onreadystatechange = function() {
|
||||
if (httpreq.readyState === 4) {
|
||||
var json = httpreq.response
|
||||
if (this.status !== 200) {
|
||||
setLog(start, this.status, this.response)
|
||||
}
|
||||
console.log(['More notifications on ' + tlid, json])
|
||||
var max_id = httpreq.getResponseHeader('link').match(/[?&]{1}max_id=([0-9]+)/)[1]
|
||||
if (json[0]) {
|
||||
var templete = ''
|
||||
var lastnotf = localStorage.getItem('lastnotf_' + acct_id)
|
||||
localStorage.setItem('lastnotf_' + acct_id, json[0].id)
|
||||
Object.keys(json).forEach(function(key) {
|
||||
var obj = json[key]
|
||||
var mute = getFilterTypeByAcct(acct_id, 'notif')
|
||||
if (obj.type != 'follow') {
|
||||
if (misskey) {
|
||||
templete = templete + misskeyParse([obj], 'notf', acct_id, 'notf', -1, mute)
|
||||
} else {
|
||||
templete = templete + parse([obj], 'notf', acct_id, 'notf', -1, mute)
|
||||
}
|
||||
} else {
|
||||
if (misskey) {
|
||||
templete = templete + misskeyUserparse([obj], 'notf', acct_id, 'notf', -1, mute)
|
||||
} else {
|
||||
templete = templete + userparse([obj.account], obj.type, acct_id, 'notf', -1)
|
||||
}
|
||||
}
|
||||
})
|
||||
moreloading = false
|
||||
templete = templete + '<div class="hide notif-marker" data-maxid="' + max_id + '"></div>'
|
||||
$('#timeline_' + tlid).append(templete)
|
||||
$('#landing_' + tlid).hide()
|
||||
jQuery('time.timeago').timeago()
|
||||
}
|
||||
$('#notf-box').addClass('fetched')
|
||||
todc()
|
||||
}
|
||||
}
|
||||
}
|
||||
httpreq.responseType = 'json'
|
||||
httpreq.send(body)
|
||||
httpreq.onreadystatechange = function() {
|
||||
if (httpreq.readyState === 4) {
|
||||
var json = httpreq.response
|
||||
if (this.status !== 200) {
|
||||
setLog(start, this.status, this.response)
|
||||
}
|
||||
console.log(['More notifications on ' + tlid, json])
|
||||
var max_id = httpreq.getResponseHeader('link').match(/[?&]{1}max_id=([0-9]+)/)[1]
|
||||
if (json[0]) {
|
||||
var templete = ''
|
||||
var lastnotf = localStorage.getItem('lastnotf_' + acct_id)
|
||||
localStorage.setItem('lastnotf_' + acct_id, json[0].id)
|
||||
Object.keys(json).forEach(function(key) {
|
||||
var obj = json[key]
|
||||
var mute = getFilterTypeByAcct(acct_id, 'notif')
|
||||
if (obj.type != 'follow') {
|
||||
if (misskey) {
|
||||
templete = templete + misskeyParse([obj], 'notf', acct_id, 'notf', -1, mute)
|
||||
} else {
|
||||
templete = templete + parse([obj], 'notf', acct_id, 'notf', -1, mute)
|
||||
}
|
||||
} else {
|
||||
if (misskey) {
|
||||
templete = templete + misskeyUserparse([obj], 'notf', acct_id, 'notf', -1, mute)
|
||||
} else {
|
||||
templete = templete + userparse([obj.account], obj.type, acct_id, 'notf', -1)
|
||||
}
|
||||
}
|
||||
})
|
||||
moreloading = false
|
||||
templete = templete + '<div class="hide notif-marker" data-maxid="' + max_id + '"></div>'
|
||||
$('#timeline_' + tlid).append(templete)
|
||||
// $('#landing_' + tlid).hide()
|
||||
jQuery('time.timeago').timeago()
|
||||
}
|
||||
$('#notf-box').addClass('fetched')
|
||||
todc()
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
//通知トグルボタン
|
||||
function notfToggle(acct, tlid) {
|
||||
if ($('#notf-box_' + tlid).hasClass('column-hide')) {
|
||||
$('#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)
|
||||
if ($('#notf-box_' + tlid).hasClass('column-hide')) {
|
||||
$('#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)
|
||||
}
|
||||
|
||||
function notfCanceler(acct) {
|
||||
$('.notf-reply_' + acct).text(0)
|
||||
localStorage.removeItem('notf-reply_' + acct)
|
||||
$('.notf-reply_' + acct).addClass('hide')
|
||||
$('.notf-fav_' + acct).text(0)
|
||||
localStorage.removeItem('notf-fav_' + acct)
|
||||
$('.notf-fav_' + acct).addClass('hide')
|
||||
$('.notf-bt_' + acct).text(0)
|
||||
localStorage.removeItem('notf-bt_' + acct)
|
||||
$('.notf-bt_' + acct).addClass('hide')
|
||||
$('.notf-follow_' + acct).text(0)
|
||||
localStorage.removeItem('notf-follow_' + acct)
|
||||
$('.notf-follow_' + acct).addClass('hide')
|
||||
$('.notf-icon_' + acct).removeClass('red-text')
|
||||
var id = $('#announce_' + acct + ' .announcement').first().attr('data-id')
|
||||
$('.notf-announ_' + acct + '_ct').text("")
|
||||
$(`.boxIn[data-acct=${acct}] .notice-box`).removeClass('has-notf')
|
||||
if(id) {
|
||||
localStorage.setItem('announ_' + acct, id)
|
||||
}
|
||||
$('.notf-reply_' + acct).text(0)
|
||||
localStorage.removeItem('notf-reply_' + acct)
|
||||
$('.notf-reply_' + acct).addClass('hide')
|
||||
$('.notf-fav_' + acct).text(0)
|
||||
localStorage.removeItem('notf-fav_' + acct)
|
||||
$('.notf-fav_' + acct).addClass('hide')
|
||||
$('.notf-bt_' + acct).text(0)
|
||||
localStorage.removeItem('notf-bt_' + acct)
|
||||
$('.notf-bt_' + acct).addClass('hide')
|
||||
$('.notf-follow_' + acct).text(0)
|
||||
localStorage.removeItem('notf-follow_' + acct)
|
||||
$('.notf-follow_' + acct).addClass('hide')
|
||||
$('.notf-icon_' + acct).removeClass('red-text')
|
||||
var id = $('#announce_' + acct + ' .announcement')
|
||||
.first()
|
||||
.attr('data-id')
|
||||
$('.notf-announ_' + acct + '_ct').text('')
|
||||
$(`.boxIn[data-acct=${acct}] .notice-box`).removeClass('has-notf')
|
||||
if (id) {
|
||||
localStorage.setItem('announ_' + acct, id)
|
||||
}
|
||||
}
|
||||
|
||||
function allNotfRead() {
|
||||
var multi = localStorage.getItem('multi')
|
||||
if (multi) {
|
||||
var obj = JSON.parse(multi)
|
||||
Object.keys(obj).forEach(function(key) {
|
||||
notfCanceler(key)
|
||||
})
|
||||
}
|
||||
var multi = localStorage.getItem('multi')
|
||||
if (multi) {
|
||||
var obj = JSON.parse(multi)
|
||||
Object.keys(obj).forEach(function(key) {
|
||||
notfCanceler(key)
|
||||
})
|
||||
}
|
||||
}
|
||||
allNotfRead()
|
||||
allNotfRead()
|
1183
app/js/tl/parse.js
1183
app/js/tl/parse.js
File diff suppressed because it is too large
Load Diff
@@ -13,7 +13,21 @@ function searchMenu() {
|
||||
//検索取得
|
||||
function src(mode, offset) {
|
||||
if (!offset) {
|
||||
$('#src-contents').html('')
|
||||
$('#src-contents').html(`
|
||||
<div class="preloader-wrapper small active" style="margin-left: calc(50% - 36px);">
|
||||
<div class="spinner-layer spinner-blue-only">
|
||||
<div class="circle-clipper left">
|
||||
<div class="circle"></div>
|
||||
</div>
|
||||
<div class="gap-patch">
|
||||
<div class="circle"></div>
|
||||
</div>
|
||||
<div class="circle-clipper right">
|
||||
<div class="circle"></div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
`)
|
||||
var add = ''
|
||||
} else {
|
||||
var add = '&type=accounts&offset=' + $('#src-accts .cvo').length
|
||||
@@ -48,24 +62,27 @@ function src(mode, offset) {
|
||||
Authorization: 'Bearer ' + at
|
||||
}
|
||||
})
|
||||
.then(function(response) {
|
||||
.then(function (response) {
|
||||
if (!offset) {
|
||||
$('#src-contents').html(``)
|
||||
}
|
||||
if (!response.ok) {
|
||||
response.text().then(function(text) {
|
||||
response.text().then(function (text) {
|
||||
setLog(response.url, response.status, text)
|
||||
})
|
||||
}
|
||||
return response.json()
|
||||
})
|
||||
.catch(function(error) {
|
||||
.catch(function (error) {
|
||||
src('v1')
|
||||
return false
|
||||
})
|
||||
.then(function(json) {
|
||||
.then(function (json) {
|
||||
console.log(['Search', json])
|
||||
//ハッシュタグ
|
||||
if (json.hashtags[0]) {
|
||||
var tags = ''
|
||||
Object.keys(json.hashtags).forEach(function(key4) {
|
||||
Object.keys(json.hashtags).forEach(function (key4) {
|
||||
var tag = json.hashtags[key4]
|
||||
if (mode) {
|
||||
tags =
|
||||
@@ -116,7 +133,7 @@ function tsAdd(q) {
|
||||
parseColumn('add')
|
||||
}
|
||||
function tootsearch(tlid, q) {
|
||||
if(!q || q=='undefined') {
|
||||
if (!q || q == 'undefined') {
|
||||
return false
|
||||
}
|
||||
var start = 'https://tootsearch.chotto.moe/api/v1/search?from=0&sort=created_at%3Adesc&q=' + q
|
||||
@@ -129,20 +146,20 @@ function tootsearch(tlid, q) {
|
||||
'content-type': 'application/json'
|
||||
}
|
||||
})
|
||||
.then(function(response) {
|
||||
.then(function (response) {
|
||||
if (!response.ok) {
|
||||
response.text().then(function(text) {
|
||||
response.text().then(function (text) {
|
||||
setLog(response.url, response.status, text)
|
||||
})
|
||||
}
|
||||
return response.json()
|
||||
})
|
||||
.catch(function(error) {
|
||||
.catch(function (error) {
|
||||
todo(error)
|
||||
setLog(start, 'JSON', error)
|
||||
console.error(error)
|
||||
})
|
||||
.then(function(raw) {
|
||||
.then(function (raw) {
|
||||
var templete = ''
|
||||
var json = raw.hits.hits
|
||||
var max_id = raw['hits'].length
|
||||
@@ -180,20 +197,20 @@ function moreTs(tlid, q) {
|
||||
'content-type': 'application/json'
|
||||
}
|
||||
})
|
||||
.then(function(response) {
|
||||
.then(function (response) {
|
||||
if (!response.ok) {
|
||||
response.text().then(function(text) {
|
||||
response.text().then(function (text) {
|
||||
setLog(response.url, response.status, text)
|
||||
})
|
||||
}
|
||||
return response.json()
|
||||
})
|
||||
.catch(function(error) {
|
||||
.catch(function (error) {
|
||||
todo(error)
|
||||
setLog(start, 'JSON', error)
|
||||
console.error(error)
|
||||
})
|
||||
.then(function(raw) {
|
||||
.then(function (raw) {
|
||||
var templete = ''
|
||||
var json = raw.hits.hits
|
||||
var max_id = raw['hits'].length
|
||||
@@ -256,8 +273,8 @@ function graphDrawCore(his, tag, acct_id) {
|
||||
</div>
|
||||
<div class="tagCompTag">
|
||||
<a onclick="tl('tag','${escapeHTML(
|
||||
tag.name
|
||||
)}','${acct_id}','add')" class="pointer" title="${escapeHTML(tag.name)}">
|
||||
tag.name
|
||||
)}','${acct_id}','add')" class="pointer" title="${escapeHTML(tag.name)}">
|
||||
#${escapeHTML(tag.name)}
|
||||
</a>
|
||||
</div>
|
||||
@@ -290,21 +307,21 @@ function trend() {
|
||||
Authorization: 'Bearer ' + at
|
||||
}
|
||||
})
|
||||
.then(function(response) {
|
||||
.then(function (response) {
|
||||
if (!response.ok) {
|
||||
response.text().then(function(text) {
|
||||
response.text().then(function (text) {
|
||||
setLog(response.url, response.status, text)
|
||||
})
|
||||
}
|
||||
return response.json()
|
||||
})
|
||||
.catch(function(error) {
|
||||
.catch(function (error) {
|
||||
setLog(start, 'JSON', error)
|
||||
console.error(error)
|
||||
})
|
||||
.then(function(json) {
|
||||
.then(function (json) {
|
||||
var tags = ''
|
||||
Object.keys(json).forEach(function(keye) {
|
||||
Object.keys(json).forEach(function (keye) {
|
||||
var tag = json[keye]
|
||||
var his = tag.history
|
||||
tags = graphDrawCore(his, tag, acct_id)
|
||||
@@ -327,18 +344,18 @@ function doSrc(type) {
|
||||
$('#pageSrc').addClass('hide')
|
||||
$('#pageSrc').removeClass('keep')
|
||||
var q = $('.srcQ').text()
|
||||
if(type == 'web') {
|
||||
if (type == 'web') {
|
||||
var start = localStorage.getItem('srcUrl')
|
||||
if(!start) {
|
||||
if (!start) {
|
||||
start = 'https://google.com/search?q={q}'
|
||||
}
|
||||
start = start.replace(/{q}/, q)
|
||||
postMessage(["openUrl", start], "*")
|
||||
} else if(type == 'ts') {
|
||||
} else if (type == 'ts') {
|
||||
tsAdd(q)
|
||||
} else if(type == 'copy') {
|
||||
} else if (type == 'copy') {
|
||||
execCopy(q)
|
||||
} else if(type == 'toot') {
|
||||
} else if (type == 'toot') {
|
||||
brInsert(q)
|
||||
}
|
||||
}
|
@@ -10,6 +10,7 @@ if (location.search) {
|
||||
}
|
||||
//よく使うタグ
|
||||
function tagShow(tag, elm) {
|
||||
tag = decodeURIComponent(tag)
|
||||
const tagTL = lang.lang_parse_tagTL.replace('{{tag}}', '#' + tag)
|
||||
const tagPin = lang.lang_parse_tagpin.replace('{{tag}}', '#' + tag)
|
||||
const tagToot = lang.lang_parse_tagtoot.replace('{{tag}}', '#' + tag)
|
||||
|
2844
app/js/tl/tl.js
2844
app/js/tl/tl.js
File diff suppressed because it is too large
Load Diff
@@ -21,7 +21,7 @@ function imgv(id, key, acct_id) {
|
||||
if (remote_img == 'yes') {
|
||||
murl = ourl
|
||||
}
|
||||
$(document).ready(function() {
|
||||
$(document).ready(function () {
|
||||
if (type == 'image') {
|
||||
$('#imagemodal').modal('open')
|
||||
imageXhr(id, key, murl)
|
||||
@@ -62,7 +62,7 @@ function imgCont(type) {
|
||||
$('#imgsec').text(0)
|
||||
$('#imgmodal').attr('src', '../../img/loading.svg')
|
||||
var type = $('#' + id + '-image-' + key).attr('data-type')
|
||||
$(document).ready(function() {
|
||||
$(document).ready(function () {
|
||||
if (type == 'image') {
|
||||
imageXhr(id, key, murl)
|
||||
$('#imagewrap').dragScroll() // ドラッグスクロール設定
|
||||
@@ -77,16 +77,22 @@ function imgCont(type) {
|
||||
}
|
||||
function imageXhr(id, key, murl) {
|
||||
var startTime = new Date()
|
||||
$('#imgmodal-progress div').removeClass('determinate')
|
||||
$('#imgmodal-progress div').addClass('indeterminate')
|
||||
$('#imgmodal-progress').removeClass('hide')
|
||||
xhr = new XMLHttpRequest()
|
||||
xhr.open('GET', murl, true)
|
||||
xhr.responseType = 'arraybuffer'
|
||||
xhr.addEventListener(
|
||||
'progress',
|
||||
function(event) {
|
||||
function (event) {
|
||||
if (event.lengthComputable) {
|
||||
var total = event.total
|
||||
var now = event.loaded
|
||||
var per = (now / total) * 100
|
||||
$('#imgmodal-progress div').removeClass('indeterminate')
|
||||
$('#imgmodal-progress div').addClass('determinate')
|
||||
$('#imgmodal-progress div').css('width', `${per}%`)
|
||||
$('#imgprog').text(Math.floor(per))
|
||||
}
|
||||
},
|
||||
@@ -94,31 +100,35 @@ function imageXhr(id, key, murl) {
|
||||
)
|
||||
xhr.addEventListener(
|
||||
'loadend',
|
||||
function(event) {
|
||||
function (event) {
|
||||
var total = event.total
|
||||
$('#imgbyte').text(Math.floor(total / 1024))
|
||||
var now = event.loaded
|
||||
var per = (now / total) * 100
|
||||
$('#imgprog').text(Math.floor(per))
|
||||
$('#imgmodal-progress').addClass('hide')
|
||||
$('#imgmodal-progress div').css('width', '0%')
|
||||
$('#imgmodal-progress div').removeClass('determinate')
|
||||
$('#imgmodal-progress div').addClass('indeterminate')
|
||||
},
|
||||
false
|
||||
)
|
||||
xhr.addEventListener(
|
||||
'error',
|
||||
function(event) {
|
||||
function (event) {
|
||||
$('#imgmodal').attr('src', murl)
|
||||
},
|
||||
false
|
||||
)
|
||||
xhr.onreadystatechange = function() {
|
||||
xhr.onreadystatechange = function () {
|
||||
if (this.readyState == 4 && this.status == 200) {
|
||||
r = new FileReader()
|
||||
r.readAsDataURL(this.response)
|
||||
r.onload = function() {
|
||||
r.onload = function () {
|
||||
var b64 = r.result
|
||||
var element = new Image()
|
||||
var width
|
||||
element.onload = function() {
|
||||
element.onload = function () {
|
||||
var width = element.naturalWidth
|
||||
var height = element.naturalHeight
|
||||
calcNiceAspect(width, height)
|
||||
@@ -146,8 +156,8 @@ function imageXhr(id, key, murl) {
|
||||
xhr.responseType = 'blob'
|
||||
xhr.send()
|
||||
}
|
||||
function calcNiceAspect( width, height ) {
|
||||
if(width < 650) {
|
||||
function calcNiceAspect(width, height) {
|
||||
if (width < 650) {
|
||||
width = 650
|
||||
}
|
||||
var windowH = $(window).height()
|
||||
@@ -156,7 +166,7 @@ function calcNiceAspect( width, height ) {
|
||||
$('#imagemodal img').css('width', 'auto')
|
||||
if (height < windowH) {
|
||||
$('#imagemodal').css('height', height + 100 + 'px')
|
||||
$('#imagemodal img').css('height', height + 'px')
|
||||
$('#imagemodal img').css('height', height + 'px')
|
||||
if (width > windowW * 0.8) {
|
||||
$('#imagemodal').css('width', '80vw')
|
||||
$('#imagemodal img').css('width', 'auto')
|
||||
@@ -188,11 +198,11 @@ function zoom(z) {
|
||||
$('#imagewrap img').css('height', hgt + 'px')
|
||||
}
|
||||
//スマホ対応ドラッグ移動システム
|
||||
(function() {
|
||||
$.fn.dragScroll = function() {
|
||||
(function () {
|
||||
$.fn.dragScroll = function () {
|
||||
var target = this
|
||||
$(this)
|
||||
.mousedown(function(event) {
|
||||
.mousedown(function (event) {
|
||||
$(this)
|
||||
.data('down', true)
|
||||
.data('x', event.clientX)
|
||||
@@ -207,7 +217,7 @@ function zoom(z) {
|
||||
})
|
||||
// ウィンドウから外れてもイベント実行
|
||||
$(document)
|
||||
.mousemove(function(event) {
|
||||
.mousemove(function (event) {
|
||||
if ($(target).data('down') == true) {
|
||||
// スクロール
|
||||
target.scrollLeft($(target).data('scrollLeft') + $(target).data('x') - event.clientX)
|
||||
@@ -215,11 +225,11 @@ function zoom(z) {
|
||||
return false // 文字列選択を抑止
|
||||
}
|
||||
})
|
||||
.mouseup(function(event) {
|
||||
.mouseup(function (event) {
|
||||
$(target).data('down', false)
|
||||
})
|
||||
$(this)
|
||||
.on('touchstart', function(event) {
|
||||
.on('touchstart', function (event) {
|
||||
$(this)
|
||||
.data('down', true)
|
||||
.data('x', getX(event))
|
||||
@@ -232,7 +242,7 @@ function zoom(z) {
|
||||
overflow: 'hidden', // スクロールバー非表示
|
||||
cursor: 'move'
|
||||
}) //指が触れたか検知
|
||||
$(this).on('touchmove', function(event) {
|
||||
$(this).on('touchmove', function (event) {
|
||||
if ($(target).data('down') === true) {
|
||||
// スクロール
|
||||
target.scrollLeft($(target).data('scrollLeft') + $(target).data('x') - getX(event))
|
||||
@@ -241,7 +251,7 @@ function zoom(z) {
|
||||
} else {
|
||||
}
|
||||
}) //指が動いたか検知
|
||||
$(this).on('touchend', function(event) {
|
||||
$(this).on('touchend', function (event) {
|
||||
$(target).data('down', false)
|
||||
})
|
||||
|
||||
@@ -258,7 +268,7 @@ function getY(event) {
|
||||
}
|
||||
//マウスホイールで拡大
|
||||
var element = document.getElementById('imagemodal')
|
||||
element.onmousewheel = function(e) {
|
||||
element.onmousewheel = function (e) {
|
||||
var delta = e.wheelDelta
|
||||
if (delta > 0) {
|
||||
zoom(1.1)
|
||||
|
@@ -281,7 +281,7 @@ function parseColumn(target, dontclose) {
|
||||
excludeNotf = excludeNotf + '</div>'
|
||||
notfDomain = 'dummy'
|
||||
notfKey = 'dummy'
|
||||
var excludeHome =''
|
||||
var excludeHome = ''
|
||||
} else if (acct.type == 'home') {
|
||||
var excludeNotf = ''
|
||||
var excludeHome = `<a onclick="ebtToggle('${key}')" class="setting nex waves-effect">
|
||||
@@ -452,8 +452,20 @@ function parseColumn(target, dontclose) {
|
||||
<div class="tl-box" tlid="${key}">
|
||||
<div id="timeline_${key}" class="tl ${acct.type}-timeline " tlid="${key}"
|
||||
data-type="${acct.type}" data-acct="${acct.domain}" data-const="${acct.type}_${acct.domain}">
|
||||
<div id="landing_${key}" style="text-align:center">
|
||||
${lang.lang_layout_nodata}
|
||||
<div id="landing_${key}" class="landing">
|
||||
<div class="preloader-wrapper small active " style="margin-top: calc(50vh - 15px)">
|
||||
<div class="spinner-layer spinner-blue-only">
|
||||
<div class="circle-clipper left">
|
||||
<div class="circle"></div>
|
||||
</div>
|
||||
<div class="gap-patch">
|
||||
<div class="circle"></div>
|
||||
</div>
|
||||
<div class="circle-clipper right">
|
||||
<div class="circle"></div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>`
|
||||
@@ -659,8 +671,6 @@ function removeColumn(tlid) {
|
||||
$('#timeline_box_' + tlid + '_parentBox').remove()
|
||||
}
|
||||
}
|
||||
$('#sort-box').removeClass('hide')
|
||||
$('#sort-box').addClass('show')
|
||||
})
|
||||
}
|
||||
|
||||
|
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@@ -1,5 +1,7 @@
|
||||
const { AiScript, parse, values, utils } = require('@syuilo/aiscript')
|
||||
const gcc = require('textarea-caret')
|
||||
const { v4: uuidv4 } = require('uuid')
|
||||
global.uuid = uuidv4
|
||||
global.getCaretCoordinates = gcc
|
||||
global.sanitizeHtml = require('sanitize-html')
|
||||
global.asValue = values
|
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "thedesk",
|
||||
"version": "22.2.0",
|
||||
"version": "22.3.0",
|
||||
"codename": "Koume",
|
||||
"description": "TheDesk is a Mastodon client for PC.",
|
||||
"repository": "https://github.com/cutls/TheDesk",
|
||||
@@ -9,7 +9,7 @@
|
||||
"test": "echo \"Error: no test specified\" && exit 1",
|
||||
"postinstall": "run-s util:*",
|
||||
"util:hash": "node gitHash.js",
|
||||
"util:browserify": "browserify aiscript.js -o js/platform/aiscript.js",
|
||||
"util:browserify": "browserify native.js -o js/platform/native.js",
|
||||
"construct": "node view/make/makeCli.js",
|
||||
"construct:store": "node view/make/makeCli.js --store",
|
||||
"dev": "run-p dev:*",
|
||||
@@ -57,7 +57,7 @@
|
||||
],
|
||||
"license": "GPL-3.0",
|
||||
"dependencies": {
|
||||
"@fortawesome/fontawesome-free": "^5.15.2",
|
||||
"@fortawesome/fontawesome-free": "^5.15.3",
|
||||
"@syuilo/aiscript": "^0.11.1",
|
||||
"electron-dl": "^3.2.1",
|
||||
"itunes-nowplaying-mac": "https://github.com/cutls/itunes-nowplaying-mac/releases/download/v0.4.0/itunes-nowplaying-mac-0.4.0.tgz",
|
||||
@@ -67,26 +67,28 @@
|
||||
"json5": "^2.2.0",
|
||||
"lodash": "^4.17.21",
|
||||
"materialize-css": "git://github.com/cutls/materialize#v1-dev",
|
||||
"sanitize-html": "^2.3.2",
|
||||
"sanitize-html": "^2.4.0",
|
||||
"sumchecker": "^3.0.1",
|
||||
"sweetalert2": "^10.15.7",
|
||||
"sweetalert2": "^11.0.18",
|
||||
"system-font-families": "^0.4.1",
|
||||
"textarea-caret": "^3.1.0",
|
||||
"vue": "^2.6.12"
|
||||
"uuid": "^8.3.2",
|
||||
"vue": "^2.6.14"
|
||||
},
|
||||
"devDependencies": {
|
||||
"browserify": "^17.0.0",
|
||||
"chokidar": "^3.5.1",
|
||||
"dotenv": "^8.2.0",
|
||||
"electron": "^12.0.2",
|
||||
"electron-builder": "^22.10.5",
|
||||
"chokidar": "^3.5.2",
|
||||
"dotenv": "^10.0.0",
|
||||
"electron": "^13.1.2",
|
||||
"electron-builder": "^22.11.7",
|
||||
"electron-notarize": "^1.0.0",
|
||||
"electron-rebuild": "^2.3.5",
|
||||
"eslint": "^7.23.0",
|
||||
"eslint": "^7.28.0",
|
||||
"npm-run-all": "^4.1.5",
|
||||
"readline-sync": "1.4.10"
|
||||
},
|
||||
"resolutions": {
|
||||
"@types/fs-extra": "9.0.11"
|
||||
"@types/fs-extra": "9.0.11",
|
||||
"plist": "3.0.2"
|
||||
}
|
||||
}
|
||||
|
@@ -2,142 +2,142 @@
|
||||
<html lang="@@lang@@">
|
||||
|
||||
<head>
|
||||
<title>Account Manager - TheDesk</title>
|
||||
<meta content="width=device-width,initial-scale=1.0" name="viewport" />
|
||||
<link href="../../css/themes.css" type="text/css" rel="stylesheet">
|
||||
<link href="../../@@node_base@@/materialize-css/dist/css/materialize.css" type="text/css" rel="stylesheet" />
|
||||
<link href="../../css/master.css" type="text/css" rel="stylesheet" />
|
||||
<link href="../../css/tl.css" rel="stylesheet" type="text/css" />
|
||||
<link href="../../css/userdata.css" rel="stylesheet" type="text/css" />
|
||||
<link href="../../@@node_base@@/@fortawesome/fontawesome-free/css/all.min.css" type="text/css" rel="stylesheet" />
|
||||
<link href="https://fonts.googleapis.com/icon?family=Material+Icons" rel="stylesheet">
|
||||
<link href="../../css/sweetalert2-material.min.css" type="text/css" rel="stylesheet">
|
||||
<link href="../../css/acct.css" rel="stylesheet" type="text/css" />
|
||||
<meta charset="utf-8" />
|
||||
@@comment-start@@
|
||||
<script type="text/javascript">
|
||||
var _jipt = []
|
||||
_jipt.push(['project', 'thedesk'])
|
||||
</script>
|
||||
<script type="text/javascript" src="https://cdn.crowdin.com/jipt/jipt.js"></script>
|
||||
@@comment-end@@
|
||||
@@pwa@@ @@store@@
|
||||
<title>Account Manager - TheDesk</title>
|
||||
<meta content="width=device-width,initial-scale=1.0" name="viewport" />
|
||||
<link href="../../css/themes.css" type="text/css" rel="stylesheet">
|
||||
<link href="../../@@node_base@@/materialize-css/dist/css/materialize.css" type="text/css" rel="stylesheet" />
|
||||
<link href="../../css/master.css" type="text/css" rel="stylesheet" />
|
||||
<link href="../../css/tl.css" rel="stylesheet" type="text/css" />
|
||||
<link href="../../css/userdata.css" rel="stylesheet" type="text/css" />
|
||||
<link href="../../@@node_base@@/@fortawesome/fontawesome-free/css/all.min.css" type="text/css" rel="stylesheet" />
|
||||
<link href="https://fonts.googleapis.com/icon?family=Material+Icons" rel="stylesheet">
|
||||
<link href="../../css/sweetalert2-material.css" type="text/css" rel="stylesheet">
|
||||
<link href="../../css/acct.css" rel="stylesheet" type="text/css" />
|
||||
<meta charset="utf-8" /> @@comment-start@@
|
||||
<script type="text/javascript">
|
||||
var _jipt = []
|
||||
_jipt.push(['project', 'thedesk'])
|
||||
</script>
|
||||
<script type="text/javascript" src="https://cdn.crowdin.com/jipt/jipt.js"></script>
|
||||
@@comment-end@@ @@pwa@@ @@store@@
|
||||
</head>
|
||||
|
||||
<body id="mainView" class="@@pwaClass@@">
|
||||
<script type="text/javascript" src="../../@@node_base@@/jquery/dist/jquery.js"></script>
|
||||
<script type="text/javascript" src="../../js/platform/first.js"></script>
|
||||
<script type="text/javascript" src="../../@@node_base@@/materialize-css/dist/js/materialize.js"></script>
|
||||
<script type="text/javascript" src="main.js"></script>
|
||||
<script type="text/javascript" src="../../@@node_base@@/sweetalert2/dist/sweetalert2.min.js"></script>
|
||||
<script>
|
||||
var misskeytoken = false
|
||||
</script>
|
||||
<script type="text/javascript" src="../../js/common/time.js"></script>
|
||||
<div class="hide-first">
|
||||
<a href="index.html" class="btn waves-effect orange nex" style="width:100%; max-width:200px;">@@back@@</a><br />
|
||||
<h5>@@list@@</h5>
|
||||
<div id="acct-list"></div>
|
||||
<div class="divider"></div>
|
||||
</div>
|
||||
<div>
|
||||
<h5>@@add@@</h5>
|
||||
<script type="text/javascript" src="../../@@node_base@@/jquery/dist/jquery.js"></script>
|
||||
<script type="text/javascript" src="../../js/platform/first.js"></script>
|
||||
<script type="text/javascript" src="../../@@node_base@@/materialize-css/dist/js/materialize.js"></script>
|
||||
<script type="text/javascript" src="main.js"></script>
|
||||
<script type="text/javascript" src="../../@@node_base@@/sweetalert2/dist/sweetalert2.min.js"></script>
|
||||
<script>
|
||||
var misskeytoken = false
|
||||
</script>
|
||||
<script type="text/javascript" src="../../js/common/time.js"></script>
|
||||
<div class="hide-first">
|
||||
<a href="index.html" class="btn waves-effect orange nex" style="width:100%; max-width:200px;">@@back@@</a><br />
|
||||
<h5>@@list@@</h5>
|
||||
<div id="acct-list"></div>
|
||||
<div class="divider"></div>
|
||||
</div>
|
||||
<div>
|
||||
<h5>@@add@@</h5>
|
||||
|
||||
<div class="hide-second">
|
||||
<a href="setting.html">@@haveExported@@</a>
|
||||
</div>
|
||||
<br />
|
||||
<div id="add">
|
||||
<div class="row">
|
||||
<div class="col s8">
|
||||
@@addAcct@@
|
||||
<div class="row">
|
||||
<div class="input-field col s6">
|
||||
<input type="text" id="autocomplete-input" class="autocomplete" placeholder="eg) mstdn.jp">
|
||||
<label for="autocomplete-input">URL</label>
|
||||
</div>
|
||||
<div class="col s4 loginBtnWrap">
|
||||
<button class="btn waves-effect" onclick="instance()"><i
|
||||
<div class="hide-second">
|
||||
<a href="setting.html">@@haveExported@@</a>
|
||||
</div>
|
||||
<br />
|
||||
<div id="add">
|
||||
<div class="row">
|
||||
<div class="col s8">
|
||||
@@addAcct@@
|
||||
<div class="row">
|
||||
<div class="input-field col s6">
|
||||
<input type="text" id="autocomplete-input" class="autocomplete" placeholder="eg) mstdn.jp">
|
||||
<label for="autocomplete-input">URL</label>
|
||||
</div>
|
||||
<div class="col s4 loginBtnWrap">
|
||||
<button class="btn waves-effect" onclick="instance()"><i
|
||||
class="material-icons left">login</i>Login</button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="pwa">
|
||||
@@codesetupwarn@@<br />
|
||||
<label>
|
||||
<div class="pwa">
|
||||
@@codesetupwarn@@<br />
|
||||
<label>
|
||||
<input type="checkbox" class="filled-in" id="linux" />
|
||||
<span>@@codesetup@@</span>
|
||||
</label>
|
||||
<br />
|
||||
</div>
|
||||
<label>
|
||||
<br />
|
||||
</div>
|
||||
<label>
|
||||
<input type="checkbox" class="filled-in" id="misskey" />
|
||||
<span>@@thisismisskey@@</span> </label><br />
|
||||
</div>
|
||||
<div class="col s4 scr" aria-hidden="true">
|
||||
<span style="font-family:Open Sans;">Supports</span>
|
||||
<div id="support" class="collection transparent"></div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div id="auth" style="display:none">
|
||||
@@codepastewarn@@<br />
|
||||
<input type="text" id="code" placeholder="@@codepaste@@" required />
|
||||
<button class="btn waves-effect" onclick="code()">Auth</button><br />
|
||||
<br />
|
||||
<a onclick="atSetup()" class="pointer">@@accessTokenSetup@@</a>
|
||||
<div id="compt" style="display:none" class="scr">
|
||||
<h5>ログイン前に必ずご確認ください</h5>
|
||||
<span id="compt-instance"></span>はバージョンが<span id="compt-ver"></span>のため以下の機能がご利用いただけません。
|
||||
<span id="compt-warn"
|
||||
style="display:none">また、このインスタンスはMastodonではなくそのAPI上の互換実装であり、TheDeskでは利用を想定していないため非保証となります。</span>
|
||||
<ul id="compt-list"></ul>
|
||||
</div>
|
||||
</div>
|
||||
<div id="misskeylogin" style="display:none">
|
||||
<h5>AppSecret</h5>
|
||||
@@misskeylogin@@<br />
|
||||
<input type="hidden" id="misskey-url" />
|
||||
<input type="text" id="misskey-key" placeholder="@@codepaste@@" required />
|
||||
<button class="btn waves-effect" onclick="misskeyLogin()">Auth</button><br />
|
||||
<br />
|
||||
<a onclick="atSetup('misskey')" class="pointer">@@accessTokenSetup@@</a>
|
||||
</div>
|
||||
</div>
|
||||
<div class="hide-first">
|
||||
<h5>@@mainacct@@</h5>
|
||||
<div class="input-field" style="width:300px">
|
||||
<span data-trans="your_acct">@@selacct@@</span>
|
||||
<br />
|
||||
<select id="main-acct-sel" class="acct-sel" style="color:black" onchange="mainacct()"></select>
|
||||
<label></label>
|
||||
</div>
|
||||
<ul id="domain-list" class="collection transparent"></ul>
|
||||
<div id="instance-data">
|
||||
Some instance data by
|
||||
<a href="https://instances.social" target="_blank">instances.social API</a><br />
|
||||
<h5 id="ins-title"></h5>
|
||||
Administered by:<a id="ins-admin"></a><br />
|
||||
<span id="ins-desc"></span><br />
|
||||
<img src="../../img/loading.svg" id="ins-prof" width="200" /><br />
|
||||
<br />
|
||||
@@domain@@:<span id="ins-name"></span><br />
|
||||
@@connect@@:<span id="ins-connect"></span>@@ko@@<br />
|
||||
@@toots@@:<span id="ins-toot"></span>@@ko@@<br />
|
||||
@@users@@:<span id="ins-user"></span>@@users@@<br />
|
||||
@@safety@@:<span id="ins-per"></span>%<br />
|
||||
@@ver@@:<span id="ins-ver"></span>@<span id="ins-upd"></span><br />
|
||||
</div>
|
||||
</div>
|
||||
<script type="text/javascript" src="../../js/ui/theme.js"></script>
|
||||
<script type="text/javascript" src="../../js/ui/tips.js"></script>
|
||||
<script type="text/javascript" src="../../js/platform/end.js"></script>
|
||||
<script type="text/javascript" src="../../js/common/sha256.js"></script>
|
||||
<script type="text/javascript" src="../../@@node_base@@/lodash/lodash.min.js"></script>
|
||||
<script type="text/javascript" src="../../js/login/instance.js"></script>
|
||||
<script type="text/javascript" src="../../js/login/manager.js"></script>
|
||||
<script type="text/javascript" src="../../js/tl/date.js"></script>
|
||||
<script>$('body').addClass(localStorage.getItem('platform'))</script>
|
||||
</div>
|
||||
<div class="col s4 scr" aria-hidden="true">
|
||||
<span style="font-family:Open Sans;">Supports</span>
|
||||
<div id="support" class="collection transparent"></div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div id="auth" style="display:none">
|
||||
@@codepastewarn@@<br />
|
||||
<input type="text" id="code" placeholder="@@codepaste@@" required />
|
||||
<button class="btn waves-effect" onclick="code()">Auth</button><br />
|
||||
<br />
|
||||
<a onclick="atSetup()" class="pointer">@@accessTokenSetup@@</a>
|
||||
<div id="compt" style="display:none" class="scr">
|
||||
<h5>ログイン前に必ずご確認ください</h5>
|
||||
<span id="compt-instance"></span>はバージョンが<span id="compt-ver"></span>のため以下の機能がご利用いただけません。
|
||||
<span id="compt-warn" style="display:none">また、このインスタンスはMastodonではなくそのAPI上の互換実装であり、TheDeskでは利用を想定していないため非保証となります。</span>
|
||||
<ul id="compt-list"></ul>
|
||||
</div>
|
||||
</div>
|
||||
<div id="misskeylogin" style="display:none">
|
||||
<h5>AppSecret</h5>
|
||||
@@misskeylogin@@<br />
|
||||
<input type="hidden" id="misskey-url" />
|
||||
<input type="text" id="misskey-key" placeholder="@@codepaste@@" required />
|
||||
<button class="btn waves-effect" onclick="misskeyLogin()">Auth</button><br />
|
||||
<br />
|
||||
<a onclick="atSetup('misskey')" class="pointer">@@accessTokenSetup@@</a>
|
||||
</div>
|
||||
</div>
|
||||
<div class="hide-first">
|
||||
<h5>@@mainacct@@</h5>
|
||||
<div class="input-field" style="width:300px">
|
||||
<span data-trans="your_acct">@@selacct@@</span>
|
||||
<br />
|
||||
<select id="main-acct-sel" class="acct-sel" style="color:black" onchange="mainacct()"></select>
|
||||
<label></label>
|
||||
</div>
|
||||
<ul id="domain-list" class="collection transparent"></ul>
|
||||
<div id="instance-data">
|
||||
Some instance data by
|
||||
<a href="https://instances.social" target="_blank">instances.social API</a><br />
|
||||
<h5 id="ins-title"></h5>
|
||||
Administered by:
|
||||
<a id="ins-admin"></a><br />
|
||||
<span id="ins-desc"></span><br />
|
||||
<img src="../../img/loading.svg" id="ins-prof" width="200" /><br />
|
||||
<br /> @@domain@@:
|
||||
<span id="ins-name"></span><br /> @@connect@@:
|
||||
<span id="ins-connect"></span>@@ko@@<br /> @@toots@@:
|
||||
<span id="ins-toot"></span>@@ko@@<br /> @@users@@:
|
||||
<span id="ins-user"></span>@@users@@<br /> @@safety@@:
|
||||
<span id="ins-per"></span>%<br /> @@ver@@:
|
||||
<span id="ins-ver"></span>@<span id="ins-upd"></span><br />
|
||||
</div>
|
||||
</div>
|
||||
<script type="text/javascript" src="../../js/ui/theme.js"></script>
|
||||
<script type="text/javascript" src="../../js/ui/tips.js"></script>
|
||||
<script type="text/javascript" src="../../js/platform/end.js"></script>
|
||||
<script type="text/javascript" src="../../js/common/sha256.js"></script>
|
||||
<script type="text/javascript" src="../../@@node_base@@/lodash/lodash.min.js"></script>
|
||||
<script type="text/javascript" src="../../js/login/instance.js"></script>
|
||||
<script type="text/javascript" src="../../js/login/manager.js"></script>
|
||||
<script type="text/javascript" src="../../js/tl/date.js"></script>
|
||||
<script>
|
||||
$('body').addClass(localStorage.getItem('platform'))
|
||||
</script>
|
||||
|
||||
</body>
|
||||
|
||||
|
File diff suppressed because it is too large
Load Diff
@@ -74,6 +74,7 @@
|
||||
"openBrowser": "Open in browser",
|
||||
"screenshot": "Take a screenshot",
|
||||
"copyURL": "Copy the URL",
|
||||
"copy": "Copy",
|
||||
"embed": "Embed",
|
||||
"toots": "Toots",
|
||||
"follow": "Follow",
|
||||
@@ -178,6 +179,7 @@
|
||||
"foundBug": "I found a bug",
|
||||
"show": "Show",
|
||||
"directory": "Directory",
|
||||
"discover": "Discover",
|
||||
"active": "Recently active",
|
||||
"newcomer": "New arrivals",
|
||||
"local_only": "Local only",
|
||||
|
@@ -103,6 +103,7 @@
|
||||
"lang_details_embed": "Embed HTML is cliped.",
|
||||
"lang_details_url": "URL of this toot is cliped.",
|
||||
"lang_details_txt": "Content of this toot is cliped.",
|
||||
"lang_details_fetch": "Fetcging toot data...",
|
||||
"lang_filter_nodata": "No data",
|
||||
"lang_filter_errordegree": "Please check a context",
|
||||
"lang_list_nodata": "No data",
|
||||
|
@@ -72,6 +72,7 @@
|
||||
"desc": "About this theme",
|
||||
"customImport": "Import of custom themes",
|
||||
"delete": "Delete",
|
||||
"preview": "Preview",
|
||||
"timeline": "Timeline Preferences",
|
||||
"timemode": "Time format",
|
||||
"relativetime": "Relative format:\"1 minutes ago\",\"3 days ago\"",
|
||||
@@ -119,6 +120,7 @@
|
||||
"remote_imgWarn": "All previews are got from your loginned cache server.",
|
||||
"moreContextMode": "Context Tool",
|
||||
"moreContextModeWarn": "On detail of the toot modal, show toots before / after the toot on LTL, FTL, UTL",
|
||||
"smallHeader": "Minimize column headers",
|
||||
"replySound": "Sound(Reply)",
|
||||
"favSound": "Sound(Fav)",
|
||||
"btSound": "Sound(Boost)",
|
||||
|
@@ -74,6 +74,7 @@
|
||||
"openBrowser": "Open in browser",
|
||||
"screenshot": "Take a screenshot",
|
||||
"copyURL": "Copy the URL",
|
||||
"copy": "Copy",
|
||||
"embed": "Embed",
|
||||
"toots": "Toots",
|
||||
"follow": "Follow",
|
||||
@@ -178,6 +179,7 @@
|
||||
"foundBug": "I found a bug",
|
||||
"show": "Show",
|
||||
"directory": "Directory",
|
||||
"discover": "Discover",
|
||||
"active": "Recently active",
|
||||
"newcomer": "New arrivals",
|
||||
"local_only": "Local only",
|
||||
|
@@ -103,6 +103,7 @@
|
||||
"lang_details_embed": "Embed HTML is cliped.",
|
||||
"lang_details_url": "URL of this toot is cliped.",
|
||||
"lang_details_txt": "Content of this toot is cliped.",
|
||||
"lang_details_fetch": "Fetcging toot data...",
|
||||
"lang_filter_nodata": "No data",
|
||||
"lang_filter_errordegree": "Please check a context",
|
||||
"lang_list_nodata": "No data",
|
||||
|
@@ -72,6 +72,7 @@
|
||||
"desc": "About this theme",
|
||||
"customImport": "Import of custom themes",
|
||||
"delete": "Delete",
|
||||
"preview": "Preview",
|
||||
"timeline": "Timeline Preferences",
|
||||
"timemode": "Time format",
|
||||
"relativetime": "Relative format:\"1 minutes ago\",\"3 days ago\"",
|
||||
@@ -119,6 +120,7 @@
|
||||
"remote_imgWarn": "All previews are got from your loginned cache server.",
|
||||
"moreContextMode": "Context Tool",
|
||||
"moreContextModeWarn": "On detail of the toot modal, show toots before / after the toot on LTL, FTL, UTL",
|
||||
"smallHeader": "Minimize column headers",
|
||||
"replySound": "Sound(Reply)",
|
||||
"favSound": "Sound(Fav)",
|
||||
"btSound": "Sound(Boost)",
|
||||
|
@@ -74,6 +74,7 @@
|
||||
"openBrowser": "Отваряне в браузъра",
|
||||
"screenshot": "Направете снимка на екрана",
|
||||
"copyURL": "Копирай URL адреса на този тоот",
|
||||
"copy": "Copy",
|
||||
"embed": "Закрепи",
|
||||
"toots": "Тоот",
|
||||
"follow": "Следвам",
|
||||
@@ -178,6 +179,7 @@
|
||||
"foundBug": "Намерена е грешка",
|
||||
"show": "Покажи",
|
||||
"directory": "Директория",
|
||||
"discover": "Discover",
|
||||
"active": "Наскоро активен",
|
||||
"newcomer": "Новодошли",
|
||||
"local_only": "Само местно",
|
||||
|
@@ -103,6 +103,7 @@
|
||||
"lang_details_embed": "Вграденият HTML е изрязан.",
|
||||
"lang_details_url": "URL адресът на този toot е изрязан.",
|
||||
"lang_details_txt": "Съдържанието на този toot е изрязано.",
|
||||
"lang_details_fetch": "Fetcging toot data...",
|
||||
"lang_filter_nodata": "Няма данни",
|
||||
"lang_filter_errordegree": "Моля, проверете контекстта",
|
||||
"lang_list_nodata": "Няма данни",
|
||||
|
@@ -72,6 +72,7 @@
|
||||
"desc": "Относно тази тема",
|
||||
"customImport": "Импортиране на персонализирани теми",
|
||||
"delete": "Изтрий",
|
||||
"preview": "Preview",
|
||||
"timeline": "Предпочитания за времевата линия",
|
||||
"timemode": "Времеви формат",
|
||||
"relativetime": "Относителен формат: „преди 1 минута“, „преди 3 дни“",
|
||||
@@ -119,6 +120,7 @@
|
||||
"remote_imgWarn": "All previews are got from your loginned cache server.",
|
||||
"moreContextMode": "Context Tool",
|
||||
"moreContextModeWarn": "On detail of the toot modal, show toots before / after the toot on LTL, FTL, UTL",
|
||||
"smallHeader": "Minimize column headers",
|
||||
"replySound": "Звук (Отговор)",
|
||||
"favSound": "Звук(Фаворит)",
|
||||
"btSound": "Звук(Подсилване)",
|
||||
|
@@ -74,6 +74,7 @@
|
||||
"openBrowser": "Open in browser",
|
||||
"screenshot": "Take a screenshot",
|
||||
"copyURL": "Copy the URL",
|
||||
"copy": "Copy",
|
||||
"embed": "Embed",
|
||||
"toots": "Toots",
|
||||
"follow": "Follow",
|
||||
@@ -178,6 +179,7 @@
|
||||
"foundBug": "I found a bug",
|
||||
"show": "Show",
|
||||
"directory": "Directory",
|
||||
"discover": "Discover",
|
||||
"active": "Recently active",
|
||||
"newcomer": "New arrivals",
|
||||
"local_only": "Local only",
|
||||
|
@@ -103,6 +103,7 @@
|
||||
"lang_details_embed": "Embed HTML is cliped.",
|
||||
"lang_details_url": "URL of this toot is cliped.",
|
||||
"lang_details_txt": "Content of this toot is cliped.",
|
||||
"lang_details_fetch": "Fetcging toot data...",
|
||||
"lang_filter_nodata": "No data",
|
||||
"lang_filter_errordegree": "Please check a context",
|
||||
"lang_list_nodata": "No data",
|
||||
|
@@ -72,6 +72,7 @@
|
||||
"desc": "About this theme",
|
||||
"customImport": "Import of custom themes",
|
||||
"delete": "Delete",
|
||||
"preview": "Preview",
|
||||
"timeline": "Timeline Preferences",
|
||||
"timemode": "Time format",
|
||||
"relativetime": "Relative format:\"1 minutes ago\",\"3 days ago\"",
|
||||
@@ -119,6 +120,7 @@
|
||||
"remote_imgWarn": "All previews are got from your loginned cache server.",
|
||||
"moreContextMode": "Context Tool",
|
||||
"moreContextModeWarn": "On detail of the toot modal, show toots before / after the toot on LTL, FTL, UTL",
|
||||
"smallHeader": "Minimize column headers",
|
||||
"replySound": "Sound(Reply)",
|
||||
"favSound": "Sound(Fav)",
|
||||
"btSound": "Sound(Boost)",
|
||||
|
@@ -74,6 +74,7 @@
|
||||
"openBrowser": "Otevřít v prohlížeči",
|
||||
"screenshot": "Vytvořit snímek obrazovky",
|
||||
"copyURL": "Kopírovat URL tohoto tootu",
|
||||
"copy": "Copy",
|
||||
"embed": "Vložit",
|
||||
"toots": "Tooty",
|
||||
"follow": "Sledovat",
|
||||
@@ -178,6 +179,7 @@
|
||||
"foundBug": "I found a bug",
|
||||
"show": "Show",
|
||||
"directory": "Directory",
|
||||
"discover": "Discover",
|
||||
"active": "Recently active",
|
||||
"newcomer": "New arrivals",
|
||||
"local_only": "Local only",
|
||||
|
@@ -103,6 +103,7 @@
|
||||
"lang_details_embed": "HTML pro vložení je zkopírován.",
|
||||
"lang_details_url": "URL adresa tohoto tootu je zkopírována.",
|
||||
"lang_details_txt": "Obsah tohoto tootu je zkopírován.",
|
||||
"lang_details_fetch": "Fetcging toot data...",
|
||||
"lang_filter_nodata": "Žádná data",
|
||||
"lang_filter_errordegree": "Prosím zkontrolujte kontext",
|
||||
"lang_list_nodata": "Žádná data",
|
||||
|
@@ -72,6 +72,7 @@
|
||||
"desc": "About this theme",
|
||||
"customImport": "Import of custom themes",
|
||||
"delete": "Delete",
|
||||
"preview": "Preview",
|
||||
"timeline": "Timeline Preferences",
|
||||
"timemode": "Časový formát",
|
||||
"relativetime": "Relativní formát: „před 1 minutou“, „před 3 dny“",
|
||||
@@ -119,6 +120,7 @@
|
||||
"remote_imgWarn": "All previews are got from your loginned cache server.",
|
||||
"moreContextMode": "Context Tool",
|
||||
"moreContextModeWarn": "On detail of the toot modal, show toots before / after the toot on LTL, FTL, UTL",
|
||||
"smallHeader": "Minimize column headers",
|
||||
"replySound": "Sound(Reply)",
|
||||
"favSound": "Sound(Fav)",
|
||||
"btSound": "Sound(Boost)",
|
||||
|
@@ -74,6 +74,7 @@
|
||||
"openBrowser": "Open in browser",
|
||||
"screenshot": "Take a screenshot",
|
||||
"copyURL": "Copy the URL",
|
||||
"copy": "Copy",
|
||||
"embed": "Embed",
|
||||
"toots": "Toots",
|
||||
"follow": "Follow",
|
||||
@@ -178,6 +179,7 @@
|
||||
"foundBug": "I found a bug",
|
||||
"show": "Show",
|
||||
"directory": "Directory",
|
||||
"discover": "Discover",
|
||||
"active": "Recently active",
|
||||
"newcomer": "New arrivals",
|
||||
"local_only": "Local only",
|
||||
|
@@ -103,6 +103,7 @@
|
||||
"lang_details_embed": "Embed HTML is cliped.",
|
||||
"lang_details_url": "URL of this toot is cliped.",
|
||||
"lang_details_txt": "Content of this toot is cliped.",
|
||||
"lang_details_fetch": "Fetcging toot data...",
|
||||
"lang_filter_nodata": "No data",
|
||||
"lang_filter_errordegree": "Please check a context",
|
||||
"lang_list_nodata": "No data",
|
||||
|
@@ -72,6 +72,7 @@
|
||||
"desc": "About this theme",
|
||||
"customImport": "Import of custom themes",
|
||||
"delete": "Delete",
|
||||
"preview": "Preview",
|
||||
"timeline": "Timeline Preferences",
|
||||
"timemode": "Time format",
|
||||
"relativetime": "Relative format:\"1 minutes ago\",\"3 days ago\"",
|
||||
@@ -119,6 +120,7 @@
|
||||
"remote_imgWarn": "All previews are got from your loginned cache server.",
|
||||
"moreContextMode": "Context Tool",
|
||||
"moreContextModeWarn": "On detail of the toot modal, show toots before / after the toot on LTL, FTL, UTL",
|
||||
"smallHeader": "Minimize column headers",
|
||||
"replySound": "Sound(Reply)",
|
||||
"favSound": "Sound(Fav)",
|
||||
"btSound": "Sound(Boost)",
|
||||
|
@@ -1,7 +1,7 @@
|
||||
{
|
||||
"draghere": "Zum Hochladen hier her ziehen",
|
||||
"nowOffline": "OFFLINE: all of your post is in the draft box and you should reload after re-connect to the Internet",
|
||||
"reOnline": "Now we are in the Internet, you should reload...",
|
||||
"reOnline": "Jetzt haben wir wieder Internet. Du solltest neuladen...",
|
||||
"close": "Schließen",
|
||||
"webSrc": "Suche im Internet",
|
||||
"tsSrc": "Bei Tootsearch suchen",
|
||||
@@ -74,6 +74,7 @@
|
||||
"openBrowser": "Im Browser öffnen",
|
||||
"screenshot": "Bildschirmfoto aufnehmen",
|
||||
"copyURL": "URL dieses Tröts kopieren",
|
||||
"copy": "Copy",
|
||||
"embed": "Einbinden",
|
||||
"toots": "Tröts",
|
||||
"follow": "Folgen",
|
||||
@@ -178,6 +179,7 @@
|
||||
"foundBug": "Ich habe einen Fehler gefunden",
|
||||
"show": "Zeige",
|
||||
"directory": "Verzeichnis",
|
||||
"discover": "Discover",
|
||||
"active": "Kürzlich aktiv",
|
||||
"newcomer": "Neu eingetroffen",
|
||||
"local_only": "Nur lokal",
|
||||
|
@@ -103,6 +103,7 @@
|
||||
"lang_details_embed": "Eingefügtes HTML wurde entfernt.",
|
||||
"lang_details_url": "URL dieses Tröts wurde entfernt.",
|
||||
"lang_details_txt": "Inhalt dieses Tröts wurde entfernt.",
|
||||
"lang_details_fetch": "Fetcging toot data...",
|
||||
"lang_filter_nodata": "Keine Daten",
|
||||
"lang_filter_errordegree": "Bitte überprüfen Sie den Kontext",
|
||||
"lang_list_nodata": "Keine Daten",
|
||||
|
@@ -72,6 +72,7 @@
|
||||
"desc": "Über dieses Design",
|
||||
"customImport": "Import von eigenen Designs",
|
||||
"delete": "Löschen",
|
||||
"preview": "Preview",
|
||||
"timeline": "Verlaufseinstellungen",
|
||||
"timemode": "Zeitformat",
|
||||
"relativetime": "Relatives Format:\"vor 1 Minuten\",\"vor 3 Tagen\"",
|
||||
@@ -119,6 +120,7 @@
|
||||
"remote_imgWarn": "All previews are got from your loginned cache server.",
|
||||
"moreContextMode": "Context Tool",
|
||||
"moreContextModeWarn": "On detail of the toot modal, show toots before / after the toot on LTL, FTL, UTL",
|
||||
"smallHeader": "Minimize column headers",
|
||||
"replySound": "Ton bei Antwort",
|
||||
"favSound": "Ton bei Favorit",
|
||||
"btSound": "Ton bei Verstärkung",
|
||||
|
@@ -74,6 +74,7 @@
|
||||
"openBrowser": "Open in browser",
|
||||
"screenshot": "Take a screenshot",
|
||||
"copyURL": "Copy the URL",
|
||||
"copy": "Copy",
|
||||
"embed": "Embed",
|
||||
"toots": "Toots",
|
||||
"follow": "Follow",
|
||||
@@ -178,6 +179,7 @@
|
||||
"foundBug": "I found a bug",
|
||||
"show": "Show",
|
||||
"directory": "Directory",
|
||||
"discover": "Discover",
|
||||
"active": "Recently active",
|
||||
"newcomer": "New arrivals",
|
||||
"local_only": "Local only",
|
||||
|
@@ -103,6 +103,7 @@
|
||||
"lang_details_embed": "Embed HTML is cliped.",
|
||||
"lang_details_url": "URL of this toot is cliped.",
|
||||
"lang_details_txt": "Content of this toot is cliped.",
|
||||
"lang_details_fetch": "Fetcging toot data...",
|
||||
"lang_filter_nodata": "No data",
|
||||
"lang_filter_errordegree": "Please check a context",
|
||||
"lang_list_nodata": "No data",
|
||||
|
@@ -72,6 +72,7 @@
|
||||
"desc": "About this theme",
|
||||
"customImport": "Import of custom themes",
|
||||
"delete": "Delete",
|
||||
"preview": "Preview",
|
||||
"timeline": "Timeline Preferences",
|
||||
"timemode": "Time format",
|
||||
"relativetime": "Relative format:\"1 minutes ago\",\"3 days ago\"",
|
||||
@@ -119,6 +120,7 @@
|
||||
"remote_imgWarn": "All previews are got from your loginned cache server.",
|
||||
"moreContextMode": "Context Tool",
|
||||
"moreContextModeWarn": "On detail of the toot modal, show toots before / after the toot on LTL, FTL, UTL",
|
||||
"smallHeader": "Minimize column headers",
|
||||
"replySound": "Sound(Reply)",
|
||||
"favSound": "Sound(Fav)",
|
||||
"btSound": "Sound(Boost)",
|
||||
|
@@ -74,6 +74,7 @@
|
||||
"openBrowser": "crwdns3190:0crwdne3190:0",
|
||||
"screenshot": "crwdns3192:0crwdne3192:0",
|
||||
"copyURL": "crwdns3194:0crwdne3194:0",
|
||||
"copy": "crwdns4586:0crwdne4586:0",
|
||||
"embed": "crwdns3196:0crwdne3196:0",
|
||||
"toots": "crwdns3198:0crwdne3198:0",
|
||||
"follow": "crwdns3200:0crwdne3200:0",
|
||||
@@ -178,6 +179,7 @@
|
||||
"foundBug": "crwdns4431:0crwdne4431:0",
|
||||
"show": "crwdns3388:0crwdne3388:0",
|
||||
"directory": "crwdns3390:0crwdne3390:0",
|
||||
"discover": "crwdns4590:0crwdne4590:0",
|
||||
"active": "crwdns3392:0crwdne3392:0",
|
||||
"newcomer": "crwdns3394:0crwdne3394:0",
|
||||
"local_only": "crwdns3396:0crwdne3396:0",
|
||||
|
@@ -103,6 +103,7 @@
|
||||
"lang_details_embed": "crwdns3584:0crwdne3584:0",
|
||||
"lang_details_url": "crwdns3586:0crwdne3586:0",
|
||||
"lang_details_txt": "crwdns3588:0crwdne3588:0",
|
||||
"lang_details_fetch": "crwdns4588:0crwdne4588:0",
|
||||
"lang_filter_nodata": "crwdns3590:0crwdne3590:0",
|
||||
"lang_filter_errordegree": "crwdns3592:0crwdne3592:0",
|
||||
"lang_list_nodata": "crwdns3594:0crwdne3594:0",
|
||||
|
@@ -72,6 +72,7 @@
|
||||
"desc": "crwdns3992:0crwdne3992:0",
|
||||
"customImport": "crwdns3996:0crwdne3996:0",
|
||||
"delete": "crwdns3998:0crwdne3998:0",
|
||||
"preview": "crwdns4584:0crwdne4584:0",
|
||||
"timeline": "crwdns4002:0crwdne4002:0",
|
||||
"timemode": "crwdns4004:0crwdne4004:0",
|
||||
"relativetime": "crwdns4006:0crwdne4006:0",
|
||||
@@ -119,6 +120,7 @@
|
||||
"remote_imgWarn": "crwdns4384:0crwdne4384:0",
|
||||
"moreContextMode": "crwdns4572:0crwdne4572:0",
|
||||
"moreContextModeWarn": "crwdns4574:0crwdne4574:0",
|
||||
"smallHeader": "crwdns4582:0crwdne4582:0",
|
||||
"replySound": "crwdns4088:0crwdne4088:0",
|
||||
"favSound": "crwdns4090:0crwdne4090:0",
|
||||
"btSound": "crwdns4092:0crwdne4092:0",
|
||||
|
@@ -1,184 +1,185 @@
|
||||
{
|
||||
"draghere":"Drag here to upload",
|
||||
"nowOffline":"OFFLINE: all of your post is in the draft box and you should reload after re-connect to the Internet",
|
||||
"reOnline":"Now we are in the Internet, you should reload...",
|
||||
"close":"Close",
|
||||
"draghere": "Drag here to upload",
|
||||
"nowOffline": "OFFLINE: all of your post is in the draft box and you should reload after re-connect to the Internet",
|
||||
"reOnline": "Now we are in the Internet, you should reload...",
|
||||
"close": "Close",
|
||||
"webSrc": "Search on Web",
|
||||
"tsSrc": "Search on tootsearch",
|
||||
"showSelectProf":"Show profile of the selecting account",
|
||||
"closethisbox":"Close this box",
|
||||
"toot":"Toot",
|
||||
"post-new":"Post new",
|
||||
"nsfwDes":"Mark media as sensitive",
|
||||
"cwDes":"Hide text behind warning",
|
||||
"selfile":"Attach..",
|
||||
"insertEmoji":"Emojis",
|
||||
"schedule":"Scheduled toot",
|
||||
"postat":"Post at",
|
||||
"scheduleWarn":"2.7.0~ Minimum time gap:5min(clock on the server may not be accurate.)",
|
||||
"clearToot":"Clear toot box",
|
||||
"replyMode":"Reply",
|
||||
"no":"No",
|
||||
"yes":"Yes",
|
||||
"temp":"Attaching files",
|
||||
"nothing":"None",
|
||||
"showSelectProf": "Show profile of the selecting account",
|
||||
"closethisbox": "Close this box",
|
||||
"toot": "Toot",
|
||||
"post-new": "Post new",
|
||||
"nsfwDes": "Mark media as sensitive",
|
||||
"cwDes": "Hide text behind warning",
|
||||
"selfile": "Attach..",
|
||||
"insertEmoji": "Emojis",
|
||||
"schedule": "Scheduled toot",
|
||||
"postat": "Post at",
|
||||
"scheduleWarn": "2.7.0~ Minimum time gap:5min(clock on the server may not be accurate.)",
|
||||
"clearToot": "Clear toot box",
|
||||
"replyMode": "Reply",
|
||||
"no": "No",
|
||||
"yes": "Yes",
|
||||
"temp": "Attaching files",
|
||||
"nothing": "None",
|
||||
"stamp": "Stamp",
|
||||
"stampWarn": "Your acct(aa@bb.cc) is printed on the right-bottom of the uploaded image",
|
||||
"vis":"Adjust status privacy",
|
||||
"cwtext":"Warning text",
|
||||
"selectVis":"Adjust status privacy",
|
||||
"publicJP":"",
|
||||
"unlistedJP":"",
|
||||
"privateJP":"",
|
||||
"localJP":"Local only",
|
||||
"sectoot":"Secondary Toot",
|
||||
"directJP":"",
|
||||
"emojiWarn":"",
|
||||
"emojiInsertWarn":"Some emojis are not able to be inserted.",
|
||||
"refreshEmoji":"Refresh emojis list",
|
||||
"closeThisBox":"Close this box",
|
||||
"showThisEmoji":" are shown.",
|
||||
"customEmoji":"Custom emojis",
|
||||
"peopleEmoji":"Emojis of people",
|
||||
"natureEmoji":"Emojis of nature",
|
||||
"foodEmoji":"Emojis of foods",
|
||||
"activityEmoji":"Emojis of activities",
|
||||
"placeEmoji":"Emojis of places",
|
||||
"thingsEmoji":"Emojis of tools",
|
||||
"symbolEmoji":"Emojis of symbols",
|
||||
"flagsEmoji":"Emojis of flags",
|
||||
"vis": "Adjust status privacy",
|
||||
"cwtext": "Warning text",
|
||||
"selectVis": "Adjust status privacy",
|
||||
"publicJP": "",
|
||||
"unlistedJP": "",
|
||||
"privateJP": "",
|
||||
"localJP": "Local only",
|
||||
"sectoot": "Secondary Toot",
|
||||
"directJP": "",
|
||||
"emojiWarn": "",
|
||||
"emojiInsertWarn": "Some emojis are not able to be inserted.",
|
||||
"refreshEmoji": "Refresh emojis list",
|
||||
"closeThisBox": "Close this box",
|
||||
"showThisEmoji": " are shown.",
|
||||
"customEmoji": "Custom emojis",
|
||||
"peopleEmoji": "Emojis of people",
|
||||
"natureEmoji": "Emojis of nature",
|
||||
"foodEmoji": "Emojis of foods",
|
||||
"activityEmoji": "Emojis of activities",
|
||||
"placeEmoji": "Emojis of places",
|
||||
"thingsEmoji": "Emojis of tools",
|
||||
"symbolEmoji": "Emojis of symbols",
|
||||
"flagsEmoji": "Emojis of flags",
|
||||
"draft": "Draft",
|
||||
"poll":"Poll",
|
||||
"pollDdisabled":"Polls: Disabled",
|
||||
"pollProvider":"Provider of Poll",
|
||||
"polluntil":"Hide 'votes' count until people vote it.",
|
||||
"choice":"Choice",
|
||||
"pollmulti":"Multiple select",
|
||||
"expires_in":"Expires in...(sec)",
|
||||
"contextBefore":"Context before this toot",
|
||||
"thisToot":"This toot",
|
||||
"contextAfter":"Context after this toot",
|
||||
"beforeLTL":"Local TL before this toot",
|
||||
"beforeUTL":"User TL before this toot",
|
||||
"afterLTL":"Local TL after this toot)",
|
||||
"afterUTL":"User TL before this toot",
|
||||
"afterFTL":"Federated TL after this toot",
|
||||
"favedPeople":"People who favourited it",
|
||||
"btedPeople":"People who boosted it",
|
||||
"useOtherAcct1":"Use other account",
|
||||
"useOtherAcct2":":unfav and unBT are disabled.",
|
||||
"poll": "Poll",
|
||||
"pollDdisabled": "Polls: Disabled",
|
||||
"pollProvider": "Provider of Poll",
|
||||
"polluntil": "Hide 'votes' count until people vote it.",
|
||||
"choice": "Choice",
|
||||
"pollmulti": "Multiple select",
|
||||
"expires_in": "Expires in...(sec)",
|
||||
"contextBefore": "Context before this toot",
|
||||
"thisToot": "This toot",
|
||||
"contextAfter": "Context after this toot",
|
||||
"beforeLTL": "Local TL before this toot",
|
||||
"beforeUTL": "User TL before this toot",
|
||||
"afterLTL": "Local TL after this toot)",
|
||||
"afterUTL": "User TL before this toot",
|
||||
"afterFTL": "Federated TL after this toot",
|
||||
"favedPeople": "People who favourited it",
|
||||
"btedPeople": "People who boosted it",
|
||||
"useOtherAcct1": "Use other account",
|
||||
"useOtherAcct2": ":unfav and unBT are disabled.",
|
||||
"btWithVis": "Boost with visibility",
|
||||
"reply":"Reply",
|
||||
"bt":"Boost",
|
||||
"favRegist":"Favourite",
|
||||
"openBrowser":"Open in browser",
|
||||
"screenshot":"Take a screenshot",
|
||||
"copyURL":"Copy the URL",
|
||||
"copy":"Copy",
|
||||
"embed":"Embed",
|
||||
"toots":"Toots",
|
||||
"follow":"Follow",
|
||||
"follower":"Follower",
|
||||
"utlColumn":"Show as a column",
|
||||
"timeline":"Timeline",
|
||||
"operateOtherAcct":"Cross-account",
|
||||
"list":"List",
|
||||
"makeNew":"Save",
|
||||
"blocks":"Blocks",
|
||||
"mutes":"Mutes",
|
||||
"block":"Block",
|
||||
"mute":"Mute",
|
||||
"domainBlock":"Domain block",
|
||||
"editProf":"Edit profile",
|
||||
"change":"Save",
|
||||
"followReq":"Follow requests",
|
||||
"likeHimOrHer":"Resembling",
|
||||
"endorse":"Feature on profile",
|
||||
"openinbrowser":"Open in browser",
|
||||
"mainacct":"Set it an main account",
|
||||
"frc":"Suggest",
|
||||
"more":"More",
|
||||
"revoverJP":" to ",
|
||||
"warnUseOtherAcct":"(Unable to unfollow)",
|
||||
"revoverJPde":"",
|
||||
"or":"or",
|
||||
"openProf":"Show profile",
|
||||
"warnListRegist":"Follow to add this user to lists.",
|
||||
"blockDomain":"Add blocking domain",
|
||||
"name":"Display name",
|
||||
"note":"Note",
|
||||
"editProfImg":"Change avataor",
|
||||
"editHeader":"Change header image",
|
||||
"blocked":"You are blocked. Why?",
|
||||
"likeUserDes":"Get people resembling this user.",
|
||||
"get":"Get",
|
||||
"historyBack":"Back",
|
||||
"empUser":"Emphasize this user",
|
||||
"supportme":"Support TheDesk!",
|
||||
"TheDeskDes":"TheDesk has no ad, you need no charge to unlock premium features. We need your friendly support!",
|
||||
"PatreonSupport":"Support on Patreon",
|
||||
"PixivSupport":"Support on Pixiv FANBOX",
|
||||
"AWLSupport":"Amazon Wish List",
|
||||
"SendAmazonGift1":"Give me Amazon Gift Card:",
|
||||
"SendAmazonGift2":"",
|
||||
"monthly":"Monthly",
|
||||
"once":"Once",
|
||||
"local":"Local",
|
||||
"localMedia":"Local(Media)",
|
||||
"home":"Home",
|
||||
"fed":"Federated",
|
||||
"fedMedia":"Federated(Media)",
|
||||
"dm":"Direct Message",
|
||||
"integratedTLDes":"Integrated(Local/Home)",
|
||||
"localPlusDes":"LTL+Reply+BT",
|
||||
"notf":"Notifications",
|
||||
"reply": "Reply",
|
||||
"bt": "Boost",
|
||||
"favRegist": "Favourite",
|
||||
"openBrowser": "Open in browser",
|
||||
"screenshot": "Take a screenshot",
|
||||
"copyURL": "Copy the URL",
|
||||
"copy": "Copy",
|
||||
"embed": "Embed",
|
||||
"toots": "Toots",
|
||||
"follow": "Follow",
|
||||
"follower": "Follower",
|
||||
"utlColumn": "Show as a column",
|
||||
"timeline": "Timeline",
|
||||
"operateOtherAcct": "Cross-account",
|
||||
"list": "List",
|
||||
"makeNew": "Save",
|
||||
"blocks": "Blocks",
|
||||
"mutes": "Mutes",
|
||||
"block": "Block",
|
||||
"mute": "Mute",
|
||||
"domainBlock": "Domain block",
|
||||
"editProf": "Edit profile",
|
||||
"change": "Save",
|
||||
"followReq": "Follow requests",
|
||||
"likeHimOrHer": "Resembling",
|
||||
"endorse": "Feature on profile",
|
||||
"openinbrowser": "Open in browser",
|
||||
"mainacct": "Set it an main account",
|
||||
"frc": "Suggest",
|
||||
"more": "More",
|
||||
"revoverJP": " to ",
|
||||
"warnUseOtherAcct": "(Unable to unfollow)",
|
||||
"revoverJPde": "",
|
||||
"or": "or",
|
||||
"openProf": "Show profile",
|
||||
"warnListRegist": "Follow to add this user to lists.",
|
||||
"blockDomain": "Add blocking domain",
|
||||
"name": "Display name",
|
||||
"note": "Note",
|
||||
"editProfImg": "Change avataor",
|
||||
"editHeader": "Change header image",
|
||||
"blocked": "You are blocked. Why?",
|
||||
"likeUserDes": "Get people resembling this user.",
|
||||
"get": "Get",
|
||||
"historyBack": "Back",
|
||||
"empUser": "Emphasize this user",
|
||||
"supportme": "Support TheDesk!",
|
||||
"TheDeskDes": "TheDesk has no ad, you need no charge to unlock premium features. We need your friendly support!",
|
||||
"PatreonSupport": "Support on Patreon",
|
||||
"PixivSupport": "Support on Pixiv FANBOX",
|
||||
"AWLSupport": "Amazon Wish List",
|
||||
"SendAmazonGift1": "Give me Amazon Gift Card:",
|
||||
"SendAmazonGift2": "",
|
||||
"monthly": "Monthly",
|
||||
"once": "Once",
|
||||
"local": "Local",
|
||||
"localMedia": "Local(Media)",
|
||||
"home": "Home",
|
||||
"fed": "Federated",
|
||||
"fedMedia": "Federated(Media)",
|
||||
"dm": "Direct Message",
|
||||
"integratedTLDes": "Integrated(Local/Home)",
|
||||
"localPlusDes": "LTL+Reply+BT",
|
||||
"notf": "Notifications",
|
||||
"bookmark": "Bookmarks",
|
||||
"showThisTL":"Show this TL:",
|
||||
"webviewWarn":"TweetDeck with customed TJDeck(<a href='https://gist.github.com/cutls/8787a55d2c1c53274e68a427966046a6' target='_blank'>Code</a>/<a href='https://gist.github.com/totoraj930/d1394dadb51d75666a76829f61e7280c' target='_blank'>TJDeck</a>).",
|
||||
"add":"Add",
|
||||
"search":"Search",
|
||||
"sortSet":"Sort",
|
||||
"selectAcct":"Account(Scroll to show all)",
|
||||
"listLocale":"List",
|
||||
"filterWord":"Filtering words",
|
||||
"degree":"Filter contexts",
|
||||
"conver":"Conversations",
|
||||
"prof":"Profiles",
|
||||
"option":"Options",
|
||||
"matchWord":"Whole word",
|
||||
"warnMatchWord":"Nice for Latin language",
|
||||
"except":"Drop instead of hide",
|
||||
"exceptWorn":"Filtered toots will disappear irreversibly, even if filter is later removed",
|
||||
"avalableBefore":"Expire after",
|
||||
"warnAvBefore":"Unset or \"0\" means \"Never\"",
|
||||
"warnAvBefore2":"This value may contain some error",
|
||||
"unlimited":"Never",
|
||||
"days":"day(s)",
|
||||
"hours":"hour(s)",
|
||||
"mins":"minute(s)",
|
||||
"secs":"second(s)",
|
||||
"warnOnIntegratedTL":"Integrated TL/Plus TL will hide both Home-filtering words and Local-filtering words.",
|
||||
"helloTheDesk":"Internal error: please clear all data(at setting page) <b>All data will be deleted.</b>",
|
||||
"addColumn":"Add a column",
|
||||
"sortColumns":"Sort",
|
||||
"acctMan":"Account Manager",
|
||||
"filter":"Filter",
|
||||
"setting":"Preferences",
|
||||
"reverse":"Toot button layout reverse",
|
||||
"f5":"Reload TL",
|
||||
"nanoDes":"The smallest Mastodon,",
|
||||
"verTips":"Version",
|
||||
"clockTips":"Clock",
|
||||
"ramTips":"RAM status",
|
||||
"changeTips":"Change Tips",
|
||||
"helpAndLogs":"Help & Log",
|
||||
"help":"Help",
|
||||
"contactwithlog":"If you tell me bugs(not working or something) with this log, I can detect what is wrong more easily.",
|
||||
"about":"About TheDesk",
|
||||
"hereAddColumns":"<- Add TL",
|
||||
"showThisTL": "Show this TL:",
|
||||
"webviewWarn": "TweetDeck with customed TJDeck(<a href='https://gist.github.com/cutls/8787a55d2c1c53274e68a427966046a6' target='_blank'>Code</a>/<a href='https://gist.github.com/totoraj930/d1394dadb51d75666a76829f61e7280c' target='_blank'>TJDeck</a>).",
|
||||
"add": "Add",
|
||||
"search": "Search",
|
||||
"sortSet": "Sort",
|
||||
"selectAcct": "Account(Scroll to show all)",
|
||||
"listLocale": "List",
|
||||
"filterWord": "Filtering words",
|
||||
"degree": "Filter contexts",
|
||||
"conver": "Conversations",
|
||||
"prof": "Profiles",
|
||||
"option": "Options",
|
||||
"matchWord": "Whole word",
|
||||
"warnMatchWord": "Nice for Latin language",
|
||||
"except": "Drop instead of hide",
|
||||
"exceptWorn": "Filtered toots will disappear irreversibly, even if filter is later removed",
|
||||
"avalableBefore": "Expire after",
|
||||
"warnAvBefore": "Unset or \"0\" means \"Never\"",
|
||||
"warnAvBefore2": "This value may contain some error",
|
||||
"unlimited": "Never",
|
||||
"days": "day(s)",
|
||||
"hours": "hour(s)",
|
||||
"mins": "minute(s)",
|
||||
"secs": "second(s)",
|
||||
"warnOnIntegratedTL": "Integrated TL/Plus TL will hide both Home-filtering words and Local-filtering words.",
|
||||
"helloTheDesk": "Internal error: please clear all data(at setting page) <b>All data will be deleted.</b>",
|
||||
"addColumn": "Add a column",
|
||||
"sortColumns": "Sort",
|
||||
"acctMan": "Account Manager",
|
||||
"filter": "Filter",
|
||||
"setting": "Preferences",
|
||||
"reverse": "Toot button layout reverse",
|
||||
"f5": "Reload TL",
|
||||
"nanoDes": "The smallest Mastodon,",
|
||||
"verTips": "Version",
|
||||
"clockTips": "Clock",
|
||||
"ramTips": "RAM status",
|
||||
"changeTips": "Change Tips",
|
||||
"helpAndLogs": "Help & Log",
|
||||
"help": "Help",
|
||||
"contactwithlog": "If you tell me bugs(not working or something) with this log, I can detect what is wrong more easily.",
|
||||
"about": "About TheDesk",
|
||||
"hereAddColumns": "<- Add TL",
|
||||
"foundBug": "I found a bug",
|
||||
"show": "Show",
|
||||
"directory": "Directory",
|
||||
"discover": "Discover",
|
||||
"active": "Recently active",
|
||||
"newcomer": "New arrivals",
|
||||
"local_only": "Local only",
|
||||
|
@@ -103,6 +103,7 @@
|
||||
"lang_details_embed": "Embed HTML is cliped.",
|
||||
"lang_details_url": "URL of this toot is cliped.",
|
||||
"lang_details_txt": "Content of this toot is cliped.",
|
||||
"lang_details_fetch": "Fetcging toot data...",
|
||||
"lang_filter_nodata": "No data",
|
||||
"lang_filter_errordegree": "Please check a context",
|
||||
"lang_list_nodata": "No data",
|
||||
|
@@ -74,6 +74,7 @@
|
||||
"openBrowser": "Abrir en navegador web",
|
||||
"screenshot": "Tomar captura de pantalla",
|
||||
"copyURL": "Copiar dirección web de este toot",
|
||||
"copy": "Copiar",
|
||||
"embed": "Insertar",
|
||||
"toots": "Toots",
|
||||
"follow": "Seguir",
|
||||
@@ -178,6 +179,7 @@
|
||||
"foundBug": "Encontré un error",
|
||||
"show": "Mostrar",
|
||||
"directory": "Directorio",
|
||||
"discover": "Discover",
|
||||
"active": "Recientemente activo",
|
||||
"newcomer": "Recién llegados",
|
||||
"local_only": "Sólo local",
|
||||
|
@@ -103,6 +103,7 @@
|
||||
"lang_details_embed": "El código HTML de inserción se copió al portapapeles.",
|
||||
"lang_details_url": "La dirección web de este toot se copió al portapapeles.",
|
||||
"lang_details_txt": "El contenido de este toot se copió al portapapeles.",
|
||||
"lang_details_fetch": "Fetcging toot data...",
|
||||
"lang_filter_nodata": "Sin datos",
|
||||
"lang_filter_errordegree": "Por favor, comprobá un contexto",
|
||||
"lang_list_nodata": "Sin datos",
|
||||
|
@@ -9,7 +9,7 @@
|
||||
"default": "Predeterminado",
|
||||
"change": "Cambiar",
|
||||
"select": "Seleccionar",
|
||||
"exec": "Exec",
|
||||
"exec": "Ejec",
|
||||
"env": "Configuración del sistema",
|
||||
"setlang": "Idiomas",
|
||||
"backup": "Importación y exportación de la configuración",
|
||||
@@ -18,8 +18,8 @@
|
||||
"export": "Exportar",
|
||||
"hardwareAcceleration": "Deshabilitar la aceleración por hardware",
|
||||
"hardwareAccelerationWarn": "Inicio automático",
|
||||
"webview": "Webview Integration",
|
||||
"webviewWarn": "To use TweetDeck Integration, please turn on. You should understand it may lessen security level.",
|
||||
"webview": "Integración de Webview",
|
||||
"webviewWarn": "Para usar Integración de TweetDeck, por favor activalo. Tené en cuenta que puede reducir el nivel de seguridad.",
|
||||
"theme": "Temas",
|
||||
"popup": "Ventana emergente de notificaciones (en Windows)",
|
||||
"popupwarn": "Establecer \"0\" para ocultar",
|
||||
@@ -72,6 +72,7 @@
|
||||
"desc": "Acerca de este tema",
|
||||
"customImport": "Importación de temas personalizados",
|
||||
"delete": "Eliminar",
|
||||
"preview": "Previsualización",
|
||||
"timeline": "Configuración de la línea temporal",
|
||||
"timemode": "Formato del tiempo",
|
||||
"relativetime": "Formato relativo: \"hace 1 minuto\", \"hace 3 días\"",
|
||||
@@ -117,8 +118,9 @@
|
||||
"markerswarn": "Mastodon 3.0~. Compartido en interface web y clientes de terceros soportados.",
|
||||
"remote_img": "Obtener imágenes del servidor remoto",
|
||||
"remote_imgWarn": "Todas las previsualizaciones se obtienen de tu servidor de caché conectado.",
|
||||
"moreContextMode": "Context Tool",
|
||||
"moreContextModeWarn": "On detail of the toot modal, show toots before / after the toot on LTL, FTL, UTL",
|
||||
"moreContextMode": "Herramienta de contexto",
|
||||
"moreContextModeWarn": "En detalle de la modal de toot, mostrar toots antes / después del toot en LTL, FTL, UTL",
|
||||
"smallHeader": "Minimizar cabeceras de columna",
|
||||
"replySound": "Sonido (respuesta)",
|
||||
"favSound": "Sonido (marcado como favorito)",
|
||||
"btSound": "Sonido (retoot)",
|
||||
|
@@ -74,6 +74,7 @@
|
||||
"openBrowser": "Open in browser",
|
||||
"screenshot": "Take a screenshot",
|
||||
"copyURL": "Copy the URL",
|
||||
"copy": "Copy",
|
||||
"embed": "Embed",
|
||||
"toots": "Toots",
|
||||
"follow": "Follow",
|
||||
@@ -178,6 +179,7 @@
|
||||
"foundBug": "I found a bug",
|
||||
"show": "Show",
|
||||
"directory": "Directory",
|
||||
"discover": "Discover",
|
||||
"active": "Recently active",
|
||||
"newcomer": "New arrivals",
|
||||
"local_only": "Local only",
|
||||
|
@@ -103,6 +103,7 @@
|
||||
"lang_details_embed": "Embed HTML is cliped.",
|
||||
"lang_details_url": "URL of this toot is cliped.",
|
||||
"lang_details_txt": "Content of this toot is cliped.",
|
||||
"lang_details_fetch": "Fetcging toot data...",
|
||||
"lang_filter_nodata": "Sin datos",
|
||||
"lang_filter_errordegree": "Please check a context",
|
||||
"lang_list_nodata": "Sin datos",
|
||||
|
@@ -72,6 +72,7 @@
|
||||
"desc": "About this theme",
|
||||
"customImport": "Import of custom themes",
|
||||
"delete": "Delete",
|
||||
"preview": "Preview",
|
||||
"timeline": "Timeline Preferences",
|
||||
"timemode": "Time format",
|
||||
"relativetime": "Relative format:\"1 minutes ago\",\"3 days ago\"",
|
||||
@@ -119,6 +120,7 @@
|
||||
"remote_imgWarn": "All previews are got from your loginned cache server.",
|
||||
"moreContextMode": "Context Tool",
|
||||
"moreContextModeWarn": "On detail of the toot modal, show toots before / after the toot on LTL, FTL, UTL",
|
||||
"smallHeader": "Minimize column headers",
|
||||
"replySound": "Sound(Reply)",
|
||||
"favSound": "Sound(Fav)",
|
||||
"btSound": "Sound(Boost)",
|
||||
|
@@ -74,6 +74,7 @@
|
||||
"openBrowser": "Open in browser",
|
||||
"screenshot": "Take a screenshot",
|
||||
"copyURL": "Copy the URL",
|
||||
"copy": "Copy",
|
||||
"embed": "Embed",
|
||||
"toots": "Toots",
|
||||
"follow": "Follow",
|
||||
@@ -178,6 +179,7 @@
|
||||
"foundBug": "I found a bug",
|
||||
"show": "Show",
|
||||
"directory": "Directory",
|
||||
"discover": "Discover",
|
||||
"active": "Recently active",
|
||||
"newcomer": "New arrivals",
|
||||
"local_only": "Local only",
|
||||
|
@@ -103,6 +103,7 @@
|
||||
"lang_details_embed": "Embed HTML is cliped.",
|
||||
"lang_details_url": "URL of this toot is cliped.",
|
||||
"lang_details_txt": "Content of this toot is cliped.",
|
||||
"lang_details_fetch": "Fetcging toot data...",
|
||||
"lang_filter_nodata": "No data",
|
||||
"lang_filter_errordegree": "Please check a context",
|
||||
"lang_list_nodata": "No data",
|
||||
|
@@ -72,6 +72,7 @@
|
||||
"desc": "About this theme",
|
||||
"customImport": "Import of custom themes",
|
||||
"delete": "Delete",
|
||||
"preview": "Preview",
|
||||
"timeline": "Timeline Preferences",
|
||||
"timemode": "Time format",
|
||||
"relativetime": "Relative format:\"1 minutes ago\",\"3 days ago\"",
|
||||
@@ -119,6 +120,7 @@
|
||||
"remote_imgWarn": "All previews are got from your loginned cache server.",
|
||||
"moreContextMode": "Context Tool",
|
||||
"moreContextModeWarn": "On detail of the toot modal, show toots before / after the toot on LTL, FTL, UTL",
|
||||
"smallHeader": "Minimize column headers",
|
||||
"replySound": "Sound(Reply)",
|
||||
"favSound": "Sound(Fav)",
|
||||
"btSound": "Sound(Boost)",
|
||||
|
@@ -74,6 +74,7 @@
|
||||
"openBrowser": "Ouvrir dans un navigateur",
|
||||
"screenshot": "Prendre une capture d'écran",
|
||||
"copyURL": "Copier l'URL",
|
||||
"copy": "Copy",
|
||||
"embed": "Embarquer",
|
||||
"toots": "Pouets",
|
||||
"follow": "Suivre",
|
||||
@@ -178,6 +179,7 @@
|
||||
"foundBug": "J'ai trouvé un bug",
|
||||
"show": "Afficher",
|
||||
"directory": "Répertoire",
|
||||
"discover": "Discover",
|
||||
"active": "Actif récemment",
|
||||
"newcomer": "Nouveautés",
|
||||
"local_only": "Local uniquement",
|
||||
|
@@ -103,6 +103,7 @@
|
||||
"lang_details_embed": "Le code HTML intégré est tronqué.",
|
||||
"lang_details_url": "L'URL de ce pouet est tronqué.",
|
||||
"lang_details_txt": "Le contenu de ce pouet est tronqué.",
|
||||
"lang_details_fetch": "Fetcging toot data...",
|
||||
"lang_filter_nodata": "Aucune donnée",
|
||||
"lang_filter_errordegree": "Veuillez vérifier le contexte",
|
||||
"lang_list_nodata": "Aucune donnée",
|
||||
|
@@ -72,6 +72,7 @@
|
||||
"desc": "À propos de ce thème",
|
||||
"customImport": "Importer des thèmes personnalisés",
|
||||
"delete": "Supprimer",
|
||||
"preview": "Preview",
|
||||
"timeline": "Préférence de la TimeLine",
|
||||
"timemode": "Format de l’heure",
|
||||
"relativetime": "Format relatif:\"Il y a 1 minutes\",\"3 jours\"",
|
||||
@@ -119,6 +120,7 @@
|
||||
"remote_imgWarn": "Toutes les prévisualisations sont obtenues depuis le serveur où vous êtes connecté.",
|
||||
"moreContextMode": "Context Tool",
|
||||
"moreContextModeWarn": "On detail of the toot modal, show toots before / after the toot on LTL, FTL, UTL",
|
||||
"smallHeader": "Minimize column headers",
|
||||
"replySound": "Son (Réponse)",
|
||||
"favSound": "Son (Fav)",
|
||||
"btSound": "Son (Boost)",
|
||||
|
@@ -74,6 +74,7 @@
|
||||
"openBrowser": "Open in browser",
|
||||
"screenshot": "Take a screenshot",
|
||||
"copyURL": "Copy the URL",
|
||||
"copy": "Copy",
|
||||
"embed": "Embed",
|
||||
"toots": "Toots",
|
||||
"follow": "Follow",
|
||||
@@ -178,6 +179,7 @@
|
||||
"foundBug": "I found a bug",
|
||||
"show": "Show",
|
||||
"directory": "Directory",
|
||||
"discover": "Discover",
|
||||
"active": "Recently active",
|
||||
"newcomer": "New arrivals",
|
||||
"local_only": "Local only",
|
||||
|
@@ -103,6 +103,7 @@
|
||||
"lang_details_embed": "Embed HTML is cliped.",
|
||||
"lang_details_url": "URL of this toot is cliped.",
|
||||
"lang_details_txt": "Content of this toot is cliped.",
|
||||
"lang_details_fetch": "Fetcging toot data...",
|
||||
"lang_filter_nodata": "No data",
|
||||
"lang_filter_errordegree": "Please check a context",
|
||||
"lang_list_nodata": "No data",
|
||||
|
@@ -72,6 +72,7 @@
|
||||
"desc": "About this theme",
|
||||
"customImport": "Import of custom themes",
|
||||
"delete": "Delete",
|
||||
"preview": "Preview",
|
||||
"timeline": "Timeline Preferences",
|
||||
"timemode": "Time format",
|
||||
"relativetime": "Relative format:\"1 minutes ago\",\"3 days ago\"",
|
||||
@@ -119,6 +120,7 @@
|
||||
"remote_imgWarn": "All previews are got from your loginned cache server.",
|
||||
"moreContextMode": "Context Tool",
|
||||
"moreContextModeWarn": "On detail of the toot modal, show toots before / after the toot on LTL, FTL, UTL",
|
||||
"smallHeader": "Minimize column headers",
|
||||
"replySound": "Sound(Reply)",
|
||||
"favSound": "Sound(Fav)",
|
||||
"btSound": "Sound(Boost)",
|
||||
|
@@ -74,6 +74,7 @@
|
||||
"openBrowser": "Open in browser",
|
||||
"screenshot": "Take a screenshot",
|
||||
"copyURL": "Copy the URL",
|
||||
"copy": "Copy",
|
||||
"embed": "Embed",
|
||||
"toots": "Toots",
|
||||
"follow": "Follow",
|
||||
@@ -178,6 +179,7 @@
|
||||
"foundBug": "I found a bug",
|
||||
"show": "Show",
|
||||
"directory": "Directory",
|
||||
"discover": "Discover",
|
||||
"active": "Recently active",
|
||||
"newcomer": "New arrivals",
|
||||
"local_only": "Local only",
|
||||
|
@@ -103,6 +103,7 @@
|
||||
"lang_details_embed": "Embed HTML is cliped.",
|
||||
"lang_details_url": "URL of this toot is cliped.",
|
||||
"lang_details_txt": "Content of this toot is cliped.",
|
||||
"lang_details_fetch": "Fetcging toot data...",
|
||||
"lang_filter_nodata": "No data",
|
||||
"lang_filter_errordegree": "Please check a context",
|
||||
"lang_list_nodata": "No data",
|
||||
|
@@ -72,6 +72,7 @@
|
||||
"desc": "About this theme",
|
||||
"customImport": "Import of custom themes",
|
||||
"delete": "Delete",
|
||||
"preview": "Preview",
|
||||
"timeline": "Timeline Preferences",
|
||||
"timemode": "Time format",
|
||||
"relativetime": "Relative format:\"1 minutes ago\",\"3 days ago\"",
|
||||
@@ -119,6 +120,7 @@
|
||||
"remote_imgWarn": "All previews are got from your loginned cache server.",
|
||||
"moreContextMode": "Context Tool",
|
||||
"moreContextModeWarn": "On detail of the toot modal, show toots before / after the toot on LTL, FTL, UTL",
|
||||
"smallHeader": "Minimize column headers",
|
||||
"replySound": "Sound(Reply)",
|
||||
"favSound": "Sound(Fav)",
|
||||
"btSound": "Sound(Boost)",
|
||||
|
@@ -47,7 +47,7 @@
|
||||
"thingsEmoji": "Emoji di strumenti",
|
||||
"symbolEmoji": "Emoji di simboli",
|
||||
"flagsEmoji": "Emoji delle bandiere",
|
||||
"draft": "Draft",
|
||||
"draft": "Bozza",
|
||||
"poll": "Sondaggio",
|
||||
"pollDdisabled": "Sondaggi: Disabilitato",
|
||||
"pollProvider": "Fornitore del sondaggio",
|
||||
@@ -74,6 +74,7 @@
|
||||
"openBrowser": "Apri nel browser",
|
||||
"screenshot": "Cattura una schermata",
|
||||
"copyURL": "Copia l'URL",
|
||||
"copy": "Copia",
|
||||
"embed": "Incorpora",
|
||||
"toots": "Toots",
|
||||
"follow": "Segui",
|
||||
@@ -178,6 +179,7 @@
|
||||
"foundBug": "Ho trovato un bug",
|
||||
"show": "Mostra",
|
||||
"directory": "Directory",
|
||||
"discover": "Discover",
|
||||
"active": "Recentemente attivo",
|
||||
"newcomer": "Nuovi arrivi",
|
||||
"local_only": "Solo locale",
|
||||
|
@@ -49,7 +49,7 @@
|
||||
"lang_manager_godev": "Apri DevCenter di Misskey. Mostriamo anche un documento ufficiale da riferire.",
|
||||
"lang_manager_logout": "Esci",
|
||||
"lang_manager_maxChars": "Max caratteri dei toot",
|
||||
"lang_manager_refreshAt": "Login with this domain",
|
||||
"lang_manager_refreshAt": "Accedi con questo dominio",
|
||||
"lang_bbmd_misskey": "TheDesk considera \"@\" come risposta, ma mettere altri parametri. Non elencato su Mastodon significa Home su Misskey.",
|
||||
"lang_emoji_get": "Ottieni emoji",
|
||||
"lang_emoji_custom": "Emoji personalizzate",
|
||||
@@ -89,7 +89,7 @@
|
||||
"lang_status_endorse": "Caratteristica sul profilo",
|
||||
"lang_status_followers": "Follower",
|
||||
"lang_status_active": "Ultimo stato",
|
||||
"lang_secure_draft": "Add to draft",
|
||||
"lang_secure_draft": "Aggiungi alla bozza",
|
||||
"lang_secure_useThis": "Usa questo",
|
||||
"lang_secure_deleteThis": "Elimina questo",
|
||||
"lang_suggest_nodata": "Si prega di ottenere l'elenco delle emoji per mostrare il suggerimento.",
|
||||
@@ -103,6 +103,7 @@
|
||||
"lang_details_embed": "HTML incorporato è sotto la lente.",
|
||||
"lang_details_url": "L'URL di questo toot è sotto la lente.",
|
||||
"lang_details_txt": "Il contenuto di questo toot è ritagliato.",
|
||||
"lang_details_fetch": "Fetcging toot data...",
|
||||
"lang_filter_nodata": "Nessun dato",
|
||||
"lang_filter_errordegree": "Si prega di controllare un contesto",
|
||||
"lang_list_nodata": "Nessun dato",
|
||||
@@ -154,7 +155,7 @@
|
||||
"lang_layout_unread": "Non Letta",
|
||||
"lang_layout_tagManager": "Gestore timeline tag",
|
||||
"lang_layout_announ": "Annuncio: il contatore è il numero dei tuoi annunci non letti. Se non mostrato, significa che gli annunci sono tutti contrassegnati come letti.",
|
||||
"lang_layout_resetWidth": "Stretch this column",
|
||||
"lang_layout_resetWidth": "Allunga questa colonna",
|
||||
"lang_sort_gothis": "Vai a questa colonna",
|
||||
"lang_sort_remthis": "Elimina questa colonna",
|
||||
"lang_spotify_img": "Allega una copertina album",
|
||||
|
@@ -72,6 +72,7 @@
|
||||
"desc": "Informazioni su questo tema",
|
||||
"customImport": "Importa temi personalizzati",
|
||||
"delete": "Elimina",
|
||||
"preview": "Preview",
|
||||
"timeline": "Preferenze Della Timeline",
|
||||
"timemode": "Formato orario",
|
||||
"relativetime": "Formato relativo:\"1 minuti fa\",\"3 giorni fa\"",
|
||||
@@ -119,6 +120,7 @@
|
||||
"remote_imgWarn": "Tutte le anteprime sono ottenute dal server cache loginato.",
|
||||
"moreContextMode": "Context Tool",
|
||||
"moreContextModeWarn": "On detail of the toot modal, show toots before / after the toot on LTL, FTL, UTL",
|
||||
"smallHeader": "Minimize column headers",
|
||||
"replySound": "Suono(Rispondi)",
|
||||
"favSound": "Suono (Fav)",
|
||||
"btSound": "Suono (Boost)",
|
||||
|
@@ -1,182 +1,183 @@
|
||||
{
|
||||
"draghere":"ドラッグしてみ?(ドラッグしたらすぐアップロードされるで)",
|
||||
"nowOffline":"オフラインやで。投稿は全部下書きに行くし、もしオンラインなったら再読み込みしたらええで。",
|
||||
"reOnline":"オンライン戻ったから再読み込みしてな。",
|
||||
"close":"Close",
|
||||
"draghere": "ドラッグしてみ?(ドラッグしたらすぐアップロードされるで)",
|
||||
"nowOffline": "オフラインやで。投稿は全部下書きに行くし、もしオンラインなったら再読み込みしたらええで。",
|
||||
"reOnline": "オンライン戻ったから再読み込みしてな。",
|
||||
"close": "Close",
|
||||
"webSrc": "Webでさがす",
|
||||
"tsSrc": "tootsearchでさがす",
|
||||
"showSelectProf":"このアカウントのプロフィール出す",
|
||||
"closethisbox":"このボックスなおす",
|
||||
"post-new":"投稿",
|
||||
"toot":"トゥート",
|
||||
"nsfwDes":"画像を見たらあかんやつにする",
|
||||
"cwDes":"コンテンツワーニング(ほんまに見るんか?って聞く)",
|
||||
"selfile":"ファイル選ぶ",
|
||||
"insertEmoji":"絵文字入れる",
|
||||
"schedule":"時間指定投稿",
|
||||
"postat":"時間指定投稿",
|
||||
"scheduleWarn":"2.7.0~ 5分は待ってな。サーバーの時計おうてるかは知らんで。",
|
||||
"clearToot":"トゥートボックスのクリア",
|
||||
"replyMode":"返信モード",
|
||||
"no":"いいえ",
|
||||
"yes":"はい",
|
||||
"temp":"添付ファイル",
|
||||
"nothing":"なし",
|
||||
"vis":"公開範囲",
|
||||
"cwtext":"警告文",
|
||||
"selectVis":"公開範囲指定",
|
||||
"publicJP":"公開",
|
||||
"unlistedJP":"未収載",
|
||||
"privateJP":"非公開",
|
||||
"localJP":"ローカル限定",
|
||||
"directJP":"ダイレクト",
|
||||
"sectoot":"こっちでもトゥート",
|
||||
"emojiWarn":"サーバーちゃうかったら絵文字もちゃうで。",
|
||||
"emojiInsertWarn":"入力できん絵文字もあるけどしゃーない。",
|
||||
"refreshEmoji":"絵文字更新",
|
||||
"closeThisBox":"ボックスなおす",
|
||||
"showThisEmoji":"一覧を表示中",
|
||||
"customEmoji":"カスタム絵文字",
|
||||
"peopleEmoji":"ひと",
|
||||
"natureEmoji":"自然",
|
||||
"foodEmoji":"食べ物",
|
||||
"activityEmoji":"活動",
|
||||
"placeEmoji":"場所",
|
||||
"thingsEmoji":"もの",
|
||||
"symbolEmoji":"記号",
|
||||
"flagsEmoji":"国旗",
|
||||
"showSelectProf": "このアカウントのプロフィール出す",
|
||||
"closethisbox": "このボックスなおす",
|
||||
"post-new": "投稿",
|
||||
"toot": "トゥート",
|
||||
"nsfwDes": "画像を見たらあかんやつにする",
|
||||
"cwDes": "コンテンツワーニング(ほんまに見るんか?って聞く)",
|
||||
"selfile": "ファイル選ぶ",
|
||||
"insertEmoji": "絵文字入れる",
|
||||
"schedule": "時間指定投稿",
|
||||
"postat": "時間指定投稿",
|
||||
"scheduleWarn": "2.7.0~ 5分は待ってな。サーバーの時計おうてるかは知らんで。",
|
||||
"clearToot": "トゥートボックスのクリア",
|
||||
"replyMode": "返信モード",
|
||||
"no": "いいえ",
|
||||
"yes": "はい",
|
||||
"temp": "添付ファイル",
|
||||
"nothing": "なし",
|
||||
"vis": "公開範囲",
|
||||
"cwtext": "警告文",
|
||||
"selectVis": "公開範囲指定",
|
||||
"publicJP": "公開",
|
||||
"unlistedJP": "未収載",
|
||||
"privateJP": "非公開",
|
||||
"localJP": "ローカル限定",
|
||||
"directJP": "ダイレクト",
|
||||
"sectoot": "こっちでもトゥート",
|
||||
"emojiWarn": "サーバーちゃうかったら絵文字もちゃうで。",
|
||||
"emojiInsertWarn": "入力できん絵文字もあるけどしゃーない。",
|
||||
"refreshEmoji": "絵文字更新",
|
||||
"closeThisBox": "ボックスなおす",
|
||||
"showThisEmoji": "一覧を表示中",
|
||||
"customEmoji": "カスタム絵文字",
|
||||
"peopleEmoji": "ひと",
|
||||
"natureEmoji": "自然",
|
||||
"foodEmoji": "食べ物",
|
||||
"activityEmoji": "活動",
|
||||
"placeEmoji": "場所",
|
||||
"thingsEmoji": "もの",
|
||||
"symbolEmoji": "記号",
|
||||
"flagsEmoji": "国旗",
|
||||
"draft": "下書き(タンス)",
|
||||
"poll":"アンケート",
|
||||
"pollDdisabled":"アンケート付けへん",
|
||||
"pollProvider":"アンケートのプロバイダ",
|
||||
"choice":"選択肢",
|
||||
"polluntil":"あんたが投票するまで票数教えへん",
|
||||
"pollmulti":"複数選択を許可",
|
||||
"expires_in":"有効期限(秒)",
|
||||
"contextBefore":"これより前の会話",
|
||||
"thisToot":"対象のトゥート",
|
||||
"contextAfter":"これより後の会話",
|
||||
"beforeLTL":"これより前のLocal TL(誰にエアリプしてん)",
|
||||
"beforeUTL":"これより前のユーザーTL(誰のトゥート言及してんねん)",
|
||||
"afterLTL":"これより後のLocal TL(誰のトゥート言及してんねん)",
|
||||
"afterUTL":"これより後のユーザーTL(誰のトゥート言及してんねん)",
|
||||
"afterFTL":"これより後の連合TL(誰のトゥート言及してんねん)",
|
||||
"favedPeople":"誰がお気に入りに登録してるんや",
|
||||
"btedPeople":"誰がお気に入りブーストしたんや",
|
||||
"useOtherAcct1":"他のアカウント使う",
|
||||
"useOtherAcct2":"の解除はできひん",
|
||||
"poll": "アンケート",
|
||||
"pollDdisabled": "アンケート付けへん",
|
||||
"pollProvider": "アンケートのプロバイダ",
|
||||
"choice": "選択肢",
|
||||
"polluntil": "あんたが投票するまで票数教えへん",
|
||||
"pollmulti": "複数選択を許可",
|
||||
"expires_in": "有効期限(秒)",
|
||||
"contextBefore": "これより前の会話",
|
||||
"thisToot": "対象のトゥート",
|
||||
"contextAfter": "これより後の会話",
|
||||
"beforeLTL": "これより前のLocal TL(誰にエアリプしてん)",
|
||||
"beforeUTL": "これより前のユーザーTL(誰のトゥート言及してんねん)",
|
||||
"afterLTL": "これより後のLocal TL(誰のトゥート言及してんねん)",
|
||||
"afterUTL": "これより後のユーザーTL(誰のトゥート言及してんねん)",
|
||||
"afterFTL": "これより後の連合TL(誰のトゥート言及してんねん)",
|
||||
"favedPeople": "誰がお気に入りに登録してるんや",
|
||||
"btedPeople": "誰がお気に入りブーストしたんや",
|
||||
"useOtherAcct1": "他のアカウント使う",
|
||||
"useOtherAcct2": "の解除はできひん",
|
||||
"btWithVis": "公開範囲も決めてからブースト",
|
||||
"reply":"返信",
|
||||
"bt":"ブースト",
|
||||
"favRegist":"お気に入り",
|
||||
"openBrowser":"ブラウザで開く",
|
||||
"screenshot":"スクリーンショット",
|
||||
"copyURL":"URLをコピー",
|
||||
"copy":"コピー",
|
||||
"embed":"埋め込む",
|
||||
"toots":"トゥート",
|
||||
"follow":"フォロー",
|
||||
"follower":"フォロワー",
|
||||
"utlColumn":"カラムとして追加",
|
||||
"timeline":"タイムライン",
|
||||
"operateOtherAcct":"他のアカウント使うて何かする",
|
||||
"list":"リスト",
|
||||
"makeNew":"新しいやつ",
|
||||
"blocks":"ブロック",
|
||||
"mutes":"ミュート",
|
||||
"block":"ブロック",
|
||||
"mute":"ミュート",
|
||||
"domainBlock":"ドメインブロック",
|
||||
"editProf":"プロフィールいらう",
|
||||
"change":"変更",
|
||||
"followReq":"フォローリクエスト",
|
||||
"likeHimOrHer":"似とうユーザー",
|
||||
"frc":"あんたにおすすめ",
|
||||
"more":"他無いんか?",
|
||||
"endorse":"紹介したる",
|
||||
"openinbrowser":"ブラウザで開く",
|
||||
"mainacct":"メインアカウントに設定",
|
||||
"revoverJP":"する",
|
||||
"warnUseOtherAcct":"(解除はでけへん。)",
|
||||
"revoverJPde":"で",
|
||||
"or":"それか",
|
||||
"openProf":"プロフィール出す",
|
||||
"warnListRegist":"リストに入れたかったらまずフォローせなあかん。",
|
||||
"blockDomain":"ブロックするドメイン",
|
||||
"name":"名前",
|
||||
"note":"自己紹介",
|
||||
"editProfImg":"アバター変える",
|
||||
"editHeader":"ヘッダー変える",
|
||||
"blocked":"なんでか知らんけどブロックされとるわ",
|
||||
"likeUserDes":"あんたと似とうユーザーを発掘すんで。",
|
||||
"get":"取得",
|
||||
"historyBack":"一つ前のユーザーデータ",
|
||||
"empUser":"ユーザー強調",
|
||||
"supportme":"支援してくれんか?",
|
||||
"TheDeskDes":"TheDeskは営利目的ちゃうし、有料機能や広告は一切あらへん。<br>せやけど君らが支援してくれとうからTheDeskは続いてるんや。ほんまありがとうな。",
|
||||
"PatreonSupport":"Patreonで支援",
|
||||
"PixivSupport":"Pixiv FANBOXで支援",
|
||||
"AWLSupport":"Amazonほしいものリスト",
|
||||
"SendAmazonGift1":"",
|
||||
"SendAmazonGift2":"にAmazonギフトカードを送る",
|
||||
"monthly":"月額支援(大歓迎)",
|
||||
"once":"一度限りの支援(めっちゃ歓迎)",
|
||||
"local":"ローカル",
|
||||
"localMedia":"ローカル(メディア)",
|
||||
"home":"ホーム",
|
||||
"fed":"連合",
|
||||
"fedMedia":"連合(メディア)",
|
||||
"dm":"ダイレクトメッセージ",
|
||||
"integratedTLDes":"統合(ローカルとホーム)",
|
||||
"localPlusDes":"統合(LTL+BT+返信)",
|
||||
"notf":"通知",
|
||||
"reply": "返信",
|
||||
"bt": "ブースト",
|
||||
"favRegist": "お気に入り",
|
||||
"openBrowser": "ブラウザで開く",
|
||||
"screenshot": "スクリーンショット",
|
||||
"copyURL": "URLをコピー",
|
||||
"copy": "コピー",
|
||||
"embed": "埋め込む",
|
||||
"toots": "トゥート",
|
||||
"follow": "フォロー",
|
||||
"follower": "フォロワー",
|
||||
"utlColumn": "カラムとして追加",
|
||||
"timeline": "タイムライン",
|
||||
"operateOtherAcct": "他のアカウント使うて何かする",
|
||||
"list": "リスト",
|
||||
"makeNew": "新しいやつ",
|
||||
"blocks": "ブロック",
|
||||
"mutes": "ミュート",
|
||||
"block": "ブロック",
|
||||
"mute": "ミュート",
|
||||
"domainBlock": "ドメインブロック",
|
||||
"editProf": "プロフィールいらう",
|
||||
"change": "変更",
|
||||
"followReq": "フォローリクエスト",
|
||||
"likeHimOrHer": "似とうユーザー",
|
||||
"frc": "あんたにおすすめ",
|
||||
"more": "他無いんか?",
|
||||
"endorse": "紹介したる",
|
||||
"openinbrowser": "ブラウザで開く",
|
||||
"mainacct": "メインアカウントに設定",
|
||||
"revoverJP": "する",
|
||||
"warnUseOtherAcct": "(解除はでけへん。)",
|
||||
"revoverJPde": "で",
|
||||
"or": "それか",
|
||||
"openProf": "プロフィール出す",
|
||||
"warnListRegist": "リストに入れたかったらまずフォローせなあかん。",
|
||||
"blockDomain": "ブロックするドメイン",
|
||||
"name": "名前",
|
||||
"note": "自己紹介",
|
||||
"editProfImg": "アバター変える",
|
||||
"editHeader": "ヘッダー変える",
|
||||
"blocked": "なんでか知らんけどブロックされとるわ",
|
||||
"likeUserDes": "あんたと似とうユーザーを発掘すんで。",
|
||||
"get": "取得",
|
||||
"historyBack": "一つ前のユーザーデータ",
|
||||
"empUser": "ユーザー強調",
|
||||
"supportme": "支援してくれんか?",
|
||||
"TheDeskDes": "TheDeskは営利目的ちゃうし、有料機能や広告は一切あらへん。<br>せやけど君らが支援してくれとうからTheDeskは続いてるんや。ほんまありがとうな。",
|
||||
"PatreonSupport": "Patreonで支援",
|
||||
"PixivSupport": "Pixiv FANBOXで支援",
|
||||
"AWLSupport": "Amazonほしいものリスト",
|
||||
"SendAmazonGift1": "",
|
||||
"SendAmazonGift2": "にAmazonギフトカードを送る",
|
||||
"monthly": "月額支援(大歓迎)",
|
||||
"once": "一度限りの支援(めっちゃ歓迎)",
|
||||
"local": "ローカル",
|
||||
"localMedia": "ローカル(メディア)",
|
||||
"home": "ホーム",
|
||||
"fed": "連合",
|
||||
"fedMedia": "連合(メディア)",
|
||||
"dm": "ダイレクトメッセージ",
|
||||
"integratedTLDes": "統合(ローカルとホーム)",
|
||||
"localPlusDes": "統合(LTL+BT+返信)",
|
||||
"notf": "通知",
|
||||
"bookmark": "ブックマーク",
|
||||
"showThisTL":"表示するタイムライン",
|
||||
"webviewWarn":"TweetDeckを出すで。TJDeckをカスタムしたものが読み込まれる(<a href='https://gist.github.com/cutls/8787a55d2c1c53274e68a427966046a6' target='_blank'>Code</a>/<a href='https://gist.github.com/totoraj930/d1394dadb51d75666a76829f61e7280c' target='_blank'>TJDeck</a>)。",
|
||||
"add":"追加",
|
||||
"search":"検索",
|
||||
"sortSet":"並べ替え設定",
|
||||
"selectAcct":"選択(スクロールして全選択肢表示)",
|
||||
"filterWord":"フィルターワード",
|
||||
"listLocale":"一覧",
|
||||
"degree":"適応範囲",
|
||||
"conver":"会話",
|
||||
"prof":"プロフィール",
|
||||
"option":"オプション",
|
||||
"matchWord":"単語マッチ",
|
||||
"warnMatchWord":"非ラテン系の文字列では「単語マッチ」はせん方がええで。(これはフリかも知れん)",
|
||||
"except":"除外",
|
||||
"exceptWorn":"「除外」にしてもうたらマッチしたトゥートはフィルター解除しても二度と表示されへん。",
|
||||
"avalableBefore":"有効期限(あと)",
|
||||
"warnAvBefore":"未指定(または0分)で「無期限」や",
|
||||
"warnAvBefore2":"この数字はそんなに正確ちゃうで",
|
||||
"unlimited":"無期限",
|
||||
"days":"日",
|
||||
"hours":"時間",
|
||||
"mins":"分",
|
||||
"secs":"秒",
|
||||
"warnOnIntegratedTL":"Integrated TL/Plus TLは、公開/ホームのフィルターワードをどっちも合わせて処理するで",
|
||||
"helloTheDesk":"やってもうた…再読込して治らんかったら初期化(全データ削除)してな…(予め設定をエクスポートしとくんやで)",
|
||||
"addColumn":"カラム追加",
|
||||
"sortColumns":"カラム一覧/並べ替え",
|
||||
"acctMan":"アカウントマネージャー",
|
||||
"filter":"フィルター",
|
||||
"setting":"設定",
|
||||
"reverse":"トゥートボタンの左右入れ替え",
|
||||
"f5":"TL再読込",
|
||||
"nanoDes":"めっちゃ小さいマストドン。",
|
||||
"verTips":"バージョン",
|
||||
"clockTips":"時計",
|
||||
"ramTips":"システムメモリ容量",
|
||||
"changeTips":"Tips変更",
|
||||
"helpAndLogs":"ヘルプとログ",
|
||||
"help":"ヘルプ",
|
||||
"contactwithlog":"なんか知らんけど動かんとかそういうのを開発者のお兄さんお姉さんに言うときは下のログのそこらへんの時間に起きたなぁってのを拾って連絡するとなんかの助けになるかも知れん。ついでやけどこのウィンドウ全体を横に引き伸ばしたらいい感じに見れるで",
|
||||
"about":"このソフトについて",
|
||||
"hereAddColumns":"←ここからTL追加",
|
||||
"showThisTL": "表示するタイムライン",
|
||||
"webviewWarn": "TweetDeckを出すで。TJDeckをカスタムしたものが読み込まれる(<a href='https://gist.github.com/cutls/8787a55d2c1c53274e68a427966046a6' target='_blank'>Code</a>/<a href='https://gist.github.com/totoraj930/d1394dadb51d75666a76829f61e7280c' target='_blank'>TJDeck</a>)。",
|
||||
"add": "追加",
|
||||
"search": "検索",
|
||||
"sortSet": "並べ替え設定",
|
||||
"selectAcct": "選択(スクロールして全選択肢表示)",
|
||||
"filterWord": "フィルターワード",
|
||||
"listLocale": "一覧",
|
||||
"degree": "適応範囲",
|
||||
"conver": "会話",
|
||||
"prof": "プロフィール",
|
||||
"option": "オプション",
|
||||
"matchWord": "単語マッチ",
|
||||
"warnMatchWord": "非ラテン系の文字列では「単語マッチ」はせん方がええで。(これはフリかも知れん)",
|
||||
"except": "除外",
|
||||
"exceptWorn": "「除外」にしてもうたらマッチしたトゥートはフィルター解除しても二度と表示されへん。",
|
||||
"avalableBefore": "有効期限(あと)",
|
||||
"warnAvBefore": "未指定(または0分)で「無期限」や",
|
||||
"warnAvBefore2": "この数字はそんなに正確ちゃうで",
|
||||
"unlimited": "無期限",
|
||||
"days": "日",
|
||||
"hours": "時間",
|
||||
"mins": "分",
|
||||
"secs": "秒",
|
||||
"warnOnIntegratedTL": "Integrated TL/Plus TLは、公開/ホームのフィルターワードをどっちも合わせて処理するで",
|
||||
"helloTheDesk": "やってもうた…再読込して治らんかったら初期化(全データ削除)してな…(予め設定をエクスポートしとくんやで)",
|
||||
"addColumn": "カラム追加",
|
||||
"sortColumns": "カラム一覧/並べ替え",
|
||||
"acctMan": "アカウントマネージャー",
|
||||
"filter": "フィルター",
|
||||
"setting": "設定",
|
||||
"reverse": "トゥートボタンの左右入れ替え",
|
||||
"f5": "TL再読込",
|
||||
"nanoDes": "めっちゃ小さいマストドン。",
|
||||
"verTips": "バージョン",
|
||||
"clockTips": "時計",
|
||||
"ramTips": "システムメモリ容量",
|
||||
"changeTips": "Tips変更",
|
||||
"helpAndLogs": "ヘルプとログ",
|
||||
"help": "ヘルプ",
|
||||
"contactwithlog": "なんか知らんけど動かんとかそういうのを開発者のお兄さんお姉さんに言うときは下のログのそこらへんの時間に起きたなぁってのを拾って連絡するとなんかの助けになるかも知れん。ついでやけどこのウィンドウ全体を横に引き伸ばしたらいい感じに見れるで",
|
||||
"about": "このソフトについて",
|
||||
"hereAddColumns": "←ここからTL追加",
|
||||
"foundBug": "バグあるんやけど",
|
||||
"show": "表示",
|
||||
"directory": "ディレクトリ",
|
||||
"discover": "見つける",
|
||||
"active": "最新活動順",
|
||||
"newcomer": "新規順",
|
||||
"local_only": "ローカルだけ",
|
||||
|
@@ -102,6 +102,7 @@
|
||||
"lang_details_embed": "埋め込みHTMLがコピーされたで。",
|
||||
"lang_details_url": "トゥートURLがコピーされたで。",
|
||||
"lang_details_txt": "トゥート本文がコピーされたで。",
|
||||
"lang_details_fetch": "トゥートの情報を引っ張って来とるで…",
|
||||
"lang_filter_nodata": "フィルターは無いで",
|
||||
"lang_filter_errordegree": "適応範囲は一つ以上チェックせなあかんで。",
|
||||
"lang_list_nodata": "リストは無いで",
|
||||
|
@@ -1,184 +1,185 @@
|
||||
{
|
||||
"draghere":"ここにドラッグして添付(ドラッグと同時にアップロードされます)",
|
||||
"nowOffline":"オフラインです。投稿はすべて下書きに追加されます。オンライン復帰時には再読み込みを推奨します。",
|
||||
"draghere": "ここにドラッグして添付(ドラッグと同時にアップロードされます)",
|
||||
"nowOffline": "オフラインです。投稿はすべて下書きに追加されます。オンライン復帰時には再読み込みを推奨します。",
|
||||
"reOnline": "オンラインに復帰しました。再読み込みを推奨します。",
|
||||
"webSrc": "Webで検索",
|
||||
"tsSrc": "tootsearchで検索",
|
||||
"close":"Close",
|
||||
"showSelectProf":"選択したアカウントのプロフィールを表示",
|
||||
"closethisbox":"このボックスを閉じる",
|
||||
"post-new":"投稿",
|
||||
"toot":"トゥート",
|
||||
"nsfwDes":"画像に制限を付与",
|
||||
"cwDes":"コンテンツワーニング(トゥートを表示する前にメッセージで隠す)",
|
||||
"selfile":"ファイルを選択",
|
||||
"insertEmoji":"絵文字を挿入",
|
||||
"schedule":"時間指定投稿",
|
||||
"postat":"時間指定投稿",
|
||||
"scheduleWarn":"2.7.0~ 5分以内には投稿できません。サーバーの時計が正確とは限りません。",
|
||||
"clearToot":"トゥートボックスのクリア",
|
||||
"replyMode":"返信モード",
|
||||
"no":"いいえ",
|
||||
"yes":"はい",
|
||||
"temp":"添付ファイル",
|
||||
"nothing":"なし",
|
||||
"close": "Close",
|
||||
"showSelectProf": "選択したアカウントのプロフィールを表示",
|
||||
"closethisbox": "このボックスを閉じる",
|
||||
"post-new": "投稿",
|
||||
"toot": "トゥート",
|
||||
"nsfwDes": "画像に制限を付与",
|
||||
"cwDes": "コンテンツワーニング(トゥートを表示する前にメッセージで隠す)",
|
||||
"selfile": "ファイルを選択",
|
||||
"insertEmoji": "絵文字を挿入",
|
||||
"schedule": "時間指定投稿",
|
||||
"postat": "時間指定投稿",
|
||||
"scheduleWarn": "2.7.0~ 5分以内には投稿できません。サーバーの時計が正確とは限りません。",
|
||||
"clearToot": "トゥートボックスのクリア",
|
||||
"replyMode": "返信モード",
|
||||
"no": "いいえ",
|
||||
"yes": "はい",
|
||||
"temp": "添付ファイル",
|
||||
"nothing": "なし",
|
||||
"stamp": "スタンプ",
|
||||
"stampWarn": "画像右下にアカウント名(aa@bb.cc)テキストを挿入します",
|
||||
"vis":"公開範囲",
|
||||
"cwtext":"警告文",
|
||||
"selectVis":"公開範囲指定",
|
||||
"publicJP":"公開",
|
||||
"unlistedJP":"未収載",
|
||||
"privateJP":"非公開",
|
||||
"localJP":"ローカル限定",
|
||||
"directJP":"ダイレクト",
|
||||
"sectoot":"セカンダリートゥート",
|
||||
"emojiWarn":"サーバーによって実装が異なります。",
|
||||
"emojiInsertWarn":"一部絵文字は入力できません。",
|
||||
"refreshEmoji":"絵文字更新",
|
||||
"closeThisBox":"このボックスを閉じる",
|
||||
"showThisEmoji":"一覧を表示中",
|
||||
"customEmoji":"カスタム絵文字",
|
||||
"peopleEmoji":"ひと",
|
||||
"natureEmoji":"自然",
|
||||
"foodEmoji":"食べ物",
|
||||
"activityEmoji":"活動",
|
||||
"placeEmoji":"場所",
|
||||
"thingsEmoji":"もの",
|
||||
"symbolEmoji":"記号",
|
||||
"flagsEmoji":"国旗",
|
||||
"vis": "公開範囲",
|
||||
"cwtext": "警告文",
|
||||
"selectVis": "公開範囲指定",
|
||||
"publicJP": "公開",
|
||||
"unlistedJP": "未収載",
|
||||
"privateJP": "非公開",
|
||||
"localJP": "ローカル限定",
|
||||
"directJP": "ダイレクト",
|
||||
"sectoot": "セカンダリートゥート",
|
||||
"emojiWarn": "サーバーによって実装が異なります。",
|
||||
"emojiInsertWarn": "一部絵文字は入力できません。",
|
||||
"refreshEmoji": "絵文字更新",
|
||||
"closeThisBox": "このボックスを閉じる",
|
||||
"showThisEmoji": "一覧を表示中",
|
||||
"customEmoji": "カスタム絵文字",
|
||||
"peopleEmoji": "ひと",
|
||||
"natureEmoji": "自然",
|
||||
"foodEmoji": "食べ物",
|
||||
"activityEmoji": "活動",
|
||||
"placeEmoji": "場所",
|
||||
"thingsEmoji": "もの",
|
||||
"symbolEmoji": "記号",
|
||||
"flagsEmoji": "国旗",
|
||||
"draft": "下書き",
|
||||
"poll":"アンケート",
|
||||
"pollDdisabled":"アンケートを使用しない",
|
||||
"pollProvider":"アンケートのプロバイダ",
|
||||
"choice":"選択肢",
|
||||
"polluntil":"投票するまで票数を隠す",
|
||||
"pollmulti":"複数選択を許可",
|
||||
"expires_in":"有効期限(秒)",
|
||||
"contextBefore":"これより前の会話",
|
||||
"thisToot":"対象のトゥート",
|
||||
"contextAfter":"これより後の会話",
|
||||
"beforeLTL":"これより前のLocal TL(エアリプソース確認)",
|
||||
"beforeUTL":"これより前のユーザーTL(BTソース確認)",
|
||||
"afterLTL":"これより後のLocal TL(言及確認)",
|
||||
"afterUTL":"これより後のユーザーTL(言及確認)",
|
||||
"afterFTL":"これより後の連合TL(言及確認)",
|
||||
"favedPeople":"このトゥートをお気に入りに登録した人",
|
||||
"btedPeople":"このトゥートをブーストした人",
|
||||
"useOtherAcct1":"他のアカウントを使用",
|
||||
"useOtherAcct2":"の解除はできません",
|
||||
"poll": "アンケート",
|
||||
"pollDdisabled": "アンケートを使用しない",
|
||||
"pollProvider": "アンケートのプロバイダ",
|
||||
"choice": "選択肢",
|
||||
"polluntil": "投票するまで票数を隠す",
|
||||
"pollmulti": "複数選択を許可",
|
||||
"expires_in": "有効期限(秒)",
|
||||
"contextBefore": "これより前の会話",
|
||||
"thisToot": "対象のトゥート",
|
||||
"contextAfter": "これより後の会話",
|
||||
"beforeLTL": "これより前のLocal TL(エアリプソース確認)",
|
||||
"beforeUTL": "これより前のユーザーTL(BTソース確認)",
|
||||
"afterLTL": "これより後のLocal TL(言及確認)",
|
||||
"afterUTL": "これより後のユーザーTL(言及確認)",
|
||||
"afterFTL": "これより後の連合TL(言及確認)",
|
||||
"favedPeople": "このトゥートをお気に入りに登録した人",
|
||||
"btedPeople": "このトゥートをブーストした人",
|
||||
"useOtherAcct1": "他のアカウントを使用",
|
||||
"useOtherAcct2": "の解除はできません",
|
||||
"btWithVis": "公開範囲を指定してブースト",
|
||||
"reply":"返信",
|
||||
"bt":"ブースト",
|
||||
"favRegist":"お気に入り",
|
||||
"openBrowser":"ブラウザで開く",
|
||||
"screenshot":"スクリーンショット",
|
||||
"copyURL":"URLをコピー",
|
||||
"copy":"コピー",
|
||||
"embed":"埋め込む",
|
||||
"toots":"トゥート",
|
||||
"follow":"フォロー",
|
||||
"follower":"フォロワー",
|
||||
"utlColumn":"カラムとして追加",
|
||||
"timeline":"タイムライン",
|
||||
"operateOtherAcct":"他のアカウントで操作",
|
||||
"list":"リスト",
|
||||
"makeNew":"新規作成",
|
||||
"blocks":"ブロック",
|
||||
"mutes":"ミュート",
|
||||
"block":"ブロック",
|
||||
"mute":"ミュート",
|
||||
"domainBlock":"ドメインブロック",
|
||||
"editProf":"プロフィール編集",
|
||||
"change":"変更",
|
||||
"followReq":"フォローリクエスト",
|
||||
"likeHimOrHer":"似てる",
|
||||
"frc":"おすすめ",
|
||||
"more":"もっと",
|
||||
"endorse":"紹介する",
|
||||
"openinbrowser":"ブラウザで開く",
|
||||
"mainacct":"メインアカウントに設定",
|
||||
"revoverJP":"する",
|
||||
"warnUseOtherAcct":"(解除はできません。)",
|
||||
"revoverJPde":"で",
|
||||
"or":"または",
|
||||
"openProf":"プロフィールを表示",
|
||||
"warnListRegist":"リストに追加するためにはフォローが必要です。",
|
||||
"blockDomain":"ブロックするドメイン",
|
||||
"name":"名前",
|
||||
"note":"自己紹介",
|
||||
"editProfImg":"アバターを変更",
|
||||
"editHeader":"ヘッダーを変更",
|
||||
"blocked":"ブロックされています。なぜでしょう?",
|
||||
"likeUserDes":"似ているユーザーを取得できます。",
|
||||
"get":"取得",
|
||||
"historyBack":"一つ前のユーザーデータ",
|
||||
"empUser":"ユーザー強調",
|
||||
"supportme":"ご支援ください。",
|
||||
"TheDeskDes":"TheDeskは営利目的ではないため、有料機能や広告は一切ありません。<br>皆様のあたたかいご支援のもとで製作されています。",
|
||||
"PatreonSupport":"Patreonで支援",
|
||||
"PixivSupport":"Pixiv FANBOXで支援",
|
||||
"AWLSupport":"Amazonほしいものリスト",
|
||||
"SendAmazonGift1":"",
|
||||
"SendAmazonGift2":"にAmazonギフトカードを送る",
|
||||
"monthly":"月額支援(大歓迎)",
|
||||
"once":"一度限りの支援(もちろん歓迎)",
|
||||
"local":"ローカル",
|
||||
"localMedia":"ローカル(メディア)",
|
||||
"home":"ホーム",
|
||||
"fed":"連合",
|
||||
"fedMedia":"連合(メディア)",
|
||||
"dm":"ダイレクトメッセージ",
|
||||
"integratedTLDes":"統合(ローカルとホーム)",
|
||||
"localPlusDes":"統合(LTL+BT+返信)",
|
||||
"notf":"通知",
|
||||
"reply": "返信",
|
||||
"bt": "ブースト",
|
||||
"favRegist": "お気に入り",
|
||||
"openBrowser": "ブラウザで開く",
|
||||
"screenshot": "スクリーンショット",
|
||||
"copyURL": "URLをコピー",
|
||||
"copy": "コピー",
|
||||
"embed": "埋め込む",
|
||||
"toots": "トゥート",
|
||||
"follow": "フォロー",
|
||||
"follower": "フォロワー",
|
||||
"utlColumn": "カラムとして追加",
|
||||
"timeline": "タイムライン",
|
||||
"operateOtherAcct": "他のアカウントで操作",
|
||||
"list": "リスト",
|
||||
"makeNew": "新規作成",
|
||||
"blocks": "ブロック",
|
||||
"mutes": "ミュート",
|
||||
"block": "ブロック",
|
||||
"mute": "ミュート",
|
||||
"domainBlock": "ドメインブロック",
|
||||
"editProf": "プロフィール編集",
|
||||
"change": "変更",
|
||||
"followReq": "フォローリクエスト",
|
||||
"likeHimOrHer": "似てる",
|
||||
"frc": "おすすめフォロー",
|
||||
"more": "もっと",
|
||||
"endorse": "紹介する",
|
||||
"openinbrowser": "ブラウザで開く",
|
||||
"mainacct": "メインアカウントに設定",
|
||||
"revoverJP": "する",
|
||||
"warnUseOtherAcct": "(解除はできません。)",
|
||||
"revoverJPde": "で",
|
||||
"or": "または",
|
||||
"openProf": "プロフィールを表示",
|
||||
"warnListRegist": "リストに追加するためにはフォローが必要です。",
|
||||
"blockDomain": "ブロックするドメイン",
|
||||
"name": "名前",
|
||||
"note": "自己紹介",
|
||||
"editProfImg": "アバターを変更",
|
||||
"editHeader": "ヘッダーを変更",
|
||||
"blocked": "ブロックされています。なぜでしょう?",
|
||||
"likeUserDes": "似ているユーザーを取得できます。",
|
||||
"get": "取得",
|
||||
"historyBack": "一つ前のユーザーデータ",
|
||||
"empUser": "ユーザー強調",
|
||||
"supportme": "ご支援ください。",
|
||||
"TheDeskDes": "TheDeskは営利目的ではないため、有料機能や広告は一切ありません。<br>皆様のあたたかいご支援のもとで製作されています。",
|
||||
"PatreonSupport": "Patreonで支援",
|
||||
"PixivSupport": "Pixiv FANBOXで支援",
|
||||
"AWLSupport": "Amazonほしいものリスト",
|
||||
"SendAmazonGift1": "",
|
||||
"SendAmazonGift2": "にAmazonギフトカードを送る",
|
||||
"monthly": "月額支援(大歓迎)",
|
||||
"once": "一度限りの支援(もちろん歓迎)",
|
||||
"local": "ローカル",
|
||||
"localMedia": "ローカル(メディア)",
|
||||
"home": "ホーム",
|
||||
"fed": "連合",
|
||||
"fedMedia": "連合(メディア)",
|
||||
"dm": "ダイレクトメッセージ",
|
||||
"integratedTLDes": "統合(ローカルとホーム)",
|
||||
"localPlusDes": "統合(LTL+BT+返信)",
|
||||
"notf": "通知",
|
||||
"bookmark": "ブックマーク",
|
||||
"showThisTL":"表示するタイムライン",
|
||||
"webviewWarn":"TweetDeckを表示します。TJDeckをカスタムしたものが読み込まれます(<a href='https://gist.github.com/cutls/8787a55d2c1c53274e68a427966046a6' target='_blank'>Code</a>/<a href='https://gist.github.com/totoraj930/d1394dadb51d75666a76829f61e7280c' target='_blank'>TJDeck</a>)。",
|
||||
"add":"追加",
|
||||
"search":"検索",
|
||||
"sortSet":"並べ替え設定",
|
||||
"selectAcct":"選択(スクロールで全選択肢表示)",
|
||||
"filterWord":"フィルターワード",
|
||||
"listLocale":"一覧",
|
||||
"degree":"適応範囲",
|
||||
"conver":"会話",
|
||||
"prof":"プロフィール",
|
||||
"option":"オプション",
|
||||
"matchWord":"単語マッチ",
|
||||
"warnMatchWord":"非ラテン系の文字列では「単語マッチ」は推奨されません。",
|
||||
"except":"除外",
|
||||
"exceptWorn":"「除外」時マッチしたトゥートは非可逆的に除外され、削除後も閲覧できません。",
|
||||
"avalableBefore":"有効期限(あと)",
|
||||
"warnAvBefore":"未指定(または0分)で「無期限」になります。",
|
||||
"warnAvBefore2":"仕様上数値の正確性を保証できません。",
|
||||
"unlimited":"無期限",
|
||||
"days":"日",
|
||||
"hours":"時間",
|
||||
"mins":"分",
|
||||
"secs":"秒",
|
||||
"warnOnIntegratedTL":"Integrated TL/Plus TLは、公開/ホームのフィルターワードが合算されて適応されます。どちらか一方の指定でも非表示になります。",
|
||||
"helloTheDesk":"内部エラーです。再読込して治らない場合は初期化(全データ削除)をしてください。(事前に設定をエクスポートしておくことをおすすめします。)",
|
||||
"addColumn":"カラム追加",
|
||||
"sortColumns":"カラム一覧/並べ替え",
|
||||
"acctMan":"アカウントマネージャー",
|
||||
"filter":"フィルター",
|
||||
"setting":"設定",
|
||||
"reverse":"トゥートボタンの左右入れ替え",
|
||||
"f5":"TL再読込",
|
||||
"nanoDes":"最小のマストドン。",
|
||||
"verTips":"バージョン",
|
||||
"clockTips":"時計",
|
||||
"ramTips":"システムメモリ容量",
|
||||
"changeTips":"Tips変更",
|
||||
"helpAndLogs":"ヘルプとログ",
|
||||
"help":"ヘルプ",
|
||||
"contactwithlog":"不具合等のお問合わせは以下のログから発生時刻付近のものを集めてご連絡いただけるとスムーズになるかもしれません。また、このメニューウィンドウ全体を横に引き伸ばすとログが見やすくなります。",
|
||||
"about":"このソフトについて",
|
||||
"hereAddColumns":"←ここからTL追加",
|
||||
"showThisTL": "表示するタイムライン",
|
||||
"webviewWarn": "TweetDeckを表示します。TJDeckをカスタムしたものが読み込まれます(<a href='https://gist.github.com/cutls/8787a55d2c1c53274e68a427966046a6' target='_blank'>Code</a>/<a href='https://gist.github.com/totoraj930/d1394dadb51d75666a76829f61e7280c' target='_blank'>TJDeck</a>)。",
|
||||
"add": "追加",
|
||||
"search": "検索",
|
||||
"sortSet": "並べ替え設定",
|
||||
"selectAcct": "選択(スクロールで全選択肢表示)",
|
||||
"filterWord": "フィルターワード",
|
||||
"listLocale": "一覧",
|
||||
"degree": "適応範囲",
|
||||
"conver": "会話",
|
||||
"prof": "プロフィール",
|
||||
"option": "オプション",
|
||||
"matchWord": "単語マッチ",
|
||||
"warnMatchWord": "非ラテン系の文字列では「単語マッチ」は推奨されません。",
|
||||
"except": "除外",
|
||||
"exceptWorn": "「除外」時マッチしたトゥートは非可逆的に除外され、削除後も閲覧できません。",
|
||||
"avalableBefore": "有効期限(あと)",
|
||||
"warnAvBefore": "未指定(または0分)で「無期限」になります。",
|
||||
"warnAvBefore2": "仕様上数値の正確性を保証できません。",
|
||||
"unlimited": "無期限",
|
||||
"days": "日",
|
||||
"hours": "時間",
|
||||
"mins": "分",
|
||||
"secs": "秒",
|
||||
"warnOnIntegratedTL": "Integrated TL/Plus TLは、公開/ホームのフィルターワードが合算されて適応されます。どちらか一方の指定でも非表示になります。",
|
||||
"helloTheDesk": "内部エラーです。再読込して治らない場合は初期化(全データ削除)をしてください。(事前に設定をエクスポートしておくことをおすすめします。)",
|
||||
"addColumn": "カラム追加",
|
||||
"sortColumns": "カラム一覧/並べ替え",
|
||||
"acctMan": "アカウントマネージャー",
|
||||
"filter": "フィルター",
|
||||
"setting": "設定",
|
||||
"reverse": "トゥートボタンの左右入れ替え",
|
||||
"f5": "TL再読込",
|
||||
"nanoDes": "最小のマストドン。",
|
||||
"verTips": "バージョン",
|
||||
"clockTips": "時計",
|
||||
"ramTips": "システムメモリ容量",
|
||||
"changeTips": "Tips変更",
|
||||
"helpAndLogs": "ヘルプとログ",
|
||||
"help": "ヘルプ",
|
||||
"contactwithlog": "不具合等のお問合わせは以下のログから発生時刻付近のものを集めてご連絡いただけるとスムーズになるかもしれません。また、このメニューウィンドウ全体を横に引き伸ばすとログが見やすくなります。",
|
||||
"about": "このソフトについて",
|
||||
"hereAddColumns": "←ここからTL追加",
|
||||
"foundBug": "バグを見つけた",
|
||||
"show": "表示",
|
||||
"directory": "ディレクトリ",
|
||||
"discover": "見つける",
|
||||
"active": "最新活動順",
|
||||
"newcomer": "新規順",
|
||||
"local_only": "ローカルのみ",
|
||||
|
@@ -104,6 +104,7 @@
|
||||
"lang_details_embed": "埋め込みHTMLがコピーされました。",
|
||||
"lang_details_url": "トゥートURLがコピーされました。",
|
||||
"lang_details_txt": "トゥート本文がコピーされました。",
|
||||
"lang_details_fetch": "トゥートの情報を読み込んでいます",
|
||||
"lang_filter_nodata": "フィルターはありません",
|
||||
"lang_filter_errordegree": "適応範囲を最低一つ以上チェックしてください。",
|
||||
"lang_list_nodata": "リストはありません",
|
||||
|
@@ -74,6 +74,7 @@
|
||||
"openBrowser": "Open in browser",
|
||||
"screenshot": "Take a screenshot",
|
||||
"copyURL": "Copy the URL",
|
||||
"copy": "Copy",
|
||||
"embed": "Embed",
|
||||
"toots": "Toots",
|
||||
"follow": "Follow",
|
||||
@@ -178,6 +179,7 @@
|
||||
"foundBug": "I found a bug",
|
||||
"show": "Show",
|
||||
"directory": "Directory",
|
||||
"discover": "Discover",
|
||||
"active": "Recently active",
|
||||
"newcomer": "New arrivals",
|
||||
"local_only": "Local only",
|
||||
|
@@ -103,6 +103,7 @@
|
||||
"lang_details_embed": "Embed HTML is cliped.",
|
||||
"lang_details_url": "URL of this toot is cliped.",
|
||||
"lang_details_txt": "Content of this toot is cliped.",
|
||||
"lang_details_fetch": "Fetcging toot data...",
|
||||
"lang_filter_nodata": "No data",
|
||||
"lang_filter_errordegree": "Please check a context",
|
||||
"lang_list_nodata": "No data",
|
||||
|
@@ -72,6 +72,7 @@
|
||||
"desc": "About this theme",
|
||||
"customImport": "Import of custom themes",
|
||||
"delete": "Delete",
|
||||
"preview": "Preview",
|
||||
"timeline": "Timeline Preferences",
|
||||
"timemode": "Time format",
|
||||
"relativetime": "Relative format:\"1 minutes ago\",\"3 days ago\"",
|
||||
@@ -119,6 +120,7 @@
|
||||
"remote_imgWarn": "All previews are got from your loginned cache server.",
|
||||
"moreContextMode": "Context Tool",
|
||||
"moreContextModeWarn": "On detail of the toot modal, show toots before / after the toot on LTL, FTL, UTL",
|
||||
"smallHeader": "Minimize column headers",
|
||||
"replySound": "Sound(Reply)",
|
||||
"favSound": "Sound(Fav)",
|
||||
"btSound": "Sound(Boost)",
|
||||
|
@@ -74,6 +74,7 @@
|
||||
"openBrowser": "Open in browser",
|
||||
"screenshot": "Take a screenshot",
|
||||
"copyURL": "Copy the URL",
|
||||
"copy": "Copy",
|
||||
"embed": "Embed",
|
||||
"toots": "Toots",
|
||||
"follow": "Follow",
|
||||
@@ -178,6 +179,7 @@
|
||||
"foundBug": "I found a bug",
|
||||
"show": "Show",
|
||||
"directory": "Directory",
|
||||
"discover": "Discover",
|
||||
"active": "Recently active",
|
||||
"newcomer": "New arrivals",
|
||||
"local_only": "Local only",
|
||||
|
@@ -103,6 +103,7 @@
|
||||
"lang_details_embed": "Embed HTML is cliped.",
|
||||
"lang_details_url": "URL of this toot is cliped.",
|
||||
"lang_details_txt": "Content of this toot is cliped.",
|
||||
"lang_details_fetch": "Fetcging toot data...",
|
||||
"lang_filter_nodata": "No data",
|
||||
"lang_filter_errordegree": "Please check a context",
|
||||
"lang_list_nodata": "No data",
|
||||
|
@@ -72,6 +72,7 @@
|
||||
"desc": "About this theme",
|
||||
"customImport": "Import of custom themes",
|
||||
"delete": "Delete",
|
||||
"preview": "Preview",
|
||||
"timeline": "Timeline Preferences",
|
||||
"timemode": "Time format",
|
||||
"relativetime": "Relative format:\"1 minutes ago\",\"3 days ago\"",
|
||||
@@ -119,6 +120,7 @@
|
||||
"remote_imgWarn": "All previews are got from your loginned cache server.",
|
||||
"moreContextMode": "Context Tool",
|
||||
"moreContextModeWarn": "On detail of the toot modal, show toots before / after the toot on LTL, FTL, UTL",
|
||||
"smallHeader": "Minimize column headers",
|
||||
"replySound": "Sound(Reply)",
|
||||
"favSound": "Sound(Fav)",
|
||||
"btSound": "Sound(Boost)",
|
||||
|
@@ -74,6 +74,7 @@
|
||||
"openBrowser": "Åpne i nettleser",
|
||||
"screenshot": "Ta skjermbilde",
|
||||
"copyURL": "Kopier bildeadressen",
|
||||
"copy": "Copy",
|
||||
"embed": "Bygg inn",
|
||||
"toots": "Toots",
|
||||
"follow": "Følg",
|
||||
@@ -178,6 +179,7 @@
|
||||
"foundBug": "I found a bug",
|
||||
"show": "Vis",
|
||||
"directory": "Mapper",
|
||||
"discover": "Discover",
|
||||
"active": "Nylig aktive",
|
||||
"newcomer": "Nykommere",
|
||||
"local_only": "Kun lokalt",
|
||||
|
@@ -103,6 +103,7 @@
|
||||
"lang_details_embed": "Embed HTML is cliped.",
|
||||
"lang_details_url": "URL of this toot is cliped.",
|
||||
"lang_details_txt": "Content of this toot is cliped.",
|
||||
"lang_details_fetch": "Fetcging toot data...",
|
||||
"lang_filter_nodata": "Ingen data",
|
||||
"lang_filter_errordegree": "Please check a context",
|
||||
"lang_list_nodata": "Ingen data",
|
||||
|
@@ -72,6 +72,7 @@
|
||||
"desc": "Om dette temaet",
|
||||
"customImport": "Import of custom themes",
|
||||
"delete": "Slett",
|
||||
"preview": "Preview",
|
||||
"timeline": "Tidslinjepreferanser",
|
||||
"timemode": "Tidsformat",
|
||||
"relativetime": "Relative format:\"1 minutes ago\",\"3 days ago\"",
|
||||
@@ -119,6 +120,7 @@
|
||||
"remote_imgWarn": "All previews are got from your loginned cache server.",
|
||||
"moreContextMode": "Context Tool",
|
||||
"moreContextModeWarn": "On detail of the toot modal, show toots before / after the toot on LTL, FTL, UTL",
|
||||
"smallHeader": "Minimize column headers",
|
||||
"replySound": "Sound(Reply)",
|
||||
"favSound": "Sound(Fav)",
|
||||
"btSound": "Sound(Boost)",
|
||||
|
@@ -74,6 +74,7 @@
|
||||
"openBrowser": "Otwórz w przeglądarce",
|
||||
"screenshot": "Zrób zrzut ekranu",
|
||||
"copyURL": "Skopiuj adres URL",
|
||||
"copy": "Copy",
|
||||
"embed": "Osadzony",
|
||||
"toots": "Tooty",
|
||||
"follow": "Obserwuj",
|
||||
@@ -178,6 +179,7 @@
|
||||
"foundBug": "I found a bug",
|
||||
"show": "Pokaż",
|
||||
"directory": "Katalog",
|
||||
"discover": "Discover",
|
||||
"active": "Ostatnio aktywne",
|
||||
"newcomer": "New arrivals",
|
||||
"local_only": "Tylko lokalne",
|
||||
|
@@ -103,6 +103,7 @@
|
||||
"lang_details_embed": "Embed HTML is cliped.",
|
||||
"lang_details_url": "URL of this toot is cliped.",
|
||||
"lang_details_txt": "Content of this toot is cliped.",
|
||||
"lang_details_fetch": "Fetcging toot data...",
|
||||
"lang_filter_nodata": "Brak danych",
|
||||
"lang_filter_errordegree": "Please check a context",
|
||||
"lang_list_nodata": "Brak danych",
|
||||
|
@@ -72,6 +72,7 @@
|
||||
"desc": "About this theme",
|
||||
"customImport": "Import of custom themes",
|
||||
"delete": "Delete",
|
||||
"preview": "Preview",
|
||||
"timeline": "Timeline Preferences",
|
||||
"timemode": "Time format",
|
||||
"relativetime": "Relative format:\"1 minutes ago\",\"3 days ago\"",
|
||||
@@ -119,6 +120,7 @@
|
||||
"remote_imgWarn": "All previews are got from your loginned cache server.",
|
||||
"moreContextMode": "Context Tool",
|
||||
"moreContextModeWarn": "On detail of the toot modal, show toots before / after the toot on LTL, FTL, UTL",
|
||||
"smallHeader": "Minimize column headers",
|
||||
"replySound": "Sound(Reply)",
|
||||
"favSound": "Sound(Fav)",
|
||||
"btSound": "Sound(Boost)",
|
||||
|
@@ -74,6 +74,7 @@
|
||||
"openBrowser": "Open in browser",
|
||||
"screenshot": "Capturar tela",
|
||||
"copyURL": "Copiar o link",
|
||||
"copy": "Copy",
|
||||
"embed": "Embed",
|
||||
"toots": "Toots",
|
||||
"follow": "Seguir",
|
||||
@@ -178,6 +179,7 @@
|
||||
"foundBug": "I found a bug",
|
||||
"show": "Show",
|
||||
"directory": "Directory",
|
||||
"discover": "Discover",
|
||||
"active": "Recently active",
|
||||
"newcomer": "New arrivals",
|
||||
"local_only": "Apenas local",
|
||||
|
@@ -103,6 +103,7 @@
|
||||
"lang_details_embed": "Embed HTML is cliped.",
|
||||
"lang_details_url": "URL of this toot is cliped.",
|
||||
"lang_details_txt": "Content of this toot is cliped.",
|
||||
"lang_details_fetch": "Fetcging toot data...",
|
||||
"lang_filter_nodata": "Sem dados",
|
||||
"lang_filter_errordegree": "Please check a context",
|
||||
"lang_list_nodata": "Sem dados",
|
||||
|
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user